783802 82918071 572211594 148762636 404775266 267203757 890779056 274374691 947466891 617052987 722536746 867912242 973611848 789839702 865450061 790565554 11070523 828796524 632389912 957928060 155337928 834736100 373315855 60865490 970923211 919758891 802987545 330832796 189622331 680068448 679695466 26629093 913233761 493558156 791640014 728745020 988896431 148572652 878901387 235254149 636312225 958853901 129740452 681127403 748492176 463784438 510855436 411001203 830057722 288040635 872718837 170159856 491595416 998775997 41597490 682424167 231841635 258843496 744668580 361405815 938721349 690274712 723266381 512960506 195645120 46598169 40062499 401347026 907307468 178051169 358313005 379483571 212138244 811013366 717101331 923266583 48633796 192609149 199191723 115561343 798527958 715941881 566940342 629053404 518930072 502356320 698416766 223705055 190744533 396799585 663499925 549725153 461265301 778892314 904174837 135400391 510155641 108931035 395686197 604469789 21260640 930427591 115012514 142880073 460647917 399012728 937513430 190298406 247380360 448332025 539858639 189006072 360417795 647010922 763469088 599266015 217659451 388353159 642397924 870889469 14434361 14571571 896267138 663619163 740419001 28612441 41257749 761997841 500211996 499594880 309871629 568373739 688382011 477150603 980576600 473251148 178329524 563700248 905022257 981226809 592664882 769985970 290916728 674699198 280935768 643236220 926552339 696368991 904010490 628727900 223853293 231628206 148070609 985013269 11676816 861949192 981675278 746496283 189048000 244557576 786291529 188929573 666044839 95479284 963064178 30223768 369029070 625744777 528402294 155475625 389231751 122738006 151599367 726510151 808699339 486183595 291738728 293984053 714948891 822887868 885138819 964315671 973402597 810245865 81254470 145256991 941290349 375743225 461532072 138401867 771240640 174667849 468010150 588970338 354613825 56214054 130712649 218453762 808629543 485804570 951186448 773559852 327869252 222680528 143579278 529634928 7969142 385049382 689574559 924226610 443364705 821797905 597137294 898209351 609180743 938305663 536248120 592349449 215506979 525533146 687900286 509852577 456777932 452070679 154372833 306227811 140227848 965325967 838316442 23798189 721163747 210634240 77734812 715205725 391925632 726683730 18699559 372624046 908019623 35694036 256429818 93321667 16225850 509626721 970598755 63407293 758765513 973051059 539254424 978486248 394197213 233720387 347879894 675310676 210907244 859778943 634864796 108925888 560387787 507083406 611573651 557018008 844354450 348105771 850487349 273902846 832711278 181582120 586392570 627412095 164978662 400993732 910355715 97225996 458175200 416092390 454176323 968836098 458786890 987541649 813027552 870380058 25003071 442091788 270889135 832119648 378921222 604730728 602814152 177415306 696083057 494978180 659975834 659238959 798450504 568193619 614409616 409323960 480475002 232725623 226503438 223363437 687786859 104466451 873222290 965760225 719504314 578279699 744838798 707733440 493872695 657612624 485766304 451809050 52898823 227180590 562818337 489868833 829606183 419034203 912454933 744962127 403046980 920353625 248589281 859359536 866538513 672121337 890623349 925396427 213951702 790859734 265558076 815337726 925847034 952267123 512463725 9554086 612988095 865405028 502953114 114917213 301539129 155237524 377931690 751875672 972010681 721777083 205641368 726637288 376776914 137390878 204551689 975518816 683780248 546013136 475317061 377925955 836613544 231938964 48056558 602063647 655311039 190851321 756135051 257801564 173207004 464303069 435051127 206365996 984458495 967583188 874403638 194275391 463456468 892634921 954619380 358034475 965136788 379812192 827254890 295467632 960622780 358925454 222774008 970033710 210164744 961030331 181038747 327858879 847789250 321500528 615393741 386105263 190148361 159065385 892748704 241201432 572386141 708151512 507867747 96228251 133318185 502089446 40761246 407835010 734020667 165474220 141064690 56338307 775279914 721341680 933750134 235478513 8009422 240274040 310876248 622586195 319036789 624383254 714308121 352136926 198161698 425502248 307209502 674482709 955428638 134354571 572544942 406060556 327804468 223262734 869846943 565022965 255774393 29774824 340749861 371220307 78333799 615700822 4530996 449847180 341375544 511921472 689582692 147544124 146538491 407340167 535731039 288957283 472932592 40583388 178499887 807957228 952847089 917092694 979446180 93588528 376913046 892697253 991940529 95439676 912137389 367472125 984172012 447810174 148647205 229216082 752931587 505297873 177419703 453681208 987963359 305166025 333161067 309415980 339381656 11645114 18963686 59373024 476267434 942105421 496528880 47714820 255056155 974454155 869640776 471634585 513330413 963077026 742752850 883304282 767780887 278912849 498034284 858796177 760054029 593534943 157230119 88632265 902057553 579810165 267020676 54736363 122295907 381890608 842631234 701925145 862183200 406575798 945024984 328393480 29197547 670674359 991499107 790092903 809579627 31372811 345046515 248358854 570152721 273647621 821835285 982739278 483618755 3117093 357780204 110262007 307216409 975933500 444016738 116539313 806188320 3684043 209885054 570202783 789363103 790156141 302926474 639790244 588774771 30408705 380316126 894773135 389173628 915117573 734464234 106649094 126152205 471152690 671889687 744796938 246137154 473581528 426508890 893952390 35940481 855582387 666177022 236861102 32156383 67631054 701309048 709583614 6925859 177966443 837156430 927152143 776118626 681925266 940599881 320014604 525734762 112707915 399061759 947070643 835652534 26937224 912769150 399222618 265894128 272527357 472297385 337623848 398885038 221834940 88509337 700603922 336687663 712800761 668903230 760367093 912090448 812881046 443912534 17378225 974162567 638089695 232475865 586627375 668037301 153424411 73543394 940470884 787762800 227860673 446270305 129378233 311839847 106021507 929098456 346241591 185993675 126283568 172179780 22076692 496374003 468600016 475140747 521208127 440575943 311829603 428232374 825969682 668927490 725534613 860710574 865180048 961377134 321465670 595697276 954876690 976903005 433691542 243896122 614144373 232311806 181948133 560701199 253342573 54105942 65245006 954453458 726217518 998235773 372206274 340970225 425004872 556723941 897707836 319047003 297302035 754490565 586462701 952714373 775733389 164665250 637667570 78794409 947041026 442197861 170677895 795084101 64489106 678809042 961342940 745032498 263211513 561744167 269949320 428305217 852434483 466654301 594427545 954613589 552772371 219014669 127641131 985074870 748496852 281841280 862661374 196346624 977098604 63096457 819708762 606659420 814374379 710543117 46438245 110078587 913352729 771157755 106576514 912007395 678323929 651655101 391628035 178447501 661067369 692478868 184308524 993632471 898883351 77802059 895149593 689074225 486433085 841312280 587431922 997782581 745327018 877376628 603225389 312159228 137664895 470304719 728977471 340096709 52126246 300189242 107716620 543250475 362014704 465288076 267002698 781941517 572169780 189637434 987178079 621462101 804562226 886627911 876898540 266837248 782607327 858717995 885269873 725438043 577440344 788420426 708194737 634132164 503346586 265692110 132172855 855801565 109674876 233818868 672514486 172669682 737742398 565479252 746041071 669564624 495743278 725317274 952435225 102006703 433831335 986632543 687546387 953690268 12516211 280320736 466986124 632938424 252733543 170907005 873286921 392414723 433192347 305957994 512645512 650990562 226148046 717388472 553979605 304678320 498118827 95951899 106663487 439417098 223608224 359428724 770837618 905080042 814164193 198065032 767307039 568579564 905618374 258161529 910159855 352179316 678312163 679220024 564674352 280132899 896966541 212273970 577200651 280239846 10896780 268382711 239856196 950419642 274583273 530679749 177949177 308620049 96863642 809081235 400926263 510926202 181120972 673690113 62086331 961800039 61908414 625051345 729647335 24283930 510344056 589347322 527672528 837303071 393526059 660307814 582744486 498720526 434805626 788530945 999611183 956962603 837033879 77297947 317919411 860946025 821277635 522681174 207587861 691677024 931530929 501376389 179843368 568160838 951438220 565952036 292869782 103408947 155051323 173618508 13459258 212952188 607386600 160782767 532782685 569736713 770716547 228607382 348533888 806078611 990016006 840272243 351122424 874128229 745445052 768871827 950557780 431592958 359104876 949698212 317491199 436844172 131793286 369130877 229817103 193678160 336851707 783336083 293511196 862455775 427300314 485845877 820815221 27410669 406011491 237783487 146948852 892700811 823133056 824422220 936118034 787663295 811892235 241177573 495795950 20155778 927423846 934822765 596306866 478081737 259948844 316913166 631723077 969533690 732736514 108297946 960859116 559923432 463843798 138833136 258921800 774542131 157388652 932531179 242953804 390462482 520659922 177600032 549461121 952123531 189945238 288764740 728513786 844107674 418163111 142565828 643808402 632205153 942167233 500197083 340889065 752534401 842114254 631701156 98613024 691910074 935845291 998074543 116215498 384883182 842149194 862911714 119033564 438624338 663109946 972092634 694777750 804998254 322112370 175707655 963826954 470480948 755818062 843975647 824797144 485378148 287364513 32631532 337616213 919102495 400806875 772979219 132193879 847957709 314797881 720243296 657531548 885262782 423857228 678626970 929188674 597237453 559003622 418904009 601478155 213492767 611157620 950317511 915311744 781231471 281678372 704849435 422598356 823870825 737788134 202338158 685662037 255619827 42093186 607684859 450050549 283747441 926262002 48120356 751310316 396136183 358909577 538787030 817845880 294674249 499875175 836419797 833559873 113653041 790148345 421415984 813872833 907295874 907997554 480092702 314888900 916799133 963934714 284309665 804437303 528107599 910131588 424593414 817688645 480100585 177041671 979790169 702028207 838693617 352660858 818503852 853777361 218880933 16452939 418261297 596166277 111821111 494560253 435809934 986308560 526007157 832882385 227736239 880867444 659203315 53227007 181542817 238515266 605517745 395319069 398420479 899163942 389804747 325032379 415075452 150379115 615382034 424751874 290802699 149625792 921253617 531033566 567391475 542993455 547005153 318956186 931047967 110278340 298115954 802688175 551621007 212285878 320922477 110126593 22898306 855225073 541646773 739208569 712938320 383994487 606812043 409176474 122376732 39507938 739944145 869253929 870059912 443635715 290270756 228495856 979405547 672206478 598758228 685816823 714644348 182441 307271210 844072420 24182981 151749931 59600629 353510805 549571217 453651296 882860731 22711332 429296769 253160495 561987773 106335250 704314317 23549821 269327221 857906994 808032840 489680296 822822494 862226339 858964793 147015026 356616744 372053459 150292951 949100000 111294137 848524779 390103466 244773179 587475108 990270484 85649842 406962272 632885565 326307950 512826624 815810279 495637773 882141783 784845792 551271344 48892199 84632603 289543991 871802241 419619904 114041906 613921623 562982089 394974845 532747555 784443558 628884621 373470099 180209056 388411721 11627323 741569103 561968700 584278728 961856562 342572128 849814192 536674853 83498947 53204017 241621893 803801406 266475142 337570061 805947791 545130435 368022051 144172528 185886 711689992 357096793 426301579 38301224 492628932 875176197 434040200 638566260 11456686 296117358 359130977 419565612 712632076 231726813 934202781 876809043 691291051 770235833 452732407 406524782 422990190 874833386 264423991 713282206 575916206 322888659 527839243 27540094 314227218 10627362 657881910 27733154 97705143 377352748 179995218 926343668 774460858 555649918 930207249 429511430 406936291 903258838 744213288 298828408 542127295 408772242 634257231 269135235 610237655 297940477 920512474 815041843 346239646 287211292 332740740 917626085 735329015 620055055 591544974 616083056 1702172 79605449 57399908 578478617 505047696 317256757 473904363 673671682 267521877 431332553 195718711 629605495 579421311 558938844 535881955 855555405 380351412 785949891 501069245 322780669 262296293 493304785 742556933 188664690 886791046 94187663 948766995 478177967 838416291 541492732 342570871 343186322 369982236 982220664 257146045 211517596 860273548 135414605 387531761 691925224 263623919 782689224 705339430 460672534 859794579 248981562 752473449 900615293 220354752 726916809 781627264 978734785 408119603 102318895 326497973 582147066 38551427 827981897 895797623 703478168 793577964 409606173 154463019 424299854 258212521 867774149 560538247 18632629 830409179 194009186 110484875 751485173 937128029 856647502 201653703 458502437 550854236 950697846 371047564 160217010 928873742 352565764 720169018 658879002 558405329 799481172 805589999 817855423 789542706 214208542 271422980 408073897 860879521 219772509 900874854 118811278 404500473 458604499 610599573 908488589 999977846 117475206 941488135 5503679 955214969 853028733 609807248 231404911 881768663 3112120 257977330 698146332 263435686 754304891 591428687 285898608 48388968 90198161 566219179 762728214 859950491 387436275 305804592 813499268 144032065 186267340 189479614 625616552 530351682 896684588 295986887 105807438 210393338 479687008 840023411 72789134 248606746 706062487 903606872 220480567 323683531 498818289 183099074 95951764 322580126 259367317 943054157 704465829 502368527 91325215 510873431 193141707 848623014 439534743 465442560 945495787 590011492 731903207 61550630 629238374 492726703 317324717 148597669 961977758 192142307 800143619 769125621 869795220 14167321 822092786 383291513 182438646 18820148 29818923 501591089 390778920 730570459 121238565 944042360 368934526 426949233 739805767 575347872 141927582 440949322 391047736 28671737 738123305 537532205 957756977 957788275 90964260 19971082 502761325 271351001 702069153 949450842 314959525 895061164 838224349 867825507 615401222 798921775 636631283 605207328 979136096 467369081 541151534 70853066 127544724 808227822 683856128 334465300 644615832 688294569 961699936 261477012 25246073 942773727 464785652 324835276 878515928 64500826 492118435 842452226 346646161 809619002 403664464 982234012 76681946 278293988 691889157 37020515 293273855 341443708 420412768 377288050 579491296 514377964 749202580 113679491 495680654 866549079 695155022 617511666 287224484 71459248 238221722 724457532 40287843 585582450 490159608 967366764 679773794 59519788 833697010 856478445 942570299 90609072 25498268 441639936 247002670 241848210 161322111 895519704 609266521 590351144 435422529 850927595 189276194 547322634 915499795 168415199 429707961 620778125 59739329 341101499 250000171 223986557 280936149 406582108 997356684 925100785 333030644 495600667 809712102 814883560 436025538 612867234 592260908 364311222 779000446 509262495 861012099 298863416 431506300 712890134 483400192 565461199 111798822 640438037 64658745 168938677 565690268 488072486 365550972 771911129 841531715 464812423 754117055 25487395 682790958 488701451 442705786 590056894 135733673 345564831 392704140 331510532 986159608 964458966 358191478 430849779 872173859 626384298 40521959 300542875 539168421 584199641 293460015 579178994 183765851 325099568 998239815 776264267 875887404 49951411 504383889 656606793 595105720 373221292 930356222 653050981 949300619 405673479 935913809 495173962 616893056 479624538 806100868 598113522 514080316 142155755 460173091 502668796 383145487 896455388 488564574 705787064 311718051 450822447 116919035 565854023 16226377 773057726 725161649 164024868 40939513 369130693 933129595 665173842 931147694 216388367 254085213 36879129 977269052 650844415 294675916 985424939 703470476 72445865 500237298 524943665 506611316 957492827 619658127 995235627 518788540 679234819 433160030 650509666 217330074 241366686 442263409 617811737 875270104 255887087 885686650 653148309 747094366 378751336 34514981 812848141 688275293 914040862 926776422 297197776 191208293 363231020 214539864 165886385 234005342 488265531 808314607 361888307 674725092 602301895 905670888 808425177 307252933 153669724 47442546 283165819 912800392 298403184 722138282 654504358 944478453 915811742 887771597 537852224 898672462 626458027 809566366 168815616 24805227 503467143 377516460 333907827 553200461 624791870 59098162 846120310 753063545 147894429 733144856 366857656 525788751 41304466 821050551 825863046 874958019 28978865 62672705 852341348 60569792 728807976 197247733 878778023 283634013 634209266 263981147 610569577 331044587 556593498 176743954 422162636 463514614 109258359 249998786 920191436 655858555 559137050 453066626 824005763 505358438 276775321 640236924 106456354 948694891 38583909 373347899 864569940 113600171 31653199 989664630 493320343 299177393 650331514 844518004 928539739 863136146 626232851 842904124 577767848 130138879 17804137 29463470 272660313 235545413 252464957 372227230 220394470 1252825 532451090 261752132 358333661 520199869 952319679 984712493 755947741 905143134 480252666 235979936 962485941 57112714 583546964 542408292 462242568 727955348 124839524 313408293 384210508 334316617 262938991 462434405 368845083 240221715 271498629 114529706 993360978 459660296 692599164 968343505 828022719 196061368 720500954 163517780 870250464 43109472 126141598 405114390 500215243 925232078 629949275 247995783 888592568 492840327 754939072 507766028 881992535 282077605 449391990 108507152 633468295 869951236 632123602 725623865 602226645 566951831 278804867 691997016 10755260 590219273 343641889 251560351 481714844 56502041 680861105 498088569 135054038 356097062 188094106 373736327 438474471 4933803 132405611 769363001 272315244 829194962 881494825 37698844 76231463 897392228 372856683 678146870 157820609 388130227 412277448 104665369 409903121 946961074 223460310 380369885 566207083 344600695 8156996 820489063 418366739 654103940 412542391 516345797 674853562 465637934 498239546 683723541 904235738 120432972 603741711 989108633 906757457 451580148 828335094 724202874 475502052 654017724 310308244 76461147 186695237 469762579 674969889 90948292 738218870 626913520 594574152 670225883 481243060 929314240 14607841 123999238 970476551 651562922 515532786 863586160 630985430 501852489 951435508 751267134 212195251 356828163 956009057 598627470 902600338 780425483 921552714 605552666 96924661 930472130 925637725 501426318 128265337 867428853 890634585 676835838 407304159 989987970 467304310 46713476 260485717 384539018 199725827 419233188 484321033 677809613 305892786 371558431 185124493 161039441 418325449 751909783 819479778 49766895 485424744 669244257 673053562 989816166 964514125 581086110 592161482 335387259 853506309 25316686 908552283 204654258 587520293 762545648 282869135 721493807 24202493 475665745 673646255 228770488 257195248 39991243 982789354 889947879 274253022 388287046 537444200 789206003 953187242 371362912 161723209 150433186 509336529 99674813 680925609 34712412 540611854 367785691 632050189 770876830 284070783 245760249 158899071 230539891 304457078 935337836 612166801 11191233 484568836 159865783 270219503 434189820 46478905 332884122 106601586 540589683 166164678 542285864 157994679 420635510 630373470 186328874 199299423 707627242 909560367 881050054 433317497 474639087 504164601 993912797 641255209 723046719 906126032 191099025 940598878 558942066 393947656 473439236 572644641 737140128 747716196 354385919 884034776 507740421 373265580 457464293 867525737 991369075 807714246 651110882 652368837 864801943 924871771 529339842 514674917 678962190 36163235 360712615 942791072 937931934 526800244 583890544 294446303 702949857 18221602 897424181 282383186 666252669 481597483 399758031 389999775 42523689 753353454 219000403 136221999 731996501 408645301 580277821 927051907 409196378 677219214 208981337 327124005 553825555 403748217 932171017 257726225 253575138 279031860 788813707 834123572 499844929 93262883 137417952 839929461 304880807 352860880 742959473 215518148 184419545 518764638 920765848 225695978 453940725 871760113 413416013 62561959 379475067 777204410 25510431 998376653 27033293 744738398 61889952 491582343 11657596 175124196 81121358 57459034 893381797 486180706 776633824 540072770 287314530 920242169 425801734 101091382 445738671 470225075 864003291 872888574 319110391 782739293 374086435 703064205 697798881 609707185 181689126 16146200 907360337 658368220 2292315 773424296 555813531 360753702 810332834 981896739 292303022 985235772 128467896 777839853 750985632 69023602 495935209 389461151 854993860 567430357 14832598 746767680 173857266 303478771 309803411 118040414 324540427 131505145 388672326 85375594 23027584 255455069 814816682 36997195 719834643 955022249 265819738 945915948 54599909 475273460 476355115 369477439 656888109 477875255 937323523 605825981 453048447 477883413 689356512 588884029 337706171 586906763 223124113 612861988 833496200 937924101 692509096 515175928 113331499 710983491 459862693 527299061 943378094 12132162 131733746 914870092 168983445 5043262 245626272 587930996 582386116 664770423 742389377 737616029 937881051 751193353 73137512 607824416 604540144 618317540 988167224 739994794 301917142 247538379 970750073 971535718 146139626 897303968 257723069 28842380 813809562 487006758 387993086 466378660 221801761 481082686 490308912 240921309 163891115 424692959 901285074 447186127 919325129 618303462 290795556 863380658 597300727 587433841 197525345 655227889 144756426 835874203 42627302 322158923 631762030 170234495 296999278 192779626 866089103 258156539 848435890 306924783 629950369 478774755 348092437 11955636 313888665 695928695 367470942 853774004 806158373 114326671 192438125 779708108 602166400 136816087 995186929 93095774 339762292 245202184 484045489 237845739 139756535 727945335 336796485 263009118 261808618 212483146 914521607 762112846 696659978 58707180 280769252 40184688 449304771 209044252 942107868 82081795 324890046 205183545 245743909 44072725 384691932 768227313 763829217 695592778 364990425 970657935 402077321 816656244 946414844 786449762 446859741 773458163 310162657 304554637 330746621 175818892 14970030 749414540 43050221 326686233 437047987 68636152 694657049 286763838 968899091 887577039 477022767 92623514 426013567 248567161 330390217 546630851 26737391 271085007 869476726 679298432 957875349 253347125 274401585 114643617 125261002 855761671 88224337 574168948 178249030 956565963 30095443 902891358 437719360 438363811 562190045 861636897 565849952 17634585 702975599 883725138 85493840 494119822 409228724 226010548 250004757 294828281 865735853 770927333 72782233 988174805 429208149 95771664 279319862 557095678 514087119 755136621 232542239 718503503 329154043 254679955 620421488 464400439 290942786 32084392 634351531 872566618 29272909 74469281 19681296 572768066 561923779 738508296 919306662 478428117 452483761 36676503 382845531 456523514 975077852 588696914 46058965 471795539 593908150 407572377 289736343 324922494 951052616 303597359 120233166 608116853 84316985 939965722 281519637 65769238 625235787 880693653 531249644 210982904 265266317 634554943 369350484 217550213 609073288 840529023 372654120 871291169 96397847 18939149 694428648 350912378 894610973 824494813 767131265 148428337 881344555 413314650 958524782 750742866 808054542 492892942 102945648 596329465 545259320 72640849 210636597 240692523 105542523 400613440 116573263 707631197 242984331 263892285 83361224 744791766 439769479 79958204 339051368 230770665 159153549 333812396 282382594 13894022 3332719 457645267 988320541 497369850 377310008 147752572 156355306 619495890 660012048 524678406 281255620 820567403 380684457 170961862 152419918 957990970 861361333 875276827 535429395 140923272 838387650 4809238 718048696 957538724 286112133 940872486 666772580 864689611 267983489 254586648 813905922 507250952 604041430 850989238 813678586 815540628 856014233 891263522 223607333 429225262 583033389 535769600 630640344 809972782 809126862 821218406 896658394 970791228 153659129 432159983 380712647 627710932 294600262 28754909 199335793 684341503 619557921 717393558 46376583 679089888 717633668 415524365 686859699 245867163 194267093 174851086 501458690 615482487 683686192 537819771 836500449 91257522 828333606 150636025 689505517 756490301 472876241 90956006 931231885 904245415 711793341 742264084 636691073 489214174 66665447 77155344 264749846 676020160 532266370 116207045 801526179 186895245 99797854 16966951 993924264 716398130 105853934 63618970 787602305 926095887 582692729 406645417 953799618 181760508 604019862 168616119 961162547 768701671 732776772 227578766 861011859 979793404 452341152 162015729 313788795 403116428 878909790 415828302 747241743 720004533 749815711 523191587 25097987 620645648 135925420 311297188 99027894 314967135 507035149 745990148 263124170 536237260 512765133 827720206 288087708 788207979 23626694 58778069 507014959 896095944 905390535 179666112 749456633 106783179 506533096 377454829 787628327 502151318 696503252 65303551 74253833 614066617 132367018 674299523 22425746 570130653 844222829 874123238 289755059 627921270 279838870 133468518 2061884 927838180 2683592 704783797 426181596 559446676 518167849 801910326 815218945 183674777 124821152 39880662 457495731 664969750 380010357 964715741 443018937 874193259 66700205 209422887 783934643 642326696 412845375 492089173 23957494 757762852 817702500 263439271 989175568 683428129 68286705 74720957 205822304 779108674 859858470 252828958 436810308 459542911 856647974 592109054 963087958 851773941 866584932 13092986 198963795 927643958 597815313 152248416 126522074 778412367 589251786 110187697 647449225 397240854 804489679 393223176 989707381 283714390 608701246 254870469 805846367 587747602 759317934 506771990 103540025 166861334 166262709 842217729 852513164 364114179 966162243 255612005 165325149 854055245 191664704 492070311 804521665 13334712 345548440 930729860 935706341 536224955 708524652 427436105 907859913 728464627 422242369 400138510 447229970 969885382 208388879 171653330 373426747 7692653 369031767 150181228 333956783 432013153 772116004 343133739 126272543 191513803 125525680 999691672 307300200 578175482 978551091 563556269 74208338 845740845 199800383 177055526 865769230 993415028 503026926 113654089 921395932 19512426 790673115 828774809 622697861 888903099 887060558 51330172 391869265 558249024 624673644 145047886 300018183 217255954 259061683 199858030 453899034 952687880 213987581 980816781 426855428 765439146 718753459 219605150 664387635 852617326 305853078 393517458 423728411 340940934 822952494 817066120 83507533 335254771 905368055 313360427 786232921 312663693 843341682 957863318 565520475 247574762 636439475 413731406 655974373 348154290 594983611 233182035 678810316 860559041 233185535 355142179 143886669 517448419 790551052 684734111 138220869 641248877 915716515 544089109 971005204 220644400 200759784 46613084 760251480 36560960 583956287 762110854 708114310 86438967 829189355 127840581 250054999 283229519 244505134 853405157 317726098 60268582 40474658 882080909 284154785 287468518 82573699 374077698 154762497 636193469 123124850 711092755 721262596 618687261 8579600 720684642 764187521 201026605 804357727 518825257 455492940 762829272 5913684 620436033 57757609 46784144 403524038 102601959 657704581 237903376 684430075 164207181 492790322 774678385 973148715 795717689 239904076 489827439 214036621 575023907 496549972 507342202 428184947 140975174 530173093 20466219 888981599 495040948 225127602 118511089 405457456 576582094 357301701 697710974 980836888 770205783 788634848 799055887 624999706 182322230 946196335 719397996 841142618 358060433 375582509 482394953 239435679 498157265 39734073 791488027 503491669 368126855 333835617 481576476 727848560 787534924 517391876 576571622 442280659 470545501 725120413 605411054 15146514 260212872 38704526 489240951 473116339 202250294 899822530 64900631 477674822 79904257 74338047 254486091 302347314 138604668 217894692 24312684 400599923 727161886 320694083 961356659 537032731 834517323 604034181 194166550 208834554 32248401 412006506 652067802 931777721 733798855 751469988 309441801 710776339 402047621 833037616 848817186 880837675 656224393 833332616 736609608 22007621 936236765 81196766 727263899 265939351 993257558 488038164 691921114 960676553 640541358 935531094 888101078 880128175 820284199 82301073 277936460 676274019 913278206 815824823 813824962 788322224 766933534 141382190 748664391 367913644 882301371 710671705 714055076 312522340 404436662 733877299 807662058 313948200 647914062 608291327 277824653 727495010 247535458 749285704 300741611 851477174 1619416 511551995 484384469 749091949 702504360 743153458 797871528 821005265 350155049 794882563 704904100 509890982 8833768 627701953 242114384 953400799 730948382 919822257 395115016 575037672 609068997 798370933 65920912 899963957 366752466 142188429 509199461 627806950 296181842 150880833 67540196 482589172 799117023 403619884 874884329 769886048 370992295 783750710 915979847 978684453 964768478 797956657 694310535 644559783 797233188 249103822 839388253 395272164 644327838 921673202 99295867 809643664 674284607 158946617 163445159 785508247 683842447 692077830 582702449 496687849 227084461 33048477 1431933 881402044 528045444 136415505 965077430 992676276 700313731 43970283 292480207 844553437 969545021 316806531 953715801 779319853 446421064 887751437 344252542 827928568 761365222 542457789 736926739 414711384 878446467 971749087 766543687 397900976 198485927 460486740 569142429 382964174 37031866 266483352 363917186 310988079 81252907 109612269 752527612 224936414 558592607 254851918 128168060 600735474 766853203 771871501 824262439 830197562 249071932 46346844 257618252 534727018 855032050 790858530 777048456 305494355 101530797 600347547 523756258 828111235 475072066 643473769 211501851 179464893 975282282 288250022 575700366 812590375 890404936 704321493 760550130 226582635 291373382 217365403 639315910 76332457 987532477 6207849 763995611 825731997 924163652 595656731 716121841 884707956 908530586 262857283 578786136 237421785 820202510 66364476 704500228 487607620 368964914 968639099 512779799 773471969 684246510 907222479 257052609 5437670 699747820 496339387 125598200 987234566 462764874 290585302 586604639 714847238 350950677 441921661 138162042 381797907 901805273 285427040 675968374 449134612 138683238 763761385 257533448 848105397 970516201 42295740 321479808 787098651 447300645 283274401 556196762 677584812 46476015 619327897 950516335 105213876 294019402 216872567 325283231 653089308 511636336 298786556 559019359 18363311 318222869 670294215 999449148 224359053 114861334 573513640 296657798 816610449 740124794 855429015 977116163 89658663 789211444 883762921 781873116 989996270 504027113 269935305 553647048 396137792 963362503 673184049 659016720 853394406 548840150 201037681 990355762 354466388 523513736 915640212 66630349 884729889 762534387 101604917 242297056 847129318 969646723 227260963 157198448 132420795 592723658 605611048 127497231 203902703 122906248 12393475 905913470 926504600 564730926 89768025 534107247 668375800 917384322 288026898 1169845 196703653 40554971 827489502 154781238 730895060 460104102 596022516 655564120 361592224 980574581 444459239 973957042 339610949 680215755 974301390 408074568 400954424 509396869 699374544 767273011 537352983 940081270 466296294 593076546 467043864 217131648 132502942 691859860 217693517 660906446 541834940 628247417 876707680 861097447 396223340 322078211 707758226 663387070 90111214 459505170 517031111 317226187 672861606 647961951 26415285 187233707 418701683 146305391 216857073 954340343 374938732 918571590 285504951 11421948 960627031 886207982 826409624 649262768 886936063 894469003 235514161 892299237 403103427 766069490 564800966 437197822 32862969 758449137 570595914 619603976 92652772 332602708 198369732 764486120 521065513 874336091 550432001 713133894 375117762 949046534 459514358 972227767 529364150 383945880 461976456 595388831 209421512 738531975 288821138 954998160 487935015 136212432 553610376 414343837 144139564 941903507 68009747 97600523 250157552 830522859 588388676 976636182 162038681 847715345 436158635 865128623 904383617 505100206 262233343 263657585 363461100 572308773 190876466 547393481 676167358 728097589 521998249 385761081 248240893 316087530 872496048 891214902 570147688 774033568 429976529 588715757 524779708 344619507 447784030 704836910 398883589 95684599 295713325 37856303 111773100 70286227 322447531 874891364 84649650 55940418 265916200 221966709 13365452 416552640 678859881 847313013 443773006 331732713 742921404 855743924 442243262 512030777 725221192 788275908 851856974 966741014 285119966 556348382 876605260 435270083 443410903 398282985 527657430 563073956 195057579 36728174 13492847 414222934 345537587 380657412 676158742 772148425 59665988 200432928 369281553 677151101 614118316 652762075 760153448 82905551 301835215 149449110 405896971 989907892 811325870 298768996 304460477 116574515 200965973 128457279 681353348 367567976 842970029 74412963 341205122 207648670 985429592 317813868 956431810 234850257 728769851 105357223 350015945 271342714 638263395 147282169 648404843 630735095 381570618 562346010 418191246 879565492 637111777 456053995 398449969 514742120 890483504 659495879 83985973 831651367 252669949 579798242 116279256 290765115 544334839 284032678 145237251 872583779 867243046 11333629 846219352 37923139 865372652 521651543 52624168 957412631 968535756 789701317 549591458 776877362 861177716 999395828 925755426 39307330 470389352 667231965 909055567 993134090 991819005 69060018 673159189 289582387 379319865 888066954 330834553 480072210 611934534 583174894 633085410 954516431 699238602 165653669 900692986 596705014 662185495 846126110 963191598 363746487 816132477 447088730 819885125 816669790 593789880 647652339 451270940 305027992 159875473 648550336 708878847 621856330 33939325 510371357 904703009 437653308 585865869 873639338 586624147 448773298 962546994 17173155 423404857 196372693 822152195 97527894 403799654 975697280 8431982 986931550 720616611 627981164 569590125 629275749 625565667 586838323 637287509 403494140 894596367 986906395 2206409 810303717 186310824 687098113 364715365 968655632 663712007 399032533 106484764 876275744 984906869 272877955 221752855 105045079 393001985 960308228 559432769 865115799 945594232 762086570 520246129 37704514 958837102 88752125 181130797 153708249 920206164 436271102 255513615 50435462 669100745 618155636 609611975 152346346 558402497 193943342 439317298 733474969 917646085 57274876 368184790 435229437 698355841 617838893 356714023 780839906 252601135 379267254 65682684 390368457 157061386 941461315 380744027 472313774 561370289 299139763 799178988 865944464 134935894 172670368 37027772 721428908 82669191 898542190 725546103 471650683 990117521 832933 42299500 239205997 419286883 711099891 428556307 888026948 38284837 280766943 259678062 630345105 368435928 228656609 462906363 67402048 657301945 869220745 327199596 523380456 185065608 992724200 98200675 39901553 795143441 184220397 750049934 693539771 68829442 900556142 749926050 569755041 924469095 857183514 69714880 767268515 782635127 232171496 190377965 530504502 436834222 864262200 931394449 778370712 937190462 571667768 490083064 502973908 177162285 826799560 683128275 205415275 681678600 216064679 276812443 967258283 779647386 405457451 987839328 444059916 61780905 159649244 668517825 552072859 414057469 112854668 7338922 481379843 394582984 865042223 537535435 130223787 792435762 336496602 288973139 493091713 908078087 900694827 213616893 533158280 273215662 320308664 64616552 67446152 238169160 789674958 947949228 309947199 876784216 942214594 868494779 42564057 185966858 307704550 320708716 656903506 431880590 917247054 169362338 873396999 194802705 836673521 861777390 619505426 729859230 972622289 786292791 759104844 506550462 949378646 387845401 512118842 676335493 776846873 598823328 598479468 821418516 446065375 666658056 2728060 479502125 436704655 9476675 182176943 464924666 756937031 452895830 968710054 846617917 251619981 939144659 616401681 296173946 817083364 614603492 124536964 733695620 175740722 223644826 578232473 249646203 722978940 4896782 750346090 431225219 264407126 803525140 404204953 70921595 260038415 852465465 348861961 793820723 750390733 157353696 993284609 939214594 376282139 321979257 625554265 673853285 561875619 702887420 164070395 998138426 604925446 888603173 919291791 162642556 217218085 718563387 666111738 496469770 600705271 540186117 623302579 362023298 181068099 165642754 137869302 88657590 232416276 436707764 76762540 920124356 562367247 259318386 316225470 257066162 982914611 85336735 763962434 866289395 969922355 318756799 297734061 797213739 246900867 893949279 17088157 31983858 819207807 638815571 643808797 712411474 744614958 293260834 586122742 401308438 914909521 541542815 384206893 490797628 934801700 973138808 782006004 980125491 110385353 184189867 572105241 219676584 6102091 527971519 469845745 682923204 6343477 87291021 525533761 864540346 830442047 303266215 722816641 886119243 265960770 37927720 69137864 55490064 435164091 487635802 791837275 59674575 992970550 466486141 55445149 817900886 769661950 337651413 877732923 302866497 769967151 411014958 294334305 456626726 613488957 313740788 469550187 45823693 17000961 673442163 640365027 45649156 410723396 745418113 935382388 233201890 539280411 450082290 87939026 874580471 413509311 823123868 219802680 779040593 792818613 581734811 357478578 693481702 746081142 581075535 497835685 253641112 53787272 780997030 489014243 794958619 630513629 778317356 66667118 108672373 44886627 410116775 100640439 606663494 441834241 713292696 365576863 525730461 311462841 317813642 570231084 448484914 539454985 192490091 56276922 539545656 323247540 565204290 918836804 306663527 559293632 700316157 48603195 619634293 904833962 172104261 861226792 132091584 411044531 617756316 826375518 509853436 109302694 658153159 302653920 435642462 225745335 801241237 989290175 514337393 951358380 16834565 515889624 523619605 36836288 82698135 517353041 616669488 261151897 403668839 563794238 843393782 487297888 602784297 289288421 612152870 972759228 908608448 126293224 284384799 478815625 847217899 431983722 331559993 706924976 183518695 493043458 747287974 933112308 309646249 463833260 916324905 450248242 222582497 597171256 663849235 501479691 58356928 41859174 108620964 257956443 310632541 139213300 839947698 454066098 232481291 456565683 437623501 524346835 568194896 244427402 313955392 718037472 753599040 530930583 737023616 941412251 884200625 602122633 626301396 4283978 653370367 446984091 222110752 215851028 534636647 685700356 874977384 945944754 719155930 694703910 297329365 223624991 429525345 298904328 476366042 26197969 773673739 807154011 456072455 796060962 519023123 209757351 154705984 461325311 473044553 79361782 156651951 40479864 696164967 559089330 850093018 453535602 695302753 833707674 982064380 567603304 965442383 26205981 584651922 342106952 760731898 648899039 356353728 465783688 276840052 132039110 283563248 429529622 164726529 973293904 512885594 655236187 376559225 689137520 853511543 217213768 69275252 683488897 344228152 822933337 634011739 348446032 759140726 918897084 461581488 659257534 396100296 402183667 204787268 89506846 496547100 880295271 900394992 10698720 336266893 740128502 180852992 210903035 568688 280759954 246646694 240625757 277025187 55879491 880101290 445220815 577533360 560816596 545090572 851085353 185149850 655011195 324909933 749719027 415053541 637264151 225971584 295228222 818034592 310945377 354723787 689169366 418397632 258402015 852703871 241896861 714514723 249126664 504318001 755204471 480499804 239983410 598751457 178171413 152866395 995289069 526194831 29377147 713455997 21870580 337684243 460666543 849738078 174953648 659421476 271908249 11647614 524907567 9146863 5459243 863390382 679238513 396529085 775078326 266654528 257148579 994518643 581461722 922387485 837056902 658083631 705017004 406255421 27588767 848000561 271265316 556616726 367019068 86469116 899152095 731186519 166101069 427130189 631136742 820642342 907752984 969094323 249147648 450050778 174114388 964552118 500200521 858933977 600139326 716262101 939943705 476855968 418905385 553957792 283436112 391648643 843722869 319132886 434707147 17408779 885805548 933816320 484511314 978995035 196139730 545673674 514087016 41814176 704169588 355674583 902455690 332040466 347505681 24079949 82290118 652102954 309494478 65381639 129765800 959238510 497067662 238936390 985943681 810679986 129851181 441024306 189204611 927561465 501383944 814824932 116534712 430556884 886689779 988183812 997871629 644751026 140240339 690706405 940130109 350442634 904353238 691178740 937060933 194671321 72848129 666747214 995327372 103620836 5617586 752061846 748304262 772818584 910799654 281898820 413087937 848997500 242691585 970112128 457848522 778637739 794585196 829331837 3449285 866905007 187443576 285573233 503666950 580309784 82789412 901122569 811230307 121591939 62367607 388475844 639214199 38779859 478655626 159413568 24208733 447018907 504843597 351029170 204505145 43878983 767765239 560211943 640819649 80970043 574193600 158533613 268589170 482000043 292306228 989093770 889977131 809589063 152990172 121027236 483691929 833612814 604437577 618644267 16904336 490086971 939788274 937509775 555143716 860457104 635954549 128748683 461632675 618374998 568370138 739592220 635696359 816084104 457663024 855046849 420724973 955191381 337055933 900715850 823193245 511366401 50579592 107765264 668857119 493466006 42499984 744972703 658530935 818448538 587465337 379630489 18404554 937374929 915988237 380536701 662628507 470320076 53907358 314326575 391596435 240580226 276379601 871352186 654547826 984017103 860763726 892004515 264462551 690719094 410590967 482309430 855391931 305384892 979347921 271425662 326710179 433191920 957112531 860832078 682505189 468469104 201636564 706218627 359743578 619559112 323326342 681605882 269965427 834567836 616384722 439626711 375759335 536099614 112199582 946974419 602414653 51189773 999498001 827733377 523841680 426561564 915035940 27419042 295148488 350594007 79592899 335057245 205571571 642738309 576181661 171862935 437048065 188030609 16544594 232101206 881169762 803951675 605247541 457282206 935108016 199766436 862594785 877153186 966364769 325480084 894370476 253762990 115581872 321937826 528156159 978370578 435945810 429359532 153885214 108295475 197913582 610454334 282409734 3313852 299758609 338134885 589466322 948355424 76294181 822947759 883323070 47305846 129416474 997875616 825409562 815521153 651757910 954708667 989127690 258127027 215062888 507077560 822989086 11368412 304065027 857790801 172815712 52991787 119295335 423661082 630127351 933403695 412986809 459219533 642832991 704495447 946111522 616271596 792385860 24351489 430645979 264935219 232070997 490217500 188037227 22363575 550639365 797495955 880144302 132408254 37424216 504770015 259255691 958894512 925376805 400609318 439248565 675375517 812234293 223006191 759315674 21685444 290476787 874656009 140817818 779182892 917581201 779539559 117398424 341368177 936826759 18393675 414561681 263646088 245144340 386827336 277859902 164595680 223234571 236575556 766658968 211026333 434290053 759669798 812954853 95883420 119047266 404512403 872042150 352918714 619657226 267772704 30391715 746413955 488932290 632739672 698985264 542784373 889395535 989776579 127122510 368260453 76792433 691749483 721471753 419781984 994557218 289562903 440627430 862881938 470114954 204433828 506644936 794956745 666648092 147943819 549083878 321459208 226120624 445525459 903171493 780649238 345481379 504057520 205273754 784419484 922824281 503064728 813720226 30437243 329167376 45595137 422639587 791855379 650472690 709045199 999585094 720129750 499470117 19561674 280773167 896930026 654914296 929203480 777051429 69572768 130454095 854918489 680211865 915304744 723022570 198449859 584621616 573273246 143678803 375306939 991093061 557416713 624011699 219532329 391761916 896085264 51248415 707734223 899986461 843984223 367032996 515534133 715039187 705735801 601514967 601682890 450917971 890187067 177581346 618325277 235240223 885152953 789211425 953953438 630605552 18835571 452164 795787040 536548850 641431690 711250010 360573096 499862231 526754950 779213715 141293917 230214034 818734088 428682783 319802789 30101734 7863245 529555487 193813540 276600220 220901996 757648517 822374545 307909470 347542467 392753498 661709799 860200362 416782279 288155440 797467247 970847257 411352147 102249983 523729950 436251396 885501591 401396212 706137084 390742995 415518701 186903290 832281016 421887879 925794010 874814298 981241538 752053940 783018628 884404338 356230639 450925266 207742496 744287536 340067973 957724144 460962610 343588126 400389732 542626882 226310602 387562765 283132015 923449443 297902365 174577371 759272327 764621255 818327322 683543241 980209972 581669360 957038073 203969940 922964497 891015062 821092072 489034120 447268723 926382590 714988801 870630690 53124398 358313772 71187794 418113200 823387969 568741712 979832142 19956795 971803232 486891572 468770806 744457423 328220576 470599162 77203727 161523954 182424792 378572056 816365136 847334679 511114072 58505471 281486753 276073274 922200457 980754077 859796132 227055464 905861471 835285350 262205142 447805353 933543197 710526749 245778661 305643298 323802943 532233283 598843156 416882162 195154973 223287889 864845423 390214711 906979105 757532423 303722590 191159809 360056250 966071607 948127789 271310707 862407408 631638769 245070574 384590304 681421321 9352424 1825401 507975292 551776673 250538152 893427326 158545926 406377482 189461409 722590597 364202823 50224446 412560978 790039168 133256723 62185637 940890452 119384212 323188136 597323311 293115272 105960977 767435875 550461295 14016303 444752876 59875322 625597885 787707226 211793805 511920116 495768098 340833049 22142031 467373197 387499878 491040289 886590950 716861727 508943315 930957116 363661208 706891750 22895825 843970613 553466084 427917548 369203804 225398124 995049083 549014536 580486028 841743337 546663335 632151234 118289663 740621514 439563207 231643157 590298431 396412537 564980435 351122170 311343064 247202190 174403921 66072977 651025891 120714786 486702002 617347040 134326468 665860837 478926002 868751231 140216801 101075212 831108849 84012723 129181596 889376525 465845171 877706862 308208827 931344455 125624100 715430853 268321382 348336491 68735072 335381397 714129663 452474676 375632743 891182656 340099382 837132416 58484844 739798103 640899987 360812727 973165555 456231019 312616463 635132290 886417178 302601889 825507655 491464478 431089023 115596491 644046078 538836846 616956101 132853929 867632031 549108682 540571184 379624843 654660215 125111967 121434124 370438953 44046786 491946426 638578085 323037111 536670010 175669285 141995120 738456043 133566543 38495997 369468416 854372787 976985510 289367967 194756173 680713013 622655490 344425599 698015729 188722466 830928420 934968752 479816312 103657655 454467113 927348182 372797041 194356745 475840025 555488176 760500311 429295768 770251701 686171812 302830313 663846735 7212495 713573823 802732757 515068556 709394996 360186678 127453930 759361499 731429039 486615053 385539308 963545010 772324166 903743717 15741954 145577707 982843659 240898218 954234923 917731059 397308090 360053402 110216881 47563086 722670398 3069620 401414625 867899877 711958818 653134040 662813769 226695444 813161275 835746791 855137025 573491865 173931010 461184745 409851911 99124489 143956481 29524213 822096095 428130958 390762877 962716078 332599925 477654023 792890281 855570880 864559318 518350590 992452198 417655051 362087563 790227215 543299626 197701999 222707597 168292272 991459810 996593070 855519193 433103235 747475402 399242603 651929451 985803681 381808688 961266472 654804896 802376815 532467332 941827302 120199968 451782815 206255404 713432175 415556595 603098952 808277174 378316748 206589637 777910515 310487129 715446754 318650224 383663004 557606368 871494927 136053870 676685129 809345287 743132391 105671394 34410069 667948819 426092267 328149583 816955862 254186481 60718985 50037031 777530807 915178709 617860762 830854540 968562537 86714763 103892457 267863187 722153724 690149196 421693109 281857614 359725462 746187740 711588200 343815980 463611890 84419813 233516070 830564232 833866455 187761976 928429537 331099239 906684237 394302418 107671827 826557499 500860964 645021574 701699809 835677794 352444261 685977871 368011014 604596573 137127441 190615550 224156633 703859032 296439066 68345987 65495264 982307220 878816215 390427350 67469009 331057785 863421741 780957848 433370124 743051606 118823113 350556425 456532914 536504395 457551923 913600808 735617367 10874525 720360094 688738733 979956312 631830238 415049503 388780899 229479144 849839405 740440663 101070604 450323070 404154154 107274284 138924803 940608598 839003681 101481544 911510449 60761181 808921028 793326029 709680169 142977282 169787307 856400993 568428922 614718313 132775802 703549449 561784945 684686743 912461520 499635809 99225028 141566966 493614825 565861245 99995223 216975467 398892493 340464773 268390570 760833282 526455029 592156843 761531617 254767552 290494352 339944766 82664800 422943665 461304247 111161703 146714515 789717326 666375391 575647997 964135381 561123807 54634078 71170518 988018792 249066259 918768035 841380841 147483270 534759644 469796948 473131758 611357724 155319 25182798 616366382 715675497 432364673 733397675 954365568 661283705 235575689 741362096 757986213 587012955 692510036 174767212 82721208 947955502 924268240 944603407 45168705 744061299 699168838 656616642 763096702 309572530 927940234 213768250 377523301 706599242 84232183 484652289 478174106 390149824 515547544 39808539 999437087 909894829 720423168 556934752 368151887 885041407 699256148 561264969 260214231 766484000 439808925 186499445 916549968 277774751 544385992 699635464 43852627 819065191 983268950 271598524 17369243 833906468 137158877 68688987 969676009 54963073 179324035 616802927 770660858 313289464 733976820 592837975 444081014 198379114 903110591 94883941 171279929 519281211 729467148 517422058 454127152 645253013 441571043 233474169 130422300 84252687 136297786 54840919 981657275 222792529 181306000 803736555 729086818 968219255 880553016 691342305 707303601 289179255 468566012 606487746 148584933 451286396 602231064 602516056 390596711 9631371 172035495 333716438 106010959 262438571 13704696 624911677 453721794 58510708 618498782 183224435 299904820 426939274 832687030 51541266 8702918 505770082 299896185 410804046 372545323 975364623 453963067 827532324 34512488 809877998 429960078 132233866 854976939 34006954 107827956 451806799 379623974 548659166 593363016 383820742 375158980 18013853 809966251 891985273 825944847 814412684 303217904 869585182 241854742 99832877 285596234 134684093 881080892 549277945 158761772 740099293 54092484 48377381 815557965 51141322 829897584 901832774 947978389 441201196 678050291 998232688 971307002 960364928 863474151 177104203 912332630 869717372 102754901 589617719 697483120 255586696 524554074 881368028 460842749 217275088 948353215 657436146 647583815 320260511 821914032 985926805 381566064 975755237 151742004 723515626 171409564 386475761 481554525 307624870 846138804 711483127 136170809 146940155 107195751 115995775 860549362 9457996 26153724 67512539 458955566 770468140 338835678 619609118 136564350 404255227 637864425 957651274 488890516 814818122 832753894 205295642 1295615 570905761 481130163 652782606 359712412 654221063 859351747 902155241 143614024 373101325 42923984 871976192 688429082 717478737 559323925 563627298 426781883 66430062 456127314 745413492 317874130 15355875 278204966 218958021 888195490 861910560 59161123 685762601 77112195 211000476 688712084 367765445 302621913 12012283 118700351 585259745 61669270 836208141 884359190 499922100 584947082 427998651 533605614 94483490 302129235 597569401 831757108 822580801 92066133 860315871 419031865 824194472 50006417 854993986 316357456 933163642 631743366 936025978 51338453 493975137 444612914 288016175 149021372 838358647 995164956 383016475 190233805 56383661 248557432 738567433 419246347 703102636 814599931 804638099 470495155 462117528 944760516 613148927 292322388 886523711 293836239 266523426 202171937 14891614 143710817 947138788 387661936 429779962 103596387 135457276 691041883 54028674 745773257 618048656 563210727 846409315 951145815 138326163 445838922 16692882 583642269 744565185 462620262 678141211 366774518 639913471 320852058 760148510 753192567 979163576 267505188 552931682 972231246 125930622 725698272 246742721 126005506 72748551 724265930 526329595 49133851 688142315 327306887 540960723 837772090 379007974 185288274 357344060 130328973 138972723 759762165 519570151 148502752 817037946 258069943 555829935 141543129 612360178 502227031 791947706 234086791 371379267 906563237 603579351 484500674 764378095 265055954 32880477 9650748 942385853 552303098 678275212 787475591 57205999 956044422 958833839 878197634 372487265 577161458 415537047 169624311 612262116 518157401 630249505 215236637 185927852 787325409 853815849 14997457 997842270 203122192 143032480 912936026 543294199 976317566 49159108 415350356 582360468 887582309 196695864 212757976 403631445 783603817 429368751 337911664 740160797 737665805 935553013 666170781 505561995 597901254 788935307 516739303 545302448 763732553 417065244 317252755 721687338 100866147 477759881 943181445 61573703 305556539 896547299 609304738 40429906 641915082 963786594 590299782 945642477 262715164 824639360 771067989 580911244 967737890 514877180 513009394 838069893 267369326 899044467 200757648 474959865 438470717 808397891 621544622 454788829 25914272 175018413 115920767 653875392 383062623 958292305 316103656 592273464 68640275 707613777 358853991 345672271 442933703 792556798 749241228 928644051 304408956 277418232 899193197 57945760 285888350 791721090 320457935 134761632 920489746 157828162 518116439 949429919 986224116 556350655 19140072 728679769 387515925 564839616 211427488 920489486 898734642 724861149 313237874 613417299 340864858 367808573 455663913 431090083 716788170 105215619 198981635 19750703 661305917 146383366 499534923 323756407 88102626 744049178 454596919 958735139 86153349 815559311 736314317 162282471 348983604 236415162 626869069 534878195 697318450 367734659 550602530 725173072 24646510 933423358 20777008 154211132 656360956 936808696 16610594 659913943 65560573 794186950 928628069 732452218 698772217 498954163 393169943 82854536 344208990 144305716 743945289 241868981 312101177 120481050 567050223 750952823 34136003 444621202 185632428 769603103 199959877 271328563 877293706 753379962 328400661 671921719 528270830 583853289 239446330 775996042 727484494 75050848 969018607 751243842 746454013 710124828 801556724 740216072 61356375 928326744 513902155 18521376 319077469 256077382 818748073 322756315 33464438 192009877 444282028 217494482 201290153 144138537 777000383 206688402 495338023 124196636 141723130 13389124 57028713 671481138 365601193 35609520 286884851 584828799 827020687 800851570 549865637 894844794 881960132 28885629 28302287 316398215 742955759 155310292 263200953 254765736 143325580 773150220 37601167 331692578 579528772 635790395 226383253 921832912 108972275 988992346 550004423 34821332 652101966 775990676 665665357 665955566 462221440 280524905 119703787 332527967 321784708 562378105 156656639 288039323 147802444 115021512 164555897 294261443 955121282 944571245 497153986 568182550 387078887 396184877 83734545 706638004 33671523 876956470 373588452 716882292 733996265 268101646 601267832 599610276 868354557 753984083 130333254 306342952 892479334 678814699 654842378 728463143 876137218 665237561 46459939 930953662 196991489 133040222 819542591 741024352 746339977 621144714 996780728 338994190 816630902 788872162 499472146 60306167 597248268 313910808 983497140 878613044 691952136 494356761 247021066 754147732 178812624 236668844 59011364 900827290 830908687 891351763 606678232 362114861 528622670 749646050 435919111 657311105 274999516 430669043 800863515 925676267 748420118 379558211 409749414 178932927 370154242 942772498 136185225 363794969 862519155 268211444 74721671 983410522 61535184 936128546 395784689 807426399 708686504 865200734 837469289 101778877 854599589 929835147 794924712 437830414 84939924 185935088 921428625 741401576 976708532 304130734 860904616 916449202 434189976 753290447 712131749 491929604 394422454 926948606 2758095 253582149 110172290 900136344 70933297 266710391 579364616 577612125 917563733 301952279 507406584 12934387 17452511 948564224 33886776 329866333 514252564 747808407 467817845 181112785 291752401 483725711 927197875 311111598 751545423 514746047 805065756 446068736 654227305 921934104 936936456 573135168 198278203 988729965 755886998 513503169 694121359 511205841 429960919 846956706 831046786 241043590 711845143 672081323 284932073 106393519 746670797 962969187 343668535 198721384 904481960 990355931 466283417 25468010 908262415 318008422 898920449 383923746 692477437 55770148 824394249 918188848 324492487 323498111 164571518 968539130 471270098 755769635 271990960 491764330 794920270 63914655 558990516 210673637 384886928 757469685 983387592 12032068 579190078 776109072 575182497 546998067 973393486 666069849 242326216 798543817 823239562 809235561 672565279 293302465 857351442 199712924 957604989 307704562 163483563 42656080 259477240 350243000 756888933 173046343 885662824 285239979 768931275 571195735 522402783 441349110 6479562 532262728 338444000 84835851 134883041 852232929 867972764 679359218 11984923 287484984 40593951 784836893 399844012 971433850 740969482 414032966 360568959 356815673 65346661 679282797 883466192 377786059 489272353 947476848 696482929 901433551 886206758 898563559 323416162 497654486 460579844 149100934 173238207 205585553 379456694 940560015 738141949 295718630 27266336 661464525 121272939 924458011 242905176 82044778 203381166 454685309 149115145 23409817 281945689 212719397 785420740 475299050 918733164 354692591 44103888 584471832 700660480 323643140 888014185 835225051 984214131 38628064 26148214 716551979 960223592 72141207 610032281 289881825 884400099 727850571 885366228 662804400 766364895 158217692 159259421 890229673 705383197 125121958 157897479 624824123 173007777 311772406 551319760 877174814 844210646 32167312 541303331 807875268 990834256 282383393 392606356 520308915 417742751 157564351 21319813 791425030 455319050 299076626 368857789 569864887 856829077 347107252 289446791 127786395 845355820 471482998 994027311 631716658 764800313 345262897 337460216 282532027 746522338 775005147 740127129 542446113 783560818 464402959 614154607 950244663 630606215 96260202 927869751 317304606 985477390 522778081 72401368 733611554 242497469 170660315 664405399 714500117 948158113 108140995 92260481 101293993 349635665 330416997 67074507 188789075 881004385 337813463 35489299 580325256 574049894 956507196 119995425 941962296 497609817 351913866 42070096 39702319 816642532 666186695 332540506 520803040 104914418 528749933 20264633 131050310 529856213 938346384 639962771 38327828 376738817 696947763 395324932 182045929 672310684 619311102 344468598 989280287 756670728 590642702 491725144 306928812 297331918 559807443 837870575 84121984 60754381 46741982 683484216 701068624 892935072 186822655 561936983 849445635 288686171 484847587 482902612 508440875 170709661 931762866 377472917 401346701 221314018 845185186 938250785 330364519 8605964 787599842 130838569 429632042 982613904 493970694 9508263 967798354 20688209 716369372 881983602 410042300 669017073 480279606 878632115 990864926 503039135 994485413 540934400 400671001 755511442 477307419 977230764 211597715 15228804 179735982 139790074 871914767 705543707 109772794 249155093 366573514 623966133 425474852 67479166 207927501 859828789 969648335 950292901 413037317 150464094 106547536 150980059 820802673 40073926 26071313 473378997 792083012 366533831 930433700 374345955 995074998 563280669 150785527 920947853 697671784 750624828 793071809 886932440 818335705 464118659 802405347 66900446 669197278 597067597 495561698 485236621 793860035 749907457 495005437 618264224 765325168 79525192 50625578 376848284 235839138 109505143 941045075 896654408 704308016 814484068 715456955 600246438 359332287 40968237 124665945 172641019 480667683 509165205 735290529 652531157 835766715 326890582 281299159 486877258 624798812 51422071 452908710 265490107 430972562 868944122 294127035 40377303 654273457 763224422 927697156 830983581 164750935 171188619 558931617 51947495 503447326 20424152 658579978 529475881 921907951 683912437 512245229 193686469 912550034 472598988 388854358 643082384 810558250 612414282 155082769 325225264 707090465 465727577 292463927 721039292 891200652 717044520 815315546 173356638 912755769 899436629 454258408 275681339 161385139 806345075 418379819 411530805 540959962 58516617 193230829 96443502 746328246 241677714 534889522 348674784 8481925 573214117 970456730 439950068 97982582 669275263 601014914 21771380 64605564 202333601 942709321 4003360 75347463 19057537 34386629 747802453 676642236 231349679 758582994 961178494 667685176 96949097 332441949 910809658 102868899 868173968 18376239 584165281 188520959 951555179 963958664 772258500 559428765 427127901 769298620 597400252 173839384 182794507 473504208 764713802 405929885 744607235 872969538 831965424 269061818 776126187 503771829 545809698 218947218 527604919 211467593 144546522 750878482 26273344 981180862 878940878 449783443 804168557 514668192 258678638 610437846 541029479 884969360 11387218 716835111 558028629 806400053 563701269 747980433 832871811 192494792 749360382 14781648 161426527 756042962 881223567 827455797 744128352 738111634 999723703 347557238 347821509 924431065 323923912 845481772 852554066 64866828 565896915 432656060 845487241 215017271 185141269 214582438 442898389 66376497 240303149 979359988 700199744 261402862 743379850 496426924 710465491 84128509 188614618 915705881 72149159 360338727 499535292 107479499 815588623 616122630 72433110 772665191 646307477 912694015 349551435 427559299 413608726 191629119 241451982 426816097 893403136 811591293 687896348 19795261 606565235 270612174 393400962 616090946 92310502 69087132 180822842 639157519 123936588 414865002 772305052 350446501 134208777 158405363 585338951 499007921 881017264 122366545 340868952 103082296 729774867 152736241 916437100 216582640 571209969 666723267 146108128 921495904 849688192 273937596 538814818 713331753 801525392 927663864 90957271 854897601 738721170 33863191 117838093 490759771 371579667 179347937 489772646 118813321 513188887 704818937 492816927 630870410 312310818 24864083 67258555 413604293 839951711 270252892 35186466 903131912 621599860 195688336 390503499 719613248 335298997 287097635 470099750 35721795 21982298 584418849 277974631 388043043 114535228 257791261 431865917 772316456 508598164 816023667 60035577 237845297 697987122 90022501 17320952 805377393 471808651 782402797 896309082 764014594 384318023 170415346 901009894 770801854 19489951 337580818 133354311 404734817 17427568 95521577 707512227 756652741 367542362 443401692 673225337 466143263 798429268 81069251 160917997 831179513 791689836 900004439 956540191 367359041 135347919 861473193 710484050 563314742 868702821 850599002 106899210 610905295 408193079 519673761 113445557 518105591 158780965 514793967 80262297 923394060 936513172 834283121 424659911 488981087 916920416 248918901 477245838 191441546 688781520 181218143 242955495 759400710 789447716 711243373 491066944 644290943 57816449 791180720 971700542 171153466 932448961 461559458 73430927 865414463 817871960 484657456 850523257 960581659 101865206 504993210 192595300 715348559 882714953 400480728 203359478 244307200 109831530 822784422 653773424 296618257 597273405 834162343 459832944 324308334 706319483 210890684 247361425 881601715 670036339 110505617 525495456 256631908 395349204 321266535 22859195 71867213 691091693 155426633 928739089 449048252 811998483 809631140 544497279 660512636 340551551 581095533 964239224 456778951 640772635 293672512 449215254 883596607 180992566 366631977 98141922 972101302 886671037 652377654 451852425 286648432 950765365 117490396 731933039 412037669 315314643 485289099 568939882 265649079 587690056 118460921 746887462 711685926 361015443 916316583 437244932 565375228 550446453 260088570 911113470 524516668 225529042 820370515 152642387 841130680 529886700 526521446 451397845 965385867 836929751 221331479 960972214 649052551 170253816 36665833 980720171 181869190 479125612 500784493 232489358 592576176 179953151 155244669 263622534 329194867 454709875 524041826 108030447 952254558 664002926 574013103 184007525 903899884 951192560 801413036 116439452 297401194 722343204 963696645 409534106 159349230 778374682 193974084 197549326 562690255 639157922 854888094 587854590 410541988 60822781 436440544 802567459 13140373 37283819 601284612 103900175 488795811 472460644 851323212 285351563 673102928 350932521 398520926 294356674 14682233 940526672 818419355 619805019 8842270 897349417 877372983 649047998 211100062 351562358 708019595 493768516 284914461 829533556 114898684 12073263 810086755 239187906 830028117 262005412 236566744 117040645 757502042 203327214 963905891 829613193 225700054 351352497 196119317 670187350 942960741 321184660 837712792 285213425 613814143 340941812 226588828 900093860 92836144 23283166 619936504 759772172 794249765 450774499 351696502 392911171 680099216 586218814 707434373 52178128 278216312 552060946 274498942 41420879 16501043 153145880 91400544 274026041 652424535 244956243 266055385 224391736 688287130 731421605 946387548 486907668 900209273 677772240 661456303 417692514 221641030 421033611 588362991 482029523 542867519 72738128 859264175 394334827 79171687 540534576 629098417 977510819 773057530 978709682 528550618 36234131 566481721 878184276 977959128 87669370 747038056 565176182 987604127 52065121 394575540 398419966 768637138 704237171 779632362 648337612 277313719 15870138 562899852 812033909 567654833 877189808 351922739 122227676 495041791 985007235 670422253 427952077 960061642 285305304 353928967 988100507 551587394 936194764 529820463 843706404 681688720 684737386 919956441 797163737 981986126 330638199 775769938 89474475 902595409 297122389 131370966 557767731 867348973 676368812 762737557 314987070 77989819 361256069 162701755 64219695 869910962 972094280 323357094 50341460 962815395 681672041 955899271 775181389 970394680 786128196 365579903 403064855 860201737 594392314 397301899 348269714 38517956 388491742 907486491 987616293 423716203 663206594 785421100 536171231 199843693 118833581 179960047 70860729 681379075 790568695 631660054 653510582 296689974 729345998 668360282 409379976 263622659 737676798 272212126 869829587 209190746 233798839 264002397 332092854 973059246 912854623 209304891 382555864 70992554 197568562 711283515 124406475 325155536 434713349 203485866 174974194 856176731 270942700 641500820 587854315 65629992 839349461 357278673 309582508 11046270 120999205 68947454 681634682 855795684 894939549 45885499 688538465 784938807 359882592 113693326 276893894 834381721 123205001 747890039 352281897 715241881 840525793 195335445 121296068 19735003 441071853 274051305 461475707 548626816 623337008 172734324 293349956 303729715 544837812 943797283 455288376 684769683 28635171 376165003 478875937 355804529 524057810 13972965 675327653 731666927 2489601 982942899 633933739 61037979 733617521 820210562 485654438 480308562 857049212 938565450 411363691 674822256 16183684 89259787 467497151 306901495 181525295 909425763 401360969 311776378 911403720 267030034 267486412 485179770 805831351 515366360 437329388 163430491 67877394 990877762 292050538 352805675 989426918 67277527 594717450 196390464 517104874 991486508 966347883 462760715 779624197 369301109 206590054 529973816 234214639 940731781 829644094 650181535 458911027 636527134 455875493 877912999 69415825 600331454 517133626 632362233 402452846 675028336 560118939 815574606 669301929 477460509 422771608 755749658 260414053 962937422 897016028 472127956 562865036 421526006 627502746 801687282 312986123 176981384 613961914 678256385 713339564 360608630 570430230 938359884 214428291 862135002 904430525 144991961 883685545 483074465 538662292 163091713 545317405 890911148 316199502 598537562 8790663 11886650 35994062 68469077 855702281 327237979 85366132 408125281 589088341 91500869 546317807 699455739 48540024 617492781 825395167 171151796 511267917 621002704 184710207 791416783 593951817 750203939 517599501 196859866 396240580 149012124 592998688 298341085 912777239 728525606 251153711 747346455 328671147 301655259 355972129 589996852 387639640 681167395 640681721 774279804 845007419 526954814 610104072 179732901 449768389 28792198 200138452 342976615 575285530 984910051 783406226 370670709 954189349 996318445 386304990 953286998 248123528 645587976 869740734 126794985 694530253 715668508 302266562 101225771 36429526 430586616 412860435 789034738 965217125 464986401 198938518 848354785 487722834 869035056 460080116 589791058 434546615 454231818 706444974 201181957 400249224 743293647 238004969 876707558 958712696 314964212 977598863 992064864 582507818 419886937 984641014 908048890 498068795 881834743 293499506 892308975 196022031 517437053 506097339 623314508 381824262 784189951 173099447 770509145 422927678 969639315 275611098 526226496 498836263 930043410 802077121 380012898 509177820 285738853 862852935 327287185 582306549 436363421 199422682 57888381 400165214 94725906 458508399 880614995 751934474 759468944 506591728 970009596 696967937 910982602 897869894 315083196 638343379 945129352 612976142 90689366 667605077 308342100 5076669 483640672 220942687 549207076 732345326 473782938 497908731 605373860 125673344 674739789 435553226 42008635 62432572 790257757 286902378 866555492 55591471 372416307 338779181 834082217 350716067 429335362 815804012 677553245 624561227 529361614 23268908 803168274 389598825 889651353 470749769 70181447 993805765 801530554 412514707 727606899 944899862 244326912 648757122 27953395 398437495 800737071 291070357 562240934 227527710 978748967 183179951 784722572 731978167 497156230 191144235 522735859 841047108 51920411 956707109 450218819 5791659 708001031 671050204 219850732 648767559 616109332 985545137 61997330 237265893 22096155 945415825 289828929 315936150 368159561 82731722 732024068 173358745 358350732 654543303 190184252 237034671 331596851 352421077 999803168 283337110 254118926 481834460 604977417 373715986 595815324 925251640 944961062 95536489 964745299 427753946 349148130 720733301 734724308 484859089 544691880 806574514 338991593 527570392 470252755 346581216 771706561 277908522 689221658 862998510 639458904 636946922 565282289 470573325 241009053 860993140 965048660 139144422 960739439 108895012 271597869 801697819 950609799 675535756 932391505 617427110 560330624 504035595 939932074 130621637 379058215 49448642 362268566 869257933 643240810 975744229 134931688 191057527 928277837 126366198 927277280 468356656 936104108 542033646 409190949 123013287 880486754 29237993 262354193 362995342 907114447 963062273 26404943 501987794 851090031 310027506 575197378 159448968 437861954 165100093 799247271 725275505 935498388 278103441 940635843 956090208 703316806 411519048 927093367 793443715 880660671 35087453 439753036 815285570 210069426 407423608 718932375 858879392 825298854 126465849 163424375 567036117 189770960 626823974 9627735 453928738 234235086 879991032 110553749 75377894 713986458 107364819 38861196 443738452 734136191 549945710 878855071 564463673 101687062 405915885 621281199 558287026 210410392 623930467 356173408 642426727 546899918 744498423 98384841 856105656 753129648 803801195 734695037 435309540 237697956 209737209 120455978 519391462 365584045 941935342 740129767 649179883 430388932 232988965 203597159 629200672 411087838 857742447 34010920 651933092 804444687 513203852 17597020 415552872 71817235 487875554 866290532 904087453 924973634 205160387 835920234 332030073 617737285 626720106 797135979 39878695 742852405 778124451 173057547 535140681 703652431 213519705 123620573 176539698 857211732 567242357 798704455 518116479 604061239 701815843 668932106 455968868 585183400 855761528 474340588 445546808 998240882 672897764 42751454 417082447 749207405 668146743 807980619 300418415 260634191 753483420 935935391 286292385 848101483 503940469 677455326 651198223 701823888 489204507 847902323 12832731 60263057 589980229 539093041 240005572 754842836 26162255 491017357 89954236 127204140 150608375 449874723 322638577 241758861 621621228 984545216 812118911 681550593 843461917 708278880 402318811 361646581 921398449 840690317 382010419 426024008 212470516 328203633 50809134 831429661 765945863 596062567 861085332 448273111 589176275 622211721 104080596 503031512 452815478 79216064 530619923 465807935 638119897 830533587 130774829 365576678 449009598 354162117 974581320 826533444 852227446 411459651 897078876 151318735 310223260 90222763 438143802 307431486 229600383 947692594 40857003 895709024 531190269 80712790 427084863 546861914 689494210 626254100 701730224 367850202 266139440 587609054 457423661 712593618 934067951 80609888 361411697 762308922 571711074 136582654 345029241 495038806 875542163 876635756 841568779 554856268 555713162 485487283 23307159 438671969 928962751 49213715 650184977 926231155 143636501 681118420 99700590 519901917 912548175 235147571 473507311 258447158 866285450 375011045 17886722 566607545 821978026 3144441 426389943 247087329 66581396 958480366 17829097 432055059 5770566 520289636 570052802 91471993 66863280 839182684 126818377 769248428 785221164 127110161 25743416 99871969 312355935 498186348 237994262 814557278 465565199 386338092 543375678 212403309 811044304 588166010 681349352 547931557 952150716 92988499 236992822 863897025 308901069 402878587 638834181 801049036 586945715 903229842 494651985 123435501 484673689 607682444 551250564 292259589 70712743 255433084 272142516 546931829 626279394 82540740 557822999 312868118 855389662 142737473 961002978 837989149 387044596 375789008 456645538 65075594 342471303 911490886 210954667 865867558 734381984 746010878 835518544 33134124 2751252 317873783 212302171 642281830 497076120 337713469 908418583 636675705 204975099 328003704 506993031 775109921 977409210 311321201 898031121 162602929 98633215 809470027 754547905 878278053 592870364 950452752 186312205 770594330 229431804 3017592 284315623 747924 510438985 859142813 754971704 484556397 52900289 891603760 220245909 640871572 667075297 182003300 535020600 724876611 606775086 28931423 830083090 879162187 23236950 311195797 167029251 455192640 826140744 870898070 248795785 643920349 54599858 365625804 203123009 979193690 874714390 348664803 232100963 375271764 253468875 571446681 89744671 404025532 790514314 968720861 466527688 758503603 811934255 919702461 937110097 612537912 271981312 196143110 397051141 673752938 684098433 851702475 634418370 459586495 378798721 493474940 905480604 288612256 689784499 388795728 584936897 454067623 598475213 876634821 931899759 850489859 615142418 981646996 647984497 604644698 652706279 383846828 238201669 890094318 958765836 653974232 732936084 578592370 941476174 839083175 616029239 312628768 869548655 902649472 173097955 740739221 209457782 326157247 461247905 232699503 78269918 135151295 875545438 890398934 251679693 967426017 386092416 526800903 111213840 320274837 24288379 128922210 584800154 934686017 123249201 889314971 497769757 484889229 85515415 716796777 477288025 839504888 676823260 952197975 155586075 409074005 552406128 370028107 796268367 153107907 468251709 305952400 809563422 882490397 225982036 936966022 352919359 246139547 356423074 80530827 496606786 864860972 147285325 440315628 173023416 839636881 136348306 248443418 485807186 468602014 2268236 117900502 607509643 175503707 399881756 43659635 951805400 30261934 294508647 967288276 519316065 473380013 190663113 56744531 813826582 202903714 366819577 61729315 56469527 501803328 884259458 746240026 636563862 953485301 118528414 985498634 712003663 439416250 829963680 21198474 724869468 325266465 760132924 559215918 168073935 354977221 19053776 656586505 633415871 932035313 531668683 822738832 7931526 391975496 24480425 990071321 105644544 786380893 374533904 263057933 388797281 948160430 891883474 10890032 661765588 833794760 893859709 55424753 394928769 625848508 373838170 520538270 569384995 541231408 693689320 371270957 745093122 263248378 997661057 706953243 814946502 38739375 815682070 850603003 777656055 56773067 952383251 140825357 629300361 302705086 916546264 275563297 475587190 918993145 858583615 783036442 968447155 652978630 867455954 779065489 281394247 999799446 365783204 934757097 319994879 614048561 266726349 759773080 402057079 866099751 541212104 83522926 1013842 842432122 134080608 119911578 992704059 437409282 192678482 263323219 195949240 91316854 57317283 684714676 46010925 882354858 548255855 971579171 319553934 987320911 427918989 361042755 593010569 315478916 59316570 61872326 438996158 575914016 362393996 272942468 694134787 29747557 460321906 111640874 670190649 593819708 552213282 116029372 77935069 153370311 104472174 730244793 823938584 196134128 366414362 225951787 453600924 514677986 593839321 477920080 459445491 879661938 727515871 437320913 317506819 550367880 281279217 264789334 925441802 417526899 928777240 301570284 450237547 418669641 898482913 247080805 182911926 271845118 716670359 876866300 880149775 97190712 151673378 931826448 86917230 11119104 758692402 515809510 827222221 764942536 801554303 566999852 623151991 137658528 991797796 835139737 687823728 613112283 764044352 142413208 879310673 941647736 211845567 181284173 558118682 123446457 623581938 887493873 931654227 245566120 331582508 472142078 180531904 938524443 721490399 43177594 141684181 708389287 794634854 621820757 15121603 980059381 222552290 226572392 243457384 398286020 441786942 717074327 958681530 661244374 869699386 351101683 379758397 912059556 120887722 926450075 24094708 194095943 233668059 267052940 431907853 423169287 556680819 819844759 743115992 803367025 499848540 660636157 507664560 843547289 962951150 704487387 457014430 254998556 379063596 429871493 162002946 767905960 409429400 454637418 415276145 617415193 497724091 713031877 810911384 176283506 950047141 713972574 896006771 349362837 657518278 898136171 482069736 655492394 134012925 842296583 857209791 508928496 751154062 418577385 751915926 754457890 631006843 409459489 563525189 61264406 98260601 528510643 857233806 518791698 771860537 749405602 720160766 665655658 129764931 916542001 573771298 316077982 882929255 262237667 853683990 282747889 303663663 460129815 840107869 692937366 511064980 16002256 769898316 388300687 382917003 27675691 675553472 433221018 227838457 462674402 93603324 435349365 458748513 425986689 595538102 616398067 186816862 298002612 411735610 324267635 617090103 82869436 346235356 831369635 576814997 528737193 854940883 116297085 526858436 157980177 767659911 481937789 104033228 54549795 452280634 826687447 965515724 443050893 563691830 348128604 941929443 788593876 477399556 323022263 626406642 409844233 547610541 10994887 770403875 873819903 57140355 433163252 656696811 238736388 964653070 615088142 367137886 717658842 2340693 458114588 80440387 477800927 509401457 885997387 368978149 72660802 177636262 132010617 551019163 19701664 908553699 108600262 688384877 720844310 383307344 889111390 710954736 409454361 786433203 57146906 176640330 593046455 371966337 337150882 377087807 827302139 615431589 281521249 374025072 350759102 138505962 83771976 427443088 898566432 269165963 294794449 842347751 230107710 872228526 918377725 899707472 46141145 50945635 484193246 188238259 973901168 332649856 917683753 16220553 10100318 802841899 296906616 445587643 201451115 849010384 503865867 840255803 216149560 156413184 496719083 578580096 826561993 817436983 309107850 832461549 884518837 944939311 963809487 714561189 172331563 513517157 249700984 318244964 407384753 140627262 560227468 411092611 70704549 62471141 283545760 335394051 698182042 755957110 429797519 323184143 333645675 133545758 958185787 115394919 581903427 494779184 508051108 675169884 891693579 271523240 524526271 641413674 463500940 439118383 495209249 256762982 701380726 217506907 9979260 622355972 630433664 348032554 106704800 250865118 538496882 585012320 488682550 335191066 149735024 57664740 809545227 185549918 666627849 133404247 671234745 874439914 935855344 823852500 860820555 136387376 152561128 560576092 717023531 43406839 174136746 51503534 396739787 798088106 439143908 255047468 557173649 774507517 587581589 143074823 362291144 350957647 892558267 982825691 649878849 957281554 70318838 55445075 667220852 472422426 855044672 77512327 192846908 591502351 149555848 992405768 715434267 411524161 717296483 718267166 181874539 35517086 518316564 669630280 70191594 581881414 358438217 555440262 238007504 187701713 666515807 45643124 776924002 773558345 982477635 186738222 222632721 299545761 333463131 597862616 601439209 353484047 618576763 901906019 467103534 418560855 5725747 518772265 262726437 698878995 862008725 474818804 452430115 639396793 892889677 372626083 58350154 370733717 796968697 758821129 224074894 608560369 500570831 408965336 567444683 20666812 204985345 394132076 837199232 691290893 410205986 42304391 810878923 73362020 712537411 798520511 319273487 74754553 343420009 702154922 510812356 885194686 76074527 51836971 810130540 660383515 675620025 29589945 886222873 355253276 740947738 911964497 939553630 839763058 729324829 638233443 249342666 668907665 50782734 838908166 6325976 170190580 606104598 196132202 270561212 78860586 825674040 70399824 922784972 624012985 513499250 164259436 336340382 80204153 898248557 869765559 309120927 617120021 192963955 123994587 505066436 659681905 408574939 8504809 420534656 639072245 486374074 304824699 242452595 502136676 187908719 511903215 733236108 70226417 113305669 279853947 426830821 701986264 828046029 958642517 925745957 215180290 23745456 608008649 450408896 247124189 453794180 964611979 526443405 493210915 454058253 485989384 9116502 480038853 948308614 209496651 514271707 75890649 433001107 615779697 677012088 802907688 623591689 776178469 474491056 25147878 344814720 332587042 543058899 399901170 606181051 102132845 688030401 234418498 631688977 339394118 490564887 81927520 134700642 864413294 693680793 863053325 127699866 527876712 101430394 551896815 774141902 820705339 304857018 5724209 743616809 575761990 802106452 564390236 389583764 905946987 208221419 655752821 941556430 418549117 682638739 157186947 716247888 282304321 1926319 225549153 897647667 610710159 437992032 704190559 177832380 843075671 368414969 926787921 476894557 646287367 650212649 998102328 943235247 723192268 672964162 854929742 599444472 605315715 576414175 587004984 191227884 213530448 406339170 969327910 881664610 7378079 57748911 131125842 75943507 965518321 35795676 323292571 984874748 9955521 276827795 307917255 250482339 328392641 839049929 670919390 759213690 814198276 748420774 518930302 212946128 648193937 103107415 200989951 300050610 465274260 557058197 881062167 150638920 140537287 306052125 909236430 274636868 443169226 609723802 461884051 443225481 419985777 199849987 806543912 738005029 499923018 940142600 608756243 242132651 682030200 294550894 285324430 364380015 195242588 125496913 762104668 70674466 955399468 109563337 566069149 260852653 412042619 725314708 518467835 120766816 513184107 86881874 792341137 128246955 99366219 590992771 770352573 181059994 20766317 989335359 730166122 536971274 171490074 935148223 950234983 544944948 535383324 887094404 618145946 110218967 883951367 515728179 537255656 959151537 412578962 71757301 306115707 767613846 448824700 645753395 806346685 327804026 244260061 790546809 707172689 477714188 374756436 147935149 934097462 177483132 22044478 215073251 513260452 823740809 7162069 853851660 683189962 414419043 924732385 589897154 403372009 457024693 159976827 914929676 710518645 779384960 129927595 540698292 158940815 26021190 495691740 15057097 649338136 984132567 950756381 688304489 525919104 434003664 20609271 315210529 359570642 493225332 960022972 994278875 532179875 302394960 208359807 243578735 437428899 191638856 961784203 161055413 838414543 310617405 584186413 850183255 744399433 8553388 829585124 166989682 224668970 427621647 907400691 64533923 275194671 53500461 707674583 972535387 598325130 929792619 196154862 902008753 726128492 476024724 888000849 674353512 535936956 621425762 280593440 154937898 609396678 54424167 522129371 225045363 21003082 656646277 487645839 798707613 585198285 785993281 521597226 546357868 592930914 10923366 728578433 736495067 723769102 948051779 270127273 880710584 310917103 296974855 926914290 422458805 287847570 902287533 406804976 789575247 258792694 541443688 769142297 765314919 863913767 266612153 376477346 325794162 752631041 905808819 224084121 508668076 458318142 376566796 348096872 728293070 769650234 843764044 706892838 50874986 330921071 403776373 509111180 709567838 395452437 71880612 222840866 250342778 551242955 738226152 95553757 669994300 938506081 176493250 65328936 537706178 655977669 590994516 955304747 999174223 522873401 505906374 367281038 347141920 188912599 462452459 916560909 791049230 173010246 669654914 839409818 653435672 572082686 362539439 241640850 462167260 987451158 582957044 460002493 452186032 732269372 609596617 602668661 395412839 299490107 17837515 755586014 773374984 681800312 261211646 235811938 572965530 70716621 640534555 459594199 737966058 154809790 345471860 957469275 328527869 180291245 571609938 216272753 723264702 232271197 468417805 145104782 41745497 325431220 276623868 60882027 437399225 44815393 548557297 456370722 722821788 494407738 274498651 376828607 981834482 564313012 640697875 566474512 622985458 878006578 465628084 916393622 198668823 328650594 252653009 479089978 310285402 985385505 47866065 878416305 609975478 856489064 835050175 315443778 833516148 702767283 812150113 481161096 941708214 906505296 475861439 152621170 799933789 628478126 747440381 299991692 350643902 63109338 818991578 826291345 414305179 454229027 855633035 355775808 318321072 769962560 586118994 666257305 516634951 131145835 618212111 754552590 486651124 703696584 555928719 593275170 118668713 479311517 352163913 23514259 344418359 930458573 927209031 729940935 319522799 719936113 446137097 436984384 568454978 837213336 140243583 406910698 371693310 607267650 435802973 193375775 833395983 564317174 994036985 18487365 203271281 114476414 736219644 493161704 303956908 322063798 530409330 245901745 159624120 441755198 441478390 459267457 669304920 548920058 687233126 171261471 206059633 796583001 446783352 481562051 384891057 234955511 429015548 511015021 952323292 764794343 220112857 283998971 751609098 638040452 791683477 78463005 641627405 533598633 656498850 810950763 499543887 142010106 261105176 8529670 498118949 857894425 468416583 523427064 711505653 524074304 370623575 325233711 359252446 296011738 688046650 608448043 186614451 738363032 588555986 537250020 151730896 359104133 62575643 861531455 213876994 30431033 955434641 97464986 561366309 803970290 495889749 567359049 882865341 555751912 496831686 156122368 676652720 777042577 564703019 459899990 998086012 419934230 578743675 247860660 614579624 544036985 955619145 943003180 129379201 703952811 630234391 793445582 913774432 965972421 831552381 403311933 87568086 619109645 36454340 314200045 306509030 79107399 799931324 393097179 797505884 706990170 870538011 943101440 726375547 211822962 179962621 353779607 673335230 480538718 250432750 259674911 718065441 594666755 912294460 967754238 495091361 699885781 143622402 276817590 125236632 626911603 46113734 928504627 583118461 313601898 239039409 949798190 851230943 159801700 683774133 448903749 118941282 813853778 418831896 941616821 978011105 439278293 661813683 468402319 732335309 609017506 170550355 171425872 361811865 965260772 10725519 207310812 603820759 82981224 429470930 535473437 173776409 548245329 200510985 358776121 144060501 684789361 307475945 705076155 710999835 929634757 539081852 538215480 446484800 634011418 930729354 780175670 219784753 75647279 908015170 238383599 931246877 640305116 883441604 11752720 322559018 226705226 136145825 641057710 239359068 982470037 369985924 568545802 844282777 402835547 901144620 670091525 194866477 508052717 262065572 780868929 819537803 384995899 172621561 278964241 595102595 736381637 487136261 660303395 149439743 277926633 208395921 415036342 552167536 47557830 662105907 804139081 42281304 592858010 67789351 809990025 833901083 935700527 988392967 94263191 664860845 247642886 844625518 456180353 273130761 375881813 69482726 735940278 97638422 667637784 723344747 644383351 448490168 636374919 795465781 322188975 159027498 397049697 303355294 280536659 763910572 595976649 505720778 222382598 261789094 916191908 472520934 76460160 641691659 869125580 499160264 974564199 88474836 743404395 409078660 844008151 182155836 408749726 903567268 671583015 689596787 252225983 644659202 880421300 218653794 279854032 808132537 349500760 842639758 780102640 582099794 783075691 133704233 791855468 583914765 848585749 837388328 701889500 458451348 991129939 380155082 699857072 124042554 643465708 897199400 181720759 838509243 76422315 99067242 197355704 511575261 588422359 576024301 794698692 615560696 366796253 526159684 756672124 24623394 992491131 329790711 833174729 652370005 863121528 442976455 356960095 990071014 258719615 829237611 565982889 905864765 497611861 417914396 722315324 856892803 510678059 13718553 185492576 204556216 525211628 669158332 582790651 383080897 516625173 62911565 854687591 150603803 230067695 352849335 218948191 462811280 617857213 572196837 943450337 613449012 152357658 217282078 264083258 270492428 649846646 821783670 558756899 312924559 921594677 206600765 191874735 441761658 930679635 759909770 986558963 689005106 798900645 234246573 249644391 429240242 523063358 750339199 731621918 795715419 635436190 386340021 885028099 362662185 991983602 10936988 894570413 278374115 110985779 525810879 584265127 942992313 221494471 914646350 409187608 585425854 3613769 96627253 339190314 994968419 361010847 829598730 581673620 984619094 183792475 631409054 74961349 285608251 41208543 569378239 962147505 521738058 894007964 281053495 893634770 996762292 390184170 398444549 853945018 171064724 81652795 834310286 14496244 249954460 252433916 588586670 986511693 896074357 17457077 501361918 399135903 246284151 893424317 599845891 470003409 644156341 793047401 772507323 645695666 372164361 515785342 447369006 70540683 213714029 571421098 663722000 121732938 833529501 95901167 3743657 716937348 2983424 227477183 497660968 874735186 765375331 188456110 215529874 953789480 274727161 530612454 321852618 97123063 61309770 695298927 547838253 664944584 588261812 970826113 568490599 456357195 195951835 806333264 936890965 274765735 571933921 522971006 228702178 70683040 389973816 507847338 127274586 346561839 618418439 952303045 473104848 927413676 688218024 942837882 50739920 218722929 219181632 304278178 865319742 321515766 857837769 698019006 454402123 207513926 526342149 954350919 281686404 845635840 284178938 229997898 59291740 529794431 949322700 400908550 866224149 249958703 603006337 301441924 954084971 125115075 377363527 366910251 644313849 719579538 644216753 571120380 489460283 653357809 136445084 197969807 824337779 979308687 999666480 4189687 152159650 232077683 965479682 384066451 857790394 437556717 502112703 977663974 585003262 723497400 126685617 728263957 112707656 328078215 750738108 284707804 505162199 754814272 832689777 141196058 156585227 536358916 836634320 764464534 601095702 921574956 591571731 575945153 795781453 420951888 704301159 533079609 249257579 742105870 247197683 156276130 926075220 823832964 742167416 444199409 942064433 524252826 924383975 465798772 199630458 125153777 35780485 863701580 91587280 453630033 435763465 889356441 372710353 419830818 773561762 465657611 866884038 508598406 430762773 590626065 708951897 487521825 276289138 310988912 594667218 542904680 185665907 317189013 682239342 312860910 621802734 281045479 505602733 90160472 90861716 414275992 36384763 315448991 264605996 33710487 44733440 456268487 977292284 745848340 558885348 699020770 676858122 803360565 654745636 395412561 447473220 654834247 51557621 670006542 483252067 867671145 336149105 385758267 163807794 211392932 79050780 724722321 704752122 771524560 835033974 813054691 444407003 699184088 833164037 238937125 837770168 649110139 865662649 951643427 183441474 437038148 161130976 164483855 358220510 179363346 323197169 759120383 587281038 352111623 268902340 650962279 710051240 751920497 782631595 796601586 861621808 658905621 894877690 969673252 432696320 368647098 781777102 902956929 72396909 69028797 724094225 309764305 926470585 278589118 273001608 424596651 36227924 901457785 171789196 992832496 17848900 581233408 766339961 333755497 779574947 567595288 277306482 292011254 678395131 766196808 754312015 177311560 800382511 874054509 390975953 671628780 653192338 426220653 847203233 346961237 571827811 424919001 163238189 12866842 223718200 898427583 556337489 906810347 10043555 720182156 640398920 460193510 340634827 748773040 27232635 938959140 797282672 823121000 206023807 228961562 67173611 542887205 568756269 918526784 294819571 335500991 872074901 666013362 664192390 935088014 377493439 348711664 114873105 825011452 169875370 490071637 114074016 382521204 249699785 196807157 199688829 866970526 905958728 449833501 742268977 496630086 850551502 759566792 946066591 327414674 706394704 597114229 811229594 480503723 124009392 124875909 49254708 166283928 121378675 694921225 722715413 216208620 399195615 118578560 263523128 93880233 888074126 863574577 691669080 40627078 851971767 310507507 406434164 138560541 826863756 426698875 499753008 85500692 327807594 664645045 459547781 117725140 731658054 646255184 904903504 432564130 354201440 934644551 187742247 29986687 204588890 729108152 72693430 592111106 525474240 228252834 847616761 930271493 52053909 103976393 410894450 404710800 971167770 160253216 398421261 272513463 58303795 30349025 809972186 13561753 705011989 595100926 585007275 546816977 679935186 809012650 440593408 144088825 314652524 60941850 819057158 211525105 975436280 853995639 260479490 66722681 359421615 91106921 873253718 57829510 462712041 70432831 633306974 613466136 294252018 933557786 763868349 486681604 362733524 372491009 924820920 571540434 468914938 112002672 882510388 613829091 925339575 249840107 919873855 681326624 354365827 684932809 155507903 215208996 940571501 747088289 246859380 104278357 447329650 752321856 801051938 130677155 93637916 213095655 284745172 210890569 292350738 492440615 418293667 110870486 350451586 184827385 658154700 982613113 950379462 884333703 480399554 967439554 81368039 555733978 82144347 730226808 338156495 857203082 120929436 129843425 461656559 974452908 243930484 395524958 114622078 457289388 23969522 55089818 830178783 835269418 489447585 729220073 671649460 862136849 405219003 803978924 253914072 52017080 691300939 386410996 773378339 243162962 818203647 753723157 20579377 601298338 45803633 701553497 4229955 103524521 806341232 257030148 669161207 420366341 870875975 741727299 672375265 303209563 368953249 609832079 160369079 459024768 484794255 320865517 15321586 747597175 386639310 180585236 841510426 367423612 754904154 262419411 46435403 244265166 978032379 442272706 217597550 654338480 797721961 111945440 282636610 543702855 338471610 373887120 662013174 528336695 869828636 8702319 535164182 688624452 329548784 462412200 835966733 426825769 97291707 87067066 779108410 110781122 30681591 543850902 104085577 560075492 614085495 923395981 463193483 928650320 724875194 843062972 394682763 99238887 244924923 917775855 470483465 683208415 610732312 885338188 21727032 888909358 467691383 126289394 824919133 96057104 661185071 67420994 514858468 441436488 580228206 302372299 858074897 423063570 775352613 899098890 208707251 834378216 686455410 565849775 918881692 96044630 472510879 832168197 2900753 532126577 526301718 76727644 75251767 980277100 154111256 804147191 367576866 53232547 94388389 853048656 988516553 799243397 938066598 522371810 864782713 448347368 871648161 17911976 588521350 726765405 560164324 661549419 146975674 857552906 453732868 697476425 912733494 647435208 178034799 360901104 930896498 727834720 310353122 276210054 192341678 707386264 237030065 716456651 473771398 364503795 124089964 777728277 963552160 927055060 25338998 803283912 410370412 684385331 877806095 30539275 363328045 157539108 156267119 628678942 918802923 967360693 337878516 915350670 911180657 834237272 984883223 846897949 51891565 975667937 140341692 413185428 306249648 41020273 996566882 302307626 55627204 333588387 251010938 611617618 68335451 649005688 779341708 633034900 965124085 10900126 141948359 636890869 952647521 493466932 76146668 556756769 752965883 307807128 90012574 710795483 933000926 348679823 644701270 709971611 23170423 959061014 49848405 618281771 85501889 967817924 440725112 7187705 311739710 244770759 727589277 732974392 734674269 761846677 392834751 815114009 394238508 94699408 423274865 495831750 335158121 62981481 470150153 234072736 559412546 203412739 660171337 240358761 553569587 467881947 684507115 525460873 475180301 905103621 407776884 740279974 118856007 806029792 616903359 907206626 961055976 303282552 547566057 372452709 639864703 94871668 779389190 106631580 150840082 234040749 981413234 79952689 812522789 387700767 422220855 120787825 520367242 611061551 386774248 481996082 36359038 150592434 390403569 530267081 855022540 672654129 62065615 603731445 19338575 294758979 312582990 244854410 400195253 111551411 386152422 344144426 404480328 576540297 732241752 988862220 646554796 600011425 997390318 60561389 504322741 111551864 528087875 481874065 973888625 261120981 813035000 614886111 700100608 588339121 496272646 759991623 16712906 306777846 642594792 601413080 100476236 756460504 985251469 627993554 369669673 912509960 239585205 202596376 409450990 280139361 657959422 285065197 248148765 805308402 179832439 552946673 533790243 784472990 410626751 129778294 328636585 239072179 989994658 375309009 29030117 406882032 92346437 585571259 466207293 211558888 733562185 414918378 354447844 982509913 316223821 154256631 152981041 128314118 530042224 524622139 469703487 569532286 8527810 645065887 513030285 729644138 115013154 337627966 225494416 329023622 381458697 291641814 866747177 302218429 121041163 741189362 162486405 327036405 99318756 639262792 770414011 707251572 674926081 3128504 403737506 97341433 476933084 583021734 322555443 766114363 973752782 589989114 925901186 849195309 218381386 103771075 940448932 185512388 212902755 524532971 163483524 690119012 392199803 289828427 564737011 476399247 364986686 674264379 86330963 368245424 859908254 941217432 270684818 522381709 77381617 670972844 798468910 488827249 434611047 249629831 235158030 794077769 509574114 448392773 993166465 204978073 52476953 259322487 954161326 823964497 896925375 148718705 938249841 387008678 761799646 116204673 860053191 180797683 472973135 328323514 864441700 680289639 817217059 941863162 648940170 710767665 838350458 385270099 602446297 693436446 757550176 667175928 7101243 947401678 466247617 382823256 349251315 302905085 685270368 611733164 553898938 801941989 673391765 789155319 242116505 894491396 132660087 175681293 123723166 83204522 241975677 745499151 906624460 839258534 536183887 216776504 337153028 613699415 911053759 242695201 896777116 911594673 782199186 11977133 723960199 539647127 641010431 358917572 984461402 990894909 714732589 478739847 603417893 876965252 473024019 611932648 548988364 384331774 772074999 68749594 917798499 731694058 399735150 173450071 279046294 67699156 585764439 485153327 21767287 244602529 77229761 534000809 196738521 747316659 207026776 412937922 24224560 71988248 320840645 83306321 954006646 638639921 167941849 744986603 707704630 401400839 761816947 730653066 927063204 8589283 140450139 943289484 682437531 46011482 516487812 1406489 339645778 417132072 279157698 891423264 706994247 522408937 673214248 517688743 900345363 281179979 501224913 300243194 964865120 646319726 811121776 19256000 869018312 908017308 65316352 378857645 702753431 657464783 728750036 277398616 482668976 180883522 657254390 850205964 51360191 97343777 44488916 113212200 251127593 107027998 117888379 288367767 809880602 775170927 994524503 63276863 451113695 139069154 552552297 168742382 771355500 684952530 337451591 66881175 893769279 508920197 578756083 291929220 809403276 159450269 222102359 59858038 70614088 478850490 316730087 925276643 327321367 324595892 124310061 262157525 845944097 6859790 177559970 807954141 858065119 221067190 797129300 818988339 430608894 49680505 981038701 295448300 584557069 917963052 540042982 357341649 485233882 470718453 674654078 291218000 315203255 606042106 365962795 597724524 170153345 1261771 97884245 389701475 286200529 638253689 789556111 865392958 85550105 764903647 945596628 687732446 106347149 995680033 165719271 375988967 756485329 412167380 735722112 764837447 404734907 701730169 467525277 980491836 542592008 969606543 784832548 359361938 363051220 175730289 879692552 837563047 328698062 315655122 615525942 181457820 869256173 221437031 738200161 409360623 878938946 451877618 272786855 438584753 971618325 313711047 13458067 373437655 128092461 837450702 623299340 124634798 113901215 907399829 172129536 119946574 976210558 405668076 657440444 742208619 844817267 669826859 302691439 744592008 630567403 611716337 262969070 949717700 597847247 175441775 482243005 973639300 739353934 841850532 736033547 656586266 499620219 589278470 518600355 352280636 792051688 219630145 770071397 429420841 638759829 560162810 500835437 763695064 20090184 406913004 499884795 470024710 606268136 952294960 600474139 874368095 716410742 180562532 956656662 383768157 540883482 174663774 607802240 226332811 344665685 676111390 173191736 643084227 680340979 641215854 104584775 181311326 275040477 673357155 345101594 816298526 177020104 746305688 983539211 866372685 174724250 228014532 531601999 844163679 898702516 426863365 760750258 601815002 139197577 424978139 37510999 730796945 362971185 805049216 25412550 133794387 914304733 228861259 973440547 120290600 632256842 647840816 496269940 76170827 565600059 834248077 976241817 14927957 792814429 523145147 53473648 252243141 456583357 205416123 844315277 499167607 186223039 619108838 283371840 58721555 995142993 571018082 442804721 511492720 880998314 375478831 911294322 62210515 100147998 332884376 831095826 843850787 687813845 51250810 6873398 418226865 826923322 300258812 67722600 242723501 367345426 430118355 187955877 760557987 224872275 236529145 795933541 803293630 791172670 50276258 224489974 866917153 926150087 552889206 142157106 408934020 636360415 877381631 951583990 715953665 130102515 933779786 671093644 611145161 912046148 558160125 186796343 59814829 636670977 510165364 776664455 93780334 488683798 7944522 497890518 746668849 696807518 997371099 846447574 720097696 618050418 629476426 739681472 561120048 316599046 168139732 783314420 368371759 15960919 906398007 824450259 98786392 442663329 886932600 72106518 77189509 701590917 220225971 451831286 838509284 957010838 219139460 848436140 109951246 911981323 319035328 149400930 153738454 659049041 956290837 421865862 699415332 209337652 55497659 387720961 728899427 992152644 395257337 934087171 43087005 112629557 118287687 857889228 307016155 174528515 302323443 778589107 956055356 113839458 198825775 675550774 311344615 207716273 926028687 24067266 118531237 921992065 358491113 887375661 488933361 489349313 336952807 993679745 296862878 668662569 222568533 724769477 664560703 543471133 784749800 331100647 775175921 277308231 224832253 636767633 933055628 872217200 567132130 725825227 360944655 367355589 648112320 109446294 403551733 250041236 577151860 11678767 305511300 343174547 126194363 974017574 378091898 958757633 851394215 356944140 356805848 357965349 536255439 198166866 771188505 138722284 6870335 718353156 346830414 348072869 872918853 253730184 467822290 437135560 499673027 725788108 881599922 104055795 854693509 634489424 770388874 211547012 264817770 691054805 178641720 243024772 764296976 21349707 413419859 115887315 953011690 184657842 600474113 3013713 974292170 326115244 853362946 805674756 573025096 575694105 134181704 922948071 558328334 486480363 395531161 5965226 575914569 105379957 945414137 646038326 898683750 419482894 357351411 489166222 289887277 314271385 73409776 766886164 368047904 766383203 927410930 442925797 490735742 714495999 657669455 649729807 16103911 603998201 192200038 160470926 120901355 630749527 586164697 382593951 572209117 361747581 397393271 71558761 242284318 563811159 544910141 42435241 993533801 740710154 808156763 127280105 833351312 915560465 964487141 609957109 363416191 895803696 320321133 159505725 249462225 315001883 419754250 823654758 141010114 289503740 651355962 490198154 244196768 656787895 117254884 399128467 174163562 52828536 540924422 500875131 595691691 345572497 424498669 89271972 548876537 366715674 822226860 613751470 422686582 692621338 8612196 612446145 69290059 763290477 235115575 448188366 251661638 429277317 912028882 335518874 328913088 319447933 386951313 380497954 726384013 222923120 717488485 508582610 520189214 752382567 139302974 433782330 127132260 434381445 570268339 466185213 502427199 439972148 876042928 979672118 372829923 944067880 97930038 922245918 260203770 625915689 647784990 183498029 265251058 845648946 440801655 33020674 778971701 295299372 507194524 342511978 418767439 646415663 231082334 628135948 556312982 127566363 552083316 422572943 3613897 832543481 121548732 785402061 301076038 575876926 274451927 649666924 726765559 421744876 418590623 557090485 698691246 403081335 650431153 837903651 3405534 154805001 152179581 981022194 150992501 208297527 752352217 185912941 983216502 424810285 320795790 152714128 954610727 196005328 810129537 960112945 341533796 461625261 259913322 99806668 521073782 649843793 421066633 855455387 942871697 998043672 845161498 180638206 384551781 441376270 468587170 737124762 964998544 991147721 284716072 193854422 762066177 485060599 834186956 480691486 166840082 523522283 402473478 610823888 448955636 705433371 229853570 159123265 104021229 680368004 237576771 388082638 949501775 214448260 492186350 556580398 890977569 47682567 400467688 914773659 289227603 482190138 834298794 551258345 234415509 232135444 42025365 273633869 422385691 502461160 999652843 67433896 517934615 466795021 887594625 556881973 911079696 113850648 356168656 719837170 552638872 797681049 865440770 580465688 503820645 577929612 85378350 321744274 372804760 812458499 613281190 123825105 287732258 316860813 821740486 489782549 576200512 246997515 31070259 37101273 249361397 743474491 965360665 151472908 142519254 160741139 18329108 376138814 971976014 731409601 133093551 452765040 52235213 328164692 579460090 445589416 744562803 210744345 148236453 771219291 764222987 338984000 16592355 470943426 589348584 456450739 257231826 980531590 379668573 531868514 643586420 936855944 735785672 121818194 36864114 330786595 145961254 523359988 151573474 608903036 534579567 851072562 566110342 870543590 237471287 220162960 316685824 63417339 72156024 169219210 84750328 366434166 247380634 991936283 862127038 584165683 163679793 719226509 449024300 663236503 705928430 689779429 337242489 335817186 111892970 21221634 769986259 798506519 377743292 375635523 852826691 103483790 203102161 812589241 903024274 577813965 237288115 76286493 261309792 396726830 783862385 924021524 835659758 858499612 905884669 383390853 732017742 993443040 204622740 951549740 762177098 850831845 954304518 810477412 468662567 481666338 995656113 771176983 229931688 622350833 181024737 557657120 215016200 62719099 955460245 187022313 93567414 62399365 556323585 597691468 997253554 3398954 623228713 648151289 12777574 76482688 118328719 219753038 610060404 892959632 763509019 778875371 690101147 409272118 290415054 439234908 610223079 818465422 758697927 369794086 575115743 450550587 542604300 774011004 610719281 747510458 384654111 485182071 926506954 22378289 60725471 406237451 832946147 631028396 288448731 390933290 709328730 319548433 480669664 634259986 704128788 794074422 177619232 700649492 840990679 28419375 379432007 346254275 688923170 848139819 469189174 608580342 873170896 879332973 208403999 254635029 74605885 80745546 429333277 806390208 933299867 813958899 68137829 180256924 923932374 306326730 607776121 905875904 607852855 607848563 335584169 779481686 142442418 351928730 642825614 679848501 80563135 46661343 885327380 929900856 792488505 496549386 453311199 192738974 69995616 438658480 680201155 60286538 570351249 153668528 6237670 459087449 491906635 194787890 203420648 502746030 937604771 656556528 154100965 134387724 59037894 149668501 651511450 439064774 805216619 732949854 654479252 15864614 281747818 148772575 953001859 411985013 426619469 133795255 193090470 365947523 564026388 608290151 522520988 746753162 624523496 365516754 967465036 957408306 426672142 115099156 804325555 365413656 825879432 787101443 582952419 359607020 552983587 590942287 412103239 971532862 858592456 839274829 856228433 584841 965809971 204302554 181931136 582673441 612815078 54114182 224681433 876076851 933476932 847358363 985854342 555377857 267712106 747718098 602528672 356777293 348581325 415414547 828883673 244798068 234566695 462553825 242776148 728157071 443982282 731201209 777961215 20514601 28162970 332428143 664111058 731087511 925085328 271183576 458408029 73400700 415935446 18848997 682893744 155696685 370773286 665024721 818105576 80237835 865255543 369292056 386984419 78307101 644379087 530751369 611754197 678784702 732647846 823579331 930976495 796423670 977425945 770147402 175701793 512234888 842562967 112521357 418264270 674683527 440059755 264023403 348173490 522737579 29127273 682886521 664174707 959053868 325386438 840409359 223406855 933652530 140829238 275091775 40609445 793068774 409573047 475520017 603117140 654966082 768920249 58635273 895051132 83477642 328320887 59271033 505289287 773123162 589716834 829077771 90617039 442495303 214766647 872304895 13508085 214202135 231683897 575919632 788491164 767743225 643323727 199596121 466994527 595946641 586302301 205808677 609355721 385831324 848691916 731951107 354160438 577647639 368268451 587753213 684058925 850906368 454005163 798732518 314249510 22187748 84826566 956014198 847252214 562165267 399479333 794795892 490356047 125104996 400043912 944802374 788648364 538747817 749990337 885522682 732633484 219164036 412657737 79067957 590796882 84029791 557069508 390369723 770875567 583127537 690371148 209221962 1670179 298576853 499029297 568421633 662851052 986827702 591221229 725792746 513861977 834753254 5368661 925302511 159026922 527431747 925735694 126758326 360565409 990425205 452648210 788831399 714768608 909488815 361597907 747973531 179137365 442991579 452452264 424046896 332064983 708334999 423817287 588152804 794195036 762171792 174876009 777788467 856421496 484822362 527168535 527732143 906732010 512819771 651123768 854469768 178591794 29246352 412666531 70941252 471056225 383989363 750280942 839437344 852675103 60366816 842170347 326027753 252672020 237075710 50734478 66880382 36995896 191684801 634212663 804663818 647583040 951858202 267067473 392687949 722090818 844434242 388598085 424172595 746392426 279009314 703148495 332452177 392495001 552773171 243829754 929597237 434794086 445326815 723992984 839565576 429252164 628159347 42421845 881047216 19594481 529738992 744220119 137615470 663716308 477106063 626002558 91272467 142473900 568628760 623009855 479473367 138125677 13871871 761523114 295977037 916161744 243480952 719801551 552065235 216652426 640634172 368066628 857172740 141944493 120811627 285929139 617359536 366824849 790967441 607733422 350820285 344180566 255832163 62193341 923758524 285368826 162561371 386320049 632027828 769115814 918511392 172473244 197588529 844261968 265324929 970345781 547086164 358395140 598023756 255318487 550393864 539887977 447714532 381679169 481577850 19045671 500412272 457540148 492823655 289944220 740034012 621179389 378098821 904796504 146493182 929435971 583849398 681204156 196108287 249237800 101017501 166211699 298526472 37628596 628250974 607569912 427140083 83504446 870401358 355336106 621769705 977310744 158825447 722467221 72453189 236599140 387451206 837548877 561385279 213145730 307979724 186995529 222581964 790045754 89647615 974328658 722206686 208906408 382431406 187674588 775905996 430848500 324634505 156057258 263329625 711930050 954854034 561833975 899000905 484887832 500795140 434782032 481184208 790583751 63894300 689520082 479717971 542507126 221942958 390211743 357850035 564269111 226651541 169262123 302167734 275885551 975270160 256697801 771477498 30030424 612954266 837310746 648640415 134826294 752374897 546012689 318990843 406399885 361737546 143927172 251328648 235587026 100380188 619576869 937120792 941276148 772350848 373638771 449853136 943356491 382256328 99156068 200453598 168289213 912643716 998375946 256981510 690256895 627325440 833496640 980329899 380369364 256936236 615879216 818138527 10974660 445280753 405860370 951983923 503989652 235752312 368025675 735533690 59541062 681238786 904607443 244760866 393868903 995525906 511565373 855182445 388510308 175823684 843884929 576614334 319164258 333225396 494142778 396154307 642369961 169370084 645270957 195089272 757727166 759734067 979314569 493311834 824933267 795984064 642092395 291199290 774189919 598647958 275546585 256053917 938480947 690654520 197365035 45477016 683698354 631118000 967837821 494779674 395802588 315537206 442539834 225144454 143631496 398176178 415289009 144605323 890312119 200155694 931291212 259907135 164111956 939079540 561175084 876051078 798720560 638687805 649476850 651493660 426238788 335871 732865792 544131032 405661346 824069443 991601819 687674037 699194379 576146614 736144321 427940633 662056523 517047297 699792283 458952036 445882981 673577418 153313481 428727391 579859974 393021202 129399360 73881470 65835431 561150318 26475470 108880441 10979521 909496405 793348143 947205077 184171333 9175397 468238866 204288031 313341505 486591623 33634308 274755496 694189511 617929152 649759363 232307136 816811988 799181133 75423973 959990479 793271197 42484336 657588315 389803841 231007088 233866842 545629786 163094429 580031075 407476564 89365210 140412491 677625798 744613408 381537017 267711227 324215018 952051837 930235990 922926132 657224960 388135785 560005143 322389277 111779908 807913795 744616073 157586556 498056353 992656335 840700108 13702679 298874368 580668773 59199889 689380146 262468967 376226399 200065244 926380623 180138698 812816934 634088171 5776175 470468561 118993073 737628519 267026658 143005348 709102114 242470976 877310472 848638925 277820330 551966717 510199180 461627808 688506848 749667906 578026153 848318395 139784482 400937466 650861857 100668810 942227229 899220255 614126283 534459074 934359937 639594908 879402662 447307320 348874405 554825435 870942335 87206723 881197239 522576588 877439221 130304873 803169862 164248514 143929118 417412419 486243284 563701532 327144917 208309530 184581336 104322493 728155761 453022836 534626961 117212588 871766462 847274910 828762828 450912866 671433969 722054346 247226395 816042883 855508402 506448682 696829872 822794695 178785011 700109487 855972858 313751432 538502196 322705790 370683091 553983098 169390356 848999179 910052336 507927388 643684152 842748731 652221047 587134005 402882166 835617457 582299035 723108282 935148820 551806993 751556525 460436313 396045193 459685639 338109077 950142552 728533484 215652821 757445361 48600666 142505131 184090009 719794260 674176298 567494581 330879536 562166793 340273063 547455926 459665358 837692054 87439952 528132638 699456759 750627640 955547918 578398948 189806701 985866940 491249869 523697946 361417071 895470598 183233071 683066078 561006695 679307379 211209643 232235897 739955499 171456590 181572218 807083218 417706841 254694056 272576498 748711780 86772033 365460215 297335525 79852532 105887933 191605388 21966371 744383154 412168139 447486519 669045928 71235924 295085816 577993833 752281530 246270471 767039044 258552781 695512201 447053109 916213410 314728317 531739962 986625945 715505618 521379230 125365425 68760210 150038289 400943909 993329014 542539201 16937033 84303319 851236514 558233269 713896268 343768020 739222324 300987540 832697580 629657917 644384476 262146628 217660680 71012690 851617286 421048972 139171870 366863913 953787210 571964403 899482366 292462705 968881440 890513390 875514445 675194860 579127659 212820777 834269445 309578002 605488411 29307159 224843089 522343236 900829730 42883477 802813058 412647688 68549349 780275555 426088682 635229877 813269472 748778184 5508523 423974894 281340096 242660372 348562587 931762767 301646635 253977148 672181975 185819351 435879606 184488681 96873326 105785479 256604873 674970412 852033565 688633497 171446101 260723830 95075214 373114770 699810448 602151482 340194520 733519915 285583836 389269765 187874323 772083968 636463062 396850364 122547064 518839667 56908983 603984491 102088610 937655257 15111171 226307640 862445173 752542718 328022383 848158940 388794925 557504854 560785890 981501341 888940521 515980272 587851567 703592713 731284575 191173919 619416818 641028581 913724598 829194338 37974006 562822986 65780675 714846998 248971532 889848023 57068909 70196069 636732761 57123645 20089229 456033309 377532260 417595075 132149803 262111295 117196750 803482710 736406504 981099352 141015216 227924295 729347488 458348091 378912171 160349004 588199333 944839639 653819225 934906417 187263490 58369895 333290627 482642375 504479720 563792002 630216708 65316358 534850392 929324008 669495983 152962535 328353892 347935249 874451030 173739874 710337738 690516849 651272911 409892191 151848309 428549741 986472737 995989943 404709654 387115357 82908985 678680565 335826221 501127083 882197009 201941400 404175802 480354414 813499339 901631255 787476262 178950268 762066453 697627701 667497708 766833261 958283045 424623784 920989357 710588207 546558626 143425667 543672784 107735631 678525615 881253149 249417791 696097380 633850316 191315130 904183388 476571942 344507694 591037786 618472614 13529480 34953044 800915608 297867184 795089822 926339695 639848721 677345408 548096140 96248430 427219933 997901532 945241852 415169651 609743157 160264169 630753006 384595002 801762185 448056425 630527657 534887425 602399461 207345494 649506805 925287243 517226903 258573935 407797570 472006443 526616874 234615584 679643066 22458795 7295444 364522019 768243925 988300745 536810345 242991702 641487365 304705329 452638729 997112037 219260301 656714234 529911573 281282310 577067959 459104789 969709180 676394581 305985791 479486122 208530922 225551118 905322326 694656978 237746852 927890090 388973312 186554617 16331058 335509021 691291695 843994702 358173515 679457091 596476432 284423321 426228118 349341959 917886762 543886341 311058598 775325771 685609871 547520825 58246261 93067417 687106802 429200042 632089111 420860157 145807352 374921368 294556632 612489370 610565450 840817840 434521743 315060494 373901304 39655780 358922393 937179619 25843432 49605018 347323736 830234898 546169910 970825044 235993544 326976625 142356652 274594925 486755654 674655401 234996962 739733679 397473728 840538467 794154549 160120135 52192092 952811083 621582146 106549525 175373760 145626398 185125690 108806141 657638244 375917653 462285840 387777770 511159341 785890158 178922358 358889059 547418046 786162038 799202714 74419732 61626907 449338428 733806585 883495517 535095287 767713856 31141419 517433523 166665738 158887410 409525167 921040608 250516883 511279379 566786965 655870476 200765012 342284509 192628033 441084851 433903829 266225712 848474962 802123106 458612823 595339136 100981315 683918049 590551241 737582279 990416530 789713189 818197742 865758666 112566191 216140138 592639265 504814443 208173972 485770517 967265213 791149912 676743436 168994870 411151740 568665902 826691125 398773290 610806873 916161029 683374196 756298081 543405107 623164461 521704445 964816539 701887281 940125719 321889859 387953426 417909028 887378786 459017142 954103678 125532010 962707376 636301680 193535263 215235638 356285064 26763350 969046255 674322223 870789788 204455365 235498646 539359190 385909703 358220644 54660400 153125876 710747660 271871438 962491588 35936931 8704436 688438398 178041780 237833033 442161820 258649045 724927292 784318802 456787188 117134159 449561561 545530855 759763449 870209142 318327919 637365204 216516688 108450913 230145464 427762019 253418262 250395787 169149697 701069015 301708650 245619802 104883575 925523445 702812630 457544158 431982243 830398140 373739367 402213824 523940146 16885127 840101726 896937466 230586976 140664712 433370682 349544776 740824573 230076146 857689689 102531112 425613245 951234832 923541277 977966186 293256236 867518859 120535643 482989198 940373486 974841059 309094821 410152326 508783081 729939323 828445130 490174179 534771875 565860277 839364810 87955718 303638607 566229058 510050339 756487056 371794727 284522428 32620367 486683565 865337789 743423022 596499743 967668829 851475850 763282509 115885908 965386139 531525947 122168658 403093792 344578462 681130639 434245015 816156831 734945542 404185991 613408592 438666400 730765574 39979615 995105693 418378778 246450737 36154840 645649896 65146317 410512951 899477304 96161723 409696352 228063475 6653398 453321747 81312414 809578000 430891649 734518110 67221311 442631505 787550841 665412940 231067566 125388987 851450798 729381050 493562204 349535989 503706263 374151758 929902918 118412235 576322139 922883434 927506255 234743947 423079410 10136792 947170094 980196507 785251612 916088870 476395704 673267641 558253105 160332596 935764403 621180686 47627014 650886595 648713619 404321882 650692810 152214088 141739552 288848172 782195038 157804705 380272315 749007306 322205947 158761752 442585216 606205800 286528108 501409099 542929977 176520399 115648483 83342771 279017902 197000097 216372679 934623511 166201542 931618538 922787172 738613350 863240450 539410715 607666174 498622151 880530153 453770266 922716724 407929911 779497318 24611743 849441234 656320701 890099640 824303853 807152069 996251645 367939166 788676413 555886234 406557147 566075961 633143642 53419691 270205644 446116949 273502989 905609197 288717575 404547253 326433214 335637902 105907039 780569655 138822283 930050772 751510024 122958453 105999485 280061235 689177735 383908888 321153822 891475914 954911850 98778546 876418354 152697173 988813367 232424277 191359252 549489166 578775100 138976800 856120947 342706769 788102730 437466353 95765169 156198832 785578856 534941895 670849611 863970953 150163384 714831997 466530716 418930830 87598033 443150534 845534607 973000603 182228487 229790747 499065998 360453488 964648076 986418030 684842996 307819896 134916697 953918276 424332067 693922099 113926977 407348980 127163613 710105007 129996399 791220570 396273503 957920739 410561862 937566608 336363921 300792434 186615647 889843707 577550393 305409906 377369535 570302462 122389744 833380631 189327407 315993845 549012556 381114684 307409573 777694974 76550152 723073107 321313279 339525784 145308590 717513352 908038964 160085320 447988653 991312067 225544318 800531277 767392446 476581152 469750579 420668676 353493058 948678199 171613918 606595669 344065600 810258492 94613558 984178219 540076282 627721727 100060115 843308863 45121117 603087742 48918588 615738804 179654765 269010929 148373004 568634967 898189646 863436401 914708099 86221228 197954424 708343197 324743813 458661889 915794833 458303359 350701042 636259484 530650093 971667808 215252651 456795183 349247582 255204965 901767946 512921700 655296380 181069149 43110323 546066128 489849966 100388197 976926986 392689244 415473615 824494260 387380831 513584814 619334420 761169678 17335346 845012061 91690037 663364996 107315472 568207530 859206591 230066988 388973441 730086159 974025191 523409826 197232356 847488297 489189540 769021170 939150893 581009805 169547674 126634689 104787517 996427241 210514894 294255880 828882171 784832379 869289144 934144064 409362137 52411481 401245096 534203239 745380472 416457644 311557063 995908559 964037981 221645797 962042220 311267209 411970177 350031025 201697797 27217711 710622911 466814152 505226431 859123392 312483900 93022934 497120538 589031918 597812508 836401098 570412216 491349855 842602555 237423363 589970898 467895625 525596949 748937580 644189019 572186 831184597 611157600 600952685 587651587 134174013 304310994 976777611 841092967 401949629 732447201 393791953 937808993 79885926 683470691 104817910 87323167 195232278 868420925 844609558 365079948 475017390 71258385 519657375 202384499 804898871 107599337 300604113 645578979 692406362 102523376 885365746 463282743 666934545 101183368 143855034 410109590 528350188 958077566 402737630 141148056 822634754 337774072 960474227 283769936 578120299 695283764 672187680 389480175 855998426 903994547 33704348 169021743 432423643 512708881 958220730 505112069 305125133 50856015 103656610 889395355 106495593 173482343 472055703 167067812 299316997 871968217 907848781 189415888 888824873 487531906 232597460 327765418 991415749 157972363 469623774 476827484 805314889 432152806 416532988 66701429 399680442 242738547 693380151 978050589 361415641 492864464 818000944 413509180 17403712 801207536 862943032 307370327 834261977 106017330 853058361 647311658 544481393 828809452 877812910 355497045 594446443 563914598 305139855 108225548 515538078 247619871 641346648 862256929 98814676 704366972 492003886 111515280 433142140 765050941 727524041 657590823 500262840 415274235 149262130 341963234 704008253 843064217 980332539 287166311 577339902 558132380 645678748 374354014 360849551 872357806 97296743 542897463 353346950 647089920 448412781 402145506 356514083 64599395 139166798 607935644 939344810 20302782 57753854 929544625 919562724 62481584 648197180 138792266 195916061 486724714 722908775 667352362 774931056 981574138 776436700 105337949 745425893 193020084 726708952 298776897 345255048 657121766 459124863 342324341 181545421 242296686 176901475 783902485 310992474 834620520 47615943 346638041 524211699 797745808 518778526 471751882 282603146 499758053 937676093 292475951 619076255 622212196 792103675 158376471 230516907 373451123 827890360 372915923 50609716 891664580 145321368 94459103 199614790 81350854 422318324 159888058 352987711 79353490 685914205 991640460 151648616 302671828 822540755 423544746 672127161 674898985 832133916 723868953 522077517 973457333 5729904 580659969 915886878 978147975 149596441 352734268 308145874 268566502 82743274 517716890 661671568 736172870 868513220 150585843 854621734 444888638 556735489 362651295 558580178 404934584 307828763 901652891 703264210 409727508 128661361 231091324 788851612 666756779 247963591 683375340 624327725 66521259 435423156 672469054 866681063 210473475 252876655 283061338 164463274 862708483 262143153 605565695 15991857 647021337 332380212 169836191 556849764 688215079 998118303 363141409 972990488 710509897 686227449 931790051 929330991 692717010 806866234 877806440 660133889 215925858 593502874 38506581 94403690 525071793 36056200 215100181 382239320 212284776 91022660 758078111 640470787 342154482 240705609 962364798 379253165 741287724 252431805 936064874 381754594 300421920 929419491 953212774 340579242 254734408 33176031 670258004 907248993 676034017 211564703 939465116 278958354 818338596 14139091 654762700 713631652 804743930 894022546 675198612 333325336 394562536 468297578 676589089 948094214 876762306 693727434 864222462 917851716 25174309 40112440 606308713 954981306 897492406 801750103 251667391 91102507 833726837 842757560 261312129 767415528 315717769 220932565 221860968 690665329 168127518 49646007 267709868 933052823 785402713 340443120 957288522 120956390 911434499 492912623 846217880 24663492 441941301 590327326 760602774 964325177 397863081 921819448 904963542 804420424 922701952 360981314 779281439 382349771 18360437 612348422 533623199 571356306 574655605 926145620 210893686 601949643 844514638 499083809 846285839 514215465 458842515 210298256 286261413 996842732 597937135 242613290 85169169 93745588 942322545 562565260 634319769 159060703 955399167 679576393 259611841 345653744 788768728 622100675 740443359 82843757 615265919 421407304 259998403 462992012 570863957 522847268 197770031 719415753 853778105 151670779 103147729 859286265 709945883 969022714 2119135 834644672 629987620 9160440 133816747 890973038 398542790 372306676 187773638 452786035 850277035 164111181 820387770 400918581 380577808 752772656 636650269 11570468 244869445 864190159 583857968 400278522 108526073 535969949 970669398 207475164 690078809 375724020 318642797 727438818 365327432 447515559 248714562 123207964 429114719 671761532 471992935 217051113 679331764 302089226 211942885 362987656 409904233 803708136 950516887 294430839 146203488 532991574 414633967 961666470 291672766 804985740 312278381 593911254 548988491 932240481 780779372 7472341 348860877 894359155 203504337 940366666 182659864 771499055 261731271 970370099 830403857 748615105 974350311 278214601 490826108 226269075 57792819 743105666 930537426 635817274 859609922 630783408 45587542 694902917 213617142 697407605 342878031 983842136 579397827 455566434 641157092 430203924 187905572 116306747 634253489 652832127 441349816 123324877 69650145 876850454 586392460 888616898 854649379 785423012 668738585 852547046 157723245 917839862 654207799 135794421 505976413 231075344 165859482 176428916 98119377 25050787 653418338 104638561 375976538 747905442 648348365 463329287 670983604 175181239 685097401 832564048 909274169 182535022 335109445 816931736 2916784 205976262 999249067 685424507 89904231 40996820 245540141 764818870 727618953 730492074 515250029 744869236 580065361 725527811 927758500 908513702 638831493 570401231 623188222 172789459 448466370 690996993 466249332 141512384 341281022 309823045 306390904 667307568 932684657 593215552 116441834 580040760 960518 339875158 189210613 643292697 206970588 170312926 37925210 242904926 998721377 184499945 550097568 885446893 590286785 325894627 194067488 629844606 157353389 398417733 190781046 343475142 816321345 441146669 722665213 903064613 287109320 881225652 806479248 668605673 11660212 57552260 371320540 367602740 244499350 242596932 704727246 575365012 766826550 978451189 860679490 439248388 913320692 87790418 131229868 728093646 131605502 622743808 765172802 482148098 471028614 515299561 823446796 265462633 657034833 585368864 763423829 986695582 388007776 672370283 779047466 621719367 843951422 640976486 127273829 116323274 875332109 631242845 57292935 160375392 235780105 675575682 239277339 236926744 576825923 269666102 814159094 433352658 933350289 720758728 778845892 388910446 479217389 478790494 290107383 782122263 308334399 136539092 957887269 465480560 825390675 506925241 442992456 4639689 759021653 73313878 175934375 462099340 427126392 804008760 878199244 389861147 430114741 462658669 228676884 640505155 852651508 102077084 680507983 857953065 837641586 646666514 148339276 551825345 494277741 146753677 506854720 550317818 900092481 212262351 130780974 199649401 695807746 715780163 997993207 75358843 735960154 664972570 220756899 959904765 258611383 182077136 450778547 503313147 520457758 854714977 674940406 760241533 750854811 58427920 104451326 851786320 729971562 683835097 67011864 116263513 26238656 329433588 161171616 613820114 877970130 437935031 685678 296996053 799404895 884128558 392211098 651436359 19345057 861579045 71859201 90425091 75271946 405070 141206256 329229244 71147160 400708888 751373905 918320738 768978384 76747465 546231224 710901865 899346331 391604419 456172131 594243357 252551431 646447924 396766007 489187789 775163815 444653363 635120329 376894118 891613864 864294277 235136541 258721996 254284771 868177979 888751544 145151590 404533733 203924840 858746788 91933121 13296164 565916523 301362624 348253528 202495213 352372422 647114476 82947239 106638769 407603258 622709687 448510991 551243892 493833339 349796704 576515703 612512271 566813947 39705679 761216143 7857083 76934642 526974688 945261210 69624427 221717190 194305788 756509143 82628728 885106809 900180582 850256310 102174835 144892975 201760638 649119638 684834480 124809462 434628681 973058521 695100187 788209182 903824521 426354617 90866008 106698088 661517805 362726835 175308091 768638459 878893656 861773044 554171009 978034114 221480649 599916848 531267416 473750781 982947868 252580869 659562154 712739040 40481261 66080548 10828959 448309764 803592487 326020992 441340233 791200570 852181063 560304014 93937280 187949686 645950811 263922093 746193602 896784233 504446399 680997632 160134966 806151263 312374237 338709811 992571109 573054246 43187040 691722409 446928089 832958640 956979650 924835273 640091544 329336220 993509735 147420868 510769506 188839685 915587711 134720620 602327480 56831079 25368338 188575134 612475300 186272996 725858039 642324161 56347037 718464579 280759011 970957109 930213995 164210170 647253137 429347120 752576875 33504524 197588887 265226718 768583055 11446052 676264299 95440161 132039016 899407757 900537087 110438139 814491177 857162337 958844429 401109033 137687470 632487100 554087766 165168125 402078777 428447299 858460842 105890909 848072146 909842188 294129556 894071355 717662120 140252340 332647426 622770687 629251768 538142697 690196931 319804427 361601974 805741947 198125569 864562680 521007167 317397304 758915184 523203627 144076221 864737323 258765531 103230213 881199839 833972311 217917286 110139163 722695074 400083253 945320333 719648729 764919006 696658431 223129905 3277786 880446781 836746935 279313038 769823838 807036223 847190657 580170298 367973677 78661046 489293903 113150005 759478770 410804222 38332578 373833358 93620101 939343144 666693326 131565293 832009865 63951113 991236092 148943725 356725303 945838948 61415588 267278197 330438918 888737833 538822688 980588274 116158798 603889364 803615224 367309834 879189844 94069980 823269436 795243012 653390346 780230804 665395782 668328711 579882989 232379929 100287690 572393455 711167941 877184138 376379594 60863603 443929796 521450919 504639437 993314335 101815902 959617124 499780176 256108813 919751150 895121270 451130050 763168390 578389931 770688241 83842850 256107641 256717948 882483817 490907286 119120237 836059928 237370120 772131012 317389583 228654460 119925037 236409072 371202143 621628056 624046302 583116589 490487199 469518808 948578133 591686362 434582261 115697192 642741901 788335813 557738639 898433162 740208754 597002379 960067350 201406025 631825251 855165886 696867933 239822099 582919877 500628069 872584966 130741571 121948963 803200755 815056582 102677245 554685840 236726844 816911826 375624230 403911236 638943990 163406312 529619161 179388216 241864589 925864458 772361037 979952963 610374684 409583123 514139536 875886394 661801192 636266967 875883275 992751404 995629637 929040804 454528698 354831952 391232460 918478173 520645190 653318629 91896939 45301803 214785942 125964770 5592819 735771942 205128663 17371458 927672102 794332875 629421653 69663043 852460235 570213466 772332645 633323976 423075915 235419406 986519939 253178777 659337133 375682825 755008451 30533968 869235395 88480427 852521772 873178495 428345619 783566066 156740640 277681772 741337127 416415312 419369501 213919772 879620974 35575420 183004784 116197671 972604131 690506565 889251568 443855884 639720491 79345294 623474400 457713692 70066239 175672685 983875588 733526904 356222508 489215231 961101732 629053891 866464096 746046918 83283852 435259982 878029656 398966223 601777458 256687255 9270723 551013748 695091929 320149243 787524662 108544780 153027733 495734901 242202766 452496073 156783699 635816924 917248422 818289973 851393376 596305417 397037980 65396882 272284412 792157890 413773468 787167677 17148629 300990636 714262265 985638812 951160978 701883358 754060790 32355563 289266292 820500868 167334681 361500615 695926820 574087236 154498028 163173570 724659983 736693935 718956672 316838202 816940150 607905228 115464253 352698257 339643828 149368286 346625893 308815533 451748436 973148817 865401335 926812930 986129336 343911979 252151588 6341683 917785320 161284139 126438601 506596550 4012392 196581210 731762043 441599625 182454592 354579449 516936348 104304624 365139833 54027813 722425865 239211040 614325457 55769343 447124583 979831623 691475034 320639990 130460873 369466470 925646931 887572532 280025856 725431573 102667521 708883701 506001102 383980831 660453394 271907420 34147810 207712545 386577075 542633030 805971 514248421 957566486 310807762 439343178 988979914 197182726 455598568 744063215 836386861 310694354 864503894 265112213 29460562 305146049 289334211 676518841 325200073 943453259 109029638 797386783 479700973 161002137 62672907 549112779 653654482 804265461 451642248 163442733 745914417 100353683 769405393 256155732 590889866 386128896 829176974 68137451 718849366 74542486 600470088 998415868 656554507 313253578 925982918 319763533 342811954 32850602 390451793 191411368 396361349 555925880 857302745 252052783 215063781 525495868 922222715 766361656 434211388 99982998 503588028 758845249 600329195 934794428 215731631 280256071 939704161 247740034 871016473 538053905 857814407 618563297 514951494 311112628 107071532 254600289 898848415 995719508 902252889 608810832 658123201 301915263 10884773 99961879 391813974 596890090 727333298 169684951 699254823 197714412 767110719 980584618 942922741 334045969 6466019 1634215 487881622 337969155 720797823 735079368 265687709 502063740 17489720 151594020 205818009 679921530 677028768 930381469 950239276 120337958 288878198 179409958 807518336 648668861 780216092 779639075 165007287 384121557 948809540 266897146 489471462 796235178 530118402 893557750 135615098 706218654 552100319 842053358 683918726 67958836 183827145 329185866 916276489 187129250 626935734 311778522 691219923 245207837 32543244 683292894 500078252 7315061 10940947 308631975 851115294 321216314 648336647 582419186 647007048 113654564 920179918 438454111 163290654 8303973 15131946 406548434 438990412 560005571 635944396 36720708 317293304 106796821 809841551 106313172 34256898 438253543 379837312 801026937 651175614 668222199 149088737 536025872 173185022 582581922 100566894 341948862 931584465 798087997 891725923 52567678 144689175 603696544 970711398 278765343 221167305 183189215 671694033 503588700 45440478 381353606 886919998 622354230 385898080 950957536 302322092 367372470 396692077 847557028 442180744 177521043 164755671 914995362 386456271 106525869 872504034 63969395 46498477 967905474 752543835 898879756 903203413 43395855 288417322 376202397 302218399 72055996 80147493 883156221 685429768 380833335 113627499 834677145 654713261 124108290 756461937 875390214 231000895 232061975 262319946 101277647 63486159 313406167 892271357 379325619 174280099 502770537 250410002 167827544 79635099 344600608 31233370 438575638 372907963 854725111 464640093 155838180 173411328 554009794 330663695 515783477 387050834 716560821 201056969 764175078 907168105 980405179 715150322 737921653 970910934 220915024 527355874 97812029 740757763 265813469 788913261 850379620 774599682 548628395 271592476 748882593 612896804 656207141 267565034 933246002 227300044 118459886 991239411 39888453 316200002 917879690 738288174 826316956 131984863 961799396 636106302 161112062 15821732 91294100 56099692 589277865 867044915 264727963 839501415 992294426 624964380 295685941 328729981 42837112 113929665 996220923 596357799 632729304 236765158 280953597 368247837 581335560 978123439 931710849 252125771 731991031 569576653 290195395 735837481 60045517 749440177 813633476 343196979 760448865 10602953 236353994 958937511 946200361 950601401 502159465 919523852 972254900 523965004 26873567 422440060 241340952 198199676 834953526 828154166 738377937 553111977 998403790 155982135 176897740 864837070 191909885 461162185 537391970 663995631 261851955 48135874 435466090 543972926 915101901 440908104 549030670 265953083 59353577 748874832 559418849 196153813 541386469 969362407 743407944 684449234 428576333 358458205 203409677 522624659 163568786 314417213 497129298 270223892 291485152 143252054 140101021 551416402 316943266 701032343 233038634 959955619 347005988 822709330 242717133 608066457 877670525 649427076 345605035 859383827 291491456 378028455 487007779 634694697 163799786 939920019 212574821 787511486 924819424 719743724 278908174 245484058 920717037 212407369 488265391 887601997 183880102 917215160 733281976 205768471 56697503 620414141 149686816 792161830 139433718 452408450 377383180 662156230 959361162 681579739 89156705 591119861 794441316 59698170 878173040 712147159 903999429 186230195 715492891 992086750 209689024 571604493 729226522 690985070 872102995 702044033 584404623 443514532 822172824 508413404 390802889 209076107 579891244 499068962 279799322 735759609 100502418 625238128 31088246 727618817 257050873 635106057 362760959 470094492 948112512 120387726 47002477 969789136 622620687 230100061 539660996 499883266 297278252 654659170 73654369 18492404 677400053 299751731 475783258 184147824 967481566 276482146 843744546 407820361 863789551 428400166 852685323 282208819 452835123 359158321 92410285 677369785 116157024 545948744 559936476 16332941 636552307 202852265 128091521 833069908 54679931 798311173 9115219 727699736 37093473 221758416 92571675 649270628 95688963 859423933 383352935 398752319 56335090 895645055 737171639 384615357 378628938 66772244 112124926 934092818 274682395 105502634 163658770 887094084 211775861 70614978 600950933 146377403 587593966 101329025 66103532 571409079 628263972 17062858 537489364 993260517 171502458 288487510 494255946 104586736 592214212 472267731 350163296 371712248 564584056 760369544 981179670 124630418 852691951 677083748 354902059 18953173 789987206 321717926 986902150 736559293 8038072 253243364 324238951 371656982 836600773 796252894 916600726 608752257 546120199 518395523 741891564 99745875 290871314 865692293 949126343 689395008 734440731 728138245 689897129 842075760 18099671 955435803 680514043 995322679 193821890 592023833 109362428 849304047 210775040 556579346 999473499 595696232 303801344 617436787 99505597 480751936 783125305 830384392 771019236 134666571 568525888 493260429 648554631 531881272 651337690 169435021 860056412 844296280 566986666 665040350 134594936 593918274 340646304 442827080 443530185 4879454 475457938 650220967 13487520 436734416 184540260 519558513 311005430 148576128 904100302 650935499 996537901 510140007 37083906 438346981 467889137 229996841 126286405 240756566 844793760 141392053 632180476 380057343 839710754 723066479 460330275 222931681 8547622 458086294 336470531 158174544 498124935 952128487 429937133 78835847 198793962 711678895 46534170 144053804 886561815 232152847 704303996 943327727 637066712 754586822 113767707 866859284 649142609 844680169 859928152 127631171 885105549 181833325 161506191 389266517 131012717 609682006 409171660 562816725 103096936 389330561 537679407 855818498 761934171 289096816 907840025 259122198 241177070 352048287 119493351 582588266 888938305 44400500 660472991 801303228 257748159 245103332 420498579 892494266 87582830 518010702 432055578 80311044 541333427 195582208 245900360 945894068 680908283 611713979 575963595 142056258 593177239 446444608 867632976 131606073 52764247 886864646 791612781 99569881 432927169 963425082 939765923 769972746 449809233 233373722 46132774 489054392 268616768 783218140 560723074 788529098 416979278 361014118 100784276 625746283 579663659 185161666 788781116 511419832 788689723 396509548 497686992 227171794 734295094 736831149 814805219 500515159 650964982 862088915 607840925 270745235 11586197 707681916 175128650 172195427 372399831 948695682 701657831 644769958 769300310 725708535 22978805 294271123 23267012 742257811 861792267 229614010 732123798 766148742 297781838 133305890 470264300 9789390 746717710 305538090 722188355 7137857 967097543 599467252 591705741 268846144 523939710 458959683 517481974 812814349 268156399 647632929 613583283 164716757 451972245 554762721 336705102 711161464 157644019 287776871 124669806 828724596 47587394 450002613 475795849 610087700 504685892 74186997 131964597 110255835 394528224 372114486 695824937 725608933 369070508 637011486 908450834 400418177 796854063 274911578 78704343 455788831 631160430 397362068 807978850 75902534 927206988 25055175 505324221 973406911 327128418 958665043 692274937 895915356 957745973 314099520 559477525 897611410 966658949 184938019 566877466 473016388 265872201 271970395 512947204 333090207 487417644 25154283 986442455 862403544 13006582 293628164 640366575 292554339 563812475 473423748 980290424 216295285 469718196 307559561 121038899 318808470 282681996 818090718 773602713 268832758 293988753 872587462 507036412 889242487 675695644 144366211 590677606 9385192 580626963 868555758 552759396 876232961 422970980 411785976 902036056 897820502 20822117 387994048 737423503 740085262 825846223 683074697 136670176 528274017 995730942 896360224 225556260 457250653 386581953 430466876 783466170 330889968 589229953 480777717 848565254 333444134 787794052 43503595 727600132 614271643 926572368 978920443 51017728 636992426 822965934 772447440 125107446 170134149 426062529 519236803 752588038 982648626 720229757 616271298 345071237 636026584 81188590 232438029 932080337 207746329 619229041 821388413 126505869 26057689 453454100 820789876 67719139 370982668 799847951 307980835 8387407 344067805 885450052 986676255 781320523 930046260 671174167 934208039 344243665 750021084 536064803 965216456 950073105 578868967 639381850 82347024 880245101 355809470 833285485 58185322 954186583 380557403 134795712 431632825 410564652 496205582 343360062 161123767 990333251 668637606 119969238 373381851 211109607 26206462 420556127 762863207 830154869 797163973 357691191 843344794 631253538 893929813 631317604 223566135 359116924 470369847 912514713 444274061 335583513 907305995 606354267 942702716 719342805 148424720 252522720 916542175 715248773 153412527 726534878 396938807 10843506 53449513 518314940 519417183 501251576 38691618 664063534 249788961 308151575 821743898 919659198 839692178 897898384 796171696 823173200 538830280 545222967 603905985 853113465 956492930 799688987 883909610 516770904 85293627 919925592 493748081 613102723 635816335 367050391 216348095 871496258 930833288 598327435 107541200 245577181 391215035 507836716 511168489 967252463 337974593 609810678 969819563 779870987 519476144 53097017 190060403 43882508 284705050 625977983 990933071 240179111 548506181 837789553 935597595 264510459 142561477 897226413 312963472 98428591 366043009 445010387 339599464 288817884 150521238 549136165 433802289 682453787 409080367 697744858 958120748 400447032 696998494 930760215 684002904 329511561 678229425 885646326 105930289 12653538 784963682 13717740 760954582 254981292 752084553 187022578 848868857 301883186 489871009 68734808 846100165 96025711 785489468 747125588 504631158 361906859 714607333 924401451 174201736 372141711 300173182 501787631 342779395 955575263 797244754 454028910 242709383 391938099 167645173 743404198 298386339 821425270 908215232 436040436 697734248 229003132 908657714 859467167 181591072 119195326 924763669 273313789 748744571 953038259 968148489 502213596 753917328 764136127 922887832 323497253 45418638 888062515 712057966 930654728 636353265 132619483 146329012 949358297 471814830 673866849 578560618 723635366 558335206 972605282 963626724 551023089 944377801 624864566 240440805 888633878 909352804 309175323 749420849 926348287 833100448 704730725 533854565 322674205 502097726 512242274 1583700 583201994 39146215 480203921 804592151 402149437 841165087 933302874 957354527 17785770 625781467 485268491 268525960 187713206 794405292 781290761 388998485 18801606 69837294 692263673 631171773 105098992 244707751 953862656 970825050 645380565 270985548 38895721 772495447 739666404 869496288 681143220 105188970 378422614 429834597 650238154 736769829 369904553 683361779 750784368 695621037 96433143 152080657 962623901 875521130 785160280 715318787 443122264 835271513 985869652 392709710 384169651 239797209 319118578 923553778 141881055 127548919 219077600 544731363 905169030 513170706 390691814 43240009 202316060 881006703 683616884 970750218 430026698 603214839 928677987 594817882 185619396 496406135 195989091 780538373 701908347 567986289 771087829 36696136 789283284 119471041 954781540 348929000 433833918 2742436 785814109 335129081 624984576 272768986 30304404 230971436 471890581 595538394 71928413 495844721 793995892 416392288 288077607 940806914 717435690 588152747 3195391 832352458 817009480 28515142 23546087 428770966 416119177 173652432 308582926 402425093 131897941 42870626 34945531 976340413 999418970 353258332 50922951 487703605 265744756 634080627 692558374 867261804 393721861 174697558 639003365 947345364 215864906 496592889 151563482 939228740 37005634 355187119 603964004 830287260 752628226 134377365 665678269 309489678 643656456 939612716 116624883 210256360 929777348 524256020 822766802 65815341 455829571 216322566 213633010 517725764 324530524 427602234 626266475 162977854 153445659 355992460 671060009 9473337 614124399 372323901 912848702 623007361 747128058 580653821 564901913 880541995 75252693 723996671 943513587 642321419 650611687 803888210 577665426 644569052 126364613 781990345 408389601 842808958 168925196 262415147 456788593 834849027 708750636 761377577 590290842 487321526 397395294 813707990 319502879 421417665 667961930 316059616 157235105 842286404 830737393 91647884 28658131 789702074 698224653 448831382 187183025 315092988 696267945 31890964 259025326 571146142 250455408 935803299 791175769 84639376 528745704 491861852 323163113 921534553 375098234 259133862 821105164 458667052 241634593 455662756 768846849 18910304 508385478 762763019 5440580 218188003 822167440 854127955 231255187 240543975 437153520 477399345 513728574 980385705 806833058 357358048 788505922 752909107 486153828 665273086 61393567 156718495 727613851 174166251 576524350 215345467 434417503 798831999 597636211 522111416 403079678 320087729 336229502 886742801 912222823 341663685 753027432 690894304 892483361 786197949 386519498 131522345 401269823 913124628 185465900 932551491 474977337 390329892 9267116 110963877 441573378 697068687 994712811 715696604 333788189 483060515 251182580 419094905 749233565 479406740 132909370 974243827 252194483 692261176 639310005 895273514 638897166 587909728 864553519 456148709 901926579 126246843 438487417 803170470 517316456 408313084 919509772 434820874 720376447 202273281 640046106 857606746 817299292 978381964 553898196 200411552 504054663 830011528 570243373 943548849 394802778 207423413 937225744 838023095 20811372 531521139 603428270 569459321 296887126 547688724 132165926 83433972 18014000 563423446 108235130 652588573 817306313 242805673 778129432 668448401 712280068 47676706 179429925 537484260 54733786 730538596 37040589 661362328 264926503 739481499 821267095 764097981 152923020 136955160 32010724 512952820 817539762 253056986 832096658 218852236 826060848 3381955 637401068 901175188 173453074 224289879 448211745 287902650 571068695 33300084 277065483 73429329 153866723 185350542 278021874 908750397 334028995 614398470 818810660 260217341 507166622 161361943 688588956 902171523 606873283 67318714 593748987 139055942 621517476 849466189 571815122 754335451 432660250 996819309 731423516 266223290 573177584 755097641 644019773 351789563 465902022 663333146 636922479 404447670 263863434 187826362 305544652 823114318 551503263 406848788 418903800 431499606 15428901 125221032 318790694 39456279 85641975 233416855 503984431 872496191 812971938 394582875 771272986 745979110 853977985 165583049 159903106 518488930 494826104 979868986 241547286 324148617 944342464 286555923 343652680 701404107 107240274 722169341 530349895 658423953 794580281 636594352 784405643 84179931 607027361 398044224 592977741 202044283 779575100 602898088 253391708 573281809 324812342 538822120 801776925 665549067 517774507 114552866 53108672 470135163 936844260 871783937 989523325 745563851 191404078 203891902 935971633 350202656 672765952 48933018 897975451 116466439 314596617 522678872 262762411 42059579 122304230 842313103 301697564 868096818 23817878 597614826 381651696 822283495 930884783 458708303 84857362 650107730 342020192 652431008 659224390 145680521 662837757 812320014 98261787 770899497 633702647 24885573 185090389 899202491 354624554 298783742 533824801 650532558 381481641 998081622 119514157 563663454 462013482 412667293 602918124 151883118 304835199 283171360 256818827 86427534 214056258 345611101 257890817 310701523 148756091 331720411 182956533 774592204 112298556 32265399 982618300 849311699 466511403 519285854 444200193 950820257 399829836 685938933 204581374 881540149 740437934 22848507 701804528 769463190 141906325 674745261 291385035 526703952 77660510 236271143 561636214 990948249 313191166 729685827 648220711 410095647 791520841 656731516 42854901 334674090 969332394 591469215 550377227 989815735 909923203 198742394 856914341 829900787 719126265 90876600 585967653 432631162 468265448 563055761 864304199 478672605 423778591 949611194 195934427 771928872 429189059 606948652 824552277 135170952 466682652 912771127 66132436 282963751 561482545 629026201 790345662 878847298 744361003 432448143 573034249 593955916 44077190 5423754 972212715 338141284 390192866 301879510 728847319 929382997 793069494 294332439 478036304 466460085 756073028 93380165 895789161 167180618 777529369 955882900 533069751 580389012 780336639 693850599 749057188 160912904 123723749 304803552 830119697 734351554 889028739 865833508 440669831 935850451 828523766 185716901 267357445 172865294 500491006 74173110 804352917 166851125 309866678 503239730 553697002 156237828 886574482 322615879 157696015 251581192 720264371 997245051 736109614 472142639 989462558 404559387 821435731 962008073 363301958 910910666 412912067 676042976 752821298 275670411 25126445 7186313 353603607 131543418 24417482 171039805 936832336 534832527 432272830 363434291 754244294 546270301 900260604 458363194 880679806 487630425 24386841 898577061 355511721 518756534 86304480 558128417 796157411 998747919 807955323 906849243 332525705 821348364 706586680 784117707 885941007 186398997 664673875 731067552 209333000 476805732 715120065 712024584 479709835 255741629 551074724 120497847 736736100 746001794 837917335 777511785 863904088 906014114 493567381 298532774 687397114 218769826 410258360 880974176 184789232 73697858 948847491 207591597 910813063 320010208 418329277 8950552 617822726 316570395 315816024 20708033 856602972 258232535 929254920 135381967 660148944 184505565 299634944 770248394 548769020 240878468 320084490 72323715 955473062 317389821 752698655 716806912 262367256 426019708 434187647 177069698 222759079 114121431 653856175 739949904 676596435 199278914 487415125 369448781 655800035 739709492 165073320 326441987 115136092 365332451 467997715 479896545 998593136 63363075 869702406 467540952 112751309 252743643 23720945 367256294 949923307 167831147 858170122 948624095 473988310 553709173 209037281 377824043 488251049 175105483 735365717 585622452 977856289 787835811 605885239 759757706 796562783 553510516 433571712 529834119 664172841 887825582 667494127 17087438 649523923 396959866 222149609 211763686 13864775 990011212 489263399 14354100 592517595 583987945 786061107 823116584 993140474 85563207 730230593 266619496 531791380 294168374 306869478 108762919 866974950 523556203 839287495 747588536 406087934 396953522 839140967 709666401 33448263 617148510 9181433 439467107 437117565 294961762 41109172 289628825 927267973 169057546 831964494 427574584 930681833 173212925 352512072 835553297 540066308 571587176 254640966 199188369 498095433 60600730 467008353 263231758 376787339 261918514 192441578 266162053 567986139 336969823 3914669 786551972 111905494 793677903 856991837 655015965 168311582 595396362 61417172 16813715 328269059 330333875 48410327 742655497 142269287 195863003 525046202 214368724 583600568 313877357 121765399 914841269 827958255 309226887 956097516 536867451 120353089 159162127 832850110 528579796 542345330 272040762 487339775 397301335 22066826 127422322 904917050 483801383 352359919 292067335 982236055 159346143 705890842 216524555 596161386 381063671 53109439 929142260 66027879 180261504 725651311 105490035 634280984 521723230 85107263 204412908 344470010 148745416 686963126 118443032 289550362 647144516 205721163 950176977 72240168 358385140 163301576 883202774 702184164 843378831 548839191 622240166 54342910 661691619 327306629 161003402 296405660 538052811 595106041 948297294 550293406 708105017 15748796 831620413 748239092 798451226 952901072 258770319 684921104 101837936 905242072 105154197 412355717 133765007 355676040 831051164 730233962 249457223 18510990 343339878 935820131 379499724 9009938 447197683 506219670 323683654 428693748 266482984 587342917 207933397 118996516 435644235 868711724 426886048 135940023 500559370 304617451 237015915 725216 71915049 630243758 120442487 423876362 349332293 830949357 319181831 540984958 354627647 332886026 237638411 641161276 633144692 267409535 317428507 442471540 500161500 701790510 211318812 711105946 235989570 781233498 167009702 805433390 993060060 802986385 279511703 330506905 392822226 347632386 808232239 750530343 917657191 246897906 940203108 111357115 472263771 44332754 125786558 509980350 986656650 250645708 994819178 462521042 266869150 58184540 860269498 177516443 439596034 955824025 425738613 209665352 990654255 56727477 251057187 466943901 80171063 539912226 782317107 961462918 903352488 224016311 999120152 226115801 964630882 94272525 437103908 454950939 528733408 631730403 393856881 735688671 69555984 176850654 876330844 112118256 883424429 476952476 467207348 145452652 939356400 197254355 934671386 472148086 214208249 967661026 288598723 862527671 916516146 298442490 960470472 805546916 978527466 676920394 333471084 704678540 447445569 565489498 490524603 881157273 499790206 659015208 499827178 768630432 702643374 355266137 950938910 738055476 441974302 876462555 682853862 452453678 61128642 679683280 737682221 738513558 924615342 398821522 819893966 835872250 954066139 637314102 304082855 835852648 386356291 490965548 230881662 380217227 661672835 977050642 457735503 623333123 438135908 971862600 113376644 231863023 979317885 329635653 820212134 150475758 10920147 894262131 625780375 542159982 278158008 652158986 432078449 356323922 822674509 852899084 579107286 797539187 294881872 927802596 590448707 498436669 727522783 367309801 549974025 111818528 863816748 879669005 270973953 445727281 361993348 714290011 36585699 659103974 831378165 13554127 661485071 244068268 273419176 284485924 791418406 16103578 964012598 676330976 168002369 569069445 389551363 13271760 610939216 61791208 131788664 425636137 546600438 781786121 159647995 292114569 567374885 440753203 707355039 668376384 240187488 337248701 744650206 525538632 236207724 770857596 640095054 717840221 509609597 583271123 277274644 591194483 739305721 880592847 9464728 630166668 977081175 143804047 511878505 458243489 213915825 196183376 357403898 963488875 970579033 382662335 899149403 506118193 332143087 124446936 108790114 278365143 957231709 798647911 22395950 908431263 631441994 763348757 546558668 966587436 888250144 139671018 687855211 230571228 780051168 782659638 349807081 964085935 571313967 949089983 405636822 459137206 398104522 863336535 593006752 898141103 376576932 408419574 633313548 166642101 645926179 934459956 188771792 630041236 958856822 798236332 539166098 44644399 686138759 409432750 678417545 956834612 102329352 103621459 980942461 463887832 306447936 770770985 521021209 176615300 299880724 778710703 566643334 978838451 583169950 630719499 311366351 276388403 226637981 849109632 818414625 18814959 523637347 625132882 772743304 737635326 675743067 795843077 736096873 605839938 29090149 325313220 461506280 931326981 578557751 647308135 530780036 255378932 72732978 94989005 556021643 697372530 403091986 496108426 77835682 44233609 498345386 304334334 392116865 769102725 297220718 668359691 718299677 206319149 384489911 430291070 637792479 874902185 42500090 986158274 987285921 614059917 624985648 722543873 227570975 933621365 783469 704197133 472256527 529719238 855991469 933871458 508551162 534128451 886596531 573931027 538711894 195244503 711545988 672772306 464732093 576463104 579749294 358646493 949814461 49031895 463955803 848192791 864662396 258592584 791271806 862568299 227698933 766762469 834798510 177742238 89438353 632426275 398266508 397477203 28674405 856544344 84637718 517936471 50035810 515786568 572542910 214149226 326343389 991811500 36633037 398440440 23794767 42493140 74828153 371001198 710754167 393530980 896726311 949297305 762376582 150748098 893728373 652975550 227244056 138544609 27723816 494829475 282447459 344044504 326834341 831201077 92129298 303806331 737771459 883083205 197646207 390169211 16393399 26522474 691267571 8975594 508596720 45970653 560864852 592804369 606666353 680590448 602503984 435616340 225727455 374337487 659290504 535215321 508552030 822371388 544267379 384627823 978145621 621557315 586537139 899275355 969611166 78045426 936080342 978908877 451666421 730801848 277739132 885287741 774426935 70814977 622380386 425433175 750122914 360291793 166707157 618049609 414309756 637332205 69338780 583297136 688394327 640363441 900390455 565114286 486625185 488360306 860553421 134658183 309351873 859522105 273258806 166229604 604790524 820440065 42766390 101079496 81926017 840623482 242860666 261514543 331336983 490981814 8937793 998567086 685034144 820604288 295574747 364426252 282939364 206528978 556558304 587815440 931025300 486203333 860465501 743036193 87896380 642486410 979672513 649972436 113493402 59427294 104639713 348602647 569856548 606969541 867889456 303379953 26597988 33937089 626340378 315096149 768788704 421945876 987624059 722044899 618351509 771370500 158780241 461871947 36092213 673388009 875887939 367752258 946646375 37365735 405156503 12878086 930500828 279336123 629613122 215119544 338274836 32005511 848554671 629124152 130532990 596809261 418394903 962149489 983179819 955460421 477698155 81865979 73161412 110329033 189080613 840384306 667898181 931849415 243535152 173355416 923083514 734878897 666185605 157694304 464605937 566255013 92584827 671089762 323195447 10201388 583628636 109581554 994006688 603535812 714735436 778861019 281012927 334959549 847803596 509242231 153217286 738171387 644313791 281942979 100679591 956695749 730917094 433292845 580653471 21204945 542103084 914056376 591592314 321379382 36189808 205996188 203319734 898921098 988441703 86165783 685303511 647728602 354702117 864061520 465345733 875248309 567073204 539945708 573041849 75259512 336999644 281124364 918989030 326920187 360978362 673227042 347251134 785988011 167854447 525207675 458770247 97862602 560132952 933716100 663043652 927915249 599431841 316227803 711084611 197658554 693888481 470054474 690441083 889763947 375943152 906127519 279744049 470753908 523467412 240781174 684003746 117401318 259059608 808287102 958894260 907527399 956588066 35946621 430159276 509913020 229642641 837760641 240823071 843729933 138649805 402721714 139739023 478964591 68169059 597517055 557782378 94718722 998016319 146731196 496952945 667779674 957561116 604801820 813071191 597326678 101944965 370152196 619777143 551182821 555609928 239734239 107345300 309343196 996425067 866270947 744866203 819164096 58188812 158002343 981508992 776463064 277033290 603065444 724988724 339593072 861545888 215586325 44253153 542875558 902025027 81612765 736894599 441534354 962621799 453142279 344688205 657438225 941071142 285644604 648080110 324456124 847325313 760421272 815178633 452532470 193551742 370459832 923619523 285429595 497031051 236255701 415907597 542344302 151035297 447731294 579627587 928023215 626647159 970862276 745674559 229383571 521906665 293044041 584955875 443483069 766590315 701494274 934559078 159282917 524330076 611361864 63351796 236862173 733681853 350879964 580765958 778565207 589694650 944589854 223348615 603932610 788049626 301899983 50374500 709707057 717945960 482111887 568491087 868949435 471980071 897246895 779015596 628044401 63169981 892259054 661569098 820596021 658293352 565219169 770974031 710852085 276127347 415131922 487520971 6240950 532740574 424463955 526981537 292886880 251817517 189367235 819537343 913474372 696729625 329822207 329654142 882973735 100337113 947742117 476849123 15072747 671682585 586585949 457411151 239605749 947262282 835573377 209467690 805001896 544561138 244410697 93317578 976061635 519513604 369738177 77795020 695611201 600304760 844051387 734576720 182702037 793254803 65778532 988153810 26333445 796624896 305908079 844159875 504558661 402457502 566994803 436269185 180201173 382336094 481097493 493203528 161199609 110738038 462875212 534426487 693498644 916890392 774194571 495983744 494421319 89903047 240255956 665560660 738357666 944997847 141670567 478745096 185765192 342981547 517004251 288156757 294289515 481756642 446880256 217352544 704178958 678290304 861464448 484541427 477736225 539543900 555485095 522609071 188585392 365847692 691896283 212995747 237314124 381075951 519529808 693561469 371331208 961701245 538091246 210992439 310154937 625359357 692386152 798399728 663055875 616439788 996724634 589160522 98187716 653078073 130400652 166471157 699041722 905073551 190893477 190810398 296667063 20658613 553115762 877412203 956677134 104554270 999427664 137546299 597330959 698295226 202141714 585593311 263663035 34359147 47670944 198775478 774451341 687760353 976681693 203789093 309974482 102742748 361060332 34214708 455349281 821719965 965367042 264932388 627806589 968673761 507024315 283882545 873600673 128501888 798254881 883929993 40139320 124085711 961569004 769163940 379721293 520595791 688458564 782416368 701492019 659842475 1848253 73468745 769423488 676436849 757711594 324192852 635530475 938292059 49150594 950687989 264123263 636766482 331124211 879700230 712609432 268934726 825096885 566197096 138421708 756673855 879133186 648955630 195106077 789468641 151715825 392578095 257965537 720755847 322817664 597198069 970530747 597495957 602685840 466461547 510830585 979810190 302917409 276284383 273733045 805966696 360064793 593782131 442434232 106017962 193128214 30963576 247862951 209376666 67379318 434986149 43853863 28092068 973727584 464987753 917015509 671123105 692656163 282775301 766202345 725101844 969466965 782001768 931774169 699543551 807243881 442734343 385847075 956681193 602697867 930621674 410551563 835519701 76392158 403083908 977307356 96924612 590651781 319531150 421736010 377832322 325082422 35211493 87274664 163320599 350362229 308058718 375700677 318003232 341326797 385602530 477188591 717645991 704420589 165565691 347242731 979625721 370808856 562390139 463431810 639597862 289342262 329311048 8436329 307255231 327434517 677096199 606948718 153622929 813304395 145307385 388160815 590556044 280023379 823619855 628029996 177963505 931306971 985352848 934280596 918874129 275182982 825342213 316599747 416950905 422637442 250016741 417063930 445400523 345445087 721885675 652715291 359546299 59926641 851940607 556023486 322007589 830785323 212919301 738361704 933306522 400089380 504480114 84559971 758886053 860409817 522545671 282069802 403940688 405983474 75314865 595194445 623873192 626983159 787532237 119637701 295244216 888032260 184881432 438859527 93412366 834945738 66004215 346517924 917180844 916975422 962713854 23138681 677804356 301920896 242950427 565601096 106601854 850879484 89940938 417440185 362083583 509696487 827444132 438988486 637091808 724258067 397293034 816830234 817550543 518643730 249671619 527973701 747432531 810575001 23809749 463276392 137496711 949310909 247452801 243602981 520004525 312297263 84029361 942709590 207879897 751751133 175007780 176590810 644317580 631826421 172426626 193231494 593061880 926442943 146275871 507563103 728422687 888524651 643709425 982896273 74244818 179380047 438292880 507007482 453677546 913505637 149137257 55606589 867328687 938982333 666792488 760313778 984536415 580742792 746397974 459313836 633857663 603014318 468720546 132392033 288681844 602355631 163713201 462634069 683241256 661093517 499880559 10319968 885164063 199748706 698376610 748883426 534937331 679149034 347723243 546117139 723184063 845513161 595301315 932577024 854898222 949302655 287441459 630409996 487330235 954093457 490299083 706726438 374362625 403463977 535737709 195957362 628402713 124599790 851016701 168469073 605824051 266866986 961476087 333592613 551347204 377621947 599698866 813809409 270867088 709805025 802590441 995126001 271255287 462851868 462338759 438719476 695988802 403539978 532997542 862676683 324691803 523216477 448697317 828040398 228375523 266582501 150080325 413321893 740057421 271725663 415446458 670130836 92263340 294731873 982946180 581854926 701321144 487021291 459244396 453311472 898970385 779815854 916755554 698611779 826257055 290286272 475705644 207808391 381892908 606747311 708000274 118676065 551982651 128452771 833593854 421598282 660085042 972911659 47568416 25572052 5608070 329973532 52826639 735932166 306386307 516782468 718653135 854057615 275661412 120919279 386904539 370784844 200634898 977990869 354753633 895913746 521439526 303807162 974498771 26175236 69332045 971781266 589632336 499260416 226848187 156937999 265733055 805468153 844570961 172156248 563733929 35044567 365651204 331991699 400763746 353125939 332008062 119565255 760691174 655388800 675576336 464577426 353484783 798138025 229740037 593157077 905682978 78723363 856671999 212060944 658481305 664806628 890922831 64191936 789985447 831851366 957689246 528511833 280421418 899058216 691699875 22539562 951810973 131462049 400285582 733987945 424890427 488491608 923851997 300660460 322337385 770427950 886988103 286558875 680953378 130807985 524617706 275779507 620442147 113807715 395738067 640598621 893352050 431679385 37955494 700021452 739378267 617611071 875379532 319987252 648086755 810581731 460758858 661633968 368467480 486325448 895150903 807891530 279436448 110939437 306489659 933333198 159118522 573558662 413757392 253100523 817412458 526453373 743025459 400986047 970718676 185734133 736336794 918476248 255464440 332671117 5705986 125582063 149172967 57506846 132518054 550654015 860507361 106362739 255820995 295834517 166964097 933048057 434767285 888132093 199781748 696587266 657613287 260582547 985415467 208263300 384802339 859969005 883911435 455144526 50094165 873868858 628655386 143852820 438053805 134902048 513021939 136152227 705338590 464125995 372748462 63395692 983314086 310996208 753451145 878924121 530614050 569511782 486755867 196187787 392022869 5279271 533047511 942083067 358574295 718677855 986108823 469776278 762318757 17298478 826074425 409071250 470088707 85797510 797363416 897670898 828815128 437407302 107628032 143963528 704210239 611889921 393929232 429296145 903413060 93027387 651529476 721151121 841860755 540421871 663255807 983513108 419254135 861640892 163613759 547010266 572540037 352362697 313925346 250486289 605895446 168666088 20047611 917874418 903935576 994288641 3912818 182414697 361917589 749770349 888536357 354021153 705006432 10559177 576953414 835824344 872954404 404896974 863884810 286018258 317169890 172881464 455064475 923937425 117747201 287352876 583768305 59454490 297023214 816955261 164862230 286288382 503767331 149889004 777466780 199390166 556111004 897576959 601235006 89876268 593263253 616820517 920732050 321932854 14600060 495669755 84793828 439781824 570520490 434297871 35894427 25037158 182661912 231695061 517600186 91229935 785167927 379556653 304098052 4755013 454462829 721641986 127616192 762045337 595417068 451928146 68330844 629587073 574656335 64048119 613081868 741520605 398318051 460280562 724350902 382627221 990977031 171916756 722873347 253988440 978306114 291673134 312537849 788398069 486779312 966392339 469327831 581370365 1838279 95867453 337788909 743821914 785781755 171803991 779573367 353288577 762785372 990449013 474093579 99997721 850874012 452812283 738084646 91306304 85410187 541528850 634142005 658899013 201636408 514517913 833110118 879287005 242287569 79899865 344969071 355974811 173874387 837750729 554780136 423199198 914699252 703122274 565445096 247696376 634106432 835439508 620558462 708998041 627584572 899533676 123035495 372265753 654209100 956520256 613400219 542721949 309967083 967563097 49361640 541390186 674026612 132309888 269504691 912951816 522975269 982029309 633081012 930058907 631782588 728880556 751405680 973277770 961739177 989568162 519803696 624987068 131714323 363067152 344211958 560331598 591408697 615616348 914666725 292305734 876581386 76695782 423660039 551687980 788879995 637492744 232255728 713292675 817500763 586952736 235537980 265784052 136699654 784970945 663387863 130964777 677138680 657368069 698047651 619990859 847876756 995739573 155790919 451767840 932829494 115053320 158020086 746471040 873562667 235794499 957078267 341991002 122660144 614482045 282163153 287715442 803434687 959222449 367417661 411639302 622414978 667617182 689447862 452593611 551568132 830562074 245254736 879346842 512844760 927989871 878597722 291670850 799013860 577112175 190485068 964633118 743573549 953850377 414827403 657933865 613010739 990776669 666846439 179526067 632230650 412626440 739522097 575789256 506479129 273593081 122971146 8785948 579852735 654766108 41589540 155690029 172146946 733226703 796378473 725648262 596404275 473867423 970823639 426270663 518713542 602691252 651288566 275502240 96622408 655606253 244061742 978702158 536580296 842498585 515710232 704159440 461106560 455781987 874112030 816793352 188581133 679257955 788198739 819787450 210502866 764062747 910277963 516586123 161948920 438819830 121902199 946774112 472746094 453249971 230454396 971620988 246739692 993098893 452832426 646580215 796901200 882204033 829755610 812824914 428536910 546744351 759705886 325175463 724132295 455556352 888574714 720880113 429490548 298100715 678630095 265924145 645912425 514264565 761129206 841530019 784151584 637382678 789881311 795895905 799117297 229318633 570311608 320725672 276859068 712022320 124338312 658925121 108216555 967122174 162019240 125320537 107716367 217067548 381011336 402041313 389987643 163648476 246476583 664090293 922125355 1812684 797724461 548713702 436734234 20837656 113349307 535572867 314097519 950739723 972322330 551788614 770302039 608179241 334496946 576721613 475726976 245971952 58453976 458148311 804302542 254739492 419013794 296443143 889988310 188412480 160940793 774654622 317532705 704072447 387942291 425103491 60586056 457540501 175315796 117653741 899800818 358897300 352116493 814703596 597869086 946654529 812330696 340982711 676864833 333477554 762116602 953425776 753758771 314027933 852138545 430750670 86019428 994054732 956393905 982320769 578494214 705218513 680739672 550785771 544725945 64683158 317563783 59697254 188874776 946112027 251114779 492578384 527534155 709289264 151556682 746424636 25572825 121261705 610474847 719660224 995282602 139016944 586869863 293345735 314817689 38843436 28692006 501874564 452011112 563046931 152294606 433642366 714820308 93254583 521190912 841932103 75132954 765248355 775336307 493241801 923372143 605511197 961440683 550683497 992452909 39527443 234324500 399617558 634463369 290499126 222337063 591163119 631536384 843148834 422084897 256248017 417617369 83702423 333945182 160324611 11370034 522481296 608397331 366515483 296050125 198576027 141634570 280699947 221149261 319479785 233125997 907326694 400574568 609716283 860337717 113843723 908611152 680591911 110553646 734056735 274681773 421592144 426120864 243300419 63178088 914119443 721499316 261061668 263273968 455268320 253732829 519924594 98406250 303771546 601196980 818045435 154123583 316919070 973427993 356825962 263053118 233680507 562563761 574745315 913380479 318715999 31820954 488593394 314694723 18132539 727514020 259238883 150440619 194713566 520570556 236548452 296666119 163309105 987368212 590534863 613425785 883028128 553647897 856468959 72823470 615497704 40402068 459827563 736542012 616521537 210354957 388242078 112725691 232410506 580025712 163522566 213087251 768510951 118721760 467360118 133983007 382703187 727045376 933148356 21876805 459457788 551702863 604842180 334626775 144748595 738115981 430393234 27454021 159420576 686110065 74690162 246240702 831827713 822318356 643105384 669030823 711455703 346294144 261597229 79678665 219039355 83385135 192827862 608234354 677486550 351384756 208767580 263175387 274715548 679331894 69418993 178739051 470836769 994244477 681941733 663424641 570887852 684509346 259656511 649659901 204273984 247272243 294805848 262723444 530870133 681638804 602234758 422478501 306998465 959970812 781021739 927400523 492922398 500036466 903621236 130484748 302148494 879178126 128714967 918088315 281678548 631531647 698181156 162981883 589340055 670092477 261526309 779331785 189016686 665005654 434750322 792106229 985202772 352907716 690522305 702217650 358800912 800600398 220945508 2659663 66772873 746642810 50824748 551077564 618381057 781262250 125649957 155441701 687895055 143217666 779139956 458300711 449006671 142070576 368051841 896738943 514378180 481372085 693593062 510165056 965849932 953311932 718252358 391433364 85883221 420571319 229028197 87403910 341720105 87240551 788761673 61302475 78408401 129376130 881119734 119636090 422438661 943090024 624771517 642059686 444546556 996362517 37662899 438784614 290262700 509022070 664133053 197626998 173308403 832163444 675707753 598293288 827409989 140040181 988743298 589101592 970543229 20891081 930232936 587188570 255851218 471895391 59162901 118692405 621579016 331110554 934216689 441725371 817748106 527986144 938541401 907710652 847505529 364471702 266036742 125851849 153065837 327548519 724688745 203894380 664602325 899847570 974755094 461202458 363044506 563173916 916648272 244624942 732303400 442116496 378673283 113486713 138508118 929373540 897876584 603363945 191622456 336664813 209712170 290908612 855718795 629987894 328002349 506924835 636989121 490270443 86565530 62238088 1939283 305235447 303831209 1946438 345191530 36169733 844934437 74719234 929905304 504231765 509047691 964267937 4040691 68604129 200379701 326816642 673508612 305313768 116415795 604101139 251952466 278655064 689456189 162300981 940266062 482937539 147190135 772712291 328737255 660677552 682855071 828361490 447725154 993400965 599537759 438056013 684588611 626891956 911596241 334792475 709949875 338602603 461327835 524050610 156186273 189272699 970016004 419293818 898905204 936290832 848687802 760190110 11345631 608590901 896636810 986740873 291259145 117326320 419304837 11726190 769804135 46271139 942784504 680305028 319955041 33224034 725126292 856687669 142426435 490862923 626410331 712073818 129688547 148493006 651866976 439232424 432045706 394562229 309339562 437617214 841902282 347582071 339982286 717458692 71264245 840124148 832324286 568999425 863171109 407478739 535150354 221290814 597163243 686566070 98337215 21240434 999624728 219043701 668746293 29183066 363543583 48949051 460850827 891227127 377840381 360740186 783742726 919095345 125267374 393326992 706303248 960737363 405832950 416784709 131186250 493907316 724003681 630157465 222991190 652691205 254021768 750678197 55712245 552389635 828210867 25179349 237286339 123275946 574827443 61075070 114315323 579168284 131892507 395093383 445682817 531164202 472297969 550794097 811887855 432152424 480894857 229144930 282825412 325187693 336007803 698915955 243385357 57642936 393453350 295529651 266064944 410875486 968252366 383641789 614554910 396739804 668969610 35763652 726020886 600597471 268915169 195326529 722919170 638442408 825326342 228644238 208684878 640467650 470562105 852442414 439104503 38159332 496898901 631972857 460220119 975695096 323807652 247031052 235865391 665327557 141578391 584577832 375027703 99145096 839105161 965526189 857912972 689111432 204191435 919634746 397730636 467478478 527583266 183071318 943556777 728483542 295719413 145397166 557958897 188173998 155500051 250505721 709122302 875349307 897167140 37964533 934866788 217128806 592647154 968683805 286311054 230937202 441039217 55455694 155446350 196324873 535095098 943089740 59306109 855475957 874341917 992768104 516948858 965268373 296281488 461392895 418513641 38068569 235451839 433254480 334203480 972356060 39542614 455223818 131810052 935249470 547230438 453398404 576310314 2456719 833664176 591353564 865269428 435173648 883463223 808957702 822036373 895216861 547896287 301731182 987303629 362413663 75985593 717820734 428742037 436566191 165098427 862463916 307991634 97046296 288282602 994881777 960973893 836607243 385904787 784509240 23218432 44293008 202018448 188573449 643784504 757571288 909408490 982712192 639771392 990265052 976202392 8293464 796681308 353801494 785208333 515590471 104729808 463452871 960979533 436149907 226589103 123620832 600167640 70806021 556352751 256700557 755168125 188580744 191217956 997834914 630676912 679466156 886037552 879626046 559709241 331239981 661484412 675388491 430802414 473417053 768480457 145593841 348659455 428462942 917462123 465641377 427668374 501854331 684068223 654781377 825812877 476814605 152355662 196689587 359885570 330608661 505290647 672013079 188092147 290378198 811551719 203777060 446079892 586539713 177331845 313454865 721169903 453268841 92922681 135566718 119867978 793003491 250124903 647786486 765245462 778711882 963663138 547618435 305543229 469994506 667137048 257529187 981666445 278010290 700219744 230589490 426387338 903287590 695434423 533004811 132694711 742235683 901920223 137531354 702186009 367700405 235778362 292212600 241995285 668150524 585499452 67009457 267728973 186436889 742453240 736344717 719770257 429806322 683735919 934416570 579563829 773648957 882813645 914049503 932432587 950873959 303449361 299757466 622059895 989574494 247404301 928039489 267595771 482341076 467234600 159275798 723568975 121016722 390461111 338759023 365946452 142600030 644434701 264055050 459065806 350178470 332104899 168414439 124880216 180390831 392420386 146274051 143325758 914533412 54697346 754317828 552234005 350162417 698887327 717734350 721021097 159370236 289806390 281510096 48560715 766123358 659745509 63329231 474936208 577205295 614334729 389099444 257672603 345372817 270809298 121810675 434168304 176772854 160524249 838918561 953097093 431985333 555430049 942069074 998507650 955003786 512612877 308451589 330144208 363613603 898811159 616233184 261696032 480656524 304807772 46491381 348054040 81940876 102289834 840927414 636308159 298125711 59701812 226926044 841907002 532270463 675307333 850446200 131404285 204771141 293440440 763713660 957812928 259319000 922953012 604852131 288998982 47225625 678625733 97808323 795926767 142311951 131977369 425873556 764283010 820387063 602298423 327396693 66100227 110691 771855274 986783307 162218219 760027365 353248534 656875872 750840100 8636859 972497607 329387724 479329458 647021391 686269378 514547845 452067499 946561562 33206109 75801637 558029010 514095431 721809877 389592140 263008043 99611340 451599822 4942159 485935431 417182219 772874607 729711735 587120072 544669108 931495638 726484663 772491781 592958513 393967511 437321818 463756422 983265577 407376072 700738355 157150856 867405152 160742306 932977458 29568216 138144259 396381151 469999800 937252856 843416541 481848949 340000476 670036312 836862761 17710865 197350941 982272210 869228676 668600284 848261011 467238227 55721546 871387900 588761326 928384968 550336590 625186456 959319721 744731271 381022611 966287895 591671306 34296595 166684788 727942116 963228731 298202146 494168658 67852562 351459629 123602158 988591148 840936816 520227834 485178498 196178578 826656276 224434110 262394968 272710950 96310826 430212372 354297152 243643190 373611643 569621606 481463485 556589463 808717960 435532171 759259899 358851309 996457684 65104789 194896 446769793 51285422 767079004 292866196 134192070 811412555 261465767 314636984 357282847 595593001 61985024 540509205 152481203 188182723 53048911 231332373 670383763 684272928 65243743 594215527 536094436 489537734 24189116 529374290 236047054 27418034 468677279 476178577 502907394 661764257 200886635 551080309 629234853 184212930 455421762 710236122 932305861 732960299 758259264 650362480 166477348 61097372 440201334 118320159 591525038 801613878 558389646 579289747 270317725 377013476 282869422 731000206 488948093 969200916 542254020 354021411 814718193 998189597 938301163 467755195 220367773 551661704 868114384 611861372 996012027 942302828 946314823 312338243 485279940 780514542 907776677 393983302 589889912 296938538 807031383 431399299 12451811 241926028 560445619 251471569 714620497 529125427 754019512 567487586 187287966 725795880 724355832 703298640 635541577 207135412 272803192 768232779 869062004 738120543 752634797 730217923 629199372 413469400 652369857 10441915 943307476 318377456 623143360 966592539 346283387 145964853 706910498 376492657 481727538 479541253 239351073 8874519 208627479 978066533 531184044 617990165 158983624 783149748 65930116 506527623 503101137 618605789 125744565 268452119 753724541 270613430 264914958 491132510 530999856 820465105 814238597 1519570 493770063 245841343 493496875 442062859 84736027 918256537 613521257 840691973 695848960 983311379 787060605 721583303 191523602 119480894 650504645 214585419 641458455 905306306 977162123 486030497 215736031 75640680 357615288 583008757 448179190 229779510 191334995 547300217 824712979 746577508 717763723 709946580 694071664 29906986 41195514 597715151 741961647 435187159 961254984 909971630 103047203 395944256 403759133 806747753 318517515 622078836 237568399 662829542 627334030 703293100 922966565 888296288 42715097 906498181 59159769 773363112 207137010 182055214 162120467 108742422 252293791 850977293 423687234 531243819 901862173 814956682 718119155 593353500 567889548 247565548 449151946 276755345 968891477 718011350 550782059 397878836 131808441 986587416 196907867 377232694 881412068 836063959 293757000 414181585 558766334 972153194 783982010 341213743 342601036 783820793 446540341 895074741 905486726 824842238 856035800 967954815 352565627 669556815 650295348 356077702 296793289 165255070 167326257 691187680 822204890 146404316 671155220 127549663 218286115 662132907 792729578 531815055 345021363 750350602 115665482 234808051 850005843 512521333 969549687 595474831 487958723 73638497 491389897 315934110 988523395 477356873 86262954 606849356 519664548 960309482 640635199 970871538 222777051 154046425 762639242 296951860 778894887 927867783 505986926 573499256 813245183 398727226 133998059 248792685 864412119 65018021 66296194 528819616 459808497 72005011 637391148 653855419 708306826 421372705 499688611 149762131 547282866 75769939 814162826 702096305 771399574 966857996 60477743 651798774 384327057 845049198 630755943 890141083 323602260 686447382 938914983 497676718 791460916 240324640 766808294 771298235 727332581 710327646 678389235 203777699 149689165 272622720 992245966 795810636 275603669 640019320 206411748 914972653 162007467 956332012 918229540 970411820 58565992 754601668 886316931 267646730 174835320 352020555 54023379 124762430 513681331 139522274 683191072 649372404 88701049 551774066 144154313 718209713 88957881 419549351 532672442 622391263 142065524 459981619 564113441 904220181 146322870 977638093 659558567 994916280 78257748 76145281 637535967 388809816 451025521 322777212 564092708 20613254 23571732 174907964 734694905 281846394 143953978 150467431 491548450 40866425 650591071 477274360 367053685 935176362 24176222 869222346 729284338 615857930 836064184 276120620 873121871 465283336 206078484 555446997 560525285 263613926 578740525 45853538 836217013 796971007 134046892 456134897 9337602 700923579 477209532 293588582 748710641 418019015 349237109 558591286 841335076 648279133 66901295 396680262 776518529 73536651 699919756 447263977 228502518 130660960 260676638 488577112 316805171 924238845 857056519 434118483 207373649 561930375 842286764 513103672 168129441 48399792 573121257 43384228 923380256 600567159 439170925 644624644 804248524 166798134 889374814 864746999 755134924 801673863 71743360 406093686 273896339 220611762 978347025 272910784 421740456 717173527 39202008 337367210 792780351 40599309 467585520 968931066 994602894 934393543 603270215 612020322 249612180 720359192 471474239 765444363 957459699 902558831 148469806 151436742 72605620 822666223 345830390 241786132 381692617 567199445 477865550 740867953 835978911 663851265 128598535 845415219 647453790 715076751 452916337 790183998 34804871 438571233 706575327 741529502 136586639 508191098 141206320 878986647 295963973 744369127 728908607 726218373 930887988 628929030 156234781 576297349 358486031 817937936 40246982 694161824 368697085 973642729 766163209 623449507 806717455 867880150 628277209 748404764 642135216 820936827 964543848 137824651 353854600 614014313 426630934 671985660 464054740 225253647 121457995 923582515 396143744 254083220 180726871 771124458 654910663 94048779 856951170 622893531 886643562 273798328 784487915 213150874 651207006 870056540 571142028 201874009 78823889 584255135 955273253 278220958 822473939 29972083 951254580 496119506 656573968 789808239 396517145 693874359 388644652 575653149 203104821 317490353 229717407 348414265 504580858 253184652 250320310 43641166 514105134 746166251 559553659 450353477 351031006 757058074 450327024 699503752 913035439 227021390 252745922 182577420 54349809 676472526 973704466 511826138 223968090 391252641 719847346 674071038 767707469 49619662 689067732 24942289 942371783 557236412 437696390 171449819 977643177 835766034 615940642 871518356 515300227 839290781 256950723 895867452 924848618 589567030 498650791 895369739 588116817 732199730 254955187 36275978 345513922 257024410 730685859 187107533 46368911 990953188 6210162 523712757 574553662 326998687 492122449 354662287 151173535 71827054 791639092 758779524 779363043 667967110 841464036 199623952 833029382 534904962 867621437 336502099 407507261 121501689 999323389 711132741 799312732 153663983 750544346 214557226 955573486 282855076 314110049 599870540 514454341 246010087 457582781 672874367 681213854 370778162 459124224 915042905 123219869 364218282 785917543 949149211 394413475 451866468 404787520 194971798 916413080 709181892 713236016 3627551 489428812 494925155 878120608 662147015 543652885 785858561 238803438 772117174 634138298 508510932 286330775 353000327 991235836 537162786 798812804 524734683 700786767 825836111 793023517 868939903 763794778 85844054 747606730 19284151 937518094 110472749 773411196 322062389 435592771 668780105 202738779 103948456 256145454 604283268 154209507 889962515 843136001 861595102 510455196 745554448 810935653 933153782 794701727 577379538 926163501 521673792 297092947 727361247 655544763 599357279 19869447 645403045 18684132 846618348 37767514 444420187 551182763 322966537 38126684 68839988 908816887 173690463 883345208 656983163 406421799 912261446 972347468 828026647 21874895 810991839 550437900 2582687 864448693 294261168 506590909 318409365 58293376 770945813 215869405 22651546 190668882 583122584 89696428 228292631 199041844 55547932 492812992 173806998 121715277 431768503 522442187 955668459 112026011 661787214 914535741 198388095 895593274 227462201 255852751 969407680 959758810 591985688 702988564 374616828 261372251 576749613 884891361 179366604 493667711 609847529 510054937 299593116 69994222 468585473 213436479 132199174 251615495 807203626 672491181 815463765 132829363 204225933 150895503 737838442 955166068 103262141 462416626 638964999 725581904 219658959 54923367 474910610 856716488 664645602 179703204 757814082 619691315 998838600 464228996 938463424 459230980 870566097 98193929 519946995 110319962 547609526 147136603 411284544 228796446 250218973 178234910 399187380 18465398 564743253 675937870 582332138 219135365 853719479 38261655 389980001 808934498 825849822 762566064 806982830 655754356 160745991 940575745 362496670 409899912 204873331 386317600 730260429 30851319 898125412 197930452 863116755 282852348 166734791 283804179 325942016 398452220 346473733 199236623 805670029 902838193 186554053 807707725 939090026 214104037 957125106 706071668 250869197 825613632 766282446 551233541 667737050 265670989 279610406 666760089 350974923 115323212 147088169 34514965 301934199 408286557 48727312 787993996 977520955 141026732 443821176 226056545 466947009 332573633 135016856 361437623 939472642 682862636 151484731 24318195 138546858 721304623 100754900 96472234 92373969 220996687 443575158 889436059 892039420 979691927 446116906 330010101 316654062 354884808 588037623 878636029 271709530 735799320 30816699 802938207 555775768 574868296 655589899 290197118 494223657 818754037 381370862 304855503 235497657 793654570 265643349 204845660 815471202 232479981 406016021 178951831 672812402 789393813 892375483 801256841 9985134 726142204 11133004 470984896 691038030 470221124 709577407 61382810 69718453 284007544 81971412 62855550 352453158 624143554 217156923 869075084 756980620 494475483 321589652 984316787 596145022 980568490 36832820 921635513 184930052 530011360 20037046 702521416 920876669 143476669 345995119 717204178 595347 687767532 549130925 11734846 376003571 455634790 91511531 997128150 747260946 928993866 148255590 434572979 447522460 179719576 551340577 630786153 133921679 205479236 145654374 321698205 790915608 783316621 272011395 660606556 612132411 108631786 267143733 172122434 649693397 686061607 153888937 468141756 879528658 82225707 342793606 895514087 42144174 47703800 370170557 396308477 613900068 296191709 575723515 465167631 943156683 314803870 69544671 642652529 75929934 716571471 60377665 780367946 647232704 917060069 321070775 345174635 56367163 357647379 870647879 56590047 748370196 957563875 320013776 227316286 426087727 539870899 636695186 458861322 365359022 754692531 917388363 886414078 255163522 380690702 380247217 382933534 37322777 553849515 918387693 767895316 78955427 804034588 918252745 762963692 561179725 424373556 978339010 670591679 188215459 822180140 889293493 518609164 365330054 751230377 585953038 405135376 561892938 853715889 796071708 618920962 157715174 408097895 59386917 144715224 328924139 856826620 149807294 895812432 284373563 885062780 50114217 959993607 915645276 959000519 597794588 773627630 137341566 997238723 813151953 453169803 342455704 24876119 294561496 85985590 565910144 82478228 675260155 315850947 644919170 179447421 333585632 785067654 395461369 511733354 811192259 434522375 734934898 961889713 730257468 558843731 713136746 651088998 373273490 631586624 542487463 470102589 244015169 270188484 671524985 340110618 924752071 328843781 686926102 622902508 63962413 696596080 471325758 736252122 169289225 364398472 325828011 552406418 838891757 670513624 946494484 282134922 875525043 96826395 43678988 366151307 757465011 440299983 988993447 748538027 51991853 142764401 220856215 127466603 282710276 627191727 983494098 115300836 100026499 359677845 226523966 236823567 863713512 184279323 232221865 110601445 556371164 171447620 293293693 620107183 917339629 458896288 494619821 735695740 132926485 676377874 526564758 822555241 378986989 993087345 640703056 722060805 65246605 236450095 518317804 700563816 36351971 292238111 310768260 290767873 641068728 541892556 501259816 977364219 181477713 327201289 341097142 90749283 582258119 30910709 160570393 75032295 92850173 747290126 527350165 765181551 728635466 570307789 388646164 640143595 266417795 569028234 697661781 958473370 117321183 761610614 958033841 141468990 247024727 254339683 340179348 214450135 713237035 672371155 296007848 116827411 523874481 186609112 534181737 811424112 890005196 720378842 854754822 90485555 222849923 98907501 864670216 699573291 223088753 203019415 391882900 635745000 898605343 407371515 477620407 193430506 966150595 456744637 685270595 188650026 589929737 326021028 491386797 646697737 58182106 885516919 426357079 730576058 824089091 709416313 491132365 431159962 563737964 888256233 618356895 461376113 658705239 245312415 199421814 326496830 55861493 153375163 726077447 716022329 686988154 924551592 797977672 347851206 30176263 308587677 872003910 73684233 441803916 526662058 388316520 486724204 269022353 311773158 383448086 33360299 682330389 314074529 87087390 571170784 812718770 528604640 80665999 69183023 336412298 555157243 196084299 491289328 436440036 878943451 752260907 327006092 346560699 536631943 306076147 459795841 165509313 658245531 635736638 781747085 577139051 98917675 909039501 616903054 558049615 925949606 439071720 681650098 171505356 113167725 79562341 614933094 779910126 802570665 608613221 515751877 842425344 60882131 900661409 69856186 387308213 695503066 557032325 706392463 222665648 777922098 384405648 653826045 141955622 926638232 113960805 352701712 930947028 782543103 397880239 4224314 286621123 39060016 385024907 339223083 176967455 678166665 500396002 527821142 411759403 452771997 615902282 200434509 660901035 615734628 465694807 619385651 215989613 778528898 389393175 584906600 999197794 598612099 208779356 258965532 93601023 317305307 911771984 59327749 35299890 602682883 211709306 538722027 903868875 384661625 520397931 967036694 666802495 646200468 382631698 83549669 388343652 854790401 154304801 682213940 254518629 142346128 198043136 601346327 922308891 392551894 193754790 117268025 536927277 401802050 831710561 974963058 613586511 676246273 662230289 699017863 9318635 713961268 425663477 380697431 527244199 56037104 922247906 583153324 688678828 753094269 361754645 267651342 579003464 697604382 367995538 392235071 625244780 367653542 706956702 884802713 166737335 372844123 328322336 289432310 143306994 659720427 254234013 371989834 150676684 47221946 979965791 775479235 961069706 360773783 299845750 807682129 164903165 597490778 237881969 6029229 288237129 771754676 839623696 781320629 284614781 956793593 554151411 577115781 889401891 287520760 2243814 957560323 441206183 30997976 336392798 353360695 408828570 492422280 990513503 40383175 843630534 150020448 446027443 613130669 347396777 676144702 806401823 501363651 670552775 154107699 486026034 803307709 821648555 537410195 325294955 677587872 552123283 788058128 323250714 685674990 418575449 293180236 6571057 378155359 967121522 857215487 98947133 949025067 904551622 922602285 479924031 107429249 507948451 89874749 159855973 381461280 181397418 47894006 414662239 53101382 174908252 337576950 405214347 778330635 631425069 316313815 416545159 762733509 593579880 876573275 896420821 312644765 102749147 870811021 434953576 579899536 976211461 672445554 605528666 182237751 469449657 152704265 374885815 349348941 812140015 964307502 865038426 519351424 880696423 973782806 298083140 586808258 828847948 866404555 833197066 336488505 439153356 303418526 268458057 473963744 385880011 391459576 188492257 669944583 54652738 425812737 824368022 864431199 700032755 321712787 100951605 228630999 272116258 203056024 665803153 971702906 169866857 4847602 904800521 743419956 618904643 470651638 245072341 668714704 946863488 745198132 816634066 60554810 787855035 436540470 41727653 864900055 343660501 253512347 168863337 566687415 906839114 771409398 50037887 63077532 18480148 865567796 354955672 183449329 798602076 894743745 368211744 520247801 570812790 491715452 103123283 165354712 711174968 6675942 650178616 186227665 621612012 129869984 96933598 45404129 368281833 899772991 417620018 486052175 127691777 378775111 810907333 934891615 320130082 432576078 873034413 808312996 336591719 670434636 907281568 990461744 812175239 313747165 697072624 869410368 840137818 223872712 132459612 257171425 895333502 57835319 142996849 766400340 780618608 254248087 36909140 302393358 251342957 140858399 216811994 922473364 679364088 464724578 469789992 989717058 939024904 804809138 851830950 357961643 651027232 579856612 683004004 441360147 102705782 775204715 34310818 546917195 463284222 147098636 554730048 58416984 612054915 574405232 907573583 501317121 92199576 382827833 771589216 327229697 192549868 653459793 334354096 864328549 413403314 927274650 670274426 255649564 980139983 531972221 74790422 431016277 986470933 76796756 781693219 776018219 278679041 623232684 100208381 695906104 878874849 195545374 234982 523460381 586670070 484366345 341694001 130673460 26209650 496786429 97341175 154763018 91962409 312855636 82478875 686238122 438326403 293084229 908609566 141445061 785689320 407525556 126266557 976285783 721139063 44065888 340326779 731079892 544759330 253053817 366104527 706518911 885805244 836984188 403062266 530400551 327246782 292841517 941293313 602205983 367787674 152926503 3660916 889134878 727318997 63551614 156997992 854695221 820384095 422669576 216460096 355774370 25696263 723050374 218306572 116950024 296493980 208590756 741927129 71033786 112634272 441996943 87736374 385681466 218839878 25512384 428838957 53753673 855053393 268146710 433271155 120549549 939479336 334670725 105481987 409558417 750585051 812781708 797877321 297600495 89630109 575157973 962209706 291402293 422865812 979430793 722662906 862918148 909190134 136584276 218797578 86500959 392444757 134742090 430300498 402244938 743837762 702083606 353461408 863458333 547332583 994848450 669129701 291108160 496309356 895290389 353935751 207349554 484989497 849204513 835158460 33797318 5670974 715202063 523148370 761446548 873189573 304555043 33704682 236643096 804817954 78479740 875407836 995603315 940251547 370287546 722832843 449585029 170242987 805016820 843794604 896263415 132143219 280903734 920627514 690328970 715296857 110626975 209610662 104026566 47722264 946543734 907185587 411003839 434899790 968850657 864403021 370578404 838985792 806122026 854558940 990289921 176095509 56028341 965726326 947850702 235753840 49688492 732705648 311378419 189721509 91427581 873452468 151966489 149392416 128847961 740076219 878534571 968598683 985049704 211540864 326861643 13179356 950232686 475688255 702040396 440203385 503928337 550862966 948405886 206687729 203227205 363452016 334023278 272897802 585114845 403369096 87622287 936569238 169248956 985522197 946566929 60447194 26228983 135467638 467737593 359389365 484842558 671744662 578222231 328038090 340568362 148469972 814176228 869852045 444579965 469226194 705903287 619053976 20250312 734286180 836719655 217429757 151894047 357880837 633626093 372355177 687134169 893449901 685108955 880042356 300454944 159842707 495325580 786071125 934515782 521390479 744730373 738916264 850299205 590484869 559587095 85714588 236507726 616580526 425813026 886371414 415510897 271524979 239134205 536126121 208959375 963642595 379647631 954310510 987000415 802547579 573337761 668798550 333559426 38283012 1947995 95119394 54782768 20885770 530884441 923685013 476187971 611970325 209965345 390201124 506901603 347631502 503637842 805894663 304819513 920522963 254420714 562101388 987728879 987036150 827397799 287078881 675130122 879135731 635708176 301167583 966493407 227519710 784971297 480577893 946248051 386113309 691271676 485497480 415856777 601744795 234910737 872992592 627850568 124263648 672409562 895902271 448698864 150721540 132768596 890772730 245574984 374295623 92851046 354960698 49272625 872193500 242525889 896660379 526048345 778552847 19010484 186675014 724590016 842484381 40696359 599577090 768362709 547717413 964019158 492006999 804186368 972846287 665559959 888944616 603869558 108828077 858279593 785238488 724196867 963182059 346695630 667628406 607874766 27695337 793209797 566708732 650235278 31019456 736975596 956384712 537400840 26966093 347469455 985594469 831319343 178910159 668640289 886034173 515192748 834239488 197088095 100601286 711146679 364213338 179901331 30238544 72867740 752079933 156022421 811182174 406823198 684742742 235269435 756917167 159898649 3149321 125731915 804467998 154470594 750988564 458758285 739493878 589923921 295377959 608739145 605061688 649220112 36007659 936442735 322558021 477652269 557365301 641199743 596061328 711189163 965438345 506586769 465375669 649961806 987799069 964418456 864193698 1648914 8143822 483179606 613622264 399645914 58203807 770902395 451871320 145918880 295101690 785803101 894173956 90404614 478500331 194696794 66476342 396168793 310528408 465465574 948803156 112622688 455549293 47748211 275557159 196534560 411239828 47578124 418313599 466385667 135696868 376048813 819182335 614724224 230362755 65569809 354892726 578895131 344666278 120236360 237087143 926945913 158854468 779507191 756723427 915866414 395161529 150782090 151202426 189422162 406977784 541151965 621874316 781590493 692717776 823169475 336706096 699000967 432463726 359464222 499063097 691578768 398952654 13565675 858863564 846271380 154825404 623440360 717727188 537772083 617707314 297126172 65833239 160015389 79748808 208730955 59336071 972940965 592271762 262953612 243871171 194749159 801353395 708084093 613125439 667263896 235914960 763327687 802889949 96714700 576076390 119247340 62571329 653308729 529123626 26477117 79040487 232084539 606894486 677302127 378976845 212316437 235546527 505179640 353396747 397460622 90930181 339857626 328803988 779020133 316010372 34773810 298907783 988716161 122680572 389316060 567075308 801145549 336892692 42731292 648485009 230462618 796250675 503084212 999053582 790718768 690042017 661690077 960314194 792733098 135029151 312770833 931944466 104097423 712331198 759127402 590527796 584923603 403328426 548087961 484009161 301508259 832110177 277681275 224557992 629042215 921574812 337590514 465837047 762067326 305097750 360989004 863179366 64099122 586190402 845150909 36621061 504159540 679028285 869178215 261611442 228196433 595261031 238144293 178102394 737993123 941631672 445527407 181426554 751587690 858319812 814523136 283293055 664075411 201421010 408479161 190031184 560188846 274840609 133892764 759921469 976508749 663172084 297494249 105777479 401947551 505286858 412476752 953918216 980637254 18059617 547852589 765804812 707567435 529007235 95703117 557220347 542482928 851699370 789010125 184487560 319521966 897440802 737937850 272454678 664694198 250859154 364616283 430034412 91986095 395953386 794354846 874057838 758787677 946235550 600181426 484486160 396847222 566840894 791973579 726673745 576775437 192309208 899935261 646488833 408391858 516246255 870126457 782346978 320881028 13857314 622649703 980335185 813632984 491362638 655948767 363716153 868550008 925445724 373381942 365626561 818023638 213703779 546629350 645951517 725525690 308758812 309162522 189214009 223149515 134176655 646313106 379204454 260092793 267936528 503575339 851453058 32529607 32665455 278856081 916361284 880204402 696248498 675724238 30969383 196323314 73843067 306061696 735356631 306224373 116795176 747376923 181678845 600276425 486773897 197577456 463843190 630078422 996251125 615714425 656302578 229824934 90352881 36869236 512194999 510435706 985920008 479562740 209666443 622663393 81897213 747045595 806023432 655728536 716646895 982805826 51953711 411510267 44678622 579409223 872535536 251811708 975883808 666083519 527588281 334007635 29173640 954983087 559195787 787630481 472065998 431906908 351696199 332011212 762382061 533231725 216551148 146065299 859362158 322434625 613547388 706128181 899911651 603148118 883800582 253309079 367021582 479069844 892058175 735132507 175447618 513895501 309324015 657655001 736642718 727246761 294343529 216039421 34287341 333007115 24136285 190690237 262146656 64849901 374148261 571626080 698208042 590068739 597761301 394245919 500479507 699754744 442370667 209731846 591196277 241823343 872195680 107316967 171255728 102744063 602140120 993173966 752446810 712937425 825038851 838622900 419786529 185649558 747293178 681078068 39131893 131901596 306878768 804491087 829573258 492437421 314930191 953725344 858730415 192271615 555179703 542056367 885555494 844055079 593769293 389291705 552115924 692684878 248839985 345505692 49388873 785092996 172954036 115742764 668265434 111845587 484443849 318649190 396077424 792511597 346194025 267240115 12937535 753872110 853672319 309197444 914956198 129091944 271207017 322949806 201670035 487473776 176126703 413933832 344366616 78767702 645887123 934472944 401823282 759083596 951624543 146988157 814335487 81588747 230728372 438962623 302229271 820340366 325306958 397339068 362352362 35278551 963277454 404245703 756200124 646437131 529733377 672020928 124465749 507352257 997820847 378626100 671061195 268051698 444311727 235233248 766085078 232648237 269973531 508073653 488162160 189054314 424147932 339077902 131675424 862704227 568203967 572464197 547169184 852973023 412679471 56202728 755392312 104496481 568597399 164497988 714808614 558146894 376173424 591662983 552583720 229406396 908580019 77916808 625380835 509534073 357392456 466919879 680928593 393382873 956211353 981570208 10494666 540701556 723913706 980704705 105918326 667853098 88505077 994996499 67538803 159306122 17311314 15408778 724010478 111912804 242092594 621011486 864605496 497655120 628925785 323267887 7370321 741427331 135275422 107205487 322251316 345343343 736332310 350237982 272981788 678337613 808602602 66199388 751791530 491596774 937131324 472230708 467131772 475095022 962096042 956585432 20520641 548111239 308655761 879283295 888686681 531986247 886518701 170845020 551385206 845482315 530854059 19446488 834567610 642884459 957738411 150103356 911122236 817527137 239094522 641172546 218586902 48001370 278009648 214189205 615741573 341911431 20805165 825957910 855391479 653458350 315308672 461810079 952038402 662738818 102981291 129549193 807393860 996444134 819582288 171749713 926011866 845860819 905740310 131209924 196154111 254701699 329560010 32881210 165808438 304286097 818939808 345863463 994497658 913286249 878229138 95326665 617690702 77463240 971787757 930197838 997446663 95551599 357009567 920565296 157023385 975086513 735559620 89388182 453867321 869265400 289684471 409439772 179569432 989362857 679451941 108451975 505690059 716270091 332935241 821483887 83472693 710413273 269808023 241725458 573065428 289365952 811082895 951202439 820766669 626240399 680288467 409828612 921076593 832322048 857570556 909497866 36875474 280478326 443929278 970475313 649694474 422822943 243136764 426994645 811770962 784791067 621271040 478427195 493317635 996881331 407618803 864583570 90042705 3363148 16765454 525702537 467038523 339244385 887984273 777473414 811297150 681411157 609271712 275727334 177071300 741943689 147676274 91151896 2787004 876817781 506307494 268996532 767827836 229911966 480215993 214460677 515742074 820143021 287230050 505746438 54913081 555403778 974109744 962109665 681681411 119329369 4922327 830286939 653903218 329058435 18632590 484374164 585112201 28342251 317946211 404410773 295019846 238399321 33892866 410863271 399725583 421883150 593226829 241867457 130008422 932922839 62617010 21105890 737874955 357519917 485520934 362341345 837302857 175323368 577611864 698139232 711262170 359582526 706880861 807185123 15256464 871063838 844746378 924385903 585406896 408912679 612458964 552521284 879765349 45378483 851319119 96293353 275334475 986144286 140254188 410868751 52103471 898735456 749480634 327821614 202757475 749121096 383161828 732100254 44655725 189103525 742260319 989173026 72813924 223931300 424090314 855663808 371332679 505223791 583880073 535344142 5405212 948512625 279133728 691239342 876975970 886830218 470768591 382554877 884441694 493361114 921811471 820484105 631959514 885972413 750594565 665540508 341550326 736479116 875660570 94599328 468700331 366744234 406013118 718169034 491794481 481301494 240663360 933345500 606889554 561607113 450501841 846006443 294900500 765052416 168375314 35418859 410490674 663291327 8098585 781617647 316656968 267262854 756381001 495912395 197037175 163117707 382166823 726487699 184233811 652610733 199520882 779326582 487685081 253512439 254444991 733499934 807459480 191618924 245504529 27224037 865173275 77559106 663911573 869949451 658276655 487735952 828483670 770196112 730115469 933068185 881073806 145746808 577351234 659671322 94744213 946484056 140232281 797879893 65515407 231760963 648996284 918905851 480600551 557483500 859529725 289432049 504665998 127016160 150610193 487034267 778111403 129966273 494696742 545365292 504821463 514984590 394893384 440155076 960833175 427608604 126073011 20985269 326833636 485512764 14588914 517441638 789547915 957661687 905392443 714155443 72007764 377086046 118901811 891391107 948957961 14552919 168542141 17782078 672134285 493576660 601362495 114080190 334048328 992561792 644694580 296897929 805034797 510377723 641809827 252777647 269988047 183310707 591261804 291354592 787820588 953781350 851947448 4401784 880052695 19949266 71364465 332541544 995251206 817820576 349360579 757638927 230685437 497975798 522717786 903172493 719777475 225892946 575714225 180180358 211745054 467998034 361706851 497484009 533017267 88333491 292612990 981125603 171038239 753534931 532210995 685267448 729515906 163498578 414993397 657295014 667795986 414330206 403803804 705965050 984587182 205604932 552473866 20043152 204349209 220920896 960104346 238875076 320220121 765372609 114899484 94859233 361854947 800128295 319064114 837745661 201186675 232657073 250413901 276862639 684928369 704653001 887921738 92087838 404471603 603268115 908498177 402682221 171602394 214918112 813931618 211884327 264484223 840632374 263499565 770205848 73107593 853696135 19459451 875797446 367758107 293918086 173918428 709838336 789889870 346400366 63148793 133678704 505881714 799545524 417955803 258023386 85637138 866553705 601475558 201002776 41532871 656662833 767432614 122891022 318210515 575343815 695975317 419871001 441134110 204364918 775150814 78980588 88168382 98211070 474056508 739617777 994497561 369241815 401713742 466702045 464536990 607363411 214225338 394262588 850812431 305668012 366300890 938571430 415477845 48051518 57938107 578835070 554075474 628331552 503631520 186849620 647046848 320006108 281424546 401656904 549435583 631075558 788616074 596133927 800525533 739771878 684530289 990534327 377007020 88305116 747957516 757109668 300381111 368612301 123396350 857387633 640501726 760400956 854694597 563037668 283808042 481121157 766040162 689208335 2124214 15851482 488685085 636145868 374478050 522797887 574376517 831669301 225973965 184407733 398756260 521614163 735725642 294106137 931006574 204357065 148710097 380498069 882558528 63266565 841052780 27541544 551868342 681258643 612060596 330555085 143977824 615944463 939952258 25490964 531068227 155690040 772653342 172289446 851564524 993224287 933955025 127345694 865493163 129776708 978839988 656074971 957192223 298900133 873847263 500937131 398924421 577633117 765941544 848997890 932226722 570301969 650704362 536775682 482980598 793920284 557880285 709301414 460109070 827779500 411426606 325850847 777851048 186052393 376615691 511490135 213489128 155968272 719375377 799884195 445604728 721456406 361482062 232578386 886918663 749172887 691790855 470624955 555713492 212978199 871418706 508688861 921339449 274153734 176282275 538840145 721349468 302199509 814928291 293140599 917372218 736756717 88662985 998052705 678032683 658289762 387544207 152480465 462584919 608517999 963887434 306999249 456317807 660471836 526092477 386198698 540461182 838008540 557151798 718880888 344300590 876742515 399831581 518781648 341599372 745383766 500736365 425711667 757961264 455678318 112739929 621924317 297668223 544298430 169424097 104934503 342534154 652650536 979006430 586568904 345699443 216972290 444769412 276048440 838213838 719057205 127758573 866507540 855804254 544450640 424261216 538980644 696706828 941431475 452018682 979869600 341507399 898809703 500262305 986095277 63432911 120353474 319617265 637331845 371252015 196618313 320785312 813352827 192770652 129902533 949331478 565520521 660428054 609971206 470482659 358742954 618934981 522684681 875883069 171794483 426337306 699337442 400063698 930825011 544811239 730888352 665778254 273053519 300241124 474566913 347186851 556629232 979693389 453192020 812694619 73054671 492054723 528071587 309458793 485823604 429858830 831327677 77219970 787935980 686615380 621414649 536559474 510039165 612411808 378725373 397244562 897249077 551540297 819227754 152771012 160147530 38816615 439421783 275129057 992394465 7906452 425848263 561733689 795125602 85527794 929370581 234813406 468616590 982777384 73874614 223565448 933135529 955001596 559688491 140893004 942403961 534563514 210672239 988071300 342058001 425739772 954377541 600569357 509019126 190664168 631964399 644920785 363288014 605812993 720841161 230967139 901933897 24942381 702598065 464894310 415642682 642381895 349942355 735875230 822150436 880161305 229338209 611549480 409002146 135470545 471625964 781512252 914979434 388136454 260633290 786848332 186324164 284314050 236704939 32653007 494701618 180514691 659603465 572184126 115296358 832061525 431695054 920086345 375437282 589168984 956284428 72432682 237699382 793359982 755388562 238432285 359633016 280099623 211146533 937350319 960852596 183562424 417065908 670710294 66553102 577055303 668860718 701109399 444072990 100390044 832431937 666418217 508077639 483870052 129582273 80384408 812600774 911637605 353546311 440773686 646304071 114904247 682837650 217689652 974785602 584372485 779606068 584694288 303618719 644541378 519372061 452040220 701365367 132075391 183856738 693139173 811136582 843644564 869384858 392125995 760139542 212343855 512551841 586922528 63976369 716309546 758010966 327622889 494226184 348613889 340720467 168004540 637786011 111165046 513557862 647335459 753977433 683579621 423288771 755567886 152699886 520543913 858276038 209394864 256788197 391835955 169624892 361688171 97078518 390885900 589368607 134821043 210786458 189252501 675700548 892452406 931196075 189185246 25923151 626811135 658249144 586700928 722252861 118763151 970025966 396930744 440247569 307047817 77029126 437901468 288264341 312872921 83500365 774337573 145102397 894311872 707629045 588235539 493674072 873026599 870407428 316992350 12522003 53297695 42795477 489136993 749820268 782467027 395502795 459940910 945692648 479098162 550719441 620110650 125087753 519387222 395199678 307502874 976866904 557903448 908582427 889221461 2531280 356135008 701137920 947305938 349971816 758272293 281591389 520263504 925929419 840571914 351636092 272677626 790977066 363731877 491140949 348239726 494368444 281925738 777574747 224974709 424600393 230853985 374216768 693482902 908269607 316262726 10749169 192608711 169139097 63377683 166173303 252918434 969558819 786938853 747692514 99138770 275618216 282195360 560530909 376129928 646627926 300579432 719279251 764445206 695188741 499966451 697786057 651111212 637834245 398307241 712754083 447560987 804654482 8843868 867481906 728707956 779250665 767274019 414627094 655238923 659269861 805518584 787281457 259063546 526986282 677598988 634042599 678329973 397733993 624468103 106884017 70470001 290909088 243872674 672082658 839800067 934480166 810741516 754100242 234493891 995580756 931075893 61505873 156795618 948474731 767474915 360054023 65718924 276989753 810815551 305681487 440132194 426500357 173113250 955218860 451350236 880967326 194108156 293302881 593938828 487586014 844596182 910814152 467963740 758544794 773594650 205260777 719699802 215553777 138583249 38523085 803090345 99186587 669737891 196102061 27772833 610353969 389887553 472784902 601120340 91635892 428470384 493855658 461955295 677958314 97725407 830112990 370037027 615220767 551494624 437324917 208655674 26073452 870723733 932282189 205272306 684884714 394406668 909980448 930250020 850535532 326904868 763386430 726634436 377258163 462450049 911795365 638266828 586261617 229132298 837012033 429939564 148249466 866452947 461600699 525646122 479869405 538749491 256955850 237653290 266994769 466650994 640020380 286163141 707733314 744300418 222924419 419813574 625764836 853780169 733985699 811972571 558405949 756862085 112300902 144202468 32948181 598396689 880795879 943159457 946028672 540740975 417623461 742719863 192647058 799664648 305096478 433588073 837519359 596600812 832043039 827146176 607030488 919218391 463988072 59451785 28549817 646895692 167573149 10957014 917291968 238617183 722378740 902869918 720944510 306960295 98527882 211560426 741001767 626510576 212261489 103779377 744508317 362477052 156217442 938761729 519232567 191029435 699059531 448242134 687537466 49286056 652869962 667497299 564365981 893459330 17646327 206227231 734993024 643927071 224104858 159788469 650516335 475409683 659603991 693962790 909677226 717221937 560122868 776627124 846421367 624561773 324200377 509343821 949326212 604559730 70763168 417756714 423638105 43094522 298027348 181576780 20426498 111948949 415349637 795735307 647317058 89124994 788000213 210938122 267922996 142478494 393413987 828364465 356092132 695528021 334551181 477086460 822657799 166580803 598658591 684708737 391570883 481619204 706772674 804702892 986338253 940562128 547742046 193751841 379537943 377261342 989167491 314792217 693398777 262615019 640272383 334476184 843112746 878128263 403638707 998209160 79136117 269330873 366796242 385104762 411506821 221750477 639145944 466687644 187335648 53456575 933903448 394488109 902006179 691279346 350083470 149930127 931017638 875822329 730187170 684727912 299468033 625137830 808513826 902076283 245820400 946799479 486578389 95254091 917981501 977661549 40103146 208352677 283822306 624221955 882276495 693537307 526728885 254236311 972024914 891161634 389734829 493363754 556800205 212355931 594379069 971813900 587598180 906023154 513864922 514297680 682389450 611864137 247030183 796617106 54612611 466500651 639906048 627114908 768929136 689812485 776999128 934225404 145986621 372223476 479207805 904629761 359712640 435987492 226744035 63445533 881849130 343095731 467091894 303545662 628385552 669575893 26098542 287482925 396979110 29777041 148994967 89000471 353258931 176184136 631004514 112033066 682609359 908443040 175974868 836259986 613675655 748928183 950320990 217390761 363323274 804130691 985578673 799539662 737774741 437381099 450909774 281902656 510607305 4410161 301880809 646962073 743719459 978349503 574074862 458165567 520987438 67330437 928312035 18931603 452606973 741238760 264119218 253485113 94841046 717100173 246838395 342204908 477555343 590132765 180254986 212844024 173787329 941360992 953772779 859757687 860592832 811664061 750359111 386515084 852449168 601014344 885710009 392169374 69545447 424957519 650274964 656502569 523777154 110978410 302450762 977270975 229609509 731910382 651196255 294470604 658290725 919082576 448753495 242726520 655396140 468339709 905368017 914542614 532772993 921356587 525403674 716192922 11024452 74346859 602118440 813999441 22390153 690721515 182903069 485295643 923599974 836417436 549225959 121845735 278028605 898484840 697859739 126943420 369817505 517092004 527276146 689852213 669252526 63503629 830516558 566212558 806236646 39761002 724726602 439986603 398295610 491378468 948324343 928782975 369321710 386802068 990026261 922292494 541662923 906706763 878760660 680759425 732527643 286032655 231198736 816569094 537727334 852606813 723497237 173596026 419456708 530529502 660458270 709693029 114625382 577098719 873332517 173913721 964124821 602799946 112696851 67848955 713002217 374001069 866734198 827278777 223454516 702384763 499742003 657898752 162964288 858959405 157417170 41366485 579004285 511950053 586221427 110751905 380819635 254589366 516538252 886041525 801337979 707962628 123280834 327498090 230471403 314194676 897771739 150269332 227901538 955113811 159204511 882914065 648505224 152499346 625853637 414230174 816785541 647196763 712751028 897577042 855682116 645501362 977677671 663636138 10129913 699390160 156160105 817509945 846864335 799729878 196488635 437958238 10150196 800497610 868053165 313617913 591512601 504323549 973094526 89664436 572053024 979568582 851087108 526583965 321590584 388189816 660455305 983610653 159857725 945094898 506068834 886799319 739213326 183292137 261800795 296390416 59225147 884870152 412293741 464977811 4219514 322806795 432885210 742063455 855172115 62006624 686917807 40960343 453296184 743527560 34070477 233340923 609057940 688981174 552200873 708176590 370767877 203997759 719002511 125441527 946304951 780957280 744523439 9654707 491900961 933188621 871582105 111850713 310177317 576314959 602341135 971824866 111867198 298441706 769110845 477445741 551885704 309556032 746885242 945857232 531187567 569725081 290310507 73925348 9038474 820804319 270086079 551325345 965629549 197633793 648786665 658001258 629639135 807539313 101739555 629082578 385468739 455927211 191478964 885075303 443743759 367672733 106351731 403420855 600010806 147343371 471935204 484884687 108649947 576145846 245030896 548622688 47137506 267948544 183008756 488192983 871973028 230715091 243816190 445473087 347032402 111731940 984881730 855585136 210837500 31444907 582493496 178524532 132673469 563578901 770607355 172489180 822013509 77446894 762293798 523943697 929834960 2046776 251470271 172063128 852444830 775548570 930067164 642293404 923440810 559559129 767293609 923303476 341133671 295094716 261121603 298796059 32068884 657537350 428118391 820471139 76725272 251106371 459725315 379361039 28383240 488580055 560494394 548478924 455151251 810125527 781486049 646306203 424326953 85629582 270200253 470007296 29831185 602683237 51519937 522782521 496211901 515835036 732418695 287222417 757435497 998312430 553270149 365888596 519767789 417891997 921126269 83408912 271431377 751782106 5142048 674730469 371216088 880880962 617486127 644934372 165688209 895763973 959746848 605126080 820877425 317257187 692069770 105108449 805276975 167691122 555579842 92616271 128306039 193299385 563746076 428738706 994471113 259799005 553115 984470161 802735264 913470049 950845345 453973036 219604630 843641403 850852982 925871949 29748991 178245382 998049394 705928584 41469246 879524519 809669545 456207696 291899840 700571306 951540642 677729801 284099281 161966871 393209422 72908519 199965096 390968872 248850757 142818748 13982065 324581837 210487572 284458023 210602939 60223652 536331793 682690076 667466656 684242683 449446844 102694362 466447631 907980131 154297775 638238832 490205160 172562902 690755030 284223571 493786470 704194684 709168848 695896552 82905381 207810936 708638912 215495780 359687795 435968073 873547672 272182909 905809635 294362419 23943634 88712388 618222543 200506266 514903099 36872359 574207808 221163418 494849258 691677348 68090038 154269710 737789901 953224231 755526369 890249266 176183443 291708612 783437623 497818312 509098269 782388059 905307060 223811998 437713807 22958058 361914620 757707136 642384565 149180159 740693731 591027663 81441452 545369482 388374218 193097352 200071748 807823124 417784128 633680728 733412488 906967571 189276154 987459303 715850567 672040204 464895718 270034702 779296610 949042421 19431434 654976024 674645503 957687984 140525613 714556349 485914122 2015190 472174699 59878330 282412813 434787398 269003129 439341183 528046489 981350612 350389352 397171274 601340362 790297549 944281053 637578498 4377989 255279040 438893390 343317715 18031940 589344324 254918298 64008857 458626270 636247651 742834975 869699689 997633058 921058093 659220970 693468748 393182839 672548949 66146007 789047578 532267516 780176794 20898582 805830312 480381821 960824246 817980556 666045953 895707741 621045165 940625350 57662077 9030828 434952444 676697450 449303802 629364533 420603291 821612908 743536477 137927212 604774779 324557197 819286875 898442800 957741604 647635153 90142250 448195654 404599030 82307851 84225803 923128875 718547774 713658469 54561453 965418422 277117934 375115964 447427608 895966987 191038210 856598740 217816945 881902241 782105860 819547063 554871464 477879898 516833196 340375876 51107162 565015881 518950543 841596074 574132787 935775184 480614248 308575839 918121537 880981315 566157214 456645790 828048707 35094058 305765464 400161855 877256045 521672608 810945748 847070786 195728221 900937506 505155381 856823132 760196221 695359769 875750260 766028072 142220014 493744330 361121723 339130452 893553610 736722527 771042298 977420288 108742615 475077886 247070225 271661491 18942627 576056440 981849422 122769273 532890259 767487691 871897822 198116596 729268181 601843292 459070806 270236111 984125931 18163681 866516185 316703871 486163331 701068840 858918866 337482205 613468670 462727701 185298994 659235563 933748295 233466984 530051644 885458499 778843927 779526464 476971803 418235231 979951434 924076287 873872592 493202560 749929697 699681855 601327043 831833290 700671793 35311395 254232788 350849426 233056898 931026534 974334617 616052971 769781333 866600379 956983324 444587882 783593168 127601523 213183899 9691489 754706289 373278636 528556709 130443221 610114725 725320871 358321781 99676960 326763370 110249555 831511890 310224364 269320062 31592538 107476271 203653011 403698224 980616691 222575872 851079521 239112807 752448411 834333559 983528110 894397163 609282856 284912302 84960930 984793187 651393250 806900396 148161858 958240434 276270208 364551144 285369868 347177436 669042510 35934386 407858045 995145415 468746226 364780147 467159060 597875645 467602729 905123844 212419393 752295944 44683367 410739608 400762053 696118365 805263677 613855629 175244084 486341975 189668743 389218951 291385776 405306405 788904348 804424071 37311514 596885011 831832927 48468550 166200770 847231836 148082445 416416917 518664917 882134099 193037020 317580494 888506207 769069798 928229419 188154941 23064125 669222930 145367605 642451931 328161072 227181691 451228686 981270831 661108445 633708165 646677979 953762953 535507552 870814584 734620572 33288332 845277665 375457546 807972338 904059747 63998417 823708188 736393841 764527668 419499421 991609450 781623261 458721223 845188255 563429971 473891361 357304442 158250317 70141033 230307885 734239557 613654888 125686917 523444305 231126657 133373978 329425847 447420338 556351657 747311066 215492189 397565638 465950574 705660808 342242902 241157456 740831519 889792714 816446163 681445374 497751670 159137175 888458744 721870156 225046119 657733378 706888737 193123700 712008033 377195915 925313412 766922028 383620200 658052780 502011734 924449588 69848299 528619426 39115028 548382517 202809450 72805316 917187972 188608699 820876679 156092927 343939742 771240117 498451668 370927812 348607876 989017440 388906445 840830636 461177288 913316861 617329243 849045246 563638489 87760942 518445412 363265063 766740943 551135873 559417876 14763693 515689616 453393226 347262091 590187753 884406799 908513674 279644530 36227798 983462602 706803191 967740482 793490291 103255646 959025315 807647812 192767873 796940309 236135843 689468279 314056317 571623642 380722503 527167545 767562063 916438827 326725911 904218757 819764261 689135377 641455462 927061642 90772577 284006503 883832424 541700601 807141491 141425396 186501400 214741730 758438372 46529166 324278713 322196680 130943108 690132781 102543989 812482733 332272964 694041224 388253460 925911821 712452781 871601477 603356136 601738695 159459622 56251251 456277269 790613381 909615265 11638825 515665099 693429640 799190236 469466345 423599524 626495369 212822056 844814743 942164268 948881549 58059419 515457487 12711033 493464452 72407647 102848379 484455130 501568041 180314942 274679684 752189114 510435674 80516200 635228471 94847683 282463653 203993726 374656472 808969285 364356307 854449387 266422944 963817357 211536407 142157674 427736681 348612052 396033577 787454645 108199577 517991532 905555050 258193185 83405732 972725703 463332508 598153290 47265113 581108637 627663226 757611960 301186594 505346961 72966752 574441962 754801045 249791156 644172775 455152700 736047394 333386752 159079052 395701351 917995690 569152346 715691767 75164032 142371552 313214308 306578286 2390394 57409176 598277540 626497042 831725381 716397021 419204522 933401327 624058279 513632150 486957312 522940985 734979422 472972269 442234691 241759973 733893578 790430392 993908366 722269068 712215282 239257579 480936240 689594670 501853557 391781760 43406354 343368138 508219921 492181505 16114046 587355325 733962718 918180216 823034382 199433979 898226315 484371452 310109664 705962415 633052848 421350038 728682315 295781974 812153697 115571423 951079094 216123899 593825853 451547655 657778396 407544851 209769259 804299206 221137847 580036042 622833111 911256774 849829390 127806170 721082242 404912277 563997421 293615559 325100911 325643358 876924317 184550389 936174697 975809161 511864833 808884944 912660254 772534657 611732578 800166020 283940399 604287895 455219175 741124091 739113990 794471760 846226748 720365313 737534598 964527944 580389159 254600421 980640076 44001952 868220893 624765839 987710971 142414484 879604755 123135867 710298872 681667834 672396716 960487999 398761268 769999312 861979693 391196037 694601907 731934373 274141149 336791229 187558877 964774361 251304506 796370508 663344455 697214300 341437113 860854481 600443673 289934312 643384609 866204810 172997175 759314537 261007253 669669824 677322280 191828334 707126395 496318092 959891049 489715422 889261815 877685193 282570946 439137181 885360962 502585478 660395568 892639977 54562456 263267078 923422241 249962190 832967768 685001446 898584090 738372470 498720755 171348979 476847705 279010877 437742196 913866582 720534122 287000430 428678913 540373313 341039712 687236894 287896778 611158854 964848937 383287326 552129264 800014276 117295747 252861413 530467961 554087938 445563928 153239936 38709688 63465062 670645430 500799398 338729864 443703641 634765012 67255157 261498777 217961905 900884573 607129872 349093046 523315052 447833337 44862856 750741957 651550949 353209228 532886114 828985183 513207521 595459403 230167427 932514443 60365808 904425065 821387124 301587254 28874484 451311909 322744655 410638962 865875384 158056292 855657897 885342073 326080738 912491050 971438 132277582 516824274 783328816 110952907 582050722 231282570 1018781 883648813 357229179 618115498 511394099 2911917 787077182 171061363 65551262 508610697 431755047 637145765 651303462 772573452 691751402 221089595 107850176 625127420 192225300 574034548 331935911 529095990 371607899 822933516 281945729 73708122 385547026 888278114 320859480 50489597 602563120 957817061 26123544 224760632 2651978 524750586 435096827 253512824 11958150 514812197 997737280 754526861 51659569 377541421 940588687 421842496 150635311 640806972 577823163 851368211 843026728 182404717 968614327 792741770 799875303 445480448 259298972 204891647 437525456 887640087 769971071 284225499 653199469 102169969 617156070 712316194 856249910 358726750 369912328 35402047 236744869 83425773 440804429 965396119 711158516 785908849 230875218 560125874 529582320 399000290 670227733 893329765 213037022 360926104 235235405 231174488 946310150 654804827 784306148 106411719 906492800 22841825 894407085 353123810 922973530 41083482 988109438 990056433 742931256 225591781 904201744 578350822 464866556 845504532 303124568 202208120 519080819 447076516 172282037 929138968 217886786 203290755 519112987 502725964 783713111 482873896 715548262 20620707 808623517 95405111 255881827 589379826 117060471 171035793 524165212 693381468 23637565 479106084 400896388 127158445 177997066 371261447 876224266 157069344 379777555 491844600 479943561 620124404 456899148 444181412 558243963 201263667 325398570 211355334 698624726 33736083 160902730 294076552 444663955 673151191 571719438 902515220 698387255 674379119 601893270 238273499 808910734 574278778 236518892 422083983 71895661 548063967 841109607 310578654 8492380 843663233 158339287 966448327 764620456 609441206 628275119 642367213 672954382 325219433 52321921 113906324 578416292 902422669 461779987 687831097 351366767 492775593 420399582 765414200 637052659 572341469 426704761 635236177 841204294 214612184 26608922 179582712 227021339 807033685 993436662 709222776 325479112 208066656 173179074 767228192 996995027 165593285 446805360 727504545 174060559 874093197 980720650 263651154 786431171 828109282 665078601 908762423 664871733 194948238 155074142 973468266 257912270 300726380 721882056 631362520 350345490 659039034 980451675 51682734 872314863 571012454 734182737 998798404 26109889 179222354 420970247 945524829 460936099 354270325 575706861 783528748 549730478 577342994 558190357 365337142 276452620 493306172 859223218 330196254 834745878 160304752 261192730 254282477 378082573 283323119 71394678 70160583 928768177 274485079 379684582 201954756 588585684 83145317 860047409 764645535 509680639 200956137 817031545 449450004 390035770 581619122 636419647 339120592 522505565 336331998 796426573 521843269 540205372 737862905 8201889 575780811 233994846 703625992 768623968 640250241 65573966 896951373 181305546 391253436 961746631 179764773 604091163 768434166 91680233 431474886 181929078 585957690 106144393 932949893 907931344 828517779 484889219 634883580 345281811 361884371 665619995 309340188 681063400 734899363 618384914 23225264 425396944 69557435 492216015 943153789 369146715 175657395 152129433 170176100 10293509 745923407 970828465 487365046 363678106 259822092 621890319 902892725 410806986 252127880 653879947 529493955 26482965 977217553 116730386 958763336 312197538 460379368 152447508 271168850 756346927 489877480 614884876 15799301 467004456 391865631 419049922 376792256 800297913 766571312 793957737 661981516 108968752 566301636 108591353 349757355 293410094 371780841 29343059 483492707 872888218 334746307 805989932 29482765 67193430 50074424 107818237 122927568 246293291 719092389 571831823 418600980 306052975 50764154 56977638 630710137 167066611 539425814 282494685 799318613 229690984 61023266 679511946 489112473 993000607 490221210 873044434 478338557 351047362 899527541 687040189 323390068 242512450 606030872 435641666 510381751 81679158 960098327 528349062 542232474 362621251 860619023 272646843 825178820 605620950 49270325 612903096 850213798 852130744 762196624 168541053 806968671 568252485 92030286 644943599 368337380 285495415 631004086 690746488 430574565 417827223 220435788 355501170 69748607 991204663 390783847 798004126 226398141 647740245 781726611 14611599 520495432 454033554 968307144 508054106 27146868 930163869 891755381 834101146 165580049 538529424 197626315 759581502 925338811 43380830 945525935 768926230 761495329 633714889 833065080 392967251 524968685 282972829 467758302 267090469 688714905 397538196 444329464 891656843 787308310 475762640 458686891 571636929 90339134 486065904 149944721 109967228 481427486 552884250 787059976 721181256 615918045 596022316 80337512 789502787 567187845 526548879 451052781 977353552 739738845 586685045 443943490 538207994 384305947 413430177 631151402 96369688 810386881 858292315 207552071 185128071 998751457 690790542 601852824 127354725 778551580 339189248 625942984 125309814 92623892 660220347 662633907 675521065 319573466 298642340 549956600 96197086 520744495 65255093 416612593 246012103 589540135 491445865 353015739 717828765 695626166 862870658 139963383 823445216 611441914 100359301 378448327 865519558 475633477 672515976 353280938 908410548 32754717 919585446 372154896 462309316 403905710 702219842 682928070 739583284 981519081 372934867 618463442 59837071 184242104 886715569 75201645 753667350 11526199 968121134 407468028 252618555 423068079 689373355 731159483 410798721 60994907 346327359 722034157 632724515 237873303 778678873 499552376 410987097 441736014 755506112 607722554 152371643 294290068 248894362 169869310 928299419 79334996 409805048 147530833 863329090 656871661 689814116 85537003 41442698 178444413 848504606 805584874 107962625 483945847 941142928 436409360 88271406 85642242 271103482 249648834 846274219 719813404 642458139 236583803 469621081 99047084 658942892 382779618 112142219 831597288 850408890 904025472 314545699 377207346 431201062 785608131 357449754 426148213 857370045 757601856 429807375 361102213 814873918 362272744 143295970 91135674 667680185 144802632 231035300 519547862 395005737 874557832 848449646 149564171 894682410 554062310 967933494 962248878 770706688 950971459 692418698 942100302 970708519 804815048 444605130 555695060 707295815 219132611 189049796 42458351 997671647 873079405 698443883 979161702 465230524 239003446 684933018 770833529 830669042 71650837 590994431 98635791 156786344 610698035 675851031 392770465 71489582 646195928 563722550 256156098 56202689 53859087 800046847 758333043 252188355 530004108 988884304 383968667 214464797 398220752 737384318 934939014 418858063 931215342 474726357 406709089 479915697 285526089 743828912 874340653 321741743 853611485 384245984 713739204 242433580 116216109 366067078 622817207 326836359 972393063 617246884 341323241 121386454 119229500 51729529 554405639 97095821 562843535 961201933 292361773 908374259 15841485 568730702 709696641 1873466 5032109 702622159 486293759 172217526 127596609 350522896 938795786 924659571 903819168 616040766 764146944 843045125 649405413 74290718 708146935 521528540 291749558 466594877 276898989 974946281 373644832 967181908 943806766 619325320 491468417 860159418 263123146 442817461 920530536 450371050 227186127 603537422 597808019 358106595 432072035 969887533 349482803 788358153 394056785 166062373 396108381 967434914 63375421 958893203 235605161 237939565 235973674 381970348 781109238 307945869 306146670 942211229 508638018 894635008 699035587 524631236 80007150 476620036 391879260 458263698 886737257 660830373 606994503 750055855 177134234 561394166 56553854 900040117 629258083 22496983 19796792 375548795 566506819 238705578 704834234 341393384 439588418 295732500 623884758 820756391 200002958 494033658 806643824 62298474 682150663 163527479 565232729 981962498 650276299 860952185 629837796 832483450 214543102 478790059 685862137 730611344 534194385 769818206 631244903 154449621 785242303 849522218 976496697 835428310 98265465 446304751 875660618 436179185 79720075 440738956 927682226 4825670 695116 739409170 223488954 535084712 729415196 407486273 157037069 30847571 932842041 585848943 956507100 831695727 615801152 217062932 984208503 204957237 699354307 391925300 938895265 837980543 872598135 387907998 780502593 206474888 134956674 573045108 593980147 486280722 380717227 107776147 113282610 4620753 835186342 779111908 64226619 184479366 357968485 28141743 349793210 674468844 382722313 405138019 781327175 753213861 668625295 594168379 149701858 213029842 116042435 664317692 515631834 496551989 464754510 903382917 905047749 288476570 484342378 444403598 188784866 86084720 1042394 622794267 825026179 471342091 919027867 207596408 500349017 635233329 308648869 639162590 943065769 704221211 596835973 572038117 135992557 550579869 921595254 214325729 329046756 693924115 412555915 939274223 74617630 43995562 281197763 49598266 465018518 451919605 935788034 430714914 118124903 860562613 446477975 536242956 838377632 772107478 193190398 91671097 922543897 49598625 274645993 974001632 974144935 162841690 870867680 222612754 281571558 876013310 608370219 240522756 20418012 235791612 882624992 926901267 933263237 654365409 890779434 629535243 140369746 819851768 298521134 123870970 205009151 450072052 196819258 559259024 677465291 634721899 45423717 933822405 122081706 75680656 920031146 277655293 490515167 710654388 487941274 655592286 858446396 996782234 485821228 102843038 625564789 68498471 621551334 985791477 589837643 500567735 975095138 829702269 29723096 343621377 268094977 171535903 732065830 779317621 773563150 540489886 633336265 495296997 491426910 346830261 441746975 739205640 909381757 444617065 502328055 990440552 237392494 15858073 965642571 571324126 745387609 529470975 894549410 699445773 403464835 983347943 907682774 74635221 693809682 129276620 99856057 181708867 812253012 36061612 992976029 796890019 4931506 162701862 576897574 585266140 625538143 135023130 187967171 348860797 245328735 530476559 623470271 74384276 980607335 76210500 703969577 51027518 929044722 744082829 431558717 597761285 802632363 746075561 281436745 749390306 307109100 675007403 554834968 680873548 423815737 973597067 648829314 67750388 962515818 68099278 768628957 539568676 513772612 441436093 892109924 459433939 35613885 732739635 28096493 961516204 632863697 574668652 549501562 250422440 367341178 65884457 624679737 756750866 416702444 638263526 810621719 785126822 480489942 791636148 579746082 236053478 971389266 558679594 592451893 789323098 736296446 217722613 587769424 254963995 995730151 163773741 217426017 988977783 352546626 555499601 195107475 99658036 134901333 956010948 857601440 495601083 13409782 597625436 810344037 942211113 689161881 409117663 478029702 142559333 63709202 176698013 969382238 189029195 584669002 601579816 543813454 959941587 761352990 169732149 79054434 470472390 148730691 53523145 127421818 558590188 528587745 401573913 634849821 242574974 748235855 974149072 745135520 850235973 601431523 236437227 263598627 141252339 980278151 598457491 573754380 294376649 809619838 197980570 516005851 688984847 123424360 845994027 341519128 641245207 897931501 460995066 809779042 491130188 998843838 785175471 55048616 762495381 370539698 891183378 306064489 820525390 800988843 348586259 567719501 54223157 916764046 127121243 621622545 905845410 225757884 288106557 598033171 516898236 498861306 554570045 808948915 281003551 61477412 481421924 771298440 232916381 505562851 704993599 288699382 825185648 115234021 247502349 999291589 594686694 57131505 226655152 289964080 850956989 600275844 232732296 403167603 181550407 184071692 349727524 312752613 153182180 335993621 522092511 79211288 631635125 275341947 740642725 658015765 600453131 774476854 633395376 819438869 768723603 970782107 147437940 325739507 258551081 859771300 812870730 697927344 140114045 112937789 88031398 582015669 100719755 96730942 962321892 568741392 885545699 86358291 600881636 907532659 860658323 786365491 701012907 912176993 410541976 247783610 88960642 914962128 487806715 175094856 219524554 95213950 728829334 374267005 551210121 936289374 5055529 344560636 972262800 495519204 965252108 756984579 513972024 837757628 188433540 911830637 820199896 345216692 983921786 20915056 628099183 970265613 505441555 821245259 193369900 395719770 67892456 864703021 609578908 831256296 508155402 690512334 888776837 931298935 325818551 886333562 16939297 24944416 639183800 961030259 118143159 26258502 671178122 53527219 551747954 266968277 471837874 424855724 863890034 897984211 990104751 963032098 503451397 736569892 178847001 133196879 828937771 846961318 572680420 36427064 102168331 272236612 942342568 650884496 369532924 311110379 90165888 143598790 212324674 784039827 691417689 900156026 382447731 478288351 23714438 175253484 326070610 806175150 36721756 110866098 459227896 171284420 643729482 749240069 954464028 38396077 495660904 268120302 400922207 324926503 985139651 357025624 174496969 859362962 378115695 200620315 4139717 640548005 768255706 501825604 726134206 19630534 324642330 15830625 14540963 238683520 769077534 51872981 80067171 371081980 55192473 495580912 73839938 102175808 166218308 550458467 564297782 475542039 18817225 354023325 838214331 814271492 650411601 155168988 986430016 827269195 128513862 124023341 181555215 453316181 414730324 102402999 392613488 848319908 292617754 901305291 874195946 785338241 799664394 199386987 319185964 204202180 491351607 83463647 441543138 813348987 204841723 131834224 258260062 82649311 209200199 578693964 808488768 130330292 405346139 931117982 214418205 160913619 50232984 602475524 395795168 312489950 929739594 124040884 331964520 242656756 939362356 612034380 474449043 363007342 79535203 262805074 157364136 398455530 90892905 18373070 826333881 290236265 312418301 539656988 343373274 541412976 72482686 559344465 462166114 1920691 9446354 572360055 140440528 397261799 508525312 625337913 817487591 32012704 178676719 579891838 889878439 840754187 909735344 266960685 164654445 743868627 511100487 559924794 315212247 429796132 642554929 438538577 341661922 245024444 28300474 646613287 937566247 317326671 322057748 15983897 200078635 582414059 357686011 445791467 145670395 522274263 643885531 377494432 355371593 189172197 428331487 297447888 197791782 658379885 748145863 820182008 5527089 139557398 493413297 671160150 813162205 386262483 336217152 595772354 302525519 45286255 918496870 529078681 105570922 211054216 236098515 400873628 682210154 581531046 97016906 401275858 220020215 389746691 326201970 121667429 652290673 701165391 932735819 638729938 760826571 52326632 498766797 326565979 642021762 351464504 737263184 502639244 264537765 609286872 518248685 64822293 468734065 959513787 631354983 178141284 283129105 392692828 18696812 456397761 159318415 454048325 577641713 977275258 603790213 460022890 680520386 731008630 497050718 460863103 785701501 241278958 820137734 181554353 3490836 162477649 584469253 789540384 399292795 5344420 107730323 12976720 497581000 544436699 455370959 167219510 578872285 157698676 693251506 532440912 769899886 25494539 729981444 878222642 74078828 511542627 222781915 743436934 61391843 99085099 368628878 1100884 449292332 576883086 889614284 605876722 320003171 761580418 160676814 330228868 492719466 721735452 508720937 577793809 309474255 608440751 533831924 796466162 941292008 304272298 868927863 805101179 638304144 445009596 207432603 746262725 876180644 552009127 999400740 337426691 118994420 531069141 890477423 200036595 791021301 723252354 147195270 894942202 602802304 639454843 312416672 924592783 754723314 849238815 445867350 450495617 953050242 746017876 709225628 986005252 479207401 551885101 896498152 333784572 242569525 842840235 477059827 638882731 311785527 631790162 616070299 406064289 534281770 191239991 942144370 85986585 511254799 435972660 778389497 388336684 959703826 815736751 704625452 840101154 378852167 541427891 20831891 707247420 663078259 597683809 752408741 488319608 533898094 907060814 299861475 469754934 577596987 466535714 342160557 367729297 773848321 513243877 367708446 851117108 389619702 459495781 553078647 664127635 189241852 615561007 587606862 220744763 15169835 610596022 150895429 942203660 564378596 199406662 951956426 877087271 970230724 577296296 992843242 409781318 765420969 432182338 310092859 837298255 781677030 307856868 325114855 912009176 329360908 197244692 651763474 363591425 793046821 599195764 162670031 883515623 704194934 909304876 278464337 484661784 188967289 690114025 817168311 951701539 106270755 376057427 742388480 668500555 286299181 917678325 329096377 338625963 463855160 192062376 995750971 517762356 375377532 28206417 733246561 831926447 57137745 985997187 827338730 370599008 98062913 148786067 391500512 536763191 849607820 795856315 116949516 193129848 42937171 241941889 951504979 614429110 641482805 188311320 664897800 939025734 256336155 704955415 378461507 987680622 537984940 44553672 840225803 453137916 127055852 745242722 436284176 261492236 466983335 298664820 842890107 964532039 96371756 556019002 722347242 407422773 839541488 768302784 787004716 349941095 759697467 44601166 693621914 175946601 498885903 175757380 558810221 528837527 624146117 926705472 80868124 129060005 939879971 317274445 348849903 184993204 51853414 454645043 640498281 148251691 174202892 877351210 335429741 284369315 386398846 145716715 937604393 499412140 993836848 104153225 509709863 769925148 400329368 561123669 837177801 613434884 423590188 844831870 473113884 55834349 623780194 309264879 484756474 390983175 433744292 806199398 525105714 382453374 382406930 289576618 542260395 893110547 495774986 31868320 790361736 328731841 119949901 418635197 27367039 382387597 412975512 38140203 143570725 579951401 633088974 947231708 534257148 503938310 903713857 508642035 492489888 629887509 511373274 180722387 640505787 167671167 398391117 907444437 913435480 494159264 966814717 314032866 516491306 324524828 735476958 946152820 602187689 834394890 313045937 224689403 467449411 459804318 231778998 339691172 326053958 993868144 614531573 488563937 219662054 211453463 208873255 139868269 549909477 98032609 676525728 323402081 317110405 784980237 793492234 474641846 172198503 782955106 306329563 770367763 898143759 313734704 58769464 16151433 108511193 917092252 890864066 513179738 766450897 30015302 207875372 461170927 117256068 98291133 974262522 653152234 676059088 736593999 140589162 190148232 402581435 447109485 510864469 322617237 64943009 787345448 206288845 261134143 600493674 335987491 407699201 826985983 411090547 229583976 303746836 803796886 203461440 69591170 336373398 26827196 681235222 338364880 223180325 641199927 518824952 597260115 476054933 324272947 195621254 442827470 186413466 993848744 646322742 836272786 361382821 644257148 841739170 813855027 815863450 586797866 344650768 618988758 125274077 658437544 404870114 125885454 309479176 419873236 907550577 699691901 487275888 562535589 896414586 998176341 98916511 569056443 312634019 700433283 964316359 994777231 631180448 451283956 851482718 974212962 727669530 906231130 219145053 169343088 968956033 916888141 952392750 16493919 613648586 121800854 959115791 454080735 440403525 821709315 509791030 1428856 913301672 779891584 796586861 771335444 681475639 228005968 282206709 767886148 909959958 508776551 685064552 460772400 500051569 471389347 376505990 9739250 846156206 311067430 558148996 22541046 56980365 184995966 676966716 223416533 139135746 889432415 286161163 491686531 232364425 869971329 387637027 309037204 697863117 359001676 446956800 426877036 432023280 805046169 499814154 447566327 807249520 372334212 370548961 400410103 286787244 392157819 429536082 752820770 153551994 406834146 898182635 229681702 239649052 450874359 55007909 613577321 727366286 313100083 378349108 500261697 672683730 936972321 249826453 789032283 618298115 703680124 200270868 962070911 96149746 213156804 826244153 145145150 61918744 468296946 180942900 666186008 576614037 164980216 650875151 829017181 885176020 316959664 202668809 664777558 769492980 178623216 101202542 300057218 578142150 132934591 382955390 594998877 91343854 713291057 147141036 118152671 242555853 407496401 179165571 165198101 905751426 501918072 35819522 274970454 17556578 746308189 595045128 958492172 399065168 319321336 778649298 323583646 251043517 265732594 523151979 69386673 543599540 979836939 271125499 431858065 97229043 922687200 53980751 651010838 576152122 430430032 493522858 620279352 973974108 23884271 815679718 909385228 226973915 690690127 252737194 639565386 403300331 997452391 911505995 778211175 855317241 818848217 411011897 979714718 171929196 320669921 671004138 319598202 531379569 525339223 473649490 438298080 483203551 790882277 648052463 43093970 129456058 761439497 609689211 991062027 177104718 756548453 273973560 581435268 503824245 18503908 91137698 841869761 940085786 340066637 716313720 162952643 355133448 607113994 983578131 653179988 354171973 665855912 151149886 449031871 676045370 803834302 247482723 425887512 901939988 252472286 830236128 973336286 481173594 460556147 409796010 108038177 167933568 487635828 144484011 95353331 468947164 316524074 374985904 508388821 391117150 23145941 605986983 48261185 188642089 642183519 957901052 807006627 130845717 23725638 848481697 371155078 529903180 768014349 449576138 661906762 570445134 763791197 569793521 62173621 331379107 688014274 49197534 944185764 220594114 140059261 99949094 239505615 807779583 7616543 304491894 344324552 570917621 294286531 81785911 995164061 215468736 427285942 583106682 93604990 486792049 713435262 370489404 527701923 84936934 246266484 485937522 341087477 784257295 946368003 839074726 584961409 619178043 318096565 583470458 345627892 921073940 874314058 145515051 409926869 819063826 213328283 737425460 241038189 728267948 258144312 796786387 357512840 745879378 984678830 699293040 511111688 653380319 823480945 383677468 508492920 590455748 928964114 13774789 671165643 236866215 917416777 892972729 94197391 57804134 303013141 437782110 226038689 689221821 574133888 871350318 617313921 830063321 297002349 874150861 408954206 809557030 819359649 124068689 740954967 935810252 363689048 847514350 241859298 191681104 208994284 250888979 490397768 182169450 852987869 401631034 120662822 435409960 79556628 322764085 179327878 722942939 15130534 395904814 796405496 57791006 546135281 200824852 923759519 356575528 96079492 360461764 487795778 497421995 543082309 324469666 973537812 880148528 493403265 523454028 162754312 972794005 295110346 948852121 935378203 110012315 799771528 482915139 573799243 404910510 361511124 342150485 254115453 278312469 37574231 3632196 520266277 470547241 220009858 585549609 890136340 535219637 822045515 402505548 210707830 490121734 231208989 220654762 428376521 678196298 325336950 933240857 271697938 835816810 541802854 284746084 807412405 436776931 536904641 730256111 954994828 779241885 125640132 887597433 685992696 521435862 105624460 339676720 136570174 710385973 97661534 915813562 414063075 575875246 931868766 103899727 850143237 391348823 861160710 317740484 425562624 285742262 194567486 913506550 805087741 271795903 609473049 997556915 152583451 354802234 194758501 828299186 320278879 535960992 100292808 932160600 625353107 673830448 612936106 210796204 493073898 847108002 999663519 191895975 830910567 411639814 358638199 623718473 226242369 976623572 951152804 38639470 3227051 583214611 635288685 662794076 963018152 153662234 629369570 950064397 666476568 855739340 652878405 291449711 684149208 744245332 310075254 680677308 614110490 861982170 462439170 2963478 499039270 256031083 63280076 764799651 858962789 543968098 538778851 600856736 58534025 88667373 552441719 949096016 629669281 383844656 532823600 188749216 398896100 172036489 726077228 930316595 163880897 261004207 397165221 170400949 906311568 17125954 4097650 910480999 105715225 294776380 769654601 35028115 629954751 870772506 289039133 182321813 190126682 737325513 42557542 484582693 617714734 99098615 936119914 500018088 490253346 911790221 379882233 982061731 836079280 505608925 647161683 286064921 242163180 4639434 570628137 196001160 907709432 145155767 488878482 916254275 13454679 112433976 970453192 609855003 375449020 706588298 859304844 849283955 126215686 170536759 835085700 523400150 494697145 594700021 490230468 194688521 741460310 63250185 129482270 95002470 224430199 479688122 667889084 857602073 527580403 159091882 359091703 419758371 480667868 671185148 750409820 376554680 989761838 185076798 171791539 287885859 501636412 122018498 622715429 578579792 399028091 632371663 230475254 982193833 439186326 983558813 580751399 877249616 911716741 828762403 64056929 850634061 689297213 348664664 276498493 799312575 916338756 273614489 882061427 565091271 380682824 108083026 380688989 461683373 631868247 691990405 203950016 887692041 515661319 128398090 492902134 529632743 977863160 826833908 661439618 625450037 682854977 706556263 76715588 104517380 869939721 506635159 522022844 753719890 958602980 869091301 842170569 441796203 921104597 121273985 170306395 682442762 891419943 893593375 704398621 950837877 268978189 110647173 115757418 437139434 445045135 538644605 187295676 38407336 906262354 295808950 58073182 670592623 385817381 70954180 888961761 361006233 833615569 90577274 757838555 944937772 440442345 785023631 311043960 484894835 466555168 428488460 295906470 140510009 870316746 880648023 246696982 371569256 730168861 848212099 786931688 361454126 324775353 662342930 16991684 786931133 720730652 809051065 723682533 723710188 203266085 906233783 736637591 564720162 904527873 853306556 64769230 626204707 396312950 172749251 378446738 817842142 646698514 184056194 204359114 412629394 341622278 133765718 913717583 642314085 678571080 904474469 824658409 538696181 947573443 105046205 65276147 216395492 829616496 781929396 607934963 35056399 668249515 998114566 54015992 373375128 71058950 905874093 240237093 204471716 189235879 548679287 42144737 691633940 579426994 266134399 453545574 568478318 204629329 732273665 796939546 508047994 985928369 868248352 443284727 216026924 569112226 385483364 581948433 936078534 143104483 68097685 6491256 689667428 660154892 261080651 596658827 464274416 118983400 994235322 600572117 793134947 283979830 168614573 832646972 378944885 328032379 946414463 865686558 555723535 122525220 190681428 334053186 683609759 519177235 19229796 248545918 355914913 150036713 621065208 696612278 8738437 431388724 160120670 501196813 456588488 148184409 957398246 148790540 32789649 551654792 507993469 400653186 27486727 322073149 701145298 84258434 229738289 876139934 771744911 418187064 329940410 190903456 971531906 454781832 360121295 551162293 510035770 210687078 360531824 273591080 345627256 79437888 15949314 554139460 210616689 306918684 223705985 271953403 395401177 806459515 254400495 861608730 586442943 717119668 40366040 439388671 94792977 787358034 969491569 215036187 909859611 387934701 243822910 615642994 124444471 481071533 642692115 857447719 422487129 794649354 889349055 972573373 866610942 117758464 508949266 612499672 355285571 160496258 853925171 51380655 204327496 659152452 549320912 36185484 563445723 107122917 673770709 836573278 555852896 70184382 248187183 744644608 363500380 139920096 263765087 249014320 240246886 219059710 546543076 609491193 400425369 32320762 531591533 717073961 455007811 823308677 743713867 540631976 302603645 292174723 208519574 963791519 339451097 966294198 506711411 980072997 5796077 773542051 795199749 819867940 52441879 173275549 442213176 627586829 319794007 353809289 726800361 705028049 639610731 775731667 220887852 79263879 849814640 657461302 602166036 47419318 943303766 605166059 135910437 998463047 943799705 26260990 701131845 961460705 43424265 762905959 705385919 938092780 235013880 515053878 887799613 97081439 357372446 762268757 65690369 878413567 835203105 417308324 874309253 774787442 336488459 74731323 998630802 391854520 55079369 59540835 562235998 879971283 298925097 902665779 141326396 572010433 373296287 295276206 134485375 406629421 144010204 53846044 940055024 243179217 533870111 146653661 364467339 650079048 119428312 797908230 302545043 437282520 558328306 930453519 804773143 735836797 698061987 45465523 687929473 988061070 545192030 425897501 58502702 597046154 802918691 181325203 634996810 206008743 623145536 512786397 147766666 828539538 240339573 137264100 201804464 455125148 830496650 678052536 927454159 501205311 428353216 60177462 888851018 146224453 393934492 917029197 44421964 107849708 217459466 930990428 559154866 791495580 116967305 478037979 701006330 648392190 673987910 171141746 836093812 159663679 881183527 780819188 817939371 468160819 76871574 762584905 723355825 246671764 907793974 865689483 592269913 331907170 193213659 288231663 207002344 173810918 581000053 156207445 519250862 986630540 211953379 845149432 7082404 650807916 541854932 255956483 220072881 776236814 364732721 234836775 176100991 903945602 366665545 265308557 111268029 475556876 43186526 356088011 601611436 223295695 651791712 779758285 61902740 537207799 697237971 874503857 895319158 910772 835753712 415253203 82317645 162124515 667522874 245824085 335422678 609280914 879761183 411842003 813946670 70353935 159351517 862068291 420034153 435419802 731138077 822413482 221232524 507218825 749728659 361727911 630633866 639502382 589925650 196867491 90373329 885382911 235965705 245606313 930898925 687206751 82679973 796157113 854976819 660451602 696265665 851992567 834579596 914264267 42633192 648575059 992488769 811648720 576455691 547128581 102103274 459073921 55577789 806445933 330444048 832267772 550300874 106469196 522068827 608884740 192882633 501632325 901616136 599741467 856549811 73457696 890680604 154243484 773224059 239022902 270636608 487206188 771589339 788306618 667360403 43922146 476000049 670988501 173493607 766571985 848549191 159569334 110582700 402690127 933499727 764876459 862141357 592178833 169147269 625505518 462109911 374650994 563510052 85070107 155314404 67736991 615444629 249041833 276831099 482768294 630689417 365593423 888622495 880848320 563039264 964070057 922338385 631287395 235783313 875078906 207371768 892906585 188978431 998616042 603623613 639323438 205627418 122575746 931215885 47197799 175637700 250289814 201722926 628598024 303235964 589648441 503186179 235160854 461676598 641888143 684993878 262679477 986841359 593498215 147457265 298043557 908150398 633764539 740386758 963860989 971141652 189532522 183398899 256555735 303431832 23338488 885246503 452068833 786704654 433523683 722606391 620837658 203311722 524831846 403214810 644902458 218557116 348811511 165841394 462684060 749111742 631955636 989444581 843282296 560020204 638869340 444640978 291300101 972386699 598653726 263180277 619669618 181782303 174254971 649448433 142726788 859077404 756421589 143965339 821740865 762040766 531857208 625088239 68349271 337521246 215196085 306194229 173524761 824187586 685156901 348498931 928365872 288623969 773722720 261293602 942866590 862123776 495692712 508206126 228269608 726660965 826911882 67402246 939947644 421554484 983784059 300474515 172971607 783425782 469491712 684551200 512663481 850228683 292837736 97007323 715034599 972627945 70247945 886612355 81312886 56346240 735253997 31722995 418574939 271451855 178231856 958766182 820848478 326158719 408736400 393482880 220606694 510221547 121771763 663380012 927984580 179303978 989141656 678400330 313753884 480924578 643889264 572813796 761822057 319872972 196006672 184269003 567638894 627735061 418837982 581650333 768013247 394989325 999250746 690621776 95150879 142532927 264417655 142381508 758399806 136102862 867860793 278070371 874985350 593580498 855439263 578230000 216774142 189255802 41334892 716487875 10295686 459598285 290947073 666724033 249233281 869710047 322795230 883269193 612675757 592236833 700298534 978946461 309825216 27604173 38613636 28306589 696302288 828264226 149501060 863533263 10655757 728959535 796216808 787433943 375489376 890782482 940483457 573832665 836342560 758338549 926478294 692336695 833242133 597584605 822143714 156040720 51686806 792631294 945427937 247104948 215397814 879645425 517482938 355531653 685480690 946972302 46667659 678745541 243441066 215547140 188446159 377720708 832551715 44250122 989502662 452373815 11565913 816924060 706402149 987717104 946057951 728591679 531405289 251226166 987927817 499379118 809497498 398280607 215083484 545046038 589901370 420958466 839577903 581164488 123562832 950121313 648438141 495877568 349899490 696551298 221253442 891761289 712803469 806644182 143435061 477178903 311152238 718500563 271187628 609844716 812163278 415677297 885656238 205124556 23468052 893644901 218042922 962295097 893982578 496322122 319943160 90412490 841598287 572870786 222127158 246670277 475259337 981035665 827318335 446026420 372046953 860777951 919410945 32410727 773162724 669929407 51565073 595534059 347199135 49581298 950095275 552975363 490663591 338583292 531785572 38357202 369718078 800028505 598628462 376735608 247900565 91532468 161690579 736405798 645484519 255444272 360440734 306248052 212171637 830367668 723020950 387457548 910404176 982760491 125585399 430173807 966986288 131501928 125559861 770639028 222655396 254918680 950655669 31750489 32820713 201871128 810933163 24314413 895616106 740399369 604072793 259327739 401239396 112953201 823407967 469527826 431196681 864264614 516293519 507331803 690583046 778237201 953925657 754272130 959984513 617483840 680748322 989470533 253393584 123146280 72085207 617270727 685978544 629349164 773152803 263488619 821157484 239858022 49289448 922587822 932114774 294701618 417345682 151268049 6613317 203576762 422602126 51810197 983657257 332820691 21994066 791646104 682264015 280464628 676953696 786370961 549808895 922717207 740912733 11712603 287687056 245956127 491732948 778576425 167903241 678440425 366524075 837310926 499183102 359818570 187460405 633813292 298338029 52130517 93342478 206535314 115210536 612009879 154550506 217550766 691509982 105717452 194035340 707429232 335136122 135607162 114283117 605273767 799180382 547129549 447260714 602241308 265850750 294685834 363014170 23866587 524922034 843296511 18900692 808289780 857577449 987530783 119023536 807850881 119639821 486408227 229694680 413408525 363528619 828694416 619639215 655200186 885007616 618500061 93460018 252831971 556077525 198631105 540928877 916269942 531685576 188516775 736992836 423654439 492551282 280192683 489702844 169982329 616266961 723068897 525699342 912146436 691204164 516817934 753930252 588108833 676324562 445529296 158093797 219339418 99561147 336462875 646687231 947741263 221148612 648804433 995816157 780587389 57304254 271972192 63231021 904764497 531438387 13096390 59717503 115767652 98229005 693233962 665208747 395629132 767232300 952839080 633715749 884968921 605082184 77030364 539507316 11075942 93858050 396358866 273047309 353075360 314958023 815509534 653411512 663119241 772291808 153869695 891246920 516799552 96024579 385778304 231886393 849122487 535744065 20644532 659814095 142418156 967634272 198404521 317794812 132100094 425191769 549492401 624578764 475555101 206942769 498317101 676519753 732052974 643338511 724387445 428941790 38821247 703169192 929711095 799850343 641763675 732294585 931495132 640163621 202505986 71953064 76151345 314959784 990740738 916019363 787459080 179363278 582052836 444471731 560717188 848072264 888219297 794494894 949989764 21250773 576108038 876056467 396965295 601666550 979003400 664537217 556361131 933388700 343800740 549207140 723076057 373016909 142558659 187992839 802197403 798988607 474054098 82436244 728621530 310187422 405648724 252902137 222833233 319000496 661014788 545224947 897388147 962162963 462477522 338526860 368587296 299370745 253104634 509993135 6677128 360690659 333351704 375369253 559088512 199702224 170801144 506455983 186108754 672278636 931356248 570649565 364722510 944618820 626786376 954557021 316877297 319881251 241511453 929036929 876695542 758660646 325548244 632469324 379743556 120928155 220217670 684702725 265943377 850745214 100362088 124971015 20332114 308665007 794357444 486931989 805848043 290964905 390566727 294381600 489556493 195865023 126842190 444981315 743635648 941318558 484124703 644667903 764657159 25677662 145130757 116675328 333252237 189716166 38016385 840218745 87655655 292629103 358295773 389420782 230637149 169672712 286221264 458438583 4568575 753321435 336116477 334423836 582462024 117129549 399974609 358316100 415128197 882318995 378714589 692654412 437301606 614134632 624347177 421074408 156327275 834452029 121254549 333931533 959603453 778861992 563336428 111236146 220279026 990986969 523526510 769993297 754230983 812204253 944348140 196631795 881604188 198239611 199919797 939767158 707154400 532356510 503657184 365968199 922694683 729951914 866465282 392762637 297366067 33455871 65451659 178378582 351203792 570488390 206320253 246713521 564661465 211286616 695129552 466567525 589905578 11560790 86242384 212098068 358190027 381092814 983796872 680653300 31637999 234251032 620720296 727942419 869689450 251093281 409275078 915857124 590536209 951517780 209913136 650980858 951372008 555884638 555781622 378059722 397556091 188805722 775021497 575174565 944305917 731962309 810478412 751274739 602906639 981660752 191745558 90240285 279899320 168655985 217369660 425235662 970121833 689921774 118363510 662527795 40565873 479115110 829190106 577800274 663885241 203921638 481863664 972714106 811554040 512958233 440606532 790612767 364500468 475161508 955958326 50720170 50442149 507087078 694457479 352234963 686489515 74306305 659766754 673132056 111343677 151716776 935500130 658311555 793252338 92486753 182000107 944259522 550661188 71633373 788366416 739424496 358413964 111025558 871568643 285048734 171450568 72473838 494784456 231634235 408687282 350223897 916336515 790251804 303743253 797374104 402122089 442978967 96441108 254208768 431718398 168488945 354835938 798649272 372977632 539054440 111324130 378480564 805864817 765518833 903596114 431337725 927136293 5939706 437945411 891352183 855822613 689361733 429008928 853057218 717236218 30517827 631500665 51414513 136343621 403187595 15883571 273884506 383708720 317863191 906453131 573749169 433025355 902905107 123018120 28267919 354975738 879613934 434697746 894363798 369133760 153978315 335199917 287270831 610410001 184245667 220146827 949833060 983528961 970452274 908726832 778411137 907212125 153315169 173247690 353785412 311870127 172137601 850919116 194003819 295739828 682325431 603725163 37427435 322920473 587299088 708601579 876213411 710730767 913687299 670488514 101146896 747326775 407510634 757699659 475837881 60254915 548979553 520563406 387632458 492993453 720538336 159319642 767445540 982900664 467670934 631162220 19519069 956193808 452716284 690073627 766841188 262434549 738939768 702701209 462749123 281537175 758957427 34204337 856102329 607635485 45861630 878726676 19121854 276990763 636168061 757181388 901127583 988604413 599529928 257088275 979653380 489975311 151027566 772675861 49703067 863649251 327170156 839320582 739345879 393473323 81769648 947220316 962697777 485147269 14051231 743012481 631419836 994017264 812197581 812030142 193999329 473487522 966617528 36277755 182875205 885102028 194090463 909170143 82337539 415276090 744079928 482562557 63537977 945599873 552598605 837008743 222405178 180631461 436376147 76517958 883552201 751429169 938093422 591471471 376631034 887603744 952115990 393005342 609232539 555038614 351325328 741481821 105305253 438586501 114440084 510889394 264791280 916718268 917411105 5336062 593530164 393060821 444369982 626859608 447068790 895900758 626065386 526894725 625745896 858970025 14703716 896239243 25007549 608282667 389863060 83305848 525666390 6466184 120210199 261509358 207333872 198537897 782189063 485579795 702691054 498971797 853832219 889710596 37959939 165063221 651156594 929996497 441563386 704748647 443568748 361425825 500019958 232803756 466719906 4160518 573354856 668950912 866432523 758304042 463453809 989768586 181795470 691614021 318669124 404290472 137825273 488818374 601999386 212180438 33009386 597607378 60025771 999305274 471081613 105774264 21635948 243619415 89453316 876503217 87174616 489630945 544324576 803913015 978672704 448466975 135419488 473777588 429055910 971999836 609494031 841216576 497957709 338093126 437611032 330911292 225709802 818128465 195789370 350410942 314757423 588530198 171254145 711426260 345952639 141797708 273857276 541147938 433394441 127710180 729098684 64972620 144382579 638199045 105912086 56418561 550859173 387899895 244456847 669210915 832993624 599619719 864488135 555845066 65238387 742406367 183235979 289984036 975830529 793467594 71955670 780262882 378810086 524286799 539598337 172021880 561985535 230535956 99635506 230460670 339586591 634878293 685944528 186931944 602935672 549776058 121397048 235049753 457889302 30046077 34338350 374757662 160089513 12737226 717445697 539944568 492676496 869568774 52149643 699145658 597382117 980750612 713196 175492761 352414949 420380950 823177340 768607711 136235944 672070839 659821982 315534930 310130820 460671601 25797391 979774588 602456390 91958748 866490044 64647848 884125755 59847405 980760038 662951968 779812398 808553820 272371570 361890852 555068360 130803778 933074804 618855355 760029533 82100303 744601088 288101541 589908373 608262411 370896004 206067455 607765335 750027507 52457174 112143955 747638400 979473979 75766105 376345360 163361687 703099320 225795976 650972481 314174190 160917678 773465368 266217889 208117863 484947485 490970687 218068057 767387536 907622967 79296921 493038886 665202460 68160599 669266546 234253938 147379541 213757747 523554387 886189014 178305956 332546034 223521644 96231504 606351286 450001963 244827310 867654037 428032424 746058205 759404040 66761708 453828754 650689630 694248342 736315842 159990891 274952791 31170961 589141381 487320379 865674778 145361974 134482951 96727776 465822023 701837860 131772705 72647791 907905419 722959357 649960175 39567628 707799375 66630275 168434246 337184250 923693677 236884830 765810013 347009545 822907350 688956067 930248647 97887897 243619722 863966539 596232360 858740031 630002887 970715122 414477150 991562374 383519005 884866240 27620035 761341419 811032679 579136263 312802624 961347114 357837539 909964547 947625706 332513794 940389983 200387907 846659418 430165839 786853175 168068971 536177417 459287036 642197800 454864141 939518716 825536649 547250114 594346835 619353930 112196970 309965878 159765427 660560891 489004200 327193452 339079806 306579330 507360444 924483245 362337237 880145844 396901424 484186057 297030131 461453240 619052965 645042192 588779767 635241278 380717395 482525519 603143285 50053519 177535804 267588032 35003906 154015903 396344995 54332960 270433208 537980817 804382922 473840071 690678893 92955843 197159536 234654971 713145786 58136929 485779574 631214350 104484535 989136966 980039739 445596549 370378190 567782299 591648093 991314792 12712625 13468007 370852460 521903861 134202447 221215598 14125697 645111312 973308858 907520953 544689452 27416601 712043728 659856305 582212558 628449610 558838445 848030750 179337794 367782048 801068302 974428950 847271121 84376813 617118380 572876739 395318713 163950066 538651145 8231723 240757859 242477968 54645334 356070461 176513369 257280722 617587391 540738850 104666799 931599368 405922105 85487057 355110715 69123385 234273040 910387876 379426087 152486780 93906982 194250898 372563700 448345721 932850276 723890458 912344248 567890517 246256624 634209600 846372585 260970231 864561567 28323239 839220445 671895741 874132429 794140274 553588846 261386407 404311352 119283460 442042211 827464070 950796186 177427662 808656629 195617294 184587911 653337966 668462834 725755094 213869197 788906355 498707522 643452827 948705638 605010903 541309999 319551479 931178256 857747945 403371146 12900393 789967507 815307806 258651258 528278047 274698800 346861921 789800891 827406945 18645588 180385364 106061693 894439055 433684058 734040552 115015894 148484399 612934420 829410433 793161620 118976385 164251644 942822401 751581334 255975985 371356424 889899440 712671073 708241791 483797117 467640168 638692505 625743546 494124822 283822414 292471169 934712067 912632121 841099851 282868970 638201511 318033346 607849018 503654271 515905100 437380266 595345808 42933117 147909193 760118752 754698336 704238767 89281982 165138869 996235450 202444464 332270710 646807719 38505528 943070921 316774185 80687390 937765003 948305005 116359752 804840938 839310935 356032738 762792432 290704765 77310529 229816661 977449341 463377487 802355730 328323765 22905980 518991550 665935417 176247729 581492891 194307764 62484390 540338754 748523517 511722818 795536004 552110674 60999020 231125396 492292306 877096020 793177816 861535097 150361297 993596105 238157374 430200603 886188490 404143798 665664952 157121818 77115263 370579364 295106622 782907049 285765037 471187769 907200968 101392130 757593980 467077391 46316195 770678373 677954351 533364433 922455645 462230171 379201000 825237277 668419027 362089039 85258955 320202581 611810015 233442707 757742646 410218743 705669523 424331619 412771266 232618991 184611505 550987815 858563296 21927707 287236443 193505719 209153492 956139898 742010561 986911246 490434400 392908654 748818835 977981594 92379437 853519337 984522648 119058420 137813671 946797332 203407806 955041581 121250774 16539637 781918927 683872836 284512934 459233576 158303572 413036347 108705883 495946850 442957680 329255202 204126142 619510690 602188773 918721594 427343870 539988220 914908422 456925947 642919386 493000438 436407180 223965873 129010497 272773584 677720019 868461676 407138922 761572719 281708897 431175559 295496272 387609987 882722985 527487953 858969886 831481701 351023957 403770114 615624169 998886069 470646524 41275840 290532578 637054404 509411777 993275947 392510491 41592843 475805275 812477554 961949859 542186629 482915830 597515008 873218995 26865517 108382456 799319193 72423505 18259082 808691933 827523833 89835651 340961016 371531620 168745690 554516432 443717567 533881619 353526539 36302903 725098152 387756605 440019917 490634555 762731386 676869163 480490067 817665971 395686987 908820244 109894449 457104682 655980885 390761991 725256766 291203918 814462436 791769809 802026213 367200960 736984771 332682677 868716747 746001398 905244665 679833094 446054338 66622253 79874440 417815019 580060972 608263135 974421454 658555426 377209978 343247078 552717870 601604624 871085214 791489125 709031417 880523469 506782186 643801410 830295097 607907591 493560746 285893057 447168138 972600937 917981806 725338883 937187400 397151581 219450643 703405587 98062205 190598059 475809483 271461058 478813842 629432089 990612806 760735475 834293029 163635824 481606016 875055162 788320526 702636726 889732917 350004892 136447296 205239123 75115633 427548765 408088748 854929459 821290583 963565168 279574599 53100874 972285760 4818231 592594355 166192109 669810135 815650455 817286124 389424569 248344216 967630544 18664602 911206900 352228958 501166780 629244924 415631607 998594657 336455175 905561331 132186313 502163808 563697046 382205464 677820422 674769787 629447715 470444996 769529608 291577763 188199510 160534540 467182793 31000662 280580112 457308642 260919463 162556238 355265044 138225983 474247566 906299575 961256239 110276484 937905883 573821804 546247762 131594126 505164857 401921144 853383890 65382815 29427642 834707436 630265066 477696302 695918048 538469884 221605716 896199243 244107315 743422725 201658670 591246254 258011918 189063313 283829278 469804120 699980737 654152174 437720292 393005593 653424574 976756261 439059469 104388024 686116124 231041837 334846522 856658794 726203484 635632307 593524029 839969930 963648354 327689573 617075582 954624098 576777898 905597702 449364049 176759694 350311447 133699186 412182200 804520633 754339940 452447371 495536000 878089201 366465790 858355960 92282363 28639235 382934117 575312887 373602351 758783723 248317698 951936657 413454241 754385811 861510150 107009028 603888908 701987773 954266008 61972582 332254060 752283255 78335186 702406499 632722381 364134822 658419055 880694425 958159481 453505998 485062990 877844901 120010850 313693346 422986798 406058276 729206241 35683291 632095086 723215378 163382435 119534644 100642482 373491391 621037062 538142713 923802202 216914684 36563072 809291442 371802705 924319383 427174379 376232946 149961154 804414999 285422923 656242831 369931225 440648858 672612369 808471031 943782546 627054628 125885726 7623774 910289482 606730821 2455438 640959520 437757320 315107354 692471820 435088478 430581938 81609509 469720787 303797156 832404730 137383561 417693478 310437721 435300513 727871426 38059991 240883637 964004312 772648812 871616237 416196340 348681948 686424764 209380331 957492643 33053995 311871241 925913318 675977325 34140617 53489691 195576576 171122836 828141154 204729633 466458541 141407113 519570232 299770886 342486634 368669626 713057721 509229882 42246657 117123817 441107088 17368935 854875721 612989163 86386084 83978532 527494843 89560599 263122649 792450492 310660446 54008587 365608434 29787319 525130462 54680027 5437251 634710094 747268415 364765755 611068057 702824045 584624981 964488715 763147491 89828032 557982535 236815140 7088630 947230350 834074428 447295617 418569581 183285878 571801288 281880133 179367267 613302066 584499543 111306158 315962813 29381758 439538883 956505921 434464949 993486951 166390411 779049741 655357170 665026719 699480248 194153494 908256370 586762902 577500643 495421544 739367809 540335074 460931260 762829959 763799153 417414004 28521677 32714324 272800804 379088503 828594106 700583314 63623647 580774914 990569785 536656459 196430318 514371178 767032701 679692299 672409464 368616738 367355774 678150165 266777591 186565414 35636740 482876489 393827840 774550288 88052149 986275225 186752798 807416932 72396913 108074095 513675894 224171224 960957878 940292341 914972055 620892944 255903997 283258973 161103313 101546507 648693872 336136001 138407921 803146667 756232351 779971395 292379061 376118440 341108373 165889574 248479071 434800473 887520289 324609938 823794165 931198320 47005435 346924767 63323976 494696805 3259352 699885431 6216319 57018735 745445892 36742669 97185905 670989174 85844853 234670420 860300106 494960114 571778427 185844283 415481228 222200953 366580507 572465766 499586812 175448220 511800794 55714428 153271799 415774024 346367426 221721983 182182736 950921399 995553239 635421491 477630520 187673436 116966646 121157171 979149196 319506713 319292467 301219631 328968300 223874850 463488660 139896732 396268841 550945537 65937052 573355013 121482787 591425265 548658633 264399339 47114843 228768312 520598040 761881540 953553007 920902814 854863399 295003881 978670242 93819986 644091190 545553628 598348563 16263821 184427811 119039511 812885455 328537599 940345569 157050557 533948210 757768561 713485506 117410887 699986032 498255731 547626142 811278450 488406139 863721733 162136087 428701101 594143701 864599451 417228315 731149565 118659158 429781065 380047196 707219087 260764728 713560660 12361298 368678198 613946482 40339576 348051748 833914853 547352194 884342025 883853948 757231201 118885632 760459550 971118529 802303953 386348923 535956404 427428003 551325407 989682285 35045415 919836392 825171008 634766036 445781655 609909988 643175423 208291119 618901312 12110308 870319815 351398852 827750157 77292131 404881441 945894545 85600307 977988343 518364562 359115758 305687434 716903782 919261593 830335849 229165304 338439178 23048724 831354010 933751915 826204805 94210018 915476049 856368618 758519740 419007945 184031749 664412116 480563586 105773422 887715583 798356486 713018198 575942561 290522965 31460903 468410727 802191752 721919257 243614745 321819694 474329657 166667329 387845410 946996070 229520621 66061816 582888654 558366297 413579086 389623226 711038388 991330334 750854722 849340738 141771982 946977798 738121035 151216231 959700545 603865754 602678325 220764552 194729654 670255293 713898285 724356612 117114019 725413331 442147398 343042235 420214058 749533744 624695902 315806459 251077259 369053096 67070110 69535051 279488545 177018161 302708220 330362084 394232092 545248939 394342059 284972844 16724341 2381175 915549926 862670512 357340921 418846433 726435220 321478857 239024574 342421601 68067636 120795722 396197712 410766052 165340553 979149991 464600353 748646210 175021705 955906139 233916953 564856466 686142453 811670886 513963907 846041549 109531451 730238660 122333741 649241866 426503063 916586781 470580081 813904176 117731876 285398417 569668548 108524992 669214304 926052282 487211901 563793397 320022613 943986179 660407873 708473309 737691852 83060529 800357033 573471932 442806051 117622610 448534988 367081924 339606435 200290362 909025587 436602155 280990524 904483978 658912082 596054899 323734130 382684666 730136023 848909162 635104056 112671195 133158970 316319384 72597442 884308440 537145918 314348546 910099440 302861976 249916358 458338345 327869792 289715777 532785850 944464241 90877957 174350040 514901734 141869701 50530048 886566505 891542547 448238996 954320027 332690201 844851324 901251480 865479181 636767135 361780517 159464376 245728590 293127239 41292055 566720883 250023701 924153181 987058780 420454337 665029418 840434426 861522025 944283417 532712216 282868233 557576398 777296951 130809136 214998606 690761626 196629785 929651234 961794945 812212650 178694207 328034420 762828140 66197250 424777267 149151112 154699043 873632444 975171935 543055356 967949884 594198712 207752758 108071575 753700801 229794048 206573079 421995786 789984247 545687436 21064813 76625316 295778908 435744770 88270518 199842323 250210413 272831566 288550463 199145469 950145084 77067447 459644419 593270574 965105284 995872452 630111556 81034324 536978817 849596101 640690534 333105282 341302949 757817259 8232209 450685853 725122010 997542179 746464214 888918264 506667487 900207105 783902267 446971780 561477526 633330422 565346896 11833627 383576852 970213063 57900457 500289771 24245679 954966530 97714816 597493315 778013003 319730797 928487243 18821595 991598808 772208067 558926040 255423006 311908374 419817793 354932908 421938496 665012971 597348080 822464903 707784973 982697730 687347275 974635678 740696677 108967699 510955682 199244820 359214449 731023698 975478484 556005698 637610122 665332567 599302866 332183240 946902284 733508371 716762464 295961298 884302666 718401586 877885274 328547593 299958510 2631985 721831951 346339681 638525182 704494411 927573130 615055220 349106022 642012498 597254939 170759079 590423467 753916225 636206704 619631069 279050300 731083477 824167904 304420576 111656921 765919515 602273773 731846464 252879088 461782789 676796479 282933615 724317599 781111988 4912309 909573169 240259528 758200903 440787080 69894009 324588811 919890984 408076299 504968792 461394175 764106629 220135324 632024653 756020490 646041998 28299235 301527018 34048714 464117405 510048723 892592736 286594098 890144119 196445906 142437501 409460368 363702391 109555002 837361727 768423804 98467968 736972208 837147370 553559256 876523719 527144701 552444483 702530301 803558023 166121627 990219538 231332025 18547196 610386425 333145759 76098804 292865329 621690987 361689920 737895473 43383122 137483178 969303382 632730798 469869143 535523781 958573872 571472496 539550004 939044579 254441146 532577619 363889385 134744635 69526417 922100666 139243128 879108349 187065223 562442485 561866363 624311166 793860825 813128900 604119222 937594201 763396131 278200991 395539274 74087991 13175132 287594621 468304344 471158919 968560143 526944023 915411165 172460359 114928996 740872881 737255480 738995679 417211358 540712725 774230177 768307711 557292409 77833044 765294613 325104555 658419309 480070440 197574287 790355106 587899418 155426931 157113921 432997466 528175920 779486275 763440122 607442780 19899018 673140778 257974018 431602189 961127226 475816606 313073087 794379896 596227152 772612721 167065255 699328050 391242923 693423934 189231675 843726862 478503802 382068318 84063535 786191093 45903261 493848782 173627205 130138829 970597909 470430703 245760417 870282515 305437115 871812572 983223754 156043766 971493189 170996945 388910966 414875185 730043083 281509386 960412705 893454823 112782516 243193742 477248520 961698456 823105600 693210076 405791994 142832874 142941149 980144508 930022353 672111297 695768198 3046530 163282214 517443898 306897955 291664216 37221451 834979615 957670211 105352918 494619075 580566889 842951969 593639986 25564076 468597995 195428739 474403592 589261480 14600877 38229798 70709969 437403532 941597670 175885643 593276154 763692540 419443302 653673795 372212523 736525044 574874672 408521288 348305622 733141581 949405176 382932014 72835476 936747187 912218823 873805520 173201116 572423779 22976405 230654232 830190661 11020986 206468306 599515219 454211451 644517852 476566246 701516678 437076661 570508909 472531678 76518410 949714256 161444658 960918490 299995761 321297336 761217168 317150352 569669047 825990572 639727791 399104327 625759748 88836926 154831661 849817755 755663423 937872475 95645262 156855108 926492044 408300224 943308844 406707761 23928168 57620113 715021942 607379732 561725542 899310669 396708110 726834886 914449178 347027754 428077363 244033948 540711969 402350836 908879173 662085113 790886883 105662039 881887770 359099146 371893741 248344792 493298223 824460587 519007056 451665914 286440970 995616630 446460555 125701025 855165931 551516640 931848869 558980355 297031450 943132107 738643836 422807770 110668890 802144616 152939030 223469019 30648947 605878003 377693785 679875905 366515678 191744624 645374836 31067088 77792459 32767939 376900862 880625443 749129379 287163312 913139194 775490291 506328749 153189994 102568180 962309467 704244799 947843260 286751808 75934657 232338061 795148854 487921720 89045270 50084840 106199386 771567797 365179875 388077696 24704659 723227834 943692772 572628907 388672702 487323901 62552707 681800647 528816187 811222823 186451257 491981876 312785477 695120221 430829279 887229123 901011385 127209381 942522224 444976881 454171733 564524709 290996528 914889336 596492806 256741802 831491216 179278499 558764263 522040888 372116392 412999030 209210922 109427634 896141032 794836363 656264781 407597684 316432805 599507222 610669812 182770713 602647830 149744621 322706437 981644016 439546891 339079119 902976534 345968146 770529385 283151796 554559061 491784741 410267338 962656311 658791111 82107742 762335761 296438959 881953754 984240152 254060607 399315049 449361203 506413933 900744070 459699384 96666657 865494275 862644034 102227562 849293200 895322986 814909067 238654956 204442515 728190575 282760980 678608303 244570569 706913436 625447748 79068282 103790506 586776894 625498942 123351153 491736150 976974315 664420391 988352187 172407052 170232943 308066373 14667165 343959542 364742324 753646903 580613322 390059185 156187332 298660782 623806506 669464406 599237030 210174099 16035886 596527504 597583457 182742596 547811951 421181645 934867764 32501162 324610845 21698055 654241598 55590994 533314405 8118868 324311339 636967667 601899326 177959265 331967271 301001842 276137292 707314414 374122076 623384753 16433346 721423430 662102317 286840213 985807263 883288771 381836744 25491941 980481405 395287886 731140245 323895478 905386129 256445243 29871613 119689231 783950533 440427196 277756048 290255392 578791114 822251736 579706530 367948460 700675691 831444378 407660170 969556597 353785364 634238421 984541448 977276766 39744664 784015026 838420179 81715995 760496334 728701021 57776747 233166507 883463687 273723495 245138950 319260848 813990065 65369682 716273992 364237579 885333240 547575573 291965855 775180437 942840617 487569757 42706692 404225528 929451492 109142769 605339140 513125714 350698322 795375143 664546714 445255569 77842986 832412844 917951335 159549012 58810018 583082167 519515250 816396619 617022241 48334053 950552985 518862204 588521118 936970817 882348898 353088319 303586059 236883238 60080711 20927247 856143748 120293954 692898974 383594757 165803769 298343255 148023082 568040948 123940158 632123330 685483377 547251454 769670502 179986727 341186494 94577716 108954554 736763889 402253307 582367757 491219470 834735036 250702221 270798196 724336187 467866421 663521075 627603736 425803349 69131007 755053031 184588108 557358638 288885556 265140398 987426233 984130330 128276017 991255872 179757108 869529421 145368833 325336491 257255935 308382269 399026029 831645666 638308348 371681009 949333021 64778565 749972707 478978612 417678118 954326759 19429805 790933303 476792947 57093497 859672062 64689124 311733903 67099836 502011335 560063977 847959855 277256858 792811877 435103411 542556715 135632172 190559879 951541469 545019938 486218218 422287928 226012017 613292698 235845062 540717364 334792613 164349317 335909627 758572497 927175674 56851063 861274771 283333521 159754341 34271146 212693946 222688918 699057463 974048070 175823186 49351659 208173087 268262766 512135448 456380666 877939835 71078356 157736901 871862780 404847292 689468282 525037462 249909915 305502973 523426548 338049019 769438113 519663497 761731503 406319080 158860673 163650224 893595144 625443635 272543103 371353794 448730686 66466238 219881486 943502139 173679736 257787816 125240742 912239201 463122146 894411557 388441666 528513706 215441877 835251824 685144398 151736278 565289178 185437531 581275853 99614413 486731525 777523791 492574990 503491230 998785226 392352970 627658776 529574441 437702305 873405721 562007617 196186846 473612451 594205551 799684108 676769598 808521749 817197281 629504239 367421750 280544441 236634123 319387656 111126024 923490834 791420999 277457041 982891274 227050052 140937389 722241075 928854093 208167209 787792504 961223119 734776488 674866129 696468850 916319688 672788450 966918078 12635747 232576595 842731147 427020931 260692948 990786606 957286234 745966716 677990527 333082505 119389203 450453719 122668983 153968287 36005122 584633673 850516152 399224551 238063092 34700938 809600140 829809710 385971195 659704417 687188274 621745068 811713310 558879807 342199215 41194991 369228823 913999247 384539007 608913345 896462383 691247853 535346053 7465753 43915376 123220017 863150063 885549611 509741888 533920290 157437991 346954435 268557007 894958668 267516988 916507483 79364237 866661873 483654300 168882546 21704941 457897863 35561351 844179495 514214339 566894103 499728234 137201095 767575788 851907063 288660030 251302037 677394133 960777382 865030424 181641857 602917781 910183755 938209472 678452094 883243737 926902010 925614980 97208652 310930124 37813588 725186670 265998063 513929391 315234534 130497195 727533675 531645409 104531521 415563714 645937966 606112908 395392966 963241849 513204215 363826111 592730845 281297032 464220103 266473902 306573 411404503 67198590 566277093 842997259 915482505 30668353 401768549 474229410 148873024 419709177 894843404 429924072 402626406 218861507 638401597 86451938 580394191 956399830 40817216 263228329 858821195 450138424 136915901 679918590 536250563 55588114 827623223 535567697 322701765 18997562 440623714 218976412 261721041 841234627 11731775 671340392 907545686 726354410 477464127 673575608 726993318 640530785 652710991 466323287 979569552 422379336 41029381 106629473 351198975 13570127 139930050 469887834 691071185 349069605 856610985 923455267 813575827 634016652 70125307 529930769 806960957 135719803 342061596 528448050 51867459 957323001 198213303 234070844 741996112 221002481 822100818 3624796 744623437 751135232 466915119 8302225 949847869 940347049 797095295 971741906 27651119 730261989 744144210 321353779 296834883 821245182 193170486 691115117 702423967 93210158 66648767 423225521 651687627 842754542 17879732 314149832 416166503 911191786 719993987 128183380 987271423 747711059 618132926 413757648 877610042 937452880 43179145 91601431 702539348 436070541 169744403 783392103 700295347 905782859 580544618 490667019 134657406 10106888 348893913 857479073 139973973 641171862 348711819 850409305 66695426 778958841 738288577 281465981 276298497 809829071 983709148 581146645 100514757 415268525 835805979 238489856 955896744 640831763 155653713 800853113 125792879 94281051 970037790 202307649 875972872 991330894 413898837 122186588 42896845 260248735 926323054 755591995 993406360 92704186 612529143 224214402 82344759 558129858 838515492 302343383 285032334 208678293 938421834 447135403 595501248 996512026 826584217 613454116 692592802 521081038 399703573 127503942 539234700 605487303 798631295 61454820 602516189 454090480 441737904 904209724 57019081 981729740 951837736 492613060 518774150 222169687 84515877 998136726 7539669 138972065 164345986 629087098 499493353 329649179 397042279 900019098 114929225 8340119 915971576 355736573 225976402 490802833 911815937 379432172 91948723 418989126 13811858 364261179 703865828 942778307 769296784 231390660 700101776 511469241 805119614 963781422 508580917 962171559 438777346 3262836 864968666 130597236 482167011 437109454 670261608 2596173 499877303 882090937 805695455 689103274 634557510 566598791 704518985 935000931 114562842 566602509 672320455 2380511 253865331 129247216 66787663 316095807 357499405 172743573 452782976 962184241 88430153 7580320 110803823 337097483 756447396 165753266 994319408 22951273 849977166 339656883 651847754 690884255 785792769 46392455 227403814 521634060 5575602 962915045 261213222 784140297 716931341 950541196 428928508 510423007 400140579 511852223 446934424 593686371 449047749 151377081 26261790 746331341 982100314 480557720 710586306 803938685 229547230 226587901 705787078 465499773 152647252 313491103 223414311 176421688 306072143 652799889 993365583 308523057 12205022 142958446 41748659 318910361 103327842 766003982 373369327 821484025 120875877 829485230 817264856 950253507 744519208 878894046 301945205 763689123 419627868 791161972 751387971 737099008 114147915 107323160 520196534 886608702 777152415 591774517 764588797 670347401 133349964 526811699 895092039 525054687 861436832 834982628 592915979 469966532 507944149 673299177 40223833 916239627 931697345 663368349 505379179 324037131 800070873 405734245 388630158 953487053 625190802 235620577 54414836 21417221 901148662 477847894 8346598 199876356 758021615 600090452 402167663 781467863 162150947 670526796 66191596 846689396 740357175 356628949 947113262 215486807 756730227 779968519 250444390 516053317 647768285 659111493 404493691 813298459 283683261 652927166 155242592 146962097 839691101 351579369 985571059 572278390 19088914 675574192 692672505 211055570 928967213 456787666 471455273 373199951 304899456 209962690 466390769 672382304 619312361 473816062 304795323 864659228 965380975 95019331 652457721 314539925 221747912 805660241 480296826 943939115 42183200 288956008 20101301 942826281 887374461 98123940 860891744 703873754 209856949 69551542 551554198 380414845 164771164 638455317 35983853 996390616 375812411 439832719 503226437 244812449 438923535 201517719 7182171 634520967 914812640 47611593 591623448 491724824 625834311 129089525 57892924 561882186 99614667 696254890 89862212 828254670 153525768 813949588 769247297 827313160 772164996 896759872 62352882 191265474 228078745 268102967 751031473 371229271 207220116 495813889 425718365 528029633 985054927 608667179 845870659 89561232 6572032 558303890 156125246 314590498 902290275 478375984 863061509 60190244 133572699 439579143 959558500 334861981 367458615 46670043 654428591 815926165 552610894 539695378 831234608 532763399 817143608 727260665 772331711 364762035 826297616 533005408 760532977 365956797 691761363 653258468 548627499 596251786 137814703 660561137 242606829 708738226 5382862 900492312 820858536 139112661 148629315 862505287 140879894 502315866 672059694 761142647 108421670 483377205 697417370 827805486 883008031 621281439 327838853 491172614 804114988 802923555 343526939 316656236 865657367 668538543 812876837 194958060 332640513 58382908 137128508 494931592 648244844 230799563 703670599 236175031 402869731 712448106 515936198 21989381 141637140 137654041 387192400 653697359 25607536 132641870 692032362 175046922 569806894 259018947 852723987 576279875 478340627 939315670 551606411 701226196 218225595 954222072 623097659 123113556 317314300 95691141 271460003 422795934 582331270 850664952 756672834 383191615 188812722 481645501 576420686 674164386 999084885 315946761 169078394 841658400 889385505 851059300 39721345 806346134 849797277 946040935 295362960 713826427 970122564 17838417 296770574 147690664 63067767 875241364 344324310 96826941 103627258 668467059 963598444 758871611 271083828 892780247 739651790 132184838 708106184 799197518 383896010 686174228 47484962 663441598 152821849 632297159 392090124 554225440 694302697 879761464 158071558 249826050 42137124 641883423 62104454 997507741 255435667 175668445 568443667 530143012 828262846 856373334 521526388 55547484 405205539 457033738 92769059 248482858 953510759 894536012 867934428 294402743 180951167 294138977 549543193 738916583 687823615 231602458 974509109 946977572 515695187 590595371 897639521 138313693 505805773 947093350 47272536 822471254 221442675 2643307 991366226 226760376 292644312 413787307 789052795 342628224 554871690 137013072 840210486 342695605 669858271 816685936 154158731 744597830 539485905 26245206 56742895 84977821 686789536 870126782 21118803 913871354 715191722 553919876 413428917 672273531 574895878 571368968 712087919 419271574 618169414 589030461 849065052 515039158 742982251 554245667 56862188 35921575 307585487 568404589 856431632 426820819 885585804 885671617 923554095 725658847 716389198 449599718 648615530 78543006 141528380 131649106 37573789 685350464 851021153 352799904 68107921 867616561 166746852 496226518 127569333 510131490 128931471 850918943 837490817 704806369 626160295 461131802 96263018 534291160 646901369 442172635 961046538 665980004 133055605 576463711 89563161 563586726 139676239 915008549 22703078 518076165 127741211 750223540 888192505 152989249 809390707 963740817 430229146 184429757 556088241 545857154 6386900 18689265 85157910 954616655 387406359 46647281 417619711 105171859 850505875 398859226 321606423 244001168 533151848 862831560 884241702 371780285 739168281 763805666 406821870 701314468 193790342 934264243 237002721 989926274 250897939 251291640 108684649 505689157 964494065 973593945 502006762 993745742 302392930 371741650 836128119 875316025 64095057 895400627 100197849 152095777 102221903 317200566 968368887 439149385 336929200 7155042 834133217 644710850 24068198 64865201 121457020 422072443 650854485 665518324 422869237 513026917 233000113 481125143 892160893 448345222 347550956 406031278 577512342 443631255 758751501 38036381 288108005 941889226 187896031 773417284 491748777 54369188 310672669 947357734 625980818 569693095 383503252 303586169 770347930 986005037 44277551 345491761 164097148 799392836 862973241 775032118 950052431 156307995 531476553 943144270 710654790 5219359 2937690 958548370 558925453 246325847 854413722 322469501 904159233 240250587 988539316 227342433 162299006 369522398 708063448 228621611 942334509 616347058 82887817 470259119 998776540 487288482 388208374 841563831 295016762 989507471 494819980 413189311 42737726 622181889 210448280 315980003 955188420 883329087 264173210 960763995 63206183 349191185 871276644 94669090 143833849 759898555 930665480 918637546 131068690 778185377 642945770 517696357 133113272 665599177 322647077 432954329 122210330 348527677 796814579 852671566 1989477 12460753 620923335 909735044 468090723 169293922 493579483 88499025 448668041 602986414 924825627 755288787 720025288 837981851 882467362 352040309 82128191 216107018 724762645 872029363 438023987 418499238 935094541 538156728 41548789 318667563 814242509 11202034 957596861 226564350 87898671 642026829 456484492 568561423 916695700 287815822 963105497 530981769 786447218 430563716 559589263 842273392 722512563 835951674 364347521 445877177 992780774 566670272 741047313 925485848 166837704 754537338 465309555 17141026 908268690 918837856 799929925 787833056 564732664 797483354 733000159 913962435 916822107 557481059 492909170 146842299 880891858 117941881 584498733 424021272 609217085 905576267 802048900 871243201 720456627 507876765 310457323 707177308 397464352 199622848 734196570 657944186 878548759 178601916 981964362 771682519 138200800 830335420 260619912 618825534 731538696 569730740 828451779 303151237 275159738 393530026 558672782 177153705 849537462 911787665 290655415 515253892 820809767 671805384 605887529 667007030 913841086 993022570 406040606 403994997 712372426 591192763 313864459 43651964 565892971 583097130 276024604 350371415 112034461 808252863 413514987 293631779 817754465 833119252 163143725 137411088 907796423 880272097 583756533 144581446 722738088 903941378 482101607 156503283 188478621 301431428 432956973 743496742 97729413 376565625 635345357 358324258 455531814 739429545 137636639 2078129 597085625 933124001 919218170 667115372 695677213 177668978 967124873 395012546 804127779 324161484 960042140 753168261 715817033 250052119 60130681 373311964 609774381 202318535 207528337 684071173 181839236 738516450 862933782 651076348 792374149 706307776 727202674 849947322 789991261 486228142 769472232 675685386 884863380 369188477 194157047 743823925 58162844 208135577 949578780 812018357 619343678 531916125 72358566 942343910 772822116 520668057 771355668 632049691 383729387 556514456 886041155 424457069 850800656 760966631 830784434 517935787 920969995 687278232 929013450 500927947 274301802 726475984 211662678 38687893 646985483 774111643 861013908 516442301 57481276 234556218 488797386 195839867 982831142 527277747 578983178 924897085 416556048 116490650 347222912 883897182 782493169 943901618 966523765 193172906 339588372 125603913 884273529 313132620 889472944 70419300 112784439 429569809 547263662 594767753 868983616 338308940 778368512 510495786 764617456 478765666 721766866 921006562 180496714 609909907 726714316 749892115 247474674 990884811 623639747 379246695 969161313 970168336 514695749 908060725 80273480 720561059 703508457 222631202 371961366 765641145 898308406 369626661 930621680 138958846 518884932 439823028 807661025 911123398 509098618 497880626 73747843 310990809 952842223 888705842 222472045 704568704 672083171 778927970 933315162 826093368 304152393 855851698 199999753 418719137 342959337 67851184 658660641 434939260 681519064 447746684 971433692 569371131 365491544 557354071 857883650 446903901 873007097 704512749 736992392 115898779 442626830 30013359 112883990 469223623 377657044 406969527 904962397 88777294 110388492 899224776 573615300 982265299 662691317 542969294 390147073 810635637 880185080 517435317 419572630 311170097 127907119 301248264 324552378 24697077 351406519 388355523 238834084 319537272 929463678 618024836 135080876 613955745 381167550 48674326 986713079 735410937 343399294 766929361 434218551 933185300 281905838 776058344 405931568 472482979 374271677 546695801 656860629 378154405 557995405 748170410 758741661 336309126 986694701 342246675 773386276 385517333 266057497 570159619 18155114 484506853 353873132 849408724 364380759 428867937 78848695 837553241 200252540 159264489 202696102 214853950 278897252 739692190 128630318 589334789 418068222 848212456 492952047 515550586 646596564 593870635 338387858 230270072 297255557 594662585 207425241 809737756 531351598 410452545 696323607 273116062 820081286 386613769 874832249 124366012 485976015 950582766 821734588 649106141 476207290 468260133 977480324 197436953 832996202 994277890 56778395 980312154 565581654 315391333 97097799 863175302 698319783 312833349 121625857 68291961 484156379 40904932 941336928 86071025 575051171 79733813 145073225 397317965 37706495 799807580 912715340 285219979 445558143 990602423 578288212 533895138 181914998 518639661 350040277 918269663 927658187 536901861 859333388 898645684 92544348 782443758 230312074 598837194 356948199 963926433 125108580 257715868 344428883 620614492 989658143 568518402 546101491 707454824 993306432 332558730 975742209 227754677 191917724 363899742 240716020 592867008 286495434 501723304 781187581 903317132 716386369 717627094 536936193 559281872 170429385 242695503 552187425 989039080 155603053 256526715 83991330 548913422 124811527 720878844 933725375 142810942 284796163 845679882 369271596 829941816 755844908 342983652 57086024 182031043 835638503 463749166 692983224 62905887 303953604 996643452 834976936 829177231 482919050 490740924 705485824 58467877 243022943 448082669 225537739 380335646 199826436 109484910 365301769 969428157 848992403 569881304 393430010 122401761 278693509 449884695 748791640 759330675 4573469 773834523 327708337 664912007 185153872 917844020 665731998 392945623 849480663 860131826 743395044 942713294 431843731 892273961 506994154 532565616 540059266 418227714 121362626 877502967 175671982 303698626 925349036 146633935 539872127 226791293 303838361 771106750 437853558 878198743 783451651 939175759 729002413 351759210 527621737 487639204 674409089 503040500 411514985 376677864 37418462 605376055 727527073 612788975 869910189 332212352 934310166 458900827 446911480 801632912 741159341 846157157 655430513 484134638 311994177 842878460 595939419 18346343 608978358 231717594 72503633 626495857 989882600 31805557 478318733 666084121 96903966 192658081 913284938 53337158 281343279 397248208 910701013 710596206 410094701 112185099 549442196 384826886 308296146 260590609 915378480 147516691 440237613 570827156 83925190 820515830 672548853 852007917 892665905 736572390 487821560 567062547 681247549 230604362 415266999 623857378 681082251 501971157 34450686 857716137 61553250 954295907 116252441 790725505 10727079 623161914 184005948 202647777 162952112 56159655 191769346 451637155 892639772 320669374 889289316 12877743 155346684 328238903 698552578 920395488 963700294 497534004 88095155 990034474 755041217 325082274 804999410 515965833 740054762 890550750 268780157 498175762 748427226 934379624 288009645 762762317 550215849 824320082 21407662 275103044 140783524 23338704 992607229 204164659 628875937 780224180 179585967 316020992 453623883 854551438 285121108 852167494 435492613 777785674 978758990 939213044 364009053 664373787 792865828 911829430 491945769 642467801 674701043 686108466 925192140 82178620 267149249 186788552 450201050 966467805 10452757 119508943 671806976 898182704 235150525 814334061 609658552 521964591 523687146 1303924 671798263 445327531 252523106 993287136 38596303 175224263 621713443 622147435 225779864 65326777 387418863 518958376 635937544 450435422 446328223 356752243 131278486 789134025 850229977 839043677 123107957 900782531 898607863 424723836 34797654 436962215 804428323 664496305 954011592 647229331 784852251 466465978 74339473 394091497 355792836 127866877 769916900 234561483 100169806 820438195 216613123 805691517 519797285 280930016 445098025 342123532 686242993 323177794 10097112 744305375 722193053 743088127 767097770 251325191 101380818 960914476 412376344 576136976 752877951 71782823 149439161 899509442 352292199 334980166 965369560 328599684 42685496 542728717 6011030 739075712 433269913 784558181 262534755 278621401 226288011 872903179 139736428 655873825 89264567 142372809 62508032 704614615 917812196 833258200 886299346 337165981 680655659 425304355 260916994 914077163 987833121 217724377 788179037 720661063 927030643 136634590 941327629 184410038 803315142 160014933 697231963 635330590 764190001 484738122 255772834 994824151 304136466 389805826 912069358 783381396 732215114 312801725 415519789 126692124 304579124 156478417 456309305 556726599 477834370 114589084 653130138 490234878 239483135 646200907 370244909 290961487 669367982 134385345 40701152 578917048 445652850 160242942 498579917 427839495 553364381 65805174 913900386 562853239 158555994 154963577 800222179 227124979 170985886 192704824 724813736 701805292 360270007 302027329 367049573 254430811 576365400 442039758 938524338 885811539 948386923 633673552 305779652 534624764 267127671 496660021 317454922 180362761 772035291 271086740 633078555 368236346 969237562 82428369 955524426 766440534 855286959 735548979 203784617 780160202 750388161 24431122 736393135 259864781 798744485 247816597 814788480 989999082 142439122 624042843 786422757 473191238 78412645 403516751 250870523 116448409 781243671 247230224 61000034 647535811 508752597 24318750 587602135 872840994 259444418 305105532 678212462 878747745 271025969 514493402 96743253 641067525 60103047 46630557 473170315 256863497 350888635 277159679 462745845 764625841 17110964 345353976 720176287 465710322 380447191 339650843 985477140 522636162 674538031 641292085 342461744 627041752 969114421 75557615 229190659 970463863 256876960 710003731 117072216 335320726 633816023 676065636 179416303 721717237 686389593 572397725 268323052 940606759 220823630 693661777 508810737 949342617 637450190 896057459 792631027 923929773 947745239 797788590 699549012 332964848 833213690 259554900 785932777 594389563 161054783 671310368 495236440 302199333 622625641 518869856 536525100 475422601 918144911 432646901 42012310 854980980 512032426 260044917 945969370 97739704 256580570 418460348 504066755 711017012 827998763 175739022 231397872 932936450 460641437 520979915 532027369 728854344 758107648 505061191 746787148 630467275 545534252 690718990 477780794 941655374 354653486 492811392 194114079 130870980 789077647 456136399 58117262 465157489 403659434 454369450 826500384 460037114 236064964 309960460 639431068 107151840 183738621 511947729 577640246 730210485 167728849 562297823 808648532 943590755 819722369 34843402 820279117 931243442 440051854 708230185 435587607 716056788 965828388 691254785 684594144 635274264 275940399 845090985 906888653 535898674 526366503 750962228 592734639 820612717 480743621 116243655 831265237 192826657 761222433 571642088 378184492 571278157 832858054 529115869 993708418 256143946 600585627 921517626 447020249 347415227 344873752 881886987 190073052 661293314 654273792 265448344 788116817 543779619 838510622 318564171 25003471 163617225 573916437 455884794 390171257 292943213 256957648 864971144 147773951 928729753 512664217 564570187 328681476 178647453 820422328 350571570 327590762 663467816 850345274 475237777 109851210 351336876 849989594 495678657 581845973 776973403 494211853 777153779 788101631 66823480 748517152 722697566 608389326 833544648 356364714 196693176 117503982 824949780 798522841 432808308 832849725 795618597 351383054 908217406 934070972 833839541 323809717 837568116 694057281 723085615 505177106 56365371 770970155 995305625 977944868 851831677 620718193 318640818 230828042 184295437 307439289 982648785 991848548 889674015 724777544 413360493 536719029 860647238 722572435 526405679 173099862 113744187 95667905 563041442 561290003 986104671 284284 370668011 500190004 243144115 51672197 991881667 885289504 524449797 27953793 850057587 5152991 270729181 699841528 904715123 98246997 379707175 435260395 811289410 415708974 398912124 37599541 296865397 560130094 238463969 172350990 219050517 885615822 806028372 938429026 782546139 745743035 3656244 342367062 822377607 274549144 293108754 803189577 955495901 135597741 915026662 248534074 734672315 769939153 871252972 390287272 520454689 33192323 841643755 341772631 584897681 553934898 822982815 754641542 633658955 467748553 488382650 463541226 179822058 935930981 405803234 730317366 367855195 839953827 225876345 689957693 488088572 396502497 919365874 365961674 234740073 237793959 744755946 298387661 229115719 762557010 792559228 269362448 144169902 643398699 667227379 72371127 93937667 907045545 810095822 409408805 380475245 360433084 393893389 25947834 10906326 832308806 465313142 235799980 578417761 103150596 970701769 360941333 977413646 752970288 207654407 662425609 27808191 976322371 741806285 818175413 381216867 666598399 682322331 576008345 424691105 629093480 364238883 127561483 225845242 942441646 275573797 84234469 616116027 844103222 366866852 263785891 409784478 889620449 413631898 302738739 446985362 810686369 946524152 967425757 866333148 935551326 562789244 597202222 203414280 89345697 909101329 613039811 448765825 832741561 322997017 837657858 625590288 45911114 585043683 616442420 354700609 43760064 843577727 511988917 985114936 703415716 684217939 677761244 599245193 48508591 927806697 440163259 374662019 831092229 491258137 336164866 878643182 908459333 72282314 963769089 245228941 324668876 207609652 547404587 265816384 64503572 960146471 1629690 812336675 885954103 411040398 294432051 558351800 790348383 302436082 743143103 596444296 204590120 256393512 153128303 776518166 753722543 700437997 502174063 905286087 780986854 659511417 266167211 583200370 321298055 431923704 611443796 798005383 891257150 775549312 803451081 395991218 73140313 412432518 850655983 513637043 805925863 114010411 299345857 860719345 764100104 539187728 817211218 297369058 673947445 603692202 850400484 399785106 931385567 673574822 114776893 840743385 243307827 686852085 389618727 377822823 762968197 447264570 606658422 744917278 151658948 772034277 793926289 539526383 390207003 995255640 146586671 324603588 880275254 34489187 327076993 437680396 777635961 810671932 480072373 962444668 944823079 928683755 234602985 323418128 19424714 691023107 125735826 273350752 895517189 112370284 600430040 114071851 829333354 121425312 325123999 444008179 6855887 387120876 381755596 483706307 789775399 205245915 493690428 328319240 291027128 751106012 32527782 46981148 16907981 381725552 172222000 26666143 353366143 167057618 702603816 234643369 335046579 572708166 457160499 687305333 176148107 84994114 739448656 784317513 261355299 136390509 983085028 984383632 573844774 508896224 469181028 539374725 216110511 57886326 253614238 405080377 944597892 962447063 239763139 870818641 163992160 912023086 170744760 571711164 139932576 688944019 164423460 607387452 740125300 477650871 551778247 673558930 406115871 18460520 656665837 761498464 53586782 644996782 6217008 204043922 524729600 18371477 173744059 559204781 371169585 616444021 981332729 111763299 806309340 812417374 860845776 7887905 789486268 31618167 304567541 566578808 467608795 160088286 939949279 723597708 504354364 121359849 476298951 284125050 883792935 651061503 680273940 421008171 448693487 171191214 543213922 934845818 696658802 316599733 181925638 369056580 908877057 674163533 546806573 577315572 343786295 914184631 376392563 716923974 407318899 357106954 682909476 304684097 382229027 886629191 494045227 572708283 578329049 951819493 326714718 318756889 452999919 34291253 114331185 295233548 388334988 789654210 422759303 117438545 402435668 594580405 643850803 760107726 684155868 562296047 843582158 36948996 712711353 472672799 210429426 778116574 514135405 896565184 850136820 556451009 747562506 17668358 34825682 349296098 738420155 515642128 458211644 210489767 796529558 813895990 544380811 765077953 301453171 387724216 551148424 561288366 495315024 40042649 214763939 843474480 349276448 178957542 533990675 761964863 628049941 869296156 483808281 901405810 587216640 158613346 456383947 494800305 286724204 71194963 166462780 808890134 697808207 13340572 957076511 267900657 927002952 666847831 518937708 800036833 444382093 734742119 918170895 746634172 905159114 717597538 653189309 63280106 821874758 428471235 377137690 231852039 102728494 473997348 405118157 771429204 56528138 508270815 70573199 895525276 7781116 857747522 322214182 312614509 998274713 98963362 948777685 326286436 768320570 171998874 390609322 970827877 136800860 580773402 416391242 791975473 121109922 490145720 914759608 604242705 391744597 328631645 126766110 163992622 418088455 120914340 896808905 325322154 200138803 764049400 520997824 61307239 755158396 251723002 947018588 549527719 108114178 608650768 49147310 900022815 809754423 478767979 530790468 35187264 520150831 960060588 220111308 214943925 5882178 506869226 646325015 981383126 136998669 941493275 997895869 614337637 400909163 536214476 745243844 633238493 17305358 483958348 36184973 364750630 422971224 369286187 81914006 265820954 464629650 406627693 237689112 498066709 211938529 280146783 282699618 731576990 482709984 657692241 87163936 492966844 621413012 485640939 198478078 602113683 848638653 817229436 32034592 358430087 419247252 669522791 166061804 382414169 305998410 484317714 120291305 900831543 179332595 975547779 483502437 369458970 124722993 133945866 336485913 366467368 284238943 347132771 118323267 604048998 906725177 301767807 78415326 805287941 586704729 51395750 364989568 451578162 309215052 631876819 732300151 756325125 15854063 680140367 941516152 213416165 866812732 825230724 814288781 266372629 398709144 439688645 381619371 845223186 150332294 356044852 656959903 668698967 460679690 277517139 702823919 487013397 828961077 415438144 215235474 956150931 926299168 564571693 950253663 331539887 552840413 834423180 883509914 359715148 248261985 462282465 414573589 320421058 694462567 786886031 809997756 99137593 930318319 640122823 779712697 810048274 371908810 111084135 630370598 817246247 215052907 434204452 363308795 519774960 311913468 691344731 348439616 328069323 765072995 204763866 612819885 350139385 858924898 322319932 525633131 921195116 190114772 439659329 789083650 520296864 42286311 281940149 697386071 15346324 441408368 206641771 921753394 176218995 30520020 980483128 265742543 169465654 539524920 47118138 325200632 492560752 67583727 933732525 264328004 832759850 750678081 760915007 119871606 819803702 570735322 460682075 645392193 360054123 321396047 683657042 541734675 208381273 57826150 171148731 487058944 561099242 901899723 299590331 275769409 386765225 88099541 148770561 329126605 558035896 377722629 62081143 601237557 161972647 113276903 497957406 159320707 102659648 321363737 314613427 396466351 441081438 783131046 11106439 269778783 166561269 295756348 650645229 625118297 500215445 900009817 548329320 207872492 851882440 377522237 435886433 353732091 333750665 5595739 848351190 77421442 768307915 735249909 98008035 785847111 78134561 201010385 498521524 496215909 570936566 198448603 500450238 212779639 132789586 207737502 354288696 442112543 968745228 153456884 845565978 465691060 346533371 513934925 53125157 580068503 751834611 30326218 614018571 593370241 524086114 426519349 242824458 501709502 268361094 812028705 479869052 45128719 484670047 312289503 6832139 957043810 902638359 838190276 578447901 170199466 558279913 792916588 706846629 9478772 324335997 927725837 899652056 930775775 460591718 809205877 166102499 659528343 641051694 322846973 346078610 108481 724350062 185107269 801343350 208823389 680171330 960418210 350765989 348545372 523018816 803290963 511925626 486152354 836080745 556111543 296142581 729082762 552976100 723401561 373290792 558216850 477965744 942870592 845525080 935463154 556909848 506316455 743214403 747958020 681866358 113084246 19714728 986885306 712162928 592887703 497801647 627657810 923748402 741696005 56988349 714975100 798051853 789099307 565515033 478706884 746900871 209274270 867421909 180033240 994479909 568859329 173895388 999382228 339527975 881069436 27285288 87881490 762313288 384477179 589046823 662493406 382743065 956503112 58482834 49670827 804696980 575181984 690162180 871200809 59196116 451824451 65197067 318345909 153953021 35395944 138587722 742832155 631690283 92101900 389562364 991732721 606702544 822378907 127879236 973529357 696287945 836184631 433562863 362302936 284030942 894454354 905447934 417477836 574246870 346664179 522318352 619079031 691629407 45241498 38307352 438621586 254572954 866523603 417543454 201107293 600765558 345677930 391631598 413278439 309585098 378502754 787863466 624510358 550002093 6850970 364174642 841135331 305606085 616885460 794370005 568447238 211381482 779608288 228318173 10889208 892294311 127509269 127467792 996473383 14770661 964901790 979438981 633054674 919268438 127575850 795046032 351485678 461890133 36536057 18611980 407156308 884807554 142935964 382682107 319247276 67673681 4675070 153105632 769401304 64514318 560510771 883750223 984465779 180809625 347314917 450566314 931598793 223242486 467436509 748704514 506772760 346368898 295785465 408536827 127320208 626963863 623703976 336090979 674575111 347811241 306443782 194401133 915151273 30103372 802651838 218270724 901447553 395570316 364909232 660096978 289563272 733806367 27960089 400006260 135670783 660176891 545914691 465090512 457534174 487493558 384428869 445629363 685898656 856425985 101800827 321981943 586972329 476799834 961424928 365352807 716083299 197535632 469999970 980176698 342501082 314608260 386450781 206710710 873400392 60945355 994775098 716973615 58413673 2047510 798431550 733828581 435603857 302326030 570423535 854342780 932439790 505194916 551601864 648520345 660136009 742664192 302724482 810620105 169146209 8535022 291489329 125429946 214541073 570315268 149191033 840002851 215454966 678843636 245340156 18207482 236083926 270008548 449238829 404990364 181819971 982369404 589333461 491422205 91825161 652214267 348349759 307615945 757269856 900949286 958210785 707945765 805970038 912112895 951110335 331553671 186465566 466719463 45042919 9862592 287988671 500888889 797694297 234576252 722131906 610297729 940555006 329908219 477830364 912180229 939150757 471527659 589183758 948737979 857742081 993952214 107187462 715356890 411054153 677100654 927339444 623159386 772694531 434343100 158499076 490244801 51709615 556564077 616355168 766343088 547321218 404256340 961288007 522138360 414209796 803483311 959526402 146746040 396691804 488031195 922209124 938707175 206439020 209491866 569656344 677424177 620006841 759497098 583495724 210400265 92443715 18858863 904719929 484442895 303526 4634329 22875744 766428215 992745976 867034972 78604869 251006433 164939069 595268577 944985074 458301371 168245203 146679546 815147416 139525927 318500491 625948646 325075529 973528163 84361704 276344428 677246368 401144125 536554996 140198791 801318334 380603043 485148306 807789890 255572463 251873621 564939021 406341938 777353230 52179664 579473641 534918767 564097424 151030557 10801607 136250445 398162050 376798165 773683982 277570826 217102248 83579560 608768802 146985611 235628086 126257096 172849116 977332654 604550124 200361091 682158743 634488000 153046903 255350034 202469034 205176052 772065761 457590724 475318663 887912839 257920761 81638681 74856845 545653308 618473419 172727855 104994227 18742380 453249408 82293022 301510453 219473302 152380299 892054136 157877666 935817838 339139846 825085823 633172869 268161711 642930346 793605636 282904796 646828165 654111704 195279007 724066426 324578927 172288380 435729089 774273192 611781003 902736670 525765936 232956418 59287325 983205416 357560044 31488995 94712280 436303824 232071176 897688808 828318974 57172817 8804780 947238576 160702689 649275164 547601484 529899894 28249889 245570724 324916702 400397043 182005643 596743002 222143293 338344214 470715260 212426160 221446279 73353277 399070203 760815974 174933188 976882305 649730064 552681388 446184118 280863205 249075012 838250708 115158966 149862426 398345257 625037889 671024006 889160333 234649221 602075337 224461315 662680825 333470759 53483776 266086608 840430537 719428818 155269673 668340178 107169748 198813344 814835116 791556777 194209393 665700600 187701501 794084799 182211503 244867311 62867249 933034268 642377672 922581544 486747355 298453596 693906039 512166219 673469082 472794006 4285451 692137843 674931623 691002339 493106399 806630954 308180162 971744448 599916128 519756670 131990077 397868409 801155935 108456113 298529747 408967735 475929656 54721820 592612852 620791758 334932000 754198188 707278484 483558423 619733588 188547546 943069294 622175151 469265138 66025757 639026176 904826849 394482275 590093208 266878084 44153555 286205160 775629989 880496516 872454667 205926965 310938434 608640880 440337893 27603243 382921931 254749763 225237298 733172372 561398894 958892606 233497170 206467679 406001992 402842201 294783883 303091947 461262169 617034678 162052125 875377766 750150218 426453953 298181584 351675085 667817481 854525022 138542572 82341438 985628475 137512891 154883075 232581480 945514738 953609210 581743427 537287827 360820789 427342682 233791623 206069137 967384825 379417751 567356649 144046763 916582034 857780967 862839242 904685865 14198330 200144675 496902553 40328943 421569688 887309134 742100406 750188039 958527230 407575318 45328800 788885264 560605894 206459918 782391392 655194099 960232564 725726793 848318768 299025153 740848165 228707458 498340106 539307546 147831616 925805714 715573700 50320836 865282914 38878167 329607051 190423269 589076554 340820041 716552494 991039723 223705802 155558119 366450914 366983435 397763930 504523197 447624454 708967707 706050709 605106090 474192325 740568229 35005319 953399913 659443513 585518362 337127168 873234934 411542811 511801672 730661703 948015798 50088023 922161536 308534260 946463889 991555013 553538119 252947263 785862238 530540015 675108502 774223172 845485297 983473419 544145081 648050313 709043243 399088747 95460781 143566553 384513188 8420643 111667481 363145270 444728640 454271458 11432712 82605569 85049080 954132821 157364308 965902051 192748308 38277333 987072021 919923576 307700061 887509153 911342074 421057134 809056232 647647051 283268267 586777541 968172864 909897946 570394849 961126769 430138116 504217705 61060678 744333710 654301951 680493027 650364880 515661216 239715905 259982547 236287789 223309485 823299388 639274273 44539751 165613040 630756607 717680258 750602038 291391863 44026240 48032648 541831926 843057097 86369898 558008490 571514380 630126195 505264918 30044884 173977270 224519772 400602361 437519326 3392816 631955944 986710397 308227872 640844056 969800090 775951214 905082844 850582895 736206652 454796849 903739862 71183276 627369766 463919204 1999132 643613101 212145408 313796219 791988002 321083715 659909884 195468920 491703777 13692766 828002529 266328515 141994528 604475675 174296950 723931356 211056612 871344168 257461076 85378045 501988661 363950314 906986208 596044099 608428775 36399466 905559756 6637906 883763851 901996722 859031826 156816137 222048175 192356804 38825918 135337602 163059640 857697484 285177609 976661018 343182292 115409608 73199259 560522880 315874100 509542391 768982833 69399867 706621296 373546917 115876681 453323140 116736695 745258603 940503626 253864815 940219134 380355462 211729911 884097750 982647366 957676600 93694503 894569538 282884753 787749648 807853430 256372894 947380136 8216118 531739814 178657148 53270177 966425650 308212156 719380361 137239629 656882378 488846123 979894698 85275071 167136594 917406428 118121610 402733272 502265208 500096793 938421821 285898062 319026070 282619201 686894284 615449688 709882253 216595795 412797739 128790163 574287066 639161629 538431580 500649035 146987136 308850936 651635834 184207352 24227148 35082974 765655568 720507721 942859753 65782906 7814666 588186424 307390597 649187699 464060146 162142903 736176036 429776540 580449674 982068585 151750327 600148421 289344017 947260178 373548738 959235241 490960608 674986247 956320410 606912990 751350779 684893259 587687287 747665712 811731674 420845729 414504063 153150801 589408284 622031992 278788365 264563156 876048514 867411849 222718029 199872552 543439159 27599733 772493102 474080067 271015777 79254797 344360465 655111302 671840330 878088787 466335495 206069356 99949627 607921022 396837549 481363858 881114744 151341860 161540569 104059531 132569050 710681316 829355154 36988363 474739319 436491883 132380300 99071782 910874049 280017790 782317665 555965563 979397355 393375936 460507103 411915100 621150986 164760605 601885238 163423376 788483530 381344827 928730470 897498381 111729950 89047759 986230099 426921184 840148084 458059809 96196346 425694128 575731202 905517863 400615297 680430041 562900813 728360899 512580451 656073367 535653484 399375651 248473316 789903989 759933609 327786191 130868924 497981304 627221998 572948317 634705668 86376164 605873929 504046897 862523718 264961309 358718737 921494047 302788338 250368305 413337994 649653495 26770383 991881196 222727580 774003680 889232464 461640841 364778774 160461007 177428579 552669271 771544841 274848146 362758758 173336960 975945313 883214350 865172234 167740525 463281691 604553601 127145565 578833845 3537220 107281527 637553617 736341639 67926667 155259547 261852697 237593060 588623106 63610086 493168623 580630509 985730948 144490362 790799390 980561789 4421996 188094770 361820748 217025202 474822810 667876364 343862232 405448010 809519511 570079726 357323290 240481083 804745719 149755000 81964316 84340245 79212857 134706775 616655217 703729383 788087408 968784084 258196503 798185017 580637685 729490838 242641992 466179199 633076488 700480048 373523657 796509743 494824199 571403091 142979363 912762776 32548308 423230395 907290439 552130174 145128910 575514142 925792431 232925128 967029454 504178074 740764209 941706469 517817512 573766606 792294530 914551940 277045786 845891692 117601703 777773954 593171205 7119395 611710064 684241957 318240048 807879172 686678916 837380606 252146525 594174381 445908749 12774880 246919215 153799641 915292959 664132845 406944075 101426918 119633409 766075119 480866890 617795998 543970706 108031265 944609136 646880244 63434022 605271361 150927482 736161885 916477190 947382730 211314471 855910175 16382284 892105527 811942869 942722550 811377136 241197783 161566765 323531588 809732912 69624817 451735514 709332537 336025054 761748122 979860121 126769803 763806042 528039497 769259941 852469660 435245912 61949570 530729041 244722162 127161291 848349095 300228244 404290488 398111837 859982960 520942068 879932299 561189373 341542278 361201946 590488725 241794110 416050734 525241048 892407130 195873558 596066447 318117695 816971187 536088983 901675197 582732599 636183247 659934450 584491718 982157465 304627324 778612433 828739773 43831680 24567680 374007594 188295524 313498946 149984768 560464644 58481091 622346507 562966002 835394807 908042789 573318638 936188653 478356023 931856083 113059273 948984198 849030953 533306265 485335756 298712285 318782478 619470565 540742121 945765667 945780254 898677489 9770914 966974041 519902506 506196099 577485358 130453703 442539529 186074324 36572338 918337548 799092019 992837540 279988954 114473375 657617260 228968356 738771293 452621056 30871953 827790027 185320708 637534328 253706577 339379864 162235870 784683659 992693745 162996921 861916706 767091159 476602437 514743793 42843642 67535925 472253674 474399557 251382567 240055937 329196824 670501841 164580225 3014982 600744489 582463534 399965629 815965962 278720380 810655465 16892903 313477883 837298985 969919378 129578532 45111599 895701093 611334934 144005225 34616087 733661025 426845338 666931468 439168069 103758400 156880214 799414349 511872372 756724798 731428737 510986923 235173281 392937119 362186908 716340551 851638465 117654200 559398623 43134568 519314566 900535673 952883447 904776504 980698015 209817964 939048906 655228066 462706451 89827853 833797528 65402567 521242872 573667335 235413101 961606315 176983930 922025505 732541236 601653747 971870106 71570316 355766214 879229976 289450356 650593762 383080912 372855346 665576714 757652492 464917611 749807568 425993027 561931990 311540761 794867490 574222172 836232142 566793847 490884302 217964667 540327252 622846207 127425969 14021958 305844907 76782233 286980227 633598461 225058696 535282291 6311588 194633154 513990052 500153346 1415208 441763914 166182989 443653739 70749148 844487557 625497789 33445334 305466316 527700197 984874031 603995951 215720052 432812706 443465856 333463328 529710494 501075801 616160013 973957304 192039387 332623893 417137660 404586731 178812755 803690272 408167505 124608286 890267064 429325861 957964703 972202904 339398123 216936549 827237397 814763064 180273825 125938705 607911170 39393100 678046238 823169711 651734079 196673603 661325299 322097861 438692962 554856398 974615665 11153542 891888658 926025843 403682878 812412745 229594348 676122286 137808947 159461212 656965344 472842205 742868975 592056651 715994412 125569162 122258808 676477018 145108699 590124887 451503344 196607743 331944923 214097494 992148144 771662546 208116800 137463603 375163062 104634070 398098835 568331258 954307185 443799587 959535050 291746311 297323846 92692028 678818473 596000697 609441030 568450165 899417805 70996385 960467167 954852597 304740736 910274345 54817324 201984112 529265578 389876986 701468875 152492570 33842781 286848222 162226121 740885688 738025548 987926532 41158114 407083668 766986371 936916457 83268460 316970551 252146978 295074043 311415702 1882326 66326644 903211748 707020967 506718588 593222935 468008779 523981202 924921304 845897630 475085128 555665216 446619422 308840222 59238572 756520609 802515506 383024418 395362324 423209626 448015597 59095664 259913893 551391848 741705520 346873357 616000175 54176634 244150793 78670198 29655946 620764040 378625732 532554277 902035803 897846141 736539686 758383033 943510969 224210330 518640489 613863513 618319669 741666672 42547376 813701357 684493073 485875515 298427013 749217166 785328300 122923811 210784701 861672166 809280049 939110209 669426016 375397934 406909508 589276411 266033872 832095437 48054372 470317097 284532581 647617898 363917470 999752962 331101943 611669359 692318138 944106937 78334710 782589443 852827018 986173864 228891357 136457206 874493039 916902376 742360783 581027542 598329578 922208960 143352269 217011687 953514356 445499744 149906848 4936372 884238245 735893992 4735977 382971651 98273878 914382886 938648899 151993792 582803669 67977401 823549559 621006239 283096581 238985627 226492125 829327378 457638625 446072352 863055917 156975674 888229832 271873235 765124623 8710299 761653165 757759351 591755702 114419061 93465457 114436112 211579250 263425718 194588084 589007539 828559739 55400503 193861204 407906952 544579722 109154833 47143585 729625841 159861546 252568382 810468951 482775681 803585898 21835455 857700423 686807961 154954689 233884195 171286101 130010989 135962632 348689240 861371099 128833490 698494866 933811774 182931648 769906800 1141296 58268839 210761698 325533366 397756456 974590868 707296283 151204180 744794027 616496964 168920986 602837888 209322066 606666583 681642399 325644802 393460120 302620997 926891437 700242040 57180180 93221707 293730318 616397466 316051088 410925177 797864151 285465673 238108261 718828947 367189210 545297103 691486571 73222004 964618818 349221052 978585841 842648399 391672940 257144888 308592206 996901731 628907565 888491500 82176652 619333224 64633409 385317797 647369736 858048250 45732514 367944260 690245031 766216244 236609649 198712966 143024796 28319106 893446112 357261119 569654607 165542956 227386707 350056948 847581064 527209358 221649232 116337854 761011614 354520240 217149582 926978550 293852022 441767629 387503963 464752180 561050964 679196865 455609136 452228890 828647242 934449547 163807132 74683520 48731507 362875342 596146618 314144261 155421168 759924846 408173232 228875066 307765781 854483835 815421392 89038849 892920552 328179070 74422580 133520990 343315549 858662790 35093397 971386752 969755970 593250311 626901627 450490787 421786994 999068016 606981762 826390449 208542982 894492684 263622071 171908961 379045266 773385232 988034702 334226703 413305379 645334586 994174560 946538503 654765755 838565782 806299621 16956966 837789483 243413906 802151483 706380353 92932964 622746593 634004270 226825226 964913571 556233621 439933358 822129248 162960040 791351265 724933414 338171444 266305334 100366777 788668497 692923307 29364419 255517270 546594671 552704405 313745101 593550614 722867563 587225903 429998394 248118034 745692722 724540383 572902503 411656860 224939768 358384216 674709053 833884082 976182716 504574181 175816090 806295358 956358164 871993749 511810096 78207829 872022844 877217312 31539233 903544943 204341078 978194474 317302060 426416477 359381213 58112572 555035322 225996242 354754990 294140170 785954888 614639379 789041613 489315612 205879952 26276120 467491300 749909482 695056417 217555589 742356883 597450115 395945726 909966421 3118702 466173336 502112676 528494105 840768246 949514594 190653845 900303953 351689355 662803746 806737668 39567326 216057284 520244147 880430565 40198469 21591618 160957066 240180402 925044882 43743908 32696280 812303715 275860802 863826414 828610632 419405941 263517549 630014253 96572382 548772343 939086764 443453076 181494002 558263189 367445023 838555331 500854166 431958213 271822143 588758631 389692357 115112381 40025903 266066732 930868792 789661313 309782077 713223531 33292357 502839988 2614476 488050513 690407345 664728010 793964966 464803044 800706430 721941880 690863797 485384700 53985599 814938726 957963286 917556915 832491408 240089540 955479487 916711113 77932299 436267388 393106377 151208419 498436455 9125404 306376142 612789592 338239217 748617980 799835469 593561020 159494757 603281216 26248306 925297968 686366188 428040898 428204094 587796588 432791288 959478766 883087042 871154043 95126268 606196787 507579507 349202725 966178850 916070279 770397569 940951894 340141194 763432142 645336365 951270048 80361436 558803387 765498783 715706073 959164340 437263342 762215169 874410636 160122966 318119777 370364439 917883016 843832674 867314097 187405285 310040677 79077484 173435267 413407940 176065583 540619795 906143989 511679322 436696216 875668679 840663880 202276738 21267540 589986985 825827460 331401575 778362477 945785086 591192296 158571965 229878567 540452904 832080077 934933532 742502627 108634014 643390061 773390244 924110550 694200767 667596123 68659470 549218640 176237236 105443590 243854926 150080188 117259654 792780516 275491744 352419087 671550223 117344375 919232866 680608600 351691192 340535818 284230658 54348043 993486432 787016652 57086993 555315593 442515172 616145492 222996705 830624145 438214443 535995103 43451655 274885063 121214734 486182041 790355213 576920875 571686115 899633350 714794647 769327732 369133104 91047998 59953789 187114081 292585517 845466497 658078898 782825291 1009654 872384236 824118703 937990565 730466533 341786873 676747016 418739061 17422068 239857669 709923234 490221669 44607323 925494879 869114025 305093279 267064818 625881292 334353937 973945567 366404273 908691702 756408155 947212936 868067734 551400331 504585008 477125135 281849132 81885374 206814247 750273527 665515559 126421042 790246228 666474727 141869466 94206251 916543594 241705059 963874158 418318431 244724685 952567726 664470538 988186668 749634428 60863625 276846615 994809362 882179278 506227194 604660312 140827909 811616879 378410991 708960969 911657160 921633896 351211639 871156324 391644010 495682086 757340217 116789969 467603589 588723868 74902510 30931487 398214453 164338849 657392934 346980227 942315718 449723374 943859226 16414318 581288512 786451941 726498662 952108919 216149250 250256269 805317636 459618063 263222730 80385780 45406984 103422413 347995292 400785128 526862496 263544715 973995975 888696389 448399241 501591368 401555713 217811781 712585009 898634988 602173317 873673880 701280323 90784569 463332183 374328260 298082844 206339327 92968409 900418561 393643621 86369709 956488825 929180161 422277086 627475323 492551315 568850926 769146613 872637969 565398962 731418649 290829741 170837585 257839095 73979772 282784978 142691816 552323023 882146207 411527070 121914579 512031234 779579553 741826799 636093511 134222918 224220956 566162966 328023716 663282087 437521054 209401843 218887271 310641823 3152526 220361809 892231523 914226402 508070098 96896751 20752532 67144551 766151378 332636697 646199310 358100392 445159545 48847751 487539545 983301847 892232081 494154961 840870710 815083583 100967329 628979147 546839483 196855018 552687101 553282174 874984081 860980687 267458655 58050757 592144062 932771706 662966469 546673729 772217071 102729475 212471618 264517326 569053995 836103878 197906928 848755422 187405142 145769317 667875632 998603327 329375287 683544579 148425317 379830039 231525970 283272946 331363488 517620670 259575991 797798843 172342831 31008455 352039675 733728613 620053100 388321048 405406582 120414977 741720671 797433766 614434675 510923811 335145965 534808748 364695156 149581163 467412471 495474667 350482739 137727241 655164910 652313446 147635508 883683423 603372220 118061414 989701807 883003602 195786143 435781707 328852362 536458874 774948281 575251877 707508238 940549910 367031660 81675094 235580562 505321696 356111262 366719699 222791231 239240676 974324911 980018486 945175950 332812640 394333183 978029609 868224438 212907928 215814643 551339484 593023524 294692092 717192163 771572924 774875823 995588535 934197210 266452561 247765102 309874496 585763012 549330724 118115127 848586082 727760471 222684108 940780216 102212107 329701232 593153826 218666390 217655132 769944496 344427552 969389787 660967342 182274138 338086569 614868093 739258345 335564225 187945258 272575055 449870253 260310555 71486932 665417738 778163843 614416184 213226968 132300969 189792568 414323441 925038277 628359692 328302361 895094992 144541255 347345504 447570455 184463379 308154020 676978659 238439434 622234922 98454946 998398628 893397744 126738656 858322468 797265726 558058383 599613131 134136885 623007786 532141149 245124465 88916789 997718363 589074400 65403985 668682530 197804280 55787915 532495559 332952514 824559940 894021632 202626821 995635675 97990249 79357980 309532429 672660881 741563250 646946859 454961234 957874228 488459780 397987677 153380248 632829790 959944297 516959144 813266788 609890429 49818819 703530308 349902804 675215797 219321859 396572772 881466655 891343659 384845536 45534955 229922182 993756571 793194241 14236153 536964757 981526505 417952393 137604642 744188731 87299333 941129703 696385884 87535319 542475665 271590507 164350976 808385823 754456104 776086359 842958737 72241385 133635483 882369868 311552179 57542189 99598595 245794012 810668241 641137122 495627508 182008714 174230174 334320396 906005636 90869190 802191408 14744684 244892464 73142277 36789188 641063845 975922614 611217587 670229342 879691355 620667222 611329249 833351728 732337768 50883538 263397970 731300729 841525731 553118878 837555804 372554635 167998607 744265198 887374453 657880264 16585228 972852953 658802268 396781821 340444412 749275364 517664855 112270934 587556031 250877498 315295383 80371822 229916771 982540260 916871481 625967003 191139760 279914000 760442568 745283816 992802101 218182049 822871884 59016596 78732129 46894669 204650056 160750964 563832819 520960506 586792919 194891553 8462260 143965221 302335613 355644097 407618722 494748547 539184178 324495193 28008078 463970168 102740235 223044684 67481688 245399581 355420268 868623010 618543831 858105235 469127316 535708138 408805970 253275219 778192005 767025638 457185840 337817308 312831483 697469963 605038493 392600947 359867901 949804843 22753387 724275633 668598952 312632458 84065309 728299987 922909751 103568750 317136386 660920561 852770480 736748499 824515934 538338041 10795655 284948318 598970864 204873249 554509908 89589063 101984943 286159883 709348803 249413425 35157695 792084691 537041341 41834479 289683835 921408266 737148868 782051251 370893699 489478480 98316687 113581040 370438983 450670008 748581813 798766575 97379729 111208060 365736508 705820504 57451726 421082545 330291559 463071711 785712343 713706541 454844770 9375962 465796180 149237341 228763603 105018567 535468387 340110023 218074989 910486364 659947427 829708292 886688499 378787358 924687085 326950389 568540567 338255517 461304028 790903264 59616206 912098153 251711146 430193982 854302447 136671190 13878899 56235899 242134415 666921057 85493903 578518132 742571291 560420479 23608858 422868800 172569608 291269814 705978561 610301453 334695606 13313892 20160659 919637265 173662561 936338890 132889592 651650832 742544282 212432156 34614874 154201655 865053283 92734607 589021548 451694843 606400966 707484748 216646044 12585930 220505869 730867999 671284318 718130942 841595656 427044015 532229755 129878931 523679093 646924455 430174904 318441984 150253408 216234685 774470057 543877309 119218150 424943682 507917043 51432441 796380023 443742271 647828140 643074278 780231626 803274133 968514651 66949460 164208185 315834528 466760538 539712137 897097895 131620612 745596472 233410536 601750574 960441807 195986298 108165647 276243717 394709387 344238428 489648671 237850365 347480505 845695250 3914433 506825763 551959720 965418985 741453321 29722789 579306221 822344272 595752856 821304349 998756169 425693070 868500071 218156304 449072094 973853217 598836636 929779100 66042001 509920054 19663399 20585504 822126674 662808055 196371441 937817662 656414312 843762162 879670745 324761092 496757668 407068087 896781089 967694555 355417070 998646274 55923468 367489174 598972558 130173714 572115684 958017712 382001735 972161809 963628842 38470022 863019234 24287456 772568558 426165421 637416714 804757291 414629753 668576780 238089899 558066126 731777420 543473290 988039893 523199724 179626637 844887091 319012481 861990192 939855907 56720398 199480613 543632318 789439540 860340852 492681507 288360087 902319422 550380034 851774642 961290797 60701389 482158890 554819462 589577897 596749978 161271926 864747970 841685787 216052690 363071452 275050789 163425521 488186921 228621032 171871297 351996028 217422053 430698402 912596049 308561550 987973624 156562260 679984204 722676841 786612409 726298268 573972688 357255360 705308874 361568369 426436333 586462844 519126444 933215575 745533659 805726233 357241819 673793426 49273177 111089015 297079830 856109804 873621873 75327489 589328347 553726476 454982316 977614525 869831135 827976057 57389302 354188841 550916255 556569672 168040534 540595990 834882803 584332923 404976990 416868834 306188198 297310011 690104405 90622531 419876861 386458298 432010582 65639808 789104976 725527435 905032512 660766592 453129296 181171581 103807047 472919693 557691278 36762737 842085275 912407451 144001737 909487524 356543099 923195658 750411938 487707134 529491531 773876549 100276212 960638583 514333338 527330424 514754431 515758289 728928516 30835852 663868609 369584819 485738197 401350593 241071980 719721498 220494659 10659772 89277285 250357259 963281786 359125812 284730400 426646662 532124306 111819126 183098039 963556217 359858111 795005423 284684362 220662686 862255467 620783797 323282310 411964400 159499292 12875552 292769618 375880551 503017261 431101485 341314443 914709010 784335357 778977973 24788463 983639989 463302886 895188809 770534924 669028481 642557052 114743651 363011392 675302463 630403022 732643152 937464271 6068972 405953103 534183089 415812105 773478663 714940036 676606072 553187800 788991896 79858880 725413779 482797583 740227502 353123610 959272576 566055490 909940416 141996527 995419418 956387515 513292628 288440132 918133579 41039172 575638416 339462103 50452407 439286279 626465593 69919913 120649753 411931292 140436700 795962443 314127825 28637633 554950913 310486930 515930109 602363964 276848569 204256301 180762813 370873930 666186412 639847498 509654131 130271801 267649299 951319477 65403546 117689501 389735050 516105951 716022674 490562452 158425730 417092976 913631916 370409907 987034826 504478301 47079668 685561133 443894321 44330565 311710208 221303759 33492509 819229773 886702838 436259960 764027959 929776025 650993796 760854430 443843779 173028611 218059503 530114241 581738123 685815299 699337557 939387009 604278428 67390557 186855106 415681196 990431842 874556294 159368217 459461364 458946163 573206028 64142241 83271307 479700663 541074743 325718760 360391233 678723767 792827277 290325808 183249091 528322559 91953319 59112434 102147193 424220728 527647899 421551062 934983817 622763356 384047007 107272038 571020835 917592737 862871000 397074287 670682798 373500178 218407832 641839651 886578935 756627628 193047224 493219965 425183991 350147571 941213159 218887589 906124330 230254075 110105272 867777532 197932071 949790283 867258413 837685439 719139675 510989899 917912978 235914391 789743937 395539475 672551901 463165612 571276496 871297218 172347114 958563583 294250363 84530642 278820532 311344008 234289123 24587997 561138023 208261259 200769777 961878156 923178489 731255162 389652555 374974220 773051403 152566907 247955096 111057320 602261802 770683212 550177191 780917923 845878238 812085942 592711048 489518076 706082652 21431121 999959084 188913048 350118169 106853061 941490900 711525652 670932697 757311744 24941566 262935201 287677392 180457051 104602681 519102289 517841915 580541828 243750782 98551962 874155430 985917956 954288112 245899496 617467287 601394624 742003555 649774972 764940304 243446545 338654461 555807718 451370923 531359311 64981538 652792912 455905397 784893297 281907316 110690796 403880937 758223731 472826465 334506712 833878542 19466596 954767759 713875475 908564308 161052829 679120791 893028071 629434441 145692670 530778245 383818823 153705416 178914843 44468690 767612263 81157156 237164850 34392783 508895507 537007908 734712523 652849965 955444620 503799744 855532626 304748549 394063015 397207688 451091090 295021127 747268743 216691431 221444643 641822018 216413071 997801083 458062006 471693413 476205734 711759785 508302243 749331332 422779533 474814195 793940627 368971193 144858451 628317559 451525269 87679789 769746739 942379551 610464823 350819080 271893083 792630297 991565878 523893752 635157622 101339625 33297129 399683567 759069665 728820883 895962399 407538087 93844887 308142761 536772643 512394858 426856988 230112884 626624912 431367311 114473712 626255006 202172757 838642638 120171103 626414105 354373668 552284414 400353952 279699767 355003391 854463733 837466636 149025044 175832514 499852726 340494574 957538972 570837013 572200230 137234022 653055423 169891466 565621616 619520115 385318584 420746068 556978982 273811232 555741913 378320259 615648409 688823194 313657625 272520441 229707572 528120119 102674526 847919013 901256087 941991294 275628604 566623124 507177076 229076561 441847716 47481258 823871130 237359387 422843769 947640478 310858451 556264701 717292938 920434763 373632325 215011385 370337820 732322770 29187939 374961 219392784 744511698 131865232 308094734 273255745 762569159 258672411 180210018 656239780 759685096 282784490 835520769 168178723 22961501 50930121 912873090 221525607 671367208 964036960 385376355 522128389 61311905 995664820 104883304 764674946 962862473 523659507 457531268 429674803 49754506 692328915 969315303 548828024 522701941 189517650 990348306 908045029 913020477 896301479 853153614 133168332 518164303 374242399 180264855 344299529 212049751 523922160 641194672 387188693 630035883 871041373 256667682 945109094 162492139 372910630 272478331 878260295 663888306 375164774 606574929 649081134 133100321 417804738 284444619 932840787 27632310 791994372 727049108 26894579 441843815 201512148 969175626 686015078 938004627 199197142 315196401 330625768 379732765 279103344 731805348 159883169 547677257 442494076 510685982 919656850 962796319 616531828 930794033 951675947 763488915 765185793 842392447 725705636 158903890 789078397 882444376 843109226 653544050 823590779 636415805 574194918 300634627 425177153 992559635 122241574 25222515 678968591 811424558 662547063 175496068 946213020 562797424 834022198 887774881 165252571 914149578 910206106 964372230 727740805 171643595 814546865 797485877 115462521 477803857 169905077 617240889 720472858 188754954 452111407 73030152 288378313 688635709 962225736 196533761 194842509 695541782 251386034 967252773 351699341 187467507 414216960 596094957 432324157 501811561 251424357 484358191 862084060 883430138 63932047 652612586 37335757 172342996 852844732 289937869 720808401 992439481 297055493 643969915 258313663 960383306 673304685 436069721 696274167 700381264 851080042 883874875 748518794 545798434 851513000 538875148 149660262 274419321 963747994 155910051 675095923 55878571 495268766 674183470 618992569 404841750 111522482 127435415 885916193 520445744 98294936 805175427 993412313 946883681 733265888 907834977 724809918 314179892 608284961 742397013 784122771 536941861 514428983 243798180 536970661 237243844 932710236 938203454 283722485 45749570 58276170 550069438 672372926 614163811 606812422 974667545 442193708 857026927 151066161 503027363 109142282 942710873 271945274 21213543 632207548 17420972 515670041 856346993 304647493 424906023 747928631 770982186 764548228 611806833 236906474 17217723 494082255 915592565 312876191 903600368 956398035 951238304 116186078 597675917 745962406 497801503 90684327 285124725 83596068 644236861 450375624 327116298 471736644 48407331 720257440 649287400 695628253 732715093 20638841 306349160 560425896 200757804 866718435 587204943 623855134 160064078 753006426 842052050 986481716 132524923 79712510 925715542 815700476 613581142 944522062 306388622 317477747 782564104 728889255 957808754 314657906 859327838 988477224 567345569 736807559 320130998 791861986 927182073 402312275 585069558 478335393 456709873 530401854 654715348 218794158 851192520 750259180 111005927 286197860 475045852 387083526 920317395 874092538 1760640 554030775 265289897 803578466 450743026 818545488 321907466 957983105 136397917 278272507 217876209 536517600 503754189 80206930 953425804 844069192 786935148 903270188 371611079 793573533 95303368 259224803 307247305 146381868 899205201 126884477 996299494 157779062 33669228 658163348 846333618 695635520 957110984 832655023 710155754 80049314 264550213 533421682 845565859 418052022 475824356 46417250 340138926 4547427 705400777 793081768 280683257 605751696 416317502 285064661 349090189 708964928 315947241 225222989 259823981 390395764 678446033 63808493 601544275 126754433 134644548 808934722 498186395 401823412 754407382 687953560 797660836 21382158 948831527 7450995 240198766 442625884 705328263 890814490 715882500 886348509 617019901 355028732 363063344 66291334 947667158 939868663 229644472 23990931 31670925 95345723 990210085 931207017 584488295 951455809 205601815 455964200 592214929 638159684 3124099 296269578 346551031 934440084 873225597 865739598 185900793 533090789 462597342 349331646 558632043 936808513 427251574 893783047 731382326 130035900 766852590 261516153 997634678 173108653 887933657 40208474 281074959 537922044 266578560 464244194 694757254 3883278 285622361 350778854 178224876 206008299 280712869 895484269 159703746 227830845 344941572 998298443 16363889 40007029 359025178 125927056 227828097 132380936 562925424 150711454 97219004 998332219 374228965 18276795 430184934 267246693 91809787 667196225 614028845 185281241 940696297 794858513 691751378 977383741 25447614 661538245 641912130 582281184 80321818 632341542 246567330 837684510 618942362 828666769 113242412 295295707 320486324 535274103 961589202 196456504 800806853 597442754 143793025 453144268 548757028 991644499 726308526 11496666 967896835 616321594 134436300 307651791 244212197 340779732 342986872 817597551 235871402 399443181 910292629 311383670 813186412 118184453 915704911 451557906 842463587 630889126 150719189 980082816 164535491 465250111 637897964 309091565 162771191 573076723 818945701 559625618 66793992 773037344 592239267 3597620 482249966 957877093 87482057 847433652 236803909 442192326 339570742 237132266 127221650 698189894 146914065 977198204 143487701 452176948 252006742 673050225 406905575 862004366 198299142 822902261 756097624 761337352 813339884 372466927 676486188 952946038 493340930 403902322 45871258 806494771 77053343 113521257 135690332 343989238 418386237 882510432 270432492 894531074 704637147 394941174 555206938 442045648 544667649 730044121 232706216 453107850 733360802 136812909 625714189 421446363 786595896 375062636 215685403 972746690 694227878 626181782 623308599 181571777 358166393 658644484 171196955 940846143 875661803 477959223 558109314 339281374 120683280 259560799 988218052 13533611 863145382 222145334 76856101 171726128 18802441 142819800 211297167 478572345 642742320 276095391 417537406 131567410 922046435 975023662 92626612 3345622 412622123 22730601 159932491 740569206 804672523 307658687 363956300 200798085 846542461 620618193 181750018 364190481 616872089 524207279 750822585 812352001 281394199 367606739 489013375 70628187 394475344 84595937 214215919 68854265 137239408 552160224 589607785 338073102 903681699 235475669 32884330 417376982 43943842 374472932 819879128 867298122 410192880 795184164 177396022 276943059 871113719 847157712 755346079 830746424 844786197 799196395 436786160 196793782 602532718 93180515 279876461 894081205 485299031 187656001 625233519 499446884 121227296 613403294 247829160 219234442 41553621 414315122 340102021 709644886 539548223 456689653 802910063 18976559 424581140 665144804 689927041 863110086 130451906 355882370 124367023 483661997 965795710 189448994 898709751 893588365 220856305 146122515 725465745 392130195 760587213 319609202 655800369 410745538 740861723 171726112 959405513 448904369 728329794 358146429 674923440 145458632 251627350 948834541 567083803 909191023 477016881 251047327 181450432 168194980 978447524 911362879 171177080 346075949 258392741 648421561 566917070 276349515 320482272 818893141 393290663 75347652 134269690 457520973 933939331 973773290 304660638 944380259 248235766 235923124 600704599 887006754 620908710 333009505 254211054 913107404 659326085 330045251 206637914 600652965 343727897 851182133 853382750 363514516 246153497 311071095 857661547 649744534 545331610 297963188 164435989 970338200 865008947 367803564 792997154 136128793 309869877 195164053 562380436 380279518 939950240 594805979 320306364 255679142 175867077 238305461 251988491 636252715 674317803 604028621 792042547 230326641 179998731 254485514 513989058 730981383 514071986 603220588 938017926 169140685 92253106 517847996 62688276 196687762 172020024 646140478 747750817 753604924 848217451 343049926 957038482 692978563 375172596 913402539 748393588 126820798 215538713 822443484 394251477 921990612 579503591 222403945 230944643 937476382 447272132 100801137 506770493 769763226 202087752 980957780 81791201 549848757 555621299 245381710 547731639 665829290 481121762 884117784 962055246 988074467 681799012 994544225 500906838 150133486 631745262 804193890 490545798 342517622 261669228 637907350 892827499 201012372 570686871 761308252 672761191 52590092 19773928 720865479 483615702 761919274 893985247 37606555 919621080 58648332 202099344 453920528 405276822 833201942 204613555 850758854 388862604 194841709 976321288 700222675 325866971 364605973 679684897 327666448 656470768 906119733 280325540 649601978 458255988 73845909 340379055 947328822 626919715 987848545 437086564 724214017 995403502 853986298 425079007 516120381 223077488 113025990 190325593 325309555 929727506 330629750 442744532 908454461 5540037 436715118 624286050 267962545 591173386 706944480 540097392 524352612 455318043 395633949 771204595 431513572 276436248 26271546 901622280 261816539 473067549 613109187 739431474 852641692 545083994 976499151 339753000 491846705 937915718 755659120 825922386 756936776 807948012 515101540 424831292 814081171 722087863 71841627 210638018 674256988 605665224 184776984 857294834 815013910 378658103 342992516 923401073 797914033 639725865 228898448 106757239 932262647 994236426 394929073 801632051 614358380 330809372 279513355 587055794 57005726 3130796 115014300 298089808 377243879 816507546 411551348 930268027 568635710 471111267 660967638 444062245 212813662 597249374 449532202 814314048 371893225 968816423 34196881 972998207 752152100 435564812 554253415 535074039 983503556 417143106 844277543 537426780 89991549 827757908 596275297 538906094 389217198 126823660 579647719 884785137 756608177 685006843 535095309 375274772 962126510 186740876 200736210 388587468 659914820 651791873 342438091 353025073 292765400 580018950 550778790 762551952 847455006 185929089 599825049 341174624 252705590 56395469 469586796 73486697 963997916 57086344 856006460 287265980 857421798 428459804 981285421 369653867 955097923 960344459 523755798 977345226 571981834 397963225 510037286 608470821 384296500 785301775 972335187 816301136 806852581 677868329 14570273 345265445 363332533 969153065 613157731 804419417 770383791 497691437 732349884 325355295 471324437 339047426 662244730 931872569 369677847 723741091 693156774 65030246 832803593 303222051 936235591 308657558 219676049 588090852 710465001 671877428 479300188 151231333 261134004 42330025 867613460 729015336 753504851 750824746 148141603 535816025 333241443 465641262 958365550 116747655 235954106 186297673 250088993 725255672 815378604 2319629 799199744 598201794 867929186 631189508 49122073 10542387 24436896 237032879 406792894 764894876 166891685 144964187 415951317 863602438 31724847 344759859 710741328 943867476 38077303 267104997 232132586 69070115 517976530 624159095 508594400 267497681 62690452 73691872 918447205 389759697 231632759 93062549 423459964 254358600 505453588 668408166 22353903 256068555 463443190 747581988 395491102 59224737 274000146 778800549 15108152 556134607 709420437 94665593 6393838 437853269 193280826 878240112 700488345 282583479 779765906 692184925 673521544 324968679 629487187 752936608 158774174 272198390 602534496 44615148 880875842 387877677 111920167 18979984 203796450 901802299 554270740 844112223 853078048 376230428 320350325 850525325 851986425 681551199 958608413 47624981 674111815 415563598 652305530 121123550 372431852 522981033 618173350 114766276 557829200 9024838 586642142 982543609 419065692 85775905 201746402 353613967 465748964 849289847 682526890 499313235 26893436 480603877 911664041 243995194 606072536 784254499 980387038 610859281 431446552 83521171 463643156 598230020 435925239 141166252 429351646 666726489 836107235 171757621 339114889 270427201 372029037 828172318 542555807 896124105 812453271 910733420 270363335 611628868 144901844 947318127 189977142 581464358 492498088 882714667 955115549 962064343 419571938 335606420 287891275 625221654 369161086 316790824 917554911 810656325 344795228 277879725 254592506 169175653 93397487 725546593 932521443 23342743 21763917 334173870 500066451 935687474 691113479 904192905 559456857 178600178 368605540 226939556 952286680 116612367 631172665 549776060 556360089 382839111 797244307 950944957 896446344 618982481 811781552 391224501 893216940 589203645 664814350 218388924 941067707 780847125 797345620 439397975 807668833 999188391 588835715 453775170 58282964 993396569 87173240 207234634 337710369 341695323 663025846 700889069 32665426 898653272 431799854 757586961 716698179 310256163 755785764 614390972 350811701 258429803 252583675 410705096 971496559 315537311 524990453 411057707 891502580 18111372 128188452 129473741 251159771 995011648 250794350 352675378 522622802 196914628 323638497 779791527 757293709 655371723 492229668 750763713 564706596 93700846 717551566 293412166 681145935 191044985 167821460 982070096 687584478 887261497 126096406 547856939 51444068 544126767 581725608 653125227 45564511 570620010 836976461 320034351 83410161 425141922 468854753 526108694 845263622 326716028 623764310 773489489 23777215 499840707 580786341 565723686 97145901 374799577 289340294 601804781 169333706 595249739 387859856 167939201 663214480 48154926 683626519 845293055 313193430 72186959 614352735 383764577 461448246 669561108 50593511 620149595 45771792 425938241 56508739 413089316 975731554 331548110 673050195 625429570 102253726 732620018 334962035 317485492 795610718 18197097 564555118 375035171 306811368 303334523 95135882 109918111 515137183 568573362 731442892 795413410 174522446 544015698 503834082 558853121 289833069 811808539 791328462 39748549 956531680 907311203 545015675 594027597 895409840 452831252 182069848 919147781 465551181 526223671 529874314 986515779 651404882 259856191 231334632 197252853 579561113 247306548 379646489 773162355 449988878 368220275 376050548 644568997 428554001 641818193 836288811 741036498 521435845 11806610 588234189 896980127 474933791 898147425 190316156 423921912 935048586 718167369 222152972 617400745 197703616 836178160 916093928 832972154 781943541 140408851 754992837 885580739 814565540 311472400 431702767 268226045 391380628 937518884 125388572 750280465 107646944 858757719 922063714 851230730 841279476 33068221 862208442 959904952 585585916 561988714 666253908 589724127 367656810 53508289 990482300 247849209 666749968 974906010 544139072 321537862 769721966 990805457 441366030 113321227 85512319 80629457 43351307 99441327 756799492 582121597 184196418 611679627 422631340 568955151 432496757 658265751 298177121 164506331 484820904 493377512 92778787 528168268 479035589 160957933 761587741 730917424 718969785 675382086 975776566 48016613 438032842 317211665 517265845 331058777 831883943 394849465 168439797 192226023 460565501 789581050 972194009 187087461 175291357 580708960 83571297 72943231 864307536 775567353 536866361 330561591 6642507 287109389 237521515 906907524 41067740 882252339 873081557 851491552 698205183 195873851 725219969 920073472 533346155 113895481 247433573 936115318 425353829 489513314 40778382 776129585 589730617 271683320 297684337 247898765 163346111 573531277 228321952 368172550 394193952 338773705 370846354 846800998 668329609 502783728 340892585 660986250 762689339 613653044 665118963 365451373 552512072 200486950 118966312 646551230 205592837 888294287 96826457 188627292 403804343 235532352 133674708 65972529 621583073 489425742 300809147 473887408 449379189 780705085 733072269 86993754 28527051 421912774 95610245 408424850 93132696 497751353 431466046 470389996 226284406 716917944 93801883 286904702 619565830 730119752 835338854 990392928 193494597 305022730 744438330 250463149 553945037 418901589 201434544 496358333 795322231 506128805 469823796 339434438 718244311 698193756 962761903 244214329 803014498 82246847 844273328 726620829 530448943 363082384 8451953 791856611 387658509 382703595 965453256 363778558 427475573 298427525 58394328 691066120 268410667 462390073 686888201 71331635 894080748 162175699 517761732 495100189 665959659 869782329 211278516 654618099 260411987 914439804 205339919 141018 914382201 169801171 316184545 659318283 296273439 914991159 537109738 576859544 77631713 14462355 589101560 20287032 104408094 224980832 946925214 258900516 422507046 898390570 896947029 535293672 939950645 68763795 610647763 494137552 406910197 879290110 713481475 851653026 641490387 24079464 900245025 172395572 877185234 481037765 953957224 868380029 306616703 542480078 965340381 904208511 122225005 111860150 674716700 737454362 620743933 745599397 472683270 485832780 193434579 837164866 940195355 838483373 722999725 799228310 411454469 369826325 438725074 228376967 2932016 872612305 38931759 952755761 60209245 374081130 819625250 432572104 147401964 676842176 94315871 916140961 871655928 553648902 268459609 693490837 523028326 492669784 301796103 671023253 851064818 721044202 833090425 292245244 483627703 43071224 586176275 329089824 348694160 500257935 690611517 413535358 322997761 371559644 538155457 362433174 124097881 166119070 909183473 640861768 742154911 357353325 59100188 495525028 859142464 289565288 363115315 50635732 164022610 387613585 425760014 888942724 305417022 893738607 873433823 590815357 177249406 65550818 809694248 244343129 703206709 666818971 36309372 468241975 396855337 958401179 504860967 754582380 679275537 70354305 242348255 600196822 564854617 524949073 210884776 618465172 909144127 308136080 192255483 855674288 898135341 187384551 616750066 27164428 118118999 760407209 379253973 357431474 557470888 57485317 315150186 727600927 503190404 54949827 415755123 632638720 325128123 214636698 299056925 646055898 381878578 507194539 865761429 450402894 620174294 98160762 228856965 981913588 806059901 448868549 992714849 793157029 871376159 475732173 628444111 685315894 541295534 15280182 278395370 327252272 18703951 409446906 580579606 950064797 53863201 496505074 841975104 380247162 331473216 924436414 967404665 938221050 55266549 414731811 837803914 294997860 271869946 437621320 621859801 167181805 814133581 851932952 439832063 351083799 734017307 8975501 552511385 540566844 706539085 167823889 647883466 169983584 114163051 749635294 446260733 619662041 982624348 397879666 909280033 247800497 168519853 485108766 560613229 335621452 331292568 942332053 586479541 116365829 726905790 504766334 31735448 176809080 715990658 286109654 972666420 542757413 901912337 12398108 246421106 662149958 504319897 487803208 860627703 476281447 357770337 276338296 280043819 511007738 665715282 610834459 785884360 45282657 261760851 409463488 989609449 303017569 784226672 56804804 591372195 723941717 167456822 86702416 756209934 549289388 875302414 828194803 518830618 391000030 117969313 312202385 250989585 558478046 310772141 636040201 721640757 51440311 466695286 477801143 605358646 964458782 769706769 241033842 114419772 176685413 241607230 606560959 318043426 963733369 315753924 490129523 250148904 353450711 480261950 66472387 497221091 686881257 573307167 726834881 281851367 616236709 168327769 475860320 855269634 285797906 431508643 352658847 886268743 439700604 736143557 789887325 753955524 911052694 218086270 842674803 304009153 429286626 424096710 353837532 838705931 613555246 501323686 798729531 433198140 515307116 669593332 524478089 218510812 510399185 544421158 34707876 819464274 179474878 83987531 689098864 286486961 845173388 508103282 708923545 7421426 25134533 948725101 664396523 264976793 615212837 147336121 564539914 967142571 987746184 341052198 815088238 971293248 209011785 332053817 899614000 421877796 287090293 104802131 843682691 14595226 348917068 765700399 102440047 38243180 817777322 518085375 741789202 51248933 557259901 692155250 49214758 852040746 807288478 813577915 552683107 436074003 960532440 635399810 266190155 403359653 614237201 997342625 134091122 138915443 821071939 710884555 408858303 577079020 58830991 280612928 715753405 589513369 924824934 627568268 149359488 53348941 603930922 424013349 857946809 955482730 579064086 670562792 541207375 478768764 841431835 806452076 296890584 203185612 765251826 117291796 71762819 502476054 302828549 35690066 429273939 239184382 107637114 139097671 611157609 275995191 558627787 672587370 90401543 830721392 966201138 830880516 543630385 526593687 330125881 719677658 624484601 744981606 5633353 651418978 740919942 864132924 911230381 633350018 485987248 189274631 431265755 247066482 34616741 823123126 20478985 753730367 435627182 981663766 425951762 294426455 682095767 579890067 481117486 69201285 448647089 908526155 922362840 400582946 65281116 536818326 238419595 30146514 915619011 806267067 595845247 120720210 966914812 894236060 234766955 773801010 576590398 902551102 617887077 843172011 848567624 643154741 133394664 386708428 179242307 164499465 540574396 581437772 663362615 911239440 70165079 68519943 973323466 417223629 429261060 356618012 100363382 326791619 571977384 856480266 619648003 351361366 973947332 506183995 694928285 797134272 265792246 236887756 512987629 868788586 75069114 817643986 892847737 779515114 45188160 603399010 275402073 440789705 875471335 204542218 968959788 895477782 529197214 43671938 728838104 231650489 342943722 380344854 345923496 424439344 649571416 234541547 887589711 20032239 694078963 741208702 136539209 61021823 620584381 172038256 833869977 761907181 647443782 896169126 560281542 147789485 467441538 41165597 316263197 113570840 967145180 979413111 542063934 117572398 590154781 724617425 420742030 889221254 495827579 213084039 862358796 677765701 316034919 706809242 497886985 500092486 136553391 955305784 671791233 640158329 701000023 487793830 287208726 94567505 19301843 465937816 106712241 217387927 724157000 820406602 900352175 730078050 87939428 677446659 923749062 248112770 595642749 857620596 476618624 635165331 702211405 114096422 143289575 369755547 589518616 229655703 645687759 834215407 378333633 76382393 918908778 752616888 729710976 202048664 446835308 730746363 893852480 116537129 66503732 66788158 466286209 816750877 569086185 123605761 799682611 856086043 185614266 765519808 417560984 450448538 477086175 926734691 610436931 494364347 528027680 280791774 692664130 389938069 414403475 744422647 879061157 836234479 783042090 679831722 730519490 361031484 485072501 879615639 203878405 539917698 747727575 538898907 682892586 719743361 130313039 59006329 664871458 599911848 539470255 90774974 394038830 686769395 587724327 415742510 813842728 84459030 970668609 803961257 145687052 485530696 174816929 93698073 138476837 372712088 464561287 999492127 485249545 110213812 92141182 665973487 425644254 805641833 533868890 314388863 717812402 357672215 435415169 55760941 201495749 209294478 742531836 194137080 96970320 765185153 904848277 246556644 300174781 217112291 750771421 373242358 359160131 486629312 402077278 800740278 178218246 229065694 583123872 433043116 980572973 514839658 630318133 733524647 789830487 804209253 172074451 31891600 947959275 749961396 955840819 24183566 792327823 97458666 934612321 99519488 416407438 379209630 70845337 193174947 271253685 237751262 899105282 355921388 379352166 752631885 35672465 616101321 12933383 779536096 537697512 695920733 127995613 70826191 66451266 869933437 175569025 766084479 797044490 925504124 410436808 374801592 465469451 263921050 201685614 505313619 1359162 710718310 404479960 728614197 203916278 312894062 957409242 281191585 362723044 107517203 637340337 537954172 231765413 606292653 434339279 875622297 461463927 934899506 179051372 34306258 479777299 297263156 689286010 363624033 649489657 31727376 249851014 538857885 163590428 33155173 307762143 71257036 697434062 334244560 950435774 894040876 157620273 242830607 622067004 460207284 373502374 792635779 430186612 730877161 140780730 14518620 128850645 620616065 262207279 745727825 867880211 630417480 330834291 801161161 699249760 635407972 952848923 507340515 584967938 677187434 848063709 970468634 134505423 67415590 197644622 377782760 453067915 574137818 131624156 128992235 927729188 988794126 444530115 374906745 332721225 736367257 135522805 678552250 215514008 206272427 362745799 878859625 836686649 147783683 540408351 318500441 352232714 691765589 884096806 290951034 888975100 392518600 151394541 817644579 377457201 803653947 833219688 183922716 428204011 688620043 53587760 338524501 76493983 713306092 944738550 692307485 786403806 282341299 504116113 998462571 134343817 180282447 788655933 793369832 852218018 147630210 453044021 475238867 916320345 850497466 477248279 16474006 640981496 668334732 450587280 421378178 279218665 651222375 747552384 902575906 229577027 56523419 871393263 819798801 15080034 630020881 285026550 139448452 55732971 452707737 313049735 955856576 947048435 511975482 409887324 701723939 751903401 153647569 583867828 548950436 260565914 798675894 971741399 757512490 340617036 721819352 518164894 373669569 277435286 200122118 353391629 190639368 520428397 586536082 552663476 796778529 435126724 79365187 580442298 57782288 602356900 698357049 383388726 197843068 805918520 296747721 986415450 177773131 675445268 789902023 932844151 49081848 430745215 310258291 588355443 944884811 417925081 732508514 394851236 995697375 440448270 30923373 233515894 493717570 948093369 653870204 600821652 421030749 892520133 837459683 449215921 312291342 67248802 952050277 229530495 795970176 172979036 415512196 841027912 82948127 306245631 660063223 943938920 177035056 689029983 717725310 97804959 888360115 949131845 417382047 841625426 237810447 663688753 790340738 843022792 538708834 779750029 839649896 983057694 37624468 917460238 22749188 93419548 547219945 781005154 411914280 188727483 524226170 999488275 168076638 613597689 373095826 515894190 85589581 660284267 693394123 526845293 263313717 754507830 497088942 519018129 110959913 137578566 797999026 318252889 454560017 383389351 935126550 117758088 199894477 182316739 868801662 593495315 111288074 595884950 509874503 581472773 823662220 343503307 870830874 110982541 700984491 313865211 899095885 574314152 254788444 315093831 34119957 646316997 639020452 135630136 398560053 192779387 299529010 408582923 935171461 941819048 100988489 955095753 891740409 992329443 375299458 602154010 963026745 475799847 624944021 421908374 86100485 183414948 71865536 119032437 630195154 145199152 878478833 361738595 814805839 462235668 430936621 677605207 452320657 378929368 734014373 316268593 508448709 13085493 144852279 472697839 214107577 883014585 268574232 382222244 514481673 690599504 545089714 603133389 534726630 331015572 776453073 136131323 717122964 440405540 959313 765222231 60321194 112010029 760859713 114938659 993397648 980705024 91191237 293726450 715801120 706561968 512466427 416725366 972843341 269795177 778662331 392394885 488338524 632569539 396288378 866929926 968533445 256026693 202508307 766563292 993084436 352891063 788920612 991041602 411867178 902989671 416402752 215471277 586054888 900422407 346202687 164360628 600116175 515047462 394855856 917379391 721612308 761023567 538755203 193922473 488999633 7567438 422412441 431008768 642790152 585334706 851771236 468499657 868641279 382835277 317203629 418093179 289537136 668564873 958489490 646936992 619944320 304532897 406390605 145892255 37859856 866008038 918493787 615177642 58183637 861055542 251874764 585417488 987353573 714485463 980799507 33903293 279047352 659562359 485259756 588995126 91008820 604219187 741033505 522487773 824905558 896263138 946954849 452225979 376067843 589554689 810386990 490675136 385359203 660000671 288226987 95699088 976963437 906915529 462391660 304003497 811509871 315996349 942168593 830509349 373247475 818709895 154510087 74186030 997855456 881217700 901264433 100033845 119392763 39717425 413640355 129222766 879531769 459906062 393909406 567775246 949433641 606711794 660919363 886718194 241860272 361514612 454458712 109682751 922595765 115888712 359285079 998006018 562121939 71444801 803485235 645896084 142005643 876905399 565007741 685868096 60517902 511845036 914123463 276444904 886549686 364467467 397213539 372904680 759904416 575718384 972958462 132656596 931171139 454733366 874909223 785766481 34489514 44914028 98139880 664995415 481499333 511540110 692223324 868118597 853731665 187622263 81226329 323967624 119262722 64231560 511246490 627325997 759724077 111084176 770121931 821654503 158815909 789324996 735011562 184109768 491180686 601592110 136362281 970251610 847939696 754301593 529240555 155104736 702600789 607105918 76269425 67825462 599047159 94668339 925969172 748656933 991459751 886557808 238961034 107258979 527503427 103677437 101873028 202159092 850093816 675694229 446126025 13525369 319849494 16633338 890120945 437994757 874330247 430912655 264576558 810319563 778728217 57622390 424611037 154475740 358094013 180276671 647497392 68538633 547631910 558843029 231697528 446031693 270541076 733356158 291532728 694960707 897117760 527148361 321719507 493593467 588094987 194657226 428818159 653603353 943080969 872091325 277233254 945523963 699701704 852992825 193042402 586466206 992246856 895700704 699791011 290804382 71453975 619851205 708007787 98023815 283464447 932194172 328017478 510223793 486932855 752548453 358055318 269827030 554208128 921545683 983036861 21214790 817760027 946616635 235062980 874557929 446423132 849533073 751823480 272549440 761418021 257910587 446720434 210443273 329904174 255876722 910908181 500787231 420147254 25296474 570603975 280384936 104121229 779362301 418053849 13859170 721775568 454665158 607753406 884268041 357051040 16741087 286182148 546727759 216581558 750983248 190510636 899684293 47749850 893833652 989461283 625154456 915770384 675855350 865004804 282117660 568631031 692837678 96453911 675887672 868844344 477318238 943707704 50335480 211986172 850218054 390432449 119289539 194772976 709930171 214212445 622928476 293873528 371894328 915841002 51627824 416895638 493667616 514670885 496258969 338502299 963824745 645186272 714521739 29840745 936735000 870937659 747061965 290322254 215853422 956656719 307308638 81975517 475436257 726887001 832432929 991372849 817538407 925730128 838867545 191937047 167428842 734440409 968585151 741749461 983936899 548411549 84513270 592992287 53600190 476659441 188021369 877125409 968564074 827041930 840120934 113454771 897182839 934614813 981257857 771292404 791320538 218363113 323681778 570160962 967105388 811105502 212925251 349685715 283010826 258201259 447347556 840209365 547903923 766675288 431386916 615149265 712566390 451915606 735542248 101856275 585266978 89009273 755318764 735022215 950229104 175208880 662205004 97613778 73942308 252276287 761383792 401690711 539339958 149220778 45126615 696361237 868754114 636076172 769166784 753598211 965003838 174166058 543087800 584110274 915792097 550865484 864578199 870341143 785567970 692190779 968731018 738183104 537786493 762164267 290411217 942678361 181375001 975942681 667259185 535921360 781357393 207716544 806025571 321647237 876850132 221888647 547109353 105984620 752207105 855681466 276270757 387766840 319361523 651394826 34193879 217800258 76421917 274135985 246983232 357301785 779035841 993776796 93491948 186454765 94593684 619361487 191250855 85926554 596191391 885553835 551907256 289314784 611962265 17740999 990620138 184221270 943922602 940823209 352402994 50150780 768768653 21545891 492063315 474358845 405504858 312755781 708428588 642014612 432024166 168369728 950007564 344006650 791848262 270957789 745080350 422233474 454708675 954832069 296060939 329530454 705229339 944906433 470465564 254595416 977481233 733912734 966102763 304783508 105262589 886846326 170561926 890559582 16121563 78644332 587823528 533241893 240116752 704214320 163041137 710528469 950881638 36510850 405352074 408149620 974985890 585579382 177080793 128865160 704369781 817929062 952548857 659178660 995937407 369334927 489514396 542781835 633823883 343466278 723661992 770518441 431077380 327204038 98206125 218472260 27152463 380498076 943861174 382162184 206271911 280463056 527390939 107174068 677680084 492692280 986107899 187399952 335654167 588866336 307385162 728966915 576682648 5895193 289718258 662310351 342418639 420769331 930351400 175325860 561189408 933052060 499341974 311822320 962529405 708590298 440387285 775566241 452085217 601211272 174147147 701535160 513123365 522004777 879772645 592551675 833165257 842359221 901693745 927175143 616990206 812808575 222468575 862182674 120985176 509389082 294516680 434105352 674177443 809353874 804524002 862660497 42917561 88795894 324456209 373851063 414862762 177567526 339006605 240810822 46002509 623427538 154436235 141440223 960465240 168711882 455817649 651635470 451102603 785926261 103885596 923644048 121374060 168464854 9312319 191500893 557346150 792383321 549725020 763212321 55037739 617895480 114478311 748952896 259821298 651601513 982957341 313048331 37807951 217361265 936462362 171715162 269115725 866019257 910265648 381619693 831153506 46660344 920786260 123910060 445576790 879673522 255024554 46943130 483099993 480064581 161584650 1062368 106063072 886213199 839747001 607858861 266390027 718518049 627683054 958490296 533004649 52917461 329884702 857130355 768079501 147133532 293328712 545004578 746892042 975327117 639890113 767642081 397393859 663594601 486381508 579938067 326865011 614740646 96540356 725352604 672381585 782033172 622458446 549549209 364542321 36644771 541306515 403047080 531398412 150669772 620650364 378407406 407191453 630718623 14623344 48788044 770508638 245400783 868881147 495213610 252336069 819283586 665710062 683631464 298068188 607275324 319291668 677131757 329665951 858246437 291417244 522672048 376438765 667887660 548389649 419925117 524187774 874690117 546224478 479344668 127154800 664653580 449067146 152087907 172773212 484543917 912651171 598411556 158011686 941235796 132436060 256051979 219539273 589194751 903263259 210258894 146202923 992587261 319887618 892327789 847546540 995276800 298210991 24577835 475403998 336147857 967705807 813097058 231339083 569454894 757405781 804169541 656180037 660931200 139210989 883803351 973024227 973296759 95076434 716206284 387002094 240818895 591700069 221728137 7655588 641961841 611100432 789007750 261760708 955352725 552915978 617101361 107215369 815823203 895253005 279295660 583788761 473346364 316447369 49343506 364069091 738161061 776022145 581243078 402259441 738530224 740722423 341753072 918887160 130685241 595815208 176306512 690192 280785806 582623611 683615579 758567763 588141850 11699407 246064499 407803680 522537223 828388886 64053740 294416247 761258408 830329729 28430969 987030235 384476393 637515045 365145892 951384147 862423959 250658229 1868075 644622457 890264358 241421658 532987898 127486211 473308247 658251672 748063458 368986769 861524740 792498449 342973861 987951250 3283556 275178605 353392374 146042308 339493685 997905551 110466152 4992263 256551500 772319810 65209348 925656903 377833695 38999985 321880077 351384623 124481315 725697310 169242084 807439455 343166021 159261806 375099252 778438697 717475142 620531197 864856517 191360593 78636998 161012422 487694272 102108337 288619318 216555527 528460183 49000332 888573341 444460033 609577864 25699978 671559153 989615650 724997659 308859614 88458570 945568838 997482465 432243024 763584564 842998681 902182789 394108016 179571729 497381455 580289485 81598026 483308637 574585521 468975740 986409832 146646528 278387082 176069528 316015374 84423085 808248563 141896472 851591357 545784900 582762119 515381651 151322496 604812559 996331181 824898538 656288298 362817793 598485175 425268194 862333328 568017629 575096168 587225879 419354932 559161822 622723082 434552933 457071382 9188095 752694608 781760698 650208168 371365844 426533964 379473274 898333309 993838831 237852766 614020800 720277929 96246476 528656537 791953227 184290886 236974504 772797816 611048346 888372839 45595549 613958313 673292020 476540151 203719887 852806207 703071146 783391261 332063798 761502625 243268380 834207797 878908703 241957283 192795974 963541521 479280555 792530303 699715908 26499359 541018512 649384722 801623430 826965831 749866301 323960309 291126414 59094872 645437973 843862534 49343206 919532870 845163681 942611234 625410988 258305811 808330336 340792924 500992403 134109802 975044197 106337348 466470266 896209525 261618799 759112476 843417934 685295146 368004442 227468772 270982172 58906139 356006074 144004073 638622877 221305846 741234145 876709372 688367873 178128281 783207142 998366045 691682827 538704927 21814598 81945956 840346035 178238660 197295986 811729515 997767391 624505230 564211757 82830505 558727073 819117653 928825854 54042287 216275059 500218302 526082739 195171701 216879104 220165685 632762608 307634919 335352323 952079795 292964860 271803323 992647747 884642211 217871995 961935245 276502901 159554981 218233207 269915100 640086360 52073271 928737824 287561052 861645139 87705225 935159424 999667458 61338749 869162113 405690310 428185009 187209673 261260982 410225432 51101996 243976062 211948973 747109717 868811474 974519129 168643338 162030892 860958561 750369750 579151659 346869786 33500452 752598865 277376918 24711391 540274217 79545376 392603131 427668885 628094143 289837114 743546442 948671451 789281467 395707753 720471801 258540907 416059524 714343171 823539706 916943373 586541735 992397215 818369353 338181280 838826011 460622289 432780449 43582526 149405194 966529522 142295139 13964406 487969765 783178280 146137275 360891779 808966269 646719758 6770446 189199552 13351249 312841431 935630933 184735939 534928628 976419227 640899277 655598960 911591014 270332485 673956551 945298061 52243948 170858164 797689168 584775379 251342396 147396855 548645124 444645526 538433367 698402315 181711191 853240019 663020346 924769205 846224604 618632698 141044064 158255480 326357475 559603257 88423709 970164911 346451198 515398381 522674336 345711428 784734996 389273318 638764928 111495895 765555028 312097947 52730684 973020288 347561397 894669723 806168662 24387937 571720678 208325140 489477386 805295416 235596572 618979232 357062485 941014640 700141568 335275659 790295052 541452781 235565319 853301806 166154722 917163232 62358881 371523327 685588164 841497550 225818237 640168210 960088328 675486786 236876534 338556661 385885075 151789425 258283050 348959215 93009249 704146631 358253967 140511974 152892133 387648446 279542065 639113600 457841761 488387403 947630195 22388339 872580638 562023321 967095017 82853910 104107209 216919639 947461098 492916868 54222296 517474637 884406216 39062972 325715844 641179551 542498101 579106704 454539244 828485048 584032816 694360681 928112963 974858224 996297498 280691311 54174468 330159409 184754990 433662531 428266418 73742072 945687799 649578088 701827311 91901901 422936486 953258084 127633634 489836490 237856850 324589141 611535186 561468554 497317224 644626444 572136718 420773895 499258968 487250262 178440370 872082200 631175980 375422692 554004274 580319850 804648208 711577926 317101578 206002595 457012461 137174777 894175495 761806503 570867807 220921218 171734167 1486364 117449552 579510909 701684743 241234902 183808360 878668636 571847095 434955624 631963564 681982823 89368383 224064303 517213233 542690183 802922161 68011324 777037626 593913512 757721660 145944684 113077983 406500483 350759521 821785952 935365983 957960523 834703853 734818646 761490491 422348666 522177310 384656596 697867141 98001884 560925372 70676212 30156223 428493284 174343686 953284538 77814608 116076510 112901767 665015898 581640312 624855617 58567173 367322293 436165332 746290366 36265161 566787168 705779572 205242778 109998385 788138611 555671606 546413185 387313193 699733441 744440570 61101371 201282909 171220301 223427395 127514053 303148489 686676670 944212076 188017594 719724802 694911094 157328209 572308519 874385004 373883606 20940044 282246314 428813817 333191223 568846455 644601890 458191290 865453559 519555146 960064079 177008848 234660095 916628013 529548149 647312878 562209200 137217014 987641148 819373919 696224090 583941727 817533651 669467637 30418318 137138955 867884750 552015709 77013993 545058180 324421800 7870493 690489886 212544034 718781478 915959640 764180961 754269333 844065804 343586179 440980182 36683393 52713625 825187578 625838812 932927289 753897257 68579116 124661120 411532266 510324828 331926414 788083951 783337596 249369492 798658279 538999829 298931425 534631651 875041338 241754070 734419364 461957779 188975798 46782339 655264553 93788219 208660356 288852100 743718944 752652922 842833385 245847100 589162624 289842818 119223911 253316534 477628469 275094236 444265757 347992170 330863974 706450960 527148557 301375706 560083329 245441771 828946670 941673543 468908325 155964177 181052188 173208435 429594904 941020825 89129600 396218075 682741859 841730042 821433104 337687966 31377496 774469497 17565701 261632524 275848451 810867307 362440403 29378321 686631414 70738875 503745693 923059288 104938689 8224177 718108748 92922054 110653491 88294125 619823714 930530004 120981441 86445418 288060894 384791058 169470418 970234708 675274974 383301815 91893907 534682844 22112819 434039793 154516154 117892307 221507970 920623331 852340645 132002257 254864145 637146354 178174057 472959119 551446545 755013837 303008140 493966758 543281321 163222227 958935493 714117510 274602187 708259100 490693100 634502862 376953998 286871347 16650416 962787216 844072101 593390908 712286580 801123307 531025298 941910020 873991804 560581462 349647434 245223918 620524622 786672917 920882291 682842000 362851314 911929355 927144114 302735515 555767630 991738901 837800199 137926865 84659323 275658611 574854568 630744677 579579740 264084876 266836946 155543425 663787210 450820610 81699163 622817940 757807515 363810484 253994982 945389408 52253371 741231797 963168286 41043996 81241379 232896339 513043895 518898638 668881587 211954856 520921101 677476569 582337836 131731953 598412109 536484512 507005643 873311645 823225024 775395897 174462059 717640206 268074761 929515753 818980130 421479688 549563994 859065273 963840261 769770883 164358690 478783587 11803897 56044645 152784810 385894071 822433677 952011932 188267216 439946265 426020946 606062013 544377623 850446098 33008320 849224485 147466421 615359812 635605061 439522846 74708739 901628154 753433201 236011519 700683476 378356679 981084475 948292860 834883540 788481914 371877928 730493903 913028523 94871079 681916697 2087063 367802608 811919822 625002176 540210341 927812265 708256303 817051716 463063937 2050987 295973979 884540286 337248715 61922154 72231954 115034559 219900349 703748232 41533985 230780717 592792193 953343631 552972628 125032973 313343919 187265564 47566207 656777878 940593508 71409753 590372137 398914072 637190760 14025535 300071423 438415797 232529648 889010963 447343534 216230561 797235675 468511743 74375056 397399418 398830322 73526041 368854929 376932485 614231820 597464617 585535023 270653546 844853190 212284216 710704935 766962644 808760246 176260824 890147274 998271783 669762549 395590548 206710491 377568629 977831593 837488351 870660309 608553713 540058141 688375886 362743395 521083670 955776118 279205689 340919229 767065067 694154541 525801552 779243363 128773442 648379088 477005615 821722803 371163978 411608309 361856379 534372208 630994373 128772197 80798516 804013652 216619741 401443006 866965971 722130086 152130128 11610376 463745213 774783520 348670475 109239490 818755101 566194634 801378470 56631594 170741001 859084230 611605060 839468291 471692378 513561858 666112074 339449121 441478527 299175056 59482132 396134731 638338358 200944694 944333952 429970505 489622418 325243412 145606143 658539749 855405484 813995267 878288485 462722092 939405272 598149631 266671179 853032454 620142667 714975441 740192111 888972138 418724946 159541121 541934422 982637144 845269220 470146027 137358643 442405209 89943842 347260550 454933810 782332103 132755483 949033826 972244090 684583882 613493238 614437142 683899682 914197064 641169309 521115253 358505699 910909320 325551329 696621911 785669449 638693573 292770152 400804933 108836237 354283566 895821312 666787327 377137617 92809058 545688935 334842208 933292406 76598823 604522958 27781114 67187009 441085287 434746301 172716100 14581208 700953367 101365788 467794036 792951935 837685914 739792152 640099733 165243274 892950332 227468343 461830886 468565129 889237974 311849393 210903667 682312847 243494956 614682434 660460835 541984090 951514962 610033358 479694671 35210516 77324042 108852499 334934311 401802035 672709148 903247599 664641859 758816153 384767436 31632296 204624448 921400943 480640684 327196450 910623034 505226177 270297738 699260023 794186974 741709020 276927803 526616459 524643507 891654531 70579800 847346184 335165254 634290156 638934694 602790175 928729891 254939926 14675019 848849319 212080711 477275542 16230911 139012599 711132913 846477370 502465189 220153931 308631706 379421274 463500552 880712295 203234670 289069469 146269145 358781548 45347462 731096338 634265554 226404487 151937508 627947412 963459559 899323749 714823920 72036573 954145444 614757364 551602532 417038742 744136868 15132728 448108889 211361565 448778441 908350290 969458048 80576809 142941294 356964205 516487379 130707856 754736053 211082543 744013867 722120122 378184371 682170551 392393003 605050837 408203816 618109475 684317338 149242164 881617341 822867092 997205321 998373391 738655702 357664065 339398248 566773244 807809869 50553427 137895569 269244519 841578188 747804271 639918787 975678784 984734037 862567881 6324370 181059657 105890825 689493004 180426406 51762099 986136990 557686860 362636986 594915179 119110980 96485228 381627735 135938402 36917888 314919984 230833887 425503164 599301086 494943933 907963828 795982922 862492737 775889335 34863235 538403681 844033245 429940302 338053732 666365873 943209882 93468312 890467211 858669937 703542656 440977104 528782100 781261341 324592875 525854290 762770966 206843522 285321984 666470193 878410769 932667604 376905124 533285303 94618994 825800509 72758365 868784614 606251593 101465881 137696159 793309031 138298726 95987457 342052421 546927486 920386642 315917384 758144055 331289357 829754704 710243551 906028480 178641893 672792003 604020822 353269642 602963913 333625116 955100193 905204745 124520639 144594599 670135643 337221161 249610550 322329373 455621193 140494352 907231170 884975098 52489526 168060063 768131700 70404770 375906192 28141958 125368433 47948607 299940650 641427721 34144183 84579373 647602177 586264733 418371963 202203944 586456107 969394378 990911223 630704062 171761350 766352761 409023542 579283243 270529616 967445057 298208537 965469921 574120211 682408126 877872140 261432876 899617803 473417374 429881634 186286201 900719790 664699116 447401824 193709382 745409423 635793510 188592291 277304675 660313295 534431915 809570811 937447384 153243962 578874744 865912329 381296777 995420864 664583952 866202741 850522202 860408751 463586619 808596212 601512315 951198836 32240783 414184680 74946874 126551981 430758473 692601617 691002119 299363639 995739032 843646618 767652558 568310146 663875984 845079609 348505415 828351456 62746906 58192829 24670539 620849661 713799545 75273589 571307035 862315421 384516283 459871481 766913160 747618709 251488658 574307054 523557345 980554545 558888703 404707407 939082066 926121024 323569054 9672167 641071318 399071274 844224301 296106230 445696998 483681030 717884903 716765060 626364443 851962845 318391610 765042952 973671240 356634280 126217763 286717925 912196333 890004613 961140755 80792306 826114101 930839415 757836394 948096299 188792196 371433015 654170777 244721547 90966785 432360752 289720704 875686515 450372930 811483603 161849370 378210521 917410942 268139779 449424654 535548040 191686096 274288882 995966784 461458677 464612021 558883916 970806180 735106033 132424129 608647143 619993120 367463027 686736800 578759131 865398938 560896474 931134900 125260643 2113383 64413818 447408307 653040475 219829686 66878794 770189666 366880961 156708025 386731051 779893491 405007488 625184628 114421364 312427152 296429533 756071143 619121611 841750559 505789561 644077511 279055828 802070563 501991585 974543047 650103034 487108297 218635360 699035479 206512711 891480201 648779644 204981899 763066118 652398718 711102408 675812963 210946393 269980871 703475861 798445790 223095112 364894446 255316549 510458020 686955746 9823063 474225800 582250186 775380560 567312817 570841861 839836572 19259184 941419554 147461976 111223828 119338431 797566780 982959629 150799912 881066485 590408610 436088943 175226001 724065602 680612282 429820656 103003363 256680653 67272721 630460823 466816344 466908377 246723023 437026472 507770882 327717937 73257833 883441114 775904120 435703720 266399448 794073779 460779217 336770180 194038868 703278003 780013373 876040096 841643273 570645810 508360323 693331219 431577631 937270750 996099202 601884224 69119370 830755272 861400771 185911455 60063198 977668657 860390700 386088317 157293486 711082857 334663387 94287338 764661937 389814612 464505586 719747970 698110266 689138642 608848726 152488662 139121635 22473716 445177981 872415679 167800182 40653983 723848394 7842566 41125467 223258340 866941607 21643864 373473926 442367533 29363472 668441235 266280252 287128615 126860549 698952985 882584438 667331993 388650380 587740116 637090918 845934314 767026090 31185991 515913916 487232816 639741299 357957375 798403652 220768182 961986799 783855533 766064295 793731259 324904594 571136282 430196342 190559087 16261469 808823186 446731607 77339693 137178444 732235407 526748407 977159795 89347380 557866309 617647336 170345613 119129771 31460713 324566523 204067177 62663306 289944212 772264929 61748809 927239738 356878664 993379829 319646468 500327617 426287632 884266103 697346310 836820870 398508742 339180229 828617052 163075222 316807664 220585029 680154027 586728204 990856886 743311299 701624954 116239644 486782956 291768089 550014410 317972540 599255032 799804405 73392733 782511627 825093417 348047236 188178203 411060655 669227903 633709223 543742958 298930441 153384373 501987670 501596478 491343695 177423583 898130043 914781677 254929022 160430922 950803160 914230533 517962718 504676462 199503019 844508484 416940185 338820331 807954768 762965685 839714522 581707806 798586796 649124680 238813240 979302311 212604828 73945013 104107950 341869247 436814862 295466531 781809350 830198512 365360498 832285691 766584469 786416477 970265399 737068083 553801041 861779798 157394121 116516870 66686962 992164883 203633857 983791831 480231861 498153600 872692001 328433966 827009152 931667088 982028642 793224254 907239749 446667615 271786291 183371827 563403216 327935101 330313342 804374506 200500562 345778010 818999202 688905693 401353508 844387213 512687611 253316093 730352439 793275895 821750040 392446410 556667438 813939752 473881344 845733047 495934412 168819086 98250815 755605673 700941215 812249308 730158148 850927525 407268051 379283476 818038047 219269255 569280305 387519040 452072374 937672062 498296957 447041466 339964837 824397781 160707069 698994955 670150881 783284867 202376151 881171309 615857062 932735243 446044958 839418199 703285664 939782893 256498254 919503455 818123610 173417750 195569770 999954496 755594875 941170075 962869895 410392152 708361688 214410556 860870187 473185243 394898035 549453227 705077899 88924984 694515648 448828565 968508158 699373707 735185693 246786671 983654850 881715965 751530635 812733994 938389282 801015304 879494560 497786755 244696278 730020252 617501774 212628182 505829288 960323085 515402782 92218006 621882223 688812208 561884589 562636122 438256420 332578511 800136823 516369321 348864035 595341723 877032301 931072418 121757625 522926065 765556666 73985847 848068898 698958989 886905723 794371074 469986526 392901734 904165607 395043223 314866543 798801299 999554484 226129911 703143560 756583974 294320508 815845359 861502406 754784496 777708938 800854142 19895557 776158206 428260436 462785102 291044411 852552046 475996560 634991603 800180281 534494410 185919129 161843429 826392282 414817642 264108227 516039808 577824963 638969371 9829880 219568978 814420328 964052861 767535146 479426719 21202130 781550303 899777148 742118129 553962246 266173467 567248063 160237803 588800746 704392706 483599341 120790529 438074992 445735203 567361552 420705622 775918579 477067770 975160542 741987867 768688561 542260640 486848299 81993635 738714032 682610449 383024355 828421532 160901660 129411903 659338552 102112848 722405716 708152777 759729899 824068208 756951699 100527968 734320695 93221838 947057155 316811326 171665062 229434431 368609380 693873929 123033639 647827540 326891540 571160875 592865962 592940019 894632729 482513635 450258612 592560028 645365245 792996376 335735676 821463701 917993743 137452035 4017603 505794551 683206563 498489714 59797436 772221845 954975149 558090431 999292362 531581835 893925646 296949086 563034948 721680631 496585887 854111084 910227135 387179792 904011467 490203223 165665215 538255181 919500737 960342888 911421270 759852918 350728531 666816638 798388783 763638263 459402261 166371316 925951381 170990396 875050650 549402699 468286689 65617133 70279865 887006259 437176580 542871644 140634154 910636285 468275113 461756795 410280146 8542748 516051225 218620996 663324239 681032033 171705498 399263831 675484322 780596149 710650432 556881516 491414381 888779697 698723016 597515821 841518873 512003879 996487967 767936013 943099753 828490049 167579845 353091257 850087134 732426647 221510286 22545278 707879456 228477835 820766761 426466492 319495385 601677910 866271413 595523732 688422824 81209810 856329644 199429508 895801199 498300611 704660676 989059658 608216143 372001251 225410018 126337407 807114113 164282890 473763949 649513055 304987917 191522336 587888404 61026983 618099861 285562451 327587915 975253691 668255494 704525198 417212318 598962234 867088863 143095182 556241982 182442078 959472039 468761420 426464751 740743259 477849968 37362133 844233576 878392104 439980711 569364191 6499803 661182424 315500503 251822029 889235507 410445383 463755310 856529486 443787555 654379966 414551935 209999510 117215802 982741370 619710563 740368603 869229419 137880468 287810804 446855924 773436848 135492355 118005283 997782002 581552612 926978919 612371197 390861471 546492679 139762926 315861660 660836476 636507771 835858466 794144785 465997229 753019272 498252601 187129342 395508206 50869461 590263050 95778807 762119765 631969374 761809403 960804766 329823825 950144709 772081254 591257756 502830228 863202475 763820800 542525737 377167174 291092463 870721428 723453915 633257098 278073438 299024836 618737605 188936775 820597671 282817579 866281969 526456207 945968614 450518772 18337964 308967635 621698278 409026043 968010064 20199890 650748489 601441249 799637232 546413644 648695441 213756242 663127579 76253138 285923042 393661430 663418868 132452646 697041216 122818820 144786496 354213451 479832472 892932529 644854985 873247983 992194237 687812942 329446663 877757653 685749310 551447925 568076599 398309400 44637633 386189940 879288175 791275707 296357971 243702942 837729212 388100080 620457124 152958698 180420168 72113980 457770702 857749776 469588639 630539602 771588763 496700535 500032609 828742833 679762468 718667724 115819975 311647538 879099980 685188092 880893932 469347995 251446174 417455830 82312697 567417708 437747026 692212581 492650899 674973744 712001611 591262462 887612627 147587436 683609708 617103578 387416730 374755256 150596855 2852827 55715500 621373222 464170598 676987876 433370982 25715869 686385806 279387356 456950730 699102731 163264411 941365889 680774160 682549521 576354618 75262116 317051367 796307616 712228210 138987534 81750182 30487682 34674780 915718755 26410728 51291241 56805005 546500835 945703730 798300119 913782756 333660604 919464302 424355340 36251426 715690853 844515346 619371278 161797704 964113108 304988490 434805910 864937785 493031594 224775541 739818187 19613156 553201838 262836415 302168787 751164450 527606295 340417531 406177092 750171214 973110915 763003736 590767150 182393513 198152982 869317852 554244127 993103775 399725144 690219056 960344123 764313782 586862761 609027503 524379255 801616424 969887156 513507903 576812068 619452477 185144127 303334960 77445304 42005884 791994811 101649196 761111801 556041922 843911793 762141875 150721012 588751946 501662458 832387387 966290175 717291754 310672935 720573424 615831792 292601418 195954029 901588198 956069610 327094169 336393481 418712385 601273032 296173099 892187592 726004231 512537648 337782905 263653206 542838071 559616609 802260929 490819675 402629755 443043265 107499757 788325194 602979103 39232730 963366740 694179495 139244734 659257646 187195637 639695158 98090076 439614496 59035010 851650097 974925085 763093637 327093957 934280417 64115726 8440664 900595244 362986140 233965000 119781676 370285945 424392099 43753010 289119163 11690435 163951553 867290786 366969109 463185950 346068584 169879291 199512286 734604939 644324875 6143767 107879595 654310835 977300072 993117468 602337434 632758697 177457903 830624336 808177320 112516523 774562719 806228654 288812043 559031582 175380129 527152388 400827933 186438471 784532684 338345383 118234264 792554293 828355667 949976707 586823871 389354362 83236877 646468145 591684190 649578953 363739247 473687360 825886905 881504895 240959787 911698729 533798104 640743292 264397767 370297956 483135359 707604105 117265647 246215511 277014504 223641008 314560369 43216820 779982565 931945016 109223631 278789738 372424370 539455725 624816474 445110304 360831237 256686209 3286860 958234613 119563425 494186681 824826487 398404451 230303633 366627139 896820744 131570145 963865164 426279146 340009263 635088016 774083244 391158378 195509951 149688647 750944549 474668128 247808736 118308510 817254498 41084726 404422791 344463164 929943965 139799301 113161126 59150543 469918366 732741290 868050542 723767464 134191499 267438498 314887471 218134499 43124499 120490097 178297998 398321969 567326483 697072831 894700232 391324815 921861906 592424395 187596949 635294311 877510264 725169433 581152824 430910348 587135394 370829811 982169670 850991229 721427830 811040334 691626924 584901986 851112328 747071010 367665502 87799290 623044857 946478753 41786549 596847304 609882169 581695253 326060109 818912651 627588713 125390690 558285059 319745136 246888429 924702410 400505994 146760957 79654148 383512407 964753034 36998026 864363285 501479581 327641072 701441661 17555419 965947283 899430246 880454881 670248995 90682780 813561189 800817490 540407165 2880716 52337722 921522558 397224853 753085360 367441216 560915804 781374767 28274502 570516434 562108115 521452354 326784229 84238132 671283876 531699056 709931177 768352258 740653244 849573372 481054804 630188643 542669994 472117501 540989860 211796670 547994114 672708001 335883811 683634921 280545854 121769794 238592628 616763528 521676527 208629568 204349778 871001118 160891834 202782682 163497034 825723910 721144001 307572823 396102957 598597721 879567509 296499416 249320868 984890403 447812678 30762274 152173887 974461020 843114636 533128093 423618021 273529443 232656465 790954776 407342953 750977627 671074155 21156812 745714585 775446051 993411829 299370520 63960766 680521423 104095231 48170062 3350663 566663288 559159038 153988063 753709100 360077159 961125205 325489709 867252436 531881175 84142592 673223728 280903277 69789087 587525887 271269300 549099278 672025726 590782485 59654312 159272971 314432936 354154562 477143378 675798027 684763705 922442670 428943345 106227892 625480929 735709654 773583867 138434614 582997123 750707743 69212494 71889281 945386841 648650399 968558057 488138523 821509181 405150906 719148470 644210469 991985481 829624032 484288185 953212868 995455443 267007696 232061042 945378037 240392022 192989089 140230373 160107387 133002593 512313206 637345339 356468990 501746078 163063069 252941585 639445615 973361614 927592508 196944506 338239412 390326199 549741342 809815818 264455309 935207221 898940107 783422393 744380535 594076745 123578840 208047035 22590568 173499381 157683037 282891140 999363409 592583732 360446534 312326787 901666048 925353117 75245215 997738021 950700666 525466241 189613756 599837415 839532741 247724328 528341269 781554120 854168450 314519181 433354660 371223316 759814547 509656105 947112115 965158708 44163737 895068726 843168803 801555415 244867842 886202496 812751837 965878701 372258855 796586175 742946685 682951137 643025443 840992203 973088113 678775931 739934143 931476649 698722611 147723261 513332806 61915338 739791764 127112485 770079943 793994880 104226798 437577293 666925467 146092715 937371043 615067274 958393583 283522846 604780023 953889360 130214040 801294956 315002083 870105774 446138006 266092364 312098054 389459614 4815826 109039652 912833513 34155565 521838635 456379721 689750287 487927920 556517482 25510742 26978239 549599902 534672553 318012739 999998896 361049355 752092615 206599671 412320488 51201870 532230823 643234539 297921457 908226580 868925708 815889365 722740494 338582683 336992677 464545592 314848368 898390259 252458212 812581322 307032526 476448714 226845561 888379805 712762512 688405014 840448350 573789103 155322881 574694190 57234483 22046573 640826308 722875859 674122627 500243986 666627254 431098857 405286213 176015270 700446175 829284421 714227244 800307981 319705408 325398169 82390293 389739622 148486958 569321118 532233073 220263646 740176564 998317421 531022956 388600278 841825679 567309450 68461449 597136447 585578111 983421713 638866730 719552204 730588158 128442093 412570149 467375699 402146046 961047313 443013070 292395951 289283880 362681439 241121452 258257841 807224892 509512672 548881646 698632165 514125523 549501278 410901126 473215917 4965232 104676283 237746689 722254358 68063574 111598667 136485329 874480466 665112847 495903524 841121419 50523708 967766851 936959945 903990926 624980927 1550536 145611628 348312325 516763146 952506366 605591395 240978812 484354485 962903388 746246726 814934078 102894380 979382637 844220679 419763334 911432146 786377272 701153591 553067778 553453249 943458241 855584046 772317798 125798330 113279701 937901349 97286790 718659320 756054025 968830613 189886303 435192771 54883396 873121449 246293390 604477559 203458330 428006428 311578134 994724180 131140465 858338881 277264184 584625939 3551852 187895592 740018032 421294292 881202833 532476921 537275413 781671824 50011357 429363475 877119930 60509256 365242768 25572239 842110233 863103643 761378951 364891051 490574511 836936177 304785450 644689383 415686877 577869002 555335962 73897178 791495336 157039794 651203679 152859032 93801385 966870297 399519840 795268921 865826634 817139960 157976292 638813714 438845001 346459330 384403777 583076801 142909137 750328220 973746138 493998763 48195402 514271756 523614318 690297965 460885296 463374195 767010702 879173614 289530995 507652264 458037912 951538591 530951174 29304334 713377147 464065179 3072782 244970359 873853724 474149869 964546087 740177797 985573649 365218105 928504899 153020685 137065575 175762850 613264253 415609546 99031327 776048346 131752067 129284467 577012523 959458613 92549832 64923240 499636096 779707304 191746700 277820388 178917095 251857768 611406320 367457113 514341395 773262499 177664397 243336313 86429602 646144093 574108990 301902475 555130492 4997852 666931095 809444173 421704610 158235703 894936067 104239538 150113236 801546672 268941184 91714790 323750282 168196490 725631033 128960348 653290554 708383421 736212790 479954477 27951400 643608232 147802417 797914577 314825577 913129920 426064456 789632700 291125693 229715712 434741437 580497323 640735745 510497538 950701283 929466443 694370864 909816417 202926929 453828739 405009302 50472980 381508426 908907698 369317236 265089142 925744485 72860927 695459959 482832873 307311406 675586848 101795510 211148614 418800904 74633457 673167099 123715218 246087221 512270145 823829546 890882071 794845366 902630965 6282057 82989802 60258020 470841662 374941555 401942804 373625235 141883095 811303473 429866905 848089450 326458317 748353225 251283067 876749761 1506029 629855571 118690680 775515058 889430001 901365615 709869730 557049078 436857983 676216287 689632767 145593369 190081230 887423084 734330338 737031290 402771317 914768415 164872360 651914622 971511156 325555901 71540951 252473993 309388284 579802520 197410358 653887206 767074553 940263338 495616945 155300709 940800785 789668147 19406569 354424951 241331124 356025779 525483079 774654624 445569737 363535196 222664747 800978665 382918498 32130288 488040486 8458741 837940157 221349829 848156519 238763235 65803709 629225902 975866708 654037540 971948188 299890704 626724414 471052827 521877493 741891814 300445318 696725359 559625285 896532932 502042804 187235591 970146698 379151337 890487712 262775289 178630319 391990158 527452792 578510706 445492825 443526964 462783823 205222542 318414515 230328826 87145392 692943594 940727501 178732128 387491860 428115782 739820762 473177764 547633945 14365645 928478778 350706814 635814707 322860559 394577614 303664029 238403691 661553034 967066924 82161606 518727424 333493937 664253917 161152469 427542248 883588014 923011969 915903299 158396622 603722861 108334434 505632421 664376435 370604428 588273992 372343801 482812582 651111065 301899059 118153256 626437780 435379192 539824610 699112815 947395389 34074524 165187638 198701964 788376157 73120371 722424192 685079599 988014865 657038047 137820737 785060560 65115158 96800017 532503593 660714805 486567152 535426103 406953089 338810103 432797419 236212832 497717106 540857059 32376571 712786707 973238315 838776366 734909218 248924605 264048965 85868408 114591073 733116598 765718469 298649811 454271671 413549871 872625294 393364386 173718538 819880356 942542018 140128157 748571570 655730443 384632643 351491335 473758121 925054749 410193585 554807557 384182570 859317871 187783536 693180519 541234308 657408316 144268729 816212830 710454937 40104002 399596191 440285362 718582129 84095021 221704578 468714572 92068243 602738805 373627622 78933885 863923986 624700345 73027993 882073975 668228805 933304527 444935052 495382243 682530998 587557103 442362945 785060980 531069627 767441277 259496352 803558906 547694356 408212412 288008571 588164033 666411137 48894792 58095422 676979033 510542815 96173282 284499590 5718086 685332748 708339253 655765721 961679438 251809750 923557621 133979441 540311148 497584079 68540045 231319501 16692942 292070104 733296772 404863293 738894130 50946305 824244280 395986776 414339123 337223964 397583700 425602304 823328195 54458342 361165733 976345552 252331121 393710810 350429045 441990726 221959414 236363189 856251669 273027402 250263525 645724911 15769517 407052776 727238741 323392987 831997881 182991243 864135855 374606904 280841203 421354708 816983460 383017653 178489425 197626261 944441068 358734179 951628846 681693275 323658665 995992238 660051445 730285146 725342802 798687325 968595 191167952 30079892 306958371 704789656 635561554 875458178 122223159 751246957 208726809 744153996 166213131 732769308 190069198 454464627 287583051 4211016 903539292 738133135 160748393 533869752 27450642 117305431 153493790 55383240 393481530 953724931 440049962 282240719 660578585 487211902 903507910 826757630 372435126 103035228 486532206 232727930 677725699 200897556 779212284 671124008 917906198 719011237 835078598 88771178 457365640 105248279 933803951 656767863 706423743 940182181 627826766 194245714 866319504 855033483 756996573 671683118 798066646 636905809 555283838 425844458 295895872 975738979 947292260 572852976 583089589 75216432 466000783 364153846 904312286 685772819 61328989 164790840 3372241 193520642 105262904 879096630 992022282 488743065 472470713 697537024 629574605 261682737 734551834 427383058 854443810 352418662 332382980 308416413 708223347 103538252 382580090 273255294 435733784 899568942 282895444 808770484 956957091 9459686 472118751 116368871 968345108 447608928 445489003 487909319 177265288 131781863 871696761 122866335 242575670 519914244 34044755 372273080 998290869 191947863 560250185 292775981 443693930 687628216 464704600 546087241 137671835 298323884 183293876 102511063 618712161 563187200 782859289 973441248 568363018 380069241 583047873 949944350 530512047 634965705 694500358 178990576 440178316 449611207 273104204 24755640 130134619 1213525 891824921 102935850 292533720 539675385 129277731 801663607 185779955 24879631 29849740 476988848 210071970 75048423 594341425 169359556 822398948 50825078 764772871 274062739 583832125 211960230 197310764 282981677 147287162 516105679 280424510 822232888 409845160 947495557 379667618 854183478 189964531 946910965 986197228 721627450 99213019 212384834 487741473 772352239 293304057 730566564 51602088 205287106 690766037 940001347 14655076 197354454 555841628 17249048 948573243 116245306 7359582 237689578 319640754 723844181 744235324 680009231 701313615 778993076 860209462 787451672 864909402 903717672 85111713 413294532 824916929 795653114 423763390 872813596 220267796 163558502 915202290 768131719 244490824 550696762 240382627 666403763 908468528 718168011 737285519 627323208 144215582 886325978 498194943 624760391 157139241 593101556 315734905 927754571 470058693 928677036 309957993 69487974 725055417 430997168 657499092 500364034 47077083 797994677 4492746 770152766 224267437 629312948 270933168 467543217 831345282 969006893 755546359 703734750 770388783 692666894 597826774 220548085 194419834 291629098 735409868 235499186 625654021 689257278 149632474 799693777 398583333 442784458 681647764 780741967 622770914 434131621 551249161 851528348 411333739 617435772 328813888 293739255 968389840 637488704 557806563 734210918 650621130 580014841 724616706 519481556 137054034 820257750 957156203 119314991 847368425 181092703 430292763 847702628 753115671 28752978 964859516 20189467 412114507 117074564 8487502 76936584 222957513 580776449 40257722 325096480 60006356 908830155 690202426 912838631 524187735 839007705 125034948 739841666 904156678 718371356 983470177 910669701 10835225 718157091 849847544 206557825 297127961 421618679 543558461 16245389 395262174 482090521 128782575 719618929 2065413 111703187 187077747 359074517 215222473 985798562 992819357 373404001 725409119 484146231 767458561 12012810 509986916 195714043 73542899 532389775 458059564 353784162 914408531 286871669 306084315 216938498 763888018 346042590 53498453 729794081 247552634 665108575 584424560 579567266 476846124 849922021 542290686 655060651 466268061 345652845 810297116 878740789 111336270 652889615 384236474 834963773 179977003 267883339 892278572 246075834 92576001 998616463 75100930 845651718 854976501 774129556 622650717 741299669 274940695 451728572 678238669 324682997 535923731 128675495 230717615 330702665 863288915 331373090 95412053 838017913 227727813 73539196 576400291 941868469 234379521 812838334 967388352 107514483 767820589 753592991 60489366 936932192 953043275 391172297 367509199 64370223 832485230 610815381 900820885 892037166 817141707 137150853 711620990 210857486 9812498 704424888 297044959 184213154 497184827 393291060 889968605 882338174 625692283 204119653 805236995 776284478 646015137 263654997 816558596 48395096 902332042 845479003 39034861 732547937 891742386 161336690 834627260 559778365 134303703 998093062 676837420 178910657 690040403 998812603 734285140 527886653 45886961 968248085 376813167 59036076 955156257 935016879 84391571 410409881 171361749 493183392 845747695 59029918 910698759 278454018 867951710 390626524 83866154 860319622 135676775 766938022 902089812 593954836 664977679 376039521 843003065 887130333 102307711 933441252 233162111 314735972 910825686 819874748 780585233 40125285 938001269 882064955 744505652 695542961 94860777 492403155 67854507 239937911 679573807 194029732 801265043 645229595 161262010 204516439 910360713 414144253 513263499 913591997 194604347 321865608 169095228 399963075 810278092 945613703 91966369 225467414 610516644 269469524 666111208 605563794 200438825 14305456 598289985 825042824 420506848 313892351 767014254 306405755 258732148 319621161 255145958 274017568 469318440 328216666 670808923 780792955 505762410 298598827 804548726 707379021 365618721 854339167 731144589 80159895 410550983 770472461 604684466 378486357 969794748 528413128 86203674 193417528 578547827 884388177 196776886 690973216 842336257 818180251 688162069 172948167 292815498 348389901 363695829 49441365 203333116 589110509 624409132 62099122 771205786 404230439 456058613 496960759 716357293 126768683 595982105 96079544 308765975 902532534 666566633 622103350 733007301 960412280 883604867 328457692 883825058 565662739 8866221 900527492 134223477 860580908 927775039 162372842 436762492 999375471 855464152 533411230 852122930 578391020 695917377 502499536 883228499 276445589 369976771 481530098 172104423 995372786 842120199 325237041 977049265 107259301 367768697 138171886 701421126 451424726 40684864 984242651 49395472 909863503 485110978 985844082 421109281 994776605 311749441 772080796 758957830 513016477 138971973 719851444 333928453 145395037 359514036 673558526 891048749 825486169 47532066 582982456 125295795 633429540 565674436 957988570 336514109 466736776 428972943 866017076 613576061 80774715 171658466 589260571 706579916 465981770 188690691 76729903 566124345 410399020 444455871 281898630 250842004 560681175 122009675 702670650 372571113 381381057 537550065 668786453 482870702 108284768 859096511 330106518 246111825 306860380 709580466 930865262 358142400 736243445 393855150 574550710 570077057 174386771 402219360 590768862 907939906 879550110 859949498 976052697 123506960 807131447 158852815 638203091 32037272 33304120 944531104 354441123 640841868 570828549 742894006 516431127 922112416 379544826 608086057 984930708 742429241 17471200 13279951 675750128 484854157 431926365 42267547 329663998 614195162 777271583 431175137 626388245 476926070 469522711 529571529 163547112 207680557 436519052 394308475 653202822 769681328 998635315 523407690 667264745 136455981 941482590 10423921 240373500 395867349 848895680 103621775 938692819 66783928 450933353 422692877 701914943 216281073 827904078 318252624 798924511 117719604 884771535 163244491 23238856 353871779 762486425 335540211 493590041 437070842 308809723 456105226 236790275 641051088 496665774 615502695 703940310 270899269 540555174 642344032 376796853 534277312 383374675 144810296 202172129 852529505 968787584 279406700 441739537 732257263 677154693 973254703 710857160 635773918 41123650 542351643 919961076 389204079 568549237 302416564 126928212 396296161 190900571 905329785 24176606 141115663 175005626 472387516 83197284 452478702 970406102 976048100 771671745 497696439 861643243 556302137 170770113 276628536 795945667 825944439 298888300 464523758 781400424 315302897 426955405 264673790 456974507 22656125 320490591 402164897 646407067 739168584 202803280 621883400 658173640 585835829 516731689 279518706 71684560 777807080 342662125 297139220 878227226 975782681 776825703 136460889 847091441 845338759 683789340 892063955 978135261 141804627 902538279 896350149 998906624 564314141 894320147 960941006 604210878 308776789 361139297 799780910 69699477 353498352 310738949 953262420 393379121 811417413 303615848 816304733 250727776 828792690 456851660 410045815 679918009 887815972 383499682 871075430 489211716 366117442 209216117 212800733 707805987 805808972 206245638 519565827 576495734 383411314 758318159 252327097 803922967 509233816 308193485 60626110 713387090 659713011 524109732 383362275 792552018 204656997 789257664 516860208 844160495 725420191 150504085 949933658 543900721 726879123 159965128 826654674 658560742 855878210 578142899 259095120 442609997 86793418 295987157 168437050 483404879 182105373 963351002 790757998 127134630 349331999 378100435 923725511 420320480 246824041 743157059 185211740 418119623 435957752 971264227 793820259 156185690 312559206 323744640 520083782 686084633 496860986 229256409 756723127 270832932 650478163 42976931 895454027 299489747 420807927 792191049 384698628 335977096 898224189 388938159 395190630 167168539 821382042 585522196 501882141 25124822 744288923 55741192 915508088 744379518 706309958 698786963 364568060 14931865 230778693 412470913 921749952 501779708 829696137 457492396 325714420 605279446 277115715 620591280 583532959 42615420 583590048 273284226 822697289 647749663 711269409 454389163 437241507 501734154 521248394 808984992 873300539 653993024 234285333 3418269 904004069 441679871 410298384 112902021 576254240 636748972 460637418 324950550 809490714 434605189 183480233 464015735 666341067 251436676 701821214 169375437 16333784 681016558 593520124 643599305 225828056 504013499 163048826 729994084 401539298 67378241 586679569 18992533 109090359 892305608 66118320 155903609 706898032 886719239 680974141 872526223 893709956 241981566 912305885 38167563 160207138 382100285 625981974 851706767 958174889 767198989 165002599 368697778 658703531 385901108 362956214 399305184 480183170 591756263 556504460 114637294 936919197 853213619 535333020 92250613 904741579 490526263 341980662 961621432 355842792 12153889 60299847 430353332 294797706 519168504 286598608 240228511 844595767 325577435 569686581 342541675 854961087 150507428 908975230 331174043 365897258 227063154 423206913 502733117 537495824 890918432 298270212 114522777 588594032 108342026 559595472 84574398 23168242 71805828 862070829 350154195 263431896 898604526 292264359 577852050 805303430 428700424 300703964 737755684 368148184 524946698 939018086 323489603 852016007 433272513 345902774 68621860 266157349 506507970 927292346 651299958 445862622 191614331 239789174 193665012 414937402 653716779 874142676 207241815 918862507 112227760 559169531 188334195 995240844 268201658 112546278 763826070 184360512 68419596 982754442 617435170 358901616 963264612 27397141 443195137 412600291 395948287 992495170 338010629 124789342 366854561 835712879 502546627 160416761 386003743 906294443 711365298 925692265 444579710 132662607 318073345 595151608 488703837 490866164 539059052 287520044 92230300 821974285 140950435 586971122 912192537 824486517 149739766 126500041 987420299 593595918 148691695 263100775 986642822 782791541 982490911 712284563 274506405 743635453 597121286 597646171 759653840 369412064 590076285 607151788 175049223 597793336 97268257 525586438 612300278 678526008 761697034 514122230 61711305 695057279 679896017 584060664 457511211 632110503 606645175 26561091 925869549 600681075 269421454 773396871 879924858 674619867 291418792 819982560 506973573 307825764 553685379 470166300 537893872 602088640 335153104 679543285 819153555 605201394 192238490 272654607 137246566 905820971 52844133 203420083 609294967 591079389 249031901 788802275 431447649 705693100 550917112 139774480 288300152 514174516 120585474 564540279 778621858 603017275 675267725 412300168 324361689 121541694 480395570 966244492 365994671 792547653 52790277 109384559 388495400 5345870 38732868 696002632 111885739 761361362 548568273 129351389 551921917 546068352 400837519 499046897 167025019 773025253 551963804 139374019 815293965 180287316 167547161 57391273 4644872 85640793 60311587 796265388 249619626 912948202 831556693 125045076 235558003 952383130 995858700 161846950 667160954 5298736 455901535 305706542 149168085 770264714 974421715 71026783 26108364 482869934 843376377 886635656 521372848 504167494 41577732 775212508 390290886 965628057 900032846 860643908 170503360 516168709 764958948 119588717 645304398 192376052 731199894 771015298 41016177 745963475 400917748 404706406 143635560 14429339 661387740 924208023 615664902 723875776 944398861 273249581 198554811 8178248 546313537 201675206 127833932 954844702 167058611 311222377 160175231 64127378 518020439 981030198 556930709 865229703 526612231 332754477 288236394 796205013 973813645 59003701 374595199 475184434 811284308 197997647 571505614 373460991 88357647 758234436 601939781 135926892 912403244 452969585 483664224 525825823 366745155 299063356 120826337 787265597 245851058 814829639 778564381 926552509 321478866 257270626 923438986 812660051 163885923 422125369 181502487 25532475 692121542 120697300 880548642 327683920 31207068 730092552 270350956 517835483 128899141 249611225 996283690 241691547 747623554 91898873 650336134 882192365 523887023 714326802 522659427 645579973 879182118 5522775 487937788 569777494 609839210 37079401 455209899 214176165 961173630 523354676 63207252 597431539 473665461 746188788 886203415 394396267 973856025 516318852 662854550 595843299 122722854 412660397 245896501 874282304 924192871 640956725 837871682 683485113 355609751 491303612 193162450 805809241 995240571 666760698 730913866 556491437 341690631 84466060 804655225 659241477 458834871 270559116 361710706 144455347 91865235 958943891 670578818 518216607 884137845 36618380 353029126 692176941 169423770 224393111 22743467 594712651 650184967 286699108 746026179 391110637 743394382 77964698 320510209 463349048 505088158 187622675 782537882 219567644 38215613 317229304 62580634 880389014 23480188 398111467 289617533 808621070 743075907 161131334 188374498 77710121 507413662 660030368 616499394 436051516 39759020 938077149 827386220 658888351 899914607 730853131 432226923 797092903 593370836 77812237 500387761 335811947 677748629 302032502 894601391 321050679 340518340 306630590 73275363 26987547 412209946 267564773 104504718 502869417 968256764 579481695 225477107 458684521 791184877 505582160 835519833 511277363 678448947 306822315 513219076 282617195 716327284 538854719 703653761 898788116 363118068 6181131 114865192 65421788 18004922 402256957 45534345 299595377 619565104 580041416 573567781 905304360 51185295 993388157 402937038 99103433 89187997 506391011 531056511 214667495 764188597 876387596 578885982 813773155 184873629 405095503 119148658 793004515 664827054 576860379 25835422 483887250 632951621 871403155 612102529 780758234 680008205 193738907 126537122 409182512 898444761 427389675 363036412 823372985 164686175 632301118 616716575 157284305 943789200 477401300 917530156 798980779 395190495 201564084 316637959 533708418 263842126 687884548 582861787 361501283 525321678 957055164 136466716 806988670 743062709 588936956 849264664 487460055 199804695 894429554 63421631 394527784 761484225 702236899 980239510 715965902 65565283 505270063 926686779 943927535 62292183 24532859 585357135 561473090 471082347 862354095 696113258 311865989 740755903 10917410 506867613 477557478 171922359 657760823 7357762 706906349 952751427 360234060 26351289 508282598 216300102 869154105 546671485 485290711 147743477 967573958 536918542 911058318 987998609 551230461 690330191 948452055 510307920 314224575 874321264 854100846 410888856 546313592 762032139 823210707 905319410 780477352 657571478 257504254 275951588 493235106 734152948 444293706 42247217 239993001 852910827 599235306 556603297 432653444 960864038 504648060 330439390 271667798 799304385 83239764 742650962 331408798 208476507 755789543 370454802 404939379 314443018 811330134 773782452 534470127 523038525 512260167 734398456 62520782 707523590 298821763 639131591 592045595 581515989 635681513 484856069 316550066 249763111 289002674 411891630 901493109 761209497 440886569 113557529 207198754 759773591 314825221 792859401 521639267 315033345 831609128 223276356 517849941 896464479 592075287 622268196 454485724 457325332 941873358 640463439 736891592 673586560 966460951 254596720 777896966 263356162 925529287 649095753 626152214 762010228 606895955 224811878 281493603 481559562 133942251 203589105 23591086 533133677 82002491 195342478 991438598 249091586 718607544 7506004 356040982 130771850 604630946 845542641 189834640 95190280 286955001 906695161 31840227 140655971 154431408 529911232 943149743 200226869 351342631 922481923 703399049 547756813 981446728 263266351 264190761 15105094 561745857 314715072 833029808 951422916 633496345 571439980 401049484 656324235 629034129 992111608 296232796 580647915 42528339 725252054 692009188 329833986 761376238 934708990 206355677 633139418 283540802 405415 252912309 68313770 935055075 377325213 999427985 70293842 100293872 745002706 600057322 640453274 925457437 562595882 278188140 424565678 612630189 358116240 21373901 817902120 541131487 899195983 571867981 97048861 100017889 240904696 602639152 376414293 848800855 57751571 796122125 320944884 335337677 815078004 302515662 875355883 90103650 671189066 914962182 475482471 626051953 903859368 827832285 159359485 236465676 674365629 720761083 594891263 131780228 574802441 738293294 835507067 266686822 446638403 931511267 351122467 134562120 539864854 273144188 894993143 756630818 590773867 911657197 955801581 427917129 951466596 545730714 632373014 219744844 649874116 425186034 109447246 615851424 701084477 78005343 689210259 307659200 81318251 72255388 304097107 575557953 801027729 231480452 715450413 33993858 107436523 503576210 127575723 932862205 783250011 634233943 50995293 625701072 510711339 946125799 613110546 187050589 607724624 553665348 12745778 791938837 611494434 360255794 893223852 168163215 62944596 353565181 690211049 768099601 814440600 759044011 183987250 18943616 674930912 557913672 467657784 400607421 200437482 441294534 987656754 290214661 921127678 832475742 889938619 371729073 937688995 82870223 805564940 218786383 253992524 695228258 482839350 651522880 905181322 342221632 578827896 18880076 839258394 59090761 976979813 527083006 616478670 363317133 378160307 51292988 961794982 24598232 778911047 445176379 741286476 53722470 794248597 81180262 912640770 925619459 707687588 169459914 245406632 282288918 840831335 507490217 102092330 522561392 700122455 277522237 739722164 279766497 293695481 922188560 398998066 565767357 45111632 426484485 977624489 999027987 784227241 166138212 287585792 175287669 393511161 747504161 172891821 466707072 969957127 37673392 216974790 984235953 933160699 562355823 7657213 737648246 156525239 354811087 886797946 454392531 914483143 977710432 108883329 971432280 882519975 432655841 291479608 631464660 335963415 431455723 322389783 682356144 748037057 471003856 102574197 231896289 49519362 62579901 830202163 82690578 666957162 446054920 270529675 324169510 414054332 969405671 785074412 932773460 613949969 45278569 194578006 724590193 64906105 682802076 735725857 366351007 458908452 45441389 716005318 889003705 411703618 326436091 252459379 630628630 232443261 223291449 606979488 963064669 823602607 50646949 422563168 349048077 701075365 102229922 784625666 19750090 142996610 512429025 876751250 906412722 563296641 123361186 690590762 733658345 174811334 961506407 354753310 934670222 943873852 426598357 11827088 484021563 889418895 185518480 477949432 749982342 790731576 748231409 885254496 689424748 935944998 641408538 595756380 656259003 264138358 612708288 946805565 133391711 122579335 983613229 541110264 754427686 854091564 569870877 312477093 923991001 886228998 524705062 782818180 673599715 722808707 994585104 67639819 286070937 1986590 393406940 704570006 559282559 99369541 617220993 464581198 689071152 128389938 15763924 201842041 547189828 123338766 449816946 899928656 388848692 50072362 747381739 708377198 209555522 607914663 351443708 446814136 719275670 625674702 72331831 563636432 502570290 553150247 298495545 269489731 833570973 814156804 723183858 613543629 554701339 988322678 834618238 383022519 721534913 134374540 363015045 648824897 169194032 826931749 491191771 745695344 699540220 1973762 490659425 305305349 812361240 802259449 887653848 983068350 183075336 185108945 48249539 817626331 232226854 364136466 423584635 961997281 314515825 148225224 154382347 61265417 528535563 734598088 893491713 667870495 970281026 816277198 742565878 962040095 125659410 706559860 964486896 792771775 316428806 967188355 17912600 145068287 711007570 866213033 846580623 904759887 804611814 47899689 764564880 5439188 476678741 236080644 221890004 297788139 364707041 971900800 372970813 405482919 814006200 47074049 323149563 775111100 517200338 741759730 507607486 218762829 121461179 888920458 340244948 382885069 365779610 216177165 603877516 453721315 867064129 114276608 372544979 64366526 774298718 564346432 720739626 834782021 298701776 335113847 10989644 457779329 635623022 696390402 798493191 541263991 100021707 923824284 793987147 582412839 768685639 87279653 98861201 59626833 992855467 503240853 898923683 939112114 297673331 358724352 190959145 844026757 259301870 320181862 68646657 505986856 348175975 771518141 574662554 681753119 329367637 243445955 405918110 864362536 100034640 508465792 728333725 306204370 328386014 475507168 394560659 480497962 305721040 6469779 323564179 501766866 840118204 610753631 46316137 562533330 48517176 601154525 349029366 727632122 905181098 189425411 503111029 990152505 44383806 348855189 684775857 967132083 293444373 354925510 736582284 228785673 997444721 972857995 730493965 552570603 477594512 191394743 163444316 157047689 857541099 184065155 729436944 592076678 774529518 383283206 489508545 409649344 913865186 65895716 165389039 772091565 918598732 568226719 205487565 562391188 399081504 554784753 955747528 965597153 5558180 900711811 762654460 574973348 319526160 846357901 590212212 270896327 906696959 128711925 338017404 29017123 211237005 91540210 62386552 341878399 996750840 467318092 955152453 567074997 765374140 130654758 891518537 197087361 990087135 151039460 370849473 537247862 981297438 654953484 355183398 808880731 335935822 28775100 145735219 344223332 785937147 684285904 379616729 173848276 833202218 258190748 886102601 128585042 346856909 155114921 308663464 843118695 316863031 732933202 288522499 288264889 872324852 830631286 82941242 684976957 154590522 684188078 229634524 909633208 453949824 911974522 984528958 920151097 748579614 57144746 54735203 503103020 902258734 33796266 908753224 424430998 857467637 222760179 55697887 637895905 475694280 958914512 65610347 927346199 654374565 309513619 288175494 938954271 947621136 345461050 16653725 459669361 472942956 274506715 999517991 976851889 17345844 731259454 774633993 452842030 678746681 588708820 186441231 828172169 653374670 889074909 803164491 522974082 439787631 605231506 158376233 329471063 472721128 311117162 518697450 763848490 598072664 431192505 911816796 674269608 153672576 878296150 372789867 276997534 458133289 123901492 801244554 850723908 542387103 475488042 49717604 802348427 189046069 152671970 740676014 563864150 768310921 415758577 928359722 565391163 112388614 510058936 530660823 386465263 819750353 536113210 746658280 545169650 87044665 841670579 442872929 868518141 605845625 343439518 225036712 6846339 267770186 817900638 255205862 178110340 788359908 810613376 276717823 548661786 839629002 721010684 865681184 500213243 328483407 581671592 860946730 375190684 259013379 252005710 362839910 981953204 871758608 688527027 13697537 927426625 405580524 339150015 530675069 183717794 462480703 998497380 754923048 908139437 282158951 480297181 656341458 834299784 952841283 135449337 33366121 616497019 542486435 113202801 690422983 375792919 923167199 512247008 555903611 408523130 110642805 991874001 826692073 16049027 11955066 554216160 406288621 301512181 299880818 923190727 713158162 129695487 971749553 393357638 838954965 618374503 824926368 154012167 712861302 891500329 5809116 393249902 74130860 199311829 129094327 675244357 737170856 409787637 124308156 505948345 346125457 895002645 111098645 884121086 38863634 919011415 842830820 862455307 54126223 541226379 864619789 200636529 967537717 296741071 930113393 419624915 77349250 430221996 893680647 501809594 719041705 653342626 43492560 202444994 74605189 9548489 323363878 941149066 491745880 217626413 194161437 222804801 234360642 718812843 40596616 966124178 643748956 939837619 704180140 640534361 489963861 947241599 734581368 229513821 787730811 416542480 32850604 369598142 396362230 648789703 666708040 241094453 428433636 842180791 778432041 479079566 564897264 552643884 212132637 766716467 645102565 15741 763191230 309379500 393406478 734668565 342963275 628932162 924589813 870170594 785564391 164431163 571818434 985008379 473416975 798764810 461065162 893856271 494540399 30408154 600432604 709194174 848321691 133776804 528299585 78671709 579386303 663341581 909439358 109439931 34011595 64093442 911921122 63942949 726320436 805951245 471409117 562312791 763632972 247623715 560208251 793216855 82627566 825053949 730250215 141666304 458457073 150498539 21264523 581449186 454023285 411921310 460909744 425620744 350040569 369825045 309803234 834145159 142360797 658456857 24174316 921100648 200018315 557590398 53740101 731739660 927872399 893930016 541417962 954532861 55502792 784032885 849258642 187497568 696546529 756156966 415130957 738890052 657576235 234349553 154494174 759462759 551805340 704409281 139669848 228912540 87689634 156451951 827527174 284595139 14894116 104270975 155648103 452696100 733567220 854339 273508110 475591254 947121849 831802719 173942778 746482177 986352128 349498385 513265958 272578573 695191254 457991401 617564377 464657229 53082099 679445702 160218812 167366736 283572629 398550658 377951709 720156171 486199943 723821355 993215571 617560961 233098274 118014527 28316512 686266342 971824133 882357667 901357444 332844058 793327784 193635524 867465512 549168519 4684524 321353927 370335474 978537614 624176390 438398724 946886239 138880798 97482255 214476294 869562743 512830984 703043794 585246926 774810046 599723824 422967307 159815812 622684841 134923513 43299596 92947592 276689104 565880948 150774479 727782688 148664619 732291862 720983279 862347637 112210116 983548821 710436873 350446985 611142329 882776064 675535383 134453448 257463414 214914645 110452303 680063177 268937369 197769218 447286223 141944271 430898654 361773129 772028582 558275044 505531509 399043094 336068174 559786333 930038645 947945875 9524938 142861119 515442555 891804422 693819835 706708923 267059595 93858151 439367621 877559089 69162907 109653597 877536835 68814346 22124090 596845714 620483944 196374451 862237806 916233371 787184231 702148479 664796501 287243170 827215281 509293717 93449752 858246963 913018471 59192824 278091011 499683248 147387871 692652065 290316395 805732901 808373449 214860947 442123746 483076189 392061233 69744322 65053753 553775005 967937019 922728666 198459573 314621241 674557704 65751527 19603545 334900632 411457654 519909117 794145524 470459832 542677172 712784440 391190865 385153100 95490460 10123354 746433332 315063556 856280994 926508357 931513156 345095294 152808359 693374197 619551898 201333850 164618753 168724502 478796372 420300550 992678781 328641180 609114738 418787849 630620850 411595505 708940981 287495794 394567650 933338911 920850539 613834842 769665218 121334523 817027806 564884979 781706963 873048659 764874273 539452444 272587848 640861938 498306084 382441543 933623895 732857762 238326111 320211258 1767402 221028535 219886268 601441209 634904491 226318023 270904856 291122250 465745002 667553813 335248265 771585352 900787944 28676230 179181014 959560920 659584367 384810691 359893203 473330384 487851103 821813645 167515964 568851267 790643547 184826320 200604799 158583095 215214201 765829739 197705461 658561313 683888895 426296597 514576054 100771764 761498053 831630959 96876788 146044537 88849448 312939663 441688473 533046508 517727789 628055301 85811548 941096112 306664968 444369159 691578975 272479352 326935537 489464375 332031892 40226107 748682822 398645514 734870073 805650491 58350817 151455050 240069904 886787826 125800769 251222603 373494571 844197907 692149241 539736397 833519721 687345133 937706038 130668165 415152031 870090905 689678944 152457063 633028785 841169393 42916130 670945816 107580526 482620751 341113910 197482633 828975383 239621778 306298815 306925110 562892901 88819172 629892272 573135221 556052235 788551739 473943267 564991938 523364630 108439860 773334429 680774906 714437670 639702698 149111499 542039702 251739422 841572891 625539965 645653674 191919645 837486831 824423811 909642941 80429636 912027513 856391571 818577710 286694121 642576607 895775705 89413122 925491330 982523605 530618063 798013740 917866031 181343162 719628932 118301218 525470497 451256512 275695812 503147421 889569598 885519694 473065129 556064235 560555697 176867163 191665222 921801900 211174725 182421429 888651539 117728399 5769451 13895196 289953228 869504511 538933488 496050240 87874962 112134610 723507331 98103170 344596928 269758295 941561822 111562824 990092854 279428954 143181912 233725803 590230630 756268319 939117104 503997288 64506345 2465116 203329382 317159181 524428637 237378042 777558498 324263194 437571952 660375716 790804549 167515965 155361492 789638405 148549934 682106027 398067464 756263484 579021962 69706560 497607858 954165079 137474694 858318268 97192214 817660986 946621443 188160187 375890750 549814178 262369519 499024283 287404480 278046451 548768919 907198768 977009257 735723668 3146843 905035912 183536353 979362665 821688875 833257471 895577445 839146939 895402411 133292923 534679361 236551757 804241136 757654348 320585656 94759785 291746361 983725823 128197953 558576281 625505358 147968981 60513598 635012299 103995674 439821696 591908634 897547988 227923100 614766605 590886570 675847757 468106909 405963773 386586323 5453392 488864099 523879597 179563368 676651853 550297765 620111286 422360586 894730561 901682165 406782454 766066022 791435465 299870120 633914128 276442103 527414791 93748105 353391657 76328987 431231933 336129514 376905747 356357302 442371024 364263814 102512088 823335336 889739010 675572617 609154271 970630256 893669240 715696239 739362448 336707357 342669466 451686119 395957634 495786319 52119839 194693672 5698829 347724135 185233034 127328726 290173405 487793172 157578311 485622123 339335305 888014039 546424393 918484727 717408173 3383647 205789613 297320377 63097859 444697690 867213468 739115227 294743477 641278398 906559698 232001803 686789800 426889667 516686433 210830449 918681608 816916929 18504106 229827224 58080890 48775320 833650942 898941321 838194564 278594267 202339825 469377389 869390317 715709348 337418972 64675145 40590427 288842449 739043773 852962760 996254084 103774503 666976466 811490090 117354147 316661285 435257818 93140499 167870610 482251490 299649991 691789621 106297992 431176984 914868672 303896035 747762153 430721729 316444285 454182467 659003674 454663430 89392013 72390274 115128325 574152634 987345728 889092972 868405576 689517554 722022527 564649937 404445882 830860093 211696368 384657024 881989103 852879127 895614395 654874197 324422772 601284206 669717343 420803928 244262085 438156799 648202352 796077511 812498260 892945935 30737676 380428330 828665299 140442513 170631288 25312983 304009717 545225146 36962956 305248797 280845114 103903319 504790022 265691063 553224923 679969014 972263669 526058126 150346719 342777279 691423219 348237309 750984578 651555588 291310167 555439436 625650436 935131490 827580309 649388632 12738077 495181762 55419694 482150551 17479313 180824998 391954905 350890547 933836678 360044222 709132422 377171075 943364221 970474537 801766731 573891998 20679599 842429908 215380201 688402138 755921301 730033507 358186473 473698987 856345751 349464312 208909858 945755769 386748848 421547215 965236338 190623608 981063863 577127252 134271025 249829576 298293033 154867282 779054873 598962747 557241102 372222459 964420557 366907295 876967426 336451742 816661662 446210357 676378725 335049348 586616718 766768464 212367974 682627552 160165879 260492553 961638149 99026617 115703377 139777941 824360007 428877184 822575185 15974354 548276135 321383924 113041137 607649764 504697173 33332562 704348984 681961607 766436075 5786439 457287861 670101596 252334405 57015620 143699927 688587390 630520642 606840996 798760893 68706035 920956766 763787720 682696213 577524015 75014097 373195636 643738749 240578152 183462628 651613046 825616200 187863919 552627434 223761966 190232425 993193288 122662047 365688117 130284889 488518263 317976633 273838758 414596228 110248227 67056653 984020993 288966516 497151207 539432660 695696 664757632 927344413 832001500 349236496 89334713 218402347 913857733 637284650 145462760 967079473 585166724 306004891 699002017 786195134 74148995 948507417 225112055 854505362 673600993 539177354 776662075 15719009 811489612 502048919 889024966 495007155 504750771 221306639 404001221 627759494 758370280 780929675 890469074 312429322 854614834 402711937 786273972 986720215 463415646 578526076 641820131 917401667 645745493 122709137 796023728 396374415 158802602 671396525 546500921 173990608 523289641 303291020 421540373 515486145 173857421 427513360 50356278 859884870 769947125 990403806 618886297 369797556 152384866 569487693 779650042 214938153 21575994 815218793 81480061 726578214 621828700 523081811 510739022 940837004 781567840 1640946 203694616 597119447 399433782 493339028 453321558 766873127 748284709 541086341 979153509 342299531 526119621 283162194 660823390 314657997 865983094 338067016 806958212 841712690 541553815 839012477 247303842 495194398 413124633 634483120 493421603 141687800 852574775 634258876 826430166 956615548 166619395 926922751 848103514 887201060 134369378 17989429 302008897 930766117 146512638 713509132 816954719 994792292 652672418 757884729 164864189 741726839 974496245 981259719 656189078 384799925 78397157 241814451 912635989 312978501 577757742 778617523 488116614 411215092 748306111 370613234 112240818 669808373 770303346 994379852 499555718 735673703 311234197 345229013 77028587 779478475 215377144 600101463 446684426 759952534 933801059 786333693 268307172 899028137 573685315 514064510 804131843 692079389 269091893 791624301 41949233 64918446 300536878 628435909 378790243 321048355 837640287 470361000 409054623 333830085 760864154 446973716 637172143 951881013 21827111 25937718 314712233 786527248 37976682 815441211 610740603 444099419 560121764 62773238 230396211 223626321 411208539 695280534 869589303 138747896 852062524 231695786 451253345 960332815 241574331 651509218 989012979 758244793 690775510 943122992 375488031 31324606 783624597 531292066 522343788 442927375 249161681 160243047 486321380 349853237 820250270 463179361 220968994 115698738 204797995 252211644 952188247 463977860 950258372 43424127 200354038 141796918 894450706 224722493 745608554 320925538 436868886 261066313 877325066 201649637 447298492 982764243 313259450 516076290 486283236 475921792 479939513 864524561 104663613 982651188 96435447 40634102 342149751 983152374 683449540 338219867 673326732 369124779 895318584 100176686 666577262 454314277 936053871 185319291 204467861 929033827 169559273 525743682 205158470 552025308 28194279 349069169 834469990 149461764 533393226 471972584 373809272 143710653 908033949 661483288 220304175 640230672 914958773 539223902 474879045 482004626 595589560 445679856 559961398 350204453 514876175 749314272 670253523 61621590 722631775 220454297 43582312 346614506 1262813 459704497 839433149 675112749 860013156 951466136 295592513 966178118 532612182 466348206 146462894 52127353 891801065 546562648 396555805 437268099 408167661 896667759 623146850 783830907 96383122 392040605 693516975 4546340 45070432 344120220 969291200 393416360 333264258 708495512 836756846 697243401 712267627 719161349 269095392 373145903 837392229 138153460 687418895 426054719 384226471 856325548 582156745 436869680 530154183 975765132 628567948 256566107 456484607 802818576 373500097 603680342 887387342 351599967 643543458 679538605 629335384 954876132 640728214 779695654 143691424 444559880 58616892 927086786 619616556 974992541 484355567 657300290 427274187 124373329 14937891 533821785 864365895 345184497 57722666 150883781 695080315 479001077 990803952 605159348 189789037 878846085 903485094 119599807 456077247 358143427 102545627 100072831 882391512 324287769 223547276 296067956 750782885 103341836 859075715 472266805 159771773 946149784 321642636 148541905 693583301 272038834 153581653 730444166 559756710 27156690 11439950 258589332 648390997 551014022 739767879 444133587 475330330 396458181 906630568 18165752 546078825 468844030 678911725 368126162 200274773 655379904 600344346 498386965 899159041 98160395 992904919 805110150 251173366 544447845 80049458 765089783 691049334 123974585 705561716 156482273 664166407 440745924 954887481 606228482 301388241 245740020 358827708 341705930 360395866 870674222 903353166 666814580 691612746 662298758 247067861 745205331 996879969 30629553 500912393 621467096 940226144 277501604 118802135 967828914 170541918 970819763 810142723 320173614 180028763 254095621 134843348 993033206 447150702 855617730 263590809 555213859 379007283 394839345 313852793 64200008 544285505 303150428 104868190 474335451 263950303 85270408 89351813 667783790 648685718 348406384 776948369 625219947 273513828 837793431 689156410 445656343 621930203 737897905 481920562 499704580 663005156 528307765 277485695 822313774 30322507 891622089 660713551 788818864 351726199 445932788 57247816 678536197 757695893 350242690 978125834 390062287 232203373 462009029 793011390 42837700 50755632 181579913 25007151 536919315 418612522 403935745 32633882 66953211 980832614 234948326 331137372 300417458 816143554 494442735 491397826 581880934 487041206 718496718 281385278 686037929 536196220 952599040 120238203 532070354 442298175 155142794 630979134 873842231 409117631 56052643 843871682 227214907 848913342 151252377 419734141 872743324 700461404 150391534 908549178 755180944 269042462 297937800 971359302 723525331 937752000 641106979 574614101 585840049 844519762 39738275 290545841 621663109 668118204 908866424 278493420 398951136 489419198 520885541 299715300 682644528 449002970 650280923 13504064 619017287 312110636 699763592 362860389 207480311 923976880 667207110 832600774 251267731 140766426 46551193 979388143 185529721 798651994 788087515 188284783 542231843 171331427 114673878 922473190 322864780 356095383 971511534 976906476 834666581 807874686 311516933 599749772 508474469 539537284 505976037 280014536 141354252 150235870 968116823 250623679 844225096 912567188 420366184 190731691 69301615 632139045 634610460 613115031 761286258 330421477 77097667 386766652 270675441 313190986 856723684 763354602 308176052 137636195 550135013 470237354 872571903 875174175 459901570 493159866 859291821 60168421 102211172 974699707 61948648 925149075 605923991 446124372 468190866 362706370 503313786 921594348 900371526 951446391 993266028 38944821 944462614 272428780 615824026 518577235 389408349 754324999 786710488 355434235 992406204 817704224 215188154 616494166 323966976 98279669 34155766 36190795 464392702 11139882 521066698 750412487 418307265 260155003 423142352 521679440 80604766 513684719 52230218 572360004 661463256 758586064 825345803 269411756 562930614 187268632 956537082 345746464 322162011 353022135 564889865 799077634 897076300 578683696 868300790 942096942 110902515 696626046 642844982 727581237 762530787 20727120 866043971 171887994 186051719 797828554 889184016 38618155 155934893 366650759 123153307 304153018 199345263 868806651 599566452 85376048 924279309 162739932 243156111 714344327 356043408 659012724 855820536 620577913 937924105 585014 287251645 271090241 733932424 998973917 478410432 852127067 619848691 935686773 917650975 73221845 695243881 328785589 263316964 806637 690693914 796330962 342375453 897073923 343835036 44123867 881518570 842103177 445668779 314986002 557634358 502200064 824120358 584119295 172763235 132398492 300069011 687669871 61379550 647075705 353198259 550761458 231032503 871676654 785825176 384951082 537542081 124284282 849052194 344110526 160166104 976665559 179496858 72914901 862720454 206205440 704692882 229380973 307138297 746062666 997874640 28775181 760518828 739663445 62290794 472965201 110661333 895174140 22466390 988085106 195956391 502058957 598284579 349741339 788326618 228150193 310593883 471091811 54727998 756211573 331979123 243847779 107675 874730025 186956465 426771995 825940539 506466661 509281807 732249263 660687895 963223441 927656140 142765597 160449671 14949816 230927807 729030416 795580776 160677470 69454866 110573300 581678498 360096810 448800267 755324953 372773949 598855572 502448309 47596702 824171499 425737022 382910856 816703676 197606526 54504200 510018478 95893230 880655981 307295270 757664183 242135108 322060191 21072245 718435367 47191602 998559925 902609707 425846836 773581230 433157370 310526627 20788194 594503962 84139138 759163679 148471109 134720239 898130621 51836546 748100580 585614882 809738943 656784538 150596193 872275535 171114589 262148188 846224067 967322204 217631582 490885807 482977850 773436955 491431056 415347677 905535839 353231254 168357976 104318548 495319077 823253074 562119366 91049784 43109086 188913080 403752849 565200061 157149605 579022786 216686398 651630680 751543027 883210365 519468379 740760289 265861702 653833101 908146380 838004858 510295180 951873438 947172315 746619263 14516608 317277587 366717856 896556015 769667363 615045822 749053997 867190038 90427841 382004602 339904980 442525524 667769045 260846255 349728930 456161375 895174825 788629704 428239885 714865269 181497340 259841086 545067514 381988770 518743095 145430927 946116467 125796169 140927551 72937399 916110415 749462698 683502988 386680429 366294924 147752828 900874663 450399841 96942358 346171887 292927593 350112016 605093712 790237873 865749482 565633727 441519290 974594310 984789760 842416556 241722478 346722768 125826963 673586233 955237367 105940676 900279856 52719432 613962833 270345539 542118969 320292053 849519092 585868611 911327621 737940763 236568161 44089411 647826069 674696041 793526476 648884214 798988140 755931397 94991032 6194199 583329272 384338646 909722973 600729800 834196726 247040294 845429980 904564602 752742019 500442139 535603185 85116411 834834814 410314133 575214837 927834527 326887699 493813207 696192790 491392590 747478527 364682727 378082030 210585683 882084080 391399221 183165216 155626300 892806939 47232366 423549443 628814364 569070052 363785142 188902134 207813565 404479575 666629088 135283752 379923597 591977770 388846457 96858985 307213545 953222833 569783840 478103828 404868477 236521690 905615927 13060685 35744724 633591804 602212544 28843509 286034199 369424833 170908763 717801929 953694891 877964021 755631938 349502160 332217017 217862021 302271948 594850343 143259654 40733473 410338020 493556614 852383259 272247495 802563237 447092084 528426321 237264850 480591053 142641392 821707118 477991611 717606350 388845976 764752644 303937546 536389974 467361176 402826555 927162125 713590191 422202084 966677444 683361911 64612818 926286009 478843482 899209111 674821348 670984934 728868745 458462623 961424672 179600165 965714918 751174760 799519859 938856945 292047521 457252404 57900122 189334692 348071863 991708519 873864780 804148554 538286783 966764786 67897207 713301541 411204802 88022346 878856990 6327007 234740527 815563461 640064678 774899611 230820589 915184083 340884643 820051533 555307460 800127964 534916478 228316413 6510979 644398988 346168916 244935357 478074376 649576693 92071805 813100272 500768346 370098809 404676548 335773067 234810161 638421051 54805174 396126421 615761318 54029487 874767917 409340618 301861836 4917136 844191967 890260446 169751971 72268999 224642208 613042175 943561407 929460353 528467659 65297781 842689566 969952587 642055031 74194981 927172751 604803745 278072143 127946292 735779577 514354313 690326029 119164165 640422530 275343100 896256290 854163973 802721768 174720567 200376558 542745838 709645914 225687007 100038037 607096312 838539955 568350395 891685951 735366688 918970269 42073211 42879696 672214829 142766290 146247824 559891014 245650357 998623162 616166560 246534856 521875224 779698308 944023276 709596254 663596350 175058765 871431881 355338863 337570839 674983055 912920311 636089949 406924048 197640549 958422391 663109152 230280146 861095680 847710488 258666345 771874863 251028719 86056843 366496196 972609309 802340844 122208033 146563716 581356993 359991293 446381351 626793643 228126702 252254678 759542239 95732648 340362122 608390227 406426407 696323174 339876333 253326590 210071340 265174450 401382799 646790629 443076897 657356113 848692443 933221039 125721947 196378078 640932331 486430097 111854066 369535860 342898042 735511072 673083017 18164210 438740608 103970416 280134593 801925689 764348885 515193488 182490210 695614234 889427855 464435124 995180152 174392469 745443971 236505370 569450824 30610256 97323317 107488150 628650088 214747187 198962476 52916768 417438091 447533182 38689515 86115158 449508186 157545415 904802250 604689790 440068303 555764244 214874357 254475261 635357749 324690590 517849345 548177200 57611574 988705692 182540351 302531267 987441605 173804125 664914710 614770888 696335345 627030331 992413649 379837166 822403629 986475733 911908846 957726928 234836764 253014444 956602095 176038572 917459677 789524247 478256012 307648175 922839998 702810643 417054901 658873461 10350097 357023446 72294866 323466732 2790551 687480186 203735665 562856960 484770021 298952801 764922653 755581116 159582346 395434364 938749656 220840318 713916746 434894766 117430953 918392120 747867776 631735904 394213004 574513971 438317282 273406103 753398615 381057540 356627729 875851471 984325862 219586627 112809690 236845268 348141169 332775746 382810513 948669337 637426040 231161242 360422153 693269474 434105032 847692101 132540285 985412305 139726669 608980078 646697742 506275330 280108260 309959649 766283829 50160069 407972692 825381663 212363560 197104104 552879665 267581310 56581652 547445567 691518523 219611917 312654185 85754289 554909657 707433470 851861290 599510222 220943513 705668174 764978490 332785 865427681 146317741 882833924 743196770 674772959 534208537 29482988 561533193 152990439 136600606 395921968 821393854 723443360 467093227 869263420 885321685 48540554 582968513 642778212 435716051 139740328 864169893 361730907 689879778 857481488 900418294 406868324 932941518 375403009 981240 97409862 54705887 172167945 181903104 129584116 247706149 569826943 366004578 673083080 132591557 479337936 54311772 516187240 368818931 598344748 140249426 91975892 785345942 650355283 914546155 144752496 463338341 151553548 80543580 60457087 749350720 117621842 394002371 133717707 664535081 403981819 142739958 694123540 58441819 840706505 516277591 21955485 721541896 523856594 39767151 958059817 78678648 332008417 168643138 682020271 777890658 498538296 188356112 210274113 99211533 907820066 76734276 969898796 414946366 622016182 432883504 924938632 897316588 93472926 904595044 242644296 144244375 38093652 765370018 54391817 89757884 849133201 298096896 90537154 596067528 603955337 213337546 291418280 23210394 302805688 296350936 919789861 653835324 302344521 888114411 394256984 703705605 885728147 345211366 957339475 831971644 108957741 986285240 45229016 566770719 885774375 984425102 343310793 647344822 527200688 389191029 977493860 865020290 953207835 451416364 405411392 316968188 417729784 318984337 292711506 238441726 896758223 190713525 233406290 924785933 821163698 236065169 812162955 280208857 937614183 263150283 673689555 829186485 268012002 626404253 817145566 837634627 66578358 34999286 827755942 149745657 2656150 944990064 292410260 264324029 30013205 303646444 151783538 219840181 335037531 876125840 23623978 908499087 553201574 84139962 496678553 191280410 698637485 921821172 571919658 916916153 840603130 170196618 249556255 215970238 437003399 258042194 727422557 389158676 7427949 8800273 134215001 746113363 409422634 419358583 31175340 503734950 458234547 730641858 876480215 585275076 354073376 257359668 584696929 601189412 842612418 124369547 627656238 177058592 157217474 258690343 660957242 249499000 197887863 288884668 953340281 363473610 166152784 687876932 409426981 401921638 738480618 61427017 836489526 528939249 980625547 846039421 537188904 387552043 474680050 213607648 585358092 733441729 435585747 852730406 190396698 237792898 331801318 888671501 286219176 802907013 292095089 355545401 790794347 526640387 642046036 960702618 832477505 821767908 904063734 26763843 903909965 601661005 222246999 195029584 293613967 688359825 397863628 647318306 678702998 173532488 573530294 416036133 99797569 382307705 22411379 990181924 594601956 466661904 450727711 695883722 182327227 934534111 873780332 876488212 804857119 109422645 728042150 495259029 991031694 707380006 59893706 391459121 982910938 434738772 197938472 562902192 836694559 867543643 399134864 568839929 969944011 194295197 515066925 625685951 686858165 683606306 830615605 915596387 861914866 566563909 961917426 678092334 836857321 737823691 570484329 366908114 939321212 963463806 42576491 688450378 187549927 932062828 194874425 636622272 150016269 273235216 549865073 790277895 758787411 923147080 403062024 348106614 814269967 142822065 195949774 554452042 140533246 355620798 325912846 916760417 874421643 762486432 15380354 995385560 107204200 664685847 111810433 154074557 28914697 713659597 12476524 912283356 468842387 422726211 174305251 127314789 13262335 724623161 653238468 69209991 709974244 199053790 839309376 305302510 992445484 22329344 651770806 388940598 122931731 939152764 676863814 864091737 812047583 479920326 372541815 58068210 338406527 408870679 665184003 918974897 436516229 441774881 986849223 101260219 824536485 660084991 934915742 222570689 288455879 460753185 253528449 425317499 178204276 77605852 535557709 196399907 204053792 998356097 213317465 271680968 595860997 553581166 798683177 890760784 132870434 502070860 638996240 532451857 925626284 417679814 321012900 688300447 109839456 300376659 505116575 833111365 521104345 248696128 604352905 458285386 22148327 422966842 925434785 420325920 581955991 739460649 931798194 93919407 296679772 323243980 187388406 378126914 906832183 548513782 321549406 893365672 988932565 79459049 625667634 642597266 841287168 890924363 893501693 687476263 510668872 20558054 572156578 195078117 252845775 97043955 242872164 906086501 205308386 539356412 783298979 504902562 176498400 573864057 527442334 998939607 636991637 59892888 713274891 981397571 531951094 875967647 922058886 387695546 483398686 911559293 811403500 208764877 510686681 19751098 357721250 541215365 597999166 731585845 456378125 899469256 910406158 444282255 504469371 540058732 662020538 285864920 762776289 183396025 10560407 462686873 22972900 509878049 341891809 482179677 102751367 337922832 953478509 339279260 855640693 50452634 774990492 334018428 780359399 509964071 671841908 963841019 935113802 9435166 23737785 605838426 83656835 769033180 584955776 897749317 745573505 208204318 763989534 414220145 685620244 647398398 139301019 121996494 949033205 317682317 921973535 251885763 412846272 797689340 278845110 196939422 414973649 52982350 983573403 95112915 826262698 113594961 250137065 819187072 285469383 906998477 72675593 975294932 893932341 79593517 977061122 864797699 792890784 335743853 745897462 59840921 440346310 341440044 542390099 351516111 492935914 81418542 891701211 966240782 886239249 474751225 379623293 244889456 277593385 606026193 692332014 28347547 422956406 299193896 709624445 76809373 253616164 50239953 662415873 784357483 951276021 544422581 180728063 693555141 629237998 163446481 445993089 773526835 176659334 46463317 778108629 762261501 27117311 255150947 325743254 702546106 778213191 31983013 498506790 760158254 891248756 33832988 420243441 564738527 97277858 860710069 352445585 734162768 321855286 285139478 343487924 365778424 226800822 205835346 311918611 104194612 869996086 542087194 589859468 896947336 297601247 96944853 617403625 767780044 500847425 135794034 675914011 869622234 685692965 201497715 600459632 188032338 823943798 664999213 878872468 406938785 448537327 212539631 562534880 945284766 123912337 826179629 854640462 544240411 429847257 484165833 623198559 562648151 67538711 12871783 100357340 616849070 786077697 707084948 113264515 220278236 533447144 14729133 161944050 483960400 248898460 70588905 584957184 756191669 971307975 288379551 775599525 42315670 471514438 458567752 711057678 615193812 416798449 827505772 580067001 478541942 713467289 62885009 949224507 781805771 839088479 349664316 715841692 798709097 61747296 926221647 752281072 365256341 898103236 756710956 517626720 186085560 675439694 243895981 481211340 855306770 809042727 409486887 124065287 70144588 593234652 438898065 686043684 228060889 360705836 46254789 280570077 75953007 607526649 627285750 298485933 966380453 979181830 712672550 652388822 242309762 732155381 443303015 779377047 849703602 331639688 870052402 565417060 877677810 534938769 177933332 352977991 30391727 887989028 794072759 768251918 503854395 223282951 456390283 895468947 541494414 293081494 941903910 904136042 893077132 675185182 739177952 452310715 942345340 523976381 670962950 130071017 287766556 847923293 14681639 973239453 481218311 144045211 447088757 781473217 685815044 784057854 615590525 588782551 317373770 574898426 787663586 507791868 576884641 648107547 379960840 49550151 23689575 298140567 658659647 329904568 796477577 547370974 15734911 26918016 597634929 541156270 419643546 112648273 947732696 149572949 631832581 679227254 27561639 885460200 522384648 21733349 127974564 690240449 285630485 477249830 629629968 116884050 863408882 332543055 718773750 824331852 285268267 360262807 717681481 986549457 305364529 549359974 107013641 71710269 839347704 861237875 471552878 473064087 240535262 521636131 697974890 46249357 544214664 557314777 628447121 757229230 148677948 860469847 238257168 369690223 352900344 238857447 552247693 953722487 2919642 822711073 869803478 276535649 851488034 940139480 113429739 183508260 143138741 547541675 525597588 866263916 732419820 434472706 418009905 533822949 220808242 315744471 941346432 55800074 18631232 223054152 51218682 430344712 128949177 567339999 549414285 221400397 256569525 461484694 823573481 683741715 916880043 792622273 33504654 592648883 831435520 788164613 350835157 168872731 419159053 673439671 90538996 78716903 768334648 698774104 615442965 846179339 243452607 12220696 368286221 102967150 50218823 273377721 666385178 479697349 403609000 757555201 558341795 633012471 713026160 441438064 799639886 292089272 641253403 598738749 719476874 510498365 952495354 97940735 832177628 589019784 763200579 53262190 501747012 859927237 836483263 431229888 639236669 879149468 449845383 100069287 24019312 705219476 112317798 565880826 27164603 520755439 327149691 643798960 849010208 516077074 586707933 127199971 10160911 847994762 206146111 541696203 952782247 60355174 360530592 561715628 132796587 827465212 392921197 690362526 99657623 993679620 416431532 209269239 238468382 426304147 812583134 801709543 910031551 326659101 620976454 718721533 632601528 479979213 831423890 161152066 363515911 32620145 169262799 59137133 160276973 680273437 624471530 180087646 627241855 298301310 842470390 355267702 404006522 814722855 586811045 557771876 904064583 202358338 306250101 431924671 45386704 45367156 655789168 616839055 903103759 336004836 836736080 819081287 711099208 870440285 467222559 634996901 398093231 971987829 807143564 699571654 292450760 795975590 708614222 728948590 107551455 96216176 611311636 57420424 160147014 625769265 681589795 466163451 634309514 963192592 175323420 345261012 780186087 770208345 872207619 725733512 130401136 932289406 278499272 255872005 332744070 249083622 18250136 74855431 341922290 798587091 15270903 541542074 507123575 560853744 873583596 448507751 170886991 69999167 963747437 639425470 834149297 790838755 101362383 87658765 414358047 843189734 300856845 988613173 692664369 662027158 808736337 82339772 73721969 952003205 387156007 962723399 949099071 838121052 692310938 74337867 28577521 721945656 93700775 798862893 477311481 701526175 17943385 212713949 990499181 378515917 539802881 233630861 565549023 90416597 238458131 453226680 649341158 468888365 580730446 399374468 61181154 512400218 829177631 8253648 883149237 551936130 291330610 137949840 217822906 573806831 925843213 746146202 556804195 117093666 44169137 923626646 858454868 621343714 71069580 7378067 168189684 27517880 80673637 521118551 780912750 572150596 97897888 24169867 603389963 689454507 446430948 774976831 592437840 487565003 741870133 720000255 526441038 963245337 345472911 128971338 756351087 190337988 55597581 536131163 447886630 238477839 799985482 452694458 287278636 569259919 701364965 307898680 914976023 14677458 301540988 97623311 187134747 970674538 833129236 980401253 12046540 335315712 705301267 618838407 626793524 336811726 80832789 493987713 79094211 728593556 978776596 561117970 881500111 466562270 409861604 829273326 435089319 888085402 76083903 266763852 594730533 58664172 826367716 430113705 297421279 761158825 891865797 750638459 799223164 981253238 334019908 668249421 885105995 206232829 39062824 101089251 753039447 400418988 237446423 281456483 468153592 324099274 278135326 223452737 583890494 792687161 727376956 299802752 989826973 415191204 181096464 387128844 227572195 967738425 828468353 291648516 35594024 53310971 888315199 772125257 717337271 465647978 830509889 537514409 477195432 957125932 433697723 857857439 742778631 846363033 717014345 592865796 741118247 822810950 668864565 692238530 601629778 48839155 8656841 347570291 804034605 235653418 659763226 123226572 353005642 819399011 158304716 846537378 210296924 146157720 948319779 570141460 813928427 466844875 410124828 942533208 304849646 83373609 526990234 716579360 932828443 926510105 166850771 956435421 632380977 11125829 135544144 683433235 547250957 721524641 532002358 826990498 985490589 693582140 245749326 632268033 674966040 22512888 754503164 389936666 495108239 42534516 450216142 629948438 288287689 245194335 950365053 23641652 800798685 894280642 964827355 446025112 796873113 939209427 869348770 696267550 713889503 971541270 601878417 151752741 959818460 596097927 834508141 736643574 12501486 208993546 822153852 977988124 326297377 561097491 429520790 342355595 649800620 397542302 535856263 795120701 939943417 912253408 188011966 216362618 273962627 205049380 830667403 312225202 713036403 606624479 338318267 885549217 520805308 136996917 220953719 651009618 541248844 123234266 933336091 643226842 740412073 759092460 373112483 944758955 702701119 614627648 145552890 840414122 54992695 273172523 52322303 639506563 518000306 776729434 788019790 462440614 58848264 961088226 750312193 180304633 175932566 370239163 410260186 757910580 606426755 887016808 266760557 941226344 678884752 920021320 180200364 461436138 242525071 421488937 258215871 328886881 214239260 642500771 300320657 747054414 581016514 205954917 842498827 833129040 643806363 437274272 90720292 694036813 986927443 407877619 262609161 922178140 619728658 745594301 64169133 223342665 192139245 800701843 299827305 257388403 425289616 88542988 438612529 688070792 208279175 761163224 493349822 512059414 831306326 738994829 685957081 9730650 617897630 717812003 941027617 115997837 108541897 825794849 490763533 797882971 425811836 58058732 764512950 922930184 964054753 983628521 971785496 660560736 910833609 443155848 204739048 140086823 218183166 358454935 434434207 151523521 18873706 667295504 238893649 382769135 294025109 192310585 837981714 95786299 68777340 899460552 941953827 177863816 969340776 487175031 406035040 461367761 772583936 693723053 200798443 286172394 854773644 373058870 218032116 899572799 41669194 617665794 40669328 677506863 339310313 473385697 164723753 541961283 920009129 436567952 189306712 804536928 36904517 342994920 149283981 410108650 79038249 230930735 642864526 510858565 561133281 524544546 621937435 845743021 278603672 876241347 958414429 610706196 687681632 260329206 640920928 242371785 861006603 776931782 999814955 818705788 623019487 683310534 332593037 470064052 622570317 54398978 329606046 312977715 392589734 689996824 459996824 977484857 496443127 549104373 22057311 745675122 531330546 756421161 570184146 2374369 607165686 836600707 323437460 134643202 755619037 246571409 927373940 582373 83840026 5038892 793633825 550535055 59780050 386691695 166955171 955792865 80613276 72615424 277011371 680197574 411716846 330069707 107795400 536434756 272951357 417024230 591985894 141440680 14983540 124197556 323895933 344878207 225765337 42131516 743420412 142532267 95736309 501246061 853044871 945379433 69216066 686192824 44689271 440774099 226634971 778988610 356904543 287170156 962720315 623723582 74669180 697337563 220062780 106973886 976039155 818753032 679157618 953990831 95027026 212087315 949307190 33958562 462206262 512583813 463257815 433280363 737976464 246765685 485728150 194236527 58226865 351801222 72774825 949932711 578637418 81790739 208466260 191289836 241248006 954383208 641856691 103159936 414274998 82854679 755159531 887343646 973893842 311434370 987210832 742015754 254631627 568792107 559365635 207468938 64434362 389201739 307366412 196195293 253600749 576506004 580380180 552959715 575137806 643022393 3156368 445303242 347606125 147140580 534186287 522581840 484251893 300155655 620081776 86173639 650021553 349624916 19562565 284434281 281895615 893466642 198929310 430084842 706155894 116759328 912831789 564588778 117516082 548441772 512359866 488344807 635015172 479099445 652730861 103832300 236595846 748076694 480566130 275455658 271915943 342845027 967646441 387920121 209898182 119073965 806063517 447332892 452216557 553553934 27951983 347645673 138830852 141099570 927982828 359119621 845037691 4453442 497326022 131535684 983110063 122361286 167464700 599119372 93865433 979464641 952656676 450873121 745402862 397484051 56501725 131218588 654225532 49511480 31031109 333253094 62852423 435085013 430621673 459235227 576057288 942752024 755498831 455409935 653066402 952902065 807217004 255030102 459869462 419798153 91963415 929191405 546057426 417279639 377681842 659245714 168373229 683024317 887630562 207760894 774004504 660004069 317667919 797537647 801266745 649045232 588062706 726153587 492627802 401959855 995950134 867282209 86038018 784013352 312237627 844482532 3306858 29775310 258052014 873613750 71469692 738928367 583284267 624165802 789914441 527719130 928799631 547247759 931197176 435531273 272314795 729222437 79014795 277927394 189221548 898237845 265712099 289744123 595063543 102849657 980254071 840101631 165689558 953914949 181614947 387542010 810205378 211354356 967942925 191406679 745510397 304555726 222636071 602591114 149540823 485196014 292243774 217644231 449866859 743974129 315793865 853238709 431507176 61231457 924081405 911315346 457438856 203436188 582319937 922459525 939783443 73012236 707172254 411675176 250201351 125407117 410692981 961764775 214233031 986739315 651644093 972889216 287270421 685544768 178321941 510102408 113173358 126524890 525633175 248306870 584740963 981644164 764656843 363647328 253813441 615689961 939842247 533849594 718324345 289362253 178725892 806433963 296416006 24181387 426648398 23073792 265822537 239940789 978883487 12292232 442708429 425971640 708072551 693639811 711344858 962168219 940685791 943673939 631487132 183013073 945335997 703654828 548283858 219279830 173570552 846071470 885152257 437227235 237966189 725882846 513154166 358294713 356485055 495760592 919241606 793432270 807983593 352768496 870537967 67199793 238003623 277463171 834972244 282878520 969418609 758810521 591098184 76698524 157393213 166641843 375617747 15707959 551462767 715160184 394596597 376896706 799284142 84856004 558443893 38051953 609604275 128216495 727055487 710775464 263722228 169050566 632794357 368993267 710189251 653178503 656652622 72996171 774258781 790918398 301743783 833348654 360368168 951674328 347410702 40536326 385408713 527754247 469505071 297039759 940387581 296551869 914254156 567785932 352195768 103917982 717172135 672471750 420535907 114911246 99506480 692679577 570922395 385534496 88019979 595769745 765110946 381325733 194409290 267640226 19705533 97822478 266125279 451968442 160503865 100347789 410577163 281003339 738364155 936318933 107572163 969618365 140001259 883785069 119597563 809994421 29234482 661996623 346947261 981107458 25190861 619804674 41418386 830258195 569247374 344570569 658843380 273018979 388682526 136715547 125521970 718533073 766221871 659535797 902431201 134996847 7316300 484733900 766557447 187597682 302651739 660368944 241055168 67437201 294492010 289760862 843299340 616982947 479719957 962035903 642977623 921802506 276799819 241472613 849281454 881138058 742343533 301770528 443816029 819833539 931114057 421097671 344525583 1118332 181764695 134658799 412342275 515177124 413477288 74537653 763544164 913021842 184879314 993665689 401964737 577866854 934541792 599128743 917530710 202893280 901491896 599444230 553223671 764197701 495106453 632979772 587797164 423948959 679425300 459855808 972221698 726938636 99902074 427433868 884181428 717237019 400277837 982095218 323964083 12954249 777750147 313029723 790780908 497791437 91877339 887486753 130130119 277976560 264962239 969975354 445302099 777290887 411813341 405861906 426109223 1042401 446064286 688428916 514443712 657523557 540279778 945336493 117094896 192845903 465681650 556459145 17161308 20392929 594763791 111002443 245662164 398913429 587323949 880120370 64569922 679852806 747209494 159079702 354733315 182999184 813003041 291872725 199433302 747133145 882856384 217665361 978287785 646160107 885921896 717010158 448628304 978444444 419531362 50217713 63423778 574533264 340647203 292316745 38469361 239350300 887763165 861715837 782067883 180598352 381194604 945504595 893666676 665609565 13145141 325498508 809810411 768814278 112739771 306063256 881037946 175505907 436788541 613300963 849166923 761998967 26141320 531767995 503874200 684244188 843367812 352801814 512966321 266929048 861313189 70046114 564713533 808298686 897250913 458911237 827130717 733674995 400913243 991519990 659475104 253878919 328616996 912318727 350212985 932656086 313034737 677424900 111838808 165533277 845787275 941507146 285615376 940658821 532311267 362135258 581503404 789073677 247845492 415752105 906086171 127971743 948410415 562992531 547022415 28883825 931219762 284506225 788491380 239378989 27081721 193264674 698166449 594835460 221060477 168303235 243666769 403894432 471756001 993609827 590321764 386684525 367015866 421703931 84125253 116972297 87143068 712288041 222069001 752104705 412467227 877920703 212198649 915287480 272383448 246483462 254327518 345851694 710984002 198547469 443124087 326864270 695582616 191293707 203081694 564540749 884110270 472949520 97324125 522724425 584190973 578966942 684453829 272584602 610680367 734187084 64414357 411796487 496749117 437072880 551969528 702857342 29204271 879375664 121723516 872117803 5359639 555241698 889291005 630916761 416001426 628435576 798901584 512993886 305626740 759140311 948925233 679853739 263859648 35182540 417525299 834466927 220050243 458768919 980980215 204798303 245835617 769340102 698872773 638577397 272426727 631987819 545023178 417783959 737532950 626676430 445825927 499864182 606564650 760055452 982243388 883558861 870404637 622505800 823485289 172211548 307721638 689244440 77615841 78516703 259462268 643269934 132751694 333379820 266776852 880690633 685152293 340063062 803541084 694965495 74077260 933089464 931029293 305185473 204711032 617551595 832601704 123045639 459190994 347544252 261196001 788159453 382279813 477231409 913697324 381596846 431715359 178839172 385272776 975263217 508440754 222981146 42858400 971944365 572738859 553468750 236107434 584564996 441617563 135024468 897159551 928059512 763742451 78960295 510218128 698813812 776284730 689583364 886507384 212453991 363351371 742027520 120661234 964074700 207430292 688242461 594177866 280980562 865226827 243583821 843648878 224305052 350517563 146945959 594124868 61530288 133293785 892258662 845548657 372335050 632700267 977520163 881775208 866732531 848216132 891424622 526972764 87409986 672990381 983385683 870298967 159161069 338480750 640465677 159290736 140847199 318420154 175410757 677056761 672491983 238748939 117921259 344433160 530042365 736563797 630301738 516796153 418576520 942120535 823021465 759304559 606256924 322296842 139282597 576807357 480524839 716126169 520481281 754933657 273729577 208280646 108054702 614536706 821193794 278361625 783015910 344043465 812119742 563202519 208574241 908594466 135058754 895799657 96194120 881171458 37915798 930034995 605510843 719998940 936150715 871872044 141301007 767259437 454362465 730845921 9869538 307813522 469758473 435352683 455145141 627524810 591206229 963156313 471820464 503150784 783949961 969263650 807136097 37793701 375897172 306346794 928856214 464654607 605803802 397934231 245736488 231584413 358464420 812606185 181516059 573611545 532749589 588239864 152109918 271933249 206674924 72221957 262692783 693635311 309529499 97824533 120096852 223037130 484080568 618908205 212502541 505993709 158881113 476383037 946790554 240531139 862741965 651758531 31024711 923532349 314626166 208545548 820402006 982796332 399102491 861619759 392968846 546436336 165134528 24520590 234156017 493549633 939848099 415338411 564800012 756382889 319091933 195308955 142877507 845954438 837821051 780319989 404732779 164106333 90823818 482971421 880077477 240565369 443969960 706264560 574382924 934468399 314452970 741518347 851286717 373744006 149827714 571366213 55763201 697664601 98538868 426003266 623946758 930320895 216889450 728547147 526767326 643583579 692482423 667315517 753956946 747926508 557780772 711487287 465579131 555055029 155764987 628855059 728086746 642849548 446592780 25511508 252122263 515722952 238969800 900019343 377030552 710320253 651504248 200832802 906805810 257747692 600964863 835563197 789599248 42912412 706969259 136001887 315746720 312991453 816189968 627739425 832918607 88862899 923053791 250958129 536985310 970149905 376352973 638359944 837006623 683563086 347757330 132891550 567209652 449762667 863992278 559644349 302817891 754158820 158865414 296062952 413732444 306422402 251391019 996915516 393115829 56441512 357287744 396588631 917381319 356585296 399616096 661392650 659399502 158291801 429577947 452719031 977010307 794260231 976584830 265493605 685929730 185184796 306501634 132898751 483043640 913250407 299994851 850721289 742589435 242465950 81647542 341249550 889618266 611218776 687775406 456427178 960811148 118452103 207740390 581785652 285213331 569917200 497098475 471954947 310036601 200099196 999912986 123342819 907809029 227310803 484630139 736195042 362813236 124342463 462275309 450891488 422771690 753915531 78621473 788242008 217864037 956942908 666453449 552784786 449604774 919870553 170552109 425195863 532155662 269776084 856713296 922176583 881635452 507937122 997503940 209089864 575782396 777690711 926174889 256858953 691268886 160357114 693789754 168033470 500087054 890617240 200620780 507965870 339793697 136793929 465732886 475597521 833801803 19020626 428968592 863575872 657231855 31685988 887184477 807853608 189167770 619461541 505291050 433234268 151734998 750860798 993089016 73313015 683029623 734536775 62372231 172679302 646582945 658163939 258122063 421651105 473915334 633051237 614716961 605920013 252376100 616297967 576303714 430631339 698088163 534471750 217618621 339223565 800241725 820683473 771901285 900284098 368391225 73573269 403197129 397538035 601921266 748010189 754632826 732629888 161870719 743641710 9724645 811982870 12770074 798063451 822123844 211662849 354615351 667000163 45521408 600886954 262190993 341006386 563872549 35683785 870722800 590432774 409924053 244167381 949029472 482966482 409908030 969617017 132487349 448027998 598052568 803418189 541759474 484097061 432670693 135530049 976347170 210879769 815585447 568547195 550832302 627400540 993233667 558619942 618398751 244656156 861036915 920970374 372808706 846634344 147618480 945901620 923273434 242766811 662054529 153026761 353713320 746163760 222352142 88933957 7194567 577661293 807723364 252772451 634382247 132447372 859182351 805212292 22817647 327318436 462390195 529744249 851515754 896018686 998032162 739884724 8293306 38719862 814602042 406865088 47754498 275546863 159803272 805158172 805345394 153347710 887468726 538931636 40542570 955746007 894628207 206399010 440219182 985754418 477753846 324449270 835544215 752310351 326457589 53360895 907557049 65746237 252639269 814746333 766038635 298087587 65479678 687206309 569272515 800510768 400073579 714242986 156178308 619642133 505826751 780146880 748455318 705738922 378517064 685330501 604328092 643309764 531691712 535377608 804205523 600929557 669981478 996699560 229418854 812547390 899683657 564067898 385217030 697787283 210237451 771046480 340012079 470582483 807676491 150026430 173009700 737567202 520410232 814180555 367653198 459792413 226404282 55409972 764955817 943207772 564328854 382849101 47328824 360159460 110410003 931574287 975457031 987966178 623311511 841576695 950775275 562021437 227185611 271519936 180206041 707644368 594802865 473265695 882609601 549552777 669613129 980970489 645089137 305159412 847334919 300833085 10455941 581854066 818512132 451699897 730033607 821020298 818953870 453863691 468323080 787693128 483325700 166094252 924646020 34453155 456359217 222663163 381162318 136535314 759654722 647714241 600666888 940188910 413369769 237394115 464681513 290231423 637316598 47521452 221247532 872863253 842349030 313407923 29256992 473487679 626574648 88503686 679740378 112130920 225406233 853278915 809521447 147906157 540006859 648009341 31706715 805134132 184498167 666259997 648135630 99622791 253437507 247610825 262210402 868693925 594267811 697370317 730637051 850449432 679944581 963708143 540161914 621864763 539366539 66076226 248906116 336252575 370593029 903584183 800436328 570621677 18580032 567448411 630160573 500779949 538928413 875157106 168615107 68623049 359490331 451599119 995818831 945922443 229157925 993442161 290686613 866798171 375552704 816187882 665450280 269176036 767328256 542748949 267817978 629713044 351889379 44875525 434153687 576030529 616109697 707523900 504483199 216499890 241176416 810138623 935376670 642327719 348679800 924955315 716729050 553292397 636905410 914307115 976573504 542233188 71891300 936911177 324841713 363971189 865478488 315137346 67991042 98265710 858755261 548231140 191120529 250543830 556419809 561349100 831418278 894755523 734241806 350055125 492813228 688555641 616229534 97993738 81591974 941857375 171114363 154060465 894778706 837926393 18879872 688747203 260835542 50123316 675325188 139731891 683498588 476725008 661199900 874256042 794844622 899453637 749139922 667890048 748867544 24232676 329572114 280030073 844494112 610575140 268359892 686495713 198976578 158356723 409885195 655382659 647839111 340526271 865764105 716438612 390017031 158946133 551552201 141334810 340195928 532659244 604012287 472883002 702010337 707844354 493640173 241147582 345166516 857557266 247054874 461168662 197522437 930592713 964370913 50446665 307654650 627291841 510376377 198100405 981805729 8803116 573205465 614875337 168744145 201586838 663593056 843774095 572563049 308758861 908102275 63116325 985516996 769617170 533098657 625115137 80797600 408301199 639518049 610474780 661891475 929572393 599018590 252176496 116663029 317096583 787475955 181555742 113429718 545731679 556193190 342442509 372875111 143447951 593462084 390530892 920873585 879099272 932452013 477969559 579463533 538385210 721954206 413707926 353122077 730750019 801387696 888035688 499281225 48831708 75664832 956413894 31897009 262973774 266666292 97868419 75915620 111584377 161903533 492747352 718876425 266356873 174086323 346727439 926220293 942486724 542482828 591939402 893035719 424813259 232059890 160902359 512909274 125572545 55271180 645506987 327399472 872162347 898798301 952099753 472080266 42054036 926010956 503125178 887061099 766160799 941028255 417615217 173233009 437213422 469551988 492911126 118774070 520727744 46494169 673395084 614621527 648499092 972777860 112392070 801000214 303062567 908360008 998722840 86440921 576829061 426360524 445130301 565732163 554339198 741898792 217326739 745435553 890596292 729059798 387685789 457519680 804827210 662504444 180735923 316741585 848639806 132292354 413152895 129280245 312151650 599013350 236315505 859008654 748986826 764677642 335702901 467158796 427502705 952575742 79127865 107031528 747051389 268802873 547430114 672688988 145116584 146144700 900935642 594769710 535791138 202218859 447911780 929484128 151857724 659193709 687251129 258377375 873417916 684277576 611102566 596284426 985838176 152536090 13432491 722761539 801405016 661732817 652372714 303626922 873172130 716575450 374388321 731983759 161462242 71255965 124196639 513128526 747832015 729328821 333096214 272645611 989223726 99304280 317464624 149673515 779487702 189185419 126581271 133719089 329017542 587708111 422294371 301318793 793382332 161706489 746469645 865603768 244269605 825726302 277925528 278943424 169343496 396708667 463290625 499275872 77414470 938782893 610046119 83535011 481577519 654086496 664208015 354815430 643987398 732135330 713790842 346630567 423570436 895112578 316624861 425613910 406068780 374553256 873727719 136905454 839478665 253256585 774929774 829883434 67510757 707015227 146418730 778722572 990084727 735373809 707351023 877018202 694688529 380502581 812247745 725851021 515098448 884949695 94642370 70595791 86307669 880337114 693173188 213886174 639886427 865154854 394960997 225215886 649776014 625918471 68691299 988017605 183997410 684709424 492954749 352961929 67323351 171131429 480897225 769841722 583039631 141160206 953805333 54606 574436635 827395875 843355487 743677576 989236272 691248496 612391924 495446020 295779893 248948774 975461186 980223822 697199174 430405027 591141988 764803531 548467641 760481208 196427749 129975260 939247627 852454429 355653992 268065419 712488989 898594281 47839181 458181543 353401890 249119445 561791243 202155803 246726802 454990682 370398951 931556200 659662726 777513268 923805382 793271831 747499490 935083204 492734735 62375131 143944741 697365857 866798003 779614227 213907494 502246274 846736986 125353983 272911363 332671652 669496479 335266594 622680071 249833257 716752335 391591653 491249712 290454069 53294047 227586467 431403554 948810139 959776158 72738124 985192538 929996046 521905735 175463515 737935985 798047384 693238027 261809240 578479686 677211053 938201653 808034835 10046263 57413338 993192267 946323563 447445779 934736977 658839266 472772071 590145906 964643236 370583873 440397109 121221514 633678215 314926970 110434482 961820718 783209193 913897595 648643982 329004548 270931583 12138356 550409051 961691124 231956313 632043148 951920837 964230130 803305086 156178352 610680503 957649918 831165861 448913096 609492431 139021567 26418352 581949560 560709795 876794473 334427892 327084674 139426416 877667962 384640699 353018779 244748898 705035216 499915747 469478714 202294840 182622028 371868143 44580095 16201394 640533832 183346493 184922372 446801007 754445210 856327090 53427609 581419122 852356800 168482623 95449813 607760508 967310689 903917701 221864855 294075412 235628350 305790478 557222465 765414654 935589855 965148351 550578592 795218213 821209786 81597198 92046973 177315598 251772511 434060150 685903820 53749652 677552336 947484519 612364177 174667844 623886471 394619497 490875902 123871702 81815091 98387149 676425291 394620328 918372450 543287480 909998155 385622850 406978046 546474109 845351625 360982920 261835420 142772020 655377922 27447584 137872162 342287033 714682705 486637655 877215866 815617680 168746782 995442387 882105247 203572775 842035726 275451288 822119042 602867108 345247171 947079641 590458491 920907658 768882505 120784380 492810346 539303238 345408768 668089287 345500818 136309823 636862381 972032892 808928744 283156337 680939976 974878695 4138020 873092231 747093193 498269431 238655911 41571356 621461944 371181758 817162583 990592682 698053618 181515232 332311345 672907731 98816219 831287959 976418949 837473962 762971220 76842186 808157596 380857248 873445538 192867826 969794760 338976131 891264603 601521874 223576527 785244270 992110774 90595884 624679327 591549958 461933560 323101973 127575430 136195137 465456406 954068298 622427674 701207141 996615948 950794742 341187696 484023288 551233642 777872641 697375604 562256766 778175320 500764861 580780915 203298991 707002745 73271340 466509687 14678781 370497455 394613428 115654790 183575513 310807643 565700559 464678519 844648146 28495626 129460885 818920964 163981555 105754026 601223986 139734430 477667700 617294086 83886587 447860767 25093669 67203329 824118898 219866922 330365160 430091009 387555716 800538165 499076465 203622066 639090256 480717547 107111802 10793612 451549249 283683712 107883893 98135722 794981317 736736249 820113119 573955807 814572437 497678835 387217134 90133636 624064434 615038237 34216762 573324706 786555240 829346084 938275670 256234407 638047760 605752817 16455370 381249722 897736528 331681310 153617297 576436264 3901579 322955660 164315044 26451549 606329045 967758949 582078176 325574547 874937733 64046562 729891315 941447358 805907389 717336561 435059838 815785751 283560309 784219293 147689637 990559370 406787772 624109511 456866111 485971623 194178566 327457261 620795714 538625747 245421560 162333373 548495218 141263459 296708935 792378793 679568622 763692168 478841581 545818930 933332274 625085166 231980646 568647404 151571695 768709852 9833661 363735982 677829842 325675256 143378766 758666297 653104340 888231998 619224061 170192247 225156770 802241294 679964183 951760616 125673311 663859826 376679676 355626830 401427995 710447300 278506055 502884713 375597672 890419635 302964777 417565129 705845465 43133348 878650419 484175887 555238597 140925663 135806370 997980862 403529414 732770657 35475715 636415908 859567247 873697561 597241399 67269100 357841476 794773144 288881096 840224860 561787265 974968591 103044858 560003331 871434302 795705725 217932964 888370706 669382242 851005363 713809831 277383169 562606991 718542891 369617306 936725582 464794373 39919618 936963755 15416791 195847029 327332954 473626726 98899420 68640051 969435462 612718282 836109225 300706766 544524953 503133111 759044781 108009121 8417509 801778597 459431286 882395027 120188405 297401749 145595512 687068735 571769132 313503329 652087936 822987344 844495612 58883187 790186207 869330437 875685875 931052104 869789712 611978102 661875832 310927681 854519440 408828866 236181812 401796928 837620307 354159252 310272300 996662131 503568473 575677152 153891884 88096122 941208337 741586427 258670 112052747 193340034 857209780 844456190 446642056 198393886 447410191 947243478 800299110 797957858 257106168 525222184 930246643 428175963 856977272 160157348 434594809 464326330 604390926 15436495 357066876 233671615 962372304 172017776 144574533 397483832 98672438 968530413 226347494 119001125 295952205 47248792 229725889 734067880 2810145 200002900 870089040 392295303 653609455 338805617 178891412 478220087 567933236 231488535 129131630 39385613 268359083 485519083 438139736 205705686 435598013 242086511 951857521 988732655 940870377 767229471 143779956 239664193 44056866 713621228 148130270 688125959 976925116 356750496 846224764 372911691 301102434 19310506 490847158 97816535 485169820 836220473 644040784 745544388 604443366 667344815 955245070 629416579 81661927 871513816 580637264 967412523 363922355 30960582 615074044 249944652 13129629 263878217 262475848 370467678 368623838 478936742 693083678 289405986 808453041 732277738 307415750 522760350 34118531 317598051 529337953 120459037 156898232 76412673 588433598 319878049 83277202 582152608 80008174 93676095 436119961 287405489 407685434 516419966 97665932 342266116 9506019 270456881 542083009 617869730 461489137 958000287 683968277 765367219 13206318 736942834 651494306 134669820 446957087 413871318 480093209 39217971 231684362 356464080 78312590 142640264 207507070 519509220 302265186 458490154 90813081 344771908 901624439 670626461 546671393 536623973 138790144 751010648 953036176 584597371 389827109 133814284 706792373 897870069 488136089 10206096 915114341 146002893 756980033 608400522 298277768 184893118 700174690 686348320 250731140 116725773 468620173 990054702 439965054 69514067 760635608 868815693 931496639 588935935 479467319 494028872 193569788 838240502 519379787 961347713 217326262 181333056 424326594 419111131 697873753 614539740 549694420 634252626 921730615 554383801 737603577 49465341 162686470 242738958 313119505 820885695 108357711 979015585 244615206 431547029 902633869 175136735 973023315 959623718 24896564 65022764 630402447 970242874 375648692 873782809 173400897 549674344 796979035 882636772 436562113 877589335 696541291 661446871 200441805 182333420 946651043 434379519 868691737 144521604 866906141 86982054 458492374 617335186 427223641 142062688 60057905 175557915 639090235 82959774 575191830 633972063 21373363 271495402 423695113 231444972 441847257 522476938 963121782 150157735 971002852 252433455 977418720 223170614 668517657 784250315 509080567 706894471 632135190 856622456 226224058 723107331 249728292 877252194 880624374 901913352 545646655 781063385 65653135 458809849 931695306 195338508 813603068 581554325 702882279 106718761 585084207 641073407 125378397 306646138 20981866 733612614 220224320 947357089 807004100 316969571 118794972 700716545 423687578 39275857 239485339 110144080 391250530 812657223 841735458 772978751 51062128 431545472 375135458 565651106 441109133 753058092 386180134 331300108 947620700 867137658 346081582 775894552 21122392 878337113 799447584 139113141 334656017 104801189 818057445 4263114 983141813 200138265 492433621 248830434 908390585 77703467 916432870 515874254 50165328 305837495 163350602 932147766 242166102 37536227 926277497 110365741 117964353 929043705 248269435 688244664 813732096 488075979 5235937 732064377 420441354 5793119 642806405 645439942 100654295 482708387 10491992 821421307 197604644 270003385 448131893 835569514 10926849 539496496 512651992 673998249 628020579 661454804 49287536 303143351 155124764 323490526 121040272 671647124 517449597 208265757 749862421 838957327 858231969 16184982 479959785 981318362 423825508 359298702 395232753 353261182 306356051 452270494 24560823 482769253 302522112 230029193 873631559 710698504 309968018 929768514 59958886 489474995 371394056 687008198 875456928 913331667 726443787 973333186 895185452 763037402 530177953 939173441 446659695 308158946 400572103 791906010 593445807 983358973 45694039 359451489 53236931 190462048 586668983 373777649 380490379 394731789 967256804 4479165 248100805 63949176 288552900 864772170 854529639 790042830 22857582 958240561 531949854 595986026 123568752 962585517 784693488 282009525 21676552 528489828 114753766 928140115 541990304 863202427 279753284 501901053 863470925 716481885 370461393 425573225 797265853 132423930 234810226 759191201 74201307 967171288 767926191 839566178 383724969 210053519 206905213 524458567 814056176 826630436 292314692 830063182 798403005 477077564 556537048 154445912 207251967 881999584 520998531 637820132 539666354 85074013 420894788 636919453 623399669 421174966 579342962 306975090 534345197 350533217 910403956 966899719 628921957 997004920 340765117 617840958 22406593 536172267 225286735 507405390 376906179 32015067 667141154 922867522 998220651 195209792 762270755 789402003 773776298 891386093 539956320 589669326 545101465 118470896 873736654 536405964 2842924 395719555 398702781 956511195 561063731 550999324 200530976 687201272 732725305 490993178 828955487 968773852 638730756 478014932 235430211 746459707 458044335 241858332 202951155 969886876 680708511 740762835 987958046 704405223 131635844 229855528 669087197 385263876 500817349 689977690 789807929 492964763 123403434 595180181 639297267 78041787 738543837 921755870 609363042 456296335 990698912 945986888 996011636 237826688 488419265 235171498 94116561 264207628 225867414 210351084 188617368 390363405 940271061 66184178 657399487 643379168 836658177 247838856 878594976 872723919 970107388 15250836 664451547 679725772 731015429 880087227 28963839 501961333 756573038 778733497 167848357 483110069 793091964 228000472 106899929 307042085 621855845 146934127 164109101 691509877 896147372 695012725 752357194 111177164 226511608 888075826 657887134 775487117 622459604 539044734 911478291 24591683 598785383 431337364 338708303 48037434 280797520 83616980 218344148 222557503 230279144 934285225 566932392 347994095 917920913 151230908 61740802 928400063 233691273 379597256 622470744 447711522 395455443 842414830 934534172 826642077 966321330 730166569 387654676 9127814 644189578 400307655 815844103 947923041 737808858 140867694 865180303 507648888 820869544 730445144 980723511 89063146 907909060 724141471 88815803 448560636 153390802 250287906 187509020 553244454 800235916 643288906 731707549 567720917 216741481 368575909 544065174 648117529 631547340 386163863 54366810 210917619 232384640 404351326 970528311 466510478 901610633 366536037 879195872 405367452 3737739 437128149 633987584 147544886 421787959 257071359 343198847 24045455 976145880 775965442 741281671 386643959 934101702 567279104 181437211 647355750 304350706 697029949 859130535 942265576 901662235 889064865 632017934 728819461 18169655 819051595 468422646 882648713 783517164 544219828 44493079 42085920 461262347 561804002 583612053 249713516 38643834 316340461 82795988 961551852 641293967 523804958 780968501 756632761 360944356 515599205 182880066 341089235 850124209 697169035 751544932 647616277 420653717 444930814 352872761 992880373 542420926 530434995 634291141 467302989 667929661 784367716 208419581 256626456 515090729 678493642 817842672 846406474 211557600 269024266 914350578 445504698 300631425 452640284 270188534 791716313 450286153 258214385 825673419 943135140 799393296 688582686 271852283 197802474 336222661 223585271 173419104 50907709 762010189 890193148 368579830 542243751 745226800 358560085 864963750 514665524 524130601 343724326 508840446 332391950 688267338 824965901 649676414 375259961 552861042 777695447 224978617 231133269 756781308 649473537 277668529 289066710 588408121 183130582 90929300 863531960 530580327 219365870 39621923 195101040 321671309 667860446 551340826 922662268 990685063 650133995 586095502 386002479 881112412 967450307 890228505 494220676 996272568 785601317 798681004 443671263 544414608 11426609 40057701 809903778 132188679 689194999 486004919 246091878 74097427 929654065 220280032 720297411 81688169 350360128 723620935 528007042 946729743 412178397 350896097 120901901 629511831 577567098 913494590 424412866 802332748 602728850 832110868 112875561 288571898 625732314 48056606 829534731 614036967 507190635 796406333 886630502 156396833 309187202 178896746 222627123 882392687 438351666 776741400 785307573 983050289 604733730 178945060 812485626 40669645 775320438 360807088 821942956 480562144 290598444 243231776 150100756 835770909 206078237 639985939 937888566 244272653 877426791 546651848 578158807 826450181 164672569 267117375 378446569 235244220 206952976 89306955 333552437 809303345 284428312 679473182 491357881 970092524 851926503 206242464 619935386 309890748 289575779 387789621 647876321 876602363 675864947 648964959 947794902 530519085 784303395 422099244 967575805 478767479 82289318 823066698 883987497 257384830 958132650 690428141 179936412 682063148 594604455 448841545 922300262 82955439 853578376 571559020 600013039 733948100 796135841 486945381 175870507 750192402 986083850 449019990 336683116 163238518 127468702 696249093 843165008 986226661 914736453 564607206 544222124 774832277 84504396 687857873 19416911 777440187 618074773 500372794 531447657 666646264 914206245 587989190 322164550 47751988 475937064 97722827 332868534 342657108 257885214 910493921 388527888 265564652 768131252 537768071 501989964 685119168 395974530 463134783 255050095 331011658 107246519 954304617 987118271 565785526 801082062 11189104 746029752 560309088 807273016 140294123 835708649 738787275 602930035 659565314 296665559 135961764 966262259 414089004 402158824 398169803 94085155 712566226 63677810 709126557 898727867 201616849 229764398 734835945 867997350 489297995 47806524 155133490 796179521 218436803 968667050 140553515 838453211 615799201 487633657 149495776 253062901 204676556 687278521 204165496 436822796 898369958 433564345 96909489 186456848 85367086 798074725 516264391 549414659 427125354 488749582 724445786 338080658 432591 74225428 933665340 396177648 678258313 424912474 635519611 36192207 932784800 80970754 480981188 684166875 167240329 510819471 416890251 892430718 671666760 31211383 172298749 159412999 969082401 878864981 82727830 632151851 566101250 777182287 687353766 69062881 655221796 873441163 835911319 20852818 865183397 773813331 332220289 431110832 633651341 915389036 65547031 235543411 111752786 504847877 72566373 623353714 254614667 130614954 780495068 163639282 625657567 407009080 795555359 898995829 713764459 16833310 285926802 779524949 828647260 738608447 152674470 992340205 591738282 213056534 392313745 769580813 729780618 928780113 205469958 411587645 456006717 97701448 147815436 230365571 623268269 290846094 371368320 941772493 256330262 440623790 995837252 326674171 937758045 67089597 97056256 648882876 455563888 114761562 155010095 200672432 808192212 870436028 237175577 419380216 422913650 903975423 20282801 261938405 651162672 52087106 894863036 682115385 597685284 921642229 414900149 286561852 518525967 4841253 751201019 460614100 511438037 915037380 545623259 965843118 958060869 603280142 887271010 34788468 194115435 695610187 228219439 226265050 907108416 847282261 491721714 217575613 964969193 777408457 483731792 952022105 623032224 66267927 548263153 998342020 412243935 863713434 444668646 438728760 779277018 840681955 859422504 454717289 893075698 405317656 600316703 495465842 747886490 663428479 755938579 827176531 323604940 195546332 510899673 971816786 816112018 335568355 588127174 449396500 454719759 638981561 851244210 464755008 786793903 879161455 169598511 7883630 802279366 517856404 555519989 980049654 782115950 309082895 614444274 962772948 698134022 933002505 918195942 643343172 77814667 817906652 454209284 164432804 779918691 413458520 538642650 903837560 55337168 736823549 211077010 985484569 243792556 794996467 913204126 29650582 20047334 835499941 444832283 448716826 396585856 381952183 935255597 313630651 870256631 680611642 901620348 481262182 375562257 911354629 913449201 798442361 934589609 320250732 894931469 597502522 873415653 988806929 243558389 183008498 450721383 355922744 621323319 139858272 395531141 765929243 639239280 424784763 319196831 230941354 385810680 403611921 160262833 112821593 327101961 813594684 593510402 135648130 813947543 67189758 795575199 140708642 719345858 274777814 932617651 396337385 741082864 954712414 861533476 593354028 360888026 624140726 571059193 21990477 736583382 649852393 241135629 236991893 672064057 671940959 591405354 994002721 155696570 236516993 885731835 594618869 556869933 684189690 695394671 482497219 818580255 542795010 134422523 414795777 360841894 9357859 146051953 464811333 108739558 93092975 66995004 141922570 860614815 491606698 872138252 816497855 326571961 156430001 147318631 791166154 87505972 121504325 869277014 190541327 497321888 930535725 30697508 241160938 523893204 342714807 168446372 577302807 869894335 420016771 896566619 936400750 275071422 658684352 229186647 506476967 531090983 106586979 546262103 743737870 730898834 888781037 85199497 759254583 980795973 575702240 813110903 275614027 460299577 45666128 136733601 390566044 542080218 430370246 543418918 328930287 358194030 348100455 5873847 658782904 517723158 171429961 74702594 657470696 395874284 162209424 280491031 192008997 690574863 762930774 289990107 193808466 633245162 142745861 422202296 64638117 769107854 472448451 889666659 69684048 711278394 666295287 575159656 170514672 363505181 706819540 921416539 752818529 68556550 331379478 247162966 347033276 793609808 433195389 862563235 386095176 390586757 35799608 352451188 227852100 101762089 255482069 26354261 822251694 682064495 197320427 189490111 478180864 747281636 922939640 461576584 471729534 169788563 190729226 475231003 456858931 584519466 604164296 578255104 750876592 325171629 311799973 185847494 250259786 396568533 107760733 305146674 913102683 827037986 378328010 696804952 146224448 607251577 434234391 727950432 567321584 576683140 60862204 304626136 291715380 156715629 951714571 498088475 460462165 271576169 95769495 35590615 595686035 169493208 833090838 865861564 186944567 755095543 950273466 370061623 929362408 58407170 126792844 520619044 613987900 994750364 547489906 286239491 288229470 846185880 628049892 867775484 268110150 3826178 391533255 88501815 692509490 581018036 606470062 223430773 812827633 389836781 939503172 346687603 895543933 873037241 628022264 362956330 206322637 883927010 866044002 30790253 578126305 307332422 89489459 15808063 826202168 466329991 57531062 771700869 774110513 44929350 462336505 705204828 222151008 970609768 502430969 615856851 882744783 723162073 949823131 956648065 813127828 819687646 772794493 802212935 73026731 958902609 834208502 59482442 580289754 17348654 329068715 501919819 531746887 87935098 250641251 951459390 621362123 369692341 840616052 348341694 320784863 317326559 148083056 600635520 179194637 503838546 953573478 383373772 868217425 687920705 52064547 467774241 91585900 406184989 675831052 483089267 312982258 333505136 755570790 156599571 290677011 995609914 925511816 602100452 114003581 182509040 324773363 576125671 450783858 500759820 81827251 311180938 162332329 426223392 561859844 334006784 143083998 647245137 842868810 534962724 401411883 665795367 844880669 12509540 482629349 177734340 444897577 570082806 648155667 784730360 749434893 664786774 895838646 162839053 23203131 164132936 353010681 994658520 596094220 879247278 635714324 569378619 974067205 229566018 778879173 344932187 747863758 499147427 451175910 992918245 448011716 18405442 883078856 966953837 481641701 264456935 584134453 526350444 218309708 900833098 948972506 974597104 989902785 74017065 341632355 107983050 80079139 623500372 350792200 108577665 564159201 2572164 54392628 179592018 772351347 35373090 711493670 227794165 841737621 936015960 879337088 237774771 279902015 232647339 55658509 397439659 386143310 666795899 509430103 560235552 710090791 431967631 353485145 356108209 614531372 950391059 103700085 627154365 95905356 680262657 774882817 215217229 165969250 443061704 332541905 653970401 661917398 638566995 753589802 699984424 314327053 909288018 812313960 854125922 763429028 357434248 356126218 490243483 64063312 72730792 358638286 457639453 439936576 745650995 805251392 248599846 462150700 178343351 565251287 637920547 660657031 345979728 11618411 169632666 286347868 475472030 601372924 607258297 728464564 104199069 667453650 469999014 539215575 647654406 131524251 624739467 955843575 197223859 379383351 382503200 943155093 289366653 383978096 940459844 344371738 281765003 659596895 126113729 770882366 355309178 872193616 635089171 162830035 469057000 834526391 387298798 25808630 753318667 306311856 341149628 825974885 229310159 519140462 672252531 586665290 82478974 765441314 280227393 480553881 690625294 151784122 160786923 860526648 457568928 281588377 762685815 214338845 434381517 1873310 122802396 548278223 840658557 585054372 996916930 883908608 103109137 469326862 97999318 196181610 121852070 962451639 495584185 744830178 202804973 716986293 153622509 432988288 232888963 268132427 372280889 712132183 634600628 201286295 899558560 645815872 172747297 92103524 129687626 147182859 445709609 375348924 578077076 2709064 645731942 582961740 44308656 992760998 688704572 808926621 178222526 288606797 40978761 425670764 724542873 989748769 112894413 693013152 759687496 175315672 81833890 632740442 730818977 247081284 543272510 506985552 693266119 67943805 637075347 922006338 745610371 529867612 498316786 633158069 883856954 826102890 347663396 571977485 780558398 350808586 735246223 467889900 332666763 186357905 729685870 552291091 72621062 823859500 343596515 489643185 543965015 893535019 559893390 763405435 140477547 720452416 115734992 764871995 735522342 556607552 473200047 737050019 868365908 128143089 317658675 894657349 282894231 922329473 900897139 939911272 562023068 177940316 741407906 825942071 197483344 131871812 118633055 663962943 145774060 442446271 392510531 134517487 595309065 36546117 929527245 814984836 53075820 946364698 107181542 446081531 199415512 222303538 4540549 223140665 940290620 364284253 904684801 259017600 889288558 610082711 199906596 278290407 738186746 355275193 834734396 678979192 621849400 311207473 625562720 414678434 728444350 440458427 816804963 923474446 506431005 887730800 94559857 646358099 645888869 841010317 101784966 44356792 288575706 348378107 143422408 450166660 68923840 298684938 24877239 388123303 21364272 981425986 57898826 345964382 176915900 545865811 927042030 666582768 395486043 509553245 7205909 708194555 549522651 179374942 102836975 191922533 693710768 322687492 177502422 377797115 593539499 83129391 856001055 176948252 599764244 163760975 702707021 508927394 985474386 463164838 899993507 260202871 971367623 469663494 266696572 791059771 865092109 704447879 168673887 80660069 814372832 233122615 668577984 699857957 404623656 294929127 803633451 62328943 761225733 672553510 102784135 88312162 518673192 172418801 310050493 920234320 622613990 229240862 712468460 474635071 951383711 649480572 995319932 601916107 503472483 683028409 410956906 183298327 455640069 630535153 780083344 805477452 492133933 121798414 885360635 26208571 944299838 167611970 847078810 474859020 105849873 954314596 859934971 991980932 344313285 446517889 650433375 433286671 683267076 460287544 606106664 618787634 565697893 624414605 37932481 433078776 565372991 479152028 852717604 815184090 914269099 46921484 661141983 817453873 487057393 775082469 8295071 474532674 165671709 393938597 899295355 73857278 819754235 485356704 207357755 857889845 25647248 170827394 424135046 672419945 870235590 796818632 985416947 112829136 134012689 368468148 286341254 786761512 335809273 350308614 561966610 701273683 290635390 46636243 376032863 245966957 287011227 331669379 17350060 811212366 483219502 391380693 820722674 176821165 900799690 563449215 924715143 534203788 514475362 901979850 173372574 236820743 471787563 478132044 776808153 715358548 241712109 605758801 437242103 347156734 52851212 912233001 661599950 397815991 92923099 936272063 687187453 646370723 865825046 457572796 602283820 523480336 81162391 367296900 718454233 605154365 185606974 349588034 783654336 319908816 842800636 354985084 849035429 294169638 208286424 488476651 485510132 626937241 939337473 855920182 626690464 950583494 642495234 383735597 320607919 553143289 201732275 717860030 463231260 520977484 287447289 108632510 38836235 556669404 94871747 240589576 513313063 935527202 363856365 584808358 566265640 710705977 996155983 59347022 747432699 827894364 674191066 449946730 71591668 356504964 637199516 72143356 990553711 5986297 452262353 814199138 640669467 559915894 119797 877486038 739126922 290131915 361488275 65840825 99399028 44769552 526118653 546709354 586067400 800712651 832143410 170215643 78816049 137844838 569565482 976220879 621227510 208878250 250427565 66479711 497727525 291739033 566077356 292881725 271266707 954189638 645808130 810168633 239723745 112803527 784984858 624734347 518977379 992427714 800704758 177641564 948978658 911412088 409416039 392852675 273210724 774356510 442135173 393239058 632737552 164675559 780965775 556445662 706916605 696781223 661872261 472990932 609012564 558468632 857927851 923039462 467025708 547172842 224188424 117931683 744543517 209971867 790502399 730581585 845304298 994905489 508963764 659151360 790405228 140254771 9193689 815326976 932855367 596657505 666363423 645246996 253128311 588007216 274999280 565495645 236478194 872487156 912608763 812902035 257737419 857392523 747257037 741979293 421938730 965921222 243220544 90755101 93062701 692453106 621848584 702268144 289653688 640614946 463078752 73771418 411492094 723214502 131645274 510894904 57330407 467133508 135120720 801036662 361467133 55621755 711065696 810561492 19220149 585238261 337126482 675899990 511087628 6921994 196670630 998564429 225433643 464100317 67872968 984905679 468307633 996409821 366217771 284079524 78918475 467711166 643963624 990313441 676204018 804349480 669044023 105590158 284277863 845332611 190664470 528829897 362331583 294154691 159214982 987606612 999609302 225208394 931197605 330056418 197907105 374240752 513111003 82250253 497970316 276329213 702694752 935010463 918306941 982756198 757546335 484263991 625504265 852569019 585440754 407282617 961657117 904927511 876562228 957977148 432237747 72084415 227131423 533785017 839163994 702448358 686182275 981331437 898634772 438156958 113505853 713916283 522534097 652928515 810439527 260143374 943920533 674184050 484946508 448495343 207498811 536128969 479145036 534491352 933095122 53898466 712451090 221656684 24574441 703925628 649150440 456387133 123440119 65650584 563235775 450952028 967893549 594973253 419056159 229765383 58124416 599723836 525122477 644658024 940036777 442586304 760338425 632632014 807079850 915325228 644169491 730991663 274267578 385144665 779057459 271467974 289773707 93633352 491493296 52924669 242576813 405483291 91746064 218252463 184595529 456210426 173668554 842520210 497807995 681414433 945416236 516141233 694900344 4479906 700140680 932072574 197194577 279391520 879899656 711268211 488276682 277361187 438230087 698016994 587524214 181689118 6470585 91559674 713782495 281192045 757022145 324900598 616513968 556455780 834492635 78343311 194401081 297901834 52215399 648194544 83989256 667918067 422979262 313218461 229911887 858195037 339612953 531171776 664771302 379448324 867528327 316580567 473665355 536441577 443821728 666150038 526162946 432716591 118318452 286414527 811898374 443799531 31025256 618948666 795202327 612548749 919381576 38092942 421286897 983401275 548111995 673705326 852747099 741650183 739086837 599412062 959158378 942703434 831150876 787795475 184301927 741372678 696828658 524913250 905421896 508749384 565697361 45119484 68607352 33347131 340894153 6012222 955322281 157488302 912980380 867251196 430614954 967982253 988871009 132466610 445333198 811657428 330530142 43586021 790207733 770026661 295932446 496796533 821879320 755120237 63712483 68548977 260760613 732820549 423327132 485004458 254018070 44127212 595012430 198295202 70740235 177587777 695272297 995537078 208502085 394676090 324189082 357031797 284506182 75297585 928346256 13313822 188806268 316016873 284192779 690003514 55724055 783490960 162548637 950567740 999558855 597538300 424944177 398240255 278896419 162787571 608988743 4542847 768572256 179981612 860658412 324847434 515416588 331731619 712831575 8098335 773345244 630685083 895751614 177170798 314446725 39765977 535092968 604954436 682396909 792634227 849626368 204698976 393067522 39246272 98995478 88139446 323811741 683189402 71646559 918538861 443743821 553512521 362695636 532976411 862133063 257565741 995094753 251905534 958812157 425398389 836754559 734207944 402747955 297543525 927659978 906183209 862073336 859156101 762833561 168843275 49158119 876412666 857890096 227809985 638538206 120784654 597437614 463605733 906337857 538881489 434967435 999673969 968059430 112681783 943407038 435361609 303228891 692237482 531369828 282048572 638133067 297468622 928783015 341484492 391718986 967198948 397328619 302362939 297192138 955345215 101310098 67733952 85244028 891900216 466493374 927312109 519907040 853056709 957640064 41458422 761684426 989046483 958080108 66585186 172975777 954520041 983278360 550071547 568815159 932851733 683609942 863882138 628609057 797176225 215134173 193303578 370703942 431894665 16146037 446969924 954841759 95494102 651140302 96659770 291682927 97006919 427903925 966763243 263762000 849943917 279318789 581050718 353344426 484943896 441070215 876242331 981160681 883632507 922437522 125397299 91505963 979603631 994915173 321904152 856507533 490466498 282939412 234140934 301836820 970449080 555992138 752377734 20793206 642523418 972298131 132219526 396680219 573912324 333737001 414381985 24608450 733333020 230254590 117747775 920145657 818214724 456049704 959364435 500487629 650847290 572499689 456395196 220887830 217198503 574951574 266338293 408863728 971161456 492924277 128626798 440002919 481505806 761207599 381640153 589378862 613892693 258446073 412926441 565437601 142971129 659890123 155708639 688900831 752104734 864348377 208933654 514237244 709431178 523675487 617854408 759329157 297992781 685514791 740258132 47101805 324656531 442814635 426414944 819692522 966352572 635942715 572552879 511270433 449432089 207590069 671374234 761375370 391261212 100737556 218986329 643328283 919774397 396160031 84808713 424825853 489117165 394477619 449422076 176609406 368552447 482672662 833950787 904386966 697133151 340658616 876589747 943359351 60426534 934383449 655985645 106244418 585471069 989202634 545436725 539059204 277482517 983837643 241209496 730172828 115043258 667476671 860873410 801380 276108353 649900866 35287395 400202026 542166032 34764976 525937771 185371405 418753024 117120897 660807233 913692221 582247474 511918372 185934142 542739545 801571163 733158461 140786697 382415444 279699796 745562723 380405547 247791897 639530017 641638620 214976480 767480706 634980171 664382023 790639402 16640992 634166538 870001290 188479218 554184270 631498768 450175487 138717415 818008920 943792715 397715631 188028209 168375836 262561230 789518948 448209473 740022126 475443925 479508850 874004999 932812752 459019884 704652212 940522251 410714662 543026146 388059062 546292184 87338354 460922677 386127356 692422376 523743756 189395780 158577560 270348381 110810045 889424687 847740887 272270486 100748731 761446389 556473231 431681701 760593320 779270119 769055981 216082685 192833115 241834249 368965222 420460862 663119486 293086413 798407986 759408984 18934271 969246038 135666211 816467807 298648704 618568804 183520291 202031139 904888124 634704578 383280524 925798621 746206326 213731868 53967703 210962181 717056348 654051027 958141119 524524706 112020824 788122202 177756185 568230966 361321624 88030893 49399424 867969148 265191507 104441532 517394564 499797696 620183598 875846336 108490326 513027568 164400436 855250093 811917433 36050037 779873127 495438983 31912094 475007097 717227165 804377196 608107457 130369612 442268567 647936480 653468861 811844359 304093721 266514610 121777945 553443936 359200636 140093362 898620345 183641493 939884600 510958362 971410442 562245066 253584699 414502096 12799267 515072338 536679920 437802035 374975896 428603189 820794681 510677626 899836942 768612882 285754525 914996424 934961149 683629172 590924243 990304535 919472513 183878211 820029966 950333401 437079969 465046512 31173673 827052429 69158138 131444729 29691489 607784547 659921702 539670832 193710348 34014502 364202989 793929875 70688398 214730609 267238943 276228337 881471418 65874820 358071571 677000923 71088106 14428761 688123989 65893664 334147834 108521035 305871573 369803612 21925578 226795194 276700632 708863017 197376450 402293953 106390983 389158923 782077699 33294240 957457173 467021770 415183778 183372029 707470448 327653762 201930291 501946162 39940799 419992838 914238471 252055055 129276760 280623862 577823574 403657523 174489728 408160572 629470937 829693019 123112303 545925050 444929063 262267503 313941140 218754555 295918504 738886504 379153690 8386548 143503704 725308502 519746195 313292199 488044143 721644185 903152955 560426499 284150803 830487274 825227019 314140510 112321840 853868171 765571316 86941098 490678077 386605967 256307938 86610829 177934042 537181092 195370242 10504310 594877728 860520575 625015262 102546071 332145143 42071490 827759947 459015799 100411304 117715943 951399090 602147972 74258171 313206821 805886146 803664234 277037100 595327973 114022293 474952133 93154788 384489515 554972086 160425377 184379712 494524770 92261544 676404987 916700357 711424050 167966176 165789544 506232013 161541573 135880516 31829289 723780032 415522429 758575447 178246442 581548510 865522346 502556715 767649523 996790689 790872756 102112564 180621346 402599518 718988807 419144890 731052754 416808963 635220031 371757400 977471797 26864199 87330192 434708411 103940707 683947651 651746897 30731335 640047559 874269346 187647922 6069883 303184652 902560331 684056376 927022073 800178134 242859679 751125026 282856551 705016549 277239215 507162181 2384572 680089520 946796764 11977361 385341967 75280751 964509012 74564732 872827304 898850790 510701648 102528626 224084201 397912184 938752742 962798615 184425868 843513561 176922302 10567987 138756020 810202443 546174074 698565014 647520156 288769823 765411065 402802696 496182366 960687353 636634563 698388507 601341692 949462977 923918211 188900763 551654617 782014876 946147993 538559593 883500160 68420530 566850464 192544004 415920688 269327519 164107094 30591415 341029730 487931551 116918620 417500268 653335864 441100293 333734778 363104387 304100949 530727339 98680488 25795498 137388492 938001349 385306111 987360082 853264425 287813014 84998699 605245879 662378536 841165800 369740825 202158468 849820879 712220229 368700263 46883974 845704025 907467875 588464282 717340671 670893768 84146399 64111916 989266583 1235740 598597839 479073335 890856459 586161614 742285887 728712208 989301402 282967188 371881204 696817634 269324279 655176111 757744872 61603560 14462472 183362655 949444073 492643339 630166612 110858761 759464253 446804766 260959488 897249661 621714463 308627146 603475428 942086057 129518570 866512496 29180964 517344856 314001506 883037525 981794148 883967361 537331166 678447384 105015625 964428303 644540790 103216992 608280025 93934509 83749274 753716661 817712687 298073243 809508224 969120300 984564221 858946085 71272604 76281945 678965526 748055457 841942955 416727729 371771816 949865380 101881892 354081775 768244861 19128514 949289685 372766830 673475068 594991889 308719737 425994330 866766633 784807683 570048118 647133625 283661202 562137011 482607145 877732391 46054574 179955006 436712805 292076414 656331037 685794276 236884203 465776155 6785790 418875265 53558392 704343570 232997897 75005661 895431693 263253449 547882575 400344897 731830004 673701734 422393904 787710428 760483128 104777183 151338677 363649965 714524805 988556299 392925959 940238224 458462783 690592242 514564651 929343707 97492210 464389495 594235494 910245073 935458665 874946560 398610800 770754247 995036034 387887963 57410294 223845946 771204786 479652165 506464761 639328602 92365430 903416229 673032470 110135111 964094230 831470114 768642184 12988086 246124706 320762929 816821473 68531259 643100069 394422081 117565091 242569325 859420632 425577613 36862574 750024995 660587786 430127910 979491917 450208858 15842071 23040306 609863807 829726473 97034318 171704908 919065963 955152117 177647544 565763403 682825013 426728743 309316651 472460992 722606035 372254371 682140344 35926948 198680669 812222787 182516502 867331197 37444522 104959509 563440122 11828397 994144772 580976965 998307228 530563362 678471394 264226551 508575248 432395385 565227025 422493375 144075473 644785217 80997507 241254754 777283432 586086898 369051084 275870952 540949560 140045506 388579950 144129943 655199366 806784479 214000695 135666021 504975784 682594908 159248028 927953588 80217169 370880095 535262331 519902825 116018333 33517634 762450749 790927394 728405241 906157723 110354780 613250163 16076981 337049289 86260532 334011751 672288399 788362056 263965230 705680735 83461778 465628182 159261044 684907303 556571046 141677971 667968317 499627016 452170615 278351151 12998068 876889113 243983356 176209980 890108201 177673173 91380951 670829566 203513765 500669326 383566483 846540614 625552893 59475653 266593889 542040656 960735747 167126656 594520223 231354489 842746925 744303368 365841936 557133347 304958470 842208902 323738231 930684515 927954789 458436271 651572528 947817876 872116976 64850352 602024258 215013308 362946771 641180306 839305772 717777478 228787508 609135713 689607091 367109603 563148465 658030439 438436246 802040929 228697544 961505321 364650111 272414823 431332738 6214137 275994159 259454841 789019814 875074862 352503645 596826513 618424014 623651480 385940869 340652112 816674454 584651663 630260462 326884250 551670133 193545848 982161172 992190351 486653021 112931025 521123660 274984838 348694905 420200256 306923973 106288805 993619537 766830665 516734106 468324578 271275225 890150297 171121871 39380359 209930186 456047211 775218340 779509827 381539814 308244459 893249489 420032156 302207748 107053676 258024985 277528500 539497880 99185134 549851222 736087148 330624993 767025162 357276766 545207471 345678113 323228725 469274008 51937773 832533533 191840681 272220582 89941486 641197532 913604836 327549610 634788719 912231661 546472709 376122036 7525506 819650416 686949506 953486828 21138647 788506321 56483625 769797987 207272830 692619614 279005793 666320199 328371599 886673617 368398004 700199176 363549311 674203379 940885994 718848340 367956695 281173149 606692462 66982984 481114456 719045866 236620261 691197085 469959668 728049785 195751043 512159554 630290774 704725743 304828247 225929973 290396148 581428280 515434402 333654881 496477195 368965531 195036905 686572990 555884416 671616396 338186742 434402611 780968397 768381984 398467171 375832834 315031676 332614313 812797256 731744701 496233559 806963112 698522085 37870653 816144899 611312392 895723780 786007778 470870752 50344155 369600327 364089747 780782732 452436541 758151929 482740320 677553204 949480572 116728390 47501523 322215002 380220583 708641791 863669953 667416315 441561302 65120497 574149130 228331230 692557565 148846010 590080134 40274368 983451442 100052746 904481775 691799667 61024606 446526471 210004476 21045904 98344969 115417037 318603638 968394145 365047854 414777645 271376933 999141018 622883950 463856423 924764480 422474016 602531765 530036929 327137890 280553411 697808503 452503936 914156492 656909331 486828182 242666976 286459046 76015001 547392146 574373488 936316784 211857229 409571220 866975151 788306774 420796487 217166608 433697923 288730060 308278587 973612276 139705324 797099535 565698850 338470328 485966960 209221139 562676143 501516712 171035025 871051386 753802697 74101830 305243779 387660162 120112929 620851781 79713572 939343486 580662838 730818616 826465571 429165405 259410262 525130765 272704515 487563793 621168543 202458852 529017446 126582194 256919412 533721876 373740585 343433306 312892653 193301358 790688784 827402001 874365920 520219202 596866745 541049822 848489938 19321240 651203031 155279741 276328014 43156400 870876478 41624146 308218055 54652955 36588345 514278722 422638411 744729623 546537921 633033578 59808061 961048276 182951229 457784126 125860785 560843373 412819552 400665566 924805348 682113644 624981850 609438941 30311571 383261533 122119826 687553634 376509422 459264719 625057278 405064727 891988466 419203172 422740122 126238327 916543765 982189080 759552345 783995935 161802869 566441390 50747137 739532357 535371596 419010258 698070529 810510927 539168456 501788932 862249371 436050910 600874356 524194834 791834314 646648983 935398287 894377637 666851727 677155010 230241685 950562486 972673996 500236850 813108707 341039851 288918788 893446376 173834214 936416510 795079640 772641922 535558941 495319694 905339897 983462411 545614616 543826084 320022946 360689686 609125665 543325557 136275086 279888492 148739993 780081530 516203044 373406878 919814849 302079853 665148584 590249807 328811927 166035216 533973443 526012407 696101642 347914666 932557967 972155389 769437675 967392674 895261668 87844733 686395239 763998564 508234485 45146561 485629888 310544987 520497184 902480631 916756010 888949886 354563112 47458731 915991525 105036971 629504281 359422490 415977853 632349659 548170939 492519713 867010871 201172879 149212355 961233876 230592177 97506308 177463463 798108078 922533799 161290035 63364741 982592322 530654763 452006671 146144164 511904055 476558942 936863547 144219129 806704655 152190690 299242097 437583090 468270352 450238938 809725346 1695878 857617789 266107702 759840427 959672610 298679799 150315286 324084680 546107787 226415146 734590795 665421467 465011500 838371117 780610881 476805874 998103594 959138579 884525417 993400984 341874111 489077651 481589543 300352226 477284708 527186842 241951803 899386011 644262431 405524029 335414032 95270965 988686580 497918609 459689484 552626731 367728574 901230780 456790124 490039428 316087040 834865776 193053430 314829472 543644754 574568783 64518326 555831919 823049386 85581157 473153442 494713065 591844536 952283483 32719131 654273491 718001832 21995665 671211601 508059002 115803967 363289580 840533352 785813133 726843817 278576629 372390541 450277409 126471982 759633285 818961428 779225739 120828352 763407741 324279315 532844224 439587166 242342142 831375570 577595481 954338351 756293606 136626516 768170348 162356607 541863885 247225444 747850016 253045574 292919426 113795055 3578215 429875113 480539256 642667705 487072889 679516697 209920189 72995244 403731660 750800933 303622540 257400040 586886319 841267881 41608763 492273933 91590067 941276696 261910535 793439829 323359683 823692770 296727243 721581254 661829841 842791325 422625903 95054773 53572220 990781970 325668110 8471982 121876692 505583137 350764939 459353678 9654319 406135222 286917737 376586446 742913721 845375867 13029276 591345478 826530752 519614371 921475126 515028765 528168537 62357406 569380117 223881544 724903892 942748310 515912764 124085412 603121397 21997332 19933616 209311866 219009703 503259507 231408298 955726090 934813406 665624027 614308000 805856200 544634102 323909029 906708708 204606981 792997850 529809061 689276851 366254275 954782170 762936633 942261437 865920229 49384150 133295348 910447406 82911270 498672025 180775480 688286133 858198311 822514847 599489769 738251209 68471338 65082751 552993197 129304667 443138570 523401943 762955173 825307986 188474145 768606685 271535195 455306588 150160154 334536688 215384348 730178681 430822904 227530639 484579535 822632655 154903727 368882628 165693123 532240818 55089067 242150606 4714565 478823899 847868638 881435983 193704386 317558158 729112995 252077978 603145881 914417634 234596430 610498944 153166067 257004532 371345826 39864768 908380590 609446602 57707800 382520350 572775381 11043990 704293067 778534079 325967226 64116145 789972284 807225375 800999503 957566933 758688550 871311119 47590586 940720421 165772469 515463654 686090361 720667777 486783810 25023979 184868382 893641733 758467157 827038741 997376677 722943627 202511879 212408323 860656345 204607422 947390709 59829594 55570756 80359440 45791172 370515627 674560928 672248217 408856757 88485101 889969356 354413572 530288108 883019711 278608743 596548791 49965958 751340005 279934648 917104200 844858165 577763545 545233654 24394620 821832192 566392971 906975428 304754720 580044388 799593525 985161800 545722176 37359117 628381517 788818284 432465795 216000136 448395102 314495949 441181146 176234844 699884821 754620909 183133040 606516566 172438230 414769953 554761343 968733896 306205921 582738281 305971723 303658923 143197153 481871693 859674755 489779393 532692510 384296688 48217184 438618345 982847166 702524346 749383070 263285101 888018624 413705547 665854043 385941022 34303350 689455562 903493391 990844180 894505608 750931311 407073792 928993944 620859057 567825756 103306491 435566350 432381289 797219553 677774507 752478041 190976245 58537273 130497386 753625085 116759139 63645880 479181845 471046170 740516897 786856693 726824358 80069458 731852977 299993275 966251393 11234789 133347783 157822487 891866175 442420900 905597979 304986863 399072273 547735772 805425932 595906289 531374980 219185131 564808856 729878822 349784767 464488585 833714817 594520209 969307383 328353023 762508534 904131660 170354212 648608380 979904104 383404528 196085097 529954375 801043991 166271284 831822327 650155359 582533289 684380738 517706703 116634622 532338945 403908070 615744805 862632748 570071402 697545320 329281864 144005752 358739441 787242534 136427706 918929176 715692915 233318483 792655403 332975620 958725532 662931605 232442582 501265330 83940690 817705427 254128682 199199029 694005029 1837341 79616647 118349524 888701792 396088924 786167207 888037007 624013406 446142590 25672165 653806999 899925639 506815476 825899611 476746510 191159520 76182261 989444979 948193667 867541614 504902393 147525920 621255409 651216578 960735701 543678076 308430226 5996513 35789690 540490807 463343876 259398524 657438697 561294818 94019681 980274783 925426531 883588401 538931758 534122991 733732976 893292592 163949734 194443067 894632814 165501893 970692671 258025765 686699164 166528829 173447727 964738034 863744676 424821794 533428310 136948418 28551373 2198670 685200344 154813316 117513332 889452362 392916619 407651293 731698732 735664098 188947384 88924117 807849035 48316576 988188892 61148537 233630818 10055320 139991274 948127287 670177394 62376482 429966743 224384082 288681618 543818782 429792114 659802150 471637213 626466556 541273065 617039395 493919239 336183200 343162818 194439800 380420422 711994980 852029623 434577099 22266193 177422948 518098675 370094553 723473025 765408834 938355202 733336767 715970017 446256882 29688108 352316142 479335471 242259003 379324696 638408595 587093739 622827895 205712726 656455755 697670791 224097959 615962788 115059808 487539935 412712594 910589198 401360431 987358883 918416905 865454321 670186806 100891474 735470256 441720943 621323980 868145654 983778848 506691297 911443818 855974435 329121401 356678512 306561881 736784956 444047080 878886784 333133319 41192479 310386573 328732516 882397305 377531348 469923075 611360549 803821301 316389223 791537215 75005349 622704382 811580486 507850252 944792372 935668415 853150420 103113969 376527399 688325837 388859361 611562564 282441750 958878985 277599216 853376740 905687067 261070494 237783871 33438165 641882366 528603340 649016561 917385600 54692527 787687332 460700851 65208022 542392899 399356705 495486044 375821305 815313892 849457346 499337661 417304450 857378893 277240907 32017864 233075715 210414158 362592267 480878214 785203870 440145375 44726232 967232464 2438380 126181565 986451259 433948501 406069071 178945702 269201201 248792231 935691851 343614332 968498321 533716626 846351704 864368581 662640727 338031323 764437489 853109914 629103448 260746601 579857592 859155481 770667153 189692613 345743760 231444280 424407935 482937398 438213199 444171445 586638068 949416249 554406698 219740829 861550329 172763542 994952805 688346574 304516984 940806294 830330824 342994573 989276519 461462841 291783413 776957597 436281764 794890626 743055360 191040810 218814663 489408041 413415706 786800480 501937954 89305598 937732644 404315880 708382000 898582891 787915450 899322389 848300225 407874887 415599900 5313414 158314785 50281040 608068804 695783295 547939999 122611311 321606786 516419388 915889915 423403946 240831520 345656212 827176957 267509411 429096995 479961065 684088380 602756717 965388187 263618597 456591662 671498053 946923328 477896633 807010882 729077678 141456806 532454273 670349426 32162018 788731880 856579667 991575804 842864798 943202843 861358688 58688953 91960083 966277333 831869340 58605267 171548356 411258981 347559746 666614370 178866118 780713268 135912162 316104306 455104590 77229269 722657578 94330101 842778573 202311132 706355236 117341796 329450929 170081138 943096768 883376012 870030443 568590480 98393603 777748069 39633413 747288772 502345315 25410247 793102235 302566844 12821876 754880816 383879021 292863093 906330380 359667111 849110825 585039125 204778992 556925234 935194019 797846526 579329323 419147617 258654500 259848209 429694737 435998215 632433081 854671005 94309899 316281681 832117923 730056602 134709349 462559664 326690854 1158953 868939852 318542460 499698451 502913954 1511706 678733064 980711265 826748350 291253114 311828184 580054143 474328265 605515820 594501946 472743210 985273223 166370164 545686606 354969698 685658821 849701207 178101523 548424235 575093609 132507284 965783038 360383198 178567126 269717901 532782697 769130971 143437204 23663502 281679324 326150731 713793211 267687458 828147159 677774446 642933142 195548722 102546255 55185393 706567310 122711589 233136502 977181844 782560363 27245262 890624066 765767654 918433577 495215557 192984646 508962703 666188919 444234463 57773989 373281300 991757926 878922409 335478224 732350135 110946183 590611861 161707899 594994308 831976956 707868730 962683346 121179782 351953981 52843973 662302502 170687652 960425951 640559212 881982080 567913155 131312025 148677982 404675067 500357741 300973936 332093494 669277625 933791064 945295526 691769215 392687134 66599960 776010974 992715015 680998422 714773154 504393539 664928016 86235061 25770536 990725788 83305366 775814300 220463717 308407224 570994259 531142340 986992332 263755490 208650897 224006675 876218153 708393115 610923142 709327560 379965409 778469720 401691543 255319625 36706488 246048159 562368944 304054103 278826696 260067875 202655546 550874122 490781883 397268995 683069148 449140487 377162947 539403647 600747284 431719809 848405165 798162560 949526160 866833956 541908321 39398575 89394033 669293845 124564337 3338540 464491223 391740187 294182817 363300245 309138196 666289663 358527325 112760981 497336299 942575087 284011992 111400527 213081805 716648872 739936503 893068048 789343181 174043644 328847276 827802223 439679762 160848270 702661793 191988362 420912817 878936560 393758392 351265659 10209765 382724627 810857181 160247545 854309326 77214075 515472769 879452936 32399829 670108710 958080243 316351155 863370300 97007059 376327500 472542253 876946985 594393578 726133365 659996737 264445299 450092357 221970516 362605149 829144672 294015046 484598616 854607604 376052462 8143565 732450701 788477488 509253351 643158607 283694282 384033543 900633960 263985111 888140313 331623255 312855314 392585052 880594022 465179276 10993176 219252790 934203787 603341187 613179023 556352810 507453070 945464668 487193627 117735157 870248879 757479117 509767290 447812042 430636491 896220808 801644100 976866211 158443204 722138991 765401405 914849426 582149961 217577056 294556434 84897350 671053324 524504145 995478764 100174005 476440541 263765645 311396449 843525042 820546864 446663243 171189934 983665603 244882077 36068228 940392378 877008513 516759760 916903779 715720079 296102852 948600512 245895829 540142801 552119359 351160248 526311649 105880252 325695456 431492377 417170415 38220226 897460092 927359632 437734664 94197165 842162944 69080118 30644114 463962808 83136671 214330887 209421669 750063139 982405710 823277157 918405588 948694862 210528926 844145746 130911297 536600780 871883177 266364580 172767606 212026034 534292212 787300968 724815624 489801736 545629847 169608666 770479110 718262654 623087927 321544145 736792628 475799612 749783713 659463831 556060028 221508831 901260371 976827104 929823381 669941609 826228770 881012006 470901355 151969500 900903343 840773204 430487825 834722953 227101747 612104703 245525947 636339122 938596221 941381210 169280517 51072853 834063727 227803457 505700086 806639309 875474078 535337294 162891238 964974242 742198679 632050774 549291884 806589370 442749191 98778794 635439844 800674494 337551778 677667014 876910924 198181915 438522115 667564857 184015135 164699870 113791924 930300485 89827689 76517964 246995470 493234002 976470938 748069085 774455178 897317740 278287527 180993168 104493050 653111637 816093232 861248853 254585185 723745167 23039824 977687662 186605285 182299605 667712294 152269795 427458985 195587581 602692348 733138847 179006776 269518090 284444663 506911856 690219564 533224286 650238305 571150328 276163753 870896633 830527871 90304134 485019286 667216138 190823920 297626344 757112866 83677685 693623567 96022995 947934315 781657915 588689164 222708854 380312730 22410483 591402752 447269580 967589467 832381570 105953740 902937489 275619356 992232226 212375575 478178201 84573604 802033263 105973723 250441713 682093971 405752179 750922993 623604231 370887935 3135706 931207983 457150467 387680207 245897675 950034900 169287456 811540966 882686254 89818295 866627097 719602982 712406467 679702471 179956996 772136304 675792609 395721349 455431470 732462338 75820391 80559026 715133689 630391568 269871481 579227642 224058365 354803285 183731037 756129861 162705211 879988856 236015067 643213320 979323464 729185299 2600483 284522451 498703722 457892158 707795635 750771749 204067141 498641886 355696962 641427591 91050859 623391868 724637167 391243292 900260235 932235486 601285609 508126176 603702567 183673051 311766010 746765361 934486123 923209597 320488325 716045609 710080531 491993623 534340930 467057194 528157680 32809057 858718081 180165813 622654775 522190232 758510844 190341051 6487227 114145687 282359772 651478162 140266742 84244793 960580346 420890110 958357736 384366047 51172789 72612292 104577215 552947861 140644453 896336442 522053415 357622877 644872937 912818486 402507177 801073891 557754053 482755106 343256907 393315054 835917086 817441003 88997326 787710715 292339050 247688548 690625194 733273769 788393533 24454199 283090859 153088024 906638593 775057112 706460357 358169044 413000548 611930776 316308044 306673439 802182322 603103822 862701673 922170606 516240691 602790709 285235620 231975622 802621576 661094872 506607308 478816828 714438520 204793259 333216985 564745430 441024165 401330324 828040259 924594299 18355816 627371441 528305952 454289245 208751343 371736161 427508228 290788501 206708233 578959666 596017978 240906890 512737287 575129358 576854830 20196075 980362035 68292225 389037681 735109632 214491795 780303908 273987867 319571734 805017530 398439377 27637180 584169198 402852857 850061759 346751272 607641828 21017175 597342823 259419526 882952055 1082155 584664790 744133911 527153841 490418591 61019477 349689105 973823182 154228984 531632770 603042146 310499822 765640742 422874784 375544919 307775726 101535759 710057409 946008665 326875614 116873537 99876899 886328128 954270284 931441261 361782204 242024991 69757775 294019718 337015890 254712391 895026445 871775940 15200619 155531113 230618050 330961245 864333151 531842736 488772212 291500385 508686676 32487562 465829860 249078535 427806887 368719588 392590572 756286529 550915487 174203085 446203758 125604278 198717423 519646182 310563500 149222060 100106396 785020159 250567916 509645922 648288440 508527841 706265504 40085967 13863953 630970722 643627644 54839356 968847584 18103047 610884252 358101595 386715864 529313627 621562656 917896252 908555556 480134856 411399067 370473155 616933428 578381049 84645522 545267155 692978195 497902233 420445688 273436572 453370607 563750674 748666864 616201776 107551636 403326344 387633575 193839609 560078213 372779889 433424213 531819255 429505768 520909603 201967658 575587596 114627273 579087007 469741575 617618801 428548932 756138411 261567158 274024830 662941326 262692208 634704659 303673303 938064119 14627088 79824962 589965858 749722826 475476123 390168690 551613231 783601757 426529458 580386327 682529497 241181327 232144804 957677348 326693476 947840360 112117727 514226644 788253896 255923358 378753244 661927684 374477347 141671199 507960195 904469477 629946888 559832576 732519266 91428971 114144325 343427035 618322419 88956921 607470699 344573363 562979929 540753357 371283763 977076526 914261317 75794008 317847295 14422869 170803006 674017897 141098348 90209440 762964697 390511255 176489791 310002945 598451715 280983278 907000023 130077290 352129890 643357179 945808344 693276557 702223809 341094565 258588736 398487296 457474621 557561542 427389772 664937685 157286914 657832999 160163969 685784444 729480841 508021946 931750123 438494195 271930043 951493096 979298918 809269056 908154863 908987718 722214859 768749050 808614418 553250842 74898740 632845346 364853591 599365648 376421531 72192164 101251579 571735054 444267291 182270816 994621366 329193516 966631196 163570714 476747396 235491114 491530185 108858795 260618526 668889892 899655857 361828280 15639720 772219820 992944954 405265719 193283467 875070726 284240044 650024369 683374392 88177247 904162014 875641311 229274155 59914297 959818385 404092875 679731606 241428956 564567361 832992202 267268095 993400102 168354036 123085878 855566325 939431761 903496634 360700863 466069256 773913066 340516295 559586631 288258847 167135623 850705439 989033889 345651985 944846781 968328387 53435733 874413915 935925624 198022277 878166035 273048289 991299881 267148102 76604742 265573082 668527326 54827162 326071336 83898474 982550365 596792819 73101216 772381131 698028434 210338790 750989820 580460596 612419006 867292078 314707892 231854429 448320167 742740308 757891457 657835476 979654250 130657609 783114912 58149097 463230736 695236290 449287923 648908058 443524746 852210057 935473298 912962282 592055034 741830475 834323530 462617255 425891681 710604179 719736817 644477157 675959830 628506778 830594736 942995818 1548128 573255124 167561692 233780424 655325421 219415109 854192010 565763219 393330273 508271704 480854268 375346439 453029255 496985242 147518817 131666653 30910380 975318013 43959292 548035844 213168598 926841332 471678056 111555329 326954075 155785969 758072275 843062029 124426155 242168117 112842294 560068657 469867714 677299543 776272897 617870909 180084361 497760058 137428053 410327657 346789968 574689688 857858918 489844279 760074704 190832537 352354983 337337879 769093014 29488908 425193454 416210226 245596538 178501073 497546356 152370169 135898061 812485747 809005846 233354818 409779922 319480841 694712360 449135100 743499787 454463043 57176561 340396426 779402815 383111854 165825341 703118501 390953370 43022408 636275003 574125115 242048525 955209738 523112334 370309552 525487732 84639364 917199559 527577352 283323858 145208121 467575563 641162870 541716587 827425013 531411870 790396136 705165391 599376953 593201888 592753771 412053799 294414079 346585415 252736077 89760925 286319873 476711180 643144734 581719858 716882135 34432713 583683967 823055030 164847187 719350132 294813107 64698079 736067195 177314729 994878559 46981478 523553546 109917423 509053202 560999263 264726424 683763268 543881360 978902184 270635711 601535228 678836542 396577741 125685918 275733633 67211680 873292356 265160163 258955812 539685437 410493998 261904432 471580045 483845277 42066396 188472405 833965127 679162627 950146160 843986244 669727920 336455649 967854779 957335560 445126671 995643314 687634846 896866106 669390851 386781496 459063391 951597220 702500118 661845889 62954433 199466909 119241781 466928049 65781172 44034905 693195997 928276068 355793439 663715734 153537540 498160640 506274365 831338231 998045513 831206888 450596909 823792632 690022320 585160503 861497247 154034896 534294398 969109194 569522602 14607180 765513317 442760358 852156078 973228161 543527529 457210538 216828291 408820948 94704031 186855265 498132766 449392274 943219506 949412446 397050105 708571142 625379470 697699362 986805686 616249255 743438056 783508728 753986857 289796359 604404298 576690848 878856888 263191239 285871421 882321880 668605435 252629623 866575910 343606615 542167598 190938692 126004404 63433239 572676773 454119152 409396082 187520759 444102462 195899383 12367899 490176162 750081159 130224953 522654378 302343954 313870222 263410157 159625087 908331469 823645947 537605188 996515085 988025953 959856851 412844168 485486347 14108524 911162964 138488063 226447731 446821325 436944760 857918059 504825135 234258403 377961735 152397942 538042920 210035234 165559219 916950084 818189542 348804578 490249944 685749347 574616127 229532767 232245281 610474926 585098388 723037213 167323052 542816899 186987775 41758193 931389285 184176758 813175486 416822731 517038856 729909784 658370400 536516780 465913589 53821949 324774633 55291785 573014887 43631780 923497391 822742252 531126857 367216147 220578603 534979008 838655021 775250716 623122905 895457716 388090544 115219449 288592767 717853381 559395699 229846468 221276650 175099224 917425024 342493089 859233794 720815794 737901936 469119397 553829082 781750510 600781106 30861127 449000524 437125904 569494705 733421091 243209207 234368738 211369484 336093852 66369147 521167954 433533245 376923767 896402602 111282216 440995125 734288005 940173451 394601447 104984065 250728278 294978330 405975580 120309399 576617579 660217875 466617923 255716569 674191306 786434257 336831099 742149576 940477255 618159880 631215802 291585296 318648520 7311180 960111670 440829008 699685506 211065825 139146714 322792296 314937479 432224572 748433508 199834639 456470682 590260190 860270865 328321653 107816494 836011817 449051796 259638401 382663403 748256295 726595183 229475365 634344458 593249403 345547325 619980445 949971722 869202978 649337345 584393076 949076173 100357291 108699995 537854515 808090302 300748821 572002871 766089918 26852942 520595060 811311047 156867673 157422100 904701329 214001971 260376901 337884804 497071528 718031649 358713561 602910816 312553765 784737141 811009100 619523611 852490524 861895296 114330797 279356189 669369989 816454922 693170248 384286773 883653576 696724085 299410889 256211323 697132651 956230925 362413347 860257753 888740582 343265266 98920322 714595626 943003719 62456327 272858420 422894775 243477030 973500144 680513014 5419829 397509279 35165810 698054906 276009172 728088068 380725467 616429031 214153788 983414567 640133274 645026821 291324006 982182518 345718387 75403365 304191337 911724657 182898006 499149953 222210708 644654478 113383560 676017801 65248016 409918694 177897895 22082706 456162735 811314493 441995099 171845987 230489125 395307350 253780903 655183989 659492786 939071301 979209320 469484185 902499322 645601568 848869266 778065655 117284161 407779548 121901328 128258621 800054487 445832649 286609853 835617672 434936625 581871561 215010522 371983535 991898313 345190417 435779184 488031991 807675923 148752812 630726112 916124442 812750355 517549465 344248660 979379405 356452505 489061886 413254005 607542801 467763090 81106284 801971152 711890572 610602972 677004240 581017268 307776507 994695438 517596669 447910664 780655558 471382455 613732497 597054145 351531216 103079097 607192973 964643750 7638838 712957735 161495756 422959686 61306503 110376216 605989093 42130323 573299382 138728572 778403268 728757051 197532148 142807368 286653112 661672974 870371975 306746319 879043696 319401103 34761435 828066404 48873198 501302102 784737438 437052137 974957541 231798844 211038625 416954669 556757829 307465598 732585189 934853449 181701218 883687097 553934590 648819339 434242788 230851161 170070582 779413543 865242446 97498605 309507615 373979993 821577054 601255154 131103676 330498617 912185212 362132638 938258439 622450183 946372852 803795762 520229683 864957160 180428486 716950263 198276079 204098489 220508686 640407917 403248817 473560009 351446280 870552630 128045813 34602805 377232092 428386812 102046723 944234786 966816640 402352613 471076297 145450966 944716910 952595876 153666872 790624488 374095697 317835540 868950823 873737816 33816763 688749319 92838188 738990031 176919363 973355093 357202224 220693081 236131055 47359240 106367994 559536114 712787840 171596600 388664383 623134129 503561007 15568363 2507185 857610894 719084882 763045254 97126061 505616846 854473375 491002557 729307093 571324319 598099875 603062981 626186537 89583548 498273745 41120204 600621477 16096960 847013733 908254812 419246682 96021288 620925444 119743405 775713743 227115294 357626768 104118775 714143989 573142241 518942379 375248541 823882858 385965009 497049370 452238388 983297808 829444979 456461787 138045760 962856048 821887290 61397334 484946150 112505102 788549610 860563547 424864498 342659267 250709513 109271703 736850112 442690989 200605938 781588596 711626109 471060550 935484484 734983491 635520104 882020168 680188275 943167221 903445738 887767582 779402744 289345633 76953134 464455678 884830196 902585721 805173566 991620390 988932401 621641184 558224271 304928668 915432166 422967169 868616864 924994053 791885874 840607772 320363598 285747396 728193887 241501509 584674082 189080205 81809921 430434367 598856695 931363644 39328112 341591950 843462152 189589344 804410881 454626834 505789368 648606560 670082095 950685420 844534661 525182379 587239231 83521373 476832753 979152991 787941877 979543964 286815320 613781355 594284930 664962843 867046834 750575433 498847414 607066060 693138066 415030790 219641908 525898896 332303933 788956383 871311110 758835619 60227251 462861294 445900445 477287941 882682822 212652554 300154510 132181250 607661249 81729433 787537892 964484246 275092401 117916539 151507264 250855855 239418988 301498265 35697238 274849838 624159105 355109731 106609144 892864996 85473994 932984459 598662717 885037934 775417930 834628978 89211963 299075103 755819022 194206565 76002437 291353390 185748541 38453734 16442447 487949701 93773510 131273239 239578328 141969298 285470496 158686048 376863746 615489370 581008166 562681088 76996319 116487707 721842183 596408325 663418631 426835197 543472220 554587941 941995308 207123706 300350013 69521518 34977912 690038227 571443095 622097746 853102999 317184962 115375639 564460572 738709545 827332917 504239316 928049158 274210138 546930983 126748247 917041341 448576300 768320481 566541699 854586534 160060953 760300289 890522837 818170935 897826967 95230738 170131522 404589239 133831790 189605668 750829445 183762691 283476169 701357540 911137897 707584813 336443454 267495164 749382602 753560174 879233689 744269012 147322377 339571727 54174754 704093971 871144973 642208179 68492221 528572139 897175967 683834689 70147212 833157497 576643728 932168081 621427382 674709587 528326714 331360893 869038089 846226528 793505983 573992429 152971006 537650174 504952906 268469148 517690101 159365989 236138284 897942531 218897528 647096981 244792288 161152210 350844973 514013051 203348749 177930631 655651088 154659704 771162125 308881031 668523026 710065940 345946050 865271540 50030664 714498742 542256261 539523986 448137407 275721383 269919425 239477353 244235773 325266066 247669404 864076764 599087766 454263681 376428050 723734585 380822367 775051015 452703397 194980513 777004935 50100580 579932477 43394493 138603835 782932668 94572996 560749482 70344371 726079437 407535235 149195413 993848042 359347304 510393993 275035198 561091592 870070045 894981836 884025532 721017221 182462942 403557189 239804140 140310669 806721525 423533860 443223295 158791927 328902578 85445975 718454116 384288535 522468693 692295334 786567063 979534829 796717336 965520394 278386994 554704296 908132573 247358138 28570180 681945472 905398523 39221915 128010432 826441451 990338065 905322830 430711741 821102427 825964945 54253293 988140945 216196012 644194070 759596526 534547369 487849541 169047743 952282643 115191080 721596147 13364515 32007658 470994292 482110823 992624187 963317002 866705861 452641337 163292779 765189488 574891436 421709860 450758845 729039873 599891696 381360989 840863546 683407058 860178336 633770889 849855426 271108558 662468066 309200358 525101251 385127880 417028794 990790305 659170513 954371909 977780212 634341940 744838699 82221007 196932235 438448907 148938328 218123501 969751869 550636849 433050854 225034466 52323423 997300915 688991919 553951370 130652539 358758323 174979066 351267406 804687552 330395015 70725397 321364180 104550638 754320973 91732488 322846601 235364262 77698651 82198977 136794996 809109131 745300464 589134434 477577714 358165035 338757301 562821521 890462268 437872450 564032343 348254123 833338690 48123566 814763747 101598780 43884999 140083746 213549534 10928453 21593269 352820116 179136767 2521833 501596361 292161744 819655636 781956259 840712744 853167370 950358811 143094084 571051058 979823527 39824163 194623364 564187169 858740676 346457245 96905363 845795108 277067375 470931638 433946173 391521218 383983131 373280939 593477035 851410987 472735700 302513080 786004105 514386165 305282653 638328440 544095995 708192602 957180868 355792973 729416942 973110686 210668927 447765519 428207130 390886094 965721873 953702286 178758590 978906474 654766362 655909864 582671696 952970788 439961703 602078361 110916849 670727861 787452330 623131361 449632483 389902230 108856006 181731682 841661291 300633142 154636582 763931987 26523137 852210469 574796162 567579581 851192477 68948256 723734482 323450565 259098658 575517623 613209520 242769071 215843979 328943705 57650905 574687992 148766662 705524994 13262277 936811722 764466500 671121294 856693163 894013912 261679536 493798698 902990784 408236018 463876877 599788324 806966550 641750821 893015155 57033529 562994761 337311853 186028918 712160697 318675752 188854698 175718436 793152848 495584525 741431919 739865502 738806114 439768802 682095613 562370952 180654724 942428236 419263572 745104630 220857346 56599255 166525659 249810159 296421461 438543322 472557891 611827896 335627531 763564258 344404107 181720541 635831762 21038412 720776808 303932889 775513161 414928753 749586248 770273784 255966164 88351079 227314549 3076900 907792519 937809572 417906792 486410095 428241864 954299816 91934368 338532842 351588663 408996221 172847684 58044944 661254964 422261162 947461332 57678778 588922966 323530229 256291536 802349582 999847047 581561829 4164555 248682132 833211446 777418346 113138835 798570900 509567098 99349736 244460200 880782294 801727868 416240784 558323925 197831118 428978867 714073067 350645207 171429437 591870368 239287232 736584610 757521005 704334172 616950392 856456041 617133393 124212940 525425039 504265264 701204473 498776516 185451816 945570452 564682973 690384777 365690332 361710700 553211675 809346111 125442108 560640227 380151462 53876949 411730364 763390716 362183209 968666032 414302512 532000708 669019869 966836043 444674454 360682641 374241961 911530751 842545442 883910023 221437236 634288151 777446430 646017324 707134615 630503758 642327578 935975377 592508549 81739974 17505422 766642961 375932782 591209346 325108759 164042496 23601901 991567533 515862485 280019601 11700725 73787741 826713558 327549676 68192891 264088714 785804308 217317560 218065775 574523850 257680263 245843752 750303595 224818178 244326034 273872818 108923722 263732179 413163738 572047054 710674999 823456084 680400165 7505210 213126919 841398672 719451457 511813449 199544761 860509061 723791047 838963502 343638953 49556934 983928311 181617408 93173095 420246939 872904931 706070706 877450976 534483470 271867204 711049953 231471213 552845056 564011331 583104151 835172432 826100075 183356548 422513695 340430640 203479143 681080083 912512871 895804800 656226444 117066555 480167151 645956469 868676431 496939993 778390617 50951481 931443616 245142306 65052089 398595634 650418387 971701074 836837763 28558162 403996886 406499914 607760658 50188843 568105842 842284340 438465213 995311540 333248616 746222822 239244954 526175537 796092827 210261346 247295008 59221963 191279147 502829806 7050809 240421793 64426145 881478300 745576168 757427656 954098062 94297889 418910201 380917460 994215836 737877735 433392306 750826789 30188568 873155756 341328178 141878145 318289195 878072321 513826802 503080694 564913889 203941825 21346361 925835148 110266095 853199630 698814509 825169143 302681067 672811339 417929645 271969858 220084022 987182308 304849407 437166266 554320964 241408447 304365727 147375077 534790629 894529434 655131559 698642540 83184955 118352139 447937629 528270385 954761081 722616930 103836464 213700608 363113627 40284456 466985391 383911488 960172194 775182708 802519081 753986056 129461035 20370438 168436120 263725779 719058687 637859928 245937806 175883655 891905475 672947842 638245064 66430718 127267270 733001267 179488814 115898972 982750037 336365656 612910754 832667653 540780380 302944623 354042631 998954270 20906726 280443549 924289235 194924032 781243310 194580233 967720722 649080470 79654255 226144434 343752619 647573603 295539862 675193689 856754335 124864780 313670716 812875374 349421145 263121301 580039232 529637495 583636435 438488040 270168811 693074160 348846366 650715651 326750571 151713523 590683723 642915551 703976058 92239911 311469981 353254805 527550290 886801515 441647099 514578810 365281685 380389042 344449146 556663784 269583008 524854406 708910974 732787646 414963093 677967583 533347784 844875898 722416844 864501756 631963512 707603046 761754452 854017104 94527283 32874590 357599286 66597677 348193425 869507259 507772346 537486111 454652255 5297414 539841422 985745750 952935124 457632487 997780719 896841051 648817936 703065160 209564982 357693354 296963992 12389571 465754325 395555767 55158492 360114126 518465731 701570895 300058776 27929082 141403558 531415219 582894601 199434439 650719519 254464690 545308749 829669516 100011327 582366750 842370298 419790371 599488820 158119334 137935863 587124861 177198865 282800889 593872304 833075226 38244045 16690043 143779104 495919977 412801827 573150519 401582904 491175888 939492164 208825442 478180738 514697040 808015429 949499564 946793065 744417147 458498233 478398560 970122134 606189941 220594451 750516049 188880798 979810340 130142147 648207708 246781568 454680951 182906954 139763639 969868165 879721808 725208230 779478454 594916468 975342939 465757796 843169874 962855075 162482035 206021825 459409314 633231477 2610820 403918516 954444835 651535961 536549766 386533827 894124223 94806655 643627720 370019713 320730146 517090416 924065310 646942386 750125254 768791905 270762211 442994847 914035702 388611479 589549805 315427520 131582121 287701841 498731700 296843492 640544206 632733767 316841973 640071760 422725277 905170419 223556974 966175548 715149745 389892475 127744942 95030207 945102121 267366235 912350000 192619809 367022257 442799883 566193613 728868294 313597546 456424371 157789069 194754141 528851778 926258547 631856802 633533976 351840797 3945578 69528767 422478502 660460815 544269014 304178397 899682603 783355271 760510200 52052599 626630741 32407207 189316588 916936104 95359639 590757115 608348859 193253755 47805548 775215399 595554546 851165775 755890747 809801361 81907026 228784554 670462183 143020234 79006586 76520176 281723976 819665162 276878095 652707744 646207661 911184185 931471608 751778270 335863203 2000514 454186354 551707156 754025854 537522877 457785344 710564493 83013636 188321979 689639767 876666798 899963110 987399772 610557353 878457680 342549368 628650828 562532170 42048624 432886294 974337912 890364129 993745405 783385946 315340748 580142866 800462911 135167094 915829402 565554929 591434223 859198481 835430461 334400150 364023391 333112222 415930670 872533938 691720453 245409918 729725523 384702110 134139837 668378186 525149595 143684399 454741177 430093126 955373276 506229994 493315311 48445583 44970010 704594008 704490348 186317970 852789756 630878408 451614351 911622748 745069492 494964493 203179257 205353154 824686819 636535601 355268577 199692807 661993044 424458314 2197230 781208238 278143762 956366949 453814994 208707332 949168783 335441857 910494842 844548691 835467566 1813604 968872214 864479391 553232702 246182530 734099609 740628673 118981761 865240011 390784539 64277839 656002588 419405958 307211821 54241402 706752811 262569913 943474161 117406793 939531867 103474822 26961444 906754147 554365263 421928071 551714670 887504217 626340490 589814037 675155262 65067581 84075375 216771351 46732055 697281985 858991174 973354751 718843743 748230548 699669147 366127749 520354982 191223269 20518283 156675195 202179732 418513151 906345998 438469509 968202970 990130926 138641792 146628560 75302203 785972694 522871171 922372503 286775138 196980704 525500494 523718335 78795238 96611807 221980046 307544809 384936103 898906777 642842151 136458195 861144835 818449515 806010452 542825561 74736929 91848318 223865242 734959490 45950340 51459606 251355254 617706681 798944449 694371647 176858422 35725019 537443878 712874269 364319666 327465461 223861690 456516159 377997881 261131249 146776110 402368653 445814541 503849501 338702548 331056400 978508894 7663167 538762923 59979113 673802904 800434692 638178363 389338132 102482495 883623650 181380186 431333988 557251990 865591512 446863757 933706520 538703992 336023179 89412842 663581040 578226927 552296293 123926627 559205588 132955641 980263315 709209479 818487476 31837431 709334426 907884710 949067680 369020506 373577363 671006230 835093606 343527900 427719187 894126201 932213156 914878374 600318115 677064618 119725189 461398690 765649544 81085769 772123187 196526770 432227038 216450719 969145804 876153166 100376215 49356160 531099834 667320833 926590921 429445489 82210980 419383054 996796464 483600839 964883677 447522373 991251958 477136816 665880140 506860796 500736851 903441836 699058171 381864726 200432799 347230484 202167795 965339911 155213695 658509329 970087135 130793831 263871823 174462170 779033990 182893698 173647864 946911010 864965913 348977925 822813257 842773192 620734617 326046030 829443048 727011108 742976667 670257832 649097712 725017171 476980565 186899721 510751923 421556708 518485698 318844904 226012326 582137782 327063066 995706673 296917510 270471873 281650102 364793743 537815981 796560364 878561273 814104755 962267404 838005002 672980663 286020604 436861386 186833494 408048528 871684386 916310526 730913833 411746431 22890387 637216631 891021954 183303907 277917467 569952626 26689283 873074578 48165182 208601295 365143891 114750000 241216176 751871732 366307664 237965675 669964399 796652937 433237045 358418255 246606604 557014912 931691093 482853145 381590708 802552415 513200777 264495929 692650646 73731889 850687985 222673410 325383988 494012144 887832193 311788891 756479591 268071856 338113369 321423678 162629027 809017172 120870755 574909310 629589708 480289822 580152921 220615177 183292829 477601106 724033019 881726665 720790196 379672512 470073975 687303215 411058274 738558928 168215752 770047434 370813689 806741144 240323962 691913888 204755341 21299450 459734148 821940854 917998623 743842637 959298116 291715384 621961139 482488648 590154209 682693592 989546625 960686035 73239602 260248583 509054543 463718666 785447900 78785561 877112529 196601910 827957592 293322769 833203808 66726947 193874216 679944459 361792725 38764890 941192951 944325834 300040596 561748059 887465300 673652621 290301124 666713189 136387653 978094046 822566765 922626345 312389078 710569063 106017922 140546068 367497924 781401319 673250296 117266255 41462963 746872668 366465667 584412899 353596323 895452410 241303205 343293663 295220897 215604577 875360293 803887917 162557853 480401229 703483796 878129956 256712596 68114615 248814351 347278127 852249393 459836507 774630541 541682955 958118281 159734253 662285055 7838812 935098789 984860393 887660599 536410252 91069775 481013068 133230895 99659288 656806283 465049510 499404553 906741642 917341900 106040333 585065238 268745068 155276100 445532054 223537786 113761959 391135854 253877607 656328687 188361792 805839465 640826704 70052784 462512384 225738329 895852077 971953764 748592036 465701954 780468242 392085696 289551897 633796713 552415963 459208819 147989692 443325061 368335005 181637685 319825688 43547349 442943106 884833721 456910178 485875053 718189317 563196429 793740188 203788613 484272914 456059275 993633001 6636681 840267654 322313501 504623389 558932199 276170504 173206482 170878778 158642267 750956837 294254122 693544174 996181573 602516487 267707343 929305772 904057780 885251568 602872632 424095381 86043476 883001577 574978146 144941757 757549919 393578893 612869521 666916286 171074526 995936319 774908799 788493203 404460409 548549858 373951690 946089199 171349180 995454773 668059489 446287219 475652744 654001397 681968763 258571422 304569159 156904619 558399328 394381657 266326730 668319214 986690331 206985287 647179313 840271068 459620425 652463207 785284756 417476156 7999047 877922546 697463597 511682309 461950566 359049091 711995161 69258681 138127779 919989919 561560016 296147105 240922454 349252330 995150598 378221313 550246769 975213016 571751111 497423577 285218492 518693170 677764817 776401052 455270565 760302708 615279617 805434967 330794433 811026791 718639836 282232442 661628424 615163560 132026472 933855875 284936293 790768385 579878256 605059567 81330647 453925917 397260912 636242473 92338142 121003536 83243826 231959896 366730668 94773329 371800616 838054773 126268005 355216377 414404793 908320398 478127085 381476132 474403719 44219888 713385657 381079582 298065734 709986998 695449813 404568729 592661889 837962864 494214263 23780711 246131398 412690769 330938588 556321621 582737350 155651099 878917332 603156064 698919198 552590201 136031266 150671021 388377469 305642116 787391954 18357001 369726145 520509143 341426379 460901365 641412241 107488108 178171458 351137373 237631951 101176505 406403425 381587263 661668184 139529511 693863221 660412688 379606959 354464742 240862249 90113914 848274478 229211669 636869539 15729890 733134976 441597668 535320196 971215364 40710363 619203702 504167447 879527651 127560499 831966579 783413242 107510190 542390984 180229109 970128927 429746019 441856671 483935973 858957945 163747090 953463026 752516302 93871862 715691858 781552902 641709208 330570109 642385021 92414932 756539700 923473430 275860106 182727364 504208907 351085008 740162342 694837878 882138243 734582324 222335172 792647056 468650663 120845603 655373705 4813513 452584438 741103546 191339758 11769799 241249516 473147733 992067767 191467607 998459286 46559726 869746730 271398095 640336865 967952594 975028443 817321471 279716454 114501179 34527249 692543010 651258662 385444894 873766365 641453964 542128609 998751625 278730372 935690094 472317116 107397588 337585783 444068413 848343194 653430115 306696165 314122433 615958313 643024666 666873398 792309355 651383560 607084450 97557937 38519494 137881383 639777677 261965237 860435916 469481523 260534673 722637203 986660001 807596245 78847367 935119437 853721298 986817945 254445215 545201731 838908995 559300912 271244992 717997297 527123371 797261722 286341370 372822699 419544912 405409645 39301718 661855316 449233119 132021248 206040204 338620469 991409726 202737443 703911152 232655134 907229268 445037803 124482120 404675934 21882827 907403243 861001639 245308848 688719579 669108981 974361799 809107331 649101799 871416735 226068508 575621026 846346617 335416341 90306473 64536790 169864946 862869702 7893366 844426330 369663902 25779025 780751526 116201320 743480546 520837435 660171859 911071029 710810238 402577123 533024668 235049180 506535909 526461541 896254100 439575665 73621569 497537251 946208700 987373196 455307222 825035143 607444680 405827823 70274155 925954235 422675698 916270641 556365555 934656842 562130413 646512291 427332664 728099888 630240906 592658871 167737321 410546468 85428211 454446636 782610168 350888721 700929021 757243037 77111814 168510747 614921179 4564397 942730032 122165856 967793523 939410682 476690094 138324878 362668202 28223262 888569970 142310213 415917918 140262278 348782821 102745204 696237566 733544878 738125994 754363215 28967233 121585910 630399754 29975457 40950601 639143501 543163040 645265677 770407873 447430056 87724484 585802921 913348374 854182764 241323069 381205912 660496348 228864564 481382281 304863153 459362891 741449808 42779525 418223762 930339195 407910356 427118939 976106880 129864738 107462839 57808437 196666671 45887208 885253424 807614875 835935169 385013704 145038550 622327109 115135543 325001253 203160708 720696929 746846329 181120621 202024924 416040351 407796393 444783913 317607685 439122299 493681747 845885350 610918294 888386677 580028293 405746642 397397348 280666846 981187994 987944107 243761379 773804950 835702391 186299595 15960880 630666402 900012424 664269306 486099687 939854481 579393242 53638144 347279956 668739671 752375150 897164372 831774686 523871240 870518782 643511545 873689801 266165586 826078091 895158169 22408917 1696756 716672401 727235473 661125764 322388090 660263276 579719291 885995866 911929068 396675529 817775164 123587012 379137909 698224281 482465759 441774963 785863461 296488032 164501799 623892306 355827590 911228643 443957028 232877360 262125677 796462941 417394841 442537086 612133868 622048085 3747446 425961787 539304126 996965443 129360093 618445163 131694374 867310054 226729121 323094521 579498478 627023591 596220941 466842675 263261126 284680660 904823655 574487215 313021415 290210575 623194631 381702883 419732884 838170014 611709204 355868452 415492713 600752594 394756540 184882447 164440748 193176130 455033846 724093675 957682559 992918829 319749761 73415332 689790782 735771446 688385125 209981166 806002757 829100304 376549837 461553949 793384119 902504595 117501232 187204196 602459958 753154827 845660873 458970735 4808774 784693634 84918192 849402906 483178722 408603872 242118092 107082041 457843420 537394966 413697560 854317209 250040106 607318844 73241065 522694835 608851553 789187452 385231931 566342636 725990959 723970848 887204288 954431377 378388588 840600052 674444799 656539694 677211702 531218281 739865724 71937933 20439304 497761393 524776909 549076251 56033121 40540018 463454130 504438066 671900222 683291024 98253350 464425502 639921677 643616275 177385971 848678130 251137404 416552840 511659554 285683931 642745263 889254429 761966340 722576930 741901537 218519597 991064734 554572952 915560558 458369328 765735775 492602482 892250712 202155316 343454602 224050423 364987871 91165557 77545412 800510720 935250450 226496836 818466075 19771222 896160062 167156972 224775844 238077137 821783973 834146762 472210676 123525729 810443151 244217009 32013548 640216612 156885479 819451849 211956244 927845168 848955726 232203829 148657840 93679891 902309427 934823027 567492490 419178075 37920224 453545064 835063161 126726032 566228596 258490020 190215897 431971041 887162172 31357607 439246293 973549583 750599318 436568366 954390921 470893394 152241368 931582 190909558 488783377 801245389 335771957 842403573 554800541 898494988 918939620 59350779 192279581 402653209 107127806 358878826 853098100 145518425 407025497 478628659 962471900 28557455 389749042 174342168 963876865 433798613 931399442 717900077 688577760 773108350 523745342 980667366 779916240 834658637 722281389 968445106 339366867 128964793 864680861 562334885 450185518 244841480 381887474 952152992 862016975 444011329 828292901 285123926 399817491 164140084 193460031 261208991 447856164 860226076 422887039 182720646 865415345 264714051 968298926 561761242 817585463 310984758 23553984 433655653 747365354 140523512 303132969 631017575 495316483 629014748 190491322 260948463 917310423 460887999 690681833 969890463 642808191 56670214 536964135 374484893 692509446 551404855 416405862 293710421 620383660 367541899 287296569 766465701 385014970 875167923 453080203 924678299 269324671 343589391 390689557 883318489 912239588 92755344 306555061 268692251 820950816 408443344 85388137 212208599 529737043 280103595 212633129 626630344 231171284 899450089 678591545 981362193 728568322 352090914 907026578 665128933 137500434 661333653 256334893 460024626 119283805 195008335 550822034 587856563 10715687 775790098 791528957 691620825 936914445 3504595 595869226 754025032 977316904 655939789 746589479 992980728 453723096 275248701 217524326 973492271 493386475 44716249 486089513 261859029 770086513 632611043 993559942 229261072 33671267 605260608 945002974 482836969 463330871 783963385 873757367 104741987 590973643 988636792 440140736 441095009 785208555 135905578 762792013 278844721 39133671 733297012 778553813 53145216 470389884 631644843 686623535 994695173 823293166 950512176 283691983 112018002 355404414 134721994 653686455 28276157 632057186 758722225 301896533 955089930 774282177 431027021 595781458 405344511 17148217 758274308 140814857 33401647 708413284 899490887 196154958 717959432 791854348 806744352 494579419 636915301 800082044 389137751 689587007 309321155 937538666 235688188 235090729 539349759 751068446 517567460 137148105 100576742 292720471 908097288 166145117 23738660 864872713 480249831 686798205 707427454 986773021 796649288 865037413 326810049 243880396 30210609 262199329 637692743 509143044 883872373 745415356 276250855 307726652 295775442 233894618 247609424 27218888 61017438 500654515 670412502 474888002 269191396 719308362 976714823 945983347 16371428 902902812 786413386 217590622 800168054 110081231 904908031 902310652 14508515 577419229 969083698 477200415 886918077 943467118 424330246 357372642 61284557 529040051 311668172 794994912 675978781 52829441 829584940 339037652 854140225 93796330 308805357 348093987 812394183 497524922 4496835 141944343 998258564 156883202 35504620 125265057 348540538 95941789 713768143 851659635 50828526 259562679 936306815 191484719 335253500 691363717 805623818 198456457 834580797 799974443 66546341 254035588 444577260 881019644 268730370 139056720 372227542 605446503 785653825 274632694 160513244 495176206 917348366 96698618 286369273 698715233 218783377 659241261 922410109 436607259 886695434 530878920 604409294 628296079 471720497 252628489 47461201 539385860 248312334 733929809 799757081 162604468 660628549 765703446 960754585 841302659 529266150 462158862 215238886 914652644 278138301 946344788 494828705 13874126 19174167 120244321 611872705 739220387 91899866 985336166 787051564 745228428 203767854 711212697 985326789 390479827 580374788 323128814 474598614 39998571 38223268 234074567 929407112 38068233 906580564 39445180 919752315 211278521 225124126 919979926 341706168 72834533 499378650 489251565 809757345 469768708 292020313 709685105 577128187 711182386 355517676 683888363 279427428 350306507 989684176 560336900 629215795 446616512 296696844 17374777 7255656 731100505 642322267 425930789 74163159 369567867 941947466 7389470 737135962 551096459 562829363 945324661 929882822 92033626 294310632 449488113 616388591 300674550 648407595 734505756 678331989 742655037 265469691 157228988 191549644 743725379 555345814 833814171 546709985 219307862 91577950 25846067 724177680 975890902 192503072 308589790 601333276 896994306 27414064 555793102 639039444 208371852 171044900 957280883 824161522 397986398 221344832 962202758 253350177 317961059 66444746 152678215 739805406 853376996 790158048 747638790 8875511 182711556 20246466 261572133 654410946 567113977 87443363 346240615 988150924 318156889 336407529 544070186 390043324 498348029 67651324 162049821 169316643 178181215 808038477 988868079 417280854 974498511 719678256 397110426 94797014 346184432 59177664 38238243 722033836 476262166 313274446 633122537 344447554 643155904 431789993 92748519 308832745 963063471 365086901 95456092 335128257 778648477 711401932 782045741 891563119 230616245 869969633 516660632 332138729 371170289 533118163 909146640 95798912 513521345 699085324 829889111 346107634 78938742 512249675 618839845 89815906 694702666 501950326 607961455 381461411 575717222 755673903 376101237 221625062 1151588 275981704 677556017 41824160 372035398 683086881 553275163 842104269 450344803 696376563 620693043 876356765 963218865 605170545 693177664 846246406 443533457 553379050 54161734 293289826 12820255 406566588 840650785 961829614 192763827 356388747 976348034 807068314 382916473 608026031 674642632 369525926 84951805 378341362 961280603 110528854 312734724 399794331 655675585 359789686 752495817 476363617 754351840 828393272 895828051 164359902 455894636 103011655 916123675 773052294 669757220 953872460 768223911 768916789 951281628 857936275 122701494 791640000 786800840 171685345 991692798 11898798 124346154 367554244 499162097 566169588 42786593 703301901 831151563 541203804 782737954 448797495 773965749 95961286 741281751 385627685 976575790 338827535 946281522 470615595 571606858 232670215 868476638 296721561 496481813 837751790 599747787 590427154 83368905 167177158 333835762 822380890 35285982 570009717 796388017 542878447 831645320 476196780 145038925 503520519 775100384 255234921 417891822 714503519 758905106 706465111 889912462 306777718 25083243 703958330 890102225 553789464 119729274 562864663 991514263 978749136 231578034 968654461 380434960 987063716 266104317 207252693 969386865 856923789 875279479 967187102 342002343 229884594 740496844 878296604 343702564 958877852 590039744 53207114 595997 248333124 960550127 351038900 434805739 265064667 774934475 513360085 319611150 574380474 274294063 468991147 920434128 149183648 303003933 682241279 197245686 56714121 748013755 402633776 480034283 757426346 181700305 65799875 762169690 199888853 404764814 972211309 573724020 437239954 990102393 467803753 231398858 626978529 18657593 324945270 504470511 27818773 475732570 737181306 960364717 882096262 91078866 180007309 558747690 147954406 235975191 712179648 737439862 331675038 7665251 986040714 382713639 459626859 246278414 872590700 261519260 980580802 899155577 869009641 201975661 456327175 531194663 700365661 735709082 313009695 814398946 413477233 60247048 220212719 477395214 446064018 627113691 632845840 197272788 536949680 32327455 406947087 896013110 814424770 380757986 872597435 223335777 863521144 439588470 199991044 52835861 538044632 366786965 718254037 266295256 499628874 137396321 498294382 475387739 133803871 799465989 987466459 714975994 340213853 940549370 406128340 920300197 296097538 960548969 458168283 991305449 671379206 921662919 972948862 132565261 89873211 474884962 686592017 59020710 792923678 868097596 531896337 34633913 790369154 240229691 637019454 754979353 798207320 548847151 114797791 586750991 27966490 452788039 836377783 286671276 748175824 221641090 888540423 987502020 403614477 722704396 95159605 518061933 733756036 865099135 327334007 130424248 787760553 371575658 25163671 832494060 587199448 431708781 508209258 345675919 930312606 744219776 329012333 153581213 708418576 7372333 457235975 455413914 674780413 888237530 354433781 696788489 409502743 647650793 786698957 240862563 308040002 541578074 734447663 496537708 198658435 219935808 422708566 269959917 673227761 271391413 663069127 233868434 642304327 997641909 913058600 775953149 968540019 451515066 926071284 689407406 726341458 975849760 485701489 65474889 376929766 863752286 217758238 932258776 69677715 114653897 205616907 538067783 476008179 269714922 85595101 712227074 749990569 931369369 621792840 377517251 119683314 163918877 473555675 302170249 970853485 673601157 981688230 540653521 417348215 346232483 820584438 429445961 603113363 385852128 407575571 432335574 53922404 87497052 697413505 494022532 520106449 11027685 368636419 307178538 965011380 529725564 139781434 549676328 595096533 32972777 31600299 42497454 860759869 6891933 263736061 273413968 24251503 876494875 269662023 442157105 761842940 45662354 955442260 878220873 909954421 368238557 999872403 459299790 49883066 494627730 648320448 249429565 845741946 629944881 987848874 780866814 656789373 713902236 708703274 390026096 625104659 699093000 170632592 21588121 442198210 369085669 666276864 536333875 292622537 947578014 825865388 469696431 295883106 853944592 337381572 768190386 682485836 932807318 582220309 742270823 911891663 798460607 603345592 395029329 578752155 721845668 121026992 579704423 823594200 525435469 935960526 779480994 473257733 753699454 719366253 265613527 650500835 832198192 840666872 904146211 638666450 559957567 222733500 210055925 687915137 656195469 785022039 901441626 228058384 528919945 87264551 921825473 229733307 766610391 261864291 638559639 449928963 971364790 133815113 292470983 787738696 402974935 977541686 86375306 301105504 685370529 667291654 208589236 154396188 486251964 154855944 859592929 856342857 846368936 101101705 66421096 562546571 540909415 922096898 903503762 559850789 211723146 141032335 774776962 638299725 297516311 469988331 625556119 638654236 517683821 115964896 795342766 552256985 562210634 821165563 251142975 296341909 962553669 296442229 454908964 537698281 380986361 898612705 332653579 775598561 464027568 959632711 823591141 902631348 500490623 681527331 764672137 799078202 438515847 694739846 98537308 514548569 995368294 629506025 371286244 281195499 427169182 265093862 543958217 354530596 543321876 438748860 779288450 542497223 341300295 725007785 857968930 231744341 152249412 62962246 400892304 434962582 304307862 241105277 361610991 801573121 773644836 67230859 335600439 818222436 291776812 468485405 764489658 123252764 314878902 69830001 112526962 846166662 36380763 545842908 768281550 147703462 452896029 671229947 622843235 185258675 886719221 91415240 531649641 985025146 888009932 224691812 166239190 765616457 200415871 968396965 193030565 994686153 39630350 657403214 854650848 565106924 38055662 368680815 239424077 221183435 169204697 26582003 413606424 720432500 290785444 619941508 826579046 99849657 752514098 152859700 440844323 111686129 700426254 488911533 145581272 620607906 423100330 579299479 423804886 54997628 154565731 71681766 581838341 470539958 255310925 181001155 328355098 765795731 440876671 657517422 260268397 389375996 503951091 657420804 112690880 106606267 208650103 483821682 51814720 996467089 961092282 475884947 389806574 557063692 358735483 481617664 292678212 672269431 864390509 612926616 926958862 75404776 451089650 322154159 191783731 333511405 852095481 5123025 898834378 254179450 443466622 479475019 249287496 337512133 686452874 920047511 316049001 513738120 77469265 608105337 717514274 749304097 894663318 445316450 530115177 421849141 602868298 34491399 945037183 508267162 577007623 699871991 452273655 10452613 690301476 666460532 541554483 713229032 802165194 23904511 155436603 689671033 57956004 954292317 200808888 293252344 102750457 34983208 810044306 67140951 648278312 866193287 592828553 102502352 625410551 90160264 669973050 889081690 301041614 976083870 642304232 148893500 347529181 270550037 830698771 129790832 989918175 692310232 959904355 420606152 456181814 795000641 438167668 937050813 825499649 921354968 731561259 999874392 414467105 526682377 356274945 905068368 467476173 984011966 198470045 885444618 452226993 211255012 163156775 206868276 461432080 478534300 376541260 947384200 692180621 273211284 463183123 62110846 91959793 527965355 331488860 375734917 596056985 324915182 517194111 786431944 318002758 706255343 247873731 240874424 688822381 190813901 842897094 857431897 795858366 570821208 159365960 743813799 246011889 683861662 34651851 89554782 901582733 90586768 880000956 210304481 256303817 699325885 686861097 894844680 39407007 952089642 801531842 577292095 715469070 161334327 862996651 150623933 611875246 849036657 280586277 56808481 191251368 858746889 74525914 807859539 469370526 51139617 985681512 446937312 154228031 415203727 534210654 789725724 451081768 465333439 535816767 159065031 769577841 759244554 178904655 158355499 487471997 956506560 175770390 169862407 124923020 967393698 550864686 315057274 39726025 198232573 992485487 731882025 984566537 491217637 960901697 427786203 35430625 702324712 903688423 657547989 862269447 712527805 944466081 97413607 693478242 312285430 543644755 449923203 149928188 677714688 623184839 632755982 751986842 843188687 753617246 269572049 225553551 525564499 301016232 982216961 62125713 23930533 718278018 333035175 170938082 775184961 699198426 222957299 295688135 685964602 313730652 533178325 767028319 287025571 336284230 399805223 30168807 708591186 692321983 809724115 528590906 985500488 969285158 422787413 859841681 1278784 194476426 543407745 321146296 748328690 268102950 816460995 840001986 25605302 404578860 952796186 251411661 516987903 240602418 81133298 738106445 997261909 349555558 81250448 700513333 654926959 629161081 398775919 193141959 855800479 275557679 638814372 133583564 400912294 97456101 387491346 47033096 4590078 603461984 565451240 292896927 216337226 857879073 728348797 981888290 937769757 234420420 9080315 337101473 11118398 99654391 335681890 643958743 307926469 937734198 449084530 736457774 293443645 17346642 332919645 49428843 25380295 829844653 138137781 784204333 373683266 458116435 491293774 471593834 205915814 375731131 731431358 295191207 742654791 286913237 904932590 800980339 473849373 512804259 648737234 603713325 110010177 128225900 661024209 183869562 378913993 426702508 209837686 89229546 332360066 118450767 286813775 775223407 353668981 58644206 514216197 480578330 214938533 12237835 476429762 479483566 446911379 905145675 161966209 105337128 289005059 776845899 660524243 622266367 132836937 63183513 328947764 643893340 586489836 291871094 929238274 21382612 685531603 360800407 939494519 761647293 382064803 677776959 456981882 781623714 377093953 274810752 352057100 530788791 488784675 885495566 937563802 498065392 752336898 21642915 483030728 56015517 432855103 813991684 572112861 843737721 264143038 902517913 344399396 290339960 349204172 244610667 524684401 824993436 779783353 487386754 748039056 171593003 221487353 952277993 532044994 571154988 330300781 923608689 421596488 980479165 202971426 119226669 333564802 291014733 915896358 728742450 121333291 350274201 754959232 869736079 928128709 973644878 619180281 107416741 133246804 893355166 308523676 993017974 846559183 217998830 980276221 570282269 636748808 878830900 611491543 834561418 843986173 971970395 216798964 99559166 700369119 59924758 430736207 680675233 667296423 983909411 384026750 764835849 656724675 328513340 810277560 309773017 286772776 821575368 647344784 991471478 731224460 293950459 632634907 313919382 796093016 830738057 340427940 995608559 4459374 836742512 790171882 703438883 200532958 499187218 177634434 720611179 134382885 709252723 944982400 750428535 9564351 770131520 374233008 998041693 289519741 263672254 627048658 414153456 422813376 320166797 940982727 985819625 145421129 920604175 307950493 219994272 598306583 636229112 263596440 507264583 551359578 515631289 955525036 626619163 645992416 891406690 945023022 27133601 887376038 793326255 469116231 402209165 728926753 644628226 219673197 449667093 216081774 67305565 783591019 517824705 649049661 760919357 198784479 757317728 625273019 216550152 714246448 979360152 599662081 662439646 619938038 372874086 49957471 822909799 105500270 73410552 942434987 663053038 274361715 922322095 365664846 429109541 559618257 11487110 178646960 125337301 694721599 110230019 162426340 252855566 843199722 408859260 537891620 869514426 153838225 913837483 736817716 473656570 766543860 593527047 581499213 507555090 605547735 878416302 387521018 300403678 486106114 634621635 87840968 417316718 936983020 605509332 640674749 716651521 339236721 138087404 684688414 767485418 24426271 406433338 259310548 834934507 562868226 804035780 472347551 338216732 156014330 454140017 651163616 538215578 243505215 985585502 117261328 770929280 528696120 61520355 25021690 565801962 374820225 264925110 193046779 810550553 766881497 6554177 273920632 273330600 858383563 237808804 729656008 505683950 539947576 321192903 210068801 239494900 65372434 499816087 690189389 153494208 886625915 886897265 533093949 651534062 744952104 643957656 552687159 163152501 814799364 581204140 988095540 885025726 521552249 195229046 189549256 944843536 265786765 452510705 232551633 303480724 603543508 102723253 880228322 160871781 773939432 51413733 137304497 355544875 36336867 435404280 828543866 64101023 593644116 582639266 114717584 999383138 35322645 76023670 851067251 316333841 726814547 920822461 653273895 183465647 159343628 352044683 763383354 613914607 62252483 897062201 746616204 866373362 427624781 637693908 137245059 805468383 526473496 858957132 686476668 932286883 121033155 486492422 612304816 62453182 348317700 726581896 676543477 688777154 894485056 606983672 738530214 837359260 212194047 574460885 641020657 970534451 892813284 749043806 790715944 729665033 75382378 546660486 786400642 915039911 538771914 330017931 234564180 331558708 522788542 389599360 721318620 346045396 260343032 206637694 705308387 489997756 391790391 644519097 619833787 440064981 353932902 251895933 672988612 89008922 867998680 836594677 646630548 73348180 101787256 387338875 532423366 458861190 916294453 271936826 11297522 78868405 413511826 713770662 371085197 635902374 243903270 259267164 881402186 127034081 733841226 981716103 550736373 969716598 627634581 987999444 824667223 50640020 834745422 461196380 642479762 813338106 982681797 403090614 27250820 105046746 384477151 325777384 45906539 970275446 535940822 346462951 597761560 995299806 36084083 834131179 472821753 904426514 428064166 979233265 764667308 964648551 349014123 17145788 371985657 340493465 978380338 374315284 703536599 254273708 295183945 390857179 680195953 912105400 725637048 983543247 170601693 488395671 522251805 100760751 655690217 799177597 259436385 114739009 978226830 339729143 837434383 208058036 909817558 175201353 829688229 964842673 988360505 782383085 502201474 772581963 325953955 602812275 162639475 225204384 867815880 602279505 92935441 360481801 733164061 97849253 293244392 961062722 34687053 830654726 944392046 342610754 352230836 340753372 411160417 48675865 955726043 685238141 908088131 957840184 449561314 329122800 579407797 377183585 824875771 338221895 415974685 534995674 227362836 505074680 78303566 746714451 831534480 505040268 811849545 94441687 465493699 167022446 940975161 982623831 284537698 182278988 195768943 476780376 486255216 923165746 392212644 435841628 53120375 994381494 783031249 278437689 796471513 590468049 188239893 69686604 92029355 745150531 512555753 911633291 754209554 21156022 347531355 859604100 474270521 841959275 325923363 670408757 786465373 256302758 766895860 510914712 980608132 560134844 590670402 528688535 718596725 68409691 812740993 710595894 622552886 93312326 745290768 663912124 576261158 12711467 663368998 233987524 828200049 436226900 184868378 91611385 966335035 24927712 867129128 128133046 987952674 407452933 745545985 290948943 54165513 823981600 979195408 773614957 280638237 581936267 349607528 835955443 471008434 401471197 372823125 6742068 405731383 876301815 282396004 149600692 280295862 263848824 910769127 41289854 855285767 315927734 958526807 590970992 380123067 653735064 789074300 344424894 912030941 622958653 916103826 256412164 330177853 723243300 135112073 367373678 46500209 525855263 467975121 848577188 659497216 853253891 433009255 995885117 379098679 235047097 930974304 788905080 177878047 657241616 804245187 959426524 672542212 324861939 226279043 732529947 755849557 117296087 733727266 592712085 640047712 57936133 491160081 5409568 813910283 683315053 795326556 180600452 20763503 748641453 72941395 589163510 486799110 593775903 640960883 340327384 578752439 133423016 859421686 722770940 241483803 651021948 876747647 57444911 757314186 420694239 433973707 90508619 982733262 458868256 542276089 468755975 359754908 286573362 588076443 229846863 376053650 233348505 927706245 452564256 723579670 864433991 843211707 338031512 248645353 728595022 15932276 66202486 363203745 839608826 369826135 328096564 604314985 683990238 481731366 831330264 342832309 790929164 366659843 555377991 18997025 478015021 507054600 792452506 909983526 947737581 498049827 902540671 985649438 502011742 114582087 357712108 527710173 512321360 853349409 441932978 403956648 426100320 617767778 51023392 510613356 470797471 40341974 648982592 883158867 761969733 461885437 602666235 529505866 712198363 632495645 640174874 635354622 138907204 141089842 475654217 811091985 524257400 137039121 159840947 944150802 793225470 925678581 390727821 73552580 415119475 777193750 542608658 942579594 940594984 910859418 632170193 596992998 249435489 487940407 57386874 305242348 580173775 97462421 534333977 176996756 397627816 905929414 600312347 607701863 123371405 651363203 116417614 762987069 365898615 251547974 52856317 126504625 904820241 123843843 241222254 804548247 823169751 277083728 639837736 340736847 200641012 842438336 167156654 381067179 14753147 431577734 459321157 41170277 357679068 436624280 484548372 745678971 576738912 333129785 319634403 831536246 178335047 798390690 218924529 175408477 828641906 775457950 313619560 79845328 948629817 545688754 634615410 560250223 43175804 485122373 401118228 953416669 14084818 509148651 705977160 433617994 403096671 85899475 269536951 370693210 399986235 704996511 378779892 417727903 101317041 813328320 2273489 70408962 317755122 25782825 913281550 975234008 907595584 498004601 817190930 665448824 772423124 286281474 153558434 388613742 294941648 936763683 150505713 402165605 962584971 695296638 655195568 837171060 415655069 641277689 149890592 36299669 350288657 761394187 231144849 970466638 43142566 89513973 424766326 140908519 777721946 790887810 721154773 158629367 707615562 999432566 198942760 96668334 415716713 793331300 108505309 893673633 508685153 573887348 365064348 64550002 184638799 243591386 944031212 462300482 9579925 603552150 683933134 416582569 827918610 122347023 741846623 350282748 665517328 179797997 571506073 27903965 214088553 492882979 841516242 605782031 240725265 120287884 700719029 494023721 435368004 361938027 298925893 421132186 274405134 205961591 788657143 674131166 16336529 147259602 21113386 922079526 384336896 439437629 547067483 670676687 81685562 634430479 255676047 503277108 584685817 428301612 20415678 214138983 620252128 797712823 364845786 625164019 976423783 243404427 826445718 650508432 607565135 277458359 198746376 304747178 521231949 255030889 59607455 412335257 25507293 421721099 185463822 429938481 977343844 685097025 366138363 947246772 344248873 334205785 991438277 666501811 947789519 339809977 551014853 888723979 202588221 314681255 908623113 84336600 181013443 590887025 894161501 297253751 610799934 165318172 876857258 125892456 68324687 356115260 844465731 688639443 138399171 460122383 133556055 646602359 369504792 225989038 66284757 818660386 511329203 712751690 65904468 587064237 808261703 670765667 570537420 353455014 510347365 361637227 19972642 864299051 49852665 531019299 656158360 993585018 646860738 874683947 820119321 402001901 320168661 761709845 605994598 943450244 625263286 725453608 427824376 419134414 414575891 231234060 721755378 269477836 650644066 159307873 189355850 771480216 384688844 606195491 759885330 127729044 568367273 194686264 85521497 271551637 849240790 16402367 688239407 236885160 119864564 517679244 990104547 58731743 463196803 297856848 666502752 951767553 303349620 150879708 76684513 585599066 65354048 795680101 691976274 178569 391556586 873328016 726308459 520006138 248944794 471081883 652036131 788358910 928867237 742320242 877258000 847660869 833523402 477894156 461826462 667119536 980279724 704901282 330955158 780776806 307121928 304520916 857378993 818807881 872484783 617563468 374204595 473772656 345420440 659694059 855192507 169615349 574265526 310303267 174207783 646958548 96520749 573959359 167674647 271467788 108989665 9556318 535816000 195659688 999046445 380180925 401891855 329330301 630089310 988066898 222884632 492348063 759445121 890890451 438527313 823216995 289924829 975546028 989782714 283531048 103968647 53443164 34109258 549266243 313975270 969930251 659554686 524007760 663289760 835460378 911419961 120104050 809592004 193036938 522396745 112002936 852227399 487382315 940341941 296906430 918392679 312163886 352354908 763040823 369843508 963985112 327134717 211058819 73102279 128234168 679117331 708736976 67968442 943524028 398868764 607044523 574670616 341442745 52121727 888004975 189811629 92082118 102997122 751500056 839959433 731739865 203907908 426072837 942928180 546367430 919382046 624180761 325252014 12925912 566379858 690836502 413882529 817832310 599988281 741267138 924784 995800040 971509917 227177278 84932064 615397339 396556898 231526136 303117323 790721698 619208949 556731170 258928242 388473140 763525676 845432201 248393083 734008213 253860087 651510353 25740917 276061268 154289673 492658053 460737310 671922293 38017112 554447309 28380877 319941499 264565910 194955061 123811167 542861402 265161570 658480890 29678276 840130051 115206535 61562783 496700967 96667955 939040361 421688220 770525609 570852581 85253336 63266709 515264691 563458765 370054431 594608872 958495796 877015680 458351729 628814582 208644917 797192816 360786985 659935712 527751015 314048979 120398640 143285858 669153409 96870445 510142037 731268867 258058456 258023486 240172141 786803705 28880342 850631693 88438882 672419255 972383930 592004822 490074545 34157501 477253993 939176793 167288111 658102351 647212883 796244954 156624024 151571067 292308621 202246576 788873530 476356144 937360286 923955933 726289964 211147163 687811547 611961332 971103363 661281612 846448238 631494519 924650243 845129373 411902895 608700736 914676199 239873612 650607875 418775229 689658081 349395432 608629433 500666178 722519528 749038852 342211071 998581963 387457160 74834678 772249125 502072419 750083080 161621273 58864159 555819254 216186501 923242442 123426507 765591859 495241635 315600452 782738172 998530042 712705791 379727430 855669092 797755705 998148009 549411368 69093575 306675603 661181861 315492823 883544298 582545452 705393719 557518542 868323685 997087424 402256696 220479253 239970360 359442049 712359590 698696282 113365035 750125431 700482164 89463496 307094385 542716529 301740912 35720955 271215628 890760172 256673088 926470264 866432000 315715190 447730827 904600916 811819442 979411755 682473027 43733567 456305165 106238265 337216136 857080420 899271701 9386508 382689679 916789951 745511937 331395121 277396773 67784335 279301440 701223474 748560371 538475488 551497927 368047048 994198892 929946590 827732952 522277482 346385160 669686977 129008881 346666263 457172116 435588398 8593729 467303607 11835235 850685384 742492975 12227548 155956541 769669468 455955113 880220261 283412371 684984875 249813614 98026614 371936685 239913648 116175421 601683141 162096266 863936189 156440085 248333928 493881048 262195169 503757868 205814266 335638393 665979792 739301258 800589486 963560800 997444777 636703092 184405577 318229457 937102840 749923956 912175784 682829713 292971071 576761569 133353885 822366055 723535108 599599432 983495571 719537591 189894370 568807042 334928648 772376559 367742150 280590620 249998554 564874072 239521803 742095884 965097301 410338930 496122407 412844973 31319594 42366015 140726160 756640183 608309868 913888865 898105980 752877583 326145395 458044533 137630814 897300154 537464004 995241349 828330555 648268713 134255760 793477673 979731871 121613726 643035915 842794305 140495375 577740935 821891712 692984642 584751109 622792630 871717049 360152672 305865188 540127963 129883869 74603651 625682268 676248637 906330922 39606517 205659663 258335690 965865732 428707768 520881500 434894014 32783838 778965242 943650417 722685584 641359610 446731543 942013598 918324901 949989647 643167371 444126878 561006252 501978361 347535414 260139972 568654418 302879389 747571641 318949665 85439639 943470321 956859228 81559996 188227037 242715074 61111759 104734967 989226213 752561802 712438787 525268043 342584957 686356391 360507323 461299327 903222843 151268716 161101407 196529721 423928338 835592926 234755317 196641014 987387410 271716157 788918088 127548306 642833120 765713392 446024260 404977264 862866703 853474169 760803061 84926746 826261371 441993547 645988991 432689413 371666526 399228318 986459664 658284765 873001192 539600316 380408104 723291183 726662044 784981965 867520027 700576745 900275579 753853419 382158715 582108693 123856924 443098469 253493208 924557610 287843208 139252917 113837185 806477478 609096123 776684314 769088512 587392387 411305236 126957146 269577652 150793462 876482302 985296142 36031418 733705157 712605839 409603424 58236699 787800491 316896918 206723397 831155937 642190460 644524105 913287033 568912296 949034920 339775941 749338708 253390389 838784884 19186427 312037608 792636859 50938802 171282318 207364755 528736480 994602507 824826561 40251119 454022591 205274310 356595460 420776624 200859266 224457777 263311293 438253819 358293995 834832701 87840422 239890475 814759972 848158973 13533905 47072535 562046733 473539319 268541105 717152678 211222978 715305371 573918397 247811210 653312224 438834593 261697647 857347705 570175021 186193827 585329617 274613984 700541589 295671121 401398457 583822404 146943149 24268162 346893504 807400474 513714759 721416338 585870565 118742209 101117717 41875540 733163309 851414538 286571808 559892244 901076467 584054735 768206035 832381454 241472945 750049033 843565960 84726093 373895875 512088961 121958837 513420344 392883847 785699853 541315828 405098645 160186590 664404899 556577362 182875168 463005709 318505479 419702757 134355617 93099531 846007664 647799439 529736407 525221707 977742196 370741925 372366755 83247653 927210099 45763879 147074630 657964826 140015262 537401945 774112786 971941175 217465372 448965061 743996986 899908279 406060414 227018219 603458290 898941292 288553953 654547344 216816332 504660195 229679340 569017238 573645094 134113049 371722838 158425409 115209197 856391472 574567928 161523 263236316 683558125 304794133 300184501 830355064 980955861 890573643 445876200 844814101 436133616 267119216 596040087 727783412 269133018 652577534 351826067 592551049 422759799 657359414 827804578 850370368 17592571 106096035 593232880 774569810 189879016 226686718 62100883 493050546 682205812 318561291 952582086 468746305 549579235 64954726 7213758 907500590 518293253 808820020 547684982 354499165 949287846 374838523 646257478 714178663 33429096 441540446 191344855 944889897 853306106 940848862 450538 204450205 724753074 243687607 334467296 349357182 962645005 100408689 209592972 686405180 730808032 808272783 473023613 595963146 551143384 830480550 694370113 38416548 783225525 427982295 249966346 958167602 964045501 19970673 102289918 157190023 540864921 28254564 414715001 248559003 678303126 587097833 806543108 464984135 348744365 673746010 854272 868611651 861429609 570543135 291635627 329756400 813370431 795102373 545877123 746723420 106979424 42192653 574442777 115345191 984248507 902972641 890096796 286696862 148007924 310458956 636583651 891193554 720221621 416023902 639827543 35054088 12111516 304552088 596010604 871644066 211587500 76108208 591049695 974297702 164832724 724874498 210407586 630763104 164282293 903646936 980202370 12227885 964415349 573796250 721272527 953093002 147830032 552260909 866232415 726745478 107624115 902234952 250974315 605901153 658483810 405658670 973012885 355322727 658656051 999259167 570093446 376751081 308653187 606019503 105650756 189507356 850707551 383245908 411427336 364362906 940465158 325108492 804498901 67498917 902725464 153022808 804566330 665307175 458273628 294384968 866985531 45309610 20524485 429926189 843459944 103411773 805023502 168546828 579228926 468371826 848529626 838628602 478064631 499259807 21587646 825917999 230317379 479568471 274731066 554894627 224916463 176254744 842200256 244837157 22292175 338467418 421120892 348865895 533178542 161777045 701934456 453142392 832775955 887680588 832696875 473298190 669809500 400899048 632841345 567922310 693565551 166827351 576718069 679520156 706689317 292594039 303042727 315326744 265552466 72610812 30542345 224013852 175133821 383754692 780995227 520733695 460141060 865249566 927909082 379037177 630034292 442349968 59962794 861483354 950965061 975098750 821414682 621231827 579060352 604633241 339800599 996364162 365704037 231745145 221920843 517505910 860899372 193559374 348967120 840910675 553078481 366463457 181087535 492188419 20380696 916291101 977534212 297844246 670855525 550883345 935332650 583107293 187504231 276454426 283887360 619466103 417127600 979114959 786560158 969521066 593387669 685588979 501716574 628827922 837430653 549018930 600684195 817628759 482732735 203588456 196016418 711974701 27343539 818472704 458009044 152682105 289283611 452931071 624757509 836486720 380516352 984971627 754354780 503190435 754500081 854812221 123536501 214999375 322387968 781723121 698906215 598021969 318739775 107150113 695614980 614670482 980509987 354378040 439578862 450552270 585830889 291955299 419273154 527914639 265062145 280955073 762689535 920199225 192118273 542775389 695067578 436525180 531193968 331621108 335421025 138543013 676508338 850582472 543176889 244823710 905598772 826513107 759834473 258801929 662846814 76652784 629184780 285806853 763081587 704527810 466879442 685233799 110685245 186053926 280708531 397673397 375020372 575900772 609026384 53508367 102846290 976832118 932211309 60336881 466124022 525676166 880542080 885860803 112566083 446152591 90124380 268225218 240617451 598039795 893080818 311480286 893286673 120381828 928257799 97353027 362823894 20246728 234289956 282036347 45353300 612464164 824664247 894924181 866971406 492804085 904881687 310057103 554706171 466679495 496819646 76290426 310399456 354839819 409433602 624894279 593713305 333893749 478596038 876506543 440947195 968272403 327961554 62330650 407610464 829664769 957728366 678609674 915408916 852220823 491250134 496296070 800741279 521141762 521434801 454964683 262233401 562366908 563165525 696574249 794398201 613765292 275554864 637444742 649908229 815894592 203844032 242007256 706494784 697151653 161060181 498220900 94626028 398441504 842577848 466940781 596354638 424237061 379139977 390187985 600738559 979684040 750206873 372410125 579970232 150844905 590811949 731090355 354095343 828212497 332932636 122277441 84774293 999325143 811910499 569001135 286846447 879085529 156130633 471859130 405077477 567043504 577686694 694611256 884768251 696458026 653059412 326433504 829240648 68996958 682493978 374293205 605509075 80262007 183503928 519842509 385010638 376930768 995567864 220522812 193938599 237814841 262663231 286446782 453802220 197582029 435679341 733132432 406121793 766238341 59477653 161172235 428618832 452085248 763934545 619580321 658143400 903058175 971136006 392455294 437235487 905620532 833550803 381525147 468891663 268781322 263908111 518976398 259966933 432045362 616969360 646227977 637868058 917825862 249896063 785903272 97316466 37251211 443822317 368954615 297955464 944814788 555713364 139005883 415025837 552027320 755393238 292938504 469032887 942026702 23143906 555053380 191274471 26743620 641323356 292417339 92935276 963289841 214665134 187392901 52584554 255810475 740136849 613649216 76840119 209007046 825279925 825635966 959286310 865670870 83254076 186100112 724013496 949577423 98935275 98692418 264840823 218500152 414749362 225195223 212599973 421275138 275343934 637521065 787189694 319404313 617332786 859278133 678006345 616847460 70747245 328761271 797494574 338168537 850752699 241938442 296520096 154942312 270454432 582868262 674837540 667528388 601649866 626542282 886720043 948520620 334460953 653619465 578877598 51855600 634372714 812615053 532835775 262350871 178165323 294628631 990618740 565503110 814122048 379241043 324280085 932078666 90358561 280497780 669690531 930539160 355020544 52793761 472235362 360287905 153152970 793000151 942728179 657281457 735978287 873786557 996770874 537333070 376544090 459215682 873822741 575428782 328348582 1841175 758126889 164922595 800883683 960236215 367833369 646063688 58145091 422162049 283687405 51867323 987181372 376282027 597341826 485832750 197248526 573874715 426948189 831775245 100857976 818056779 163333718 751404721 768440 622257920 368404207 529943261 730480921 955599392 998749779 19946466 815800082 112742706 934299665 756953054 763603767 855081004 94682077 448269808 677638237 663788142 182532221 962597893 176080839 444908279 359694734 775708073 343756615 404795811 214120703 888377833 773660756 132165213 217352920 348890509 81797808 775536492 480540827 855081914 973382831 836550756 20739617 734506949 638488123 333302518 597390098 276571704 365585215 104745682 886154657 874253826 358087105 699654811 601368707 959518629 244074658 284988682 313184294 380919781 520805424 76845180 838807229 159296528 966292373 611936498 694131382 523475557 391129064 640416234 179031162 59836965 767217712 177409567 368550685 393249165 291254518 756102018 537862790 605821960 626483625 88116165 412733021 464273118 802400764 801453340 848349605 801868292 291936535 993974555 323691214 187928835 593565257 419197513 319388568 266769059 227787615 383182815 214039172 927575530 700527152 379756833 707599291 420502349 717085652 583587222 946490446 224008620 207269241 444107737 525886653 123252014 467580894 236482834 131215117 316138552 270028274 622010739 946401453 249838076 86674655 193266654 558555306 877408942 167239652 219775275 847818711 849723415 236447769 72661125 410495896 217834053 371209956 531430690 411507553 867596593 55944337 448076575 811797505 231616544 756453803 759350489 663649532 250929269 420016976 366330299 489518652 418112778 822467397 167672816 245634284 141429191 152734851 655885891 759863933 765964225 66467995 61799600 561496595 412544617 100066077 323840995 826225726 766865235 679838486 580463534 866190389 897140687 504181512 532906382 465734618 994158647 37034533 227105461 413262175 272576993 290061255 414993943 748337347 140897367 674849284 98909379 723627585 823439330 210778239 636100604 385706144 265685313 686342608 194457588 575750095 258890284 765285349 53617138 300395408 459296237 434156256 462476311 703280133 244389408 783576803 949991617 377298526 554429141 430364723 854066353 110743481 461037168 470201344 389642619 931212113 89566367 852136563 203346293 317957782 390260341 997290482 243624581 951385285 967752064 852747627 266335985 50059261 568656914 506597560 941337307 935277924 370118430 41223511 192454964 920793846 397717586 998864994 747817063 523000871 11474966 115606281 491551770 220578718 879942169 980295004 149589591 650590879 12809776 29702395 410618370 253170932 605458613 449523920 244452658 709729160 423165889 728480443 728868657 933287573 846972150 143846141 161324520 849359515 838549562 27841516 500503988 68216377 891913510 454814139 902144604 94568312 764220671 411364647 551334959 633001529 960780634 357909016 494767213 917370081 777981943 897656192 323353452 511572188 266485273 477601223 508452810 894031327 115889790 979100907 723219296 727112895 734598359 945124418 906651992 210594502 725405844 61544748 921091902 366102532 620279069 858580308 257807354 847698369 79730453 274381016 569215750 127689580 615268101 42702654 332667387 513185446 934704025 422224680 895795912 559654484 810491215 89901577 291734196 447301145 842163419 281878334 169958329 494566547 39029487 403695573 70685173 888838705 616112659 581719722 64068654 798822588 299349757 609099687 679678929 929443814 293955715 693063658 335589984 967395095 425972685 737583486 207908059 629916737 835943620 22407488 732047227 458045704 228318678 444363602 176632475 852779986 263851329 109884195 144921987 232321451 173044122 570923409 208993922 895082447 803402766 846007712 813871920 712901420 707457035 16645535 886284964 776852314 521409203 720009478 921440566 771675914 371828768 944040330 259223950 841866888 271186073 724486956 308192923 638592082 19256657 452675767 855778553 20242958 989217179 200212936 482766921 463459086 851163763 390687769 775031462 970065882 29385363 316995181 21954549 93980319 603068781 448093675 809612924 339203081 332151347 378300783 215690260 66717819 744941830 455776567 736825594 27661859 385986558 828037000 312398450 198661850 530739714 555186417 29358356 471111584 692986949 300198278 616872549 553332384 75928325 134613516 454877013 873332499 742852430 635382384 3716370 177227263 72222755 241838901 145103208 972621154 611676840 579239122 280387304 498837835 492641113 102048452 727847752 722026796 823860750 285573018 140127417 919671755 7455024 362266070 389015344 908424130 407636455 416528997 77709639 187763190 7666470 175806946 968614399 377067415 681073781 244985688 85094764 165448259 860543092 561872870 112183720 651327252 937585470 150329070 807572401 179333589 51559276 533808352 744278407 831212938 939216950 289180110 111996458 494585169 952324194 554938454 75505787 585326686 676036057 22069632 515343000 264883254 793145536 487672503 512850297 828669779 260558225 346752967 879364524 121858852 202266690 422823744 490715888 670994819 6440617 993298321 599229818 105430133 593151097 322004674 847961103 382090585 878887854 701311948 808680063 809451284 373116543 453777546 410627733 208318535 605942418 197311249 873023526 745547224 881632146 577842270 989505177 739897202 84154123 496146572 205259270 520327698 806920031 930631750 114309018 274041292 209561952 733983484 438925215 40942227 125849945 497915743 100306235 704091570 748908349 85825741 287388274 693122579 123317724 330243806 425954409 533298044 978728148 144926831 627000181 130919896 499828879 743883910 982058110 27476730 997321900 659494553 642678707 213663107 409788522 790992531 667777445 710460263 15120630 925683063 742768583 116245035 790351211 992020688 714968134 18421528 922485716 635962697 531717838 484783432 778413629 825116946 785258509 802403429 752002355 722808259 489958643 28092470 183137287 900256042 229531363 660086129 882820424 809711654 300912450 591755174 240658953 831182719 865421171 151600597 90399928 597140540 388702158 898238471 630549751 768458574 75287242 45911686 760612480 765645742 945183 183517304 612027606 477730289 192596115 230915454 70446725 228141124 564880630 417769523 88085708 991863471 480095721 869453309 429960645 222537678 441528377 608054732 8905312 229000141 450522347 291445820 170357801 336340483 485718768 930142585 902796059 174899512 210647616 928068139 181500298 449608499 111714582 73339026 306372750 253642391 378294593 136144945 92033193 372876915 265378406 583165421 507437085 922488677 968169176 336387893 336521015 177817832 838686385 891169043 599896458 915763344 506578876 903629447 91906376 193395532 841037345 775808139 60144191 28421518 377463791 28660259 236699082 975588192 207299400 4433017 716380062 167101812 3341267 38985838 701460924 178578570 169847437 409587097 709176736 970402726 192420697 619036106 697945541 979703690 732557900 405619225 642084338 456290466 744266917 683257324 366320753 987455207 451386135 443761136 348581394 642174713 785434981 118444426 493419324 165247631 656392751 559597871 351461005 686980203 591296450 732042707 712830065 965919942 305946020 11998289 901482248 570723629 194895759 597468847 228766331 740815837 805770390 832911632 194241183 702137725 4574474 240856111 40583145 624913563 104720088 718749704 811556957 550472920 114849646 461978571 925237871 863019255 663156867 399994097 403255594 447771424 604833242 809126612 904886039 535291741 207658305 272469955 129371786 375039626 224877314 397086919 559530651 677043557 427780290 329279991 993916251 637117842 75023128 950914051 947712945 277930175 829630156 936113525 525397857 377274572 431505255 436428972 631062787 423279770 471242048 671840965 612993010 993903531 925063499 388299343 55837099 49324388 129639413 826333868 303166071 297413180 149261970 491541020 625302098 709196769 698937021 996028141 3549390 560842583 977614318 444293740 706284402 98628205 980172420 996623237 966145679 165775887 533302655 803208820 564349979 241669653 646548335 127645541 632146788 485513398 431344898 976153556 486504547 413210140 264106649 273623581 463114962 734788277 528574609 754840116 914930033 869025853 285208314 197106262 433074539 813560529 166858366 94959193 23068615 391238945 705581506 982882999 998142286 409935834 660611221 416683274 711727909 509235025 601169608 506444916 638807798 195655846 952657685 525564736 131338966 441875163 108787233 883010950 405235758 532229927 808238113 372935860 578820265 318277937 407311246 331433555 775849222 15127426 126948798 115589063 218616579 991157377 419274694 253757926 154185568 912672946 402039517 33860381 791864676 323555180 637683354 60618034 736047039 943333316 921382882 287124089 515770995 551274405 365895338 665924711 189774492 315043579 551770074 19007063 970359793 773520184 365421154 486785559 579881329 252396868 859575988 821934898 5657867 828972205 22120510 735436018 77516049 826331468 709239907 693467377 865263803 850975683 241085244 145730577 856834322 824545114 385675877 61094204 4044647 975238535 54951687 938862949 366556077 81345776 741404195 924005339 819489217 605285584 86497946 539216134 624540275 587630922 192464516 848565844 427445828 562423606 431838536 194224334 207564311 579514683 18775775 612741850 405398477 195551442 594694499 114686845 533948244 681424306 636972904 783458808 899321542 686361073 794395436 414325116 239521265 580242808 143556070 948090014 533337036 489016687 747147677 668214976 347255553 462339637 65228723 377902014 924204670 123572424 417400188 481240452 231403017 343413456 315531568 9367277 167556432 127974490 7000858 337745363 827571380 157952114 665020849 927526415 334071955 41046850 724638105 967441123 407181308 334836351 329865627 981549615 475090534 709351202 787832049 917032706 369208761 353256409 139455316 478628309 266323538 227944194 113142876 992745170 481506580 328465858 282578026 847981532 614757753 134860060 94242524 662836014 445134052 467078203 87053240 790695266 674027700 805306502 688738817 610575253 419523918 724742776 402012417 396031461 119087653 202166332 934452260 282015476 352097807 565158705 591929854 255681531 134727683 524165186 708228257 579162438 407114624 341659656 205066947 946277445 844543853 543736226 9026462 274900268 55344788 590179035 12685471 163542800 949673493 332191375 468318180 372696893 869473664 48515453 213518865 483976613 843317383 672206649 781126567 421799728 629416739 346274055 18369173 822819903 485631825 29151659 327073133 469139473 217392738 337016960 823172965 434228108 68617164 286159697 574215502 577508883 780818705 220811875 38925119 390291669 5948718 63175734 64908380 579379106 599573310 395105579 138624311 302450652 962167490 47218643 890454273 399569300 20071411 967273204 456609096 426673262 198143192 879996683 258621261 447547672 573720282 161963870 528817254 543917623 104425913 388189215 92144055 305484637 471108812 976082462 768006085 441942770 690867457 363460287 997510060 662844029 807627465 38955530 311539308 110075004 559160136 816661022 7528223 166648049 430499650 924679206 350773665 809140730 360102635 719867663 927969769 55943872 226093065 200688697 712381917 40858093 822605903 669681850 780126572 983678692 69477499 377400962 23741735 604138237 357318884 714250596 847387160 528912279 461778260 410623311 152599976 54817825 183356379 96051121 79096984 857117067 165733616 46006158 634444443 126933500 587786127 834029469 775483306 467476729 202416597 343266849 125890002 180973402 40984902 195074134 537231816 855636641 147346574 389794550 214413354 926139493 448111326 788676759 313421237 53533852 387987695 913891562 780699830 332591866 443205242 745365775 486335906 68781544 934458069 166419336 594770569 176101002 779348478 880554424 541389906 532942004 229235245 764116118 825943455 356912266 968786677 991151362 107012617 979595776 984085944 217934416 109177491 7656318 41502329 407171852 436825431 17109327 164850080 741523227 981652120 942372578 354618283 547026965 20065731 58587195 232576381 842427157 648672239 505793585 656463997 8995913 911007314 811019115 567866919 388015723 866934675 539906997 837282119 610942238 177913470 114291698 837550920 878377755 560774958 997364261 416197708 628186767 554691244 950629812 619608198 230578065 542736996 533187678 108140882 561245588 599026784 478768248 799780917 348881786 92097535 818403060 459050228 149618284 883739235 935948847 322496299 224684809 874146182 350964295 249768271 615315249 738937954 842237200 784584439 16158791 913868422 714157861 541316611 382735997 85329691 43985610 864271389 742030142 76051293 43070631 535287260 241646157 554047057 942759106 793341139 244079982 513310973 578806730 113896092 132401739 755109950 273583079 681036444 518876795 88210360 167553391 213200556 104202374 457589094 231008878 235470890 734071021 856613040 903700399 671786391 64271121 973294491 342706966 460904677 62104042 761965242 999258983 759280856 545507703 215643126 611221382 290078342 698853906 94299763 269158237 475624832 283762754 385687090 153668659 675425236 89762367 565898602 693546374 516061360 335721632 941486429 793309776 973422697 519811176 889588257 913761489 477166344 694611342 147152760 212624471 941032837 762846094 652389695 38355734 214039760 396351866 139028160 449297099 596533945 128824603 436904413 875016639 626227642 551118228 502752287 807878970 281130680 903657963 421858931 837398726 105311954 884248211 726622706 372963222 728026977 526985376 897532607 849482346 102151991 880919504 350023896 897215989 234725842 593493083 648289729 841462426 121314173 657197624 701427056 694012060 514099405 23638340 826442052 756107386 700959780 331941154 923402692 736384671 719890497 219354887 676283305 47293375 503189239 957603865 550485268 231527955 38666731 550078830 160286153 946103056 444669557 653851964 745461193 501338286 135180705 419119373 535084166 798728494 908455461 353105343 953729114 1054962 948535206 591193137 331286468 748783095 558669801 954422375 406919096 468397397 177404813 875546303 232636986 779739697 305234777 835225608 433293164 446046797 801808442 630604448 278586343 97601072 935920563 863365815 420894556 658826335 332110745 867643853 510819250 638833923 867381747 98120705 857500441 411789242 143946671 524047857 555838112 93917696 955778275 938073879 383750935 92579267 723463139 545178789 909894361 946086917 57074477 30769890 646886336 236312728 13955402 767882781 169132281 885644548 960084659 791665520 568319003 368306938 234785822 408897614 91005374 804533030 770198987 466005231 822469088 714807611 199133865 303302370 231370388 303420536 476466095 316911645 915981735 975149456 482046142 782558617 52447429 99035739 205931687 861221419 629197601 377534423 699420486 597572562 417680313 846591814 820848140 332439392 104546898 676967525 183987880 5690366 842636767 738131829 559653765 41473437 773237684 414325573 119378260 727756843 633960155 793894268 302045306 53439174 611474513 454140697 995506635 331003693 297705844 426842133 357412262 335483189 868540310 301324517 405311933 732197812 860304829 589916593 56578484 908606870 390145425 12305414 998758568 321324887 951407883 409026355 671889426 222324307 778686323 755636406 499378890 944335552 358464876 722403421 712246713 449491567 23785107 843953399 259658873 551306855 129729442 94363488 814215100 695228608 348756993 642479049 789035494 293961064 661937308 687253979 539040375 786709803 29257910 764651849 135745927 831439671 245090507 863473255 616931274 260287208 5335413 958583397 321059473 658914890 780681836 447688251 430618798 338423485 306886819 587114512 146854031 22925492 799239758 716347966 437383656 422338725 238512355 3436970 103543207 424540699 933685429 998783744 464895495 31238897 611290600 599869848 198500840 240627688 103316928 996651057 223801867 440613213 349843762 248308384 990507380 600954776 977922806 105090129 317820588 917916413 76189176 881017727 512683006 63150828 841070372 508445727 533933128 564353649 719156271 609935805 774987535 913975311 890781346 170439840 698401790 775537291 693005536 744028882 312858069 386013358 176019483 969410371 591697859 449128244 777994433 636237295 231265891 526046275 718919108 488418821 323470985 378231072 355836639 268468729 898274810 785095031 252972396 415054471 488087312 488279877 27236805 167943555 843685250 523175450 184980194 197204061 223984749 756528653 352211676 435689558 645252201 94167694 374341690 374905800 135316855 405427610 178674888 752764313 641990478 195608153 655682455 462068158 913768274 239206304 838060863 400342292 985958241 975640193 478007618 241071328 487097268 671963403 435183970 924380794 396927049 375343335 243416439 397220407 506695224 451450218 326389838 545223513 3946373 171658788 192872467 254035216 858135623 86524203 916266928 298103224 195277221 786354892 39249255 458781480 38333398 103113536 765111399 283641405 463530752 93654907 721528417 678539719 228475355 388638571 461073598 950955364 699351987 318208054 451110105 634970643 163177833 996846261 325919683 855991161 128256353 833615914 621671299 490649827 859972592 888690065 327075253 748947699 338219888 959026505 275605682 989763034 222083713 846180407 244979724 972581154 350340341 635874628 27850769 733331371 497343303 73056351 756803387 351291542 524208720 811658695 913449524 663234118 889759904 988941440 435694622 470118107 628783139 187911094 156660785 749531525 690628231 703575174 983787742 202351911 544907760 63683091 454275084 455278799 903743904 70864228 726105650 688686280 457335295 925334953 108667908 113558006 116256861 851652745 39762583 575694876 867100516 548352634 994213159 244612834 554931738 79958104 569184027 258627906 367029911 769728404 904158785 574327248 836395819 243153091 941590813 39069985 575387440 949808510 704884380 432118871 108394876 272090389 132723101 188063135 847571558 142973669 333229503 601836804 191255985 472870183 126713489 257273933 331790267 495153627 811278729 367471173 787860320 109546542 344351038 592537584 436604371 747476004 233282286 200663269 429725908 424060336 594305376 957266753 850891119 843230419 226276820 479012166 797194594 119498905 127791599 490419963 937571720 632162073 239642579 289524352 590796341 147617209 121170631 15027215 407308598 481211675 740948536 330834752 613654592 690323619 478924413 596435139 324260423 272703569 261824308 805436932 97554894 535266625 940657022 281970562 864532716 260227501 603864618 623137615 229183773 83377903 75831529 743847469 918255421 735642091 640028875 571259692 347255509 731055322 790183710 707010849 485820427 721502304 958798313 302119099 651233404 697315951 135728147 496770398 522952764 12428019 711720327 256900315 267355291 181270134 997019642 451655539 819696329 856286141 137784975 268309362 213879066 281505016 39010096 927841987 598047440 535968416 122756816 746584929 358949313 419457894 15153250 404023936 479359509 888252785 193991317 522610428 741304485 979387219 475213020 841994327 791973210 528605060 118044313 499381224 474211882 242503732 95966344 844225969 800693556 864283369 111715755 220215767 402013857 640937593 306668855 41214718 335434192 64379052 203111863 203492111 965640281 933808608 472111578 491339295 161236472 412479640 637801722 251921830 595185288 227091858 518452504 416053607 466317685 340523385 491856575 64594321 138240628 823914388 457006522 38420622 398631130 477556783 942358786 154258700 678206991 108459323 419645393 26368733 929018937 26992970 383634607 386360180 392722632 787491855 388685858 226421539 897083844 458657739 27188720 114328299 380432650 742743064 320193524 861633205 734407004 510404827 257742466 533377601 175272474 55951925 83735350 995323087 796723082 522879239 629734787 620685894 96827689 560512904 301564968 978256254 517053590 70058184 395171787 848276654 974498750 980904544 813008403 582217892 840093377 117353081 471950423 718112101 607719528 240884712 408245064 442561305 458285239 138771160 866131518 565920086 14791626 890199309 804344958 805606824 41754555 743115628 838087447 10851048 861911495 682756912 418528832 319928125 639206815 779914078 747119442 199610787 850240131 679250247 918625334 282008223 77048484 109882972 575326700 221063509 197917785 644191541 883643875 893528641 149969421 722208057 592115975 932377720 483952850 121105496 304399366 770251500 650302172 920881181 747016095 326903613 261801342 11041305 756633647 452077103 108884862 217078470 416692899 696054294 554879895 688376673 504465875 711867198 358329258 583331782 243085731 557116166 452157173 426406259 254189160 35806980 760369684 1459294 767994249 382858105 798669365 621594141 965052799 388060747 43839813 875850840 643027665 146699506 920007263 523795738 628270926 320739702 431976986 367509900 512645674 376454492 877936467 797027157 627627198 644802758 918520502 923891525 389436155 31162508 522282920 187902214 714030431 796745694 14169777 827978430 940183132 656642848 566040314 396285166 596465250 419693029 984395938 909635807 85865011 458313003 996213964 322635761 100504431 23655662 470080494 281659294 650193669 396627521 503816763 140894663 375638831 10870895 144928764 654912945 178162590 634671211 820720925 571876284 889284349 683823943 301268423 487904056 195048279 78441564 883875046 400831190 122362816 881353797 659044436 5003129 543196979 360741596 462603587 101147545 176378699 360071308 503980797 187666850 283960153 190385281 807407296 237848037 277926812 762980101 731471722 131570673 347413420 83088751 57985527 494899388 271998060 387613180 266279166 361032687 8736497 785915365 552108274 576491725 261651327 487142455 462565276 595663714 412968788 673779970 684818048 533900159 682602484 639385307 875059136 645972343 97179141 750921745 85598522 100363419 298916152 984616419 200028911 696388168 682189086 805579844 712388804 683948867 680592069 924823419 847177042 240490981 464078775 278483839 698887073 180316105 692658869 552714619 310306792 163516866 552855494 834438850 49390426 113997055 418970536 783025566 222510965 927168027 952853202 944122209 95811281 143182210 894850099 547190459 814398560 672406171 337863340 487946991 871382271 835799932 697065196 282281406 385077094 658225408 717203693 743076504 533878384 501003220 951889354 151116252 531596900 970283717 359113616 296110267 696447774 974501403 665672843 741977647 131755131 956617681 925777487 186102810 701611576 965808457 125832863 168750016 187652605 846527075 142236867 299483140 857306939 406228784 582728306 442005616 904368124 934813107 617153222 479945672 49239367 315791813 486889516 423620908 52528736 801435389 630868398 196144803 212567717 178580056 946280567 713702854 681403261 509891053 67010009 407046407 238022771 477546848 493978009 374062411 355836913 115287348 268278566 15845751 636742494 106548510 567226403 84103657 971676614 418783509 628448799 12265210 467341634 772639255 950647221 203288242 412560873 536033754 114873068 513944980 33955904 620384202 691404296 553429167 611718126 770143349 665593688 335775958 105392894 38120777 830809682 64735388 999544096 365682634 416707207 466713974 667659997 460881296 696497268 348713412 326413964 891824229 5125223 223537663 118574809 287942354 959047642 496600234 50268546 761647164 718263728 19671868 70897832 298178118 570587696 48930521 676059291 512745426 881962680 688373632 521973954 98872778 147368374 645436422 458353738 31652427 195045378 516553790 776311790 569163787 780384661 352802431 969517924 138795753 510699812 529807471 37739092 752760978 677392805 276972254 341471921 590495943 660700239 196204398 717269800 339528196 867203740 798174148 718795363 388578725 983296791 387268141 91298686 372360447 999255035 916897975 471776359 740409962 737987242 672151565 528525106 5227017 409627435 110934865 842594301 921579580 342672891 3263049 283731260 133593479 368185403 671301024 829636127 954532807 242122266 757513848 376361318 966598269 265905296 808812493 634368242 739509825 294322168 355329542 610551342 84553938 27312740 437971704 686908469 813299868 850637222 803484394 179663418 167386269 811165723 748570710 722290738 667661063 98697450 748877630 341038699 427176413 483852592 236862254 252854239 50284034 36928929 471706535 449806901 289569288 463264163 726798456 179717629 380753517 718457027 538690159 211617207 149589899 80726286 879715626 819928488 581787448 711439406 489002194 915724155 1172063 340043595 960649506 203858161 32586982 995492619 970890901 718143721 518691202 742172458 729932892 662229462 567009525 591138428 946844467 109310761 414896369 299661397 88372526 660453287 83098800 199635172 404170181 724043837 333596179 141122412 182336709 283876919 224387856 527049996 145024481 901826376 435179872 387547367 400490104 459191022 465487767 996502380 497065185 652241822 439686483 100528159 305875398 826019450 912864330 670844080 764712031 179943078 173416762 816759467 138929249 149976236 298600404 750445126 35169276 279850827 570663733 62633605 62131831 298781916 459116263 754794701 904792914 778960509 999150872 25437877 265153902 329723436 870983158 387721535 893145430 348343333 504561402 24623040 706174271 915174309 483720320 918439585 115027960 711609630 500487900 170594029 562794192 875867187 109065847 185038966 265946611 213402959 299777729 833916862 230127520 986984841 535023352 464754014 348268016 36269341 865291046 648483706 15400378 697684330 622945810 991372175 349809198 941878831 762886888 557952231 361787734 596530954 884426410 960207888 614936141 904196817 254157918 873969469 572804211 314716744 275539453 438322868 634075206 82812657 582723933 422594795 353760884 732735344 894776058 940456916 257418284 496612509 473752788 121503884 390721615 582332047 817267322 319961188 739847329 622705781 894535326 456687273 644208414 995158347 970082281 124105319 917627946 207548610 571962985 122529581 652241543 589455275 128604621 225949897 911471224 897074644 482147438 119770004 563708612 551888924 432329801 690037317 553083321 544815662 289499314 343012258 778025712 907919936 112289904 329828877 327041429 922419746 664357481 697436077 724823953 959354889 238732015 877845261 803915081 893596062 703972124 732478399 597389987 282453853 826214346 148468077 523965137 806941068 729588107 980467030 200110356 37980251 715469979 51935909 448665801 129527483 181366199 986145012 781879282 771903860 742071177 352505855 459586259 899748954 555725060 215414272 758384468 150548661 256780886 876174575 92298970 992187028 250379643 666995256 41508186 410530159 376772235 665635590 614368685 155890375 578937907 487673129 281110581 627046927 339246309 344052132 21211893 349043040 605706462 839266924 430223448 796575087 561033134 407103012 292107477 470946446 183910616 955675143 456917376 856162021 473011864 447796230 297862886 82992740 449943893 878289049 434220622 590019451 253506111 948309893 525467227 115718501 354732026 95311208 134002418 583825734 500678509 1546917 719770036 152622777 14713140 594422377 16481540 152849651 130746485 111239368 44327128 269200882 300791098 498157556 908702551 585927729 498444432 438926784 954098253 396063909 703011552 50797412 161367149 725003379 850336536 840252227 383438049 846019194 664035007 405202690 159133325 407344881 431896135 31471843 523700799 371432075 111150778 245163807 111954478 667400931 456045999 688516459 418550423 389045105 973711241 434518164 988033390 553387833 32579471 497384690 57015517 901347645 452461989 991775967 189667674 571680311 511399240 817919385 230268467 148342457 327618034 533317084 746277396 153718331 470405799 330253132 99426720 717678408 693642156 595134373 238593230 53472006 378100990 497544631 56926840 33656773 321274153 803821114 485863962 184061212 203527407 724692978 981530972 614640745 700051753 50780727 683667456 753307395 561340438 501539949 780260819 274761019 33951326 677126136 540002544 499559006 918318037 128144567 536146692 592698835 208915055 749786431 375210390 691876793 612338942 886194032 317257973 826354093 650276610 216888651 637112189 241858644 192789655 979907063 829915093 454391464 129526799 628376293 496037909 425914659 657606843 335450565 992690979 188617380 362145868 16542952 224605702 526188559 878214901 573343686 979891762 968098094 887830726 989094079 449735123 423895395 107923294 871318267 940673315 807578387 713132152 382474327 924399342 805981364 542154849 562157054 848521112 29127302 308629364 13677772 63873953 55930676 455303974 202625533 548430499 405279313 858890436 847050955 531903176 963247144 133748307 971569123 328341046 180031089 699817012 283035296 3070634 146980836 759058025 133985056 25300412 104673359 432998042 625110704 289140371 491466458 194596257 289335787 645296541 865592782 406487491 242474160 360131591 616163635 94643118 24784311 258515496 9694011 195817507 318123063 871258413 159875037 527864715 231579623 266115674 60025803 708570109 442335261 452075742 991978225 980129000 752451473 294003041 143871031 344030023 943449318 681765887 771273876 253019482 514717002 434179314 230280489 40747727 622901358 23912161 670385668 301360245 601244047 664571911 409272635 34546950 140977819 726798624 622043790 309966964 418941222 453571424 229921219 705975773 800024100 96348193 925875961 787867082 945261790 724289772 260258601 185940994 572151591 766184571 228297134 835326314 902650245 101549992 60473137 456038551 68470367 445402898 197541856 932252561 388155161 822834466 934909862 812684779 739341971 239238788 286524129 875982990 843730825 614212603 32493851 8575957 572663303 35104389 658386717 495681102 242108788 957577555 673297531 551415220 733383369 355088973 895028745 485451550 176591792 168782518 294124905 180685946 132569358 295993105 534961752 556655800 917498086 319171425 743894354 619671762 904663082 320770317 888587951 29322103 644846283 609498974 870441255 958624503 962892725 94875594 550702401 217957910 533185665 752957268 820169673 150913400 365437524 709138665 836637379 711160779 261755575 332609904 715671392 451442601 462816108 752432364 472392867 96733378 200943628 953547160 333704763 87525682 481992628 268698149 1140598 39033456 957490897 205212689 932683928 129414924 804080480 968256859 392571504 947899244 876836224 707159472 863793667 337106667 311233075 365103409 921903372 915885077 802799985 790827489 974774064 19330772 595778360 27703326 660794866 449956935 789604742 524179752 376404634 386020740 397132805 669086847 946414969 503601924 217389036 184716124 418486141 854779720 542255633 154443234 809749724 478234398 258626171 967636607 72458784 131176657 375368088 445933729 781449036 799194185 146304221 166369462 713861097 744989178 338993824 534720261 6524566 525717790 760008728 585965606 112347067 909300878 494094273 948709988 479623903 520998813 150127677 852406854 960209056 767406426 205652991 785407927 533351312 185657929 374949633 560632911 302889239 688319995 172493598 199097 512878427 811003280 974012274 144506336 356785622 709293456 499132820 667268411 719754287 663854442 84192576 304175993 169671492 392221905 134581499 492575849 384388013 810618497 187240579 515716709 914196487 630602796 866966034 139942281 781318572 576230909 720463950 709543744 752576705 933555631 686172462 745874480 183816651 933343551 834197232 692020834 438018621 870444614 228106746 876666383 301612342 672822318 427315865 858554913 641477184 306020564 73073232 118666235 295049318 272564124 558594206 961137113 663456908 278980932 165639770 949349490 834981786 90906458 313509808 549350697 211191600 268317383 801232249 573578414 907963394 265453507 589185986 913342943 465219865 429253535 426512769 482288846 713531201 770748686 875299445 29317919 440483549 41901581 767047153 417790613 640730093 124886972 584131847 833341015 349644804 271253757 886410988 327878418 400411408 380850206 687076404 984260646 137363619 374693422 675372433 743557495 491771025 661379871 421311887 935235592 432170747 602661636 48263037 256067967 830418900 200670426 121427482 251275998 501093294 354533317 372349459 559191676 325824500 387319767 601504227 947825091 641578298 129174436 435840890 41671411 328234371 128094543 486760261 551993547 60405463 651788557 490021051 571530600 154564848 10937514 199842123 839696862 602202592 609694864 349553272 655097518 646150565 683160857 973330009 27532053 143615586 689424122 179805450 117138978 810123542 183052321 662115173 981476355 188823412 234570088 240060796 907460331 400481475 784206053 240362335 614713115 627581160 432889883 485420098 554092694 695273413 743376517 64664551 90843128 843880768 820105446 852909885 108100675 506201408 87429890 784878021 265559532 329290561 299594801 611554149 270260435 118612644 343447895 248552003 125349894 910443092 303429451 562513005 789306696 815178305 567672508 211573357 844991718 254630936 664526077 532192274 811493435 817583842 476993175 79769701 80316260 423215985 893210535 385945909 36126117 105380281 881805545 914241489 640676659 993430955 562592284 92520071 102524890 61775015 982000576 339795016 490649681 628043665 567179590 939725890 456996080 18626006 602618158 159013841 925599689 199476747 722297514 459213271 242487692 202897965 743090132 253950352 920834458 760732430 914730317 724270449 192718540 743595041 178154142 102108967 406740966 451428918 616276313 597746746 498071181 147022896 120857375 960753838 220360640 229754683 899359891 434782275 71790437 535084489 543562976 482388317 481674884 442749916 225025002 774766868 421808854 48314801 910066975 516707589 807376099 617017053 339351785 841471642 216339173 382085059 434509045 660123133 247905802 945248196 739915906 732050810 796163297 691562127 967788902 848824578 539404587 850927643 543433553 130441469 857166422 131799001 404757201 769005327 257867470 302857550 230374175 758913718 986137820 874089384 888071729 958380097 893792106 683995661 34059831 990591153 844212735 772227391 294103920 392795503 618162980 988692231 50729121 366088755 232365234 281832180 326899296 465087191 52917653 778234829 627205471 297821882 813991869 34849714 393182249 275439591 302851548 961195215 919039015 537860187 618709988 595344005 789068824 916682723 807653739 707925694 188166201 696124491 321412211 216971375 883869120 226699106 922852561 665594057 710177588 557363307 564670144 872013572 341219658 662934648 447287362 423241711 375645523 96262949 194798644 541489292 814894170 34420484 8155891 503863360 776138384 575234620 228719373 358861580 829691156 142538343 938984855 885972249 848934457 39748068 759148686 175787205 83423687 803377520 758005939 904798261 538816093 430785553 164801344 582881040 780979127 479249802 858810478 819542451 61013061 478067044 930667261 922751285 542586069 332777672 537923504 633097527 772664349 791725738 128255702 998542344 993931416 905801571 103033135 147152655 912755550 904375848 769359767 519553840 152111423 461427081 323395439 177668775 77800883 250014817 523214578 136821751 170413777 162812105 157622370 660491334 418906788 971282013 834913450 262739723 587613308 539702762 832231826 282337490 679224391 766531765 500954624 394254700 844209701 756660460 926242541 259485029 277777414 536893209 815634049 857044162 96912117 646138912 847189177 635557209 410166259 60952818 589767295 461028883 233241657 948388604 834396453 795885715 531377110 388221856 358918287 9636295 736251171 836028441 290556731 526667631 950127200 405414142 518449053 494016853 528737877 504806625 675807279 891781861 382399294 990234019 756991851 468794612 237042506 495546322 241363318 66667008 250589779 338012303 421771976 353682040 883597103 345701878 399878863 691481042 144049842 348974902 239031327 243714910 483001740 248562831 645703725 84855293 921222137 500476306 139857807 202566564 694839473 533596101 66523458 315289615 420298443 378067019 26182327 457338237 56304080 824459824 514274736 307866937 519000771 615882499 954831000 719050969 835272228 286147445 84555978 986535995 511087120 84039408 559798809 507667687 619407703 37485243 698269425 399497442 655875337 878000274 96501178 153092454 911067384 391792554 534875129 25057658 868870074 360542625 134920797 853861611 90307450 365760417 692649802 666444556 521821596 216225101 488378218 651537989 527306887 135876606 365070025 11360433 316135963 446297193 260520100 876531952 945761440 366903578 43387997 378641814 82887247 883875957 301261738 611645808 595180531 995703276 148487698 10174710 32160187 431428038 662139942 386332050 643508513 160352780 403623744 758306720 337693230 772507916 639499993 834551809 729506692 9224967 817526408 865034013 31578566 365890015 80011109 284916093 555392804 362889474 823248372 610466062 819085070 842484914 840423537 149472857 522206029 214646044 383234548 363014281 12095013 543904196 286640212 98791485 50888343 774921858 584774854 263360832 588553330 73242462 156082551 691559115 12040240 927749080 791097719 835804629 300926305 311510997 891197485 213950798 691492053 493055835 379252119 147362826 613723543 747179514 88309462 440820442 370199596 481790709 965623176 730193676 981430002 336632366 117324503 286332329 553801576 916961219 737469323 599844749 535419446 152730318 420418689 243699175 194468509 788158635 2217856 199359261 593529472 983610248 101736701 90884531 200226541 107447436 312447890 427058380 109254024 581624009 274049167 237444620 316894969 759250608 363481297 223586977 451618640 122572316 529957284 994513334 541264209 299219437 611086466 791801617 78231066 45388054 245568647 484116294 242880128 10305895 538734903 535080435 601972988 399979315 718567792 883050049 524861876 26097071 511052027 45463479 742506676 602640809 172814266 905199321 649414290 888398601 327067605 692703072 252574204 186808542 660576799 144822090 789906202 955321842 761143148 796896544 958687760 116745184 583137016 856356968 725735570 353591460 325527309 726447095 991831285 732530746 319393928 989247415 140945866 225715652 863485156 171426499 915964476 65467091 182123484 765116761 853124822 80105307 708092738 826630250 792264612 992126325 572860866 395385346 234545490 324308926 51381203 97767527 660044222 205722170 170512612 316864842 31556378 71885109 461429195 876351641 44946861 484180183 233649408 278649914 927879881 457622113 598289236 746795142 713007438 23661087 796262598 19920041 30263961 278945793 31521796 887815805 861474612 209793904 615645241 443579727 678924755 925951742 419557649 761348278 249335867 74972758 739026440 548351605 436812760 633432719 213544978 956172568 178972459 285899759 585640660 308862184 494703718 697335230 820362521 392362423 679868059 823867858 255152192 315717936 746110876 576851001 518632209 187095327 612471352 904763699 145761519 38933646 898721314 682166450 127231159 731731471 470703140 438551734 423004281 695704720 528938221 754053453 299453856 899111525 382035318 166010991 47727791 38892033 218585913 771332121 906995151 584065059 339227112 251272403 174557759 339026723 638638553 857704343 940268115 115439808 151616654 9196304 465153108 205081479 82041000 41659055 680950265 579308670 285806189 911015051 121611247 477095842 947939576 65461437 338681727 490374759 809293716 532321662 604947465 222804809 54017269 415170577 562223295 975061939 61975741 274090790 467788874 747046143 580763004 729202092 404099937 342331652 162956787 554791302 565565620 93149940 984563780 564468966 138176190 245063818 21176130 562732949 409806131 157490620 433738176 545918525 357780919 809865282 823175862 581320511 861196934 721301676 208010982 749480062 159429315 238731557 28830480 945409213 378748286 225893300 168154107 455780681 335571039 638003714 522194726 802931699 298243327 564870546 647430979 476905010 750065086 444667216 652710483 926236964 567011445 290880140 946253458 308236106 636518106 867372698 329510455 638464590 480021997 218103322 458692860 190694213 988618420 485529490 768074619 483038478 741030152 187891235 442784429 481845614 109254525 342742270 520561803 70966054 406130700 365782363 737656036 95783926 749854116 326187486 740367295 890634247 632840199 685938439 196184651 478984244 708747687 406667565 163597106 57780993 21195732 911167430 473347906 741055672 150404887 224098087 905109368 179477378 430629983 163856553 997194868 648409983 717262490 34815955 159215768 502318253 493493126 933841506 667931079 563293759 532600455 744276274 708918945 103981267 806067395 966083696 937259647 397100189 648974042 760817120 995688340 140426397 156372721 123402234 414547063 579375138 398496625 406358621 45752823 296286847 940821408 742725608 584472753 663306987 957985095 892569930 439777737 778348335 654698895 542903040 797357837 568833510 166577980 137517022 463696321 481850862 806479933 79087294 244088557 989747493 437603408 423778687 179008249 188862561 160714334 437326994 976108171 812448964 627896422 723749126 539044752 521497444 366225799 194702252 911478652 446915949 776260156 160466493 88000469 135409808 607635030 521625458 125987843 591551613 541446971 55031896 870325342 753185416 491692510 996421759 60580083 401743613 615656566 24005362 410167018 903638130 968812831 7372502 345651381 740089222 969387823 628056124 330925236 730106383 965987325 975651258 601317354 635193511 104692297 889559326 198890575 535432203 62353025 490761308 273207553 77617867 189086330 294278122 19805663 853881117 39185091 429344574 166080231 896221877 832505171 237898434 246391600 572183376 748379851 436113611 255679556 195432577 275278087 498074333 17512651 405294545 965952333 189195673 989610546 693043049 683550743 637193783 775224099 808055102 932834481 555977938 311384501 949718441 644655334 275743431 410082528 232163922 79535341 501224942 931450524 737266277 162657225 586680960 137162705 633806415 882434567 583052024 771189595 782609136 386940297 506200236 579424017 334813692 389232243 887746250 201337425 831574398 892049285 253492955 444754705 665940021 569288818 710673799 216298517 598195249 226151604 244587900 637977483 984761541 859952845 457576994 312992737 659571640 787979705 427988015 66481371 855888268 14760761 359483649 622431353 655217407 634869830 224788761 306345326 157762374 466503883 428421497 704715758 529547032 956003389 870092952 207669212 910868337 296745436 164767068 422004222 730374982 811922733 580428188 5065317 30930887 905844215 561269569 425791014 310094726 561054841 12887325 203340576 426253537 260410010 952917954 402124991 770661928 569987139 827433041 829534580 229363369 476347610 528093676 700530013 394165856 405744651 986898415 322440651 367502807 489779002 820791354 594866399 762991146 682098666 577885557 110301177 30744391 218241140 19465286 948960653 767294995 125253498 81211000 357227427 184023990 470439810 35230076 755306940 256305766 688811965 114650911 251544935 979923382 593422528 66569353 606163514 457694575 22196147 354763908 696425670 766658370 655906833 851435931 170835870 340650179 649537164 999968570 854223545 713849109 454576754 832695508 851835310 255239899 411479960 495176982 759069607 6261336 133069093 407993725 979523371 420181024 551421641 901841352 918997962 202374675 939233800 888566562 359603839 431609245 372361961 914314468 555734439 207802206 402227951 264821687 444978021 974664962 769588833 391332211 605284253 291128870 360950208 634286780 643867518 378180079 425417497 854555206 31071032 583790020 569625116 327852723 889004770 453168772 791238641 117210940 302599658 533191583 570132699 102369079 169180481 705242988 122963585 542337356 191552665 544169153 903886564 603870116 553313036 288921849 67427545 539886386 222908027 630166114 885920002 461110988 429023089 692736276 761416225 203704123 347151496 717061827 247394390 140878559 970083005 44143724 736682478 387903965 197709845 485795760 736969117 747243561 658077255 103220400 436854355 675392009 802259657 557571297 348713298 643222993 934219198 964325672 651442298 167126326 382864813 389533447 395982033 428164175 914953420 408730998 40306835 978081379 905411845 465340525 520343003 669056875 302022931 720451083 907416077 228698340 595530533 690546327 437696360 231722587 271254000 664658119 954497281 254708856 970524762 94276465 508158228 594743046 925724780 935834598 256021919 977576915 437244031 299667673 51400933 705263883 746036437 424032939 460405012 760626016 942987045 662252612 977321310 566589233 166909542 941927757 662618214 685991312 996984491 762333388 656105181 689947939 122608895 363598128 632957591 739794916 812326017 907325885 931452088 509829191 929002599 915122560 783022220 221582362 146341690 34236311 780193812 496095598 431235928 795455480 173648484 150782817 287365894 382886219 457666321 719468792 515090824 595586138 512447029 726846013 792855563 473107701 410281871 925364601 49219463 955752264 736370655 345103036 244332061 619696910 82041898 863555865 125972647 494504810 626079470 203250583 477522283 191567697 198709066 874391488 120638911 899453432 192389087 886654249 767882802 550104789 308105131 640001928 885972867 782249380 595024668 14818479 342091586 699092518 867233943 121119942 353974108 823094856 353469406 564534360 812888200 162333949 813716646 927906299 607520106 767524286 91171372 207585139 334352371 595552566 246545633 517265725 171752294 557908833 501335951 935883069 768175271 520269055 2116624 119477412 479852527 761846825 290069134 660806130 512176151 618126497 330791580 621030405 507158748 190155181 931157216 194797450 439320297 9655938 508586667 903264920 948260814 649317930 587941702 855736266 52876720 196880416 609451867 420317368 58695709 752294733 287118987 875563738 383241807 44214923 869168637 401098351 180687189 940848013 79115468 976876138 860835843 906457625 306336582 232875139 483211954 180976012 929195560 555926815 888998185 696892091 836136570 491814371 710039170 688477459 438654884 648158666 565248181 992075169 585723423 510831396 610888517 181298883 586128983 266905398 774731913 45082643 732024973 246125906 801715904 776070793 467591936 771881248 762102216 65242403 869996630 716492364 54737983 528245251 471291594 905792138 377858016 440722397 699084904 305348569 675385127 377455660 975484557 348201108 324692935 282923865 529575485 179668068 401428985 721376447 495501947 347098059 738507537 929965714 64292604 325392678 867255117 576960407 380977006 24071565 245253972 148964452 981491333 158446071 336424115 615097815 937179104 332760644 514726171 99510791 323933723 355132302 319691754 913210725 490918463 706117692 607706983 172192317 319151694 802217923 913244816 409638618 455657569 472086520 494232582 806004649 132811792 175733394 549121551 723843310 420508186 26978878 578666785 892016454 271973633 680065073 765785426 211642248 372353250 345589361 149501996 69858757 616901992 551101744 997870668 980616283 719905044 459411881 838956847 864282358 38725646 482601086 238317487 490053708 721691907 266142936 609594492 984108620 578449196 635994159 728064118 10925678 733247218 781576978 67252696 158775635 723261759 728601229 601176485 403420979 435573345 226386021 584624089 750594036 636580426 335985101 105069794 120525881 521509690 358125583 608188894 756314808 735484739 320871177 116572535 486337040 310891249 215408199 129015120 706139967 335952947 392821390 637644624 103542593 664924462 679575303 88912103 965049493 537891803 772954200 719790249 655244091 17381796 489462560 582251513 923641212 731401726 659706950 58058624 918996102 73946624 158983279 555577101 157247610 194217062 809867142 754716894 878350203 549751103 338440857 513437995 996519682 205721894 238033525 600475015 419993271 563713955 942816485 74155950 951615045 943620334 557987643 455708057 524195198 490773413 772625429 707282953 369779723 506730088 142825172 450283945 728041288 389843357 996715891 122643278 597661709 552856898 999311057 692952729 879087731 568499342 4921 600605281 418800548 549583356 770864992 743400310 648332351 667435520 397116470 583361235 16919691 325026779 915480706 712618581 96090648 132321641 529777548 896857403 332930654 606222425 561684584 877713284 371074391 736596442 698648349 325075191 241587511 683989167 83555290 994145843 729129853 173958012 822216346 476601353 817190768 848244416 277021414 807282173 309932145 987809739 754781578 122707480 952784225 243764222 607984378 325209074 532636944 2081440 363022479 319814016 683579165 537534753 643961141 759978237 637565221 469249970 84615150 455137840 553782900 490266313 323097746 245083688 293776904 693564745 846361869 625863990 851562212 266806972 802334045 56781084 246923509 439292275 596238916 517419953 660542718 257625519 159614271 746609700 88651877 785964266 517292261 65255608 459686917 531021945 621246959 490228068 432545695 111304712 484847398 993102096 912396368 239587329 451051010 105864389 853230667 700021320 999604934 731043913 221870485 914084621 107168926 881307641 400961341 907636027 11779764 935390330 14212820 428668176 884043009 389807954 689003924 680542394 501865442 680917612 447645456 334716292 961888695 456029089 849123365 53984772 807301868 632255051 664335607 448995060 548051709 4535909 119974338 568747082 701656038 454957702 892847222 370147663 500255265 309936090 5234893 784589458 188026804 613217338 296159677 699160644 865421779 406814004 222473801 151955691 454140946 751874164 594316573 662971532 734305192 204347597 605376385 413246178 154247374 423933185 405690106 51512130 134142813 482742752 638822080 421650534 94136294 30862990 106527916 855933576 699081325 88170002 244907538 249133235 836862941 212996907 461641870 221159820 951412764 174968260 639029845 974378573 91277390 859457853 191806588 589567048 14873872 678831391 955277268 467732487 154365168 217773231 818596029 877614476 638635577 210281841 247693361 648770482 392078377 486287455 103511464 626247413 702166460 400762202 714743474 666353793 293197440 952878914 981078066 265721948 891722945 286764351 886901149 563082264 616511421 879988490 875760886 309266689 232379479 210398217 382772337 732559706 373117505 231860475 562538450 745344565 231011229 1191450 96147839 969876961 207501496 225038875 727106964 946739394 175842953 498565095 659659475 539827991 301029287 197766567 902233619 814649616 761237639 213509677 150768410 796265044 894194799 333197766 420531707 809504363 432800894 877930373 111114982 541455531 298728560 797291735 346356913 927368284 192563683 581069454 336183308 85079780 758254313 642532422 695752497 325826239 50097510 888336582 896567575 213505704 166147147 881913162 225248538 680161377 573874410 730381427 694726721 606004104 590856797 359863159 759695287 695017882 14031092 297493451 674768709 20239747 677571686 241122028 265897156 178790339 544303 321223060 535494307 910199011 888904991 413890094 224102534 780610820 939510385 355892090 929739670 292337385 929031765 362424021 696033720 486840995 245815042 963942849 836396593 494682486 44511307 751319283 945840073 995095456 785245165 353977953 673676635 447124123 802985237 102596126 395826209 274088068 859265756 948310951 677944569 278111025 302606709 919527492 288889252 516674119 328456192 115043508 270290529 961961078 884808784 377916332 317618432 915701712 840628971 543644140 147926557 543227043 248374233 95843862 277380336 789213838 926831237 33314338 427314673 657333293 729728915 757061897 227100851 401082743 345266894 312145876 164852301 778177565 620531719 972392149 87796414 221088792 958176157 35430928 224513405 449218461 40698839 123904444 1345033 573395289 290477339 18512229 349008100 820054204 147434067 255466977 217978606 996629049 568503776 118084144 764395362 784490047 26208291 338320234 282317800 294262945 55008913 185401171 191602053 942446232 552932749 222658410 716644726 619600051 52626090 896564943 636057373 694014388 823371028 400765599 329047095 287600616 427676589 889547420 541902930 78431928 676091549 298612494 516802081 774645446 185691526 724372441 120904780 403063726 588585506 853171741 178134892 776341466 924336143 784098876 871475775 729380217 893056333 958290704 43034773 122815110 792871606 489438425 552300427 846392439 512492455 367845394 748344413 777742822 382475202 897105275 870921877 396466746 490745788 627412894 52160439 320289870 824934333 937078852 330907816 791849690 859293182 878862925 489943006 236456112 272795744 707371706 368326432 767040987 822918065 640818349 425022218 83340961 332798700 560736534 524818749 625757561 367397590 215733016 399450855 910063114 248392186 36959905 877006118 17070708 665150855 678193925 914479757 2366747 590516452 326664988 36669966 648190243 866563860 109587445 58968376 13385503 45986613 20399291 661394019 237151919 567466703 30332337 817787298 893165809 549562810 336157536 32590988 240001873 595477352 781705897 581966139 362177453 174994090 842321454 259671414 737772358 576748631 684002620 217425177 758135982 628543031 916396066 76899689 928143221 116108512 231236284 720610873 155678730 226326094 84028214 709137927 68186796 647607146 876579180 987541087 864770271 859705049 773827821 225860887 834310397 987288047 541696632 95663154 73150184 768353498 654788477 961461453 835517396 741598910 810830827 540907092 472687483 407862698 11648740 330024038 279009776 105490095 151801084 978231191 453559111 738795245 100785866 247692546 603644822 91173275 86879191 66447692 727165911 597292494 375526999 225027075 573110346 901695709 832928142 416412210 520585815 542198569 974063388 729596908 169368880 194751528 100373114 203876538 902320505 609328915 494406405 557364556 285892599 48021301 19329545 388343566 193609072 473437085 323860845 847786545 405470712 419467670 36003285 565292866 431567484 280572997 699743128 966010255 797475724 768144875 519568383 606760038 65617071 268194041 688633903 750819371 506810101 452354715 533931713 450214710 403744915 888799126 177297806 214033546 122239730 985439824 459205254 708462430 358178357 207994958 993277785 753549214 985250831 168959136 510004930 540500975 182469224 993349088 521088610 288782364 316548859 347929543 709794840 644712917 193864469 535314680 908181355 802667737 64620283 247998862 772446020 943098724 419639617 407618049 115428813 399244726 949794765 624375067 319945720 265264245 469656232 104712836 961441368 9864979 85630943 448107177 834938166 323041099 698624395 312070476 670794310 121677330 392746323 418291155 104962511 150681160 963402959 982073343 308290323 409723162 468245584 938669841 336440364 201049059 869556994 179670071 344922087 262113487 314819542 101369954 443278192 780543040 549458175 487116084 612989012 778833673 455242864 548107678 42009220 289079605 67897075 850689378 899939938 760442523 532492660 284642165 85094648 959006161 945015017 810889777 418624445 606768486 834816977 2102619 647626575 699138198 376867083 101440326 692921183 866192199 460508310 183211992 301987537 711226241 635641935 606761670 857258692 452366194 133265546 648495891 677402523 353661531 149203121 530676162 341986613 387172105 26178732 227937155 291083857 835484662 428452844 449207749 497721592 201340947 216379914 612308339 342745336 670797506 957741545 593602772 53126603 711439224 330132024 515900046 110971743 574169659 976535501 402016240 449494351 624417928 835682077 184880145 704218700 481235635 22384918 733675452 206672758 267132433 174258401 165090432 334785730 369500306 745963751 565654451 30992815 686793648 96026190 125592054 299669303 562949867 408237253 310578786 447777569 561422284 491268255 75524838 155622896 14457761 518570071 753602531 837070447 175494743 106635982 566652379 512118060 844880001 48563640 267114613 24267226 98341631 631893068 725337009 636637626 605866240 625598723 379103786 14693438 325611939 453918132 772424792 852389567 230195892 688068413 409544021 625562190 387472737 557371359 665482426 883261059 455143340 868417097 133345291 710470208 550469588 34616536 295414049 828682160 121337566 449225173 906358047 377695387 377623893 800807202 618255048 836481209 677160857 537131121 596845902 125732618 241787928 777103127 93808007 731621478 153005969 842101130 374326938 927519214 835231250 861878358 93170189 838442011 850134769 128253959 269475087 52036003 289316276 926330122 128600301 846331416 642883647 602197487 123402104 536791309 172162934 509473100 715542179 917977849 377325821 791133491 987374862 232588554 928370231 482924339 788252352 926889060 307165643 602494872 687171397 49120436 599143839 373131303 442765013 624056433 352538300 388932017 981602862 963599388 560706500 155464360 848215368 137952882 755048190 886251578 671997247 684763864 463109459 52300001 487693490 948063342 141500317 688870731 724384700 18634391 563942920 662867700 477881933 984516665 861813585 903604694 192854628 3348726 788062392 237771587 550140741 355968228 696105805 116589560 433068200 991327613 598426741 291915813 216449655 292378625 71773879 16237177 36540634 215526094 216079325 493194833 572177389 415437774 182580132 3204699 784682594 203704041 737756839 400350656 16969670 405116329 97534030 799893636 592181125 559739099 162511448 195202320 259506927 55700579 275355256 595770086 89670028 582936355 461347897 583933045 511505523 49050621 791273840 400822534 66077220 227506069 572263692 27880444 275895276 265426276 546929363 394271860 561543608 243209483 310405322 905224465 826984383 835020475 537799052 906865615 977406437 142532199 720846117 570174678 222177419 18630883 359670438 234841195 491330458 764107951 127868118 147668953 824292694 364473633 185287766 780123643 134348261 975099590 221110911 622416598 54045720 96717815 720037154 686058685 178608869 860069250 753436705 418659602 209790360 975242093 358698409 849929610 292894693 377667857 328099283 620407110 489159205 575786750 423429155 872890115 237815537 978301827 62583764 593552056 925872849 505813151 290216174 68935027 192834693 693168995 30935267 954013413 621073441 403748142 721771502 775579502 75992796 234363175 763207744 21517403 106885769 765678199 770996851 40737430 425088231 65948940 93876033 373006095 987142088 787641747 646749276 28374882 726175942 556999566 900609731 501100896 508303342 763040250 957886450 142359682 604272271 231731566 928485593 154486005 203304617 381087743 188066307 549922126 701583806 376511632 683066764 794604487 161638885 979269364 266394560 235079646 683856466 96105569 377905471 656867309 14457544 100664232 828231053 270961044 436185462 145823491 498219430 181946686 171483498 188795472 90403013 674468342 154945622 976241291 989841783 423607404 456208083 990074118 701860620 827866850 502751250 596231345 691779627 388721322 809805987 691397229 296399662 830063101 994150061 447646627 35056846 710355097 326846286 494709585 477551440 214926215 526078231 870761789 476363768 769342443 749107257 994137035 693690262 113710928 864186608 933809779 636225868 845697915 394225181 426028191 615136024 539837684 315916742 416152332 806143263 834987175 20469124 573379754 259718965 366784286 215066269 174298101 254182590 430577861 135828011 750147881 167931274 989669542 767302666 322474282 441723737 84087207 774295044 835081858 153622976 953522104 175310394 102066869 926228778 53361974 504897021 124465854 541469242 313643947 689412953 331586971 789800507 549950562 488534911 363108010 53979336 619935439 202959957 973605159 859003389 982741749 704407760 474235051 490815762 538605049 418009913 849666661 152637502 265992204 253050154 499528079 627427921 236541613 775431842 626103575 205233916 128192120 353960129 205181679 642320349 856826561 924205305 773146150 625940652 823058058 671854906 160502954 428734708 917212683 916275982 809863267 74676953 329997986 931934730 717558136 438263772 845545620 622094944 476851284 30816498 241996584 932967884 140789628 891111211 636815433 918819089 499644365 258170077 152025398 399663325 595279331 5083030 785258305 626765475 587060425 655780243 817747941 440191786 913184807 313743024 446041294 685104052 714479050 793109119 773038412 276513455 332216905 90187704 517145965 797431538 813326229 852549835 186131202 541935921 880208318 686049501 759767348 491113180 204071634 251550118 257644387 194449812 636280633 444390045 321941131 156895738 28257266 712223331 578821976 208248187 825213904 237350366 523708158 193056443 951780526 82163130 808391713 251900146 955265947 312084517 595451629 735637629 22408788 867107959 332299408 483111673 38942514 285921467 77988045 587529789 301414229 501189930 604263902 621112516 96153925 971027113 880420972 966530214 508935316 994629876 951503212 667961707 218061409 325069278 191042993 158241217 97441936 926121852 428373989 828447700 305965406 385823033 134274412 785629244 212410761 873689376 592094476 689402457 120664639 878255732 98983705 425252388 817530731 78848842 153163639 829105156 573265442 631417185 601574976 747011058 629540048 855355563 36341675 885808181 859479490 250587681 297062510 604918999 686796414 382206137 220531963 7314601 116869064 738416042 996744741 349673122 257462375 565761439 584089223 951326909 688288568 473870534 8885724 315453479 890886935 104707330 161312178 45535491 317501041 797165311 571820440 681126510 429369020 151443167 878721668 815058146 55205069 347078434 315914895 966370479 382448118 891359975 951854061 72568159 650521738 558941322 873224985 956152693 240878738 84303257 567443282 126207585 728552374 677116336 232845477 235096530 907846530 218269423 293524898 38205172 458924380 556693966 730126646 730749830 775968755 455380375 892423747 902218992 988376797 790995882 656006139 888247061 632574109 970892859 298185946 437088254 948910239 560275096 213690501 768219648 179882613 212667826 693089665 744933652 445197084 836835787 532900672 703537503 851590952 621080582 177759566 110676702 781985943 399035366 916565665 467333111 430794803 104995504 527677859 697687115 879169996 18741087 188579512 796767070 414502680 162577263 537347431 980861280 685652269 595827099 809494929 725352858 9811987 439388392 856776032 8946526 877616143 714413660 114489256 159564777 333282298 718287657 15302395 755426706 808869138 530692335 936340990 674007863 366301894 42469747 882122265 890973425 100778083 588982087 905426242 535761189 458069887 838960869 634881776 671237540 51941558 494347208 107021946 72276760 82486870 887645500 543030992 986061672 73146700 232894263 826148200 523865458 622803086 920901944 89384733 6572695 346946324 626152655 752323831 991291486 722223766 197950839 65077757 541361911 449773521 323940610 76455438 731519169 452533665 901016390 27757037 515727442 362234191 920555999 326799254 389894176 339706395 112359569 677729692 22676042 344919716 175167219 33253144 112856387 999785879 464557663 471096776 877086595 489388370 230906375 336401352 104178754 580708721 478564442 369597243 825931815 534260645 422207624 45971416 339512433 154704434 765617658 133500482 746145277 104799812 396326356 362772083 71093838 195773047 570784073 856781120 394919393 394446553 817172318 670185586 632045600 23426167 626011986 820846992 922507807 886291057 978384245 662361023 4007093 852789967 607184552 914414674 775920734 531034868 485943295 48062363 446907003 379580589 826265967 96516161 530583644 783521431 676489760 295140671 170695917 819883611 344392786 88914875 12355539 476992298 910396240 825528495 830441703 267393300 262795746 290776262 45720025 771784824 139133701 800237609 46906140 951603242 32474 290980600 179303407 747152926 559805383 434278506 144390351 25779681 901123735 561449348 71865217 216300191 537393012 577542975 505439819 826742967 270534458 545005762 384928525 766225101 200302057 965015623 66695457 543999110 946016185 611403509 709951675 271616556 103732753 266018105 281164136 891555016 358620271 974438298 993124099 319931133 858268311 252486728 997186532 159097607 43665439 838969038 671523092 781396657 491705136 195383805 850879821 561925522 344313293 119580691 316664865 794778042 85558817 384189138 687627619 687512922 178558293 167984508 337382419 242773195 676575966 5956791 278512808 367857483 621815247 983802488 925015733 436608181 305169195 900509994 678424022 288675228 791481379 459097658 62254685 638603824 661530521 615966307 271990884 154959428 327800127 386326460 521147693 963404088 597769961 868207477 790574191 382749304 552528246 71597817 886140399 845464460 134549771 87065413 202540018 891606251 529928863 355517859 383331966 914786081 932971857 981553756 795346355 124341749 300382054 548911885 757551077 928053224 102783585 636932293 201638744 208793975 932372232 344361319 352630800 637287320 761688887 95519295 450683141 646326926 23502606 427305457 702756925 345495470 514049739 833992671 993413298 906531621 250392942 228255784 102296597 675111854 85314311 859716862 860383472 405425594 545883630 267910761 702705043 274549024 291782523 817682834 113540946 168846655 485033839 257684414 628581156 740775422 470517537 53818935 419324329 924641693 93613413 689316420 334754894 824945056 945578314 125803917 655257541 11280999 554197320 299473861 673365964 508369518 834706174 105395977 554290949 868587742 597638526 664574520 816286712 19537567 752901152 806093427 577073431 488553112 714217973 498365243 698930286 197908839 932891573 636858884 599189656 276899247 528754400 712188666 529706972 86622183 788157182 247478973 969008890 961607781 886413948 458977364 789562749 556191928 540276767 900779485 352384129 956698566 743569655 287016840 454038736 295210866 735032934 820050994 964038616 541973644 137931335 532223679 444407983 778752877 12063073 771020170 298111960 142229426 449121792 816204150 504732753 425097533 742554657 12906576 126615250 77904252 620971870 771494590 92793436 433256501 352284269 421468965 243506104 692194286 2632501 860349458 498671277 684916088 34417191 149685 506364226 666492084 366909521 20077364 585620433 415815808 498349150 553469366 671269634 190968496 195599316 30154634 769491114 560007317 446711256 743478944 834749082 842468171 629030419 442155034 28980461 728398499 407621797 114923290 653754152 821772397 144853835 863655 807235053 452276731 499540074 627267671 400752940 385136787 672686057 937415392 562906711 964924442 3972664 572420345 410117029 199930843 182107664 468191835 886683596 798964779 313356434 886834158 432009449 678398693 907753775 534471095 704433492 297295873 358420682 501024911 911067473 335915407 950744536 979943962 945654484 65949816 314752304 775732953 968505479 381480114 349642970 78589627 21857951 922540338 196687498 495004216 314253808 655387423 34040455 118789862 473253049 20750608 168887531 383900435 839035976 609796000 49993694 249434133 332087024 394490576 321359211 666744210 965257199 633506566 436739453 624082253 440084486 476759000 93888466 126221825 577274837 412910544 875900188 320696454 272890831 771189986 411061252 805124615 331028344 811437184 235133547 3354613 154184638 834001025 956666171 12408250 979809816 968672111 781843860 287037211 41074704 3856547 933955751 425928256 80601039 111666010 318368019 548405885 103315797 167229462 63522737 403172670 495853597 550206077 22651003 74286905 148897697 424578297 841131137 158164768 584753206 391342896 350835359 296135982 397428385 178095056 46972925 167494608 166009288 179538600 231764664 621526501 134641298 101820966 171875618 562160722 975626156 562224506 401940867 778228900 317358424 726043012 604944003 89137866 601861903 24215570 100078165 161697281 739366646 488322091 360537323 623605458 706737856 147164680 877136860 139129370 376439577 797944249 624034651 925695148 276786424 948671640 445710878 557008887 524249072 974786666 242512933 453744973 774362039 434418816 932871360 144500693 146743581 723003300 166027984 933232156 349120672 174598891 15776181 346821052 361206456 869205436 421092080 937077013 578100717 32424844 694271259 584059981 771862740 923661839 319180909 569767400 54910729 101911028 219310616 234491036 95242023 555711678 139051036 457711051 882435310 668673507 952958802 952351850 450026767 655052201 52765270 857129303 671737683 642260671 231779039 427454377 74808531 187866287 103378879 966856677 255028811 669282196 540563711 280198013 534138982 301402827 737665584 101189305 888843565 789852504 704582957 980885201 248519488 461566973 428623154 369002339 65118664 500502755 300449939 2411606 741930122 623831897 385917677 296937444 482975913 668766116 421564010 628252555 745692132 730084640 192729923 481079521 150016966 225440909 786635295 335481633 597348999 649407811 672710358 170149214 742743783 552270907 556388430 349537966 972881388 886435203 127566627 707228212 892356328 970481221 914208775 144429581 645731352 945299070 829546530 730960570 127640070 726251652 628119411 427843543 855057164 88220668 668431634 69086504 698156437 427032187 275312968 635632434 627993474 56774324 133423676 349887397 121221953 488545899 126458891 31258160 527103128 784532440 455290678 878026941 420842373 667047617 441780673 584853058 674642265 633977857 131766395 102670159 488912343 855268330 974435921 636983231 393756225 45510996 507407926 60805432 936769589 71130901 233274133 332374139 675691584 368389479 130563897 95334004 12744814 52215816 567786941 994805539 459457916 141538401 680804557 799799731 177441158 755606557 547846243 252117015 838931026 251532456 722064069 169536823 258929794 707348837 473694541 178052739 380125233 426330775 375594043 657383576 669257959 954229653 753526789 919862967 678734142 818190170 232813259 679408959 21536171 417287872 714656854 454450298 331911667 195081621 640887698 449811297 285198496 356727383 504672571 862553442 331609197 11953514 434663670 763241424 145470838 949210591 206044570 603453770 136537705 404156717 714733368 38316957 223209131 599898869 737126692 98110929 924759683 531428220 352223052 839253447 261519489 330089178 443684101 536473777 573627207 879156541 381341386 351691533 821617331 360366550 618998793 283380088 616780253 375086638 422912386 679947724 117795411 479687088 569606334 950353395 421774417 734684809 842664488 727093692 841085853 453328129 502681260 609079174 181627120 505203127 112527283 229804234 858472251 316503544 380018833 86260148 365590030 872945658 488529374 728402314 935861171 355313309 801007399 326050833 661447056 146255814 332469228 784020040 68982973 58902265 132841556 833133798 518522110 985744892 614440571 607079573 871771405 897344839 182437494 985962227 447125552 8809163 557569282 557788404 721356253 150751933 946131245 383812641 467584854 148128009 893088083 911104471 969191678 948122906 397415907 792380692 614800611 892522748 76796998 817315111 411894596 313847354 304898235 743472956 662897209 535135795 555864854 912537907 769956874 370664314 588413456 479981161 654554521 283156515 382233971 310679846 560725950 805325153 992556121 306424544 28681944 519844245 843949245 106035709 254576532 958458336 357164829 561514797 370121354 720066192 282381270 532554697 452451486 426467102 666845648 470859245 293952517 215857616 404661430 395935607 794388450 198292325 93417014 275935087 700866467 912399041 889026896 648164212 656049536 862208802 718954636 898304756 700362136 919230399 443615871 57274497 936638957 141033777 314974623 834586681 229587266 280313460 851578194 528074399 526957529 688327091 748743002 618101459 904995872 593752675 30436453 810767124 884899219 574694018 457257827 619859920 361750218 11282763 620766789 732012418 20140999 912213909 386607951 885839342 345635189 223610063 931666420 720612661 16953879 41676605 730721323 705905158 967664665 370034399 628472983 77682955 798496985 783343312 375632910 442298482 365828908 801531628 988321827 107287585 70644356 268218209 229015628 318580635 397869117 494060916 408624139 550088008 280281574 246698976 233215097 990130939 110447903 939706415 891570451 919541986 385426105 486015436 744978269 58761185 547777922 897427603 218359216 90608992 939368099 422091060 139107845 98706277 280100846 704157478 739577945 560535616 336371046 452373433 963263592 331242478 265330465 231561247 654105470 579113798 987373037 414612779 894223694 27402581 456123022 799828392 970070414 105186799 283226732 501626106 535581951 536444166 775858233 700393313 185601686 597681035 415377548 927098326 542765740 714683645 881527219 460622985 651156506 336413645 541405928 387269248 555311334 715724331 426935435 447118269 901422299 960215844 667927701 529510897 849392212 719311869 694792026 16633406 52117186 346687635 558823785 64421272 750244742 366828001 608059165 978389768 961499308 142857277 234463885 644993476 950490471 229880559 679517162 982438116 117817784 15432119 19725604 438462119 640469874 414823230 215170234 68503715 656478069 266113703 492128153 839317858 396908091 230498178 668123148 233486170 2859392 682269161 969355895 505950837 354268301 871741282 20250275 538862733 503679263 884888435 135097254 369308010 34428151 182431095 303147360 730600950 542704846 556421250 315752626 142846759 302910719 164204950 269614821 509483193 356032030 319046542 858855885 563938354 533682871 586591794 195330374 470167812 929972659 129259953 400453301 373542235 270284976 416839184 327395663 9528585 637506244 628251600 144514831 88778098 55380760 328389793 303700928 442358233 376838994 176006099 203839167 624774253 34193408 32833317 765113747 868037388 994037445 119298505 226170086 135190388 11967324 572228493 500241629 991943852 786227330 609978353 689535268 278381156 954374850 377009144 308239341 792079189 476047567 131108039 112331057 682648315 98654324 255253194 279992313 220308291 684215796 612466095 104961699 272600125 672635930 477129846 195313540 703646934 607498112 838009527 816712575 303510434 186390739 118690055 70001747 156020513 792188242 381302255 786014118 268166237 989979448 36130932 465171532 862236063 8897460 594962657 740053142 276857191 420994318 999573468 237804824 648999250 198547016 614126721 790409616 123784131 943958235 881861554 26057927 473543077 202553983 88549099 889062747 629682356 930934354 441559887 282631717 917806942 585832359 609913736 841355983 288603970 415510404 213561404 788248378 77446146 668138801 338703286 504439664 328009081 214747716 987487952 615934019 313624337 160073093 716774629 251233196 217578813 300920942 109433799 642620312 164474333 734216365 593689152 858221545 223926286 890986816 495026507 156211867 428968310 529616161 653776366 646984338 320501066 835544891 718006152 291146308 28147557 774135257 28243573 874147284 250322671 2365093 807855151 818457933 774129099 345670668 937188086 509412202 433591269 591967334 335100291 32240302 269545165 475852286 275056844 581576320 831778754 663301433 76071070 810560212 123049513 740290528 105102371 337466667 601854929 705378731 821461232 638470298 840971825 942991574 490992517 557425979 599627964 974711832 37814003 381440999 53584942 341465425 845608353 103152991 300618892 278660588 625985378 302576457 323691551 280359245 222144921 449956339 607020400 884041428 458272200 970178716 187888354 178674233 600468251 940592787 242494049 601741535 730720714 753242684 151017810 6692569 964650862 536729752 244769071 13027008 113346145 847240140 34774400 873830073 882469858 842943632 971395013 979669284 140891124 246539115 113704441 707026609 975310991 604589379 22735590 668196311 782205424 562402018 464616615 453374394 646086166 141757180 319329827 664967005 246295164 525893028 680830423 488153549 104777808 489427520 398568781 536437352 896789757 22909623 609905510 60928339 608559011 578597593 918653307 552037930 349301752 970947499 641734046 260437788 288338220 782657634 908847943 99506090 662960854 424210638 849562316 561913445 93785112 241932747 61735652 683840032 3011772 526427869 782301555 582721051 405597314 486255568 417817308 396351678 770895394 57947097 220950036 404536966 647304596 452938806 688582544 302665426 285799783 580559004 969355377 690567761 266632857 27954118 2440971 968596776 109866713 581037280 783466842 711878445 961208438 425592950 346464510 549592106 785216720 511968401 429963652 591706043 911192521 713882287 108090709 663905175 229752100 539710560 704412796 757707855 468238105 199164099 832793454 393259476 668366238 820113692 399956986 789120947 290653275 915558041 342158434 8496884 956099757 449307707 150566844 869782675 999484887 890825469 932115051 795746747 554347744 469007032 23023455 117181637 993804066 401437877 595754950 984634669 800936430 803955180 911495801 801097655 265278860 668920022 504081406 714766522 473759570 544974307 23181305 978586407 537939395 374687938 454907872 323162111 699452042 558140278 987471954 178959195 241323816 898660774 537657961 9443169 449856337 616246952 960728314 230153505 968956820 604909708 130834109 495692893 407232605 167664291 190343508 266745369 976244945 45891153 664150557 361849634 318522515 82678965 865798552 775317797 563339202 453595703 957922721 304560608 774146786 877225101 895221011 334962791 553182943 395184840 433756423 661259091 470873142 196416258 121447487 641200992 812995200 98987741 61713955 222186358 45009449 140207648 756623544 426664893 975901324 332384208 937170791 658382341 723694392 117316851 284396338 136138652 623530119 478752219 526337156 142016427 120292267 690695866 795333650 383324775 549685553 629186958 421609503 162432125 695304422 656327881 350294680 233429523 987313952 268888163 416586814 226283510 159874131 608282360 708530754 29924111 715024565 431072750 590593609 415035420 887044288 141736255 852122201 781554665 588671740 203574708 482136099 95945327 568394150 673524734 563552233 612615768 130818126 926652343 371630961 95529964 164477474 862222673 633751289 377068438 461621751 557100514 377252358 543850986 969025610 6577800 66916385 685289109 906305947 555691559 665356372 202215971 587301280 70093653 623942811 911301293 269481348 247840053 632531728 521801992 975045557 463596281 686399971 28604512 962455420 845646324 973207641 984865406 621927618 335981026 797569112 337357787 528823346 617952417 463426156 799119479 888057207 44402628 103700640 899395630 344488851 698855301 208296882 607184609 490522205 360622196 586218521 126944769 275068702 23470560 953376596 68928158 650219715 418186282 631287791 798805976 390624403 316618376 277809969 933801817 621856293 162342506 254321849 978812115 448560166 699050422 696905617 107665889 678401555 47103543 162125496 514091672 64793458 354330201 100736946 939803627 749846866 163861025 8250801 375052675 214873065 842593776 554300380 472449945 640550830 119062698 188553983 581601177 434586072 56641740 516202747 419691833 844420989 470630772 763286049 597711704 892666109 349250346 99634250 831822668 790835015 835889904 592196072 905592216 918783220 871985642 890664067 848468661 858871288 824790726 572489471 802118663 11345812 982734631 332954703 309620107 830771687 341833841 808758681 187064546 720633128 289000487 500943535 822870650 455598660 376253873 788142478 829924507 182249561 687359976 583664874 315201420 181588887 746798951 957049088 435238140 946435211 879373879 927952373 11551130 731352782 180885390 234221822 940056976 875134388 340512551 179364939 894972358 585720111 557044809 513014040 750316407 816877705 213537965 450459767 94183096 709581473 60277890 546265631 706746643 88145189 908588504 432040965 366717934 99936583 113796896 240022195 898589635 911627458 671714996 842551568 136080064 699715511 815219425 922619701 418389845 448173484 937069295 341936871 538337026 389028511 861562089 611387993 98366957 843230332 514616615 411693996 260886821 714365645 173158402 72053929 754779024 537978003 983915710 277036819 379485567 861353396 183716403 301653272 864762097 661973625 281055412 243262426 943470719 754146164 771218648 483094520 661679419 880990748 103425735 116294476 250965573 396183057 957594785 826569753 373018247 179882151 79600523 475417164 194522794 964074255 304865684 721505767 552618754 890610330 514837372 840925234 906333435 604977727 993420417 566602945 688618644 989381248 37801325 928015784 946797410 774377398 523676818 129484430 981601244 670292324 468920322 166623956 853901988 897758580 938940093 504761656 383462547 926250530 565874367 419961662 378295514 700092357 263626144 324753011 485487288 275914684 83575756 428121604 722007659 260681669 491942040 945828888 133891770 386770295 363536212 40530000 830300154 906022806 890796122 297545277 964798969 866018250 807727103 441071681 428302912 263630632 384274280 785294194 771345293 756494459 141815799 237582356 928217953 727545111 559652862 621180309 80856166 964792190 993285432 141173305 657236660 809593061 683835573 653972699 169364534 934072870 960090349 321872890 554708744 135683596 389394826 833461373 211138593 385119737 405175185 49018375 460639410 180687608 388735720 529190815 841696856 921469912 21230018 363163550 700614075 831610852 777548336 503471069 156879939 286799598 945207699 785129363 625919372 674911916 77944462 360734853 5345768 802569331 468495109 299511469 465942925 351594112 712212228 755639249 556775835 44212039 926306752 865313976 939511618 243295693 41317552 506249677 207109442 164422948 190016501 579480065 793418185 35405445 429455059 330698826 59635347 509766175 475197212 667635258 463847164 767053757 764254358 673014276 973817188 396219902 14523426 224113827 623407543 977731382 515434883 149345553 10746634 595959630 66933973 566004539 486211930 703547651 333053018 674174398 872946688 889706317 603090613 581727899 862287178 615816972 619223143 693431992 288320070 942636565 329694517 680062215 836803206 31995286 850931956 935539948 512110486 683329271 46344988 396438539 631299857 933615702 166211898 75744357 708913279 786261789 279694640 40497770 964486242 514261992 326720538 163848360 68396724 481619110 554311970 464635012 432252400 215841162 131211010 664715972 621260998 495985872 490846809 24615607 863551797 112647265 823750829 878083233 387798861 116583899 785206678 784944792 24671853 191414324 904751875 714834798 861250588 572791663 819130812 476554980 26467243 850421949 723856034 975434766 143869170 829486533 536307004 469981866 103270491 938121083 408703342 516468465 734077412 979366349 696109861 355930431 443742189 305970685 357600873 805113196 259624993 321162346 356528867 47158811 567779527 511755529 444162502 132718440 694761358 254635702 479106901 893538406 606171901 317669991 352495085 323046135 823847936 329240060 393322767 135879728 231811233 631749279 434815744 856966044 388910174 625573461 802765266 514074515 131631195 87494199 8085986 178934428 337002802 760535892 534018933 804215593 640450832 469387942 557256922 819188410 743545599 729562309 750744789 466900629 520257729 815825373 250038071 843074304 659330726 233480993 777886491 892835460 630517139 901536495 732738066 55181184 694548644 790100 958707046 915521679 669563414 992064906 59557498 709771166 713183390 577066557 194849773 995912743 978354784 399258047 16037545 105488791 72027082 160535218 214545130 806645672 805229515 39998003 982522284 318259742 499952376 486272232 438304134 524196253 388692504 607451986 125993294 31362738 600929580 159167559 965361727 618921413 952080522 474368542 656207378 334463218 634715319 554881556 521966475 238518458 210490988 518814317 864119593 34624635 129976751 357908184 741790464 347159981 270556811 727486117 929568611 318024728 806034934 310526773 922595803 464061806 764309576 815605442 532288598 41490643 427831302 323890800 157314681 417702904 378194964 910930183 715493311 470148295 718007793 348368949 603628490 289893614 473040088 207392397 964045675 229171085 429171419 345794930 991011609 145825828 772156035 247700817 246098462 163571548 488806636 760785540 543081834 808750855 123058528 825535662 437137605 741356632 469601460 361225304 493287366 506470140 500134345 500500380 424580083 886006017 658801504 615010975 835581362 310470508 130312944 258305682 600583264 990569747 286026517 581238178 86987770 904113957 739911997 166104318 977101041 575772000 866707715 235656343 573239196 13852085 709174816 648227825 582532652 645316685 446064304 212334972 746683028 258226132 29940695 399221489 77704968 518287272 614494855 181102962 556322390 52459098 576875581 985530678 709589839 251206192 652128241 518237559 681330258 157895772 380449693 459970837 912364951 47572674 414151354 77335737 251201049 893723721 217816553 812651699 704546668 986911763 945772097 751748941 407750630 507022408 743701442 281170871 245822503 861569136 686025783 279658621 81730696 319509609 887430193 243296555 239764645 368767364 52990383 268334825 925306433 769384464 575473053 967855738 284984099 315129888 709956396 958291220 296772323 457304721 931665045 502044220 593155755 114133765 625101417 973021235 733012927 304971241 548252329 838163692 418338670 87082614 990176083 644859887 787385874 99113012 820463967 957439874 476170596 71633012 811699259 418188439 311952170 316506748 382643879 417704555 83832221 783686699 731573640 338571551 141415238 57172048 317241314 617506899 968292438 273344098 1810202 415633922 570243377 252094810 371905833 526496391 455478290 725227424 659803012 890125304 427550326 405992961 327780382 933094742 679858711 373322304 126778987 739732183 175127119 304520187 145014076 11836547 695461366 690670266 222491781 452553386 2466206 513948567 612744974 833408288 687845585 443455547 897897015 715477483 764124383 225698528 142644695 793167824 83335235 862350030 485016052 753674 680206256 199869945 802445474 604853400 459268648 121518204 313078347 500430532 685953780 526803397 439029617 926181616 234223531 642841474 629615381 793482863 140193733 728374044 441910127 553346607 483123391 809737947 806311503 310564651 277539936 192495311 988703818 592075387 385909182 160287312 656594925 9713290 139931335 649201617 447000267 515035101 735131990 26880621 953849327 121664104 311485820 362019036 421063708 922850353 130937187 658450977 299881677 663528541 220783728 170748628 557532618 403825873 300446676 854234345 398409668 628262847 108702804 755187588 65386173 670945730 81260214 212844716 254893511 242006618 754578650 519469586 464325849 876926657 848702302 692331270 948249569 753333848 610307289 813750780 472834999 40189230 553454849 136380455 980693698 987606273 481977514 821300714 757653406 20111762 742093922 760136886 659530581 918028600 536916817 936617451 730324163 367166367 181891590 109667530 15918364 496523282 858512337 684325078 881095616 975716845 579407708 853371011 488248611 627877660 89444659 193761640 105984233 59895663 656515966 624438159 858429958 158557637 571572070 703955047 47985071 287922813 937350170 455842082 342050797 190534702 785906619 809634049 4728417 597376705 427059060 149780769 257687996 579550175 42530376 93364112 147534472 692696183 845963396 265979601 288229426 944727452 331275471 617357913 330228593 976486775 30521195 522844067 881495364 272756006 451979172 633937421 395518446 104622927 306948537 713105117 209882693 342378385 631029325 594911752 573804876 989332568 251505485 610843297 460812405 566632948 311261869 212907482 560731970 963762340 19009336 721430214 348435928 573093448 770513170 465276126 845925213 107463257 856528613 696600498 833284038 626185769 806758038 695596950 104588552 108511477 152559578 545828986 334509637 945255877 592661228 549210185 924974624 252733766 754602662 334285252 826355806 784549062 142355817 706429103 641212167 279085919 164729161 967371449 684308633 841480464 912838385 364231282 265174029 359330384 313499450 368913631 599192354 180544937 547087350 569619473 168000764 806935255 41844641 358135585 343748994 778361149 599080230 378399842 173613366 252328563 96647548 413223877 201771123 950671513 971170679 63812185 914859195 532243802 440611100 374366530 642856631 507160922 130733768 44477257 660537896 24740780 317637133 318240674 742551905 618422745 168571144 139896077 137782696 562776467 447750900 591925454 878459012 542019137 190057141 382319198 232173711 201348927 302932251 696876847 474173610 228827643 369792735 420279141 148923944 330388271 330752070 827394752 469292464 4169057 747815427 676062408 675807213 288151776 196399997 187099995 390072058 660297408 586746578 174028028 933194025 889393712 981529526 876847032 219018571 463447343 747382223 79013107 451991708 998349747 524346667 785854926 631909697 835859566 765229361 4576881 719079375 129902181 116634938 127131181 961066488 121078717 379514516 674562765 803088179 775018951 166628933 373212055 750316768 709308507 711709778 18511451 584725261 989263457 543541592 740877351 480770327 132934352 151804869 63571289 198264631 807009297 763056031 559333158 460620237 201048024 23285939 934456467 768707146 295512931 979204809 206615963 269226181 393837660 187664985 741997235 84845488 915600784 893465226 852149007 201267730 359269675 110762379 50076132 145831852 520808003 63926518 614365438 179776025 273543555 797042251 242141772 330322618 852917080 526660614 174331032 957694683 697840948 5576023 24063315 866890446 678937561 878857423 383563488 660580662 626235610 421186653 344637068 776631409 528324138 96425165 4887592 881580684 378878687 974625277 978703044 899537593 719473526 102338173 13425490 840438662 88550212 409535141 613451864 286562085 399193665 505514841 483017955 431239325 928898418 817441449 298011775 448325951 359352015 495438928 277616391 14089549 912179864 335177813 107486296 816468056 618994783 95274445 201578228 600125423 697171842 792440005 104277218 874328136 28976741 560926112 350469918 372624017 701087430 329828477 493430493 525717648 807758878 300190844 804987528 185085310 718722933 972335312 584857496 185210240 123683535 984217363 830854538 816333248 299692520 773411011 237239704 607756427 508961916 676606021 92971217 172027509 83319881 546665695 68716574 703534472 502187944 872646492 118609860 847102320 802703229 706000022 4955146 105645248 45490649 346839713 691782211 178688049 190799217 426893434 746856756 217923896 450637308 551980367 139948436 613601155 476206378 733102920 492592622 517746269 647636859 93409262 619520268 580444054 105098198 602344058 713866444 993130177 825346932 795902879 637281115 77692646 144930222 849907548 285968436 873170205 846751078 607394925 531713789 580162869 439353243 920637243 17557913 804674786 880334498 574585190 243837500 105949439 32987224 590878761 219583375 495646596 7775810 836433537 214477270 474484774 688116955 234650082 472456698 234717621 382385964 43038973 526465089 580935956 675824656 146154028 557818879 238867520 266947995 605833797 339240671 384124246 750641559 498754851 167962083 715907057 375890815 142851089 720159547 430006300 641341809 291523533 988219389 714993981 448759215 436983737 614625872 438969099 36848396 275499308 343115710 636824507 12935657 502597363 555876985 408970891 123232075 75456180 805337736 983324655 111167598 676240513 245309613 120087612 664147279 747224870 783322299 842239281 926527898 500550983 515413458 765079337 755806761 74112468 398054412 484581497 423524996 410585730 671352979 314175590 115236915 122542155 757904326 136647156 34442841 74547734 621290547 197512322 527177355 227179637 19639657 437656260 917513818 720133347 714779117 456192654 345198707 802952330 98680941 954197924 466665579 383231530 498735966 244924131 913565405 287918675 517483979 369983669 694216902 859784180 90554021 418407813 45562608 858323436 682297818 665982513 425400713 52138174 156562348 13222235 363559831 219511810 684072026 461855554 442248328 57968058 635197658 661629873 781702395 139680605 182044314 356534321 809831483 744443647 811578999 481977761 19431620 277350047 748733898 153569786 372630377 999890527 678821151 571773598 751619985 345881882 64646005 527753998 722262578 145200773 34919424 879538750 810412054 990286047 677357513 559439394 127277952 396809280 186007529 848095468 795235229 981860528 332120825 612791111 339593771 226757821 498771851 548331578 628692738 166337513 210540299 52339673 381449404 977201829 851924750 473836767 795067853 943421091 665730414 651696275 761905628 275751110 249330293 965965358 361530517 303550236 78340456 254650530 254693670 363368611 468856896 773105697 124295694 123191030 85276599 890142886 126961581 195761474 65108532 16682004 98318965 642641604 395127072 523260716 858722784 100817487 606738708 653314523 673257391 936703886 334153880 603255672 346955591 24548038 576468672 654706060 48962150 397842041 214681528 861260206 18267542 277646009 19198412 546839701 162069819 671640073 252574211 943122467 813452440 514302139 753766753 155374558 53270201 456876819 188112906 561070040 355153775 131976673 677081020 501064348 988510854 511823281 776900016 593418013 741863074 624909232 668178891 599792847 11274033 604282655 877442495 140728871 847476529 418540401 206308834 663838583 880772735 991817039 646354944 597652812 683124026 341623400 417016748 453334710 577419349 138118539 788442870 272247313 34072589 522073573 235708969 669082216 673907381 943809534 773802032 568268636 441309134 223690964 75758253 801665404 975855604 661951944 8211747 779494486 368922588 969283179 225787732 614648628 681007613 800720937 582904203 283150206 617462531 734566651 104273590 227853926 791810098 219402486 331775871 331567385 328294055 618137218 801124385 897627771 313193549 349916923 980485706 783262534 555224205 810713420 847134717 638929263 586981039 942006996 564170245 76987035 240473082 918951400 892155323 837947093 411906499 712413305 503490951 213999297 960422391 456182990 358823002 545003740 254040444 181939642 94143942 386567248 368888928 451113949 632347401 122108848 73864952 770001299 671384784 849892590 987641909 155292446 588139236 366997821 461992590 126878283 444659273 657522876 597364249 171493862 179929484 42463404 159583795 155777775 769620270 614163606 437685566 196715821 612059865 96504384 2801301 745701970 140038022 759410927 189459442 70687585 505075548 29012851 728734867 306581370 236127481 716108252 856401561 945587361 499778756 549216585 676013562 493055919 431929179 885444452 95413213 6796171 476996040 94053384 254822003 839368063 195997923 240316978 705635387 843382717 680261700 287159837 926996583 94052952 644508019 660015665 265662696 968249629 685701097 928460121 232481844 186699656 364356791 259238498 437015718 273397317 30803973 139036334 192820910 289120134 486669207 115260969 609121286 630830442 955271228 15518426 172644701 291739017 976327272 860117452 514884717 249833713 735887182 297562836 49515053 294248739 20286259 930521778 303210054 313254162 477118223 183815026 304915453 367069630 547534341 658404470 498795349 875591252 778345361 949088371 287136963 30722928 842398535 244698283 616496475 153072668 430736792 216551974 956725293 720885763 128723191 131670124 88358713 846355069 188840148 752449053 350921802 953318107 543547210 456485242 594383623 523495043 363571957 425983714 237961265 823919621 497848613 740380697 226889635 829515251 240739928 167802166 88590998 257764530 733779179 436702112 573220390 712850067 193313174 387749710 265553990 84137148 528361034 679553257 886522011 668747882 791644887 452111524 738377334 409525073 994788250 652169536 363044162 784792358 585284815 189391162 720730569 866778918 523789710 362458068 81787068 259523911 385117802 385527608 787952075 135161547 713178525 794264622 57059643 451062595 570085538 768200629 652549828 753755659 808790277 544735941 438904026 983798475 571299999 432461577 749058393 806160085 455242182 493886358 239849957 406004981 121501849 841413312 47173314 261878991 925005064 623772247 738167746 702202870 570858499 183308268 239613498 151400523 924408775 308034112 687762463 807520299 453869099 825633149 449535229 202042436 721838507 346633664 223638792 292993196 825831363 411599785 929325137 905781821 15659619 984655243 745320926 266187157 309046119 663122542 971179860 828345203 980043076 516281596 124776809 208860052 9755654 36816285 161526308 871163856 998314171 180389767 988971324 963774240 67626448 771176107 444948347 92418639 917348973 540553957 408014077 729805907 189652667 573529848 529077872 739303103 568356018 13079700 498836422 274576407 872252995 25546877 912351085 52423593 423904300 6785935 504918358 459130965 147057049 121050319 52028168 64795665 257682189 357530991 986558414 436684985 187692555 220866496 317806841 532827755 350780750 546609431 454572402 265769179 226496865 551106534 563277099 546524106 57139157 650020252 858037043 67935098 956759612 261324731 447861951 790939818 885548659 392942949 304866972 357799714 242085072 925921413 824997249 328035443 292588671 847834653 349119019 688074270 376524298 946372992 28074729 273832249 847451266 987139285 576159179 617277496 807514175 595667497 697756382 890956781 372103318 425733030 491589685 436125713 176989686 413874258 804438568 909492957 559367964 50058702 527216457 360766549 154907883 844208548 423283183 902541797 20248322 849258234 492690786 955133127 408247939 555715427 634165229 14027761 134606629 380875735 815112349 184882459 893630395 705924158 194578663 442738172 102963976 98954044 874089808 753360685 788434102 606189759 936633689 545833109 101724943 398958328 630982926 88146840 522570038 105630377 516320626 467773783 27595306 68628975 360926545 986656357 810192889 823472836 717873476 600399757 750867309 981430813 69783826 661974463 556546006 496781144 745723113 250336060 300098088 109404217 807313316 926399662 748618942 920847528 208185249 364777041 702875797 407343501 890802962 436167584 28850150 416144588 838163934 984577526 202006065 999495387 921965324 966264373 701608766 738904206 775921780 992133067 218931603 584016981 285712753 706484228 536202434 349321540 146320620 384619461 888712689 559363752 378808757 360980701 92671657 115839037 61929115 982753788 461037026 508649197 957912408 151133341 421596540 858741422 269678620 712924489 157780324 267495506 501670450 598912517 969617916 862536726 944637552 698181235 116795930 831676953 525919447 885746155 516710075 192653355 570974539 189727134 446518472 875249114 692743875 407030497 103794055 584450490 549324541 988632037 103222878 958720484 910093899 347255715 445546164 172532931 268900331 987882937 594155 720381544 624477015 788678686 136425045 583654115 105308297 251730545 606536991 866632180 779778040 848633846 765648812 527481172 920865066 959758244 958490721 247901127 227978551 768160204 72873464 477453643 999381005 876607101 249125044 726748045 793779427 483629675 423734051 60515627 403827623 508751723 954473841 269339015 822751746 42814761 115041561 490981461 478509405 967543704 803134739 550906924 805225138 951980916 594779065 159640618 82699447 646235499 466308758 299755920 151046054 532997632 414931695 250364685 919595461 608756481 621434707 600425990 788231088 973989929 738725896 929437733 175188651 693503216 843518516 854826505 457195532 700956337 194011351 19852047 970920830 629079404 924074772 730106936 463076071 488696814 200105385 125847462 545057124 738205813 840338145 824175575 726804238 991817098 179027716 719561501 528344368 610284643 883305029 657162955 921266163 481680775 412060585 223053005 601607154 484579694 694485015 686242124 611930056 474733692 288643939 6328441 483180271 924724994 140994972 78648661 401242877 836625668 554761031 519305689 707010771 256715040 83697765 38300412 736960459 610472332 975565756 94790295 399150181 128563539 570220450 139246211 85217820 635353247 369637143 20456129 759012241 888559591 196065097 243753203 226703611 279131843 408116018 663292190 838763015 666218339 534607926 43661004 911899135 870025604 936087024 354298076 147923150 269690669 213143772 104341833 83173387 473810127 829146567 857264946 923703660 475100375 334192337 804942757 103199105 352676097 507359134 802418870 871216413 993562751 351829172 256604898 275716978 172874431 203309919 561512785 846602353 510225948 123858195 553514379 85962948 998205263 948910339 212614235 510595683 964005248 622226212 494927870 710043973 422675518 621880962 505750675 215568522 827292439 309665899 923249269 750097744 629026718 836632956 944373933 112097124 784605510 514274184 993986132 789757621 988612810 174886647 391930925 855112519 482614501 666049253 718888362 227649939 554960779 446085532 696453676 484922628 527596554 627263410 548046498 242954802 203573602 795928162 107028939 663218290 643939909 221297071 930878206 677663364 567993834 131086763 626293947 63203143 772342002 129880965 79421952 954628222 689639205 82765140 988505916 759102586 238107878 123642592 457982231 286044179 767897021 117056113 463136256 136563869 735780226 920710966 884747682 132776957 134888436 299248635 724852109 866598045 56058607 268060901 871172306 72976228 111073648 492087402 9782883 346846296 768649064 419143681 46237178 129916463 65213189 390354322 931732744 245229319 752196838 582696795 418104642 800491835 13362659 547476092 821808597 859335962 890568216 730060700 441892985 973624969 558104409 747434769 125996014 743310595 200881527 415370079 471600418 439934184 249615090 724697842 646892218 851609370 79638507 116798700 878613706 308079501 217519626 548587057 320780783 150140941 588272374 400446100 106949716 113499794 157022771 458912143 399497974 460251355 958618002 225520778 420308271 929117329 322725155 995040420 428278440 722270449 398430683 593495390 660316585 684255255 981548246 880260939 753089131 969252505 648575889 361949422 913029536 913139650 989323952 533699968 433965383 286036920 659389733 303623805 207904868 319473102 823267756 329207310 58463401 744632679 245434110 377056392 130602041 799571142 517664039 62785942 800573648 738821960 666614388 598034024 993878470 901548562 794161198 346424984 197640409 922561732 651494971 947123541 884532791 193704457 829213539 973245192 735738308 688252655 675737323 363932493 260200057 164673983 527508780 391579673 783482140 535732532 972023780 66872466 831245487 150695823 242389159 201826440 807326022 795340471 857604960 437063485 741301938 512495954 916777342 164183330 601074305 221729639 830411596 470981977 992353433 725460031 105915627 629091761 38530209 486530299 554795927 343994053 230324634 789113952 890003513 609794270 754561650 865672243 312311871 180838778 132947744 721217708 392113011 279094912 218164812 721530594 223842507 300827318 100136008 841746553 77107813 523964225 865457224 426585798 76429089 331910156 105040832 211969608 443269414 931881865 558656516 785152138 97079554 272426445 80208732 971351916 922970757 945536265 43766244 18309403 388205523 94854988 600866469 159992470 87246212 247397623 613900886 736936037 895564369 86355314 405276861 598315041 313962274 789402495 252569656 795130597 882457174 165843877 857145790 850429318 483134549 839073284 699794917 95192629 37228103 904663260 117411053 224190956 106301646 619429708 174027753 481800502 572215686 217676110 356987675 950651785 773299184 828582878 487721377 750630746 399275049 530706758 503506171 144117225 110655059 205493522 576065905 479586221 469078267 204634643 263027359 772493929 793471112 419867242 802716744 724045936 23969251 594689732 571104270 902174423 630134396 74500635 800932520 462195264 537361272 87092240 736710924 834887831 93745858 516152881 35465414 376152101 97181819 411514391 937383244 549158167 768666097 171416109 933004508 459489020 275710632 135706618 694322769 974168331 116890275 499562684 618808544 585433702 794797178 875886216 682839711 920701307 828085491 734576618 857879920 506295087 107803929 707902491 305380737 723545889 694610744 518421915 900015693 777068018 871356423 584733836 962326195 745972527 725309895 733724439 885658552 125160137 698029921 39767021 361141774 685249593 607150749 984424640 596191609 440974398 761731338 525042645 670658802 167942400 703228322 272231919 205172901 666522683 307953034 543821821 168291040 115430515 622067463 389959415 681197109 439822031 807087812 300695401 125255388 545095503 53825864 395182953 785248891 619895810 618359885 411041896 771132490 161927352 97082293 397169285 899923481 505454309 461184646 633141051 203342586 65432014 459096463 474675766 882256590 417535858 375680089 609342053 615474818 364583310 140311667 583288257 398560157 416743280 486241804 464256608 739507180 119065035 730125352 677673385 432971904 946556663 795660565 900034153 49575416 273219416 729231339 75131227 148777733 764357943 64845948 862978954 549597414 148834158 651097027 797583860 550726020 81336991 42849970 17999159 721963672 740584734 865811104 922406000 670471974 15344491 806179270 985683165 516744694 590745137 161087011 139190243 378484228 836379698 264794172 332721138 44307706 862855407 861701238 795825071 335670905 368906524 13928621 628005581 426469081 334898429 877433725 829566953 516329558 278844047 86390141 861888179 638744264 534290591 113812888 333638955 383497153 786809244 161836004 746031846 410156350 356957858 227844550 536626387 369497513 822762996 481198960 925721873 243447678 295671567 471862823 62893654 120935497 305843688 697964127 679673015 716033810 73167845 89514042 883595238 334820888 250618178 39593665 303130559 247822041 856014504 360445437 197941247 347118937 377489932 763157171 11400108 410604095 277701732 920535385 671172682 270244972 282011700 624353337 202363504 135335915 451973106 884050322 206751299 312788313 506074129 759917942 609085499 868233356 361933692 965339602 36772707 217653940 132975225 185742985 97772224 863230251 524092234 619640324 288223796 236667898 991874673 94400426 260520817 994279271 528008246 950734515 166881752 568731550 603317958 518562467 279170505 493533287 577248727 498103407 810844253 837062874 907771168 48276337 75199768 968571899 677128534 469499438 132025023 265766275 335097291 565389324 154237021 159978890 239403236 681211704 720328815 156686639 554799895 193033776 174297630 221388555 264727935 938616472 706892430 419763220 244578162 46964989 138824745 742984186 462054449 154837120 346015323 284368196 569618037 935218048 974393272 855748599 571090099 268074870 525062420 460549441 713571036 372384654 287396434 449544480 780681048 996851240 373648223 54144853 435259598 407665571 749754504 354225890 952930899 140139297 102845973 967523660 588245990 60995522 275058306 702365251 347910821 812134902 232292090 875770615 928440231 34239607 900438941 449672858 656164257 705775898 173553803 413680897 929053281 328026040 670885610 820045045 121610732 560826629 893097674 353338738 214972002 907938277 640078054 363233568 4239617 492394000 450493511 841539074 129593180 935909256 966185078 420784265 364066865 61039535 51990578 622100619 15475637 804574152 170429145 606427938 926388661 14287101 552996259 782839411 231784028 319780566 45611630 823761463 432698332 701137563 756801706 569254343 592538051 829317177 285500019 972118260 892884705 132920245 416061000 119678554 812305183 930859680 917586154 98535150 54283868 450080009 495829885 513594408 780022153 688445538 264403479 28508486 264678785 665269482 529021377 67944108 897226210 824540528 879720075 178279333 307645188 174021286 17251711 769620751 36819400 736883309 159223227 863595491 165417814 352800537 510165597 788000904 939838476 297452124 953041385 750499771 188806279 361961721 388324211 54922232 835227996 605796763 787506416 828443915 112331682 652495111 509490767 672218874 665140911 808407750 584468989 101392958 440179436 311002379 269456042 759654721 259842206 906536695 570533245 760215594 989743492 414169378 361264416 36659761 177630756 177933427 332636098 766462089 313503768 323438551 57352669 586634591 607283804 477502070 496106508 202741345 186884760 71641389 96282418 856935253 896481898 973397177 391896336 100644783 4287285 379954362 654955843 984642606 975036764 160426690 225272351 466620930 431173379 971352881 119450198 994452937 253263666 619028647 760879064 615930999 61087697 325247481 608094077 723218533 447563477 407400834 837026031 32161731 102137642 294833976 242592349 851943465 156571063 103456836 999064897 189497441 529106343 759376082 961829936 163340814 126120967 787349526 579478194 86994842 527628063 322632234 115909966 348370169 54664240 295471038 368818559 430285810 778098788 777162564 372563015 762857249 960171145 665424524 910977333 808816503 284791169 260425659 814419927 56846277 502627356 118831600 628360333 165921986 449162567 890122122 115670763 687441596 122250634 529975811 341660595 613468082 172855348 475218531 903037469 807963129 842572870 841836689 970664774 640363090 641315190 584909470 548427240 672491082 24410799 176249987 281412710 121719636 230022268 495986384 125013841 464924837 117837092 506846230 85720959 849950563 151193924 99195616 483665956 34933921 35206382 40142625 816515611 619371427 192484482 786415068 879801947 139654083 628668405 378978365 987014434 442576817 760012699 785303274 280166877 879096254 152545085 914492509 114549410 322519228 742589196 225812664 913533133 562828225 518811890 21949107 498199385 426700263 667869183 471493849 475479364 147623374 825782439 618693032 787465187 917696246 807552510 401469178 586974823 348666300 414907380 177173409 835342179 403760667 532373663 675034206 888527814 693986457 376156840 218942815 549004875 542370559 182084305 825916856 465167626 238241476 493158022 747487762 955600518 35029800 278390255 159777858 562992097 393220273 126342261 487772794 495671778 168954611 247746008 529872171 737583501 919709879 124961795 205843615 210536465 853543167 919317535 167410823 515059989 714327967 176452827 47501918 675160407 177681616 693982066 918495590 328219322 863938058 938186161 181507270 136056928 583175903 64218284 717169896 112508495 381208814 30431053 7672140 414537817 794013134 229904590 993141458 924293228 512272939 738741787 16798421 567191475 936807193 75819448 598413692 39300791 772505203 892621033 372071161 53318643 169840801 95528950 879041242 721732106 942072440 260989839 985864799 368166245 95931238 324858585 498849685 205483657 59171241 118522113 220820431 634064171 245051656 405241247 156170015 474227893 39439704 181041806 315514067 841593021 887112927 692169472 293223293 849028682 351245427 443500599 584684172 700829298 884933810 62620491 267699360 158047073 209729332 83334126 666523526 107632050 389297982 291887988 370383716 378435099 196407334 309893918 740016450 282622785 416808002 113242381 946917373 851606654 664731950 148786038 145809253 618958372 167759768 820904028 401566320 679350714 420740879 120999461 335043259 560862504 137548545 465545531 339427025 201554345 46763955 217269221 168086791 596589514 561267827 294194843 763322215 879950564 837815454 825730969 795697667 943367147 977329626 829213110 93085181 840793246 875286556 418539115 21109106 994144176 305986259 696706639 107414650 278711496 657093670 251505921 665012371 140835958 869702374 107873564 477136663 886408592 841024447 195716333 94128351 939484782 260289051 636682501 704220733 640078002 829306577 528291484 503397200 585236787 984962810 695724367 98096012 169485691 438293259 13810131 585057973 612332104 756730233 227124109 120694387 667496814 806850927 708448564 225053138 914032278 890345606 812826890 493588087 845855634 251420002 830582268 596183694 95661971 4947152 393363121 671479605 586786679 949147331 532255141 477417250 997075544 172625036 107364340 57497403 458987081 234376127 555932031 108816511 530848347 254801826 900397185 158883014 353623756 798260777 950743568 602155881 673155485 863651591 210944572 400012619 613157394 689981812 640301005 386887037 573161698 935426995 104560621 945173747 610514590 110086426 144235669 260845482 198823627 422209336 691289642 548077490 652309287 447953150 719520874 292217898 253614339 410253701 750343754 337633540 779409960 451220428 903855967 821999021 202833864 175358296 65923170 615299367 508536112 733656081 498312688 165233799 377052518 422724913 414686350 787949431 587090615 916068974 275280087 147363584 929459069 221872564 434280374 281812992 848092100 486992259 556852962 842430701 432857447 140591186 608432316 703338856 34556320 450906598 732369965 792988539 532459190 812360038 349516950 819484521 815680107 172173041 846035035 872431841 627138936 491496446 189362436 314366231 409527722 206987756 81844006 16058419 766991572 675589443 263684580 118956717 319868646 590809235 627827958 773798534 852689742 695340727 990812398 759437138 725600277 913832532 590036759 848253483 418674568 166606345 891183892 635348378 787351649 206652795 226435698 554890482 164542293 864453671 530377601 227427611 733957688 26083804 747312890 791550003 685131398 939907778 424468767 349746252 401442595 456825204 599296146 956475402 913697567 971664604 335465908 577291206 414863960 141144089 929681071 689687097 75810461 885663559 573467396 359551244 303899294 939475672 186561192 980577640 411053364 94891968 313329127 834237580 192714051 790456406 383345613 701551566 689463766 748754017 281133662 319304139 49436521 155891516 901493611 985447650 484291644 976486957 30328671 997170643 680179366 911768443 335973229 520379392 762408999 343223459 653114196 552172044 815167499 368727170 43896952 861806225 501466980 42113047 92873469 8765408 919005713 55540863 829945007 56929925 33298927 168081313 101114104 821316198 114260139 611383788 189931616 250248888 140421782 71336778 16778922 148259203 624789417 652865878 254858247 545527878 8695157 989860633 484914430 60879844 47626357 78484480 275872458 219562272 138023334 575505123 413186960 938969210 187313338 692077468 439453185 568220653 93790728 985921329 675488976 246238966 31517424 847402635 720213043 239219445 496978364 609041008 175110261 674922222 555856212 957093020 740074808 756648085 217740551 346443522 369418779 746167480 909864459 363602773 587134104 114928504 334297145 232343931 678675731 320255554 962673822 266914389 40917462 295052451 941858748 686392868 819686472 763354966 277973263 832810033 643043811 128064424 351480898 529270068 382974171 634636015 440570958 189613692 646646385 410997949 223899738 961135783 476736118 844409645 757453176 391176686 650343847 2254977 465439838 191356975 37366505 308775665 843593061 878699125 194214533 907755630 454813544 974172836 429258269 733397010 640512803 581080725 726663843 723141963 908238783 502564713 307670238 603532015 638667056 331493182 515583390 679681018 400179568 239516587 402426332 83718577 461426960 971528782 887051743 820457265 144803315 469351171 867627679 703160941 14968786 478617752 501172430 866067902 26859744 770268176 156608139 728713197 949589253 797460648 64456079 439705244 463567270 627703157 67405463 684422788 53871188 131898482 524303563 208703388 872140678 564415220 202870541 894466170 313048404 798811244 761113803 389042521 542574353 363949306 221000367 332213819 997475662 236705815 939902852 669716741 858207434 7506256 379454587 616672624 578062612 111114455 341425478 895556049 216623251 409802158 946361811 393054507 707855684 666610317 661016984 562562379 370252426 411307034 802533152 16821948 738568597 690895232 77171744 37711543 241865729 273953594 272626690 710130907 280923433 715456243 245906676 722423013 129470962 266815564 112164184 435683947 78832041 784778320 245156042 240608350 743102718 410985658 565392579 807109481 263604260 770698370 496387563 176085822 123910823 769269614 745207420 327437160 660336012 473557502 734417357 336879833 170649943 369301394 898646282 931654099 258704346 966634162 941113795 587598424 312706061 21115910 101044143 715849342 439536547 471969305 452859721 200660808 674479187 824707750 757924035 948160669 408203860 797271475 174939288 616827077 994604043 78655562 444697888 232133322 150081794 651913439 654017615 429796013 962301723 950692190 764966698 171966833 21360109 950249029 834337411 92632066 977588399 863968113 657662496 415407400 389361575 738232471 212564112 140598137 643976206 375009440 771881354 235479041 821925704 596945405 472858501 917788382 805201907 769973090 424154268 825909461 415892379 270425434 233949341 507020672 97841871 318308330 368966289 982024176 123428735 140183265 572237063 983146198 427196373 907631962 556934058 470682449 228049254 405164021 852977690 912596172 393693100 856954568 227475301 563980006 249183770 547955408 452381326 647107140 267168833 456794920 221175435 742893925 379192237 796810453 921194925 262264308 443888436 585391919 113026964 372260855 726570245 251389042 602792784 632732041 474330255 952169628 696085690 98801190 72530343 925350488 261217584 359018270 308470892 219732306 389428054 656001272 28652663 315782724 721635966 996554343 575945520 608990435 501839742 184657360 834800110 254024897 759723985 606268417 511937657 30755643 144474679 686174467 453481035 362053814 608960952 935781168 633060381 401887395 205067748 344710730 649932581 12489213 964083863 588074230 258544026 644870100 117042837 872822520 760180058 891400746 7227534 727429521 664014701 408223898 450165802 942515872 34114387 398720729 521839460 568973266 10217785 739037112 494440639 91593842 125725412 891089507 458802415 704076745 671872844 107578523 159571701 141032845 546875128 184789257 443732533 975135568 545571568 558208995 215888 947596334 88691311 39634754 508364479 541531062 759377456 38215024 972155252 349935164 145591075 644229239 686898298 898943287 500519248 61751193 966650633 136496772 741754388 608156706 265913909 994974691 900376949 38866804 217707800 693910101 504988940 865967372 612055999 72879914 711308629 788568453 852651220 125057095 298252928 694919470 326085123 35190971 459595916 103052779 890205255 834949593 349037163 167023656 811985315 929551413 798963166 930583061 666584496 927794633 489483430 472468229 460037407 435956966 253422022 839470401 211562512 998461106 871737261 157020810 292797547 886360518 189159359 155269406 524490298 312121347 554328585 466589438 905243097 839384597 880478232 45189213 485114237 955515543 415913986 471549905 328071373 182805901 346784787 840031491 710598117 94570469 697936146 311280061 675416755 771149718 770473805 298410684 104053043 221595875 49595623 992413886 552249133 616010540 1298839 991182091 748396666 245803039 948018128 762353950 173266446 615125501 897345844 892165771 749375944 566589571 676523904 503203405 689638603 909735356 104207987 951830121 59327490 594394970 306145463 599082722 893100328 824671420 542747467 314979746 836086267 338397062 827057819 421050116 825216325 249523751 179669345 376821340 998950395 33218142 200571885 124210873 650653210 556768781 233187443 17968671 221490728 498670660 644785599 875227948 54664788 656435066 666128354 897465425 86152648 306993566 336426350 565057509 25385388 187819929 141564971 863534285 10503749 436366840 766002291 164097505 386435121 474008233 622276350 992610729 650041771 785698121 624376680 24147211 560814365 957800980 187598020 289418808 53592927 272576770 419432279 860155416 647568995 385772698 312997588 159131978 595282754 91948921 681545470 113940429 263379510 170948052 751971347 471883439 227796245 409750980 268488230 273264186 869713410 565478998 660085233 982589536 390455950 421501083 401014373 611969798 451061375 560674466 866779149 579128321 435101754 529356943 365554118 614109024 852113653 697209669 405652748 228896244 128132198 394134250 819174498 353067037 871281872 88122225 995172210 961747257 735960153 996535802 139541832 465817731 179855136 130025451 496414771 592534611 836990767 811891741 248806447 315687513 168653582 157944457 86915855 284026335 660197709 380332365 101755946 758373950 97504607 641727169 800268910 92537257 962458433 223682590 152438755 985657943 142167408 925236024 609544676 550265919 650938649 239709562 749146704 360785546 69685798 821514816 553825648 333481941 25651266 825117462 582852201 994024951 942015803 878421844 734382510 874688138 392913410 345385255 93176756 475984453 799793863 683039906 286008968 266919249 965267854 183981309 762482809 901429198 215713311 243264193 674355038 37500274 445083850 367291531 849308512 501327991 383917785 341399076 684887966 99063075 670661208 619994554 4447525 637349970 874306004 444259944 849673523 103734627 904125780 514873076 246005459 153010785 674984193 59039525 434171305 477312954 501234307 135640848 709326513 513683809 770052903 611352131 521699418 275080503 795623104 609093621 853611356 402642747 315836819 125858825 963868656 582714864 608342320 375249043 430824229 201361219 162711895 167753770 61597494 600181224 468657047 714546650 222099991 215870882 277372557 740131974 125598075 919247249 872651923 647564844 717882521 385907870 894293001 460369060 72787668 639944633 61284860 975392598 138619171 806373657 824911931 966148723 62314824 959588426 258265592 919610768 178457772 202108312 526166586 558341291 974418247 21977701 996807381 470838725 124958163 304120245 279055335 981366799 113467720 1101119 515876367 781238849 741955583 264797979 82580311 807192685 522177394 363572648 285457344 776326755 506524920 935704555 646596178 651775987 231351193 760179418 218875337 841058255 28587883 673687142 579344487 684312677 258323446 653668561 374980036 190097051 47328726 875718945 140550827 766407953 512437971 65723518 460986581 881888252 833844205 530338854 257507024 661788130 949929767 508573761 331598928 198457027 69991083 146172848 571488723 61630052 330337768 33501813 10948270 10821327 357590588 514996239 244525181 533928601 759115317 358120615 935503335 104196085 957824533 170818231 261642710 742942224 678508647 715264240 610893423 972111577 916595673 396197000 229037713 962316477 645163988 456074754 165464889 723798761 785991069 445895532 734267939 974987937 954748825 688068472 196446928 231854518 95590589 205122706 462273266 194737191 773857420 821773238 424086441 508512725 140940362 942101109 766849626 465790491 8791172 87324064 247432659 697561620 468663530 270457050 20273357 416462344 409077028 904621051 880520520 174829162 542119322 12623474 931982809 535150880 905015008 167072258 290839396 231516606 301705399 351422102 681455042 357606186 276470622 555846712 75391382 277928729 862759997 345670243 370722411 725286451 735238025 299791652 973023811 8811407 704194711 535597933 115995522 147114323 608793057 689522958 818854395 552189750 254166920 60880305 393105205 77946694 288820115 963590468 27197576 787369807 394508255 496390384 924153610 222107273 385473478 454167793 442002874 912932038 447612428 836816348 208510523 486708143 884971563 722978177 198634149 142326899 677487392 251055426 939461595 792722961 832297029 468774883 177923969 451697137 917372783 148015342 431843994 618055974 220171104 528336442 888794529 189361081 79246632 772158523 415346197 397750169 874837222 405601811 372872072 360915235 879556163 874158206 704584058 992267121 435308472 725525520 96790561 639173312 518684008 689960560 546474506 253271449 5514083 542301748 301607252 802906039 37135684 391181307 268746491 938365633 625107477 531034080 742159340 660924916 888755923 952051461 105402769 770090142 425014442 755790307 214908519 549809242 723046124 777020265 731372921 338139116 841314463 827481984 96089676 791792440 434963559 75030920 339541673 669670776 44776937 826661127 359231808 474613668 622871869 674984568 919894222 878051761 796774315 697409202 20895963 654513059 857878524 387570037 261299156 260757218 581192325 278871057 361421869 80807059 138015742 887108998 907803077 628023165 478117933 816792493 634530036 785510479 646168583 191452563 133302139 811260754 715836511 977439600 122083709 119908399 527418438 732469571 280405728 338216384 699689857 654688751 501629739 708834235 417958794 224286370 640965775 332534367 311651393 561380914 137799109 647290393 116211002 52385719 176853826 679615046 309536541 736331272 619888111 920522721 939417542 470011564 440984535 978695950 803591434 926045036 364210045 35107670 406125249 345122476 625415439 129849863 93403403 135107073 586191272 244674650 139660864 328330733 572662581 221286426 942188538 739837221 779369958 856337283 740145898 821307757 979325283 952412569 148206618 840395845 607111135 900931587 395477055 616594062 508227816 504093880 762633084 286742330 646903900 68785296 322184541 326688669 799909699 249031710 556419442 183075387 717239569 580041370 318446540 736147502 13314448 802134643 704988486 459233281 719819438 272939739 346738589 59727350 992001633 656718095 758464304 500416931 33894076 436123382 315492141 276853820 742261732 857805148 402947955 390306326 863329962 678825209 281304387 439897848 581126692 794969535 649733755 371442477 140114347 865138285 458256312 954763153 827684173 854334713 202856781 454673499 1070120 932131569 723945010 918156878 189034811 128019854 2188385 654024834 390931721 5271419 369694874 755566062 520001344 141052137 842595047 317767612 776172642 990109718 180283643 53379392 248508577 68238425 884880353 652775518 686025815 667249549 986461613 455967757 508678858 391404199 429829153 150520809 311074094 618862934 632494991 648018451 408653859 392393624 983149355 865463020 22437187 758524827 666166731 402060095 390931488 197655470 85499550 949899695 43997345 606199755 366440616 39018494 854732648 154844209 313100776 845460425 25577445 768708681 783695943 647134441 334625942 793696896 780612146 938236018 656922245 999995963 350424399 579619181 977165367 440554371 586261863 622599170 348209202 622488571 110821364 26151277 240014540 356567003 339207888 861437218 271523216 596886917 988447105 797613652 857606177 564258393 957751296 447876510 572553515 75769166 346935121 807238332 862571267 934282048 51078546 216509087 900772760 692061223 978856203 818753494 838941130 652673989 313053394 807934825 214305949 111156678 771381728 497105230 747961553 968366730 338612862 43932344 519004853 302140756 845865198 762199347 914087318 453954458 494068711 488972247 902092124 322540442 348605731 205452794 235877768 613473256 784357114 854796839 573214733 541090391 663417313 594539827 133389046 266377248 694168797 751154345 298303694 846744139 615480596 841488431 943375951 644554847 439568260 645773660 574079827 627126306 711017554 953854364 506248786 681136212 404169196 340927106 911451240 755853220 214342605 809501311 26298107 595488523 863214957 790128676 902336962 918343075 895278078 624641851 252264311 439613187 391995091 148033433 302547565 818957036 242237983 520485453 310216509 235306508 428693391 174458275 921079949 117240293 950262983 931237318 969971463 960333306 897238485 958149968 64658264 588517109 572610631 773288274 904176032 450872063 933594882 490455615 636309439 923034103 940748911 115805526 319142192 863197710 930447282 613206824 798107005 687175027 441569871 880083111 25821813 129839314 913233604 13543960 734904709 600937411 188402082 459409856 834412450 587922727 614737404 623037334 564519317 674130947 796371182 412550898 553332778 682258129 325740529 408489506 763332378 158870374 365326691 407548571 297437431 339803320 18236576 989474423 115739655 455774057 841421336 30319748 266621147 988620817 836109964 306258947 351816790 876504427 485738838 196433101 855769070 549793893 353194744 67851870 150576887 521745737 231589545 598851742 487206430 611272958 163173295 324758036 151983333 83052434 396003401 398452509 405852267 569733458 563753731 867866445 319787166 708197299 703840016 389854167 178648836 811454299 427715204 33178532 531734725 801042631 452549655 915002591 254205992 73494896 696074757 553627856 78750147 71111506 107482966 471356706 565435621 475940396 879910191 355736684 600322020 226518879 954711665 622374709 388370769 69118488 213871754 435911384 962511567 542053620 838278734 748860756 251892723 627911961 268614966 918072521 769633547 201946202 585317793 592010370 635595290 17501558 803025564 808216765 621848273 420584121 604082233 439218076 251502401 501496328 473496452 910009157 526131564 642695379 371623158 131939479 255325862 273963724 255062484 536815654 543632625 550255919 836085324 387243402 707957211 774283323 544571360 793565015 41205152 286677351 807274673 35619383 239488039 476056699 659366905 712865098 339744786 574971868 289223376 963339770 59881901 551769465 891043892 911398728 81846413 950703724 752935935 618717848 899159080 905156658 77742938 49689687 362337724 69897652 54200199 659946088 161835706 654212843 70612928 309389006 125714132 921388897 509225118 331572498 470808415 629781891 685404621 656976888 93592481 134493547 307564585 170350902 531701475 238415655 822887147 79864861 917550833 868993815 882022912 681389100 675393082 309759655 140354686 217707665 26493633 737055702 817940119 666410440 87412738 512967192 231621735 463370866 413874917 254708298 167053222 163315680 91855948 383722401 68960507 823060995 306905588 865995249 831778591 390277409 910518869 152651682 391697406 894739069 229668087 351455151 185169962 199759302 678574606 214786543 164179094 194228196 797224012 433671546 357350226 831897951 945092342 541443468 883469254 926409947 268688747 328328874 255130146 969222486 82174980 504817944 148573465 352473008 658822045 798054873 783912059 355937821 253346467 847920981 247794549 450114519 267507133 220964196 958191944 676081650 553585582 149487148 460920367 844572171 96242594 137555118 279860791 752277757 816167348 261707829 688998083 744189684 656002098 585136420 695847861 423499913 538607366 650391908 963149503 876026977 791061079 353316505 51097644 141309959 24372207 769254233 79003648 420541254 987995678 518632564 184653807 895366037 724271181 6117223 607903427 499265061 389045082 876240150 854209833 737119045 555451863 902686834 821876388 946664353 885245496 838646350 525893545 513793935 743954708 336170154 673505675 804631804 902194838 273065727 253390483 445009867 463007777 618905327 670151840 525613392 808544430 829425827 349353663 714994615 391103577 324675442 345530098 611036405 842098066 301632107 152246339 982944123 556138536 329056244 361713780 630176309 71959662 828917265 461928952 362352758 34549794 41220964 294804221 398537821 173513687 764903578 642907732 727163760 307236766 700853116 25454078 219673898 595036499 162537196 235296247 422201454 552585078 33754032 318378296 699196267 97397272 486302414 665120762 405989734 146504834 418794105 557873849 694117448 669000370 344713935 74355020 589211232 50512493 776282656 438808927 334976664 423945558 66522007 44831897 264521410 754331971 377806929 914266178 334036269 406347632 459980473 246237134 657662878 884697895 938162573 277059937 78432350 759648106 965958813 588722186 474350686 214753080 104883625 320543805 75332584 986277681 499043416 887913468 466916051 337068397 899450331 681983964 587305639 13626573 319078095 774533229 966323875 907567089 619296846 877774318 648866594 649024416 752969224 24947810 423557950 882544547 552120672 726800827 117952483 349357270 678902215 837571512 163570527 242822575 118144551 593297618 479290251 409276349 923220075 968578073 123225533 951440423 818919437 336468236 498563599 84937964 993695320 666530905 646750770 454304055 973060255 626906887 148239441 923793421 967938145 422569419 62192033 928558359 596107716 487187095 446443 18437108 499100534 467196731 140988588 602175031 636374356 810496358 719681887 123792309 714160801 504054083 463470798 638581157 765785241 931441282 833594996 813799208 917017574 792601566 267427907 436146146 147486582 789322299 953723297 605492803 258848993 641245510 808873439 662024726 405668527 136282187 491250160 534558974 189073041 604722358 336037071 844574530 873392735 217779999 242806609 124465158 801041853 588036629 190932713 458270030 931421785 651239637 988373339 955547285 375559606 455042364 182434000 924401152 78862941 598295736 731049740 753221550 789558794 170330688 737436317 479740454 60705587 917546793 227555016 445501963 220128492 336096752 617863245 569501346 72369610 211036322 380351366 699678173 865756793 558111419 351632346 542538626 214537155 21048737 466041871 548786823 672633287 806070757 80190084 987959771 922801315 574546606 108231213 331046753 824093684 191918578 363966799 115199582 222468842 335073475 559221016 23727762 269924238 845346458 588517519 299158000 528386838 845905625 254493962 140343692 367097965 78119705 348817178 75273012 839814125 740172881 357122241 862871122 959230851 401039362 169848960 209345431 85354521 981633923 272933706 580993191 695869251 916977664 262604453 652837168 814097733 269592498 940269202 821641246 898847984 960042464 333381692 516079649 37788759 39317144 264298017 788062254 438716223 545260015 464774991 88552395 290045084 900133083 774679966 272318331 925901788 436542069 846706137 80377994 946065486 114207119 983028343 438145000 127184050 501303814 655541589 310354743 62222285 935599731 490290097 436085377 336793546 20147397 239406599 937368355 201886823 955427442 741662736 598192499 367800110 143007886 646033206 887699390 881000591 669807220 704717802 112715679 952996325 40817238 403480469 509392088 757177409 226413810 940372166 910237476 284891069 624839504 668285209 142057252 369398463 669049019 628361799 51889590 919718190 716474453 986743221 872443877 614647527 872401322 61894853 161629940 34593155 327338381 233387421 17421429 15812031 392212483 311904553 547814227 157964052 450270570 742726200 184672808 994211529 689229850 940689054 683912925 646632168 963997535 944468901 158962989 314634529 991805627 133448404 418754460 443546703 64984889 662805649 638634958 990955503 306957300 663725463 612720739 945831913 127130596 468842286 256597237 850137776 155201200 130404631 157933748 959740571 256967014 541906901 868050405 738986259 860530450 227855015 297075388 769977995 94556380 902531774 731595409 830529157 914939364 351690134 704764147 69940150 724574943 209422816 241979272 266826332 764955016 627971607 586642821 936469965 158735551 265048732 737727973 433134514 712631179 109698440 691643353 503176807 918353325 581095377 274337945 926616141 5943496 316426585 989874271 372181367 102539981 457952647 450763557 996468845 982665630 528710475 933072123 31694120 505573460 355307779 132726699 384030887 356759669 448879821 976300734 568161947 377293861 420898215 513435141 79688498 365583378 852854851 740212662 849346621 1733403 350741290 491825746 867441502 656666087 769221379 399628245 522422490 997846588 397334051 877878149 285070373 284315017 608192665 339926679 244486009 530644765 756394388 446645750 405443110 765759223 54366697 866800548 135044718 911373199 481544245 340688408 687549333 199912556 703819871 181138327 196598518 369331172 523331959 641823838 768090645 448536885 833888691 232052993 464243344 579587191 765034735 646774059 487614277 197734483 106847116 872637234 780451617 979458215 660068108 636843391 384922325 337800065 161539001 218081223 878077719 17997484 667417774 286013528 391157338 957428720 34918315 377363816 630486937 638273148 63588038 343373342 771937565 661058001 667562211 600816211 317302768 249346289 203819615 3454574 700554345 383305594 379241493 489670383 484301359 754932264 258319146 558984216 682380552 754967488 821668396 482855563 573367313 241592823 522602028 287638786 814682986 132264214 69888336 198808212 601034484 14570080 231585991 313681664 447989952 489901081 366976706 88188665 253628539 29256814 765689114 468279291 772157213 349454626 297070544 50265859 143075630 832696062 897965200 250894740 448318154 31210847 757179337 978880331 210716603 703404082 274171559 333785500 387384906 791002768 730498774 134374757 1050385 240406797 74721229 517956675 56649965 282518696 935558446 497541071 712772575 871244627 188214519 505331331 311628660 715964169 844112014 33019434 154725602 496854944 947233734 467970368 826647784 172586660 69847309 931234591 811474407 399646865 511988370 96527511 392042918 733766597 351959703 924271015 680252709 337373227 686454283 339470541 448898751 542983955 195253533 788533304 947771108 786026705 559696797 991713344 885451418 65448957 379519637 843553737 558338529 868235060 609080024 220927881 279538662 632949105 967307973 221244967 981662343 949225923 55515307 524317318 733320229 900065298 57638461 657300640 57339566 269552840 92947751 726177137 303924807 116183704 283871606 293150329 778534002 549690851 329179067 693123740 905487787 935162553 891191146 511105732 516782425 802287083 951365400 316660238 180436146 692457528 634488178 553233295 951926323 847714677 847825442 991665621 875206111 370610008 483759537 403838423 277241486 711698358 452884435 424825678 25672541 745989742 597546723 27768282 848982119 391655208 92168150 743061997 229291685 56382452 5918940 199499692 196734713 794198089 624012678 390220862 609125751 37518214 898239561 762947746 454171305 978504443 932142885 218141238 15056715 186749837 367180044 347176264 544246093 327783786 692287206 186264365 473888576 6926173 652239775 649110074 434077063 572947881 649949151 239315066 308612664 134222007 829895689 854810325 998620418 560694640 238565374 903577572 504144941 146357112 542365971 38353316 540816965 100289545 23193527 741919669 798119316 421575711 181053996 152291947 40469881 842310426 161767329 730672077 90492308 316755966 913969828 661561221 296819573 508337990 881918629 20605569 1980556 973200999 658676740 338757365 880244378 855920806 501687266 358063832 881219713 443791527 561364629 441710345 848163543 793472712 421203905 577328038 827531572 161380780 684439144 422326478 599132190 213472281 513546065 108471574 335060 882960118 16869924 459906145 554889042 626865259 749005844 978608513 36802481 406863847 587219442 461891044 883646723 79179606 418640563 13445955 769072969 720815342 431917323 596581630 512796554 711426895 126438619 501966664 788843201 962305 450879745 295217902 241361973 552307556 83708791 999011011 431715251 865251445 626324945 460201047 467545320 572433015 637415281 343234950 245246287 938487390 996082277 114674982 450254578 459871584 68951035 288731279 691026122 658622569 678215577 609399183 125363591 786764056 126941526 725169409 619101408 581599525 771117631 93483564 501329611 363801328 738645937 205479304 120241322 687415481 378629305 844889195 226535788 786590530 354739622 70748031 940543253 780821803 554728542 563185239 208819001 169801760 500597905 775977046 787189436 774476690 558359722 266821203 607961383 148421689 218703228 728368541 246804007 772229131 549579228 978589038 394166115 442659294 899375838 727486420 848917581 230349839 65805936 662140809 59866090 122339709 225463997 634729475 439944979 472293106 983565845 590151638 167507593 123221684 691694352 226867133 564016142 985324714 121609972 642564186 565283523 410821413 257159420 139594822 398084858 763320596 32887244 564170333 489089835 485086247 815169653 467909317 427577874 841777689 775977767 236308268 727640590 913696250 986528446 266046374 116228356 651425788 167140997 251308020 442628334 54205168 458252452 363207453 443347098 98866691 97613603 543869142 280155288 309474469 520377379 596696799 228465689 829843634 273788594 399266243 246322562 69074381 441194236 759670412 797370939 105676394 32493117 567580808 474665074 199762379 50705599 908634434 586863529 230097879 39418247 663916961 800283118 956522811 450183946 942099338 940991596 144096291 908121328 818299452 525220376 927038994 97019363 791221560 897135825 687031822 578526062 369202266 819279204 717991761 105998223 505317429 776637583 482933493 28774963 900083399 5707282 640790858 542025721 21583149 696812666 455068947 881963161 690056546 510389678 353903371 661121887 397964656 297426087 78852083 268978411 330530140 225713949 291383415 970508376 473988312 277305726 282930499 390172661 819334873 272512273 970538823 70369675 729789776 436846758 39620856 10298586 317918757 177563407 963298042 903060931 702130857 392748241 663587450 506209667 303701850 441238784 40658487 975568738 591656615 167158004 887213471 792304275 708958215 500381403 318750210 71400931 346520673 319657100 854413262 458939447 723854446 800549165 556156520 666245087 478118461 153651706 479383260 834257747 68426955 979869420 470592439 316187250 77514168 357247054 786842138 202419130 65796260 149258069 341203206 341958130 440008658 575585711 721464254 317568405 257350907 965252356 164306343 173365224 803734458 801145901 999571965 131655504 275913566 283550006 603472397 784203215 777171991 494236929 130039856 29313667 440841060 382213215 654005521 965858298 489261309 204048885 444921241 710663840 683371021 352823434 11405210 874843378 475503860 487788335 539752508 276162091 589768718 257118593 758812019 71250906 864443560 807140011 100721593 140992285 534478845 448654440 937037023 356892661 812792826 932915274 518034371 915934333 519097288 570911532 989153943 798098104 611166961 253892088 555360197 538474394 219050253 368767181 395178408 633095096 444217876 38438936 456669557 655038312 614812603 306612485 943565349 782260601 212386172 659682333 940876702 794783506 227550973 292769924 74246792 987369062 338728712 893796256 953452707 208843759 246568881 366592495 720984673 949620721 81021860 472328872 802275044 937176379 924767631 434329484 874857235 525121392 157108093 513944498 313717631 435635861 634143435 714608566 685333503 271532742 429653793 168680690 686729522 102041566 159483875 349462100 514348034 307904710 946410635 783338050 759892403 265826359 327135440 401416795 165772572 201013204 427899710 588055187 862299039 13080218 728919168 124782074 69518412 320593535 727446795 221603195 777533577 503903365 787310490 112505408 655613742 818538786 61363943 483199531 603535313 825765696 14518980 335779486 73036874 924618197 236804100 619325620 21308980 91772313 360997875 594692349 261659079 1933652 625593522 311927616 323888805 982552919 149600677 261957136 156710505 332261624 101945740 748707941 476523423 113494853 226270408 766548956 247175088 990506149 14194453 390494451 109883544 285345230 689330800 272714825 431434519 374530835 500642432 198127097 662219440 27330370 233620503 301083224 299616027 757082649 103960098 38077005 651951075 655993936 649707237 324627373 977639751 74950588 354982963 155983551 898984801 507751826 819416103 994241216 263805719 27490217 250622668 543876694 483908888 741029176 564515278 462960992 415281523 463027396 411537777 891651418 653547428 535855960 291033200 232454192 772406328 244809864 395482931 89734206 554971732 592660612 792721147 347314411 235484995 507680815 521505615 597688692 480345069 858302154 938577975 681047733 504820394 127063400 899424373 672545565 719578324 246813945 67604776 922276530 878244971 298069239 933417767 720841537 635317160 641733825 720178722 135625062 221398792 880329229 897479615 984918221 948217591 539631631 80818304 849311465 454335367 809714458 533578110 141176421 173450367 604156653 911470798 965520480 256547439 581034433 878177582 194066442 164196896 585856550 997311330 894907779 137336732 520721454 279010211 834101914 14224550 343644862 851874722 657536271 88322134 126264100 457755480 98696639 516412054 734077871 7017934 53856362 880018803 732333122 948574759 644914416 120879430 369073408 367091532 872020725 707750064 264101643 781482741 978237278 18507703 919675932 173528765 573263039 597534651 777939790 77899476 576671514 700572846 692481931 420641543 350331752 342571122 98973779 227912785 746058888 14791801 241072599 784346057 847943822 40778188 155617467 8791196 492499994 124922157 988703293 747404865 120710849 227157643 994777648 382299500 703577080 141265345 950702742 495675656 877955523 536110662 101256642 722137598 815059547 459577986 365548392 807259230 572213467 631347767 83256048 449853344 709030715 148576701 425284552 501306469 358996420 457682389 960581734 921129491 363981059 584168729 904579894 378180807 265851970 654631664 854293467 251270850 688181176 875413243 120976980 386747449 457612547 887938471 953420468 233892533 765747384 96854682 852679849 271886653 951168659 735774600 423255347 983661435 882039203 17304363 421775904 940114210 994179816 872422035 929144712 151388518 420116984 427681068 900519299 619940731 14553638 409748113 62552722 364479190 899076616 916939887 8362700 734593018 851777926 686184804 261142920 158246802 57304484 38140391 314086601 958382319 479115026 384229681 89960173 549284855 80412969 424054540 485588773 473779336 303519445 42214418 896006668 630485582 838474778 837284967 561716236 665758998 921728279 549337902 411054625 435459637 884681943 364966563 670324218 203489383 788417482 897264203 871953680 734746710 787618768 136102900 236661744 238255980 748615253 466084354 983733558 347002019 48557669 197775189 152549208 577327457 226619542 88796006 181019418 103677234 952578094 96515348 741214322 358401403 384369592 47724939 717618804 347285178 944370708 81229060 238108757 210061063 963582892 210614325 653970188 245572367 52422761 456663449 498084378 882670375 916740766 298790727 402201286 472119886 187135112 83880582 358808165 795439086 7379924 861440956 426451977 839596378 295726554 597109729 550344945 585145598 252721530 96112333 272170466 783519220 710268368 996699235 497972736 557858793 690764735 94893950 660440514 548480327 128566667 749058679 667350342 608466475 924504427 383260121 419915199 996981325 717652900 267454424 152948395 240220746 165645233 543544393 928086263 289025510 502811644 450281439 536697328 416628085 731823639 713386224 456857767 365800333 604424622 56389364 122731595 349592855 695429975 211335711 541625355 942544641 49530278 406659171 989062077 362119621 221594684 647482230 78324301 718384777 852358777 722597824 612911994 487907259 441133538 497741968 937905803 821186976 894837101 870126762 479933659 72976406 851197310 820991018 68759860 782316943 421019354 255365822 762708660 695120539 433824692 374087520 684438794 342494456 360592129 749110604 738465928 276169640 696564837 876237333 281399882 63935353 613498194 888836977 758123823 422658954 625667817 882066092 2417199 28853854 182957450 35515479 579453899 842081251 784615151 909049231 369481636 879317343 717439329 883413950 854419281 67643422 652896928 615589660 499117331 46479812 612911839 511579830 901830057 809804046 893524469 112847494 425423996 496345534 640435321 928675076 490482648 321422090 989187605 87681473 978446621 446463360 431020082 46633677 749739337 954520035 186859934 912792772 733337136 728036905 799946282 349550907 274393653 309880891 824420017 757561217 333195797 336310744 323234243 551120218 827004501 273959808 810850922 495206861 36953278 851342088 279735011 624902570 117034961 955170512 210728546 924354944 939340964 137272143 738362336 671861361 382148797 471949701 510134703 609486978 794871163 576239612 519502963 412740363 839709614 630432351 531500774 854144957 405414859 982830541 982889693 75164550 225841551 555587303 928392662 734554347 611782557 890351604 777122007 49845183 351035745 233121135 493847064 255025734 900058046 970604671 44586907 125882667 39449500 292927095 851461248 901954154 782168033 619224667 289636918 647933476 345852990 407299334 516670782 679219995 522919687 90090453 78060954 372607707 585253980 479517544 148696917 915543813 324946472 856613192 809561943 61321746 800029811 74393040 642258642 181325745 670258355 259126204 176075881 237763814 681054156 957156669 101512551 939191517 950977116 98929110 350187745 323211137 642440136 762056262 851294888 156037036 366636427 43858055 478852588 832959020 449096603 387090383 937849460 256973020 713195975 144503887 848072447 223732400 947042150 952415440 10144482 704592382 377603843 630671090 985957091 631313395 53258595 531855678 116581815 618662708 105155234 281249168 371376881 766087379 717785589 60413556 93412855 617836111 251604130 155318175 860392944 303917813 615711172 803551299 607895047 528424365 600473414 349626621 578690720 965210002 163878301 126363522 448148415 299191937 510086101 293729965 337533625 954720020 947608071 690693144 360005281 948290828 146478134 680916726 326105927 657783333 85895945 737647220 906093635 403751466 866707844 297210282 430382570 614095541 816244628 14225007 404537721 727020930 491599899 565202153 858312351 337784390 508335351 279259763 923255997 970249560 618142686 83400345 186333999 72005241 154202118 751755703 145537643 950189785 865151296 857422377 275301123 883377885 22293706 639147177 759272626 343536331 798376393 685107394 766966154 339416027 720408437 933939156 114317988 692408385 842268321 917172856 455254455 986437062 584721630 995369907 522016583 263575204 746490030 162196192 784189948 33306331 79344931 819298974 318523916 5886999 677551814 661771213 968006128 146373648 29143588 87850007 314558335 660107376 512915833 127135895 753548727 213693030 818805971 269825990 789075996 302629683 32991126 92509261 612014911 261655345 714120764 398378277 307777911 859250378 644666386 882519101 687500470 293055570 427966921 461417873 607904899 620233927 364762528 869187118 284152091 698406706 238103402 856313260 629845534 25325860 809631599 367454449 775514812 642034934 359175193 683080869 9799338 568325882 699886653 262037897 787862520 319299020 404038095 256347461 261928645 99272455 164111387 275070865 619710591 121858767 63592562 333207008 478254686 95963548 906469165 389504575 656205023 795555081 285552210 799216174 680647451 331740946 488377714 251138381 330412341 240773780 945097389 99455147 316783182 434314700 87692640 513623630 629659166 733060332 587023187 402553419 844687264 610360537 73516516 143575322 747828347 382220887 630502772 442653510 570073873 97281402 211915268 727762314 776032785 14077692 136972148 701775766 485992925 607962029 545495766 577942257 607576962 858815536 955825220 556680538 781013206 930327991 273053578 878139115 443204024 518922583 42729419 829373439 703778939 81273254 724554749 935501460 98896756 669030866 938241283 120651708 448066278 280958421 999089514 700470353 340042891 107354957 727874418 271954436 659740172 920933795 473508171 845586094 686535906 310198786 721446506 951292174 839475412 298991310 221813009 772453149 103943201 763003898 471806308 412377117 327594936 197901426 363268378 832000349 38360539 63725681 53529518 469030380 798821124 346294905 540174627 582430645 395432919 701251715 340829071 905410733 234505180 727531097 341477629 283710174 615801785 419849108 332228811 93171053 761522020 820523342 165855654 610161521 972497153 218221442 751132799 842858582 451501992 681365084 379549024 433142031 932922824 409520772 228650366 367450440 304159268 943270549 109272682 349866884 151239246 356608925 788438753 243080462 74489191 653967584 274966942 50457543 657367783 718586125 166026417 373491236 439716080 138934909 577286516 139551499 875349705 243790021 634491405 507910876 29701292 513743098 929719386 756542049 187258007 715501067 408936715 675136610 795601077 755826162 77949463 977489090 941271541 744514599 998195269 592469591 445146313 866628563 136540389 819627655 467046359 5199456 720622929 508909506 910697815 115106567 527471352 894354421 7073702 589368495 204501835 469927243 956936331 853153187 113001357 291601700 855373670 614011099 244182867 146995661 445232401 304753624 870540294 153516015 61547353 410513020 639667556 296384533 542889480 113849348 60310103 879685718 258602162 412777190 385684475 725411179 419473125 848524143 183536606 128124540 117849397 673584188 934417637 555344957 107161375 859681714 686877270 356937240 825833801 548575986 472294611 100528410 159119239 835938090 304563816 151229811 751704233 294111095 841169398 979374370 346788097 65317143 135193146 508218487 796554468 179308045 995698990 312301856 373705984 646031234 490774714 461952516 137456479 584611175 946559242 939601291 293467822 651939927 319616526 725131500 812686523 268756113 356316360 746569938 769246193 530623782 96311645 10010051 79756219 958670727 493101477 458772801 475298547 430650834 766948107 515215617 22375321 8317407 177803317 779042490 234679302 895025385 128208732 535893616 156546043 547635955 375971520 888200329 322417898 903474305 888702909 975223836 419613126 466689260 800592729 347584382 348864134 833503332 891927405 381201343 708133576 266447093 578829289 370954380 71750706 616054197 365822913 597701188 971049558 832194957 835921366 836582119 257719924 82483262 256904963 660148973 572369714 147536604 94892972 957220714 819199229 802924162 615874465 723904813 555032470 902560532 337794393 41293951 206022994 6576806 278481923 569990502 209129599 389768175 305759135 375515927 80273016 948626399 251041882 116640268 926509949 435441178 967502474 542953976 893801021 715354457 484904981 976478723 546638969 969165639 176775691 602525041 507030096 507871295 186973945 528504136 135763503 760616377 915590565 731814394 106080839 591101439 889813492 209740402 955230045 967698732 53589637 107663774 830210497 360451357 336126638 459235568 936269862 213995898 321959564 514262834 567500746 371006678 814057818 335890807 555917898 677348130 183336247 348946759 31474900 228971172 942659184 449047536 193253518 32573486 373846651 199033272 949744764 637181173 224680380 897706507 934300137 426479963 854495005 389559747 841820476 76419368 290758484 733004747 796260538 254825385 276503904 442300861 810411717 110225341 694089617 688384541 93917486 34094907 806656923 430743859 457887741 925042935 144863060 291493273 319554388 639044477 89276331 308683500 935444590 639120654 395016416 291892668 391956931 555566930 69849647 859452203 562624726 970304491 880186133 235971483 409690134 876874089 714696619 635984893 749440160 867014989 926964708 721696545 656031847 9055666 22780072 511026597 804623781 310968749 244443539 637089456 428365765 377001274 275266796 381540613 830464507 776138649 77690538 719840606 951823566 732517460 946687219 729449329 807806728 550747635 343656327 306808625 803159354 752494118 532392607 386989474 745870363 339667313 858423880 965818040 430184164 426318561 388138067 663707666 127419329 928160653 256966736 396400452 395587565 878984160 456681787 385824912 469856740 637894973 13019181 19469656 128163336 505214087 328088484 488313325 570137885 808405507 560306816 140613542 428826528 423724561 80424511 415623904 499626309 912422161 654287745 629110080 167372378 392614685 353256089 982848531 939467949 920405085 146637781 733674902 932412630 529902103 212071368 902608557 838371333 350539213 311765317 327906 835389096 169310677 254783641 680855219 754334753 803319691 62881568 463841815 370595139 799268467 149702078 491254294 155423967 708528326 631105230 991078479 781409723 608576347 128022435 656634128 106187757 755678651 147224381 32679048 149727497 825335334 838533210 174691045 981879446 115236745 778895404 361749082 342045500 140767856 770285224 315516989 971493465 304937842 622053202 106528777 333040955 253167671 956183651 956762643 133185814 191423427 706514164 188053233 645244032 29605610 930782281 109429685 148457832 529042336 394656821 510445911 568482092 486905021 237110074 437972341 884756441 374378999 522456336 947065937 107335927 374006020 716244427 506347697 90016539 292975932 151062374 984173446 229146441 676983711 197756868 719818641 468035190 217320660 420204221 852345967 646939738 172308148 912801291 437571441 805078495 88798918 552222905 91877838 80270999 799834462 757357059 123860132 780691843 44144592 148383958 213158430 831124300 432729233 977892339 171827205 557240013 429645648 48427006 992024155 286171768 64986277 78729156 665021175 431487907 312456893 313472781 830895711 620244811 619407655 816357130 476614259 262053305 776372742 742869346 258893095 248582354 698641513 800853025 266712373 422015128 957307389 187824334 425800575 448931568 430279289 530646723 556319522 314672007 60962805 168594285 430757456 331489556 802825443 113570732 184743805 984693497 549759868 689591734 163094311 457519936 212146781 973317883 612643649 464694585 94056730 551048763 385446483 23291984 960585360 437057919 412668310 720352914 340041039 443634577 420825190 293419875 84389640 158346864 760881810 944518735 73371485 84505355 798688317 803719613 290852746 111063620 932096942 813803827 168889085 49198810 963043676 258805719 153880751 899823805 975180401 177494236 97806600 637670378 388335543 668244991 593893167 636558401 240791355 906366701 587382356 842251649 921021580 336113026 442157057 16593585 702851651 904962496 770590600 505536028 966479595 298602263 822261894 712072735 396469648 641840852 458877738 617631041 688048341 980411588 995717729 989929195 427536842 461439065 866234246 689387835 869731651 222159580 672180921 492959479 423408034 61465243 153237164 282615106 63195226 538832953 602197676 488893946 556733540 588650413 774565693 450400350 843551316 937687248 386545735 204133752 823578678 375479961 129256684 537026993 76446251 521183898 955838185 2928170 717236202 895817645 331833432 682972026 184905223 528657995 784720583 529049179 633735186 941456780 290111051 896757858 16198477 363275724 206921290 928397776 194112226 368024051 927276431 321969232 559289778 614561976 147938939 438443606 496457528 776284809 949726961 836221591 690714448 821688367 248979109 977002510 17128108 132876153 344678407 608990051 480949698 10257550 16216023 744638745 503629781 515912094 491020465 535795162 121794539 483787018 50837671 809546128 722923667 873606409 20682633 224429539 223001099 668029663 690503556 273253456 553390576 771437456 818931072 748953204 22067519 134866596 966493596 694337488 248024648 886001250 906409814 841804787 136190017 228521248 432888289 701917404 791863136 599708341 550339524 817133282 517844042 717725627 830337928 498712593 237374621 184335075 968140872 638224930 462106086 796663610 379663722 343195431 600449624 495983939 59936590 709726962 842623192 111375697 671724083 798932294 522509895 562824657 735016020 445781455 966715808 648714604 470694182 780833831 356829723 464082599 339032938 25007698 173564183 102238216 582393412 327530116 867110285 35727514 768451553 115345056 314928761 475188634 781375532 65205380 320435883 34339954 848611327 604684618 947335762 631633597 643495860 822206028 269464353 762290258 590615517 888366287 701525035 583094357 114371293 52623654 789315206 474603641 801306217 145698725 75398792 772776549 101110891 249273764 22241888 463631977 354499772 803616341 395123500 216989952 633528217 425236582 424929371 636219467 182289823 389872819 799825066 525652794 639244673 847708323 8814856 42008560 612902329 930461780 665160367 967180444 51273226 621601233 569303673 176732598 652053727 201598414 150771259 204224745 412062531 731315134 704269768 574898050 813309740 730336198 822693964 420331542 915134409 108161453 361593854 928386485 409084701 127958348 880797124 737259733 948487930 826793546 941133916 244561411 100332839 800496566 246016742 159081604 790659104 826097825 142824646 653168441 859114249 298754605 193567074 810326802 665252892 154129002 477321725 609045387 533349106 906346192 74293216 806859097 564336130 529189929 514330708 985535340 938233181 653053795 783664180 988449301 987638650 891036774 72255756 97581602 594772348 37373391 967821562 629848792 470442430 146309715 751952154 792719706 689016193 490391108 9267759 901916966 70138168 685386059 53901007 786162614 74133703 421697658 898476769 751499207 612638921 275640596 449040549 205589142 10833234 997483504 59058828 444378614 78445347 669730629 440032587 398607540 583753560 635398270 584692669 67735293 36701608 624929587 219240268 817578408 629057762 207273155 912380710 170243382 6950867 132277703 78952988 385137483 647368316 912495673 898004994 763515731 453411490 481132813 930489417 494948882 754498526 812964179 331405728 416836565 57730841 118964532 9739336 540678658 676697057 448417603 396777525 574870962 762551743 627963957 253954201 467716478 567004690 72984587 654713352 191764526 536886346 534281947 579325732 750841230 521274375 521373911 286203446 288759796 710223309 825904759 92513190 777832893 195689198 331467403 79484910 134037807 265017460 732184597 718735271 474493488 86613001 774458031 521872011 493781636 438359967 582410658 524596802 824575789 2467818 15459328 378755325 839540435 517236724 229550704 972389203 623117936 632940011 702879927 962347003 822265458 788261837 731249109 410925403 417691566 398813052 564365404 652412043 733476907 662947367 613512157 454770817 651077282 186118915 178000518 620717893 79169927 166160662 317783250 316772960 257752175 779718389 748694861 404156065 178289214 630990972 144752512 482557687 674995658 556620123 927419637 235925375 598724821 479356379 155199786 735032054 361400109 202665688 861523490 171760662 574189939 286047843 835525850 263112615 557030884 645244433 84913773 259395825 463596410 730581970 574609548 541916057 993858183 826175845 320551200 67532419 245774725 541888118 636479820 731515183 574955455 741124689 498343142 211830634 668703697 939211783 192971082 981133375 202683234 638916900 882662167 939488665 130108299 555516394 971081431 827001334 5684851 927957117 104329284 877882762 980630256 598519608 436465578 593245262 431592102 631549886 350180834 316743096 111128889 800995364 958503252 859727730 680626781 136180125 714355776 302008364 922879254 502908638 598806799 86663590 834580738 284816460 409072714 684801559 290243892 875156585 361069868 270855811 817183574 495075500 561536061 927764311 314108637 982819480 331540692 69327629 240064972 83067445 436588953 893197554 220434799 173859851 903690009 513961317 973757329 381574057 383448122 328240844 146830359 799749562 747034369 93234646 772823530 478539536 484216308 603578466 219501674 873817966 732054760 845615253 309917050 647310956 152170130 315960309 616970010 440538038 716238497 883985938 926061229 696235857 884759574 994523435 167093373 418788946 433373751 409960032 986580158 868292110 554023046 733868224 531334828 123985457 478622299 20831311 792729067 652062897 349434334 693697448 484590975 483201692 988497997 929490775 348455645 895810626 784317652 454848629 811217519 857625414 883547853 263962944 431296144 854870326 768850702 492647874 44862546 282734400 766618868 216181289 771184587 338864351 819305822 549416139 566012016 481009190 576807464 780481728 972511755 495803289 168150105 666194988 295596444 574709913 234583739 55504648 698355462 765810102 542709192 104554336 543803373 248395501 606435664 226152334 251643613 475847187 250413431 151494329 369818714 487652682 20275101 297897377 365407265 112392399 687574358 552942550 475378161 196639256 823568872 354239075 804189075 712341446 135088851 184652053 172252797 179439245 779193721 84363282 720383422 767805352 510129726 424450840 962384059 269623669 965504947 127866063 545251764 467685712 312962801 490603199 330120680 827432731 325003587 820413764 345051101 529002635 621606906 682427757 469495455 669049636 144833203 865267810 545016031 362223494 793635114 218553256 869002780 173092385 539916008 319060934 346411535 511882797 721109419 279676485 715844891 3150265 42703022 591353811 814062960 992913944 164806175 739973972 113395554 144633703 238157613 434635473 546025493 176281012 15076078 416575250 36803576 276091994 894784007 688549562 899140182 51053346 958317920 717395665 725727918 166808111 645337626 467421385 796139340 267473444 191244486 767262375 140000959 161181173 180465126 108105202 821713382 485886153 48950843 102485591 52164643 409670055 363134972 319204216 704091324 852530846 358049895 583373941 231823289 527978242 261353745 510039938 899824123 83789286 843680410 837721595 517256783 597875885 844042456 535320755 888693166 311386785 645765827 212149595 22117343 288473260 582513376 989312989 104784392 915276916 238441947 725456701 690032052 630742997 793092061 70544769 68672393 678545323 663408482 415958015 316812116 3074932 468299809 501303704 662186979 160737864 784432706 262536461 643072523 837234122 145623538 479358261 325452999 910141681 308481720 968155393 382111572 89498696 759747792 618866398 719041467 425868919 651260563 230521714 121055311 450717611 590551066 356428879 207341544 739665893 239084683 752922024 164435338 973711312 735507701 429619265 114787985 195689784 331625828 661722504 722958953 918574637 897082187 682643384 453526202 429596355 708174637 491221606 765776680 724508408 210373987 990500688 747401881 323709501 809487581 617573918 715256227 348642477 649080888 82402084 54483526 955967547 436168130 215001904 768101512 834653865 734836803 200368047 693993249 607595263 73877993 509640684 339305741 28230907 428124605 758859362 222604405 285474361 448293865 791457780 599407700 603135562 916398037 333520090 407829822 123365267 449928187 526649532 237921671 749008486 265980273 306913000 106613966 296520184 567159827 985119230 248602958 862856780 550877697 545306862 817897904 307060401 373109927 801191564 260901752 48841807 283806961 920633527 79019285 14598334 832963849 641574079 516488779 190094166 736849140 730587115 161038067 187752334 927955518 507371259 115271647 374777958 36196396 559465275 744803970 362031417 460643502 271419493 553453925 559575154 836156435 605524112 458675795 71516647 864393532 553911924 676618345 904222209 748180353 191445130 516273188 879126435 538025840 735785970 149349024 807041154 55433388 603435069 861169969 12136909 423560820 854357628 17851783 896678244 158805483 797233280 59417203 945188624 67563251 342622447 92582723 648325052 722659979 596532733 226885430 318354183 488646088 293445157 23683407 140468658 190181293 331757105 872949796 593230734 152707595 784624111 605939461 761436119 892326186 686867771 868661700 308530297 837559600 655215045 651074773 813494443 480243291 391764213 537254693 707140087 26097788 836831928 199939617 509128389 419336495 906173030 460709076 587226124 615904115 671902776 452958046 295906500 260543808 620058385 55298457 878810280 439333414 386664071 444700284 403722803 744918530 101125229 159654101 896304606 965680199 53062688 545414569 276175898 954247373 281827861 226911952 294590040 486788992 303161253 695055991 950257190 734228970 942017140 246197330 429806959 904939678 975383698 606771034 656779117 355473642 835820913 291204543 673649503 685182574 557335423 461756362 832371367 95591863 761653811 917195577 638167713 790047111 377389193 79240747 767507893 635473057 817171923 492387320 448885345 287709142 816489370 158125674 570757736 560067192 44553451 821832624 39296227 37889407 781012172 994443371 669799673 156032950 534422464 602947320 562700477 403036402 72159443 750495575 470222107 858608142 333198190 89335588 235993732 513743487 904726565 771412013 908689559 743334193 364071069 46479770 849217235 400843227 468320484 403841440 572502410 138054353 971633851 990494786 138311944 542999345 466876271 464896251 571689836 75551712 719714590 893709002 961971517 208710929 335615908 457595121 641547928 443965011 169703810 911347861 950494823 744991170 1350375 905379322 650010254 402568203 840552185 118340428 685660419 240366731 368010256 921682688 252619198 460578049 370971035 899170341 321811935 966545592 899851829 610697805 253978331 918782852 794934652 774022886 11587355 205893689 911259906 448190351 115553658 905351563 618121716 427460345 576013344 615262613 683337077 287535642 815843245 817702883 756664148 70243191 881002418 969641658 638921720 745874372 105478252 289731901 55321089 680636719 481665660 182788834 762532570 436773400 693349368 45751543 62521031 936903557 78497947 988699104 544201618 808623457 575594451 5561487 277972998 648656477 544386567 909497016 835570562 310991790 85171427 146084284 629807822 583429125 626633618 493029596 395802086 953980976 603362934 103831068 432999826 19198819 923000499 188683151 937057940 579759352 420082422 740656174 268210643 481482088 881045232 931364490 719523921 647886046 608266755 141403020 699463361 42830377 98175795 51275743 44284094 518872175 947820541 101221495 953360065 652249750 90236266 731769259 392892658 345139822 850841728 317437520 848483422 819717404 129771088 86164251 107177801 21217000 931964103 519865190 920135737 876068370 634223960 393357789 623510635 706083236 294035692 496259214 574004696 869094772 653149709 439867576 174831578 103564184 910808210 245378823 721708179 850505931 122225583 323262261 21409108 263657283 750892871 613266056 175152421 1758843 211343498 454617915 135663125 35726605 755312248 9966779 839800971 825728679 119945280 847963843 910462756 188865818 584925546 932522994 341054432 205393460 599034575 769513771 311475493 754456973 478137645 765986721 676777871 816276590 594885153 197323737 554588387 611651568 260235119 969928304 691382432 343397219 174607282 60333091 155367860 148494674 151283470 13393230 484040014 580533396 80748758 44977337 41047226 263531243 241503731 898651628 261416479 509292958 692594488 314696474 12548414 970877180 387131592 790223064 696732304 510286423 872697463 716301101 664190325 20965880 876555991 125916142 356693206 14480276 33839036 627243722 378198194 462833611 210724039 674326298 482530505 327958219 310600987 408582744 628991253 507588447 626828732 949225883 639560754 350389882 777402444 970645807 125770589 953548747 574755511 990852571 783513273 342615817 718703501 310828905 314282457 441487826 524653530 23102766 483834776 708378149 344097478 795601637 414392798 527171354 40049967 288172563 499859124 971123211 782434344 745094581 954465797 576145735 211537757 585661185 609554053 254592994 565835584 238399595 797994328 224975613 823381088 261771618 207224701 774678867 734232835 647425612 482028622 788965495 312031033 925903785 820837372 207086032 550268346 63301513 58467184 214273155 166212892 33905667 701407608 649749864 996488358 108263647 483948813 26439612 601918782 308932561 801869877 292436351 614160513 131026341 873998304 263305428 436107040 222472377 75010608 627582993 497179143 308888084 41201101 222844165 521235327 655828761 249581307 217712864 567236452 304102306 414872078 657996501 854623877 142496109 648132892 29507417 132701279 68940063 46686538 564380236 498889640 162064650 47592972 244159311 16778439 935122454 777563263 939260082 673987358 453705223 135666932 656779892 599907836 928215963 771847673 773112953 894555963 597113502 558040378 563831724 360048460 564003549 727823707 58846261 645808200 232136986 625086707 510758000 418920300 45350935 845496229 629195277 753569501 959131284 827146419 300400918 11242567 36790890 520357461 676641573 601158392 694858301 941882987 265535548 923750215 566104232 168483301 704685325 561765676 990687210 908821975 392666820 559580680 936206975 342245739 945315895 346138772 384106955 248106095 517963789 852206209 207273432 814906981 211425774 23194809 820968571 19572848 739025704 534230335 285293721 7231847 911835425 225276003 311917527 40623370 110378440 260870369 805725904 658112861 683129422 143784156 806032369 635214162 916813083 948867504 27931002 41396763 393045902 73198991 76812593 425392668 95924072 200240078 8224124 893725947 149189704 278612640 204924131 411219232 273320334 509888101 390386219 899043512 470055968 395954058 650706732 873153606 120194117 553846550 624778020 918619306 600681282 658655285 718414408 997026806 329250962 677404090 839813408 430345912 278709282 330334867 69607722 909511761 425460416 670001911 506255989 28183708 94766549 691393863 661824377 808104413 439492386 416585034 596561352 494445852 719885984 201908391 279604715 357981877 527204726 47864739 552641884 136920516 140214689 105392830 837946335 515277530 291451786 541439482 960921699 838645670 165055683 779427746 889592881 487268361 201781406 63581276 698236047 719755918 442749395 763923161 821489972 923714705 177985571 768467396 54105715 241116336 261488047 722125475 18877864 829861925 350562521 549302615 990993946 314796950 962736917 562716269 586519100 85626495 687876559 47983629 218156041 210410175 33639238 44805889 593791563 197255231 606424254 826423720 399436227 426280239 360200322 192153284 627671584 796354351 314337088 450173817 888906860 125834058 604579491 481398933 49018574 541249641 467271857 924508695 838001104 188834696 338664984 427029706 556140312 326684724 310323967 69292044 566623175 453233401 554605114 3068486 755462309 613674929 960780852 456710071 446915729 958855389 607158533 681622078 840451899 377175486 338826160 68672617 863106350 53701791 448220121 462277059 698261835 431229582 444110953 808539934 19023181 77941357 521832209 680133983 185182736 848463238 356697747 684305761 488468403 543911091 340688129 104150170 367111363 698998282 375234774 286938079 506684602 217704943 535683646 839645166 122843510 413639730 76566143 621779010 557954103 723175000 51524358 697947800 877602635 177119896 13268303 982406121 661707631 987870967 869710818 772630461 897734176 603887601 363537373 302178261 530840681 599861093 216368839 360866517 620391845 368473728 86217841 517000465 526703452 948475921 882919862 368398414 355714632 198853266 931342272 664240869 299610555 728303868 846343265 461272195 243608000 492100573 979287616 852208066 821309638 431627668 404404448 334017290 433826826 440948354 695466935 850280281 399564446 928915411 279115130 961290972 751070336 317706269 559435869 506563292 402597464 260263350 219205792 191189189 417773847 294363945 43042636 81446871 580251854 902378593 448181094 139908367 541806373 164724932 54244621 896173325 113190293 725074608 149441583 889854171 107937153 252158501 573829823 279815839 982841850 816458235 815640115 190626498 230073491 581580480 544557275 35974562 952382962 301909016 428983631 46400448 948365448 380437301 753160369 114718513 639952404 262660440 951476826 118770473 556250469 597278260 857096677 191848982 58940965 513416975 475650757 719103851 423423299 404146258 349683031 326729448 486813303 433221124 519564050 742661639 777777740 122185589 497074835 880198305 18876639 237590482 230191903 127499444 622656354 644817227 545636253 862127689 333665959 111343455 604559307 913244202 383110918 782579692 979809358 131740677 306849772 679546705 934760812 807102546 111497147 138988401 750550035 644414445 837328381 60252778 16659057 550632242 789990355 19970689 129461424 910933932 753899522 949287432 421238059 582002387 481734160 488385193 931246808 941054702 580496807 196657005 427761626 56044175 224677905 268301996 927010827 444310988 729799721 380635772 590278381 530687091 53092078 613260333 321936318 173235749 985239166 792662656 924018202 574854818 871684554 485298102 953335835 619377605 249795949 722358294 617084293 642694376 755174763 318818366 43294788 677788503 508677448 105894200 507025107 133421686 697178099 454180994 506658586 483393674 331912174 935907479 156706827 171591642 728841568 504688065 589716456 702227628 128120722 950684700 287126924 339862345 587613802 467050595 274986865 892596059 855339456 762841501 47917422 745814678 854819694 750429193 347592032 757162198 355118751 628217338 65166224 669472915 799857471 6851076 577204679 245703841 755759968 92437786 352906108 436765658 984449024 173897342 57773719 15795131 737856595 710149360 914950112 34856114 218872254 330972842 324491452 659078623 154627201 944986419 820445640 403439871 995769230 782176931 959219593 935942721 191681186 805302491 844985707 478436302 797753986 741241000 663662767 801123422 822288194 889658061 152190071 918044991 858153025 373955690 985023478 298484706 665263833 612866916 639832094 803765482 475069213 670193648 562891738 450379140 822962322 740242714 913927503 628831245 630796010 613833346 756350225 964241980 296994080 888739852 775465062 464068988 414707648 742682240 151192162 763977380 881971023 225197536 46804549 526905660 818410948 9672167 544531090 831256743 921674903 195228452 932215107 485487914 391829780 630811370 1120871 65844103 651921189 151501153 330709511 98531418 349740850 767226699 58170704 638503672 105086950 857414132 53390439 800737723 695174282 951034348 284089104 24961873 681969186 417072230 903229102 813318552 999348218 603121738 118561084 456077779 403419153 833738693 80171380 285468139 982085021 362581482 868157668 297768236 731459392 332758410 677328356 711797615 596649618 660733156 738279432 299667011 205627128 937526470 876078528 949364587 447353499 759857826 843138101 85347130 710710770 258394487 214869963 949650482 3306916 624604913 340859488 176959580 202268092 108657695 185063190 380807109 347742360 165915853 428737408 684556557 958927093 614121735 321055067 42153840 662159579 480786626 310675101 776379036 572402340 609192038 185855679 364623054 288470864 196302618 768387319 842645526 292855559 767555670 596505438 255986674 544519838 598512991 45185909 533492628 510951324 502340277 439756142 275221469 556207045 840940949 99666560 852180581 66518094 744276624 602278445 278755139 435347464 346077023 215834630 470874163 531736888 742438107 384036513 194568678 822023210 555961395 429330575 538242898 580032127 798089882 536327913 643081570 689663141 471932587 687170166 386201855 769529625 812283031 64163363 714088703 993828137 745811808 253537257 827379571 554912586 17553223 257206557 226312300 549433804 659100600 793263637 797482747 732872467 530966027 741967307 280096378 700148689 864479768 520624032 268122133 327981981 379117883 202661616 507447715 552148717 629509686 935714122 332859273 789083228 941036026 630356567 195151736 401923693 912477333 16235820 456002647 163539970 299186346 997790366 666542060 457068926 310336464 240561848 628979113 541416175 639636863 887305541 945974855 360317733 173851728 817254120 183922163 478130538 168192956 780027664 316420760 281247038 540765782 982196085 9902071 811139650 959859840 785084466 574526532 60545404 373482614 560988010 400518227 52538516 712248068 943429103 355667291 230867612 924090256 460455348 164350253 109153119 708196434 841640901 275402036 836365046 124406690 116084032 539417590 427269012 479804109 413325638 869816904 681626249 351361384 34754944 175282030 745977595 389047945 500596541 168227988 337037381 689999616 765399049 490217110 10811661 418864138 812593727 873651269 565787745 529032057 325259422 210157508 152286451 919629615 794526483 260057869 345157883 718876063 564227862 734552548 677649696 669976715 183012509 480403099 206117014 608409815 599557288 205047714 356749743 733720244 708887268 481664988 887201590 511105286 409737854 908183134 517465028 262073467 150518748 388027721 647177665 983363324 489614993 551616101 602554150 213082492 562336204 186247675 827318531 383401718 427446794 254729522 209545450 78204093 626211329 354016790 144383785 531571731 354422409 114792898 486340102 757761338 110066356 977123667 32054397 621892678 924658386 150734727 660790357 329330599 240983087 426950471 441709599 64920910 839797929 171533110 990123126 219259929 885579554 926023496 924219756 386632168 297031642 931304669 940148116 10749588 755258620 893718472 633945149 789268290 474431918 564227955 240505051 527835366 395329387 649656086 197919081 140161584 83950430 733417038 741271023 650172494 800953287 688538900 98130393 817433580 846502917 887847094 181134089 301792624 231920111 301836368 464043732 378893750 59359876 191754175 738363690 383900449 164853278 492375116 582255203 225684026 454561627 242692946 5338698 433332934 592908365 762390022 333526881 548874637 190892966 657980821 562006120 907757605 152702754 627455965 550963495 139032414 551344152 833138892 6971467 363038354 284243485 169551895 672710642 203209380 702195222 102600572 608552546 340215264 589362043 431565478 253262876 209372165 734788350 617714709 609132375 231666106 72326172 661838979 425377788 62419788 370004167 903111387 973763341 187228438 673316313 455020342 514186397 143072241 587848348 150296511 497950529 826258077 713777045 225520557 375093332 753741588 920863332 120493515 457811602 436330899 710647121 41113667 196371160 227772348 17392753 494969486 345195459 718416237 892867841 699748372 378935652 563871139 509387830 797572554 845194315 793556715 435515732 825267872 274502906 304145599 983953281 38297019 708521195 657820180 649505553 707266241 314101481 421217166 801187960 941198623 359113373 7870393 27667355 132371779 8237452 775538372 49485907 297661640 418726885 406865499 520352717 940708799 259018115 475628436 854603582 821895110 524480237 449047063 492829592 378478027 368134310 742294355 932065022 767765041 846495533 122609515 270290272 164100854 276991198 10729841 18252627 735444980 390991133 503972136 1364223 769884446 434970006 104099532 976023161 269805635 882229662 190510084 819560153 889231797 189251780 313864952 542233341 44736279 671925820 958644229 799313585 322007098 849997721 302810304 772699717 547922993 357075841 865995862 214785686 952242231 580193487 671334365 633041598 494384843 98903738 173172859 558925005 203407841 101101205 582657161 75251694 383645012 777027398 876908368 311064616 547417123 161982660 656382543 578799707 636201559 69372190 591130160 645708239 787548664 217320955 885838280 658890130 679155885 993798329 739219594 552325053 503886103 151844411 877943032 119842465 674082430 67056742 688555684 823041711 354662110 810084960 480322453 518776877 35068048 929282937 530155630 61247382 440717051 490634398 679444554 714924307 105673221 506605094 486762776 954178819 227040194 7144037 269742314 572476999 648254134 703776691 206770198 533509900 677894298 426112392 259070126 774697530 335718150 174503316 233625777 777573985 700926061 435279615 612974653 252068811 660071123 50238344 918642958 452393166 321706313 936046583 707814574 958989402 427254515 643295249 920131272 202857916 270213775 324768961 96613045 127109441 998790858 415961991 267399153 620584025 861237853 779471014 796813725 855251597 999279088 548020348 255692450 381283736 923647238 906082490 636366263 745631871 564816417 222589438 891177531 484756611 409691768 441130281 989812281 575851427 936248991 428309470 447019851 605372201 173161004 286514944 741758206 90770629 702741394 239239620 814354033 998326224 479683421 910111729 125245856 522399641 361271447 823903947 618510356 421597227 909853919 174580690 291985754 279070098 174515352 785335575 434156295 904268787 927103084 530234379 551010031 875927898 762806442 711539512 58270035 471937608 558478204 47180427 144690430 545135096 289100935 207153449 495543341 820254532 224604577 761594738 640600324 701679830 326319482 69430941 547633740 283480149 568714418 100650445 677232598 756176307 455543230 508477207 529780338 440830595 127801806 454033176 313895481 188198964 136684821 983200245 456961521 208406254 770172290 579337155 368444886 398884282 957253106 326616223 394575161 539432165 125855474 179246007 503435419 673708339 360085178 301986886 968314784 250588433 684790877 422951659 412678701 483718448 813021834 655024102 750411900 727174794 418307998 100393636 626108977 776508868 39896969 351881825 884147068 776543763 486397737 761137313 477969395 610394268 533440463 220812256 590302053 659781205 228260791 806409033 683614695 941317963 211226689 863862698 137646744 539079091 166674543 617515433 605978146 544611887 135497968 637152924 349211748 895173631 27825160 388369943 246118475 620407786 948002444 774593714 694215023 795886638 275100930 883774048 749034415 744634011 619416093 702522202 900920380 826114147 26785326 792516652 31228447 649470569 250068361 21186836 794840224 594019978 244058291 116181719 149549527 468482864 43393830 696301121 667963188 854854776 978996462 110699594 530350989 890662834 760215669 832580362 354842862 59614756 281196626 930743314 170602117 186441195 361633243 1675910 379663821 376747037 156506230 342366341 322818486 70336611 653485639 610247229 905405117 890521927 102411318 272015057 317566325 736431049 897924552 417787057 571598925 347959580 399155813 633314713 771530144 723151466 680856043 519629722 917524588 767065560 301781818 876499775 521902175 176538102 791848446 907503235 743314845 603220223 552816576 346396189 420227771 336537145 452095282 319064614 853103623 662424450 981893882 427010701 402614304 692625219 437058147 60234112 499355303 878077536 310861308 724848393 455372643 709299514 37865002 523297269 249094658 917182703 793067887 842059327 643357962 80850203 749403310 46664918 419723067 782210936 826179363 734996572 703608109 900690977 873978991 528342947 867111936 999911875 973657419 826062322 552984494 915365018 3343888 761399264 85723683 691604479 842455526 60565633 69998054 548966328 834400728 301850225 513020738 396922813 677299189 75707079 873433295 599265739 618983923 890631372 438343296 683412659 548734576 897607289 528862267 707218047 933088939 710182755 972278988 129126882 74304543 782527618 376938509 539652877 136704950 348237657 439949855 335242301 667305780 202185394 436053424 828389014 28520594 665750638 310417764 958500023 784984835 15025694 521026659 340005169 769872570 680520152 997083921 144287499 585964265 210371631 867567319 611229268 584854620 710696596 551719449 914692629 552393493 546156380 29496262 448832922 624845719 46580089 663590313 393638291 20521749 700674534 86709328 105650359 170985773 235835136 359298405 308779582 887299982 841186068 172312561 836758221 132795423 277386369 493751247 656875970 494503806 396983478 242037913 186401047 723319583 91719531 83618173 967124583 269542105 985171085 727906060 290357255 803148477 813950110 375388732 941399212 743535299 777489008 280545381 150050752 886253798 689160096 672859850 145044997 810541213 375756645 861135718 164039220 432510283 46638097 295575443 39108984 706360019 733333587 120956468 105025492 904570143 68047776 834254150 748855340 201942745 837148281 349897865 735918186 898913771 365272501 263907678 905547385 159510894 385352875 855367227 945832062 641565524 381844716 86124362 307695685 962990945 442552300 390382492 341735240 453441236 925410901 412320651 893549837 619840678 689643359 516633740 373387917 777774988 633284500 970512184 45369775 503766527 444267381 358594310 371419642 935272518 627119515 669090655 366179276 644934856 286049758 418222723 800515887 224230231 613579995 204845066 110627 160518213 884991429 146290833 836339178 548875070 999102623 766288314 482673753 650932876 476402754 70796487 412896637 316822053 88217140 224787274 630244007 164662948 664358445 67970830 350033692 79294961 819728464 558799626 719421523 354449106 716395974 511244710 862692805 846859778 150851744 113067315 491156938 796381238 286086357 732036706 987451137 146704208 965437471 131829444 655625163 533360920 495563638 356514048 16830207 259335637 437891328 772738848 824287785 264788775 419660227 146249736 979406253 647492511 43189535 893538081 338058280 983694043 833668300 170233556 400678544 416388059 173600886 505038961 666759776 580791514 220668183 584281609 319345100 818561094 366223257 103018349 457448060 470575423 909607401 943883940 166119681 606053571 87869003 725991151 175425422 815697382 74861778 271777140 160164499 320877055 522320427 524699556 654776372 568783381 341332251 156487605 553324915 881838044 510070072 350505123 669489624 765878487 15184099 226367003 205643183 431680557 943607211 818683560 723166898 910740700 347789995 495271034 92648122 279251100 677818311 106361660 861628232 185357264 618127070 195888706 492163931 237900993 25956029 881724897 546112341 851556516 832197419 379730357 395644776 663643825 284340610 826164106 182616181 520201644 214023827 780767055 498309008 399658170 995387290 647588337 230968850 41291340 629256919 904915900 969319381 324580811 732992608 428011987 337387240 632044229 591066749 24878744 793842577 285974091 723004361 610989457 226697573 790055646 805751949 745789233 823952611 472432898 442051408 633336542 366699412 454890799 984463252 899135372 121707791 238917931 629146974 607448708 371616433 964921087 853841848 464900542 825461698 441680666 682545031 544836240 765123665 494852965 434768798 307100363 931810171 219062613 60288569 390731800 650237716 118210744 771513975 788272585 25144140 922374777 558602087 316351342 486502076 742002245 829763986 78178207 266344244 119379141 957503566 527972912 480851007 97615262 997688547 62465445 937024643 322861396 790176412 343347292 258792945 480362284 949336184 223944094 302744502 200001054 522587024 182722053 636208631 563320500 608129852 923353540 460702707 802535991 505082222 932617101 338602258 12392728 478158293 333070610 152971420 2427696 772705250 76050706 422436359 757915638 449453027 594123283 900281777 778463456 733667920 745614069 548160640 43409106 812438194 735669900 472746327 599793864 632545093 741994861 60621681 759721712 253989531 368398780 820023041 340482378 927321211 778079270 316227189 223498347 692040406 342859700 568457937 428990592 351409593 221564830 235133285 980107239 964246166 745512228 672062982 287596746 204875150 957453736 627262131 191658730 30654395 469866873 607956545 731395669 204934766 84656742 725710320 2353835 840784935 479333904 576424545 322664985 878075611 955800942 207197971 981165034 101148829 902228629 884273925 551987981 553997941 299846514 280385311 31902996 685171282 462474678 135451240 882278526 611126746 184378732 253475693 228956751 543887424 748982660 153337282 879230998 101304963 227915244 300101868 288618909 615875343 167154490 385594251 227244697 838191572 899609791 937937503 88307121 860705072 689817306 962655923 871250041 47926139 453918055 277132784 189695577 343679637 790544314 646091273 231181240 304892059 567834931 303166771 222212534 163188449 886814944 679283777 46290355 292230805 45897803 874699317 103079874 992498675 265247835 504172585 425018120 782521400 737955810 487967036 685352780 911747855 598258410 746161770 524076293 471531112 910927905 609627198 710562289 153745306 821585003 110297439 379903512 469018481 727449962 550258239 116299351 192296348 988436933 916528527 38093562 796340093 482504262 412827559 779216794 24483380 46507586 602896035 913644425 765797172 985507407 791080949 748060631 193293567 478181597 827333325 220653417 637093843 500376734 915219101 730165080 511726132 592735011 682677283 146654215 165759421 980528245 258540861 336035133 5126565 499209641 55495357 451223201 581206864 854571098 135784525 59002729 791530779 147476412 998280242 85854592 526443793 619438466 751400709 104243234 208949542 298774110 478867054 164671808 697718253 815157318 664548893 880633059 563345186 429344054 267612089 707609994 315939299 742861262 604528620 4551928 483274973 776093686 502956089 647919358 205319702 744620370 135682702 498923889 711490095 729745925 275560859 932910444 787488230 85338244 11807024 478008305 357173468 583190266 269946618 924247437 821798649 927685808 373991751 136944980 171057045 686965481 2114123 613004114 29119731 966681723 395820962 985098569 932050372 358806768 718832047 69499266 84067490 535022167 356085367 444921865 565854108 725299810 327136457 5280937 519654702 597819088 68276865 746228782 25227207 364487738 144295641 117699373 624276650 156875414 318854276 180513332 308004461 222621927 648395593 616751962 938518829 303868959 117344113 387195761 114608674 535517133 411525886 405203028 56472244 87701240 486045676 250848300 326922972 359543042 347097339 729552542 305365057 589315856 541555567 213902405 665051476 645881484 251840598 646842870 138136567 68830167 84720740 960559638 913454890 339762254 233786549 67037792 408817121 517546058 326028950 523596582 537536587 333953824 227877224 866112236 78834258 780416899 345818445 761286916 98296706 837815181 322376760 74384840 872724619 446360680 754127038 34374391 591212709 536648510 801086770 552127869 377533695 825527993 446662686 483401593 613612548 982301689 121942007 1076010 241983419 786439831 159236702 204811544 150590854 963487976 412824474 420031297 565622304 988107326 495497469 44689848 275755668 361749499 156558066 407496559 221177285 708952865 454104577 578811770 252942443 876303546 848714164 721750927 477857616 218626537 343890497 197548297 190733329 404429491 317509992 110766046 482933446 797114230 526795952 906269712 909047711 663275499 982660310 385206992 29692767 327114186 517290035 218712743 271630383 101243936 846339442 541868115 369957820 230791877 389897178 209032516 449809380 735546866 438830056 247838451 150586264 179187907 489054414 363568421 504901 693136926 318754417 338550037 561769169 231818519 94896239 379695206 105533523 845037151 458558071 969313238 244062802 92999473 304083029 297794741 550419799 373871159 731664371 666414426 332186253 689255508 736149298 58107193 117329794 339215908 270650197 782621795 363744495 878220055 276504131 511134334 141351575 817464747 187174889 306150556 318463403 710353642 885162037 208528195 810058691 229899698 624815209 717056098 24496237 332832895 812735605 509169030 488898685 289630492 938137282 177180608 197280521 276406806 248066492 586508973 686798570 20112383 185010461 151433378 270176723 380779823 329490011 260941889 636723822 28836070 159134732 240338185 272759857 989243063 224301104 759935937 95009422 603276739 84777819 760286171 337902306 862858051 766572676 513810269 490372675 547099869 803301519 652256565 274391930 1783715 685948573 394391471 97637762 973954239 78096097 369745288 739694828 554250443 943103313 487317347 702409901 712676453 670249603 803329780 576182120 229866999 208000942 858332806 768447834 630319762 392423694 907187620 539580799 723828280 163025299 523147311 590748723 326589454 200966697 636789626 623037531 559659096 369525941 71269911 589951535 772203282 332801973 620218251 763344325 424934260 590515620 689488736 328553172 970049417 698469527 113188777 930977533 402641730 527641551 511013305 113603567 889436437 348379153 109663344 788524959 613444358 515535719 3398796 42630042 579923288 191261101 385134381 548946412 302515340 283739974 328495194 811763772 582705149 509419490 576124971 411716845 570441250 611542355 550937877 512205555 553833669 104930004 20245667 597385735 832297028 401418897 420609209 24654062 592946178 250757703 201184601 502703595 296125856 552652936 129846661 916321552 327633540 384393686 163811078 570512719 613826273 691484841 858780379 791365013 317536699 443617303 593765171 406278217 177122123 803799296 544061006 399898337 249153900 630945824 514332673 376285579 624140409 644182924 500596485 166568810 340513957 424541004 328439601 104493018 2590135 627476667 881366358 723822206 97612432 141868144 868467958 89740457 693025157 188535060 504619052 814191484 377147954 251316190 987481040 201778243 103914543 872037067 636785934 486310509 118597955 899360902 402158919 802141903 644691534 911184413 681752104 888055947 174026006 608557831 930107575 245150971 556669965 351481276 860068166 903277969 761901316 893996268 257251678 109480081 3471949 398268062 334854384 142987361 452422489 124704394 437791206 131610687 497524556 32349842 537117031 456029022 536302928 36226224 282081375 298210191 767428166 578483198 123911100 401086199 232060217 933471020 539230817 100094714 816285493 299511147 238230468 556264671 28843520 346889603 949473608 597956803 195815966 970176670 570060461 349242704 658734442 806526930 106202166 928533667 444683509 184332622 129592951 56552736 71300083 800750504 44123532 376065076 364311286 577661532 469369625 65897491 18481367 746496757 109526081 55982568 181087671 219989512 909669476 233978892 301106429 202729242 799814323 751422077 850115282 663088155 14169144 989803156 480062573 32843698 159211695 734145503 388376923 227760204 141243434 205745942 3115179 842786270 456116303 504403813 330902614 583642322 840902856 974639430 165384949 538282041 939214390 490091254 483515854 380847111 765557030 738046949 600559318 270554819 399975839 167982349 360885703 747913408 346949685 8095552 66299676 472110663 685398740 928430638 352421033 653600634 281783052 76200377 510645059 556383148 316748590 68668318 330885498 62002151 964957864 637512827 418783081 188610757 376200092 342244998 94957859 714844472 394294632 480479254 302981570 174751524 527523859 970726694 909112867 330310624 363560209 365363826 489216607 925019647 994234599 658228674 402075083 808745048 416529580 276459500 861437555 323872383 308533433 312552720 41181321 86962516 79119651 573135678 554290609 162710623 359733015 218761707 17449614 42156030 795784045 737268982 570434093 268096797 726290841 595029427 638901708 161453038 473031121 974849246 565988927 811233418 259889673 17316500 526997908 266351636 132367741 460409853 55551573 639772286 410355409 318009751 537932452 446956866 994776455 825596523 704052975 681381672 633926954 536044486 296532880 649286894 530886174 431399511 74543687 553362547 124442438 704892134 399778348 166871251 237790538 268007630 970279683 494435357 605966887 498151842 17760908 114410895 11394561 111127530 259811403 805166557 441547460 889989602 713155354 381370088 664701984 641759672 486094237 284003492 215931386 901418314 405519748 763527965 121993824 380612263 247217103 561294670 72788422 746191760 321176010 902612745 38387724 348346037 225913288 292624409 62639652 328074647 67732382 806428379 215162967 374742091 823551323 758773884 45863664 462176447 665573482 379409161 191687566 100255582 78478955 100987688 439474787 347409641 804371675 288821551 841270949 288953053 346355571 223245007 649225213 823726191 4180208 66712326 976617768 322902962 316019333 70275490 9181069 813101410 958160827 512987283 470027880 162441251 627985437 529193484 193176789 765656955 368919196 754595779 105412457 719319981 420484997 274710164 439418119 227487189 49106036 305771819 145741175 990431341 883166185 224643362 627723647 158759687 99677100 557680061 807560625 988797638 670299520 789154281 621892580 992195284 794851173 672463721 487316105 682469420 509885208 246412484 957340667 718992305 912120887 397007329 806966788 915368688 173883481 147645034 277706156 505382618 347749402 593251455 637203723 204632037 992886810 151965953 830622715 939380679 371076916 726038451 596217063 837607030 525796243 981776965 375831681 407971773 241962409 584434107 822934505 237345344 688697561 647638338 584471284 372777330 363849874 537147172 49761480 142362246 522737129 367636832 304891056 70858425 438537776 900771614 305720333 481429194 598795650 326981327 561133741 218777006 182518552 473606535 570031019 19033351 248470350 26042962 751718560 293839648 780758751 62571910 566551119 611657296 833379945 922611354 679694560 288623068 367875171 753166818 871207615 82614292 142831541 324249871 687440795 56135030 978300817 441499125 646430767 424351193 15915978 246095747 43392968 301258666 210595136 726794982 577377002 95993227 823546339 629250096 182241216 114340514 117760140 238794886 574841576 48181281 681166057 515414913 433136204 362243732 329161948 913032732 340296596 777981361 900987898 484613995 256783506 80030341 472591299 980259605 23144163 946046769 624543262 884398466 204270265 970838079 421355393 563931982 771773996 409493788 925322591 815573249 579898390 923090310 636278181 678436970 676597858 172376892 266930636 788637982 966000288 590045240 884477919 673077634 590738653 890293522 754140001 988273063 397927029 926475529 175185811 377244060 575760738 991536706 169074100 448827976 127759286 703971283 873684022 59840475 839438509 254861867 873131634 898291012 169331968 780445423 338619060 773669445 963569744 143734128 901224931 536289063 352588551 893238582 404721136 274789352 764482610 89594009 241001154 217300180 982618278 102440379 522701185 856697396 142695348 21166970 376974986 453295623 104615708 214942838 361268156 797962548 678237533 165882790 906582616 459850643 155478950 616874579 394017084 775648713 846531035 322419586 111599740 160300103 232591631 136799473 868740810 782573142 784823426 192334682 675640118 556522083 297655737 711642207 512645813 153154172 16734835 781346856 235176704 162966417 227483344 471711198 468937747 936320672 977813057 629866494 503987472 943950939 590030638 743153166 528475460 803604675 508334083 370989266 156153893 989478494 725251735 61552222 700143311 958697860 572793185 705251492 122332030 26238605 382742630 140557163 245476967 543621252 331874819 808123714 13406791 899806544 220678848 811130910 105842827 190241668 216630805 598600603 820179565 895244144 535259465 104334380 34670707 126233876 428469951 880585140 901812530 613658727 558509788 343222755 858367812 987930024 454445187 433530711 956703226 781102421 80316254 782415062 565444513 315384528 416008618 846008604 211777649 751831553 995316824 534864222 801196199 330909349 792344619 882373542 393743323 845973886 52718695 81793825 521490737 780279718 301157738 295185467 615900093 879169344 379040443 710261169 891113656 776822553 149082409 338419726 109104509 288008435 248012061 875255478 129124414 583317752 132922764 264755634 776397027 950522215 448885952 908916385 534500939 479999243 719599779 363802988 672106150 431414817 562432496 451603193 687570370 358334783 863544214 927190069 120901169 970449245 348820943 300161284 231420963 880796753 513540677 260990956 583964561 112050191 199701001 485346059 638666249 463290699 810272901 106642055 997343824 518341786 736552342 959315398 920142929 400867521 224302480 357452791 700555223 126328009 416263598 858425194 618742206 558486431 526050878 598739062 224681491 689569757 874129250 741198482 481097234 882459037 542208946 182102352 207365785 339409307 71708090 128246087 189893695 359205031 837730198 797141415 845175304 162232779 159605203 617563672 980647014 841462781 928560408 197670365 828623162 213820705 229189419 392015324 314982730 915833188 596885049 529386951 400832046 64847291 97495319 465993196 643209497 629710586 458686420 158495965 57711812 844438545 883325969 493064666 537783794 221901659 701204922 123756478 825121847 148841011 701724954 469299954 118366048 178681345 665959959 651399299 715115363 701096830 806925183 580439894 84050280 790423434 669796599 422359946 211957856 241609325 766746300 827937953 94323379 949214796 841750247 275999900 742379630 991477347 972961328 241998663 802675582 584061098 43612104 857010111 247009711 705676004 878207871 8938711 233100997 10258778 715579677 757383116 900228390 430960880 931933496 247117743 114299528 33024515 826800896 343779328 755169917 586072968 772850747 733942224 72102423 916524542 930355119 635046144 282404035 59294851 189632304 756719814 491011723 632819189 466123093 209485808 576286831 576733399 288853402 495264267 866187959 391921196 740715499 619449677 373571880 340532120 621456110 147742376 467313487 845664256 737046645 771856220 278550103 106565432 502893952 891007284 231875617 182655609 575095737 557489072 477383913 824157755 385086616 749359647 98432410 945740426 650631410 762680312 230611976 241154765 873814918 444304897 70122691 125275242 573039783 204269743 778012472 8929380 687411677 802330034 288237749 368824072 918105808 704234222 457697163 996078071 948948727 326884046 737193811 255170494 27184212 450795588 474866148 97645313 86487654 807298030 551123386 288278943 96476532 330807795 531861911 878018571 141337773 369880298 370498330 544007774 222170459 941770228 983558391 326382527 182733644 32449759 757656909 559667985 941532530 315675071 420604499 445136990 817066080 950832355 324571733 287219203 799347283 131023433 777607378 113751292 51734790 524593670 215445273 21225270 624216609 128761031 873629330 792113001 201184154 385900356 281435364 769329286 656799657 483495869 365076210 712816941 153271695 397459146 618495747 423596617 52505022 871130586 840608925 98979787 952791908 65301932 91110072 356480808 261108210 891793472 412608159 365584234 322837563 119017061 835740069 133929013 286548206 105824134 886360539 752903119 268770682 826601913 718037388 780207737 297701213 471535523 761787002 144550187 811183914 570359610 205484361 900627261 55706112 701715897 34161130 739381019 517110964 503113711 98623555 194342352 462271016 67509311 881651524 858720152 979068656 219394219 468867874 420197318 645080497 552594296 419109507 138763314 810559032 180159111 650920752 48278896 971071648 786564605 564383821 119753964 309008691 202808029 41478745 569355808 571057316 212206198 744101196 964513503 692805341 161430159 517512603 487920256 953943920 29934873 751041978 537549699 881006609 105650654 839203879 881749891 636435943 640556213 305668672 369709643 807021560 679938620 583554247 571722706 466145886 250494395 88724508 562539402 81569307 928508666 13507810 133540537 199998546 189174535 298203451 732085766 699925782 766831463 833322847 919449356 59377940 560791818 24128927 801020406 239785766 106431664 979682881 323483668 56521574 591289565 325062517 945103740 293622641 167788052 146074792 506051838 337787672 346482972 671463849 118908224 855655338 540350001 376910080 689467394 814152685 314693431 373205707 589439760 936291007 390023303 600119550 276930022 966220137 623152631 98727015 372319341 209014789 923448574 236543221 741683100 971540327 974087170 677882053 271270172 609053632 903418613 107827921 576862563 94332938 754857625 3384735 560638661 412137735 178375547 488762503 417036540 792945479 746308336 15690270 939254389 821134222 138011259 686632135 437557459 10982447 447681212 223776334 925445284 779414252 624092777 148494659 181728300 832319582 491929613 455553046 222022375 842037530 360197106 488131379 342057386 421239547 641141475 977693479 765128071 878776048 747078358 721022171 173251236 729066813 167009497 160855329 571065014 45992550 924919808 517180020 661096981 749955523 548945518 619863587 613252414 902429285 964121985 389546120 219208375 265910412 876815559 445318112 457185017 767841464 741620566 256558903 942721953 221283074 638158438 22402254 282972639 936732648 541320396 500197539 539038264 558382182 581709426 659442861 694110222 658096624 196230851 423699070 414786931 15236631 304259409 182069452 643196780 778052023 40765912 652229969 633414520 276774993 205881541 533477685 748571389 58302858 690447221 608639610 693103757 476021464 463237616 776927261 423189214 457177117 206701565 629275744 287153129 785674864 257409452 320255449 950707954 31944947 625174176 549878836 295735363 438975900 849807067 231915051 341319602 529904627 843088777 230934450 272183351 357110365 725971987 297433455 852396139 382728500 673464452 778983462 24379147 115937331 817861478 814030557 444363672 343066790 936934456 505413582 573733025 47548783 383298373 927033404 906879318 969671735 314886026 63415198 483233373 300183441 872959872 567834640 162723598 869630781 637986397 740628817 680340024 143316244 536717448 595745771 253609506 800648539 829564047 590634945 380334167 132412678 518933401 478728031 226206444 358684111 461107588 811611447 423009131 416958554 473697708 428212980 801630556 933746266 700968343 865676575 529355202 113324805 400636876 326153735 957312321 990315362 562695614 729928300 543250522 237483317 974106351 90363339 34363902 681713567 758743744 85718539 220507104 887973515 52221721 775856276 815943778 924308402 139573554 288649086 917235744 922101230 892525172 479991264 443778582 687893635 536201416 3951355 435425920 496329401 88796573 429191411 723630441 145061744 347784099 517859174 710900102 498526090 681085787 117329165 166307041 321410841 105252808 682397350 374408847 850568775 851392162 350181010 274489225 622029108 669943667 294546861 3369633 592384984 610684098 1183087 726226484 136966097 334298478 759610722 573006907 504341426 234068075 244955228 505546568 912356399 446773261 552052375 968292139 192093376 22471221 339167214 859091697 317253074 621895747 811378604 979478364 860769591 258491636 742946629 756288321 400383835 729779934 489061378 694192824 405073842 752156537 237443365 489559813 304787328 417220885 724639503 996728373 585297871 562427886 898168336 706223764 783582859 681908634 732354168 245613430 493276971 480680465 772479798 259462397 711137397 279275402 495169629 511301547 503908369 636186695 577029529 37123140 239053212 563583796 10293721 654993410 625050858 99337824 560323992 922079950 244579594 668915009 269682381 646211578 875161625 214856210 76630093 836482992 943526682 342373814 572649635 517054737 695660685 595604265 752757686 784674224 417712932 531380528 712554537 911919427 499972287 676091343 70139646 338384910 590600088 93449555 855949232 833126745 73341115 164004442 375794436 46335792 777196776 661519210 508375732 445157898 974707065 973097452 731625415 732251370 608342606 272392144 256991486 924007941 143421805 278179850 956433395 197408127 699908123 842997766 853971693 152433540 189545980 580928880 544399814 47100147 824146231 162020853 110965696 579149083 627383278 714307239 983880608 889367094 737652018 714879572 894852458 988900939 80664889 94813980 189343515 676986417 158748014 836236157 504825600 537263619 603311995 434975545 90183512 91161194 640682713 65510180 357916906 652367701 525224682 293631124 178608716 82105671 571781520 335325958 218001031 563405603 453114474 555836364 5701913 685533701 694182521 538589302 102908675 962990785 64391226 39410296 441797404 124488216 26740206 409577461 453143394 564736154 956565825 155076479 853583416 646390436 986581190 840796443 63729086 136477825 735789635 551567472 750386923 901209491 258484059 979794990 887678059 863667283 762478842 530821732 798122318 862914335 840432885 139137619 290603742 467092905 41386167 813104302 704865314 261783788 400448265 739134762 321666515 145602810 976950757 458696216 883847011 604811630 138964022 611817551 604442213 601068194 347039005 292704147 822634255 394656738 281634371 148943398 637790418 147345307 23713570 607979192 406268543 973078993 966726454 340497915 527735084 940224586 824881007 342701558 682111371 794119528 506806400 993944402 330120519 201505560 693702481 938207040 989792853 38140108 681895093 238986727 898555931 282735958 145782309 738540610 672633490 190619715 836866318 171395800 857040780 707465408 39939965 244195655 290857139 983003536 411581010 405489744 678312280 37040027 219497496 49368911 19590113 731276341 912355788 342373231 772770745 416845685 307908804 236922547 784244910 187398421 794520396 945822548 929264083 110339563 810738924 73906209 762684393 903246146 700259384 667745135 30895223 291002602 201942572 24217302 796839584 119829319 332824116 924461292 54635702 366743566 730618096 610335895 924204818 728667502 322305595 834237243 190803289 311414038 991722846 539199964 67602650 431398932 893477062 894913791 867747387 834317229 616123399 53074278 915304524 725800839 615094016 508910974 508523586 727316456 627405900 116249456 805039130 560024457 520963939 753374452 220715665 976094801 778205138 783158921 70768345 47644206 84627511 580552427 722415326 253508217 490226397 403499490 56433566 8006713 479499211 786235488 789090738 271193711 809334215 975434235 884605019 355979939 117628638 464254280 866721085 821605603 43825928 521948868 142695118 263889395 105776595 436320849 11645899 794508460 920557593 205483879 655264318 588341688 889243943 638581940 218522657 364276525 731594636 686354271 163643246 231008602 713633089 336096548 412227173 301284378 236515145 537251988 795433145 101600434 195637114 478834379 675571970 562048036 688997771 477648244 616802948 575267826 887121996 643266148 108168921 562089267 585764400 313765906 991295022 974191121 87371314 875901795 216662307 472472468 732081806 346998759 324930873 816248726 900304815 113219180 688933132 834329685 509232461 300973409 96327725 781728782 550229606 709804575 415358715 260049334 320149910 720010784 872678558 747286742 271994435 978935445 871813268 140818185 593064177 658645920 318905209 785531421 793494575 684164838 477183901 288948387 84956232 553853221 733964319 100458667 73057764 610953035 355777615 125529591 560101975 405727981 914609585 731894825 696891346 971607093 248094674 465679280 431404554 845688658 445460000 628070745 78770615 574109127 141752267 177213098 910348972 464927375 271183777 798359993 950041497 475243335 315015416 566185998 22724036 20291338 745437201 903919457 95156259 400459941 785359670 364001455 494507305 336085260 851868545 958030791 643845435 283615212 863147347 619101814 258820528 1127390 296302873 251859782 441116910 686641086 407274905 661650973 820989217 150494460 387662307 295291257 124754533 478771122 19998395 694534948 927882992 247107552 529231228 631692066 514610672 851921327 249452560 521187319 927702657 551283054 256426782 384994943 476096726 900062377 382499806 345920826 915860276 813523195 801310706 315057338 966770646 159363943 622930541 278517347 161957861 131175299 20467143 475106214 634562363 39872556 664060825 504961385 328997719 743324946 487935534 76775814 660783021 534004973 81722143 171689010 195790810 693032150 249513538 143986546 186363441 39112243 454840856 713334428 163546492 24632273 866738983 744917895 490213992 346715302 62986258 119248868 658135369 488074655 223344040 785047432 13326996 326466132 829704982 839000364 509838995 253032289 664650320 240292080 901982111 27212828 216569111 875132805 427684692 960053652 537445720 584083345 76844869 862287449 977856042 156226150 958086775 957041268 578286136 939936168 458243060 78171948 907984468 48053757 417323744 933455524 674555432 885101042 804036550 5770651 284708860 220748368 847890571 896655135 675157466 227418716 477248828 183500405 706376970 116958694 911043372 148968717 754062423 588660291 914862775 894187823 367831297 171236523 867018447 570198791 73310498 128352868 236990311 14664652 989486542 580032569 948024181 161961432 290507043 92448845 486541922 477644701 99222692 308459229 626571300 738751737 255994649 268355736 895989408 444548534 172901068 272892601 747906739 651547682 138923303 785183752 581833538 11708380 773176853 381035153 158525100 615586831 180528729 484977186 666440076 441269307 383719646 612460549 45134912 93665541 164908492 744924180 364565581 970274076 202163809 715440706 519940633 221200579 454466636 878009869 30346065 412467657 688437142 31790618 665887948 547459559 834492712 601324014 6019148 187868549 445542027 275228025 199365639 569873628 793409024 260573327 634665114 965453987 662970183 324416875 467104262 911063643 393748733 533754617 10613878 839914603 600793936 654126653 897622047 976946711 391200054 91717417 562368867 405377479 403339477 164213348 450421422 315457945 9004666 19017997 998432717 170065651 849597661 771347899 452570081 198707462 891469444 233591755 207500537 212534923 233255892 292696227 986526805 549728734 227259462 458851043 473693248 612667188 579193610 30660972 729601030 256229653 729598056 438551522 733794264 335592914 686198493 254368428 13293564 7103987 889658157 692817318 380161442 243097424 216242943 705083091 771411031 511135793 144641637 918653783 866630780 586365108 339369822 584017677 958722089 94818380 96657454 159695586 740288694 888742282 649523780 923073452 466311313 248175964 596553317 265262737 877321217 60675149 860148383 926476914 545247260 833729799 525304359 869413011 940460498 918563963 358065095 913077110 495569038 851596466 622512241 809321839 479220549 923950488 854673667 406405264 377285382 358680178 303083384 21992060 56155947 147490906 958665120 532036542 11266028 30264911 56559913 733396906 69571208 801342470 533633661 332412661 96444884 263717494 92352933 71075046 596843015 199815840 655195299 878383058 997902886 502629462 318717054 813771505 737599585 348235442 76856611 318875694 626338577 992971861 491458423 521538793 214201286 295912762 323073372 338247821 880641485 699385104 208319706 487329671 589707122 258593575 812317932 907880513 107301462 149719842 83167307 858168192 546508763 787164631 946939478 335715997 709124968 467939896 100328031 809706470 339426223 980184695 349556635 447835365 522759978 171312279 64251167 296203657 701139282 857940882 292498757 252090214 893929445 274311787 210172270 937684311 113413399 67505310 327641239 132231174 60513681 164007088 882489090 62180774 259712174 651912815 331467332 869708860 362025099 743589311 860100806 646795282 634505294 337284930 329588760 691864533 252160245 529712995 558380778 411042363 523837219 210788628 376395091 390773600 31752090 290945533 690230015 196759938 307535388 117598136 952587761 891776004 701970891 527241706 730063888 664648447 975794502 130756583 850748600 90526058 985534304 94422080 430923736 568960996 784344385 109336978 303783907 309336505 282254259 816130363 672950080 973404210 656904650 529620007 839947543 989168845 737415982 547319848 372301644 759412273 645336213 525643969 107390096 349609392 477349352 963985880 961961062 896337995 678329633 683628176 860219334 10166071 986905682 847748395 493089518 516097543 647019748 937133207 843579906 869387636 344235745 435613328 177831801 281474433 302803001 154920054 254390550 608091558 436749287 94672603 405217910 999669119 806802367 763233523 364193684 527599533 635023038 107635780 365300268 589670936 797274487 569624108 139943955 764378628 331206154 449571645 595211298 881937052 436411166 776968858 747991337 570854316 296597570 113086446 661482696 312214106 606490955 725398281 330758622 810271534 269346023 526454022 576950418 713747512 403806129 591957103 742370899 969384050 365081834 507515819 72565405 228950288 874645457 961243806 506296398 136250414 912238014 314384144 414283095 395743851 676507531 880831797 770858777 655426187 411738038 865027277 857161569 245854439 427559441 842914822 574179413 792056211 645157093 587512200 228364021 930144648 350446085 675760768 493048777 635297518 371694224 78927888 857169931 220056797 43735205 118796716 289335961 890068280 554653270 690289624 273542553 955962098 49823081 40985605 740173913 822161860 417521618 344179467 550181667 593278429 728088713 449457765 963522316 325016700 959113208 350483225 526511031 597262732 249472329 560163209 655925805 7106280 249091226 812448522 752006936 699152122 793844688 401681698 695238905 275650971 31954681 573720935 312448420 214666639 992773608 393441116 52369302 392486627 697941602 202535961 726065476 102115165 79278790 262212821 353130078 558708941 15930011 240447796 569586336 319051251 548404574 752293461 530726127 193214374 157470881 740828410 574751559 673594313 359444982 826007008 271589378 32674523 389720377 613568520 646554395 333222225 887463661 193681514 715043228 937303949 113952443 692564772 42738730 316775348 924581741 775596371 809644849 847602348 309511014 355174201 788862414 575716954 305536927 972748141 489617749 279524752 420057187 797914387 809293261 250968101 558942832 766952187 749906162 286640448 90930249 344860408 762724596 349044214 91386902 793974941 654227020 184405988 273304289 749130010 997123881 470075777 967091192 982191327 784899770 296395471 973506857 5248595 31559783 50465774 880698006 586375549 369116100 838107157 400911614 673301766 102844477 73176916 925679678 178412854 15657396 568764624 754834255 731352865 615246780 979154384 706078106 450919782 730688290 77002144 868735207 554188592 522387566 753830149 772737860 569952857 186859002 180140103 697562741 968839454 319186838 389860210 494122979 242439645 994449749 95838774 833672795 321239959 865620513 532715458 606557063 228479331 565714963 872900603 523848231 587743485 617630784 938269370 378273087 250531235 581022203 124778222 146717104 899482710 668514323 748690735 412626211 963584211 569739290 492490640 434075870 128358676 952243641 744015218 650921782 738545816 388019396 47061274 967855071 795815976 358183640 496996375 990658674 592943382 628810535 992919310 946883810 227576568 194280326 788667485 524317628 87226990 480145528 227185839 120606857 73486249 821386870 586357521 786371840 909651407 70946416 153733268 248486700 977168152 768468935 306096341 137655151 738091020 923130986 251828655 715562223 995488216 391345348 362703584 494503853 328416610 342974194 630549054 901472889 988665361 486138712 197312634 817689850 28777625 263828481 736391760 388743023 351607642 207357979 726481482 964973350 885145131 53215578 817547466 734790038 207244788 289706017 32270363 497220121 175620267 530162568 6065048 670793736 341220393 782533783 464530952 273897424 66078504 36375093 791056226 231619228 264074425 862927734 520675184 658719755 926100345 589541185 411073698 450707289 153001429 810423597 205130130 993238106 959397607 941010869 314780386 467591616 71366844 728451409 292493097 586999316 105466497 990395672 367536370 891226180 479336656 503520046 77249178 264865036 797359386 552972811 472645813 226366694 352963983 853770266 127779333 611349063 622850518 337551629 433683164 354719661 141933152 171923947 82362959 135717995 156309024 293669547 814753421 8046993 420231180 337976214 519842916 360600310 545603128 517658874 537792809 402201913 860430447 209522755 186500055 869869828 962899871 2378510 681039085 270508803 302894247 793144132 300197905 61571268 104675918 370363215 944341554 714254261 274836629 7667537 317070518 850143229 674070861 45395395 997941386 587513170 977651374 433972849 872287812 788016079 224834166 491657200 943448334 981084947 792819158 325569110 705319206 685844867 460842566 281274534 19794792 620615441 281653267 573263307 782494164 629337908 207757617 986493966 568273588 149241544 72757527 836294533 860924904 568238434 315542093 164339368 768701182 337878003 317305278 893748125 732814390 257773002 985150883 984118508 431975706 118004955 212810714 166742384 49775169 995152507 932660167 263326913 896388683 529164157 471147298 721394084 185091145 964739114 15038550 304153459 266877274 286694120 844053950 198791183 503188170 101648735 45826015 580747744 527740671 450879193 460646254 435450102 566648525 224406655 535998065 473891096 432001209 791547728 829644175 303929140 195276058 791461234 806851406 912946249 610828052 865729836 440171959 598147866 659582505 453934792 135705889 889479359 220745695 629986647 325824028 237286283 210520670 80998526 563275331 121519751 825006563 302081893 203681329 789595688 874933082 598192176 167552765 132900908 304526372 776113814 660730477 755054123 379200967 437212622 158210500 402814824 858452309 578749158 920427648 326090602 76939099 439064472 559909404 989224480 292524440 435242996 190904425 854687979 728666394 213521206 307479198 545212284 621650796 956965382 812701278 254109358 194205129 65741535 967100809 990937714 229643200 356615386 700438887 697364689 121418885 46732622 238742368 537283498 338286371 580671833 765376625 973704796 680631734 536393222 100117912 530322998 597818786 926548849 839953313 586485728 459934222 664278380 118985044 929948562 375531633 803504535 460174164 951851263 974350852 327819016 285831383 57255569 365945600 138436941 83295229 786921036 735756780 919010503 345278497 567752929 667517449 729961677 900561611 810250514 767648957 80292919 610661929 468532963 321331242 289139081 407240129 965617116 36757822 652704184 443106114 502544148 359216600 740044433 428046341 622204449 310705079 644374862 754402406 603457005 534786334 218507654 305217769 216920330 636664125 230724142 951474367 243105225 36351888 547550538 317223946 534058140 76134250 938375931 868925296 4953531 22268053 895520523 133898142 38518918 988497888 671648560 548238921 127046404 225482768 319618095 118131249 119085722 138407012 368293195 988285619 34541130 382006892 26670367 138954071 777623184 428476046 159983972 491573071 977985886 101012070 62048478 580558874 838421262 973494562 557886760 837324831 455181997 580533782 282596291 240243866 32294233 788723054 289005343 645490019 60000244 999652326 402418834 800095991 589405574 760290629 170108796 536874996 124020839 648682949 590223789 408121549 638960148 717632331 337736739 306288055 683107145 438199037 903327538 942668436 741631985 508750717 840241040 161996531 242277848 720854798 318165870 607814905 467165049 490798997 64544298 614374254 211375817 42898394 36225504 318206258 595010845 349443990 727307255 297736545 877165503 61553476 746087765 139391019 466972698 566855033 760432519 580821952 14696347 629366711 895042133 56330602 224920431 162799273 117257333 134432356 713458494 189959568 653741737 822099930 391359305 190475578 175750117 592270713 153089606 802190093 193353528 496171310 390990533 988253260 53642860 69579987 271132191 572426834 436915432 356126615 862737816 937184034 162199107 434035512 979127976 714901892 70721634 733593851 575889405 644394469 425923093 882782802 859433998 931239951 600385717 905780084 261346214 632982488 181487187 270773865 549087791 859927852 519205680 657442710 315663513 192407333 73891962 991463115 294056196 504901796 520473884 605693 131012730 919746909 59803040 525628739 508028796 204568374 425700564 230905628 381511688 422579506 58089155 338561321 968739362 447454283 505938013 279999548 343808394 182781158 370455826 957852281 281854799 210418909 232837557 248649956 310219854 155563383 656942327 904092815 244532817 224982889 578846179 506529361 466186077 499737430 810461857 844542029 437929223 971076298 483858944 907608577 80524190 435769267 974616436 310896854 490312824 804708440 417286315 763202362 875670751 88993362 816171170 360570847 397345458 749842474 224940724 280706041 737630497 999035748 406921799 142175818 198700583 251768679 832842274 75830130 166212351 656965651 48902833 827347309 372992148 744280761 704221169 20828572 289508978 750608362 549337455 870548700 478038412 492567110 942103288 334142898 156305590 862986810 147071524 329179079 929334891 79576249 430092689 940347536 411443117 382211023 512487541 549365921 759718237 879600843 452843915 978715844 764227054 459847089 59163109 111936798 713053571 697663013 116833262 184677860 470297095 363862171 914876640 767458461 57589200 962695984 701013518 79422164 66736499 316598707 258098973 439489850 625367324 596829058 518152745 930554291 109146676 667138012 871639310 901420989 378043337 816509148 457741787 529483102 58422085 327575115 880725734 72532343 57376588 777230855 992791390 658734841 92307923 229186592 376293531 385152093 818586563 766048309 287110884 534323307 608206516 717004065 627041269 257234559 779488727 231195481 6077451 241244456 83508059 923485928 921103072 98250012 841232560 591266160 969399211 736119959 370952374 129026019 483200798 275231232 707123952 102373477 93349915 958560531 732991559 783563099 935682049 497850381 407434916 278039254 92325144 437817547 822517046 471572859 848509505 985655562 866697484 119293940 989327175 980679874 854623568 60472876 275747448 311051474 468534280 286959025 270458604 581769827 506248848 182429947 642976911 831093323 696625889 110547152 243964281 73107831 234679567 530802502 887332395 694712294 952952008 431893142 546172310 873744548 819444449 767601243 311329206 877932803 14827353 970481155 142815194 693745179 83719193 123551039 746743291 879976571 659638146 173324376 955298505 568813574 811306548 607894716 687768158 565815140 752173318 534834280 178344873 391477808 819258511 791101903 573906980 534291590 501246321 898089334 643728153 525736536 697592247 27133580 631399870 149807990 673901723 567618573 384745339 341916942 681092397 565611299 740885804 716013909 102341557 459522814 981593795 235629847 211325828 791991715 911457235 376561428 637515412 684295855 198079513 677920102 272755889 741788373 636672593 735088134 297398283 51625504 649794141 342173227 765885877 597694163 527912071 697101686 483810695 176057873 184141484 449110996 794339747 753118390 501527707 796564033 421340046 949346090 870686533 243864074 285139855 822999303 227532960 476447230 716962694 468137484 549714615 784741091 166053536 504605975 602350964 876661489 573332631 635252246 95688168 686651957 735984203 650814156 531232780 593232664 274492644 750503649 328716470 135413697 398624621 260798421 125583730 750510009 987478968 538914779 150504575 343339102 806811952 753929867 166222548 533252457 372550659 362815079 962304296 342358850 44161725 41360653 444351807 571879488 867617974 648122476 94744822 626656733 382277157 505357513 74259500 777222893 420491268 375052987 297194396 129448144 552534932 855046829 938630515 48800030 369920766 536690862 463897158 335493892 433192332 192408740 76445142 257666544 461998022 573527051 496696591 270279898 609460965 378520512 924509429 652343556 407000375 739160573 478867293 937018911 224488634 714480544 945267427 182191988 360777572 317480454 980395276 119079910 513304597 520988387 61210386 752752934 401270424 996086559 462687675 980900242 362677371 69638961 682990850 242369503 179528352 585395713 37551021 520159819 752809004 322132346 483323427 365140362 773664290 332320794 692501591 555439596 482915548 266499 512125599 150871900 211209105 987899586 439483552 714677133 601362953 460282908 330583333 123094702 679454015 252410967 862697687 175995035 683609308 241770402 314973754 40402892 620291763 620242624 115395798 137949624 96748662 710013406 64834003 503450432 292110098 801020181 573558694 458643509 262827546 368661944 335721512 591808227 693778783 389294617 795290789 506883472 204457686 996730161 556483002 731002614 916668231 64104084 334774089 286632977 414566976 281484925 952536117 727508314 462494109 42278142 835810801 811319556 264671720 660879276 251993521 538253393 219697157 374712432 740243734 242756797 426112492 53433989 143330585 304034798 121226225 832194852 819369604 258380030 303200237 488287518 402206950 794075392 84843334 968616012 928713520 403745910 718186053 248553001 777646508 499000538 462495060 976794937 400246059 440562802 958286421 925554822 48282149 605423962 148460752 508458329 873358610 947524381 36162440 122632855 433277969 65679256 247465855 125235749 615057753 580963121 154502942 618733030 648030933 160220897 900402589 98867978 385866000 458669959 701428248 313753359 442819695 39901730 376953694 375093409 460131403 321977023 82653242 82491118 584076753 6925546 83906026 984438759 852311821 969745877 699907257 560037035 86238634 277835485 705405511 680538928 300737612 564007719 929496318 144911301 703173651 176738007 645685992 465629724 543323356 685012896 12063313 980547366 577451060 366703579 924749317 935305745 498389396 824243043 214146071 760711882 992712772 944263512 474985991 57633527 302865250 601153823 864784669 498808187 873230567 350236516 731877095 220918445 243708665 950400385 897033417 741049409 313664913 694788110 354656433 810404059 100394256 20519548 748707629 729999442 888436390 553484039 250610411 687414401 886764408 583250023 409150976 320001013 4485950 947323138 880062255 315138841 968140901 939258929 866250301 330010799 956112804 403173807 897428224 268290522 827220515 669761831 384493540 233465088 488183956 90377505 827505615 514392272 135276390 469651476 740945754 93714444 546141963 259084290 551227464 641206893 956862399 864124042 497083854 935378418 921963451 960915856 720017104 325144600 429311231 4621666 794346321 132382158 928909245 535150545 685530745 234595850 371699808 252169751 166491374 251737236 7803706 94829425 583705300 45535456 616308940 383425364 866424141 557754937 463023782 874387062 540259680 901900272 831324032 528822651 427776405 507975427 465572336 485298543 169913612 543250493 568617208 811096265 591273896 975564390 204414499 436815411 914177918 679256659 108297922 382506559 193227239 853895060 960499739 320332929 110504750 266796562 546164781 399665160 712117311 637026366 871057395 761836458 154029780 948779827 633882709 228748051 913337064 232845262 174424355 459737143 43060681 832967069 8622946 208409231 39802359 813309716 392199735 708836185 742241736 519604317 109962872 677095565 505150445 776406322 148593503 295390936 800319626 654449464 123998721 878486485 822142376 119865068 565594223 411575440 735864233 499003080 481055015 950515086 796454717 926126300 237818958 352740941 287587061 13353253 349975397 519280179 410005780 54631927 275768491 604210662 19629829 83198486 151408451 810970670 137087660 489058997 545160573 832608998 204764355 344845082 302060359 468798049 396897945 504352709 328038682 976301819 574354713 494430216 627701698 190737130 684933882 894145504 861979378 490973350 772056708 854724663 300437809 274025172 443941716 955811200 394575428 903536276 489454890 844490641 355167543 115313657 868557612 30335350 622697170 837504725 611484361 197639334 121770273 355285541 846359845 594100445 838144344 519358672 623644691 396302070 15716420 389903480 746256748 204555309 723030268 706155755 609317778 36081488 450798013 719368156 332844840 79954677 372958008 533015084 585496371 382263609 980636798 175999905 735850510 926102410 796949363 12720634 552872141 780893944 566550675 447766233 852395189 192384502 76360537 860445955 751377205 133853377 715651186 898536501 742926168 117963399 794322284 454705278 565029630 584167183 682694876 928437927 426047032 329823538 647221453 73257932 817228605 741332915 287607824 470675571 313878452 432205459 413723090 151001271 662803187 764518985 133981731 4335460 281802421 468799416 816728872 554216281 434459596 340516966 376648082 380493177 902437450 199091792 185999437 989582296 608336182 302947547 68599280 623120063 448533541 402232618 639354105 527796485 850361188 871194092 792687689 730015384 374237741 539136218 855074771 269419018 642394041 200663069 511214257 466511731 349108383 333699173 862611359 566453650 390319502 480645136 581394381 747302157 700350654 985109777 197149027 752664750 588042427 631259557 728075655 235625257 917230845 997258104 303816681 606737143 198708858 542034890 827132963 673435404 673083505 928334503 920199665 478266748 389007875 3593329 462181346 43715221 186709466 907555064 82833911 325927259 281790489 746790450 604234824 139616012 345542942 823697636 280669880 586015629 710576251 998916242 906650107 241811799 273516220 737529618 715617421 55679431 396284758 656289415 511995578 610187768 505716897 997659854 234850334 783857212 67495567 112988932 383100781 296542095 566088533 546312541 357621260 325869000 958442329 838429123 175113192 750131539 724076535 435375905 817984768 927275156 597668504 273191020 818404606 67881400 356721825 936468022 54118261 839859153 685154045 294874637 578775554 598377282 926755413 4806985 958342549 30053734 337435151 835786392 562365734 704695171 948754904 97276476 730689858 498052649 710477998 888558698 802861168 770257445 117499924 631804617 863483693 931687669 604587544 239056313 884731418 31731426 206713014 78303239 785199325 241923756 109790316 151991071 179134868 128442446 500733258 976603291 918251395 770692525 644631709 535223271 310955420 663067609 985563330 307246452 774799653 11524016 804536042 778706565 769341528 223633269 405014925 643824615 989858721 124952677 804340797 37841670 656980151 204797033 688509360 307274089 852531634 972751992 8872775 494751022 184705846 815281688 100162227 584015949 766556016 317435459 527746013 43490953 815211798 949909119 480292950 799571077 595373203 763699649 995898186 237193307 232280880 721967411 653630053 987758523 567118779 438624309 580897093 596185331 110717021 571646659 726575107 563159500 515092714 946264728 299560377 742532779 662410677 834674161 244015310 137057404 21438551 725505466 464809070 380989533 960482053 632458123 393964005 578259915 499070618 512659691 976230379 977077077 36332393 54265911 282853457 704848719 434714003 236322982 385224234 134622688 19584877 200698057 871569776 465076425 7049679 99228438 111308767 749620031 945388696 380502288 105821744 841439128 863044280 917556137 317515035 501197399 645763722 149441264 507838221 155472516 53800298 806394554 717615419 713076286 627231053 919668864 814751063 853479431 92687624 851340700 431518430 930903978 938825854 251813686 101157248 675737455 642959892 258705754 864326090 951556834 682692887 872774155 913673010 828373912 496120794 801170841 769625411 342723608 854239254 524836555 48433137 543068515 894755551 28835045 476967251 821155497 179684065 485174359 510862844 50570217 652648090 325328788 693912204 334192120 820495267 56584952 41722903 43898990 944650963 263266176 334140419 736907790 149455048 278708725 156321005 420560038 975173744 583325728 919957309 763948138 721137570 278110869 809954263 84980796 402848730 927855615 399363461 245172992 271010621 615758363 310801599 932679208 28347967 968885838 149207807 887078403 705755555 853188921 519374649 658804237 801884907 310849500 632859977 731890105 130604439 374390447 23126948 858152156 843234604 996847365 112794483 942799468 108179007 565086792 601585613 822904790 889663972 15156797 43655674 589247993 44812161 88869788 516019756 652480626 489953682 834248135 185382897 724823892 94347370 425908690 180534027 194457668 288194037 446622209 778957102 438775026 400669896 646560791 339416978 959007754 554740697 399473084 500699131 592065059 704285802 942790313 390732934 268812462 273579388 383496488 251368418 207924267 806394092 582846738 246544019 745413467 195265253 363154365 202729641 270686363 827111541 428626288 968214053 28998247 868068671 857846243 88974352 642239661 55217803 936312003 206581464 627225138 259940411 586375466 54902296 502232573 824222471 718703966 576152829 922773881 429426475 8116797 55339221 757253567 619280942 512480201 113600942 454519701 848554091 826053726 926417367 552981689 367991793 282245354 815539739 633645768 121547989 989386335 614158695 523035841 293744622 105518350 267786298 673378215 29360876 413052945 787320199 154796790 960133722 908085976 184174644 388259465 24975205 262866475 170561565 229907373 321140243 957095205 895671252 133264469 460844815 698294204 405663 512911765 869294767 249553667 798681406 495070476 674894467 391300885 803828733 310693944 966995114 5947763 168598517 889653889 188246792 702987345 243800769 63954394 943029131 972129486 760545617 373129032 399762040 376581886 814553496 735761879 716485051 100353200 669267028 347426739 319650590 639776067 260820364 322514511 243254262 906521674 300694463 20725894 817773221 350228680 324721593 382236942 516237728 745947524 777723089 57057295 611515687 88605752 582195421 147644004 981012659 354909698 556605616 583449103 540014227 13140496 770814616 931248087 984235218 415773661 158596937 845075405 729153364 308873823 165969294 833971067 360671866 494290357 947646418 628667546 304412357 830742495 437532843 447754074 28341409 746339227 731199118 578725800 786966055 71057611 701775085 210055653 413127819 72516355 799550477 626736404 299754798 134123805 966028599 32699686 503908996 109023477 771038113 531475168 101241100 773616442 493509330 389383793 22067081 269950404 918568746 249043000 973766228 502686313 701396071 786279331 607700747 420559129 532891418 614195533 547474196 988767115 258676731 957687662 299588507 962074387 42844476 536701596 646453935 234115528 135001201 397320946 844418792 30653279 479934239 96487789 540082500 711406349 390606689 711771267 540021568 625561336 465684180 250131450 497111027 787000886 711127624 680238622 524603067 126479204 797088844 106600166 256824767 988556819 877538354 905412208 508741800 845697389 32340990 322391811 507123834 548961997 277658076 955169746 551731241 501379697 739736003 752158033 80945409 555067458 302743692 642830774 240530014 887676316 929759758 141879840 436696342 768585569 19059288 719934679 192945525 880625899 799475392 528420628 39774884 497360007 490180025 576534266 506666243 58842433 825300916 886293223 489322210 268356389 118981048 664670652 500494646 633477665 676511422 537579016 473536454 855041546 896938291 202756543 161918456 508364541 319141991 819618057 596086085 122394162 84912033 130617386 776886042 709690230 575217285 510822351 645486757 217606513 301024623 52377028 655702833 983622862 275534067 967078504 842500423 366441120 706477085 89713249 858919955 120171116 702389102 577694192 315884234 316239419 671860615 154638369 513495281 572550832 732564594 562101132 280430014 461967232 798023627 197056260 275496295 889348573 873904491 762498166 587340741 190527761 767153334 334302927 665862319 304483597 811158067 82647271 364793204 534349254 88755368 46633387 417969153 221675709 45977867 357884359 114863489 563824671 234501846 243146584 621006107 580506481 789222537 75710846 168718356 133626913 942249787 974951565 912885271 588033034 384886416 501464471 924125049 337174181 923587240 194718155 570581787 431737728 753574909 470198452 282158555 880223 707580916 182837030 763483461 295929410 896750910 667403685 409664982 104771791 904441473 475331692 65828898 96598443 735493801 752080135 980692099 643397999 191641837 739009947 143393779 898545790 177684803 176047230 895085938 542213753 614474718 145910112 449825515 782979692 382727916 453554418 125043128 420898823 93100338 254742012 38084251 231561792 836267388 853363666 333568117 601984143 125277797 419742126 794567970 779857982 777220085 504478351 414719363 624691650 176948870 248553220 458975353 377339282 242892175 745421426 90130867 401782936 795480365 745756645 832265257 962241644 433061257 409876296 67438383 608007008 386428716 24027352 837216215 7904962 516907695 427008957 273271794 776726585 570737016 335677013 403975737 564665512 620733022 137391468 254252548 298219093 631411777 688048741 988249836 477202497 375786101 262665097 878293552 93914351 380695202 953053948 60589751 468926870 988932870 781598072 335571080 959893644 600398073 491004154 618073792 144725041 992455691 784106577 422948507 820237092 463341423 708699194 287883577 719112675 248562592 605437226 199067411 549853697 419107728 478286262 950307904 243744711 133039571 355587921 717275412 841958229 654717627 564015681 892909530 887140136 75681889 139215961 265652770 263955600 258505793 190760325 710830221 527620456 125966641 725615147 834065042 346339725 319845997 143230866 40196447 982084962 962300002 867863185 937145309 169356430 618633627 674451112 824460934 867185146 572081966 106593706 551555677 647944659 965617915 380572989 762044271 104804794 302185132 482055979 528470485 961265178 262203420 197555648 212578170 349153789 773059178 6015715 170834353 723405829 307685239 787773147 188486692 984468270 438014353 530500676 216960236 504794868 935712655 543947868 591237666 934452187 143558944 474240779 628957581 916225888 935790748 464235139 775094150 743527378 306619175 74984793 917793888 725999938 360391871 911083015 908342992 94962787 124099887 633998434 97091774 540740086 697452646 689931738 648381681 530988888 494269982 836968068 892431458 620525735 397848539 879130289 776286248 319689348 33035105 592511998 359447655 341860698 886423932 678824529 333474915 805873222 168527209 101346037 265054727 872723931 863536432 943890582 572104826 238355162 768899571 620870242 433968561 285792545 854468531 657059292 27956964 542509112 726239965 45751409 863435585 55909210 368325327 208668214 543233590 333144136 447100061 216107127 141774309 858765870 427542415 857364424 495380038 687039796 965282424 515563077 459155095 121608495 967861056 638507688 601834712 385716038 620399272 870589324 230211767 846463056 707767388 567452571 168896767 659788608 800094600 228726715 892443017 487199559 755885761 292934867 651528349 492534875 505016473 503821011 817394186 192735711 619859262 714358178 876692914 498342749 302888335 502599111 338640347 731011998 117213614 78619728 743757216 533591071 25982702 206761796 986993475 507248967 765679353 243378718 336135385 991751080 525024221 874023449 727788324 846658791 412862023 747059434 617666520 676625954 772787077 921291634 991463657 956360217 34103953 807198741 294617753 176901002 278464940 42840842 324725649 198642734 623093714 617545267 963061095 497862759 92939230 916014521 478448145 313123990 837408465 69691542 972430502 651696442 533967845 32261370 569974223 84714260 970065041 611766055 476464608 373280464 595975995 309389242 393594552 96862621 752995652 387391326 841917504 176282962 445199429 141826961 702625762 748484955 651880587 337772397 512991693 821050969 489576819 85186655 63679752 820660763 379934040 531067050 175022018 89007512 880325424 189188017 131079220 167411804 865527557 891855252 938339615 150867336 885692900 251591444 455057486 982755145 765744184 515930511 440538738 53539118 321248525 514312606 23114905 425132296 538951148 864148573 462538679 984650810 755324595 594968805 941721671 217273614 615338036 628681318 664250289 262819589 635133319 338638016 902076776 788155295 516762682 730653646 588910517 553518938 745854600 915342536 981308455 241213993 276960307 651272415 781275769 981053316 554343923 13008975 798805273 402986169 654070820 626236304 144279858 557293703 601727972 48324331 32929306 911499595 934107471 62996983 639283365 536193211 817449956 301692505 296175496 387420281 540520064 658893975 51433503 751688685 308070679 709237568 741444283 446076009 445330377 472999724 280500631 376265296 190558469 733578104 894231813 238132917 835889720 398459983 453957313 216180049 651750036 548162584 405927860 172917706 362771416 611149047 118730145 657528832 527839007 285403401 123833687 819362057 587002244 361040392 908587380 534776143 814240163 985546533 276042721 972300901 318663015 632128846 871533950 326543849 839951303 474237883 756152204 738611961 843862164 373602051 150529960 32815341 75338945 535103826 824088922 375877037 781479912 900005886 583028784 273024159 647446333 815070978 332783442 365789138 440827229 563435878 170066912 91104456 247420882 961002974 202820696 522276736 914053301 691329910 922043485 434246210 448220923 466083093 392121724 747214005 232528544 345097436 938891732 867620643 320664451 403522244 537910054 146627135 125260100 7357889 669757853 251260386 404828628 830851109 389407252 748039013 398537833 784861098 884095527 291442761 737404293 212526769 392984831 697120955 385286671 712967568 830450514 748622322 946717800 574037826 562532635 992492637 309761540 768637673 834078255 594353095 905122629 819704230 216987207 381594045 779584199 11655316 241258509 190236665 403791901 330935776 700283665 445488348 909143932 772744453 887213944 744284371 23015261 334480088 276987521 366980957 324542642 356612064 111078478 683441621 418125318 73968552 909729327 396261048 727759286 347481047 842547833 243496079 76267158 452022561 840222678 451875636 984287226 572436362 630228965 697876720 175441996 547500745 666037526 585838975 270375752 340276452 917514491 463474927 354280853 230741190 931049348 453863111 597682211 947320898 965705301 994229990 536991893 469430177 424717582 719540260 483870431 450318246 675505928 395545510 813637079 259939983 199537761 908222832 61866298 837848368 750490914 936192676 39400641 564027386 252097110 634584914 58369684 157861953 835891718 778991284 14999541 348273986 940759359 114759437 240427189 641398797 858606300 9152674 981674654 39378532 426050567 197009269 877174644 576807768 940078633 435528394 711029959 358994020 838348430 205920931 94543245 750422911 173703277 513344039 51589149 71032923 754991399 348057085 559351167 583485590 734558122 556185968 113654249 608315340 401597827 759516488 960224572 524920590 212259206 236282780 932833239 676624700 297306096 557844163 696080031 937433743 945498219 738396192 236101695 562030538 950392576 184463540 316028313 223125297 871838619 215936292 74905088 35917838 753131856 839306485 460282206 857478898 646328079 923639607 779263811 725852231 534869752 834518253 523936552 480627571 960996597 880768846 101513052 232682044 988873591 782861377 274772931 992927380 129120442 7925991 743437773 968264922 741570402 738301776 596182222 565203078 42986456 340516524 420638861 427827921 484995126 359391822 466078030 291142075 528702804 628954300 874520615 284747418 791195471 816666127 378844686 788608720 821214926 313474791 465096853 829054598 119433664 392367847 669420661 113688414 60083307 429337280 931917117 151414275 615520998 413178402 774755711 652588759 709548333 321220990 526227004 726124330 513826624 734240534 32758501 587403420 44358586 660884623 139262709 592187626 857418368 780923473 451529607 21749160 868789030 744259853 786922119 757658418 842141984 240514875 514257948 384893886 616160901 988564494 779495938 50991572 897180658 171419845 564435689 724421355 397538939 482022029 364876311 626692483 875583334 129903316 361881108 467211657 617287655 568308636 619777266 395534364 352486555 332163301 802236778 24771252 679199185 32097088 656888458 379342328 217164877 175122805 991261578 680420578 308729580 367165622 407635757 959546613 451069789 528169036 307173649 641107615 759857780 267713588 466765682 575954798 200867808 35081259 844615068 953720590 203145050 555822687 423969520 487122393 257229297 24300756 272081635 91303466 624097697 487214438 708573619 938823647 971223993 22195360 579818657 771982001 637970098 580549861 850380278 63371528 135179361 97679179 942810589 285066356 465705588 584085922 374601050 319801396 811325545 320918171 973133414 861630082 735502306 576116959 377589742 563046148 731775207 802556946 299260324 758436170 845644192 971645732 995179312 254218587 23137420 10045649 197585121 530200961 149287207 365511066 38769114 733779700 949770673 801612894 970507976 4477002 42467253 824697945 231187403 304243051 238337255 595226486 622772617 369077575 735274827 106645038 432376529 244745207 556406099 594786209 717392479 441359526 181871456 301377900 307242262 403898531 899123498 337371020 323883689 61648970 680217490 729340939 587673615 395168191 629913677 616958274 101214341 946447489 52605838 517179600 596663601 781433707 477894410 874734991 723184139 959724811 320105324 230671476 218448789 150962278 566639168 39702709 179997085 806040809 738508698 586593573 214142806 451956489 867369734 864917404 671670402 776202841 78278897 706163394 62251050 157173336 13878631 318637021 600943785 154141761 244025800 737524325 913132627 9299134 884672405 314156646 793853188 443563492 965789653 45127437 770507418 255961818 51855360 918444417 553111825 806025589 78521066 74654110 696823524 303875848 959454993 707114369 900655463 441029215 723431022 713079621 292510740 430943289 945074700 161617964 306710466 609983284 396367858 475113398 618890184 971410814 60775418 644760032 576078709 73694858 262169722 72964948 406617111 151649090 323622071 309701916 367144873 55900525 72231225 657571689 500200520 670656997 705656867 583303707 986100738 830334503 915310967 396388459 277357997 660291716 837310257 93003357 436099244 945823033 95850069 754779284 22645818 36767191 918062650 777580255 933662203 40440190 134040914 559677430 719998596 841880837 550072358 751966977 46539035 675437047 907578664 98134197 880066373 322284526 449484658 960488998 178521046 628277254 462417056 72000623 647700801 356461976 686803272 118530901 297041301 640050608 837363381 317937223 382611934 468504551 712684163 394430105 577956064 134757872 263915655 375873339 74534508 155217322 853974883 490002233 204711712 124943049 351379379 426959020 98588594 443526645 726814795 735187568 676318592 989988660 365091225 178782078 499774338 494477664 559671856 523350820 303443960 738639970 597702264 283277783 691622301 89338777 494832622 860912939 328823685 843485255 190453724 370453751 249766374 567055902 833577228 54647570 271330434 719864211 213699020 750813193 197294379 252126860 714535755 897031331 12185901 594879662 990695134 376582833 464508404 714670271 796931743 190798234 801522083 415583322 293540866 429869010 488267766 755682482 64364153 462994364 193577223 880205680 716450859 532685863 544868682 265942552 296070807 412093862 341076945 358934890 955314852 597135054 451273456 536950991 202057743 329086671 94285668 474556635 175602549 689202149 411021269 917077217 793688112 405272841 904211240 567934534 307171806 171841644 767401845 323926165 4073367 50873237 653231967 762608280 792859440 403072903 154311640 581633870 790438968 906483496 671408334 564619775 731570994 386226825 930014256 587149668 311323500 134850794 6519239 337562815 285678700 430480603 255966811 905216693 970188665 424548647 71141162 428615497 723062782 214887342 970211656 275774283 48259612 572829100 785377664 1751733 399790364 312015373 867636005 828265189 559130879 535703505 176242586 565205042 69274303 452300103 432253420 343615761 515636060 512112588 446123108 57835827 972927273 306383610 747379120 896855251 628177323 705975242 115410416 704582778 864747345 328207810 624436111 879947130 252546 279444332 81256526 736769175 505649888 344451324 377035706 606494463 835261693 557108402 189375136 55865148 991184441 821125310 184993255 81111513 289102190 82348689 867983300 905489982 673276909 218991586 872560812 648471524 758615711 290275781 628134695 212424688 431974712 534740538 107658494 691133248 545238708 487354958 717737048 976278387 882474602 491659436 273323144 528339102 792928032 197378751 524717530 178154246 10049436 215217656 418273860 871066370 467263248 782010617 362776282 35050558 207255303 956131221 375620446 809848517 691575091 750466978 413608368 184553771 2790140 262437908 249285660 200821510 595509094 321468178 284285322 324573118 89386393 171328287 979127942 516610296 824301621 53382298 92273305 262020964 991000010 537184412 627564178 177623994 992170246 787748935 890066344 736375542 600420192 340237529 122282343 878555527 199136337 724736434 879153057 128183408 441422767 956515449 944895692 136699022 260393103 497690093 235133443 908785042 591823084 571491935 543413897 846881965 108872841 862468161 123098225 256839906 720403027 175832544 985129417 994996529 416178685 290456062 357397398 21499272 751771126 509332592 721160593 973328719 77138108 589221612 392323194 298241577 785852753 247741926 213535075 493043932 889022555 350210187 510248676 727986418 723453915 888475915 30990944 270001565 566483831 913244910 714104356 478403296 664157803 8162407 595654548 628936860 338913835 982895150 9275741 188044310 944876055 451208177 893508866 320269100 379698035 806409112 77586895 955362983 371460971 313028088 697553452 195542674 123464112 31179712 402592400 513179332 308226668 699012461 203599734 635617252 607900937 60179262 380501675 628975389 578843212 991832686 100010593 165604728 940467233 636200819 192537770 448456803 733328376 435036729 640985891 567635486 336436067 208086054 664007291 221264193 336543117 637293274 93970143 151001354 128042479 630108366 473108062 278708299 696551732 428192287 583946979 211222962 598793132 960209455 96349552 824170298 383766194 682312532 347237368 796054536 428053204 124024031 731340912 244256528 765342895 331863722 111593212 391079457 408317320 237632301 290719787 690733929 714457431 118452238 466387974 11757306 528352129 51993705 70560926 152928252 208501969 991590355 906612971 45572913 160638849 223501225 440776738 668679906 759987411 590646174 918932266 763864985 488061782 835592679 540364346 343013640 307080102 382693737 41886227 74488654 835286372 924698551 545045535 992846266 687202688 639028286 730262056 487125353 579255284 677285274 922442624 629229785 468271898 662622379 310771327 947387482 181101462 58308661 441782838 965293176 367246055 247383967 765678010 62575498 432832263 431078907 308565991 162313813 707095042 951340846 774168230 740668099 579653926 921834156 694379756 403829298 931187956 47494601 601559296 11746521 723692877 185874045 181672222 29368450 877947010 507723161 969996627 504721941 757841402 88702340 861047399 169327331 347619662 61732868 137156771 290774548 393017964 374242629 48241901 495851801 685801436 878450551 716260283 914531691 946014276 876252458 181209262 952708085 694406560 906347038 219056404 740640485 582982380 44366249 471665512 101811490 452357645 419013831 271857860 825317414 213979522 792047514 691373354 195724995 239130678 24051521 936909697 121113522 432736764 53466040 423325292 235022053 270192681 83266849 313884936 584977885 185678670 701214191 113203660 696117554 397639916 123734687 986675070 67299859 814759917 42421849 757600470 45671543 483383627 208506327 36016047 724741482 790987830 785875177 111667325 501908184 544220185 757300 90245141 551343750 943245 762677746 374736325 307221005 619453290 795485480 778897287 235960015 165741800 886310358 497235360 552344906 142203225 594270604 166574700 637045508 626990799 688134956 470556994 529300358 401171173 858829271 589782466 696774341 527175895 436504117 18568016 116846934 28267403 302782630 82368414 22122423 862725792 820475933 735915026 698492888 16574575 132986792 331634162 856819469 126376927 109840684 457274476 794865036 705496740 162884428 396887630 951699043 294072671 496822770 595877419 952544285 250771969 137103188 888136396 448108146 367223105 959361420 896061990 42615557 10960999 643135350 316402343 399580599 637305350 956378806 362283416 831037515 152593446 909247382 549359032 377107766 332423048 597491440 451101325 931192059 230206003 620680466 148150281 343086622 522709304 532678555 270833300 901487174 543190625 484602273 281636264 460402587 474568083 535829508 848331359 492635878 952333196 909233449 129352496 81498099 625138370 61510570 216787135 131105095 932387804 352426195 768878481 905813739 356162490 834050492 548541909 711686764 348381298 198401811 98637387 966870686 327815340 143385426 373425226 960281070 254321233 218563880 229636859 409955884 248973109 612755114 719553473 382683942 95471607 215753653 755322271 989322932 462245218 149834824 128436046 200308387 445227390 763792254 45722180 638448022 687427118 571990613 426596175 57706335 467295521 575300480 730746835 101163305 490459579 824723235 2056482 930092368 811340858 944256092 664966112 855544259 881232066 124876049 108793669 48197067 93522358 908922881 489255671 144634631 905598314 31224114 479226327 326082333 14663149 482889674 113059644 74899488 632144637 681067784 23453659 585755795 598397143 13275028 449528448 504750842 867529221 73729541 261083648 99142206 897888982 99447948 945750462 581330253 751793239 356775297 454084148 266495426 51383309 377481956 406938392 833658703 755524628 726065315 494583016 573161270 460451002 314326954 692344734 466641785 925793753 454615337 450427269 680492054 451552707 553835331 660536744 65059760 252288506 429568708 685004637 383189527 67712719 867679658 633301853 171797303 117990124 161737992 783506109 828312094 75107820 256760112 802578169 804585517 272678958 96053892 436138755 310704921 429350430 736306502 277623072 657396122 947745690 959186145 786653608 805229926 360335879 330404483 760896981 704897372 563635780 698032866 577623899 668608970 227675000 84000793 543293677 551464637 147255519 612306270 974612570 221608883 668792225 111851855 673876123 134027857 404249097 169919344 638279217 210571135 339531029 735260125 856264046 322390754 678224167 458110935 24309668 733596199 672181663 735414057 334818297 18181549 681636048 685160840 792657498 515948680 168176845 993198719 197561818 498160127 586568444 110138185 291455600 103582839 929752726 197343583 945961158 784038373 586076197 63178260 774914806 306414732 730679484 339721788 381631114 513427637 483663402 427808227 412040459 705744773 378426289 359429365 559800343 698055447 775854672 96601815 369570760 621531026 532124501 341512495 239304720 21241075 476934480 696736854 787458639 691103736 328475815 966727773 85839883 858419100 592513929 806724288 478196581 342488342 914267846 245049568 207684909 778647729 374864191 141332271 978261326 73113309 332232513 76639494 958874253 170217611 968679828 885199003 957721975 953938223 799144485 36911658 863475884 953097132 293405397 670467244 210336547 577844490 98480174 762458071 638675999 277622216 844197429 353906772 843451727 460700011 998606406 295400759 640832132 173575586 798763855 476884085 373786635 148812972 923219334 13411849 251160013 338108937 851753292 65471636 833598643 339004357 493897631 829080893 73709089 597513390 829927423 359895732 358596344 138410516 562603003 780020739 127413087 970428177 139936056 102246116 198499007 489874678 810426883 669998709 885495003 19177417 103333823 963078253 793451866 484849862 170396796 141023238 544075087 11145381 927084768 50701581 841372923 122340078 561349020 606243475 120721014 507819462 731155620 721464447 676624678 965747077 50209418 501106017 766284618 73475948 50085816 781082573 574333017 689908434 175002847 437267982 446673033 624432296 672229304 234790396 124526440 275216139 918610159 292975624 537839826 806783568 221523345 886174758 513795133 481807379 568730436 783230071 645774400 159978705 647057792 196955995 279464165 112518934 253931579 203470821 529920189 271545352 657081950 237703745 200787643 260464950 38186163 273716260 40485034 997483415 941855261 508052960 510680787 109851177 295276861 985267229 752174098 5269884 191307623 282036357 541483544 181367026 517958959 988698674 469580196 433564229 837480330 513854410 346527787 548653073 207232868 364098474 228990231 796007418 57218395 608799974 933258231 199971756 497520297 902744 550831687 927501142 232157884 316493363 718171069 555076205 779739365 51175158 756471207 844618802 117538703 656193916 214574298 309551310 367647931 176802165 375461357 873276102 967227411 52776300 688470572 367084236 18113318 745486295 595119129 501885776 228870745 226164432 425428323 89050293 887610024 402461674 498577979 191363876 470944566 882279107 819431013 226577109 151138795 669711064 210844262 732281031 979402529 966090825 531587358 438859517 920553363 66302922 82596714 671212770 351654923 754976307 110099586 603812685 450104549 280550428 995413466 196266043 117511006 187606074 787731152 848184353 536787554 455112181 660882347 178501355 252095057 899268911 250234220 650999418 209710527 614712125 908159913 772075442 912212096 610495379 401065048 225901255 335987238 694704102 859645487 465710994 452027023 774651991 164371185 319180761 259547544 721276655 497162547 790816513 190541131 348707012 350108380 97014556 701906858 750644434 690666540 998254006 72882284 212210050 551455368 340838216 42324407 666508632 705553325 90506700 602556445 495402517 992119351 377831610 17422317 315956354 623625671 751475116 946681763 537574536 865461689 31487787 879751958 127075801 81381619 170232873 111562683 257022416 252335102 293239810 2100349 538651358 97713610 604621241 495817079 351982220 638160784 168174380 334807077 918899098 829735234 858162543 319486883 59474692 961829964 308040398 669937216 526789115 409485555 96027134 626837797 262130939 681802983 723879577 788042184 590125657 75245616 804803048 302208037 729876388 600401568 573105842 403156167 934622061 777623887 597829090 827312100 355174141 861368836 854828165 286827329 909557150 587889297 344884366 695902149 109202064 969889390 197234308 978102234 226087291 226296788 507895934 272583633 757112223 937035552 918779580 634770504 828431714 251246564 576070180 724274629 655893396 471614027 127971280 19742259 858470914 24477976 412044316 74261267 916261897 626838496 476943773 923079397 974352066 919706431 397675775 191086016 922593757 423904593 676827974 694199143 433276359 369875048 365749975 256335913 360242746 996491531 650882537 472212744 578560260 530390122 714961370 355268978 569809080 124606831 70139070 474597294 927617027 152447461 570882820 936514181 871238885 915838838 555039005 219373041 268346576 675705012 546889882 777221598 797137698 787917733 264399383 588655575 417093062 570406855 685394573 361584455 929262473 63844217 145221624 218253428 385445829 940368476 47547937 876784981 421857425 946692996 402727768 940812946 541522533 177144530 224963210 48782668 655528779 982919362 200014814 745055380 911121771 939783996 212879161 233715957 183883664 813355966 731582330 839369963 592119548 750312773 441131363 796278398 157731328 91271251 666968002 386332583 49038544 310189477 242539892 476000092 88498040 158498937 168254770 671867202 558855239 98926517 801104696 502770490 908787745 240348819 488840523 990915719 986972273 751998397 873285128 170748324 802184886 604534677 849793705 489410582 253048711 700087327 230364368 22610123 551377119 386030784 220069464 573904619 597740926 736392682 412209647 849757527 850100023 481515960 865192895 844892867 56954490 39915241 515890889 321640591 736358942 660183657 741313697 276904600 837706163 495495593 530330208 167708644 617231798 485256559 110394710 925934429 495513116 641068581 521366715 114343094 815448488 649226477 98044300 342847663 358704210 851622994 539850687 279566819 589459408 825218257 659855288 868832676 48226283 20088310 756483784 936153400 15340157 88717760 503953957 540702060 962016838 807446269 140225778 872837893 197898820 394511757 151360539 62224335 22764594 83100914 814157182 449539755 221504201 43450945 916524933 256016810 425557918 970216840 379919461 776159194 43637210 956497628 867507669 453454103 700656012 535267346 339410264 193541830 765321921 930742146 477524333 556734078 754288887 540997671 787577297 842041566 364058133 690845825 157372018 681951358 624260151 915413777 901137970 587741500 84494131 721929427 117686135 817986108 999810449 282013076 34947088 520039417 64034061 3682287 873958539 290019684 986397584 249776793 294788675 466214261 75960048 890245129 240790846 600874233 73717545 271471062 495193449 750492543 670995002 419981634 628226518 147474987 105557649 719367192 507571711 7850128 73744286 671925385 831027979 565863337 699245389 833904194 89964430 309928730 153842906 204533088 35336970 155047629 855990981 581178708 921858521 480956644 911586809 209481746 452956167 43707432 115765314 852162058 107387653 702925080 23117723 683729613 339326406 69197173 777833388 30026853 118185803 963976319 503477022 216192946 513644320 146011235 521670287 267256685 893337048 689014505 791531763 507025780 336634865 814018715 765213408 128187597 23054943 494514860 487811121 443546489 293142616 477980685 955263841 356171604 125115790 332865596 635272997 611909237 824275150 975197542 698456632 877629384 415270394 842373097 667517646 274938207 26880756 587374319 613522621 307570186 704272670 851257969 928684262 229103130 230709938 530675559 798740947 161612080 213450904 6855163 920569967 373733150 424028938 336035426 256657477 654146180 865259367 169814806 641105125 565329060 25722445 667849349 252500559 796622403 709575436 83298338 354103740 761050587 804882440 585679448 259518210 166021078 99780607 672151759 67538599 22577630 409015433 393739988 259796675 475260649 932710486 607474117 596281171 589618366 155429276 772833492 523953487 644143892 510551917 783138114 359208895 132944197 268767951 225380782 553877659 217565183 652498960 834285669 255938719 326085850 386569295 881755246 164783960 416768120 772707591 374317315 463981889 776485173 799912493 658496278 254005974 843186321 364284034 467332368 566673741 191474967 432595901 560291125 897989605 688001863 182304170 960458827 8777254 77258866 677375383 160965350 341580451 174215157 963696746 540179818 164024752 70398286 838885146 660072879 672181688 595559799 98709855 186420511 652119526 429496578 361359494 851404303 849031629 855129194 727682755 464903545 815158360 949939309 155119746 90479337 32353704 127674385 30577657 956907544 42186484 46836969 703484151 347944806 267970561 12641524 658203822 508011115 941553896 816735972 70705259 719557976 988105787 616426396 921024960 257712239 303576863 853316919 240232937 365759753 451023834 792284 667033657 293703763 737381774 364780394 709966685 507134002 233122729 876597747 780606398 518180447 293979189 907611938 127059397 151564585 808732671 261684010 114397488 346545160 319563033 191254480 363179296 83655231 371755731 978928909 532366127 416750094 351761663 854760240 638883022 719124995 215734381 674100871 191084541 542951587 288989915 610031295 252446600 944504742 826288207 148275754 294843888 922591033 521978999 545233729 78419068 977161097 479531306 973202453 489071104 446010431 979688282 569161727 854546174 677327469 312323411 759201270 560686837 439878878 671390871 569949310 694819927 332702526 791988648 721981331 317205287 295657596 59953081 384461220 789915349 908400348 441659227 169869459 843125944 301595786 442167424 358499711 61199139 989488829 930825969 766077581 220627088 907192222 953269173 670009934 301400397 899610677 675164183 867410485 669476049 314183044 93098806 67458341 226611829 819725069 531527780 269844939 43646916 432564237 42985467 598786243 524065544 476308687 867977652 31440040 810787456 896383877 682835428 494992211 118064006 463558265 953161989 721036781 384866602 297903377 35181501 398293337 148627999 302963442 547212629 11923915 549457107 227581171 75888962 652075329 246613184 820637617 169360771 831084831 84508213 330623682 603913765 407150750 285897545 812071786 524492509 569007520 573920653 100036280 582819647 101626355 787315018 819927693 871254111 877703423 95557804 261382143 109393488 887633027 180076560 771417225 138433197 153724437 993589230 794689863 223762174 419235918 495622235 209356507 480777040 36410295 477360660 599272166 276797094 642145005 165568983 931285857 454043476 805823007 969472750 506211858 292209269 640023219 964140313 896269842 443729958 504479043 17563486 509514573 106487235 433753672 80124480 317546256 927397819 68928899 36201425 898175611 185695616 637096344 163190289 352110389 538792805 516429556 351726792 455809421 377910515 987790423 892865632 762859951 435316654 87631095 82110723 840740962 262964692 82406109 456269565 732308737 33247751 785031563 317416300 528077158 397487899 6690118 416330243 340105293 609523578 933047447 988040934 331790693 622468898 909865206 218315358 949225356 97844770 313654787 957209114 104725394 382233125 786093081 753143552 890261584 414069128 421530224 92844599 48217909 322350257 920332493 844133838 439688145 684562280 967200394 233937916 537542813 888378308 121484577 267119325 131828123 421152020 127259237 301995676 909558140 538821385 76176422 91987302 608637162 525831000 572617471 172349795 399013520 150225746 141628935 936601477 765936407 591439595 914241678 343333010 680572607 291397865 871574887 487119810 631943159 364707567 796762675 937002132 400824497 197718819 271783935 484607586 978576699 571987055 381153524 119006265 640298871 302861181 965442402 65199187 178015416 556355734 698044085 635792023 804540794 927044968 123951511 656676621 565503258 757398046 10868910 993232061 393139690 751331617 901184822 107235306 996392271 770026275 364434062 654967694 249291771 15729460 864807633 683142116 542534529 782320577 592847630 586463019 349688267 929488044 255009756 738455178 231522797 564939209 382035373 747790808 369092128 480258601 641314694 828136538 923892150 936339091 352942335 214948626 918706447 995387926 267758370 874110056 756428094 834508472 125572891 985700460 207511408 184202773 642687294 749383479 899190756 389198731 420419025 178285961 981319531 661690499 104115511 413791191 123139220 75694493 79395937 260173144 186457378 536052679 737074568 997809798 667534941 327249815 601141596 539516230 840637182 978559578 586101843 571866171 851335233 705001108 414576414 258966005 684678472 972287876 916593252 9609429 962619579 102286109 444029895 245308661 251511825 514856884 557766218 562727134 996883245 240320022 121746633 109377366 957034940 104745084 763991228 341207192 593890262 707968983 543569267 685900475 778931592 598006854 448844814 130666518 552364074 402346050 139863777 34273912 202198290 680881222 82925353 382019830 766945412 911281521 995627600 261960301 158094850 531606964 139137808 153437045 352027 803242577 946258390 226007153 877857562 752579465 936277201 434943036 261131425 464431184 113089078 538398903 930998727 817382617 558033031 256718451 16964213 472746451 412552275 822826727 117140080 712078375 658186127 400549710 386025634 985958580 269685167 172334506 495070081 761177291 757795828 194245685 898448602 611425312 89240507 560109879 484882837 954597082 806348249 592125937 842848169 99393361 511163449 836057276 68407588 237393508 258675530 18381839 403856872 839078713 305563306 171696781 219383711 473115272 239213574 34812544 277511176 562833483 743038347 424183089 740877602 176971727 739295338 178877773 865322065 296753560 559976855 502131283 945991646 439348213 722218994 550874286 326724238 979969053 820371041 138676165 894502965 456771549 966684176 814047071 588820388 408489497 647883980 259831815 971555013 513826028 814907428 25677076 704801332 938267226 160768328 960265280 573855947 53523601 499529508 928871872 256444087 960912196 927854509 597543269 74264139 64941776 528129780 143336836 495885658 97667802 978093523 986756596 424768074 803566131 464235860 290641157 583047478 783695598 429290220 292904461 899167049 867104701 742298494 497740552 299401464 319920575 535444594 914046623 695695367 56032549 133174424 207940877 390330351 811217409 176808271 358846161 431927722 996795652 907559259 861701283 319692704 209861681 561257263 960037216 764106758 945229740 254253523 202802256 947960156 579339028 969502931 988760091 395078914 436416338 393263222 488463611 921317799 676250640 783133489 275927248 505590136 451371815 966202277 682411166 100974511 411926904 44766780 706069153 545169998 100647050 655702377 949161833 622020200 12402021 509674841 33627992 733692683 335884286 803830644 379204355 322208418 889460167 777424929 363863804 594884693 332812239 853703120 777772908 883856049 992620294 697890062 479549387 68979022 971245198 526375140 610491145 39119272 26723546 238885457 629290825 935122817 715585966 633158491 31677749 144767262 601842802 131596233 25450505 115316723 986468567 833819590 409935012 953154393 641991177 236322414 922090907 427712051 327943673 438252531 710642176 23591598 729527081 311240572 394558013 751138785 60367803 910358484 735161549 784372187 67899717 698153662 722573540 618849380 308573876 403944706 43865146 704208506 538068543 675328393 121952079 871564704 375140853 820744458 329832725 664345502 608561416 999188252 406896952 960902766 332531642 989797162 206472431 26256348 564805179 385244661 767407469 207920705 34076069 117680352 439949811 215635633 589710657 742891148 568814636 230522454 731068726 597317192 432753213 58127484 684078916 316110824 671969614 832282207 766887002 835535167 546699705 744765382 718958870 237396623 483878182 763511117 362756959 476322372 501890112 716547695 555291899 997657734 648092323 955659245 211132208 979858920 765376485 221468210 868141267 922749452 814913498 846114941 282683800 760148545 608326726 695003766 543733907 741175982 629474138 837670091 261886691 909353207 713030018 720441579 881556677 367825578 618506827 19097049 494881100 927956423 248538310 663062721 223650231 307806335 838825242 690251658 661623353 763635908 176633394 412128064 990178997 47942875 345904172 29157723 208183225 638777534 14871388 492771219 252946807 433986350 510862947 949130497 304172452 549016193 870073822 874559816 304378511 656467281 169021239 72797648 894450068 526020643 263183864 744757193 664372493 976956897 107579238 165150233 311100296 174707993 864569582 867507945 323753925 458741792 791813762 586635787 46021136 41594356 838030259 231924989 460301650 10534722 302678299 880208091 30675002 525396113 273906390 348855068 986216904 838513426 374367415 797421489 733164460 218249018 706670749 407091483 596073903 314086008 899129937 25740651 113839162 760219291 962067581 22866512 287545605 340875195 563972908 560030858 522569861 411108410 544171932 715451859 413332512 169966304 444188995 308167107 577549910 265178021 864403694 974853335 321840967 722735852 710320312 170030709 267004734 871622548 93733498 594385443 913266767 518839623 30161850 56383333 549915818 413654743 562260952 37767231 73555869 385125948 186934956 66482117 650423659 698571610 791514133 963575481 634764031 106254022 542769788 579488607 551278476 941694676 42338894 283812013 132611482 486695948 250833496 238646527 933371968 180463138 708273275 49812109 650734185 619843101 220495382 976362632 816305230 11473243 994783786 170304009 245186290 879014291 580826826 316993513 613427758 621457557 273596088 513871345 478536513 527345894 849684699 941346299 96901388 837765984 256389291 503967534 596832087 588948991 503142836 100555801 63564934 407137743 190868724 779977309 116861756 489966617 110161514 241341072 498104414 954249304 316363871 941981127 128961455 588427688 967927672 770035031 1707242 24813407 531533661 767889392 918532879 939199619 365572066 641024991 390414326 374108708 340904174 188618136 593964989 505466357 148430560 853450782 302587561 539455591 552644944 184310278 417639499 678777042 401475295 225299516 18981847 53554933 959848827 957202872 286885608 963702263 534091145 484247491 754988171 343681374 198348440 584848015 331175173 899401912 335234357 879995393 125866600 244814909 17067618 782917357 752950975 758763054 911512216 640250751 194879236 219759058 676577626 764531254 863206636 982826100 917322290 637476109 594634560 288380546 688838402 318675524 100111378 446768732 467311770 503255410 951105054 178704021 908194165 480488993 436085073 703290669 442791017 717920879 678500278 889249194 931688136 392970589 974056088 12573541 699646828 52339480 642140943 767155096 804482858 330702826 300862884 610256776 310890461 736668294 483543698 469641900 956019407 948438715 15159186 916437621 228469318 408643832 909426566 960202764 373223357 960729440 556997255 118131036 211672909 135515469 193830548 7494629 162769785 168347573 323108584 63395692 59089293 326829348 266814693 652095678 605056237 951211000 87101392 76228475 382871156 37845590 755731846 546356711 657377439 192322065 530022483 305860230 707075916 75252109 603689246 600952046 62484869 38835180 445162690 808575409 778822511 903056966 260832519 445681857 948873049 769616235 588565441 976357494 323119004 14182112 58232372 885153971 977494269 543799786 760591822 173987483 959560948 292391385 578026588 99629618 655786444 37015354 733874835 630273329 931521522 620184194 410948454 175296751 788800854 192818733 952404324 902058786 429890237 954724355 481247855 856848764 122458393 670910507 866470427 782586096 989956917 327389750 963976074 817867296 318613926 333204042 915931970 260506541 887634529 612474853 439146308 178125861 92200073 400132223 251612825 47034733 208393391 171340168 167750233 666868898 790043306 417108057 536829312 912290320 978115413 954220046 721143974 783411326 913239751 867040065 434307453 599372855 345942501 791093417 745944363 496043346 983513135 524882598 191974076 340127942 589346512 158559342 9933818 482950726 201162850 205175657 38369002 232590977 630302472 712670542 391515010 92554661 211710757 349940348 988844316 896541794 79253054 911226061 118779545 145537155 604288103 661525866 416358113 206373020 927865391 178188982 615110409 232656247 37226206 127553562 608674237 206077912 286928761 990986434 677040568 441739692 171606579 35403180 960383064 915330489 327834922 793293866 508132041 400091264 395563100 449658424 721306644 501526836 28513475 486687728 167752899 734908933 227995797 642927800 927462045 30110723 945384905 926429973 455474963 399133094 226220660 701364711 750170105 810889824 197054488 718856493 33709052 545435045 963663517 928380720 63722303 484282146 351305265 589512933 981130245 292701233 395374545 549090445 731342898 422287519 637700325 515701121 878207211 285585017 152079853 91753661 520313960 519350828 726588682 747714444 250558825 545402693 859199487 496623129 326529145 901712937 187722649 733446077 829611257 392409777 260886630 476013279 25967668 792260611 88211627 669073046 270876338 844122391 201866849 375561614 642619389 386121718 959953518 466560912 367212476 191902560 292483073 183135905 67235480 697049844 641831091 736162279 461274003 988091341 234442837 69442186 862937273 358606887 970645883 964255020 672381953 498411596 863512015 780424899 668206909 939705795 420845400 655521166 698620735 759220876 708852533 542020212 929686388 606333155 218014028 481585580 296227299 718206518 319404358 702574356 127412235 30164032 294080543 285678342 809201590 639541624 886743003 854921996 79989096 169230827 320142749 395403635 836439548 68598445 244006694 623394244 439941659 955938387 397249401 531805192 125204198 949725869 423881016 121865086 952689312 391037247 221604398 558243535 391384780 450154186 723007382 412789720 180338933 502665113 546317555 220717402 3430638 941539991 769034668 802645927 563429283 289254256 962377990 880915887 164360013 780565320 324163179 427032554 547680873 627502136 525766753 573510224 426452191 135538742 56471216 579837179 485094991 86019858 467367052 636743582 537963418 987026827 395133046 143149152 884440698 496922002 237787214 630438343 319397988 704527346 653336481 509802138 3763923 337575245 750507125 253570726 57424536 816458202 476176885 350723878 331760938 624405288 818839117 856722681 243754829 318752365 311469432 166394084 110128200 7243534 749219215 804498703 396589768 834969780 562992069 395338094 212784574 856642552 537725611 303202444 472392803 574862611 924347408 547182260 685180015 879259533 807491904 330359667 70636993 389071260 845128584 345792494 546382585 420464814 749604377 195084868 223780477 84200275 970477697 512115052 793237709 609197831 407621615 657744346 290984513 338329369 687324044 959570816 748161552 774486925 570784575 966998611 894057045 469731679 173988716 150915176 481492042 428976159 77019614 904369646 639529283 528454551 575097273 720656468 157445119 329062721 887251437 235088347 649610401 927627182 151374524 739278007 191676131 920121660 930755906 857639749 985405755 247966727 545336052 113652786 332315270 883382193 184898336 170931894 781429342 74203543 536812168 525198598 782231791 428030486 276322305 498536096 153642303 1957855 510161705 872881309 145247674 3289823 772535017 702475995 650890648 799627105 760107801 537071976 867454532 522463348 144218416 222496211 244500365 65007211 603956943 277479278 52383073 935547717 815115926 305999663 985168958 138199527 863363489 355326982 373015404 661433735 743462589 522744710 897503373 82987831 362077445 382519948 252241294 965893408 381551670 959042943 354692358 84607220 103612953 399972631 235652733 310541964 617817285 97685496 364667791 800467954 66116007 892380599 914659517 184067206 112835766 48875557 148525725 593103020 307338143 6250553 642546810 94761243 479188080 733416431 130877791 349494627 656175028 505340940 832359786 727157173 819470492 413358981 799069726 25421266 359710278 758490391 313982448 945460780 661973736 295495754 6428534 839472615 649410898 973895972 775462646 924465451 327082121 745381410 666189109 123866890 658609422 661293970 683771097 771278585 583125460 467414748 395902100 302249923 612141060 306573140 629590688 696616083 862060002 567971191 551100285 61000138 204194429 264646648 949443664 337318439 649555606 511194367 490338116 515717621 848651560 356003469 314518845 317162802 296703028 484383189 934568267 88868404 118176056 5924014 463840103 938781749 636089627 618550959 146045406 85514834 600539194 542475702 796359329 652871997 455427050 717327523 507578760 689255334 510060225 325600157 648489042 237756981 176073122 32265393 995120419 379411860 608523071 743709320 976161395 184485514 757377665 818264553 905652269 463705819 206521323 311893171 350988759 704461129 45134841 874254575 814106084 373360027 236268633 650546127 154794407 562986600 499276669 155836689 555527345 982469886 967545741 834656162 664461525 927661340 17698686 871005395 460098259 943259237 346161682 261021474 694056706 957392237 121728899 594055203 259900346 371997853 277161391 581094737 926368787 558316504 117282193 584069434 608071659 122111521 302352322 594202037 902126540 946783526 868857682 674535522 900741557 132112534 110179913 528984468 987603054 670200930 546420099 237560181 262264329 424123850 675301451 724235273 206132929 485970126 809078205 280306312 574086964 750483600 62352235 692413269 5358102 754043948 714922285 27783751 160196761 345449870 248599757 181049259 512585702 713906110 664405468 312333911 895317943 814003039 205847754 977943447 75553538 874808104 689334866 204309382 112213886 940125246 624138199 262448013 684797583 794450570 501958930 803280503 64070674 251659859 491163829 551845644 301462936 125852696 634250714 904540958 234320600 105121723 968706232 467173579 919326567 617175845 261322319 996000918 181775565 872896021 687805132 191762817 690484918 242771847 992977012 275715339 23769528 145128590 105409997 291882899 951608821 486176088 487050310 697836221 539024795 469367350 732609999 580250223 775469333 630611456 66081593 411445683 121792235 195953161 28269176 474602945 652147813 479843852 109967502 116786589 858827246 404970942 864485447 976097217 660099107 81684843 951112836 486907471 464815717 946312544 596344987 758385790 543315643 788450757 739440029 277304750 376129673 75910799 47174889 11056304 964147005 722233780 748828988 332396099 726425858 311016586 407204497 847950757 123117941 201319902 768620063 509571872 138305578 653777381 384847351 854711925 423669369 221958916 125767208 842332262 198812924 200979655 103144774 9118346 173159337 808227925 837590435 562409281 839347462 947271495 9900845 838888134 795518815 163296306 997999523 640362538 655706762 952408320 662223482 467113573 29484511 840230481 642849345 422427118 619823881 581008087 91611628 856894160 298815158 604336224 454331873 660184781 679259138 21284533 189128453 527431663 806896612 667519715 944758413 735472729 177738106 542759217 930009563 255325831 521827094 695520089 613224362 281167756 328798827 369553010 423627357 587399985 800303165 618752332 510580860 964363584 905255481 626232353 383795429 878742111 257199654 765825986 885650585 267267096 258108792 434780338 963769737 694368742 945400820 417974201 608852387 257675177 252625505 817824437 557457924 776187319 682992623 936412849 357928262 360953744 539728903 972513293 332500961 693199025 362683796 262678253 251116423 386613597 784187907 724124375 546980202 192896966 173807906 759637534 847890553 586088592 91675475 293416314 516348330 192571514 479361647 521072078 781053205 167120446 79539168 437993820 895159035 901863229 108578148 106460677 601773452 732307114 609332955 632085006 207279809 590642869 28834035 894311644 665242209 271879416 432210946 431202043 499283780 402513304 774608999 371783087 182837957 991172823 783792381 625307891 596438627 632645280 146765676 665634422 19683807 103256722 813941906 134014290 371265109 769218516 613251395 514901179 169222249 583636218 918329134 868403961 324764070 458969934 276543117 116467078 247290531 224190606 968731655 837415851 113576178 820334251 709960684 323302704 301280723 744957580 568733041 465255592 889441468 465819811 504578413 385683532 77822586 360837722 138844240 971560676 749592697 308178102 935408365 89887352 194265985 911973907 661138633 108373802 418470 225395694 127777135 992760941 650584821 966007449 675914986 731410921 464713605 251105271 141081390 771663129 174475788 796573549 818672199 576161131 482429596 100490384 419306753 509267104 555279055 927445817 91483897 497223324 495808156 705978497 452110094 304693697 61281345 459676443 327082103 476912025 260923668 89291132 882387809 601950699 277455641 771561807 115102437 135251095 739580046 314482264 226702298 815903806 866664229 898607170 303990741 846318935 10005563 841361262 255334457 950604100 402495694 453162484 621774832 273933935 890001994 100852934 421721212 240181406 601449480 447706698 770328400 909435924 733408841 214503496 901352539 346967502 104934015 914528541 320465902 606185425 398766999 656675239 34752435 582505042 589804132 650387063 914183725 442709032 178881438 100525675 356324468 178729035 553215353 901288241 971071429 995403104 142087479 190465499 687198851 582881163 999536881 865240546 642225720 181442892 852305446 961295373 116330390 139470731 661507052 569193184 187620664 384208565 789664641 991082187 636560982 834217660 627607062 972854701 219899123 236062708 957575433 677931575 737430029 179818583 356856466 322187556 104368527 634244536 732437680 181188827 885722712 771057746 323437062 179828916 968565324 580586783 405670228 321995704 220151337 827715888 376051321 775554538 191331473 643427251 304578380 678663484 887158717 544533913 105585164 508926260 188014831 896194145 919542561 487921320 442286826 54917955 918150101 150147194 776086629 357057502 605013048 186036072 12642745 248093985 407752036 68754471 135994992 794627513 59972604 441737698 628493646 394905272 548933858 697070064 376348806 977962859 351947416 696503599 891186131 837198726 197022989 545828718 663744335 103831312 420952317 503458596 389456412 367981928 714050401 917515429 891733819 715347570 405665040 59564626 739201319 828638219 235081047 364482743 895222774 34142016 169403346 303855864 990704716 725493094 455308106 459438823 587647336 350545 754219495 750807186 66090729 912634938 458676374 460629228 136677668 379064143 734169694 201505037 937748267 384551247 491837810 817916422 623039608 238287800 725519932 916098602 509992971 21768457 481716577 873141801 772002167 337842956 224011532 221247766 626518836 491305034 442813678 484711262 95608818 245116357 520989472 137039819 900731057 377162132 566709550 342708131 468917164 505849323 810056363 947306294 402564856 293441296 761800895 994229168 298238783 84678506 197395773 805350669 630879410 915289664 793716664 428684127 179304061 813828626 562109388 140676874 855074464 95366237 127297536 64246364 893987826 302455313 153368449 957434180 329869712 636473079 71177344 430128556 757730646 811867121 134210969 777437794 243145977 248374777 965741328 952961928 728106578 165247273 659928281 966620176 606237663 786324625 601555809 447742514 781975648 102138687 549396900 744530041 448217599 12039340 770041719 26097639 330966094 703848395 602511075 346322745 35151834 480838467 345578519 889064041 333713904 406763525 654870284 155453892 927599167 838159061 466604993 277412715 524428953 953013715 427576721 480027376 85006607 581378253 402779689 320955394 714740020 137379402 266913331 318054725 147773869 477622884 762380581 321997366 156597482 59187168 859717772 892539716 760190106 395341493 414257831 22089941 818139175 461822334 564298952 862417137 574196922 860816900 456354628 225839451 510449615 258840203 408640519 765174430 388475055 560690991 183017371 396774641 752761787 577973242 131690155 478029094 165510711 124182650 166902584 454849306 691845354 391807174 909828634 916001325 175490589 142177564 338426987 997215014 315880509 501722866 287473726 426987762 118546097 69398903 610338375 981792951 603787388 553638668 873679408 662529115 315158113 76601290 681601111 923370892 509298731 350337684 751256453 432343313 878045847 746296198 560139391 140145728 925902246 564146443 90337481 886728359 220551653 86986796 778457389 171885766 194649580 522143537 162820097 808759656 111057879 27369784 990685754 32218344 224252886 580344676 977933451 908908153 892715473 10910162 792551791 153589306 599503713 820748358 119499554 995521993 54924666 235504054 906185221 975709560 874754045 803360644 307739046 481578415 314450928 694349840 518978452 925377016 318003149 275180099 841986971 659830475 970202472 928390187 512056293 876198755 231502508 679134378 505052130 43213323 447456051 290127884 4812653 677841293 158591330 758558960 343596070 629840043 579005915 886307560 128381824 437819232 696898915 876821231 769661333 701115240 793888757 206539493 449269613 549385517 844058953 175027131 160947867 829287223 981802648 657108884 35921459 633792688 808441576 533694770 490520140 133673526 762406351 62411 109308354 697580053 834226396 657692538 917149720 551105339 19186862 426101919 743973433 505944108 343046356 253800366 279175696 853237145 935739520 45223355 747564867 443691815 923374052 308855352 415568443 790559099 356612393 309195031 333666958 238522602 446437301 512203440 92159884 583540767 317215567 754688425 612421259 90731816 464177001 495779927 472493072 222090561 561913235 86039433 531177187 255988074 989590851 228673710 103821369 535840435 701544107 645311650 491953573 683389368 344478674 270917232 44040922 178704424 688593425 65585933 832548307 673114476 465559386 403970924 58034768 793658851 245708440 59023425 949485641 74659360 108402567 983856699 755610732 252536642 568577753 467793190 898915214 933440327 31942033 931247931 32492034 382717092 456452985 507051925 709128681 566990899 106046422 208364066 808429254 329800692 54948499 103171525 7148116 10963001 135634906 105988653 651693363 342832826 501483444 514210601 443970191 938746630 832715093 665720393 296315625 50429942 232930915 256275919 987147051 621724644 552034593 340365651 193284840 614977355 830075579 271230154 760342791 200879058 60178272 786179335 709978846 104729645 787774355 695275526 332085791 417616379 384197432 664609169 706477820 192717536 435806483 630418738 52921064 357949558 498556095 873900880 523740029 132525018 784834880 726709444 666008305 242640971 326201549 963357688 143487403 129650656 501125147 328704367 854212859 168679912 532283866 992699091 268486803 42943781 572487830 561229674 956954132 804278798 845000223 831752142 31251473 798754924 722992875 436080257 810458876 250663515 83513108 621559985 548287326 68031524 211270281 638497456 620204507 79103517 694354307 774535778 503498228 695867528 758603744 193279184 644079801 281835112 24715416 423189489 529101842 368720151 583735765 237120732 943890156 663943685 369216179 936170628 206276660 324942514 683205786 534145063 665390735 698791566 532222297 301333042 542962728 477872867 903758533 121059494 13132964 800800546 182846221 916617150 576891788 329889924 841398651 610875423 988606616 972067596 684514653 286511583 672190963 830808728 568204468 185313999 889395448 459002376 78587482 718665698 393324064 736917017 495452501 325315092 965134758 958045778 101348536 817101097 320243338 550112640 990466582 106175217 4908218 346589739 86164255 757622539 257959994 737167606 763854854 929813864 487619877 314149647 161898197 83328589 77986104 60082695 243545091 498260218 68319712 164916145 617862033 210167270 845156692 482985058 376944079 474486200 731412932 833467440 549564339 213184753 539165917 775683667 488175167 988166125 206547267 399888868 414202267 165326308 179718156 805850241 904223878 453948932 69973396 243412694 910638056 264582929 724486074 592103659 355935399 212390743 987337146 69022835 905273884 693902164 773553623 333679472 1000546 294361000 891464747 525742569 502610424 947435135 570041177 320357762 509458707 156270254 556796267 332236602 713646633 25156556 327242204 660872477 974965246 945433390 581643805 701153489 763368181 614527089 205759743 768664526 545410854 979409594 814085046 920557091 755268884 552851917 469009845 566439817 936315047 395916430 76987867 547342608 97231791 701716976 410712018 581291293 469234492 223475796 695751244 381248427 267979669 675517206 969158457 360771858 813759260 560255019 538171469 62507724 973479235 61721074 876292770 344342278 780805631 604769042 167767571 897291135 213170182 649036905 656377029 894080880 176585384 944154591 866374310 763311270 570728189 377930207 742343430 27860984 119466916 106179266 688134626 121132901 667749220 907826011 690428348 836345151 875722818 878984386 150096067 225452533 744448029 49276331 953658032 263254600 605224900 261281043 849893050 606230229 503889053 107566696 574931629 437239498 528193057 48124971 114024962 707377245 470029719 536797209 394212778 193225344 485640656 381561528 37590129 287962271 821456494 95661167 326672926 960993395 342838055 218556158 870025088 149443151 931194488 549075611 328787589 293659608 828989349 672876473 508101034 110273593 326946114 285271885 564143558 974514460 354610607 316065359 246141666 30452768 537286529 12483239 589800136 102545006 354974531 445347043 184016177 582099656 863748292 887580421 613733345 182163190 139630126 512166688 690338206 710023174 460013250 217246190 550909582 955261631 719124750 947530561 771206500 867281722 673226102 692493725 805263845 798738710 249904435 899099087 219544864 482965980 889827698 568719954 68821071 617778010 950200863 514886790 691871362 698491916 205948050 875684216 222665140 522874896 320964448 959867906 41513150 34977033 940480390 131070058 990970227 769455811 268987700 989866610 406907537 984713223 109992012 337997814 39695294 18870348 151334871 43078108 166643087 340152657 297761062 872610441 997194104 57461586 139245446 699669066 644578333 130687919 302922362 42024321 798721719 831712606 774486169 575087665 164835561 965060803 512841411 592543257 918213809 250290002 638295764 868075834 236980095 937943909 122339689 370955413 918820479 658697410 436665905 514989183 121131718 197981385 326129923 197787801 281499748 526085680 396439095 657561720 703820799 84590426 169524798 55280817 8659903 116287466 914313787 906715280 721230557 709714111 257922410 487000693 314483196 689940354 206379545 560650904 531246971 733274501 612315360 353954600 358296026 399529930 475244398 660182599 257244607 568889720 675320154 203023897 887098413 287165456 627041997 572191134 694378068 591827224 253050025 222042831 121526209 660392691 93518024 964057233 955341176 139560959 542486437 293631940 187130112 568425042 558771285 742030551 286393162 647219560 997384625 227637695 17809960 973065098 427392745 798391607 686446804 636073860 498457102 447215532 295687621 710856219 486392857 953074516 415468545 543992647 672807491 188144149 328799522 30008168 598641874 471975389 372606767 945401414 962739438 411295616 324112822 726377154 638007146 548071638 405051254 371007997 382132554 167851240 332099390 7976276 182485902 717033742 578466513 480042633 176563886 246127669 34487281 507306014 44924146 905136560 518567403 162850183 314128948 374794645 378778066 632650662 224518226 359903069 678883839 276987856 236444079 323379809 890036949 16724261 419458641 10000659 484266365 415831096 176075110 926303900 456628137 872782429 481235357 934528739 286342000 870195973 863836148 289350220 62027978 338541334 497936096 641574838 594246974 291809586 270292519 524811426 110583629 972094073 995394685 911631329 274792410 173327344 869697579 251978683 54767082 644739015 757895681 672174946 652455822 961175434 827736721 168893771 141639762 150146561 563059018 70853513 831532549 119582174 537303607 616178371 572786966 496848794 835800239 901735495 855356593 148688317 266587229 226103681 307960475 938465481 744069866 486777902 960199783 437133459 526119784 744726018 628340739 414686071 956276044 53299315 483212748 630115070 18736518 154849212 782614570 141905688 767023087 292602347 760599493 670145359 616321347 322116001 533327283 862826941 82501695 169624782 998096265 16267693 691491644 58956583 37531709 596495488 530237383 984765712 93979273 738425046 598215421 291879089 888717220 896222951 868980766 385315639 28490291 907096555 769583802 311071102 224098744 539134199 458737506 624977831 762077247 920329922 860706092 444252436 509435294 384285440 32527727 435447957 812960890 828276168 756385160 973980263 746278138 195749357 108549597 856951278 688778204 662097583 90708513 349985159 577874610 821666636 609308034 334832647 916719058 108994241 800931573 186035007 178100620 70042514 542670163 814558572 748342075 598207965 217858641 903076333 600102524 982880125 366086608 759235286 188965435 87290745 619919864 110156864 243292549 313100336 1635600 616769218 337867287 285192445 196572344 915874827 743540124 588799218 328926088 373767972 486573227 692073921 77267281 67497505 712672386 450753102 134309333 560028262 365904287 722204574 667152104 983738516 978169318 317853936 357140665 219206201 664760386 439403007 704217953 755907515 211360310 59807858 317421885 50637271 36074650 677407591 699166056 943256028 853411797 920915721 510738130 259663217 135752536 473547265 219761635 544235888 748751352 421950776 821856938 292628987 978073237 99060871 809139471 14839359 709963473 469543733 831103427 970032727 863108716 185590226 36267656 407670858 597583564 891315128 126538693 114311505 575009653 255662878 485928354 805015376 401884677 673780741 981869634 958309096 967498843 788659182 74986090 838107586 616975828 6641047 554105083 714876009 918376624 360692037 332521768 375469157 747766161 665532780 27508198 909978475 558058465 901980797 218258518 919368025 129249170 751108557 923926610 629641817 189285223 187442374 724205911 83070328 532960977 568488758 283382884 785090942 535021378 942520137 192067779 207885345 521311689 147296169 494516315 749930073 129761844 302080503 476863455 335983684 734523602 887714460 222376415 40593031 999655325 422793467 703122000 755555835 127411442 132463165 109121437 499730746 363124171 722678277 866674783 387910831 646422177 941298801 502999231 454998549 672816602 853464699 722521275 452830932 146397885 501673716 364193444 946026339 388779510 505375879 956434203 760405986 119499287 17815525 751931000 53469725 186070252 573853699 478545448 337189892 119838686 650657092 477672433 490749802 621408901 738819910 182843754 519652545 267354816 729636810 895341732 916728289 398408474 64587418 528216765 744205494 646397544 686509101 825302825 214696313 57714573 512736928 328932449 971735250 294203249 63706779 887735120 600176706 230667571 44784916 108863707 242574343 761667449 178860890 785682060 938417556 734639443 984337586 427614982 366007851 750323940 798974613 506039710 135925990 470544553 109227334 544135651 570948456 600243803 486867175 994928728 827639464 820743578 34430980 923425521 569665859 315599682 86582271 375584043 123190415 320595672 724545332 254229032 137214114 220321589 976053295 333707788 12403796 239765744 13260201 849888491 764367441 664851813 142786922 72063695 976025851 761172358 284403097 157626078 871403536 200330000 605585536 532076432 111691506 367203726 534245197 85200425 21441728 472336835 954906790 647346954 864332455 376303815 174870703 582994263 755488078 774746124 394571941 424710174 649416881 625109636 417901666 830050685 922713582 955263933 75629424 480382396 890426834 823834286 24124248 302163545 847871333 540126230 739944918 572025164 43525058 469456577 10352794 210959398 345257349 848224965 208236461 562789201 792212063 278984197 311377450 256950079 529124531 982439885 642705013 234654106 456396954 863616381 212287021 64558568 2065825 359090268 790700294 185827925 311501225 893849992 144347812 757390816 774844653 577411536 374274821 707778153 666947169 118279007 580209136 662565721 795465969 33714457 794667949 214794043 733435965 274120756 971543567 276799372 425853394 151554408 218353494 319484719 524102442 715258586 371998889 301765867 206200539 377517553 932822516 748315098 486394856 862528854 676710023 661024372 550640575 378830113 21150239 965211529 305700819 430630114 628463147 353214375 159549837 17912303 771198492 297254830 696263586 354407253 267863510 236529806 527680282 22672500 523067595 459073307 434932702 220267941 566194556 427585932 436321004 629906522 107326414 662421435 649966701 381576777 779103886 879671376 601503150 573777944 949179355 590677553 83920426 550641546 113221489 563658704 637314499 719182382 61311852 701117401 539036195 232324808 99286815 998267897 299658023 10423234 708317231 466617093 278155833 950602608 490582570 5250726 411872787 525157728 761344343 238643461 741423223 506902544 668414530 96919137 918153652 14456260 781691326 972124124 333922060 508971889 769821728 850949510 825745323 590454808 510234519 475417491 199490455 844079966 339687406 979963914 99203714 452160991 642944898 48377382 217662785 932098643 905984041 534787908 934435080 430640572 969655047 58635612 694145748 438503453 590682905 837086400 418209750 592087268 407302781 768894893 423654416 523559794 513224896 124773611 373718418 99818104 672990954 731153887 790860832 841636796 855741075 216790757 427927736 584975686 577828677 688852506 960401930 876651779 549544441 463104393 453693562 841085375 47720916 285871565 158017671 585313825 153949719 424925797 35457078 531406290 57843350 106825802 904615405 534164498 387973654 833643593 781684105 313625912 626897496 574219846 497210264 624222210 50589654 940251549 795627417 235213056 217430154 854850687 772008990 421399006 254055518 377961352 669620360 402041976 605860269 89877234 537372395 418843589 587884427 856816583 714271828 332371397 359883015 2672188 411558370 107906902 240813778 982279728 387769352 4482081 888118458 594934270 423271959 561373846 308636255 918341314 274588577 910867884 69644740 73183085 155845313 498537478 131930444 752952081 314925326 884141154 417501089 794001415 762938748 960937964 886596840 647180083 812613754 741892900 503287370 484965425 951446427 430375171 495728571 295316712 260222344 626501079 877903995 876777482 841149638 910081045 197463486 789230647 159939453 210713475 320510546 537130878 430454766 320102482 432144847 919052596 163462990 225225432 319645021 881139310 468340514 396999855 537424966 509116336 685989845 232079172 710498789 762175779 768835045 674741535 887221263 80821994 494236165 702056306 905336766 27495467 895074770 755081386 379521730 139749385 521218933 450059601 182625533 160799606 228656790 407288456 593488314 247888302 880063841 108903661 352835377 780394060 776543207 513048095 713272249 481401793 493929809 124582521 770724448 569404213 436007245 766863335 864249687 572225418 654746954 115198446 814272069 567349859 613494539 39185778 896245407 414725623 668091751 417054429 258446506 91239421 63248532 944723872 167448829 88780217 653278051 65197011 925327813 759549039 196120250 676433629 139209145 791223567 680339597 671688733 628063629 599765706 599581678 63881001 216099834 18430047 564097402 252881991 320037555 669658373 302586950 751095799 677423136 391649386 283275918 874349819 224411008 611136080 942137362 227524657 419090326 86181973 286622811 308181575 335188634 567195493 723839683 503626052 51357523 421194382 140475008 181744371 841511948 165147066 928953700 626382510 658637482 437986156 568578028 480571001 283606880 161210420 36428871 671842040 563568391 161058606 586113046 969491450 200995012 797193789 635693108 207731549 992059951 905779031 158187466 643719798 635137596 516317957 398850076 106402520 557352026 32233706 364449728 969708463 893306392 141221555 625054639 855409737 889247286 232803696 243367032 687781012 130390332 845410317 978160970 722639909 323510428 596725863 761880282 519422911 498444318 9918837 956305002 2993712 153904488 844810366 401558860 76636863 580856397 969031118 13117187 345380472 227183631 38567647 467312085 676313647 906615485 204842230 902427611 693018745 591015089 257242563 139461195 764727367 217501382 861681754 955509469 87715071 440977854 680622221 834073203 203804866 745418726 220699013 236903550 735453424 563440047 626610231 634794099 119433368 893719255 529722511 287212354 600223888 215226636 904194874 310660458 281583363 747340946 242110126 225755941 800694052 21515770 798422072 361215113 429354532 10507855 980028337 771686578 721348372 992223448 655089514 812263079 589993927 102442499 845497163 378715943 130829734 990434886 137617885 721484013 928640949 450097939 160349902 97293703 527830769 97117404 214353795 372112731 841134003 519657325 721210169 401959900 266118669 265497200 892775749 247431888 630438574 942604057 39706296 879229253 373703345 646790699 393554701 159176291 168255986 233007295 136395177 213196024 647201443 78029712 909306154 194885902 987709233 450755676 154516101 431594651 817763560 632667972 4649162 709759950 41690352 941672443 491973265 428869641 43609638 793046569 728607471 723168219 605215495 58321860 731154231 979885702 169952087 607151850 808116667 494469786 883928406 110079800 450574680 239088024 441906661 292274143 821201497 980090107 815339626 361352991 466067795 938697847 257139576 291857926 498579496 139124321 129036830 997761990 692053148 911716710 762912334 226196379 130118753 103627642 838779865 138738946 228911249 727119280 423623061 249004004 933020070 309970201 821960511 267810956 365624853 993153613 166999284 843757947 712020666 535264528 436631319 910410507 265351512 482854139 815733717 161597439 678584053 232594496 790725032 393353550 233918840 686565572 195030677 739500074 459739449 325465430 583469348 340484 696708503 460137395 949434464 908624983 680716788 642625938 295345299 83014075 274997427 142355254 391660463 333563539 161968493 348236061 469703261 496029288 279538847 683157288 309629751 260530103 384090584 221994629 262864701 459916035 518125553 240742958 602407931 838000980 386475394 42181085 72733778 936234789 796952281 367940932 93715851 180885130 227122653 772454661 10396928 119442967 392942276 858865451 360789966 309340280 529717805 907580942 826239877 415762196 926516413 701618149 434365403 447083904 859321980 848446938 30736537 684927402 200623707 546533115 94214496 37628101 409028617 668618212 964703597 669070833 624156750 480251318 329301143 503912326 896225614 106018895 941809051 667252555 401206617 411988205 667816989 510959344 929118114 575456213 155856272 553197770 620456600 844441152 329340068 232063445 749998408 860134075 82268907 848987059 621556276 30460475 178491813 323117115 196175990 49930320 748993169 324813462 647695274 907719562 80921693 925886398 182412997 211805789 284534723 688568809 453877823 470898949 710209156 435746691 981561031 899218245 791937467 127532749 179215380 389803008 507693971 240169783 677356046 41465301 762232895 924395618 769258118 293818223 938553636 549512442 998901407 62389285 757489724 223779796 755670922 795364924 393066016 533176630 523242511 853090962 684381946 989964127 439887682 677287741 165803439 16719137 589593743 611972296 436619020 984746528 574191752 343962874 701157701 990902515 890021681 94929404 190240995 92493368 837913486 44317158 352676997 715594831 219317622 75942794 812934164 253189100 245481207 247911089 490709774 232385147 583016245 436714099 546080041 35022964 211732513 152543142 960656655 635428835 234108472 280219293 478953510 680876735 902834990 920262814 84496745 410992881 103245568 967109199 913017944 392197085 862035348 856163344 967455294 286404659 478007738 969654070 721331168 32303346 156027124 90063204 616807708 99581474 639694535 416528996 974889823 528341113 334398644 13627069 939406233 367889960 185241816 47808268 87274913 890365302 841755501 348402359 693422990 807532968 598509310 788011702 863067221 527557911 839574784 135033725 916317686 731468188 605600867 203800911 976394784 41008738 561267824 257412471 617692550 435510819 181677233 288645497 338089009 411641075 369114440 643890608 889692768 562503567 537461422 778350512 797133783 915453002 771358865 44023829 934498673 838153361 952562810 74886522 738247351 719314043 562718400 414102454 10518215 915600611 282627042 760599395 41868038 832355731 960685766 182824000 996353025 222574951 682355905 856166554 197401448 376513035 549507400 885891839 682630919 58627552 241568104 228544586 245131590 673372726 238999615 208004353 32385407 194789992 52400935 531722155 971185644 135036497 646245457 464543361 524154040 485242099 42195757 921740630 606072194 619248169 42007631 557870540 40322751 619800334 142294492 704623654 820385806 737680698 889618714 581967545 32963906 369451466 836784967 58198274 340930948 126074567 670080911 604416215 636738046 467975041 3395352 678507818 281687829 846919074 956510213 493053351 562793860 854807166 834182389 668504698 213559103 353429229 880475357 432002504 888628921 49949409 150126571 245907575 883248522 755047516 476395407 393660850 162710273 801660106 362192147 169426665 134289133 996822434 369499344 593145674 907771902 279741518 412179111 960817450 91204923 223198022 58102413 770687832 22683883 812495900 737996289 124629755 763620127 61032684 154717728 275661022 773595865 120539438 96845086 774565968 808160118 624101387 384113660 347284863 576455708 888978800 468069354 847302423 208082855 932811224 780173497 448279955 817641209 412524997 770384257 394872008 383240385 293926049 485880447 195376564 946889750 380060374 570443114 618287389 769225375 840937108 438491349 849978402 300725323 733583289 121467352 110062936 415130436 763301391 421432473 409124362 865201283 160280047 300259041 294776515 391100250 696322449 627327785 877742992 932004094 170548584 223933586 700201090 300935932 499322111 972519468 144752328 903300424 717582462 87651219 556595596 293439211 208652059 493979928 103889433 390800735 919798436 513471010 704564402 484472157 259536121 347605387 421649661 430270998 84017161 505731921 931790200 362925079 124738539 417936995 32948368 243541803 910812558 835867943 357666654 32191288 747103395 150882594 5965366 807429293 232321539 255979715 497868547 755279768 229945978 555570105 35633901 921190828 613639311 168443043 946687535 282162410 802893462 195139784 42043638 564038468 318875801 947812285 962959812 536594371 363996153 820948079 843558748 787657799 30362496 608272251 674066986 661187153 935888609 641759596 36236993 70380596 235609302 762680712 900592491 928722723 993831005 164738243 331501431 441607695 845803440 612595411 185911280 721875777 74484755 427869990 155947206 390055600 499804812 481115654 99805946 1746109 604529596 879366519 89868337 361681766 205847208 465730536 73112901 616978004 821298139 538108502 127343366 549849218 680056267 206031340 450369464 685285023 519897489 926872799 407458338 248751942 78520212 312775421 104790679 35983191 891079621 798153961 205465110 670901283 577977663 582361250 180811907 681119351 678814521 662827787 799088415 745475727 813091922 230585239 364431458 587943237 338462647 959694267 331015210 604337602 690880662 607244047 544295011 944098049 180925306 949967767 422040419 481130209 149142012 778552258 510238139 78837478 215006148 750661877 458629037 25727979 624571192 675562594 183446671 428420469 992007143 798620323 836349056 425010535 594773993 830211827 600807938 449805349 638886395 503244919 116028790 791955718 291336720 818545692 733493372 312892185 104475607 77271538 108193612 652096599 984970784 602118581 268768541 131175038 722009784 688183467 279844739 826425934 247755142 768914168 559996811 386651447 188661896 905390058 252649144 771363679 855128236 669275084 162435195 489285783 644029817 344794390 285193588 278605640 720251201 116064386 185685794 917092600 443912021 571959911 303998157 887692192 77053238 696110913 83510906 836827718 91618618 891526858 66366870 490161500 638353620 14190841 732714770 294323789 883256926 971651449 637305229 463144529 933174382 590472842 398014664 600981256 80240296 182683298 375996718 499272155 590767700 421187331 878810921 588716963 331412446 973470181 236298213 521097054 716511824 102409625 199773139 90072318 270960554 247670388 303858656 967978182 712753907 658167528 547677819 22955495 896783448 654986889 47277639 425850371 418246458 378694826 813035971 791987765 747079434 176740661 989102808 829998389 576745253 908689127 196925198 839735321 859210490 97039574 551165383 367341786 78513974 504269423 617751134 157817129 414455089 940030676 506986583 769801675 84534169 34366295 23037449 457347499 762280180 892099344 94328317 27791444 8521247 780226410 839076255 132945499 518802742 104202511 943100444 23896162 28596178 384888356 572677034 233875962 103356420 127774357 78462139 266574642 349781539 237177958 788715311 30170559 61877494 820177698 526439827 961473634 523992338 853056737 791853053 627044737 719388010 239124960 177851164 931297381 968823866 206362278 549735546 748700084 561264218 64873876 425858054 676357214 116787376 542046168 68825819 419906002 738570023 433597464 600045377 723978722 685985484 664726580 984719125 98588268 265638371 835739245 705247128 274550390 576502410 761755131 402977745 599963225 873392677 995992972 787707010 198109773 985277217 188699420 352512867 295746474 547755961 133351320 19584539 522720783 873866076 825810462 367236073 64660645 282895763 179422253 316943406 841274387 602563782 762666347 121190758 475555061 476769530 198777484 275922051 33031815 808234008 266253443 486452422 679126831 629324180 848132269 807089728 821985988 384641840 792856284 563636333 360809727 229487786 341767273 748548522 830359711 387466613 827041277 635343838 183177592 572417043 53653544 459489975 777533113 568400013 708782041 741628329 858742115 924766486 837352451 921668155 297796242 848864614 516937702 680295214 160223577 247929268 348769248 886727039 928142370 116337306 697483967 513661739 203405601 569697745 80445074 584289913 328951151 142449790 409793126 122800901 455854806 3237282 137896818 833096585 840119579 732014726 536766480 691265663 259841138 311283641 93043644 854734953 333365923 155339998 969201970 72428555 82277458 208500626 759641149 579945588 564955812 512152647 317652851 618983881 965169021 648675964 961569083 276411099 643508383 101626933 317628076 873169855 39380676 855631390 289766096 261108194 789508143 464389263 80057541 402003796 617451889 288583876 123596973 360036659 547463161 365787601 800051495 183077462 835153624 688601194 218347891 827617757 597000994 898419022 353802471 673567221 838251115 268572081 907958348 155345031 161830109 852783397 333365950 775096488 767494963 97077422 570169696 240860445 442470033 588371320 201876802 256356638 308940577 19008866 647009902 995268563 674945472 688200946 207944331 143975522 161466910 421353063 721374009 388343522 8925421 708282908 843121582 357304184 625691080 557719157 421382072 692773479 925679592 948890524 205567478 320690987 600466262 988237362 72889472 128272158 303594209 132915470 931413609 368899096 616507483 111248673 899701195 687242833 662802036 766940443 939698703 924358487 563776612 698946817 677399828 295030889 679028744 270155022 690214411 625864661 700668193 515925892 708649136 88793757 867885507 872408719 995443406 824883589 63353463 114261535 524698981 628699400 922235019 340132060 879997723 477120386 565294190 189223320 276595174 677569521 89780139 267877551 684454954 623425025 832733149 993909296 169344092 5056835 26168576 160523217 811274405 116104591 825459326 434546655 689027583 659256723 767943390 510184939 154901659 358243927 143016966 793015152 215356344 174275587 373119216 577275054 236337082 138061167 545457366 867944365 249275707 858549357 751623776 455060098 247940148 257526993 988275374 307350780 517907514 600651639 915267092 718633987 338543457 895254751 482617484 403922334 697936981 958668483 752219900 197562565 606131353 644588601 991060657 495861531 711782790 939677833 174340911 526304241 657565977 866433856 652386869 190740720 499103608 100076031 110322517 266031733 314629399 736902501 902440612 10505587 994178472 957014418 288227003 297679621 809543913 596774422 322575422 85910617 633733534 77703771 509171413 762580054 892653823 951705115 765032981 617437526 378509844 794178472 914505618 524253999 210248149 609936744 680441116 901297506 618383072 387299854 436755660 245350093 609550618 867281408 866985518 626853602 517099516 725678763 158125059 612394021 493742420 678597402 271922874 331417964 587427337 678842651 176569021 64272780 899158431 716725701 951948437 47874513 351964412 920832593 872722766 482422590 897183784 7558655 223767505 514092132 414143023 79701698 250861013 807629893 944080751 175122063 77415451 262643711 219701468 860249324 42209863 689119208 922698693 52701745 454047699 268409199 642867299 276102273 963250600 792393212 505289764 226296525 448996261 922245949 748825438 122589101 101624025 587605583 764970542 731392187 722561451 831959388 540313518 703294551 979822694 697935289 325789098 422893725 612025757 329668663 140105348 105319509 954325214 539333718 414780723 469523023 175464456 561965858 866386283 300232098 842020013 500870163 24341028 450349935 999147825 233545863 734022702 111306914 174492915 930600825 272460410 295627956 474112317 805563812 759802266 165183914 98330679 666853537 925634005 173883152 73929023 837702599 503990947 940394153 830991611 952993262 108703272 395059728 22905676 537008259 867864165 499069111 444362463 365373907 236044189 447195258 347495862 944573557 514733403 260537196 540041212 438093826 832470949 15198571 284948129 624651492 626771624 166912496 99669446 99131052 830106863 799795238 519230869 720320202 762241146 584276925 616322520 701958086 841104025 81040939 399807955 875704294 75547836 570661620 695177439 453766800 513278178 410278616 87843114 909759996 422341893 837842575 755684701 194327429 81253837 384068687 98357427 847840361 885742574 843539613 221616567 333440685 624066840 66924647 39493786 725310336 390802708 748293670 677820935 440994111 388341561 506588869 931190118 651761633 308710807 395134994 569613439 43902250 285957868 507862125 323773150 898000384 332711318 259848569 381055574 691886399 83336461 109261324 736310717 418138784 822124783 516134974 374389219 259965720 702106844 661663170 765385919 79456572 317503948 81799411 110730856 927149279 982624719 286739853 74685916 877197613 508997017 441876567 589707367 757084160 857607435 53559550 625803425 654628756 324113284 573343558 639251065 579959150 655560668 110906150 845855375 834532022 770002985 182316923 297863898 969024856 363253606 63915407 149118691 976397035 853503042 281381506 677245945 688616375 429808778 368794488 135271422 907767577 277863415 427809364 218492957 175391697 206235565 454072107 842409060 984079522 447030404 734440581 649436453 531261656 907954510 970594433 651568048 240652666 834880187 929653268 642821116 834653380 574142786 712334516 369308697 700153018 982519995 170393455 273283287 810492597 252132042 905275836 909028829 920143436 653196804 656184663 494723278 754695802 75219840 708673883 204747972 754349544 639133481 497075082 370965163 683816275 661248802 229608311 232742760 660896610 202506941 894684157 925345222 205555179 269611119 163402051 716754340 137822184 974681626 210750423 62589046 9084179 600092489 156021887 109936618 201786129 113951415 314778663 187644165 476432372 332528529 507463278 395695494 588673295 548517290 684397254 446874431 319768046 852254300 361551618 455438757 168931377 232995389 150982442 609716615 303003916 381142181 876780484 125877371 524716902 471654041 201255090 742043886 783909796 356360160 746071200 32900443 363837943 130023618 476228985 55940411 619339164 257092491 939730908 595401347 324752632 854254876 229624787 526867794 497611468 478566944 775731471 205612621 502063543 201081454 67110999 920963116 724193532 396637664 143140183 118705701 927951490 512032803 71963613 487213937 540623418 28643816 941811023 910992346 728765946 304145495 717453892 783104529 239911001 645229855 3973608 462352118 282298046 185685990 339345780 939934453 359037717 29507397 88174959 648020111 539438690 804034504 37592792 368138770 710241051 53921445 169461081 121403748 844456637 548553029 138004491 70804146 838915327 769702455 903078690 145502374 113544735 115980522 624473065 602349068 123162028 996574339 407140434 266839877 2594252 829992740 4532063 385450234 110283717 103501773 845298418 731081596 790641717 424674857 730645446 110157416 245710220 789439777 374308678 643346070 539390217 526156727 889630758 354066019 44482117 650370276 216836162 376252473 339594665 195678161 196717753 230361014 736451499 307642325 167113229 584067084 816740881 791766627 350523995 550347543 534935768 204752121 239964488 711557033 497472191 811647665 713742610 418766709 650480518 445678493 550582257 254896844 204081260 73096410 896988159 393804713 751815829 456325731 387450913 668700577 853463377 887339644 722606371 599331932 531239265 233544420 520502332 330186106 694740982 945899765 521251764 470941062 549580148 860424477 148544254 801791992 380884865 983049291 782777870 256910227 410558043 762087786 152496083 900899888 617178316 148500598 54687167 300264275 42174672 685168823 484522576 257662889 376904556 702464803 753012022 158973373 571090044 564055614 594917880 920239721 586772825 889340967 748398246 805658031 382532932 746477402 187386874 446227241 291356125 539953386 39831051 377355302 370174793 140030585 657099085 991131809 140307030 718216659 670343718 209469412 401916859 844961800 993753625 146954384 609751242 463000805 479450448 737250830 543936009 465259741 623483010 364115525 959660755 463590783 694247814 647715174 85092347 559675011 893318741 140217629 714378448 891461871 851240021 33179734 552872658 707313390 315760180 963610990 993900933 388443145 41138746 330106043 191444617 302312032 324630577 851089115 388707051 309057991 147675664 451249265 741616693 160871281 606920777 755007386 568245833 453722768 787979222 497119854 240321464 995169411 694369814 493707233 967853013 624549946 782379905 180692124 638193524 49046766 821025760 718280153 322531836 141231763 805031667 756806102 537775055 195456210 848610180 586233557 901378253 686439362 922262059 710325233 782774427 747273280 984598183 489697772 878809839 575925742 322620350 314975357 703809752 134356509 575441510 491053657 831586635 575692381 809704354 174754130 306147728 796907714 227680583 545993484 750757420 108610797 494075842 957303087 164427254 117972033 913947240 347763059 999501811 648687227 808281348 768079311 450522887 966162049 253556822 18540401 487619305 297272200 81145000 24678371 199625623 184856405 489164675 800018802 621379862 196426168 618873652 431955532 285247489 339476264 719867398 582853756 12912885 149426996 217886770 323608613 278541719 37568495 60941271 439913127 217619484 59819486 299982897 936688755 940990393 909986367 317551060 40243069 606012790 425738272 978059799 333409748 877255267 373485561 747711708 803594034 113862546 196104705 612144073 772648593 110076306 243180838 896021780 246506719 385725264 952024650 151156264 485415912 451093677 271723832 26884343 38480094 967804767 13782384 699035591 144274210 143602284 994630997 226765298 624122816 551041855 997762002 135236310 690466517 663751557 819485177 207675418 609063133 120508819 126351735 892567799 690385156 337843310 791638815 32768794 633379249 314208597 633151019 509849429 855292331 659730379 643019084 651758515 796753768 373812343 538130835 161642102 788372485 381918847 437171106 493995483 193359903 799684417 345187127 713880928 524557512 794247885 622982943 838015505 158823069 64616066 659617103 995704414 852411779 34443975 761620472 401163578 360977017 713461090 513778157 736860482 563193515 457077423 75849343 885607894 377383702 539083239 532502732 517845000 122426866 932490680 758770955 887708155 640003972 1792744 974830270 457418545 960688030 981312366 962701443 87597443 865559951 4996304 718388004 599091437 393040455 211254394 235607596 359048404 117576347 224546613 221951759 669894567 829613355 469017290 237634488 957142264 22119078 502587982 845195012 961003455 919723750 808221069 102319600 538381388 530909722 152829039 579353751 475197817 467365461 314424516 234910857 542893058 610591002 835854692 534832682 648041676 186616175 569031899 177008920 677328564 743476247 252317911 689949364 912095295 349416305 662157218 176850312 555745987 476322163 136695117 427852934 416993521 536052257 938597616 998925551 897173495 601619868 363336707 634864026 529486255 348988900 957517246 701521047 455490137 304142518 11477559 862786710 125063634 980648765 779616934 851034306 884250830 20886970 466349087 650680556 792362255 722633341 127363061 368633013 972488206 245437249 539524711 827226738 472583098 123229668 297620860 684725337 646986650 835974161 280988295 182105420 80823368 779485639 974369522 838806972 711282118 169311032 612779193 528442998 232304179 336536829 608952762 761738856 76495431 841285110 146454568 413400300 233590750 915516466 847537842 271606878 134359262 901259947 832542497 70186758 224661220 587123548 491114857 482209563 455102289 492601290 624145076 779919256 379642226 171715412 545415162 845667208 811648125 877073495 125588791 743115340 887868710 259873405 276327877 363406942 391864107 601520002 403810499 648434483 405725572 329718083 942438591 223659751 688874062 503310387 346194971 749938094 308777492 185283509 990153872 494403523 627825951 7672962 455164267 259938336 248490954 975979527 425280224 487134758 772375632 932116993 600068280 779587921 449277304 232517032 249215853 430714040 795664899 841908993 595217176 964258622 823580304 6480634 283153134 707140239 758878314 351614789 845601200 804140285 868762814 102548119 356467084 985465703 766446958 972123450 304043643 102860456 451094499 960078153 603107735 191659420 358808600 175475835 65587090 421310503 270063709 262734409 755201346 555608114 594279182 267612783 480294151 878812576 6472925 601300105 874475549 734688130 738848958 382608759 655685603 137094466 981680625 863427576 423692808 145629369 561916877 363680919 191822760 259010789 87135082 856870316 712369613 812656025 971826096 674605201 147137602 388565391 153870624 379752482 505476215 192837718 137663624 638075585 913352754 316312489 30074750 67513308 820310299 565219261 431505110 515939767 548915551 497002828 227275818 212452225 992747959 355375754 334477046 583919549 676148613 141831282 596795478 847219377 412195934 291461712 855131112 716917626 450283138 318324340 26572940 129970392 728513680 371323417 734538616 394329396 303291093 711782237 796762633 638958784 201304941 1396393 897982686 229069013 134328102 306146513 574675170 141741707 928616095 835408592 126028999 703712114 822500790 21346240 100495876 386106387 761860566 220058547 142562863 88610698 276136831 332090278 998016281 211134506 892812948 528337719 987035227 447219863 858545592 491644521 207989720 937809329 333636213 766476403 607947138 837013078 171999745 708208271 61912080 223142691 926190062 45479241 417406260 422871996 885377508 295422029 627303346 330666803 899448693 569799332 374292739 449513082 883169272 863611236 714900728 589823476 790595421 320430822 658233056 131291652 340052205 888773027 64635461 262708372 29705846 616473972 95603889 627904823 626901995 25479680 498752898 345907001 762703902 503865846 748909069 655914773 512426058 361467745 523828218 791222287 338413586 448044316 389525017 361958484 754538347 526915242 742855149 558205900 342786492 209680542 653967097 545831669 766612018 927272528 901710145 205195008 908857007 348384651 1346595 496449490 663112812 43698367 39148332 50807403 694960519 464564545 677071554 733301405 523619231 985923436 565979068 847603861 980832158 998574762 230035549 33691724 923692922 953679736 200676023 320773863 282994445 659204816 935656828 781993778 580872895 908293435 913540293 486496421 679739907 898108112 142371971 459664831 555419679 635453341 381229248 988244648 865785510 222898156 643678285 289935313 180528868 105275634 313026104 317504944 105153380 792757182 565160830 894979553 873338649 122380522 19948410 676816415 595577216 655298594 757048300 755066973 247272562 962227114 501345499 615472980 914857096 553103774 372608417 92285041 474453895 81772590 104187083 580195279 569440441 569978003 227811527 990239830 983857492 170137615 908654300 780827969 808435579 787962340 89994520 589976773 245816774 299760278 682987088 961402677 337653415 201555424 376615568 161776678 779662435 724687964 698235827 22969111 812094520 718460582 627569109 439881 303005221 144045848 24456638 825532524 392925891 231278305 314525447 716128922 151976964 980706040 961893308 23219060 795851921 181222116 400033776 851167647 30412308 282720418 610215624 132570585 514333311 521828815 800206543 746611291 613980925 227942441 613191759 735900637 257460559 85109061 27119477 604884691 9747643 598144543 888593809 30877266 553193647 990337238 975326347 262650679 185874494 875210458 319669099 946635021 425157461 664317412 873725042 612544213 33592861 742659288 406086369 49726302 162937106 390237624 212834103 153643269 336120531 67770467 122453404 80034266 864749356 170353953 539913896 875144836 53132146 438235366 641569270 883971927 633141818 631637610 412779086 657233759 597614065 168506248 127069797 533361915 114394637 919503430 508825464 533134433 518173060 49541897 908324390 906317739 57560147 351361270 334013304 432260046 958587285 900369028 763065055 538326328 708650910 1980745 764046343 917929746 65784490 109277687 659530444 196389644 226670212 543730836 684176381 958065458 565703426 31211186 138608230 660446358 20062110 651332240 842246939 526505414 181426027 239582268 72880173 420469148 756417734 867467923 261759375 886908588 603037894 848592055 685964174 989875045 259851282 634394659 702284652 639618745 35427113 296129205 169698687 582698686 248469518 722212305 128964721 930524034 154257173 179366854 511509674 234234268 783705459 161813472 376070756 967268358 785169212 401856717 973974806 115706474 858996244 262258053 452062364 626382735 540836229 186087775 639690684 895264913 30862078 698024667 853794049 665617215 860428068 699634554 652813649 153378606 316722400 683740940 136629167 356085332 693177971 269492035 564140498 118192091 819893242 213079202 586936101 35264365 871720398 911756302 167055910 260607571 495503746 110487432 372588059 613302070 201613892 740914495 995065280 303442201 296042437 802850892 509098243 887957732 839187028 368353145 931598512 819940709 514643588 933143529 38080681 434131065 167070132 903323947 980545591 967478029 486588962 124211049 63188276 934338064 371427848 338945103 794049991 93918108 33448400 775004834 500068357 812755989 720109728 97809299 797082417 8054454 177861720 605203015 632612979 424395389 980891854 437649420 747194089 439279442 440571941 291315578 375239616 80773087 406434930 475245466 366322485 87751176 958147112 613418389 914981518 429477678 482825818 330902442 642769561 713566854 592147004 840604338 55862648 532421582 728887774 316270207 849293754 375677126 87390984 466928339 283117316 422441703 243208853 339475782 693330704 153918028 72705647 439763227 435091574 133238553 179001143 129175255 600951783 501479617 726778686 108510756 531089568 282818595 120249497 339988398 655444373 412869192 688196501 815652763 728832779 303323277 136156646 205201038 936949050 82037419 244463758 667896202 865608913 218849484 50772535 302706937 93380274 54364893 336130447 692171387 671100695 761682923 498685886 209545215 17537342 243597512 752222883 746439872 167224903 273980063 883887970 938873280 317691481 429422966 615771551 462444369 776106320 720849471 60107609 742768569 470291990 225924883 309903589 736947364 52263274 635309114 688717359 524805915 166433189 129584315 578648246 826738059 121796806 758519222 534497102 323289610 921182517 231539656 146690917 298958956 889417439 98618012 401432566 792024148 552105431 502123 236672965 42264830 328155235 211247314 828137007 677986144 803531359 94147307 848716824 988087836 232750576 837000808 950872744 521995687 705933246 655558707 439144756 99026582 818243415 565703472 288850635 65407974 313901458 218893610 36505233 148736544 893568173 397675760 946828828 720304287 638159693 978948459 230437335 929735240 755129171 598085531 404229675 751557000 341512068 958902963 49116187 958401657 848992161 968875308 370616352 38584696 605266882 375765915 618229210 520794006 668045743 651245251 849339415 175839842 117806036 511585912 18673840 292545954 633955034 670717979 189152345 478810293 4548520 547349638 379768045 690321082 639397270 636876815 246017986 141997894 706603175 722487340 776797714 635179708 261116958 774306032 560664068 983017290 445394082 977103551 414823334 439839382 593417723 568098841 170934105 526139549 531526885 589029262 247854188 360323215 367467898 44844204 122631081 270194101 869316441 973000087 567123295 618193071 796991811 532072860 328055845 862517245 209766174 790895951 523321608 561382322 74522749 9829295 29315211 533745513 722631906 300630227 403744542 898787472 959591685 294383804 122023484 695090726 980500323 74587694 652726155 673698894 170532201 175409602 654046828 573910727 3229581 74290429 814999313 998747209 778218207 784236221 130770608 520734561 561444978 342495587 414273450 926208996 571623293 827510228 287627259 86345037 484275366 959398648 632667885 284577987 904954288 140749319 471884029 644963817 4488207 840126526 554111872 263531147 165101045 526757917 20981362 558755588 719472937 977431424 386462851 838130533 900619017 133690217 357596749 384918907 672743560 820665389 666981642 459311940 23194972 151005986 491077645 4996979 53903736 252074356 695970794 850124965 638752386 569400034 919863617 586522483 664828925 134879004 208722208 491695040 867056324 305213210 411994695 213937242 479158048 368987115 681698529 992684349 910773611 383874350 347044305 456248347 436578590 569339674 773390339 628018899 64504767 754127530 131879417 255584490 617594807 195740672 443162735 202265334 567111630 446062269 331399122 193663564 828583033 144161004 543287143 989007315 437395623 986227676 228659040 220530991 862596853 507505919 394931581 667053531 817750469 818740092 166282664 710873962 617842504 931452424 972040580 747060401 494607707 116117548 759523182 887323504 8109686 633087648 768585060 474657616 633985256 305626530 551543670 204926570 65232185 984751956 83856392 220447890 328322838 165223372 919503147 404135755 974119182 64320825 640838563 290891088 222331232 451486773 355825471 317041503 864270479 839354547 533371340 827950210 750383128 2626420 173571347 564081280 417944663 969515757 382705095 58897128 331158717 954385863 473231786 2098332 489174038 135311728 108598733 152089916 182317048 644296840 171174218 609342533 678534654 861231307 973235813 947539741 37780829 264050729 491063715 562560593 463206124 394777516 251112809 722738485 89895568 928669736 805949097 281341584 571370425 679449217 287599849 994829464 823300688 220439396 491988622 261239250 684047794 626103375 856168944 333399609 976257560 621213899 184291994 264648089 288997246 336683639 874679051 138745510 132330399 203067245 176119495 601214306 705299509 521204783 542901564 492064318 867393493 161763985 852182759 439300496 660432381 35469427 433301234 363519680 958507633 963767128 906506408 811151521 7715574 359199948 448606642 547305003 802381784 362652323 712843817 938853571 207675682 797839669 176798057 611512942 658377182 533558849 700054599 47106702 151404748 263008972 507260602 697588546 858062203 198007104 971548300 278304477 498451605 42217816 709766491 289268497 539074763 539203697 378941281 165611017 520622497 707006416 598568691 905525169 721581213 928087286 413227634 429433216 961678645 580064601 531827830 532183129 990858543 494247377 985189680 825912060 929331431 329033066 543596864 449036979 882251955 441080472 676482179 972944326 424880042 169438400 384123874 288995475 903439568 152869427 615806703 210903608 323865742 993782135 514031836 742641816 402768396 654709919 352319225 895564555 109994296 638687827 63211636 570954769 930895887 49387748 234166147 221304613 29390078 65519523 31899828 59519507 738462237 900818664 332767868 584000698 822621564 952976093 63003922 817852031 706181333 939120993 637995500 218744154 28636760 196579393 432346120 699883283 379591471 426915818 633804643 840905597 168636024 937435489 471287006 383809271 776291033 736772979 864976577 100536379 67241172 62864987 540574888 666085621 351887321 706754376 730971509 492341231 333755779 395119226 957274666 157199559 447534581 630385682 578234929 486713780 45674964 722747105 145272291 563347074 665921058 939809584 376649810 835168460 70494976 895515176 39181731 479607587 983191778 248989124 688483703 441412112 198030742 978842956 588206268 246095153 465402074 644850341 275205399 37821925 998588497 948740560 736416859 385169041 662790659 67424736 736123157 347899294 111664270 847609706 458108939 798889276 896417198 174346811 915914855 728987492 534954637 973670835 160753227 316478616 763615531 614363069 965841475 882165374 300706147 404711943 478711066 739386522 368485640 139441227 261632047 328204881 486396031 569556704 907155717 1767745 625451702 135413429 939083975 563731829 901206554 343728464 50036039 312026041 289577531 671909511 415187877 313200735 75886014 919792577 733761042 298712795 690436580 682146348 666773370 633149493 200254069 767028461 492970211 237514474 532443607 323011750 422748470 640138006 451751666 183611547 931006514 350154296 488195162 139645807 857608176 577035582 874568137 875782458 270663295 485028374 845755967 615501844 406604485 892971424 780115052 975362114 498042503 399309582 211745746 578978280 163918479 56002229 820676887 85490018 946916451 72589280 22311790 467090685 301673337 299547197 307967708 919637192 682092794 82289348 44900507 904256480 745266760 84619713 332099414 418555701 514661160 59093175 224298700 536217934 6832652 628595074 676929238 32074121 290709490 418025678 647281038 681594461 577513645 287439598 244962615 655634336 198869722 675326878 108455422 828284070 119126842 473826652 674160516 1181534 172565452 410793524 658115402 857232869 876974771 38312824 861696681 36973265 222115203 494277283 628169898 193621589 569051550 271095653 874940759 314067297 186834357 83961353 723852803 5338706 586790889 173753192 398274456 513910453 518272240 576615494 873558961 89345254 698389540 832055128 155369316 956900610 801131609 206572313 697162066 386266633 82536266 321272705 946884207 2054753 151697446 370887965 277361591 750501382 874459126 319671028 813109265 959666067 740955207 604085573 997410165 688136921 835652682 907036460 205491863 376787845 490630153 728180467 68937816 100395622 850091134 726764145 511529570 710970195 548160158 325848161 56455813 427258860 502764567 197584349 518315169 687943612 877463427 384669502 444175672 621719866 337391784 241709926 402857386 725757079 793166484 344023017 970276943 40435510 357839524 667873601 767964490 303194837 741684934 767784516 694673121 879557463 53255001 337970913 31715394 428855832 890289565 471426967 203475691 496051607 83133535 900308160 446741316 598350168 806747943 335355595 988376388 955292332 37192639 212771665 976937277 785547874 881506227 123860368 692578368 704984459 860986108 356003039 259068901 371127584 788615176 821630621 416508665 933741168 340751383 320408098 834410443 971284692 214736518 888054308 338138604 510629579 354127726 700726686 677610004 374597406 534589829 165300804 38652986 92792154 159779647 687262534 466088650 575041141 586978316 380553691 346853497 14378390 530997929 264633796 445102051 362272153 523626244 622994257 771305015 394309763 90273242 346536619 813193442 239630668 608861744 901587570 368768252 988334897 713397143 849949953 813850023 892193198 88192413 523768769 828202019 700051694 908598988 728474067 97687149 825123843 127652025 533158428 749219155 906713281 196543404 237456209 200355856 325578642 723220046 37761414 403070239 751766060 969599313 172885468 198330363 398947529 491492853 321863979 27904182 374342890 303151585 489294659 864101049 827865734 375085031 216113576 721861068 194365603 428242293 436216397 215880997 226492589 634274278 394762090 455354129 973069309 539828442 300256944 562428915 645444982 999946143 803221175 566598665 617269944 824885239 303069463 920142584 998986225 278334177 599591638 873862668 160993240 930757431 348186779 653089186 571009053 775471385 886074154 585263311 854610268 588076999 320331799 526304957 889933303 674386902 406038872 544467747 269461014 179833997 20614636 916566494 525475791 938234385 660231543 179877987 435091996 52578037 402538874 437181933 284471576 60006188 729958345 252632847 231528290 624811651 467653258 330660402 105171757 462464522 354953416 284433546 438767916 411883618 919703825 76930495 73488314 284790436 944042167 507994362 993767808 636938321 369914707 602213790 583007035 894120864 200770574 616831117 28261081 561579975 697029689 781564845 921734162 894043020 411636162 846103765 298316146 642254500 919822849 291305194 419033851 983321904 753019816 659101884 641776043 433918745 493108097 677847672 932242631 87581219 505125350 671169902 242305084 174777338 994229347 387950409 824536762 160046703 832214922 363280646 840432854 109733607 404322196 101262489 281520073 107462524 817842600 420269715 700419781 149748784 234882285 641141234 480912440 683207426 486737120 935984218 31517613 57850723 23162108 720356303 529852229 488580812 158144088 19179485 533166887 711563966 96195248 706343521 818169606 269479483 26600187 846956306 809438155 154596450 679022108 634906940 921675208 134615304 587026405 392540646 41717446 646701199 525420868 624361184 700288551 786804825 656689477 828208121 174514047 112578180 284027205 834835901 960356057 876850134 306633020 759404752 463738261 435955861 921171852 132304295 115670537 846448082 130574832 403560881 922400788 522275244 532135899 783237434 726290760 467426768 679491588 691015793 826393347 782848204 92524887 670258168 842779652 316476253 408344632 296778421 782669672 259698791 59876352 159431532 348382325 410811817 16963080 214104253 456369593 912034981 805802520 198299686 745452355 703180579 625993936 758965648 291362201 528421538 535563379 957008158 587901180 919749837 439555551 432353770 745567009 512230312 560373547 744602446 755602778 994784012 507018023 796996355 499236373 390605604 76519867 23931779 314440468 529809820 881904054 880725378 557217862 327182124 953910448 275319254 252950157 844847865 338363207 896419327 708806305 872136345 47797108 564597737 477007684 204299907 224464827 937152854 527649853 846462021 652090602 319752640 168930545 619012261 977478437 477952950 544908481 785703920 356781875 85335874 424023278 673653420 408877586 81025370 531956566 813342686 926563743 43391922 480487850 940882673 788400512 334365174 41267491 764361751 227038052 26950803 2475726 347229499 236248883 42073176 183759808 381322257 90570622 291249912 819562157 851150322 562204110 863583874 409342721 442543107 485835682 637666418 607262829 429953911 293287180 393831274 206996605 751507715 402865111 38075568 243870480 328586931 482572221 763986845 424358782 237653567 11311653 440410319 386555698 111416039 167873158 956429396 726323648 429282655 561890670 239407289 472022414 214305205 897544752 194431483 597187986 496380728 243960941 627988471 329580273 752437951 976222065 747396766 460410458 705785692 370046565 156318923 756248224 875744549 639504097 632728733 904006298 418913818 548543309 300683009 735078717 308558664 955841451 726904261 780124860 155387086 588309900 717103771 454462542 576478778 148655999 608214850 278269457 140356581 985825838 991660154 141089500 186908516 423820708 860763932 744412189 878287395 323796788 542516910 693258935 412094825 647166525 327550954 82859885 474275864 655035547 494154124 817472609 981204925 680809733 883348803 397765252 172997145 643280579 529056395 832721499 323781933 465786232 947914087 35344444 642732502 853824864 941485837 490300297 692812967 47928355 476609453 319692470 506095214 682104535 585939290 63396934 759747541 362932222 559789346 104998261 26885256 706939342 368952834 244974905 960836513 309237996 710348341 726855314 451586105 874174115 800918466 678662907 322833011 644314344 864901258 622856784 237486046 959567585 896580934 491438537 581111755 469645838 408674973 334913536 109966583 929815191 103423106 287164788 967360993 284527419 478866018 702136118 56729706 538555939 867111603 66651244 686774639 520501504 766210906 174443344 56052684 351207374 810367792 148373446 511629868 189794735 674819246 344193479 360586111 292655930 870785665 277518602 927909653 310058252 881073273 34328007 307475351 807734679 625456011 809714153 69736154 986416214 492640120 632059445 498879586 886278193 254479700 618939588 290113553 349540998 896704121 700586771 934289682 260474488 540938474 908581398 433631023 364357458 952275439 624918742 674912107 217420204 794473621 563536622 558100339 24922785 53788990 378397556 89540718 637738438 205447100 394137456 727735159 11128929 311091818 287834742 587521431 730470600 599572298 488232134 495806389 645395560 713145908 881449183 754764637 677161170 277828942 747013118 964598961 634089460 600034439 856467608 113208839 604454325 886876763 305978365 383862881 794548670 408534688 734166701 366973136 150675523 108991270 657619963 739061226 884563793 823249051 626620768 804132935 339791599 189801076 600661735 903542595 546082458 234423612 694885572 598307301 348476056 566304851 59394942 764051483 37281293 147909087 187695021 58056790 872727705 282198340 483401384 432465300 623006580 893356150 657017730 674374802 365424967 983573886 412621553 175621129 80999285 927119449 757754062 188593739 551532999 287696320 260866171 420610814 822613299 897838104 836296909 768854812 199783543 620160215 357531961 95322865 453314527 914601416 150830121 224647009 882633921 683952188 613594956 676769609 95737147 986052184 259176794 335175448 24495506 651341924 919167651 140753491 466634626 197101265 390954575 724808855 387032550 120910840 944066778 500368922 861623365 424682346 689497459 848832040 117265177 608702165 705473577 34196789 722355431 839153201 193759721 989783990 169372598 439671613 969877385 410798579 696516261 666365657 861047103 833640690 746234756 27818100 655572708 341854075 836384779 982427405 845589377 388127494 865847593 405715927 94469536 527587637 68569796 720893365 906318333 134106855 340060322 323397782 723759764 143540982 523323824 878042274 366432470 709606569 272063454 606608774 988555848 306575211 691554305 508534253 766994639 410097902 425249420 688001918 698865371 827133658 68702936 754502035 568965311 145520999 597273734 128100472 392865364 136578938 449445636 840978176 960902742 218937015 815850137 460940674 85765030 704448473 809195445 494697725 31888880 594363772 42958443 268156479 908529248 733274199 30804220 466142789 955003046 277467278 997732747 421779370 709648163 414222959 992214280 136626547 720406291 53963872 406781674 307128308 899176491 775876054 147003179 574356014 77381497 593148297 870787414 613556571 493871177 300111303 372391973 575083215 429080194 780356091 566010381 641913438 255165127 864695833 807066525 831690995 280340573 611103550 145725466 101421601 895565815 773714946 136832087 246211063 531507153 755426040 749288564 125763129 592240692 931662352 576420190 31393743 145996319 876345292 514897390 650291603 660046294 204171130 986941052 170226465 836981209 258757789 710071091 921434084 766642589 919495518 597649657 129173688 529507030 854945564 898528092 134514862 757569240 662247521 15371360 563651311 307232806 801009623 671425627 877930478 662235335 83650615 65471903 552949397 297706527 362427545 472342005 938034765 123797164 208951848 204670729 666895759 113350816 346082583 845109711 622935791 333142021 960311366 73091836 385633793 150499532 575050623 303309508 485906155 925066185 783089875 560523282 270495370 19213362 963039626 53420462 212522973 282731053 761030360 506045687 333003598 242671832 856252075 180473186 981859655 244934058 813726160 423792115 441836070 779990200 881383994 250425616 748060541 925265753 321764409 76859593 314265722 783526578 396936699 981550398 891614413 470341240 600601634 42511916 324938638 568718539 426572884 924575644 34391779 37589900 28450757 694475323 931304083 602872471 534708094 33797680 745102751 917781558 541627565 644624338 902119941 87658437 15884042 593946749 424292410 309121976 423378082 578056505 240858843 316774687 642305722 897236710 513005815 398909552 185424308 575412506 884494396 463086968 606690056 9965244 866841876 574972961 219667610 448260390 234947559 786537932 577876650 276222047 402962612 932958800 265353181 542644233 692120784 759097127 448806756 721694478 871137005 463068143 153737688 987884840 748074129 100093020 312489852 750391587 205773724 20806463 426192809 297162900 363177676 848084548 361106407 725558994 327463205 174454045 426900764 40366347 496273977 953584470 216036302 796799621 947659187 584917933 90816479 725969518 210353285 804263469 25403417 473396889 474771829 179993118 376210002 966285998 857192890 674294713 117593851 521875131 193195310 248724924 128830833 588873741 485344508 619358460 228932363 775566590 515291448 355788105 57350393 536079417 317855369 236804011 472644947 967783148 786018043 966533185 629868594 658573444 115167962 817862900 466864524 985371772 220022430 386046760 950257856 965519989 691471282 205386200 794109611 106586863 690853760 523355912 475120682 316039196 631099974 28048229 517678675 146719832 825904855 16047393 316522399 632877007 247201508 429273008 993894174 425582187 371217997 153278342 795152648 802873636 739149352 963608784 386575187 977171240 79435512 880297899 914204064 694041095 919457083 393954586 25857270 665298737 5361033 392812115 837128348 635771618 710263910 726349698 380003467 88374007 730058372 817274275 632273871 753876969 619475418 708328269 745846526 533595699 264403525 195374002 428293556 81672913 82756140 782759436 676512944 455910849 821847389 640822233 385973630 46806082 466646825 124076144 948791359 866840195 919051710 747917783 397382672 417132143 602574355 705900153 906453488 815108457 988389463 911267262 697464821 670778929 398300989 716426221 187070848 858445391 607042740 289731446 561848049 409752782 186727634 847801306 824784033 630722330 510018613 221223670 241491477 997364957 61635070 308788379 716610718 942740995 185335337 535943441 648262310 64437725 32085869 756780136 284443691 679840279 530648624 249834834 912090326 81000712 228815630 604245100 856257375 508457898 785480849 179372042 587401206 877391254 21948242 524846018 556017431 833850897 875688903 867390898 490148518 763434960 390051624 671984817 917030249 13487977 240402262 228837510 310442587 37118935 777775817 239343771 154038721 834988172 738765411 759489982 117136173 273798522 500787789 666672317 929581131 172565499 555829897 126638595 517478238 170116362 876916587 335114564 665485093 990051235 843389646 249633579 184139256 508477783 62685922 608972865 500552024 377243173 472409149 718162298 84472930 694647150 454171890 996640923 800590590 807343540 617742359 10631484 315488328 258745825 296232060 689182997 253002044 7989752 875503069 286258445 426321912 309122056 711905364 374973367 326069917 679471473 171042549 45566306 434406499 287638824 265621887 249132580 427531786 413020168 606975952 810433161 838131542 245549609 951755323 933650674 359353488 169113003 274913854 585603409 293237591 571930353 507011208 788460511 637134023 4861534 639996233 754089693 599615476 337724410 461887028 501204931 18341257 367910421 631614109 196958247 831253484 9659551 754432721 839073324 107613336 922973061 216422133 737178362 456451575 382260417 289817610 855806668 267283054 515942324 330694966 757253858 108110658 956114252 521553494 707375133 457701863 427388303 48555873 914536547 347208034 521532425 583537579 550771184 756991940 346501481 346482032 52218811 21121621 602317703 58287465 891685283 279013551 882473605 507089491 162946145 361008529 434180372 844709696 441490058 156533700 504937888 542001095 813343760 955738470 186457506 940031464 591217215 488188582 609199358 744975692 860612749 538585888 608953948 960648986 599895869 161467672 87428999 880504834 491993519 948040589 697424543 671997516 687079945 576627329 174703154 847978497 229207378 679053990 194347840 311894341 966431236 646133832 982024552 731946652 852986693 73136911 27856459 142607695 944461984 731410917 826430034 849534139 521868645 867094322 759536622 444735706 481038727 592576656 601593898 95466967 285369704 990522246 275376832 158185348 45155474 706050285 642003650 917459203 11415526 623542631 530879048 304757979 345272053 579587236 766823847 617811961 821668465 738759110 592448340 650766074 116675977 44418554 816622895 967849102 890976360 970296079 349495452 573012601 949467795 346177830 645470527 861097416 11695629 53954280 831325517 773116670 254319362 458269872 742837426 129026080 986612935 325853911 381457687 512711102 423619777 728001431 518452570 973013972 801888009 692022197 640128753 791368751 35397454 746797199 18541914 228080198 197764126 936039577 374689656 843833410 715026409 440097583 588125314 257422686 384944473 741994992 217909520 937153848 889016198 38713216 359788796 18116902 828254309 549426844 226504004 166879989 595105785 818947404 32119081 460882808 975698334 145156322 334692594 401306207 472354858 293596087 712040880 271221033 532713900 747868332 790898620 121740505 395904173 421637119 997862102 152612665 314112827 383816598 29841100 148357730 46897542 694525771 67057811 257128291 861863001 64981537 197873517 249268161 842963076 115839779 933676448 714227207 796378154 183710555 742933799 202624844 434240491 261218376 951603214 637810019 281063650 770509925 181896344 105888959 674728696 877910467 687537051 377160057 705357607 392300098 587716200 277716162 421541481 216568956 466195526 74311035 865505543 557611354 438409986 779375207 284916725 908060070 150564910 836603175 33969558 863303279 727442507 39610221 423226032 913999181 54121183 933516001 791137761 90623442 815922322 485444377 709188284 345943650 207589106 514168261 616296025 929965829 274659072 354339012 342033024 919725948 533219685 117908663 317170681 157634797 355940368 403583326 237667043 273369430 753870928 857990686 911666100 171149831 28886556 607836579 957930429 563481094 640997993 242281168 206298058 338897014 448217922 664073869 95180927 532286510 718365250 56469306 42907029 112399764 627652593 145158330 767438934 783263093 448588907 307830902 141071086 631262050 458351756 343436060 340209019 805930402 77171688 835522340 411385109 568967993 704804526 399823397 210616277 527059443 894032003 898266177 435309008 313346644 899880332 653518609 579894125 691866143 341576210 796869455 357895373 766675710 401223399 133403595 589572961 922432238 232587471 866542787 639708835 584126774 137760849 337798648 269505404 145097943 192168029 100480406 53005345 68135604 277301590 865159047 82655477 280168778 879865070 701842123 571320797 981136496 670594130 725469295 771550391 449398801 403071793 857743182 548765857 898835884 246096385 495525516 26046631 644676219 678985889 963726238 510665990 661371569 989357350 389074225 615490458 342601954 532702346 876026394 981433624 765507666 470699627 191230859 832687072 521598015 414993080 953235471 909846268 746212243 172764105 28317814 971548077 725461789 842329371 902022879 276666017 913082338 564221900 909448199 460221503 775408374 110144000 190270599 790743817 40955405 529458683 874208182 191400186 465049662 278005145 691597679 238268937 729702453 95660682 653087722 101755824 128006065 858856797 94415912 962949116 91615235 75796285 401261771 708766052 869771858 534421307 619315471 888294420 985792210 56199676 697295012 977306616 317086462 331808405 831341896 55103886 72852763 584578129 306318032 805046426 829517363 442343958 29473580 977641958 816275123 266468779 629828988 498076446 965247006 384613712 653383724 375292014 557018612 22668788 297748784 691574069 375568236 818238264 970186835 734136508 607503279 580902610 163884505 466197655 110523633 278804878 133570813 288520174 531700198 478930713 980936993 403024448 194252737 776887788 949355430 962154719 720265512 606473510 528201650 474108063 949430228 749193677 68149461 279070140 294016880 776184278 220354892 519957930 757505106 572258638 216331470 628009434 143395345 270217522 990031941 703055821 643297241 496002393 563643104 108167597 43476096 731767855 41801530 341076913 244347993 208273085 213029468 928310410 885501578 741250239 215795340 390671379 97699773 217305843 76675360 329018805 169793488 123123742 973293065 831836458 476643716 880164837 21252033 458170169 533823880 659934704 896513402 806184705 424703176 678097071 912577790 407524057 831283250 552104438 996280246 920673657 589028205 99647761 872760719 822381182 967853050 733898317 822285792 596818920 454938991 722212240 51919900 951971666 88635479 503438796 481370175 784186155 190063567 558829949 706325258 89602505 334109132 932274230 482159281 340584823 434763462 645986508 335135799 555013401 608998844 908986758 863201876 605778186 364511095 962621850 122119308 111247822 853934266 251580140 108163821 247804750 787662639 333527970 46087517 937688160 136802423 477956142 297035448 973355215 658192387 242718644 41734370 631383979 785753507 512293796 398156873 123913976 574214528 347514099 710562952 724128556 720680412 440902163 281842760 548241987 1688249 106959400 755207273 485067215 469945131 354694289 350485504 857404545 864013757 274156820 826430845 269111195 631077669 520815914 723337146 977064775 995386079 195412762 888412148 559162076 461589419 266580056 977934435 735410245 988601659 716681854 134739270 397870543 992794458 17778478 114791453 703732684 927834194 848931792 880872093 483233467 967683276 759167838 439659931 923227722 469335663 837282337 35611911 25523631 339379699 850448497 433193169 3092855 328845417 927893927 842766369 969658491 497499341 462950996 49008800 814135357 578832631 258614811 794185951 131499762 230357045 391440119 489779669 502152805 424392062 611451185 288744895 653377721 242353839 563969749 972740046 662436335 741800691 787528627 631249934 916635716 459562981 755445652 196401721 826187374 664147106 922062266 750882400 558962579 781384011 206194988 811527078 352940901 150243373 254551415 147778950 857187168 91528232 625716111 255983020 649529829 28046337 956979104 737286100 203471333 881176348 137984035 38965646 572812218 834653806 356190173 666216397 847185869 143414398 620321453 570721550 213187800 891021419 907575994 283036013 920428910 435053455 897585762 717237836 742361550 25985137 45663387 504891977 196573116 194094580 884000845 760706327 124712472 951264712 329488725 485162833 746492551 131418451 614884002 259769315 154713824 497248145 320426942 242861589 681610987 173034741 696214231 124206565 442259180 577525760 500407065 453304528 211071425 176376975 545259472 615219049 217201037 379236451 217701373 211307440 996996060 713415502 401839816 96457773 525645880 693926232 117620230 562433169 150957199 266155175 510340780 598174115 680019959 370306890 907063061 47564352 949845700 213961988 319901552 584150268 269370400 566841115 93142464 340077851 975642608 281277409 283174271 653292840 497448042 310652410 920964919 238961015 251636409 726127540 26757828 427259047 665027641 827317408 497791403 102452197 831004653 974642410 291515841 898483245 746303247 473564469 297531956 703016793 791248651 962568340 793481521 268812618 850212702 771757437 351346517 542509479 156792437 355770863 85607573 567550283 433298552 86144908 699570533 648403932 80187430 990410609 195935243 69420240 494674125 801736209 175794999 923774028 598252371 484588673 206939296 4571138 785593793 762573173 959882106 408588920 547117896 46188242 385300538 120478605 183794543 297490587 704358758 217477885 564203237 317973727 350030329 533118448 755670215 821232455 896258467 432798957 49467542 988061064 792996459 242636780 16586694 746954634 648173204 695349267 334141947 698532146 600241825 11279111 486863264 959893204 664026142 138299565 474245447 739035789 828052024 443010580 11942716 846877208 803571795 897145061 789387836 106879764 228424851 175820437 981166427 453813382 739328228 201381077 978549053 483842694 144088256 74000302 418137499 500990331 161510782 786909288 655993706 50346047 175426945 678735870 401025880 596731325 452865238 340237690 33167513 436859584 846368597 597422512 88306318 878715791 750538482 707242730 642306331 249831477 399093974 760234460 60543539 682221094 255694673 307733957 772767130 70839137 953028071 556004732 355883415 841749208 730920470 802577145 179838398 596757678 332079172 432262018 659147349 556787663 493204071 921387857 893762573 910029997 341386711 173710576 516445907 98598150 280132816 266159784 343105329 193586089 863367182 302904191 908638635 2521022 83872112 414332648 723561866 975118824 197383824 253464924 838995758 354827895 52696758 334700945 511572146 885636717 659314524 165644973 610021540 210917069 891201853 728059938 900850342 87496846 950923279 359690703 936120340 920836375 541429374 306691534 903327450 131433608 919541260 576644497 265886480 902089566 679045110 513801621 23978071 902900303 149714305 645628549 322550404 797813458 803453046 701487666 750491799 60545421 408728930 700535690 448671286 501527208 114233177 771668391 398162596 392986944 506268835 246243129 339461653 209082298 423650430 903875536 212369714 499366380 311961538 531713364 896333050 362649547 172782775 710392054 553390519 856431737 683256349 136950676 922900904 476454169 229397323 850276195 723960701 72370353 160319067 384552837 843041710 40052448 620207500 643400640 554854526 918411750 662873033 706212604 758727185 785436309 342180115 316881338 809793593 789992209 733830197 416767527 442246809 771591851 180450198 575780270 860260880 228036899 800100409 828396547 441305583 692390558 826065917 460617630 459052088 534454516 178376707 80926363 608175762 366293427 338113324 315828214 176271828 789633778 777756826 409852596 592097325 195089489 207018981 900354089 634839052 590941977 883906459 458600560 711711501 222137649 791418338 637321630 959148898 28307339 438014669 263598948 666661219 440030833 927331609 73274042 27079159 908282300 346712935 175118360 990619067 951823966 974229786 699363625 379193201 951244461 263831710 39990465 834224735 151957147 117871917 467274229 190925650 964908637 13850541 709951721 847411548 968341652 708888219 990743063 260718880 209721229 996315135 465641092 257811276 986129926 749205413 75651995 615685881 965077349 275822585 465439841 365255782 644485655 365616610 20426054 42149131 960600609 86161392 762180075 613466945 207844023 607730180 99298955 98648784 24920267 649946240 451717911 935891586 960000218 577260561 702814408 797305893 738865235 228771272 120182122 474336350 270357911 874619261 589839519 491032640 306341536 359300431 222651311 978256343 333540713 970689352 957460694 433460981 184050424 189138620 548325677 888137555 817572038 50382069 599089256 27814470 845542910 927101630 225083532 70917450 430177567 394692490 937383438 274535453 203480212 600350523 427851153 69568154 731531394 15609618 603133708 207217915 528169255 236765570 34819237 134445854 501673666 687147437 755490879 54600543 658770553 793684615 527973486 925358346 419966941 806337645 40446836 215653696 561709849 115823004 655249836 79765521 601280344 270779526 756758862 701939473 165149637 253160042 990916406 23368937 519791867 635899346 448255783 685151332 899531172 245079847 84068172 393668559 527186306 744937915 725151640 870564214 209015143 183859143 383769838 7130939 685865003 82061369 44535588 186975893 622328910 726945581 185439555 155418964 324743403 467608321 277186920 157277077 443501645 114431586 435581441 641646302 900354099 368476491 545101431 413610324 863399241 827258270 879852315 902734118 726777248 133066011 941764153 524702956 603750588 326536945 308564235 334363685 173738233 26895270 602869785 74075712 451420836 154591505 170448127 164099637 631349947 867176826 876930014 108452881 392627995 849645209 74735713 586390158 137571591 846981269 228225113 904255639 611672720 870563045 377380630 33671487 537497672 989606502 116838591 44107569 459048372 945009556 369832575 318663441 541818813 194760429 84556104 921229908 23632317 274606917 751269452 481731542 375676682 431732316 998010049 651156174 530987439 110243704 464425853 387583908 490268928 776688756 92570804 14763438 796461146 477540254 805707105 731356202 650772733 271652625 868750542 576568161 559608528 569813931 624929821 889372621 642869107 166319581 323077659 780891176 108935756 5233460 238897421 702032408 438090919 504242711 566764944 364306070 62962084 334073068 301496067 821948499 25738443 281460808 511317433 82668564 545782981 94024896 846246052 152567872 408658524 842838151 216191640 907303902 903861665 223151979 125344043 670662911 326460372 606737998 145925710 843633434 436713388 635712928 250648784 915708459 847293188 736724740 998994625 947977024 12983754 345656727 851633395 781416383 424333482 157342894 621219609 907254362 195164294 409464482 930342522 474581130 289767102 303572445 776413512 668734931 641033147 269459995 164773087 40340289 597361457 950281060 981891648 752979348 555627752 519409224 32732375 634919360 406188898 749444807 443420763 589484179 494833978 713165423 384650854 375884041 579095223 861591062 836642863 800015759 967306901 570553038 80845173 408643198 199706178 927715309 914417717 504840751 282852033 559531927 885803385 345957280 545908726 119986417 531853330 119262219 831018337 444440460 788370139 819008155 858503396 450730937 58433051 713459662 171846656 901301971 861751261 165835652 418105143 763466562 472178338 454955153 125379321 746949457 355947842 576820444 716697867 986325829 18496521 439253451 876458872 351420282 114005024 3254579 395821417 746565909 79260087 668543075 290285701 353492705 159212188 342345682 398079675 359440490 438131196 273803760 363429181 576130876 887806181 354987120 209972564 411166196 7680562 403467231 942284731 101322926 680591695 958797363 374365613 362228388 180135102 972644107 112997414 41445265 468445793 943995892 977407064 464429733 55405058 424203688 251025542 157650339 213802094 136817234 138071619 747712689 303595479 141519154 284662115 38296168 9540852 39591877 959047709 394271271 746736349 110369446 630168444 156716722 360961932 93990888 117407847 582588755 259863718 436727215 972560457 512960970 494760064 166587595 949507 834905795 575210537 212699686 190257464 788638266 859166198 742714259 570793172 647641570 799526832 956109990 173920285 949399779 66604283 993484620 136328759 636199265 529323774 762791019 275825143 325249295 513335105 557393400 679693471 905215219 787171879 590898097 701649626 715507617 190664565 172719165 794762367 500760140 75408486 517538118 145271985 777888496 166287444 963983408 241937495 563307936 46000961 417175753 411744590 98673950 49261013 334833760 515592593 204770366 219946050 201324288 11793149 389282847 276023638 447365744 786100765 501763648 878548857 65565924 48956871 267002189 428129489 799581219 384126141 273289313 939187117 451908339 754886835 665591438 277945323 597852233 343518195 747426612 302634606 159757535 575723519 170780068 667489661 129853052 968309947 97434717 460845390 272690617 677779200 556683107 978166066 667804535 647534088 904536640 157099 483475250 686551704 799344678 109615911 977542705 64224806 429488370 206407776 888618926 321061855 887669070 133238095 122369140 316782653 144471879 702914848 974165693 623088108 726066158 827480959 784471722 245200466 458980061 155098415 92075987 632354436 464085596 591708773 313554707 510412490 53432804 13673180 698998281 387941310 536845580 986962579 118354595 631766557 913963467 173803827 366430776 4663007 258367775 456308408 904086477 75025033 845755226 461708592 34770560 146393091 86372359 85008808 716186001 500611401 98449490 648531615 41901343 725049448 81819535 745064713 16731175 996549691 519225565 774550267 576312808 588308315 321184148 384217954 660925064 235002997 299867918 467085655 150462443 340509102 609153861 685840211 248453906 787649480 314090723 687647372 195462346 755504483 883454647 359167819 462478224 297047227 651891061 728934596 131656032 586006094 223735730 241057982 84441450 688558420 720011335 734535368 877648618 240954981 524473312 798268459 221856338 102394401 804549597 779186004 722366612 985042512 220094971 502955321 657703768 450641092 795620773 214690358 361302662 76882335 374375039 419451477 301162293 556428506 254633881 904756587 247213324 280433521 554510885 118058311 93081072 415710022 379640805 174175540 440475816 373010251 312264212 651501989 149158732 737156776 95538424 350789364 526585525 782632050 766663630 807173462 273601930 924197081 952259560 557462975 999608361 138933568 470633215 510076379 306133687 417693516 36609640 85326582 645805089 695193772 333662865 85235288 929109162 568796852 284511218 824868697 216694804 363144829 148647406 639168714 314870655 716649076 228510239 245208794 82685899 246329922 201282773 203346248 514121681 508407205 600195011 753230943 765056142 678147450 747886289 688509045 600147196 899293842 804294465 934344868 451952194 519442636 559978057 802235101 473890370 112768667 964827709 525571137 312261470 263854974 906548483 463287887 397085045 418250158 261710020 490684847 374416837 684980031 769656298 999976668 511035510 870636550 162188213 924393586 250028655 89952610 466173327 832890817 851107688 40416301 702230564 93627242 811339945 795457642 946448637 421081645 52899295 324955016 404825517 32650049 632275200 983608279 497277948 714367570 478756515 812527342 15538168 961748994 604104381 947328445 46711492 59611232 391320857 101794692 51855576 804335739 876220123 762693673 189103388 867418485 244600185 927683990 298554636 608662922 843877074 329397520 830523987 101619015 207062512 494555909 725178475 436230334 514695557 461100642 844800614 421376088 652223771 834418213 699057925 909468135 88556847 870227419 576042167 546377095 374658830 129402023 474529667 199947367 630075853 578740949 90135452 888195761 749009740 218899591 53754875 198190930 929290814 970833750 663707717 445471195 339237194 252728320 986472933 323031544 171739315 873727936 329156051 892968318 544976216 518946747 104301939 83732541 43114987 742418941 561567338 417058187 101062370 740119615 853315115 994735117 130363295 603901197 366557475 624703545 451150263 289438039 642251345 658607206 379295142 380843014 465983763 739465007 431266158 555482300 357461805 717822121 134883489 491750786 218881367 359554654 42117003 422323572 234685693 374603895 548553947 806955856 365608938 402286304 528968135 422820231 214991945 222605825 557244384 674896933 930784811 210277087 928098974 792501612 184492920 832825385 167303920 897766304 985063802 228468138 306113326 838886761 839618740 999368513 278993482 805851381 904356694 573931556 819304369 394263743 272068535 95824206 827677005 927998931 850010500 905692318 850320801 202823169 681933076 135879196 313510502 642141858 890080297 580259310 800206411 285127589 927369765 849985100 561878624 868904847 907403126 369241194 316363855 521935007 538262482 628982757 405237070 392293261 738028020 659261458 243716523 411995182 892450542 880929561 324832362 335507131 975673087 279663725 332610736 325022929 129014384 485116469 985982742 286966010 287983669 726931588 809780034 176289123 910468646 419924493 505320117 881504426 38441113 843894077 358148415 357092922 234876753 830384214 375066557 901587046 610720528 162094425 91266350 959148833 566309104 549342398 377373862 795136025 382614560 895371459 999889269 913129982 692363053 769813664 493269850 3209422 529480491 146401388 33408764 327865117 898839280 274856315 560381655 191152238 563115179 793659328 136419875 967897777 679622640 404483519 551351576 646922833 652054107 337510733 178083 45721272 574312186 807277193 573716832 637941291 375609850 897255498 70796927 688044358 391004611 668930235 792917660 959743472 313781611 260079549 386377980 465902078 546053288 742072980 521806518 914743615 493990250 719814237 796866945 616095176 982980123 21510003 968097128 876950943 692255201 761359445 868561995 724224461 821170499 823201840 138651428 146338261 915182507 873690772 574070422 499511725 946613052 970093983 248479029 882916758 902139840 212060432 204184221 875144054 507722092 552565587 717057558 871072012 826288455 536269357 274239596 472316068 513594681 290594680 459437365 435565461 629049682 636318766 344207276 231511526 829626309 245795429 208222487 527585040 998196554 17257562 481910979 691000228 33308275 445161723 201451683 386942699 525146990 15551692 816794306 908966730 140909057 763891225 468049429 34752093 311086254 452057686 513487288 917950118 335859031 572733117 275170332 484646363 119777278 804880965 825916028 41910050 831468416 950708543 127357665 418256458 723229936 805705498 248899114 796467044 408369944 558659830 117280231 625646698 10360148 18867951 784507218 186166087 613030512 72327546 110780419 401943829 941362760 262811628 441342804 526866683 719978541 195187838 498502502 804384249 653277432 999182796 884665754 698969595 548278824 935062431 370969791 858712316 77106469 959035157 357354505 600907779 547601521 325614484 809706797 766405423 29321255 174592652 947924794 415340400 337279823 515747438 254368548 929682930 215020347 909010184 593684325 445926150 857398526 918169739 297993847 218693604 981024556 75323721 820812656 842904953 900145135 558725354 762141901 347070509 269844058 146612226 305260670 878861080 600364976 39514900 702453807 216577250 751932039 854351079 247273953 991180516 886011676 546351199 924822573 907413188 525407956 559284864 332887195 430108445 194557438 360185917 313632029 46594420 699232412 650658212 117494326 869660267 697667699 902623459 535108878 186126904 576594405 233387325 154326037 588794583 235238616 287416901 953591995 832018612 595462605 594645163 217293754 64773850 168979217 541826763 582232214 296309410 841777894 567008837 814168212 62988709 107733694 368903078 582022686 733317055 754734044 709387745 395189626 301209668 162602944 417004225 107705820 618859655 353817836 67561408 373381091 568327289 656280528 283874524 405960410 394822144 922003866 326409604 731972351 840846980 485890506 576427068 554201756 723733790 491528167 305599592 996723740 704671809 569864255 812913439 622121959 257036282 508870854 910851711 869953405 230357884 230690086 238193690 218266278 48086745 488242363 318482208 142857584 81931347 502867208 628351934 47323691 739110544 976392137 258724406 401133072 654933480 723099346 875439636 628326289 395322483 389601980 89591164 469209876 746060090 764811003 585570422 349678106 595187970 745757758 478023373 895797844 465972519 25381635 176125995 117957631 648057798 524279738 697436052 959381934 791706782 532900609 181889076 991993932 987231921 75905107 794551744 295910039 440329384 6824717 807698703 198389129 340463699 189393623 865751973 637315703 332751766 15086591 116958858 130024390 482452313 75639998 958745608 902144742 198920031 581067545 998188286 790445072 102457886 727858709 220220166 136734636 527851571 718824236 910270389 966274325 936248979 21477493 751636520 770050468 120874194 858384599 84902640 883204060 642226671 441356838 126761008 203098050 34110477 532281825 362679253 783152754 901094141 633757577 866547127 897830562 16191413 221011041 15508378 921989984 517913522 344343569 995652431 800339281 733319449 420351884 281157294 974448084 277026734 261034239 800502749 671180956 210564735 793699243 847037688 557939942 94620912 829869080 105947885 266305328 702639748 575283617 471290373 974749937 825663861 80203702 967833979 903695373 497487448 862246775 34069382 35369555 917854722 469269459 846104616 700141997 103882553 978172958 186698957 111035806 268260048 947848498 108419544 313450830 23302822 503556850 403085893 893391072 367124266 249305947 324470041 34345310 594722618 715754789 412626525 456413473 560360831 562934506 504618974 340295056 921999438 63925815 564031007 549993952 543966064 302068395 551610787 245595896 150168368 534541006 555581145 808344616 333647066 77986665 637718388 570669872 319733316 772118271 918629521 542393294 517135597 187657388 112818247 231377718 57120758 498968862 708051954 844103833 161334461 27447114 244149235 272021861 499845431 194796693 542917725 460433544 419975718 174395418 572240633 101374903 258873542 375261047 533109141 199771561 951655929 148685869 26851316 104203659 559638537 122215468 807282467 117319287 824942045 630054023 459180484 854977669 304078908 428750740 206257400 335864959 193813496 798704006 745065098 229847226 355456418 492953663 407376003 736367526 391137786 72186047 820829078 623457093 193577114 513321810 11990626 62868952 118120362 260449202 225853243 456360858 10796041 190145767 651599716 352956462 5506695 30722732 558252435 846870465 267261573 312814317 589998486 633544275 980490727 732251742 441649704 19049094 986351777 134100266 564229952 576672346 644352992 750847771 180450015 734160426 289288166 235161314 255541522 747100152 608873949 843272603 505059153 135526539 378360616 786282531 827236887 130290428 525653145 555420072 181663974 304420815 522415004 765331037 269647184 533023312 36604529 667726055 831061772 66380677 61787812 936072614 206868130 737705616 984589583 793000336 73254532 966967352 686077088 120432917 176593042 531871303 543129694 716970039 563179777 726374655 547066887 30768927 818206469 590175403 219710500 613868156 229142225 390073592 75860584 779176976 560784832 844923635 214251246 597282606 158140973 863447688 574850931 725856565 324153764 625781609 313740349 138294805 545971466 353646243 727856202 185378521 520855282 164378642 66200053 412235023 222485041 413291842 144960909 79406661 777532853 597527122 720991163 752250755 147457652 525400658 697582284 135582940 146079434 70500696 214317822 97868649 651576385 570399372 863331940 831338844 541082153 841416760 415447915 183438114 300602800 518329488 911358603 295753643 519323434 870069458 666316293 665443327 360115764 692122313 895472229 302602590 560505636 205229753 357265362 347671332 121670780 890332265 179024450 308523231 451243761 277964036 435671224 239324411 839161523 947713258 388201167 647321749 363808290 337995398 147649845 721135900 841539868 511632238 367086813 814967752 253790429 540714135 278226644 278426853 302672625 306176132 797777059 608270812 105853119 698371039 956408135 875961554 287213164 823131419 10532855 290241755 743469684 317741389 299461934 477540394 708266105 916509751 196939682 666462990 856227567 912359308 734338502 143908571 976146862 116169892 336830343 392835622 502849520 983857686 121467485 583994011 994013600 77779383 64656504 975386272 711484632 429975629 359718963 93937568 756015587 782345538 762614006 896197280 743929976 299226459 949676771 447402483 161890063 314628104 193135605 823482108 889972619 857213736 871102484 146431952 243070502 885750775 247034353 166670059 596607344 91142576 144046187 343434312 513395192 43364167 287180886 877145312 751633695 868120977 957817732 16517360 331529037 517914687 546017012 10560305 884893511 732729598 819760682 76116702 149552994 252660765 869046395 192670589 112326370 964692279 494721598 182038273 594763213 972728292 431605019 826458157 418570854 100291952 478463460 200638380 923975636 747460996 341203357 553725310 2100289 531912358 928775474 654819830 208481451 430708862 472421486 469570471 822816364 431157590 598501197 852295089 271788333 747093282 288200038 248109289 841621905 585972614 831372557 684811973 601485333 46428236 53802006 743766670 843439632 954431584 799138792 248703017 59152836 62205827 615181651 125383832 578779832 427482315 793996000 66657034 994337008 825644736 697148829 628523204 631170204 34293222 249576828 775986247 71929111 863177486 529696547 631196084 844590146 913541841 830329880 165565151 187278305 365478369 900118366 181424433 404200015 642640363 129838564 261996755 869313807 20889625 786581916 249794822 191720875 858319167 151332922 347021793 270252642 522882897 138382084 320106165 301980053 186745517 170648044 131073349 304878952 402267506 658981999 848739061 507629836 306930305 721813870 424586614 59355488 15786763 702626219 211209874 100665654 769293592 249888540 465355430 487767480 64399918 801524078 512461026 636142412 991529558 663905253 606104898 853015453 836928644 514098584 14544388 433586626 523585883 312334322 711985735 610381753 229020083 136735051 76395066 143688809 578071988 693328746 566086239 858058726 944149053 922373877 730294298 751777407 531474732 784927934 953049529 55891387 330978809 830520920 909022023 123019106 823969197 508742286 607067221 751619830 177849823 38994131 697706957 661284732 796696846 46529885 270910810 896571777 406983235 875612250 100648756 256909974 931200812 47549478 356150248 33367787 281259309 864880801 959946391 381297254 563797467 77215620 146526537 224110385 140086409 296999861 223327087 892367584 218933397 236434928 671904798 786129993 773535995 101826451 225379704 128478301 521145611 418021027 935730824 895850001 949630518 338471952 16894404 167631360 708660836 324326462 705140851 969796327 928947466 237959735 288532158 840751617 826255753 58040583 12804733 457021819 929535825 723706781 338976988 77620737 134783821 60045961 791392806 724522612 912952116 814508369 859900051 323747914 878645855 321340955 448045841 607622719 691044953 917487451 713562704 465408352 636113538 582863460 602978590 815680110 246210445 833322675 15766710 840435945 2970256 508584069 14782682 988612133 749491356 155116912 631899180 232308544 749848402 938027378 427600663 700063612 416920496 705301517 455531154 639909517 871799085 562621076 52034271 20070927 280960970 39271843 676518529 524284001 162577951 353585482 547534827 658992067 404801024 116184580 795748825 522458939 548237737 749433998 622905459 567342018 247260208 984197709 46072509 31867837 747662143 491401607 153495696 410364649 75153898 267981316 842823101 793627909 641209923 91491431 746411533 752067893 18884454 858850399 43463263 953155980 127394144 360649844 450770173 271977894 349961347 613417084 520744443 976731228 490773496 193763284 396976974 221269436 762924425 375944330 873859676 456801783 358442795 403974964 64567188 372809550 820901301 700969895 868554595 490858248 190880906 417409523 991824449 174876440 18258534 998766100 16608031 182289328 265131653 19177356 960563926 536126747 724585112 230817362 419185872 904483268 413898704 855512223 498338407 555117073 141223501 760854471 2265790 77045073 794647984 282440697 869901964 455950662 886051102 655510123 61728226 561811555 757224668 432425195 808885855 558359085 153507406 972477411 534922753 68048663 613457856 672635987 876812468 255358542 383684516 594995314 245717475 944901706 947836914 228800997 597590006 431470861 198123468 533608874 650478048 524418302 118744307 69215456 568590371 222453460 100576501 502355367 135539566 412034850 635260168 478262735 494721479 672851408 977370397 836606304 703476068 37149840 523315657 816996789 907270522 193658207 316686020 636204823 12228776 751278663 777843319 956664611 510701356 599834406 383820445 949546186 270778358 969463909 857073680 50792463 724998290 672184 135944398 820074530 820389686 51056810 858249851 657141143 871337738 66895217 719134790 789021296 396666903 346654927 79287233 915090208 249496701 839991819 23412346 348411114 679481891 884309083 994990940 157637298 237257595 725899384 622483478 937418201 114365718 79243958 817798926 632959548 336475030 856126906 964060361 811139024 270770204 153838840 230747182 749331191 700722555 421814147 325701415 885063757 84701844 504851305 497864666 580298582 819831823 173206766 26425884 615549663 142715252 381290034 210140721 7813606 135596564 596321402 518570513 55056460 681673984 297047777 738028838 566282843 704320936 687151552 650035957 610725641 116573703 399560481 890693803 229833433 947140715 121191937 587086129 516227571 597534545 620412025 37764263 186797702 803637632 842906120 896043737 479202468 132286391 272925592 670133543 264900067 31161424 768939882 812591428 98558650 892999959 346335732 449651171 451445434 939679243 858453011 200406204 695250660 397365485 438049325 443396084 372229899 997746242 174556007 681497892 336675399 60739760 633035723 287712489 675868148 466483418 675145399 946017897 951618216 919800825 635449972 383747474 133336362 178112759 549071635 894152144 918816780 205172588 467520927 1086429 252109765 32940790 687396288 956956298 988388339 827049277 415464780 301384185 902968154 17571437 434108696 652795645 702559300 636857185 790300568 702064004 975599333 233451956 450965553 507376479 669384709 567360942 89436449 940917617 871307036 485494378 886864726 9079695 319805404 106400791 63043432 341951697 560451885 780755454 842750770 527795612 593260266 585900816 985976925 447921978 609575097 793354608 355412971 802400536 826975655 333942845 26047434 108988317 200538285 124305394 951453586 669418079 526756036 503418817 250025518 26908042 215726808 899716422 561026329 571738273 75653818 215951340 803682795 758705578 472022786 283298287 137837423 410547999 743105935 873791893 161540847 418191720 470030728 19853180 905350924 635611405 962090140 457956272 486793680 924693682 155275876 636711467 772638117 815473392 177151878 448680913 720146937 712164665 331045774 184127972 524969351 253204735 816240283 10012812 147373737 633785185 54530827 587588968 490773930 511812650 956196610 976425427 344916660 967487020 829423025 12124577 791566465 607274361 169012554 17117084 494850358 678250390 356736100 58706445 85975906 665275062 805363425 355832701 522006789 513708290 276057663 512402316 410587909 504508540 468777253 253468936 892500478 705455160 300556282 246404411 778503479 274989861 484145705 721546525 845272596 665610864 366046126 182046927 942397857 585137288 356693530 631909576 115680738 129178070 125630474 943545250 287896355 624304921 692585805 718404183 67464463 792284306 620342965 447890214 191903480 437194227 92378432 674416550 369967166 846465078 168426731 725458779 588435403 267360538 951266691 362189723 857324700 36705916 317047951 815645817 171265324 251158994 53549754 346743054 276668733 936406747 298343907 149283328 134612714 541071988 590254494 625738837 633749295 922521623 15272831 173045291 96524410 799856563 194769444 478384412 883928042 184421361 573063986 755241622 567595402 14620353 517469049 165641126 584190201 955308294 215045248 114724383 738442605 730629094 53489182 434914494 691606805 904448725 972528892 734448236 265236220 998005597 336169363 549790494 824145754 761188972 344988549 902673215 970875071 256312244 381692201 482525641 25993485 729146873 245792304 932668253 227920489 563720176 764115498 701985230 6906966 914883393 339253715 185878144 862769739 989290828 80805528 488068313 163926362 584029188 522842669 740832999 926333935 251630313 178115445 293081933 586793946 485029208 699290797 979676098 59104143 852489335 918011032 216218957 531623678 992844943 934920933 410877159 194111981 477265083 102292037 176937658 179723399 826511761 426210159 653540454 609911050 968514953 621208302 430272672 701550088 693910838 195213222 868746097 936998321 791963668 564343602 177013332 18805430 430272988 236352833 741289391 509670626 203598280 1535716 209319918 820987658 741884901 459964205 615135689 285937579 196932221 953774285 810362064 671833823 479000764 127261882 10056817 273950659 759634427 246171345 2963936 484425188 63635840 745791727 340809068 712048901 368513017 875194670 456650500 451508946 458963876 839202875 619193971 342598629 427733631 507671559 792001115 283267711 471147295 839362535 617354024 557749994 290078429 290765136 142347787 712624492 696046119 382817601 353031742 712371176 783932449 170773131 441369814 938568704 904744751 928373874 812544639 231569022 624256692 798277658 26705623 809743422 5052483 370032893 794785760 72257997 624808344 557416823 462979887 988561210 256365149 888390554 308881630 993858072 280752897 747165477 482249514 284921667 858792214 209017081 46995571 476020800 455440496 966921229 122964629 331984143 133254705 695540534 883646211 727216562 781765996 210989087 587613412 904320864 234596573 752074307 69989674 908976311 402438506 846499753 148869248 22506069 774012873 995721665 484787777 347642056 268588083 952167626 331695491 860570565 58849461 136702787 142186789 579396284 597956606 694384006 245456642 224571248 324553154 977246308 932682924 921598848 77218134 608797543 60182007 21535507 746854091 476771453 554074944 652605352 669552312 185992585 64371381 288631865 724374542 246702808 112032944 375566579 84030433 329330865 774402146 730241720 990968836 202226231 756399760 435007331 37081166 53485644 361348640 221455216 411947384 278677755 546676845 27144046 172759470 293865081 23007931 829671481 922988966 232240624 890155148 799359815 363668361 863083670 968873205 52045643 74669554 233741591 144541514 79656741 794147002 619142096 576864006 25766485 550381593 226739953 479841891 907315425 535149597 637541766 735725712 558186171 244360667 585708129 617250653 501647772 291002296 119410897 537768026 802801608 414294808 644202844 125244824 782038073 878434440 439216872 929442245 824043445 260163164 713457664 669170643 946707968 92326751 532201877 675436155 45478424 865621627 17678923 759632922 319360806 55530489 671584361 323321396 583604163 741953079 951596641 857812924 636192904 133501972 46696007 888674662 772892594 460937553 778629792 826549784 225988356 967833964 201837151 900679114 149262596 413653323 521927433 243750120 187029078 99421240 200862219 999635191 743639157 210204467 928504824 18767132 83520620 552952706 480115964 690534899 201483659 901816542 336621372 48825129 317754631 566753920 222675630 487185799 236322311 35419446 149120381 929784791 772660385 4658679 353956185 612529916 604277766 430794868 843916700 160085747 682699906 267336237 395917984 928833055 799023515 463507103 885342853 419799622 724465303 639494075 799338251 48381987 674889391 678065728 991320864 694026584 233750675 151820253 53829160 608314470 554495110 117483192 569108573 217369542 583573072 513410407 871508187 297328253 436528022 733794896 16905581 12415709 75232626 350627536 416494110 548392296 298938247 241966193 383141418 415306739 366583946 470597373 13595301 151619505 127385787 256689065 289056764 957696865 845394306 334088486 889391724 976274400 867424318 987392134 859291476 854729195 652343052 293368910 396129952 305399390 142990344 397019039 797223103 243156454 270391876 39157095 932699959 174684849 274175351 271920117 497448096 220557071 970893231 705481581 284593769 235396468 107155495 768397543 680457396 19729035 279406988 954532120 896765596 59970015 91258604 530177849 507215918 72532539 836333275 353159028 609503959 339097318 840096779 968407210 477359569 829041455 592678637 772121678 193621698 701218393 172924137 395652625 405641567 502506553 997049428 633003772 60843707 966580218 514052214 60598043 970034769 919140228 764846522 520958456 894571038 864265027 483384455 44587385 408920181 77678608 599458356 582992102 221075481 312687610 270585212 327028577 959238018 708816181 76605790 455778049 261678206 510197233 785493287 766813673 262631031 161557817 25610182 38091020 8636310 122923408 606195137 576659383 239966377 229448579 986823572 639595345 774639101 60990128 223899757 209287014 763542179 378043360 780287547 288346218 851310108 477254298 518329642 349822753 941186263 184887324 721923084 129804714 813884512 135478616 194090705 685201162 129475623 500761296 747259076 730920370 760084940 875156490 414169419 447099210 390926531 82683602 541487268 269324236 12252036 182478827 43716791 753909625 341560485 204513358 451441792 485726573 826631803 143995272 970476228 767596817 565507510 657055912 755691037 216530302 654989778 592826029 452825827 38076428 38933591 411359440 233328334 98633995 476361046 163845611 279741146 54511142 494909023 678841690 99216142 894882667 59722728 828863739 60590421 417884968 520663500 243120564 366170802 851211250 342215906 846559038 517985083 413789498 387786023 629936573 960618381 701297454 999867067 935949360 721887889 431800864 478251732 844463247 542597702 688146154 911439491 57122557 217931675 310360428 797609343 828120256 361561141 61816702 235906337 931008699 380901565 84683908 383091199 735077001 611227968 138906429 613527794 900464465 850764452 882455169 396839424 806095705 390437926 970984958 458157873 651752237 695117603 709468207 605126070 192599045 787466404 96662493 600479820 343407413 489427249 56043369 574797219 50328997 442163413 632760841 605557834 311133998 193335700 103393261 555062847 512526990 294189490 99030773 704944622 379127280 135528273 95500929 223518840 369137437 484183038 900253102 662172321 482351574 59157684 544498590 381075221 28567982 594910335 166494201 820499361 979875110 55116590 679648056 94327791 56662976 327040172 510588110 628084402 630632949 8298919 364142198 165713993 576856840 505530249 622391661 933920305 625017198 686052407 844717138 756251220 402910098 79816107 701194670 927575413 968345863 812183564 900243003 467548861 679792468 668600517 500396169 525039344 259533983 400914068 34003800 631908103 816946466 532167981 269113316 984558537 227367167 851140870 470386581 400537564 232156688 19260029 177737800 312248040 83647863 511699792 919583300 727126238 557929427 579808501 886379510 303725413 618237683 985878639 590730141 141566554 836529620 963212685 224439641 332699627 331711022 782933700 93744627 567133432 331327434 963044612 807114117 806791071 140586676 561108173 864283494 203946666 55736452 356953871 361863029 675984769 808975489 290834217 777601158 427750201 351588632 453036861 633104818 648422506 237116480 169888095 207251803 436150006 475302715 31381522 809486312 83571420 887576173 474540403 554225099 694885487 190395369 100669422 924627010 135914556 365183468 757270331 270212189 182015722 479522944 750779812 510024539 806474897 926818647 590525685 993940235 500482679 734918952 588341923 733219170 224477483 867904747 743777977 136668374 233412390 518574432 821479172 326711670 991087199 913317523 418260859 952283299 888066105 777958799 597749473 125240436 148347297 926504599 430285307 347434854 793475904 217017936 52677581 62262538 639677375 824645254 888143801 785045363 564288887 502402498 461487148 222220201 800640094 723582622 891485176 929838189 184229249 215158364 633200469 703884335 94492871 804244160 749853478 335858522 296172422 784216848 116329083 599713288 288394380 381664309 402436686 301922343 430222715 166229240 547252097 918730022 583798384 827708856 762859217 644720628 460688710 814661899 690800839 653898827 783001106 151690363 959092842 625921166 344880528 990771737 707366168 262634926 710563580 767623476 325113780 817220572 661498655 62149690 494080698 920278280 128132090 487100432 787918612 79421916 210769220 900343363 622954436 320567199 155164863 515536403 179485184 972711589 583536901 577901505 180316054 708368038 336688619 35015865 705422020 896511013 610084471 357771660 696356104 178563760 419946868 80825451 593975750 977592050 948042004 376697963 9770552 473506613 746019996 161609655 447715118 732825228 900866454 403917150 942220609 549922484 161642190 741412262 870165628 552487337 815518037 302302530 274278296 28684798 645119064 698620987 42562962 73318459 942003917 898380164 245271675 934154940 638974289 590500577 480535390 755347553 782372013 548779659 965175639 302489533 410166769 110453242 454973381 762552033 559869484 987228903 600320536 181860820 754166072 866297216 314842791 226084981 213030194 394231085 559923000 744612879 747504798 83827837 39985491 627416236 28662800 978518885 488415310 210507115 994034802 47262017 241623764 645396748 728461693 876757407 978715519 828985532 280825054 567914823 522033257 980056174 189181980 64303005 299547994 557071561 539417978 391488311 970171134 948269561 350552513 928756816 500268043 305722952 137748794 163000744 323760153 545991783 107849733 474719529 874947640 340338084 698328339 840535091 47612131 290715242 373473111 95978490 671578697 330556043 669780155 14349811 122754457 815837423 880422217 316271063 370871953 809700222 743522082 801283038 356937395 729843301 728768817 784233494 883224493 151758238 144030444 237021173 237846289 654166397 560713167 417245029 615686835 562431124 19285713 768192235 227660211 236505018 392644728 34450939 293458829 122198512 120769922 602103372 733374048 450960645 262568722 864406327 34709648 208179180 655063392 921047106 791016076 894294660 88516227 880468043 704794144 851745466 351379405 260312661 180518547 441207479 323505887 938936112 660622837 708085893 900100979 920529099 573851025 518733108 65025437 196566895 565892112 634536065 115302877 9739730 255169787 694851843 494756909 616234624 4630906 439756963 465248794 87064425 117829433 289708084 73551508 488906936 618231201 988218637 61365914 291866541 92321529 95643870 602499460 509236350 69635901 417934461 565768054 287499067 981436472 260518491 297501727 445474307 30544346 585023017 561549861 734455499 548199022 941638910 748482422 774711946 267899490 907285270 306824076 36014515 808481924 338774268 633825050 772527377 104035925 699751233 945532832 620163778 230873821 229893959 145132236 864768590 654210807 257505674 323053415 446809 545055597 844251582 645122622 920097579 573290819 27465250 189528637 947913024 168215095 400474662 14060704 161290816 99578873 966023278 540565830 734705842 167360484 612193130 797400573 160301374 908812820 403513243 599495750 212669064 559510072 505025868 411759900 759619059 295007638 634611316 581203413 196289349 574825018 400519722 83754304 327971857 803749792 456160250 245223245 964196560 822454475 817686781 759496948 738734283 315695423 806144791 724385770 476450635 568510455 876241872 745247243 206882353 318987920 669065404 50819034 338481472 729220775 975469092 726022392 337591910 346559628 761576955 210606698 486314018 776800053 867992583 355545623 346419883 396008494 363138826 147402454 722393994 782147817 964729357 918466496 865215440 682548300 250892316 590353749 108237880 289779912 101878494 455488113 803815483 373922268 39233503 550598771 719582525 440254662 595954564 537517219 841247919 41605727 910738156 595592133 43576114 500659710 414507355 657330456 773554879 906914409 579631725 407588131 492856815 897517845 961502109 878923481 272401782 222416266 900775030 198166929 868528762 93254328 767667366 107632038 90643698 887056911 547079397 813225956 796325607 913818185 68642252 2115437 877454759 380955512 380137985 840625790 468284540 556806514 874069525 897722244 145191228 98123617 746054312 495258156 543160485 266488155 522234613 570174450 500113674 134289577 990501280 669690562 637643501 941855344 750712815 512250640 615059332 535939338 539401345 323499632 784831269 336495646 545568071 213812700 81165374 209516319 126902467 896604421 408644049 668731420 942044563 366710191 908047884 666492800 459767428 782114212 313737403 512284344 984844594 478449089 447198498 767077929 106871289 122481538 427659085 967329810 135878303 126300395 264818316 911770661 648912980 838025235 757683610 85608902 775223449 212188205 846686087 108238738 165930331 991838432 575091211 827421449 30793125 965060796 935296295 344741361 924651725 890953392 466985551 307845317 886408458 89963439 266231787 962384238 15542116 261957685 911561894 428960674 433357282 326061360 417937162 492768296 935982490 753220075 302808541 872313600 122508263 176997192 716975233 891960127 172113094 487210174 239845985 436364990 955301023 892489847 850347641 719942635 274430549 248731704 955641275 853328795 616217607 795800093 778130845 949307652 486994141 855207255 50373304 130058371 693566185 532765547 500521194 481247857 740753569 300222236 423699899 420626397 905603241 829471943 241893296 46000182 470432005 731266290 351859183 714292876 742815300 948334266 499634422 80796079 969909684 73281337 923599689 157414787 82713035 174923461 731840486 781398212 175870599 710858341 466872296 51162509 707687204 543192017 213250923 202584885 508504106 820531356 767262668 881741789 794207226 685595312 450896338 738441810 561328541 359526724 715989909 23476690 784230728 235768472 235310013 937655169 185406141 624385794 358613359 641176554 315712567 448567755 139560746 624331783 338376096 122193369 681384489 975284175 921103098 505523845 230251369 400821430 462149704 245032006 887251527 110379038 399345568 636460147 276510352 910234597 823837172 521005638 934558287 73606828 64042261 264461921 264249131 532934577 970542295 674004448 456748873 500690454 301753081 319043775 661037419 604251498 531908020 51921484 651676815 749574939 429522628 819894518 591138840 559191140 950618839 936111880 714553054 705531335 7872490 167486297 851119191 81155977 392313642 548167237 297953881 324287249 615241071 443167132 496433073 301054076 898128428 898816332 985168622 144034613 109187219 704318663 991153535 351376305 286864082 937614580 885458226 755034878 198693072 323462389 14265160 896846676 125840627 401458273 991575619 242724019 522034885 431884090 769003295 633495191 690134829 932175611 626992415 359486989 14419510 469090865 84313017 423142949 241853610 236778275 573713403 465619315 817474374 450566123 312760707 440238077 451661354 482642736 730440932 912999033 438507534 737789764 893367853 687758722 61307500 388449316 722778829 67923860 188040521 306503070 64547296 4735908 395781399 952256158 278660899 617008808 376818863 136082009 499814243 923004413 2083768 59945463 765692132 212571062 283409839 727143372 456866805 174563305 457585150 448785272 15333024 191883070 280388357 143155150 966216835 179429743 421000878 619498112 342578699 366543652 307464477 717754654 515199952 867691118 927906932 174600089 997083554 702041499 908742163 65629696 833782714 915266006 160110922 927953675 183497094 726476160 290055761 450074747 995341934 518945841 542103371 332843693 567279011 832986725 717523970 600695011 699408976 518764276 373169282 977601501 921543594 822440194 833394846 934647069 213583427 908350087 844230569 434084019 532241586 993400608 413176130 584323632 650231212 828512711 728262811 912308643 618469578 513838622 809441142 582986240 564683299 174400878 370823448 825360724 616944111 429079280 384686230 491050580 9958745 341657583 156146078 467912812 25139503 812636448 686896668 537669129 587142257 744268103 909975377 513397508 814380402 439886536 404279628 653138582 409075893 896679318 578295231 957944276 180927041 389919545 438172557 72465133 405453459 154731436 453111607 519474404 205307989 927841121 542433934 204220461 971694225 289689160 361609972 18974565 185564348 963081576 466526459 776507870 864686294 334180196 695582323 986156266 899436428 907062672 122356852 552263873 879357031 799006090 783617969 186839782 386704144 666511047 415327103 676546125 417474729 123734738 634213072 573683131 433291952 181583303 993410053 177990519 29782039 484243060 476124866 198083196 46318836 775564025 291782001 653963507 319904908 660484533 99795803 714604071 79570611 155593013 871049753 713014956 629915111 200740514 356223779 139550679 876780373 506713545 855762091 116033494 159068761 332774771 797863837 165643801 608338269 196827281 355355381 892698079 884381417 747124258 75832347 456270708 883193074 265490743 126155085 979704187 960346990 354722629 29449306 676056106 394350777 181482910 105583077 296161494 860884491 618167706 406686875 251862393 163054634 361752928 503547555 473517466 662679587 268860019 346321879 236685903 136423372 397736422 666306333 344883961 882132189 371471308 594001376 685527030 824342918 797117304 449649977 468829186 551902056 148958003 202924583 23534704 274677971 9474631 70894172 242284569 350316853 82973730 51456900 252183153 548536013 689999026 232791723 69627610 172135731 913650590 374619491 218051492 427526975 937097146 856027375 926546316 856267076 215831994 331350326 135253538 196592262 234208409 383915452 200783943 551356139 919055485 752527446 956785586 141574826 746059106 618073132 851563340 247682110 210643415 896007993 850019717 71902073 783394721 77498370 40011788 686692057 808320483 766025949 881803509 168061686 329268575 822890139 2090714 550670172 549137967 712668840 352765039 376188414 68757302 515447372 575129961 680414072 740895727 765545675 950512017 128675705 599954504 662371029 216699973 170187057 323296896 516793440 604668613 594991592 573769552 671866832 591910107 935614375 422341134 937523961 151225564 930283717 95989167 663297612 600420543 943408038 688645061 79066443 747137780 46973775 48815747 81317330 725640938 488338379 300337658 577280906 626091549 598881069 80349634 249459194 367762576 555556140 962590575 310124105 470233293 277656571 576522131 895892537 941112190 431214902 805601705 88529924 535123518 177156883 141240587 497753823 688386303 773162116 325407646 745386226 689082731 107904781 414803532 237861939 142901629 185475023 550290660 152986948 965479767 895313344 943950516 451178503 464083096 523361475 406527527 186856502 111181337 918310033 602273827 94138125 579923881 137322520 370413538 661278417 321173633 838614866 937154423 690568415 722253836 993151283 320414983 824753480 755852021 956287447 533395386 296599017 690870358 825921854 985886494 730566260 756632368 385181241 118222627 108636640 965975130 252067927 896734928 245501118 855307642 14118597 954616846 317452667 391830119 479870209 438139903 903225522 178186799 913457237 235224872 748267783 460585150 349429914 829981022 195585464 612761031 450791115 371318219 164189632 47616536 749218351 278969205 597535624 467982181 256971491 989581727 851697944 446289738 345019260 68502885 794036096 38251352 6915195 31435484 867085638 510352751 739645340 134397400 267917608 785352524 988830257 526063078 96783678 908848820 43540308 240887361 672635546 75981437 878966934 731455190 388665436 911514171 247691132 402776668 414164409 658585849 771143697 103398548 611754191 996410202 4169050 514765165 672641200 697436955 35684298 986749413 8025642 852128523 837470952 939429081 517320709 762911472 269365531 905850874 872575770 70571022 673480284 810598799 983006595 259888052 131214172 208793538 721659549 302740648 942185708 936455886 560808058 984038050 80766008 271682626 411242818 843209394 895688056 462292042 506339630 503809149 640025697 557362374 859691809 906483950 227923346 318297753 665694115 991556181 321935970 368823851 206755740 635576048 505960385 397001675 296399271 88057648 954033086 31642390 542246016 874469072 424984167 587141139 888730308 192818172 873824194 347903637 53087421 710864544 388987855 515770290 373868933 996945859 656129131 96405773 65470879 30258294 892550606 183071330 72456540 844397452 57998663 284392365 922265218 330090277 713110342 900590989 137047798 822068065 459491307 241848503 2747493 102860665 434529746 927673093 205641511 495759862 407588289 81358623 31574530 107544910 250213246 384799404 8910735 747937837 280066423 441962866 51853237 446927273 794029777 13561890 996893458 142932443 764993895 815357637 118906873 972904819 846093237 870157327 655635632 696326604 327412533 731749693 926118969 71928393 310522143 450370894 610015347 649165463 498497661 820221358 303674968 567634397 134949415 554819509 733039961 896199092 639213677 716938215 431093189 899253899 176173229 865793696 174443967 851021942 353113141 287578109 344094071 221516362 489083515 374516064 188839543 77088638 523425424 422317740 772320797 868734544 225960625 564652647 654824637 382412765 112392218 872112450 208801649 528820634 778330185 663384986 418403603 690144372 477224633 454491785 24848563 227114661 730383480 530397996 981875728 393975274 891774442 377077458 265774204 390891558 254304559 976862260 646327912 521216482 241660622 175398976 703941608 89914898 65812692 806243475 116257265 194080237 581291423 69651323 457516337 75216501 345952236 485436195 663096992 631151022 566726129 496827865 425717720 163603151 208810992 490811836 127118659 33015257 796016709 121779691 153444346 104661228 773468628 816663521 307378702 488354550 38280239 214745341 331234675 328400195 512147561 181161496 47849125 287105563 430487965 148101075 256878768 221829589 146389916 980940667 780259521 357228524 962204013 215016452 613886569 91294334 470704876 83672044 710117069 86824691 218563258 165747800 885527711 331539976 159410884 609354585 15003120 756239386 532892057 459209840 563320693 437492276 858558022 996039246 673563553 649043672 666983096 566590056 983608202 537861785 967356128 93154383 267080597 112783745 589571466 75752256 838294537 928486749 437470150 679374098 450871290 220870300 844705139 716567295 26264431 13767087 200879117 129110841 828208082 754219371 766084983 525460160 158694428 787445016 412273614 565723978 521127263 114656755 998461562 629488323 580844346 846767622 609386607 460915740 556373801 873562375 950163336 508715423 538008249 826791066 130194552 510471472 649886237 521065063 56659923 949738391 175255917 875288437 484849295 540657146 706794471 372572193 791374028 129945611 630820834 450189236 975857055 477501703 472993298 108776726 905264083 757582044 719044683 950184015 733585730 548211278 525891525 411673383 793663628 708180718 142271954 420737205 423616729 701860601 209342802 418183903 431262985 750151374 208984962 523578463 81825612 644617311 34177328 799601921 85315843 733906823 113267374 331070163 694287919 390359279 782098806 26296500 247720147 310256067 401628651 167817725 450214217 707750029 338473730 950692414 368751428 928237725 330040947 152992101 355605775 356814630 256537274 133648683 650049558 397671144 658457109 459533459 246571645 832085791 212494985 389286083 129222769 535022049 876010866 324610167 831065721 218713056 837070661 924407265 890078421 266653369 863920715 666627185 446749535 995858626 852928555 572767727 405803659 489601240 64908170 407414095 719880780 192403797 26069549 103712135 142717978 748308061 285292757 25830812 91407790 712543309 147761160 309973332 423894006 453601784 267753211 218940162 861662564 57504997 946257273 554266643 508804265 632862762 853579564 190585403 281476180 489433788 718565907 294335273 711236524 509973666 739348419 108339513 44672768 881903247 978094854 867743461 605077148 867760207 235542558 964960113 701705723 473291502 401235765 63296063 450693056 950728754 314272949 128788224 937383908 912986450 208425037 156879572 433764886 579192270 259618608 841419425 169651713 796085662 900234273 825807249 252214619 819772698 472820382 595323631 426724084 689506517 184293317 155326224 682924852 183502372 131862248 269776505 488279310 9464818 661460134 382775346 164620492 843668289 565862760 875413700 576753236 151942921 764111167 290263231 112026774 831621188 224145764 923494608 57930155 731762993 570667737 423547124 624905159 272056417 953817148 767619033 138840733 345521822 229006987 266880287 198388455 130760243 658466946 86516947 198517627 228400623 183930621 405026221 684863030 52910813 384077012 875870257 970631407 524568385 605240819 889174640 712504303 578432929 241948893 202669265 319761707 870863117 576852557 518275113 613049616 259643375 446086834 536318627 492859256 199632009 475934503 955157737 743143805 987908322 347304719 332127532 533938205 230476298 340487988 56817023 899155997 585307068 537928392 198058790 808403780 20726512 223645025 850049796 13223798 683580156 497801374 367870474 628678110 319190880 425285005 698043970 296026631 190166183 322239192 51165466 147560368 705634186 680554837 896384341 889378437 254704585 435606754 454138825 25300626 837393482 143923675 52371278 575246262 991260194 986669238 734085163 401928823 764972017 828054436 592000600 146695263 719936558 547050170 94118268 202264833 768411187 996589230 220455721 686686766 350221778 467490359 305994238 547518389 5044673 255237400 732506403 665650518 890460699 45536594 756457195 302569012 308547546 350203363 148609852 642284655 890996736 76594907 893664809 951219349 119968080 245557981 56765351 955622487 438031233 844237900 9643032 690945125 960828647 460461275 613828838 401311424 377987900 322852950 181271352 739006007 60482235 824624256 686852527 913070521 489484802 21504111 524825068 222211331 663675864 24296021 976769392 601735741 156798877 38027517 318504215 887800576 352078183 8504973 806055252 307414661 968522828 344535914 880663238 309368779 845953136 495154968 443552558 695199174 406258854 27730944 339213880 89525383 289436789 896207072 481710468 808160603 164621268 931040797 952203698 238643683 212931827 246801786 499269231 300619742 64637036 141464561 721597676 110153408 924454056 619118114 58332797 266294094 49687546 304644887 220127918 699533393 821912144 60374880 107447655 640347036 450707036 354474613 703170214 146806499 269593564 354391304 448231660 579336787 173451974 971997252 608565263 453121583 621908100 617607584 35728971 526082580 902384269 622647913 392895851 911281302 70766424 576371502 790848922 295646022 526527354 430815405 133858150 603490960 400641918 393322202 197931894 361945376 970064373 86416323 661335658 147730148 583244121 185731762 437014836 395035887 499382759 430429549 248123822 358027230 382433018 336839411 63516852 625741696 128214623 393638106 410088701 32363049 820730741 343611308 68903351 184650325 31278577 480317721 44529348 547464537 406800173 520880820 477238526 50524005 281730193 427059066 908748698 214654824 422277255 707064969 606647545 78416846 91914825 835417476 341259232 383794036 161237089 540375619 456339259 836443854 41488510 384350133 611598316 88123255 670726915 409277842 442410442 626755811 719230025 924731222 659712681 379276432 350715068 634522757 56113966 270633675 609841274 296519750 952450595 597173369 747028355 275980683 996671084 802284721 242420434 75161263 898326955 616870586 431053804 840052157 635385745 28103362 825726712 510509483 535613222 355040730 331312048 534688989 695771258 742808603 372151382 103768303 875795491 540414720 732922905 245311906 517110252 703959074 487411574 189936040 973687805 656773790 355470314 686720772 480927317 804691779 281747682 216835497 3764991 671938626 92629615 709578667 700692301 508979942 59285811 649462464 666832057 905089283 295493500 3051985 553296457 462783837 340814599 225089110 927076101 493262518 524562178 754430498 101760429 69279927 786530488 790011201 507059603 888910158 257897827 734172860 670739980 803041405 915556561 324853908 715380699 123461360 970097294 538292471 271528670 300962849 167835850 774405470 43184459 100615026 989483396 465089987 155449163 984606216 8161816 975118626 868134602 883848894 552035517 582534729 968390881 958290213 552009301 519801523 674710284 333856315 746350489 548344791 585268260 459501421 770759747 239263431 400535286 210110727 971061669 804381630 578966510 837448006 147097539 427702918 36937229 92951019 98184816 414944500 340646150 758028463 720007289 944818758 283320705 491760637 71295610 782083484 335428296 720168375 479742991 508499896 381941814 100990166 259798742 908123816 804590604 927311423 814090779 9737051 803172531 462376401 219704754 25166025 553795862 883744391 682848430 221448742 320425950 909753156 235160825 37496486 792343044 477243702 994287154 953383444 236203682 729725418 865527434 479394278 128843277 638744851 562671392 816227024 795368595 192574761 803415050 86256968 611894531 961677774 824978737 374399788 83906137 641727852 792389020 360324494 922598459 739229106 727128203 225770414 480534998 992664195 896834363 809495420 441528236 566741823 114684348 21478959 925483604 54157248 365298962 195705335 873222915 688068289 874981727 167831638 948479900 205285334 599797165 32535480 711170880 854983621 23104909 196315254 445314417 291322869 105523371 414186932 474627592 512819346 150793504 447609692 860374896 641768933 975352590 330001209 623425230 648643201 654091740 519083669 612266085 162985280 894066053 28211460 234299579 222246278 456730261 412974684 989293995 840483735 446788306 762339568 646923963 406724367 105853691 719785729 677536306 498885043 153933551 431063325 491796785 417880351 509678306 366386523 82188744 788535530 110582741 841362360 932282608 226008298 226930716 307992685 367244163 474639917 885315329 269624919 349964318 452843098 201182657 555378914 34010422 202015256 124775752 210549838 347980826 99533303 747254913 701922653 812757333 779114971 245105773 361795161 565135001 288899937 767567687 226823316 83456790 96849202 890423611 542001283 954788137 915558595 880938514 201168056 820246698 827899834 495666747 360237895 902356649 821511823 420943947 52924420 575059352 749919822 750496033 60868387 493024866 574821093 129693517 608932930 582179185 277961225 778826303 946713594 335386453 59380454 858559281 530926581 2461045 868263621 852877902 95649784 92633718 577964973 873255985 974226906 212252726 997538325 437293499 400511638 437211122 838770009 168557358 360363189 142961704 667930507 143949472 148153934 495188922 414887453 50951187 249033928 530090232 443444608 779701756 842614192 659312984 504989535 238996107 616334419 746089516 395977470 397239254 311002981 716996663 60857920 153952491 394266845 486669642 662069113 143672728 144652413 366651875 719449931 949078310 882065343 76253132 61898800 21745524 28223618 695685828 567833377 238850408 668598287 379545390 131828992 618435493 370368812 593273353 879787349 268193154 780978731 173175890 752881304 940457092 764528036 29108422 669834753 138688616 940719169 80160250 449609343 739724801 136309415 776081894 196604161 922750423 340811974 438834851 897075918 610719645 841572553 616305299 702176820 10388887 387281830 303207144 361969011 948084930 876399395 272178046 19086615 452350553 208912468 332919556 38021372 186863959 335126904 959959141 601537753 59669546 264416227 959086260 578256484 507401191 843888349 534080641 934417992 821976728 168432848 597622855 834084848 634281837 887802754 107132817 816819378 119019907 119835337 626617780 729641893 971815545 546242956 39868873 733759305 381117229 634660224 670019134 283941510 616549030 64612830 820297694 911061374 308644031 739071695 985703957 645380155 434959262 856030268 863059063 233731158 791529449 786006453 876090431 282411961 378064935 820620241 160929598 701052721 689083339 95450589 695105102 536661852 147823370 977827258 99112642 227907338 3991223 540921620 386666775 547417670 56877554 992863726 561497264 947659683 303409146 589822425 706394517 595140511 846078625 859390896 342809689 522126891 248630855 603974032 104887371 322156596 15219174 924014893 676595179 821740790 695590012 378424708 804767558 289308217 789446321 542843364 128976262 620682698 973179952 12230933 493494215 248360704 126754817 317888660 705539899 297048406 465886262 430121461 896994165 361763908 167482216 199382535 580471708 970210845 10576316 513387571 39034644 866401308 876624016 168617910 382503098 362353846 19413634 418767044 972881983 391153138 788466831 612814942 819131784 140782030 508807911 577608748 979453432 525442525 53756731 682699343 999015157 54405241 166266997 375600016 393391063 388143009 32240053 175152422 546536627 870135573 464076284 980044872 606033924 548309544 148179309 582351915 159587729 687542997 938712338 191930023 536740684 573409236 716264903 983059398 375584494 631243693 642789582 352101182 60221183 540817782 459134322 869858709 44231763 250002439 782002246 694414434 789341688 933968106 198836076 568030638 229104069 652648688 308873228 418490234 718004254 520389664 129465512 922764370 695362909 225502352 258688644 391651638 332036141 250767503 239361533 862873357 647882977 679157336 902496848 401818644 323625709 329363186 235836165 916853796 592772672 164958636 566147875 179655531 130372369 843155138 961348931 135949669 55635817 997015035 843792073 949271524 132991290 540693993 441291548 559389871 367999438 262070522 917615754 705407564 801328330 653349202 330057449 536220582 526043291 956777654 23869494 247223838 315948407 467575585 857712179 689155487 105190769 669432380 491819579 298595114 953294606 24768797 99250604 953848679 9228707 835342441 697009593 234080263 999185539 854822130 275451714 55311015 43128008 195003354 150755837 569075590 159952099 975619437 413843406 748431228 573981262 844444055 153551058 950256649 729110918 182132463 104342132 401918947 472171946 787492242 950971357 460533620 447210914 863529006 293516548 654987420 398529050 603661076 329955884 750887127 333428126 379062533 133529586 669597358 622432712 762108079 459754234 997424534 441464832 286045620 241147164 351897495 672400864 321571107 357786458 790435938 320255961 250595231 83962603 928859834 671855149 826133769 772348283 501865416 214085901 772954030 629854111 493666255 605507258 829330719 143931357 149529712 533171829 794106172 192947791 148246465 686115350 368637276 752475404 449715369 541382903 320035685 797719622 323905803 731421784 803330334 910496873 456984171 520846272 183185369 697667371 537763775 850660283 666108968 421102811 942094726 392064118 701471328 573458749 699054783 741949525 519451224 647570750 732345314 757411738 305279763 618864943 393124811 255417193 26201662 998619242 363775563 72134203 91032027 52666366 231334739 207869876 673757452 315932328 674544813 678038239 965097710 724637232 331894428 420698468 554960151 204642637 816774670 682695236 58470640 830445878 947450821 900866966 295478687 954913861 974776445 426261607 168472696 38275622 378178052 746879320 575687578 630027500 174923604 916569059 605061122 284774898 44763121 290477285 338987852 248468668 338698217 906699278 638722822 499099017 718863718 502251497 158460656 177837404 245518729 138112193 580141246 793641665 230313678 872296669 421605825 294035377 116289435 384151111 992250086 836358808 784574247 814363528 294558774 485115192 172808663 296661027 470768834 784809476 395792265 574735667 547585992 477930788 933542188 857938778 824782936 859852209 690982928 347578444 441288180 319584000 697354093 9608132 553327080 713603631 674237370 499754996 833772436 491274331 58230569 216829572 711579750 761583858 762424005 143045059 807089529 639743516 173537756 650481630 58458570 314941970 301808302 856753444 939896862 319088307 248290051 824883587 790076587 56256061 820796320 329203050 972402115 740533267 886705916 195646544 975393670 246203313 538231758 386308966 882706950 151692374 723763720 142024646 585781357 189468418 866258104 169109051 31564272 200859709 453691287 692371793 780197002 975234869 772644647 504758850 996154655 66282422 288284875 277335529 857107275 312715421 854355502 708527693 245712074 882523983 888784709 189829992 992263698 940417412 24235183 651681154 141415160 419822348 875348083 992405848 825421724 594503467 586558285 930813181 917115400 294436893 156724133 408373157 83707616 156558243 408491680 7115853 72023454 627986042 419751395 977026950 43477866 948087333 924980640 57513359 712915359 548891457 34128948 889430000 326855680 86967396 867736911 681868617 479850919 542683767 891056636 384703934 86663612 843895469 333491155 632510604 436196916 441062823 648518332 461935662 78854429 571075001 530386371 305035 363246628 527861725 830783796 261668336 60916957 316988866 883093696 498090855 701642353 311571370 736728953 124349987 615075598 621847820 414110274 463924899 351080508 257486595 643435468 178750099 485092027 233908985 72162001 95203675 755794699 566027469 717882279 994650099 361252169 623645620 662475914 36304016 410696096 24940189 616412960 302730783 818213602 72308302 629673611 453153165 771166173 470410551 336551380 746755010 769384129 196016572 450934226 506926677 534230479 881613483 5558668 504956319 753269390 191538907 249834893 645343069 356475794 945111354 453215114 418504472 80008147 8965871 581005592 518615879 640190193 729883508 873875566 126832933 868994313 245879541 265422070 919655437 921731105 584948533 155561711 326345048 194921575 887527047 291884867 560699357 666377367 505487433 272782687 683265697 757741790 130108212 135873609 374279507 379052244 599798599 343073948 163829622 468851704 660976801 688644019 460575069 808345159 481042105 379095667 53391263 868252335 60578011 582893050 357056698 404160305 882683288 65113464 247057985 246164250 809406380 932848203 838120324 420016917 19060731 126945332 343703927 703776794 196233110 725675995 719494611 721568027 250181549 358086217 28229296 201377030 323633654 98571203 802212481 308656530 129571972 348241791 224333774 507384997 371969949 567241950 219722660 850143994 447834661 56575234 394875240 180373804 426821100 30099826 499395149 529306273 946711480 162981124 249058909 308066021 55628259 151490915 6812308 685125097 269422179 217630210 56719201 323094201 596086817 423801105 668247125 472545754 786379275 416472796 632071368 65121491 32363615 543515662 418557370 401539249 973137748 16900136 246386828 733426289 689065740 235439963 919821394 580631095 721388929 168939561 603094896 810245220 200587270 305856298 578241629 584488743 904832586 979204441 31025032 704795771 378813423 494643446 901704619 686038409 765099839 2126413 924320085 356439442 241869379 502261398 466375416 740194056 534976366 992337800 461328821 657247836 201681864 657000604 599967440 913302554 781251117 332472239 54862573 762074973 951343864 570363082 404802979 320117675 640168296 221080937 870021287 290645870 184640327 489106733 575181808 972146008 551813363 887643219 566996846 104978726 250008410 37162012 101344768 355465370 214034010 443682911 223933498 880596226 761341008 18809754 240501140 754509281 536424939 325275547 991518533 712406769 400730297 211126431 948655126 827634144 954078552 692746829 181046282 172730317 852994685 753599315 884906442 312308155 829813292 188719813 631933369 211455360 806761574 413607957 299676229 869875501 543219653 390025100 345092384 60101649 504758039 732743642 893739351 892247732 357758602 833308972 790971333 412827401 285656449 721753237 122713431 234950578 970062178 513709918 670844141 768846856 760097897 668312634 81713810 310892702 953520343 756719442 714451363 494351359 712862618 798889203 614968676 644115622 665123573 454486310 917585322 346657808 954911525 525116802 748230099 292955898 946320815 9290297 516687215 208056413 576693738 808724128 483183757 421109297 687311293 6755483 385758825 955210739 37474603 519961300 36402103 248814665 700792841 879677244 874666695 804215571 890528157 459553566 30314853 175201449 733733363 260946859 509173292 476128908 480739540 920343228 551164996 122663169 460987916 772172335 298124223 105545844 853940909 259539005 971366133 637411284 513743136 95336835 676923195 34758119 237563214 144728618 435967036 545327988 784279535 588698943 16194407 673842699 450918749 516759428 459071141 583588975 646758621 991191546 14593727 843077927 883444570 168626931 613728120 336910382 854102938 958741541 584364953 409962576 747721049 755139661 550175302 459942484 96479992 495752363 774215045 111875273 623229114 572467828 416600167 649577892 342204064 283800589 736272697 172903759 780334749 494015691 27154863 642637554 826595433 190021139 776080206 820339027 502888535 705653376 90574952 500039646 172223197 138975509 393187235 411298327 821694936 359274160 530368490 962445983 603421455 947039610 872229986 738152422 613002982 893931206 301558544 779663492 946155202 82259166 525480827 388931839 507237818 744351381 488851062 116232910 243488131 740134499 544529324 170098471 786887146 361435335 363061317 538528727 534532169 195500148 969620181 63968805 612428153 655557914 130263066 556871126 426891469 690409670 244134644 145003203 698814805 580748992 154135268 355112017 479426290 37817949 156572133 242939308 294655510 908705582 603131334 781793343 150501550 472702319 425586331 760862269 337983244 175599922 16931920 470973784 392607816 340627253 501604026 985975530 650903943 448430308 570020800 625268602 465651273 266653686 905037849 205842985 707858027 971031299 227772269 443184689 362285712 648195419 788454017 545731742 657110842 225594506 84622840 865735177 870727011 522822541 258510806 891204441 667396700 342148786 408247699 537122297 726061829 262905681 160146717 301954389 18021724 486334147 281350376 923375870 67702955 645318284 692136785 179690400 590823375 326990408 638420437 276765272 147403640 913839344 440298355 553350591 233647996 720399784 931328761 690179962 765883649 552870843 289719016 430843516 393195892 502353836 254956655 430032670 4285264 734774783 547277372 519076324 392116329 519343016 37913030 995064340 74781751 117962019 260122219 13935099 627726614 502817193 189243523 879678929 469142693 348754003 897080095 243433076 669995805 917343952 346624363 365028852 5331533 920338433 815939277 132787238 658858294 107405915 410469307 316903967 354745027 69501803 413344682 623510057 323888878 104987883 78566551 329821300 377304952 551559267 553598694 247194942 879466701 280827861 275934637 134819698 193661080 567956866 610704983 467930044 192203641 812385396 40107352 517224508 526229733 348542886 872135429 661185166 302877166 283298818 205425018 199770941 722399151 607295185 409867460 168198717 529659716 337446537 927140647 439669187 139013932 254118205 618982288 537152366 404072589 584772125 788709215 375850585 582847929 617700452 874345983 877936923 448973235 84047783 345553830 9571852 987470674 708869999 604763713 954833582 390640911 585575564 880254914 570221781 106151176 525501856 702452741 666765277 350790953 731666299 356563570 681772038 890961060 835618214 942164169 869313946 925457627 327695829 150295914 162742934 341406567 516442488 288416674 195665305 5950873 609427434 391344595 246760682 961180922 841659196 200223884 104284560 383939322 186569347 329524120 413439217 729130009 371119687 898164544 747940430 542171462 97281041 395599211 453230107 669714737 152066625 458222439 627575931 527521648 479450927 412893470 378911409 749651197 281119376 638810198 313973410 790114305 564907834 329102678 139333461 576846748 203014812 173522557 914955932 476333567 492915191 960698322 853185619 997297097 450513212 309044551 985864201 348120584 797519288 35128674 998246581 374792837 875133618 174670359 822672758 745186329 959791518 316934530 380988160 400075530 244059355 641576516 198302038 186240400 881360705 896505119 83030757 776753599 705313691 850668772 941296566 38535494 618197738 457226924 851025380 963603840 161742943 969094699 58127684 364995959 96648891 278046613 896892965 787645210 505416971 334113723 650855501 208463018 914928098 593781745 63775482 358529854 858519556 330023673 68503282 899498191 759228743 526308068 779330421 33285211 440173457 814016625 919978428 374530411 696188163 404252276 432289584 519136114 636764167 433514978 466460895 557047288 49890882 223236688 279037665 951096768 36499952 950154757 841403665 299601628 305024258 274951887 736842305 141958560 700703920 779993520 573374828 929582470 719963627 571983233 928877135 340874164 336187504 168108388 607885499 800289880 564536746 375791035 548763577 138582524 202479145 602810170 229593594 607142141 332384255 536631695 185558038 51644818 110950471 281607309 26360409 663082279 153871453 472779218 63363667 228924861 464521337 701496801 62720625 310593914 114600284 129530107 517103703 813769475 527111915 899202266 673983022 950339719 650671799 164227095 491166950 299047711 684149656 172449004 787931643 634183950 245664434 885096445 181507073 792324083 241229693 778782527 30230668 711032213 880422910 890363633 642861632 147130048 470894833 706449660 259146303 542803247 764195460 51703008 866479054 57669066 903851535 886424686 420061240 790582528 663028001 602953190 645276247 215530985 946445418 872815230 352958807 210365432 48055441 981607531 880085814 496354336 983136983 20682239 935126955 268422153 431780733 880830892 331452761 854226295 960503375 799574305 935134527 496006150 995721665 332349422 283891702 898635317 733826248 291447285 771271448 754468196 758017189 352511773 602053321 609795914 601664777 616341224 143178935 256718292 11509624 741544561 77042161 974923584 171329588 494890036 334949898 603999963 493963679 854346724 897141109 472043901 857479535 825606649 746704529 427830951 509441684 800548738 380600796 153260154 170735939 293929537 678142693 637513131 125991175 515217291 885261531 17060623 197355055 961268747 263817831 324164636 243647231 860560508 764680738 571974039 11842990 32523712 757438801 41285073 518201744 61659449 344461670 450500966 194849536 152234182 886181338 739837648 414923480 318675066 580379761 348837478 213053156 167240888 618503496 738559969 204008675 835940369 997926573 290529670 788472793 730390074 315795837 228204966 27581901 978057895 262911184 857562047 205725421 694889747 259517377 725303005 992256776 351431764 823262326 928336235 417333730 579676618 404510442 533859411 161702357 662402217 447195954 931501301 368297647 259948205 657621034 969991957 268270596 819725072 991866893 549496322 812322652 601085528 739047976 374294207 472517865 254143416 971324658 945640445 495469311 347877769 948567965 521462548 683422691 652991595 958987898 725604398 76634972 386535545 132876715 693975375 569147107 383427852 32885717 634658869 190005544 869443825 627390001 886369246 514743008 513744087 974681391 995000325 920018940 993129032 305887810 495248520 395031729 2495861 450019360 445876160 997484796 298308551 596780057 501030256 313166308 69508240 693353195 712584565 580746526 449535453 296847506 551550707 703901505 157067519 146242343 358552104 911202538 558786840 872207071 630112468 684543159 136891559 887528196 139024335 857556932 25851859 280997850 902643033 914533310 803571238 948804962 232479399 300788146 984404479 582491433 608096107 627380586 797603567 353574227 507181431 701846762 639214505 277657560 327248404 587858901 387392616 613998577 105682947 486212195 28952732 522941899 47881073 312780064 119091202 349388405 985588330 17052850 22468990 522762324 76183614 116938971 291399208 875903689 624758316 199246106 953480638 153776337 356112621 458264862 779002267 556899710 54947461 655381754 474103467 495805133 900335190 213386042 747256088 602005835 525811394 729640959 30955640 58001121 194466145 162965806 493162157 187172076 777798082 765019343 594193402 209723154 886512819 892617861 776393520 510868767 816516066 578926275 500429222 60852265 975519859 322933626 889446950 900280822 333056929 490556230 654476163 326492374 12787890 214730173 74502399 491600662 966025985 5984517 122015359 813108513 471869723 343330580 238884272 473762648 879417495 454359708 840394173 404128539 840823946 327582538 325751065 563534292 800843410 508176423 424108934 412815788 746945551 721452157 628043273 294140958 853453398 366720182 888587422 454432139 480887363 13014833 33443159 235457476 300542254 640946078 386440109 65475598 397811056 135708174 789978978 8661974 228429884 564374986 149778951 80921452 498542549 143010 512517623 782544945 902618893 11185872 636657072 628967476 682068657 43336278 936599031 410102106 601440888 32719658 855529333 669300077 51142204 154819478 170815174 580176957 551566606 864290402 172942297 311122325 32107761 4751798 810856245 762998999 765476006 512513137 316192498 437862369 227408884 789415918 30848135 225327266 463768695 326246175 158203892 858335528 100807265 80167574 485234851 861969630 594128637 871871690 525381273 460433080 81755182 746964649 292650538 484166401 619301026 812291390 42449382 312143381 80347728 600513848 825797485 977536846 966480253 157520190 905897812 767129333 757488010 341065543 261821601 989174435 590702178 259152622 784829310 723832269 859524989 928756154 732678339 236366845 504115987 8653500 182001256 587797708 900414380 471510525 52135950 176342460 19812645 889361072 150213028 951443011 923082691 786093847 424475748 210586246 375211459 192939148 207473828 68154755 916513979 21010633 728260916 986171070 474484033 865625441 862901918 6013329 783393145 267900696 925613425 759591760 639072262 113981510 865597388 438859347 428802713 98228407 75000207 18472564 867182388 246604448 460853930 688424261 982417462 984662094 990181774 721116757 455192075 796544750 567546018 775267893 4230635 965181647 562877693 282729701 41235632 385972594 371595922 994670959 106987638 527227892 761982378 782837079 729137867 521478695 866169970 199600657 713925905 561302427 630764864 207795244 814051349 953219171 309290438 195755891 956467183 259865779 740081809 233215263 710796822 86290725 660194083 362937738 997439407 399584659 154406664 146888091 189461999 833393100 557499722 388358871 94759243 145919752 542597947 540114378 61341241 544923087 456173372 374976415 780788407 509736459 942776167 845410923 658137392 308010780 150292302 132212765 412498276 957393024 822108862 991346871 389805837 306717415 833217953 185600750 146871286 633107113 904245369 933880055 505152829 818164776 403199793 44820397 742814617 762433168 613481299 823846172 603702232 80606109 344527084 979978611 106384389 296488882 102875046 765356901 174250393 244514613 94160755 645709615 53027423 195095298 250217785 283899780 460766654 82108416 645548933 746887411 763300311 764122078 982050763 68626814 56475878 414569850 732973006 931819040 746999256 410237649 66681711 867812995 347228747 951801291 324545911 725253893 306206871 976255036 102809381 687265588 960238996 13093292 830263160 897176729 44549577 725594432 972346177 658493848 81641280 272055553 995262973 725077687 151135478 494831302 995945527 533385110 780089921 631747207 882258292 490367972 194244965 928084682 307841649 733859054 252095170 294003914 943394777 522972468 124116893 404061667 630331903 885788927 19253919 695763544 482596923 179511429 100960619 955239931 510136385 813175110 582226477 22752552 785230316 636339482 278230546 524730135 880825560 942909041 614106761 981031801 387862612 484940254 352436623 480762504 230908785 780629637 556906885 936559699 686366976 591923028 961544704 328481104 650341920 631313630 309039666 855178084 748332023 125465239 226147399 555807786 972742920 259138119 159456180 650916219 767495148 360371773 41131638 135682239 707721128 134850269 33088201 609531552 114907054 551547533 504864429 156631914 45962733 836070805 858167806 669224688 380264128 135008918 367804857 697630900 512153483 398775920 749896229 980644536 784504697 259792870 428325034 430449221 116813920 61345615 768579364 679955111 462845139 956162990 542306949 253252245 166806495 987520401 130219983 404621111 640744604 596678080 597062441 713242367 302450888 422826619 315958329 382836507 643582121 704851722 466921233 297018499 842538386 89308495 337229366 735440358 47621682 610752137 602983633 481325268 320326596 729550445 877451789 584832394 136349142 883871413 958468458 466414164 232388984 356476478 642452411 817396771 648390070 886918663 240592524 592041112 56675623 563590619 537680215 544309871 463824603 102781046 518522918 682588470 783221478 983348685 857897755 776894622 72517340 195934255 276790858 103288940 83961564 330595916 152484929 333195454 955336928 236188342 261399464 914477989 415501589 985450474 386669884 428238805 466113130 830169612 260106255 215013145 989810769 215153661 788414225 744980429 93242422 464056803 65218623 910814305 58733416 386836995 346874315 200993213 918064532 621918251 906926844 991870449 88883099 726818399 358788622 902338452 663344674 133192614 129085298 173291107 722605673 233701957 576624034 356689021 539222324 740077244 550076379 587236517 848341587 990337045 913035754 582498168 837452273 833440498 406756137 601657064 470555550 406673766 77610513 32092796 777459616 311096221 229827284 810906232 344382995 268637250 60937136 396035039 104446467 269308458 348421734 125105573 33744616 525966794 607644942 283687772 579634151 874576918 505941795 569282335 121923445 430163045 6701256 200070583 634604516 872167012 332798723 647312438 173376761 686533665 981619590 271576781 165857668 380565356 364941375 328773578 859041127 545025692 403711349 990734670 183669164 933215679 513958888 854973988 629182705 347298651 447138953 180416943 142527224 928390916 434573751 733751481 382980917 593520345 645577383 885812495 329530516 333574408 141648704 508217650 440846538 43733047 351131115 805738231 150629361 977111965 150423653 114027209 913920631 602793356 881167226 119573 153066715 859087557 648398006 436534941 953454283 389659002 29932149 515834138 877001831 120255334 384455062 193129406 502987144 534675297 477261808 424085327 575916024 255109163 617624700 142849036 938404109 45488358 214440034 361785406 675171091 363517295 709018447 942239014 202417115 543193554 767767489 549902893 114540735 87237320 107262939 756219009 980876041 622962378 946049665 224888203 604056153 121677303 60474554 37734783 54496696 775325710 472522607 515596083 184399263 463120795 257439225 141122486 344865179 669544484 455763901 731256342 189276662 208620721 231053183 320844992 433474568 899742015 201117741 93971751 232868577 748494704 159165163 210350490 208000568 496617094 420941929 402824044 777260748 696837389 815895333 857336844 470267254 817751690 231448048 105675349 5406010 816590728 699466003 169437064 483337743 988681803 842009784 411845512 559094047 573016056 650579595 610861424 768234963 414484749 528871533 506769159 289520227 973810465 201640590 119275229 268425413 9570092 827220125 385804262 371569642 44115864 530653485 745673529 215433950 598840368 934581370 600715406 536392567 636724082 112505762 209009039 635250867 78187485 894600609 971373644 64137533 404661255 389619976 360875167 195658256 46187448 465312036 278787603 27535299 439883669 339154982 157611118 293332733 439513212 26405009 425221540 134076959 918468302 424524813 109164112 414437576 902290220 608101863 998499363 57194028 186576968 612350266 336338273 73957261 247126191 345833238 846116324 186314553 787656246 979672239 53646202 245844318 684711448 319591094 4855979 861979049 415037933 992805485 553419441 868791040 968351227 906595985 102475816 141711625 156466518 18059018 302538449 256264301 573727551 704956878 441910447 627270702 257882366 817570400 35235765 465144920 472277169 760515650 192003873 266272509 803587377 806264671 907292446 85437925 485360089 139833793 291239325 654850470 367457571 238095086 899845355 55865014 85181561 620080560 94382817 366789788 518279516 21029446 7611406 801923294 176488000 396811313 462318152 151027033 54961291 748442442 79123957 341354419 689172669 484904267 844851841 424810018 41770096 3120422 139006080 99198774 103899269 537377048 620601191 531825695 888503981 444690816 475382132 398586631 548370938 452837038 317809609 697419212 187479666 770630409 776160190 346266282 152523568 497525435 879777566 589455621 110861953 714860566 532020873 504103600 848736482 577023868 537165045 259208110 588355258 550071777 449627735 25783316 322780950 813788906 713907684 381136500 492669164 167656259 799942874 244917599 16264363 237813640 275194173 138487451 6054930 376042510 712723584 357593371 792170668 180113854 549108708 186563156 739908943 736942509 990195757 461955396 894419451 560937715 665947720 387320005 244513084 104972659 72763122 551884036 546657464 233609922 60742394 569360095 646147059 224150448 181250748 10197023 131233051 407430089 799159762 631619388 903881832 62328654 216891769 850502625 304306662 936685426 327206654 66301556 68097180 810595939 531933298 533337413 874839482 219619085 238388872 172889472 426173681 716894020 596440413 101242824 284791617 265404759 712854495 347717095 388342090 287218563 673361935 860321817 581583089 946216537 970627466 8215042 127380514 753778462 447227450 381514328 468386638 296179521 371999210 591139942 287026666 51073216 424837549 573911117 31677497 238741219 810066982 4602898 748828839 91851965 385576725 542506445 801547917 766722227 624971653 723975368 412044470 105502744 661817187 806069011 572404935 970969371 656469211 748555536 408367703 73496407 642363812 713598670 255890219 685803369 787566972 92882575 245721088 227605606 84235323 41375563 466370347 936678496 674705802 452497327 870902843 622001409 318633652 854465129 771248981 454686050 693303551 466789831 600060301 70018877 72195854 466073374 204451530 616561381 507877707 920841968 728260272 16241806 68876704 181207050 101725897 530838231 133512395 758677302 814133659 210940481 159484294 524466168 104778960 939901819 36341626 156977671 99348353 941209106 339237316 612988224 508815833 452389555 444590589 859071945 327286347 876978007 98223897 363545470 335566543 330203719 692836473 910251533 274401764 811634159 644141700 735300370 602242695 589145115 306490191 41288762 755032141 18774184 357690617 898220574 416243885 424986960 925532633 49958737 614065380 616816534 174957359 2329136 313665066 373749519 668483088 731923746 806318994 190966232 134465687 411708779 299118770 765816258 14533268 744801661 574588963 771738953 136756947 991329280 716695719 219825661 10843292 193163116 34034512 201181286 337363605 850780102 934316441 682220373 778430746 984434787 824323477 724629599 981440151 318548054 687703598 146303114 444764898 189352405 492275432 621962703 12513512 197396029 594508185 364395339 634192086 332001369 86617059 356728031 970607305 294752550 291130644 44047080 833049532 335637868 602872187 252382842 445813797 548976582 891066510 28495349 489936591 636477035 450311556 693161809 776374516 638220200 650910260 524339925 181159764 572026610 346192817 762721939 751603073 505883216 264344230 471930517 324687398 730893872 700837244 434013920 411573319 647967157 407351392 721514247 97669455 244906866 752045062 813645765 464707041 614686414 902980509 370970361 597189522 15648277 428308651 934334185 133694915 589193743 710538280 2443123 10992656 888002377 214960203 738153962 857117527 60287944 164518633 129124259 953565414 523893904 798501732 809141219 190114429 46397251 166895063 74951234 155096915 778597394 782205152 532389393 396188748 578047983 405406034 748011809 436466962 314116864 229210824 49219439 640617054 25683212 873094172 891150804 670598185 121831643 670339285 674856356 436268226 644103320 722368294 581837050 169055586 670989401 691792083 39034491 496423273 592466935 195095078 620004232 847256207 798866206 996401860 975123066 239270844 784726956 85336068 392071562 893014547 734417026 451917148 108283463 125351287 190443300 138363786 649430140 88733711 397309084 465445157 469325502 500727631 124094387 971957221 504065488 32327031 381777581 304632867 104126333 774455934 517760214 359398475 269990770 307936295 177009764 582512101 537005250 360551961 480709690 265039671 642084590 426242840 261678321 509964995 864050339 899428739 726242382 757427470 689958164 816817673 648012768 573820692 963673878 204996051 696363126 238416457 42803010 667855035 807302057 434262650 120962030 966254407 92909438 275973924 296639932 106851087 78677498 478281745 147373884 945374947 743478677 727733888 867920434 257409650 346306671 993133534 843659213 546970080 19056249 263373309 953096523 450616457 659497110 201056411 317758294 953302881 12441823 350074083 606704070 682071125 738575908 538712890 62946540 582930126 432942040 700085237 636639731 116905791 856644050 651684256 166725344 713201516 866611316 840000430 997190553 503724421 192703446 393497513 881021523 394378743 444364549 151305993 578822664 344799641 233432121 364467952 379230083 345564859 946466812 902978996 271133622 388669930 249477896 104167126 694266939 653588989 975118751 981160029 698989013 456887374 278009831 45798703 557989788 941875352 882371456 937736017 573887277 407848160 706433619 226444608 331111362 282421055 840050077 900033520 479272236 466619312 154673508 101906271 857169428 933211434 980289778 117252193 280757462 668888541 222257301 77901079 449356636 897301486 735950934 695901449 651723780 830379149 33671115 156421504 581264725 993532345 609119355 725532374 432240750 874821445 825978590 46103581 313933592 949994152 842263929 28825426 954833845 844023378 699230146 243503332 303935275 617485814 387562669 716629400 60230340 868317909 266846253 648442784 192642972 176389838 438750045 832066066 696319410 929387538 800549753 910124883 661044507 127869200 452704808 424939208 282539845 592557777 92626588 637158046 594441655 460834409 213176823 656713332 807255733 295706471 163092584 324536324 577654074 202502548 195300711 782979534 233166478 916779812 733071253 135016398 6738753 391631100 618365179 335274650 122165784 371990521 223509132 534346445 183011581 449404550 486252406 853145472 451039279 572963908 561497218 630020032 936596111 711196131 195019472 7463614 438811269 19666872 596465132 481376133 494037597 517046834 141625220 105254318 525327648 359960067 60835141 688828313 482635890 654617593 564893311 245056399 840465586 338901021 592569459 948366351 845173955 238107746 375096501 924829894 280703478 897717211 75446827 920317184 304264445 51985063 857213416 678382946 431025268 432783302 991013300 627001199 251589824 611871403 843639522 16471674 13657915 488519117 306581184 581679824 840016807 495923229 215063886 292977391 345657203 303842915 321632707 703296451 959756779 784689218 175658409 273186003 245313517 971922347 265890726 366270356 743254120 746393225 76373178 451935593 339221821 697644384 134464883 639787790 135442704 314311888 752724937 496163335 990468051 396871110 536222342 588460648 877842353 424247062 532528907 578059331 559131265 888765848 68760103 688019701 433669165 839196394 269600979 451137954 42137242 250288565 247429478 925684600 817759887 894434564 582570828 242568995 232180674 656370023 220368656 335127743 219848015 255121074 910812086 272606721 610615995 195819646 947153996 734283292 979880705 257899751 628258341 983344863 99771007 601130322 757520326 586331966 915887840 632996218 913083189 751490891 477796510 394313592 815883572 96304894 723058566 605311182 618413578 145419016 84654383 409769549 829802932 338764624 314809036 335075571 638951479 493501915 736280612 258529450 882605525 240295579 742930036 724361103 784470685 265918800 958863805 793428672 192048776 293497991 735011438 997388289 314146388 393118245 811268204 898350341 279413216 945474170 344546055 449241964 208233125 537303852 420202514 887936569 973419414 788788957 634835842 797372550 659551782 244438550 973880285 593254231 295769996 436510953 588951843 721513292 651984330 578622618 136862066 896863460 294695339 553512395 574945509 565207407 705073293 391377329 335487025 413706030 571915028 263751604 611749057 127598267 633105504 537154470 412960222 392552604 363080711 916415753 647145240 853008031 313112035 988389814 806146209 604797935 344759555 574270417 992567959 101688172 129806906 804124312 780450462 215400908 979332880 275160766 626955987 940478418 100714842 437683177 822734040 662412613 540874826 171175761 327459068 331345683 714722003 348581198 732887665 302593607 297844760 949591067 636569727 622092326 202506763 405815128 379447077 14828033 903679500 447164063 660332629 696052406 201324110 377493686 543452766 765477303 682382886 655779741 66904870 322146587 691892155 540060616 737152374 630666117 233307661 820015705 551411000 636728861 901043396 194834948 244070805 718835680 772238539 585809405 501144207 243456329 351654268 345769909 38307070 227662210 551748005 389478337 300291826 576987029 574260749 896609850 521114357 619797423 767816094 679046590 673276769 899226356 993025356 448438995 252013395 369633677 105101652 730419942 125150377 169517965 885644421 825697257 921784101 534833590 513580370 814673768 757274270 579037312 788913807 480916099 306838795 753352494 449119684 847345616 670457780 495302968 993486155 928840310 942457533 879555424 561705899 459607755 479382595 319505083 461286430 868147549 233397297 575505779 837077211 840996442 43262770 446541654 60695427 15840312 991169387 634010861 895901479 392126726 499024852 181557056 489733967 426787517 976766355 147167188 241269095 172313402 419738343 647728594 525289485 889439051 594050460 108951442 585974042 231585320 548323919 69386269 881773754 427764998 470017785 186327709 625919943 71674115 453295234 720981156 771632887 696975309 626340023 472423923 660913249 751987293 176677554 247937118 170785979 677860932 983920258 703131344 226185368 692767327 871464001 500619414 584465453 298867362 975443596 931760863 960039396 902894259 647156523 434621499 118944666 877825466 161350856 112594625 305580180 854786727 69138451 668739443 62541860 712207731 643610933 767247870 834814471 412800983 510357649 864552341 468043617 855710626 169615241 342666369 518238406 588826041 954627530 681369383 2008894 620929010 274334546 783109211 711458636 470425771 671380232 816494770 873521449 726760469 288170258 620311486 211297390 956940125 353702876 741739124 190839746 987467102 49731266 813896894 189193276 339967479 462061680 357097949 533407321 759772633 416400119 409347745 969918791 235696175 369737065 496841000 280577940 801776431 530572814 711343995 881160428 443718767 17121768 87770148 78280337 13716740 663746838 693671008 145913318 827539587 557209561 986057933 192312228 2593008 67456943 9488908 584444789 278585946 372676737 688684144 141726151 647220691 795256436 103961295 779378456 438905797 228837645 852305877 369405786 386113584 807283716 760799744 946645283 42809203 586423478 441658871 438732508 871314707 396123723 680412221 561535778 841887522 238030743 237210130 65115451 549837364 844537125 251713921 933440767 366124911 938822225 309946975 299374435 414904448 293889395 281756735 996946864 258651155 680661632 547459395 811460710 24668787 266354077 565543284 936219391 165571111 207846148 527019351 417935311 374973859 854672178 545721710 185008348 52830454 356288260 504350193 447114630 114501907 889552548 590086475 3562838 270186502 265857707 196281486 540629097 955738892 680949826 318924808 916782893 471598464 612589899 628380618 141194059 994212377 149405700 277285337 499582977 336888357 355207301 973823112 420256939 840614502 200550768 223221183 336576855 687957868 603695702 120348164 62393124 955820585 209703908 696604724 801759014 94196348 320053480 985905071 199934872 869981531 722455340 599627540 446789384 588381642 730279568 653143309 466027850 739486043 704539638 148275524 838968140 457534271 461235512 977611584 25771121 113500379 458471539 92053661 26663424 816596169 238361434 402332441 798328428 121684499 771470125 38354120 57854082 545197367 708637259 58495086 208004263 140503126 927767664 791319095 276747476 329640708 798560483 211074853 925914005 918186677 544422748 458312150 587503769 394371888 659888081 512274178 671574747 719381763 395622889 224679085 176857395 384218506 301517422 649329317 915452721 64713749 500852693 478889986 996627762 369308759 696532668 580828050 235303135 803605712 239635667 173555330 26607189 776850489 784173378 85443148 587736664 593354544 459342673 88475501 806868571 985325760 62008262 213139411 129166302 264568240 782730993 701282209 162075397 471995955 81414114 278299028 846060333 726191189 547357815 725276466 864412286 581022135 66587731 40531531 48455634 687145291 244363394 875840920 727868289 819849892 134321619 682608859 815234900 266993429 428341881 145596519 193319174 643062027 263918040 446876820 70836997 461073178 825707616 763646592 337145945 442644730 133603283 208582354 451137979 619346419 313426917 286171058 461565460 579435581 422307763 790387069 195193485 206756593 328414871 996151492 281724894 24529679 800969554 689141742 545451768 282052203 859724139 330176492 480245710 340508773 767966779 734572517 113101941 429043138 44167057 43148488 679567149 343129522 286306964 39202661 923460983 981501411 973405675 889574350 247365074 329971978 894768581 143500942 395442161 479688211 617120213 747968837 104453907 244631874 557647786 431746509 395507866 115793547 793870621 916612081 386298927 901647465 514693474 138871511 61600727 109644414 449599309 452589775 560547156 959295596 553999681 635464169 897200871 923652911 41143175 343604235 267692687 578131189 437242728 109221280 408838865 190927524 939256582 183705469 369859804 324888241 85400305 358964433 799481330 475709145 944596638 191184986 620622391 278052865 213619980 536689454 273422322 501040077 133178027 122166379 761735519 431260577 922115576 929083836 10002914 300371306 595258816 113331161 118000043 277941361 363499656 161122641 844438538 666633817 122825054 82428805 711902679 591206635 825660895 529262550 983209938 977957543 697065915 62134564 121246218 515031626 526766050 169303142 327015316 436001373 402124695 354711892 35409595 119079112 553809498 642571334 115379375 849122498 360292360 30617317 232835639 210114887 984998369 232013225 702998421 200303780 984075127 968107743 153898900 209678197 488976050 989292037 390455188 18515815 108600599 927386117 932296771 16111365 381224389 473231773 834933972 983602114 41197715 315014021 404128516 882159681 345540586 243242811 377493751 438352894 808912938 887826889 986729714 568081012 112574561 121768824 730738608 350106180 778358213 859068699 961177983 971275841 804935040 648733533 376753850 175861278 338020606 64266628 68401401 631710904 60285160 306212402 875150215 616701269 57569061 41508789 813200543 985420784 882823169 789595550 446553152 259803678 216332170 630247702 464485643 675683271 760002749 321241367 193589275 535649294 910867563 906554642 498340957 903412849 374376984 430359712 147219097 92151341 935044591 586073699 650101478 488536502 978690055 988191628 653418322 728582484 565052499 218569947 807658873 988568017 521604246 698068250 784547441 500556431 904390440 943424644 54742716 315756844 77776130 460008004 439560557 44464223 25384400 749106859 84306513 790148263 168344148 389637884 907124302 629538833 62594638 172917494 466004424 129839888 859225503 466967729 799048726 641472335 995076132 601127732 122515033 86213119 722587496 752176368 372421757 292897555 567139910 214998120 167169956 65014442 571001065 617304631 734601456 115779608 373148592 552778660 812584941 292572369 752459775 600282631 336690010 406022212 83829094 360037913 856229372 409441353 374978079 513236124 9874724 548701316 902823202 715364151 983157453 59711361 20147096 164267288 359954384 609729265 591257003 185041903 917071914 295435209 600736706 1107757 537913347 993665604 270748702 894084838 209705151 848392179 607140385 883742695 811007314 800348624 882420829 186902862 730930354 817119509 16302324 768140411 788015530 177172265 74017747 200903366 856034602 84041799 70803892 289657279 135972847 96115476 175146136 714364144 955118132 781667365 297585838 694926077 844586483 258366261 902365249 387203570 426120906 536481982 424248211 237366578 951732467 488963780 175214285 278717272 999139891 820500980 935844935 620166845 424146765 51137394 927351966 882159056 978538078 464919495 774604637 60058382 58577032 943256308 492167012 675436989 25606563 314748866 602343038 878643387 526626870 665310182 827799465 149587650 658124001 119094167 968102483 302947843 623118629 411981662 967494704 14365311 181386631 866603313 292479757 256116376 919990488 649591348 340355470 168621538 366802545 16908757 336012865 142401026 715696767 838623111 660011287 228168522 965703060 545376864 631595425 143797091 250268498 965648678 588793883 538467614 533563640 537048137 183462362 456741284 300157928 479982558 860348622 456731849 340701671 600344827 754898311 17338347 168593720 755093838 742203123 793135140 831138585 80846342 708352700 1772387 476523077 376883827 974129202 640991319 639446387 771217909 609370141 704973897 804040612 545660693 987229276 887455823 931091824 647434621 310985952 429524536 919822977 970832317 428633236 787151601 184258505 333447825 736919027 6712158 138709504 580320742 401593291 73899665 378078494 955833049 343955967 544642122 640680560 661134935 529163737 70684410 37491522 970499978 246996524 50227197 574624969 174703999 649767014 124659424 296906785 112794251 472913970 756606505 740679047 848112166 989990664 911481985 363467929 768827849 508414463 76919675 854930226 374097538 93803664 865321205 728691129 351195616 741029929 886051320 133459324 195858722 953058339 448507659 71184911 596515399 84122373 45071239 663904944 895689698 560777492 427343257 767898732 259884629 59836389 507832264 641003654 29490960 722582546 2016683 290715400 431082537 4929225 436910662 515610968 880639951 879091251 577607243 793893146 705986555 511082938 340392146 352925483 351563214 66124975 832572683 255533220 886466890 868281224 786828202 532808899 518334331 122426271 288643652 494021028 560661080 566004174 953259290 262303441 586661538 676310632 605018279 99519230 828150671 626107173 571026085 890594144 162717045 960870351 180886550 193073944 625563971 686878919 139012470 381606777 759653186 573589509 472662442 838158067 358513994 184135758 112799948 903344734 432111593 63334667 392072797 846917606 995637031 164587167 919084559 932381627 23760368 26921235 492768734 28923146 278982431 110879283 617614894 15373687 533233782 174433135 158501981 719666510 13917477 434988053 376191452 458126429 81361492 298316757 999604701 415966992 257266535 182394061 237858884 544720424 989818405 760743816 903269937 966863436 331573407 854149292 461311906 833772751 647413478 378103015 531376541 100121086 988240528 415826159 954212185 395991196 51174156 42201267 953339950 19415518 981082268 592273694 940657179 174093120 591633671 129549365 81727186 962489067 146392853 366150491 58321413 665468242 85376956 170680241 695323217 875176654 153955103 244355564 517365415 35063133 832406586 229749224 368140348 177977095 297997102 107361092 800975329 42093850 197973319 698413322 389482136 423124996 811923375 48640220 953322637 632403867 625107104 597265938 614506340 937095615 976658110 711263369 121719391 217687537 869613568 571801025 558075763 876912848 404919714 468283205 940868119 286319566 852740471 610785482 623684373 26165719 27178291 423912830 580611212 165444026 644079138 953016396 902594989 807706331 148802289 767137968 207269067 783353753 437603342 17194253 595668161 167195084 580820517 802360510 941952472 130963979 318748227 419692316 297258070 770268505 750977699 940674753 851901984 388488580 251460100 923406331 253668702 849271137 900627012 837309684 848900931 538310892 690975858 367586991 298918232 805906858 927019246 737925845 227930765 401463524 181638379 962134722 264923439 930597473 847961646 379230601 402703299 741172222 878633301 292875650 802928029 207958055 505593179 940811952 807729463 573854294 809322254 381136086 945081632 422481011 571879053 886060271 151401816 587729368 801103466 210500198 413151522 786010172 574109154 600210581 226393982 975845235 101281698 891574085 451118295 243781149 964284988 982216606 550458182 102504576 360779410 475214711 34628660 285850351 778586568 596328434 446156073 233470945 534390008 941917470 779972331 669574296 346806692 521932401 750166228 473608624 93623187 776066585 375108438 960692131 992737867 827104789 722083520 149527579 572182281 441360481 130356706 439432351 533271611 466808838 889536879 585943890 769753052 570508097 215364649 783643437 117604398 37211500 941438848 492609377 7433976 718582918 94218049 539755647 752070175 21145190 78689344 250548903 731820607 963704670 725719864 166457969 126258229 701454458 176051925 604309586 638479204 449591020 21406427 626834451 424590181 929353264 512833792 277216597 111456655 473324539 579212915 563473500 254649541 636393125 303237403 958172867 382364936 341583276 300455947 299411926 840203432 357245132 179450451 409208006 347388888 455651794 48098940 32180681 218280745 286577686 634249242 386522094 871480684 737331327 711858781 470025582 673161497 313832798 917497523 790031052 45349383 87862935 515616816 233919747 745549643 190267823 144666831 852170616 53089025 300590105 37745152 822538557 319191084 820300457 647516494 264253560 811521456 142376095 19358539 936037923 776558105 743048969 305058318 877552620 452407551 744971630 425907879 697176126 219785562 631534601 853490679 495217074 513533323 272619124 19150433 141411696 970153461 779175211 70165612 376344601 119623105 179085610 630450581 835798239 762435359 279130074 718160592 7245247 156215204 945187594 328063474 722780899 343266155 223141061 628500827 782286297 769811481 620835883 987573948 632546883 519558195 160786896 773133068 434496423 173796407 278239370 117339483 256307202 922492449 165144109 117384680 623756968 833817631 748118277 129883055 278344526 469452479 694204318 380192267 329005107 298993783 157705809 151204198 290128223 762335335 222011173 801201313 804576991 77646320 845065701 548545939 250483099 265191757 658316029 467175498 828623815 954263400 31721250 168205875 245464901 123060392 292819796 899559684 454617034 397623361 541398564 611370025 60102614 851689979 833256141 860951013 895503728 322310487 618791105 429548546 995509445 898306175 715606098 715363310 908891962 828553158 203173047 915447965 475732786 791462444 155226855 805191073 159269880 616033413 726011153 208634480 604433949 240012902 543549502 19396856 221022380 854184937 755257165 896504184 964826411 746440410 765707881 817776941 6144709 936264789 389895264 718217856 952721872 171067501 134462929 280371933 708932835 95767487 250315763 181553044 620211295 210345954 932785650 424024041 478422812 527573104 502115446 112211729 263023930 855940425 586523643 395734590 930274603 369492470 80738634 512912630 585866775 546004314 21193709 781149313 313882629 732851107 82381733 958052959 653188757 584320375 688909844 973177361 534240284 461168365 624435612 465745239 773570406 474292568 755157002 315964112 238232549 696701668 623003953 277923099 699981742 341688448 752118544 750590288 922127649 559201089 716203226 370457362 630817365 385761113 199248752 493690850 810091835 592919924 631218630 344670740 964691381 192377561 841237310 140231089 785837495 491148596 155891860 899772253 858692640 810853792 285643004 734345139 630371854 505522330 542211523 179880204 448207005 582456288 647954588 939792848 737685639 462483864 868203474 8589816 111130182 605598139 903566654 666181384 333185627 671331375 306595970 426376794 236148024 459927396 866119813 925631727 581444122 414271429 453189073 667245185 428548948 833337199 969045296 743362974 312312520 636727626 989184037 783503606 230545283 825230519 368908698 480989499 386218639 754494724 445363455 623297307 598596634 319546943 576335783 960446685 668185283 567451953 408862823 415877629 825626599 988234269 912918574 305772540 597635616 870896331 628681653 386099833 672614686 906851334 319909757 947267534 309141991 405488359 102504091 247247443 769185237 765038567 733009941 101036614 335721854 419449436 514475182 925399326 520223618 221782248 731952666 325549813 953320831 251252499 228148431 411949224 389191091 10245066 992293023 955770580 526409583 460324662 903675964 929636961 538988308 10755334 546895720 607050094 328114908 306879550 428987784 371349189 713156044 929485229 303291203 716733445 191577236 220157270 52430157 985372723 668328337 204347661 645329790 416916967 472520416 512415224 225861803 605589488 208815770 457426022 182549528 711595350 519082850 165785757 430800880 494749071 64177527 25050782 325098835 497281818 805073082 917397664 655130478 554734673 833610231 928346744 690635638 716528519 673176512 161020843 847685296 354271933 922971053 576258956 904304171 397912437 112577674 737438681 240100537 466968521 745142537 714057940 433879234 830576159 970190785 925320348 773681001 568651947 180696954 396070415 380464383 122040119 842972593 369407818 292332595 400656961 489925151 220104520 33635596 128522106 387642592 788206359 550972547 927456459 618203814 915211998 709538917 942209776 366307446 821907458 790247812 160321390 763633909 229241590 643400356 889832924 243717982 188310097 979558775 571222944 570813917 871401541 221850807 758901434 458276546 995517660 16369973 541826400 999538895 291623423 784781919 194786371 915261319 756977176 124828292 157742789 512697675 892147061 517659878 709879610 978105482 905177524 127175312 271949644 470703049 640736605 754979544 596155288 969306137 999169712 124528991 927017991 173474549 576269948 579342914 51317187 418097642 676055931 476072188 552289810 528147028 700743125 384160508 659532427 530697056 303052356 477830969 750436018 215166019 373122627 85341302 951700563 865901068 672251317 709719412 642803127 36803430 344381483 386633169 730029437 486966517 908325319 585893377 813491908 529574931 741089147 110417336 297833003 355649200 877566634 578536792 795983532 83580993 757560744 917038438 540399904 21332906 681371953 644827686 219613276 390717212 924539608 918017885 940146636 172103714 416920930 903653433 960882415 989158808 95111081 719917642 738511203 837870756 181227963 377858469 870387920 892603872 637465375 111039685 748343093 814801740 211148680 740810697 760983533 630643316 99106590 60257816 238832590 702861057 537232065 658280444 591071851 835365594 470962498 780582871 506564252 652020552 986186514 717793298 381167648 12960781 720666285 192166843 80513521 376670483 107424347 779387214 540641549 511229842 18550206 975269296 902162236 103158111 170392825 15202823 420602320 269614093 64667718 356020065 328151340 885411665 348007720 176349857 515898426 463311876 953489658 391812910 880760767 71903714 427759941 352840471 852795898 635030701 661923498 800692529 534335635 464749699 943720537 132786562 892979042 298564348 666382344 783490435 438927529 411607907 677035445 729348899 738517466 499240641 444471677 137283987 309730442 850904624 768628344 170725939 195684306 236397615 933157831 308328506 209342853 170148046 527047790 721415382 360368885 571130111 441381282 713463394 15074564 214073255 349856133 279213239 984314777 751612361 317993352 970097153 473796503 445359057 824009889 823313502 562443262 773819773 713964876 861901020 890758994 530630442 21089330 284096677 350668793 541213477 459352274 337468880 958461162 758356598 10658644 718904511 260841316 122934170 736691474 123120473 328713903 362158559 952419251 548890383 201124989 922594264 939617065 247941871 217033286 504526331 755008055 54040523 556245647 835590414 868269552 146882483 823270654 511823963 955880506 695522483 999275894 652980823 921621560 206737415 94139279 339900920 48243443 353077284 846627555 651346014 728207787 456329888 206668365 955018802 70098940 402424055 999190073 743851442 387795182 429164702 520170949 141249236 612378453 543756626 568421263 285456143 473963559 852802422 106042375 536818630 55330687 204438597 459533041 519084134 749169551 875720035 522020038 604294228 521679477 817836165 48557794 800898942 688556797 280313218 155906347 450384499 973877155 41198683 204368546 347421174 117557339 835272467 789523114 471093960 308209877 912178819 408443063 357330494 530450979 627508158 183010547 684687727 160269092 745111765 195378681 926177337 390012721 333807881 3386090 52717573 8584395 702676981 955223845 147545411 677295027 442479115 629578719 247352146 438751818 792376871 195839814 154786590 111723181 728394998 914880055 837898294 490232173 504833055 585347966 977738995 441369721 304952096 440851244 284267523 767520511 910273770 380175951 336460375 932905942 627065533 582320514 693019962 853426472 63240263 631468122 42043284 554340150 235330425 751680467 517287949 330559607 651468679 761032788 781074507 989911993 341376187 122865865 172539519 320198432 328886611 40948885 721030383 663239436 56154806 253159607 437138268 255404657 898132119 320482531 972678380 524284132 640045244 545142130 757194884 465563876 134915027 410326718 609411438 41134303 567380686 552221862 186264584 774500131 767098959 952427854 401272438 930254697 85591611 610401069 998634494 953000127 205154498 698442573 347045433 954224325 86494297 65280665 394328801 407192124 259301489 694101935 463887125 774100522 708910302 108376530 308472698 675183860 718602917 523486360 16428855 72576112 935177605 872933474 230019913 195293417 13690123 382455231 65014362 964663595 125033517 522908791 54365079 721621863 818589762 319200486 785888750 533286961 213792420 493680267 490828725 710344720 695521471 235189602 690720781 198264085 150621310 594937811 181951408 959366920 513887918 824266341 372924238 457972017 568025210 551327271 780189107 18361649 491937772 740615866 664545524 951732508 43983090 671831501 138841987 895932925 380373068 157665929 325699099 654430103 109830730 157508042 431892913 437247264 854546072 696667293 930332120 843023600 416062359 961570710 34467245 402183324 645429451 173658435 601217270 644222247 114096839 88054277 525230486 909641650 880540631 72306999 58504714 55457429 807099520 926577647 257640541 930303380 798513930 655450246 749993006 487001122 323888254 933360301 224255425 276633410 20489507 178940957 470773662 847782528 637177669 263117081 855125529 139640654 962724558 961442984 209879702 638871341 736861891 204326893 794529204 223946745 752879045 941486582 663687274 101149482 334889495 959380789 974282173 899474305 17692613 284663873 808301443 253256643 716215190 33666157 350925222 487544283 394619477 385385175 930911536 806027770 140665337 217493264 716053184 266588516 919551292 408099068 734320611 899230598 154529811 937288271 569808044 212567783 101846155 404046483 559943401 740459677 842836079 341874800 364856304 957489727 597978023 269605594 391690284 4285414 341847932 852793743 423025307 169481564 861403004 546190453 96747868 499224565 170725637 516412160 281624614 8453174 490077596 565106807 991455105 629325613 201551195 26516086 800167424 655381361 683883510 283637437 865133502 62379478 917792768 865687985 698809082 334494642 124806562 752330608 824575026 629008746 534808364 213695322 144853178 886716861 657018850 660209433 972944637 173976762 964659752 626190187 463321399 445363263 611948071 284454687 781985936 473392692 349655377 634149363 920978372 891682197 467919324 175537036 976954631 149770293 377179957 515135076 78635457 951243102 762717261 468933977 940758435 252221890 882895856 84181052 532240946 916578525 121533537 836458870 779978902 365892160 648991368 630627302 511140729 908964826 153867863 776126803 93225523 568962052 877131590 640514561 766993365 404779595 185984070 724872555 443811670 546455408 890578044 773630747 903665441 10821903 837748505 822689395 881623411 337155484 115490430 684219821 337459893 370502999 876459874 709010406 862189789 716833279 354861374 468685758 437774401 564121381 685612815 202769236 416379319 620061664 605805583 781724442 531818518 703707389 749071662 496835622 178933533 277209047 151291599 298573047 964492622 507664979 266403639 239644953 251820535 946927031 219329526 671209300 126302695 906488139 688029648 714845869 986554859 623957034 212919346 873846597 245886663 503908767 852419204 811870062 343682878 138934301 430248020 249726993 702838226 900987547 632334601 698234855 177236454 225728659 111808056 508002974 698391503 170065416 477398340 476470182 628407260 187535740 872998187 149360868 496808795 64293016 155670942 841372110 86319313 125719014 336262690 412157168 6562548 674481955 623856243 160813474 603397288 173493671 543135734 887289981 907641697 739211214 481740833 697701909 429882030 997844631 495007531 689149280 90389393 128726564 272008120 576389464 878746432 669947458 801777626 952610845 946810933 954938460 140076411 871085382 555984983 96678881 575258493 894027156 942594772 876391790 99662705 150101237 530044931 618943470 167543765 162745258 931651870 769288369 214324587 453538585 970363642 466741403 467944851 828404378 453344976 38193112 528496896 607727185 298302694 482653456 108075878 818933761 599525319 842124181 380129601 349345057 696885772 565237341 362986031 400466084 63564401 331559549 236876924 186600505 70309450 842823426 672337443 201913450 356202481 794751889 351903678 311778654 565814021 815470726 567524278 87356844 31920945 232997336 596745513 269341468 713271398 342491544 214464554 794732650 953092393 376630284 488765841 297604709 200556031 716295633 302172833 43836795 359012472 168295762 907311096 757563894 526353756 574762628 279880428 736576806 240477621 70986231 438979738 723967053 470888285 613329949 936537929 230858321 12725561 449492342 135746432 156506728 319665093 991140192 794601030 172988723 401104026 654918733 800662854 15739832 628087124 872421159 388137276 661570789 4371111 681772220 118760980 837033756 190953405 736297279 478093665 487419236 705734653 409887243 455740304 257841857 798791037 980854255 426566888 537345308 135836644 890826504 953008588 572761567 834538852 986443010 965076058 532997387 612875684 911994405 648188498 423342700 156381369 770063818 24217282 166830802 117796686 950228367 938031648 224555491 904083634 322478203 602875330 599705006 279843842 759653419 346283858 186649685 367359152 558830794 972133084 616466954 885081071 565589612 258390182 659842979 330182442 370524697 342843876 921620172 539252894 156884288 471648896 367279893 769973332 656185464 232871909 348168048 273103787 630489565 193620903 10044419 727807108 656544907 764286183 338841921 502347288 894172017 417039310 131977038 471201794 812167182 123628539 547873849 914492196 352227227 289211791 735644957 850030074 22376781 184414114 726957601 150292026 278520541 693373818 564921837 389259940 558866617 195891749 72160624 90648928 749836430 851476008 738122818 644065719 254064695 387911256 459251262 920376332 505284213 253963772 682530717 558869412 711661516 905959806 19088877 150137396 720307767 139135203 414004107 920901572 578387961 62699240 551193730 595174590 670064171 311925579 132900578 998725890 472922485 421852450 154444722 629863309 215131295 876938997 561745903 805332370 866658093 754275434 934204192 956384304 651681519 955749396 637747323 865267530 715232136 420801550 797762755 309524103 302614802 99421050 142872370 911385546 813283831 153075459 248732173 227939234 362621650 18642490 9688272 332232703 626146400 305214979 584194487 143474546 438352783 779862082 218021142 155215277 908994560 578754482 961770313 162989120 838623411 633863617 356228684 24394264 78686627 915117930 697571802 776473814 787551376 323617018 818497720 569349284 33629609 633282458 583250822 106526464 873067935 397001854 315349614 663040565 336167615 380821288 940236838 591665267 36237580 754717863 687372940 316314933 702470498 731489361 745702673 583612011 463356069 704763489 443523941 234953204 334140664 30453633 799734619 488572270 852038509 293672725 75964431 752810639 42283031 55760549 976252415 129470516 449168231 883251275 636195402 257080080 371102654 891065428 615610943 51181904 352176703 74639079 363603676 136732162 377641727 18322713 101770681 490366478 882894138 957035597 935536114 599280735 412570661 787712537 768248311 972831806 850858599 322360311 162326511 730176235 149334974 421344313 84022698 794778862 613808733 396424503 295867913 678105146 384488740 616778599 993149342 713446644 569227154 176102614 296564752 718075050 576133645 249052044 25499728 771561315 222689518 935123022 910371190 587133904 718051947 957816020 55901528 784905823 824189980 515108732 979200839 119062511 291027030 99402247 348910079 271361420 498625138 42072478 512068325 193511210 231426063 549294329 383203593 288690947 777814470 458617936 594721148 645907030 281304795 368626487 278086392 887579200 689821132 249559072 314331978 748601750 766067891 886733873 49198737 134530325 703062958 615878478 402841696 943592523 312070977 822252155 796825695 357254395 833302993 513385554 459725913 936577955 883433440 831618900 390960507 922774210 943883171 852899499 556356417 543262884 795723651 466463656 608297543 959887054 708587891 899648459 839165403 165197431 383658070 947406407 533441023 818775970 94759690 809240217 597715607 770980659 44471555 890967545 820982080 537994502 471062574 630435485 182646477 989109665 985686602 662983480 974883011 749965522 53745467 647395769 145863509 606670935 155581382 250828222 822889096 705026915 155445352 855397180 153260362 931966157 356510157 920584390 233047679 508136964 883535817 958583807 303164745 752598569 994470958 345814286 35364555 436497483 776172496 99111924 693956188 184495273 571652154 178082855 873201191 365788465 705722301 520160271 317138464 954245124 983423143 496327153 205060821 150450825 9532123 966099188 899651402 590229790 408771714 977146718 256662883 316535220 16229911 723522781 496359912 527569313 895131597 938144285 935655583 600273078 130572290 666124967 144496350 813203243 697638749 257444416 54884727 553911143 362011192 875104944 935386017 387247883 958551976 981278632 493770844 51455871 192182441 99514858 498825880 620452231 156648679 306467886 85733462 652297031 511311426 753366687 298667245 196888085 534418606 746497844 642401160 935262699 855954938 664469272 381027987 980976136 265785239 681415809 908819557 15924058 795002339 59343104 997871368 174120061 959406404 40491011 516632294 783271699 602959060 803080034 774824236 70302089 977272145 954310078 554190082 891740835 172134858 351964874 991634100 733467468 131735176 79696356 506221034 758419937 144780953 797398892 243596205 231579208 431697570 492015495 961703551 452582979 471495858 114187712 153486221 161616899 592609466 354595837 329576747 188779874 610813021 38845962 243275676 299285458 644092702 347644790 46248924 784985064 335917815 151486128 584419267 69984627 230014598 945893670 610208945 577002522 269304035 573864944 768897913 443859756 138025409 456744057 633827488 127352691 299741305 243280192 59884635 587351719 508297378 206469048 79646258 256661641 226662714 824370423 47676186 331851728 978984204 414242890 694188510 830022919 434316061 632730422 624044489 886610194 500374202 759256388 609888789 197491302 39991824 440899652 113159297 236532390 641869504 513484034 752900272 489535155 639424165 755800643 683659979 697472694 159348930 725517633 957415682 115263022 134063685 715385973 778104666 213067100 567584373 464842074 336638495 768864823 769302429 565361382 447028975 658695166 670672086 658996435 37269780 251052678 215709117 590490132 814631486 63155799 722810150 838672230 36672275 135699204 356895614 666577440 939396803 945283738 817115221 322909558 566710151 892367846 729859763 308643806 182432259 507503337 573907889 558411378 219348503 981282500 490086276 599264410 928125753 931009570 418044079 329265096 945005141 264279183 569144504 410111107 580785313 985173946 205628421 532604215 573265993 681795609 37303479 270260546 645301934 116877563 130887076 806389597 248799058 427245568 847982518 220636912 563426518 425039377 700391342 836916909 619214382 507916347 239627920 927913733 145534145 795897584 732424857 41942576 356017710 41953816 502390905 684130055 499155187 91447172 956646855 531948705 357515879 460642603 437850514 948173306 241770439 111676104 717446228 476336894 738803647 579257156 901127319 190124771 389764038 298274677 16370079 312977896 292232329 713528425 895040897 715698089 234062491 74758003 296740472 151026392 411511383 779839146 55935090 542634164 257689149 946875567 83851018 830148011 175366538 317185763 42221362 3404937 629492111 582404802 706016208 290219892 606352113 92044368 517503731 374975009 190669611 824973056 353152445 810057203 364587759 118394726 629831907 119762705 67116250 177629634 202078836 457684732 277628136 842276954 698446141 76806323 496439095 906556990 316055277 596162342 220390925 844089858 688792709 173035490 653174905 688102158 284831957 681216264 366464964 808519413 337487165 908569513 855675597 695818602 347168867 726835980 989256627 298968579 928436735 842607935 438210697 679255649 687988837 430192178 199667677 43334930 427223836 449332204 737109760 847383203 541403435 54586014 169073987 249109269 997323828 212438971 806412343 415199754 638459642 846888385 236385379 767378968 443975334 546034473 181513621 519228936 650863880 143298315 934168720 796059497 144801712 387812017 224920705 605842495 42435035 823252321 117684743 444522748 533967630 982526210 456430630 720979166 351871272 623021057 426704313 791191423 336629825 37189015 601033931 777523055 549412653 478684472 865202405 331562141 737202621 340706953 680349080 38988841 410476889 891812258 638488506 395438368 38038790 326565149 109176196 176113390 512033067 472432848 210575741 994208047 948831302 94682673 773415581 151951033 244909692 550224365 137454129 710406215 166724084 518305983 839998945 871626575 596074954 283743234 782177945 9110467 814957766 273762513 912590279 33630574 493486865 889108583 719924118 167415150 56721565 459219935 766583732 692130717 231788537 82639541 302400107 259676122 235960705 693181156 949195680 149029065 300918924 710792072 634332768 952168656 822469352 994947017 847628872 510462068 686548971 462326579 774917542 150259459 610879721 153170686 76719101 647708559 841032564 312193142 420765176 947419354 260579448 238379397 448439960 901231934 121062703 101266802 654541534 59876631 848830778 711873059 264669874 77634387 619419802 828420277 751275776 417906337 582643602 327639700 251148089 877145159 436752466 997778446 99110522 78980716 774902895 863529570 111092530 68889094 527045943 516360345 518068759 756587622 388523026 709310189 134242590 627026275 662875594 948463534 796242822 584809414 369143292 597790757 461774055 804266559 239824472 874200213 362376903 616869789 425877248 686964687 561743395 375484505 173277282 927447333 945536590 635899043 496156297 948582113 966592066 573774804 221340788 539486169 831976447 939091271 917230141 539746722 755158564 820737099 242116693 322007406 159704388 656102022 785813742 578701216 217645156 40180226 121546377 447093714 803356004 59013703 793040849 20238224 994880201 865842556 784494695 296586341 677462589 33651192 79092353 590951294 292808591 974815173 153239711 944653974 40158745 784522138 250849918 530543090 846019706 572414939 94586546 862477492 37012374 606815736 790223617 657965090 625595899 896285337 879922407 382255154 292509784 625459810 51417572 755202518 664474656 204095606 571317824 569667722 840759107 295805777 154972748 990832579 520348842 303538330 834150339 81715050 987933097 372875559 561317513 120635330 21445883 874068611 189465888 394559728 81599993 154357512 960048197 206084050 133823461 109716891 404816173 814384044 472811152 46583798 662425193 877838972 922676697 385528758 76756554 759194968 460119915 565034296 944957668 368321645 875002353 594451675 843724366 343626129 607383231 475940657 316416160 436598118 157999930 780439328 754100364 432713778 167755960 8740925 667100425 575981465 769709122 779124417 604465755 304644090 119473182 230027067 976846855 183843481 888044115 579763322 660097023 411340368 334959835 156533596 273512991 80789349 585949712 535731045 50436679 609185687 354785471 893822417 925082010 183648885 155512151 774161621 823246640 788566269 373796205 535000547 865784542 482353916 609753887 51195815 994735107 831471160 490250542 666114728 531412997 192280199 23995665 940604524 21166643 199658980 528019769 104207864 471105028 399540986 200730879 335017429 55492668 945158135 318985678 295199469 953311403 726128367 438439993 626267826 962578533 10165144 383756940 833208594 282304777 527729802 124712072 219285874 34808443 245340974 256240863 865935347 79461347 576303083 692865290 488201690 577374500 727731110 907471520 160556573 212593081 49833144 870274462 393263621 73522035 827618922 457652681 647293909 27674308 743204062 559935935 313757706 566423935 499622490 846464108 922701975 613481869 942054123 842568169 316043586 145811036 133845284 895776542 182826280 78757723 22052903 814101800 571909968 479401071 785952233 888813976 274435596 2421148 749874313 142715278 64013611 753310366 750765897 780477140 240162111 500710286 179121486 447854322 477300152 168663423 244545926 256973263 648142929 599062815 991960426 300809768 299606790 591505731 586979554 21799580 947794229 68835049 654949447 496413537 979233980 674255973 586813767 266427666 432123320 629003759 407748374 801686906 816950998 939506795 184320310 157204733 857902024 139040032 902955969 454183379 417425344 855458661 974228669 514077627 230871073 687497168 942945986 567993604 828553421 684485765 188546570 804945896 609957890 355123227 645927008 840873248 707335308 793268610 766586809 18254738 694501563 968490079 443710755 658285370 250923860 720878045 393507523 624741239 65914808 721061102 586206020 905722600 337332903 266077095 492130485 154867155 994673565 186883029 524312759 648738508 337989897 577584230 414359100 924358519 347122747 599851767 856296554 440155190 384395329 232570502 510375903 68402302 188111080 707460670 71276429 414667624 772000080 812173194 939961881 998239563 504549097 779005798 174573094 6263901 964868674 685445038 928514762 448518356 950037876 451188596 825572127 535211983 726704187 130213787 197739153 26333166 257939678 816653609 244747822 367222867 495753580 726496917 955122826 105879303 20287285 945465511 5216730 566381194 787900687 981835501 548777134 561089670 481354500 157516870 418824189 132725158 696377874 880352951 116514617 308987857 250450391 874500743 938831381 745386818 401491088 258949471 325680754 550252672 977313416 807993751 713378518 545647105 965731558 332715946 343285279 375599871 837094896 90684177 687631652 218093395 453300358 815941685 693984765 709382681 671900695 483488075 20427249 851867814 177918321 950136894 975545711 896051034 293882254 986214748 234935573 331052633 465470139 781386295 279344077 317571737 664948548 196005167 750012735 830898920 490843598 877377920 229935434 54866792 436098774 392950156 368794883 635053910 345708741 495393397 67422039 656672609 625043958 800016688 266842938 771658778 68460841 773800924 425395853 211813967 239163324 633219269 435196524 29867322 274327399 927728591 573610387 70036525 258772404 124941159 667429485 828095472 669877927 143721329 249926382 488847292 146547877 146546476 315292496 819108435 562440380 493535499 235976100 832160818 689050368 408942642 204487676 968695137 486113102 1351208 455626394 86955365 283777473 842379156 151075898 175918701 548851858 595182615 42408799 171224192 168701044 855664165 815905151 275550436 861054050 465015825 781261701 662534167 72661722 879701635 820190921 371121849 367957908 47964038 485168012 493666123 180447739 840591150 150424459 615337534 459649290 177511618 31060706 668062753 938737185 187410579 433425757 160734114 993761110 195409766 820304548 444901679 905795514 339256262 736761165 721797238 399237480 136834120 294280797 302382954 306895550 996397162 361915408 253054279 372994448 341812521 884962840 959584882 864273635 918992187 737139738 5118480 63761872 896339552 176648003 877000311 819457454 132759726 934867140 584543698 700955855 701463142 464904572 801732741 807984102 129252235 819932936 715781934 145555516 519631559 168484570 469244724 247961425 361958257 609223593 611651776 530054264 130072722 776322771 551684920 923533178 6379227 923835085 881806596 468222320 665115914 950675270 793151085 12341852 16446095 336534986 318495408 747383872 780389075 455047801 759671557 192861010 689067417 888694878 870185995 771238428 300131770 583142470 200173523 292684135 993114568 104342039 544621089 186542399 591701315 75530456 756422513 67921573 894418560 763372403 19192242 756119100 137426319 282716627 801536909 193391515 7927730 344780294 411644145 869909499 792018083 300956038 50877661 605215692 278546303 788310041 666044440 798296895 192669756 573131342 382997288 674628044 640550701 858371348 598772022 905028742 744501751 592720149 291306558 45391505 972246162 17736386 125041742 205330982 957056816 232311372 813282871 875440370 490412041 991199316 413617092 958274133 806948531 808587644 133243771 282971082 117429446 911094562 482598458 750313578 914747107 172280108 305466545 361868793 631710592 436108214 440944456 902857960 314078511 698110965 677418528 307156712 690589270 689268097 694608420 144464562 961043593 317335927 162345541 630303463 572571120 32021034 533360927 939222221 83432767 934185643 784563559 377077137 260520634 684906675 376899410 378688646 702938806 931961604 882263273 743228451 94038647 819700279 662814491 942865615 541487254 681584921 179381989 340063887 567401318 730792173 708464034 365025147 913523796 315957262 40674109 77997327 594434032 70798098 59017131 700529977 64737181 243255510 346939266 790110971 905334456 289942053 737875485 332697740 866336628 650174951 988052693 466392040 410666784 963109112 390154871 141606607 363689902 969646867 767916644 230862777 527096995 616596123 579366742 522773291 195392501 363831309 768528136 414427169 645914492 954365535 85481507 714964375 42514047 288544876 700528318 66132479 710657871 133856598 581425227 669132086 418476091 79817558 423358564 529944217 76944715 773733767 316887854 917432666 518159157 260817540 494528170 664831119 100876625 908695238 190167859 577802405 83540149 839179326 749094707 272498124 561795589 111955902 938039219 674302151 101989713 223252021 456160242 386768864 267667689 654156821 117489927 725147251 663935683 934343872 404868149 759871919 115777756 599447509 256563433 295211544 29395990 85304171 480167599 455368609 43497681 308272053 270897740 152763012 721629817 561171907 279490834 866806823 628092619 299938717 607711381 315384940 652037574 495695557 620043354 960322023 296753411 954132467 181958118 847202344 133279711 976850812 477201479 309099831 682770672 195070835 655243103 522393080 252486541 820894952 300483512 421480611 627974359 149807926 328870833 175657615 431806105 96446822 384090606 359714646 472429241 787277043 341061176 236492620 785670572 296766107 621184608 13510723 649257896 561143151 612300297 339621570 526524968 5686305 684931895 563348220 387409030 976777515 182221886 237118982 879128336 303551488 622632128 639022879 896277479 926695018 156050104 726722454 603662844 669599945 235379081 267441743 231815194 905285151 782098142 791729552 684622569 718088415 807986786 675105310 493274584 112078481 480003089 239835326 237748504 119907963 669588696 254136934 591639494 153723434 373291768 529684043 719229399 136098905 264402615 671753475 562216936 565949434 340350596 962139898 965825982 5771378 873562696 233054714 313049802 697579159 580702730 907943160 670097835 422047586 629626450 488312897 521954057 739518045 578469378 390730120 905675253 905268951 542509750 633064382 678721319 325948542 959499369 413240207 716633084 953652435 959178896 326556313 285974794 975729 563287779 465465869 991542990 799623873 62851997 697130519 265539862 696478441 811319980 252005505 305999363 950779356 896973380 137668684 680025454 608220593 7466283 464055674 544239888 950863133 312991446 236458328 474744385 897254595 3589016 284186222 552274626 224536149 207664638 371173511 159471595 334851618 410071321 760813778 21008464 517152448 120320541 703407431 542122621 112827791 479009715 25266995 247295267 31711406 871515515 525072805 269575141 880211532 821129331 235034612 173516627 740338160 892471937 597299100 208743987 270639592 968178244 536428281 781158318 159599513 479516123 138756053 597704462 144221415 608141364 91345156 603334537 267882505 496099409 72534304 332513619 550931012 51746764 482211818 749390396 312988023 264330569 212318598 563363707 720778218 846441756 477114612 591221513 827366872 335046870 962261404 253565588 167869896 739082335 893821146 884212128 82009873 682502209 798033844 729665750 22442091 824242890 802019637 637162430 843854096 953283125 803947342 697166136 428027399 906082588 836712633 509484923 935970013 3185433 264399214 425921370 859798658 718171256 916528127 498074068 891538647 48635005 898042451 582228869 184506230 159617126 700374320 593651030 256691247 152797808 798232454 136609660 537915370 252148500 75256792 188575420 960638555 504911084 68921760 929322990 364066334 100077149 365898963 875327705 970504202 916551514 836092313 731920332 481190120 254260592 716381979 486875549 236820789 847627304 951383769 396480365 625284984 830366518 780477203 628243392 647467833 266702095 84545943 699724360 611390005 153267297 106780448 193692511 898620672 880866882 144505695 438334825 709231346 422239040 259323762 163906067 605948565 318420656 890871149 702579083 739152199 936252418 882506331 932957520 749872163 162037858 796815707 490622770 577954347 685387814 965669687 989918152 704390499 658995320 747998405 274702503 315643750 512344882 986028658 905692581 190979531 371495133 30476241 8846329 788922669 435861417 838142545 358687425 39067067 705376679 732898673 956304012 949080745 979036440 604917235 340571333 731228819 89850386 579706501 903917302 345325084 397055364 447510831 863086003 613143012 687277480 686585113 993706717 510843177 606396965 700470765 500012880 831811471 60763147 848048718 232539105 392533161 517028038 364618317 933485304 101018998 215345692 450476541 397650982 612042167 852737291 857495549 471480114 948691485 515254434 176558242 494441674 811391736 202297672 363731972 294496330 517409375 482961672 59260699 760439635 730555137 308122597 661604203 217755036 539053645 597796198 648719143 461964638 965393181 92379068 102440405 104316838 548417160 208396994 248780462 437432177 856258715 585173873 937868893 293106433 857120416 453277522 88693710 419663361 677013093 211770940 708064351 413905077 281461422 232424267 420186356 449709459 441280214 609290760 607794758 919491131 815114236 29314130 255916233 786422176 638411812 890629143 924884481 52965998 192300301 600393233 653741200 915837229 413720204 766854553 173214832 558918509 899013134 440178359 613404678 490619562 339744645 557052270 428105749 697774736 438590351 556994191 909807767 823527322 842590205 41528771 66601813 593636703 308292870 898716978 935610809 400596064 854501694 281231871 453494656 565043022 207488741 970229671 390270204 989695603 429678428 527698807 151393665 399267817 459218213 510238127 702550102 409708887 117772443 304004166 496429388 922452005 561901510 195039432 148233254 387469283 659864922 976769934 367554775 434523434 832687997 358258765 913621000 392773030 330245874 742889749 334351589 811764200 713048398 66134160 177441244 346852266 98201341 883271087 97447570 658483963 970860369 856113979 981620375 496089890 69834903 275705337 457096221 996544269 587746852 917837206 160352231 440833069 623463673 384332163 735792462 56156612 812974113 176811505 216286328 341353546 7326555 493109474 594973582 550992082 78297900 375215449 942568362 120832890 869619814 341220607 886146665 121946983 871492328 85454946 758770196 680746880 988838420 345685999 277394760 56039057 698774095 618168133 237858840 251145643 596865663 195098710 235631502 34649559 569785427 464877399 175988792 183149368 271045073 139010215 183137895 445827248 741247408 818211887 648945919 286627582 743602585 111000011 464704717 507758957 784220329 366650135 152537904 990006333 929164517 909371821 724252474 841681132 800632916 52839920 164378168 202904512 865936860 5727767 152137137 919047210 341080817 555669392 888969020 516513930 176032073 553665607 909656138 650781234 668402950 686507620 644507803 486549239 100965874 896904954 333432148 879142627 596048318 101870235 46704781 126136624 45271946 457228288 920226008 190943165 261354480 17620308 468313330 314789410 838322413 766373262 485156194 936774759 812773474 130889480 620442204 769622420 722994407 252725711 706188647 794684307 458140000 705339489 548285244 804354039 407175159 788280857 612390572 746093663 19758165 744664893 221438848 789399359 913089656 624729476 932905940 275213750 632095592 802616136 721275074 10491196 403151108 401469777 680346 923730053 386437092 885213872 32046783 657808445 473371693 837973825 426637422 595344120 310652773 5168675 45055990 842735558 84829051 929480581 705709518 295954047 772205177 523611730 952992877 275143854 247461034 791112831 439666928 210347337 626180530 461117342 690865820 219130696 923548153 710784452 539408425 694904611 505126647 692653971 326870541 737592786 487782241 306572503 828151318 290223601 459692997 157433899 577832045 550424652 908206111 463716617 121827713 748965845 48624686 443646332 311691790 857890105 722282584 411781084 933679639 130971871 577962709 179675021 779065491 194260449 131145502 211628396 535535115 260638818 373221888 545996329 740784466 840423798 377553113 256443783 283958722 51687045 119238494 380271498 827987497 150814526 596014060 201778999 445347143 281236328 408274355 315678118 496528631 748123786 241634419 125699539 221655106 137162507 473552958 228442878 438595990 29892878 757671943 671986820 619345314 998002019 925047165 309249506 614053826 271938536 118026017 140217347 244736281 951854758 153272144 649811855 308864993 212452938 24860239 288364617 113576654 342973680 409088025 67480844 405615173 550212244 894601693 900715689 906225395 258857771 449849477 526333471 906362606 196593110 472390824 987049090 432056470 40527447 281788073 301747703 939945144 141889416 354610753 704525243 105549739 648770956 852489104 800125329 569553693 685561376 688505621 626258469 180693817 559158107 659228192 959992965 261093604 637357037 269203522 367440251 237455582 721712310 515867319 122449252 214044262 954295644 527371124 683756051 423008448 565681387 979804393 464495839 882815034 887313829 626023491 992712595 615026328 641436473 489994158 168074021 274077847 234063428 353516749 36814968 288635467 839864996 179928682 477194500 760210311 718845065 938399066 957449070 696117403 293388294 601268917 214144831 613845946 698213710 520967039 58479225 556840734 8629796 177915168 830299090 272133406 81554396 224363072 734928297 295187703 177892434 71016018 441428802 956446515 696410295 579909643 226888795 261536794 572371725 929661901 665995561 682668798 75457608 237077583 683808059 325361750 742416599 196378646 299715788 806954665 789260154 269497228 612847857 170864845 839990721 719087445 748110460 713911186 522523213 39746260 492196601 959577223 344995825 436087241 150285338 855339600 332527317 35578375 607856024 429645550 570879747 129482017 702492834 872130313 563484125 188664797 461890187 371477708 574017783 811832220 21103074 215261943 472092077 802709054 515154221 798412139 311574082 452258256 602425601 654341411 539611941 378551963 670287049 176849978 299919942 803795289 431003477 641684411 338837397 334621347 864793531 315612033 727415800 369350008 450605083 56112319 69193402 265810384 535085057 438785532 753867773 193031943 289957579 431942877 335822126 473874403 932184915 12100449 491962378 930767114 56849692 39915978 622498947 413031958 636420041 886384716 411301891 901083816 973519513 32561971 949216311 390057614 513337692 417267334 454476703 551808060 989509071 948197734 211258312 976856197 719690550 711542785 416470933 38062831 914465319 156485730 264521267 325983508 280172930 242252879 403600037 71039129 520561290 62965838 84319847 478581514 198776583 76067616 79209481 360786809 113592207 402824068 650843622 955833072 2049543 318540926 767327969 460666314 562553176 757566667 876793790 660240138 527496999 902747916 623165908 222827089 62352733 346648548 532040171 457629156 14117384 404644426 436926427 675442074 460254186 76180247 278619246 995755149 218598404 895035483 594514423 483987100 594492268 417941694 56487965 627190014 854417812 205196266 62991088 373667493 991741273 661451506 621262962 287776 228501948 7694664 383831821 588354370 830262840 355977852 269765958 39438967 93437596 546975205 836214903 546279370 827023088 441405089 556156880 236767573 183127738 625181726 57316641 213124576 484790994 858050801 59509795 343295469 741936509 467853379 599134252 933699442 185430257 326902994 481501851 628443448 69441885 366947522 678622979 458570096 72719703 507874686 663035380 139695921 479548732 994888416 945888807 897751643 234991577 577948935 958571225 759881904 388781433 659248148 916292148 533188084 998021010 7014597 423123172 548245702 969891190 255498396 730338032 504363624 651956988 152496289 877278596 40952740 738900347 484781576 234602923 499763525 934770417 859999045 384926607 294588950 217484577 138311055 852531488 300696128 744367285 959118099 382081006 898916622 285404056 874337646 385265825 592962780 797504599 771672967 467608818 222430299 976434164 832719837 717216935 432206713 838484998 81598462 974708831 819783922 239950909 406975901 600680590 222867474 863417437 935772340 845541390 660683864 388769378 548606684 158925670 549184802 197931302 746789744 36346835 49853545 903375953 966603761 224223618 572585451 603510597 793014379 689780643 163156575 731888488 683742827 272961446 411219857 829010806 874100265 335604485 900215989 647087181 982536679 861191515 589334555 717505467 635815983 685041708 753225915 569626366 352570801 984361944 528609881 10042550 948219433 707174180 757707745 485097020 332647156 166726886 354127348 474702240 288432531 528697011 506530847 372349812 74749230 749874993 348393120 927153456 691656595 925826662 193288260 302419738 71363376 549911067 851151160 708864437 435914845 573306998 908940769 510409587 493940040 120508250 685784638 35307655 417766538 150840655 27460516 861813555 24773332 114246991 76767688 135477928 616269837 619909817 926097537 762490389 685601037 375071177 435052805 486281517 996173883 840352708 395006413 410077128 100395236 109599133 926728189 223035418 84932926 519725138 120131995 501476649 86930305 108750907 303788127 18513830 631788843 785140142 58598454 905721630 575690674 977692351 803432418 658345667 691491649 478634688 108669283 223538681 961844749 350288230 25516872 149301678 258455274 103165526 830814030 556831008 931840929 241938628 632068279 646051830 67138360 615575752 691456348 478010415 749356916 677132107 389241015 287219359 857688780 176467482 247789358 973126716 745297296 45741018 386981707 386409933 232069913 273440127 768144180 172266325 675006947 218411142 502045821 992944805 168320688 370913638 359969650 551689518 433723637 967203085 528003046 179656277 280859850 834877247 997931055 964316676 661661252 699240918 223146771 737196699 141446426 457746208 699763619 785782306 589768096 626957276 363644045 291157816 693174539 658391994 29921943 399330186 179037343 114930975 207454661 331372070 823897794 142347455 744622745 651699875 496513761 66446590 85182551 719669822 107550621 454717558 661252698 922366558 257239528 571775949 616582766 125604103 131980652 673834138 284163076 145451930 488420200 148701577 257159095 309108129 30701108 576876461 139085318 385604549 271366079 781680760 813114447 555993547 595909269 305566407 995420672 72212465 578083841 213357292 836950725 518697743 78823807 958920225 796397388 208506662 527476126 203150137 706162387 466530619 789073823 904919972 508888583 800244985 627743941 394369482 481148251 979598098 661364783 558422521 547737448 903964773 721072526 723879051 310295003 231837910 412082178 210628766 538109497 643393758 306954169 638745584 652352210 150177379 412549933 299728871 193467735 339099346 370945061 917946866 60699684 954392041 502939343 329382711 670924624 96473939 728832919 447833662 636491491 926319533 459136009 330163386 377906679 701579366 454971011 389391976 701575583 484845979 867133397 988710397 137765101 571641032 113714241 441825247 775850226 216469698 393714077 464271642 423822957 897015281 557110252 79781911 94068205 118328141 610081174 455585119 867382489 840005522 488109951 117085937 135151316 851699795 64154058 154939734 423269369 39652860 533880046 482069872 284910027 883856019 608051494 211848300 676744334 890799437 92610205 700619577 771320438 190238348 868474540 536896337 275227813 905083893 962886405 129184765 562625173 211969310 623003688 602615613 971189902 539585192 198018666 711315536 567857079 279120767 952669822 925506490 981960362 854367366 423424201 577760675 502898939 609309652 153576611 894514917 98662033 596389357 939741189 165427125 410537064 863248374 709912582 356852159 243377848 594385505 681698264 41213672 272412508 350306000 31981538 651625274 477093803 416720369 17558606 169628793 131722772 963467130 333635978 270614237 451640431 341444225 163772429 279915671 430985172 248850942 882713152 55569129 879358839 77130658 735036789 791696408 809909786 662981840 879020930 471040646 86480634 121193040 326996925 434282349 662981079 328046481 858850506 899799035 494507369 295645574 662577400 570328841 168622866 408246222 94847178 526047420 439173327 976668006 978257503 698872370 973265007 36177196 273851311 482499890 637420357 718209015 985640137 448481669 707086928 783565821 200762785 213910326 647112691 384934840 429810705 359141917 828742904 698677431 543434658 92196208 609183015 456528871 529981357 892032899 264940872 309438262 647174166 684667570 516963604 137173304 493282255 449313043 435808664 65504150 450330549 766596699 745323010 886322134 791959199 89300762 188802208 998624948 211718105 884231955 178086714 349517948 978811796 704360497 458259424 142275900 567222423 533816204 566925230 275298468 707197876 382207610 232359009 34432013 358346428 851241406 513084133 218179395 629888010 303166000 200010399 606355776 458975881 855683191 320043569 762748435 885741225 683980386 774445693 180261245 10015053 328735561 2020505 321511994 62152407 275124783 443409860 246188992 358769653 318832617 846417887 257292941 636175737 298307047 285151547 254359825 708782796 850151383 460052124 710461626 697474186 313956966 510195272 314108264 735658018 418463705 878499280 506929064 872829707 80043951 984970303 643958537 928955884 167606100 204360044 583707536 565884162 456001733 49996585 286675898 296503376 804483661 819845044 281629197 226702794 980342082 214785907 453353908 520571594 251187904 335122613 376111890 492452321 336209372 771815165 838141114 733968553 552646426 526004402 528101999 152949522 710245115 441516675 667530690 96063285 305618504 476464033 639707709 664406819 519239896 362812638 878502274 789378785 239283547 35836684 643144895 179953325 98290013 998936394 256256909 323470460 359902974 898232298 558297627 743634672 606696366 55625636 987177969 297777714 645524925 740558148 111773690 403801390 36345002 832025912 306677828 899197035 563237517 74614160 370641539 215512440 308328526 188815888 518949162 91057465 5387053 803242958 482873775 484614847 721587618 147253459 414898308 89059008 454595777 652914446 827103301 171754890 990528713 48160451 433309455 610302699 286059196 715376614 868745756 762801109 235993972 326448742 171496749 500204767 680328235 123060024 297721976 762911801 739641413 663785895 729433216 983254438 760349037 172058830 992634345 191989565 544214546 508367006 686319517 418314050 763211279 847783759 869199577 782801254 253773568 504927845 545358010 998876874 210913557 478152484 698426593 793116485 174211313 801820696 104480008 878570892 589044772 295150414 648175676 134816738 32742595 959212263 504623579 370649446 466882263 76105986 870201687 520139134 917173898 242701419 188895484 630960454 605482622 244907281 763489992 262617629 234888325 24218437 850813679 121833260 523691568 187827262 973099918 119213544 845685583 680433016 878153220 494457939 894726259 192050856 956310499 901374090 285707063 773866536 760752043 979590866 764969223 967093246 167722600 204425054 809531635 384339026 687500327 18937524 399485431 141812999 972339744 655186450 996610553 597450876 293575006 790670517 880738651 294992923 122014905 133162987 521651057 260133529 33820898 861497651 673445985 899806431 456921073 91868785 756164130 494160658 150620541 342716741 616069832 612022196 38110541 485168901 160435217 665739439 49197010 28751171 551977061 959094514 913770428 298410157 301275543 584079365 978720494 473259287 53126356 21195452 544553815 628192150 444388778 593919990 97460711 886866326 927915101 811741401 91471815 769342923 921621168 87970428 396735845 540540489 441422397 414106277 623954173 58607467 100995694 221769708 480789110 920710077 967418329 166308433 536137300 165717132 251996940 611462831 848957236 569313559 277270587 359150453 414577053 477859644 328624987 741001503 203495385 920485640 846375198 23917576 957717518 940012592 679505584 264833934 556668340 779884694 655205811 496396701 594927740 340041882 686887311 67957049 457291313 165967887 375109109 329183457 575976138 543695387 209399058 163231262 228061011 737756821 113100276 453846380 487517579 636424884 249247112 457064697 176704060 654819017 415446513 433161756 425841513 903056486 878339808 458382842 381269123 941454412 261607783 898894117 8609269 317036521 741141611 9220445 288160997 205697570 858303090 894906982 826811469 5774366 199659024 847081855 248871577 239194243 854142071 301698028 317360956 964950434 281752236 952556806 462265808 708650253 910895716 801840121 25354950 683093158 750597622 845280592 821318613 881776827 336883945 456458198 952111429 480355704 819400525 594628876 781547662 887397592 968340590 906828413 215552151 234266463 878275970 77237074 284304 676943617 987744524 129630006 745759818 669800953 350561634 999366770 984518699 21021655 786091886 785131543 958291148 549469647 565662319 180589101 51039269 707555197 796882222 350357457 530088990 542634763 545331189 357788794 235643527 330121449 674952574 320960590 86329333 748499642 59415018 416146815 429730626 606324755 32583055 170858940 392124328 351104462 294259346 365739432 419252819 352011297 1287673 717556472 782869185 672503095 733501071 966863367 434495772 62696653 2264180 849985647 32657424 876849707 711106680 489931011 329797944 402253836 264387981 432184421 789159733 167060112 656275904 147042623 624428694 71615455 59176874 333825989 937129704 775816789 26522390 602331392 85541258 950916147 923088691 233670781 96606187 950520410 99057379 755590635 787835056 442327622 217695080 707944823 360440222 841640372 672851135 304591699 461920668 998288893 716663119 210934865 734252806 183221506 257887319 714714878 996883922 759748631 365313252 371660521 118765248 968132242 255672033 555649488 221015618 658475768 327770184 483816958 448663784 674781113 630758566 895175166 564376181 994491001 400638455 358115385 524131178 918651293 814463350 669741541 967068758 295178654 929297065 535238177 787956510 817552251 905251724 712648902 569395984 607585503 156206031 17733520 9784744 333625630 584375494 747592335 28506740 224496999 44566277 112304918 329082656 34266767 752121663 374724682 184819182 372057493 849298419 740888603 779305715 412453929 904541171 41002544 380815470 512662112 394271886 753853912 109478517 728575583 315978113 303689749 389042742 766312643 258899205 414900670 99566358 788536364 592300202 742901793 412138651 126665027 820041804 918545823 761674669 526869551 587294313 969554872 398276704 863607631 550263656 624136905 489466544 209882509 71813626 124260151 103787594 370709850 576307481 942740829 314935968 987933530 161802589 514780913 751193164 513689118 840123623 128378438 340033717 69294111 65330160 289783622 89510171 117233092 995372568 829332885 991968188 482269742 299339364 418743004 317859817 214925133 436097607 823191125 887026696 141333177 238775644 76886436 659417948 500644710 706645994 527105137 257780940 216490613 870330177 949513958 44497954 113173595 744470983 644764660 739644670 60901827 749054798 220273024 60192961 621122856 194559702 421304283 706358375 763483915 404506971 405472202 266730507 350943349 244184764 586093107 471829570 824223286 261787284 399474659 369814037 206649272 966122899 673671441 11167755 828168084 819595388 729818490 57467888 896816616 415201947 570367391 589137072 712623796 701095027 533159524 382643852 968503634 280459447 668285948 453612151 620248949 181730112 422174494 882831520 810732298 466403824 215195889 391960515 8439592 720597176 839511256 180356506 381495475 890029148 838583976 750978971 337531948 956985269 639787400 579666576 950265626 386756209 827401042 636943697 159040535 173864713 753855843 761662418 77125703 226481954 682349744 58411200 710351593 744323140 485344211 617679189 842335860 151528733 885631155 446251377 833091292 396890357 523336694 88889468 52266126 170333798 703960320 605411585 827186594 753865311 854159330 414856797 146406301 222401674 590243197 267309383 725784395 45653245 755266580 764930176 956938505 597481525 659595363 222801403 271576699 988033308 935473028 721530510 852754836 422580146 621848226 481230738 360285555 717346506 715133473 588147624 431730372 644962773 444719612 162755876 629369800 77550697 607114658 366215836 698771468 539478132 274921877 700475393 529398423 775697075 145401384 997550842 797248454 923645566 674037406 455255617 472651528 582559557 631588985 976388001 520177464 581064775 460994100 227284892 939092289 105537209 675541882 664391323 378811232 245364776 146013879 910811909 34766237 993820971 12800526 656394466 383969454 229275454 835960260 79089562 931030437 766933426 76552639 715000759 572629003 377635154 964079180 124441205 455572160 677843624 965684339 532639170 100179771 392148456 949522453 717521848 652218373 158354306 861608453 818943631 681049363 19534214 263987733 227404511 618020875 102236346 953718716 187418998 770549105 144969202 215878886 622199856 868551282 493195712 204898024 245885734 983656771 135164051 895709571 423792156 442349862 411229716 984545762 712657004 917002364 469042264 646078896 692734058 472857092 902758547 441691177 698666784 46526538 887040932 978486974 272746811 2646031 624087167 287198926 66779662 737150610 322958333 239503487 838322217 683500336 959511978 754015747 634881452 954933324 369749088 496670603 521598207 746676072 296068568 820629060 792554241 186830784 165573825 841719108 250184699 700778023 89779971 435834715 92278031 122615444 165122749 709220628 471421059 562821155 699637846 298496278 715217131 519970076 569910639 551038048 427034727 434853435 655908062 401916063 252989850 885763664 383799980 661313651 915487401 551399054 253573909 411683011 232052934 498713019 988624878 641035543 385434479 603419263 773314501 604987724 318428793 776478405 883144201 698428893 231309918 681674412 751943723 383720426 131483797 636026145 393960987 194937867 423269501 688418810 311603741 939318691 255228805 361580301 504929293 339079764 876777168 339162603 98523037 485160955 163541015 612029421 879316882 180920874 636289197 543540482 276913459 106259836 631166516 714704108 145670133 894763205 760219863 961117986 838678557 586168019 259568143 939275131 353816341 659653170 332962717 993881292 942735845 35722418 149365976 603904745 441417168 26379745 472049397 276325175 130154436 698176238 347286324 484097672 308779971 652423701 267820145 487104425 612009727 891361383 704220009 291699152 860956184 540845956 577707534 739881316 705958262 792343596 928117521 955691109 66715480 218049238 5814988 41536586 469407460 736425970 920223220 883253806 2811504 458655927 953537289 928870343 331009516 819181245 698307222 111373735 56934390 712944135 339156915 590698541 803563858 53602589 658382617 556040952 264409577 343498915 272379258 408667370 845803986 593683931 522056738 59440694 828522673 847888263 701079732 235116259 791690125 497823255 968665272 805083410 718555311 89967711 511643101 945336710 488274284 176260557 450489503 398767027 648874633 958813965 863189516 894363977 677611977 636207191 967815355 60636530 583558411 62664595 634732615 739493521 80820626 427732351 988904818 430270737 976875532 686100982 105371036 229605245 765968185 810262440 116278509 251986285 710011293 809790971 602896116 405201232 620221736 437745295 738531763 959332005 14189847 445311074 823393092 247187698 965395927 390113827 665111965 101810493 217428754 123646194 553047228 794116591 593325592 401096250 15941534 672743128 450602921 613529732 985286672 506245471 810512358 71600331 826123135 629640836 118210061 150130295 301984370 380858629 244762318 61052025 671052217 621033975 906903852 778469208 436402501 991412316 853399733 558571735 941433953 687051974 940209423 532043899 531981105 467804046 301559226 773008168 23556887 89322039 12858835 332179427 696895337 92296681 49551969 465811681 247149049 832059462 87111660 23721288 944460684 660517925 377152378 658169017 868984709 626811193 813416100 808429153 326712471 563969127 544886644 31647007 671122354 701325973 727711018 233108350 415515462 682038371 38316953 422573595 779323633 287852729 174155354 498692373 830130379 970834751 137410929 895849369 642131636 855720702 532597897 556681218 444809090 38783849 483055323 810224303 602762251 187288534 789663401 46914497 465009813 278579167 397543839 287509288 433868361 255044962 118818408 383211775 793027410 976339651 639964518 248444371 450286987 953855414 804487377 376921196 610065086 43163371 443184291 177002856 885939728 101625960 198391240 950165908 519146109 558881997 616406091 730099236 108519816 60086990 710924850 198512981 812851341 390002411 409903229 278312006 830056299 27776914 848864874 321693246 736447402 678513777 855635229 47858769 414500710 443375661 203819111 881425755 338947062 577720548 725125730 423996098 188864394 395352971 353818968 829428761 431320982 950568636 916641490 524590785 882405071 298076960 839711255 349599829 494319628 398654248 136289664 643815503 574553844 14194649 302568448 280084589 698777720 93848464 54009169 733277586 550722682 874212004 526988742 116399180 277186316 421408016 832219307 664682849 586843669 291668360 324633472 773736730 885846717 227832032 446544015 522880666 914868524 398998756 438076152 6630679 838470285 146577141 916858468 815752595 533013431 855140000 980559963 156698328 468187607 171925309 145155851 523832252 611325167 953530156 494101305 333467108 26507066 360764091 292572044 198907677 95733196 388763544 499580309 510959034 447539536 182940292 939822904 761435267 153668782 42441864 13368397 657588935 926430243 431158592 87261171 696862351 603926418 905689845 766181895 533969294 107583917 82784787 582837200 42868085 200358904 729721823 758686308 472958704 383582067 493989809 860344432 693129602 308744502 553932448 830072438 677166101 26192672 433531033 350571834 659724593 174344030 219853412 385328812 892195912 506879956 505054289 259955111 304080053 501854381 519914572 646840178 502229695 509628909 306568081 272240748 837003332 658261655 281709388 776349883 631373332 527482598 26917859 602046754 992342829 493530411 252366580 992410944 200060640 985317049 857285807 707490965 164823629 885245422 595878499 434322594 500139676 873892281 647006702 108082307 786265389 283483419 951218117 218017142 329959245 151158534 178831043 485041001 323371503 758012978 351598341 444967781 230746846 890469593 824028387 108755144 470486557 676446556 697348820 185046753 150065552 200590697 270054323 868223909 541955833 830616395 802219962 660557176 456565652 393804804 235540377 999088587 786808333 97413091 549352668 146014519 2106081 751781379 758449133 256897397 70576304 524437645 12087632 310148249 104856057 222061553 913895792 867533885 998123783 730051992 503103973 514432244 792549852 239574982 269598044 732711761 540099507 389223391 490742549 807255055 165911234 971698828 331540859 503098432 81614048 429838116 253587534 627579765 545236640 920547141 493848659 301263078 818904362 483752615 351666175 428788739 140873583 40505593 299186154 91464738 86224992 695290939 176955610 3096203 885861105 146739683 852421998 469140848 15115954 965413095 168828743 704348434 3748730 389723395 163372304 546109962 678119585 25993210 422911471 38209983 559149293 28791368 56571259 983455346 977049394 268951032 420098279 891839768 865976613 163762673 82091850 686235560 788708352 666343243 398946306 947812406 528265272 198211984 415477971 468680741 597399500 303422367 395802360 571452517 204004896 396995819 595391886 939159113 268411091 41961194 371006379 760684816 943463867 946084320 78376018 698849375 725647053 180693336 950300216 742685174 318361400 358478796 258412133 930897048 263052755 805861868 26009353 392886384 265403900 397868198 530434398 428004534 464529777 341354559 357125501 722904862 606764277 320495172 918412942 959200874 166552655 512218711 60312411 610367386 735991144 264702339 4359179 223574879 608082332 401901749 164086772 428479978 32147265 626746159 528073318 76075036 664761827 633002732 844681494 152998505 309285844 437771431 801877172 243513124 519849677 191642963 260363 113979497 210717235 995177822 571812681 117161447 174538752 837085311 158243241 68993510 283169683 125078640 257428747 102426615 980606560 694244694 5945764 611710553 210716447 280998477 714699632 905142620 728328848 725854382 171298362 590797654 39718235 920338844 699593619 408319003 267609236 79990821 621479941 680601334 789472453 569596684 83654341 109080336 53546374 504456146 498528049 835133502 278528109 62233840 544178332 340870461 497280772 669468494 628002203 166505640 609018559 369892546 939533155 996174356 54258417 722662274 458736302 245242583 828339237 905206173 317133144 267007940 650650248 357391873 46156424 404118197 866308135 379419190 899750731 584375307 516529016 951146225 703167406 866023217 665641821 644882156 815110423 319582350 616731819 418949125 442838798 973151561 953434918 124590537 567222685 592669087 643377144 431722050 347755339 565336170 288831268 19402001 132820694 854344496 207042606 186970453 258329898 234928737 95782400 788244056 16075388 610995761 205170963 402413683 760355233 910039125 983390284 98480372 552474523 747144776 232822093 592904298 325926232 567559925 833837367 624202686 619608272 946667850 207701778 831222834 887266122 635572766 972022479 468199640 279991339 527628899 98889936 216895855 846411621 492857708 823019439 217267371 908016476 334456563 767930292 956087402 832212844 701590469 662646479 116696718 989214808 615159903 254414587 467997331 260887456 978742504 445732830 750618128 96094535 18856361 752400690 555098796 961938288 782926444 924095400 235574480 366654849 30319635 46618780 158282369 125958820 780374377 503326739 474585881 470183514 346502143 413178148 700901259 678040022 862676977 365261159 26228676 329695493 839862465 382234189 316701819 876525813 593436375 981095685 634873403 195571558 668351017 830219579 336365087 702184226 894730524 904668845 610493425 251615154 384106214 345413834 612112680 485038174 241780680 29041882 835599875 239706727 100411614 218644772 641420888 364802887 489139583 475369491 184205000 808234420 364264698 676284188 634493566 169392338 299019946 972440874 71683422 223437092 152606565 76778427 95830316 798999313 326839657 197023110 906261564 787005410 744142994 320900700 992923369 176672813 648833226 241780139 691945051 625621254 126983275 230586048 299368638 437424934 969555595 708537726 139981592 622711629 389054903 647376851 294775797 84340526 287249037 179583153 794014554 71592359 887492 205008924 45651769 336949528 719545567 123343639 490003411 80931528 784857828 894924050 267364133 158561789 290316979 694766609 209157477 903523946 2545420 543678533 413887652 735237936 790021751 378833065 662777920 17969239 330432929 394649352 271211651 710192391 206887262 861462415 996637719 712218223 800512172 49206123 235278876 625789604 381629598 990870232 17155478 999131706 608742508 440469376 224468154 490584315 134846518 127704609 586370838 697931676 58922461 125672797 921824128 936703373 626230967 795759288 744592747 266888055 601427766 873740815 891728481 857504537 720218301 207062687 467308812 925860941 422225358 145790183 560435519 998369619 207297968 411711494 532086943 970549836 451433078 857645065 300609410 746702429 435119688 50829445 283921825 781224458 417587565 985392518 226979782 622952451 819814835 20529337 946845583 705555728 555746500 271692288 171541062 83862819 733344160 277749724 134561111 389895218 971092063 430818729 327216324 191619257 31358900 903964628 503816884 112768032 212695740 146876083 231595853 463908262 996536252 14369588 386853129 823760478 433867266 832867792 264304384 709510661 274537535 78299167 196108882 955843040 130980265 9293284 65174364 854233380 951474612 91619069 173799661 842978996 879615614 455135180 366462380 559648306 508976838 959586054 710977334 25932495 919001293 291322334 98246806 90534788 143569758 943061119 38421035 543566058 296310011 141135348 975785994 87217612 860224718 779073466 393922837 576350732 113109272 457366194 32682028 502573347 745998101 801607378 873756857 349717406 271281081 334160690 201222437 638085488 431679913 168204298 847633188 906726156 747107997 839845732 489125000 895130843 859220568 277373080 532228585 434459207 709708327 242741243 796493469 39209984 817098055 642314311 329656089 609497301 411143356 928298650 901856933 502783846 501604594 813072636 215901640 200941782 214572986 555496456 338473731 143879077 940045219 745980742 565505588 949769912 46090796 939133652 212229944 83321526 65065997 204072714 203451541 684560991 922275793 232341327 5390661 495458097 496862141 911237622 984770945 597741033 826731060 350399463 677584163 686877663 613774969 642803221 669350710 620419012 641835271 404822229 321677702 5884583 452001812 183084148 477136965 617335117 574561717 116118056 371609276 345013655 416999036 864049827 434316428 270791430 35052308 179910401 394406502 355624288 103958536 490109794 515748681 462446159 216246280 928299643 461746265 426724546 415558722 686921702 931572966 455500590 249953195 311901408 375178359 751683161 298760771 18345300 151049358 101451494 209290800 268236468 518705686 723147000 986285121 850596390 708620709 9669523 392095052 927900091 460713727 302267060 673929505 211331005 805745602 41990678 17304331 125675268 834835556 692900049 140469777 189489638 553132825 290878300 134355610 911929196 580154291 883320207 29903502 819983898 758941388 134817421 976819747 188675796 361675009 803793588 558939724 374574025 424554884 730624259 863503521 34983264 623469368 796743029 973849117 625762411 290677670 612741051 172653403 828389821 865642603 711835916 790831141 633370274 207599532 230444336 349693507 422597830 756084268 369000619 138505916 169601717 315768687 926241497 506034790 188784408 45246193 141699008 442335241 306859776 574997826 675415349 159439143 95827480 443587331 27920191 932421256 819493743 387873332 30695532 148870404 910022995 650147195 701436885 494294470 366385986 296116546 618229539 106404188 581454383 779948825 10898494 7236429 996072005 826430643 380122124 813340542 666189375 103329806 243730178 319487103 491148301 715451008 484003774 957286533 90199054 936647621 115190757 25710572 70792002 241144132 444376452 516092377 361900437 176954425 728426560 502614751 567242878 309961113 497911223 964204500 200702323 862228178 897906847 662769505 517938518 227424678 326638689 3660829 598495279 732016362 404486514 604919216 308029942 919105843 131261930 58213582 948893749 548336543 447572180 113209220 54382686 613591697 856528045 630347804 906671142 81705637 563426702 734602717 665781639 222552906 218879752 66210818 15277007 434913559 107862601 742544395 925583289 858743803 197199318 896393312 860219671 734809021 928495660 804370465 127745342 280165585 759275493 807206436 165432010 879849730 137580357 690047506 935218815 479031420 349643209 792473929 48353045 242998731 79877446 239827151 852253987 223134426 159053922 599322582 291949698 82835006 688946713 164972998 631374719 321233810 789297734 219071223 59008986 114740131 34745257 824403172 270384166 990789891 58108401 368047530 509954020 783651226 244379546 831632207 388065167 212146228 23220422 668824935 129582565 667768256 378393231 836431677 452771108 251377681 924424597 370818456 699906664 526908634 654252601 857913121 660485090 637427692 993288961 626733304 603768019 754587615 720036841 250701257 457609906 745230773 483956674 7237566 239613083 348466125 750449516 537908336 701629456 36871102 683613335 53389164 350920488 152464635 910651520 570874467 927129879 882827674 731101453 950204359 896952146 455769278 177681881 174637116 698339565 852926722 916812088 359024847 317320503 140499973 503046362 881541123 726314925 834985976 49290620 508124592 521280868 625698058 295054597 430755033 286650777 656890476 303059264 544907520 6650276 341383961 222132049 856060705 375265958 302341021 886311264 327593888 266804725 937597430 78239266 834405356 168450473 80915725 284846251 453909788 484264253 252607151 798237050 604472074 472260578 772854124 653624922 729001773 531112319 675355607 178107215 589879382 593585604 130882867 834784714 99365688 554463760 261861919 973928486 178098475 633057822 220153453 328935185 724223349 397400888 902240225 156935697 624193070 467246461 1371095 14920056 822924309 311283508 826801420 679137829 27003171 213132377 574193237 140237430 248977793 74502779 765603812 887513001 887970596 769202589 589413666 374202779 155549596 788676536 674479392 837072270 156157636 174544499 955036897 798723205 899739358 148631403 703261453 94038400 401107318 972875537 595076212 758892654 997502718 680446760 747190819 494824096 839269050 590554461 10288935 862112321 888134125 336442820 594227350 726185255 260733242 483499832 37325629 577151788 574412741 908121444 611315830 866735053 257413457 452992142 596670420 466477048 742781043 777808229 253207413 808686349 183878456 365758322 49197157 281849692 414413983 15409744 546017350 492687783 933527615 703489269 594610254 465441326 166726298 869322139 751656286 663714008 272645053 883071848 196022351 821980568 273870807 860419326 198002629 500543025 907473044 909202970 65325347 638049879 722659061 80507811 209752385 622869417 693204006 683159606 389449447 943995614 407474499 887747348 809770440 311505055 174282224 506457586 190630389 96255496 274195453 343427043 401293204 582128624 608359129 374123898 767677008 271659876 650721987 939437969 946392160 86158914 432072975 949557710 349754328 221157727 877921504 779355525 927381685 813136375 193703699 31597116 103742300 215537895 87781637 417631134 645898469 850735022 396526686 296462789 514777044 234373475 947441129 617880516 499616884 661524330 906214448 116030014 845906925 189294415 780636603 988171278 641325102 395776640 10599368 410544190 469982178 387079416 342049512 301006583 834040456 980442459 567770815 414303002 834817782 817583607 376319446 803159662 617038092 474250360 8078144 995182131 234322105 678402210 467847189 929506843 246986873 920024710 455986756 49524185 640055699 554619502 206824848 135700009 98720876 660614271 49088865 912204985 511448885 48291578 462910561 571583724 527905145 125333335 833514526 184646894 86754228 218379317 689355669 490941014 498942218 846134563 44632342 678171531 349854892 103120877 748375989 113074544 806622510 110558556 437091268 608620597 467394768 45010869 387940643 887419089 988079889 295143417 809567249 64758118 19411363 532799640 420740488 886175047 5598791 337908318 272640119 497207239 553866136 649006490 902625554 294871612 307087073 918751989 283429322 526218824 432742133 479056964 39017391 140301443 140877837 919831010 641533295 140298764 89510782 942167717 883085659 322917937 706120620 171344094 190832670 275991204 655596153 435527300 882502225 463299601 800945518 361210890 622112553 898612390 108064306 358750758 125667886 289167000 146167411 888844626 715197648 524978286 811140003 450311420 470391655 495009810 271416778 877612266 340162152 255735144 843093732 246362502 795207884 65887783 830682644 379801436 620148530 436493540 447153096 869205639 652728936 76910012 608468685 10416176 843511826 296082316 621974039 436962771 260164329 653794216 495109665 572601599 784208451 944681417 660824369 336509987 277323101 336018041 19258438 478722120 205154498 105288146 9262360 935322943 461100917 469288596 837813263 741170808 742318680 770325350 264250235 590744868 886669101 34140579 77540550 922179526 660873933 336567489 496419948 692481691 307418175 940525676 851792824 357751118 964560766 45801788 657048834 664119939 51243053 193381733 616208408 646813930 341554718 372596307 407457863 665096210 977903865 45361458 647837989 164280632 887494637 281397984 697171498 231353040 908886736 127042992 963760939 641352880 365226872 404492673 18607738 672196142 726420204 600872079 319633193 274258063 403764870 353552214 817396625 938605435 827644898 54572423 501167939 344426879 670303913 898767696 483283615 897920657 223220697 541752553 677401524 416214343 931404836 661778178 830769856 96438694 615580088 136588152 578470056 713967467 173834109 693760908 822257307 760772635 895167561 156684408 708837599 196955800 141783712 981165189 110657900 23147397 260050653 604900666 818956720 272149949 392634232 947915762 418924048 671943120 239415966 215504139 299072359 605968057 215958436 380043021 911447976 482772181 933209551 203742137 547697686 131640914 981753917 936019727 496944638 633934847 650772191 967782689 118344564 421435468 83051256 891496247 942829450 21450470 796309006 301483534 39526543 350745019 26568050 905675236 570919024 703200907 350095884 366489443 672345835 706647078 1174860 921215939 749602865 581503397 484115635 739345509 498460923 300473603 147352517 713479444 100989797 531832997 301003795 893853849 524481800 969340838 70767582 962816618 68968613 257352734 807881184 994802375 557538064 972630092 951114446 456544313 207738407 624406644 421659648 957167067 148082 647058220 17775444 620920889 499451021 471873159 161900728 359584953 585171935 326602383 636244793 259373052 751239194 29281338 826400370 737639246 837300690 583901511 48404200 161799931 355411785 667931783 864658288 261249369 608957542 257111342 723663811 245407197 163780041 934009522 22734225 873920034 242663467 537954257 194792267 164347188 677530344 700617689 194320927 204551219 215881074 13151486 517106373 281375110 92678867 388728119 420881574 849699474 793972925 581472786 314566514 935253481 677242102 535900984 436470746 601662416 723356905 271041051 390240199 366609028 545311235 261826812 269079006 231185727 963498857 915590801 444426202 449243086 23186986 461512758 22766152 945159063 927948182 515247439 504938463 357143223 787324480 580928752 110707936 456133932 987689226 197073683 672609889 31200280 590074583 689124429 325838508 413333497 912120104 584907217 281998543 112719400 946080030 153884963 42836353 418730618 93156979 500030838 374391972 699340856 550789689 374254793 998965686 805822223 119396160 352961225 990583753 116646029 435704727 22974702 888408089 317282985 20762279 509465073 216954273 175870181 364289568 635847347 815149227 70955852 880873422 223325134 507904231 135797411 720642548 982328757 377223203 368701140 764506202 290153108 821916231 27472723 539041171 524011556 825368931 901049956 127562131 288187298 509829042 950144615 440650010 46876708 385258080 58223235 372399540 152248487 606662368 889521243 919119441 828976201 55878694 669063343 541344155 931441235 886138157 460886765 746073939 483457622 914717167 747527607 662263322 166964961 794087413 874658265 212626355 919650867 340168132 647614189 696801683 408084381 947184037 447271086 837653289 873290589 23387778 18780460 774719327 809488534 737586531 12468308 978446939 176626640 843316510 200121593 269129175 824612769 25275569 469938956 904732840 402261988 65565836 210899514 986065264 789544280 342285435 361520957 219773567 136682413 61924438 747259755 326429951 315249603 380455760 491424883 956635662 846137252 350926843 562819899 883865874 29452750 876707372 791546546 407889365 568995213 410728022 20012379 345400641 249961243 877551364 811186506 89481383 207769971 949981455 427092 162541278 800163408 21450951 714405434 895416058 395718984 727193109 983049905 147134985 936172904 193771756 45092644 343488806 623883102 313187794 4230164 252978176 354133703 518527389 17905525 132018960 1504425 829465943 354161572 733673467 682061981 688670085 482383390 510530890 603905421 807552115 901584446 833532430 35576994 875553150 386551370 924439939 859810108 702334365 971501555 211573878 608112772 352265188 1485036 496086548 467684737 141892192 486924411 193958373 188293471 121506123 962430970 6862010 123901986 341081391 582998936 807234730 845370610 860616655 682826375 477290398 966943485 542230628 906451545 545939335 690004518 188483071 877248757 418166753 105943426 500373328 235479027 321651448 169433593 956135377 490462623 404812272 940825865 181981946 830364941 631423509 12247593 271371318 819920674 300880774 316480120 665165197 956350417 958095107 618943567 266508273 381434881 7722925 606213743 424697628 588356075 562395101 641403788 650606153 571754059 839652252 550514858 101121565 815772580 595765339 318595447 340858509 922121652 217888144 81729207 101288090 266736742 625904096 548392448 41970265 838052073 883351731 144526052 39034382 591749174 79891970 104658233 793169821 168406768 615163957 348325089 700231945 372626004 222229297 883090786 175262531 513593742 674869250 541472398 349529535 78257389 903781487 158148119 714856267 449098615 152710469 230113086 1159118 63326843 661795789 452526582 745767781 204421881 186585937 229735734 954884332 841811477 636348934 635777350 22016375 292339311 663513164 526670699 521423020 773554808 873295667 973608142 715292022 455146107 606928427 805594563 360280435 489208721 422095392 777666862 829171993 886209070 114323813 632242003 997594359 873107843 566947754 213672845 755847270 210235091 819825643 653692404 36721575 813034099 483467355 763312098 855868041 410299441 819893268 424071875 991237814 724587532 604797817 355352042 271922271 114131200 745175452 193279543 123957557 900943515 262987786 461838963 380460767 49003344 830480947 813335800 917476475 302757067 273496985 249934636 413764295 341712648 831504613 506945794 454050401 31887166 258634557 245059738 55625037 451548388 342660785 764840162 643967132 111484563 35911928 250306434 880227870 465668026 742781638 983375957 73636438 704624378 266647650 408048463 530661591 211242959 810160554 471231254 898478237 947358174 633120466 841961387 600408596 36156473 594920000 327471673 650964151 764111786 130940661 74773621 974882997 45365831 621496326 373076091 279700877 695535033 417919647 443201006 976772936 897135570 595701213 644934661 297787525 607056693 692148929 583009287 805065422 545747907 424658833 261751474 581179865 81393137 841498312 203584902 704774118 686241994 838068860 340578222 297551996 340696034 568204168 495488682 919395821 365719718 610544232 194105483 40636920 204533115 828824816 917123604 713261114 603191122 791307114 494910252 77781938 184275259 362517571 444770971 733252669 648683097 276753518 520559809 752205031 733059799 158267868 952992645 666542631 137352080 882284405 648507422 745194754 943193818 182140504 550827690 586770016 993604077 554246827 337675551 166802687 365525760 294579792 414385858 271921963 653517561 597140390 862165339 885673328 203224126 458051833 915098491 98866316 672271152 314160808 947896267 204751307 238852969 893640449 516395785 709140887 527719878 421596230 766946201 557396517 852901981 955659681 309574990 84556114 306853385 236790312 908575556 914719706 178036856 412581472 809468720 855272923 89203354 316623415 76743583 986927320 713432839 971920728 559973815 942806152 732321255 587963593 729275945 405234508 382544555 650426472 333962302 828973938 420236362 153011714 362778432 500210457 809955047 581934384 47909276 119660076 861931919 221966859 21170793 649528338 926121467 577305934 592462607 815680058 341537767 396458749 717974635 838413550 114216584 882916552 475958481 133462354 452331327 796244141 562645288 446741355 356102073 615457926 535206287 203436823 555734103 663212318 953573027 647085291 720720526 941856807 28349399 835224302 537903991 889708209 825594613 555218458 425819877 591328401 286333657 792855096 816436118 520234746 466126387 409721621 731943134 394458261 815547676 426934367 540575971 586221819 635654076 235073114 613995681 405281590 32870313 797990585 311326685 388828609 499645506 377443712 331917475 26892729 357726166 257067387 203628512 908471026 878581822 692614190 58810392 522624570 852899132 834196384 17249739 497217724 835660798 83641796 845722555 531928716 480020320 732271787 354673209 47657712 586213754 41771109 572770911 623237614 77213841 867414092 514910031 689547215 704622219 2504651 331349046 789691298 307999808 445314709 126764273 853721769 59587724 143502487 6746717 906984096 619191436 417296669 443250983 256345870 792150487 581363483 613438892 246780035 363198182 119867635 389906029 997489407 461495861 531131699 863519833 892674166 774251542 951351170 276278104 459842982 914120285 386541769 779553877 882810191 11335960 183689774 277489246 238990867 614956966 270799679 461061499 596095822 331597723 134569607 902332307 654250390 7287880 255417327 832201280 16636335 822017194 460392299 416345960 100064788 884839141 459927699 788944968 434040244 905426983 124804143 999347913 564228109 738295738 684279696 839047 500793183 815602898 505566596 925142597 18550555 349781900 416428894 514451969 310334703 894898234 439586778 705804552 614310724 768067227 6740750 984323722 259459005 321397616 848320311 778769525 651733199 21810161 442271231 143875617 651486321 477263902 594484909 121818797 861159324 312309116 245656334 944404062 921068805 70490746 336952546 80041797 909776256 381267709 932591451 857609959 942136655 738780292 148373101 303249460 998752230 294267301 255556866 478628396 588230179 535548921 682190252 553041367 862799076 545152949 437671106 736032616 355821928 111858440 972762625 218779791 694819598 642965139 750487394 963880852 912676947 642793695 654070155 311698352 142979017 164103903 614553246 93466728 321524479 803383915 817622187 421270113 895996537 609132974 246393897 441620234 630441353 260927876 694087954 928046480 129659158 842443227 233072057 5076166 15045257 986594690 40535482 511948974 784041499 868280321 733826506 206773447 835753601 845019498 312101282 917132059 878775056 92889884 767222988 87950709 352219576 411592067 552678507 578194611 346121097 158056915 354213235 636289802 240612487 763155859 347641687 86111150 718522314 798018526 764973572 611531190 945174038 905243630 935805185 841599044 707586153 706396703 738854753 572949235 859406529 727607028 804400504 730874504 825274648 349114733 90559906 129510377 736930954 464372733 32723029 511016118 94516262 173919089 576092556 338165056 7943701 626923575 365427146 424388147 998253819 531481285 263948992 987591842 412977867 5297201 512160664 921651192 967125066 854940333 282160776 665095154 59168082 867805273 195114797 42397233 341386352 312413325 453891151 744218541 706628539 397324207 674927600 432382554 755819709 897475095 633308813 332524346 912613331 81385617 19085256 309761048 964189757 671491943 453065307 84346086 285566646 826082510 570636432 889102477 923908413 437276842 549329064 299118549 479028626 748740902 335353034 376244077 897180904 18104615 256668426 452088095 436281274 422097438 802412692 469757292 625000439 306790131 681430226 668223749 814854738 173111868 492990025 958353565 285190575 881444259 157192240 310697355 884860174 996352033 51003719 842479052 711920144 423880234 475190378 418568134 8432827 578191571 515367927 242058052 615555141 577224984 326276867 502750141 486070477 207660742 944169910 371331736 867905061 449464047 823674408 881085463 49858882 657246962 915903862 661304617 390252713 148621053 676087981 173669488 364420001 934565039 460773487 308204129 764242518 907503648 926993357 372546105 801311173 387907162 336337953 145219281 250897651 622435572 210280106 621512705 812065977 951096390 836833079 298407659 747516165 253371302 989524723 202158204 46850838 922838521 833203421 103941861 814052437 676082542 697831755 66724410 461648555 142656486 411106883 61550288 640859793 158731082 232789252 812381560 76925339 225070621 26026811 703938077 885294266 461549252 305369617 814081094 503825977 532479957 406280433 663029839 205343144 204269175 223114862 496546961 975820778 485291687 477197965 32905192 304164256 435136451 494793588 566518159 585526251 517553607 604160606 999919399 211911159 93892125 866701753 21615357 531555280 524869906 15600377 961503115 301829009 134285972 404583913 262491745 375111560 9868584 67020414 906833158 374870789 875929967 491573489 108174908 53820991 177633180 199636834 630605861 437797163 353763983 501427754 85013467 704264570 864826650 102474500 285513103 943155479 206251480 309519092 109738760 893002346 232369565 154053530 53701757 160844489 944661277 697085723 358054410 907736745 484208981 256607863 839704195 625248317 853408761 847250915 934130855 967354216 86269612 338156066 208369168 351091811 886169395 406327095 214297579 65804724 199520940 274505233 885751096 331747973 558488622 806716727 478478373 408037759 340877106 547407487 418155162 280598286 319752853 745921983 789720643 943321078 215053567 733953179 697553468 667514927 967798014 5066269 382984550 646825581 513414325 821720901 212723413 939473919 832109110 844578936 762051193 348889843 392755276 162888122 777927680 497221227 718102744 902557457 140432062 664168982 476335057 856312004 364645605 243609177 153865775 782879796 305935910 595702393 81513085 998838073 969034716 556006026 782242222 596005212 830027575 347956611 589538057 567127241 256941209 744246227 92150809 722088515 358957241 167559732 919075185 628679700 114571090 752243670 165842609 661379160 491407 140173681 570125602 168186574 891258814 765985253 190325142 116022175 786685502 309365732 274742078 680578694 591258303 908396923 539843859 947153130 484536548 604730144 215257223 150860935 157176952 816735759 86759874 424785108 555240998 695586256 570483583 466284300 476137913 431720380 179056101 34978357 190669314 834826270 12249205 7752720 857308674 583134546 880840731 754857579 212719931 898591057 344241398 591446652 63516944 870163584 797029629 934000703 106114229 31680639 396936405 396852421 242120921 657064828 974447653 264463537 628575339 70566757 505218351 984979823 519771857 932889810 304345057 348503377 2713003 876192155 798115632 210995955 430503424 554906518 855894922 281545019 101322836 405460113 647593605 327208955 811477251 637105059 741897621 431165471 668112305 973074728 935363655 930983501 923038781 520430947 479258760 88467243 608867672 330655723 454046266 82259956 164379442 975015640 854403280 468009568 256976501 713883614 714025177 607209841 811074796 78130736 307733540 443376595 794089425 369947757 432562574 661282151 179204213 774104785 30175285 793932442 2185869 713435079 751638725 157607941 832613424 311182375 262486520 778292928 459115682 311086338 654899028 486384095 742106921 638149488 304525952 66131149 948621081 858722590 112051357 287245428 14851175 250273012 679431043 323134942 943130110 415756273 452105981 841942716 549795281 906885053 302182766 934794387 252030760 740994118 511204316 570263940 159315084 268097702 665257340 761383802 402788993 681568393 611800666 261034836 231271792 397920506 451400255 52360907 877069984 611437747 765414934 563114572 318207093 986410309 752372554 303452760 527736570 768817832 315113967 495464320 327684624 552387496 802494609 48832765 70586760 827522724 725220966 23045806 606856289 474192219 630376317 394304059 797193674 646036464 474062450 133389448 460307503 673454068 166401193 723460264 990483059 219077719 922829571 927028435 95845736 480737495 869740936 215569285 496480784 903612113 311560710 537255597 315799753 312780002 239034537 676764068 2931312 907654987 144646053 780438812 74522335 325781573 61999755 139013293 77776514 966250797 959734118 716390410 592561580 510880331 275102172 419290844 25614096 96344091 880676553 314265230 344068412 819173477 312269424 198230902 432489284 661459354 583725788 288702152 524389949 940659766 265854699 743893835 380917132 566553267 530982929 6358520 737953142 166586209 132916449 241104978 918558017 984444270 600166183 157269439 379533947 233558653 918877236 462751811 746680143 167417240 432172675 279480902 934584641 795762445 276082632 306142634 180543728 427276804 425396343 534141552 94787019 564583530 190724883 635871867 541847740 618551999 650787822 469054718 142967725 762766130 703698131 382537061 437433366 688583380 938011884 259612137 78292167 259868943 441849015 186178101 271855738 294180475 577751000 439567777 898789712 178958620 392418098 777780286 609174890 354539962 389268925 57656841 272047270 635453212 913281532 575851679 491167560 774396120 88905331 31730019 248118142 533809165 123083584 273633120 466748271 600815798 183590963 310006390 399681323 889986242 827729556 181081161 791102822 417142922 234991120 582070240 754620994 518006499 540122422 414379295 837155445 843324084 772896250 200261470 575889170 792007369 811478639 372511486 775641573 722855754 907697394 784356075 369578827 899877870 743972988 89867131 633020005 613917812 576318919 523222803 546859764 693554881 103076781 946590928 704048712 501603876 398349950 492840444 734156961 499257298 184355470 372760263 114819064 630080584 891350228 580565095 989302423 946227487 863927742 721426207 174127565 525761391 248384757 110703564 368058228 721328420 39217059 760090334 604719400 253342198 187153811 748341576 885295954 835333962 38322724 282718592 677464203 536019766 517527516 483301255 970561050 206146572 185841648 966298030 575992839 280483278 413087752 939681664 674900315 371943593 767518890 414933835 10598512 861617178 389689027 957158429 460904259 541951054 243020119 664894738 615465973 361145886 206138011 797429594 648398757 285655937 969279971 213725046 995799034 198775607 682528946 901046031 517389855 140739887 140872433 536319350 983568316 117377150 159277685 22633594 286592666 768883158 408250938 830394068 702448202 128941133 955979820 627051630 351384679 674542405 427383382 565457441 646960318 473575031 685697625 63442495 2197138 749926379 614493776 795759292 720441321 44469631 384567501 599837044 319741725 529198873 412288833 40393226 156282795 618283731 489540265 594103087 431897779 282970896 227386972 330278268 378542850 681882418 592726043 601680281 842034370 904378872 899191449 909200 622852697 824370984 780971905 710367073 393000140 185078166 476696400 645843863 952493846 393392819 990057722 480008334 579239087 50533994 255496348 501739624 18737805 784084418 342262168 806372653 262375654 259545312 963565387 502189772 71792810 460138494 567223676 892978275 497538904 420965918 325920859 531124192 843616644 761622474 67621176 96988510 804526409 158660979 505088277 925064829 779158585 716416581 258913310 304029990 388494600 110253967 869874587 888588080 352173983 472806973 77947277 544107888 376446522 855721206 60372985 638601681 809889479 795813535 3448747 802143455 561711562 884627900 373669689 564088908 573522941 734939328 879531518 718655803 334063813 289521757 678035561 555649292 728318541 529739091 259504977 283153963 37656835 189529038 550801909 830099535 119283065 645459490 733443622 274001241 766636790 82238789 81584418 463029489 419034607 616082395 353843887 448971777 631239237 598011971 40640096 927958944 233911269 700186412 523683515 910495974 827798373 738264381 612860706 168833237 374306921 527284975 120201102 146815773 989588701 350178628 436244036 557538863 598100038 515987060 625745598 31901022 338367008 264392540 24979390 674222584 837562519 124633 482553786 600275526 534834452 849503682 137127429 832910732 773916709 382071759 388156263 61591427 421094604 739245268 820303655 253230652 146012938 640587504 571817838 714599029 497088968 242542491 938808447 266792028 327939777 726071386 167652292 100754482 268455509 625503388 647205940 436804930 635260605 222199369 26855379 932242605 678431511 702348720 978356917 151049091 867308854 250521995 166711860 312435229 7815241 525216269 623916297 211034860 699396752 267323880 191303445 418890720 622409126 318207078 301493099 176162249 395161472 539832152 539160616 471906077 814125227 370930897 187378006 247437194 919853466 819873593 427595862 759198017 46694678 349394717 997995057 801081569 672144611 271376874 752334390 352632970 453048679 338965382 81518764 679650712 175020959 19644723 702594819 218118150 121518986 735297333 974147741 213657807 846699414 194587934 282168602 217155182 683701549 21239034 562180678 182785810 307991980 272629533 220375462 628585255 435627048 307957818 847447378 308276929 302722953 55006428 812976689 464525560 602185825 510664085 305257647 53297663 816724201 454839143 691263852 692039297 318730032 434989691 327046810 525014225 398753637 790959913 896860279 232605969 538845331 112177219 692396408 278751750 245452133 237421862 880728576 398963160 760130953 648633869 512353855 999852196 723644565 522025173 268380988 821188200 455069614 980797863 360159037 4928279 194357068 474601674 767008851 569855122 134095698 460566388 984396376 912906940 758475810 158415739 169381602 2620884 257207785 145278861 397164950 142627753 560057130 2230723 10498963 749162408 19596703 743428852 10449572 540974064 200204922 740829286 334329954 616492304 31495863 877273444 976583425 504964988 909096702 174943735 687074156 359850776 870502424 712634104 694578872 542520976 363496328 208388846 245673125 210691255 120122993 955748332 507332596 893684787 645918232 937899291 486896183 474177089 437767652 458954979 959918449 563694844 828561631 339686682 250381063 606547153 103692235 814221352 112160744 234087583 260926619 605503367 793134028 313100088 13461784 260818386 341715138 642266130 97444335 474920961 75617349 889037082 777870506 838755329 7833853 900582091 243139672 28635195 660224811 128146482 222318904 460051213 940189302 299263569 242195665 868575065 290466024 776742741 415713807 222903240 88116389 314979821 576928290 340042847 230916818 749991998 622361142 95477284 617309810 144913015 614591248 694124376 492121750 646411191 996885733 762043762 466338083 621870064 144934308 401208347 911708986 144651460 198019150 853660411 358340086 931628976 874792113 50519280 298205248 89719369 367192958 610796841 853303804 216259816 816304522 300566539 270414068 869099645 491106241 848728592 419652022 21601222 736737818 921384069 914400948 544440189 17837434 187380755 401021495 648589101 510057277 692216414 808244563 325248232 340308900 840428523 536141266 688659332 711101640 602466662 525107227 628378245 228084674 693658001 342294680 746440228 147850938 999199679 741432304 164616197 330016461 690545127 394295097 286625588 740568415 950992298 160819634 261087714 257023865 468453686 809550906 479786300 864183533 717330467 599936607 601195359 790986221 857352877 804986829 936831676 140324343 95584528 8857611 902284276 768767043 88594681 13790291 739103929 840238181 521900608 728426316 204854497 220416756 844321778 285449920 721187083 473156046 813928247 558065942 444726630 628906186 278077321 664849515 368604078 564019888 218512913 915638026 865188897 453842301 607773421 540071307 130128089 101752808 250872156 721829420 198932697 357404093 864416730 509397532 795987122 752997638 769353841 334982742 125623419 323963588 744762962 684458704 755350833 138663076 539661919 992548377 440965210 115941146 272633414 675936355 879467255 927464621 849846632 906774356 363398457 793659988 229844386 634770455 646550986 131973662 687500980 538888259 580131148 614519670 779385660 223854475 219104193 22392281 762148872 965089855 245351796 951313321 317512076 729707541 724109034 607996587 363046843 23554293 696638008 258779504 197686641 419772401 518361284 106808058 341161168 477158069 521663318 332305858 686577260 926900070 598774963 1761376 333087764 508603677 606980627 706090169 647986132 668321909 273429112 355627986 448851754 971693295 393726449 843145617 280328278 307861388 312600369 303111418 386245098 184005443 394429695 285120045 276956753 415245379 811569821 720086117 837989200 794736050 353063491 96212319 941823609 547046790 688974670 340058495 164460332 444646551 658016268 878474393 459980552 903753330 893562008 579185048 996724377 257866746 854404830 792226084 256043716 310849872 493818242 710208477 263899237 950970460 23857787 130128529 256735965 969117331 374435389 286107146 761570563 780045758 814964417 772395527 872727082 157165372 68857468 384971041 476896044 141893963 477180600 842269444 308124267 343895374 332659188 968360988 598142115 423892355 240051993 419483661 784663013 882518843 503445945 990426793 697661650 334896893 123864729 213894906 128337411 674553741 313939171 590548734 561962493 148963472 149130306 397717086 667214350 949838522 400025813 894105175 543667831 877329063 184281908 12283186 368012716 124946117 98315386 393329463 143947228 974063894 34436071 381993396 715235228 457328941 606506934 557836696 815387142 985431561 140270204 841802523 7029170 735969794 117231227 259199856 687722915 388297145 779699022 308111919 447546137 909617249 911834975 635507997 184943417 176815101 491300704 45624550 754312929 872013499 440720022 800556448 849362338 28625413 106816563 702738688 355398371 755205131 90558598 709669625 167835685 130317400 122206215 970306502 418754078 306463749 360916464 446223672 444757289 110409106 886254269 497705901 949454951 365821673 588766302 817905697 789817385 915436763 559396006 638351582 403511650 257351317 948550203 406225865 163615090 573972359 576866814 895035286 765524004 33045251 982159504 250636669 247187221 916932795 808595267 78196418 139392529 995161109 847142699 130486869 96501823 174744172 743138686 357861625 132428798 62407775 282414555 332576244 197002126 630588375 511508705 936757260 244346525 264993930 671296461 919693432 305958714 993926146 854407250 344151779 394537534 920736954 213138307 588715454 613353725 376811596 570353572 383801032 936731323 132285508 271382518 503291766 557102033 884078694 374621340 681046173 199098484 139507270 677660238 479847744 751465405 742409681 979616481 764341286 143901352 209406558 171759154 62157227 637412854 392318247 648779050 362817762 857005793 818941815 870611989 405032280 400315895 641394508 175030206 184101014 985461242 10249751 728312446 532475122 564016158 969255953 936555414 273674115 912814196 749317867 776965368 642919686 307227180 554455411 476310171 967335588 641699300 250491435 853903217 57553940 802819793 515390907 993950876 997089419 458119970 280774971 657797615 35478191 936855148 301746839 829221253 15093548 340396100 774015256 489831812 691881947 577161941 15497801 601411587 167636217 237158717 39485001 494769511 98812364 557715766 271881763 668324994 96554000 686478776 686296181 679088166 502500263 743042433 826406492 956266720 668860885 492405665 863359430 322684634 947900556 730715917 608715003 58406276 230392674 733496481 103568573 521340006 825608259 10789885 288986157 464051763 945087538 895082063 509584696 665762001 5007744 741008571 801635494 839648838 768051375 544986360 516243541 189741843 484405555 922552135 132143826 873615657 188986965 771895418 937919424 905573638 665482852 35566486 455310586 780963595 304820266 169545761 499493629 475528166 393038122 553602553 694049104 397692167 250630571 14760375 739797241 854921597 850234443 491568323 354668245 345255101 415461087 310474188 293505099 903427664 364520152 903720093 519232392 311443376 795501330 171728913 574950056 716832512 893499442 941822445 97251484 424177746 211957826 34781503 738428620 547759434 841547697 307745581 105436625 156232274 999215140 465458895 433203821 312289274 346303396 596501628 36318568 298574754 974108549 170599582 431949674 589271846 719396560 871019559 539420353 919378939 551699789 350290806 420203700 717155491 621015532 562906028 335453372 734070177 196373915 120125804 674422435 466103890 964710198 473530682 155187725 198215460 816527554 468585618 405556917 839904513 222988070 185330374 175049243 823001179 498690557 826483397 261551811 259204650 4245835 494315430 991968764 692321358 522247219 593841379 64114338 680533860 816256621 37309399 686875027 856319985 23975174 773760040 963851308 814328372 208881726 856195760 178728572 507204706 984312010 178473339 992522062 763805326 781508360 543013794 721893784 223791456 495753858 121350418 156491214 853412901 970055693 821083054 684435433 866487706 327171135 205879 618080052 701019972 136025866 438210365 491323421 400219006 298764241 986077353 485558438 620455500 4485147 997625220 109065633 263003714 902913385 761903023 769388909 838315431 249857711 349433185 193462471 408060950 329807297 875362444 393547920 197669567 35432942 243510509 645360744 488156832 366375569 165322630 567148491 713609046 870766699 391274694 445240310 222162430 810129341 602843010 331804805 214083198 174673639 329188091 5050520 854553215 551470223 738883129 381343311 507867093 408081371 744056240 214687083 924819766 452402993 326646941 942596584 635794122 376875873 6553082 897573777 3161593 734197230 803642140 770643750 136946491 355281512 732906880 212385907 646806990 292515941 276099708 853879311 128893582 74586210 45757388 485388842 879286039 397318545 790078198 750817180 688511334 186188503 89081322 849892526 292785468 944539742 762003460 787417854 529333155 588039310 39169003 783103538 78263360 60328212 545684137 553802442 918461749 363640510 100757937 286999498 423083840 48425076 73090432 945121137 68868595 336524524 697443176 350892768 997081957 616952812 843254837 403511877 556502485 97942503 377376566 644982454 629045928 6054808 638838519 225096760 812439296 693098483 14378300 124763011 383346910 405251214 721789577 154404489 86660231 956672233 334193650 728116319 437970832 989904209 722761264 46091890 372044907 716022675 146956298 186098196 798956422 557930240 664668913 338716207 173055361 195004623 220347020 749491751 282037508 481183302 253216039 177325600 933019500 590833745 14028507 725161685 726782233 709864502 937552569 769821304 642477240 164125469 937167910 403711844 725753890 25142001 221079385 176045001 930846540 853633561 619881624 410260153 612251294 810867911 982455228 619918476 884990301 709383559 210204087 504686992 429530108 203496464 294776480 335920152 61234004 845728162 519700707 460205894 9289857 176089495 529011549 354589679 784174898 946720081 18716536 918932099 133816511 996791158 719274659 429569726 493145061 137407534 237912700 472104159 554610982 405359039 42158775 384281599 496212510 378920099 31456576 425240155 946017585 187187114 927608604 194334249 829712790 109157064 21392053 252064062 373105207 262718295 784585229 19643332 639233509 13546287 496720231 600994477 317634164 329056339 553813346 962518252 775579007 951596399 337657847 776225366 82261257 64463616 209494268 402553378 761744309 613522402 893073472 468214812 717917283 866840230 696657860 163542282 416849685 827907966 678179122 627500528 990529478 445960792 439161087 764174103 877440770 759745975 257991328 216212571 180109721 897413301 802788231 27356056 280135809 254488288 104659164 850832039 598247772 807424597 632667980 918512621 586129520 68189550 313104849 110418711 24379136 672311328 80744628 537740256 703227728 760130927 942503385 994325967 989039793 692539277 885990533 412997686 639132081 646586597 352893255 16932651 638432921 958380291 614659220 681456028 60844935 15363225 11759787 596953160 351919855 867724341 225763721 357596342 67223137 983130900 206404968 211726482 785042483 430147277 577146797 778665191 467367301 757905101 939911921 915529737 124965208 374370168 312174631 686194959 965524290 694922142 734603104 679063034 241316967 509725252 706118350 625875839 661922232 864515834 876458145 818881819 439336599 482349652 62825848 924643953 760593237 772971533 256304370 455214801 496809174 32267521 551961265 277117045 720197093 478138925 895179264 810787082 929090189 534442690 261384955 19099305 497141215 544449664 760396957 570075900 671167339 683523264 821589531 564234527 139552359 743631823 940482693 74885020 133586875 706070677 956546989 756353415 57467986 444197557 448590438 819342301 54298447 887474549 771636509 378159044 479524395 413697521 62542433 476684912 224551321 93237767 441741178 314216743 2895303 654253249 411980201 312347217 416871939 516358813 220649046 204516853 807881551 976465223 791948251 934270161 721640977 316493959 275959716 83929980 60536854 823382891 781150306 104310810 594466499 993760777 926393529 340279195 761316549 831939665 905920464 334906570 746619819 351089326 417732812 774546152 22833446 588472413 25552996 894455523 335907374 697638538 609469695 597920321 522800135 141988345 461594810 5473668 509095526 638360045 327133192 946954344 254355957 716632090 736452536 513087536 339555803 537581636 727715915 294607066 614473466 662896135 966456626 447751416 96268766 496904410 163275413 518570221 698280856 476430442 830484986 571068752 556086096 958727892 824879024 606988799 878092622 10387016 167280500 444786335 119212624 34359733 752089347 804013095 755351799 85902708 510460951 755003188 555480843 978629398 753688049 722613782 213816043 978539054 336183637 146680635 420683758 610400037 801926993 138608574 868492990 615141046 636538529 167703744 309873859 852799177 311297550 573297867 664178191 746478726 463374939 394407486 549958977 760619632 935128952 329029153 867512431 143184819 240910118 732355733 370047841 148749823 52190361 654672845 115427007 110882880 419091895 135390301 933988708 159834802 511565268 845253652 853610754 18903779 791921895 219027156 328955347 35856287 223223595 329693297 780789840 153754998 33936407 630759701 396753391 870471535 531411671 102972461 780056960 219358098 979244014 162841780 566519502 399542146 292391169 560055794 476136603 312159061 204654427 703835607 142179171 680302154 636371975 791349762 228395342 53718819 787132896 600083679 151332044 424330618 97985500 264547652 921709387 909339482 376546569 95691258 655863697 358700190 114637270 693530295 742142226 318896770 617698140 152562463 76005352 262817065 713182566 404896305 737430274 736967178 211622056 699393598 427077204 28065750 674879084 226895625 450112085 852354175 484023678 562936205 887941077 68520902 411735217 702482602 391338813 684914292 685408364 230351732 689023880 946792852 155940509 113842686 492421701 265892896 405558163 61197416 622026632 962869324 15608049 550088820 817166612 830481151 985561268 496095427 904735018 288634035 773723825 126047582 294368881 956650937 178602038 582703342 737230879 958624388 675503450 938634270 344187492 75834251 515311875 305353655 650524451 930457696 669891185 703887669 590338540 508643041 854816224 114234350 832484319 67594311 56742019 811629654 393749513 387098469 826322052 351445468 385482415 153809713 231570024 850457775 495846387 515742707 212043969 493148895 631341685 457190848 234399859 611537119 209431977 127595612 919772918 32784699 845911124 707256357 835873663 2754479 229226458 472028295 614824764 647733596 619032667 797706653 217920745 903296688 554937270 359916277 507198065 141880361 854048985 422197313 144262811 485542890 953237176 717222583 242189913 275090397 928251272 594526071 192713828 851680228 543226004 711518664 141891857 588180322 13916615 212579363 914651136 177493605 517864808 523813425 816317010 832728784 262343001 726046538 70272907 821594114 216053196 725075772 233548013 346500858 200013088 82270917 51994440 325371048 850061332 197973682 224782110 281037513 542270274 292091317 685131225 44989658 799444116 102972965 572956751 842848072 281939448 908056316 570035008 902047202 423938455 618840473 159486814 215887807 932693708 107073801 366554497 615943198 452151409 362834121 918426246 219587847 213147883 692400726 733356789 88497750 409111756 615689185 570288488 934842637 774881109 927890806 429991226 385196730 266748393 793904941 319700184 617846895 297901135 203945832 644896607 869688923 164088668 885441512 472036585 551802500 697184669 252495773 639345589 172994845 816697814 148492859 637085586 117807549 640116378 534660763 790588888 445545905 661189251 923074215 643950520 100890771 972120586 73288385 515785219 95179295 534292266 530067866 86857534 625857550 905213509 944513593 687381300 57914 115768189 535607869 529731262 688234601 141136495 360856568 324585754 511905288 933444443 528178958 158575876 892544677 592086686 609105479 358768555 886152073 659753679 265838103 130728651 617131135 449884824 854690179 452140729 354260250 259349112 315294994 277418260 310361410 963908030 263572696 993518569 131459580 903113669 996655740 525615035 160210295 319156588 361439041 837276745 622735376 57530986 136863491 122132076 519287729 698886088 226011430 454321730 4117781 358663978 760872119 361309373 57413301 17927264 996397812 584830798 987997812 449738570 684463641 621510787 294496334 785054303 470956357 30968375 615911267 656870092 501630693 760732126 107368752 609209284 851699510 374829630 690887545 865245832 399831721 52517457 398956248 637580873 323790335 978837448 498457237 104098884 81872820 449676014 942068238 820615700 755153674 579010718 573463352 161396197 560421153 334165468 122031834 508392485 860907396 595989169 86502638 376578455 180314530 373992094 903419446 160198691 580598090 777829027 508880288 715843712 948950605 958582727 813448775 256447511 832157483 389501003 387732908 540019634 545809127 462954230 793362483 30041131 116800089 108197736 14792993 332199009 393123416 851019356 862158839 190836003 147029951 712211054 838168786 68233038 724423623 511774258 380334549 805531714 462973790 571806686 88160584 99373466 62258967 901609980 520025121 687888290 128647693 80437947 414419140 536130113 821174540 340436294 946310094 983345813 43187030 992626987 675476753 250139812 210885008 475605577 584322917 212770824 294262319 808133356 39513209 851128775 902906402 344784244 561511330 70507453 731957973 215147174 171048925 985624199 505494006 152890854 933369837 947878924 85810415 74882121 892357254 59558676 374122473 709972162 659342176 374467011 106824207 715777882 580245650 262936132 614774331 253489162 788583834 182022598 713597143 3645731 109506077 226592742 191468642 282912935 839663981 834671442 949873390 491026164 39971151 293683942 465954650 458245988 627548775 948982958 385633808 940638316 766965280 687408107 955816579 553121067 194981435 454536515 438389544 732818156 555751883 318709492 651652366 249148766 241114812 722349729 115566702 377724662 46334881 36473099 138138231 489464244 670713067 305689250 17965502 327928 321961738 191578330 187877623 123798877 190483411 623750669 894685928 132275084 70027674 360460060 673003832 640136008 169658673 960058325 544721159 522686136 590888057 494310651 684366114 260836598 445044213 667889725 273647435 301099181 880257158 151058365 469008485 367797851 887634539 915081956 981947875 482621095 206915308 808210708 131291082 812863807 944352947 481303593 907099710 499869728 368218942 141775784 903708755 772278464 263139962 528264716 924201271 29281542 32888461 393642193 954616029 504588279 755262742 556565607 910456057 649366207 198958030 264268013 215682820 558609493 879482549 885711244 358209182 435633494 301776247 858600086 441633256 106809795 911643278 214365514 832395572 298614659 178559581 392371349 342340708 368019118 781119370 534970405 362604717 948201582 532023057 236734251 922211876 183905564 569589581 604756831 211681373 322969307 197393303 21335002 492315889 718584161 376525219 802797111 54689611 424602128 254650384 593447284 682984818 75727424 599652334 65538346 316594018 571127613 86012415 401762778 866007940 488991910 601490463 197234696 471171917 414754873 905020438 961832638 240258976 407544504 9848037 884275358 76271861 690971377 462139256 820387881 30623515 10569660 608640445 275313403 926205685 399981231 371770687 709608573 648012299 974113341 878162723 95106597 146251485 42493011 701490385 76203607 714925802 844083594 652247947 229581099 265117108 899942918 448963787 289128343 339297096 847343449 105366606 306913948 456298213 62098740 921181954 955152179 720568569 323634569 983981590 849656059 372294540 210327741 247481711 827783096 884400816 861810186 900772715 903042075 724521426 300042012 436585779 29472102 885881274 796317984 704885002 744425620 630219139 919942282 658345631 19639792 63951849 86653703 865325787 916145384 543812520 962151454 225175803 628606048 663958379 917619113 658595455 293030100 93575835 843961261 668705454 402780976 327239150 372446643 922756334 748300281 958381436 738560527 459075348 781930260 233789667 726605485 513696667 943151124 162345345 432733552 346075461 880288304 470741114 707678064 229129100 444170349 263631618 779626743 42160551 58207780 436360002 610298901 470354246 28850329 342189170 619740072 828455357 876341286 44781104 200825217 180802502 327477105 700423786 809108323 95095080 406174450 989724466 128526967 487866123 378237042 485727097 295993055 305490345 424204387 865165483 117488544 446900561 799893315 908581057 904891112 127683393 750145746 147283848 894940595 61055934 759702612 459456642 479740183 494865413 938389886 629591205 861746647 677360742 857795456 980174772 750743032 284478151 223131735 307421624 860562769 262699343 710074243 924089692 160280502 626313483 639785785 542749693 68730832 27418008 840854438 802186752 716362824 554722775 386045930 797127258 524756015 444816168 85972631 718331162 504526151 391580051 945737741 994654408 813567369 245998838 952258515 519408749 880431164 977291821 526246791 587859501 518178127 896977594 345629338 396977410 762341108 37754650 361371691 389145360 483811187 645518920 882117374 338568534 991904030 853749968 510753507 319969860 637736444 52116571 602902981 472530771 493445114 253759683 423603231 692530404 77511620 892200377 762088302 160949621 830441892 576207292 172227715 190225809 559576676 985286618 144497326 79557598 170778172 808966507 140923041 617631536 446795506 47526806 934877271 112931688 436513074 899001631 613003697 684768842 587045659 321387776 811853058 910512792 740461166 522444677 633922279 900157110 274405954 356175003 863300017 846944151 796785776 34250798 803041420 968733199 333502573 208252356 427588350 293799547 152072761 602507470 545575473 909236372 672128127 770782656 915080598 397822758 844338286 347459884 74381050 602979645 158269365 74634051 665591439 502844305 637775543 201267270 968217877 916156586 509241447 16324031 836102227 701156178 19817313 137568307 859987557 905615925 359875313 866786460 70756094 70879276 874545389 801005965 670362441 911969446 682477814 633806957 702269611 327372157 116430998 637295544 727670843 29660252 102560729 656392845 889237892 977055019 665527988 149023788 961686478 866683069 735716526 374721592 276046597 210542453 613282699 719367856 258463197 570195790 528547423 264249463 246693983 444403572 165156681 321816573 451047829 294173573 175388005 390222795 559362115 154048908 525911883 930569082 183145498 123047425 863638902 520414982 326853752 735494055 800540190 732468928 26315933 357199210 678431465 735521876 396356066 971033560 149897920 564398948 554922449 509938985 712165850 163560486 755627899 267462336 531748412 769147315 387189951 553394962 534967582 935042175 642891555 683312323 731478280 439095181 158709113 683706486 215799657 755382095 464818536 484327012 24787900 275884294 835148943 924742990 121516308 528925514 91065 295510782 272536646 384550116 98294067 700942546 639109281 796517393 631865931 922562631 237598448 893816851 911170115 739335320 941322169 886248847 815543793 404972510 808490043 276465753 133018018 409215490 396225178 148273053 787208160 143126661 494238054 121281372 97150201 919618268 605354710 83791538 51158182 167833881 18146741 382259449 916325419 416713310 716243831 985163850 685019757 176017528 560278322 700801068 778030959 417086744 982889126 625038547 347630873 551035032 979283725 882088932 833812014 379482427 175611116 805109644 148612824 118422537 59412361 999629989 50648098 397394627 862540237 853198941 268231542 462983909 254207277 91258214 691806955 801625327 193752151 2541696 32562387 597169508 662894060 782998577 29829064 800118184 934017681 396269499 102262866 210832283 949020385 520888903 52166853 749644507 901912134 615503100 646672054 283043146 236410160 524087243 798740755 465291199 167862901 955742593 482768304 341746400 658352681 369480939 586569461 788849784 734111080 636940078 98361373 897906416 190291014 344881775 701995856 875276024 583707307 507954968 140390308 505103460 942800868 803515732 192617400 123506224 262413417 783389698 960402091 946618076 1845578 824187247 392400692 207547855 888191349 975620304 934994082 310363902 503138479 281012177 709326895 813868734 706508654 249867634 515626914 945376428 530315452 707320117 831220948 54126155 917178055 904630935 916657953 970841296 299726146 365919965 190158243 339760692 918955047 813927825 764916051 481681071 707671234 533996801 865055198 778544169 995890630 774728171 133950677 641700209 443263703 657659177 510443580 151321403 339072320 388310426 512226357 829643674 417720416 653240674 597557808 409623951 818653766 670737098 7285927 159725874 978119726 164058433 706427854 412254722 554822605 92123344 341968614 775720850 419656808 876721252 640036843 817114680 340995410 495894012 398135436 793597973 496382205 665611126 428222389 926385072 367835188 105152653 671474247 915293510 333537162 506458149 27279119 960519396 988302373 482729739 85232248 801633270 222539130 616578341 39975339 113707758 879736615 637525512 461539965 408841511 806280590 224395968 605495584 880394294 212499611 983117121 81616015 350019011 642829030 717973347 633257736 995967822 224012889 699699238 648711478 702240376 472852378 93233416 83997330 764546612 90019736 813661053 195477695 921880544 626034863 246097225 182943317 507629932 844626597 12632999 764322097 122536041 593257016 969515207 13296529 60960162 12191728 903765998 670774379 622670966 373159409 34731641 305093059 945243013 259289746 982136101 559095716 769904917 123223973 482294052 812287105 233939328 525279143 525449869 83665030 594439397 461706764 235683412 837319460 573158858 267823283 161638277 644355096 315354522 424928530 170389297 691260805 774285472 163655104 209237581 237513789 994177463 474248506 806897354 671898836 266205042 314116666 223839301 988969989 841847592 817726122 873512866 434044016 860193264 59057253 327481355 723606241 443204044 981845615 763355503 140350186 588932598 49186374 457358700 817329200 121278021 304613715 908537007 603098603 399173474 117882850 6086838 454617552 384318348 524372307 705034214 244588718 73524033 716467483 771533364 332767503 510978226 446763177 793907353 137124515 745046910 885734550 715673193 29199269 424654034 11366538 407916920 932753091 268926590 595938385 302585832 277276190 322265850 861311626 290423577 266818725 832196951 607831078 639123148 894572025 250852591 656888360 546660834 913978942 587577266 491759083 73934402 721441541 192085171 500337395 84422049 645422104 508214444 174605402 292692205 913941972 320357415 389785548 12347959 830097982 836523976 671730141 443081052 676475049 370362249 534959290 800195639 978098552 72546847 915597917 955308211 2047604 581115626 999484033 935304104 892483012 976442441 919012882 108968485 220021677 82851318 61156568 597015658 76055415 270526800 681184300 205932890 87368766 455598967 287860309 536582545 930237779 436265313 850847849 108697844 193700968 442324758 202431122 297986904 111761588 509376072 552038721 801647888 784411497 567561710 162002234 965816446 482739473 917097303 455584129 676602773 967788321 568773073 906297130 75034552 644082901 825684223 119842228 166477304 713116419 530182305 716670519 64411218 455685886 537103315 991708837 511957149 139507450 317118163 265680536 190009857 33199342 349946153 883513035 674275338 939734947 94154218 76820619 162763387 248225869 979419460 673725298 469945208 650721338 89308511 240860570 80335469 704452273 710795217 594619313 430663277 169913664 607727916 348405498 43512715 326878578 252892147 576103057 247040827 499309391 126140347 952039534 218798795 859604340 440980423 71241 590187637 120111552 102159588 145494805 632678753 939675792 771622398 723407438 189421774 413111134 41870992 115598599 520471061 610954011 331296165 513284811 325268378 29846009 309356036 478619037 230318219 343828560 160035707 772869195 13319962 4186872 289949738 131199718 842167555 318307401 54003365 120705110 136243299 805634473 699772289 211264590 509494101 346167987 412658356 128298079 159653127 122276916 573080197 847263747 900908232 428938767 354721248 910364496 358213026 785887840 505016 448415195 818374257 527432047 651420769 900600030 301842324 898821409 331940279 482014136 416617238 95941394 24738696 770686401 983316957 895889388 445286510 535785020 34750092 16435322 780903413 425927316 614806261 264239640 688587970 961568515 164977722 94908974 678068541 766809912 973741501 119509966 774963897 995556651 881910439 122883263 54887334 708788923 124939302 85399081 339540855 606901945 995628164 580309966 773718855 4502533 483212251 888776534 944139421 808746264 155334410 580091943 693149128 129551663 331365829 808401592 902955750 793234102 757482784 746659511 879442656 563114046 972248491 523603561 589811367 646966264 203851525 935297054 855221850 515504455 267940967 187583439 161124076 429120236 966315912 810074048 55157810 433904441 39116985 643461525 894441921 211574065 994504363 982004043 233862392 17692428 689689792 245813593 168876353 580553888 460754766 696929535 141141181 276594522 191955362 746298817 183292356 338316991 365281795 764979855 717738662 853498530 835809735 93948917 819033360 814992792 940631371 914356010 865738974 538414270 997633846 47327615 794289712 632305604 430531750 781393018 190651420 301250480 567861023 867498538 546549817 806506918 250668146 815716338 477771902 870853762 224180676 345339790 91907564 974759190 390527234 542504360 796137583 141419630 571137411 823769991 54501744 52162149 613744582 150935807 559777309 264616966 639784495 459238781 281064581 152310510 157675465 630913241 419222081 458946182 673739987 742643179 374557352 561175470 736825272 833752752 698156996 383473879 52078765 151648863 288296045 376636150 556940181 105734567 806430949 101530470 491554427 170453241 972049481 492716376 966618209 56196497 564018312 963662258 384874588 471299840 834298027 945832494 392769654 926615667 381373819 24424419 25341789 461614770 563369685 814587119 904202629 979294328 42180267 333734355 307584027 735908866 906723403 408413079 483354817 98673713 163078998 84520216 177603678 852319965 907988080 539140703 283178162 590923833 757435498 891205135 859280369 972127713 165933077 548138534 911023542 817324470 403950711 374844684 857770983 611260794 903930048 274236078 573201334 324610079 164493083 546674228 120545428 832234471 892157837 38543992 731669985 717276032 45210093 137749854 362522995 870418233 441520549 130824701 10014363 146545116 483360353 865297786 970697489 950514715 123849779 668070348 534141026 81720807 357468436 401711717 873958353 773403063 840722941 126229235 549650496 956191603 841150313 140250115 132353340 997571548 36676384 391115302 119754270 744148592 623997390 312430900 625338757 729687473 472560404 914147557 446298277 398760592 763034609 773490987 899700799 979536925 707270506 279685385 711400423 893098458 33709524 930502452 488243095 650218214 535922417 661661482 36819365 506694307 402998145 614173508 15984478 449802728 626699519 442815203 311825530 303961674 168866984 286312842 12733785 455971532 723020165 987107402 717126069 34120493 899783541 257826219 826321434 532658625 571136584 306473909 3231547 678281409 11371303 802154381 146025030 684241092 365075416 481736378 450094131 314057761 729168598 682483357 827308575 480108790 798856615 939826202 740376619 889709820 111246913 571154225 372999232 135704597 189647023 608102295 503470251 277846282 308871931 377844566 379256811 218522599 163095800 124108147 865022338 480163060 481211881 526601732 597317219 893016928 468365289 328533088 635254089 296493755 100416332 305202018 577029397 577227833 314506860 374330326 443035418 106170748 287990403 855403430 320508019 437584890 557147498 714284589 828015891 934917068 897778859 723286676 857596108 24538031 63865963 806411358 368847681 179960295 752699307 155822379 279477606 351314331 501607998 423559470 357735713 679117298 966292550 47922984 562479594 910310703 852444767 887775642 844184205 854919491 403116558 524540264 436779824 99174795 780894314 878105402 355309245 306158196 336392559 571718304 754804428 853549757 754028555 827492639 571543834 962010438 515301086 853167241 942570261 149043869 409920167 436502639 783100973 823777129 63866092 804190488 241600964 301763798 329165529 473045777 443330336 924517683 21350322 788536769 753096750 724228784 597295587 16327869 645561314 550508761 726702107 230447039 948140483 820970948 641135796 254237654 528300747 7898997 287878783 844403490 772301038 649905332 546805392 414135554 663568442 752182796 854121556 200772947 217687064 824157078 28969244 852568524 49161234 711293548 104592342 546986407 320841275 535491216 972467103 314827458 717009814 585787035 130391723 543462438 514654057 183802107 42598567 609679623 736703223 469811586 697591529 168421067 752481379 483399875 698557045 102472780 171674901 823707955 64175316 878600822 622294842 293102672 771810688 327596582 418614771 400179772 244237943 708221325 529211926 753236320 689773137 863508993 68361474 511623313 156358917 618832157 794154160 115668131 968597538 788668929 32781361 83528598 285035783 79054067 467867802 216492110 323209950 177951850 155245357 908171109 131822031 99553237 566411714 853154101 777072890 653343165 208509884 32068175 947357449 191502138 493411103 541132529 377754019 73382439 608706022 482026535 752130001 832287734 768080524 562176826 783775951 753331543 330290508 694887202 882560642 344383961 118550851 169705641 554989638 414609821 504369222 269477001 580375000 753960897 476550937 905433421 240955580 69856683 717492685 143902621 934820468 702996570 462055661 830144630 611490308 166874737 597000435 696003311 935382390 258237657 230020753 503084458 37015340 545989600 485134429 199748667 638904759 71762447 50210661 438513583 141281502 364674464 182580439 890437403 970332017 194295739 314419004 620330368 474654648 642051299 675231905 601363165 408804589 612990410 663282578 796855622 20460548 620028524 693864071 926497756 4699699 135364424 825747124 987591073 883955625 736656266 128945264 384124331 638561192 941098219 480603686 837106784 924590190 325218610 338624484 187660282 201859653 262577799 987678446 44008766 702526854 643897781 500344046 962358951 17785093 239718364 276356508 842099855 15893802 253863935 479041746 49221762 623302841 430328138 310553074 963633767 313175795 507718757 662308290 98820051 805964969 467548827 680718859 907071198 839550122 594242822 21958212 566213839 944980616 288190232 918481360 134890813 126152830 298940547 292516736 901530336 546951267 279985826 335695340 59861285 187846890 258517495 206709191 726712371 607821256 117044652 913626505 653143936 132592982 714926529 486258364 483205767 25521483 330516263 639567560 526248588 413487371 77292275 778462701 975722075 636562976 415431703 211730279 523306530 388844096 542905954 830803507 564065337 829114198 46745639 893991731 172295887 361626965 699624587 357855810 822120898 622882772 612507966 311229766 532210561 153149063 595559220 851073872 52630364 437218606 721216187 521002164 380331110 839482271 886110621 920081425 613397458 680390141 496936523 840879456 248395139 228593870 369844161 708010678 43576729 619109286 410090314 638424438 693059826 155096707 722729266 617773154 72789827 489794205 533415399 738547471 719789992 258743157 27310566 236231586 995275640 333329443 564191267 200071255 98899661 881397701 681760428 140661513 366249972 941841393 308347453 287762309 985468877 981571945 477407143 35685542 714778507 787929348 896696689 559734360 455723157 178628757 7940229 455434431 984056272 544860760 698097651 293138595 996945808 668788365 13600808 129469681 344764797 761634103 292089577 699296579 471962702 544854848 694741459 926018306 301020863 443653293 653716962 605732653 87697097 77787509 792248915 976855071 848386735 930016974 752125506 296994919 527756917 966806763 566502007 404762559 932806873 601940433 204421204 812768394 401238319 436453094 497306301 505952758 342293841 821093053 880216711 937817311 812430466 706091924 539213714 164436932 673483317 865157174 998152132 489827398 781699906 936793075 69708844 631815314 328140865 764065400 715166533 130575613 313473090 578206176 787136019 849804184 280233074 609863391 977662360 463702656 717521014 283447046 16819357 405665297 531500659 621975924 239091861 143720472 916665832 351799914 476100712 37465135 927608084 816519590 870486921 62684104 736767427 24499843 42999838 52862008 445771736 461515157 270592630 945670814 254021528 483809552 328094400 249290774 41122969 856978092 738644686 275460583 873439429 415997885 302684133 875908328 977300077 736668426 692770637 722673405 932184296 973550338 955676266 69503436 318013560 368187704 732441224 137529065 940946753 584544331 175501550 373629318 199958116 627572486 111904627 2211277 608448397 155152348 514999100 462314617 999712673 540856514 42371021 346568615 56249788 19934990 210317287 707138103 839369928 195856669 18234722 536435978 96650169 652386343 688051268 634645047 687828185 395702168 876018342 725636294 406686611 682256992 65408765 76365422 320017224 216672454 755858477 52168104 363660939 300940946 656704245 617397299 930348979 53441586 114952462 64070627 166275004 396305804 858814688 108898035 751431478 265299879 500628654 442135833 299227788 819954589 448698190 739218015 354724574 557621797 95858597 58787663 256613796 361606497 153790771 175082809 578880230 985302983 75257513 395137132 826078661 298760616 599829351 84644953 582969207 308017286 256142791 340221179 390168572 246115923 97099412 943915175 638267294 866133212 298420169 168430307 898926558 16937705 933959882 500013607 314900084 522175734 827080842 465368662 847161803 689540948 776255492 805280929 148000051 883856240 543585485 742935374 504410327 945676754 880396343 404505090 492523096 367369964 260767420 265555522 177560997 103882564 851296525 613916222 66678000 436729554 279213428 142447778 562179223 803428161 377473485 922945827 847839651 391177728 326760106 87550966 711122693 721075885 638490737 529710297 513233559 369144402 196617810 827911007 602558308 301988213 580213778 345649311 917305273 906483134 724714505 693377239 21260100 882509378 977229206 640722494 130369874 77173143 870616325 149636333 697035943 293772871 611369766 822969640 333848615 664544703 240251919 518345380 25872598 256081033 747499401 411724704 556727910 633932545 4647708 392046074 718752614 587162690 697281192 590996049 88351107 717042163 199157235 804949729 681018030 71188924 795764898 232523827 844907649 752624118 356414380 679141630 264898766 898996210 451783009 62512662 79898202 417896492 442603073 57297792 754574632 252671089 378672499 260807544 133767206 699293853 379876249 224849627 343669559 754876074 686618451 292456996 503458479 208122065 814574375 656025544 905341618 535646757 905610467 476377822 841056520 331926360 513311789 861983737 945272228 425443593 399097949 566992841 888824912 138443361 443636250 985632306 733157303 75634641 542125047 88516580 242179564 485677491 346308101 6351661 781405132 196721052 394919811 966556131 447133725 698739952 190605481 198524669 485423042 430259156 86064367 596300368 143038723 24868226 574789743 859588625 358249452 696912481 598883176 780791351 683973161 630500007 463831142 313755898 493484276 504051679 506884956 482264222 970651000 776747642 408502342 279588677 946171961 735713473 688547003 561322965 255612092 174559811 447872344 944436769 473911420 862795859 279854703 528728606 320029610 192073259 116438375 990240498 43205044 609240959 999556654 676891107 431744949 701971936 439136857 674789588 87638056 284878681 527080326 929256210 547948840 47671790 59606665 903646575 717622061 786669913 897386530 376567910 614391277 114325056 498199336 877804418 181172994 296382312 561085088 6586106 682589832 436249528 557065907 293049416 419843488 73971457 647996475 306471551 160630498 418746104 578553824 583149946 16504598 140792907 385045924 469361253 738997664 947783843 646092408 962070048 854547428 43331128 696197202 816180845 369060122 669154475 487154799 340840556 494369768 387233958 749351416 364601739 922662332 613700049 648402187 645654868 997738184 448285385 839808868 379825584 643477815 164437414 35914372 350450150 957133832 307119689 105971189 27569721 278219990 661089514 941268001 124312283 940304528 711970761 715110668 598580629 817935706 545838492 340701232 773246725 498279478 539697732 269341539 380321532 458029177 551663964 266013972 544372970 529775245 389969229 810600600 528800583 337576879 723708208 157152314 99968321 584475644 634770975 939339697 327990904 706708654 354716921 991411287 34119910 995389870 586481933 30006123 188936664 940776983 864759744 540355632 418684008 122078800 125766129 486344054 638466201 164045024 301282173 524149655 741035620 156948920 880514604 548614784 898826436 612141299 864755983 195189715 782756015 721514813 626255964 407219920 527986774 605154207 283146228 566539319 909580125 182650579 395118821 558238524 851520128 155877953 992058008 157866856 983067384 375892702 706860500 151175588 455711798 41240380 365502305 56398110 216663869 422819736 913129056 191801704 834862422 340272486 466834277 221193942 758974490 739362448 822086070 113322102 433108159 585376759 813763283 270386840 657451513 499275234 253508656 618677110 675111973 830676140 249649274 406701173 872535594 103453873 5549596 428577412 691837822 679019059 224350473 803603717 689042951 316838668 515534462 747112650 994688922 622532920 384549071 681368388 851213104 796243580 412207607 529681201 978632440 184336516 586874204 243626326 678317405 185072119 931355570 753839077 780527332 537716537 854514830 766639183 554313121 174805364 128533128 452025568 913995324 406813985 556076766 986263813 402823039 677060111 485566906 941180220 850114351 426666986 122786619 88908078 426176958 862646807 892948607 458820722 777335421 498511258 491305998 606956185 109769425 865423329 196799134 924642057 286474095 940034305 647299549 638240935 496398295 725003885 856982478 622045321 525727994 463489987 961437766 160880556 127724561 678995392 224214994 94626597 153206891 223942633 976940705 438296156 418627481 979228043 253028330 755804926 643750795 452983962 858965513 326931923 705833482 853310761 521658605 456679697 939007249 79814866 378409753 15945391 820081824 204460275 518874468 552851852 39337850 503466748 550448067 627781297 122054423 424424653 814590048 168762246 586683724 817261689 689738981 659153009 709097325 145319594 926658234 724615306 544097243 934982254 589283437 145529619 986512285 798559219 830048112 581565228 880733530 704641959 650657706 32633456 976854172 292264970 223378676 924781997 254962818 985096206 990566994 178927533 643544733 547117659 678064945 391541965 294187480 280570496 941904881 654193348 774753748 922460921 634698344 999938598 679065107 664344024 201968428 704572102 356934826 322221712 237354503 26115250 360968233 305253601 706759130 147608660 85815446 698729569 786472980 551512681 450095217 344193805 723438562 352014772 952063156 159235277 771933927 446042292 92459249 473262633 629686003 425076764 772596895 639090356 934446736 873377635 456604488 72814538 705310411 205963599 947671890 342889020 364938812 410470369 979415114 218044163 308075383 608241193 716884435 419647497 694268647 770498639 619962594 969432302 584969609 598725132 841776108 321507834 611098573 195414556 783956707 289445575 208339442 490572468 760314144 569319017 443389698 36513638 579224194 647825852 723133857 525647459 743459597 449250767 656338187 977853493 754656191 830917023 839424492 216115923 748614548 450980997 343898474 690034164 438616552 860161717 150629455 487097299 110973680 993655320 45178611 817669945 832127396 396950010 555824910 883556380 841899244 890601989 965232205 108596746 27423756 731595799 50788648 534209756 241306766 72927722 216384084 59945794 744243255 504794371 13889036 692581650 915131189 717298948 579166679 539571348 687686918 118974457 877982270 67671389 945827572 902562815 388693921 954167288 937568532 383073024 294164137 648263833 70994128 527785706 146231744 886568175 93737955 994046249 495114472 646914128 523199809 602182939 83842102 947812114 906959201 286002152 776675307 979221435 27679039 407392002 616067685 691098656 114296926 620528741 911208771 705540571 755066966 500188386 422822486 404722564 970155400 755495474 388555698 22908154 741009616 873608460 552511059 251187902 374101420 43543342 717157484 38792156 659143065 296289558 934322537 124145849 20544275 467948559 226332366 26271716 404787617 839250159 344259836 121725713 50997766 897613695 957438611 791341703 598641847 816224945 257027325 505929413 908065825 132585233 589760033 418081984 39398232 958245687 103475701 963869223 761236868 467022635 287401999 626360650 122945870 187076465 128665537 574990176 932841800 231905623 992214418 994176773 212795332 814736796 931136430 905896128 599901036 74994558 341643691 524457877 752375305 727948804 415521641 602436342 332596015 50267822 353575720 131135497 783699158 574187479 753838121 460864971 894997525 542245050 257021196 349585797 855178313 489793482 170868194 650120044 250663588 640945393 613223509 268951515 18663731 796825315 975050163 573924613 91812753 90601969 93510410 545780104 313076414 28643361 224496206 242480371 630253137 206016250 592414294 679691413 868971195 650083402 458607701 718025977 161946551 418716847 172062825 715368446 138835949 672696645 13730294 289770439 464250115 125616288 32538720 372099766 767356101 696573470 708112785 566130563 367140811 999721244 301170023 209507905 390988528 517094148 646243050 136743394 919939349 514346008 316663425 588963715 478059786 850510068 728382056 808654790 484069784 758801081 652182943 219262099 420871879 654758641 505253018 394618254 932786981 109393544 266993549 912564905 714969186 914731426 150050217 548438841 176206248 43864073 20703412 280220559 470090281 972326583 616315063 438019479 658850962 146083048 43532301 718394372 192530887 331842593 284114435 514044391 597117543 334975853 320468555 261244264 467137598 440014683 536376792 553253837 373394492 719036168 140654751 983605857 531309688 820704192 415449538 791270833 483834487 599997488 255790301 32220783 155194903 252731102 591601738 479942827 707992431 617810968 954478865 73819615 131545981 785110141 916468410 263391593 27954092 121987647 272735834 606396580 825472997 976247946 804954088 797899772 964228032 318020899 816413378 438517968 772764879 124654094 278631903 963232886 805172997 49066334 105645330 101368735 723389164 198944606 490729897 503880792 967534383 36375310 529913153 111183953 500242614 853223155 691780475 39787691 44357834 323405912 597192400 270372642 644103922 442235749 309150445 859478746 364341712 367515109 781487743 734060565 679106697 70031998 232650653 457725049 417535363 194354106 439467663 406699172 237468535 958372309 938029163 763216586 953268768 148816044 110096452 389367723 209242054 469982572 431824765 462585971 939419883 723137487 753656557 426275630 41037467 762176067 34568495 111498308 30608848 281559371 295363562 697878994 864179662 922094395 885746579 782419445 686048925 638392526 947139086 22978629 671640715 787876757 408095697 63099020 754645729 705104646 806499373 187051537 139503988 522774434 788732526 736426052 582162311 104655952 16156136 63131655 519381128 891079540 3654726 191560917 459769451 625484570 140968259 18854850 34552791 763799881 246804688 479660340 575676329 913108623 64358773 671352309 33687364 322797650 899063636 651460530 171000148 794034380 115744628 958086290 882541183 898657003 762630492 473634631 606585468 226575877 44677206 611635792 492337629 281451364 175209111 638219428 261597193 278776810 812726467 809199824 187177619 434881220 391871643 326384012 132503823 191916621 912797872 584364940 21053137 61312326 334811833 108439529 642980891 611513853 727100457 630188544 188778851 80431288 479303543 979507783 47021163 580900591 478835299 795249158 976317955 462558021 410666146 741060741 519743695 443386130 779838748 465144686 667254306 732293158 812313681 78448938 178149396 701109824 763403030 969500804 601211492 942325400 494340498 815634402 113394093 231568654 38131757 365731595 285990647 169454285 701156935 215624932 280774344 29131191 508411851 101758680 710125695 212684048 284321477 497515651 860895757 348129229 828007977 33250660 625248312 683672371 348290965 45015441 298167137 790740290 508043515 922133247 887101808 652193848 137053812 776172137 314066701 316486462 813279698 336124385 782954367 545304699 845223976 759684023 562810668 890214429 765587294 476171851 216349101 896405793 7642099 283118550 568542119 929022302 558093822 45812332 883124392 713024824 764171877 987698694 559736189 123321343 720091722 822876969 610671342 776365422 608504314 381151817 504378691 187884771 36455543 30736295 883957592 791745852 171369626 230031689 98916680 793652889 662785519 1816934 254842086 140658345 820865898 514573862 901749972 58540077 984721169 376598665 133039095 967667450 7667659 758278803 870134347 964008799 207881015 897483010 809069298 537483339 367722367 275011885 582433457 558194728 910028053 700910930 709977163 154752059 44352926 889796105 180633762 10235711 280403045 596119156 652105161 853337426 586414301 24677665 328830966 349821322 847499230 920472731 540189085 26984358 480255958 424291307 284573745 718930782 41681874 788193658 778615873 527295495 29761202 201311179 454204560 562132271 245388852 15542441 625783675 45408170 451682342 954662893 367151042 651211466 740333481 95721892 911324920 477826132 578067259 85936311 702218406 424294828 433799413 728902354 201119981 895589805 358708313 565343799 528382677 314922361 965713382 309960649 314071433 823112726 44620841 95435799 250362529 153549987 443889094 310744121 925581652 890436528 643692556 834816084 974681896 297862072 408774221 101933703 610348932 571243400 604877357 12844327 332763876 413565923 848588371 17481430 178364023 118813042 36519831 320713009 544409534 588253317 611788298 345658931 452344070 662838979 798274939 918978050 510408304 574227306 322457202 569090235 990501611 836075938 59310887 833749920 761919343 712932921 996838748 908582382 677899951 804030552 61921578 336339467 701939063 724275171 913024620 77669138 525250861 529956473 476301901 516425037 415834346 390205827 579539682 763572693 51527693 606356992 853574938 189207875 723662650 576524437 409651269 148504169 741181607 308620809 347362997 22971784 19523547 15448108 755927486 516594074 786438854 70192965 942004401 753264084 899177902 58236320 197822975 518699003 340413576 856931961 395467432 574698516 250046589 760604225 453749340 876206483 934367491 307085607 523974585 550292830 667951611 99157137 17552012 19796172 60626303 171066796 428206648 997100350 423226289 975971850 503857882 979071524 172161360 888088393 155327100 910490140 784456463 701651504 543527657 90970088 972426779 846766906 185469498 227023341 435508621 38971481 279419004 145837673 933878633 990684508 22130561 738970795 687730822 986941537 26865193 559327819 949158808 827273343 624538513 306103296 281268067 544007379 648681876 347755846 730628170 146519721 421635269 386334359 982323180 191185699 704558616 688105087 970761592 388300913 940547044 89099624 297969302 788305582 879586925 200039650 589430436 69236248 498272593 675874235 731155430 796998794 599498915 256542751 934898578 426203172 621381973 560363404 525091635 32580332 668205329 242036749 110219782 69710880 952378500 163160819 152162731 98962369 40319074 370603945 28642866 506291266 460800082 608100535 938231234 773971336 2137137 18349669 294071548 753760182 983940193 908345443 750005876 325986232 168800755 813284745 125500589 585989491 616567011 248069489 997925815 212030481 481167516 721661117 42459333 207617279 255910757 886572514 905148103 207859100 537059831 805091871 878043314 80300113 573012029 291197775 433888262 513113673 234007888 784057498 22275021 660619473 328240152 564636526 684417046 139619065 90795811 920878368 550613283 673690109 446312991 292227404 81859578 518092035 341163734 266861401 656755018 125191989 458128880 243393969 186717189 976188933 980901550 423647030 116947093 930929153 956052384 538441735 65333189 971410676 730193837 818286092 581878472 999139530 122972649 558640416 456161599 779196295 833088859 764746098 237638595 180036671 430100168 724021966 567584486 212995547 39349492 46139471 244970108 856402279 365830260 554722078 670104499 238430818 243191550 131326726 318043907 26124846 258326466 610504860 657174644 863280021 743893217 186750266 978041571 755178684 938436212 408953606 426459879 110330947 476674278 864731613 38590760 213518673 770278588 95349921 611202226 652463516 400506193 333594837 556143618 129890058 72840218 229159007 873943793 289272789 642811759 270517572 384115260 357667080 245855667 224795977 655543628 785216967 413322248 902155328 808871928 704929022 385897161 685256335 761608659 730055237 653239398 902635600 40407208 321917352 804192347 115268111 472847893 189909119 342617510 664785781 291161591 984042167 98098466 861479156 301343167 100216055 541049592 275212039 325234409 152781611 857154852 768449524 761731311 243574941 217856388 331314219 85894743 913938460 114684202 698841866 752170775 593550786 146090801 29447075 390644825 640657625 735038351 684179027 854359675 520939331 765046654 498827809 585707135 574062393 520183461 446359594 280377673 572319610 394593117 857485543 454373798 914346040 247543803 713091786 842354768 605845535 431820721 414815423 225856317 959586635 302857668 555565642 164823549 202931332 336655821 999568545 584251328 39376971 631481954 105066919 723113796 204258386 974180860 811791088 653868073 719029205 734004738 991453420 66172628 606001813 473757556 303192459 899888401 350910970 157406786 675167201 141874217 226724508 791340872 13727916 653814360 225780099 364886662 530159401 201783938 624378242 535187133 766542452 77738163 999994223 624708092 321952370 61489420 944495550 159464430 177351913 484041343 253513481 387774784 501352322 398914386 272451758 309771546 697718424 282199372 808385996 191323401 469377965 248110270 268399023 476932664 723723078 682333422 939462169 20254414 984793918 592187400 108713697 727148882 35220579 448468327 244434281 661157940 113370020 558315370 31069099 758941657 957881338 81306244 308577088 973656387 787862338 383991097 275660020 530555474 826308625 664012039 948356588 750486718 242881421 764154570 409589856 920399888 686409395 606036413 773243953 475611972 709541953 929375350 47925450 389981222 252445686 450287278 419975747 663286562 562793435 951231908 226962791 433740046 392723279 369356252 536461675 77479798 582080288 349669939 393097510 693350268 809220050 500100714 88198487 400759901 499599020 761747920 788119487 868322814 346314728 721736145 408067155 867069470 86644793 154350058 997427599 787220713 543522636 259503761 283923470 486442553 121976088 3947340 84764363 3818189 91565210 678778551 528047166 581621727 321856300 378180985 83771590 409732221 282806532 756248454 986275206 647724743 117016876 1864925 751253372 289654643 797638910 882996521 530782883 921647449 820570428 518950689 789143007 773089930 624222231 198038363 28590838 548002292 300678520 669429245 113676786 460726885 593668566 711739444 527186357 115642631 692036410 701779244 683861967 887427281 377061317 957128652 869480595 661242446 480489561 802661884 474596656 664076699 51238952 512844161 900176031 43871317 218714698 407734191 179499436 184344651 238361990 114813477 868354933 377827349 624237280 518425999 846875066 775535291 636830336 546520197 156180055 317470596 459625247 726125090 925438660 376174278 784818811 542592096 105279172 738089219 832069848 11211044 964580393 586859775 575891374 460630732 224827295 258696842 400791312 627699532 186477996 651608347 572737079 186496688 19910230 967576722 3064255 986920950 948352840 203063244 572534061 8700383 700123279 658094946 930113266 167996336 105564228 364479476 589526237 111103065 308569546 254938154 370536080 533208674 414187765 349770040 163363646 74529587 517864626 882518250 450052393 435057120 976417924 284414800 906551105 461555356 378734797 903529282 242988352 28457886 769398406 753740956 331105515 885173403 139093009 807303702 318466113 343194444 393900656 842054865 418553129 235250003 636698792 423182983 625476495 451459913 711023862 455866871 146733855 56515578 899923035 954440362 866548910 110510488 744325064 999554231 939959315 652320745 765008300 541423580 93397553 823806713 896811952 887282633 113688263 588074989 50164559 188216431 90492321 542532130 248987053 928393967 369735294 196004720 917404301 858473177 628839736 599742214 686047109 350950709 865544969 387724469 468133147 212642243 911182745 38560104 437023981 951310207 89120140 92986827 756666394 595115174 385710047 100758608 261838452 326946458 882864310 174949537 489604940 61378840 417689184 889058556 189871918 244656243 763716499 74483500 651699250 707015806 121986664 977974908 244681521 714863224 929366454 284639336 411830944 726246408 767963288 861868140 392651560 980101472 148557945 683620613 834276122 778241183 756732771 955061639 968980009 782862041 738934008 84217939 596329029 963197606 884671925 533871966 845707775 669582522 382850862 764960205 600451698 976841173 303827700 585631282 189502794 652156576 28200269 962835361 888066834 282831086 874586573 31296439 834559785 236594268 525722695 295765147 962110935 940970568 484125189 191224349 768858402 675619149 876461225 332396566 16646450 652235814 683413238 434647499 286796783 570612726 789093169 919161114 211230058 118195598 518472503 73185151 197590939 5052710 672383985 127477090 338500860 569740630 376857560 160945134 631003411 814726801 778583422 524777435 873061381 270503426 190590387 819680588 493878991 449999581 755367687 670644737 129764430 992883151 671334886 978634866 217519221 691862691 459092727 305823449 445349560 98029006 701659533 282583047 346649658 652939364 677605322 885111114 89725226 632241521 264221487 251368795 395589641 11195802 142814766 694380698 248911022 516424861 415228183 237877239 360171487 39508877 600256305 747982659 16266459 692221631 90947751 640088002 377812752 411327626 538809620 378164776 293641883 851386456 162353299 592661729 46313383 139325523 438463159 382628212 355510196 554037883 801248150 13394740 510089140 551506618 246327399 888564987 124548432 975519153 837034712 317733444 132156314 132739550 554235671 167672298 728788331 740609212 889919711 820307363 312317163 110383272 142794611 636176595 507745355 528356124 624672682 143454212 467771612 745306338 242057699 986067985 855380905 968443754 85322600 321752917 6655735 573338279 929449138 542701037 129027158 489792152 402054441 887121886 55317055 461492356 829884280 451547119 623625633 764173599 230697775 85501816 638717992 414216419 879494590 739967978 771968952 835460462 459252672 790191784 730403710 255630719 155209074 706580532 965160563 382439850 340523968 677087607 158630872 188429302 51335789 653040951 636325152 378684160 556305514 314360563 724044347 681186932 861322458 856132073 181334047 254955488 711940774 7768950 571082457 178075322 884956322 208648856 737509048 831771222 30201455 186419382 293337707 624743133 171852203 451264006 303306513 208889913 219671917 61535811 924726038 924561254 738808519 770825452 176853456 603157038 880650134 885569217 369452711 637912471 899230306 330046338 320453998 863703705 898299638 887690896 437600640 804867739 630138647 1331917 139362467 764318643 489744814 551578078 766561050 975938049 186346795 740549919 727819882 162321882 308558741 232073388 428719537 576587479 726941332 615227801 543749676 217090507 335339314 449328524 317729564 963750420 18234688 271807701 446671306 21367843 494183210 864109699 416041465 338286569 804366958 134134809 944314434 230362512 878857340 836650925 257646591 44374845 981405699 2007095 587493141 30124462 270108232 16389513 874150952 8585163 806406594 873952996 299678050 996690753 2282300 575281675 978167340 360634138 327915099 620008085 848999261 920468807 14428928 797177189 260303919 392760312 208177968 783226061 849866323 714087707 699269489 253219182 47892116 673898701 962104440 458009674 762408688 515214751 656668310 482721221 874139070 358639234 430237605 475036802 455201202 724796568 664547056 97836444 445790145 536199956 416337133 627651793 592734823 95421836 28591702 432709751 427701527 24504768 958021889 425590379 816017010 170339245 158518215 59700644 61257254 528878363 225707048 140516432 747411681 669041973 816448649 58113646 200768829 118350061 868074283 501448329 727398563 218372571 436415292 709771442 491142267 344453356 769712479 270733801 813794906 846489693 304912965 330037731 804640013 421777133 748454321 354715729 89922409 210375733 789111123 261598056 742584991 136189893 726389770 695278161 905230754 462239033 270509192 788221079 219861291 554196226 71360825 418028102 302591928 646344527 940110880 274900257 792651900 406553787 533477761 306430137 497981902 955308295 196876552 84503277 942546904 820690296 447038999 854829808 92660937 617867905 828163968 599057561 131734888 331591122 588327 889931846 329110697 430675494 703195234 25080580 806412413 936577261 656162846 583387630 740986926 490203010 758137302 829452718 175046545 800572977 679022477 397618694 335722281 155965309 251137381 179682643 196731546 494496493 198009128 98421265 335858783 72119508 959066210 260886509 589320361 370744056 474255305 491730007 474083267 680650084 415638883 321755218 669412317 429284663 700412888 856169288 949418723 182896843 384010067 417221731 44879242 562435269 647885953 408397511 141046056 80014999 212743534 423415523 722554714 579240608 529767237 469554221 713894147 978072469 964004059 12017681 888700614 338815488 578136491 437709400 801586971 501903797 308462898 738582639 214246606 504008893 527610195 468427520 92486080 266077106 92100568 881780607 275389716 345881365 228685752 587108074 21934934 877984450 684060258 817846942 415778207 998813582 344808840 318123417 590922686 995284958 891937943 139373607 216755210 526752888 703509920 285157200 731644546 188421726 245080052 593587977 783404085 562198924 679732511 19267156 493809575 628360377 872967052 816114784 426301285 127866002 802867861 570190750 876164722 512475832 467790208 722721273 86705746 975385378 899763989 97342267 750168900 249735392 623345607 458881432 357785990 586020428 194595368 819532767 259819067 63554626 364043741 744094047 955657371 371955685 827443792 78023788 596990095 536824782 962365073 753595757 810746162 547562138 587535560 859435758 235046100 767100652 468222575 974792650 191861183 196492721 282659475 640843897 124504410 657701202 35410900 362367719 844942417 315591582 95269847 781498971 783010876 429071777 149557303 186167374 787481590 312437477 114892022 445997614 592805842 625659505 568644985 125247091 597687521 93251485 962249833 460815399 451671206 233761611 511717973 74268480 664568549 905539194 74433934 770489741 650368485 865820748 772675479 211989119 20781587 637252935 4259835 701759987 603613115 37014510 81492714 154229974 110320332 232091385 303798766 942140286 593431603 296802772 337458563 332741021 705076996 652382675 30555877 880123376 407447095 785715584 667277699 997353596 136643730 398513445 541234885 339782503 363721373 259524031 322427791 243240596 610431291 682468309 744125585 754915997 384011645 182586261 832874106 623127615 491323353 648250067 817815378 454343956 695890124 329196598 873973506 621986830 758602281 32956061 8579841 318549368 772176805 261933395 28635971 77847012 594254677 781682793 721640246 345934223 60378623 668514019 174024057 11565057 335273281 362704011 752318071 377229908 862555644 477659627 730862999 954957900 328234108 481089091 719599605 757801117 119924285 237794781 703241216 686754896 456588329 620317331 531185781 704764554 385968374 108322849 323822909 499833744 905129478 754688970 399498454 908749968 377705570 959187568 717484393 939450149 90123176 545520591 350945606 702123503 441244409 791803994 677286455 123699508 17161604 142959129 597967726 223781039 114978628 608185851 810459476 772091189 284371977 158956116 40666059 282745159 946032720 646896005 247992216 24875920 890172891 876660445 889416828 23878847 348236021 574012815 728753777 559478088 377325333 774329408 109336641 428030951 527242152 731654476 903405555 863679007 496763359 869526323 76479254 397072915 366478297 383548185 801954959 452474113 443531205 720320557 882707874 269195485 335152445 381803619 270690332 975729863 416789929 749321359 507081458 329152696 294579217 517160527 381257401 801801684 528531211 481449285 929888847 316476313 728855969 449764230 387492960 720918675 426067593 621738949 776261687 715783108 42021135 78362850 59376209 186609797 709756039 476265732 76309301 391038900 544381881 595082678 89953051 675244465 843711927 53984212 26272703 988817011 880351647 605873234 307387487 508754626 338190595 693636912 37033581 253704225 281794291 921279697 180247713 977257366 498587051 751329218 160301059 363361420 959017527 893955469 400255652 570372325 898189819 820585456 384715642 896580755 970338743 867308044 961565996 587423565 129534660 967134718 124187025 337324328 613729759 478331914 472590670 253662555 489763657 236975864 269873445 385320761 904985357 601291956 790183025 394687288 620794335 45635983 118665236 787824240 873859293 659167351 73393123 607788076 344382482 526206475 499605352 482529177 556040445 131255390 825489388 564111517 411400153 73846621 887056547 215401830 277946701 60839841 797476761 149519264 549324350 866511681 570059565 440903069 355193839 494960646 921516287 676361927 102954144 776067202 648890575 624893392 78059580 860348944 962406803 130680044 813092051 645856348 923617048 390161455 856929132 156219685 595814169 972375143 237659856 399271361 379955528 988951480 843620027 15205692 772749425 255278114 646176884 648688271 178128844 535736771 931036338 912188270 394681731 484925494 617073381 700544526 274059041 47471100 658379385 334509789 65413236 720532854 553496718 666784271 750755381 396730824 983541961 896966828 626708439 312757516 374587528 845620472 9140667 16622783 995564359 958227849 41516369 311964327 958944879 324083564 119359491 930800912 480932632 124508730 932548140 442833348 429549196 91389066 933154656 148205226 756517107 434441327 311398165 186236729 578198184 761026903 119388467 910058539 781931527 308374588 157717958 254835921 936788819 142648672 430875649 150819385 995313642 171853803 538050146 66314973 931997314 851412657 965627594 971365570 801232525 505060369 383578866 274458618 972692987 466928920 947441660 628520330 462573636 738869767 595225892 128260474 918713398 330653025 890977571 504021380 302119700 558654254 252422325 505621014 915043441 147595842 149171884 149670494 632677753 400273053 215972204 993348534 894249593 671136823 927239366 493904425 930381691 248934087 324911436 348834257 700540585 477735288 87713631 643806444 433001140 249515414 716703656 538138498 807079009 938399392 313157496 755724619 59107660 910964984 562603952 881043404 766338027 580488196 636586039 470434096 811428063 867877177 468605046 18753250 401417552 87670544 402618453 552209291 313044606 648445908 315548910 930144621 731543748 357689981 620111599 329580720 392693106 565708156 567393957 862218296 189897752 579430908 256888586 138234088 788260901 613686181 12541472 659994815 412149522 819684136 736960113 5254302 568234399 648997224 917669911 892536561 49770377 872998657 553440247 434556862 145672683 305158130 422870215 343370887 32405080 939352744 443285853 306517206 47912466 546249877 880385024 821982534 264581804 925769402 938709354 334564071 520840985 449966355 452158362 223307258 371934314 427927848 573013729 603792629 713309560 809564452 357263374 184811486 718890789 923033190 227263775 469928291 316266201 992984285 121008372 896419046 89835143 103466107 441127633 795461365 544180002 880763679 632653853 842768555 921264896 860250681 938759896 806480264 616262564 904767201 18770044 986755941 686696532 45843214 795849530 139118353 960382976 419329453 75428287 404895435 918447460 452798632 41141422 428851408 120034671 141205582 784939077 386483413 700178008 939949615 118987333 189089263 431927942 226419005 472376552 825904775 944572749 818699218 658320679 277456712 165127036 56991392 649101598 822074763 551358895 968332734 811885824 677076282 646011260 777452942 423267119 944125588 263942955 442255975 757679594 171440652 191796867 846942499 25118331 298378988 842649245 558525794 548781900 704391562 14367930 920957801 684357151 721783514 176117843 117924071 209558412 948747066 179066832 701667461 184546851 241636734 386414339 42910498 586254151 415297765 539753717 430945220 705966896 12532937 292883037 491860190 373339751 164850356 135595455 684420133 595005192 866459426 909787352 99818235 878321089 697228663 119053391 15321357 96995398 646919028 728060096 116550631 12743042 134498628 420111979 160363286 136103143 639399761 276320908 279569916 984942631 542506038 149236097 75015160 667136722 766783374 890569405 303922758 801251084 146372194 689192828 118402435 811706206 906631118 626447611 732888939 829134012 850899569 598419050 819743747 356291706 569612925 507877975 204611524 96558010 465026537 718628475 735779531 293868266 276396902 492091684 928346311 253274206 351220968 585948085 249073634 488096975 933311848 401041677 788735623 295679367 879181218 483733275 217656316 749288593 682561483 753255406 955262869 467704205 63182521 863972827 223126731 411539624 427948313 696845550 581911118 556634939 47691261 543249767 126548465 149069817 875539120 896662249 437598082 433805969 131352467 56559362 402899939 163146897 543896677 732564437 170852632 173997828 545725115 990683766 179226403 754275470 244413608 816812985 323371467 929414991 402957704 780812034 211401992 502205449 307595666 672303425 288590813 866562676 26777789 609967328 843847893 541513598 565292882 570741301 424206341 14138568 473379614 808135556 622860777 223667786 519747178 175259853 260570706 959554319 723124981 761856510 953600543 759339662 799175774 715865956 951957846 873541300 50149158 289912124 202096577 257725983 167109809 375858157 934090589 499907354 19006631 770820465 17608765 279132085 899107765 800458945 141163786 342606206 1893934 511900686 174895604 99000140 496340934 963166903 938638671 604705032 325019035 880149715 11483357 798497321 622151894 418184750 253560280 137182567 935072089 661636154 159475958 191625837 74002752 783058700 823971295 629208355 890061045 880735016 228242317 366279963 211231446 180754273 128504755 456491295 570798724 295466581 534807338 302352072 360508137 675677852 911246552 853017964 786940385 670563935 243912646 281906860 284695866 667827468 297205916 994873741 868229815 746444908 536187614 772734991 977649624 656054903 584977645 812227828 483110557 249072837 468529286 369994347 377874307 212797196 31844687 927444608 466528593 842063478 170894026 473720362 981481743 921287067 924743842 620827018 278597924 84701269 862467272 332634079 31501917 69484668 97336339 915564878 690704172 21697058 892830743 653159460 123183715 858368455 308199714 813051342 364003954 997851935 299406607 776730482 400752681 522539962 293186887 160093225 815209278 644637219 338142567 707079729 846042316 828761517 274987890 404913335 685340893 560049108 55435495 113974493 733877904 111311663 790146650 120935226 727215844 347091018 780238276 239169779 752672879 864467396 342622021 373081700 648749138 367603174 989825295 154800630 398644424 857951375 239697810 624768586 180974359 394213266 645272555 651567495 32416590 335983951 500007504 204297751 589364939 705135334 557087428 934094344 283456760 326895867 512435370 565351338 390193724 122716706 863399967 628871489 386043697 99276136 634754147 520259796 720410404 359561426 866454791 25890502 36824719 286245301 935329094 154828237 652012209 647001826 58582988 293993968 381453907 724429267 517765149 411615515 279130968 991894418 856824534 919002752 71360407 876989702 256366180 185933773 826552510 220433485 644409625 23358135 415837718 120676118 315063266 999509741 639232827 721741141 278496815 159054339 207542129 499417313 113342891 80109387 410045039 686151557 919169251 508399689 31938940 797627605 545730793 514424170 216403696 918344219 973764810 499512731 138967980 836333404 869286240 877732536 969866483 930456783 726277955 478918400 944473889 172217632 171623610 564710885 294879160 129704512 132669670 289057504 601285020 804169965 805469830 479029998 202353155 563807001 584682443 626883520 308831943 605584482 76684346 29187701 915962268 603202158 577009573 187736605 385905926 223406681 954659426 436119594 413201453 422879124 124175134 405851876 269576757 104239893 481500365 994627572 170188530 580554316 367817523 36213446 52304065 362144429 167219453 373204218 747598608 432201649 238424618 907843838 643193471 186720982 305215734 826495199 668643381 361760374 538183047 126635303 167517831 670521573 469244821 339953224 195732492 103612781 131049212 86612047 850454303 546811611 364285265 246028833 393446032 401540088 531460123 45778624 220876852 134157666 254979412 174581239 621116137 965821006 208151828 980186031 357931356 87987446 188290014 123802140 125834479 87730489 701461863 903666649 491702388 586928722 690375970 498695545 42505936 626922924 969030772 670643016 140317339 273860264 727203544 522408225 350159839 227181827 240949235 572758750 91345185 477130787 760799235 26665818 303225267 185669584 857899776 686875846 263522364 33240621 526016827 304889023 312642141 595578124 492518920 285666492 694393102 127332971 433662717 124062076 300669154 253888916 213478269 954760597 356426102 235470297 877251646 989671175 644663888 822321940 534539337 897417872 617252655 10546462 755928714 911677653 801229300 771951674 321319051 28913076 815364850 492583634 861788990 901817942 273083470 663774201 869302807 942736929 178548577 137073335 393841147 11522616 29942743 119351086 935165584 37189337 759504434 175065778 874635934 712641486 995854035 821198618 489584788 956512020 120629913 872055340 657251652 963277240 726649267 457923916 585570934 40713012 825744628 759540230 600175380 764762434 864532302 62019331 762656921 366649672 875549102 467689810 396789124 137813590 440353323 568699393 837845595 168655157 607779671 370549693 192901823 998942727 666416005 803030771 132840561 635738818 89386776 240606550 612448736 397915965 607849768 205650553 645728762 230826815 640367644 858370817 576592729 922160643 803437905 992508915 117592834 217984141 32829903 527190324 954697163 457340063 131008869 515776617 317117234 171582124 505022598 976598265 101483439 297107296 816387968 952353915 801678496 953533284 638258327 300469180 897380057 427881126 589726786 859999528 409784010 599277815 786417469 461537749 738939215 784481819 529625864 336451949 993190579 126088319 458198360 302791966 775216048 772429490 601172016 879613934 443321887 381113551 663905586 308133673 533757234 962018396 999476086 643540398 919418226 243194717 462813242 676960345 22040960 142445174 185472343 337702210 653304944 375766642 111198779 474280253 715299084 375734564 192880799 749313498 291296781 646719727 886642837 687440314 428291041 448130840 641936895 343661094 213384398 769759547 686933190 367900543 201337441 494321368 44243549 165571288 675006345 1962429 350203093 487507600 117391008 280969434 223820634 452692868 135840976 327984412 216372660 941678699 882163202 65763193 198250006 166065535 658196677 419727218 89724734 783777704 576320762 289960915 598338648 434439616 373855509 384213165 463961892 204031099 47160024 706994084 600801562 685853032 442615997 546051919 229291093 765333289 267985614 709485455 285158708 178383798 776405801 237137816 920275024 964206060 631199761 406431321 577275170 732322183 624468372 656065149 255224509 86443890 828062289 93543732 150391084 315271303 388270020 282223628 133561153 948905563 95237034 776943736 791556108 154370182 119539463 418628999 287271232 636379109 936713957 934554565 668733121 657361407 309824948 731165388 514322405 397039274 719779882 279955207 225930720 843228829 154937157 130974724 267012480 957013327 924679157 231262597 823719812 367489744 947050693 225784746 598078024 164750232 491275441 434569055 761567438 548460766 827258561 549723774 951929254 393941944 932468381 556439816 921812182 330910703 315147169 41687290 653854065 853780240 713818112 931372080 130938061 760310957 335069436 175234041 131141720 792858972 738096874 824159049 533196316 51833204 868609989 132052928 701024187 280396535 168489523 365517943 102806495 818980861 953291105 521161173 160230358 715152494 243107958 662154612 966491776 923935053 417386335 510542281 316862041 646124201 284734800 399312704 141776744 371637758 970894401 733984953 482299374 667138606 630255905 894152672 384964576 361396310 942552118 215829841 443947922 415514543 974754815 194052608 4884666 224510247 101660232 805388488 325354590 992785149 766644942 321180881 692764129 374605820 359990697 949339877 526623605 135966259 115486877 352445129 574517930 449343604 684038759 471673009 879549580 273384329 443718831 142490045 424986881 738711060 57629017 653120298 304364366 710791821 113763221 349635041 876455084 612774384 939756949 968535669 318187575 321330957 925313560 790821308 404177564 103658687 782410457 3915015 291953065 34726075 53886790 436670652 4438101 774918206 108532609 691071185 25654923 672194561 388605022 267834886 221458181 658284195 814268817 653963801 739951995 592174142 866038042 891223029 517680690 325998674 679638979 690731618 456109331 144665612 390458845 358369023 12345542 530760617 137550085 197459519 604141022 480751589 599941022 709375222 640817333 718882020 44348083 265172031 837716392 638793032 98275353 792193774 141726300 991886233 322660435 79323545 865249187 781623457 534596838 696578310 717568429 392386388 300147406 411054094 577555975 633302652 661439124 503403360 372196347 570366924 673860791 635664908 922332846 977668646 42797004 143363008 264480924 968770889 390323427 417712002 687630387 487233900 1980767 859335934 319486511 782140078 991805416 842108789 651479580 160637822 876925725 189803664 712165354 408616721 70119656 584628179 443108954 624579199 702511022 171818829 513723672 568322264 195161102 661048299 346335413 456733649 842480710 45783369 231672675 821267898 151904854 787429798 936059091 29182518 482896618 327259805 525747901 790268073 926919186 169113719 410061089 310593963 582870218 913015513 877459533 710474314 382044724 178557479 779103633 97992325 985183993 456259795 507688398 295141271 576501632 548008276 197262679 7227381 116584144 824888380 774006381 763745416 401252425 482283640 218103534 554267013 766423978 765560513 83095387 164829219 754313889 170424121 373559079 705576317 340469883 428418885 778208135 577675763 695526681 739797792 940289421 93837603 898920417 983638991 69678313 377388175 742575788 547031838 543653732 317437271 175799039 209109064 578736551 764092246 210539700 603178151 116177480 576446859 30889200 819723079 967186976 344072931 76372550 48795884 242939143 582149626 461440892 445353781 190047782 125841399 259301311 565095804 773838321 202711867 480404670 831491812 51908934 903811921 733524320 753522426 376513517 53999958 126183570 821967841 243108023 183214351 960459554 19487967 173233315 162443211 226550558 948113473 572500513 793537303 325206307 537305254 600470623 262666572 413152671 324442197 52053133 308159891 683768727 804219635 398869900 401336637 587176754 292080310 782168352 832143711 310239989 616653889 378464319 831209505 830288085 229992633 341807414 719470574 988862444 741456752 335408859 363927196 159552861 514598056 160559668 189109131 249255219 587246205 836185015 64414930 899916892 336271894 556401887 422637077 600152209 349087611 793805269 509409040 411958504 230469722 131010835 820109084 718415183 801773561 519021899 342781976 133434537 464254304 116001793 29979882 501131009 646418460 833570886 526908063 782627855 402225471 111811498 36148463 670899322 161852208 179243167 405539400 516540873 900408110 579047613 551685889 447190309 136698868 769319840 620648086 192151202 18962149 817513545 862963617 812012395 577551164 723547559 163724548 855733738 660374305 891092009 354383439 396743720 412224355 517950824 770694431 213088251 197766528 636005918 143622702 541021912 374182710 597277256 782594967 5585284 250253479 571082714 440107178 347641824 654167027 444094955 207658544 933917976 804364208 414225230 364773990 725962967 137971828 717514718 26020828 813919845 553754980 733437938 611543504 982083004 694774727 971570683 137329293 163323366 176522909 944254613 402643870 861042158 568464654 657547242 415746883 556347223 265471720 15562629 606202284 161400749 10592026 234243062 215000460 175674773 449423954 609694272 83333803 791944615 261089599 256601593 393092386 86199898 749981750 197428890 344265934 832738721 210454450 147774393 387099447 639012832 214427926 826061943 265202 643670030 636647652 278458196 637427690 897839069 617558466 526267694 333751214 359170021 530134507 966214896 119010732 162184234 913877725 826942147 132281030 479190982 810611311 66215455 588220950 761588919 619481986 617320213 972361916 994289371 643391158 789096169 973949487 761160701 580510352 689718025 730091465 918156034 807519374 863021621 467804620 951420581 79176570 104717700 244182228 198053988 475503225 493309821 171565109 692425121 456837291 199092184 235782641 688071473 18647519 86179612 904279946 916879199 151950933 831940777 81710554 186841354 860049578 971874435 673121848 925329496 605445442 176619532 864155024 916377164 447113215 471642809 278670597 170292733 651710333 979887506 132601751 607449088 40517846 331848188 900285917 996158334 532637244 623389908 700725736 771079627 268863793 958894745 624904222 713020448 981378649 496924781 602061471 371096992 940691434 749820054 639207565 773651782 590851458 925549888 606586210 301613237 122297287 981074293 822263327 995895566 534287158 988275799 374161743 427220420 996998073 133579636 89816286 455521303 606947253 736027671 872840260 923127083 936208903 217921075 19796070 943517365 634944435 686479936 519578661 325827906 518147534 66932986 279379132 495119735 340283332 831787931 207590500 837351756 234497799 47435820 362477024 105362093 389550776 978224656 952798358 847392883 899927464 460740881 496584675 33958022 171388139 444436601 364319259 816187862 428338519 903388338 475840852 870937795 494953045 655512038 55291471 981212137 419795433 863307896 559140629 690800259 332891051 265411638 752278791 191388140 675883657 314445086 686253680 955776511 948963865 138020293 852599582 512537112 332598390 195469324 806844452 190239494 828134491 699414341 540370790 521804532 149576158 293732940 359358662 55638340 118974802 232149849 738723588 388631891 394462168 262834790 328989156 101994759 452866936 772790187 145990361 86823383 140406124 793813118 91280508 571925045 60459411 181089800 355696158 281215897 205767785 944505005 855084853 817075032 864185538 102362321 714896007 504208746 589773993 291179394 533626788 893427921 227842600 993581712 605676447 820793788 203251706 561434313 351635743 39805561 635060929 54234454 462502892 752523243 313164493 285852994 452062733 800377603 196710757 875512538 467541176 133011395 657894878 805984869 241948136 96944549 516136190 708979617 839443912 896226113 954232638 167236457 603758229 941693684 880154014 195338893 978701675 627732852 657993505 733048714 701169587 112538757 406457341 746709970 351426849 231283233 663109350 644725799 389011109 384741535 630711977 482693923 771156047 222704556 980317503 191145155 252248306 384399638 439979871 147021188 864007353 694630919 955180187 382053250 375058498 256840073 605898080 466283233 874299767 724793290 724890051 723067275 844044627 264495660 643980790 629048277 573319362 529018332 342396156 356391267 410802934 878417241 126914879 975697642 683895774 933801604 642866054 935956883 728858698 660353135 832743563 61359290 92413713 951522466 893975201 61574751 392322000 578278330 956526945 365416249 237371378 522678877 62672482 976820524 995809031 453499275 154072820 174443372 948568936 567577907 99147941 538311854 420412859 701494698 290018090 243809660 8545606 468759320 376791247 367399259 44216784 853726781 732107169 718698381 930643574 501406512 843814697 935027305 502487653 808843182 107367038 909072230 642593045 135185734 849638911 444447991 488614804 272581158 268014875 299013675 21873231 98751519 106360504 741659687 470601074 923579375 937414984 558256546 38376156 119972087 437634809 787185705 389223077 353471993 70782506 411093328 132738760 650240684 163088977 473641003 415637300 938275128 320372660 506861154 375169491 37277826 712857021 5456847 485738902 884977268 354062194 300646304 137826027 607855855 594435830 735365995 295229655 599277595 613336212 292398927 740793862 747648172 608351516 362134615 439502234 350084236 325263017 181581597 983881588 541045253 799072327 493022717 940749901 66945371 909232832 716810124 114668343 766108569 796530576 455315323 403494318 952864359 209546078 238842340 665827721 863249455 282574098 879563431 83925392 611746731 184176605 37814386 425630442 332193187 292105431 573798463 125468892 223019647 633632560 761096462 334555446 187169677 671930118 782971399 601384207 854537660 847669898 372426391 227807240 35632857 359511403 791425060 146597603 377697238 278118419 17397692 655348884 523730689 207898413 55886307 345367896 339543843 39942252 884832822 101168122 46048404 925425521 834896274 389086106 119295096 141684592 444230229 493089470 641846618 35155793 588588271 817057728 570981145 160156723 765211654 720098491 962952612 168486088 188554168 933268243 821663338 956732764 60803886 607320766 487230506 333729519 323392335 981016387 905163945 131431924 893587628 116652607 310776494 370159625 787730461 973895626 807795753 945035142 280730073 793119568 560611153 836708373 518760837 948995753 559643384 946878290 878278111 662917192 736463496 352800481 714832288 938565024 799539743 895227665 793095881 420297131 450074972 295431525 716527645 332928515 310707095 451684806 376094064 361168772 298718853 150274825 834076454 672306358 45773491 246202420 295959801 611116658 25828417 427515902 420505803 110934535 465498717 686096478 974495227 360707333 637324333 419475839 908229432 725584120 171180125 173903438 723565781 358575443 112651765 112383190 337988228 246105431 833904587 38624716 68326355 82541353 570755429 924908969 3849438 752671519 548009241 520160837 67886090 194881301 869839403 605977854 234013965 425861725 81307681 632567339 455092364 545113908 728716217 58959784 337296717 881147126 403781519 378005485 759011488 308151666 4120642 288005519 280882189 455596027 418310666 286528367 191062276 919700690 724818205 457261733 862300702 770051493 69653146 462216249 22060817 923968562 214391248 142042895 665885786 826699426 424560661 635755939 640472746 146190127 382938000 288423286 283858883 891895909 584737005 49063728 501680154 995833242 742807990 148596428 244270981 140588092 198004732 615520987 807855579 166007114 835169388 481026546 665705396 883163071 153202427 333968873 735597012 833096011 12824409 812478170 905818016 619880591 929961730 762333314 823258367 186669454 844909433 277077824 52642711 491692087 799861986 201992287 307519490 105466051 717195913 110970854 176046283 566665787 287900362 208997432 265688396 594609484 298412971 153963626 694407315 946590405 189311257 126755574 618542921 708740962 891680323 802109977 401143959 501927692 27704109 766009790 27728568 33128135 125728097 911858383 942435805 435197157 754192164 551011345 407974183 125059299 119169730 577466504 673086301 379078067 628309070 112853012 38290274 289857891 788213953 983844919 423854422 749229148 672065841 943539080 582331546 440206129 257774256 881172834 700015606 505987267 33111554 293070383 91088073 303835604 140191588 62113789 245179381 248075164 675760392 207718598 246265992 968629968 453822698 937992797 108500077 396056107 721835656 280220158 694108714 445689141 856576667 687853674 551436978 311474152 385323214 600212289 503904919 466787944 512548364 687586420 930293364 268026484 170278692 618973027 989769345 530183752 411506158 507479169 685467428 461922328 333538705 378052915 675571345 539425949 629859606 325656070 702965854 50981591 784546692 120293023 897089057 563758584 332547470 975349015 629892710 713980158 724858259 524763589 22907436 932978589 527442796 117261484 12729667 355347493 558776528 41397424 95598739 615191681 814801050 71732700 624561172 365116162 953480780 574139450 808340790 842264452 703351408 649067560 138210426 878483360 646258319 58344523 406993181 962327033 929668191 218004930 587472939 847453499 113662667 377692314 280729222 673061604 742499744 91995965 480897186 469522435 810906543 765275692 722257747 950777645 548557991 209614719 281353351 492178867 842503039 609722502 446130632 802576519 644983833 115560521 783738975 683293530 814837871 115919012 303062413 166497811 803772751 322048417 64504206 202142720 802241609 545160841 816680102 242609947 111469802 844736983 375712487 749278726 782738014 911791026 677539910 217424631 526078790 980811277 721109262 167635812 778633087 180482034 774639038 900419679 222200970 953427166 401330939 191461391 56082117 619668899 338052121 682790095 787825445 118212688 886137632 760023674 87215913 112354352 106508968 232470929 802060219 198082096 911007572 609183219 479485467 489922127 126618649 696631815 577966299 403627741 114973500 123471468 639086608 668476377 327505376 912953181 923772052 638570283 91494881 681434871 164396017 804540163 924493688 112395190 218388945 95818536 369767961 722679606 487261307 798812402 20234309 40540581 528445049 884116723 989552453 309535970 518441976 667744199 776344558 167373189 28563874 132568958 559484035 383070197 482431012 251458371 868940707 274553359 883556718 693035123 167610054 897085242 404680179 246936250 65473757 793740018 780347368 789345071 888445045 811314372 158983088 465760098 136258471 115679215 495743141 172653547 355620104 305752132 459627425 301828961 85397785 675691230 536504210 349329285 922171671 55886034 374612607 35842443 554987826 109609407 870937791 389453923 866807403 154070901 708981391 909855256 258388274 93679635 120433162 568502481 924236884 658065465 990023609 668895515 120392780 798775391 687327710 973211643 975740408 518017160 708313773 667765939 237213420 97583478 645885109 169220270 531828738 127646259 739782970 409004372 975077717 564580543 98976431 987505871 255399099 255781410 452779996 305745952 396256361 5323805 605471761 825954310 331756474 48024842 826309291 552072099 220349802 812359297 157159849 339239862 312571381 92648566 616135728 358705774 404510320 620589237 434904137 333271640 243663632 954938082 801266452 455110267 255813564 60792022 47637412 734323716 207689234 625553266 80050476 120917511 103687676 565084664 678971931 372308486 80615699 965921707 615848959 468478435 134041810 739334885 282561309 250183593 578526743 270691290 242106251 78229389 392326353 272641952 852849077 217739533 267014817 549195680 34588109 234271378 532867971 717773401 711286369 885920391 764481328 566283583 102990623 6804067 808761284 956441096 416149420 620445090 476803277 693130033 796791862 263108846 798311568 678603853 264391450 683379470 61292517 8052977 569445390 646431380 9074127 575984223 912579204 653324733 752513837 902866025 460961330 76898595 173324101 584225607 470693860 645796053 489681898 368961553 104714554 61859867 748578136 447390141 761042107 345194118 975492543 670253452 789584210 230582128 412145082 777784071 907476780 841076384 280481372 396919016 169066567 450603409 71697967 616586005 482544874 117370414 862403312 364983265 780872399 241353148 236342324 132494774 570974019 994917447 718358352 586887560 506991442 449400301 976381366 79389141 61142435 904018195 579314296 974857834 519223324 555057726 184169229 479255160 713331682 106683261 513175402 305063699 497482547 833158284 637041753 407466050 190304003 172102050 625675073 523771012 555004528 495231820 734539567 794616637 212933682 807780064 260337543 908901178 694848006 626226645 216645728 121636177 624023474 132380657 970525009 871563182 436878765 875548193 836921269 81187705 140965674 580017271 508799330 845394620 748225750 107444751 901650314 359768936 277735884 257351296 865651106 212492624 867295546 435672518 555377326 7926363 632911703 895685797 774641720 565688864 144498504 573541752 456832397 483497967 180327665 881087974 636471765 864823029 966140167 108007881 261530395 64744484 263882544 171893302 474076828 195971657 566643350 506319547 30484286 16463548 732440841 872601706 112340724 155038819 792782893 948468985 884002955 797342339 447474055 597526089 878042630 208658913 722518536 906221411 316803005 430944730 706090455 316493063 436678473 208895494 94936140 960710441 178954400 31205877 953414670 60029632 76666988 681873623 25596082 400059975 483561648 493052955 70189549 55313330 350856220 431308506 377206794 618173533 858151155 677787963 256059044 551849349 420598474 375424492 420653433 824621713 83965576 790929265 892455191 643837982 28389686 549167920 801555096 509080227 907150963 801736854 249415415 577560640 487625060 882449253 73271238 820623996 566622925 960704116 255302400 179751468 278152011 614760344 779625013 855716118 804507445 395302358 761649556 512536251 37804885 777000731 419927190 289060798 398435658 448355542 786558842 927876570 508790501 710018283 452383214 54422052 508435003 971220975 725351553 55177401 157963373 179424872 911141851 959457178 884514602 700712937 53626849 785695417 873749606 662614930 922046819 781423439 791051496 106309950 283512435 846157096 799597003 25411665 936486003 284853124 547828277 338589836 783639189 409396390 530170379 693555463 942814860 644749243 974051398 365958172 337859357 368144481 724462281 677692376 875440407 480176520 922434765 298054212 308320968 326980186 877210955 20912278 675781832 508760779 146981871 585023818 816501072 121989995 40517314 568452659 813007275 855496350 556559651 306868926 128513150 583966529 805323477 684542175 317839028 667414934 580214984 20810101 611285321 720739376 797091735 165175127 6294852 353231656 784030382 420182415 733933346 792564967 735382459 461097140 488152019 580269931 716825841 606579388 866412238 916602585 160015946 920447400 675007390 555645329 952263586 954085430 536394031 695350205 912969773 764270105 412139024 910642449 594415163 190329436 47683556 559051766 673979105 58531732 475655868 27483086 897410177 779448492 851763760 339264227 616231764 748731732 212173412 343175519 561923159 527512644 904500705 103104685 656065148 136334004 479502913 486674211 932031881 56995260 773148023 146629256 314776032 460024397 978747719 307266043 897535846 634553432 810125330 455484794 696999868 733027170 573632075 936794264 913647300 650425870 992835842 852114529 35956792 152867342 249378338 845150452 888691399 148431950 759691495 277613791 898930521 609464788 300926266 757819974 767746302 327897996 580877873 866211978 663805829 418680664 622989890 16408614 883271688 280021627 977807621 748285256 795731583 229456474 952684427 48935811 863965328 965351651 109194045 981140696 541863695 156412841 58506159 870659608 901044159 239222457 739910725 421572153 735350704 324860995 227940943 189620592 297235313 244358846 704504892 725462561 84828536 80671497 6757139 33700357 543250017 500750005 714048434 62636082 485764514 764510912 220657355 460378413 435990187 129180937 208803562 26920058 979486844 741713420 397180564 206493063 47705774 218635129 337371777 945110390 496905268 547377117 408100335 729879370 495902012 705856436 653606641 64075532 245598870 5832802 411422161 303714873 507391018 492701843 25490013 227175331 254376289 526963787 558614154 494229709 502919149 370648114 688312447 623574678 664942644 637306070 437997962 126888971 745167409 177411663 543098734 543643764 943831033 2855333 984964949 882547110 38578000 907499331 244368943 882891835 252606852 758248947 304114466 898993725 96989591 291649643 368703292 53721684 950507173 772340597 669898474 588857424 818801170 509323944 364450151 376784910 528109488 673139680 73808010 354972393 199508218 513543032 957511891 375703171 532411744 897990113 245467527 918212032 39230477 281366486 994861552 853496796 919614329 310330272 953314608 78563794 746339275 919479631 756046186 683202505 817929626 114361632 474313636 39652366 17982915 970401597 419284346 227164154 292018577 974148734 924151396 132509276 278597994 671981686 543714033 920251579 901630981 75106562 913552879 189792690 404578256 723406639 308461346 68774225 615534816 84038900 812531283 439581340 352596054 611271966 544638749 283617109 816569552 361665391 874638777 784224896 844079606 977747857 379215816 618942215 767506530 788664514 257643309 988692495 253349330 225982939 806764079 623139287 751006331 56971482 944320805 817094160 173823008 319762087 445820302 52597120 91279299 850778320 333015066 871417107 329184102 621706700 831957932 805031213 638337306 971849951 372287899 683398896 204613418 886741260 657586174 658291202 906829166 362474467 220169481 179044386 66681654 576488133 755997719 86304092 763780371 808012679 570052779 2914210 206933966 901367207 427161685 768497938 182072860 83802206 58533701 63908706 953741590 953641279 466385245 867106096 437956557 460174246 241162692 322619384 539758670 818502647 387150884 838949105 564375593 100802345 72266497 407738108 666746449 205382624 594357869 438868975 669974059 376212471 337359600 852467184 638360528 674377434 913093001 283183744 479295351 730426863 932329196 86093688 438610941 350533485 807918680 738175719 822292329 77489097 707176999 374201669 743473372 855995132 440548254 164772902 713759249 873657729 349968242 805572572 662709232 174663837 422402304 374599637 534741238 393173163 846429975 185764970 893872496 241943549 754864471 653261040 223282438 172550014 101515407 619789891 831366542 117776714 201760483 212563812 706094753 231694535 763678917 18303554 208390118 281721655 61668912 296779104 519290355 376965183 866632589 668455888 503414668 497099040 626315387 963588859 516657623 389840768 788003023 372926208 162557035 361604447 395568801 139944691 168351496 291882347 645188885 490172863 599923590 510065449 301478041 172598283 85235918 544498444 841203599 240566367 488199176 827240125 545006749 589196851 703452815 772533657 647772503 3989505 343343252 225645449 303532337 939354374 890570008 292426533 434131124 411069712 608754847 205008479 550204172 608983168 996460995 511322566 361267156 700459547 195519445 297345547 628168219 11296092 423772104 643350972 152240249 978724764 666993154 248854443 737598678 479454757 233289233 150925368 480024493 146545145 440418634 193636304 278205024 37807662 452230572 768303091 841053367 439447693 136062936 919784605 507373476 110352196 94767515 947769242 429668892 549642311 501048485 88546923 477200166 701586747 269959057 127248633 649561605 239296866 560200078 91900254 660723781 660288121 459198551 953517013 530182883 129147603 321675400 291616918 340309423 621438125 865987232 505189860 794563074 977168728 455854245 626501591 572151926 276601344 951048629 497747098 312361013 432806596 451075194 235982237 3630657 992965077 522075225 815654610 15065856 408626813 350962045 479166660 598102492 905974777 253772729 767767929 3764944 155641028 616090609 796854503 169674248 127791674 797042499 767126120 719621878 635930260 228579024 727354483 788131704 15296452 126026442 354823565 950642806 825002265 426945245 621734571 590821654 63300731 597858201 82315076 906842170 770876089 570037053 117257583 850562884 994818210 408628688 564053903 29213787 875030000 695202792 53799311 493326580 189216126 964424933 700288996 18210842 515649785 318180610 8028782 142844144 745671915 58597291 558232223 288535674 912009337 517290386 39880417 431545512 816005873 163596527 788801818 807054851 193818429 756742323 116337948 974794577 873515541 913898473 389039414 134532750 180598218 567176466 377643942 51369248 47219751 335441916 378709446 410541384 194804748 873600463 795856830 879203547 32593877 229498368 442642501 152368020 685345443 550373580 640072011 658717187 965739944 53589391 538285345 13425847 474226189 741323402 923914618 728770122 890506377 606749716 141774129 294730520 478790952 487171079 604797930 848053188 520821000 164195139 917577733 736802940 239612452 331872613 116181863 241750906 762667207 249812265 662062438 501342301 389629754 489425409 898778162 479060761 794186192 613317253 89500738 794110590 165135194 925132066 573707831 187651488 189100049 733772726 528062440 565951883 13867065 771613898 298445596 204822042 315591394 453263165 533041851 547773695 541039269 712762049 226307963 276107696 110973534 999055841 462779151 213338102 829305850 993857038 16254853 709858650 452283751 571870341 436532084 142649939 419479050 152879783 393988478 56600949 655730731 629434912 684794773 428886781 518814675 524786261 884782506 657546822 712975423 169041100 358781306 613203135 491605194 578609258 618783390 402630895 584928638 139702026 99550154 787745210 100592138 946585294 508777788 943636903 921944988 99095230 337641730 241093405 759739857 656398471 66398390 561318445 738932073 299482789 74599522 761572301 375402620 382491993 14275515 612363778 202190961 818672207 564694155 675529219 143320326 251883989 492867261 725982263 922563825 228608891 63019338 805450141 148023340 617064937 195068196 234622702 66994587 422242508 254742654 557370408 846950308 198216500 823498875 321208974 971473038 173001064 757247091 856724152 826905847 649276912 192078266 423795882 936969681 459164973 858727136 198519344 690619837 432549894 849630734 758783784 380908346 961625111 372733773 939887092 865234593 343430909 513255582 460749576 253903081 84291779 217304199 830421411 750461738 124774759 193123352 917601557 761798160 67360431 885453099 534406339 556858043 961459601 645294589 328499602 809557350 452493762 85910973 731763677 695125337 761417416 711305834 136154612 344308626 835198600 97565109 845166188 979032300 192746653 774170409 79934159 729872291 161254860 735859086 396181756 313815305 793806518 80962322 205687534 729340592 575666673 734016076 212990873 310609116 943841254 134970267 593379432 705784399 221382620 661739586 187061536 149137840 923981612 382693551 197887296 8391328 27374740 561312290 817007768 678057962 261461866 95508366 779133341 530204437 570740338 511569209 502285222 848948742 319825849 182013224 946631295 612222641 449862920 342952438 436072609 76750863 147875391 368662965 680301188 161821126 239985789 951483334 315869773 428373764 606610919 691509966 579091431 325938826 432745969 861539687 318893996 812699666 48465967 979490083 192830772 517247991 639523737 897776590 350158608 435650468 423604131 41933140 854553657 873488134 174288345 715577135 61225324 357275468 893478102 42452792 479658861 73369439 557474698 107776297 969770506 84384949 334554542 184681442 683289837 853371767 532265929 202761393 656840808 17026763 404154373 466608115 96615885 949858905 361618964 200061602 30715682 1639631 460910006 533153212 34281615 429057836 324151480 718496681 582998695 493018635 586097563 793138084 453076995 305271800 131339619 295371273 110860467 418207998 313490638 527230938 992547377 421986885 974114672 807946606 846458734 448145074 466982549 52312078 182330962 517209504 810764803 611231350 763598180 787041361 495636652 820041690 141851277 661265610 318106738 740630633 791248875 430808593 645614625 76173915 253167896 758583612 543108831 922360873 141467887 55540827 158965044 581554907 722296637 664023215 541736720 55679861 504804903 718220482 872670297 839219179 532311464 436694040 300612490 626525095 198671198 712842140 138638148 154201745 7358202 431251807 309020489 856904506 478679987 356651337 896913995 27143958 883795539 762449811 539724533 509139868 878703198 251282228 354064198 422036402 608288732 698056066 959501630 253825353 121920779 193499018 106392502 691549673 423705617 232944197 90882787 959651481 603664726 556390257 712265801 679248797 934733621 231642638 432695710 897585529 420642262 606825127 207660700 586121784 81527235 875545794 787803002 241831160 499918906 171397596 948571382 496468183 561979653 732500363 148185931 713922337 871511394 714805730 316133021 212250424 648273732 580954689 102243841 580643988 217743556 416113147 208460061 186081389 344172264 159320460 80810376 186453816 100857075 86230809 589390011 942977986 561371800 71967852 179624116 433221891 830587598 333694349 525236300 1464512 389214034 254675827 376940921 77336361 700463164 167931132 153000305 471104644 416054828 229151408 754704594 535049485 469193888 984877668 998539719 938272090 765788813 553190859 250200303 801655333 54315568 248158263 706043777 840878176 626130946 293832835 182854494 358725344 135102361 615775366 897426415 343396102 986235992 448011446 758753859 869076225 245707858 932420840 272748129 342297435 622762358 375340607 907734909 579893328 773688582 626922466 945858696 966104995 226675216 138513582 11211738 24088347 612983685 186055163 411850693 963587710 428927531 749515359 54338952 406114304 907591118 462980814 790219951 335559054 233090480 175449464 423109489 812458114 537367104 986888117 632300376 910182530 441398069 867638528 465088314 570222932 726955737 200980517 305264635 953804008 862178266 649631448 600630526 125829627 908057652 433378145 577661199 682179992 176023101 153433914 15230558 50341631 352774414 889661357 720216590 461288904 300810538 161556558 396013655 464923906 706245006 190743370 381376824 378785625 935208474 108105288 904233295 488467388 654094427 728868497 178391543 312639287 899533478 304676402 739182853 245738064 875830343 895125393 14800517 73516492 511225268 385170282 311818833 34394995 550459852 76962462 592687867 312156878 685300607 773203212 427640349 842199765 881331003 746938341 699044648 265575965 116669298 623151498 690297530 435728229 9066298 201015491 174604603 755042013 709173234 777362102 31733913 551267955 852228497 322736970 523742275 702778697 891409406 522422332 652338776 718781242 903741708 931062327 998468470 545427345 802645354 168995547 284983975 154630645 803373668 382688161 853672905 407135376 172095752 146155308 827726054 785918885 400328321 67409757 661824502 693357203 282082311 755499002 570827289 128318209 956408414 292630032 591632091 332689788 660838251 264880182 563417377 545533068 514222070 917597540 965845505 283626206 433804428 220684691 932375179 189010502 462529734 768471696 723162731 976332275 951726502 194231260 647177054 317301381 493835759 547791741 709539813 166285472 875619165 8411005 137089903 616431569 264609661 286259212 855824630 229060562 451727631 317990037 988447370 628759080 204110373 32422294 673124333 905240999 999869937 336809784 498302072 141487636 153653303 359132905 654338770 143680167 198550015 514283333 717633351 591861543 702552721 321946026 318164147 979556348 213350833 423259323 897066759 825899537 433460573 789532057 857374650 400588801 106171668 546533868 87575389 765978155 253526149 170473157 761989167 91810159 806793565 919256278 815149353 703895509 548792259 515488590 582367055 453847721 100853775 317509698 595643925 891462516 131545676 957383307 96451574 60928063 819799412 693400770 317099818 352771514 181679312 579883034 926373334 663074763 959430930 819654585 57691538 966943739 783426694 526075077 391962172 12326150 107663842 984050277 68273223 582410879 855491020 241933406 733245527 474698023 657323236 516376111 267778275 545505298 388666121 617058347 577777234 208427986 811909761 326703569 851182159 776491708 936286456 212767308 579801983 826623572 475367046 745584941 26977757 56195813 837045018 722950828 90356695 273466125 80077456 456578357 901741673 299958937 171351890 922410533 440343083 49891356 469275381 153835873 639573563 497350990 3370647 225834879 474096528 527997336 505587593 931867505 585148276 175491998 457492878 322588324 487005680 43758272 604646430 5003649 568073715 546223047 31809791 979599421 531406554 882729040 350092611 600876637 119985442 794269851 262293502 695635399 195254608 281479543 557365065 754676358 983927076 224504465 598350622 982036195 805146977 500413900 405567900 847291971 252128300 615091958 252121669 860676785 429616805 48023425 270326223 371088986 903019660 980363536 431850930 345493657 237983625 724195485 259124342 87818070 778216696 153466583 782757768 345255637 835556959 548350109 81880218 527177081 508110061 519134566 673272506 577669642 628158543 642717758 727973702 911702069 277148162 486354664 372533629 266538724 764224958 676128744 837369814 981953059 194829020 21349521 980719741 942531453 910580828 380989308 886928980 804262985 139609241 708780516 549153571 622107679 454144828 588465154 53522601 482312224 116414037 32738152 570553171 806060334 889878385 445984494 872080992 83324855 676555533 88511542 605664901 29460414 777029209 605368160 803379191 953655735 194734934 373820243 961205385 160724134 91983469 996563310 79138883 951475363 548212248 841141569 622243483 881699050 616484900 192297357 402706448 26551658 278236311 65581762 872490587 105582671 701415786 167163995 741216637 757498909 341392125 888325809 979988077 73310311 418423077 241943506 761839327 524120188 240530859 146325032 294327970 309540199 980065571 155954460 585319468 990218560 536361090 370202084 770460650 312554694 378632016 472210024 636362543 557832391 386607717 953460054 190066256 746618720 895655112 428221011 180989421 694166875 565604171 330687405 276999588 748142791 565186781 8102269 60757570 839012064 616894942 179255117 258451607 542223254 291316467 807795078 457212585 619868512 867580057 401931116 578271366 941766898 562330278 856603125 109109744 361397275 237472108 28595033 94274610 934740137 128421568 334493787 348346670 612978434 291303763 291337710 265379767 261550356 168330432 990945452 625643039 302044220 94701171 843016436 441793109 802168621 884322841 737189504 983449493 231344809 679585911 358656077 972648193 480201367 49496135 904151430 101459784 931951824 573705140 218633663 663179106 957454291 85083914 129028301 483872661 726101133 118368774 364517274 165791691 228229893 180291320 271089829 263299121 640258289 605576208 698665018 361526725 235185976 891938165 577701138 366266174 5876440 596863322 770276220 467675894 62109151 732752279 857227996 984375515 430539963 93648067 274624192 144652054 172449279 234736274 372083413 882676313 214067196 914737126 794239925 670236776 474669508 481007393 484969591 656627652 614499685 889558417 546593515 607794405 382457123 602497195 744948216 839560890 564871901 203635291 154172034 24157157 730648057 874992589 263363132 952823793 524742068 960227003 249507087 539996726 89107538 271481628 747943681 689385384 123930304 830715922 148652753 874699583 54161202 892661440 803227983 159330163 804721885 914527522 713071487 142972383 492693174 978057015 939991171 379073154 330023164 870996255 67418479 131820577 613642151 446856118 254415347 206879205 813292726 6161841 129987474 237225607 393862617 787834335 250186975 862995984 995369863 662019088 573576091 87242255 584843174 406614742 460465328 338932699 667690322 479727155 735608368 82465809 45721922 191413324 235330470 197523142 954147380 177913336 59789205 488562803 134601038 484434968 880117075 538953367 138275618 229419079 676786721 51087739 635263854 645596291 845947037 875161415 253199242 333263952 642983038 233629622 812101902 981070191 135422274 846510174 216371397 973978523 992315607 493323008 563279976 570779315 870218435 96194827 476422232 271689570 286121322 81569406 72587791 736937098 609955004 297823104 683182674 190563916 478864509 537318350 204501473 707133786 789303379 39930838 940832884 857802522 295787377 86079997 882342520 198300831 412722295 241173976 445760 257379425 383457240 849454864 53335127 661345647 639056575 224938284 479817275 686853875 450731961 180915815 849423651 194611756 235527786 301855052 416175416 765308513 482529617 119108516 685123753 151243695 806995336 874241522 288596960 520012274 395374651 369684730 726300204 636717866 36259723 493077912 781753373 515807390 561179285 970611533 907406431 404630803 31190404 424107423 733905504 956780566 942304083 135792319 359211175 572799024 232401410 306437700 173482939 44824708 941109462 285711798 559789331 652355498 721563002 351347182 365771290 436295729 325606151 228979565 908314616 670274463 714255296 164494386 942942361 349519477 108308157 354200851 145591673 403075872 15764967 674503571 84810708 472905475 749431098 111994400 317560011 750963515 822605094 914016179 603787588 303959217 254088462 369464102 929581340 910004978 928656058 882138872 513026629 453406922 703826459 782277761 422424798 915233183 950971345 110902276 709898808 161771566 917043677 970162280 909191045 590514480 603794794 602729496 138513454 583923559 609551809 342994960 294857332 282635366 979571752 684181147 471099235 780104190 647507501 756797944 792172772 917824365 449378980 462582573 857243829 885434619 950696650 982191985 892666244 588836354 760611170 689687268 67244904 597470390 222240531 632229963 774762346 992312245 134762535 338826757 735651035 533332452 577871777 973656956 628484859 567159282 831201089 10047191 916893928 612544864 345666997 958743969 100139724 633393222 632706241 569558553 249899711 55402030 401120602 585026257 264935291 746448941 783155061 93606618 899517858 841070398 937042114 622480289 329760335 540305623 773517098 92926137 964860564 905630283 711311926 180789457 152437686 878846733 303526240 747889646 387566772 589577862 957818033 334864981 953958468 823665900 502797550 934665676 204282168 293818410 298107037 935658175 338840458 660647047 404611989 376107911 983767339 500136373 716135125 919691565 84388494 962242459 742374182 470404483 441773940 769643145 725625549 743365056 696723679 455685837 147123525 844137326 917218747 485453990 92982396 651147896 735870634 214042382 561428692 620486753 703546075 642605742 87746739 978129549 427862523 705995406 1091397 518463354 211117996 250330025 805618338 26520078 519406375 180331045 774717868 594609839 368777751 131633011 648283153 536579776 488440396 113487406 823043955 196996651 658922046 74401685 45127959 756049336 31711597 599423510 872274778 686652972 773096606 379708216 469276597 917213613 350627672 849250242 25826147 951082978 967848857 40256569 761428752 329162206 34464574 60071389 558468676 894104028 487084417 117430712 732079619 304888798 422634501 274682885 236413381 900697943 231032348 562975707 183348384 194231488 931194649 858078289 825454600 754751684 299215845 228837281 791541014 387533216 242911784 649427318 20129168 205776232 200620697 404737472 984803903 247918532 278685518 479704606 830669815 768856579 508100549 45578857 650322621 23195390 118023869 128277479 542468233 933122586 31145506 161338152 759627487 774068900 207949051 746491837 539314795 468320608 803075330 550930763 861513356 331881625 657833959 166469458 661832979 509938582 886476421 999901490 360676995 913151659 879107658 993098110 854140781 568420721 887006966 708204888 695844542 595978485 362318142 546954032 968890656 207398931 988145473 529005406 630553327 381697192 566016097 753635476 894788526 950923068 49433764 519136744 119928301 244909726 713466139 291886611 976421647 96657218 19082150 924681607 153843112 699282127 211486300 534006856 815906174 953343629 537178704 499269894 798846926 545812000 730602210 739565565 44896043 881898417 243661089 934298080 328667378 163802485 680142372 119826393 715035803 100753361 408306271 881036917 106928201 625805770 34600615 565600992 236746968 760563456 634742114 65854005 65468440 857835948 297309573 621132494 835538231 628497020 316898780 835779623 941325962 819118566 463414882 549722238 142185874 823211882 972889923 661511728 402337151 467852594 516328583 889527604 93112574 702153541 953302341 409578205 993391433 583420290 622794275 226548895 640940697 354722162 22522210 317618127 595776301 726888233 500637774 774347979 78976785 623496096 350675104 502367324 22005875 920067103 758174595 152619911 844802851 872394295 436574303 72063345 944530658 114595792 556525115 292886802 350831289 883484842 950285709 489512300 477761959 173070204 474258846 876335827 825147484 145241023 734157529 181853265 392598858 456619151 918890627 268088625 452202438 593117419 917740281 960546226 989130586 425344602 56565104 643532294 383659894 751159126 892928754 545753022 278531893 393654023 492078143 170890756 761335759 783277019 183487411 612508245 390099 117449740 953780392 370706104 586444602 799493001 931061606 222630723 698951267 584050037 875539192 918740652 674697099 727109042 637722899 384770158 287050211 946191609 949331953 688281473 861510704 776427175 425020492 837649965 149338494 897930308 129226196 209664210 150924100 57098768 93654229 702452309 31127474 853860504 515118853 282553481 137201534 77959270 211174856 465936684 181317490 997050359 176284076 134615492 412076937 521959939 111107708 885790043 125851024 987431288 31439142 887259905 742649063 196859233 831153115 187724813 105219214 498956095 756043022 11760257 382904314 959623781 449717343 729285522 736535741 206511380 209669920 733720128 154723359 378468682 155354346 693558975 210934053 571434500 227060209 211600899 813022879 90720315 114468788 994787410 998942459 649525032 455571252 749118360 901400761 188719161 328481345 722014836 646462188 685165413 129047191 97058519 762625900 241735848 23576264 658315336 694371902 29710843 773720321 654665232 148417726 910631120 399886276 620847418 692336546 865262116 322164470 612543595 58448553 972396187 362976539 278233996 761309058 958639391 731220570 849010115 782696735 504538591 654505158 488667482 803385762 984523672 726742052 689367787 738926618 548578174 892850399 192449389 351520209 680433479 86992376 98237469 983558740 640913353 217392192 585198755 552162801 90143943 825058053 421049897 599677450 602962446 991560017 556645862 629672894 883076175 869642507 624574128 602359548 571381163 689960487 542731631 963261737 603309778 832623884 657411099 116837391 184092655 596652085 722916912 586528435 138986573 280172012 769383239 803234136 976536160 215399110 950614090 268506119 237408790 681730606 320185163 273176522 180205866 133195698 111459905 864133259 429196342 388484264 184668930 124056312 675390186 571490636 547423082 198339763 862855450 558441652 389073070 856152891 4688636 691055160 685208328 247590695 675280643 80066411 310700183 788666020 408829361 365586358 851018159 473028803 126205691 2034330 678730949 81536614 378189100 728210395 366529841 311890624 177939426 126133198 252836705 728375750 152752213 408767269 101788757 129372654 532611370 735645100 435030722 715089422 154400821 850386818 854578553 568993075 497515594 378194071 335525290 979331501 326626657 972820218 251292139 528441319 797303079 413111532 664025156 421045750 992030068 672871896 824085617 554465366 310917735 942701884 436140814 875422120 649468381 249081307 691006887 360630364 616126454 926171341 910989621 344439417 234345112 484980681 294103646 612367105 61541188 274120087 856714714 224941272 585270442 208229945 380463674 115861007 741367287 482613714 706046278 720300032 49192441 101720438 594941224 241728355 609758495 626789881 16248981 716308336 143201970 653565764 286532507 794319105 922563836 603641077 599064576 11460259 398539921 624742725 525160176 247777339 152475146 360482413 841016908 27535160 963704254 838365939 79019619 962616655 445351095 648790087 368516956 682510580 976443982 421021591 645816792 720470063 46285007 635009072 605719195 703090589 62714524 849337718 828536792 480380539 45433058 681676140 135067256 941699794 337449219 938094682 109649871 777582620 386166569 79694764 46425312 800361205 737698262 399222115 233720143 148172467 847253615 256557562 545700937 736018 314041311 693959519 419792953 514974267 482074022 625633667 329470262 153571872 321044346 945612594 454548842 841229294 905009129 636220014 891210087 530533670 423416333 206635381 861721094 193257333 384586578 784433387 404373439 340461443 903838515 339386818 142049637 897334381 483210581 378064833 121258664 796359891 662576272 929521753 309802136 54872552 495028439 684946270 106659321 229070669 375523229 329606106 602294002 68771577 517025278 776044422 980000356 253144446 315615371 313158026 684090023 282210349 573888500 461262486 344083919 277524891 189003469 313325439 123178074 876468257 928518468 956726550 381681780 445356033 874962892 992826220 880504120 38707339 109730948 339147362 188718138 938249657 953308740 600770474 483556571 237280169 241790901 897337428 230569447 894877113 642078697 440583708 995091379 970121740 527795508 341989290 290507778 841828796 15974897 107666545 309034407 725771119 664432974 15716559 461515994 621562426 219381883 824983382 125085773 143225968 602974142 238052010 525766185 546780065 792350725 903482917 175262854 251148775 862750678 278507373 575613130 146122013 333703752 277137391 671843488 587639535 464057057 424440387 519869468 758067522 371912462 402665784 721874323 718648224 259887517 302934961 987096800 699292242 293198410 837311522 585686831 621925611 263081884 366099755 706351248 311741259 991550079 638700276 341081072 776498116 354764122 412899325 17806815 946230494 981789852 819115714 803306285 994302762 713030622 924743794 850448014 830745291 522620486 862425596 696727438 40862551 947990540 681968572 82277812 278708160 289521621 814798420 140370727 337417541 479207111 276753681 387809746 190155194 984331735 97747175 765047529 464224261 221786169 754736462 198193513 568423311 493913913 870957328 86720133 405459449 220445091 972857809 203283345 739218658 949520085 531610528 991369199 164363587 723802996 848601387 869982352 895398662 923244037 34290186 589396006 906117088 275232443 6268105 492158856 800493493 333719472 812233019 824036683 726801580 142787238 430815951 352125434 530381940 457077843 378353433 515614573 300029040 152970509 396852835 815271512 125084748 557200204 503882531 687953937 402774237 457899912 693738975 304876124 880233273 985476464 842968179 107926976 330264681 522301098 369025838 114420232 129660254 360297021 4910433 987772516 877724457 910834981 807914904 475040923 917947850 247023949 235967019 704540957 126419288 117553302 185350279 629093954 592192339 325406859 685356025 205521901 681966948 393072333 916951305 400456228 319802230 924023905 865194485 769655053 405948207 176922721 291466735 184445919 280747844 339785673 937365816 476901623 311381158 976303314 356676727 608559357 205937851 609782275 565282363 762664879 230165751 685989354 149678765 559737897 406291668 146537105 353163002 841200870 651423022 928548781 687184544 103811062 655827045 251362649 882237727 581204312 374741391 493061168 367667417 962612923 442584350 220374196 902549426 785854609 1522471 37358833 668150900 19232891 508570591 232208649 810417616 697875316 111405299 99517875 969009330 272158295 899014314 210192153 551786230 58488834 277875105 376236464 945456392 759066015 676588862 439302870 541061004 621001718 946088161 460442993 829361542 857772824 140430659 341787967 76983157 515442957 935898597 31137453 78391353 243135803 353120491 271792824 480252211 100492107 518178102 559247763 540126907 787789824 978401107 217984777 147767333 72156340 357331412 363456734 381142552 146526218 831831286 519404861 957602240 347301485 477624686 711220291 435232993 194131080 341142188 651153304 981015497 970945005 737258617 828467638 883154463 764805134 240191468 17989221 236159903 106375984 813061302 805366359 425081532 251168713 604967790 978299896 649550067 556791062 782674196 603125751 195165877 531573970 351085687 355219566 41604693 538878615 594706052 313119934 802003078 808504342 65656018 258430260 690959307 286896822 713046995 993888204 256232603 465794260 844295471 862101507 752774527 754034721 820740360 934583397 381774941 451303332 751167177 347057053 549681644 976768186 883776390 683877707 173621904 68672156 181601374 592725130 913022059 73432161 37127324 323997807 44726357 306069342 914874489 866627760 741299849 574306662 380814701 827579764 336268823 659570433 717436139 324069521 556426428 391994627 267626168 929135263 44698229 161704944 502447378 627053151 498060199 53239941 766675317 811283940 23076680 934222309 184466291 107912333 964349200 597088517 695996017 840805759 939998142 833026719 767078822 938701272 722649758 332383611 559670428 528993857 690186929 572293683 995227746 588180689 981790436 994507868 935866231 504388833 240836595 502684771 510281195 881883793 751838003 949288129 448218104 482145972 331056849 511606322 487882302 253119785 16173879 213789562 565165707 477649290 881783623 88059161 825613774 650865662 412362810 645677418 666297029 705651952 724953387 627618778 141636698 537069514 855660389 946961384 519783960 272153898 271340332 923931911 711792835 63770102 983166791 406537670 541376924 147340557 467855177 247292155 182709496 447498993 587346406 119109018 203617872 347768921 591033383 597753917 882231625 53067824 991859210 289817922 58889292 66880014 635290870 99691283 135683035 534097733 265580803 545916900 58471682 366176231 202224677 436698148 37214402 270833451 436668554 134369226 156763192 57957699 712490997 685230810 396350077 826181006 272902001 26505161 921273729 87406611 721353957 475009461 447266453 584683033 418479646 641234975 586096444 383808675 811754806 291117742 518707159 628265797 985512200 19918666 316248719 477613502 797777309 410679454 334397928 756588320 773390731 595351014 810118696 828154938 140162086 24051166 111689727 948137093 631284018 691729176 865987051 222592954 520568468 91096134 576731826 270726100 454160508 287015313 509829248 508892001 907060921 986622745 7114114 644952613 67693652 810016113 408115257 627762616 405047192 338471733 598556302 824038052 200202387 160617407 131549803 401471622 948944072 862169427 137288563 226825767 80949512 294142660 726272402 847509211 586382082 24230502 773992514 348120888 951109442 398748968 676109741 26913950 929130442 32391438 151107838 865934036 334320583 608857139 360554702 970983747 607568673 27642777 734464583 897935044 564372512 415439270 98144797 908397093 531279313 736658710 980116240 449507421 853651433 237652957 945264970 180242856 786463897 616957830 347497804 245242956 814212710 612280676 998438351 117280462 914716268 41316868 121849950 1522727 231475545 616801713 949249341 477377888 323365419 431423422 729874784 198217320 297019786 964014416 674346912 430662126 351027022 323114218 126386498 332195172 203625698 687149854 626578199 122797258 436096207 393277986 899239888 797891506 989528463 445265509 620034907 485906280 988422868 13018580 131103263 894929677 225540875 245527439 332604272 190929758 261279996 468111851 980317623 390501785 724126189 787406643 746957063 958583477 101679931 775263785 149275211 18431310 216167286 978795017 71617221 681534935 335483443 25030773 288668767 88461958 453107046 811865103 212381762 48321222 730088497 751461222 823798940 705005656 841797383 185423961 133032240 679491818 67734964 498553169 110215062 138692769 329326195 554810625 255722027 173807930 501879103 347138891 51786241 662745832 887508701 862198802 395837583 710401310 772190930 312501375 690210111 739453121 387000990 490627356 522320672 183260883 252544893 788059037 952823624 414552193 317444076 81772030 240504007 352067750 405981742 359288814 356939755 318709226 700189671 343182522 943125113 643481172 760287896 179992605 995883273 710393231 342695835 413652165 142646604 823634113 305383074 721460270 625491016 973419868 201359363 935017942 299422987 845134031 362573981 360687589 783301419 479247540 525500389 464921700 525027756 391776947 848488535 333260750 450327413 249094658 461215035 750545691 628454422 908278585 831744649 99760043 952404709 742186047 849077894 886676646 134410397 623624697 276234146 622863283 837242427 73243458 839810554 462586055 876491293 120180386 413901285 356463198 908950622 554519309 566915191 514783618 74034805 601463406 142550068 271776706 191798860 741137438 884394381 694098590 127025010 812334009 986673160 296599535 761282276 570077978 925490044 30689212 991208810 437533003 347622902 407786024 937354541 910794126 150351133 461364112 98036968 894481333 810851406 96242963 654644761 340638802 854999867 142041386 200614840 730769907 267119498 379136021 39701960 726901778 410801181 111781443 819756961 25912511 188535837 484802010 182105497 470886469 448240202 42680102 539519671 73812698 888770763 209436973 512115639 895712036 941996427 205877025 374300699 85058406 148984703 574636268 773471289 754821143 77246648 124495460 830094419 245312863 268134682 372399885 201564745 664963891 504827451 468629773 662639572 415250964 226630908 740599540 123822233 3997352 287243568 111896439 96632004 194457312 877905068 494297890 331215656 122908237 141324247 19104758 851743264 566359706 580881512 748478908 715127854 579504948 664164389 235665657 205312628 690985158 867289222 361347403 44184483 451938541 90116455 115234834 102320392 127428597 158752646 10218072 796331024 804298701 230495084 87006964 704056764 255048071 334746651 624461760 876365778 581455343 886065734 568576600 974990841 552829793 137930661 444242109 942952949 183224982 773469674 533194001 232853824 943414097 953426766 258874598 118593199 329973113 274571515 21451068 791455408 304576533 64515734 245345075 797152683 547037412 284415152 442041088 354957954 483330901 969198905 98152777 375354180 858428126 475520677 346443195 14381721 751375073 311413684 414607619 68530314 553813029 352061011 600399130 486067594 665979998 147647394 271905609 628040261 992590308 469752103 570529407 102243359 884961467 512528431 603538363 723866997 753195289 988700273 671008723 119711674 52576495 428988480 240270000 97712773 671555302 566782788 782403949 277462160 570979674 262703365 129694564 176299799 74963236 282879670 719123157 531181488 535511175 799332428 568004644 987223365 594824710 658679113 532813918 89981402 535714965 798547875 124069254 237874546 56352350 305901493 45499533 214682892 790037606 430497775 6763193 203629665 766229662 507563730 351249118 535275254 331166346 345829035 847561533 225307029 992254472 565440222 302401691 977046848 664543621 819952742 174610169 32529589 817566552 70949944 684248295 203062131 99669959 438644668 462211535 609068967 773041280 954353399 48515595 599602792 806093705 694510953 183529769 324821887 984459016 540526523 550554284 816221057 743482078 926628994 351726841 165718115 978889545 496952238 886993773 554617150 122662394 172801833 863126745 567908790 406073537 171623049 98230817 419304315 353152585 783836240 328633253 6835979 56526515 929229857 941099098 512283389 919959552 482925489 506416893 98344647 415354709 362141643 958412265 663879127 77591229 42929247 601265214 326862178 450068002 93598365 682451713 854203541 835660392 78129029 709941222 875249394 733943173 294009336 516416486 26414092 319100630 332726831 208046195 973585768 101923126 263478316 745826470 232478138 777684388 34495392 229515998 218772861 657355976 574997261 943344991 320820498 37831537 284155931 984218003 23607557 814936331 490609995 735637435 383802962 310547232 231973736 845332269 245349044 293760222 435457688 572856226 729120289 724458852 539089186 569034317 266284476 810314155 261409357 170227787 446873251 343423964 291310641 633048795 882392643 140571889 223172331 225050925 769530331 928328934 625264245 860577977 931923538 152874899 961270634 33464097 378399305 472245259 768442082 337340846 253318801 329923797 319572389 643852162 686326541 280902408 892410843 836937187 594490592 291147345 497899176 142599914 37369939 306147236 376129062 569463423 496036119 350969567 228578076 947014987 38825406 106354285 934315188 200761054 238505036 470060650 759907797 207557759 170298222 474863426 454226583 610159584 80247640 133432671 674527796 617161049 395290179 587480817 57616717 77333936 528074431 904318852 489668087 678928033 989747333 767109095 655255402 507293853 677377023 534711605 36662820 154547090 814680956 300813619 324177364 345061899 667722500 262866854 804243155 631203660 934928710 334578099 370220444 20145714 93949403 4853594 510574930 326364164 807536383 202938830 312441160 936550298 615555040 651766951 898185434 455238879 94267743 708918897 913502376 692077994 951444492 993452519 199799972 476517452 546266807 663653178 177870810 372219841 788488016 233660077 973769944 643785286 930425941 720676836 305080501 287611180 901368454 505745732 943091553 301496500 394665848 94396187 468645399 146831392 468769344 616863060 804608396 65867524 304272307 284227868 292519573 428998174 695769437 46047541 31535608 718288063 153024752 896705859 409046229 437988255 312213123 693457964 375679989 518348471 588733420 12203952 566680734 725937654 742767943 39289826 90025834 934614428 908783847 360564308 829202822 812501448 262228816 376397213 83885490 187698141 681023881 632238846 891021940 901537309 585276653 690501451 430382619 311637522 332365162 551738201 437706202 871702927 685252589 318452781 12036042 421746317 329108056 291020874 485742473 610440120 903404772 315533442 563447369 738703191 64623727 843149046 453895998 421541938 640904598 358275428 73448366 694166830 173313862 817517069 791463819 65031847 687622580 555550459 693507686 838555966 622283795 6340256 946548098 122376177 330598526 97242478 192821828 863062012 429939992 335985438 441830604 203920882 379486539 581437180 245198748 869553275 384720296 891627891 321476397 718762419 819254088 271910165 216801226 295577552 896287519 667931791 115573549 872815044 146183960 359817978 405210117 791390483 12897722 10908242 405802208 761850884 501930525 322275078 496276599 125521415 869241506 603074890 255886589 291681016 912924287 620727950 337428283 603113937 318046324 471551763 967036656 742758804 619042356 595586952 820403423 247786329 152031273 481924406 275269022 3534025 936595530 417901743 786758210 402231636 470150545 569512680 597306016 924739695 613767026 258870055 53787381 84613431 911372969 752153343 765449591 695808657 596815997 16402378 238141149 986030436 786971306 756118694 466750367 905259832 479189046 27350433 981722774 170689077 420090973 229260881 388945663 482984955 911583466 153203816 514400353 692655877 573008339 53293807 845436714 499481160 952302601 796546854 555516043 428715960 981959366 968156893 287564961 571157250 48389760 140924640 251669007 564330425 432050196 820970262 364765079 832251400 973550344 657930633 499398152 145863127 452008910 399848621 338455402 135693819 763036602 780339620 268631259 745687868 27529542 924755968 723641253 128722907 328546356 28917031 450244000 445364522 633486582 895500544 45457662 316325663 427850463 448442664 38692761 350207376 960287551 930788693 889383141 924830163 462967877 119146044 509460758 75268829 924600256 12223605 527338157 566140678 381935028 496885242 97616080 539564266 989192023 831222748 125256332 810085104 525890080 735785726 987256164 825118552 382197740 394813417 332186998 877438973 493102115 599322021 612461484 446458280 879285602 673291003 623637188 538742285 227923682 249107573 452873722 614141451 136551915 873117212 269979171 10079153 645593357 852953489 696032002 813918552 693368568 837476125 792489171 415625900 489027740 761416779 610754124 908808962 421436515 272711184 947188496 529050684 431757208 802005150 817778781 23901292 504752241 406238861 94205241 475510879 583868718 677343461 953988325 812554975 385758764 689465696 701437642 61488478 448087253 582011948 845490373 320714754 839515724 36489331 843945610 283821361 231790203 173379289 459012254 953495446 400544813 964935946 821636271 80218191 121781883 318919922 325216728 156051023 428185479 859200149 244649146 659654327 750970154 586476126 905509958 608979739 596452994 67232681 114729027 497179604 452045518 290164615 132243970 649537766 837649507 187687484 833766583 479678803 119059703 901936764 82370315 788783724 508823415 549474852 203127983 615819258 12428326 665997933 30114199 785341649 826848675 387076444 757686830 287773457 465542880 980599068 636893923 935306455 121153564 505585151 355793132 453005689 348719616 630887502 470891212 545652269 868096445 352226133 837974367 586139525 252733822 210952107 451689132 886116210 839519589 446168936 860475201 206779816 685935578 334766740 74664398 615252038 147848141 450882686 720725270 518206284 920364286 775425049 28758042 813152894 37081057 427732415 355599879 437306455 571060079 528135137 683587577 491165110 441705216 898456193 175735877 544598350 697131334 511279580 871848417 399023382 57343178 336410371 632249421 812965342 88041716 127883279 600056597 940561235 407940969 949113988 876651584 663309286 618914338 432970765 188255289 854995131 806787757 46893405 94721459 482879581 560781159 296319871 111058414 898257967 973874399 307538082 227359510 46205418 754796431 280167018 286242402 618890501 730881238 536651626 529517940 537731291 181282253 468843457 566684494 276291143 912104212 32787601 782843407 133753450 991456342 237772872 194338075 928710693 33001578 455549900 471226155 27032448 446770788 399928479 304487099 122979921 879094907 865788625 574396813 447129331 217011328 552253141 366494095 448365683 149447328 210016248 648610355 72865655 91646266 423705542 903618226 713480532 26490988 558656859 235109826 495993438 637875119 534791174 108291055 188417618 154411233 497366044 152200162 569736697 345666112 376515640 702760545 491703438 709974124 667350253 872062587 768563164 572027623 765976355 935567504 710564642 533386328 187581380 699540973 919679824 250002210 494141823 202099155 777327846 123758936 554166612 326910111 239222019 12540258 680010582 282826462 728593312 167849773 367071489 740170126 911409926 817286517 767666076 850580367 974362067 393168013 976938663 327213957 39099745 198191595 385856233 834230043 974389076 409226195 615863739 889762219 165203496 953923698 81244279 223967087 366516304 145087422 442778390 509018329 743489482 439085729 448497118 960699925 753827900 848020536 803352657 524316618 532266373 193766553 645774764 590703153 703826790 783692037 554718408 332272565 898797969 237359743 391295303 65221405 541592088 705894831 206262154 693259968 294838531 505509743 380362330 840397884 447369347 994674740 461236120 319794107 36922408 727304088 671501752 880191281 630038006 979358244 39668374 795186537 13714440 203496999 480784376 994743552 747472942 535628393 896042242 599494034 34503589 286359108 328860622 91995368 612439815 502226395 331564107 501844615 566824502 683663782 54301675 931747397 604670727 953112311 67655202 118465043 966891350 386721646 631589695 961834914 138727103 31423218 921941799 984050470 962845602 343334802 768592519 211562902 846175259 251577067 679426735 52570885 709943692 217727237 532451791 910551755 483371564 52954023 516036640 405134716 315167789 486792129 371447664 616554622 646656652 453711066 615892814 612682430 539168235 717668967 388726825 74659014 934378242 187011660 757306737 465661277 93631281 24199066 418276271 51470047 177695812 393803825 633219895 950835058 468508085 754843209 181005648 193001806 568178219 921560238 849590531 692072798 430418697 493318727 719208100 126876222 804945035 210388100 729086891 941975654 522028230 48595300 590447154 481447541 396596080 359218348 944727788 758819194 238884126 555415705 219608472 580061035 466997192 654009975 810965099 910927672 926466156 467462535 993119925 78957729 241817012 63260136 613212449 307442669 623548918 464894118 43660517 162278313 831647929 606388519 446758066 648479401 818089639 805106005 768146270 120430229 374146284 420136868 160257956 936534582 578640971 919616360 273259955 112047588 377130641 317805302 934599765 293975177 942680092 946295903 802336243 578510005 992626677 402582537 691875933 503635444 551071318 994812237 398424949 307478186 889263883 601564905 546077261 126047420 597670118 107015881 777516997 875155302 858913437 129534675 848240943 890666283 21652698 849103267 628322969 502946345 737070591 273902537 771698764 147352193 413351913 838001647 665286655 489646452 303231203 698176460 317321233 303225002 107306505 158803630 244199525 67147940 67353753 824569812 831676473 13842563 649286680 627541686 556443286 333941195 477360842 470722992 57014950 30037909 963551580 958080242 157214883 645821684 662744144 212249375 340758822 237086093 163223361 87657494 728964006 550992615 38348446 913866658 449205444 322682958 740441395 17812375 186859953 39715641 536170121 939852293 833983120 325761379 557543412 103480706 410375040 603606244 763768001 182172756 60355780 964166765 949319949 573492240 783868101 642051195 688932801 349559647 696187073 98500700 10322440 578384031 388283136 335932975 639757457 802159230 135613726 876868659 788780329 301319064 986967538 806892147 274223075 839427365 575176351 20984851 654528132 841024423 252926688 135152485 495064583 451343943 944806285 339375922 611485931 195398159 579522816 755105675 796869369 288057900 534075611 286344292 959417845 134328938 367093557 960422331 179701538 910899476 454919631 895237993 539590967 299145529 566795385 569008488 913039632 253974076 714860629 57038670 419572306 617519121 396556394 314932895 657991380 384526433 481701007 602784575 830607327 466988429 768446410 946756208 658229666 222501154 479654416 301719964 925765811 601815359 777452193 441501151 58804079 964088055 197270471 744792525 907131087 321709046 603550792 576754628 890354757 163247420 193295592 450673391 511536596 146578345 603251233 537241971 449123292 111388614 935779475 863348371 68522528 621285165 30476754 202418968 496588348 186432160 727177368 88615918 536697102 973901842 977977203 760178226 3556083 880833792 600267359 359306946 525649000 379551548 577778806 396039101 904454673 926171243 890091181 4218261 23484121 909679417 906304099 200827976 927197231 934106801 536921547 14629274 748187374 287823126 497257418 255532026 741687936 362349603 919897808 293721534 713520432 619418026 853169943 173374860 343554209 355214262 535926074 341541861 741094102 658618727 298227837 617220058 860390910 985038828 147088978 191820827 805341885 766128537 364224789 509626058 953791304 23451263 63727311 809591133 814906739 555671889 564714476 879901429 83145692 782026795 834770373 508969827 16728655 137808496 140342687 726992963 711600178 674770064 358150915 511451595 501652435 183478827 576299343 120332675 468222357 100020175 267538058 15802878 243929053 522033112 223096965 772741002 896915243 260603771 294287662 372107367 816272156 656021730 956861265 348473566 3836120 880848565 385506795 592032156 272514819 924498032 620027906 656665012 360162139 13849241 14251064 884599139 67989178 483123620 612170355 67060215 800122105 358819352 216722074 377560863 558293688 817777965 208995583 993396163 702116349 767794890 28301434 396573838 657541730 429785627 298313727 298643973 175591781 505858019 595127338 609832575 978605437 83625490 89253508 724406649 536382748 662239766 364598532 522803409 230876135 7100768 908225660 276923356 678533231 619357478 229600537 23428510 290196132 637221273 597063010 187787786 336560946 589337454 430053598 169325837 956438515 454859663 578038340 44917641 53799549 244675286 469917747 64594678 898880412 700424846 999140662 481893530 550885844 2994730 1603687 679535299 412918796 126205822 332093459 507625698 550820824 69150606 590619159 970278042 885935549 115987983 451033166 930715999 106599670 975547227 165797281 483361978 819177691 211239589 460836134 119560132 309699394 153116168 710040936 938946435 921709796 11273141 946154101 866203482 497303765 260717695 384045979 196419484 329132315 244827770 290756045 618060573 708313110 537418962 902787509 245794435 167900892 627338395 121648221 650964285 105109622 3504247 242405529 665768681 415164972 106439479 578484847 100555477 318595561 781237130 80553403 332251500 700650992 325251321 596661729 902603228 617720723 513742797 232539649 284445752 216008745 941374805 87444300 655872126 924704621 388961984 717584348 803001689 532264897 869509716 984045412 322931994 758140435 168558484 999421357 720744541 663566101 542681461 607305033 717544364 949112923 584498902 756790176 90456219 683976515 22807810 611392744 708715453 656499763 494586135 795584759 556929187 317592416 349554067 716827616 819624053 823075472 345184945 363535246 356195116 614631845 933131635 620685776 815165711 57731961 96872048 419151620 684397327 77778184 246459476 390639579 580203530 167994856 377018896 285434193 144935793 300006354 233353441 553261130 234682211 418260026 402643205 169684946 507366979 666849723 897079484 934181806 757274676 822440969 330851434 513156861 64317640 865028129 203206735 443930031 997747701 485885469 915039714 90965446 580443527 985472987 354486530 146790275 53837504 945311409 956261368 50649386 631873241 410884639 809518934 499309007 125636858 253520072 791358161 215610217 355718727 332636905 933355329 849429945 703541686 730080167 510397745 875086297 718063101 736154030 828530135 375479733 271761400 228714306 270120917 482013558 718040268 822163258 592645426 899782234 766788527 998721220 200723591 516595788 86235401 307883681 797665983 843165037 565433858 928794279 127521090 21842668 139755529 871080352 185131437 595753000 187137252 909215804 455004563 8147639 602161580 814176301 783191727 892820593 284323751 863140284 949843148 476654931 147020546 594491801 688053150 54501721 644105381 136166520 306883754 220345013 333841479 504388741 331276116 221815638 161513149 110783472 613758769 722836453 923026143 574287836 337251399 84511492 760469574 692215630 305904664 3987212 644781426 174042965 521708468 442213788 46115649 604457174 913839576 518898125 121670315 449266019 97524642 575759301 720891067 370922043 428235621 347435805 295189099 442732125 204748073 362478728 717542616 714657076 93120474 603251626 372177076 904518669 2775548 277256739 64424405 6788845 739465878 462196337 716214501 998693744 644006785 972578805 20191278 643640094 927451354 257634039 658227588 721323855 841503917 604563981 118380714 47022388 872014902 808021041 162152230 202383309 739673362 65966864 756364282 631154546 664356811 847669130 536307524 710677422 154728079 766347112 893960157 224023269 718201689 27001837 167467530 464858953 883912003 881815735 424329063 473017680 859048510 728386402 77215164 713091958 11879224 913749032 351831253 704788697 739471648 331773994 959279493 470918356 59410322 748909150 585139542 752189304 429171180 760672586 400446869 94899547 160082284 675541239 956300606 798700218 444726968 32375319 320253051 318525923 159649281 562512713 966488085 810686109 299102902 695046942 826161925 426883844 589666484 907292509 144120007 126893889 477192911 424120802 652916175 603156157 42874164 849788580 225725282 726871966 26368333 860251022 211657185 639040195 214893866 474375266 491934106 588346791 104488845 865124363 154572010 581920803 6434465 305444753 129754927 346936601 841832009 919581326 190617985 948446193 80348150 433011324 707436954 335273866 168713335 466432665 872584866 429785396 782774320 241072648 794827335 101331942 385858506 361147399 482734397 639921521 416838378 549621411 297546509 266111418 351015027 845865719 292818707 253133574 623985109 320546272 803879637 752711230 287951592 614409059 164433328 45914474 594409460 698211829 346701762 98827779 822240522 218341488 884565884 530725567 903616629 764790003 304000677 460745636 217838973 294234981 533351881 670069855 745043653 765440303 345113376 808613221 348700238 970619704 874812562 435354305 742697356 642277228 820353942 193671280 184241443 255328182 174960428 603898321 506842652 664002325 21977351 401071534 871577296 107675390 589395774 682321502 309007860 803586041 992956278 510099879 722275427 728633233 965644557 796068195 896671808 635063657 452293977 830378819 271118736 800481929 597491587 605002052 626056118 923357375 100431095 340841210 849413561 436294202 655634173 215614903 379764856 284261316 694866835 428468809 879146707 260646556 318491383 69865437 82962273 555039355 368516521 529719472 100213676 675546879 958197127 24706874 988198597 595486370 296299318 949608312 662801985 708941804 724640044 272337984 698716213 437148765 169848364 436659861 954841496 350725054 533957934 413114077 511160941 70876740 181605755 400422473 569814983 72282489 129615033 208530379 846045227 265217178 26612918 298495129 461791772 776143084 529886681 680392136 471229732 826007005 386846518 404982931 666811687 831109925 436495311 568320284 192739084 353611619 559609219 442198713 917862850 507958763 186358688 942601111 897363155 167170855 809138079 151095499 657900012 266262684 957849939 55275784 899155862 884906224 756447474 630040805 278368624 8594823 438124402 90145825 592429956 790913055 778279489 962499730 576587135 238184216 910377267 70899419 945095823 185551694 116467570 986018910 798044023 324499899 710228698 396839361 575031440 200766797 806031049 199860595 723830778 733689815 861355983 339953611 174770981 255998981 736784773 613581623 882967317 568685373 805440034 413888415 635334652 802356940 883971935 622175153 264433415 601177534 33125041 158153133 283103042 778069012 268056595 116871821 19835628 261526821 462529581 747812449 194133826 287017650 9430391 422773385 468289419 699984950 766705034 321629394 494140830 64894655 579972871 761377368 125493947 546062349 639454689 221239361 274049941 396631818 857121025 748152026 672196014 209386220 186552357 120707601 612687002 417466607 90997728 5263301 914866312 615184333 509025263 490545046 167722445 658798789 676933750 377916526 766426813 222617358 169718304 780211011 243066309 438103132 694137205 326764767 488545723 894716152 937650607 531628226 44579805 330591319 959645411 48533281 853697476 949669907 500198526 785347672 651237400 465392289 720115663 451205047 797213225 533077245 829109159 444798378 352045799 389093559 965641817 89986349 951267845 817075782 501663785 486196033 951030934 287093162 377329603 226938053 955796297 160014210 62637703 83514025 728170426 585106907 139397884 591178213 772459530 307701263 257689116 603145475 690947992 712074728 459027437 7477866 852914324 946929120 133815622 842715166 34688379 80511699 174484188 842779420 84740168 585535401 686093921 807150061 337713399 594409447 938990356 914042123 69317477 653543709 844798125 904127111 258985085 358953690 380397074 917293999 732960683 975732747 143586206 571531222 636469213 812124320 981155674 982969548 912112608 640400910 20083358 345800332 726943160 839300564 261098233 966651131 555899964 660134139 10033618 645554186 458457792 74517067 882719145 336192016 328213405 818030255 56473553 688767679 370107943 65606756 585213689 794832567 829841048 474398250 930916192 786375996 847637787 873756098 892208705 458204559 475489026 144723275 298904241 560533015 731305036 75552498 368260194 881729819 211074868 541918339 392211432 589742844 663825367 622531770 467756023 495573213 878409213 207337241 875249292 906591581 263533759 782670059 912759318 642982916 608306785 138398087 705495053 796939412 738544064 125466843 535213769 690979971 118998175 801782080 174128753 243982530 175916603 793601503 847029671 533347250 273286860 101949899 304575651 379719235 28238747 563022371 201093126 459637322 532897306 941266521 256696120 658347344 146268152 322237443 656240835 827154845 756084166 871717214 870310090 567710102 615951438 307438176 535317643 443375509 90549364 466571135 224591398 579896327 796918958 719283209 259554856 556629552 428740928 601097786 506295479 21411923 535017261 38169890 796575592 261395174 183897279 33181008 583029302 574073871 252431113 589914493 843850609 436111375 573219405 909204219 601835371 317962170 237169112 649011404 309879158 546212539 450764928 649696676 982770212 89135233 448975172 987189549 741215886 161641213 974221894 138759551 631555142 139255001 75486999 930657795 303787897 737218519 455473072 796582028 592029139 295313216 714650997 666051994 335546428 531833286 607758650 619815681 239087378 191689837 56947867 422114385 837612680 526770056 345389771 24135955 85105013 430917995 346628109 53486381 367222863 103405684 878684197 308599907 579454681 195817907 986688821 158912601 555737147 149257632 116143303 217536044 855089044 796583065 833160547 413993318 93587974 527691520 203624179 206954464 333190058 116934866 162655723 723865770 651152608 156064684 53419744 847338518 630966986 670742955 203621298 976113944 798322688 823284386 242469505 839076421 831359193 273488268 204550428 602817202 288617803 788114774 36947892 58502117 778883188 780086384 274539301 773342107 5281243 139697491 693038215 452785707 959932474 973886405 527949231 873405865 75265851 328013943 115434201 764798913 711112164 738114235 939795406 990192038 474871878 138015403 29238710 899587864 698667305 580475171 827251160 368065659 545314073 439446720 47621120 20428352 29889997 572126974 380240170 394880640 812360385 539644452 261875925 262638819 549324696 604862106 718308613 846974476 124227921 152956516 132763297 783462717 342583218 411738705 256987713 260865343 520094926 950677410 657524635 558980691 352288168 738082595 993169560 191835473 203065377 208385432 794191514 299845731 807485314 188372529 644767982 466883566 773554517 626850852 378512481 292904312 215343602 250996756 457708956 765121946 749896263 103093593 452489634 157020545 555643156 456907843 847508525 686719561 806165639 742295240 605124838 646055719 736585412 764163792 310197870 843053754 857415582 355206356 604337177 713950936 636410819 749376859 596619600 79494255 938219900 811840643 111300945 113939133 159916014 646715826 708602107 740659220 826768089 337613045 511325999 743548731 69154457 305130261 625191195 884339287 761305034 492986638 64983226 842164276 77075123 832192638 855113599 185949069 842215213 963953701 531020318 519192465 724190964 701642906 757149238 194138434 663220655 747040453 186991289 532857367 139628602 798613479 667101335 270632872 161428047 362096524 216611870 444184406 154480626 606826765 82466882 522529924 512087631 611071584 516736432 200706052 215514662 326671724 385717465 200643769 103931061 253089386 249016436 539769918 97744299 260746295 720135777 827125218 573124838 338175283 647000894 830593501 153476049 740774258 513008424 347539860 561470264 761489569 62363442 252193160 985100147 449175885 589381706 854982231 500501071 683331030 79739002 917948188 660568686 569627606 183429619 166814153 187288328 148114288 149058917 160644853 351523940 734794406 745805358 746025214 4205192 288803886 916639918 508406017 464739032 273545744 688615189 649009990 891866326 304298585 299461227 531942058 775970524 339560636 495271627 406590084 19075054 992065701 771712654 790613450 660152317 40918600 819507853 647856134 278929705 358816335 777287955 178368535 28872562 198586875 350426548 682199914 568275932 932066834 720365115 730344426 92494548 15714216 33987415 526219507 776708664 686624132 981374766 777536237 696559906 425665949 130230427 668672872 51088285 740538851 154791092 660183317 255206800 352631077 760805764 876748689 893802947 319009113 931453038 326336663 286484131 574026633 197604458 920501703 845044141 894953797 288217589 542997342 946361014 422377770 595672954 208277304 423417792 489690238 330449550 766159887 628784650 328943012 28446212 437976960 301552543 542937303 128205472 439846305 185828651 105501710 638359926 859936642 894291193 114590247 531983811 420279127 402531738 168610419 309770039 3371671 554823930 701251042 102606828 209561687 642764402 481735090 675642679 255173542 191538558 413756563 285626479 985704689 349838008 800329842 457890778 110677662 30256309 411607143 455809409 958385849 714437950 820514717 241731426 735451691 211336269 849090796 661182632 81163269 95652358 589487824 894367310 940491407 387129045 818621544 922690213 688145672 669642961 558912508 777834330 412040947 146760010 84492343 180141026 90762601 272112804 156491663 232470451 835677179 871237229 88614521 68228247 652352458 932149324 700705946 414693076 73011619 422038813 429490134 137825505 810236037 62173664 735917629 209458119 307778708 356218543 744792085 395324785 973006013 116204711 663997362 570501785 68664316 563732014 899945403 588642834 585206166 269142006 680059719 75373816 404433553 497957192 476240293 681119849 610116364 68319799 81629433 444980227 492384496 298558484 975134321 916875547 294149631 631421731 452301439 753508331 916043457 135862931 858359485 855844294 624293650 192836023 867452891 680009466 790159390 160748273 393158347 380796921 888915699 280845520 933278604 217576067 856749365 677287408 771220738 671727761 222406871 374891767 432087865 568865106 89348646 83236966 167678399 388488676 925057871 766844866 942136472 676978442 20503871 624906692 33208842 318138577 841116604 575625086 382044013 217084035 962320457 666380816 209579909 796992675 849144519 460127120 325906037 981513805 533964029 707195859 655630918 772779495 640683976 920008124 124210863 333874526 291609274 287193826 927271580 175868187 747307671 156543257 188735928 127215089 11067270 462497888 654821260 647548455 197727817 804711901 93498348 98953418 229612128 655740948 601890672 523747105 628257212 333614087 686200383 173326219 25037250 506848349 821331974 369382811 949141396 428263463 227202354 31803516 531402071 135527762 625917742 907737936 919048262 823049727 142171669 990325252 572847150 752561349 309916630 518021260 139826982 225332135 535123099 1548712 338989378 756379507 255436262 793797926 142709190 533075986 880292180 242793305 215623959 339048919 746089162 493712381 532418046 934970374 633449706 617620579 357703198 972221861 884827336 419324586 725359995 917421685 559609780 888727265 310316197 830900690 516925022 711948927 369178919 165011079 898757799 874770848 271454339 139554629 319111300 295567787 743538750 220935382 434796585 584735454 515773776 797917165 96897405 8390443 808337299 220155153 873820040 447838340 486429451 882193071 54803910 425505982 56143125 436237178 480622093 160640427 255914273 272118836 159963457 156919676 419473006 540827180 855876061 150571336 85083877 393871223 732625958 284178058 980547525 567519055 211038092 276720523 634437755 415546809 381488074 846250030 837212093 509560439 492983003 754864174 122592081 651023736 588636876 460789768 871779114 770794166 139680426 901633628 406657675 213942533 827462770 596640575 87115607 103855435 91825905 93027364 844809228 544061455 382788498 951877560 985100702 407308954 26445253 39044031 51039316 894340700 989450553 104131867 12203375 599588905 613202384 794131719 363671076 136477133 666960851 424716567 557285493 504528716 902596805 930743777 365861183 988451877 404695239 164052717 724339431 411650797 235816842 114723680 734842564 538054776 193612055 902424999 873362572 747240672 547407910 290970559 216317175 102631456 357851276 538533134 938046083 491576652 616194869 11822131 191863270 614351781 124313644 60601587 618683436 789696987 104518925 392837188 474860609 55714679 291201116 269697719 424315402 265628901 618602238 161586297 959804435 889567790 943641849 920994852 874755710 67004793 187052482 645153572 318596613 537018834 694345052 854723912 757360028 333490949 324859535 544142809 234033822 933841015 891943870 224194748 784882928 577068989 3072779 635198418 295303374 801378892 558320371 905717669 600747843 973434971 856598807 944532448 429594530 67382192 859924282 965680535 855577523 893127405 8995213 358660057 644461135 689869678 550973399 576169551 442748962 926976518 829125800 435496626 156557755 191227509 361842128 960641274 445963605 968888638 266434112 473303999 683060564 191082829 94111985 852424366 952024556 91284931 571242081 860275749 873132301 198047278 430339887 861368225 791736642 111251168 58074465 115387920 941521740 557674140 302482284 724497078 32278197 402162119 102703686 332267029 535167005 404011185 423472945 665865317 816938669 490905179 982516305 882619146 767691983 515248308 681693515 175551338 952838780 726935782 156637544 576576985 773425255 571992623 707549168 320118559 820042970 903533622 453827614 399432760 180974425 616197475 517797272 328000524 315471164 492844948 455585416 852895357 245883218 61559723 149441630 232967397 186949559 909449370 372951856 342773734 672640501 24787564 183538230 932508084 267269799 802522102 967095252 403573378 113869923 862121530 820258184 683591317 420485764 906854743 712432692 162886310 938410122 850203335 813765524 887422976 991406315 455545751 235668291 82897275 708177913 321157334 556837240 681111384 701773458 519570729 607572639 443671034 963153974 508670579 21680281 258488312 320115043 344689841 671867485 875858910 258360031 14824574 192917384 578138570 731087575 778071508 282460678 296328556 281813459 649217318 521893538 779251877 164715929 166815823 147135123 46776947 277128342 635508192 96502359 363967917 605561329 740953493 166716621 122330098 236811961 970868309 444664541 936078241 762789928 822223476 199481738 788055047 245664694 902702700 7483676 337595523 205948714 703444871 508836002 339201787 634039837 541294698 256506640 702506070 985430026 782522782 87308816 933752016 717273022 10935181 281229353 807627895 223124558 531599833 586874550 438648810 731419315 794502595 115373189 272236739 458213709 178613966 457578689 479880243 243093992 862519883 105557593 743591593 845780270 457963500 723014444 627986236 808283440 415324448 976963219 387222439 681913681 617168645 450262084 763483711 593244101 623911152 219084358 800830467 146678086 662436691 973240844 645195178 153658172 892539048 256310012 925704049 828326423 693219470 24385648 914374879 46687299 419253363 326484820 564053267 701962554 763935454 94970375 992251388 634035760 724470351 931533464 204751876 618356254 167209997 775902317 480898038 957240424 28412239 303718388 683439243 797769181 293637245 236327029 263931029 701672745 678512713 155957072 514675158 889743839 164078207 942750081 92808510 447938077 640219796 192882976 431866287 920567490 321194122 790174567 18022076 381333755 887853890 477097234 140590603 491264988 95947887 952834070 394455491 93481645 860698891 645169142 437872360 203675296 904484511 735286214 478853531 863760837 758008067 78388144 362664060 208897999 34897765 782363382 256960185 674582757 964882315 971268123 912578850 604475229 714940068 856418621 935335359 948077073 579340501 323258926 281955138 461639434 62640305 813101428 195901759 396667268 53848119 7826678 511878447 958105444 559672484 325039876 121485437 569649846 569174853 130959692 551913896 457873416 307828582 333472533 465785769 461158882 39094387 973523065 919106097 496068214 726004076 537998074 215909370 434263552 640833602 499258739 995213189 891775944 36166203 527028747 816575661 694106707 771277300 384462199 627840377 773807255 824968609 642964934 632215100 786588132 621000834 280870959 787479541 108691275 230261044 164401089 948198020 768198976 281846304 51966585 30491857 261409173 263767661 405610203 101175865 94496576 634356686 51705892 259125341 326001699 253750668 995569975 209973775 596822481 479035780 16998513 128425907 249750724 502859904 400034600 261204761 344688808 690586575 470489488 220250305 941809134 36284458 305320956 339434877 394057372 188342130 838556682 3239088 721054661 744863068 323768901 399644382 345631521 229505958 712088815 968479191 228646009 850306484 771518367 750549916 770907598 507637836 36653742 990335006 76104321 701806990 501740781 384445063 192649724 101126365 395576021 826219096 944205800 342298947 138437068 459872559 397497377 500727887 511843039 853738770 936035165 953540305 324514358 741802419 738328069 985050248 634608822 197464601 174724505 947787561 197358883 355686794 559160951 210925718 189789882 737456132 167108643 462897067 601194341 248079066 615434967 155635505 441796226 815196882 499399698 41539127 505587134 971872132 915981875 251243020 872003343 711692469 899250141 214366702 314443479 352229254 427292546 243485581 978127819 294250161 151868190 717780493 45913160 505748870 299885934 841513701 500444605 24317817 515208361 720512996 908179855 294952257 675742955 99473004 10178252 353246280 448154248 257059277 24304517 36408536 120575018 816730270 448787667 900081102 460329940 222337723 887445340 352038118 80082984 44784502 652995366 998598993 932351647 468858330 327537783 602614344 772980147 821214620 948045934 991752001 106981725 751316461 757505432 800082342 927430167 31716764 970210865 847502731 471129247 377864666 522239751 123360794 469380458 873474620 517193222 138310683 311590093 705446778 658389757 825833284 683479970 496850137 444475983 763252038 20432500 392914383 628328856 729438151 994296398 201476214 776704292 382747702 721503881 590473598 539215367 293212805 622353956 622364318 20775067 200877553 72281337 152166734 704507957 948312803 862393852 693426966 876135871 744728901 976335675 204306487 921199909 22955203 12457710 562954549 328537891 317713473 149422326 797365133 710818365 577137719 551366481 525476850 122579353 458310228 689125979 523226643 27407215 187844972 623782378 152244814 788262422 644997597 951371392 971819667 287216978 637078386 869965106 572005651 967251849 91180759 592225881 7894881 503835532 557653482 681641108 899977703 581689762 535168094 378765268 440628676 230682515 537161040 294210073 118854693 632638600 132409179 957095537 698618881 898185130 625435250 45875471 968092934 898258236 125909868 857964533 731536533 965920505 411180667 533977391 273114331 200380021 686707530 897140177 192947277 498568272 456806412 421119783 670584082 829928628 963726047 403314589 759809424 363739023 593076513 552396990 453884741 504349206 676157699 915365506 871841189 788475615 431501054 369490425 922847619 646228435 836709860 154698777 153088902 614732064 227340694 579412545 932581827 727219018 546718315 944758589 187442369 895862226 753401826 319855346 468367402 611121527 993035484 905469917 829127502 545123029 316990037 39913456 995401107 302846713 285725655 543123040 455455908 350670322 892870976 6551352 803393327 475524307 871729888 606369111 406330483 778409982 768405073 859429946 819835539 584266447 702931557 810223923 806720904 763043234 201836748 349515883 300076185 958428107 120737750 942858317 309699479 766139039 67944586 218626615 310412725 887014731 115138980 34849110 128465277 667986057 753670408 179576346 530689014 549184327 403509504 156708007 945984051 124308754 235353953 564151718 200017492 182650026 367047742 100206248 594593819 244566558 882379735 788962717 563808749 811485498 212077718 949163130 574270354 322011604 722937681 765518181 126076407 426450542 978490520 624812606 994624 655809080 949315131 88101297 916369132 236742828 799045864 55298482 764224374 495411145 844096245 42488813 959209210 420492593 193037214 560546362 686438506 406685052 569941503 860120805 479748017 695569507 974765922 568981414 149755324 577798929 814287763 211783703 790366420 785827134 49205175 907897147 878345300 976245117 436710406 97075729 576611757 416496084 129486856 119777752 23847669 390278575 546839960 128435322 15477682 256114446 110905913 608910126 597555067 822135925 112457447 249609388 175983824 557104075 975109802 903934625 358376143 652388745 967884857 706883626 184748351 41663043 715616053 233467433 860647458 87008529 118895653 206526515 610646950 208224166 894928498 34753754 313903757 650944239 351346257 445752927 987308644 71469885 612845375 598831849 263222444 826590842 963233131 85010801 243371808 525233312 503542353 797025957 84460125 623226106 631316056 565971692 913906902 611035560 866427284 873346360 811087067 199315778 215273304 291327057 451822671 510546608 363168724 175514305 801337061 668168277 82342978 438952299 245701 71129143 528911693 109023683 633472604 492330655 370781085 572446581 117658570 515086364 958232940 812529927 497298076 650132455 247840265 687558072 849114606 975988981 978323050 657389611 687715168 127203018 115838103 724087731 554330194 300764455 707028631 828817389 846839197 551761753 651937683 226078057 764716460 816100488 364529031 167573807 732755104 909489624 197425654 570128368 881492223 361115150 852004647 264465711 727474657 778823619 455165821 614787368 33216388 976014397 310420171 806057208 830679836 358388296 419899628 425904713 364034275 934841904 895923113 951154931 749686889 19111546 408583629 546007955 904911667 489131892 664107539 505230663 864693375 691499945 606171944 496424329 235978723 29042229 446162799 692095411 238764002 18424908 744721208 866650330 929256351 2982815 678620205 951779543 806538127 927422438 873859310 190435835 155951163 184123000 165417029 509644204 726788213 920197109 646157552 106822003 71201790 156168964 232257004 132043624 193392488 805191762 674310887 877818928 474200783 42492454 449065229 337056679 81832758 951539325 503640447 115453027 813002295 743337461 972974685 679560207 113474822 107465001 139225054 229569955 850792825 607160619 454167372 767241813 625331774 885099765 803714830 782744236 392901851 4792698 713296718 409438605 694776806 287642118 451432381 789526104 724189463 172831885 304832447 162480325 566453121 731783032 930087088 299954467 284193339 351527602 625371138 259493179 169003132 983529483 828460032 657350212 35738666 216324704 60965492 799582901 128002796 271400749 836761301 986648446 620035737 86630220 140378548 284721192 764903221 979529150 398353234 464226136 114300363 621277904 281963536 70365439 83622045 734057104 293199087 368456976 428623458 163290098 117503363 461177722 260406445 610038941 471691153 26910720 497045522 471885241 331404082 791503581 957358364 710400898 995430470 31922491 492735074 466250465 399722028 351821324 639214918 309545140 507469179 166623809 713741815 950899382 606187823 879137733 196198599 32864344 196089669 680672767 630553214 130584488 333158098 777517920 66440141 464912416 811707933 565891229 441024916 451090611 84099356 706760769 406187472 729821198 163093792 411174252 200068594 308503323 80486122 671549812 288876747 362493004 575856649 896943932 641700245 716810007 643936249 280347716 61607362 5699680 241664173 397179690 937999509 59974792 575535743 859257632 412919074 492682854 51440173 531293241 611551709 748921958 215614853 384686208 246383443 958732667 560562756 156705606 418147540 555638599 705638885 725820656 162879778 938241718 174646034 590584927 576187391 172883122 611999840 440345306 235217265 473842170 548387467 149118962 728144530 987192767 201066713 305470747 845868512 942086673 17117739 70504198 241964521 443874478 770336953 699970759 699750836 627455945 735283831 925973604 736348837 687768243 408446127 371802931 937205776 55562191 239949957 480712988 762060387 511646133 499650154 610829897 247520031 676061707 193234998 687239967 633443472 296630048 558726665 60727163 540083230 738612498 163141026 196231136 790002327 823118873 411594440 348303365 713802211 898107511 614285276 368673863 408873241 720863503 131125109 96006471 584861010 302153291 123362751 395218569 542327459 42559823 284978527 812994015 649092212 851388281 316061615 929773743 412260674 337295397 34105933 612500751 649794472 930411874 360975252 205681306 711385593 175991880 403790892 297018604 96937095 272448302 354956320 279083817 614533547 317144977 364838699 331702748 313195084 351816457 842883559 735848539 368483326 769982650 554299108 364532167 89380784 503770653 299603006 757635088 19039986 359134558 754361623 474375391 119882689 534012668 323448727 861834755 918775983 331203128 45431108 92153673 742492841 800460336 967779503 19318664 947191357 536736863 747628901 494852545 542649618 310002354 138452404 714392771 866774431 142855358 18787397 672543903 351642506 962485326 338379850 898369805 287578872 591333079 732799921 216493077 85348696 260038783 993401323 636505423 520237102 585435467 718025067 811905344 777434429 940437184 320832121 784152374 244884772 252305860 37389383 246388248 533042393 75895039 791882409 536869743 634119012 825845802 296409915 238413876 615125132 281276790 638307857 595813985 355200578 81167615 824757477 59250926 180161453 684754825 703985779 14580536 155587008 917515631 671416078 61324317 785672745 79259334 96732260 131063943 36003456 45967991 589162095 25852510 297861706 879106561 386562304 818171412 206947362 315718720 806683926 789183851 116707237 897979288 768019206 980289954 777221764 99455573 562453995 129858741 610954550 494926179 679444074 59589471 906164058 233758774 889157139 80100447 745144917 828216934 811275881 329472791 978047445 988115911 53076786 399622503 303722678 437371593 489701890 473423138 549748692 414579643 489967270 859494268 371372133 995566331 688628701 275328335 362853179 169805996 859519413 554960008 215843176 696025041 354165546 975650949 451059285 986304264 185464147 227164624 532902725 708305957 302500581 662079585 963398093 2085143 552521796 724250556 337788415 959694702 514284631 313141672 787429490 731288659 401818490 657879824 784353768 533414445 119317592 430533462 524968707 201935701 971132718 993308177 614994211 580914687 219909865 366184242 433555422 700368007 928061393 490178618 19776139 653361429 298665877 469527494 70863808 959204004 495292672 929649387 729329349 216431582 418239611 95895423 589851539 108943702 684156374 189503657 601835173 273722322 727030497 804339338 566735606 282559047 786401514 386280101 935407358 335581970 872731311 600482145 663259887 949801596 974269977 469547598 209598197 236688713 69036339 798014071 215415649 419034876 99394966 125748884 677966122 928064577 847718820 692351041 964070283 935081966 956908751 365453049 497982456 843577664 732438999 787597046 164681534 527730837 61802539 64464684 345729972 168735866 467750798 461147047 16379959 111521054 363123943 29534633 741991605 735288412 338274908 147686002 626392578 85163170 763972464 97595533 620956967 719650636 811074117 40094676 212342797 785025375 264616587 109628616 31796567 983895698 770382276 351915067 446709455 593543439 262642824 258993146 438021766 273372645 57656710 631224709 661802398 470965537 112545934 656387808 268249933 187354779 490939999 151757379 470765416 847194701 608000754 328485290 146422194 689528562 839927309 184384692 613218536 220478185 401191382 812401542 39140840 514298082 614872816 243978061 368529596 587559775 553402472 567483119 164106300 105275697 163254038 336258267 682118047 884161450 310721179 109482430 811622980 576220259 191327858 948919594 293589127 168491288 718803287 702853092 168970100 559063734 454185150 826124586 202157646 358309191 471561862 949364167 320701065 386965465 92971034 978732519 934049092 625853889 267659829 415411020 298986778 878595731 928494975 191516960 444698695 726601904 615661287 728571161 412729397 325282680 347517160 621743424 559478794 18004356 550464974 838504918 409631786 90691768 318295826 350851873 404842390 890211543 815530179 245146435 223277680 229789845 79208547 571663441 747628644 910946442 6348867 800985869 692867018 978446852 225633182 731644858 983451401 540248445 452080682 424239980 283821034 650768351 729412363 66810432 31704278 86062661 963657803 172608744 691310423 453687165 553042320 36551623 483305785 616474676 375484600 373933328 196655422 460929307 934226049 806033133 14751638 385805490 838005598 257279468 524044690 543190259 347989572 424043694 79080188 535334169 11379499 83954399 905853205 336369912 866623924 456359040 949809828 91237929 955897201 593884856 847795625 505355031 563587882 84839764 792554248 408130882 425005687 662722876 608516686 991088786 755655894 211249489 386047247 913693651 769050311 163113052 352939336 364944011 529434530 207222660 848199765 199382705 635091735 342678016 287312679 714272224 460458839 467581387 44605851 195936881 303834592 515567132 836728232 911677927 116875046 309459172 537385944 849131397 493528394 457118618 738188529 634648607 538961895 31488511 864638848 971548106 347858534 243385247 719914204 609672727 538646356 731174745 679208646 601682211 265221767 756201988 862464624 863676799 513417830 199851306 658693204 503067506 662662776 238972613 328574119 831290993 933859653 763862212 437403572 42270872 763307475 593101240 599275909 49271016 601847697 8350208 874132145 756861791 709527280 842358144 210346882 538614125 412245673 710848702 466468952 910396812 239912322 14121444 22142042 212147052 380465454 964256177 3162664 192163758 255778445 205174675 866983230 371304814 359928912 678108388 376670579 343729256 483013700 143309234 833521990 639652962 802272807 368157668 295542221 378812421 662771937 231727768 372900768 479804552 218622797 508492962 432001397 234208652 974929918 266412292 226750993 839347436 813742268 66899566 969495203 566818404 626474306 63327757 848233632 846515855 574929271 190035945 589008376 37845074 847538134 447784168 617919907 747645280 992694423 154452430 771989816 884065917 456899118 760887746 656020951 527104503 729540035 89310055 908685433 576262058 798785491 739570337 764869433 393635482 749752341 216547295 164893379 610772211 597013230 757603279 856113273 474448581 315618004 867872378 653820308 192136845 13314264 203399682 527130006 646365707 802832421 981987313 9919019 104854157 824825699 404969098 445906810 59728013 516922427 13757352 607185787 69079072 474791878 289237618 815666619 79872930 448765527 644923224 247199045 373530470 639721789 419827822 626161008 728009256 357210143 202685152 872877767 651067172 18967181 844914701 346033003 703798624 13427711 701823795 715043572 447900602 899866339 361549197 510319683 602521075 851126910 882202813 671467054 832590560 22330612 100142959 51539355 867658768 993113307 257321642 16689244 328209499 340187848 480832345 612265552 755185974 69131753 492597846 646782751 90122802 499129962 710764701 68451876 813402359 695374479 865134822 857284417 943271415 46945263 437407211 997568060 611972774 19242172 393345944 485871595 883420788 70175648 876254385 507042475 473963541 124560632 324596878 765686803 984478916 620753889 89735338 5188032 43330336 986463178 387581989 746128023 439460269 345382025 92805333 849318543 758106593 340639024 918091617 251196811 658495227 119578700 534877910 972003188 549085342 704219933 162371048 166938572 733505119 359785211 605257486 994957028 487570470 77794501 697010359 179108253 148832813 506823541 981972537 237958674 325846703 530341850 456288104 483351511 294043210 211101634 707245395 502224230 746145433 579221236 411019999 644021716 123947764 985760968 222881521 185367548 392762086 578993349 709496532 793573140 172193110 165049579 164190171 255136262 929867853 163261142 143222594 203736743 861560511 47265957 26414503 810794462 629841771 111528487 875613058 133581582 995074018 907265318 607670745 111281493 162116439 574348317 428292654 663752212 680171274 636922342 602548128 553286654 891000232 634800154 34545857 3093080 226103043 33967278 778061094 854426445 333481552 773393440 495389797 73101710 178441499 721867502 382209419 184885662 864615068 744846014 284389960 450903742 835364287 377763029 124976796 872593950 219760261 32352148 700156815 161648302 280804595 439365020 9300145 163752716 402778300 486391182 60325799 759830300 636842540 312178294 372071453 385442091 64985563 777517121 327308629 777826047 64215327 475951447 426298018 537856055 529212693 838641867 789382601 889226612 678168460 137580809 152655063 300510567 488971081 827780027 761799974 473103217 317958854 928146438 839640486 274757605 607100263 841228276 120344331 516429374 137949109 939397769 939906851 904722201 751538369 966299072 657304383 303231212 13329889 84948874 840667729 96988135 787969528 244206925 45782776 44430474 895789847 960789557 109899618 625940380 623726567 15080778 993443122 699707160 576462116 105999297 717088470 326011006 734022045 508859923 937192243 208383830 127367120 154957717 941472399 273112741 123296196 612128458 272833616 991030312 685748350 643674830 965781806 959904175 578529396 214781100 849324425 757127951 637190674 139565234 824962826 12513880 446162231 328187637 226821039 568206818 422067667 93151516 359059244 369070046 660886556 519720484 382099069 965936105 681997084 580770263 331766261 303614980 520372791 248777428 852359037 749193272 551364332 644103060 695945963 928648742 639146929 714253037 609153008 72921742 510052204 739093140 113648528 848581808 714773864 833652887 499012338 422052766 909190256 963144775 419921109 176177240 97149074 783677871 568939645 669761722 608983644 673378823 736616007 831661159 552601057 94958899 760572800 890751113 471509047 306945125 870754196 626294749 296166702 833573093 497030605 258130780 788676864 186956179 265688907 572744125 798665962 516284536 191826433 173313229 626366126 276326257 523532488 875740464 383669873 387199016 559746363 187803499 867839021 411545208 963204391 659007573 302247903 148919227 983785734 926097150 606147718 982404599 388180346 38439611 347125036 909239627 221892669 23000603 99309577 145771683 69580294 426523020 984850961 435298969 743722770 956119013 10022603 832141309 349706293 807855065 506762436 472926878 922809941 619115494 685308567 754282650 884194518 644236561 69871515 886796506 499102170 325983597 754579480 732363231 859599496 972413724 336276959 529077282 152264014 254204932 279181280 518057519 821537720 283509971 841881207 599607706 510544796 791106420 25174896 842098 411623928 726496969 164577038 198411464 846708051 68414521 639208047 610638937 76219051 917982515 336322109 851224047 580115138 686277005 958939306 214636011 960603616 43796432 787033285 655587350 464146798 566903528 965928656 371593955 961835436 296948866 116935408 451351217 233841380 755676176 941341175 240583427 161531764 429282853 901550330 936438256 470923896 569886873 151894532 352139576 526302791 207429278 40698111 799651910 294893959 765815091 87775767 686324801 520140832 747611222 539528250 695612630 113650228 180158090 970541204 284140092 663762009 267299657 841447757 974302468 1394570 610997709 48126856 919414935 762424979 819637161 828171914 31286525 636514951 829506431 965620738 286761227 721922370 36010139 933728074 692567935 71740877 13782145 935629912 769301484 685824176 76709520 477885582 227131537 91679690 633129083 251832103 876867514 359127645 539955271 941783024 376473888 650922531 326535761 530214416 722036871 606914755 294230709 342325013 121308481 783673377 303888834 816720055 638194592 468324859 517891038 87099506 64677503 733842049 34404050 703285814 18753283 326804473 318831884 909003742 662277296 451244625 248513568 574088393 301374679 280461303 962450207 726903862 409534236 807421650 958946934 392196878 183872347 427577421 218147496 288169919 760268008 845899949 316747592 119568961 971222680 949161390 890671795 71194773 62111442 566828086 491334324 180356380 965642706 435180971 207278108 61845048 703769469 750588213 502329621 681062177 675643289 186157857 46720035 483576930 103515839 27996538 646944206 82144860 890871631 45177222 243519215 687573601 565598456 15951910 766646612 198800714 536853740 921433746 631973985 231502650 829305229 571762122 151521420 375821534 172812533 622589178 105392129 947576246 967040147 463246334 507239494 579268240 115906217 538498712 630125812 583340823 1151994 699860972 106461673 908534976 384397423 828699962 189398494 332584508 861408528 522694740 372154126 755844757 653821774 162894995 868449327 979478797 37639891 745059171 48520606 87643939 35119182 221922976 494198458 95829918 502431258 817767180 695134919 829942425 208756157 334123758 435070728 592843440 175472593 632732786 844752267 58419044 931060420 700899098 419666882 820516181 403465566 457804242 744968173 206592046 531817799 206960680 921006542 223988755 749484475 200896496 343821894 289609253 897167495 430423958 539941288 176880639 716222979 698652794 251686399 258131080 332640206 929370317 822140661 861251707 482891106 339981769 156106190 219182630 449557335 182138738 577641238 532094517 201555402 635461567 205248772 775820213 505392811 586220390 676672200 355047325 985236836 515089540 652500118 713529274 673993722 772602084 168712543 649440977 751328423 390503423 148803494 404037787 112112553 145823316 996116120 718226946 554192723 340098360 490514089 433024646 908782871 338765370 682098839 913228804 511777219 590089562 197793413 468723048 617880738 386245392 653513976 672051132 446022701 496100426 421665843 49387195 150599798 503475693 517117712 44130920 993310884 246336737 736609506 659505456 341306546 260617797 49307225 909756239 311109494 111077246 229535575 316299328 693541046 80158079 754678906 264244275 719711241 103381681 433527375 926445978 929588965 638634063 234219349 273585810 873534939 265744926 335512437 182532752 158078054 566553445 815539452 544827402 273073636 634712624 831577433 665568 854821736 475084989 687816480 799956124 42356652 115948971 340399692 425305966 912510043 576823844 538601118 469570953 212538946 445010238 308868126 181421725 989802751 513248296 810396211 501546852 640884624 830094866 994633846 930289453 662948615 138643032 360728003 493542129 800728738 230590605 896477172 767482952 465090363 860537600 753725129 641344834 657868990 384487404 852378701 580309031 966329466 720947035 847061383 507361359 576935558 509884602 437334301 97211428 581891192 747541634 360577437 706661254 13769405 445693027 948827745 208129368 618068222 560410342 606162810 753988595 317084244 211981532 576456612 716991977 316581269 319015822 349726867 953690008 773017112 975356043 114194595 239678660 529845328 357313459 98530283 56173701 247768902 858190809 659380230 63541487 929734418 291369832 802570397 142433944 655807892 118879078 818067455 305459362 290563505 513601974 486423868 765070754 408433578 738063413 303797928 134320103 660948429 353662335 443585601 295457343 817810956 935247983 674355238 552224952 729683876 685934703 898660935 367899144 970576538 745867803 772639290 244407402 189750842 60441641 626501658 972341590 217248811 870662905 285989712 902799725 643736550 485680484 196722247 513555261 220626149 293278840 489991780 935345362 903238889 514346341 766637682 729233847 19525229 951306416 781264490 938236014 478571829 639729181 188960454 696690885 73509970 438773768 152347671 511820083 510792539 169602867 624362400 432919522 708871694 617000428 204569575 583309954 505335830 764245176 503979938 547816312 696670003 895447134 158157299 450363084 205065185 99129212 890122332 706158011 684810898 125225967 838056973 752439370 379792806 602907867 622631348 378423688 461937491 162762774 372868919 411142980 943297568 118407442 711480664 488203961 307456262 967575277 869193708 528759661 223294663 481331242 877017932 436507521 99582855 306023639 839862156 317003870 609685292 30902606 356018380 975024231 382777856 266594810 631177692 578572915 704366714 682826908 906877664 682930631 557914151 855952585 471524251 922825135 159112477 662974139 210173897 589748696 385067877 375151087 550384381 695074019 235780647 706763964 957375878 831663559 504919539 564671931 989489133 790657027 105215533 954573137 843169071 973758564 123583192 318571603 320242590 622611921 514349850 811134288 658770956 824054425 361232833 98722778 482680951 660887257 424739438 307693317 396163397 934297509 499581092 373442915 330912135 830339876 360592936 827942517 488372627 646746519 651494633 114656476 75150323 764283716 446812842 17871633 522535870 973091056 105285573 37347146 133999262 729189721 351641126 364702620 620985669 63313393 636461739 418919210 258929987 521853065 542749714 787676025 598700310 927875891 590539536 412529782 315068869 782559287 400720293 367666842 919908157 19801552 420096330 768022949 597357168 851150812 39698208 785126515 293073355 439209395 541055199 350224650 738958073 461046722 498500339 959231795 858347731 105181182 552445117 216551414 112750860 749862114 431970327 676523350 910287419 490814275 304139067 838811489 689418600 946303173 696481854 356774154 259273717 198880942 899807162 517489664 378845840 944954999 629169476 974552517 292991803 884496846 807403196 476975120 863443478 750448427 60628471 826300809 79883618 135983131 285250596 547058897 296925803 50224489 728122468 780719310 177409125 120062785 355415666 915770808 372741795 283233102 83755976 193708668 473993596 374832379 535157753 464712622 637148210 671022105 872606993 437459637 542156067 388553319 942430170 687455591 500160669 398006825 81751314 71936186 543881362 487382519 934468943 363673338 691745156 574505675 238058735 475968057 81981396 70211865 935719427 381649673 675871414 475557382 975551558 437075104 341579973 380231319 205877468 254568188 279070187 495433351 330707254 485330704 703444882 5181435 407392905 530435347 229187067 626303820 91336452 772412426 882110156 83509686 766473616 778712707 616638978 869773452 286482639 886861459 903198246 588871067 152057826 267660092 555226709 213168800 152400611 860491339 378648410 39422564 974750226 550355949 141086587 483616062 241975606 433085112 372677236 432293044 127955423 611502267 692107469 534439326 255545158 911877329 466326621 246138012 825330476 470694077 17843159 671156932 404415518 124432197 734228750 246965861 27696427 383657562 417649322 442217244 39389591 660950237 682389723 31049020 382818479 800579992 645132545 510701113 722607311 267354749 704876819 494085619 140157707 924472219 515614608 660894877 126024369 314347798 24844579 733042196 88776461 44601387 200900781 298947654 664719532 779066229 857489004 309575714 910156265 179600161 661827393 810415538 370991308 669995809 528660636 167904918 357316568 860714521 14717232 600447363 547769911 594400439 548153385 772963814 1245961 34692764 663813951 299637500 177522875 809001648 235866131 306398900 265844772 825789765 935760007 374227297 687479297 745504085 396029021 947641383 798863185 732545184 915460612 906804260 223602328 753337515 794755228 861645222 317602867 971328858 938064225 686978416 207883931 603647474 741041787 112519285 235221994 411812482 449616226 681968310 25172276 658480933 60886915 667643854 891912938 60343936 167332312 988257024 430605246 767420716 310023529 911468611 307237916 489089800 500777506 789245475 363611999 315841612 749884338 166308060 156953662 159044099 937500597 865060738 60117178 995287986 806033535 48115128 181764121 810129184 11839178 903347858 512512544 514570956 863442664 837611712 153326648 848177539 379359787 76096750 481883188 202649022 91854286 411955586 76684750 45991824 274877781 410146860 152046754 772355645 125983870 440476562 47569674 679533316 237718693 534533263 683744611 759698438 449920443 88746940 693964828 771382705 223304534 783645780 585831271 877818525 651388118 316812987 984817222 491602205 57369991 690158880 386882899 713464001 800337037 574708359 602244268 857975358 43791065 585171977 663731841 362094489 406824386 78003233 534658522 973825295 985248860 338352110 844485557 684161403 347686587 149144825 328397441 498407672 93347089 49765625 708221459 699993959 71721428 420120123 19250924 141137311 629040476 22287110 333302307 705536311 188798736 497494003 531363041 803849117 267905734 223292380 572480277 885617321 794788938 257068628 412492184 691086676 897988833 924799916 57124087 653687283 700323741 479624372 40766489 833872767 881112533 206253186 981502505 913273442 891797697 762073901 989795622 917957254 393017357 535799960 728569231 873872591 259370394 930401820 487155415 372625752 587241109 33368346 417076583 901181522 367528129 114171664 856418355 232131007 331040581 985667055 489280285 899687072 470548150 297015774 796765619 892334772 835621286 116939567 99447781 201248908 650567075 474454465 948559654 464997378 161132364 156029897 476514023 730661062 274621143 22891559 734714032 776362135 486004289 950835620 208118940 493326266 739864046 465023782 653550770 916277457 804042709 701227119 693745435 122471860 94614756 76228549 888187284 920343866 125267400 127800250 441016931 580705206 287590585 577050213 44410530 489222354 635819277 344826793 255743316 603242459 588207053 438840624 384973394 944813367 421155749 655600967 841155907 480143461 820222807 822875469 883892603 408912196 842840619 185050701 905032417 334741572 218165988 664973229 488667443 468214500 727157191 813240585 576934408 501515049 967665869 231890917 463544564 707432334 958390399 833513520 905835165 351645997 509682676 767602130 884663641 613779197 343982470 803912947 170218258 451079437 893990653 27747751 816172397 511681888 940739275 674096521 49039344 191233629 684597697 88924221 636015535 669459374 490437045 478010780 449071806 884572187 178169523 914233412 927181509 354955180 665541585 604759966 943352308 12436834 461511367 909787489 928042171 495912127 171820704 665497479 951742400 409262219 105969932 398781047 811573180 20901324 972605530 598374443 973924834 994818653 783348883 630479754 362777035 841505748 16746195 74077416 618114793 597396594 26064054 956211532 288708031 823340873 954379584 287674789 331677839 833338934 723495549 902952681 145097113 733695334 29327901 431006253 241208746 216787087 754150650 886298776 269496349 241554715 559699592 687214189 313385732 600676121 57249404 43991769 636353385 56213566 357309873 387934654 961021991 287033483 637246523 240007062 524629156 551858247 916682353 612634875 550123008 976835047 655809609 824401698 401611683 257630497 647277348 81334219 890519273 985336342 700078782 952634334 259588801 609463112 488878508 372647523 454540122 159250100 687672377 624482167 643580933 732990886 132977888 451178646 290701316 810218652 35230159 574386200 608294370 173383976 185871931 113442536 230087542 906274533 455340729 807655959 963280462 409057867 944632952 163482654 70108293 231847922 637963649 259778361 638031771 21762016 1959160 719154610 556997085 347705433 471165109 570530718 542885327 48566347 869493453 669397884 349045320 854686068 847192199 45458751 178265679 324986992 113736267 765067012 178700495 638998481 434225368 135105123 597376687 711082257 552671206 212525773 787771286 599123893 898145814 655135003 330483209 731188443 270736237 440659474 131726251 426160735 473776465 958436706 827171813 456371304 935604664 215901783 85845317 955981718 25035650 374413224 102234031 644417428 252458538 287427980 977879849 270110856 587531450 502082457 118793611 881316556 665223228 567404327 783779151 909404989 931560314 680188821 517460005 718277281 483226889 19188303 323933074 80203787 124581234 878342235 867166647 733159309 194910029 562067368 999961921 286179810 662570016 188212466 273264734 368372337 35812272 962273233 650963108 619919951 527389294 116093175 802649650 17399988 330125376 478371986 841836674 779578042 482722272 175661573 990560095 783767463 712772555 725120380 26060990 794554142 562581106 521912332 474915329 430064383 698847477 533897414 914967468 199340645 344475572 484466304 493080240 799678273 35016368 793280823 948192055 341519444 30339642 823439340 919009202 130397399 559838170 708633070 685043369 251414483 235441124 836982987 310387017 465853359 959653496 462245361 729207306 518999811 948759432 480362091 287670460 184209242 629602773 496915625 669181748 602234623 127162797 196209213 241786644 391242456 552197822 711963349 750875233 930202403 370432537 617473599 850558947 542987453 257164644 786172034 828845634 833050572 488275367 550325951 505888265 149337457 49695221 73992357 35370860 728829077 204708245 300477532 893841664 138008106 789069164 597303295 243543756 964810400 135518610 254496287 679585471 531744834 335623956 60371164 24112703 536494581 228969317 540518797 317831611 227893679 636735945 824116588 364768650 672049187 739568232 117155097 947751561 567659989 452758626 432628265 946139163 96923829 915428049 218818377 29539357 823712672 931246206 422924802 126817083 376814701 433245142 454883754 652336362 970648453 600480409 779522630 32125173 34948976 465781465 634238344 763581210 725736003 923983021 856528670 854099630 698587037 964593025 923531563 92399951 700068925 428159612 798065499 15055047 446944764 936554644 936995266 707454919 999790409 350547944 284645949 248543794 771961377 233582818 952234537 913132658 701277425 995438996 694308618 695203625 521258436 716369680 820736229 670867078 857136753 344901885 152056866 472648464 232234356 521777256 875180464 602558989 84597780 198886542 246012057 445207794 802105319 174976387 145233682 280253956 621640693 682412818 518547304 709672845 246992251 726102889 407756669 576314 292591195 140250445 232246489 697707291 342124012 327537128 630012352 739335744 368159921 505569388 779247997 63482537 141192881 297315160 141138969 547412968 982669699 855533447 535444473 235677850 729996122 290451834 417179875 473309564 223747407 921773078 700670974 682435369 733103154 92954937 784698931 588071149 554187919 102749153 156091012 916371039 994632709 639923623 58504232 817548237 751081310 886106882 803251841 328029654 380027685 426552049 48739188 490648490 718458837 767684783 512583961 361406791 402951432 69698016 608026850 399951949 322365414 486201792 881623598 511210105 892161426 838594126 153171824 540498202 255268945 868152809 254982709 72253488 327986641 102795113 805448244 257611111 820298442 774000354 444986752 261788712 85892424 227314412 967701335 425547207 231797386 192553846 82694627 613614898 894833387 219391398 492383961 872908480 148011764 834307583 37298344 468595078 361565497 966753743 891025194 838084913 955637027 605105478 876716323 735776801 624829171 542327792 457128148 791319766 16349958 950185939 625692706 764823804 462850744 604351068 286727264 493407601 645541830 790095452 573513005 628174729 552379014 12270491 921555545 46387850 837204181 362225877 909520598 623162190 888136072 475932232 11083776 265051075 258344614 157056343 817699998 244583840 407305974 522660184 666950103 862188806 159384482 395534579 242648889 797660167 996404830 994753156 271679885 1837469 546636242 798020702 909917421 835211577 290385243 805692245 312443282 76524709 678518227 795939593 972306530 422633496 71422484 953495726 871793632 386498065 453746215 366583409 290685065 325577485 629235684 492748586 462217285 383882969 362371449 505775186 728700512 703626460 340780081 739675385 71074037 309164661 18497881 871479695 419838017 66021231 453675826 784692521 121036097 542586189 143761607 362388701 563058510 628873152 279354165 689803138 688517233 172306846 532320528 621776779 931356692 769592440 21639027 628545449 925392758 952642226 215544931 73660031 202770003 149478561 635193679 266753964 290817934 45599663 647735810 774136003 100239402 63144996 949438330 156100640 731831179 320801724 439775193 894659010 861376309 330204099 420709745 609714262 97022107 741203407 454241770 213866349 726409231 455221884 175821925 728405953 967547207 602594058 90981853 518282888 474576636 863767049 679654095 703214606 785505563 813564280 921132722 196937052 786634837 950044705 680526441 680994618 146447955 16794640 685841914 66246877 552518548 667218131 402865880 292593856 329438857 167873711 641816721 821215559 855042323 755716140 897424738 264928966 736164790 603093225 104642755 686168628 117256955 479230430 918675918 307923578 616261251 828764145 812502347 618962145 371610540 310336262 749191334 405102688 408789017 472577422 724821884 45508060 902368505 457931132 685507223 261941508 156598511 306873227 783684601 886985052 632144256 147536108 753322278 854714426 699170750 180529125 682796057 332127464 710222913 20346100 578347800 360401539 778840172 732651857 371400045 16653593 84068635 610897902 134166014 900988622 811296681 915025414 826935107 681774366 186101139 120347278 908674530 145983273 397350161 406206166 126722356 446519878 72160439 654196904 858752889 440944692 585989250 808935869 810419900 741228127 172521198 311267982 668558549 294652295 674349577 6749403 158746860 933172867 409582253 315451046 851439363 414023901 562857783 235087698 931901633 471761164 106764785 217512464 953878908 23952229 411902778 766062488 718811224 817950208 884575134 452999617 630235317 540824619 522118658 453367910 986094493 657818885 983398029 391005555 16313854 733201498 647214791 508948775 946285590 840602101 57652976 623877802 280714605 627700432 230069328 845833973 580209576 83037520 945741821 137335802 618263367 324839376 884868301 894439569 776527792 934841800 429478906 425560911 858310131 202902199 729354538 613952404 154598632 542649124 109620134 992736212 275995582 212907393 640972325 58404601 291494588 688659935 740231211 62588465 133807722 736680095 671862453 902375847 685680992 498679845 693482784 388514952 113307220 291174902 30345534 368412638 768067748 448315711 787236037 406698805 543445307 86216128 686673329 603332765 916015729 789741634 309840793 1286854 493189440 7957579 873357440 329718133 814386051 386442548 555710425 781293110 410689817 100478191 940275073 478353102 980604342 219358002 228003963 876782491 311127709 701710159 706976818 96724558 151853079 511068253 301944160 754682529 54790309 869250060 875154424 251308737 6154370 251039596 758878205 338376669 794167773 500656263 872059139 690505166 918277015 83994859 612032708 64219422 629028157 242050511 943363623 231347299 955374056 572779323 862955437 554864423 12969378 479694010 108027075 553612624 221412947 37041500 709982613 684670140 759713380 947731361 407507520 105572520 173153067 951644440 229692407 764309506 768115673 957276501 277427459 976374756 177109437 236306402 586230897 229482790 463738929 144779486 551612202 651826761 19776731 891446525 205004544 96110646 814992292 480387033 471237734 38351518 378419496 900936585 88397042 320204062 919223721 274165030 80795928 31129934 731599929 759526861 463134090 359876155 401444190 559569715 698526842 7722375 596939663 55202349 620612751 429927667 191986036 433302325 3891442 144739187 153711802 265135532 841157633 734907785 673232552 783125946 219511925 995941100 604239393 522963292 683645228 485440821 432820380 550380378 971209682 988079256 715220912 889321551 490456159 517648998 446661010 833593669 534425581 453040838 805133869 398569992 302869283 454796580 200509389 612834722 928502713 715047601 426972570 547822294 617767675 59723876 405570904 745653284 13120451 512951423 979917233 585029164 522620229 510136540 561995032 813304947 890582456 893552086 762242205 370347041 50382297 691502781 93364205 95505829 525616607 463342859 201070414 727620140 54957467 345103439 690460025 50617745 492413377 210974586 429735402 376266019 21353592 693649385 289634262 931926324 235227020 673117886 693043449 760544253 899508201 235386561 712002311 542131966 634569944 694834386 235904302 177897708 714251719 564468007 762710183 780153072 958618924 971186800 305836698 146012866 682108725 441031439 321551077 541359447 93604930 900951294 842721095 726511591 641144925 995322986 762247834 406530120 921144509 29434027 683545142 162483642 181177735 510064744 48964979 213491452 158398317 148211679 294296801 218068216 222654964 158796576 86982466 862090527 282822360 78787243 443369075 307786794 717757559 607977235 178173877 392750185 294187715 72101309 669635767 385266399 497183727 126200192 897071107 494208288 455271688 548240323 462979571 408243228 595331513 399611158 45680404 600471484 723507961 939940257 90907336 112895611 950183874 361867836 41021214 375438295 493189514 881731529 889796087 852039417 968800098 745418522 789161498 289950434 372856318 140297748 630733226 970594713 4233098 188594994 407989036 46268483 675903167 559514977 138260721 588211159 259528732 597141708 200384175 877096518 19171332 519022110 875708841 48076167 720147845 436270684 926164043 823342832 936915035 760285169 682106439 591736331 241104087 316781304 257394463 900026130 298182528 56168929 766631073 723689512 390677082 356214661 576070613 54425961 879919283 917895041 150415591 514247335 885393544 655012260 874695779 683403871 237657680 722846304 107013138 886683985 589940328 3394712 82404225 454726307 691075814 161484179 805992379 964897265 566370016 984200675 139288710 635722078 536845309 313097185 167922710 11638563 324748198 343653342 629261344 546450636 262415045 298096389 382360764 883796734 622128854 543692417 280067068 16813813 146954181 157932445 908519932 803645035 187788954 2871478 137946854 950533581 468853623 566307575 228950370 255918145 338230946 481558461 587352947 896121365 394253665 57514010 98374378 85757085 692033860 304497615 501748507 321075308 760543787 791826628 570337527 147128833 973822811 938510571 823164572 797741503 862648723 605179049 514858629 882206255 412399865 164833903 340367823 448032548 699607437 50883137 879862562 696422898 109207232 23698339 256265567 21843844 765662536 312483637 378772087 643167009 193845929 74301183 453694970 199803143 371817494 607151147 767500205 417668837 323488657 6482411 190039672 327755974 517805842 403552051 861800559 364976447 2696569 832625772 227410064 319793487 850785054 198806030 48063281 804901324 223172273 783761857 111413516 373728344 351185017 308333220 583980369 783422901 940766269 658351297 781443372 587363832 797592945 715960860 239561069 64091023 482092220 989191534 117333094 107635965 165148002 230539272 675697724 179842192 7593011 945619194 979861528 981316373 608114402 292394515 970554481 872550197 719224364 755917062 304762899 456670498 139450405 713532434 642062518 82315303 127857546 333056476 171794427 678501354 863868190 647189261 512368281 3200721 520874076 914746788 142671841 239519499 944396643 99760984 188212178 661894965 38508490 175434372 707950664 331411760 531716205 868542317 382194366 855703860 705054899 25975729 575376114 842100899 571844172 594011369 618153928 152417813 690653253 233032159 16113179 469608403 216788826 152277533 239359158 245178744 167782242 14734732 528578107 420439408 663809757 562932090 405991082 867558203 132881122 137342593 692831734 220292658 184856115 722952312 665130950 299840659 53926625 124988405 116091294 174986071 379296548 21402919 691425298 231802544 729632750 668118222 853927720 23227342 976349225 734638911 564707740 140033385 526667694 735451003 767971431 814826084 49824072 311049505 808275401 359589519 193300244 602079446 671300571 143600149 970813703 96801360 583373173 694678513 21022929 556201481 56782367 249736692 337010744 136711045 309870536 602173314 694930208 99328071 195088277 739383679 453520590 118790624 265428808 972472652 763986834 763583006 908239039 697293961 27515659 450300270 377935831 919024668 698615091 451860855 731335327 996984753 812594753 398014539 678033937 426355371 222493441 719279105 282416565 136699895 455978740 776255962 112668323 628956350 64454920 317370984 664541359 511955581 519162005 653008598 881258495 389652753 839140512 831462566 707987475 308650850 242894476 846392774 245502604 558786768 501367018 881087142 202738818 503380057 227248864 678479552 687124140 621349360 928704371 67542875 204398595 373662340 221142996 648592614 757411646 229684091 790807903 295468340 952808531 38960447 863818873 76516661 155338906 700365415 941658872 150974230 25631267 38430570 243118094 867263824 794572409 211833316 514661750 902393693 611171495 371643454 541071326 905857540 260945738 995858105 499999476 818329373 184328753 119214752 459203768 154730588 408022676 157825308 468391725 29329045 794233764 578598678 759249532 857815330 757066356 503930700 736661316 627558215 741196556 245607464 708373338 442958392 957202829 216333631 965163515 510142735 135107681 563825757 776851637 989506566 737044745 397205282 143577020 780755118 200828870 286446305 600198301 59885837 291782087 648974461 611747513 695264621 138229752 677043528 533494963 78291300 457065516 686838029 257224407 951156307 732295462 859789681 358209096 749217127 657250222 398596483 764255049 297923253 524476771 93908698 95345146 388627854 486048834 800425179 890206190 22999479 244670356 792351170 186608273 761747297 586276343 173068042 727864572 542207281 938095591 360543844 605159538 611816370 187845277 51530656 495964836 927486477 602659856 286868177 140946291 952840439 649822922 450755957 75480375 91225805 886821555 253150897 557566486 142605999 419445427 587978496 933506023 710225996 190717259 894175660 658041420 689644251 722319035 184059894 754285003 336276130 845219490 707527841 761527483 792006133 415479327 212961919 526626676 184334566 674880072 419678866 265385813 818224330 383454987 559074007 912913440 124249570 654632086 223372363 935309901 915021003 924198509 619803423 441636104 427489731 645811646 770302776 191854982 432485126 769341223 369690460 612779607 52684884 758469713 812016682 760538625 194449716 688790784 620604276 941671064 992494965 497999096 934200408 451331686 162447669 15818756 881976729 348587308 619579872 691628742 793104378 723098879 183331832 389764561 908585485 242208468 112733532 197823516 940284063 833209620 984078180 123199174 621862267 659967526 544523102 352644541 463906524 490826631 801092014 219436334 535791177 897237460 266589872 537520321 340200027 887853016 830153241 552480619 383954194 752974792 915969698 388473589 189936849 874241867 929876223 19247090 981996710 482086907 671993211 83553565 205701718 605251974 267500774 437867735 645724525 107310495 257273007 15851767 256524812 156421439 357254226 473081228 643013078 269456498 506239474 855987788 890039817 780270672 637268782 34814651 673248595 909851491 962234933 765818912 225337620 459936913 703046722 275216363 22686051 748554342 586252273 431657509 119178066 416592262 505961182 681043867 442262562 379434865 63330021 510908502 18988111 192849521 180261006 119701861 290531241 927777545 497164314 141526697 99039624 466497224 489661449 151031880 658047129 202580871 785521315 135325026 442111454 413321727 249915345 74544033 957797186 834869547 388121053 201246265 500008973 52772194 120064785 56129149 386993757 450165603 106960541 593374722 275471890 248369295 75096201 26609232 209786350 28996607 246530410 924757677 207658829 666763002 632487032 545215923 664215277 609447717 581274893 706064061 496880450 661354958 795735575 173618834 831755160 118653735 44452009 739381613 520588052 913278361 865399825 425068853 558591754 959315686 506943151 574225339 817972251 882956982 256261999 915943990 276937582 452822398 736751109 379970425 80347524 925538964 123400642 410836654 443903270 33630705 43430063 301290856 597230730 176521847 445877058 159380933 552244057 951152876 656067151 618157904 271687702 546196489 17520772 651413018 923456588 91808806 519090358 247268379 155862595 551769359 537991359 787611068 757637919 159229947 224404691 464192850 307184968 706874179 583459491 714067711 354878827 733006146 154018715 162767417 120749459 398198719 769492392 783059934 678239090 422487665 280846248 440369139 101169845 404540772 274276013 563099551 494044249 913277778 937671286 514493466 318850022 270594416 256219026 628287148 315240270 530238937 253948556 586070658 88459739 995951433 944521121 814031281 879518986 509983558 278371590 278835934 404391051 249568604 132731656 130291260 26422992 156917043 957941703 996111922 253544962 535789280 930047329 206766129 970850638 134881223 565379994 733072534 241103461 739836647 557674186 741918095 916298298 127299415 4781179 535690763 152848351 750253515 631384671 21669626 625284040 470984957 922334919 895313268 422033624 889945629 657577503 93892206 600665610 30121505 185970552 582755443 64510987 965000883 917265466 561769551 284387449 552087052 778657997 856230376 466566977 798461232 297440089 941103137 572148924 937124996 331574126 191503284 251939030 131870081 558152914 559588462 806867693 188733130 899463397 453753434 619661738 194804658 252235290 403836940 900967473 3671604 468352693 152894764 723243220 12115074 53553740 621669607 907145243 245734953 348726734 405132736 650334552 270573267 884336243 571215976 973358773 722947684 812953882 147662336 85413281 923953709 498911152 789647154 143616730 746898079 681646263 53730995 234931210 181546945 515160587 392862648 284293891 762297770 549623839 653642880 721341110 352729998 416183844 410822370 255843545 991822111 325611557 972627899 110948923 985079627 246186906 296227285 132838684 333680019 720421795 70015844 998392017 637937689 448728857 818035801 952138969 11996212 499272340 136529726 947516935 236145874 687870604 118664902 266917020 859308698 150085222 196095276 634983966 141646332 386426185 671163845 677918918 188200153 745017410 361694802 927237619 927104632 984089989 319581689 60926174 661140740 198535941 32237677 180228774 892291309 235522762 978727155 733298655 265882227 270858599 97618083 81186458 886328298 153835540 171041501 576965162 724603134 322099174 798974159 384978025 415644720 765762106 935719091 457129536 449573098 93455769 566254642 805415324 851086783 21864658 687608594 773627430 539697047 664555861 808522807 535718397 916031250 738098401 891919291 980034269 960793683 351711482 99077574 54205710 952724030 165615193 482001985 42642875 482224792 395030317 530760047 690797404 897387541 899127874 407842321 674609808 995209353 817306580 848726675 314630031 817789057 632554257 296858678 171956002 378508131 219313068 684562708 789891077 579717437 802651514 991705978 574335567 100660831 911239049 585690818 266207614 726392811 860920977 199814699 701236118 112522742 931839785 627833092 512782389 589286868 506633248 439968493 209265070 478802894 50568603 642440378 484425748 364675404 340448696 726392812 436642302 888956409 550196729 302689836 309402969 478687182 53465474 238404075 59143197 170722451 910765291 138254392 958420340 868444400 918878231 437446850 982377796 557057720 34139922 488539918 259281789 837663204 673848816 839776009 221351350 98609335 478528755 825744453 509271801 535962295 571824211 734466955 613142889 177046815 443671393 870427227 214587976 971398534 341427729 294891690 867398197 523762802 868647465 565224317 218205754 926544041 42230427 341696673 969701016 970841684 436809364 705895021 133543220 45460607 462309292 546315354 777206492 298881892 696867471 813482298 106228269 533233202 570809166 215506731 219795650 425907783 879740828 14492872 682341711 171850142 740444055 4128384 208283040 608862949 52705448 747720315 3917538 26052264 479841223 796000067 64792558 556719259 676932427 932263484 231126546 134843888 8112570 236351010 5063338 814401830 134872572 529398765 367914873 987767474 270407709 473412086 690144034 95868010 725449263 398920256 632825042 780258580 11268530 753853288 120036456 714754333 217397861 899509358 156373955 460135537 287488675 585441354 728218985 992838486 497450346 402094469 245806910 621162393 448457116 110963604 93753206 583699805 81030927 674536549 512624958 870766601 668344046 221829493 86946677 403494017 727037261 803374037 166413938 926659050 936329289 142319698 909693872 373039813 751896844 521185340 337850536 770681723 877323723 916437092 931963494 370458337 883596307 974313736 115297845 284632264 554708911 455927077 374407140 466910254 579496292 206409789 583150358 979112135 162197849 434617081 383647000 871497664 729354351 301631705 867904182 814501255 980399024 659013882 872002561 401174600 597870581 650988797 515647685 455701744 5283891 237547 624080120 112509496 534743097 363293082 630071011 752004675 309963607 385385818 828529252 68678713 235344392 540626770 790568654 281255295 636976302 728495529 369575301 795016970 667591964 240960576 588110604 972274582 100847234 110282284 808754219 397473171 897148922 525980018 717876306 121212991 295887759 74498630 71828321 862046320 952541519 790694509 412807179 175133995 435718716 454794594 901589555 499969562 112526824 315641854 913903224 914559706 164396765 968361453 129931380 535718072 179972223 806512497 349922156 238999746 814588888 571515770 857565943 545506536 349224078 313217351 833982555 802946824 53911792 418082952 575947960 679433216 379260302 21349506 114824846 90464424 908040109 725683590 786721913 806649023 250599758 425447357 818110735 852068828 4193460 109831045 167148678 395336639 650486882 776361630 325633431 922511553 235962190 865212973 321244481 14008248 475760752 688330042 469271003 67580363 973360487 655418700 141257463 841459901 992526385 644438010 781838724 418891237 354679657 310921001 997007936 334619436 489395081 314570761 315261563 652008060 548260685 572399623 196397470 542117672 999426615 854056586 518891095 987979623 686485285 501545575 33386464 226062694 581127067 616498970 174361969 854704071 839753391 434497298 401121086 294789110 909178407 783687595 885437483 561404069 485425185 649423142 330664791 633055670 920517278 455523546 552931648 640153826 22141060 251378260 203052595 266294409 134214182 241031192 80705212 488024772 469582611 968708339 642532867 881273465 208918201 321693269 149708721 273879819 749604797 5308360 749701948 310122145 828738957 55692755 460234580 263546944 855030226 680776804 460594361 724179760 459661148 832560435 560542105 819405488 374340033 6300622 865446144 128603175 226931511 110109919 941211888 443293768 519782957 362304590 353895386 879189226 853288604 462171383 319673403 683351602 286200004 494287092 604729458 134892620 65621366 753614817 801701519 351554391 964589241 94349589 213841383 603019784 777218502 893907026 18306834 861895617 994766274 244688571 270714013 872490638 948560063 428410452 937729186 65575040 120389035 481049066 771795949 11975298 837779577 662620766 284779045 43568159 630348541 117443380 563381419 489090764 215794930 693464559 403085801 98179325 473330383 185096816 576548558 603722886 627919999 951499505 12199450 415503998 156712749 942899074 577193910 394008576 287594243 348138971 400338955 927375529 41753211 92388744 747498347 490450032 988437365 865532892 57398119 451389342 487222272 650398613 131284798 23987812 672426153 156849479 993909814 616891975 675583713 105938079 987424310 552609884 199020603 500302777 287507556 901886178 80487395 283665461 568231216 912862895 429063581 337881260 90461895 608414416 173610424 621113696 583975890 398763471 99994793 656412957 527620461 793421835 209881001 350206725 482438525 472133990 161152298 191961449 127108049 420289681 452027402 100212375 491723228 20021306 360955685 867546648 98508116 438481277 117636257 512160246 740948866 128466657 866963557 345747083 375045033 233325445 227414035 719830690 630483961 105212982 733559963 347978056 165527436 238522697 512146362 898427601 294403369 777298114 435439572 485510610 329363009 14814846 393431523 845127993 117279972 608986005 35530012 463928475 702191738 60327407 991616821 514599391 540729719 143302413 824240229 961893816 566427973 908619011 944628126 550090361 822068598 823404637 446478091 317661351 599347979 465045794 32174982 212061624 751567510 421622395 252800755 526453945 798090925 35203947 860089394 289960892 825997095 345057732 313497356 459400689 320792363 495153622 798909143 63730432 247044814 996631505 309551721 878446151 623343747 212781103 231681644 10807457 549325201 852511263 330409449 932717244 921517048 476902362 520499980 335553874 873774293 247430767 619134427 531423407 608662893 517861687 234240384 185620814 581623837 892411222 195774087 35750311 922604752 945834761 418871547 665971786 457406995 171225385 522858363 472438066 824235154 830217592 529967449 444950776 429410164 464027236 509430712 444679806 831031462 310761917 750756899 686170346 472797264 400859857 183636008 563413403 580124766 251619085 985531519 846149171 345428531 969494057 139638921 160510969 824590313 401572821 433131321 526267137 227927618 599786688 980846270 676218671 861929912 665576706 808101301 191469762 94353645 858191038 564775588 357668380 245679525 384434517 606089660 3125066 812931109 234547765 347094719 752261592 615564393 238808182 324760718 894717083 135163729 177737596 993901284 778990059 600040534 577187601 124675110 535521453 536270803 168914666 953619706 956692646 694859996 746226704 802486391 308502025 783762656 777937442 271506177 110415075 297547268 304829392 253543574 961253793 157081732 960392971 760414413 210921557 89991312 169502925 560652708 638020343 973419028 115559856 685523599 739546969 566845591 565185554 781009099 250233937 481741224 610861488 404043454 113796635 913267533 797110381 328474885 995758148 635474491 645543730 445823178 26788794 125420377 130688064 956521784 184983104 105055389 199019337 75071845 224035628 413754129 359457652 100585691 294341996 394908371 153909765 493363122 670309608 408613073 938160992 78913438 196488706 374637037 423968815 884395551 977431379 557066415 809184523 719627437 977264792 686296798 960071679 331321426 858941336 720955478 978247002 789291905 872526203 824924573 250528420 262262150 128230004 526120955 397930596 173054828 70013205 980273377 488979672 334550548 529793950 828428049 26769975 320266533 260449557 955091747 58728560 370009398 293226483 716541739 673443981 769546345 65169377 546143177 164447297 982779395 664900857 253817580 471819992 857637650 645448431 271854200 333460621 379235394 319070525 405371285 276874939 680503644 978354382 473936469 444952361 17607049 363081306 624509962 202022832 720075695 205418308 421763994 446912257 481208189 784333354 606566086 532277484 835939540 260880393 918122143 87308053 543301190 828735874 3768377 83530953 128546095 566618263 335310724 205738640 140648181 660168265 995398650 43606048 602782823 929057424 769550883 557852925 22637107 717812523 765562006 132940841 139716698 686410881 685915255 363108022 328656361 562207662 266140194 322200389 805486268 703212151 239319822 301363746 509856243 414214410 153969534 29363912 949475793 998013522 895396005 874069572 75927219 767644284 536769800 525530548 411447739 514695014 762276949 32153674 148606896 572087424 464076021 593487628 404489826 654382292 201478219 631782799 855038685 166686442 386279568 528186219 122773286 670601638 909940605 824177988 861899778 739378270 764104230 299925126 78868365 861124313 803243584 832081976 29255430 596559204 494344705 926952805 136920235 114753384 608923540 170310921 833451671 687530811 526038147 448027354 455989934 834144438 391737846 671665154 667686608 69116748 444252373 164149093 579453387 933385039 731240808 698093389 43404498 571422340 354164568 553163702 955995392 902134944 6400098 638479266 948840512 958164017 661396990 498991914 209227534 577911264 877230233 328546344 826858775 427124839 848926447 219530634 667911076 152941204 420859366 531005327 494740184 59304630 783136214 742954053 402392336 322298997 145723324 911089689 431361777 233678425 350955764 844204070 21880861 852096160 52728588 289430367 19791386 364944322 443346342 915016727 280153518 660314557 527815850 421752155 612658770 256615938 236976974 750056143 188356256 890135051 392765020 135578632 785077709 795616004 279997676 865155933 959094010 285975003 912415546 276773493 787431360 900335404 490424218 929993271 829220258 620460032 289828259 764218438 682779964 115332630 146776414 627622257 959439224 983112305 197268876 523002332 301683049 931025583 433803795 640639386 182329183 235307868 745315261 831049257 568361986 791603464 206154425 203192877 973854135 77052685 188327240 711997718 68370821 116300679 443229681 722057806 618963067 793529104 172661148 252167635 264052952 83981703 78341456 727494421 467177385 917471761 22970126 842411721 313919308 510078005 341698221 547479252 1722210 551181031 782029124 402301723 747602165 952307104 620876797 250953042 268006949 985872888 671659492 152501254 161751024 324328660 20050315 635220069 724681229 45515170 388313670 102960952 792519191 507921326 241571580 237425158 782208440 189723367 739249091 539518815 693709785 923224563 49802738 967342139 518550834 659155360 148744415 76921482 979261352 622974737 524888735 678556772 619439277 654782178 908036602 587788921 823533639 242856028 671388029 954615160 233632612 434523836 93563217 348664154 509613578 436906419 546355451 232927525 375790481 328119340 637065207 892920455 488851327 426104341 445727131 830924982 978125994 112962749 199106441 261595209 186106355 997170001 830338237 309193830 909129431 184074726 293606885 705352337 501727190 688065794 819957580 584330312 130390002 628628935 95599711 666206742 576178617 422247518 861524215 617501689 605425088 908568210 608777311 31532123 286735833 686693989 380843968 842970215 101365032 556114464 444356136 291665140 282078831 141013960 869005899 626219429 503575798 664249120 230080081 122468958 674443486 160017674 571663552 953392003 971751289 914307637 885868551 641324184 505883376 344382134 8265798 146087342 241980179 994480608 375066838 335096961 674649590 26921365 934924924 724821208 471869055 577758708 776291014 611119984 523631230 967860938 333559807 24973803 702050542 861368456 758667111 647050499 437707800 367119315 28871628 62756381 888803457 91020518 982035251 407095599 109265569 930646653 795287536 379814262 943539095 346473865 571310028 457682796 815154044 248495027 586872172 41496030 981181261 529113210 631480488 557445634 959398899 289702064 348497461 92688268 214984574 901339742 593487508 231725530 632012482 840007616 914270975 499354489 329657965 943160431 407790736 401749082 740825139 769104024 730131423 726276305 662125779 232474597 585636749 128210947 808562871 913186084 249602641 853593091 162980716 493292948 781035986 305017632 465637909 256509878 917359670 221297145 265479899 526600887 515731194 627603086 585599416 402466677 633660132 250910786 243507462 388568731 78478943 607335624 238173869 44215663 968486072 603006335 712055725 833085472 384701033 884787094 317619824 432600730 55198884 919293797 708317911 326436813 672431576 134138090 839491615 241345356 887364538 211499899 559959037 487570665 220818319 354210208 797392146 990228833 340420698 778113204 402045468 639991372 550808340 185128035 112946284 948888309 554048813 36349557 814003140 405242531 427658770 472451977 753283820 110418206 535812620 725770224 182228564 893704411 197444351 841039031 833859095 129293618 820494334 345888289 294304998 109903985 372798906 811492282 547572329 222743379 718833554 637582342 250097121 360594613 895597903 457649580 897155664 700394902 179461065 342897139 919802841 6727220 251751528 45170020 74136930 720639060 35635887 80474561 54470286 148366241 749037426 630261566 785228827 722891796 477795870 689603311 354696453 406226346 333425082 424477906 973843057 688160390 304735942 22346187 625432391 435947319 108278412 72864460 12333312 798904592 650512588 271200056 791676759 913424968 246550952 141313647 419542823 401837358 675574422 119410087 225076862 592671521 598414633 768722425 667562275 970066577 450404894 588379000 810060281 78362158 6735052 936781555 570156616 399225933 192978706 465492519 373827216 76612134 891933092 656891534 268644177 699961864 460330995 207117140 960104463 884227959 759543936 387927325 597528889 555852025 128103662 217524249 767150629 200629047 27255659 915729752 321154398 704217039 715868147 289055877 165398393 317205130 802546531 669196933 144473047 394918254 831236297 511304613 945096412 349215646 688223325 316328232 189903063 130100199 60515795 129264910 159127581 805068857 178337821 469599304 101279967 650962588 342400408 881087692 234975542 735486290 467728384 753209048 248368641 172063953 712142242 177032873 502223065 557831316 433394782 903227099 939949686 467367826 973369402 591226815 65745531 186549255 517414408 865999094 803813979 476867820 619984087 105669760 706094019 282447557 481604822 258815085 356978884 765977694 619509121 849555439 638129149 498868525 236991033 269206914 696709749 944845436 484675234 123668635 663616523 171222943 831583485 800255774 33677289 436212089 879226773 799506925 190191092 26500887 620453568 528692822 4051403 811891099 189072889 319549410 692020266 130862867 783079919 760014815 264344785 867596937 159435815 128233559 668325429 157507732 633958856 770200240 31747440 679133786 604593772 766615164 573474342 532207425 402843713 419298262 605479080 148842095 121311992 829886928 729315983 107289997 624313845 737112191 807653300 231396257 851920806 771684274 152788600 46999616 776770084 155451691 544989581 778910767 633182091 842947816 665583512 495082085 485633166 11954616 210629069 589312537 321547637 145518865 26215587 482126918 673675063 252097667 572656944 296839728 549276263 536995187 753945292 572487211 159167056 68230159 267855034 825860861 125035508 972379269 800851807 495199911 322657323 609415400 560829850 906799940 6728512 614919971 428124780 130504562 308446714 943015582 56363547 177603617 123323077 571567492 679269718 824635403 873497100 177534970 651985174 78113094 148788454 862427163 380475058 717704956 398563675 127312441 760391933 198811959 426672736 625151477 774878365 773714393 824662677 882394910 506139943 72753689 186953360 147123723 373263841 442568957 830199165 364400470 573544203 93815760 20824845 720170911 500719099 35928403 332613999 902327685 895291845 746044266 465980273 265781689 943428572 135908311 344701537 985113363 189559575 303898546 142740433 971717357 120505143 178383110 840260580 931481381 825041213 591714328 336917757 307536082 808339697 696779998 174043035 564394873 762911490 757043966 135750324 720900693 737248833 148699971 264971190 186519924 341178822 932899106 123809675 461352821 544762209 903859903 183557319 710149643 324989796 695131148 174250747 263101069 953725429 518996776 899721290 753084298 922817733 939354955 74304225 700860519 29962200 54693735 389467055 217289735 497470076 849714688 878886710 610859374 948845524 719846824 792558765 4467605 314486480 954793750 988053693 437628537 777872497 364297801 432488406 138865322 199201251 292239963 468546420 11100954 483176529 140006822 422583608 278284677 550805444 635146707 928123675 233197813 739139461 422535953 353708875 1047750 658962761 492250155 420786939 451349436 142395972 935488731 324538640 536689123 10001639 964135039 195371506 237184158 933061110 384615077 651825717 390586634 803657127 750847676 370124831 905764129 987407604 372536684 823078719 117389008 856926644 344885049 650376966 603754528 810712497 677300641 408656121 29527587 391740972 914646832 618282549 677801059 123028334 974430070 820573959 847744292 50236998 803716954 800393912 411224416 847448031 203434736 772613416 58690466 796941637 102103600 753795971 872159439 29889912 701638466 982737850 114164183 324289146 131098460 736814625 168527916 208727272 410378294 679960344 446534839 302758633 79515725 825333931 89556919 314143659 15590579 608623747 348923725 426513952 156492143 239962052 859887817 71380238 111467427 399082391 133838587 546679519 316462600 343160268 299890297 793587544 612098313 669728701 870441054 728770619 212235278 869886661 458379420 916958244 821138479 30704463 476949313 530115304 290805252 403690176 749924537 720668234 875390761 394574235 259683538 179252724 913255859 334891469 947445144 342572213 244794324 773607660 675446678 873211887 650835359 577371994 257041908 331721463 339566433 187474470 808445616 670156071 470671529 341852012 159144603 677720232 579556101 924019343 56510453 89405248 152286067 622296166 904291865 417374003 625703492 726448648 679096632 72015160 417151782 337861965 772934841 677408920 221879944 433224815 305275037 549073237 818065421 191457457 50937012 743291602 608011360 334199006 619081551 138535303 5705220 48260922 282936102 661086562 460447 498964583 839038753 140799101 543184633 149740155 447661357 538180699 555248553 485485907 77950244 769840892 501738519 670718614 374571103 401447083 839200970 753837244 298466144 37911882 995039368 205164671 916339140 421327507 569443384 711075677 121342395 1794258 443966695 903242450 763174360 306132113 558740354 56800167 975288924 233776547 966859868 484126321 297834661 621460595 552129531 680921712 188988566 645240476 46292653 954918984 719031937 803327072 356887101 743372482 392796638 307782109 37606465 202192238 742314154 570095735 757625367 126082882 150647705 760858528 870521853 866340062 799411837 247381435 820986938 361728713 272571913 303699689 697615281 636662286 313256548 992313128 676754511 249591685 15762872 725627742 816411287 736895307 132537373 665933850 144472904 296739392 890025570 27745649 349517132 819629807 285832968 274344913 924079724 998538101 498861068 11853112 642680070 53473555 476944465 910030114 566145980 53864483 796561490 363370157 665896223 839093268 219555403 19743742 760283338 504839230 308960320 561229598 844493530 706679835 674367518 733026024 220271574 209295661 405023651 39590988 749488870 525437877 608950999 235998070 331757989 11802317 814442723 255393859 699376455 804813963 671056561 70816806 343326084 152054027 575756147 277019149 378975706 760141240 110357650 770924999 729011935 116294936 42037476 251046086 918468101 949776699 71429346 280016104 193257064 375814595 78604899 604216989 349878425 116544701 512289130 386017740 910469458 213539072 423076054 620137727 220984205 196133361 132873220 255182687 637216736 283386999 261369630 770308942 999031505 99807418 657882930 286362826 262567388 391056878 232189304 441768577 363761938 995782760 916056980 252501272 526060501 636447604 62278913 303435434 650114835 302822338 886151195 789553887 13781303 644714653 711658554 479779001 480817467 318308858 998769375 31719400 300074794 668480035 743372619 61057892 197536737 980573716 524927408 371838574 124916744 949930031 614528784 435067437 383220340 168270896 685241557 664361809 429736169 454239371 726833093 910195264 225038025 800324125 823682063 539659216 497189683 684073589 833267920 885356229 35563467 479240778 576351159 177075512 52449510 253025944 280658625 875597148 748901471 278192986 1691032 914439215 800830878 457151945 37445337 368022901 552256442 686600146 630809075 211190260 226662259 674304368 32281904 400785949 462380105 880506842 336201852 519175047 886261274 465807820 304975414 914373509 178052486 990461133 922802696 655329820 804931669 203789979 571257563 756940170 178162423 247940830 262704679 458511611 757925695 215496787 673272105 71517213 655610896 920538090 753128428 808582919 285549210 432011230 777984899 792308611 250705250 622262877 402214827 825879248 178641177 507377520 572816603 884982662 407835778 835891654 360719383 110804028 697428413 839834302 875634142 362541083 852412461 49576038 7932895 191944569 595464287 200762206 957253168 615692929 563047825 376932395 895055385 811620569 780116200 234831356 312205235 262073811 270961055 430753768 360411704 216143442 151564793 64126250 493942038 191289861 426913680 168825431 995913216 24972646 574871561 179821695 575481158 721027066 518242301 137682306 416270555 83427489 93587097 936365884 270485996 691405647 382708929 809230534 831874532 254795783 266325415 128190783 617488678 302129775 27476315 975206995 547031483 379865638 664761552 250350235 991493637 403142970 852346272 872790740 272216165 993296443 262744043 784720341 889240142 251574411 202154503 753350642 403786982 600122769 474923284 808370564 779507825 445929851 537966169 108270009 890430092 369820342 263423981 248818422 956819375 234373677 906703681 447436963 920799470 980835268 787837124 208245059 50236331 541412447 307776450 615051611 984529206 166681659 812026583 99501833 982568867 96462104 832875391 258597086 406375286 11919745 309367419 3377885 221389664 52168354 155054354 557610099 654141144 664023244 526677589 367513949 554705142 989151339 251228731 176547125 285511529 502817960 707798192 225694942 544278459 239780017 774309448 465807528 864905340 374648337 227388224 984882453 13363182 839723375 153701432 7787394 989440103 706184682 115302868 803494179 628200282 134968512 603279885 790789167 632461051 146897275 641816732 776894505 830920080 750434853 569493630 88058099 92488698 687231780 615264788 946301647 346929453 807110056 422433352 735370020 877421780 737235907 825141358 767689238 833515642 9790664 669582027 380411067 720555317 341144915 735842015 930247792 705466601 215259683 311356938 357824787 348328288 919259601 134073874 707961361 335365385 412756168 97104477 747809796 482709251 882002030 573723651 790737825 10521530 542968462 665120604 697937189 460742538 936554494 357324546 22024965 845149988 343148311 234676195 247060569 95608153 144136515 52783877 375171776 542089295 758859515 665206379 46947049 725191631 655408660 676185261 428052363 888602530 876853686 130166628 486577530 598914550 375589422 295956940 21725475 823814187 503692451 319608965 878601778 686644321 575633266 867909346 865382274 23412647 534879753 480556309 933726173 527192978 824933128 297365644 657087867 606409853 65690038 104685237 81109595 344742363 749177101 637150834 693331953 367355312 219732670 905963114 815539337 952357968 835026904 534872313 267894339 24179642 430650221 885213137 206907615 322951666 89069572 564485201 530493207 976241128 66565709 760732160 47333226 256665611 802071937 16567450 161970072 605678749 962421344 582923778 780134601 854663475 92309046 220434705 101080144 893751566 1086585 646591120 599396258 333689360 762894225 335027548 789412913 260970296 353247414 925061839 811507971 601372816 11369884 434146285 784948499 267872200 205954439 899275092 462798548 264871217 977500311 138509943 583864267 908543601 544584173 748699169 968467699 259715813 585110321 730748977 122863435 972653453 514274478 618166010 70263164 963318359 844319548 12238543 479211919 437933332 675096891 611811563 984776700 851355584 697719167 838160513 799275525 449783650 697153452 526044752 523533721 461353332 473701168 131267893 404857513 32952610 277462599 619082232 297524174 228430233 451693754 564314745 372952544 628043330 848953177 350422322 82483295 860022471 45719828 690761012 45502041 944794686 225985952 932259734 144281328 589645424 93368620 599924768 751819314 676617512 590436902 452210413 428662212 18705792 342217508 121482218 666045265 213596566 146121892 132059488 758080250 739386749 644617011 190985503 479254633 432782421 528755630 280261051 504274097 432666502 3768354 143888247 606479204 874208244 227605170 784602834 67464960 405587375 929255289 174199092 865539650 796503812 150959655 349719030 977358108 633044671 151148692 695745968 343337736 772780329 388162338 143581587 210396812 636449145 841956736 925488526 835454853 356858519 554795174 179866888 351633439 827869794 566873883 559893521 475592913 946597229 136880663 740549429 187037875 851771213 146045752 746375743 930115301 335255635 991705592 400617749 441469783 369487860 643757584 831363692 535960541 681356053 553283021 741368211 329666416 396209495 461397881 216625388 253898717 974880731 858347231 854935516 641969648 289480440 780025715 818970027 970592507 858088575 675500759 519852793 967944226 955510668 161734768 484001713 263841767 391268490 688222357 445791482 52512225 399300744 561198247 674334595 710070387 542621385 330651121 924730085 519923705 92266072 315940411 747463362 860181300 791929650 39802904 692384575 219463004 132371866 539255912 294218459 582178420 82134558 433100964 946074000 688498602 822861004 512765760 200340573 291005865 11394492 970785986 433492478 892698885 999930597 906831868 859222778 499865285 185292766 701318342 198526362 66300711 137659430 275820466 254090129 337805279 274017544 704146100 814088105 923819911 891977582 856089743 414063588 330304901 390670145 522567222 157174772 394503890 928962841 135555167 4225956 585827587 431331888 186344811 584570039 433009192 526432279 310275728 107430880 632779330 580070834 868685865 148291982 223987309 724914546 327628254 466935547 123731927 890590459 422191158 802655293 933862363 751577269 382594939 315059669 359751491 937769587 905859064 253739685 933740300 437263316 971843177 192910103 566834245 168260598 295563327 501085084 731051511 465127111 93677763 196024570 823516297 696958233 626070675 47382586 603880494 765993154 166729818 195185604 560354235 218389888 57463380 287322661 256757925 727776426 870247486 990262849 12821397 343136826 772095280 140851521 280343483 760332261 67438485 683558413 21160913 482243034 647467021 342547947 766761062 594965623 572131224 325285204 797894227 108747151 831576805 564288582 744267593 111832440 955609734 694261613 975388668 833721201 601207064 678990300 399975581 62246848 222108050 949542956 692199434 863146225 113785100 83846079 937495617 570471451 407447525 306925641 631071409 900102488 250372269 887040122 518671774 444243199 553462269 458476659 967006041 914425144 85609878 214084271 994993400 53810391 544142465 528368385 763018263 836708275 907627967 954562323 162729381 636990423 48921302 120013183 417132028 825356086 942859246 674238432 521302150 492009280 655846724 522876499 207434265 563366822 328218176 271131165 448183453 645444226 632670546 73867942 158892500 662108070 535913580 871071566 66930366 25810437 512068208 457008463 820842902 708748640 8909239 498832289 452191640 305890964 939022551 736976800 481584673 876212341 735832238 538989372 564730023 666318650 497983428 778266076 663590371 877961255 455695375 13157631 782193292 874551763 157266720 461451891 558002736 949052699 223445924 683300870 547855082 165868196 245236252 444811729 745233901 422254574 296501605 563107705 251289064 848812678 576559683 320436129 270338444 159976729 419525452 581433593 579803743 41806878 161183143 609547858 22597159 691742877 176439206 750794518 321427020 49648456 205747055 553975170 114937279 30002943 469741846 215653427 351232473 30406362 225388138 565487125 720222734 967280602 833051677 391834574 248344608 357201309 774293202 611061584 863100179 963058923 755913711 197414934 429521791 208802955 138100059 250658629 654602890 809022981 96426486 268552684 221828314 109305018 117131066 982849893 492857247 24460782 89115765 739283995 605457735 473096985 755006023 60129206 987413730 136762168 436079764 46459215 745758875 687339370 81907728 827686901 7265939 688072215 446265491 335599579 376911243 691101044 832673131 475077882 324476208 527910195 560118534 227440395 185031051 344583949 948876883 477984861 420629357 430666383 929260955 311009467 588786167 33384342 548365967 236708206 301870708 968309783 111705636 49099567 607582795 866663906 329060587 518079518 384403086 916539992 538481360 348895669 93690155 661978642 210933565 966090143 263543947 109648976 767998981 833716015 133718016 689344636 638513105 587582519 712525377 396967258 121252774 171098995 32981897 893541262 342949996 524187264 146567287 122429328 394878460 854322626 444791604 351829536 375708487 470735459 466721351 313765656 826829488 229187094 611513473 336546754 526936509 23276968 593294645 831442650 191139647 617468152 742813469 893999367 431040950 113433709 362736604 183246512 537892088 860369577 775349963 374852543 124345333 87266329 969245898 168323961 32885334 484135996 447935431 685004009 310151018 944355422 343158825 89877901 761466054 291993896 713495859 690851119 853511513 15176412 164031777 222024492 971193087 509116483 946419335 437677643 802221530 604636059 30782469 156094643 422579363 315478495 788363159 155043403 363839476 956719353 524768675 287175820 109230299 692554287 506162777 318616612 487145476 43754115 392890590 42144263 446213762 870616935 482918907 342380109 710553247 950796761 119256109 600235305 300301459 244555814 296277569 949777062 539270583 689509438 999259862 636784076 375698086 830647232 644993783 430030208 332546857 998476186 517804029 603608615 175829544 601079212 307052654 291844803 36650476 924259160 31373543 217716954 504706818 237540504 215859290 223499486 353246915 390709325 606311885 94109296 596585210 710288568 946049058 784778231 536820601 559213589 563263520 110351700 710967908 213554595 783029339 419944411 420105685 272226603 217463455 855583480 549243830 869153709 869928251 951381778 167216105 754408789 321118508 288360738 969539948 188833320 885781447 850737537 283437153 816478862 544607303 130433442 75247120 960898260 242701163 529692680 619478485 73668316 872889011 51101247 583950439 755942461 463499317 772457170 815315961 535209880 905152938 499429282 21908211 854719867 338896469 387218535 540288044 484960374 629600103 875850081 242275992 761796073 650859281 350370460 372336412 114630921 962307744 599983010 590556785 265813797 968699164 549570444 294710104 277263739 747438625 347440685 409602577 626173294 658204249 705286384 80619602 65771939 437427019 422476522 618711289 880544921 67733294 543151526 597394267 681197744 651526169 470832971 141387905 361346348 18641518 193243936 619020946 202095468 750654053 241418839 959814286 803636231 164282374 210216326 428887617 255063857 698030293 383742247 77005375 350520866 567898100 730209480 270445875 85334488 844973986 155642831 457458400 869780978 154875009 864077651 140875988 725602227 480055389 790572783 842887722 477507349 291158904 168520331 499737689 882513947 321121106 184862880 615564172 331455222 486562721 208122956 565645668 455653413 498238398 773836598 433336975 363711668 797326820 495461843 736959745 272752149 510766054 734388658 353878454 519481043 541804016 791960972 318176584 388122133 592897271 823381903 391931633 943096509 91786012 463407963 908134908 462127905 444223884 561542621 781207390 280277555 351370804 543373802 132089298 59319938 362108606 395404719 374019978 636712071 793692324 161817461 379404995 60872866 568111819 288952605 935964469 231113889 521196590 931634753 109576875 114113080 324859553 127805815 860986065 911977578 191913830 147960963 315890641 76782422 800703247 160747331 497728487 802418386 950391823 331332107 630551256 508269217 410278983 748230311 760522889 434984062 348655747 845682313 523339591 460816577 115023096 938555187 448214202 288214256 371208321 957935672 581599337 446650625 544397111 811227992 703548109 427550538 33766426 472128868 415414662 290208710 691749031 467813316 259182446 541423840 940232026 23763599 691351616 723670409 91326311 133438159 674035112 6265725 524900090 473333911 513247677 664219866 606400393 86143848 456967250 572494387 848109407 991378721 32100509 267480012 322674912 549183657 51840396 805535494 612113608 579029655 113552500 869617988 738320277 815424714 582687371 871206277 471067703 313131775 718374999 700733174 30613334 445696511 522003940 31312037 410268858 794574100 338603257 758533611 181968131 65554877 306766832 98590645 996863097 918336372 376586975 120992924 469980784 610634116 709219839 159255110 671259100 106829948 950239399 161603577 734453827 573122457 307064385 394575797 190195970 695026876 445822149 894835992 274283940 284767320 592277793 819981315 726380855 534945139 986211862 806175276 165601154 119599188 8189056 928488769 242209429 196737638 832398867 967990001 781338271 488914285 388538942 105766920 73236914 792632872 856232865 92938677 466351328 425233350 442714975 340564530 658978122 283898359 96948123 583358483 960930957 913899353 379081489 881495401 949983195 130052320 142392829 328884833 967610394 416729951 886131662 589353586 845218299 953225593 380593942 775803568 523971008 410371544 721186050 212850400 318939483 253848287 755882891 982059255 594476245 870159758 899569530 423456052 127000610 933598991 752423119 994232443 944615809 968989761 41021306 990830761 393106836 596281067 819250569 314774135 869553973 692695733 77318859 9919425 468086171 354296675 276217490 24364217 488271746 255490670 758314102 523041790 512406825 221168505 329366050 66775366 515750590 918230809 92798488 257393696 408160123 202521728 984241742 233683930 475501823 245128858 704264662 27339551 19083202 457347158 924462581 731368068 278542356 718059364 369736305 314491768 361091678 396638749 11783381 719752128 478463583 2629994 501429317 329155357 233599716 612101948 130203994 720491719 565812331 360088001 581518963 46587492 738174615 664403211 513499649 76725132 862522633 950141547 23990203 592065881 833533496 557432290 754854345 270160462 66748442 407505638 826390524 838948603 83601795 454438860 496268834 6165770 435927638 898405007 513041691 774485403 429700200 613909079 359204464 184577662 675006624 284520816 619955441 690235574 484757396 822970789 58549591 384142418 328929235 662712932 933194942 705109175 408012312 738232296 987976036 700594883 135753897 201677127 37922549 578431887 855388343 716261702 811754913 336287397 759312134 991160016 665276696 493817688 404852608 462048095 736064489 866464618 444996619 206257458 813281248 615184370 200535136 859452138 860734366 963664344 480590555 768424537 543672309 651240383 746330656 572463085 776802193 303970529 430551775 770051726 58131620 227308008 218491270 162740106 691218548 947857771 416538003 707690154 312895585 394841406 370796140 714841388 984724842 929872134 678360546 107048621 357759248 823974467 63281888 926236113 573360593 244526478 328753453 166522240 778313121 377251199 502267662 355316714 354086988 684153216 96343494 934182242 40880514 460048704 320247716 23209452 157144161 273253539 520945515 197020449 325853938 665883458 88818196 838176161 455146573 764997660 733477321 461949009 546054340 336787716 971032898 172447964 964609911 955455044 321107053 136810842 404201822 117861467 133370478 825991071 173788325 297943469 294899386 662599105 870069423 951681813 316714758 585382392 440019623 595278490 91013628 105294241 910197263 155326489 792710743 429415460 831796424 400946522 861754285 465473175 400233461 762015953 364455804 141704304 664446639 117668999 94389278 276851082 147448588 59463955 271098594 620300846 937979979 465522529 19453986 304326896 1200012 775612608 11548062 368199215 226060449 152217328 549571307 769113531 833699866 104296951 912702784 616505554 909980788 528549029 315134235 388024637 634831072 255871200 881764712 785696770 364463156 263701538 460906886 448058670 741844503 951754754 888166388 480252095 529834420 396549507 502932668 390601327 379866176 868971824 759895622 834018403 978564362 74601925 581883894 29715176 359993855 705598294 810885461 681031310 488593783 228957037 472111883 692400930 781622379 9086747 569443385 617311346 833420529 265111637 602088327 984569854 433864091 949357181 990948818 262472341 410888298 222537835 491351282 473552801 132747246 451847468 783368029 629411088 123979940 978579906 411391040 239243512 8345639 996098356 910086426 151645974 502973127 615085624 91676738 987919879 908653024 180481755 565045947 155107127 861630735 818121987 127506606 844870751 17487784 642786247 456691125 280988547 421970173 961911282 268998406 124068524 955410998 821892421 926266972 530917852 206245053 786935816 557932320 268237977 818033760 494563932 238521687 918453181 16968019 977862770 23170080 80569440 574980333 730393501 290166980 485453695 50427985 765999849 334741751 853408212 760241470 144405158 442596517 403097527 213764773 385523685 767633163 718407489 383622482 937173890 225021984 768235596 235892298 581876420 21593445 137165487 656476080 491154501 394447861 627297428 408927577 470136854 815356243 253624885 804899938 792758283 468576009 429570726 61644421 570047617 931523273 812752377 206053359 771269755 663614099 883984709 496656256 135939140 99244536 409658912 247642005 673132336 800285937 102107642 331180274 795887867 414871971 552607718 423613965 270999462 900631320 152617277 495744964 573364704 873794162 687850732 527185231 942913604 143590054 413751055 88814508 605414691 748548495 437922059 793738709 832421160 99026678 12767005 789122185 861586352 853969378 10556551 202240526 144449016 216078195 490470800 635616066 608486527 709056185 200319871 271076911 539433568 701844020 935847943 839479963 819791670 285846756 260945557 281055109 618550821 997070439 351567945 650494893 909943195 76511128 118545357 458008002 852873243 651840259 862953561 286188698 821246505 357886948 865468286 108100804 265203979 925014943 471642319 965830789 615076668 243431880 434206515 212065740 119179446 391644276 804209667 271648474 979718618 589653111 507912915 23912279 15352546 617709074 934291105 534848436 599530826 59569675 559741681 860913211 28065606 495928937 509755690 74730226 497924628 299876955 811274732 27158583 713852415 114503278 67468767 75743956 305956394 696402012 169316118 526288867 160198967 778764896 968365738 580139142 382634387 93629075 828295729 33172249 960210471 224305018 877835901 816356632 908194680 273957592 480597679 250638482 353431358 996083702 727643481 674831834 895022510 991159936 630623727 287868371 544019636 387667101 657405030 604622878 386440025 86496953 377231817 128648299 814757783 275285573 413462417 843321973 981403512 774073126 187374691 257138914 330488385 176743162 682237927 671541093 157168632 397153243 540097582 855081712 404931342 706489614 87465432 508987900 985866381 202447456 653154011 863337016 695412747 499017180 689036692 468580931 12723440 319573045 718875616 321088809 717550701 924116191 845938556 632251466 538580377 994668002 818999421 127545640 961793491 82445332 91159374 272432344 934716176 848167897 64743899 634774573 556670694 38052035 560599545 572685777 834241701 356208026 377979329 912923877 725175475 318641193 194386787 381819359 709101635 157009093 393313444 19223570 747935136 336940046 245471276 142295225 814965848 852720007 615425453 557514719 572881817 645336858 728143084 435915959 43407320 173731779 687451663 125778161 134790193 618452335 498594914 790803968 152501361 713729433 644145644 63156794 876073288 233819400 384895256 654892776 388338143 705909139 263376083 881345795 491671481 821537156 64931953 605726354 933807878 838833568 76843123 794433992 198614831 254376739 86974948 992244375 96761303 497844220 339517073 549168700 178678148 191943024 906660880 550546430 106687678 498171946 341576031 82592254 881195858 586940863 664251961 236137355 975389014 563946414 495962157 250444535 162769714 71150872 936724791 877943107 922037385 521120182 200769558 283897208 808288514 893150175 878064919 444983193 613666726 807492382 938059405 845830790 432377547 859546486 916360033 941156426 776533281 852778984 518413478 109093993 114369913 749537355 259309238 991417727 493493185 538820880 671068492 312443562 586573479 539277411 78612847 936687307 400581198 17812841 598606088 343391030 431461317 664536796 308307757 987897976 541567612 351897343 586212950 767560948 482325291 937947123 785956977 450877811 886332037 271515378 704213159 565003101 364971402 609349458 260410637 250573926 769640270 727830819 497332836 132605654 140947861 531775655 203844646 710760349 810292629 149207681 322056011 433820020 629507580 859015848 216131602 14993613 214116606 740850654 832785747 349053116 849348981 357643722 201339536 545508963 756955470 509944589 349972023 460698034 910754798 347285376 81135447 902908864 929773764 197544127 962981689 174056802 73547322 790648112 929032702 322946204 306444424 178036877 917652602 562949358 86642260 868304881 313965368 58463128 525485713 806944706 224166884 660582793 562705812 845515623 761202617 600337150 425920883 165842767 33994988 59140712 543828190 203143545 903495989 485641979 204464205 44592618 808213842 820476742 738274044 551247372 60426041 66944971 534458964 233447908 554958985 171845780 509551415 409144335 730423876 278533046 753225195 992342592 330275988 306380119 462839903 16939089 571655430 575382370 795545638 800891752 70803563 459467403 981377273 30713530 670719200 415859114 636251358 97168919 516071066 925348279 29183017 586337407 285229722 927268663 331133857 649627815 292336425 690484144 465429127 972321061 537080428 941240922 654733211 203321223 330662644 319696114 837777104 589826975 977260643 702801873 504314649 956995118 700376669 39638905 201358955 980909211 943852746 351056187 481229038 120059235 957109004 72088153 826553384 539636912 632592025 870095392 312470654 365051845 615837222 244554185 708014873 207470726 75051962 427948391 195431452 38883220 127187857 770292406 80754469 889423760 843886214 59804134 437746754 195301066 657308216 664057082 233885629 863004112 737357053 703731147 496346902 765720012 8351445 225072108 618909569 51758323 169293235 946520489 251140612 326799463 854715271 543148559 636846926 423321885 583964138 468744092 220494219 511743812 408878872 714708397 220630829 96319576 735649078 714854724 241174426 329213491 679668449 945158612 583162867 692984312 739327217 237622378 540661978 136754425 455943877 902968961 966062291 584537425 846676229 763842457 835110537 261794484 688613402 5271003 425905556 536547719 593207916 535159471 680919321 749718159 125040713 746537783 745198181 862367916 322290082 360518551 184859393 779628326 414030214 185875052 430100241 613680783 152335598 911443459 904466130 696415845 748075064 512204484 463593060 409664049 168413883 374114375 159581529 970915960 652190232 488199804 725958612 566963171 358568813 891356980 346057530 440789463 842906339 309532632 651880649 83965800 89356401 218785267 342509477 791786763 835784933 869933375 245232424 953485575 201998890 227203638 484264801 823568736 254183292 156949378 749972114 69105434 166050418 273525563 428041860 634169363 926996865 452741517 198705135 457393322 860297112 984965464 233968998 656971458 132718039 376117400 437256401 329429782 283514314 907114773 60981168 891804648 638332602 319841145 849445606 790750346 494900378 853783720 628279791 512587343 62836724 906737132 431325066 929053949 678859530 983716677 980452397 718195873 935199096 430787287 144709341 382664816 114130668 716391833 148953102 132733675 487802760 494305103 893656877 740537345 75092230 594375101 816461197 814978333 197233507 408054320 588823242 398925614 533626369 777965614 245046424 259715865 728346449 643390836 379375316 887766522 855148291 837275384 231002798 27871382 119576459 779538338 873431948 665644365 561884509 168566451 674633845 381031699 505761579 739792762 162595681 998698827 445971297 29434836 34540000 457080025 8710039 375687426 427715782 457710286 145133631 672867806 925022521 852872080 765595482 813281121 30747255 567563094 166384256 659768998 311254892 710501914 254557685 799758879 181182550 510025311 435555840 472994287 410845904 861434731 599877120 139979404 532538147 566788487 3148279 922607466 947169880 184287466 414932993 916004123 397259083 592417472 316559070 963222347 922574333 531403248 591879200 508811177 32040249 48344271 194476871 462129944 360429697 851687460 429336069 357221695 130146855 262029358 990675060 893611113 983128309 480282156 366259199 153002934 80923580 251955064 19442821 992036488 627617284 983806146 505555196 815842146 121334702 914869112 519577660 163630865 342565318 595279206 951482600 730207562 195389174 810192060 542937344 668564826 693752631 425558523 396656705 356881940 291109474 705111945 413267924 64657356 265026365 234160130 518104588 729187192 961332531 462238120 38303842 336257405 546075631 707298477 429057466 896000259 748283113 823525863 740206396 691818248 649565917 525311528 680921427 243661529 697932515 668964784 542538422 624753617 832040736 58597568 71530338 79810204 369280261 6359611 151459742 892853286 107948036 932667827 458500053 956657381 834324879 570807707 926822813 221973162 425043022 375211729 925265421 59025484 519394974 78575973 907888177 798802765 891521397 950710041 958820644 320180283 664898814 135825345 147815082 472162727 142529913 487763588 465208785 278990432 851928246 598590983 578783473 314368413 773972571 928175825 886160824 153442564 321206627 12086042 592945406 441665708 318408786 837387532 402049199 744585834 511929954 808415487 324622850 194401539 177805092 470118049 252859948 609630644 290439053 121928317 685306107 860537739 202996224 352212958 836231175 110030576 459309275 802628637 517903795 782981940 548510104 126119350 770045117 523261684 366070120 975350543 267561841 183301234 997771570 433817738 936718730 592364973 776752474 90957424 890435401 706190382 242977967 323196570 720031907 827979537 429877704 194472907 93374752 781122856 615115848 490791979 885644251 585486398 17185821 894660887 878870680 864475961 717267012 440805260 262232347 546961277 162713446 605228482 658159478 942959938 996804807 324541074 386667115 1360419 378027921 374473467 231755504 959690124 20108478 699665394 883351021 677331890 213902324 406773298 435727442 487745691 650049676 574466263 229597524 238274421 251158776 7488443 577711938 460629167 324924067 319492537 743619242 157331218 802891868 272947089 89566424 502635451 419500975 536833871 846530623 896933705 554026920 27443397 526829462 682430820 969131208 62274023 726413559 628561827 769912537 425642469 539764094 517020725 484205175 793791407 666146818 598971504 664405301 398567835 626863554 536437796 699741021 914355996 235566893 680762684 287042622 367991678 182221632 811165113 833559053 933252636 365201574 495239828 237372946 490483203 475497846 888224765 349182259 386858024 667008236 653163728 925215998 281845003 526301802 469886914 538563449 15821192 559045805 293468625 870377646 179937361 229111477 639158467 887271011 538620518 907523084 970310823 217086591 293188655 276937388 309979839 231444534 627494048 72011038 5120403 316353630 195423936 461307640 609141531 633549050 268592760 526217146 883444924 472580375 126877122 260034746 700505466 309804162 57764963 248923432 961171565 651812235 427368948 68718619 375328098 575201344 423215295 795544456 114237292 189296293 695494997 648345217 796566279 441661164 146972707 361867916 751900193 744474959 616544298 733316780 313992482 609266756 302490821 982883082 67642130 366787597 636862000 730263548 851070402 661057175 889117824 629037570 21179706 784601026 999265385 980533271 93967576 265271496 778741023 405572760 919901739 236156918 968016145 820725868 729715587 233784032 627527909 756648765 858603683 249925134 5222492 613198503 828249672 904395546 354098893 915563159 30272058 915122322 63618315 43450515 123182759 577159211 739910493 921084662 811345221 165396032 421977090 571851249 292498074 548387337 174275831 245534999 122565454 436847686 372616836 110951548 386199877 345408050 665166526 966915881 493534444 841660396 644176299 902750093 77700308 899187113 176608443 184165852 109162967 449822260 323086740 790394612 600325665 122676194 444850213 421434397 888666485 717639738 718684698 504237906 897400781 150774707 632793176 306775617 289421079 385135456 179804627 386508888 524152820 527413200 108297008 391650898 416163605 318987999 851222986 55031019 115022816 455555827 230869156 577944641 270703692 72673126 694516178 958730925 832005468 646104620 434587348 39293356 518560256 89540941 651840742 970821579 474918761 795561688 125964442 767326796 826769257 604095071 205419286 906509699 739207921 799536510 789431104 368730426 70301447 960811299 505402297 934881900 578360229 574134273 997898417 783991336 750781828 295644064 804212323 419982530 855523019 434620743 59308654 177326435 831050994 294479196 644594456 588140843 132004424 737520058 18611079 629963713 103450700 3142713 221383704 529323134 378430921 831035347 493244780 989410381 799867861 443758888 18335389 73429292 873814762 170202655 297474298 720193771 383157452 543048687 452014592 148590096 353661432 476733427 580333821 31338432 114831362 468707176 627432173 931277938 845614032 737244519 131017562 68470294 167610405 944909714 707455538 167838922 453850217 733122954 346982969 819066370 563675882 917493975 984265279 165716065 841554480 241363459 288297473 86605344 96563006 962738850 897660750 127439607 109519039 98092576 257216206 500143878 925673478 786935393 689833818 268127467 214459098 289377339 965178079 934718239 428267136 84342110 988730119 657584729 686272856 565260214 871817752 463592497 242438522 179853360 586442310 447636812 529546014 556520106 52299441 857013738 170763630 253589673 449595840 891509472 62414942 187424107 648891891 398362101 968689946 131958235 225865328 621684690 89137040 805560671 475919761 686783313 30819089 86107730 564750285 597647130 844127866 942703599 589232775 853962968 145059722 106616069 407008005 435967646 844538511 47953943 181489761 630017260 452464425 614711727 673724500 664752648 637787912 258097285 546384217 37402021 953434299 877013810 530499925 539862566 844876734 739945880 77152153 262587021 43681326 709743168 105903675 783358429 249439764 77388955 590246248 153965491 582014246 588961357 796311456 910295273 160011828 92398281 159690784 413803694 683283232 474801101 772614780 588337522 473253334 699770185 612933858 531922518 722928416 219844919 308725464 979347875 122701747 102064333 761323786 931506398 796450158 215196332 456948884 857325441 377393991 651983590 690834587 543867871 388801266 932125984 462593198 993745210 342335465 393765958 153641118 337364983 955281320 512619148 601008832 729071285 396845742 736225749 536860031 352165293 202640993 758518698 244045998 699668082 388145838 723015278 124990597 555928040 711284239 46041544 199603762 846841180 847314660 200120083 244239391 963220627 141193631 624054028 959705942 207612609 643509425 567816798 564581512 954636378 236779448 711939985 975416298 608072877 338584993 400771546 68950448 800816353 688306081 970035507 655973832 800299340 397398367 772845993 970195870 346240917 613022180 833926039 444985559 65764612 326926760 409592272 894898985 641890954 85912190 294341061 835520132 904458322 783222586 969774480 793488888 191984503 845379467 507863112 495174795 675974121 634710885 626345352 648586846 368721651 808751475 990913292 455997692 15484332 777364685 612566321 315517284 516188833 998914349 211201909 226626918 305472233 359911366 880617223 16147281 187991362 158918960 758078112 341672985 825484494 592586875 481549090 515797048 554490793 144126407 591521650 786795984 784183063 266747587 197593295 777911733 154969621 716842734 270584954 905300994 331988103 198327223 661376850 23801486 616986268 548452221 3485163 724337142 27249762 575119267 839556610 593335368 452642736 782456877 962057622 286447689 870468559 85877205 300447447 409016534 403153176 792367200 901079631 691566776 764132167 626152136 809567131 812882705 872435221 289859659 580611604 793019775 399626554 146087157 80151511 513301545 927386867 545407204 114027167 644821335 931603014 307437346 615827409 170298414 8176601 669731854 24166026 374433085 587810342 914056111 403953686 468544049 71613381 221767335 862332741 332477548 139522067 359073278 324875344 177402069 247766944 971248379 928785246 455214903 76764091 182244725 200838457 666836259 918103722 999696232 848716277 538969447 265968382 504479434 380070725 838835362 985726223 377101817 735572516 438194995 405853781 788793078 11526428 118432085 777674401 800692061 336765282 201565992 612131618 917363202 211695060 367447903 97855574 615199703 629112381 720029589 574688022 624286343 229146288 144885324 740013565 384415036 910330620 466000447 353897585 544944327 390672354 795811577 471371458 682782196 648430633 812534566 282980900 602190844 907406895 481256843 133106167 684798660 310231812 765098903 576533309 387018257 670554727 551782200 711613450 410452155 136963817 150307897 887525274 943503595 288734013 959158208 589389592 729074753 85157321 125035303 648911435 878793850 308038582 870239040 382839863 546975191 786583381 672030668 944565869 363927713 741970296 150107839 594757634 264382603 623737328 593339887 467065506 696187982 618869118 583437588 203942613 486342923 523293055 421958200 326566479 479090741 41951377 88421386 862447355 718461376 364357697 11455338 624353107 130776466 210087383 830764406 603294542 204682197 438461285 482918629 447977203 754324282 690428904 638008731 914519732 374558472 313634500 751050058 720490878 667437782 386403867 528376032 153784703 509768543 335834679 872724023 428454286 679559681 683129184 396459595 866992243 198231000 105111828 274629348 543376322 270714401 832096063 976047536 78392755 2362910 671963841 100680786 224454607 879631197 380930516 810561167 567860110 192973830 506231224 845075083 747148138 59414969 787584046 103571051 640756502 726132794 679227313 880010380 688397577 966371862 882899641 644730599 811358699 817250729 43464182 73551007 108688363 674602519 250568318 465786234 172358983 754234664 583816046 404076645 452272509 834452352 5266625 455664553 535722775 349950591 126212506 46003018 221975435 278320090 787253287 312022019 314293422 717361048 93749026 485499361 845779665 603652969 512305819 858981724 45243462 826452930 907795591 964810236 963698754 85779492 42127850 592277841 719472993 144473711 593645847 743803577 328232738 662627038 167738061 702565915 26314821 382558889 511590658 446591823 230573299 781642760 396198386 106063944 640120934 583393662 396738673 103150064 342529291 426254464 537117796 920777798 685084592 693517424 207435689 11845142 828250007 636880433 577326959 725531288 27642924 792674990 691499207 964676683 74793978 107690117 732437711 817089305 464186706 390379337 228153356 651378236 649921094 922862038 256453332 678790611 527528976 103956818 608955902 605985461 322077244 678597012 852035221 311560247 623969091 849773621 600408964 239456854 670794590 126015030 397890472 848091232 398086886 46506145 228059566 929685458 710424810 573354125 78448756 802145729 697021922 345298237 144546391 449805012 449643964 191012035 787586529 212865551 714025316 772482801 11211872 690016893 749825476 358656338 389059988 71006002 746314381 310798056 319105082 291421069 981226517 978850323 934906821 517082903 245450519 134445922 259794509 75393111 104445453 934140581 639552016 528249334 799722289 603426984 519972470 841646968 506862246 710924096 45579327 132202077 108596838 430365376 370667751 304405089 599103078 879364813 623926682 427497383 582845799 934988017 893066253 576220729 326504925 827129585 113655972 953099373 282407085 849907298 14382827 429261333 461713979 203113965 464729777 583684576 763660929 796915735 471227092 869922100 280318180 142621336 932629651 742172649 214631537 486718037 378874007 49724711 617508132 986865083 154338297 236622169 655334805 621902998 607425339 503551103 608644103 798241396 432802840 375888459 69607428 405507762 989211123 315845630 538821482 336538159 689315473 298242849 559479024 841842428 597256230 735582894 557561541 179005658 165509844 236248696 796266658 884359337 756698651 754324891 714988308 392083370 466338772 823665863 101668995 225773012 411067291 338554994 441821478 45338820 470582263 897121514 692324108 872528080 231254910 945535611 952513998 514288832 864217680 291183054 647609677 27928850 984451934 374442332 147316810 925508631 467081459 894621366 482558261 385294146 482294604 822140159 429805679 243797663 481875039 48871541 119999590 644516638 682114292 879368439 514092005 866900457 513254842 593873844 655650674 126850201 490171819 15015188 64548986 722488522 131112110 980775107 802626719 117562656 738623886 612375221 646086865 842127189 588010169 895350874 404322331 128417948 727455071 464883034 909736062 368970651 95308415 261853209 190864510 363101045 635938830 22527288 800952888 52417770 456947163 211265467 407809014 2830389 346753015 275864857 642280523 16533024 541562194 446705447 348142376 216457359 967897024 815475969 305473363 744712670 791937135 489512150 690788944 57599892 608925805 998868442 286755895 489363669 246271588 257619041 433292752 517922096 316824018 41796417 445147193 120411504 858560682 382130950 351861338 333629048 636172093 20165517 704399239 378079956 572388022 234299018 86010550 178423991 442124199 341593580 821109463 231424831 169075810 848684424 13165601 789153042 911558238 364131510 825167442 667339938 196643375 856568218 275203826 810268001 176028544 527724256 777845441 991233920 227257673 410836582 258398049 613686184 442926480 353634092 731480866 418940252 166543031 896382129 299904147 854774316 79901421 212482270 57857599 469260020 556559221 643230817 453047730 820363286 927412733 620120891 246239431 148466571 220528556 312644241 638179529 366362421 741426987 300607900 527888838 641173568 581733436 648689782 669107364 219599080 969219395 95567032 315771940 415706127 130911849 612600184 950681258 429767554 721337956 678732407 687283467 893901124 583700861 291734990 614798248 201799932 138835234 574898455 263332536 494691287 13116527 320331891 877716237 330231307 728069125 76904583 867575957 542872797 550885347 541697440 200141923 890194703 520759844 512523987 927299675 874363740 10842786 753760779 131491141 981829153 899085728 60493771 906590337 810936293 334137558 106837621 279585977 760671082 514330342 763235782 386159011 154531032 250004874 809809271 69512542 133018247 823877179 624719383 73042857 403846391 413696160 745174707 694352511 759045164 802447237 471785637 354793770 130379364 814240776 213032593 672323737 947402437 632705479 279303062 307931585 907650179 89109826 850705983 261396063 340179225 607409773 718486237 251755086 549413665 816003112 137950732 620750540 593204428 597719305 259087727 112443525 509613761 119588344 749373268 896434164 633157895 302404140 207112219 854777847 742878190 507845296 413551003 304362461 650578707 219676495 549877076 521761721 889934537 187007513 89358313 196834116 567056546 336106095 7823342 518023007 814121035 400505967 261278859 158360383 495837738 72547779 888276557 618164144 420574711 417182437 661321136 883390976 967742669 969371040 487808376 159612351 601703379 33474598 728421249 155518932 187910039 241474585 400385062 571271572 216934340 21415779 147106346 547598915 936052732 240823680 662388069 356479432 601768304 632285334 551884784 994497374 308729311 737930332 438488879 616699363 99533054 303047471 378384752 322791123 999918357 66280924 544427734 76213382 33980770 987772795 500979764 681600935 487983072 119714941 867303168 765595581 583156971 947003538 790967831 274757324 979606663 5218227 837363520 364641773 511792934 9900770 987187463 860790592 847832064 436550313 126976415 376118108 928737767 38263271 758345591 955148634 622918698 632294294 687413639 533041629 308314394 723273749 330588245 266796630 154090029 898904920 183267518 982401918 759453221 765887641 860148225 541112262 50626943 88220509 47568751 45967080 929335336 572823488 509009018 155826132 726053992 591832802 563230806 298492498 64286453 394839015 776554786 585203543 190922744 588707913 944729034 719260524 120692606 501040183 194981660 933783247 871188664 774733195 306834506 22448643 803834978 287523831 681276629 219117940 215163419 61006102 592852569 133159322 393518909 775435149 857886810 390791942 570054551 356692506 960557703 111794247 288696935 793687878 541600887 651263660 491347933 8232925 917752876 451209954 141187994 401600562 644571388 324175436 63765957 948755392 998921723 644040875 969881278 890450699 619682769 51090103 113085872 890360452 992728322 318230925 740907235 967408352 257979646 959633364 177115664 696212735 525769092 414838262 811154286 741200366 524612744 118456809 208251238 841784559 997957494 468892502 636200615 652164205 133381766 594005727 39188389 457555080 31514387 371679606 30477912 626009018 394554708 726743524 512456588 63532396 785602479 949705408 389629864 537711581 64135515 393731752 145026599 280992623 751198442 878498098 688864826 754985716 423902868 517959266 970868846 843381135 321575920 779338510 750089063 814259950 22323963 550699107 42497935 124621407 695807734 939600249 305099754 114418126 259863999 188520578 123907605 802004796 809919492 478522162 991856033 216762456 240467802 916352661 775383712 220272063 147337290 222780132 299035628 369138215 881429093 772261877 519704808 323101406 872686575 674595408 405539164 402359697 413411367 383584900 875163343 705053548 120155052 645634335 612888841 678196062 61822596 933723572 977634993 685099463 199636156 709772564 761560390 412795472 847893816 442970872 82829893 925658870 39380613 9495823 886131804 727266932 447532165 848535639 138627978 352972902 585978968 621995454 949527937 618627072 878461242 540492824 682369186 403470477 250978216 155491681 616154813 692499488 546161366 949783979 917452027 485524808 293134659 863842991 890801858 233171995 104895602 429681055 761613787 260412212 602706791 610511429 776299816 176081465 420750457 972716937 418178679 793155464 937226926 814764839 597232460 116989992 449625934 819986118 182973946 285546845 523945485 791903613 593371410 664367419 121255111 138201842 421935536 769924953 621757444 588923267 611083448 225009474 305522978 425519617 795066094 188447024 480950742 907390176 397076084 756693780 434837684 546980317 421452637 37638592 305579857 636464696 340944886 488094665 924823271 117928203 600726265 642299861 871564355 538896647 899031853 395300085 541757025 977855090 266516680 567043776 497584369 851703090 984086808 96217641 404529876 988391643 510332848 476498283 354786717 837330146 505525696 529034078 601060811 725112085 865893554 147798094 25763841 765538537 193040744 412415686 278236936 589525235 935658735 754159711 684586277 252884978 586315102 707241236 221758341 798412453 32194696 312242467 608704058 893246394 722973065 683518591 101763958 478192406 619694249 97696680 166044915 203954503 139834288 745416515 943248794 370292678 477405692 596153500 609280153 642271407 745060462 924196950 190092188 654685780 984496451 824687920 362986834 604298226 481700104 716546141 304321575 149842039 443688272 244739790 84946499 872287618 344435159 371044511 246449712 354458476 522365010 166026116 383637791 292010151 833172319 420208849 309444506 433228831 489693898 976424983 382356899 396108625 300126364 196874171 29417847 282625543 794984067 915981522 708758433 202413917 995460449 148723046 228044451 764618395 344554578 713766951 337972693 312331462 688254671 763790168 155948176 211971571 620799085 875974080 300095439 986986174 691837786 998826375 854134256 796084867 718486574 218412015 751238224 3497350 802448929 560143116 977658283 233128175 799611492 506605094 301166829 624655584 98339856 115814000 423702 276124006 147657689 159786574 414468250 14923972 377454891 305793454 445399775 79709456 110461535 61274824 682684599 112641637 991365084 917586076 99416185 237914693 159510264 149793594 984134506 572572539 437840245 344641418 484886891 914250167 334211581 708164911 924204679 630331529 260834255 989931137 424287833 72742253 218438329 524713041 814837606 493797858 195401691 888057021 935090014 297548902 9491778 605429906 822335207 483394794 956118458 763039761 610928073 333992860 772064689 479806571 887096460 295018640 594846836 829423778 284081598 161471278 902308757 773628159 237702036 340719544 688088641 205183141 16592328 72085618 164078801 908836689 767950999 381167733 753922361 434995657 227010264 921918387 248869909 743583560 530555185 954127043 32428041 453198997 138041863 823454230 7961108 125891403 49257741 724432019 272869943 362752102 575444104 937910856 293193685 487173464 117270684 874335183 814707853 638302177 975056193 551660079 832525509 544154018 793377256 125320172 700307495 253890409 930539742 313199990 282179341 890024309 415269689 128727731 932610973 547979621 148393443 977071426 844870590 47879129 620239122 591281644 152619144 33792553 404257694 810598380 571142582 25048769 726780727 386999938 517260562 181266752 219731836 811063533 300823741 829451809 560126095 13388240 131927421 24686389 367190447 92683139 236158512 366253480 208831339 129817065 475398283 513505941 571554402 574792134 794961499 917330776 234969300 541143564 15084372 793122841 578920378 442803398 916345247 190882420 589960573 377521884 528972921 23242796 789016252 315282069 850621049 299131108 327529535 133873181 237999475 503736165 968329001 495556987 748254816 459210825 460196227 184668719 952169736 914730093 62736708 772646043 973740974 276725220 61143184 577495965 586579477 744287904 607588472 770584716 28161031 179376770 274317123 55328291 750919093 163238938 621832662 658835876 17868056 191153223 930397707 320217546 214063586 547176399 314313952 293219277 116641288 99812903 643785519 510480531 391485714 547801157 239540069 679968040 572017173 323400775 165139477 595764714 854186245 334014654 464103408 924548585 403166570 25756382 601330206 118786318 495887483 339528827 69981456 8544927 151176690 456048 415806749 45518585 821544566 533441041 92379555 540039850 441177667 184805908 762069247 113482687 265235772 214956390 989949125 455412700 980861630 779080828 845072044 17181272 378282470 568908582 792809655 629471659 931412802 738010682 96211996 762860361 712076812 99742498 249453245 358111019 557787206 41068029 499113231 678426325 773394183 687290659 231877877 335744618 534858349 425981822 889060580 726060364 172429097 14033391 514567636 84040123 585159673 710978186 809310729 590470458 879678991 198227605 594930882 543738551 858603763 723887853 238784769 750545101 387067076 86537362 566695575 652092083 841697657 577169695 461564538 427677832 748549778 819977241 158399887 642593860 337602964 934769873 783773228 620077844 766671221 500666086 353322477 729216298 743329649 184186684 222384909 417891124 706805508 862359599 645590384 219917517 835322658 191250397 654433679 897368195 252220646 892884871 591185579 934139099 943962456 889740934 517974515 575042040 560280128 205377602 273184855 943274175 284740086 808825666 279419371 836333885 204461574 472674682 74798409 34900900 792536485 241855950 324428399 161241868 252942044 870053388 506448429 584662145 456131199 37554597 244674319 703759686 949919661 702239106 397438126 562830747 905554463 592255716 724060555 62436281 672558456 632279713 969084115 538210545 638031423 841218467 844835492 889968994 900152280 326214131 245618383 267181113 675632285 786047282 671784488 457141602 509117506 369081411 61028119 60120188 801335173 745652256 567632518 776083520 368262559 987642486 301858411 301825061 681479639 742751307 97119926 352640188 954397955 821368264 823012405 515927874 203035870 184501455 94001910 667636297 591324023 972314450 659553527 497101159 858906200 643996829 734439107 461832520 18627977 426367968 41942809 5060635 562404827 28506606 4358193 342446466 839148649 287024184 124762350 920269897 216579932 72571491 169132730 586707732 780511997 157931614 215758619 34437836 836605379 159946841 841603415 183887669 781404160 955110373 207784766 442681134 519309171 226935742 487249947 820658470 762997762 737421916 432403108 319092511 194599152 407166729 236810255 454342800 174291692 538492242 25753928 740972718 219717989 672897106 805991814 503478397 15287061 657202669 810525550 426922189 483199105 314439420 219215455 362181293 943131608 428061830 57048282 273061399 981130881 999824418 255225956 188978779 297210201 268321468 742556315 230574965 491714884 603067079 112676350 478570618 696866572 803410415 833482398 397079411 10799523 394253514 629269246 257491394 629526159 726650073 788322424 385914943 529179860 396633510 357777458 423095907 549693867 70845045 723459376 696724257 403733320 685589836 516814928 312033740 308328624 560677243 9504442 10221447 664261491 33626525 311867919 503966525 162254196 979613956 970124256 491419939 415912325 698245578 16358125 583341576 698606767 290625338 497899567 766279090 247380176 404133268 979366322 60399764 625158882 767264788 910729817 689270754 879809667 517332334 501481885 370650590 43757819 822781445 418226000 149515777 653032435 813916517 34774193 274486467 753599272 505424799 68398373 795513688 107254607 903686497 369708512 441623217 712539319 554880124 755430860 447929028 336005033 497249049 450736368 650143474 401309164 498162953 879999026 23802038 708788564 505072236 967033192 123239969 846437557 101112755 532513739 746466101 570696865 599674874 316156206 478143950 639166931 137266607 821708849 758347903 367042748 292016536 42022075 812735192 427914318 415923499 302286967 290166344 194604753 786691091 236129039 710896684 71897834 863991927 75326275 437298126 103177678 349377840 652650902 291593087 7053978 114201793 738697577 154214705 483487400 403748332 576763429 269588687 38780565 760632742 167370326 380513427 584962601 748423401 430702539 810878981 108770032 220217454 227734488 263569023 628817445 90883407 490106710 30953941 616436524 640788695 759057367 770795188 821413760 879064494 600339835 547271634 867759136 139728542 303713403 325109758 978809212 960428995 641454420 731664422 115648700 848757061 875795424 637854548 770860420 547672152 388311633 93505697 586463301 546861231 243735001 642833802 623670804 76152799 83960778 655499538 391831580 362335322 543536651 606214296 128452603 535610526 230309758 935201817 801536929 212870173 893007342 805196887 175249054 693876442 257907437 260854732 579747671 898832677 471587043 682115893 508394493 78100903 232530883 788419619 511878216 630458695 187974345 287862445 223495586 177960720 550449470 328915342 546804850 95028614 352958622 101682250 254640611 610144616 99582343 418930769 991391367 386263313 246785217 447287766 927495006 398431934 900768631 863546919 989593287 796831938 67061252 691308889 914553126 525268871 742414890 459788454 635912398 482450337 36480850 81471348 463199764 392061231 304150624 878840818 291525977 6013498 14505734 68144965 698352855 581214155 444419694 72623403 729788951 619297088 689363862 307154945 45532914 854326446 704118056 434116188 152205385 996343469 993885654 192963689 157646475 194378781 849218389 559025152 854867117 341962389 613771930 553560433 736219233 460995905 759562940 53659873 644271237 566776083 549468150 112361663 707574014 133457096 954880766 158597315 324212394 218875486 811870635 546711223 650675576 633858681 342875914 331684899 350925875 146639951 378756319 562965194 400446948 141961183 26715250 583526277 561072872 794764096 594799150 127517445 732347973 808656973 680621558 719136020 396425885 891248258 967417163 67394243 540655510 932033116 281198008 209401440 737472486 168824005 231787934 89039850 749206477 769465381 249737151 640688661 814840661 445435014 65392172 873609997 128130527 637227301 455742107 488995868 770415996 563602072 473151396 638275365 417139013 604823312 961913058 322128354 599357656 981178012 688666412 535720061 830888190 443844154 935636357 682697704 794673586 94801289 539179619 486087085 648639159 288432211 932296711 978646632 444959757 476701419 126962076 545562099 380140692 657679299 205915241 631992454 606925395 38269443 795265688 349592466 362879909 845630875 702694064 217315295 234575806 731760626 334251993 999753348 148434772 665576741 981249221 315440276 148529780 665710837 861774554 666341741 680588284 66582362 38543329 706959821 536389403 693550289 114037074 185918222 389554557 902964914 696037793 689524051 392718210 916570316 243532700 949553258 342600253 703024078 556506833 176116263 535252729 956073713 96892647 291502854 443006387 457309919 385057349 428041599 916764620 361143044 932314969 552028071 507357262 53437194 304419895 788092055 743661503 178963669 765237447 924143329 354321320 686597297 856993423 700276301 291051351 553922130 118032629 174329123 749266990 187003220 732851390 231781749 500565798 123338513 100189947 196195662 645286838 318820063 678603992 358938362 452480923 534560280 683740206 236019083 215560278 832427601 389005770 902441907 778488678 407777970 565753038 604400571 458276698 151164648 681282305 920655919 278198909 912665568 937781204 156199605 11142736 85396997 598508816 130376338 449590184 725394955 507498052 217918956 450050551 520872390 26642682 481547188 820300121 649171867 285225574 9409477 883962760 708385977 224210173 635849022 987018064 858650369 323988413 761332671 247365280 583863575 771040366 96836978 517259373 194851137 869221397 868590229 629670027 818486315 197304225 889456207 338735692 802980772 122237426 551777513 934484808 809918637 495455452 829248813 33323481 316227031 884200985 597026395 949199864 7814243 974500200 227880182 111279128 836264489 25013959 130267050 975685064 615727381 630339348 656011721 247662912 26903766 911897269 300729982 634879840 516362123 245928637 386495037 179382994 193443436 755611610 376793322 731392206 14963392 110659767 776927039 97262539 302155715 116995025 556215316 749803958 486254864 298298947 464550638 922316436 657902580 525073841 954727034 981986545 402378812 126079119 455998632 702937956 227574223 488244202 153441152 403713416 982799101 497913105 787262217 678155614 93042781 10003558 189730519 925733644 297923769 579534177 668157344 116335008 300771997 989709743 420583949 611555310 367588887 120441724 525865439 719109840 227910318 728824139 422162968 836966560 343440886 231348782 868104782 145214083 902134260 260420260 438095250 490374890 683853277 914017976 405933421 328156808 947007224 223494640 248424487 707448411 883356135 270804169 34527417 703775716 235582042 960738355 834547638 839318910 649055049 745153972 165639046 663745627 851998059 763019818 406287698 211287707 861930126 523017577 449719892 939866188 906792936 173559584 14053579 765456671 723239380 443343555 208626285 392228445 829511788 283180653 864336451 590091720 400299035 759483041 896539282 867506748 15625824 250054630 474832119 411601417 987028629 129738602 440921625 602697262 401580092 464543211 13277278 31182288 431055459 674009142 873707456 264899776 517893671 147674647 580275587 80958278 260786150 427040406 36975181 885107063 389419441 732707666 887765982 105211492 218792282 420060856 998542703 669421210 244316733 728471603 499944737 126425347 183876928 488441693 14993512 940009329 535418107 323846003 600193609 781228967 46953315 670502172 906317173 30783054 686853981 868335678 816744049 321864186 257979069 5772635 147036091 651612815 173987097 598939969 746693503 993092079 357410332 454291085 601680267 718344355 995022158 807300286 790418621 908077196 782261983 753407602 275417493 155668179 434057807 54614518 223191296 815461690 185149720 39257804 387421440 167414804 465353166 697792327 60099718 942411748 240000247 643222748 791523550 455993599 209237588 35870270 63277167 476055254 419530978 688086256 276993963 823040614 350179988 456148484 446278920 927705531 64244590 975555104 964046409 76929535 137911686 578934174 500351755 133967324 546376201 740283735 306604103 842298060 578736618 544295917 795807966 777656161 458440051 139164248 975131556 333440019 244512890 134760560 581738173 714873933 654931071 857533938 886332598 508271581 750401322 216614337 638866551 805353227 165528871 774410957 263904530 993484257 967500944 653844434 978959242 183084614 496376253 463024106 26417703 792810055 619713021 542851310 165028991 576960294 507758384 322297085 92280283 609506385 67795769 691075113 21944061 796716848 350636941 611145247 326508470 567139638 77839381 552749481 25090096 17281979 820859707 635240801 7472119 1061849 776371799 305868733 808424367 477127950 959013663 5734505 664857441 747751544 785777160 386080404 851022809 234934848 887495755 554224052 148821349 248962491 225350951 966777999 273378269 94883745 338587280 601691278 837496699 103655604 140764506 264811271 916042174 996633787 80767391 777311027 329324037 108687446 168224177 473224199 632168168 598923008 813970004 234644528 31266350 778093763 327995153 92910356 645468163 469210970 554824913 60857927 611303437 882308173 782315743 123268356 92918835 178055763 341208325 477170552 286945353 105692668 330987789 472636928 782969617 505140454 637363920 618536410 205841043 469120336 697376398 604891575 692323205 850268741 584125577 176672835 585939270 678294027 935452741 612668385 414414363 830786453 157381210 552520755 922402141 85344581 881002919 623193875 747828042 681968720 335457541 213374759 308985526 646025232 281469923 208404340 734549294 372760773 809018034 296108382 405030648 214548369 284371347 297748846 556698317 668026906 535970898 58685722 262939887 60770015 645625415 44390946 295158470 945333577 277154075 486291945 686525581 691737841 28192011 669083556 442909747 358525485 391716119 911835532 201901163 821978153 39603372 398448275 897182467 947136977 948970922 971901085 524401774 431789338 936440778 653059134 998062094 200011177 203938158 526097511 690440961 738050353 774732294 481569812 177075145 520831148 580135178 239776550 200014374 493404612 671866 268583903 192137134 903978551 413591625 984490454 177779265 480100046 521421288 848076359 560766644 490598571 967011566 10223065 434948854 963195025 746131692 543480970 247154824 619650707 71901806 546403241 501881550 972492849 715633439 554732998 883096605 47653348 456478088 814654383 974574892 702623219 943635936 813210129 912323689 303265902 6128212 775274000 826302955 589727117 666415079 257778459 12520553 137821837 235700965 84532752 636847793 479774465 733096794 39247793 494500305 34321566 24547843 758527744 449067027 200843934 351365241 536964138 792704825 558509400 980544834 817370079 797178618 229169697 365284618 923718402 24149555 548136495 531165990 598842795 824165043 647115270 5976375 595797883 526108376 36375354 769797530 205593776 498418585 26683683 774277258 354119359 57519266 167029864 643261449 75830463 416156790 112984728 41871050 343270417 88279146 32847057 174337573 395882649 720243895 50747436 168936289 455066622 241715495 268586691 492939656 877323800 331880630 578786711 155330048 128276190 1745847 656642857 475485564 955361590 379178635 513505628 189426098 877739352 227925737 849857258 882406325 565450097 987148449 780985954 221075351 56852977 91450380 42942092 901041125 104138770 588840477 505636141 707092693 948476050 512849276 120996487 813282881 83812884 833786262 175839396 679055494 420597565 687568405 609585548 431286786 428512335 2358638 150397917 644151368 683597477 788569573 788769650 235676655 165070851 343861456 132065632 94797820 19996484 783067081 753186745 15962031 475014393 579714759 161571273 717375421 619719661 345279137 708515269 446218705 667535565 163658277 461109033 677505008 340037336 943252504 242948950 961564104 128268262 640302277 748521 760751871 87507901 247441317 888839278 480216402 125376267 69157903 474638097 54819896 997963846 286723410 86806926 527461091 116442664 129595422 35902487 599721028 125743857 613054137 326745898 861383438 180283023 245689068 970086745 361475799 823372976 261148669 934036789 681185703 581168851 19995277 577526134 494402083 730574171 501184475 665236128 301524539 75257342 298800897 894145149 705986101 845762209 592820226 608444858 974631108 323734253 976149562 4382344 242179499 897638810 340199193 386208744 852336250 710407036 956672656 110540664 279752506 401019257 83438754 726068091 42829649 356517088 341582159 486701874 431632462 281135907 712240695 782320612 677198769 590705478 840703080 478347857 258583680 194996004 804273206 4323756 681292279 641243796 491449733 158821642 363007636 922031315 534991284 239472024 842641117 672573241 380352667 112751618 539410735 232117166 109088701 441009720 970761600 621556410 607931859 116736562 631710527 151428557 784020308 43074741 782150243 755532041 417690847 31582685 555815659 844275385 392120646 767542213 993111895 793504532 499933290 96116268 425546343 86914718 883417659 273041419 354393365 442799083 486513987 154125025 444481807 688257388 154151847 270647202 452688858 891146336 624017849 775640753 856559942 508480672 157727777 653378693 438118868 763039735 122093781 763139150 610102912 983146556 468923987 692816436 142412850 154173302 149252247 120980242 413657333 528421247 883373265 633618435 477178979 869080995 173785886 600280051 377890493 448808654 883514255 179727995 299285051 476427762 824168313 218565265 179625032 667449658 504288297 73488402 989049255 12005848 989674944 384921777 674968575 73585256 305780740 197244243 646784733 461019105 664197168 690227144 780363949 804832618 611509560 895242448 695461773 470432021 931869232 899144169 516550010 886637827 408321417 63246194 310526186 6272491 265554872 115205459 896580813 9758943 228036121 970648630 463087780 816327626 854323975 878621148 819894213 632242958 861380438 980004773 83893843 574443095 511087616 854659641 986664399 182743995 13972565 206934451 542140504 86219194 154413237 476160649 496304542 452833509 935802349 237358967 521273728 927416662 353775186 743330542 177440820 638496511 189496108 362929909 670908632 691256185 995580053 69021763 73558633 318078357 28936935 409071771 546652105 455047053 140158147 920218584 34144610 982406827 481124230 270270833 83929434 47105623 841593534 120402989 703541787 533467663 154073077 211190530 606851027 128535064 711745309 681170908 427336809 264490758 425862375 853022534 929390156 646458463 43474790 334837835 423535170 870092094 840751127 576581972 673675987 295880807 316506835 285764092 100543106 204093946 271435381 541994952 802839399 419664047 498093385 960489076 867055255 517039069 653379983 968339344 366161173 683787556 656849160 414087339 244115387 45735076 998296161 743996825 541970279 623579290 280548825 972050538 489699882 639931121 351387965 39119509 53177974 37714811 794579859 905119655 251222438 572179969 566316991 442809847 266930163 366928348 660010668 102699239 883545219 777560980 245429303 449161308 338022784 212729256 747300294 605939616 478379306 540285289 34590201 810548119 983659320 634286715 429500575 144717343 398045130 402059178 912685942 583500593 348250098 783140376 226535427 658056876 394007727 832263530 918952369 365852801 355618662 592435454 242592547 73554792 174395953 698092371 587020962 401062139 970339387 40582118 597633864 653264467 671882100 67556907 275249617 255797009 931390716 984764879 926676279 788746415 359140348 649610193 752401322 217853729 383025450 675821946 969089148 733651110 251434721 489562430 43685184 555995796 934752816 383587856 940666672 325686911 772931191 345108627 234860154 969701306 25412011 31135602 626731945 814552513 793923402 704896661 791189562 290171186 519828456 804316388 808218006 713349508 679496673 671895862 200453807 639833545 862098244 414233177 214071353 147270991 191965953 759626295 917983338 834624183 317058042 389896777 65752804 264707310 302710637 245121477 569067767 250956052 488841662 180249495 143973828 644160097 268692371 436432761 490184103 386433877 340774405 751572535 211510968 534890028 234484718 392694901 119964676 200398768 554991571 82424336 336041399 549798968 427163125 488448188 77730602 736130688 796092432 421013022 231068180 283005595 544519162 347336008 582922237 306484305 181924260 658166771 217125167 475370353 133737980 656891311 463358862 45338241 425294458 44653398 949404928 226171533 933825874 551307819 65885362 650415801 792990120 919611811 410499540 436052637 683711608 823063726 50952768 942876971 387454717 565432906 607973656 298829260 984612246 952009913 41146687 137823120 539797366 568239456 278433902 378739188 469338943 716288874 28830024 829556014 537067983 797966776 785546579 360075511 592858203 161737655 297286076 631188620 143841494 823142291 33120114 472771007 273388162 177014082 495461592 635010026 97739791 666303018 126917120 824427564 698252961 143242142 384921658 373778124 565734283 695570465 405516044 433983562 932907114 865760609 680747243 682922098 598139870 392451676 212244768 92518027 830296672 774696686 390931164 34245298 928641751 459030416 385880971 532560247 85442110 849569018 934524061 900377134 374446328 177987598 572744356 616640915 891270466 727621383 5128955 676369661 111955157 687822039 17890952 406341062 663858577 241175055 161488765 478962559 269101023 261645740 941169432 535539835 739004633 433984037 933204587 790706771 738127346 477421301 957507844 291592641 143388883 904022621 577335859 184834623 135322449 530685546 831094374 980103197 685733966 834859128 78788541 896508280 181921123 933728835 304341930 648723342 648753314 975143098 13088990 958923909 813471781 140026977 381544543 368282144 494039573 79116187 202254925 916656298 387279595 922749309 720580209 99839807 314511181 274504311 13562415 272312147 239613297 187513230 715916016 578169108 727340521 22578742 430088817 839225232 944271341 710951156 241761137 513733955 499484578 979268988 635921739 711588019 132169550 460334118 294187116 243161114 839113671 96998803 646572309 983361584 175422314 266814078 855673396 51952446 968823448 863620385 803952102 869693524 464742324 366450113 25074304 31995437 135092166 456029297 294848581 349900290 212963149 786024326 326071039 255788483 810316312 655345935 273672632 485838546 161479285 786305354 617668645 638354572 334239114 340732823 86494395 255461945 649400782 697050010 971803929 98758666 587564084 478925486 695771395 639323339 830003327 925905435 213595659 167672463 58286806 559915490 113609537 774777022 565207753 606352416 980867690 87157963 363020859 596437653 977324959 459497853 10159051 323467008 744448958 153939751 662815976 713992503 910920052 745978260 613633762 526701764 70771835 143568992 859127227 473263222 880559432 818826042 606481154 139390710 867038851 70179348 769159273 812235913 989811931 481979689 476113556 53833402 684953188 636521127 933892103 371792249 274121486 795939061 305833736 386828801 765363607 803317550 110184245 935224842 115550028 332735259 999359163 34751533 133895922 874121147 157694916 119591336 519030305 771223535 127952226 828289584 10996525 245078226 847730174 995663637 330284643 64000009 439084750 378306138 22046382 216554571 28130775 381817787 77257417 664186720 168874298 517727954 778592777 414197764 616082139 460587647 83796217 936383647 511396173 909199775 223492272 364410965 469983506 564308208 986828025 286273405 450302613 1860227 303352689 997558799 354358030 179173968 686857168 581208763 491303651 109874256 50690865 362354503 974385927 721694441 401703422 256417532 962361563 930432074 687325130 122719151 541410730 829043976 714930982 390476928 658132192 987858062 53400405 690706038 345089022 757474579 422348197 801951732 776696123 523418213 498352999 212297179 896169941 930975512 217864194 540579590 825332692 653951221 24806164 366214429 903889261 290903867 301847035 21721223 935081583 482523134 657116677 114622553 103265587 175518048 181267774 874825185 233070534 436923493 503855238 130954028 838529136 551786792 926125764 55653703 21124629 173861958 111213085 800049585 343738939 358977515 828390183 72511213 332631726 242791507 758380975 662509543 727614667 512803779 626894494 445097901 627178450 510107795 616780069 739691790 584268349 753157201 9939485 923263117 135090870 945429572 446547749 794028191 571643142 306300637 120198678 496921182 124819962 18389961 595536669 181070888 16801721 934137817 543347701 712108679 539324118 365100196 379305593 820182128 27482675 193916912 168700723 393791309 645834190 33027609 976840080 370994091 685792712 346070465 926517654 468981917 441822497 462348542 369131433 207398289 431091095 428823547 609016803 755800294 353137414 847014672 936312608 642094336 447651325 342034456 98480639 821285661 599628436 947515365 478816525 439202741 360832690 463306358 343902249 529753280 313236489 557966190 162194542 621712099 400508751 39829057 467671444 228545604 677571171 106939092 730490435 650899769 176286181 978371416 30186688 210804233 586545738 657807987 895937776 181191206 621803555 74271215 226186418 597346803 486911028 594391023 345899682 162258203 206892172 29220131 838741821 642380442 294177960 627571637 453505476 25571490 930090189 178627772 301311545 604076072 404707864 924213713 612457244 390278621 406534923 742215883 935619399 292695217 360158911 13504604 790778753 373832020 400274372 484327819 22715930 983385948 510645251 630977859 445780787 176930964 991827449 379805079 604514610 265185538 768735012 195031873 919876895 509147649 737186320 545095678 73781710 130205593 910656433 537655720 506838965 477205097 255145576 400417335 964591455 526231029 870494491 622531069 794927538 945086998 470503547 861944361 16471357 543337705 796377263 66365866 85829310 904646584 662380800 194658539 57733316 201850299 515925190 489235358 113432861 471447468 339611460 199864305 43507997 994157014 409059919 613756273 429951136 832582426 82713463 661592790 288459017 92222852 878357973 8028521 189848776 552408352 179419335 76181347 124821471 209915309 328910206 221090273 86297795 765431762 572467753 318253094 52531709 375251384 187234874 994301154 554154579 402227324 75004183 653454240 560695757 720143034 961257986 65540935 857290321 569306540 801844914 364404436 431342953 902778701 71712483 634146093 127170719 627391299 171832863 450264008 869249177 390493698 796867896 20872448 545429413 117757330 347327429 576794174 473994809 722907476 196960331 577033174 761320227 570789654 127752030 127441599 480047254 395225656 196515793 405172497 324975898 805587168 984591803 27278225 319968976 464241579 669414776 32610263 193283634 882920643 423846950 714097282 755083613 20924596 157931652 736470389 388209733 448503705 476082121 953623116 800578706 291936231 839810005 88922313 996099128 472638694 19810827 804513859 121800080 375804802 944274771 452455077 25973680 415266398 130695145 140823886 977670435 376310962 418562401 431281820 498693481 966851979 163639840 350186038 553603471 15441111 249666393 394242030 717796794 425200252 902588891 653298207 208399568 55491270 401364362 581889466 360556993 356247633 53507828 779404784 118960541 376150614 427142687 987438297 301272274 717690638 618517643 908154882 195888459 186163454 860441365 979565360 951025161 338219806 435511186 374749600 696267595 189273609 464164049 19514131 851413920 850624890 433143958 519575562 516270987 860849010 448713304 828078749 417819283 97791745 50663409 430763107 557886357 719282317 146744522 99643574 57313524 750723245 831532376 479921723 315795112 668923816 951251335 200471435 410748851 450938404 805864496 922986217 172891891 599738898 296277956 686372168 534436622 787104526 90702175 150613257 715262084 596406023 995679431 53312708 339405065 672890792 67506877 173339873 797417400 719715049 562901528 912330205 714801946 754730065 605595596 245560291 280780577 830392867 965891734 296167793 629376370 303641133 174219320 164212500 568752744 324784290 373667108 852860346 800865740 462837928 961962362 514192590 408021852 616196641 780276084 685507362 801107951 250324360 259675092 926243792 21941313 975756048 315000728 955749852 867223494 343944122 483352665 567876991 219935333 836439318 566447241 824436250 518365619 268555495 780162955 969604676 569504112 676176847 459371825 328378286 308374731 734665452 562214398 70346567 649670647 318738317 147879475 129467905 30773915 233491720 958477682 847995933 585402774 446708678 352587473 558024675 263011984 834965104 502893620 295891627 4770592 429248299 111645049 842559157 827772372 638973813 601515750 902197291 471691117 334388630 358820374 259442698 182126425 647998592 296882565 179668275 641713103 822543285 108234354 716141438 691078618 227912930 827395295 416593628 345419078 836230477 294839059 975924989 424703980 104533461 275943102 436721360 507756231 414624694 869118556 901201763 774238904 50630703 529749586 810167423 744394307 779570991 162884277 576980982 258697736 454538649 199111766 332736797 705841932 49787747 518812179 10876248 962052790 108150764 790576408 455080002 386307863 614875026 847276029 615263326 287092650 268953037 434443638 586587133 561740600 543337354 456044843 848770050 156578342 642713538 979703793 184479284 929969137 627947659 328671486 975029815 999966145 475781912 159454310 34283970 104106557 256764513 383148612 611200325 688678825 146919141 815027011 451511296 674564968 11737353 427504073 517468103 796496346 575387490 255435288 191245865 205163260 932990618 891298862 772757217 786004274 159771161 46764429 164743091 907932990 536500343 276632887 942778685 467130563 831606695 236745838 503499634 734729708 142437959 845927044 270336520 821174429 880372101 114585814 184950102 464106823 139057825 717506683 43283628 550529094 515184367 782163427 986297889 98082472 328616671 616095728 855331430 31191862 432386928 998976549 722017269 891827737 662383748 273185338 199185909 937419531 12195722 396777165 254593889 28000290 786039378 407493240 60932925 406699347 793606974 917600560 327043467 417556795 878748320 839125279 415512744 794839486 221693185 860147123 391736900 95506200 471964680 549321461 779380310 577489878 384688852 268973636 242196085 137744030 244992272 226154297 477756997 12514285 577134230 43446548 899688391 89163981 846380173 960387941 941913135 414848733 858702074 482586143 561556227 667613514 386309324 456887875 731350495 592336821 72609160 802762179 63069884 931455715 224065471 992897655 846319565 762686777 461694847 73598021 340546472 240767453 760700875 80977985 282039137 899531205 796097650 399848881 335909753 956236862 789785584 283494837 902173759 17115418 838861361 340060583 537463976 5684951 984206387 392996328 855296824 487413033 774705112 136728140 852021342 910715100 947814427 175277428 288250998 476933001 965723156 618560889 806071785 790748426 664807740 707985211 670729848 898219094 371874433 242652486 74163202 986937688 524902680 780110342 708420518 268113597 742058746 349593556 909494172 519505496 918499439 857412194 802405865 604609278 185737273 891966942 656637498 317557782 9383479 246956801 988026047 584731065 836283958 92725022 708628138 977876869 786165615 380428993 909403059 740983695 246908568 438465487 970616872 255742639 725810414 938107732 710506510 483298448 658933030 304511895 165034242 202009977 197863251 380753313 402254669 812112956 264861360 853152533 149545186 258769420 77050338 317381108 156242220 622455886 371891039 50264908 415431512 163781631 224096856 244986205 591833345 94552568 167214908 457121576 437957654 520062547 286734962 688265059 918000220 363079030 848389972 265655728 484674786 57372595 218019869 810967020 851747559 595858285 419192865 356001362 908072969 320438661 614856662 793394090 657261440 97354999 377742392 967018526 372416102 254990558 602094824 18945918 687416069 995133817 768312731 642065391 401772442 364114244 52667077 143341154 17374688 819189039 882648510 801216733 370405525 478866696 540338242 66217813 771021282 145580751 52720231 550615202 369204205 594087477 881902973 975045923 660506709 489399944 396097709 874972600 821579656 197969291 338363038 436473660 924418355 509122386 99383264 633229438 588257985 973587029 98413420 357851885 276142281 537891252 490308561 517257892 235213986 790752712 210032047 44602182 971182899 162174628 171573163 276436043 972123808 877710666 111233016 271906834 553903386 436079937 820563117 242530060 289774600 576630644 603617203 241045194 949012186 324435038 51556856 322960494 548980431 969397904 806077804 134380447 504674912 393863805 505142315 566001581 357516969 104891798 230742592 145175890 40107492 783520117 242428234 994805016 668856511 290780871 460812848 319480082 615884104 819069258 814162754 671601966 161108311 825665416 398763339 811965123 924847488 489625852 116886113 444137972 645750357 294901958 430237747 109392551 600251037 429121570 183464750 632690309 898011713 213293487 717625577 210721305 405796717 486618066 63982029 629705493 187311518 976433639 205238987 570730220 285509845 620880822 228034155 12692953 898190407 19773147 508158633 332570425 294250157 726781607 361311700 957410618 168077334 934399233 441993067 138412458 118567801 222325029 741709199 152421640 626632754 805186657 238292220 349962008 20457420 238868333 257523535 789981060 123792428 694536869 368799320 274793552 240467790 860368846 336922485 151453074 647805520 187424789 461920391 166259987 266885169 23190628 812181728 485901157 904400456 226850932 157544820 672673419 188789316 806256831 768680201 75862757 482768037 320467841 621256886 357509507 221887902 990235839 773108135 550972765 709005729 817221114 249412516 330702866 544456429 922996695 922418492 900858341 971837811 291611868 608278413 397052472 531303094 803970248 292135468 677908240 143849887 767816156 543942962 58214811 322514249 839238354 625088115 928017517 384180510 936497516 573991635 155168777 657310222 369780455 674152974 350974050 894330630 480089594 512601602 757763455 696766516 560178642 484126474 734358100 406780010 362424793 304510577 572987502 966534626 215221369 455679180 657812382 716306126 775867166 702839891 146213149 949349305 987419894 23468561 773823780 523012150 339950010 324799076 494437753 825849257 410413104 271168295 98045389 409317706 601181611 691248846 678168478 859747742 575018895 476819824 315878912 308593117 484991194 943686744 554654149 455611674 932841792 698605180 200051478 937099881 196125694 574301225 629402221 920808051 30157985 682111625 315219694 994259909 442278724 530789606 401541149 680881018 144280850 310243215 356508669 379356938 426575962 211120443 683483616 699058251 680413975 20782498 929683128 566556320 811365262 119597317 643854817 954547937 172906447 640179930 241638113 944183984 640692549 212235085 683267735 802498611 831608768 157349076 145842871 44473514 174202152 402187023 589747661 353947147 151350229 879032180 515657775 881618209 308285047 478602647 355579630 74713448 632091498 255525787 553513815 479739068 606667085 935265449 274617457 935668699 663772656 198850072 253083731 470147962 912817181 1561123 704409150 260345998 318457675 735703171 677881778 530364610 264797688 16423564 169778966 272611088 665845913 160312071 200875009 136440003 661751909 295055393 373055958 281145849 143089024 173222895 970002423 110050812 508097810 333917237 145294811 285474749 718515775 274520485 116328587 768763762 727632321 648364499 760014224 73897208 362089930 262896685 934784494 464030195 53655960 424875867 120793328 996532995 960840926 663508344 967201739 432221575 560681153 538151525 913327783 312347307 525162280 380800710 29362394 695332223 765472431 299305620 716100464 644087721 990799869 254198195 193059391 809030855 163804297 128249141 233719080 804255663 334365710 162784075 242358043 42811225 183453634 276777578 469315815 461357066 891580982 530359505 206620434 890664574 510387350 448697786 430227465 112025511 475731029 900286243 665846966 48581110 406642581 642355605 953751469 405781510 47380966 940203667 597033197 533481533 661770694 996128556 520947408 57361577 560042452 311075820 362438286 643227561 549704632 724561597 694898656 442336944 137900948 463620260 169742012 758590116 603296647 131620507 687362177 552774366 156610587 796584151 388171188 572581142 426644439 884900196 755837383 695665153 181303798 583198111 966000730 929291443 989111370 40255536 760946298 138045323 362864546 691144201 896794332 25595622 540485976 371894581 874586531 350980849 478283513 459484524 102698380 551263554 577583865 196049552 367501353 403515366 743507647 889624344 688477364 478986712 348563970 448008060 439320878 994863376 627832295 686639367 939284089 388710735 776644691 998560149 673447338 767392588 919940609 497216969 54597616 629758485 604543649 757877800 637059502 42233273 903889023 464958259 260706265 946183979 492326563 749308828 664591125 699813161 131870836 450014042 854013129 243262847 280122901 161779863 548306969 546522403 706723743 603450678 978296303 863636644 216620068 580419835 467760472 895739342 446061021 257283376 724021448 736981150 820604726 498521962 905558759 365195825 212798884 512810029 973918639 700780510 22151158 697733140 557758670 981802893 817025530 374022485 223618981 466196574 872025878 973023911 893851987 870838910 315915437 827527079 557741992 908352448 474389263 822180326 382743039 945681346 695412804 356347653 690422387 216656 205596386 751278051 908738603 567709793 710093117 732146696 581407140 936929541 919179119 576499438 237035443 648757409 25690092 148463766 430415974 146067127 135479957 985799688 828714718 221530994 94051164 226467712 740619932 750533407 177075153 295411311 558032687 141298194 411383545 103476165 436875014 89089035 46577905 410754824 321540683 101335189 581299601 11128347 648144868 717679657 772158328 378757472 289744858 542365114 139461684 598385678 84501289 632515697 580845550 284178357 337011894 173345382 601670704 157079625 599005805 473449127 337520508 110132571 218532921 150371168 834101818 881486476 337039173 892013073 727743737 466793903 107569347 396805183 77815740 505858482 247650097 797011001 871626352 661651860 510567128 819289820 171197251 435902089 869311827 661564678 227926879 328609740 230599192 377453237 532097868 40495602 906007010 443745802 655806240 355448176 48232595 174791070 865821990 552118327 254484343 543079653 546295528 1751502 724023010 831063442 829233959 447463531 907498963 479725545 562627401 373246791 928678624 112572307 550476929 517954208 413242123 963570224 500908722 145594852 71660265 255361656 215984448 123201725 34900480 310741389 937758483 519960468 789231069 274402337 299008353 591329953 251420989 866936089 569279528 558029278 870324938 402425012 711738309 887735750 3893091 680313831 328647928 101588537 363022423 493822229 915640280 301165100 950036745 690592122 57426202 684891802 844806296 645709757 832277298 404415557 547327888 563682140 421418777 181010506 648701176 926983136 403000312 902077063 151504861 705932866 752406036 639996061 5631795 44342457 810794852 16445217 815719906 238941405 254173439 821269557 91771632 265766580 489507998 36499488 527503836 701337637 403673336 192428936 671214391 836501621 552736069 351597581 231230215 383529257 17417187 796935224 958175383 359444883 115500302 559160770 480858876 491568665 461020554 333815052 984738580 761293115 310821180 503119682 883583179 107827137 531613067 539133430 193517776 18860358 230495482 727577213 422522481 709875486 112550674 357112829 2055901 767002103 987393834 802923694 58525630 533873106 575483309 768830118 688748581 898070544 45210970 731341405 941671983 955378493 871901413 969330007 927015303 138513320 508105543 957020872 992889769 761957430 774169453 596848158 387681141 181874266 266978224 49587866 973570159 196908762 967506368 320103846 508439715 569462008 457977637 823727043 333810327 696755529 104960955 494077819 516341134 497045082 386221837 928435137 287720552 717445410 752995538 138784429 139204818 787087512 165205676 645301964 994032141 966445325 830714457 763504978 732903651 782879545 886152032 585946567 355282194 318633615 339352772 791210704 220361222 227691671 128616999 593652978 43742536 282979189 330228636 358786123 968694096 633028823 576288433 512016010 616375055 477942568 167935714 291001878 677655104 733401875 556164756 741871656 625113461 125459363 357764041 677413214 579335638 227043847 509214083 859091621 405978249 290684974 634715202 837278177 257777504 494911016 531047631 416095862 695085046 119652231 874337096 334775844 150355999 619295485 503520594 767832569 851576677 124769948 896777273 420828889 349468550 867877165 726339659 105379448 787819371 820018041 236662118 150332957 90985061 412011940 623304848 436768601 422199702 471054462 292973022 208814466 29347643 265775142 753380074 345421101 331938523 465897788 245501582 121412148 820766120 369190970 296563086 818276908 332541419 408610321 688185832 548903137 589698285 815644600 819723725 777892760 551626412 974355408 642334328 18780354 928071399 430395271 791705031 271468221 988142084 17986308 491583053 350383516 583484013 404980924 359347218 997662686 263647895 99819165 528269317 649018147 170381161 412565216 439313836 857125252 134744578 242788268 997073235 766786014 92998620 601189220 742540972 975864132 601129513 976607100 579580475 443868110 587127243 876971836 911376290 699666820 42368043 740568139 555450708 107269483 884916766 795311954 608764172 582864058 629017459 631723843 805922309 117693980 952592313 992036175 221176651 169603454 620515501 128705221 564881133 694429313 441870093 704982304 606480452 481018291 127315988 698807329 545714285 929679057 851538305 486550003 900803003 453548294 789247454 504413209 949473060 608406253 237972886 330856474 447703316 727683574 168221586 12252245 222452074 315262703 647547817 137332911 856618024 487273329 829980858 131314065 541835369 904706901 643071185 832649253 102168279 137502926 93564381 452780377 846073395 970340075 255464806 571950520 238941309 389016095 977357683 257595286 216150280 613697570 746382898 688099708 774056908 865059328 441804281 7180928 811970148 833203956 317034863 756326938 533536411 293069918 878395850 673772916 701107397 414828331 978489226 267295672 653367712 859019547 422034444 252920371 259531880 24082557 729191890 457233176 314254896 857770217 264446244 740638668 280578238 562921208 538883595 343612145 192828440 845493839 869252620 321503571 612882054 324994825 954761668 243552909 419649882 266684843 312776664 45991738 460931915 558041455 175079112 597174872 762355639 264400165 911635211 411101402 289157322 602615146 896214380 422786654 303878427 580247401 974520985 137437808 858269889 666361569 338925707 700815776 285863846 698646272 86615701 142022088 505936650 887110757 618402912 871085386 672782234 48062887 322208208 141595936 883567398 788758756 280238825 1604819 11365099 354102936 309709220 532644733 938384541 952313713 485294487 377724286 258048847 828581859 322533315 366344760 189491152 119624403 518740322 360565719 837601890 406726505 246342006 936463083 661188610 58952829 42764952 958842735 597778879 703915668 924051243 923325245 296785680 707839222 11413949 866659628 47639337 606663892 384399586 310276101 605948030 281733182 981761781 297068734 52775446 269353626 697787698 392112815 627530301 987211270 431632289 514722134 711663628 151394754 576534015 885430464 267941921 217164268 865468941 184317105 93498136 506650440 866427289 476213268 936242389 708890371 632500911 117880914 166219852 196993067 589343526 745249826 614136805 726092757 91473789 303256950 53726872 951314698 465547395 91190530 615623631 955818274 998105977 99706388 524725243 811195521 35738652 663609544 614007356 410827218 52722855 286417747 890649754 721270714 342903412 902456671 61631682 587931702 521097202 995240662 910117073 211826876 113575056 851802569 416279477 139570906 538854474 162045254 757134849 538781544 672056733 621538319 290178995 332494048 134115434 595015819 619905550 516156926 230770012 643911053 412340784 681918252 999087390 744269593 452660734 336627955 658789623 806950071 542581900 74803076 449317588 716224333 761704975 393293138 795236990 573594887 523017006 41299716 232086436 157104620 929519197 862209413 987613556 39270393 102232968 882369780 90457014 841464573 52948264 802305131 91493869 307773379 110515432 216373649 720260278 991024527 976749786 511214813 514512670 978022924 485762926 418440077 4914350 860899322 105583281 769185195 26897192 582307245 619769177 324955781 253934998 905951513 808520147 833720425 903666789 921523236 950636574 991069218 289743213 749458471 161329259 691354302 614029365 943690669 61760091 88139543 70950322 921150472 237144242 389917942 779022589 609080522 166030261 752833565 619231964 651869341 450638884 684590718 145464658 515260387 948890171 573521165 350957446 416228546 893022748 632173258 799786051 638603876 964726101 812988011 160223546 445655055 116970405 177325928 363544715 472387950 498878812 480254082 693549894 473275450 625774808 268373234 812370711 516205677 943047948 152269068 442607622 580190533 940136444 117415844 564805411 746313161 814478176 744267039 332083398 179086005 109858584 687987021 668872492 550191514 174644417 958271542 715746002 485337901 455460686 591565839 468740491 318025004 42775464 736754862 830715152 351389181 562518916 387607897 56192897 658739610 51517246 842897565 73255497 351191266 703873310 215814499 19949490 139319295 15622004 882363576 282232127 89672563 408094557 773574670 644777938 706589738 68984709 43683761 423658101 362877877 957906220 232670380 190716613 61677949 191911740 432522508 115340520 364518812 605371419 702710330 24370551 531905187 204155657 595571182 572009566 458354442 321140523 134177448 246541570 42393880 718327372 717354413 195549218 402018907 89543982 475515528 14649209 513139740 367817892 875131050 205565429 271364580 144331845 742717218 936548507 731492951 931701219 596805789 620942524 165557174 678018847 211638967 785506522 848186350 698554740 183621069 42649684 413806020 712057847 824251658 660649836 519528816 19990574 240390943 381990342 358847389 811500739 636226743 436020043 805960534 664168536 927813978 460277875 667619134 908161550 79454192 904625330 682311293 144803220 918494733 818840421 263298006 350665529 9594817 609613946 977267463 846735547 384143136 890086076 919988165 548037078 344519045 300840211 770006737 420816405 255262955 514644517 405514896 367976123 720374245 524561086 133660387 74785637 806842271 432525254 108826919 758126076 348101905 95841807 796947532 547022323 179691966 284702443 680154160 51868785 703546629 643572338 927689272 50880404 564789840 203999182 797086421 652109668 967192660 690198414 347267395 777157235 887734405 428503357 546200856 309318136 687152182 591053966 161836490 28568464 672923022 371976879 466580523 740619610 406149724 792744026 869733114 503722519 569408438 458453198 910287922 819587996 354532308 132018688 605023534 247314152 639607797 412029531 922131235 959767070 834217943 452265739 390984009 289609120 70890264 622738879 723546901 897477130 880126389 599657767 348322127 649368188 845426264 401989819 165749732 244868524 231609347 423427283 53325774 946209976 512894182 92128817 493603205 855471273 809586102 946706899 876205457 84949119 564471781 320239817 116531385 396899988 953856993 577469161 12341977 514004441 682865650 155715079 202459922 15419460 96817937 705049032 70668552 264882172 121073094 733471340 540504724 231949836 127112898 46607889 736770789 661696744 608992636 634842841 928826033 809205417 610206000 749596365 978904097 717710647 51759950 71042512 628098948 984347117 567229972 164132929 292616080 591870099 99488255 442757457 159952453 961299224 738025093 177535604 203321095 397781424 938238990 577799714 516972185 584710332 914895302 490286232 295597726 163034480 161881036 398190554 410152441 801578254 26161484 24796536 164381838 888947971 832083369 827562652 449348856 353316824 345151626 133648397 331027726 262051894 394372696 560696843 491237407 938471491 592925568 119564002 595247763 800447515 182897327 764223996 621889047 10586516 978624213 683129438 570006808 550141248 619668615 738388635 48824250 584996398 363996482 806131427 869318497 606553646 647800462 48455534 935162759 168050717 260031083 57848288 543660277 197155683 215791493 631234435 818579502 621132069 86691730 653664299 988763258 897736665 834436685 375976145 735829748 986917914 109661751 876159239 690641844 258629775 708055843 944374242 431435338 234174524 871059155 29631806 4275400 826874309 664829410 259160588 95367915 603899049 756923139 367804133 753667779 784713245 33389793 95681304 283519091 823068833 91305261 731633353 610031872 3324896 735477355 666703313 716434519 913709385 718008999 135473938 621405158 964532770 715721825 695084399 308350927 35861702 199691341 368307253 344143809 707798104 523635675 311342032 872406024 450675382 363574965 796145509 834729936 517181937 5995203 550106279 730590992 823677453 902354237 504198240 639729625 135115385 673868339 22879222 221739793 622971730 846543135 527300210 831005959 72846227 454769664 917849836 40314553 156504393 569524713 288113910 156949403 112545594 891303053 603142087 259418898 913898053 478909758 511349222 9467332 855897486 358539285 337460700 166759024 322664215 912300535 838088754 89885524 54953024 907348448 151996145 421521820 119634198 191730459 683507107 867812361 374789737 797139152 42187212 941689573 735552914 249389796 85968808 511570320 90144470 310043 512446563 280097770 744775777 804692539 50110205 154940604 433547744 636193352 535970976 197710023 492465906 303175631 43225212 598131178 247676553 519213990 479965223 184085319 69031521 404149827 655184317 579587025 722465225 207898844 177214238 486561618 874476694 239162543 976739227 701866751 260540528 164546032 154234289 923206937 566773967 192073748 621273304 569469399 820127673 308979179 809210110 627517913 670264308 356617124 222143296 378260952 374522219 872831669 318112950 496284077 118584818 243908870 295438030 705966371 356302050 255921487 412100654 13814803 786883818 385644499 44876954 813841655 123549403 752672219 491953649 462450405 674627711 423113093 331212034 388495410 764675695 841206063 613113579 658236345 58352296 57212560 730899970 978446886 972498020 348319341 465444139 276679513 178144399 64662003 959865824 774459370 183963918 536078353 496613815 401424905 244724371 289490028 648531858 278863508 180595730 317400774 989244419 9819834 336215477 163770694 420558275 198350070 452449226 631189646 686188697 16874296 34227801 560482185 585997186 774262469 70623401 110959841 449716112 133107847 873618349 306187288 855943641 579481009 919590681 109165082 259877882 599254983 687113289 781378970 937777779 21822959 747550885 976024053 812987458 445315021 96602490 518706888 591143324 476313699 425612849 210347794 263943777 575789240 56055042 845607882 604329990 483880942 361073011 393585936 834791860 959944023 169388785 137064878 333322389 910761250 418279714 602301253 399742400 172133951 847898749 262013830 12197261 448983116 131826874 4362146 557444179 904335313 454795934 105972058 720901963 12483321 54261619 28368448 668375648 332502071 440015512 427043080 156351850 865387052 190555470 122698495 435133807 243093927 163060328 444626098 313065334 976987491 540550353 480853596 576495977 336087160 893327385 79261203 368358450 145005754 863426889 492821424 91262814 438947254 394274796 636436477 807719024 621794609 247850203 29036635 520107911 272662293 288077879 306124012 826232427 955992932 743116719 873004602 99536056 322850651 240535351 199235203 996635028 809130583 609547590 844845615 405219609 444584600 111768543 880518057 14838601 37949367 949871069 668235483 462251887 167682626 217409813 134926245 183305459 695404547 84510266 339917413 323959448 557835831 810836859 786864906 404135594 654890954 28157682 493265891 969106414 187100267 439426863 934213161 73752203 163969510 943438191 480061586 553433201 338351145 694404936 512576169 941678423 662043714 683127318 917258073 858551174 906478659 598007785 424703640 932622818 922536798 730120812 872653994 65970981 245757028 419799411 870878406 551480060 101334301 78369161 104433416 376218148 225242427 334106994 794964525 698586708 949323489 748418118 913419335 309122147 177273380 387477787 88995815 910931615 280720060 789200653 945012417 470866692 590005820 10805424 433716764 755358129 606429034 495466363 570424041 630275507 432570445 213790479 684276427 173393132 322138861 519198136 712598244 707255919 996384478 632483143 281380440 344881838 205731297 759561654 313337491 70776564 127745003 375375463 440388563 724696091 18358897 973566288 43685548 176182731 456253161 356037992 350834814 271755043 482681504 23278415 472096965 441824907 154604241 376150284 687806385 678623677 49471427 836768774 295133448 6179812 295221517 466425276 298684505 876449517 144382395 494942202 961914500 695699603 798336969 962125033 520665217 399025673 731012937 803615175 531683553 267404510 174236506 51346066 871813454 744174085 934666334 475790507 926728647 96121130 281319611 708500452 406737080 70245388 977999708 715997828 920869924 162348491 486068034 437054573 588611772 8884378 342727640 748060273 752133114 48893654 399646292 445322160 106056037 57793552 119173003 8101780 754492448 749240904 9626316 229147458 894789664 146232182 872989746 411797112 279666397 736058715 810882195 357984584 473751642 505822096 824381607 514202366 478862873 580918632 722179612 807368068 221057979 302289154 122555918 427195988 723444122 211765676 942896289 560467964 447310505 825530203 790834489 388244537 794712079 491294393 21884642 897897576 667831548 671583907 614978356 71168141 928350684 27808205 162282941 1965326 975684945 330793774 186553935 731595792 89471743 213804806 945270251 490867677 838180071 538429085 904562668 130152259 555567845 347065285 489031437 491061959 201662637 897554214 709286192 201755616 911573678 343927225 585875429 517898717 723965887 127910881 458562773 190010540 571447398 271542562 450779413 988066173 913388703 398213891 67288340 674359342 161752580 889944263 140550862 509137201 413530251 397676280 13276165 177881700 549714896 879401991 412554411 8238332 607272728 271014775 529389203 126326840 321143925 291869334 377815392 692790212 143381427 12989477 447561755 382715950 136458118 550273960 538641043 473498938 284590848 113246471 429043200 643760952 114283470 920674460 912777695 480990624 820659564 236823621 543881439 856437635 910735708 634011781 104391557 940648216 360622660 891362425 652167320 353194306 354386371 354603520 793573158 683130762 937221353 402756884 260385498 803731196 261714470 782981327 62642871 906671481 404409457 976553386 839721643 623006210 3767532 303721536 246725771 407607491 861093813 792946487 700613302 519335669 524030267 733413109 947423831 607506903 19139678 218749813 366632590 331073249 876627222 510110205 515766667 828030191 752259064 7893266 134492741 741871372 335810062 358786 956310411 960573066 315694451 16545571 474371593 218564679 124968436 457927492 242842452 55626960 710078060 345240778 925271479 272032624 960787909 708574875 46506953 18210976 597642917 215845152 435381240 348018115 957840893 135580369 966796646 716223166 582382452 559159754 38760267 861675066 84793877 69903072 398135965 238429936 889909862 952005118 70716071 64404212 807127573 91363041 734090591 395418636 243747860 60450096 287032846 109934527 249923124 650061539 351506091 666748663 9785040 245100161 714166176 297962376 198402206 152699033 310642558 718455223 855487703 629692892 250821881 202892071 209710732 451365352 720848524 231787576 598015637 66108022 724226577 902137513 793980432 954407650 933234493 867209342 573916826 848483631 981739212 199954431 60629152 161377827 193754450 300275461 829464977 733882058 813784402 842477459 432011782 534638872 286334045 852539996 41384541 189417151 635493668 188404982 426011628 484202663 616433705 746943065 487877324 597019766 208855243 518943737 441999728 715424405 853984570 105458827 81639820 476516312 528195968 837632731 868438926 204991546 143463852 842282099 960687733 380260145 437898193 205491544 201760429 44506232 764120328 259863761 269198167 892540369 759255337 77619917 148025652 18105270 950688445 913345550 237697419 480329537 442924979 233559588 507182421 696989059 826531703 340363917 924005557 343316734 403910492 940297472 707187536 521066347 878212628 311746910 840370826 312998551 490304329 739662182 201678745 382525863 842472936 896948799 439569237 534307801 489047544 208582078 109291799 764482561 69080502 514248229 445236763 590169080 183072016 622941631 162767688 820470540 15712034 222887663 430524667 554733889 786206188 425509427 114236053 610354613 598639095 199153314 114495349 908904474 945257188 92059276 795595051 412327060 564140322 984279028 188237497 834767723 106370954 651163544 818131586 475436284 305385584 710998545 730214779 476793019 648295182 554841468 248280054 972045896 172667227 661191423 452252712 676053351 850556858 118510198 597888415 78091951 918808690 388461794 613640721 344638442 826566813 947706756 206120180 383380905 705130506 270043267 900372542 247765892 528756417 466520245 990387883 225903190 767970236 686190417 709850335 354743963 795254086 563697870 869080985 894583908 964993501 575737246 905358147 955234658 425581394 594634142 229706501 154236315 510771066 950479267 40553116 667600155 196771962 333688264 795330364 54691892 385762019 432011238 347074234 764206561 14530853 836386430 563263970 96918939 711129619 747443135 245306079 21589757 153209409 243258812 712463296 944215140 466984970 834506680 261467341 179611517 405169885 458816820 118893496 873187863 438845397 390756047 747494316 906779740 401373898 652196627 621066816 3832679 24514322 453885136 412858319 738333882 807629913 830468341 587677359 53658361 823999180 577435886 661247553 844281713 729552283 905005190 711140320 821350884 632911315 869997622 918453092 111537850 235049007 585397974 276824003 771928295 278773221 186546438 821304476 320310285 186928612 799452921 406944165 965820941 737335482 175732418 45662345 607074891 94791932 225411535 699400634 961286242 453577407 89696572 146736324 387017387 947349556 755923873 220754371 353529088 691048021 77435590 454704222 791290140 319485537 392074476 420377920 196951166 371485188 880413917 239336477 634981127 201593584 851515694 282285832 898369427 566422197 94778556 607615681 375085032 811262395 386326255 916659867 973338238 600127349 184456613 908659836 45531996 935728635 73107956 451618505 827991295 674767321 557011386 728829033 708682390 673185507 991829989 830006859 475681097 373977222 308894550 766107604 384659800 326121967 620809360 789165603 488402164 318927906 850944204 204154905 199238204 17892244 127107093 22581634 119226621 633003911 940385273 793761237 603223193 449793481 807666679 40608094 603904121 205104617 346063670 783192074 369556476 633458195 747018806 594604454 277702061 233252694 758415718 730656760 78763233 42008807 974254985 399998436 901335565 244277254 574816874 475340323 686172257 544453800 48634921 287167808 186687942 946299190 88845009 237480513 442706714 842513179 584030491 210337766 584381415 131239854 270589224 489882313 50144626 660684655 710610098 882345323 752489430 752542165 687918004 235000209 601364244 567834397 245378668 280247649 55068920 884840470 967916561 34866604 282212497 75277356 824992243 873692318 141612383 679632545 422677274 975854679 393207985 205838245 89018196 1130387 262094296 190032899 500237608 809840007 869931544 378432583 998160608 498882898 682021321 122440968 23977981 363329875 229853107 950606843 945349318 638569840 964161794 54263375 927110618 782676005 209709319 225891085 748015509 557872096 287299666 855096258 729924715 477560175 711120367 437125540 187921004 886335507 326727071 287861060 821174833 960973467 656711991 871346940 462364431 954340156 919052964 697196479 40063184 109530965 364656308 28560563 276542422 806162429 865789276 913441338 329971606 170995018 459826410 388873187 829331152 529866985 337283729 653887927 83642844 334532597 288856453 555854472 604903220 387080403 716365541 345788256 83473135 642512701 344053964 479449956 975946824 477537518 430866379 244986268 260289891 408722505 710480140 944217904 898135045 137432800 505124132 286722111 200625875 391086910 342777700 685273093 425069662 565921532 139875106 482227702 524348289 200798402 359403575 404384616 401419571 592731646 458681676 650500804 845426661 413271623 501407044 291471283 319709714 249274112 978435473 142230137 725013222 198121957 460982472 109534008 784279300 99558663 480844886 236286235 325018252 389581407 881989608 127750994 1208144 337342487 4407395 348013090 898112897 798319903 489687771 777578215 239481758 210234643 426830892 416360232 963812501 744333174 337164249 300096364 932247138 536951655 338634129 918168451 848488323 64028254 830365356 474164006 866208275 291036838 391584507 987765255 443926802 134708609 230896997 10856299 997951139 285901386 238795390 322971171 810904068 432040130 742632045 284189027 648081701 852236171 409265337 151890234 996419068 733287419 871627358 590480408 585439220 57483221 14628152 707799289 547425120 900348494 583654381 986313168 34741296 508253983 695390271 517973289 386018293 213827831 852730404 27734140 197673713 982106381 992596524 654876770 368658950 737420594 484862377 599993499 420897346 201828501 911553762 568337535 891994405 93958932 378791505 116476280 721396297 956117556 957083337 897962794 387871662 26306345 861247533 179161830 307634631 161441549 822480495 342560022 347545847 849131344 239384115 278928724 900559586 308802792 755983380 75295280 586674504 399877219 400437957 554003673 69203371 283976853 160232619 585465490 215256050 141739815 869889681 153826700 768261308 468125804 880272160 554848911 280981085 273455441 280848697 19783672 202631371 580698031 374866813 799366231 756295729 558912018 259222549 444658118 863853137 823081090 27280366 952848188 426061606 872118632 464580092 342279975 687545794 69666981 863540277 350496813 64845578 892569955 851997381 270381439 451402376 223828770 555936370 788093758 900781532 349965823 383143671 289950296 177160332 939557276 784159161 180229386 490798857 734218287 301350499 202720766 512013946 383241188 682124923 702765366 285633850 393254557 534183209 179387226 134481552 505433160 402654008 970504387 492237118 419358726 334032604 797607475 747276876 988066511 497852331 839166482 975717429 719343719 875813919 655065036 911055247 46824021 168278729 68216806 833980065 396890288 673428412 909756496 429030169 50699531 615698483 707656181 72496420 961478610 863007980 427696490 523091964 630735369 119971636 375955836 177103309 154474249 710425358 388996626 678623582 862914107 411385021 123904691 456872762 331199071 402058328 638891186 459345399 525137967 446806146 894712856 127850887 215540254 236944806 674658616 641164606 972644044 35204587 824184500 28502759 450150284 175755293 669930108 988076430 670272032 322503062 559066305 849770442 992265658 528835619 276272144 794512858 548281760 314346362 296370124 433139940 666346331 964062441 227864839 126325005 832767720 777495432 622658604 502768541 609846158 423108450 465949476 20486331 391745026 854882359 847446077 761470789 575395349 51246939 683243441 949503095 786754503 740010796 910386081 238996388 649863141 171670611 93888401 447073406 865381430 771196625 897690425 80304960 181865884 847688538 219005287 190335298 533724085 563468234 727767700 32864760 539134833 5797112 414815682 642651642 134632960 147334808 460122411 9848681 199671220 237858701 692180108 782551031 576586868 417855926 257428349 464609781 467283343 511889573 908505802 713223534 194612415 354614387 244200953 804975457 771048082 161995744 609883663 506505860 692232156 289390932 316013840 304546612 375829394 529141525 498702914 134316747 977480559 357682261 143936242 820439758 979705628 309538343 798939212 941479636 809843297 910768462 239840248 322101631 421975039 155280983 870443153 262310646 455988786 487733403 788780676 434027116 776532329 981301532 420552878 638106091 220246150 413329002 666761863 742322235 570925944 992533949 468988178 67175180 956890268 374319636 383322535 351594767 269787994 241037319 688405388 715035151 469159386 149809237 936323281 584144553 826850417 30808553 5627353 394165836 843485437 583163709 90384498 638140045 418014832 436971273 54757867 161723301 26115300 49908379 535451577 775678762 148801947 206499189 108048214 320189963 743669932 217326327 743316894 697658361 167453507 847455915 222582613 28023073 306259303 435933161 924132532 848829358 250133383 502719463 508925019 387770444 655361351 120495706 629203144 683669719 279990453 128040810 79458849 816434852 389877955 520743680 552012938 542905296 744345479 787197306 881850006 656851388 671830474 295320218 674703457 393414497 725309516 542857222 59267966 142843858 11498296 922820517 544893016 461744019 767041052 987708384 596815546 615997634 388475731 988672162 972962302 973138710 262748791 768145032 985204787 854215946 343639318 653871951 944758880 729383761 607282300 393948040 57731148 264909816 676912459 328822472 77691855 72584295 305889221 208171813 55778187 717445104 418736895 854546459 709534613 908851102 923013364 776969644 156653994 306424932 183417888 2653246 60554002 354306761 470804457 501881707 194379106 259209743 523470334 315924716 406672493 901979137 257382525 853551203 46649501 139549251 28014511 181319495 907650009 69013908 17023805 199099148 186649770 812438843 766996471 424929859 819398169 690032609 358152614 232614524 73001044 992404086 694776919 857172942 603426004 376837505 422662344 379262319 695873313 661541050 956793078 374400843 788343163 928441928 729349093 645657491 618243149 605568107 818200810 542084893 52986820 409348838 567733965 620726442 785524670 531644693 914194568 688830476 318865910 971446447 50739165 685721183 82011052 976747079 151093748 143065023 606281161 933828990 360244106 457607058 771035532 860549448 407169516 470312199 977793680 302966385 608180833 795971795 567166675 302142533 693107087 210081687 307382462 44958162 750318252 814769466 713865968 887455586 121139662 820361489 298887350 943469897 565676319 555908392 975492774 318761073 846302925 30812927 964805544 596318825 767344337 591095802 950386053 592703082 134205000 695377389 908271150 92614766 326210096 134933647 194028570 368014194 695424966 758834570 234922081 688516592 678772746 987716714 134784496 363174440 91196323 586152935 376496063 957764409 781094103 712194975 800919750 944139642 165690363 66369482 523753935 972985228 359118303 554378658 444287424 129991300 924219333 897010523 965210346 210387352 592724954 523214979 784273428 980466614 125794421 735233591 225367546 820173042 407908394 520262009 160333672 667021219 104529741 404763572 280393842 536921724 939277774 667385794 413636147 800618893 113109654 359322642 339083516 385200403 243880690 340313374 865486047 478436978 489338388 276112567 884907017 961178987 223806281 916369119 775573695 122814938 863789855 301597174 223515590 723533938 729567644 381842534 431087930 667908617 247586597 397797620 138423810 75165101 806261330 884419933 376812547 81006669 727868977 940054990 735246680 988194750 670525854 607350597 239157452 538869840 224974377 452903349 753471860 252598126 824047403 157599146 818558697 921374023 514493609 427667047 481734359 843758645 294610908 700594672 406546551 821040419 319440394 535518492 44775561 673733744 750567358 25619777 988451469 121599009 848424218 324062297 278605621 98751499 127603408 628800640 375298116 302624851 816320890 138352303 389356364 331702071 293922820 714279529 988954403 161976658 622819847 97133019 292504506 317762619 958210643 668496492 556995197 940444044 906019779 81852423 676759367 700867601 773917416 855988277 915010330 177371489 847863507 31552812 24785030 503254403 649483312 697682636 201389791 355084654 68598521 923520609 672385735 19563176 574873030 734169262 192000825 362643420 521515169 147462590 274793889 682213915 623643778 489299428 248700685 200854414 651190448 163966483 544118245 241712016 398159317 650636115 235478972 525680124 554882054 230206132 508685146 35373222 354907784 369783069 302170863 495289226 119733860 518666872 428661940 143397000 690978615 499094527 438218906 243235196 868614636 724350167 797128227 241885278 124314375 346502253 142436477 451141921 482427753 496843846 128224103 679721702 757125275 352344258 380883406 560330584 288573820 46556786 790772403 199673078 531353563 948607810 319837236 990705461 143480709 475412904 741505581 629648717 396853368 770306325 401025224 386205202 364488078 139875864 60068235 110473633 222121608 236295228 804793459 772821803 561781885 770869661 741619421 793724942 436494558 273306663 892039083 402736821 209365597 240634347 100073944 721075051 927223486 230634940 2231905 4245791 334097980 479847559 952297339 983297351 139181086 502619870 133824686 159798845 491175572 214187602 914913196 569809001 328779409 976563461 173683653 999786592 248085509 25616915 63901118 650395500 989566201 535185428 260730669 270608684 201756781 48102257 622057900 823923034 732038970 85989978 74755713 795049851 861850755 40446033 864464142 325909465 136190647 38154951 140335517 760112314 546303337 756208156 665838287 317972769 962739007 9194661 910191989 98341615 943190218 775531885 56418155 592709659 296591595 190807722 293537858 297697533 760666365 901012087 282781588 806076001 980995711 639011309 688580365 587780347 237849122 537374888 333414329 589173677 48629668 460135629 28833965 942765596 517461725 566283032 880300784 79921656 41062588 718691633 652246825 466558596 404749019 899760167 534939920 467636028 600890476 50051689 589346337 986104929 57096364 877983662 22705304 543473729 309159317 284033846 777468083 273452451 544353700 422936820 710741407 19857701 755492653 805697199 438054444 390202338 862353423 553460896 753786412 833434591 887599483 502075281 224807815 814614849 867680155 926606832 210308538 859662998 79765475 242188174 253406363 350139112 976236326 391077986 164509183 88890532 992126859 837405221 294468971 219949609 644685631 89959820 943626341 939994083 895590636 362721995 640967828 803137984 127453169 240314676 135080283 959136367 194826691 782083031 842294069 794946167 808272872 584257894 463483149 996747437 931361916 695406986 928434266 619189296 565530851 618375193 566979229 758762959 430977134 721801481 469827399 478414822 192232116 593378050 880987218 231734745 637208921 306440356 945790835 851068775 4188537 113340485 283209972 824882413 876501424 823948182 840266916 216427648 296878548 568785800 713593515 40190911 962242900 292817422 1204814 119144743 379350610 685562142 855265813 615772580 57673564 396292297 158258113 469893461 208267843 537137043 449478147 948932001 348492000 960145980 49252554 618173949 42026089 712608908 810246222 593397054 720296476 614663337 103537501 838477241 796226651 524629513 695910709 932664186 419536853 763176766 8066953 112494271 895565612 272442530 634055724 6405180 401722955 771476675 346703499 259418268 636611497 24077179 219057432 301038798 738464980 426910937 277994557 286948602 89936161 450846784 116368056 39107784 842929868 76293016 834360666 972053598 625835244 446717722 470893332 314088602 744507623 677650897 645778228 524879132 22718858 881859281 802091417 574893084 296936823 39078440 806712606 589208321 617240429 781067938 289337173 978768111 428697300 921659977 929703746 983081872 926295578 312313735 463072666 223264036 699310951 260403803 308397224 870884705 490801632 911107765 634801692 151916149 271846153 933734349 494111124 615367056 179567083 310383649 556915722 469630885 123686033 930934547 934022039 591526214 329996864 442308465 155654560 567547047 511857023 213566539 318419937 69863828 881344492 232168962 956587805 999093887 775668825 319899750 100302548 565130019 21413801 288212011 592053768 554925615 952627522 767072682 455515234 658760260 338953794 837480199 619025044 479098369 76380569 548164013 661782912 353015402 466731832 912561952 387795210 960046925 98410234 346263486 699559657 840843052 971016880 874521058 829901025 563990569 856705986 886188717 133615259 638844039 372563881 524900843 619161475 316896914 442896295 324682622 625210951 564647594 22173614 929449376 280083265 681740464 887293901 377864727 108983563 220016568 68860561 639458818 474776414 770711764 889975470 559748178 921662960 715805320 235809365 451205946 578732209 969181144 814172139 857329297 121254501 31210055 694219815 851223522 774924916 854108942 956187597 434716775 383304361 655060043 178530360 35176317 574188224 430128891 441433162 690184001 98001219 291590696 20442029 397626895 175371998 587165768 357483319 824781672 382624541 108414160 954000612 613883264 199203008 490375624 708348936 418718386 363554389 601937017 531868828 669527100 467568094 717455108 85309240 582843043 683518321 134225647 197392368 595179703 254072153 314893046 831583550 896158508 999297358 900412236 420012809 975161121 829764124 586936792 559612051 242633075 483610659 79675468 375171660 608719367 93587698 691110331 426263531 319017750 919685834 565399124 351383431 636457345 431267979 415814559 555715572 126681551 956159251 163240989 562122558 570498870 125531131 333478905 371051289 783807564 476160158 22740366 889554905 38627464 715199961 173632191 570246051 381929569 7432290 464789436 43719274 188007926 773410602 295109702 418872012 691460429 25633734 909636117 71703839 841926820 645902660 497078788 792293601 79161116 449174197 188491092 572875415 646110671 13523594 32361465 798191352 937664840 353396092 645817781 684349355 975797133 248989647 80643061 358353141 392160797 185922893 145474022 840858678 984805701 653064384 469596542 268559678 458059777 520447146 617563843 827703319 689880183 192769505 907664254 886197632 285909884 677245032 35219884 948081551 550115934 310596223 834778249 536103424 339007291 377139530 100498392 984491353 957558342 408753486 401077840 805132811 437540168 450532311 211492192 934747957 376818886 594337765 117300356 893705298 893017715 264119150 953676352 132179493 87150540 453163353 144009385 600558229 60166986 477831848 497832401 402359287 386667646 761247662 390141492 655133975 218624416 607755311 20632045 416179899 917490301 751874449 35414741 667987054 327231979 455649325 287792033 414957497 691648186 431923035 44771853 693481736 58334788 582006127 377900369 32722482 574094546 927660611 910048378 53846976 505181738 39525884 368503833 492853377 626953022 556117724 489188412 540631132 901505453 709975154 533869353 485037961 366339514 905611617 444909083 100505048 379764630 339809009 425002362 73373325 825845845 68131932 53497591 611188914 479150023 762850196 689550762 250631518 47577972 290727769 284467831 248881854 885882908 253635048 724501360 118616779 468281838 260943067 975118812 788469304 876137641 14795416 196810922 306023358 244354417 354518818 653467045 19561231 635546928 375734451 801091487 879800172 262244704 385520765 853921550 263260571 25140332 309532658 186130442 240010150 302337513 674531045 548072845 920394235 983570094 25695927 393656964 238245999 155961295 414293815 972213412 232096251 655483935 479230500 464532105 69789643 414871932 877112323 333037598 328729108 956662013 1119574 10623623 183808866 765679030 134533259 98847014 295565273 399157689 488599572 32472000 100262112 6947826 795178258 335988337 520843381 863257569 830666332 80745589 125522336 329776245 432543192 428662129 283531073 461145015 390707025 165686896 778210077 213959164 316325830 549741637 101394951 399902734 56591953 317113800 912385073 891321806 490370604 243186026 605172410 133194985 223020971 703922848 229417126 869430082 787148778 451600344 314794289 296904002 160719757 518324012 962475727 514885653 885738333 529920577 212085656 451881308 302775931 762227658 959303510 11854923 330943627 17519712 769533835 868639802 685800895 479271299 501340820 323400648 205420081 626338174 856700223 978055953 823602990 109431380 272583262 641827748 547571357 908037688 952911898 860357799 653995885 955178247 943145217 291829659 698612832 905797248 420183041 215191580 844896999 137835654 613254584 683371417 53573092 566072012 803777906 996170004 867535092 68118583 832157586 350470163 584936324 785539467 869943560 321699381 589236235 565560127 249161843 227141377 359621188 193846469 766465783 140313230 819348412 960101114 557306803 860780688 522248166 276008578 962441207 680060535 624253282 387646022 135676419 905794497 238760871 487921171 998446881 989738729 864623208 677076596 617815658 891123912 604833667 811850358 506046574 223230426 691843762 407983040 156985748 370538585 342485747 767379855 301818316 990323387 556671844 363912178 737375217 919483851 549408437 266330693 275418680 668628967 695519281 811799787 955825091 248219420 853039775 553697242 606616487 224898180 750480333 234368822 763832865 836191649 640280373 520879569 838207647 581924072 253472596 183322858 77508218 986112706 925288233 528845545 723823917 421837269 641790179 77625675 97778432 585155769 661945105 756068705 974931357 353149728 548389713 997176621 873578284 754534528 622667982 157164631 47491665 95175545 667466858 402850094 133800344 122343343 57467415 504905771 687199905 539858709 975648178 420878656 335936483 875133716 141449798 451125505 361108373 186023146 741592624 589592394 725909766 854523782 894368261 817232441 398315391 196086477 501572267 961279197 667488357 508381304 726963156 74046114 125522648 666933099 560414895 435244295 144675429 362075238 481481712 944778051 773414820 265909080 253208007 607401602 334962087 958832622 826637646 865228059 507161430 180739722 200650452 719065482 383697781 741056158 811497314 216372016 934644951 287216455 380183199 210529854 406920406 855350079 739626962 942367895 129224816 819907040 588138558 476559644 461094689 96935600 523259947 330462558 449028149 332914352 869456987 154561965 714621053 866208239 424722037 159898250 615491818 551387714 943884355 90916050 632594653 197873053 847251101 966080578 43299318 558767873 126755678 633876670 723740645 352535327 401700379 352276383 17805382 677885954 984819421 854050228 143558126 693132531 733252384 706213909 794705953 87843686 798379961 640135425 899015542 925941462 692107771 73138233 431256249 997084584 49982156 740967963 517936588 260647423 650313047 794540245 92845857 305752423 740721854 581858175 357669972 224844128 794718272 577246567 438684129 859827273 799657956 974764577 487345945 930132353 850499335 837919876 633980119 379356963 833804216 368879871 779116533 302562639 99898611 248741000 571461788 989077085 335907778 988256267 248654899 456036269 504066500 742369674 964355241 841045657 718142482 561856999 133733687 891267226 454900496 929964663 638934616 314199891 905860470 979592510 691027058 2281459 378132405 415060101 320734385 435705615 963054569 159148361 403313136 129305830 717790710 239040561 691677968 650481934 11736430 201641487 188673917 807827381 102664633 603048895 668549774 847013 219665676 961509038 843027961 580863630 261498747 852803994 426647683 566937787 712456113 798676653 91062849 186397290 665743455 770410266 754633705 425603056 1168808 321066733 311647697 699845923 751866141 60538156 300027522 785909815 677107449 744709550 85936960 789291550 250282330 565018876 292926750 610928546 504819548 65575439 148813972 100935120 561668618 426364180 748861763 269059398 114601 702457155 594167060 707495207 821601391 563082311 678118136 621316687 592333161 241447400 608721600 228351023 868095194 398305388 597790344 651827250 319738423 991063722 415957690 955143418 364363637 126850363 125137579 372511677 341087603 260048101 836737640 201912621 95285376 293646831 492772141 683307278 982585837 232630009 239858648 99416566 5572312 495273072 535735822 205972425 536630145 227798838 657438790 170260224 549355719 884361766 58300455 879526469 77580486 527462459 443985467 655789758 62289631 67292783 96287697 572874087 549095631 471874106 405533723 257039674 36080405 120157237 586377514 232734416 234567829 972009060 284901631 11785222 164208971 831901855 811433866 907773508 627219893 588041627 85120464 616039647 910295028 723743107 916657301 106829924 822331188 296805004 883569103 562750779 873975559 102049600 616540087 204527923 922247768 31240328 918398231 85028735 774141970 618338450 640795199 412501774 614927507 881162525 525721686 674110051 442033735 676906701 945629764 692179560 789963230 8672260 489847727 394073196 161234912 808015032 844671764 420540079 431990539 32441943 569671146 559839539 120795873 737972038 802586771 70231769 490951279 526397162 384319900 25341522 106051803 457129833 546202217 780741950 511859841 986033627 275502871 704365348 530116686 55275603 983023512 980808668 493811692 941212602 211567036 223727436 21489762 924431481 518186432 20093271 322184603 363954848 609623302 262719857 972808482 386690429 297829073 768499108 213971807 570585973 562389537 954856046 375316594 142771567 286415695 947772908 970304303 90791823 384793397 57294820 521316711 974135118 644741751 598964880 334276268 429115135 627408654 437540268 609052032 307285037 594533401 48861734 305852047 465329696 469623395 632538300 194433043 540450102 196615279 34386803 819301894 866681944 556056657 644425399 903712321 690383060 612466590 943724972 667922992 150447408 107204720 768067778 233924431 682743082 493963457 601608229 289193813 848644507 208133401 471584099 417246409 126937110 720660548 910365633 786033234 14306127 714861501 105741945 126583427 428113265 375201747 921988435 210775001 736637025 938630420 295668988 755146064 298395226 770638834 230017818 292000222 456648617 755079428 383050529 599415505 349930743 703099301 109826162 497189163 477359368 30375862 988654402 274185126 586419102 985508765 741667441 488307791 254204450 471397709 407319026 922398447 330531595 65224805 197339612 441687359 470928181 380127499 75997968 537238663 669246956 262387992 126175075 994687588 106828519 427358700 437881651 851443603 93177982 93056859 369593411 143544272 453568456 130262154 147040975 485429465 688800087 330013213 582350138 198816817 100395298 477651597 341056541 616929860 505695930 774272168 216971903 207842333 456448061 446761213 217868799 677334358 962874672 349948060 82978011 295993690 492640052 524999690 542105724 474958127 817117982 471508503 777977084 175106419 486028142 296213039 8694687 451982710 826349527 645197696 895456277 595562284 20006079 422555901 747156127 249549293 822035129 120442367 256148734 491504788 930043964 367923889 612728660 283411227 903175058 348588158 265168467 117616534 228261724 295191754 438135512 103591804 63257822 176620332 889467282 790332006 317152490 428762720 303928283 445203076 863190904 905766159 873153574 506986140 953957157 447489984 824486653 49728385 74889498 51755379 547104088 174196084 64865026 863078025 810001553 419074403 245695635 881243321 629680784 980746813 472690899 752127765 812738628 488438949 430557611 708065732 107207597 737899872 801080240 936605421 865220064 831843344 460362281 156081928 358920403 217901181 312902830 633982498 108020465 116685781 294651843 824825878 746321525 228455379 51962292 381203528 154027419 329955407 762643650 919484105 937319401 595289602 441341465 554796310 449721059 489063890 645129625 445881387 733899322 302562203 609949970 894385292 580117185 764883265 349305870 115554208 810909787 680962203 175877925 873237306 327764838 26541280 249832389 464097811 614005220 826484208 650344670 941961099 347716441 57380637 192617326 695420886 490708846 956812935 979917468 169983500 611658691 348007380 138337221 124874581 88257270 846861449 676988237 443536753 360475833 835252946 906235689 329016188 825177663 768873576 518858870 796621369 695423404 872736039 463998137 142215725 546987162 926987325 641476773 346296062 272431418 905739651 86033495 707143067 994352846 959566348 959086768 457116025 494407815 282722813 546825868 773578584 58712513 545914050 669859675 89963490 551438028 287385950 83236618 79518055 560164219 902624847 223460057 846037056 267248882 715746044 237574472 247347345 736767477 12345171 14971631 27489069 461912275 683420299 29245869 650209000 638441045 122340279 329613758 404829423 723613661 181305442 758687618 943232035 204421085 978592346 738074746 614717700 848818829 253499044 294981984 676096364 891019568 655270154 444847067 915612661 426273045 198568536 902007979 88572651 335643218 273921273 676017574 269505393 474372835 140880788 830651891 371633530 766536885 225904540 669292946 192959148 630647439 576999931 32847151 935305120 212366706 150184843 70449580 721419854 470313681 638615388 908421103 538968379 369959939 125567168 122595195 296890401 245917532 602305638 856532663 947495994 978555555 829444604 382017842 234086217 706086281 516510871 451484801 716612321 44788524 413712578 945596164 836426705 801046914 942047211 745084994 727227294 398241624 642580579 621018601 366647557 161271655 415517152 879575241 266555337 385858341 59069771 664441885 284363857 930267145 495162622 258962731 351506379 840190955 841278626 957368034 626562083 138650222 568054921 975291885 763301413 658552520 785269566 85357716 553996522 842694293 179356063 1125611 742485765 669103315 315096634 198821276 202243593 752562344 611859828 314981977 50612164 649538419 526733247 269864108 58073332 663709908 484200565 859516394 26539645 371427899 325035988 771906324 467763513 777313293 460558091 624775822 283370497 86329065 581002950 892931243 451911256 433252305 727719827 308881697 924693072 731089737 575769552 905006568 270023799 899147619 214977083 359011175 959078960 420081389 878713380 564634273 918780913 842746494 569063010 72637552 602334933 634722972 389154049 960647639 25326989 297098115 452126010 141244316 976113465 456991417 257001190 55025544 815891236 418610701 656551512 232843560 892677277 931236235 943880877 661597842 384399999 935973675 530885893 264971327 87577974 917882935 312539450 887004669 53037761 418153221 988662309 101504901 54958885 559638666 355620989 349610649 621175272 51156438 408630200 973134771 797730222 899362313 475559432 19041642 578663460 280386779 769192213 739594981 261192477 107862031 584212173 268447638 389639021 837208253 721507113 46297059 368021555 875679735 551381830 963454392 118231633 714250344 689232569 382412917 499797495 495117373 277507180 107215141 229327901 508335701 803401591 653717608 824426545 287096410 233668941 735818897 567360085 3428865 930352657 144404030 667561100 838633102 535491430 43946255 444213545 201903174 302888137 268626198 239139980 680165076 679491274 340179983 740874616 10266855 489555680 248294634 233197616 271535751 662459886 999738860 821162668 640444320 793775625 313624702 598946328 659909655 335191271 864474552 214513545 263924686 716072985 509749051 718212639 832882135 137393864 785885211 512537918 479174953 138319627 783141001 977805192 95941118 6320557 668340271 634581102 96383645 507821800 754085613 875956178 464655117 62322439 705407806 25618152 371519171 661502956 807479924 66142871 703040859 628071693 275452584 653184693 943774339 316157914 3696313 884361242 11833357 809521376 124019170 770921589 159333780 704508675 846675458 617579313 762401566 150792215 51261864 958938333 892430810 702237382 851925955 760413650 72439876 773157751 761284122 322278652 861906413 981319498 126486051 714289987 484529892 439746518 674645321 648579678 239868934 17567515 426358511 132994218 968497306 194810740 32487960 222585627 590463469 215729583 297914724 407785546 942226390 92007960 560242811 308960385 884294195 835105054 984327710 226077419 587592773 706071849 305457208 100216510 40170934 537558109 441916304 846469349 396330321 634864374 571461510 451233724 831966509 757122749 388123993 533188413 516948273 29699622 603821236 568920985 627519978 631417483 81809856 447473193 717088648 221630886 468318146 108627324 227957075 221511618 529783332 652757038 579744975 422499410 307790859 170751471 203356454 234708453 991499889 610089625 462194 590810538 132065310 739306343 546511937 296173528 43064330 102298518 490358821 538489498 930450986 851986521 47504560 17750334 452883653 611229764 990454871 138166530 623244365 947838311 485841463 380491674 695805426 715279136 241230094 494487152 116584908 167102547 794359461 82262805 585874155 770223632 932070460 51940915 413659976 151000075 47365822 720065303 679445154 37009547 210123531 86576366 532845889 865887989 22272890 754347372 447243950 287488948 630650395 145362824 61244320 659409480 448725239 300714280 304937445 674532143 974316352 386825572 578488549 159881086 876061369 220209833 617236241 241580110 327979617 765746956 937848210 761320407 649674427 605529585 847766707 369006560 488157854 553933647 52291791 936182823 52586781 808303508 967829321 288265516 442716147 790436524 51758637 598598057 814340201 82975855 959206605 992750107 969267241 993487407 213457501 653957770 901770557 434627036 624618339 648333628 531610467 587848424 249219631 755190423 425088936 239299164 67433581 9186551 326634714 19433834 350724890 632642012 4160973 497871085 34429317 564311920 880089605 749806202 452646653 983518482 194277593 427605141 85296371 125261068 815873365 971490125 704999605 585480428 996822123 53660966 347564711 333473571 91286157 812162036 663538254 987102563 238377435 296393515 446514108 431724437 336519508 307420323 119777631 474750664 587417209 33196922 455201158 41192077 271594024 722518177 898876581 927345226 801580715 436770202 978953531 239679646 48027369 522240570 215214708 406187675 283253739 553183697 74626173 964883182 266142999 302834238 334354311 913549130 167696982 861509370 120603454 959537383 871407768 671692021 331752870 794864467 539654037 158956373 557098687 52344390 582717894 46595460 400040963 129416959 341502653 757594441 732422109 307676085 432999921 852183237 801322763 652265968 261620556 637114825 969890829 607036155 288503606 238197390 225594228 635700898 219258634 408257673 872115457 62782112 421935856 728200891 216518975 357022954 841061745 358818313 6843121 944329105 800013029 232988304 180282878 824758071 740551928 564278138 89324514 998858691 237411416 974208834 385564238 915234146 456757651 214833917 534761672 809175629 374562129 575332514 580380971 446164385 289867812 220112448 246720980 811818741 649807913 25434224 135568727 585257918 484572337 503097749 506687337 397907703 471456373 938324986 94888906 244401200 228415862 309396995 855772663 389096961 862575541 622078632 784200522 587391422 142255258 448324942 982753852 961118135 738917820 507858580 816801998 123775405 838207935 242081196 142380463 962125589 420250044 866392947 204389655 3175407 392660840 701352994 668164661 729382959 694485569 252368757 949667873 576561666 350946442 360798466 461963954 764285467 447786717 700062808 196966815 708270473 935977237 854517965 446598047 797841006 785283776 388172837 218153216 511039678 153180927 751841009 477268991 979370517 984357310 163763332 63980308 385105718 842942304 837849295 263329204 28530672 281602125 60963860 793505765 191858626 512534169 963731548 548674572 142349992 274382805 965853429 734900707 149761323 999112257 76115409 299285966 974830624 78803150 94681932 663685515 520281523 638058530 215531228 68068153 735458552 66508854 9065673 705633610 136793746 876988719 976981042 650146394 472132923 97645565 151569234 986956812 573353213 925178221 867229171 97892208 908569465 777107827 250911084 534271034 775607608 278529570 489233241 355030887 486911677 182780888 197361393 965227382 268828747 179047788 524531060 138264249 536593945 376061959 595251056 565046736 278867748 172488614 271616750 1571672 968703711 78963911 72678556 641933174 605468984 180466049 58548146 408522635 264574065 430646153 428600043 338844383 475476524 211207787 870170112 336066840 258539521 288805009 861143677 118570261 816131646 151412267 121483130 571615761 464701968 478205012 956204096 56054679 495679376 222108766 71351222 684195744 177403600 439376660 631758807 870286044 484542417 75797885 226987948 465586567 728379725 124584559 626048405 219242869 648035038 646109209 716436276 127831569 85758263 205395000 456746988 341606035 26513507 106506277 924286002 345539106 373354261 728555490 672001847 945344314 683794415 540406504 682566309 813103363 400295256 319438965 152136848 735475349 924698607 704514001 917780135 625803254 907051635 902254597 712604216 199454774 132470879 288749215 73700547 100609742 302997835 760370759 124986155 48250857 898369269 387275613 315870331 969525859 46755109 662883816 316792205 979576653 180806657 712581616 106620747 930702217 762244365 658951511 2328168 732654474 228823369 81875041 503440698 83501887 46289687 245347700 571095355 880308227 849007930 649117764 646974137 68427615 673155458 904644319 812102519 517577608 655033841 68391138 313895612 323683365 703053505 598154098 523391112 849071422 134744815 582226009 68492680 145462521 120641894 429430405 688334753 158848210 611361785 897972914 346153043 576560371 428472207 552771992 29329204 792638975 876540544 233629645 105670186 995627130 267610101 797350888 246760643 792091819 153935185 738464583 598382477 709100003 354492203 363246166 930797516 739095428 358017009 980313814 179177851 835990484 884169141 1373112 264942477 60943378 520107489 543578023 318231863 870737563 523905769 910370495 244025949 38393991 404320939 903701025 789203001 330807591 791672709 922798286 834331291 143355124 503404391 323317327 61923331 380968066 958922278 728892963 761960315 991755086 806353520 396549899 910833701 286649496 880800249 970094105 659584219 662949127 126940684 525503064 176597846 594584975 372364294 619548702 716227139 841320044 397341844 889303722 627376694 409595628 753266330 947763972 576292989 478528377 743725962 301816110 242608472 723854229 189279536 97932896 111884556 643205256 112230092 665042579 586519123 189350405 835525234 359598 555529284 374762613 912140254 61114347 140706986 897350600 276779352 943913206 162008151 79153572 473441395 170202715 982237521 369965446 7671741 451789393 389953982 488279622 685454199 328379354 368246934 46776319 59962613 433989800 972426086 360632448 678299645 408045484 154141838 116277398 891070867 249427791 144788839 535454031 881286576 816961453 405537549 373705642 559976558 879253858 596809688 617544925 595457212 689486756 365255672 333261000 705758547 508750873 815982808 213418852 376816433 857043005 11550361 522953136 276188596 317966635 317054839 957687074 599887513 867931211 722746484 39063360 123914597 455176351 126973647 530472216 321018471 302049916 605002765 701387971 612116198 708661353 843127633 952911843 868579425 77764452 746917126 313810900 893539661 623414768 193751955 315129825 727009872 995655645 80718373 269476645 654637898 773964197 97823788 95205751 616289318 686093990 533445780 697440404 67545469 295637622 467020815 935495803 334837202 331837939 773821460 350420191 276563899 277933189 376089022 87945718 925173019 91724863 233533209 934407928 354040478 509309503 923960960 718231809 773486313 202648900 166093776 909537487 226844066 63472110 121581442 214694457 309318477 905062114 458262786 146547510 337383037 978330865 544868765 525966437 503034640 403714687 80681234 952679930 848022826 866754239 5730152 286567351 476734362 381694382 691889744 146935628 799245389 883755071 336899309 820953619 463018392 301244862 830008183 797083211 723021782 362016571 409077075 76463542 123629964 758028066 768805421 300738395 578800607 722087460 193014744 769609130 929322162 449436453 967850354 132094211 323511044 654743033 462410615 932878810 219258136 660463013 81227318 21708165 570881690 882387002 369321059 43270773 678222225 744326946 341957922 457490503 183530863 942820662 611662745 985450578 585062383 58883122 561274041 545176431 821520253 697676338 811440348 292323505 591002717 156464603 436544697 441464369 321311851 17249547 99650037 87549535 405564521 345007513 803815611 881089539 156983981 879503046 553359066 59929196 504573849 401880047 210270222 829416251 29475431 737657717 733885139 790424272 426267002 109071547 672153060 446009034 74036346 859211351 72883123 142733499 632818785 120310437 118588952 622196614 860254932 680471191 61063363 432453326 476256060 24608113 973915482 906383805 156363291 383971063 392562324 396549742 839687602 455159929 383448459 82516328 282169879 613514017 440513924 488630881 891833871 537788658 939309933 513072734 463270525 791683292 44939308 64663897 777117883 246908452 211437888 273679720 55199574 92178256 171113529 256249303 992323430 457355956 571248955 166311383 693401657 557183203 548437737 818310776 266418149 520418978 687553512 895683524 364800771 345560455 351418357 410349130 271989841 265319606 995154857 844692227 927561609 236067446 187506260 202415349 497631691 920034528 872095386 456653171 111977817 433086316 407477630 969228100 706460803 358947621 470024017 861492262 491796777 305386246 493849660 944387037 175030156 977657748 507632312 538655416 423884461 657024198 883814823 63928644 481829705 276198080 563982519 94631496 823294886 406920901 327557930 900718124 873560617 850142831 189335872 386548076 626369045 33586621 313754037 309075745 926561435 847358370 148808506 800462880 746556391 679082218 642221235 54506548 496131198 134739552 583816870 195433213 961990131 708785486 228108468 850256894 887769592 851440377 627929206 424253883 759643335 109549103 331893833 818621948 266546125 173352549 801403538 239349372 226288674 240667124 536013553 33422427 832653993 253637441 647153027 901554614 731249465 288616353 535020099 959872666 176646174 437033046 131338653 204475845 997131987 327328018 143425498 872686502 194295558 322392138 824979380 16486960 464693086 294377191 737504350 96837259 751714404 688158419 840152260 98386657 751792991 258947349 389589850 300415635 800633717 326069404 953973182 172101771 187726149 945580546 839621700 205631218 11252340 647111509 907206727 369862178 378886440 162029646 469828874 744361440 975249500 985235288 1179296 24673680 6815286 406942852 984858512 773482908 179368733 314769954 800941731 325950176 514113584 667507808 473329137 140626366 636650278 939443507 91555205 207390429 807851608 249479826 7572084 560102813 78854815 123255013 464851321 75528492 62967067 112569155 733250490 627618414 693446666 670903299 898735364 419043057 483583010 433804611 580589592 567007888 119805259 687827270 535042194 619863682 270049689 553136639 938870544 111062870 53904894 344484926 152318425 869845028 546451046 300610197 171255845 473918576 690556100 861063835 748657959 462097943 929764730 251211071 195771831 581490055 749273977 773940943 222938586 513002547 692038698 902727134 153159235 112353095 323886225 198889575 375132747 567764790 858108077 833508045 408990097 395207230 882123423 861646443 861140645 864956250 563121072 340227416 905179451 835640125 732402194 890831468 112379655 246246093 331751562 48641807 783566804 808388556 76605254 937560219 828833246 357472779 297565747 790919483 907907251 112578762 398665734 903978415 285334244 382910623 752209490 519514660 587133017 648194015 116442936 828824427 779503726 357502518 438427542 511975066 949085004 262728162 745255515 749567207 532694707 779928327 365557549 443472098 167905567 125979698 841604921 795035391 464983409 447498477 21335493 657265628 514264447 774390332 329532565 96606201 98804666 793936838 654801222 732136363 776621798 237380046 769717948 944939055 619453197 901314907 688925950 746424220 906885176 228845150 608899494 213099248 6930122 712138594 901239350 308160461 162870053 958953388 822289364 91848459 540510630 392556393 256148120 158431632 743511112 104787230 739612143 331586627 892518520 821867767 438667814 550184232 317565725 391485934 856678364 169046450 50405084 729870600 582148013 60765041 102371597 874402308 925829187 54160923 70260336 742925358 115085903 763195670 178230970 335557096 752161041 875251075 628399592 41853632 107345271 323662638 759252382 201634385 770965507 28192187 231107824 977881535 678230437 806062074 329397051 871849676 539953080 928016799 220402288 609281277 443661300 374867055 124432518 494431703 576390108 620831885 418811553 610682557 218983758 261265455 412058969 903379628 210730917 265576456 870696812 992106546 522710409 508034229 219715163 51002135 225904615 375112793 265504464 277116197 590689690 980771188 345735389 270130317 390171602 38706185 619064230 991047671 892063583 511524283 806002424 490130552 635575057 411936978 878112759 221365472 722708256 266972426 432007546 314534804 245262163 714478229 532592194 282379291 781075800 645687592 775852452 197332032 11533854 570309328 736230074 591694922 543128682 653005820 746775933 944229306 471071060 542090044 740531817 79101099 864407630 171613987 608676639 903427604 287737615 951291684 829007598 314808236 299061889 532975226 965674890 467329882 695918796 766175424 399519579 361175438 500449402 179677961 93753970 836513320 351204684 391442647 91033185 796267208 727834102 402403390 987180385 714319745 248579206 881102230 448423178 639428926 482616266 49792505 904626478 709059689 226731712 950692890 611135457 427086309 591291164 553904510 534597629 371785727 265843973 931288275 85920786 4167042 800607949 583943423 863569307 279794430 747163033 290153475 52852355 954153298 937917342 353988081 495413315 391781717 616098227 78792592 939029602 386425675 257841349 851622721 991772099 174232678 399880735 162329400 534280089 170025605 781134741 934404173 926107366 706790555 372063739 204035788 503261145 884083665 530150513 631361023 754814113 88407683 526826704 143232521 129219952 270887564 677552678 803208853 791113256 561496957 115836017 914142016 242808916 338585617 832866218 487826790 288203082 856734444 20408841 988210593 952443372 382540308 950715927 30427116 959209488 461741186 794078516 960446293 758328989 763652043 405013218 400562206 940411759 456119631 741682383 420502824 423690008 458303366 554731420 874851048 566543642 757586483 281786236 325152833 817531953 353503340 372805079 617232502 492400340 358122864 931971852 950380482 358967351 82424111 544576091 353697086 58020351 957349964 426642361 841711246 69746890 184851548 487916994 558944099 513690848 228835771 439419459 583082018 70283087 529055118 964835741 317815708 809340624 816120759 831590393 969979255 504336845 751966532 889830150 267230983 204492954 445804607 245411383 918659522 594596030 267589954 391832091 852161065 316426429 94582504 112185164 455994647 567515659 822418531 728875738 381028032 124130514 112045038 744545756 116228328 943035159 86033835 269015481 6661987 709706551 511951028 213527138 48404048 552859286 993206418 436645424 493433283 878091844 688350360 949256975 178184909 252287610 448102434 211689514 916759528 676725595 283943797 302584483 53372141 200355726 370842044 662236910 94487338 213765270 278857510 478176867 184644297 207587954 278288144 185310429 525443132 354130963 747502490 617394593 50150680 386484067 393883536 588677204 599640175 396432168 918779513 67105747 189580014 19640178 876404283 985686196 419002997 171347815 741530530 552591810 466203979 123040638 977169385 381139700 411955623 785538007 898075837 822282863 141793357 862719195 99923881 340366254 398958602 788632706 886131316 303468126 964360927 961790895 16226362 938910273 238837129 401250968 554924001 494048813 114584792 239415506 370926335 758916055 33450112 645296516 357905710 658898708 698123694 142263317 4124808 237716651 552675210 810450981 120464575 984569520 331442553 299695181 700761396 651409484 372157152 700151912 824113525 134164928 508907883 196944784 629278484 527585652 138812249 374616884 77058609 790108970 902631596 295834372 885118576 523882187 604600612 566447593 387314775 730619515 56257633 952993478 381926879 498185833 884083104 816734209 837076572 654428861 400605562 573892319 552314610 203763131 226699164 412672744 745416760 552245796 43300768 115851006 484340906 357278372 891129470 592392630 641487902 826833086 640832886 290573531 576141561 231506878 442096004 454937314 378730114 577749745 146168096 780008879 497591352 705282746 58961877 627538354 372294136 97554506 99994044 690903387 625594287 221212414 854912663 358478497 641044687 805233858 985136683 322352948 485170587 720683163 36328323 896809340 297798800 574612757 465345563 291101622 211608560 72604816 555590064 769241817 939924108 775736464 808613067 524405259 669948431 868133722 940036652 406284169 790156709 784121664 260617922 63956788 245326149 139396734 293816427 821019838 915293755 385302695 679290841 203536573 208314494 161050013 514866366 909914953 698954139 638907778 350863159 223149644 916051807 248196977 174972598 948049241 588211169 999124842 564518302 734307799 534019519 960893476 109482335 547204301 535589856 495997129 11668155 350000111 510194178 949976133 955274303 429920495 781724615 787654488 28135955 133786313 597015054 521956398 32478464 62090634 334967636 341871635 759741657 28135377 220597858 53654738 72072912 115142287 366890069 785434549 348061247 242405806 6375563 197981697 780601056 882071109 469094473 18177220 121198355 260128454 377241624 298925686 767456599 622259942 263204490 613011695 944257472 900925219 171473511 961803569 458818022 18021462 88684730 95066159 982447107 330234209 540098405 384279573 862582430 869453043 193982876 57182524 438504871 251240043 576011668 233694179 882644723 969721778 527308960 524022171 370505020 813017619 854300439 918158350 890849864 488669316 207223686 982823449 895759015 40286632 777382036 86857609 27725217 650886 508733832 396125190 989538887 593759288 64203179 79609176 294128638 598386853 775714213 310211325 797355479 45814815 875343649 122918218 114404758 404823124 422420201 839620630 888950959 726323246 680977459 494203167 745604241 595526957 104859318 655071786 919765860 496588251 890506167 725921369 133592934 989248242 53222313 394578433 576113492 437764736 533952218 969324414 744262721 333275229 479328121 830236022 177786327 688162484 745141509 608541756 143643176 800464613 655759766 840454244 896330326 722297657 361106472 750188025 741456996 376570578 174895061 333251770 770749403 146567749 209386569 392039368 766435724 649070516 810578963 570933808 449655593 250109645 50395694 880665549 563941498 2710154 892357402 585339413 46557908 294721141 124326961 765728882 339248183 354928916 661785326 167041159 484202699 486811699 343054602 284987025 646571071 698607652 514803595 916113586 799403151 367766453 502409308 144960826 48647251 792295680 305848251 587013765 522048167 241067758 846157974 456616408 698609658 222794174 849705759 850499906 542127085 105345236 953850128 528723174 402663925 904211374 685706140 373381350 460139148 480495670 862510934 509971659 430946288 560562545 161192661 967108508 608056494 92372335 59774381 645210170 233955471 931320753 199796689 414680263 331276302 478013386 958660365 411183336 236834335 687708844 862014660 4737126 319924272 392298591 271092209 552920384 419770637 146205114 63469376 850862894 92265506 962531140 927868546 823688231 792949771 677244161 492323056 336873262 86649115 224982708 586299839 732967024 91858847 815372813 569066744 144858989 848858359 883458475 668918483 270673843 838644876 320856435 931302285 783362716 611327086 780149274 546282842 736081361 978124113 936468308 625861912 982722807 296051684 577613774 45824932 815104941 243637896 948939472 355049178 920531904 984203853 400949116 523153886 275026336 833936395 729570009 257310237 265854974 700777314 958717621 992682206 587201598 670977279 341907896 432834847 569173978 221549541 554992803 362643431 676192230 299704310 946366407 229397437 438181034 317918512 668597057 157970631 459066352 975560271 704844847 690312396 123598190 438441593 707577932 389412813 348356261 352659365 993685229 411051556 293031250 758033703 606366535 206991346 953347993 517927341 525110168 675079803 69248668 786432680 869515878 725782638 648092643 672680793 801251261 261281445 387200777 712800840 403408646 128805488 481521420 591609479 402054893 956063231 248967586 578795325 373950690 690975958 964616054 516093306 965452217 737877037 344696705 486608486 461391701 150158311 547934455 623376892 704553899 775820829 173812259 508156023 129269093 938650721 369474670 18740713 983911451 998437061 751600958 846823524 434265490 569771837 299333881 720082955 751342608 900534633 529299283 239694240 489309288 790490632 591638784 308368640 279304338 722747872 463931561 884313246 878491303 90177791 294991483 234571998 423997728 22062725 638681463 944006082 794585928 170352170 813345988 105265969 113877662 173686623 509415618 265978941 37355468 643833359 544391576 140272168 765405472 482903946 63157420 989983370 377512125 113858070 3010508 807399830 31272929 875776679 541515023 623022589 99435118 819594454 18296715 923486552 636879307 204186938 186493256 602445834 531577702 50687983 3028639 315723470 763591763 750126390 950234910 565308914 481786597 43333306 873990423 750836386 282839358 806554806 685753571 951829636 228210331 8441455 696935588 929051093 886451612 655262145 203366427 277464192 763375471 555128363 422354736 130178515 288445270 339870814 877012607 413300269 498813163 363756691 188665768 424571702 646528035 679909109 242508919 168505539 274335168 219107369 218855036 125949970 149179369 178834746 964353984 388443308 283135579 904845306 683538380 29203790 696778643 884878298 546591820 240483864 233306041 764432661 9972196 846514487 128267708 521768281 344827882 762750174 48683363 770180847 294895825 882911563 908680323 33052543 670821339 658786947 198059325 316398850 43878374 537434488 637624797 290539444 188996286 951577266 870537324 314642937 395522181 955134755 521493699 696338656 255869452 959979202 311876068 366659832 368153893 800406110 205340621 462355419 635657362 33961446 16617715 226346762 151404087 155956304 65689857 593757703 535871298 727838396 665665371 591543140 467403511 118715064 692065599 948303513 781316208 31059556 692412850 196481997 758432110 728053923 845739653 237301947 400351943 835329501 421318686 141533710 531938898 531141397 201045380 970068429 970824054 911871651 942851948 221771664 153915552 256669731 386665633 872107802 347424527 217701297 377580760 670540536 443259543 307337644 27165373 115459113 655074987 673396983 116008383 284297735 904521612 512943108 373088212 107435965 241994262 879378949 446546599 820933013 87792232 8284338 986557723 41424121 449643932 632890683 651261983 257383419 306913860 879619597 934682057 114334773 723134127 353690536 639462217 511608481 969202406 288546372 801920845 122010739 249673130 929247006 378634881 947578823 770096105 177765402 564502287 902522542 794458055 881134963 53849825 600658103 164243653 623389949 770321923 703339392 276214786 419775370 241579949 892743607 639515984 109888356 883108829 784992501 237085488 864541915 201275205 248651773 19373538 394906597 312912305 303706803 888568966 188456740 333246547 463893435 311879552 612946182 842970263 56669386 650417826 497875851 233328801 708043739 799864223 78596943 419455043 514779567 837250352 784958317 580927280 39332103 714469207 927276715 36387982 471125041 652175659 298621010 292212111 673839248 167365523 963008127 401192761 65972784 296424225 897436294 430973444 718449196 734725100 37839116 411481898 394070313 935497144 680494290 960050529 964683559 265548768 363046281 139518335 490255605 727957364 128001154 531085677 213146370 798470788 371177191 227833434 172390830 899997311 454049964 541245230 92982099 227493243 747862123 425156277 762586677 748356658 455565314 645138795 953795733 364306862 478270521 796362850 379247511 230376 463273116 571546915 85823332 993445295 362487567 630735117 676453180 531346731 400384554 853875245 918439830 653063216 263929692 906339679 611186816 737511203 319477214 502011188 945385039 310836543 303218142 370076353 551572363 271774962 603141072 153732734 743191680 350597146 661393544 574490360 330852968 493061788 362367732 708437783 356143959 216351758 450926927 221040953 296212716 776938831 347467657 992205664 472139403 73511805 99628692 784552136 561354855 65417578 195893488 646321411 75307271 75757136 709742373 622384796 737962493 282280159 659280534 470571765 837918379 636003958 69814225 443031239 822705086 962505159 470994572 814839015 296925313 545800583 339515160 147322399 139927097 394501821 966089701 588527148 684712752 142657117 8657756 902104009 987760138 794963739 9942503 216216226 332208745 965931546 1468581 749025709 877962642 200023704 508192471 828687684 146466514 238657080 815773392 466942210 956704867 177291620 426624714 605836028 966262107 712211727 569967714 996825937 88545657 84929348 894760219 797465736 647518815 207688631 842688010 752711131 976941805 242787847 851073262 448783194 379261583 408327284 298267327 346231095 913595086 956834363 352950307 995999583 125185590 201653219 111512400 688434081 983609051 346662764 183203947 296307585 266714644 939243351 111438333 288151554 463694396 136884501 928777680 13631970 97648774 410165139 440787124 985810554 911522914 970646645 621831266 330906600 214667714 941930584 657402234 900796382 817628080 233004471 151769563 661087760 140943054 344767738 572036268 179592263 321496013 564085502 719429015 180626518 901443958 690107916 498423626 133810797 586665861 994779408 803254584 851828355 562664787 468291111 857694003 399978627 759239240 471507693 521724962 807628874 422171697 258875305 463821813 434700661 949222051 544601987 724628213 526149742 741338465 803068877 431207864 270060977 259628609 242835691 98748063 340477790 689951589 389805561 26126261 284038880 313752017 645262348 402386531 645582630 699678120 210010386 135847092 94449716 989818097 486733380 354029398 798474164 185055108 491320449 357693458 624989942 690894540 33135608 65373222 536273107 806332802 93284195 145723819 899949054 87067591 489993914 370748548 348028889 935921576 540275620 739424251 914677691 550881246 276113439 204668064 108847537 809254953 649697558 291675835 809685814 697096293 762657795 315479705 765528012 968280041 980931595 736806307 812579094 372015471 74717863 762021367 888203265 692167107 173484278 135690803 670303877 914426304 563336901 128343642 639100811 46661476 504844244 613857184 62419911 146445150 299216382 558437116 729119573 186810402 120107374 869496064 581094359 389132112 149313598 588165189 871523395 878660609 869226599 75574984 538200644 564584706 259759235 978409690 526064920 501298192 938813308 358193970 613699029 552520135 879554327 19138634 73244459 628689282 521330460 425037275 132483407 738326947 784158400 220589231 34173815 711820128 166029920 549946303 936017928 532540181 845240083 422559502 351673158 199117174 773221126 449562096 527061111 844709202 597997140 37113411 748926571 647248436 745571378 799694291 531668363 944849042 849065578 911632179 645761784 723235250 135011708 106461939 68948057 461433768 488404336 205266119 539352828 575848527 479693873 897102452 789985837 954242770 305019798 95626585 240676651 105808185 737580588 280721079 483551065 804867344 781072503 209020101 381785230 473801389 671300657 175459578 582138395 10375295 167789611 933874444 16066148 666786232 912350500 321443977 327486580 62779699 370055822 945225452 658540892 984297637 905365711 654881299 271067414 42619622 613800141 495057664 4922177 405727048 664226391 278586166 711501094 87433513 522812926 90532076 35778914 897754516 903042543 987408868 305211840 108836763 319090843 899181781 397314543 580119352 256180852 778940586 930606584 889921924 581202807 811166955 926703572 540971971 212215369 534679761 187232207 690276935 35734090 988674156 641188978 890728775 901601901 865775064 176285569 946187354 374432831 547869817 31065433 410264263 42245563 162063807 566500478 608622663 250325770 702153608 727043024 731593628 719814485 928495084 612973479 610459699 477247573 144511475 957704430 918814564 758723835 201050340 804783027 46751166 915528366 314103841 177106300 643416949 872076412 778799393 519028410 692826246 775516195 968575714 216484307 23232076 668706802 58815063 568362146 922790352 788432847 804916197 58649078 348768909 472598157 35625682 280160953 84891413 698436076 239581401 470703898 576862954 178442377 488788792 860719869 532625962 60814440 369471597 290571813 776438586 933011796 599164899 518489046 966039069 714889562 73983164 290448855 653081188 346466993 202070061 760230795 294802906 594435611 825150171 752972405 438964004 971048429 733827918 579176486 180974992 908325503 673804423 949576759 558033334 574112033 342894072 668346049 432887495 889727636 896865089 661554173 407328871 102913833 704530147 691241561 25836107 593168401 262108767 342180621 194197472 470262568 380341306 326930659 413514442 565931698 502810918 665740849 628241797 575691674 578134781 237097421 211057059 584298931 910431747 305644259 93878287 186983168 594803703 297944630 513643098 707687030 158992893 943164364 321271417 812240759 374531058 98130472 295913863 158512690 200075547 361447434 954217474 475963992 477256490 892203148 526159883 137650528 161977490 665694466 883801180 865309969 348139994 338601736 911604312 621763562 382758478 179935070 439129452 452117080 873902315 914358665 549097456 461726579 846612425 372210099 181560154 907127334 616971923 363477710 747410700 405186713 397253491 191670080 935390008 760031676 329996652 884127508 455264489 19742183 883614619 99319635 921904841 549049817 450952396 475981578 8060510 191171636 272129447 576254823 508782330 60879036 193078101 714087017 789130724 928774653 972401328 572642752 437198449 378932241 192954320 419303181 112965546 341461819 991049402 489381277 742931720 390605485 926872810 277217581 395098340 432584966 65718716 665467119 924467571 547172189 37695268 71513298 313082547 310326159 817941735 810289517 327582843 322113821 630066954 551365397 164148646 618539018 194506701 325454486 61165082 720811531 864051311 967114257 133567767 296904085 455743393 831689073 882309202 257266890 537002123 785408809 500625588 715321275 287609106 444027467 2882331 773943207 319675477 386062611 837209731 958714570 308111429 322019925 735922350 69638401 884823483 227367618 647899173 908766823 366476039 77441172 539294781 291062825 984992566 639424818 103326636 545819786 374158362 477048355 162712296 615947743 1734240 400865345 535219628 828692923 97865896 715704116 95878077 850374563 94243126 509396844 73768497 741726066 204529566 594792718 142299623 287696589 862566958 67502184 157918888 304908328 842060782 891891959 316609252 841849462 127599748 836260576 902977389 278057149 105153099 401150992 133936880 768886358 257463944 409061435 74867406 416393123 605073999 244048554 908703119 882337841 310642706 548873110 38653055 95391255 716582 654641747 7579126 335588565 511752976 709374359 111396716 474561370 549146680 819997407 914306492 555361330 514081159 988232167 107100883 189627861 589368091 915499907 257178040 381135159 657001944 43154530 14676859 224284602 892016092 67445439 189228963 954584896 754458138 591399329 211589168 831186499 482693398 617685692 844496012 965714342 496860630 888187133 631767419 35379761 720251842 916179110 343398873 91036204 977247748 439049629 962182510 41637090 347358737 528928412 462454585 887594365 51934353 61164071 493838679 245122827 310901659 960373028 66668102 697174622 49586835 970016933 399234011 920697462 9537098 551465477 804937585 508267572 918293828 890014530 45759784 78456685 781263702 572263363 287881342 781397399 971350376 185947626 115708560 166167367 769053437 770003912 47051184 981611824 970776461 813022983 255462245 592939317 493944139 191105570 211352909 232365537 375775215 365132198 916463339 885500550 544690603 287495969 830547643 34536683 494888478 276189624 138147392 832218005 189550007 559833047 484496057 778224633 328409942 779445587 795052209 154784339 47987458 812078986 449162854 307857994 298668194 751847751 877398272 835629297 494458180 478483160 204310746 18917851 223857672 669826613 494612071 11144832 991508073 487243109 181606413 556299806 401531163 770359818 328869898 756198319 811722020 143581179 687706517 196423040 959602168 130723211 637142311 296026522 742881716 979768203 480222786 630934223 678687614 54673822 625868542 756288911 721930926 779183942 910981536 259931773 719127574 454891793 909609488 568478746 23459083 987117941 910307043 475788793 784718689 463024665 638813082 807673487 701659580 370009567 331416101 415373484 106946003 239555241 437434420 606825310 800266432 972940882 798009572 953757953 226510146 135816397 587064422 379793347 439200088 635404234 979146817 995126245 65129140 63777259 879773915 767610681 918832734 792312042 826819893 557585597 294324582 991475965 27537674 653358262 163453121 559812170 838617563 405966060 111354848 361748403 358471700 688180892 221644256 64025909 133223989 804258530 409238861 540735149 419232525 731594151 909870123 890690468 74714417 37011599 543903324 555549950 367121412 358349022 442877119 396534049 234653365 633540811 588668392 185233147 435379644 184170360 279292613 384184074 374589856 332587617 652770826 143177668 983322382 566793702 23247301 644729443 802389883 312216786 965960350 794464540 242280675 568823296 378694506 502346144 760403422 999297808 553372545 824092623 628415520 32822860 199664938 686795632 72350595 402551502 762790008 739517111 111753963 959466695 726691595 234768979 766360085 755706504 347857001 897873499 634086440 796864689 769934377 64056379 112104209 556231927 481889463 126434292 722785470 327994214 612124520 889139924 698967342 83033382 505836999 139396621 660350003 743551601 439597563 262719879 520831528 435553595 574013405 224872847 16791018 65986957 869856722 160055048 823521168 34881098 369737008 157505832 336310070 516527749 372594274 832873680 747820643 52099380 517086121 608931995 794400155 90045017 802598155 590229232 581933888 516123161 911879190 211073439 887092119 117281830 986423644 680817466 233250087 436601839 410881311 317614771 446064686 123119474 123676485 766212924 357824093 349794097 102576248 807559164 515757726 994241305 639970231 230027463 399296700 772186181 683379432 86020428 327523697 801444750 88926913 892566946 47419729 914818344 967535564 691841170 984548996 357894135 129488752 60155199 95677587 105894328 696852034 291263148 796541168 779807817 200973311 569074551 965416019 872464075 164805074 507489595 191553010 17296835 482756381 121590609 897889149 383684783 3571396 211500286 980432848 631178891 784601378 127920637 223562846 67166924 781843312 395054959 479798257 248174806 388685479 607031868 544581760 191594595 636186733 199432673 55174738 862930570 556496501 173733342 913824441 35577652 406912374 340395659 787312127 605643750 524228814 681061517 70248291 829581092 804947360 559582477 633027019 150759409 272848559 55897155 131649176 634962931 455939425 476317724 271137198 487243979 188362148 792790593 303991733 982442703 469225207 642604834 54269158 133874623 1653330 106285439 382943905 496993420 222404920 579260569 611799229 817612442 791733238 522628652 860501403 812911912 181764096 251078130 571414189 592695433 129899257 737195692 815990663 542878828 595706782 121386126 259842926 577912646 144078088 59753496 726738401 152382766 72669884 142778933 24136692 128068751 823935644 184937878 464232805 326113459 705335942 75174287 974767523 113605828 262340504 288297426 411655042 363072839 695796131 477261495 614501006 136055000 885445292 991307214 907613883 157117938 643189811 999062262 724650054 737653588 345386402 723455959 117825656 767629575 594970529 574108441 474025910 249097791 943836610 38336002 442351665 224745619 460774080 602188237 806934192 312993614 313780881 138063350 33296674 610428939 267110464 667830518 609227660 659728775 889147883 560134038 615406794 47266747 771637389 207032911 13488520 524778116 939494546 395367436 605926807 887029585 658957651 672012830 96033133 696221353 839447844 508391353 843920152 516653959 335049335 733228420 603383453 451886958 891060784 166204170 203639033 714099017 660819669 102182583 969900853 337241085 644799565 215565561 176335617 966723503 934274213 95194045 892537718 899654588 12895092 525297371 686126788 623761381 675738334 883461875 609806539 837934485 387920481 991542506 993161310 159764809 171619814 802057971 341489209 773264221 277871670 764612075 459204742 440050726 581332220 27076132 704392186 894189982 298894225 900090599 231085545 520524617 11981588 908646734 380553391 578996908 390016641 301496699 817292903 190451080 252022778 509685727 574511101 338277841 81185119 765443102 322693128 16411503 179501494 117881761 666357086 921524495 751624531 791041829 305021284 386231215 804846396 641253185 794856568 514333290 512081412 788445571 820845746 432287396 939569519 912551463 750301376 820227514 814744012 873192659 778841197 662867493 261592299 310010905 449406168 698695450 231047520 819082645 787117416 235924001 58195853 566071326 356993703 943500086 463097309 781862624 978741868 844817724 958441972 505315777 52367989 950916130 820544597 12015163 795172308 665706661 548789111 679254786 413589132 759459374 521506748 163874642 398511827 532264245 258381128 785181095 434944654 917219479 350755274 210210237 47696447 699889596 855664197 610475709 456626738 600356133 634208176 155267299 150284344 383156019 812553940 517260980 77547093 103987106 250887360 841457110 986840988 286855872 633618922 12401749 116948513 693898308 911067010 948654744 624258639 889031719 309746765 84304830 640199391 80713200 374186997 575957140 813543078 886741602 241497968 351360655 375524836 58367767 542248468 788443852 794671876 692222913 147996530 341234883 590349247 997232229 590987919 868086236 373267097 318881347 432196299 103838302 959238500 764088229 378983511 384115246 325638390 283625263 953960162 70028396 389973313 324363841 847739536 55475798 138669794 565744210 511001682 898805128 601965729 632425104 353909804 746602826 952372992 519900987 742392189 59691024 12130262 610319155 239371682 778822575 342949994 799986872 462304693 224442120 442812378 342383020 237875527 326908109 593299550 5535243 127055986 648767238 785564053 255907066 918800850 300619904 546052981 304035571 234122334 24073720 744235067 644247871 115928798 275653227 162980535 862014760 641029594 758819532 538637462 648897200 268431398 949290122 649526785 472424475 60357796 260459312 634243938 541105040 706794835 62900107 136918422 260338511 76765221 597383596 746609796 917994416 712390792 417953248 786131452 91864116 98226076 994859045 881721783 722889381 184690966 253499390 601981221 949145561 973866818 729224836 347602477 538512628 312046437 180420419 891121125 94666638 400624171 647224074 29049496 683908633 694018187 532139779 253712566 683334173 334199386 50344882 393785418 137010285 877774903 920291126 237705221 734220673 782302839 656559286 486224043 581727662 648468865 209383429 39399706 119452747 132365033 584331396 626031808 808111726 124924981 435551541 286782839 312099278 96247833 280623359 839253018 834368741 17334789 682461577 494683596 788620124 374762445 253761423 740264520 838767632 217961814 469984640 107317267 838503519 349885374 448706095 17637719 666143199 809301518 187251615 79460728 998783805 29480536 669146449 137357364 742706133 964371120 664518376 644246649 459413182 209861835 115534207 36082812 183698487 895763949 933749711 108353274 256333712 829957833 563065565 204547772 176372732 426088387 198312873 706738480 734413871 96835848 207195550 364495974 917161613 816657016 599712709 124297541 385475713 94537389 145881372 494440549 465850371 313993052 494135433 63939669 341453096 596496417 603229675 378697454 341673679 533258482 287791476 459667658 563532365 734716911 347334750 632727932 947621827 917883738 700466323 557690699 150147873 369579646 619510452 807436954 789364494 792294407 245449788 810413455 435566298 378544 41872607 259560372 415924698 982932460 294324033 262514672 236577095 113593128 306644270 273446180 928163262 317952559 467141800 801086156 770997638 278510646 12804002 847026671 716740251 424243770 243793012 270946993 594112724 421990121 603634344 795151613 437493895 63108511 664661020 648101572 218203637 45797771 754098941 897615056 270051921 301244390 859346527 857979466 914853251 979390650 324363603 830189739 971621042 340522729 993491386 512067298 327267045 138051221 551564268 164494924 925655438 955999971 228113747 51513853 380148291 240767401 599644990 996104746 467230883 645856287 269840321 436305991 955285830 177949888 332668047 321640705 243269003 55976977 100206316 733909739 719442639 638519171 967523750 365576177 809261017 804797731 610343023 687321769 376079211 356176382 911585746 901947443 7093869 429433367 712470602 227934636 239235190 187021876 430755173 138278961 586620581 218019994 583926364 15169957 780359483 99102051 751298492 806476259 570586539 689921228 884069787 508035841 21606940 857864820 122185333 845027766 705353764 99260956 62625609 242856175 365821904 995123542 668398350 884826548 699747387 338123992 225065006 534403076 401117916 15918732 994787978 61477168 364908490 208164186 854365095 767059239 502909886 645316035 887126266 135372846 63666221 970415440 78780430 316725008 246818596 715245396 752685524 644226913 159967014 580760565 170802684 231723964 216870302 337778806 616986467 11327474 173808278 58104874 159115770 558118766 683929125 637320814 38883567 209539846 690137623 692450686 620415218 327842066 472697923 802799583 18841586 111519887 289313421 530936426 631183780 821705175 800806765 925142806 368147493 34793905 669899980 302744923 357311836 35137517 568975866 296055182 529133029 427622091 390723761 672105221 750711599 687302089 396815817 519378588 563589784 255479225 104344299 670544193 502089497 681738386 528474971 647274246 690453999 315600908 145005793 545852972 227160103 276821925 945705535 683808041 856067433 12668029 551184332 77580847 509600489 132812924 289166996 579787314 416517432 21839323 429322258 424793717 542369816 581679343 35009361 487274095 901419805 394133495 503073898 450452617 707973708 356538792 831624573 196776540 881689085 814458868 240810466 504020327 28578296 79273400 640478260 852312458 984564771 921178425 101468310 513619832 965484803 492578612 821973446 200263845 457006263 24731674 503214049 58665278 370670026 479997591 858580918 57403712 155837378 17303158 427605408 228481413 246673564 75180633 535666808 922142679 185233915 801670511 80754541 609178168 964724484 764422836 412903829 1269143 699584783 841156608 732250745 873549365 470756320 706746583 566693402 259919135 361545692 137202292 668594754 287018536 51690054 641376711 333597542 158689827 800739223 709021440 847266882 314086396 625729104 720884443 312769303 178791892 398179920 4863676 149581071 193901088 895404249 48445253 881019920 15420291 188136858 603351986 646617708 32240547 860189998 326176532 964053065 940019043 283366002 200640086 929554417 81615507 267323768 985943670 952903519 235256894 482116567 628226172 998640139 216566684 203237263 62844250 179629856 559244796 234741975 161860501 10088907 517842302 306575116 995647494 502838274 62617150 792856212 120718820 881710914 223000506 850397999 694575018 783016512 662359634 720323189 772037675 25459155 299155284 969919702 948445843 620863548 628990414 988632128 427263032 183595200 305471746 490944398 96932528 568391294 915945651 661654776 532448012 695222394 972690063 367779634 353328359 289671991 454950288 660817638 245711484 728123614 950055585 695480518 402873499 419714301 972918239 977772262 311848997 680330504 914612858 138063802 187176866 107334072 477000895 887093347 377470620 138890607 301828596 252876357 305598629 208754745 207358150 588406189 46937173 769261188 30145441 257109423 137305504 780322724 44472567 835083616 445944940 764664793 164939455 883712848 346116845 612505018 989128100 605069322 141580255 264955620 743141257 204009688 415317466 604653735 873772462 963616414 845484389 30862037 45183050 584029928 776480300 748923709 18019951 50976337 701339258 780880826 850716646 262623969 581977893 294116607 691388742 578083559 347496022 365484630 987957583 852996882 731607855 908806759 590893093 862312393 756572509 890870928 100299270 510480266 259985167 489827953 949574450 145047372 513391238 913318677 879089593 496236955 309367944 107907796 882777983 52125042 36714480 109567678 966142871 761494255 21682054 187074264 17107832 282010738 628507917 43050795 312527858 491980944 998607108 470355357 357779660 473513275 245431475 101022941 31184531 743265313 926823959 900828804 559651014 488853334 430861602 145624377 560853755 699099585 534942404 879189727 822932160 827345329 293005829 160242764 270486300 412125564 242310805 539772461 71665704 158195236 557525498 380748575 825812057 734379915 761281615 629806124 296137078 841413188 455883210 161570209 441209621 451647348 941743080 361341478 144530356 172753850 397759192 886916855 421735416 778409153 106766480 772189090 328113035 615116367 989156597 632551023 814286422 616756065 249116722 598105482 545331219 562035617 253219047 823624273 819219421 848676183 342207992 844371670 271645454 245106354 271126466 509434906 621886872 236010634 799456411 222471563 483299361 782172858 866552149 895689209 181167794 594490842 692454076 139458819 984420106 973705232 593377451 901992680 534040336 11794498 788367500 82435892 465457627 27235368 318406144 813201007 627734222 855523073 52595044 70821329 171002483 815623724 830049887 933283086 109025253 899660255 821321199 563471629 606081788 332524616 756508632 123183664 133157592 444423069 778422860 361992955 321653861 499549741 69144913 878099292 972180804 530293446 254199828 925896432 534347993 997486613 222447239 132780056 255741332 340566706 955830344 1266049 328808969 380366222 566669025 756231485 443554752 715897100 484098533 842202564 866904905 24916498 596985289 913350759 532293729 663917318 469811311 832397683 153242898 561020463 22678422 868879878 770373244 98195234 376824029 516710843 579120664 942688051 227140209 19936645 987846862 179017575 648674506 903184232 12654567 196004184 366452561 292019031 650972958 240660021 196560804 712448443 456133479 305655615 989815181 374860616 162119412 81430750 92750285 454104646 570813386 816581542 917691283 46318798 472719897 730938831 481816105 866893105 240370071 159379788 865342384 726068171 780463935 383497627 663080942 852572342 912540471 532509794 300377402 543039047 206231928 349809511 442994916 368216775 410345449 734227569 504751524 164575378 393059817 33575918 605562495 554960819 68077386 233220076 633148880 913984118 826620157 10590350 931039698 535600525 666156008 308729724 371094893 515560790 505374006 896848581 531476361 99286984 987217734 641791336 807375899 755937891 379219397 403904443 974364033 44149988 895051638 7292204 122876185 951918074 572382005 713515583 283596289 382797757 999041836 62045699 307901610 477824776 623458059 848855691 579661217 240657595 285345283 409859141 435127402 491895403 716794707 240334709 896066304 7965681 620826409 300653528 347754234 18117059 207388667 28135207 310712765 375438729 639141213 631173345 349876352 796014856 737016881 455626783 222479786 293340970 382637980 816500055 131410824 230951740 126180875 65526862 179058285 345247604 349364796 180366002 817341699 557233974 720760520 660714858 77161739 703089395 664804497 843056788 626904473 985130348 766881743 506691307 984480068 572744362 516561607 385856431 365223906 994413042 995147225 234920410 317372994 321157193 170503516 806851016 815002589 486079601 306765589 710985173 452463148 688059293 713357505 733407659 914437543 32102993 366525260 47130744 955109083 789124758 342190978 482841125 741209446 448659309 734112762 239200187 883180542 202904134 351744128 806122176 828719915 989911378 600330886 304112995 179756387 581010785 152803452 993579895 713229645 628161852 717590000 669161776 611564087 712152420 720163571 239084072 27669616 251576189 420342357 790162203 124155632 122780611 334031144 433487039 294867705 871486902 864973265 850146295 190910363 543579726 523937100 317765786 775241333 878121459 588865429 254602857 165304588 973562835 942563294 125353096 568883629 869297547 995439035 680296546 433206697 72092894 764123692 390747904 323794405 86056957 650600803 136613170 870924803 85887755 502947520 828409402 151549816 638011467 488534865 933641613 271621510 846980329 283840434 984705467 442829546 822335168 153644738 225062178 916374345 639162193 416199873 552592125 763482542 848346538 457432418 479141716 34577475 503665930 209832825 445283164 354037958 293684914 403059919 482647385 429651988 756912065 173773038 161091031 323417745 407857614 304022753 659463867 352286089 469910899 686029054 734884326 707441591 871532436 921570906 707164470 778282658 519075785 659314749 413331846 123328122 429522260 951637679 523046955 467740419 962843567 466327087 58280864 553656260 880243639 457717356 338499044 363599396 28445436 474930235 686544154 38051585 621448936 558616363 85811628 880628809 868554866 150246400 525673980 670124973 514015380 781428780 237728617 224772511 459688521 956014775 183085026 683858885 697094005 368010291 399123017 99841411 780564013 967192752 488386478 984439838 627828596 577102375 423619416 749654990 605787813 874633782 808085155 395919791 902322578 598605821 267256656 279225173 153033558 429309035 536657011 533111853 3264594 853857073 491314755 228973339 129990727 983151551 188752674 436805948 397681725 58084359 108499715 767853881 440255170 942805454 601393074 999118910 262781865 478019591 699408343 332603297 377404074 725848484 116516905 213344374 195982121 917136338 252123678 868603539 178978895 522310274 688541303 552840282 266804099 481900731 814925006 547321579 875064335 319841623 47290550 700983414 817455144 106612326 187042240 161448667 803817950 768299182 403177016 856031823 666717983 809332086 947388504 370918632 492346622 361053764 466997782 360945822 258782738 336067509 928771558 610280579 796703986 359826763 741278561 94424771 848684926 54639629 623962864 114076552 650480638 203222834 784480276 483608027 178135653 59993941 429227351 172843059 522369814 263325925 601841241 769256811 862523896 709431846 95245647 170846412 771630473 156914325 945786984 220897898 308541551 106721487 648901376 748794221 981252294 408329957 159598253 722939895 341159571 336636191 960930092 811308624 59837396 973418169 536944020 867651881 187445038 650372320 336365364 608248515 281390085 128296928 882582912 195801392 789763423 423992468 629971237 855623761 837497549 719910288 623687230 861090454 875635904 98394643 877793127 289433905 10894218 978418477 962898161 568055964 124334795 803180285 676085565 137474919 647464096 551843133 538294402 213269297 755114534 852298955 421502035 812373862 25102511 463886411 502472625 161489211 328672499 225586854 665557877 774321893 557681409 649123512 450642883 235891328 237453745 109839289 586412743 180445062 831451659 15768100 558907766 483539083 688811623 333726480 41266869 736214050 755695636 792028606 430814818 699198444 113035718 618119414 26413902 499208281 68284213 894454863 997298090 250061682 139900420 589992617 763457871 689887687 49467197 247429405 436468138 191821117 925596067 187433555 883381232 569044749 18364227 327890276 857753414 292248431 476209629 891364143 688839829 93164113 468738934 524292017 451509444 991038525 873656232 142168557 192256502 938240086 271900989 532681434 981698389 939665458 135792284 920578967 804550281 508184120 201983386 822404148 371723354 897125961 978825624 87431135 804159742 142537649 50992971 690390637 716245811 249637160 818516088 155245810 660998284 353689582 154516935 570605686 850407733 804045734 227101828 93074146 65707382 693986027 747875233 894771403 464238500 721899898 768337060 809027454 479101989 710285609 486044125 975458131 668938442 388190252 597990290 844293482 257822714 88967101 495533958 734378668 425380286 236890862 856054905 356073518 946302634 69140981 255839356 248110376 615951018 776185245 33067561 720899652 575163936 744313234 977551483 744160407 367719305 124028331 900065306 760778236 32705931 328342381 398312759 587758179 567276888 549486283 857098577 198799687 5538526 652660407 272090806 875712474 468680043 442860628 141949565 750274900 512396554 744346195 290320346 842431605 104738674 642254107 417441296 22281956 89540951 802765453 704181873 423068477 481107517 389622096 629986759 990429249 100512716 836970631 358647287 306799453 145439156 235849286 579330956 477193102 994843452 504204696 344100255 517235563 691256834 849827049 811888309 19275312 649128119 309872980 843904342 416310745 441447719 282445011 142642579 149567031 569306386 708931187 15608309 531984116 912991925 98540867 627673461 203106300 728182356 634777421 651484893 977605133 848748043 30589098 746404037 397004547 765813400 342123429 993205383 690409702 494876877 477553914 24387406 259645092 508695267 228979102 165408725 895827382 195088187 120180855 970066897 253414322 730201324 921795937 367327398 799858370 61743800 85785314 219293247 383583292 647970435 930304762 276995939 52496714 810156080 82843362 928194079 638144698 828076190 550299988 997250840 863435794 479685898 433600228 617653681 178438854 244776616 125997340 300805604 941890002 969142999 546354767 575477424 710214642 358181445 683265773 782962926 365566765 345705278 110544971 60432815 613746645 22410145 356638353 233714313 640096440 371906104 848625738 101675088 85124887 732031519 435524471 665368701 554010430 177692736 57897002 695260441 784383214 256485311 776946242 54028696 269631005 535847587 560352068 402965054 362930425 142341990 904024154 383965554 687850615 514795968 140823592 226670728 10455111 185929976 275778243 333477590 24734662 834987010 485865602 96763552 224214957 843747398 803533605 828310561 7876470 202847859 541185789 806459987 174989333 508716262 725712576 860472236 68970430 882244623 808913310 420662592 512317815 282626838 609851863 173904169 903887058 690790231 998905466 138475108 168649132 564300180 454998526 268659580 165474162 115412562 370127499 978298294 232454444 985615508 443412697 822456066 69196858 150969310 868161414 28041956 278658806 331608781 867150945 536243764 86827496 990840607 217870449 157616999 979361845 275342966 838212191 217524861 764072063 820516745 993176548 93793238 887185030 701067811 6904927 220614015 675455728 720524006 692333090 795290447 602422512 393034532 609734454 278266332 564640032 333920200 85739030 147978239 944469469 848924397 290046306 800570650 364486606 660577038 835635943 154943313 197930435 860094672 93478435 1331476 775612408 600834723 917951109 100460431 730197242 495808910 178418738 754750911 958522212 478527865 881216291 756136773 789157480 665027264 627714750 121930942 389440904 391573676 848874473 779984874 909106248 382052544 277465646 469267936 554590001 537694376 983340584 751698014 557414238 335244682 141765891 561128389 887443235 632086950 925944362 274030405 253224570 265568887 971385504 577574144 378882014 879111140 928771550 43702389 986608692 79120126 272179480 689284530 429436216 519271112 625720060 133476785 745152263 879065998 738841741 165619592 934916765 939883661 869694799 635550100 661698218 679348012 573596475 720471029 997179068 919965215 76244669 233914782 276566279 423516698 408406970 626501133 30727606 915059956 660682728 59112099 695861956 249471564 446631629 497808672 290455472 313684927 297532546 232834043 895201574 13369655 485306497 981995316 892687151 48523240 446491999 159622256 152157117 198584773 581891210 972356927 701113099 637324919 142963965 390867495 960682518 827466202 304932754 894119066 274498094 284195596 932430639 227785941 457078033 376710099 351271587 606120563 158137942 601738355 300604637 586676308 398169654 226666182 60375645 423889853 128110899 939611850 828173316 68845575 696233398 992284024 983771023 988195551 429911677 249813302 351624306 219054350 386852469 675189183 630176692 745652169 26997146 427249934 661088211 406183351 436886062 354213338 136714957 443029729 347767318 216281350 566447684 329832381 360998908 500101601 829771453 911183911 137606440 988636723 820212384 574869124 874360793 876122789 9550350 373313184 67665440 770423428 228479443 592897319 517736248 721965867 814249056 640420166 756488821 977583341 893045025 469685788 252543076 897827111 514376438 261551167 705634342 884865975 384176382 912852961 891249266 964781246 359434996 118229640 383465653 894357190 801413994 990069057 598203971 55823560 100944800 859572632 576421644 68456620 779458676 810588048 676524327 58922760 579478214 890878380 684251551 930308539 95167605 364038030 322326078 53685550 154459880 53190009 128242437 66934822 412201359 545555520 447712414 201854785 770352333 251895329 573530946 186538542 575883286 763793082 546509817 80343722 837605200 307941451 206322999 482336307 939263022 318632234 747381935 922455917 593557315 347626569 963592989 189980993 467671402 358003289 672026760 911199224 601563009 175767322 97114280 89264642 767347611 212965919 535871700 918627765 312348292 793541516 906193471 768955293 98927522 563256486 417146199 574588546 414503677 674962977 838246744 674440766 491021220 170366511 312030063 35424235 225362060 915945054 113423917 290278147 870066820 446874350 547500893 605725361 483327810 649587780 11238546 759252605 653154021 296227904 797444615 253354290 846384930 862562541 289992315 676559521 593550802 981940736 983534321 865005966 682129882 960786807 825091464 271989984 281479828 338847620 84591738 228245062 801330328 559562831 611497619 912657348 960773792 277738084 834235904 536711875 607509296 86799973 271799851 159719904 33067387 573046475 18706694 583514230 65527789 813575410 597380694 676414288 679365981 944152304 560354754 904667421 397114006 952322215 763762770 506229650 860152403 352972442 134171849 75393005 69613938 292557597 88320748 154243305 458090539 806538001 255190338 98404025 149397492 455783049 393581988 659685841 483928762 428037663 125231550 579314617 684842041 330048502 407044518 894703618 296632278 527896467 872370804 786754695 150631121 980777820 184108930 240723383 107593838 636164468 864840122 692487352 956517809 852188570 289926494 937051860 652285752 662313757 891680331 353141445 541030659 392690845 833779337 171652101 617393848 987186713 36809942 806036009 168686800 665331087 184139676 797635878 179769368 570636735 102849611 441854001 825304779 722424019 152716833 13896625 19296078 15952017 221406629 401942788 35511729 8450404 589044793 80474425 907698836 155788177 891323639 803904493 96772516 680703018 987197025 486618320 166290354 75333028 96472631 542690115 737388082 771015700 196695242 509767108 235181 338851804 781487505 331314546 22681558 481832478 356275513 620816854 311017270 816077123 744547452 378165996 740512296 801094157 474690352 74606122 292255493 927484673 875789546 773141572 199944581 660386779 234948725 817199989 757262264 78917452 891681999 788775012 399111663 637873296 813164238 133641257 799561775 935818475 575918655 557479477 3593074 778036852 938001668 585956818 787565516 91373015 264272135 918549357 560169644 56719647 921669466 298733512 175578112 201401890 929489646 881643156 563894733 136557546 242285461 763742120 806657394 940255466 328502274 930297136 578731589 976281242 519961807 522769607 487764681 750513464 607413520 765860576 710582972 944923143 131224075 658290604 14113941 17645271 700123103 520474522 961099882 777619427 28291074 872053688 647018422 798059424 722744911 943558251 345188719 534860102 775789724 672250410 735073013 186638798 129300384 619849268 120475111 465515474 2877435 862443005 278494583 861774156 191591766 215241809 426249905 926675969 215200598 559759139 65637006 434562945 9658623 266854771 861171989 829047314 762085206 936807153 483716352 997743167 993073118 261776326 324010054 813095433 371118737 418865376 621806044 332377174 164228615 153498352 364464769 988147609 87799148 72661838 49763251 707994349 506105181 77199122 124571707 542278782 343665462 820038100 645760711 640947874 725053276 566328347 232164454 145272082 203746563 795083941 751788586 997319612 564238816 941731737 651089205 183808024 791471889 363881551 960002793 787635000 898536405 950606151 674337308 500046274 322116269 300248093 952018311 822418075 22099202 466990765 797063863 837354459 879005306 424558125 416969844 811620258 293237852 660051077 716652275 747755474 503413181 861247373 320861313 315633303 471931474 567322532 467372092 640456294 608247557 611272943 436426480 565767969 485179988 566777312 855401211 15666174 225990530 469725054 609825880 531112726 620327105 625277929 884668402 922379691 635153942 507017138 62963395 160369358 743328022 954226486 515078507 650743362 523226071 548984510 685703032 685257113 389999113 514559020 339077701 364734561 481871783 300593003 37776737 22494306 843193976 783564630 778579153 382356484 650367162 584059431 813814636 63005173 759635949 731490305 556862336 977502035 782340230 901452183 258993323 823244505 240432476 63796280 743150224 801837638 640341279 303598166 395700327 76521195 214181482 141210798 401368808 734359329 449521425 736274947 511204047 44063371 258007857 198816300 228954639 964707181 967532412 887840868 548665450 762305619 775409546 242992817 869399450 621793290 647556727 486530013 854808784 373665517 746360507 313164037 201345306 411157971 465687498 616448407 193067227 822226945 32983108 892678325 151829098 663387724 56558170 744266846 22223928 529502805 111764808 592712116 761601938 608800830 317539926 368660182 80005407 309343781 164410932 34373211 508871813 79635919 959886895 551107370 85231592 179479036 864788993 610911959 552294468 973206329 338827279 47425901 875775442 975365695 582160564 66723147 458520866 327968470 494099762 578243710 796890273 107983768 205989726 234952340 340734875 876982478 967299694 979707938 147820082 52970815 813933055 218836816 999575604 705168572 436947156 757141242 390770852 566173943 251428994 533064568 793222962 384413080 536945734 526401108 626296832 332811332 587807114 525297232 871178272 72849592 686630067 548410683 568432066 299051465 813251323 482725054 454497791 745830740 298387865 487021932 822828670 857973288 584783606 498388097 887962257 383990706 809291928 4105445 73299530 984250733 492152875 297482120 743926659 154482779 385809391 407536164 814369208 732474890 556778785 174900009 802870289 695339536 644577266 933488226 42012636 407219709 632709677 749041013 198491149 374143614 251964445 372286463 182510913 189283608 523697136 279184077 765650924 907571023 680553130 870500609 227098114 789764588 782242437 431458792 781520936 740614916 73385384 138014627 32300473 456820434 619440166 179075962 12952321 247979010 658085479 451638874 345126294 498001626 611457870 37063686 416858998 630978210 779568056 718589868 334123155 630991340 21370609 851554133 304035260 852118626 317475593 996778333 146926564 595067540 730772280 821964814 147157796 35553814 499715089 495366656 737009246 625965439 747808600 65669697 993879233 494998700 110332498 379459258 878987493 599938822 432451752 648984138 474398697 115683655 912720191 576816163 765183165 237719371 874572834 567443903 990569547 331073045 179906965 625754582 835511757 753534595 261399545 659163402 789208682 301573234 771410371 688882087 242577610 569485448 105586716 677713055 131241016 873178848 613895189 830792296 487987551 803577748 452475078 492686348 908282090 253468742 517758813 226300426 689045424 795927362 195593620 102867988 837882664 697342825 181108839 473359233 223460832 563038611 407924351 925182755 435279131 866936064 725141742 15613991 306339164 401007830 739428307 171101114 124825343 938209629 554515059 988869191 289576281 501700640 111857715 385477498 265886760 310229597 407480079 703445287 822942666 523964492 702989880 172077153 300849845 960065162 727148879 515104845 968925207 355462423 33071786 165189625 51992751 189924219 377997959 451502711 279682281 766011142 216729039 478264515 955802780 405267873 969942621 221201360 983758191 816223370 390858645 333665927 517901127 784618539 525208431 51560540 13106576 77519041 217715490 630703300 951748076 994500208 490290499 701387069 513267776 172673618 142878236 124038833 93003885 532178936 545908186 120940348 982559196 595815191 801242513 549643517 992440913 496804026 556385410 507668498 920737140 946731847 414162078 752092670 783666051 786117893 792629132 118723941 814478796 247887920 513197272 672550571 450890800 197122234 42450364 658182409 462881760 243470784 921135069 513983536 258623150 132499665 764950858 978076950 268887179 13041082 707217918 379367228 172401527 832733587 909948520 554919642 990462098 148211659 836857695 183190815 330623476 239815119 660283124 76272354 567431351 932302683 670933833 122184372 5529999 485404860 957117960 881757663 867397449 5454140 781971140 895912697 327786714 234858484 411792126 147402179 498572412 679909994 808677578 732912048 141905718 856546967 677682348 215572059 431019166 909119140 121354761 493717343 188440962 588695941 651379122 662531906 4768680 469378498 744677909 766760737 261342829 785804026 383794326 560521926 792460134 863043176 854314185 258793370 778011239 120928934 271735017 233665175 966391517 600093253 415605407 463402151 154337612 528917739 55492168 888546903 800862044 904194466 627776064 450545636 362366205 178454851 541237754 587289410 744639284 241788336 525449647 268067820 104582062 365098235 463811183 795445579 761233041 94072151 458059991 526937446 529147111 885922643 975347266 595451131 136812866 673064702 320368717 249861155 906500924 59791167 691206047 453923842 48646765 837885506 44144610 982221398 736608331 367699680 144501274 991215624 806171559 354288663 932778621 814312724 732525987 124488184 165001765 26889794 614213413 686519905 443484464 684946289 118800107 250482876 563535189 263149380 809399748 676483010 670975062 306596082 595239466 650589035 867045807 280799060 704745703 795879950 430200896 745924151 903508968 665215917 33766404 183822481 764716461 564193835 652959754 525737350 814884738 690263237 809375888 291254997 295266983 258833774 825297402 927990014 334775597 557471463 490579324 600409053 199263090 894314775 563764682 967771474 665661383 397467473 32373804 198343762 207330389 716128548 330476291 476570901 968012403 64442572 271317132 374876423 937093668 237961090 12045953 510232161 393907367 692399101 365208770 790939902 169684026 771327440 22497549 21540369 171431932 12948700 563161116 15735963 163402098 824625777 55797771 999917257 112721277 603229849 370291953 499125683 150328379 621222489 897741400 341938167 202899986 442901134 747273567 98492769 645670989 574829961 723865600 947997885 31077280 302261002 758225824 596410571 497515569 170461434 605039320 192343111 307068705 426442400 560643112 818517233 403479492 787553319 297296719 571500289 291426395 279486569 314820320 763265584 500144828 285804257 29614969 655338377 537847650 954973700 507223357 219304488 350972803 846399405 693709442 688962081 627619823 141898643 449062257 305687069 457037177 325856886 652714222 581142638 233503684 859951800 789934482 67378087 635063879 791106726 234105000 461977033 416591083 946979553 116713647 754780917 580893690 282718475 554772811 963375717 936925965 575960790 303316964 753112096 811702524 989563984 725770399 192103260 855805147 189196901 155164968 213984003 622782048 211612886 93539604 758137229 136052551 412489000 43811977 811439953 202622158 553046 650080713 693119261 13687037 493594591 26031876 762884788 790583765 160383689 875518684 827487970 519449122 519459797 705300480 882576718 194289468 808341830 571931218 343190096 808521796 457426209 23118957 357007570 582948397 661249304 454091209 491915726 620142508 161378860 987933135 188208592 139473215 643962545 377105488 280585613 810176756 228104616 874889185 958924655 382950826 61793021 207047949 524164883 960170504 508526050 48210654 921879579 4585624 865583280 752270547 721827423 302294794 66492358 180419112 212938632 492171716 149474014 341253009 17537915 764680896 377754518 136685297 144434955 411903009 343596544 998228373 128399479 923265093 523824240 483447323 75823332 783076417 966877138 331554119 73676954 962190185 492159264 761612714 590076587 132491147 61205987 992951005 605786170 44184575 813206516 998376705 727775172 114538910 730396936 539391421 920429348 537654814 765838073 163543847 949058924 593813699 821180267 398999668 454781641 976333912 479861167 471769723 782393132 63354685 593774565 106910595 144133125 788429021 838918100 706745776 740298597 326374326 229084417 174960419 449316087 869227188 438698485 75803597 823653588 397456080 431428622 614717798 477574078 900783605 584356595 984439111 840220730 73108995 90576132 491578070 305096420 858684300 466701558 647681118 582624541 6336126 428374554 730733930 161793824 959708873 745589511 943029447 201860993 910249040 813711847 927679396 260857499 40050799 395300823 203163113 263723721 969753838 761122280 73476923 404936967 634554781 814908500 602636827 262937864 951166477 150692989 493444229 457611525 622037387 410180771 381890431 731597621 83393672 808028891 671627474 190555157 988198839 477300723 489312760 130291132 430286047 585235135 254934765 296971303 850051758 460908779 748604376 605187338 553663254 194494403 156687835 208849456 133210729 410125871 821918813 226030833 866599866 412876091 585474931 762561998 882268003 720776541 218507406 671195322 657292140 77249662 638561538 755237585 292101997 652016531 726535003 387314083 176316029 957025893 824451088 786881739 182987002 93922302 616954961 671779715 540552455 290931533 599806481 437500482 179513758 278500418 542459042 938957160 978473854 331153733 212349988 898784995 95780893 877464487 520286349 558999974 117192685 693508556 225472139 458124180 500506190 417804679 622107093 503522499 10394173 887582736 108288762 133508927 531957061 808759336 61162198 942781136 703261849 762123054 664599093 680077310 788661276 6539213 143376274 606786093 244620499 538893396 492217585 183987894 337484249 251015016 14391296 197045005 832724052 134963837 49241288 548971025 284323161 634376054 848366988 990116711 162824290 751454760 809083691 524626743 958947089 291078664 535174759 262324405 146671054 826560928 232061914 270090359 882483597 409403066 369681768 817532175 270614562 38071109 603410803 439986722 44147982 323456491 648284860 369113096 457720663 637372674 241055311 851341270 474702666 823033478 841449275 259352540 85713837 890740026 881778246 581291845 994018461 273162714 782634543 287129940 203352230 706712524 272666496 35761062 340015793 819849887 659349618 691243764 820192517 878567690 373626209 156139840 220114697 755145798 480434973 829765433 499726795 303286310 641785342 866214809 604289281 409622823 16347301 246170223 555308594 507030117 555537419 586030528 597571830 519549072 418126381 437809162 55524920 595027112 99778400 36519299 953641452 307572922 872749273 983204027 410808685 745874569 853028855 921631285 742385733 438759183 449702762 406491050 607637803 468431152 443681011 493696226 589491737 807316901 354159352 949516318 809307238 190607015 440284766 558342822 110937116 583736463 806439290 248846710 651911957 378796858 637218625 752272441 999874326 971302535 595593709 437636627 167347105 548453924 192359623 371835046 594672202 166285080 581695111 118153953 650791672 459181531 277709779 147293329 440204104 618786434 135834455 147198377 3240518 279961360 429624363 851283313 103857305 247181167 230319518 391010511 54864473 564050239 365684652 826500798 463559225 121738176 260063839 551853084 481246862 738033571 299319464 785477097 507700838 22916747 73512687 628098045 817300601 515085378 778644353 835367285 217100547 528615892 561461881 425885331 571739447 907921977 110995497 192525768 67098134 678833292 702889020 944886242 412005241 99972519 930212138 808555660 547970898 631412102 270732031 774087640 903537679 845650554 637115149 554197381 960978353 738454873 955639355 567851508 529557742 182852860 45241978 651311687 942113659 308960896 548094441 304369395 196271407 270040587 815614845 40853169 917534160 585445447 530077530 998780714 679522002 178446803 281541527 934693802 980421926 806909049 937681822 814085042 85534973 963683170 307769889 602873399 967713868 486024144 428366625 82297100 886182 226460249 833928770 782636873 637435235 444218066 933025104 182165376 252670595 89847584 991109185 222650229 860666883 128756689 65347901 832886776 825394238 22880461 450301029 315290053 236725675 95005371 536958620 780614271 70685479 676538624 924909564 873476723 822740525 913277112 76473775 25253034 334091685 969152424 417026506 100183665 537319247 606828134 359421414 783686742 45749 520696992 634636822 401506174 360739629 946073869 607134744 348297085 397034411 981027192 498890849 437016532 450204007 827549134 825347069 463621809 495136989 267883050 609193747 49070772 402874661 183736892 572495933 110541775 64219236 472070396 618556720 927519925 227311730 825322983 921010715 199480431 456167013 344810278 182624753 672933132 421008183 820194696 319882121 305090457 190971407 685066784 99357944 584777050 921702702 911360212 643166943 515418906 173530545 738364782 355649585 919184113 740532112 345888885 668687102 382937049 930134120 932564104 752560488 848906023 22947274 578827617 383562185 345743484 150951260 623902044 172286044 37200700 379911026 109918402 541531005 259937697 453887185 353410722 634519807 7594761 808671766 880458357 183899471 132696820 355130898 7781956 680079349 820327222 113531207 747797641 839606919 638599902 690926366 244838655 438824669 755953949 803302155 929070463 354206779 572494312 991380634 528757756 455677514 809009519 198952014 82268723 264027302 64719357 994347628 640869647 812842370 36414821 374392720 369787085 958449168 799260759 651971995 34913415 417329288 777691228 518655798 264643620 863116544 35959921 980939632 408241736 640538890 400225393 784349903 981835585 167182553 46225759 194921140 364467711 680893047 568009341 518553712 224422587 521465766 347535626 62541435 249001373 577682817 831174867 723110200 941407366 884003727 270799327 62093245 333675317 892830848 825723152 280141846 925820888 24008200 947452181 90949573 547682932 128675296 226150662 778954614 116245075 765240500 727327009 754532807 485489019 616317476 720240396 375101895 82220510 299557768 121648156 95003228 955634083 929217062 826289878 312866865 498278674 699035773 258137729 483970376 850584396 47382287 826238964 323919641 438137919 221162730 625070206 149324498 505649787 849846265 329069877 956661964 429069860 87966291 235717749 510774817 692994781 623384100 208885275 343132556 390784687 785168292 945525155 397534779 216514505 30354037 487712056 671164851 571594865 456726851 694372814 413103821 468635506 101427993 255032640 639259513 918541103 112223367 811104252 351570504 549450607 974386373 812668677 427397209 240142668 371226007 673556853 631076208 798720593 381689086 134979495 123106738 372404947 820520489 209627609 498280618 922444149 527051779 220418236 347114642 850361899 58999898 836739689 821833692 524569357 758514497 300963116 924132097 564029561 576449823 120326699 255279734 729728443 78123367 419286937 962983716 481664296 192724218 137704833 771137003 671906903 532595472 573905817 954622870 260905344 26077124 742641388 104505827 717015524 431321605 644061771 534549680 112557624 227085122 610887861 243629752 451758005 888052233 618708115 982042081 144888519 728002767 458189684 680126883 754810139 270261677 462766052 505013206 392422711 168602248 97345215 698206441 998577739 164729131 445287714 570934788 352359023 638619041 18252312 385056123 832758384 372791079 85667096 622418526 689437745 816875710 700452141 178589740 395705279 963776899 341602790 809925525 343346995 733083523 196119172 898159428 886654163 897348542 768266175 680551345 90109646 894257531 445833069 647481703 430297647 550358584 868046388 144497856 750879761 62690195 219559157 218928737 456252686 593105823 798047285 949630248 987468340 702078427 675488441 80053120 446902826 496512518 65540343 451080079 423633558 450422192 160326950 208298980 552438786 896830338 334778565 150532670 327453634 568226747 107607695 660124289 924712558 653119013 67952076 208466133 750332219 151950169 7790701 44584310 318717896 54497238 128442572 10429309 513057321 34442191 746881492 260844986 561542233 549672657 543499388 618741573 2912096 508622156 39389529 336526077 669291209 497039798 674892575 910431301 272397807 322637540 396842207 194730853 894198838 319615104 399344392 1216115 737729421 725156039 193609742 623269630 447324003 936105405 463357848 114341152 919799107 99833890 727589612 647617031 547577959 336764238 530718653 616653213 631031490 547099055 271584597 273090289 69458013 505707779 418210240 605627539 236433011 738938826 608403555 417572623 923494814 317741352 317461396 945333747 396046042 140969751 699557300 361973163 43882304 151451189 499789681 766401476 457255577 773673500 350590688 953065096 176754227 833465597 913554445 248175640 956848590 688079244 493175573 513528503 386100211 236371549 940474450 189580766 699992277 351353275 515968440 325735148 837338364 12568280 151251626 677186141 752771287 484238023 883960131 135742171 636063166 196412103 511250218 903476236 451789692 906195521 433979312 703642727 856815117 470904105 482122131 31043228 357560485 831678778 843000178 945484303 210002149 62022449 280640911 685701477 138325803 967588996 654230456 847735691 123956202 187279941 866692950 965573638 196085052 466029468 29578404 771820768 116216662 16582769 984523868 717837325 280646127 406812297 933836261 997526472 50066618 666653952 802405155 658691008 240607555 620175297 416958848 403849304 293794720 235671149 814546105 952085697 418800846 258218349 907744515 984722082 309472436 620359072 772645928 545804845 661259587 77700941 572942104 970224059 889592630 475362027 736318044 242499001 836652759 898461572 605974839 752510178 62482147 436300710 724872543 612405157 307399330 909841931 718123377 65023129 336753340 879795079 285743103 894217360 513775988 323329143 926924377 891724208 291873321 15352347 773560769 63601271 59384603 616768427 770066690 165157398 870301785 372916701 155386970 888994214 169438598 474248713 338604109 712905631 272482610 956625718 964380706 44184034 847459637 374063157 698444905 964611557 798276985 219357347 340336860 19221612 984034086 85100329 779188859 894246809 159414074 648401977 296514763 94825712 50634278 563054295 974328027 722712638 544101269 150824961 995581841 526591504 323730761 383766415 25218336 314149750 610943167 829509060 111445199 95033589 211661845 913876154 605179474 173906856 889418322 146095964 165227983 411455302 757459403 998162526 97766941 588663935 280058871 487514457 826779241 581630948 302095877 317335835 952600045 919673070 525776342 362324723 922670895 830897008 711233983 634112242 217992982 16528445 865963247 71224656 467193560 254221333 30329202 837458002 19570152 415473179 565489533 371793984 531769437 740862636 59830742 380063718 923908808 651424430 435388350 720031446 839390825 336463485 221079625 687209882 656197262 174199160 734763556 320729614 582906076 46091306 697988851 997079971 156616002 726040133 938037190 332709906 136671220 963420229 94979830 316195428 383784154 930076428 682704799 86021220 823402758 765649328 337157845 355699008 390431304 241824254 21924053 295677427 190710955 125713787 10569336 513533369 425770285 848495722 514363051 463539258 405792832 732240928 330215735 754109335 696173224 99680507 558996415 24267436 852165300 435969121 618806209 469575278 333180442 762916181 319984888 394407056 999446779 871177448 475788457 542657021 570531883 827176023 332005163 824444059 934553826 491961957 901836650 831085967 89057707 955183554 299268092 505733003 562185718 111288473 902065741 636239910 859201025 40972471 368862555 872883045 232506100 575094862 855513350 809018495 806361378 57925464 403714392 980598227 876301811 240861964 779253658 726634814 595373882 238114795 18475041 345195532 18764128 377865102 679744951 935060845 951700623 868615230 726445178 698485707 12492867 908185929 945644437 858650821 415640620 389832652 87460004 412396368 245887760 653243420 706100891 812045609 260273402 81282108 291621911 211308989 643787736 728689660 310437367 467503483 130201071 511600907 293183240 454328583 434125597 8157000 975248406 416162019 999991897 625927100 670739133 215169502 84079471 531382805 439905901 419729994 474423297 890787256 784102344 204174232 722715549 599036247 785394612 488336804 829545499 976336286 264233181 56612090 722734296 632049338 831849137 735638822 900798229 457161424 360842650 84574448 74613025 446919189 104926073 567042094 869818636 249726893 791021629 626237719 654620696 38638264 837109739 506626220 822710490 477743398 411661906 546422010 207043906 281892222 599580739 918880482 616761295 299082649 75729556 44177402 832808293 804962583 794030539 93010727 311043605 80842267 300634623 526962017 311934465 588680281 910338247 109348588 860877694 741328374 537057606 677298244 89438727 329233606 135643834 820165396 959178956 194044515 237410861 954032297 650230706 225977739 524299013 745955020 101056724 142130728 405945673 921539291 472706163 690444361 392514366 821229193 9983381 974071680 341102249 373758618 598926429 705780488 191245382 568398650 951443918 751821065 156037773 686248613 920373891 888476337 14160077 12309454 314443979 815410340 487978298 458967901 703928717 198534597 282473146 334463743 762405686 435452733 33359735 183945122 933423193 893505816 789036079 404388276 363332204 360498207 541326837 985344200 757365159 358070023 545992495 496541431 934028661 740695519 955651454 876400688 978836220 18749766 787715660 210241645 269122388 772584582 696416272 947626473 144775872 582644443 647223236 911360710 246436370 42404967 227231551 643471785 526955784 700648296 346766856 422026041 948122293 953924170 175804778 223430998 86984274 779249182 143564808 16005827 226875745 245909509 232969748 825136306 256771518 996370396 229395115 413847397 155711830 337900928 592315526 324849951 693560738 751731096 423961591 961101507 906943389 457711056 277903977 712035259 772369540 596275696 517280585 208178008 364460716 659175835 618196662 95838512 319021661 514597484 553500552 163641220 874758702 688157179 473785602 515322336 56214081 171474277 135961805 66912144 524894703 489799371 960826115 21197946 417773401 849445463 698872484 682399825 868680912 593378018 692401290 115305373 262946393 181856534 580661297 993272165 744167408 715646548 86282429 951134072 414359232 472910404 667141292 57322074 954762533 19041243 91477217 284773882 232608537 166612883 184053391 478740002 648423245 83721055 247681555 753210038 145993898 5084584 297353494 755252826 744337505 111392799 666833750 291980458 158511020 851806182 432411214 505269646 572594899 467862931 349372313 638155044 585350480 815493722 332456449 697246225 730402171 805303585 662741958 669053209 273664866 317858594 587109297 278279406 10404829 579423926 484397616 104070056 698931841 206785786 12542777 790201402 662156309 689669024 942720411 179598628 769334177 723561012 103507981 220449352 675385034 359808968 269422712 324939076 611687688 877186015 556918161 860097026 732001478 839711224 646092023 249070766 374373887 529607276 966493574 771149400 803526163 619780208 64872823 817047786 339916211 146208154 984600002 343600895 679638109 26860550 424648719 828536076 23630851 768718173 639054533 444542894 124656523 287854774 393799575 20814590 82590171 561440092 616143106 221341121 558662606 448154363 442131803 598784970 413813286 325651632 457134795 98641252 374275225 453748452 16095201 913177772 606956796 421523297 795379910 747278203 747571425 349419998 61808048 284683820 901426269 805498002 303037287 348993097 991329366 265920068 660533467 511796950 460741167 486130014 819827058 389988160 165613366 935418292 562255222 440366885 368400309 327147669 448330568 694269288 474160358 918387919 16156349 884355450 977394242 778436669 185960593 468528808 379888562 624738066 146791133 835382619 483969185 690136965 684746207 459533460 96686368 829901340 892467229 508741645 701267178 89367906 626872261 183307539 969376735 910230590 382856719 799564152 63025543 920375788 573733155 566390229 20556099 201690089 883137955 262481704 312174450 547602054 811419808 406608470 591036235 215061568 84130336 171253461 936210489 713973010 381631184 501894079 322522769 698092020 625928388 415811138 792129853 7717622 581787048 781836177 445425879 866027959 662675203 974000224 175411582 779964606 173597974 68017007 461759029 511324549 226113481 301829570 184905582 562771126 600609908 484764778 304803386 86998677 62265633 605881992 882111267 520202968 469739054 729337569 92562021 364216621 217621537 640495705 189804128 424627542 553892975 988994605 147347086 981581807 426821756 547275493 93529217 44656140 49672852 446734130 914205884 175289046 169414306 31270169 549681757 932509498 261755275 708113241 447605902 987796186 717576069 289817723 747287881 163263388 115868196 582150065 112598561 16095340 863739482 379048422 579767385 448949985 831356081 928751446 184976163 849793799 476982776 649865899 560520292 668897157 957208023 481266998 56310756 731027332 763596530 38009944 468883098 481585004 900321486 365442083 937720305 695708835 397432859 938715320 294252635 366439201 746415342 221728836 147133644 786409095 115574644 790734867 278716947 729291175 258602732 263186790 574218284 6010143 835639873 622980328 645675937 457968221 687163095 753931492 843922552 395355127 9599415 529174158 946546689 58043993 240259529 507679928 800140156 258757270 587787478 550260772 564215523 939883070 993496677 36263150 369939061 8910789 117797426 270444986 192363121 585310025 223488906 658426388 738357643 603999870 609215313 663938420 561892310 944127127 314960474 454918547 539151461 691079074 557986580 329362316 755049552 515378230 875980848 597505125 490169820 967307636 363877121 384604626 181355704 774864325 883830645 77027607 980603996 549949065 70555483 621435562 76322135 475039769 763087082 157686487 682292125 414961873 386315812 463743248 963626067 131316173 623868706 657937950 81290660 204173859 734720950 513818577 220388877 731487793 480785772 517058407 319314210 274463867 948912702 524085392 556546920 812406774 784103629 628664386 110487395 487234301 232184748 900257388 339951041 378403415 122171380 794497685 143072627 595182726 228388161 495019008 560777601 662579524 990137907 628438787 167671760 480425443 610593481 251618610 917132401 154845848 854433048 295783387 499453653 374580313 472195423 87253098 308256307 87610251 326839722 351357036 379729972 904329222 381569311 534640282 603420812 153325169 48932587 899141885 538919859 103389814 941951112 723670537 949115434 590402240 132053448 383634843 89819085 900591940 998766060 928911061 581526758 3845087 523510593 755398731 887019099 912561491 890254670 975791297 664252636 239201798 486240648 428114760 646327795 552254599 328782243 776793248 662131956 615957836 899089484 855407063 404470115 673997172 758120603 94244683 493884485 56036935 464785376 973980345 889524879 229598188 205510995 472119281 968090709 910799916 17430793 619478412 708000991 721058829 591097689 350182019 760564060 552971608 118043692 138708349 296341687 750928844 886616315 243796168 627979465 273728981 239221594 655032418 853589249 455480960 283598491 846185067 521765267 131121473 126021358 106505320 549829870 330416563 266221652 378083660 757846951 446576519 104283948 497093538 126639150 308268409 995250595 860015937 620542527 543413680 672270548 257939254 877503882 317934562 576985877 899830644 382566418 262980152 877483180 91026332 120967664 748573462 717152257 535076601 943071357 603356522 363930707 908202315 649273138 731771573 146099750 240130523 58836888 194320423 711804164 900906529 833853026 966876983 451417090 160471 30383310 484350102 126587418 519890733 584725443 10821486 127340650 97639216 934296227 35651335 325025955 198562632 3355668 509120037 215545090 706580551 788253358 607141027 614604511 428499957 449640287 772986622 537171433 848840170 386249091 137382945 790546843 402694022 978306349 726398100 676758695 611781489 351050940 696786000 802689017 524809372 59258492 709739278 217425109 627280070 301119489 568930326 102309700 922285068 539663143 943418734 413799969 258136289 930679374 895209516 552165258 438627433 151863852 827259328 610482124 756938379 42015444 655351189 579722819 203529952 650142743 950113964 696443183 52911123 711157905 819598320 361105638 9891716 321024021 141135415 498766766 201956812 932788693 430877222 288625166 669583782 670470307 113322203 243190506 136390872 237985997 428858565 599078279 933826044 79725536 644645328 596652886 901440576 511304066 137150764 891755326 140156340 820052088 903952845 9778465 722133586 132053357 254962081 220876143 702087962 835790710 14653078 905368165 977386980 571941609 448316786 531576948 513557841 870478616 266582104 266723917 147839712 275359412 972359110 764107840 68316876 225806363 409617617 147374265 270240998 838653770 649034437 845726615 586061930 21829401 84936466 433343258 484019649 108337686 527667545 229508262 865454110 808694501 82579941 638128029 545530177 727870558 71228458 340940580 927084099 525318808 561495590 595586950 444459776 714845442 897366309 211242773 764348988 763400983 903009923 403810543 548102578 545928204 310380046 353507072 412014863 87268825 380960972 182677863 640536562 426945740 852843436 446536273 144432432 90313544 474878033 336974019 152900440 208296104 141454752 272275240 518581541 412199920 409219167 69927387 653187998 768196347 957141579 260033936 417329685 818496058 292379767 228693707 980285931 915993801 587598800 679831099 564652944 14889911 504506863 144446925 881017238 948958125 362104721 224749381 658710378 2312505 52961634 192525709 24545006 845798149 540003326 142784440 149425002 922842375 895454107 868445040 208486828 615816196 814380306 675080932 465111126 14241155 676407347 760422442 572448595 191139625 607288879 375004966 811427571 40551037 141772267 693800767 286133132 28325587 772825833 161333130 305580832 287231403 253543426 203369924 769380493 689290954 571200282 327252764 573549418 868623718 741692404 714441259 857288126 393786645 395738704 744245150 700881998 817396173 962201780 401127855 822623543 421864945 108732020 629142179 691610006 610648318 441415287 429954811 442335912 231240922 499275594 792058734 333775220 86860733 687889249 724196664 960316873 580694099 9180926 805706025 514261124 832074053 102409661 172962473 111819450 441979833 308192038 514473783 471871826 725378742 10870681 829758332 28786632 405493305 433304786 10153206 272290255 684056395 872798342 379858110 409408820 641099444 647414213 601612977 439252446 356521607 804856357 411959013 564070737 109305633 404217042 738669670 761114818 691467846 70956293 177792202 896844324 211720643 289008425 446530052 118580961 123954833 964016254 387127022 434871000 841727083 51487926 79010837 13575755 266793086 974705088 350349753 298433322 885401910 695559803 843430019 614306349 591206500 353390496 670604667 170887934 987643237 846038883 424177056 940214366 477783204 303043500 742830232 698362320 870115643 660220680 445085143 848937803 175681263 702004627 858259034 64084511 678700528 704450743 997268333 291173462 34732372 682676825 7282802 941990727 987224939 442254264 728812258 421141952 117263657 595520173 193764194 905967139 600602538 617239287 170847761 160574587 608999400 652320019 956999174 361002445 709234877 354643174 144923914 662413475 786582852 643365647 600432283 875403935 753260771 979897629 351335875 329592588 967964781 38071982 22458467 902676136 836839268 46338160 869405333 973221124 577947045 101592877 261867289 769095404 562608071 186422313 371728818 784248878 356684208 256534619 124729022 81231616 755052150 615301648 931901603 726237373 679547827 14342975 256330553 16648303 226355126 645588770 602237476 343885824 978390039 259070643 203568613 223351378 502421027 24877580 521226353 336361697 520930651 460404190 894436125 993337975 151694529 49206027 997349504 180409793 759094016 726607065 71854756 446716244 419173017 623280894 766688129 29085563 965316315 723446797 741290704 888798306 446700553 191909575 607160589 893226036 240435241 581527995 459090434 813154053 884083832 355656774 601699756 970820333 226210781 316089281 262311384 354674262 858907067 422664546 51137061 259789530 302191113 679437876 452634104 864715473 901376884 133063485 396665611 899061818 484653574 230078551 816636988 749861741 927798097 33201439 582275448 38988349 456410083 989563237 605119675 299931337 451558658 108297631 987533371 721106974 132118140 769517743 134595383 931490808 527773048 204723175 661548595 704228249 526274908 113246946 634380967 114538238 768050469 614984346 305078039 663666795 347258317 428662103 762343338 996554248 498377147 289685757 966991319 853070763 312981253 854415196 796767541 13669772 636858674 377027560 519514585 88080181 322881759 624162071 772954686 456269129 762241454 560395789 279425045 831952830 486488078 851906335 131397959 594792385 706959293 497706334 609420420 222483556 564647477 920763224 708529157 801972429 283012968 332109785 205721831 520669733 548682844 974892024 764361923 773261355 248860803 611736804 100962404 494873249 505533633 793937749 508928644 492441160 776445187 308622772 953498286 309802482 569916892 751862796 521508106 858713478 424528209 687065333 373133716 228306839 760617786 698759392 653902745 71342574 870232898 677115605 305776027 437138932 725046746 612007799 638840160 97848056 78294555 165776493 700953363 279821079 548464643 272893318 593497782 549083511 885367496 295631098 762248034 309412055 110823349 447290111 49048482 634031432 831743546 580144159 415536953 195521286 752367797 478532958 524894581 885742650 137497994 453636814 699923933 549053920 743138372 924849720 670227184 120326325 359282946 969742527 633237181 879955124 474185127 252108570 905250585 184559086 370181514 950220831 443888234 136505474 572142905 528631378 774076092 312928468 578865768 923062096 320166260 957834432 634235335 919863989 7724318 137237772 570846468 11648502 867411001 564565643 497551016 939722687 939570279 55795050 557182648 829852624 376843429 175009011 14717644 348306457 460467875 299222237 930915694 979203569 21982989 140251213 204393911 509996666 979707643 729009745 456897440 859519706 476175405 504673870 397600567 314326609 145229928 865789834 32372725 252641986 321594654 145153774 69847317 944305849 934892965 262268242 946457875 205910586 501853654 8152885 914106551 608520898 658176017 755308090 89693483 861529688 351725593 166189231 839545481 417651842 242778642 545185732 136196839 650264701 438074155 280600567 103515719 681086915 393035444 513729676 456083705 593023835 786869732 338357908 520517384 666169003 279339431 599768906 889247258 14545342 122637812 747658453 711000192 779422227 84854542 421038916 653036746 888626965 25982182 273308507 722281004 475658754 896789657 441095395 832673034 794169497 729203864 821029896 745452630 279714932 777710687 950024503 232924116 497559944 132132093 555073311 548514000 505297237 524751331 749737174 151543286 451027070 977518454 469562230 686550534 838881560 579374620 589289381 581316327 360603037 270537487 523217605 643536973 256626455 834036658 261224045 324840189 707420325 344529206 90357152 962408353 110083806 191510806 766005890 835149824 144275228 566329448 816240046 212056374 906036719 830489877 932056375 962879088 859147895 68794602 555218978 27076232 867719279 798336161 690538873 352354062 905207304 938514884 627661748 81257176 131111813 352862477 920785028 78995903 973163041 274489940 702340388 53738707 54148722 983219441 79257333 236793450 580710044 922578962 405150035 780581882 421796845 116463498 56371853 82531885 128580813 131143580 511566682 117993560 470199418 174182944 693173598 783448265 734621650 476728195 172045846 45225184 165365563 400110217 120803209 237839297 694049550 752206671 220179167 519860783 573384927 214346023 334012958 868393305 868814241 928808157 623224545 647504013 341790313 364531303 188972322 848410447 578315530 637687148 455803814 541471381 587323680 141127688 328530618 953817009 436492354 260979109 39799285 105892715 377417839 942540823 131557343 188990090 376687340 790781924 955444244 214172554 215584716 745695492 409792499 143465275 736760828 137576125 628050706 633031619 508321183 455565608 518953542 243452636 558398968 996945766 906841963 785516331 861882234 614684233 742366372 899241618 758536576 717859827 683950164 485138212 580553758 911263705 156790513 148131691 708387313 102246959 132346893 382222622 163107760 422406880 130333112 158501919 515732369 794169274 158834484 17012220 494171078 601410216 474790394 717813320 247846269 344788353 194972742 172044055 549479678 901761064 41724829 544560212 46590764 672715256 609284520 672492579 555538763 706561876 662524456 4321168 397967081 678752482 737375625 364040000 480911136 613877130 10216621 791311522 579072729 240165683 990439093 883364590 648450915 376187669 602790931 183086814 289737723 415094313 293803265 375678753 67537693 23130314 982624086 220938768 278796179 524989516 824831998 783624928 554991397 71685008 754427601 423726620 150366145 696451462 701038987 351753351 357393582 554306718 214051316 979918008 518176249 445472087 238770759 71237172 818995065 898236978 764295501 236251339 569822609 510133819 335532816 912863254 204751330 780312558 632222520 884121876 828123941 704966205 986080533 813753150 340697402 169253942 373154186 638003321 893785192 34838719 486375197 45251278 984863792 68989269 721509160 663981115 300672460 908731954 212298323 973682073 790296638 735616794 486248209 959466097 131254988 362544373 65668927 84096073 994744530 532472170 381233891 333120174 799304237 594596917 752150355 587897369 389814390 875454499 383482413 912846350 523199844 57612472 19257258 967961634 781643717 278412329 657381540 603290477 489667484 791590863 66516006 752162247 553066448 591694005 323117474 302181188 637612470 612101592 212383954 492977280 52406232 537172034 905914507 784120232 190405342 313150340 698047865 231870717 572052640 556612691 467367378 742948628 545989664 443382396 507623250 387679751 358795733 695949991 324783839 344539639 221102685 846599940 603379258 706461733 559113528 625158688 760323138 735492826 270758974 782305999 475167749 19089017 41164112 858722240 639772003 826945891 521750365 81264664 35293889 524995860 372744464 894555697 603591989 321293507 146182273 412254472 691914880 80522235 696759170 78143825 641616038 389726416 452612652 244777040 913863144 336659531 28408375 165381281 358499514 222313231 639042571 345980263 490036901 977607512 700853888 721862899 540503251 376402322 833866819 186654585 829064194 295075488 644967333 196427064 582049961 702399387 849310857 208614766 371766846 719477389 369659529 273161088 658963694 911843287 83911143 772434594 709949618 141871611 830474812 847244872 2956783 638977803 942005602 138450080 71912900 627880466 920767463 946860502 719194456 754197128 369462942 296065365 147835593 665543534 189668680 684450117 923390240 247903881 128644710 791785860 742074583 308081249 122218193 8234133 944321586 279464954 322727726 781533295 473380278 209034885 455345003 44642257 296826068 428840132 637346169 968629482 51824044 943457839 856625096 39746071 889951376 328648541 250302502 596227106 785371872 981024079 612492184 756828033 686229984 705946404 299128315 375995514 177065021 938184558 695139324 213345742 258489247 477667542 315619713 73710879 990552821 677338505 570082334 713167146 803887543 957466170 399679729 923564396 533235544 992009816 799606543 134671243 220722870 336889556 356589170 125398527 696535213 69635414 105521816 481126120 408903731 336698215 3259347 256292029 926867377 319878880 718367663 299075602 452373305 233319324 418175440 550013907 616778475 767087123 218124762 255587950 771142585 758419351 124598065 644778300 802834372 362477565 317368383 89385001 66564095 729463130 333252879 606333238 495469393 919453813 641790067 701588183 892991117 225023136 393526698 813400341 944514156 671050797 136969565 704045230 433848804 995608878 898780616 765509475 105550987 383597299 494436000 215044312 95218841 911510000 957403524 645989994 521524154 746221908 616831895 190784881 509450536 758750893 403051648 24534374 970556991 771889057 137435391 893176857 694001239 368789145 439528206 213651155 168444450 270572684 849726585 565585299 82441821 14037335 225824354 686386242 603173973 408092279 6869621 739765796 678648002 414134936 777184267 234623209 89864458 402590045 123274137 456547774 423706589 779774813 186267172 205672681 284436523 887999523 434651078 841152623 798558797 674241013 483957859 293949039 247278751 983828113 709474595 781718507 589686070 789799693 401511788 329234008 481292071 415521507 335327985 554559680 73885466 869843062 302177900 516608505 918488232 603437330 14839639 189856139 942243282 111700381 954687505 857084888 57186891 440874690 138323286 944875508 547051407 987155078 720924802 28845769 931921888 598855020 811984799 716853623 315084461 276586308 802735687 792007728 979753301 418974039 319360868 749243410 248374498 134415541 557609657 710218217 198669417 690202028 447494800 127618221 753758194 907229624 692900064 189837902 884084249 886967473 334980169 902807276 914525891 923122227 470561949 479783231 292542675 349769832 242942696 938938880 235354057 523335557 762645057 109794799 54090652 738600264 738648431 353784086 290118662 374622229 773741791 640241213 770032026 658420004 212926442 68136366 184693249 860469865 318332095 404405654 805019797 626478501 774601728 86629915 837484536 964683486 478276496 70462963 53790713 215361886 840827282 858730468 906842765 695025183 797785700 335271202 41565418 66139532 53289175 441814478 673821453 703404899 707544019 367735744 140525419 783851044 958882919 337815085 511934338 548958324 605871595 101114942 984433178 133941791 547356935 97386526 959566694 921902200 169332844 204420630 825051119 316705160 978297100 336084531 905436526 707721875 35829374 999504525 169970817 402215956 186744248 142360569 490077431 504119166 663007197 820263291 790795754 827609603 956674556 910222619 139133690 818438850 352661531 981184643 383055894 426070113 125515813 29896449 802511660 293474917 312235356 655932672 273883154 421003978 197793769 871703139 657785889 487318681 703617335 956545636 367266582 887597269 901206929 543230873 817578461 16205968 541824112 615598193 550145317 512753050 755710458 742737114 248769995 38431550 503839936 653907721 891749714 645629805 826283325 984104659 297789363 752762365 282066106 196366574 594992362 182855523 415018217 899299387 110006715 241388280 301665222 178828400 206839023 81983522 465212436 105119588 205006704 395114747 344549939 811654316 737097617 832458727 328065993 739841786 413266715 897911950 36174621 318976815 107118478 631221249 692433029 459964706 223201283 742043345 734647539 986570569 162157340 247390103 254692888 12609153 888154859 980074274 661391062 864611995 771307617 711754631 349121429 617341998 51197468 138133899 746781544 766142390 392224171 542504048 809765743 212704557 694433345 406386392 774492989 154481448 67575072 637408641 575566050 734357826 795571875 467849413 628864721 653149627 868449706 322104483 623628562 5246359 805873792 230400451 351077198 443260123 200249366 769247299 25588826 537890247 344503932 163321221 56746922 991437186 611522855 312283143 535319234 167418673 355910166 559462472 739349157 611798673 882003055 790111527 855046317 677490015 885593033 443015948 627897053 60004741 240833419 759448876 35839245 637677866 718931122 460241663 158580374 817433959 711920211 196646816 455702421 919613626 843422291 934207918 429013826 95542386 309111846 774943068 550876573 625394793 209646770 82635835 836043740 737094824 50684673 789337513 643885109 201471296 275271376 432386171 611149256 737395369 8866883 756310497 650453178 613832163 579351941 78692199 16834222 990744735 24823784 172942772 850216113 882648841 756477263 242725136 172419224 729607890 671960141 619337487 839265346 858559731 411532084 520265236 997100253 884001417 128455485 736059389 879811969 606195438 917206250 293361676 619941817 214862968 773890092 901699155 418066159 335545389 560981074 557707593 343767717 967263149 355878767 875393657 53792650 364131182 931648203 391046248 179820238 541086620 593330146 278675735 175513793 67305452 444691503 967501573 880597979 391859344 105719517 109370432 782760717 915769919 867678645 384433670 869066388 736140219 663787568 60363138 445014183 59672564 401989147 347738048 422017600 276066034 984074054 301678825 141625413 585574788 55763411 46611589 16175966 794204010 554019604 907531135 985940056 643133519 36418080 574216223 200725726 833887965 304182556 167460606 503604652 763828334 951531566 654269473 89339582 433501577 144457587 728282275 47917476 944824314 557921892 76928739 330207222 492393651 639402893 451246202 383081565 330172373 179322879 393010726 448267497 952989449 541755979 17129754 381741324 206538438 293794370 6249271 661638455 2228341 133619030 996785909 859836523 51968728 453377599 300053645 664668699 145812560 955197181 87391129 943527897 152138574 135109185 830718288 150376937 774926619 342040889 466872954 676418825 535324968 658742910 61391026 37092491 426586870 292566160 548141748 871316802 523281867 575850517 259018868 503824881 278753544 611810262 930931243 256258376 549507995 776336950 366850275 612065196 725637810 162745416 156256378 665657817 554649915 499259433 452415054 45775941 908769324 913716296 807497450 133387492 74089398 530687879 262501677 123716574 270994162 72464529 656150176 31888543 481785926 597055658 92458971 979172938 746292922 858664621 710183672 393371640 413076468 272777478 285737313 498007530 170083090 967697930 650446922 98138131 374857034 354148316 722914900 806598158 324839348 654398328 921800088 421902987 109919590 80612242 978593514 10786472 374455453 527070495 356282185 576532835 350530711 520765370 338388049 828222384 296481661 685283945 603664662 303042005 915136287 465323694 343873625 928439212 449726902 839230766 236808744 114773313 325410822 293559885 249112340 270794209 316805238 927261975 184592031 341279675 26858370 737898533 539819694 892159565 149827682 790224760 477435387 242891799 445742879 613498087 63617996 132434581 933640484 79887271 93145787 414486701 688734265 839691432 93024684 552207927 155232028 29182096 82409437 450123275 78881749 966995620 839324423 104540069 273035995 372794578 326658081 274477579 175584406 682227526 391854199 312628801 35174005 144436069 471477186 475071256 935781980 176832764 834257979 703585043 448800424 343359062 916279465 211116981 300477395 130665501 304972155 968433571 419150326 367532958 425860810 295883662 540763288 749265271 780971404 809898264 607432277 301785889 510986281 722881192 631996888 816198983 812629687 350738443 931574384 903772431 852671074 179481716 443566029 248978000 212964510 302333329 584992603 640643829 897608239 181696373 248199688 623489620 900844769 821012700 762271770 254312064 133923710 774074081 178101382 152918964 375652967 193438411 795464024 50452363 215738696 691205343 224567240 321806307 935276848 570025674 117165660 999238129 805820265 673788608 9687497 566404267 645411951 208526394 133845195 138866738 124969079 540031523 307283837 492383630 680405023 478543502 997478724 783993036 620026325 483277561 621748276 877729375 387891729 611836183 975903324 780261457 191204165 705721591 100573625 329890900 114810517 567923524 270687799 75530142 257293647 929948611 585899891 611382255 729442675 781617946 134945987 905229402 537767576 14655030 620200280 623087067 125180627 424296808 383717104 385227190 973269447 399899887 236681542 952740814 859476188 343281188 410453583 969200725 969731043 815124013 62932471 607014066 294533735 168863671 223493523 381055725 833124000 313963422 874033445 158956115 329236340 676568646 948347990 343317137 220064770 499108219 215832918 334645346 528940622 172438428 657292462 556227354 392182017 189351461 445207670 11485196 300883633 150966263 401551880 94119729 569259403 764565957 507716279 412332273 895460692 213533005 804835979 226716518 457240067 830840646 866410341 931666703 261185693 436855136 400134723 279855479 642230764 377495543 273766729 255722055 76284670 461239843 994062967 97844445 128929308 20413962 52022067 292348532 358734630 442022595 383450160 798631722 767893472 378498611 308008244 387285512 317125020 230330027 230179617 256730355 554980225 135256210 812435250 800108662 636530778 314737344 812863071 330123276 403372140 13989557 533080200 590016324 572330955 41165183 863261667 322503023 501162189 363040919 972338170 558694461 693316764 390219405 27038380 263453763 38192263 114155989 37428016 906224566 722521543 751850511 703543876 992340015 689516407 398187691 355426078 55186446 513824787 358990304 530382573 88145148 545198678 499986142 428270404 914194126 329098403 692326847 701452184 745857478 378520252 18123443 276192737 233315051 293929081 821497320 241169027 517072821 902253818 207788814 683469406 505944231 920730173 135751685 660326228 113100843 980615218 179833912 906980382 347607992 637984953 617931129 530559282 714327758 811232530 411734556 516492692 756792401 838513497 127755933 774087980 599826906 124830908 401619149 683294400 483893634 976127739 658516657 489476192 904530365 336781290 725411142 142145718 417918574 222975290 510391931 660281902 67351925 965927036 991960786 317524305 912094231 571210882 882557488 133314479 374172200 541540195 950885009 311391367 845106636 942124185 174182971 843696529 277065343 766378836 322942080 562787196 112545282 484197694 890027497 864472189 941619205 237586116 284399888 662820186 998253974 716945942 510887777 485877915 470031870 160687699 264801473 973675484 893721032 313235236 507825811 406668430 734931883 561883438 800754171 584724037 852973603 917626211 504658798 638808667 986195680 372154068 378418328 421197873 14817533 650480199 128954630 483782166 874067750 993336879 479736394 880942621 918951805 73499130 237416428 327320859 737875004 842077363 34540901 375324355 34312004 781177755 917443867 123547848 315501262 517865313 801320253 126903230 862042134 83328561 30842206 636166310 454569100 664399735 737225522 6639090 997676394 224715542 30257969 787355238 888372273 591348470 988868069 58051647 735031407 687595093 261180625 630138247 749082976 493316627 862905898 518879112 893902159 323839796 788727132 160785509 345367750 388910496 248382943 456492726 879013882 411473948 450615900 309517265 668843915 319360582 365348101 230169556 996398049 25885988 302283220 146424081 263645720 498544689 43510615 825247090 74086243 468835922 58857520 585793784 467242304 351034786 294320410 911894271 555928874 76082703 154690183 235228295 152323713 293255931 532447336 160489919 700654932 184479453 285407009 491243381 394290432 652673986 772638490 999856284 136025652 243113865 469003643 769938894 278192612 797297885 225506747 522622759 226054214 989530019 781705565 31594840 227782656 905115274 163102287 550571914 402525110 304009098 973729083 386257042 88786229 51694674 645921205 181043444 532942487 873760953 312715658 70762654 564540197 197242496 657098264 445263277 237609647 884098313 414716924 986121287 470580538 505239513 769880481 899882010 29198363 773951542 511219685 576928528 930945122 547952110 582118717 899538250 97213043 831167144 448439217 908632464 794054290 329953590 177471543 49918907 89916257 735734027 965165083 76668924 887957813 241786231 498264155 760529760 687376299 585587875 704684363 767409653 31796552 804040090 386254748 314861927 164691159 940591358 14953441 648991768 673368483 780966821 452420871 284891585 757946800 889845971 455466043 78750870 141720221 689783000 818883917 830124627 60875554 680691229 786338519 855147504 232917902 397545040 105705947 663358246 577490452 964376623 699641152 178374767 941597233 674754902 889041418 559297406 514225537 257599730 447583872 926558406 94106102 180855309 392623115 755256938 771498308 789664641 4565696 703494790 516171938 453157758 887835315 49080251 309857866 786109605 734326904 19401204 84344060 343216933 957208475 218722488 157456758 778779075 414618900 741241991 425064891 227874046 284568962 497756638 913429378 771745661 764196975 972722412 646692467 39686514 228225434 265846794 8051340 351360243 961673074 244669329 161905917 52582952 351734922 194779532 836708568 310987191 229996035 907919355 357792985 129197476 664063003 74192897 989663895 947247065 219940566 867735010 404865677 88088873 845242417 964037700 57170149 651364384 364193256 779974389 370240124 654002313 194287010 510633556 979094499 689263521 831702499 653376404 81583967 190645882 880992353 770470670 205972218 422573899 539603882 214917708 961987919 215268235 598790832 301587048 463407606 140976115 206808497 478670763 713332560 923393116 215201333 34308377 821500901 369808984 269173544 470108354 286051633 947048572 59099232 40787468 930732968 584004731 419978853 389979826 594747434 299314308 450905227 853404670 797815755 705941498 582452886 277327196 155967739 75899164 89467568 61453642 414822996 875553862 844867875 337843638 363150567 990284979 855539290 27809962 724097249 995075946 257406332 366710903 882386056 635079410 116570599 591849148 603359803 783391365 537334986 943305012 940209235 731484331 39296065 601167088 505951699 57950863 680519974 331195570 944495780 238194041 686183389 749629440 525303931 611923361 106146323 718019830 476464038 496391515 538184109 542085437 408976334 210810238 90971025 682515345 530816735 403218217 931610605 337716778 304285065 611300848 985908557 870865030 242756583 985240949 38128006 747043997 544453319 405988244 714792488 610863087 507847161 923123768 555427477 253458600 515572919 802163522 76634237 296941487 243442548 968079484 781200839 542664510 476526094 121414092 45250676 17113093 938397191 654488753 975277620 193515779 776867290 708697702 889621252 797962936 455696198 477932157 480827214 722128006 653200084 626510614 44478653 883541500 631040674 163416867 645500235 597370968 461963552 638522946 374955252 154719429 799204271 91367686 111776870 724667827 850008164 148693865 626806957 755059325 532673470 140540284 368331490 124398369 905456589 25326454 486819649 101933773 354304098 308329597 626807330 941027440 156839523 632586228 979527990 516821826 512119364 995778753 799973243 147055708 425516347 254256612 772735966 700831003 888610489 326624516 855008197 173726806 227268460 372422989 564720787 408435209 490358705 333397736 20189126 385190212 346405210 779720901 210990282 442592365 804255961 859903738 332914871 149245956 784553332 784548947 283552698 571379808 894129238 364957753 52697343 642266869 270340086 519184706 951416759 365414430 744240047 704085704 340129029 110416047 431183482 768214845 508869198 681067210 254273250 41551929 221030305 851444914 526617454 699800661 173819797 963561215 718238192 312727448 453466257 258490887 982454188 246932157 379238345 543959839 504220225 663408256 85989496 67213951 456014769 166101722 243258541 247012338 221995655 303298743 807825486 623100300 564270331 607575058 283467178 896285526 715815353 795485889 701317286 826803661 378980927 151129665 548081575 723640038 930671587 422993592 295052091 658583939 180551583 189824188 704137328 413306384 196123591 220079168 416987807 776166996 61551708 937092495 81851183 440047833 990035848 867470334 979499279 995291100 494236600 566892048 940657964 837602319 600033724 43957457 549023948 282868307 951707793 773406480 233402917 886770545 698111317 11627989 32093602 537258249 372469231 369237656 241833938 108829511 126284861 631901322 50993305 663494061 223544957 174779319 894826163 191354794 501620795 446202413 766282848 18661343 871585830 241412162 17187049 861393069 962674569 878437129 34360908 653030624 117978472 725283988 401155671 799540631 630553872 890981017 109801816 378203562 152718943 335159919 251492856 866434835 71767952 817416693 872261280 197123478 665400894 914892922 165940048 52203427 313557100 210971878 157680342 47950422 575963794 138139706 551853513 663939895 397602583 825764505 286028310 145619588 19517497 603685094 287833336 758964523 847466121 480306097 190183987 971852319 264929628 676899916 653994487 832488557 893375028 84581811 26379989 727158754 993712262 642153049 858558744 156230323 115405044 331328278 453029730 732084814 791325440 838995271 494286132 108285912 92278294 29081033 107585614 322126186 283605848 450483858 112019590 300683613 307223875 649412736 248284882 13972450 506380430 477330381 420804744 64347034 320156545 604774113 704233530 571987595 361128575 69935257 64281112 513749428 698310980 925466548 67945245 923219879 747987834 610564685 968482100 455809275 511179838 53745537 105666276 764706475 648816330 386452596 991202252 731944966 970375480 965691139 90457369 947690207 377758164 668359904 517088171 399138957 69065780 991775747 695384821 239586685 831229550 644014517 476093631 526280945 670718583 698634766 678588804 261060681 431195904 21879758 385460017 817263767 120954017 24181411 914114427 385056071 907310542 170859179 451602642 861042754 428444077 512000984 625107479 305006573 658135944 92531293 837273903 884154606 475392092 599556481 895921399 512559112 512044951 286700904 325993811 192461741 226818541 342030574 9646384 347908045 493088544 841862166 561665711 513593036 855387679 349945099 676580961 946194289 826082829 358784496 295494300 508843191 131269906 550775227 286385170 103277806 238538004 33623783 126466272 973426125 420556388 759663811 303305859 56206019 78263291 512549118 826698560 825633176 208296791 107237790 829379204 327727883 838373993 814085988 551138792 995224811 496670442 435092608 178043361 622459917 774047387 381317213 470051165 590449013 878627212 119082062 464904021 153797716 668675202 779451883 927523872 861683634 111620103 544634788 582860725 318798680 559406010 706402203 545080399 68596334 301062800 132228014 791650231 967766540 97204100 707352408 308354153 117215735 923531985 494002076 901038820 362948551 535298627 869675236 995098978 397578017 400283481 203801197 930854543 741133269 574833550 808730496 990630069 31323928 960251071 81723013 201033219 209429729 309131944 343606439 468689130 669553461 552738939 208150239 583393426 24390679 647240420 974189705 650934794 141493058 289627735 747781521 134406739 133435433 285509028 85628951 174207151 324344803 638612614 646769578 129375227 472965948 201295322 663964892 828176474 98183290 27347838 40512232 793630755 636601113 528605692 838112995 347246054 923088841 918610238 933793169 334257087 241271505 465281231 962430344 319515776 168537264 709955120 759389622 802500587 719366961 951885057 614799625 933030405 51799430 928957822 420039241 527546098 209375093 234400888 785231658 178149125 623190122 29469796 798153540 735245923 823720898 741932102 556427833 705563379 665152083 938919592 540650090 344096568 999992327 611825150 35023577 6396483 888728545 639371611 879393515 797357257 758003286 415019385 950304467 734494297 917284514 945263389 360582266 421203908 725687753 620794053 321581663 702897202 726874327 775304651 602734852 387625823 454295935 537403750 80611345 805036534 823208136 568683866 257202789 609542222 711075006 380192988 297637317 183518488 141994077 609174731 940471644 337030178 546994979 105424412 837141268 980783980 252624925 5191813 595928969 563799155 993882804 182469690 558886800 560574367 401761118 907753166 369200756 872440086 875917865 398964243 586716590 808307932 98217909 20451131 732286267 426377915 637341868 627727869 766631871 22735434 10630864 46369466 988889728 928862235 71449323 53758814 124789498 221190678 190305861 837469931 594226385 247136641 583534754 736696252 110823541 548016518 485946834 812330846 467398368 605624911 449816117 808988446 180092910 351614675 844948097 998101397 594855213 361972604 778114337 101637786 828344658 876019117 834124259 425225137 541073174 450931012 751044929 665437943 454948990 394968934 314365789 165610505 312179799 910581773 899948494 987243985 405748144 912554357 756076562 20850498 919304360 153680442 42650520 896941535 28245897 939558778 134574322 994697497 287079246 733753596 193454694 206578690 595678688 863393584 357149819 543261653 353363803 89048032 691305480 952993050 943941411 81876095 367270197 263760452 630218226 253961390 571667722 858275910 783542297 389211874 120902657 102156631 949459297 386671315 242971540 785171712 661951683 98737733 459543838 397939605 893366228 422527224 983502439 977699166 849543829 807716320 481615474 362209566 475202725 71938176 713324348 286388858 712161396 68548984 96255282 570082937 774040826 375755832 970719278 999014851 60664740 944894502 564438085 471078380 432848864 970441753 695569920 701140758 708588944 730711360 605432658 440876677 337747474 652907287 360168463 997031327 783482426 162615705 847844572 831682998 738956653 770605890 489814071 909774883 158638530 42498800 424565475 700945432 463168713 265680719 938924648 613873293 83250923 145272456 190837986 643008725 307905690 821992852 425522805 341168396 199572491 867886934 536996525 14298179 67517336 910722185 652204861 704834173 256258607 587867072 72773551 235055975 88058533 96926019 563459696 133945245 600945539 469411915 968711272 297270977 327555732 604914575 238547709 264093384 624370524 125520281 609820328 670721785 550944652 685876776 733384679 975250434 474294771 2532143 37386008 874726848 848378358 300654907 365076917 118434323 317877627 548785772 352809785 555264642 793865817 961228187 64614669 670407556 230666021 623121386 114985079 617469017 543693603 711281538 650054450 312332470 165630492 651266801 638169697 118405873 403158466 490297395 861720948 855285568 237630147 509563237 962953380 274148271 300571781 979268540 154416344 446057136 873657874 460570455 900754257 949418419 12788226 679208783 588072866 177512373 816031775 983155775 167965876 374250055 569271948 53230253 540614582 196385843 25469400 687831394 620968828 306458881 696486480 401103289 66201234 115870778 17132305 291831314 491338 775277424 459059677 23249354 734241774 23140796 722967811 852516361 481453759 656882297 73631411 129625987 911474623 2535825 364111882 33086480 904189498 172778846 213897332 86622128 568383951 612643592 753267202 849223837 157562100 465315664 389213156 827065904 105207629 850180669 820557392 59048389 329147496 286970950 60048790 865263206 750379702 754016680 94543947 935158424 652826223 614822379 204260830 290225510 868714489 810738065 88865330 475158758 697966767 283009179 241967234 21287849 429801107 619909128 407399670 961952117 551768377 183848036 108297278 461822945 544373370 762811449 771823544 833016100 775128947 163443055 852615788 777383928 816089445 741811485 338414170 122064138 587799336 987392847 101619609 984245245 639468337 95680891 483234088 21416184 868006730 640424307 686764668 50853902 44645080 594746904 805549730 565435135 90590196 174544506 9209950 424353016 297687457 197443229 188980875 249337283 310182956 649666698 630253360 279206898 873538053 918619980 483627578 32222309 726239659 742428530 966338240 938237706 838429962 312091730 267726284 548106071 458588670 750605825 771078074 547907603 578777395 665982961 128493433 970256188 661002700 633360831 539391178 306019368 180590322 457765172 112508897 380981115 432984645 877787935 598357192 846545102 925020311 768401303 437884677 400967800 907500640 39665056 190145026 354412706 371916841 776799949 223316035 128960860 531739863 218851563 655073899 617495467 902058682 38809494 312404126 488030274 567470475 578908617 83991774 417759051 966439595 118938967 611892412 553210956 41507101 876346569 487321160 874346198 968379745 467878633 790698668 461481354 883130548 824532294 136087613 579511505 399065629 168010146 28371911 285004358 882904573 921089930 774316056 962048546 559286330 575113862 365087882 981760352 538943044 841985974 330531705 757714387 361606601 275938133 750473655 263593610 678743952 798073909 772317376 293034489 384984725 724349841 274502449 514843027 243468608 993115198 477315621 889471482 849339169 998398085 323133596 613458613 462947143 175916177 148484710 437138473 159761088 157961439 111848129 924890124 709790514 187797275 773776023 554972105 303858999 465356006 269216818 600159044 898917321 731729824 991627810 6589898 395039016 735685473 590426831 142917628 505384297 973513489 120655795 491792057 940539393 725399528 816660000 452853788 125205416 883347350 173799658 484373254 676902222 346638101 18022182 207337451 442262109 521359566 952533805 856564070 785865641 340656569 567251715 873917152 533354653 802930011 349465410 799641286 177818558 481709378 275888457 533013734 470983833 680365132 563097576 133967797 552697336 217291265 785024952 712361783 852469143 375645699 274578555 50313133 797345741 228401441 777856227 789997066 821321660 94303923 880796287 859933724 430720258 644314909 471082147 489733975 295834107 477726537 332346566 184765586 173434847 507677580 6907951 631126324 547318986 179535412 878416376 454653312 859963718 212696773 525442203 347602155 883485470 361976075 820709856 287749073 65046949 827644988 668291227 972992893 737960358 496739124 763013986 687783161 529435146 892968232 891823230 56372118 309951528 754486361 151282080 452890974 684336123 647820558 124702923 459815895 25476500 439640667 779418183 875949930 704793216 259449466 480770830 897471027 833964425 422968073 969881826 201936718 757809728 684276072 934857685 187346834 980492704 534654230 786343180 46872606 823204806 75622795 520307385 163250268 262954491 822856445 266413645 42237406 775395791 562191265 365124530 716601071 288275090 437219414 344968696 514136947 863811648 371744765 116334715 837008838 101707362 521596803 188924160 120109161 285935426 583613144 675859781 459720060 232328434 608049157 672519249 965320167 11884678 463883706 330074788 131721390 746563932 122931311 35013240 371548792 639674963 663375475 347708287 396351768 330645176 230480018 853407687 305608305 929601435 799530507 351396812 243556530 697100770 1851580 897944077 247530397 211156817 274114827 309128668 433979800 324227788 109378369 152961493 464495192 478725241 715323589 207334726 883047997 813198364 205072093 547141396 502351558 584476560 168513688 6508676 967698335 787216858 804816425 268891348 74976466 296694458 443357912 621675111 362026955 751259215 737104831 504733091 298979914 721431941 182390180 614491212 308970722 57911434 430955242 576036726 752353057 859508729 820144164 739932473 405780372 648963961 439176820 160590061 831386586 662118893 416026613 489056018 427916196 474230214 618266485 61375598 692271197 543916109 372585085 744635796 585919612 455889325 253817294 752761009 324540383 53332801 564329635 544479138 202777411 779553028 444523874 282786176 344352584 902590628 774180508 351689685 759780839 509950656 955020702 440078389 382512645 617212196 771214211 29226276 540150878 715978387 774710592 650418329 197801580 581691944 975431370 771571792 694787702 816534079 40271828 873954426 436218029 442263491 482047296 736680049 474355803 701381863 269495714 573409785 279838297 511561779 69309804 116312831 530245154 592216756 217135114 908685445 965740345 647943224 585689730 471354489 290889500 9745464 818156018 462480506 288648618 731089911 955390086 626139478 866528856 154210068 356003786 437954521 980169507 376275503 713602003 414409421 76031959 528919785 705836191 796094547 23528512 576014184 231544376 463018763 274502403 906914708 388665759 700415245 413362908 31700464 856826692 271519515 323850417 212839073 876191025 955493555 182546650 75283554 17657845 546177800 333620161 134571382 639521671 199662524 265305364 195082668 848857644 912288270 896402413 344759376 261789537 61321878 512255397 331405499 631637301 911755580 850773672 899168263 299478273 33851143 364533004 546432094 824095457 731848943 45623475 339671475 895260838 977248907 57476299 972315358 577101237 59159251 762413510 173131096 435013760 605864330 680859660 606946722 197618903 8064088 997319891 728342644 981431621 662810428 755475309 721699730 681898201 727688118 23784042 905029999 512697700 6372091 552070054 134903389 277023969 743168975 666776038 283192048 187285317 5212628 21122193 805659351 709758985 260559561 953810176 146024769 222706383 100732201 104908975 500664947 28471453 340985740 718235881 4683923 237686979 642582151 235743697 822740540 218117608 314503297 879007850 711126184 623365765 55104266 161453223 963449184 882148099 276888981 886472394 647385611 661265786 345242774 515502335 575701209 397478176 284430463 277859654 153791270 425177143 978410481 253497009 752063962 536057968 752989339 692501019 54070427 590740643 104908079 133663524 787849183 828543603 674219656 634038437 446646877 196601039 973589259 27535024 490522764 418855595 567696140 534638526 201344946 394184189 960617341 192467160 562142919 541733011 61505075 413914626 620415396 234171068 37947467 829690082 695959348 469404040 934823774 126561218 396028815 875914219 218733137 230441069 454972168 956893938 343850314 695352740 382357668 849299638 615542674 127488074 150744454 576485381 784455785 388000715 533151705 812502160 252216014 119817979 797472638 309671836 934729021 136267260 931260612 952199447 42984602 573672284 151148803 127803891 558117247 351898306 214256514 659958355 790152974 854827316 286826535 920031942 200359823 642587981 937693769 462448929 211861106 301572200 21509633 709350180 816562132 449686527 926321214 424733189 512418103 190054247 617756863 320416071 844082194 556825584 503229514 446745635 454549521 680505327 900915569 519239770 269357319 570453965 135095371 350096656 570423519 567921863 773547918 240558310 365143943 285501555 593070857 489360370 849966619 943860064 548314733 604043122 551237974 37922910 293653971 525509128 544153109 660707016 533267630 678258914 463070838 15006021 427165589 208851427 309469617 216262104 691078987 862483687 447912057 556078023 571673369 860088172 39109924 127701079 170778446 787574208 15476455 819675324 983069540 998412931 577003304 994633864 548453676 953428270 996899692 815221254 528817128 978660153 12898211 35732379 99839620 246513841 87804610 674768067 221269024 100901201 702843832 385943607 281785392 923869487 186625786 157606409 900774216 675648714 643189559 722465473 768738770 534752786 844607821 261004181 283454573 370623831 854184250 407701270 85502951 565216345 338093765 833376850 73975340 31086892 736621125 903827107 578011500 875115095 206453263 853919036 454498751 863959158 596754626 217195748 226014743 148420301 377787662 455284384 706433684 594954287 247154301 988132678 386000752 596247625 281023226 592201269 291636366 311370122 848789796 657490076 159476934 934792320 475614118 856609204 484453866 996079638 314728130 928746302 448340209 610617815 528213555 758955957 299773921 159164945 189757755 581700976 233810679 624556278 547880319 697385990 625799338 481127347 523492124 168719226 614431442 632375118 914723569 985884034 839068119 964279684 191090708 604828856 899140754 314648880 853168555 55401611 128611405 187054906 293300037 560915129 339597996 529988076 907294803 55001569 538655998 245195020 255193399 55123021 909409931 594657964 938870792 758095841 93942684 716815521 481096825 970087450 737357609 485401825 341982940 56243947 752404267 274755456 558372407 899265443 640409619 385289901 351802216 340854631 452599376 986226402 396794970 223232703 435811681 167889784 504811863 187278685 747872859 161770891 656789804 652463228 24418246 830129318 696239434 957304296 519192892 345473327 80112910 14548691 584125451 25654347 518790355 284803665 188210780 472962999 874419332 497360346 55382091 131897268 852794150 837740031 17488059 403646396 932738682 4939583 682662888 890021313 942315784 381257814 381084118 509655491 545368166 125061544 955606843 161587065 986748856 819393398 781834189 96413573 955302788 571768472 985627187 51922674 624880889 801341484 291273839 407271339 280977309 455242909 292808670 575909485 735574886 707982504 744320400 167549279 918828185 753008943 515849175 984418745 79634442 8849607 557368561 973336777 217822121 673489237 348072920 183414788 952768525 734585587 211113486 579265468 131007890 487055711 319029524 789649444 482045719 301487470 993014535 28538649 944205162 457831958 525647354 246387773 747813007 187587498 483021268 955900643 756754698 771509391 970447913 521174894 627904686 478606349 705077130 535747803 958110675 338604821 307591618 911137710 331169846 496049527 955380341 239209199 516994985 891790546 5801833 921450325 666258229 22745993 11662014 933118092 187614420 355209883 93044102 696114392 841625521 61929166 601356058 780880310 18316068 548441046 392786888 523490760 825412680 661433559 900597778 207232788 433932008 77439633 720355514 77145565 524921599 230627724 265716518 483987839 967626103 893169985 637627264 945719786 586119810 238853995 317272920 956335486 355267727 661452873 741208097 13198857 20967813 618912917 508561627 613245646 138636258 807678462 607579227 276480698 416220804 171529978 19992227 357722299 815196538 32908893 988662293 775368024 292089021 842215672 320757618 419607151 266892100 434152038 287748181 387098394 196783925 729283769 91456684 665490455 72960222 173280329 421673383 59367780 138064429 607948703 214783465 998954471 518350041 921011299 560892307 610791611 851229717 844446352 233919431 87054686 892719290 522455416 543289833 217639693 849673421 82431299 92498945 987740598 618259181 32371097 747723913 427718085 57506999 131687365 274228054 196555366 340918811 285570637 987922262 161957783 896196047 994999513 604002111 932494657 642358883 7441455 291893068 784583438 92080379 830185399 277825357 271894353 435432928 949066018 80546603 721779238 434293975 599213162 781045067 665402859 883862313 855852732 881401275 373968532 216129806 953366110 312897757 672646921 693205176 671399128 531699601 34916570 343505757 917732281 105071225 473672518 603930180 205297815 770452492 677908124 379352438 497547865 909560965 68844348 916266971 323876846 318622792 705678687 988172769 238984154 626655550 500965548 525621379 280279727 606444615 518690574 852850458 216874805 409919428 213321092 86684995 322197829 45822745 434308782 384952032 683571438 296380875 14146187 147016293 857216318 459713093 993891428 254552330 478982879 286164529 867851462 220774062 348976836 860805133 103841405 987575120 225110113 281324318 505573060 605943779 255721832 748521585 331550815 388077066 726299316 158122658 819807038 493289407 208640142 517755811 216215410 536469119 459911899 914105258 99936349 191052257 507712510 280517323 951471316 671079732 970527363 155115354 744221604 848385818 314034274 818842266 266602857 867047347 770315975 240877483 678687249 121171953 774264698 898828449 25139464 11224593 972133323 825845022 885423588 24136338 294169092 390248166 45799313 275258018 445656278 312289384 856306128 146088584 359513092 269595408 937469421 739513757 129291866 505298845 691471043 444457527 136271639 972151802 825998463 805299183 635255297 341119454 871941622 375062721 768426355 340782120 135897175 274692924 109841288 473783374 605814591 849850384 514876191 528595440 978595568 401641512 614783913 863436342 695138042 269922773 4344966 567511319 843563583 379318996 149228374 640824768 224637724 604784821 635482399 719401776 419426417 711031260 516034335 593694730 691373513 786971872 240221344 982710910 106100949 776320318 900969171 800426854 423605278 191785604 731188730 503434113 629791698 836326610 929644964 236838864 198531575 967366244 513346406 973285004 507244119 691284674 686704011 786126814 517811018 276910543 116775739 925735848 431825837 585061439 645562688 238860066 756048335 439620708 220716872 625740837 744910167 428583610 64283883 943769535 971044640 341824680 550812383 181185434 982224353 875731156 721414937 715206133 468559864 811120643 904448356 732892405 816256425 238392944 746306300 843465685 88794909 781046895 5081209 415571159 526308318 545252971 303727715 820742554 677735586 26324740 264276122 44016982 77454344 633877690 461794088 969851550 635093821 887574512 220980528 407998839 97950419 331828811 534122925 890946638 553525539 683093690 479128353 924781109 475240442 274548113 203300322 576424421 491922263 302449602 53721422 635675400 401427575 517224997 429229009 185488883 888249530 630484094 260760768 135916850 879462615 784601144 275305410 779526098 103600172 351596609 12237222 400537604 16979117 177826393 263279703 861375450 862478507 401574840 847242136 739883913 440835799 748470007 633027666 242788490 926898718 663618627 337081081 787469093 694327075 98547829 139853177 35613704 54349577 300124083 255145079 140301821 674977584 671141227 273806051 77917292 241376718 329028887 813572709 739371965 398132402 624360530 16881796 162804105 369993753 309049688 6319497 288897302 106955933 679099458 943492016 305561556 694648783 12858776 358333655 763084627 205126087 508401898 900821404 710414846 558877088 21523490 808777631 854488174 308930971 218113878 766805403 22843025 848883298 498306621 718382895 864984156 165609356 266735780 58863588 445491315 806520195 158295338 53157151 958817829 253686588 321434733 934778030 171939425 639517228 571361431 894925152 283071779 621474151 855951051 361586759 85774663 236937396 332098167 879147454 297921656 951382689 666004110 931137463 143319775 540186019 700784011 537192285 520169151 431885881 35748884 666498556 224704677 623762979 631876963 876257448 512100415 413568600 996071812 649515546 41994107 140000739 424417485 127682873 708153252 932407715 589018220 146915068 71063783 603435254 840526074 393163491 674194417 665163050 497209288 467637353 135434229 717294312 376566740 750526329 343999376 163287317 401864613 761502960 333166691 597377751 23412400 971135952 234738198 66101894 765031663 730061636 726833659 624365446 756489311 186134626 62612589 624015925 519178627 516285496 768268295 401273757 509882975 283782529 420470888 115074872 580579401 245866277 150821021 236903307 582516211 871065283 274581506 678980776 365372569 539881437 846973402 628941062 12685972 782990160 901394151 131872881 560465629 664405203 802600618 903947753 101838391 262778768 805568038 276739814 995466125 641565745 849752558 887736632 191666992 434535763 329487059 115996871 884433661 187350590 262314681 775070487 490941597 360954620 456796509 487536677 988005613 81512455 142577037 193209404 976198810 771978565 245459762 686674408 187323980 714182203 894352644 367769446 211649110 846769563 168513471 300819523 134996536 68603998 883131284 790161045 829590145 903797217 861378075 766826154 967845985 60903188 383334210 274020292 203697862 869855844 165949759 473636716 631420700 66222001 678292477 339670724 229443255 109712958 516723836 465902120 894222282 573896069 739535496 691158131 85932685 458650214 860262314 916309841 391095477 489065449 673451863 260800309 843458089 845569685 844274589 801731020 247905504 503694110 199505969 796462625 675795837 637025163 743904465 468388828 342742136 47479184 692253310 519354975 298322333 398258283 428271420 781838837 71868051 454153971 609626891 246769195 889348038 160167852 765073376 1366666 954477849 416838709 891561898 394753749 62584204 469195243 607747128 48430395 606645132 261009763 969237316 427549058 177419389 382061117 950633710 640257526 443698336 660058529 771886249 899929462 919896444 398196647 320101063 105926485 962612749 284020832 221147282 607694460 517843239 827987665 330832633 335488080 334523029 850095569 425106315 650552024 625241700 514636077 980623594 776589871 574524708 944218672 16902257 176587994 585496913 330623840 850411048 2023846 410685056 665032381 747476458 148562811 20551293 155415824 611784462 663250743 250107392 685727479 77839886 547350119 9234362 806623630 16754120 969441776 256469067 224501381 53561293 724576358 683117450 482945566 522398210 665735285 397615951 56034849 470430074 921403139 337560731 731044144 57297907 783544509 787101253 902649271 802561585 73894865 937734719 667221494 60179618 415772431 154990095 745540553 231188857 52501905 253142512 305894038 481866445 580091767 493945639 182056999 770082304 269009452 391609738 414383172 575084084 951882068 462415583 521539605 228923099 263521843 325168857 26537077 846708229 211816677 209266125 375270778 590246115 444143259 829168906 680942483 761321696 311183648 731909291 222931556 23301516 291113729 91805874 424123698 731006122 890162959 537342004 98450077 182963044 172670915 861731884 364615698 351096975 394842630 865011293 677266100 604170766 537485609 416369566 683715708 986019447 914800826 272350886 624953575 838766586 900112601 490530059 254152623 142909340 355522721 453229069 964806826 976467687 400866373 602955431 875328324 114248395 672906206 792670297 999002960 905020288 868114043 166541761 740476728 651009091 661127564 723329416 504435405 849971228 41719009 178330259 803336801 863049147 411599617 197700206 608800614 259645390 631973164 4115030 753545506 41256374 667411907 648939712 146001721 511122386 84449485 733451851 915601741 557014624 150375710 70767475 71203493 589801413 780673222 568517173 372738185 587348549 81989046 135157221 154046042 254817118 234528333 294562742 835488393 988869619 507664540 995919485 347561584 36562306 332764945 629696245 132840810 877680767 295815797 176761051 353534821 360165146 994196249 203029012 259422682 561711889 860583259 486896834 752024171 427864797 617323154 752140440 97339073 949722969 15302836 380391654 331571389 734275157 397215563 279605917 240549973 641456043 900807163 712884013 77694916 671328440 486801277 424991403 843204508 508555296 863435183 8627086 104113444 875968359 594594792 155308548 20636498 609685605 64772206 317536436 436899121 307972680 274835536 127165918 710918325 860416175 915632899 818935790 216486367 63736205 590838262 769424832 226143634 956088836 83966580 618539892 923679156 242653875 233208439 746915721 20060150 218868130 818434661 531982281 184344513 550498903 49251412 735646707 201882382 549140185 745406682 161396970 110873249 925810167 316929916 208663085 84892018 215974102 44045581 212305901 141960137 332196491 613964281 9811109 509183092 338293291 434743797 961087660 930140896 711993580 555387576 169686269 260787651 175371660 107519239 812151492 18280401 359055011 925936409 92109244 438670662 700882481 626885904 630513884 882862177 672315242 776884788 197634693 54450628 416973683 427242210 593970017 74894764 697946919 558911444 281951872 98788387 935576673 659056364 427333845 286528742 820091867 915349187 511329686 164217083 99340420 306342417 27748906 650992200 346638467 291510397 813080430 50873624 728582042 839607832 383263491 779732428 661337067 654675346 534969001 255666472 591366235 644453311 817747291 792822121 173067488 607964996 240424684 648660505 117562525 189532152 693853943 694077166 906618341 398483655 415121621 364037738 54611411 153229427 481326873 349821687 740234674 852233328 806809639 663548185 729994757 646584167 447441814 948180170 715235965 600485600 49146332 881165018 629147426 140005997 884717832 131262314 282549475 50288644 754486537 785188326 322663282 808465728 98749341 687145289 168759025 600483772 936596019 820589699 537563666 171573961 690321810 277098514 476309263 116125258 110855052 886833488 333592001 531157866 517347445 842204329 613361096 889078218 424214152 346411684 394132318 976778641 323142599 188279915 365810386 162916851 690005015 135744263 136900563 27661016 848100010 597049872 143546924 41995942 91503804 630591738 786485498 816888006 294006083 38978645 751661671 630253816 889207514 659324539 578524282 738157358 220574327 211450331 271879952 754590908 511387979 70881096 543646488 818570984 977203911 244034377 953150757 447219049 692816311 579724842 713778751 3380084 962883545 511156967 881038077 541699566 439548865 248155793 333297063 448097110 287544400 998582904 753758895 604911510 142459029 149447615 954059036 854217902 205095653 394749551 721271656 854700967 490889068 951880144 380062990 81266257 261100622 853657595 358781162 550134750 499045073 104044682 813292203 350653720 827968984 929754677 733070502 677696775 555403312 821141898 464879060 301879237 706466261 539534695 640745914 488332223 63319628 803053275 744164703 928309873 688186423 998418731 504091427 490972512 768026249 816249423 260391061 246064057 811293780 832391987 303381501 245371745 183778795 905236386 942747135 495834398 936384145 390683210 42597548 959768940 602566281 309776730 622811795 688956896 874508761 911168231 556330113 825758786 411330552 101768691 420469017 233073441 284177337 721966772 563307493 700295256 130077217 897535761 707875760 52495392 814819499 124097688 176442710 594371656 725586048 185767422 1738426 3300674 133116945 584132377 543624943 132066451 834160567 490946170 472007226 661542942 502021021 667485365 902134646 654885427 805453449 111110132 409636878 495133864 581691953 138259975 193388417 392903441 905097687 781183247 664474911 598466619 365619577 373647096 467583447 962979985 13498242 294747043 620557091 182371050 31059526 558473127 609135903 220220730 292283181 44289438 846888944 925378341 383505687 438899664 463184080 781097452 486742672 964223827 458119500 382422618 595076300 703242259 576610978 41401649 939897994 104744183 416102879 101755491 122828813 726199118 671415877 81190553 268048826 86525356 231044196 908193708 924155898 481098128 962467722 495353875 896699146 527872267 665989549 430869329 840662173 655479611 659453003 135884188 996522158 684942257 215504762 747465745 493871212 801728339 80970100 40858617 465524223 691545338 353363236 840515635 877695031 208144452 322273818 423095756 977524654 861532481 18794026 981267704 13808896 478885835 684211026 441186976 430849001 744708273 262225396 678108560 390910799 932292612 599034760 507473605 619883948 926501019 403307308 436051269 615111883 62598915 350657631 252487225 220116308 995930531 539209347 332512331 596253614 49253023 840016754 161189524 539700095 187979107 913630557 136112902 307520073 498734690 597905141 510806847 802426506 678762032 216716783 606718313 168756595 106737685 330617276 687586930 300959609 881977035 782564984 973371373 126296588 42500651 512990539 403028731 349771399 727585434 434235375 974789202 675677654 512298649 500743717 733163569 337396596 231191122 832145648 234947464 632642440 710859088 571081030 451790553 56981793 436893652 116765155 270978618 615831282 490558100 446272342 677539548 170138718 647277132 685929661 399840491 170228277 522564904 628498370 229279805 584085197 894681164 472554680 799306514 608652839 659823743 411961933 129345200 941904728 512242719 241205899 228355856 887383418 124174518 898318893 786359944 153946880 897195519 711503417 705998292 283569877 730034767 734024863 447011043 837232731 748617088 983785533 529717644 439395766 397782735 720422568 858843477 946770982 45511002 589215486 407455543 647910017 131590544 556596563 42681882 667848265 187169071 935656305 76938048 632100836 721524377 982233770 399297871 35827599 153308516 22624765 449966021 753550636 6220371 105774415 814818177 843640361 391951608 486553146 764811910 164608044 816021578 581170953 762454782 264245558 586339997 956376403 121442637 33220323 85079070 286029424 27159122 470859519 391852204 527154955 418550665 514046744 743875919 796749798 948833474 501086388 295491650 938245506 779072124 744624137 771807008 154937963 529668786 690873965 38595511 539879173 905014338 651320983 315798900 552540598 387882861 272301800 110511284 760320981 405176693 464481018 992965702 55995796 290661931 330168653 919201953 92324625 105662054 210684107 368199203 6909808 492822418 487816070 548255074 794266424 749458136 916182776 940886774 741764232 11412811 229679903 148124039 295887453 563143235 284781403 837687421 602706505 133746994 315269086 769304636 325468196 215868283 407275196 463494989 148344381 916938924 811015475 752147183 75943969 130056134 118598223 321583794 895757985 957761984 834278915 303893600 806394335 742328078 319206769 131217538 433932148 423329005 468779079 695325657 466678842 870190925 975284890 492826784 636565275 667911805 893185317 56775281 908215452 878964354 185361490 57673705 203164617 857280184 493611542 201578499 126119573 682129141 692288438 7833256 632569370 17987377 297124898 568693706 291847178 222441901 588899882 169050622 284967829 19481419 182006873 134574822 342509117 311683656 956933060 692748966 800351148 350476809 888597279 827137524 17006532 695681876 600834256 149047295 6086755 829977376 77068285 981763922 439412693 31337110 667201426 993061843 75843314 124888688 411038831 681084114 562880790 970004144 102555256 934249626 356491142 188862526 617917102 433896181 713711293 57746793 337372385 381973895 342902877 42382271 600514065 815020190 519767871 238756836 756946421 945833040 998250554 270461613 516936128 454169493 860469113 603186515 263502358 507398004 501193920 259621575 776399930 273592118 286285742 847776967 914394411 958719514 924663374 977086225 268097393 19753082 892796324 741479856 697675134 754604610 281804760 502688219 643723523 814511687 926434431 260919598 298569729 544021242 315107766 32681984 91944104 300473700 728547727 30751884 380004724 4176889 432834868 768879243 800022699 57794063 473068222 383083034 865735297 545093722 893161247 585447975 651438556 161278811 135325850 571923441 353970525 217458358 119928423 608207789 224515643 204545115 390525234 450363987 733743468 390575930 558538832 445338857 686315636 68647468 779307888 890430983 797806029 812592439 406998066 442484280 5327313 226199816 606519541 508573820 201463945 485289891 621361014 489306005 518344646 501772575 784968867 2380701 112800105 353928739 190494536 534644186 798317610 405597983 860392059 485058359 645682127 868130932 518742899 493030866 831305862 263308117 875533897 280422170 761397421 567081090 244414093 756313176 496776278 893036778 735574298 993423265 118529274 322014080 950667213 608506431 704959050 134840287 130843652 560235168 263840162 710167069 966975441 873607132 186551956 43697902 174596414 212389722 606711810 484501965 203479026 743409833 89855336 587323760 884787139 519572151 470093466 897145487 404303754 341869876 529704253 729298415 915512349 361062373 565567892 212797917 30151382 749276918 812008812 450302943 648395252 454906974 509412670 761626971 897594611 715774986 974399284 265998065 550712728 981178985 551187445 640038378 503926018 210139668 829921526 931476910 890064899 477343250 25470400 250697077 935772370 904236542 609182143 78702112 492111281 617011095 176523370 472822163 160799881 653675796 359523284 194066172 241250249 640956671 536043184 841114429 319875993 39560410 392315218 371635688 916817171 196343496 352702268 433565803 281536532 349126194 816899825 692879159 700977756 700795779 132060610 744377459 805968355 881782285 33830121 819432773 641308123 102918005 82231565 912456208 762025508 321361048 904300900 411752931 788856556 958989831 416839730 26445430 571064743 132542002 280357348 18381116 304319698 82564898 351123072 55623289 340301803 853430260 924810103 457449745 634069027 420471057 26819385 548459367 103716799 305072110 453165614 76097291 773753662 378769974 527968136 971074123 910538839 241343969 992997828 419287273 220324074 378031316 347094206 926747225 265951833 408336236 399610654 384196373 739143060 409192327 234726379 514867487 815153659 518675675 134801388 991064982 634228685 430551469 106462352 78044281 800674369 411057625 453210813 250794492 575937297 675007462 395140486 585606897 911512164 81228142 847452568 619646608 883657417 227994198 890402758 729001697 185101897 628063930 821255005 527489792 177902986 701270572 132642523 373808429 996318133 131492015 191060114 996704891 315142181 650782338 132521502 326889872 414889631 260409126 855593475 83825487 144146560 614884939 444166969 59017401 371925543 868737625 295103887 696758242 273010885 901847892 401758442 953336743 26483273 394912219 757241451 492162620 741454566 49189805 942038111 866273816 48352830 771399359 687612212 721754187 244195187 821214875 621196058 242588049 800581283 818832861 96137183 334705358 360240690 532575471 725867117 129308681 574515458 204108328 73959570 230549491 429434003 772632799 913262918 446629528 332133758 903263968 648148462 361827587 944573694 169564880 129593675 598629024 105043495 416964198 463831117 471107187 88286663 907347252 912806703 680975196 835368183 932277113 709432210 16033961 378375656 386884698 450253390 983257734 132179750 930798531 947447598 778186878 795718239 774011379 494474591 632454083 135936860 104078840 414732825 484196383 125183332 139602973 23593343 829629286 271636494 805277464 981032073 639459696 215699614 462438035 725428668 396969361 417848323 496927964 388846124 681826071 972424594 904585324 8247194 195751208 845049039 754981429 930784101 522798922 967959263 312945265 860884281 211531194 860290285 43551232 145083658 647028256 659260753 374914085 426461957 976006719 280933350 945060143 976411755 179005327 524913239 258468738 143195014 936387617 776486752 261258426 403952291 324106092 45707035 469890944 298912703 312945560 546218497 606951921 744730526 945794958 695289134 453627440 611734918 438587 737779470 419119601 598407711 807932677 22957949 211481768 207253835 95028601 471346359 179593140 707132907 378728638 112821197 412089581 141859907 732364615 741913543 124919715 762653454 445033185 245400748 664596944 432879345 707468825 923832259 553720740 264593172 119468838 505991766 497922884 945505519 112433059 516173020 884801695 98975236 686944404 678159907 43607309 202902727 374763614 253054017 214096625 363164644 353343101 628589819 807317542 517751454 868517829 569621857 165916003 994955914 780617365 35162423 918103338 518918940 801581172 356927508 164787051 475566345 859402211 406545837 29138398 207506783 530094409 188603997 870340569 138166514 147141087 846881078 159158812 819207372 224801719 809386355 732366062 290907337 370171924 393918791 235483525 575957956 581493999 921557374 888977265 264815286 588253598 639721242 49270545 663184343 625122960 279963952 822686104 897812523 316256172 247564749 735018206 684400275 503188723 823400180 800568244 850428768 902577065 606661100 251413870 381849533 88390481 606267142 343387368 624778479 220930299 542355693 718064232 507250538 624559383 794419892 212032766 472888490 278874473 325396415 973792004 734844282 714607388 299171285 875979496 160235428 820195153 862497075 782988757 760315159 715763612 300608635 348514379 720459041 653093878 443728993 877296878 470492669 429407126 822557260 330054796 203255912 829751910 121245770 127046843 788418427 396721182 17443700 165753193 101712265 915415713 976870452 982258000 67087811 173863536 643945935 228547927 556824550 562662010 51367753 837490791 41461898 404485655 106680306 527064284 695347165 174265687 813516235 413129077 880233344 381687281 169222680 44532289 799860881 877600342 257615426 366727706 898161983 115268590 137506949 360076666 690415117 794877287 96676112 173990642 331889200 483545726 73382576 85560 171005766 275553267 179786976 901806777 525997964 450379289 685224685 786074380 174006919 824806921 79218206 58805769 317144477 394315097 719382865 169302878 647643922 86369139 177225645 376715925 213170197 864211109 367252179 654806939 431704083 915100127 137148207 170647234 45461633 155544001 315320879 544979217 576517264 636078858 30686162 114790402 393636055 188158996 896616169 880104286 807273331 848783335 606133562 526688885 425482316 946907599 42917453 823045748 769814258 81574168 466240496 111952755 182447950 302506887 881560466 862431926 879663841 627660737 338917471 544467853 285932931 899949800 459474298 893601903 733084258 339671321 306564174 942022795 152979165 505034143 905034094 41799648 945804412 968060181 759282573 916596499 483010672 431610845 818313703 678495327 661855674 192794622 779930091 711540957 778197348 854266427 587559853 499520607 795528698 126097021 273264520 816355928 480818275 420007046 137490059 36500554 33906798 427617239 976660096 425492672 635325492 651445234 396222043 598250303 255283325 558446688 267616777 36649935 196803233 366806415 148477865 509005897 693998527 890309303 181918365 101809844 10756212 899946443 899234733 781609721 273538032 514677857 62664428 42080914 846994010 362101578 319530675 748361850 885229189 575161829 762363787 237355597 371129369 730661814 889804251 733874540 712784610 346756883 780250578 100556594 924136010 378758344 840855622 927671289 592194768 173236337 861664809 542405906 193099209 205721000 681010052 703990276 619559456 23688893 351428264 975095018 826440694 956646497 766187974 192984550 89737199 946661116 645971260 844694224 632716255 166044727 871402644 676473007 269940113 170093000 50927299 142364151 939041972 321408471 753178138 733294516 322056297 236137406 192351031 446602182 725183557 386984379 947158211 492515822 210358016 595003900 676813024 29165040 573722949 175296558 64008507 206538443 793296544 704539870 543384724 146836949 653709571 769598350 746235381 571459026 653789053 923146589 583592862 442112919 699603944 939753848 498442532 779753994 10966369 25304254 452503401 69904343 354747065 318855552 249644248 40289932 25623451 805256508 475895667 245113580 575969033 65254840 169738473 319198217 839297080 21646426 490842238 680166484 750309431 405236709 909425200 734474297 403192237 947262057 624649024 427016200 481944009 498917271 125629566 699398691 636713085 908857277 106683948 385310592 356928165 143872734 239631067 968418779 931413213 606057340 828096061 199532664 393840309 10488401 966297243 150101557 716130016 917784615 839657512 426641262 656521918 653258256 961020076 310723444 747990066 323899577 629029439 385920024 151215252 363907782 85512220 193466104 425318276 388987252 861044276 996104826 598964849 82911852 735021674 648815305 992030798 497252432 48016951 36761166 554110959 780263640 297273983 199092823 465176211 888342162 721356571 71736828 154231265 516373649 445458289 527217027 750147102 76260186 363294974 761915954 825833310 954865042 36841988 567624513 19122791 875666390 343560311 310700041 215750687 666600541 493820765 621701402 883325041 805460784 411718194 46046158 371175745 611814687 437357859 832741352 288950853 155768529 624662619 190080058 176101006 649807286 749068480 491129252 955306965 618722105 646970165 752711223 459015867 722096770 74505019 56813935 103296383 670621092 419610887 297768185 302708079 345954788 616507676 949435524 329783769 87369161 231767841 250300677 684157208 256870341 681456572 985271916 885254919 504252180 166895644 482299260 455127712 861257849 297959111 351042697 816910017 45741339 215326392 650729458 541460414 307217769 592834546 56227260 958345587 40506049 192357647 643963399 448783473 619864021 817472974 689175932 977498374 499711527 888041009 549283791 635637809 964331225 171713104 265505404 926385545 529476743 605709184 568778650 418029367 383758685 906367689 773477865 622834103 491466850 150951443 433047746 975682589 776152300 647357496 469300516 847524867 376500877 656790612 336362278 124416065 656950472 827932742 303929385 971024826 676945907 740170076 613019710 988148447 483807111 196775543 646876890 535331561 834490276 977651245 913920688 151869872 325657047 456718547 278985467 329564170 111422022 323061860 984406836 902657824 995963200 111918829 243728313 397760673 326622548 301183375 787510695 736341699 625072653 40759611 700613712 555832245 455663706 506981919 5762075 579957896 260693279 893839443 813262384 93833649 457398089 958026664 638934575 276414119 590380149 620649163 414314110 214967547 773403046 759502501 945958675 562979234 521134363 644623451 730962438 58586133 811879114 690719298 526898717 278232022 586776595 230893279 963370162 519034730 950982411 622951618 257863224 899540620 835685050 631027982 629246749 669658070 292917248 307612417 202024677 520300975 604821319 307788413 522413035 642073135 177670097 972747540 560169542 975487272 518652299 990349856 797332295 360024570 178224059 982286189 839405104 48809193 523175499 231828127 453640278 428891491 621976279 780715348 51787907 308812643 299466092 189518772 656873233 758894097 950965512 178984982 223595972 533132358 849133286 496198172 548984673 673328007 880835219 336813156 508081373 589506356 256818044 725084054 5647310 1985677 195918243 303783921 579642961 347972591 48938830 886712211 785388367 551198314 965592338 969963299 843673544 884742801 254434201 225893015 738406938 549684129 133749747 522728463 660146449 725080284 741766873 427564669 109732618 76292788 822781201 839653229 707759172 876442599 583478299 723953763 339238482 708820057 554447620 267880549 920489327 236822881 942085517 220489822 562995568 591321791 277695083 670823679 80489973 906350876 81154120 581542415 892947388 304182423 554356420 658813023 770278320 504989707 495937112 652560625 582886792 216988407 203126895 638556642 215387417 919720456 928038230 841239301 2139451 551248282 854325098 596311325 206560004 455638062 988600711 579726137 167523116 763734899 185199061 810990756 644012166 666387896 151383962 655022488 668437511 400657919 119116594 253299522 984460274 659571144 148992137 974650099 454999014 24827127 39651121 83349122 664487477 653296916 715819533 478126008 48799992 786237120 864396618 579154810 652058355 522893698 87424476 212788520 82249157 675931720 477552708 544273823 410602797 441108363 251267548 484429059 228938175 344058888 690949005 931525471 749712612 467862373 694099441 30607033 494686080 402821257 83434772 518856749 318397276 16538003 405371826 17886491 112076521 820137433 755489093 236155230 665737974 517075017 781920620 624852937 608097130 613594780 145930393 25544026 995417891 586998448 398063682 540143722 90058645 163165483 755895606 179327042 212497740 986243369 842681745 785576446 292694695 821513985 941656166 506373986 582036933 868061326 595111472 729839263 132264335 357493766 184200019 893890865 362119374 345283670 906825852 720324472 208544946 529219577 438165394 450060383 162402618 163892273 137663160 702327977 259134868 687246800 404637558 283339461 14751772 770612103 89066962 740286445 764135772 594306940 392385875 703567890 121179752 903517356 742639617 889237369 801222489 471737811 323747326 234007318 732546150 21244515 752119910 173658279 432120442 342917193 709565036 287435017 698122760 991666029 551919936 694131949 158963676 231262021 80528772 939993780 788074279 457867679 742678876 536573051 49201404 301721701 802084382 549949776 58012181 181859725 919886097 575413372 197439883 955578089 594079268 233412838 58988625 410894486 939513689 961970840 766971409 834574823 479212394 11591618 284600227 930312793 819414286 947497845 316365842 266801798 185474713 414263635 59431973 901785500 353704504 951042986 702344516 109873274 70281844 233765648 173157638 389909644 393948379 491495796 240672187 772615334 616042037 735293197 834589219 891223980 654868232 557956924 918669947 681490462 373391429 574189649 40696851 328087880 538165159 118047046 815562834 937869022 226072012 945269540 990089266 914855791 20067198 471230938 871232743 781013218 213201117 422818982 459423223 364768944 245471824 76770606 578520668 697823844 955081053 107462670 175113333 946444583 346022925 202500271 306999705 814687483 590255653 443553763 459510670 241631357 86082534 785325194 750538070 202022449 75145242 139161375 747607429 716965416 667762909 996590740 202660876 645762561 744663429 614834554 639978780 682130907 458676030 993695867 650256071 472275959 518023257 513141156 385046494 433301627 98343170 69152651 317569828 47949899 801543242 405320438 2099478 597960212 273653314 927255230 993050388 967091748 222164196 811993106 676986206 520897596 64501437 418867837 991715149 955120230 867401702 835206690 342651649 334707576 509362532 639857121 680146304 186895335 727477165 24665629 854955216 845732676 456069908 757365180 691260549 772004369 423944994 568036363 654538375 795168630 107537131 868334556 468307229 616871086 747380006 578819729 689023889 434570124 168815539 367207416 386001105 963198051 294880051 627231964 552544638 269726337 811741919 187238043 197427062 474093434 860865656 948327818 62307749 263480452 699028739 987121289 750689544 382918407 659531807 196313395 10688026 323466124 201991616 30543339 439641198 318362844 492324661 925792581 428282737 591539889 884420526 744648743 531317810 50316536 881594509 810435999 74862800 474800344 718590133 641752477 711751853 869489030 375930334 412500331 809691022 880191396 174584968 422020013 347791490 825839558 797186644 589320697 949491334 802139239 919477965 376809457 688897107 993921936 519016694 531716978 343297578 598942678 898503620 309231313 591272215 665083474 456316781 704476067 577925395 278138911 572950170 973671876 883891863 658805564 179158894 223822232 381097025 199319544 634399971 746316061 754980363 434021559 691762361 54925242 212034571 128082452 967441630 62870353 284826580 740456223 311179353 52689594 196765517 680181437 649278359 443272869 270225019 955159022 688470082 587911012 274187841 538821779 483261662 225208988 229120078 44691447 307191239 594191252 429546850 462355391 5874207 376507309 770387292 871933127 635427066 994371172 616771250 519107316 768740086 291654478 32933094 85325560 654731993 210797317 29131761 719750667 311241661 574200799 529936021 981337610 152332983 728717242 673583001 850542855 331748038 376709450 607992686 55353454 945870825 123709816 679259033 434112108 108331140 966599915 568866679 574642841 314852137 627047962 747424539 925693896 885702712 265570529 409913426 22906499 266180385 824768126 671781190 771328841 204492101 531370936 934565532 112000761 288834707 646878956 944520081 55488732 787098943 788411479 89489576 781269707 963229911 522487953 416753423 145072011 662059254 43470501 318078072 523789516 103162903 764176796 656252329 264209789 708534340 305872108 509685082 230751522 173843103 555270613 47925406 851093868 580323621 347419446 126430619 27294104 667588152 270471203 184632150 213365551 867027496 760088541 465298104 856286156 278022665 237812409 924640846 991756177 154255979 879505482 615121196 991043859 408977941 920547218 328003807 779532536 123427465 305185140 226566882 670583926 591337072 445589138 791926610 339880112 327258038 116189276 187178360 438234419 986031311 131357322 543815795 195473396 3129217 225894307 48544559 830842024 580488258 151378646 344106926 371216623 896028583 477281235 287258280 138340786 857899299 971148119 299634729 324690878 828848971 649623863 142583169 596108521 991307661 238950917 814333680 106821794 641472931 307318046 721625580 458300996 141630255 312024909 167273188 759718234 31876794 31258951 515768557 386018493 136790016 880392706 518564456 216841784 404260969 15172626 235241356 47941887 125115706 137212971 646732924 785434519 308763569 761975098 796681202 355775968 307287405 908031540 298293736 281034624 341477179 961708441 288849510 292500104 527340074 664508566 149146363 443450553 561371631 617893046 495939972 362409423 551492597 299971174 335338129 484175840 263062092 224587116 479702259 132952806 367773575 440663728 868368554 733478795 691455020 514758062 833949793 427370718 4016599 97271321 920649183 974520637 438769012 968840767 974717031 480622932 257214918 336482674 76327485 316007799 288066588 128182921 29901573 179146645 629449086 248888051 513988175 426907574 536894802 648694378 583988009 239683618 523857408 889735309 286348590 810909554 560616675 648878488 626126378 278546639 43387616 628266949 152565619 237322580 529329655 952160001 157103742 190352882 14705256 587115001 744340574 834541320 767796257 41938604 309125536 732964331 601527165 880608613 45320066 825394160 997053711 968641134 329380272 823810699 412243200 84217338 322740107 478175720 755428820 678026886 52018097 839890265 542758597 616877421 356119107 568511498 719870779 276247458 159375730 109155832 711291357 75133377 715579229 61058418 8023480 162813840 888653701 498532510 92178259 716333338 572788151 12219776 81333191 968300604 517237257 81399807 531883977 469443743 793806923 957734976 505653381 450922333 23054364 223456809 753890131 736020168 678561921 234305651 897533695 671272587 726774211 263194889 770587115 697782914 349288765 911435608 947290510 790265182 865180441 706917299 426665546 595015285 915387594 372555978 329499707 633507617 634110244 67265943 114113961 486804627 445153429 912705505 629183900 187422365 146670430 175329378 683778544 154593359 735266029 389887700 698348492 589673146 785934873 931501938 717508555 91141484 708710131 937680827 231039459 953796605 33775379 226024066 725513966 835556874 958647145 219223543 361159027 195892912 646259715 709685474 498922080 416996899 841594552 813535519 681717298 918656018 837988764 324226851 623406774 857373383 694063354 671834567 460927390 643457057 868812990 239443841 376433556 142376700 196259381 646448067 871826742 503706662 243595173 717413856 843472624 241683298 612549812 392950651 330644283 252157753 635063955 865663679 210184125 997235601 19954112 662254665 31998371 693072953 86858111 290799893 365742672 729195116 447276653 963809845 425276376 944534742 373298519 333131659 942857151 794952583 447280981 242372311 359642005 116448522 313709550 973009974 338103023 30517226 297034683 67505572 429354914 950426985 282132764 643156975 662576738 837997712 996769410 581374793 550408183 653075326 331197714 209408628 88340648 968990822 944080590 110245772 65695413 803541586 798295799 979368486 86488979 962429095 799211656 680111551 503553609 4926571 834824702 172084253 380716453 101336314 289411674 929639365 201065171 515225362 479058384 112530213 695655884 51419048 914397918 286731558 153146393 341403093 893751197 670371135 662559286 101528324 147936393 129624892 393706531 447292616 342983874 371698825 28958494 728969151 426628765 754101028 498175000 655091312 567384522 691364629 178623149 790322495 623713313 956192001 820983799 930642560 876602157 861920583 786618744 335130615 139202970 768117765 324083051 817124899 520240651 409491409 997798276 555831294 590843708 302577446 724583608 695049705 435050502 781265683 419044851 313232325 110942978 408832996 835709656 714516241 453536891 160846422 251862587 647674977 40825660 648889356 472830351 732343873 739087256 649427440 503531600 898575889 680479853 657265260 557842827 715385308 113153496 281133480 568136756 885178756 13380194 924285580 661145124 649571037 650663748 848817743 51387508 856058337 776497666 934525664 574467162 106990335 259976480 267913167 406923003 117039487 608097851 791007535 707321650 309289824 777345845 768653725 915773960 920451581 346274041 863014157 440151240 657191056 254719970 520329659 60814309 654145566 876421692 673230263 78294946 176635560 181447178 964594407 682378365 415549754 288767031 414491847 970333578 529704694 965994501 309579415 417928507 320333348 640651247 311927020 539314613 183121737 633695304 497075975 533945820 678001541 765249821 571408049 429084244 560153294 710039703 974298232 287711923 38938545 954280202 913374599 697361158 958677118 956370977 183102426 228893881 469493569 860441737 117857214 75847498 250147931 100480314 740504539 824020031 642172371 665694380 587376308 875412889 236306873 222659474 410289408 848438883 71696182 838509639 9561271 28015410 70537967 727383080 896151242 300348970 487987469 986649112 586520014 991000373 959676124 147702887 63401112 782402674 902471362 63707967 331782347 75485607 478554731 752945869 990363868 566550343 41988665 715118215 861045371 297144567 503093305 472914872 851477973 565679787 426406707 876602392 603265412 60934630 433501818 284725119 41741383 773484861 108239247 307380896 107921001 814335102 162635660 54464773 21905619 3635601 391387347 669381765 171527070 756437901 78825841 309306323 880917568 98056475 659244087 241884050 809298510 568204247 511473573 599832110 969153062 628842261 227704185 598969370 443601413 629422433 684991608 126185618 139156522 80808817 319899385 223700625 499262095 376234080 505706286 405769696 278187371 404068115 893852504 403840381 651630743 226184623 245618497 261866838 775388648 798842770 838408360 907146047 641871802 281994656 463167614 525302921 399515019 104420625 191343415 194069156 99425936 427002298 410389909 16006412 881905873 341891066 831970571 851390507 587111858 249282724 53722999 553930224 459173887 223798580 870625137 700480335 598894349 615758864 562277802 854913845 663940634 437954585 975315347 358821495 550175116 410458832 408756021 891585569 188619127 186914600 451791080 988313230 893395343 353522947 563401368 921383368 165448402 829349550 831769210 473685438 473668053 775048120 777646682 772486444 739381423 895104170 647658123 915869552 434123537 813237801 698971948 25652090 385008570 816853202 975448030 248784058 813158358 794245934 816350425 894521201 600815985 511904938 226729246 340270673 166125333 812699262 368793943 882169777 508056013 280823670 952377271 914015257 425862331 304671486 176305450 679751972 155129255 542687919 297997144 37378640 623319170 319384059 163301253 669767429 411333190 839210954 962330021 553103087 607075998 906276201 801204186 676182266 240816125 396060205 553245709 352920854 623481954 58463474 238635535 483804206 747962981 405112742 327238253 275098238 321474241 111764188 590611809 854568712 648713425 641564687 460911204 390785123 663182988 583882806 449050920 978154643 772239994 789985074 197796197 766406001 481604700 675389160 328632702 626317595 545261809 255169330 946427103 576490640 90244395 20123472 23229876 76263294 739373643 322338634 693553509 321583247 267447757 466902444 28844742 591199468 896915846 120164860 414827062 240285839 607435190 27914179 862766790 412138741 219344892 776297506 609449939 113245970 829184007 390305772 923577988 944633434 613189414 961988196 443677113 794929744 752725581 513024339 171227045 955454152 981457110 85101989 474402624 400070527 779411847 350131528 989024951 826078745 380317736 908193433 529388653 609224242 341466411 673223267 299169869 976012464 509627759 833283147 382559849 445818801 215970650 649395761 37690416 129410962 75910759 164257183 67956218 461139134 823310045 462659168 635482724 415679288 648561816 452992350 324348380 564434349 331608310 280301381 672235340 983467102 624828870 244674513 554655861 940655785 87684265 794569488 250931883 543106719 577620184 626679604 987249798 622503826 309524504 99795091 724792063 166664688 600754802 1572307 194331668 924828175 719943299 728300078 916371794 781021807 325828114 120063035 6421436 55248903 25831482 884279927 577180783 832252246 687564062 333054679 201417163 158272296 644803046 160580650 79304331 13009871 296016748 262791881 168468907 608442370 407745666 992006267 357520553 335644048 58943842 221238704 325737204 78400191 922867666 161182459 130339842 226943775 489794497 209961335 231693705 352534540 38497563 680488949 426856363 85874460 990373927 232671153 463315166 990520293 475077847 810354683 409455631 594916380 411971201 740714929 204879121 671812078 294807529 503089518 647749699 637768215 82247735 802973415 933598764 97282175 586012457 588042469 134392794 486054481 974508679 752299166 634314442 783954589 874218347 332183082 767402590 8497998 428526745 483701620 475317647 740828574 220860823 100679723 295876274 233796584 977303087 685194593 838669850 117647722 502780361 706841186 242646980 710500631 775104086 356260002 445519654 518253560 233585385 280751830 417473801 131273804 877723911 531917489 491353044 608182634 132051812 988272033 268813269 382403169 607047792 88693655 38448774 224807379 13751662 547916530 382112863 217217669 284596076 655291508 673242179 196957545 785335809 439116874 997477731 569252308 843217059 190078874 284932296 469769650 442913991 29566775 585010407 767703507 866047667 969751354 726923395 651817614 503689498 721419122 768384086 119585467 836303086 947645684 47093143 245737207 938800440 714659145 40917526 930191178 977493937 286754092 88242188 529658287 669945493 19118015 856143198 857853193 20424476 734517357 43978756 575863202 96784705 632788308 982551349 98536061 417104121 354161806 141552256 71865045 315309458 414992827 112684597 64623035 185894127 719703219 16490656 291612414 563986382 802449921 633024812 658918363 852136377 555039555 755210841 695084894 279473518 641244766 458723484 976642096 133665705 796158866 518420050 151180366 876567059 961947866 221573697 107749291 405650463 608942463 199084829 658696218 268599550 970450525 590351003 483695644 440211382 843752212 120350693 58153241 296774472 780156327 78740999 822075092 67578542 958209989 565342906 449457116 154334308 623529173 680952440 852526374 669480308 742155481 481540389 237444910 270393820 481337437 725436615 778226196 834677950 884183234 586426717 671538751 861182268 868795235 459194429 799958100 116249888 398029442 581315083 609538848 796647967 87421234 338448428 786393006 288868126 955483633 120754319 239186337 239275020 314016997 941544507 864798909 900774344 287790164 752035420 241843724 782073732 164866019 647782791 939606976 917756974 442843575 254829339 442481957 115784865 317131365 132213255 923322016 903746498 334789726 875273144 363206429 695017488 269373911 946916363 829846594 617900380 364352476 459038700 548271438 961416381 801499127 158721172 786892324 608674161 289736832 200932543 57172647 278799166 726574299 369450695 35606990 665643134 745887877 943424450 179327529 368443980 594297770 670562498 410669930 858851621 291413790 503714993 610074590 63500570 351012908 462656156 912216197 939358683 572070784 252342890 347608162 837461069 565513423 766994881 797737703 864643116 198339575 918072616 680243277 821950530 104917712 425907294 343732254 772604469 311517676 47524101 174230289 413006499 451258071 330830035 724903704 215727822 815343426 487304375 604791910 344103097 551907034 882705023 682024560 502253744 932669634 839536899 419591501 495504295 882600379 956474068 51575699 125446933 204713247 443393275 336605005 782484539 5053110 307605226 843829972 883321419 604263740 976780976 12552812 876250818 19967234 536163856 391323681 323988236 278557515 201107374 398501227 965562960 503802991 858109908 785410547 848394070 239247279 719703998 386566570 498029407 923548693 870163632 830383992 894363324 973836741 583200484 851578333 743772544 457430622 413729008 93784806 746673564 698667684 37195473 781789302 538397706 757000798 513110812 469457846 961928526 451100589 973153597 825545866 296757647 408023636 434673296 642189935 143857990 547909377 321207262 430719400 644380165 897695204 952272852 366674364 920446575 135904831 663558709 311249899 350680175 728195101 539276141 949494526 213288350 338395993 976871391 391038080 769692382 216473986 628828672 622494633 623548883 613292052 710861885 509489199 603527743 575682213 426719553 996695124 831009403 867565811 50475826 767177013 535460857 653247367 68989648 810920794 534420006 160432880 573873953 634614496 695862527 581720815 161347501 477567074 431146003 425929737 712800130 836695020 256953722 618443028 843876451 807180802 713410577 159150532 157947727 486599952 352528055 599228 25291889 115911999 293942967 411153823 620486476 206991934 140671474 892647027 835809677 953403999 913535668 322269848 920577115 991474435 637994936 473412514 842396943 323059427 485368742 533769049 887576106 174501307 462059990 494044049 435202033 901921010 389519506 359500749 411346457 532521455 112928519 150030366 404158738 239706171 423357585 843319353 924502313 854773700 794071859 404460668 920525274 754511406 401386257 382408479 808298837 450177523 396337472 20214977 357508959 363774801 360898254 942969572 75574367 250740683 727074163 823745233 721403224 727066251 73447372 863768908 339225915 953299725 692391406 444931751 351678180 913246193 183406381 271968665 883526506 102077870 664693784 536562579 241216082 534401944 271176816 518136676 749737276 755320432 671605952 439797061 366038986 529864337 479672520 496598259 114128243 162824141 793683819 86648341 744990041 886658188 235368375 831052612 781663288 917784808 923878117 261906467 581139282 60547263 979233264 213359000 468451117 965528857 962015277 390969509 158993997 717755396 450209826 220967712 841005988 12212513 790046575 128905057 627438801 252984601 943009084 653749323 807590498 26442615 731859211 199470373 416447081 889297947 178026551 645660619 19451483 386520117 325328782 505163608 820027042 891373204 314170090 418566358 665528255 316651733 525270361 87381140 481891750 896442081 774935301 666077615 209151083 923199871 486640661 738681070 116509473 507650719 634303125 765427572 53992823 676686613 28071467 89176932 144340061 301487528 786473750 821792140 61344035 241787276 778868308 697759013 848259919 625425244 641954425 464956896 851921424 247180716 674015860 293299466 802483967 901477329 491143824 409081424 765520820 688469531 848200769 761866496 838955138 471830877 24136519 282590847 512543726 545509663 965057555 125219458 694827722 167818548 391936601 920263229 920420506 406659690 905654376 828181395 220997661 342423552 640040747 257416737 442312888 166230127 695753288 48220928 161776075 58632324 790508872 901551022 746435726 526773109 737814818 774142857 752807501 255919847 16579830 952290501 523101003 713311839 148883635 896818860 46970439 812608916 864974368 965468724 547115719 670140646 210127985 349555696 91442648 229398927 162057512 308190056 657901956 934860308 363107627 271405358 83065651 380922157 831196999 372367757 689600391 928493793 889451734 422506042 316210682 344342873 852280719 346985976 237347636 586698570 440112015 681542305 493014980 616204660 497730023 323107155 638709777 88581215 758131387 150041943 730426689 675369705 544499866 455276737 625979318 571919277 99742192 667605555 927213246 876657622 496983991 283708863 948068276 875453897 691142654 341010867 96843784 244762251 367072009 607672063 263049997 645921447 590035690 669918027 87597729 598046774 742883859 688348014 380275423 842717305 75587912 629192805 491846921 713749171 321614984 688380191 291186086 943220123 24198369 759348579 32384390 679997097 235434576 288798222 975473050 71231529 296400162 994251116 25184103 334745540 835272154 629904260 577908946 235458820 942082128 997101408 555920550 889316782 502617638 365844426 565453270 474135885 950427572 13395678 220660334 35041333 304535166 412378457 882762678 283205008 993623115 928848739 867241380 557267036 113697441 671212710 301076653 159880057 218246963 998370507 527903674 747216644 671264203 126634564 855385945 844739730 853694043 560949618 231261699 86289876 229576300 592074048 103958621 417626890 640746265 605496346 452330530 837604162 371033934 129555238 972886459 712015792 591914538 160342624 458442735 355751989 632156918 701871625 135584592 596218576 464400664 391575656 652258395 508763023 719763717 209234036 992921536 313519150 449405073 565116910 197549365 370265487 519336059 990725298 746653006 963913097 675499361 511066024 125083699 153851319 778565100 103050645 979754627 550880502 555693728 367038116 854507660 213976756 428116639 827035823 841080624 736028778 429820744 926741569 837261057 160982091 779055872 474407349 494092401 748644726 543392048 42419112 550145495 274742370 486561101 576470934 106567035 180869786 484073359 550473356 494333838 488266422 295493353 167674014 722725839 284872159 942738093 505505716 181505486 247822946 435949157 135422951 988686182 597497958 194512639 266036498 697872277 266181465 121420284 490693615 207371252 323644206 212497373 364574300 117361233 820868656 444878077 354132094 50663414 214970981 371198096 12581485 653238835 980942949 312570014 988377589 402088501 555193609 820378102 450228091 123641066 343966053 713879019 201935300 293811186 165945492 371166276 436380138 605124793 643731552 720525086 179861581 413772837 916227494 534386818 840523784 142557194 60609540 69530708 602682918 117465554 757844050 847113297 23009480 812003654 50401927 175525392 640044085 74019458 19733960 397859103 350144917 636568049 181002140 472061032 202442434 529169221 105888158 127167566 924148927 658022942 754610387 425307153 25831991 718700827 969032049 116167103 642337740 624531074 349046172 214083714 14758695 407988773 861325735 273687988 160672654 545908691 165955122 128614147 358445969 740167291 748323091 466620853 223752477 464843476 387215963 474126444 803744736 233177684 542514971 683369872 337900035 286266133 362748571 781362837 995474159 264755583 699348909 132526729 216711080 199169280 42427445 409881389 456281383 845493440 981982491 537820071 817816988 138098187 560213244 624971540 948667003 31579376 86657405 282781872 689928645 617988462 603619798 283380454 393431572 664365040 220211115 573542148 124203414 173500088 894202515 66041457 743565898 437120652 351471469 231655238 745898954 277331828 228843724 500230299 144027791 833029666 121814663 328709346 787036681 843728822 899711441 82199588 669482770 553586926 952366200 352260319 859706635 90152500 517706862 341530382 285092140 1545537 438732518 238161002 623925573 360483969 282805852 480778243 195764958 127840773 430522759 884312412 670572258 658304534 133411620 655241809 242396536 58632645 729148008 775484707 44644046 377343811 698970028 711761032 353355482 349473850 46249465 151243922 95058302 96791200 260480997 567721691 657928153 714380107 680599219 589745393 652269147 184920694 675699425 85043301 709602305 825285211 980869482 118754549 948910968 129324333 431558636 241436238 925958651 688608273 261756555 903205042 996588958 935044946 278336942 176202300 79643654 545493870 116454392 441997472 924536722 31503073 486974116 188778312 443814028 892064165 696480311 948318820 795735215 96917807 49059749 528417341 255177957 118324645 941494316 514624820 17687096 97905609 337318761 992904410 857335652 937005858 514979677 724899114 72201288 833325705 417953561 306981094 153571860 460306930 150676499 546168876 896378637 507403056 800884528 425081619 609763107 519629835 218973604 660513548 686856994 390011404 818035108 798986252 13296827 101710338 725926635 495780716 817784038 910942232 276459708 637399760 463962679 691473950 660600424 828809373 460865343 298676393 617840640 690655501 64012586 517546981 569675886 851201500 380072817 25345064 41746888 326556900 783465750 217126141 134753288 443162804 906196879 447681199 247190635 952388952 569370128 431471817 938625655 65588090 623565099 411362289 851656909 963685717 238837402 578179421 257203072 854468971 317669836 3791391 958776105 917340090 263349662 727880717 944083970 687794665 345560790 826631442 26384917 423062018 632988757 900767616 789192925 378980808 710814289 561928466 900490499 48675529 996184724 574016602 88179354 373036696 598553968 548531606 529629299 743201676 26992679 375624016 19451153 738231783 268739900 562452683 800556878 221213673 365823778 994985178 699815102 874736634 233907168 596450038 820893842 542805310 935791253 486357846 575312640 760339481 756187975 500701537 53600035 295793795 685733115 839805959 446560496 267816173 859608184 191689301 672752358 110496365 842445168 822961604 658375982 267241848 806782426 481673339 773798791 345820607 100169578 347843496 746918549 379039044 425616528 80302535 134648736 534384601 715392938 190300669 225844199 744469637 889412200 149454427 382697810 367437755 930301636 903933502 244425230 817596038 404694674 34912787 353975289 460904348 190393941 537131631 715451311 819484058 278284393 116969257 539923278 966367517 871706072 554859083 509570581 117883269 558227941 201570541 865426091 363282754 445631170 604610784 526975854 328297359 853591972 187112784 903804332 268675587 822078032 843584358 408526813 203023671 473013442 663347009 407885904 635561965 322379076 785749580 352873988 960174023 850070233 921235781 628581880 78955187 739850558 982064389 81223623 399523777 67353755 650639656 172535519 551604850 434721325 564537817 335963523 33249024 699614856 197146072 860341330 934194385 624993347 970732664 3466287 24112909 660885071 368602158 563103165 214762606 506985887 991009732 267592804 399551317 778726391 522597091 736275251 474833902 146323112 238032392 541298967 916886890 562358130 917265543 234133647 362756165 227004560 291528659 303010810 318751028 291135991 293730195 339904189 422585533 595762413 628393122 21754372 520802241 634914970 502519889 616999834 612516803 84227983 279512627 881617884 308743086 662483196 717539936 982525999 579736382 713969801 373220534 215035587 997348325 117350131 910215659 758417599 875377665 607746327 215739105 940958828 877640211 447755479 330504041 589228248 643746901 101811521 431405886 412796331 826404694 724104592 376682741 56524488 143513524 700407602 751035600 37716085 41958551 335905427 594649414 243993952 975495530 753781442 47074270 485831636 33941648 800932500 554352166 206910676 319369079 561136873 897491241 506475501 467489254 936419721 736267988 119224157 917108905 762830336 793284068 22225862 459807315 193665884 883453664 773534926 725958501 976852898 667258192 221197259 919601101 12821181 425957384 213306718 811393750 83238813 838452253 66390206 181908542 26317927 533255868 710113120 149369596 383192627 989902025 939525901 203583062 948721390 883112637 380998311 430048669 107433115 965289640 212861049 253161320 764853652 507004099 783230385 551373276 923138983 566264514 779540248 804930266 572910106 857788223 125173889 836498678 314593697 169637664 472428642 679513613 787268142 497277651 245794823 396079145 693199828 383663598 617417736 407054094 25723546 424354596 875341496 604777099 958242676 274053570 557070606 499348872 557020901 2302376 827991445 613273233 117976746 208359623 397812276 63121990 121065280 909211662 957981661 47164710 36806216 621105177 42488578 20686334 978940731 502745424 40512600 494812172 217455784 223738682 702956185 392875882 173298671 96651932 569439313 115438932 606675637 711670752 289245736 82486418 155673022 62988751 883022200 779916864 340821750 308316942 502943504 857299093 752895621 347018242 728140389 965939365 706565557 484508194 169446424 470632255 306972220 229382309 434308293 891126189 193387999 8864768 974194980 814864818 376887590 909780857 282741508 15080597 685627173 5193373 890917257 139115885 66996260 244230182 290227267 859291981 740084531 186581390 412583099 148802788 382832243 268000654 29200321 550544522 201757248 677764098 999918746 861687410 412484252 355031125 551229450 560021875 821070686 778501366 404238498 950327909 470844057 280168727 582038851 734557081 695701081 243829967 1114597 500879359 43666048 822245090 953138694 617019190 467745062 632022890 537815977 548818411 637334208 875212016 375257085 239756000 166067557 21435031 267328305 707735675 669628303 507709304 909836975 162322904 200946446 728458183 544598070 784937352 682176134 214967315 419077840 188838921 76907360 632094870 138127471 512455971 765355567 401821937 78946635 270485795 275600578 266284595 470513421 930589305 417311276 964468881 318288605 257916541 272532936 175347331 725017 491588339 487971393 857975120 529670432 984917432 845655612 831860829 511488832 512143537 512971276 388394755 676656335 172775979 640714128 108642860 940659185 946550988 454334449 50224317 675428325 356811032 360959670 477007484 488644269 505898703 414381641 965155108 173204279 349392013 259040769 89920680 156840546 370021986 683867193 296414726 977940846 269167653 406013033 100861576 745320269 654666431 602095417 956828796 148412436 995083326 904813714 246339083 82987072 8466687 893760743 397784654 744880075 228339784 626527360 287438264 322024789 402616632 258991493 27718052 607504205 67125611 681576656 232134160 377561119 497601846 625670175 341811165 94881074 108245783 490912268 656260351 766876039 634809001 917537025 291973669 928100509 346550350 577541421 508070086 264306753 265943643 522011082 746615728 558173816 666163739 30886605 316046525 846110459 34904427 441204172 944536696 901706127 227432496 995022401 797182300 747386025 857119937 222563710 716747657 841401908 337378992 640274177 587623416 875303283 238857928 858483898 870663284 404005939 529666455 961057048 988506731 54199895 367018295 275075309 809967355 125800564 959374106 328478862 96506625 260729608 710688523 838614228 977295953 374413685 863691010 227967713 652235372 290310046 452503066 651513147 71247915 126900743 753982533 19632753 723812136 540794429 803260311 142384841 404765178 663914444 183380942 632578181 168090063 226119795 415407087 582807455 778824197 327226089 58316608 642878558 940866627 501417022 217515894 968408570 76229035 427479323 721753908 555881353 371690163 232300693 867840026 770904348 6531846 964439539 679291846 393744490 116015711 682335669 121744568 86132341 490841444 722718507 461892049 213423400 883527036 58383667 489302225 210333777 507868731 556140592 364803561 959142712 705329345 109183904 391637492 368725705 41119491 385032421 987942165 877223671 511214749 793792924 326711518 345621240 30982357 267559743 563705413 730602829 217541720 891830893 991224214 271592400 692938894 265756642 695070043 474125417 524116359 652056366 49640036 396394439 729325441 619556654 735251493 58848669 382047063 460415268 980714129 335774554 802096953 656271444 817469953 949805417 9763633 509123440 313497863 357135350 167004763 718492811 829028292 991419860 52105896 466662764 704519988 457567426 6527469 752691046 886942974 994973532 469474329 603194126 891479818 596036720 86592994 808789939 727105930 280989994 331226360 520339994 420924501 111230588 304770227 156497075 990770614 613041323 343264284 827717148 204151371 824105408 686445666 711320130 803234849 31232406 373249964 325081994 357096283 926064946 84827215 516773257 591186535 420464451 670310004 622066784 604701193 19239291 922156889 368088134 866299166 249393748 720393483 683962485 440083671 985598019 254998890 128056851 773612558 895456523 951916015 908490238 837043047 23902527 788876300 687726379 817578203 594318885 286631036 86080107 594923249 70069447 722608193 79446873 739599161 239449393 621796930 170298711 858779040 280219177 186704456 714965418 438374752 617007110 458101558 925799168 134029132 773154483 486687260 484976307 685054601 333470349 322502041 695604038 208596181 941069477 680309811 986954120 802190446 458174523 13153297 548268580 730210539 717611258 406114262 352442208 404166055 615488685 303802329 997727519 648569432 151928446 717940155 65526376 474912028 566660651 682747772 769568708 406286471 630210256 939636075 219401885 386555798 506154116 728859846 58674283 83582005 193455126 571550346 292872646 996084598 962882556 413928281 368239031 237118939 175815305 919217079 841173114 63229529 375074838 528906137 702870199 609901536 579239750 457465274 21458743 309691405 113547741 463620085 146221570 769099911 837211000 350054134 771912028 720566489 698409825 713493701 92702262 988361310 111974795 187516806 175456587 214329945 403196618 297374296 141056103 79081546 716785193 684291100 27858885 748339854 750820032 110277748 150325150 885436481 325295467 969983105 472200261 904153043 926769701 285128050 776827675 770718158 286095197 410600557 331765975 767987994 783454801 56630601 620689554 997277995 688855385 880547809 341404435 978806559 629962441 236926252 312263122 700690767 949642981 3081069 433082004 941824622 633138743 392473219 954443663 919052576 446564581 557221355 411917335 938142446 233783740 98890267 878620382 819830650 581291908 583930658 111738926 606491112 915497221 814036861 567913681 73315596 26502009 83775303 50148105 522449037 46024944 876742916 561930968 61666038 733336536 843717468 317766921 396992803 246415489 489461632 681251192 702209243 501604200 394982996 620371778 54102355 522268206 589995210 458987454 947125440 336996601 288824745 888425824 224785561 56969685 870357690 978781930 734831569 625476085 887610483 963497950 702035240 493221886 216583113 751022926 922752907 235251622 470516129 198756030 280606116 671014305 730391724 482469973 636683743 434686054 212304235 271620428 226456873 466037581 79817795 477997068 663069400 301457657 160451055 691876599 466270636 900776758 911629858 528186331 668037787 747107896 465267721 263595230 272891942 401170250 285689784 638596058 331075748 721048649 957948151 780789882 205715272 734341560 971644245 866391930 255270059 585990891 216989734 257109073 452473394 706552532 734128855 408666291 736021749 229610921 234674365 44102264 574293323 502570052 496858810 2888342 213223880 738127079 965596060 6278914 835076422 216851569 503924132 878750670 366118835 673115747 340363596 585150605 28223917 123010217 79964714 384284887 56269327 806457928 523566702 228873314 358277893 342120394 570817828 131277175 660402748 357181438 519050239 653702980 329888656 742165281 163614130 735444556 230091960 527210559 302824255 706630118 760792136 818376978 759850438 304092691 181259000 825643557 599577999 666718461 124648575 488357580 109262287 672632394 202356032 53663069 207285418 430094946 801438953 866463804 13744300 170909514 487986279 449338023 28687271 165896003 367873748 254173221 769731934 79864306 51626229 108466259 999754762 129962107 162035021 494384202 84775000 736511588 384047094 565830661 575559011 242239844 608524435 938443200 741065832 737802799 408742031 546637946 816763237 252329717 863130438 887433661 745746782 38234383 174613319 188274825 213154863 458962036 209330180 241763794 497454908 800790632 787706923 995770139 5178407 223804005 451421039 54298724 378404174 727933984 424218668 849290516 872603876 480297446 587615940 141984765 998498341 646481319 182277110 114860471 716364776 790299082 769722903 592089088 918729709 369177216 160737342 8107837 467200248 998377627 136753570 59583047 56184621 694780125 249406244 801998243 683459131 837787648 814632989 765241304 247392030 420768151 12821083 70765461 609125864 370908333 718345702 339864946 4657357 673491286 442861225 261384756 964222620 879794471 83631272 262032992 515305978 891457042 169565855 383105289 674174475 149655673 79758297 479694510 702826238 398728144 486519699 418566901 867005560 624723936 852781229 405204793 107987424 904594648 218459278 929893589 858571595 126268031 639989778 559822225 613961052 906551741 826645677 671282725 469494953 811144167 20797489 926683777 138278183 993588453 154338035 972246461 121261481 749747211 825353292 510018840 131560958 626269179 194978539 479362261 927405413 606505908 106054828 15384814 382726272 979426922 418072750 520532746 954178386 607656357 89825123 395314487 278561844 4285606 634532788 992898295 778643533 976924746 831275944 504769812 660640820 873799796 599700553 121417923 524148690 777361349 680567213 274690430 221450668 77438884 163014050 521967081 25452795 61085414 495126579 785400907 986991131 824097221 824391448 730227454 602262922 933513811 991108818 524673282 107122534 968153718 695341448 402837797 993436315 819765657 847784981 6705009 457627641 524456263 881395728 294609140 33350861 809109427 344527032 520835187 393664200 92715869 873358178 90578814 30806266 983198861 457943343 729225775 915247901 294039873 172055518 929309511 441127147 898068315 735743413 727577084 36599065 947157268 454323059 596797396 879320723 431996209 977262474 449405907 906570214 759812946 379280494 497646764 951317953 195382173 842100577 555316281 674683410 991526766 661078718 286753573 953775085 230012138 42581444 779084983 512974192 350098163 719681997 453060950 496705532 90525154 782420840 660488234 71759941 430286525 276556455 860899739 433533541 954524544 161995764 775116349 131365446 111589287 540122006 967704887 754355563 220860519 296259934 431946530 563875998 530710686 691129496 447637300 237867713 331992058 319179250 800714678 423141825 184430627 515020901 822627123 754143604 586679693 911975988 717604562 318937715 600499624 285909721 878048118 69377417 412027446 739798784 376005860 860103399 508705630 286308697 183090167 373111986 746973718 942057410 131049683 46678544 997460865 154957090 357250985 657910754 49900085 543736268 258310036 559919811 371879669 77723683 577549413 407455292 354552303 393399453 437772196 411950365 918204890 514791446 609330056 423896864 899488897 642522235 144500133 377734092 886946922 419729019 635071110 255405063 194030823 469970632 778920035 408457961 458036731 809620836 482164798 976696087 821236507 841750171 561406975 78141552 305171948 341323927 92898634 847084942 583279711 584659194 938092620 493120879 642824387 701826671 965846040 56989825 372655345 71149911 494161512 841919965 182162919 190883139 921950449 933689908 252199663 190274717 289335601 636500242 381347252 936090113 397655010 91598112 631495296 973695830 445091766 705511896 556717465 660775588 115356677 211544038 781346649 790909292 426906809 160128746 771301382 573068181 203797633 363670277 602473922 860819516 380394317 420105412 197670149 877722342 621973689 698193402 331949688 511978295 962719710 681075692 806244410 757675287 766857650 238341732 215535485 374581694 820351965 317391373 509086557 322056745 930872340 467109911 634777055 518853002 21684955 293895407 718585051 380342457 29407854 738533669 382581856 648892526 661558599 148275238 221531168 39831245 427961976 986868702 837333451 563095426 644130903 220532943 692988034 65014113 934868619 274296893 584128250 321987070 374620887 294369556 69995389 948921778 581271122 763087561 271090995 585513325 230884340 322941784 336453554 148232550 792642209 155336806 52529337 918127551 697084876 512654025 540820912 107896645 856053932 755240836 632816832 24414096 283401936 3533343 665859406 759687890 954347858 192077484 572959287 261505598 604258402 221358920 821788982 304122748 517057037 673022084 489877389 606794910 749978860 416644839 637047599 630212648 765555912 333310333 630947020 303617993 630268744 993892676 380516524 14576485 513844718 169853740 234747583 88591157 359637684 333330130 438424498 499827247 174771485 994096045 617620506 287346730 743745161 756860306 192715915 780384749 674749159 33794362 162426111 206924735 441510933 326038913 484948743 297564131 52673404 935511969 888028140 922474538 47232950 83839885 276187252 65682221 932850426 533132783 254785228 985681885 346750155 809296587 34144238 218907162 35512908 774740417 595667718 887310923 220459052 533212488 425719800 625673797 516913905 45294246 629948472 296563104 916410263 377472543 876473983 976096747 856083039 889265703 212546920 395485231 741830489 706861121 40359450 609044777 845552721 726155709 204658777 560747841 682119528 662468804 743174441 120757794 795456487 123049133 73863663 864091502 986313878 602665263 827287861 27827495 372610472 34395644 39822895 937757909 349051539 554707414 283703748 626498445 335762069 390542517 6595069 596568117 241389135 344998450 84874667 54682471 201496017 463144636 314316063 830451518 227631033 505431803 456766428 882634180 52403687 417752815 176404051 697478297 224564744 914207901 584950293 613826224 586191981 514727613 819952079 830174581 443360722 72126465 841896246 724951797 516202971 434290878 182060824 479137562 747568619 685191670 903047017 392303385 894474718 282238239 613591258 633829821 65984495 480408961 783446507 85464188 570312123 5350724 307386306 679734304 437762410 855428683 29007679 487394320 567948831 969208825 10451094 770517254 101527116 331592042 487553316 142204197 753490224 223946523 806690327 480166580 991024064 916044287 66392419 708881662 527220527 532448853 566862460 276293228 828241585 600151686 613187692 140883221 665573655 405625794 769394634 360623137 14897942 966817729 327060555 263973767 86812289 445012911 513200959 675413782 168238156 424275192 633517420 574233546 516973947 621418587 147940178 623747562 421149132 445802975 30962201 270607074 600141620 906081083 422242921 864562268 977664305 500973393 402384889 24521940 345350052 713694667 63481333 420260396 600618650 835856992 750742508 13460115 54012909 951890913 577803835 787378139 255659616 539458899 344160382 984659518 62216001 513911956 132189678 397448621 824209910 84779115 968631543 155322224 507095000 390832228 114372572 280520939 518498558 90362000 70443305 670440698 952555299 546268450 641097594 86436108 955551641 75178001 501034053 585413191 929956843 356625619 227382547 707673347 219130043 824215724 582349603 220325132 775264202 235410591 406079053 40887866 439485058 886242769 294957964 795429813 782735805 774562410 780207780 755653330 719146146 131199393 624552339 418403392 861811882 215356628 903214358 677517919 806220310 96713684 181917911 51339468 404520702 826310342 313402856 98787767 117470236 545802192 185728304 656014366 881366953 350429329 877890906 303473383 463310711 1755359 721008662 48783479 824795914 529585870 810014668 12890193 384933205 991865664 575439380 47168155 965809713 482513626 310529568 282414214 321385077 873638975 225368235 565962442 634457719 634425419 751349324 48907860 229584851 582435374 222591478 978284646 349174192 234828162 456796604 108402384 990766339 719264723 99814115 64983800 310799208 980387863 328480798 149444192 333663119 322602344 505692742 266962800 304500920 341996571 395006183 204994797 730937809 663585252 142114152 307042107 958411926 886727908 852891327 48717125 891579380 84164312 794268855 16349447 943700654 581644557 440151894 457769769 77116379 253061923 959543190 271507639 653079635 938317325 714761014 341189599 352684826 689258027 71433983 832513635 464183947 80545412 819496073 901143264 93432054 440151312 457332415 676620838 85150173 928141912 577591215 225009956 331249581 670931143 974050715 526568636 675627458 451246926 102810060 131645606 558399533 637763076 401986602 448294573 821331455 343594840 815425010 19297414 411990413 762795721 448137627 757402103 943567488 877602530 73025661 91410891 735514993 100595259 978088753 195170088 797179104 194699429 527526439 566745477 262909450 839772817 859859625 107471285 110164704 911297674 633478290 305103378 622499849 930168791 132096294 306437924 63810088 234672711 534757976 989346268 980360315 202919415 711395028 623974109 624100085 677087170 551842931 812582149 283504719 291187193 441974136 881569489 888781093 46589871 854027627 564099836 217338715 986765099 601648722 683451798 959876937 686852767 620214408 89573976 445345040 253538887 289331305 322113037 17503412 413867044 168228919 732699935 454509385 381325688 255924130 210947745 626292428 873462673 894615974 217566658 243234400 614725439 553526911 612051252 143287538 710063373 989249966 310366404 310454392 760290206 936925267 143120714 276321080 927027696 617476023 381055651 126577214 217023149 913058016 574681705 695843456 317071476 150630263 778320116 545193025 752038623 116478810 365436205 394158438 167856056 997337773 57242436 692478539 129632170 397927187 457718760 118026104 485518747 19645022 202057932 488924171 186758353 597939377 405270543 365585253 919236475 111786087 409293148 892216854 19699931 249908038 65191857 745767798 692008489 365851046 483673855 147662879 900866373 983939196 473274087 529462258 825251640 196180069 409270762 957875942 626211975 503128906 275117221 16696431 99086994 551871379 957837744 230068333 366700532 734498611 494386884 657668247 104625262 728353026 566923634 995096134 762258394 417568682 621164968 753261983 853191180 437642165 210233738 636066053 35665765 767902593 222637110 800061747 988211793 727951932 878072581 150823710 610488365 673159797 165065372 297381956 29243686 277014533 887063462 847553119 601415410 88767392 597301640 665733113 510737300 215616403 696153502 351457879 585510726 54576793 547191636 554009351 155546425 232549383 149666718 110633875 502416659 960475892 992512284 107191722 661322383 177484018 596202420 997717886 275809546 149466741 439232747 553274194 6903417 139735582 124141424 55390341 983225558 545067070 637409996 537698582 523690308 352180208 469071102 247704639 194079351 253432612 565669901 642081666 723763060 466579032 725270783 51936258 450013329 557691132 964176554 168066281 375410792 226384925 518796628 386948608 720788141 730268654 504200886 607548725 16972750 207166519 323618424 929085103 941949722 520014206 768940218 775978684 612538191 301637870 439151499 486080243 139014920 49989283 234839024 307487841 429015535 22987721 276876152 875341374 318145231 759360467 612674245 846829392 840294339 999341338 547220390 112063170 715691124 828784678 353799981 437986444 26913627 335135705 641747096 567117937 254088425 207506658 595817252 476820945 7673759 475428379 136763844 492758190 152704969 711846378 568168411 915385789 435834367 642771299 883037642 175381490 815779178 710998070 403081920 519482979 327035945 694855327 993643019 358906074 401282197 906734657 915244601 381644482 179363590 420732089 271173554 651999769 241357337 555601803 929166351 500723675 240436022 177807757 401974283 920259368 136807306 340422886 312262203 941320785 235249536 357784350 997117982 234456131 801566885 198921492 763533639 972364430 471290199 334845702 516002185 789349926 386307189 211384246 262420878 583401661 436321809 115855409 149796712 855160739 651703608 810044748 661973458 920773858 159327160 491013481 253629365 339026003 200384732 187495200 287978492 227879970 25487698 968335074 356897533 191873852 621794048 357391319 968815946 602141179 125238338 802536248 37799589 262898741 342624948 148230939 103095300 478184634 146819869 583753893 782823636 988859883 80824830 233192607 284368798 196940771 441760659 554204673 802358461 414668625 656974718 212129407 636826433 299180550 564426583 492378057 916258123 118314047 270207142 397474234 421931755 666907618 292223933 980979505 123084709 410575077 854826840 8950501 725937882 158630338 493367812 85894349 262330636 505162350 936247067 548396322 351832744 802065352 965465573 359364208 715101417 625642492 261705604 494554000 406200572 90629025 410908212 643224658 49360846 963610901 343011733 872331139 444784717 681946519 188608330 667686923 227879387 178719833 758971546 840640451 352148508 555363657 374524309 689750985 434263326 994436633 396889621 471480268 426459212 138946436 530831286 587920147 989995738 771686499 343969062 579321330 567169967 190749818 872852156 916854767 909118436 561609387 605686855 808978158 169293495 908423213 593191210 541334153 598225820 213393149 977784418 877441627 609783114 758099744 356076200 200619175 167100716 805636223 780813179 624796852 146570066 481537401 249033941 157622536 855976861 90782530 411423231 706405006 347160755 702145141 283627771 568316115 57844369 735221846 605711677 698321903 241666037 647221689 448228353 774778117 572261661 711637266 508735464 65495509 232317620 430437712 24223985 172656100 27157323 649874399 108293625 316323438 402402909 949024957 13260038 346832914 595725402 114592184 70585752 118091689 643095528 721653338 722602169 514189119 397443497 98744061 840478470 767683743 780590746 164416655 985629164 721283780 699328104 728667253 652255116 321666329 909793065 637887649 704370649 263889627 573387363 286882625 377516921 113900035 750007180 713819038 346501463 280850006 401709268 545857328 499445680 406870478 600510101 240220103 191168458 331128444 529548942 286057767 172186350 978892228 213013741 633404308 580594137 173723992 666515833 664859254 316679019 904566 769642666 255666280 518674386 770612885 628085925 546314397 721875469 90613460 598952259 743130122 93792797 520821742 358671299 250145074 401440818 707625247 750194019 643131502 786760545 271585660 854570538 333056911 631783536 102593806 81760277 421841119 647912018 777602460 68896285 786818795 515803857 304880627 587765223 662453963 826781560 344218459 530426992 306725160 422580143 346070404 267975301 766199964 453709960 281997966 180117960 176859689 724276488 736512101 153915858 139095456 417871610 708558111 270320545 859806513 922648325 12565841 187407543 895412310 174805586 430669305 95782666 405104565 430686029 115921962 9590939 570411053 120439130 152950390 806179847 701492058 705033546 647424740 526487726 187954584 930423255 239113865 126735322 917702558 113962584 934380950 809806506 880387845 206494881 303308930 165320000 473099977 645476220 462825442 92790299 104226704 892029549 627549274 262792298 432176654 626145702 412000075 78082572 397726747 836486457 773098710 997669006 418783611 810610951 453767975 568881819 200979110 690102081 179644402 823464313 688875507 377666603 752634676 610051747 795303229 613919117 55912047 978294563 349693468 639117076 427874577 398957857 61273613 112322848 436231603 957337195 69111800 223290325 659698935 175610805 761818056 54432302 6610593 529540153 794096102 124190979 536751397 370023751 330004362 123514725 530744725 873233 352908435 737649160 352179644 275737576 397429223 20931765 868269080 318383808 298747409 137850347 655044507 977270983 436450055 695034947 281351639 864373342 220472914 952872491 472868655 869291825 50603184 811938878 849708329 207632757 361412779 653235872 690947990 949280935 844220348 433858449 111389365 336070073 504528508 347124690 13101061 910419493 395220345 38181913 418523611 929583009 509371319 549187142 593521890 888803245 981552681 733568078 35433763 918340764 572989715 541263262 878761391 173745660 628967365 453140442 42361419 728295320 231887565 662137766 693956039 746158003 363628291 334508473 516507052 308017767 757755338 176004989 479778254 758459775 516374389 342847516 279252955 695661323 846128071 900055104 540104260 618870061 256299938 733492005 315387446 990628673 743070866 946176818 475878449 360820871 321416439 218543931 117968674 883874235 829260003 827921567 246665641 669670791 188630197 630066749 551652999 990186168 158393052 556404604 408878892 902375001 268636683 258962557 714270168 67220289 475812322 319566450 204097248 412404022 61517748 76711313 641429959 12473397 104803138 654966797 636110494 584192124 608647065 508591655 469341393 606623111 632311191 187413449 688874150 257993898 225603700 22061385 914530747 40694403 794332539 873161855 166963910 972314684 744430653 931287355 366351292 402648509 476619047 149571699 694769629 485233663 773270723 309598848 456880661 419082471 165470039 954046705 261869672 190123836 997429802 108445208 896894869 902166641 626221934 213623391 222586035 82812377 140259759 318915211 289461162 814168183 203321673 175611713 425728858 399712057 917228693 843888213 585567864 58219756 293192855 214388046 863105697 392434077 190131251 230672453 969934628 399953919 603201330 296546445 275656333 472031275 726999859 815772033 102484125 380035940 684471516 127249992 971718044 264727456 384503713 672311117 130509914 574951718 803041416 578546783 700726108 552509828 884476042 310566022 478933875 791666712 608821960 304098499 701600732 927604665 421148729 523907568 895652063 715662137 999245097 240914862 466607855 479682924 531782900 477231420 939406550 325567323 60140535 969431142 656163738 850892019 800559147 502609889 345943387 532309567 979264461 543799431 84722245 774959997 201976939 93073975 729850711 641919151 893605216 160567390 175323206 573667 527669277 657280920 65742825 950483669 860769912 942424978 988374223 275678517 84740962 306910542 733219486 260707963 700898472 152785015 659179552 638821845 178652988 968819094 429594618 209039115 730661862 530771757 851971123 138152356 905540142 546554318 875898011 648714676 954483218 889116367 145067449 190695242 746239390 881554384 573858340 393802678 198831053 578948643 793817715 288967363 502236336 779959951 895075678 893413653 305664609 349450336 682593415 125507226 914277061 608026598 974275631 29157051 454830411 530582737 649514673 958089451 596011099 514788171 77297113 17351523 331459273 936839338 790311341 560580493 648526006 125087408 497174431 956246509 816092079 549828360 916493705 916092936 881404841 554399940 98892096 862885673 127999669 902272503 237796711 644473092 261333847 181847421 432342773 509425490 459322739 739435816 609248234 703095139 706796673 432898779 325419258 503948367 798237658 939431430 635239368 416489675 721966194 650707826 745948841 949810637 409825891 263706501 346624262 348989580 215286825 334394033 356856795 317147744 470519041 438927301 439205076 285099340 15929434 396626986 521048239 191565867 5574637 32747886 380422625 875947136 339600340 67451872 97098177 637585340 322784940 191914125 586353911 642920825 344497445 555927947 317488426 842321103 164161309 489504078 736531766 867137468 429385030 720927016 352570602 674018595 536629617 421763474 395241279 707242657 885645761 750729014 698637179 310748098 71801021 259587987 144973212 520904769 654972805 552888240 412799002 116283528 126137723 239186144 976126553 634730716 206281256 575869918 97245459 509624992 901218398 170362592 488699615 163182778 942850817 429352386 411869894 861158470 607362184 65985567 515932459 312118456 461282035 135141474 125742047 824833487 688607045 887805907 334373943 699816783 473015747 899518778 282489107 467636835 866613094 913053460 438705250 331689569 836913416 643888764 995199336 239769258 285601786 209181997 995970289 5798109 52280999 276660125 119796342 254248964 278436632 629734676 285338636 195215451 141730671 702253458 795388286 170012997 669256029 819833013 946647088 716407349 461193816 675810059 966727990 253766429 113357661 701005233 613689816 588949753 593724837 312623581 563191670 688098101 534131422 676992315 802340233 923015421 954465685 348776560 316165513 130921571 173619214 120914033 896060668 289103921 562481585 112171129 766636251 496439550 562460023 30968097 767687403 121630131 334836273 709932368 529810970 610200172 211385291 478512891 441555167 937170282 477390497 699566524 703503886 620298811 810928315 515351309 102381537 616072333 596450906 369417411 667514860 839916640 789719056 864633744 161803639 326183134 473702734 664647735 832259761 634577243 339764032 391574068 190893906 769832774 226417733 63083966 71549002 279490309 313621483 506558025 56073379 862214966 613902489 688970372 358873837 637064388 777846537 882497575 521284848 898594728 190299882 31970675 332647748 477879531 639020803 269189411 124731218 298298958 400564128 503344475 658977478 967943979 51582403 203288939 357764728 829779954 764676240 581091553 974091447 385822529 715475747 273451603 495687641 936528886 713658291 441862949 346675237 729343713 563520201 403131742 997546261 180887953 99809269 544925949 741563338 945349016 754151573 223582591 421239675 600080971 462630053 100637275 684187947 825126802 138861630 773970708 266053561 367785470 499342727 151990076 252779171 273632194 663676264 126225017 498984679 163449415 172509178 841283361 841296223 298160793 814024239 112494073 624501227 722777756 785296815 477596539 34288064 824749279 317951297 965197478 74018958 923325931 33894956 977710039 964471474 486460076 176099342 540141516 956195507 597184643 865421984 438795471 364818837 846301034 659609536 742954420 576191480 275202149 865919252 630470835 859344083 539313786 876581165 219292110 993347700 349516409 819997827 100908591 941723363 842769958 366018403 941300566 433089266 471437615 623919312 542481761 626808560 332634347 51553749 758434732 294004754 499268388 432180885 642832666 81287983 231066386 542941911 858280942 788217658 452738948 660707932 549837424 982152699 529238193 182083959 130837090 827853167 27364343 992034300 115514179 816055444 366689066 8680919 161394202 877244359 671183314 981139950 35009969 611773840 936201686 289459694 840371085 220813333 919048799 563382936 88524332 621641144 518980964 118038655 604156743 860028313 639448555 473745465 815180010 658917633 430320674 920128735 545173097 528726269 951526591 892935019 356222168 697536588 183493391 604417529 539516079 499903544 232777369 463140987 910672576 117898407 991718977 813896216 602046287 996860255 411755528 765915538 210333032 10331850 618646674 453791337 818995843 265418202 550281350 252634275 410115582 828827291 510643050 621793581 496392865 407782795 269570015 168419462 412565629 137299296 162663542 989993205 81625117 435897578 407679022 667553673 102416172 304870936 462625335 743051134 395577691 621240640 399119386 255025350 125236455 900525453 884041003 494194179 862794391 733685163 382209866 407749574 835845674 132516385 689531662 957006419 873421261 156542089 596653835 549165246 461559670 908202311 130374 987676727 517628111 964532331 951577115 536896957 934361324 189449008 666936318 491792076 32951172 902678744 712010277 870999319 453545377 975752650 649538756 271490255 923188922 913541919 635657302 319590906 964106838 639640931 357373476 969493741 262345204 845590069 800294660 93888517 16243113 277418632 828065007 660981592 594993660 846879110 116249456 398997129 616069448 21828781 286583894 426726082 371708636 916689052 107946998 858315636 790925337 832373524 70774907 764656831 325579934 435225643 965493237 994363817 313804756 429616560 273325600 459837211 795499089 12944132 863635609 35021123 540645395 356552601 148445305 508327766 398944991 546869529 577119739 669399500 939618273 985736929 288579121 902631611 750683297 773098559 669963560 610283359 375542417 306281914 800328132 247464327 116507774 259006748 103722066 605866150 423287599 920882365 680800215 503590356 28072431 472374234 404585607 409573186 430848940 150051301 474179285 101895187 879028842 772448383 321316758 721898920 232089587 872693442 990847056 384657450 995183257 584544732 755910564 679255248 396830446 131830916 169872604 703304673 637783640 670483440 13109806 200373878 581825928 541337999 65676064 343672276 670218931 983116646 57467318 508675060 505870550 898028247 380214308 136311315 652547320 644050829 478437017 339583225 179817844 86045594 684327889 250138852 46014371 514900573 837569607 309255067 148865539 891059792 796634635 94820211 695559337 106963333 990025686 258169011 65338246 620315531 372088790 248755172 319845117 518307342 779285542 808958680 243935885 943118201 241849394 999954790 807161872 418454886 1074011 656212032 644054293 267039377 276145357 292630759 13319860 286612455 5542208 343097304 301323560 573347002 478967093 570271357 255487184 457745299 199631717 108922161 998379369 348454421 776608633 518154263 450280444 12637834 973614906 483550418 353691849 486573464 670133741 697303081 324256684 176234320 292991668 138014693 990373875 679138502 41370500 589356365 187928369 165668831 937349292 910197291 158317351 260799580 527236837 718189786 202361742 96313695 216116461 498401088 215209502 843627462 721572237 42600 19198919 971922359 775084185 356992305 950837804 71625793 887148133 155356259 712216083 576792267 54245579 366482519 377311753 846383034 900962524 839679746 254887861 656269563 185726836 616210951 681664049 96552884 66583803 153537538 63280732 76579958 345189978 558073789 757902376 810101444 249559624 944928763 397297879 928455085 958437687 32898424 340636110 812672687 401187876 824234178 291847875 957125867 810359313 636702440 768184159 436723395 592706139 213808540 322989553 524881707 803849808 619807333 813739508 150713146 483862055 547153101 747515132 333350873 23751069 434113147 393709929 660046402 134176191 258047874 87822121 913412771 841288837 655902412 895581280 118802330 364363382 700361846 255610238 559484670 912692447 193696773 780019382 391810857 327978662 160379599 864276133 946905611 219999258 361573499 726401350 361175638 395483663 965827962 513640762 476821650 767205431 893591662 563667096 87867041 15521985 622901248 75353920 663029847 820104706 10879549 536064728 265833092 287852945 947704210 783094182 884556834 353422792 890922193 846580639 18622786 140198134 990450138 415374462 889461032 185950463 633173019 235599153 810817959 30661929 392213695 11986631 787440737 623600975 925010680 640307998 3899861 863646573 708314922 636865326 47043480 937799366 442165495 117058870 322976238 318872698 335686741 709046072 818666342 62009864 908190622 819924015 396897949 795585456 831183022 144632672 197919183 41964363 588078758 575983504 477998295 81414396 430779499 125772520 569422250 345919026 251355658 304234809 9917382 788200085 154609726 494770038 101890600 105338383 100247245 687027151 244782030 483136653 231581928 905539524 933633087 809220641 705029690 738969042 575121284 8572578 883297802 130241789 152973236 693858066 819419801 960425141 575023758 473779950 474973886 225490471 737157947 152075252 562030714 54135035 228521281 321595541 774196897 310893316 221022167 514814642 711383553 480988311 640674409 411701818 256432566 687406023 487536853 418615979 259558532 889252644 263643965 146584654 543173910 96950484 442037935 138013665 472171782 440678610 258670641 301288188 143154068 938511204 410437573 720401891 387542371 258115817 389240687 392817456 753717909 92674923 636874262 919098955 575238987 255749986 793897252 667850565 680818326 511722584 746105998 404612664 247719049 617038769 792197692 972659446 333684417 634274501 941003960 561372856 394403752 782885857 611871658 794369606 773448675 948578126 200325505 407921794 487559331 754657363 457156239 538164857 883261244 424636708 865766698 400574586 624634652 619992649 990490430 736195548 25013607 480683818 322034205 465423214 344700315 433345737 699948550 264138477 743301898 128897580 457784014 2528870 834263137 897182866 968306775 8023274 341879706 322921458 400202668 626884155 24299041 538789435 809192128 721036106 400421335 544230409 496682036 115944509 434914279 766182645 781436499 913506624 107771296 648897323 488160697 153995873 577510492 897626326 834577923 428109660 712642744 164381818 586194605 688011515 880208568 709032559 940865326 648166099 682942871 131372781 662300631 367802533 203013605 657155751 399594499 323271721 161288418 103789823 889942637 168056997 428548065 459146769 749197590 839329139 391744073 450416196 776546936 785334782 755910508 730662984 594546387 88814082 214453621 265831905 863405067 281974990 447077873 794793529 735495637 355353394 79674674 370422197 169559435 235663291 51830185 924011356 85359390 953101543 588105041 472344266 199237362 447387035 557967591 819536454 747128204 453292632 18763666 698526769 519608951 10521208 697417073 877084911 484876462 652084225 373766652 876861358 304023139 427350926 929758892 724522486 906911244 588159938 203145844 166618618 876369553 896253866 344646315 697443680 370662659 702382978 690988114 13726106 473840709 630682834 174684808 501262238 476381312 394311734 489851698 983572716 746733419 399554571 531532872 364368325 116549495 42113849 765554663 969274539 880524596 209868685 533436151 133472527 373529541 447744672 118815003 666122800 793546200 821184154 400321668 895959115 936329500 213807224 598072805 576279129 297145789 873791426 500473213 66294359 940835857 532770736 41751497 620602040 11309538 206411196 123894618 475751618 139472144 983973464 109398258 178664943 806428144 219383984 513280947 762445549 356876688 189470008 243210394 785689387 743045189 54686451 663720920 234231464 236524642 411101145 977102710 517659550 825050135 871109057 132736742 472828053 854724952 425013587 966862307 356366637 559885003 464829289 223000142 151666064 150064931 937854337 273245338 138925017 389989486 168474167 951218529 428213397 794189269 490529787 933076164 341863624 983765821 500303470 509236095 453029768 503246055 775602354 495022408 738847214 83129540 548024814 143674689 721875913 582185276 38352516 539335714 218094328 217575904 703492191 563529930 358999960 343839998 433884437 151921344 43430006 577202257 966332394 30293233 541282394 770227196 841754209 266798705 169503397 934694572 254447570 170632343 535178245 673824142 793035377 485240364 38261224 838857004 964972328 648366436 377730969 226602822 978391080 472323944 198412944 821638716 254251147 773674323 730386816 762588667 939498653 772462462 57433264 611624460 726458638 292524142 356883792 605924364 585100807 922540978 621706847 65702452 632672988 902518304 645614807 405030929 871240224 471939770 106344166 283155443 517328965 661868279 441055571 158684162 135937392 351194531 997370466 838153146 893260750 257799825 561809324 725373699 146098303 445461292 843784656 970736013 197813987 358196357 722926367 556705675 252884268 528600000 982342510 541004776 268986919 10659295 98546459 989222945 408903593 496815492 72936482 995053225 568854704 971863572 928487974 415298442 188892144 116097346 963964130 256754061 272425726 374143251 665400515 759570620 801786605 856161900 108972586 20387796 199012524 795136679 426832239 143601497 991816827 377297497 255194395 626410455 274137882 188376393 433441013 652862405 356165287 556463874 597878017 568992201 883545670 229963104 915154684 372549271 844717684 876321508 780278066 883095667 370940639 453583129 568415125 266466632 465256415 675724645 439520532 970879172 325048225 355130645 974404016 96288906 394256946 884989146 273891771 693494577 316285984 9137652 61072633 152117457 246729353 630164021 390241016 87571734 348234878 613837535 625025184 204938116 730674397 515903070 97750206 979362526 547902752 488887292 45579897 521148918 894582221 477021430 787167579 488570664 937740790 323290551 149110922 742130937 861024712 663128578 133872291 653048616 714667354 508664956 297974458 667043666 957292831 199652809 112677274 990060910 797139893 656745406 127930281 211365948 295101566 316140006 892920082 523204410 745071600 231037281 691613134 432122977 192824865 132168606 697406959 387896147 701167937 608999742 70005283 242104322 454236098 116435650 504437852 457466411 924682736 98132883 141877616 108215754 949729613 282233234 577084254 20609472 131128256 127038462 236463045 932247763 41675381 137560132 140470658 42441664 580821164 313595193 548422486 235916901 23252663 630092154 765576980 295909349 39474687 761037206 987934604 59759631 562711293 889009473 458575552 189437323 993649750 536566086 810110500 172814908 272884039 972168699 734757657 154793923 790688874 830495864 667619559 990737519 601416342 958514795 484088636 665517409 68934554 613035809 145306862 188986872 179381720 861254957 456157888 932691144 653257358 220075649 398561155 173922124 485405405 246541937 554733714 504948557 296099629 177678139 116107933 840925965 556462157 645910346 116296862 617844309 827686639 330963439 884886109 890015442 658962158 779795025 17832208 749161080 20315715 413656291 148606176 417318562 542018998 554714273 702466140 582503239 818702507 293857911 209437826 998350024 83156270 286217656 691210993 488488529 386184347 381626618 374653164 258487548 228216529 17021643 368255568 161096940 777325078 231557642 55065232 168999683 241831249 259863441 768625220 463241805 653434466 721141388 219443418 314678525 772983739 554006090 925334538 405006167 4437544 869070885 840243655 516629753 454557720 117874052 258416532 402851233 73211824 928863493 966449679 283618782 258914851 351431652 290297006 464045579 679610616 124793713 792039248 493980136 930763396 234204483 744778925 694713528 314763466 462715917 986913328 414462639 747299718 736567256 77250820 466617969 132416495 781984254 326924959 997864179 120045237 781269519 556430574 355252390 408596671 526508555 979157507 673853233 55698052 467246468 626025514 708916967 189983739 957062854 175502668 365568754 133577488 581066111 163310182 882253237 225081761 279797500 272508692 669437272 118897375 984028394 297395357 585569900 125116587 736030198 462255304 44228900 295413028 20724552 673970350 15764959 366872964 142234687 996886004 986280303 10328475 260186270 478852895 72032074 446778748 197374315 733217601 48027555 914659436 354873489 979821943 778785490 48035004 393604585 725679473 301254341 361731679 404851315 339429564 329923351 634822897 203291349 353410381 73714527 400205303 630730949 97041597 854515557 572805094 781524635 609214710 200456779 892517645 79227017 339635298 128480868 426273760 90787710 723478552 383028080 465891038 617344932 580740286 69159976 865236138 913494153 922540776 208080519 482471051 767208074 104874103 951413797 252319400 558150079 827653816 180034349 453360980 324291319 848685652 925410441 671643508 355493322 135425824 104725943 480072601 895852222 800454496 948775952 190812659 210268939 741486912 681069897 287270259 95028260 225208499 177608403 29922679 128743947 758133579 498543734 486649234 539394268 452300756 270540898 945269134 258552473 901063034 412212661 4888514 968298602 3652139 277247633 488841199 603875136 592511820 820775477 790006342 652005193 921111673 809743602 63309351 232289634 557019035 353165557 461065153 796538674 40121707 633095469 587502343 873352004 67198494 424165401 543118368 259731241 291644331 821148459 672464837 777227777 740782630 459453530 370238671 166953989 938281543 374173775 490595230 932066361 749835478 631447221 384941442 776329619 58736200 140930339 678304146 401278346 698557362 678130670 742653309 470254154 458323942 43482951 581363219 545512983 924680014 52743852 60515216 701316326 476337195 887513212 898827627 859726631 44769566 405643715 236285451 921840345 99554369 91697696 446491816 471686938 254374234 294398620 489786316 100634796 611721145 578885525 317121434 505588825 673001025 816271267 60284219 400425865 387486992 249037858 882793120 660982199 552537626 603888934 324305649 981313342 517303670 499250558 812589950 724793729 632807530 444558208 579663260 194932272 417867692 684354385 838938231 55167693 154990906 463694289 723165152 909039917 994674320 574969200 437836568 33708905 837576378 441255720 363426390 571923754 829079194 883016582 710897169 766195971 707911110 257868928 851805378 82085245 979484259 867755588 654030397 628593761 241175285 586895290 520946828 787049740 328170903 806587646 906218607 929225321 298150971 45588818 876486036 970256981 816037613 457046669 7073124 300260194 911420674 298417210 827427112 184314 273159830 103851676 102173492 479533252 993581859 165202137 500528658 396799343 425670228 839486383 602114692 735558995 637412694 717359404 53829423 581400831 669673798 500161082 120062602 593299105 287532885 775244729 341127483 973461554 992120194 449403229 558800526 700656103 659414207 708501540 178988240 466267593 403441595 790399345 320384481 434695149 215904139 81316299 170563388 783515280 647725087 46829326 431957727 143791939 84867756 357900096 54977367 944242819 260582519 965108738 702024026 746786442 584621751 564647848 331080743 257778682 356402653 317560581 803594034 383545878 809985029 817093607 34430981 104224152 942284951 765737091 888792688 53332994 96119350 907154245 80021719 99052225 957214619 588363257 801328585 432946021 154431938 18711886 856897180 335656052 728291586 610188118 150877729 424872796 915695991 572774228 154930903 968427520 519545266 46477925 817878606 81879736 993884489 942030151 479056177 27856489 634024332 708187776 599303989 157220928 410023122 677061315 738075432 967426806 897554049 291352348 388428608 214513353 260125357 43773047 967478173 631274671 987077861 836730022 699770960 610712983 428891386 69201657 96261166 517792894 124645914 703937611 446958323 188052912 792821092 921671427 250705841 141685806 415599369 781807113 136169019 443758990 378585357 793758528 583572433 992126203 894374972 962459110 640226752 258485809 225468424 43593246 596820566 702833938 686515652 938173010 514485207 992976793 345545508 825438474 884112940 477208210 45304590 872588375 83099052 782140505 283385197 53591546 506418532 835442529 304492320 310551405 571288645 963784620 225141269 600809586 762158445 542641273 172486160 790150221 536316528 776132061 927556403 84882667 634217950 980093706 615586699 670143249 680949239 65205785 762111441 990250522 233657533 430866857 339563754 686096938 971655228 561589725 773253384 962993444 468265116 860872168 981127573 470392420 214216954 387180526 826935693 127901825 337817066 647001258 991823789 877600811 441867505 131775730 223346843 154862073 355543695 73100963 408561962 842394075 825992203 11308647 522408768 132974983 880664987 209945520 460227019 898533000 466846219 235683631 223061150 187571815 673160613 261405128 5941525 349224895 63075462 256302308 450899241 476081060 846246730 961620605 404507451 924969290 454305564 247538500 526414560 120766318 446348539 920952007 341463922 272746970 517852650 564219109 596916422 410483495 991277770 996209518 67142988 885605069 505055623 328934534 921007641 579248571 83652693 279969689 329081094 615679729 870544602 556313358 197470641 413672387 752896847 492103708 205832898 356706978 361383469 518053775 679239953 785748206 698059724 352387039 274670863 118293213 114080791 98526293 580601227 593541941 37891737 890064708 702283279 248560112 646338835 568983677 811302293 620379466 32218521 970448591 440198418 345608182 551353596 775879814 186233140 855141196 740495044 178386169 778691445 605033238 44691169 29643887 715695632 15451446 396253487 676853210 300111630 836334928 566160734 213979592 834709087 6529398 447477544 260350360 975257614 312220217 659233770 529832812 508186902 870947952 777905854 532581360 683031128 562357587 785821861 680788535 564434847 228100933 837863194 114161805 654684243 768519061 320994594 473446057 363318138 429643008 563527008 341414384 831145192 853981766 892884448 728367647 865519472 682864529 395808369 415314372 631737633 339045982 262434752 415928001 543135111 469725622 653091381 821430484 584022363 45780211 422485769 822871508 150828281 467137115 810916820 951216919 248577554 353919177 401088191 715707609 830786387 628948640 800831527 495850835 392620794 721330839 102349566 398622031 133844964 543043312 49836685 399188836 616893417 995678466 958930561 144929827 684414029 143386297 811643097 614424829 598206464 657219004 341453832 102863285 79055087 27268429 347485344 882004710 685708284 702720219 284890015 921020510 813159132 232783093 592952008 70533795 728232098 849637967 202621819 293786807 735456664 293153436 954779264 18403483 126208916 753799073 81166513 963838447 830592309 646177754 371490904 339090332 838567889 69157784 103220761 794074311 943421126 580839956 789369801 150581822 541266530 469887836 866987713 13558901 428536206 759184624 665176674 151945160 515782744 644348077 286227253 482720191 144005300 638948150 96163661 348368165 721489716 624846280 701524496 512387318 574279512 83186366 167724379 925746960 659012722 920749657 465645299 139480668 225647161 107663992 976971653 91848117 716084137 39330173 36578835 212423870 535583351 777293820 990202411 464721543 91000683 840662817 387627740 312339050 765321960 448537016 4538201 603074094 402245109 817928415 233799796 488607803 680490939 728823635 551887286 252141654 287834436 767613018 597144001 870199798 662608829 419041604 894418722 442916850 838820496 357869185 588780695 787450788 414775371 467262467 579707140 404635040 686155039 884357595 244045261 322474133 869675542 112223150 413321961 411869284 78665014 980255061 523650967 418695737 723819383 544298051 159290303 311093497 559318697 666138282 765856105 26546442 979971736 144912128 62594792 268412844 28703882 222804699 714194042 96108009 362122326 716932723 348169850 764092927 290060959 79430648 928720129 543589034 351607739 26925081 467444498 760942581 243756720 145766932 338638621 605631440 983216092 50574951 331591080 658856286 780520753 856538284 306078332 610075484 439572041 118495095 16005113 628507602 632950797 525948956 258342556 158944397 816762884 974823550 442521742 473866422 992832866 108077166 326727602 523429336 286746556 367085605 490196646 452993233 313106808 473344412 586516960 759042277 87993207 174934322 37783146 783808913 136506680 170415279 39723088 602627197 179292136 628940098 613750025 995042743 181426220 366057348 688259680 852941684 160270516 498269935 476797182 476082244 119445233 847486277 719349732 902744119 419971440 828499625 253372705 275528418 305865098 355184863 231023082 348485244 243691060 750821809 259697527 603377799 438726488 815930238 822080098 90455506 659697265 71891570 532982364 850147866 250136829 837884311 390053632 178325034 619869845 365765980 151461208 717388392 896325265 903433895 16757432 871029148 256197177 400894010 65624092 118219569 729110395 415333295 655952975 693935148 713218297 752634604 649388634 286632702 729440186 238820070 223028787 981784671 31906224 775167309 759260070 398433119 574410940 362516701 913784023 254376430 586735125 540122186 738826045 690918634 474915568 839553300 485313427 867239048 308662980 109789683 78278370 108870814 652147214 784183447 535931622 329072404 394681104 530574156 915033733 278433246 197540989 889772462 700200741 280734066 367897336 726313902 594190005 44855090 591262395 767353551 801387626 524227913 649225362 977864125 69583451 694169928 551093932 881973095 801644038 928009046 171112196 747841648 835677868 160028028 937960428 222535751 432409735 599841047 857864210 688337950 821505416 440209526 698878258 463317173 802979214 886363856 130068555 590922873 397903613 688642561 495783076 528786293 37193674 889889115 320958865 3786644 517930059 288657328 128406602 881464128 167730710 66639618 875422203 280378121 490778678 629325980 24688188 726142984 846881744 46523909 86042156 188583439 478861080 81239649 442693819 231552441 516634269 224553053 518856639 241084669 190541887 642533801 657292823 547671569 633536623 683152713 667222621 974939640 326588465 409658523 477987884 44050012 809728230 220966255 477851073 967798202 842096297 733483200 66592783 695368210 251737756 51392254 795163557 979429981 22838747 674235579 608032231 253189348 875768157 22104018 143865617 729051297 223030013 60633383 8905217 483906803 102415779 187517134 231488199 67676765 306890333 162045897 539079454 853364372 436103531 560171698 53461304 564832406 438129829 702559547 246168821 86416567 541537587 485479160 826144347 989602992 830784470 653501586 90269591 788222798 893773729 416536024 68580117 108994539 916091441 359486964 930154511 503462972 798377456 242079836 442240507 801259059 238951633 327030306 760113869 873738376 427823007 31527413 66573456 739657893 499495282 662198355 982583894 91689010 391453531 549278648 256169525 4618966 124499846 779697509 218908444 425859479 818372179 5911996 637984919 284036656 435738098 58072579 207104739 493105573 969487976 792575300 397158087 984002591 102526994 964836208 820004513 698697833 757567838 365449828 513676865 580019804 644717670 277962265 790123406 887782439 727931493 939695190 84187986 986193836 156885390 511388833 700338256 78038832 822571183 359407270 168657909 757514419 968865034 911007138 605236004 657075458 883251329 684984809 570611730 905589770 631987243 780111984 435517431 624437952 291405086 107543323 263553479 874248568 359701124 439366299 543965341 26422157 756849107 98520346 830995641 924533266 485788027 993849501 80034807 73013135 891421495 248285941 808684107 821985981 97302544 870557083 975646457 883754683 876145286 509458137 625574510 32114137 728282985 37817572 33417485 720329729 545336460 457776209 582438600 108933139 305460633 830757676 284887629 843095080 147703426 698444870 25840799 723179916 644521566 270968294 411668537 469238309 383209592 51187601 996683737 418386011 270609899 533912773 934354009 486501304 302971659 707935882 640145664 882330566 984517508 494286427 745606659 757761197 551693084 194665233 516252602 154734129 573039274 526740200 812061918 486659064 106588406 516472629 483198052 583977380 808241869 317786437 157173534 264688305 238637221 932156460 272031897 947484082 425897295 751130964 59299528 228361347 221180879 732705146 316439461 475314145 810586281 50884703 970527686 372353900 288239828 758702599 83949749 239561470 246081227 633881178 102302679 491611938 554171961 605351763 933201485 469718783 224879969 799153793 46832023 240842888 587989928 773304219 74744764 61420045 897905614 417107596 836729733 699778932 184666441 787894703 703973348 490009132 659238230 841973414 166808432 654634943 98968657 203828470 533157742 411238170 868997259 830534717 286855845 925559240 225069456 870487793 404758968 73058895 781826687 727186331 809980618 30989087 42696972 468757006 633145762 726923626 338805100 381686166 759767235 501681125 150760675 208040383 46084404 473728866 233326029 168897457 4392653 848934604 834893102 471532286 554070564 913203239 127635233 265402386 356368766 12195390 46223935 907189660 331130537 911406614 16967298 435075987 316677456 103087782 476358777 599028093 709589387 248827315 569706135 928865542 643990904 126170239 391400471 593864232 542145103 801826132 256037317 348042939 436293815 385105606 185816763 783331940 690796376 746668009 33273046 668099545 364485481 411670305 984310870 96891003 677623392 875909910 975875569 849334975 354002934 535696753 645903166 603160867 691982377 308711128 423039414 372083092 895005005 447891899 36511118 415818006 841633717 692952438 738125509 562234896 408590351 816795761 859423043 353669402 390970397 57732795 842694013 617662996 172199475 110821951 268827686 884393080 91263327 221493668 466181192 557491737 939169277 336886598 555420455 299298519 542359463 819994991 746169057 14365373 626837087 431379441 602459657 470487670 122380704 834364010 840856815 27817416 481230808 914943356 716849907 300808213 386891293 758136145 710127465 656278674 909805783 329470566 976334383 542651038 778599054 162276126 977909485 69449148 370887429 362803871 303382226 335303837 355387682 313172656 656374811 201339268 956392483 533949375 801670930 661746663 443600359 996614313 12175038 817403 281627731 24878632 228437737 692744673 142173784 82286675 406935702 536416287 527544335 307053731 121066093 153935779 567828049 101840388 98882900 483704432 366461966 663060801 632418481 761347085 309560546 596903141 885711736 81785692 669335216 708899448 335549541 387586125 369090426 488700140 961426866 234404072 622028826 837295743 202390777 293592917 257370808 750441662 351564345 126740929 776093548 423102314 511262551 735019745 193624028 817183492 330105543 771422158 163847936 513525984 99525457 870007821 648777400 209032973 174727174 474797966 387390748 62072731 875098899 129764912 223587521 23730908 137409741 104602654 644808688 942173077 341242570 295034470 513999634 987351655 529062618 749554276 908698539 865357889 931128835 139464809 115151838 926883146 93971369 41628019 173984972 669221411 667258969 269860553 445047003 174837935 238046610 91619997 434051491 783983096 306177278 677678038 800995779 53325045 450021210 774152540 354127771 465430810 292623055 710663338 68827074 88992517 189999702 396669881 801389406 810559889 58745360 762465808 505700407 991193534 544204402 16015427 421469264 402171282 721510475 881920576 130855050 788808724 366045858 617238211 582453796 564761051 261530860 165880515 92570532 72664551 143102924 480703754 928458398 327287118 146497059 909857444 30315525 249753203 536438852 856570273 530482317 328789798 874908459 240254573 771533239 550630713 618079001 432869777 263571259 610298559 790777743 465211408 431204173 616625784 481597520 595822259 51430836 474009098 722468814 859693670 784205381 858286348 154633850 354845563 579775187 809753366 11409310 423435829 894982836 965959388 368124778 26373237 342816462 833389333 519646925 780997331 156869078 638154145 283632656 159759424 992629963 941843521 305630067 329317659 478590432 68939241 896503774 816358097 406663466 753094985 858895914 286437041 259875251 973693904 870456006 350787721 336409651 535612920 547402018 78155479 384511853 346239601 415758484 798325956 845771904 473987855 988997527 541935975 769639180 255204177 471497814 901282998 381203038 241283139 342467240 170141058 835305300 492149846 709508688 506410564 541363699 436389463 28817954 756542755 736101148 52025958 628818586 168820507 763056629 391240909 427629455 132883302 393108193 635923764 420096988 539712506 158967360 642023648 730930943 307860752 258243448 439760389 613933590 250591247 201493275 667761777 948129612 981650516 88263691 335350759 328404864 649153557 425640397 667062854 373713716 281654974 894086969 468523322 873243455 781219093 664165657 694858979 477815516 319900144 40994363 778873178 862171090 418523759 905410585 20446508 563760775 321220883 56647442 449237524 595741247 40682780 948491099 24878548 550487761 664276182 383945161 821605368 16421342 555038944 729061906 617038780 735534902 690236737 396804279 924322010 63070835 999010258 869369294 477353290 315240612 938834562 842957301 899832556 509720502 970159726 583491030 755749575 242760142 639338947 867797980 311531392 863495245 338892642 380475839 179197993 611716727 113634542 873244383 153951874 510612843 523924771 398599702 113205365 934647708 123294164 152054613 836966937 130927593 276530040 406837357 32585261 140470079 601908090 528609206 471376635 152215984 240747730 87802333 30923322 634248547 892438273 34063965 362506517 631857479 371794838 662033004 477920597 973312929 275785310 652606099 57393903 553638012 955857275 838045124 891837483 198051352 696299540 540303611 858545729 424430987 772676096 54745119 170137323 555370682 856548040 297763407 570204626 221714949 347053098 774209443 301856587 368779222 996257098 134758816 978493837 869997228 939772694 154045357 792594262 361838782 879293043 495204930 535979324 430926681 78472668 622143867 527610605 172097472 421951977 770183589 711427852 268039668 395608467 914056368 483075869 835850864 872836635 780222220 761117969 130717112 672008243 184073061 789762715 60696219 275155189 863891573 631403535 800338457 357733974 702578579 29150040 469866923 795022850 675304894 396572430 604685755 421006201 742621195 407790004 870110389 650659732 825159964 727895873 321696827 123753255 554783950 444810 208060520 996446824 645435928 202756528 844317579 71963310 71921600 534010048 718010374 179949563 9253600 560098869 739896039 216788403 988422648 490867540 361721736 502144269 165968603 343876414 654707178 295043792 903814451 851459114 492132518 613914861 142422114 95336787 872460467 109410577 774923716 667826513 917702388 410839625 245300046 659574798 88461606 749933969 410335148 380550925 986351897 512340362 197034628 654323095 67043944 740288892 638690717 602385983 448027162 472086974 90890605 613013254 676360600 486922810 667938855 924342734 748506581 651986091 203892191 742567899 186678498 742878692 680312005 859432405 842279921 582067413 165186634 544042002 2740992 181810060 744138227 868509280 202360551 655796943 405614234 861855603 909066682 914997304 272571695 935739493 732387294 297385145 828688599 571931289 519761449 970597660 63616532 997519790 164425036 412471996 682708837 922216117 143601615 332641964 234346371 474475288 710408927 128530873 120889157 521357891 982902814 540281414 224863290 980558932 832489782 300842938 700292225 783462446 616664419 244544445 499117083 503582436 257168759 403684796 225062380 255763251 592917523 107213442 962474491 586985928 882908119 544977651 63441787 5917438 936389060 958093685 301235388 251539984 580868152 847637431 711387569 731277475 232367877 348083632 539415434 811554384 517215322 375263161 205639561 964932612 19847941 694760591 429716529 925807198 125538748 908855595 424848819 864034352 174553473 15479664 352937117 974491981 523154779 391172352 196840022 237288737 947301197 298227209 165809890 196808674 573708158 510520041 744792976 161017432 226605069 525673914 109633706 987236791 268063901 888663025 278105772 722211413 371436612 234024069 317053320 113001694 866937646 512482087 21981351 592972691 21406417 919474468 279213866 395987683 867733802 845345269 307732930 135670830 694140793 776561442 727722485 40313239 457335364 945870833 238107549 983688790 40641250 101050682 175120184 969432841 716988439 593490720 550750954 839304325 443086346 504330706 144274264 394667712 499281235 353662248 518573352 666911050 132622769 735447779 65657893 779201288 219256730 65818943 486541352 673626310 357987462 160058886 437749911 284044821 941490790 517495081 228174706 24978451 144856815 865477324 651838437 576670617 814065174 823941557 508140627 690948321 985820889 843093447 253263124 556539802 333338252 311787088 310511718 7935608 747373228 426896230 610416396 175794460 293226842 898343639 410657889 629829279 587558202 532119137 190216729 197680245 973786394 66939594 24260493 704634018 197083649 675769711 312939217 924633766 536146782 721086155 193158200 738498191 666526064 127433241 913435344 416087678 475361086 307853581 644508263 851353730 936581084 991944532 910093584 347060033 215798715 767403884 946027854 214155731 213205536 249898423 423049834 573895827 575686462 260865310 191789786 331466055 393724313 701120302 164649529 753223080 259221245 136248087 482575456 549850972 892492174 601505447 385949180 123992939 694593389 145750925 396395978 468006978 669448050 376297858 383465172 927295380 356917976 847227825 295845300 436656635 223460750 160068857 518214284 300478420 192692922 926274064 936971207 546193826 610330769 119495740 36723269 619323230 710314784 729153672 194547144 79751936 875070619 868634899 526972612 933939175 418129409 764252959 802890725 368115881 457232970 136244726 892719600 625120539 114553559 975750275 920576044 434063885 936948155 115439191 439724862 14972637 487926564 201956186 452828515 705958940 106371224 860068430 445024370 129517624 56383412 859752156 567796564 737715290 435475514 498641840 205884940 518221671 422496521 55383656 894881254 224465164 230040869 522637664 108117199 888424490 226734583 495035170 421368558 102198451 957904443 263480600 540291515 29869770 709909888 752752200 104857031 780638885 401202645 67496955 401328184 380652600 364587059 6409257 810403023 753929198 781681763 320883214 916529073 310975080 622071570 750963642 414215279 363620945 221811272 608074039 555957832 653360306 768241548 400858113 416483832 446453226 17248614 526788518 609130547 904429605 955975832 440745603 17857702 190268187 387240904 490576409 297470461 496456444 556386568 285444299 327474334 713440696 292784681 130819218 782523707 545450157 215574104 135139942 179536671 460038580 414287219 895115529 100182179 697456751 828707448 659178284 663668018 205245567 683524364 280269234 350703546 324098237 609436808 698483162 344508724 746572137 100491945 804799554 646070067 289757399 946130665 195646915 575492070 69115669 383806101 284148153 311624756 227663351 529080864 415600308 466999748 707863038 722122029 891455603 349408590 425042726 176957906 277200292 902519526 128764223 66446681 51616879 757311437 527280608 104995369 90014440 461387998 606693781 583264905 532219176 980397582 569134040 466120613 298697575 622854176 735613875 109774189 945296560 397728669 19059591 882326052 299750805 801957607 412304619 133680947 202126096 744438394 332060662 22882395 757954121 973170228 474559966 858714390 862230110 658464145 759395803 944197231 600459885 209026223 940775863 971848275 839103146 800199505 985411131 335769060 530991352 480767518 910670115 906464320 590028083 616077461 939965822 248914650 269039138 630137040 479165566 687661829 918221662 486987506 167357955 792867646 199963730 247129225 929490155 94305935 517713832 718006264 646062400 625477832 482816422 414921137 951986523 969027632 37946185 106073020 496472319 23628419 127636595 905221982 673637843 338393405 5820322 701894087 715375794 683353240 325392830 433074183 256023680 975421000 445606469 776598703 527141506 448727540 536314581 150214995 65941575 16114980 64811669 7917795 930015672 321557033 504617724 225847525 652428455 929530763 964070046 493500758 871304692 374575650 163226747 606068939 937427173 982978089 666310285 212345766 683825500 136118445 472761950 205969110 56206317 62588468 26039179 431048920 632828360 752664679 9700183 420236302 625167197 409291167 907165082 496443799 945194908 696992893 38197031 390813152 308541406 280389139 107032180 610875352 702623032 431531746 55123086 614762055 129781954 772905477 893766937 404934305 7529600 125759189 963884158 287762128 264958147 279506647 235710589 41299100 140157282 127674886 402239759 730650012 309596666 44875374 592280909 174349853 410670738 64727191 309923837 523005524 520987278 508238514 778626173 183756565 949917375 416627357 673028781 482202399 309394312 83564017 93467797 317063454 417452789 933079781 331399714 764121276 981848493 918807386 210365528 70669296 595916255 114378412 22228258 862190652 326977806 496757923 887857536 988869187 926536156 775231094 428299412 528092821 792264136 933263442 962848885 867241157 409693816 397047755 857362922 951072939 315177139 960781954 543259348 382880353 438928975 855781550 570629167 842802771 196332642 115739670 334142627 53633459 354657180 142608185 373109692 127260304 910072623 415125131 181281012 417268341 273482166 281450103 567466792 136065351 766310956 144862604 830945707 497717384 437786459 151136394 445608844 475759901 504805960 304308679 723024993 139198048 115205403 157569199 604358285 485536496 665512681 145446087 921297854 524217030 549854397 849687962 288038772 311711822 295362707 435717229 741932695 130419642 32716944 499265476 692092160 619863577 76990589 436276991 599294625 417189184 527938861 443951962 97001355 123779174 326106926 669927879 238945115 586132163 819009895 983738650 490746086 3158538 291856689 342136675 581900227 146428149 903206755 938801048 728721181 180472075 174025290 351207798 724713689 635911382 807692539 775640342 141011027 364689393 21214774 126744344 984905086 994255340 234634983 169299867 37338652 664596764 574346523 766236615 727644052 256284573 96283420 845489153 924310756 464629097 938114213 60105500 418566422 956322934 159683688 660791984 574746877 706131314 543828245 835288117 867832935 880165628 667671075 341909687 173284355 883707450 966028536 214497209 854222532 668296249 241725810 222913505 510953194 819614755 312110925 450905822 637300242 716573655 789339745 650671510 597501850 234524116 880885250 574731269 28013832 89114067 19082548 88931544 651706350 563941949 704333042 45072634 540943364 465567444 529252057 668050658 588862849 391619252 384244012 14219766 468354052 32440360 882511164 425132204 941675596 217101590 977074287 509038127 387866626 386681784 796692584 721558143 777389053 353206274 57435057 136424828 842043930 765086729 655476873 850338632 717165720 863173396 286532457 815167985 859666185 192710777 686632320 620510859 823338913 86013427 725469037 961703330 61074712 619172350 605931550 15671908 688403143 767801917 388726743 467002444 25890425 465318544 584482970 445358619 959413137 458317607 813121619 760539229 631167429 773311480 582679421 127427918 360170338 596584486 973893531 918764932 113925046 847965858 675130904 765940182 772733344 835004139 875174118 417922097 397762650 966019686 978625043 493520463 565300960 90479714 78955198 6205815 101520805 47212615 211742718 143153237 416929139 760510613 396498427 362588080 110594444 542563241 217987483 745998103 499584611 795102708 758145007 532687563 735690514 184677959 653540666 463882888 801980936 974714927 683680106 261626451 162316670 912825040 625132198 19500168 951171014 532412234 79281410 402814963 731754250 806933555 254669536 512080808 842322108 712047711 594343662 798348544 822290534 691145647 79073554 183193364 979242590 844070463 298134502 792226485 725392293 63528885 590130267 824115834 467635497 215931290 85188015 613722559 635757048 878352735 229161934 476481812 737335126 573601402 15383204 615509100 830028959 703099033 120334557 700091287 637972961 124791408 274414816 380078110 122071795 953861528 334752007 578946436 717610133 15024726 850469443 611969753 713892108 829752103 183053311 500560894 183321326 616738353 185466961 206695946 23929469 826124950 96094089 707474691 505545183 221135385 795526202 368980033 59770708 403845774 779974470 728958554 708593071 871308727 7303157 241441962 146096680 885384110 352875767 216394936 893046623 574783137 660246206 843320727 669145389 343173590 843938512 604272493 381359681 888575169 321131802 658456861 950463044 594078835 665874020 61476612 871482879 840315056 360399876 222814824 366630814 647741779 168429323 495689967 934812363 483800186 208567203 597207517 499421546 662782777 345780868 612126933 171541549 217678389 678852755 204781641 624520102 241437884 819568537 288310357 798883300 908006842 526398528 253310176 135387782 784781678 561539050 6867422 207509643 624326074 208844664 305076172 86114900 821160305 469436913 494231652 79358852 50530273 439872742 193686221 466599157 199187203 161401402 339414730 808474798 33620417 183974305 414156299 611045510 764079765 390592061 978032358 660340692 463431719 94117272 461064899 897815553 558696018 755118803 431149473 225918975 785227655 221340050 477423824 450342409 790039568 903328316 938303049 251957690 95026543 540461850 473372238 437434134 372649847 637786862 384909502 879866133 130379217 592893753 529779546 577206690 575576719 908201647 3050164 702330306 811610465 654712618 348756505 229429801 585535323 56937204 450113869 865225957 922089920 723876207 293217411 589578647 780286366 999342016 20920469 454867996 344728123 559878786 137146776 789150677 563951877 428747639 319301731 115193666 407036236 42239360 424339004 857159274 486443472 385592009 70233065 518892114 311875180 775103677 792323319 515182114 940588617 757236037 593629403 502128202 729321955 59132829 404863001 112596097 679637128 505641753 376978542 545126681 747636357 992831165 897663231 845283235 398417712 603206664 735430439 838886210 207199116 443105161 145325594 836983413 953468368 628589585 780268814 477394721 756062621 510224289 807616952 536137843 330537753 328445275 116079550 143746374 155221261 553968760 278503490 209627437 716810684 445714437 945013728 315353670 397675648 467631987 808847808 871448008 813739660 759421960 684562536 87379956 438312991 322764854 393286878 794879547 558704720 589652270 548727288 217678667 256923329 638778122 527742305 648705132 391956658 839657914 449312856 404237843 256659970 942329187 197977412 237186901 812848236 799320915 10866115 56668215 520171193 589416232 921324341 804061939 823258978 324088058 569766216 884752023 849290191 816720363 832867867 531043900 111618175 210394188 73169113 27206846 886114492 365885328 108016850 700535875 980650373 439827083 12147288 173190271 820676531 649945993 481080287 295257202 895620239 685542460 487763175 953982958 222368825 836657762 521588493 909091310 68578162 628937436 445555182 383433753 256557715 512257594 858505866 668632767 649402284 101404380 324366752 633179297 51848234 215642262 177354088 586051702 675181106 514084792 662219635 915001852 516650029 107936320 988608935 229836254 892420083 203319453 487884616 284213543 314099503 779653792 605403730 614795548 417692717 960400733 311906972 308810262 760727105 998881144 710141560 733329373 464275795 804820326 255221302 83560368 48245098 552430158 377163766 265021365 377872778 322097109 55894991 847597773 806500385 181005143 988987749 141998915 107055593 732127048 785912012 184446267 26862180 351663416 382249750 171098640 148841518 937617578 150136128 208912241 342945631 755728702 996091860 232957326 600935106 174336981 883410923 194416977 537232771 76027124 836203856 765496119 437782945 290167300 118891539 599073382 825765624 38475249 990463645 612812422 778069776 118527376 629817713 544592222 670494402 287506409 317822358 436248243 311037207 275617672 523856733 767195386 939245276 353329869 563408886 211150850 323321276 221851221 666427615 363688019 517512535 450917238 570734179 873423361 104798819 9970089 45859427 90923204 430839942 564041803 708522873 192678577 878106952 892102342 206099314 764269549 216550509 67929449 746966662 417260979 972713294 516923658 987321435 479853585 132532800 685955298 697221560 1990280 204467219 952089633 885687766 108411253 862734756 309837642 458211036 200257835 551807368 65929152 881985311 2297809 935800740 25726707 437862608 346755179 197991886 627199496 605696925 556374979 534952729 851389779 706949896 64581247 405043285 553235044 495090054 258244411 998057158 431716912 585174562 472692560 290462845 364548218 687601914 852562276 915124279 768687615 934288548 373759782 824599013 412703083 906433394 314685378 560125771 108818559 445481097 332964825 908041444 350996595 880534926 274461424 706934220 739624812 508989851 46675638 907285471 820327325 879911586 356788505 249690665 380659326 182272913 437397980 497589995 98799481 947136149 248099346 288744899 574103440 802710936 126836691 594593047 979280087 343539753 26520835 124033392 116776998 719137322 732355892 697478877 873024908 150313367 242830457 439644545 253884129 468891356 974787544 575501874 511428066 443247851 509144994 102218408 302183317 138393626 460545874 235579904 394702 859078135 362732235 577432894 980251869 281370315 887527570 781832328 438632883 407934287 131170402 919701638 945701153 648995615 460190487 440206116 508273382 718826796 200569983 206365315 498156188 186367284 179914638 605739369 15547818 431018280 886949684 197301399 973474980 982412884 172613430 571915994 839041405 440251889 986213466 240568413 438079381 924082700 963846615 367679176 202715834 151667889 999496115 326597002 330994249 619973088 212540137 345324007 810208897 360646155 624867230 550035534 852600317 442880608 463641099 299018149 380592162 16652262 90609942 43449957 474685028 734984156 339881915 412139572 816970256 30167974 500704733 301383792 11938565 298389368 414828342 191283725 652599685 358179558 892865961 776112822 245392419 810834862 829001473 266149163 609819926 943788375 900829364 512476644 564331786 861413321 276655610 7576986 715937573 518558508 348159392 823261916 967050449 862095673 808281162 594014325 473232502 423019186 587275014 925480561 250875760 853381374 892808666 438737348 199197717 347543545 753735952 460903314 764904402 919510790 47978020 276898422 72271358 351708109 696904770 865437229 282481883 6472626 314982827 716130256 532550894 51174990 557820659 92700864 96322983 852560520 894873713 629510581 562697288 370933006 734826660 475896708 297823362 232352373 478703197 725135999 875978659 848556385 569312191 259945003 972851525 508439305 962345263 367950439 99911877 515777119 530792092 610844156 936987667 58518044 577671218 994463804 901006535 857023083 7484765 960601794 230349840 122207270 209391155 561271729 500093354 119355328 171949943 585408956 661688468 923013231 704698294 364606604 641061604 232802372 57648933 792017538 247809391 577514529 532443239 136582057 615721051 83499764 843322378 191193362 525747525 586370517 395054858 648143581 610185047 670535626 996673875 129377103 449387029 844073010 807706750 582938094 884512154 656322038 864197282 502856249 795049875 36825402 391510052 155813060 898560693 577147994 323556196 118593562 294468482 748090124 560892953 93898178 135094018 877541415 649263486 681088067 419924860 99022424 556152899 257282934 235496370 491666240 742306367 687446437 332682324 738757571 273057640 161912221 28880943 172969111 944030953 117790738 478696508 657584571 175258650 967677674 698620769 464181930 188194668 678762587 175868803 326918241 845398537 605868362 765304808 93437307 776431707 195152257 663609692 287479276 183350654 684640153 293016830 953553436 463405433 524055690 344282 529983772 518961980 848197168 141857378 245866015 679780167 70563322 95185583 988995682 573799260 579100535 864064566 798870158 198972295 155701380 462187312 696173119 908023746 961153690 810474726 674823221 473322703 957189730 314101936 533119776 268096479 204332387 937881734 449112786 369133791 282386785 466650153 545235826 244744073 752882802 709988872 874622108 751681721 6600611 180200842 250158654 533069975 105265345 194799832 471607242 957578566 459284327 743283852 160541561 289907021 619000195 129067433 289687955 561975152 635457840 711067371 173597674 382395662 172201318 177276494 896153088 226816936 909712217 823632295 727657160 186124134 899349914 777359365 304090493 832963337 914474024 244368017 588727897 673037435 791887251 67149807 483044784 665601796 467035220 301954037 162336203 920506859 659281877 951510863 250153852 707751066 896240156 268815945 852262007 771943291 137371276 193941276 449580381 262588351 905570657 690274225 624867028 342997658 805134005 280349650 147264649 73456951 219326517 357803327 302743951 163064913 914796793 44474314 19184356 101304205 210068455 5339596 908997652 580227373 830332006 929968512 285480425 982039969 948082391 32617479 475900688 960529257 836115712 858316167 435106362 57898128 8200558 776057510 401518828 393723577 528918116 88784663 932843530 55354720 352832977 439761731 539250056 664758662 863895145 590483653 4033615 348446937 584897794 890987088 485566048 600472968 478411529 286533950 238378183 346374668 57761762 745963066 529045102 9346487 393748323 792911976 526840883 465058321 862317765 392887470 167423354 668189030 209593731 598797351 944614840 109974370 929955949 30244557 372798761 714369660 976557811 399694508 985603017 267345910 943222681 95315689 321144255 975195650 908898090 64558761 772250265 807934673 183427570 734209338 984768321 592963739 727916153 225805305 338849149 973512173 581161659 184831274 931599757 417735402 552403944 423882343 405299903 12730574 149282506 920254449 787420028 925107733 166470999 966254249 597911465 250191375 571590430 291914572 142770286 813702767 77330492 713681658 479125597 112581224 408325530 961694821 834300103 569635932 245715444 793591338 932739029 645766693 655130684 527070922 390983932 28734990 161706387 155039177 947493489 459639459 577610734 321859665 133255621 938215530 690494700 825739234 4112479 52658274 927385960 122347492 567244016 374962871 710980279 499128931 184787607 794498003 85963699 641265051 865163679 958228702 837210847 254679579 563587043 257863173 521068763 863054496 508867055 610790238 844134340 662056581 566554524 548349151 680095269 847786031 740973843 581316449 335689734 117486010 129930563 538937565 279731371 504321738 481983367 928296078 701701582 721140785 268403222 330400018 546863817 659064765 476080915 801943781 163029084 641539799 502627671 976591102 803261617 244673810 59448133 457474419 78203422 234770566 112386691 146089241 939839644 762032867 546135838 187299784 291371595 51295446 983990724 639020981 553787874 261164787 400002771 242295883 602268219 289197014 610734933 142624587 106580657 629673061 29432275 955290417 258264216 260058316 557209687 520310013 4121544 550277792 169234166 730264336 932723281 394028228 521183126 145674966 463839486 52068084 652055277 796404975 639519387 130650412 170958449 332482981 706288664 987666088 627489646 777857431 550943445 410852791 889328744 169138621 98679105 872304684 490094566 765891753 376085902 867755889 814864635 117513399 191992408 887291711 780741899 119647003 651839790 783606314 145221160 420959322 276384433 297588801 355700939 951309686 473293521 225436948 988474110 934349931 959222713 773469965 15457991 742248047 947553190 734239851 889688697 707236952 499697875 177159539 543469818 341386262 535695212 188001109 720387842 784987333 382351800 350513777 916967773 918026746 753807443 689802938 756337693 851733882 919132857 706118889 706290523 725684336 460007139 390831273 831502188 349613623 914648870 488457537 215020340 189324364 611774532 860302635 925204767 20632746 980045106 781700464 890426679 357385242 198136042 123511559 576697008 321568329 205124250 927594799 506918751 698900155 191833562 181679867 903298791 143394701 484222300 288687848 878178017 470215670 746096901 15065445 246297174 95832745 509744173 457283616 610438804 597684562 212350575 560019233 20514051 399183062 292672356 15546196 383197658 310870805 765945877 683285371 232177505 738478856 974092456 350228999 642532626 797007049 512100789 713148146 762681541 109042798 19719674 902936113 966548987 99473432 460273607 556464709 400647340 874862124 906803561 491510196 543902155 926156581 26423215 765502258 986841506 16508387 396204971 714385339 931865565 582737441 869366512 751668436 972469595 553204255 475020629 489472701 908487831 232271072 111452143 142498167 374743508 417260099 887001565 519496607 440214288 248787167 510264294 981378904 350502643 364361304 490138059 879451838 694760356 549982008 903735836 709885657 663681050 238797961 927489632 467054877 309659045 491657659 166368007 251778768 76790097 361985404 188511038 388174268 61805279 201606412 34595870 256157951 479003815 478246574 993630837 221622463 625414177 255818148 295889592 617771123 727967200 366842786 470626775 6765425 942825504 103819320 197271931 152499628 6706511 990522033 895340817 886899255 334690112 565406319 992182073 577914123 762535458 302521342 139294608 628737232 786187126 765144883 866789441 848742217 605291476 676374107 263829010 450180732 236094468 474975328 616291582 447746789 346274309 866785607 410243121 122451076 888717440 806969383 212332331 606012267 19072149 213447192 332308773 572110679 825698969 143027338 551088864 929735471 435290683 22382974 536716889 617151609 133932551 561605940 167402569 479712428 452681072 227936721 673543701 614337651 420242177 770338370 563651115 874796147 229865094 975446781 926065386 608808984 932676485 691162375 638070553 435310763 121173913 393396784 821530906 514434681 729967677 325026871 356862189 839978199 394211691 851490724 130458206 428046755 269172828 998182695 254655155 710855179 620184950 822963186 993993938 893170584 373002711 658281280 84192276 634531944 648702157 868615437 357012926 900018292 39493227 26067087 554659905 683963488 557248436 851096073 381890126 594266859 476266918 148428575 573239513 888817349 42998715 279370696 327010034 184488539 125327473 882367078 531346201 507816686 416300654 161122133 937730849 200367861 575695512 209942790 552704944 97119422 104824563 796207498 779755963 704308426 696576394 605522256 619859352 367452592 251117372 230505328 339294626 997845263 419972264 641047136 261336875 887351004 312339942 936377501 515257322 971256498 788473587 793221036 768002316 145052583 748187703 538956976 303405545 963357660 429706908 731959341 415840805 905046748 301183627 298202836 549475330 670603594 234486163 56771680 828462680 257836291 398954319 458417537 843017926 986281660 72455085 542001542 634499211 948091045 295908056 769062204 212763406 510328849 44571441 965264124 549571134 565750870 259472740 585733208 682046368 742299829 515055245 191136855 196583124 21234825 692928130 637871731 20388749 994109647 906701760 79133471 856400776 623979795 887175072 392424386 661500345 223238752 809080329 168312984 660768662 157959117 741695479 951378549 544112663 429718854 172807621 83542916 647510507 804260867 264804408 450624041 858846747 971639715 609916405 620628086 960436723 609569231 669641642 415878306 981205342 208535264 546024174 510463426 333651120 322941351 351054889 175913211 379539352 850520061 239800287 304551045 770430423 674858322 85798533 656795768 867991048 469912332 165947604 367307193 297565847 103868770 994560286 838353838 645787265 354888368 934868541 601126394 850320732 762678863 771756456 306120558 696248435 364668076 305603240 839364265 130881313 275257865 298799261 773997705 209189050 367597506 354818965 634894846 16131666 621587378 627418283 304020532 450956622 981730449 394421317 521313680 513030023 472099332 735834293 599464718 735150312 182136009 899073789 149157896 282977145 694721306 219014623 539466213 376502809 519810649 844879312 251858552 518948765 281136747 399500993 276434895 570509271 593448107 497012345 243690318 998587160 244321062 97205230 46807612 735185628 833765576 127862205 187779201 703286068 745269252 961042723 253943852 303181120 497651221 132554309 925536383 826999060 391073649 268031789 628548648 345913784 538157057 106722097 811978447 948394689 421560004 259955892 927398063 14713070 276572403 97639242 351871601 316548164 690092725 233823105 305635090 235353072 545593921 120678881 667180671 389558669 611885448 344161321 47465679 408079193 619524592 750815976 53811334 110843326 745788880 174950854 41526748 559000626 619574486 45733013 170328507 523574994 7131865 115650631 863865838 116948216 594003771 550126316 968001700 268484377 691990576 853485544 449767121 746395589 561436210 417889171 886425639 943939374 412611367 709160831 865255130 94199816 467495153 673913816 262556560 822368317 458776262 942689469 619123036 747794184 580155990 224983850 358470921 761170996 411558961 544024628 358206242 46953889 268309706 701449347 550480222 257404481 121321647 309665976 49491430 109479863 755334454 599754261 426639274 513052793 501627642 79358416 40754593 300325624 883869935 437077079 699729926 177035994 779956192 729030729 230567528 160643719 708251153 472211110 766334743 183198939 40043475 330380287 749116004 888928093 386196819 744133168 558307309 873367257 328462571 213915735 531653610 946795718 728605815 407334861 995731771 124633647 505015349 844237962 617345744 184541873 898465029 294228060 26062477 108305091 903162338 2454473 979859036 174794539 543255518 838857847 272315217 799388006 392287831 42175948 712809612 696870772 939372558 3420394 36865524 689015666 367048407 352592822 298664953 930829280 152046677 428728635 474700583 268360776 747400734 854938896 537025454 362443498 838700569 462292117 247372564 39689519 282210710 734100361 788356120 628797794 989834183 154353077 509593739 711171981 104774236 498317458 58691681 452540477 852190177 210851267 926395315 372184381 635251703 493425448 22023590 478053886 819836983 49682983 923391628 944900641 625085556 444419918 208312506 143006169 643110084 577362790 90074978 756258538 592244482 202030895 791239288 320443739 126621619 497926477 165861702 70353462 529024821 290973078 566115108 324355577 937336426 929745297 575645049 546519039 573986849 502986640 38360382 413215011 80514364 202068131 89058658 149533859 591382452 665395117 14319410 861600902 403488768 985783184 435894823 895756601 336215514 632975561 57211308 809898807 725789934 949266623 506193693 773626103 942789104 931353218 573471247 491063586 321814279 567490064 172091948 349287842 580456753 590919218 351869461 890034590 393811860 251292221 419979664 365006973 154329339 442477850 815999757 661218057 898216522 194434528 134160970 275631201 995965622 676469103 520174017 366350227 801771982 378143368 477398185 985204150 890992650 997094179 7500334 182311934 241891254 263345818 235181003 988127108 770820893 759111850 448762647 771823146 587127142 411354549 689584653 933008791 356638681 372577762 415164630 152600742 726624457 602992140 102652899 866250832 238676158 122643543 975456186 100667650 82676020 938507139 800782112 72947727 3957759 966170215 49721017 730139036 700079112 242535656 886034357 940017799 732986706 813106063 817328628 590568184 761393084 411053718 712274458 495794644 757304602 849774190 123253925 530861731 552224165 571461422 926169525 379263890 644489315 429569378 497023354 904153003 833689439 231747637 873950266 942538812 357795771 76285779 945555049 480292122 207905618 639003117 829241868 853487239 328158916 454067464 512211914 671846747 497462250 359074580 495797457 60269456 716443464 999549641 914573180 128594446 461804806 850104293 894676717 983691501 605191520 195961621 127672 158485330 151217763 970871837 12777618 796288476 732532261 164230830 948599397 244345220 996001836 561977954 809774773 706912200 808582163 986493078 24463300 39993960 492535368 250233254 434250930 911127282 933045786 508904648 639650902 291719267 330206331 119113023 913095709 834421407 109737867 914444456 152107926 88876495 233628038 205953796 594749059 47939771 252592346 640346549 621732004 341809562 360368848 533300467 930671631 623290791 549904084 299747931 336474730 424682255 342452696 510930798 130060166 405427908 948992402 847256737 975353173 618943483 251721507 35661946 982871395 567491089 755660933 957928772 819079673 217076925 771394344 883137777 285814341 823512109 82443011 18809392 703036590 843989473 908890235 275934687 149025630 323599800 489167442 719189370 366269668 389881244 429062439 390524646 401099765 812879059 727903510 262712526 31524244 92640687 720271531 772479736 479477460 51468118 886046629 525783623 841473291 49878100 240270033 584378349 972914007 392377660 510923502 365597282 856441509 776320912 536799943 968974181 424095054 732166452 812993126 319238652 861257833 553774689 397227875 502743744 728892475 455237979 555621052 777542131 313703435 304702013 152560517 982145871 490841388 725607879 239124655 747217211 516785042 338556809 790472351 892783585 37558612 531317055 323767389 413180663 209672837 509887460 840431620 813746046 666317597 917515487 93846481 933161113 183204053 9508356 421699090 399813092 887720740 898888882 840421545 928185 430595906 857415983 518331706 294100847 568317407 720672815 290245056 358550951 444513362 487086928 437901605 749920869 989611217 195570747 990905027 860120561 213508696 505303608 889731713 887572554 32522061 460609531 563060912 935673896 538036061 979404820 70467872 109223936 83939221 309347643 888045563 986464623 76345785 254387293 362351747 818625993 667814062 400323057 823175579 162834734 579562397 842337454 119985464 467535782 735190622 876615239 933111074 38466612 717570160 460224510 421670690 885299414 506793620 348343436 398576857 150685148 20608747 726658457 67975474 53344523 584874754 5793066 990133909 750263491 630274816 932674887 723513822 266266238 523307754 187114924 398202382 583787454 978792261 907074938 71758457 385044436 224613040 992159481 202657668 968910181 143832447 594663253 35231385 614250264 656463949 43017751 798735243 412966545 824724297 946697346 878189966 956104995 312832363 54194747 818113342 290454379 43604558 835416589 886347847 112654380 433655638 201236783 770579126 542481748 71754611 71394191 235785977 680260012 414619640 559436395 226483160 53644095 801234819 431446600 885075696 301863475 857890772 806875858 345601165 427171206 913623203 465021956 39288376 770251762 173596474 133571855 679340501 534748209 81129181 709274275 31733645 424558950 55942645 99382570 151125335 931987381 670667218 306034394 724603890 883405073 878039189 568404440 792194346 116156755 715656360 817466454 783711868 272951807 624848806 999879721 90558382 793356608 83171051 191370325 777824899 380298949 525569538 36506582 651502708 488534378 100233921 494462987 977416593 502003824 479313472 872632579 697398834 772047601 299732534 926853969 973824497 546255405 324754418 349380997 614877296 117460836 849862164 438934547 65857039 977210999 387781710 324688096 715261792 237788944 55886527 490182515 412875562 817806486 384887890 872358861 359517515 233221963 817338096 829058486 892095400 306057161 547205390 615367372 972895362 960920097 673357492 381832261 710680422 40464221 975073924 536141469 360579542 474697747 329277491 128066868 457907140 757388386 781124396 890961500 778372898 430334606 872259815 768374393 165247895 564224442 483313338 476247622 824124775 763213909 3567245 132042743 337566315 734094219 241149719 138373552 210385304 90371983 460667863 462399720 402699319 436108267 217656011 359333818 341646498 772833106 52025985 380139304 733123925 275275383 51528354 349192441 325207750 327659937 373381871 199812394 560287060 528265488 607484577 273415781 246550652 197923460 283035076 239627889 551148112 340855973 738754130 353821449 12786497 401628342 72889800 125491886 211722603 271088925 186804694 127753537 827557656 673783490 596205696 674798192 319576279 788928888 660190950 83342647 310504860 866428337 234017761 779861119 887635896 748916643 202404626 751273711 962127764 568145244 585389956 820890618 647074648 444424037 510551312 489750276 734889392 829352163 189626742 456575572 291528303 61921261 480534271 154118529 860269815 528214918 644304994 254400341 445409314 951913197 426769544 593115747 944335786 915490899 960797237 366575467 728400079 181450828 223667134 529037141 354627183 949491023 579707578 359445350 394207798 948066411 898480773 115320335 846003676 404723579 842605291 196343038 577474334 812322485 942550089 143176473 164469699 421755649 101801355 644258221 947534927 623736353 6626185 739961775 516130805 750834349 827079520 549178906 672375724 423382847 507511089 880015423 75834632 968006403 597853052 168061313 971186545 571181273 329087883 212625150 40911082 58826088 428004776 650833257 75935230 400518163 727726674 944002221 998338554 25919301 70527483 361322179 247110989 769974833 334456741 79266224 538788772 239546869 756578169 587195777 951621572 155638663 160185000 113569694 286058460 965629902 107272224 219505669 823584335 762119203 134631772 516635522 303109357 988602831 875103398 915249624 679604273 303575320 728393416 569913267 169660010 973069061 673227035 810687348 728064935 300606262 482828698 687378011 262812177 899451553 958079682 65759180 1292550 529552727 336098702 1654726 890414803 480346136 620449357 470666993 354473665 620419592 428146925 614365319 861205390 622993306 969098656 850478116 983410562 183858439 652666227 65878479 825148065 765538479 562938952 919341385 99413667 625039339 2021576 28711010 627146035 628754246 58117810 583936256 426095624 774255788 496193780 736056603 755594887 185423201 965142714 107304105 906148191 147346424 534670664 210717223 562259806 766535885 516862645 146619221 124084346 215117966 470764441 645014543 587681773 1531747 721806611 571472982 122300389 937909205 797705439 459853179 15323272 895913971 235709616 629442836 708071515 322134374 921466953 966310982 515105040 673439827 639302290 32305433 201094921 363131967 728589933 251514595 255688334 657590259 632579827 161502778 511078392 341457332 779529657 6253971 163539861 885936838 533566351 396078350 677024938 444414879 315769297 78569947 386040063 569485683 506670486 136359069 184974435 402733300 362335343 340161359 283618277 351829320 120718174 139898499 897209577 466606792 34724795 922313967 97334857 310564518 557306049 927058730 220756794 592283957 607774873 117246610 280358205 842059016 569589541 776063409 257471905 846467255 44586019 310198585 728045344 121982899 570998490 926438300 34172558 811680815 392624127 504186799 37674547 990052425 646111339 133481330 592484023 430468869 105429679 937717415 373206798 694699948 957878656 560179469 36369266 596149300 296284819 924549815 450207631 445064458 638445776 530472567 368509382 431901982 14089300 629121053 145371768 494510478 910573278 596337302 3577005 272810875 782957461 473182714 922582843 832706254 567058792 631238994 581917497 856828386 466349147 647931702 299613024 38754307 995830030 877506355 137285427 828309600 352189940 593190616 235955478 620425380 93726397 715051196 305911115 88198317 211956266 623809792 386210072 360037116 684321081 816043987 128319514 802148901 643244769 418246606 844503530 930006717 116609582 801896665 576948873 747743235 4611265 118842870 138882027 797132193 237868266 489801376 801722868 442763270 970480376 351720965 88324865 320522054 608709263 11751716 788277191 731669131 851479239 753180667 851146566 773320075 75840261 335464234 28953061 917937359 923509882 708043086 637209930 951707971 64731468 906841825 204679142 426927247 781308824 892370285 927684821 971632079 329892408 142258079 318419293 474315776 110444966 569102184 859155617 146531330 175212701 726201155 413853682 741409088 697913870 683149264 818237970 801122742 569057836 694268252 888662829 149836199 713481731 383800946 84424590 912032521 590183018 10759212 289859647 274795288 149281089 74240185 260958203 97355496 131546703 420462271 396104378 476614078 478264976 988066909 147075364 137249377 341765404 693682582 228391376 694853575 670586815 995565653 440166645 280351716 43713803 780425251 360825195 449551431 360980716 395906804 822788117 237515495 867121296 487722407 184028341 67155289 845223493 527789914 453295189 256161202 616155386 252617143 237215292 96132574 529032661 147475371 746499246 945387716 110007489 311138792 648361824 52561259 64080210 737739945 926797221 308595926 979890116 629746325 134017406 236203376 749221487 133334822 388988546 866655734 462645630 956039653 213603314 701448913 716255375 635227795 289979168 104254865 867936145 91859487 981598063 699387170 512271135 986980230 108953090 746926341 448628227 440942943 743666458 144383885 991872695 884931803 64736929 239478369 780806589 528635750 572379874 161449545 260080347 850929243 168580528 939433409 192021929 891283952 484464600 133324736 270207743 2980476 621386142 293010203 605814779 260067255 475724620 297115243 684359335 631160808 428845498 82626447 882136067 655445586 771924170 407996564 287822353 539913318 877604874 518023513 678282238 960145290 492168162 220590096 875276059 94561379 891417767 756025953 889265099 543777772 190971023 918876929 545936880 324129784 539204738 99922748 344673797 36051262 345304510 540392569 592195886 882664114 829796354 212282345 210308252 269875618 575058709 929969606 501695729 286615589 954130796 817918600 994158212 858570251 157035547 458127429 630622845 469705191 765818364 705347549 491055689 458197426 973100998 862451197 382372477 45808148 286722235 751920697 768227668 533605383 192261120 791151214 181142558 829105084 888027709 545860184 652296506 31303362 140244491 912490538 365952175 308311259 8005685 287595489 712105821 841139643 464120929 892100164 513248175 581627738 344495158 798784777 574304592 354672228 486745132 419908299 300166400 834606031 249126166 199701861 198252223 811939542 579187573 794441025 559758528 627455436 397236648 870615762 280762247 129010957 490329745 523546116 129817062 487993022 275717845 52954992 28198601 355219044 769405003 93907489 435603687 78013327 426439764 387687519 21039921 309904177 396555826 566729785 381534260 671531809 264557094 613949024 411537994 475579903 246135474 649543576 596043956 652844818 327452329 43540401 468726616 744518478 911956118 618789199 874842715 762150316 440775720 552900353 849621863 416709434 138921293 69499930 83782550 29465961 225605266 243359366 250376504 883056819 238325681 885841132 935783194 366092121 527041552 900764374 539003167 312964842 744581597 87523539 797934738 902886895 890571087 399101421 99582487 484436525 66587660 482530710 895574728 232865031 498487109 945621602 586062170 773353115 103073049 751959930 966127178 104170075 755195275 762807918 843930270 964980854 105738384 695539516 264396529 571608984 333777463 615366904 949998758 700733011 384553010 631963104 141148723 603996490 339800199 341763639 318241350 684748414 736379901 195688721 443504150 554300454 432372381 247785742 457897625 811311849 605811644 793004378 425233703 666122166 882471398 979864514 975647878 867569950 702093180 216589766 120501753 885242679 422224597 209507338 942493234 486520933 498636043 315205501 566078223 41771339 430729082 540837973 492066618 352873613 634216771 295346805 880025662 660897795 342526585 445982246 803588687 32426645 366118699 91755715 774269154 371829304 502434766 886939951 588697025 266037552 827620010 349261136 569856616 780022052 531480299 788698226 543202518 279566992 941429416 85214303 216384413 698780997 709454125 516958135 483626089 645315782 551073984 470042057 544222453 6908056 948659140 34563842 641212047 941130941 763429237 655122849 209833128 877889688 964234648 275541062 304328654 44359111 423954717 64364628 492326020 870768263 661375648 217000373 195667085 398534478 11770435 772178977 195423120 654472996 711531628 140294668 222866950 616186567 549178713 407232761 639920421 583854549 319086393 613450533 842921112 1393350 346275646 628758030 350535977 254103880 634196632 529566104 364426660 765212728 220182799 953584560 663071558 225233339 160677425 386321670 30044568 793304399 230047894 163207957 885158785 395913182 946806526 691790543 607547358 210848422 119221261 742625873 660485262 351717530 114096056 771393595 887466994 405068458 823157285 573248771 504963794 700317827 274833449 555832370 324352 983532494 722870020 376700894 799375521 366406872 165454420 827809771 814846171 599572083 886186807 770204614 842871815 209035976 443972882 812109950 38856544 387155627 774061333 527980937 94147275 915422509 806190882 368522207 893280119 891197036 69870764 247704635 533286450 907073039 2378838 374276811 36924384 693175581 873020637 255689855 194030087 628490653 578761589 983094035 636362009 451401577 8101168 95847707 337559919 691716753 194746241 255121910 320194218 408681299 288165307 270151173 540550510 242887957 234531845 103432790 248365878 600159392 39758655 389657179 796358232 909890597 754583997 763463863 373181853 578628160 929054195 215472448 103480946 179671103 571044216 282379669 903783465 134272330 978507819 388353210 324913021 323396058 466508696 254447719 464203466 661158871 397938062 995478093 855677720 314640674 841158878 113528212 907593925 487441064 864119096 655039527 589839281 790101088 792827791 161159321 59651200 447538435 458675577 79987873 953739110 446875894 425699181 382487807 219445871 415085530 242009528 703726068 167340823 11339207 796904678 812942700 88713938 72179291 191799127 267119152 153573462 781136544 787550948 497531349 998879550 566219813 821841480 317361765 249346629 661210625 82244318 753108052 842781296 371034572 572087531 54244535 941805181 878480342 118849978 954070934 799041881 700034050 503014447 677039581 974037036 836125141 941392446 796259124 521721272 533344301 109474429 634947178 427040377 796738843 232081154 5974252 465322930 598497894 977011147 4114885 492290199 497136960 102712612 46448193 55529618 115525430 256914376 597409594 270538245 562450660 645038103 154844298 442543692 741677003 16555736 478644032 927570820 981658653 417050899 257293091 322882686 689186166 224605763 337471348 638359816 637083682 854104833 574266112 169249045 466364003 997608119 462163435 384654979 50168542 281796018 524521433 776966715 18265373 259342724 370824127 944584433 460972949 366340650 595064392 766724013 39079520 510705120 741449362 299274312 780835216 208751574 383023415 959477322 881146006 64185831 191510460 354619985 604922303 510984782 413782452 298661194 72233510 650862050 910359728 417637823 120746044 823170624 843887048 672807233 323996861 711648838 817108181 183701131 352545745 132555218 525972890 953438754 512703060 785869326 902829510 690442664 766363837 104797309 862434368 135379288 440611623 32147479 416323173 742370843 674152912 952255317 35809932 585530613 104663946 134149554 925288406 282634234 288232675 221790860 468349839 177886639 543108301 889990299 134915318 228787327 28484027 714990822 464827158 209091725 746808177 371476010 633380169 597911317 690759714 583318162 487964065 699389636 380415889 719316561 252349164 73123828 811991066 886282173 45768531 310990828 942429845 272998299 895071911 728553915 109757883 56547403 958137151 188118980 236168466 308939369 472688284 88596111 798234542 113951532 232980500 518453789 335134428 561398290 433289455 439437987 301929188 31881276 264935717 645292419 388985353 56754696 317390853 344180517 906002548 782327007 636791988 682012948 485425088 269312712 575153591 720429160 897605991 518050969 8808264 307763433 335301020 595002848 909341108 52332785 601160043 189486136 397770595 126954237 941248220 66726013 574125710 249817210 236411873 694459128 267136177 25448904 953918345 733771690 764407026 933703629 644471635 67448634 883835494 994406561 185808040 248621219 380251866 921155025 397016349 628933731 539894671 641603522 547199564 538531939 731133582 430146725 565972415 264381302 116176176 617636464 88017696 582771376 911610566 230013642 307687108 426994552 182030915 273749861 507617021 52228781 556522091 468964178 718675648 52860294 216353944 729302259 97422661 593359733 783061888 42370333 564892656 371501193 336715813 142017297 113312337 742519694 251737007 630648662 218056904 15468930 29102904 236314185 716111552 492962853 321460872 239944154 662840482 925470467 315276508 268234817 839035818 773899887 45296873 848017356 949884491 20651546 307089671 58609611 951776424 73800658 494229300 573495274 468232589 105836759 904759106 181082615 833037881 3585248 362524871 341964455 716578114 47798420 496097629 713533826 82422448 319823306 352377722 914259411 396682218 272668109 194554406 790970207 704237247 775557841 717631627 985023710 694436970 165994950 128288754 526870682 305744011 215263235 380365156 152076752 107747579 484005998 582970953 30005826 725203887 952438321 127567998 953005470 603774484 863804437 104794695 429336362 576775712 52640810 400495265 237815867 651712248 7137864 701961924 569843520 212606357 325822241 960903450 25953635 663639913 879629430 906119587 126272641 143430311 558875887 383211209 470363985 693722757 191956182 665164045 967651675 975132509 454408555 893471558 742417174 638412307 426865790 591349473 871991460 327367875 360053607 529617447 780058868 624080653 345141019 334715430 178654286 620244202 487276218 84781688 908783985 137948646 608013779 393166950 530327800 210407884 567538874 194313592 507647008 153635408 314135055 733878447 803943302 596960831 731567327 677288144 938633382 733700288 228015740 76961405 266931800 208216127 624617437 761817840 628262893 925597526 282539953 58253731 635996859 445017375 300904819 794673526 15761893 746606708 381540513 103655333 59679735 102961591 807309496 766211677 799746362 38128883 189598458 507063066 941582477 542133665 478844725 47487743 247044540 926972880 589375600 787822234 227156554 804179117 258110682 110720977 945431495 849403502 817639772 555648804 508913290 939312105 769740308 552226826 876148227 605840445 203564481 559667338 337128371 800574994 62285371 721012689 657094264 972898628 686197392 307706864 56244778 89939677 440950749 477299386 932907372 199713979 179682364 636994330 738004875 469025963 76248301 937969060 587392562 524176498 558591171 194271628 824898231 446706784 984786203 726199409 475748935 650276455 853714122 977478618 746944002 909472116 987956128 10566490 208256004 197040248 309473976 264348359 965134446 411474567 934023632 207372044 459353557 973904173 47463605 671141141 619396501 363931177 824848743 86490764 29623453 610960410 304687427 155592254 652525497 229426363 625218291 642364395 446479195 553342952 394708966 185293723 894522680 97849893 387870221 931831670 921022107 957085918 602865127 387621585 392322198 102863217 762083973 219771415 244231676 897110307 353310898 616410580 86840334 722379527 951004340 857875973 974125671 5402517 485192457 148880354 241424846 648311050 181522578 575742582 9001363 82680902 767176877 507446976 316506543 240161967 493022283 168241240 931936944 905816754 29691801 676603962 187755846 223589505 978080178 641316685 262953063 545319118 612547764 966270118 161997126 260882687 438790870 490131140 877752568 618379505 77162527 584110293 677762284 993458143 373942829 430028662 651757757 148927678 336836449 443013257 540831039 909128385 816855833 809592561 247294631 265961156 135915267 851056620 397819679 311386581 432626538 226924708 422006491 964893393 146080789 252479987 550586275 156525710 553161341 931027002 63289032 753270138 570875486 897029860 947958879 411450511 186176237 169658524 337097731 128748600 154604064 910061510 878544038 911356120 305577616 850135703 783587019 10087136 237079679 486811668 711459784 343891184 772302582 333622843 713344495 38036328 672906499 729138495 485611337 936032826 814332438 270518385 149317230 688419546 12165703 90035075 260434987 646490003 844242530 561196933 815742938 251256265 982542532 533256979 94756026 990728320 700955516 790073603 107222160 361444632 729907612 614644679 727320708 654973870 160848276 172571744 138328470 62944711 929727227 551193198 902461379 453297694 758106377 606555753 809966320 318093922 501427525 246884083 848618756 144743373 285190627 934408984 6011757 943068540 30501096 374414505 852710125 93496763 546822325 7955430 244494692 939753061 351319975 365147719 394915281 180372129 796956116 940080859 603341735 80778426 287599110 169104792 131657304 863610073 429366673 801440482 430730395 695662440 531644087 252373159 347645116 643843592 892298491 442536930 724916078 63476930 151315029 67217286 754553921 10130028 155247971 966994289 363911575 174519611 114552468 698624731 52326237 976470471 958248435 1314316 116251188 24309973 344440275 304346109 547459403 612975200 541577218 508370916 716526361 857704808 3956800 544135576 525362564 384414466 738405346 260859784 557412202 341182361 947241056 609604762 538821131 609012750 305782080 26723087 503866821 926743775 680057621 668953519 556751862 921835335 699866801 236191168 591043812 893033605 264854225 349939266 551968905 996347064 941434585 882840265 776561308 803997867 832769981 49649241 198467276 477142165 385976032 336198515 173757573 845296899 361179629 841053441 161904761 728912791 991849927 501607655 581440800 534085526 983554316 216934112 859625746 552242286 128049828 347611553 852698979 793677545 808398978 934247410 736178655 894077772 366993806 122745198 400013691 200214417 664916219 144442297 655320559 410706398 537186152 372582994 559537658 310553300 674990784 460205609 438399940 14290985 726716295 372278952 644848411 603704449 528449426 383588164 7279763 188519873 303305474 654087254 17708624 962379703 729994972 544188026 628795842 948694203 558778080 18426037 649215911 876388243 257287722 638282015 798057693 563558335 52274199 959747585 34672885 778523173 933706570 313326220 608585856 77342772 592778747 997029125 585250426 392451834 880141127 643221566 440297963 243690098 720045485 567865100 286441969 535560809 193633480 629072653 937376263 229160984 585804680 275428110 764628015 793201849 205162307 844525177 387311254 950471621 102575620 587488843 377169626 260125519 522000966 48623427 340063716 811468034 830631870 101269960 850986320 20816065 825954250 984320744 215421767 848215994 571384693 829956302 18000182 526611868 155201214 318740589 350936273 923966297 709101396 57603753 101164305 654160065 258185152 471759135 740514979 121542921 103241689 559281151 675941903 95187789 595950637 69149080 463453611 681932584 93198150 222429008 143093777 946385057 191950362 674230346 328385874 604488673 826058249 447909435 851283645 765562924 211524783 598718626 75451958 460694426 734288168 867354466 370533964 257128902 983378453 238440000 999104703 53920314 976259960 885134033 842054431 194663426 765215839 46644768 611830394 876351727 421052458 725777769 672784199 720755318 558434296 283767712 866063405 710053921 57451056 166659811 342391397 207765338 988510943 716538633 379664618 881704304 63425888 322151580 574272033 966042768 870090701 340897717 395157434 548392507 957704199 122402760 703379706 675565386 510390891 766839537 127679705 629870661 762489592 868794298 999402090 814862060 238867840 465416691 884921996 804167362 622602257 73732030 775583192 254253604 712690266 889486293 918810604 529942411 829708846 453339235 847162391 817751047 435179663 89421522 293704407 167081497 510975163 506448280 820781817 645569237 717980557 758716550 583239831 319056336 433192269 402331948 896939761 858594793 510046554 43919693 378305543 623256257 91423149 765077231 585673705 388971091 179546368 19410859 828786741 919293056 900745320 430634210 892588193 156208995 769378924 442497780 113670776 59833956 491947282 286560542 891692030 192807094 998560258 636238109 3510775 821405899 581012452 150132051 611399636 791578397 394099738 870443993 123732113 836191866 619210646 591260097 846960313 951699646 702902984 384459517 817452642 463071792 769127564 465793205 694668266 367978824 652680668 968584911 35997056 997176796 47564068 304925409 336700619 298238578 606992822 547027753 798467130 796822080 420607453 600850875 312732128 400567362 260920734 661318645 842650137 530124540 553820986 554761508 296512059 239802775 860942140 177983124 24772203 858350249 937431272 681250757 835063420 731733196 307829032 753113666 986842182 815796252 486142630 48507091 974747954 751551274 772569019 261919687 732942683 74438688 15450946 650283905 150439671 507754435 995183291 364929550 139687369 493002946 560739382 51109487 215813100 619662126 460473715 517134895 388207478 267273159 934191220 829299559 132394051 912653578 679668067 793146995 369836865 33968516 167621197 651972425 690208630 611655070 752735633 587702346 624170536 19650463 232874163 449559185 377600739 292762290 245846754 528196985 2851948 968593344 629107095 559101509 885031589 946829768 195663497 282233833 409964279 622831895 807907438 994702512 465027370 94302624 147231308 401356587 203374617 504651832 896731813 500708211 200348428 48870875 295429371 476341800 688539642 144457226 589565611 26293065 618832950 110433472 848065181 417909261 757673638 743961921 640191786 28811834 726552724 617120166 33088128 867713583 869452427 183802455 644842078 387924194 116693065 294941110 397249898 328736385 761005631 247936394 676665455 353536380 209953401 395437849 165374464 86490555 868770869 466737336 691918654 41847742 65906604 934738788 309875006 639552668 842400799 167263783 80974140 204532745 592924129 889046214 754010735 715576951 628741870 115437805 174775968 14903507 492193819 412415521 59378813 15412185 810735304 637678553 690616937 118486411 162277326 195888684 963277988 512862518 978401278 889331978 920180098 389077973 738143976 38736116 953693356 771826067 596959033 530277665 423712346 271922957 459079386 689352094 667676413 61674409 21968876 894366113 8436251 391065531 243110562 411731413 444575264 480395094 798977451 626403787 737806271 863186528 748493545 391795397 617361702 350172971 238960080 167067055 639496131 761379955 252276891 948032768 74548383 972938064 403147809 230160194 659581841 742936869 114600098 359767079 574519981 906410012 852214118 969048408 547447128 619754940 399540053 315715137 312101136 90651569 325550846 599094844 877988978 361381789 650616171 76236713 631516687 954830247 659545142 269981537 824822669 429209932 810107593 37193128 888599480 489528035 885831086 414055673 359065957 333756306 370552604 835851060 872968587 102994637 430545296 657471100 819635460 928339398 373516388 764753274 918323292 893075590 543288462 561374323 449832293 421642909 498003459 113188390 264091381 89879479 350344422 770900111 697680826 117411447 671209799 586547357 850475393 181487807 913933755 183209408 705973916 451830598 865333576 456567556 376616726 444234341 616690219 112210946 673341017 842561987 733203900 866507695 729500168 357396891 852454673 173998699 256297685 701035550 777185760 327232970 3430125 639742660 654514555 213111382 355894967 772958115 617163681 98753276 167166077 597422996 963424739 33600052 290753117 390807611 508298455 698811967 52161589 465504516 894523198 776732458 382502256 900741397 241208068 18938445 353284281 130603433 393624931 487682503 40277007 382922540 739961854 490956245 955909732 99231256 780964939 785428607 758145800 907427637 119268395 280716873 293325551 641011458 943499110 839038312 176824531 942749905 749713652 497877667 978249158 910868286 949232402 673584262 572791617 6103115 795465460 199496177 172136586 116176888 582153380 505135580 827155052 384374009 154109047 650988260 101368876 590010677 489176964 379868288 678181880 609331021 897637282 530152669 813408370 544774089 576090281 458032884 967859258 200106381 817808549 444746582 63595787 530006381 361970550 18384563 439707607 108589518 871213688 575186205 122294159 631635787 137305196 690182150 227353948 470656804 940794122 419459362 987840449 271990525 62385880 436782518 406555174 390595898 966825713 883674563 41320012 86585239 948215591 921156377 957809089 172570167 988554525 88841286 79696373 624355945 551128544 938459868 286163444 527942131 695269669 973787566 710112308 566283987 872022910 237180286 211675430 525408002 968582858 357938445 818240791 699126483 173372910 475723582 456946578 589393854 422191035 334037796 654619859 841349660 228746143 812913804 207573241 676503876 698835064 758863027 773782075 155223992 426500079 717834838 834922352 250028358 24512115 956034039 967817042 660060230 185040159 675493099 494421619 363389888 70564112 661068625 921010875 475249926 52885252 741346350 160657930 456156078 125952912 977561984 593338822 396667231 877000996 820934100 641885350 500919880 472939956 530665384 849966117 651504035 763783970 504379352 857909792 184032601 597626971 879098157 778241590 756348152 898581400 50963465 835144624 542502230 655101955 645150288 262089025 427732099 142195204 75330673 750335320 959887057 71905677 26159946 884940526 955172901 559776800 514039650 574934009 713455552 768824926 692970164 782367284 532644685 616942992 368908308 787961483 99084992 641618191 148365974 968454448 765988574 212228876 414179991 885636115 594503025 379733611 929552029 855124274 355929756 2662023 495802914 894556859 891775408 64109930 586213319 825537627 795044743 442711253 549315929 848210663 167439770 233497824 214773667 332727341 162314250 824921475 77770872 817472091 724262754 826648956 95464459 822380573 203607297 503509753 542850386 661988345 432566355 444380836 236610946 885817810 664945726 826419483 652743186 41510100 811284603 763743883 624663791 570716749 612298496 703874059 985262697 347518266 935348559 361475187 695481661 824951898 850400631 59061395 422273951 950317088 552683004 875238102 791074449 795440376 608544079 134467960 788452568 9042190 568432900 65911912 420981519 74661379 290580950 21503870 744969006 453075894 558431792 308455831 507763036 367327725 116830685 644507647 763585399 281700669 474064110 161155214 163172582 577311027 405237961 881744145 163155842 554821881 481209233 914493289 953447832 846577570 245590127 518615306 45461359 337368353 557728098 795115724 641524787 890941645 492704802 862204168 554561700 836257286 633987797 391837216 885929533 252793296 217841810 319666722 445298273 932275007 190575531 199898171 182276064 596693274 274441771 937717286 606129387 555839026 886174555 415646746 339290342 20501633 134370943 514844968 22447606 208396253 650646213 556829511 421789366 27727631 617262703 237306535 970794903 716687762 78984053 957150115 325669513 471231663 260711425 120422273 516538327 484621814 368006920 125227599 194622904 233697618 771983501 192470488 463220325 335963912 613170891 685738851 202781211 417052548 260570516 777840767 304648155 905118630 909067579 731477830 105303146 478297924 240290376 217746079 366437299 200476390 939343006 978315807 256964132 2385841 327180173 911270625 82567988 321782586 892310674 805240303 933700235 464985778 651417224 999680068 913214773 621543210 697630268 499405798 446204460 107013875 954944190 514747172 186908255 727064382 686510317 819199260 701634407 384594891 704101801 793037477 987821132 115252913 789786998 25641188 42519765 398756480 754217290 302263631 908549193 377772568 254647799 924586667 690602178 279898343 723423721 858791092 808942820 762226320 407582848 291119783 617972757 87689512 508275521 765846337 105044031 412452841 575230817 860567713 607884 342988971 302234565 854419317 124417688 236797413 666120396 226435242 635183145 528723437 931755567 266479042 56322905 897209532 949483495 191662381 48950962 938841240 968996991 726357259 874669863 323958320 463882404 927229702 272565283 874829298 945468447 540919633 141747120 539792515 212153980 847649290 520328744 895699112 793510898 933222110 935871685 10757147 484979529 584992203 788100633 551893595 93481322 608790641 438648174 505425939 66632451 735518153 896301146 420299980 137959939 86390730 385395221 830868691 217825434 52971993 971978476 979510421 951441751 847190721 890532323 627721266 773086200 196540107 391489384 247091349 511763939 514403441 494972964 332958147 258312420 761671498 733937458 462737565 769895828 857721797 32554227 981582059 630796812 807021137 217274955 463016570 862948788 889400865 747199718 610317888 290373246 782695323 661420382 367824397 661982445 823220828 891862176 915602808 765952594 948786433 728200406 489186927 507248346 126371757 505509998 420035462 601756395 400943006 561406158 676357746 440188179 350634159 899609269 54414134 683771820 437142765 30431310 963007027 462750563 791518289 654650247 544743671 476683443 590521980 986548411 349483439 169409236 588335131 535296824 264597328 828709117 706635496 6174915 835455357 570995192 699162428 75387212 836933933 107717639 589331047 393944189 959039508 744110223 395484600 362964340 315526372 704824028 380635789 628683599 578332964 33398011 361010220 790242816 829983250 3812345 835779384 720325653 558603515 453485460 161119574 297939325 362922368 487310344 88162535 866061173 645179105 756674768 807674789 653909553 127729701 174815197 488493403 847966227 143954137 588942700 440048808 74286900 835871451 475161277 452330256 830165321 354851580 26606723 412151807 789606147 97886494 343161356 264890556 1041940 248942087 370500195 883758108 593282485 38053351 822016502 976975973 397497455 728461871 122633798 855394448 881223812 13579136 159204598 45243184 705525466 707543678 33361040 731848072 617964125 568027296 936340155 55596330 50207747 844852088 816988504 435072352 334255805 283362840 227866594 467580376 362689839 542816252 38111731 542213602 470202753 543954113 553287376 537563104 958824285 659647815 692563581 728296466 285463870 466730433 411534980 869964283 164730916 216853776 698625604 600307846 91409136 953674160 168586442 263642059 335454148 520225497 882147491 1303996 183384668 198373157 325330752 583776060 32996694 213865444 710895493 139323657 981187907 16042367 246342489 556691137 207761004 814764257 436450555 806213683 11463745 441185270 147142307 35149367 99620790 712233642 394775340 824136265 369265280 27541206 128928461 804470378 81577544 66933801 245783601 290911096 252007961 88561559 278222351 790206845 998242442 439137439 224932490 7544613 246148766 130095557 16508196 379911208 335830016 185507521 75230727 35802740 529706928 655252052 157578578 927113601 160515745 919127296 333480324 960541721 733693110 228907042 256633971 523993828 220462674 906617469 231776652 248010126 968333633 225183013 515992425 45503717 336696900 924225883 183553695 238519698 706062497 530760818 294647017 1179064 565044352 713079748 323487221 235074003 237405607 211399710 736525773 932149934 85130709 256240187 633498174 838744451 802174113 877959506 190986315 759466626 654932586 165185749 557062378 512438345 683927760 676715904 116201482 26624339 675829090 270921400 3780066 176434039 681335610 313631853 853623826 599792114 84644571 468687120 773186266 87166373 453296500 758045219 519417906 656606981 215943941 696540667 493794381 551309671 377094453 35976569 783237497 881569013 519373189 431981773 682084188 418689722 333131315 430967724 169635842 777317320 312813173 867866929 18981157 583291336 300901500 565825872 979509080 881592214 532915348 403469472 943175913 945339761 915738131 83613634 237323601 850554776 851678248 944665083 756933686 910203238 518303789 302626124 153625106 945967256 516096331 950392037 740467686 526513928 41271103 4338344 947419077 327369758 305152818 190032134 180832654 946662902 81942136 749218914 94005834 950158511 20957420 464681768 268825417 346724050 312652749 681438120 531469697 927038798 483964555 875173410 327477000 47859202 645892151 135086677 429754966 480450273 123986012 17333222 19764812 438362752 823344081 805966808 923618967 286805138 778874442 347486310 127898485 145647983 215903227 264625261 864831977 513416508 301459477 919271143 272382515 988836041 832989738 714951586 407115584 975444866 6049737 957933415 836140542 482829883 562867710 642775685 709516690 304191379 852776847 601777704 402912671 122717065 844020974 442938247 633433532 184265445 809807341 662070417 895272089 357088304 208647236 497580234 948097816 211414419 226722277 906004461 877151844 594929663 326135657 162049887 740321450 608057615 911206200 417646963 217400925 290001576 146925065 529785690 435453524 241478948 495759891 930477357 602670818 117135204 260545207 140246682 98319237 707460679 774523175 200157077 734994878 944169557 639213269 679213620 647656072 56231543 909898836 691401054 31332911 836577311 805453367 513474764 704287055 88802367 776705275 773587877 658060373 733436789 41322727 338304417 58536770 218156688 509329828 854838167 788984938 939581406 813212947 825848176 712083073 671238379 116215467 175328228 712228982 306688011 361229263 560586940 245083611 427886252 254586912 492015035 85810742 806374293 489705132 978716139 279630835 199555442 287119389 774142394 77631635 406425908 964669508 553729272 794423436 246971910 851680561 513220428 715408459 573485632 921601499 325885680 615783926 391955286 277712710 785850867 100135832 622647725 778860312 298430689 548834049 870511664 100033949 385046654 534347731 490658715 998775612 926849758 619633191 830459843 61294343 575064298 976659604 30547763 323440331 585680592 22656031 21761857 889221359 580220796 783744295 29435824 376325131 593478184 34771164 244830491 984137401 855443798 79446007 619018715 613894897 44887660 20325806 367215446 438657924 536252240 311360024 709731672 48015839 812864193 740584289 215879595 669742469 296612071 779743643 682945192 474276112 833569538 504587706 995705339 758356273 116466857 852582934 471531927 464548107 364079555 588415786 308594283 586156167 533316484 240980373 580777830 359416872 392882645 435281160 658210519 44328422 385657439 593186607 260203837 924679577 932462331 111907604 702680151 967783429 571785024 106872167 900183588 376559694 4507735 611758925 861236060 460046490 92621222 707693241 115367897 491126384 74185990 377688618 668516904 856875513 856157297 542248645 497489416 954677817 318524574 743772662 832788008 448708866 872461548 804833609 859133842 815973074 882616967 249711027 813887217 442885525 810041805 103331167 560512896 319968228 362523819 756500071 695609263 76097810 258748539 441174215 374414445 760835994 576716925 943659292 771877429 784563959 838651937 869358559 331980878 450283816 35044003 854547985 102053447 742706341 318682991 959172872 266671057 531567618 45088318 855712362 563794730 840679619 5028022 97850747 835479005 791056027 135304677 333000553 193694365 660385723 109376130 821376604 601062960 664948941 845845149 728952298 661427995 764482624 685337516 664976146 431355586 252817721 395576010 242831486 942854109 275871377 169460411 998714534 823867081 641184574 596984341 425516758 983582337 618890523 106833775 351400002 520808924 121953613 973974790 186341631 799847787 290089649 882207580 672997856 43923897 138858705 17692082 515673188 720944965 924326378 234164943 480240981 680648333 773582244 126048151 64902854 639324426 279850968 616756916 34986228 38998849 194321319 6306909 520196381 50731311 773049971 172351362 853330118 5952836 644160821 577436439 15588041 355249370 764926099 959318286 175247552 181854955 435530247 678313356 446015700 491499054 304505289 20230274 845263385 901954378 129264191 955964636 489443786 916611521 581745510 52979435 553997082 442048561 275361680 83279373 502655969 94608003 103966552 817569446 56414487 735323459 128109144 874870593 757121375 80498186 597613146 702186444 987748798 806653107 779047713 744353054 194814016 115625390 297881137 203805722 654199378 597105293 642130363 672352309 615584225 556040888 706013039 938844017 722719587 850784899 474386496 424510903 529097005 644674686 178613488 477282978 324501025 841095781 735273199 833929386 576879740 805426726 324649769 523642984 510193979 975946300 928255084 205649135 389752442 350319603 641081108 644623806 653949260 407230811 410868499 710240715 26698562 810833574 168677895 949757418 454719143 313533725 161613788 374947228 965763432 197155644 36322819 622228776 173449054 234031158 324731462 454653658 844026001 95963389 778642715 499580825 705014596 87408528 921111835 245017448 868900001 250615983 311060881 263791113 942677616 120633545 397873423 107214733 410283128 637137171 446554237 630503418 196045810 177048997 955187248 644896694 204764597 580707010 160810050 775578592 648509369 42583694 58740334 337875981 248796882 697551556 789809297 839568034 652412049 986613149 528917576 940426000 825849421 697841396 895596007 568754411 948729740 13476654 460965897 338124954 15602423 447500100 65976145 146571597 10222409 988266512 995624169 315494362 641951907 340580701 969207376 233255437 873710953 564354674 629930585 255046292 729526016 609076100 731167900 398751639 552625339 609735277 281686155 261928711 588937084 368207290 542340835 153097383 976332922 303756506 424354152 931349708 584363788 8445541 184823623 550967288 445715315 733300130 830507417 78730645 935909992 714182723 351013363 815822373 916492693 807070188 720594715 487677384 572613356 426646454 590645898 106665701 261256671 35174716 987869529 614406067 76074958 682916603 325208156 568343899 737175970 590401471 307589187 420163809 908184077 303849001 227804845 210971613 745058012 667004428 254643368 903260810 751048334 387018862 449901420 785308386 405342166 758279517 497009113 733060667 88499728 939020451 408747858 806266960 719283878 144331132 547744463 860022442 2597896 893863879 528812004 857948398 25471499 942331011 16088526 217363851 28552368 348693590 602774085 132158824 995693345 50569287 503138855 617023296 54180916 141367769 908933176 253741304 963297648 44925641 196422285 332173425 518062996 351298272 669762068 648922428 271637233 119445794 420052705 670600894 323816421 714899540 492511540 364128709 166099564 594374425 779369936 255546924 312109199 168652173 877952816 43776200 645537786 284600469 950046293 509255959 179192885 475619162 380099850 254060585 806002040 126924191 29733278 608229292 808337335 705515857 389080778 247538752 482885914 824618149 798793913 504557759 690101888 690621121 343107679 662691296 569927044 28377220 832184405 398406805 141443483 151628439 703222891 998315679 131465467 853007779 863027996 659677491 879521945 507230521 206463114 259890490 684898823 775934968 540407045 447528377 675914771 169911233 831793296 893265176 555331385 865191088 551450464 115941796 249188340 997298890 997089513 438243254 320952608 845287745 915184664 437797079 37668725 373848808 43995200 426577322 735148148 878608898 657596222 285919104 703685193 371003334 659551191 239185164 264915050 841035115 217314571 74786504 540083298 974586691 220186188 781033477 274642305 982512969 548460214 36105432 646804365 478235611 864726135 290772371 756892474 549440497 528901806 488318139 545039584 714681721 406403862 479872159 645961175 927752269 748576608 988048530 435129304 605422211 408688145 312399215 375629566 790421251 507791455 952212261 933913077 991379243 641486247 427748742 366073210 560467414 282855606 319371493 690510791 668308717 165960659 215081212 292868781 461914450 409816763 19927748 443692398 251458862 797966670 744083225 161321046 784271553 682092775 381491748 739416862 983043099 23379523 371663257 650015869 706675398 891614667 55675493 126546796 301824765 855475253 645113551 547996030 463620411 794159583 149024697 944490819 814316754 611687446 21649917 436216504 77138573 349216806 538773839 614192346 215805086 162786108 59523704 836907851 303088377 146288493 64074304 439010363 822268681 745992807 344548723 659119737 737205962 409535962 16950154 429274673 137861832 287206967 162549114 402037859 302348685 774439380 543896498 874656436 566265285 469497717 188307696 601539996 188112865 183384341 336077968 684388086 66974927 612345629 255456863 318239108 525556585 363678969 487248725 44578488 561771303 207302919 138846168 299065674 347139857 64249450 413751202 541263401 283866676 829857908 185251915 149570597 988071213 242186570 301718113 779518571 962952855 282885496 390001110 523880169 737935003 77722921 293736430 264647696 331313271 457471685 877876935 876254113 981710562 900754159 319034770 636973555 606668871 760062478 363511059 402700800 539778004 28735362 955544466 390102247 52209121 642212810 495786558 578378273 491865559 641027642 791841139 938109553 710796015 825388768 705121266 734715900 727193276 669408029 544389773 260821444 537187008 503132107 485911794 76770887 317380037 382237678 909975947 273180265 803781527 209961949 562728144 811324033 705426729 503546775 526234334 515205682 240711874 445799114 167397880 274811090 875502314 818064389 309337110 130084068 546116330 483235029 432434478 53681687 555354881 634348025 328420999 315447619 736842357 517564001 964421933 702552727 999147128 24821607 235303149 494342631 406744537 610701173 659964367 150752645 463369045 582316331 842556265 250458491 932646166 610920643 7322969 506416005 298355444 823115814 100293601 576483135 434401101 20280799 295207988 772471474 475185600 682991334 658286903 375629549 118290053 159762766 337096666 994568020 639178826 978246708 204294123 16475468 243378964 847057688 770798402 335816888 610212303 111261219 337411166 597366208 289502901 897414810 519848573 801150143 629087908 280725989 108446327 450865557 82781932 930750066 211393852 172324107 937373902 820762791 27164075 542730179 811489927 481361741 585771602 100045320 177703801 400967995 46932401 408941224 591319833 820243276 204088603 841669573 861300640 833978125 833204196 46290943 275255860 33624244 408259883 476889621 172286061 769416884 262388164 659206550 747492533 460192994 596022498 220724592 178263521 656291632 965169636 83489415 111126495 24652457 28830879 437019502 638462521 536363885 860034041 645439753 830818028 739197385 711021510 682648197 850721157 458361268 321220721 129081492 166135406 742461403 414318143 646068484 857590791 165671973 692324248 925481474 388666289 125776412 795443275 86213763 718084023 644550025 648268669 56758411 25540167 397361724 865996513 778790033 739473759 598801573 97222844 842892342 236259675 588883865 46264282 588611784 556779718 392902637 585209932 140402756 343249715 261850117 59309957 372770873 200945020 500845138 711373497 828621981 488087230 72629330 914740849 86164248 973851712 948673270 797789887 404584253 473541344 940645781 942206305 319975575 379714945 279945341 307368280 15674951 762469800 214656765 145544792 9678139 238775250 162762381 142572369 162080819 29959079 29543952 808768939 191358796 359850937 42998297 895780492 561996585 711395719 43684314 77518553 352242963 506154348 795362630 194287824 919658568 907583909 416858748 733853814 576350950 654474410 866458996 91046404 595924450 733893732 194981721 321160973 133480864 106923516 194020038 128263934 946368551 710743819 617229455 998047221 65770120 365223683 4641536 449730336 884645235 841294633 368481248 821622380 661414810 153707763 310568190 383076596 790728706 223143415 651376536 153000897 663450614 43414110 793391037 977716802 490822281 201715335 806221639 261892073 231923555 527590966 38147429 783968919 174955057 183778589 386536215 301695004 443191612 359911453 233074849 934390256 459846660 243799611 631457861 428015524 854391531 478319739 268959404 743723708 389302822 680341698 394728255 247588043 622654796 897945942 941723318 308846880 60882855 121103544 525622049 1417311 652908290 998889972 355212995 645405174 52982145 264490890 475674824 625444342 823166186 236453481 540179353 484473162 865425422 483463408 819002701 211004060 811176073 75400449 954460469 662179021 135966007 957851782 836832569 885662546 366579101 168042525 278965530 125441231 102750269 578018860 274411662 177648589 297609673 521544373 568433102 321901980 745353030 163046681 199020520 486144244 965376344 487368577 18520508 51457342 603645314 88221827 72807925 795503794 299453301 257736417 629902117 106915202 53084856 143055100 771293236 452944786 7279315 798755279 511310179 699244975 745912989 221301195 120744154 902930881 965892836 276800192 46630463 315859464 279909498 871365634 688676669 757719709 427603108 104620541 478319463 767815461 875756698 615552412 554408315 370879708 706981357 328208625 952034191 573621155 802076448 356696801 232689278 400377556 920407944 163756381 865382589 383658509 190288681 285202154 349319562 655758133 809467047 75102649 755919529 89515921 903676077 504074791 605338946 405941005 305665503 682481783 545043981 187735474 60784384 709676226 424034036 712137459 768893522 837742259 31400431 306186635 610726064 25412156 282580605 490317070 330619816 967054682 582155455 613940574 989255339 309396740 457755220 507978027 4426108 335484224 974061279 46237919 317925043 829308227 295068270 994236395 276297843 251017443 563817923 18934201 531568244 440658581 525569113 130969360 255570275 369797096 346336028 311536008 730663115 124592060 305148169 849685021 91991345 887279223 925518816 88353643 161951401 923998958 842575713 556481300 885199716 678137417 15731580 875186643 238174774 927628119 130072977 402396676 185542530 923938485 234980165 293506650 119257133 295144236 485167668 468465160 220164540 329674749 986861692 891830402 845075084 780675792 736278605 2253215 333385607 159659138 840426561 71373352 564799784 977352331 112909572 119492672 144055150 708532447 301485512 475385056 247060780 438610605 409614000 197157282 310326264 736339776 231076955 35481641 801324651 104705937 976482909 20835794 415188747 219736725 520933716 85689749 835390043 770339911 415886900 20113664 696547687 390365602 698790876 33318696 317220210 879433864 152164096 704686868 563248414 603902902 949008785 447038384 204901713 115350802 781104353 880596608 382799474 329338153 736840294 908216579 83718471 669186581 289481226 260949829 729668112 800978803 619404207 861385190 386846900 917983368 832101713 173946003 226292178 521258893 479142382 438454493 449089088 930859205 743646952 48029137 989913880 210413741 415888365 980213601 543659762 791567267 210357485 8733479 766318024 606896076 563030345 749149788 655420434 848267609 893053184 966532978 827018222 622173593 446919759 23419473 823414661 121239584 526314783 433739492 158007010 791934330 639042375 278590531 297048874 601850597 829025620 662003168 408097575 409242622 761518029 366771113 200554345 611668170 697500157 307263455 277354257 61674715 572181821 757871611 538485579 572366771 36940949 219001683 99054182 10698499 296649997 308133545 601359871 274756312 598164571 297526556 920800199 476861865 95652002 79149714 256543034 198355288 279095382 772415365 193641506 527216909 212604700 928897264 105444916 454707511 941222159 817774420 845408913 114373471 397534862 437211160 269268634 33273362 392007859 84800797 984199901 965742657 737109666 124021150 87597455 475770682 680903072 224755089 308247216 404823229 259173993 146636746 423606710 424555908 717371312 308152238 105907444 364233826 657545063 338477410 505867017 872929915 182802983 794062571 167306153 441330030 341259370 889064805 54327937 68573107 250019870 820176438 272935117 995446019 850788335 107220495 902747433 957749559 928120839 713632965 726284575 549508581 130552448 75981357 331588475 319927042 758924558 66519942 609135629 699702506 268702226 492327315 167898110 494096555 480685820 440574467 726718259 735406760 864081486 296295929 517711922 895608567 457242486 509548371 952591912 928405976 732441097 544763621 636793583 560762539 567508894 308175164 486586261 63272390 356654858 395585422 459172638 353187712 434985862 631490237 831353803 744268316 973355242 826715420 465232084 674054100 632673576 490090255 355926153 170606708 376954285 552579659 456422645 44728256 578894715 555955608 647684707 6608681 826728533 946008024 173153072 885274426 65641560 890450355 401730930 329039068 806993661 235094097 99503865 672937352 669556336 814052860 101319783 485603003 470201662 639148516 424160418 854370938 982553615 5395663 912795781 942981166 202486365 672919014 26175363 496049547 113582831 332779349 411108460 510971362 832293474 755260903 817346841 696554422 214566589 402979736 92833371 925169327 675218801 37092732 6945860 49281060 482268545 437057799 354182367 629723746 645007979 22315031 715651489 247817944 3558634 967751426 544655707 527313515 188681181 991198265 25931028 464121431 839262522 379488500 929509789 679060913 540241243 234963827 266481097 308906934 902485365 112800363 502291405 538826410 822029596 840565970 285778748 662735782 823401604 597742412 538560296 243745343 850844924 628854144 798044452 475745787 918147038 943618815 305119878 117132566 671638762 539407108 648490226 275282658 723245599 610446865 32831661 788010524 786563884 237510210 124902209 328374385 632071597 943840793 616952041 574236649 246121245 945809710 663323782 261664292 36705666 36840216 24355312 232630588 107228685 243940442 896966834 139901091 136082517 764231155 294189731 949036665 525328198 225808714 678371547 762270662 450892685 256539136 273056856 600919207 990311402 714314497 868685456 743168613 173414305 182505594 82245374 337164568 990747986 460471781 318752735 454731031 431577695 574586570 251728959 762468333 894447329 788462899 476697258 294033304 379931778 669244086 948801044 296674376 461057673 407991057 981465039 944488946 286526839 971995320 378142663 170381595 293293722 433586947 712883107 149076972 467110123 571920329 309314453 379375152 352792840 260394574 183382788 649662723 43136492 339096713 325413196 680163026 267090968 413854644 1710075 867006077 830955743 923736267 202899826 881089424 445945637 871221924 437580590 508414699 73124847 663152245 645787717 794370466 879954609 556372728 232470856 387052432 213164581 191875358 637984119 130745566 421265465 933555034 36748823 847898538 786428068 327703296 536308863 6285057 764950620 907908212 534944931 265688570 571678977 558712867 721377241 118627268 875516048 843715589 782089439 170594912 431435182 22965142 379834113 172482618 531269181 87867193 665829550 238116252 754894380 173926567 403085755 466847592 249115004 172277561 437751267 597988718 598526278 591341384 104533411 14462797 815721218 679156994 177158731 333825391 173965274 620416478 211542355 429971900 266004159 492138079 133989102 34114980 275891126 386316695 202550440 654286959 160584848 500029509 394817564 965451672 537451318 696229670 54842846 132211861 569113750 765281644 668174999 340235391 762534914 955645956 280158449 275348639 979544970 589023221 36685847 833163940 697471574 97689962 158112661 420521115 761255964 787593939 578863484 702327489 886395552 711089016 336962734 195962014 293649966 761890948 383419341 184741068 575794844 762549562 614055317 893559169 701615712 75964405 190182512 540212692 180370431 808510419 391898529 750154395 741633360 899760160 799900065 110399758 270112439 27161934 490475274 47506448 646996114 555389331 776791322 635273799 852835528 832811467 168454459 849649108 580757821 372011911 972638370 782246387 977555334 475456555 324025655 779160774 59618737 635201343 254568297 126628818 726373306 596141410 847262170 300672797 711494636 884226490 534133112 589739394 419933656 441000163 76254785 868165982 907362108 230065492 847290445 463665692 196546664 235947190 408688839 446508257 653947229 120019324 46672560 105284811 883257597 536482896 354186861 31179690 446714963 798390907 736115336 388473996 820951663 157706533 358948033 119775860 570644013 239101237 864920316 806473061 567540571 455289707 62712615 301043810 600135863 726140674 632560867 461055301 865568270 240716324 770566239 977294316 651469512 617066238 541905582 391792109 345124503 631348440 81059654 653287997 921687139 610864985 587148270 542574847 287935282 867515326 925921616 463302151 403598156 317942998 76833128 523895438 844567121 82677882 132395897 787548817 195283001 993635283 920122968 707143986 181039859 973736741 354923704 233273112 654796401 398330126 199154384 458310591 683192899 714840479 581223985 96959670 145884666 963671174 652309999 608065941 5786455 318071663 792874100 818914071 704461156 18569536 595166791 306316518 127674527 295593505 892416909 618094235 261184282 564223111 915407612 686157420 952754674 758835354 146733312 299642829 464447251 25590890 513951232 829639085 18582745 598256066 870882060 852707761 489217662 361621738 9618106 407516099 434743951 514531342 973919197 368038283 298115025 140560019 604671201 305355554 750273903 907445764 36191498 479679982 585106725 442153515 796016046 490788841 253335351 876829567 907828610 287191296 731974935 683839526 217764125 401422765 175929661 766907682 973061176 204398027 917397971 217177688 366090703 904919061 81427792 86153664 330696483 609080924 515043563 402920091 368345896 394652711 211903651 418369552 709106442 686754047 156561717 913790488 258507526 825685680 148443388 465532865 592125939 65537668 521092262 272844954 206939977 400188644 713081972 645702943 162527155 966365284 100137243 620034833 818157358 580962308 608406991 15969615 492281833 927715536 115286728 562328554 188395744 442403812 121424970 149634038 889778396 672435640 91969629 947106929 580275746 592446375 395749382 520716193 441749823 33992001 739176977 679606456 711906971 62310690 117442604 14144331 497945451 571974397 29057485 737300740 970036822 340894790 948034731 449490252 335936912 851543114 881646091 576665985 695075112 299852417 255229442 533775628 241641983 587553708 727266029 29433747 504275938 753587598 557606546 972457722 694854933 995451348 694950673 216481233 481044024 449744699 695255081 850801216 780770154 246915282 276294084 559403068 37740213 308031981 542300095 942328497 768829359 257054623 24755917 584713544 105529799 218594069 320722231 238121312 584953222 937503623 2607472 220448313 218158989 464142735 973219806 235064241 556578098 164009688 146792821 21036046 689889071 390629270 851351107 392959813 26205813 12885331 444861783 544795828 210216956 379206724 112961340 271830100 831575974 697414208 604285696 84269546 502722591 712781366 351112974 759686357 856874062 158166450 332663257 281742199 192457694 301627840 202880144 721796144 176377274 672286744 137899849 976898281 690209320 501751855 280973268 154203978 8839978 105190445 43916687 967092978 296153784 141621173 840510737 909676368 209339905 79825195 392254083 903366294 901835015 878796683 745478466 408278990 908538933 196010722 172891225 557681052 93461568 404642489 180348656 96706689 686619427 192133694 195500378 146471316 733519159 76720261 645291279 462613896 908405716 56676617 100571666 731536414 347483696 291702366 245745613 752459065 870094023 464980361 854347516 863071690 787977916 352800546 261075296 549152266 241867011 365791273 522510913 788526860 17052596 996606411 497018764 815369470 206616303 261744239 682739472 757731207 787248862 562025013 231024060 193435953 233201976 682050212 567275317 874333113 268001311 9791243 820642302 220026363 386850624 705007551 388334578 844913795 758154273 67425346 263291921 435188058 8586721 179301688 966679048 729525219 387771452 179331087 389804414 941877780 337104471 570102154 755014377 466640854 840305819 475725904 881056608 293185038 545613512 575304698 686295090 460962714 471373172 405043379 260195948 700856963 811363252 217979469 42672429 996947343 29277357 481658846 616219381 394061774 744113516 814468867 413386765 777203806 875538432 353102936 717403125 77854000 640237243 167447457 456329329 64419539 941656068 914999285 317256262 36299095 790514898 211408508 633788964 306911764 868266655 737697372 508536936 854539569 464281332 392840183 144925621 860016990 956466702 718445018 641681226 546352601 351677296 590022370 559643529 687493828 769668538 981998955 568009278 868643571 863899658 492934570 123808492 575206906 896204326 553490205 481808874 871639704 692683136 61900260 166819752 432465158 899733681 143683784 415296497 19713252 618256817 812371954 583641551 290254819 692711521 938854372 235386525 256391607 76649374 623650741 206809077 516545889 617672225 588823689 331153056 180621994 125142442 787912716 98240171 201066640 694424822 338374347 330580080 81602118 789423109 61120128 949367011 763406624 483691513 220793826 91919563 504311438 511261804 28642389 931347298 848128624 413301909 261566005 801751529 348883109 777175458 82706195 934908939 195091445 41932006 284513808 69089067 730759384 661909876 640823876 144778719 381142272 686466693 425211805 547716696 680930110 654932156 702250087 421338873 663484789 982528606 588432968 119179432 988699437 700010828 884040389 358492131 715130151 435466481 144635886 91131566 71807093 230952457 862684379 969837096 599794323 729771047 634060248 19193987 964579504 879484523 468210919 960633814 957874497 48044726 750772339 364676850 708953135 850434399 554393625 538890836 404789460 594011382 994932911 721171175 809652696 387377039 916271016 503157868 945008266 618805984 303697475 357218623 917090 374935769 762409552 800820572 824362291 323902943 235257259 493324530 685145586 621011890 488775633 928296579 976739892 117258037 293709806 577523844 248351041 52937933 734215590 311302524 152069899 496488622 156323577 648099660 27273281 516007638 398424369 106326905 315564191 306302932 281301527 762220575 459258717 726317724 72862808 124523618 377695646 487814465 261975819 430492451 78017825 683419227 343822357 598655940 87006457 899083674 943061362 156044538 522763060 964117835 581460763 849484864 140203287 131019158 77789353 722741737 241834387 400386109 298441097 33019453 754401392 858377089 14881283 849395582 557313566 999435253 833619621 970258820 344632941 181846792 328459940 552482484 415094531 766557069 426098013 285414118 771112308 705902334 436858718 680267699 20293415 300747795 528012745 695589145 728532737 248296499 546387806 811525214 606676252 484880237 595238157 841202748 145784169 622339488 843457531 91744822 198167957 795214290 599592354 442367423 271776987 740599467 891095076 137524886 502716481 628791170 815093142 67670546 149052912 153097049 846929808 739954217 467174593 573093028 900960404 79047827 405705998 473996461 58406723 121443080 173683915 637893860 422457708 768096338 160965421 385747074 18156577 283950338 300711787 334634623 283819111 873268977 208227629 270340542 941143850 865051954 351485475 89598731 668560660 642309767 857196821 658314793 484368801 306687486 736093883 961506089 445726744 29321207 889024436 50883342 351722651 12798833 900797751 181672699 442261056 555758558 605164613 383303754 356512116 129928795 80271890 908071448 989250544 648518581 300375030 883848383 213902676 105727518 151464581 530042287 664273206 908529027 561957505 622443857 6507835 930129712 439690416 827034824 311962649 140524762 840240267 985702441 137298204 780539013 132028023 900055912 27700714 201954588 943106063 945296723 675006522 841122848 851324573 578270157 673122231 535358013 628676897 651856412 573376541 980780874 13268002 595266439 735539495 980234141 889638361 216241469 629342448 990657760 63816502 834023867 359054416 840191129 769775925 806800520 671874260 990616420 16546320 659895785 783042803 950276377 358237215 726396667 78356725 965855008 527010436 745330238 139026205 248874108 151406729 780427341 194406762 272507553 266236783 837289562 717950464 817139721 548231094 965088537 216988515 761306725 352114498 991701058 259517505 221150876 976898036 625235375 687559712 890279378 967319877 973442683 78634993 606059273 21711468 52568575 170280719 644979888 990032523 314010974 704165779 546033865 595175304 10370102 955327130 34774562 301530373 624546823 733930331 588734100 420229448 149882471 221029412 20779398 8602019 612371951 991319475 585421419 295129702 63606194 124121028 273234433 252887482 173115379 93231169 322908608 365203152 36039991 145495731 975217055 930188540 324684840 451847883 493175881 666837924 277852951 11894324 181653713 946118209 391952100 120793966 768458034 835373776 790512008 621359383 14966492 815594554 192185051 706153676 7559493 129549997 731694291 291282558 249995041 582243662 29325839 612114893 673097897 586685933 434627386 543783897 476231731 628989297 759970913 819602413 341914258 829304162 694438794 316119076 953685821 813674466 712692925 137623354 378206574 132460737 564151150 849704878 876128134 166947519 291986473 949964459 793876571 766380038 376741299 380750278 317227077 292583120 928222797 186249452 905332423 681057809 988813337 509825055 154310069 552965042 256761753 872060491 386489676 464591266 122656288 34578554 504427290 739362669 721326514 377736195 865214498 368054600 660352834 254307069 77711981 84852656 631445630 27701627 539036380 441686488 993197980 273279595 811944736 626110930 952995065 382509839 858573625 7455533 289032251 454590853 305970675 924841408 529453668 958765075 621755027 219502754 529825731 537202740 394285096 265545945 70922942 218440975 604460189 456681063 326115765 545281031 329137730 258011589 777248140 766435794 191537334 15449423 128968279 4489855 244969092 48062962 114511877 465601191 892029076 784843772 677594749 228062461 504289768 291718490 646108841 572627688 927251555 105845541 194896758 101892536 864538424 559363811 382256011 480407466 754072722 265443908 968528792 998616615 625717282 503183057 596788794 928198757 204294086 349329647 541902703 746641566 474020377 787994911 121826406 145800389 946747401 343893309 856676526 25355068 751504785 195207353 437681917 442753231 860339737 577251090 203538143 456992680 480392700 980460011 824356272 918071267 285531380 615348161 587467864 97036587 415912990 825635021 419401128 10288534 776719159 235867385 306916408 758793451 347679171 611783356 949998113 252084849 932779332 289554497 212858380 677618700 763308645 953951723 435581503 766013414 633032623 528389647 859687955 559408956 98453456 166728938 13585029 914419290 84049978 813683583 399290740 621816489 794228135 369015526 141510349 520235919 280683600 672411114 774247762 975194396 199074376 487245878 725465122 671014804 43723013 65072927 388111307 978291476 865597589 139890963 219862216 569930847 510129488 147053877 47631131 529953688 947604163 365003184 542443455 372548158 881952591 947878567 749420956 931409993 546740344 74003691 490424073 136156278 342711338 630485426 707813995 285342393 789457148 237065954 344947594 741466131 941645023 10234745 17860791 578983484 501563547 865254921 275566888 457977176 480839806 114763491 371387171 815339015 589303818 448046682 304820125 107958153 976172 235648312 687786297 698373216 878992026 925536604 520194239 97683672 1687449 165427585 84297188 139027491 452623502 152393590 439895503 376160247 32287730 862165980 89627737 842003905 503840691 843282981 472488246 104189473 543086376 631857537 42794292 985102724 955988807 829280126 745087300 682901722 152416013 542201927 392657558 637012527 592034288 732707110 552039712 307872094 754973362 423652524 234585075 171878994 494590238 87348567 915693747 378222570 27656397 648887659 974154939 366860295 443536611 830084658 777749960 429277418 212495956 813498105 882630400 415631422 606328855 347775065 254602361 605214982 322153126 726805263 520227204 203753240 810164833 793271194 382242203 133881479 344382100 552158419 932251342 840459714 828316638 125103933 469704496 726948640 94204753 444446334 664110538 369042181 815344534 782952286 338592224 321872275 554886814 142774204 876846680 114552221 677413564 85977644 425921467 322124825 950548363 480426779 785742915 56868477 371727011 447066353 535637921 867992379 156971769 374447403 632747995 19401384 250509390 462761577 100465031 389854786 403112886 614546239 423444132 663540781 388531691 941438722 817694576 710860409 640781270 884565635 584833502 276639555 670732219 833622048 772835759 769243057 105298386 82520124 234497247 304171418 864759501 938492493 440167593 420265035 755527526 909908282 495570974 677190359 676479567 197961738 503545636 652126667 773971196 725862880 887424761 491714618 401924163 374368811 688851478 382193106 574522186 129371277 29684813 101094838 679454979 44089044 232375187 572906016 538558301 150511974 430357940 620310489 719875688 376648347 166805967 110802514 739766956 894741078 129864330 36722216 478989692 493519145 455792564 596382937 319007451 717133109 61135838 599694547 124637553 708448703 809719912 859382340 785244598 413069666 970161052 956618550 666101675 524285966 135264392 378763717 464251288 660646181 759949351 616057352 577913225 74116629 206179556 327746615 906953145 9350157 374631243 378951349 507148769 812612951 806189927 696430139 267101733 774618546 297042166 878454507 171031287 266127176 707600972 266449572 901470388 724680870 54488138 763716365 426327789 754664204 948160086 897602848 846441932 884766510 6039175 366513615 13068876 664180021 570965237 582585334 971576180 243637911 394792420 371967643 237920246 786848747 148544898 587495466 423079445 603531389 654672539 993627293 754217785 158632141 348900762 789600012 872603375 530595925 768619955 632433691 256591642 654846399 484353236 92626652 641343322 644502910 37680012 54878022 843389703 64119053 365316402 507164232 931806856 802524718 141252890 621125719 893684862 768878463 249326004 560052614 493361537 374783808 54332290 188425374 299788659 600232561 207082143 24877332 786958382 676135652 160862833 383991788 193368704 541713019 281485866 206754116 573047397 242069924 939713014 393145802 622698063 625429888 637260467 462626772 570154114 635986073 332163066 27506599 551210723 838597253 172268366 958850167 125269445 568193292 983857039 741000067 869189623 68794 426817609 380524648 372819899 189768632 365012991 779614017 317771267 864269935 386742632 313442765 150728993 77817891 590562096 981385914 789038064 458700060 208496623 763763340 77785174 698717120 322699689 324840560 336200236 235830467 225272986 469912124 589260067 196243578 634844059 261379336 278190739 960211807 265761480 879698558 638491764 536290505 610276325 579137364 957489284 609765254 437177381 60707653 347472116 528477232 604014738 73323351 544848993 743119572 55928009 132203304 861214946 596677189 719545607 979764880 78297435 240555545 131224660 111521233 647680914 395462633 822251035 145938937 94749432 957944292 687203085 267706649 974109861 853743286 757763367 537577465 151789122 389273823 498616756 669699071 433693123 117677633 355468615 658596192 749159634 285482129 929750822 709135864 251076932 630037407 592327796 94988408 20958598 218665274 486846287 23417533 393024145 626578460 90582439 5024562 364508147 553628516 18237986 619101596 463893680 314135568 843511918 637614388 20624175 646882902 552201687 104557382 817310592 463386743 972195668 596718085 295386181 796277089 194523730 348168806 175755336 571669946 549630677 679163432 893269350 804314573 548766793 264503932 73925125 775484581 901289783 62220886 592362393 549366332 764046604 429903581 324533075 287846461 700659993 844463258 909393179 824748158 604097710 474382870 249611339 530603921 297268428 604267068 949772769 201655283 741753614 388512837 777731010 251986911 632622273 157951452 215913532 694375965 54941952 826763872 594269740 757754257 216287046 474862719 163032764 137765558 374746054 205679371 450442807 165639148 896031225 949374164 285739949 191852741 154512154 1993812 950832228 606003713 518264610 621725841 659360773 485888984 601038395 457905435 394074533 922995978 785491165 425845821 463161405 976738668 530618047 525495213 632761007 787209633 521703541 898983682 640935549 349031227 400962243 132910536 243593707 293285062 184110064 300894387 567337397 894523061 435949099 192305295 691361870 51156792 464111972 918585931 992162714 420442758 998853379 877939180 134724853 464798211 276177084 664704643 145828619 304327162 572138020 330505645 6680208 29648210 784072270 770969291 457349056 743966679 654146177 283681770 720110504 388774170 180076536 321261528 175388776 255792389 169357916 303564528 831666907 124626642 468798800 806001843 214651960 317022867 22555517 753035771 559629101 125535411 216126317 220816653 413191372 827079609 148986373 789897060 322482483 14803060 652596593 312945262 311904551 384387494 606131419 522782801 91730866 107540080 914728346 474575925 283290008 615043645 266214648 748726397 990617448 643495424 506201633 297757620 117486772 544272361 41522905 335447270 280471271 328409922 748939794 244019846 490197231 577716085 798796206 347820852 733100174 475750389 446432437 786865899 691151535 534263234 589212765 162476195 80254337 33772663 522181816 957486381 132488002 422940131 986529038 313567082 922151997 685783817 972029428 826492243 342892624 65978109 140089620 141350524 311964581 407591912 810178236 710511575 991576891 71842890 580797593 455644126 587595551 435730126 596997621 288883421 256952394 209932903 907841925 124009403 287796443 345867313 998247827 437557692 827365537 215416202 703809223 91637426 373180798 43120030 429726301 739140127 211201322 615069668 127682023 229933949 902201064 331778989 863337304 379620717 294536710 243712348 823685576 43615862 73889688 975660630 208800965 46648171 666383327 643567642 827952888 345482769 166952336 902101446 183205929 896303456 977779232 178183173 992837368 903837466 46644193 719522292 857985731 754605551 318304593 279317385 422662765 323626851 960593081 512504771 723132658 553443371 361995104 341786527 209505725 740443620 939338315 667909844 881806613 193784684 154861389 675216925 845786892 469740539 120764110 168026005 230837354 663750571 609273031 857218642 669732860 502946785 127641161 605740493 723493651 135678956 661505321 861578712 666343377 432102232 684393271 209703355 997250526 417393117 281416254 580186625 337247729 863749964 215413132 587742857 14177187 26915749 284410775 890331822 309684871 453436407 825402365 552978038 187253102 778772738 708340062 398718074 711123457 775969847 115573918 449123680 26144620 398737162 650064086 773637672 805775433 966239493 647087302 901032994 242503222 187506852 98695721 893194637 589678634 24568231 312672269 716015911 306029387 905380341 795468960 239938189 398004139 357067684 882311835 897630211 883241664 113497132 463705409 650844748 483187364 328567844 705419140 20615966 523507318 215191784 866585185 493292431 562352343 681803455 835414896 700222974 30500235 147106495 379730904 663471964 939102840 504553355 586343868 738057045 259152923 759693999 451465410 268372529 369047182 792661827 931739953 665730059 220530150 792701051 279615702 70701090 324553352 933403939 313731785 385393436 81627528 542190199 797060908 64685842 545854350 590584506 286918479 765187004 792401408 217610288 463790979 453327207 224008419 406805534 216130918 263779815 227491952 662588774 309198305 217161535 420245437 320485163 824609344 825798834 145778649 705355024 581485147 755277839 62128098 939394522 818982170 712342204 719318578 904730934 930652326 355638210 571724107 795859615 581209240 852909329 975265738 686265763 37964000 1423365 776110480 150536516 108134921 899155853 440026260 332825699 373011233 973113743 460062136 89008358 937510055 969775868 57987232 112352758 137756913 600773952 398887206 335063730 839308396 239426118 882242864 461560832 69829120 35383441 306403707 532089990 20035235 440011664 852852361 240387394 848806687 703612908 850818093 148934224 958944522 188412773 69471209 626943201 225408979 590573184 394584658 125841426 551062242 63362587 179930260 653655721 959302100 292437636 287875783 636492508 895658399 115504154 62513405 54021340 200523356 502966702 505848850 303384209 757552386 319190327 842221296 312239089 393167045 371201505 750674052 30939951 196422155 497700900 606608683 425078495 206941013 576034808 195013748 911575402 886145288 846782917 289410211 636455152 455020551 572573901 905690715 577049475 56238333 174429676 464240283 218946066 139470884 559420449 42080674 80731053 398426996 618465811 812386095 352956867 83929646 268327561 458212312 748254216 190513967 324329505 641144004 371557018 740857302 719442220 722686939 321623441 29961486 895271855 819659607 759993375 923310612 169033329 766156488 955048491 284441081 543301877 18452014 988373761 21977346 317015894 639916525 249918625 299981032 899294255 525575087 832474153 435592014 402085934 875459802 417709232 22860899 769634348 69979022 726892717 604607746 460953483 250555096 771077212 839869283 994729965 643716698 255687769 393708214 415921836 250190623 366137951 776580323 220442541 61113562 984471319 267357949 372138617 611791112 323368950 148139484 634821119 224552679 783534872 373898735 446845761 70467416 714427674 309412779 36795943 390189734 666499068 915002557 198811195 85670598 7383840 483251190 361079818 987491469 694838092 66498137 567616422 146506766 978301697 257656282 875491746 395631174 882164051 384815935 815638658 910592392 72215586 342285393 426898570 412966499 279894085 706758336 153382787 839159692 246907833 674880514 98562464 25191759 406617766 875175234 504656300 577713748 603907172 420878809 906720207 446906324 749947645 185354350 147756029 267272598 298002764 358912511 557251149 548281203 432353428 237069347 668423423 283177208 698776632 650714792 667163899 410585670 873682788 324789540 394524099 735195430 65571336 28719005 220374038 649074307 993723992 569980570 708401464 843394346 947283851 537977749 144200826 142422222 2765885 762559003 428443190 959279618 895044837 502313976 103277371 343399737 311876130 58876263 898696536 32022626 384589707 194871290 949405770 990671412 394763198 326231254 444646254 107826377 890688136 536012534 772375496 327076450 63346710 744615352 132580145 76009878 55212222 368118594 989604685 855286360 663896075 234846548 26786186 863174235 219875145 660007559 352868084 682468111 555964783 643348777 945190093 51978390 501009567 835845766 793627245 626610843 56416021 163046842 446967738 424924014 687768065 871580377 516850135 66258349 152859099 222298524 149038089 908416709 308105242 187663235 204159496 943139643 695149695 944587341 865107958 974806535 484409440 106218422 320644288 264006684 964444390 658816997 810509349 25593532 223744745 593334013 563949441 597092561 219153081 370359029 634457102 503899131 834070313 128076247 319257084 890081007 396952234 284607872 536079195 260624365 275853499 251178104 537045901 756673057 681838621 124093180 236171047 484225473 66164138 414504146 627836296 94293186 595264280 705359421 964532943 309973943 733320268 316294462 596935731 681758367 419187694 364023794 94087777 968003845 84500123 313888351 279737780 992749545 107962897 485133463 402991704 340033934 157729442 786024526 21631538 543308492 454039998 463008822 423936379 234210351 189768102 772158935 802104799 44027506 523857099 953090832 856436713 367332867 621168622 599629282 412632489 141624529 141704331 453669897 795292792 20119351 569079818 292883045 392269154 793058418 327799502 911582149 844380103 586428843 630036680 514986251 87259395 818609296 358665939 942550408 20443102 175896641 925744139 826937808 655365135 897089590 195459020 323621843 636427120 226647533 815906655 239592379 485196112 990018979 979082535 53720257 146613494 240031491 431122777 128110685 441190919 889912520 926741797 275199242 597199190 113284427 949088447 941157076 152594579 824265196 921970258 596791544 50993445 824729405 600421475 441520353 123421652 223674074 455275297 846196626 114009587 783201362 454157856 907008385 830310179 330834977 308247384 481336151 956026726 626982066 988013988 573852582 143047430 656792686 467087703 448328317 786284712 419196075 295798112 495293024 629056167 827794499 943521260 491096522 765711476 396147630 13419593 545197392 977912953 56034081 819205843 805121504 469408843 964346947 541545776 923815404 480838863 560887606 297725746 148388481 452598339 879968008 917163468 396929163 31821566 165257224 890386210 384765133 879625329 195691616 442538596 847217022 449595150 140569154 188701724 684764533 495801854 649318551 390759691 915527602 704072732 63331823 297497880 839594329 347364881 868665381 703738424 60239700 320489785 780160849 660786568 32408937 711463946 767950445 56793623 759318048 995444392 934701160 685004527 590464466 472172150 52977041 384772093 941857127 157991236 919908655 62118380 872465301 148638988 20007231 710344049 735919327 775134442 848372056 341980618 825781296 594220580 33693938 780467388 561416470 868036883 830787840 25190860 939382672 158358625 250930104 83326890 217711017 76933023 239519080 875924779 650817788 280978747 486327357 519877561 29536307 653441908 516298762 62978822 176049784 276756391 115008463 571990932 778507889 144183432 649347549 908487594 137192377 755281513 771424466 302864819 345031221 457906195 614454953 550369993 710466879 212632482 604098582 420308817 422127788 645332078 25706146 48846266 181788792 594765381 348649245 950552298 112479540 870243811 752474265 437003190 739496990 249623935 591688600 461145655 465979327 629162855 144256860 203236082 951989564 618133659 290161732 435154322 609419759 985285583 66343518 902795477 822953609 663238185 91027231 820066854 136790608 149404385 241419182 842990180 937867591 421331317 172424785 700300362 834573776 340926931 396897065 944471342 683195029 904247405 41829152 939186354 694141808 846172489 26382771 621134503 923793741 826399970 278401704 769873791 589293515 471712761 934199107 203131803 266909048 220446804 293197123 326975126 46876258 550435853 555591840 899230391 184221841 849952257 189735323 273177857 217718547 58144455 128607852 710134635 974771533 246346769 510629391 350238051 225013481 999989564 815507882 399807896 695900060 375734270 688056810 671418072 835882986 932682898 994648173 43814669 85356509 59408118 592480055 885625910 880897509 417262893 399051952 173079188 985546154 8960740 31874100 112653761 923910185 200818429 542637972 395409664 790350032 359445704 418881324 794666182 828337955 220468299 92093668 903019987 496553204 409232626 650653899 709799908 647538490 346643857 316014839 585246458 137624199 873832758 848702600 369925148 567682895 197699759 550599256 127711842 972267542 331486468 79200408 251655156 616313424 409299059 690061488 556305908 105819882 620780759 454857226 377623092 353979432 967705103 569066648 108186897 250272379 409414013 499001291 352155659 370518336 614632826 536663952 701902853 56998388 524317131 301405555 853304824 820596358 847134728 923105730 591173039 523369458 962004435 194757049 421888364 738856354 575415986 268193288 547360295 924083767 129406300 369419244 838417016 527747638 31152784 982496788 82886780 50899938 755954692 797301386 462739150 706079013 126786445 689253585 486037012 52821328 929315544 619715589 602380759 993550819 104727936 425458100 139637473 710952197 20230316 300821185 662769866 646311631 810107029 602646531 972295835 998011464 463871682 762575832 616582608 174381737 317885553 446425311 614071644 152155870 937415695 351982396 866557964 930805704 746676042 718598638 316335015 916114170 195811974 975551816 15447721 766512696 597226815 178579979 884519850 645626805 832591206 240044512 255212854 79436787 659624364 579299765 424434240 112685924 351126563 857248690 290170503 918967498 873667694 24623684 814228997 101137169 384636421 189866652 726914825 336876068 828663330 610317760 505513438 594304507 139582596 497589630 414746923 965245746 899001824 1082938 568481684 198756406 238842421 43404059 232682694 22050628 180599275 987019619 949557757 568564039 425985822 298716692 573557691 425443681 577234939 326619846 279421071 677037220 608073074 214226380 578690546 81930873 775635757 408106149 496642817 252780051 713698434 721096552 481278567 962311224 975422465 222475573 309101452 371458379 427442080 371120958 364195360 162566626 656974555 278087110 126578974 247478000 230105680 253395036 218822394 800692481 601760051 124863834 293360859 159479561 952475329 889492734 709471967 682627639 68663535 925617031 613528889 133330287 892813245 666141519 862217631 99629176 930656649 869239360 37839242 665248116 79637477 295116308 617867032 305961906 830957428 331579453 926115104 128847220 891033049 884855405 702167445 507583940 959759013 202035097 166233454 716212100 112805262 528717981 740300578 572836416 723585190 526171574 169151122 828987216 440422459 373877425 334038784 889257884 366669883 360312523 136822198 474333789 566683001 689125541 972617838 72853359 361341797 164484082 919774558 880960691 723068318 539659877 995792270 437630407 748961197 125234221 645948417 362996610 394743027 422364743 578659662 803161227 604304863 341212089 719257379 593306815 852333323 114334535 473519052 625231268 356654935 674024752 919072880 53723432 275277612 320807690 147475474 24120448 473868894 987102808 795453507 307133588 813860652 131048908 106010736 739036433 741732564 2548115 543225701 537762651 819662471 91178135 584714394 767721020 538306051 433749212 562656895 710738420 399549779 395943241 133280672 600201435 670056246 785022167 704579213 457279963 575264284 25258902 415556270 648999280 273441978 234187063 962717799 60164652 874234592 141379577 727269704 672969901 359864574 318899823 13564549 690383228 145338516 800208747 611358259 232074197 801292175 269564918 611917951 31366437 536913228 213493376 112112011 39762782 115878944 307444898 750888487 212948405 460137728 768622575 994340616 375540435 615172870 440226830 864642708 749458549 265094583 266014201 628889613 481051698 828534294 165966064 64710141 550674795 722816439 514902557 994267171 173312081 687085954 583292173 781162006 867327976 343156760 345730130 23379499 145521137 537834450 322139415 50688696 379946337 412539907 860406801 455795466 338475796 510081043 539797878 358452326 86095820 41746289 90449558 469460730 224750089 541800389 13595444 749225875 787330809 682904931 488750152 298797783 473832221 435590125 64043514 810050152 595897612 948808217 226437102 149580686 870035523 317261331 152966450 655881110 222665835 582728018 406887291 38468928 59699494 177058597 583477959 138361793 2469946 62396210 617512318 94753042 538741340 759236382 353379237 921637412 128927763 573278177 582500539 702465365 771258530 806605544 398026674 647361330 21621142 970794159 676185604 317199522 632320693 936976339 466151746 986015864 260898673 630045746 26381983 381421309 381728395 242413080 506060620 710909532 493937309 803623073 267953479 856968850 114794592 636357776 516377450 705453032 303188549 835947306 265112808 261631335 772680684 988396043 144120211 378573392 93890115 826503417 554977822 674911384 58977256 691416924 328428977 959735389 573851382 602331246 660636113 499018820 22883911 314893851 782567686 566899528 136660500 499423147 900988858 473232985 784113836 219121432 117583165 922851549 850264724 665244612 556625033 943602463 940150115 966097472 417935771 364167529 106164553 72632272 197374789 133589763 111855983 501105706 858989805 406883371 29202592 125240157 436437057 733635483 617703027 388609179 646468209 590072627 139082132 69550660 695096271 20886047 312289964 667742869 753425794 69522892 24963507 999829047 540056380 856968928 302965698 391613527 792452931 198102540 270377471 32189469 896744531 757124945 760372444 465441671 500884969 884021734 619510481 171829626 747363377 85240003 678592808 194439693 503992477 605825125 407324843 923756251 240443461 229779534 142650536 789526264 954973440 989649354 94923900 652489721 782251985 769730801 854219306 325090892 674362239 744940775 715068447 167045068 696150136 865641438 824931246 266569032 120195630 934131609 627402949 149692157 754033241 396631896 532646813 554000262 862339591 914935807 659822934 495613580 163258839 523917616 200995190 107231157 502541467 336689910 795673062 99213846 833975583 578125700 347553816 417448052 715658090 456172701 840269273 510732885 521239762 339654054 994113116 907270290 671231214 657886148 862286777 922133449 400317097 466475534 328560004 331952293 304723347 576647878 438497316 641932674 193148374 246062610 2736527 890474653 862513620 12618360 178545387 941288907 686656429 125694583 85791616 339924617 517015800 425999925 183316401 141201814 625121249 612580285 952658016 761790604 366026179 85339737 816700464 497120165 59375459 16233220 158054575 396494306 471698620 967059769 338467011 940027536 864665297 525500147 179526175 453522581 883546554 257223445 56152753 785182072 650247737 522840120 50741958 989667373 917469893 691833308 166313111 164385093 785607961 218649371 247769821 688529716 167557068 587214102 784142155 513755395 146785386 144024367 80018202 101580214 553961068 474699112 712695670 167738434 961630231 243807468 614121570 719840173 48078760 130824486 920040183 847198594 279194433 915365056 801814056 769396429 729251951 823370580 366114085 599955207 221127808 691945858 315915958 893150091 380291902 567016279 238661198 959077999 2971032 709935581 161796673 501187888 315627970 219194630 871839417 223981569 309564731 60028674 543301937 974197565 644703226 609775952 200013034 907344424 456860326 292979480 447121689 840649319 159694167 106070651 328477817 26800000 502502717 268204889 335565591 813566426 559163744 94458593 757744506 941574734 219444698 770464645 96547676 275499147 959441549 477636099 360532779 733939175 801564936 728914258 980477064 308076358 294353558 444116712 236007949 531476264 991533898 613134508 214178683 305060042 96464253 174209932 789723339 141486085 214246218 936109644 578509470 842247879 164425513 404467705 295911589 377335570 743898412 831644340 201465860 829202712 828659025 154081922 391978491 975269226 485306691 994127505 475096401 596651002 44854088 184399796 301906355 485122127 779392696 194535957 217276610 630252495 837164303 280458002 423358141 233124546 130229655 530928636 990848327 615124293 506122995 166571895 735287453 646463969 779190002 722089469 89135920 194763288 276997664 406953700 687056123 795344494 485630149 63110440 235036979 8035210 306093192 91485481 489921343 948957770 467959424 615635161 366724863 452240465 430928039 859240811 686093120 24657282 962963282 418143697 496625405 432838443 673636664 922719508 243264960 70277734 27566738 753031617 68632763 523423791 261193179 407657516 975767380 183282919 157242800 113420613 654094672 210303827 261143782 476056350 21719549 88349857 880248204 200768667 773547736 828095283 454157935 409885362 986347043 780701975 878705679 671141734 861573406 186595651 372363447 902657603 406489984 489731489 834768223 74873414 399301549 758271867 887855960 154814471 709099731 521356796 324636971 96458905 895454332 577451817 683215203 857264273 412378941 861321811 807793190 507117071 558520437 543025260 324341117 537786978 35279758 812120730 406641412 429114403 875869522 767234813 939980940 612852110 73953513 90267148 948613117 740529286 493330808 53082797 83186268 34728166 642842214 647097026 851428960 618091983 95539051 306340337 624619043 11206015 737396021 91042447 431821604 947948198 24022386 397630049 123454015 871367328 490221488 483611662 344210419 12040956 585732238 826741982 662401745 747016465 189517864 787407790 378522623 797216227 396944297 227404024 153265561 120210162 341168346 191750177 898288925 599765058 655388064 35567597 806970995 130592249 418426401 422979837 360318928 906866272 559214143 217669056 385459637 165128674 616139466 55082076 819952203 759808769 250651436 846616386 489700699 688295859 476859259 660977501 675452134 519654012 334727218 874132032 646141462 469143727 740964446 917476068 316806332 445007088 335451837 985063070 836306855 837257803 57931881 562891427 625258099 806863626 168094782 635218674 346163308 466189200 561852811 183489357 895239784 615242459 162678620 999825980 297980968 417287502 113986049 949770829 565341495 391596619 176320611 658385676 663355728 51154089 962909013 967233808 708927478 937451261 821136904 62160571 696178901 390770994 789603084 707378938 582442513 305164795 420948013 613737686 815169614 421598948 738277780 429281694 224249099 578177211 977992707 274666159 641464473 249130982 731374791 239708601 862027041 424608939 690887585 431445380 179019838 743259153 454410686 185308942 316492866 218145510 63261897 848051432 685702928 471435862 402490046 173834046 1582584 121666818 880547230 87870599 16925339 426521568 5553378 529633787 761504875 97150889 634359236 634659762 479480519 117622614 20400543 753035246 279347583 523646029 500451103 857328060 549326755 807663606 485600407 661855917 705095402 806410039 772808109 144038537 501083827 274355778 312062552 748662143 611527056 78573979 234927448 101848483 710466904 191495196 390015104 615188505 737983685 698603051 294885917 601352465 143825349 973739283 151942269 42631272 721753691 549059693 121214315 947053275 49432031 187653394 501038858 247154630 917559581 273978889 804908703 528738225 303188525 437327451 307561501 66906 748411722 843049378 175931056 24212774 370984133 496380555 177828044 727648520 159730079 457723220 55826742 44405181 83459676 39865802 912184929 554744264 459354371 903195792 220269644 18884012 433724547 898949259 500738135 1718631 393406991 211123863 539670894 322877565 914333100 126962722 189512034 883784068 268562734 987598367 784724180 796552481 329195190 443419252 525206749 968194108 503654872 765239674 360604351 793383373 839160128 32138013 621061675 233149165 610479743 659025276 188297579 6336599 947638776 572642731 202748360 872412552 639273221 68341554 932233686 96693277 881625842 226463874 275977161 647254343 977362606 454243019 339428146 515612616 743727035 916756941 672010121 875879642 232890020 242149311 528445135 829057028 368016670 844176673 599709298 635559804 808024311 51162154 660546074 460072129 53704012 203491789 946684692 870003967 678350510 479934182 994723882 33373263 990061351 192634076 44310327 195025319 394802292 501760962 29592610 342817414 395943387 677074687 737145677 148611108 543476847 954830226 117480662 983079632 749009579 47408039 909525261 494665544 8461856 852615052 401764283 633266956 149638114 782022394 586121094 735654988 925623008 880209847 244087383 660526070 172200352 663536066 38143463 377702033 696450637 740272884 672079118 971465456 645823715 588478878 844195723 344365617 8346021 745861203 617599126 201986988 213451463 629680143 353039209 732686836 704673081 605593835 571647989 856207276 222022636 965291170 95980304 168716377 44066110 979774565 614710035 24124679 545210015 828027811 435697509 243257467 713047094 756970634 922217372 659128051 212457866 88621822 59907086 893659469 554870268 153604117 166466869 980625487 171780523 388716398 431955392 606186438 41669989 561382644 218103839 3526700 900812843 243269298 158243666 399680077 409720594 855933889 38750971 973007778 150237757 349456206 782033351 811239531 299886686 617919205 712346754 996770095 788541562 372779818 589283552 927993231 572823190 310665759 742426407 345793392 616830570 107888571 413827078 431960338 247086358 292090740 348040724 644782373 31598968 455920752 34189464 394220691 94832107 636061027 221279518 501629247 476323788 920477784 730116095 374726117 815519314 716979638 597153989 545525886 468364917 885130542 208951251 485072158 313897145 826075205 441673051 897990587 104937047 955395934 526393761 987308629 249953031 562348670 109621683 188984488 88237330 359302276 600655186 785039040 540787685 158939284 378201197 353142317 634981490 897334869 27518806 425763078 913632130 285492508 405798886 483991877 668845271 984082711 938088524 740511586 439519224 728410633 982960577 369318098 987915027 221288447 665630336 598339946 352777013 24359300 960049281 969814396 839915053 511921117 233371645 501237 256563898 327859383 930194229 14637098 658308239 245963087 610680531 89497618 42317916 68389257 387702414 945385095 98913613 377175296 745845493 475549785 701338311 121368988 48192183 848872910 858030448 672078776 509324616 918599953 130877458 785166694 410172375 373334131 538399922 239416363 582451426 74940953 750491735 436714824 662858699 846057108 956143032 562660841 316059923 994911598 471636735 458441823 524068278 777853912 443989991 709156833 381883670 267634419 959037379 643138463 5202146 743366698 638399145 736879778 252959975 838709303 807575670 60606345 44033192 843984963 589441786 379276594 441796630 823813303 389152682 197120474 433408151 105237279 136027568 384359143 631560387 542037319 347977028 233627049 63161923 135277794 430579945 606744372 649509396 668855777 988881138 79536262 953647148 223713452 533885706 627876977 360856974 804519783 887830279 131307664 970704407 949406804 680324172 876450117 325402683 614976001 744233193 751296666 683208112 731315520 460452448 182530366 868955475 189085308 464686438 416060900 130336863 352226826 214582653 243920895 859627064 32854522 385672231 824163127 306754927 130274151 486358734 943642729 836029954 757713577 972122134 193253425 737871863 97367727 131425292 972758081 76321252 484551872 544889538 284787874 734633279 712042345 944457222 495426013 906386895 358189404 955348872 528151330 482205383 288950721 841089086 51460624 926908091 700438473 317038776 578757641 223147316 566691442 870823391 217818185 344881021 744977584 271980366 639422581 474450361 587875488 942879844 176906048 595643143 226240996 632385897 728997235 340731862 876083709 225971780 421627735 201111379 203221595 683612606 579093351 166157284 456744834 625744781 433278134 616222839 960954799 380698517 357833312 285470645 318254143 705083613 492392409 248166610 808296828 266621747 949379504 540352207 457016298 642830476 772248433 822285761 91367850 189467941 394519936 479187725 243623218 779005286 547156750 64930354 860158936 949304114 341878746 600866489 416313664 824395146 855055034 59787446 948740314 273273188 578026963 908087214 257993804 633797752 590361137 944061887 504173111 701932980 274451774 229964142 183452060 480529287 76553224 409910734 735588144 883054961 253776297 580196991 82442926 887729070 571691830 84209222 91828090 270518020 911033059 471198142 714041296 1022034 149407838 864105778 538993492 330968871 577485095 684591151 851531427 630521285 260384764 414047912 74214872 100995372 259075847 79701303 705087577 4160451 368761028 243459941 402752779 730176901 214849391 989595228 504626005 81473915 107120568 649910345 869583235 294887574 75382888 592387091 931663790 396580618 140135576 606243187 719127916 840166743 237152008 796640278 604098956 39689256 21580216 513758938 565025793 13315237 521551376 788351759 547172507 893112699 467161750 884417956 859039506 204370972 740853647 209056503 476240459 200624628 317592921 879907118 750130412 991564422 74355885 533796495 689905194 684206006 583710974 33712624 921949791 152952344 45591409 51210872 584910963 47608154 41339443 287949447 626464587 515080645 263787379 898470502 81056110 185389427 462454592 902382051 404091273 190367039 618357788 794267184 541987860 497353731 370392211 353537489 327257752 326798187 624062861 322178671 84679208 229131108 867729677 24978621 913591579 85113892 766517266 655997566 667210183 903398221 725086310 457147434 420242011 688008874 410814082 779501898 20677686 364280610 471011577 283122912 139909150 925841952 432317752 83266822 373963231 714797898 351855860 695574064 470828093 197825459 954476988 961585841 450434909 207092302 855585854 408577239 327284885 260728195 757221562 901598522 456147209 335274478 5159474 40277777 161510147 143382504 283594012 929151994 560529564 116897192 90983566 224440301 740470567 172694936 399967995 497417083 753204632 723809320 436204364 841699262 279679448 275746654 344427081 603915079 900891296 820590439 34266684 137130189 873863471 50557479 3501374 194944691 264218875 196644211 300598114 516771373 728686695 488239164 946202115 275910439 44435825 719797723 775547426 758719378 582293597 658300958 255933503 552002014 859907789 916083160 520930605 445924421 942504959 801477738 516413244 626357384 895529802 374577526 30560110 443520230 115549102 657519070 840758075 712542692 609337792 349794490 994799552 713015179 497705148 919092347 906183458 895953381 693502712 729834802 49718516 496086720 464682520 139521078 923980522 493994697 138296769 641194224 941104208 569343936 500040320 287137750 754116202 242539935 404640792 908095419 541339061 860242230 366467491 689389587 299405500 515966648 779195890 687833254 744357472 513011922 436213305 478800779 387164641 728194992 209906558 842142063 23644705 768975284 923629771 807661559 586775417 422771901 318287763 82206362 104200207 210326662 95542604 648979431 367036654 53648059 325079522 984914747 890432911 355537797 642983903 130279447 711544559 917478422 397636619 787515193 62250892 984252586 378996263 889245167 265819583 528265725 220589183 532480300 377002273 424758947 298488379 894160069 550143804 914668218 855570762 569792016 607334631 750511688 709234365 210652754 245748851 149993309 690368902 780589641 828348443 844658712 465354761 241845236 983061878 107924318 373516370 910950483 721933667 738046666 268177862 114254600 777224013 357952752 633937236 325809557 512060600 740429835 554475084 156416893 296038077 386073831 18712215 788594654 421058276 340106064 589979238 702446820 2107102 860551621 817953627 166848160 705581651 907706093 411395818 253364327 982725723 126789752 972481911 64385392 14838158 446542489 42944223 17742988 196282424 37756222 380966101 431611568 18707419 148017692 647791568 349226785 639208645 409395217 381711071 673445203 59969500 302848726 862003470 635235793 278982596 584240502 182960073 107994553 842886910 588258886 262495007 174766289 974932468 391909536 557139899 734438677 846755414 20893989 330750346 721704135 757635470 59536106 44668475 365862809 895839897 858725710 817614535 186248127 519329549 519771229 692454522 421606936 568751581 809787948 339391813 345046460 535125962 752465057 396614323 773870811 847185202 873395531 790989749 596796268 787070673 166920685 742926948 140014857 845412395 344024284 506365516 976782284 769002642 694079765 926249145 170354905 879478605 95849715 137174677 506293122 948076673 902617800 688512819 786100635 114319595 830598778 589991359 943030342 96704203 118611581 614585037 6929209 112989275 311662161 14682769 721897010 424693933 407030340 742503176 649511844 406965294 500468117 480897263 785615687 799938211 165433938 448170150 110913630 650653990 692960820 572507150 352274168 697470618 343905042 309147622 960050276 833629129 878714065 733536729 101915184 516163025 277767761 128742509 719854561 627633486 86815632 420026091 75730907 384180825 406424350 681551896 394398589 818055528 951620239 568266050 104996074 43374468 712912466 199506577 270319216 864046547 269517107 430734600 779245229 622173792 648263699 939679327 514252277 851645660 470144071 234102464 256575816 447839490 488766720 533641323 427439954 693535565 943726990 751427782 949919033 821906205 988054356 320943302 436748535 710369318 177884363 438565583 740454610 928798143 74792886 804246410 558732749 361287761 539311095 221560063 795566141 174613139 498263368 944617871 288272823 649847782 868372528 204348774 923218302 613925227 515420159 276520285 276538585 144090736 971742619 303297447 761383090 924821439 905805959 414346407 197220225 325170915 864350810 497401728 40611410 851192764 600033107 740618838 164276972 380402676 677930324 837451287 229263788 792818676 623890287 511860261 544187722 189391913 467328799 157656381 767791938 54795243 455248726 16203907 261404324 972753726 59388355 200938506 197222300 457565983 547350773 489162067 352716699 830902180 759045866 464345558 469949037 941590913 145376758 136350766 678974856 916045035 836910588 9049940 694188486 853351495 360887196 764607077 961706413 493137886 598832580 19133892 773280739 456318823 795200001 316731303 893995446 548891151 330610769 688402867 279031910 257008082 81052225 689970825 667583135 436134341 632442270 425920916 72306430 367436555 29956611 436021546 404893346 688930324 340095175 637154128 554465428 265429146 252741038 188050228 831767011 257132604 287206373 864163444 598309198 443096228 703908906 674693270 7122865 350045407 140644989 451082500 979235246 80880044 77004546 575368109 28135559 45157283 503429177 832328467 12645623 868217943 467505274 925721065 813441552 581756634 642456446 997378093 908015235 297378843 322985272 816302734 912600635 181491819 821674432 931487149 523286706 249594538 553761204 659058395 756282847 979669435 967829811 463151028 731392246 346060689 131025267 54661331 115300823 416256479 925244549 304024695 127240992 216166765 403910511 82585404 429836679 720592467 5186225 422773042 462649291 164496941 114484410 319603928 455924764 93275128 958861011 612401367 329957814 3636748 125239207 676393318 906581773 579288210 136615220 900127278 181211071 667352922 31281987 640759389 356777791 451736062 996705678 158397173 284400006 512623996 498167016 266372973 936331963 831627987 64777368 615324326 509273608 867509992 225799172 160992709 378183725 953976516 916544279 783930252 867721447 953453671 775174619 26530052 596977952 84687657 735417644 949025596 619898254 833398468 512785784 268069489 100527694 10614318 750010348 891617073 702754929 791221155 24091202 368936674 10937399 848219213 9048072 224369315 740454341 496911161 115225405 30126486 922141081 788723052 117740034 405301292 959642158 113326536 221406988 674360571 215198474 19075009 344796930 240073734 793360435 6113232 601166404 722489732 891052089 845209642 198841289 494041421 761878096 63002274 253354154 710903839 491685488 758030248 900225054 745085544 809082307 848989846 429713520 605450727 332543951 543482379 573076855 833535177 922385812 363642290 93059236 766837662 22915554 4214081 965259053 999356991 317769918 92293929 315148010 166751867 141143102 287605870 464788671 762677457 376184293 78193018 426602152 131466150 372001935 657594077 280250770 475737876 538912967 907156654 308755845 292665738 975567850 282120831 209123748 717623097 650788746 591597116 826878245 540105873 80136891 953317866 349865454 797036423 994306359 994401136 471391346 924119889 68644690 189571891 949381289 971184273 885436267 918799709 583374274 244416051 571443339 886343000 242172098 535504595 552482239 719291890 649535691 175260624 825864022 634650068 766286943 792595880 89878423 342287171 246468639 185367058 538843829 828477198 199721607 816737308 759888565 823171833 838904243 663216731 413583679 294660968 374744362 740495028 704844600 284754378 613080027 80386313 771180422 923366701 418765803 232699082 935292085 412155882 673574092 697659747 889058092 646211288 953237349 286977922 168813449 810547099 218061914 560082760 29907066 118450872 144653320 143115388 684384777 19863292 6160096 227938785 475684540 905198764 173661687 187544012 850569826 992130002 543699564 808949130 795970616 854198577 158108295 202270948 661574160 403802493 444258052 851615267 344923409 781063672 561394946 928547836 169680796 891804039 870166249 900102008 183697011 154042080 305052353 755628749 943097027 56530494 736260152 599691830 728966864 798876573 530327841 277706427 155385284 324302906 515859454 851150076 866108016 93010296 804983521 457055488 286960093 73803161 493973344 814523683 442718849 137086243 746103232 927351148 432376055 637056163 131409576 6767634 817991344 505976792 198910360 834171618 895927445 984318708 210827103 629397562 229477943 510943840 275150638 251981104 412030695 614753007 157401147 975942055 599687413 657330425 309782526 909008719 901712518 796416989 769143167 322171485 809669492 382411317 437113937 889070575 658443844 986919628 419255244 68903818 865192784 170769173 347470378 268828603 848893935 26671965 688610305 951144693 208454829 753476059 885534972 509098089 391816673 156372936 507310630 67355270 704475401 43844464 552265153 429591961 618746944 195853488 236221568 224173134 263960234 152721187 579469612 167763532 375750171 260641012 675154428 957599368 114284081 201051783 229498090 829104999 833463017 643209670 888949462 137317740 925041960 662836623 43095811 393758330 156844667 780253041 846831170 325679301 468375629 968602033 103597141 8832064 342936771 127196525 4150853 228398958 294510911 790102331 798965766 935051762 818456700 642772432 315267171 571156862 305508028 702604357 501085020 179726374 522089692 3737260 645313761 251647980 855793620 148159113 167227938 77375540 509787929 197306357 875244628 151058500 157153685 48087222 496928604 638470040 281238141 720050339 850587080 617840854 281111316 915286378 915735783 42865224 831033303 164051492 146965233 722470208 501651638 238643803 828735884 249030615 157925513 460808898 823821401 490910413 222994870 928764131 302945460 590214569 855617978 892787948 467065407 754147559 232089253 964255052 864619715 223936142 751728046 393276230 112562476 714241759 389279339 339033274 271604226 172782257 882908108 238180843 269744940 816936024 984254331 950519068 57010586 692361103 379561551 222811670 857450505 302543782 701735767 585402131 428231984 36234763 35191220 446235864 508800536 567016188 350532819 488620815 461068888 150273196 903601113 293003555 505466122 48980793 287324019 836368793 182374830 126748652 672699460 360908218 811354040 849729628 548864004 489440183 679544998 209031526 969700701 27887172 438794139 173929897 21858035 364721650 937691883 912138918 429051739 332601599 331977894 99254982 328048883 344116630 178344915 391011891 237109323 988275557 35376860 595437175 836611153 138005347 35995684 735241557 571836975 976361399 649353011 843229695 196372778 322444788 584746978 139963586 869451205 887754877 916962959 880192344 32927497 857333739 539341257 932476614 758079817 673695933 806162352 695397577 833513688 529291557 556808163 829239155 179025048 325545642 487896991 17248710 101337249 551761455 187000765 217514054 349346001 632525529 904171532 141700564 139515767 899298491 533402465 413735567 57344149 297974233 626484594 227196779 490713934 374314658 688993983 326867465 555872968 624164598 600838104 113233557 903490870 127499082 236572089 149756647 879011762 151103783 664838164 506916766 239902640 854816085 791900104 778026413 369783910 707503405 162046987 960361708 172871224 899302627 986974723 810525974 591469562 56100997 123499840 411653471 897608888 35548676 151900417 352891570 475275193 608974583 247094284 882233694 297249385 669230681 470408744 722969722 94695275 310451353 985399313 516628394 800386148 423975660 370994349 685099031 809008649 715035670 660964682 820591939 265669855 687243802 789116290 140907912 665262070 746293994 969410286 524563474 340802839 31071876 850619786 72811737 384616870 405240862 583441533 848075717 941744565 710329193 456988067 339142713 889385591 317619485 660039376 156591723 169572619 801736003 244304172 292560106 732847040 991900426 885708553 108783098 57548459 678993032 669920195 792539779 441603036 240580839 51231606 163745589 575786146 966743899 379490004 413128953 739630675 804223920 762389588 84500201 217375266 442592565 813527572 44328149 141366060 212560423 237307488 289216217 549502924 650991526 391822739 471789669 249558310 110332734 965996852 802030065 621904164 272218249 264974632 701438014 771744016 757208049 86116543 960486414 504444602 416138375 945492866 2809621 723411850 455187543 566947868 636891225 296515301 903635541 374651556 20690344 131253330 656737826 147623820 455863636 958640528 921874951 15164710 484094883 965664589 645344029 667474138 343781962 214386262 248275595 278883617 117476123 757479837 463840323 304067367 760596603 276291371 9845498 463678682 860872544 905300577 745814085 671144059 179532810 165978080 222120217 762463779 998588188 980242197 405046408 931350311 90985179 341114791 678888781 323498302 841084379 919161134 19464128 336621953 146384440 192407050 37733243 796356985 206378852 52425609 203316747 520685061 422280101 88890074 718241067 959487711 946417633 696529411 235800913 205286923 953301013 262721989 281078453 733979811 106389053 338604485 643235836 983168829 961438743 261060043 771603898 672443023 619685376 352954496 169814084 772380684 908522441 569861639 39149189 12179171 69719755 143458437 975088553 554344955 298670822 407478750 908086003 415599172 753457401 970947872 755827568 378974130 188624664 705324668 392379649 67836948 132799435 464617072 707515346 598578448 707148352 720648792 175024038 486079560 237637482 230997627 204294315 806199720 409726959 127641170 645577176 829830448 727611623 648894824 947984655 613927421 286609229 398512778 781109209 446334843 197719239 79335608 195687101 208098885 949142327 23531755 960875326 233185534 625053465 786387756 160484151 967083699 856861452 923444263 428977773 607839622 602477371 865096079 482000496 651474125 965311840 982028768 525434963 770909247 434881247 874735483 713764463 502358653 686805199 79624899 872548172 188879927 497880993 908027225 700556092 130886414 593282697 104145117 35198038 373809526 878920348 880988980 934928340 999447277 326474354 203889537 740933532 849531384 335643825 139045920 168013816 263868693 939887903 369666366 926448440 99922276 5190847 771508832 922026143 309863255 13407102 342061444 461167300 650562939 841720582 945821841 804668644 558401782 786384360 489026825 683200621 927011539 99969874 444831586 252677930 50919529 537166141 436000446 696751608 424718435 822177233 179882156 701275393 206735643 940940497 8440692 29246056 34215583 520849271 90346794 809936880 678853716 849934252 355069393 865475006 501108217 745282297 32241365 713818415 961093100 561233499 276453893 392036012 434855685 969317305 737853959 583243797 522170941 710737687 194378192 268534792 821366652 45922460 958602658 776686271 418944684 592485791 812820145 693026523 277529472 313100167 973699593 258367698 57645545 128343853 997719147 767630114 954162371 905228591 513972265 115646685 90056846 180514590 350284398 688134551 422239637 942212126 80593467 823257795 535413596 973491493 381166281 286229655 353054765 196469797 920634609 736305534 880463679 414231555 474881243 117177871 765466753 490290542 424156421 429290057 537808637 679079651 365426306 915127507 650289848 918800214 530397792 44944040 191835539 100180487 260973440 164385245 380910132 824412017 164255369 201603780 410240190 255331671 634147382 13194667 946809098 575493691 618840450 78069600 46709920 449624937 71409539 500667453 582853475 664515846 713074691 452017918 700912273 88633857 808775730 868758406 950231816 490864780 400255689 977482313 224836788 767033756 638874552 291208548 161182905 912365197 465264675 260129383 989178313 409534522 389014118 309300628 161694338 279527043 250037527 5611098 675996868 795888698 840057186 813510522 326749828 231360268 576993753 61944256 689646085 603401638 409796472 554717121 361774168 273034351 693713363 105301791 461631459 263929628 28641939 89545071 564433707 852916759 490834026 789646874 602707555 454176938 985131162 975278444 119955069 801109955 893444499 253302892 390628304 961985508 635424997 990037533 463117360 688384786 277150992 477468598 675331594 410213479 406684421 268969499 120334462 917044517 508465119 886103858 904564691 229157975 456043725 30634096 282770328 266997241 888302307 791546640 811626106 645404500 197802054 68863797 542476621 29708585 222240616 808894153 364557756 360578392 699929283 242356825 913580590 445133511 740170395 716420630 716124282 546079010 328474758 585969849 797932557 433639529 832567078 933162923 571787027 296946956 631060720 727415209 397660649 104293363 790621408 924853784 532970458 114429236 451867621 877929410 428189245 756922011 959865497 837199251 624670159 424538594 748207285 656916786 837272282 729246502 496702126 523909313 830338361 964240245 298502540 791374666 463764905 801849856 655467375 986063829 973836636 401024472 738516281 442297226 38195651 815503861 634397915 290347379 170994779 17813636 851823984 829906970 397923895 565050310 510200749 668968053 863692811 747141370 543344999 423310539 37428164 986195459 752498850 758828684 315573737 758117897 141747571 363417306 438372340 684486494 634700361 187499506 233300175 876830185 832899589 428857368 110481134 54825178 390791504 635389496 325978203 317772428 329093469 802385299 215555382 878974008 737422676 930090932 138300465 391445165 550492263 101915991 963669743 423482232 842874216 941950784 256667787 414796643 734904970 688164226 321737851 404481458 391321874 352185214 802326630 696385287 272680059 479727949 516690620 494509515 332123561 466104952 385285016 613493809 718048407 526116355 429045123 456472025 903774214 222827990 82960654 481858193 734228208 965437970 450063771 391178588 587396142 490712557 995602221 504761953 208271714 923355545 617331140 967847001 308100525 361900013 95176134 325834330 454253874 539109082 271356284 836905705 78174246 43876208 530508310 93467447 51465381 200921858 111441282 39479236 525076999 899406324 886749352 206601841 590013540 722404147 674300212 861805250 288850408 908442776 668775795 255619685 554209712 569232578 954727205 834730150 8920583 161017312 530696258 762846097 552543964 12279957 432184176 108659283 487066180 216609645 760663238 322111618 697678935 36047119 994077874 738121903 358209110 91300304 501677756 145632415 293073105 498244607 885559874 965574500 576694869 538444864 146472029 510532817 385970570 616869665 417588254 827119252 496963833 751085794 861063906 967882648 130140926 492093313 943466747 951166828 462336984 268818593 174689938 284951994 473637380 525490456 396707747 61205732 199441548 470321573 594875491 923516859 973669235 430718828 38172194 414243448 540012175 902767164 387049807 442668297 481887029 625206526 280239785 655718182 281678426 824268325 279604045 475852676 495080467 577720801 360355395 227764707 314602915 418445598 828456746 107436869 55607576 647386994 418056139 867466055 603513930 642300389 88653455 639988579 682404216 209054805 554245045 871516112 719999193 996706207 212326113 515135573 106324874 206272914 894768605 342839804 976313253 855105055 572885648 308314071 293534106 252117770 819249614 831929003 425379043 304335092 205719427 64751820 60020288 469886335 453137089 335585341 6575057 201913576 631475326 317675768 465239695 970588884 13203445 935154360 253460849 726092556 221510217 131480707 23294854 620099996 588940480 13270316 159560308 60398746 918056414 361080219 274077847 267322987 930693845 456326098 889839143 288507583 963384809 394743127 478571256 709054294 388462928 851344424 841476500 200260634 37802458 714967179 304759905 268252332 752617279 22947428 563869686 396493107 467487286 724262677 810910970 2118978 519486074 675663798 906354365 246708042 150231090 143107764 811821158 119490119 369130371 119065484 796682780 346577135 923147312 67264200 905443762 882497295 417005652 202439902 569501624 72875797 620140924 447886983 704024215 420030525 248137844 855006666 862258986 69895334 160363263 39934353 216226274 663138324 815703723 441219802 442060929 860447939 429814691 857289800 773805842 770678959 973134242 688366945 683851099 226495616 849140835 754495618 38925341 529873851 685828659 896300504 246801075 894619135 207855757 410196750 27487550 445664812 956991530 539443095 632194734 721698869 182168004 411305078 272914214 984587243 607520510 65311824 732201441 927514162 802432003 808178518 986930518 700632491 324454231 469771651 985872644 701528417 143907799 589392048 826493457 373609787 602359076 890347958 239381923 627873227 872111585 809364917 909549022 318585182 77713996 506205504 905058618 937555715 942642343 386913057 706257439 278651029 539964779 78694033 339179993 879300847 823971147 702410207 961800195 858833511 687554641 501927800 504957122 656852948 358871910 958068899 750678752 130860207 671960030 993576126 519134489 26705330 670176457 77346704 719262119 988320798 169318237 646770327 672488431 116550941 157741515 729593627 913599522 58115249 119859437 79706806 621901666 902870928 425434019 87723375 874232589 80321666 653604756 728751299 318015520 905585656 877020121 755329240 262076820 711240328 157629984 391645679 71174563 901786381 729281817 431990564 968285340 158022546 248608307 828980740 424643198 69089691 705678004 139947961 495968498 691211561 35919944 995420564 706872258 589740029 489179921 780437930 58762060 650542154 126095860 116013547 590062416 954909707 983086708 577155347 605016394 31895786 129258252 821393269 734623494 636181394 239627180 935971252 568054009 254109188 177784808 5444180 671015207 310047586 396442175 533306195 496001178 602643107 411831026 688651611 855834864 386224219 803820693 621860807 714795550 458035831 888097402 875254508 746505427 977030657 677943890 42108436 746654586 350439658 158603167 850640108 770984189 516898149 463295600 283471771 639309515 611339802 185656169 34938087 260195044 57671668 686109003 617244458 529884571 716175844 316938607 479209108 996854324 165695006 876680414 964589121 194993004 753758033 636719260 644115091 797509686 839000503 427585503 199903535 871263932 519574222 739994752 410089768 718121744 816616358 97891174 24175639 519733979 728793425 835537175 247880998 774263556 373742884 398915929 231479998 373124435 460656029 109093147 171496108 663790084 367264616 524096195 11759866 870193672 200145722 412481610 915408507 287549677 589286116 655715342 559737214 448592228 645061325 354726966 142444504 964517945 31731711 945005462 793616587 404566678 343124015 68784949 312589405 764166910 781533849 621808390 381281581 351137243 28413425 386720295 982407908 872910016 477695263 167971161 419384478 129799682 424576417 593882356 669389421 570190147 955146079 16333681 816031342 90957920 58719033 144870826 826130781 177292857 151788092 799965670 154610753 992684861 977685396 469346297 554766495 861367979 819159037 21730007 936673157 516234607 431232422 126368301 747463370 366234125 974173219 301588179 866321555 436920606 57079095 925918112 17957968 440217332 287455234 178954500 332843908 143558411 979836546 861858047 204832893 912623560 889804967 279317065 15262769 321331104 82059468 471931708 628440826 480277797 65546982 507291029 289758509 827489704 158545996 163432779 447858652 552790563 68910342 859837660 693075292 686642263 457310325 996217015 574357705 84020478 432875665 690432041 262935616 181064767 478889538 187406903 206890515 354873272 263914776 975822209 200340992 223312137 368710937 121346578 932115296 887912835 128929962 940731908 515312085 418218439 759305183 660102051 349713390 839333169 759716732 240941547 494769576 687186887 915233420 941646826 884900315 824700345 700566617 150986298 247815683 887583247 156162628 995267254 285999701 944130712 18075916 358596224 192079388 165237945 670234565 47322160 505241944 215545901 49269346 951193565 189537341 519386675 856495479 172095769 245146845 302899489 200046051 393327248 253301324 607588515 816345082 826380038 830777779 899111643 819709992 820485019 520898267 855974505 255079916 222492575 169002731 123286195 994531593 775721183 10089777 173838769 297439363 761001477 525241136 41296842 876070774 28702945 982858016 717423976 663694478 316569480 711842437 106299926 405630980 699669488 890502712 986699475 214934621 723963250 1764773 403847126 280093758 122614333 705775446 918691402 260423341 351611954 781271571 718826564 866735224 847563529 90285389 694396150 943825114 272259753 360902248 403584035 937165977 698700276 267650280 6496166 812264822 60195011 620021362 422983829 859306159 978951648 599918962 686544715 527609436 326974136 391172982 147667791 592857755 939371735 920032058 919098001 904351042 277315787 975992147 780794628 123440157 443081861 834595018 872859600 901981324 424850602 599477620 355509497 110312503 469179569 645210122 67939556 994059178 670229324 384920870 885703301 939040182 466188895 943580764 801810741 398703119 857157609 317265701 669281987 474922036 34130942 376689215 206108910 344564343 647538774 452785086 40524352 358295621 33656270 135743294 219199497 208619676 901754080 100021342 494687485 556501166 452729569 548769950 518369353 152768647 998948181 836846637 371989268 483472045 338821673 415295169 28975767 375794475 541390801 470649211 137674178 781319048 239364018 705440256 437352560 737935108 928227398 306759280 826302839 446186038 758774759 953205948 610046958 61052597 592522756 348073309 102454028 331425179 728731058 129636117 560568499 92800679 194380629 148197342 898096420 920715637 316397552 793597031 347580365 345206504 625015661 345813453 6920609 926090318 756611066 1641458 506384493 209296594 851047945 23993802 108367561 158596843 596901132 967058916 914815139 41407567 774557811 1499320 664948368 396156815 260135910 574692282 246001146 165223097 371809352 494089789 767002945 250207505 330556549 884342799 362277955 750896319 389769439 129108081 494929863 653177565 318100590 896818413 460420729 388140759 184782018 411044727 921017814 113859220 49685797 566922933 817792171 276193555 36718167 534576801 736763470 127074784 216178885 117488779 296312095 154777038 395440028 43005169 485250301 209519418 534005108 831744514 742056754 882618279 861645746 479740911 815979420 922806883 95090698 703047342 342226345 794674212 228286048 766588576 145588409 911081044 575291065 12822672 943035806 488580761 600759415 930632357 283426828 941251819 872850322 716295075 525597847 948559530 997506663 649987126 379917350 776339113 323298469 63328326 340070204 122314699 549543122 811292100 632290754 132459124 275723916 109799342 72869455 998951794 505056826 477068286 914931093 155063268 373226737 220883581 144238442 872048879 909418299 211739301 419107847 331511884 923260642 709879320 347211896 905777697 116113020 919064469 89150823 259060513 41926425 248616805 610745739 204453219 459599225 556282290 339848051 493516833 261750031 400543566 613968981 92443433 701050567 734218906 745918344 217457677 568318197 281579994 353086563 213671699 484839696 691470336 225331828 263641941 962782729 644365320 265973428 170936246 888184706 861033469 301703230 277787099 689429118 49511053 523720486 613842543 845416202 782918149 51454158 992904928 52729465 180499157 820273243 738154975 863191239 528879104 54706829 404873823 858220173 577168162 920539121 452083109 769560849 536841244 509577914 984843199 991698262 444598140 336145423 104779464 935149293 355518623 525357317 855267310 68550767 308090325 500506997 709726527 792531809 105591487 876494253 640645725 193680863 512386514 558815891 884353424 269660255 108442026 70468751 488737037 413139642 823304587 979100207 483009985 613656241 629873901 153990007 233037454 60455042 902825869 448708504 76962291 626209535 549199584 191473125 245152450 60558279 995289467 259227611 271184997 265204804 904582483 343186183 636274422 347655917 387984115 45400809 969691337 269135974 333502470 605394990 158719911 206171525 176122957 505930399 776119768 766094629 494181190 177047428 403875488 552913138 721349569 634138816 434131466 197097168 821638224 810004765 637347817 493194776 416791511 444610716 234652823 278530247 79389060 382052428 556622162 170712698 58685353 83318282 507980856 996269485 134254718 535319819 873365611 825029060 615406021 346764832 152340555 31288336 436457409 616068371 262897302 955577591 799698584 534468120 31441914 106973460 319389117 728164291 83639554 816669701 826142028 593687315 299019211 301522345 804364671 567178834 385755974 530976963 130045846 853819321 48622218 281009047 919926910 65334081 667334809 180038754 509199032 249663899 68361355 783349147 175047008 557117787 536425640 170337530 14895962 166221872 805166327 350552843 137083311 794225388 893395688 158789771 51455486 574839485 714282943 79892373 930303876 59273354 580104627 568731147 57394180 700841384 563807135 913784864 860533530 847754891 961434498 428543501 610564414 459577649 497487095 308571802 26938967 83799552 108983751 857743563 379847350 639986852 103959709 892912792 864195624 600114859 95193147 779241194 854730797 664025561 304595808 646923616 61687740 260895108 228308496 197959452 591851295 556099478 475052896 274302922 163830488 963729398 99090332 427528864 204976860 280265159 853659089 345861869 211539471 279835317 725586098 638790442 99948566 361725605 412946814 629150183 87384061 461238624 520310140 392004469 890924983 600585929 121903116 47179217 320385117 713932911 751484714 360059126 639567565 722614163 434228001 998950483 170530569 805036257 60246866 341533213 864497955 622916909 427809556 117071372 587043863 74743496 629573627 871749806 939647799 696359116 144386442 687359911 79582889 888009172 373625418 946188606 537873315 887924569 936143323 211190215 282981573 340638941 716545990 16642978 519828266 273239288 202472282 659454494 202330109 572862641 65642518 347626721 384763822 832130596 757361379 125500656 491681468 655246574 537217312 634875887 708998527 65951336 996813916 271440239 684708869 502831454 160824691 284208061 196163976 617059762 524637902 449280803 125760642 964924586 213660514 613474488 611632140 321591078 297286611 545041405 411830798 194138269 819152385 336212379 920183528 976597946 32355224 22964962 280148537 32651466 63453816 881726787 722321403 369507891 427894295 108716270 517730602 991899604 606448142 480066131 95787571 700442528 297797017 437773640 732195764 291153131 119940314 899478824 162027390 369410977 915791814 710552828 270635041 183198231 947284705 744806112 190661642 38004763 420237607 481135184 795878870 647784140 758519940 709281528 836348113 377114380 42854809 746417451 299490141 975299038 765375518 424315569 581939554 409968906 882195141 341634023 963269557 133819857 47778244 81968174 397357736 935211150 388582461 332214705 216959068 603277015 280884218 311623042 648596784 824204886 591412182 471055754 848440609 339194067 450711363 679804442 311358782 409125221 3548082 692562588 644042141 313675070 930436077 806342275 459519581 888539491 350743274 558335430 392964198 77970858 235412233 47921609 335520972 14740143 901100304 53703420 207805577 666523090 51878820 565315038 407330599 608696960 521628490 441578115 836550327 886293127 383014185 130618520 546053187 572037754 751154884 24717700 544045756 861218956 483796598 852003930 955657377 922797215 412571403 536366387 91946730 997390431 928246688 981690621 169259053 927918445 411333848 621918890 871102295 778447968 920908961 915929019 672547884 439933171 220563410 593062184 607157959 251677926 847583464 237864659 776031964 358501743 332639345 193945625 770785228 732940966 126826842 436750094 396278982 651119965 185578573 542079178 810583098 408157485 257583180 781227369 27445675 657491320 223645285 279081735 503950398 924023772 594231932 209712560 70765067 821365635 896833127 151292889 572550044 478668324 250862437 609418835 217750675 465518076 670995360 751465363 477352833 37342040 864776571 871085759 515283606 302027236 70434065 254138924 615202365 416535805 107066319 972320840 526585911 436984017 299486720 788023620 54755178 229088486 645443611 633104462 511260105 261944540 258089086 805644874 443656689 966444356 393915245 966589865 90219935 574260818 688628648 507277120 659163998 185293047 278993472 882260045 338281913 383848886 572415602 142622600 935137550 408952968 865727839 280372188 598751879 767351834 118408393 990762020 720006257 930422207 631452604 602573099 533277612 77105239 878035648 605287908 185786912 355660809 430628953 610535177 279086048 238958328 933040128 30122513 354251403 804561260 949585125 944093843 325132848 367655544 979766944 803925730 745605508 318203694 949326974 370808030 147026965 255277286 678009452 392988715 284787312 890505738 671276689 272419707 277121503 932964527 708004125 93413613 459343666 864543629 560004708 644020886 80630371 118202833 918828075 24660687 236024729 815134286 551634356 550340714 119105102 685264089 842234090 9865207 752819087 179080549 833981757 343136362 404139163 105283182 67428649 95174582 335845085 813673866 112088097 727617521 864144849 341670304 846686920 709483354 62811892 776323671 630049745 135321103 526388805 29544210 182247017 370458931 491336370 528483574 626675658 747860062 169303322 711320299 738996402 745935614 723890777 188444724 498892942 257530506 196876979 962156221 428520676 735050606 359669403 980750260 438504693 442212078 103788468 928219396 179061475 617513718 729268184 544564431 795797345 419957850 72497769 900511531 704603725 442795542 529526867 928426027 716588519 446165886 323954565 167873204 923074738 679908458 529106090 916807134 347263700 614075956 148914565 270091490 242464988 889877185 203108991 165720084 749193506 402131873 235955388 768207385 975352809 349904747 833087852 853724471 704759349 780913987 930067250 290202441 384610351 512127022 903267589 438286061 751681411 507506345 220220422 356473923 673380869 649186573 697878624 548223725 409691334 150117213 527434675 607636420 947842336 730618795 149228344 628433140 646001451 449248214 32455943 289707703 213734864 414608253 244828596 460910481 710892830 891362530 388596718 881149229 18488256 624788945 945122170 186074557 98456929 758113582 204226419 946754992 402544565 583156104 371022050 402532951 945026193 312840474 159850049 54059569 769151812 236383288 315944457 30213011 752853818 148677138 849664774 798509377 491173522 258370697 899962035 529065615 665239565 434002532 711844141 569578003 538684642 550687497 372947881 380132218 73724002 970769236 881628671 159661487 987261836 157344918 248599962 327797406 46320199 151493741 290895829 602183088 100908415 189396111 219301114 182813572 497532118 788100876 916066834 370613355 606882002 953028033 420474513 864107696 597307733 454413574 418270483 552643291 452224771 508117317 971316426 672051040 736532355 758963461 269627950 152626373 140527396 974133715 112855609 23519717 733441124 891830897 437192231 141409538 284749893 500495911 588457964 771443298 876156675 417176842 791956529 703329367 900563882 785349993 926752289 35771160 123677647 800161192 243545264 913381360 920954568 27687397 954858358 176625866 486131696 541504544 198497783 551248 799645791 764092193 879770983 995861467 610052595 583120240 739892917 528556493 783407017 616774879 789176802 217593837 555659865 154444863 851032186 818815879 722522754 561376934 502973782 8549162 685701092 459264663 711343633 940782232 85879156 462163436 570727036 642972562 426157348 397227448 653809831 328999867 356085563 544558351 714057327 654935551 33936357 648953338 813602694 368676312 362098284 371476674 710180215 278745275 160898541 922302457 590864673 850709097 540905633 277427301 154286994 814374733 965196035 157008953 488820221 393999659 324958541 972904188 939457039 126303561 211532757 938132517 435680947 875180219 909909111 981278068 141467616 890982922 285014390 888095198 572735424 669242139 953057673 298286135 247670466 494364563 549046153 582172383 920593162 578143617 532600866 289751271 203204241 154186921 239782921 56056395 88873458 292736953 491396221 630946504 350344349 788419235 66806554 722551856 89636408 470741620 218382211 574153371 106322471 449357962 846600583 14031749 647676560 405294895 466680857 607021885 674829738 670595883 877210447 319220633 211922253 424929831 539952755 637368664 423268326 159895939 551595846 841409779 420566530 357215195 940980797 261549957 257477065 636250710 946261823 376591025 297494096 759315103 771233688 327842440 371699466 99557473 880886972 847997468 213905406 327884479 211852872 873128703 188588912 681220361 651079103 510520430 130346101 17753481 397852972 221767783 638345369 283780953 508113995 712306817 600036542 137801594 654328482 658969622 423136798 220879 197812117 814445910 633575675 840874397 57384058 337030767 213478470 785846658 853784686 664231100 282664563 25893244 128407686 188876009 970840986 498838041 276315610 391768287 348268949 428807240 608163714 175840032 352639108 207759874 630298626 564730839 520691020 918404651 196054202 887886185 483686884 889876025 156747909 265659793 147603031 482424361 479565522 863336374 45128802 227404958 155490409 765401100 407322393 35833594 772647477 643321467 67395330 617584484 990679662 683327623 256151643 799183569 487382421 671449596 657653951 330707803 598079752 541271471 182884989 609944945 886893199 362890242 799875104 549165629 801295410 912806013 173029205 728556921 227051993 403565348 594459006 426432644 619844803 383447935 635993217 854675205 87403366 118508367 536138014 769830059 710984936 9564369 793697191 579390167 463196315 227672342 237613380 310006636 490538192 327440081 826737828 817653309 475591110 997116228 159896345 235282864 761693468 309570380 242923223 785060447 382895188 870263080 387734828 1847299 195617792 435847485 712993747 99755656 393637197 991728840 543633644 493909407 505298264 23586229 294365259 978068595 759516834 903396120 298818234 487664619 802466244 829685275 533950540 239439485 686219340 50609628 877686358 754351535 631855432 226342209 840513654 436882791 212949969 47497482 43311247 628216029 856715441 998912882 236091924 447071650 309586222 367970723 269709809 599386740 937467675 995293401 564695491 743987820 16387549 186808710 831715565 77480456 505691080 721344027 433227945 129428306 224173679 685115348 148107456 779506631 323025310 186672127 639001292 619031997 930436996 267092017 50871701 405973198 961122244 284037823 972640717 710028084 558111870 230613175 889141395 211099591 255499756 659793393 942041905 598751685 977560641 495703502 611490781 442656078 322512076 421585165 906549466 763204571 744300554 37459802 431930030 564432373 815268192 356427635 397559419 217882337 312671188 806373299 55280857 935558671 794494319 509045987 673727358 800828839 864615499 300303477 288767041 296535607 358484898 654636621 190375502 95773590 367807172 494856646 649454648 524468730 675159251 261055284 650361858 413316948 421092638 259994308 970759577 625661751 739989821 360780644 640414741 601065886 146532737 794827619 398589642 456303656 457796542 532139261 163301057 60117128 441972880 647785390 819257403 187701896 140602448 870003814 607737046 287860262 636316004 92936087 915028225 577730093 849925344 553346094 758754987 162618723 454183040 471633000 233630515 804918644 295147769 919387145 613826374 184995587 104205780 147254729 184941452 802633736 589739911 580043666 771438299 742947180 728428130 578872390 248472645 768262476 941258470 642879135 442944705 573227933 693312577 343444763 540314306 532624688 281353494 507035108 476198328 734621446 451747882 336396225 292672245 642482888 210487847 495926618 852143254 598386994 639146220 975992637 352152117 378888378 327263719 395052009 451965816 762052223 713299134 227789498 621056277 304666999 507081161 652766548 489044994 478549085 168016057 659788338 30569504 621691830 189210837 966256646 897077649 447248844 49272106 54732291 497093690 105670178 242324380 340261605 353283268 855071274 297544433 289888134 299822442 777574327 83176399 162158347 700302096 460313600 625631165 351816663 114290263 743867998 9818410 370912207 265077161 563656985 495635903 198737998 347312561 848940378 696201666 196889378 215454138 40068289 344269709 252650937 477519063 600386851 265378677 506141066 289092553 600878235 56386927 242236442 205398429 547287823 296221832 89929853 569514022 400019591 480163474 540153094 765608206 552239037 265150450 50066747 781767571 56020137 792809487 827371834 355933148 52577216 571482804 71711659 853645399 927138757 584963081 331890637 129969737 460734726 196117941 162350794 167872572 456202829 474380556 552311777 582355169 517041315 898297169 920046782 35117086 481760867 519431465 867645510 20222396 584230621 5979115 596540650 592029276 220243099 301111706 269920181 474749245 745517697 20225883 54768510 372006023 778056947 141824249 187509009 261422931 985179217 784778733 216355420 686972398 78568204 446467434 196441872 125197479 186924801 36044227 707658672 154491702 813622632 225439668 224536137 115889040 776677457 482860246 101498637 589332867 40654554 338663403 657943398 100513120 79312067 495811898 846357695 94736281 756691987 312085609 67791577 961974849 822920747 37866477 771070519 110515123 745026606 20274163 406693836 690467844 677933301 113336637 430385172 562270456 228066341 602478792 785834990 665650831 482771363 929052630 854564352 300199074 663150142 929837979 380972251 593615231 362211932 475377523 187355433 110293233 55464222 25321262 931578935 397427884 56310012 774512222 416158549 348773448 662668938 244953840 630976378 32221808 168134103 824856804 206987167 259475859 50904636 644569468 489953495 653034187 592364891 665773477 849130256 389850917 163185581 793059728 602486235 258663735 983846793 598154035 435412035 241049610 249417244 872008646 116797172 87020013 686239194 219394196 770774374 87918329 245635259 521448216 715725295 351597264 363970595 256440543 429497939 507038207 285427796 396705416 897803501 631723664 786593441 418513280 173549798 913586352 705649657 61097166 430697006 865786756 416643659 962021814 489128022 173248283 1033936 148647614 366244285 427601110 298722065 180583848 218010039 484662133 853407324 344920201 509343255 109703483 690384290 383829332 104782752 158736504 457239257 968220760 970385468 77002466 681958752 516848619 742368616 725342937 399420773 811011000 340091874 997267342 433324884 350753763 247673843 602057682 541402980 242264957 900884378 745414942 681960398 167513029 156293543 147243813 284687643 310418202 870090044 313330208 384975235 190547542 877952720 757033389 576061924 342530816 651100416 896660712 717483636 104608491 589462275 93106422 839529926 113675797 674706099 508019791 949834852 237908679 232219955 443583091 704218854 997339721 139799095 343064284 912397588 378878054 411235222 208391951 673673612 696177756 245373850 950130161 694058397 618556043 435976757 597199220 45112785 967751835 826917739 589809756 54787936 706802275 955614083 543701346 67963607 365765061 810560966 191042647 783672025 612622308 811819601 272372315 487570099 273923446 50058586 612436635 130535008 691621078 501921764 660114994 823341878 900823704 544741710 235970015 600506952 172083117 154584450 172048885 287121919 957254555 905254468 312088348 585898797 112520051 367850385 856813267 373899601 550358058 223313859 953157688 889173815 828397371 67966599 494746033 82542511 806847252 381496320 25819156 800829811 62449789 501965397 100122999 253149665 962099474 143131890 111162274 759809454 676945040 124436946 390977251 734712749 597361650 498848668 895266437 838936321 269178795 557244887 842381035 158941988 129298846 211420481 566542595 77142892 322960085 888859957 945849058 59457337 216831622 789530883 335293740 888430963 915515822 249961473 376461300 877118703 775390573 107860100 814624857 165257776 403013876 915156430 394713138 517472805 603395301 833066962 506921146 368942265 668753618 426805850 963254956 234419694 822963134 272689975 920152360 476816291 703849254 194149967 769397811 31364344 856862532 533840760 62670138 12151675 46638580 697533837 821747175 853183879 797117828 328630562 649480219 720650984 410234279 980856548 118465426 887914544 365319871 795654567 201727099 317163192 604664698 18317294 467945152 409262958 158134890 574661347 592604809 82957993 64765477 934334209 807040423 94345110 478981867 901717443 123236174 107485941 234274122 559744725 838947765 489264375 232093011 303106644 767855401 383822332 763847286 836531085 439927111 757428664 139506459 207965891 450495669 955197268 350443189 486395528 377161772 24015384 92367295 247939426 82825108 136556585 489330168 687010516 783129735 753004629 9892439 798468455 956342256 307771748 333247618 130882860 432681290 474125678 525243630 920550625 399483131 150368439 552427828 154305765 931188914 915933933 684452726 787235370 943723712 20744301 564076775 783021428 336521521 275860483 891353837 366150868 476564147 481905132 758165665 622774609 753866604 628501453 176619303 644740645 467271026 234720469 170117185 692898624 105976226 464799143 95267973 374085105 393556342 481148752 484379337 857230132 106061767 813174407 64337046 229896283 463924772 594293898 681493451 781020947 943966331 937323821 821210577 721729942 163873499 929410615 263829757 894921975 282927545 84452945 591427770 467978179 50089733 179806827 882413528 977167705 249319300 710683219 46634504 570723891 950156557 351404590 43193804 94335815 453632233 922186802 339044015 758538899 903494745 108054076 144248715 634296210 365146063 168949493 538784692 603233861 600123986 850721581 522706882 99148222 9396314 92283099 456541383 632405979 351061275 588964138 329181181 407186520 230932326 516660168 242319244 165266335 207871533 188106230 24010242 805876693 932384047 771258545 229364626 184451545 232838574 28844473 607895446 470953762 479584416 768026930 760338533 601439627 348527134 999872994 720534377 302631099 366524554 674028239 660810834 757280067 349129542 650257999 960001118 913099610 328270197 320797002 509718111 557076238 157161796 327396782 718343521 949203550 493741114 132110275 673857413 282190749 447738152 395157137 586838163 200489817 558725817 108421803 139866271 664482530 134736367 920035456 639554619 107562664 577234237 655768458 507333110 50872411 940826800 627193372 761621337 150911472 633640376 126585378 974678392 960313204 587123579 167442864 83223864 430814747 338024029 83153450 486097519 56111961 801932544 288761078 63517213 379476304 742862995 136294731 527449225 75558512 249456527 15664864 722511908 273692644 836326818 997628146 149087907 463459407 638734792 763426905 704525647 281233162 159734546 88235174 428017220 923444851 594869501 727800646 552902422 923290871 376337148 218224807 755918114 521728839 61308050 629688670 457482426 141120186 879089305 110495465 876044420 781637519 70550334 60010810 636497801 498829587 139660028 392046229 522312422 884479963 805815009 253060476 8797945 853158103 173233208 827975398 677884310 774911164 576152773 579334256 420968503 960290043 658954063 841661915 355265568 568331536 379816292 462052173 950014373 828447741 636612484 781850844 878331370 759849716 342632322 151800063 839463650 826738750 599348406 295769053 763962812 827592347 822866824 161596001 45710583 805741394 419108571 900670655 79837852 382508927 333160722 418254301 146649643 592103085 259747498 665433777 373162344 87417160 634671923 153647107 846368939 770598679 956265978 61637587 271219009 533790576 965620222 113741327 336899375 793558802 6948520 545933437 544055258 334370245 14155182 598552187 203304770 653989115 473333961 421208283 835153385 732123472 346460878 723352513 977583908 235113770 321073285 495459429 249215075 343154327 225728605 372984552 464732972 203104170 6799466 289262909 605117926 680773467 208222796 271591169 726676714 666047647 299841424 569983854 429032218 125910329 435875751 283335823 933933629 83248604 671497576 786560268 539495612 217956237 97972829 874567949 484126677 782080072 946014292 343360957 793470148 411983950 660422683 563795152 867203153 950870189 606042734 290296347 252644045 291955434 136976962 598455831 97823297 830017589 11519173 700920348 496294013 41014890 331025495 26698820 251319103 394934794 114298427 4834816 113256274 983820794 831261407 674000058 712227552 319715558 242041187 132518450 276675312 148562697 384859341 273693526 203057701 578927540 247438398 199422152 663632555 229213705 497311403 673041927 278180546 491841384 452474434 806698363 595859917 477039416 39868317 409024835 90739691 293400431 767366804 145493134 990226427 168820225 715348239 394523744 793427966 390701096 515807310 32692060 559722066 35803701 775975552 74844655 96881322 450186149 412331759 238790234 409869389 124396763 365279913 837397529 200577548 779282198 51427665 1366121 396799031 805421513 578717618 798860053 688126542 720893516 25470482 840742228 978057520 49848517 165597524 661367973 854545421 552281218 590410893 891675515 923319646 575028030 459953899 541384705 605892001 264281371 334096768 681515660 290318421 94696671 135005971 492051838 53620949 693332896 962834632 876312810 419364704 396896761 805064282 952671301 966113478 246447845 577798720 493665908 891180374 591205794 342431992 169570995 263035933 800481665 352858083 938173350 748748044 127143171 580052857 984944489 911142947 999675375 271687684 598467778 952610435 782314286 536713016 582218806 913951202 428706980 916625765 957348666 782632592 613443601 253474146 905180014 220650334 105973824 827501756 631069512 20472361 758287023 764751056 308493676 917392636 717055189 724644675 420829202 626493366 762602604 199936574 40190174 303300712 61818594 132929562 171953843 784872890 663671845 209221571 68842196 870193029 633998199 62586516 129824295 786470049 87374196 790524463 99473441 686453086 394729755 829949982 51909680 603467861 780506965 329595757 537567867 363325940 456718496 315668244 673878681 466579688 521224381 524433719 631682778 960474504 603295948 50413110 258062055 418500653 182229628 405599297 591930178 504521449 505368650 116034609 917279491 888725385 165006047 352289886 691805304 402143415 525739297 683030754 642692112 389036091 834606913 170439320 740917174 545081395 512297226 940931009 515650238 374559849 983054418 461101999 552414263 585942900 693940687 138822507 794054463 35591522 709339158 591843362 877644305 718751477 374945961 769478270 162073926 56210065 522483117 991275396 337224338 420732729 195466077 395121438 352646767 204380999 643214083 678128505 469631117 375803963 316090376 76523625 851072078 397127293 673347333 101262464 719724981 878372905 716345090 629749493 78541082 281470345 265292927 450554268 145057843 137735170 746546719 494258964 18021327 294258327 409805207 90215202 422783531 115826343 123869755 606121812 504387667 457790967 536172652 463428148 457257297 990008451 923389787 920571356 973943656 435747882 492876259 647622707 734665507 911338467 209570710 259580698 345413794 716645553 401405931 447788112 107597562 590014104 69980049 58174767 906022415 311620711 526922019 840043830 371129294 221445909 884023365 575792175 744006212 728014716 846684179 130734143 682787716 674128323 813266072 173290835 237997662 661169555 309463164 838819522 659680821 452341082 707367594 148034443 306634101 671026708 833323830 865656165 143277842 959872765 973893575 477766276 399000204 260180349 974852740 192951949 375713499 386528095 226318202 515332879 944353938 799802007 979052800 759120816 937097502 333775986 829416232 319484355 579019541 122126781 574648239 23654525 516588484 489118671 44156639 969389379 946534389 559990951 55916148 451644682 620641920 407413877 346150159 53111706 804442226 44285647 166657427 579126864 31451012 114001069 429826770 918576808 600540374 778212343 361805648 438017580 773883518 364446136 823272012 470554375 585979967 435636979 369596076 44175911 786123350 816033228 650949336 271486707 618117959 105579162 354079944 893979452 392262782 842079453 869038350 324004727 615947206 687065216 642356864 847057692 704695033 335646568 853724982 989603499 683025779 216594740 182848613 507474430 651784638 246839898 717911686 895803762 933447294 386829408 318324541 648245336 443158301 914904793 547451220 880889739 983260826 931299930 604958763 106379297 554508130 991666266 997840823 159784784 956455476 43600468 355857216 847470959 501255767 442814357 576397349 310473840 749082270 90348462 372168101 325277888 698145080 555030609 786274700 800436145 771510879 133833033 892641305 493311403 489246922 404446555 220480457 577682368 330342677 516787113 163773668 496851203 148708571 8348475 724041021 514288591 710107101 639293567 494952999 969352430 367403404 158878526 923210499 290043416 198492374 532143805 711807625 651810541 750350134 340108257 539017613 263556551 788981406 613277367 648870601 345334536 793190183 794710375 158107086 842117223 418923862 68529630 373141639 635545018 499024638 319888167 586682742 973279830 220398617 40457060 829335887 126653987 197837285 744625273 631381333 777469754 864520257 761309493 2504974 213417933 39112581 929904616 33549616 207749117 741953592 323798951 532240867 762881066 557498683 634341362 103720243 378279785 622700394 493803210 557330996 612925397 140002674 982491456 804783358 825805026 343582376 395459578 14255147 365807746 153006316 879950821 184781439 127151462 619278746 476124385 902097454 428507745 352462818 271851375 158372938 978908270 222523026 798917522 439355099 263781108 199563676 592416108 720108975 34461470 977877176 756289603 608713033 997205062 576347171 727482567 932027943 567608949 478320623 385085770 543309998 338121669 355163684 223713435 757035187 550547157 13852214 579460220 463862998 730981487 625967230 818068439 618579342 873885604 792996150 20398933 685342750 272542213 953112352 869512645 158281185 857235261 455488673 745735807 498563349 292856099 328829070 354782810 647115411 608514264 746063702 52677295 157491989 376136841 216722679 893485524 400139929 224283790 655765622 182473476 67911749 976323662 152351651 454011718 802190150 9278451 427571350 578569668 746571753 537726592 233058057 993907978 811235933 704649332 899876427 89372777 597653929 294997360 852672094 123552612 362687906 243857184 788180390 429186063 349401759 717311503 591440570 493599608 474553376 925756806 77256289 242445617 313554750 434414552 973306449 956959876 931258369 987892691 272392147 882270469 312728519 487282245 672096862 393449702 548626749 490882891 638636212 233271774 439579019 254273161 199629888 414962153 285349325 372549471 107541014 155515603 532572333 608431633 979452526 453984820 754623232 746355682 283941228 79873538 936453034 214002915 482047923 678419533 854546032 419357803 808263139 366771145 864067081 614833270 712258616 740841205 245130306 541169917 154571642 190326218 722619714 66616238 276288836 810453715 358963659 234880060 276106916 619188531 596813157 985657648 341580752 187595829 99580945 434775447 436959876 274861079 81084751 898229644 738308641 705176051 974762325 620692947 567227097 256824534 251230319 695734235 508813439 172949713 373023816 692123090 326189415 849198060 826007829 343999152 706529241 322891572 533589953 713428448 946266112 900820845 826036304 922061635 240821659 505568400 508023840 688760316 833708186 652878711 862329450 653603514 686268774 122614536 94742063 291827558 293023626 261373065 944970808 320170939 573404093 454531671 310804539 525157415 829485226 282438970 102860437 386591543 591060947 729188548 605746484 23224469 240011306 210030357 189509553 373730593 466527624 889334816 893931229 22027512 657669516 406803658 547363989 561076403 9094353 14483257 160075995 987370782 739538284 808619385 300954356 461132443 807657757 672739149 835784310 764925489 909295391 394253085 426048895 7912387 485430426 909837683 949338721 75107463 465951963 314126390 558516780 24776324 852362333 948184522 387216841 511734159 385407058 384784970 422311944 253617304 983114071 944250070 586368322 468450198 405997208 200741778 412622248 796415024 52479461 16321765 679123588 656614895 354739248 473499446 469787510 205136551 879580828 430149712 283776159 237989584 364147133 215661363 874758190 779436339 696199620 611824010 218498134 537065378 136221113 232678429 342364214 121860953 921770855 709146855 287363994 216553126 894600959 146534956 485386302 644117560 288208297 647370214 507742753 837683830 329148408 872424396 808261916 495684061 814883282 954747906 611182981 663811041 745631564 870624783 125133924 184208142 379265739 593754265 695128693 144371761 655561890 140554937 436125901 732506603 791842012 848905341 575188282 419662197 944734483 981595098 579493877 925130097 227916510 291455510 861952321 597275956 843861704 282748397 424986771 778830096 791365378 212951911 275987274 130873539 193246104 298120542 379509278 27246832 548201104 391982289 48174428 571496111 77245727 788544529 738068998 329903138 140321555 753330985 975707832 326433265 423201986 837161277 452364818 305602639 369902380 513707357 975892948 815453248 975109276 855594872 698184287 86699931 490910136 361251838 473856470 356820726 21759103 308766908 397459005 456077724 181282658 906257286 670434879 86610346 84377222 945507590 48199736 458846312 554267567 30910516 318943808 324072565 592747072 69081253 132806103 593882338 325771194 206042624 190028346 906087109 713331506 589907261 803144091 747877992 127954663 670122177 575976499 239793391 280350456 277518917 464420113 146767200 868110506 215171722 498853285 69872359 188997957 325019162 527174783 344882350 620432139 323438525 768126377 852855641 642495999 358492028 298517268 495603150 872374179 276339017 879252703 52052674 542785123 77968403 381651022 349549318 306993180 883063405 655085069 541162889 498441627 5290580 635939443 458072726 57034112 509631820 932605021 247070493 868597792 74875970 35921097 404788622 202019051 794094200 235134028 313380894 904486787 352155849 960956420 510882624 716389921 675100864 37743382 200139846 543033908 489644534 819756875 595161555 72018439 356206785 944984769 591829038 32393016 856492137 232853544 330271272 822558073 172904945 613729976 125997254 847830964 191721102 684941422 872201784 151920382 19007715 637885546 282543539 718468178 881886058 159184254 257863433 118302490 145439885 499094483 757141265 204827959 524062466 931962068 279200217 311101563 182897564 546772740 750163972 520979737 507844905 763931366 522828074 777827065 704470505 722632147 926637631 704134638 967629943 390459963 964080345 982543343 801756479 674970914 746327168 757399708 801276888 278278365 386636008 171550568 181414590 960023455 506438297 616888301 450268438 507546780 979037296 695182435 853805974 245391299 940452289 542747074 949376960 757329585 668471288 388558733 49799184 27884356 61730694 789555731 275522280 817783476 687457387 219893842 617513431 165460848 396263967 145665518 763777172 868755673 319130617 421239477 610206861 258024559 436664389 962064936 293103950 381605099 606258808 499992503 390907282 181517246 853544347 71053993 951408299 797854444 645366643 341566004 517938579 337290624 870290627 349636002 814727545 604112915 475706018 64742441 751731882 769433291 545080024 476456971 436485902 115213750 152395580 242601625 47606467 55239226 322367220 596657258 5248311 843543741 513818810 195507539 613756448 147591356 160174110 687913845 225394449 769886637 57025080 127330721 234181368 496913020 460605533 805397850 87895089 836417245 642827367 43153248 728459850 584209134 489501739 924728990 213489088 625496500 389093044 461890812 960035924 133280863 782641803 310241732 529225773 678350403 182673064 748521344 952858097 747870964 95823596 38097477 583628244 621941591 130396104 623520635 446261039 371456264 293114153 119437077 687876351 555498923 185205729 726021026 69672146 922364231 611800766 937747048 393592912 469675209 215298179 605659603 609893301 101223577 649082237 148058738 589546112 953312110 347304002 914503238 660880257 573618844 136695179 709582081 755328284 715991061 51602373 620808869 769091783 580841369 557073380 899338770 402629346 885704723 672985667 529432374 785027488 211386809 510945341 563253611 750052864 328059378 737593312 583292915 627817709 527998092 241932053 421700694 834899783 423395930 456044027 963565049 264516438 941212152 419644308 256599197 483019465 184803726 836053483 23438031 185511099 91871991 488526809 233480752 278611682 538375960 39481823 573369458 885500457 931446860 804615863 568282215 71552672 417180921 424979745 846636082 63178015 67574350 56961631 872781633 528560485 17556871 122982980 526902110 538555926 636717194 654586306 579061580 976359018 955608978 722610437 492066851 512977482 863269724 74643216 875927182 419779165 709144138 905865311 21718016 153659446 694919421 885287968 511589807 122311213 376609549 575982276 65956274 642169190 463145070 691173814 860695721 463363280 722907729 445173154 975352651 285492315 54545234 771109224 666989289 532953610 324934885 168903443 733706276 681781832 365189908 462459347 870651554 637358816 969529865 644319286 747943900 413756116 844762262 612315350 338270701 820626724 205097360 539796793 18271121 133859483 376085495 462546328 476777844 677176759 651404538 590193557 778266514 124616968 233899223 586658428 953050030 276995467 124885786 24343021 113420187 454104806 715664163 135152100 817051980 961588904 143040169 952604260 649457680 254000328 454076105 716199914 29959782 515264144 766826043 204491552 154066488 875336348 690356920 805700513 281607911 562152457 700089895 989667762 489401379 533306695 226940001 348620388 123524451 123104828 308026129 16533112 248445592 887275874 235164511 147587048 98771051 32600284 703623714 678767070 75576555 283645500 147696841 238362134 311573996 329352434 594622726 982625411 760033211 960802071 781190146 705939281 53404375 716578804 694954901 533641399 19513373 333135121 593995118 265745195 177628418 601323956 415649762 631837344 608527809 597894736 51371615 931952900 238176668 700020042 618094853 1558651 694171907 180907545 546101677 41341566 895984706 299578222 487699693 27421861 366524077 449649737 547295802 334792106 14353014 827038408 404529183 246288742 835573119 799111038 398380661 38665621 183725440 255900435 283044084 3971981 931994132 454081061 452750664 401676690 182610258 34439252 358353936 836191128 98804239 278135859 794462392 422420192 995980946 934989933 648572535 543364483 533041279 532954077 828356647 755092094 761657865 407361747 832546105 972167583 354991817 191292556 324402834 78940345 998300917 693010947 38685930 866738106 285595166 356456701 358199923 372365253 772546622 135609403 760408176 534779993 328139032 276744349 926876336 339213820 31771876 34054962 701700241 944634135 537824955 474710918 188571489 886928321 737583010 537479136 427040454 150552505 392829244 898280170 931686951 372451612 260009133 897567768 184166213 428403264 347380218 393874754 147351741 289667884 613657021 849040837 366092162 978787740 758833868 899040570 912980901 562309888 842426409 589927369 201781085 157815201 541906856 250575244 896198056 53230678 415609047 212504268 67109955 146938775 301968406 577516160 884142030 28029600 33702917 475303972 621982658 578836721 874392816 365206092 808548885 58751812 230836150 498821740 522973153 791669738 490313526 151910934 290304864 688374679 260748871 869252946 382887304 840790276 302847459 338737289 738531133 965742719 304142482 575298200 900571179 517751357 380572794 960239113 188802404 378853186 326062836 606793779 171242756 330707778 744359407 388604775 610125257 492860753 464111368 619073521 812675459 260301202 714157152 844196057 352046967 590957264 844861526 711305154 684459660 113717758 37482879 8836341 867497539 570140710 120424151 595178787 700637108 646526831 803651572 864448014 773211853 922112383 106921616 206909808 197540266 787609295 343615319 610542011 799751606 198919166 488226484 566023712 893259544 406586885 687392765 76316896 436254391 891213977 755328150 303428247 705072405 620753150 217920634 602332206 433752109 764174566 583152640 39378637 300031930 182225232 771343780 292376459 948597755 132224633 654893755 260594067 237635191 49758390 194626704 512270024 106053904 969513519 461635413 942373887 15295459 3755947 835075811 500083231 32959293 68556369 303496980 647363214 514363543 918564622 999991155 491559361 562103992 942423168 881475994 817597479 434504385 992771174 474660267 869055340 153927984 579984087 378284285 886542109 276179799 468119927 218554216 167737161 655567352 94568346 942320486 369025031 588563771 858598357 424620673 763588743 336001477 234263810 932139684 689068370 663597138 47910998 230690299 442631927 314073749 479143524 62812866 255873049 55267525 295236833 501361813 226009150 970259194 23256089 998737725 616803642 387277353 289413497 546073353 905088871 832587390 872701559 372131429 802155916 218649428 175161637 783529264 987086684 176838719 904915463 536716721 288708086 565754753 534073842 686262026 171830454 470342065 993308879 278890468 378568162 9199286 133872922 836838288 980307051 815565409 594735245 129089498 460441779 410112594 350229680 39859447 756299993 604810781 58928405 773858526 576511225 628137561 310257575 341373456 295918621 424503737 128162640 528200396 217900886 273161343 937203403 324182867 756553668 735823513 42531799 523972517 122885373 436558216 746867375 286655807 651374407 205038141 895886130 896689262 123879638 730006172 841603519 781060518 165435869 424620652 669101539 849377338 71731080 709211667 378943171 426619777 74211016 338955169 459091750 232216105 563850892 43360262 505860322 940835190 700252549 956796175 653047610 369077534 71431022 80477958 502712266 171378514 846114752 183808887 756173306 524428663 663246241 799567617 226423923 561794584 594338724 212844471 597226588 808239830 612060827 591097920 673722333 129012273 614132584 695565482 298616773 950265104 156451340 405078992 673602827 574412038 408227770 446700254 605755462 397166390 975495519 50322307 123960619 601817231 436068867 179850129 71302956 543041687 233847602 902828860 472491294 749905191 51671641 930656810 891956524 930803033 662865310 870819357 735152602 722909550 691487144 460787274 382053730 337332977 283394118 644573962 256915259 986851697 48529063 523606329 637808162 656251635 335251976 472769225 76617505 769105664 225253013 28063748 207794793 624623564 278201813 185891409 532771988 479528211 318733372 955507408 246309051 588746098 784405691 408011536 126554220 807622282 263191403 58726779 379359033 74562766 613235708 239135817 397133684 685078163 184226934 996396561 70979675 495560756 365191572 384317877 685117147 493135601 765229285 752125854 906639481 674270709 956573726 180462671 480702817 818912148 743141865 805736935 232063380 174073254 485384276 923034906 938534059 492878617 65971060 630458023 206791473 863174455 314957617 216497290 670781914 323108661 866144422 133106336 133218734 45146941 228306988 10534325 936443343 723450556 342935123 484116176 148654280 24623724 723544908 908592723 204239979 120597077 6949589 170219445 404306504 959098356 789916879 593657274 313179908 849913630 98187699 115194579 3299181 909560499 829913343 463662120 41264641 338125134 2261489 412589883 297521239 861526524 959300648 427741534 598333838 368585890 520770778 230326871 999510056 301052092 912829017 911665624 43835983 804269721 462859672 832502634 999848564 912156934 88445575 542896190 144281614 584982013 356605737 827293942 423641881 846476912 562193238 979420638 970761781 528835931 19509043 256568765 361706035 389777573 905210946 308728731 319937292 695807992 236176396 458729678 110900852 217420451 377660469 828742637 186653482 780629442 762641597 455557896 399553258 897654477 439803820 47535009 426740018 749416705 858459411 764180850 994581254 1739726 892946670 898909129 492319628 687346907 722880950 995556662 217645164 983799033 816500002 760028738 779321417 824423912 623209316 477631741 460429236 279763270 365048873 625382860 170296398 386778987 454504371 936949147 173865090 230934739 717323769 750260387 816303249 129839635 356842118 881526675 503451884 679592058 482177268 529276367 578557089 968466292 65938732 117616406 865207219 796944531 472991486 255224930 565230725 532816486 107616975 831456106 66549537 793077284 856756402 361250717 179559611 285558912 952439207 805790252 638858255 636432157 505310626 245410545 344002170 584126954 793204041 74133027 536149824 532243633 47155723 396106876 795372425 367974967 727160123 160775970 180917839 495089671 850414728 571717582 284871994 994292130 140425006 833076834 986457327 173975146 332982910 173744083 808483985 146631767 434729581 593506317 515264022 121446818 798260499 706614496 490454321 160666384 318808870 200092701 309055686 50006073 499950799 695472815 921988126 682876516 7353527 774911234 299892074 278460866 235201738 790400544 22434830 619728528 14495098 403128393 260779398 730479395 437544527 904946224 123826003 770276875 774020701 318505197 431943648 518569104 19107948 118334149 739514988 509177108 739860428 533946163 529055589 390705472 756485526 720870127 131192221 943518535 595471013 528696113 470127069 861720379 231592892 518963530 544276766 533685085 443501618 18561327 562449788 572351198 251069060 92746560 961813803 532913020 827889550 192794341 158767194 550982953 666421018 26543835 628180245 826039961 382140898 147517428 179670397 768666239 621467553 772491145 459199117 623503047 834520637 869421811 331478634 930172796 161064700 356429582 761374177 146680966 5149253 539367355 604941900 562270887 384217440 98514782 268001643 272356264 743702417 852505822 229967305 45261531 909549518 547680816 938824029 289421222 990208930 190836536 53722724 805373900 361358097 543262821 485210988 714081904 709914628 613110582 697410187 648638832 205114129 971571456 531853125 16689850 746928775 179625525 868087881 872549130 579419704 80545092 684263834 17296219 876926461 8553158 177635656 720394574 312209503 194332551 632840159 175690432 107523600 394306486 915112045 904458955 135099317 100389262 241716424 936172900 254524884 306456647 869368885 796878579 155821464 726605206 544117970 647501193 374853832 450118938 903355672 410447599 919193336 567424542 540350646 99446790 418449005 791785425 519875891 933467205 92089104 886488639 400635698 770244443 449600531 624436397 773017445 639742345 350909389 115240198 424808448 509631540 119219237 576675850 173789666 971432496 823358477 311831847 937841977 640739271 46720728 423321024 907513679 862237093 856277422 416767581 981346316 746643431 469401057 591771865 767932523 265864424 38991209 527138582 754960269 750378565 705930919 438476671 393331952 104899443 51541507 203818506 621179935 848880111 847643929 516616048 192664097 473715527 76710840 514969198 653832788 588116636 669709995 250947832 106080700 679695382 757603254 211984385 798691183 41094261 229820995 99008764 445866269 940344657 765733707 953705611 903164792 189605162 297740995 210903619 628868586 525911109 613488702 425076042 485951035 950772907 675016884 360035972 490311912 798325285 27825750 873467703 285841362 705041981 149352816 509435753 842125316 583097047 575845989 215271248 443563110 745044829 830211324 614522632 166401940 689688678 274059708 779213150 278491252 961645253 835969112 118847230 407387528 861064784 327717862 709480248 318519727 41330952 30911736 579841504 127585714 611379395 507536119 19548014 293132960 335451702 374613021 165586421 800493885 913129483 140396176 100480751 204192099 318331662 172793755 220462918 547238693 369930122 931748731 897211699 915773810 674248759 323886735 74540120 309190975 991341705 846239815 544631559 344428229 95168750 28233504 561879351 582378883 725284046 658154334 115412407 919536815 259534515 498344684 512207118 472902217 562973789 418210003 851210263 283185720 855182340 135734706 309819447 199688153 582407703 524221681 326067326 21651650 576504083 948564856 288417542 379388476 567205341 948104369 440915377 380064860 511659881 384870321 76879206 679323827 742406183 838453407 513566774 776542735 333823598 706658533 569564522 105581371 860508251 739925026 476864045 407849952 540791044 611499277 883387691 620248592 719623104 173755123 484371741 681720136 258364396 183353055 322187131 646727633 375632593 921140573 971492707 641576053 580242108 640448371 293420177 272851506 624472158 272287029 944677038 631975491 301530412 728824431 193632457 946402450 532516356 279050208 795362909 171086515 927763453 114817539 822485608 823041888 903437649 189291832 181622554 558221898 485563114 656072394 88093046 57413328 398693572 250014330 20852065 983548909 656575789 525820266 800388794 226659289 988278745 144045327 687137537 708635858 117852291 278143558 705068584 512684471 228282705 455473232 974692778 942967344 695781418 484099740 478469681 401479385 900127809 667406993 425608507 208514927 299624339 500098097 288042292 666115289 806874759 110511831 41884706 250973102 870280298 720310884 652155193 526988403 248942477 441494696 326790457 987000779 521023386 748279569 985725456 53437138 742628191 133849899 587092351 856681858 22581656 911202541 102307371 118956429 521282257 772714961 113184744 326717175 336001002 287279668 581629830 89963042 989772414 252275462 445763573 564033669 24569273 158359336 191693029 503675019 955441109 877957756 33286627 585084105 437332873 496649547 465234495 897525273 685845698 737597441 67553661 331561871 803391017 120622037 137070626 591284450 487006640 620318843 763847851 825966766 780813820 140375166 242071894 54575336 617932583 999924729 685142515 668232656 518356315 283104659 381264787 776310639 225473382 239458733 58094189 448441137 557888211 458579751 713182807 778153939 216072767 829679590 422149477 805869808 989752232 120121979 354479847 113447377 501034397 113734053 738232571 150167528 714470557 436344930 762086919 851381140 393108166 440439766 208671705 951878408 319122265 91472241 347445554 448357997 911845360 154543440 792623544 431624644 745633618 890497481 649457447 428537668 461950085 484816030 85920725 800230612 479647695 224648431 421291999 824554129 879307183 203658246 923444867 298368165 902233210 698669890 648928504 415970229 439181662 766624921 726827423 946709139 352203002 16349918 687825955 241684200 810157518 74283310 159116472 141407181 613107515 816612762 218114249 921293457 891902718 22547761 535605665 862680109 275616064 743328686 692636873 341449836 257614355 502916709 480676250 15198208 696120639 68899111 33170902 576955108 727345441 734154247 264669861 623334312 653633873 777338665 701758991 758614403 512514397 453671737 254198612 869389529 150263479 118761965 393084707 367654751 45636817 28684621 116768492 516036096 484736499 795517081 355558622 146007485 843318536 748307710 679557294 995982546 100554505 446445681 536366491 420190104 213457192 70113158 120491831 688836346 229881284 113093204 175755255 772295575 671477816 122871719 192828400 681066899 796769221 57928788 988249341 712772760 664956450 992302309 11752079 738212521 246057987 342409348 323746634 785349969 238118500 688184227 894508011 525381453 483754518 270000253 256533308 401438370 736231677 497799432 409301877 907533068 239883685 126130533 431796253 257503910 390133734 700409929 922999330 372725140 28305507 585418617 584303862 241879941 271516087 449650154 515685433 666110051 390170720 654702069 584838769 664133433 283584773 657859639 212842926 463751993 573574472 137702326 556228257 807422937 970789903 464955854 460975181 144743930 671248372 380322792 688743701 174176942 536502141 877961362 361257550 584829783 890670156 361932830 755866010 590354935 712987341 356961076 332862958 354670831 135479243 670915137 467108445 73641360 841221934 193385944 524743003 855672722 889317900 675456018 82199418 30374061 708212670 409605904 208012922 626957796 155822807 521172961 142064023 264845552 727257957 459714401 720925886 751930014 254532895 558253871 176457186 455652322 23303961 222658018 501717981 796355452 564844489 896991126 993980520 153151306 295392077 782555298 37370928 994595373 71532103 546790044 443100865 261232654 740234593 648147972 848622400 133543480 863307177 351287915 380320286 816292722 42367979 980816 340983800 719927414 67973523 258866360 717261579 861961781 524104286 673041674 671457483 333226852 283669190 112454514 938973153 273798795 664989922 537283599 667824817 376421441 110516987 501031146 842729833 141473080 954154416 188161137 968013141 725748834 135707759 755658799 63441338 828068259 104990497 970341827 211333870 72461548 577009915 188077873 475572914 808931797 233872917 761241868 515148315 916458712 333138566 251517068 508860932 779540287 254525820 298050777 426586691 237034463 392297740 578482636 111117420 288758194 364170649 464565440 640488032 576509717 670444187 558835107 862008056 709442927 555198750 612225196 96790514 821582707 91750577 67694082 536273733 706588605 979045095 397348944 343709336 891598288 181440423 129489706 15402408 809870384 772516512 452501014 164038547 539228870 291386046 803114003 446284934 198787760 996659775 690793364 235265912 22703589 506839423 175929954 397925578 993594585 433747650 94427069 301127495 777981650 187290716 444303198 137172488 220127810 588410052 494450148 481629594 937540541 290224547 32248159 462137468 825928244 500083796 224342154 44495351 376961060 469417087 474622970 158068452 464946426 681885187 874427875 4258033 295018135 625821861 609723022 825131202 545270471 780790829 519263305 523891426 519169564 186209723 858827274 336386903 113489225 559680128 905612803 375189088 842077045 572296081 410838020 970138748 337538440 554750269 364875652 353347752 366225752 662809987 680779184 482980976 302708258 111283059 117749174 97992664 402294238 540207968 333146024 892931607 459759782 632928980 874601497 12793175 320067865 554621229 778830813 9325978 593288148 211625525 211433124 510747131 364149714 496050005 751772735 840537375 336527460 383267474 734559711 306992048 699603053 513149843 251573066 763362211 753235563 872482076 479621269 872735184 21375617 894946914 935219972 879923606 985326164 174900746 282063518 488187776 976941996 404877570 361416179 307119513 41397979 782481498 14964042 704646803 49576266 874806287 599642898 188853561 489713371 819507771 79113744 945538763 167037821 802291466 181193759 869678256 810647464 92142784 325797659 610651873 618305669 130565349 477471874 162811589 464293935 416373223 581632713 807315091 633759733 483086219 461584839 558273908 364158287 334674505 185630011 553500679 696703411 952063805 623180695 120679386 810572898 94268636 849174666 868953052 499314471 123067312 683516043 276713793 344528285 423286120 912627815 760372505 726597935 873510740 281350208 584828271 413028255 184099675 825001562 396856899 618678408 320177992 114839238 575145652 506466800 262049430 947621431 325014457 454697743 532520108 510637796 439933935 9316730 632747404 848361359 17667162 84843736 652642131 95346729 12103137 61554036 47253813 324141445 158966664 218693793 861872535 856612263 893967875 188036891 205413928 181866656 347052677 536756963 60856667 309411648 353961986 629195598 205587157 106147465 982137499 596625439 397477834 58185374 39532005 537587626 971628738 549755820 954582777 621662753 421334369 213217483 569480123 985288219 587343230 5288837 558533030 554612034 927731967 77528201 766802517 492488230 535002824 958666047 587826015 917936595 144351995 113667666 214613489 151692207 821471313 269421911 743897503 20570921 261714030 417965193 422393485 197568890 185401988 192965996 889793094 645652024 694827756 975798048 733006018 795876561 873528558 473793240 488202124 13629528 442213508 370958335 98522473 82106120 570333754 69030109 720787628 388393491 624323066 552476438 45452050 992760742 881936462 482071770 520013310 984840976 418001245 680105432 552272482 712187021 863258191 616040881 428175406 671497181 210813632 942940753 147521704 457347347 917887514 662845557 370316272 911020734 177377487 705164007 774634736 711228040 855749910 777520805 763469226 688659214 399520336 381095702 1399682 241721106 491205017 173716062 876590411 67770904 315381865 916744661 508773628 26449991 949056628 662063058 95232426 540533889 313811768 147514797 269309344 522775205 153554812 476815647 974288071 790924779 287665184 413810717 439759841 687299072 481907162 208573839 119041730 942976256 910479177 912734093 987407320 541955332 737077370 703141801 213140505 332688342 146211853 375430289 175198978 806038282 642491960 346620047 775972449 977995011 336422636 339724313 589759977 883203548 787431882 984830129 57201254 336007419 941908526 930100403 508653770 676412938 771114653 903956682 714817632 975816148 587674222 325033257 866657501 628627423 380898637 336530748 511344926 697176755 767871145 608765113 526152429 996649327 233666442 617051377 201225726 233922293 873872515 150149814 504993456 518450379 898796922 561529605 311636750 110461791 844678436 421304737 744189814 527867548 647146964 521833703 12844992 639280351 542071648 937375704 286995796 641971697 887772087 174258267 773972399 268533194 902550257 637359224 960944880 946015722 948556918 455393858 72053639 927586596 877287275 800650127 114591097 410986515 625958198 954626219 818681609 233458502 260316381 348376178 614550266 669584590 693343135 53261975 753857672 165241858 249449856 581903358 432923548 630727895 650952311 510042819 525268318 650821938 470751142 571057455 606557745 547918041 468808568 826369097 177530810 48369864 734504059 768199142 339769053 889967473 522827110 855721653 725812998 411501600 133157347 801855204 304235139 409555397 322019210 95022032 525032106 747020988 510091578 179648634 751424595 639525945 75251725 862539101 742158644 232459639 705172045 277628507 357206957 419927617 827611877 105092689 705997697 870864755 379197781 964999738 353832468 920586116 164664224 689451698 805773035 621640128 679048258 190521535 149868214 324193544 700967212 626731191 8355659 553002926 599237702 698379679 718003837 450444464 121293268 548609413 7682184 4683388 104158017 171354906 174539378 567927651 79200774 701274320 373930614 151877529 735991877 559917032 175918992 32846276 581250694 639278241 353298972 873935039 705465768 948499989 708441173 424088075 117293827 484499931 298063146 478682816 445044630 268551364 201783413 575959762 666281765 575522216 367644410 633592954 473141275 709320468 544041494 954688181 238423656 925371406 16059153 155245098 935693903 611507301 425646621 254617616 622397795 776484828 648666591 178518859 350458457 49440347 888839626 359841067 840853016 56230303 748887944 773769809 835335587 243296733 692531028 621233752 870979614 882958555 315441279 24963780 448862431 589459558 658844766 380194030 397246202 344358005 394631215 643687013 193765678 465043811 444277877 939678033 589036593 840574178 688941273 922429374 577918689 282049570 370934140 716437498 550723598 920246207 553316114 510908041 600559547 849475013 174282142 212157199 32010609 462128714 701395446 210320215 655255402 574234980 176529826 684694192 902878884 891879007 481632029 653930069 912535958 626604559 204560934 68313990 906428426 160002171 584245725 174587528 273350653 930323469 863853697 806174506 266703433 183488507 622994356 914941850 997780754 293914303 466896270 948136094 813224373 287713559 130167867 694932052 516060128 515042751 473956176 820145030 416967801 671582706 464625440 496799225 229883234 891586630 196056612 17068921 538772731 365991211 419218035 437585360 458280991 742171123 476486272 936659400 856385449 164259312 723980105 737126206 96834395 872976324 537789437 798431705 43033538 126573481 564382891 262221869 415513088 880374050 813842106 919520014 594427677 357399228 101674970 135238491 335498478 349121728 267733284 860832778 912391803 444245874 365057136 569215904 566973849 808224086 818167632 723198240 190574330 438134243 946877646 426022177 791710161 840439631 464709255 235521172 662735110 220804658 458332863 127721070 78318057 396331123 613037538 810869464 676391397 788197482 793720072 574251871 378379284 245199112 936657776 912103467 375536849 369900606 231897978 252889155 792667935 91481339 290167155 491495347 633401300 308094197 896402679 854053329 122943975 728245517 984850699 190784845 639503148 574299766 58987711 438973559 299823026 890307098 269715033 371582105 688241494 803092564 275651789 79907087 757634823 905423707 924728153 328111322 822738203 943876000 389952922 537158944 336570737 478782039 317819418 234850850 930727164 723018963 82413020 534230938 600877326 913242715 403843444 152192289 38378737 248725015 94036066 52039419 632350091 402657301 914767404 674439556 913724357 434821376 488842248 859346331 684208574 918643520 518099949 906376904 460988103 307392900 432759302 672460712 455337527 113983849 112687028 389727042 75364255 789780693 897270623 671384726 114547153 412271775 771607425 596965912 586117463 617888139 227065320 933793661 98149612 913409073 467744822 563848316 410565194 928113055 153099548 205218140 247048851 83512173 162480898 510449273 333544195 746738850 469578857 843758953 420588345 398503979 793561367 146972113 86947506 181161029 459052578 907562912 928546768 975302215 525695253 742260511 533631571 751984045 690536334 560499221 121250258 234929444 187037092 124087336 122250294 227361233 458295228 135957792 505210286 971027518 141625677 242627871 537044531 746800778 556909727 307406907 157284129 806324540 941618496 629128236 575632353 52515264 425057211 796060315 901893794 732869215 764957955 166979139 156676048 951378612 471248389 295124841 514713572 656157493 111295116 519056912 591440759 61229278 122957437 558459423 495407091 942114790 524441858 457416297 836094032 903868664 927763866 731062097 216269797 796184433 673765400 660668165 693692019 952473780 519418882 786552543 451033806 168912713 569443927 583178488 698586799 360879085 479963313 65738046 94407464 141492617 995190977 45964821 105555520 461323430 409319735 604343080 272106149 166623419 203382702 622218518 186243468 330228809 702527625 336643057 558446586 50904650 330138047 249026541 815310139 513074414 491924036 444833066 50121567 85594589 93562921 634998811 837717941 234298281 462955018 694928547 129240901 567639802 294411137 183182071 470432893 439489935 877288911 737180135 533052058 946732517 534952951 132018481 916978946 850722137 469828143 665986629 278890128 390736039 396043570 132473973 175976464 16736924 576994549 735474862 923755703 459120465 1968300 534916134 557610758 611616809 892108800 285253472 654669302 455816527 713583473 251815655 443467181 561622412 641133547 698521707 271000366 538721809 222692173 451792303 658878651 68749177 668656083 442584154 933558052 947467216 812362934 372555605 737519599 175409008 111350585 493334887 779334541 132220680 499961991 73094335 164188644 853728634 851507970 288524528 122146063 791504137 887301491 7741060 423921394 709353345 45068937 690811801 135536518 206086186 120083454 994886131 561254181 749193434 74747243 785236368 234377677 160906278 148491755 577088080 140700195 947381364 745837517 307705340 940733214 185976136 539971504 89178697 772544429 693797102 479438796 950599723 526922095 439642895 203141405 719308763 497280826 293101280 877676531 797867265 720935828 569944564 59844216 307146484 746343107 951043423 181071561 767723998 462466041 127571159 726222964 402481609 187374502 432581463 139947849 208617867 409185651 604025759 518471594 389599059 418140049 933643896 741390047 737140473 389886542 565447306 82421357 769524954 380677727 633060440 84161966 534099391 256542345 599410160 499550719 33053327 771493254 172421071 750819264 791093841 707736750 854676210 687589561 422056265 451342097 270094641 261666679 889897177 170460698 29979277 191603725 131749465 861629395 725730022 822335178 134675116 253152935 894118055 720210983 504897343 948271641 324656495 189344232 447814434 263367887 597172291 946688771 524074685 909034791 839949865 618230906 605322920 360255528 135388497 481540202 926897509 230313836 937667773 958049181 935807228 927607705 350703867 423025852 526812337 464569848 106823836 931468562 244774036 958638951 802379666 202616141 210429466 629857509 279860405 139042072 471704694 457883693 515874440 2485084 94881441 303181192 250231797 694091931 484087061 102084071 654498999 360577948 18107837 655070307 955852402 818526869 754218740 560900355 371480713 986271414 360459051 234361313 949643224 566725842 213347357 947340133 424175232 734934577 495766949 518526212 457755688 761955157 239977423 142379130 98897054 146154054 492445336 444848965 748235433 867374126 118336137 559485217 364056312 803576876 14340590 848983086 858748141 657873655 305566702 159033780 549144630 524435127 630713838 228895855 516486632 482227260 488507386 338331653 826130942 182544267 951859100 413298768 252800263 422363352 385370545 271499676 944390729 150610081 853559796 663059757 378141565 29462805 607386602 330771267 63779322 813286999 13082796 110745392 443747779 752947832 201420853 126042634 131392765 841536733 387718518 971275619 953682435 14694772 414648948 194945688 423084218 727416074 688805410 170991082 734544621 281878532 669124401 270751968 562076930 188414942 417606506 511889408 256846940 828152823 835862178 326727899 533967400 36605805 519105120 494755830 196081123 513034896 909315164 451752708 195305833 43081429 80666556 818146489 20776032 606448774 77196317 204706193 964953182 127576158 7489623 208061178 771930449 985033258 262369408 637295649 156629170 320240291 897220202 64098988 774623829 849048421 575000946 942840288 136588886 303358902 828079654 597047540 756155948 917248073 328918431 348572208 11751339 926117979 200786719 677346771 147243875 97093277 593214416 993486255 751747171 670266978 334459847 952777187 859890316 672230091 526922154 525421639 596961295 60827214 555568870 208900984 733238640 214072956 831725181 306632114 547325289 701361577 377269444 775047367 393760581 600967099 886563364 348465693 326848656 882255473 814758415 66700929 940347174 403066054 43535032 596635749 316151819 95165199 501984248 993803649 676834844 463829404 489516463 70189741 430931764 658178810 168584201 358881481 439260491 732903788 418874344 865833371 206658008 24864932 109205847 79526020 617783116 705531821 149025793 578266062 784285232 180438631 195526104 152813003 471520661 796856478 325829137 588009748 307544423 768737522 190918605 256870193 314482744 342708457 351639740 449052263 884638047 208451778 120454692 821097470 851899342 445578720 143705741 442544340 313981207 54949518 52116170 334175487 6326631 356039661 391051105 908470437 164240859 787751566 715628362 743518579 336113937 97505332 510463593 784652667 522779748 338219378 952661711 451062727 241838334 709956602 799587007 51091589 405059036 92078812 530480882 299397653 49201321 702551653 993994502 616832602 47527962 358517877 888939199 859092762 796455418 200994711 216615394 645720039 603975795 778242829 334934274 929354017 789467501 169034959 128098157 929010824 170701164 88536777 625236861 267634666 615508240 356019341 950351290 644132611 121623628 365783799 702271390 731230255 291938553 133915344 881665912 379730232 501251828 255411359 894365696 286979011 762405090 166305695 983206242 780398147 910542467 545553948 148163644 23218485 981709688 528883056 702957661 948566983 431723451 578778220 454954136 434028331 697884895 2052420 262475870 852313759 714122597 508569595 698620936 446295260 542859100 136133930 367648806 836412679 433775778 10295358 911947048 974591589 610502933 992818386 941572779 349545177 800585337 589292286 794754692 717523659 347169589 460190160 3944302 996852716 892940907 54267335 501451091 975278141 698682761 346280919 460333007 973479720 685012251 162266064 327886270 292283823 345907854 915296626 649552154 926262071 457223356 555133161 263250631 531729123 292554368 30047886 116615488 60916046 880733195 800630130 387795433 791399694 254889306 715266811 860318954 553996709 594494967 87097474 316593155 889316038 527323454 113030379 920548711 139316843 809580475 100646262 898605609 455513533 593352696 53718326 968493014 399709845 799272986 997353066 593827776 951226644 175182025 35071107 35845621 675143898 541437673 543951673 631111459 261137827 359716062 173585607 205843608 163942336 391714311 695060232 755688361 205486761 677718017 569743779 679383331 986012061 308725889 357143067 506588779 488370765 133194278 493655490 840476305 965098955 55274888 518067613 934025987 383223124 811108291 552852362 224846024 341276163 265861608 379295086 798841119 198655131 703698697 902851233 7450500 403629509 339631652 988902767 890493359 963945515 270783304 777090768 769744557 27320823 650194581 115596201 36797654 809051916 189224242 522864063 642792054 425041855 533182585 988859841 564363142 29594528 148091609 267210567 576512614 889808689 539389443 316544989 204147347 73670432 773363118 155144760 709811058 15515636 593532596 822123545 390094048 27305870 487278429 655422955 521023203 111884811 331191574 925917083 567251443 255076160 829882759 257065016 411838719 942428286 15051221 900395605 817443242 701777285 637870188 257934057 466531609 331055430 610866978 590168488 909459086 70650236 550944611 625699875 6032361 794365755 700298165 928294658 286362196 306706637 794783353 157291185 811990170 27433984 406604151 233727035 696063213 556387254 713460073 88981245 518848310 164137913 3312608 995156770 358288109 387816742 47957022 323328587 42953486 150304643 554642178 483925629 710171323 447437545 869836792 260100773 507323285 942735976 531290200 596530396 585906499 309387801 97072594 414552195 671456167 932480530 816418791 460974897 487231805 292605998 526546480 410732747 640019863 602276426 868485566 965306243 555479913 139790404 21535943 959810784 537424848 839815067 849769666 802018185 757690119 394349466 78168093 252278381 958786539 906776884 352890451 575919582 664708692 962566950 643786099 507253129 895046242 856352821 33236872 375088326 487463363 64975624 26293033 177476038 880903896 13454524 767674197 89541207 480432417 215030210 200318509 653261742 354328106 854168460 487693920 548109699 90698473 927377494 123797577 576627761 823328774 178127737 942305855 647374495 854621191 182335794 173903449 169933294 39390423 167393434 758840710 480989192 335201359 307906760 394235564 674428507 726584597 939926794 13873891 454299491 539108942 24415016 236583614 209676126 968804665 707964758 271136169 172180030 231809542 493959266 915186171 767679403 143312983 922654433 128755204 738378427 720534975 741124177 759829522 90195876 511261917 817746787 830230083 609459057 649017130 109407900 802570664 363704411 983555683 588858585 721038426 428025881 387713505 763194072 681770611 854386193 782628299 81098280 783096936 319897933 69602679 84925383 864936073 157840594 818976140 544355158 192744741 337572005 76142198 517808896 155663496 904693140 738542600 873550272 388262434 83524951 951896044 410509979 475495531 34670417 419011273 647141323 21551836 252243461 306570474 521233959 956683669 113665550 905160003 429256604 268171380 631005123 5423888 347264381 725289963 536776135 369824129 108344256 954822528 767827717 29878653 188269625 925934552 813328208 879936198 147171492 21891774 160226278 547474591 978396518 40192762 298805601 358137186 548072227 218706162 949206120 600724481 468628210 179041944 639921613 73608412 156721638 981307534 741248827 912961744 504966306 651398803 25337189 678179149 542415585 543836691 324460020 232004596 26900072 926469273 403281859 55703644 31951905 117088161 120702341 953960960 433347093 530644230 824796007 671798635 791561655 534439623 324431011 224249431 192043153 568010429 328833828 167680044 654235078 364559866 942013754 984802987 655729189 859088539 395125313 126110947 557398138 569418034 47137902 328573157 972283705 92913035 212616579 454599803 384068983 336794191 83239420 932455251 940236351 206267711 273684731 801700953 842427584 821333961 214937522 255166727 227002173 193648610 68609216 83834178 404381600 798138973 480227968 917346900 300002848 684063972 656954702 371635499 665060545 491281247 924739811 471690138 786894376 962264892 403546486 422572124 703031086 320572720 752021217 42312451 790118417 515424629 454266745 465888240 990405282 151092242 323593584 258869398 316198916 101159078 464539677 283631229 968661050 781383683 284752896 959137538 790025480 854669930 222154210 144056582 295783812 995993437 531827220 858822691 395473612 179454366 24339311 77566442 131751386 9091215 926452040 442286342 750104012 430773942 544257982 503732794 105700524 271249289 626042509 684859161 933073295 836459005 190691589 888621273 492326931 847954534 373289456 933378001 636789420 429559114 456093992 883105652 483456803 757279368 279324988 113629874 942396393 376724411 575861605 597194627 20002934 310744479 719242307 172465310 456156700 781152062 532429570 907666524 328834 537790091 359299674 335585401 138068668 806520641 109555872 412460051 142489655 218238181 881832835 901447909 678266350 49954127 321445122 368407762 786081264 152873382 161616262 23742266 2393016 583140379 981261430 93358875 45522064 820329591 23216316 968137783 760184236 89172656 238570677 214325873 990609639 784022321 541454896 978126805 103807637 621726603 120142248 19859184 786219939 109937292 608631591 226054078 829424343 552571867 457087108 117867342 874091108 197416229 426207396 651104927 496363214 590025144 357818596 214602653 749023253 406358466 123589955 111542843 736443929 987226963 772613016 522339137 149851694 649460897 743546277 475470304 280732026 793902622 934813185 791298758 944975051 19385169 648952436 204674479 407266489 413935025 340986079 383506123 42843488 195014520 531473941 227420956 923857408 928907777 124015338 482438181 858697097 90415744 199671652 482972096 968779721 836624333 592700164 487135044 771451420 432429194 904736576 95012969 751235874 579410793 436936294 372066862 694657273 228753351 974685587 866477203 216771537 45215548 853224017 420110071 321109046 210492713 469484953 675490306 888146851 997106792 16727010 506415830 633793506 730338362 723444415 616431474 821911060 190995924 852159022 231424254 183236382 790073162 339066062 906276717 645405632 586383217 532592296 747253388 211821612 615505059 683823884 896663179 718403535 153962356 455458777 47165729 894526773 544456405 273775886 631720052 227451482 87783435 310078160 798947144 979019382 75119386 343118603 270151995 54082660 10458453 89406794 729496255 84681649 574265672 466476120 414128022 678215954 458476371 754315354 584963240 433049359 78442595 697947247 301298475 662082009 518980173 395734651 745534393 600968425 339025358 639240 433161835 895697751 959470185 10484026 445966475 889491302 89049863 36435588 760608383 70923977 15991109 836660823 139019785 677657673 790586412 307300911 504986795 383721869 757414074 114588648 518053806 737624043 580850149 997869339 30358197 812217511 146288365 961622963 252311565 826012035 321920989 479082007 748705579 644882038 383014678 278410337 931721692 499438939 722801992 533394417 651109616 88502170 307349669 37999343 460697492 672439625 78688152 362693297 323087583 673653401 788457154 576457882 596293654 601609082 214876391 2701673 587310298 116172608 959185287 771175808 503045652 178307088 730592563 9390731 573942268 586326327 920108165 387154593 419683841 436029642 914333838 889232681 574286488 426897486 293773750 321312156 380282216 804824813 865702461 780268830 165533199 54530835 492740140 446679407 9749700 585335051 408533972 685853545 634183238 322209138 856382641 941385410 68846910 837217088 128715905 630932791 403245647 804114626 521739051 745728868 216883275 680705215 290320098 969036511 44391671 693987454 185996349 857450682 20028120 288534529 869588144 347839319 719091207 548425644 434056487 540518876 354179306 991276080 323803584 759856205 125934298 738630208 195504552 638490925 604426994 156493119 600557695 961734711 26763152 636565975 230319157 897034077 307487488 344393833 232444100 188158032 380387010 718649059 618869070 318039645 706098066 915893577 632521529 552012772 552297967 1117867 204021830 876702006 98995385 894954107 717964484 692481823 215242383 977953214 181904219 916154325 997071755 69241374 239205049 396138653 705372928 223645778 495165722 262738549 634478882 44954522 760647550 806463465 710592839 313148584 690082781 356635981 216321043 700936287 709273516 539957703 814868714 178993670 858991203 685668113 357806171 562779494 863398644 544618638 409344900 976055505 831694994 916095155 142778256 134156266 191222907 217422465 240548853 200322724 834527263 714947857 724822730 753143531 323985347 137875722 541598069 388028485 800705293 387160058 725471451 272124470 56576892 471651217 535968730 130511746 450751165 66254343 703254875 500541293 116006025 697975246 541863623 524117918 92139819 398939353 189980919 651005762 684314702 657480216 216930660 872003863 726284452 720907626 347913715 15143313 961249831 620423046 379232456 531237530 950677568 974648691 274878108 43946946 338708864 628097089 44015790 781414025 568294936 844601194 165071891 395743123 781355046 246294679 866141979 748032836 520723279 2781059 227038323 674104293 48383963 973858663 787549470 40535968 978371123 96859109 858256789 608985514 448797948 376270584 652546056 909954921 468626958 530200965 495800261 219312552 509575233 327865656 675752056 997280500 440886515 373779451 662493447 288897649 174927679 793856559 576129961 652132168 591781630 846579196 476900332 598602038 744819268 928677056 415325456 439605433 428188927 600368616 521593074 906443574 619480416 258172226 502148016 601053065 713393373 316685588 527016138 218046586 552387026 880568768 505557530 418306524 786930385 57669078 544473363 769734953 333363036 351919669 823709243 476152447 878800354 964989135 127984113 607199773 496872358 65067873 154822501 13587093 799871087 529789078 519494279 210485639 342237945 582217550 715496770 319071503 573655091 448103433 100045520 771354945 580046229 240337123 154954735 298880216 432640374 359454721 152002376 599683429 19819173 916440874 562787468 394941059 884779187 718680694 276646155 621816620 91901120 534023179 275410775 23395855 684822159 8518233 480422101 456323553 145201246 135429122 486601979 924881812 28732094 182605169 484219314 432074687 36012881 773744556 652588283 174505527 912222480 566198231 470572854 462420209 348596074 859011667 572367569 683211679 224042489 538743431 740454431 205546879 422299339 697019076 763542792 648617574 41930192 612402234 345352122 383143535 326886902 781252237 696956518 169083780 355474242 772069348 832813435 370025488 240743755 300743768 23556133 221573463 761489979 78119156 973726098 129292750 853945023 194081633 216548729 571424180 886051974 469392245 794291768 34352949 275250064 447020262 146068479 778594293 41764469 351445106 348616475 559868715 20447416 241032603 506742152 400083019 14839727 611731302 850108722 963809820 399092499 408183640 40326059 466390004 840502656 981990043 854045489 931409495 631903762 948544615 571165148 274387275 478403833 400108045 390543226 495452020 770103012 669153076 622530055 544526775 739652638 499006962 973194880 290026357 606523665 348008868 997295809 806646506 257169228 106677789 737624881 116183739 114114875 287379406 877696966 854117523 537906231 497100016 923528213 308284540 981288943 230874848 397974354 761587204 331201091 802311795 876579492 892780390 774789220 865406455 656070472 235818831 171701963 730279954 242520560 57129460 459474421 322784257 421356077 366855559 853327358 373717864 678299788 220917726 806279050 776511773 932639465 794547437 501185201 737793070 182215612 974456937 526930920 559851925 605076965 405589124 171857209 626953573 365435046 819711312 385462610 837776320 823594708 490151006 543895414 433812069 582690335 108368937 850297386 573744091 694176321 327375502 695829041 123919828 254857900 497051848 309289862 415395009 154051199 633650311 555971972 569256311 332073841 927881087 544031078 699573071 476680280 142117080 489314749 79286439 886675947 341017551 737922912 702335363 422961204 642983554 115672708 889297375 574452011 947560497 200181087 874372876 811557596 155977012 904736995 143671625 376801779 92337931 449907020 710550348 246960414 908759760 822476479 762836912 906885238 907365440 906779083 237894831 247848608 937745138 345883089 749748092 404819066 773482124 590290760 322180284 204241743 660257307 687959845 703786611 78265624 609872388 235332333 380522277 192521122 173171953 927936978 589502267 451015066 703973051 328233697 694538464 403358458 55577279 919388346 143930469 754536914 222469657 789051611 809014618 585319301 129753029 483097632 910574927 209452906 275238054 566270012 655106830 714238404 20012878 954663156 904967698 61362464 7967378 132771362 1525106 196299211 247716425 152927711 856794407 334792038 805491264 288735373 976266436 70947117 844392890 490934388 485917505 399851713 411659778 566800725 412824508 898444865 169869783 317580278 811982179 702613053 495505356 950888560 143542742 974604587 362432127 14395422 815863154 722431814 596159720 527047452 281685270 768423264 713993837 868968780 197690552 481672061 800344301 994780366 875348354 479528973 811157099 793395967 567355275 50160196 567402019 905722220 604286652 320384372 570470223 688862587 659512261 616533045 956091471 367889016 703683895 996842787 104005708 561768375 524105655 333773382 354493056 174275491 453852572 424011126 608993326 481610806 165734675 149715434 77918266 546001393 950691848 96933425 358441807 137707775 718573146 214716938 4425410 177708091 401662706 107586056 386228071 492832158 363106829 36543652 287034496 971086659 581700758 350500085 469003521 269642656 648963427 588433996 985301441 765110638 429222176 976074946 493333029 557425056 153940545 550706239 708046748 423657599 708289726 424061433 44488289 524854463 965388891 532447906 882790568 244653574 641831514 739824567 822979870 763836208 938756285 270313002 328304465 810187646 590243409 239357988 426793240 19967492 866248924 229108883 884655688 488994899 924245524 389223498 823188568 440356473 70201652 974896926 296752945 950830919 138937855 653033243 597606018 793303750 824132544 792989372 537410526 965057436 611923459 5100301 101641117 257068528 468656259 563353078 416274106 105245617 526503450 516682953 349115885 722172897 200759106 198853859 521253341 669010250 281486254 520886854 697725195 578287246 408653900 377235001 443542776 293946040 265981894 215063313 432509921 127007226 798419474 454695485 274793386 609323790 424699687 314389247 825460951 102959655 990217845 973508726 847825373 47507531 749806322 732532579 53999792 93705725 352298589 596983734 759123676 74336251 875927359 125882594 353528835 960426733 962519362 923687894 253269917 135790736 21846124 492615613 147239142 120672818 965667808 19045740 802497185 198292502 79832580 887242123 875839022 228079602 450656466 88311839 852308332 84280782 844214989 460476525 558720637 935648079 373203447 12751622 936937644 444885611 700924750 552694273 524331948 927209442 43154507 444762536 223401643 370728460 450500138 757561365 692003025 677919250 588419192 858459604 94992590 950747644 605240401 139108966 215973645 648327173 319587217 965760531 707583698 809422793 62468227 633963864 120399295 245606593 270972640 713012294 231706175 635559226 962588774 658328411 75837559 334452711 631622457 111382928 439949574 67857838 487639603 608126416 985305617 163545688 226461522 841026148 919081138 254551819 478371693 385089499 370354650 269968597 127677529 849123745 707382345 73094098 446799809 447249664 609189406 306506967 819790700 632927761 279969045 138317245 819482475 907629383 719061515 207012999 42258787 223545211 288300494 391581923 136830081 641601638 998945409 831622457 37735595 100735222 73725254 850418709 604090567 997791063 971916925 731422628 982444129 896723014 558056155 565341723 571568830 557341073 15284010 513740377 24531864 876828111 560762331 961000083 794609660 879087142 247869619 21339384 349298479 123838054 164846208 778667672 314202480 187379270 871671438 425086456 654914869 420079391 309149027 150399250 693970531 979426452 91527589 577292178 76203325 830099129 202732992 942825448 963873945 189961859 971253603 260747652 417478818 250579017 327414049 177179800 962764007 486564019 489345655 432949512 728307813 54394382 537248903 565864012 726244019 789225483 63617378 129795244 414065524 811525198 779658006 19292846 868328302 998230882 175108544 256838181 360221383 705622742 240226127 387437686 877465698 376636551 497092794 250731394 225232260 752697482 927655422 600188616 138510450 874949928 93879689 970720072 389163611 798782784 786951531 150738758 704656879 64789992 509541278 766097723 311686606 11897494 235598383 601629760 421127737 732883017 780660370 972646587 825485353 125603268 795611824 702770565 568869749 746991329 97786912 15257634 214782921 690715027 432953118 57221764 274895873 456059831 586987611 471550022 857156650 983790752 381167295 8161627 257703061 939712966 510189473 411033783 263898921 42296066 402405675 664698860 778318107 63863325 78648343 674446321 302469539 648056990 273056529 12189896 404526574 117530942 918325403 805312102 719770324 709895106 58898019 748339471 582256507 123361494 941630377 127922823 513701185 42628495 628438627 179115698 467007535 341455343 418818722 611216033 244294212 92401324 727457892 954370809 33060545 796893277 412269817 400258768 152221624 657182903 694879240 486276640 962541331 902350875 651340132 536231802 545773489 390290830 83386859 890965159 275345525 71413195 979302611 990376366 839330338 953851919 899007528 137229352 880079269 795671685 894891607 61612174 858625578 141097475 309236814 267091513 307720988 434930073 485628590 398112776 75423149 804986337 625850324 522734889 814765754 553393518 37896786 154273937 781452725 151976725 767292970 726341327 413890204 868228423 148041121 767518360 293815095 714774030 301432199 986185045 834960153 621225407 345110200 130266207 791861556 541147804 653621315 768515924 498793318 30177527 696153388 674726057 998975751 419992373 515943433 609289730 761276505 348001048 306932308 281862756 938111536 1991389 343896433 681686209 268496762 360249032 872527679 975242007 408190025 21621777 638203316 580913321 223639641 333616189 671895454 563051515 962265895 306795406 970661919 371770586 529319175 541653688 213595599 620362745 741764210 840924477 135504828 615002379 353752752 283270470 119819064 304434622 555299778 913955592 853862955 79923362 262136980 201878308 505797369 132890390 110729760 170529555 560951817 965739352 935541542 797376103 920526736 100667656 979627610 572353461 528501449 838284062 729148108 830457773 351547274 383123987 100180471 611661387 280250365 986856626 945393493 858690542 204441350 357645292 311751853 437579771 214019275 693503370 578228716 265054878 28483579 951907307 59194278 156402302 653910447 905015688 90974756 593166940 715503792 768860996 377857819 88323750 139710298 845977609 885621838 108184194 233271507 980508627 915561500 285038866 205222211 344538664 856311465 651833239 534601755 502710959 961563072 167149825 877012475 897248575 588067659 808250715 26546251 47927179 412910407 95078491 225752357 429702122 916794111 166554680 129503305 401457642 202174062 665800910 849403469 960029733 518838416 401118516 973460683 501611277 792751439 750095114 672478866 667218349 876638365 31572667 890498807 104314113 290551621 853396239 328624564 388489602 273916708 283917441 128700664 742681365 399173810 704610303 466333797 571322477 563224658 12720986 390999547 883715529 805098800 178990634 201476861 993617170 595200094 473616501 482881852 185555021 818121548 7611941 728830004 90202375 136349374 217462746 73357000 792287749 396471842 416597081 409797880 46150789 714223293 291022903 684779926 588160049 971443332 949194614 685486666 640269751 804122933 453314260 154817178 400695192 489131411 357403970 698635309 560895620 61505668 196382325 206967028 749318495 892929520 311717400 919571796 66650157 792014665 877897786 686672940 578832102 370464745 667647987 298908586 623136399 837800912 26266786 232979026 509515975 334674884 354451967 23983907 896800688 969125435 372326405 535057081 255097091 912424997 474712635 512273147 864434963 727608609 998539845 740545789 434246034 377942334 407012756 818903399 361384494 492585697 764954706 277027854 770713014 226923754 941942972 847104462 934390545 422888699 582262503 402843238 823412650 699331251 215753203 398327872 896589151 125005908 705237669 169774872 816586378 691209449 190032966 270425334 270325320 8841109 951451266 300898101 896539812 763515414 901639589 945710853 341305368 610394426 717658623 237081665 548033781 920192598 709871397 578631536 87659412 801408858 723150844 565551865 479225406 633841706 825343 602627508 609113071 653455485 817432931 48551575 566196064 378774029 632798155 427793139 105234417 21263313 852123347 304640039 266764590 390663516 275525409 197462030 149419589 530557209 521521041 558722112 167522086 571876822 563488618 435574863 887794060 590944603 144050191 847627183 787935030 148987616 307253059 165483761 68940597 228766317 600522727 177149854 964198431 26505282 781826065 367271054 906845199 340726242 408336722 30408751 968751978 734932442 44717575 95164893 986390017 170907914 563845208 104808155 132884002 532297749 421515242 641749669 88282696 198494010 641974382 795890873 971697354 132898036 365801013 69948549 472461627 216481002 166983931 963828108 528177996 969613419 631145398 389355223 319101682 254084385 986327281 584713231 883152118 370324418 119300356 669898071 723671546 568101797 12707735 736030574 257530705 209114974 318069309 986547926 814830713 500975497 140220440 287299607 122488511 457349436 565099036 111772921 601775246 415220837 422247435 924602130 807003155 702789319 876882654 844096469 237611757 117881710 690519971 749755649 356103505 946911530 294334871 96729649 965568868 976853398 459650513 272762796 834635875 883139234 385462347 172360740 244514207 994823623 39953677 432078347 918831457 109716616 233405819 594047682 598049768 640084377 208427025 237413613 161067262 874001976 807607007 612621601 641312691 649156172 360665524 993912045 40921169 327914603 92247302 649763414 262601667 972958808 96022219 844590302 342980041 61458998 177874340 148808716 81061695 645086248 232561501 981250520 946798488 573756468 121091590 171005896 56543118 191155100 901998639 385421402 649148701 580901076 946948063 894073760 233575834 802421336 177987434 458897218 595931547 856085752 820297582 2659177 1429773 657841565 811708815 550667072 512880276 41837588 256147872 335738411 511638648 870119242 655242273 187139921 719284216 965364785 661699426 445772761 469815400 403194619 560385012 35617153 829848072 950115777 75991313 993892784 773449896 440116994 581406663 252845204 612657225 776152449 212630151 987798246 93720895 401203436 183862390 875366764 661433197 222069139 519045125 40570194 796832736 353453957 198665312 370758931 112156544 795333676 471573614 979041582 631390209 890704465 634496924 133329497 787386140 479635968 368196273 113784908 967826369 36356527 138817316 295710061 144544348 830738475 780154591 849034892 290962008 366611392 649247981 296123249 522609014 152195869 596835102 617913837 559922837 986780097 562845391 664246723 632536132 760154964 556866191 373174222 618770443 535389676 422971665 540825753 65776985 354220513 916622917 957496890 383675238 790925599 161928113 594638317 425266972 283895497 792259082 767322097 118972145 199462315 742515539 571451016 397705973 996911752 340849786 216806110 86491981 504996029 638054869 331676522 514244787 725501652 385727474 491655272 451719047 966401982 711216482 424408934 755355084 147919318 986102770 434616294 591508074 952859518 68977789 640373283 380267990 315356983 138691223 987927776 908894898 325557294 750941802 165142088 723347889 285388803 557416520 659037510 467744184 808333375 939613684 584236316 686713009 789132920 889608628 193832184 914515545 66731739 11166604 610839257 795057388 188464068 609299112 339043600 973557239 83212409 948261524 193142879 571513173 82475618 354563495 816531876 3489373 628673305 397337947 250164851 574168651 677113296 239452493 444522458 637083251 531616787 854618071 940851066 863399486 472048871 100550950 924745453 991576753 239622667 499085481 481855057 314334561 708262986 220004799 985538891 173432206 567764905 879520183 474898024 450642500 327575932 860510218 840304907 106034251 804627862 423282740 316463492 552289035 859643673 223216889 10732994 99636099 274935420 568231661 716713761 84168283 434654556 143306520 816603772 101540567 365532571 264288988 365581984 700638720 71244633 96590974 972830191 147449728 856099900 899586648 606565789 483333717 338029339 743347624 429286953 679658712 590280030 73363173 358460127 946004478 748878987 878512022 871743129 524488389 31760569 956915702 279855572 834442225 55859946 286054412 751691716 632742440 101893816 850760165 32449479 294923617 58429190 889740886 62740674 227983210 410725204 764043772 87420326 523831905 738032323 144352481 424951926 228473114 691242210 718609168 318914877 501782421 352599729 10305091 438416548 958103970 242258976 537051898 735272539 451071613 231848430 414786633 32973703 940221624 628956255 955719206 913149033 586004116 31731753 801279502 754393793 463152284 956075712 790227572 58308697 215076294 796722228 66329845 836969467 638274752 572891662 663880151 542746278 492302136 590478779 875005192 555736334 95586321 335510777 570590308 480072385 981120760 481033664 55225130 637947517 622623932 82135501 8015766 888708952 472354122 350867218 630277683 936331402 422616336 630909854 82551396 396388715 743240702 727898490 850124097 962635473 854895637 598932649 161840439 35379301 745588905 839997705 410105120 242526428 246051384 707682278 266405071 336969500 390743506 289437511 104165619 627000610 612965695 372848516 189070470 647928928 528955505 459659422 27755657 693632591 962892900 670299740 489673618 657222489 181368367 598570004 585072168 759919899 17757733 53791220 701505320 947409360 149220802 725177841 754659415 486443516 606024654 270703226 265840282 619701525 498022862 800755995 546857339 959544363 405528046 388492649 671717413 472147107 925585683 59303977 958562303 136275686 923848976 268275041 509772146 715794465 624628796 245997797 460495993 914158372 772943357 844050813 804882863 390269347 761127978 807107419 860038342 192229193 846782686 39235255 759741219 679280721 226780396 321380790 559233358 574288348 403754990 449807558 723493597 611691264 140383466 863184697 450026577 108573473 438268873 146434504 979923597 728728504 887434242 271385799 542771803 464062064 490636764 648074324 665717470 903365939 309029433 706304315 136460413 446982825 634925404 831329942 699341301 518407251 799310355 609774999 736798125 479811980 925214627 373678689 10024981 869070568 955945175 727730299 7842939 337189071 839939832 866645923 675245807 786057713 505803787 738224868 450538195 576690456 39190074 198492978 957899674 995845305 88200624 266341666 840259360 653811484 109217250 317014200 587312756 725822569 603934740 619690764 480342309 402213031 938521436 840374560 600126080 756179617 506225175 89313262 881553645 43546761 48462805 263516362 178509060 352846410 876441039 477581843 86085206 819419409 685428589 910279542 845712879 459381820 306928632 168762127 583544023 720135149 150970903 310628210 538316119 676105350 775185949 460047935 925067199 319241876 740404241 589472380 683821378 57944586 752959861 136563557 419562132 886389886 943634490 604172963 416071492 172401051 841840770 662070355 318905268 807780230 224686926 403475384 29087946 840359152 899929731 386663725 383165931 840153222 358241216 247594979 466478522 100541131 523292646 965057202 405444890 710410003 457848431 903346145 353719283 683540633 481085253 759893392 848364675 546683969 701727109 959525563 406267524 336524352 566262526 565597770 952891088 396797007 636201728 112257625 185314475 921069414 970753503 321812909 987395464 567476336 565692329 882297972 583627007 612126112 21934310 395039668 355028212 237439564 900986908 491889747 848134270 684030932 868679093 494040404 408054506 495030508 987565565 371894068 746846370 673723972 302736828 461881880 602912997 466948616 301532218 466385242 298381378 934202778 825161956 898399939 189097117 572634816 480895566 447007071 965145351 599733863 565462582 428246543 639012458 557763943 904549746 340698919 165501522 609191582 679064077 652139514 713203644 226532844 261438515 662901673 779265487 664751016 438640370 229603128 292147426 778804876 269358356 958182826 569445349 840528287 480560687 786448950 264482240 862175571 236307686 66363889 82656255 810235150 152694044 40920073 558810322 571194971 959728828 10600732 375191929 280703974 534142952 793284489 574834841 267755404 888293122 663713025 373594469 697645931 63347518 943067253 391762138 687408178 973227845 223342266 368732001 986591523 682741138 286616518 112474480 7753954 811844154 812002264 383952676 983479288 733532382 820582164 27010509 629734814 852766843 207492294 432994402 169626930 316605486 464805936 161054360 499122885 377871673 788515995 954689999 254773449 828983185 861394976 59951695 764565370 58117438 197050417 47327718 547076810 423142725 551534299 603955525 580469972 989010358 149858990 149682166 773939769 854584750 439173896 425258983 563746371 954173505 128436932 44746737 765065875 424220326 175821415 551514246 158493207 379293361 219406582 928636349 528983366 761578147 36922798 49231421 131448523 411304595 104037749 576044557 294200224 851410111 783884593 929306890 352744245 59728068 469418384 383015650 810198632 956219335 550627919 174817625 893663577 901570267 109517129 688841856 818207538 141057390 508722374 33989594 753973862 518616696 941537358 270944669 136604231 400501326 919879955 725550514 606658899 661407745 50618578 328368197 251128388 749809435 410522163 107994391 645657320 372874080 46558051 381015789 755978329 873564367 767248266 762033844 908737525 973167242 887696994 747742745 993400967 788920234 377271875 664669508 654397368 100646691 879801640 219715620 837436315 627796717 585823654 674313046 340829863 368051159 461796743 805173110 14235507 755483194 219138948 419970310 280562359 591742713 683910082 483331679 373473021 96698618 25604344 535204911 128607891 593877728 808388325 984419211 280410903 533363802 908422713 179427673 930302237 12802844 492448014 675839987 287243451 242154186 659721979 446949788 460142874 931625898 173631317 850167753 600127290 36050175 784540457 892387821 507673691 703399851 804451131 312661825 549703139 85878978 719196298 343100865 292054269 66509028 691476321 52545894 560739319 899030050 549948930 153200330 557315259 961025745 199660374 310509190 783151687 363557794 286158192 651218163 126005159 848070532 487878858 180855951 753548845 6213936 611872023 37743537 935358416 262771381 993479437 186846579 713495361 916465929 917086047 714057669 109179064 756344304 864585480 70771151 62834444 248241409 250977634 269455626 917688850 169867165 866555906 446349489 504397333 657378570 217722322 175145941 404876405 195407115 105463005 721177792 636155177 34861764 699044242 863342217 496905369 192745012 71860569 925971892 21788294 91563684 447541489 59648231 444099248 615565937 450403505 355895425 841075095 750234480 227648047 965530335 569836280 968627797 996662852 848583137 454313444 848916114 418911725 328149026 123800704 985977320 182613474 777228072 346279417 494432681 413772207 494510938 432835441 999700381 309115244 664685571 218771471 252225048 128355692 508588845 10656038 986689925 469221270 954931173 668375657 857172795 504805830 956533263 412941658 351944628 784012130 432691770 348344548 75745417 435327164 523492065 473564974 404408683 304227527 152715405 73074072 907708870 81060595 572028867 266398902 580521446 603932358 249046946 976198092 328594851 286195125 579627673 429398055 184185246 192648453 671787704 217476226 852618755 643682137 507835400 554156449 775395369 630632297 503856922 244724847 42638152 759175759 843111778 477825464 185372016 173566348 230291067 573725911 735022300 892102913 478690167 301989031 450165097 692773917 739650717 175656674 653398179 54683240 188245368 511963101 306326992 410179763 233685482 771378388 476899252 545770368 620197718 390142903 629042882 65778297 946508064 201613915 128356451 348165232 401526104 274018434 372814655 696246849 291590268 978435233 723023241 438788935 371804333 553162678 220655121 765141570 456811313 953216446 622790262 337626824 76693518 517199345 450299102 688223450 708470769 826432565 120530313 253239411 650576033 84015021 403304743 190704695 939605335 670950646 304430526 620976732 116195953 588260694 152422500 735706142 802341649 796239965 312064403 225575918 88233311 620131386 519985799 18694769 313928610 204744547 659744179 650989604 416093672 545981028 449229324 663882281 314005404 998962021 250640781 613306071 746147885 906066724 98373659 663528628 997791390 960898008 470493960 731630746 197423827 52576600 969554149 719647352 566969189 948285000 598022667 37730783 687770330 59903737 260056811 825199903 967298013 932215173 298398898 407986399 973395583 603415550 642297585 728698440 981991359 540212387 281582986 642672692 344730855 155256195 1201467 287254757 628485693 172416410 664449577 569810668 72628290 715766145 807736804 683741445 5564452 952841272 489654173 332019271 31517235 901166379 670875668 183462642 417555165 156332700 42548403 118514297 80699512 260566716 713118220 583209501 371869302 630796850 715400178 593700483 903993827 283848536 393948372 648344612 749659766 985714790 29384280 142955002 754006988 937130125 325254518 203897924 226008254 401187230 647858638 937506284 411299109 693977196 196555076 769014293 307258676 968695892 253909541 556277052 816071044 695375370 515318311 565894033 315388801 124623109 955887918 159068389 619020103 409124063 888497829 532888687 866925324 139488252 503480642 447511173 328326556 15114829 366674210 548980366 121698106 18356259 565165723 968828753 590772580 656878473 614031558 828239932 282035648 909082378 56663332 726693744 643338344 710534352 443254234 881351996 513773400 317212352 384315740 570511503 522870925 957023341 345199300 689662236 981061500 376658011 335184224 730901775 395975104 728131872 953214873 156891858 779843391 358992373 14922751 865193312 60646036 637565753 710939257 901649000 969786269 588456187 133988956 189489062 294327902 234790924 350599086 281436417 117129845 563206079 668468427 138138010 351417651 360884348 201127154 776471969 553964121 30603891 404762299 611842215 380622985 89023480 631016682 269142256 229034840 630740069 654622394 903778899 58034114 606260863 580479605 562905908 933148106 404026033 884607330 932499631 178923945 320139508 248252996 306351869 103928020 345518580 289543935 273810038 657484779 101995583 275077513 96733135 431294007 439759788 106662276 349199491 271605508 969413028 393050799 169958969 461171776 377385609 867535382 30324135 701830401 3076302 369889256 749446466 691885287 85343645 594162849 918234873 552004932 957339090 994471966 121570570 181821029 515492324 741861141 797676902 78653001 569612510 323393331 145892581 238214621 952531458 342832373 55596887 658603709 701817525 625367001 774790696 329840142 692549518 167493566 141264040 83680131 466629784 70463462 4995829 592556352 214739837 243138390 840743377 422363290 862964143 504384609 996102458 3981306 504466724 793230748 308402180 350436437 798633672 300734805 930281436 693557675 721644408 257080504 941702038 376002179 496955391 400229129 429960510 915643093 165888110 615495983 330239808 970090438 732109511 238613856 448954016 388394714 465309368 600765429 87458392 527251711 544206617 714089924 436203850 312043950 609915174 564103831 932051939 132793289 642804406 218684240 97664405 577927137 510177822 693590692 813157643 654770832 829298543 41707277 308446314 773311921 984490751 518158091 403706022 71184376 72774672 471121529 137121414 682867399 37978439 696100708 427705317 956102456 582062010 307559642 471960886 477565082 845575059 571386805 900084143 126569093 116879062 852064229 443164517 158947150 345426458 48716185 661690674 315865730 21084472 482647637 101397357 500399430 772619264 319409710 513073328 120338632 451907677 741067832 74131305 887173293 44739547 185532864 684408840 648463142 63018335 417091147 793673615 538696700 721534181 804575377 559766192 572347841 500843434 849705302 111976488 966160438 973953689 957254988 522959920 696437417 645255083 280304901 152682998 759549611 961090166 192900038 582323191 302263331 188958526 766230051 473577626 951562597 613328280 593145699 559826418 26072071 627683485 917685522 144415370 792904143 382168365 421872389 961530019 481207529 12456625 8297186 834627880 843688502 195352990 163591842 243624184 89397433 99183261 205027737 827433401 204072564 816742920 858936304 7016707 405360510 229657480 391996085 196742031 35902097 897955782 612121621 791857212 960022886 309388158 797961809 701805983 357797322 917923930 996429813 753897104 229547070 13199197 22047313 543955276 208776552 462319800 981120485 60572596 570821045 904699183 532642605 501403676 216997379 764563280 142854059 506727820 664801875 634020241 79787067 907052902 672909204 772153087 392842182 72260756 853448282 941032299 680817666 675597163 467690094 803155559 447899719 110529624 656087457 404622017 328768239 657015561 732677359 948476478 203749139 982408274 484745996 649709629 687429432 284401010 866951512 881802776 350952449 134241244 531363045 69200110 256581199 118691029 976646713 812490291 460045942 748352641 220101517 784276890 172866564 394071228 281891046 28352884 229425852 751137651 39083608 635836694 505288447 416629373 52487301 262923163 177394718 164743495 926432176 353668546 276658312 897931661 322689566 861497880 746852342 115421079 484584376 977068315 360167029 109916803 412281612 895558483 82632024 214355805 763822042 265648395 222838584 840832692 882889647 867108571 666063587 325417534 586744019 520838396 114625074 150465888 289608842 41753085 804669540 665960647 798895808 763437069 126668663 292423634 481968880 747654471 710375838 858369539 692254722 758406893 433547689 662685373 886363708 19762912 827109660 377260195 982423095 7105549 376570223 115218456 924083482 98893510 715971842 478115708 911258063 841354993 569342391 479769354 63510272 611113571 571327397 478012147 990809805 919597028 141717734 925181497 833947463 116520667 94702363 917470614 143125448 187094776 101082751 746241606 676443143 852740126 544443388 921212557 914132916 493785259 618831493 495842064 714997242 424938940 576839974 833323714 406697173 253033634 919302825 865661236 210177606 579917082 155391348 93995178 832557619 525990344 361885959 576956281 70945148 44292401 282883853 716517324 328284975 722777814 363750208 409950218 242014339 245981457 927901642 234932060 584435771 686295639 3996269 95037374 602636940 734833107 866418235 7901376 146118706 368459508 48038112 44548837 461940623 721242659 54970688 124269013 601539380 320281236 729050560 184349583 234449722 128503191 744067974 393515881 739789729 870875033 641208411 596254868 512458150 477694936 10085259 656464693 52029172 441817356 85339584 687720216 601906437 682716287 360390522 916671891 181301129 393432314 345232488 413852270 819003464 655342772 770326660 574386032 198436605 252662826 804180951 359693976 741933776 434640455 655938178 104400792 563945120 821565867 281620877 222923155 393596355 808920238 399371466 463639774 575497947 104937451 17873788 312193953 580268362 203736325 150734203 380140558 201817670 208104755 237677220 90251822 760780965 503398789 610207648 513446523 756226746 231325308 964442604 301699350 367118491 48914971 166842452 810599142 79771077 330957040 925297263 261056497 30627034 265503312 23411901 136568488 629700787 382340009 723121406 106569660 403471850 525077894 857413487 236631172 324350595 147860064 968829583 763975967 133947704 506345477 997890215 244458688 364469592 855265595 171212279 578813340 464414781 407655104 833425258 454760703 853087278 540761070 293360396 355818195 631848195 164119282 4836021 887360455 276671831 893935604 768794323 648679576 356757419 346632973 745208471 670293353 965736432 189606119 922805352 801966790 841434355 668334419 138398704 84406647 580613498 89258492 922282226 754037082 459408318 907667137 450226263 678569127 203521737 791151355 33261903 147859603 192591038 218380099 596241754 322615965 689881330 95511226 612212989 857451723 340304367 713321651 713187439 528783661 821622331 756500376 778920915 857045057 46723980 960747753 592359507 617985180 191392704 622894873 854363396 909149733 509436351 804057409 166422450 848124771 786900212 979668049 951321594 853965756 439607566 492482552 552065053 2869843 744360804 339752497 741150075 257880361 736399087 492384365 77478731 873653739 21825577 79116369 930377423 291565304 800027207 643070962 544252706 205075850 612312028 736646595 962380530 822813252 135133295 293703903 107866287 775101470 783433074 803922099 5181708 729377128 852187686 574577533 510167094 368300625 157462556 869907291 874381246 479013764 205344178 200410822 57609247 123044848 182545029 265716541 667952912 29334573 190607265 280738971 416566001 309927375 253154813 368761713 430897715 2413007 493036670 275483177 421724032 105100353 718224285 450005276 668271543 624897404 145145060 181529466 446512369 101063188 146364883 725044418 552840427 601106043 728508186 93859561 443139740 624123724 65037814 789952555 582356248 258039364 756042997 188901449 711738985 515263067 15641913 104845962 630160120 740957405 73369453 495222905 270074138 829390243 842242196 282704406 889097657 548841187 191223891 815980409 325544635 556409553 412282019 484541841 881694291 572500174 85967534 248367495 924789810 743709263 240684431 499616335 133351194 649167558 805588451 387009809 736817421 808080340 760536952 690013279 459200629 129601029 660569590 617163036 708280742 562981766 318882956 18198699 841187244 575017173 265421985 94910545 43264702 922338576 676985944 520423536 268167344 12252180 191207936 84121834 805928789 278644431 254168304 795937385 899892723 456853941 523384792 792580062 244053837 269133005 412393915 703870098 530568819 521575131 762315979 290891226 89259420 252142682 125487132 213756172 504451581 945302467 315069337 36864732 698561581 675779626 156828975 4926044 185014101 157296796 111320067 186072073 548361073 173538104 863023904 886652577 164557330 755001797 872427885 709149855 839975925 57303521 280882541 488875691 116408806 904980248 9425514 341617823 759345556 681319527 491612719 874092470 838047431 192632390 301347100 833241395 73984877 946539329 646626241 685566422 272857534 189479764 786171099 311959773 7405148 602314527 983372547 167532813 178809971 873494362 554238888 776462674 745063501 325650520 83450533 539787801 345494774 955261885 978431523 39500757 640794438 682163371 185070851 647138011 389939677 613600279 412589241 15978819 845526687 955837507 467048113 268111694 275234120 842095705 60546726 400435755 674703463 60728153 164812973 613160990 480428302 207801699 558480127 885018578 571593196 824193186 17292472 591161617 917101132 189379917 779378494 507524199 867043682 858446441 263095710 480929191 583371340 616702450 941994672 834399364 742349283 854048459 715936977 805599922 872995186 741621311 633843446 470879658 626278616 793161520 531757772 548287114 818593320 946861381 189164097 933335141 941229883 412670004 265364860 33842341 553399646 55427098 932103040 706440395 609630797 259955457 482879907 812671450 784489121 480926087 976849449 399973853 644978241 355125881 600911442 405390631 44028164 105617656 165178470 360346984 57845415 508269904 30458870 40529134 410142439 675210447 14423221 685030267 914231460 115943774 518796860 22812576 162095143 240982111 718009756 275767110 686749309 138657949 111018484 489176571 130048018 603308335 85172043 462695002 594956533 994829784 363959341 361482183 938393689 408743139 790175682 130683623 560819448 423897018 842645483 222864974 563302927 397973066 75604479 228329130 934948625 247687441 684151759 680808057 604673347 397723186 2270109 626430396 304895 569545464 662031719 197478827 735011022 541799112 331552296 995803303 119505089 621405875 675161642 826391928 182979486 807394014 972719429 12385522 864374402 217358983 25474654 900116121 90824539 389631527 742179816 675547436 999360608 903497925 208574599 748447993 201659147 516424754 596377509 146483121 607205624 256977345 802431986 856181083 207340393 996159775 839479090 602927302 918939298 970749209 801525688 545135145 814905322 610542413 412943780 22160785 680310878 167951017 851137148 229344859 136973558 396924337 121913648 325239198 460611980 597983700 103954240 288547677 243463970 799862025 373551835 42818650 36416856 316176315 556644966 584534076 217452576 709936198 786952098 595566308 817751916 9083680 807065216 490211476 537660321 877638181 287788204 906049354 779504508 389231092 12983483 790893341 962019745 189477343 144874649 917606587 645794384 523503505 97327120 386943767 439560021 288287386 234687116 744226074 831477100 785411167 280994822 390779651 783612561 452146493 105684199 533366814 769780953 317348264 235570479 811187634 774418411 886184845 744603842 637571089 14395172 961651463 729816536 844269401 565183958 470026995 309547405 392733270 568408321 708102878 178507562 95537569 789252381 883589566 619063093 741813786 172155658 144100941 174444550 325300190 146578760 362317493 70978301 732107519 300117157 390539428 815484477 964677770 733284665 77986749 62101297 130039112 37250516 895925309 908123431 655550068 230429549 639483498 294097230 198956476 157172499 737476353 644265563 472340057 676066168 800078921 525105094 619954518 17180044 332146347 35143779 662011209 194752770 513129153 768775359 94942648 925933654 698525044 248574689 3932174 507360467 584757847 924505049 498462471 694531638 873986060 101359673 673789859 9610976 66437313 913712033 73933762 62742422 90775561 876410468 318648421 314381077 690028946 789974312 558258659 621224967 553246576 154980985 206528094 300224240 855804611 494396470 472821194 855142677 992357534 166507624 662751597 156952766 255011885 964974036 555193735 522453199 279518093 73848387 81755589 922793555 457453938 877522213 879442978 231864546 563444088 271637584 694388081 683406586 851129096 175320671 873673702 488771315 395386251 893243037 666351884 310031478 918197881 51327013 271625854 39583260 692343746 733842586 448778985 877383615 729718629 116825701 531603570 336786970 719202603 976445357 546530754 145697813 612530608 524515431 418704852 938613250 340477226 612746778 447296129 884715915 68299613 987140763 739628313 504887540 280311641 274047735 516558599 471876265 805437949 990537489 43150293 987392568 193870521 714471382 267425360 664449551 71661372 292844809 215234479 33708416 927662329 973673246 579461366 987094346 240899996 362723946 783446664 880391885 862056722 528381620 579206736 858408067 551929628 506812619 134321322 312560009 683248775 598371236 917444850 97779169 996509272 535821347 848537059 38183220 737494692 367374904 277115280 900209956 477372587 691302680 138501715 205522296 368205637 446723863 287861738 562360575 799369556 736167639 688695361 272977222 838475587 138215830 74546112 447459880 692765051 226488645 1264195 518705663 353149624 903362097 635577458 403179529 589401999 358336935 656574574 443619743 348245846 920785264 9773984 590150881 159727885 226157073 94940789 337716674 518651166 811609438 681416585 129223581 50783424 495598564 183632705 626220861 949547581 895972536 442177156 66580666 142773045 879613697 207245208 627474736 932579617 249701352 264568071 254510595 654718326 973767667 430205686 50757024 237609633 415609867 203792259 942023467 432799696 517370114 47955152 954600530 997518249 641715434 861549733 760742060 41796153 631230910 915007327 289391908 683750921 91167190 149250509 849159732 483737976 767824609 375513 564814132 736628507 766691389 929262254 351727510 981898507 902381892 848139296 814531028 577864427 735583618 533223667 891118089 490556823 563881622 426162007 762534501 869772363 987067977 230632655 30520735 732366142 869989028 346921054 849270043 21463817 183578811 529010868 531112140 47977389 704560978 902981716 448469860 225728256 472836995 989756085 241234025 649806094 982890120 890224239 258311502 451354045 539335630 387006000 827416806 82779422 229129688 98445142 18669836 336374909 525167529 409454233 708028226 670527651 867517649 792930792 70160702 904161871 517307033 548770575 856074665 764712683 63988401 802832449 575171560 503081598 336570948 853230601 518320 85862319 193068035 679344103 46958533 275524320 659000381 822286317 486233948 57992767 624935051 862686203 515760816 430615092 264178599 691971200 285122284 610104403 846520942 173633121 587875412 404639388 117984903 53622268 885354175 359424947 550341716 676631110 210577429 955904422 31418376 655848096 231814470 23829385 606702126 321963195 402608922 513832364 3632725 643068300 11791771 512001768 31442570 728385548 671601859 433185753 678425048 52390697 165367922 979138374 233770605 579050393 447647630 596492147 338032536 629239082 790047070 894258403 312674991 529800929 765910022 176347779 131260966 436886004 979694625 270412147 254598464 576519762 317424715 871826512 141325384 525063683 237555333 543671700 188688188 643396976 300324356 871545478 563276614 236213600 67079944 35904083 753687041 871036008 203043610 625377472 231296895 424655653 721136900 309619183 645646060 131390276 560887510 778584329 667255529 873011799 563441406 42233354 686422706 480890877 114154206 354201383 765476329 249023405 477873769 33220981 918731617 681696513 859161214 542868985 982750540 424151231 626780303 235624979 751880284 659230776 923985020 917947373 526183875 217979695 439519108 899321660 72346172 546388617 152887534 103328249 191773330 794075589 442748862 475775855 324586227 275372636 332586262 542806965 855021818 150432059 428695363 681784178 138574457 968965748 982885312 176658257 539550633 610757469 71726232 213387232 450898170 138727127 993318894 188751354 964028088 296243947 9756049 120911510 350815698 123680115 425853806 40498593 609769792 799252919 56746138 229530264 769646627 999675152 607322481 262220124 480421497 320151038 330881048 338738716 788553370 406326909 19969821 569524964 641222828 342379495 25265259 332728857 578719767 292669339 966518602 526986855 17814919 917410698 704788485 603725320 504341939 668681400 929505712 26277257 912545287 113948588 276811340 593544462 246596601 748883968 266102150 792615126 314304775 482407822 963666698 532332777 967462290 941483055 298315355 211752584 957457137 288699775 975975666 225172069 522400798 937786282 515559309 987486102 263632876 162929845 572489055 662009128 237098031 203303741 56296830 819288425 83518287 461041296 392113169 849797010 668961589 134859339 48997269 465293933 816031956 457035497 446777724 972401783 70187297 718705390 385175886 414028805 26498215 111923375 85961471 841471680 305593226 88410517 168253167 247638968 460568397 778283136 328637719 939520018 770091509 152231599 754897407 46437765 814748233 127103485 617221693 127892704 304825780 811226778 5592572 870955967 658781982 205086371 748453135 583641493 294083010 526969062 713314257 202097325 198427337 687792542 539568145 682502219 942700968 676106112 867190756 397794698 116745953 455603407 439866902 559361704 203088956 816622884 728151523 346579728 633517964 698975435 231996232 422984667 411919318 152502032 724363548 944257126 939430988 750319616 440877495 748087795 581999559 748976208 936027705 370059470 95325536 552737534 709769036 958630239 17083946 812949885 113186175 578628999 619102475 871758825 930891515 399169963 843885241 13408286 587583214 724252363 513397844 22536995 327542098 940726034 908914777 19616372 727372689 286824400 132588696 107770672 735618598 207462103 973630839 476944914 821275195 175434351 36377460 614333808 983515100 946271360 568318463 217409278 111539647 24375026 707207679 155264758 888388699 589181556 325418500 4234164 128379690 682804687 11698657 384795485 280977594 922842100 488187465 997674010 930538180 921150942 408342304 629262409 272195781 748076079 282561304 481148500 141366622 36730400 124752757 425973514 789952904 131335432 420432570 316231296 918920047 688769850 397104595 353010629 991186803 975160729 862200481 25946948 698504586 318356164 365747390 879540902 387846025 245010328 432303747 802336076 534176238 740707985 532742724 819283647 906588782 406565084 732657674 219918036 654358236 469686939 296543545 615637778 202910226 932684681 470086245 742692596 970030926 28744560 751047819 547621483 398690577 892300023 832696909 818510952 916537801 658563879 251906625 830731271 569914003 618326413 285032652 370165896 763864588 189233168 789087134 943299214 699320142 914168296 237811673 135901350 598020162 777312626 537327583 718966138 84310818 678436017 532521106 614422594 261720419 854253266 348970167 820825729 904524182 816916555 359190115 991230827 921328586 823990095 926556128 202809968 798830273 429669251 27703646 291810703 171959781 138498602 606949691 377346855 511970352 677087237 492272694 904008536 70016072 146588577 52974789 876128809 480830765 688333060 690054555 682193876 845697186 759188823 299056751 654067565 555325560 52058992 427912597 671109030 46577 454261906 944411360 818576007 84398910 765270247 423307720 71169167 123414119 198971689 999478546 516139511 547581676 237876700 275249002 243970721 809600780 550700525 310653027 921078350 273611730 112715673 416399321 524298172 236973295 759218119 227692417 794136391 347843378 516063398 319482271 188686176 456988761 146088105 396642610 34105764 715775881 17002757 909550278 846280009 402856008 168624506 100808220 111979915 592099072 210364752 490769941 1160136 482340975 951172709 240644662 139557365 864737558 159075841 610109316 412023681 488945084 30867914 781282327 614864078 132794254 947663772 13959648 205421035 296730592 111189832 244704898 216134802 256309209 170766186 522986681 714633393 358615550 44634628 945911965 740854885 242576424 438456022 608041145 400594110 971157519 628783305 718793624 702811573 199306845 572386806 257794361 227382802 426248153 134125490 773520873 256707631 643767297 862924020 616694665 187622275 764060906 451663839 54482894 113846331 474417568 89305229 130103583 437927004 969482860 615883464 251461743 561698797 532188128 529569781 619440301 833520924 127346284 875506433 941727398 413013855 602627577 469759110 604237533 701319975 64848036 631664138 950138821 208136249 927034392 935860137 246695331 953471529 516951925 54284762 490809478 230164580 761682727 596774612 69547852 590706422 727107119 123802260 810901948 696451995 330729293 49767132 856375447 17538953 994084234 284524821 44343167 226660826 360299192 683392060 476601617 849405438 795181580 848174374 227583752 878707844 738134251 76979524 258426613 983495808 224300492 549123499 16730231 784942594 53233640 955019540 437668636 315563260 499576326 364738086 705358401 337982219 914228594 522602008 250451012 687203115 575752037 644876615 268241329 70714785 817409511 762803480 886197334 397893286 662135194 521933946 852354015 821454752 708630774 983470504 909659053 376194518 439503981 55717451 860895958 592386056 138182135 649511104 333800736 750218244 408763653 681939609 712442102 459885025 146846929 73620427 737699886 724838847 260686483 277950906 954906144 245014021 484565471 99030204 223228776 103871665 133488528 815780173 356022863 202397014 153385355 626096993 320484937 947212060 256515843 898014080 783470971 605226960 86746108 806763407 241213392 629220749 711600957 15635863 490327958 151954092 300207902 949774658 415050158 58517289 524397248 948957343 554550586 500948812 154320084 702449663 522630618 919680403 370372815 163734280 91594633 952224702 22051003 609066470 612996201 978213681 66422795 6861784 50423007 886161142 196958374 830434699 546327756 467289425 180475089 898135746 596842476 927398623 943709567 722416176 629300076 77530139 247569706 972689408 819430473 426576759 266359004 85773489 42053166 754540816 537275058 2687016 882343270 435083418 732699104 101583792 76599099 494289077 604314623 918387762 223529654 985568623 474613288 305747243 613274405 168920593 107828273 976898260 502446249 652526535 441657769 663653764 660937699 855347214 6209944 112051554 116486641 670260904 738631627 448623637 371048590 316414441 948028678 230912722 948686113 223979098 163597271 507170341 21422074 756140739 295899167 833560679 480552243 403594672 248779528 641154496 188874923 380148115 440043344 577344673 17056234 968355699 518484979 305726262 442395861 302810934 586834863 1566934 779510039 662102902 736026941 252124209 164833513 658544968 123868596 185834833 10086345 706345669 390021044 751107870 150040934 27100357 234827157 863641944 545543590 277966779 52075254 753650946 280424379 790938961 708829490 917936409 257978146 198453547 504107770 799559690 152646167 671454318 646480829 516682642 32728788 909811162 709717751 277820221 190341995 993513107 306666100 888320043 241051418 741363774 755534214 162196800 84193477 154181449 776396880 926164787 483191850 726266351 553579815 554935332 968958256 476067373 900195422 202501387 551123115 695984270 488623129 213056422 103315603 126532005 930793384 180780273 501748169 366186809 236783296 314441052 388618928 807211419 426345498 926216869 677712233 730177757 578576070 697806552 124946437 70888828 756030308 948721370 512832903 966755920 349569604 623118095 719549636 584312095 300304012 612758822 874605883 917722799 38923200 768953127 11047848 73449450 234152088 36309222 406885264 701503185 316242835 212724858 956729180 864882284 716854600 946475712 889344884 21176780 107302188 10468374 34788689 997021492 229845424 504872264 497419663 333573642 64918638 599003988 366527633 857477973 617134255 729991487 2117496 712897724 835981731 823322365 665842296 204053215 797484285 519507747 318988641 151065677 287610442 944180026 417366683 440903137 515765941 511261950 312942552 220997759 508012696 387639669 601742556 900774605 421036759 440438434 746520309 790613402 428013562 546762140 725523112 909676312 388477039 292447066 306743374 648304663 980634053 994945606 172545018 331361568 382177576 709007786 709944312 979572882 373344702 600581158 252964683 152945252 906433908 353609117 838542707 159890514 217926413 203737860 281232976 753634032 788550426 623508102 421036867 984608481 649045606 60922167 659936372 304251259 411592486 244106738 920658627 241601801 445570586 220746397 723660416 134139785 945955742 209788377 132574904 199418790 192946399 423469966 162814382 651200185 964633953 170922991 591126195 507028362 17095840 603369475 243359391 120533568 493208910 144062392 811408176 432910241 128442799 382848068 729048163 310118277 843729032 410432341 425830657 554167663 941521102 211353086 140770478 943030480 661898175 883666894 380237947 597305707 172732843 648897343 703763157 898121696 29286842 993790867 920206463 221327015 270091208 892081144 946701916 323149698 568613112 576352720 394438392 399074286 739680964 965749146 488692914 711006062 76889572 57749784 130051198 877371520 50655512 728380882 614265266 916629477 925993593 184508041 762117283 638527338 105434492 811244439 225726272 283609988 965953728 228237383 323374680 388366129 624167537 846210695 899626382 965929981 474338556 474391885 357187576 153819675 191090965 10607240 9617595 788776971 205751607 323438588 439643277 913397688 399205678 381716703 88984116 826243614 525421803 7504330 298576015 417912420 624938563 30956240 10001294 904127397 499217258 234475279 170150570 906819719 519566718 900299087 273688746 432285914 302823436 726708632 968828346 426414529 437564370 9685894 641501405 940203446 27580192 766841731 793202541 578901854 150061723 560463345 8161455 813622238 137768712 652872311 366191397 516565724 194732261 776400963 823447850 590818342 352905300 966581800 148795738 357444705 179100131 395420315 816336030 697010252 570838334 60619043 462050887 628261931 581348881 866990379 319486210 78973317 852631354 246154494 493495453 778463743 387678287 549830485 199560280 656205402 201704611 472065898 937564677 143650318 520513515 587702711 774815917 51974800 338905775 537989141 197950378 674720449 404448989 763364176 184832140 197911260 876758224 636030247 434464056 528040158 603012921 895307174 864157971 119874193 78850484 848266511 325574818 44261180 284148919 708839555 568851008 961161243 323765210 765155890 269028084 347333944 190305315 100199732 638076067 525830932 965793111 357284145 136526899 877414677 605413028 868384908 592910084 444852601 670125765 495602520 273901119 500566882 496949747 109754049 433556673 882089141 876140178 432090173 181307270 138494862 792184219 795771907 892794322 406571432 595974945 51936950 629452396 629419283 224574375 995852789 670018272 902855496 476384512 37423529 440001155 570107015 717960839 466935020 785211103 226981163 377716160 669873065 22917609 140491793 289311388 819899993 322545611 211141741 517754863 248538442 828122144 132559555 617318643 796609111 652883921 95415038 774267229 382203333 989773165 264055657 552014248 222161641 428793040 945706158 877096909 662038665 339460343 356735044 637271272 123206662 184807752 596323841 175423496 492124283 997369432 865085296 103373026 37308655 715626093 765275569 107507594 797953589 982762310 892634041 95497983 109033246 228983740 263566070 305821685 674173461 37234732 594075526 240222985 684673413 936825453 135781388 351317535 834510965 572592841 468017525 656130526 355848557 245281580 81863834 376817582 11429362 457940486 718242036 43319085 142945749 492457272 900129341 677298489 83352248 991816959 986147681 552186481 219416194 916187286 222833515 792474562 191878233 205215349 622404888 107270630 481882416 550061314 723556918 905342828 152601884 398853742 315874770 653541391 907169604 286208458 625531523 811725835 573673594 112817604 59923219 636212913 163226161 964881683 239443749 514714031 340382096 376939148 817724929 580396504 368498342 906982154 338114851 66436345 979254937 337721537 791937846 244801093 808665298 867863942 391130853 619856893 830268950 837538563 115188766 116517874 804259524 634653551 611154208 143503690 892766448 158906008 999252094 400259698 789053587 758362777 452521687 61890458 804764344 204146408 228201529 878811239 725493596 429415220 756534046 450267370 780327134 397002789 604589962 835814507 94041978 871004947 388913407 671893092 228013514 896465232 263609918 74907072 221914069 433772145 272551620 343680045 835019406 224377797 544298716 218182616 85620241 942633451 731744598 199118766 78453755 109861384 803045770 371066309 412023608 969874089 865969906 585504077 458918784 181732547 964533809 605699980 104134719 285584319 769542320 451556182 758869872 10612516 696823185 819428186 689726953 601060591 868882261 604126333 669975417 347431656 767702626 605766163 567742920 131428337 153844941 244298715 853406156 521941373 86000758 457852004 740013175 567428687 271733857 632269689 576762917 790816492 713414063 443789966 761866816 71006247 318001364 439829790 934772566 819545226 922225370 156592510 508971402 356958501 914719183 684204244 996608286 760666 390839889 21062364 437074534 894344902 243343343 154480153 659336444 860078407 663816901 996700924 469977609 419729573 809280884 528693484 364522308 476457288 724344953 578215381 724508693 727604948 757944708 934396662 889639932 496914046 815940712 389694847 751444014 885010077 409347471 613673878 132894380 344641101 714962483 145830438 809714667 670974911 300728952 821032415 254171305 191272028 192681878 306635884 180088967 57757890 32688282 636531126 442596526 177109109 194653206 274958650 37087398 578589919 560060792 426760431 839474153 45071268 37270321 135286122 914468199 589682768 326908335 208792072 745136676 890367940 728903321 321764200 743269517 660958492 227696329 539088424 504594858 625964533 383816726 527154059 378552029 9107037 673147627 43920756 469688624 946822002 742160721 657110334 638678084 952281920 802230203 753220408 818406143 629211449 323585148 288465244 791638998 102719634 309512634 741933784 60762194 370591277 31004142 496865308 956876736 727419860 161665282 390809996 986863236 69652876 561965712 643575108 237621532 412970807 511623158 133769117 408869717 802798258 133634189 669481687 414785859 100058430 70867423 717147613 491456348 222956260 454623106 408476623 874208403 68196169 876033533 660803878 847003203 245384512 849105820 882904976 838191925 487373163 788024167 823174163 126479468 248651179 947608367 472983566 407073419 681589362 88790252 458103600 606088540 642496050 267625345 545383638 438241718 986890186 713377056 128664320 736131558 216723469 100506863 438963478 900158584 216114928 779836051 900537557 780636078 721216596 365776157 702461388 935375316 623581628 799185069 284004203 615090669 632183798 197003687 453586970 75144273 499711500 833026576 141506996 951795357 328426919 545307388 566352886 380818940 49033529 650999510 95313472 755690920 984207733 577283998 932320407 385728176 262711493 49850559 189709734 844303881 337442081 882695091 185991743 452191340 654628450 187106315 487358539 892043986 266301 592277685 458324575 900090580 503160464 666774310 457800957 531731971 851658302 174875330 542259169 79633905 220075803 28723891 230800349 731882637 125955426 377026442 619196069 825005433 98736727 701323338 163173732 357809256 867477590 67744210 280247092 219188233 795673967 134148290 862938329 374841865 579718486 112890916 328620451 855492607 242547195 8054256 205333742 893851265 276021841 919862951 479730291 117184218 170462354 249130602 865335673 626994293 440040613 776955254 648653394 912905776 812734728 765562908 962845151 620942060 658068010 695216784 40464437 413720066 682861309 2280703 778178558 844507094 70983338 225475900 99824688 108566402 889644878 426986432 154938686 755360187 477876612 177901960 568323070 753744227 756918391 23034008 540840904 265290049 603935201 486923882 654967793 482474332 223300 225629923 224499130 369528283 151059174 288069808 918902711 581841311 442065850 799816529 545060454 929893686 456688920 569082839 706856249 202740563 843262612 47174200 294219411 806768418 465022021 612180224 777261799 287086837 378300310 531210440 241663043 629083539 145842653 483451603 222513080 512151195 151992825 75958613 526978359 769602278 448261596 593605275 448045854 260588229 732583592 96923117 219025665 419454040 148506106 781713996 499797763 442950578 318760579 245699247 398554402 455246876 512916346 364041007 168476010 240830383 723647145 310135461 837196363 948876508 991552217 800973579 854616764 9192043 735530029 36756846 106336765 938621039 588729211 807706722 256093490 307206529 928975481 312532398 2788126 135228199 702428024 617997564 362194118 598261317 494223872 755005316 199194240 631100957 218803674 65281022 439806796 798573516 373314263 308705745 843194113 847598509 41261065 733019891 355075876 23394844 987537434 85645842 485263762 683999613 470029900 188359067 532382921 22489373 429966705 238613922 289799142 61602688 982160050 596648493 83936434 461486350 346666570 451906570 710137156 838183149 506029628 438409730 498046141 168754214 158458344 397805361 674183281 195246828 237630763 831962781 749469167 907915814 597112925 752458327 197163420 875006830 649638751 905397593 417144156 579557578 652943504 242407113 93186452 667758500 208980127 790203400 432090757 782450869 897730579 66335317 639579125 160957330 618744352 244013256 421131375 436799755 996923293 401416824 452327536 207237283 407960488 663128814 801399387 842173609 840336063 498172137 896195157 12900759 942717111 743346902 294922478 24836374 556022047 578647791 887702953 498696579 968620495 670140450 704802820 725880456 529509418 307182555 975570513 863204435 701191786 253585795 106194437 989976702 105878489 845669835 277437041 239095183 848856724 841210965 838220360 173435270 88064591 91915717 468436678 312264289 340014862 886997024 543443349 426610713 269971605 152880740 8188492 913627625 584862566 286034368 757483088 72890524 642701708 515171211 789788096 781859104 332778979 974773716 68679635 612926190 85849366 537684371 737073614 916295738 867093208 283171295 883201252 186494510 181757451 634280130 197710518 942930973 918489006 601456732 943630075 750663544 284501991 123507933 970960225 740409927 653369637 193525241 890620773 835917858 618111478 243367223 37168443 60257270 449133034 83138492 170501101 787072538 453762073 860667709 295131786 114371769 535673625 725390356 982731765 609463034 704362343 363906483 388720113 575695316 227062850 64799778 676389674 257277809 333886486 293279378 873534200 186227734 261975414 436458372 978559854 252825467 622411556 63394930 853614792 389462984 922488320 382194232 139216378 427336587 136908586 255941589 371887309 295752934 646095712 627878599 381879777 943419808 453415920 428994231 238794600 887469424 584400665 366604761 723467811 990439721 57928284 401373784 810941677 49824695 872545143 965762808 916941013 992941099 699153859 710582678 340658726 929024315 636606206 799630588 307241529 518132603 783573556 501516407 74560700 980112282 687066698 568764912 315498045 860385601 567400203 653383832 80875663 672826092 106961121 776124891 76467592 106262798 54834880 329696680 380193712 943386553 949670 46819646 519094677 174428523 347794320 978921653 763438191 310169844 774904284 145899002 34038718 70253855 249609332 292520198 208601584 951511460 188259705 345614286 490856529 341695247 23732573 618002900 480628234 629177192 309600316 509230654 932843545 282591612 933925394 493163500 270158479 749874488 620290150 999566779 285300114 514863631 833701146 826680588 814920849 325633431 422247590 660099793 699572512 583575746 469995427 917681939 33104684 266801817 811825354 791562014 928535981 833357062 138275004 142051863 257092370 741869842 792490696 482934078 550226372 306908139 303263024 49237940 941120883 49218240 385238272 682564525 861234084 179324809 267667946 26985273 238883772 603778167 123339174 945802519 317651719 706658337 517194268 339939907 87377260 38566181 238388815 129104880 665718056 388720809 253648101 924178008 969829979 372840198 647470335 294853702 840829604 212661408 8183166 887485164 920288688 128937405 413562849 616816895 799694552 115536418 564785956 930939159 364600730 72075102 69711852 392797542 676165080 605866972 517607566 440428458 21558703 731218055 204539955 826831277 70814795 784671159 548005549 21750102 124716768 635518661 975790846 781866352 459748258 464982939 157345078 199299826 828178701 1807151 156199521 1954376 931646596 358442374 165015029 21984448 108892664 527128897 334953530 705600859 791435520 771361379 106508423 35263520 243156793 509070360 186349423 59571021 653679314 778147141 220511665 696023069 207174477 243955812 633694779 518455371 586881388 524195288 700180850 278774002 642352636 391224798 534953660 305073757 988108355 736086697 315293087 349978335 77449580 571666153 107933476 531772173 437321377 400080993 347204356 389022130 199761706 457262970 374673903 264958308 636844950 699493395 407140222 670503100 520730125 220614265 836948523 521622446 820817626 185570760 762699068 178315806 169849803 255716078 496767254 884355986 303758384 895921903 717476118 743427969 147624579 339393250 750330454 10282191 548208276 321566283 351084917 930367826 17737708 817968227 672087234 958076865 282883488 790683760 234871461 937474398 676437486 620029933 830300354 901971304 70935574 132764927 175177584 541353733 163119687 39921712 954548594 134124981 753024246 406891782 223235032 228948361 625283299 173082711 256153075 553656094 166182139 890070682 413242420 42274159 725544560 886777325 754128653 168787549 710394587 437615062 372168482 6406208 547838117 250572703 546450871 335397439 607184215 822322939 540793609 253550628 292076164 633577684 944454306 114618033 431497002 895887628 542135482 247389657 766892622 805149674 814096948 131298011 393513967 490518611 692586456 99126519 955710970 147283559 421505173 729102467 246855001 544097643 563650949 979012006 429349060 998835085 715892953 980099018 67233587 460154713 682064723 69440839 670146936 675907877 438618585 45498326 790784822 346592374 560786439 986286292 338768058 757166522 96904171 4964885 511901822 425028363 592833496 126463458 892343462 868488458 300680944 718288654 462566564 340618023 293411949 703648501 345591460 85000047 645753465 862971245 368490160 334497803 244911005 616291520 89291897 723319130 712325861 124292810 998042055 179907883 126668530 65672407 347144874 538790480 977973260 495983304 627530091 222116629 620292602 158862146 915435998 346479469 186966199 484034353 878628606 857790352 960766213 298549661 554234999 364731622 987445478 71745000 971309829 603773566 943633491 946336538 513534323 527419026 135215559 973778590 760932410 718519364 58470072 493732186 612566494 349547154 111640071 629155375 854662322 292976321 173111051 628189287 986084161 508593544 68697455 232280373 89526820 837807133 684427768 741190527 903643387 944956121 168979213 286641866 503951665 794901715 157841481 100142657 681963671 106299723 154256217 34272913 399510006 730005661 255565248 45946969 788019030 741812795 989255795 173597877 365393834 990572995 469224013 81854811 309065527 600622400 316877687 646663895 627054241 9239060 573129890 27799369 132820385 566150014 984256496 759897204 78916024 60692126 722777567 79208426 655631812 406369693 321897642 125860556 824972040 642198148 450239858 174237326 322083401 957885218 226549593 774838182 829317251 199989044 18774415 540097880 338669454 877170463 947273736 594101064 506597579 621048288 526601834 796295635 198365005 935768161 13676221 270424394 232578786 627528445 268916779 46750744 263203058 436279873 456391142 239658340 49138350 807089267 865235404 295154826 363379077 125988479 137032822 879566510 136382743 706030205 886979330 363856642 867529305 116188904 754714831 635584777 381420342 918589060 998658843 460928815 668214104 772321789 614284747 728434064 820958439 738838327 883984169 361566049 241036605 668413629 309603804 891050550 688425635 412767 222620831 702986336 280022058 556834460 515958418 853250560 221175611 301440707 99393954 972475308 873249625 836934903 15705265 781462398 611309676 274920971 240513841 667730667 355289879 946232447 46894261 63625990 848176826 612139365 934237168 91114461 492642010 96887368 779957674 124789918 678983745 648515206 196336187 193627248 995173835 348471556 961399942 86869060 9856308 973276434 421579287 290831482 233295570 612156909 477594297 238617976 8092204 243574255 672787080 33750703 101502801 569310614 811454288 693374767 140195100 97173504 746585847 2547508 996778669 624075916 654223261 448888619 675585569 447225438 292114761 802986576 151782911 546493088 315659051 46227126 999631815 142506266 21902117 887861452 690147355 41288035 852423378 73615584 145368749 536193237 553988238 752661777 548755395 846969153 618319618 78873493 204259906 461136607 950269286 906237047 886089716 224816734 218800878 71149508 626962082 903011212 843345526 581241072 353002584 464603268 569196786 224225792 241201418 33683622 982362437 935271140 131121764 343051855 251497586 62438279 549915726 125847883 741087687 976845626 647597917 718574126 660385562 273249167 850827748 214628723 570775922 566633624 617319479 408250118 582644925 85039747 905521982 537622043 475460628 336062496 471118235 409776195 37129002 833093039 659819597 820379564 240709012 927726200 838231481 687363539 650285982 399606294 97218205 269755438 979621477 633554659 67819470 747485269 485686510 816608202 448699424 110761083 696774225 158424276 630463452 232628431 572577977 638327234 901293897 406113007 308999891 890471301 842491719 803391884 574681195 90371705 303880902 533972564 488914735 228662842 171282876 968447587 406465294 566741738 816495160 542750923 171258226 452601311 219960315 821620560 946410376 165605968 409066905 40928513 807156565 867528846 470336553 979208072 25449955 981209770 490138934 258858414 237249070 116239239 241586854 283602719 774426337 251712791 203543559 754408068 882400523 149804082 210258785 818067540 997049085 150592177 381107431 509433793 717663503 357638198 116865376 744714728 786284327 944619179 174313721 207967699 368630404 38013516 355794108 13414898 539536018 538146344 816460289 852574545 622714030 381494849 551504773 180798025 100709388 191921246 99539732 678103441 771748693 865093931 232448713 494200737 518472583 986231606 214558976 179714767 221784228 792129810 240928664 243822935 258686534 833234225 43016168 257973150 887415205 988490477 950347399 331887243 10745412 344907030 349744962 912362319 172621875 79132139 250027302 516693789 577965092 828120810 273834316 83136797 977879529 627176841 579702622 768890722 824582511 813915379 981761200 278492437 745519623 83570932 899294543 401121030 838737431 207409343 935214388 651423410 708559825 310278688 855375523 977992409 913120196 683718991 68241206 216782770 639369451 905732221 487788756 164446861 711515790 528811256 52799094 190380336 503228517 29816958 254246952 203146516 338818492 685134634 160568469 949047587 477695604 874313192 337214429 477638580 685649319 621686128 612835078 705981321 580910169 396593851 894169892 625014729 265780228 95606798 409101378 297346497 220133062 340776678 731645670 721310112 247420293 469007240 698368135 621958816 867639886 416287573 550511925 523195926 546750278 479354849 786123585 161265664 137048337 261017661 462209686 600632543 668599996 71519500 440822347 491317795 804993884 206439024 579930329 619354269 907228112 264622686 340180089 309025666 350590540 933456411 342102170 61800870 110261276 134229893 228604063 709749119 338342279 832214994 712680007 315803689 260178389 822854487 466482344 122315119 18452747 148373658 686254032 43216924 864706491 750586343 229127335 835636620 374010206 976407705 235291748 735257638 460374185 483585174 943994396 316104765 203333503 737063772 561809943 287425734 106286553 313714372 139105483 619224325 601616836 43246884 268429090 530700036 606685523 941957313 184481523 722833789 554179389 933370623 511692882 107433769 258646441 130837233 852761566 519753543 704308405 961776190 91322977 938576650 535186428 290463395 678591796 756268157 375283872 873328595 765330682 984065118 625200128 975961955 626377172 376386756 727556965 246026221 313267277 558129952 195583873 31667492 303430347 616144887 790695687 905853008 444087754 612797501 745292292 479194411 349860153 197721196 474570603 722654136 918802944 34970569 136647054 789808380 628598734 496173260 454752188 796678823 673331299 72558731 388049626 938275635 145002923 61699127 844430908 53141997 256086001 549113046 862414480 37692468 918576336 765726465 222311856 245904495 705047237 761516715 122629528 216443310 419104148 877068660 105122609 149454171 325395361 343448832 394586204 708899107 153740089 339905916 628274756 941035809 616029417 632999161 934169608 274886720 773220435 315193517 176379201 132760716 381475832 534393443 981233496 31922691 300291629 712522860 561471411 945092865 414270414 504571100 606528819 757471045 345876890 891893033 413893334 562372108 970758826 244081500 834526865 870328238 623914558 908200920 907707202 761346481 941629159 864539929 517542356 648841836 735353357 791962593 226112875 676826347 164326144 825182915 431792757 206806996 231791147 464571422 919653721 891502553 812799210 688199580 227743174 869159841 201497592 24265207 525130814 524985835 247035300 722874260 773592563 30638295 43902055 604339228 37044603 368870822 948137856 55422823 606478580 371735450 363319213 321098252 104540889 687994140 512705265 113963034 684284999 649808154 55171326 195557732 993615606 25478118 690242728 244869227 84092498 740372365 678275283 538117521 156586181 723120337 8850135 827494689 290022404 589270847 842983155 962420121 136792213 901870668 381463321 51931253 409637363 338870741 338803270 402777898 71125711 414058002 967497018 740297544 213255298 833088201 946374965 898853285 539533125 277991346 950775838 415610820 675371968 282047999 299015983 743171669 860813364 150199532 486408862 663787002 134469391 991350937 967589392 845370410 572161189 776632296 901542481 651875525 158704912 548823754 50773007 378242248 82087850 303649596 819633107 359153224 778735194 158765338 95821722 124676188 778290494 887902199 535364958 295216275 114108060 639541341 857400191 452380720 990316364 147692316 850582797 314244493 915502652 278980253 411017984 530827648 30201668 36631154 782135922 41211855 957572395 822491062 633432898 696538033 334721077 417167039 811003574 438275163 524083331 35370799 578082003 742117384 362237502 348785992 288160753 668434216 511415194 927547915 791577120 597673323 817987939 459473059 663962567 334481384 845277542 479121031 313013571 550872419 45856303 267795139 975655194 733975105 186207466 945224689 224121018 649944053 828420602 923056656 559701501 243183879 51878811 758336310 888421459 717959430 830272393 264007865 948259997 8863822 22898172 123622119 231493115 276713209 445677310 501125218 174887968 835420888 350562636 164384738 155301154 417696095 621932173 579204696 460257136 943095643 324322000 481053397 105105739 377969374 194836270 772022262 654962644 315459774 776536086 689853061 776772204 337771934 324556766 426543905 805219566 448708295 555804055 213357704 709691053 499610342 451087336 294338875 947737129 973032150 439487118 532295011 937855710 960040201 506933873 903211475 628567695 118403060 146465760 20360250 689191820 141593877 394549511 478620037 787770053 846089146 910818010 815329152 709314060 220738825 513923165 992428430 133788388 97375731 510916448 988800514 25655854 576311658 129935182 640670860 890898253 506757190 450609548 429658775 599304926 55897789 428112251 113706312 677025482 791594209 734311425 202295799 193789871 909312017 117023435 818524130 513461852 138272618 764003719 688990317 803221995 35553688 151038189 598579590 71374445 619483859 727113406 407788818 551603160 751534994 265496339 251122955 669976091 642072541 387981 462177465 773984727 812974076 173859961 530620212 831654554 357399508 104386743 413994678 69525169 881185845 543034405 147623542 200755428 419467932 733247692 619319492 87142243 502833457 341754092 523111570 211256156 418114468 722640754 922729752 797952255 448706109 312571840 438666209 928411388 681213869 612366242 846325573 410488380 562669794 318169101 836125058 755217673 18671387 335453171 97761153 391339805 394276929 285494029 518159153 797396507 30244134 187292668 575232889 770448143 345353503 950413967 944185676 38950019 444570300 849558774 450232938 543815233 350690306 615502510 232232566 716500727 982614359 999614459 734224521 710455175 546652243 311849967 608657252 291540149 149372587 678915980 100314306 163180997 545098492 726326979 555570789 926497398 150125288 804338668 925790137 539659678 865519593 570688650 872452067 422215608 33613010 294290202 783846305 240007268 404252368 423188198 379259491 39519631 152670703 169460283 331888652 805905302 453351838 620515881 310378537 115272443 345738412 440956130 896369503 603878555 831279397 451651663 743259436 630418940 120265397 872890433 636563797 623323414 163258099 541530523 442194483 670342191 87264938 489750951 926515307 294688741 568950735 164968023 986814001 741737199 378118312 853927211 965642665 476277133 29886582 813160430 948758696 642305300 624088154 458157336 121131016 182192081 654103044 234398805 412140452 993686780 451167371 936794438 754010832 999771400 260495160 578318590 485770179 377573537 714212803 515243927 827001089 81117951 573852998 415827881 449269063 869624314 286161626 276228255 913346494 647337653 294581269 653027059 285032823 572448289 244218554 437461121 301203925 523609951 949671751 369497403 846950343 112628911 50166448 821552415 236098194 849502946 182984539 177399415 393864894 296447849 702248303 301144563 50923910 920729693 955498004 347972465 195545098 248983973 301565549 269833149 281530873 9611941 211846881 199498426 584009095 556060672 393809143 556758666 521854518 245166819 344770175 179512504 780723300 61037234 228876568 62472999 6401139 834874960 810438058 967425257 901792641 112398531 719477993 133818490 327494425 289985066 850886471 704389056 997993677 848819810 772818197 434894041 227356641 641680709 408415246 613058843 846250642 886446277 788510106 145295306 93627731 578459738 758307224 156350089 221660993 100778223 365840283 542905408 912654877 364380208 156212358 827008227 501637657 72419060 511004322 437649640 962605609 313436017 340339786 781314539 432566527 954256945 675774208 916241759 183667036 216533997 739556191 630661782 175504708 966510827 511019031 609094488 910604284 15930077 135471984 154097569 100451924 772909137 412337160 857654299 752303571 939126042 844849020 181394982 390348332 128124493 943834070 298358950 972734237 417398802 544746598 544042241 958422804 523226873 471217190 407234760 954483410 699944786 409530857 848610470 939753375 493363812 891470709 27284016 39270008 656470678 872056245 982055861 286312089 529716481 876750943 671052248 495645892 841539068 569105533 396699454 801828673 66806294 794136488 750101068 320329881 933610699 21012774 354184041 66010022 741364666 301499789 606953371 690127035 806020423 8560880 371872159 100860590 6605677 86603425 327811156 9149309 567254522 529653146 459094906 803768903 155637247 431510644 954251940 371883182 736770531 927620959 770691638 616654165 58555221 509800135 456780178 454775872 257667554 176837597 318249686 247412650 383436766 231978464 443518710 371519059 67769372 822336296 465757334 366945188 104206434 128847758 748430278 115103919 306877535 655968978 220270038 570383378 643781618 353984519 285904759 642820523 777558299 958247481 447539153 150893538 824971107 432685668 562827168 622150327 257812716 597427740 577717846 737603261 541180249 228897671 664513546 732842067 40951539 405139224 424344979 674034707 85303463 988438787 63452733 405151940 926066091 281151156 697499248 163081325 708672904 97364064 668227486 829857388 177027401 638656106 902859350 446072805 990334122 986420774 669701402 558044916 855522485 914767764 769398997 204731575 223199478 185992350 667127437 610751273 721600779 944897539 324632290 531717562 313110894 256638192 110645956 169828325 8778184 18790792 820950772 877831796 4464176 982634969 384922203 358255668 7265460 508119401 613692811 794228424 820156149 583886779 749979345 758064963 747588252 759810277 104555588 611002932 749216017 65139714 938765827 48174205 129484993 197677002 414735326 880347994 868864452 275764400 596255894 46027577 656369201 886955175 446954969 508430252 347412166 480407633 29302092 662158848 934415384 624700176 616501296 883799634 364245269 561585720 344725447 273305560 651601691 891330665 675166995 380724996 626150595 764237238 564588928 103339243 328902472 492375299 137932631 536835688 896671695 790684589 953152055 322207414 23463267 603311997 166901843 283080208 338281736 330586669 386265566 829959902 103650584 85573078 932318532 627406747 42295995 809313954 649081611 671556887 272914528 560120177 458446938 675086365 66322822 318790181 895415662 881574982 767224561 55510427 582383218 62775310 967719954 141695560 174361309 613875446 246413043 974301103 655419206 938474586 121648763 637654940 705611419 283433201 317385896 17717199 909827313 378962064 616834964 511113406 656626194 149219878 684361667 572568770 744293249 545471285 276734861 380164422 458440807 336433040 348103078 723363326 70464121 577779657 738905613 914442320 735836488 829687737 809631331 553851172 639669392 265946520 403337474 805772463 486162856 242694730 669879232 867945479 457906804 125590209 250786899 802451440 909644834 429488620 535247511 88860892 15866866 278013637 170918397 746952754 156398614 528456395 931730142 479872255 953227952 869822521 221635052 657286654 986618650 41822935 663162919 750340038 946808872 482327457 933180863 445500096 345381517 14481434 237606692 40980419 471269520 297629399 958468537 184520210 954364694 402507038 715314735 485079198 862878288 483779580 347633218 725388069 398893409 208415065 193017129 600322954 313075180 706371329 19812854 472469859 23808939 560219734 655044174 821546876 593688251 610324422 190677538 460988075 271988542 401796845 47043250 857536951 528271942 841518119 829753674 149252099 156109623 564491028 985471100 392426266 566571599 378779130 5435834 842472670 589216118 33272112 595712484 645724598 635568973 538860746 301959458 191645762 864713392 860101416 701746155 82905375 342672651 688352820 24581274 939095168 466446532 936530601 97407362 594318018 961687627 581377213 764341975 418464067 854865813 128237736 102965048 22851938 409224674 681338708 540013083 466671300 508540296 370056732 101726400 173890094 139948761 840917375 995361335 774351031 565490346 351561284 488534538 600270187 647931846 774237888 356624189 816909715 970644071 317247424 200370674 86099239 764290657 219164486 571491673 362002585 453957071 980022440 251073489 746267748 14444497 555702621 628950933 483715937 929802256 70604497 630924590 875599049 192435431 854363000 720797886 233951548 548308832 503143677 241148971 541486990 65116656 641940769 988326845 988180792 420372569 879461434 177659996 177991502 705720085 464394497 585798301 734279766 849778414 921644606 813668666 212093396 301550404 141750912 719569281 380553442 814138121 609017343 996877779 608855731 181106425 438606026 575851986 336852721 570522752 722378839 567020163 477650016 162643974 65094701 844311658 886955401 350476420 382244198 391817649 778159714 640995055 71436205 63110637 180783816 172723596 442109001 155360919 490192864 795666481 616583447 882478337 176155108 91546253 194904173 213484269 902362352 885952245 505963034 953150072 748544174 486051677 641949246 872949467 977279350 891904503 199808244 262887405 209121231 942323356 529359995 379246436 466628809 956675699 301028928 897793536 497470077 785328172 715191031 659143373 371244976 307008907 462991800 984065730 760934026 261613837 621716871 320259810 305309479 356394687 53365733 953690294 736841160 941113115 597862158 717733040 453720326 244531408 907404449 351967926 944430915 49741686 265341530 11608385 36284235 474299996 444415017 403943885 248951266 719826500 461655077 804692551 394787922 419279372 899618152 284478402 113633073 600117353 713032394 875444927 171451514 49824140 288572867 965369980 569991038 692679976 88725234 796556469 874192024 500368968 895808663 850749141 431493368 484395926 329183665 770747832 486998190 97098398 564405433 544412467 664347636 761457592 929208730 475670549 409532875 572176107 587042374 262891141 131475093 900925479 513180435 148480765 446779212 92754262 16519243 378588638 858891621 693248905 544600853 594062016 623703662 166965575 129836295 25873511 932918290 495187935 335992455 854836259 568900607 596813486 293202801 204570824 220451298 668496992 937689627 187183511 529140216 396058110 186680616 180851353 199188439 429659627 345318032 198440560 544462627 279422056 483843478 815486465 542980009 867221096 263944444 816743763 10253699 64883402 963793444 240930336 810243602 535563120 698937305 496641709 715104436 25812172 202148865 519170652 641728575 990377037 152397487 222514451 360994565 966939060 170138511 114769331 223973924 379735274 731294967 875878114 503039090 93262307 119829445 837334488 435948976 125802797 42682369 997751581 643588146 75106737 205459162 351725768 784214805 946368327 445223026 613259930 811587979 180131719 144126573 587042942 96688833 282944730 678412363 490562130 306776092 849329057 552192633 911430722 515912411 802761049 380863571 473439032 259875389 876165190 700664930 786144797 80979849 586797185 842400878 643252109 272991582 8317152 508500976 315670124 890342497 225124942 455278515 176341705 849409951 104530074 587111051 628686974 787700435 318209300 92995567 763623832 97154638 209531936 438704116 887739585 881192460 849885002 777316931 712725313 775254672 598459732 333395933 787620597 857246962 576385144 306811543 566632758 772431163 393007700 175287563 994824206 263007170 547898201 192391181 240722973 881211632 473772374 121415595 617961996 891166715 782333031 598009713 219057642 87333625 449692942 57222763 826767277 309546089 448992934 228771346 598179961 886649985 605869344 110797222 915015787 670245196 109905964 747140406 667426792 610645765 904755012 379502602 818137162 914830161 164871436 626633062 781562237 754923728 440625181 947088643 834053162 967059926 50766449 695782059 549013459 936607626 261448387 708816468 785500843 775815220 544833596 107004499 348743051 939977406 674855407 669557401 478962981 65368906 753569771 151027139 340359789 486874233 573978493 162065449 591583197 376125466 974182497 929704001 518927021 640405026 124703274 40420643 586462087 917773434 589246543 262801897 3985772 437806565 183100229 369334713 904375735 450895123 190645616 981027745 382819740 463357784 118987624 900905407 537466014 804733623 979762130 245774188 73189909 977684141 769931357 544089395 959122651 221835390 327332784 172344982 121324050 842151573 963599718 441163624 838618192 388843530 508226953 515966703 731163414 643625968 890425563 294975588 861800160 349915280 248460196 857448877 745170850 839129938 855974434 794853587 962255985 930288893 24006305 764306805 707508764 154714930 439454527 759845785 647113929 130126326 114775416 543874458 815344000 270753061 119528756 21033466 500638552 721225390 858491642 124400698 893897693 492623471 873052510 664711556 354210065 227343372 789192228 422821519 541110302 528684889 778792088 432264993 116304153 179126542 915448788 912208232 64236239 819089624 918751629 183820324 476910907 973763077 457215948 515927 116201681 214560574 84891079 896866303 460072412 158720017 353560333 18880644 716145214 79227 829655282 355985418 817079467 752943053 413119498 606108734 999992573 72599771 756603982 131466358 66319462 409227786 460365110 305351596 365881387 141469478 192518698 298880475 786801019 306739520 392053993 786117409 45899186 975589770 110684661 79610544 438168642 464008964 428137271 166513103 326193491 728593733 189727199 148287147 807196375 118675281 71910073 18161820 253835023 201685152 450639483 992108722 693199668 737956288 107924329 187884554 997956605 329297699 573740234 267632507 426273870 607275520 426609941 31019056 603768228 929174999 281642766 116476502 520124391 331542792 437097553 827631452 199457246 978384186 352379335 996782323 272303616 428678588 363057841 919110848 854634676 610141741 614825549 664469671 534770730 68475495 20272813 937568423 172843119 987631651 225632856 527092356 159216943 433241161 32411450 938649357 616542603 90167678 262561382 730099508 836720496 82414696 72702728 468379305 676859149 649773225 738489737 857063024 746307775 74747984 992091699 588155828 972507374 886759189 722058454 239638194 516971597 362569765 633972638 192438376 83493185 923149849 481919736 869520223 126050811 285868133 270342788 483641200 634337434 243009361 526771723 592196819 992417591 153734797 936453529 409272268 643580039 59509818 552333595 798561476 684777047 877622402 357326980 312736185 527778330 323470377 338993256 913215092 746799554 512669781 474610618 342479109 144276770 98864358 702895587 87453717 288268449 876996974 501983228 56698730 360819188 822548751 542771704 726353616 253776784 155281909 425829490 943667657 119563471 80209030 236347141 123999965 162357950 350505763 588261021 513287111 217812220 773884673 355679594 208973519 635638656 215401726 782028714 106097926 815212818 627819456 972895302 710878206 266101460 716412574 642491157 557613530 967685160 775124041 727833013 734019492 359048356 40225195 160215058 237420642 720517108 885052285 573060322 31763605 185723024 988421060 252859828 280599145 30863898 81131622 21989154 863192639 735150786 69825215 869931348 893893973 717107274 267725944 997517411 516365575 858749888 399788027 208722538 751531576 306312806 607389101 942458774 322964886 704698884 523824462 243506289 23872511 737371417 794117159 53180222 989407252 590694594 114022261 483010297 332936420 476504012 483355114 551531845 657166802 426534086 750725213 581649154 874643483 500196112 28774814 401182201 984452558 868729841 573026987 902517326 509605219 916110881 688461506 793776995 126284295 389551634 73249163 819411712 549804711 170503511 961305897 991084039 929361940 952002429 905359985 825068706 593019948 827015651 86624657 478347187 716341954 113537378 364831458 918871083 419567143 548863733 824093177 291110076 720866064 124859666 16572247 979283929 555785269 432452565 500468143 541645985 608794547 785934242 681051223 607493957 405696930 164471580 91680557 309078099 225893827 816047017 800521613 682621231 227903331 336731441 755767483 663575185 836054540 351896816 621530115 383667459 878416387 793998242 958976664 852449413 987553432 465217549 610332277 542884372 115765793 230003440 775496396 34368108 872807485 916199095 462259707 610617161 885903289 60417701 945324968 13605358 15804073 489466592 449227422 471064179 464913379 963789089 98971929 413251890 610582223 168941303 960091768 246194667 343146677 258919527 905217799 25470955 961099205 890642934 49782612 658402193 488468704 59826887 834354899 928628815 307693517 228755651 934975834 858185782 9613914 508547002 198629111 488689840 390394957 448426063 517025186 98820142 71415191 728460537 186406517 598753778 581938830 540334163 203520637 448175841 134727697 579003097 459662505 732274991 564459523 658446495 438631568 874663079 763456971 640334122 886552546 55648736 312981541 707535970 196953427 383366453 423442886 339423414 702586946 976745485 56025092 885622486 263290576 408836150 339986324 214311400 896768417 911988226 441530961 284507892 305748993 703551003 783266222 361684774 359276965 934017954 51723827 354162882 977823321 675565823 224602127 778989816 294684022 149984843 953737004 877585419 772286702 208750825 374398903 908979689 826500958 805799698 667424797 527471003 677699190 895770664 229910259 655483161 858624441 597818431 643449492 960469733 478821291 840603951 294801849 552224960 364983086 616207377 513827359 904011097 113730405 746798997 948149044 215161357 206110779 233212339 306528422 629931880 201310914 29886871 85170654 193847569 265857777 739541212 520043457 16838356 986202917 444771131 451021642 185785234 526604613 657089787 144841625 330527729 64064931 164620077 576037335 172850849 2794446 58428819 628813663 961028932 237872441 64583179 206602665 742881080 783533692 573874058 688191724 198479570 952315713 390097563 45881541 712938601 149403178 923021236 61126869 837687471 450158212 626299292 689082453 933656314 62874994 313335874 405572329 520558377 763558124 120331301 167375730 992353110 625929165 767882063 502460833 841991991 123626862 505027995 550265777 370413139 151908058 244365442 741467726 728611721 190685111 575098770 982880478 110338951 159450668 949217717 771346882 637385247 356038048 662169217 618710577 215291827 783567807 744720174 608781691 89463153 957973633 363221620 125373863 706208432 883795445 797014803 367908025 811167831 943312719 333451038 133377536 882170620 876410126 938866816 728142384 345729241 833027182 960352024 416801256 996027699 24020975 313513740 575634200 47378968 5042632 8155251 965866401 219076806 208340978 688977665 246436567 523739651 78995655 544778510 809045188 72161435 657588128 712389150 694060105 722389235 178690501 519986155 896000934 10685453 384170437 83506177 195624871 292362161 907021815 437743515 736651272 854781463 65571679 46621168 113910038 287307009 912965641 14697340 277484581 791193124 741395414 421793110 998048722 57367366 267312771 683064489 703550914 38134137 164810044 724171985 199317365 664928605 43918021 773189126 804245258 642692318 627388544 31056832 91403812 411668960 860724183 931222514 103204133 752712988 750699007 19398208 221245353 958154651 982919882 152407958 195755166 240804640 166427562 198042183 636579561 317132509 811513341 725982725 756661078 630042955 448562636 657529972 600352448 775360679 168895111 921635526 563926195 526606721 575358486 605639232 198862802 721479100 605024784 818676996 133462205 154522550 165229077 798133423 847046448 224452907 908928167 863458838 626597411 629950774 758112031 976530907 61919892 15186068 57715074 179342836 944048066 195183980 337252267 982527583 306766865 834608812 506769666 569072316 617467994 777650312 218169242 878904122 909088198 132192394 282360907 64540171 957013577 432436789 809102424 627547957 624760216 730113820 158485202 572387577 584952661 433502562 78214551 213174982 255801362 148778884 975747914 38224572 697402499 646653712 78619378 645892891 729131497 326371556 495095480 856842857 167658007 921970222 725248801 417617893 659915148 295478215 670074202 857860889 162501643 894569550 989096108 818657487 283026384 740056824 228722342 903085157 413071208 865727471 438323439 326432770 618745732 390929305 585846806 381073929 84130903 938194967 185717994 799201984 236762474 636615103 937387887 776823658 53424300 991109450 524337376 992013394 798658864 496386052 903826924 531568581 258262345 203324976 337178006 878512344 753294530 598160336 890451711 34178342 643742357 537248976 845075037 679262436 483896920 980966742 771672325 119025797 641360248 408474959 153832665 35420714 51536756 133030896 772715490 23625204 232458446 804195105 839337956 776291850 447888615 840256043 638204234 648836857 481588262 113479337 666938198 933928305 346607995 896251876 376600737 75035909 459830835 539533368 546263116 602040505 445247915 449875591 956583871 437571091 805918911 10253105 594696909 133785470 173583088 118422228 83732569 297535544 866984313 582363004 48924737 173810971 382243585 312841906 75270235 668355060 437703280 465345918 75321146 800749603 623667582 217307150 816311856 878169757 157371405 464259022 550569128 113613728 407246859 317275338 51463966 969114361 257779729 422810002 94750011 115521888 203126656 707499586 749414209 601811183 740616229 391478292 50197403 742403264 453553421 366614828 245988041 148921718 648057092 588095149 477245434 406886041 893452881 820354904 422818510 106994864 963466004 887699585 145592660 661049276 752411607 235150834 895763474 126802788 333641877 641425167 122128078 242987859 70951544 79712346 197636344 715693637 254744898 94917697 401601410 349973120 519782610 621050446 376323613 612904358 868475364 51057939 498054633 813340241 109554773 432300524 936513681 158195389 386983840 936105613 281633574 208003623 986982140 295305459 808427417 233971776 560852460 410520728 861086673 766295330 203526482 807277432 290950663 687296212 262126209 67208991 44069235 656031038 92566492 878988203 855414071 818198434 60555035 391565933 738334872 107359743 183551804 183459120 168636223 615227044 39117735 89384568 408448683 716597403 26020761 332051060 35378340 918196266 569448268 556134863 612740891 193622645 321054001 335470059 61245803 151368795 712504398 122870101 366716428 245509736 67135139 856838951 809152991 203684475 194272667 166351928 412421232 113184048 335794402 349860897 543406155 444212829 440628552 656809799 495226638 986755232 193624025 984341726 719090375 279262511 936670756 469724554 881588578 291821688 409455111 96006749 932524913 718954682 555838939 384187875 716973915 726293786 75383268 826629282 1892193 328524478 725871212 882421141 343787278 359336043 757553837 488690713 253079321 606027242 959595378 708860536 145508809 47614304 413637408 252231955 822513428 342137971 62354230 121327016 517385476 407893124 562192271 570962151 660408600 337716361 659697864 300433617 673306146 774787223 782092598 522494734 521760535 934548315 465768386 795658770 881584706 289154582 740925977 639339339 74069534 208933767 84716181 337919388 609532389 987981473 708795476 166760791 921199905 267837826 856752843 970547013 464799177 526328092 330528991 81458185 254798524 80907010 946811441 81067652 738310844 324117771 841822251 322662331 359464866 407017069 750811630 64946824 605089150 43035194 301152065 188000307 691801279 830817603 105927171 48638517 58064519 702998397 315538446 586624146 269205082 752597191 113789562 816086225 132162709 440713764 926313665 27120587 80208642 55074563 387813699 281425018 229963219 614493328 274487535 618902356 309589957 874328945 10059143 590504775 328996618 320950334 238479536 304729034 468094060 197875143 963421861 421404474 794958788 707568086 56193015 443481649 330055828 712319150 654008848 399622538 348895621 126460346 760799616 110702012 789913168 128209172 380044310 443307241 30950528 201126831 88146930 101979180 57136915 622772102 692516167 187538505 328237955 147009581 914625645 790037153 404207980 121064602 104903829 197797025 179494934 736424284 347605682 857995222 953007397 412194399 989318560 83306715 138617276 380957394 565454245 561959211 59742163 123150156 478204689 177165597 350453165 309816936 739584483 103990034 440340055 585217992 241520403 727292151 889094781 671390735 752881577 864528670 745215178 892200774 619134524 812094204 518825599 805091116 748428489 530350323 662918990 312693534 728707928 67633637 683895220 540112284 10277011 897089804 219773478 279036247 939775732 204379487 724728714 22648203 97768675 995109024 831400546 701574892 672671251 698776587 726040951 185046417 459681124 764138232 955485465 128698926 13061262 254330224 770380981 633465414 32308029 339004673 83450424 897860409 603290220 635657516 176287055 143134537 510278640 283456754 805783388 427116249 973381260 679704662 543080850 975655584 75593108 740435953 837795759 488015993 833583863 523222496 476363153 808512884 116039696 963805164 660322666 45942780 482174963 155908159 268476737 285917691 736110570 13846812 988757360 513389477 401210382 887334856 381206345 451721251 394829224 449246265 653231062 556522233 640654799 98500253 391660477 760411179 369389936 273544505 104528107 423417032 26452517 817151044 455927227 395897721 542161627 467233815 539851960 609471324 976884657 908647274 930191477 588863403 342638696 857904341 949429128 978796123 633007828 487051212 639791413 110937855 735531134 203967714 523579733 794983021 392978048 737052723 206786047 421484223 851668228 676805209 993921785 10407933 388093238 883854101 790762752 656898815 680120963 595792088 117534468 937983200 735118303 501187582 26412608 56632703 371017264 232121348 437180187 417049019 585766158 444762422 398431651 532335928 486483340 156103138 638559220 423668488 878168361 455321854 776106343 498843910 938317200 286188739 22382332 733464009 603562605 458250857 760790812 770702824 291448599 142959747 950406711 659635569 690087645 78668915 234173427 411827238 982476149 827901806 977568948 32718390 915006350 665308584 772776888 729114054 425329894 636777730 428198019 414102876 196507399 974108129 564045883 756921124 174845935 850056040 184113599 260752632 200006125 455703348 361263525 704247030 10392551 113861003 999086013 614224592 837191545 623743024 652435845 247285605 834646267 269574093 239629073 587963576 129645612 841321929 576139633 782346622 33898606 343586107 553459736 793792422 556487407 790815749 59329663 271832977 300543571 317564654 725535791 73850643 402380148 704759347 580884534 251444837 537004188 155855239 959379464 1501730 721075496 445679353 713367770 920857070 234411482 676366564 505006428 548738884 846841108 697859543 133441270 14036186 17050719 468877537 525371497 928465012 431260207 165217336 20283777 323224515 284062334 9044994 227058751 4245884 688344568 329166870 192976854 686598698 644684347 553530836 89809865 392213163 486294708 149104456 271627213 226695574 489048615 466399509 272639626 892668321 737908741 490782124 350209655 768247912 389462422 426789752 236499369 582531554 977428106 644164118 623241377 770162651 962307925 264744001 890704429 869151727 96513285 97424730 605807073 706199429 112528665 500451361 143306113 936274483 907761339 243992600 306644359 496655688 166541897 236884127 240634623 393431174 722177221 580328289 645211559 891111879 747808062 211144878 370428051 742968541 142925358 7871767 990626704 975962760 241198371 506527871 953850762 800162676 313335742 436734998 673649214 489904840 464088063 205213900 896479891 976897377 745445808 884158878 704537504 675336334 348291508 152223516 9111997 534889738 624697882 993008202 870173415 167749127 188328859 58497342 642596080 817478075 97772992 234823443 165660289 943371953 605503738 59472581 845490254 206926102 643335645 172949300 458816484 693626381 219381180 875961809 113389730 640410695 434394136 590681240 916254383 885600642 270758848 277273733 305625422 862739602 150924662 919801008 63357204 665394395 840550464 269891471 73999356 593521885 375495867 883610101 900137664 461101079 580717629 95529866 467992347 108198862 541209841 259005622 129683778 263459195 390303002 658170844 153808131 975968266 897947883 623224243 385446814 120252391 90254754 584408445 206029397 389518371 299849287 533584548 649028111 237119898 778593564 191461770 636955099 576527029 563131768 360044819 620851610 165433763 904570193 381224636 644901588 805143150 703131333 64334553 127529439 992159466 495616901 968482121 156114642 231767384 398034016 552903872 436141550 432968704 402820611 328916220 9599568 378987736 236009634 887140235 739376745 587418355 906272873 724341443 300032547 185884602 471227568 671731108 697769407 49337619 113211222 358430754 584560789 120000530 798504452 361111126 149020002 144862524 105447130 277539092 50470937 976858206 483639193 849996646 862928323 270859920 427156832 326417310 818875058 734498247 622381157 869528125 975230095 652208162 22973800 449038451 362200979 970336891 511730430 226528483 8484415 208449949 848527526 828293884 22439250 52276049 425212622 421436215 311034170 623068359 828424253 430236861 821917780 221351203 890588685 983739917 144596513 334739557 225527588 480919488 609214005 94949806 551170061 326983559 467209669 950104402 301723671 968149098 942532840 674622792 982353226 357274653 663961970 197567083 533537650 3206759 149076190 360861632 574728957 969008840 225256419 648536142 694184943 336628891 504974724 637735791 349178364 186200958 127355547 957321478 93065901 670271993 210809593 180024165 516978591 167069340 493941339 8463292 146735902 811752635 788351455 697309095 874513221 690349404 828792285 248162128 215656138 667542264 314974775 718643223 85582679 86162574 370312415 574294297 900974339 465439902 608141900 108392196 233590297 254747901 443060881 736732758 40729626 361909300 671188754 291428258 938892177 388115216 281069972 387621718 16802067 661242076 742804123 452336716 13067109 631506452 958906390 746056214 351758978 966280344 513640875 125659126 895192537 224091496 565904491 961307101 744768126 504265086 272652307 235081851 937180491 831635695 272424571 4812652 537924604 669271435 178112397 427800291 132078219 279010617 565805864 679074169 761816101 320744877 866091514 473021610 547031543 446682667 378615179 97084158 520022059 339269335 478281929 848309517 730548652 695171653 52416093 600745123 773000664 224417578 256100829 791145978 145030076 892649981 952895691 527773098 827677257 63224918 879742206 596739378 906423043 749538572 967709828 833335381 512107798 800321796 978967264 834979944 412105751 568440506 887733150 459452235 977564346 414776923 175037929 424294053 570148403 592673112 864833350 832977200 857486205 789294348 514027100 716671244 217407022 820574231 671374413 556317582 533941402 883954591 822849328 456648334 540280127 871206925 891265118 287489113 562938881 110339750 487127476 706393340 652541049 482277072 288478496 855989229 551949446 277304404 760149365 608899593 866128407 601600598 581671658 717937985 630877429 10344323 254183514 320116130 567588534 876493848 880321846 486226383 408845295 514807443 972417700 785682028 867026312 14540162 69950445 291856010 843176504 942952251 550582945 946334486 825083238 770892023 565095553 656317115 885319507 919320421 662558333 45426233 508223387 85412182 706618502 406978534 419288868 693796343 953880400 785481134 970437977 216360485 500873867 255480177 707016218 822046826 939290218 82522508 285239891 977441542 651282563 831038581 463987558 981336229 239970646 37974249 972446522 586538687 259758553 789477489 411798613 620135918 788487474 202315433 433833952 462971017 948366374 439924876 969814402 354852165 163085969 347840982 671121444 463221445 523150365 49908420 667470460 533160434 644351783 575605974 893731249 181448833 137569483 223250092 563722871 321860959 166647631 945641980 200241092 796518518 656484838 159743832 963059442 521030647 680527304 281884106 191200995 404507209 746850432 475189483 811712973 437636539 392199427 690085540 926196866 335122622 571502481 724449773 14634440 326550827 199595366 383822814 547960202 62408957 769464416 849243286 498712193 26246549 977218368 506353348 106265374 510174155 533045831 760656177 966393299 942464481 957170995 737496733 868402283 976626540 165653005 819630792 368877233 260534621 47086098 814060526 581999818 710041174 563326574 258502390 658539366 380681578 939921410 702177333 520327798 653341400 854321175 460929058 821081715 188044862 255269503 863395927 484791776 903714329 541719140 535701585 54141029 254677886 489853629 49714945 756330879 954314133 733385715 776246632 430377117 367795751 431558554 866661932 646133154 861441214 279322968 350726215 823108854 450037331 418536816 69837358 283786495 997185346 184030796 858362165 928541075 272926663 521961644 875293708 262362421 85933905 368345332 707921352 287755203 544924789 872542664 546169312 27881979 981055713 413229324 533699883 199460950 123425059 863424843 514638685 33553070 825683303 182888642 389536310 261030216 423826081 578932167 116093921 893587704 723434347 532742497 585533032 255171827 676669000 577248234 599684551 271878775 907142730 345483812 116428592 119436885 99345023 723951861 94052970 721231291 430114809 77315003 736278625 672873749 529408482 739708036 239725257 649420101 430872739 323019333 415123036 715434467 605099494 407767206 393184430 528283439 63638897 735454127 139998537 96607133 107081756 651931192 248030555 949659365 776876702 150352260 627271496 129902586 716459628 379186945 978203141 710947634 76535268 999335326 489337718 104682029 244111373 445162782 220991033 962056594 117324494 182970610 630615797 539334954 866652732 223724500 629229994 790368849 773746038 366346972 995700894 650387327 44008747 144517553 917910488 726105189 136962146 1340764 164595301 972885761 961355952 970300363 154809456 409286124 169811112 812171864 383729478 437761965 864431137 781247783 862395865 804552134 501733412 172515659 995248047 527698253 384735722 112540647 737071445 799316429 139307031 102078160 10839165 392197487 742359460 614864656 223322895 104700225 477871996 241451115 226592760 973191244 832119149 91205444 978201478 967534347 771445944 687065066 928616825 769409765 341051375 468188201 542191997 19016609 632763972 982138391 708509542 851737215 249640793 233403718 641200313 340998687 91996068 299720974 186690352 419740534 396808124 751438887 421931937 810711125 900945807 44322758 491540757 591304269 585048597 192297522 771366750 25137762 446026066 676075206 58487422 310465181 103009922 823805308 573937091 123969246 325835057 669598130 981507956 338572892 164840426 852547061 513846246 865914681 336070764 10802652 414800935 70991203 199806991 286828976 533535097 384110256 467660647 355772889 593526600 943943783 954902364 11341851 775455440 214674836 80721892 750092386 181347336 780490502 568556919 893760266 322465864 34120806 407488065 141401602 344857137 748174735 671968645 825572054 577451215 825749664 335867533 627853334 827192158 152527106 828760571 23718110 320537146 639658870 354375706 428257326 50803179 425727655 657526244 537225550 83914378 371861950 165057300 587333449 559495568 664750309 171351197 232755077 542904618 854852981 932718279 974897955 78934364 527779622 492678684 820434587 805831743 659129069 973452004 561909114 807043448 74100609 398946330 456231880 139954305 657872804 383529269 6678039 509892767 58554383 827179530 634220287 486619151 629816856 213236717 73382780 273457986 364438366 43217444 289865250 148261626 193516723 803242956 815201983 492683662 767096946 447119570 888869176 700065811 143198175 659528860 56395582 956122548 677032802 320286853 876878915 347840405 163317907 167331903 237041188 36119096 885931283 266598952 781825701 761168787 412084909 443791624 675596177 568213393 720890858 262096511 522768052 191871454 264740902 868422844 670717612 70695338 357158916 791847558 41258583 72368239 695416028 452096151 707243030 35877790 260060015 542835966 231415041 924737696 279821549 127270253 439968454 350905794 150782061 745033494 486324016 807063464 67758512 464926272 167439458 341105410 990319097 675853604 398495066 869849627 837149174 102896186 872705648 849178250 79862862 534947579 569348387 586562648 447427222 462152792 666761755 846581986 666188326 822279057 439317068 720831439 357624730 591443566 541165503 910481538 568637617 937124932 553419031 534624031 12002477 814557812 52335487 194489250 926854447 358930249 944158195 34907008 805702692 404029934 831951906 624450436 112327203 665226844 804773145 462024064 482422924 312220007 688346896 783932529 442374064 79628094 38842215 253755788 493204725 245227394 773977563 83974310 669429217 302528640 93844632 373311642 915085523 200286225 301528958 71522436 770921899 657498665 509687852 314423983 622114472 601791645 382017956 372168610 107335056 524516344 197375604 121828877 342425188 190053067 349591709 527584680 632822180 36619345 790359376 718977990 419118353 373088815 795520283 688722474 514927147 601898222 450441323 862676223 161949319 409569463 335320875 746094196 452231804 156136449 555390388 988526121 32524044 337136990 658799025 151361270 551601358 332313473 248314774 373916967 731011752 603310315 336365958 410309667 243366370 801795122 268219197 307464407 465993897 299366650 593442743 343324452 550978425 122938209 821368104 140535810 977988502 21791189 548913145 13369189 848741507 555136612 650807489 682922752 694671189 271911770 717141699 289524211 212608615 734456206 254838525 306599655 141988802 939568664 659502429 333837785 187665683 920206087 66362404 241646522 405338879 203133342 831887973 306459258 656635789 662920700 340644263 910071600 439290222 588592785 118475919 699427801 553486004 664347678 23164760 746696415 648293244 275406149 154710379 373299440 852255553 647232678 24394338 521488771 220515629 936259164 485950384 117674739 184211147 327667119 496463192 658795250 422839538 954773058 44247550 637840376 518029542 511936549 338619574 433774147 853099928 810004691 330063291 509912168 638598799 349960988 548092693 920086521 807569195 10607310 304303325 953113154 194445790 783773422 861591287 649986022 544085766 991268701 809162799 588804503 481220169 214586473 766387339 731403822 211418672 457641518 922614063 754324739 238920629 914148468 383161913 943660105 734606641 790282521 439265691 328309885 758470619 634647805 562655522 245010858 350550110 574406878 915839749 917672085 94697828 616400250 737321745 477517306 435719802 953278450 891136136 932557355 591005289 421481505 829343231 89751288 316205407 556934872 712769790 350737530 800149588 399742537 943523338 986982246 256211548 297231258 875946968 256482568 565957378 176375731 493213525 917198611 183037735 693722345 860593421 442509978 57379131 80521208 307117967 467133543 473814149 117587229 722287581 549935201 578507951 477968506 405770007 632356278 890291851 126239822 86117079 244755304 142190203 949110518 847412932 813922235 588435261 801113858 959338475 913698718 868099060 857109296 169623768 327617751 981110970 467270466 420638575 721869236 902357557 635830281 140828582 213624927 728959601 438854405 936898656 321052175 300861680 837686255 56495315 108956799 131556196 422795574 761239584 653836601 490196037 194521489 347614738 968847298 814307894 499958503 773228780 313809260 336524933 69272860 696943389 802919923 685418192 330263948 314892098 389551400 937395062 179770908 642355918 995204649 553353401 175536886 847066395 301167255 187688615 819594039 285325974 287561027 692269394 529400331 381655404 520254416 278910229 99938003 31670875 184843965 483548047 924774349 815097263 928707654 304126810 405770425 88345574 131018543 606531222 246128581 215469262 628232072 388932641 24812584 926301912 114952916 78070864 335165170 834695233 933058753 160577780 779910998 664213136 352804277 765085945 749593466 670763443 950317622 50787496 140935394 352708031 655692352 190512771 931161800 953401227 550414090 904876474 509724280 587640543 951706920 320588985 464801061 720796038 965330233 170747732 638598126 242135921 827384578 278138174 221102099 71236374 835779353 626769264 45538839 376679845 923578928 58922833 156241550 80225385 350165741 807238731 475907047 761835654 726671879 501978102 959724341 648825935 643179687 136207833 128526834 407923161 923000860 235493273 929623001 443323847 747298690 810207214 56355679 542556853 764156070 398571515 314644509 272759259 656543525 389481062 971165872 892342624 360181661 98802352 398634834 24809485 258446583 666105793 474996147 34134724 130817566 654664334 91838531 649084186 789729366 90661803 808283088 567001613 811900985 743180999 359090170 420609034 922021620 289658439 245954261 10332881 434941273 412958526 639214290 344258692 996657507 129179578 926673740 28854388 905432781 945384054 651312346 441586709 171923030 996375350 663201694 529005923 204130469 194046077 374537359 366118455 831270455 573296286 681755509 420812905 809918679 112711602 491729818 334608250 92615898 53435206 395090218 540914377 919956568 384342348 890349646 980457826 5598605 800422297 534383183 366093165 897536203 978329510 89129990 52878580 716005827 944524105 642983858 616774832 92613615 516081465 487284600 21228161 747493830 108928742 370327874 232719831 388895779 790845632 413475862 607245310 493903639 690343434 537389922 602679882 88827611 739882627 854851316 987100442 275663103 639329531 253335014 284462277 768551312 988668707 594275070 316520876 527580718 986191685 483608099 934957383 192050274 429366493 7193550 509657233 544934240 509634032 932679268 483013135 953578696 729296373 829099558 628727272 850841593 549367053 461532895 837914580 880041263 260901082 530490392 537369317 86542017 415250941 323017661 826820042 544755888 659972090 910110995 253337591 423864193 318308550 155833579 903988744 77796537 43974686 667193758 628992503 567520292 589295 181482127 474086461 790348342 793835432 486822177 657857733 465219826 67979445 998654675 458776596 852899953 850561986 37394348 994787491 617398518 751852967 252917887 975201155 68742286 825920984 647063152 897814713 221296204 711292958 892515338 681561716 219558402 384626228 149111403 410285881 311040875 801373750 45728794 424280560 968271116 671415131 25210217 324774113 384980517 815803808 606657560 872521661 647275487 32257314 764945167 498673583 797258287 230856380 19907157 470209379 840910979 322408222 738420708 254154738 599773961 205105974 20155975 702137894 250872936 798735808 828114185 1067102 208728945 213584508 405770332 741673281 669912639 686626563 788567189 597900198 17845288 703776111 76731720 735526141 75012180 35399424 138766668 779900526 591565761 836627357 576138458 486492696 934070129 200879156 524663530 66927513 51035373 149459144 27851417 405457963 272771710 303605777 964770436 309603598 682906361 122738970 237972216 780850149 767770446 612665718 503599640 449919760 302887588 58172934 378062032 162757263 130615265 872228334 763562717 403355541 168181581 116960326 685919068 131891533 544338435 939910122 309608705 600774806 697284508 489839668 922698830 225221452 784084812 940744772 813765202 571308947 771266237 196373713 73880943 527066035 866538048 493089835 639366673 521488336 305497859 357466844 536021472 774616460 70758232 169677886 948440975 407171174 903781324 729174719 947433209 883382803 147217997 999736508 783268169 79091806 310026306 923655414 523120521 927052872 498147643 190174623 191535922 818755480 426944464 799797754 313442951 584559452 395489794 166839496 110147449 338273061 217055554 468008132 704069789 372103834 677385284 289298707 732112581 815490580 45653297 601955384 493045572 928538009 611544703 978989016 231905357 130094274 567519574 34736603 98294095 472465579 127474605 758628227 21836598 577082439 82821804 871273538 646754502 183417584 210346289 158210736 838645279 927967238 987969811 32269769 895861433 909488694 409909435 283573304 610430487 466203516 195412716 798115999 501794491 257876588 42685644 541269549 585203406 52454680 163118243 159700197 348768358 380497111 624745655 166849697 281904577 345841162 471614022 429399116 662945555 895150996 419518831 832667152 950292961 83313683 909086464 482761571 581096584 727508773 111222595 162262669 45301046 409844385 732554508 441432319 223613458 619603214 339924258 26735981 144011008 764997385 779491199 364744582 208103579 121577721 698485225 398406269 561696116 133723501 392176032 106907812 270531564 69143398 54864773 78037494 985767610 320993168 628749057 672561366 936113180 270298832 645969894 978625676 657378746 173038438 839704868 888932792 840354912 605090161 958015070 481955572 550036939 716057771 645203620 880717399 900110066 66122406 207606656 107920780 129778178 701576937 795667783 885486721 926402384 909120212 667831368 363941905 403058675 83527542 222776605 993619941 966059405 217641339 658750443 608091588 163468551 22931618 528381622 452566248 572522146 690715399 315322798 430287581 806489656 302467931 155492769 401950342 136917635 976120271 75638239 16723559 72847351 557468188 193404157 376250118 48366445 422321793 687557550 302671851 187946516 677931772 206545949 566854109 986123299 339735090 361093571 207599363 628352838 616044511 324255991 917825296 51400137 652448174 871856090 895753015 335096126 841672756 852412164 992600438 458711672 913332585 822988755 295425648 39281767 869805520 974761185 690073737 817487111 479488318 713232587 2267259 705848756 479801248 13292119 548201369 362727284 580014228 881474631 298199731 1773076 810129429 976727137 433842452 638453144 698948524 324603532 978336214 547715609 507147847 480008712 358916071 651872576 243881521 25011085 716563355 442668211 112482796 964726008 172209883 341846459 178658161 211205719 751015612 12678009 785583796 294931782 547011183 208870397 796874706 70902677 455393950 586760108 537618311 887432889 844212206 367959596 747879269 210665870 487467689 614220267 626228760 444495601 137185714 102001662 883649301 125278391 870348423 797094202 117461405 571525659 447039121 360973382 685803125 40593278 380036924 722951144 210399404 971403802 224116612 614134403 672783462 894867251 834318796 438722658 539984375 931963216 55689677 855129232 281312951 859566313 827208628 447127006 405481475 944563704 115897722 724712115 386640797 446614722 520283983 768111918 377977636 933529935 423737446 868002710 148433019 54262733 954921849 682234193 387227537 569129322 980431049 995337278 986600247 362163781 725101235 340788096 320619135 771995683 805319646 140879587 250609829 611875612 436823008 310376396 471111385 112855124 232520458 244874767 322696283 265668034 749464982 357363236 307276543 200150397 361011425 458216304 959872322 9716579 559364975 90852739 472860618 866219155 227251441 874247254 338787768 827920586 791429883 235102170 584145476 650884667 823305098 792746708 894013126 837965067 957890213 650339831 86937200 291043942 154765140 458040031 394710720 353002729 371070891 345264195 686471274 673602520 271363381 839225223 840473056 760546893 630808865 762473534 838923662 724667433 625643257 528898578 564276001 787028928 779157304 612628615 44766241 907857988 169097211 685637082 265857171 652216187 27894514 466166708 700568354 353278696 144398978 761347802 157755842 929821730 264190557 202428452 310324493 10790994 100731743 345281272 780856917 840449623 690138959 451384818 33577232 836609175 837493452 873029861 425190702 359162761 293690139 466150925 876976279 982771129 416124664 476763959 260847075 90583710 145932434 243659530 872766657 275312824 172822920 282538498 468907901 362199187 794027344 587592684 263357224 504685190 741624064 536111932 40575516 772041601 824698095 766112931 55655970 654627769 2669662 999863520 479732726 87234097 75388981 576311141 809178093 603705238 819685623 416328234 924071644 991362692 761959446 57709892 903684942 308950046 147820513 166955531 558086984 868586310 698657321 109159763 13252072 717341633 515376797 532142304 170582354 689469023 181848071 496987941 834068630 906698896 478034131 9485276 248211395 29773485 654655803 457083212 141509199 903701098 746938269 10154133 15838560 841414614 732636663 781445963 587713866 177085898 384360411 773208731 464224051 912189489 235960097 337437568 443534280 311552807 897505504 781208704 323502522 552457577 274621543 803275138 735563704 631311310 995940120 148383304 332721836 952645334 953196487 919133853 910323437 704898465 961681888 1662863 471184809 124349965 161108537 207607209 585706964 551535258 222260707 634691414 2189264 689303285 964932552 334274009 446391844 305988453 288713747 544110754 347903209 956349099 857648307 982825431 474657736 242480981 255939997 847833319 684223507 355047354 327879217 82762965 12540324 154414186 862851692 707450444 658835157 418295250 833272170 948804990 12828243 406417351 17800035 639693595 885232998 915224244 540099543 214611195 416213152 387828404 587377247 865526125 446699094 529883372 391090400 676691153 783579171 920909696 346291379 626688538 927210240 752176868 22460921 133643461 763397143 730219454 551400861 299875840 999760578 456208017 784394344 226212699 156635467 291362543 248628365 423809884 416278315 878957734 842839244 689576925 879767966 470219670 324333606 983875746 81382753 710363234 625635447 530796030 907048978 932239828 715798149 849422283 707824520 544470779 732704229 795920565 70224196 654355975 584455124 101433415 169769810 769665579 197190644 759103193 527130758 625873986 516298353 651322796 298216664 430669267 418666567 121117449 718820041 42632023 234900757 252961376 768791749 136473368 701934172 443173194 556827516 987973574 210257055 68961188 732619558 561619307 93831031 172086998 192569123 444880788 32798604 738051939 469870538 999220088 404409039 887233988 676238669 353079767 718385061 152314545 219019820 616985259 251290573 95674076 27945786 493530153 575579201 212823175 853761502 113884354 95559386 851600191 540540135 708833467 17314572 981066909 896129247 88502316 263478668 17133283 51486691 927885162 332503861 657748810 963825084 79594963 519993273 559292564 149326583 884405227 616590045 82564939 630191486 773171261 569648020 22654501 732537166 467587407 925826420 356494326 94725167 922501990 436927196 208001334 973976554 222850232 161028915 169472605 305413657 374808885 985890251 568342531 494030723 646846810 434571878 986075809 134336646 420667201 685630165 219942052 48665828 587535089 82718722 313412519 781112584 265826562 142443942 669920161 44407027 432026234 902778248 35416031 382215950 864305328 279380802 925298674 923629892 845370747 683579481 941928196 971510654 835735050 441313151 851114268 522846831 717150161 512835724 758531098 3596439 642676244 572557660 33101209 715369464 112654293 180935330 452314073 962389808 155599170 829952165 283940846 684257846 24166916 161337183 967974591 900656620 215020473 174854241 614423904 304963383 308919364 490569650 746554113 301165790 109757503 858096926 631891767 503459944 682402062 327648865 261308896 13515163 964116210 119621910 420811557 779079774 590423381 192776318 785522518 91460367 20215774 801394853 862954321 388574091 821122114 993531538 943818827 265974310 785296798 302884560 336587831 919105928 938984278 214616534 694370234 467172541 180957547 715533310 380830421 378841177 431527271 582654140 518654605 560259931 407111019 832133093 156952906 831000801 931270791 943809680 652411202 530130684 324209814 747584837 2583335 832326993 459483883 470372545 684818053 230581088 70487425 734518688 266945367 924702631 133360906 342686698 530280299 523635523 694080622 442266813 231154787 447884791 878522383 104161688 570931192 986235291 137608755 531704986 888234187 594609133 953275784 67973382 598951418 199715322 86511918 839285273 49588800 888121728 345508134 461464383 190730949 495769920 493303081 790476683 674002612 306543317 978957173 578013783 323213626 627545683 749674572 29049440 716927740 625929195 503572001 543265679 353793593 622353125 927332078 242420078 262830729 54833436 307743429 225016766 795756080 251047718 290022489 428325778 24136642 992956702 128808161 706318900 21305132 782463217 996765035 403760422 281506906 962777709 871901105 935383573 173752832 763090535 140518863 68467829 169882135 530600093 963063169 741151201 391505523 983747574 47097847 440096423 150952635 421036072 321284039 717573251 966975989 813252204 99005110 843417631 581723851 731819741 783671982 680983405 656302439 231145598 862373738 460837812 15113769 541595449 40147512 162879603 177539619 891363662 253308393 57385186 329329394 988612956 317107542 520190242 15644081 603656224 996101459 30126498 369297771 34495659 32213486 386433408 645915492 809100116 997845856 532210921 800967381 700171023 832528011 723123850 673799579 994043081 194586043 182774445 597476462 509804319 121250116 138592565 468907648 217764904 938297417 896251822 494558573 867205923 204760475 584343859 748511013 247953000 92435590 820275284 969757821 8362775 18061776 918338344 692669379 737878257 859138305 9901005 261783191 493301389 389543706 89954064 453527844 591260101 984612361 491324970 533765374 53755256 806994092 282587238 359164781 866671330 256671525 39096678 451920482 849685822 3990128 373653161 73833043 423356944 939747496 466844658 356623303 762424568 963932276 123572896 721881757 374946486 669766903 600084769 160703799 758529970 18859293 559347629 216688957 108976441 541769344 153772252 314954668 851164490 861449291 848184865 105142185 934531860 187212369 538611545 769883638 983088426 393109420 474881633 284906740 148666631 79539144 68856567 774604156 895172274 151577434 172669300 989612779 434197576 734829345 871524717 531489906 326530321 475897467 900183671 934779981 182877471 263951041 95417941 79209394 375389869 844063856 254772436 369689814 813756470 100391119 914102720 328430366 1634788 223143662 509578865 765576790 212660569 474652619 746199870 91934255 95618136 504761283 232079488 493883304 180614239 20849701 257649477 21263270 525500326 631500526 359879354 426238049 450904690 821186640 517690077 137157672 975697864 693117733 795363826 50489568 438328610 590135997 171586923 433713533 86174324 542810189 572700005 380683010 13773914 369493601 880035362 147726527 324106032 361872972 378140825 502234753 721520812 372629167 251279866 892380014 81738261 30826254 194635349 856443807 606145135 307800782 290640627 984496133 97202522 746949779 904743196 415709559 226338439 78604960 921285010 394994404 384455923 990943516 625779791 105278379 420062193 136607060 541787988 639741873 646034943 929634762 16123859 743222228 767306392 481742559 937636442 354397960 556129319 895582542 380499352 666583201 549127486 739117014 215120826 366154811 625339820 994811711 968417156 894611207 760437520 967184695 332342267 100619686 403777455 630742973 708127075 266603115 435553906 803995504 145741882 802932086 889649259 339175161 896736729 448438225 989746482 327432168 99444868 55791678 868827304 183412919 558459529 513038690 891214956 658170442 540441224 28353888 661596174 662094262 132555952 769831689 712494469 361280798 885371712 947620450 396040911 211965863 360038651 816043613 855299879 244636129 960212981 780686392 439417208 917285990 118831255 510386864 351738966 929717208 958624906 594444058 660626573 805230450 180366512 69792389 846779160 486202055 637426691 310880011 450625575 151694086 103826167 765459497 109068949 342192304 590601904 583408746 615017241 120773901 105561831 595158170 328818783 840084742 804101261 178723130 299810068 898742226 289447448 739913180 922375780 48746298 619172237 908012524 72432443 120595293 546660778 519534210 624441316 580732827 844904718 399759483 648173861 118771356 866352525 781112361 47150128 69275743 367637215 355475313 406002455 26793728 530325677 744653111 698707878 781484824 452078753 728486560 272796638 582192371 710650649 98764238 891959426 348522879 251342283 652832807 798853143 493057104 323202919 669317889 381452957 762234606 831412138 983100578 737098332 966759935 385243309 564857597 307148710 449884647 413025323 970529891 875759925 221389849 349142330 171182966 317098793 923818429 894940167 276098175 665579858 545271988 112944444 925220395 957050812 185850648 267716724 851490807 290378926 755306699 254869405 750279922 794753249 498852630 191520882 461225233 483734123 869606177 394707213 115580332 277898513 450662334 182362138 272330286 878851379 355014910 536549913 343113334 790844007 841318180 22940843 296061804 294545432 566919483 333312548 597888242 706056605 491511663 166035814 447473635 427309626 417976084 897460068 729201992 41620845 896456286 277378639 146639316 6354342 414202708 39531055 661768013 994406148 813484661 12792106 336742153 338669489 478542176 890120585 901759513 14798121 255726240 560139043 874942728 157055726 649646801 454650535 444506555 676409248 207676690 239089937 122422693 234907049 295718075 629231972 672309484 472905418 311045105 186837604 726208645 556234255 704619396 394471780 207552978 701398665 231743900 802599075 164263358 859120746 387743647 572157951 133011775 610595018 782113658 804303857 675796915 97678669 210218739 854597538 456165378 89197206 219495769 75054284 544902731 230104212 423796793 385396410 15496804 337922697 133891424 196282069 3713073 853643327 882748490 983079489 129593952 365405620 514124000 309892254 389064011 543276631 914769310 230752589 939772468 381511627 559468053 594772341 20407650 708024462 949039144 920524117 368565015 684127372 110010822 317402819 277413200 261613924 981563097 570839220 255839669 940979522 510552657 98416754 262319926 922143542 985129615 220825490 428295533 917451676 121063254 555237291 229954675 734042683 176574980 617322389 356189742 556573508 392515983 195733768 129894842 866090408 625351688 199247080 614418495 22105717 96366300 362775241 980695911 803203221 284801144 501307950 761082224 765866979 273446245 247782631 547604758 813107396 741320193 196644125 278252976 955930145 459095808 793129514 380400490 208733599 353468191 327523015 798058371 341889386 121779790 212845266 350118731 805486625 60927694 664778439 354217120 104010144 869637822 727312465 56325889 477663654 779431405 628560328 241432959 154303984 437907995 673984536 884470190 675869870 69353313 194526062 774667470 627937564 567941083 507650624 38200584 15436108 728212673 466510273 169508893 877465653 817242672 112850386 295530446 691923738 347897859 743129328 19264750 761138643 662494122 244568646 257225606 637926815 984054255 815200100 359412365 712951365 888781081 430410903 331955150 746540884 433926788 582492481 451877338 171711569 404973110 834820996 607416750 65046963 991702256 988520476 275378313 260504671 871446454 854177169 556743112 983055105 550268271 725683614 113512151 751064186 238011554 406689750 520125984 716066974 3257812 275837199 910836984 288422137 592524275 227638454 532154925 774585930 716644171 263360828 802811651 944894563 177836665 737547222 118110926 681340314 295845374 327281844 340226485 629801165 213339502 188844382 503374982 316535389 327431219 831372593 789751474 689708232 570953828 150501538 667028037 26103533 465881913 811686624 976000898 67611449 817981069 724222945 838386995 919052982 635105137 104001440 545274966 870221491 692227233 885168568 211978998 485638170 589374432 245719233 157295012 194971792 934927532 637091156 793620059 595846277 837652727 600916944 713545966 374799958 330983616 394875875 431613765 207823418 300184090 672424807 856966889 112431644 379837858 813760513 246270467 637007095 992259400 441514208 20630428 844657329 763761517 168392328 524366229 626345068 845956038 883328365 734050663 269767982 692014831 973332056 945015010 195940564 673269105 932653366 466854329 281887745 855737100 852653933 159498714 814394477 514753962 743788337 603668991 850601943 495600840 550651155 304835943 53806893 410804790 33451017 49680749 306469297 900335254 295696934 805131986 700991261 31612697 159214067 88316444 288966435 514386941 988696514 392569618 284942913 62299935 145415648 6971911 249498631 200993761 552848184 247196824 998166630 670971097 582916972 393228012 874565303 481774200 914528636 238985418 396591110 347275417 29697361 486160009 347900099 497301546 548659849 194699197 310098013 208512450 145400269 799606773 467358412 910253310 662606746 322554189 848363789 688608479 504831721 133207840 355430001 321403634 702441682 475178269 409122000 991831492 894606854 86792444 827158823 787631541 441850768 589264585 584646105 426216122 324619300 588069972 643079087 693900649 788624647 771677604 356721736 682278344 726277970 561374127 223148829 152395788 162314927 848523791 11413493 202285409 729730505 726169691 867536604 816615690 236177111 19118124 731825189 707545940 555562208 998022859 904335655 540871728 777340151 67021587 504048850 934967835 809507619 942345345 402278830 364197430 471291986 914190173 504150566 853358139 567781058 700567836 937383783 515807413 895439338 84897293 654071860 694372496 514889700 434259068 698431558 640497395 741956088 559932709 713208127 531865736 833018120 644909478 849694055 605068800 407534818 758352123 303891454 168947421 478456612 383222060 912495293 603868526 115693001 983276030 933916302 132062498 225174260 514496047 885974570 183896125 863358257 532134754 987010982 782697599 875416984 827688511 917570500 730638164 614003014 862029772 415015742 549106755 909502020 897017532 862974949 416616988 240354609 886134309 149399058 68354476 323698799 723162203 249465654 185316818 615352575 542213534 800369749 859660247 22246962 930289842 714011124 284594472 719075338 146657790 285591325 330927484 449761597 76143296 137469234 103323507 466391795 329744359 979706955 245239338 51015830 563850381 601987541 913539394 689562477 842759762 980126741 358015895 680874299 404471930 901440483 788734183 570755746 788332181 420922612 450281839 346160643 945221741 104070483 481579372 266766876 204616441 137353798 649569854 448860658 436586916 416295349 50984889 867765542 364950677 595702004 169194787 699532180 104375816 8623961 118842666 720868820 474557927 810150580 991395928 731082388 880368221 916881248 897223907 289183806 781125930 762102537 437651453 391418217 729058315 512372359 750852283 50280377 113534589 110755391 207738845 625941753 542205694 384074853 733362462 359267372 498879866 991064785 172649459 405344404 357136221 122839708 367218890 549638393 7502198 782829828 103998717 947614758 165512947 147256878 586310735 287489572 584665046 668694739 221662019 499316013 420743092 408784899 832099275 736075227 120753917 437033139 555831211 740783208 274849689 65328262 82771537 711336465 521930311 172626216 216266405 241364275 3653702 859107757 581733965 818904500 636141791 147218726 584614472 430958757 224688827 781609246 913483795 811454104 844345019 642000038 679070638 290180777 21321982 218484701 128990272 435101065 421515736 479281310 931711606 191495714 288759541 971464353 637438441 818393243 110161527 118180258 751967955 76330583 449913608 909619554 458192053 865958485 100776800 710134667 340568407 938809559 474925454 598608607 93517049 318511373 508220660 825622204 433841153 347072004 832288904 410315426 47207697 230707296 580818829 245864525 176159701 45668946 849744047 288724707 846330882 647088598 474063285 200405561 577649162 146244516 60538171 618873278 900097466 299530103 249111818 471624629 234363505 737592992 786417893 855608851 501452802 942561694 290400699 310832041 44042631 330189511 443884818 408816367 129208151 120179581 941937157 610584237 330540546 381106385 828054717 265968872 7322918 68837238 655692034 549653278 893096710 760739575 528046934 884285594 227075436 875449654 613302284 264850627 508193762 126920461 939910017 855918750 248137642 973506571 994448633 881070619 429584425 929738221 278898242 476588407 938727758 197419263 985950547 962068896 519250636 219150866 86429983 785125805 189415760 508647032 124510429 201508574 208741806 291235290 334442636 798110636 205808128 290889554 67248708 772900499 190800937 415171932 828363506 217296571 710506951 443533332 676243728 495012244 257529494 926285643 471919837 454599798 36563154 399745973 153756588 249356229 77934065 891541074 32226373 328883713 857306640 764014340 633361900 989245486 808781876 961022441 706410239 766432473 661331916 566720623 429705102 654110307 490450089 756468546 643478333 374762211 25518190 615105378 164662480 262393375 402018023 24448357 866015831 95261807 539010363 905557138 725485361 836498565 407337517 990157126 429135144 408754909 685701608 9224678 784235948 703643988 712101698 582057604 119945335 305506695 894780715 14347166 389524246 113718914 470338207 585211086 567812889 636289163 746388569 861241746 756903723 841901686 190194394 360730086 460910839 327596034 287508257 921259875 96670194 635767068 656080725 740175325 125777118 796054 343843141 508383702 898007477 943054701 932039234 645852885 653355080 774135396 762111269 143185667 920431727 225240607 165836780 441292926 584728918 309651554 453479996 13054825 205121207 112388787 529504119 301612649 575959922 579003983 646674181 899917899 972364112 239210981 834283601 850120105 832845690 391515620 675233043 393847401 598056027 678058081 11333096 836392464 725123209 336209015 976815922 761288318 266324770 102085815 174866767 215648150 818805832 544828578 133099367 602856098 698720203 73920049 609792332 868612725 653851785 23378935 735109153 803272970 912522134 657151070 611138995 456824505 678595456 884242744 489284781 358730809 603057554 35906636 839881691 181566571 280767450 999624177 743070326 313252292 942802634 588871430 704904370 381793954 619706099 178121727 845819424 28736722 997628238 822428671 439852803 469431103 888068442 208973928 639397607 806959897 489270353 611528785 295196112 86168282 671135873 945144744 218077506 931241856 782115284 502805290 717751659 154712412 452972035 658571730 823212093 309944714 225030157 634844414 798763937 453652705 480853223 24885248 118172685 94977801 645208909 179452382 623734768 43494149 940638152 945626730 852251010 429454289 819797594 360766181 118038258 906906178 574469997 921746290 256037674 128964404 597145557 493298121 953710567 970097419 286498083 327249775 736133857 113041858 900845010 828510913 615803469 766156096 551208089 255741082 772777574 364870090 54478871 563826130 648092823 839617647 187403724 294904327 199776351 987039911 373802165 121204882 695843870 628052288 135685592 860247540 102799333 932417908 212307173 717035983 833072056 649710082 204033364 375461932 286530196 14077308 918104502 974760310 507077751 874862888 415057408 420687722 412185801 698053479 353157901 362545125 612770346 605248232 101585907 6540219 486223823 135542566 364526473 953242638 731144619 720935581 342591002 943441407 378213831 131916712 278343422 452253636 684154596 63875422 197846749 605271519 269442224 773134279 772437492 69663980 368647725 27141492 50332816 140589032 692247126 119977603 689911375 317951563 682877511 609703758 14327011 729254607 54840050 924268832 218218577 959155342 150668117 54824326 370281285 231699583 75497310 346258658 846084699 55169315 207078305 851738978 17284216 822015913 64229333 909852834 508921426 765337050 531164150 394498052 930188475 62650220 264893280 724593399 400366815 861489570 192252581 903618072 853861751 936724264 579880939 585035222 286395281 134902069 918354310 362870236 946465292 635131323 467654427 173747080 903872856 415310103 325558807 115825539 806191406 142144740 401875489 616991401 856107914 247652381 590959493 76640190 703180309 321874688 577879390 241359659 631757115 537713655 717801267 142645991 772175337 506662596 318199300 504472319 592270828 400624225 318197678 810676539 146856422 689567960 800985181 170417985 10355905 980703084 434131892 729222741 980923213 559678361 871053926 268398939 718952375 526187391 99608738 339820438 285023096 251433788 571605078 20649109 726868708 191624639 39960118 513471779 284361106 185420106 305753085 919198777 778407376 781562354 985884568 61825442 847741911 330437306 206974901 280092579 256718110 735418883 370720121 714205467 181352505 196649886 798207911 85896611 580293427 825439512 288972262 453628102 800951055 5810533 237525994 758592106 582483106 979506038 615585863 889431823 456302068 554339409 967750236 998870858 348930596 868007824 540511743 109328094 926441458 16269506 614110057 551647587 467663590 741492627 173001546 29194112 810207602 339836444 568687445 136241977 813165433 35136730 955822397 947832159 551800564 908787152 51228990 607733032 247422120 544655297 124637118 206168436 626366931 70279455 488051492 992323173 584586331 28786991 323812527 241716908 866924049 900207182 982553861 303708280 643420134 598737361 646530338 475162528 122660929 932954503 479077375 737041646 204377348 191193252 874167046 489468522 925086225 867469884 490844429 291007950 736931335 936969272 742693820 303619861 893673856 598119378 692333481 208137240 18128617 813131948 125686875 650068845 25280559 13297391 166060710 284830870 58403283 399184885 897271586 982040205 127647656 272419348 693495025 266664692 746246960 883938118 127762321 837358278 419433740 398174373 356009468 825748459 249361908 121893762 3478801 323842034 867436428 533082306 122838188 836802295 396001537 200446663 708679033 836980914 134547947 727680601 291000345 465651814 290684198 492238018 907578504 651532895 977104526 783341722 325536515 511418090 700555834 76174919 932782833 319285086 207152746 321916481 459093004 993380330 516535567 733575230 234206458 842118705 283892098 793595424 485448649 375260293 2198633 935438241 33954185 70260965 648384344 503153569 130711189 12573101 229855174 555129128 640004870 97404526 132278699 253442000 428006613 12857357 682162951 264281416 822874443 707343593 624319855 408664100 352717032 226265868 242470684 133812733 74329835 744152383 245297552 312277644 991708501 76589733 268325473 520797263 931084849 680426510 703241496 718090643 484169118 357841491 826010846 374109223 92433015 183103398 967579964 856695010 279251741 756720372 368710869 864837655 376764279 148070157 118582279 196065889 134420950 228575052 128039898 767505563 3832214 457218280 604365386 462049779 214401762 747477020 16668907 974856223 954872145 602180557 191512088 685997268 289850938 143942949 441011321 580768721 371673113 987871270 137684502 550692967 147623491 494282576 975484564 984223114 659827213 828426566 553483041 814664581 93649441 919468178 539041807 489089947 902952945 772386374 715672195 924352580 875987289 570001632 672503001 199716355 6086368 646782064 822687369 593723739 624147359 260616269 725967702 385760425 534100172 101790625 642966379 165223575 879672847 403558871 289887181 420038230 307931620 412136808 375520653 905943056 236515547 977229970 30803163 69594481 734983163 171643916 680883446 450990258 452375926 936852524 395171936 639336497 271690818 572354046 866309817 333089273 850565058 83219486 142515099 321976024 156479985 406179546 977599356 493374339 509722021 107498337 320200254 313778393 33570822 984755745 711268160 645391061 643474771 318690073 520497561 740907931 471237020 794911586 814260893 818304074 562154032 399643360 660461510 132742605 456937405 662545630 419028809 72274452 893258808 190365978 876434304 990961711 58044161 765346413 397424999 508785402 739687659 489688188 353844016 521434726 872015629 186536102 642710805 403194067 493273547 967445521 732802162 586695301 965739945 9948785 748040857 168107778 719261473 198884083 777902858 310398539 33522730 92772838 244226602 251224658 139661822 129999938 769143862 438836245 222435898 519160187 377858680 759795645 802184198 916090609 275803118 729017566 752037793 788982694 911443526 310907565 929831006 34362050 487837503 384953461 36978877 406756381 107292850 886675670 218933188 300517382 121783323 748713570 594376079 824166904 395903739 301904442 920568346 549047553 925223976 277889649 409609562 416124305 180056510 642199762 672550384 742233851 505014322 416945839 530548569 169240749 861131143 657422587 228598221 153956692 92957940 630412364 429338210 393617592 311575172 720517034 140325043 112616357 964837969 424342596 633547927 607628517 383764753 587153106 282486819 12852079 807638411 154842035 794987769 71837931 243932706 302921521 778529746 701417289 283991388 281188775 365678277 759055337 753681123 172000852 642357102 691107018 609683875 659928098 466975436 239303715 406455572 642348374 410192868 917898892 439075216 60797313 417611891 361002664 383397819 975411866 542144491 380294735 515228863 144741584 1652288 632725686 376705132 489582724 405006768 653856033 135129340 328095011 182884096 647864821 836273720 308809690 676485803 291058743 239819521 236011640 507639179 559514377 594091721 520171226 392357905 15984348 724647192 510538236 79145191 680891613 47541529 265086933 91737520 785736112 403696640 149765971 791035942 709593548 18594898 187880103 624613886 621440183 470124858 902750160 228067353 475986260 28415471 213002599 325791801 874797888 910895223 380325545 339659876 515198655 215271938 336339765 407145450 862060291 193085988 129215920 583062502 522945781 370919163 167821376 492629892 944451773 455867960 795502176 233808500 440172521 535234184 342944359 638503323 525818667 387194237 125898593 232414507 838305612 301835016 950213055 501127881 396442465 139018153 225300083 22332137 595428995 472306190 145764011 833925874 13551310 372499433 457102896 662233894 665680574 555105823 883174757 470679299 810117027 274423465 537846111 415878071 28367461 455869272 482799403 867179663 727606514 978283004 620462899 328021149 771539923 744936889 229971508 289348910 17993253 80305620 262358506 103753645 121636103 668758381 451323532 212071993 709888201 477784498 310268723 695980534 783880685 111816705 555369372 378509304 807123009 475560505 832388384 155838606 393396225 972813411 988062698 399146753 321961011 308357936 526934064 940004247 602358496 497027253 768782122 89754970 157587761 847236193 138100360 693352731 341187412 935325347 77256370 600379924 954032356 381562232 110756886 986344321 971123647 56722074 668734729 842692978 293603328 962690316 622183370 200637238 288028472 679104366 538388378 924632341 292976217 622789840 742009998 98961467 693340998 395589012 86114840 799017565 268543884 223371929 236411805 217644153 892819219 757373379 189422431 256308155 72662199 33368234 636882590 54036329 901723356 57711146 818744518 829365678 172427862 799333319 488844920 939166892 489821486 847594715 287338626 893743441 303788520 116865265 633700150 782976336 736079439 52563677 18892915 388938254 443197380 107863076 860994783 691863005 35312361 297176863 497627183 394146765 553446878 75309349 195685741 100446959 688436813 411215927 169359416 581370599 155080419 804668302 882478962 129531107 897180280 422695094 981111359 984273502 439148009 369167807 992611865 565046835 786254965 154318850 241408163 668860361 35675109 721138247 746955877 391111023 782757192 10627610 320544156 447760436 91169417 6010222 133328662 698493514 771428370 120501451 249200051 51846263 270856599 896379145 69993975 14050087 64750149 29148795 209820648 345721493 342601496 508947278 213980240 838622704 895267822 86080364 87496688 894653909 336554456 287326417 849840386 328770347 192819927 486800795 411879935 265960586 686516254 842826787 232058757 796053140 243101544 837297124 310018716 763841697 198486185 765327477 110136271 503548750 990456097 53376504 581660909 43136030 897259 237027144 945925805 933564991 762079277 553871637 460810445 411183911 465694342 145984717 28422028 449701465 38879056 240853256 778036276 242283403 750641250 369942847 994407187 713749354 260596532 586214059 558716817 279094543 281541357 527322094 774793526 475729493 536475922 483128868 825980638 323736213 921202049 406084916 256239166 752203973 347182024 543272225 532908650 43897793 698063759 940569047 215774961 508574241 824803580 67098416 15177511 991791973 682658595 619312028 911230736 583683291 411371754 961234438 64004185 619822402 91328058 767866822 577136560 73698487 575405921 325592766 864339217 642640766 581034109 815179312 558297687 439153875 514815691 909814106 222643600 44904652 30879045 862941746 968988337 845500239 2433864 508884097 396719738 437707946 537792152 692011357 305097617 650095705 143524409 242483171 152695283 440914506 874944863 828782958 966664843 551015481 236529051 990701753 142561008 180932913 769760266 320597436 568989358 296303413 379702631 563185614 859360971 783791420 292655791 173042023 1249022 744689924 207722739 431746070 945159274 945749155 551312229 716105140 873107762 426391703 481354704 395723020 166010425 719170722 939186644 589320231 606443638 940129736 579613186 417199586 584988422 902835194 933277105 479869806 721468969 449213867 170907159 693012108 781038360 178439151 392405265 3752629 725657845 361988216 753895625 735449910 866306672 159810688 480717259 405142664 453207278 120553864 997405095 37981636 278067938 72778500 115782323 660918831 140388906 198375524 775407919 205319324 368754387 666118398 783078786 568606928 279291493 131567206 764977266 837340162 985154677 752333323 16555042 748263366 171018736 950264133 99822692 302310953 430136137 492730199 358809454 523170596 329356036 640939640 376675442 367906388 989902238 839939870 674315061 736452285 761303972 897565262 407872719 466128041 509344658 98627322 777983893 965909196 441176500 886729719 995633186 824430575 790821802 287214327 182253137 568124068 556595749 978967389 515321358 744785039 519474853 199111519 178122669 305409540 91822875 540247054 111123905 766095259 975451622 742934962 272664067 802592583 706900019 470840345 129053249 398918726 463975871 766003057 401228989 398262781 579920098 582276659 185418934 654400442 980979072 644533145 759697794 912866710 225663259 77242389 160966349 837756884 464744748 512440502 119591459 756600576 356258057 992095883 288902047 223898459 574078133 243514936 396583366 71216689 62990269 5536642 79128417 70785554 465253935 444766796 599900719 127843395 328465567 41542983 123190250 606724161 965194667 754882610 907133032 74297335 354571379 757270403 246317554 161288901 536651254 720217200 450880917 959836405 131272584 39641405 173563706 866924440 285117256 61846964 983525929 821241800 92466223 747487513 913016799 753010993 669749930 592092393 360214630 584599789 575711723 840000187 319571652 822370873 455216050 350827452 487860717 338480101 902869800 855657693 754345162 399390016 889639341 866809069 293199378 678785575 128933192 584677276 636517457 594159314 546273606 46682915 677930694 184550850 61236879 512959925 870533091 181398371 373161457 124848295 830377866 214689288 221177600 110284054 848622839 886284440 498736070 943645445 918237711 922450863 668583943 205416752 583191145 790977955 964597425 489394604 968918767 437715958 887513307 299031989 237425004 156347924 619117228 698761703 67363702 361759623 860626757 402000825 822466961 502366850 154133317 178666742 845205349 308862901 940723852 980964139 856235289 690315253 336470727 21828489 819156890 811296423 888509373 729825761 426968430 850427237 770609079 536052403 847646638 97050888 833027174 651973211 304553062 345713503 907542901 266183681 609762961 664557584 137104639 728432555 806519786 707992449 827917268 911390997 850383366 991057342 856273247 370049866 263734197 76068617 51569569 981810031 528973062 553278432 693816097 874834873 802715347 914986448 759491497 215624781 991337154 891795936 892021118 691253561 788176424 88566518 311122668 401018176 926072197 495964984 595392479 648604211 52821557 538668762 369389994 760683429 95966143 898859151 849368766 14677467 369677315 153723662 642326265 382208172 149636453 427284791 866018928 371863498 27750174 112750452 671226009 748082697 452348832 93194134 68708587 898780650 755271797 149100189 957327384 878333904 347901443 33727709 195855866 433613702 493272026 775294077 383498417 600523159 842698837 998932835 609950864 344046464 585111892 878283735 399458163 569981453 171198326 143799277 400918001 239400899 915152654 365264734 600202445 657903932 365900445 261160217 489082086 680029920 970383738 86213521 782389319 276445759 27714331 512283910 875702060 257381544 59268224 944599775 100928675 470488637 920463856 560653525 672842200 713767124 545983154 736675185 141209262 427150207 705734988 868806315 734503737 536548989 944039982 645541878 492470576 951748797 238792618 793355559 585047153 360838575 625169892 199416027 675391685 321541312 305924572 831176545 802602243 673338247 549385860 893440054 122442137 502882908 824969410 267932791 151277087 847845583 62237427 253388787 699964798 978006927 833597213 862667121 299883025 501992020 805100426 310253654 163283979 928824601 548965273 337961926 295150646 327070085 729919435 691441362 483465946 651757831 823647257 502720919 929701091 312004885 459293078 575673527 970796103 442548740 428437973 705230500 61774633 258982906 209101485 597502793 150050947 182390743 977969696 434825949 143301427 927330547 422715660 611631477 759906700 653581171 770370721 575472961 270009195 131809341 568432997 742445259 473687800 184833697 507717896 294732381 703379255 193969073 597806541 721796789 349335452 467987232 785399845 463992802 218156472 581728714 41756380 377757395 66884319 103660657 887579983 947334337 398767292 369742323 753176282 535452824 873494401 862375208 48562034 452718560 775912009 680851245 341269356 187396935 189521276 660883912 843047385 506615378 262472368 897360929 920217301 280124200 876327642 754774347 508442537 300047072 327184228 309086653 921191548 343174599 973046439 203301915 273752661 993563002 640984323 641399311 469626693 609930690 177285384 832751549 799691942 859869552 641094244 85612220 927921758 152603089 650653815 681465527 58058992 889855102 899751624 124483938 933700020 757389243 230884559 414438992 559487196 227147674 175795557 992953281 821388174 17558914 324971954 724376205 374394326 938740542 567333369 108235120 299274241 887882251 899953790 936703626 278683847 887898477 616004521 837491831 797027468 286898417 555602919 118033224 705310654 302628497 896226171 36536677 55099058 775727011 351378897 853579812 533921293 232972442 608022380 423962589 886587639 482026844 419286547 41929374 741509704 608605527 174818506 849168985 756258930 353027888 599273785 934013392 340812675 591569967 806822529 522503358 64971537 514628117 187402637 663243160 824321080 87154217 992254840 814286961 803223331 56917314 913070990 594891602 898111186 499658951 440874194 360103987 577313904 304553221 806871540 995928663 824015230 962244786 665894029 890719137 850853265 625713199 683714010 951879416 612691020 699318894 179890265 325790923 261783109 175524523 700638717 205091731 120606793 938388234 363119553 712025340 656503097 69256401 295824821 309026425 719340149 585759431 931011524 201899550 637794663 888562070 888144263 441087236 35190994 460350706 842346417 678722091 403756461 745483846 414573746 571186508 70769915 608948282 628637575 621821971 168096281 186580863 648308577 291799122 935297520 715836894 196674581 206431950 726281913 124654806 84579923 335612073 738554211 781374645 867782151 761497350 449255255 709410564 713449318 571224203 431402703 385679907 607562182 334872166 572500120 857408329 908749081 737587627 760901992 286255530 452309375 221541110 326305104 46608093 3662398 108452394 594369861 558497130 730939711 495969168 489306967 811928107 99848864 671265449 187718590 630577055 421935679 617559479 195340350 279666464 703851227 258886924 751652182 960564455 493566014 486017890 799560581 893970276 682400302 196059234 378459655 2246965 941616413 183601170 411498381 469447607 9263930 264555889 711677156 740505407 653888526 400109552 15635750 826071603 241883238 278574859 526157875 857826309 545618436 304111252 599950509 543520284 488853315 348750514 175188542 943170362 929445942 81639932 208956650 664166334 169474248 796525830 476693931 765640268 568958147 530249648 114535353 86118629 401571062 996380141 614647667 249865677 633613729 207291228 585368046 405930142 726706166 123929799 43417499 786446469 117900921 937000246 29010058 388680227 561357921 539872305 963675687 29952657 595620265 886549413 766009707 242670761 134451746 525362413 871133231 996438975 806364788 988978895 457174353 632463359 227374414 30515533 640967992 14748756 592807006 247665040 882369099 331247149 52776488 808814163 362421567 811057657 379883748 851766654 639071558 216587607 289024587 170360402 950807092 803440337 58171731 319672989 806288291 417681912 460501051 897065400 987386319 229472881 549026679 414992777 972854509 920448137 350104778 930409299 156460004 224461980 195755563 173268984 862441376 419884638 857406420 108731838 703281140 603793775 468538837 196226351 452551109 720403933 388247735 520839159 736018144 939191669 491976281 691866623 697046030 950173750 132761461 551224086 178311412 233479654 783652687 805210043 103041146 233819855 702221008 609742245 84243067 511326047 133268069 651199096 362232853 214900473 956930567 717106825 9502008 138031844 935887832 384045604 524634936 5098095 850177947 21233712 579756066 74491623 941295497 40170225 94824679 724643906 234279376 883129288 136506577 544199745 235500368 93507917 783438168 870677555 397722029 433602939 564153156 61639755 515100946 252095736 690012278 58190830 143842473 195052985 640213362 749511748 793324510 383577648 915868041 170761352 150835416 917532590 106982782 919329793 560956766 462159248 231799922 702045035 117586414 109090490 500473638 984984950 216524189 955121887 209821390 570552211 507539798 33950549 593665281 67000960 89796710 495442357 812129087 561154393 853050758 842166075 590927145 409248524 221923670 653693481 719565540 523568564 472051243 217248087 911483665 837487957 410069991 441145004 571523510 475731372 210437952 652348974 375087322 937723004 489541543 187520182 271962341 549713697 255827924 729302246 570998912 27966341 695591544 329533217 866381168 887987505 245956927 24639368 788134420 271387036 967523822 91830207 624825618 526310897 281608079 960844899 710515147 456981618 933907991 856819883 288311325 935748081 316158141 880141174 138977164 838952369 274642431 784746663 124220340 645390610 810529911 870047463 482577988 877850698 837969307 708597138 531506050 727733675 184512681 22569311 46404232 37650386 958950036 366251615 921292978 266821750 863452732 219799669 689555650 130191172 889762517 777016802 795114931 681921306 263558695 477339150 25651410 649664167 871165916 201770271 564827503 352177383 656746554 961280356 513247406 672914841 296605643 561663786 115641144 976675855 377521906 14692201 228541555 534541554 895343423 722027810 353843959 339695814 537808177 209517764 197982421 325210288 763894878 980673293 921962934 989228928 139328754 281204533 169750971 894010598 886259377 596869027 991246204 539952512 274478559 862321918 776536803 196540682 456986675 515111648 51720747 794868618 830268239 209027560 30858584 510564428 73468895 653475068 206168483 540284625 54396945 72609262 308184736 465427297 605461263 511240146 702757862 56833589 277250736 365861338 167082664 607389108 850244222 50403643 370526657 422765501 26187531 469097908 830314452 21304027 769389287 490132387 682881304 531346044 150922731 871247005 207389913 519736919 10394160 737743241 313858640 366859630 935133206 903006489 795917406 426388994 926241666 355570806 37644176 537180842 971360665 29716219 753394985 501593773 663612164 533570184 621971984 752818765 582877202 686322896 94041565 754308 218220525 995192585 397161221 213403415 790082882 49166744 551748283 402145938 931416950 205557868 86026777 630356304 973021908 19775678 627784410 949493326 384713900 866642899 22393994 392509203 204094093 469370449 410440198 862423306 899390885 556607693 396251232 980805443 531849118 387975751 336173812 707239614 624728221 725112010 191767599 108928247 913799172 803902864 452055704 106176185 733126464 817092097 245091697 658361397 420527737 777640757 593616157 539234578 106239125 426755019 170696223 262057592 815178852 91432301 682619676 671792840 96931087 526270897 492109867 61540240 955278208 117312019 94685623 177007752 505481807 289492682 841769563 600751022 533985898 595307587 838417708 73429836 526015485 621186622 859089580 341553347 183897788 504792984 93384594 205694080 490043387 971889061 94384501 438007099 771811465 402141460 37228342 746839808 377964041 456076641 427849955 57283134 726168665 265756190 638712809 554773096 234699325 999457656 332691741 729497459 486085516 22560148 991399918 434830513 431224063 214212535 701711795 373842393 265763994 970526438 511390839 223026268 43889690 401600410 392449155 304829388 102705236 121309047 699858385 687294729 170292841 846409203 75072125 196787861 349215279 70857499 914005086 701541341 712379492 904150419 319184175 239339837 368253615 787445941 787505290 78981134 455906890 195493856 519022668 123594685 69182823 781543518 681599701 683034802 440473552 855870833 938763173 935671366 565130958 185303126 861515718 474877128 235154901 597446464 477613006 290563205 281547612 248814860 678461130 881332514 324591850 196997138 334374766 483378147 666804853 706033594 648474826 801471789 452731847 842542951 280312180 665266892 641956655 512864124 805987739 515897335 604595734 570417563 362716632 946349912 100578796 104186582 958268092 117278280 899416439 111983340 45999734 160966063 919033158 876041888 206848127 660978091 634545778 666565578 276600337 121705477 743342595 268584057 658329931 183858494 774044239 339894220 209501227 553240313 866061408 857679459 382646150 599545472 88435068 430100276 309016606 128333423 98879063 168493226 506677380 299262891 947360311 505342116 773300592 139010729 695062179 920962880 636632131 87150687 37079396 274099185 307625441 139963230 931925664 899923238 368491928 869297640 41697684 606060635 317281533 309968720 977673880 999605658 183561494 113624861 401039039 15050670 190295861 158609800 536473610 649505489 303491073 609902574 330155696 640076322 130747305 607861370 374160733 707977934 191240962 421117434 923229516 599835071 836200240 945522059 370451903 272892435 418647803 636789400 4031263 510767592 83178654 967299248 575256068 659592508 357783889 178326212 756819271 618955388 615906475 785400098 586666951 542739332 999301995 863859346 731865795 194535590 21482560 726092950 918042586 524434128 678211069 140258276 623283617 170875276 810324664 190714356 979483765 28230003 159799872 138064645 903311374 970942420 849193637 951677023 429094595 961718812 26395761 841920445 671489273 451209151 689535747 83547148 441730878 327332286 331401036 393673213 75419950 198496926 518097476 851306399 142723309 173597304 883402979 233781804 661492292 409372402 759710230 163346592 77049175 303377496 997484002 291754727 676167800 131742248 943181863 508408170 937008417 612426633 679037224 874696625 921339637 436278916 682429670 570296572 478836564 924188648 768894946 314578180 52527363 934930025 259116844 877190481 248816531 926709583 832785957 892586086 488356577 477405679 149758286 982137799 286594050 130984317 425625026 144812794 994606288 574310375 249070950 802296971 507037518 469356417 299230285 609947314 984233662 935586447 455712083 55706112 901337908 859006345 205431534 715239098 697398509 381632870 349941768 607408756 548126793 253797528 736167077 110346581 87766786 923332517 767949279 471936676 90868393 451634934 112153852 755981523 289486874 766104254 426028964 554139508 121838542 828904236 414658564 415133039 123631135 796812972 115960030 434677072 443777782 215488146 478004273 682206027 63621831 389545816 86567640 778209953 461722549 140082345 996357189 832761559 448815607 739865369 799821850 253753165 815526850 721072071 240294255 846944439 244921841 157298677 477420360 755461688 7258880 184928123 644472600 556411270 255320271 54183715 196248621 576030129 734350854 323359873 388500563 844992064 573563007 973249585 590694337 4039477 400506191 441366736 909889459 897238086 503111244 353126601 292619395 379454885 268209155 342439422 19353220 916070275 518680120 99236097 896645810 141394193 940297723 648191288 196513484 137014482 546798840 997780471 149659677 579737769 798282133 632230048 427265032 209292607 753848170 919350456 748847250 361311276 17629363 876312536 298116744 606671089 369513835 33154701 63489818 555887738 700799634 614360516 325186449 81928697 229015928 250079131 51719412 696080733 793738397 644053012 476462753 190197254 640036541 744257120 216187054 520720838 134188537 115404465 306265886 670061115 380800670 708798327 176198500 403813382 495761937 853905764 662149025 470248690 130061935 282109229 462004475 582759831 360065150 847990364 918014892 218909853 126401947 54192716 56384286 904040021 646329097 980867990 118893744 446151155 458085777 371888094 83294970 623400919 336775937 914325645 107392152 922425748 421745654 259697196 13737248 751249867 726767728 76293871 737731316 501440296 568158198 8900132 287324537 212008861 265839841 851165954 621802633 929485207 918836115 63814858 281065433 399676497 608540649 291502067 419669364 368786928 598883719 20185062 810632703 720339204 634310369 56538638 813984748 575379468 866484395 90511346 94707418 526979198 865547596 53531222 901319393 212289199 611744302 122324542 440672084 456036703 412347015 171249338 413158319 762971759 353011259 250862631 863721789 4218078 404621908 19183321 289334493 674833952 459538699 522827043 917630973 339676649 919895241 428045752 647082801 865414328 252206349 46762497 255335698 748095225 627920316 541269291 935734849 143899035 524190304 494077698 464088985 84245171 137468967 322856055 887379481 122348268 498251445 585731235 772066896 816221849 127286446 315976314 547992501 382127164 13215192 407285327 887081206 236672229 222445609 636296544 175990104 843153328 9825471 827964419 934299362 875066868 324524756 976633875 146546006 224914512 691034001 548141348 475561796 636474283 883098898 192425731 279165691 115824811 158932366 906966931 90067504 574598867 313470085 340745682 201152989 332507144 781310648 448726929 437217461 910567893 358130110 562280585 60098567 395735828 37263997 84068871 974731957 599534420 315396515 992910996 327392587 524892694 141774676 276362594 207896414 78346077 343513799 711302801 991699480 254773006 452508251 917177697 776045045 553389939 44277112 645684378 736534047 354563428 301015030 51477328 865162909 501046366 839445288 821197168 543770973 12946941 380818457 528961910 517664046 840003638 938319991 54392373 457802689 820633977 371593964 903881708 378736414 947155071 81312356 191533325 857350180 310860745 476419214 157402809 67236083 571197817 624825101 602967588 306333162 51679039 238600463 693071594 484144082 887125353 284618327 805766141 198676721 882518226 159387342 821546331 398778220 606500979 503577242 963303712 726803663 669776455 759617308 929827334 200210029 442586116 723633487 53731068 140849633 475484475 186811975 509255660 624021721 378555589 664781756 710589310 282161955 981310265 84862121 744208272 784335364 105259797 327329142 95410015 477536320 331598815 917844788 522453058 817530869 828552408 675430664 496139754 606808002 513299800 988439731 635625421 870470508 956546391 326109980 955233603 478027870 674803243 427990938 605083922 406691995 436851251 457236236 889502268 572845643 736813255 728388613 855019468 27751927 220838154 531602592 992840903 492879835 846781907 579894475 129443928 866856655 218376782 428536339 424418038 123228092 161827821 341038046 710454450 989663008 620097231 757436343 112761526 559141378 503611927 802169606 482322618 327569929 759924716 745821239 149960314 723576705 211077857 899260403 814216766 761689683 879023255 402886155 705052946 345287319 550624487 221979866 406293877 306807264 427789313 872217619 454981750 49510204 166977169 324094431 205168837 712924134 462968292 20012476 300814990 49259570 137313029 750690337 83157709 243810202 979610329 706603248 917174578 494854638 137382293 57124768 998730295 144484381 279938261 562389540 124602487 58444171 485042970 178546528 986281063 126304140 615691092 264437321 390323982 348683030 123479892 156551327 93527934 757070436 235031601 686017743 135883523 362631208 516972380 467741123 999105139 738991302 355906009 228919149 797976989 771806481 177443896 393442987 923051071 734289748 419237451 912949867 63661354 537289134 703842900 192710933 961277160 721785431 956874270 634052666 456871045 602012319 380883395 34269547 16497052 394409319 510130748 37719476 675435691 876069672 892192407 757129311 828556047 738628171 369137377 29797037 538229449 647556667 555515405 890168185 902057574 876518530 871337917 157193718 956099047 152424889 200406503 492097719 731100201 789111016 214760439 200351532 895290036 818155856 264542891 616330794 280026719 124346565 47403435 703844518 684612456 532402616 235691537 118383087 373783135 411934240 697896163 37538731 638949316 479535805 27908146 908552189 395750305 890079402 352623596 697735083 709961576 210820737 56017696 265173516 799955371 56220105 28517084 503603949 129459485 910522988 319501914 173816501 118879822 52793612 862642985 412486000 824559059 666130733 970849346 992416640 450489837 732807620 530419215 653342885 54147135 41906901 880672292 297128140 373193963 618487121 928965125 180105638 503579969 795188423 987201494 103583448 906971310 614226131 709578046 948839079 368291914 48018638 196009039 230340116 527881825 640628441 671113527 25918976 794322272 606697322 300449314 852095047 883514742 661437865 387005318 492404771 410032766 504774869 703859849 968708349 677072124 455578808 983591351 805516269 510068690 302892699 934439263 741303443 164301063 569202380 972752358 538019043 704162500 344980530 772551209 748187767 441091201 39303270 202045824 472128376 486180676 696880410 279238068 165580393 107183235 694007416 746320386 521883004 53098808 41379690 788572578 493686063 615048921 338627376 271560401 784578416 27915035 15129805 89499459 273640481 465282175 117572685 819017449 431019375 682277615 858117922 739308741 157375430 372752764 585709485 691559850 132765165 145679108 70031537 786210766 767894687 710339093 980943003 875464952 263642553 183079802 162412684 693368251 569017844 492487355 936332235 988870984 63666570 651409382 196731548 547186766 890522438 338029065 945380784 445721175 434112898 331000981 259184417 252922666 35348438 757781532 121057475 740346457 251564030 207272111 579069984 436912660 297844589 85492384 917207630 962376412 11801844 331566260 526418603 907845710 485338038 510795379 846264118 848473420 526529530 994242113 426325899 765063765 453110364 209909301 249725584 51219838 360707878 658366573 305667463 253184347 670638146 302411331 438207017 90238014 386158647 861451403 543461988 198674156 734728467 225054824 364899068 411441106 555918394 786051601 26086484 402122109 180021775 757982407 594645980 232526757 25823045 498336653 371623448 574232228 684549751 627133952 243807171 170353006 135904386 302710916 810225503 782028397 936414549 262006695 808573751 547575278 508491934 309792073 409028829 207924617 558739567 623207156 57709207 358100517 779734524 393774889 942539963 887309227 602981487 420756538 222377196 596059021 2539628 902328612 663138965 527010411 171058873 284189018 36878917 624106651 479445 856638206 873405311 58330080 263991859 493822712 411956938 221528534 692841904 837954920 858134516 341480620 263995637 196453207 324971109 677750393 296740665 635245502 438613908 887015708 217716169 318503641 609379405 568537791 994789692 189567441 442649398 649275748 793611042 701128793 368611776 96439349 774104554 816960266 141626937 53596976 949599568 262611333 303506089 501848934 7690573 642114096 935108142 936919154 992969350 420295449 188541860 29774443 778627993 699585621 628414106 915218331 624428400 762762480 778172134 862827055 900978092 631973471 516898582 683629697 939302155 867317390 288966349 749952790 400155905 444302368 89023833 277154364 8311911 211752868 147040096 15532721 670141197 759844500 63356130 465205855 531699936 521765226 878412332 95655881 861304774 294978581 402186199 163913402 429419850 759569333 901410962 95770834 785838555 654846162 164509001 381211507 385834598 719240915 15161050 236208964 400709493 261717282 645050241 671218725 182427374 648897113 663053208 758681380 353406595 821807435 543432440 610156215 714231955 223703067 894154900 81027755 935458740 640713305 376057837 523880556 816133188 447091621 898507849 310632477 922744090 421997837 540822786 284412462 111646414 611764917 145759074 208811869 519718871 487142506 61466041 562426676 768830813 313662986 245814145 308869761 594448919 819905521 371948451 553333421 659642559 754870646 406063721 337112693 783586252 429125008 935310608 481835335 21340737 147235697 834966565 237563835 997560611 757433209 245421958 139861531 895376161 276099941 38721509 580635405 145096628 148179265 236107829 264713124 324681242 165525219 629536299 786759271 146470783 985068336 151986648 883334087 171788542 672042671 557629400 750515752 466426862 704867911 857436896 23191439 190806333 167908972 951706865 53231661 873225930 952037303 918550290 978827573 458687590 345340738 657706975 807973815 60273822 552900786 273284344 737273102 180253930 243000323 608278932 571222734 519936879 35386738 972969523 371256426 43733465 869330367 96056330 380667178 605756725 546035458 660000522 358379499 597786490 946152694 757866691 340901080 239957100 104576458 975652746 508869865 5389135 921423128 739466923 524795825 776409576 471781254 856424047 226513178 945128330 554697590 563786558 354719836 140460658 845040497 347861440 231099707 816310021 774739996 433806348 550950668 192297053 796419611 673018099 280524367 361794109 780623750 528378547 808885165 499251673 498756183 973789051 892909094 786923135 257568698 405725350 453040211 231971383 978264576 154890055 574844930 692400458 242467351 588305917 477681010 25900850 246100615 967027613 762295223 783444708 907326835 472944950 819501126 961354295 212799947 762616323 968519008 434950971 201690682 513458789 480617280 745175306 247558909 727440815 251169432 382374566 638842146 70199846 344515983 997463932 535035855 881107569 537232647 591285910 612185523 696092742 817358383 585675521 771213212 853244870 431608604 334336784 283799647 939284030 11620428 652235364 434689383 87531077 913451666 261071373 5860464 831410273 154740518 875561645 378558082 380762468 83307708 530513850 8884796 105391266 792721194 133962309 9650656 899762685 734533888 921239140 825657622 802197137 517482472 541884903 15217777 991855368 3311366 406959357 581362594 603266401 163703086 558026150 262329802 34884360 79370428 371904419 73210631 441295046 472528730 744256401 292839451 107049960 589795820 845658609 557916946 853522918 102793854 112772397 937238686 132806646 801271887 559820714 200315752 864676889 634246830 949262663 584045347 568060166 322848954 732292502 68952688 973867511 424412814 679769138 638761577 458910859 999643357 786106674 155215683 348864312 669829418 378147895 6546403 503037746 335409522 51978925 400069814 138968009 58474798 125496110 901038541 160548758 460994319 271427224 550454789 818041476 510225951 330301345 198630868 11810754 223455933 731046953 279720838 524636574 750300573 665776306 355210419 247279186 236065213 57117030 419248173 431317310 571545185 432087920 864937818 623398296 572056182 234196196 525967036 168388507 541204590 393363058 486021200 450639938 933300509 646150825 322124904 895535326 309775150 399424337 559094200 97812768 747206712 584776111 228085239 529881968 726509404 73869600 82511658 602843361 270531139 280768504 341278416 883029510 867484617 668175765 200944935 67271502 497105629 248154632 376559520 254615083 606534971 594554565 489218130 410727571 88022893 554185091 586143921 155203292 310903401 66030304 732586060 908819877 310087451 861350966 687693453 132775999 371853386 36407594 940108 945760523 675655682 272833504 985698087 599224303 652553440 878790205 400983059 378174130 716222422 347406947 938523882 64677429 427965404 216838455 897336047 411915309 620365890 773623239 996057896 579157656 955343108 200611915 850402780 752580809 325424414 484998036 192187453 211324778 907231867 178677357 810372587 122862123 833587497 562246736 425494287 702331530 31094990 410136175 839796395 952275089 891544579 554203012 226134756 710933368 787724515 165454088 982385082 608055006 674009546 904438232 4859923 854068342 843187910 714503257 476439588 45240778 364823610 781783727 170775297 884495020 905641507 974022650 587449535 96123739 380031359 212002480 158680756 200375516 787539050 475031069 428328260 522420625 500527570 277179382 44975508 689441672 778083676 191041456 310775505 181123619 384143508 876480164 907683388 89982016 469819316 708519787 419357917 569287447 206962159 495086466 300694451 331586703 137590707 491707340 288688382 101442271 189559349 968670401 631189600 622741326 120925273 169727414 931976672 93521064 757877578 477210302 512739573 780748939 391588570 207876069 759386582 472674079 384781201 694056869 572619190 180025725 461046571 389410358 845312307 127126103 521491913 138159985 814870947 588938376 753304457 362757632 418811874 578084380 619281184 180182980 487733697 145092794 293169485 995912164 192788064 128024730 128388776 880592430 345521463 948409698 977501066 297901413 783605510 968147182 426543298 928394834 926823928 734209364 897585124 409981249 739012566 544343645 8839612 173717606 59539228 693243958 914121404 873587348 946519251 647074616 27224483 241837728 508064730 147304560 447170915 391977006 610239925 999084446 97006223 437370690 811254950 202494226 130632066 197929828 198103611 194883316 175787822 207850987 768340444 776447544 418239084 824279540 703287729 165252682 183851779 501491699 176907601 528970368 906969926 874373106 358880458 574504048 499525344 912826010 787739076 827400820 71292965 351309816 836098827 445106762 715743258 468450101 246656331 832697450 557701986 215829018 643446392 599994885 799199601 604832949 828877402 700479348 259141224 244727913 850969937 149118412 416119183 45039988 499195329 343330832 449867612 60598607 369030724 204094651 737101242 729338871 745536487 270254784 642627019 891346417 224191216 439647244 905729446 877301242 85425700 860416436 820371973 338994643 148604444 479507725 664188641 363697226 662574757 556564141 562425935 555110720 649023342 285742499 811589101 723344454 693665932 915365593 928762434 114430402 107814216 157250080 130387815 21785429 530215944 848278486 666581933 50535183 407155285 780515482 523141430 251017947 174837873 515383230 278974135 611310709 447790829 834380032 756027356 683488699 152902999 787440870 511973398 531585820 177753917 857208192 48836068 830472543 417499338 784628864 493304678 469538120 467823053 452096605 944638451 333745697 440859454 165129739 878395452 500624330 50716801 536563003 832274914 778808362 669649230 500936677 88924535 827277025 618222236 402374340 300403550 128258893 317970566 914846360 303987767 528722613 673554311 376895970 836642916 314052338 146367414 154985435 588588506 676468999 521401785 98626633 963026215 504891522 410008175 971537952 865029720 89900388 200925995 855028824 455868484 827843978 201886515 148906508 235516720 962481352 857826650 53103208 675303643 307567187 387098594 335734113 635651369 356891180 651611083 226615771 981741833 60800852 705113883 503391038 182277950 65539537 650783573 925692112 605134108 543695731 634081163 887033514 648437845 336460292 877712580 203603416 150294578 71221791 643114458 509677652 745780370 637339769 780585968 170839339 152167802 335834473 179870503 145197640 103252977 881120381 909834105 284987549 411667685 47086995 94196453 946205345 156531011 664461560 820169943 841512580 79840663 427204567 770191780 643796071 450419708 343325388 789235691 908064795 581893719 480096679 791805080 305686846 261242104 129055647 483647025 34485207 504880277 252208249 609524601 139483745 121167408 879217974 764545262 565473334 384926980 508806964 445647695 89239419 311986372 134412736 758802524 526028818 848317871 746083437 523302966 741760605 506943986 837086057 499849434 735003519 472079514 210203812 912819711 465619413 942072356 172046875 818484117 336390520 755682175 147887298 765760424 610181268 871942293 49552447 736846191 751649390 158036403 488699344 441718223 581425785 760812761 853447508 943435839 281760602 703960798 819370805 309994712 557443025 746293054 535245624 145504243 690484731 589787315 594063971 912392693 170624002 202416162 70775416 674339831 182396764 174251359 400434579 44214564 381725750 177065870 429992788 317001145 350325416 836738272 798439296 353593285 846014455 341054766 715007148 8142778 61488985 489738298 71387803 229273680 958967780 530485098 603975960 427442144 185031445 524071640 820077383 372470194 685673143 681504395 326227852 563555095 623222550 351275455 348896613 995173330 42786718 740818126 335545619 295691390 40496121 394335833 661873681 2321688 353956634 518082636 585851045 8561047 990234003 353186266 578512498 63396175 93094815 962389057 634054640 840639829 251336686 450565952 931143328 35170515 524857004 964030527 159343833 603417166 817762493 703595218 604124647 349810125 598295677 543329641 407226355 78784621 480906582 83043801 69190773 253097871 942967698 679850821 702197273 917211980 223332719 11080535 356679796 228211116 227918717 628536755 443645928 923676551 904225522 834768053 119240849 170205702 782015922 227622652 653519122 408092513 151408452 854322404 839829974 727558186 870462243 657511552 683455744 839662010 54393967 387784336 600117424 730739397 946843460 868764019 445813529 952943522 628295830 526612902 264236752 547179899 151750804 356792200 722776008 706652298 946117839 979498145 250129656 75837809 804268500 852251581 878030830 536381969 709784166 310799662 801479169 341662163 457866343 450693024 139426891 222532510 190891591 979836478 967179904 21258890 983412948 697986925 837962173 56236513 968767423 244187263 719720760 736651824 592639657 58944873 198285003 820454404 848601122 564169412 615474509 910624180 740457156 386103318 272940276 429973820 667646856 289387560 513568499 951694278 83963293 172625570 885017851 646901578 767750675 994352406 872632284 37690199 798105858 397989693 104669362 571032057 663575540 196605525 682427602 864913966 665465415 681403044 665272265 780647926 580900647 975886323 314383109 140664920 873459984 547935224 912704716 51110 601124870 956028461 412377972 934892350 911260532 661589221 919245634 166395878 87896003 488259028 330175493 457253195 577087416 755786468 615364380 63216010 182764994 237078780 637492279 163329473 5209992 496588122 547719146 254636674 998106602 544883134 466754660 851197274 854164920 487508678 978319429 42498643 162270712 813258685 12502500 761126679 143210376 525637311 260149843 133977579 2627089 819489937 38232211 173462405 654882940 985303470 371807060 330167470 745084274 523354881 267634490 294648421 320121647 46548520 454633799 614554948 679933046 874840195 577863050 565268724 611865275 651174092 917801951 874338537 820703819 211383892 485153485 644585597 13952903 746392986 440862031 583348491 825191659 68720916 469677261 537959452 231427776 765027415 687996763 475949590 808104526 772279581 905956986 857677237 107256560 684598272 107635462 821651246 230952115 877547387 91932353 123922683 277124718 618525280 106218702 192891805 211558869 284358100 359014548 117106014 736694833 352082222 753790353 224366102 704045473 130615222 669358898 624905816 374515720 109735729 138246279 495700027 53487338 382430016 898219976 561472286 625748171 230235023 34181570 100418920 54223951 995019224 469535292 756577146 76788038 181885631 146412989 366866932 803110690 773687854 732835701 244945682 164117431 704128833 696886456 87349342 613141807 386281348 333952948 245467472 878422810 470272257 542473696 699130614 12664614 415858558 566191440 254256096 289300087 137716736 949080464 427204376 284421864 367137956 828052454 812679438 498476567 905266563 412077250 910739061 772186938 686334959 340792690 340255764 987699907 41900525 335437642 628528350 373843429 710968084 400790768 313889237 761017574 744902122 745325672 357240755 614928448 640685654 769360717 59465425 316736399 417321804 988164536 716058497 418134151 415779951 185407040 322224615 49465404 969129632 53501497 751831524 40080484 855959756 407058324 863660463 804831501 139184683 757563009 235258054 798573365 29205009 371925418 553285262 73174937 952092455 172928903 396454430 547049500 827015711 353997058 271165290 292403325 416731221 199011650 330695339 302818111 540500121 219754777 491705322 342210252 259305774 460194636 300397143 684802725 681630195 76880534 960044998 873056066 989033993 811685418 899732714 276928169 624066400 435783243 899002568 792309265 948865394 928280033 221028002 362127693 338516297 142681985 49254098 565424378 590734341 982075432 582417287 517622666 977975651 906284983 118619732 772217283 303159057 161883512 942211404 185897181 34990549 845059854 199978400 529083626 998578209 196984164 671216781 681805412 876621517 221617311 445441646 822759969 824581394 107255803 61896529 735407544 522185683 521124975 398296099 619261560 887120865 98808910 17929515 532833428 473135476 318809308 62268679 202409371 938631132 64447225 342833279 892965054 473333210 639648688 670743140 388022256 521358410 703300089 500085355 205842892 743084363 939137850 66865244 783863089 325613249 936873466 122102060 746284070 952866729 401296869 404992361 745223802 21201057 512992329 513291175 586492033 554757161 41939212 87651782 264912845 401819457 940914307 671845387 821063395 78307862 39141068 719025083 375479318 190108806 269060728 118329457 207955017 54294372 939394862 782725480 271973747 980231219 164762477 587039978 787280396 72548081 286050126 233594846 932693871 209395086 424581118 481661450 378743160 594001098 489872889 266291552 603565954 115372517 770458074 763254183 445857192 330244401 544306050 236993628 81465077 215994911 346648382 16088773 792632296 221338325 516566109 522157954 690725823 676923195 790891295 789049448 978632009 841354477 725417521 400324817 297014461 1215382 612200108 230821371 855797152 729315475 180492915 352118395 180000059 106032770 381912377 705519579 858048429 89249955 963821475 166959066 824934249 455377588 204696813 608367985 68218140 539968546 229812824 143118228 89408427 692284400 429338706 887000709 204263513 421241055 551898794 300385639 739293261 502607773 68098820 185266852 54747318 255818513 604592389 203243901 782451771 332194179 293061256 513240489 664581375 504618557 867639136 687767739 45509910 169228192 304421991 392851780 540763203 451745074 399596536 193100214 632513372 649635073 413965697 696359256 881763176 100682262 192449530 965675772 996446348 621116461 918738471 173462896 293767097 515053505 944012330 935009832 192424093 208415171 779965633 394486716 279321759 533945388 62364256 467767890 748225350 157624748 47224090 755813894 637507448 900395753 53380057 246132556 914536329 59009542 548644460 107867115 443430190 785016165 892814005 94024407 546221985 299772181 864779981 38518335 294175779 548835527 191667709 508719878 384819937 449636986 106925658 832233388 446562806 949778417 895769016 784922952 451075680 657762537 625888489 954414079 833661509 613366267 64252900 678106964 713886324 935639953 458796499 786214835 824465922 630991977 394619922 157361731 961147437 520163886 931924296 258651328 760796408 937321142 524532804 419598419 615424812 74605831 740775178 351765546 591321433 598805659 677745476 918054579 232704685 801834103 237519432 227516321 346739472 404359032 804420169 568042240 542766160 682248990 847163576 763728478 385873484 557202555 529076856 120789375 631603305 682381227 184886 275871276 379870506 332633044 164139212 170455008 929536496 712101723 777329603 459785395 502255676 838438851 311998026 181439482 487442426 123969138 176608332 513758457 400765647 410775240 556996222 328772687 167580531 50068439 306832563 827707785 737302023 756974855 612215321 223022444 392393567 986730152 591496661 401224390 999961556 145836412 564785349 838999826 611011820 418492822 883913352 675079112 760301309 15188017 380332811 953768022 44124742 550643694 303345701 668502928 276859173 867897167 169253512 772075402 868156299 478030129 99620020 278694134 968842074 285337388 388840353 719990501 115877572 154540047 430545252 812130801 746189788 463897627 354246327 527825240 130569192 316863953 514800487 67955681 142086988 612322619 344525794 229388695 786294097 466608619 38028513 136348751 881381340 23652320 643398092 330054295 397033811 804162042 143116035 107305068 52744519 642794339 340368250 883976628 868619771 857835953 613661666 679365744 177255814 189847170 694963961 677706743 851257579 178360282 460258928 967053881 598269558 550338714 842177161 945345386 129306225 678213381 222283782 638578720 205201207 616454307 44202486 407891869 602547360 169227784 369327569 345547426 98765760 17630325 249983729 644508852 474993279 547725816 343174389 340305438 424176248 948783923 305852958 154162506 122957457 510431665 184943110 27123006 736250867 280957697 965652457 671481333 426273212 796687643 36300123 131297023 20803119 458648114 955001331 48064520 837428249 14946920 782080326 550176927 660101533 966306730 929980669 336139689 671803746 829374657 233642624 298707420 202976932 185354019 995222191 884401046 10374860 910771648 432190260 562130254 862784952 887248470 936864714 294183074 951511542 518869126 588189053 535507956 204540191 410366718 575488707 985506519 690980208 296134177 417578549 42730431 515020041 620339867 320093167 335306695 53346532 708339477 250030596 199024464 330523219 849271179 261263568 291263870 713137951 909677950 281989231 703897591 525967927 850588010 858247785 695231844 654370852 48871305 422404197 109940181 748133881 219189086 598495683 264243087 339055303 249048942 145635832 950879249 421046238 200468852 910151818 590517744 307742434 807617418 660126985 682892226 234791011 358207748 252146440 776651023 712571838 933242325 364969149 958233774 820748500 461702797 586222043 38387547 772398406 859453579 955171167 521841474 995250430 936744495 756754824 955829733 728014861 151629977 171034921 954672373 105341334 775817188 445490968 939535635 462159905 738078454 246459384 757398216 973334002 459966788 843547251 67235869 624535482 81269899 173965788 678535218 24175299 288848860 329789384 57297431 31528894 444435562 439733079 177269013 475031771 379494274 160275891 37793504 578149224 832466038 7490261 196851037 528817419 604060825 649181220 254908628 571557144 120192447 308508192 664652156 491434639 114966678 612874824 419800201 924120927 804356486 10107221 364281821 906004824 356710468 636286569 829544565 924802664 468499704 207808660 735864817 387316221 516394622 542211980 145514979 572314861 824871016 78228550 9603444 748455127 771485257 354459444 174262049 693190775 896198036 100504706 756964127 754299635 509837330 571653103 626581140 368470061 102424055 783255939 624121062 664342079 99314419 377343316 542829828 334912113 543582794 351284039 721455451 712019818 536599838 732950868 791224843 370596277 402354540 469133918 308623375 54937997 804443237 334307325 794967744 164543822 101338827 780246474 186217984 115038485 246886927 310847024 189875278 109273657 463770335 255748861 426347829 726176478 689208123 967145068 450450450 498503472 661119597 873646110 927131630 127581408 136267955 272980803 890176334 733635085 811072373 823498308 80425872 317350994 846624855 801417362 408074986 143153337 40547377 345668762 474805690 767152142 893027460 896756658 528194658 926066620 972652742 336308369 416369939 464219353 284425916 210460036 103816280 816029903 585427869 410002889 385198589 337712191 97753415 342692414 287357329 559771761 445067669 546880500 951993814 724723661 554858872 969469865 654973652 917496698 209521592 803045490 525708629 209704570 268781288 807587059 682779878 592196277 618214362 840816525 755356505 91845728 196917718 679981831 542007687 121563541 488276105 211536754 175081972 514523730 585382328 299358008 716403302 591395204 602363644 115308855 260868756 348965392 423684120 635133194 585116679 449390808 978373453 967213702 137502432 3156170 562820488 610065548 682555965 970848782 775917757 126932274 554198718 349814124 830504719 672009132 104368082 3955192 685742026 963199490 197749053 835474645 664670935 908850982 241556621 38617196 869519557 179882019 20798030 559315850 215434112 919704001 242139086 179313995 449593425 708767147 99833006 146456477 448574276 488167159 996588733 691734941 920952041 895665121 333813924 531584424 29975017 330838316 156787338 231761940 54708512 498920203 331993163 925595789 916621748 649320630 114593414 512050731 184016550 415861165 194028611 805069872 55617191 640175790 818409697 251729254 836622539 172734277 351632655 318893379 414070492 909996951 55356170 256003500 490494465 468395432 724852396 208047070 515563910 61738910 626580024 896440890 115100033 973195447 5215993 957570824 471456900 738967984 968937698 637655638 697808765 727974045 172970397 966304345 180649996 583385796 822334127 31998209 474242356 971008501 985337555 514794288 558914285 238403274 653594047 292468779 860850742 781043215 603144242 688501661 870118258 539232001 147610374 902326993 605606681 964157198 416402292 6540544 670191721 313912210 452321061 680758332 5154563 152590348 417138270 797675816 39584599 244784299 556296830 801169712 444515915 806197772 999206765 257204708 97691262 373919243 118737450 51711705 759712995 102313594 692206831 488950558 733917979 440549060 837475518 54832731 356468725 999092252 362755492 211683165 126400210 80806413 35162804 640819588 743992206 629424207 919841898 244729513 176603954 464702174 290369445 934586432 740920678 329972885 137481782 105350043 440355348 756486555 868436976 948138719 177808931 790516087 11763918 128197175 892849055 574247577 837527576 22543239 687837266 173267125 911335616 492472419 699262065 750074121 521287376 953310585 713234464 872000357 832389686 455547896 785179443 768010448 177864870 266823006 790562312 669321250 423183209 916543639 897737256 405737958 720221510 781026002 879745152 980225259 107037102 519641404 317570949 753041919 753525544 563896996 947469614 749081017 265788434 548038265 402146182 283726420 967800037 147455053 374709798 504512530 246240614 825472445 844758664 631926504 691280657 449971416 632940053 181248390 502362984 821812103 447074233 179653173 473987611 812421009 470333716 544095880 643074016 144050152 848480718 100376984 660624237 842301573 546086191 694305453 368973583 983540284 537421058 218841484 788533478 966459591 177361372 463956590 746937796 732697553 106482459 692715900 232676875 382335364 729744806 810835721 689969612 224428440 607091617 635652720 494968949 169058368 944360422 871775116 676290386 938500465 683100978 107867903 934631582 323436004 334429110 68748815 225685396 884970920 46302219 212979822 94983191 35360496 445143495 500937729 289601825 860824741 424606131 431589917 575350505 681518752 797822351 982146314 874114842 328828005 901948113 720457859 951321129 658879703 432660388 643580851 337356993 26327946 745525174 671007897 184295069 700520907 515174649 94673930 544735295 452787996 278830320 983026437 374033987 607947425 307685550 960406537 94832208 836879881 423647241 613641765 649906812 182223707 956962331 413161079 822390312 563209548 421718004 444813308 595843041 200542040 608380965 646254912 872295071 548646295 682349899 925287367 119702913 836459827 220379430 320409632 850656704 481765114 697411455 224916641 637649703 397116167 514518648 677155787 795829999 31737751 321139492 873387596 884712131 635400884 841075511 386216717 203711268 752909599 994728840 527497773 10256184 554697267 766698527 191662599 568891576 879411561 132581522 462224114 612022590 587839353 756962916 65952998 148805886 531716227 252199049 900399422 699260922 580185177 659708511 196501366 746798814 915611460 598998177 708077501 915844617 415194802 849798223 402774984 775192902 131493594 950926071 821428002 724558405 46405576 959805628 863639223 807364313 13265616 629397302 718827575 743385010 573745585 229272593 599313615 859921780 401994274 419541315 623139614 722582475 284119670 424180514 754350166 889291725 274727366 604952784 878239847 467092676 689479105 48616454 201526012 193281926 928877186 366948421 64181146 375306694 974320027 877969119 795857216 963321792 951207509 622786393 996891243 952098160 693204041 217834407 701687847 72196199 342619431 48358601 741965205 940729282 206980161 800182414 596274947 752958613 809669091 565046405 889206955 344919014 67491643 313261761 781391856 647374789 300622246 505049905 345981441 468809933 464220059 857559050 493137180 823487247 516769393 619042477 693128272 839812508 736009635 685573848 456053469 766365078 766982489 241630773 451279924 620564634 970672360 907001901 16262132 831871500 996166257 258506125 876381413 204048746 131990850 732547626 791535665 262431150 964264198 954539485 224827678 368292777 448954442 187901568 546686154 521528981 185483589 123407636 233930144 437613137 105401712 310394216 81117803 844972762 122448162 461931363 570496809 566046742 510657353 232704499 937317891 969874811 767103165 755880946 217122633 323335670 717763711 203820571 320023488 192760729 192309748 615080978 674914352 766636260 1789841 81572399 812868166 930327382 399013636 930973902 408481430 396346648 662727475 264818344 312178496 522646670 572914335 468863970 953994124 89951373 854206941 831320127 724321439 170200973 869781612 112187139 78985315 496790278 732325838 6710997 796589074 825446320 375434199 446506236 39223442 512792586 162548488 140804751 369688791 304250762 132369227 583169434 479637142 6338774 476543887 790250011 463745754 326214796 589078825 681415032 731166510 681843571 879900151 44885633 530739476 61131779 137891268 659306110 861242248 430722916 83365522 775679232 342374167 551363146 9179635 916659951 167253466 598770705 954598140 945332271 474631424 129201956 165865906 638842927 668176085 432514423 983204735 123633598 408145196 937824819 454911932 348450321 994695825 144604677 439946106 880892146 369778235 861382528 100545555 534015083 461726689 552843574 322079286 694717431 755886068 878453156 126609459 410596223 418081315 387090081 19018400 652597213 374696274 324531640 556133174 559711825 902329127 880551154 199777582 775139424 613458107 632934237 622524981 521228122 301829494 378425973 465859991 582493386 646926846 920807822 178422319 134461067 932922004 653694136 314617493 922267290 896386748 534009930 413522153 799983769 589317190 29781953 809126225 662776066 235866101 245745775 626653097 863132554 454957922 420695151 738297722 967096550 478354604 919860794 71558033 276713967 542115914 893462411 591057627 200496417 529469479 540889035 278241623 254444681 767653352 442166570 437472300 661480616 621736046 511207841 588551850 561953988 225299610 259961067 951460674 650680535 995141193 542612579 478507271 378858669 849066515 612206119 454097943 357051662 463022306 626299854 941792332 955831880 324995044 705265275 115083470 103170980 20144805 786421071 662492073 310207405 328907497 778258855 230568036 781311731 489652928 982970255 854839184 853205337 13562740 351155830 765785226 168102117 645102290 705828087 582340063 82443118 260292166 687809769 820703324 394526256 722270094 767524385 791982057 367108678 233928621 957805658 62133359 890559061 268054870 170804945 228215379 209659535 613334842 851271521 890582538 836837037 761318633 687562140 160704427 951300742 435738860 36375939 798472202 931307929 160348981 481098809 608680059 843463489 654920907 161964695 816332036 731264136 453552678 778846936 987323917 93424963 569562164 577459783 946140354 543365797 353419761 720789134 477898254 165330380 811019980 990273399 608174570 654231716 479227014 267359411 636844811 485989651 516506716 643061422 840527440 749346263 641253626 973458222 335105178 152087537 983347576 973620561 705591223 421732726 490661687 967497709 131398117 151189058 153514592 738240876 915951401 613900374 81853405 578654840 656654254 291533930 367821704 403532848 208166858 465349261 185114828 89208613 212804962 625641374 104187348 435341654 864260168 363849475 992821056 69622870 701733915 22924303 794889486 146219701 467342727 66034360 852129522 524506410 152317379 471435082 66591274 402564892 727895440 157463814 607595649 392368705 691021517 843669781 502211634 485776788 967018430 400434524 513680561 589253620 555934696 602965640 757097142 558004740 434544006 89962689 237083858 680662593 510185423 164665693 633783908 288167078 169205343 93381859 697336101 868011726 524578197 343764206 486656421 913241976 467618204 650353639 289296328 642960345 784448022 474788708 227354017 143973385 299078368 844607247 265637566 979214460 585342233 739980713 649708156 237268131 121273752 639948333 78216096 354787349 677584185 174640909 943289693 345780858 445448800 496857313 938732212 25311832 712205947 651236884 424631203 233228153 550483742 945789602 522929020 813599539 911574493 246986545 400690052 317091052 114794866 56697710 611668042 588189031 945599478 672800368 980401315 675217130 875647126 144142918 907019865 692581641 53162285 708574010 278399748 323891450 412187360 344228658 497761460 955654018 461731568 51120706 103529122 151487247 435157340 314934420 390871447 505549251 255717663 837763198 987402901 961436233 398149109 509552328 129429496 92747536 657349684 202650059 177657558 214842185 852032396 222432461 932600578 162780151 283045767 689637337 477655918 448141963 774547542 96850223 688510119 168533903 566442160 572955460 888359354 210026008 695515170 500498250 838626567 857573160 891548414 971929905 697459931 25611125 5815810 488419465 24215640 599775853 494460108 18423574 420907123 138039595 963821025 665161347 775196800 447665939 34013538 681442037 539343872 356293208 850183254 265576685 218165174 581859352 833219191 251699585 98016908 455767880 221438242 781595559 354861878 801841139 791676935 581089207 29139224 172209278 526338821 437763962 384753600 838479559 730602873 18828923 823676875 509927005 479213040 981435157 629275854 290473770 265557878 678412664 548581271 462638690 356262929 502792640 181668235 857446871 207362298 511979594 838934935 676528641 879897676 718533179 166047117 495749428 54515393 186168189 384915496 994502723 987614487 990549823 612796670 989786276 884382847 434107089 170793833 199892643 201749895 940612795 868855157 582659289 134833026 943267528 858721973 168772945 676255143 675842631 85267948 193334300 199174493 93629288 871097996 974435664 603625279 972435241 558643570 242571104 625057876 965201987 716627509 909265092 603298427 560275111 792207742 515089446 208294905 30144095 196589281 541675863 715265445 182340998 493579410 75796368 749173096 262154137 210333172 150533305 345112540 350992325 499652202 800254587 467343318 976850762 712529311 591951030 410172603 870255665 892661222 648613089 923117315 985134605 259871478 811655502 849127203 458904965 631566343 168878162 54974084 283501928 406384690 838615339 940704836 978509977 588231136 557723866 417852559 198693993 882993189 554561829 103333779 335667161 824486488 960549520 572120108 623536576 227264209 444597979 44877884 398999983 553999980 881241534 131638332 73301264 455544981 961434499 548735220 691577497 31237572 776401752 330282246 545796514 76899872 868608340 360575551 468810173 631187969 754532727 636922890 716930467 887173190 328508219 732024725 184494201 202972920 282306960 808701135 348511483 488491383 855445359 127841294 171599720 858552110 762001235 894928006 240621793 776292611 586719954 384020795 683293823 945480669 229002051 871632673 479964292 677309409 983389865 334111581 714858686 601762744 963971053 762779561 174116362 368256866 530019138 681143458 161114757 374020233 519214904 115132971 118461737 241509322 249548627 991700263 218035560 924219145 528432958 967256708 57873367 822898427 145897430 639524605 91173893 390046430 362891822 410637485 292605083 721924716 301185489 945843844 930821944 161935814 710542828 829715805 881309051 640382860 212165654 674590669 868583479 402348681 958567068 393119638 831610898 395910263 46133915 279107337 451089532 839521220 388323204 726690194 837065348 361774081 281390184 949379558 161143691 993761471 483225824 853779341 338463176 741990858 48550834 978230720 43967025 840928167 354290212 692090794 678843554 887903816 259599810 173076733 888528343 238534487 504908225 868072866 538229586 380984665 105854119 674087602 859622821 805604309 693024098 279178233 899061157 338267564 275410557 674785268 936221188 149619848 248629356 149788016 377286220 71118044 992071305 11327376 161229119 141546303 445317698 563565988 897164655 549030165 915305167 329699817 868554385 467458273 808018770 59636113 661658607 409014995 158074248 413493227 839524211 810561122 204801545 920050845 181371416 810774842 157636921 520166178 255148412 647233067 945066016 278819272 233953242 229722045 451158346 913606232 576582908 197425465 237184002 505812764 84851530 963203943 767759761 699641731 466817916 101345623 33644648 381873295 896402295 537044676 905270987 547370613 296585934 623798903 52415397 673397535 948115265 786685336 812206097 202756611 390085101 785547997 358363621 982536401 558200151 50238545 235024463 156210538 979384491 763257514 57226230 555310986 535180927 362064604 120182355 187224363 599419160 32758307 522341868 731715548 674601414 306652051 390955874 581221231 899014541 481890175 442074511 641353383 27874607 230540791 942491798 400429546 431663347 22691880 102913045 488047066 519523053 503681465 986358319 485139939 583854116 175240403 524104888 163420969 586772393 848381290 182382448 806285004 742847457 86428858 354061962 607852033 369274384 686515255 535890018 15186963 276213781 276322790 679109094 552556014 166923825 357162470 469061722 696111823 990893563 510143938 375318100 862006322 824281121 117930743 691679354 223514702 3452633 758491139 838827176 42038193 604193816 23636461 962506803 715158340 69595760 458282545 144002025 890607837 47541741 718762700 638360315 920902563 600468597 377850794 786705875 624061407 385378606 984601368 2817453 404174918 373895413 710313656 517038383 714445686 2495361 238246751 704796517 524846774 403118115 19364200 480328315 58122867 299419780 535720082 391681525 539852667 499296953 265109490 86222909 200389851 532564695 216517801 972542995 727062338 693762967 210834512 218484014 626564131 507749885 541498817 924583386 410732431 974396398 442624218 105978576 716378425 282836283 912170364 492534608 360206133 576293289 808159471 510654740 448068120 363172922 758657786 394447132 517719648 264183912 390431971 258488481 878773355 273423955 295999744 659679129 235389245 520035922 480583073 583444039 152126161 725761922 793977805 454215058 629535395 133134036 679593366 97598725 656442441 24849630 671744152 246622610 794552751 590341731 584253733 517866113 892735641 823134004 374369254 228811760 450704893 227032700 812783407 835699133 589638537 98414738 621143018 579645600 897614507 656608235 909537108 3674722 533083849 154561064 94672377 943236684 884203851 648729402 354109903 868249996 711947632 414531466 13488082 826253347 749237800 397496770 869607353 659981096 382719102 759453686 379381893 946671723 393566514 95396019 230735591 161821034 132447620 765286891 162498551 344395222 883168328 841341635 409924580 2890454 999167693 443426884 245914474 596378612 404617049 487663735 410084331 505344707 867285576 255019031 38539989 178496845 531207396 525973984 239583903 888455783 537379995 687115360 425585086 709570545 186536684 761189834 326924462 906745580 360004914 636388821 167878658 670863075 615544842 441463825 351596353 685388056 629287138 129962641 662745965 281446282 286299784 435664814 191821656 43997787 230840522 932933943 596810660 316481047 877111524 971000073 384902412 315703503 675475229 862238448 257105420 622974139 144800328 165803149 640996303 855967234 62295958 876662233 503107384 556589824 440057401 461680549 78412314 454591392 608554022 162641167 596529023 377221860 522558036 98964336 749140364 298555312 627309590 585435410 558103721 333983463 993192806 788840965 230922235 955004161 15736818 738759176 443586937 981207920 381193515 4263036 709213239 571442488 135370459 432278573 294683213 830369567 4797973 983959525 781204362 732786041 801824463 520224450 921663201 681263508 525763904 427049075 368960629 350672045 963987514 738240585 692171650 887420454 880282142 552815742 664045442 889164177 512986064 271427025 184940913 340542841 83142619 537479622 891892327 828161599 187794237 612290981 648978144 149333982 908067911 545938333 552176802 223431144 145671933 318098425 450788925 736506752 790203204 648740806 826206159 654983431 470165003 616146899 469812677 359196540 339657984 190788085 616330421 716512410 22341657 268088239 956187262 378071297 892863571 837565064 105328618 128834748 765112436 566123020 589445058 608611488 197930313 163401473 785916548 792096958 78487088 99422138 151596008 504600679 493609106 446261107 693232206 456163059 402781867 457830701 677785898 125456564 919145534 837849531 91243398 559312252 340944865 221656275 984538998 798741833 463936990 253535559 882830317 177254146 745033239 725074080 297432090 545002224 9967161 113564024 367048663 604144492 311085886 753343133 180738794 638538420 337811868 898453698 382870426 841473751 151597345 878949980 516417709 993897595 404243626 983222909 183324649 459757437 99577848 917471285 640604035 829052499 965428946 823309187 570129811 114225121 120216342 650897900 122078654 59697972 674509996 875402609 820468002 890058305 242854795 598297715 139279689 608785534 513367760 998341447 889278437 231562692 662572996 24712776 193036084 851276815 452213693 94834460 551746172 883326121 416113554 733681751 921272132 702662277 231358419 95736120 480706342 592916194 787229475 496216227 631256757 550720969 248436797 942873399 990091970 567122057 371207689 61422075 6666838 112213414 56597258 925555382 718020987 236528103 751743262 836162382 270925537 756933736 384403559 300583369 408838080 209399184 967895628 387947373 930365031 262542393 448048028 374389264 183922060 353786530 63492074 492267967 965022772 533740915 463936741 20855689 604661798 115578545 88470636 986888305 450882286 911745988 894775528 678703425 961436123 915221719 625054544 383871112 301250310 432477778 58971228 982881980 564005849 646253220 910234716 777971319 866367251 340382853 822249784 541885302 419918975 439233481 600149351 235562565 783031517 2473827 688328466 164596106 591113257 400374995 959109985 753113744 831489483 955059553 963861437 782089727 754446231 922018591 886360935 82732947 204854272 386175829 984582445 232665173 50723005 72877396 40084749 530619497 583075829 555236052 575603824 206306084 937861026 598673737 397349261 812098008 180707584 847580432 798624055 171279221 253225661 623735557 484905407 856182973 159782669 565145063 487086225 80153070 790201903 458941758 686378078 447917015 344764228 25639585 227073008 572369159 157293580 897329058 518610989 772353361 262114108 93221967 623413423 394067376 215642949 972429936 342660486 282017857 543937443 502778096 413197409 535146209 719743864 255334093 563441173 360700692 807523723 377282199 404680455 797979794 426294789 162322250 165390238 391698559 759587574 464946636 168487884 621486399 340442094 575868553 820503146 331372025 852015050 736260901 756585970 870930732 291029299 290326506 691420522 583256995 830179169 125012217 860574652 741223733 275603262 844009248 614302600 973531432 291673381 344568016 557140611 700272983 257419364 755776341 855815379 690345331 671892087 302187714 348910298 292282635 164987419 830172150 866935002 34223767 653654930 279570050 927446814 529850344 408437765 675764745 474526675 466344451 16303470 23005606 911087135 970071340 98146149 640889602 15852912 11645400 455684169 445010214 929089463 619080581 710976677 561250084 793038557 708770408 314274827 86824246 277712552 495402601 470421141 145591039 249110313 441189696 507097767 28085404 14893826 526847518 712786529 92709197 581648294 977415760 827349831 265898930 441707553 706287560 169696705 244728207 776503908 46912420 996918767 784744442 26479053 848026272 211919668 153752483 236487068 157988670 943709990 276022912 622345114 332683939 242470127 696262459 631990720 408800641 861924114 329989133 458331593 311356996 633894885 670543379 974494006 76622424 156689160 364076851 459777525 585766374 156051617 650880729 855419680 806759159 871200372 222095046 84639153 34935593 92347966 272675708 354313912 809563091 550630033 809349489 262851219 254695516 443520866 971397417 403388484 672328755 226419952 673203576 689087379 79346585 198571594 115899051 706566475 853723557 220034419 548678723 609342840 222262407 179394695 842125830 484786614 231903512 64167145 977037591 406857713 961538251 34321342 24538924 517132640 567205143 706293343 329238154 340206957 448304287 197886357 656820758 357314264 30904410 729769871 515897865 283846844 440046784 521407773 139988097 377275955 672564324 830877059 951616849 73707242 659899189 82785297 831496368 600151273 35611508 487644302 232928196 564492826 683121917 290972512 473677853 462835842 407554533 156034342 110717129 284163183 503939863 785760368 454871940 888200083 387257886 617447149 931504744 189522685 183099550 74362994 20799906 299017627 933799985 802468951 372636499 296275370 592658816 154819153 719922748 303257546 296451524 782020531 940986197 107401441 60139780 123807875 357923446 593580422 899671422 958428026 167339772 176086844 587866116 821080750 671826365 356084539 220448187 128142315 459872891 359358458 523031449 562755912 153437821 675361994 546534648 578883251 753917552 506736573 489401822 569382079 666008810 973040540 436963709 958307130 710617016 759762201 607489676 812354104 930632275 627475257 770602805 862310360 262576231 72252294 372125345 826749601 335838214 149016296 809624488 238843970 815054228 648967360 933026617 616474706 918437606 985833103 911568885 535714385 535995750 618336126 882980928 640714915 131267918 348128021 804438099 800371814 975546601 212531616 305271769 145112230 126314734 368257959 271820956 388497728 703052643 482344589 901386359 617140841 955197648 291360254 500874832 501122688 517567210 576962033 30318895 784865745 762795175 533025454 84892315 788291388 645915627 501341425 380862054 917577147 241776974 656317684 480989265 169202804 347660840 884731076 830727770 202664866 636838517 564217754 448839589 664615547 484105764 420179277 275860953 63724287 608938991 330372661 401310711 755481525 173302993 190932071 605108426 241407244 427819287 715673520 856929044 524632147 855147624 240308747 456818370 751989236 807007464 735867834 742595922 993265788 301234766 81793046 570176855 870309622 687264234 89638481 573474388 220048229 659230091 116612552 446721974 885529483 832481306 836128992 480220243 143447054 343864739 284042851 321460005 347107107 173248659 363324457 689430837 432618096 269781907 339875165 221440807 966526801 620429009 67307050 852233944 624243634 805817772 44927406 338730446 878747770 487611218 724071650 100292016 650089151 4342330 912162499 283336751 584318664 91011222 241146132 251567392 258551425 98725847 522408178 805041325 211576413 475477715 838157152 137589844 92970499 298968903 591830166 498534357 961441730 158149175 209727089 344052598 174703187 851641237 921860112 243426643 443274243 117227327 394045396 254138843 255716448 697531842 35863475 482479283 417184181 635168802 464562072 902176574 835267885 932496700 622787282 343346267 580717842 426941119 527365326 938023211 759465148 778569492 498594052 708961138 994039823 616574512 801888520 43297643 687955025 933187432 806349668 715677579 216683816 391684679 997873549 13604572 896929710 879598167 934451060 81400414 527339621 352571575 873473758 379455305 765282128 356656220 890924006 123477749 980857313 396302939 64295692 495368325 823609819 586329024 591096204 433982694 517046081 379629695 278861090 210640274 849556489 158037344 614846736 171091823 566385380 88834107 990630494 15126631 748693038 493267612 782697663 768119065 692384110 580800073 654233787 99376581 676940982 262638057 845050884 186414396 534682383 697539999 327639797 363231299 404377796 585739735 1611667 105447306 390386095 751969500 505880317 330029686 790071552 943546536 365060579 875878487 560106647 842271654 178732624 952775784 951915634 636090341 613478144 418300021 161142396 379429545 951804642 509417734 688029270 587125696 810450950 761569870 178157470 665244971 233265651 509757515 555877846 376556115 103743028 184544703 428403021 693454980 120468745 171466680 325837112 81940199 593133492 834497336 835546508 135552642 821118301 757181215 862010588 745117159 152928500 333281398 548647076 840285473 484823600 956292226 521246769 351232722 250929459 171571708 209225551 926319872 811310767 49410644 335940244 672208867 231294181 846098115 991205991 658075097 867943810 770084904 535430639 820812372 997494652 622616554 714723999 455194063 88778646 742820794 350519957 452886433 148293550 396802009 844688609 286275519 967389080 907773193 631562262 401669815 372253428 524712624 52519142 394940777 349178011 20879298 916148614 813727515 93623981 998780058 580522343 293889842 749450552 307688884 229922922 134657864 939162852 418746962 512388365 748743445 316372036 165582320 892138249 249825014 874888334 374212642 882902149 98333075 369285057 647142560 477972824 412271350 319417206 78940620 535786689 388130098 810483254 416400575 444273227 675279345 617312589 902723447 124429056 587064639 550843903 382113734 542921582 919411507 933783034 670415101 394109590 528491054 219109096 80291898 24900765 835204145 170792387 126929386 639639851 987304224 787200750 193107341 193196780 818978153 140548935 675309742 722742586 226168428 452306387 232560514 571327402 171400478 800016169 810923975 892660506 26127609 33619494 433510521 473664066 305158531 101069181 700129871 219515025 18821300 504131062 324644095 920013455 512064603 416700563 20010095 376708500 652243073 946754255 149206386 722626648 619124080 928868708 809508047 563888263 467189085 425990257 990364794 971101683 312507302 891515224 373256237 679265819 104857770 556283313 21889251 259952865 910530115 435905598 337342216 210590580 422715990 493194981 921998364 455767474 148319423 584066510 403927875 318058279 120380497 5285900 820865141 201733612 937803962 997209434 12701474 224630200 662782898 802641847 881218230 524215404 305461856 10017778 494112375 703847718 174383783 453187675 483246840 47232100 555522163 998587049 849163961 886041726 885110397 925206521 800488542 387224572 751145997 770510180 127529450 854531769 718880748 281890097 204676049 789980143 635165609 933894971 766317574 81851713 751401812 296104607 31629166 865564456 413196018 687303869 328935442 105591054 816178266 701935225 91526746 398498487 363337514 191980247 609969934 346145524 20902839 732654935 46836842 275853010 938628661 714435735 920305248 767588214 907973006 593252847 754146094 79278281 673963233 760902465 912661285 840880528 584330791 683449338 124586579 98803421 527606113 954127821 329551613 635358641 935266173 372916173 981838197 625601213 304196584 634745477 747922593 40356418 499366915 307065438 600603804 974127883 540698442 134087828 503047471 491994399 895032847 500096321 258535567 69714410 308081122 592143312 149800723 83528006 16453774 446245365 604126118 385010185 257136200 204835216 106397919 846743914 946412082 843874626 853426166 129842177 268322677 157623365 190463757 274979591 525099247 179439479 944779631 617938806 702807992 577056702 718148822 503702464 671488961 143841431 475884770 534981552 459861242 345608090 293050550 336880884 492543892 608259400 21268636 208658747 585616431 281774887 464930625 911963150 116139038 368296356 91185418 76074686 734991606 988304848 967908582 453956499 982781265 404818814 113638427 115679046 12313703 52641085 151088588 518610881 446255812 971502033 894552424 571919196 137055930 23269987 884447128 334198759 47126282 769182107 406072307 217251997 719936935 822859627 167883513 861355522 607018143 339218371 563849055 142073692 893215867 245148969 998971402 597080859 487974393 820173741 985045577 711078592 155918798 560836950 903342249 440218955 62098076 65283429 423631959 766476597 697949577 86148215 127732795 890205670 258122502 147663783 614750826 491502555 74070052 740140033 530512518 987939668 340204038 98673472 246447902 330413330 929027456 655342613 109647825 150217274 498001246 645578675 270245836 14733514 842217977 19106956 145711870 670782245 857313472 102398867 647178295 688452420 731288424 205388600 556942987 467949112 301895697 394315910 86329252 422209052 732995278 242821414 182116996 972149027 292251177 884239088 618023491 527442192 212712485 490448948 177121297 477138653 674185347 556402510 976077440 658709237 52856024 951207347 651601600 452449209 517132461 325725838 90294673 590313413 848416126 664490579 357240601 405117131 526072012 20771738 688467412 312772315 684803313 249349885 394198426 180358551 174853646 468273165 215607743 632163037 377768747 187932751 519805498 476088336 514563512 600304334 675016905 515887141 439265968 223490328 65994993 148711590 185604761 759812510 513048420 478525812 759116743 628099256 392620754 216945260 428102511 231100795 373204128 594694597 571786588 407016498 95403513 516691817 777620775 613326341 182031983 369801308 136585776 63441829 974282291 824119067 113802864 651266304 543506305 61221598 931663713 931263528 794874337 290636579 461997353 576502105 516421686 492122630 707318133 372755587 626134347 295100663 796247240 697314317 850215539 340100747 476312181 945990747 199037346 412619621 84354584 366115195 199295662 326454819 489322171 826334887 948792637 888030052 982738321 324388081 648561076 238395378 495759435 223167637 786603284 594758110 632068225 183348027 996361745 531068951 147871045 294190256 118392563 356680265 34313983 396717649 135715543 842052948 263872763 279147553 236233925 136555636 953331884 394669633 488279918 648813725 700743228 293952831 9717493 940659329 753901305 379152999 577344551 330689045 895759904 635421609 656254311 785663587 547989571 658093660 835815948 419575508 42670368 233370206 467884659 576118969 769348920 633937259 206091286 416842465 932110006 367933308 258233445 752108929 281235103 780883535 594449979 718857408 842619951 517451129 655780171 113103573 142310438 173066209 937636053 515092268 687216590 693720789 898121137 866331181 561922335 225980804 554391110 391139407 987026072 516371623 335889902 521811473 141779898 781024790 249970581 87638944 494006740 256131059 899237333 323214605 283635585 416067670 71177457 957199670 522509754 879042724 330010796 992098809 941088257 940094824 111508685 342490742 720053171 560796479 200164235 853275081 676297754 775917144 749133745 339910625 350473653 423078806 545956308 260180583 808815704 71814041 219911473 518186220 668142595 599703301 686284625 875482886 292536622 710407136 649687687 527046290 815606497 39419884 172759074 395777236 92776192 631222687 815694917 623004925 8838954 153290008 384036818 765765475 529239241 169893410 233212491 815922553 981539713 858245045 45444827 113674523 454217789 891900989 325525067 424166992 803261121 648831072 436106969 735214799 669705716 983444920 307330116 459826481 943292103 237425782 389330867 475439930 417684821 131572107 734355 131199885 769352917 502354139 208510902 808657027 117089338 23286847 383481124 136424420 750467328 88856081 236531880 441191274 293873367 252652067 788812260 877895680 340646134 794131974 330992512 610218045 797098293 284366668 708989986 572070443 914670944 627794819 835456049 460932944 421628109 142590716 970216185 599878489 296693516 64957483 292318092 874850934 71176989 26308432 191049729 588814392 476814822 699796091 646110494 52278425 816131655 108950844 748270560 268805712 845967647 966366239 691757989 552916990 837082921 866804698 518022874 813282200 487525731 562110724 290851825 870205324 283932353 547727853 747607600 854740105 613763122 933290117 525472848 708856503 345937229 574483628 804639364 462494732 96351528 470020834 54964722 87564948 33307669 541408899 461705674 402760222 306041164 118256716 317204430 278826524 509261296 732970627 709304230 522059038 684987111 612992819 203191404 750894861 58056572 394870051 662811274 8657591 227626974 861212172 443693526 145336723 114460501 932015932 744592691 36997464 339397046 775207299 429244988 62333793 203451226 120062441 672455055 374843346 79983315 361991922 490398740 348412623 797545265 528350247 127284422 146977038 865083275 143259185 407472693 791311977 728825650 247848765 901868693 795123685 938712392 396859556 221992308 466320882 120079477 80661977 245538148 427836500 528471594 525919947 778350066 382341859 833576049 517112124 431624173 795899214 910644822 358573927 689651003 390181567 896280418 695038447 454156500 905421018 593300686 339675849 21938682 880199726 918364461 569798227 745042012 953678362 865210806 443020003 480975663 685115055 625329109 526702910 132415633 886624298 159478351 588708646 633377877 328986768 965428063 650073265 54104886 705853496 596698940 844955521 83290050 497471860 307977748 734250509 280795389 37070690 720276520 314032919 822449572 303863264 173811150 687187254 947236651 601754784 236988954 503013628 628897956 14723096 643378637 388695343 88646783 303118937 527117967 791572261 215209469 234482327 756590101 97343382 318706496 655975779 25368048 780586120 448791354 119327457 15467171 136770158 192610475 747393827 533386926 712834062 925204499 69591997 509802281 737701949 474670960 920040346 888537409 64869899 574461237 195358084 947774888 722376931 972950842 999678450 130133021 589654820 387127293 393175551 916347857 926967477 565233960 549688779 845018638 448001638 832777400 100638801 409745338 988749478 620801082 679018205 834746248 91521522 453872345 134196001 716796347 462447936 731770035 114097191 847669560 30545173 439613868 287224338 143239662 380406929 720071563 625441585 605257494 413118072 582808868 105375337 358894286 563212233 409803037 643892048 653588130 826088057 835696759 352696396 30813760 866478443 901016634 528442659 416542653 351218194 447280636 263453289 362556874 596728927 595230632 460576015 581099186 949593596 998472768 104223880 609660807 371976594 679319473 127131942 692698151 392978132 131792184 450218596 131238538 288782391 605683015 792402340 929079025 270193021 596028758 212908988 937756280 496665182 194594746 968450328 197923519 938971175 581040139 340047009 273662224 214513911 924326305 696527885 490506413 655397491 366049792 503779035 498915785 833063117 286716206 108801272 55824779 429342935 490770092 290870204 943770809 163784767 64579517 208554667 823050478 148021589 82743646 794951674 815754580 666075970 810967103 790171741 446101296 678279955 152351123 163416733 149912594 697881198 41867735 561024244 19060883 966826680 996464397 570108711 776782063 177248703 912091586 365992346 516717632 521515633 339149315 21887520 565349001 95461448 566297216 26037236 155408999 633238442 191085786 399505511 500443650 875444088 740549997 283771618 735026502 526301964 205867490 649691467 744836425 991250390 694731449 569391426 625544972 806879747 772062486 619536356 690532749 410690986 942911064 954609715 992230827 772657977 12705319 775955126 533490946 610955659 190569690 914616416 428038328 899086391 518499343 234854645 544013745 388704860 254670465 46483398 342433399 847008624 53675282 852486821 532765124 369665639 905311376 809658377 111572516 341236833 492630745 568946043 262670615 205211143 983229785 991842081 792557569 44619016 756436928 288912312 569824010 497380338 694766335 869002404 486098210 123704756 151798431 838514426 397894740 320079278 372714973 688691424 651463098 216727112 996973516 485701745 857057315 500266040 134364554 685753251 868723364 785842285 849567552 285794356 165294443 346318296 847153040 294559704 430131688 926987702 665534735 646825390 230043118 369891432 318799074 78307620 458035555 684369812 453311420 200697099 696623512 630380882 383363061 820099372 990553394 902195327 909117403 445066965 681127948 759493987 908654336 437645178 84143064 207939800 799384071 82266629 76805298 666970523 821370734 567692346 935480446 904235772 580234792 793513380 366771437 287226664 349001168 962494346 790167348 563281330 527330192 211824468 854283544 857169481 67202485 859800461 873790695 107463077 243950480 661382490 981451869 984273202 175179155 647251206 938994153 404859823 161148924 353655750 901849063 99827118 696297560 11493635 996823343 633139864 583576645 831448893 367016566 608114265 198596784 568566780 328762965 979050919 397705564 187740077 260019651 336460 359870455 614412183 548145566 579261884 49836711 858661249 284482698 163672341 918524946 432130247 281336781 381575640 151196804 131022700 280122152 222142784 575452291 642209700 299997585 134405703 146114762 732515233 108700488 656721058 110536537 849763406 775895110 881687741 432588632 118509770 793408663 804192356 772723372 985855596 649334718 21687109 699456638 889787465 713263412 120921921 417538960 419466666 462125432 425171708 87644453 593081167 73616987 701570667 914355243 980588404 624523794 305808106 844301716 63645332 663905676 771828621 977624783 149282285 984173885 975662150 354608800 915417261 280475555 82805656 355527478 713447949 927506919 503247422 235747139 287497968 480582274 594044953 607529770 411484629 356700499 334749006 790347766 699461956 704981963 675373260 14971494 52117348 178737823 170088848 86583016 602758460 378066056 749503494 327360142 488941724 516052647 16909966 756505544 530545626 150500475 519589651 400596831 385361841 255912150 388395688 819258068 611296727 844340140 803895504 628051214 848982502 20555945 423246272 376688646 378737107 674663672 88951110 199748038 989609959 190866173 331702610 497547316 396110445 466987887 578509625 909121638 614359528 484195960 971219970 3557925 868299230 606912545 459702360 382354661 345131709 548466041 547310207 504781396 787655835 235838475 244390931 882585560 685822916 589789597 648142723 816872558 231803906 518667795 298277235 597184645 47607535 728083573 160874934 31979492 839369678 406852457 628805037 109662957 866450742 759182823 365774589 73786145 505690841 624878363 499084765 570927771 166057673 258951558 722138859 538192377 436876375 433160562 556288205 941673761 295128859 878849626 518786220 917823679 856567920 57718542 362483738 600139514 597926201 26953949 779613811 861835495 922527574 299335676 394604806 688705097 549582747 823712126 199050483 683233591 491588000 213225617 845417515 314126124 588423677 222870543 760966848 492823494 125960024 66325339 944679399 625159302 992303554 373581143 129336209 768206331 772920700 610554232 189284491 975323413 638776468 832728285 457763638 644305934 19694116 396567412 870054954 431699925 558283624 35513372 770003838 171865003 222426969 838483339 806070558 310483712 243882106 905856414 609411309 488739878 964596882 955351974 780679642 599112192 874804565 804011158 648109744 477685408 982855239 339892306 877120713 763159145 665626748 799775688 659780726 46196173 681419373 75089834 634383520 482251262 691562912 588214556 594227607 203889749 675562445 274108957 793098923 849168524 888441538 221115192 368777257 65270675 98903694 238101877 782436169 166470405 658008708 744271239 113694914 195623071 604478437 549629928 206258180 301796804 534646093 172483518 617828532 715818213 750680980 846087790 591893445 969514317 404579387 169062480 693362885 98509318 342508866 130376140 843869276 658122844 642262220 181210756 90424252 630885842 149392399 621558929 386808131 161186537 513409636 722404378 175678856 698329495 855168438 488285327 97427212 217441699 39137421 318124663 283657560 793827694 304124456 666446893 220274733 845274935 890909877 88944914 430921115 697678694 973367640 453700573 868104581 321889113 463358013 674748935 640626207 121684223 724185094 854785642 878825933 266448565 601820481 563475491 773150806 552160384 624885364 456321065 342621822 823534910 488302600 858354624 506962800 716443502 298759528 790868524 457585172 8606993 851216225 531332069 695305018 577403605 44261221 890037571 725349640 794137165 115114816 478873697 95852429 825368943 590904385 579929530 688188439 360242641 675386809 820672428 341050596 649131409 485108435 500432926 213191566 704593185 145858790 451109073 318665215 8486769 506308395 289099922 229472893 323719009 838157550 566576205 604643447 714313887 938054584 68776980 595802171 376463451 687096901 781139168 23612427 213071958 372931804 156038502 42296367 769500244 13041788 4365620 245249891 187293550 944908094 257697006 450885582 383064958 699559130 872031024 999053288 391182717 143458484 346151442 945321843 574920579 213946592 459226592 154482625 179883769 788794116 84322316 663942931 667428140 857236588 87310922 247421534 427290767 198405128 586386343 949455480 222086699 810185025 86190480 941339177 63384328 868918704 1343712 96552484 612473440 477174985 239352068 486126863 152140872 816967442 667898972 642227062 263696469 556939244 709939501 743021330 275436322 518611257 134231607 937000984 141392924 258410459 876127130 285736435 272581147 129323258 104476163 926640865 321404826 868755595 824394122 355661860 672351988 877219355 560731782 364824420 504827562 863949767 870726138 605036975 137469689 879916258 402449922 184540801 648446956 151713396 188916215 223949472 302769873 103573962 701194022 301183728 418013158 691417999 475369147 628772379 5969396 247379533 700822633 287615450 245076077 911361901 335672393 999114263 79806163 119620174 321202746 208207206 257973681 58266976 164665088 826405870 938208152 326798399 435051746 589317280 998267907 539361014 761073668 973110670 357288590 984405122 51172080 94442283 828908058 257117010 276989305 64115912 856800358 101467584 778227641 252112736 103528854 897041445 11300722 926202618 29501822 321920287 447104981 438438048 230157241 789131432 242240918 562271261 773839532 458193396 968127759 942578744 145747531 183913847 729216544 971136321 662567238 866642983 214828731 299044429 732784406 310570597 758739802 418305160 991297943 184355684 11627934 959852837 190399075 103562704 88678489 387783113 222981624 484624614 194116696 38414500 674917396 696036996 354869854 564447327 908957759 657246769 37790935 52139295 736998467 756482507 152269521 561260998 737328463 979948277 584427431 647583698 610870567 791188265 86606963 32702824 439991022 675445130 731928099 414333880 305532017 914633141 171214128 597775209 586491318 771971250 837736317 741353918 364429872 690843706 291498713 214567651 936815595 816734292 238704485 946611501 211924129 508709077 469766981 816951367 728741220 346718532 925102714 690554833 648199475 100339582 723146421 614971146 345893714 988136017 53311805 759111568 906125274 418000786 220036637 205295694 317747104 492019147 879832653 714418290 698966978 470546245 55155594 254766939 32642536 553891772 170833749 302173610 321551003 791044712 531690119 718618031 390416116 822524603 590489989 365750605 839142943 26566005 934686281 197249098 867443691 715905210 826675697 753069832 123314236 33631982 126661291 69721203 329277538 103149473 777724554 169615485 833322101 372967713 794831305 201592241 502772252 948007053 271506139 676043097 727629014 101962995 417756699 978633400 800738989 728561001 842444527 55332137 834201403 441800045 901223535 691171735 963878638 544462029 847117416 195068393 782077339 285108158 437771998 748920515 159363993 207525598 850316342 104768544 958292668 41447722 236474464 870515803 269334744 805383364 770492989 719033883 484226282 144179744 626729722 861377573 245399069 43691450 101417785 46468890 895230670 842062363 312004393 1329371 281755223 999296466 744301832 44412613 601417358 543003840 289316698 834020633 687643222 884680134 714311215 888167452 403607039 710516553 404038356 724692285 236262284 629529835 306185139 777609274 812800451 933640236 14920760 452694338 941434338 843435128 296565203 179844115 957721457 869224236 411498916 532404756 596199488 420334329 874190340 922231743 894317107 106431222 261455642 760596601 469683554 823867061 16176672 350377026 450830875 968891239 73193042 3233097 482075043 839959634 826508765 495268105 451080558 101790287 668046441 116965720 470522954 335732266 29182848 275815910 478082021 475835034 627835177 38113189 650046953 873385632 286251753 350160982 836459979 986538252 15524380 299238962 617576043 586727075 409798380 92278865 26845249 622268309 727797549 120886772 789717950 5804583 951372185 432913758 765176138 50581164 309359672 603422915 444904587 228759011 398562504 991941885 111164206 161353874 804968086 262250369 959939973 407767303 239164018 822873756 411800538 985842151 783330577 146905773 359874098 887190737 549325021 168070026 58617718 620000551 489890094 872374697 429998646 205813678 172519832 760679190 713374465 371264906 820105246 725248055 427273610 856421579 388809801 650602931 415023928 596462986 592388325 244902625 790330975 146229375 433004243 344481574 4422408 87170094 190840896 344414521 316758248 765739675 790313982 241021332 377348916 684645791 180481990 158754198 277831715 297686317 360206051 118331752 913199785 575677757 54694002 737265898 433804661 220717141 357982126 389099411 510849292 440113193 488910304 774068281 366050942 290920843 883073123 438829636 284306286 251804026 218420718 425991394 41274450 666443465 147275251 871359201 256380628 555876342 602872120 405846464 296372685 27338402 815299228 820464680 76628166 696531826 285322779 188948491 122927461 763947477 994043544 431487437 742989573 99115115 921803972 197764953 952336299 527598656 386780273 629984153 529606788 749238784 21849841 178897379 456004939 766986430 577271053 781372448 51667674 491859219 461804014 409948277 514643305 431307958 667652252 122901576 586224849 664237825 455712599 529044881 852804618 818328289 790220590 526994495 367340197 172497801 504127051 342712320 225018266 734511 442095973 393506543 763637527 676889597 598125111 114408614 91634966 214077980 974318339 924312302 312059656 215587222 659354695 913254455 249922310 852081965 955610716 979625445 410761259 335432328 367183444 478314298 553290333 963414700 66885090 744354592 618737208 851362734 853112686 464102439 406383417 922303729 642601856 393904010 560371634 430535373 414239296 720962938 136894402 620708853 415778502 303379684 185036328 608409976 370935007 895025078 904251642 434319730 73386897 796701312 248901199 46844634 947227520 731331665 613902550 142693490 148772624 908669428 797265460 616480548 979575867 672144676 464163526 38626979 241461846 189537711 73009575 620144612 536945392 469588939 921876806 585859043 620016425 36933162 21642478 189369676 603586830 10241472 933074590 21975247 665251281 803220720 856981778 905105946 158073430 174728294 147625458 132158259 728795134 848687410 810045155 728772156 633550178 325779056 672938608 535850565 199334503 641714380 368753707 290576197 256993648 504162231 488302676 320060266 909549371 479600541 535014835 870088508 789585815 941680897 752556617 893774950 749660039 758358418 221647484 359913342 561901750 714283820 856319629 794858391 504585153 971900719 491207338 394336410 909596897 894635673 512083950 777114659 537625918 863939930 847737250 154002058 137274408 391802320 242307377 52696263 375001792 236083394 233172003 560931437 427746142 475576599 616357363 562423924 667370927 329817274 175976398 800264494 850110094 333535068 346539541 21468232 369404994 414144015 883269416 304749264 426542442 336984141 470841749 258443909 196976661 610753407 971159743 493306223 460485028 873041311 845885438 686209406 950509493 850599925 501739689 648222368 850582179 978589116 66237084 315204712 841034180 25238684 946605441 46774772 86347087 771008397 258447685 115410412 25293301 186361800 412441169 815420087 773160105 957478311 477456549 165075740 128678201 572109862 887017045 423547165 300872713 34906801 104412204 943966263 402170984 341263244 931848703 420797846 266936166 362601412 464234527 862963736 65641103 289481336 19546386 730439098 604865621 767347556 813488692 304124358 881019036 31267843 347601304 851863848 681226914 191523010 160904822 13574961 781783209 118986812 751477904 994648955 189905059 394667850 706236535 896597688 553614427 16444691 582795274 624210005 761561043 264831818 348491482 876426084 615917491 801083090 737057193 721505309 947219861 54760030 397153805 535153915 929491475 875740359 943394171 835829432 764468823 564712419 877992555 783721394 699040841 707638335 672844790 44852574 373641533 715822789 734956698 881272684 930865894 501670232 25828619 189630679 360685640 696453498 548624099 298765875 284029716 451871900 146352656 305362040 78899936 662701543 387151807 58631492 649271628 806281448 926287861 25941827 447666434 346508995 868124655 580290097 362162338 350819500 24139843 855881974 855620509 389713708 816937529 493747489 29077668 480540318 633512501 810726256 701415876 993801751 226614418 928859258 952845747 781128060 753117932 192168009 99996374 478764838 436319738 874509254 622528957 182432593 771032288 580212149 816084328 834343303 639193601 84050187 997756096 628628752 920407424 341257582 534042641 745563496 505960587 836789097 954567819 56089953 261014413 942461568 934820647 45738993 818610644 848407188 380723257 777379138 775665471 77507529 425417298 570216110 801854698 609877226 747073853 850995586 374930070 172369781 70868243 590727505 393493881 364653833 729710682 430351131 295904095 49548544 304012003 935903758 673634066 402078870 233139754 606808252 39666940 173440843 405182082 508983906 260686531 64120930 569880693 199349336 204909877 659046219 687799982 684156480 893230950 490414392 673558895 524054138 842869323 506447394 633323677 411829300 755379897 471199558 649445809 247739453 657339355 432482347 890211277 767929614 673292331 405885977 116288840 579078160 314778897 631416669 335494948 374792789 696019886 164135889 945406036 33947454 993050894 719504303 890268602 899401428 94223835 568012310 543363916 982535969 636158280 975047802 708174444 645758466 670362357 460609007 663111473 473414270 832073755 365723117 879732806 170718572 371736914 638324061 955618635 756082529 574797334 820286499 290839428 623315971 499688065 822095831 252395988 445695754 484142756 155520873 756655106 517969650 31765994 978233757 582681780 951524205 623931401 521627161 691501195 886661593 20723488 923905112 289327057 899634971 36472396 113674365 569340077 472143095 499426642 19862923 992277791 895270093 197161334 46285775 679415154 466475486 898165174 489789330 890979076 952037761 690358460 954346026 992525788 519320054 102935954 173279454 283350496 257828810 778009692 297402971 500813339 229093913 233200595 49427196 180561262 64146804 730457714 877151703 18309854 180068937 532167641 202603964 963106926 915795576 317746214 974472036 190042183 123925467 452757988 544914706 507661397 126304041 86574144 263531771 191104335 205167999 895864581 334537282 807494870 616588766 48773270 502536276 943940553 50028423 602687435 871112342 662620743 355189473 990363966 143395564 742855425 317828205 472025829 539711172 420710814 952200955 349945593 208367399 286531921 563398923 211281756 775930595 290675227 917969942 225125584 263931324 696272120 931174946 264452978 501993774 580547681 542317530 988814776 170851595 411779186 841061966 437153073 658240320 956757799 620598107 862803391 553772592 425604557 747410673 200767645 371721586 304872552 178708786 254571706 834641725 824495318 292129431 275471543 339904681 906061049 48938629 782895473 485582227 728570267 227564761 655607263 935492421 126605724 690595597 262148086 413230249 739687397 643568751 288129482 243674242 897362503 270076016 442715908 959111585 200309982 693269845 26142494 24162729 149846062 598930046 989393553 407050445 708187379 394564112 775569674 939800427 531335402 959466053 561990084 823139407 412315844 451298747 635522780 111583759 717454675 751299090 686380503 257919732 580009912 193890867 221100970 336638484 397081923 342777 19903248 671885893 524994060 514835797 471299255 376667845 343964879 965242307 854417060 437743208 32422587 434323958 787915130 655347130 834311530 187315148 633500387 561488887 612160691 955231940 475189709 208854791 577422172 654666727 677610885 637689057 801658084 399544390 592531428 70093115 81109429 593523733 325233705 697060110 132966272 780697521 389259765 547086160 558330981 221573489 31912831 433195995 95358516 899607774 72650145 57052871 170459785 629482624 441692350 103592404 242853763 177783717 613801486 880258859 584043845 488569342 169590783 955883591 921154419 926731236 464562090 871959946 22027632 113369784 548352947 589023721 271763075 153395593 506701639 618319595 335932008 412535556 623463673 589444282 364637290 969092821 566947829 374859690 293173700 497707759 463251055 523487666 711358834 598463607 815209833 990106551 212482567 700019782 346222630 519362463 194182102 761452061 477208233 444722653 134503977 431204506 784732635 332632873 35220632 986292966 401690120 226771688 910773601 896759971 624540167 687119195 77331822 973929012 408829872 217764283 553279368 347323747 88246439 843678424 359542341 718353314 922155236 390913724 53617710 604726990 98347151 155936771 766608538 999827663 739458544 701177435 257517390 418229572 976158379 515076935 500198444 273515125 942910072 393492231 365140651 807713582 385788057 101236476 292038025 459328960 685493557 379487373 798234239 315216442 547501074 568538570 141538019 879730505 834722622 226321623 616788527 406310165 987514969 541801011 708045715 919120801 490682572 395952395 106357845 991586844 537948205 361059055 532824800 538591868 203393275 687730290 235773877 969866041 293293210 349954706 934256918 532475407 818588030 215650615 812588803 460383442 26729453 158811683 607493330 853466061 327701719 902992693 558471242 602318973 969073122 775085248 619729492 473465128 381478589 215857289 897329004 560940827 632430973 252185216 288765105 894223751 278204462 545816152 779691516 904170039 587231764 627989199 615318992 128646846 215346416 467009722 632872135 789757247 749134199 677474902 204060000 751448244 6361671 649050474 566816171 255003627 642339466 966248494 235278833 821687292 485535589 516822651 980357863 212177686 819456826 604438597 965561587 286183609 292688537 513792079 356771743 104935987 128401341 102163346 707198291 856546190 445054518 771695788 949311430 753890575 29140593 688374540 836861134 476612136 111051296 907061062 870829003 414882612 165849927 698734083 94469134 881797783 137380219 916981109 949876949 517104536 61782314 95122774 935760612 231070349 105860912 43846561 629731181 213085547 185197946 633361115 352931007 439214477 16825646 279952116 657765167 120732192 532227199 36525666 106905493 589957855 321720688 935446862 684985461 923523366 186561368 284856237 146630671 517241938 960277597 469628259 141256309 941673581 359980474 590239144 500238037 430759880 89422368 925971822 795339975 834402546 392667152 153635480 880848116 307781193 868492848 360707055 463883405 45170765 809456914 916331363 960763338 131815933 129942900 359238803 893564088 993753970 532263014 587216423 645094651 175930170 721354419 885420403 725113124 67464412 481227043 89945213 465029100 275926929 622770009 493735669 106088734 515613474 134831960 856423005 660617413 293112609 628700721 390814482 85209131 880538943 724094801 821597547 395866102 596499187 235896212 80395063 623338643 253799703 659854326 985458138 609916785 638044435 916323067 624863738 712638796 502505410 847815057 195308594 849243365 835292155 731532376 116455196 707875254 34419391 64395167 625620051 788851689 950880115 564071700 18334870 336276763 549845403 142015834 976925884 150872414 460340555 956012741 873100742 614360664 602791588 909130450 511780543 69569938 866040224 43476756 558652801 786685511 389680328 947823186 150168031 399426528 160050512 356855651 169356603 242643898 243865838 98297450 784478435 487633380 946208072 720806733 468856416 374740707 448129107 699900238 868260282 371140456 816959925 584449144 799980198 796737208 111535939 808345250 394480200 942683127 569691740 18524826 598127933 72206726 62193861 884785185 189983392 713529627 110827544 412032418 752318792 418315699 172976120 214696801 486134820 536565349 480552573 642985919 871467469 199622038 301996538 999972927 457284258 746328142 693756698 378377830 495021409 367354880 629659049 966328395 64158526 863779685 646330582 684528206 347015938 274763382 324245758 861335283 814020850 249100744 126172095 700242735 313830659 733176500 816488277 27958242 424692153 427040891 134313672 299058303 494470095 611355114 73384033 103348471 176414499 588777414 352853307 497790929 828158746 220360851 730142614 702035933 682616281 881579969 220806334 284781172 506835497 403950680 721084095 474099602 957761539 152276686 913743074 373190094 712677656 765340988 678267983 464842360 51009046 606731717 442287234 530351210 226086988 74528776 347214990 192823974 645601108 803605878 399710452 732310100 212395663 320165960 415886237 866295542 935553911 407018095 338966884 991757463 658518651 122396612 855846754 573262056 707830867 669255852 938327375 607872655 248953793 846290409 562352792 374971120 606287621 872973744 776098713 795350327 850859966 490238966 895615038 609195333 761612260 477293527 507425738 565049381 172694630 155949502 344646997 386208666 340304499 692738546 181258566 453052591 656453836 455424179 343745549 770132374 659667585 707488582 595292089 158578443 744498937 588402823 756186050 336576810 322681708 835399561 99241685 375783364 679358347 95583722 113392416 884520467 248082712 266319042 575872622 345374825 427126500 704898689 382060560 207747460 678635160 67102316 100122066 788201128 193090244 60128490 694443593 930262650 889901303 943749449 143049665 53268623 892287604 72730593 167539203 714542156 198523300 276977057 171909675 164856688 786860241 488220202 179607795 690368740 496440360 51242140 533004250 622130120 560398562 381032187 710659616 676150668 791793183 644649070 255037066 947285361 484761684 864438637 202603736 127150970 292918329 220747690 136008286 16302069 43900181 15701745 794900929 721574527 248918131 884559758 592041846 900327266 52965164 951379685 314836586 420215030 653522923 294903006 860896188 936941732 933633214 544572277 313531780 605051248 883001558 369722995 295367351 54878931 794473874 859772832 824212402 316796173 714081822 56054526 383141906 662386492 906391011 662002526 409829873 622401910 586678571 176163057 268199747 503554334 500092653 614993918 10298330 965621277 33341945 994442303 694184584 388822019 682512044 867210250 457488976 686127313 567022434 691207414 241368329 75357172 830005492 361836429 935320950 980979198 151404335 148128135 717880827 874522439 750338505 226096470 121557950 246952075 444837200 686947046 532894164 177516193 536942784 520652590 612004076 698639349 248791551 68445461 35210333 328969722 285433584 246786552 759749979 120047024 912575769 625227431 636263898 989021160 51980103 334221923 641320712 156184723 637863363 802458800 695970601 83680925 59965045 150446539 282807696 159909256 918011164 792635825 19214804 504526391 314951600 365907851 840193443 319706043 591878179 815302907 163661405 425665055 47598054 520375871 329354459 636979095 15827501 792322148 192393130 146398811 335104169 435547719 134647629 168347472 20750161 708627337 181477812 477291445 359853813 502700709 403600512 29338706 258005624 456733802 552668746 667066079 793114665 567147290 99315526 480103638 399482479 30977069 42315315 301095851 552813014 247750779 678926964 534042945 620947864 834067024 276080353 614173142 165581536 200013249 134992053 130776694 93011373 806110640 134817268 767807398 839177588 858636137 275946612 410183803 354089982 468559356 775216149 536600963 260019999 549039423 650398875 841527882 66277620 276210923 498940044 885702354 688267735 489499144 527110282 57034186 580079247 559057090 971883958 43185880 631803546 384413122 889735320 728287641 7293396 292731439 966145770 962220277 413389850 219246790 581617917 352257267 64043550 785390103 389351558 581330542 171935194 859626067 828646048 626015440 921361682 79743713 719960810 755197613 677543382 66623694 69979316 684315236 492656669 408462785 750007678 548133327 352318910 279244948 585291466 902062089 619963889 968884492 436463951 92494607 692125619 350183376 725395459 627060256 542750333 962677018 402479717 252972871 335837403 867753933 976224140 599901624 570115830 251804987 629258395 478386035 378254050 869547680 328374618 516827243 124111490 953734392 522284281 66638908 575955519 948528474 285979897 734371217 306137642 723526795 456827113 182781939 466618113 68571147 448479497 126665328 954739546 255974561 57061558 313656497 655706459 917854665 916233728 422906876 366863557 11840142 728279231 783664865 924132151 457776120 324107304 219466927 785384058 713473732 761316943 939103466 386814715 730696542 131995871 391894549 18697462 5321614 828063722 339103139 758528703 654698047 560150246 310652858 943742550 705756563 805704279 866961946 504830585 319768905 936892985 354964410 516100996 415425994 704326250 377579473 685794442 73086088 404214599 296179530 569554677 504795448 119430204 854195152 219803700 122700266 253540952 289361981 621378660 219922028 455585577 647206641 700631906 37176177 900900144 601966959 521020945 325354566 918742228 551958006 619249376 625359654 591380314 650917412 620952794 241383457 691738990 920484973 759907238 713257214 639196956 519750798 776365648 506338713 907728357 428494378 316859870 174756514 850305073 296844498 365760970 655684678 512403128 822031595 181062392 416413198 666014889 22727199 187240308 770238245 344672738 566942399 245570590 453138175 585080339 43187726 496370664 930997047 526032019 162556315 166867840 884515844 906658925 807851695 846131208 911652074 309532368 517061387 10170230 912729318 774709137 287342496 690991511 346481762 645056667 528893139 202008639 966996087 831330089 74360678 618343103 851499646 248448772 578321533 889225731 378861806 649427547 513795114 432426955 858860530 898483906 873120882 180204122 377521948 914303136 57228632 379767426 452961958 749717340 118012835 705031696 49364298 893021506 981088551 516577096 996353030 497284826 552374401 52122284 805694480 909586771 656822064 826008899 705310086 350244789 445803137 549558037 158728032 563191905 322117571 703718691 427708223 810148272 762843038 680746853 115550975 249738605 333775051 442757938 620579592 929246021 10218154 47405742 303172223 858378923 668525694 544932121 43749656 238857459 755428849 248290917 570358060 599446907 293597785 159246280 972859452 473948332 868422362 5734640 138996463 108482892 868345069 46906572 151314803 202803069 200814045 384021695 835033090 479975694 57801116 273438535 281582139 447943804 877701924 139534369 863288235 658185365 590112344 14010085 603858023 394817169 25746553 754007211 130078614 149424373 604506001 113208421 550899344 578277947 511718260 307402853 197656232 897523597 332779194 742123920 926180736 8205238 692559600 596084778 888951245 93962245 617558680 797256380 108620191 517608833 376149089 131340544 395999358 981093898 629705071 826191028 260319513 606834517 729942124 225103508 974815573 607626666 857615947 455239370 330615868 547101280 65844018 221397317 846490564 654827413 303369563 407211413 34251792 404921747 794228197 550482982 282271833 288040257 688916937 209907159 77890886 993915571 128006568 849191035 3344229 839265832 992383025 758979117 986848041 479011494 270483449 634115194 585411534 925002503 592653739 935455962 309577001 610725138 61899181 28424229 809833858 798954516 769092964 858522656 470539404 590334885 786261166 388971078 869953721 161175679 722915035 265560363 439257020 37021318 438067281 476665441 497563427 316941733 991796159 535687948 100403850 664505584 74162065 986645307 560917090 29455635 193850133 931515929 626750193 856437125 924588871 472187783 821350041 219298610 754880205 276293425 400898082 237613030 412866791 281647529 64701386 314730969 650207015 515403738 495924233 973567251 651394259 757122046 834373168 780542677 921063634 970291587 71434048 578012175 794314401 362148884 848134266 256280190 514422756 103677857 668375705 983191793 227661831 347837209 157404627 300386698 187697656 82584003 633289935 876341197 926621246 553556414 105671746 24212229 832497543 892849820 662549977 625464916 703261293 90677121 217431132 800040021 463522617 133283139 167346947 452374275 254416835 72197995 203341518 92003462 241581088 715933043 383183633 564924887 278096790 855049981 325409304 913996233 611532854 827086406 607838250 661913394 18629278 850134748 106008525 533896810 473022856 820834352 160329128 911443242 47248509 333152247 195188480 727133510 835875449 311851754 588173046 704106296 142074121 784170438 358874267 649788923 178228937 442816963 776928836 10341984 98492205 886615738 927260020 834016869 812361907 441310410 658034738 151527956 199547631 171212668 848223836 295392388 917771496 409456299 476614425 402285330 440001851 990281086 910583215 627758023 857821554 130453537 190668398 792073040 479080390 555356984 356893985 746453296 656539637 819349651 828925215 169585444 453730642 355098708 827980042 683506762 444246430 318998602 701661701 774941542 937127079 720112950 465090016 347667633 383556562 218011156 635194008 181378720 32027730 49186382 355091089 917712121 439980142 343748855 590329685 827099160 958674299 528249508 98352321 374083 136716800 340070248 711383838 853229381 367845382 848667445 987518955 447086049 642677653 43271643 288620552 722105841 351207626 177567849 948266779 750503513 552673266 457942237 582312011 808669870 529183666 455612795 621824550 431060603 683708673 702854640 721174732 536118177 230532696 278519990 891933510 55975501 930754123 563359513 264133934 534073239 140890312 877643144 935527903 880372960 631149210 905539529 598325310 651527007 248627207 161741629 387468114 187389064 568564585 755453691 25437698 592152124 799833125 818153727 668732857 293640289 612857660 549441120 960216602 234232108 281080734 581063527 418843993 582275746 743155239 615543951 888554345 1951769 947922273 947090234 566329347 612185894 599890958 720504541 242157242 506793628 662456833 683414354 987555964 351521530 90386724 303812707 94806665 661277123 328896513 128427143 271707489 354910510 630668429 754841716 579867346 757172458 938378358 721029841 542229826 580462611 534077536 599823301 947554705 499511567 562891505 471719708 404214632 707071170 542171396 505459686 493975442 310102792 363009139 223517247 701004837 97348825 480078564 226897856 202875678 509174148 247089289 347478903 464309265 935711938 257935608 230152536 103881257 938245121 164095056 663261645 589430500 155049273 712333770 718797130 429943382 879996833 679620898 401037555 560560078 864022543 958634911 94119429 980365529 756584397 809717312 117334275 19642175 504392747 744486735 851401100 246778362 941958102 146765639 823647511 559170557 514034273 687867347 143573116 568228607 992215695 848771071 304881504 840395272 619008762 554541998 919425927 154458306 528219844 793676730 618546575 535253180 27751404 917107107 145525837 153431541 548114454 314625886 690054739 440150343 294987419 980283385 724510158 859479059 762629553 416180454 897798797 512009956 563058191 891198691 269377255 242354578 888727680 847894681 152572187 639772854 290291287 988978238 250371109 77525730 797646620 899180599 221979880 211344152 988977585 434069462 147237005 88026810 389826102 671651257 457505042 651713131 463016637 626877568 966529829 426450178 527164238 392635253 749118876 122165857 372896623 139401586 143675158 169202927 673700632 780001544 231164630 97936804 362218509 523284325 780313334 891416077 469642063 456896179 819442438 37942228 7428872 762989141 834344 188656714 266895708 882440234 577282031 797276529 367313310 923025582 34295620 81393556 431382220 110323706 773146084 225723195 537890336 276309940 492150811 945697919 87386328 647507231 624718296 297389102 825547247 891968434 10823669 732460317 192814171 514466486 383059365 983691726 985407031 200254370 663727115 685199734 205577270 636355697 433713697 992799927 618301174 508344787 834523190 693301204 18358571 716909298 921870341 797401809 573341053 649993250 999036108 64968699 652411747 566007554 221681917 883774252 813364358 958290832 134140269 15254627 365860864 497374356 98190464 455548915 547215834 713191202 267583448 76209123 879151566 491694090 613455731 916122417 850421667 107561833 462478390 17752586 16249512 43110964 895842985 738538970 666787949 975591905 971582474 182649594 767847453 219217911 965403501 464053476 295367548 672721678 729313361 48406931 338463630 891480123 956395713 113153414 31495918 136586706 390115247 544765106 947896307 215688132 983327162 223719311 261929817 459316271 244901752 19988081 685406067 106620687 121817879 638107502 439858230 693781815 790379479 228646549 231499366 389023446 136537008 501549839 446810666 668462918 578580904 817119950 683591743 690573210 128999353 519667589 113894519 209462198 191180797 182468871 270896695 740277968 723698364 107184060 580114199 833764028 755731277 855916030 913129442 431427948 154888033 326646970 933648938 747536645 363795413 516716704 758767729 496247069 505112181 949342261 937375553 175434179 617377535 73035094 319095318 624378671 21899841 305523997 689454055 138339826 517832018 782314710 194903553 570647351 963680306 805100493 654901489 690841392 439543524 994114457 999233436 338196132 125528665 830128794 26743644 180541024 411898824 790424231 250060608 149919041 853151873 493901967 258007742 267139166 81996514 717128452 758779181 68702435 586411813 523115882 735117335 121057969 467739365 883984381 95155207 608805110 369111990 933406698 876530425 955006469 699583469 182060192 694233069 873488135 310658544 573218389 708363353 371434002 986837990 342544904 633248477 552394112 744807785 186484249 541608383 942279345 488438507 862937600 653957978 737539714 765409849 137735880 867426673 465750852 419583976 249710609 729272712 89038278 805437438 909190322 710207961 850704904 905277629 164117312 983907878 222580486 309105081 813753038 419401154 562608377 119499107 437941589 651691573 538652871 305786888 346964227 534349318 17589424 45642524 604477103 718389094 635929106 287819337 875541203 335541694 783373510 266236814 88815605 423158249 201456391 839235725 891825276 940338778 264219121 27466367 44899070 934060326 124541648 673376961 948175096 191011799 688941974 407515286 325117223 584241321 735611171 616817938 259457304 740688163 745859614 175268904 913482219 939519656 891590130 475214408 142975569 205958911 200967104 421551387 716141977 245572060 874560475 41778350 329699139 789703056 921282083 557707217 857244505 183878686 916297252 371562566 588436416 577688050 914221839 487761280 153053615 991304454 997761826 89139312 318773586 608912897 920179769 789251837 18522240 610125785 329497609 465621920 552439730 253196367 780915906 338828047 160078766 872809834 210750699 21383252 575208955 992101250 239854010 772678983 791574744 761952620 763103971 571021434 805538645 404116969 242714364 177724054 354996820 733196521 432059140 205901155 78053891 717336116 318146392 929819717 90959232 192770543 473454663 571692719 775891956 944414950 584638392 904033832 435432636 229488195 924795066 474510375 69568367 822188946 354631892 315211970 626190017 646405087 335680664 409117518 825051161 144406955 178782668 373070705 417987210 254658585 119050587 520803006 218412324 876346050 787665531 144388678 715632951 453537223 709665985 448383403 926630903 639841730 235785528 283457539 699451353 893754277 871773396 545427491 210028948 266123244 707127175 711910737 23765943 737238996 990852477 377625033 659418895 575383875 393735040 228368294 168703337 680396940 747194334 410307799 249360409 158268310 527057240 8425534 332129076 968417191 528889652 291796044 413025275 559908630 352541731 785424714 715577950 694065257 264309570 617555822 27544269 726637639 555528528 723942570 435500212 247877558 83561091 125380380 996523337 751977647 451511588 88569873 721960033 62238863 416528743 767735134 466223238 747511703 612025331 410918277 646516347 348204467 780787032 412830278 458878671 687491800 67342587 814832836 171205994 644034324 87736235 512826789 323521512 178946711 60806894 52025584 114710268 334358394 524210460 623942287 791278008 437059731 883636750 19189019 654667889 485949970 931948249 646622915 408219499 295193359 542168680 32478651 58398712 945434169 281339822 58740699 556563685 703090306 822583828 174687024 97279200 441008239 873843746 245629125 76137574 71347140 490528130 886363717 665454461 780533713 3360583 66814217 648845951 213528593 132365875 797280616 908167568 297059348 506221396 500347256 833300881 348290096 772357910 468893668 912951133 805195014 349691586 552019110 560594447 14005035 569516296 92881387 543158963 7924081 910331879 162520986 891422980 390231669 801856831 597656760 827842777 415655862 119448196 665967208 750144433 973015539 384627525 162831000 545681938 844501030 704126031 526167558 117967229 295156785 215658438 152262453 234794941 935232882 75070862 472290009 618818087 890863888 279596101 531433424 285392753 956576273 830540208 391322742 849987102 985950754 525371398 791323022 893606568 685063696 538375512 611826929 154491760 762386883 273869228 359188485 524288237 938308145 38904835 976797379 125896388 798501933 951338783 493715925 899847640 553391111 73946393 303760032 676789238 246746905 316893416 663641869 349637667 805784813 749496959 104474171 408928112 539697533 713537955 615401690 182366564 754968190 128474666 304198188 656119496 304860511 351188769 423228184 269425216 915148566 406764492 871545575 105821125 399678292 211630623 666799699 782416273 155490608 936153290 117444517 360781497 19998987 681114532 828219751 634176824 316390149 924342293 693329119 473929683 209750138 860437168 746672138 174724366 707278782 55718197 835998346 938743023 19630537 166744519 997305194 303783349 545106848 708337107 638877392 935380423 398808325 628946878 649064506 160973335 957173916 323596603 316013105 952844365 839470883 487098632 633198888 672769441 669402416 595845696 859571100 172655792 825472015 572510904 670860995 785616414 690433815 133197611 194437759 139029409 955723215 504555215 471521495 17158189 770134296 990202550 579511562 241482913 866806617 378752853 210501459 360942247 602793529 176337049 113109649 318722079 30463918 692217211 686115670 444228810 309046222 771367232 538559243 990286866 828627415 398494855 660649098 11283173 903798345 856036083 529474903 842775435 447466272 849461990 402570241 164388509 670030190 96421278 596260567 344790091 457743050 873341183 289716331 521540371 506172407 221884458 325140206 422304505 971542027 186172193 196304377 98508883 230351151 714428117 848168281 596754453 880245554 566313450 806211505 849822330 540601111 154487474 999267453 225270170 563027636 674277125 168161297 131135211 119498986 811277394 530976975 772941682 959729665 763184219 321874415 694857579 172443873 281411876 427660435 127627945 901073550 684808061 585761842 691451048 467428234 145354304 65933509 926969741 570776762 302937690 133717237 237645644 77443049 257860627 16784411 104814684 318223546 348390206 515035665 709601370 653361671 39674160 840637132 939237559 308019643 813550948 301870277 497765116 375301276 507861090 102983411 820491425 583580751 788416477 576202592 898439533 212650141 631384972 606028821 306129242 765394255 293317168 834067012 452713509 736631366 102555551 374200412 189511954 241633520 61124375 68954674 425157617 38636381 368306690 752778349 362516789 203867817 218053513 27496448 601998617 633896907 157867311 305760037 107931978 83202621 623478120 698341303 400069099 630175891 916963876 925551178 595443048 790612758 712597878 409423402 627198093 382826760 404459748 728201967 712641795 281840103 673853053 660946117 490069035 753842250 181202778 681469461 144529634 478512454 821050067 982000458 86063352 914596341 191453277 157372255 988451089 863342557 675215134 39295769 500227418 527825536 120479587 271831262 986395760 845461418 723242491 108863063 336055712 236312666 687802534 587585879 472361552 519964313 154648358 380741857 260526901 9615128 812804274 139693615 624659170 604107968 76429002 857478207 863095097 455233221 916329502 677129078 147627530 635762959 739422205 473374595 445118945 686435716 296705182 385857135 288559341 219085520 762289346 845373198 602060251 516122453 401544761 672593529 201165937 676457051 127453588 538931202 608649072 379769003 88571470 910144682 583319086 752466126 811126094 104293257 359644677 647639714 687468838 798792225 630466669 627625284 135043853 469620035 638082894 875894718 262151074 599984177 843540258 504564197 761515440 340492664 804445948 682100582 963597933 800816709 795417556 893502088 9111575 268099880 302429967 112689133 126404364 307752024 867138713 160790652 901459048 574493288 389286831 283547373 526266160 992768863 251230840 134311211 306440702 443120322 627924170 659294396 384411634 628737101 844006263 130939987 576696671 625425234 939666315 780539161 640664798 299439520 873360032 971467399 669687046 863248664 364078726 656105527 675386193 89258657 108431748 775341765 980783281 971829498 349195773 288402433 644043953 970735927 707375611 454209576 440326275 526941985 51641210 776782764 554856412 777245470 816399659 495727883 589494804 370698796 937373464 439742548 988151346 432331574 974707703 673219444 356671448 657764568 31958275 497392339 265682893 851100437 813697791 828563812 360739921 16409169 231168727 86184554 5010037 953331434 14361034 52953087 60181290 526813960 662873837 193366059 851959981 418249858 543915614 955240720 459529138 489790861 619227414 215078638 866508901 547627013 259879220 230780297 491164432 999594314 393958860 725618969 171820935 189134046 610634840 353003498 61453680 371300080 801583698 834757836 104476824 274489703 961816514 253221417 30706055 828223213 91373647 719514209 476018084 220336177 829076919 313971979 830020687 607986606 421753370 974616582 693146810 368530764 544029610 129566253 116649161 102500133 79463496 159022263 231918153 958438382 208059440 84224438 314347483 770808796 972040080 745163390 4827576 726382751 834451847 684119952 592651703 492808925 784636328 573991146 180784719 42938548 285002065 569841878 534235978 976726658 678288329 890409732 994702186 26740869 156019525 234571296 145818016 832242203 70623532 62610114 871024612 188091817 262368588 359981753 571416260 272778901 12435479 137206379 8351207 578439950 419713727 325462655 340116420 261866732 931994373 598354998 256727852 587963595 675101161 865398148 853875461 135579098 925025583 604330262 30983825 712374156 313201405 81602123 704271426 221957936 658957811 110365641 841738875 627994556 956090647 129541876 833754233 613394799 313514002 202294600 969411297 801519572 794016141 301060248 613679078 569916466 982533251 370218105 884414338 822501168 988703181 851930899 213868461 893261483 878601308 590351814 629498570 224792039 193471435 521604070 558974301 346158704 649646148 611390919 309340440 730698701 955859822 745711863 322082007 925118881 979465830 431421595 76585608 782142179 945660271 451592968 160362302 48474282 290733840 718847693 462001676 430606343 158940301 623416785 904696475 291733892 317741050 66339175 740254893 921085326 831274135 730715458 429372729 658016107 120936527 701932006 488351416 779484446 173633781 349876876 808391809 494922171 92282690 26568866 260162138 168004397 972853693 488507460 76642592 781145209 571265297 981579240 156815053 689006944 964851081 257057446 747514224 418808626 134460898 486356223 754705986 682839344 472979872 571610388 320078891 400550157 517607426 323591104 156474688 411196905 126464322 55303448 45180767 818475225 158464682 201339239 587157195 225690523 230501428 201737230 831822161 540305989 127415467 236958138 916047619 269484511 314938153 261019154 667187996 292617048 448007738 476982295 68008173 429329891 736039196 584461416 944631474 32719744 860056659 102914975 736776409 961960164 83403148 984220289 967163070 64091548 40798931 569796631 45440697 977754995 10647135 325350893 582827684 999275596 15221177 257663677 797978784 662993867 482572711 672356092 525490694 763880578 678053524 552646667 426210621 396463849 189023997 909643351 909550478 793860692 694130375 305277853 805928322 108019488 253564478 801690573 303382938 170192560 648267868 756196790 500211099 121625934 101358389 775920043 455820140 925214623 516870766 755486209 287514014 370751540 210474625 843905807 724731048 901184970 229660935 256394926 703576999 999494610 380095090 93948913 584220073 628758857 41108538 790219748 178188085 504860914 668705993 43911763 360427898 653164014 853485117 586533477 902012949 317141711 468455332 19853236 789032838 286632113 196141286 688073515 556364693 602791429 736436520 471472384 388917538 74742751 903330595 394431619 388170759 197214058 256253375 82640634 554661262 82734458 267414935 198438305 368970264 78933201 583808300 7756969 616687229 638951511 710882395 181229576 366263477 150393757 985243763 523693031 312362783 65323081 656047256 821559198 654204101 350532584 922209140 704056706 728245796 559079065 22720531 684005933 287390980 200463658 239520141 947886175 724735593 29714653 564285730 4145323 81381324 534114995 950702800 695059411 293966612 501288442 531610985 735671719 696021105 673903143 993245781 487099200 517943537 474972535 548311099 982697898 377345634 929547876 381866552 338797386 985915425 612201455 712309359 341399629 376106116 181200154 866772198 304229771 629494152 342653761 648819280 644294304 789765497 306240835 360865799 484782693 878104804 319122213 40060165 918969797 399766460 257846614 111862073 799494430 254235001 406978207 508899077 92348336 561534960 906220489 238144621 662209699 787798681 279860494 549813189 905005922 983937260 79429149 170916975 700327872 507375784 718912565 503725350 90160833 548229093 864253385 597206047 860591873 450745178 729269456 433388160 380769402 326822325 764376693 82573962 601436181 980766915 305345690 824948762 962502209 411793198 225358763 556560249 265168383 640003718 557218529 738638815 853463912 724591072 291611420 360339574 845521840 113789392 267869270 723121010 941210053 442263616 740664258 218928632 683914097 300848564 63582939 863521666 225031787 928356116 663394325 602112261 513276569 457900506 409990894 751076832 464492722 271661197 345509621 7186719 797556683 25309983 369838472 266862863 581965123 819704526 273342234 460891801 162245223 589241776 74895535 926510474 558902214 554922695 525530115 434936833 497016129 895432931 299910568 628708868 802895163 959893772 740647128 625250109 532724889 808028583 317408159 927656502 373375326 796384287 925780989 478169815 449958427 341384675 748324206 343823637 42615632 6207493 728098314 497541761 723054956 646343184 513558851 213920025 898252753 323560002 793240566 377619219 931313134 943504166 95816942 543676755 366385629 169015568 717957299 3899425 301119627 167056151 546725558 962943853 859475094 896718987 65340376 6928972 440075823 106336472 153904192 573799330 602454870 594598449 360410587 511711399 513768881 670286041 272271355 165539935 795018679 491191760 594046796 696767565 559461395 653363769 427347987 872659610 83408471 716014361 920194204 672378497 532869723 807646194 739214432 553610659 101052702 288589076 939723927 258556078 410544487 977065990 354043729 494402815 487301179 523544881 910884599 143416000 596902507 760491089 282925137 783822452 764757314 328725476 716558230 346471318 438280312 518679413 808861916 862054247 29598160 68339897 615096744 933157279 724311644 554209432 754877857 10964966 281172494 700047923 925851220 662677344 315737181 921780968 778024207 990997649 729521272 628018790 147299194 498904135 260241997 390833607 262990652 472411527 776209351 351729958 769919815 725112412 604112238 188379220 392200138 363638608 381635751 236499360 388128546 824666637 334995929 302708680 852211528 191670787 387562306 552596184 155138404 621404673 353873461 11977693 892229741 722039091 956826193 494304178 613566723 114270883 278306331 779155159 307034761 696475466 537485132 623765713 558888199 745288963 651032892 568987378 294693067 878884440 705940961 535916825 369301327 444858534 815132103 866891498 844448206 149042934 64927156 225206510 92284685 823998788 616721006 911499273 648015294 412772994 614642604 270687714 903633111 97033470 555194381 32679370 377569675 457898688 975829148 414327697 200268519 157434041 575851546 790381076 397103849 307543599 60697876 979844194 672597133 232999284 114516090 933124430 606845421 666578150 326002163 270965585 695781720 614840232 572444803 735649346 168598374 969241046 764663765 34712838 437234985 614349676 734212254 886980398 93524391 591618477 462157745 553338675 902074564 768640978 652375145 674008701 996023960 118447548 245313577 317443014 131721743 394869142 891541207 977220893 64126010 912026246 910131713 741062834 906633337 463496691 586867231 777995989 141779460 98042167 147925950 256736923 476481727 187567554 905742585 437471744 67525605 320226134 693497835 365973039 769990371 550704609 497455529 364666962 448057808 733154489 646416501 492561315 559537287 913739427 574043838 628625042 729931946 372773934 995569906 229246842 498040793 674263540 781190025 203115849 456385904 510120006 858413463 153299520 946760742 99874797 354099417 324411520 670141120 585097291 742290601 751899118 82056483 752805452 39171442 511871886 594345019 268587371 283661681 4854242 143076625 47621106 956845138 145890279 712962607 707489222 978190527 599465009 925189522 236707858 324085440 461430424 442428726 312152829 635389086 231543514 202554670 895832577 839079761 115465776 755152371 676237502 173626213 665670556 472581898 301201956 379092108 501645682 258986092 591076840 421198520 681351187 464671168 883758480 749312666 677709444 574879116 267494834 612797473 311811354 472949057 876634609 645211739 806654524 282062965 290859759 211014129 987506670 804745915 632580283 858967617 476254217 600720931 323219455 426915452 946274853 91865961 222849123 41872876 916725965 453266275 184887291 30680251 647277982 81242744 44612696 799417081 148993848 322086484 534471222 22726338 893081871 449830358 993397630 838987753 376948322 20503570 162781826 662691501 542056362 814745750 387229308 880623973 85275168 288468117 78281555 971084769 77647267 623763939 357124055 220185402 383852517 345464305 185508990 61933414 275615094 264505711 614940446 84763082 225199929 954159483 471629019 205081371 804893237 682414282 63541310 173119011 235769600 323157847 621561971 487432946 350727807 965190544 294937286 709032591 37965658 381935763 572107737 711271134 745757558 123800394 81670918 20246362 112556039 565816856 401950173 421867268 251866041 925634662 105941694 493333973 835116784 942916142 953974547 149090834 717995328 100464822 270241640 555859638 443881551 487871432 767589480 51195575 144816088 913332983 84445766 32609132 222077668 677200223 570098872 509225423 586867134 544333454 675797076 840436333 783313354 544335051 49698903 54463874 521408056 844446520 725054432 782498099 237343726 123796523 624400551 353475095 809659245 451807631 184851836 64964305 281546779 831135008 821629853 623135515 371486701 281064606 785276200 201450323 395043688 905605264 295630761 812136445 429047468 78939709 313847912 272443787 894997909 877086186 803364973 993817455 641861113 284550209 657890863 772264064 206171885 699810044 700844603 224116945 45409781 202707343 911202484 374662270 462364901 361933732 923609988 119225435 780314758 374828677 535979689 280885670 305864805 78559011 183432293 810135884 914473229 945440051 101910700 136712658 10890215 593386817 480360705 956141921 386536924 511935126 489631938 506298441 772598790 500053273 935141990 580737676 297117208 197513395 342558992 411095685 107099134 901798279 473186274 140559243 740156600 2407401 788766682 646849893 608943988 80789004 424257456 976161603 789748438 281639586 621151224 926791763 736339557 892542516 505205000 317858754 134895584 900340620 527461584 501432119 512873714 434569316 896141223 384219962 884544847 316173200 699410313 367563750 249604229 913897599 20654291 872899440 65928068 546953868 939421306 95838260 25684099 755150171 104628208 336163892 628764820 763380969 625031892 358814634 204935648 484263331 628056372 928051953 8031834 806179937 896598828 949868104 512218083 623537585 76474097 96303055 102431405 269543272 427295932 367740011 155539915 185903803 680753554 615353476 195114102 415492540 342855613 195790434 739550110 388640967 295446270 715131158 923996983 457328618 578595108 392672055 964019920 541566888 589366418 320598440 655361133 481611669 839631700 35206498 83719919 312609911 540286826 153978918 9432866 28299404 704365559 164793542 169885119 327005602 381057743 270244183 282536934 859828048 744666 451900328 316694320 244239382 64506154 123513751 237283755 700166639 232674701 342819302 144472285 469203390 365891857 966336882 137753453 637643636 123658904 206051840 586765609 716983418 814564863 413640349 887542002 666320914 287715168 807930997 468795329 769615671 901609737 14642797 90306965 17866929 342970515 889102606 517470898 89498527 132468550 713255552 119713666 316296295 560313384 935668117 361106763 505602681 951485588 343931570 687648851 329039625 147888865 596781184 522942231 616058728 324021445 364111374 930327367 612251536 436574138 556343802 97210121 521617687 288583316 295260423 735300643 607410248 998689494 359700089 199708615 244072842 260865583 840339055 289840272 934121481 97898324 468126364 337843496 790415794 430818947 816434411 320586711 498062112 99187639 947703526 659509440 325987416 12746863 361703352 403202160 311290039 849114692 935997645 8444371 636627866 740696827 801782772 851765059 299716201 586283246 679170081 590620539 733291609 364830289 439337348 757855394 926984035 863247736 515381014 871269780 700956044 157880443 260563452 11691377 972726060 789917737 530149493 630821892 457314007 417528317 305696598 991559033 120946777 189131234 940686705 457988855 865169008 649516943 944368712 717996054 379041260 238318462 160790410 919717340 290697837 791326030 226963121 868801103 505606867 211218797 719318741 935364319 115154098 111869613 722490949 568649499 437587720 637337147 881585793 656801057 784240914 62265976 529856077 452451354 494537774 99502410 103423781 614997424 854748459 166244980 100070259 695907907 344878099 302477512 553072525 251094759 31813533 463404539 919392319 429934301 34383522 227760319 251289382 654809352 211651841 868390475 485962813 467168255 848153515 137588170 229208220 863685659 245746397 543753853 583060299 348667262 62152659 571295849 583649613 505788180 626131805 589812857 124807280 584109703 827579938 178199655 893480416 776190792 225148122 624210053 649922660 790931546 569739163 917009581 203764553 18198096 604555372 857850091 880832881 603324981 546182189 417775619 723072680 788791127 287547388 275907458 227571111 367962451 918515137 917612151 605053056 167650883 403070780 121596630 21367773 285550287 417853870 442271544 611794615 248635394 468675604 31289353 595168381 563604432 571606130 765812870 975856234 807780316 246994254 592959497 336563058 951724882 52666823 284059685 190264081 911766627 362675669 961019239 387920851 432287062 810600781 842262188 819122594 286038314 653334369 271793710 881166345 365758681 357148770 817388910 97695196 979552771 549630925 906925106 837290926 12229663 749115610 789867908 615739482 283634994 328835825 406179025 369080771 263794879 31331652 504609994 437504260 694367394 800319047 127520032 880038742 390092451 644108597 41005786 595010447 632356823 490023868 731308135 212313989 431567565 478074448 934140330 3712876 237450409 683398416 664131644 75516319 945408656 979647772 989995340 172665622 240400282 952582653 908170454 177180494 450755510 817431970 251728386 438660517 301852379 390287236 309061234 763624171 632404534 726199806 565800902 818722287 489798639 361355092 714943676 970392399 398180122 566173452 129817315 617467176 872498016 168693446 17073859 987459489 312110454 982699016 406808836 350682266 34345900 550177645 895070010 758261639 736960115 988275682 365198262 446371002 91677651 593821191 949805623 55582446 602021315 960781321 853228279 634290095 184377914 387942666 951959190 180058377 179191153 996344975 386314916 698525779 317791400 977225157 846396767 615053898 546042257 349405886 495571466 895216131 26979371 89630529 185077876 977571709 858054190 886512536 36228358 393228947 786265158 938766788 804080917 21174978 151797886 615142258 963062739 153045826 525188331 913105718 823427150 983675398 222795126 198026915 925612867 82567207 999528283 480344430 214011135 784391731 656254259 931831370 319661329 690181150 286912262 365494085 411295820 233840873 957672111 214088208 90970508 510996438 418455119 56080904 107307317 371879 914745294 265288248 900829465 873519655 975570057 592655128 519384395 521416945 639881576 696750695 900791818 323508419 637535834 421422127 693060893 828683995 752709826 874710151 3079901 136753327 605204053 902314346 203741540 420420296 149644825 86481541 507020901 718044935 511099405 412399922 422290802 697679793 815087168 265645895 44455406 822983973 729066346 317260247 60637010 940511927 511702115 410302579 880938266 499663266 960502467 53245984 868420919 815549376 98324496 786445965 416549612 807869881 149818264 969450006 533670182 852326082 590726153 86581896 161829321 755002415 205221635 796377291 929904940 395017461 499918480 394264414 711515313 374316917 710567883 538028571 333451486 204940844 283079427 819689132 230734842 482191388 810537893 859003315 150749256 554236221 43668913 314472696 777613579 847477414 561453929 525074585 998363239 900956446 198025759 364638102 901476340 960869182 587270308 805627637 372761776 118993127 473480389 63767734 211155666 514183564 381041440 761939007 863170054 278285557 607571008 885087813 313043722 106430979 84119074 746727475 725512895 877068287 694247970 844952061 704870506 464533986 107369318 304766474 874630545 928735009 811276220 219837925 714628389 707845468 320601343 140993 934755508 572381728 481838841 587903142 265308077 110882381 817512340 580863351 956062027 303588140 166545671 818225008 665394985 799250773 186392493 729554168 789186941 377950368 127911692 41002140 606856301 501799385 780762865 9349211 550235544 218229800 949435598 655249363 743080081 708905472 973664051 690431052 979969981 32973305 711585433 716734666 406725872 711785376 728978943 169026437 601717354 926650971 115608000 605497346 51774687 599082075 645765761 674369518 964349504 74097258 331666217 503090875 765226110 268497800 620448155 505688197 627113486 214783607 425016907 367208765 679422390 997574143 668181861 136031767 860567636 807408182 402936752 603278793 146768478 757106725 386310395 828198671 770308230 591985536 626233675 381187698 984833123 607781374 664414214 55131966 317484744 432307537 832691671 606172666 531952914 400193208 877846099 330308084 183654889 35588010 291360515 322170255 258018744 419219220 856828706 59280100 913644617 746539153 901543577 816429286 73334034 910005472 861187733 959534847 999153411 866614511 533825308 950454810 825271576 584695478 622537914 240939774 221542034 618392438 642531427 866944690 484135886 160366239 829372109 165788724 140002057 585062418 442756459 851922176 808632298 595743998 646336585 470258669 241221149 744610539 102825935 84321285 321555217 407236954 538075594 474251349 599990846 164127427 630761654 468523469 787992514 933081387 809919592 45625416 978212108 269145134 613653142 513355147 737180236 806473336 801899173 729788719 231677552 565535303 880194181 74834203 501813181 238801294 439996147 60326529 761902304 524277414 801756303 63231843 621435491 984696811 334959725 995233009 831958256 649047665 133979281 379879661 755039422 701840230 18442798 716579593 139928789 647161604 810358417 199944606 618375839 619474853 918046413 493879320 341031416 101792134 898244199 321010473 385822227 892213054 20373556 130381243 539676038 58416916 287814928 822364548 211204710 806302120 476641194 86317856 291289243 541717930 129829956 658485924 771756498 530358815 33360400 471035 582182908 466172268 279935540 385235177 80138192 308139811 108488296 280356860 182157548 731333896 485288671 520179060 405209504 308614741 653718750 163676388 985808163 358517299 530642624 36114348 75935595 461366528 216267361 361802458 479118784 287147145 584806934 930206673 184807296 830884261 790120080 987365866 440950802 211322997 413893390 170092537 815167065 568306045 198850033 880951311 254742258 68576325 181553996 549025875 732436778 325385574 433319601 474164919 114727430 383842008 283475476 608367613 275947054 828344598 608640714 920365982 864679509 219057852 589114390 776539187 251664868 549076479 633975096 238357248 92216344 765003790 155554500 582028956 358980169 94714796 313881110 716550593 106832193 823105695 74138503 734849421 904746222 483436626 956635137 432757372 559752850 689568235 736419306 841460879 681538283 366583491 179207724 670705044 896411344 417594682 778375035 402645899 553496934 264532962 908524617 348844589 62076163 843465656 350574377 213673795 236257295 912822692 573428642 19545928 754682931 516150993 913866282 559111849 902259582 97579283 235657554 746811477 77412142 769508619 426452116 549949777 993058700 515020098 464064918 498945104 558186983 728078847 890660703 530098113 775275732 847663397 506693351 914952669 227316269 655068939 131675774 909097368 391597853 453627257 941279015 610508869 652421666 305829570 310076436 290820813 980416392 411046550 604801933 37389346 530738904 657827842 963676346 31158066 594195675 389425296 568596453 247146307 614008005 230086583 421000243 740093648 910326090 385471201 314891870 694275186 977244088 361391774 915386759 300818665 198472122 797032329 725030219 371836813 946668763 375310828 51846638 314793990 866588885 828809217 23764664 953055200 298993955 403761359 226495336 341033826 178904826 498173864 70680816 150989470 712277657 477212931 349687652 757552972 32485461 862760072 79310457 208132945 45596933 739523901 920730526 133268660 192054557 149249961 649872553 30352530 819044027 571740251 926659877 107980072 758571509 377069793 217863139 191946197 38255811 127696747 283906854 555530306 87303214 832187701 914742010 327005264 486493470 561634730 61117957 185923108 54723429 20591294 814164957 217376327 919885446 165223361 87795323 864641215 269794374 548231043 331884760 610243763 786405947 999116420 304721156 502552033 328102181 23921848 303324631 444293737 740967283 889292635 919772960 975631330 353451704 959692178 531623734 343677510 246067571 120939366 61613701 87453945 714089906 125969308 70482127 911855030 738906615 459743062 787057155 159901919 251406866 47958205 398619417 569939208 937859367 393569167 971096625 209245198 41635115 45986860 327970988 769646492 881046017 207758012 304460179 855348609 8506544 167364719 974510149 278747435 25512714 645615227 790439741 176050380 544281759 89595423 860394863 624740844 504363719 84441414 54353245 355445508 755828542 540247761 741486982 742452764 489662274 734547359 425151872 883849661 56035483 140359877 578493464 489219571 487268410 444620379 725772904 218120923 568105975 64147662 383292389 953176353 743226423 323559473 807135765 323658972 364988479 709265126 718514994 922125804 98324828 905147202 122653383 140850828 849480682 174779304 495085588 887590027 361214254 602619806 97990897 965313807 108197879 84023673 215269141 115509323 529920367 527994406 690859843 808576691 106735709 686261029 639470050 191939586 406544655 79243927 918301568 904187405 294092074 808139625 7116542 350891308 220682872 89351045 945814611 286114122 319782174 480893990 409549299 506489502 228452669 209102323 885228478 43584493 7475350 478157945 919402077 999265473 878706225 266518329 494473881 721418005 469605332 627728353 35496158 910087541 294791733 92719500 698669263 368850174 538528926 521415533 268824486 893522373 304563029 748852993 463000166 11092665 882508332 93781947 467419140 348721455 985977817 938574780 393990210 843280328 758064492 969169408 502031117 120960288 682786936 678813353 957969433 128916315 822861785 485577909 570681396 3057309 990926479 889884526 962106417 513143923 358037027 487012683 353314267 190824545 449895623 479086272 684409793 451533441 345487085 92853597 906195420 201195636 695069745 741917626 497196090 534055500 208294889 731783706 456419399 793913301 695449178 300709425 692816613 722491266 554970644 668549039 962724190 295259537 806184820 555017481 917324846 361831785 551873815 381307529 32476244 820634983 301105222 860606889 362738074 686924421 827660118 388895388 39109744 354312514 175546210 903214842 640127298 419748771 928454231 743080594 734090819 11269064 280015731 336446927 145100305 261694334 522515303 841500870 222712286 52944068 314578703 397845846 541563133 80662904 892730136 718875944 411328050 218448810 779429691 820801215 116374190 194368503 926620825 835277926 469587059 910267174 481096126 213517724 601022538 593828136 933938135 172279348 843138114 305331968 898020006 38729697 116608647 711825284 653393175 250765534 79084008 113041123 234356089 776978275 643733783 292970967 575047170 872255103 78278784 288514582 847542086 840709856 469786339 73912300 212872587 905485816 78028352 553633524 578260430 928518537 441262418 99201212 871740351 936105070 533030034 107713700 946426088 957764926 321715914 576164827 398326979 476749879 715985085 932055248 462369851 61941189 192541032 227068968 156417213 940430260 754003578 616083678 10373194 534806956 998364814 751619692 773053731 483068854 341019533 935377351 580416557 92101096 918464132 955831023 877476483 730949864 755854334 929984192 804772911 132293324 319343893 376012272 867153774 508128675 147716458 544015366 109784322 359114060 989811470 614377851 728059420 130752343 682649567 311765000 646568190 534621370 271284837 195335579 610547196 599445207 258146294 654063869 69297513 788169857 292034400 188958025 958097416 335347430 960506671 479700997 685349593 596674962 522207825 750349036 28952264 240349385 276506972 146258637 422399358 778755347 374994740 342821138 69855 155766565 184302010 444036498 647410706 522735379 15539871 29985603 498541208 634313962 49281746 361448820 414534152 302167259 85105931 3261770 359052491 137628403 582587203 229188862 39008264 68680868 582312873 865344722 993590330 380617559 253452053 982857227 158885163 310708078 202166990 689138111 859258792 417773185 474775845 192019454 446637177 954288396 937142323 795553027 50451398 535074855 770447379 141396316 827853484 339856304 50370818 544893655 13423854 100923842 234700170 53723979 712168295 647193185 568660938 995573567 985249552 722948509 780823709 558632601 154411415 742624149 806708324 358329214 31407745 842534280 989057221 457529332 472139863 425722877 691941039 915927691 218949477 625328026 186920395 116472052 836600586 282520026 799247198 594292980 296894950 843051042 401608439 293570843 802942003 455646733 170983038 153575705 730698991 737141348 574435193 793840956 638873203 941886133 591250912 178880532 743539865 500984247 294191326 435098823 558347393 743500591 731198071 556451515 676232788 608891548 688326593 712414526 522654588 497169032 931965242 533081366 491973002 588507592 426778366 923883058 100094270 233801943 354868353 835752357 849853749 593188851 530502605 701344308 627156465 993170849 526233422 504989205 840153720 995445695 789971971 11441813 445326143 486295271 962975349 168145089 174476936 910054592 471780390 223819750 315438618 248414930 661284252 463933267 95775894 765208495 468556214 297254130 333832470 554509023 779428702 788393582 261030899 592063659 77218149 373317714 456534694 125465465 445951379 711073897 487294967 804453184 255423736 343681264 601774277 138248980 139642230 158830307 187799551 892144567 213516895 267555689 307647591 358240073 59904531 981477877 785286324 460828694 191716864 670720826 722355856 234671138 967310843 632526906 294845419 384225690 329050790 995235073 279972720 210401422 72166248 711869333 154428043 945211310 146415364 62542167 665638011 212104051 925562010 389215507 305963331 522848773 506322919 221500760 202063618 989653135 195628167 317787418 61919300 72259058 547718588 84175439 883477125 332039407 263873288 521756476 920553438 776305343 748872232 937440676 712202560 36232241 412207338 359996200 831682457 668612064 220677906 184942776 269290965 152369874 242886047 915694042 970373972 860029316 803729161 188697558 446150982 959517888 780353283 910558810 527557307 204036281 551666688 954788482 455009653 452627251 129241898 990787525 670578110 362014995 308475637 100083396 490596879 301305933 262578234 67511987 204562199 682695590 709236921 376465774 574375552 43555417 704163578 999395283 177677306 245647025 508181037 484621241 3559269 527516576 881029589 462664576 33770685 320068462 137676124 604186655 821389547 782970146 10373028 847231092 843718104 544181753 764837364 337343100 780943711 379675508 277238247 116222131 704770010 788734208 451394009 379134527 937916287 628114549 658864377 701774680 611129304 837236755 990817477 721429751 471196926 900829816 693850171 761832941 822309492 729821576 449909629 794586600 78261764 108177449 9424699 954733410 895660990 905864058 414009427 694072209 906324426 373949847 271289076 523496309 417336115 487303203 169035221 309131715 676006471 465085890 784974252 863118364 395912032 868179322 990405454 897859851 235773499 674163183 519231028 596545808 393659278 37885668 708026011 718645918 597533276 59665479 186942004 740983033 888869314 960730163 516144549 440954343 572990581 828854376 320795306 969996373 441895490 621511126 3500077 1122147 275584655 881659938 923823752 810572425 757147319 475101027 855860034 888645290 200596178 481204942 316026819 264293415 139784331 817469531 577102612 594781710 95678758 538972396 982400355 528156750 305334855 34941476 129452677 954259608 198726902 744736210 378483170 274154152 224421392 528328225 826379321 782121317 739178669 497660962 396366917 607713306 66585746 313694096 753221009 417799397 670908052 405493235 48877026 397148964 176159658 602040154 5184959 447181462 771010393 954347572 306867657 749797193 811370852 598922080 649200041 76095860 372440266 36171587 473088241 784309152 158242343 825773601 672015755 846679550 363180767 390527674 645649890 348423651 518938240 160293636 747482599 964738635 691206176 806319763 169781520 8762786 65736006 968181215 316978168 280031609 904870587 813389516 222051899 884629422 509483508 754369072 78874640 494583054 693765447 350230590 246107274 305801015 962293571 100344166 431737467 813184278 810214623 918820466 876660866 708730588 932770869 863546759 727687449 646652439 573845756 231024436 731912345 766469617 16912562 603852896 902130697 921284981 877246141 165302019 246979257 716407794 171436813 628104658 512311025 403456342 666018522 244167265 579256580 969963943 123184582 18508315 130925522 641539748 697354282 473923118 156996487 603821854 766569283 68954985 128452016 178735514 36042254 448009203 619970665 41120467 889262489 85555303 538398653 132442883 958230329 773540025 861342676 461580170 776347481 367873856 598744645 508486361 480935897 245665695 805261486 229974886 308803301 390875615 944901892 204533464 917979768 53527476 383258856 142222589 493764347 242479512 198726374 40034050 325351935 59854608 668027754 594659081 873342672 655862256 81927118 794499445 80848197 366341250 561110028 576868612 783471427 600376426 914340755 371918525 71207731 393663495 187866706 338490054 475980939 158716059 614797014 898819202 241991501 209827953 961896985 45494715 3058840 909500496 363597678 807040346 7491857 400971511 746860348 142431201 528480082 381336859 651345320 212944661 337627608 78245755 481344793 441325805 30209713 873312681 547614159 700940439 392892682 354818837 726916842 961589171 680152570 23547277 888012959 461268970 529161728 868110656 930620428 955242509 401431690 411336695 133768561 591446375 11038437 358579626 37315300 147925830 147117119 198150034 953642918 559848304 666214726 597591875 953448144 768351691 907758093 413737672 127704856 21443893 107117371 923038696 188281945 972150262 461043794 734565548 662574815 713435705 851003443 7265837 295856017 727537005 996647795 282163575 421903743 751177882 235649731 293424 582639430 915043868 386860356 312602277 444159930 60536111 7861714 315282153 891151184 79897546 237596175 421848373 696216219 330241618 276618286 977701287 989207019 963757761 315809934 351664669 611234442 177621183 931856810 722467737 444083699 903282946 868830165 349072076 457237996 457375756 362959874 303190718 988962022 60177772 570384064 106013905 888781296 441901262 928846007 602704203 253482840 303684602 553223453 474000761 978040840 191583597 335499275 636852743 611099534 913243783 359804829 276622067 480328836 649974672 207257763 620953926 524144814 128206349 428266526 349188716 502362465 305484475 40939702 479590081 376181358 320733402 518088073 134255799 326603557 163623883 985771717 968423653 560507201 187250553 23541367 763958866 854009310 695976438 549549439 188735474 815877098 920530501 88341905 109607310 192875103 461882174 274469319 174576511 62239130 386005803 65343375 408377296 980301488 749695149 816160832 551320750 841735134 673723446 217968378 647321100 470079800 730010405 900788541 329971523 362776142 698660595 487729094 482338419 639966914 96852972 825921239 20121390 977681029 211418196 697135221 299506993 671336145 502819562 345307180 40464975 528131179 24142124 970622866 147115358 395280319 385397779 968365905 973132956 352658893 339725038 61303896 640667339 438279743 217546277 892899516 241988128 798532371 475097366 420641004 175233494 543282355 542629075 137544774 599503425 774449094 571990450 217463721 176357946 88582121 970324604 14194608 51908488 452948457 231018521 911940669 982027105 406713937 288911880 127607825 292780504 982668258 62683621 607558829 996198754 854895398 77439060 804254358 673107472 417404756 945256560 108711071 688550071 908600006 129021724 459275099 64811790 218705061 297634858 897013630 596683880 851659870 747974444 170209734 512446504 304837217 118594251 994151898 164431048 324540377 53093919 632881806 391983751 230139240 760585462 177663781 998970430 937203387 968963199 494716755 282563097 26215375 292180746 407838095 688096641 804423825 584810595 211596006 114864725 46567561 272609960 875977245 932168736 569799429 46664399 401769647 256813998 398916871 864267166 197744726 497419899 732692627 918070885 829735447 985269907 233259820 887669829 65927254 335906825 910888200 442704194 274825884 251209420 8514340 783543282 236192733 192337651 706883707 611401155 305278116 691838358 279922184 538989405 84321110 257545196 606977904 510756367 186778117 745215546 187038543 573391452 34257650 179537944 45316493 130544559 95470215 312653388 133548254 734476036 933893693 647533625 404911698 786461579 39682291 716317045 674927440 261741672 938053505 551021884 475120098 904089612 65602924 191683433 178357128 109218647 618275209 857106867 846960526 518649817 918173211 588040643 735410490 508997324 879098077 460980346 916417242 861529045 478093052 525155321 203453189 812566397 926430316 647063167 455390628 350450025 277982964 374656115 553266462 648778245 969113521 994505395 823161223 228194033 68432943 441384739 612010563 85958683 100461282 500619535 412699545 55898191 746355343 26632768 474306849 276815325 416642984 932071489 391595115 131746232 620634547 767848643 998069060 640878433 166422040 875029946 333765367 756927245 229009315 409605901 362600175 239698347 545619773 542192480 316894347 730447614 950538047 78690918 414653092 319529708 90923328 786685589 730332367 135948358 236514043 768987838 454987204 574837429 554278836 983718377 308776163 23553962 824128601 592773138 152640161 505523518 98523323 865582604 792965137 992048864 171244997 392800944 271565153 552326099 590985181 816524384 614093995 6779844 839515697 12464623 210041501 625545778 36531354 614528006 152073855 432968900 542236788 533201175 894188009 410139401 821031286 953888523 597354509 147524071 874404907 644808703 935446000 408906427 977091729 285185987 534385650 297733227 210700723 342479540 607027215 790416920 955438198 615253374 812441141 164847969 521377250 467225753 1317445 439526464 99986014 379582736 669102367 420076129 698004554 291815375 96921067 263419328 380593322 413189622 301721185 676452176 129737189 506444633 317906919 546306142 176333591 397993402 194014733 172128943 850872804 319989881 433550040 935346919 707571840 613230394 573372670 351305282 12328482 640086725 187887630 54996947 652626188 936490561 805918984 300216245 672147235 683634440 84126032 439903578 912301237 603081899 394354970 976045312 120768185 856380019 471955831 546054449 775496277 518285134 843797556 828373090 557332508 733753232 944948091 814889265 349908880 177693991 716522532 221785834 203052310 723732953 552002737 912772200 175435813 580231662 781948710 872708450 686808828 545353971 968580434 71469213 622521956 762716778 325896838 395825643 838172953 422158711 664343854 396872434 421014354 572637416 22722490 70330997 580113800 657892334 415511671 912138107 865475958 513312862 881119459 679935574 48324108 379491559 229843569 106106267 392294429 64926435 365543268 687668717 791969253 280997068 714623041 572558137 939904396 558222083 619357137 172037693 399087309 438437393 255382752 111598622 863372659 771095925 407886008 373151788 911400573 673129088 176508183 158818951 896790674 704474832 777158794 985222171 909340838 994293704 227502265 768022368 668599742 806466904 258553873 655520809 129459635 762673536 717816902 478479038 743935114 406353626 242010468 917677057 293908685 965631796 492778916 992136486 151443811 387489073 416152551 952225924 368701605 401885643 802307915 583595410 454965484 705149126 682567574 734927871 485431209 628497607 656274205 720824528 880349085 606934398 330669947 598438752 752532396 950133715 805813978 438100877 918745204 858367796 721796062 963111537 767705635 604558856 685758761 299540110 628884777 103221571 395174011 403720851 175033027 537057101 238149806 947402348 694439468 705533174 934668699 307987984 97917730 664461705 518193548 520829805 418082641 142402449 307986139 306526191 136293090 911851717 383531052 513476513 903024585 619496238 621997221 767359296 867771108 933080446 199137888 380257858 687113135 347332459 155646028 741011121 957262239 942029794 690225914 737679587 744521658 320457561 467925657 590976689 282205745 228121250 340947278 947093996 592054240 52766653 142661301 807809502 239388447 823767466 835730750 578149257 688274571 164475332 850194092 69338454 369174022 131451448 531221338 427387798 800398479 558154015 22985948 540660071 520466138 374714532 534351524 757595463 765972201 664894982 9380118 306544635 294327932 862124866 549911488 793159754 983738441 103948172 225331611 809820439 665795497 652996000 672154388 139035188 90653203 285794825 438475722 84368242 450946638 208961433 208951817 32065614 173954376 263114667 915750950 76019704 304177179 598093529 563918758 300146265 774833157 890607517 166818618 885998775 744026678 946850893 446951329 550879215 19668611 606368301 315439918 798608477 669155645 779082532 303506141 393454646 543716178 260495735 460165102 77927172 824183813 763819154 234456474 45188511 480212071 665953058 186338111 790534250 887362080 375634327 896280620 41656265 492993609 105330845 472989301 96282408 144488897 60170752 57816293 720930306 31034956 167747145 832200574 168894464 490702734 164832797 943010810 95229459 189430779 321758173 992750086 278090299 217402783 2545958 65216867 590347093 605488527 671810525 792706182 235327738 78964158 773523598 667131168 912562610 765118771 104187506 420603344 926064639 18332443 784209031 950710791 976116451 857132087 225773598 222685240 549672842 75895474 857004552 175517552 368864230 902419561 52059726 896557292 45171835 988181243 87026246 645959687 372366560 31655073 222784594 492375787 168069272 44181248 777753095 270710310 591830979 215195943 831197114 277371606 273714048 330336996 489791548 119488319 41614439 719903726 496848783 469406127 186562053 790824357 313890568 708278873 235316076 309325406 868913112 302601 447717692 268825388 797062023 318271209 206911884 330648686 700615639 765801234 70000944 291470204 347790412 838070718 222675777 636945858 457790366 646187574 658715380 210527205 403058125 78907372 409276748 209932447 858106149 296038308 39851991 576604776 888144791 578685891 734366265 738742478 951144846 431868377 222198815 536365188 986666316 53482307 142968482 599802220 535437754 716682932 904141387 445939472 542546332 996535218 366451773 889837683 765525874 894068849 968313270 200702706 400444902 77971516 564673641 847349304 496622836 179368240 827763042 267616011 217555094 427394057 685402966 718673944 283963716 755566709 544039951 81822096 23749786 5113928 815492441 590902893 754119325 740977940 874741257 642567627 180753464 613742892 415964289 622846283 563989118 156486872 630957446 321887065 199902976 383195345 24850231 990764550 188032255 26019001 897769311 118548160 16991259 372046284 233006374 60951882 437747709 762349349 683737573 618743591 137802408 601726594 426989568 910975109 659923012 759154719 636278061 514238064 306810088 336134936 208601080 355112350 586869423 373650884 357600255 981750869 660261680 329868528 389328157 807241706 657611092 429495765 779427982 918118627 990640594 377760144 815430896 106931992 27565345 300336737 672079379 289975584 718279729 141683231 830921914 554379268 634756800 992213044 484165023 608727332 802197626 158985720 661543155 945967717 204919139 945788893 492752892 453654543 326003898 876502770 857934229 629969437 153837352 81994827 954865414 249486304 963770183 21952008 518396219 100269045 671555993 598694629 171466992 914754406 108910332 905436662 41164277 476971900 493560687 385297799 309790602 699572632 421577236 427043641 653116023 314845202 118628804 426625974 932393095 388986368 977531899 484664233 200567100 133744801 618601525 582995967 770528212 116770349 719889309 231502298 572648443 28094841 890627103 103696520 886303505 980283506 603921004 182759178 586374166 969977257 729119100 326745984 811115107 395616535 621515937 505011221 861918984 583575823 819821561 817904037 604634985 456683583 24056092 107719109 652902541 161085314 286832275 564474475 689797879 997921892 418102281 245659257 270011653 885329518 717157890 395365443 464016463 214327715 393379341 664552386 67441476 89723670 444791358 873026297 575374669 660383086 251584496 774838285 424827965 413576548 300490811 103239493 727477923 473718912 399579042 594912719 185662183 132557307 9867959 359153409 993218535 927323230 514431011 573639203 486315102 986856265 45960265 834866917 952979239 57742927 972839120 160036778 756637204 120457947 661726679 708657794 145091186 542932397 676233365 287149496 903239392 616303375 203394193 323068958 739596490 606713574 929602836 931256993 881964824 423533806 201384339 550157463 703730303 19362475 278429568 572422239 36152601 990245319 477426959 97796276 655254344 985218976 337936380 839147118 218315386 125681768 215758091 552559214 414585446 424677416 871533988 782668483 863731031 933984942 176043669 5606650 874310595 8685369 455574531 688408555 732391027 221335461 176362732 648418694 382158062 283575967 309603293 536117251 137387244 473576121 510551911 8540889 898224326 847557122 745613590 320037085 701626646 35879338 100091502 320821728 427929480 952093109 76144765 452120900 89134312 623754993 844260739 240763899 861405131 72638155 750467934 5843031 857801422 141538263 942112315 83004065 596626026 447093746 364035301 245755940 648402745 562148249 338554527 346423598 231935938 239748100 672866239 728975446 88233541 927238686 841128170 573180603 33018804 241332063 965483018 507231533 673670933 982646400 827891534 36966378 622645838 921717062 617275978 244722605 303722640 360253039 235267569 400103843 658681873 657490788 853627728 702999194 955494829 589953253 342360945 687506163 902695364 666041850 244936595 743846080 671154260 973570440 618101256 407483739 114641627 902007609 357592789 715217264 389276533 453399623 574655942 694410540 597907747 404993921 199466155 479964264 106958267 815020053 417680416 122686915 985533794 334898489 801638442 13236989 632936593 578661657 369875506 880455361 834252808 673027297 21528884 924057007 342687700 32380567 649056801 318123256 719655855 515847979 901469335 534736949 305539965 991003511 23817017 887066099 384844871 405614473 82457190 945527925 890019735 898914960 617482552 693341138 186214328 710970513 834619655 170730439 332074120 884298624 805212321 579061012 381736063 47116013 441268051 780466028 367180899 4903328 422449321 687027437 474833627 353500293 61590687 434669175 545742681 742379573 475576652 953791118 457037605 658369168 353484985 950281007 998057230 37475806 769053767 290162927 532373338 8519104 56547813 950999038 335301889 381962910 675303722 278196133 261545384 382234295 948400110 413572916 912217320 91921644 446870402 686406231 632969105 355954226 206888174 83955571 699469636 639819618 682020374 946039229 253949500 330707552 627954541 659030402 752200222 166086583 194762880 983083550 699716468 10596428 358021790 825853309 197150684 200629239 167929784 481845547 277004193 855336442 154884794 66733741 3336045 828690387 677546060 290342793 277978402 330783407 737417347 924301738 571312398 895563343 5409418 733902975 981782913 553540232 799934234 561400258 980789320 509852642 631115395 195396919 8098778 868374803 125096002 924970738 104636175 323141953 604360700 835554599 526751416 550204374 89380191 5160199 906710474 213626504 730923339 815009601 934374106 334901513 706204905 461336760 140575225 975986937 297179434 949386063 851249807 957455121 607023877 665863231 637139419 555484925 890421919 207224547 742799362 906750989 26440153 375011112 631655037 714273117 522232951 20574339 133554851 8706212 473936153 828239304 685140034 955732662 986097571 166687713 924886025 234351607 8904803 259360552 136372370 196139660 157189719 850171035 382514176 335564203 695901440 255834968 68094278 959422600 24132021 291452786 267564228 554782535 272624448 851257367 431876663 78125162 663770188 424846105 379858027 862622634 535198679 706904442 357888392 940908088 868811840 563910873 828763071 910780036 405871594 752997440 497707555 223208794 7909354 545691825 902190314 724221818 92206809 179619502 766244633 578149847 123225159 836124833 896559472 266332325 551459383 189009174 193181786 925490421 959005601 518190653 266754524 901983182 355168024 164913092 663087743 177042239 368840900 626800478 133025708 572573967 141046635 928382729 704312253 14247862 192319404 32828390 806396645 849548745 307773550 440289906 298726099 328854999 235075623 539712247 428027032 844365078 444530637 508267441 748448880 430319791 313180363 944091084 466903434 640625811 576775345 697294152 336196896 63675936 403776149 806333838 436269510 853610604 362126736 972028657 143776173 312931234 793758090 248100881 38311794 736396752 448662370 105598312 192678949 722338099 846932910 910102361 47966072 384288608 816682720 115648007 930379598 743049063 127082794 809675546 861020994 410071656 225766445 588561394 816433905 806050345 150267281 920974058 466917144 249671914 980119558 988792195 981107571 519958543 765484133 823250191 735435167 179645625 569267876 976101077 576482117 29070361 790846170 821664767 401971913 250615048 556573770 379529823 944248177 715179787 558015916 602929725 977884666 975130283 231595131 504482906 566798713 453349823 854053222 604327986 447446844 324505995 912173247 257252597 832251322 194887126 601056698 576823085 113415464 194938345 457154474 155515953 721122408 442238474 927010169 869607584 937625843 969707602 715494409 66553901 44681832 594541860 589912217 114625827 270863710 393335280 69644308 725147906 64609814 3003348 358952957 760651333 650576277 597481943 257539002 80338251 556459798 117159632 311437710 287475313 954026249 204632385 350130896 770993810 388661744 639870243 637263836 952656633 418175530 210623474 622466844 448666591 308205494 416217741 591804813 531449490 186874599 122459461 906395318 815807717 839027464 27302797 897524539 328298089 355291710 754507442 714122785 70480956 65905108 768835784 72444478 390050741 319457338 116111919 236834829 342548557 419573026 639973506 561812663 150421546 714605438 187279326 218451057 185497969 188728293 522584048 29065381 795664685 788839211 388309040 710159926 595844797 526889105 247536191 682175822 555617579 654029825 666704302 627501135 238471868 789316624 652564633 754651328 506082027 735298819 425424256 120640785 599257238 700786454 966555825 779227522 476764134 134150476 925231561 885599191 290599257 242614225 392488076 301170203 424647296 813479823 939693878 736744721 724146083 936125029 364289102 867130067 491349487 174580156 883520386 250047589 661540409 590944344 19041209 626629077 1477748 595925041 820405111 457688778 301318090 722156989 505309367 235794762 479758744 605746451 355773853 716803294 170167788 25998172 545888512 731001 612290077 56434211 989982963 551707476 725571682 77618509 377436458 594726725 231044984 53191154 14570627 496073948 349452640 968998500 867039114 71488195 767564081 610187168 27819226 130278231 806618323 622037511 283601987 780490716 939637386 38000322 77133437 954861377 403514388 811438524 32947139 622332648 770096979 684768223 532206740 488073107 326602883 304794995 702040095 183348429 701942239 390041927 705980695 678964639 22694784 766730205 578454060 937157833 543804294 431470245 740523624 583420394 154130009 668768696 775915398 754225067 216478220 295811661 116873164 28592604 729469172 386964106 680664075 119831621 708151922 804549226 780467007 383691262 655116132 127949251 835727866 836031515 978163331 802443823 114590695 27579733 737892750 233518179 992564221 921543655 128235183 419845816 420116457 305659581 601104068 522622318 920416857 561123527 755642957 293505656 112524139 782859384 959874303 11758502 293172199 635254418 650213929 114333110 757004821 727964484 738671970 691676249 824029802 558981190 817504521 272924880 619798505 102012128 983680605 287294043 234457270 468189809 426064629 618396996 586180738 4471059 288712234 392202741 526876230 904168693 786319361 416903256 961112694 166793253 737422318 888004427 73175089 66939713 550324231 96088974 504329490 572137737 820521944 117421936 806184934 558476584 615655036 592832802 237499596 777015465 864941410 111479965 288022615 193243854 160521477 144848962 947334396 388914092 336137894 787708066 185210391 292477226 357572282 670083634 103889229 592956867 717808723 335077223 691025441 343066021 167991896 225313843 219167270 906551105 498672240 693647871 409106743 727873835 130206481 920222029 430965218 217588682 324357228 170576683 751157324 27041757 856533794 98715221 604337728 883404507 16453491 111705912 802451004 376306653 736773734 880853802 508314712 589442526 995777163 503155191 466460763 905997555 131570698 915890694 471163533 133515668 610039566 963522346 34531000 143195615 762403239 767871465 241006872 495736001 812743485 361595113 815732359 703828954 925321962 727238659 683326936 716357788 937874347 769426893 885319022 45780180 464840693 761413252 360130780 869324041 166767632 27219250 904407171 789456824 288985553 326958502 404477204 100488711 118502670 228314866 460245551 98039675 825235565 219063478 879070218 260574132 726375544 190920886 285979703 280448825 571937604 177443184 297446080 70015973 300823567 61483816 898416447 27330943 439578560 636605894 518329089 570839133 863465029 432034204 949487842 840605632 211042215 998110059 296596749 778165168 711833296 884234507 675148292 573728379 843556505 80692266 764923716 647506308 230970268 595835533 122428652 738223361 322470025 669178680 625746020 369969427 452019049 630559230 141208534 148055019 648721542 896107834 533563253 720862931 730345203 173827594 836042916 929466094 125758881 940982573 886390468 203490768 732441534 490340300 17131965 763652324 72261796 100653305 400179259 702244172 208223199 122665772 473666359 582397421 367786785 161840722 547836437 440283572 240190327 705892071 839280146 127800116 799125628 827165533 462681444 511749862 348993842 443101786 613008692 580211564 423930439 739711756 264977360 314183738 444358718 424436128 550985732 297285129 759043361 906294298 242266330 11948711 617685903 367333821 694113463 935325081 185913489 476675390 99706893 831638317 311199999 852272280 381180092 573763909 813533373 501454841 148037752 9796052 785552036 317451681 50737323 514706402 864650021 106786219 744178538 760420473 628328307 687960098 544623426 559857280 432085547 29713260 91785675 769398676 425082465 490737191 472220823 831534485 250741703 322319514 606711203 702820973 314194463 75883218 422013427 611777033 309559910 579339530 282427334 151870430 773071718 649870514 685166210 97153740 211609326 663631741 295346294 853834259 52124463 938330394 504761593 510062437 130625136 444052851 642249210 6412245 734392666 312233934 561043637 716750513 545314448 35766393 53922377 98404526 388339066 125511903 123736212 712600719 751352794 108767216 807923047 385508022 732908543 395979158 789195743 365950996 421185237 451046781 965145794 643158838 507212839 773123694 594428302 82700604 880730611 816782923 514578065 416392702 441188384 584484255 101470597 977563890 993632047 272875917 70115453 960999062 763247196 851771533 50743785 214954083 99094190 994587874 715180966 689239603 304923093 878402345 732701517 997130192 670795095 799520565 498869195 875247554 471348654 299522689 945318276 72222904 935131256 638221370 504524018 275552761 977140843 445719685 658235440 228825103 770695966 91652776 557098565 81839406 364591945 364942012 515857848 949860051 804449179 655986128 967158782 176596679 52537057 677113571 107219817 124037637 315863327 10831863 908855652 472116279 507193906 452614706 733485455 75825176 295268957 214884056 298143789 521653969 872331120 977518559 824275131 759821532 211147015 86104339 187157004 507985017 683524364 599044534 523928317 777147570 659696937 19607844 301000712 447505534 5432152 262268667 949427744 904653887 55585978 646259938 464145111 435786560 900062105 362555415 851796787 412582917 545954630 51564188 654924094 309748130 398415221 675772004 91932004 133431970 167181491 518061637 72873412 211656194 701956328 104538881 860373726 136769522 983551063 636057036 775582115 91444158 744665599 702333030 515578660 976443011 765639268 816304393 253162144 214369610 900610929 447132136 365427127 717235826 232573983 529488856 940940860 728043154 424400029 619000428 229416520 920453220 2967834 662577868 188618087 356283493 565646037 840753336 885001564 79743175 4236560 155223663 589948442 233717582 378364787 595539048 14320208 888471915 274289205 390988941 34488788 876239435 767984747 314228129 565402379 882894214 30969720 167138664 805501384 918404261 864588892 544383960 370469698 611950065 911118188 723859523 593869129 404953831 192174265 79498930 410604803 899506680 683606063 427612176 961041375 40772358 414043955 90046609 687027510 695871020 769176906 849298914 897896253 380126295 991055352 296296498 29395631 681056339 487577835 942684567 241220377 350416632 955278097 709432128 140107803 746616052 88914385 732732257 290061502 291888763 575618679 918078289 852188315 230838782 754021810 203364936 626887925 940635630 644752726 443016581 309078280 169756870 216663429 111269182 36714927 113397345 431809295 382792382 265185923 373243522 114330362 474856735 188752084 462975398 299460538 556844518 573483387 99353292 199385578 446410255 375418034 367799677 10382123 801474360 358332694 524124769 731609542 607798779 673079089 606286606 536756295 736686289 295912731 547869064 803688837 726907948 763832642 389270345 455636812 238549925 17676260 697491998 109471641 920689335 872152122 957538854 21873455 780849800 194739227 786998133 752004783 674022232 978818357 444837200 513170877 612477880 126150082 617687666 721598403 777865204 553135792 65316983 480122356 543997743 333014952 361765761 565161691 693706381 873037203 210666886 242973316 651720064 694073821 748062986 726032432 384026259 164794251 585461044 961806305 546462407 403591987 691055072 501528865 43860655 355327658 159736340 499349485 965747293 571186419 716901759 672149283 387699825 697826428 805760080 929139038 331242254 768158106 824570700 549861141 736235302 183142420 984984890 508274572 996567193 72941907 901889441 559693773 318180076 771524034 325780455 666676239 807144300 64145605 173876510 350426340 765106307 321711619 832871645 699170336 464054438 767568695 670756184 85141086 376349795 20749447 92437003 245795005 716201555 690331864 172272243 317888771 128952849 539130515 590547566 706861602 41236423 443196881 407376551 939720171 858926125 954221839 428359249 700850090 587072549 387755533 181572531 884301838 379069530 69848358 629564799 324829878 38358483 476309907 316995290 810028493 680112097 604343778 375969555 34630458 164017397 979979871 829778405 231329086 858484579 367152960 199358709 143190073 6211820 693262741 479666395 300345783 880876558 888672819 686653895 213079785 601224487 189412049 777998403 894665937 148757946 469873015 987090798 203494852 962868657 702472660 91029703 250097204 618948130 245188360 787386539 409050038 686132056 226524216 47723653 999795891 642522253 931337756 777579567 73713793 668554934 291099835 884311827 665355842 689811954 619058955 971029918 632463006 528938351 267705582 531661909 436886034 338161695 186382619 566202501 282567416 886933513 140049221 636313215 856021073 757487895 635800425 656298029 915489243 443803809 789816808 710128567 431052922 208164533 350494440 928434672 592220007 316605567 176161960 423049830 67340260 27323643 620409743 729871188 454149933 23025065 300245574 415379031 698163260 621464981 740737512 978120434 826263017 608204700 65214491 837389249 606556459 218577558 614888299 170999245 512336025 173759182 73762870 741604112 887181515 965644490 612416725 803515754 905266274 739712332 44900531 462598693 719121422 807937689 368507880 455687252 939448573 727168713 997470197 378080833 165671459 638819038 12279999 846029979 738998596 781979951 857073590 706217936 832922755 519294272 814299933 832679410 854051776 248480866 58049348 723747327 308707252 273870111 665949340 660652187 363859782 843379077 876214234 514431916 162955198 434015872 76650417 614535356 717512834 550888701 679487299 999539227 685927160 11552756 320327712 7864410 400301959 941407208 919820924 665860085 689760559 124942875 824763279 581870341 895034673 885372562 402946453 106618681 101708895 116105648 749191972 285982435 42535484 262081862 93424107 642016641 697992652 738041396 889235724 964674955 191985465 923673881 189731777 507767253 297448590 824485356 872029542 875516789 522652186 588585477 295637280 421786602 143735758 957530854 602462918 563989712 577241180 867227743 660817855 182285707 48937829 525402506 883996823 897897341 768581437 167439721 486884601 434822991 958111082 501234630 641444334 480338678 492714916 87930117 901807044 438643037 640651812 152296696 6946884 786533799 271166410 897970839 661075091 589637508 462528802 473165008 138716200 231794375 880751952 616127822 988668954 127144926 300876000 522674244 91010369 16166083 973549493 733884150 759167393 331638955 926153965 582896146 528358677 260966323 438393423 490632097 921000284 431784630 314810158 733130440 431955061 323575887 198063771 119161439 555203825 138666136 140282090 184371957 446591336 277057888 959813490 45008927 147794460 150620708 19979861 337328116 409168097 443037130 27826428 938307825 286756063 608700238 52688065 676761841 842606897 58607816 469492822 811310190 925124578 669319598 449875946 622389154 329522647 777752007 787284089 458773686 498923307 817335872 91589171 704290849 776101701 734771422 944965585 509952014 46857549 777774151 126568389 587841548 264336938 347651191 83781333 691494661 606573928 422097742 449600726 817873029 875852653 882663952 859947988 34887292 998734862 235265443 199796475 431763268 152021256 788835048 719896350 78816910 982378798 21925147 705756108 648068406 405323982 381833490 627520129 324354664 404192926 527994763 666885983 970994416 219641137 729461500 983424617 732608453 855833038 218648545 536508777 641807988 964529277 660011265 799786412 701405642 363029362 128416760 100438272 293741545 11125424 405093361 781512860 785759982 218731717 891201194 773746692 111193924 617100228 648357163 330845270 324196310 47151102 586206563 640695881 621987054 647720638 236346921 868596655 151212823 451790457 549868428 938538892 65374644 950222746 865839861 566930429 621157247 85852867 465918784 967593808 334746277 24770209 993922279 623878417 131038028 47066224 29750218 109118531 714482465 656185318 118974672 328937040 562365745 79802605 912069723 773869299 541412888 826744300 443569660 965597325 751579437 745136550 720355814 512421905 959633451 848625354 655451634 493275098 227805814 251237812 342437752 934233270 60792227 186654510 944914305 364953824 186740606 13478229 589956836 670291812 816058856 900797073 638447693 587901091 177613844 423061137 209865265 37634443 686211054 847533301 925115401 660392950 812541449 29123550 646331669 268289329 489552349 769063638 836800345 693155213 287498236 51327942 75192989 958037508 43346401 361192579 620348114 11364482 987475114 828866697 736730252 796318837 985030565 878764297 276572680 320293310 867951160 261943183 213995972 335206704 808636197 988418309 316619142 926908376 33091657 419060343 766484582 620039884 275833347 965016508 338010702 325599782 322551399 347269783 550689497 425615740 774100852 983729919 838197722 922606801 650611662 988443277 204026309 635634809 450533204 158082098 245688539 591597854 717820086 63983936 789151478 751833241 891100443 587092180 66343821 480653742 553937189 499236987 400108973 803603437 172430150 815698288 761577600 896382972 94270055 785590478 98050945 541210942 500140252 871263163 460382481 596088119 864700836 578997481 381264692 247914770 37269190 119737291 334319924 865641332 376057453 282089957 925279170 631076504 620465016 557146661 6983544 276096741 462072359 565306766 252059745 763814691 482026258 750635070 173865525 275833586 931595055 321498772 491591970 617852125 568368957 549692966 766292360 921051352 97922914 593233909 240657089 441711718 782394878 120331167 171680818 16432121 579142588 258382963 781401626 854528370 779820160 256214074 85830994 95141853 983280812 546881506 566707377 847343840 655966209 695512391 269148029 688857320 954912695 756727839 147001504 359251363 785451774 400333985 102834138 629122895 708876537 967206190 742308487 966571715 850609665 716333692 33179121 540158377 244605577 395798010 272908783 291106539 30864338 796033799 583016813 129066719 348673241 148708813 796021035 860005033 593880155 920503826 935517585 283501833 759793354 981505392 754748667 19198939 58760266 479291218 189826085 583402564 52865184 254568387 384836633 313178323 674565504 216003270 544264066 435726853 191526888 367018367 458752837 907346888 890667965 357454934 577928811 182161707 817548106 650015642 664291769 458244714 982153486 264142177 523541764 820441015 557161457 565591003 872903704 759354127 199943449 896672998 490637409 843858828 23003815 500997592 681084555 852991331 613254480 197668212 182861778 253559862 606488799 199080081 119281168 535169399 379334989 535057045 387399408 186755657 6100094 650851036 252680729 377369028 450294692 452759466 335641631 267984042 573142215 213258503 844542301 348921909 967168735 579164435 99400264 472128374 310962569 616927118 376760360 422774985 489230259 485934534 722562617 220337615 775300427 266635024 301783188 171932349 928179338 94427040 137191786 944295074 787540072 886180177 326949726 534869937 244000955 659358575 513516716 37145120 287938003 66608084 609143231 207556881 618475140 358580266 767801696 858819906 281007956 485793883 95622072 345082307 107612596 109109854 564045252 108856380 510998527 334289099 474697633 636544905 838944335 18226657 227469790 135973326 700425688 936155210 455027747 684001976 818782722 932944885 277677891 770861114 656902430 687990115 908142339 961053857 629211837 746299431 39732643 307308543 565749923 994713537 948721289 533330536 172163749 294761033 627196924 416906057 830221443 835563552 841609064 210933373 477122177 877728502 240276020 311996035 260032411 938103118 196700025 917539950 997246634 599861879 860193073 392610207 978252993 488359253 496766120 334466741 221057884 624897746 480800942 537201020 464659346 924639527 222299219 642992681 484625990 747695989 522425075 498027976 488381933 179328402 221265146 807076775 986902280 379251162 205548864 776178146 854969055 338071776 224354228 735569007 713457254 538628745 412192221 209448643 71511879 18879155 933746820 356891676 446527297 621848582 510004430 623028448 269858698 727815131 502190276 485229358 57313219 712520675 795497488 541141321 647685191 247680904 426653297 1296639 819711122 852347005 577853837 760795545 855549979 14607684 570931376 948726757 852701096 794179391 915454712 594820987 930849547 208733580 201070612 747365323 60891722 967793503 165165151 998437357 476526857 540545252 98279115 524191732 50005375 300667411 537160991 971186829 193671234 857410534 245195344 468171991 999481781 525852964 825034976 162524929 688025156 417462918 84322140 518433822 8854075 907034217 509513020 369870731 824921243 679975710 903006220 788398646 6500862 100860805 764141020 375832745 710867208 272428810 308865501 291675646 590271526 958526880 257454259 362433953 384017474 791161638 692180748 521718890 116970062 797166637 770567867 320273009 576098191 697844034 818759825 820983560 884698883 177544030 570324448 432744720 25576799 711323387 780497667 253916833 271990307 332365065 183590399 483039561 951392098 419247594 488497327 282243460 997030628 483825824 820427988 133887647 941744405 766965666 120607002 619587201 49524628 123324965 541456919 992810722 996480551 641244211 394048748 489376802 742114962 401051090 983096722 555140628 335567196 242985044 271953190 159948365 913916738 785725455 727756421 748777002 197030094 213919835 466586301 767926525 512385571 590818549 756598875 422073852 93985477 616705206 381699907 206434531 902046134 311687644 753691963 405608712 621708610 407770444 141352768 800693102 123144740 972269247 588420751 692718053 529424110 14102767 789592130 230363463 82424635 420722565 359923035 861220575 637221647 660411133 119584632 394880908 707740375 67399638 482241333 293246205 292443094 960686436 658513889 553061290 155464750 704897021 319900989 999902800 413097362 171298641 841461885 490166926 116032667 393878047 604697109 593967806 972884460 891496031 210867030 395042473 504598445 153831562 948769305 2969802 996597499 100436879 124259535 548127712 495532836 456118126 47117919 595452859 337226578 557201398 535328027 443605152 724240612 806542548 789293767 984815764 270244268 728472535 424565885 437440383 579340165 834427882 222581214 62702786 850957486 474703481 956834449 73573825 967346538 790229590 429832381 645120677 149592642 832606219 912753401 667984340 800809203 191660180 908312155 871751769 128923868 652695488 22552879 825911338 355663013 691234200 193423045 541255481 851492348 345940515 363377329 316707092 596281192 557862996 971201629 53825609 259182374 961003835 427204612 418211746 525204351 711902360 210452029 786982602 63145294 330562755 235191856 511048652 845334161 217484925 632323318 489421153 950129837 913572701 826338965 602103061 726131508 372436056 437338183 654806010 302108404 130938905 330006962 929511581 494208858 734276953 995609439 418546060 562494162 784605821 644682666 187054073 510429826 412870795 856780837 628097921 357509059 39494674 417631017 828078610 343189132 911127024 73112282 70522205 502903103 559767312 809543030 14486833 166945929 830480726 534430150 611390893 897429896 160271850 192045102 957308700 388007899 277216062 224544586 558813008 323318365 866040034 806767787 987933511 173600059 674554895 918094141 365470886 481819287 86831668 919135850 656043668 170271241 863737467 454516025 907834763 612376461 273479956 57262524 829512127 933347093 146018342 463983328 251471542 557581468 560186841 664267710 451610992 314595695 555382922 544273509 936903019 476136972 272781401 214788981 433490637 542787840 388970819 247010185 378306430 128598710 599845421 877192753 423864870 196388020 205874130 651737616 37870526 734652311 554952817 195989576 469860654 49471586 843192528 929192421 23477414 506026295 506502079 559156841 125892374 226020894 934207054 911433898 172170397 442914749 883541871 368367118 658985660 501683445 382962362 758922773 724865645 767344087 639081541 978943554 326311291 377283921 21225877 730555818 914695811 381825164 611041429 228627200 13136445 507089111 855456926 732111333 32173575 802527977 836301247 888432431 681850390 720348985 282298723 903134022 768217343 998409327 380263250 893829743 168251612 442027316 423915071 993589268 443239081 69422217 547935529 822636116 209516304 747811525 873810661 224385526 542987861 75245226 459271163 968656532 255664088 511618278 919067543 236820323 761350629 107786922 955474189 254393142 36082607 366991851 43934205 759777884 624111959 178220798 475381605 960763441 464134614 426070459 262655410 799683963 509321322 445304904 924575113 807752024 862642841 212768233 121025783 767243839 783840 813568476 387110698 200984014 949823561 944953153 56606529 10742556 644219971 832866725 878407851 866532543 473237726 230215809 853048394 376344205 782122424 755995034 448791551 452242030 611795441 499090673 702689053 630527517 35661175 129252929 764806325 854942127 297948311 710394634 170617895 238005362 277928834 860027779 967038733 820355669 789676138 521967931 397592659 618035324 175109986 555522220 402843083 558611567 895370071 299308873 347308185 347475245 380371397 36324732 134968117 191554722 465762859 943070375 820293285 717659222 313947145 145924050 950312722 475459040 129389452 333100898 855298909 270604804 909408692 122710498 727317726 661924063 112081629 379321382 66163725 810971648 286037680 616096331 863663242 29851059 909032177 146796254 428007711 180255584 87965437 414349096 300478149 232121610 599670972 685193633 134256497 385897179 912783072 751646859 62484364 536859669 532398642 314817725 342706924 911182088 388703083 571990755 651946678 405126469 675589708 409487367 138661778 679657267 948665277 98995028 649342841 407381716 315601416 712285641 121892582 881136064 272730714 286199049 664939733 815296439 117523020 235462896 146294822 144227125 609251318 236656246 848549296 219087376 265938825 147382736 494174672 13683543 662434917 792254991 569318069 76740871 172778651 248530992 103259149 556331461 781547610 602631738 867432734 172072393 615748916 405202235 936881168 522300988 288082538 300916408 721272876 385192865 478263194 718436541 977874294 772323643 628125038 195388051 739932599 532801629 619548329 590588926 869766978 395843000 65292584 817027943 977125713 965849015 972341813 771980640 886790167 366550258 646045064 261104228 386510988 4708131 763897004 892422534 827309 594138449 860059203 248412579 606854374 544298622 917623328 717819508 531813845 487495357 268341831 85662542 967195511 871757318 776079886 146493000 697484329 318650611 79371127 694085790 903981151 52182532 393445844 843322083 616863066 582749541 931435974 119588225 336509319 145302652 495240614 381085668 97380539 569521921 340608619 749242777 380199019 387565547 224231458 290021437 589595010 126826410 283159426 831043911 241492293 820272340 282630130 341038251 876938668 954267839 208976843 475497635 666032389 860378250 428893372 367687390 85996338 351689376 185077946 973536769 179792398 434804634 532903546 766721889 433592858 573221349 83133219 340970482 428801641 656691771 266527122 898724055 287869873 389596342 739035591 417674533 309530171 47136559 327657723 480421365 339143083 22975237 869042306 903727323 207770910 156871288 612796492 866189043 42161483 841985374 884835531 639359843 899300406 781998756 883934627 403843606 808283424 814675559 838225163 471106910 742338213 689822008 297840877 563793122 490880525 98807007 515039975 475473515 468564897 690911709 847476533 982578474 348659340 337344291 604736377 32934184 408113820 720355905 961501534 245141557 627944755 284111633 58342814 611077997 189649730 217814347 583664544 700557307 870280798 759741456 858385542 987891756 841966624 552688619 942103681 462582837 983677668 508905314 941387177 681316085 884032012 143889247 840392956 524945305 967477381 91883073 652384949 100725973 912951743 554318599 384626176 522651368 137417891 564670485 824387817 23542000 804691522 251561843 389013587 5294994 960165235 28802374 210255638 918374416 165749031 927571735 772857936 46625584 107248204 409839603 686329473 15203156 181045365 843345609 576620610 961396547 103208546 830254386 76943042 187736029 208032378 419414538 14758452 773514084 313986540 415678083 398436214 216465960 666837816 843591594 601825932 317052122 528991319 668764278 815159006 219108925 336040321 663044808 553890144 113941160 324804234 907887371 515712122 274890123 293350198 750806768 333343364 833206899 348948797 779649747 788752139 990327009 845518024 583745487 398019980 356901406 993547281 124732346 522476137 824935907 762615988 664903949 202223590 518734376 418571984 416080607 722851554 504358147 216051116 45447823 886763554 719024530 415388967 2799155 951961521 203082384 176324384 730794354 502000904 885636751 209376119 526852767 772482783 998354721 785902790 974341081 820986179 255768872 227310726 491125779 698212757 421735488 753821468 840956368 499576466 724350166 615322074 769742319 185629835 960405747 137203421 512849868 255870989 268172167 6771918 790714550 211040220 310534680 177786897 242699784 318849354 771023589 223036265 219299665 292850031 333608750 407174154 963660945 290629913 991090965 533997698 584651502 689670429 520963632 479830943 424778326 442372473 472044277 494488442 318123268 122715255 696467582 279324870 25843764 788849572 396248848 435301744 729994115 53378023 221701504 641011486 788509997 236942560 217753911 526813548 881408846 437613229 905300431 397789906 838591184 207370235 396919819 949157400 749033101 80551259 226128093 685216886 488617146 375652643 190536600 721201921 360120640 861286755 475333045 973282406 400468533 947712621 868785327 3057067 907446163 304487039 458408614 840023101 413505259 978720736 428345528 799477820 896635241 8015749 216762233 78158904 224107950 825276603 77856608 763134563 456198892 123347637 459050652 192480695 802655233 96277917 584756628 291942988 998651811 851438707 69125866 42463128 822725487 506388869 621283304 549012148 552020563 641030117 857353643 691514025 464316130 223150571 608410241 618264828 283484101 228389003 412195287 626825083 475207393 653722707 827895099 126113912 981509695 979830806 332899813 642128540 534908369 19674231 925707366 857888244 840301991 206405998 950706180 639851549 969835235 534785029 952445878 504558642 639238245 98807092 691421078 816864923 906090375 484678662 222447666 319487709 693331213 212764404 19597360 793042288 575565941 498112619 224078145 831515060 131861567 170815694 723067168 557423380 42477650 105941393 560004685 532518898 550001308 426507009 457942440 361828242 930303216 390993980 956673683 710117856 301790809 353256221 512297852 309305408 956400850 917977846 211396834 396867601 800311707 179820007 833016950 308176905 761293543 726089498 586709126 698363954 552559432 569884712 307217749 771718314 311068198 611244350 125545945 235317641 216787975 939421165 301848293 301642949 767739843 168719300 25848490 715599660 504531086 997358209 668649449 427258379 447413676 772055919 783944367 357121196 750709526 629534422 656775266 221175321 668616432 303065433 952690786 887700636 222546279 146951985 571457994 76291342 578385700 118417169 138394082 547229244 52238825 161693277 202002671 70609439 770491297 200447031 358238566 808873659 611011995 531176666 339545586 421852141 353040092 763460277 335491739 926938812 646797887 621353603 218732054 972242501 983469297 430776659 672878092 853927315 271983825 566489166 510506852 466170582 519746105 144865558 879342660 746242072 612777346 682642500 697667385 400492603 626955549 417966505 270452923 84611749 810404456 460488158 59858418 846392709 254812896 320391445 623194417 19710635 267545626 217303593 756335588 927431299 419325810 192836293 765610620 895397514 359239096 38906128 536079014 955783913 219587103 416924130 45715761 277446066 246818990 635434248 633267076 951498581 628290886 420730638 876063459 894952173 504602984 642677856 344647700 614150069 237578796 583421863 289860113 569464742 841797370 665260003 908790028 364477218 504908140 44690349 980457008 77359752 127340045 218564180 688545745 933690086 734204853 147661979 831714977 718017263 334144730 838764246 830437521 992541472 449312013 770438231 907670646 316922000 216948951 757664708 184319744 681712826 826433609 934769485 790874233 648029018 648015583 41096194 499844974 443972684 517932212 667223018 459389711 428008147 329412561 790374951 631395327 68437238 495236121 247489400 488286407 323576008 536092043 524861783 526682145 368273136 122339753 546756703 804916823 738515076 180479641 603496420 393201621 766603748 893974406 402174232 848384769 152994267 963779524 814213004 77554395 554700804 495145054 604192246 588929572 900831673 134447783 57504420 94131050 516078042 496975781 823437457 970001759 66738037 506694350 811174160 88080691 661861702 563169350 300367215 706481285 382207639 677842057 294387298 988711856 193627131 618234089 769260897 237009525 926476391 236296851 362120167 890779314 654962189 935615574 229934145 996752857 535963789 634298019 614959489 752755281 359862125 338381523 335902649 725194761 604973532 448251426 198411624 312744254 371547469 188651197 113979354 531060071 237602336 668336785 861804921 225751587 653007461 40321405 974701421 731551589 145018854 733271492 453375907 23838825 965491701 488850341 222837899 400380974 500193522 106218080 714715268 255299697 660930968 66562103 425505195 480411940 560459190 321029679 37461670 292346246 26280613 711404490 932133144 380341301 239646091 275085961 851929382 846816748 542803384 232481683 283073623 618659589 484880675 881246364 478100261 480019305 114186064 902926343 281622689 178904118 770475504 728600754 927774414 835624285 389687230 195760275 85325285 75540077 972084559 238796306 137972720 122332715 726877964 568333611 815597477 586489692 762250516 554271712 981604041 132913983 751974389 446712438 977194708 809313209 113596019 90254134 815373861 375433747 487596591 636444914 703040425 586016924 825194957 226962859 917428538 280687515 513112523 800406289 333598560 383261890 490169153 860887731 2321302 830640707 16923455 305979988 337961179 890229007 279850690 596033162 131008176 254632523 711046711 462117419 587981614 271217435 650423507 406829737 667140178 574197268 407723499 923325374 759777986 168911046 624028270 721659857 211230333 391348087 638964545 346460572 497413286 729470438 639722267 47877101 929924912 825612511 51590527 872274249 342168973 868065041 770520483 401949983 560050013 255798434 788020011 964579055 152389390 142614660 456478241 965465580 313138733 575992774 889790232 390179358 279077315 35051946 184684851 487515876 153891424 724590982 262350448 559082193 752948743 978773378 143188563 352258817 403582988 105315663 602795366 867431445 495574818 350043352 329753832 997116829 174770778 242438600 53147305 212802536 121114083 765518927 569314339 731014026 174609007 598255213 58578589 151607126 847684876 91450430 346887506 861090959 581346695 927407830 408916008 477970881 840746962 945269655 423654740 175673043 654561901 790240729 670619743 244433725 95825591 474987901 312151745 309645148 785798708 688676845 814817098 346001530 928390668 265312493 429477693 690278962 839533914 599122927 936085156 757451981 457004202 477353943 553567378 791464895 320826048 302723898 130984154 964535119 585900023 131316368 804741454 249553281 531607311 487775461 667166191 971032654 377246271 472249858 270703961 728679294 201868475 898727041 629514923 921549170 674711911 912107679 599384094 272741741 227228663 895031155 799686183 796049288 619712509 95117320 323864006 964466783 196713911 841882287 915081489 533353219 648505298 258059211 281752914 234833696 375533752 371742223 193294939 434781776 152732811 720455138 14490639 2015542 617763484 77691013 219683756 291231193 625139463 596165860 849861593 799590458 325922246 139480032 781232423 398775577 73485420 767744733 350925167 152186188 713682405 816039752 90370606 289756780 855293296 430474651 383688545 339888647 201479873 979233886 651547244 640531359 612709566 614919683 80294966 342498950 79344088 844754496 704074037 74874639 785670533 282727338 408640911 269365727 560770146 828724006 716788680 31305091 969587499 8803196 388841490 893395114 933141887 205712356 484771267 197342571 352514807 960316751 46998317 698105865 726088860 549257804 484025300 493633609 474160966 459921160 995172860 300977193 480791272 690978675 715991627 975125176 552831089 983452878 577132275 970354419 221100919 159900118 832410681 741086404 301525358 435765373 416514083 940845122 44469269 73502760 337653440 127283843 817971893 979920516 162749243 265577311 129463662 506730688 826640913 882215583 310279471 332931092 845491170 881811745 905319780 117947917 384429533 938284498 299165489 464827759 969822929 477208259 903919815 745526410 408786670 8309249 803252909 52874957 720443999 284923031 216286740 705918485 279109300 418072588 366663809 309174932 674257421 541038256 706440944 356916680 738886969 131389223 856576080 808075415 706970160 901002323 300657042 613654288 150105206 159150656 419632608 21237 205291797 139390449 982946237 396713284 410431412 161507163 896159172 112876327 899519758 175524255 660962506 517054758 758893367 326079427 269428386 295412444 464433459 835017936 120420272 824496008 523563141 138534246 340403784 880386099 987905002 966715705 742268335 486270265 908747901 926256558 427512092 933084933 135744489 952817751 676152231 913642686 209644061 988876300 419255694 83065749 850728209 409660448 847807063 221846948 306660505 971910001 847471643 394190987 760305525 156247593 898713943 489438764 836468111 135802781 774550181 345865310 409915732 927981469 815695457 155625750 188998007 463774849 353014922 215403604 507159255 299399748 189847504 215284845 18348175 910578812 181337979 352961486 73635650 798461884 617583914 592623385 374465023 213508788 710351839 141037044 104207829 893185857 356322730 378248928 317823563 840801562 65797227 854517835 791715831 270161518 442325443 120823238 810108262 21478935 672316952 275724283 488421505 697086545 172584251 451685319 553736057 136323652 995564752 71882674 998005922 293483001 873174775 879733705 942456028 76770334 223241049 203757296 636966290 228764633 858637814 944667313 677306307 638777474 94857734 621877682 791583957 944217527 802185716 510411773 799313445 328536464 132147444 509531335 378068007 87591665 491090875 806694242 556487884 756565569 542343790 605006557 354680342 181689473 84025061 935629492 962346485 710421523 422738202 554048574 907137011 907739763 920782040 530919845 9063439 2970421 930387629 843795324 789443873 512485208 398472269 791396931 564114003 454140452 902370208 913193425 578294889 7536606 625966637 926960863 361367376 901482692 344751942 654069128 484726844 498562875 774607012 687332016 810393080 746735972 146818854 32517639 433125517 632159590 377372007 382441519 476230381 372619267 202259744 552674876 313906071 985923242 152211359 383753557 451095018 331898757 353587825 117490978 407993067 865201146 557261293 261297483 815215129 586093407 596844287 67432124 620247998 682693546 590993356 167037343 710611380 29237053 751733524 731993954 700410046 290682990 60657981 192542413 647379165 586041319 350871730 924177196 448656403 761822867 624207713 707815599 691968478 724428035 199511536 338528206 534900822 647775085 183208989 569769919 306471759 540069526 698623634 199002835 4371181 719496837 936055759 986059066 688407159 345687448 396022006 211951204 916534404 451451787 464063585 251779563 104061913 851846559 88956456 650691132 224410925 425067282 292988590 311423847 638162806 442244276 955365858 3232335 862940882 453536681 754945176 784344227 781461354 78726625 746363396 951585330 319647578 700852319 412507093 933480454 887708976 488472453 447827293 140304163 560526510 630190912 435265955 266394760 593906845 948058756 737556891 540630440 599027378 616261478 271055953 53242014 494745640 167783213 372034989 514014410 687608249 539279485 588644950 871008136 290770514 727582201 810113032 930766858 557642550 922704923 243670485 468330380 133079806 196555449 134508722 172301441 9752192 567764414 434698890 295901917 736501304 482247342 799286419 715958383 462709041 255028185 736573380 317550120 868395982 710717776 318901188 525456486 794400469 489223920 485522909 226303105 795906665 971082666 307305977 669870619 937596587 772238641 851223082 564872984 776715662 852374359 63375858 401852516 190442506 50407352 973167850 395675930 321898956 649648191 781313513 298404488 318037089 155676880 230206293 734546901 66932169 241539826 887366517 904500677 873515036 548334084 933587535 857641613 628799020 406926624 561386189 112760254 406532056 948559348 336532592 46080572 174752150 431520931 144133519 571427868 734926658 920921936 942389506 338296170 426048495 156492493 383286032 51210474 1293169 241612983 819809930 162863292 355967863 100699078 763082223 51373738 286564416 921438681 288417042 278158636 135782145 402272327 62305790 899810648 785592764 389504932 194298734 676476562 798408909 7631658 721770 965391878 974484599 234443094 560326140 722835656 534731112 852107408 629885313 430786521 962262627 684566858 617165669 71786283 221888744 633850927 109414392 618828821 269740612 653282055 578128755 82551213 818580441 164115053 53634149 212620250 805703841 659742892 868705905 376532547 51617954 631398874 357513579 839999950 963553766 59549455 749968380 522799989 256916502 59085571 715824914 685637955 106385927 334643954 385270720 190865927 727226829 991565321 683915427 689237182 922126687 39875461 490908170 404121594 503345571 836734816 338006608 890855101 255403695 352972556 171055307 783283211 661361400 892603860 284320622 682830198 477904529 909062767 658202230 906329392 63835234 545183328 899872973 570743853 332578521 853907025 347302077 425487535 555343818 925468554 172865726 553549927 729886164 523905028 520614718 580311716 775635851 903111718 664251403 50430339 696000045 677007348 928785206 229455755 859070606 973193429 590452665 19640510 908304754 652088967 853903835 219160720 919051528 639257649 544311341 941009032 649347661 3441318 3452361 797982680 328480011 842016131 705569526 40537969 727179152 748348858 407042429 514703699 157550796 533577678 801899954 838085451 454370925 947404106 127649782 458037690 844917091 157503121 888997715 500988263 538532540 599666548 791770505 50049816 370785698 626327371 964647447 150614609 970446541 329899996 384848584 715890308 579134050 489951943 752327783 900061507 935319955 442591879 495072753 881383597 724172763 241786391 361772635 341524852 190132121 998484439 27994243 471946073 594693435 523685742 723631172 895420880 762328350 456208033 795983706 417120086 190307495 872165712 741238265 334294361 964274784 480345714 954498100 83429826 659554121 390561181 31409893 956221142 276661163 515309201 394757478 548882413 629932886 550089004 615560882 185097974 499642498 452751578 973449216 577700765 664874861 73112581 730693132 971411567 918975166 353979135 514151255 542833375 721801621 633244330 642370815 245193716 454326662 220509624 643507310 142460921 502152013 792865458 871718863 637542654 416209892 14366020 946421349 308396471 584463943 105676229 308741957 480808765 270383276 440186376 743688837 23593057 929834526 666289884 760541778 659513825 259738890 579270650 601408630 445129494 356245922 480802023 535478217 112391246 524593227 952476393 57007989 36484888 953826820 878977973 570790942 185642685 29500487 748352299 122875893 301064429 977267755 463795920 645840877 561525484 3551391 773663090 888939263 276443542 274212602 403283757 607438030 509245412 566652480 760858342 737627986 774780673 608689526 742882488 142602931 41171444 933645387 224463258 239603321 661128162 549305290 417285531 588919867 604524656 642881032 845962886 388974795 816767947 176550519 891488736 131126489 210315936 745337006 886184930 241700266 549060670 313032486 503544127 14202513 226524291 277489015 431124110 860837912 321535959 987533520 106227181 674358271 915650848 386991941 905187910 445755218 145191124 929949784 201118139 983793824 374466573 603957569 584176001 806997961 730292067 862780690 582873402 713509930 212225356 520071873 13090254 229934034 452992895 940324039 869351480 767829461 126931226 559804607 919542633 686736034 988575617 867738885 481190465 537793758 480089847 850906614 285340934 527341983 669785168 568544010 579053849 657582825 5752350 991395701 914309324 108462280 251646227 77786554 366490432 648062239 993116733 841016562 975240063 297286501 111309729 722649179 294941475 397021480 337969193 340124256 298635377 64068191 915029285 572887597 404711138 209437493 440624533 495185845 949752574 977301525 858714551 856618487 459705997 118648851 919474009 372920578 326016124 459224952 122187929 234456329 674524477 674924992 67079022 969864788 97623728 857071953 759635920 263721878 47082880 209527477 259640012 590302325 133710030 155223356 395037055 681701846 739821763 760989600 811994678 579505545 896321180 214003029 905726622 996999491 109510358 179250236 852868880 579027310 906790006 316994613 835313056 632411919 693600959 269937792 831478210 781996706 638620367 944146913 515179467 621356694 865923202 479782985 509638211 963070536 665235255 200983533 889388672 158653855 292657281 228909900 299117295 496534718 243939107 8166927 12600178 125790227 416248932 549568125 288760731 694194183 803830796 191044694 573955468 904357294 337506887 491668140 59044020 596576455 326959594 268588034 400242205 810352949 50157244 186498513 286390730 103482652 736051553 187924003 737271784 596547007 98621344 791529218 806454386 194521648 921213218 33650749 762551546 959821943 381537508 560899955 45937950 828926899 225945829 565629094 318607139 272170453 567032098 384515607 462331282 954942704 430002210 831806449 987375128 114270697 298427806 283728854 581495517 972253527 105253971 754539285 562937662 242138339 645477109 511084327 264357370 699220765 703922865 301567455 860224493 330659819 894786787 282279985 424491463 263663038 679153652 804723604 348732870 785142663 425255884 278556438 922028116 188096918 567655704 417729033 188521221 234137520 448960249 888106561 227105448 106877687 775701895 828251353 965986919 123108696 946138728 68513664 702838438 347889766 664894362 887176401 811109012 265269762 815243414 29445142 504567245 186673592 97913218 808010477 321478519 655355164 900970071 456578310 559569822 289201047 906571080 274171974 842125027 649350241 149045050 981077981 32516208 961869474 70384429 858471202 662720818 223543185 427360485 367870587 698855429 587757635 916438145 272659859 964691021 607854355 367042103 872550551 66862917 887077578 703033389 611114533 488024577 719071464 62259903 213750401 904567426 678222930 2929044 895336389 390770275 120429079 490468399 812540615 900920037 360420436 786969077 636217955 131482325 182691663 309956524 883525043 739227182 602340346 691149691 89149137 865636686 685944622 600117974 981212730 962975681 475957200 877469560 810653513 459492403 72572320 765646061 350733628 595359224 494286341 629801479 493199932 955993654 92781021 280086963 950627815 43810452 868809321 121029235 36064741 562110533 572576263 163149252 833691249 880800769 94583382 588933643 72191308 852437586 196075268 697676030 197589836 325616328 964868657 881639111 430956766 183966966 81842273 599382422 820149903 606336137 476998633 540969676 147763087 638632940 27402504 742026067 502633543 811730095 853716072 438042227 663212037 153991836 227735243 34976745 284241895 544920245 530654298 319694715 45923755 462396609 424756720 383135914 232975551 787681010 153605069 613947375 749103588 673727760 321865640 30025377 581054687 265848799 132834594 654048543 848586047 89088236 621763612 507218418 937134342 377959438 591646647 474137480 255422185 20872860 572835342 156887080 923525437 944204803 802747048 728879674 871187503 295992427 6290943 730407619 567053378 112878344 15433245 271406451 223519693 504116665 831876650 664062641 450224506 394380798 989393115 711083880 660435717 185725247 376658222 145017610 70974104 903675116 775630344 545805270 737648083 897594939 760841869 253112651 212362522 383818648 739246489 333257183 80492603 524835356 960755185 313726939 844284792 266664243 128037222 778111280 997972705 671394946 271689264 209311502 98299447 332347963 784990044 901155303 555594876 563326723 206351474 869981220 703836489 70068993 477436702 930998740 105485639 100606051 218009681 14857911 859179321 266666311 10910453 804755930 472596140 604868520 930375555 984507410 712516457 186063136 793998824 971116406 403229264 233410516 501770863 4428038 234997400 173379488 14157967 945214487 501222378 911925284 502984107 389250059 393707682 405351661 982534661 107998687 783951420 481439094 187259258 336617035 607233929 713189105 954650451 258630713 98100308 237707285 595883285 295864232 730807332 361798204 762378206 417125439 5470827 624408171 472145208 436320229 223026957 814405614 187152604 293306779 846042299 645795063 485759175 91264230 908716749 452428621 906898334 208554858 160138751 218306305 566762 322971941 965713579 776324324 848357838 992983862 78553597 272704836 893970829 988781469 730268059 618179017 207371976 642414293 84562467 924637567 352297413 504317510 44116190 121783293 917152756 113235198 103187075 436479810 615838604 711561646 545227336 640818793 27007459 846352675 450075337 333250508 313586319 570101790 539530411 623351055 830012590 512348571 614132584 701399319 182079633 187618878 703200392 197962973 621246576 492626905 738296644 245929387 742958307 650024906 864652491 539801148 750737574 192680392 404994681 370495626 107635327 507211166 442691835 433320418 162290538 893647197 870402202 545681757 106914470 859288814 276328322 431083739 106829908 339233866 185202210 761885387 48523462 443273254 169654467 968663858 103972934 322411625 680174372 377573220 251348458 523437171 451420179 250152920 549569701 82338461 141694245 456340802 552622216 876381354 556510537 58504714 643822261 407076634 949781623 450187130 736671634 809054105 786186097 240718612 406434790 500882183 739850026 296901966 113359244 237878272 59824065 485725716 831868784 856818910 491921667 265500016 930311677 480520522 985426051 298804212 421841880 322631773 200334414 942308580 209329928 856326308 743747911 276629711 660159620 714110597 872635652 384051234 300932340 887136105 824184269 245428663 936247329 169067860 188172664 29776094 649163333 935465035 661639147 652512907 740469509 159679392 118010475 179096817 473889236 662345071 15161654 482235415 923989972 347951560 717234641 442525599 970739116 560048770 387490559 528524725 365577494 858153707 345405579 914704916 706025790 884627457 248779779 970205832 782627872 265222084 477656598 418162735 737363869 46794637 542777406 369485866 259347555 529623486 589567307 412662229 770187420 891730984 379796278 525726258 216541952 852062912 896736839 168149947 571664598 430603951 82100556 313302432 697979338 102240837 397260489 390692185 451743079 691919869 855055565 341036793 814107662 646326215 243993204 491157870 820821585 377274070 860436684 923279241 871760099 114221283 795878232 452542766 592331435 977958745 736219059 879036175 30449796 276090150 916339664 557199565 418216459 394993456 662099419 65481315 196795883 678916938 619152879 538601375 609412389 721481161 999099604 267428573 22194866 595304471 785429008 247384362 89983629 468288072 547427800 271609444 472229090 94999920 386415295 405672161 53171115 335176685 635002972 506593694 312065286 387518952 66626523 337083482 418202084 55442663 521525064 226112887 815837581 88396748 717069752 662140387 469295961 490303799 631856568 396719772 661430096 998988685 846454245 794681976 909874320 628831291 958067963 924044237 242997021 800251538 568277724 959821298 248943714 377642447 804991241 23144658 733476103 795484222 523551399 257833635 966903022 158786319 311594408 908274932 499773369 535805968 845169442 216444872 659929846 483395492 279506422 635089436 882141753 942541361 328703113 732653582 821793533 649163549 167700926 528969538 215602316 18827747 86517238 960422673 384006400 762773756 337293902 277539060 874279249 289721564 61198395 896311026 436300439 649738019 867156706 205483915 706330948 544915583 575586880 878524288 671160718 933039707 947725025 312252418 484744130 835274168 955328150 185359506 380767591 399304227 882008273 953274647 754336527 846424842 628769941 487361053 33450275 686791686 377740241 335081846 224839590 521942642 920794011 955281003 723770529 214445077 837277085 275920333 662172048 657451670 618756071 816427136 203244398 891304292 707991712 692936149 274368193 505934332 802056000 707857213 527293360 138361248 382894226 654995587 623520040 191919901 221863232 562601137 141018297 386661302 491443835 331972529 349573979 799970627 23988586 896775965 251438113 5938461 845839535 138023369 187254339 220474324 539263394 598760058 855819695 33905670 257552042 586204170 111762157 779013098 509407589 570235370 38593769 20422832 333028842 77967012 824952736 389375018 272008163 479904619 315919751 739815807 212896598 197181919 861489397 123659948 437419998 207464873 387934317 120809027 287987724 706155803 558988246 503036544 790837 261039849 626860122 111612461 133619952 313508946 486669772 165187874 774452089 53638833 237161634 334903875 484673269 193517145 585190386 64590126 664874304 406781732 362740308 255839142 32714437 649036223 412784535 642560482 684362155 714097859 196027122 497026931 473003403 431154505 335577675 388894565 86020259 406066883 691957825 708639643 540948641 317785344 303221617 897661791 823589223 850715097 153222926 537232765 126765164 299946911 76520754 429617862 696537894 152541691 202669048 868982479 658352692 305126756 560923810 227561066 637388356 821383736 787693468 852231707 139780314 62329965 394276531 977452423 195643430 724440311 613866259 802853614 784619587 811150256 951268808 2723880 266511035 471085727 303327187 649171043 67929133 255026578 859932113 469301837 730735229 37358572 272136110 892404203 171007359 526980614 983829543 232779388 741286544 788816657 52188296 967568687 307953067 777873183 755141337 861022426 224140897 512548118 789514889 949697903 253798906 308903262 651566514 911748998 581643388 772757105 611624182 611221219 82902754 229658786 290233136 326809881 406819226 411469533 401988491 943765268 415564858 460281930 297896129 550392031 429295861 497068326 260604387 392212191 524242340 589005451 527942460 770593070 126952187 547295550 163931407 723844663 995048495 650603033 267250574 208977466 521039347 898051542 880946322 166299273 840383606 806586552 235142303 386634128 876571027 647344173 586952912 385405612 575824614 433605538 179579868 722546001 860383998 780434973 536997491 328228482 354741717 126428423 538466807 933234500 421510589 205812882 676128465 208050496 334962284 840872715 490511775 165356191 641445426 259502331 760175440 76445569 671874255 297346848 946135107 527569268 798074301 459318703 997081364 863709192 277073232 154912257 971460868 10194266 576240817 141381988 619384148 452618957 65869662 479492406 711422886 650771300 584620150 771233996 315488834 849100212 77954715 874989731 137736766 395382967 466931141 298621231 915408002 63738208 852982042 710570481 963995065 457485304 11937718 212956268 802173149 349641737 282320196 808381087 861909313 295627291 555898261 788511213 893659381 957575565 185618098 797954963 287199460 76977291 162420078 270790487 646776293 404304605 165059351 595536682 181049217 557747398 568966495 749979343 775654938 37251718 422879687 729056690 722391098 787020876 715503821 964691862 362332061 471396340 123779164 206403466 320221163 178234263 785310891 56191075 897479574 636500815 7362701 461652474 150539186 188656889 314068178 458999442 835187071 186455204 578173564 263369725 115377770 675419882 576763922 641042326 385067687 950371565 797305352 273501178 774968879 367080476 631597467 766359177 662086501 736589025 416190994 303546974 168116485 138022809 908935795 686599672 407168796 821544364 524269081 231098959 44593368 845126080 153565171 563841821 401140944 273744123 425179809 998760918 625068765 800086376 822092235 1071989 976536002 874794212 431651559 497022024 295993283 785079781 184951366 810821354 206480839 588934342 963743344 994698266 435383186 890569277 100840088 459524828 205133757 530203229 424386176 221544595 759979666 954250368 617219095 665568941 438069631 679076794 843614899 916767266 697086569 346862137 327041683 694173857 706485518 106194590 980491016 925622386 276079646 755889286 161875048 723919765 621515809 68698005 527340418 197548437 423012444 636257573 686623117 453337749 950188761 719403196 892277398 769757268 904341616 17094058 90037323 194065597 19594556 432954505 154783546 349109236 982613334 158761339 902529543 362669025 403049006 795140616 804302270 82614117 711284176 577864331 612871995 436115643 773324026 276664907 529232882 859668908 952452737 604090967 384557036 198268106 696918301 547608779 674047605 912832018 45293837 344301285 240414090 104142490 838080123 756747207 58055066 842998092 363254353 958030110 284974715 955937358 729020061 120694013 26216394 332071703 17987610 14154574 849978117 333463280 444128787 947332023 764615328 905776934 602149950 756911349 733092997 741247940 844502707 521945054 729969338 393740292 211840663 292250961 427119398 266418793 966651491 890390414 697132311 872295180 155286929 475865973 485105181 474852847 976571024 13072339 792339774 102642553 551185267 198205031 975961572 861811003 414840835 495194349 311596598 105024933 425333485 309389747 351451891 527191366 913288152 619169081 737692755 864036122 943303503 530940742 788195561 467750254 480224467 374335241 521273681 12165390 693130040 733928794 346664221 499029967 827545200 683562455 566668138 324698046 656740339 379909270 606041994 900147022 458800561 401534448 626576932 697390127 366593655 21607936 637874222 747196383 568673317 746548047 166024029 745402242 282815047 160645203 131093743 100871290 682426978 313732302 490953968 164217870 627946412 329438801 2920789 911676715 482412421 16506578 524508675 726251153 19364535 304341169 389422774 561070676 736605707 254891299 675620696 109092980 781381105 350167092 113592208 239173390 582433053 53084430 711853250 822672939 355778643 822770730 287945667 991171287 194544540 369506071 530212148 9725760 615920198 712499319 777749342 347969268 633044395 988056588 774971392 525135041 326558513 16146139 270798253 397633322 33146452 389445101 900108656 991847282 89139123 321769045 242355309 388281922 366104911 3669141 371965675 517220374 992919242 245401833 535428726 263720210 196847620 858606918 85904959 677685009 267619408 988445277 129962657 447691814 395428890 452382733 51453831 463220908 930910192 238823929 647368266 286329506 946445131 562228338 688434960 844966312 530730792 803974350 62764537 154347244 115186660 529107981 962121267 777729757 77063479 232663447 834191917 38761762 235877900 66406040 262432200 509081988 89248027 878401934 282577007 53864939 541487819 301214699 138628282 689656249 666955662 835258221 234997803 410987995 474746968 721195931 979170824 545954050 472346944 73471526 880466904 225676866 594666946 794682798 67963567 703153772 735293692 731150094 488794561 214977948 6187040 449744341 811475746 153442698 214763874 511963202 153152120 66064327 589173747 604660897 83929321 535378339 131677338 579571792 716077314 390402184 657158346 850514077 740055493 467248438 867451597 564591136 430217903 846438574 225162542 140721436 401875722 813245589 623863012 271843347 860496220 859266480 658699411 252182547 233013747 933245044 115631903 535104621 825618682 812878060 692957560 820430737 578589500 89395469 339188137 881637821 108717143 636628981 190531211 946018842 888611132 585713284 750405811 919566809 637386488 734344057 442258520 491634966 756269122 446526235 479757971 317256455 293969700 927512904 601213385 818122102 388456035 235391956 524496064 639268724 135963309 827047963 538859761 118967477 685245112 170136233 159365238 431672639 785700403 304922552 531017500 738995914 187349952 240465655 237061987 522451188 323160302 793008103 709142261 312991706 631205662 210941576 994143164 120208272 525900984 736637266 605131624 869197056 39056284 173834976 197898989 249906651 930139060 901313920 471677662 153019162 277304789 4784330 170486741 815410561 464351409 437765413 861070016 678239415 679229680 272870530 767696564 994594528 199975957 564699659 980218238 319745476 880213399 761686585 925456373 183479012 851363151 52932326 130612677 547631531 591047239 790876463 524902059 714215573 478945803 708765052 605406181 565311830 690198683 216798132 899092808 169488969 617077309 164141904 134723267 436014798 394296703 560598661 723447733 34653517 345207115 779462957 711529474 675377216 842101988 175701793 101389650 493147286 747716402 848255840 348874759 209521582 652837606 756523749 264814500 31261335 918960109 9535655 904842352 836337413 412782430 156696016 328794278 452762238 632303516 380635729 955753695 623770641 485769246 921521459 653923521 413315657 863664245 618940480 478331799 811328460 703848303 475350872 685654074 35680213 829717395 657458230 971515080 330388509 268995491 372065578 174219654 45006885 207696780 948742921 280863020 57404881 247721024 82157004 669835827 684407014 49004711 222466044 831669578 537398159 515643833 752597673 883276228 719052672 95074422 468075191 35599293 771840762 764669481 265166170 472422267 185109379 359330503 854736364 745429230 626835125 251210895 66942718 94350813 936211753 402238350 624971319 166676041 847150166 225592126 548517616 306555552 949410852 643941056 416064268 912684633 14674952 485251096 184784696 848550940 628466361 175487527 94385052 451529504 5145003 304201322 579761687 760465904 903690836 540466561 285786847 364681764 33166598 570796398 328647558 239639674 633500788 534921232 15853845 340421006 239192879 855716833 167525734 609724434 707741297 741172336 857323173 920684178 423554179 371461354 50733916 411274950 215032860 706223192 242691031 42463032 630501053 587027392 645302541 476958900 884212029 177769132 228595242 745024466 714722679 70235958 198334171 399156360 406189986 553856050 601235349 321454709 811854946 152674604 195713091 524313793 677715026 112415031 933561072 43907262 623567482 858136908 837617872 14265735 108342438 865402000 813944615 106704093 464428504 878721122 455460237 661695105 105226905 155864949 276109953 51457174 640549061 446805847 157415469 642853811 831121549 937591752 923192849 842165260 665369640 482844136 883188947 365616958 941650490 818168633 624461897 837751351 402815333 758480344 123241152 820522676 741081304 679329589 428657776 100312791 449132668 442969492 847612032 87088352 43658226 566187237 3313401 208951710 100839045 857018859 765602703 580007876 434400195 890978415 580351439 907632973 190650398 607314617 422853045 606200849 492196002 720918020 474157739 363168488 701421686 465406465 57410853 658086325 698570153 856153885 972664024 425836469 225212987 960842009 156906278 417614180 906335394 969836987 298715177 871773164 974762210 335381476 416862981 458075 800330684 37727292 735970590 531221627 256920751 348969130 335286262 579246520 840959084 662707306 735518265 714392351 727164724 758241728 203874769 281565639 13356981 645538494 994395481 848712905 337687291 738160733 437624391 169909116 895304473 412773572 64972701 972472755 606450470 453928229 456722032 143015578 599602827 688274745 176208111 258380733 911890636 761641503 296488480 119538395 708726825 616041779 45162328 386807193 858592296 912897391 276682001 975401049 260493394 940047110 857689380 843383571 839262599 880471235 269006922 847652327 831359399 891633170 571566441 134226924 576411929 533642211 990872020 140442626 837185690 169600941 809210 904912722 37869018 146638583 745738166 780471994 868811674 299961632 620677995 808070465 763603849 695161212 534150611 805668396 115923808 176482935 898659608 141132504 594026052 578254675 786904303 888341818 15569171 80591917 115821353 159840151 759804473 863959141 89038794 731147202 253018359 350526472 73212375 396697711 423263700 941207391 514324919 533856540 566648608 130634296 662832431 554806476 12778371 723564090 536860087 442106372 422462425 973338997 411279811 552382533 718997110 257384266 904740857 380446669 284311876 969660035 351747610 335416245 342659587 58291372 610199407 194147905 40555899 82930753 477466245 192883047 861353703 908270391 326714404 289806533 697313326 436257598 194396949 541690927 503750125 930312387 254277718 626347772 126115355 268251503 429529730 908042743 637362488 804355488 181660460 458950673 361248832 836777272 793161881 570369157 419386561 229481842 727629853 959447893 329930281 281004312 975865306 885210502 610126067 326702869 890249022 90166595 221555489 952360541 147447791 121510508 217696598 432541251 715777256 782524381 59431740 354854525 620566235 22829315 8773561 541508025 603070261 330839464 233636369 740568587 355800015 72764951 843462054 288226280 837096190 538083504 237106080 379057850 883574032 924402152 268332825 582811590 711086066 741860952 678360373 437198442 621357822 462957450 881427267 789978915 768935609 401060820 959576346 478174753 591396763 880266629 100911954 778234533 773821392 799759693 773172802 901499629 336889341 436083760 291386086 378969949 337015375 5750587 707781873 978591471 29887703 112756883 31719572 527940096 605316995 611564269 479949342 951337877 90064941 159554065 829580947 332140036 379412419 953336633 285596031 939812 782329016 712570197 232231199 759325867 140603614 168931074 81554237 670530504 496925277 417585858 210526483 669353649 623029321 534504176 297017882 275675506 292715004 984640749 955499386 507944059 206862694 949985446 934264201 170231195 804447879 699157460 447570160 333796180 568788930 483346925 84920385 921049286 588301879 464125019 320161506 683291181 283234598 352013692 877636083 154263780 811481911 427504624 34961372 305589091 511474272 196471918 265169188 138644934 77941865 16013045 562706711 346736205 155910487 606933587 160728499 926168737 233709197 99885678 6125123 709966785 538712405 565608344 517034522 623205793 9277838 116246883 559159379 619665795 209317163 729355951 818096549 301328714 274671440 666220987 955138834 849158544 570238947 987783110 424699485 651464235 452618313 533257948 440920468 848977882 241358497 372798279 595994298 217815372 314338722 931298403 951557435 365296526 998105028 934635216 960105346 713447014 887891446 853343200 414830397 406340545 633463238 198016771 570293937 105447914 980981628 864517480 102077107 922367512 339444554 758737327 196680862 66955732 853546114 283317561 281844686 766674438 153220070 173331350 638768630 221697195 965764175 173606205 43352123 380751276 118415835 3650279 73536763 563661482 964502010 111996814 458048892 591878170 508310020 171179176 717598619 651258029 767502678 912873109 258974176 525858001 987451836 533509763 167191021 722913407 61337537 579631582 857563129 325736151 743186580 108474997 283293156 955849389 166052445 362689290 465040928 461230478 935472992 748056564 728967521 405163894 800440731 975995016 398117113 362226303 289103921 238715796 407331140 891355372 589546768 496532336 909477454 90228618 881929929 483760708 712824705 590652973 170755453 237199231 71586815 137808272 243632133 966302784 168901644 886078083 461576874 624011474 461494903 829770719 164154722 469418373 448898339 979959243 589564537 748358371 633298615 507141043 842830939 404170129 691207452 830823420 961327535 238863912 254665431 470153593 885939775 557998847 658530939 994549347 420596183 24179010 604610540 200383334 555162207 152713267 962617732 416122660 668360635 420880450 772230401 579298137 694878324 691257226 451014253 337287031 365572368 223880212 614749530 582671390 270549733 295026785 742580923 443599761 559882993 531910728 643280470 666134127 272760510 539684913 400713282 98893017 967618267 22626510 519307751 298321259 556451326 976909753 709356162 219117110 850638778 647424131 980814315 161976084 262635404 687559609 915719346 755759564 160449435 763215673 238250742 212859228 614318836 500532027 998675196 362276683 695447082 636292893 152620622 883010082 279819634 104438998 204166644 196370027 693131577 548649155 55320263 363283091 992321012 607277991 157383375 93693414 68688929 524763637 132592520 278763267 833526049 771724649 663974368 266430958 440221686 713159291 355213010 246717749 950548166 948815530 508910173 788133627 321376637 370214477 843527676 487882468 776618462 268296186 487360269 484838130 158471281 941476489 143865018 202072716 908104811 868206655 464174401 316368333 606218530 702724954 388635098 383009501 190286491 208458626 233880297 135971910 718461738 893411593 88448180 716396989 296146714 98752771 708103018 763849606 468120267 237666640 850061193 575119757 243283134 1042623 837568045 466828837 65219817 878551878 307309518 817239458 261085359 467865738 185139969 960561293 621695190 267913299 475710191 157783297 408355239 183509708 153146169 532996382 339409423 884837098 675912774 413952688 791416011 65999852 318770830 637308819 55764819 951401368 99717892 655400436 225635392 261958217 693143668 963808416 866173229 349017066 31022106 302206302 860376302 944390468 568207982 702481248 912930301 309894557 62461405 725927909 231725929 678888506 271161363 726568683 436259644 382684013 374295872 455103571 340875906 419522159 960146490 678277668 312015070 503267614 546058146 482070051 126183908 920854866 152762992 85775977 235831304 94473636 545204936 756862609 657672633 880940477 283846560 418245339 385851475 401615012 457469070 806374087 257146170 331689712 84361980 719173826 819472341 348266508 948747709 633153572 918890090 681601782 452292776 616640483 97762470 151585399 259536516 555830533 897800336 473643916 230374690 884299268 658055461 446293018 128987253 69257156 590115 921181669 718432605 448996209 3838898 790813259 606807337 847111244 727444264 194429978 641765734 240754920 144828622 975133498 302191688 420596668 894658853 894472451 305909397 315830312 854757698 716933958 764934358 779668068 9050051 162188378 736855220 516000667 146472571 55015496 667920898 920635535 539871799 38586577 936995935 709279537 774608296 61105937 211042522 598708343 123768840 431307514 10717516 382757227 915831306 754404222 787404288 626042057 68409123 75363691 688474413 309360687 912694292 758345831 991149593 639506891 552091051 515078291 780741632 369666343 333630178 687452968 247115497 420898201 742653182 774633013 604653626 26506893 989546947 30946958 878009098 630863240 803292496 906570204 893550504 495550059 263485460 981479175 61646842 220509115 700044108 886144256 550791365 352397221 783736051 886700871 390523610 339863830 17073585 227143091 375933085 616583861 93091101 32813383 360555235 772587958 36938376 107272717 971015042 668550173 181347524 694590791 4044102 798940913 385767664 625892618 58479358 312930396 684697841 204019417 315189540 664877882 432643326 341040284 736126747 577480712 481250657 821124392 496096677 108577786 571890437 100797765 923225354 772243404 729370126 132307358 105079471 15844677 69473465 356088837 577489745 305571703 810623492 42540471 336896766 793798832 543908806 107660422 113635493 330078496 627636137 737593569 328289921 325209965 384841075 589040973 422221137 180432834 397542852 594637997 4450098 575906892 71897413 367288517 282885048 109345035 514180078 756427323 865168991 615882073 949611156 501857253 99853471 494789195 846481532 121143588 825055372 628560565 129833162 183535545 203365805 999399160 807556158 819589071 69171159 928102904 888048531 752095507 905496166 641659301 218673925 173232673 14240161 257740058 156300501 531171826 932994100 799802689 648026728 660287209 447021363 771262622 802876778 376145549 273741928 153617244 463712552 129271656 226644044 285852545 187373243 986647151 868576880 592638699 195779524 441794966 479586630 613374941 599115272 610234008 537568074 334830983 922593716 126204564 165656200 538784386 757668088 18895396 759215026 756540848 440814355 392183416 383048031 791843548 974303130 298599774 422706579 86043324 185839793 891871196 894600246 143808287 955844702 658182020 191675714 447596769 756848476 613171351 952959751 408501728 315350685 757106089 234618074 81760244 160225932 465643117 609115164 490862206 266929142 429692040 872023754 798083844 167817809 494022022 201353380 85985673 244127614 330317459 872566943 900539483 956133752 787134245 858021273 76503714 47416318 736192152 282309367 645730124 375570203 391447116 32205515 789259962 346870672 838217740 338240091 509490285 995899870 887614897 119583149 518061082 857902839 791624671 308331470 769843115 796662774 67090508 927155669 102722973 589882604 623600072 350027286 6567123 418845557 501690927 843617524 938499082 28909781 113245943 30099770 327365458 325117203 501972682 114099799 718049758 814336950 548455592 964696565 821360831 507166623 328392755 598161987 122330352 810151008 10377385 805182850 4246816 923467793 302587715 716983140 320245770 281987078 934948651 167608075 933789289 540302 402010372 709614142 453160379 929329956 911818351 782197386 920127691 130610461 894282833 587552252 234953024 987793842 622076698 954633195 765959308 321633720 353243609 506554894 588822695 139743257 282953998 508147443 379724007 509838813 6918930 250710154 110738945 724643775 723771116 753942003 137630330 156818757 532177287 564551039 754239979 549644230 928075310 397455823 681407642 298517890 517217521 309968889 952896992 282325945 13273149 234425761 314415758 192188219 163958465 745579399 980068212 376240328 463762405 359218009 194942554 563402325 150826284 806714657 308135304 118030210 422075516 810073324 245966290 420599098 252044286 744713329 98292488 420350597 668155318 68115932 105944160 908155094 92855105 707102460 264758595 606120559 191803639 239333816 492048179 8174986 514240890 699777038 707480787 130271542 209555157 529182812 207718683 140552298 331061974 975537135 888376402 43317385 929025446 518529516 782187904 365673258 842284320 17049769 878951342 629967840 402269204 313072325 390718833 928383440 507615043 428295399 896038445 479453654 116165018 379140457 826505993 118501938 850267548 734233623 951154785 564282311 476934845 198605900 946408006 139851620 929239428 501957860 916610463 772278721 208740374 297639659 663132243 996649179 156314965 503424597 79050167 806330631 600087441 372526422 256994719 418040207 111815544 434323794 289769655 568826707 10404137 540937166 201810215 918099103 149697967 77430244 479310276 105614650 986428127 392116286 345027709 874196677 342469266 914003893 182646233 588980324 393825458 431450270 61956197 3995925 792716581 788925643 165754980 826216960 412752008 892655678 525156394 938761463 796688495 175073242 376988713 602052085 352459987 202705942 407964155 671405856 302930522 389541924 928462652 916646416 765593950 66530711 844683770 18972858 698788816 33745123 877817541 979978604 361875912 132483511 428092608 919371366 439018754 815443726 40776724 448334204 500312127 558163003 894764207 451458122 524308933 122095139 511409004 757784649 157042180 606982864 505894290 530556306 282981022 525263036 425299176 765839248 244692323 543618192 610750270 506457418 817986154 957527628 701569536 244057629 75008698 85973306 647894166 480309828 28718190 869990638 2890859 344838731 702075772 270681662 56083445 970285003 31496170 620731476 583501095 657386838 444461021 736048718 737931979 382534956 192030882 998026711 875576312 563137230 573678393 771312483 413240141 570093255 489327139 176575575 902641684 162369073 95144216 542208344 481692556 978462637 688690202 632273405 239326590 270441579 827634743 425615059 672371165 922466744 432645478 255690807 62312548 294053806 517903857 879101503 511478703 623506679 439343179 100594218 260500458 203324187 808209389 431247084 42298339 227647361 756444874 430921772 846411511 783466817 409010634 676738117 224726356 818883484 716042701 409705976 609693433 399788326 711559675 724955831 144961738 214261520 997198771 16407928 425057440 120444012 131678855 685952029 438058828 288212033 250128643 831159079 895298648 734346780 510661975 168034788 350620140 205689877 650599099 781700571 988456605 614726949 25136981 643583378 642371572 388272860 290830141 475181026 812414541 822735949 823810193 95168921 530485063 830917042 18943607 288342705 533866175 851543556 17832370 803873086 182562120 734076742 433152279 549073557 77425349 572828826 187936959 84838025 735102980 280337587 263332808 53863529 389601942 782452876 731687706 780514258 704646665 908569637 86908358 521791422 747148386 172605562 936647788 839125489 732433913 183677522 554215028 210030577 80895474 426983194 598105995 859677758 129430720 367232532 347053630 930770617 123412281 734102453 259922893 741981336 581752639 946659619 227344211 860865574 294462899 805670709 695957644 821588058 221492014 44706267 345795373 320505208 941762352 178706649 344137928 857948576 75280379 232905316 207816509 598973752 633247342 32230958 871385258 805153583 584867714 587250346 103955495 468439246 483853844 493800469 116151991 164222404 514689525 759363787 295592551 466597495 453538245 345587485 936340425 316173259 823889168 216168971 47185476 150812754 629302405 268617574 882475411 299131430 709487936 61745455 505049410 917914460 193875118 814958043 765895513 985061040 970164856 95640279 313746050 610025271 137543494 674568098 710935517 154849499 672760794 412274325 453663940 365509094 227750985 625150948 212037361 834887906 71590354 351117678 647282800 416796939 327493355 22997324 683481368 78671440 625825026 306132964 215020050 80825572 702989767 181419722 880872026 254546985 762538715 930635053 586529878 829398329 339605347 374513764 338991425 457877955 693670902 188137694 352122335 931462569 572079625 864014222 145129253 800644986 437065525 864108005 821022745 769737955 822837765 480419615 768066122 563398203 931752692 869721409 61225858 589738375 138560246 407945607 344359160 125181875 605029871 193333653 974401615 344480637 768308724 56657221 611890734 376258288 660167765 836291219 406750130 408050236 581239419 466285727 363976097 959287889 66508227 591459296 135224330 480903016 247827411 914661323 575511426 342618343 466222011 264495554 187643852 787997291 993389937 54099276 274698096 103869682 782796609 576240080 455263254 16932029 41361708 60267385 428907106 545960589 682503613 860144194 167581581 121529384 901897310 167352248 670641555 344675068 150995990 487662872 863394799 181443498 832755556 359554209 137806298 219175000 961879481 988826285 347131599 442170717 571463974 334586908 517256565 732981982 152525990 536942859 617932020 889252784 3191213 68233915 753447572 208931053 737905132 349712638 944111332 249436628 741690067 468167326 92216942 882554811 913425879 940311541 55402073 252518117 552084318 560145575 620399875 101878983 350181515 995254017 541422106 11362472 565381400 777575775 356926320 482259220 165019887 531396208 338052216 862796915 951206303 108890651 376053720 840639286 598708417 120189774 210620385 160619353 523456755 270907806 465212268 100042988 437160675 220119506 446788803 285544486 483999314 220983068 507842218 371704657 833771895 800486428 892964045 883809368 954336402 148816580 9329572 128850861 447084806 126504351 835511031 418271727 773601113 558699696 64219816 865920981 999113060 832880816 252873143 673302707 670642432 348599110 689381247 811772272 508801766 278810926 717355775 92724310 223553181 974741678 807756485 186789192 310118530 161289897 865970950 205104727 905288497 6535811 117291337 715126253 426624426 38961300 717924380 913043695 928843563 419810366 547242499 50256181 429342654 644993816 705251523 757197989 288544304 896645759 24193867 887944741 162459110 364308456 398868561 947180767 962002223 131157161 228977068 159655219 976401462 829956689 861021131 684120968 790855719 315866143 319554070 216550744 844285102 55414124 69237868 514655533 619889139 149445939 697390879 284252266 368111307 874313846 573995330 423311761 181917293 80734281 48718593 586942142 574421778 666313348 837379163 307830493 198238883 508476780 574941258 471439204 152288883 735022014 645844080 197537551 31812114 642830543 884947554 503792373 898860349 362731829 962211450 349360428 631160551 780255713 445741805 563455325 316829039 87292617 368858533 330690437 929186763 360206497 426500242 758601860 228074482 966691978 368031147 897114593 432347697 461424564 798496724 817273070 476009279 947880669 155251476 691349490 601893554 125928636 312933222 124415886 463115962 990050284 267375061 361192752 938333734 759664385 154248505 683962668 966961823 677156066 680806786 290172068 468672583 371880558 452509381 478927259 163821762 271752236 511081603 195441344 841460675 982561359 317870518 159675665 201593784 312803285 522778355 691577956 272376603 954710816 89941724 643906841 452506891 880584325 213415686 799771924 870645001 82042101 399238451 621930721 30379851 579098396 403388276 228106931 440727357 295878090 770263748 119466795 578415223 416402852 574793476 271165635 343382799 80509983 198010272 846741183 338395565 763007849 279050435 110487101 13018101 163968799 874262657 842500999 66581782 478858915 620326603 265792085 957552824 408008767 706335235 245157810 117873836 356200397 828833698 35744938 713271438 910811425 997771423 660813664 159662071 823473192 178671758 804966192 999032045 331590415 121057703 358714484 637867381 707461138 763208540 180517993 512296353 779616762 124117440 489103031 834085110 741174402 632856533 988566850 309533011 462804106 747546046 274834866 960131260 598534012 675609461 314805484 767973248 518440597 43108352 549862441 675866187 950157875 666368849 462283036 547378209 501361684 47513641 953239634 122743904 318687930 517136742 238093838 88283207 802922973 850211655 859618363 916872636 322874015 918125262 968066157 672733253 156552050 176578738 123697932 859021334 905692975 667546725 185693122 790387508 585564943 347788098 275911304 927340630 178443532 340709905 112210227 640167900 77944896 29956970 522706929 847335439 174918641 80083168 428873716 342610004 483917332 373660771 987254304 799849870 303436642 24237695 849821156 218900454 421425601 720077102 346370676 708263618 562624677 78419057 580073170 549006160 936436875 620388027 392642421 781774652 239132936 233501054 794633874 428278596 216182749 565605042 198021923 928457187 273645431 770941258 103588401 566442837 296461569 167162421 178339978 763824160 429441398 246172423 739501656 88492313 934321498 585209904 381359511 217408706 265682230 526833938 253266946 722819071 741091901 728389893 415658995 904183735 581996735 856852003 705470843 399541122 682158075 867801741 222758481 309745024 97106692 906383329 49442526 748136908 444921591 182690690 111716085 268268620 173873471 325204243 785074641 288792115 923815500 550468709 341975949 104596931 439548770 18798892 223062445 97814444 657324624 286966952 376791923 924847487 748714403 468189334 954731253 8043950 437881802 129828068 371461655 526996465 711070611 21946601 542417293 684706221 134013915 369700997 2368816 491885708 803683421 285564680 918215883 63877349 715442005 901376125 223954689 255607308 774101519 912309202 508657341 634363793 427041845 160442301 997364425 167424051 445421204 453629769 480422789 396061898 596475787 803513275 47121839 508518568 181622512 687804751 158014835 102937915 56154002 218155207 83661267 734232015 539567555 243813502 826682749 304496331 957785841 287449140 26930370 882699627 111350653 754944052 34668644 621858590 897799549 268434677 543109742 608757019 584603012 517205839 982614714 609995823 10802126 257680542 641931391 565781000 819366191 27759930 705827301 481426581 587891516 25394877 888320638 772884724 162548174 604954585 674847499 435928433 773711362 296930702 595004778 345484696 601502471 961497198 234744810 678431060 190859569 340036245 89643382 604514589 635958393 376981352 207411858 783188338 844920118 570673215 869443204 367582637 708842902 923461570 389825012 526693946 419049373 115006875 878981450 870669219 837087459 856902301 359017579 50520006 638372871 213606073 285339496 26838799 360576007 517512292 72497987 211207246 113733750 555421374 129555646 56695271 634440742 715894249 656344323 585076100 745351347 446882669 4046437 753981744 476440607 140319822 234561422 463553328 625984327 75848590 772034876 221075479 399146029 247815550 743764357 492928385 317408594 600233352 420304945 927522691 935622267 428218514 753349520 93467900 475418879 235716240 619374202 115686234 781958890 934805000 891432932 477198586 244294684 633070415 677131005 540699787 237211395 574363770 762316140 303990839 281965164 4721410 797150233 211173284 884267570 971048996 662769582 756754892 203393402 259732001 385034595 997530863 423690955 390099546 26480514 762668235 278698066 854873523 882956338 653618789 990385 701268120 964394626 194061569 173452325 529389345 420407757 92264808 723028515 31332391 701029310 179377355 431217510 766237625 147242731 428057030 594296907 897213759 908830456 180375407 118641070 316410422 176129032 678324065 914223748 810591494 801929094 974818728 625129484 472099043 133223527 219948655 203063828 879960385 651437758 91107830 129487207 980453989 799810201 950660422 22035125 620691610 712378839 525744848 880903613 199052620 719389723 945563780 503982646 737793272 947906058 824327378 94470745 839631470 330834321 181971129 8600252 994696038 856401395 189607364 38092259 225213006 405080945 535736976 565056858 395627338 362817529 300148106 83148753 777429270 863016690 218130114 831594254 756704963 420807315 558260343 405019729 591035717 130832408 68096368 690292300 542062602 758258391 62090084 364184575 866306629 187340386 524675514 859157383 277504766 264454916 86460409 423830588 918360012 78795065 918907665 930826709 875383119 188721280 495365673 155294060 319187149 25611343 710671230 762371223 110784901 437289087 540488339 736836950 990584740 690051046 852591884 669598842 974307692 644075498 963471051 672319265 395344045 106211421 228720312 408668329 380885983 316697974 578974814 125928970 305904012 26666924 178626790 973001102 823139997 572491984 968483970 253763941 146346588 35430957 332264164 283975093 532312973 489382318 88474582 9686967 463536259 199023867 490985156 103206926 435005112 335996964 569040776 620358491 764617554 38616652 76076495 606308948 409304703 728001916 731620816 233130591 378313210 281340407 849764023 90673176 707873735 549980126 445338190 487779670 125073352 896025274 886599274 924008092 643367332 931508018 581719722 908646948 122215159 453383611 32493826 119416958 76757478 726578111 735646382 717095149 346621885 905817971 946436272 530620172 803043804 454006509 430863653 414297563 415834850 601709697 511428071 13970639 673986297 428075268 901953026 938197413 401761591 213840309 71545568 221969000 422446135 898713734 385459652 606445709 56406007 573088934 734131384 954997683 565715598 965782098 776991475 373433247 42852412 496804901 308111375 193029209 274243821 540225626 768629119 262075816 823813872 682907943 429881313 194199174 787950257 743103835 428237303 903542585 379841771 181998701 719498421 474878988 370331764 515117265 136578924 871379764 840824493 906830393 237933472 388414218 455237255 645372148 551449429 133501349 171788562 131324197 550034280 391138118 38047649 508611049 692153680 598354622 973391096 618265105 245090420 741128024 104165902 985227953 600079013 14943595 853974027 839494481 678882331 871524787 160595634 587852187 671194462 693906835 166905223 648629764 519453626 740679368 735323540 860116679 859311973 237546377 332331276 286019323 393209678 330936429 994391886 239934978 342920225 701728565 262164299 528273352 314327229 734403971 261430397 330620670 679292179 742573458 370095576 233507790 165941196 151872979 765753020 235053416 773286554 66754915 371164931 153194216 542328013 843546276 743689875 593246885 457441378 171375087 286729620 739432799 773576464 469841356 976659977 529441473 543776404 347563144 509305862 234853733 625313889 107745449 396457732 732125521 895828245 25066843 814316267 797442860 225121054 90220216 140540670 188013239 809633540 56501364 445296299 8301001 583153664 964789586 683073565 672944001 832611840 236908398 791195635 669025250 329276125 712995624 4952710 281178874 71819355 424400086 628386790 922795643 431268971 737843099 912717630 131875678 218524773 426565686 750129002 253206628 995192059 536706651 662837759 91294460 328848168 371265667 942328933 597193847 719275510 108283446 371957178 722788 157218176 120279312 535830600 795948271 788150795 309763182 869453853 29467342 330569541 783665726 491045075 946817574 757699469 795154595 348849684 684019710 160517071 747934093 752423645 284574916 580693177 839230832 402498493 30090922 258385582 57442673 745711985 514575136 800499421 882744573 860738120 2446729 7322788 705192511 258683926 548260823 956585304 705815676 435771762 326798517 792293569 693111681 155668278 73747378 361805568 786786742 793612911 142402053 779133262 101605797 986401210 682093804 556726861 444914932 270334059 471927449 463674372 786377907 716458098 273049404 412507000 993272155 58017194 508941139 481589341 650342094 321377686 685005499 69717836 582519176 132087383 866434943 856810825 507681862 29581500 813592658 491391224 867476463 508365443 128549686 39433479 670856807 237344432 909198154 217211193 243486736 847231261 642013287 653366934 314117129 989496390 299692059 276799496 393211341 921687711 356356508 60944118 953720880 383377867 986842268 256959025 502570435 39349096 243932099 264102962 865109479 983946378 523451341 160263853 745869499 613224085 910124709 744261413 813453313 932436440 216301970 800749767 245845079 658498710 813703791 286580952 942896675 384866983 507362425 230555388 413760432 158471903 130788421 574334923 424092549 255039622 544028664 158087362 945837488 610049021 105813604 8327378 560098663 810038656 662681249 255574219 857171388 60519562 793148296 911992746 603236653 769090497 33131083 513069288 414603045 985483402 624217163 382309246 898393531 546056792 892940649 428737602 797319884 274385414 540373142 489034983 380113948 98869601 646618472 256286924 100425819 797495519 300157564 927116643 329788747 102957530 195324062 342295093 937119441 32066616 840944748 846595929 698961665 600198254 906969313 628198338 906284243 831383905 409245095 700587789 585391838 540368917 872715414 531358012 929125845 892102334 926896918 749393664 835910557 415866170 17573855 733258967 713368018 934342911 538691041 294180529 579924083 968817075 196847231 185755563 351398858 344698308 105757552 341302248 415626533 663158428 75707961 920398731 628601907 793696725 239855657 154122876 936370397 408611409 420711882 949462284 658740728 496985419 92227693 130679308 843647099 895807309 324121236 647891956 214502180 627224236 4066789 556430636 281374028 236222378 118845508 625440378 317297275 764584411 618320337 676563293 332146008 70941089 588608713 687078382 562469290 377986157 376693643 223140472 322692473 323318163 816128 767064686 709867296 964475441 259957101 806747037 12334215 783233237 590333803 999691527 570976867 656041377 780325765 109211412 78568728 990237130 953284842 316074405 514513642 689845803 133743693 70370417 2309817 571036841 171262919 903598390 128600047 234816946 453725337 20479882 743141979 655942249 765302929 811576022 490373667 523403777 333460199 996631499 438790064 230305339 726777749 34142466 889190193 690027376 984724760 772251473 140500069 438560569 882115963 542469634 489842451 481969056 288915925 865514238 564594575 293472222 280108019 982125348 814270115 207732128 655116622 745760686 316732825 599727935 477157752 947172749 797276285 676297791 375705542 194844418 119350783 817087308 147566421 777451806 282495003 452314904 81215573 36209450 639587834 202984692 813668893 193798675 624083927 422308376 646045370 396043560 979770999 667369076 815827225 174385268 869786076 760584595 753759652 953803151 51950017 870561930 150430078 210902981 316963496 759659518 673474713 763708291 47653206 574259882 414680669 396404478 148987255 200384357 35639395 986410764 351639377 166080827 225101026 220932622 725976901 18320187 779061374 329241592 450822420 579759466 746260689 412592253 488462456 866732089 880090999 687267120 503073088 874311768 747339802 187487031 898732787 686128431 867467942 505043901 477112389 372021688 844848537 332958845 503430983 534596257 794891755 500425036 924463220 433066496 559013680 73070840 803528919 273333347 820388387 74413275 374208014 123945613 665665061 432931121 649447299 773289584 705921218 993014106 948228117 953160615 267419271 888410015 680502621 426058374 712568226 41400645 803547228 739061428 770382715 714947131 558220248 686218291 138657945 450335887 180315986 156913574 149350012 86995320 84008258 948009361 349460996 455944625 29828225 747423352 186811808 884017927 582458021 707373423 314397611 592318026 833983239 325236628 71466316 28121757 37614233 277326532 610007589 257551968 617068525 90380391 678723835 980521088 923101035 320569215 635129103 918419295 769553378 87485642 191678613 950298574 515878437 81654484 205329768 91835225 869794742 238728507 429284389 591226889 668066595 85558406 46960318 749685224 960285865 637477909 508360475 178895955 719296513 329627621 210085297 497488016 561261446 801837552 81409897 665071311 743728203 93427433 268622756 312890013 243990915 408492987 149492359 463333359 998946847 481350627 614548392 935324653 977496666 935320602 183680612 457324860 463249340 207938403 866624683 934207056 649081658 50795178 480125202 140478181 8816592 801183844 463752315 366789237 597213906 67541227 26617041 88098762 777867090 378959867 196805134 770397223 988975978 354345697 336319067 623344646 702021075 704099454 655527938 899859811 744910979 599555142 122666101 829795927 496336116 104472482 337537736 444142776 396701711 52254487 700480213 247924380 994542621 501136177 619720505 78733048 351558152 930934486 460560324 154139851 492457500 492110896 374341003 176095282 80324617 528744536 21823330 131288038 585299707 628201904 864686625 334784931 558606870 339696546 658500127 176755989 506684930 15879686 387524538 492631709 577505107 673922706 577437006 969739455 641962690 504267432 813839847 903183931 285015856 717676390 982868332 559264196 306949382 831674770 198436359 885457545 309648397 180891519 603209428 493365999 144610541 194300439 609996052 668420944 73188955 758493352 272597788 523477202 870429522 537854851 591922564 459590352 93184431 821116148 361875962 822096746 638992634 392103576 743953161 796711286 65338195 840357825 209523762 507715610 966870101 600462934 89327787 942685825 568764517 572082469 347257978 3591542 255496136 418179640 783810328 119056460 989415528 369379639 301275127 611581847 183559366 605412460 279025113 474936243 53592628 921569219 249362689 125113236 480403596 549438116 999840167 409914078 581732583 251070052 389334241 495072887 972859848 514510711 813022428 270435979 850047002 973750855 102215969 17162858 769756781 897191822 572831434 636122491 275683615 528221692 657102551 877712192 621029462 211641962 577867637 736663786 130584788 88080563 552367152 337782417 463685477 181705551 539606447 532001930 264738407 857307769 86099132 105905584 11383143 383288375 756451378 393832073 705574011 610275318 453520900 511934013 878175872 51532838 184993589 328381053 698236159 137637558 373788119 658437500 501320873 472252400 78044199 677626450 768101969 458662160 744459693 230436199 835740315 287508171 87989136 638579241 856698600 163207731 284760475 60583444 714014193 675610792 136125854 254122545 726754216 700752884 881774924 236716922 824471094 845324961 124120739 809270992 207077161 231717438 206178914 969178659 114222989 706600144 415693708 409729407 464498150 748352809 878494589 704401252 784613326 314798705 408785923 735157563 976963607 863126537 597836567 591793952 770879259 879321740 434998405 272214500 256345768 767798174 237709031 111781857 627362251 731641923 856640494 734321345 230423088 811901428 221720763 997638075 451067228 6253148 710534948 408815990 894119150 156747396 874777309 757969336 328287380 646493967 594855359 525725342 690276850 191817808 350078493 240036013 140459876 313804569 174724666 789941044 302140419 663873381 492241832 75092414 275333073 461273261 861078523 687882718 390168828 722878414 111193826 504237754 11541821 780815004 823206439 778342530 18174043 8221413 556394171 329562001 277744242 879573889 724052352 352264230 208077796 889135948 468389936 692183338 562046509 906113902 541794251 920713472 883827266 968640877 669538118 622115079 725208785 132743327 974886241 282473450 618294961 78917098 437926349 956083374 605245408 607003634 529752162 23186601 450001315 879327541 215414141 640706472 57859003 975125949 129610514 64169233 717616244 610038805 532626177 861124330 988186141 895545314 846563900 603538739 4833642 909328636 986241829 411246284 10697045 868056889 348440406 320713251 292506898 875848898 361470047 677425378 384499647 77327029 601257555 862740502 788753838 781034833 726122937 931964385 793390167 661865368 658973220 419243308 853300002 280271545 236825873 783724649 280283077 798295117 367103697 440475184 127618976 501825519 540598256 422199148 364622839 884759073 571812006 808660256 193571908 398040628 733526485 562881319 404746167 189676747 864905460 871519393 353097518 85233254 995149476 462092709 466405808 920558055 574548875 142313653 828111463 175743898 18305846 751785964 65419803 893420365 828516860 706033011 844187931 410151484 20829308 800192551 726435425 84641826 3178116 245822079 559188300 31219300 894962657 196475754 284654829 835452386 30018119 557783455 266340287 109623898 552423827 739834428 706161996 719925159 34819424 349246378 449897664 82086397 987396097 386172883 154537068 21389553 291044808 427161937 315479644 381216515 587395098 428816318 334123548 480994551 56887205 275059806 991522321 899962124 773967264 292850907 698643791 77295208 373212434 486782834 544221470 237385075 423209266 865874457 437445806 624601976 50744657 614914380 861121798 418585079 119581725 893692924 72067033 698009564 699933774 583841707 867806543 47372676 541117663 721225004 338814196 169734580 75415056 16710505 430687486 859434969 838349828 217059215 704722452 252351731 511659697 308214233 429100193 984810711 506416074 500920532 938323701 492058010 977062309 780509224 342130680 784799470 358114872 758187801 713699694 681492391 641494548 604398314 919694723 687606817 542719138 315015881 80702770 842568332 817737080 893274835 201479912 259713168 670533232 348366097 325545304 822552896 764090382 765784991 196247340 443338828 104577058 248896789 485410706 517209380 248643774 569264928 998719136 161206575 425507845 285924841 928697423 991491487 978664288 63225254 666441335 772715007 624993529 973346445 35125493 567649742 38433968 270108032 536057693 211549853 506270422 260854063 749323972 387748640 250233764 790348771 803728195 113648111 827638951 735184949 783759789 251943926 771182159 547565041 586481478 971066464 228234369 493498544 818772917 465135941 15725541 881185896 677601567 819168539 110172790 46528967 394141578 124957611 568041694 306460789 808934208 849497505 616702625 516700072 817441093 740346761 338355470 403150157 566238926 195687250 991912120 596522380 201113350 117565728 44231040 242238644 971842434 525528283 173567666 308250187 486139452 466848324 224896234 958650517 562175757 795452768 86527781 2847459 513526320 825196682 333934593 657973432 990079930 922031074 202531559 307982517 342816189 449411399 413781132 848756151 277304698 585997995 175940239 172378538 690836337 143198761 216762723 449129376 966963715 124229217 23471826 599176648 420624696 39181830 722566679 562749704 370889903 284361614 70624377 810683491 986983601 210319748 254924849 735322904 622766004 561207892 55817459 201468182 711434957 927591341 197449699 869508504 738327931 683272226 207609512 399953483 324525212 812497833 105023306 266224670 241992529 129204345 604981628 911710421 570728354 791542813 674923364 721706422 364443639 889051444 598783186 797760881 400707782 982633095 247850968 938666310 799744928 854107535 485174536 231160134 612733725 336731162 375693691 494497716 216759701 587437706 894157022 301881453 514951257 745103356 597186725 548755693 560143492 571703808 824581628 535435396 610982456 478433541 766665913 946384201 388907733 298184235 565263151 686922431 716751227 189382606 781017239 116623352 808877644 121765609 930781245 561435600 819525666 959048192 739093982 737859743 88805154 777494 864538154 817509740 686192181 891599519 120124857 783284359 625429516 776452787 780742530 687656623 510078213 257581829 47195583 127004443 952466552 80461993 793737024 530425098 603742362 316222854 217542642 990182767 932631167 95087907 304437029 515271626 650705622 484561542 825289598 10470061 910972412 650537787 700073966 722413537 946116414 809945 310966018 153100473 87294464 381148553 822032620 639693015 698951451 974736288 144764591 419755850 87326240 949029407 627262725 524826671 305868006 793184033 966116520 257229639 122627834 91271756 571077540 619503178 166928464 789034595 27184319 131349380 444753788 634923694 697211189 385123305 275198622 657002599 792414394 370761084 355234047 368167928 105798136 462013802 528466824 268215931 30975187 774928501 751106110 201379600 860681737 309070954 446712852 35188875 482920510 13885826 758684562 858436199 812000319 355788202 189295457 182988766 189735352 714494332 9639045 184372807 721412082 228793287 275372956 151797442 771227718 421004924 479320486 879950407 781542362 966565178 259417053 568424468 356265800 467206176 428718241 888879102 238132822 337535660 228759649 357409751 54213133 481866922 584173357 623608701 724256312 960289585 673979065 32126395 455791794 140934362 372682861 187062874 597581507 540258650 492900855 381086233 885905769 208230363 786532574 686893474 939628441 322753395 324303096 193099330 400383559 890888647 963892497 270571023 982382548 107648484 587110500 366090048 701349265 145929592 237658300 990025101 128729828 598364867 662351344 69709572 18244219 298329800 2251524 484436417 809178048 196624658 14423686 904270807 153625484 450756915 84783274 522003651 262454337 809106638 452092849 997783619 170868343 28464219 219681987 28311589 474557597 926513528 733461783 801953656 851909685 827611334 313834360 602576299 578913055 164364555 862704877 47986836 441662577 654001507 197215769 346751246 439779983 946012982 12049124 287813143 279155534 318315995 711302778 791567822 698852515 880246195 312473991 922228641 731268480 723665185 202100001 895068784 778389500 69111345 959482152 573143246 816610221 73062387 943011626 935418157 35916512 439960956 132297513 577016891 436535007 549038708 406246028 60171584 575652096 177591728 469071695 217893870 831630415 966088302 694520362 895667387 991495881 335697310 411859457 835005855 394288792 846626363 294430819 2952793 676410704 404521267 823716136 415436941 882800648 160694749 406836870 179823753 512120119 32249635 399910684 387667932 89959018 598443601 852416607 977501443 276092143 919812693 330913904 204419786 719732367 941454802 444670451 967236690 807125005 914156680 602246085 702146140 228048564 229412295 653088920 202064306 590402539 140775934 810659453 890937538 794273527 812033046 210121023 571523962 170780684 183562049 981599731 20297141 741641148 936991597 777137569 793706901 536682186 737472340 361186075 315429916 400643383 271106382 445516286 479604418 436648279 534038935 282510588 672021963 158471541 13560156 296211537 369418052 304836114 844531187 291028924 376902479 499960326 237986634 991364544 45175327 327985068 369835802 998236686 466524512 627898281 216228049 729725994 962003858 403753782 775153677 540694870 30915168 210091720 811815469 310006268 500195777 483731022 550315981 415764639 335786640 920235015 284776498 64994170 631196300 534771141 766399088 902384415 435817194 930406268 532743645 877168573 893602128 993864556 787638072 825900693 95833852 857394548 248759586 175083257 638956568 452695477 764036604 233704027 21113160 644401302 824436200 246572039 199114281 377813987 809183408 379680312 481062908 57698128 442425654 361237490 73413161 829499531 815035616 498542807 691147732 295570169 816096589 103651602 645528214 790758387 65408895 693889440 751721449 612040113 531121715 970105748 176080361 848448391 526942639 860421062 15692969 36218703 554349402 278795149 797489643 551234659 367334724 217631169 896339195 126124859 434002415 589085202 967857650 403855559 18925974 299016594 105109234 694436549 11006332 53043816 856517011 262313063 943741489 322698014 130670906 962930611 190690274 125298520 282971644 242228300 779987247 888310801 706156474 973503046 304993959 164808279 630771696 682753947 191465440 128292166 963884465 306080139 85019613 418183644 47620108 302875298 589548359 111315966 927601001 886856122 419905684 268608016 190390408 452257749 960820854 392300945 383728524 710877402 60943790 847751729 671433321 694166429 842075163 269010084 987951692 663788386 952789779 377041079 703417422 646452159 261348539 582746972 939031024 341347570 268358297 414866461 665897836 251276447 578227718 360630176 493846736 612052597 137812336 47094309 172857578 845285479 991120197 142380364 248298190 847836506 411897268 998257847 998046433 433681784 442707418 437599676 173302383 238701747 683470625 392820236 78989348 260883402 889547342 908912041 816540740 849811671 824971519 366087880 419043052 821942964 263446456 837401615 388407219 150390376 422351344 418361892 794012808 328263468 380767253 875958043 762267347 737132906 783067408 726688597 138129383 650173360 134903407 761958022 691816981 844762902 434965525 786155287 529011850 755054449 491101366 932996781 921915070 593852488 197871829 892562315 93800931 571120220 193607232 705170566 33834447 221818628 23915146 684243209 489978833 329813684 741093074 551793338 234520446 640182084 481939650 126941216 163191855 491433218 171734754 330748566 101052167 180383811 880491800 348648900 895135973 306275380 75695228 263090927 43625456 405191163 699801669 255407043 788188572 442848851 924498236 265118427 259408103 446361423 567493940 926681469 767326033 174164292 235711039 547446943 148210834 462318831 490952573 395566894 204315440 133999377 655950517 926746285 183279335 93574899 145720953 713299911 882898308 325721277 698133359 267626369 312041988 772147060 898649505 607257047 296649536 628627738 971896159 804865490 98826231 363178188 321459973 292653347 151957283 336520509 71501578 719769802 407183592 826878234 621102204 923479333 856910733 719107288 477779842 99102593 53296970 819779774 659017529 542394605 135121882 495155886 992869410 446499157 38223570 177440667 796428102 277600484 738102965 916850328 832609049 959969417 147244490 381392262 649821553 588894624 995767240 457916810 260624334 981358898 343488689 176353592 386606494 491801643 730435647 250740178 847916532 311331392 463559558 56367966 803400772 342798434 348964251 194947819 663315479 774860570 209604127 356997428 591633300 35075023 985986005 936899888 69640152 154321982 808346773 460046446 588986448 974385211 337318139 885561164 394854317 720688649 739106141 871565302 322197109 987528048 980013488 930922713 31206425 845651030 223017474 352609707 173941488 605398786 578403966 16929871 927661749 950309651 599668402 229863966 652608680 160934010 956456682 391580688 132314196 791202017 211712959 966311960 273070189 502001557 35851466 76993737 413784874 334305603 252158894 615056203 165045869 150651642 839154257 358430057 686414394 682453984 536972333 995862251 345124839 573916144 228458822 957503667 250713744 711681934 631631901 102938582 168177557 208879669 397927201 887779365 732003276 135952802 793381204 783960439 147571032 395741232 871625710 262206730 477434182 672190531 644059831 406615433 386530162 194796098 269398622 610047760 324592372 360287443 336860597 52450805 902295681 132655668 334946287 620714917 623596326 795783896 861229968 875889363 473460928 482859183 947201490 626596278 241818134 808531641 927879351 340676960 589327554 185458574 515048623 802885014 5536238 249534944 325434618 596492868 278744092 595659699 230266222 490334687 883536889 412919997 994465566 246882214 874921037 103757711 798986143 96727212 818610873 762626448 996553327 278468630 216506705 390465968 241757955 276400766 901544208 604460257 160435326 943638664 863386988 868600861 868028986 597198114 51137757 2988515 723536307 980693630 912829617 785803133 520849758 514371453 71781125 29804366 887579415 605153668 431448500 899571749 589987923 11662877 681421164 554567033 241669152 655978997 150406729 687007668 149890976 863327504 677018650 703912585 218636523 512507830 490327605 375910723 880547633 442380553 651418138 432369574 150517871 531163509 481889009 738782875 531788219 706731954 112674745 456123772 14080096 29061615 284179765 564886398 838857631 225626222 536191039 257655834 295765274 139327083 947950999 193259258 465752771 31499964 405376564 489963385 339452027 187509015 752478728 604610500 55057035 170514118 861548229 937579621 961216672 311573229 419265418 444617461 727425299 46912012 837901603 154169221 464302913 995105865 137365783 217096904 449774599 778289447 995330596 673288804 976025278 822337785 625658570 306919834 894910649 47117026 928211331 904303589 892107463 449027014 843907549 540280943 449969589 784900506 341976957 607895059 106389616 938064286 801814210 81434975 971555377 287520882 598994441 788452401 120332905 345935845 377736784 240969959 54345392 515454350 535288943 982981594 76547611 969743224 982986677 541627088 954518710 534017528 628371996 190583834 798924907 745828964 320699407 726983303 663029972 551294365 833071881 195214524 63486072 878785358 854564003 868090808 434197232 481797723 639132574 209236566 372130057 420420648 272880140 184183314 731528858 96085581 282308577 319946141 432154086 931637484 378010403 267117002 831425290 592485224 293710965 476779693 29535337 356262223 69153082 479730675 432571368 361565685 206756508 333919219 334531554 838463901 152702779 95091709 754614376 982758735 278653391 876472717 42892189 188612749 464246386 889312176 205521310 307809843 546395617 1234401 811589100 119756152 294486250 345550399 223265714 466400447 61512010 236840214 683380979 184007414 952164426 827549423 137064115 172546036 286719034 809700765 219583544 853717905 52178872 376419005 824763699 738141769 566330319 109358464 203407192 798882682 243132675 499594020 581912587 526415018 68256067 477990383 328711103 257136591 494594105 275202039 206494772 868400310 560398416 689382594 782011523 212820240 375776857 694164159 982715171 705285674 579162508 206171766 313624879 868213767 509686042 994875437 99366002 825329206 883827169 132045223 58625391 296328671 809986727 895156643 893558462 199586506 722588455 921270029 359638967 618137879 932740171 81105454 35798721 823398219 967093805 777892072 596241499 444654050 585482704 16484575 415172071 935093639 858066422 7816209 552198069 783644190 333394826 214898592 52315301 437389826 690177845 181829747 517575264 301694243 318749299 625850292 987329502 458755546 40929627 27519458 891810677 933108188 480655561 878396323 99858460 237285402 473294907 199126843 88698775 397424415 681206291 589360562 400580380 197258755 65498799 787961365 574108118 57086508 613408377 255691605 425110594 575901633 307461895 8281959 635658503 314405314 771445851 581098407 640510265 802053080 817175973 30640079 280452768 244638512 990212024 321373456 928325816 413986182 723513283 799389308 619210045 13319299 632101483 179936447 394449710 88982705 866127501 525413490 460374422 828843663 818011837 761857335 676275399 91307975 550261097 718381150 393734059 944916929 944175207 338270827 301883197 397435475 510036852 376080673 2497437 427546451 362973218 614449139 443380878 39044709 250781733 576306402 178585348 310571211 977384132 984826533 294658324 851652077 572483888 806648504 62506162 374509567 466135622 474041282 773087406 951269127 693747117 512167323 341536768 553043959 68781370 602770664 937349775 974122964 702213192 229235099 459596379 573837575 896706836 147732300 294856351 785072228 85149873 719100932 525120839 167676052 309784152 70520920 349386723 370345868 395341685 510531945 372012426 558300008 359768667 823348789 567811954 540298267 8359852 404914922 290205217 763325585 940476300 143445975 737136633 756986880 881187362 958674982 198384912 286849692 969116282 176348034 911137095 756779409 909331450 215940486 612305805 254983986 605693446 194667760 435910644 388753008 283435455 42439768 807554291 245118629 346422112 967472940 940475094 95732255 559762294 817096925 297421602 398134269 884388156 197185293 288074923 501059936 5666484 203799909 763150094 85056999 747610404 696672642 520648368 132934794 61652529 91031602 670804962 589650872 492718314 231958259 938549840 223126946 723322929 263304561 270699410 458597716 177982264 977691048 757544899 95364278 728211222 867696344 988857024 263814758 641567883 626677744 740296853 734672165 893875171 311530418 273324971 426484400 563516714 460361896 3018829 845622937 426734759 712255118 531877202 698192820 396762203 45980401 225025236 805942200 992965615 317719527 130319143 917408533 277737407 448265625 664148014 903851307 532632867 125273922 493217085 356151961 796866229 516160566 446211239 759085363 220132279 163429327 389230604 90215479 900633586 651945030 257179167 730973088 912975311 188239610 258825573 312813225 576911946 176631838 92378885 833528562 774066002 197977979 832884344 735799305 633687547 781584005 661384448 747524013 678170084 916165747 204620126 750364692 565983765 330049512 480529218 741740967 256190863 370007876 269589518 603230627 26146855 433184485 573023373 148749077 332140272 110942605 674086771 721549351 397363859 295418133 264377672 763154786 839842385 367953546 198950480 776289960 487199910 90374373 859438843 921283264 46087083 633312120 19583975 558539301 924012368 298678083 306745793 870542246 314935992 977752103 937336605 738877900 185453624 127634478 919625739 25484282 442350127 87384062 851042275 484869574 282822809 321179656 603998008 795159268 862847394 777047540 326179755 669800644 989850745 192658988 51208503 402457499 342104997 359720040 277918661 669699521 637316133 845801255 700006101 538617374 607681154 109173218 625538501 581069761 287197527 624201501 891552897 950889463 861965443 435135556 849136565 90802558 974573026 245687918 131850461 591864726 184863572 101900118 179435840 990760357 479010803 998751058 820243235 983535782 76584955 118179808 82667575 584477410 364567088 420310157 794922515 409419686 746265133 792707238 722209880 329076035 908331505 742597916 926040554 837025316 800017649 632294302 577519041 296691551 701080749 373523261 779197826 620680987 138688512 266863868 47082727 79728686 305191453 754552069 536440798 25834615 934822917 250882052 161984112 650516164 220200538 337360497 256101494 426124064 77186502 615033445 77071725 804056611 401982497 353393144 744232357 991772640 871543477 833927782 584976979 414961651 660501175 367759115 877202930 130035792 987550741 133958756 731090399 832119081 565511919 377453881 138980166 864910989 982500403 153646241 347062048 546571736 922567521 492806450 595965805 825491663 144838745 886212198 554976809 544895317 169707958 570913719 556646762 794198104 811202791 324080915 464992025 681761148 411127809 772192269 484869834 139430093 903074190 897336794 638340403 308681184 851461429 478196479 532575518 493917131 968811000 143825685 856291667 607480664 527890409 188631497 10147990 155175365 198948316 988913505 783085051 641647890 953177685 555759770 93954880 429985166 575454302 240274562 439231015 489585362 437412865 796875999 145526357 122466494 362380219 984622704 24013841 327772268 244929661 431377850 59657424 849990486 470383999 481087335 789278008 114038408 563467965 88694710 761864423 148391324 568999508 74797034 68346708 464093019 872576253 364093849 142560382 158218179 753182343 775558616 7187778 942209521 356014558 353501833 364703844 712492 838089624 238922389 155958708 135991623 68497994 10701908 657028826 778813744 811244655 478126715 313142551 801200418 43212620 211991458 538960707 947211353 202260425 133584867 47529031 407313691 744401848 601278209 642386896 960423162 688356942 735981375 534717631 971593507 114303129 216151483 212269056 404345482 358690585 219338600 475827629 23429545 588016237 248978903 402020475 892696390 153851293 501460655 809181319 660227190 439716260 455965089 763943356 876149628 42989020 802673688 96512486 386220373 244468990 755349125 868158353 386344937 425782079 938024416 84114576 753738674 728543271 998488738 773939502 249621660 762362898 340240047 628259061 830542353 335854350 513430052 313842147 156104218 938073147 110388924 18622454 437284260 705025082 150103166 885921777 248274343 716857970 40039562 983107408 487509609 13971823 942148734 393845039 395524608 123386556 40352507 785500537 315905239 403169491 248662583 46773711 109758415 557890202 201545911 165977718 169308148 612572440 121699367 218837607 172524127 149255843 564570321 71563850 903772900 897265022 970107172 346558864 280557007 968333235 676252171 641791558 307589376 728489077 951864293 453521619 692624537 474482697 673521636 446456326 484375283 801394559 906317761 968384040 376331066 363414751 163406101 471264344 83954948 673363137 718102560 579912990 592872456 147706465 449676053 900636059 395232356 997274565 693573396 225159726 635646126 948435559 833202890 239374946 496745701 789045304 763268496 583898771 279674157 665953831 240261133 389457357 804270763 853236794 349928644 826435643 607803773 533115650 808321519 117999817 693882971 535866194 192373912 956045833 639749401 774616959 415631516 21178893 510499954 261026369 86019972 962728974 948396085 373081921 622732581 479413004 415490358 816456966 917694298 84153690 984795114 424826070 622380063 157818075 370133295 908837154 665703860 418582682 833579187 663885185 814041231 7246197 75583192 279155406 948689121 83329259 981329043 221171196 993424146 201242099 404466249 991694834 620081589 134221148 437364209 204991667 761155766 291565036 58944398 513981867 787197518 483667532 770357935 563177463 513824872 354034768 798140165 265336939 186204811 443694431 514493871 276286356 479067145 903364013 50674672 661213188 830768333 560398819 255037237 752574455 393755460 661338439 44331194 223974809 70973550 60660647 562394873 217929533 540557878 330810309 265857368 175859291 437173675 661604141 109416601 466538741 909156607 736664489 406301426 317785526 547601081 353435332 152301790 566671759 669782780 638766456 215862070 433336273 549245938 770600011 404600540 433706243 973579015 999297360 289413050 682755910 462638015 693930948 399930235 985217612 606390815 627347737 59189367 653710804 348022746 642848270 5000928 308536719 496410418 201169744 93980383 654407234 442590472 403156674 196364697 333132984 451103717 437287521 763329186 624342249 605962839 347699331 371377535 425501986 468617603 414053306 370129346 444454520 878993566 213541849 978849337 522495466 537234080 314196702 131508500 344049741 373394167 656326845 57441918 85597014 701339729 329730507 686000964 884537463 447524184 810114119 62259147 293583813 377862128 106266901 97337378 257934998 400709505 507517214 274862332 771675366 375718809 951619813 563227409 156592796 555551976 320696197 572523376 672540123 655971226 286610099 311187183 534798328 973384222 380384086 471788373 308332195 269491486 379081482 893993751 412726665 53003323 813907125 144617539 725624807 350064763 914363229 53131397 838124660 343170136 702375558 160059088 365224903 486694906 862005628 942466616 290685656 906886460 137398835 481712538 617507963 472619975 74871128 710038235 817846852 80306361 309366921 778282807 172949820 866822790 140675209 932578790 643952312 673757797 154932445 81302351 406604590 249214588 112834528 587779286 367298530 631226562 647727838 883301797 529821308 486573728 740611705 744684661 821732502 474646658 456316523 993153984 765396525 407850455 727710481 533333563 445914767 318953339 861527656 677697347 662877336 552629814 504270626 431025195 414120792 679653744 367142754 577178862 736702760 277604014 581975510 743034690 841961306 273604918 27136287 423644240 630434903 217909749 948542218 374796888 651833796 232907862 215714361 452417089 383060930 593019544 724396650 313554419 182178670 641348755 571274011 541880848 368604086 499384044 483578960 913240511 60695718 896905939 809809613 492219484 840599155 343684695 290224140 903876641 292970603 363350406 678910461 950713865 419550227 240180637 395647669 435111889 329322454 284948919 114774503 781474921 310688488 600503735 619512778 705525027 289219481 446071810 741341244 808263221 772178510 766690664 184360557 409688894 582305818 363282902 954382762 635698442 889403636 452005110 306128813 532731392 132210532 351330895 305430222 809744555 449745398 818216202 842669431 313783268 342885084 978337419 665250463 254865551 285117068 544225997 291454280 966429252 302630968 610298689 355408927 803863447 96393275 558617112 105102737 769247851 652245835 452528233 461946035 313291003 9728904 795910114 728947498 803783873 844190698 341407680 345093593 473407958 735961354 246684310 692771771 367875550 952537969 640246163 776412955 980188408 171756365 762184708 837009331 982446078 14451253 402618314 353185023 334568972 946674264 440556655 778114849 17843457 232544468 723278831 127472046 41157335 946164827 343063266 334522093 428128199 942276407 398928155 364595868 737576207 227294186 521938088 452482374 305612121 942097714 716608027 211967596 838669970 930165879 218536298 648187690 726881130 592232226 283418732 450009541 206541582 386028957 943340641 761750446 768280615 414477066 686436777 602407993 485554467 616681438 894082207 586834379 802262204 833967256 821586258 558260010 374919833 420514260 532286591 896588518 813157302 813470248 385745209 423083690 826765075 55688693 181372169 22977057 724427989 179061952 383283258 722870898 981541362 462322186 15301459 738549957 943319730 849440527 576036623 207612572 248297124 398729242 426187404 250354699 389800367 217922377 100241856 794583431 503597396 288972309 904738326 223383351 779846145 12397850 245954805 248877503 936630935 366760970 205152098 365503012 38484183 814936777 298650887 574658715 459149653 806088025 712022841 469702650 493103270 768540678 15370303 430966646 38888459 906823773 795438451 757391471 966121567 19312295 71149823 482206762 333440068 723345442 318425553 307415262 971648693 195062089 149996739 59826789 400426431 721636203 880953745 476921913 441993527 411392095 447692886 97375236 38502246 530454842 230673862 333022894 272258144 712798413 943905555 624377925 987224089 44397407 143277781 42948470 882546693 704061909 919334099 637013232 162613254 725731647 244963014 402002122 774706107 557556626 145585893 975974068 190380507 385162429 335185386 345821485 743049844 782511436 916320999 426145763 232882052 292732673 796125161 35459852 103495263 117238559 892141828 355459781 597317903 816621873 341286923 960447495 472491229 627503729 902233937 976405008 623104197 312280349 173141294 555237068 706899458 892337987 845025531 613128966 937056153 838538577 993973536 630115538 976361448 392300695 852812259 342693357 678085442 172968966 86428270 450975745 856299079 245994123 86347899 595030648 537032990 231523661 191866172 94987789 68628584 387106571 476101240 4268023 138367700 96110668 258323832 708222437 984634826 520684094 917086029 264524470 237429959 345398637 362729316 972781843 869240215 560887635 258781850 651681975 721127187 834077943 130744780 278301874 63203395 234197855 778215331 800089058 236230163 432079689 432449219 28135541 261554007 981386744 561447958 40568818 875309834 97225109 334922120 419415649 85900510 208752184 946259807 290400280 786417320 352678114 531910468 176326877 711915335 182103353 255571802 320494054 458186167 143705504 948527945 681004553 993621300 374674026 534809443 55671620 567689888 491744245 814855322 619859497 501549827 57496158 879961260 169178810 598221561 495776922 595839049 338645032 209462824 983344485 755842069 922336240 566726886 847657568 55772933 256283884 147863537 726123757 169833868 385854780 850075318 364356468 753946336 262923765 280590434 570399785 618239515 325498733 950624736 682079115 785012608 494134328 749162256 506963194 928968342 968796124 157734490 410759328 692236600 7299614 982988173 756410651 494372073 393874509 151821445 530073395 152783573 396585255 990515681 489860597 158537214 75560143 551745769 551998097 548171031 411398082 353993633 173929796 259347128 169558931 126989287 248726850 517748633 297552175 258328424 955103135 420188364 329147371 468447119 578585672 171858091 679273191 860552203 798319800 192040599 384579531 573072824 152455059 632052753 310966142 930373366 97553259 712263339 692470738 877525983 997471341 661045672 464182278 411356418 264370212 16095258 249959203 753980051 971484 900028141 395454492 680612746 900483536 43028368 973722750 994637363 905051634 123585152 472564856 889679649 366281741 912054383 860447171 682779286 128525483 497217878 233916314 713177506 993895882 55057670 294552625 828830302 513459892 843106723 876153329 584611661 76352137 130436868 541054866 833594746 428611352 171668006 669852447 563599434 490941847 949581845 107125649 565858885 677893878 334902428 636876571 694215689 892361256 708648089 199986607 924043624 28606043 968352475 554009168 492338800 877253615 243831035 459291555 674010387 395095447 50967572 150717368 2180864 694330896 577593206 132520444 647354912 782692614 8073109 638132977 229763866 573140688 892316607 912606894 553057469 336806855 113941794 545821027 461024764 605571799 476887659 515778024 290448648 386415930 52327033 716348728 338377811 343305011 783975959 328915618 881374603 934016117 74968199 711319083 168426642 575541953 39383424 553737012 6143906 274330831 425105826 808494495 371754925 968805364 620595190 47250506 460992549 41257577 615014297 439760609 667317926 394937460 313762895 14137322 91642825 130810824 145540027 354314417 57051776 918756054 333689411 503625467 865435181 800984374 285278560 698386450 39654607 189771200 61530017 793193938 350660644 169626772 917872495 674400496 12760873 445884908 832189908 975053294 312119144 171046126 837658799 355401144 48863257 647290633 931090456 172496195 863689828 164183687 66808888 619520783 750873416 379620150 313535457 847580047 611861507 351367211 80522934 613138363 409888352 518904416 336879822 659847016 134951754 603430190 740093108 203040106 519643911 730795736 976601390 571588755 831654769 696760412 964325145 406297274 898244375 273179959 434814876 884420194 85314656 971566474 337119452 361112698 904334856 859957444 584683059 604553289 318287851 632467575 138334575 193910607 717203099 164326179 847579163 285193475 618517067 928241517 465637438 249846593 418575581 346139039 656196416 711277994 156188319 226484302 453434578 893017320 158960295 634857714 8513581 393117271 330653892 530155431 847487937 9686348 271252664 717125612 45795737 871938147 945750824 208738311 7375419 425443888 455551427 960885505 158498769 402299868 237005259 234841198 425314017 445274374 209123762 901914857 246053451 289075621 774983259 992813014 101633299 827227694 439492274 717752621 568995626 494280655 647570319 353372686 771908457 613981016 932389932 911223808 209590318 858032090 88964660 144452036 687227360 276342888 353830360 949548590 196749366 5707214 457681987 31181512 452332266 17369964 549461450 303409203 721346536 760603043 677188670 309292270 812600235 862007780 187612173 238526927 554786941 148744465 885062345 507570631 318252544 533140501 861263708 753476385 102577146 882828211 524036355 93231733 55799272 412718139 679972481 269558105 402176373 296701197 674362006 838108794 910638257 784623932 796842541 492580382 477647740 868154824 686869356 318437649 117889618 769469006 411434809 81405439 116424297 923436809 740882014 512886802 985497765 914593796 19802347 440306909 708208601 983971596 259116875 73833490 791385775 946535108 50480329 219208237 40818559 43341968 183405568 367198763 499308170 820704043 35614069 377108269 210527835 621585279 947085117 500344136 463745413 876112375 443497016 16023051 383385689 147428507 694815468 540999347 703644717 428391442 346288955 421890839 420641963 301913112 440206647 268471522 562216969 289492307 491507292 710145689 511912112 180929217 129402949 23362129 843038976 159709279 783421411 316409027 944097283 118321056 60314718 43540532 745939003 503102557 781214112 320698533 589967581 171339364 64685505 865909346 438514166 298497850 744836768 98167710 165316603 223093202 597940268 562838561 159133563 447107971 481522541 877881107 986031773 838818518 68839985 29153246 476640428 84625868 424775957 643745034 494052511 29066547 415795922 529820496 19685058 636688980 266913345 191200544 625223727 278259465 378754743 763543854 616155143 983448171 977640718 863817679 897134628 190159535 993472942 62334660 256431590 635922238 386510043 960868059 558214314 617312716 643296307 47048328 284450726 705988289 945910108 807841857 708784613 80249399 427587444 408881624 670120495 907447870 8608145 871693835 125809328 23134203 464483664 543456897 165775647 883004132 591122138 144250446 665400242 384808263 652557522 919395132 854736137 346853228 701266920 297178800 25470092 84569284 380810661 937402762 5116416 395720486 273718823 486464757 775184138 244897160 775479131 24255456 144010995 950093939 547244412 565748503 839743162 462981663 854260660 708853142 194576150 780350397 980012946 347904794 569955886 921876128 269055660 172187834 579715744 396801668 405534619 71946387 643504706 716147610 780428887 523765226 414821557 974800326 986889104 398318030 372422506 628883387 51908470 517020391 853575856 227028015 30898883 335042635 912571825 683076768 626299465 435208925 733694992 949573077 955208561 83958166 766558240 692030819 767044823 919667454 812872114 873730165 169052847 561103897 732558417 200236801 53417002 857488240 94801725 543686735 444893174 445088134 813182782 553685960 210051548 515598470 773940282 239754868 767251387 355243234 347813841 687932311 397729060 99222777 811091422 349821416 631644026 826660187 552368531 29624334 203462149 116907206 107035453 220888276 527223213 617088196 678136657 169671308 842090198 801805842 442025645 157274929 978170699 753402178 893188956 29039896 312197506 295614289 804560083 364592675 316639815 199070103 32426113 820819258 284103039 112044690 954246445 913657452 562764796 447482152 141082125 525289977 334141735 717791113 831600099 4439183 302894499 164227064 604043741 499687791 385257862 621755589 753687390 413427010 848161157 271410765 341623902 626879190 978610722 590877658 345674067 419445457 454740230 994084092 706050388 313563022 689823528 345584727 338238201 62341815 690365180 390778881 219625336 926526529 562515810 134617614 820513303 517280224 306590326 934420624 590499744 146216435 463048541 982958991 427015095 141305678 59739983 841167424 577033297 784820125 669986536 724596518 844983415 626918610 814976427 746576486 937845830 963472955 149389595 150023362 201423309 132620284 839599087 133610040 83963027 492129872 819182846 115879683 40974569 756586566 906424388 79177339 125681954 838592364 713797263 634579379 246231687 554635246 258976331 344273226 409639968 385001533 249890190 399274895 560203814 26193913 95680023 733713283 16663216 629991386 226178071 480036444 429320647 691557766 116547407 119264297 655882571 614454659 53387002 820559701 692433651 913971957 749744884 584161892 526190506 753984488 820763972 925022666 312203808 469244648 49024146 695790492 965622837 100962179 447455165 849874904 273938364 494314026 279372955 852222023 821913963 882985689 809889480 283581993 38474756 576615098 670093964 615713742 92264071 483643523 303786877 865075395 217069585 765188615 756427293 524837341 388027986 862591623 893013909 299665236 323745268 312197217 618842459 213572909 927386318 393994555 837820159 519945278 267210139 16431881 695377956 45889820 417106419 35873898 296520259 433635787 906081561 53086173 958892034 511703657 683614488 967327033 250934475 207321354 63934243 576150031 316515667 281133449 403508933 979459865 510350382 904166441 926082689 95181750 848441887 333485859 54508566 160605913 135226302 737941667 534880436 790966999 521686100 266499803 139420044 769051033 175669294 35977122 181933056 755459959 360932307 389078676 671795609 368673704 514501561 535693837 935821810 167313144 133739013 75068916 975623484 231994294 608247593 418959775 9814811 846080846 500503760 346595340 177900187 322760026 208386723 330321552 571469939 367374908 504702078 551142274 349544192 56127612 735449608 171593391 922309582 960589195 697207887 374100708 134180295 396605561 516955748 373381205 185462751 225677018 537974611 922388967 727040326 975212243 32359669 952347274 965172535 123480484 813545643 738015229 57681601 219142545 221142639 785550671 241136940 266795210 477663917 114467620 43228133 92639716 837577316 560357267 705690394 435291437 378201819 597868161 435392734 194703090 756082677 706080686 322343916 629707963 293817919 860395188 832962047 553506826 453575209 739007342 300420129 930533089 228162358 527827557 738988171 144286564 924416873 228348210 582183336 621065632 989403540 918345795 536606392 472505957 421826032 441402805 99530473 287133224 586952233 95399544 30168616 486364732 57487660 25671662 426007270 200922984 847803120 601100474 828138227 869982537 692459940 180209074 815849411 411333151 556857812 729224811 123049208 653526747 450164516 816970606 104383446 992939947 551189386 534541595 4229484 788083136 957517879 964203481 960100692 278639100 213950035 846148456 643109054 345818654 296082332 958570822 532315764 518965017 625973812 480630241 287375624 294158828 810219702 889048531 78482819 748249078 284993 228841744 855244407 606954016 548814732 31372284 160824041 696366330 813505025 576530743 662853618 255578924 577368646 311505115 231014064 824041358 882205170 101662387 754256075 867474719 813853662 150549024 202881180 845458931 432808651 669511698 274353248 177030883 84393629 23279508 174409493 632565816 656299448 633700970 701787709 363657262 857867210 744489991 687080920 847724523 602076295 24627230 539785154 656418851 756858144 911084172 833870916 607543819 42646171 682171216 704641599 476970397 26884562 753125071 334243600 922486992 64915294 891436058 996941842 895093132 286989453 750420148 379023599 395528703 523741628 158067519 891540366 979649296 496498116 274532492 464030866 264033458 375849426 832848133 788296955 764507436 170902026 319674044 922784502 929541955 290115763 750278011 976945076 726664752 507033451 947938689 875110311 299735537 808263006 126039249 614441835 716921086 74154076 63803118 139183362 831631412 59980074 566544650 593774943 183868737 682414911 352085873 516315785 963593576 897927835 416320842 34605145 50768223 85790009 878276569 876285122 910943661 444511724 37925550 541863219 765554892 97817264 501248170 168546518 666025617 952643051 447183515 1753229 81106567 217081440 492070700 351319340 616023015 808555702 960543316 646334327 555969039 857227339 129866329 385093490 66771629 994396668 865142310 402372371 622304151 839570845 754354016 577488200 491529136 367569835 315857791 229749787 385965095 390127603 389669003 517477251 49218073 973722475 557960916 579763479 812833862 392263775 823631465 518501660 192631117 483565187 589663873 194876310 836190845 755718741 608270896 997011704 721759 278097634 556265788 291826574 677493965 348769721 145200519 422401871 143434722 16954565 277530521 968309065 722183093 31829005 438571128 653011231 361794498 320192735 526549977 801319519 714530075 601618559 367540276 761662951 65341870 93805179 600041892 426747112 323030155 7132324 691166555 257673166 171993159 865865184 510797779 733122686 269339924 655065803 445952658 501569835 4997675 472137298 817324923 29368714 324165334 870407498 237090103 659610564 639368776 123029240 261615370 950387161 468001209 702060434 348972919 985508315 167194765 966663124 307086337 588986373 194664361 79868362 514346150 609448337 832607030 668404032 134972071 681418909 155300326 429444885 193041110 419576796 680452886 266281616 700419579 249088219 363413998 75036784 935052285 882926852 41453975 708484152 250175938 479616333 419036883 698531371 369569442 17298108 629161635 843420412 97770403 281107859 120258515 44770427 651321867 16687233 993847790 126364639 925685145 517528329 338331092 358744889 554403579 704910916 37348486 159102784 202805328 330047561 833369608 436076167 379485533 948549212 101677165 308681554 257888319 162063059 326766074 336800720 58419508 176860321 694647874 58662291 350288721 530731957 317499164 57676984 968405552 965633320 637037299 954061674 410367764 424123010 617210659 263354380 527679203 770784778 849511715 147182452 395204288 632558265 462610894 732340129 307329272 552466424 998369749 473050448 384871240 162577902 6491222 599938739 471958323 924398918 903815262 459569281 603642436 649209775 169024020 704864223 756163979 293860734 344166114 509430340 132291184 910835732 167685292 144515807 655597085 757389666 421151500 814878825 78961478 178080026 136926091 502318927 3824874 353908027 899384546 238773932 918965564 127218699 747015882 933712861 572509106 345251228 443901209 143742822 322469483 804052909 952053267 439372810 822126255 642380701 291069171 935448888 673806577 497286369 146972321 979560578 970320510 13672188 875224992 717992489 492695302 977802156 687676486 815590801 910028433 252877354 81934866 54319393 522823474 23568540 149881322 632702492 883340579 573745749 462028154 460004346 875575454 511649898 836553154 757087010 967726284 72407410 158519503 987764971 851254075 508880863 977410222 54728392 162933103 933043799 993375624 874178508 752876808 950962881 955116567 429452173 89466519 995540246 515331694 426795706 613753421 416040268 371720324 29255954 131233966 681012794 427434430 640989504 297404799 634956746 879157942 890564424 540731710 770528090 588257082 247493462 240642491 331997650 122158798 365166017 718833206 516159985 840873990 782378880 124833479 911968569 386406929 969679012 285617244 696743902 215560108 326250275 201437793 417604666 820317389 783167093 737804085 649671216 722924929 291959972 714170839 238164790 634075566 120156419 220534101 42353104 805764479 198327516 219257626 855914308 44257093 887328852 986652629 205613742 2113702 521579332 471594110 341420173 930633030 51440525 317005126 637494204 956608086 649207554 170896310 250354416 319100312 121367257 313018379 576933066 755599406 393513225 13029643 235478614 663057992 803806927 76733870 380798829 459590019 177387315 939883590 988709694 890560291 344481830 720875471 739778796 121590160 648901288 851112501 250129072 526967284 140955964 184294429 849547459 897798872 925758891 476685681 746266054 575262040 214527901 205690450 121308304 149991177 986903840 947310753 411918145 476555051 795526025 59106701 445352474 246037341 992080461 55495250 920836969 968651246 817075704 387159174 643703988 835426361 230192075 22350016 204058289 935489760 494179286 310554612 283530308 635885698 944430342 245260214 419358978 656853767 104541878 580337380 523035804 129545331 513379982 674491602 363055074 564592712 54826238 506266554 198172784 428848213 493739259 220388349 547196614 937864641 114743392 486606679 911739182 37215286 970540379 412981355 44756574 719032526 169541539 425877214 14980559 659693864 173987563 857341178 695327546 361680537 573450157 651429650 73510739 227357978 684815659 977908040 296617816 459734242 378551121 270673298 852781695 335440623 803300155 702021767 58752916 616873771 161759479 699199484 875763391 946553094 121323292 859988335 27979457 399625421 730755059 773959354 885754938 684372076 987531241 401486797 726477637 514683688 574305847 179986185 505788406 232703009 404285856 159221617 612938346 238503804 219757148 857659522 694965828 212062911 266236351 747937246 890252265 380998315 575741110 926259779 957362109 76163482 126052385 644938211 959905056 44839361 440763579 705600093 566603168 1110805 918141692 50341361 350872437 537362250 991822212 483219398 666133194 25355376 509362579 549640442 482672520 709617519 608406789 900774860 916455855 940462603 66146453 112755970 213076542 36843176 358759509 339901013 853633786 261973961 976446751 904959226 422490018 408078149 532186965 781219380 14224205 604399372 22056383 741780716 189763784 580314184 819787495 280821275 343476039 601071689 21746357 676648955 544302232 32481828 405029094 225843647 460465810 30780202 251911901 677701601 411580665 266184137 42963851 303742783 855416385 807333848 898848868 400391135 121807255 742599077 458953035 477867777 90623230 329026386 970824925 535049758 879421952 444998313 846191348 719916834 200608300 884375341 40911895 103035156 905072013 614661203 120789276 615844158 782708966 954579880 135722706 794369678 927500812 568150142 139031973 134116893 611606341 549606713 198811290 29420893 734213025 546058290 866996174 813644401 296457912 228594002 848479937 78380079 711877230 274036535 186434243 16911625 58094517 285815877 28104997 200319228 616620057 180913635 655167070 847609834 288172322 173808361 258881050 305925509 924305492 335677521 914099069 408524499 540490727 157731805 687905774 128973771 560771944 264606625 832477970 864969295 811543868 607924287 597161162 371565886 720762662 378188979 228687186 7246872 282888375 179967276 890578598 472575776 817338320 279251869 376702578 33778769 298786411 464185901 462001583 977779532 745886891 867272391 516458250 156848310 649587646 471012004 672163739 310352557 430087267 32470805 16237238 883311440 445503636 570785596 459152165 338426524 82670657 102432570 470004636 450871456 957380945 859339452 627728983 275779147 916075320 554566657 787432735 336689967 299267398 455786085 102044237 654799459 313809696 498308715 3624639 444134627 797078626 621009928 404214287 96529672 642052351 304942485 606341905 108126989 414743469 3223936 65427800 745750832 901531908 534065618 426070304 841437484 745513186 710110511 315026090 609268987 453110816 709221033 463108352 280205651 544305294 194958323 235222041 121584342 74807663 538994077 871306543 202125502 709847303 237975059 40297480 44000234 328059836 834237220 697778929 450493736 309350515 431176195 723089760 200501352 553620487 77183917 56910687 684453233 940177546 734969757 251935985 952913760 408582722 869635165 100045418 397525550 639467125 53851644 537449252 724490828 517688551 93599711 195847872 57671756 246721730 775631091 430817162 214642907 651672338 578049208 270019653 553258423 781337495 56423536 290113729 654603066 408653896 367445921 241170445 2436469 904660098 599677457 711021549 456588650 952776097 271882424 914671787 131954666 660079966 547626219 681127909 739278222 544076428 90351268 635635741 534054654 991590512 417867100 382125407 674145656 298787418 472170301 725011571 228786378 659663999 615476811 25488106 529088849 49139029 948395350 904696127 69327763 775744570 332047460 331045134 807944358 426481825 710658578 942293934 357936759 728002134 447943792 617628081 713990523 713406327 675720105 606536933 373926011 392753488 3105687 337192313 153916077 163808946 102392862 699110983 262066578 821572015 289404873 40842013 494680912 479915234 12835881 92716091 183935461 465571003 416139744 3283203 645049676 92099575 194601291 275278283 765126782 269955734 18005178 721769858 55367851 493029952 614647747 108136121 472253684 74462458 590683818 235205374 89392610 230462044 503828901 317621528 601614121 224495414 489869747 476357355 38057097 810008569 604764650 248545968 460638649 971990713 47054594 559244698 40324637 877143922 33953324 847028645 447889108 335044469 734234990 128649441 461751792 822956438 166289463 871950515 59524683 111366228 127873060 801512477 674527509 380957759 788085614 993449250 227000716 814785611 972971177 153049325 478923546 733593701 540313170 926338500 244492718 700498760 463849355 222332588 70013206 916709553 66554623 602718900 509141085 526563957 925128085 420606381 723992711 866537213 458236470 177254885 817765271 670224655 786139034 66377079 797198992 362311963 97781321 637931527 128744193 772372428 290053580 735559948 577695550 353517181 864026204 446465676 515252205 922420977 104532498 52311451 28122637 174283396 472118705 759595943 925750298 734640525 619741247 449439916 233079420 330457881 117062506 496719697 211175555 125902910 750522902 674897927 552807084 866185978 363985394 651704688 484573753 466880163 373552180 815045745 384242597 394006762 765398184 30551084 942928719 163602958 239310943 696849387 107542462 476347733 243212007 218748995 224259421 760742383 278970645 286317928 214469822 195424441 455031649 921402978 83723723 940983836 239896857 773223699 954944348 486705600 858301726 366627040 298659581 78570541 839043050 533480238 588223317 870390976 16127985 190462558 890808359 359622528 564735751 551102496 694560495 611205947 860796742 566082686 48636632 251433695 31341 99882553 216432648 987797946 351174268 422902641 967152383 752063690 644204389 333769853 8190212 582627228 917561337 85845218 785458135 385241147 184622462 341538902 6826585 880679396 437897336 129634340 330048254 779172346 659819887 432006414 296472540 179323748 713204632 673647478 534985559 763965752 673467360 718932301 254025945 99317017 709717935 233512383 871403056 340459438 341847217 90778285 105436842 51355543 662375699 244549925 968543223 160082633 380939496 30491791 762573712 572628200 260039273 853108597 35445096 463343094 589689834 35635426 397920627 24766152 523638155 422770701 202025505 258809307 689816619 353362696 920982283 269746764 66259715 294136531 499988741 365572233 72791991 285105197 170958305 126254667 173313836 576925655 666864318 797435368 934077787 975302233 821714404 429124947 512289329 464775308 989093506 795778167 337263643 279294086 616538181 449402072 232019325 975319343 968180088 341127737 924608259 645283620 493846427 247794458 74717684 806357287 229652641 864488357 438441441 178407712 552912168 409732056 892710329 460486014 508876023 796097322 850099413 219061565 694337563 621560522 380736639 694525898 954198452 461945431 34806349 310022589 705256628 542966708 531626900 464487234 214607541 328594629 999633705 10752766 717417958 720175036 301771992 53400175 66416363 543952673 141821771 511078722 457756362 151576742 371540628 491061803 605383321 798810498 533360914 786641700 253357132 157011035 167970558 734765279 918346621 149416979 719684840 933663741 149163238 294329821 407283447 93073140 823381217 83510452 396484503 276833992 297594421 839544549 787095833 796186491 885342663 355769142 556525568 609453462 515478333 309771930 678294401 150311206 812691883 4518863 291787858 791361741 767646160 545702114 638523150 41598911 670817477 195529530 354470417 601141570 108579221 397751051 75787266 23923996 726215716 595538586 291117840 716967404 373752278 637484584 68858762 841059787 277026458 89582911 835158264 223858070 456258424 112140452 568511137 40293222 665283409 336781140 438542749 302342875 456167657 329272832 333471526 96167886 270141416 762068301 23330291 767597988 446205016 785812549 32790435 153101439 444513189 729666208 274816522 844636848 138066377 738986379 192767524 676438697 213782394 435610470 241800827 470265285 160926824 867759188 604895697 245180500 558282478 552678519 611063856 963086771 545624647 569681889 685219893 246556743 140539245 869392087 231375993 33404254 380399170 429344192 129471704 196415085 148513162 339885068 989658431 635294937 912527389 182233611 532845161 48106455 922926540 743988695 511299785 781027348 446661291 996037594 594896956 598488130 810048390 458721223 646977709 852578792 172623871 213925064 864425701 393994114 546003146 952557705 762062936 910863123 903563150 789724580 114139819 125972142 742910197 293460828 261822709 454041780 338526430 482082470 584010115 311308798 118609098 241883097 661242968 491266766 109978986 287750143 733363336 425339640 714259898 142100124 543878998 431072803 25071068 222081405 522368077 612754290 13077477 592301570 905405785 399225171 528325107 446268698 943664962 12847278 528813564 840773658 886801679 123048119 429038929 351771317 572067714 599414541 677560933 993891280 550405636 872442938 681146480 773638549 184165026 521989748 746356998 953115231 162737858 393033699 429851235 312146582 11781893 954674903 430863755 34232131 858678523 929430632 217196232 982663320 723604234 818639455 631752920 877469416 841720427 592474969 719965014 950703851 139300377 692195227 321248116 182369900 323105154 148393457 946322732 946670627 554137165 697538067 379816859 995585055 79711064 728013363 523465161 794675486 473833917 798535919 726431891 570745478 755402676 446169493 459974697 276979106 639112277 67348863 329125034 366539976 499419062 416990453 193087661 927254491 541971869 639948479 505194799 347168269 83153837 272430999 896545800 221481249 177839886 126997531 736212723 344326239 492741264 644447231 951984092 515405866 768372927 322214105 386410937 159534081 35775947 181655544 82850854 104627263 639114962 77241340 956290092 206540359 260388766 804712266 596401147 218630210 790718204 640797007 801194789 656726146 775295332 556327777 375673284 506067532 663957544 9013792 497062369 914539964 360258838 275769251 367065819 477953833 895402125 960133719 888139650 642508696 829346150 432352512 833835892 365329985 798136466 434072692 60731943 622437833 43177980 181265118 26794659 561644079 141493386 448530904 394518786 78767673 821006376 680536419 977025482 628761826 181775996 196952722 203868264 283541357 500551402 718712169 48678091 155838073 677110958 844329997 288930442 672472607 698613369 701057075 408186349 455812297 313312356 927983683 676418776 301431082 329103601 565584101 965827234 536817925 851305425 541546564 407548076 104740679 70613986 223497326 644565169 553256599 283245521 975994746 130952836 549468531 748297532 644850723 677247952 488017730 541990252 886918586 926894720 361978852 529498358 838364702 260741681 434623309 598368751 845814369 763737410 346274312 45582061 864345295 222262473 12909108 219232108 647808885 104335986 670750390 434646442 989408573 958197256 535042746 790775229 86219983 149556398 700008437 659770292 471073368 150113239 82832821 928858546 909051411 70202749 403365982 71570719 550391262 569677911 644678314 548606400 511266053 860894737 983658864 835229391 26506664 930829362 55352365 521113718 629228355 185950296 353749863 877919459 100476252 597690505 100501764 306309642 331647367 442975387 69163962 666842721 995487228 275498289 73388781 566701135 516291124 349446362 136368129 815719448 127372377 281578753 390159141 381631768 28934028 531896113 380712265 450455388 257918781 755000652 817652943 791015510 640375757 117683272 466990699 522387245 756548693 47288315 588852481 312624994 106848575 61701746 626206579 41997949 580158490 855374920 9335081 322780034 189174867 872110626 325319850 94434902 762646544 113728034 387380811 920401480 690777806 995223520 92387072 309223274 240946948 662971207 319592739 759102671 816170683 57863463 746928662 800428656 160420765 703699004 924843256 332029242 863135410 501810729 421683899 849540165 583687045 599748697 860613956 588689717 900616167 968811876 411714939 246214847 528768696 116024296 965137096 473407357 522227989 294174577 867077472 687081693 275461928 913713062 743666599 942873662 878876441 301456842 737451139 156032895 894613870 897447278 96424000 444436847 612267496 68173199 519712972 236016493 4390256 787191304 982194124 266171262 468921155 796082835 193358791 436667776 862595968 348853667 620415404 951407097 802065657 713869849 878390799 13757883 266058775 2560923 236356316 781043154 407984377 324551970 832027802 502933079 82421724 680640016 592853966 599942148 925294983 356759060 645144652 948369583 561020665 955661767 709754155 106841282 427650759 631568017 55785234 698849196 529704853 101477338 961338971 20905371 443363189 362555188 520927924 955400129 161237492 692034771 50026549 253342699 958328934 982465543 679472463 294354808 711685863 951232006 201032135 831495599 231995707 962295920 586136432 535938063 44477577 220329386 688173862 503401549 193021418 112903165 107267863 978081410 635003182 918413729 576800364 122585568 392135274 129395644 123563775 12206445 858395525 478223020 109562156 429655352 636336581 930125345 372549800 368225525 22163861 987244839 732957909 776809735 585782047 295122559 647053352 58187043 485481502 592980628 936022043 76732665 903094774 643169459 147966416 96439392 74567070 906557360 996029140 685995746 367833846 610587666 980041953 329613453 974900511 797565285 917898309 299176780 178236833 334994397 497425143 848752761 707664595 612261060 254617476 943547288 918483474 922947940 411114647 638512453 21748258 796428975 10475894 180036091 876301477 904204605 162667226 376652393 915637347 800173397 650824109 464998800 241155643 371523620 77625449 678060572 299783736 752137347 573180597 351706055 269093755 448101933 843800161 143083109 933898142 910856362 491610690 422664118 75669533 639128982 943944268 108724459 771652222 742373018 781831936 94183510 758135571 712697586 220999592 995105451 17094961 861985106 212400856 810052534 818753024 581829578 142159530 710987046 778112037 934632800 276865728 500884339 382398278 552037604 953552304 167940832 975013926 19638418 769343623 959756653 568783646 314396213 210821561 620402627 357086699 145475808 649765730 895072578 24261976 522743069 321544252 663890708 612862812 214102789 876594276 807904360 262391004 700295196 812012011 61640974 455166989 438465672 883200809 242238408 485926693 172600765 31720709 400917774 156938162 215181791 581077721 603785686 48592768 848231739 753853482 179461791 155256644 353118933 584747819 457069621 881393552 563259834 678486051 559250743 59401760 205523279 600726309 972834530 909842902 681930394 301591138 995398711 250630672 159445600 311772500 94046232 280268327 351436600 277860065 354233024 365085639 209868868 996159436 47223072 14475540 837085581 51901248 319903124 64889811 797369650 843022213 64097454 358091091 52692188 582678392 466051863 576512195 787108183 424449415 363050056 40546092 163523079 792011296 995218570 169536221 835968379 459660674 892111697 60604498 599414453 917554909 337559518 762810228 222236047 162764777 915029916 315753330 376805619 751496309 910867159 475951897 697667914 773745217 726930292 673588104 994729817 365782684 88255725 178577088 922980940 257254612 436153272 279705066 754765993 966501380 210371250 300496659 814404019 275242297 732940983 125550649 166498208 56234565 352658639 987229187 493953463 889265701 359458345 949400138 182396055 479359044 141518604 837612339 691524234 849300951 292001063 149119342 984691833 34022220 83393273 765773833 605470909 78202566 881377803 557302451 167577913 970316762 632425316 804140375 10815174 765477725 773428852 555367600 344765759 2300006 294895550 912961892 966022145 892384146 336923928 750428917 149228811 824729967 561835228 701932968 194822506 80895036 639797894 940463269 402527120 621779108 890434632 602760242 989773160 509266982 252291182 533266552 332275562 13712819 245297162 825278116 580523181 540661323 672369350 396491516 338482553 811754392 964772745 35832509 29054008 111065841 507356646 599843989 474615702 848982841 515170303 467104912 516434768 449008866 437174234 246397786 574150206 895149592 624382073 742188299 26281236 636173008 747112466 415744412 625115340 163618034 857619755 841715582 3374836 476211343 240942540 188437552 920987265 980496110 244664360 634871521 858589869 740595517 224500347 71390430 686651869 922672320 525784334 447288864 542067597 930605436 29939498 695177844 17827620 862691279 178645760 740506351 470644369 767306813 582902451 487381357 625285078 77727945 672151199 930056438 670828866 978688043 726516854 409501758 426947442 562867625 26640738 510982543 267763301 121713084 225622117 839938463 908179269 796460204 458807088 392350699 517331890 2801369 147507097 981562485 415160516 519800946 825553469 203095421 686514574 839266437 104908658 359435063 428627423 886574146 969544670 181625084 838304416 1706768 444073781 342644441 120772984 579078312 900269521 848453054 124736164 140382209 344684108 763967967 68328440 222420255 387045644 381336391 871879471 512875397 584945015 657818646 30202567 294129932 605406780 672205637 247380564 555603339 995497728 917215538 628407383 693578268 178719054 196288162 565957188 510221793 63017248 779914131 554742066 873720418 287015388 298913427 15042241 695336934 490646279 42251652 703751718 187565850 777375932 469890918 392863026 514398569 80362275 204999695 664339056 599816592 227197251 825535920 228952440 866485659 955729124 664677992 904690199 353721029 976614305 894627774 666150732 980603833 640431914 585068445 370155292 765607031 330457827 241318343 179579645 695613029 174432627 145816778 155175590 724034390 758227225 555584819 282894040 89332287 28550363 152672508 659602059 589463594 91873219 573623777 336198226 408492718 70089679 960144086 271044555 931837963 948023360 606125836 971332867 851370967 389414331 545849003 529237426 470516897 661597355 831010052 505986635 976711277 950786013 727823840 653658010 812542063 104780523 562355529 759326272 46711462 254946532 143170323 638659559 586214598 521208095 433355513 706660659 137482624 441349428 951562471 639167280 495279906 232979998 244596137 104419915 715290597 281783376 642993616 902737261 123357065 213398451 306282550 758808527 650124671 623642969 884453433 172410265 52663663 437752320 307226579 412786758 501026720 395848773 546179384 293536341 49418712 294005926 391702100 666689880 901946987 877708247 54576082 260185697 377810915 399700612 723158994 955436936 162363085 538701193 818092247 136292367 460420617 991770446 167809518 258373724 263930030 869221755 282077763 598228817 786510901 276937174 348190102 852080547 409819108 624088496 616545497 578618923 41565331 300235730 876449818 724978733 430534025 752195239 878784692 601197850 635676133 69609362 26025222 929191790 624916756 244335156 243666966 622265860 992039087 22083030 263351492 712969250 760190482 770195248 668221673 374586316 400475001 794149512 386183212 273178300 351722450 379398576 838322719 216355742 624671377 696276918 758424156 687814256 187806455 646228149 532078867 342891532 526273421 560809351 336105802 549955243 417058707 741912889 521610129 866425253 366341943 592986706 986861216 545089518 780846401 268265164 70503416 202122040 106991163 691406448 887645712 474665121 611252556 70279707 891632081 409453820 237929960 222422295 313730027 580584374 252155189 524408590 907547916 835368148 134747882 348807533 947846354 497439778 349609806 196325 883705656 204132155 221346704 755136993 580875845 901389116 563140744 981851825 536763094 41795006 647602412 491328008 813181749 672854116 270166309 138789029 918522353 110243986 804712567 56576843 983432188 222195807 252021797 288679863 489392833 681516608 202390636 301285453 542076336 479674429 3317574 506567693 638698633 776302703 992793456 321090302 32326181 140144975 214674073 856863916 784214905 272445449 90931343 628525963 124321786 118902450 181527380 549911553 932768785 563301381 795350622 362257096 768703754 292501818 842487309 157369722 180529986 363020825 537342675 675806151 869363891 620489121 260648214 827412902 439345218 879083397 554735045 173492761 454059046 729538634 376752284 608660023 804222740 756278694 503995613 801845341 987385258 353301325 391935931 228239390 653356996 771562197 678381916 729808994 941660604 988546397 445223677 710382237 990568192 18378935 722331097 14323604 350013399 972099943 199322255 972585849 361335065 977407290 999099653 910099902 434248090 354675295 921627332 140208036 891959772 486508993 744111120 807325579 913663771 331881974 807471236 929544090 89977733 801417022 621178888 455284512 44190603 809400076 35877127 9765858 157524440 707508243 879073268 266209968 235255379 518409558 236379073 41043404 126156662 425937495 158929613 468345003 388308420 494646135 424943333 259738448 980766182 773157552 37425184 103842027 176901159 243993220 683649705 498683242 337163262 406940495 401631780 212057648 422199517 659556520 535587376 853854270 983174580 477971081 524690558 378011017 92275665 487355725 134559202 819614047 361013920 307138729 516488598 258386769 36763290 343629024 687095066 871425587 937690557 333825546 224141583 224983169 948461551 819688413 306053608 826864357 76143829 383896693 142687203 704102501 884004341 389546951 160711807 455827785 568223368 713050272 291165926 468109503 823196988 522106100 141890937 551285173 933352727 923787037 465377511 236813043 886790299 722185631 144502007 488142866 996351354 860802282 29760708 760375952 89832295 352526871 905846060 232310425 492527203 52270895 660571707 648809712 512026021 565531609 845421275 740627550 960610924 235117552 785635367 368697682 314254531 760050793 361601911 459860143 718180356 418625132 766827793 873731106 382553604 20176543 89129723 705568811 188987254 510006768 453244678 188445322 442879688 785320885 325328394 88691290 372905781 476404757 173207386 86586431 465528614 602841876 974358583 669340214 310589754 850395761 684077402 703453118 95325995 701706713 401558945 302427293 2830372 165244093 540379957 604339750 369023147 636294653 715186006 552178314 985427076 754049300 604365117 155707696 797925332 212269332 5185653 616199894 306647230 735509268 405214128 740806255 819286276 91694509 21740570 589208829 126714180 13209605 39184607 364283601 10199175 660865065 819782810 730393281 345604989 832517470 597671780 223906988 221934326 612099971 853876264 40416259 999671576 885438040 983900647 796243173 669801444 583914231 990302054 915442820 536190808 270687054 900275288 643114793 150617259 268262068 542655249 872087963 768497431 130896850 944721685 832651363 960362125 809860798 84054733 764067900 959802246 281468611 727739063 679389615 634974183 180626083 533198196 830107324 74298967 896044064 894555118 425058959 770927689 388312295 971978732 378266172 76656376 499497835 524636608 768160988 186710016 513465074 233606104 990146634 730978014 405219867 831160359 613046726 474444072 277226532 140648672 462433435 114927319 508266664 345574691 24119730 7377295 418668669 468710321 981157837 740893518 661440692 27175683 230118008 408592740 829978511 791095940 9300824 247536515 421868088 628904326 710332114 712632387 919531755 373860992 196436246 19326874 659055455 616797140 695666963 780827674 485070605 691538847 354531106 533472872 621901187 730041615 50807255 810496630 94781952 1335239 394633664 259087615 813425521 46971078 267446691 254307552 889468345 831389031 736353624 265929775 861938143 156054888 291428091 97946432 134297461 77514555 732804383 989585022 246298930 888272054 522173115 658214651 136314243 988911498 410829758 541534822 20794577 168711737 399261095 219726891 689698703 889791214 481437994 37176297 239431060 620527631 840102646 591505441 196382414 934028867 395451786 398072525 477433682 628916922 123093422 945153084 634793674 316535703 822374173 700317999 343096626 534329074 531685878 958566910 845753956 254352965 462277983 765858839 511013395 106440621 439623206 234539102 249505398 880616912 506554296 783478170 854220642 707368296 680067050 54079687 486583414 646109976 889691838 979485174 404293745 513425627 482076367 786710882 389029118 661482360 81921370 578900301 237176063 172717357 417843318 370436574 519972103 877698805 591996734 526226808 763058109 249397003 175632937 426621117 192491664 55572221 830839159 543921074 362354252 774312194 999399664 856069227 530817586 559023684 393084418 622272464 102086946 630526180 719493082 666507462 131895090 646260867 387031439 360112136 629343341 34092086 721482015 447641992 160078351 809247284 786144956 792876165 208610195 77726338 450658850 579085230 311280475 500814886 107369458 404568952 800122138 237531656 835812571 44689728 224421859 9516717 750429460 203102613 209535023 717670996 58947353 352073899 856224735 220066726 477290847 289338419 250539343 421555043 840340372 154461832 250810935 720403604 289608103 161749177 156500674 685988945 395454172 235208481 582580600 838547854 403417538 963069575 559764965 438834874 746841009 197756836 862140270 233396838 559524442 203621720 118899628 254764879 886647525 294498856 934400158 526789214 512117936 167680736 204948914 528672321 704488297 327557591 7958364 786361573 832125578 919556985 483188551 248103812 348506649 356380223 165587979 190793689 155940712 551776777 6087970 701670612 829691496 275879473 880254854 689446401 525900004 739080719 629840632 540388932 449586614 468106865 311044681 639336603 714475919 135146220 197826393 480837897 670154749 778495886 843175218 215656859 31299203 649216818 298287227 243729249 736815968 872837721 331977935 4177620 800954038 454803399 284117523 891208753 739853565 111737259 715908803 342720836 17119971 169403980 77185257 189456813 229479519 613487359 747595867 957467 923637136 711842843 824301029 793172431 565729510 498472607 249684147 202247860 620581543 447267232 973782053 94652096 270245843 252251505 801144442 956044407 235591307 561220691 287780595 165036982 262041634 449065168 98873376 473167746 354705879 277469751 142946196 567102426 856415533 964802165 164764076 466279686 482932857 301561241 265156635 903806024 765215395 372108988 988096047 324305977 859564790 238751446 592423817 929191168 83616831 499212658 471467338 830336382 522507734 629861054 947152204 488046962 89654378 319583583 246513730 542744143 54385327 453911723 167799126 561999568 505273461 177274628 491784884 428053530 306980501 531079402 593604685 233394461 546455419 111851118 58867501 858266522 140627520 51446417 805099684 309370287 855771376 553040702 421266272 973223578 21247057 129320583 148442423 773157981 260722697 173810565 470901217 135999501 994900115 836002361 619434125 938444245 531527889 300637744 631472336 393859305 762431424 403110951 548905755 687269040 140373687 497335429 891836825 489727001 157865067 834465927 23964864 237787399 584630981 284379912 646113956 118517622 900778942 939834529 839139394 942263849 96533091 151580855 810260266 70053197 178180862 987142924 112738133 95067927 746055446 660300473 440791494 884994871 826597250 644507334 953081226 731830054 355516194 797088272 862482327 164626236 647014614 787147229 865095619 295074412 120656001 327526772 617287725 832915252 292192376 503766445 96902537 603497910 227821822 637449344 882374909 307379934 149105999 380048768 200061792 612333181 804464794 70256951 640527384 609904258 267488818 162078385 152716946 74425943 691329949 239170126 435224104 86188274 300788692 264457500 558989033 728774560 185947624 326617103 184289108 834836406 979900506 403354847 902121195 801470333 947313969 556732876 925192805 487279495 383677458 434609687 456789568 852077428 626647612 879281201 989885255 578274849 360162306 884773236 999904173 361642933 727116811 426240463 296584979 288861146 798422351 392026471 584747382 434775292 347068090 337683356 96273415 905266712 956322093 629608588 529505389 203287316 80621688 461711533 605891276 178054273 943600187 675377860 88260500 94306910 713797576 817748363 719575625 53382489 937614389 776534824 959767554 837448110 315081757 374526723 947434986 590898373 296983048 277070811 792265614 28412159 818722536 844693490 981017858 639896892 101915394 55439936 918579617 936917791 405980352 106701924 654682815 757881448 386852559 334715288 716431411 613604235 481497197 337629419 141048790 49169184 956184237 892686013 666424146 830421967 783623944 391351264 57296163 177840755 782255795 799484757 518902127 832541784 257120310 284181812 567283049 72417623 712475028 784564649 664535729 56634667 167908250 11870211 969733626 767970964 904148379 33192999 913561483 830402438 58566313 95738567 638641155 525311477 435840147 539232496 969754285 354558996 761585551 660157997 829722149 167253935 776741882 522917555 252212566 321263996 190378783 306091539 418465367 892088997 103011478 267363441 488143907 995666957 97115219 933107141 843070192 668570829 220335473 276312440 111422605 717977797 549883487 865118834 211604530 906707632 446906176 531999537 985846362 53971975 984967857 294317599 842338620 89325463 842475887 90878158 880888600 697611054 334155042 71221106 576836117 840525259 139547706 842857564 715343557 802230259 558948904 158233473 645903265 810814800 271782114 711404633 289638474 163620078 218245138 58416527 894903535 740738757 560097263 814056275 910855458 508419686 243003159 174621125 507326212 366614789 47298103 368874018 25808424 304050619 79586735 85008884 385190671 867234222 270729441 348875533 911873733 852762791 8800248 461498327 900074402 458423230 590702417 320593473 130861728 810721301 58113860 466377114 514611043 870182554 176477662 774070155 335014460 330641145 979754183 898781573 438911200 210724125 188941147 273890525 49322119 770264510 800580432 478381331 682327552 805260024 556752555 880043922 700271959 33258128 763265735 742756068 754141264 707692271 762177188 635910520 340659109 293264198 201754247 905214069 660743925 120690407 63192575 143234710 563021621 312685009 995446733 870733341 618312794 217531580 706183947 106790387 802843372 904274449 344232268 873363522 332653411 951894722 496591987 316963294 647056050 118408255 144397443 838804407 141600437 181294563 800371960 733361675 365393667 434998005 648481211 866649846 27582399 577109608 789368160 747252194 146821230 196199698 394738746 271776500 242709868 536311487 549774012 408005417 325390734 470171922 391491934 807648326 662347231 340609577 768793042 502109812 166480568 437765661 79290448 875394695 208854267 469100090 574753632 989706679 988439664 377103957 854737839 779410067 78183940 119692360 550054780 261188905 395833748 351434009 760674048 336468186 809184861 180748111 542996364 64299672 857538796 536232071 980381751 354507572 894008418 41723700 198581065 336113754 305875308 338136959 381292040 88151113 275263822 493381106 124236356 294899254 902649307 339894667 34897761 550998357 290915588 382791938 90343898 916235970 489735019 643761005 460588858 967616260 67131933 772339317 188161718 429289195 728404811 762367337 256473718 420185370 665932335 358594668 867026130 550098358 609838167 738123549 194511288 467424993 452074834 690291461 630603429 837416671 764958599 740869792 75350388 866008282 158149978 364333455 620924434 960537907 37017579 386942041 334421338 998157024 297889380 117124877 971740250 102618625 482872299 139180004 194301910 877997314 406172972 683493193 984745921 482072430 232677913 366526781 321015617 987068677 405823136 603259997 855877578 355679523 772785350 486096086 42907493 313945816 425854636 611610160 283528574 432552242 933577434 9705110 538577695 82770363 886374147 149181833 167012009 178656638 556724579 619548822 105997090 399308651 723976023 392920216 621214996 748270485 97477445 702283750 684985925 838366136 99749016 367564725 265367571 163601301 451647187 86429136 171859058 207606408 447303080 252264398 518878317 651564009 96551770 626024688 221029491 414063418 910715241 8239986 900421575 849231218 376230327 887381798 665369329 747644941 733294154 157766799 82249279 759258157 53916744 332436023 318952039 964693658 347394403 86422850 51276718 502834920 833177318 233870178 502354523 411388108 987914049 71940897 548667069 989701599 76687356 522730731 428963963 823413953 941976754 307620026 681478286 554698308 251900609 10320773 416283943 365446366 157255152 28637222 343049113 159765393 64333543 924856736 548457740 168347943 199545358 498539437 361163044 73336854 822942552 906405847 633803663 713070381 315871056 561470197 831370457 818122939 766324334 762135455 894685027 723670075 892657658 862835325 275956738 957252124 895772027 96995913 738362797 59583453 435654321 631890016 499366939 136782832 45459886 908234210 34209156 825790350 224839252 346722036 738343750 530698578 517839020 128806656 789513079 655746873 566807739 45525155 233850856 549976805 202016465 661026644 901379518 684132365 265621670 72954927 817773202 797236006 267928350 537304521 533886612 493938950 744015428 838075446 916842334 268056803 448681056 145512979 679309797 251611939 417637239 524525642 527925721 246447569 545511217 89881226 404628562 887983482 238970260 246737377 21936237 488128691 917896309 585019990 806201785 857677717 771521079 259001225 777886302 545183618 584144956 307405865 174039225 138667288 817699653 809072728 490309374 908421313 662728562 931358313 108194017 957031285 99693662 944748366 682346596 810452235 962774732 888802614 800214648 144010146 201487268 883538900 631455844 178067629 907598567 247968109 523259351 957434771 892704922 683464667 268011165 223903099 491780118 487758634 376646813 866999393 890838946 898242228 557072218 533496592 264609999 892130727 978844611 87146621 338740634 125117189 53455286 506274480 762623197 286025032 161481222 823578269 307504122 595859704 204253726 69822835 536111564 476431539 101202486 285129613 135608657 593141693 371985697 734599260 502880022 199547893 797411259 181742995 663810239 711529354 346428861 356218119 330340493 292243732 419949714 612730428 114809491 161910644 111184087 423321580 515615280 571295594 827338419 665652870 296631880 367959515 539579901 270871477 936046829 222474544 153714298 814733798 628918230 434271382 273812854 795310439 772514615 110137684 108615841 982118615 596124292 627002853 904594971 6951245 61158893 625960539 86350926 988013669 446197156 777469399 907263832 977947145 896005412 569022857 914331271 173092457 296281555 221115312 799895357 455890226 168179114 520462514 53531361 740128900 166974196 790893298 615447689 876021761 291858541 39669090 186886785 106901881 188173780 629795233 251298860 792525081 683809344 735335943 819200527 494995449 326423138 847528988 816741597 1232452 759487938 49983413 640954037 471240417 823565964 160732066 425941986 215410079 315609581 855400254 690339767 462383626 920136648 812142282 759690385 781183234 90617566 378064637 16427426 475687773 653939215 307301094 366886787 20909435 784814058 577385637 112509188 863704972 353727709 946779427 349006866 215414739 644368561 171154947 487027799 82720873 944553941 106831268 928049231 998597715 162575976 258638086 77363863 690897637 75393150 694924040 456505236 29187120 124361424 388617527 241526392 761573921 577567894 481039860 924788393 190552015 971320141 129275355 33067378 206669599 141280022 666821403 972932972 460271149 905569905 101429296 876805112 315083482 274062797 33902942 23027766 929477712 992860661 63195349 88983593 221070310 888079043 107545920 602043400 399429346 120937606 170564382 103113645 392284200 292604399 934890828 453599626 328243445 865946424 3802621 718445539 355679384 943475553 488405359 604117586 523698356 135200470 18988372 502012136 122650502 198501162 899521626 215008383 750930662 990960575 380611552 907323459 302693363 16288683 906633884 425065157 381117422 821772469 999196372 469304269 518591701 751680306 182175612 103858463 48810257 715694145 18090083 659116269 795701202 519972090 366873746 778404553 119151426 880950070 859848128 657954546 531209048 231174235 774654219 821983455 80378298 979833311 295204151 750196681 915056241 169468021 469115424 832745740 274455448 94199327 508381641 764979932 352346001 477346871 711438468 331786674 941038437 402763434 569276326 934267261 168884457 415939827 526453646 453122968 245132469 448736015 835054327 312592091 408640031 751518489 267712498 766445480 277915974 838092596 976649306 850438949 869351245 101561946 324833090 746396446 299170591 124518537 85035457 800610407 953714934 58445824 655184372 291125447 295998073 37226043 644404493 359511363 436507511 536366347 963577748 263874123 922536174 128373418 279657834 472119806 596612058 253205609 340816757 836748611 849168041 269715533 701334331 618764655 216709655 680585924 166805401 472655654 846145441 938249616 922872366 805227794 593603550 588568305 948591308 527110473 393737455 889561345 136640752 660820319 920116327 794424127 764576344 926457856 585662194 654930322 749098597 838007448 287038184 794952978 112578858 529264716 735083803 866870231 892509395 766677083 694453692 611927612 718252325 64342391 875830083 715264885 475767404 147137111 598789735 622407065 269316847 931707452 699653588 554256092 944233261 97640409 565023913 116048764 922495066 225572493 390844697 84823256 244883978 374571489 935427913 385305283 168475531 488021203 583542259 45228526 560980298 196684376 882483482 843298263 151564995 405876923 418538680 412841102 303646535 981044145 815586244 35128337 178465910 858500341 164930474 119080846 19784407 783517545 264127358 402419678 310366665 813906266 362595741 910895876 379599207 180934206 185055458 651607489 987984155 447987848 405394271 56136043 704454217 554773690 587749024 699056841 364915210 613399686 217084421 878361775 311345276 435129658 787192537 672976372 680467959 852415415 4182470 727174377 348387077 132059418 340224820 53945856 639656137 599522682 115802720 564899115 765490044 566243300 39803996 380040280 155643816 35575636 12621084 174552161 574997713 408775154 906418466 410429435 407296948 621087409 395978667 671838934 778788367 661502220 933542609 442743376 256729762 635594067 801396692 970872203 410029685 19996904 21957079 323358187 40173996 192232647 766951588 128204120 712947047 509793805 669698783 540376321 887735909 644792487 220661065 900409998 519586594 696177920 193905452 720624171 94564985 701170665 956696778 272451069 775968328 510248787 79183102 486958731 369171747 777589299 701852692 474251778 269261486 307813934 173924515 579360278 805586583 558464099 757987137 51957152 97710885 307942238 930695114 534347490 33643057 510548126 396331063 693015716 546096926 139048694 29407331 343194691 751992882 388934081 122558771 702611269 402474841 13575499 142823492 253739978 94855210 121770469 950105870 131314263 640444817 529147268 661461032 298834778 61762945 898652650 503322417 61237249 922356216 870506230 524674417 435593710 39340067 776368775 18549452 623392548 686220283 955091357 726354771 579268761 793074801 908922314 350152566 319565547 424643924 213700553 79502591 613356146 607645056 951921324 971230808 760323157 80834398 869723073 365640459 119104479 138947153 261165936 686722799 831995394 411944864 428133756 715687757 210214736 48229634 231817871 998389926 438577551 32645722 764712403 773192204 877987981 494570566 859302995 971793614 544952947 215161885 882566674 279189860 366069639 166833615 904266126 644495407 721715976 220966315 831071061 328450817 859759914 600913620 858509091 794228742 852448250 329898794 429460212 698641105 208524767 901718294 337923781 60651324 378194001 140206167 870552034 945267622 197164855 49342465 204192886 659322428 426083660 590238025 711589777 198776546 976580043 281760886 385380298 858421083 362988793 865121955 663394751 996704962 441332030 809575253 360155012 895472140 961120586 190137327 807748958 399941025 432511486 351881845 896162612 123926892 270521077 499646790 61166150 974162009 917737733 189048426 817309117 818692562 149276550 918440880 771191649 665206495 975626726 979720341 395436736 730208251 441031755 840412292 26921935 14647066 793706651 99199708 882338021 858630839 388142312 763848546 397457114 524752941 523884603 983322920 543349099 594282490 358557548 923327309 766973955 637274850 776580208 728394569 61118709 384542382 500835584 241180633 60481183 392546205 831491390 280826538 458933853 900133154 348749414 799427059 917364463 857690125 153211557 997204199 798388684 427563174 456450417 678476485 939680992 350233091 557857810 121151330 388146017 311828848 507670725 866819843 56513001 585047385 613125838 677959447 483647810 536088483 391276921 757653988 210966173 654591011 62284566 109721989 890523662 959856274 255861107 742474856 829442491 179531658 237931521 152488321 408565940 842041644 434917987 613117670 627377739 114655454 786082143 601527644 184199544 993913860 867654282 595247552 103375244 201617206 65293010 167840563 135837031 203945495 931444550 923436494 898125686 874309815 140003730 552499364 315147193 830767476 843800081 849408766 469245947 925438006 842846276 398681822 575368081 28619557 233581041 793716694 755512028 316426424 36309530 508118610 676716014 37840416 56950560 486388319 728222044 501093721 188749592 938444567 45701791 780424590 213925583 790564708 210310084 247661223 579691644 887879189 86162064 59458425 544551918 551558236 410534355 506979554 54122276 442526611 458322639 776993931 28674060 123155105 741769669 341332651 353274320 227922385 208441359 889616381 33796975 265778075 296555017 698772777 529238468 889450303 102031641 593372583 642108822 695805510 690210850 76907553 263853710 664677505 597957528 117910009 401523713 137216323 544440013 738901357 262533329 516706437 451606161 593449103 745670100 150418483 580043748 405816115 175746764 414531735 447967662 438488613 184466007 675351416 566993131 13507824 261490021 549750364 259884342 504061173 143932624 820829862 810251147 561834238 642300920 270442251 999987169 820461611 537632608 184296118 160307275 303008463 626833654 907597352 697634524 647844768 657592219 74803256 395035426 180072517 862298455 295289181 986119787 154843024 381804742 932832468 782836722 479307551 439896715 616664821 330569030 700139204 45089669 655437299 765273613 411344685 204864043 877633085 42746392 2185629 856480657 573892972 308171606 537311524 813147612 23647583 744141600 158877447 259668493 779838781 415291552 381936492 909005593 304091648 375386978 918192747 943414838 802173458 713128805 126156742 643009370 344890951 658818726 61791181 280205006 755815819 654341623 991991252 385025634 11149025 286813422 107547857 148328100 195448953 812728740 499993354 288768271 111615032 796529320 918629118 68527129 41222205 887882651 774790144 547474519 393595157 244083300 610087147 569735618 36558119 728146903 768783930 352197360 734611684 60475480 966716643 523133280 262368758 872230436 785400474 212798655 827740382 416375785 950481567 411645701 640416530 17704410 686776538 673905457 876892742 811472509 558342604 872769397 496277286 475133973 716063807 896722704 35138083 546259142 146433051 984719271 863481877 137522684 28632487 53791663 167049857 696332838 143463325 917775875 251494539 66023575 153951673 445552077 71596539 748736043 434403871 519062322 560256703 368323230 101439120 33782581 593706131 972570612 930708614 909197432 357196480 121287696 162930356 127110415 458146854 933396371 211380165 473649304 70873363 828054192 643723259 31359198 105248580 790715063 36818123 224483074 188283274 377264026 234484116 719881062 774775319 336582657 900352213 483811940 397958373 944979410 235229344 204772919 827541108 257930548 650909759 860560686 371885960 558149765 159232142 653076892 586539903 460818433 822053956 995992973 780877609 21785484 123526569 926494095 64671896 218151051 193620989 265047960 88726188 925817823 893551589 763122982 70878372 297319210 838196362 363152499 183838881 501229532 652914580 597794541 313762568 195118560 609499013 568508118 74060799 202963825 619140271 477592147 441800739 586828774 619824406 38002501 859042642 419073978 597006657 605542706 915026133 701146025 518089797 103816169 236186163 324286637 400614808 981769307 405895843 692614363 353372230 774370522 39842267 618219555 474702635 663370227 527493157 619085991 897979467 966069741 40502311 187662648 589181398 79315592 900986607 918270461 226564111 203641067 393898787 977051069 554932416 992324210 970978634 216704150 431958107 375642913 18615569 391424824 804913005 524253441 675861181 119714950 805943553 141294143 928519118 58723036 94768260 893362380 25271256 244943774 267571566 793340957 156629392 510146214 545928654 371472107 546291248 581452602 151489442 439945267 395009895 316550807 457648898 552874037 741253187 759185545 87456222 967800573 423754156 32728903 830678945 298575506 684348604 836240531 993860649 258866326 548223955 807523373 949490675 13491976 843417876 512066130 102466100 726707850 573505258 205503858 333748487 253841396 428549194 953006398 975478960 142960746 437463983 950202983 779110193 600337661 746737722 707675298 233969074 795491887 211440409 344336180 488077082 996647507 725155076 356375077 410929631 24945948 410233154 514084382 401090079 564141401 305186061 675768254 861840293 788196559 583369897 403775904 508333538 369151459 126765646 352081755 598332652 631934136 85270102 19050527 410420948 94437851 470949791 356313397 345823463 810879994 69402488 390627677 734172249 980678952 433168060 386194622 415393211 660725709 792918616 804069314 229922955 819351472 628669531 805879824 536397042 964379410 790285572 686597688 942011805 88994504 910979255 390787642 103814115 74795825 570984452 629363092 952048659 110286715 132705408 106353442 551389291 384850358 665562693 722842487 393315189 770954663 478134291 844896281 238087034 512565576 497366230 175089440 335280854 328548428 18150547 489248827 785706625 133441605 260176514 377838674 777297956 524109159 308778733 366142027 520176976 490465587 617286647 426890110 725158921 298033148 745462264 691537704 30554155 219985070 132043096 231812947 177111160 231768445 994884731 867986846 869677681 684918726 978067108 482868343 702192482 216546561 571219201 348389769 504604433 560037464 906439604 979144391 979946254 254479009 941486224 367724586 921488220 324673489 234200683 763992815 324856006 127613124 603158347 353828881 645536842 353435589 644094481 302590185 819307317 695469941 28450524 794002014 837901908 424707366 254075230 513306899 908080607 280023974 21897355 212775742 76646487 987031610 521264369 190281828 46745516 871117316 705423319 550801115 822557605 53377692 268103852 284390672 117848381 343373327 505930381 643454636 550967254 812869553 497641978 68325023 728079036 655691389 159725221 779161233 450979930 861327663 343275410 48158321 413554191 966149779 578097741 585069938 71503674 143583913 413915728 908148149 806666196 372716191 627622003 146496810 85016639 605757219 84347150 462384402 791804217 483015829 335586468 498811707 126067642 825541715 35594761 198356376 376064602 133719951 135009391 248303522 694962474 122047965 334343719 850624035 907767781 706845815 708764702 434634507 126527473 243869048 686198837 64364703 918672444 278538276 818943144 783994939 716752073 451063358 355323503 626661209 735339165 954244382 724244850 141853192 640381858 25810745 2389323 992173150 441763629 611230949 70682767 202672347 146139597 975142279 809359770 465177188 758134070 354422749 227942564 258378032 785055789 389918800 135854833 903031375 445156088 471385383 352363191 574339158 83768743 672375292 985882065 482842061 352735960 767868958 291195558 486156306 902480150 302083206 707320070 933811035 646063057 86292279 817520101 236965052 776212496 931569989 24409790 68665019 497051702 915004433 721266816 471294034 737867902 103946162 483767519 734537863 988291394 410153156 733797185 924731178 420254873 100796853 812148951 405549734 4098729 783468537 874952752 787179210 84812528 525161229 975142604 21444714 864406169 326816530 177426269 609195103 117909078 330150510 309754349 693486271 288468869 610232885 739824428 758277686 957606413 831253442 712925212 201985863 200696313 734995221 609790402 64460410 877822692 897703589 399366617 642045895 795080801 514793572 774060120 653985641 212843593 706780595 748906103 883181594 185192194 179236001 990302566 805599000 538296409 646561280 382091500 396329748 590079858 838044677 777724028 279681028 337486467 709196681 282128784 617673782 310620735 573509278 46431424 907842855 115408912 55413159 753279399 782215465 307992944 299044171 683157971 76772586 227727338 7302261 340364198 327319419 9092361 47395190 358974843 758769281 412573187 803234616 172587735 359989262 618138270 172514720 540529455 248978231 855800455 128816517 143596537 500538219 399601296 975442367 651455132 470396779 52390902 38356742 226662890 707539171 966900223 182781861 287179226 801097722 722881467 63397309 100200684 522928977 863495513 167090222 374941461 320890356 988356608 692195292 987163521 177864779 979487172 265559811 553743072 503402287 244021699 485272892 945596775 603750390 637126736 290355163 14565139 801165805 166193707 687040820 224476167 934090596 554844801 114609813 623819229 933809464 53627646 800142085 517189239 654131471 302551400 828588051 949509042 149341198 200069965 654947813 971268092 660753216 254036343 394549130 929226121 476264567 367713514 628535407 422606204 61217092 782185874 250461860 491224406 181296155 734720520 864917070 571908169 253893972 859883566 800945512 225747532 177027800 649683110 379718887 148241150 68276825 345316705 173928370 945325217 59747402 571194619 335701937 450791905 457495767 807443688 762189771 653755905 306501402 782151060 157322215 918642974 426891282 408183219 726789105 923566283 723663135 128849431 364669144 499043811 257617201 539840014 397115746 837559952 742386826 672048124 147905052 571521048 24315698 912723370 941601652 913901232 318380395 984647227 368961669 864204669 172722332 24277872 906772756 278890981 260317610 317665268 853254034 473744771 792201206 397654984 383867021 335762105 998999622 39231153 228554543 218435445 709380738 824239944 466485345 301352899 497768681 383345023 369418758 272286531 73487807 298334337 181897687 45156893 13455295 95891576 215921885 565716113 875771857 763393720 38649916 310006113 313435441 478503661 657208996 32341273 363188660 91656541 240089380 916607529 899892462 648328628 996863240 615077946 507125177 625535892 933970710 953448298 469170003 853055859 168932532 591432600 142206118 686387065 914711964 569217828 244361587 13944916 594162446 788976757 666437669 953623418 154638006 996332115 717158988 648500969 757065272 834936449 532961783 793922610 584888208 367740031 56688437 502926692 777535150 686637769 477057895 233642679 526565105 496373371 891593124 537503468 211204645 809474059 23700752 506699818 826201982 146926069 562954545 469987704 847641004 669915022 934848776 21185441 217200950 428604921 53506366 746548762 844075766 707473193 488731833 408790378 408717456 261259094 846954718 677364563 940442899 300697813 35725091 957992504 996084118 950183858 98056790 250973985 809089801 474960923 98908994 68501301 78965941 42256194 398954650 294344973 470366335 262411877 820635490 645420198 369520900 43157528 248497948 983423242 406594431 507035186 863584318 87314641 320984961 2130779 450844524 945740094 531185799 962957964 152210194 18306746 823099711 548766395 913408778 118573389 543364010 64648248 918578490 621852180 379189508 420613936 326936970 854429981 545354733 663018068 247216672 64452502 264178213 841728402 670323825 472588964 993133046 753950209 991621790 55897803 275916840 617811838 993461299 972286155 477605996 443305986 304716769 456951087 421666999 21590215 986535165 838300928 75134992 725995922 890673247 147121844 228341199 112160053 737551494 397075724 451895402 422022533 626662662 76473801 796846589 67113533 853521608 436394115 311932486 691605988 187973378 448709666 874888958 447913289 871883798 127713009 811886452 491586950 488112953 889850032 591253007 167733108 572275351 500842140 557622033 659444096 964017703 788245349 136691296 387726706 218280684 194758061 431111978 153275813 97497275 608169056 969804071 623332657 763094197 860190745 245329466 180777960 304239099 322249949 915365683 370222814 791926558 85807805 769921973 498309121 82357931 477154678 991004664 627044888 952328656 271503166 699185748 790761472 507591510 652303523 983849958 404391450 76248851 153768061 943334093 995319950 589932727 68157461 340090391 826529289 375822673 841091246 274179240 66411840 177236248 676245448 290259699 126032025 650094817 540261514 602248368 455968706 617706980 476589413 616570625 451775746 370001468 340457277 888648423 112638711 875647071 399157798 556799780 504452953 499944153 327810719 36927449 425307230 881067338 761868608 930074816 878008263 283261871 937663590 817880486 127577441 462051801 821579713 420400098 255459681 79276307 872902299 48639065 913304508 845716594 812740015 777872890 655109665 888292180 282405338 29676040 130846032 998095129 624130958 994723505 995581594 920953881 152190774 629601142 775419410 235733736 749334364 40442552 143690859 140202125 843926152 688984512 38370384 180807087 215747091 358130468 710738653 163703312 262378547 350361064 355183996 96105766 893366000 665924212 521548879 626904229 752040053 595431432 853930675 137845026 709457428 481855300 140440733 402672663 314837578 595155473 291753355 689924336 426959520 257039177 377317678 388679452 625158622 794466270 931593400 578867964 879857988 795657981 668834510 173265233 630452630 179118597 886613198 334839446 240492514 975538285 657278593 456626667 614138204 766677761 113145696 300544658 938440172 380834730 172747692 806426825 101319778 711521155 747458976 26761962 68545243 662394383 167068931 473603637 679726420 27935240 784122782 177180254 330233793 287382315 716830931 175617183 325602915 417488038 11658310 572554145 223937255 605540580 247376019 324753085 138059943 780321659 289560652 8647929 397153231 664953234 132749059 774432323 912391132 959280499 938719411 713137811 612730393 423768663 293475729 371388578 407373775 692751488 335211806 594564951 235645962 329005093 965631568 385384657 815561275 532338195 784436733 959908801 250967674 344260345 194306908 987338696 921024626 87338317 693862045 567731950 251999027 814575315 843753387 796904812 113034211 479335561 950150269 570213547 293065539 923959308 654556472 848207283 545785377 453067883 830686820 383083788 421843817 812801766 590531638 701712444 119424722 453021597 165119893 826509682 746170695 61795817 147152072 622269432 119786562 963311524 94901358 565865113 577169435 871234322 243961220 896031789 643429985 883105925 583614646 81704340 170091430 5485660 909037041 708988061 252743194 551203830 847678042 496945763 700840631 671794608 615298298 653674284 453529586 685607155 706226561 760551618 100259394 617158611 446218421 429145223 798196864 360331295 253287985 965655942 188957100 895077508 899297113 936548322 802842973 469564560 781100458 532439715 440262870 738950414 871411849 154469995 255446207 359398323 765824182 334778192 961981928 936938972 991073954 116992498 276702478 313315599 592988659 41094164 149540842 983952747 738257753 541840371 552789233 850304857 234322395 602093537 273055056 311320236 44656108 399042135 817743780 193196368 94648205 72526196 104277304 732062389 317019016 738535717 25683273 930232044 990240250 773162385 455095507 314208692 456494402 758678224 312828471 838354075 831948818 737844338 708449163 369649385 570313390 736562141 882427219 239378487 197898910 183740268 758117063 982059785 594546991 681728504 984787632 483209458 101427904 438830320 191609215 321178322 380753837 649534163 924595109 728642119 84966594 439359939 974497572 443279297 602896684 159271998 880103976 481315133 285493117 436307508 746478561 578173576 793003012 238754578 553332964 47346763 341676691 206563216 163023844 116098113 718252425 947032684 962209619 77248973 78433892 58967170 377223541 413163476 849165559 184339135 397636563 133097499 484695290 443708910 889915597 238509832 29816568 551317726 398115216 304624669 141369802 497616076 206979275 683243992 47197153 917501277 308132080 262278705 870043937 657126938 792798442 809144143 93849476 762635943 500454851 619508500 888033422 9907213 962498921 294614443 374485759 648646969 808619038 508617305 948038027 10609070 353029410 306743932 303142067 936306240 68442048 847651452 176386866 552704931 451987616 458399548 557190106 883445263 970923642 212066576 925362263 325422889 490955054 998557704 395979902 151682902 15729950 604323405 567027188 105930629 10398267 843293560 376011837 303456024 403755796 951592003 579244185 71634391 901136889 504620067 559268872 214982865 360180695 412576091 362387115 480979782 575344660 479620463 681123146 761875169 700223960 327848830 583344526 50557956 568281122 807002819 935383250 997450421 682072547 330001592 267986940 777612215 254077079 919156802 893333806 5365763 429070907 90550186 753323173 537741121 461347582 802299577 167857909 485772236 397747427 571905252 745756362 529782446 266358266 224930991 173477792 635949708 232361616 761511478 42977531 432871774 273759077 504415933 742246975 965677942 402572240 448783479 999521662 420536834 201884539 641160663 740104948 325057491 656230988 841599784 514727311 702866194 614969689 969176861 469428273 938920912 936273746 531976393 476190213 142694580 838270974 723179281 598264094 838495795 115128171 689268618 531196822 870624292 845052947 116205866 328733272 375755054 622845799 577079067 948732518 401308147 732854683 467397534 33771573 281580275 373808796 477068537 688174519 25517780 632311693 881915842 516877448 317672466 335143365 46467901 736168764 849255372 470181142 758064882 153057924 508859173 693751102 885236705 948780851 107460400 5788145 803080610 998725467 40997256 236689056 218328130 14880526 608877863 903995754 654261864 663163344 966597060 975494275 803567301 152352936 894275132 168328575 836719467 209707272 435777759 174721833 617146140 147147257 710054166 776364196 888685196 949268332 271885931 99002305 297256941 858013409 630546552 91465188 630456225 622180273 484224180 723860964 699668687 419656443 687822829 729758911 321598386 787593804 227221928 508909214 737605452 543275876 776957181 180741538 566985469 205534046 423848129 637268639 486454155 536161005 836043877 628209990 995318645 326110370 168225423 396650357 277940373 323046519 904006608 643913547 714064155 988438216 750878989 671247650 900424475 643887837 653627334 697650581 466331773 126071824 380664429 749053402 865480923 990361893 975979071 418379321 904906904 252094592 958303181 466007907 286968569 382044528 103838001 219248091 762802502 644850347 401234329 89255464 623180286 483893262 912908256 740761007 664769622 798427257 557961102 563566389 280621372 252814453 205605873 47920586 148067919 794084952 945638289 681796716 519260410 926426613 778742133 409089809 999608286 536381474 749713394 143089501 752801820 425624847 999573238 225544688 531970319 766116091 733528468 550623192 834786767 517174587 119373456 546081709 263063886 364087707 333326098 743227939 479105214 997159423 885000117 855275038 273084897 949120889 907490686 927835277 848876297 687898511 471603458 971731046 894819053 555668544 962524920 814717517 547101524 835052117 794121496 360090380 64541982 140711917 295099684 576262697 235113925 197817940 396281534 670171200 499634889 766097194 979922202 668615740 836737994 264266090 245733258 874933435 660007148 730919939 853719617 942910724 582300493 95590005 164686544 476920594 427218085 977196500 277053726 421225268 993623720 942670881 565912748 870807871 924828801 291826337 703426320 583656246 80694296 628702860 460213164 47826630 430322858 246549720 793371499 415803498 801577111 915368516 321779918 626559177 772007435 290039928 283518957 513636554 48611759 829405816 6888705 654888371 892311601 536764157 793263656 917840577 964765534 12390140 163530725 613824064 844137064 767731331 707855402 861266880 941903793 289372776 501780714 192005317 250008757 900068481 137727807 258322052 752336625 183997741 834552443 471399414 427631483 499263963 536573417 210906359 856443708 445200867 511325751 392796288 48449008 829837785 384168413 337583814 1475736 614117379 259552931 934965032 866933235 987287839 927104779 199012602 655494522 958496752 231433947 977887612 690982420 533243419 89848675 548552481 272744349 785572785 108388121 479904190 380212235 336968327 776519231 69574675 101126764 712951159 146521755 889448973 273083741 822738975 586154336 201096070 328771605 47560566 438405742 524467973 728341874 95230812 181785735 85670592 787543427 295298432 638822299 572024426 537707536 932738806 685642393 933778292 719861741 345076766 127257288 399856018 534778961 896289038 269467593 506214392 455241429 675566210 612358370 471469742 799853234 713297338 228610792 364917789 944258807 881197763 669096465 563308841 201328128 321185478 567486780 864377375 121916526 229107928 800419555 860891481 341357046 980949157 94494845 253514792 49670259 681385067 648603048 423540425 855439461 615602871 755266197 103251155 220552147 249552526 247765034 923355853 539983560 948126170 179829269 404054192 873376079 730375040 786738574 270415093 492640258 192659540 357302724 910277636 19017805 484678555 342849044 508968855 633013753 586903478 459789835 368649385 835378630 484710822 279478259 814529789 12850625 104686226 697477627 672288544 956486218 726755784 370771061 682360579 886578273 947137530 798927910 415847626 987278217 848278533 553460005 819959674 292008887 862057901 866049560 584760052 710506721 32335000 801584409 999953025 465754788 640427484 104975105 570376242 54846707 811559188 544990443 158094735 534987354 639272477 91553072 223059202 80882171 949352606 602918252 634219931 478423196 636394233 460735205 391840537 611103638 255218931 947269688 810018766 714435017 861752332 918263420 241952378 958654762 579914798 500684884 697421266 19630189 376031939 260127144 915853251 359151238 245524489 283550891 745281985 543207698 483373984 155411192 862864752 733187394 503268231 763005839 811944242 552870648 747078903 44934057 461865694 350384260 694581828 705043230 521412714 137259611 526727475 382367394 236761706 210285338 609396346 666262500 529109056 415317496 470145974 481589180 986288825 942986046 414635801 406773151 498212805 332757813 871061541 498400103 418592974 496059212 377739125 133321178 787302024 350403412 960657810 362851881 512453781 489473873 959716510 629414350 507028335 759455785 577062058 769722735 272186683 443548597 27646096 517935228 733747522 781819721 587556416 3267669 141502432 158250922 137240546 287979536 36226336 573469581 569895388 609276490 400801620 809274549 479442024 907039205 483603901 181989972 497094163 729098225 523003717 141710692 291969680 1768759 378509099 773079037 755599250 855418186 527653966 642392058 617531804 261409451 394019095 149730717 26481774 379964230 193716921 544065083 386758572 756206098 142625483 864524170 287823517 952257427 403163000 222796333 569111448 663535006 534939949 203494133 242843323 187602863 466513556 22757193 331412455 506347781 833438113 248911021 684356756 962658979 176660194 717778133 681298020 942492792 374999230 909416906 211040254 213737632 802988359 388133462 171989223 526062887 629028179 761835536 952568637 366918423 734637036 69686491 15359849 418170819 3782721 246299592 920776715 75184514 481985003 239781554 240923733 473106124 224310611 734431167 67530173 750391282 405562325 80442630 984862083 34215701 131058192 315922543 179172966 67066992 693570970 465721716 207583698 195749046 512939215 347972630 256865851 609134427 835247242 20687603 728355931 235807443 521757929 27118993 530381261 637112284 95042716 737967191 158914327 866373157 779753546 662240365 496335574 769950417 656587043 814513971 933710491 872739426 955911375 393043172 329202815 368526457 933833118 800563163 677565807 997741577 776714613 550294880 703854363 244388342 644107061 160945636 540961236 815431939 720663250 251121516 439893136 509432145 358087710 645000061 287755167 352557687 802295169 65713634 25604789 429576561 809827735 49088517 208694827 574274255 708056173 775976990 466743461 473838608 79794172 410479906 571930977 108530123 5576389 371362214 312113694 248984690 804273538 879803153 696579262 558482811 461528908 259308083 479445896 836431007 305151856 872252247 684640635 116556412 927220887 714381623 854832042 122683798 301868534 956396590 842103089 214629260 812847780 635471726 107981157 559112779 589274055 118765123 144248099 199055063 71504829 328300166 500714022 63571559 719468803 40331841 300335081 675945175 530129254 260417789 687201124 600858456 153047618 349419716 196559198 983739784 808875829 220061929 838979053 692736322 811292413 788597544 943143737 309350332 229061688 376964945 790895183 86391752 571691018 497367312 492528127 613039624 26635212 778313543 28303644 727597688 430923251 527618134 875360592 940196818 386503746 728531354 221676599 419006467 861934605 317103073 273639443 805455439 949462248 514800072 539614642 599145395 822695610 573915612 295549970 705281732 843571400 905471445 999480319 721460820 384152789 310097214 748138471 286935280 931497998 499256728 430978493 911247146 936571635 997448588 333877033 528339444 71284715 248100565 437191281 264767505 890399590 92270950 296693646 247622982 960170032 144115378 346693403 131178177 724025582 997324004 329909283 833778734 618645791 708842506 88937476 862474729 102153188 482203222 671771541 115031129 861337552 564375107 76685060 580952637 237493046 767537584 223017367 558865443 297861587 670339847 632167875 962496779 295424749 378816521 274631673 847756178 782343107 479910563 825101254 964093399 759363022 451402674 331610676 89138395 843394988 551363212 914575937 680724188 492483374 496639352 242742542 161935125 660631495 358842348 889487345 722741452 890539132 700880781 592172021 87569346 753600209 12184875 561130744 171254317 499935549 184147710 145610447 550090035 526952505 398536106 328235559 629478431 467673443 598229612 81809036 581690368 578335526 111281795 956799243 19453724 150540547 307399132 934478625 360703479 727990946 186152617 98873058 769904619 647945694 124793072 246475075 798145421 336730795 594999721 377048547 52625741 137907428 762850903 64559602 81758022 445675652 881341819 914195094 263717046 577393040 447338189 243235392 788325634 385686238 171720785 493877627 205499077 437511891 38754114 916840990 853710233 137327309 960362946 209287235 336896509 659489604 390801120 751961583 644455672 509119549 190237884 724254902 264248159 277742997 986156234 189959557 750292460 321807391 582610154 177074867 889863488 49764553 336679857 867722133 17202433 601082035 532223385 50538766 245449039 688220285 846570523 104535136 446046714 417585928 269450321 772641443 112364481 579384801 976837320 805608032 144053690 334152313 998085900 47895168 504360676 578193316 637258828 199848905 296767049 925840159 850597112 975165974 635791133 841975154 601824892 818901424 462941364 313651926 31820543 887532405 79054426 773866218 91773221 622081300 931810976 905120458 940126208 653099902 457020784 76269393 471419927 214082784 421404361 571993717 907368225 351899179 798293342 24214851 119051498 20867245 31645609 647517195 79277995 967024203 158547039 585578006 634292639 510076336 692676265 269487249 7789547 711706098 476363944 400480354 760825638 358680251 254497399 951824537 117230590 273778628 822135895 369407927 947619502 749580077 261583263 946921848 15805852 416734552 477613762 525696704 796714684 381196989 985249806 849587926 628021956 21593093 532432016 535121768 938986487 522355770 268590736 718378983 472443227 382956319 867821540 807794801 661910274 501471133 432006646 845688035 806562410 891688356 841872292 993535861 819377748 745692806 248304528 851974263 822643728 716503647 269396067 597466198 295789972 709200794 597717762 920872594 152009325 708578017 51203284 79328479 625308800 835341245 797235491 4568764 342035458 611767378 557505630 136265031 42313596 363919267 373793053 67659298 295084579 684224316 643698107 561376312 721508126 350099887 297868728 510772707 381130510 19065694 88333163 699776712 412289000 306015856 767454156 918283263 181151526 409544764 669534322 449108896 250985173 166277766 554225535 566595689 661534195 432314168 595593117 612311145 936619348 757898744 205176947 895720460 569236103 418280836 935731388 201976515 354946062 219987267 930977281 206618160 603901014 342768049 635481878 649200659 557838891 188330783 440222405 534365522 759154890 633058768 592644751 131303032 501988817 81854096 773265095 902963605 689156101 701415019 491970230 471413091 147580318 526640916 626573557 595325922 476471161 540374735 538444387 964670996 49475658 252647363 265746331 159344337 22293693 537274614 827422628 333153937 195356069 700645348 561089156 735616058 146307933 348364112 852390839 519645644 491565856 364694 229099877 716723542 711112745 522908279 359984849 17545197 545434249 569099783 674179291 533603684 196200310 577863389 356270738 204821227 472732326 314800561 349399705 202222871 613357923 400288399 200000797 507677092 884028807 556243310 536778086 713435675 374429993 824625965 250635857 224731139 917378254 769199572 974963239 36242016 514667852 916055014 939321988 894876615 666481719 168672524 540737469 268861057 121806661 384010955 639824406 512838144 860613320 556095272 822256690 681052013 593318846 297387654 745231610 260745529 974622178 380274703 253473899 955862589 750092136 730727217 891624816 804098218 839765740 798602783 177104995 540348680 372544853 77215474 920497880 160050761 971752430 880008477 197574828 533798917 809822986 696019120 114944550 268511533 536353068 569522862 187994317 215131401 283119711 270250696 243957661 737094585 987314308 799994743 143684605 371725156 494136578 977629173 231368959 478018632 307768510 792270243 364674262 883696425 274614730 598000656 643111770 390154525 788366005 752350644 439183449 446931723 447138680 754194975 929821824 583906469 982193710 451342541 887724961 868542350 526740109 9172526 834881353 635027964 197411096 500567323 352428031 990564700 7838940 3578432 905431527 273415104 532732941 293209879 843276585 715085250 230431762 579363660 892006183 525952966 967726590 143357571 585003694 935535375 33583496 508208096 607559865 521204384 196569221 418003018 752196024 193894459 677216147 134819609 857272545 63606229 534405980 449846428 472141101 738590380 832248590 30934157 703090016 517687000 319130552 98399757 177381384 581554744 559691935 508399422 450378234 466504402 396413509 104083484 841316869 942858371 465411891 706737787 843986039 293320472 597524410 609864347 889560101 947973711 513782486 153329947 106611759 573309355 113266430 87923378 369222073 759419636 234565844 385525733 907164571 543881471 302305737 662575353 559854663 562628838 452356277 214502334 855986160 274906288 393143091 541441337 982451211 378419690 802584585 264640675 634699967 125788106 962908591 488441851 976484792 602644506 242932639 190841624 209494135 175781295 555702370 578618906 376346084 85091673 864325828 519451567 239021262 889627198 609313198 474816845 708476206 506066888 312394468 753063536 879352417 556801813 850245505 674436725 576132519 158052102 566864919 270486358 457106785 742937755 428451337 490646085 875988857 709576728 957688976 273491836 353455337 657370379 107012855 563287892 792137742 594255620 534491950 945462096 487601877 848443164 250019031 178717241 701655676 157793399 875702672 292974368 55792633 730486195 326492342 307436594 882175195 363107067 690088057 380603879 292577410 212071524 213073860 531005149 385541582 984109249 737105715 72916735 745333945 386426734 434247778 993463406 773363859 321731477 511353325 700544970 965192063 557974611 199616522 488416614 68821339 977945020 746324999 229714544 32102587 579436625 404935406 70143504 938089157 518721588 718407899 933287835 807122502 138261486 794532563 874073773 756480947 679665528 781376641 31185963 862570166 815544955 711399810 634895253 807247182 589625751 122017666 72208395 175717538 501086232 241845049 710687142 55863722 402762620 145795033 234010687 795664759 764742723 254422217 753851265 883928684 344714980 599227619 537240194 344211296 592850077 845096626 941309543 380360380 444470134 161019994 122197619 273776650 425317324 333850834 710140915 354242727 29787645 963058862 982379199 422482170 807955712 967103981 414728608 581581896 859526301 40545717 121850463 635058994 149143311 792731586 889964903 318618437 529590233 841999853 447040479 92031529 370375091 632856140 783550059 647750906 635187049 664086618 788080278 951357917 394863825 611819763 370171394 523410068 219913950 37570162 848866413 666350180 854532574 431618455 893839513 683778134 917754052 875321128 33786459 473089844 754909882 737353925 281026219 724638294 630237372 540793518 621227876 658752872 687822077 412623409 66748778 690720854 329753124 333972138 900966730 625713973 349115511 913297050 812258522 79868509 267503812 599832361 146916282 545944995 438908880 162049963 230600331 17846391 74446892 511384643 100574658 664081207 467210069 645523500 555380968 290496271 735095422 669202631 289154665 816387425 409629139 337116751 906735096 26445094 678810907 339341898 170997776 933067200 124575606 151214701 556815359 380081573 961312806 695263864 801606861 616189866 522571807 87890450 216837167 427470238 44810498 566629523 32986431 63199295 7044340 690511351 103509482 354405380 625854542 485556599 4648837 130580391 654836866 825130371 902203440 929417667 301288322 337212598 516548814 227184836 483175635 231898961 234372267 411061129 162430662 190727610 155513408 317590067 770150081 212834064 508405123 477144815 36702711 769003426 302265791 803998845 407859196 746540766 341655651 229976323 615366363 886815998 740688036 118895479 167380437 35324937 916854726 316029888 622620287 102485948 142514895 762625408 172166189 853073889 248012531 206628274 784814336 761137818 322854417 121078555 608063638 612165617 359161103 629214212 604141119 120099857 41291975 735473245 399544464 92298112 24891587 923764281 526306523 119213952 766360613 197711958 491267969 625942985 43764854 841719285 59720902 773102291 245004103 575652944 994461414 328588691 194207803 675895102 453801432 951048808 774823483 277001348 184167326 830647880 994011733 549225838 705773755 194352395 874086307 445643235 779763042 7418326 443999400 957709066 377326056 637080604 963880689 156775970 404170862 269585834 65078308 495175421 305609161 19929779 680070479 430607153 206869676 283758496 138427409 511771477 156064219 21565426 415885983 779570312 449418746 464663734 588562223 918130064 238328026 269903661 658527274 18613847 910957740 362984936 447538337 451812439 547451299 64558798 302255090 964901255 909097021 915696344 14403115 942590182 753529994 554930697 423790973 736262329 786028414 464280262 4072852 819552832 308568683 475939167 463423583 70360188 455686034 543435174 474683353 278562194 227486904 535723376 387529478 201413650 114970643 479116109 292806819 381786267 45226342 989593070 268348557 29746281 944861024 826464319 954257912 534812094 566671591 664965007 412569414 755254352 997621689 314345916 828561464 950261439 549105956 451164964 246971400 141394129 493924164 486060731 128710542 142581597 466738477 891380294 723768067 306340555 283341624 824310527 931848788 570353955 46202233 233849486 888985434 81041283 857832372 432525850 778406028 275253479 717356865 149023471 270538052 991191234 650286277 303540471 370831912 946602756 291293878 343197883 243971688 329253885 604133017 478401114 874951625 467448406 9987217 431641119 297115363 134759946 904493368 554746758 881808155 827267616 404113955 530043919 426683720 30603493 527101190 272595824 749485330 174307901 485322634 926174785 268844941 301127715 930768385 621145162 932361987 250329635 109313065 60007722 933500011 887609484 580624363 664574805 473020276 801222523 684597985 551529815 702052612 580833027 364713748 877469949 891576838 30422748 817201015 490813804 771377838 232920826 894866896 994877473 729490108 364061500 928683634 94153782 566558948 471749965 930414051 416514536 697035102 835251804 935561198 15583290 387009223 217111593 2373033 680733558 130955921 650189133 762043028 480165173 853604437 940903988 480728077 288447276 818407855 958369719 482780136 838181788 120914822 112811805 505262123 233268603 691237907 713414070 62629673 867485525 415866065 312350156 666684595 929148313 586052031 2419239 506267153 563882690 177525160 370359925 698164216 775821404 591006659 132394532 231395270 215298553 726518699 858702203 76732626 345724695 790588797 153608711 454843728 175466402 977951866 337870694 725437145 755124911 574538099 811710248 537932423 198916852 711147971 170181911 526998231 599346224 998649588 220338910 765459405 721680729 732589362 265188950 501661040 437538670 906699607 778740559 641342671 917688439 850922135 982135069 922745628 77575536 19471504 238837610 604443957 784410576 931296025 340835749 727166413 629634167 717225078 752196587 494066453 268097224 777149767 685500876 47473428 146995182 291678709 54562998 694509771 640043823 452914857 86207780 866204682 75533011 684864582 455398652 847806791 694503960 105663693 415100903 552717420 110892743 832203294 3842592 859441981 734069690 149300772 850185437 705681632 662056793 927998053 628237811 302983951 835476887 109979460 392904222 234454364 856620923 881785299 51968962 14319769 844614763 570024223 969365240 346593697 882068167 580047857 833038143 969155000 777542033 855347406 489040155 934958825 386110417 371763073 879750717 55788667 610334717 269262142 364757972 228613459 677009720 287214789 685778693 452270412 364750613 99321834 354259560 514371643 99129744 340439238 794301501 679806787 548874356 33577054 128645507 248774341 527516431 909326796 311772573 824920058 557863137 127091769 725920918 666581796 629847646 322793616 623803299 847157544 421162170 486857376 9841261 431696758 214991945 604593495 576820864 915507411 712372110 561437402 735260001 82941562 890453206 282745858 688479959 75120302 890355900 545687894 647880922 227791659 504589630 806901487 873605984 245259638 461260512 261163999 651875920 293970727 263340137 687258140 403752299 769545514 593798792 839936802 775379124 304889781 388764384 578396719 111318213 65601642 167319171 331437522 971168023 86676466 345526303 719814843 495273834 550487100 175622121 122304598 760523965 48685646 743096845 700025932 135016570 577950850 580757306 2545107 913987583 323128726 157895374 336515538 754150668 401468567 895915077 885026884 428002639 647057676 606319732 948069546 563465651 233212641 541196145 217350042 318808297 944476613 237304757 493552727 132649231 206038946 38786868 190620398 57107387 946350227 100207307 93808196 54534866 125503582 886540356 407606578 256566524 328592354 102841461 638170638 694242653 458703741 524733884 835691245 667674095 760967132 659839232 870172852 890238932 282778704 958835192 711716413 84837199 382189774 626886426 560344187 396379986 18872720 857076684 486995193 381223105 943910263 298676652 844250119 28966909 267755158 155326648 2698350 568252509 116574763 12228274 31554592 580408203 521057925 568858346 377568928 768686611 616816527 854682811 370155074 250435047 5241182 233315979 262908774 263765816 971715311 927989388 517550044 868348313 487420133 957449332 831699950 391069297 333721839 810149029 925109696 375658900 342283737 873489204 800578949 300688076 608533664 692729538 672033050 601912520 773119190 476659177 377257478 280891105 425891251 965939781 57082464 359489672 830010891 901775101 222655440 78500614 18607600 451074616 276380702 776990466 546141034 541750298 632162974 61430644 904102937 395361712 458572676 257721420 503318289 614661404 415114498 221746638 271899065 846084095 227420927 762024055 634274021 93118583 531784385 227080216 836501163 389753272 965717725 394232034 514688132 209516950 622420542 709124138 74202658 726561743 755051239 684720494 594662812 518583792 129659704 324967564 256126863 529229714 260540257 289021010 262469605 976949953 981939204 197105604 207743651 370178245 952166501 94840566 637376105 392361566 325959133 899819999 804982808 434754919 539593332 642911648 501451960 5763455 733026819 12923642 494162907 214052578 259225694 415067684 311288244 477951519 926279898 527504554 249642382 567658114 810354128 189100135 182088071 20292882 455019398 22780644 703213544 77704380 303431906 933505704 539382714 169693567 947956135 806316124 908801772 210096203 751428283 565463708 616871755 515450646 870472981 900340498 627019069 258827693 521320716 331491066 801966397 120547690 510950461 360863363 869940717 574542747 421460817 114026067 583631631 207280095 680414637 518783581 890825091 426695455 945063484 133141399 840905241 229311931 4823049 85610127 286797850 892807314 746111471 446681848 34922394 166962340 917416308 667808312 256359227 885632092 284964018 880011951 557733373 487248859 106691997 430143004 121859446 702416998 994596146 782001218 761708101 282154906 887318050 507484920 482355978 886675885 413825377 171257927 808542067 977305704 895895261 149836998 521806258 78458748 47345702 184143510 26432249 229577313 972539398 348241268 719214045 423490863 54417863 847840154 845135929 155342971 262213062 626499285 895931359 186789966 393300284 909592761 266571219 926603629 34547531 745057061 840020338 823926750 85520189 601989271 458046262 263590129 245811325 258842837 511615778 997692575 233608634 983127413 86640758 100778322 605000418 587868973 191358357 298236962 310757323 298193938 920561474 281671818 81260699 10725218 14060633 413163444 480716974 669516693 178476247 511735163 594947210 561819962 758785267 803878867 109991077 157163576 229395963 739639708 589537971 799957541 745064778 288667245 92931088 308124482 473383336 940453665 419382487 394978563 737395391 720727562 737045281 488684976 285938071 192901405 193739252 448021521 149174757 627995916 789861663 324399487 87100273 426610500 74174678 297492657 604969632 897699 426734188 264830742 334322005 147697244 2515535 115729289 778730541 475027715 187733836 487585253 398191012 504629720 737165193 104531346 746717337 257830643 176574128 19724842 170284567 969727998 218813044 800946062 876577814 168886381 316906041 648400838 138250832 947673778 272986156 389342496 881240813 984544900 829012146 102222653 229927045 48510157 467091183 778811198 351216953 137120608 16601725 897169442 306307529 907107113 412050740 606088910 256629979 543819202 478060305 92159281 529331188 746321378 893446388 557821887 837368069 504953354 441412327 623167304 272483837 71435710 41784573 863508488 31272208 698726960 774973450 78960766 541102018 35120913 311543090 674544312 931700802 389495454 35328090 430546294 959422844 372735646 836886967 22486565 33546443 842058966 424396670 560899716 2427335 968847053 641049849 681639350 296410403 772007387 160876357 289484439 353164956 472628170 523200626 797413808 610387971 983137765 429465641 535844201 762963173 853874827 386197738 680263496 111289790 484362647 743757118 882147779 551641661 202878981 509965678 280417017 969397227 329456265 750688706 883002893 854200283 375004862 733162135 796598195 563819868 786675296 49898907 257970005 435781106 663887714 574429889 570325842 64756596 108014062 965816247 849713495 749364070 879815389 312470359 622142148 758038824 120531726 952847487 281534663 27745015 153981353 584315486 637478475 454910693 429283342 882261345 167581516 405190152 30779532 693542119 295427381 363947060 258011267 304735657 130341591 866260141 819464642 190030309 515847007 690490337 779794199 144353864 814652463 36215040 970647750 219936749 627287722 669085169 459135427 883773759 566329644 628125179 850950692 660503022 875780375 855025252 441340714 555897085 307000335 891493219 910794050 594939969 929160924 601966257 694533169 13843944 372807279 583114949 648703935 854182353 927450291 693483657 893055189 30160816 589692624 909673855 692403792 376636075 938688977 988780711 31980829 930282687 120496795 916587342 271818530 345547371 824157283 410831979 584289218 49404198 235886321 491817821 994573526 327680886 979901497 88718965 959976588 667890411 382770891 759415814 519119201 490445838 200920554 175543200 323393149 140497597 248225829 8370819 725233774 897481510 444566312 409081677 461697479 226403403 659785581 400193153 503274519 297335398 559588563 292810914 694067418 398934374 441594529 895193260 667054013 385195971 615437294 837664570 871147196 915063344 810074655 345198894 591568257 30548342 530039895 258545172 805392149 70106398 458544904 83351708 799867801 799215294 295574390 402217471 834073090 859423709 839890508 363361582 579464900 392975509 780177045 364563469 324505356 419931090 241034310 859705476 311523831 867206642 727089734 316535346 986509389 488268716 640226979 403253910 88198092 570955841 630753512 867914931 116679805 612693505 327471616 988166912 623719894 736662974 971704865 440694352 877859640 657943819 432319212 91511234 244911469 419238030 172157860 659396194 863748645 347938094 256704561 434031747 443571859 707163192 396940799 581767293 77377698 202658976 148836200 885764932 783148916 550640818 188683495 857531103 529664676 123697203 785663473 882088650 205832170 921886888 547858515 617522393 735815316 369045431 882814322 561016515 549458942 505283972 583414799 488392433 636567524 327189829 844200235 482943747 717464345 139080573 325694692 886149003 392784011 44559717 381408952 613583474 329079185 946202966 172259886 753070986 232676080 291277329 5652945 387374277 981299538 303714083 84260392 592275764 228329903 948016512 714061010 470190979 363642544 118823334 692550222 479347912 952872223 345344507 598579455 323824014 718747401 581270332 731642688 731922417 473481772 14161638 796647360 606866877 334149101 283424592 749089134 846500610 24081373 774561973 924517985 178618850 130795497 312804495 241550888 883226776 896793136 109792290 98660093 302460370 477278515 896538741 562003544 87997066 195825120 568728976 892697345 224430511 62825729 628830693 526796396 355997791 883068952 208474341 119487629 979411504 44998382 285636080 242958842 118560523 649103124 230266279 934170753 707261777 385877795 7933594 307283435 42743693 264211370 364654225 925238719 477545571 780121480 678304571 407280448 219749370 439067875 994639649 753558893 92336251 194622410 63855958 746112588 241220951 126372689 904481963 261464791 550324360 978356411 110319877 573859927 754506543 790742696 360724231 949787998 912626461 520260610 945220474 781513910 755387432 959040762 578098084 740166560 468776241 159816927 941558247 207670849 771928587 595712375 996622252 519482260 885764497 206038623 558078323 117468145 787210572 537992168 618200281 912044616 468981547 402539448 239630936 105879176 689853733 819855835 521286157 297641258 2236718 407386277 738671242 561100682 137053932 9513426 484290340 493391996 672693706 906451901 432568452 864863253 581386801 493438729 979846935 204106601 425927089 468218239 5093138 448606349 708443162 565945691 458955658 885512748 860239818 392559040 178503015 865585321 963630126 849506486 188017374 878991439 757833527 983300935 506954077 484622776 542881065 896595578 801783556 96974459 77201753 32022623 754851078 383860509 925916243 182866677 921508702 745578217 915982290 216544871 705970380 492350595 651977649 882339026 850556961 160253863 193057207 305265815 444258566 262194623 652826058 113376701 448515581 247165948 934604372 601621417 74777359 812049233 350664356 838811229 110857972 473212177 581599961 630167248 142368020 478477777 124165244 409016894 115680808 860416273 65297404 519471789 251689220 182550618 729159595 57827873 430476217 285168160 491860856 539227941 186246099 781334154 185394504 183028479 152151804 431298589 963175635 1045222 897284101 74394776 137088767 434617997 378193746 30420350 234756322 738182677 592625858 874338826 645113842 431371346 185128018 558059973 502976411 884620190 810577275 135956179 605221481 773949479 842663226 206793056 917938364 649986152 932910287 571812415 774422941 867338098 383873944 351808636 687761697 905878410 979761530 504900037 635825380 551980533 177222253 494194839 254662552 221315400 166891403 850580084 694010581 339701665 428215160 830087083 433177803 717777046 187820010 661382913 838428188 544842569 439058949 78432169 516297506 118577438 198367639 755852792 738001281 395216465 381590205 615174801 523844064 141741896 617287137 63128978 702794530 927324199 714990836 443918888 388681781 92242252 19717891 995855990 829681166 860784388 338003442 298434910 877402131 854248441 11137602 399062574 910124726 458140232 276814703 24287553 593360529 35875717 998379810 802623717 854364282 543245246 709880919 283024434 883243086 25906129 556589637 121714181 759403195 345954360 376217200 876881732 60236220 995009960 858570282 808408619 47309321 335315652 794438697 240319714 632217819 576431589 68214472 770244058 908088316 803444256 944225908 324730781 10962846 425405353 135027260 873768463 578099378 339391548 871268879 297815747 719484850 839673636 275074093 729244796 657748083 986749546 430751179 361210369 987021034 177678023 73142646 871046621 201851075 504673847 905646422 48316143 522641191 264919766 613056521 590886859 134388045 97145538 200509053 855930860 926937937 876092466 419038791 901817387 171789442 861418482 598253900 242353686 206433260 906739792 828229514 750487379 103115936 429928988 423461041 856187207 91375166 295218698 143376715 169720857 934181861 468780926 528608827 131826997 272822692 544392439 219305428 636351889 542062359 863747438 316425391 537267291 764329070 114517204 505071528 863207441 175616868 667501664 991946612 482172994 897287509 208048173 423297419 418800914 521723301 195008331 872144511 349125863 868258867 355443232 764411901 752088302 996704143 823957998 937406231 176994523 727243252 442495018 843221922 263289306 782691964 588465619 993559190 883908796 861853530 205984016 333703639 906258054 146808201 473316958 765229315 870221386 381255698 889261626 474197068 728656476 438184247 948803121 230682582 962458750 618786964 361925811 623212717 954303884 717223678 243427787 184231160 9356177 45510417 355044646 523231786 858653666 915514806 207114751 275543986 588669922 72678782 117598694 144294042 404601688 628052051 977042556 515380766 665717089 912541050 505339685 616869574 725298356 276042779 748281321 489486812 820471279 42609355 422965996 391066466 720212725 652865137 63161197 754790843 720555310 605411834 639476796 824026654 587613285 872122649 563093559 541166576 404481023 270340823 730322521 221830318 679325483 524081235 282440172 979913363 881277430 670735250 783492138 675670722 595882809 315053545 44634215 733192715 360857071 454699573 602994863 300095638 184360924 767340338 531787019 924433978 325279888 924817429 745693504 282761808 83796801 717977184 822565523 208194569 781407392 90616323 810366350 260147333 1129626 137351007 487294782 532535261 353684299 664742522 656318782 987494925 613810021 421906577 971588938 374381393 30350227 98599629 572822807 391440897 115815984 800688210 900238742 858286821 993684123 758638962 132359075 133022100 578011607 592579005 179418520 490936635 828141822 787221524 136836585 672393841 198861521 887265455 439281593 580103691 155788056 850516533 653684668 490772951 214148364 608938420 864920360 454434099 522645509 534203030 225185711 876217826 153108361 938184751 305918106 309908562 339223421 775837061 736233725 485765965 234196671 688179603 895129781 672977790 157977601 791352571 719293175 564922073 736732606 631829190 218715110 805006816 960834347 709357306 367667598 824059824 892163399 120973791 310489891 32670295 423023821 205122657 314048342 310283425 676298270 643324048 791839010 776294513 153589642 271393673 53935382 876234776 821022469 731206423 414666144 877681179 440506639 357447959 103063026 949919088 259707406 105578407 810274432 210627847 370937214 953219930 732102505 335032822 382450095 264572355 578580051 69674287 160408546 907784249 61644371 785839140 402078313 914218894 56249389 86466648 754291341 507386477 467330711 558418229 580354736 681720685 688456465 467183742 286314306 799808132 423559774 987059156 240446352 40672020 215093005 639282269 63252283 488507671 27382600 107336354 894392147 304198699 776038884 443259097 422384042 849228930 463291755 22942663 117966239 897281345 915572224 798618110 984258899 458594224 335041583 562276476 883741006 819622402 376997459 709054748 906531895 707171952 925793889 199811355 414450522 809392805 71192578 112922434 656106877 569518038 571154237 438636080 232409236 375601496 510024820 116745146 665845271 93119735 971623956 53403503 129415727 101833601 835652999 965737058 113761232 201153974 202775610 187830411 315843820 948477506 601233685 776971528 330587828 629398708 318923363 97681310 84976048 894648706 894207414 776922319 70119609 628872843 945192931 689955248 21248819 762758639 88015238 354986140 457119231 730122387 243844236 315840224 676325408 657972594 294877790 827306965 16459774 743022602 952665047 851466210 63499226 989448323 685771747 679814865 301871460 311772647 69350611 574164305 443657567 411097872 217408119 683918306 148146022 53107364 577831612 20516561 236479364 298281324 980011872 775726463 991815652 209452410 220468655 575235232 94460455 479287279 615589386 198567000 36859171 787654879 769492839 708103799 9981005 185029435 738978229 946736729 492785640 657519465 33942541 272838389 931969986 215556457 328947085 579237832 127592912 881421756 198781157 819096991 390802637 933796082 685592957 731398843 859838728 729724696 376372756 558057821 423363850 893552309 892669559 794590655 258680459 502293911 639514420 848640720 210043416 360837502 217654715 543446395 312305371 834573011 849282307 446298977 139883305 263110718 656003980 657600086 184997885 26580081 523825008 719709059 243140610 271684788 420866460 128674368 117196698 955099053 665147596 26415349 870349 189747234 338305428 448133934 94002020 241846618 185306544 431731915 749930288 880107048 420695642 936389295 77697674 793626157 691562113 357136217 928159392 863223007 629413531 493329254 236341802 410034747 279903564 706946419 656377837 63549064 999669405 82549863 747789486 799896185 593130748 440791495 515537767 633356323 6939309 474652906 400294784 617085601 311090378 509788779 202466312 64680646 994324389 565263053 333325888 73217247 466391886 638680911 547773149 170963973 371346243 806185016 153000550 843446318 770408762 282802774 528501742 977257436 872902528 409985248 21230267 225525697 560586777 160337981 431010117 962963969 958584635 468419629 58467312 702374648 534446105 282045254 808595925 872735349 94825893 773637922 941599209 106021108 767918210 982430421 481455686 95060221 627808551 821456897 440923724 457590186 501831712 139857605 775825092 71420428 394542682 713940776 379018100 323948099 557618179 900108216 388112312 205739123 161902030 983559170 735228407 118486193 250528782 989545483 279821496 606304027 884906078 426720624 672564159 364774516 391120994 294187250 440871269 423896186 363189128 896969844 277526712 678924188 442456676 486003827 567007460 442087879 380894408 877709 379057747 676553169 763083349 985171093 143530375 533852094 578079796 244501568 870285269 395346751 569718800 263472936 943194519 827326683 47831028 924526467 591060648 16063734 582437306 252593452 176154511 514081735 906360692 590652205 285967865 555096875 480482395 910069828 138023982 256120778 367573523 42082913 609225841 769851025 1295051 268728000 852528336 348532025 31770033 563206057 87831997 937590530 713742705 622844690 615266810 219568090 468771495 303188503 281058163 609354763 674056527 106507202 299375665 72276994 194878402 660911868 504707061 290221271 748871091 19248 218843008 823640060 20028157 155320912 874487532 23294810 213727 693450266 330703408 913906900 367302483 359821333 204510509 421060001 19859359 528973620 501039305 761364989 603784580 571065535 771997185 37118487 323366227 697188475 206592415 446494835 425250569 405451799 380007586 386774992 956415944 679947797 246574964 888561302 174849211 288966155 498863796 47684334 553321948 988165660 613824692 818110356 676446620 814928675 554202834 459339449 392598702 208866711 640511017 576011318 388175699 907255956 994512543 901807167 696209328 699672798 656673105 467425675 603984703 694982112 510306208 931715602 877565812 135380524 922055238 692826100 780866826 569223699 736529168 60048771 891840115 670290026 345822824 567729172 140491985 836654155 534021014 919149461 442320958 830877386 658007918 898803029 255062468 628975725 488602145 110575698 703686952 306917097 160303979 208732154 244469497 630204955 123460694 13759784 822826900 793772859 978349614 85369569 344988622 122880047 759500222 22487292 589683162 251079714 35359261 373810518 613192788 969609238 400135613 350351065 762816483 298574182 883286580 461894529 675060236 260288973 219689824 411058614 500785825 320090271 694847210 688210730 992326821 10871379 996636346 358285207 625013958 686244708 172494201 70140082 84921621 569987088 131624502 275722393 773496989 300081523 676872390 29792593 431684898 598806559 885971180 551382557 68658069 696406356 309109258 369917688 455423143 634316701 113628543 966579598 930456007 715042604 257795822 771522607 322402042 986392973 334227521 383346593 279279232 725813021 225592268 388547266 317544739 837776963 711141075 498742600 432127415 585409971 132439579 280698306 440937933 435539945 958092820 131431582 494032010 321459367 882543693 646830379 719665960 319097499 972444531 635849005 361412938 269414567 427331521 610086974 865318311 872670190 785272080 404405677 224286693 554568991 112518475 924769238 360880862 871016096 357231004 85031103 696684986 661148757 963956297 408284054 117339781 543350729 575652686 399277189 975206289 940305103 996182203 927829033 397138513 52425883 732448768 245333358 542555927 84214307 832676296 48846270 595944192 431174144 261655908 451553042 867932540 387279477 577742141 57362257 851797263 962658654 119120433 692662031 633601040 565585040 824898649 64495559 732202283 564376266 374410594 742926514 514684393 925270173 627417860 246798095 40771205 984477174 857075024 531431374 254713834 501688672 931869731 133001278 968042173 12032968 439611169 721026667 797916473 585453708 612044332 953338163 587082782 734215651 298705317 189728797 910062422 122329973 272339202 730155337 161048512 380804731 232917363 65904900 670142731 848144835 97114574 606864374 512380187 912863203 536599590 477565676 841237463 100482059 124654764 700062707 301960482 310817409 140067628 493808200 17612062 696390648 510813864 307327202 444040575 639093680 185470584 269604012 208712878 266937553 714087190 909224320 696237799 554903911 187578860 772829211 185881209 324655641 682732634 99904938 699119939 873032246 942528611 761462530 893325421 688171393 385157303 611081330 877982275 241176360 1575922 581526366 378638756 159302504 658886403 778739402 848748396 779140006 574415563 853341611 134204106 145007590 553042016 325552137 605316455 61651222 943370766 255835474 53144482 653025668 764242867 362767536 413677689 628839101 160204853 749525641 181713051 69452612 208744203 151899150 656722666 2274186 308069810 246041271 873631201 503293059 702407967 860884405 688387213 492771927 684349211 136594350 354655694 795758765 698726683 23886147 656210197 372698804 991571098 301055163 483374957 567261164 67536963 485147992 348314863 623836660 832384471 786164858 131565423 1709504 613155104 936191872 578183568 157849271 55261984 860588972 939111445 319234917 970895334 362366921 308386393 110058815 617470903 95720079 69804358 13497608 40680994 551567121 732594194 656890374 748935143 57146035 298600575 344694264 402959603 764672348 787525537 246845042 851195730 145119879 463735476 427882650 69860745 867640313 73046199 253147597 313385295 142643513 808925966 458327551 30096231 573726388 504669839 50548888 842390082 546022162 101904020 412677171 603674888 337729363 89093553 374115429 682857106 658974668 523352004 308706711 71094258 756307781 910219251 690812254 204548506 887166519 98310581 740347383 6077356 272713602 858293974 618196331 723353283 814146551 251321534 662767333 375341069 693788181 224838205 891356015 580424543 416971199 413790411 709501236 56789530 855664089 784953317 617231157 230535290 108733642 714623279 788855714 3736961 5472609 959212042 140316702 110287409 330412525 644539650 501684579 201865969 495076728 656674337 194938670 11559061 359632532 682122198 822239133 793826971 676426608 379776437 428528616 811900282 304709681 197456011 265778003 83272560 993818792 358847835 496147051 663903222 681821643 376692514 254567327 175953018 912879130 206936818 590267173 146607728 867938076 55333370 74389356 719539610 130870521 705689710 112015783 388681663 977625773 658472859 701142933 610457780 71674712 291239465 122951042 296268562 151525033 357810654 656398369 283974557 631297574 981490112 184670208 881552535 705200664 751530169 817033263 790356088 994437844 130074192 656752797 499084109 949251088 141612006 647733218 352990670 615367354 122883121 292322516 22122636 362086263 821157681 943104891 44860988 46277287 37693128 859284624 384613925 637420254 893599773 839346390 910547145 68501195 19002320 4779581 404285573 697765814 418094350 297391017 279990272 851252853 433577827 913973928 516886746 166909252 987026894 976662858 533171077 178566333 741050913 288222452 631127880 873689099 226155691 181277017 422205105 627257267 283805464 443302659 777316432 173946801 98201182 742922608 76041659 178841005 860390112 980036694 329219194 736705911 113295248 105097460 892378365 733651364 781551394 366953801 24160966 446077216 580742847 43662656 434710307 49281946 881214671 206769595 641393601 172696608 692240270 843310768 815366806 729962303 322408994 252182497 578008851 909132953 585524943 485319508 638454428 944629115 190783881 517357742 675754620 323900085 637959288 320296022 540897945 709659405 322814938 307416738 706155993 731217814 622042500 124906082 770305918 213459998 947684765 784328370 49136339 374011998 363673266 144439602 730816967 878416384 532394463 787861439 979602119 267262246 442306159 240930202 859458904 999196532 781272616 836899226 475084286 767537181 335671892 605583834 83752616 148854107 299573956 847872248 928002899 700598386 19691698 58551820 174839858 193616323 139115013 184953213 371442864 498606440 88168245 851558080 716334241 186335637 771125306 470727775 687539864 361806346 34337770 667305109 187497614 782565299 549081284 642551088 716791988 116163836 513288560 208485214 41533226 997194690 64132771 848906608 610141145 292079289 493116416 594022536 402960897 638107608 382387331 253506528 41538750 690962479 768212037 877469240 604268538 974070873 309426723 67555301 912041022 238835466 211035531 78862788 724542538 83516107 592110897 292057169 817687742 337643988 324038087 15060507 779013091 241922014 269072153 91746953 103481651 555948656 628692322 527968822 291943038 808201829 733101719 438658753 180413865 665545214 681222723 780738859 202432543 594881656 362445086 696507768 495503233 105340482 527137429 284869329 942063630 751466670 638840005 355983418 844755284 277303512 33137061 378929769 474624145 56569644 790028856 698197280 396528899 132265118 893517969 422021394 784428040 385295481 987613920 900383384 364557879 503403271 169037610 683067780 741232624 239726588 105939287 934113280 417428969 509914178 216093491 750843905 456090969 835854449 963645673 860187992 625241189 885774900 576229254 5259276 782387162 467354844 434913877 624172370 813373154 68612393 723306540 638139612 960023576 899286517 335941899 765510443 788478229 466738885 206189070 620997382 770200856 525880596 671316067 281726501 496509841 617049292 981797863 668775032 851742051 672910726 319842682 631274992 744124118 523862772 46790758 970977632 700896967 708038962 361376129 918350607 339142234 59265581 283426653 894953305 68588442 586058521 284954898 164969442 477859900 557218232 826990070 730626770 695946080 77885302 464549729 665977321 631443868 762171528 823817946 42742296 553531620 805666238 225640331 674440438 663721514 746835366 804313865 836683075 411907384 632951442 929750691 53775093 385941510 7713323 621367977 816952119 376692075 759528416 979589002 233037706 375592491 480709894 53438796 425594602 683168611 429627475 753099009 847279917 581206403 130703943 11268751 971076520 465166309 12416367 824260181 3679396 397870202 101206292 818607116 517585996 233599206 878973184 925881310 313674673 395611736 449257994 802142535 413686409 239231906 215559954 613313915 80269759 803736539 656764530 359432098 225638082 519576323 460599960 87544696 230245282 69371663 536218956 325566879 28059811 619132981 998922455 638294148 710256617 731195450 464012007 206259500 358993826 803799996 79793761 342458169 940231669 801176613 135222452 341974334 431517722 880398350 798308759 558766980 928412725 579247330 207822072 236346772 406918825 955267114 927011562 475955875 462471252 939732368 22340346 482613598 581801321 959879123 207857181 338616440 950786348 569169631 915628336 133232256 691938411 319972846 308158935 698749640 991550793 312299152 712449884 158323673 865858058 597455586 752200342 969119767 646836555 690970911 756174529 715347351 789940489 688564641 180795179 395981118 33619567 211390488 934703591 240527302 344149789 107933026 762878542 724583313 59325637 797415788 261568947 645213236 513785603 480930154 556895427 638265999 455774631 588464886 953256312 988322055 585842418 408851723 532127080 585977576 203311821 98973937 232033498 311262659 206822580 490384110 954603032 462325544 240395718 472975585 383355525 911987380 855140712 964655592 430720921 969457132 307082191 615977599 110702657 981297572 978553433 994999534 76402798 669291320 179316140 710924021 685253314 603266570 659490484 901567700 495387154 563638035 484568684 476931621 552254526 940728057 651294254 789158623 719157846 605019963 34652538 204829756 965769534 913237828 569467020 886927545 673037896 694207126 567279562 410415222 112628091 938706911 264413950 483678940 68607385 320913793 772052165 243813542 661566210 611705090 850074811 187181442 293059481 539071321 266555531 3550210 89595835 467883062 866498739 657585029 41236706 807361181 999156518 73380457 72839096 711333933 355211736 739018075 439936612 529221058 678772158 309266785 486076915 685938748 59366648 348394160 121374571 870581607 976451734 722458008 426443375 310193627 981863407 967640457 17958065 480131664 12193923 357302805 420631665 970574346 670259343 710191992 20441750 184093088 859329479 548253769 327237303 535953854 590855372 378319959 322721262 766774271 323272938 266427718 419062327 528478394 943774505 84542588 16950985 485635824 776302802 73048622 489159598 791573242 31548940 435830805 22258960 451579130 461350022 410532136 415893111 542012789 902860162 468634831 567234903 289892908 534023325 279111751 558307846 412338007 383771814 977646856 291882956 49251873 244632535 423421019 893741912 606928429 84605728 321319626 141971852 561802345 24989703 718402657 326708154 727987671 378779949 551969550 6998820 680262313 401962919 516354389 382321747 533544075 61646467 371243142 585823435 356229127 756847005 436866148 544045299 497603546 466206999 20939397 386684342 989817346 201612043 94067066 755558965 23593434 436492566 951397859 51727158 315449639 2951366 757385154 820199923 813320393 246444814 696993039 457561690 398020707 875943319 317091855 254862628 846496520 147507780 920780968 148010851 875054897 414828265 471434067 60439442 135399811 484534146 660183600 630736780 805934645 429432282 213295864 690229461 470705256 921161489 72019168 935859632 781106161 966610687 60308335 350867999 982750394 106226792 369180889 251911616 472103056 718074245 918250171 702357912 586412930 649071250 708240543 625963821 944028818 876242552 647363251 816135716 251332393 275130581 796839443 678715824 596548751 23924901 528812111 277143459 172729124 737730742 749896754 462136669 363708227 774109806 806658708 238333963 812758666 428595872 868748321 327241560 984881013 232057984 899953272 546600681 355032888 818273728 120052143 84651975 777853902 927398589 177651148 481635734 534111713 489968407 250997194 337982147 436744576 167665789 84611650 862136556 855077010 458323728 778529884 714350061 758838981 214189109 617959066 998680649 203424198 662319919 608800047 511023495 339520213 75366348 117027477 875715355 983579073 170961936 90627871 189500052 527229772 141424491 989467575 403818317 609305256 108928195 47543720 913367318 850357157 75851558 494796905 518540861 103232602 281483333 773189300 893589651 479320970 73120584 642607512 151040063 150245395 813369942 254333397 698460619 168805307 976959855 474782217 756344978 651358732 580267981 434597985 187953592 31072005 376801028 12832749 815908924 276716679 627949334 868298483 540689728 964371886 208107893 679310435 391305805 367587431 261528929 392694580 745035727 954210807 92576173 897499848 386828115 516333439 442830656 872816812 731072328 493416054 467425945 405451688 800347352 673845471 64156489 715235562 460610627 279738026 431818983 864937200 491398779 243481341 810375631 726027480 143540178 231502910 339197574 397905937 436980423 190903172 212344090 734974959 96281039 242948227 982971866 828785861 700457889 204331984 162826509 5781137 933835051 205501014 102254801 558280726 257110849 556196972 572964963 961385007 22936631 884098226 751416220 646765374 261699980 177489402 672190611 962362415 431007832 769624000 70737310 341147601 415033662 778621852 314779195 14963725 209284353 348806008 471097886 571932619 647360702 557910344 767341684 403523434 523308607 367945526 444778209 615385999 237737400 945290900 618931691 595475698 511107581 309624504 599567822 227115987 720577641 749720631 827137869 288822406 927434444 275518126 845559862 601135146 616078776 368507104 564421557 21937284 686059512 455296424 894223720 79237920 655459973 970294802 631478961 502549851 553154844 606888223 579862115 804994074 771351591 43469976 684663483 287443553 732843861 796190332 586743928 460022978 638708437 373324716 530064503 812029546 887508137 128509713 388992667 84730336 721439079 279990610 687676401 975879600 621530762 680721325 251797827 476814950 487511193 617546910 578736188 38421517 234327999 252411585 790026457 752407891 475097707 418261508 25919581 655454048 865633547 816648831 937363444 948867134 249067223 166242252 109312782 998408821 104405694 330611302 167786771 838736284 33295045 168999096 800677393 36766696 438139743 338411904 524421674 365669374 808200578 557268024 897127699 930242656 611714436 956686397 45064713 117088622 231337837 242708546 201870415 656433522 515659053 245988044 263959710 876323500 702873790 404297843 711174573 876205133 726367340 342083789 147644700 940958485 611954482 583675127 276706378 753816494 414988686 886597123 320315109 601958235 187663273 776572477 911687546 556474916 347019108 557130022 942890604 992693116 388959972 4647997 469922325 546743457 302571087 848366222 922559530 886982572 297826788 586371461 853830990 620496767 913941470 443133751 147122399 340703834 644564935 51634924 309719924 61139237 627977816 140692704 648320062 210252422 490120199 214800569 358960004 487864221 741098420 765086114 408511343 191562338 47937056 456335316 89718757 921974004 609006664 783988501 388314384 708039915 4657391 263030962 44501163 337508949 35148217 69563381 612969897 638140140 706546955 316660096 14244816 390131703 413494545 798605257 362416514 273773166 963407978 288613617 917733026 676894107 41304865 564084032 216260810 181397144 441708553 674075482 275406504 414048853 680795883 173951538 24581512 290841650 876348425 441000063 126303133 557821715 638369747 832504088 420590299 493132742 378797158 712877995 408143960 928286905 793064381 769739190 404425479 400691181 426635364 662940105 936688944 528877921 348180531 695028084 648317563 445332468 962923074 479098677 938224237 622940123 45068528 309960549 218635045 481750050 281692146 809850018 93421465 11964939 199010579 829114059 694021172 43712971 390411597 968006352 623735272 686476006 558078689 483060971 478770915 415828096 8143979 611205055 632492350 246622660 760636795 63633319 768517219 6912835 928873609 846875776 123259881 460963663 91288923 863121289 25956624 991702861 586698293 927727247 344944265 975882188 29080536 568067957 763969006 304322648 346644657 508497276 523716721 578374995 691029300 209451468 546767855 636766544 453584471 128621593 917916825 18767508 998868694 819459158 136974891 155180907 268377579 143137277 783281972 236712070 277008821 90860128 863077551 947007918 154811230 522105396 710542327 796673575 899807176 708476406 654623516 778227828 110843808 423593841 245400747 126069361 749937676 177669299 604409130 391263715 556679500 253247719 804552467 416668821 212473098 811777672 237423997 442889884 527268972 917767786 89901429 633608130 104026055 257831176 706125429 568870835 140444548 319179484 385500977 872269324 96472029 628041976 384755314 990875548 749573591 56562108 233510726 447065049 228471851 295239031 129202451 989900557 994845983 282787315 377202915 242286855 406239681 82949420 629784686 393234643 878121326 296436999 545364430 130607545 106270145 141862053 406733339 348825061 143325094 603096499 989642676 559815865 951679999 897243051 751604419 239473995 428545584 963674665 359235327 419155979 950951159 756454235 513078823 557177722 565149098 575377476 12748205 163949402 627893258 431950972 783504206 613085392 256409599 992595590 626345304 45354448 937608544 437212330 966909674 537075158 727389483 981400942 810499326 407263732 821676067 673240675 496013392 10227318 538450554 707579563 964742228 127104711 37966102 527785287 115934226 83990556 946502227 128261965 652569222 784856503 979011338 218021473 604095158 935706744 432975667 651383664 911428470 41532726 301037178 506800078 181109307 513588697 450098756 106990508 178052173 806662275 40429950 1448858 625561807 778689500 902008976 906639706 675534553 200840072 207317190 218619524 18848334 462826012 345921943 356235381 861967385 397060754 413764388 376343624 300577213 225282751 366767790 103914946 529024187 779324875 806835395 233468453 612324172 178822380 990286155 249047260 908610003 115510346 505876879 171258572 981826991 719236981 810596225 305935773 936802151 595987017 858695715 543771244 218105248 787945842 999703406 742892990 710126771 80543998 603296626 350500606 878115720 729679740 74158791 460912348 555370030 261424025 782411458 5645570 343592200 780992500 666849750 286483409 604499496 452370232 450105717 18025822 349904539 316005848 830839846 238300321 445470554 323863339 925329233 212899148 800910476 478817039 613225361 266449708 487898739 833024856 472908076 660623042 400481806 909177738 59402922 3727227 476803571 455975340 967598775 416341748 741728056 685875270 342247856 115879132 193405768 810886496 524221360 348864020 77456832 312205317 738976389 447318067 222680708 716923181 142741026 632681297 815289294 820531795 845959317 44762085 812980818 749512108 7884040 704768929 611260548 882694057 818714578 208820699 77907945 270117919 981951407 828015151 481447575 901974682 997984758 454319244 19646663 132384781 5632015 907315801 97970766 286969457 294345431 824927299 671993278 511158394 595464703 980922889 582934754 522858128 761530723 156796532 85039858 864654274 1453985 986493149 264895306 243697269 314301345 245197244 787434554 517883468 424072057 709498004 888523044 152149399 536155128 763637082 279438602 495871772 195115074 433800254 282488186 446649788 770318912 609601712 590874559 18507573 980601706 35985992 198596959 618185337 940038322 67310580 2792357 179884309 820383447 841264420 173252835 863278487 617463007 599576380 85845734 353079279 165107115 421006751 603588855 568464961 767410109 942594831 524806582 988340916 122555930 964639943 381845783 388939791 42515853 845045805 597303676 574954450 843950651 607927748 992606485 294323463 427755081 852532656 251407507 398545729 772338311 148702604 538615405 831155456 205117591 597306244 860715398 106977888 387120766 724852897 903569246 470413800 265112791 651372392 102504001 848865107 437849150 281906117 971426518 31989615 336105712 807572983 367187831 842189065 626165738 999444701 933261408 254774514 503285390 797100027 351079801 993104354 744312377 547685301 517752283 112262272 721066174 830839383 530237558 677886127 383812449 958266782 776516430 576957149 785075315 774441811 342166908 643365187 681591423 464261419 576579081 831556716 994604910 553134631 635432400 592533511 4080793 905162625 837326075 159474778 869688660 814355111 985148131 835560372 807668095 512592234 887804183 604410648 715200543 517769177 731300976 664481473 567158785 797219124 255000623 12677780 233362981 429225903 83828810 750518467 364014308 382343210 107614425 443381798 324622849 234968013 676195374 860898338 841717182 518730697 652693245 652438245 247924652 510843296 840709620 361043179 561990486 560838352 807420229 544910469 914632113 769278876 681795672 246527360 339570691 937812812 80951999 456122820 262106376 187258608 960786997 715220365 468735110 615938775 399771031 377739555 629509914 647482655 706883831 998115079 59442116 469400683 496004396 953154836 601090093 809635463 399161120 71039947 32806091 706682157 991972405 363640879 546890950 271486249 950164125 527136871 875234312 158847799 839298517 941332439 926094645 262877451 715551324 230759089 743374593 868512828 570513145 724497447 979303606 504195846 813997559 132768865 667921391 649329592 751171681 879823229 867913121 206458573 229750514 81429596 885895619 422282564 400187452 161562779 548089153 674240664 46809763 500672938 655667225 266398056 750765840 735228871 68388137 474107968 304966335 158063033 547361825 411839143 318155852 563056635 355412220 916702510 490072088 734286368 14624485 256680848 981539451 643788559 663518804 966855704 728714928 48678875 872901672 702929570 831050428 416862320 817688923 638490503 981918249 788801037 269446417 787812728 645310188 618403527 211391126 556789932 87746573 947346616 103282813 342933990 846511655 107996797 327882383 615067919 64291554 132602731 310162208 650896744 580841865 647640488 902397335 777787929 585768400 194822467 923138068 339266515 72801915 688633113 372709977 372287427 419428293 976091382 149214447 118514282 383583989 670962508 941513698 763751464 625312105 276529609 832154684 973028656 473212569 888691709 416399794 346059628 316463594 513141790 676594961 913410564 950950836 219535899 194581852 35233512 256280301 795595958 70156867 911321221 517388552 573082164 889108442 996233033 95438199 674849516 695311258 329589546 125393352 429439672 142200785 598759458 928130889 318658788 934544623 870280403 104929037 115667876 686426049 575697632 322454224 402849031 838141202 784750334 922667753 464956709 929295051 511695995 304033587 28744083 263075315 760762507 587631091 916900902 596382286 709539534 979390729 361004946 380861217 460475 812921441 678457977 644399975 300785865 837362929 666028702 794003700 375225802 557739476 903020475 512732120 33956976 990911500 374274851 430071384 95627858 34152833 323696636 702847740 815238666 43536298 91693638 386861196 92535872 611949333 441784415 180131428 214308218 4467592 781639787 437546830 730775937 860129021 846555617 938072664 79201411 4826851 916798904 548606348 582956000 298713836 726273233 342909515 674160680 333540005 342615834 811274525 418289142 607477179 369177703 480758397 653854213 103303725 22207338 605237271 384499199 884612072 352990137 322246337 891531414 475545823 74434939 226400020 521219592 927485939 66047326 5005976 163355626 573464788 564661101 189656843 725050079 269116549 448265333 269393469 627806162 638169823 826958649 655006206 194460033 642706567 157500728 979423531 347457847 568171147 692630030 124464945 824489234 919172237 542137580 88816127 552882338 755441705 351822141 473609592 210595608 461303185 736174236 240259249 406723822 795370126 257906132 443558689 154853260 942544388 796161265 852076368 894732349 830248293 243732019 88211806 480651329 801796335 830755699 843478028 177846641 220322154 832893368 271011065 993468688 721896563 578868111 549315361 548619846 764468544 749797407 836379933 843157214 511334278 881405675 812094007 145424861 184478652 569789492 877821749 934957745 495298508 140902823 931423761 422608414 318720683 424063643 116110760 323231286 166897840 901486238 97580237 581308861 489446059 626536641 344418416 758699958 223145139 198404590 433631653 422663505 317854038 25315912 249758487 49988666 476166893 502879762 285756317 155157232 501725574 758830194 31645027 895266123 910696052 889843479 910815992 428767516 871882488 338625984 995047969 799169917 234877731 599257643 957272814 993341821 84156820 484691707 647726543 464233836 667845196 250624346 74936390 958573679 411430182 723433667 809268527 993762623 556154629 616235753 884053981 603149958 544439473 447185673 358257007 715407816 167890501 650952895 342537074 919165210 964227111 87096710 205410352 364802647 218046575 475800384 629436288 693213248 710260132 614144893 886757085 742788382 276137898 963551940 51231603 806688550 311932824 487519528 305389551 905822504 850687760 827795758 337744867 928044966 508181502 504742472 309296855 94224837 867400026 150801268 178809387 832852427 596814770 674358889 328404522 223846700 433520935 916186637 719736203 586355587 18571384 628875506 299633083 387568394 69528414 344334490 370258170 14829911 948996010 936839260 822748970 185303351 216970593 774327399 169455337 154611441 918031792 557394845 746311379 144851328 469604882 993710889 509508981 60994241 553944519 436366515 457721212 540613210 393446842 36180053 691940177 918152222 113985321 544360551 24455592 714052685 531963684 503713917 651960400 218165043 932709410 109606149 907613071 800448043 795474340 653611813 578767318 287896407 161297758 299036834 27336643 623613989 149404190 725432774 9795089 380590625 657493298 757955301 722352051 285119046 828437655 743742314 874440423 328681171 464583352 654561526 674472795 570261062 735321987 773168656 274927773 265401719 998449952 306531538 780250894 551969221 814113564 358014244 158458065 44906318 779865399 31447119 661294679 538896188 780977074 783173342 791801505 36390685 547467952 795873707 329293269 118490957 935180370 714539031 780731806 869918621 549891643 35737381 827447144 510765338 901436975 882978853 934358322 330291993 774881177 110432173 596195455 341559415 183940296 166079994 265251450 933324070 127006885 202822706 118505887 885106662 745488940 481051228 535408953 516056421 309907110 666119892 855877857 58922642 257876236 677553844 267401543 157373852 197383376 595655626 609116053 433434245 6338370 935880389 281939951 820436967 956176997 207440400 475763739 607531853 445835212 764304989 207630550 723544464 93573103 330681757 923826600 338185269 365058243 773748081 390903946 168701815 179226661 638369149 940261876 973014382 880860643 832595614 261540873 399942510 597120044 95267171 534211225 555954195 823246772 241668816 739125737 574397842 830077781 678555282 930746215 866164435 22460945 793272777 536601012 771592676 991976209 529646037 418256322 357349161 691535875 802276393 49717093 145870532 275323058 754973918 852464606 183013976 149349765 277097123 408871847 579215323 286667899 938407057 826563570 362864693 316583341 955564576 310784765 653102655 831417085 182106867 672077714 488027914 94886632 861644287 563200583 297445722 920065101 229743097 179654511 519778938 38982983 587304337 479677231 940309733 687725134 629236553 940500189 855035759 53298696 270003367 465281365 713151987 712801355 655788577 433200525 822994003 112111677 612134942 84947553 215891717 102424361 551373426 164332660 74319032 575420005 268395952 607734009 441475351 528369738 180658810 762737415 607976431 989778474 997407820 217048055 785807309 787736061 293463620 799269028 257698167 558329752 980316126 98348575 386787460 667695163 59368448 432583046 787048719 781894249 797606331 900123587 940801527 283269418 643843061 203073845 790383447 906560096 305627781 695563587 612629 892824684 18705540 755471986 781260304 182276909 201983491 157934908 325013367 560519248 851875795 36655772 436758364 608698097 962042349 995470237 97351242 412865027 359087639 891482297 577018860 459765548 261164423 998305699 836364205 203851334 913320124 458225065 806987236 807139540 104492353 854327038 833105825 838167174 68868981 495497764 972908601 930603544 49824344 681024790 422078006 601545838 63290017 691855347 7811327 693809635 760387617 461689584 630477425 125870286 63467731 766063625 547270519 378764966 832020852 867330049 408061704 627463952 467950858 823126260 965864850 628476001 150345416 388429412 522719332 61198341 94901248 277853081 960972854 273235014 956315039 509862568 273838381 804643898 234408649 873565633 113088641 551888532 261693626 641729576 760508447 103597343 306756869 72134190 577890698 241586521 990106109 468708640 333930986 499612140 997711230 709428291 942314755 794897501 69436050 333640510 506299176 312019352 86939641 102899221 143431928 784339382 887705210 965014957 328866787 309308447 744087606 783818830 656203011 535825265 442223512 295247288 179653186 884732724 490038678 53982086 765349923 758355134 594658913 623962908 382245269 350807599 506109698 413686771 535895498 103578263 336659211 479017757 410641142 604208935 37556435 859294399 839083071 945366366 803798614 71323811 414424521 317236306 24439726 418172452 436076608 226501626 655170703 295191275 138523293 345108249 583337481 62645135 217862497 877819184 666160509 125315927 440252634 671721563 820871980 20085529 463521557 93675658 275737333 262112946 693278550 489713440 467154138 220856873 717283846 678112771 225623113 618244326 808100321 322787398 176691176 262153918 1924909 577033971 642465756 468104076 602457914 161947987 271046809 40359500 470230440 660352714 830776272 654085789 672900213 125435553 495932699 976749193 345747835 373454638 204432803 615442151 500266004 197126109 540604226 779143662 729244782 551851331 606835896 514742700 660317112 271342867 572729366 657509545 239897962 204955937 372592612 353383340 180056805 128803126 818521823 763945258 625163542 326492926 976552697 424235207 632874138 835142886 293803711 912472981 92185094 256682363 661840597 317947847 590714108 885844986 68713446 430564468 29783539 280100619 998275876 64570182 934368160 609841869 526438134 743379938 381763057 437422441 231848371 399166009 81311646 949388178 770400898 64437590 814528339 995083588 655991745 660447448 659891985 124129182 88037836 379591791 17396277 310130337 500203430 508167937 432969062 203914105 875059529 969421105 28415054 833542227 338894074 745256156 271801802 530110783 672245000 790239738 147991950 155658891 129312876 526602556 345518563 99950899 750134105 609297120 733037193 210329759 422424481 568799941 408237083 908437052 418415998 214445042 560828567 816363992 236133395 110942624 193916183 222025416 626449680 558976034 157380562 238726977 911919038 211320644 661509697 909214894 251007531 862755616 364174315 492637297 343852636 744691736 752831670 252910637 223776018 353222465 518409894 873075411 300346034 584776511 2258300 767780147 381616116 170392975 886031301 904180681 754068652 926841792 936728827 544079206 568166916 386468753 856262532 631822391 502325384 784438665 105091625 353136861 159932769 638251101 41693891 455879087 544343676 488458665 255628157 47859811 430266639 826701831 146786942 933157799 52763473 6925247 206041623 352300676 700334896 813308872 554723433 491779773 926814734 682640931 925413307 8675728 306155014 904828293 565056169 692389166 532224626 421954463 735541626 270713860 688723994 612791316 22312723 954759035 539886685 292085176 646061921 213606056 324122095 985407373 942352547 65292748 834415229 81369062 873736612 758935609 295654522 893411743 556491297 868685797 482122768 817815262 55290627 649075181 721130309 560071600 581540156 66935911 658767124 294654594 562560784 344797512 200559310 156381433 200991068 944481693 337236159 318436729 121866911 154945438 793168882 726537497 68826633 687871625 955383408 406454895 648115123 279832949 421906680 619939520 178198117 267005240 845347398 76745177 29953176 19170543 578987912 698522420 504989843 545683436 131494835 256025612 547276683 811951274 563332473 926648340 893308736 972108232 659778701 550344384 547237977 148471158 68383639 48842814 22968242 605366475 130509974 428876307 338484101 939760946 479516941 95165352 241043293 967902328 674294242 551382053 686743087 872515958 667396432 166049400 888789195 518534804 774555838 451466132 428685531 884705109 759415266 944008182 981608034 440886776 554760607 863696096 744668571 324227466 788296985 884833282 217309401 374026328 98192361 924248718 650553625 591416919 285093098 826548300 939411765 890141570 233629972 931438033 995424962 830516224 773411168 279617090 108015999 895002511 478288049 997026964 836934398 754411084 551962059 48797505 455579342 19548810 23409892 288280198 632247238 526298171 614362273 499397014 697447290 635001754 358737414 680440379 251185471 676463511 797722803 506296988 465164965 939947167 467278322 585079685 71530432 269497539 632200384 183926241 818980823 7108656 357867134 681591232 213266104 101334676 25544977 481874289 936474057 742766138 151758458 1196010 111015075 698090724 168376404 908723394 170045591 482465037 348240669 93296858 590338772 69297165 469504586 416352804 360380816 468918797 883444884 121475561 542273118 918754866 813320894 410183553 444164189 456536147 392207844 16285733 125757907 350916007 258388662 779849454 76106289 341042463 259594335 460507584 936342473 231098288 76813227 383851612 224283644 247941245 698405291 48192064 194545627 875265460 516363584 899987097 346254873 507109457 900731694 472924261 543810542 902570774 827759351 908766967 235381747 453170827 591317642 579055612 528598658 597817980 462887554 149461100 210961045 431117642 50933666 127938826 18284321 100094141 440175014 407729100 640763893 272076842 19254149 733192671 808293114 365263338 885356952 872270062 770635552 300042626 655830939 512720863 270884505 264205780 123204752 785392362 665238697 622103982 282486713 325074275 137431827 652117631 893346106 780590732 629601348 805085327 865300670 235065209 948880047 375817519 44902432 850251539 833660007 433752972 869318403 798368821 167372240 779304406 127423076 288869852 181939654 823327521 126861485 90204542 966096354 816815356 898218423 866958574 843935498 530197200 573542168 326958605 441131453 311144738 681142292 20870642 418010980 982610615 30745034 75565603 135817022 543086152 821651856 14098042 493491332 542328476 16741330 225869061 820254884 955213480 470587147 396085870 669644409 725670739 497442619 144879511 972426272 4492143 929634900 579259376 481412795 106457572 137168275 898522424 268481191 543088823 988266619 307953810 711112228 498130221 702642398 48127198 24021866 865376246 748940850 689551452 368935464 189884363 891195498 237232395 714478820 974859691 12777555 579582081 752859442 700070780 915168567 547778037 437733070 818790447 98815898 647460264 340971858 785062943 257967852 241870726 168012256 477589574 455210131 88673811 401131793 815973161 615906145 958855708 961606690 10221754 947932678 482982219 499419422 627571842 459850194 873742868 273964054 367764432 906296717 129272988 238637157 330141633 356542822 530709848 388128555 913426143 860565226 554899610 418736 495814987 597482054 760598834 670510634 558221388 813849226 974389145 641341545 249774673 479958466 147711181 793825857 208437341 589881273 178105114 375008981 163867024 65502781 537603111 496185850 875639924 595529544 493762555 971308554 21724400 404274524 945461120 806963957 513747891 451510707 423567398 494293295 605978741 970543184 122223252 273714163 956177105 914774579 837221929 644416603 511198024 94020066 922936142 276429569 903859728 472631341 403035102 907649202 749563450 500609559 446861767 551491375 734907313 580074414 502034629 169158134 699438513 601005430 586097606 401087937 206171989 768584180 416719802 63010782 857965758 521508996 646193369 531740871 671426236 280581740 460896592 879224881 219529585 689923097 769131919 189045230 986221576 451426476 57159932 278492864 869785479 717398306 823480967 829427423 728961327 12810807 466924959 934911017 244472113 287006794 416391615 500086918 828344831 738013491 335958505 776634836 69604267 381943551 395190424 190359092 696735523 720107429 935900208 731639116 67224846 527804023 879112616 163166870 603559280 273507193 207347329 892830967 507352153 359320150 543727829 345997897 294712609 295926566 536314772 350956686 591264695 793593913 904646770 662247411 805682587 755207698 61000880 802084447 302306590 613920697 334998139 20721075 650155560 105723059 118167479 485966651 581574128 413849218 73492136 821334154 561019709 681429657 574601005 842802242 677598637 850806241 919249838 805431365 490575 765274995 293074378 488050781 915254884 438963668 769891873 380755815 222998837 849348607 551798026 580909676 118579420 155935470 559055476 132405565 89987898 659620498 567453215 682386936 725480060 283217798 54202329 941883035 35730718 441441823 948916564 633266401 711969534 902974952 703089429 349018502 623030114 31182108 326621806 363973444 630242691 189102223 138308592 192725784 631344431 729278103 268024643 984270300 375671164 921389430 718007852 372673601 755930780 839236829 108730124 371746904 556713760 209247527 166059147 54915996 773852792 703020316 371388494 253638872 689394255 521911033 514443144 414863483 194949107 509149152 883983830 390745252 253928430 915261530 689436303 832243245 460268002 843242399 801678952 82640643 166591285 810868468 329856745 695835509 296273544 785399557 151947711 538234802 733980862 47851986 312584194 729573485 821885726 227200805 98837609 209430015 114198743 919039822 536465223 165185229 725214245 339554169 677050941 201936084 294434459 851304798 504940215 158137765 282291972 798202370 282635084 655037807 130407149 644046345 408668427 896158886 25071098 793177637 297648488 138915054 495162163 656991243 705263122 432515485 437738498 380515638 526860590 842192020 301970754 183779505 542361614 493145852 872637728 478552839 734702202 520395794 95954906 148090401 530461788 492373333 901389709 128412419 53124215 166969706 687390563 710280346 963865883 302518873 980952966 133206793 653038020 53224095 974151518 434320217 254883359 667292671 959909783 714975147 813271630 409422432 972486215 106407606 376305472 403357844 604093869 720549401 635826557 367594760 594797753 785320064 143856030 4146658 685988187 645237555 588657214 515773816 950300052 27806410 353508500 635171898 710869075 106569462 418867990 975817901 256696293 154900238 457302085 242319523 18845124 999385762 692679534 792757323 802647508 405440645 604150631 562501255 783363770 424199982 83706495 65618247 539780132 447028300 662167263 364723670 706225984 809180707 909855566 33576353 244371342 102224462 278301065 52604076 697846674 448588294 943166717 413923006 782320858 925299027 162422916 886824529 667060799 368414647 827041633 788924044 680876985 5905105 396565620 507876060 395591903 40457248 636990497 694531273 159702390 129028471 590336124 788054347 793638749 766561304 30681035 136770558 178623782 829897329 550939621 828885572 924519193 987357694 527402987 342599483 984768312 493469346 904825 544911309 369446943 982340399 338644093 813259645 438309276 964009645 134105746 665110338 648245701 152953828 487854620 121539914 790508792 164478014 489868385 494422985 848480509 457500491 788422587 835395907 322277494 27136561 514953092 806827001 939940024 54891742 755264559 758308212 341901156 128217352 313466837 536815897 46539161 274265122 867606237 774034900 193665443 556792246 571062721 991387924 409564780 559278470 658983058 169060041 783862840 563707859 335063953 925271108 29836740 593374601 497417809 743707793 480396164 741036181 647834425 265633673 661602526 188469064 54722691 150903309 422780947 102812707 688699228 16616426 703453455 741673126 525403710 918428087 428417047 500793724 144397692 256011491 567372054 615528957 144551520 854436439 237306673 258884154 766226112 2202080 103040556 147842943 575108387 584990236 555865037 728420676 994886610 252727366 774740276 991302960 257273032 816699836 656740524 918879871 286753410 214248168 365050630 863498037 134757616 783079567 758481882 877426055 1177821 41197451 195242946 707661517 84492155 716042106 866225150 50493425 316895126 626464265 604392498 896285978 317297660 650324283 81922531 199385650 851991604 161616803 719354369 393450593 194647455 407244374 676287391 497734807 193894987 533707762 667925115 670156152 727667286 108952276 872141681 742183883 591594114 599102761 902937073 357737728 931821827 803652595 960176929 485561164 136819180 692004275 431827660 891524158 826081208 106392083 234059533 673350989 96521946 580324023 443122577 966689322 243567857 77373051 644844133 344587964 544828074 864538261 83082228 901619850 21534266 123211047 925255821 153868869 614713572 779153781 545147749 592886798 985052614 611012445 544009364 913459971 288864075 426422267 829931652 913763166 166226360 128586725 896284343 895504144 921885743 338617368 694421670 326873847 323098940 254151879 515435736 855417947 217600157 790526461 64757974 430846410 583430238 904271642 824914017 677236074 928951595 173965571 742662226 984571393 837450000 336700423 67440344 18174 12834228 31589707 118183415 150231738 796416483 113579960 379982557 779087018 289436755 457663687 339184624 465540800 179619421 531013224 255538282 684697326 99705705 22892250 524425335 715954229 713618566 590715560 505624707 554195860 129224753 522975247 69249540 916053297 748320129 435042584 732411923 19827285 349949184 841681149 997119417 567869738 399522655 325404845 438655608 93438563 964822497 298720866 63607394 450507889 640384743 960962604 699938819 232838999 770136921 557679537 902408282 28441300 186947969 793446797 707089543 762242983 824841019 961270254 981242580 256773617 145829984 484610943 686155596 229623377 22385638 282492982 821285562 158367875 906229670 891633009 920645375 48708719 619646232 254581131 580164435 837944770 89133060 127751019 689983313 151077367 304791878 297107914 525016475 137351348 481920565 367698230 484994427 782098018 512092150 364015281 204615512 509638089 143722845 349402488 758807454 130292830 676606736 548785797 525544637 897033800 738974109 232029370 355468344 478524391 210776363 288559163 248560370 236306191 973220846 810053414 543267830 678831870 576139959 540582617 856328996 759176887 457022633 293054821 127839399 582961416 289441467 32200514 227157620 449608271 542483897 770032712 789430632 604850007 80267560 913167627 282845922 948136675 265635386 305870783 143563942 936492398 440054293 942328372 808620235 543577697 311181339 509353016 275061487 138767982 739962969 188796734 784149235 517053063 486604917 452233223 656222576 300337431 278696591 77732478 714868726 635532673 823795020 538966314 980593746 430670968 96659253 720226437 351102063 369894413 798887820 95805981 498323757 897678486 46326175 271373199 702429183 263474316 582466878 366522678 50705018 961880783 148761257 390411588 369015696 140698308 522559635 107067910 385162823 910049634 150537224 35649996 994447271 95184962 662980611 396411395 828994405 291018171 713613829 198646749 434529442 310120157 202856472 745986383 267242051 349172628 856120825 60071665 417580786 76172062 374905051 227108930 997044092 383451296 857211384 9444999 689372463 196790968 165084253 216645352 511784963 862161499 671453814 780040670 666925910 226610267 425079915 804087235 354998342 769446592 538537294 333522440 98405214 97991114 107185575 615180092 135968703 90836530 323232072 10359543 847919737 324366580 679724707 123162047 753124763 213337551 741702181 560348963 67462145 77200511 247106719 38832177 34827818 38638988 85557160 45006675 782834285 639569516 696307434 336773922 225500975 246535615 179275390 89583711 771019416 331196385 237330549 557380063 849467193 271440031 718271991 138356440 78228909 390506519 892009208 576070612 234101210 478317660 410491310 263985165 217480074 361382364 49619201 644915370 806827926 289198708 133089036 468207292 409372357 231247208 364843126 87574212 402187573 896456817 632235961 45312065 415775789 985486371 110511620 752384605 1473973 625186264 198243114 396929617 709335906 276391713 748584318 653962311 484380241 848484347 77138108 788257136 195400483 167868187 185269357 850098624 788303577 131310779 335722640 616238970 494021930 25878664 209876879 197076288 297424373 753457639 404631556 582087577 276669654 944077305 389081210 625425649 860283271 881781418 447731678 255717753 484349175 22918441 32212080 432264590 388718591 886001224 22991851 534683007 536791133 715152611 150299656 579398821 831679020 909247122 199526477 946035246 722873262 85911888 628849231 365630683 443861403 819001129 511185746 841126853 668062663 526290686 671440896 607037336 370151807 142258108 926833953 677316796 273488005 572284904 579117379 185825517 883389774 578475373 64839000 842635809 7330621 180928421 602244289 14497216 523918645 57897372 432039200 327405394 81046264 702265276 611716369 973301802 744073741 741418580 142744700 128016486 757275682 379000783 45504380 724919152 66780746 128941423 510538727 323003024 499593358 219798053 28264446 707014561 711958924 679167489 871166550 43184582 242328012 39566929 427036275 552166781 919183636 850865423 519812378 813829596 605903671 537042737 162112084 79548078 742969133 41524610 125359145 314898286 138412159 156311120 429743978 772970127 440201505 169398632 435180794 264936154 28938653 864285375 103964501 730410044 235074541 85452482 815256059 285362042 957731669 815596497 171227775 19047411 293169732 904811294 252725995 58905744 390324022 460845970 43662471 858410620 659336841 36659334 532469880 727213939 513987164 145203598 82022487 339218346 226529141 68330900 232065324 815891935 22359271 842488593 253574272 501220795 357546807 611382414 462093485 957573042 998656375 995439162 979576668 888820593 77080730 515367363 770376290 565140133 158373427 238361821 264957757 872628215 836667523 269227744 71848714 369671020 779091403 785162303 494292724 777651656 684960224 485077301 264976240 334604500 455074852 95434033 79090673 878632384 616069052 678548062 146708821 584472896 208633492 432804873 582554233 90998394 240846887 594944860 487657659 477177602 763903607 198321383 654902377 295468027 436326151 834433127 36989454 973369954 24247937 650987078 540271607 542659013 335732070 836211330 110270381 268701210 307829583 370275332 976233011 521604164 148953383 853679080 279238036 882422936 172579898 247665099 149728562 146053130 445117324 480723876 605391266 589343912 203658326 971941215 332500075 535391390 404247216 844240452 941927821 107714668 970516389 437567918 550230 816365126 150936517 2868312 137859136 802407216 10584756 116697378 833806579 211863871 156886198 360588063 365800521 215956844 440282278 209317842 474937172 346222052 51592033 313288363 351751437 282661578 127958267 276967033 207248146 845468539 50383708 521748051 263459964 582683886 580844220 369348381 17760785 246819178 199506637 213758628 465265568 582543242 656670151 319340825 802382412 900263527 337013239 410694183 23908461 495952337 665472050 459594411 442782493 608130864 379422230 32632903 721730394 988335809 641232772 495018852 383406857 518213213 586202611 816203083 62714343 520487806 632698568 706132598 940426432 656890957 569706580 909652125 964461304 882116960 7119782 946489798 127191027 637359792 922563300 853805362 294459146 385268974 572898825 961848396 606671974 234726920 876803386 266515922 834550683 773910058 226106010 174581245 400265386 134414035 947277911 979891034 278273611 997335867 562280848 324190451 942395619 586279893 506349139 161535769 318408087 63351340 861902274 69103129 417536334 923636626 473404722 307846979 850413136 321506933 441369135 256988306 811169368 686956336 579248606 817242417 280860422 32963384 205588950 597564946 641826416 798388242 618443689 827582842 298239400 458131925 25183993 565287388 832459964 676109575 600960219 990563615 419590505 712242055 323335314 448715629 845069941 332262044 911984790 228866185 337233776 423971262 615095476 945462223 451132708 791203999 831089841 934016864 928335781 754119813 881749984 370167675 387344263 841767509 822435413 899643359 479905692 224656403 453595297 741739397 558428099 397649498 42965970 145553162 883754452 95521721 962918425 759580402 375291676 508824577 142790183 60078805 68196836 852335500 27653463 979652968 799945288 101673871 859706861 475198696 766486385 308305834 62150238 285561943 332116685 393335753 843316059 597315301 822732331 632582616 55374574 439616567 61114458 805445767 403997129 577479191 766048026 435925074 814488134 318527850 58413733 516283530 119239026 958584634 870234912 203810235 775594481 58761871 848754976 621057448 518417792 987997451 577341168 142173996 719730634 170924094 44111651 179842355 336500050 145614425 814980529 686277000 18985756 645872706 624619271 26565567 228164304 392241676 592991245 355344443 744844864 174749176 650093391 524520751 667570648 468143939 56964682 187441321 820979177 978255688 3369281 925822344 845837918 700460201 662307600 306244809 35360778 118509814 485932557 957523786 881145103 826496666 337140322 313894496 612460754 420774570 585985020 36764174 875862544 820053865 588332488 370580737 31235721 254421527 855238770 449916000 527597907 365483420 177039999 780069343 9107818 90757653 510691457 913031587 558461101 8138222 451397945 540452480 513506272 706976908 577730950 223703194 336912067 816450776 762388575 50388152 981310135 623922223 281487293 776860851 498148712 793269433 924808477 62570706 222348801 725527531 632245267 850241405 243452374 395330474 771292528 857754681 226118000 722239002 80400170 132048786 177315472 16337476 20654981 299860525 508688781 119348232 981557532 445748543 334223179 31894411 306743242 800133189 164718694 48895187 227168606 765520097 179409346 654386321 388386391 333368399 266196186 445408390 997531111 268565101 8757040 858813215 701295893 736255160 909142786 261020731 728601901 661164228 894393006 965849661 880818663 264171774 905195463 861983283 694191671 963920107 283359865 436067452 301597820 185644794 873115028 521181689 522595465 250183968 373802755 483175548 259721419 476042973 217575162 568090267 351778635 313676742 207183557 723478031 529355297 782941691 387304671 105206066 717150017 331651827 997940022 855486461 120788781 850307984 499874099 657002366 339805312 819706739 218868407 792688313 411524379 195330437 697061243 160099112 840319213 769521394 706450642 388670926 266613468 311946144 217394891 268955875 662210749 916984608 45974137 407333870 758355703 883809615 565736080 250950609 13166533 522063742 223829002 229690093 817096973 93465813 342049184 349522039 388638593 855116227 836405146 101806535 67142319 410857372 759380131 890523598 410255406 685699006 836658168 128446470 311392333 592904880 758423490 561359345 572579450 418291407 857039298 792969374 839176219 872402487 226868419 322485403 903390891 24066476 705413149 566431600 541739931 180919056 842064609 949856456 971390320 879284165 898381253 411699853 200166882 258001212 866494334 353742038 914028340 560641505 273021627 504628925 913815649 100815425 941683079 367109253 860659120 943052127 561530000 124780320 217803479 530351153 229067683 257157402 28904708 962862446 557573821 118587103 215880240 824107442 606681522 587013567 791066845 543404669 69282483 123801653 759003201 325725851 362775159 72525264 905331392 886609707 375732719 525981664 921873965 860598536 210122829 573720376 617016238 151937614 830349323 366480167 729961562 662186794 609617879 906834535 390422426 956770270 659520945 595458713 51887611 390964648 525433067 674001751 695409089 398798217 95660392 75891029 633465644 786267623 933418329 201208112 729026432 289627584 471011063 947570155 173127202 901509575 222339391 739418853 628707352 41629438 411618785 880249387 993825447 73789315 97412811 991081642 522607235 149036371 159282088 60109816 379770116 120687547 590863092 710930320 639143368 270792153 595960791 285982442 397911107 544749658 604847055 824054507 15994062 264423178 744896868 717328055 747762125 320816645 439093628 341032336 154288220 705195358 638644577 678312029 631458370 64070112 433190118 363019408 846359262 673483265 710722698 470664650 148872845 143173188 843469193 444853288 475789937 805409377 420740827 951781863 371369606 698212929 702353968 946178540 458995015 125231319 187802803 253152074 547917931 375725760 4197398 263694557 791611813 9185848 346842357 453643072 733806685 118241072 438399917 838041476 142736377 131649745 76941356 580500605 493886590 804826393 900726543 662357144 145123211 420827696 395383145 717114214 162771433 279413982 494974635 813212410 459510793 537333757 797808344 550603336 408015584 375115688 26288206 502294625 947218057 247573882 393712282 41863750 214267307 655404482 645682391 843263297 774930970 203730734 157446322 639241167 32126218 300518105 205126803 995184435 292115337 971116666 401899843 929460072 608279161 844425841 420232326 306820031 511562538 785560764 329887934 449525276 677024130 410759832 770634220 816479570 347811068 879676940 39210811 336445454 740118522 336386119 123812111 980878714 89547643 908858137 949117280 284130736 569014123 462219822 462023159 154009226 708381684 511264995 473422382 561274979 395346864 63212190 458534804 680485244 102774384 107598243 580340682 931251379 748806827 765487231 951907744 849856840 418549822 407479279 32910494 315630234 67640885 349139588 887785118 492832945 541161118 476974682 542170764 763592324 79026875 908105009 385689405 443309521 707906999 272433817 872790504 256199579 88793379 55684814 882691143 548255686 183459776 504281770 161518004 694419931 387587765 51915837 227139315 533853239 3872339 30760053 628844094 917863065 949051570 882672177 885025439 143118254 195201098 761440348 546092689 72045750 939782330 943386889 592919916 358111494 843655003 889967700 278484835 445403140 806078055 853234870 762476098 327525728 945046054 949459667 638149451 569753733 442923990 645966687 363222122 473873601 301191964 605177706 716068623 202838804 459068976 516786122 976019498 132126640 69589455 173342864 432215983 771460489 816434817 293010662 72915894 46140672 92509118 598258803 205726174 716161286 653642061 688968667 27520540 63202454 822743461 366312316 711399643 791828273 641384988 628371880 455973323 10437924 703766162 119825842 572755064 555240837 987199073 905688333 465713916 882863932 762256308 416456747 439678512 685401795 392522588 567346029 545267594 755349471 474751822 550359599 161016965 140354612 908282808 724948455 181074469 666994549 211222428 304087574 866274830 156775954 389381221 385717706 368731184 872060442 142153729 747161097 859895118 18303709 970797162 808426365 234824007 751663365 756699414 637240157 438008742 21373668 606133889 36943969 864912096 331154028 139752696 101766036 105526041 804017551 246438722 823682448 133236576 384675973 241611453 503584502 98257724 892998507 338735080 70346671 419973941 92667915 697237149 462482368 877708412 353645618 649961156 239974369 54097723 926760318 484629912 893884386 655012358 519047114 517675879 148120961 415250947 590882552 730308211 179090894 248848046 574572956 984910108 249341312 401301566 249635951 657687813 201727591 499094984 493709993 844854916 908773199 764971109 50312242 792858025 293174743 870606369 244329870 31991875 495711547 885055748 585955040 891329186 247556745 397668700 359373506 859938783 173667401 88680872 611966104 405040019 287416267 479436573 940234885 71348714 598389413 697480470 668216219 255681617 123144647 514514557 942964321 77905393 826922404 151501275 143644932 356593310 433663979 688442604 477580763 442553923 171896130 277751754 907814575 543570246 10271932 181647945 478906520 227482637 922702688 915743511 164568751 563669238 136778538 87067282 833295003 889043871 844046022 240819017 899006267 489063857 560982507 966535329 269107202 247829797 355589195 63884653 655605102 328894505 230702466 419521785 80174404 690508559 751221945 289702522 841815762 217540273 311816617 229968842 686171094 817822915 784140369 939980809 225538967 737834947 216502862 134867621 745622552 458180776 603529701 593863691 911355559 224026119 735769775 897444262 901943631 506572591 241902611 279402294 386513272 935230827 400628025 459430628 511961228 786033005 362951257 703920250 956638742 657671041 381733749 951405094 494218006 328603933 844922014 926056387 111239360 756377561 681896073 899009305 213715440 810704183 747461643 201523455 678803491 313666245 72206652 743578006 326420016 446768154 886036407 431139607 929498141 426508455 908115989 950612823 487236148 228204521 99792147 696292035 952666557 11170183 572954655 1579516 953162501 569460828 733143890 459552467 400103773 882269600 614027702 564129658 84168801 512865743 311655624 495386998 267807369 505472783 216782142 599191219 753374126 783290645 69604819 868031859 235044395 820933350 741383283 145404918 454661323 280580310 217215702 38528111 587702049 989817576 763157945 328886568 446304901 837090480 139351366 401310719 923547530 25479574 486329877 581885754 617787456 382815130 382358024 475168332 349386878 647325933 182093238 203359198 1232615 259020975 974985241 741967982 269112441 236960273 703706950 609784109 595127960 167112050 70550698 126891512 52887515 704723489 28995611 558095259 371953354 539961276 396286229 648044134 904727981 741194681 839213537 279072950 162569863 966482335 756515251 484956029 182748974 774428338 380259640 704281187 316225828 800479461 535947531 689904775 847284391 67008481 257060851 778348032 966089317 403750672 966404303 147184947 778705572 247822465 787906335 138237446 147266196 682956315 996559137 151772522 135128766 499853589 24075905 882134980 473279952 222263623 901155117 499325024 951738203 832803177 527913714 60923416 200360077 817428742 164872106 291227522 536464468 390837330 685255123 109310387 725229532 16227606 965467434 927978929 336117078 558744849 511161650 290570318 601620652 335446657 321495958 413725746 788975910 545347360 732127795 795030249 569648637 930337872 283503687 86232557 613491352 630600842 790258645 946883188 166112878 866241902 481271109 96998815 339834375 237750835 316587325 147519730 34651617 130876647 446378922 554932195 99515332 316734068 610734247 870794039 210260958 532201148 383100825 170119874 84621776 70254547 330037333 688952479 177516960 48707116 56381214 659998108 814817826 174532844 579484260 916868571 615820486 498858847 538766488 338877871 351133504 833449616 164055504 817870275 727631179 975115565 806953419 741013374 865451939 139804687 27498590 903265887 935258263 412587335 333633826 701177271 352143771 247043326 250347929 387359140 363588187 229385825 779358279 877068379 693626833 291803074 303838132 745809682 861284383 209978503 966016975 167780837 189225750 237282519 330572049 682225853 480400581 580078767 248114119 368360047 951178069 608910856 830721386 225888536 118890533 723462855 749078041 550172491 767578611 513634698 599520978 931403065 781922233 766541129 50659101 341160838 890386258 680666871 518604940 442106746 675596184 573920041 28697268 199594636 586280238 603940181 103628976 960053929 884481513 613072421 421882838 454462207 726237696 753326639 203357430 356038964 723963792 283726024 965397700 691933009 82136992 834104008 233149261 875355735 736171587 570620493 25038683 355437581 539811916 315582057 820673230 981934210 437215758 466513935 662348923 951312604 491763985 979721362 789505990 695641878 440719799 651036419 303168091 904490195 997549033 868122968 321643289 776302862 467957459 657777305 570360012 272706743 768373914 252025945 171772635 756881326 778409882 859206307 476145550 584298022 700448216 498472133 490584537 947855538 806364686 304394037 621346679 205412058 767884415 928059047 563377531 176883057 819838626 709249639 375037437 80687991 411577629 44416952 338176146 159630202 995353140 768708002 437177003 448729325 287301039 940216511 436675335 223186447 832996841 197513216 418135036 416493531 177141138 9007212 169290268 149588903 270538635 597564291 533192856 555111264 312495010 58094355 661088606 570244802 577109575 773415569 898974252 160821160 79167176 454579198 44442561 276015680 113925822 305007661 830827141 683557489 419237570 431162597 723936442 607207974 450029121 285366508 748088686 266331236 430225997 209075766 229325205 957655539 539236373 400689287 600675428 759313455 191600385 40593951 207360256 683045767 556043332 482942124 394678370 349997025 829508467 688459568 656934497 214611408 450086471 610219777 682490831 284054349 614727601 751218023 415929201 322494103 273298259 817744958 817661054 558109505 392451447 411400241 160592216 973191893 270866998 275496525 793646548 701167854 357681453 896046648 147619420 630900329 15589306 109717665 572899583 364952067 324722735 279270604 322116827 90077027 33325710 334815390 208092536 661405309 237676706 919283056 966249390 168045919 559000567 470649309 142506818 795188457 685940130 766963001 894002548 428425285 59219297 759062412 876752785 91968423 153258187 365669575 695995711 897832877 170362171 658524458 354925382 203428599 810794472 733971216 899844284 311740594 642306719 318703696 237338347 153090671 868747704 774025806 633713461 128485209 763227798 367545646 593814783 260029881 527986708 659793095 166717005 763362491 373189910 660813896 766375138 721287695 687867320 381462234 721098331 587309575 246906877 352448294 631088520 676526912 86139806 346419413 882669085 66596811 977165891 646596694 6160633 204773565 606748286 90383198 912955416 522590569 502085273 802351011 377465754 544378330 965206023 557426828 103529362 89554991 875992472 17566153 165852389 825994123 284272083 372064624 168957238 216215801 291477103 538562635 525059191 995159091 739901087 166872925 17707037 429606400 317017523 625413635 430562867 699422284 150378896 403378038 953781574 1665380 486484916 81353282 713204108 941544979 471741965 574245717 702238456 401650603 808495036 633981134 70384289 84455866 757179366 656329812 32160513 450603560 35001678 648090259 595585232 472959872 461715734 780082678 152124501 5158128 666876830 824867690 338824349 464814176 570683349 136793711 827523181 654348250 648544587 45178332 418076223 870615767 878173047 473419318 130446344 731262153 623678505 836032348 560159164 693360249 113052732 350892639 102813900 570581430 864351357 373803512 630499759 161629449 773565550 930664082 879892224 746666910 240670073 536310613 77300018 777962766 10369609 959372521 169226575 850800142 972174063 510097858 343267499 498923830 680179286 623683111 362152641 149898211 278666 20138329 624730069 352033956 826446403 557275278 776475540 875796636 827355504 72154672 12105112 450648623 176160147 550298272 490108056 73851417 841032217 492897494 851271143 412687419 12770639 587092396 451634146 780113093 458036783 981882901 59238732 715761150 512567837 552589761 99687757 303675954 577071224 849265193 9079444 687732634 716848647 427016784 180516951 720068138 773996231 837098338 904648058 250831503 273471019 255015299 165509955 576484605 818549034 348546803 427871356 561637012 840422252 854123227 44626132 124421656 337306867 179154114 113762595 385532113 657193469 850949599 718751157 151855751 740668786 683404691 671479315 443935140 592006315 336729253 846048399 539955971 294775624 453532576 77552973 625825325 800551758 219502651 520623822 551632865 52047987 909287930 979629694 478831717 772384955 930881168 345523909 835328584 347235737 713484935 466546466 995883116 168401683 165969293 323020650 255505031 946294476 423790110 603564672 606462860 165165754 72969670 972613787 318152214 245200607 273439440 695670295 349990712 878926627 261848029 335966165 520267007 92571243 104510782 427305799 121763959 280954241 898885766 267605992 83784085 772188275 172143126 83125792 219346113 804480940 840829422 265276516 150904573 716894022 206417408 81192002 233868282 247529826 144029226 166553216 924835128 124931844 594578287 444365324 694002425 103729753 925224843 630322887 708182223 239798609 353927580 613934991 996736286 134347148 127261261 348036676 998358550 107697014 894540730 784536840 330825814 905283600 535255407 142083099 560222206 962081926 5610651 839942276 298902968 366618637 474245804 151051189 778911460 796286123 706883965 379422469 65026625 705606341 161389330 571460209 69053554 947437949 177559121 740305792 160393430 325639199 369930186 22317162 436161082 961697919 977765012 455952423 896908047 199156196 666811443 761816845 245043398 323630800 532855917 587902093 937185583 228643839 462771073 930688134 331806753 169354221 879358498 206704821 782626668 729084789 475392691 347539403 351811261 54781478 7654782 405550031 3437817 310616388 541598395 580775677 219695181 463045613 91102556 208272423 611296485 737391812 120794399 252836259 775768040 590084895 671648773 935770687 749867383 43423512 769642329 820028133 375501952 297512014 662776807 171853789 172638829 482207569 536552894 844122889 788894637 189082622 176776629 876075504 196916852 969045591 423240362 896566145 32759666 435455252 298403249 652400163 499064023 178045361 518066721 735397201 824352553 934418019 114873143 402158932 370754125 907294549 805939768 260202505 369314942 870595510 680972355 555976648 289463223 251420342 680262395 613681974 847088262 321496956 515377635 913221831 252698728 757013142 867370997 485227490 371783919 541328352 716121685 539835186 775005729 104729342 392562536 933234958 702393572 295794939 80293444 457592079 761663649 331120442 73634505 859863790 961573899 616292060 554639719 885864205 804188082 348698772 672247205 408110350 146230475 78017726 974999919 199658338 184929889 990728407 330318029 508949331 987582020 253238772 366592787 284493374 631024320 148346561 57863579 429879423 922923797 360987221 637935521 898192330 928004218 593344141 491110082 131299518 82490529 128888406 740627029 750024126 759433869 513620405 319667688 841062124 145535277 153282380 727638031 576465859 542446877 726648196 478488829 107618996 425101301 950444654 419048950 597611989 978267016 891751349 981527380 46451023 324443599 708575151 926282011 355994523 683950932 827489962 631798989 742753738 602440212 626290052 154497551 648501986 920012916 59767109 781126340 303516492 406115402 29679794 624054509 64274092 304154110 378884062 489250597 111820041 861927161 43226375 13344494 201065212 682851104 172573877 944304738 199644015 188553065 91810244 819466091 8444126 581225836 630925262 732763945 788598895 244363299 806401203 90469334 473100785 571236255 49002884 366466205 593310293 916451988 513194170 782492451 682628845 40611209 328932455 715063903 347836555 551442874 713967063 601563155 134227482 479979551 63847672 18363296 282584151 7083406 256400352 609848704 823431542 287782594 252481085 695479054 419591404 807315383 738595640 867851878 353643140 464512329 899177641 374269123 137428632 849170456 880085375 749554080 363581667 384929479 676095896 962028568 720908903 918886616 137962251 742747636 253742693 157226292 318398026 622800675 782186733 687432571 247756118 706554668 154190241 52578453 633588457 876857841 376905671 658346725 337786677 174441806 473779158 42166569 745248783 33937246 830179585 239395608 488972865 237793675 201265447 703223728 753575105 724108568 932958996 763348400 332499221 820829646 104984171 57354386 360847279 810099712 172932661 154477862 281869278 449331759 453556321 96773904 765156981 357089620 256158921 115534277 616559963 843410318 569330897 489831221 972175948 557770859 468371417 51031312 163981304 484830506 283499839 64433404 801785146 836621073 711577568 793048015 506522459 152992155 470765190 628580049 166836618 829536548 24922096 113664397 535831133 390055294 677514191 463128297 766526909 867942515 549406201 801539691 648628098 898755231 706278118 878639676 985050774 90169090 787444792 318817221 548785166 495815826 384815198 137054327 451754635 251883939 877722362 189812528 244361476 331416967 27931182 836897993 947760707 658719445 465949873 676533232 354401873 228216703 602597361 23041704 646213494 367864711 266569089 39215415 949243760 578450176 264724106 423708811 21600350 477535003 958552058 715580885 731356731 289150182 591779313 572333257 800852402 398694616 54242796 76838336 388079313 97427084 508150740 913554808 166484162 80809023 4895830 126401910 410420677 693780153 48575338 690988472 957474406 433708439 653561687 584174574 969052825 699260951 210591068 462459286 676907034 740591367 857426153 939640033 58032228 26690284 935028987 5722356 889858037 248659666 648064900 111354082 658739552 75945017 667554216 25033910 179431468 685624785 721817619 385430755 790144246 45600705 458415224 107736366 587025229 901409094 815589279 391261669 438157036 286512767 997304514 465457521 332803314 830462200 226167005 279571155 18134898 970412828 507343485 394545803 995716808 122564454 936275488 530936117 853925344 922694530 153397721 277416030 165089268 243028111 967614547 598591955 742480937 322775438 135899683 65210809 965244091 576630488 742945225 118959857 56122555 644256588 790453502 301988871 174975640 795108866 321556106 945693207 532302852 652674153 882924218 990301948 961162658 661426818 818730284 445178401 524255922 752209873 624591704 203067779 611388869 55161157 972470652 122723759 187942470 961177373 483294124 215252938 88893413 381002056 945720215 350929829 380894438 961551294 283691238 986986240 897026359 499328919 425555353 882278571 199472442 699035531 947749350 44301785 679309409 443596534 592351573 13316255 933649405 304776784 204165663 181212164 962680467 382518312 783969646 81534945 385088441 255550710 844072573 577985291 933063388 203781769 12350434 249930327 765899272 964874067 978548542 414573745 292494374 406352238 555653071 522470114 207417356 62199526 267667557 611751964 327325065 335078823 199471258 155085817 368724251 455571967 791064078 856516914 104086660 349522532 296147758 143961373 69010512 383141907 295966441 25385527 885228033 302372068 852206790 623656564 108582202 888348758 60357710 119917205 205565543 256144842 373340064 280100281 981604187 406864614 492594323 928297698 284447514 525204136 374917447 510705378 645045790 502807727 33009442 418920444 506844200 59412943 116545079 325317667 855045206 937639769 848164215 412278447 420211098 433238887 304013794 533492944 678773816 110589810 740540897 114124616 776229248 752755357 99231178 639809493 543703929 65354022 372590006 653095121 678416888 683031444 905642537 241671836 307672106 545819549 830000233 678899139 187956719 110412676 260955356 242771599 702398661 552446143 356344447 328191037 715639743 386715279 993954722 336486488 314648131 898608294 934282055 582501314 987431117 832684850 930064430 142168805 559662002 555153164 863833349 504695420 853949895 31569612 970483417 853134416 334326249 123675361 731484596 844397262 40282244 32093059 386432568 770378000 505760203 367395052 233035499 814862786 980744182 979622 285827524 124544700 724877205 199021930 88618768 673018702 797482822 579158034 885079970 218227230 844689810 312621257 53808647 988431782 105750080 785243851 370865210 608531349 461881861 706263103 183885391 874325520 749067536 345095601 896153843 407183345 317098419 260621487 155290231 528522031 315027315 611171805 902644489 816411246 443727066 867890440 844378080 720058768 632644005 240122184 480443263 456288384 601887354 286874012 304270766 661587815 633459284 65178093 73432364 24321240 174084412 67442940 42186047 847874337 480678767 765381383 237649082 792213122 649773671 227688585 43362729 393398810 707167694 752384878 50697153 513864154 37901669 907795594 570459616 38276279 102325397 477742579 692462445 653127336 146646405 459084970 355981664 650930037 557347829 110275502 121900618 599318492 388737515 829326653 148608662 895603227 253485209 899681456 351932097 828531777 900431315 756408393 486617234 91987906 634669236 791141934 17205031 769798508 840212297 341840237 406382885 642357664 392409684 227425579 66770790 695689946 461857476 249130548 231146360 612849142 510071266 995001045 318478749 579769681 413156115 528570410 386418144 858566246 288303051 292277750 770138122 765711463 891517678 246629476 191074471 150592154 361796699 853754245 921913704 592831166 291715888 120425701 724983747 616997195 152675238 589241977 670451692 898236369 923550540 342564898 412832070 700809013 236476023 629045347 804160531 78327602 722400176 982274764 822098053 114748502 952314280 362565220 511990672 716726687 301691405 866924562 75721526 543121496 997215891 883898560 29510559 418084697 311885580 170955392 84011210 841447492 571725331 789781003 226906906 361955426 959080400 797525885 966585624 382710052 358112321 88158369 555888401 919623228 204670779 377964728 421178241 55467872 240509979 173036288 616807811 343640498 634255524 119607112 722250535 523492165 713696844 952317228 861576511 963474288 567110464 962921580 385727513 153002269 728153038 74512449 740352046 215852766 125865202 951697708 96741706 376036272 383014240 778478569 237076650 191684820 684044424 502398082 860394975 159134253 345853237 210531622 73535217 453098511 465766657 921105763 961877689 916908848 67926553 255682552 639591384 452571637 609870526 429547892 522695507 830795108 122498967 641702273 789495652 641132868 565482050 998621346 105728583 549757210 251180081 449777714 614519127 610774604 289791078 413047577 284081138 484932231 643166240 143387916 487588276 170359613 968243268 437286044 454782954 705189138 525042683 703984965 660206096 520919966 228470848 402488774 412831298 868495657 157932999 974392668 300969520 500596719 268365778 248994669 538277269 907752184 324384684 898985748 942826158 264065262 54056916 221219777 503483960 310121689 990657225 395851645 521887411 516201194 37149212 27437574 772685327 786679410 688872276 357936755 847623281 269142537 528302963 641187480 835071787 113581326 991528557 967787860 88203418 522902328 308022683 159954933 503595471 140302613 380659120 497730062 531192283 447078005 686001233 614551363 235628636 572850109 241044052 452875747 326215678 895784814 286718792 756191799 738383173 63980693 201445142 669733945 57631440 766622658 389816335 552043771 525751681 919649328 431638862 668556082 772239449 242783408 375038737 985122142 255895986 810863168 34259788 536507319 149457900 659855021 528657721 686616340 860575256 531733361 142230369 501192500 476074634 32267819 406448131 159247662 359459482 851180922 344214390 517332806 64552355 402390237 975655798 663569568 531666886 562815253 600544188 226681238 509299862 980804036 393219574 845448144 513036595 86148703 153015827 746025367 95609088 952507261 738439488 736542993 166712454 996410705 693279370 779852897 639796016 260143236 352343813 230632923 52149956 250178359 423762976 685039548 979997992 634285654 65169029 897020085 350513149 368159476 414736677 831989780 572992680 694745653 661039912 182116283 770284649 357866677 491515109 290308770 800486770 513500985 884612808 629031354 283528507 562547157 154281911 233617485 9126069 632053053 154100129 279542904 321592108 874573076 335024047 416959603 249739491 593081277 708558323 955041721 554085054 357948366 474343145 596580392 816456542 547093324 413620893 304066302 705344690 300644441 83322278 95617763 878935890 727763515 205906424 969543432 187525642 240197124 754551972 704866413 449204949 906094287 756688453 96500830 512775845 315798638 583264996 676169328 992324369 10052125 959648657 969754948 413852148 268654641 940138329 533315255 977788727 312207583 594955033 357446519 784820095 799111430 585321427 517067088 295299561 391059724 190220546 735142442 578475719 733151236 147255888 503088301 394699047 578096021 406444607 369762872 106002212 533571797 989104078 660571240 770606962 480819591 548241213 605113867 891666341 377829085 796002596 702875562 160886160 990044782 518228835 599162911 609489201 178790549 589950200 442524893 596573964 291243184 613597715 65370877 211251408 396352922 406523360 357175100 468880139 123670325 776181215 641433882 660116459 265535361 870792357 58635868 585504182 23210253 234033472 300303948 439916143 789234601 884013440 696950712 183930004 763493937 527222334 261543845 148930164 710009813 212894213 685716650 876200906 531181506 225260074 359382174 946675092 496355365 171783109 496519615 643839604 463642124 364595077 480630573 714296325 568066009 594436950 376140322 994873791 381096871 594908715 598852752 850611778 380513059 531162827 170816780 931060517 521237627 31414463 252581311 174289882 113476544 80553039 658594240 318158047 533654515 76559783 189213665 191097333 744940373 881714862 897688375 127443115 59660740 903066893 626722200 130322007 280684428 352701656 196474271 607122344 540992711 305276970 743651369 525298639 801643404 975106420 11251967 878956147 95388101 514514802 672538540 121703808 571188376 493776659 353323491 596961956 915818231 835939795 864952510 228398541 301429572 592872359 565917294 774767912 401038471 680823804 207534506 704857715 547385962 354283938 68177872 667131547 11803452 673354841 743252724 483199970 200047120 946803501 706431858 759449391 737029439 546416353 762337466 400853832 881623884 149073836 704139790 120348559 444237575 933418016 720399208 941039299 701064076 690761651 150340138 997955899 917980126 5641192 698102082 863567592 563376167 855659691 168738029 629779459 198072957 568592419 287814314 961569157 677589272 923337671 38555338 8222780 888149415 194828178 387652151 340824370 852040607 29305841 693076769 206124557 498864084 151373765 362333138 254381616 532200909 114295868 914296871 991779571 220779678 864149696 934509745 274479107 714920159 560221708 983897326 917581479 962986833 265434184 724403797 618042163 576872326 526227154 261193737 142573613 814633361 179828756 212497124 81763327 137427642 407824777 516706288 879511305 954690914 641724012 415526473 189131137 624525822 114850964 918573900 997083219 922245246 377428795 486348960 179632663 392081859 532660104 428906718 704956441 75321244 401626994 846019912 442543373 370948556 780307220 544220115 279857587 607052703 414896260 352756493 161488902 208641980 333312601 13506599 662204636 154827413 388959528 942578685 296067146 729849969 859367210 324267664 624908210 108785740 31896481 74834022 181492233 606436237 332125034 780984175 987274191 389492088 450701078 889061558 95919647 347191774 728361338 827402078 849119829 166041496 919918880 984781900 281338168 814890345 75043343 584063069 880179998 684768701 798811304 97841891 346593228 962528679 741408650 357968692 647286132 913136259 160097194 84780357 367058288 237839984 597387322 641111182 306508418 160110092 795703636 461370593 74963970 510257966 653256011 901651763 968467055 254460473 782400789 264054627 495805258 624928806 67379987 199117502 654427906 109743906 807802001 606578822 216866987 730215981 739457607 219538025 5634937 291657971 862033000 791476141 589722757 613959524 124175355 277364315 98276591 139020757 770564793 31030836 773625775 19695222 26886991 230082872 720373275 405979254 812205902 902320037 27092124 697908516 184077072 658003557 996152085 891098183 963094937 736378790 217973145 82644217 184864717 59705946 224124851 970708199 113819104 813050235 345703327 659348770 270488806 55181565 743379740 382619879 966335664 380298036 100259656 859742384 962461263 776925825 629197717 406865526 783149148 21900365 418239820 134518927 783279309 334194142 865356307 68668624 587841334 328102173 196923056 780483040 381276591 547156673 559022218 41636399 127762121 985675628 941937268 173189299 116656658 433137632 272453841 318986363 727326010 829037167 952116277 300087402 734129587 530321429 932175225 681546287 499599454 761374224 688963068 230702912 768979640 868208889 791035753 982296464 649298822 381582735 842230523 538035827 140884551 704827557 68259159 41226409 141562165 69011821 24157928 19879387 763646529 329042089 127754811 337897799 692930726 470078603 876604485 68387737 403405046 886122033 282723269 768579565 302568851 569509164 987595860 164636234 34818199 840202182 229206576 671217347 200208640 364822528 913449650 135560780 565622823 415587879 377781712 15949573 47625934 819036655 233087136 847053228 766349041 708366348 396092319 852326621 510973630 742851715 334736597 158601029 602368149 702728621 749455111 997063076 403156317 466492387 997803505 651602996 880548940 292537950 47440835 211859066 705347803 574114364 198173594 875768384 928715683 429171356 149625639 162973756 270830709 932202308 675407674 177422569 356029287 894030079 979824055 914723406 127989281 734787450 786335954 423686838 921977598 111614774 741137796 413228309 219398173 727081833 711091134 24358202 107883265 870235067 345137714 266550194 397958390 478621457 755740651 132083212 989578252 306081651 872985987 365200142 980579450 33353507 74515772 38601477 957680135 861853697 219850621 435839056 704669965 860561244 221180047 135210886 547680650 290704022 89711189 172874659 249417450 858267012 377145711 854244639 174380533 221173933 683081934 625691306 676788993 172378503 837054799 765943571 890192675 836764635 95937277 346321498 589116628 337100334 370779570 844299857 991468445 682471061 165646661 516371345 727427845 788357887 508165641 366098872 119624024 985786613 877246999 119745446 583826722 953421933 16256638 809506369 513460189 257152940 720848458 503582842 543885934 650270109 692489942 995350214 892971330 27895795 281487135 630853636 279113813 826124879 261219145 929774786 183371586 139349781 994338289 23732174 685227952 914595304 633554772 169624907 50482731 914628260 686581563 700266067 790650562 930164229 858913635 28450855 445842342 18724388 447626304 784445562 859538165 359790226 602302406 17119765 915946374 487464389 632710425 713893437 922900765 357806082 115448448 592461947 988371903 454474008 717817221 560966964 10952390 731853426 891741652 989003646 806037895 581063630 726133853 765375487 475273051 877599877 986958268 115874913 315351939 417618663 520830077 126385256 86677673 89341274 74985796 772789874 415467066 631072830 113962969 357157187 336253260 665331310 885857846 492511444 163710199 245000087 426593526 537202935 727286133 728262592 176002389 872543805 556798799 550139488 249961745 407985015 994124561 566406735 864295231 176394211 162952509 723731478 27800525 372134952 466960271 687343264 660706162 965564742 784450440 74998152 754137927 644346322 243086285 136588829 109722909 85244741 706414364 876201327 388991175 277956390 410538392 810224807 309668032 709839255 7154663 207527063 447887625 270946285 795933769 986990147 694913440 259515570 290937199 41176332 438786116 569778821 33085786 945669286 793615389 586309693 592640316 623465903 998583454 898431243 154613962 616892048 328379830 113000388 486170006 269177877 528521143 342822222 685595552 232877498 399053200 751479989 128505167 293906851 750023135 527231021 294635507 907065023 76953416 353298098 991892704 275039505 610716484 457724955 971840404 220173623 76793577 757025402 540627939 983292161 715128575 655624984 348942970 317900396 238075367 99569812 843271414 169999129 227512601 895627401 111989793 734094033 626035982 946615639 720239466 168527917 136318534 90611611 484497727 555544706 463694547 175371494 416713259 451401850 383764211 587213556 809369761 362765325 744838842 198578706 735466916 118446131 435139401 643933499 75127305 626911785 372839895 747028732 362418271 975650704 605415646 788816961 57664423 132056963 185559192 505571094 840975082 676743092 183914036 398788566 530465330 737846218 781611281 6692481 834728115 101531733 733753932 641736309 248699721 549775972 697131028 372330552 548797724 683850521 809000336 773194940 153214292 876053335 579201183 202088717 576773483 328517868 117645051 291887423 506770930 947314068 163836970 531637525 157708759 225973550 242923118 889049177 422530958 933749676 654725607 204774150 848690060 545552539 89843710 686582155 157222612 402482326 728436243 627649025 194389041 745757971 211632586 374866377 531587270 368884799 990220874 34111435 89583191 992805338 103671795 849163047 952650178 401111065 684947218 938574682 504598865 240419289 721857214 228863347 825055772 62149493 597860764 308457759 565883163 660429053 813488893 120363459 736292697 414013216 467157653 20704750 853563257 352367716 169734241 722957356 19095019 972027994 200206529 318933867 807723434 498072392 872590084 922826056 737852771 786905089 416767835 896218465 420427503 119716809 521320237 886164933 389007836 920757595 618949208 110318809 917491986 14803298 708468771 253455291 99185663 73042960 943809176 165602211 589116824 428987937 768467725 826342040 896390839 425771210 372531873 630369368 440924858 389967578 407522117 702670631 995904574 46363015 553906998 745121870 668563946 875854287 26742981 682153466 577700389 144368013 794154817 762593609 810497525 106848540 157617040 218625726 126528609 95700462 400374421 385731543 321146427 577386108 139944653 417150843 337381355 138145049 825392684 894012969 499882450 229654029 638556741 365647125 723188881 163299676 764085929 226661731 454516355 741819375 428450172 681907611 269769846 620286244 754390177 382457334 985596486 315152672 580632885 653450046 730512322 498204752 210702959 762267496 64191994 55841184 976278069 763629760 235250063 154278664 316776434 125898350 248503047 698565046 675815609 463578971 213992451 846049167 281909631 101178731 29953589 534782538 196686705 652393297 634367192 877650220 708893780 232980000 982909495 984239990 919072397 137848503 145177900 103278032 129876608 719813998 153821283 924520404 966535499 660070484 487306617 820329469 479427275 387982390 279305445 219522642 344431293 954040254 488024332 831016258 567983902 407930775 383656464 328651896 778554924 417486026 496593564 98030442 220667086 16892154 598790938 138928168 740869409 654006446 973575501 721747712 660572871 432373724 522135472 104668820 628863147 421703865 887499859 577260851 474326998 119201345 9380537 213266995 98439944 533002377 460671933 460722557 673081964 598871837 329507177 216607489 498250589 370601730 71150709 638323659 218953163 982898447 648610079 706761666 496250868 9204739 175871747 325843816 995158854 493830132 87271138 875515253 645318917 257055355 999425731 564487319 167185066 28652283 56706614 107703613 540264448 608034295 110540111 658615061 936925462 632471977 268119690 352906055 906583044 3409289 64196778 853807709 803844586 590797893 350639495 467619796 1514583 559328726 484362227 507233075 264231273 91967027 541208292 662387373 348348110 583356232 245588518 828385029 370337297 88148524 233059181 942658409 783470419 766183174 102444170 559117770 421677638 356991789 647080684 737102099 708729062 579292622 408869858 131493907 673459729 367483341 135567533 372771783 393590546 467113306 955860804 323204075 227678286 847681936 532479375 146428500 264454624 13614796 546049474 340413549 74380423 869721718 428610196 235196596 407726397 251100030 650007856 172479822 112043447 711338416 374605983 782268222 203068656 545978544 66206805 662787387 448806020 742201037 555927838 380551803 11355073 492616074 519308735 458414269 16047775 702986653 733857446 396839498 933421359 754087284 161784881 967610786 828806595 821222291 968005884 156540782 812916698 759028484 726117716 190386727 850647495 143201813 660077374 570658278 724991896 872748311 596449342 395691008 832442247 361580284 145145958 524733193 606341496 199620619 624249630 63170697 684908034 203440998 878455959 86702682 158125802 482389335 960635017 905958921 354983180 522333751 723485150 782829854 575965466 321663111 784428533 451863725 250436826 117390176 674201180 367633476 583231732 363409910 556270133 510141805 414208757 622162829 605526187 919846043 626695805 378348050 670359748 24587198 56720322 481983447 548593800 624458923 688222876 653817180 434611585 520396515 515997951 454469792 30879007 735873253 320395829 387357345 213659574 858218853 898593700 117761287 414222261 812932137 897908136 458023458 70150995 817893752 176562873 139302764 352993873 741141727 699096705 400441962 581678113 40523083 678078894 812652715 696757722 192438718 237285408 765639205 89834969 368989432 359548267 135653834 968504082 629569750 857155031 990112189 112806770 492013551 541372176 426243389 597891349 421483568 853218447 57405542 970559593 52269360 973005032 916683713 542263830 876771917 765463185 674879809 120530952 127437668 689111960 542971136 571860585 70561221 478981818 584876564 568298530 98506365 797658194 611549691 432425418 625020955 10080154 562759007 89648030 114124811 2346428 390862613 767235080 616819563 260384681 175640294 95803907 950488874 376446305 770041755 375617477 359274637 191605139 51992367 512424267 992682411 722569879 579041159 902807378 343669166 193493643 98364611 519151072 111672746 912324494 690297819 993234000 549439322 775137587 319376327 558963734 762975398 634124290 624786269 661432905 626997025 768520928 899464594 831895849 388881838 170435186 312293033 439302667 659826246 97709710 604223230 458876760 481651747 677125569 101704547 380554534 87414257 361578262 903926794 973932101 883090186 925883618 309736832 669160076 306118791 901309178 725338590 680151039 736916164 20001121 608960541 876845966 313477758 10470322 289756502 427471641 345855673 12232929 775389081 403578633 677135478 873408851 433268079 482820056 194719821 210966874 615221107 349893527 927646221 507730292 22860609 617655358 362530641 770360864 559453923 382967806 985537966 320814457 866522137 475287061 640743512 878856662 311339658 531851635 404277272 209880014 130793878 520082570 292405659 428110005 657156976 589340484 200941750 148199611 695865928 179508157 304790519 561091038 712727807 751773945 47112005 296098625 426027503 976646151 134938443 186813493 206626935 90032705 589395440 817420487 340199360 144161814 781607372 589148460 689827681 739367499 953457041 884106396 172452091 38656654 203538002 142146150 608772583 152030408 221724572 585836601 753639432 828102435 343875926 253578451 178250444 488184820 612474696 65948619 139968236 917094954 957746721 47271478 210045195 646407826 883597918 197173216 820128968 686475405 823990759 936898132 801516588 644250936 510728163 929558985 158665272 564181904 985183961 431958358 808404011 227194040 277449022 933020581 517987869 815269230 880177833 595282029 447764187 309007243 73648268 701906251 251584356 59721985 47489649 207242280 562492876 35045836 113278597 439484828 829223607 751536213 456374029 891131192 202543263 484369322 629507610 455523354 109022188 406607074 742661403 676847327 517432436 269227031 26693770 874822778 344805135 244210653 439441797 786042283 356337145 69297268 957498034 540528026 50270909 261724406 686225945 98697498 603015774 654850411 643335389 447199566 356662322 414652528 910309170 904865312 385380555 203373927 276370365 701383297 760193789 280785209 11771819 68946623 876131981 150324448 227808487 943476096 955290135 27136784 236717119 523160299 33874663 812187302 804373195 746651844 863304931 441647833 971782828 812251501 63785460 372117048 966055253 194346233 701371509 574118127 57729784 463541265 627677060 850129336 916974722 940634954 402728649 798052010 598647290 495362620 422028377 631808063 834598982 925832200 292261734 153896903 60682829 51193783 565452018 974525163 959909433 20415923 746698802 509749572 820563862 825706140 364967370 679275890 792317090 935619692 417266722 198292736 160801627 876613787 32943220 84573443 495671786 361285030 172613544 950061293 120573968 447758610 755566288 412012186 72770763 405028522 117081812 797028343 93732478 985966833 494532691 834351610 22896847 816828059 209827242 298987792 321382019 485260593 693167198 455982972 610086200 83683566 871846799 814199029 795571436 61075653 713463663 769147154 60121486 21781811 221739902 16312726 536290661 750029146 389030391 972162666 38739414 810891292 97098221 1548354 956600951 965816000 457440798 475991310 914590599 950760268 222217420 554875635 371435674 44805427 669424037 742029262 83672093 34349003 178075827 179136057 400310248 478062646 471277628 583636705 811855513 248109466 456166692 587587753 437646778 625070376 538538451 95079047 784102345 68944036 197392291 132657087 185670395 842397506 434261954 988631805 581969257 621248805 649625356 243696405 669621210 282543216 239183571 601565709 882374561 520239567 187722736 487561254 799875309 613897550 290500346 837587626 21670031 213160659 276023976 969931114 542885735 130151636 816788490 342467034 652299396 205632033 230718142 640548026 694200627 178480618 41095414 923280380 255581181 538372553 992153626 892550824 541913207 509120083 823177616 116820870 998847940 565400773 772935607 419494705 632965753 510938586 107098236 925260192 749570285 160151226 410825439 458460063 743736249 617463590 720909327 116343696 551393270 99125055 32276784 330343016 255069348 645337740 764714617 339980551 351518705 17190361 409015243 649776960 871015024 388278319 219518310 608014486 762755835 550661405 741867979 465036854 317418967 143810716 122048838 775626230 742631999 292872553 843229919 950235433 409462636 438999162 280714796 343295421 378946892 997975724 30283452 643378694 120774744 232932803 390310968 667861407 836224664 731535074 57837112 902894961 434106671 766842475 888082041 990926756 664463265 187129046 141692635 878033846 757935969 591135815 335347091 277893854 633548408 547027842 852612664 63695978 327776218 131753086 145366189 888421678 564712969 657626734 218946960 128718301 941539249 119519302 175028859 958404067 603076403 855957345 955455362 786934404 526617734 124519035 965701065 620845443 469088745 32310744 783737948 79965438 156346436 659251460 74050332 409169194 821569446 420307076 438671111 380711139 159798263 527740068 814587420 175408331 223157149 13088743 155768242 447605049 875525598 994399572 199850208 779527026 146660612 541873285 57164399 793263462 556350976 612921825 717588588 98585031 594380493 70171717 211520776 741477466 201523115 292742486 446340542 615241436 795159326 766030848 608411713 209793488 335133000 775600616 628876939 36541388 875889836 616959661 579298995 154302056 99119300 560364958 554985652 236255285 960822938 521482172 18459819 807680935 566398542 450906692 724512827 645226858 574882235 661759412 710735650 558158289 258558149 789402453 684870056 427764168 630790927 347843172 546969762 156551795 973311679 31390664 840035219 539616689 573918306 95857134 39722529 473888003 903925102 593250625 729392082 904126538 702212343 440839553 398007830 904088068 729796542 308244364 32536362 497651893 425917102 479474900 804255549 285262724 786021502 821203294 806282318 890706004 883446762 284355518 428808546 115522498 828982049 550887734 955285995 198339387 84703046 629791683 256696156 984468820 706795097 111055237 162511846 948744742 903845338 397578496 766717356 79836672 350514918 779645575 755975650 303508433 284957959 386805531 156757021 969111404 647259355 533089522 976568301 666145793 667332750 539978006 99940063 406748911 267380276 390668588 560514023 90379902 380740630 310461670 690326922 894311230 117424397 777941817 558236268 157357817 694015224 939099598 747631715 556933497 24594763 292405762 547857372 684806897 264297639 284776385 582244359 141200702 841431077 433639747 82383428 86351374 355992855 875325865 300277423 263903287 523607254 947426237 507995453 130500941 816049494 693248917 986057489 99106834 619597127 698611599 673504634 897919444 970220595 651849201 952682360 952127745 893922929 140474095 125725588 608315038 535941616 484272145 577353817 590470029 730861752 11362379 582917682 910769095 147951486 950907707 565388426 35336527 964625217 430619480 556870972 786298985 572088790 272838278 744154438 701058026 167444047 823967067 500111393 996002558 72099079 784607548 70924787 885753189 996275154 391343211 269724295 414632692 947221076 493835805 639806906 801984213 730127337 122636858 241762871 727374348 670637057 588395517 504920644 166816881 394836732 555481368 44925246 893499046 624515147 592300963 104852862 483581681 627496061 702225803 85936575 942137037 417279961 418909395 367172788 252240170 802860349 633275103 12488920 779248308 389925598 518053897 646853936 965155140 823188407 112681147 475845088 241715415 320557510 130699724 185535283 748394590 524723324 944929871 986334179 491765033 202366666 125277466 228849625 343947848 751178043 18396166 105871280 423028419 199430525 755539265 66077252 865150100 528791355 118904064 305438209 342352647 42031493 795222310 383200943 591562055 464891 883444389 500276826 415855161 834418194 67504679 539082516 158906321 32869341 370916480 367734347 250777598 38974789 329951825 829061127 309781181 742433355 469166236 813680442 552448369 198073480 723162636 100959467 558654738 18492444 34045749 800151971 135074761 943795828 511248254 943679452 917056200 230141033 32052883 964068952 5966420 811155312 477753592 822377083 869211810 958662879 860086074 437662473 986245873 692576636 989860508 972968417 418435874 814044631 683408632 385905019 323937445 853446843 775051193 219151049 568528655 802192375 458820112 395313122 791176253 47575310 88046456 498450313 678264969 185950220 223010464 528660168 306286286 550551499 376912064 917602936 70344251 402261394 720557260 570183474 52801038 241129745 839947645 215193949 266377912 43256823 228734315 610994850 771165940 980349550 742876047 145849803 683711745 113387026 299391787 845827731 543948676 680648854 888239338 940739139 268690320 515511833 217874985 466261867 202017776 408072423 170350989 323246676 920163093 130313742 323575703 915891565 373984410 586468717 432627955 75147509 908216815 562838031 485634368 623442395 219367810 766755681 158603899 44192745 390939907 271966407 539285557 18249363 617622363 337057358 554371175 474764979 496497570 778288568 90763984 267147648 582174190 979085178 37278709 582331234 242542608 684041458 770344399 402981653 927624286 408571877 767422456 959095144 135783019 625231134 136566433 510845269 361563196 639348195 157645092 896091069 847749627 344193193 19476163 335203247 758605555 273055164 759241034 982459299 983544560 463974872 30961919 955249287 587676594 409006148 948838317 105567124 951759705 991849360 442893998 592324152 794657570 215596507 773982440 930651635 73402806 808133713 16016302 684166647 388847646 408882415 823251258 697424691 518053478 355286273 513846187 822583786 807402334 69193260 738315276 542300639 244957817 671997326 660057501 378492312 999274659 527094019 558017905 759959876 603096306 332456212 111218428 853813903 649502665 384633 272475033 667943167 509577116 674654854 800224007 21111326 4738616 91457570 292683846 919346768 153152882 541792721 96102868 727245183 971263052 586844693 603702176 462599219 345361328 931672507 572434190 75315280 12379896 954391538 322098607 934199405 730345351 349894757 483971281 153463237 437027473 512092172 234913751 680304761 876436385 591923679 266021946 917184231 255165497 277312829 845305154 571874873 678929718 37513514 143094448 149739696 881196477 528550265 363483580 470987123 306930547 954636959 547286674 999384437 599772626 691322710 432049007 362036487 496515406 343151089 367359272 149476374 890722525 762872963 38711008 219913035 745490075 859358820 253432900 804790107 333322626 775729982 260634916 496237766 620777991 637257127 286324665 304716956 266865042 287967157 488689819 530632484 603660194 783341104 205135287 453172719 186110982 734379613 458690275 43765185 410721695 72292209 555383112 327573667 32987190 225772658 179774464 345038398 682064519 911642624 110579980 487753572 730105208 367234201 937995046 155414998 610253623 863879111 923250778 683268670 964890493 447212426 816272863 160859509 964068869 157089230 237175766 325339410 910910110 123916730 807040981 543549891 537652402 763661076 482319664 513600550 781288909 311617752 347065974 462430954 421077392 917066466 554728946 461582016 424119374 542407673 238771434 376315494 246690248 895884053 853318344 829353824 541187651 246501876 218644327 667410847 467215099 605277187 146372215 749804070 124994443 887713994 437622844 982192765 362832093 402723651 45576582 367826580 766367866 267123667 786011200 186085493 194543158 829254235 677407802 135012962 184489270 711502657 51217004 253439018 441066740 732472191 929003106 718287938 328643200 329434224 800890512 890407501 782268096 867044952 721178757 358519194 106736482 724276322 451148724 887175047 299727796 630471758 126044348 693387535 577622156 632663265 653352690 24256000 675818226 2393814 51705407 342815111 512965806 443580849 539251921 940059889 735672022 898030659 137976681 267083538 345514179 304397545 260665263 440964676 597321759 18104161 746281199 242639642 491411869 652208634 316150477 405122868 698664947 489354268 964200134 633479068 198127939 902651902 849082995 635367068 733601109 536708226 710730481 568953465 373021759 277891581 654289452 527936921 975730613 652045487 187367366 523831517 236214852 424092084 881426869 876905052 439153025 340104088 29786536 894033184 174231034 152485758 387673140 670267049 536264209 324951909 582860017 564380314 944298069 874095987 696670156 771610913 634526735 880633081 530469119 574769299 918901997 551441383 642401438 288971955 222378920 963341727 259339917 209960651 435787400 759299211 864008073 971214467 786291765 969236543 620095097 937632739 155364069 374013631 40168891 900419039 699985521 618049511 415169483 427588172 981567471 40301438 979489258 709382403 81602353 809456033 60225017 961178297 604564079 453872127 396970934 415605049 482471781 215874936 176956404 353457646 274844004 534894102 797410824 558652427 508291884 333824232 822944510 585784938 763256707 816497882 624481174 326378343 2530477 419655186 702248149 673008002 267992482 894091297 716632807 419397269 540276206 722264850 298530027 911798198 561984697 174058996 862999931 802524390 310731782 292164656 697622746 447729090 615869810 75132775 638884551 815477826 269233777 654769903 167046827 626319058 136107696 303094029 552494600 55194303 632613001 176691323 600175378 725665389 607486576 356633251 880959437 995169117 580899393 579449030 385481686 690599553 871770161 668264754 919817913 39924743 292080452 901330393 872234846 11284427 190056742 993641484 701815253 533289913 519936462 563856482 287319957 476765075 231904367 420715490 442466131 929496542 369509344 688150235 186590243 423245503 677378593 334746176 651863241 585064737 135690213 278723127 175816982 402545051 10054178 792482865 389565214 103609776 122107795 680236015 761851641 620163165 183835051 674203311 587969147 51083034 842432931 884316992 259901145 590935774 356923259 852297887 79024822 632747175 328905827 601417848 390823722 943549808 950519813 677831781 72425594 200885714 939630933 224285370 466649701 265600416 386082221 339911188 650409703 889599675 77642198 630652206 88099227 765911118 885152329 842996522 597317181 4741228 805334242 242107619 518348874 537056993 872401017 373926955 670039554 460143711 661834124 524454626 863097423 416802871 446837632 512766371 247543768 748427708 775438592 860304253 609341297 707664458 33550023 69867259 531908103 51490366 410049951 97531259 550734780 477545623 155314220 203722587 45176856 200050496 492404629 782678681 900909020 909262949 416421939 301135834 615364922 359423245 471147846 837336768 812179609 586580546 55967665 433016196 357365123 671612112 212877630 265191181 812169771 436643134 585504510 73154264 722992223 643436357 679756316 393316341 741923807 468299607 205215048 177265846 155207031 3637921 649175103 634810965 340635988 874208810 770598326 238995643 199334042 513213909 463795713 733481068 112179096 441229890 322118362 697069983 680284935 999734971 147293614 547674589 730990697 306197880 179696630 833243223 373511059 289940364 439048582 39577238 672729550 420518097 903327632 895662533 405353425 329454899 396021315 88303202 111819233 645920900 225578521 838879654 443105384 449547433 719387575 440648922 355870427 426363249 486013037 792286270 278081015 992548269 483173178 691932836 430627017 35256994 16500328 397829060 417844799 750421557 711465401 524312958 408162533 253214123 389332999 554996013 298118345 145945800 774563848 113252749 887392971 318616232 176928995 455271743 992168196 137407403 331580692 94289785 911801828 589592092 12359515 183242590 305736021 317619590 85749624 159935597 174652991 554004093 126762414 260693707 944107180 795467885 318269315 723144821 712868571 414537601 811538522 124992358 545819617 685482545 628208567 515192583 135706582 954780418 792349194 166557715 690816228 766026521 318482323 207762214 305918435 463011856 534641207 228269526 461607802 479384156 121710580 243116074 288343731 530337202 610138182 957592970 709770206 648900823 409772860 982876343 847077100 977200030 766147109 692831193 310105715 474144142 650408153 304448109 135757113 220322073 732822451 463232485 888811554 909585276 555187396 752240825 398490248 684867657 291452699 471183918 935118784 989788130 507125545 741120921 299592990 749741046 904910360 129083541 178520315 372265216 508854732 4922064 442770160 971350725 690207119 339471983 281447840 583393258 162693050 657437050 258585898 103894583 992446133 207900642 642295484 222747230 777276591 773318716 463308167 827430474 102481741 856506925 17574814 98645728 795752892 851016894 478751386 604590993 85686988 507270627 666888770 485396490 899059231 524252445 332557485 423771583 994172437 921131275 791756978 537382438 336874943 468732111 712466226 574102823 210581589 776347921 537679182 928139701 817316473 442257669 590950783 213697752 330197445 891295147 786084034 573225753 629566948 538538151 157472513 781207129 812295586 755918502 978872086 723938682 511366704 300807601 918047486 940563449 272166286 191259917 345534377 732101953 290397127 226080026 301927244 376348141 190773366 674369551 816348480 222967011 554228660 276667827 210385334 524451410 929586916 735373652 236775445 780518160 530151541 701506181 715918857 509903190 191942884 32098263 613150166 366145090 993879216 867288480 554375984 489027284 983980490 898429451 891496447 131748568 941078449 30388762 468295515 4771279 998890768 659545417 732374598 186435610 909637832 664614126 880366853 198491341 753917927 42187707 184693765 554450750 909259482 824776873 336889621 688419608 897330901 805003124 572083779 69281549 266455568 822013781 996998339 924974017 702399803 978655843 658499103 208245414 310223837 786502359 102703671 933637852 15329612 854325895 111879012 283714020 587690163 799578871 322082639 248635205 308370662 8641902 696036081 825324029 190276183 170462879 658461663 690177609 117665736 785270717 142950914 511654760 887107284 246256597 531648870 677061390 981539793 874515646 927771368 313877609 797584930 739819596 528648382 584951589 996894474 888476827 409009729 107382675 553797065 611030941 827239917 434917484 645222251 304024243 165146234 894423294 82812167 585825157 836117444 31513131 433110110 870173959 516722320 415924107 140939470 950706935 509931503 519131098 693390098 728056765 490895185 235952603 177507063 130848010 552134202 863948544 686486755 9580335 370509439 923820888 928504712 565306961 42023277 667258288 941556725 481951232 256023069 584930105 139752416 702575526 892131539 118908819 286312752 632918086 626647453 720450756 101146312 880847323 688363583 579197933 744841759 286520617 310668076 516213030 332081284 388731335 902415015 72745454 472722266 734060873 244399553 979975556 715475693 480729936 446808792 694126415 583319195 798570199 724877253 592311930 339874588 366191356 506171312 481002464 801426666 778225204 411941901 492483865 71974333 879084903 702136915 190183512 541114531 740244110 922903045 666267024 592661647 500386645 619916054 393752715 356051787 171069941 425955295 324425023 20980429 118727907 127346312 240212111 26394927 563137708 601415326 990379798 76677599 345225646 890037944 723157801 211260204 812593729 552225955 64763688 311018694 774655349 335132898 799858665 919106631 32428858 155730398 881572283 781251439 277888081 288642227 788970626 172619605 567527945 614844766 431257261 177012950 384045244 952301951 688376369 434459453 342238295 546181778 605333177 848396495 529728029 828737365 297024640 279694571 781779478 420241247 203405899 796324363 922876889 241177487 525690598 299955903 102280992 81715714 630484671 807004208 436005387 83947520 791062295 383421917 792068692 178391393 89469987 449073027 156371181 736487837 71864239 591898426 350227227 283149671 566361479 498547877 534316362 844530066 537787668 825856851 327858962 80235196 701372002 475243702 674825828 844440818 551216248 157015437 689494116 63791719 304701945 321329425 659491025 134595320 400967062 164093146 498859016 187886861 650464367 242304743 86914706 995087153 884571553 98232291 500345545 598947798 502767549 129357999 434988288 378866018 927072588 136706935 574889995 225321558 862680408 949366249 698313032 718946626 42021291 178833801 556130681 322528345 906075860 450834986 33201371 313980880 701195580 129929810 473562678 609761911 677199539 306792206 389651367 941444928 534231830 730094826 4252885 992485774 785748400 531171171 615120313 186356450 623405858 895497044 921292473 647941064 188013182 580236369 793775098 205454402 817169017 499114785 637781264 378559731 53727566 337892268 461603572 702741875 362994156 642321759 424031952 37417155 653317417 423183529 967888703 710700855 141686949 94868745 120619746 118511563 421062236 879680459 792976884 255486050 413991393 166673978 45312975 790720557 345080608 314928099 950409533 680614735 75872982 479252680 24536689 232105978 458271764 171237382 429273239 551896943 607250087 314608678 423670096 298353140 241020408 168741264 132395911 760309571 307065659 571935562 835008904 264003620 38238406 808081664 232125606 171713757 300654981 439042561 304176509 560177595 787850744 704858949 939337085 407197635 761316921 283927141 469096788 676641289 331839643 914569206 798928157 789475311 669908038 306856712 599551148 572359923 804556489 958669071 701885977 648637544 85872280 835590146 455651721 577835123 149751394 832022466 823065543 430305644 940088697 910366903 984389238 431302178 354892236 340392379 305357748 45183625 391775783 764329884 727161543 332993489 138012760 970732167 921348183 185851778 59427720 525586665 683664406 760677683 133822259 209301774 692928515 184409274 76317672 318605678 21874888 414972975 661926624 363704957 590039116 774584190 729278194 620810281 570831548 475649746 397881393 879546787 891844758 417428282 944455155 174171092 365412753 28360134 42773124 103088022 11153551 341181718 273440000 362081573 568205081 505709498 966148748 36651801 866877498 105359922 40101213 318979974 538610244 870971561 329539865 709271670 324396727 114392450 25405495 853119039 434643216 648298619 601921439 193309326 674990996 349195559 202365292 499956591 300895549 559458768 906778342 684241229 161611276 648974882 939878262 879538920 622411191 688886278 360167853 935547344 336684814 828883913 554557832 314783923 97979729 419117719 757154983 504385629 135592643 568472745 823552883 930446166 873236184 680436541 576586826 459602940 246588121 893437145 662735201 278143558 443492933 59760697 999013472 959555473 579227907 785766472 829655490 636138568 71837977 150468448 209802352 442613223 955306011 105145097 230102637 996333237 332007143 712016083 16489053 550230834 591114050 974120512 249781857 939317588 603743549 873035570 992346833 814222982 863812035 223995746 787832547 919287171 632259709 489277941 907716739 581691461 743236278 873821133 529539064 357307352 579917995 260019503 6179193 104927268 191902418 98830524 612362719 100876080 543984005 896483176 827560594 122718185 372831476 911378976 68660521 757396056 90982092 270622749 172807032 345544872 254400690 486519315 212048007 914674569 174391696 842529604 578402113 240052662 704396588 663933462 986450845 654944989 540836951 109924703 709002253 837110512 229236974 791515776 770132189 77045929 483791850 757665330 470448619 633488405 292410535 275011023 519417003 185550052 951058395 22570279 396529232 509958344 747016563 172255021 888877804 886436106 889100745 788212839 380770210 750604126 904013103 44866002 821120540 653213626 724959020 209445015 770447632 804397996 826779465 555807165 404101295 702881661 699658802 625541141 228428785 496642094 336880560 498082492 799141056 731472773 191008601 902695295 707552404 160368966 900770618 911236512 380695164 658438964 431973941 558693481 287085085 213263502 429445338 422925374 20519369 822464574 200537746 110414181 214696609 719482286 685025971 809952429 158605823 66777776 358866263 998065925 481977029 249176412 756479876 959253435 869942163 388203380 653538555 682300129 939001033 526190141 840355055 668690685 405146958 489157569 472115422 537998326 729531157 153806471 302833525 388953244 112553573 76092839 784318182 588439849 696148694 481290691 221120549 341882749 154978437 997554326 259791588 678620159 203023278 687160721 509807376 728832536 347927261 118978535 331258666 62580694 471138543 855649669 282748642 501018184 801541740 2195488 561055567 762465059 636027371 898526234 835359832 937944255 562781505 817291675 232710637 437179792 918627129 69411814 635507059 137885383 644860637 918462236 750446814 729322192 561317912 582000757 784796067 83874397 31787507 905674605 438736416 201752651 626782680 377034155 616490826 125050603 441201937 991676722 310716205 949195605 270584469 609077213 517208670 366962934 3397982 909658740 86114677 218284610 968293746 737272619 848015327 463626234 433957840 397392632 56637366 896137359 515976860 172210828 788725636 756945260 139486565 419657964 47897183 942003686 271832306 523607512 830538388 911017014 948327647 838838065 152145999 274149213 332920401 220432483 45213968 317098566 57613588 713928655 17714809 68222677 182601772 487516915 573456729 954459932 189359286 328384568 455283444 44394331 97028182 218581985 963373008 267886160 413876618 359068232 928669334 549739784 986239398 567778164 336002813 513596798 240578707 709783853 74392252 322725912 594718332 766160600 474486859 283683010 884859437 822591408 831947502 329327329 380018797 676226125 992395999 378604871 684137170 29809031 780266782 680620518 222221328 356835350 219306459 505868037 59758880 785823200 693707615 39437567 250368087 821622141 447031434 687649816 245414524 546281955 904450250 452566285 407613640 542203685 17494936 847572127 626955957 872369082 221285838 127086138 880595570 148124303 205542350 105536258 874445871 528569949 401269208 555525590 265668015 815863169 154428618 380401981 189404284 786302502 395284961 956856218 258948681 609501064 744889873 445057503 572837743 892131708 388283959 164955935 320633881 807952394 730691065 820615724 176699593 101414189 201412373 478746391 365740591 412207790 437013140 587302377 629169898 481904547 438629978 320337960 77841627 871766051 597834177 704581325 30148551 625337938 943482708 986116733 611449790 836547973 907493562 97518462 154607710 995278962 328535777 276588004 10191706 956105888 129979310 82275307 260683173 733350460 286847721 24366691 896777327 502995018 484945459 96786175 765673279 233636001 330085066 977807001 829129305 902233021 809603230 198641064 186575222 253316205 351875704 726270669 208980116 471754077 938554903 126131420 531010398 227067992 5951773 176355692 108333537 246769640 397628950 61342143 789297566 676968091 327811928 219131365 744572729 90876784 760424026 774708448 705271266 989705109 390594546 977701078 275197167 904054461 255285509 800795067 585573470 277604336 618400186 71010906 615274512 570370576 537869254 158411928 772181617 604815477 625725103 981462547 595298605 545222087 902410233 632464412 776374030 364403183 699883156 535285810 352506079 88367868 493094028 983956622 694100067 171376487 943916609 449082573 613530076 932811360 815651469 248156331 28101597 73628248 405355788 523702538 259813773 73221909 754291798 345540213 386898827 169084248 594943982 789827912 186990135 147659189 391949073 5012301 161905208 449888700 312241477 430825509 492925059 403876887 805889205 763704284 140284479 130561386 531688562 612449258 675539653 800713139 287225223 793545259 229662633 994708996 618838616 600376158 764711792 650668409 872368691 497083440 308320172 358128151 608668604 112478093 657051768 192173703 753847991 733812857 136074236 330768337 281653830 457800942 914522115 5084063 570829254 844848088 911435613 152284314 660206332 373606618 192533610 244989119 211517033 273801756 821746420 492142347 679364083 692377973 787503066 17887697 979193226 572308669 714200836 916875838 263054653 19564426 688589340 478063746 268759100 949191958 694399990 76226302 388267024 936913232 248996984 839742173 623623788 398262059 456907762 340164403 33821337 664695060 323235736 809336191 330458785 119553715 380650748 456508688 163538846 579385052 207616660 74884957 329470865 71186080 715965444 214218281 934750046 824811330 34701094 850036336 914432741 328403933 129194908 427508347 437460142 3229707 905135550 352724232 10054548 769241726 476395492 438528499 517190872 331879852 405708317 778837972 707105252 642528337 513449108 769258156 112172862 668733521 865234859 212792588 753210468 751582563 218680354 771831266 766444721 140302173 447862922 241020476 584103647 617752299 755191040 609891616 632937952 898404516 929313279 308889557 449536673 25282140 936827376 792710628 414360709 8009161 408261866 776447785 988343111 735990963 878318012 782874476 385158128 962731675 342936490 744686974 871748981 343961737 235213037 25469659 935797998 627018797 416425649 16604913 861212100 608579791 132996352 841418925 899002719 194951450 357170422 913530313 444603871 904129990 436786346 381312002 598725738 385757186 415277846 186225466 921494220 258599829 699613111 155630291 372265273 534148957 373685102 738828745 759277894 302633790 992526711 412597423 953989589 781615523 310562754 501250943 663321740 382206672 70582909 241784031 47522038 186229700 811122279 563110865 350033778 812554896 121180743 807003239 976004238 224159680 888403623 799694690 165944579 91616072 638818431 976704821 347067458 811845765 245302327 503832435 548117075 846755771 574296491 920739000 350579664 888332292 951320286 791006310 618719027 551105089 181500145 626575732 23046335 253821953 205598548 738346411 214994019 350326319 517559818 943046492 16164910 497304959 9660236 860822881 329075852 910486598 419208605 311354436 285087059 715872957 554323718 986457471 443827366 772045436 837209320 884585320 905126628 354456143 690529954 63167014 778434954 603949059 80039866 469086095 264976730 894512548 531750721 14142634 279702434 835413646 923392648 770361213 44367457 9625912 920593545 303474291 477468737 360096835 39634944 365075058 842121472 65656333 5732643 603031630 420185380 487564211 800244917 792666812 391822080 242344881 843735942 107285227 331871636 171873238 182918031 294975129 1507410 875739739 977638028 51681705 980041715 749874819 905140619 528217330 286900641 111005750 546635077 690135842 305408740 61243540 620762541 607562837 780323554 166008325 523340288 277410253 873962906 984659129 460325896 349451813 10969610 612340990 842150812 52039209 377933996 638472282 744769171 858983659 961772790 489043939 816167969 192627082 639071229 831935246 242984745 669727246 33653341 780053175 746823124 886048439 197055516 847265600 783677074 724513511 987333182 158940743 163340329 695195068 51910201 910974967 427976103 209470155 843008590 236560006 7600376 758926150 868359518 27493564 702148397 458050801 354393900 87164212 936413623 772565613 976978339 495617484 182579969 552932394 603691287 50534970 383824364 59533319 445890511 150294755 83825518 824152612 687767683 81305793 871866381 273075999 896915712 985837634 650459248 989287959 549533717 301356852 510048633 948507334 865795506 265146446 514522451 138195790 246289425 82600093 159405845 85342963 526977295 326067519 829621415 694758854 339917305 668317526 428560760 867409521 465151050 16153669 490806155 789376080 13338022 132241953 610216848 217859145 877285933 948509138 319487660 663119532 205589595 662849134 387339790 77122276 493834646 649542188 421503181 907633009 153254987 556615792 846949203 760720846 113936428 385706942 934555032 760154652 325995367 725134589 747947587 593455615 610285432 275295755 370075063 897815796 828224473 242197542 744947772 92284227 319630354 721951279 835027331 816450910 411737108 643521126 511550337 392636366 199255658 486109417 162738407 146711260 956964308 869788670 316492616 318359152 570651739 610030739 524766369 674530349 233159206 799158643 399883140 233161890 514716989 120463308 4065534 299674122 745124187 16785484 577229021 630556905 428821860 613481080 439785642 793454558 768953756 800869156 598161174 802266511 782369929 480375408 753660979 868453407 216873181 184933614 82633155 675483415 920547917 921748644 286620846 968937594 276404160 588629199 160972865 970377767 724465723 18444377 560088506 958351179 974294582 870335459 155199067 533716710 52321612 87685988 238576042 747070651 87117877 570247862 17742698 766432396 102310383 341300796 527369926 790569834 790051176 792872461 347643059 259385909 314373053 858827546 894668070 394234082 208245780 366124380 49585387 968470378 439121993 689116778 52363804 626556831 473163585 398916530 435528329 338863302 991390464 513700808 376049564 489009020 358046528 137950906 269982602 976782185 43950883 821033324 970013292 449798175 522598192 279474296 86867214 933011132 197616525 395495211 374394825 563566422 87789689 12506286 582946275 645761474 787460886 63399645 181226446 722930169 366686921 431409380 29458747 283149282 918129173 137531458 373267726 328502315 857617810 715197669 223628043 535652905 655663138 96444341 885886899 542242774 874048438 758122962 479569658 377635157 422788966 98376850 714402305 257748916 339491138 441766135 281177270 883676836 269857310 339507409 268755316 865645024 949602227 927113344 896062773 486251259 791182420 319073117 760708438 236693813 181857224 705639789 117609284 849816929 65620785 870968545 783241713 668403458 722279027 263523925 795133193 768804462 847489718 532680323 836633294 822835918 216075289 818029069 983678081 787365856 878448372 531685975 405132434 842393973 982107716 371349911 468303163 467793383 93902789 343672480 804021718 103604017 805301413 632029071 868544505 821805422 543666113 735649725 179409476 188183418 556818763 622447136 257354201 171853703 454354058 878299468 691409308 447172383 645602251 384935466 286923769 791728722 801211143 855200762 932815653 252561939 880431582 420251341 279940176 642411094 542531352 455077108 766468165 65673293 224392929 58534963 818790129 777528036 476543691 132988056 664749679 728364658 554208980 496195479 377606391 780725695 864044311 507862149 686284086 665388278 322545839 870722150 389708763 648804418 616094871 551153436 800687318 579781787 753059480 704926129 647701640 960861379 645321150 527814390 276970310 176173952 397832416 562081982 315823191 403821528 225282779 118749135 197558153 108333574 805373704 318556904 350090144 119387155 391471114 694042322 94322782 753234773 759131609 393640858 676388527 287127903 226767123 284898547 247693954 422621051 689261250 1416051 730077571 615925636 839015822 763071540 70715162 421355063 555518552 868065431 994365202 203503391 646803724 298618841 649510491 816926290 248132030 207291416 590272432 524645326 873363147 231571418 796823672 233223093 824658370 636775618 760423077 419745287 922470600 575363112 675208159 641273322 198325788 391436875 969725213 701371059 153415228 12070397 86872610 14793751 860598486 583979885 355235192 529437118 196749703 424339478 363132706 4055171 850953463 751304699 238871256 116851280 725363746 45768936 931723788 213655339 163248067 558674364 435280431 954106236 529272545 13501258 15703457 349821388 673631350 104638089 305386312 385825577 278074453 459801321 969683717 836744418 261577265 616781434 729903483 887417399 647775242 424366034 287578365 842108211 993202291 75755362 29945474 660463319 204916308 564058964 989632598 139775369 368501888 361682151 579691468 303181994 301164843 747223063 625379916 569660475 218036883 680523718 49574825 705599777 71948101 75216059 17594360 227613965 237256550 493733565 193510063 326558586 558771920 478402695 411201802 256155776 907581355 732464414 707218392 966375774 115857800 361271109 12938104 575823146 856928314 196515555 185994476 156176345 369991391 760313342 885675191 389800627 323666589 739791567 904873897 814291578 835498947 240378857 335355425 602618149 42207395 55532491 260749705 493172213 908990961 644560580 25648882 511053532 507076685 766398032 772436779 530283529 424727248 134084279 488682326 796113642 982646913 952293217 106016007 33033573 680047654 168322776 124349255 887839506 980067067 622308539 61197283 760270688 392985993 343313421 939369094 493275021 383469403 551659365 292939629 791129621 131562181 517805851 785556340 801397160 597917870 240423552 913173092 818921066 203819239 157474816 840109699 441086825 281903358 853353367 991406004 211017017 411278605 961610042 589601584 905165085 724430367 412046498 871828028 261565335 596285437 731607220 433063306 955218391 518015496 206503924 61233836 923821077 731037088 229752595 340660612 939863355 245954352 414363925 123784227 640784106 363357272 153243129 712612780 205010276 742215024 955148322 781127206 527290534 996879043 623102129 20567113 692351038 228133430 140063952 424194262 511132228 716081223 580013020 173067325 486847613 752519923 557586917 576443429 470117382 965533202 379675358 232004865 548195802 168596201 630746145 968540296 298800137 451548739 426162326 611896616 174823334 219166852 217953085 805304699 133308875 351891771 483056809 852268142 290250388 496681230 944289533 854274068 170914805 643229605 425964567 560258512 335185758 598106337 486974838 91099611 265648830 140300218 299269282 876891327 742597396 88529461 125071991 921444654 195107843 697157341 133127145 457094899 402732219 818268641 445589945 176305146 38611427 287678762 228126190 575545418 666296655 10046263 137018694 273962767 844483052 421289514 822008184 534222163 992951141 703819030 858056413 108413151 974360635 251724437 911943351 755273939 293538635 138023598 364060111 859428912 379212444 661256751 21104031 171289433 577519722 999546338 455362135 6714041 715261434 534792010 155226261 694711141 434763145 570325032 66233775 82966090 291877011 82307305 389992709 800364419 27357176 637284261 120394928 512211236 480432243 629941569 958672071 50828337 64461374 817226273 96605854 348802893 612949747 750625525 980828745 922949557 512357989 676679469 906043924 59574044 634458043 899937882 587045881 529436758 983653592 741628177 317127542 984601631 604009937 666407403 844103690 978313260 694758271 149282985 457270725 675359397 70650791 448036171 899896576 204113640 170618580 354723780 150317441 621001938 746350480 971852066 8396196 159599101 647583058 825350594 341896472 372359830 943960422 171003633 604177360 380234829 546560405 105332620 829367051 947074633 526392791 607949289 835313952 938362748 311556310 395519213 778281275 254906336 63949676 179003378 191043295 935188521 689351298 565386786 150344755 121757811 650928141 193476632 544568410 377016002 899245850 570936478 276275720 621070028 268874915 149990796 366390621 564688895 41936166 267163430 707940555 165726628 521499709 639520109 500453396 439058096 199167507 82742502 338892435 195430310 919017786 311031712 593893970 557660266 190869620 220060330 649730 997059591 116228761 544957785 214203121 749227792 950015585 833042220 554759712 779129371 687826029 880392119 653727873 155059115 230522940 654005144 857684380 333118130 784011357 349214502 399333314 21451588 324904565 386207843 577164002 585276019 942370265 81877633 934148885 537585900 656134145 319542835 506165825 966166064 617034330 856017474 81533829 17112 3013598 291117418 4639523 629507092 545529606 45330613 320503987 954094933 940068312 756373331 836166129 373219570 461787786 546158590 591051388 882289139 790363342 361791263 283466815 172950233 300194327 692756485 941480527 354616822 203922543 231717819 378564411 109728388 769108714 232424833 527719572 966178838 643155075 642453150 708044763 212439679 547553286 196046914 921057678 549252949 473719183 730639462 346166306 308759485 218701680 569239600 257392139 771023342 588275134 954163689 589670910 566770760 278160867 120161126 46233387 636532522 459704640 891017807 804322049 115304757 526702731 92278909 104489561 201062673 201246573 458977355 582237026 242708156 606778406 117357531 963351345 225093758 672341284 278515746 557798590 144772401 105801932 784880651 420504891 880815465 292857499 124687943 402104576 458667121 389546888 640572660 406324492 221138008 770143948 78567253 482460499 546113158 758050159 825204775 527866503 488920921 219860509 884668510 593617924 329608260 913029685 693957294 385213693 664601736 106475035 943852023 614381064 970851686 705109621 243103428 256601575 758560609 125851576 154753856 638896085 114707446 747448810 549193409 861023860 179993182 733451373 512059964 956461944 233375061 459788377 999786118 460763823 232277943 581633050 275294320 520127851 307110212 39742746 86692983 606902567 73271688 225584034 868049159 243599479 226016470 18210140 872169713 448196457 664342023 311619366 575074683 847949705 466548336 662865308 773652252 474922524 44129465 92853651 626813663 442199738 143140967 187376017 449482356 679670015 136447032 232532393 529980732 679544733 228684386 30070033 640559502 698328327 286836561 572591492 41532713 76916494 166199828 677660689 506925856 346228752 278385319 760138731 952491994 50149270 473250268 152629663 618916811 345572593 324437052 108234461 644081064 968498667 479826648 765801781 680454484 225163369 315726163 764832049 70262445 579218257 915024035 453332413 978184151 294582443 655848845 376443448 977662216 457582376 801094608 385533069 166252450 858115030 893113634 135356540 212303940 629876864 793114722 353187087 727021350 963371150 426422297 327026262 371625047 533320505 921455405 209022018 833672933 319772409 329411475 732889630 635424936 526295070 146548481 52136799 315534287 39416336 865571088 550770941 865948145 239440187 382032124 675963970 921748386 657197356 458041908 546414849 144189343 979162191 924360504 162091017 905122908 181878845 355881970 321855515 868168549 926218789 463993552 598429535 962692344 61844624 665725705 612826348 610295143 525242846 477311685 234925431 596201420 714391109 107425067 997120352 473474297 829998709 862514336 382709798 749701844 192374683 378842433 899488576 192342671 584004779 166395404 838911312 686447018 993660513 288514292 677293016 155898949 822398801 67081137 126546499 113458740 925063557 842719824 267494670 154177284 782895549 763108216 964783168 529147858 298035221 633293739 26464070 151360153 967450171 687282985 922946107 667610769 486125507 74007724 862349335 333186842 951666512 667717009 724138535 427296480 950927960 322942300 260533624 154352166 454214966 959550985 931017934 800159134 284025157 271269465 661052664 74434316 794620787 291158132 639344777 697118468 562268930 83533812 417544458 451007870 260432862 334440286 975203185 928188639 262803693 19785861 529296751 707436355 704420109 1193723 808221810 49556270 816778409 851566112 508298814 698796052 78112301 998020526 225435041 118652717 555897977 969434349 361059112 133355409 162111198 160312289 134986182 266612246 786976864 459530627 156374730 45339290 125085649 533707585 935808839 334979032 557854424 151481285 563468031 327917076 689688379 772035523 890679449 511852812 535188017 939307605 257963733 441583546 927069371 117206364 959693165 527405684 204787218 483402041 743219821 79126823 427890854 447222337 649891252 401012678 79241668 832867919 204744336 514038503 957109442 251528720 54038402 489451323 917641967 398133152 507459363 23399465 388790523 266564424 780721592 365321487 92527273 2471777 425639297 684703502 261618979 74567286 829288922 859675484 859513216 638287734 104305209 761548250 609031305 983886248 381082927 365846858 829756 400242236 826467862 823230528 509564435 660185000 393141789 822473382 170695299 114575073 855927088 391194043 273801482 377298447 150295772 686120329 112310367 660957454 254607575 286459662 705832145 139051050 34199535 510497849 296159853 52161343 255081230 316909935 415464710 502493819 32288285 946181795 856780104 488951575 6983168 661401949 66902208 674528092 957454145 109513501 269965447 411155487 770969241 417834635 656235229 26265625 421983501 404337222 992381270 629278024 70945847 801928708 686963602 52253350 935771208 826240140 213643526 380493831 488923641 617859998 20065459 927343952 937878352 5840701 569752773 279686848 35724305 852258752 447054605 342683867 155765413 966821616 535871713 972970569 670610398 672943784 166373842 391686028 29202939 958494046 940624768 256246314 73578853 862924346 51502091 478724675 777402894 763432167 540566952 917452285 225651552 2077578 901584164 849260770 111262219 968217972 672639296 319397198 291912331 697752292 585382112 127058388 86289468 684234052 358209394 77290587 421431299 550208850 389835705 514575308 44369851 712218017 254524858 371427403 131362868 996532771 793360770 918750828 170713312 33484839 816290971 105990164 120201907 120552979 62894494 242775520 481426465 140526902 847013403 11395349 723355696 912151673 492023695 282683862 952454656 665017769 487288953 819482195 440269830 775357647 501178513 638736443 411260748 891363486 78966728 557825584 369593469 859657817 125060909 792470269 422533514 280105203 746925606 889867947 350201307 473016317 313627118 384743446 681519136 886856425 980543147 853359898 164645015 623566149 413088241 201776613 240153966 108411468 641431827 905483703 744645521 62374124 932161322 156382768 19501352 741229893 244136310 725661028 148657102 278935336 442299176 39227033 875959543 196621820 196886298 121599854 487021168 623781294 959379137 638082842 133440008 258290457 141748064 275622431 811149726 995227943 658722665 418920804 385998670 719744460 380673240 744167006 476525059 815174647 368141101 242765640 144508888 966575588 701171776 981520810 391635979 568363240 428120156 744685666 274993568 740290436 435008642 394758879 21846797 436327463 201581279 410055313 965279251 692796371 749477089 358259968 847220526 515033805 358454403 766367356 426398383 354289658 197290711 20231383 259208638 102315475 459453504 885541434 289172146 844645465 553230852 814112590 78444568 728216232 200679065 965077121 777710731 369764845 778671381 571384460 794962662 143070196 938062869 497792825 976723397 284613189 247861412 409393959 399663111 595744047 761518780 601325971 224050281 147677799 333736424 187766306 650413273 221994618 655171291 427585015 718706979 367891074 796671832 450239284 126443510 867852809 550007144 436862155 169384622 155236089 492392013 459223477 640014464 108312630 479864886 802957370 810545410 91355054 211398381 929919611 310357769 789396383 961020175 406864864 158749373 393946619 883773697 396376953 327567555 304409795 957465325 809524995 921175889 205772421 393844745 211851516 206537237 942840088 48636293 830241812 602158593 840236516 864055407 901982023 427992836 446694848 708385029 916664152 719660819 645276332 534311028 385709259 363631627 801147017 782692252 283141332 236524853 813930402 69320499 817397872 76408965 427701483 94045973 424265483 836487127 154863452 533765286 27925425 768177536 405640898 944164232 552698160 778361107 723100392 11675070 383301854 571250410 369731019 999273949 754645328 598921184 899508942 510999622 258097374 481976883 981398215 789994055 816253183 202188422 136866426 751089756 525168463 686492351 441482811 446920400 829852074 509973777 519260886 21913162 191015200 991077357 256903279 11622885 517824383 490090297 485048560 225399340 243993526 974475461 587632488 294182388 401532779 933641442 547630861 806131405 963786897 306577017 810443410 816700904 111998285 356265529 637927149 333267714 418720628 472098943 367399136 207169917 645432545 58015602 985772560 397712600 233929896 703213865 848361866 920691885 352751422 64362639 952186442 149795221 422885702 339519909 346955026 794177506 448878184 397702767 181726483 392367645 202914165 215686184 284714877 232398652 334055027 980040782 23596547 716943017 931367954 585690992 966261131 527334571 621852407 347014256 557079962 564144506 834042839 286410592 731446888 320513501 226908584 184968171 717649946 448592138 822062505 314265072 841218888 350840848 878432357 559533136 750814633 300734683 704182065 710140549 804142073 69316388 917561393 243391766 101159176 22116733 166907639 19266158 118026445 782594622 157135160 906928152 84952952 540947759 954981432 528055045 267703131 395024996 968237136 368325092 701670250 82126375 528948841 210094443 702330221 277077981 877460894 385929349 974829344 89622210 970459837 355080315 301418282 41530890 55825750 538199982 48558009 459517262 176526130 896150954 212352158 989725085 720620891 821020935 895991526 903723065 589461019 502395512 100243165 547481854 389568565 24533528 127497314 635431914 280314556 208446172 112507147 400305430 33244527 78203008 253430238 558845243 301635852 189532081 468093663 249267444 488597808 708431710 931472478 647213478 623473094 74543109 239489974 631585107 746781596 85715544 158969248 527291999 345225284 861024734 836208735 555229585 863064428 903302196 577960640 749499923 848264881 756275984 334539220 174983985 650512234 119906665 258332876 731372855 571739947 176376022 392513462 918261645 741381847 593085252 254327171 8069031 616322802 603811227 372375040 23123508 24041125 183155395 391630785 740496269 621170131 284224436 974211260 862949072 434813658 713215864 647747807 877905061 743773941 273340998 566584943 216879307 490947255 232080768 631674461 910038076 638970485 765669822 497008894 6403893 297237690 63705799 409677306 130462309 115840790 930610342 644675616 229863661 226752827 327483071 178243096 71138558 325204951 532811919 641413077 520337411 370902626 865225021 916999728 188875257 74106228 498211640 156523224 880522871 809711208 781481010 180084575 954446607 82289370 353263188 552930779 597252041 640943926 409450766 701893524 982543117 78878651 54625469 472593314 39543441 648648751 318210268 55324650 425755531 318480434 561434964 834213255 530453573 427138656 127201825 76345122 68270906 144111760 316945378 33012662 893969221 401295162 634636853 444196464 631383346 648192298 473958590 8786415 521029438 319006845 98995765 897502457 197768300 857320778 578556047 993090818 908066729 551474243 475879860 834766798 428998033 535174497 181143280 946112225 815066948 770656498 861869099 914818798 223476696 651135151 807704976 268021005 798881909 215737704 793581375 46457219 540795583 323467262 484572422 482360318 864281529 215719495 528138955 134395637 107528064 607343157 274370235 4384322 449868897 578044306 487538124 681607536 113315859 631421524 296416194 716079770 229530130 188499398 68528939 662196164 891563260 306497787 743447541 286547740 597613059 713574598 620745659 839996995 144756067 880299693 671332326 246431747 545444981 895278565 468422752 929463500 137881095 508872176 759777795 876902158 293378131 895482254 378241576 367017285 36775784 191150320 849435613 118542755 884786402 598487104 168869453 308226210 661490566 147891339 340772335 45289229 5684093 497519769 983494652 375898531 803294576 194827741 831212148 165317007 650513165 816499143 619355506 409587569 372356724 193164554 906519315 675293260 851770970 147090419 603381598 846122336 825403047 729041470 483172344 430420155 188297787 799504237 808144821 962071847 627069331 393827479 150092708 671855691 725780232 10478517 852852438 457740102 188014083 114824807 850343370 192950604 552703241 547821005 787715443 994398676 196132932 751217157 919211737 436227336 79181812 134607360 719891218 458666281 594818569 19343685 120515132 947521552 322791592 527833588 988275495 713168385 645887287 767863591 611897912 325733192 439851688 993176652 43709877 207408569 832162639 958040493 788054189 23423575 184050472 163994164 104474824 85289977 343588172 993371536 796314652 442748301 648748913 63073851 891969917 617789300 482010209 263769300 934396522 760346679 977990431 189659137 845855472 647212980 843996724 972995627 257118168 86938475 838947442 748583809 263739664 89141116 265908642 44904224 182361269 447377798 452276321 209109727 585978852 546753820 752933476 142296184 717080060 500583894 239072740 706026259 11729311 148979972 568123144 268247661 536861451 904165036 738542779 553754031 373158673 854311947 585807551 957208318 525709495 849563636 895869563 146320539 542428066 593562349 992283678 481595992 638450545 1163669 84297041 289151619 667084897 772819228 56159183 72438835 424660553 548129180 910397154 874270321 939970562 524529874 951954137 967789954 560077489 252443801 769617629 495548552 852801603 824213076 473256764 410904933 360682458 764038113 881066345 246262387 344610492 304514678 584585910 453881542 893156490 958898412 815042802 230219622 230059020 673523247 236760014 929508009 141661864 643232089 25579828 188720404 535232165 152726547 333120903 874963858 496266219 855334034 555699149 345214961 468371572 201399105 369782876 365948123 526045196 698672934 324750331 618815910 760701977 837279127 686000628 693742773 855387298 498124745 183124763 876204948 107938464 449275709 955613222 450386877 427603571 819277176 627045852 224684991 687643031 400280924 619204915 790612860 338688788 332452991 957985829 931404839 357894750 892959885 424823266 54744565 72103704 61076086 292395990 148617880 863594917 791449255 864566552 69599919 118443476 678105566 255531962 815129504 129380637 556823348 451274047 848741109 601712505 273353686 759027741 419263030 244320386 624839746 943201479 61027981 340583106 708025204 181911669 548576797 873438368 194345524 921226966 502761448 537580969 747311645 911691904 195903472 27708987 816199612 703517946 564061768 314406950 289567058 35356797 239532180 581703686 369151150 107077050 26511047 220129791 46367403 14403362 123615779 601770939 267981961 940635756 690892857 775377643 58623497 113349272 909340938 883787943 789132891 452447949 462699872 74957234 653454773 922224643 699814719 535863525 123927559 966548499 192155509 377235321 764899646 855877248 157190608 426157034 117628943 238874861 603071954 770324696 938603401 275105665 297275749 417184914 769559562 578148264 220164630 964597455 227401907 134295338 759717030 358452099 324718042 555079686 250116037 580013525 680302692 806953900 993241366 847279925 70688879 9526722 244954901 229663526 939118115 247915923 57624246 18645750 692051530 356937849 248922086 97022456 172628690 493829929 536210581 394217552 119189403 592389960 921287716 742223252 627244634 133237005 329209988 104457899 337253589 361744252 830179516 154841249 461241077 468454289 696323751 875500277 511431127 389988287 950166062 509724996 985847516 536023161 97642680 590204082 485040939 729141941 982215337 748533864 424041828 94637257 533807236 599852492 755974536 302548635 761033669 694526223 396828126 983473034 814807558 366267469 983999676 961658228 67983196 348898867 725875507 119073030 522488842 94162442 299293580 857575139 539491177 672335093 519539779 449258576 647668625 423477868 864249464 26227657 107332195 582562173 653873399 284160072 79879955 512803194 21170587 257811284 202662593 377717431 439550238 610285598 478358766 724164892 629592832 883035823 717621808 499610840 782140529 61733385 922335810 517079857 749944237 699010350 679341033 521030696 259462229 732826587 545650080 557897341 646246384 457648151 616321357 286027041 9712299 303210433 379894936 172273708 305592499 562728820 262913664 930511000 308027914 528412072 189995761 265901651 943762182 622043886 708924047 309149127 807250053 353565579 261106123 152845230 749758747 191120648 389387033 318854015 383983085 752102953 2325931 752827799 773884670 726849071 316991919 31321088 824375825 484371567 353479000 932921621 818020203 83549363 570522233 43369889 868440535 233441216 209633890 221368074 954256844 356968606 354917848 897472277 186838163 197443455 534697559 541932248 644328991 82769745 611755093 913992241 344565255 328784474 794932623 497269754 818406912 732370932 799800867 420153986 575871997 34669820 663964151 669972665 864576792 291514350 532972126 163907712 663306512 256323440 440647526 804272654 76268756 402431473 569137531 778405950 273308716 281872102 595743734 312238988 790838433 918084908 737270108 194122085 245527132 546498022 920141823 576582968 811788037 952734395 992636738 97427867 332838144 525247439 421819879 658765136 868643045 453336601 433769133 214527729 513527397 412725305 641366745 95730260 369006667 993497741 539040366 491304209 180932555 439809694 975812284 69571690 723211174 535391183 964126764 44842652 419730148 207379164 345783151 559782323 599127960 680707446 984401467 974327645 129931203 904199944 111886089 499591008 481678799 48531484 877125458 906789201 299923660 991343942 128651365 307025680 121719150 354445749 669583134 882357512 945808493 842526923 964969893 770971767 661546998 892420899 780855355 403545412 958777715 767070882 135928075 650701967 601342907 358314532 887988326 846931988 57097967 426377121 332758924 908080788 174598970 233644379 26527093 23699049 721908956 50181910 81118397 701659570 458984342 45312516 697278082 718932573 186349550 288905538 460958028 799213048 366531424 754493616 448903118 124858986 48240048 803002389 694308501 341044637 573210503 359588181 438349446 131150537 954006403 473771530 22187391 685432502 824837579 763025401 548049271 521040555 180346435 826760745 465103544 722951381 922224298 650872067 248335934 813349521 931549960 205976144 360984976 334727869 486917956 809322779 190550194 507803113 71756463 847600076 457241019 906098165 333315478 256228612 608906989 14126652 3407196 701181614 143430805 643662935 743638099 57023449 945660858 982951622 938411984 894413523 758194683 4096391 55647249 424357330 585478967 746236948 780570326 492750503 76678812 182072730 3415454 610764607 276149296 251234285 396875755 436634131 3485657 962768761 392119878 65242774 366010456 60578484 876834719 942828562 910556602 95284618 275437205 433062147 996756981 120267873 559845722 46232836 906750320 643579693 744021690 491151864 89035462 439433499 232196507 151707690 382835356 336400287 339241653 987225315 770234242 841013306 188441319 700698605 925673907 135380303 832967911 530928094 256660587 553859956 637548723 62843780 604301839 643164061 353103889 53324621 283045128 357592615 158632371 931153537 907557628 943182959 746443332 563237676 756433140 447380253 132080026 809566928 201379879 766332968 239353450 602752707 373476268 447898592 928469068 981861585 15308595 977158702 664673818 848649837 469411467 398923317 97206549 416884770 939112158 767536067 602162551 700086435 437827149 776242288 471280209 572725212 763294117 814587880 985700411 926706392 703487078 620760795 568505643 786892756 463496540 100757100 791595300 755086357 627413852 571020608 881646146 880048248 699314898 130851635 952005847 515264066 177247372 344950436 415922589 45592661 128028583 894517514 932304994 184215854 923205445 135036168 234626695 739940007 241658840 266913689 72163116 527097784 987794231 510401165 761799615 128161207 802401559 815893568 452626151 26543039 99672094 490887126 542050547 220224079 890100365 359145564 528032604 344863486 257748878 167975017 551516413 450910595 379510489 201274578 933750609 957821282 590927982 366557020 321126298 770299921 648990142 902032338 791273015 154570661 449762365 834485017 654003809 592932515 560410253 145052151 894467936 298226082 390804213 355929783 734621117 670140300 234820555 790705101 308988013 404020426 85427813 40284677 306322056 703978703 124540281 687874983 315614591 122996808 685786350 989386909 846207833 201665433 13159645 736477578 771362321 825526541 569829574 468709386 944085576 868875590 815803097 305427250 800951021 316579730 816847569 608992213 329608545 129090267 909777860 773266484 336698630 705969234 769846701 361365179 437237339 241588995 92728056 191130999 259857767 134138086 408432554 588564562 353309938 816679230 755763753 965329788 608630559 60096963 190981760 542727076 360041033 597471186 251418822 10826541 773050421 158826468 569784704 490430071 996274523 476460400 835378655 518142013 802806359 215118392 42912539 722237737 583141887 977089742 851000738 35799691 517905490 717890614 230251169 910800718 83053015 30904469 144000259 592191933 486012389 523458437 239589196 443195801 283929941 406664678 402705896 59346838 950089573 436272717 825428630 270754929 149686909 323098870 264626536 96127563 738481636 812989042 271435273 689462645 360403185 711357432 370003266 652528220 522110712 949567359 402769350 169167490 27748338 743054822 791714861 619940973 556575645 420351361 635719153 809222691 186580026 495769815 441098135 154873681 572878900 851103757 304386746 309268005 703234793 874793445 62582986 752815649 796081032 161148588 485275129 116865639 69503957 723021530 908000956 339540908 805776017 211027347 916706682 547184003 591161597 348252912 665600269 525888659 425047800 746277205 908484806 468768647 376146974 585635210 931214095 36920829 738480891 122623144 17154409 702585008 72636704 102010 529096218 103480375 419243941 664121708 245629876 594682201 824779409 312217875 648060806 308100619 630345912 981628327 711642263 68651374 967504395 993202144 418456601 662964154 241101572 834093184 921401333 982187759 58585463 591847187 1304832 963440583 301351996 64724031 514582705 295101947 991740818 127669420 527608021 388725211 549085084 812407875 699408130 685886170 417716792 784731066 957936174 828622161 739293336 59905446 485795655 955049000 758865275 124229200 144726693 700647513 543407183 222277987 145300610 897337223 270291148 356954283 964783395 707284948 574374979 893273064 300528362 354174133 494221332 227017225 737778639 112147647 80079550 413361824 509512155 355262417 461284025 602630975 849995605 52607805 620279038 912636617 146061726 546588091 663632670 353262873 408799690 629077322 401515588 742107751 150643450 755346271 990178470 466660915 479069344 656723324 744673312 846215845 531081488 980691284 853723052 16520419 276040158 498429694 518763553 965922903 455720986 881130780 849271583 790107180 550542684 109435705 10589957 250469300 824306749 247866856 128191104 638740629 476184025 478738122 564348505 237143734 83652773 644133782 510041615 940526575 903690622 825411327 997849019 5364274 268950630 939291909 931665426 219855245 477949096 932211399 440696148 413578658 314167884 270914532 625945682 921971777 802557092 728843201 278464406 373197115 218814598 644023963 534276856 514704132 54040870 889698511 206183171 382293331 2614589 811539660 849870665 27681385 373641162 676880509 601169668 765329178 901987976 307793329 204330079 629735337 268102710 35824554 672161637 9884086 521493850 882300294 729472334 662829552 918665532 914101967 349324030 923181454 878942514 958972891 203698711 71033594 949337471 651046351 171441849 433632784 122847120 537684943 539182125 181642121 681505031 855708128 417778693 946259479 274266435 908988513 553425701 930597490 179140772 323564227 117474781 310939127 992091812 235566702 870518157 175074628 67918092 973683047 256053140 265113268 796695340 974850579 243856231 905753975 671854894 218336341 150196528 572417281 685789317 354163156 8280799 563095658 246088752 739315157 971617123 34642553 200492424 197764525 560637850 92445820 848139745 618185000 631777183 806099009 293363184 73739376 288592569 921147795 119330823 350563035 225351149 343761531 501686062 724057069 67454861 66627284 916145043 39859875 968931988 552486152 813678800 157316606 864958031 668339356 313663473 284102534 990692335 470498059 356654953 30607385 347272795 666667435 590009626 260870037 335614159 309419650 630864267 941259110 99961846 938198951 924312311 36790728 824832905 903336956 456998212 454462733 385746460 46872288 303095090 876982549 350212134 277765424 727536335 631535127 917889775 771018979 804765693 678042495 768162216 40901019 396402460 595002535 853381182 550624654 556598276 407884897 967924709 996197526 625462635 161837539 307361935 276014865 879648561 42926580 630330060 806929558 103023093 528155076 527209244 897139950 199006678 44999570 485542096 705447135 678413462 182324459 174158024 523265596 39856409 968934546 55369668 695740853 857231261 962009963 482845210 184433868 656742584 290848091 734741919 213712489 309162536 980162262 522396869 121339811 857914169 642595776 731120721 216519049 385993965 14647896 16726485 394585091 14585849 888670601 298751940 408685167 139861841 617694416 972423535 439230755 956883006 66870207 26584842 950682592 507022977 658227244 884858333 679078917 469170070 273865528 923252925 854294982 396315265 775876586 188176140 159514558 611301588 480198529 114742048 818773636 648217423 640774689 811447922 579845915 591224594 523032018 59696310 64277634 879513202 982598350 401976793 891084443 343717666 15444709 193833396 575327611 559285074 288863071 759608110 268509150 655744126 793627463 427093392 569917819 898728797 104789306 178262360 542596190 806801124 548535387 821971098 53176636 386531284 587797727 923564734 867996873 894603534 629905995 822468840 444181470 661376748 847700797 837510766 864554489 688217868 807896106 557031358 299235120 440027438 124265823 494863780 643504973 964724320 92510410 189656096 962493481 415575941 428074681 297517475 579577459 525531208 563281654 500490433 366136677 163067498 529829384 935499182 981611138 170308046 610657875 372247675 342808385 478934085 694660732 35740891 738120001 535761602 861686075 699149706 903163331 921993724 12204890 427136022 431080854 745386720 587055818 790716192 238653956 63428198 608422290 145062829 433207540 784844796 588351993 814850446 816419574 491171045 627602932 347805070 187440327 677578195 542864181 825260900 488932472 105945701 89237460 944124643 511271356 368939277 128980438 988870835 785963171 104159601 825761998 9587747 690892992 311036322 504998508 831419795 594961086 921421261 895107209 917380975 823539137 905900440 895936684 75353819 357403718 403063112 50726094 668955965 649904317 686502994 415622927 818882533 309181495 483095327 744598243 599278731 119707474 209558287 630550236 302378543 869321108 942850927 55821512 527052974 163149787 693578629 313014250 330901334 293429875 759541674 303629127 129146015 212636716 801112446 674927793 740751978 9771777 76577978 365878324 102097462 393319009 29750930 231221558 342175189 720705387 363041953 490707841 376587621 8018668 688071224 925928628 949794180 680612551 786516184 185129462 668778228 655546459 572147513 26390815 584264403 294117288 34940967 167047738 657122234 307745179 725507519 678707707 399197073 171658324 310000373 120095452 278366834 308346966 226149998 193290280 647070769 790998618 725541453 300214484 629047414 167722064 406073602 599597972 855624031 71274939 264811528 477080175 607457208 965959468 804830527 280625439 510963507 876254504 393685295 49611719 739631394 941466724 382308239 960323891 776131158 665294852 406693155 647697269 85621763 516186024 352808939 379216486 553290584 618422563 333580211 527721748 386036892 854030136 141714934 196916682 776796549 87352064 222203995 302440824 968827458 922935045 937507231 695753068 425335576 477427801 373191675 614788763 838923027 30680006 863214685 220553085 739621046 919867299 879291696 430571927 426418796 878753633 721464938 166116778 617988522 41679961 813282771 84166641 684378607 148083665 227626625 795465773 61423779 857345146 380676873 935486956 382706588 353917648 570831219 760236943 827624441 470203268 125163649 413046206 650586236 832896767 212953132 821508633 685281153 998362598 656117616 259804160 489366995 515330346 579966122 438545857 590770233 583587789 30174881 579999124 547114014 51230062 578242803 459893084 365217043 82907312 307321594 906829631 145135402 134203873 522798963 488938104 430807390 412913466 576061564 546813245 825520770 162093501 133783109 413441254 415506175 845716103 372234800 208727304 934073481 581605240 566752204 552260276 585787230 818878531 783964768 873043241 516392869 145437850 40788230 738655065 273354894 996307568 392629863 780512932 46206018 735803168 785989649 664681309 711341914 887094761 312862602 35930583 921638240 662660878 869999400 810505243 806617323 750779896 387878544 138039625 648327719 624866958 863871465 372484386 316763057 166844586 896970385 353751173 402536203 139328375 492152819 702942445 603304809 64245722 845112670 752528484 703475481 348358190 226549716 738933534 775306588 503266294 824347970 737643840 842717896 890714000 163919798 918493983 594907774 594561383 559389890 991063815 450294715 352409838 948234768 153711637 337044301 143333211 109561245 428199126 980100614 859032688 152712863 375540143 342392742 647473685 448683945 528600756 661139984 375473479 59160982 157001011 843590787 706276811 471962185 190115347 334151436 211687570 484149660 710029663 803221018 549296544 702437540 336188668 81186164 297224936 533331909 710298396 888508373 987244237 397377643 56851279 244592662 437088762 612539613 88941163 943746436 261573588 457410482 294812416 632640945 981154816 135445339 140768344 373700060 626089945 5736229 333882499 869900271 10816154 524266901 103364415 597935262 722505435 984337942 357583353 687955454 95364973 326825340 750274722 464960019 696103761 618723737 720297015 927527015 967819202 111610896 847902456 762775660 560393920 717713886 471294984 345008702 690933735 109079429 816914306 922326013 132942916 912163560 129906515 339680917 588578186 134647593 462773324 437957478 981778959 997885092 369206751 41548024 942412846 42613187 524950605 708014148 97070957 943059867 915930700 628207959 92405645 866981692 367873161 301072572 172519663 839992938 809891861 953065862 526470172 871878785 823340553 291238414 839364554 943082813 903822682 869254665 930905238 112238896 911605859 699622676 260428969 439648306 169023538 217732468 672343334 863897175 617193354 644791855 412008485 314410324 503657222 280443609 224111376 966507779 525525070 523684572 974171116 349310001 462986488 270732255 43587937 19342015 587668245 145365216 167009982 634379050 607140839 389433562 38630757 397156728 360743115 162940414 582228776 469412836 292238865 960773489 571752658 769824331 842280411 932424994 336810662 616354888 629768954 488227546 699160097 393258564 890587398 808533350 126940994 744413090 282746065 858824587 743262644 318522461 561940764 893481208 100888150 978874072 595109513 898146440 715953688 15431586 187526409 991089758 797276979 156689535 73126268 545581646 342815527 153632300 316803793 532563393 236016350 453266547 494786689 332428216 375954366 74421265 861618998 143485081 783566679 416317248 607378570 619237016 153148686 24378368 379234328 529762999 704419924 408929363 400658127 888369522 637967170 350120203 933070134 123680784 431102383 875756739 387654186 788758675 772073244 949348829 890689894 222681530 780508495 557881768 911801002 17204048 859752136 197365587 747767835 755553901 801348839 652644215 98744228 776610763 338433228 704973840 571038148 312858475 292817724 333187755 307917013 64545189 90825952 64379315 923775899 273302302 158310050 918167627 238902272 211039214 546355010 245932794 475676620 326015620 604434866 519260848 606464615 855814592 342108490 559449111 481705982 355219431 496407667 970244263 663526065 782487240 501221482 165372894 686555888 375350851 659278379 276985294 232395479 456743317 825255147 397237158 696911507 940188090 135073028 216622540 349833339 701801557 71093128 374159459 333161942 958346054 755540705 890704128 687085208 441589129 239948459 203205524 330699318 240509682 969043112 192766369 994432074 125390287 957590513 79576092 589208786 563317429 228471569 417108764 855366214 448557674 389394638 157681184 173057913 167517783 319299081 474495451 756295867 937167945 728747254 602927357 467619125 993034189 752501354 41487031 340733800 455784728 136755514 624191891 719319598 897005624 265784238 486935480 352661896 300146166 676387803 727323784 498580235 574585559 387278923 927844545 112319748 164973378 339595667 250919534 527418213 432690534 536308368 595200535 321914835 209649636 138964886 882160732 336512887 987397491 305757052 350934795 368068101 824697980 578802760 834403598 952306521 375891130 668486447 758125244 187816416 835796183 571076137 130480868 618541732 527704272 11493819 356563556 503623674 903156131 236143169 119323664 46448222 804025122 559843719 134617799 586653575 691278187 18427323 898535648 265130898 318917868 585514901 763261339 836493895 988034893 490313540 895974990 134728364 903422453 126912487 394765837 291384870 460518523 588513175 894871265 727991225 598389498 448114757 952208482 25155779 914853991 280223039 314708162 258303928 354266732 952137056 611580768 623725020 46923109 445386400 16968024 282893843 493239553 88002949 205346163 927288282 701679635 204729245 382395321 791612527 789758431 547097287 58722637 744576220 85141509 627261638 595408916 550840077 780986636 812843608 731630721 789490665 117023731 252137126 491242335 292305338 858139351 516049908 750288041 443227209 639227379 893401181 851804360 376373626 995165484 667282962 261591783 245128517 940456045 11356647 631576431 848167154 239969681 903074101 405849402 719254268 219957704 230791055 582543670 789761400 948832525 530072474 525877315 761949020 305450461 840511811 421591871 520978960 522227190 752044737 252683942 980484856 671094982 915473694 905521913 12455124 720095874 101911723 416603282 231227626 137932676 731012512 211023770 100950872 287179279 494441182 383843055 166045440 361358414 817585639 262769635 767802670 873005844 212608493 320679669 581505405 899219397 552016810 146039285 82443107 961023107 955394609 709312808 506274261 682036023 179921251 332421750 435489180 308133817 461989994 383075641 708793596 638288188 654441917 92915835 503363123 893926098 797447502 406812932 942647297 606791270 437207884 511419796 313113446 527401301 594046569 857995928 715386845 39481463 547716923 736839955 168307437 103792488 676451423 606617881 313987492 402854615 395564338 933818103 710217960 491708667 82759016 180336784 785047855 893719174 31313617 286385295 378887961 644719721 258996739 33478576 913818325 857540438 266010933 454797588 853024836 973930885 194473000 484723077 746039715 13370637 552585891 448092436 938472573 443657624 62370663 805653481 374193807 507671457 3871842 846113099 952491214 748085482 783874529 461038329 80819263 26111380 610599342 769728344 601817095 559283397 576545764 512907520 89408752 934912255 267538731 370706586 583618046 444862278 635712939 973997924 834803741 437943970 418989223 234958170 557226396 294283812 726910316 283099210 900080876 224179827 135670908 686467109 379772665 962399789 512114493 668483956 94998267 758841709 530561589 182355492 542678361 607152299 469072636 142888859 399650957 360415074 967327850 72249554 632827805 8466931 818116454 655553015 211490829 229457132 23768805 666597968 358305820 36252431 107979008 893234019 47136639 45004717 275813030 228678868 612437771 727495701 895397901 215694461 227994717 213676630 366508990 155864467 517456800 37830115 825578202 286893969 947405895 711020063 540793843 378167865 180485627 966397537 579843807 592799101 564475151 624944972 259421887 920571663 963965638 316082003 811477263 995213278 33401304 250997133 295626844 490576676 444675605 446645736 624519519 744307839 87684522 605660155 689597698 828169697 283383505 442903536 679089740 689979837 155698900 765104333 416528155 705769695 160716566 811837285 484299357 258381463 207297096 529074492 423369716 785781084 229317848 342453306 652296881 883165530 174331761 319375691 425869530 226499665 621239622 911502430 695157649 754916707 140668617 529272846 375230375 57573331 855407459 848308721 256409558 521229 979663794 962405487 275452235 481360216 126657805 451575402 851497212 732667636 689125212 700856587 573588810 519687194 892949851 18261483 463187485 6363933 951704324 422268400 348124965 57906642 866733345 399189088 614619006 562682666 319453637 248694944 530786109 349042256 404294847 672765484 828582220 848906141 8021439 930099493 616085131 643125191 578364884 465852840 284770258 294078 156019359 913376287 727756186 664211932 402291992 936815552 775760373 759331634 778053341 289984723 288401790 59124567 346419245 342543705 717496115 350965874 681802950 339878475 709653536 744921350 309389003 2369552 494858849 623304542 952846060 118731311 617558230 294656860 525812253 42802306 286588351 460005733 806796241 92737600 563820819 660520404 606754068 44965913 106998437 277927185 786192256 147648435 103848276 623989016 939198630 804357851 662167756 501328475 507743834 690362884 452480024 627260252 995554915 973091132 521294663 474439993 788225476 743078338 913460380 742597085 565979897 227056214 949335301 837251546 807774980 646180673 288226671 420710755 882813473 484257082 776944528 634562000 791583325 672564212 159090131 349951582 259765196 810406360 377949486 900480451 109717487 349144327 138512373 843336480 933830170 892724893 933109409 215994678 270182652 440622207 225736072 747724651 989962751 120321596 806976230 627367805 927950138 187827918 444742089 46291902 692818210 851170570 870507677 274656379 288288632 184135436 771652861 668443215 980602779 345891584 119017417 432614003 93992226 476751663 430221102 213431061 371050639 546581066 671430704 354832966 884399999 50428065 127437262 353811045 704000414 598087711 112098190 207434556 213783176 880356371 557697187 944463601 594863130 660622161 614516341 603620401 985793401 31622540 325629378 474664788 618987604 624946703 529121742 660415213 349225434 680615703 505697364 297396140 296787265 181438554 752910373 208938718 381190846 875280838 569677005 60988338 168966084 840721734 314573323 672459888 147053205 435039097 41129486 713912606 827496419 97930683 627123488 710934863 513587020 172758539 698221973 808300396 431636037 927296694 470496513 127739726 487495464 190278820 472679368 482163589 711908616 282706721 493473707 614437291 142147216 543070895 321024788 505186440 811639778 474936971 412171022 458644911 379638827 69881180 930972694 981355531 310523863 470589860 253953027 342566096 906309493 100280491 653213853 99460092 702741221 19901024 903747279 67684390 339155960 343836048 494359235 929001669 579645269 28243798 193817277 613559826 734550562 569472215 211683965 257089385 193640878 873025233 623469854 266893180 683249810 329545605 14926402 299773741 570984726 839577808 70510832 140424187 370152723 350854148 716725716 958169416 129272118 64471793 99355474 515774092 958119787 630989880 850353224 595226538 860640892 916848481 277409312 839057072 664456054 941740074 114435273 322393381 506487483 303974762 405261962 918430236 761957768 572464688 966648368 243332391 742154690 725552995 313192192 470093038 602065913 830519487 810446404 667690971 159741351 985611267 676189872 407122011 171464587 712291721 997425462 894216810 417301851 87639872 91907039 958778783 960404977 986700729 459098481 87257771 669530309 543903963 351689388 499195887 759705331 301106412 563454143 231197377 148568872 218469543 991289061 220898622 941370943 170190251 998328491 864949512 35404490 841573129 852391576 812663742 655274744 650712635 766105351 474833245 527763307 253709734 942207721 709124147 740710454 278245314 106033807 685214112 395758626 431112580 420827060 306002527 948573925 515350086 813335100 407178190 10800155 533528493 519484761 141741866 365864553 200063714 214285485 338711990 343065665 339918142 893584308 629486839 762575361 582585112 284557793 399136885 365772616 641650373 815537516 795280061 322728832 793080374 560518758 904436602 279461017 780976839 871449738 267654263 464499388 473060230 472894502 174981485 910441695 144414842 518051918 978527354 272397267 570491327 253257147 854365969 349535457 493179240 228107682 575503368 900553322 537703738 250778036 622707088 77096183 426546096 786458430 406557666 65457996 730313584 634187468 788345477 251230459 78487437 979817478 791780340 293700297 635129742 999753312 862840832 679295288 395967456 823053722 9354579 378758190 706947465 576051699 630886487 727663065 655740545 667534243 58085818 19021095 472531734 467869175 233180138 753735598 633854732 528224977 658024623 767939423 545289312 328472500 395082781 611977109 722514338 719869039 747442819 170607520 211220580 304889588 947908951 784943659 790786678 419657908 618725711 49527357 464404839 948206977 154439523 333326789 561890194 587457211 213604049 100634105 900609759 259956527 536702851 681700236 427400153 569902741 916681159 41169063 778016356 424700565 513468012 53568375 82746678 485333791 374624716 832344384 981374519 553195627 612095133 352052888 741115090 63599721 858515758 235383293 988791986 564928405 528460498 455285369 581409082 442950001 282265114 475260046 664811155 961594384 364496533 635753784 637245812 304377861 864987570 331637452 338787100 739351114 531215275 680343360 519637647 201046848 773433704 321725380 173291940 782649966 567060118 121482855 377947920 795409403 349892119 891573797 976130658 352061397 191231222 181409981 221075911 854777729 759263274 234228344 393853180 928818318 24213581 370067953 454139919 861460929 533051544 814034394 574962520 186734611 922622290 138791978 309799281 708728334 195811812 20815744 971740898 539305931 672474204 55068522 780325080 900158579 105295048 812758973 542446713 903126325 946612219 649308757 108268283 682171853 146021623 733429037 972463141 487904544 152342211 960002717 614453613 756930186 741467128 251983339 669002559 372811487 649612104 431002774 314023264 28971896 433867005 414119467 669089608 325600163 555318575 900802159 776868058 901239111 119057811 134271866 740631114 87782813 353317557 111390773 351377361 515276502 506043341 41050277 644545441 969368160 843550708 850025168 853571196 605366850 870190542 201776808 482311713 659009609 500192621 497939458 919540627 791247982 132268245 93837555 466282511 998993315 223264396 336411496 18290799 470362092 289192285 87126482 380967702 795622918 363893883 834523391 877556796 954467504 788106083 746314196 380257631 691441871 488143300 603273138 849916116 706869459 984867680 410259211 840322278 584566754 160544883 854221429 934445260 990542502 664787075 792426140 756353767 493923530 719604955 554581561 221441069 939856520 370620234 574740312 993448630 424829985 860089275 376453714 587731443 448119505 580614050 357217359 354895383 706209678 154632427 254210119 442192792 697825008 561765179 725122207 168643412 61535637 743774073 196248848 6012240 256537966 187349886 317077715 28531298 850107403 800038430 312972080 474633063 197598351 261218080 442384096 446788042 271099384 290222563 752028825 51948012 203673192 624275927 146158614 36259822 134270158 597764107 249787760 308458612 681699337 936744155 640155726 275539513 74875587 700721895 133241890 257198306 100604853 763649051 848048743 98672120 861730953 561601061 501986074 346129164 142380700 502272043 235084590 463202210 639313372 557949563 233503229 136846238 509834265 511850591 854854510 381040713 308672427 395804804 528634529 331455638 248500089 855381914 696228916 484891506 52470334 958602452 585797884 281901256 706854908 859668063 465417699 419838234 610364109 24023188 724433317 8086773 436042845 706151179 691195518 767106337 764004601 489963733 639162071 209210615 476434934 547087115 953816470 751102257 513279173 887821189 632984408 510665605 205338757 855036307 13807171 696116678 48289647 998304760 159579957 229714280 832361650 15736517 952293609 367764632 885760673 591443521 101068024 21530628 262448744 952978098 559320736 543287848 253263874 664917225 232913749 897758054 185586682 485285513 381497833 549531105 871738375 434581914 524230670 541713814 900835202 194331755 248124455 964908560 466832539 67500922 254126590 61445957 270923998 390358959 526611533 537043189 954333367 591118847 286160022 703452376 315275318 716681286 674033817 583196216 429176332 651703324 894908780 560070688 579186295 117577640 819851101 740561578 419976832 467761264 980197434 908813616 665495430 800021309 150385710 964063756 958804265 301123304 189303254 827884933 207375602 611788909 71760017 24805260 736009461 598202312 417260638 74517865 442108542 701912445 62733663 34802146 979653343 814497972 198522305 727293819 861430205 468814861 799073207 155807669 593140351 587619943 974223673 266295005 886767874 270814847 67997440 669736632 960095101 741141566 799459932 535295294 848600081 74956072 769327171 935894418 385697640 802636092 187488755 875637558 788143160 562666068 189181539 306545432 873541938 15687543 69676700 406523919 851212320 708936365 957948335 137351012 907981493 558877711 868125828 136916686 786565375 851067122 519743483 616809968 122166314 749381945 456866192 950740023 323636252 238978993 761426389 74865107 175513272 145124770 290639287 156930848 121682300 643200224 285161390 606626900 228371525 780027268 266917638 81462026 407806460 774780174 411569434 34856919 882880280 578471753 832931763 735388111 739822933 295975855 549652438 14891045 922166241 569308623 95302573 528036685 41179633 698527071 401085160 403597259 223612554 425067271 935176179 110004909 582017195 735801971 59755642 634488127 120606270 683830864 510470795 423675288 675176215 104962611 572402524 271755216 372456980 509236720 274480061 576583249 320393316 364243388 543663163 16908213 217519057 212952423 155212618 641328352 720974226 143907215 676763460 719187392 385070110 517187286 735944023 437219548 574225753 123749545 433738588 279339646 312783204 394483736 836395208 218497419 504544158 929559127 113455158 972550978 604343975 460733087 21296276 120889111 791080541 117954463 883004693 316336799 92365210 589783454 486872664 279023364 8364127 607555068 968034543 266563727 609258108 114360101 154954699 549562897 824418036 848556034 555961474 874897268 726922077 760988692 406263167 489820496 598102857 821749206 263211240 274153293 899413249 742942706 861292413 62868096 28985761 370007550 91766596 956404547 248927698 733410643 870237139 515191819 97069839 468494001 860276272 684197404 919273002 247118657 418085014 794992755 579984306 348483462 865515150 51357397 442613180 599482945 975950797 851589165 608681817 73680882 299302826 704780342 375343359 630633768 775609502 833487610 711000767 557411786 721587028 115838789 329236012 207972699 847150625 186581976 682212123 389226690 784641457 292007871 392542505 858999179 989178106 802957591 649789627 142617349 85443067 682023817 479467902 806391084 875747130 110289554 266354035 528706661 221307575 462669691 198060844 885537875 308309710 284731481 27049669 665165229 629543834 865257143 638220670 431733469 163970779 721934685 68862311 406329417 623954670 212336553 353307029 284681026 36399249 389053855 882873205 700200710 241495137 52086994 919124933 424819277 838640856 173600964 109336787 673297125 148355807 881186910 446219857 426902001 670572548 502176837 633491130 516017952 943972819 771369164 213665821 237587169 416641523 446462582 662795171 219996522 461017255 762895986 270496862 624812672 254318337 141318164 509706230 232551346 582694280 117502821 854856942 573243466 737018977 715948192 300604581 926541511 909432587 574375680 401907451 379195959 374675269 380355623 273797344 742716388 721608286 190285316 964724870 182861629 953552636 842932735 220856131 854706840 721993748 266891262 851633237 671894033 634562086 810934642 430039475 770995323 7357343 395118940 663925694 941360542 987252367 193602381 31718754 966055247 921739852 929727976 660678082 959043621 406533113 689508302 42229742 124113218 732472404 826708715 87051063 535523176 28816859 845176406 868293804 65403956 592094626 372167697 793923505 939398572 962713060 512655687 509484302 655805879 886158323 537114210 429337980 132449763 569668580 964297186 473164660 41890486 361804199 919000589 959595056 767934973 484491208 196788272 455936767 123405280 595369664 865771817 579408950 342199791 811904436 23317227 848284354 829452177 82363457 569833086 27307216 929381568 552606068 746675823 631169776 796502031 572189917 805778040 137435826 769820208 107569716 969433353 754044317 295269340 699944767 236754939 217255416 684766203 278305489 939998853 125935080 821980029 765928904 880064544 390296208 927590855 288249778 810476272 148578374 372685123 626493250 602417796 158350397 87989920 804544954 111604533 512377721 42517243 199870991 134056215 869807697 671675067 353604666 84934213 279605794 130663315 702767795 382206545 737236914 831223284 318536368 705806766 778938216 596213274 188289281 61024872 157958783 398576821 68564715 577948516 742098908 613502202 658617967 943770028 611777322 740975768 769006849 208250793 862939172 354041419 420918385 811625817 742002378 881734726 941224657 167000816 300928698 912715873 684507733 834960073 20936522 697619522 412369441 674360246 539569072 651931596 89327914 660467300 897224995 679021226 635324080 134822305 274979779 902545013 410607075 917988826 179200782 58247043 864053315 482015225 148330447 715606918 100295046 943418760 253262835 204181583 532001099 626708409 74725588 180419666 564103129 802432984 271530086 730617445 653671049 671752362 569791059 806206135 635079524 462650576 208637316 805871508 970270652 996845816 611307294 131503739 106103251 480188786 501976083 889930340 176005891 144734064 282988894 593830040 632375458 45744276 397940036 290148690 244931011 958864677 995699574 341792875 389922585 598551331 718998898 220605133 843493501 187566126 938664114 498829478 573498627 613717858 520561517 687811480 390438223 892786236 545082228 680326460 249150797 141413796 594640896 359158248 622103862 461782726 854002971 172171682 245917296 176398011 731293290 637137409 277818179 193756723 393906288 962800456 575723371 227908598 232713181 476499001 981188166 581579901 447716979 797441921 794533917 539605978 932673631 22423129 318950800 971350719 896634994 870088767 209137976 934199814 297385623 671001294 880508384 175486211 78838481 140271690 583443774 343809988 807837918 236002806 409475489 562730144 951090299 934662077 596231555 907455589 802463183 969802771 444467309 468752235 700838471 270468699 477525853 16582344 809849387 516260027 49373631 571120263 502372993 265813656 158561171 711439768 584361808 658611370 606022002 680504141 942650385 473429235 694284713 874570969 61691250 636618865 515877724 256248262 771412936 77125487 216186691 581263183 12264046 988969399 364501624 574021918 459864134 141270495 419589796 144049763 595014355 241006352 910257567 739811567 230230250 521459407 683784898 214403411 758205580 122247282 876654538 765152315 926309837 974166672 369732599 972852433 159007819 868320209 5504644 728431546 160521726 532299145 395763414 439889540 592373236 793637349 18321285 646388586 948983789 96132559 734349617 498679793 570088406 70646531 931122677 35055712 204907392 710294910 553626754 990888655 919316117 804810020 969323335 606034762 604755661 568723630 853410259 233716464 344776464 551886052 825601145 170324642 150407465 923533057 429620349 40576489 512513377 604147447 66002292 295118811 250665848 829301529 163607313 858617446 384215048 680218273 107612160 628979691 711622544 899409218 91786610 82218807 298629 858438433 810325938 636819271 470015723 968986027 644755440 518079577 244255639 551203915 77541126 407957804 383177863 529076126 511464620 805942873 955318137 614037361 284914604 553401986 691099009 821321630 182910629 419144195 342526504 327229097 563533562 318415955 898929306 164257744 985966625 318191393 205699481 116828232 553186808 180702508 904238522 956487309 273637232 276471735 176869109 275965633 985878963 833777501 877822425 639608250 180944390 809156524 166533947 915797839 388546807 907772707 563382222 732415475 213576508 556466699 982762150 495425230 224080061 142388226 231457743 408438209 975590596 137511198 973708500 45346953 137518661 75259566 860669394 13773761 945941895 274222767 220775693 90463690 225122680 252498728 900894910 441894974 73879549 902881292 690168079 199516164 438617163 581622706 293778127 24693074 509639173 623758819 597921215 62258556 116935788 819335739 828365637 909846674 571154964 502298494 389082491 963848089 79359205 181028445 801399204 721396048 762876344 700467217 50346107 439132412 563415940 867937671 766254329 553427327 751858153 429082455 688945244 900457930 50824499 181855226 99118641 39947705 242743987 967642637 939824993 100499028 825809015 190032226 109602937 33174927 565556108 374026248 80563497 609222059 721275536 672538719 414803833 972670298 27771234 213503389 134551765 966378077 806146942 254712529 901758649 554669636 230582511 975449516 702437399 588956735 525446292 880777562 284577705 696888130 882809540 428488222 810691837 127739938 617087835 325973067 803112499 837379708 47343884 235930094 671417308 363229681 775157713 165556035 226369605 990731325 84110527 888651926 45835935 158071099 453181367 39802566 923150616 173325513 687898451 886858300 951355210 102472573 440795719 915773836 326278299 326009419 810593732 644197773 896068841 972605801 223364227 824599856 381768516 369179097 770347697 149989273 751638081 38959144 685916724 690700912 375451423 702376058 797361894 932598905 605783168 101385961 561931745 636144877 83986662 683450720 417636093 710402614 418263637 532600684 801295280 973714176 225885258 104495004 236584609 61221402 756141812 884112627 686868505 409625103 937910739 162631294 44938848 975420396 210160364 645493156 568370871 43452261 139969240 941969665 513938929 582653048 183720143 862123902 738319272 777600984 763821542 190882082 436352486 980262300 114214915 288172931 806078750 567353161 308358936 929249153 912654275 570855960 671830359 742113924 493651890 182027045 139479491 486115512 792328426 149462696 916088359 940022654 195197616 848117565 434676561 113396857 282365836 877151385 706554828 737597554 466762894 235770981 670491457 915684181 545265692 580743865 800342963 537823356 363491771 385773674 394474245 237322647 359352239 652829500 197731181 866695701 840574468 934228126 554044895 376346309 775588094 161743462 620885386 312556135 154511842 508650502 232248715 173200839 444964770 275143838 202569030 836196797 265729439 383533305 668797341 727454310 990241002 131255875 980182263 561204536 808180923 225589952 720770693 693118334 254850426 544346850 607770719 838736792 599353280 951339526 558214334 2112109 842478400 341460994 479863241 620350571 863482611 367472863 53636932 410469863 695205150 427808506 16305900 343373690 467051172 958209286 759022257 882006965 120567594 245988528 959012058 578641835 826197857 594974747 402930141 155051364 479213801 706652650 292767873 934859376 71602677 526470702 445971024 336317589 292653916 956349058 966785028 867004037 927072336 122828656 394663141 828920061 407499511 655494497 94581103 761919485 517219156 966489072 614346857 394460490 313078248 342887456 404263232 657546318 911430026 259727716 147085798 978136345 640292235 198341754 317527317 579380767 656112961 454564228 559627588 385297440 672121069 354847859 55324125 160531991 614796043 885735441 886856943 915046254 551851869 118699249 45691221 282617732 440513270 337687074 952813321 498064989 390427503 23358959 968913667 98454759 960936999 219626066 294883901 606487483 487750173 125237402 876625681 593796381 473250209 668457025 553004048 684799109 105990526 828969717 713510232 123478282 876166188 745129327 944798533 836116291 340597841 520415952 217320378 408618927 745063925 460915089 148660540 234596224 61622864 774039730 718078281 15261898 290698367 224346255 599185502 673789696 37640069 330234325 70449478 452447736 712754388 738130263 211022887 392106870 448583427 786659567 607857611 899965606 399332090 64605848 51735617 545832329 727235547 217787103 751458405 401234727 693300981 49010097 891879702 707531959 260178964 786634616 37566010 911307578 757528207 722334030 452358814 105972307 497526212 181745198 715718096 761370278 698736341 443097404 789736627 113861008 768358300 203277126 609647320 160463907 5111558 546343654 880679893 690772364 988681428 897647920 253179065 189183301 424685704 680564332 722226142 631003357 50019571 416038818 524358912 348674759 16270175 454243092 189702755 101868439 644272911 420726241 618166992 58149267 272830793 432275308 484190248 916792102 306644163 816126596 286902509 857704120 701038511 22101787 984239161 547479037 612237138 435178727 746401179 523508455 468433498 497838378 358736754 70342059 439604175 235469429 927101318 807322848 77108107 561439258 397268837 785835767 571213444 897430501 704934822 841486859 443801425 55383061 992806655 296916258 797513065 196443034 973889977 566299787 892975729 864616640 532812605 247621843 106697971 991920701 906675172 281968164 655033582 848093511 835012028 218298920 711183328 34017998 144178346 261847092 65720276 413814846 953454703 815292889 153940353 320125958 154686520 879283363 917854686 233189401 833876071 22501051 756069588 79134020 333271340 654594193 9686636 724939455 945786657 387032892 826910880 603378132 413638418 524601112 446888544 570512138 411606459 190822408 431426996 144565679 41860447 530026373 793624237 986288347 76009227 217806330 302280487 676857552 725620212 625649120 207613786 595939609 900333020 227297958 590423965 435878156 921287198 621036153 735644548 247556482 358760678 488313498 338540875 342863779 292609705 542697183 104665262 930250548 104174622 13444718 944684917 711963870 451753905 717166027 541618960 595145699 696584374 384807501 367896742 930123369 162625044 57435495 369510778 897507663 43812182 670630572 27141767 513094449 64145632 393411588 693296554 297808026 969868409 1252218 163889830 80346732 727991471 223409484 539512408 426111481 696835837 691565145 919426793 979862712 370029355 60667736 317912658 37876288 433800570 972384653 812929592 249046162 660087212 244922514 940216953 760426259 636027231 31994049 535484263 822176605 417145214 670989617 86205143 83785044 919707014 212447163 223964247 816139042 619933171 115782013 908363392 434665091 532727900 700543651 725622329 924470744 547047539 898421824 721001623 510113667 582387022 235645802 880584889 664781099 274901695 379221496 68428797 556815706 397042279 792266475 803051231 92444434 519467698 999781028 458320340 977337639 273649595 200728850 298199644 184526630 196492382 318308831 779550374 33878584 570140539 716041663 904773242 573527931 886547466 758495681 831966289 436558614 775430201 813809579 481827451 561358181 730572843 241458876 688381884 63582261 548209351 13351606 71435598 336852026 362501296 518012522 481719651 829553504 646227888 193771130 845398203 755908445 148696528 473338420 853323547 438183822 502190215 325967520 918740083 471497740 525882570 441935607 540189733 357900668 622033244 336765655 117399991 839972435 864884887 511764614 492432601 170769582 280142318 722049885 586708053 226170930 285002094 760757472 283553932 971888644 249425951 854703095 51877909 596373358 255373687 260743398 592422180 514811567 554093414 650917912 418977428 643798844 217199834 779921448 925292698 277238718 805370911 819529178 774675095 632137633 344432574 514441754 503658237 528385460 285229662 876289713 772512922 507331882 394004914 161838330 968135585 912514496 603025005 66819593 752567835 321563307 253530744 97899975 469226749 957520333 43072304 526133607 888557985 689245287 598728827 95138897 992516991 811154264 858056256 699899670 803635294 662785941 989001529 954138881 573027790 143580456 903647545 434018104 157644514 438946832 299860093 386365521 57368763 185090673 983268111 946888711 616344338 283158365 393072929 542325801 638799343 990517373 331668288 628267999 299887867 221317949 438045745 937555406 115033361 77703231 998362510 586644941 867930494 124130292 37079386 745385572 379639276 159269595 702601986 997955465 975065620 836660310 553622976 684348262 902235114 897919081 772279370 546855921 329412929 466298830 321758079 623321175 273407666 399174602 90530221 224120879 436051043 491887347 958368422 893715737 78841478 558336754 144574120 719592796 413104817 520119874 968958633 328522820 94873458 771098827 277339748 564172718 232808734 700430640 206763345 364555175 849484933 292208361 869136640 939312080 837266054 36228445 853694505 329395405 291599901 915304505 145896466 949122661 478900790 972331594 70368058 731702824 472425233 803009738 99813183 179303563 633804730 957023366 497441091 786330535 845140907 522313057 267095471 687951891 444234385 436622460 295218586 622153709 661379878 970789389 481546299 176093697 252381472 140171427 689516664 711686200 555869962 350688556 147260772 82421907 701845773 870770349 298735737 331529782 804566217 708739623 784910041 94190665 659606833 88909637 337450916 729860386 59033567 810842716 762576793 717354909 15273332 189380641 336331031 609012254 184367335 455244005 215493349 929752415 5608803 583890119 557810515 629472699 160632874 525898454 624167577 934011848 540569352 463868071 157491816 305883578 547753906 302706824 657392982 142832356 326108048 482831463 323128493 575851088 153498259 787350203 799297863 362248186 936558588 470226242 734026681 350970542 849337299 71134790 669687216 467005401 676344986 150988147 554646612 392564506 278682071 584632284 747136569 582771280 605947399 421745571 517326700 771932402 320922780 131775743 281405698 324587651 465300015 126383062 494894985 746926027 981595310 740223999 711851153 317455803 890723985 799880563 416863439 610984263 266703267 816883574 896513104 718604134 144964568 233865135 922964227 801281597 41530143 847032389 619174125 127159727 129307155 512018795 864983547 752397699 105375792 774280055 698179955 218763120 85731781 955581300 697347264 897325904 327410071 859552338 655096019 755083622 923841108 217624543 75516346 912516779 574994992 293254784 267039777 893306355 20974989 722614194 92241575 645881569 703114309 366255355 277827546 331190024 852985697 472469109 100694332 341526371 526894252 66121683 803264509 899927311 920363064 257535792 310426473 843179222 489328114 222725672 258844822 15572588 394459436 988263187 265695222 82784786 200866282 844615885 452160307 273004241 605608301 372384778 99615092 202097011 598419379 355938786 965048024 145120279 999239620 992771668 646338213 866531441 371713368 235706449 94724314 772463948 279553368 226739083 477990170 61264595 434348468 331848598 67947963 538874320 238278606 952972175 378057189 290085750 384531789 501915812 654503092 45508191 547961481 324748556 108242863 631775841 710328718 994633050 275577886 27824648 79232414 576766042 987716451 118094620 20187010 49558966 588553499 302266077 912731741 28632649 581754830 614008309 212334815 677507769 783715084 235302141 40596959 903034097 128480402 900608757 713200714 812744599 790769768 680483263 218785508 607150804 795902033 134391180 594105853 523046346 505355113 444367960 137846147 59077027 760050937 735373639 736305863 965118571 189526045 687403241 769817335 258289453 655935244 402356863 711771009 6262614 334464084 638499371 23915245 818076449 212020054 211046531 823078270 323012428 141612654 966406920 865649496 994727177 311798495 33556244 897249196 590708514 789508158 969834278 903261742 735014570 575859203 768364824 892859793 687205560 587185771 859565099 741610841 686457114 865521125 446470901 19424754 944443021 508270625 83487245 569973923 937714679 359530116 642614444 37700079 290950879 404248396 34636876 385398616 467821616 617037617 723432654 551800187 921362803 486285922 549486856 922219977 886890043 197382498 350432992 601335580 12866261 286416664 95251094 694079681 283263477 663061307 854385671 21488486 184722091 912233171 344461984 916228448 250853349 109237248 782370560 780317057 112211469 344954038 364140261 459681084 741754973 556373843 419617705 726760861 911648536 434458414 312819689 140928267 787162620 662980972 57972573 23191680 179222646 505082313 219647120 370229625 178146614 148664364 831469926 669270773 859969058 103690791 623209072 695427376 230745145 916596866 8239864 249360013 152218367 326663413 83765184 792450663 893697346 224594533 666622114 370744926 976112844 436395237 310541470 272858445 383287356 418140984 927001918 925245781 917743846 800692510 893852727 613017703 52884409 624553090 305902593 426443429 884628845 862914390 239558328 715245576 67972029 525569035 206927182 79101386 612253649 512503950 789960337 925992692 706570665 316089530 966243399 914807496 987971025 732944134 463459329 285039111 644358734 221940794 298524217 628934526 375579162 774243048 405668969 255737792 458727006 14718151 305282540 640648526 309114875 720346099 346013296 850491429 958073980 630241056 612954058 778310468 749570814 959095478 809257564 680157848 532274937 662866225 242243502 734308645 335905979 193795203 801638116 364177539 831641671 556237782 913168150 62184530 541109840 159270197 695524472 41720385 161586910 321956747 485032759 230670273 823054685 678029102 801314732 739995319 911274621 133177500 914842176 313272493 860224213 426453224 557584085 942714433 232237389 929185765 943191746 162890834 42736136 185368849 977764097 974190181 360967390 85322251 82183888 568283804 958105176 998738348 951198790 778354581 661982838 264353561 250540061 917205723 43861910 477999330 682697835 402286312 251066858 757817176 519871418 183881159 453022422 10841024 805606543 555856573 714975633 556651165 76254906 178892804 724927506 904142471 329273183 676059376 474561282 911134722 810284205 929235064 613211392 335239380 474746916 23770892 777965102 104221230 868968766 127569532 4273012 153727918 91127415 556159611 575427346 785344718 932925771 506232175 26836304 837729335 842796148 676896258 493899353 428352121 439074099 81080720 421571106 444912032 835836638 176428341 433826416 342575139 93232488 155480243 76119748 287789199 173799082 70950813 426082137 641051867 804641698 340032454 660127597 354135845 1101366 986379148 271362246 574160869 472557658 175225997 188259072 305114699 948707678 921053541 628252464 277300161 702979201 421866494 31676676 236180695 284196269 774275475 25326439 245287994 51645999 228056143 583392002 257837709 976147933 82651810 778483791 889117661 679602574 428031903 932962716 772856151 789221391 231465098 149415663 162092681 680897553 84225398 122507115 368793058 190450424 578342751 110474166 915942907 410342991 46634171 416559086 946560148 472098630 984025298 457378221 844245524 682050313 657132745 281166746 79788609 975657850 662389380 325708604 935865670 588642635 276782563 247609369 309893760 46452319 433457159 555331538 693984297 35266805 839224360 502144331 120484516 685953246 796474765 815829634 986254981 900836245 387989227 858480885 805438062 438334873 80574633 148298804 384442661 903612492 554855102 735010884 814743453 782407112 870788818 349470502 631689175 496596665 22533955 624388355 832498204 136515929 862369448 956462160 825417982 934796214 192895123 890117752 821645710 870949439 237703904 838843974 7356285 892319956 177668294 105303788 418111902 924322106 843671700 955553313 62240621 815708348 518875087 630488424 172481534 906912171 812397928 853140979 796358596 430409541 780619353 117706069 783845697 975971261 684756145 281831788 453283665 374837975 512747165 785406124 992482513 487377170 613596397 274588009 130317020 65178755 523896861 835417282 660786652 153652871 35049033 16405078 588166071 354829101 88012841 887553874 915150971 239938215 767908439 890036052 498240578 680493563 122908457 643956051 484734224 179219849 126561184 528107091 664681424 897616207 124494775 833185449 369691198 171803274 232874463 673637139 702644468 217259534 546141401 384629112 879718039 503713365 345262619 765831172 858768066 240647536 976540237 108517970 950235668 445471550 963721570 225161880 363127385 609726080 115375703 144629653 793433965 813121548 347248502 528980643 104375492 658392397 293311677 437160726 390159036 372063956 43353687 62016760 899146231 83361682 126162230 311595656 813601336 609650536 525341488 216327894 56677694 270286063 730324553 553499587 196302262 643279008 935941886 161732205 777137398 956322781 729600420 874994066 917971356 550882727 479327361 601257712 146472268 267050191 705065816 137098043 960681625 93296924 658647955 25056165 476564635 237770181 858849569 721836851 661087646 617412656 757688683 263742224 784228183 568026358 440720464 252851642 453650409 507035033 833367323 587587966 437059780 982190842 636251333 925649117 366353669 852276332 418242608 3155864 793872063 485439567 870922536 258878189 529080530 726695702 986046006 91843194 368745661 997046079 38281935 458514366 415877415 523818969 810019061 653161556 454554334 383402669 437099498 557884951 11856433 648510322 325654353 586232658 361310496 786853038 939386280 644655966 825153017 415172434 550459249 839112621 192941997 359919380 136933137 252007884 937037348 266028187 707426741 490411550 192930360 159191305 246777788 46314624 319412946 348683551 80055385 857522910 375602684 658354486 539450107 794228204 409616339 444893316 781102604 207461661 744799109 802668984 532027332 68744926 18057645 74511055 417029436 953061498 411310221 38159655 408415805 37616823 755973019 706805958 260847819 93856470 275454840 107964625 610166446 616163093 764618893 825636597 174820733 201045375 664519687 37857199 745469836 864150564 152210508 431456387 678526971 795166520 571807920 570352781 855997529 349111719 591284743 887293804 699363349 7076575 876326896 399976739 460361006 681916645 587411161 32841131 39546862 492514022 955318794 249920220 763796990 16549773 546860365 770360186 75769565 393539724 659468680 473774422 514278338 40436937 899750571 814466406 716466532 447242625 491111527 233177523 177561190 980664169 498462906 944237388 959405774 849405148 669767913 183287932 20195503 814007578 629869587 867178670 249319317 207381615 6390224 378512171 14677091 897574725 546763616 408922002 530944803 146247482 611887209 288004453 462525783 802851406 820879341 997636602 910505167 105127379 85928982 433816322 274200247 448334977 230223696 733816636 303883733 993669191 71266317 525797477 216314468 184795274 517231367 641788911 930509895 325185318 673350355 518686734 245096781 240749513 972055924 462210570 666577516 715862022 287453856 910334625 144777757 112634499 813827850 169355723 249444004 180974448 270299476 154092691 274935968 340552905 97447730 518250135 358258894 645778955 525567901 853286411 889765112 665220778 517592577 227081138 490924267 343004399 379664833 876530577 896212201 161560737 417866657 685004589 514011564 238126890 982149482 71320183 349958314 67993725 629469626 877474303 385090895 692735823 323127981 792575184 809131510 79557361 217018644 930476754 749191965 757153597 370150255 848371150 512037083 134795464 742368560 616336078 441206233 479062905 661409001 821793842 906040170 357107617 488345374 530118144 812966108 513972671 127499006 83214698 115411514 976423418 173205131 283789261 684986216 70608184 305356606 685761181 983820302 705900582 736665827 614531381 926099462 673920735 476506794 891442290 658429650 129507243 439949476 492378766 816869722 931476027 531314641 106560080 487681261 8989749 263229998 820390908 107231536 977532927 824539484 233516915 469686972 6308213 839405264 620710237 646678412 872691838 681403346 988632666 44451619 192050120 599679688 988831795 877308732 769386354 910939281 960904301 696473415 329552200 480113712 249690051 857347192 680345512 106897400 54729779 675451013 204560648 165572522 289863628 169938147 371578279 777602106 582589182 949057875 43137945 2814881 186865932 682797744 207468084 469848591 226533234 677477321 570816834 321897892 604066056 44989139 494892898 312529512 793724011 920039924 410083188 642855074 766909842 363203654 775538895 841743045 807298735 65658923 553250141 613916306 811141976 614411624 733790140 954612442 357462769 778719168 312415930 546261062 700828000 139689850 877249161 576379327 924255606 881395127 97445663 771137075 992112387 908823098 795516515 632059989 752008341 697595958 809420771 898106703 680344468 778355218 694027375 884187432 755239010 830881667 756270362 525883900 778582305 726630531 865655644 748162634 69298793 582119555 808236636 691245569 43902503 894080853 36177345 225810255 847074284 952446807 253875365 360156842 846829358 149931228 226767219 599369196 429288959 1590970 284433567 569278580 286285359 792316954 961232260 493109158 893657082 858373958 305830936 685624650 237618645 834251492 923818800 32516926 908768750 92737301 677301196 452175010 24429012 732847911 153277710 232407308 32102879 763414333 640695152 743712997 368580973 88116705 415160894 71171251 187475383 294550073 90006265 551732999 593564291 789271344 923982095 202115857 568438785 46594317 805809815 682806183 234099239 491700912 620312684 557177977 171042182 45698953 498498622 479302018 286626213 908137519 290984161 567751970 436564172 94042076 542181067 145193999 116330236 978520918 387767710 448591999 116752780 217368654 641168437 588430055 524714305 699530398 245000475 800622441 3424940 977792947 112929239 429109880 789498595 355125354 160508342 267399175 532470457 644721700 899887557 203421897 448490589 850285552 794134030 583961834 115606892 372403891 54261043 915677846 659981514 398988864 880236328 866037504 865346443 929180413 515324882 186270227 60139817 162033980 891209537 564882468 62268285 51507711 713486198 689895907 966548282 190416510 737429923 525349441 480946654 488776977 925697506 135054081 47268797 909644069 139491125 174894863 976062365 105349555 628523226 248809470 887423098 876963168 535944894 851549911 842759428 945974922 447365074 11265979 15792338 103567863 281567133 329834014 575109759 114773990 625272824 55616447 465993003 324375259 627397802 389390266 859506366 290213893 234968018 32488623 115032984 753398450 364351608 153211048 705919594 51585973 705661301 448091182 75882083 995687919 626562174 384222501 78336796 989518476 734027446 294121417 835389612 611182411 789817503 382305556 964424734 778916817 874916350 374652295 850539589 47771611 921287150 655003148 929346884 693797364 392091372 106926897 831749095 357618296 694526471 667914750 802052562 416351116 10419942 852088422 678670656 245398307 672452300 599039128 623674713 107244962 252540998 225725157 951608636 325340866 709221248 909273423 813194095 948521046 237647570 977970816 607345137 675692568 242075805 622542342 746000458 341879407 883526715 690853605 879153958 226772782 87475687 80390313 123011088 764828937 315716809 671102214 200783733 978159225 400360118 423158541 724037811 73319716 219238226 52895941 171882850 597704711 688111710 115569361 977770290 953858806 663797470 277706556 989649600 900076896 802644745 833189579 574892834 53073501 539753596 789240547 783219864 502378015 963858372 769059986 2995577 494672891 808990394 575509119 691833707 168713068 519343611 873175672 456199693 806340979 47645476 106884093 750822881 538484666 280063838 503253005 505428184 146554468 960429559 395855859 372448684 244102810 683572196 650402784 579739573 322491583 319032567 271679780 706127725 27708595 167853053 759262475 608074174 348533127 625351411 908848870 186951799 927118617 385446153 783151700 631239903 250732117 175381015 925541568 31242296 529255476 701691374 259570355 285055598 862048203 910140304 120587355 287699680 643160588 521756094 867002001 960029709 993960288 76173091 359021335 891523418 274194008 758732269 134431914 358780425 358294386 830253466 892816137 353034676 860203533 458498100 342342776 375873490 344847605 327447609 305038401 462970249 497471943 42140094 332208755 953662474 398164358 650024361 904504084 878879999 846321221 45592899 997230939 990470818 282583849 122925591 169102558 397224997 20822149 851915221 848076057 553495344 614654766 150764374 792253131 102825364 327161210 358969394 576082762 74884145 833620789 56745277 225408763 861656755 916477575 190922405 439962282 292367425 152095709 2874501 748713091 279966817 672606143 116808714 976143684 62225564 135506919 505499470 125183307 123451109 337139355 64018149 770845701 249278289 596624126 473984754 317468344 266454097 693331809 147114810 181326961 975864065 721015666 614850114 584643659 599743785 821825346 278259986 890729009 794141798 844216276 696762654 44552958 318364764 101063416 955821221 567621001 305088374 608997732 489689387 956429555 533209385 194740267 549839195 812271001 560420350 740677862 511369155 649359137 564201254 949970646 892678091 246711608 238972091 753600088 894755516 63305922 317956070 950033966 203113841 527292772 345733183 957358199 312977521 950761186 292711417 577244133 10861334 685006125 749431368 684452438 395201528 22360154 515696350 462357782 132322743 740445293 20751826 206339245 410191567 557627077 377709638 567760426 144306039 994837105 297940850 648598561 626372435 949125720 527007693 684010089 35134100 923948097 482941822 736221095 164000190 684877109 398948997 366935597 374901019 736847850 940661888 8144425 69323072 335756954 716208882 453357523 279664618 467370239 322146395 498222811 604779106 203673897 866029725 259522377 376533685 108179432 558242183 106889232 798322311 261644426 886185576 149906125 436143243 39425532 788538734 479168033 810241964 581318234 211223583 493830504 222375757 469834084 225706627 447314778 690108483 745136089 331582735 696213549 292266816 396371956 773136963 229717588 728157141 303914809 467566750 882042038 446422537 876028268 811120368 788631911 536846854 857778981 322670970 490683312 674613437 113421547 192932843 871824256 524014956 495544389 303700817 187366808 882932322 189199204 587064093 72654357 530637934 281291007 538696540 205420891 210766480 412837311 799448157 912537418 326661767 759424200 55398219 717248878 629906358 656041072 656614592 497691871 547214818 774924433 177611918 438516642 565815746 63840293 978255538 197789792 71266574 957842327 168016112 388818472 963608144 831090951 634922376 875325474 521758052 329036861 711358686 779709166 904832246 654462674 896596278 450790913 498902994 132900786 61611088 986435627 543494422 876168977 162872145 147090 224496558 497112324 367910253 736030176 315955615 523975564 421875006 220419326 722123781 769727442 233543674 368709857 570712424 115523266 133653930 105816609 420162699 103884095 264825829 314837239 824993100 6250486 779975532 960199909 163342137 984267207 71759465 737475761 223024375 111900588 771257395 504662562 207290413 813688805 613349565 264453334 547437465 770764902 579933200 425267795 476619611 60049080 600995820 950404153 800292560 300511123 403940570 118702905 845352296 775525400 36456069 439272196 277557473 953813822 254821191 600078594 549588100 536970344 394394646 97265974 350778702 884970614 761924272 811755457 770294860 353431202 631275208 95243106 53052045 322852786 542652923 658059334 394221273 667647518 978052450 764006044 435603845 467931383 443978794 813065433 406810618 303254524 640640157 641465837 470685234 949352523 372225022 264544489 757640138 615108408 740232479 346157627 917829237 185893448 283348017 278320272 757808778 402807801 566877739 102158486 309595974 763097781 186995825 256248850 567513473 551484119 924533330 781748774 657618408 986571114 514378176 551841310 363676586 707609730 18599800 828035509 762146774 376118197 107967631 386080049 823359490 375891481 80569552 389755911 775173587 625011268 803269966 985531973 905044018 216740782 837187732 482664085 26691513 105313959 848423339 458465933 25136886 558027000 278340491 759200802 877634947 431021352 373907983 550236989 188957345 175579572 903825444 383921005 915170563 120566721 120059157 331632133 615293421 228831502 704624228 695534151 422898413 980340502 61068910 362593020 910333145 154834359 385854629 861377213 501937876 323813164 773903594 758275918 388877885 520357339 398600355 595711556 322440397 57320773 396358030 263970124 119537691 977514132 122848499 400674084 867843182 888241928 177796902 169261084 636383056 111171772 40156105 196094546 224122759 37888376 177069111 78677401 167922415 822562355 615383902 370295314 99071242 377430399 445004368 906342764 312671211 779033444 177262831 104289871 854671200 439345117 955761347 247110233 83106824 241632837 143302844 244252272 33268620 373876953 694178992 998629657 611356149 856097834 315111721 869599968 486006180 319499241 934562182 735936300 75259765 484349457 60739839 249001204 521563139 484494518 829507629 69544781 391203776 457047969 918699418 508516486 560450247 399171815 770924270 839897599 660266549 486697395 727899036 577123593 933839683 857374877 22657404 460827115 664919174 497586752 936326228 748401057 650476238 630146504 857499430 820180992 48406016 473060665 862654375 729463002 817379985 251993964 221007803 724169678 899256748 770550723 476682938 413375545 794635518 478034690 593641946 84633320 717504825 869889590 3896181 420058616 773384591 350965966 8697618 526151476 388102432 636447323 74464754 616480251 738480852 663478114 783500263 768922396 704389499 49622956 155795235 895005415 826387871 808365092 717265768 178600279 225569392 894869854 29444398 315455115 284993176 92010080 257639221 109632604 575217615 55663357 997886259 571849063 418309925 20360798 95301313 252811031 786309792 442381153 46583569 708078519 138870241 905893167 584889825 222491683 765510220 580124090 721648563 580304249 152865602 252777306 929872893 656210807 72831736 245931161 110758706 606743791 628521801 153402139 429646763 775675037 508259028 617375643 664218700 149500899 142717471 765594923 724779109 777825335 846289028 53389528 333029247 806682944 436710488 630070427 440620314 350981346 130663522 576066941 411597254 429193884 719249969 122019952 718500904 323991868 149704317 190368205 575401876 255839825 597524831 657988927 285855865 70402901 473903941 382412498 295091342 687224908 651830692 158009191 5532779 80041823 913178170 170772328 300550211 869059067 512152935 156639777 657178701 582332964 210917824 363166968 822198150 332484251 83195206 194612622 875442202 707143952 227604236 802496818 254833684 25505973 355668956 355590918 802654276 301302384 561798594 554861663 764469447 799532340 314389416 339887336 32596518 771007734 121045019 649950080 375319845 724936551 866986095 87411660 657533016 300451638 810191436 992588886 805323490 152746040 676009381 408207790 718686359 673156797 706806769 650622608 121436253 127836946 95706412 468243154 872224704 826492249 467999639 285337722 277550682 210011562 65815985 427838852 745375505 177714639 84681304 213644322 382671237 651957687 263318833 383774744 292063604 250660411 443571856 860309007 917617295 593989098 854975943 284703879 306265608 569054337 610758513 158171565 757292672 387821313 205264572 228346801 204807629 508386487 606781875 994050013 523077665 950783016 965986322 745035891 482022084 229873247 403425275 481067886 228354672 599215174 737159933 863975778 730096649 457758885 305956517 97492412 747014715 232330132 984693038 515182677 357257112 589159108 96173096 201033001 764300862 473467210 682214376 726453594 274885877 831442403 52875418 376905107 762645382 581814445 205649447 458432271 634081365 481683434 781477413 931606839 536126347 41844755 133164293 792265461 747629870 799901657 671889093 209153134 38410805 853545435 620104153 48211826 671418011 466251045 700145420 9638465 834161240 476690038 546442973 469101854 387669985 260860602 602740188 888842477 467196006 942043839 903716544 580394364 373527743 595090955 437258448 188507417 937880107 470743187 404786557 195461733 518741481 695218224 513669055 89412703 359573019 839032718 570307189 984224685 843095360 250735369 487443622 776329049 727874341 215313212 346820893 16274666 513276572 406450992 384684663 232910041 938065860 942569367 304336309 684686874 317329275 292429152 887021967 405302025 524829745 589773413 676514714 8372040 464006906 705667769 718191922 652838272 677498442 510880564 451076841 633352012 60823231 567448002 532883698 726821844 332808757 2070037 438617861 199333638 357904127 750553998 679812879 425688996 220743431 115258088 612866828 918690634 283234982 76827379 807965015 890270776 931454746 579219635 911435331 831012915 100051201 442632885 245853059 497002803 149329162 555961636 857632241 989167118 689242818 498784504 9910837 84369940 65946383 613830908 601164819 900821987 190475674 991348573 11996815 777979098 312944545 844883318 519269396 331589258 458637545 763203215 546895836 33507278 22283972 689402120 741940463 218143464 483658874 675311395 265308202 543669811 619125804 420597423 561932981 491111878 197376906 986368886 261102983 173122400 227372527 838448026 744008753 804781522 768294812 957903262 474330906 427892954 294184442 96982125 162377389 402018640 571418613 37574423 835024513 393244887 904970832 538980400 562009581 53746299 579992333 811747880 960520580 945989018 46657185 612484349 825467682 624221917 472641317 683168797 183354029 946523193 94734237 867418803 260832497 657171558 280094755 169020358 741220457 124240325 782751853 92794003 988967746 950845565 34662631 430799098 422805616 883170118 113435503 897963391 479640063 48891135 454829533 785758767 987703975 172141536 842106266 304536633 66176206 999123867 811726173 272927036 404703510 338844059 269523764 377489968 228641009 372152443 91521084 755278826 984452081 114755480 333464734 605568902 410081865 690523426 804121631 577145016 916050194 353808243 107296112 455518617 56345712 957562496 773094036 420175227 500764489 549890835 751535359 738106145 275994529 974051171 919036107 534290046 540854616 815709234 164304546 515301800 707512694 106123985 191343974 790492827 10611659 85963869 982355472 16656230 850212254 234349697 448762453 192180694 101790169 840750954 173081209 748200948 55896211 142738599 557752279 335619001 442676039 744677498 758684438 502157125 373174552 851400667 349546085 13656033 557831586 525644217 429743990 723372198 719107954 271066002 883137280 839230852 59922056 171473393 669469882 274764177 639926118 93158758 757022356 181473183 427011373 629694186 397011354 485072691 207826766 289378800 76200867 894363525 502547726 555810643 523892283 815971851 91410405 797797493 69516708 290730518 579479488 800052746 351073375 297511319 859848373 59287629 846642755 183672151 684340466 961184850 704180372 974179832 104473970 723110056 584403617 189366547 831507908 17701907 208156704 441277393 420180112 769183788 856731557 130474172 290894034 412033742 71136540 447695896 519029622 576009424 134621185 683432374 10217118 508592718 357647490 1521445 576680864 1949307 635885262 252478442 337280017 587929494 224560145 14749131 78226971 680434297 520206401 802878534 709488563 371346911 795872847 225096968 963909382 137396707 987237866 548029790 953196438 729360109 757269088 237328554 830226936 241030354 11239719 880342133 533367489 883532704 596608085 154681850 759818749 609634958 235177421 606568641 137030629 167297613 523787370 659757810 899177145 221758503 721588759 483218064 876374615 47522911 618133012 297619869 655072775 703221104 223709299 907901110 424130501 959133090 218959990 89713388 377096410 854052117 332802516 80603104 559952457 193459712 174611761 47923999 549466313 464915028 892108564 822970770 684317082 254485043 155741711 448347830 651956577 469869602 39795010 502035416 200558524 102665796 456634386 951257832 423708174 190084657 424753679 906326391 879084220 633772971 380072879 720906728 373634412 665702006 950190221 257788930 914987589 955535531 375482355 181259707 656543705 901768919 223039434 531405609 345778651 97466137 756874880 530956641 584959205 849314287 494406425 783981316 865676178 935501067 568217880 196596838 677686690 92624398 171683604 593148468 742115911 340337195 311784670 270652881 489380980 922002656 903419652 516614368 280455987 73429422 743093019 525940429 537582227 393114967 817832180 458955571 12631871 493243018 769899470 226804345 707338901 186337299 179223840 601579270 208369881 456732735 17250895 205828088 213734035 355735088 575885419 345691578 985613081 918728107 180490876 903406097 903620281 459116070 856310478 89816189 403998429 846106970 775151619 952129648 734253286 986867464 260648333 92299585 35364631 338531 656169574 930035222 896015081 75030712 493945849 780507270 936491762 503952840 233060954 477596438 636595763 94549577 628715150 401269882 823578144 320977463 984410674 695213362 342895635 486751 3663763 619267151 385841983 230201741 178354010 754805408 828760783 16545332 779568082 764941774 126449026 804492435 740115005 683909094 367190206 824806419 698935638 92518265 596211593 274946183 734841019 797166436 326204184 552815128 55951194 688100168 845674905 444017061 993474067 622019246 752486762 512672225 788758189 980767434 489984834 496546577 21016971 353898934 374585007 202797482 306798520 363104441 698831967 717884733 891097756 240906482 268180385 921769679 242358736 735445940 112380941 971097883 385586608 481958386 169000329 556434065 851538367 817096395 60749620 298779867 792724829 826031978 71037184 716059136 892246254 46169424 209608288 539241679 761320884 924397376 591115918 173185305 953128521 627537445 192075749 901726209 946764417 364565552 545177491 347613402 791437419 139481886 690024195 178626052 211377818 537646558 791367970 781835769 872589514 310242985 39508798 556660357 638815725 67514492 723032362 435919920 485400062 769371142 209377663 623592714 359440457 799676731 644999730 137469925 100903935 106921778 588011632 114599095 730403921 12071657 786678229 933589092 880274911 496426623 632228713 426219950 541336567 274556873 14687168 837195575 586097163 69143136 645724121 87372847 386888591 387062513 257390776 525140506 893557523 141290788 593463223 989296563 964968409 41438731 855445519 161416648 20050406 73350955 114928202 343611251 250969299 815173439 591511262 820836972 231251967 720228821 238235255 673708296 194317126 835894643 250662634 64927650 951544788 889401695 946870316 185844526 466800552 729916554 95238801 201715583 199163281 668296863 814583385 479144301 15401890 868360554 229087539 418558004 842388226 944139685 790641381 252872449 456132504 173623406 553252483 284814659 981480858 55959144 338485649 721687365 988123000 109376828 150377679 683888286 374147557 618754860 720963452 227853150 739961376 752952840 227936836 502694752 364769968 945376273 285085430 266892836 554160351 232221514 582445773 939037924 242685083 706301079 827724255 701998123 195698891 799988487 816456514 140307322 164764649 207531785 43993998 604829585 905267873 826854788 723374693 509384460 910867359 588937365 575843692 998017084 22448976 650041235 654168782 938202962 637670828 613016823 980833494 933547946 626064694 540459672 144440287 537742898 278507698 678551433 282487602 440822492 528494546 456360635 345056788 516119078 204562155 922749263 226023390 256374330 713214346 289535064 274858359 171564302 357214778 380064492 399013661 87330333 255452761 584667238 598533250 785204523 967685759 777888248 826428230 100965247 988965283 698498350 981209396 488038003 593820903 228251222 514933849 768951789 220594512 482257074 605270609 382370434 780111653 119092899 456853660 735220864 304947658 22358032 398487245 157356716 899433635 301591812 485477428 363259103 243961712 133410398 621534340 377505920 375957369 484376890 499273973 525688798 915736964 862962484 233497047 569210626 993441174 509920416 453893335 417456690 878892230 484887582 110799657 560707836 281228852 192584147 883485602 87283036 960194240 243069351 47194537 934915842 593867888 748315753 923627562 582202191 848257751 900979345 316596771 632130411 195033114 225079497 461602316 81956201 560786636 150133947 457810925 900494941 300065107 73150566 530778460 488512527 219835581 280150585 295306840 722753623 896894064 697614055 706486494 167518590 901596257 790794510 232880305 243373126 779515577 947799058 72373492 639939002 267191826 855804011 231742285 211516137 513376719 791131268 716927039 639056755 570905006 96070116 31197297 271456440 388560191 997044053 377671212 374944799 615899340 353586394 319924380 904256123 779685222 105170298 279780872 226598273 202698424 122804898 435946890 569889830 319658757 733888885 475449658 635547706 279017722 485415035 48695786 3321559 927398496 918875657 226623014 196395215 671519416 482067406 335209214 23934463 924786195 606986874 153340850 223781912 746392766 645849606 295399416 420699613 466979937 732573340 293692631 66070610 958232013 330116658 562376098 160166520 935461445 605844385 897500644 464656995 702054249 231589676 638089859 985436526 962631133 148179805 59633692 676051501 869183184 541639403 982635847 980243294 60470045 37352603 779400500 230837749 768555287 392005512 746498952 709275855 266556937 367869986 963641780 76795822 108421113 72130073 223307751 186235431 245060762 399172404 194108023 263202034 31895595 837718745 910847510 699063861 916289670 497276778 949792892 317145830 125025383 522484958 25651883 70657651 520003164 663835653 876981520 311249736 943312788 540246071 232483113 604470542 573899514 532277724 484532355 555349688 914832008 201041514 538073476 732360134 344808621 887570591 777960682 526718646 385767268 427888732 618740747 899345448 508599367 40431492 305809926 28112462 940939185 288400141 310552564 875182681 702782359 354910662 305127826 553464125 569706652 411921897 637034280 309380286 778730011 83766003 391003726 520291841 203116122 824698471 441878704 968722731 964895342 804627821 60932192 631511286 146885408 490170708 654198850 740338302 96046103 581385932 976351775 486368067 620572417 510792556 337150678 803975835 431094621 225692477 249715494 422924735 1483778 775103166 116564089 577237496 294717081 803221244 777826189 634710512 355475820 981493269 131393584 514361037 163418736 636414634 7915106 983555063 59306222 505697450 238555571 854754767 431467102 489146609 508499997 349517920 346384338 754319797 855377232 906858559 194142528 163775337 950373142 341610063 442582064 43143391 504869952 763884530 552020971 803109903 944394731 582797756 804561598 946284701 358662180 645214893 99469096 242923789 519494772 224235487 779179502 921444492 274783614 811134308 616790198 638780011 421830288 462222960 947471101 718562723 266139615 935312533 373633027 976352590 945471217 262581369 61730482 75993718 830212430 816031298 690023370 702272681 44661248 902524029 970948995 623766846 408930994 525333775 203064462 822891713 581417698 759090693 117468212 374818469 958080307 410807750 50899135 474045622 717337381 300205634 435155199 817594323 61068955 976417763 182479065 734471469 762673971 521765843 269005577 385150318 909104802 109512114 397826020 707656897 230570965 257161794 322222239 678331065 709125800 40372641 77291206 523477359 140257876 371423390 614158524 645375903 648023702 988058754 975606124 396260286 228152022 542082781 226551528 236314202 2689374 754632027 585918892 932782727 466361806 680296668 139073557 577491461 629106416 719681395 580247132 900584957 859691646 360657414 474594750 825138305 613510481 511377513 859220515 229308071 131586161 459667898 923547955 92456636 919662844 191079101 819496200 654254604 803240215 151282642 710161067 456539684 313093166 846238422 695803046 16488987 382070852 886558376 195826353 616006999 872562423 329426982 100241763 873359777 535712928 495709700 39147640 177092207 583690440 321140720 434387165 464892746 533679185 726675044 866498446 314699307 927705575 505559906 563718392 947350515 242607670 187167446 532243601 395046131 780719572 582259116 454874723 642907286 161641528 250432257 596702736 870842853 718481798 640822539 460443823 550692296 171211718 845025632 278604693 153391713 81626015 163994429 370857007 141015202 324916972 245677761 977439866 103033265 956810315 523767760 491505387 883892612 941937045 675783070 517165739 196090697 10317768 124197345 721031324 860314656 257909122 899153041 237775623 979243142 806133463 812436914 507835174 843675497 119596368 97907490 987898130 237709346 908365592 452934636 95615784 348374944 148664326 460524529 685798387 236485983 781248417 845093991 162779307 4149685 442534252 858630979 556527874 649355270 468442936 615316771 731626504 82251743 295407169 959924144 349192045 186185074 100091078 71629244 82008767 198484313 53256701 224357537 529640499 989927016 261469397 848619560 911931977 297250761 231454729 652836783 31889577 311949836 680630773 402989528 690459035 133481794 592912874 305541368 403117584 546950046 73828539 212283475 138640067 386862283 759729842 699807976 784910076 900129187 251386993 194928932 738172314 532442557 170796265 359010492 957329 21849377 333277211 834001468 961545574 123023234 8244711 245033548 16339311 526795450 185923135 354283746 540914187 827995340 773627820 428297553 472003441 265176797 620597157 336303894 867822020 896673685 889493965 614848630 728597107 922807926 263583712 730055443 843378800 210871079 427042867 590359821 71276251 868305917 935596601 301175358 630642768 214090671 69516876 458313923 928070677 620852680 452625860 406259418 598081945 60469231 414976201 956802199 739072239 469253086 551704796 825988640 548628929 108976278 730665887 525826374 254956759 565820618 480899617 114485946 658638169 406761450 230621154 394421999 580211080 45561022 198526180 520449969 973904180 635583042 154709186 702619109 115933681 417140276 940890095 327792394 26523651 629781270 481020939 568671439 87255193 460589693 164360355 943554278 888596048 380843111 297762440 79719085 571374766 958726426 660851873 195230711 952617017 17266582 622271836 963603501 711961615 298712918 339772511 718026923 602815945 204254290 649917050 112951846 638704208 595940581 20942461 60077762 890942670 367694125 338575089 717329692 813713911 94751471 165170425 986644479 329811524 723837974 464548146 465995153 40416929 616888442 106351142 222527743 709315891 544136533 480526776 638656074 16017406 603067165 14079616 445831721 507701023 814718292 959922602 969200413 752714352 810389835 283416642 812637376 774516885 685382598 767136788 744462064 27864275 174855745 811068781 133178174 12802809 681332280 820250450 252613959 675069037 5340180 419024298 949748734 486979230 101082505 875397430 911635294 258402329 805872157 134344415 209064539 966313764 930624427 912266192 989500937 500551990 655371565 252485524 205597457 540886382 176414620 19058247 389273792 601765820 920777824 55697538 305097252 27846592 300916733 870000295 431828139 713360330 598701091 250268239 862732467 970703629 599911230 548981503 516798167 464086486 653550914 231784777 517853576 321366314 235388445 393076082 86393545 769257549 577186974 140241778 232362723 235448660 890390141 359949023 119225046 372210212 268430463 342142220 253329993 343241995 426706450 389992889 268728548 678038813 333311301 106177845 443834290 148176809 56652343 35483216 243956249 869354177 770140775 958727912 926324176 731549810 509667783 7892320 314549712 140111994 826516782 497828430 577996343 72709040 683247713 667922188 129413483 632969200 670561560 705181583 929552994 726479469 305938380 608791545 852298175 389592960 573074015 558086800 737973531 736114644 321169518 16521723 955736203 609408802 525998047 123315112 729823645 665911809 62432796 678241734 855235640 346512004 261678526 524055675 80512147 389729793 229028353 5048442 686520533 98134778 985708446 44384419 449211284 469016893 211137449 59417453 816205240 713896239 906738622 179458207 52241992 118208108 135499761 857609025 563743967 263616185 373777809 348147261 624740094 645865237 879211701 86364382 738468613 89042148 622988964 915952607 738214111 881955651 465265295 308506515 909572006 785399049 614338901 668637281 688871910 938224275 679834907 208909778 717370228 968244167 323394769 805528814 219838656 388500938 128805092 830465437 321268105 991154777 360779978 57046246 861008961 986301448 77384461 173721999 41170564 186911921 226468093 979529018 688180743 37630962 843433785 605161987 891830456 468790477 865345261 918141182 384905128 235243396 903724512 872744133 39822176 900166513 167358167 308051545 281339360 546910679 552190269 279175287 461917469 334318544 199845871 754402998 386817800 361512172 347490993 627762674 25966689 923837326 255769557 82867488 892830218 21541127 478517860 555392982 342662470 645786051 413339522 157644264 552418885 554079900 289984908 394223346 707560116 641942800 605357035 132192009 773678151 980203172 829089843 408156399 82239010 162173385 928071547 472164679 458903324 96287658 978160807 262790000 818318835 395216892 815125245 527983774 866763725 723776605 265825842 197289083 111312522 775512053 805306091 633650587 514823855 847147160 381218066 154756507 934418340 753257869 297428665 826768337 582043231 759102079 950947356 987726368 587562908 369826117 130703928 857391093 898324174 791172375 708833997 754037146 74898473 159151116 64601725 168882941 941068408 777092229 467201966 958549297 598082295 961131774 655492869 874272498 916366148 910289909 469203394 900471616 129096560 174205227 835833959 745908305 278402986 761660562 450409224 390706809 950833079 589718266 368428964 197934878 812372614 646708010 422361280 884396139 971365698 36142064 326273531 219164209 69718722 108851864 107488638 363544967 154582525 441925745 523812857 269075449 89686851 95359401 454677064 644329051 284232838 434967655 813715393 494951652 738447741 211276913 325716472 558520915 853062577 410603462 808166230 54971198 173040595 215933400 193031630 40172321 305322368 610371565 447024679 371839743 553026965 568677652 457000654 790472186 495353733 810213932 595475505 144920913 134149614 284841435 181528454 72538405 766481060 840961325 329080248 96564454 683023690 59414848 658158026 910717584 718872325 279531659 297571494 234628917 91611614 567757390 859049082 329011439 362996116 960168429 529470495 349265703 289204206 134367211 443176952 253231055 256707700 27392746 984406868 608353250 613349940 888671757 307252842 601848764 696938926 674180947 607070105 395580582 360318336 908831126 217068852 153822004 910912937 460244786 648210152 136013821 904506250 254067775 195038670 76510955 125482238 963672045 569693879 663297688 640545000 693896931 84027462 716644587 99214214 856095189 344512889 590648761 386149197 966495848 305036999 162561147 556244492 996245677 419430439 295150766 314025341 991839106 130625535 999202863 69267950 602973037 732871160 549193027 851984283 854399516 828308405 86917248 318489121 482911036 320124331 541967638 951726311 453600469 564418825 372219523 581189530 291351034 467755556 271597712 920981908 344702900 502126023 45507312 137408287 404138887 701952344 902618269 716285778 328573985 434630249 726274971 605503225 974876420 839671291 920490389 154234088 877582707 674138756 282435645 35276984 712709384 842378070 628142977 155121505 764549877 872802516 918444619 369651734 515759973 813298071 802935755 572936480 111200597 544092103 203818206 173732720 167185210 75059788 875759908 99960757 188151843 800855642 275571596 832280566 105912113 662941341 73262865 98446218 933206013 425309580 375523434 748711456 401692422 981438548 130838200 606635677 705026630 649047676 849326501 208165051 111819549 318595199 746713934 866045618 239838029 320865593 352567675 752081941 642466004 249614615 816955974 234602571 53092258 588480937 518904337 472221951 363821620 180003743 752633516 938168661 153721318 555493863 360538508 595563661 906984561 350187915 500714323 193817702 694342745 1589762 614649695 851966374 969924234 819473866 220300927 330198083 799619123 980886302 443254337 635848995 527378899 724647376 146086369 228928768 358432121 336319422 887687263 408417692 265395858 76755882 795629005 355062963 120022360 597501723 4623593 51985409 208213247 784307568 779744576 226251124 102405390 130580238 995236134 871603254 616407022 311105616 381168759 579921546 763071077 340144299 198678893 730599031 585466418 550465934 453343582 915121244 54396064 237856672 13138724 721500119 766734999 16552338 920130685 259825830 103943571 734460062 788752406 46239509 342638079 408158318 678685754 776499416 266160551 643906230 128048259 623229949 296900609 738882185 282485231 670503872 844660527 527708223 227926101 267953115 915158315 363110858 805893112 293920559 141610018 41083332 876466715 700831041 332291361 220164839 83414076 926094295 171437253 605439108 285996079 614091128 401310935 519561503 195915499 570960143 623147571 592518994 631430075 722918157 205890416 187342913 400631097 488490930 814615624 673215227 67180982 411137610 843131676 841764436 175147203 472787841 580814934 532840558 918446090 373396958 807686254 137509211 652210950 463339856 968505802 334345844 298939250 596392069 602899117 772066543 134020007 224302550 488625254 551411274 404016297 846939235 246247356 585349810 562926830 372156891 368097272 68990294 425089104 21791053 365586222 633437106 219798791 258260071 300625574 859188016 769686125 749433153 271839105 95922132 143073444 161638797 201648865 537721344 802702158 222269345 338816135 425159964 16252685 713576537 867627124 775026390 314125559 669234853 975642756 766214758 431338401 334611887 679172868 706006529 109162652 760269552 363070764 549891044 805087866 130732345 558458425 224510867 783890839 536734149 160398468 663089915 800613819 798710584 240234596 823762748 554215478 49853173 206318347 273075778 652914963 448805525 505336521 228474435 676413214 233300176 685020545 636305383 541434025 990179087 453017318 867041929 168165794 744603908 971237361 555016799 260718056 327228103 709950917 724983275 849851489 407487032 469638789 19920439 583839256 718145090 174202118 310369501 595156164 600256749 494451731 438888466 560517837 732281226 482345868 835887179 562579241 502684793 839356415 808529354 863298589 162245230 41807307 851633928 74276998 937388127 819583161 34879240 53296234 502173043 490630524 490822142 878871106 688193959 709776681 203697524 813171839 774063810 815165746 401422300 345300641 344564639 914559804 308544205 530338439 604279197 972946849 395620824 25357911 677903142 302529133 335088423 881009090 778040662 427784430 186293450 382275003 322802431 502280247 899321819 449645909 958083302 457356181 231402254 882411105 94037695 86733275 342885735 120235064 301345785 895293959 812364410 359779919 343077295 309212209 971339187 373943775 759850489 401703162 597289862 293384719 414419147 290756093 762414117 843042280 223594910 112570812 184313643 623192566 193732219 154898247 218948604 806215977 945122674 918035825 509361926 613180852 309538449 927126905 788662905 705864733 917899528 720625979 753251052 495153423 938558963 102155629 77697862 505386821 897917725 401450964 689943315 486103761 795654604 358462910 255119860 200424653 560775385 309974044 89691017 62950334 703702770 758238474 507111396 271483920 963761073 68399652 408082800 153492582 953715695 87557464 844661924 654498836 843643789 358055521 377387852 767241560 543391994 112853248 82370743 269256579 241324937 702027105 501700939 886287204 669595910 565150576 371701275 713408011 181922156 406839602 286033237 198937664 183979271 956341836 447234496 557261980 317225658 831711176 742634431 818619243 921855197 887396149 807348896 432348341 834819439 491497029 139565759 36467138 375161717 777906533 775078772 710889498 806851583 482249583 74505123 120967859 221777372 663959408 42655139 522867284 498473800 204449974 859809181 984933615 78575055 627577201 355012286 162574547 441491499 730430539 665391344 298808071 556861085 419479293 206645377 131581057 512407220 271815838 101827444 419637812 912481040 445705433 161730385 2781745 102326274 641829479 996830780 391350899 556166362 779716650 685564588 840857385 414461507 784957401 455524476 971456826 894094565 95887237 80635310 553249062 404995346 802353957 404562664 618294537 17133571 295856993 35860348 339791229 589122765 970438591 898139227 713352113 178557859 945656124 607255506 666561205 109105399 163009436 626934690 125515610 646658379 750024100 637680561 53409524 229028062 827147188 409058733 378772250 629534616 914509669 976215437 628287087 936912575 266703216 839535767 266743709 550537183 470046593 275275095 164210538 133040080 54744073 231807223 61454408 610372 986251191 402622917 317180790 378902780 136611475 756860410 535609103 9795663 58733879 384235407 784888719 595561165 663131809 110629495 756582354 645043954 2413035 911759903 670611221 232165630 556286213 169172779 843612959 532676070 160395966 704281976 159770842 325682525 407000332 923401358 398728171 182972166 14064272 354307497 911774590 657816595 879041343 386818843 163682925 652300047 727160356 230282985 399665192 250937915 891288971 883884814 515409990 890644965 307590641 364785428 957153926 818020784 162091708 943388801 880820896 124240676 827440838 348437645 591761484 754176933 8258944 497558602 638104771 503023954 497885498 325114140 819943734 109467409 636320527 775553248 151930169 178595368 836500584 806852760 483254286 389567074 618966023 438380663 178883567 829536368 584526168 559913211 16536078 228960590 367044383 386532906 183349449 599356947 688986701 994760630 883451619 679407679 312440980 734577135 319301688 545974606 980300376 301778898 407658615 690879070 292481746 270194560 515454746 815602145 66577324 638994019 321398788 936329945 955929546 342031460 278827916 730750991 41142799 591022148 22966521 119307106 885715189 327604665 850985541 94125611 939469822 838697121 400245601 952497360 319491178 858452921 526898286 993872676 826486450 13260037 257776459 27234496 222735902 332546419 820930193 847870537 781992159 326304803 424793254 463961996 948536974 989122218 264060113 970544078 340491551 312640141 77404849 553179244 751808453 205903275 605883426 37599958 588815410 290747829 225603566 598152259 867440024 192073293 729172623 160482248 419451829 807049700 536845961 735498141 750726596 890454807 843145922 363373055 276682796 783907862 525919798 787312445 243260680 239586284 277497583 116849553 763530826 597776366 596038058 375517318 463252517 996756819 633988275 173304693 10066755 868705394 144301041 161197535 885398014 891300152 823216785 105017603 457776401 654750908 929802600 11424530 124948595 12301780 679568257 574679240 821685593 936071795 798316965 657500061 61724515 900337183 103490195 575371507 230566233 664004807 156419120 966203264 823991424 597821766 636144351 256281546 695222842 372700620 60807150 77973104 461056035 555806148 32878492 805016353 400620095 143652639 693024202 599814167 841112158 563821657 521397074 372181240 613712781 267377574 675766410 31113810 290751155 853554924 100097933 979405675 580349459 856545210 380527419 818594485 633905454 957285407 682243540 520985221 561817358 456928280 171364402 62193650 886202595 970296461 855988775 743666548 808196107 88554244 843148499 743674665 79196979 408484213 210861922 485653336 940153189 480782158 68148633 377245905 748495441 754203385 389724940 443884962 690852969 48177679 798969559 455399395 822074996 475762751 64935770 76325881 658965337 383257031 498128448 383209000 433180789 417462220 942436054 619173396 194988974 357128468 20802012 989042734 177329167 331782993 285251966 538945673 821346228 205036622 39375367 658791760 419169397 127543396 506976090 883542872 805430042 367058610 355973441 122207859 342050435 289704144 518937270 668532940 335117130 992449580 621324786 232322633 378910066 690955153 633175954 305425015 417638913 358475758 915739524 664539951 372287213 747614224 916471093 297688896 256612658 724392315 381046577 915951646 200735155 983565263 25865159 113322658 953679554 675905955 780983910 88533593 471518292 743300976 461356536 404156909 787225295 919219301 277250773 957689970 632550684 441463188 832239262 970408320 285809799 689718845 735414427 273027984 223396916 252886999 851489809 878178006 804385456 901407932 107531391 80708333 724857173 481137577 753193766 285132696 107825637 28851136 743222499 514133299 44567085 690890529 557516538 976647281 905960157 247027549 869277540 151347565 977327818 624339612 605514815 641709617 857492039 542986571 792910424 674051153 270285144 879798623 869824470 533840734 286620583 981030168 52907246 927801812 701971174 184538711 331230613 489447281 445411801 102229826 364989388 687346943 955810413 42804137 280800394 255406458 894349819 225000105 51208281 944107475 757370854 82542886 123710707 552508489 996988720 277532848 29102740 899057530 856660514 702133673 717348892 463500258 687440105 227383708 432163275 859257069 58591713 341524397 790146800 563647719 802766154 965667904 71198144 250500128 509652312 886008883 948302879 410139277 142946395 387649230 421717027 812313212 778304777 9891848 787684536 660786568 813934151 760199770 1405197 804391698 561444316 819020009 938852636 157999938 538866095 656256028 432219177 302682990 214689608 151821400 201288922 632669319 399991256 943005432 908500134 937367007 983449460 741094793 241957533 24967169 909097582 960948505 813264467 808986532 944298817 45732000 2151682 417819861 220913824 679203521 957009758 543671757 379102866 986652842 371133058 728899258 673200722 825576145 710147067 147947333 256974640 510333856 848358225 954173398 345436021 177277470 375599085 553289129 921822442 721026653 199782808 187685546 87460467 396957756 17106431 592760918 994184140 627893915 95163311 798259532 483695270 324729234 151220581 903366860 165499189 672612018 496731642 541936131 551694478 855781648 966301152 633603714 395801320 663223852 223812091 116910173 82891720 74065266 998882726 144691385 960954831 982223898 914411950 416866931 359367425 577232285 402792258 479808725 839075559 801714014 852852965 343657003 857574284 911147146 520559988 24888095 58617572 720128851 620302914 76425208 616023625 130813010 708773992 858495838 663528127 27495872 364812991 722204716 292131632 164768463 528352519 501005718 883422134 763216623 17781176 249404208 206547383 152079737 687547731 662848393 538984251 452262682 343455063 455215040 905248854 608997707 916872415 85489005 517816 777512332 431773731 752504935 395704105 715465991 697739284 594895963 23616537 727254456 293709580 6086027 187001928 783267353 472771523 945569583 311958538 533841159 481910291 327325498 1624502 547611477 106552349 628685389 106797926 964352169 27005460 40247938 508717619 54285415 102711110 660228772 757228830 407091180 548466725 75109924 718058387 877371513 63470333 823578036 348335148 156527811 852821721 754731092 494663033 555804911 455777766 506775966 224754246 853417868 390725165 615068292 594411269 340664282 665693340 922609723 813671430 521242785 207717127 560664020 64022261 746526897 532236224 14177696 773957057 829490867 297948581 949641179 360498286 737517623 192702988 387425638 954507724 989801793 466830461 538827784 653934762 947823988 689470229 363246554 692323208 120042553 339232428 476696808 778317017 394990225 146805193 463321347 235019633 404149242 878919347 585777966 571822778 832656147 928282635 14511279 936679142 467384781 439529104 629195453 556939420 843340884 173843946 288234106 278594554 370907384 76035050 822477674 887045259 740479253 480059620 264280194 932555846 932603705 426563456 437092346 862039192 159240347 26788130 626485906 596266198 415249506 356642545 602091149 916157691 983200480 10024049 194241387 952167642 284233785 332788747 431097547 451063769 260675685 719051430 907031098 52052010 677301382 745301761 958678136 443061908 522228903 28083704 913785025 792833050 227350415 278618649 897217578 818746034 191843789 167440130 149591092 168402929 887604528 367395292 545267838 495951800 906026654 784559693 731034081 317509208 818518367 617572063 881172137 438498792 675151202 104467796 724087326 542519244 724537527 28753521 578763277 197015425 155472353 191824635 742922159 623410705 51868537 169419974 753719769 257803529 836011024 680170519 308676859 582474689 35253648 186175398 577770602 60224887 309576943 439827513 253437148 110993622 557593153 88411091 924837418 151430794 399655399 907359121 644752004 628319477 863849900 768913231 358107283 177851517 63921104 998833570 427441475 116959367 54992030 16824580 40200947 331274546 937719156 436394638 777588056 109591969 787132335 309431621 953845750 53281923 583324518 471487811 173955536 510078972 35664571 294631034 130643875 391757161 118988116 743153376 391099731 267439857 680059776 677924150 60044827 405788075 885536103 710049719 307981255 337366583 734002771 328255258 627049480 990011394 368327178 681298657 335127372 380544763 66874279 162527411 584908855 219616618 26319213 791876980 605212954 939166731 206086194 583347320 805042059 868577075 867923901 619353250 514615172 889309511 232628173 432798371 359880446 25249662 759150164 421248372 52555037 687029301 225843109 547691099 978492255 691222753 574962744 76165134 912872933 541763270 748458187 211562680 875661524 818117638 980195886 690645741 323884963 932455826 996150704 827952801 428227884 472437049 375265678 695311607 599005350 348602201 121245719 237634959 437686600 920719120 451156825 187412452 92502587 607881353 321341517 94895926 263829410 997993234 273297384 480903912 518528505 496349529 804123279 595224514 637471471 169189397 633684951 307472062 953624291 14251062 994363348 428502578 339135138 890476348 446564062 904432997 209059113 451858447 770112991 968009407 74305809 504119867 748921726 141876329 647793884 200693923 998342558 993952294 346186153 148353788 885613759 266197177 120079509 920824289 461735044 837116203 559592000 467589254 511552398 441861451 492482611 164046627 685687582 118575956 94251172 153452919 888173165 226103551 899370611 873598963 172752498 971954296 631306761 413823892 882029889 859782269 898847453 116427276 836592626 893770710 967012632 417865974 259588455 860059273 732783208 543346643 938199817 851785728 412819952 896448568 353931046 99359512 623919853 313946454 406080273 309102156 326572682 403650541 13666164 873137942 467937357 809537308 150232701 815263180 878478003 299517214 807767137 178961276 413494809 963668217 959627864 12729512 591135309 183077370 606015191 847248413 227343684 228951114 713424397 769984138 349665913 232481395 527705806 385094923 998990475 960083698 779173850 659847019 82907233 811468507 12247401 598237912 450306577 676941157 584164681 814691804 472787560 383624541 298858878 618814020 525736957 544684725 862274043 94152294 427680641 419299265 810863136 670190484 525379347 755528633 516819998 11145471 307405439 637255695 509810929 380362545 799541627 872534345 166633383 325179322 954972951 805894106 945469408 779247850 386525909 264325361 343388909 162065013 875925111 278469132 538889687 278750654 529977601 614411270 739240308 899081548 489354342 843186127 331539674 704392284 198007716 5581838 951253581 230745297 987025318 764423608 390950699 968534960 328113641 912970854 597020266 987883388 892909526 94382236 85137723 602151986 472831260 657901634 736657057 97981055 932516722 328370034 665884318 606437782 787416713 940102641 586291352 617963593 179331759 629154916 102477221 414365003 912934190 472798081 577619429 588213202 766600899 742781401 783299716 688728779 469689219 196169520 211720773 558032450 143614617 900081147 478944536 548210684 391968142 544960534 418746424 632299176 31846912 582800356 673983824 89626533 348409139 205526714 331025267 922337112 78785326 557178706 317392417 524676031 852592420 19848344 306720619 87796544 441803554 814340133 844037463 455755742 354027336 244369510 269128077 9772965 885830995 609703269 657476564 346926466 965431014 139120057 87917701 557315448 145472935 117376396 516405218 647317641 933193149 718572682 718240593 103936114 180152820 42947996 748375810 702476839 602610803 127512548 287402462 613822810 648341441 264167256 603920713 728272035 598249237 282856624 359336950 870019829 911924262 843604005 350008839 273273613 341237079 453217531 918338975 768142374 346805268 369811076 479041708 113823846 391763794 356046090 51629260 31302020 815016782 276102316 216730425 26566381 866588806 865054410 99955774 946330253 459150326 117463124 196377112 712768281 340086440 459169590 30466683 280361514 830632305 706759732 46309857 539951364 762994911 506286025 161569145 931397851 649060842 515288525 901172468 762670327 643425300 573169704 727827524 32109691 783044910 396367438 581261375 257782603 396206566 676898788 21152978 550731351 107268236 848683975 455397837 542400080 551051135 912929314 566652042 442212992 176088773 760626348 839313728 796989761 443687880 911864585 620368345 711815957 792571143 145711652 495329036 913177002 332402953 854086354 137693852 599566973 681232954 671567961 29025715 882837235 680739551 940939297 806288909 704565119 330965931 20583687 285001123 699240985 778709253 403390470 767159770 505834357 561871057 565919154 688327985 288477592 241437105 573548395 958183025 706764397 895361716 220866014 29839085 728701472 42108564 782771035 717973939 497661987 707592073 293630359 716000765 557995528 404372615 624214106 936094152 903973666 301960350 325861637 201149971 827582896 397973346 889019688 571900182 477180673 504136797 292206212 694258534 333803490 701089944 733513253 458820465 416422505 528514400 426521972 394317670 417599171 979821853 725478691 657729833 776237126 681716482 173311105 999826548 641909994 159345004 63903265 890785141 959070921 487328330 876382594 620892287 931664303 202246831 767916277 364367264 106578427 757696441 134113130 173442192 388305438 129409742 42476783 667037293 65567653 884712714 152154928 638469233 13204393 271103460 910654085 947976090 777757946 320879038 362001888 443268177 962903236 346373901 495723045 403051473 218202927 534315737 389610808 273459364 677630340 73858611 762063257 624260242 334876620 616641307 697938193 863287959 71125127 502710052 586006065 525584697 646454240 470295810 309464127 256409886 248630063 408558349 621832634 617995455 842654216 400040406 612260834 974905722 607677965 71807710 940431576 520993167 738281387 561608179 79293445 239069184 21321121 913602501 496518862 536863635 403207144 994299866 89860206 43094735 106626652 713931064 950314760 482280586 689054014 514061383 345753224 853606345 764004337 871824466 746000341 104213011 14369204 492128362 906950222 72118600 302929741 516080426 143514447 584768477 158432076 270977509 61111946 593595407 437306431 474682864 758224413 209283120 927884861 119502767 252691889 185959369 140178756 416816795 695093205 157870100 96868284 766383023 82355304 68810235 957411327 980298400 240093196 999161430 148685738 702141951 278673157 825995088 561927494 924368634 818596911 166256410 156803241 525061102 4891142 405922569 196406961 150940576 312413871 433120262 580837032 613169790 230651319 363804070 318389793 239216080 865801368 620158564 613993669 285215807 887815357 954542343 441279853 81607907 483403292 594896061 88999426 31099302 22238760 825026231 425982728 87975936 121848126 629145014 359916157 879366183 347701689 967267669 277514291 111096187 202429552 723479264 680647567 660625547 454637950 607171289 689557957 755812521 75446575 365042768 971277634 89489598 17661972 388619002 301985164 532463452 804757865 740260658 549795599 646308800 52094750 690928606 297122089 19918450 686435338 799255548 724245224 519869024 341138653 326877200 710200365 905110977 757617618 354316318 434544055 894739039 265588541 485765124 317146995 771598973 895045731 310383376 960452955 398968419 602549219 25125697 198584545 938445282 561948624 63007672 855442909 146271451 856648874 929779973 235558114 538822959 756249767 497633002 880434740 548120620 409497795 410196010 534953843 77981246 388486625 743669712 168044168 388239738 100640661 453997870 771663249 541397751 863101362 722376584 109827127 167941253 470045092 169094807 876372373 224006464 637475284 236731720 574545099 523004678 702140776 599792204 701814562 12838003 26215908 590007526 890717020 349467735 210135618 623335694 82021694 183556781 429109925 594812552 829887846 822044016 581006912 767612872 850951539 447554311 898476748 34962013 950123758 718227188 498314317 710028876 292245622 288638889 716840837 763408588 493844874 496509308 135143602 573381871 735795182 171696343 695877227 308617471 982417672 867767927 176196380 702441633 989005859 287066014 681846453 223924253 436419229 419591243 810890729 49509699 772127991 423853177 335025315 157969262 302945632 772199763 460600375 263061942 766235738 391088803 262859817 743918380 297240584 470073369 905221579 624217082 288551370 937535490 554849237 911852879 672824228 709909349 922292994 517458747 729872465 756691043 718461016 614016872 112127631 271800896 182251340 969239735 488836690 726682971 162531666 1292142 341228334 32499071 341423265 244399081 308513384 653505541 974584591 685345650 68729688 876691182 509539811 873963282 228710392 110141323 777398924 707147802 522202141 813691860 375893099 584325070 872202615 406354238 239491862 115928775 358844485 740508406 437825267 638914877 874981943 469370636 500842731 900474916 269441323 251616623 814702368 899791737 590089738 817786509 545405806 460040049 779151111 546381995 175661703 688287265 683267579 12588455 303491711 76185783 792684374 459135953 759939173 957349235 992490127 550490439 347979764 793944294 311794263 548389147 444156408 9563056 621121065 377301756 974589546 790140351 438362277 425098963 782464657 89455665 473948483 711771736 987398764 464753382 140649446 627415958 931762581 318275541 366591925 468377562 881693683 133155504 422822961 941253820 722892097 803558884 624309562 807004121 678567934 347566252 567165334 16108408 255574522 343677152 4299075 501644354 865848409 372638819 239946104 344663316 132342720 372201093 529962861 56451095 429814118 384579879 883305939 478452335 218102218 909490555 891483475 352424493 694722423 242197368 126722129 514278304 595027308 927710551 247900073 839160729 384185652 971858081 45502488 935411838 507059200 747171461 345604536 32707119 545764782 454023947 429866324 390007020 343522368 68774095 94368869 535514701 987339473 355309629 479725509 391995545 912799552 914631142 185251365 633392685 741796435 797683286 915212693 785942861 381464993 115954745 74494874 909412972 906903345 901825813 11641942 57843576 521338335 805955142 666323143 840617383 729696266 758574557 483305184 146012411 863482020 782278280 791538374 201330134 928460924 357798926 681796744 193687203 382037678 845435830 140262428 747172926 82495132 993824514 74643437 790926269 340698032 1626134 776428074 965256356 959090673 552338117 694584512 554397094 996886917 612306504 669910705 767200285 117251392 86333976 988913783 710795827 163865267 869767767 420697446 987762105 738012022 229054559 220814535 938918113 901750012 682388544 386445142 976458149 338570344 186769898 593553685 549012221 580526666 589926049 399352517 355275274 732066644 743247330 389288214 825746011 327189814 837393610 170617129 579790658 218117911 617591941 647118487 824869626 804840741 856425645 507822690 829576698 480734474 507121290 586868432 314241708 510431056 757588497 868102329 660879098 998925545 262479479 706520432 964922493 314044470 290582198 168734947 747291800 382767972 808801624 111228599 64855670 649729697 792533608 26156296 138227005 208507911 39526815 944371260 189489909 643032879 575734474 657618907 56737305 720456302 622348709 315938314 768180550 892194697 8233479 459541632 221160373 886207017 532834461 566806499 734387670 474919013 254955305 390960072 435760455 217941474 771641687 574480746 718960138 598163720 994535262 320676455 672268268 822431763 196968355 994679618 76827654 241831221 377726391 5395227 817829195 267614220 892356507 518121917 488245557 477101291 226404348 767447353 3478337 276014958 584385333 731494712 610430641 747042454 163522231 484456844 453657142 114321251 606333661 134955066 72350189 970268409 53958306 252304738 18506533 282787460 688345338 928211496 857682341 540630004 492768058 207130961 432833681 173267102 467736163 551974102 436567293 131999130 385275194 332479487 816313515 607313645 550796688 823261149 851506948 585366565 241401552 916147123 40636599 609237671 78022891 457460366 266817933 365013754 967522908 320765323 157669758 263521518 579791560 103999969 592290450 626406612 344252736 381983060 982108319 494150753 521076110 389761115 810174397 133315348 586614106 927487757 748864185 402943112 481375277 658429673 666063875 862928565 947798903 629783164 843263847 791837545 105581445 908440923 707982715 666283924 315388541 423984697 502249663 628239132 860364810 132344181 444876928 694707474 987108630 650016945 828637378 26154810 890580815 562278657 380772006 877262305 811112131 248478170 247907675 287818498 71577131 794026127 825763839 777729435 723651513 929534738 321190384 241976765 131051007 627338758 303333662 502172621 430250174 560075306 192707725 238917637 436596951 510241245 705796835 132113683 840232189 760466236 340127813 592226012 941828740 780591232 490306531 473275377 51416016 421574316 787996030 494200630 807864667 82080918 39133937 334187925 404913654 62471519 880949915 190484665 813305199 260914406 243828800 304972806 462792128 498658726 61167371 295121748 872560134 134538878 518324636 825816900 76446613 668954189 967985681 398394623 422058605 23208309 629458762 544357181 545523027 743481166 33891398 404326113 442294256 347722616 568791651 348576381 998436776 647748904 381286193 877673951 90261889 46827621 23046862 551251511 503824542 345831822 45020583 858538861 678327633 821314669 270371160 135694776 50459199 665721060 327796062 647917472 894154671 650910358 884124693 875689216 979213521 164645290 458663467 514516304 858019760 759181338 845563297 985447319 909018046 541803592 614951665 211062061 596952887 297900874 839096285 112053829 75439006 624674728 215440291 22310773 763924750 844810289 504490991 835012073 184405097 414297619 411416109 467471288 771107447 364575437 835259062 477458902 824113312 267736131 390373972 541431224 939794393 558895960 964671914 877692988 639452606 648556586 674267179 907573485 900336367 512378893 361833673 887133755 648381685 787867124 718590670 942101415 648973038 966144361 124905143 383194573 457379068 169052713 303381303 50278383 180245296 418066432 436124239 207045624 917576612 704586871 350882654 986686045 154638359 692905974 275428030 30655304 449370551 811214233 431625448 965148496 197853618 989907216 622041473 321506910 732880498 376766854 298724746 325445125 956861257 478024088 604645130 856668857 506720702 689221894 708717691 593548481 70620632 967036176 217674667 311261962 427796486 114700624 729501541 659908462 479530324 363653280 726783298 689974126 578512506 956127224 149157468 790978980 327387462 485143824 560553391 154683040 485263430 748979076 488338520 162747376 442618509 941916375 732232963 787045504 926309242 706302953 268374765 315626686 496712732 354820975 640035057 883466988 575275045 629700564 670250800 226677955 903272442 748161649 43494699 652615751 943818415 623173108 37959289 103259674 850634132 256662975 835738869 379057555 796712506 441469584 878854120 553997173 319918793 973489386 491859893 920879979 557061115 286856676 505980488 967451334 759357033 617025808 403779374 287636315 234125333 638048273 90070303 749984738 912376819 920576001 20286102 799424513 290448355 556693551 832215363 222049556 379570293 9244657 826763836 727782541 244228673 619884148 955310855 172629549 116403974 862602879 833174303 295427365 169800571 520507919 216014577 647093449 349783867 596641933 633839981 699963455 867152156 889008292 979508454 4356320 817744826 997263425 306170553 24699975 209060933 969959618 125027959 114969909 826938857 206303559 35009263 36472496 735803440 390436536 378633098 297495279 483442762 267906445 2449807 531439072 383309982 496678710 969650952 937939940 755951270 767884903 83058189 914478222 700163167 596275094 875090766 420180242 241723033 169735310 43120297 896940692 71476209 244496167 634554546 11673845 390267340 281531775 519511790 961857547 611088256 958415962 491512967 17403243 120464375 422484424 581136566 935395104 159219005 171971570 792049468 395753480 920421821 731619059 361725415 426367353 106984609 186246909 582999683 184345713 39303829 845877861 171829226 280846150 371406991 184977634 971263606 268995572 264655053 769258780 444539021 598769972 35608137 80805321 496766176 63165339 959666872 201645467 932366669 715294604 199252569 139434063 606945347 405283287 613069981 473761043 619492075 176144529 755847200 657018211 55408395 64150525 655354543 507947048 545051091 57073277 169017441 453110186 740905655 943997353 210166692 650948666 235452381 668682877 50473464 897133643 974380830 318864774 225167556 559856786 935701209 377429641 595704783 105163245 795411231 562489504 95124326 845141254 385726984 165869901 894089502 26041274 739139196 967345887 107480638 721935801 271400520 100598625 890331259 604538183 854794991 689509994 597995462 870223361 471017302 238386451 974701809 721427132 26202291 418252622 843535149 726292699 979465644 734730316 14627316 245276250 123391578 106846963 810215061 48634242 980234591 938399447 647944103 521151350 477775663 799948007 743888802 356068060 773853062 167667987 537079148 979812234 107976164 492278087 845526643 900695809 764358399 221988535 748883309 245853353 362030146 30293680 568049113 273729531 272783087 497343553 824131056 979247624 632472030 65074580 421883475 154170620 920175523 13731067 602345330 111903428 207713499 943911235 801942147 467158485 628555520 736063950 118694406 389816427 23616799 510715592 465643220 601844549 986460126 567574708 205836194 983493899 784176007 88759501 744870059 238382231 573356307 442610610 117578306 171343627 648994234 147307400 368487709 249127917 762787411 165895889 701130076 52845137 197904188 93350745 669140929 952626961 233145739 538615329 509394408 502133171 382655144 894810983 217691944 749236688 34292170 463018189 288014353 377158499 316913620 878586416 171113571 784912041 727337816 56213012 673982279 954799916 750546730 585940784 819681375 784195904 765183126 787927439 258939427 596505852 225748283 60220853 977756942 871274592 358997949 549272047 475496488 164158094 496100985 256649946 919278366 937263615 240708875 987723827 930820990 666936524 598951085 870862434 127303360 568747680 340528995 613555455 987982948 13518599 766466849 858993229 907403334 328731136 107016429 220768581 677045744 186721206 652972069 902705129 750449366 155945599 205151795 318363264 306876214 644390663 498135433 924505962 759005694 609876969 683615552 334096188 361919031 343840286 33503932 323544087 21328456 50503020 501276046 920289936 279744191 852655568 326826066 335364664 660788275 80205966 11140529 415178514 844328642 568698215 736349208 20206436 920529268 522557285 864360699 326727951 62845070 727509448 382997197 300461000 242112100 476791974 745628442 713425841 680184765 277567120 764532766 237997490 931082910 466435218 972506004 297813127 285382800 152392153 502523218 369762748 339948118 105083573 59574507 224639262 543123103 90099543 288831116 520789642 145435671 58783463 449867179 755234197 91861157 680677335 181991900 665308225 985479052 333342905 615821760 996493333 136085396 421737321 995886419 755000855 906109304 692422825 372658136 15489576 854082899 216015005 528324163 159926641 369559539 316023277 838660775 753055901 908300413 51677371 893663160 70870478 600023262 249977075 779613677 990323332 815066710 623377786 723597490 182610100 491166843 700195505 376946687 358173863 732314115 428240003 977122106 288953443 129783119 552628310 841189818 705726614 877344610 770541457 863493146 630081498 39441033 726930307 81891770 611459093 54673859 333957689 603426019 427869185 970244573 912717602 273920812 483279456 372558919 40810064 313227217 753159470 985751512 231522593 918493401 44063566 859648212 635158060 950903050 374818132 217647903 673546476 683156209 101200109 335801406 822395122 923031430 863202440 131673468 327574870 902591487 32865016 477892974 669751684 598044341 584411814 40361294 328629072 886525829 938247205 614394605 692610698 897951241 23611658 128525972 212165877 872218589 440357527 696833534 726083378 537432922 601562738 973696567 157260370 349839835 675700907 451458855 909625339 115027809 604114227 888713871 306970164 684013856 433050097 253115342 346365782 80635998 789486022 897605999 97657218 176805900 64393994 256773323 987476912 817346161 73733074 474803473 698148088 39315823 393595162 356433774 161016650 681575252 723195640 88870674 647673429 373168325 13552474 493409787 175680826 71784599 410507443 577915200 11070857 492321697 315114888 499319511 538881843 842117093 774925627 834620004 612735893 968479040 283941840 628241984 389474347 712614297 316648358 277687383 775074363 998028438 608861471 37406725 137163352 912725468 262816830 806504762 648167986 182419984 817875638 227814826 445846284 364904144 325003339 807509766 585966156 212135707 826911096 717011746 850901069 345832866 929936496 518987659 797948922 834764648 513018450 323201220 506154909 685402679 285044445 825620499 571554700 57612685 793439894 601987777 557154625 365150861 878092948 901315160 763594180 402933444 280286387 402121818 108605841 944345205 68476278 507483112 46965662 215212467 142300053 196699294 539434770 353667069 653460857 872177084 240273608 996415544 465989291 145370009 158769338 926472073 162927912 663975695 788913621 563840730 441270341 780273223 130910364 100809997 558604191 934408017 475210254 738162313 709861039 578504398 961151260 70519355 749677351 913431901 263022114 530866399 489628346 578720583 725849271 965212623 222527137 510988124 253193256 533184939 893460743 550500088 371635874 227671160 469317457 802847377 12403427 558428802 956697186 832673163 43350818 683030533 497441694 488015341 382367586 727537904 605113766 770619605 942195035 72727788 808946967 828646265 343922164 284313402 39279933 44493776 893851256 469150717 335573497 897736211 922463 975995489 340782925 970644354 107520895 23321434 59804876 655413649 86318977 795127054 528823954 865514361 175376129 574951576 692198994 569627119 117422665 134610255 339195898 538855969 84131558 549162588 483730343 500381622 332829708 210842231 35884396 402092901 179170701 254296873 854919611 82207579 689623473 32134246 998812427 717307500 267512923 457750093 634659072 407126878 278171017 108516341 42280059 927349747 617723188 207608608 908573486 303081462 586985348 719046492 253025769 588907758 939268035 766103141 651110736 564769035 546288470 231264234 20360883 403140585 2785537 465266628 594636886 74757597 991392267 613687630 496904810 845158198 914946462 372325337 841109315 593564702 317484318 853459247 440586227 692351438 99099255 685428529 166119525 39570240 396119772 532747086 248988020 278807502 244862613 507105852 986795510 715631019 319139227 882308071 189191968 946401181 894030450 832527849 992649040 523724889 779145628 336010669 74539887 770427418 483656033 760161971 420635926 803063698 61057146 232585423 369620865 251900529 39062762 668701343 302720503 658161790 172604637 604103125 62378089 341241638 892671734 692434766 635936694 5946785 528614073 370994814 182920325 530036350 642458839 175233387 464587850 75166656 529592380 428814835 925541245 245758390 522223380 487167136 867913240 259716413 760795506 845767438 989401019 704256277 95018864 480421301 814518218 309169894 459613149 905544226 679499987 773696587 700364113 917878767 159561848 657031272 609351617 377285264 373826574 358985247 529817137 329265491 207660254 749968374 844925338 909693120 230405629 368842657 312401841 473212664 196777271 651058537 516657052 946041768 95409103 656968918 78859858 162276247 528939141 44755404 401739468 359068331 118878997 693041750 857139944 20373756 837914962 731547739 110712840 199130910 934216517 618716877 46019288 38433498 883942403 796681211 498560495 751256897 666743304 38288884 691661270 773458184 48186048 125634836 738354255 775364211 832699703 446261149 476329704 711698209 337844150 88201865 249735671 328863413 762666763 419632194 871501658 521076308 38033377 595512667 284870257 587437757 289868932 491888928 502116441 632501857 280066923 889410287 870885031 167680973 670298367 627731907 590320236 467139994 399141829 651183060 540225501 297916488 738650231 366559100 690100357 660282040 833179201 118851452 883555246 375324428 488581531 781280341 156479856 148634975 617856875 475529640 617993888 131066787 681620625 218163152 216889501 761187255 159872090 923380511 218862595 130717981 361821628 176648963 217060608 414941323 933822596 333445323 353744237 815136906 789449511 866751644 121936185 617088077 531047829 245183029 634424734 263716057 589972590 10128422 129444221 742354382 980797420 781086821 738420283 462208944 125258148 320733965 114242614 624051738 950124503 607098621 87000080 137963182 788964408 991515243 317391526 863588040 852451867 754097913 245421405 878720567 584568552 36692703 528745390 97252739 293735119 704069257 514569788 415720798 90324929 477931122 492678458 940899510 980745465 843357898 153819049 557539405 459265669 201603537 630579078 423070741 839247953 679786329 176072223 233602998 902748919 134092905 139521668 696737215 117258155 631000332 807972717 966972620 181743992 521304891 821637382 258421168 146697884 805779590 695186968 579252230 894850812 933288732 432891782 394524203 618467336 675385994 818285156 894643437 551857598 854170286 652416064 124482845 286069052 254595440 830031376 3416611 975832251 816125360 544536014 708382084 263993936 255888855 173473096 8421823 860215935 67055354 923318132 464121571 729463922 405499511 389304253 813977592 116136980 525864663 618700383 323969923 180875805 799825648 461053870 484091551 663410920 160980133 112832534 272270633 203883686 895412595 749307748 885867606 450667133 782049696 147851501 813892175 550888535 922764212 812604189 252889114 769862234 214709617 570450383 110856830 690645036 530517949 358226594 914735538 148380095 949150220 342421004 497160066 516839500 124148309 263714266 317609528 337210191 846356565 566674038 940669742 62818317 444966188 213373003 906114044 287973208 492741863 82966550 836302026 733583986 483210322 489788465 111549911 371271826 920342985 717720557 607923257 795859508 931921839 189959721 257131972 70168509 720390166 863918023 81002567 668733258 49186048 559483208 947778023 88673578 703145087 880419091 884670050 84853753 326875965 37890262 96583835 775467909 882626011 941752750 672181987 510074719 91487634 406509564 721250824 526182618 549726636 329287207 868827560 914813156 804345569 666032316 446628935 250070895 149702208 840625395 198961120 501591270 679065816 561771612 31911681 462387345 770026850 954992541 36047920 104916464 179898000 236999116 953464756 600893133 363175898 20946762 656018714 553268853 40930974 655001186 27119178 458176892 874777949 617703740 341198081 397568224 707479079 804474982 53797898 477474881 179393368 330171567 896638210 500461827 263510911 353990799 910365351 261045810 100553054 907325750 972135736 199900078 403784514 332631177 392069363 588941145 465994233 412541516 780507278 973533594 596678222 956315302 500252971 450452731 175992960 355403292 905294224 426008501 568286799 970146181 417891977 440254490 910945728 225288104 319430556 65077010 534443783 482598498 368170721 194370353 756493671 3294758 38552096 354799933 427932964 991241160 661676312 550330651 629142453 977865507 244704287 833263176 255060440 355348956 223160162 937917395 269606599 534856747 326823200 253091613 146008817 830920391 167651407 685144655 445905491 584351830 681962814 193153747 588407030 578216668 450270798 572210572 308520998 847707279 815870468 315606555 923239474 142644219 434671737 678721682 875098756 426772963 215025968 948043390 878281638 517343779 740532826 112349962 212856237 592462268 329398181 155920541 458288883 645278253 61229913 280951782 904104782 500438343 655268363 901011443 545217713 855583840 496676167 944157739 591794546 154438744 519238398 987515492 421985645 44379536 712033096 582875904 523741365 86995810 174172324 171667797 91278272 622425048 171177399 310164144 467994234 712333503 4673959 524423416 754061857 271410679 465432969 584172700 979930902 142557074 964380630 278280965 427737185 351536154 665660925 908356037 626674103 568832045 812997181 650667432 896422111 652906639 13005203 98490338 958899803 486738720 111550477 874253772 12093553 915938111 532809041 479914056 673400590 483685809 867100972 765338382 75507544 105647951 202641180 237341687 338642734 323451748 260254043 616490830 318609437 366519982 58305306 745118412 933869231 132123236 295227456 837771416 46458594 139285822 789576739 915665170 415221047 227693189 289757393 916343808 231749564 602459045 368694596 281019591 869522106 102898602 669823492 980844761 724919932 232940454 461354891 388660159 934739102 677830789 474826871 747820596 803951007 224316972 940725715 646487038 566918105 740937448 968794899 952182638 110256339 453667151 714535281 198545165 594635670 381890066 334573304 451806106 924758483 270189741 447475360 804650599 905265245 272289423 573749090 995299450 925373553 589650143 698610365 848498950 70816747 624620327 14923204 459069575 675885726 81788624 872928479 8917614 997938386 801826057 705955490 818946780 890539088 485025232 195360656 34593305 688307120 520529367 578859062 979473045 433891260 291684254 148385953 525840043 738687057 177425597 281995228 348216241 803529409 349779152 106106968 641766232 45928695 346041193 401848901 686691488 347942926 639299086 821139161 312918806 433067983 253910232 10078053 190092404 220051409 939198035 535224459 552396452 638471692 403830535 508673154 231052436 371751095 833985843 117153975 610807368 525337244 94329528 565163674 807465972 607300504 288348634 66884143 573477159 518923202 609141021 709570439 975054540 723276557 265021160 734013442 858290861 593499569 755142080 559762517 358386060 826958182 451356326 981545641 710929070 695354502 936319575 455370777 243805818 758910951 312564443 181348491 888391898 119672735 822518266 189312457 97946575 493994184 854021894 65939709 617310188 636269125 356471452 370552951 431252679 459025429 620225664 353300687 113343561 470807781 614313946 578151396 971405155 202792431 271690839 872016215 313301020 330762930 682027815 357835749 14621126 297174222 384830468 24621488 818563890 127411673 325308360 849746732 726435906 820463175 608585484 10894494 656171959 794983346 989148307 701629315 917824647 98707646 116432220 504682767 204309359 249413487 259308638 830711453 976418024 576339487 919006968 747315109 307124313 28129985 877240846 749573784 479266846 280927722 6191696 867141332 521239008 50958972 807820640 467271538 348267441 147794787 378254341 678726213 521853950 392593 418813971 454511733 556586819 372157804 807452034 685803453 101931813 81113316 682211558 57437747 166650930 836256565 485394278 779908487 650841565 365646253 291471629 280805589 217026344 657791490 683502243 749053543 355510302 644220926 505793814 991522429 591817144 598331573 216924235 477898445 518733388 217749667 625026302 130942441 528759669 810630436 849128962 613349553 788200105 768508055 75263019 118233813 735657120 218695180 541170250 112116118 621985925 830888410 440052710 153000456 554166694 22966282 429260826 342737973 977642196 636636216 254558175 326625329 420040848 445503945 607822165 188178586 578686330 459775627 622822750 505819769 76302301 146913949 107996180 745213597 541314765 861132185 272929166 607240305 216833634 334703106 162272505 937655875 582243840 922473818 284695397 304649165 35029579 683728026 417560164 199973828 582299043 725254912 805164811 194103135 62485697 413288574 613825060 296879758 576945101 375727742 818949525 948046914 572416933 720666059 231008316 989805401 405201751 94915910 511240857 601955927 273656473 269036192 373663074 233175410 377850304 617311369 482133521 164510637 631525445 678663776 498212684 348864694 419099504 318074100 797116511 981633511 315967152 187091897 853291689 876815021 481463904 958689276 693678483 953644816 762748107 913718062 413706073 184853805 1448171 773946713 847572534 737796283 689330873 869132686 932024586 367107036 600764312 363425588 287403405 53761420 473302032 386470751 345411893 910061712 589912389 211368374 78881725 691557088 171766690 384677830 472239221 882099840 950897796 371484270 177238810 185454386 697724528 836467375 588050491 991633050 193590698 74201107 578311543 83027745 70602410 379050562 376175501 170475795 527645838 161781021 237884137 647623906 965120784 887831986 687345201 836496136 451644463 860171306 882999829 94224908 299943809 711085988 121555381 198994327 4078212 26325286 460001303 612023948 895876079 923898625 96755813 609139722 245129082 645691227 571757825 830225911 249427805 694402007 519505315 225902238 303621240 524455214 84759567 853364400 555207790 126936880 213806230 89752695 16978511 373042215 265630745 633223933 457010885 229056981 296168673 532969089 540617573 499461578 480688087 747303539 114837982 304812267 205383063 618021274 109213861 284087279 244617922 331533235 937006197 321881141 615376771 50414571 347042020 502926995 207407640 477714608 757934577 996938438 256132806 37315205 47349908 494958720 613688122 699707175 102267999 308529187 743383225 254191793 835343698 901603794 290405307 966945103 770904373 843285567 928299935 986596172 128255168 719478749 795481571 600744759 862525411 539068653 450383803 659585688 185576522 403388262 203158214 668324422 503580361 559481791 4275631 463554563 432486784 226897378 326551652 742409099 274521572 47508348 846944973 443898351 880844280 658867557 66840160 788618026 993681425 982245388 66329636 129657722 307142347 793138092 667013719 570284509 307516728 658916384 974789012 437801142 29519488 877641887 795627975 435859514 307816026 813535763 660160033 370616327 215280497 415715116 747975876 726742474 332157772 38907104 684435053 665790230 413902671 439108057 566462695 25773725 850311972 683220009 340273746 744739790 334436691 826697201 698337442 834215682 953191357 780171422 96001429 970577347 563627129 861772925 544979226 823297898 246900289 127366014 967476074 751810366 807438112 740996029 395172822 418940335 112022567 982628931 767173469 197677071 187662017 698837989 997909978 794820462 246944209 769951136 268201697 543004731 433198385 373654453 806966837 545276493 242377764 766280942 427501375 733487824 294933414 840608138 509826919 354826755 74441538 930707052 849177977 664001985 778712811 297939248 377943890 282010205 515653200 625169264 534448383 569227590 840288577 315298973 517369079 957684916 252269806 233498374 301972147 3208830 240138282 604451181 740904158 704237183 234179613 248414403 795661185 544395224 904091018 989267398 156550016 336287302 495103387 903862008 843620219 71110700 146593735 547490130 202753440 779796633 618911297 313286410 5043316 487498907 476258971 476290178 966788757 670794652 223774695 225226410 655189207 250609278 777873942 660061743 124389614 82514386 371353009 530751077 881282609 856791607 154102065 161401180 719518936 789543254 414663158 539848530 310171488 381018687 256245453 487628082 841067244 468432464 176057244 631037020 410303250 901641460 393294049 109598533 106395165 757842400 127358952 540937496 27979838 827217178 5201347 150357557 868655107 907756081 675558482 558581806 161005134 549164146 187990581 51075816 748409103 600229263 248546637 862922586 942372221 294908394 998043127 936620291 585646998 396632060 795909612 860047007 696244948 881863954 884870920 394010510 817149032 96276272 624010345 109156724 226745267 610387312 118214428 856645381 911408888 664603246 60125964 814022767 826785334 196828211 166365100 587613293 228829513 555873638 599680077 678995034 691377973 969590306 755908292 110091176 946976363 252166257 873866647 822948021 82234579 40637975 664116254 101985347 648634302 97364171 52148712 45578128 150602884 511596490 605947162 362901864 968901563 38393006 467597576 307485520 805835679 913043234 439332696 208750841 501861334 601132483 158398652 128782696 140829216 467892624 537639291 254651308 322986666 980129662 337625905 300344336 855181244 450221093 306146525 817753154 484717596 531643844 396353530 675113132 751064453 996929718 669812217 807320455 843984681 795654719 215551719 51789316 18625848 194122304 440367961 899648185 910993350 416774097 637831908 82739780 861526847 306521577 958084453 245169685 446780416 728354272 317096519 422412337 628203844 464257821 550399487 770474703 439652563 627366785 284658651 320230169 64805059 921515570 714185414 578608739 90882762 937498282 235575792 575492735 21046374 744271999 653537909 258443026 985278692 497721664 809432184 348525572 229947424 771850155 655626452 612272274 746142754 414366732 444520027 147846123 409204511 246605097 230350643 744740658 271205967 382358365 348768055 690458530 373697257 767899103 174854418 767812245 781663310 646428628 536647605 839817879 879407622 639199148 606646771 808625517 829725597 992976946 708230071 890575520 698072015 812833716 721730656 809363192 520771041 479137946 858993476 757025445 700513814 245391798 714267766 652713862 175684573 628534512 696230588 338090363 88351932 653721100 835011923 12517489 574877200 341256113 215695098 747171903 736080379 920966284 874745404 874804204 675696153 202184114 873309047 259103558 481222073 156672291 70285589 685839127 193217436 170854532 98746692 997860929 651618833 555319627 931859843 828148801 15741857 713693480 71160547 603291661 265804581 781979122 765716797 197470632 607041793 513821101 561952227 780222404 307773848 917482397 839638149 912492858 188552687 140492857 120336979 5006146 332786768 711396888 68337404 67675614 999182371 820978993 896663050 388447665 526734127 161333034 265425841 340756005 242387675 608137679 786632926 551624688 999144478 327794436 630650749 810858072 757782759 458139614 80533374 780414478 254109418 539218094 969934240 315508129 845373189 214602441 590759332 849532979 968908022 72019029 741449610 224630234 593188152 544995933 280020398 277385001 869054025 231718734 889949902 606632182 825634086 919135740 70730757 949210043 421317411 65158940 429336757 16098295 27887387 550423451 582697014 679680186 101479742 466241876 185367191 773849401 368151258 493541954 372308325 844304312 638821235 322545753 534245687 257913933 663528296 801154784 25759801 828689878 110305848 421351324 362747724 969637364 244578450 402475051 985291774 870857971 190179518 543727799 434947883 844986056 828978155 801639779 824783090 67527649 964755636 484498293 885420799 326866133 639001297 329277963 723385325 223928450 92838825 361887893 559549676 732281455 896605512 195889022 496165261 403119238 243603698 292621689 359732803 148056091 637930796 201919320 191078567 809015374 474960967 352111114 896782536 197739816 421314304 147250220 122411222 827601971 245274163 976021244 563306103 157730903 348857552 140154309 222361771 404797766 856019714 666617775 861584879 374320261 367840934 831866056 956225528 298880215 286657547 387784410 197799384 74662685 530449696 402639911 289816213 486435239 991999738 387968401 10898123 288863793 751942336 640827334 636430107 65652780 511754045 383502436 575062103 589803125 77293242 655486390 188249195 281608942 442130315 250974653 424702796 280068427 548846064 33931617 399665978 867910349 170449290 437669145 504007305 827420545 863230715 962855919 532637181 788528146 429224932 593985686 539383508 540631724 602516208 697762926 534880494 423971051 620453821 116812103 426952212 705323784 447250216 215783127 174259675 661537190 743934286 107508961 204646570 273211447 263709875 481814385 192880364 625967039 570495923 247106066 513839007 561929625 223917648 954271857 561006616 347839861 382777879 307668100 726370097 862102795 64874346 286748401 312977970 869636147 960850090 512793243 453201717 327772310 72302419 364175846 327173662 613957668 741291713 778393313 170731242 707908287 435152974 467524949 807149452 912307454 674918649 14290525 604772593 582775579 351366319 224797627 129709382 34184741 641802254 247563249 100258398 950161205 422774718 632278743 631412941 246014311 88134664 585690716 601690988 377173179 186498581 854156642 594997805 18833061 697421228 212789121 213476436 127201907 737700584 588204218 450694726 213898675 262333094 236320365 393105083 353066666 973812283 481880219 87068943 741527154 22006427 430973246 900760620 537815342 774342965 870112771 77876730 147058588 515865462 556761225 8183084 610058025 411971212 463459378 329564169 296486327 710392054 923585883 692057550 751294944 499063873 759655620 300075055 711681735 460447014 905804176 487437093 532503794 754452053 775068804 919184342 219749586 290043169 411378211 372048303 26898459 972980870 958850940 475338433 38492643 365494920 402845420 722608474 976496507 354932861 968029631 834887198 519006642 789889906 316892138 252853788 173712439 54501393 338069478 862390798 493403321 881657989 645301925 728773739 553671485 396525312 623605083 205330216 615789690 439077182 402568758 965207948 352053880 465883901 687793772 369419245 666673096 586590423 292377089 370618250 772992573 665332202 807072570 118911387 977767370 359288212 756468942 302611015 536529017 194271078 876885434 235491318 207627933 199718641 59163104 451390576 339300406 687247366 157410289 882043986 184854382 631632908 629843333 288125653 630140928 827773315 808938505 891643680 206246775 89990769 440561791 988794655 200115685 795322584 427685172 633916056 106071984 379683665 40979571 32034879 295819567 111539692 300578419 840287597 138805085 32725874 854391668 843884808 417501092 530274510 390407394 946674663 225390493 119242700 366970496 165838460 198079189 475700646 454006560 777887528 891179130 475474963 573415384 822443340 9048532 332660625 932504956 504221637 90469332 825169652 535745497 823228481 123824433 533005785 788817905 863764012 296777410 596052540 189002784 287147048 635049089 385379533 27961758 630915163 243165160 738019042 449074587 974603214 957470471 810880530 251811544 189874413 804764170 847457170 861055762 213537598 975922589 482093511 553889237 946634474 442863028 335851064 85649606 584712752 696766192 159373133 242093162 409738520 49327377 747108029 157958166 7696374 161713967 631717324 907971690 583855408 783083446 306878709 264529888 282293883 932187446 731489125 952674272 549597241 281957649 44234068 160186039 723933643 410871970 278007586 432990901 391628827 426245159 389362994 120109716 79966646 362579774 851727583 255638437 810623882 971643640 898866655 349952048 524224745 100613592 196132753 655128335 244879870 10907709 395294088 151408573 984081180 280707659 530762921 416799380 966399036 153469615 32784886 167497958 607999355 526803534 320423599 346962102 2262519 572123014 880112318 673300110 155024744 399021499 499484455 663206968 835537700 593808783 373871597 279024564 890130753 975671187 268167094 132439525 67423711 981421448 721383026 975105717 754503226 907998659 839277666 929545891 330349176 628317439 796293507 505466139 879079078 552857063 361051083 501140433 120195759 751713401 390681004 822496544 108977314 128763004 543187421 482577701 510077330 857282440 160477753 373910381 795961911 116411468 483493471 700973636 924784858 74740039 459494578 267248916 717078464 668950529 494693686 123919320 384256386 303820407 46711093 906815636 696289623 746742020 116260552 804503238 501155536 286816665 181809452 742634257 654723691 418658871 41525674 872805708 715451656 783531583 506570890 200193502 159110932 60815011 860768604 192713765 16522536 967409780 75366471 87195108 641129099 248151064 742390655 839007732 846507431 533279121 267290605 230944543 863147782 591289689 852358753 616686081 52744745 258954979 761371148 336925750 115640230 495910492 261778532 319740200 69373444 519663360 444971979 496520571 142553258 732048040 956872025 6086482 812942815 835864508 353840940 536275093 582173856 184631538 127328419 259331661 333584035 69363146 636931487 870972873 998786524 851047639 448523681 600342521 879819562 754570204 116707191 168334743 262026621 758897282 570849727 422579770 122928555 605702718 74399908 530513290 257840669 857498749 320033077 684892337 208360839 616982185 256642147 964932339 469636588 393744428 728315814 661716817 391874947 522570168 640061828 155276626 566447511 797132528 62604983 63609393 569872052 740198870 346298312 195495020 469639358 36273618 41907797 474451582 477778225 34753027 448169808 941933396 405278243 541729179 902195148 605826064 376059044 805688835 980263709 446547567 307052823 134469488 248482756 479668399 447183167 945637695 265895163 947102938 152877708 475653634 732937985 697141180 119614489 515524290 642452004 881176680 834110676 59518721 529548041 194853646 433670032 963607390 47972905 980038408 105158703 271164567 705040450 700852148 206070267 357041712 954421825 999130346 442191956 616496840 706198329 294171016 49430057 173471132 548420279 983856486 922674299 936733338 787712664 897237995 564326778 283907645 720188506 146395394 667576498 669203626 460766753 880884140 622208837 629685074 126140703 496099670 688082622 218129411 210891056 438556980 582867709 955584452 496445082 711410161 871444540 841893358 927984124 464950569 962263523 497153292 647167065 864205285 802043356 966642182 714618443 185159090 207481720 608670442 422177400 67478022 874952098 573336815 836441444 909913308 115664713 940210252 793534558 572227098 616759624 619259120 358075861 765915644 272949954 575014238 24005963 520730133 524262044 695699292 950260570 340800157 746996545 384999047 110593361 43694342 917502475 931421771 275067421 661573120 59533902 461038939 674478672 581309993 289431968 835915397 935860113 838841117 591212657 67449805 959600156 888645961 827401126 531519630 88856822 957746093 253293381 712937187 945586509 322266795 443792392 999247959 831637104 834048024 719230517 275011678 562287310 563651903 979658616 631279869 822993955 731792242 515641262 375874520 51067437 637356514 195374919 337888953 227957301 230975125 120330247 42651268 411829552 813859546 155728493 377030453 314515635 921123759 312023976 339321781 12203643 743292551 716718285 135184808 845739252 963140735 111096375 657226888 17186801 265286456 423939863 206154688 924666212 100948360 275672116 59404096 493658405 235191540 507309688 467551070 696073781 90874850 62414539 251608924 58030354 134620637 308472250 284291396 739253618 663738949 73753914 703008613 595877506 54296528 601577829 267305038 384179792 876857679 681853976 62300668 619051953 677745838 147596258 987314874 128218 228865992 548882148 130671185 550144419 483551881 931558323 715858578 343570617 141335567 545913640 230542475 535837087 824796099 564511759 982314557 927113283 36853873 222887390 482923690 910619102 824956550 318321875 174265142 972477399 168387888 175559810 807105208 205849595 117720540 510667468 675656410 547799649 610658734 1058013 815519318 994577243 137462946 659283660 312286829 430460191 529735983 212549862 615647374 199690127 53045005 553741918 578686903 37293330 497293502 165199479 798676264 478280787 267343452 475921217 408114000 6812868 485379662 44618655 226435741 769616961 346665688 84721338 278890949 99647610 481555149 536860050 903153149 982327624 44573920 772388883 524944684 717049616 842115396 289330947 683244126 740941310 205991631 785679559 944541910 171878214 761841328 937101550 232782355 432820922 614233908 377615767 392599147 315445244 77343057 555471622 854078328 866788601 638666383 592985529 151858416 840067881 321558584 446786565 626860812 592792606 999329271 202610325 182736531 736706154 324459220 436264292 244335073 276067615 529680085 894316481 689212467 858830473 496383927 884488933 618092073 330862809 386387681 387107227 575267557 983458613 792874969 567306343 305106255 968501522 974289354 233254077 727313840 883863737 648354254 585219924 371310312 243283225 800157665 766408574 738962097 137419400 306810298 707095699 667711330 517613003 116044365 457421763 378557607 995893332 208581329 926392229 581360614 951677050 545725599 554878628 34976899 797900034 96492323 995477155 809818758 562746522 456340311 998309903 66016757 602974335 365545462 85280456 243341853 666832450 731063633 310067941 544766109 441807955 590439492 725019881 329781844 52455625 367131661 117382976 905615130 220963973 247831235 556757310 935932141 672079264 908406772 952693862 895536264 143595611 879362773 287862250 655854198 394800718 816944624 154239031 609646155 370711205 633118005 273202716 312080740 40964901 26031919 431295443 923991706 155094629 226531606 771459595 291508507 924807659 163832789 390420164 244305809 828541313 786911553 324228895 140036559 1425020 925951987 698280741 286962685 401933765 44363573 605568368 109041035 734981837 565365482 34404637 715862087 892683369 623897269 707393928 938081541 964648638 933608012 334743141 85296549 823749010 468971396 259799053 394517508 909173271 825076000 991242041 634667479 568334378 379869722 625261833 972275436 578427411 165752427 817289345 134676588 131230200 566223606 997837353 484315146 4230929 377606989 402826169 613706203 487365552 146401296 167931419 971195018 506745274 659781116 948777408 284458663 578081868 609300748 36563299 669276753 534253624 870248864 810783873 276637023 216175981 82491234 230709368 849839404 11233663 950209683 895806830 427348845 133846254 704382969 499903704 640864451 707508392 751204463 205318440 38397584 268151536 685014660 384385775 330640298 431707257 37158543 410228215 375606109 175787670 204394988 745696739 327343294 176695922 303757447 380060261 183780822 416389386 803719167 746451462 727479698 650991711 454583223 687131781 731388666 847971241 518917324 103739304 725374821 730429266 554608211 288187325 237836016 140492792 862901694 760738072 577907090 22575747 113204075 178698583 313144809 803309618 865924338 104245899 147174217 432291334 788072568 891684514 345269900 502176644 469478175 285794688 486373755 900194780 104879679 300923116 79503605 489724099 505799879 810492747 309175784 48955682 274999782 924383762 360687007 672263599 980429608 520776211 799086142 504246356 727405402 234401746 899087909 729115623 925485062 459934837 149025577 937709352 242917608 234557629 965643363 318224135 281515894 321705259 775700986 677647535 995428802 551497977 705539599 79070713 738279056 417112112 882945057 47315216 701029841 779367563 83314707 317098377 42447313 753786023 965500332 701295205 887768865 964468424 916751897 313212883 736569195 116131285 313241545 541581334 501835401 428562301 532551391 624101337 508366246 59844867 862809406 160126604 507452357 561360099 377857989 678411224 781682118 158214567 172308171 897023628 931853702 983029139 798691872 755612823 846284231 653611981 833723453 364369743 619916869 82800173 189521885 958477710 269119809 131170662 254748476 453593155 246877782 967434123 84917355 680771211 630931743 69712155 452603231 231613015 593534919 909584914 165157069 728352624 139635385 248779562 954144080 70927513 930597706 411959469 375339162 52015960 303226440 334634556 853586821 806119049 355422459 177853043 956827277 975943463 478016826 902174445 327569734 889163978 780690954 587520863 763577363 583074016 879330186 535446306 259816938 876314746 807654125 794479480 63572218 59656803 240738457 978141855 701746777 633088219 733524666 396043560 656072563 255260851 950100882 662749152 782009921 101715463 981247490 102319185 278905028 79411239 605419649 511956253 905954299 983244799 274980037 210007906 949745768 621984390 952599512 562361842 379813342 883777884 841510200 896446158 292876196 860288909 786963475 179147389 226925265 599465668 194052679 768860872 570374795 807084703 112213538 868702848 525558988 379491427 340344829 70661109 906047237 841392673 29058924 835330944 685456825 504375033 20046487 992717447 954673183 259887692 487356015 184568339 826101790 350814622 925255478 222221409 968657644 847657944 773718142 711820855 555960374 734489280 853157104 41651435 82376833 905543393 829713639 753120942 774400286 915734689 33591191 96520861 784078079 124163102 82120540 681461673 899739217 388595345 37313578 857104782 988818798 287739031 174413959 268492478 570172000 65583859 134104593 936827578 236795373 152353962 64517628 660072466 309918386 852901742 444899397 322065071 537028027 335218475 762239115 101766228 745136087 385197076 494660307 986567277 544290887 148763106 569891596 755033963 706753122 82465937 153665271 475051666 579107701 557247627 639947924 397719097 899738064 648305261 516478787 454052614 37816935 267789947 739055145 709579147 437540269 359933881 133579125 772188414 966809113 812540542 357329215 464009548 754886760 979593683 947521770 832301124 928675789 333680202 912850976 372831580 197919513 78689219 664961643 273523564 198994041 157208187 809719207 382605471 733550437 720480237 695276781 904017820 580696108 344866503 541100314 842251869 489868251 675288680 32654482 878822107 443025283 285004739 108795733 331729137 282831611 296261758 457535890 666815396 479213759 449115186 215388218 526186540 420465542 985827146 957931477 196734130 481366210 834100012 386343577 303857531 786198194 214744125 729722777 787915396 481130677 937033071 7249487 607166860 168840933 77541911 809127064 152840502 880839617 2204806 842042351 487967378 457787760 763947211 802432417 625984436 505445027 658862260 795459636 819019268 7868435 943430001 420553518 37658230 549886483 91736963 84724529 666111036 841008905 670324779 256185697 311487751 29375547 238800172 261759813 903651844 72616858 158315438 772876693 712638489 855100456 372532876 542172612 898761748 471953709 618310792 581710116 666351184 973076309 188947211 406597594 26593334 840612496 476081162 17147582 797751258 402264300 845439872 124198089 766298395 907657495 793146583 317997014 496157526 468240318 486129744 858877370 114991184 616776634 637851022 877445210 220503825 425685125 17036412 339045975 786013439 5598868 955223714 388219112 509373679 53497835 507338232 600205581 107028548 634159712 783892673 923044113 809628579 252945126 194019662 13519670 519584235 40590586 567762351 948916720 491825474 836488894 572349988 858143258 232970305 219814566 811720077 89511213 465054162 61814183 262509075 285613260 796283470 884298531 719339170 433223052 229032357 350818416 388984185 581475572 894238257 921451963 78756982 959801905 561405181 791601101 311778028 856671302 834544424 531061730 548566583 829662947 932461302 854620148 237588930 962814906 279554937 476018929 288952593 309815166 417667984 693614510 79366793 665402577 709811578 410037486 779759586 493235681 494250048 367758928 807058715 644749227 286891622 75611089 147442857 507720821 344222450 490677556 617305903 518069335 142747911 645469075 299505251 559521477 748920264 877301071 686713231 542012051 561968907 487548047 663953233 613632542 93965435 849828413 457044884 22331580 472348240 95881396 959668848 485505788 723912085 181410998 488295689 375420779 559758424 906663791 876698791 224584394 391556920 151881993 515394690 719727755 579261287 400406898 500355681 682409001 517476856 212672136 724703333 776011613 259795272 436047393 216362858 371264785 948552500 55973560 965217787 183103259 792612069 459550367 913035468 82987928 180365759 823326064 667551118 222079604 711314948 460574928 322385749 258136165 352090254 946732146 889605589 659429437 836059038 58129584 981702041 797826801 398366595 481031833 490274375 317547693 445138396 325055191 179374633 217731138 998355836 315708684 262235447 564492922 843681993 471436672 324874933 936872849 809063373 814457259 407605153 463670918 141967373 904840521 890089705 102184802 843257198 205964543 748479123 113831564 614407399 723374092 306673748 62327363 210260423 223257903 234567063 703196786 920439992 926604479 591495957 883105657 268015913 775670307 83313593 338992279 373319974 250006470 606114225 455634656 582498794 667171576 273112019 585501917 418025516 305359389 781227020 659004436 67360634 298897903 629027795 128321081 902484671 371076381 901762166 874179583 343082204 644833329 355837235 950124775 443225541 93636963 689337711 728311866 429097496 152044276 991166330 114588898 140246158 853892584 121163201 69133816 306974177 675655238 951139116 845210313 488871695 559102682 662517280 651909078 595239869 595927237 588281704 871896017 291184688 632482780 975173048 743240142 300462270 300436856 348066364 498705931 722643391 905979972 778833593 608015860 243076154 657926620 694406406 895257167 870183919 83051206 520927765 97700957 104157496 399910 720479658 115916312 474332080 848081906 886407342 754998001 975143077 645011515 80858461 932298964 532761810 904036105 488197788 526000343 587559338 836994222 229970275 583974091 676356107 256369472 858274364 255869708 263863795 981891377 705669695 829526774 604936473 271947857 648565890 887323761 827973046 332906720 292727781 103671903 901102405 341052204 339372278 807396138 41836545 439655424 802484690 4918570 709018262 394538038 975486913 180689051 964580370 889679045 264885103 427017615 976664730 696876285 41488582 449444109 209957847 634098902 719522615 476352681 268101960 697298629 527885013 748495280 974078894 846317017 360946420 566240747 323023241 35111641 952882162 962150510 584428622 398845463 320212666 612562768 842727408 468171625 875839945 366397297 64305698 523426026 458261521 561337060 913539653 809466604 203575182 511622910 162122238 196887665 701095283 759128276 963254978 432736953 439973204 679924706 120756685 77495307 10302140 475966733 513917386 140504533 555303656 291970516 800749166 302740739 439245851 127673790 115803550 60912086 852088482 929969104 325568896 350619113 371386694 599049597 464398757 224786730 9988142 913913698 528563868 307010082 715449285 752550172 504990694 451558347 155497503 163627822 882317246 77814874 482104210 332080437 805687800 93693979 555068561 640636250 660249170 548460110 162423948 160417691 654940734 881809106 811647013 23081653 111614295 674916107 20580190 590219027 326852907 68634057 541519422 520289193 937821962 489426527 395331043 857265547 282580453 919575694 991637093 733976772 683671563 262690730 771908996 342817840 804116980 504778133 577320719 67506736 367772429 2356027 148192029 722961210 960123636 40497207 829864121 983175001 954908852 907230670 918512879 300537224 198647213 256448027 875112854 82606382 833991302 189844731 752012969 261233147 462908784 946198936 802738778 523993463 994934846 172960371 73913479 706243197 739764842 422757710 306648468 416023568 54452121 740229226 107446252 673484633 765122977 804981518 208710249 352256804 160943345 316116627 944973768 400579493 993261285 975518312 433049239 855487928 173489791 926844975 906980350 188423353 987559334 167480650 827213136 48985495 666870875 375066637 562524799 68051430 247130740 953221319 828113158 714173657 837042308 805068644 568911116 734147741 478404663 961781191 293896876 758713042 558787094 58396158 214664089 206965572 989498418 46482474 628776110 705209623 962419445 162060666 171627919 651621154 778811998 734014914 724407286 505394251 609932393 906306396 653615715 925795506 241428576 407876600 98214726 610834445 925952803 390796657 398299110 559893772 339050402 647733918 895667150 615253607 789818818 238918434 91554927 613486443 401558419 674190416 498834071 803693865 628338404 27167578 917728384 513612784 849737246 31484428 272574962 164676148 402309652 812157896 860306903 64405568 279244250 893027410 416464356 522986493 309610627 994430591 382431628 517117058 948015491 954129708 231917109 392463072 11116098 494942942 893183629 321055585 675326126 645722288 110353890 809106229 164275080 707950490 570875828 136806766 586815354 135733633 670601868 305957539 875067287 764286897 229141451 270969565 889998853 305550198 773411573 670539117 299122613 712963914 553966786 468663532 573668579 392421459 476467915 487609564 116720137 11231032 979789251 136587535 951708115 330077237 313388718 740029812 393497057 670370093 669801013 61434122 418117164 522549434 943149050 189592846 499259189 221557927 270137049 930809080 211613796 580733242 631800361 411273591 964594238 74232426 914423403 627157597 361955321 921207111 486181169 522336898 399896253 103605559 876417822 281317631 574413197 458956230 328224312 468283485 15363761 964230927 505851978 425660061 408379122 866262933 989331309 354389747 157199797 227960908 788731264 816704066 671394442 978279678 826787235 651470967 333352436 315887123 34952995 50011179 303123498 374928666 301828562 972807533 493080581 92598648 608021896 626586104 365742602 233820421 931592141 696678208 239236537 537615638 278695202 932443068 706592920 672039788 950909807 17156636 87207411 449927109 351731948 301245023 126845178 236030785 758533630 145008414 789356851 680889922 257134629 738186112 230618397 3218394 964413435 735802004 686817560 515947944 127888438 545905130 567398557 703906394 78732910 264543106 722640168 505062448 601827234 470120424 977945178 470223999 488501310 280807210 447191668 525873217 710350568 457130596 183562096 388383554 939492241 240596804 337623370 695187881 436690590 351566712 818452389 431312348 639813620 694627846 807050100 257138886 95833527 776911285 260626393 660007801 524146049 32384737 682247449 275753808 959695305 437198271 551975910 114776667 236278534 945920198 502102376 108308068 106227382 349427608 624203491 365231414 154887531 623449014 302123073 246016479 647891486 514951655 949772059 687804676 835521911 757570773 7932404 844595364 62025045 191858690 834119201 173634020 112918641 872450541 917501328 704397020 430911015 308594849 290804875 870192105 727854869 207876876 432526945 452807021 283055987 615815255 712482791 199736729 967026561 79428217 840977636 675361045 304543082 120949181 896282754 455039530 293407553 836027986 669398058 3800769 980912756 185923792 683013999 175926546 578794068 62961734 671510766 853592515 765994402 551526756 771056670 758746376 286489969 76444251 171841833 99876467 280913666 938358730 879219931 581997029 828844149 786407734 42128750 788541838 224870763 280888461 648943123 183208013 77903263 559434414 361908208 756572134 858124721 36658933 629068431 417453104 506689294 693007437 775220190 973915227 497869543 129164394 108881673 23016148 773924904 380996615 611245899 42328451 926093168 763823678 570170287 335831581 613075369 477861127 257107980 218197870 27137861 382387808 619360909 266617091 936646680 111839641 204940779 629078147 269673656 15507835 215610409 678619499 634588247 537780704 730984733 709984384 685867115 484534083 571137284 278031179 284531785 549660956 593392001 829493549 448546005 666330376 305324023 823385023 10822341 184031500 709942789 183500947 821420000 804267849 36195918 53944520 914672915 456106666 470490723 773865389 211383038 968048521 287295373 194611524 483489732 994157664 991213929 190558167 834766113 899318290 643958694 722288309 900305020 776604041 895997321 635184909 479936147 622732182 781078699 992613204 489863343 901716016 472082656 726430513 616829865 558356041 714496412 539691255 613055084 29141163 338478321 995784627 314511475 136489812 490419128 833561425 505238489 222565923 353386483 832035516 555474842 353860440 275117716 698711167 645433676 989182051 653853618 528574294 682296717 237046707 554367314 104280076 352108786 792394982 672579990 847337529 90290278 292527035 789849059 633162883 290259629 951523772 656924910 615357928 753749868 591399171 848921412 369076248 324238862 810087402 323997574 212302839 402218619 62906606 354548090 542278084 891410043 576603198 59075085 99079674 454974806 592052653 721696686 3462919 847762492 168974384 326620522 721615853 404675501 696116038 675154205 533641448 401303048 147051183 86834018 918994691 926792323 938660455 876231225 18705931 792156905 848539837 405655015 989198376 181362086 719632872 291386912 161328115 537283186 997307050 968000775 529702791 696713936 411578044 935186992 895679 256353019 217773807 140650860 801180773 409788535 226829795 600285084 625169816 504514569 626472259 138347222 989629605 223075787 391571940 953727460 247488852 953528876 155793458 988196853 232939354 743396102 507069994 846531357 647936456 485478269 373348055 679997633 282539774 679853275 564454958 335213669 415397758 902786800 899281798 997739009 402870244 569832904 360321221 827403194 374967613 113917695 920023294 230426359 475122050 945003734 246764414 445607809 812449982 736527178 779869347 244654324 468802287 973878708 553821594 952281938 995366259 706011802 517723250 115077194 203781716 191438899 851629206 894588945 852894943 448149010 749574999 742601104 660420108 940990826 576325852 335362536 680141190 452944344 18005851 981175595 204632636 778886378 973583610 694965986 625567019 62048331 326569501 274692414 167170104 853918886 453814894 629171748 323588175 714225590 376291234 875588956 67497324 776303966 438028453 763641530 367805159 807840975 689584354 671115016 467408596 348535259 698148041 374736688 394745446 236285091 82339444 434552987 653348078 276168525 418547221 982942678 30319287 547820147 135393265 898380182 319979835 4894842 277061435 739313320 186520897 962521949 396090402 778765392 564738036 600936019 160484477 963034432 481683363 671988789 465316014 505589129 604411396 295378253 821416269 334467094 78680489 718070435 878715106 773883734 234326044 159373480 38509023 96744876 641782325 533780839 901502984 531358776 936564180 778455471 680672148 685489659 954311032 791636177 625349849 436262194 335440419 128954965 230787558 559476705 550836789 585453789 189181514 182194839 244832663 167886355 539942285 927472955 312119034 312676545 54652248 666782804 882605792 189474844 234736756 329824441 297023434 316724684 567913125 985885151 514162345 941457320 341748829 597156521 506300637 230797791 251777533 581964449 357042524 725159040 877743656 803253081 623088937 530806345 185834365 731408408 54034532 877564115 133518659 168143988 669259917 557117111 585645293 891215392 149288511 801402005 346256270 793644944 289585597 648830255 368967370 276344596 615253235 208800918 197623215 277828462 238054944 786601459 549156050 28619173 622872419 897083009 497291671 99771197 565702963 268211803 71217084 324808370 644493946 43258144 745743424 501547698 643868464 576656611 43811711 606648094 307599971 357913236 87203004 859999517 488815936 999692542 430563969 636925155 962592396 833683922 132089919 812864772 686361907 62822133 37634987 975232302 323253374 297673897 717792131 526418237 143081487 731896959 127495389 240267606 952900189 780042641 597336275 672124253 323153900 888718332 324746467 873317512 380548226 419093676 154797026 856665107 154436731 952340524 639266630 618770488 885512303 24152526 484454380 797345332 301482510 164910783 90071857 503765513 328862550 605674094 116446420 367745845 411361735 571389175 50709853 849400523 194006984 420124011 196200670 822455390 259020881 412375931 758635449 618935541 924458036 804294847 18872493 951151021 232965429 470648591 686710209 138768166 426578187 112151352 723145400 829904934 455202537 453825915 87625574 702323213 292796603 697520175 512939357 119646736 105713203 342422593 601554799 361558497 897100636 205706438 201084095 66526031 335027396 731876802 948100393 220449589 310737920 431761486 904961412 776892541 530491939 894220363 427466942 528510642 724688985 869891949 874223599 416939165 658002115 591026124 961870890 584167859 242174998 83486445 770056627 624957827 933227711 853574325 163911852 648507164 651946544 133654286 4322931 455915560 673771188 60881266 446281649 489200285 386248780 602925293 903420410 190313664 736846219 777743058 345868219 452510150 947299743 823093531 333327380 325272406 980340124 904120290 119459643 435132304 233964223 678741693 548701105 718675610 95481320 696796498 647581151 889701429 163045192 602548900 500675311 976445260 972106102 233304860 843458314 843425995 596296042 672018936 28566418 6522829 569028473 74925980 376715181 493786887 581227192 313021224 500896382 862670428 615151870 405146219 239344733 619893916 783150823 842990584 274195424 931503637 73486374 839081824 704997106 677136600 281374560 684718763 753751705 243165568 260033554 323253724 657426381 35097953 756425813 827004511 728196148 223633363 76125307 638920347 807796009 297888096 572361599 693130525 740970838 414782401 430737049 744275705 307702000 176826770 539364970 822743844 725740550 250416868 957149471 720051579 839137703 728922664 436752710 188137648 48902087 844417862 885928924 428218702 12645721 579007502 268006632 274539338 59817711 483015741 158260138 241438126 285871869 275171745 623539558 838782207 512855214 939233469 448339850 960102599 72945007 665302567 817495501 635691247 380345396 391242407 213677700 54557825 47801507 146255859 80605272 272903489 606665938 794402843 71457528 641420312 12784065 530803558 870688199 222124051 355571667 635558308 431186293 5766804 519654759 833850774 308057637 740435264 597497452 184124430 705176906 428236124 921581721 945301263 908824538 156463234 795260023 149905350 768614056 597735807 369320184 959130066 525571460 571980333 337185300 442437592 413710743 715379390 228895609 141424533 652405340 768308263 688636289 295610198 617832975 255718827 565302231 339725966 766752692 151034353 442035829 146128882 93436762 801499590 292986789 828261590 657224343 474039896 659829459 527662905 346258560 104810335 655737783 793516701 251508820 8399482 541455230 477938270 61261976 464965659 187046984 623002720 106931776 50137219 54787170 764238435 115639131 929746212 285269911 104966586 911392950 568168474 40058203 883811211 85707676 696352263 138308293 391821371 54083807 190336418 42877414 618771770 124629387 210366885 600853653 153367906 36565957 606431016 765822791 457679753 744153742 30830265 881441939 306770989 603900709 16312465 400485367 918888811 851101288 665447631 231560184 868507103 669369314 301241528 978086787 556916362 261053669 212275414 350790548 453688287 592299479 654010959 110512280 767520547 527279920 249105182 312769296 103670182 437197078 136385980 877793929 96938301 262026394 604040650 471744865 953280022 220047783 998870744 95499220 47725403 813381531 293297965 281212069 268028917 439508618 626688870 52173105 846119672 531074406 380987455 920819623 210871791 724765666 810966758 149777810 859696047 880373643 961468331 531382083 538870580 945858773 406983494 797307433 618525746 960193953 517616269 854106942 590411432 47128717 707873959 405944428 693945321 804197516 759661793 342778270 223564196 449075825 901337636 916919180 372405513 595385063 627082048 111501915 959783907 730032490 688241934 863052830 648561571 180527127 152795422 318437796 197547619 27937612 605858921 546103984 737125744 654479878 232549439 15864673 892420497 247653391 517040400 343532790 624836514 370927702 791566310 996205587 693270415 476690492 256916150 285068663 46000265 809326788 390978736 932303827 808561385 657966752 669706684 240813398 901352397 834548473 784774470 429879185 192115124 332959625 432414853 371893555 350177275 808487855 686885520 906876669 97080353 272200557 787166643 265721188 700955770 919390371 247127309 466085837 443990629 950523654 621518571 424895881 94606496 646136055 366593435 636344412 407542406 779666848 242894400 364241583 111309159 999092624 780175624 605476554 93827809 437410954 714512139 7835786 164440695 503554384 182560912 898465358 846027761 644209249 302779594 815037063 826603094 20132514 749158288 437679704 919218362 301177413 385612756 50779003 240907518 380297400 859655000 899190981 24309793 822782541 139725311 180779086 743617655 584666129 135032982 375819832 805523096 502020755 825544200 937111140 9541014 574836727 112001505 794040749 292392355 951581281 861462507 548886309 198636945 691688787 932539851 717108787 162970874 962097575 829309723 691525134 92026436 744020002 683331028 642361480 662580734 507300378 31526690 183719256 38677834 709449420 136459791 268553217 437458546 518097252 437757159 768600386 36110105 156863138 331635824 817254820 135484097 599850970 836666796 905224988 503560549 935272323 305702930 763111759 531592616 984073358 261593566 693912393 755482047 984114068 889747894 497974558 508447362 821767664 351756229 6406737 215313923 664758617 804354037 714978068 681170851 275708095 163792956 576442593 908397098 699502148 122335367 948935967 811391839 86780481 668026807 907672972 72937528 933637181 865433486 704678820 477468033 160181789 17448729 231365614 433735898 469977451 55963089 487430023 387344448 172122335 673365698 403855587 222454390 217994275 668169775 21984248 227546485 390765991 79169890 201691371 552284429 168528633 579413416 436612765 885884500 519968032 651742565 598513585 492175803 752954272 992014638 991309979 335441709 527549978 188670737 322729129 628485331 336304669 325225383 104100838 46915509 33966845 975081928 551053234 178854467 596585578 208765823 296761987 765516483 472770546 521290093 187627680 190445669 114181435 256136018 910203891 527548071 348445426 280604620 925476103 222172960 305085237 961916443 793192861 214451213 970767282 892316512 169834417 229791107 149870988 546956619 309538004 1918853 84512087 194520779 499032166 255374493 719905658 537355280 918206614 968632905 72389751 148324594 359049035 673519950 525717221 124359466 97451909 346466125 963850790 489636840 439362942 561713467 120491148 609616956 602643696 772510325 347013320 228866396 569061117 586945530 209161124 891631277 469046339 137278055 804218095 243902337 6692390 541858465 233228430 915188527 772014800 111103128 225082436 565448863 796122012 245589722 845149892 476915106 306923700 825331758 52745563 795172202 445337406 351843521 195803150 478478633 402042604 595439850 573633912 242680437 657261086 100012376 484145389 825657274 980933806 526477067 466500724 632049471 330650949 998342896 334750767 175151250 840094114 542164691 521731770 996966595 482373936 292960296 546969912 61213426 612249027 549651657 985869964 361206909 61333999 404348432 290130144 72215024 766903534 554717132 977557897 426541689 54166923 800169165 260886268 337860438 193313012 968932582 564929066 350609479 632331509 658416312 149084230 85169148 431711207 408741500 825394413 864040335 633511865 227747085 717335 111460128 326289235 478709836 48414783 715216474 548197380 550597098 796290342 381042553 656729114 476826248 871351490 48214562 871129903 425594141 446124396 689920135 858168926 30835043 794225791 412626121 396756720 866349998 625279908 508872233 610783133 667076624 75997405 95642865 722533310 831465221 315222334 449507410 122566266 79722569 97391966 288621869 762872350 331345736 653340161 435531046 471736140 874709319 416223526 655993779 66340345 744938523 858391095 89279101 137903420 155663573 280843310 51701353 311245285 103013940 133148041 916132731 296725687 354836321 183400701 46263954 770212454 438825688 100673100 321222739 401732201 386380008 268687014 711276789 646881113 960803934 323593232 195697168 927844102 76727895 728246593 775408873 830637160 226757974 668373162 180448685 964755307 803703148 781078582 539320435 13058996 612623975 346601444 337043081 913521329 490852760 788991717 602812941 823831822 228948580 734086160 650594506 131423459 353071384 644069444 304531014 700472758 97628505 817291518 158150521 592820969 150317348 564053290 724759078 39645033 278494750 906141555 348529934 575702853 90699687 102025754 908793554 750468461 860666461 647050624 27741306 376360753 214563630 621095573 867004507 76198751 988036589 914151367 497925543 975529335 174138186 977141001 756383858 365690270 929964440 83021766 928581373 969070716 56221709 836965558 738507769 501820996 891819567 212096889 465181712 891973576 366226744 367926224 195505196 285423756 274093326 507457604 670120549 355089028 167046617 941006456 709642398 964071872 932766654 21628396 400472301 126971244 949377520 644093262 248046494 673107966 136461051 271218217 629545876 156411465 583524925 395554939 27795188 464024229 138759004 953795116 176515698 317564146 217518602 475466849 145105079 283918278 355229433 981927142 593808232 540272279 382624721 575272159 324080542 446031912 276068118 529335274 203667549 517904433 904510538 705716206 427711271 630054886 882143911 330849061 86391381 574798988 107224214 563967384 540216508 82604474 95573644 579102470 120691049 533182944 829838528 10523145 531142015 254467548 588250041 448439940 348246876 461896888 468166471 266339697 949099833 586440930 82256049 867620010 903805186 633594703 563022524 497296621 387010471 281672306 741728391 596619219 466164211 473138403 896305116 675465232 67405397 316023767 319878076 281017490 674319798 118232599 306596956 464883108 444397369 433872010 819799350 290204528 329495381 839095625 919508508 462460225 145346888 736338672 467597767 528674357 753062123 823793344 251082625 86165320 523070090 20501335 411778548 643723975 865849924 404043678 418291996 545278149 572537453 977997285 357684235 804151741 352850372 161948175 829652975 543260920 292381215 726990940 688344101 815147877 866412491 211708029 240229657 204288656 269176775 81890138 311810294 222516719 497035533 991866346 616559177 325194164 262428127 332662780 660277570 938303018 97495842 155305862 449607394 929789845 324046636 498417342 882724175 420343401 823399065 443936570 706195140 762209438 617602405 193775852 387852042 704609485 319827658 565287289 304472903 329430345 442163169 200549571 120443540 582560978 399587769 35097119 509264440 384223422 189365761 788338683 577963741 28400136 210744172 263202346 759695321 2744906 818905317 416640618 758141709 443401464 252609707 22875225 362554183 371587895 237522859 832549458 114227233 702566797 713264146 81591345 374869625 329469111 542246296 315204907 955476320 989671381 317210862 411741017 202315073 925844913 561116621 830684674 136241611 79027972 571852441 999832512 582531769 512700674 589598281 580560158 86240694 307954045 86688448 262249284 98216352 700454879 902926268 442598994 251007309 781971482 376943596 794348377 306835364 508136973 261672523 802505198 53293092 166378048 901743496 368885594 34719849 588966779 692581787 958038998 239072985 764252962 392409147 765060767 757730966 236805168 249782001 497418023 585781133 110738663 287272011 614446676 986750402 390657066 106693279 758029007 665144591 856573086 893803230 694896471 647795334 873083836 649774673 821529069 253595843 713860399 886733489 505494284 734154413 27982514 525086276 910352765 613676870 113636923 793286677 123287577 380682509 196606894 740564356 645681307 701549322 902288184 31440159 833454655 982635360 439263777 275137330 352497633 238501983 605652720 680684803 346450647 164569683 46589105 981577952 457305970 178028489 706990052 43511413 65145242 68028471 30987910 792532328 114987647 191478743 504307329 471672311 337085412 67235343 371825075 713013523 962771012 8352094 253430683 786748711 533528106 886450592 187385338 70937320 978388878 8808985 40763594 439862933 748682923 731976114 865740481 223539428 779603164 675944971 572489197 958933460 915894287 654667866 886533430 1309112 691147045 899160758 254549930 162068281 482717146 521286065 210215956 824106064 876657766 847712519 395969983 398787715 296975872 111096226 422487595 585067301 482031281 22817511 186500024 997621895 581880878 894495992 345612827 419255658 280520345 96975146 838583506 433916744 685690999 833637526 387775160 376187774 944068746 949292298 794292969 648692483 548977707 822545732 972027371 421602701 504630002 359250205 988409037 936105275 156773018 339636085 357786179 504683653 452219950 679933387 781172538 198937936 330190790 200147211 614599598 834179634 174194949 43571147 307643891 378461185 657965426 880852276 241332901 967502272 776848821 26158380 338763401 20373723 116237779 749989983 257608071 715674270 399137042 808455756 32901708 651265705 565393054 384104654 82938249 649083200 684928382 818859827 568313870 125090528 858407735 972544772 692198443 318843118 890458690 256197543 982844276 908238220 509998856 507481439 257621130 73372811 567001036 644195327 589517732 371164623 247894414 163428582 75768527 316112651 840663734 571576197 266762930 635906547 38233555 261859305 729502962 448621899 336479157 441149902 971951424 498483497 762005007 806025720 317414256 320789217 932213024 686804846 253313104 816171488 273529442 515434328 786063052 445643607 862132756 359283533 567765406 779751737 426601154 388345820 284576797 944573391 915352166 608063437 46839450 594499963 984246590 405576092 666874190 157896817 420346171 78649986 497174579 993183233 786533685 153665846 990449817 667602425 807536073 414555885 911962438 357661803 763676540 262040348 240363827 313951681 241650944 958773181 238998081 617638573 85986523 775636587 808605783 335031240 95950515 146721804 649950046 668175836 355234726 791549547 398275118 800544000 775679918 550208314 193507467 96538923 46816622 275141625 476881561 975187817 923959707 163491869 85367848 697026835 970668258 958323581 433087313 284688878 491814136 532038098 477730135 140715214 423916953 718769043 367609698 784561864 62248010 296830712 915368315 227419037 765385385 601180382 436739508 474641108 775525122 541157232 641573664 488379814 780857137 473550304 598462347 65853586 82348034 743541370 590993799 113500894 94148479 484305101 857125817 745917711 335530525 195510037 738209050 737603774 564203945 168052803 335807076 122012859 850258971 585020887 499622658 903248290 963316951 991519306 889379322 763467509 645249315 794694005 28413007 735852161 335668790 156694916 228444007 120507496 609584116 731261157 865149059 727566953 81906859 634926370 178117397 142247096 161912059 676105186 888043703 678705073 448219880 605701552 502311858 670895802 637004776 101474351 457752496 118828492 497393999 193111596 948177605 406097387 142806293 454174867 392906879 166000187 195379877 334084527 88236728 265537305 871093707 835918095 850427928 342379132 224745546 1239119 27593021 14705331 451318752 648302683 159562805 975779683 54003692 293107332 504066872 73288370 473468907 15267291 180857787 519548877 688404923 942252647 722405677 152757397 598415506 372291407 560651948 871321232 765885545 940371739 148058011 230150044 270525549 824961056 877782094 981234802 392911732 991614602 562415400 231372442 359765570 727358679 594059673 616504934 531578938 295436025 442143072 183471123 332991842 350211257 616570995 283211171 750238963 266376978 500845348 264068937 301039658 538913966 875589094 591695766 291412278 558656783 107133939 523148330 406146417 479231650 225662306 667884672 159929598 258961325 104941416 654202921 459009764 122793946 496821458 517840169 604174266 88181802 150999527 9378684 369585581 728416929 666429944 580677395 610049845 72762059 280737295 44981478 997302316 623370605 214773665 234195788 911648139 18464231 662580896 687753633 609341342 24390318 989643505 473821359 47483772 399114153 668130747 45427792 795944014 298630127 751984808 311677308 234964797 335421239 509013640 310835746 805045696 394359585 105218149 139178574 379906784 742810190 272013688 876064189 3444081 198414274 716557136 25513197 198233313 154030855 215954527 781620591 188988022 850884037 92954146 914027309 415944629 443640820 686584480 513891292 997613066 466641118 843569875 600668360 477768217 893832072 265413021 179629849 195650507 856498349 781426726 101607275 937487290 913614716 215949200 446179871 758919845 358998505 348759258 511488625 492932194 220239593 663909408 513788733 921117136 23023800 598505814 718850070 131800678 639228489 245219933 711957474 722232645 619035661 534817228 509293742 769197794 890622847 931773652 142323667 292203914 129971919 870710629 536944032 879655284 237109351 285502020 35197720 223522040 354980652 752296582 918249877 455759883 859519026 418964531 103765954 291448132 348023045 440044181 503275673 290678801 120592580 557304511 483726703 998489098 705821724 809434797 175423586 129453531 284812397 700337227 73701953 369860632 604711680 370379802 869733575 121899265 813106932 909734357 325141375 807211184 740012550 486194060 775710625 114020780 547481846 901171315 190959148 406877456 392236606 591435207 316837683 491930985 118561178 228945304 38510757 187739643 31465635 477219903 492622335 526982033 584225293 946825373 640937106 81244983 890773440 686330198 715732499 750430655 327507270 950933746 892769591 525609233 171340640 847739823 716855464 894913195 35374678 39469599 811000808 217780884 742523610 207878797 308602182 634625023 709422095 687351166 652176015 962786602 495343469 845489549 370542556 727299260 344515503 828004986 801202891 696263368 569014427 19455906 359356550 882979894 880387373 153235390 439678511 880254365 175722202 152081719 862435741 931157686 366580758 626966757 83417786 611838631 99926341 408110485 965483194 488668274 731852544 280997625 645178135 251210680 185770777 938846771 663064392 445612482 466774418 378797967 68355752 55147249 708785693 826085836 987821010 299976991 541079420 153120768 665446282 162157624 950006952 941927946 398022733 448034319 294963754 651129135 64038794 155006042 371157712 944151731 304526403 736021868 88991786 823790771 470543768 295654782 25974941 698544454 939908699 161301474 387703720 426598280 271164767 218051647 2575357 38076684 25643454 313964587 839624189 803539266 764609104 662476076 529859906 178209038 699989406 402364435 410973954 542757742 734405437 274526330 832213876 381595567 476023040 358838200 734097219 503609052 890041331 915653330 221453407 920377169 400582542 243794245 293418143 866145936 44063079 449366893 650101999 961896785 452602323 299171774 465693405 857215666 598505650 183769794 675152094 589071444 197395640 163268900 464869095 3136493 707098561 770850102 356581821 782541930 538020095 843187817 692951525 442501845 138344057 405353655 937219952 771650012 935361384 822561942 413126505 377646739 755379250 39575130 483949145 793574730 596585481 349353649 613930304 349338696 647684540 737267969 690577864 898869690 419797346 534371026 224821678 373513501 417589145 684044056 920895359 549757659 849459073 203283421 814611904 394264038 56600519 108941936 12207278 817409451 165402991 79229368 325071062 480148673 87079635 111710070 500619657 153061858 794670802 836057897 918689210 725735751 912693600 358301058 939553330 667938279 476503347 719365121 607331775 420083535 166771875 300904009 905970185 913381025 570451484 581056850 920562220 894761660 429050989 125567340 185334316 383125642 271282464 998367138 482136555 705148941 867909204 596023027 385685488 976660726 328340690 254596612 628060181 788763182 145270502 108703402 714566230 198358272 619482850 923870924 140464532 889548757 233864009 866271697 494251128 294983842 740674903 766798931 148521680 561469507 682141373 523353043 473825414 589046407 642340999 74836526 662393632 647078097 962841782 867756385 487031841 878019591 391045077 614887171 908294135 443538890 838359919 287837765 258259111 306545687 112131289 871728390 97679430 600818008 518778305 800763743 109834327 126188171 207835479 810118898 773167748 279064972 784669534 659648721 217643365 54867183 164882092 819303528 128446881 623006886 601986662 295533259 252257633 592961877 28543657 996540281 483782336 273059996 539859979 703110849 335891994 307732811 128474703 744897128 704990038 363966931 200995828 760634264 122042714 127991136 69579647 242526602 25908752 40675168 493957130 863693664 348949936 998387959 255910576 757404482 342749290 267340633 260989535 389501535 524587484 860291135 170023971 228376996 14370749 734205128 164730657 2700046 164908841 597848492 135898643 301577137 133826684 810851497 4822733 461966995 818198478 97996747 216541086 344729935 538989267 785712088 965034750 501167127 712727130 252510676 849538486 332844373 417990670 268389651 121335379 186805137 942233199 688846272 482610096 793132234 205044451 249604358 32268309 108663668 609593308 867866334 560521789 626079630 531490174 600528410 468379745 533200286 308065401 964823372 304604300 424375795 463108787 485967180 523206648 78341831 828248996 43735084 491080105 344748944 900328149 224747609 649208951 306050447 880230197 536757809 828075781 4690059 655637189 189236491 291002485 310725965 835837880 679215124 509657054 918540010 234622386 982594401 423098166 126460821 377922714 60736457 432068322 549628237 310074754 463752100 429437168 605738890 156733946 598028520 445054651 277548513 678708136 333931659 947506915 108562729 677162016 449920264 753166575 143816754 809057876 838343310 463250165 80036256 496267242 442402504 497781565 9252886 203587383 242038822 130116849 355848001 192900247 927659279 795861182 556603424 335863811 880975966 181370773 171383461 213625485 903271325 138687629 872906264 56922284 393112642 175888752 172069902 582725189 539946754 767300999 571942809 303271350 6970431 639188319 295537457 858411320 444845697 249933642 184652333 764412201 921676581 855383920 460412093 229680965 802021162 46895349 990911653 111485495 280904220 360352386 491914014 89408143 267235101 478852982 73499535 223650871 628273558 868392961 60886475 634522739 166484714 715885737 900578277 369824694 464991175 53598283 988770804 80771859 332537319 343868579 805070986 59160055 672689481 925416845 322876269 849723023 343889943 121090112 782506924 70239504 670418046 408780879 78040350 69470092 444675471 128838780 66016224 382834609 19302886 243301040 802272343 932530178 530019170 187951968 580896057 116375134 835725224 634849249 95906207 497275287 169816404 98994267 391176387 184480792 103054772 873693058 230682072 936096984 676708023 212293478 602174444 474923832 90841973 829688933 359178553 489688594 285474071 273401537 687825406 932450834 707968603 753740369 889403287 322604804 551075849 260137315 814947143 319996784 774040306 586389660 255202093 467759915 234081385 383694486 949796033 358171826 36174448 783449198 861272558 147143143 155957501 88574099 516852597 644190224 501634058 290325268 773243073 605664338 110801997 826550601 129480122 904205519 892184783 219975404 451996277 752940298 112832498 39889358 589896238 450232476 899932453 293381293 272008979 384994161 762862701 567796287 916831755 195467931 732546684 743187571 870265701 131846528 34062039 364869526 568670368 217313213 16021399 897586622 441014866 856251100 664476442 771594567 965532757 689980010 891678613 465711780 177663982 9009179 156851619 36629720 222724873 182268291 51551960 478046956 405064565 709458379 38313287 862330996 66369900 676129506 930567148 853272194 347568658 710415326 871098623 111468310 26556672 458608602 270354890 158882747 80723086 5828574 958249239 190111967 847324543 744663639 855937969 460452687 590495506 439662546 472021367 799775409 186783398 339959814 981337640 878690741 950892216 242458255 324186796 849553164 740250698 633829137 201671567 211984386 594808975 783845597 849274097 110401612 706330170 969165800 289379055 304580620 89099335 764712200 930104345 66144458 518519898 955010267 510102614 522901500 141728778 155679287 278463075 296270708 741421870 108409491 38411983 950743177 98263253 843545820 128503791 788136334 829887080 877615913 123721470 230016969 613333749 624845387 752820193 679906328 627888129 468998262 643009525 10277277 746736771 852687288 320535080 348572598 801068974 287433011 852365841 649722167 19274158 944674274 975548319 560236952 451989644 345715953 812540326 598257978 102810187 84657939 253160721 472507378 32490714 617434126 756341459 521012396 704300666 326554177 905415369 732886326 181506868 832085983 799813362 383140870 977359004 885956240 700746876 588075116 442523351 60135125 870636590 707442852 539438603 355961193 991422587 10475715 159713885 904424990 528365252 942810296 525341161 212217662 109331958 652124997 658626271 270811869 119262368 897258642 107609343 787838031 768423030 169499744 972100592 933554757 374324891 490265337 824715317 61054388 41969368 975090639 180024933 74092463 460456829 323485252 820577402 650814711 635232133 349287935 399334895 401765592 633327598 387098805 742960389 440159650 680165347 761522246 276480748 200678837 461019532 93351957 498635654 134527891 963645982 678382634 864373488 100583432 568918797 452626445 315521638 770176874 526640214 633696788 574609368 656086908 205473081 876463175 102322281 456939316 774343105 160599943 505750079 106228841 889607502 878819549 591762144 187636386 269874516 405383269 428077170 265442149 426920764 274691968 514382220 590276053 419208443 576990978 386417785 279923671 205147745 395975877 149793867 10268354 191641832 955938786 372626972 512977583 483254198 288485872 273625541 767068987 106172083 872163954 874477917 194566174 714899919 668316900 667283051 385807752 776238526 183163990 295028812 287050856 99447064 586920415 709275090 925519140 703395330 546816943 421923392 5700557 816293754 831888382 77124734 563180704 304312597 121390602 498202346 228885139 495719497 555653421 504543838 84037838 275177170 753863213 120438847 196049509 834675688 882464178 899755606 212717440 382688643 318321048 1519079 849427523 786854335 556627647 197720811 458002892 335317638 697626833 555254499 943960377 456317075 879838465 737478762 269264909 448852429 137190232 388843132 675466362 159474019 984305991 629456432 334242056 672133768 36400164 182262869 298549884 499731070 351986527 169081624 268236071 707749653 864378023 825070666 192184943 11928309 521578202 726507654 202010414 995425534 451275111 37332891 653822660 960568942 181776225 4338926 885884784 299147169 135471473 460479497 452618062 875959788 19561429 421011641 754664525 34700222 240292458 557411971 559060648 98093641 395384269 950631999 767407782 6076613 832100100 469522101 755001752 423863752 905225981 839515688 271786681 851936095 52498607 264700594 673799166 933427826 925243572 933460945 842702693 271183312 97953982 217280714 830421444 882154838 209197262 249994261 608843117 378705119 84417409 827201080 338184799 483174489 533619426 594117688 376642524 455451800 67605122 762769180 533008751 748203411 454133192 40932665 252362212 165935763 241821480 408139913 210666527 775098368 107337423 198652389 946308320 829116147 683543052 866686838 86420406 877687955 832139880 233627899 176853885 807950067 926393803 760411262 718441340 622285223 983793504 132192044 842286699 704088242 545358151 945059209 388004665 60620980 599664605 733597109 451027358 68669560 611186988 158908093 269046139 537223471 135665223 459759345 172447186 417633869 414910608 235306769 340874032 23574028 300343592 47587879 266078533 182678433 405367327 844395459 802776018 398738406 423626669 171088364 777483086 498849240 519940441 447731780 845412491 832195781 793775697 84306122 766720536 281359113 774316532 717223645 319022408 845231500 29070647 719713552 560122801 839330011 304483487 488100307 557641368 905361426 882004967 519730169 769753519 117007139 928211868 831174708 130186744 74714900 748815130 46376830 863501339 324959900 87232791 859249001 376359142 904486843 565481856 960522584 42939519 805663037 850579823 282621303 967070300 586819384 58680609 266740652 374250743 513424324 939188934 536592968 529758827 523997898 401384187 584385927 204280343 933106660 376331715 423262660 510803082 402253888 324384801 300998566 602207598 307321632 189491692 353194308 445055441 903935109 864036712 379446036 494330136 81421827 595282184 133064305 807073662 149870065 230136236 604638121 200604741 210061309 585128669 884794769 227872006 865970850 760239233 795363604 536857403 393222515 992117148 152283618 618415275 302707342 311775746 125432659 235804466 129011253 622867350 613881194 929614214 503495778 231179377 663487553 645118081 17728703 951159665 312010146 963323582 979741781 300850190 544155189 653217956 51116789 703002215 496672288 581820916 46269303 442673493 639329253 449922915 98643337 682684490 261589521 603355625 772956692 905246355 590505390 94377772 871514540 852864440 156470543 862534034 746309370 846496026 998960892 307275525 524373755 666621215 990217942 923884777 947595133 458832122 197423260 933470923 39424293 550478851 591800489 750048462 299155941 256143088 313544349 110807541 27128252 436455637 937236036 626743782 833317846 342629900 796060928 617744202 405955316 19551222 885611106 64893832 431769052 980031030 734972164 373197734 617962874 969472088 767864138 197417962 935956949 421830540 952919771 538473090 151170420 545799165 230710585 427865943 565552480 639128555 860327392 702731666 648522768 377785972 688324060 726429759 468634886 802567170 318083322 2205285 113935070 62849217 303314094 584505990 303849700 119638546 131416147 415087524 683183115 655663412 83457919 709617228 328784720 719449812 789887986 514833867 827943551 64162114 667643922 336583668 191432988 865374800 992441597 737639578 568798271 583963831 882904167 549794159 790034847 460068167 433825894 307754126 949245893 185905755 135120959 431335910 539058015 407919842 765860755 410153274 345742021 255014866 799160051 807496181 756799395 976484683 377973948 75006982 305371524 277456145 826407829 533289668 716538546 106266344 510273449 226779438 251957140 366517487 989879021 478704044 961798846 685366037 984169160 843945189 31332356 119035425 425533104 229352416 645664223 392729695 773189188 605954424 71930289 328495991 934832987 234460646 189451646 623363457 451902050 818673857 345005472 835079867 202787729 269498989 495798143 873552477 523270812 111985201 54442919 753658996 780490594 305890863 687890661 460929067 281582829 416927033 558223419 227057056 802941631 311946695 380974909 781903471 100053552 510551810 506268051 273440689 628806674 569817715 641428207 327508940 438034520 649986604 579120043 321742587 264802361 585866395 709544350 46665182 189670244 519320236 184461437 710903023 959000092 46361778 725339471 590205438 764957415 921116794 355279014 782672990 590604333 390085611 802388350 461158101 207876759 762811529 246602961 383453321 77290989 222753853 893468902 463454700 600788147 293528234 750004960 12246831 254571202 1886243 833008135 600593872 270309821 556855026 243064886 700402042 789164670 263710280 418419128 98598388 644355604 799706133 331432725 680902761 548133368 701409186 914093158 987033211 493157140 617945012 184357875 578483962 594555150 140869125 574993580 287551642 711635697 570560809 258333849 797012019 959399352 178612165 190963871 72389637 365687822 408098226 585747658 640397093 946631702 208874888 494193560 12476270 939509882 45213287 774640252 242571357 731874105 284350737 439255861 62207513 52364944 663455650 138923125 294764558 389708421 703337637 337080814 801429207 456645818 95991389 170177915 168766591 815698372 402473802 543473522 136245779 404618521 45890641 974061443 681127424 928548540 152151371 236537761 396544666 270415242 309373400 406833410 841340194 571977678 514501236 352654439 66323840 471615416 605920594 741206591 871018188 272480862 760384124 913891582 447898959 828198286 110200580 404878420 941673469 57616479 202079497 503194513 9368472 878993585 363126402 573863799 154234526 31730466 499765083 87739304 142105307 742643095 531650776 177552780 164998868 110251674 88171353 669650064 407310719 820811220 921266655 896386276 240015555 925595474 948631689 187210985 801767448 808775726 32207325 214624208 952921746 38540572 193403206 570349339 580607570 475498658 295151057 914921089 139183182 780641677 257439707 678499476 195352738 349427329 319558102 244038417 501307271 970636485 892244515 261404742 573539044 27583289 580809512 433024776 510038706 896074258 147958406 773252917 193609156 966909196 336349724 496902330 276430582 38271519 285721738 751013340 367882871 842309428 6435117 683233900 221666975 552541868 492471374 138884781 13697042 179859904 472911133 596889080 683183971 922378767 531006330 235534763 42105502 91052506 433382159 120387454 999400065 564985277 60096810 419828481 913100206 140798145 57713644 14496716 726550808 835874191 622570217 718288682 983977928 290944472 857116884 732057357 597992239 814800235 466386554 30959170 472555017 654983516 88734026 439378436 468904284 963388942 838396358 422230942 166778266 572339034 560721370 578530737 120991071 598400502 180498227 956578493 438363407 308498275 738841423 914491134 12244252 97476458 996736502 400073885 21650344 888050281 822790984 640402332 638310652 370255072 193187644 58927909 35125359 22711442 688243808 491594563 774436884 987620726 816513669 792750207 664620196 554740388 822440389 280373149 570832237 238244143 188678613 952643137 44133124 234485115 244477024 534563532 706170647 527565688 506383834 162381612 213214385 451241541 396379937 61855349 73718887 63782325 951080007 827356553 59969685 677097502 765148199 241475366 525426344 127548193 720641487 331751753 427671531 618042100 200531669 995695546 153311442 948274201 615511500 870629497 161419240 633889161 766607100 404629017 241440502 450852500 4717100 953932184 450475876 158648283 702247865 692461574 906348322 550165321 623872221 396108181 23872875 839822655 962643283 918156493 282313111 317136769 591207478 710603869 123912320 364743788 878706469 544493392 201260739 180972135 326799913 264068618 624478190 654024455 320887096 163266462 50580176 565418825 142790590 350148143 716831091 766054504 131501746 229594559 424705760 134477983 219020163 798765303 418409775 165973555 632493728 725800382 105256980 96373131 600016867 639193061 22506525 872399454 302064117 185345716 571109482 944343098 250888199 167992733 581221962 835240557 149241536 786078954 630631971 201180921 625090627 84669728 71497919 804593051 347737573 349243570 170977770 341779604 467807471 151248110 803295370 371557123 43284856 824671650 306749171 363659342 134071452 272544639 787243398 484965936 469718779 701427823 63683529 490288738 794574253 430535263 492645572 189220652 548783104 571352915 896681546 159838544 58718298 695488238 122385271 290955145 988860171 782049916 32723888 574970622 400895790 134524475 232692868 123465435 280926240 720827578 754123224 389596840 284195 327891709 549397717 914850044 33135590 557636847 791149084 873866148 523274065 10963448 551143870 16449115 983688060 252552675 79173756 353913674 295993225 567380005 92978729 215851900 631779503 760480955 913673824 735677523 635257249 576186149 863673221 362440683 632985531 123596897 976461505 166539200 86296740 156296459 777360430 306234401 12738570 920414252 106236963 407305979 805655418 793118014 461937177 970398180 603846898 91704056 613125744 659079103 123270402 829759276 711318461 186944254 84093037 61363500 463093339 258195646 41201615 380783593 500117995 390711312 706132440 190453140 982482574 503204115 575087938 394332493 929899272 368835669 531371506 26990705 790237197 338268566 894259467 638430592 749506688 615412338 574490092 502289219 333806203 233768161 563415070 944272947 621202393 890507469 997662153 329186000 819761574 56068107 512970405 211290427 530033844 618304624 763458054 511684576 210528828 166768116 64704474 510454523 715610638 313589918 608785511 562412995 708612167 348776778 625614519 518317864 98956887 824762964 305223614 390657923 18010109 373955340 348523623 933562359 708898869 790544646 211567347 336939606 79245928 926047064 311658980 562500122 847262439 50563866 126486437 268965905 893205861 797660125 335922296 348147649 641146864 871196858 166983723 675898012 152392145 229701800 960805620 806041643 261938869 31961027 63157932 839101151 798025381 433420420 367151977 873753426 288679491 178192849 171969093 83443444 252926550 219337161 546983789 203688845 393145177 918489318 204413467 439573667 319313609 250279387 251370769 377565575 261921165 785950981 910162605 183298241 981759224 25002609 522779026 647387145 4915414 296890386 919247624 86505947 943322701 15906767 529395527 709307955 704422133 724602076 811699425 489467250 198366988 372843182 401895310 978395014 898924304 225081680 350658455 532881510 503078144 754592901 245509553 702094332 847640763 924036695 563662003 348375163 429975935 563571262 872403511 616300261 422483414 979088808 642405927 823533446 84569490 72061397 219043532 587492454 687038364 170933226 377609312 748470666 658460618 401954355 814487399 935012321 947084692 736506563 727133283 334822235 210673719 433980001 451962733 515883685 651068067 855219479 471467948 867594825 351531369 506714020 374488114 709696088 950382315 600524531 488288296 562831784 403167304 652763887 129157709 142647713 831773704 429498879 972566265 769168692 891134127 232156576 390181867 598691331 692895508 96565136 437667608 566890228 699475333 973848342 667363917 267557466 840479075 753644361 805552005 353815326 808953609 564644749 764927164 341312009 676379562 542091026 61767186 586615194 403711722 420159332 709157748 776080029 725975080 721149568 908344418 738554821 531165003 331999954 411848881 309186463 456900416 78924149 466307609 820467684 160677993 520438363 796245667 194234156 975280564 799848295 423198220 991941629 694084726 924942739 64606450 756847754 896614780 790270706 94752882 805987181 444342967 359953601 893881541 364772731 104849438 640760728 345168181 430100845 346808790 162329950 420270751 461770704 914476300 293773065 84221536 356488947 555747041 550291856 89918333 302463325 211300561 403797061 168726149 927483350 838558824 110600263 48649894 492556633 136680350 268876368 500401657 518006109 362801405 184339675 770162989 123914305 469578787 827554884 419652495 997454951 940122246 352212707 965893220 259702859 23903742 866790794 496163697 89449538 946293262 293416264 703113412 860170996 114320549 438952431 46825836 651029534 664327439 138943601 98722766 757143085 292056230 425758136 232467537 352657143 876445841 534979658 658849662 595930900 230924341 442095752 1181156 998525628 971473331 264801771 526527802 74400547 933910259 832173667 145712813 854953066 784826094 532627414 811375921 735105379 986429565 166953970 65757687 31231211 657238502 793618297 999190994 678958924 769922839 260337207 866130229 820672765 843452287 552506783 955681524 942071095 614883300 860675185 392262714 270567794 594117392 519270369 491731006 346859697 363290978 867750623 439346615 845093397 791750949 999868054 71388409 120921779 541006870 195676781 638508123 288479178 53990048 975198181 242127033 152560961 589483195 700569722 818397669 126482300 505728494 97331876 392436240 314508704 865482552 134119348 839014527 28136749 982041275 484111725 682099457 363663475 671171145 115811212 410792430 10236368 383026322 494928846 962210357 42458340 395640352 396699918 287114592 837144470 762264770 814937227 741394464 632087215 493885398 352059336 763710269 219719268 573181093 324674534 382460160 276570505 686083898 716461318 46927766 204732889 813013505 242724810 583442108 646810757 128757393 311189015 208359046 12537621 366409935 986278694 786115086 572380551 280263845 663165232 936280395 880866490 618673456 730047300 50857706 111663939 523325569 399569372 840164769 416475557 453253930 681280889 360807179 754675800 595157952 496382111 686597415 670748567 180726852 390064652 110233209 556391955 394651233 503758031 395029590 528427593 98855924 42558766 925610386 600578722 781570139 934348140 359598210 73432400 688910594 305814952 459840093 311516178 580978133 845484796 214133589 632991087 704786299 935391991 218800435 260616307 465637358 173872348 903368823 937262426 197851719 198581781 666836637 452079724 651234000 870407802 735539580 895048914 884892654 924271271 693844216 339414728 694106205 322545710 564040176 930561683 264791054 315943733 72155684 266340843 745562044 288975291 50816632 810287822 955093773 812775737 795608945 363728490 647634705 764633874 161580868 750352406 858173519 939852563 744244374 417542848 958049124 695338698 802249517 603806754 107831962 62113601 375414453 453912267 150859173 301401537 547651700 177421156 387605091 699393204 45952651 279695395 897364537 897686577 752184964 735254560 579333250 389878280 930505664 29689591 571402150 358940065 984320 665207222 124397258 426382397 613429520 932764868 320920163 666310768 307744584 857648763 385888478 363535264 424041759 362710959 278353648 132324576 244950443 611932637 684904943 987882395 903047168 564039990 91958040 853198672 788607233 165171321 130724096 832441734 501771022 814109019 721707996 6053116 561871871 195267292 563675750 239400818 981312785 877930898 343741553 741443350 561349432 808606186 631988070 94347016 142825298 704954564 210394791 308700698 885503552 555395767 66727075 394553255 633300679 540877398 711228129 261602414 325393645 329690544 643241954 460414450 846264293 572098490 593144417 213626878 957466602 842502796 262515768 298100690 635514279 110976069 349442361 946157871 551153307 841122445 66123712 421390849 507815324 687689225 25652649 545123455 100203262 869469343 665821317 387353988 433632799 551720378 561419644 69317280 755887765 987129174 648325828 72003006 300351964 366506436 661114163 112150754 62584169 362585543 115492599 212795873 84186123 658961710 911894869 657659488 727454403 985844522 301058484 363802928 802127383 955349070 604077665 77381371 380520752 767032841 267509263 246759745 891369425 36574163 162083687 647504047 819532639 122696403 152797085 906143106 968981729 791001794 536902950 18774773 15622245 610652201 17256928 355387368 731606026 926377390 641943237 788281329 149111163 503067189 105826188 584270925 593323427 230015448 640284997 217872314 688459459 76963732 580166955 45649546 577213555 429939281 54497896 94764596 874939889 198570148 545841866 5315950 984821722 420652268 884846718 357828121 890247766 919872106 158647309 675695237 25172224 792591440 924769386 165806986 775356478 97005649 483450791 114548570 67287996 488659812 924729061 155246931 538150329 661138982 694194137 80799549 977113547 674605518 239243832 227136751 82104290 468524605 916912932 349362363 186198308 375301732 123114973 696550716 112834608 459119849 100096580 623540463 725120041 685174201 47319877 128105004 101241407 287665418 609716604 978896538 541702272 968598852 217256755 792411049 280279284 534774039 687229363 68847171 167627787 180606084 483607481 768235517 494500123 154698771 28648143 332204866 344900956 987538679 911774351 329328315 561775205 658282290 147272620 641125876 181479814 58371653 744755007 601537022 472165868 53167551 182854635 190157078 645994298 993717582 403058529 725272747 609663595 750507522 709728763 707738745 604386432 650604840 446091750 468835159 91687573 959345483 734467480 540878879 894382941 646088168 10914362 461175315 559749796 347421084 174594915 832857388 92670316 584312358 679092959 790891688 627699950 871428039 212545418 582102241 324930192 929619063 938427374 191283090 198412532 795668592 970292327 420338159 503112870 670860455 692723840 512698004 285030232 726399119 157851654 531888723 135343685 319653421 352705034 786413199 121994299 183040301 590392637 262048758 288933007 478481982 641703614 994277884 39809824 169822632 365512791 61269439 309541471 290079819 63159043 376031794 181970660 776340160 915777173 611705806 319423512 98363173 215662359 309285550 992752909 468543640 789457894 719851721 454770100 411920130 667321877 985408715 407105109 877010310 934689659 573709299 231738389 303197494 129694233 281864473 796709399 187113853 166538541 648285456 765871791 568010072 868352788 539355745 157440239 506356408 776114755 510562036 335501695 143065401 553600438 610922856 252647131 656223504 419282804 409565707 889640874 732520671 106656213 132984738 278221544 362516104 278669897 100247070 969323934 275692896 410822255 457024257 536047933 535769348 669797142 905471401 500356057 863977616 931337092 317762049 441027904 523054843 121599032 611382134 443088317 119540162 845794134 376892922 711045573 622793640 783127558 987731443 822263281 324215924 175848819 977197964 806289112 110629651 364783586 210663462 213988968 783432294 688675439 114941458 948428051 443065216 28673346 818149854 585916437 603346683 105192090 36643961 431580846 526681304 608848478 299252203 384026697 240074932 851321560 613485487 705676886 537919700 433625985 712460432 354449376 209617400 595403206 47621040 983613616 784317451 461564124 983456952 424079632 565656092 981999316 23377992 130824880 971941881 608413750 870528672 714090704 494137477 688181488 328243495 980066593 438317134 531374256 159155954 604414168 277378079 916956486 132132401 685865467 870446916 27297704 395719737 125131695 806127420 972624286 37717049 14848067 174800570 747185377 646816199 58324787 549223657 34086199 805069930 108931763 947355906 302911532 516154437 380748118 229313943 722739671 908401415 159913715 212944986 626510366 791134928 330422586 367513958 440364615 237739350 639372401 474646250 274840691 6103634 366641254 792960452 852286590 330213870 831215134 948145954 622343093 275924236 299516273 598126997 128337950 102409433 738614338 274653909 39396374 4113207 677161973 673461798 361590558 764620663 329785220 759929655 726558816 397087425 381343694 893160319 129480373 789096523 311335720 39494817 749632217 822067754 839528257 979853396 49812307 838033645 936956326 133212375 104824481 877272064 763088873 160107348 913646518 926484438 854686759 475744248 808482980 984439477 294103720 71755274 912188964 299154044 466140434 801577680 913923470 239520646 599891157 764176312 260550251 901771370 23878201 9730910 61649955 701914335 367711464 372814746 463177985 928374795 594695892 188586670 548559406 583400546 490600947 368580393 946622266 303809223 217930828 926953778 618596876 249546333 464595277 503507968 216620169 104114865 625789471 324858875 336067614 993253639 619345918 591245877 33469770 435945377 958305198 318765901 812618204 502938640 787112603 890851207 153122991 411382887 78739810 294746873 320352937 537483209 780674002 86233646 582705743 449592762 495872472 680913969 321084295 886936623 56205637 985373143 151491488 525245328 999832532 441520175 989614109 413436606 867615044 526071281 95580246 760148526 754739542 407627218 934714655 646604324 984619241 229707657 339007139 516541428 718758810 798575762 946167132 965551525 762412169 661989640 819358087 142291228 151437704 587637967 395039532 575078024 656583153 58794490 560898989 996766924 906039025 325544695 503343802 278292891 94904625 173807664 402605027 139012014 733872693 396847041 113326475 653249095 651959835 998105523 15528078 513031492 71437854 550845564 313026073 930663346 339482181 2328670 401712224 908311106 406622928 550266227 561051491 638652125 938633595 407883103 86755616 51928817 800737021 640298464 747750947 78065502 63760646 363705558 432767520 256287378 824008211 15604379 175917462 208577357 503719620 129801473 311169970 420569011 520537603 572656188 93317777 381302062 862047590 154512880 600718096 647777371 514743955 837312248 314995876 309241694 458968485 548791486 561006242 969468589 137033072 721803641 107449494 816657119 491423572 175584558 673253647 64453286 843871183 211864222 242586092 615716496 393163724 753522833 137127300 495195742 522641029 80703057 998666245 233458170 169807366 554790831 439184534 48830205 17932363 270019221 271444189 989208934 216203399 80719960 648247391 866002088 568969257 426561586 847844080 892945719 454263457 641502170 838102781 440659199 500374452 17509968 31529951 146897888 513982397 172593641 515062951 288471842 772792253 685613161 453634723 285111805 790597046 107350007 689676182 372318754 805406575 227987971 297696336 631545286 423409380 125875214 623981684 430937573 910655770 641990000 246324266 120825207 172144472 590935378 890680192 44889297 240209632 672808661 62589499 256849965 331141937 398907620 477008660 939796138 538919988 695903006 798718758 788924715 54121552 161253136 156926819 143737395 916306771 673840807 71418186 394204410 323755931 208449093 258111665 947852252 655291543 600406641 973559802 949728906 569671916 788522424 533915486 368002497 697474700 678005286 613189055 236070749 200726054 912585067 93700360 353104756 173621840 585702989 766922558 921338097 627008789 51789367 473927750 103427494 21783821 106132816 66326325 230377643 947040612 58640173 730216270 159429649 186756175 10875474 799017884 190430933 441753117 342636448 882765670 695048530 85166438 478061019 174673515 860367002 557066593 410894839 776442067 936786989 718747014 890682594 625712514 921156742 705271833 682870377 883560522 635295719 24403757 620475469 153576427 731862416 787065883 398638648 84491803 87404368 360681432 171000651 752207488 299804551 82755343 751970880 117860872 249656585 698939957 154539859 530528900 516190224 968560700 251187431 329583840 866934737 888390392 273352104 917829471 204484390 633022811 311165944 762253874 883124447 153166442 605274664 631655959 534491221 724920003 205343566 334083138 900139298 745127355 642745510 978862110 944280621 725779907 786541908 207700113 361548776 911446690 973829299 525259851 936103303 257851804 432895920 569807662 77223924 464061527 580813274 72567155 799766139 205989471 848865035 451624467 347954619 619604794 813558848 252060232 112590108 11805843 962568740 604700932 317125399 602093942 202724202 616222576 295301319 344075974 980666632 329718413 797262899 287130567 765753670 685928110 263284962 94685373 106100095 157826848 674662555 241767425 612446955 530169970 816516923 503477347 88052828 247696256 162735872 23209169 386931025 228568364 139074344 538831006 465987456 931709230 32242356 781291321 677829291 237073536 180720775 218105865 289650260 551080454 86464843 620769977 600544619 943908849 702163802 325907467 90015331 282590732 390068774 452932009 605740781 913255838 742775601 597493337 267597655 198956133 393486870 929591601 449697783 396451257 709601075 642712318 664502471 233379883 666461542 941495527 912112646 186678840 989656959 558039231 22617500 490404458 956621264 630039253 56321765 436989405 65637180 961060379 477156775 58555528 232195709 43455735 568195492 586453988 935982544 889978360 423568765 593652498 440150705 561823986 839156272 4776543 552062450 255358095 986215531 889282956 422780206 717084008 318991643 883970621 876646817 569660829 569983180 888688322 632037892 773271517 217170506 316032599 641468415 2346985 692733047 58117803 730424657 982176522 952802342 915532751 969489016 156542221 220073106 789599144 418824650 68949585 169357431 937233972 21626045 472280822 915469807 300158757 694848061 122969225 829641419 440488011 684397311 963946867 466587401 220031885 357743151 385371686 195456325 864012012 921141244 431121985 103583663 981282700 83158574 283327075 343273588 853165193 644486800 305005528 137452354 746579545 169079742 588323352 941717972 372062091 188559949 268136965 70108251 4834172 381514998 746527009 855899591 45165104 623848716 654438298 384979587 338229163 247062066 83801423 83367376 924235082 740213566 437763819 38996911 489064108 318122406 166373055 690164755 754285214 798870660 628065527 428920878 199061277 103179836 960336180 932186476 85709207 411319654 688626503 40385371 452777732 317871286 460384840 177473879 402124770 637923731 771606433 729589743 709475544 111038443 499100308 79047285 337412352 237701799 541312383 94109107 434808019 688107658 862055728 704436421 356201056 216844953 546325517 751741149 873668547 786285346 231390871 360758540 290221617 578715307 587774327 927184924 717653229 830669861 364060857 126001622 919545218 37032680 664312606 823933020 313278885 366179138 487060590 350354519 650367729 962646247 758965923 989395584 90446438 747811995 829477515 996800322 191988195 350892094 213446302 166521499 294076682 866463565 313871021 830555193 395406693 390480765 267633174 520707273 875792781 732609617 642242275 493520146 382439975 596143093 832003363 395626489 61753948 223347259 102921927 86969175 373155363 892075830 359574902 201036503 939575703 848097946 54315283 560424429 491455701 125096700 421247252 506499157 451862710 622545387 121703198 11117865 1527387 234243645 884657221 858851353 458850122 523431145 748519112 742071009 459925935 161281469 972168800 56037664 723307272 729038060 806624047 575185486 571526704 153555607 936662243 740566144 923062959 867540750 526091137 147384380 84927787 494541640 516421275 600557128 593310238 545729873 353508327 585049842 634182707 340565189 575772971 726908295 225908076 318404838 983571641 38255471 714876638 565854410 743576909 793163458 618944341 489881945 43911374 871714050 327801915 356739704 525714113 941524646 65024740 342250189 227917958 668716570 92516659 493708929 285366849 461960296 188085564 383708806 846083508 367078700 496316307 607930645 783110573 658825151 253117635 924050789 598049751 489443745 345114525 757112395 501832463 226898182 94963583 792650854 683080927 458666087 411310500 987998090 61812474 567414696 974074060 193426397 757852212 868557721 71278935 174877053 81699738 94753057 363297829 412022147 379309514 201713944 552471032 230015731 452814843 908480732 391235964 839866125 922052466 115259697 253677260 893290947 729658274 937710125 576192437 363792596 588981779 721870397 684421487 370889509 249048710 780393455 210257306 419383640 480100575 665817689 755104200 622506892 432686233 484665387 322981455 268318898 39937999 295385181 104410514 584627293 827698780 23365954 990942402 227829135 923335943 420542868 117383452 906966887 289527343 672744557 187155618 551887209 300860885 986930204 682363138 160425663 975159002 719378337 99023118 112907657 715577800 754090716 560500104 64433116 601990541 527157325 210303626 945853392 110585695 567423983 238016295 58367373 51430913 190652706 952577488 133911531 403004562 234395595 159183667 109804819 687717367 305767793 100167173 5439210 263188939 965649568 108140146 574659682 417300740 102830131 422581242 182067850 658631634 143783812 866452911 537518333 646487384 577678942 172678833 672467150 612806972 629046191 328179868 992769125 318465097 410562091 567452087 472038999 431824197 31976577 387876686 654681991 481014191 738864192 697615271 826879717 320385705 156325238 913443958 127585790 230624746 51096286 651540230 630714225 945686893 852600535 298195283 784921089 154177578 163022846 960893498 80786231 527452822 262565115 752116810 821754533 878755856 538397940 284573473 751190219 99515973 479938763 615417686 409340200 913153458 469757049 493608325 675780962 21531357 180548776 949150936 691777511 49429477 95872184 281631576 684540592 532121527 459519061 193709421 591841905 511418308 355109354 573402309 896305710 212100741 90629654 740375592 413330388 372370953 507476903 118637726 516571648 984332465 672734509 463868652 8268468 49886687 842807390 30397073 766575423 166946705 929538003 951428206 770960558 499598311 512425520 763462451 910511762 973855276 96119731 276528733 197644946 704284276 545166901 597646041 528474600 413930622 117840832 837393817 503666889 730919272 303822218 698333321 673243579 970202727 755790661 616276910 781466761 151690282 909293015 719020195 267340604 656980647 715904090 384534192 205303689 7374158 926511276 793300517 401409217 476548969 551806375 150055888 557781761 667115437 274072076 983236246 694542405 598069174 419545174 399607755 745517873 526339062 793882095 839109083 79381999 959779201 944668771 406566877 844064643 837524208 794728511 495075012 239804357 467965931 81559301 8107509 886918888 975738215 96071628 858953932 751999896 76335339 477939382 530698611 99843630 655731773 130455211 287990856 820247446 19389135 566362364 282960704 800915353 254744615 157520712 56035489 633229945 241066116 737357325 405004230 75343521 283783076 123829115 681997624 335645981 51461964 361999727 433237783 288337191 948613799 865231012 97133769 760008837 532766890 286513962 809760510 44388965 420828538 325914626 3811182 592793362 261953794 643318799 88082349 956367593 530573303 649814058 559723650 418916519 517440984 907171351 570178323 780076281 406220523 867153427 466480878 140963642 842903580 551270362 297117899 28627934 262662926 869206694 791775463 501957192 245791533 224403319 971797010 401799572 123281372 205814633 531459738 654756061 31109145 999574579 87500246 428356780 849997674 272973446 85125066 675795549 917482612 832432388 333401966 989189466 880623978 562276001 266575912 613573443 905306594 143002180 372073650 105944199 961577427 205699619 993447396 823480667 228219114 734364413 691488155 359419663 991239144 335166249 250092447 96889254 154485169 923747357 239131793 591954216 84971488 821448818 722165533 60111873 939638776 213512947 530773489 673057967 507306487 245608019 792101596 627442773 626210469 465881714 218183559 848186862 800817810 604531243 272367110 157348306 257574613 872577312 955280995 194461362 271609941 302627819 879751155 661126944 565321713 11442891 992978892 55351370 742275605 746407531 339281902 810149771 696584553 172387231 815631252 453316099 404189810 242239174 121933959 434749169 56600706 958621219 802473937 93695987 161742623 417207093 82207750 833584289 513023454 671131485 511695051 899515271 963026803 395990814 55681 157338711 193397733 256726441 477449940 482056249 484594878 416265248 626273096 547879079 216345971 11033916 242556641 308795153 108016267 465398863 171540792 606297248 33090027 40068601 282924145 35422682 29081153 396868293 380610428 321644648 72744269 683193737 321951417 617186259 581940492 148980133 810690329 301751395 872735895 260514608 178344983 252007031 766379907 11273270 620322291 677044847 464080253 975861904 184654674 538249451 484598545 478352577 176954369 370818765 845136945 924777431 595342960 328014766 754074665 311192195 235361523 38029817 96190292 159377537 931658008 981010086 956092020 156249046 953019052 71269702 762854562 677735488 617190072 967984954 695671533 293968753 846324382 961649647 252850604 761214166 129511630 150238469 684317898 293152061 502053022 641883194 561633462 306029486 821370010 730397751 600970422 599401081 410385607 321325114 157866203 940447005 730251779 80536515 283263523 804839297 663570651 791560649 583608629 838944015 975805966 712828508 893555520 706675179 448917285 894616572 839312305 514456060 386642781 169257349 231936666 415215485 417492944 81431580 31168248 794284632 661479355 903019277 501573778 962391085 117612662 69809424 70700148 501731496 725087232 132390918 235555324 132808751 53949674 792204129 120308423 823658621 786979291 55896455 790261020 621304841 892244414 678297690 906954539 647567634 954239957 382449528 282215319 211030343 461235024 998950502 78425669 499274120 683969474 444478476 20841375 41299104 958394129 346724769 601759423 103614358 854031258 527165623 452391168 530787284 893762996 857998970 890620089 987698212 307973018 455624539 947534358 582013598 616445795 526655967 638353420 265879592 706323092 869741200 106678140 254713478 714745748 25785663 921923630 43907358 889329853 152493688 744412043 560355893 556416614 570542596 776341972 277916686 367811454 91613025 203547060 974312507 524270098 422123611 498248447 880627637 632153842 230933815 727386728 77417433 962529820 723942408 384430063 364021468 355363522 152905053 292689906 682785427 602869058 692576260 287207536 151438099 570126433 14929410 433584500 924626099 17748686 180053223 904639782 267608870 356559212 743851524 594439594 574965260 4225388 245385496 56060671 190357277 715696007 445331987 405825636 269819643 456836162 555514169 408332165 855606861 550814978 573390326 104176855 833617040 691129436 376185805 262396750 455412789 466403868 756649439 436717112 98968170 253721239 68519547 933495743 522812514 396415819 853740358 597242594 32001975 84508668 679261386 312486046 205216215 647111218 260357918 173977126 243971903 526533617 756979214 22692554 289552909 548330159 693165940 294869446 235316672 648806716 838659427 17742680 334807705 44872460 475729070 585938055 313424955 164492100 35320531 911441602 560932569 57150655 360136287 799667442 126594382 94538308 219302733 832911418 964410336 155479640 343544673 804946045 752537023 969621918 709168210 666648545 886129038 265632703 195993713 431219374 640005958 146480888 127068574 833665190 372499185 95321565 489333460 335346468 53912567 917592056 901384334 390484884 433014130 861936825 150676756 738398643 861835739 743585796 851644617 940374984 723763153 295670764 231476322 617771171 454558588 299486677 677796693 1893748 49163102 306301826 205024099 774294985 660133252 637923854 728204359 739384746 282573529 898030616 489008481 668316168 106086526 450953046 69639006 677857509 120556724 406986631 190893727 132662547 453234614 189309517 837062784 364839933 692129975 86652104 528643837 674273802 666462682 230283130 747703105 849549750 458531549 901132023 389306602 903626462 860669523 517908771 511907096 907590908 475967290 687751151 861458545 645931686 134759601 122089151 528496280 154507543 232117512 90693865 455360830 683247046 219416821 295586834 70399482 951930814 802563491 992264892 633545471 307915395 58679786 104437104 65749259 119931262 417733343 381407477 940962057 449225204 140841151 417056846 960850586 288033198 703602315 953647066 562808845 617863325 444959699 113819883 987604241 744605579 725373244 405779107 182763407 120213139 846093736 984709908 802317289 667160208 982701622 38626506 196565180 614945969 855472197 653057155 520395949 270822519 470653815 405792303 257832264 528033196 522299369 335086831 309961640 753153576 196683788 395768086 776867917 920319300 555899118 510024237 184982652 166723549 158790405 78301974 64759331 196063442 663932767 373552756 631261759 565734772 75850106 620370566 868041259 237232599 796973100 957733373 955753834 459103771 864410771 877889424 578866376 23838929 670041975 48717159 816821215 953906594 154191799 799907987 135875438 527880777 298962256 415574189 410696637 989769984 289462549 706364606 33203337 884175063 999423065 466092133 767625971 302805601 805190933 116372149 4240573 41988979 828617038 592634316 952772679 711994317 249564745 164423542 645095854 616825800 318497666 764232070 754078027 939612485 48631633 146820314 806055649 26631345 981868348 199608652 945928101 769744619 365607218 686367250 614275284 705096082 527291157 800489458 337916265 778389922 121483389 741822752 109764618 245449999 48781691 783792196 455798239 497826519 641572529 955329627 560679168 395214224 393913682 158028607 445077668 835860185 7259300 92427555 285483948 49280971 943426818 74515412 125563678 579741954 560687603 157899933 674062630 624638922 226699231 513964744 657529059 284639414 558144986 582486633 91326511 575523979 431508049 468517083 168265563 708119755 733371814 70975485 480434870 79455926 960294214 401719695 619448896 295084524 330565811 623632775 622372323 794056415 162996892 208206445 750821170 996238394 173857517 882742530 758388147 559561833 241601436 968696081 461053097 871179607 714468310 330780694 931551252 179865409 33125806 938309182 82430057 434733273 700434935 248434909 445521213 871282760 643484929 236098300 50316772 489506903 515117355 466770547 848120791 881028554 473513505 791252237 665907647 918767236 590133418 127876135 829372133 819885121 92034110 300809228 100520074 823631903 81279627 164800440 976017767 41469063 773044240 129045102 630569709 300715748 254507594 993478720 841854985 772223223 565642915 817079996 317800233 771598253 909544196 226975464 436601016 18644606 718888642 443909344 929329644 515284768 610662116 207417475 198489646 979628190 392701039 345975393 601288218 786161135 677159187 344094053 298043299 301086264 502654384 251664425 394642305 915400590 346211979 726556909 895100581 606565437 731258959 17499747 372003398 946889764 612318589 118739663 202531437 397394512 18026681 726615257 221718726 622149934 921735413 627166139 542382752 822324779 685488420 665335679 480303573 314847406 27825868 740386793 773025921 285974737 596112247 285110179 733766477 497473223 999928972 472765553 125804500 255217728 421740764 598546484 479229894 44748021 666218292 192863048 988410919 848897880 527595029 928667302 588059468 453929595 339754875 988193559 641923008 653239751 527471757 847117701 292606230 730921136 500020039 643452422 543215373 175883554 601353794 372562302 986853975 181373748 674640782 952445169 132656915 936826777 992301877 432993185 277593521 961517506 625077256 930914809 753224786 846587509 327410329 706730679 717604979 769376828 562630631 565203492 587727622 417207832 139096836 793400455 396222829 468226845 228247764 338856247 901464908 725648835 37720521 715977654 795914379 522304749 132421634 689813851 179513955 906070809 921013354 718960231 236483764 508301273 461799125 987770726 244875738 647148754 980750444 478810855 219828119 52768827 168410782 696720091 546433312 813843379 34082234 143412786 691541468 760265483 586723016 43684920 886943589 861471819 614755487 512431440 600102039 140065565 803944662 883504160 178441433 289703265 689593827 563325291 368432569 401754973 955861269 261642564 745823475 717506124 983408704 698332945 946664157 438532029 195553824 24026369 834978101 19229482 818104834 382317794 852845090 221755953 782444400 991720945 636653425 50950189 390890320 444710633 274719604 112095221 947207646 647479359 718824440 201257847 421457238 820282241 828539676 666992072 358486831 152790439 472616865 75430678 857631872 743157569 675093927 872787105 289960747 448222098 489821938 12633608 602742779 372746961 500977485 873091560 212917750 463940006 984246623 889246059 455321664 239222721 197975269 727633801 588275 358542669 821040246 312258401 317368045 15276362 993781479 253387337 130427160 453503043 95201339 717388609 628066268 223162349 197920766 115190640 343871810 311829855 993656733 280630642 397951903 911533027 487780477 785544232 187870269 307778701 959481004 182656471 717825150 945556086 104656800 983600584 800110775 822541965 132376071 466631121 299389100 153241533 423527084 155651272 140094492 633659304 572989366 592475909 931940155 652724761 64343624 557633581 609805322 216875947 988010610 812353839 201008814 209872542 988372266 831525148 671084960 671935018 562176156 669721563 108165702 612555244 294561718 369353621 521148325 901254704 124038172 965040270 438574604 401932885 373342039 343589289 449468414 861720880 480681404 686531512 486742471 780307138 114590083 876249458 783591196 62062623 573532666 867028819 917841635 682707769 625827817 428853671 666415784 689291683 770318162 332479903 944184340 637398981 104148485 974080013 211126377 244669180 316186325 543935465 739648997 505568923 477037386 655182120 359865399 67511624 140863764 255643844 210810035 471277925 444893118 930787983 880513971 56626456 165090741 235296210 906685500 244885450 607769377 746458296 566696641 896246518 213774460 402121145 486139551 801610986 951144952 456378434 275336846 546457354 6343930 563199501 930358190 496361273 782482598 332075712 197441859 923594405 322030492 395673531 804950229 928393318 831650634 208376147 607218717 785009352 585970902 638180937 484893119 688315412 55285224 550751008 361708016 962814128 395460475 392567076 644043776 729123295 410505632 255007712 683917426 898324636 95199968 537690303 861229514 407748709 464236261 408379657 150529877 962614915 250894807 815344983 528299990 965083607 305907179 391971069 351785253 248879253 740194192 6005582 883079553 54974398 531267641 191308642 613192236 107965915 165806167 574948991 125251201 109701020 95085477 451719257 329758383 410037162 851796130 760763234 308767907 420254801 304211253 478573002 706390038 242261046 29506583 920233767 710503570 207382306 60254446 956690633 766183450 24824381 1492551 388193612 961285694 677120341 532004211 147145734 239124456 245466032 192511302 299342086 166956099 978959854 649378940 851242101 440586482 592361131 577262597 457418359 827136386 460225726 448916275 497942243 494800041 757058529 273037316 441411460 651155491 533100810 929778948 987251587 361001288 838375269 110252622 928510219 729600922 376108271 251628381 477120405 776754516 425856517 808668184 684378782 238092693 585574488 507612191 484406442 306735115 325750815 315621078 957834933 385428409 466060419 679201899 708938762 258971273 133943930 626039932 215239492 984696093 924096325 763649600 806302256 779592622 183412886 186735983 765979898 886607527 952433661 582477076 63541336 308339168 966869609 347248599 310536844 738473132 732589565 486294204 331791691 132361897 398775765 688516852 882801393 43173547 807044903 207206460 396860021 611042681 593982113 796807557 513281096 334259745 346318812 654961380 635294237 859648807 593316603 382519176 179492549 197111155 188939341 743611407 868629810 819072088 567694271 666893488 633015970 135778033 175416808 505500960 161141624 23773045 973444372 251970307 117788920 160728602 588515034 663658027 696769614 494144834 227207118 419249919 563925162 734902538 221902284 223772844 473649503 93891689 170550404 240733886 677723862 105056655 568582706 662185366 20110857 640546759 725592946 197083778 999052137 57092579 422758274 398950057 53721594 784241060 507101122 683101011 37882226 630577751 876068532 549367372 151113980 665335140 811256913 845287001 601306070 96062393 873383903 188276678 140551394 83434923 529488063 589465161 937772951 492069345 944687050 826797305 824245898 515424827 535483559 785817786 914212536 248479272 165232296 629952532 995335656 743382713 122453842 904805801 378040568 332158915 452561933 654310130 933886794 656847401 185986465 616396383 766399253 145614102 980483096 673638497 668124754 249924591 106146236 14193290 973907906 327182696 977641561 287879815 499208435 34736282 94397384 450514188 965369741 38488027 666782977 867746145 524050322 977267278 27193918 833618699 275120087 158822223 451823060 9261639 754017833 480091161 238587663 22949846 731272120 234033311 816527225 787949895 341667426 208111974 451407457 220212446 337950363 985813289 227085087 469570818 760914717 159310456 921044088 728079039 784411537 779177310 106428401 813768458 798947512 980934141 11684095 273378921 611552075 115149061 237944928 435781098 499262318 715523898 29925750 359943883 933271638 561626310 693773478 953012848 378658895 456502607 652237903 278678132 425197408 991144749 61321066 19698555 371938485 397180239 413003048 801172999 75324844 545554798 312681976 861978346 391616495 353063849 551710865 609713967 670178004 493622381 769408099 953368845 758545317 432810132 528249395 544131929 980425901 566874674 355860773 315566454 821439283 510912309 832090869 861646565 508919272 451510031 426448228 370453118 979126409 432553114 900767132 155493635 905492637 936383171 896969528 930247703 302118266 92853521 100305883 574588153 450456656 625441726 340665102 101335445 462093069 190024335 865638616 543514997 517102443 8470106 271261923 497791557 193189312 982250428 290018552 671043149 925286653 466830350 701092583 721942451 682330043 679204002 527019237 883454946 392647594 196950357 408543123 893978695 287412591 121084324 687901032 386312912 155654644 431929015 352924965 288772097 363147819 980238173 269075358 303701599 712695600 731709967 982046671 863461209 384823850 727384444 594990634 841108851 313001437 435413200 70813188 878358907 972121290 197762216 764404937 329221151 333169646 371388563 402817803 532747483 988198567 670999330 981152568 435398514 830440812 67678840 738713050 79502218 641180794 488157843 593913490 485981484 36449909 359332635 361266929 567552056 211077185 841698134 634561367 101092117 958832431 559268978 728356496 150729443 179417559 714618480 469131015 586676013 441093582 541405497 66890637 516749155 367401913 935426713 710320376 109945744 830057471 756232691 85009215 185226338 808695943 700221415 612259867 139156296 918533779 45834627 334653598 59512122 827314933 762311277 359540499 258708903 373941675 30286446 346822512 566648681 223223839 623265720 261052801 709784107 460851219 625429950 533584328 711112446 205462515 518781559 665292189 701586247 874071014 848842952 615523765 676365169 607136462 779295170 112899728 161801998 417449692 324062742 181612397 371773423 953298489 115098701 860322414 313995294 916129435 747416979 972613143 628774320 653980539 966050378 483586464 41299046 737620597 347985219 683993395 992500135 855760728 878785553 825149526 166623050 213316418 390134549 144383291 263720651 67077601 504659725 761206393 85810123 2480464 371063448 649883789 6595441 386920867 433367036 664458840 321954300 852027506 813570364 476491386 513229770 894109870 812736980 50557235 506290221 274889175 49418440 245025723 660638990 427792187 156725195 288750594 15582678 219836742 372911187 366379643 890870016 284595846 32286706 204929480 5392250 985082559 804675957 993453556 405036900 477902141 966737291 146546759 43296089 735056313 519990376 353426818 654499336 26110592 6086753 122252820 327216536 174484730 139801949 969579113 137110680 26439818 531557802 494088632 285608462 654881848 143488492 626978032 472080685 166991821 97765931 860282149 590195125 701032321 927718521 716322384 287773861 841825828 840233250 943637327 675624440 904820610 236217826 198810779 953402692 65995710 914487872 210712130 28869136 272064061 251783466 728985573 719890471 995048567 843642492 326091227 647023472 807262749 207259363 377005454 297357244 541254995 259831201 38929737 871940824 618945211 702409524 351415705 913520426 615932217 298408542 296757844 929029887 593903267 191350530 241569366 85730377 452242083 431909794 508506242 398285940 83664149 257807738 915293186 200706527 780370431 148055104 807444328 342536932 958429006 47566066 341119251 677014399 769712927 709093945 658952355 759657110 484144817 328842504 334409859 690225914 688164551 950207658 488297292 649440961 815382679 316662563 334131380 870373010 215437243 29573426 618220124 5482727 594104497 23127188 565035631 585483961 377881000 92208296 631828883 87547464 945595297 272554333 14897513 766619124 806264801 318401405 223286014 896605453 168539979 656045851 815416466 754527028 876538190 895918457 439099489 1757210 445293776 492826601 877777574 824345513 361962120 848052624 138178598 697973051 437989537 885553246 636394653 279695851 663819277 436242666 102399623 9582386 135765333 943215663 253690394 444432735 474667329 494354333 237736344 705056473 809685557 651017721 980212091 646944569 899778547 79338084 493314594 684065241 580974710 709156774 599233379 432089797 623343997 123977574 226894572 283042317 475637345 831536087 122638464 506491336 584044074 149094356 646831277 219758710 813125229 273922727 780312840 298173470 823850372 450184675 491250263 753336305 376095748 765773547 89341552 327650973 307831192 712816813 533522953 604539820 587856691 751240739 548324912 450022509 320903281 704847433 172956392 969083076 185448784 493300875 797581685 843694785 886512509 954640708 704898254 127676874 145443738 935980923 760387374 30705578 82229884 542871788 84199628 640116270 622093062 392570074 53727423 545109731 680924235 984297566 973498201 642224684 594209632 940299575 577755428 759366330 798237165 518281464 292763083 514840764 633925765 220417599 62353416 190678478 103726357 889494427 573861809 514928856 353338515 892440777 375140434 435914442 292230616 270918614 239348379 762759071 219659701 218478501 760056562 374081902 105197945 120194454 376979648 654271579 44386496 728970930 942140119 404296256 564988639 64125462 614920571 27832890 80252676 98092398 542306759 189957362 109406665 273365590 394646422 250301418 446089154 815199384 654768096 551717877 371398804 670322816 85631445 675900328 511455833 314003112 837363595 463533429 863470725 903437224 447153244 115720535 609516222 169529975 578319722 102382673 707287999 128982805 714105373 714028430 974760061 131073092 377174222 942618546 420201442 187418111 127502770 764160355 919039685 513575588 645630985 580638135 504094897 674879812 229626279 1138891 264106441 33691193 864224241 872437208 500136371 517646142 41658947 776208620 438652402 796261855 178002848 643285242 149761409 189419409 542121637 995707727 469523318 147597227 935902710 898229626 529784435 888834469 553162448 653250071 805399397 322020312 655364057 395140340 232972674 505078441 384872272 772302672 401845982 503569563 19497178 317338944 929349955 291562154 448693228 401757410 900748653 180269737 77856319 859285533 699433791 281799303 972159275 391341581 694753541 372258210 802200993 485231569 621867124 869888548 468042393 455147503 42851631 942715740 915648779 576165731 737916388 911440715 212736416 1231374 133202295 74038252 174706901 475284607 853393923 286606004 325153701 175796776 372365507 493757237 223370898 262346139 534898048 227992290 481268625 525630090 743048484 101924692 6283595 523201127 832262678 58756686 993890623 549938102 365474090 40874756 197247874 571465539 298306954 927313187 894873454 364288493 57976327 696711876 681585585 909268538 357927228 284841540 53395606 859059811 342539858 49649167 878348173 868283928 434975853 631220338 95833084 425659535 758570963 84051925 46386301 872269694 372286186 545169974 874379573 435466984 195110012 297485419 881284826 924358397 353381381 178469923 379475004 918508865 658645166 796386111 555519037 279049925 812716159 558975920 469962941 748478471 334827283 464451183 971189191 980126890 667866534 584322043 985098749 197701733 460530680 946892066 972278954 192031672 312728138 738328556 741260544 963298628 358313640 619765879 18539723 496110200 1706396 742338089 343086049 766832451 230056543 405130923 110527911 397483944 783196508 160742616 292597894 410126513 976659335 13059445 467750330 269308426 885267701 905216982 954147978 845809326 396250298 48559092 550280441 767912939 999944282 193199727 395866861 194390480 169375103 204945478 618719908 906384913 478761850 57230750 886964257 225874 920420963 953992409 118308011 295352835 701142753 783222113 91466946 924958668 249510318 46842480 793579282 821933923 993866970 438753628 224476236 368590727 995230621 676128002 34383880 364015290 400125265 164145235 570550948 548043431 336082505 957479501 224954567 845420652 610024656 941793677 901022939 110232889 330299639 350690201 887312381 833622073 831193792 417850655 853341193 539232808 143205989 603934618 194547658 850254969 237993759 818819502 854474373 993597103 595445723 243425151 532757781 431859204 313897010 538634375 899756533 602525885 588630704 262962228 817979590 207113974 712070606 686450749 164673629 935239641 727456852 426260890 224727074 974062746 811930092 344922290 899658917 89080033 323796204 534382013 373962497 581573397 411685089 126866293 490504900 101135464 790070118 736672606 984898230 308853094 536493529 941599875 46492131 228289907 674401122 380217580 400942149 930113232 171362555 740164600 927312652 187324175 750362016 790284880 269087062 162347184 750560162 31875399 20774975 812129737 14243591 290398244 633322964 510249443 593314671 259943053 899388839 678887188 592401684 924580676 99613723 512939500 438951510 77701766 989004221 280469854 38803527 879737079 914190595 278977227 990821329 303557164 889657759 5126442 398434687 242396812 550863072 425180287 787177661 501604200 659208935 841224831 860695215 107225231 937313325 462205703 7664572 925050749 509403757 191600963 478876270 586467922 280577949 305719368 852124877 64660250 634965375 163506583 847140017 524677973 167017772 859510871 839845637 908461204 917877383 20998000 786222465 521452615 376411798 969579121 71042028 768400260 806942067 88464603 488274195 82770837 318407991 509892348 180796217 386097101 838307871 177625629 240299937 446731987 871049613 415721092 49963464 539830921 546640654 527685031 24314474 582567350 991036793 474438391 828581886 627209151 171873566 852589151 558704125 808583097 969040158 772353859 121071508 57190148 811924476 289597167 632773816 877433321 507828692 870700407 492508583 576347915 636836838 960362960 614362238 888652116 616915771 880065766 25502474 976923096 752472884 62660529 275814327 599393595 902528395 446494134 731938758 348330040 226919632 651520886 976924485 48765259 958429642 567405074 578765735 760134493 960353586 757298516 465876101 319449768 408673352 201157854 386749920 500247492 216256924 388231765 636197302 430392062 340246600 77896781 114560443 74904295 881040605 88933397 449584046 177445487 559591754 300890642 974552189 314004828 388391476 5398838 652395069 469286878 780150696 232115289 529767492 998468941 691024027 304304137 857501413 915320640 513112045 287382012 526881754 309754931 843027935 173020275 884824889 372437269 614169151 20829845 735433998 929917407 119297558 889581180 86744198 170170415 530936699 421745120 245794536 326725224 599484577 556195114 88324913 990626333 901691611 989217253 54317006 765222284 373725879 223852987 439005756 244806752 657270777 916613061 465903297 127248095 377426655 817510691 374131147 491892542 15673418 485835009 938448854 825034599 420397653 175858952 640362506 405634699 796010343 930031089 65193148 500215500 548693644 606152454 420101661 209702941 189584232 895997837 695230956 114507201 323407663 968013682 915258891 167318262 695937367 695351245 578077923 926517740 722811416 659457422 476067967 962422975 134950209 48227044 427303650 851435051 993639535 604590537 872720685 413012993 394014240 83076382 42834808 882451835 923486607 839237906 886459863 772260137 870123261 6810678 767753464 470191209 639598561 64218646 363673184 418298519 731476064 197940973 389325664 977311715 924780454 388678024 707574773 891654566 14704932 787635660 215654182 894029303 113886216 709746628 422403341 74663721 861668271 825523796 308533719 574841260 163752834 78463810 778243049 677505373 330493510 252956711 977405895 208848582 672428274 139535563 479606687 539041330 74328530 541281515 337866755 608884236 846125338 86304685 643889052 797702306 142863638 689027952 979144150 24910173 671020250 919312067 362196145 618675206 189932483 120028580 739081569 35310397 920344465 310332354 703831627 822987442 961287309 22093102 986454811 372852507 631031192 312026106 816967547 850508500 210307832 343195745 398860368 476687903 411120907 761004968 758397280 142852787 916423656 458144308 461497973 612421997 806183009 568455237 823102625 246333353 918400115 941122155 709609394 805654683 144956487 45366650 237384786 563962548 713386239 839579531 889740825 174494282 405642194 43341425 478346769 158811349 894868013 912544628 935774252 699246526 322012225 782961940 589255764 401457205 708791942 851464288 591495650 694854902 403083717 861788211 309956532 213161980 436041107 261879051 928705578 289614599 257785030 626356020 799468501 153440874 451237838 708010468 573626781 920343261 848351474 448466193 711580090 25537367 346530375 316783536 798095431 252215105 459196857 212968705 994100754 462777094 624011342 723819101 18558931 989245534 951351890 281194587 875346353 344003770 383672012 550205875 525785519 944091559 164438998 365738207 174305985 623454416 201718940 752635082 494795581 278802326 491967263 995733109 241944509 567385251 150856375 284927003 841547874 251295623 91577487 254552162 701462361 581822611 18483227 365758829 436932517 40689049 491637243 546607244 996656648 747922710 397913612 989981397 246168912 715360850 666130065 228526071 85070096 245682474 440419326 588834253 764922029 798409308 127634644 640012070 484439957 759910404 454965064 959602865 825670227 369939076 771830865 179830391 316361464 969002998 585987592 267131281 535951138 318362530 416182860 159263916 839300318 497117214 236444819 212882960 79937066 850024379 35905137 36007734 749014498 379928208 732770461 880618807 541309827 603353972 838696986 260286520 935785614 617361456 583524467 541554759 681823570 445103967 416870424 178185446 349295638 254238762 75725026 665092822 675460387 935141870 443401680 65111350 891255478 782317006 454768079 947167956 346058705 55763980 403510752 324526782 474678931 619719941 604233171 579743148 140878544 618121245 635977737 745246710 150011884 120219908 393974358 238759007 902690034 909609910 838173459 831014747 41378743 691512401 433291450 318443596 2965838 704729817 156326287 123269733 315559179 247979530 231991435 682669477 805949804 433408520 781595057 407962029 269536081 346928703 832841665 120607226 310865126 897891499 884557042 521030262 411872705 858968355 487797060 898917380 740658230 578776804 674712211 356374080 767669508 523024806 722842077 80613788 574097015 474940275 689220645 811718892 384085630 338726670 488766861 845701157 831758771 341196216 616109695 155956314 232050335 138726685 228274236 734963407 464880314 741693573 821170190 129361089 598390788 415562444 854170029 576838635 553195599 486900395 223382780 493142533 328479952 111200020 214866766 700313401 245651000 658396723 302502337 211004209 697334439 728235958 240686570 629925283 527918707 896129834 613437448 379667147 176203582 441248284 253290502 324653901 133674154 952272089 737625503 723327675 817435238 552907474 962478984 883865458 871035230 118673875 531375404 623341491 924287458 517464987 814842352 649939219 112505174 847311595 466577401 259831497 600873965 861201586 947142911 632304975 283074235 151232107 443951091 342804810 715202833 648415337 221967487 763547986 616364368 380748591 557895533 775393796 53306147 583314296 566327442 65003953 756679424 114791710 144461930 574326930 578615739 781671520 795363301 757655441 247515273 488670333 993921359 463535408 578372236 521341154 286540902 810656091 247386029 139566341 932223661 537982133 461090596 388898369 983486042 157559334 924436589 390645519 51643641 893529018 261994789 898862726 53750410 315908793 638117148 313129346 212688442 224929686 340647256 901854948 497493558 708644215 948067352 213249504 709115448 459454173 577403192 309431359 856145128 704772130 664511658 231162514 228609306 553844545 275815775 605015033 126565358 926551123 89319498 223626269 562421272 25969550 691965951 505263648 640608146 875833607 247700321 572991995 292941964 171317212 741046028 849175697 512740640 68260753 886306898 781996806 612978466 88509401 743059652 857682323 528661574 949822115 970204484 348285090 808383471 707928811 746886170 700903948 262109830 443612810 281684698 785003419 248095209 190128087 833441524 634926695 692233592 225586598 988383793 23838282 566180261 163467711 834992338 554973016 738612852 522524720 316740943 882234098 313498370 139671525 608048349 63996146 834810343 389731744 525915952 590200515 865338649 446321959 804418511 74444736 41548973 705250989 847206186 168746469 233509082 643511765 875682797 435972930 92732505 728310749 522734538 696835160 973648103 433608125 542762392 190893245 904424462 408024383 152054510 803909729 335708759 934015029 154318459 412260470 784757678 393646665 534119424 6111952 433335578 589524625 14464351 51510564 744870817 349943797 56429217 954982684 680849177 349051159 881838463 122094726 890267915 14504003 12433597 676754508 359877988 921407407 916543787 184851652 488478090 365436396 787767772 503260823 167025722 568110794 478247998 138792254 770193196 517861681 638889074 368091340 925348055 866925996 728231417 721158452 751169538 962903434 399388806 389604718 96209355 903427307 483818219 642941637 758648430 708757629 906526717 21474730 751811044 674466592 143602813 626252899 981361184 584533935 109378629 681274094 876858609 13745876 449404955 618265711 28382471 548623475 887299337 984258527 582473131 701978437 602113741 814057058 89360600 628822698 332517731 774616756 867094101 770614 329715055 961136911 134727245 404694769 15327348 827078012 444735891 815872082 169061631 29638392 297214142 951350338 430315845 641844436 331022407 22518870 485128214 872557791 610681382 955036395 666576252 886195055 889337076 106508334 131118733 843620908 981453016 796278952 246340785 114635072 530798696 960966004 681616641 560867274 925933829 401299611 564969566 876809356 13974188 140230322 89239941 169615892 694583957 634440284 236594088 351745234 536042096 932535593 990781823 572422344 663412606 700950812 889998130 997879533 483465794 93512874 530750508 738262473 390901350 444784545 684658699 905011077 27844622 879200211 788573417 975152347 889132879 452888753 959108923 544063471 818081237 17174666 696747010 197508375 558074933 89358550 80822797 316913937 586044664 517460390 850101825 453439260 728552817 905510456 735482283 14878825 758972383 445673469 679480065 885204887 578842907 622585125 533963312 253185376 610691772 744829148 148480330 661655736 16283623 552377642 449285253 336954811 668512379 612593916 89982211 438825500 983025405 392451104 56365474 750583202 448821635 832577882 157117385 503701547 398286166 592912111 967981763 792042160 860394391 133426274 356062684 349613564 496172841 493974996 512099383 305397189 359112223 437944213 495128161 70684159 217545193 481508869 469073041 264024744 145368977 389910771 750846823 387920673 853968241 949786125 886533179 44969936 394680212 132609501 736161331 584972558 527378212 955540832 663363580 144296349 213890923 386621112 459746179 766103392 517664223 10115210 379127237 30076829 964147563 368663150 653086667 405058629 90086256 135147006 22973212 979504129 602774036 727135580 696083475 963559612 872524146 541585216 271518524 607818869 709366246 732830828 201498138 542810230 471715402 534610377 842632034 307945903 910090981 153337744 34824196 496614270 172231437 317508694 365437412 390088997 173771951 537279659 827752521 713261779 236806036 108490880 503172186 83739752 413878737 984994851 482773064 829800042 897127710 139513347 667017502 853034046 764602555 911622904 574911573 781914581 210314016 834566420 564611723 411794179 420133939 441138628 351181339 263579989 555628772 115801678 621230889 605642715 265536423 852425115 298502002 328616025 941998300 593724918 482961257 925443205 688663726 455239793 906701652 602654185 13147478 370473935 901985501 748259686 160947603 282986051 728407236 743933794 81752879 867835279 999014809 98553833 234247605 799212877 558981852 461996147 766806195 694080007 264478778 595770364 160217629 251689167 824283241 945009783 589471607 644022193 641554068 42171705 399946593 988884898 884603665 598227083 435952455 892074544 346612520 214741686 576741311 474484953 81721146 314722078 643129141 771767788 795074591 610582007 921155613 637118381 400335931 859724192 570090155 431879976 648754487 567383006 645119284 270428977 680110490 790484354 432113636 442710913 687913751 92358445 748106149 39324243 601728735 42176638 480353839 831471647 467957722 41932593 803132228 952367012 853645878 844749450 305084880 418172222 218457946 291470984 890820807 440163639 927020821 900914406 223551851 111788945 410574812 56883174 66742042 179059492 762908591 510641250 221895598 825430099 452016467 92616141 241708472 21781338 819332698 18085667 667027045 865749658 234726324 787051925 940084596 110325352 983858847 742872964 533004984 5442139 12094619 661243654 274125551 951492165 161985705 24775682 421286308 523370107 546708497 64625571 858548717 951331747 934220385 554575720 785133511 990353746 729294375 485436689 138694957 530748540 900092896 198933225 767383871 893992661 196045624 283183618 494157965 447815636 240263682 955987656 821726698 462408791 772619837 735948549 469213285 261225753 385221569 656792076 317456772 36754401 127250446 565593043 970371439 657257529 746899969 220623126 45859030 101667752 981391547 901308875 675210566 394211849 398502145 802843788 330349020 36406085 275897828 252907679 983418372 387679826 147520673 36745876 600947768 894460169 787902128 634411937 556940902 899282967 143749869 973139960 11273316 175696102 485782904 614817559 5139359 439127185 547948095 205534286 883547269 962516798 167681625 698557308 135139033 606623237 912296002 373575312 710988441 300375633 603350025 594591417 758515660 290744731 519421658 751635563 302789821 315494382 29464155 220005375 600509353 852269922 267877975 79508987 45688897 413350503 800836332 406433500 610192429 616158224 709651931 405130554 933399102 843621608 864535094 969669936 258287559 349841993 258128516 729936218 39477361 844820543 810156605 162766683 378674730 445800547 602675463 274779367 697054168 868264187 118976957 922254659 608816329 104263643 125888633 686613483 283407726 739454504 77754612 252928943 894231208 405399066 420157366 795287815 199530950 352452557 655124669 321134679 899464380 4158008 677310717 213553865 190059655 469620888 974841413 361729368 294625978 420914046 535078025 462732043 607537912 288096523 562164401 420540430 158027059 441460228 420137754 707992709 379831971 236587384 768070082 545586056 636289903 47739529 159170471 797814926 838975075 20727642 360576219 148962584 501907849 410063778 483915080 45048529 658673508 806759751 898242922 213451450 150070692 564281796 896231914 745885378 788375768 806973362 138928145 451500872 375136319 392658553 969383958 885997659 878264675 200556933 86193164 140065538 115068415 645160942 941482567 671071757 790876910 408859710 27062022 477462319 38635037 997222970 569890120 102571833 564901926 393496497 426866070 162695261 845467974 403835638 403095074 130088734 622528417 569383745 694896458 806506076 740153587 958060505 535585802 972760769 820500148 490792642 873761437 649342361 995928423 678200137 706663893 51492951 692919298 651927642 351467364 762683111 99124799 521618568 349320247 860128546 950970629 982590419 1478314 874806360 672361159 644486928 298779844 274237904 823979392 128741577 603797158 587222944 331989961 498690687 963290908 371389657 906384940 100213664 97551582 347105075 440455891 444835277 175372632 799089806 276947255 705690609 71493812 698925564 258395243 581062654 291056405 156311835 70231415 516891457 489090862 52840496 930884680 747719667 289746175 947629386 402087459 792114935 387704461 805654272 462599239 274513338 211774001 22954641 749564206 569662689 130843642 387871302 998195331 161875029 357163047 146833937 881543184 296684525 998205463 259411479 588713363 475021159 16173409 757777354 144933525 829564751 702792238 773577077 895493134 438673521 100437834 940307542 49523316 623094135 427076511 749696578 791382551 545791495 465662181 898583160 225208919 138904780 541825513 700969317 40453767 639143755 244133935 577988189 608474087 228258615 203922628 249801274 884832491 162940113 564704418 374427048 934427951 258146050 900684124 765006542 20168702 561559053 385279506 259780018 57261152 237927406 16589155 817417172 468148628 928469533 420642075 346904533 704572697 72853607 665666309 516720898 7990908 582258274 834316998 726436704 987161918 825316153 931979308 65032123 725489992 627707201 618284605 192449870 256526219 39698683 631017439 74041477 541097112 110140448 563337456 398449246 7272749 552438811 277157148 519049462 680871315 374710502 917557960 291032497 143130900 848132024 154249846 541595143 233844962 533391447 899515312 33566745 713995167 651693820 992082256 251831960 362148962 887555727 376780324 843731647 354132210 940905187 310475458 968288704 348245049 710129789 680866559 573226211 371661992 886728459 784573389 233624038 877211857 9825043 488450712 676596761 121503808 734948610 248856982 199049046 56686739 8016008 421823593 513727436 274472133 735947015 812527920 295053306 117742266 71856753 143344827 871149735 434765606 738720816 951709864 838844892 287372625 776505124 26065616 111525942 672310201 453422108 35724143 238621772 514541573 910274994 425015853 233673428 19257006 162728179 407942405 471672474 11682766 719453092 103581939 353707783 480729565 573357801 428311430 953143928 143214305 890804185 893135737 8745668 974799751 224352684 903710567 715743497 572193237 303314199 40813464 742628738 478899893 280197466 313700067 16058418 620305993 263789139 528055623 150960134 961624699 785234485 160329972 227039668 457255494 342532880 468180715 90863816 70292725 181106900 188797378 208991583 7831095 740788044 952298491 301800603 754397246 812171234 529638989 962342692 723947509 543258387 215857720 360491621 383355268 425031485 744741006 206345836 102052740 203765965 886167272 790479493 201233311 882435131 273166456 617683133 781406418 845655905 440944331 864998184 641407593 68394843 420220926 813475170 337783614 747756143 888630940 539241343 582255190 827238173 116967113 497769943 362141398 768321196 473289733 196308482 759023980 394606429 128809175 32464998 301239993 686380372 465219770 716015000 942195179 972033254 761580630 255458246 477393535 413697679 882165593 104103936 471004906 58998810 849917900 827260425 346480628 199813889 180874541 936712631 163549329 836403699 625521183 184232691 689415402 841594542 694273826 359639129 220255274 21479 329920634 948960748 796099967 925805907 529242944 156409147 987783126 470852474 37773391 161981287 859189352 693225548 158492094 61962496 620334229 307266404 919944251 423097987 621650350 715878618 982236107 407979028 92555118 303064176 698664566 797107643 555144536 611322885 14431810 513326187 214753080 614074852 18406136 982819588 523311155 708641223 842298099 751563514 140716123 420748239 311507489 31183520 121118635 389299545 56229032 436940892 896048703 705138608 663178978 834396152 130607494 549753972 798408080 325990045 977465552 698535902 338743005 698686369 257540847 163526776 905702984 336639897 913185460 752770683 100514989 976436252 817310998 930258691 239181254 215820449 767218907 286548922 231552007 987426563 387678762 604052111 944563311 321971788 528581815 870722073 404339151 980358386 712800290 220940721 528356194 360776453 664453863 838505275 669756837 487850071 969199744 963756402 56983790 86071889 777112700 702660274 79529461 713576735 392136903 408714848 999529372 510456586 749957094 850255547 494409070 638286102 153809654 602162638 270642734 597387912 299812852 845373995 407914396 697919497 316548247 792037030 668892653 331743686 944331807 909926245 562545472 537212702 824523091 475931678 446702912 392867230 896892028 210366330 780568895 54916043 647776295 941454182 316143547 259892037 433741824 522701254 264972395 436866356 764121635 326565315 696170796 284862814 450599761 894735324 773795401 617224706 353577222 836232274 93077154 234068606 576109983 453114963 565370821 398843220 663787025 739384481 342697119 351862524 22748574 142153738 501518100 616290886 592701420 491217569 906771022 14674380 637402909 201454217 176559462 963486907 920811108 69435051 645157185 615619720 610340741 811452260 843692466 72063139 990641179 919551054 818018578 730855443 32627198 321791140 484417491 445009215 692334970 310208659 969260797 219605244 15539163 810026196 430419743 303811339 62128646 789488470 92592644 905360431 286906256 622577658 859006147 166558883 31038645 780627365 450245253 247170478 334331851 717539213 975957355 365173697 810030281 242363370 778812654 797086350 888645938 598262825 346157390 191254565 189233329 219669315 963119368 717338097 284317622 751932503 788959716 919358953 339377701 703779843 620727519 191468441 810118849 761706217 783598541 504375090 784102702 149483785 307370195 97708396 204934412 867292926 155176200 827073098 349157354 130774100 122563441 577139768 37305720 253425515 400470998 70879007 129125468 736525423 454708387 935860559 615482728 802874489 512325464 983288500 903291633 26000520 771110196 578499074 904609466 130217189 788357643 56298658 686448704 179846417 699094930 984150215 194588505 440646378 273092669 913384982 393374569 811278273 299941544 744289222 618478625 531850121 437963140 70222361 514375033 937506280 865815210 676273742 530746400 764272232 479846386 35023261 598081109 959110386 563242237 810276617 811208591 960040378 236469548 396957339 426538517 879894 385935350 72004574 705489886 322078252 477202667 630746393 729576564 368389678 729692576 134708381 709584636 87897026 345595273 470612404 959039429 76094942 48408812 723459296 690911457 258002162 53652406 596393146 801194477 185767792 695943393 536440134 776813051 809383197 266017424 159772324 908437997 100796266 307835119 241100609 349260376 427719134 373904587 860873577 420840213 839664199 24926876 112020435 38403668 735943122 488171882 623379177 119818878 961381 254320357 775044735 346653135 811822427 350365470 872140083 545956815 96133653 732440942 916038730 326953802 386667206 855699400 948072620 491421203 459112430 578516174 546822598 786207538 733398537 385269531 704236518 78039447 593686326 827779765 311153323 597480239 778442364 653931520 412415990 294002661 377868952 739977011 896485194 313616823 771724844 551860991 791362440 297736000 374401255 159179855 317624787 152439788 832032268 486047424 53348920 448220632 172600647 191208291 753318657 256259599 47965635 29167199 355429317 429862395 82798916 75989135 717918022 130903383 601237149 843198112 713241529 781067942 82652982 482107050 766572735 317649642 516951923 437275100 610803476 873350739 116278671 303527850 657057636 988318204 416203355 550779568 345744542 21020807 994175280 96280847 390178428 170327798 788859935 498214954 707974884 579881419 280424493 535199656 796058702 349108382 725452660 636581369 441917406 784520345 400730094 545444007 493830227 112342215 799346474 385147983 487256304 966762719 983736539 288969171 156181061 336773017 228932768 178828832 604848539 283068420 538289908 964791925 862268511 173599447 724481963 490413977 306485509 558381304 584733678 242720992 201230651 862203354 842968205 37935718 39129049 965104925 96964795 310270554 270477919 94499096 308946773 33286871 104147916 268671038 859295121 974316654 94235883 732375747 229468070 987197052 201889625 335401345 778310011 624944922 249196398 995889963 28397411 775696322 364418343 664963750 466158223 61309578 794897975 319293398 964617457 114386415 139551727 900423587 88267345 89127258 86803947 522808725 521915143 737521550 570131037 174943544 223198623 832676265 478263657 85563859 86374771 614212790 835288549 867567383 403259705 799407651 924682145 552779663 73126660 368435223 706661774 548557088 613104236 444069728 935515217 118815666 337591810 197128912 166433308 448882076 98616205 295510922 87070420 409432926 463118915 799892792 677210238 937631533 205282525 575510848 657204058 697678475 335502926 242432818 477145560 338857835 901066080 728203673 543038475 907466532 411144237 29144512 908981209 151797349 771430997 19885883 739748716 237071162 255627184 394984189 722684327 80490583 320147553 85241873 15636951 811061178 193609151 428676235 866155348 879756781 111151780 10228456 803645317 642905921 905170730 159431815 253538353 955775867 929411528 230664602 365263275 615022950 192596863 393214874 693424673 102501857 14049978 672822548 889918136 240966730 789015571 743674102 390750991 768382358 322568135 303215378 974222121 867381805 884658280 280803528 575723190 637840755 941038205 490373162 128380557 736031002 248680616 387295816 504332914 994008263 271075357 748778565 30979078 242691680 572433220 113426809 697311885 74344673 887243005 920524698 878015427 213395694 681672292 629046761 802562100 23134518 361277098 551588516 28094685 622929142 83121769 736812464 963501106 830729490 578433886 862148778 270599388 788853081 93901445 307197046 650230677 840101509 707175688 483458967 601672275 371341206 594892124 373971621 604724346 259810945 579353241 512763107 120703033 143539170 755080740 724765523 457352295 195300136 180111607 298048079 275658245 844140632 431514969 870337728 712862805 802804887 224875302 562323617 62095272 79696405 312628300 941131500 84260079 592985279 375671222 714688925 102878075 86750255 842945913 526764891 196880526 811397187 154399490 468560724 643601320 865613865 284230462 280024726 598583431 388759254 74411972 335813708 547887077 344559345 974343258 565714012 611046052 407900880 764518431 844604375 255797301 849740125 772066929 624424632 970322871 120716053 488736257 533220934 261983002 255129121 246033673 904650124 439986293 853464725 171374861 897351946 391297211 840394938 697497579 331752264 86947336 867010396 117733696 673120592 817120418 757589169 461170154 970512155 17999081 478338040 684332911 313804093 195621316 843525647 566055480 599448106 965284467 423520197 22121568 679528839 910759419 934484646 219982470 468645313 510592065 95400724 606375160 211472391 503670237 884266497 788705473 201922388 474205537 917107003 744773881 839557407 705730689 881841952 381691190 484226393 479139558 636560066 30414112 423994834 66730285 898096900 828348168 463096748 898742424 51935099 740792254 478890239 188536854 48349443 342914735 656966006 53860889 100291717 134697045 54724626 18777081 150530504 243557638 997595644 80607164 333633062 263075429 638984389 660215586 679636969 244640364 379217858 478604044 402395672 666712942 54510069 815306971 265707434 931772752 357252496 274269006 706657171 29289766 533551523 161133936 280482688 248756068 307048999 959671961 30849624 520322536 778039854 912061390 621741097 149074427 656317355 892277919 758022194 357746928 893181947 877544666 735805582 614880341 580576201 310363586 387886198 821103299 292688033 644430563 980164085 420893478 455887410 502678624 854963793 57047511 553619279 35475226 551293911 157014320 764936825 810897991 700741560 410195088 55957824 833328033 32491435 856138287 173255063 536335259 321481520 352682069 309845356 187747512 727041791 474951922 506018253 485479970 164965229 890741392 864065243 202334388 664536426 17885278 122873120 255111646 203915343 794157650 210368113 775000842 675575901 651080863 568894472 766651528 523829149 861776347 772619904 78866004 975448211 408671712 187054294 973708242 484141325 902569687 295755936 131559627 369024568 346148201 992232722 721115874 734473562 656534445 519364684 530849983 838150763 854030491 63231638 884178428 82352067 882181237 646125064 693752591 714258541 794742687 220038630 783725081 98651735 633982027 606549344 990802271 485510348 796210481 281209717 928110064 497731651 667876259 2054245 694127409 730274765 860899697 223785150 268469137 743592061 952124436 556717421 413544484 465250320 819632590 588846808 801874371 551175552 284547593 213550814 44111589 926219360 433784385 393463270 635532062 772557960 601950879 910023353 921746216 622899761 84902067 417014858 524954101 858339991 445224469 427981437 753710372 102951212 47534299 539552182 478527810 59557832 160667769 136870343 401703553 310935302 684847139 8013292 407542205 997067086 48225565 299376779 735522406 989464567 814724723 555531285 674089080 628315351 547635426 898490503 533818410 451576914 731319565 380543138 474248971 705569121 776207054 359924658 704719965 582272143 58598982 515195772 912862932 318064798 517982041 979513956 783382892 825470093 686666158 409533693 120319730 262739369 911064771 272458883 643398194 386032223 228986358 934468809 208858080 666176926 557343097 119879492 526774208 58571660 91519104 795047426 482646016 502616139 64258333 792852812 597062791 914117738 269453979 336951704 57032985 106387681 851998113 77877007 931215054 696553800 291776073 801339852 193944193 106561756 969366041 731213986 218597772 651209506 860124652 361972214 774973455 594727306 702259575 704664087 228895845 749744816 107886642 415027740 963285946 880088117 351064811 923483611 464038493 660714918 355225781 994049922 554698354 489373570 735353150 945856566 796877796 870253957 184014195 458261629 521677891 282496099 427302389 893581433 51266469 656797867 690390280 455781078 366883942 814041523 644564840 472675792 548975047 245743157 178455638 581609464 560227639 869541297 161503763 604438223 864183815 408559919 815415200 927814105 349511905 700453470 370097610 419381690 486363353 299999528 915102616 278058378 637945709 10084011 965055029 524531317 940563914 304734112 200524136 987308129 203691019 356428473 792000602 881316547 261333472 653123984 697197297 330637265 353653702 792727812 129284844 362068897 237442720 848643995 506391764 330834000 879335392 113567977 347066517 344066278 137195515 605927886 654995680 835857232 943115565 901942471 174554007 98186130 92525648 918069059 771671194 372279943 847838132 65949500 659050647 227914130 249209109 662512408 868726369 545383289 113633104 149314806 283718530 334867962 277173017 576762431 698765872 899926353 627578554 446663313 243467756 174347013 649288642 802198528 646503733 709063332 95914763 122766827 512102576 33348464 496773663 639996231 513351660 667026958 513075617 144666680 393462644 696644806 968401369 331333170 59305458 698674997 486783278 255866481 950710257 178731396 492918389 370146463 275175706 123436301 243930970 665570855 856897465 132842131 22810695 446975922 168469633 282173909 357389550 730765472 16511182 294290758 709156293 616845514 887634730 462248687 454456160 616925779 173828535 523098795 329104654 969450863 627541228 587323053 314025231 600723488 704186374 525194092 625591063 606860767 655140844 556774399 711585323 714679900 656115990 294504970 133393801 727341508 202603950 202833460 540055244 422253681 130342416 924408099 870869589 160409507 667185806 863297170 454695058 391958275 445216728 277079226 932965740 847479559 324370067 880580333 892441863 778941783 57522879 703876301 999872345 385211090 175947992 345652930 749384970 518352489 258542744 682670461 528893771 851191094 120951639 510856467 624422891 377254055 243654828 929525297 486904826 906780435 726471093 559930945 818516572 295449265 489582807 913516236 319744939 729576811 404497767 837970943 461842588 167327935 446791450 859850190 950416672 673544754 924031905 96472618 54366867 27412766 535115616 885557431 385893432 224605018 816573203 648576189 731744604 39253504 374761404 925648309 622240309 334507161 513738674 391023084 44815644 939505094 187007405 828133122 556647921 979184101 459249562 879613712 467918111 849749703 28701847 9211929 699556257 17271780 769164441 805998821 62295110 18821527 948816166 758905652 304950576 520497863 87026353 658366005 337453321 519471829 907169119 551126394 25200334 807634330 653628629 209564714 744943544 486433155 984222963 479554188 977420214 36841761 969382732 419345992 667581643 723581881 191665015 849514270 545164714 864467040 11359064 761624997 716688758 705948578 469207041 536851555 913983023 882882150 648794245 219033336 708170980 503326298 985695255 541548861 624034336 494368786 98034482 480686592 91746106 905057828 349173145 519261423 561637743 869604640 964615031 937067529 255701445 83064270 172206264 242008296 422397420 779177237 25474755 996346955 827006574 318459991 959900529 217705996 384123542 291102775 675599864 157530051 250853814 687638930 248022808 993148286 229286667 209454260 786779407 803120901 803183120 651928900 973990953 779423332 153929463 826433992 26430550 900850720 901807975 481354584 244061939 389230520 136885574 782281334 279371154 821426157 410521883 971853028 564820312 686051112 154797030 160013825 678699411 901768316 723659474 189757112 51957933 996372278 85178688 761288933 593351611 151624396 432710755 521266688 248851974 337698021 128849822 721194202 203487264 919733760 476552282 896331070 841538608 223252760 809992879 234072391 925452271 977032629 241418770 372776785 302449872 849856562 993850281 714111197 456916248 586960861 543516314 231324244 882834515 336906615 279416429 276675624 457363908 165775151 775771751 603681710 708813443 566898101 479425687 707163756 429155550 95203601 891724241 389995723 365585544 6424588 264701353 22403828 999505527 721443130 773546809 144637279 377767719 557821374 248556900 768690667 869440638 691604034 916732654 15278165 6320939 113191097 890175285 217831434 477002364 605518841 807968837 761356913 253384814 753843182 133854945 54103147 63659719 837932948 411335796 90772114 338319682 785321106 356295909 872422509 502931470 560144731 978824141 747791189 951315315 392126783 543495712 258504759 480609623 473034000 810445732 832899014 945498153 713596429 267422878 108973698 379354936 927265414 294041489 421642330 943124384 890526744 86780915 565757068 119298268 24924034 909789482 508219768 898017259 356200992 874129233 219432516 124087955 945891232 43087878 519547209 474590682 431125285 73389558 831545910 595935827 471626027 676711741 107004650 802949456 803632585 926342221 397273942 933457926 796322527 420765371 769435662 780621592 460065039 818796170 777214334 237348556 170059801 73540436 744331387 160879972 200706302 662254956 567098548 523310137 359860856 616568240 956018677 38156340 568796425 789426767 123225341 831565077 163663656 521088816 435474009 450414314 785500997 114936068 300793228 512943417 341156564 99823583 500377188 496398944 687175209 58211705 330686106 688370820 184381234 994943552 831255132 672395409 117563227 252824487 790501683 385961554 916522768 428838364 256843331 965389374 165364782 115272585 127653690 776627199 286871432 260707662 100326160 920564876 17115597 969799887 667715214 736145616 729549558 966564753 167130991 510140379 555859981 292875027 923161541 693946188 152081901 992963258 483351576 787169586 362828407 939711698 172088733 70451750 315550614 747345205 952365600 692194944 369475880 712694000 878267037 613741086 719595378 710412513 488025487 50467294 763342554 464749696 941090856 604359436 487896055 719904041 162927768 231990654 206119808 958335465 154279202 928500867 172972267 272395270 771729951 825347941 807176709 566625982 720497562 745886722 657819852 642807036 532441524 478114526 466175225 886757262 831450745 573903623 577982760 484154736 879213842 12511921 392407574 286829638 720291198 723590677 940474935 3245508 745291812 982829902 403874412 81158234 861677698 415724649 972187471 202173420 396602473 437058838 193578312 563544351 443149726 89032248 939381214 262085262 536793581 375480701 496255368 845154112 656485256 387872298 596384938 975378607 50250989 826312986 990511051 168607381 281196070 303198221 273764777 908692400 101250844 240168365 370254231 645595248 258973747 356420608 459675634 499964415 359294448 663770873 596367531 530381987 567487202 461345781 633435113 106888847 553436589 897528020 440928445 570385480 829513039 731344097 854428072 824403294 503314659 457990871 367824865 919268732 828125430 80086890 556941204 122257993 458107951 505130309 320324974 92156845 777316948 601316250 546511202 706188024 387313773 50364173 426979591 489913158 399295488 955186262 764364941 266287528 876947260 268149923 907503904 46794272 424627103 579826349 826601553 999645952 212543322 350723512 959754868 306888815 49494868 787801555 33728615 748034342 157376381 408602162 406364504 708372204 2728109 929379564 346943805 121846388 928738420 881437907 437695195 654538628 127936665 430632596 780167340 962940920 218403117 77322424 817088201 231840127 293219061 498456928 267555011 701431874 198350825 310921598 630697396 650421439 92331118 593250534 134858832 987684546 869369407 181054045 474373936 964517511 441435937 652910834 24237817 731605604 893631235 970238178 363089240 126047287 267299621 877880918 115253753 729886706 537905479 362931486 234857277 991328839 759695969 927781391 890103987 40893604 778950922 801962223 102645410 362006894 31301062 855443813 165348737 575884085 552832344 450117524 655881021 901657774 262564056 112496066 428636340 785981183 122047484 538656791 210795281 280125848 426292106 465666984 261988337 642880644 366280564 378784528 756872881 686756817 688896400 271587639 272196376 226627131 483217170 78285785 675309986 98573939 752367090 212944269 79467067 629397377 932254567 874230044 248724911 242226849 372804225 710317790 880774126 246962329 562880497 75665814 393802718 794525800 68178633 840125995 728558170 766171040 765416624 134820381 520444220 77445498 710012214 254119689 881230672 622024025 627899186 591742521 726451553 426797418 574343802 42030893 759786047 7821084 238397295 548221576 748029774 582845621 663812351 662986631 356408331 870005330 387407325 929521959 672294661 174419647 311445219 692322960 836872633 901759753 822374708 779397909 835762523 149065704 215192967 509982307 544409171 275510779 932114290 762638467 472051219 172342160 162045638 364233738 591518439 952800276 699495190 99204947 232382686 300583806 724826696 904455390 585207203 381819940 858011637 478310883 291498978 400759325 8996849 378874986 560408952 180360754 838370717 650912945 311475141 299136282 885234647 826945222 75043442 281405887 108862678 732101554 388886805 321513649 759668929 725612005 291626457 881766612 538089168 580797271 10726854 552716867 584864714 769777910 607695781 489777037 382324339 794514945 460301943 954184138 157771904 494345958 906496986 147835374 789643651 547232480 213336788 198104552 242573533 227336485 954840733 464442848 632697158 699033893 26706990 860805227 747209317 235340744 220408014 317690795 505158206 991408880 109243708 78171528 375361616 503662299 869385544 811805158 989050442 577329430 186804530 373008440 45361389 237139219 323925154 197665392 455819242 958893192 86293676 958977022 634071452 701607425 606958293 832154068 910469475 95441443 729148763 174743879 248389341 135892308 192077779 346762689 120473901 191766651 379021760 896643007 520072205 957493042 898327029 797833548 702280625 999907388 981147782 225861430 949598566 899749398 993871791 493553696 279836646 905065135 772988938 284378834 421587171 510038450 596727370 113712317 270175054 550738147 88914551 17226958 957183837 235643447 895934371 289584732 794719546 670291289 9553257 602626454 312292115 596521232 13568130 629860347 260304227 163623089 972854111 4958429 676141310 599914113 253743337 321288518 291625263 983335679 554996266 543669772 451452320 383432169 99561813 925354784 691106917 101593936 788805693 268810816 310489040 481974698 697826138 982776115 799776893 90765996 268080700 485253879 415440850 803831808 501699937 863816714 958571526 36401712 822404864 590777554 632766890 360170715 960016122 759742457 755691237 414556433 89743709 462445859 381175340 280942274 749808017 723635878 421668687 667409706 952289659 50814622 947191387 49218964 726308096 933773148 407425228 839229066 443863019 885693986 707978935 425732501 621903328 638451838 665978346 469961658 206776455 726750687 723952383 509561365 654779045 157496113 916399171 676681838 210778382 696522623 216107582 173292816 480501790 721536406 77344490 735102786 311995566 313530439 357296933 36942998 53478163 748113628 358351991 554545578 512856874 471510050 189212742 918322331 225885276 453968722 825636543 671440118 183232822 359161389 252825443 380416102 417129346 872424330 326457254 781308914 302846437 689867039 386769451 237665435 260076506 949225418 319155529 775614334 593381028 860103942 858125611 590604359 644934745 396262380 770579360 486399949 97476054 452232515 506636764 670576763 47696349 535505768 126328046 752242986 189774971 620632713 685220810 403574389 302507966 680129589 549603622 202238548 428412206 839287990 617042215 113800749 320543038 771567884 654961001 484591959 798531474 807523158 432144446 836503206 270849327 879773420 642164412 835035498 933390514 222985973 278516978 991729385 530947634 466862466 593740626 618443817 27647354 441390433 953340263 496284775 98264235 458611384 558321091 714538140 552036619 994778148 586522049 167471066 530834942 643519438 953653279 7659413 473242543 113944972 460093070 248448116 66847068 888872262 547393011 882898381 217013093 39078321 547759194 938911557 452607756 150059614 41329294 246522945 4215932 828156074 870706530 62206466 991124088 818159136 679666688 583771909 466750016 968763541 283316505 868656933 473624110 907019260 494765777 787359391 777456016 906143523 306757779 203662756 51741352 360244918 154297495 576324453 435369143 674206753 881166468 62103172 476049215 880147147 249560603 748394743 937511407 897944863 897310785 99015595 964741563 702654926 804549458 701963794 846431017 694903143 585169456 152238820 43161816 303675653 577416332 734904346 462104879 427437981 728173805 441180170 110298456 439267036 685509265 235780329 63087524 417225394 745209665 72823446 838366848 365558039 318316325 343132678 54256871 253843191 154297014 246537135 992662257 649327391 365516027 246981405 281479450 411999475 287609608 260638746 56191103 608516734 295609159 374927574 267752781 966792126 805559045 365727770 405530579 308349609 735986653 360545805 853721072 215022693 546274697 107282548 872085027 942268791 396109058 545686440 126950535 40904199 199801979 344890724 846575818 984770895 423269011 135842029 287544676 141667296 216167865 950739285 11122915 135655667 745775623 907183126 491586356 804088065 163000469 66516778 606792943 981927878 804356116 800855657 549811470 799236205 603363466 913553893 449430906 392541607 384464873 925641919 782949238 737982059 982727390 256448227 600044748 844914509 192736258 239139832 511944469 766263717 685198164 19312071 200968928 834041405 662880728 43117997 518285569 185718637 846179872 747625545 948111329 446851513 88863430 345316226 634753383 88347408 854261710 179194874 238847381 801960714 914380851 394951860 487330942 38656726 801205647 282689583 403690299 162698615 189498257 322298085 913357804 850035757 103305402 343958466 686363433 115518102 329965464 521573616 891232753 831029229 331297546 130859194 316287909 335675727 41677905 407093307 387425143 221240706 404064423 336858341 154185096 167868157 130947045 837223850 396296956 163486268 609362187 93113711 508136058 227283295 615034615 781784874 199963743 906954958 675843357 851739396 862179485 492637310 52605078 434714473 657171855 134876676 676881723 81382988 350610866 354757393 372130408 990315289 83213395 511850035 704019269 383372732 24139780 809205719 178753963 218622327 644370924 59818658 916563404 143842205 737294064 849958052 198282840 38859353 979031513 294969638 977110817 280857327 556667926 126975650 485938404 951333456 829154105 572016657 656059077 413915369 146669256 498177141 136136411 359849079 261079828 926438846 227738109 602429011 890985698 704347145 527167558 919708857 604729709 430774415 329908971 714155555 531617169 939260227 920253997 448549016 817717556 162985206 240506809 367431757 234993467 252499804 719328080 655627576 914086563 70984401 374068456 85428909 2255972 505952051 223322092 542674432 657950099 540491069 19397889 786768773 317926205 915189420 521566714 503883292 844045004 636109673 188616637 630682945 52082454 157465324 408533523 349170934 615444520 307928127 464168986 945768648 497692217 912394598 620691726 374789975 666180481 792127873 200089126 245078287 977747750 911805055 905556396 111125192 723303770 988359713 2642192 957561333 966976979 30893993 526547820 218191071 182168730 34027897 596655763 659532993 468859215 679048847 103840391 28325911 817775749 753927165 365631912 849852574 245066515 101087385 890987651 547794301 160571454 644050350 854341243 495939087 844433911 658258698 593499728 916803662 293916657 398414838 386074097 310250952 359856466 153197849 700627493 604042733 631707236 846566075 453047878 678937166 112365055 611114435 693395139 428747749 393365758 175921812 740537938 807542406 820825408 187643072 949791553 657631164 422885480 864603031 744731633 543258483 806986216 769999917 288542707 589387895 339213182 261508822 762320319 131862785 281914995 217010773 836848257 664208376 226176787 903637900 195516763 620351298 775103572 590757667 809045814 126106458 454703389 512231406 417528475 573991706 15050098 259413325 358279287 444187061 877132782 821045192 236437739 345868848 819990574 359856971 389040013 288729003 276536641 893393072 190002648 466468333 691400180 528838168 234887933 849965609 212840603 360676539 76949041 799496103 153645398 386885413 922928355 848018252 307816939 770136557 485024744 366046522 155408303 700018508 866634115 960771638 662888117 145463278 172038864 433306928 143102152 775436296 231596911 929518576 966247542 734046899 88136936 153698383 576863789 169351075 180926102 336225466 677648999 889270347 254444980 327184074 56178251 844829905 647817867 874695981 344311156 217566131 494298401 505913317 533086839 120355885 311206644 940022892 744574831 864031900 784982066 121037481 795513651 418739067 243050148 873035679 212838966 438979040 141294263 497257486 763737719 798724358 542362923 396552088 677415860 557313164 331149700 250146974 21011168 324541202 924560434 466676782 847254687 871646289 654330030 848617516 695412640 558913547 674784604 621365794 278326650 982210181 197799333 386770993 921862070 598122032 437804577 411289937 282236596 578094716 68966225 189462802 149903887 295007461 716797846 358614431 675743090 707186805 195025840 667425277 850674043 445994301 482811304 622254222 310856026 38845193 45093191 120362345 918318951 837136348 971433464 193716685 546181905 819873912 204940205 904827702 881198966 38512131 963279437 870354206 244972279 34608896 290845805 915622268 794291613 713601619 978349852 527769709 884329758 317584426 994843466 44105325 328099143 939981480 846424474 699237673 47361102 946089688 481467650 363740382 903602445 229650361 209643448 69523559 299838439 315602173 938245056 407825720 198214994 946260970 790669029 880513132 163522210 611024736 28615089 33858850 886502025 720041590 405589606 379987329 108301424 626262503 335898791 915885195 81604006 156105403 712552778 994629780 210805548 463421618 470153303 414727110 441196965 865923799 182462045 259099936 319962033 572425928 956722018 462828683 378356298 930748110 710181749 148687976 185124162 697985966 610345288 577047229 367987521 709337297 814384310 842445024 405525527 756875863 343238009 658970336 51009320 147509287 655191422 385450722 906250463 45881085 272024692 496089737 940700667 805428220 819085207 577054190 76067167 661687214 361443092 297369064 383002751 457851676 549543323 862232708 580042024 356898556 280414813 826672238 774250576 66998731 370396446 780243045 848046635 176141442 592916907 474319119 205787251 556953247 937626466 408233676 263380158 327455186 905136161 955722368 568237054 279256082 91444417 40683533 853805832 148959508 366367468 637701929 870832780 366627376 501726666 295885940 495781975 503010665 666448320 776763289 724074780 555157423 14037891 380985010 688613913 111291117 588343832 874066249 145913927 332550510 307029502 859824253 575861385 652959388 838095993 298487884 989160209 57014210 132422677 759302225 738485710 427068558 797525032 385500180 363023062 745738311 258056035 382171367 177456417 88544310 701063334 395712682 247775735 308143587 450996965 135061855 913197398 315239800 968437704 871167203 934218204 179812222 947807302 701086870 257313928 954599626 915411201 408744261 529328219 66080530 140940980 540550267 663565708 771092829 698617551 748390188 299110408 429208294 824179462 361814767 211257853 536192401 572154930 604591229 944563897 275861800 590858566 567182720 46295678 809050595 870540608 748062704 994629445 994361215 238943813 242280942 501286613 647845941 668737956 610609237 632783433 587217845 443511500 812306757 120745145 383660721 48501629 532774566 830140754 498716515 666358911 242098490 186602274 993773383 726245689 977589295 314553927 231655213 600929915 79715333 499515432 374705988 810910838 58257456 453955545 285363463 368697746 409381504 900504652 418544045 784333332 982562551 309583395 346034601 820335971 911313803 753497338 131158402 697102201 545192787 943746990 822674162 311208418 608143428 799398911 79846446 93126574 720647810 515042391 846355904 142590453 153464641 209837588 837994491 434341921 509467008 384075101 529575383 780927880 727611014 936105227 269716990 930098583 166893458 797739017 963211249 571222093 219778411 423275510 446959295 169512379 465048262 531570851 984473878 408630620 426295398 487378027 720616023 321090930 815684798 52583559 234757986 759013138 398265628 754699141 921600839 314829354 593876886 99844287 796873021 178942848 739204662 388432678 727598717 820846617 431419460 513949080 473998436 990940720 264391024 151701354 869990197 163290402 700444636 410652138 449051446 876439184 942579967 814938369 824759272 977110071 26274575 926459318 599772570 142983415 839943 240713033 337592624 203851138 116205585 756209295 316652126 743174648 786384290 211599552 516947679 600420123 978900809 948856640 316585577 526107812 38577441 790606121 566970596 367086242 315829919 632611183 930903210 565261233 747637669 641138501 193874268 916779528 731832488 709153145 808707553 426248879 630421232 277829824 555610002 693364461 478560362 975041119 585301013 883519829 431763797 792073694 767645097 431171096 712180778 650932164 1341034 593470806 650961412 970993825 102786807 857362387 509868280 180529041 909513194 743216815 187364408 31314181 128846667 277224017 657782789 534511653 18812171 630233777 879239271 956223482 24458834 28886253 691238370 988733240 687745581 972828373 852670007 456434228 820514391 940441859 432292025 460430254 981781327 895652365 633270421 511353352 167552927 138694602 340175876 214058676 417376119 502664928 660623360 258957716 647693749 825741151 415766092 585533683 838152025 330237439 862137349 803830289 680847458 488466038 245871713 593416086 907799589 496255809 606668416 212676275 705831351 435510772 221826238 266067901 512888714 356765785 857240384 540371119 366937463 665554346 653389710 324541458 980414410 65005940 551599020 302491034 427112301 702611317 507832143 950751222 336804247 809736522 470499388 643161951 392808887 270544724 657761201 287654269 504066407 375694366 317285017 867049690 613123621 518006741 848917328 107373670 318942254 603602101 136371837 651052359 363405257 582682600 985842554 846481980 140501253 859698378 776831685 639463367 369103671 735629106 477778071 232743256 284329468 790624374 915864280 494918247 691458889 584625284 553749909 94443900 739348947 323953450 516397945 418814579 955804679 952841540 156957194 972543191 624158213 529619583 109335980 221265090 205307315 257815240 3372456 498923804 935042390 740081545 375099363 894231804 314769913 907284728 244507870 851504115 300081639 510434838 265200981 404267367 373700780 760926550 926788459 165668218 450946670 20397918 578329694 648171008 173347923 545450595 847703412 836149984 117067422 212710746 807084074 273566118 465730341 214851389 890984924 722035203 375830338 330495376 21148927 536116953 396462028 918245102 789573336 103502207 209206502 985885404 448836691 138582039 186366745 244457596 88898004 644207088 486593666 780965142 834802080 850763321 906859290 538164111 764549174 458789100 511729336 769035885 884039425 971665994 566442405 629507370 698272951 664746785 635211550 665054761 226589542 484281420 274770906 153625988 902248885 541932031 738362273 830091742 592263189 957358707 269899431 646744462 852755494 436492521 906475711 489883459 204494516 618084535 566542797 33105236 470332843 249787185 462367940 400073763 158962786 459566443 214765968 606364892 828579594 585521611 461981998 978596471 51431857 394716822 173614048 140185952 131893571 947475086 240607588 541399747 464016656 858400551 814806000 40856894 478552861 943647015 756323894 252437166 45785534 306853737 66498191 221291099 884930751 728869328 815252215 49517035 17592665 587962866 64748367 124694019 293685195 344906924 333188890 222413705 935080454 942644547 461184243 292894135 358428044 652053621 270101515 164919556 956452792 4011175 783635866 660594164 199272698 665480778 126037087 667529139 438998117 874991484 542492537 377894892 119850463 676692889 713068067 431816486 657334849 332371849 10007572 211337646 41831499 146966799 46673958 37384716 138410679 461310802 171149340 894185436 828777806 984358758 389887755 763568809 731827927 409130164 17102283 844724412 812362826 527852054 874067939 646799023 874911442 401103163 407011157 369355223 875203480 700728087 790322 110073322 321540351 126156209 25555533 131300082 645929095 610194556 768119086 775214443 124165818 47017959 415261776 729784890 649090339 654233582 276953567 174488979 631258703 288671144 855284496 413970483 771383456 759660463 785633167 662532758 172527691 157985971 714937735 12866522 754147559 106477904 463830054 267882504 888489749 760286086 836375161 581694655 728192300 961923568 341695768 854994014 812221303 247333452 120969199 571045196 883899583 219410457 238541125 18751710 216561521 105775381 469929628 169965023 791694155 546632055 469074619 421469054 358825545 661647125 453242850 407844920 429990674 470853466 858497205 315039472 652046410 260618060 21912455 676281875 258133802 777452690 296396548 364457566 151787478 746899234 535876246 180770309 100804318 264456624 741524295 232468069 782167150 266198669 22121189 135460317 547351772 978232852 815089035 71846565 448724511 792417439 648038344 134264815 243385106 989488863 832750972 388331843 996853561 567881183 791369277 860361359 541409340 295499001 372761860 966699704 434618051 317397870 890966533 756704840 190184859 983801173 803385271 1952441 963881315 149707309 305038543 129004674 911018381 191756809 511668648 277307815 52838406 909693036 658194124 402989028 260810000 753842008 639316412 453778693 348083321 337417031 927478112 788857139 176038074 554571729 539352452 46264452 628585764 60458920 993816397 245622422 668627382 530921222 439761997 697029219 277462704 729360095 288283381 452842853 188272376 142187571 190550649 517611049 833697623 851775611 149809911 711261319 529264679 855734982 974837266 529101405 827464917 207111148 753502563 981810956 412308078 303565267 492699899 647397530 325173330 942042390 965535699 799041116 268240378 561070592 242299763 498660939 144152924 12352671 926445042 420965553 2993692 422058200 13681713 36487664 973635632 593221949 907626167 627863851 884077503 991913233 854029270 437299719 64349838 404045365 363169364 469818992 709152525 293400853 593845976 459356682 429642787 706549538 992047431 63541848 513155775 562162796 252463273 9764493 764046776 324683666 162596771 970496387 472096129 835245099 826721416 892485687 687037304 888993226 357475688 889487636 591681283 478400245 586597314 167226175 475719619 981411305 993462395 131526335 868470868 412142690 876403165 415777738 570624010 937093733 340562986 103339549 23779698 71692452 249411639 996475846 24632482 58310638 792255211 62114812 855500740 736204342 395043018 10242481 184848830 347397863 236979259 758566833 889292143 535265462 530507790 500515508 669891295 317246097 414540634 550881289 91499612 331115686 884358792 951548211 824965289 273906277 877708830 421036573 13581279 528960891 847673564 940095780 933955955 909674135 351207471 612223842 721841265 340775691 42006196 926811417 854856614 662730147 224619898 355236537 743669865 414000086 455857908 117783524 412724964 346213541 288800226 737716758 255563857 130002677 697383492 535877954 428867275 436867265 925342555 846473130 976386749 374036779 717853438 836645883 166890603 709343904 668800132 819906727 980107159 334703656 908006475 574486244 341943923 358623470 469248326 384111202 816889619 245476140 626808254 524065620 507318001 60919247 588110691 190064432 921057926 608858738 494716203 544164057 618261079 740698866 520292605 217346375 31059007 216095281 470197383 328066200 220458220 868688942 774547701 187903198 448348269 893695519 878784727 896482035 405214743 538635501 299440620 263158377 193135999 487185171 83340636 418632096 212747324 280384227 128427456 362303636 240616592 279407816 823601054 492175868 162008207 201483453 674464787 236788899 377366169 886453230 198629146 656180327 753443522 222870162 154569790 230253370 220993185 928862050 360447375 328729650 180047251 630654173 202002556 172483388 425655558 627524155 503354974 382814625 313032451 398051641 88910692 677068403 834280628 742315491 492591526 363151431 40143293 66202643 433949575 531975758 280754888 247972749 554582552 270727757 446527387 224701646 371652730 513888216 530813071 571932008 954226325 552280657 150547328 49484375 410034819 43293040 429986368 63291204 375365669 488970951 400271004 271204713 911259253 847951377 237681651 284635129 207362998 342187864 81421924 249416103 851788370 234850002 543892220 875482148 62994063 209988755 984791226 598464757 501597375 357940744 276283358 877563227 443551490 831737071 981323500 955985829 859718402 821738580 143169768 944171144 360531634 941380658 496112435 482770972 400653624 237038773 949200778 536018940 420323669 383132882 677878564 296560876 260296932 605844839 495268781 271576920 918519302 129131683 866571619 332211281 878994465 696659071 191117614 545683624 348282507 601220035 632785066 544537157 821054184 980073791 781610817 133458122 566061694 745349414 690948367 220997348 762703684 368760729 482293246 51114609 30051686 261688752 89439090 722783459 436809092 820809334 556685026 713172597 589857742 92620422 234243367 683254444 119979239 773839837 755401206 794078057 163838973 577775050 299447416 205655692 144945687 108999143 627450845 719103211 696460432 577982624 321584848 913829830 120354092 395219356 862813910 530263959 169158645 593151644 710886272 511049507 331133607 984934198 821234673 98500489 529620662 655160538 74371435 696873120 146603232 386609066 421575356 821445567 931926958 55172965 342465106 890280713 719611482 169810009 956075081 491740271 772956108 926138721 707257215 997862819 364102239 366672959 649635476 256183016 976550946 535725574 251084076 685647846 779556856 678789063 312289792 383800560 643899971 470428102 312142669 295303645 627098285 402539785 454225686 15410150 638038526 342542446 846329744 73992238 18255459 806607207 871352881 231410282 410690514 322743935 900504609 330417508 63445302 417799907 883085694 160061515 602560044 139645537 694593647 969636878 753002529 289627041 414291591 881316022 806812322 525488698 722502489 586272829 164341137 308061534 942457789 883471646 100212789 279635021 397515105 710327394 462992368 40746745 454600185 106661574 374408988 586673422 643881590 455793819 932076422 471923578 489077553 434051763 246468651 330417182 495185347 321970567 467222069 144194185 890825923 185228936 555182131 708939090 837976520 521818853 499122439 78026195 182019525 451233967 831305868 357563466 427258487 581349390 256268600 17141916 420266280 35586476 256117388 271297473 22843983 454390228 704074259 955654495 372412807 799137602 875835599 570961755 985320306 705446907 607715468 563190021 928416819 791089269 464103878 213511601 392849938 102802411 996879993 446495402 626062085 154391993 493606009 44159252 39415451 12559652 843653542 538615359 422179974 922467294 928831752 25855632 841978664 985420018 672176202 626135891 485760113 211232905 562160308 498723120 81092435 398429513 951178870 295257818 78497954 926535908 275418679 182445494 306068525 737627152 867865313 20520170 764702405 886952205 462484360 72541510 463322954 96833755 399239279 854221639 933395108 585692691 857288424 737567194 465438498 48503199 614764635 464291546 333867219 188709572 252227781 767781457 134996931 368966330 99640671 247714131 466333670 37013177 488553885 150072662 531455433 561402971 719392768 649384146 579257279 31862903 859412829 532443701 551577696 63801215 749291313 763084317 945697593 177506679 499304615 700243709 263586079 656345371 725570531 121885349 196353025 790565126 536297811 804065676 40274894 595164933 559068656 527726053 931072493 812967987 839277484 282528670 975793046 129138184 719912477 405289819 929388081 179845691 356183743 635537408 276669450 392422573 263989196 902732972 350343212 293751780 500724959 54408555 663828897 302824617 406928930 615118607 556460337 885534670 464846859 410887988 747150795 55771103 510275120 747543413 94101618 811083724 156970423 135647281 425794788 766614067 586382861 720987487 370398277 738008750 274116371 640749343 883776540 136072269 166125385 404467172 378789606 563780800 195424846 347884295 312408756 342396748 547455855 530593929 56167043 652173371 937834779 333653687 245559112 951711010 868399055 457702014 347374190 38685921 18468088 103344769 547600606 14487619 772867705 356087255 169575672 16016428 943673250 470088199 905723934 224309749 897237138 243243078 880957838 434568073 812190994 508949097 782537706 734328277 884547334 36526451 30955288 669049118 799869528 886077532 393323056 682411444 931328102 618747180 534749331 49172354 678204843 196190473 521322642 266026996 821269692 278357911 932448140 331530373 868335981 186290967 547847603 93011700 959826055 647551510 45593235 715531471 145040506 675262841 707134408 525294748 536768659 325223072 371488961 85959542 477041004 149125186 568803344 176774137 971598259 134526392 289173472 330745637 818236122 753731015 851616674 488454317 608713757 147889218 701393687 640469223 564000030 903262544 346526439 582309669 469483995 5342466 366591507 485305898 244585949 506693869 461128811 629653359 388883489 964528116 486102012 167653114 967015113 515583002 943529333 976382471 780381771 335723233 442586424 235298673 487752750 224331234 546790544 927477585 623304702 23895877 274172391 499692742 567693958 862716251 53644858 704699315 14477566 422532358 938847452 669505190 495862526 966533867 157882580 698662127 868905252 503730427 208453737 564123584 336827738 412912274 45420601 348851625 382794965 539433386 877383826 977954495 786146953 670254316 771495711 165015673 527035925 853485740 638046201 168299022 293417366 914809015 715946662 195867493 557281509 294352269 766104603 888101571 989639082 735693532 467472619 103417919 857329664 927330500 704448395 468135108 151421776 876583535 132973709 735150414 83646104 316282897 928391716 664566508 340726696 837314618 405192019 548113779 322804199 147072380 991002234 234682052 943585311 145336412 396343749 732876723 132387843 274065908 298219457 800177113 77313439 754090018 524448604 871320808 111988448 719284229 199494004 708155463 326398204 383881155 200081932 771849304 71456243 458166856 1048796 339738157 365291156 558442507 489225890 80073750 710759111 699372468 159867138 696040712 23729849 602922058 161992717 822848609 425594434 27814755 922083999 438304202 595528350 74275616 221164186 178060146 196633390 545251253 754063070 398911404 402509454 387818698 995834269 250258768 808361778 246190631 592078893 673930513 768301944 110082578 639419957 651639448 36685040 608939526 768141523 249385589 225881584 311806280 247126557 760061793 175020055 109415703 621232303 75495857 624873813 270595674 309774854 566869618 937328916 828671640 403251325 456247353 638717904 869267707 460557830 152989121 821179349 773635099 223485156 18376561 483127381 930691939 63296246 167834721 384678315 681900641 531551105 701120443 344181423 623910153 605375957 488916705 286404032 95972557 550490124 244945868 913583992 254743801 835166689 229199103 723351936 332811809 199778578 531447657 14939611 850623047 76884821 129232571 627979518 856241083 454217736 379371676 859002078 673811299 648221057 278601332 471428166 666350028 608503724 293292298 937238356 898994635 581927526 804983619 723434551 153671203 16624496 191664211 60126926 566908013 6226246 664848268 710237213 4956739 329255064 737592534 600784875 775044881 759328901 871096995 589729460 139637969 897617127 268984230 770723940 710969814 981280680 221863770 322172629 655652088 107146461 773277429 124640112 962907582 514062162 245962790 259114693 534238546 372222055 14766737 801233083 935835284 713952267 683618873 180662385 620389780 443342645 4151447 502154775 332091763 485617304 962602841 114649424 625267138 972451048 886369107 671995694 337486380 503713714 886110457 264511088 929773889 789465041 150517464 236556847 686922395 188293297 381940448 623704580 113746004 449062988 784194233 504395871 819752266 737279629 806248967 482916870 266692630 372448776 579955178 748329483 206740225 527213983 628610308 586962991 450351367 263563596 725233784 662084033 804108916 915523928 54451339 682169735 479251545 963425496 755241336 589432381 127115424 371135122 361400009 361848877 455736196 10341125 482388070 199460048 98859102 645360038 147693496 393234571 788655740 63576365 408796379 202605801 902932863 396120078 785674850 102354938 865017633 18917719 788300243 405319169 153495638 260980939 28428328 228916198 680727781 344907009 815502950 508141331 880370349 608235458 652892902 992881800 858783892 629111140 880604869 586897170 563650810 270364103 706316331 629540168 589615001 771711642 522232174 754583935 871977933 812315184 927121057 758018425 411992704 8732109 315205981 264102907 351554180 100226310 228707335 130838163 274361206 1439463 526810585 150510280 233338459 864585209 604518220 70239398 334318884 903055947 575926852 25488079 675375970 702467276 454586377 974662842 386496643 939752816 521104010 61377896 454076521 410395757 416307379 247312549 173748008 787401522 829563326 879991211 726063300 164321296 895550101 379644895 780931897 435733676 842435886 781449082 503488284 894238543 507602257 143976606 691988603 574020934 898051944 124144061 736107277 318620052 891514445 235892184 384357156 874867749 786469654 892486266 266749439 284406077 59245032 649556927 497558264 867780289 523856630 941777351 184595433 291866167 456190692 88837587 161281369 285712005 734027331 629054133 244364394 507271136 804636875 447077852 398033095 862724323 189444 959264976 524338652 619486837 631303668 228799600 703816804 223945605 974506788 541045071 501337046 582316805 362112770 209880901 938217033 312005268 459787731 784278979 22431229 51210416 949342200 486838285 452922633 703831165 329065719 537555760 342826495 696626936 108287866 507283180 484015874 650076046 583417486 489212785 648148166 302029129 616899255 669696516 730619767 105808933 517703031 360817853 485518843 621195425 567080924 172282313 79770106 760958629 542210513 168988451 819369471 52321843 928440066 272136429 49534887 635449946 959019356 598029375 316410290 11551026 993176002 512028267 395217112 102765133 317621119 265168502 67864785 725291055 512537630 340958983 675025980 138964413 510701755 784443094 242201978 201039596 117771468 657390355 665066519 619747138 322719127 703494425 430432463 486437604 886357799 287814211 777463420 569180604 681359714 772035548 850985036 348352253 117430043 653620956 598330849 677702550 210646303 354096150 864768886 728286243 349780555 560171799 125020653 582537776 629684594 540601360 756518879 98032276 372291430 630145486 203253777 148095758 149005310 915237506 636686827 806312392 904607248 87379399 74706726 303893118 72682727 281781306 865636790 988326348 291170682 586215162 294025797 655618625 734388292 178236036 649723936 499697051 784100887 111055353 672254206 707305692 240743672 820348642 916167283 950594685 799698619 184965451 490421840 760546365 418625087 831789907 10616044 846016329 181193876 648195541 741487221 650834827 113809123 547180877 623700599 908469015 138042551 940278907 776604208 754074255 552613654 182045283 441690049 376043175 730070784 671897213 318783710 487977459 812246096 201126219 638055929 259523044 222280523 377899007 521017707 792778798 938985554 411329455 444279221 930236778 165378033 338783116 879656248 162174846 820533585 130780501 467221693 999973386 253529730 570231146 312597925 666705635 347491761 173054529 421545092 818910342 202093400 726715458 639572954 523674671 225791160 960436629 923268559 31665287 734971409 984886451 286806299 554938038 776728851 631779571 473515736 770356371 178587102 935253021 797014613 348581965 165881034 883624587 483921192 5076967 384682479 233896590 696169448 966837071 708522 135622646 836558583 667314213 2998276 801909895 450549655 3976062 689512366 39673759 917701372 27818463 442161852 416372087 699487488 572973992 296206943 601669558 515417307 109994133 603846169 250804250 274993040 423936568 34856031 653169859 885150345 96908241 238906728 29486962 414503597 574981044 419062947 580626209 112208856 532063357 425413016 233802019 318032181 699798050 674402885 879791554 821799125 3362073 953030627 26412717 702867089 642833679 442304672 661932225 544481779 886111675 894621410 352122517 312230941 323991398 986119299 99383848 627136394 135375402 180952297 995845824 393937720 488405017 594847315 354592263 608036264 531843487 146774159 998205797 941919612 606106230 955503170 400140318 608596572 884313445 160928146 825406956 822450980 152438132 476447654 561002687 130782402 717296931 47358619 255690547 835803062 988991137 669766409 245193208 710512408 485680173 141691797 723249996 412314300 580561726 231963051 498046677 521327492 872036338 64027839 199486568 337924147 879304114 833325534 983914886 881686888 855294048 230838294 986207583 782511582 632771094 618373045 240400971 991407394 253537602 345998798 74481167 697959140 833307513 833525490 908833333 795412065 603992934 750808610 516782139 69216297 804216900 704668760 966180167 755620453 303972588 176307843 4770975 48623586 22476526 654252793 1027949 690211250 504008043 786276061 127856082 399405243 246147475 740765361 202245874 264364087 175802988 752845498 508985651 404772173 29711019 211655057 445433174 402754932 497266854 834528399 683762457 751091190 189518730 805747832 998720009 651942490 305698568 837758452 407430780 757396951 943565507 154286364 1287196 766151100 939612070 896929371 639942459 414133332 691141520 140600713 842895747 624619788 484082204 367175450 708512354 365307723 198523768 231440117 328682529 251918847 454725782 167909445 385289362 736560311 562333559 304012640 451770045 692944695 375287551 634123050 640419671 599981516 185407306 521673673 186033887 432299152 270380483 377209174 704209992 666424377 62181447 443742515 724700086 671788994 999262014 845876962 886879979 564365055 424275554 543691784 804492868 520757410 440572052 109246062 97488073 957265243 644736973 987149803 476457132 705453630 607463627 467776885 723380321 757058972 541342381 277140667 623336132 318036679 138744439 480635178 241111186 222867495 670822715 129918582 745252477 766682613 464999088 718216431 443734885 278153044 654488370 740784087 844582760 262449653 374239626 157409751 403546096 999956935 473376742 453363654 886729739 832639917 182293095 927244397 683174353 759310917 859709983 423040161 826992707 320056833 325324580 978565288 419147756 59694465 189954681 104708887 127019988 153064213 374629070 160888944 646333010 303996266 64243082 3918118 248489872 816626816 911735491 735430268 849304169 159509676 50663138 398564409 674266517 99003001 549254160 543543455 562475287 791617116 871109868 28095427 869933590 367750663 324477242 569900011 765236674 993152718 118503526 87421301 708981008 708252251 118897696 787653876 992153524 555558556 681228183 957266089 913046916 548147078 514537095 514850993 103410640 961770299 504524037 971597102 961672321 750087057 481224856 799795133 804598845 857769040 876004864 75617510 854577993 225065344 808795731 77759202 26816812 219807799 197880893 54762431 842052443 994180629 487067595 893317893 860928690 750874386 494469040 704932566 498069903 184180170 924522186 260143519 638727451 366573140 610672408 546318895 77083089 335951820 790012538 603877946 907179813 294791124 800871484 842450456 849811887 221763508 576690224 266268051 659708659 118464386 73253896 666897683 101714352 532419028 280783169 254740673 862969399 174134804 129085729 705910378 857121731 903585155 62639289 266161912 374795145 92174155 48739369 2031502 847371706 231094124 619794496 915117342 435325315 778756846 396998301 830855395 101212516 201437984 932852262 767638244 797226823 588274262 809995092 915813048 288182185 240958119 802071401 428933039 912412035 877643600 526341114 304383589 742804812 284643541 829631495 336423615 661929969 266403729 37578593 365700327 381458035 566187496 20091770 569072400 591394634 86978505 299022494 671608930 505958993 901839079 353045589 980191969 618242746 890401983 666177181 36958264 196675471 2932493 444078996 508850483 710375934 326764106 700174347 354674699 660262180 356075836 826169094 766254673 631985443 26488293 852640034 357073436 74696946 650155360 72448331 200097735 911540075 865749381 95514369 330553895 194095550 557049265 462284513 744523641 808531591 403359099 713042885 56518401 923188729 668477781 325764000 410890420 770197575 281371410 311674741 730246969 676242161 781918969 279372695 613346567 393154396 924378547 932054979 654202072 594251511 248077062 371379433 104876727 148684519 451898272 554288009 702809692 441246970 359783665 921303145 570161717 683841778 836383375 586797023 146502740 747575012 292540381 215516890 190578780 922648527 510584631 192363430 483230477 52656340 451058981 418913879 676203728 383301165 421998913 400909700 963513175 127662135 10690654 577719584 735557990 210913172 746360958 12688568 995067423 521234151 458995887 338962232 911554842 686208450 56252584 835397639 664314703 809952415 317593359 577655392 250611230 621768378 210154665 553138750 409501365 808473929 674669512 208095078 898674113 435750856 391512326 375205507 364980120 887967622 699739977 398321704 291661810 251734009 377406216 325679674 879957907 732380175 893411032 73309158 633232927 387152158 989893944 296563090 479582946 653830688 35734852 97543379 881766612 818038715 315497943 205896861 799763028 349085995 640828033 436995371 254529164 930349266 645812308 653057252 212382091 466256713 605942046 195134323 642296269 213429347 558295477 658997233 634209367 693139795 814684165 87236935 174124175 166664668 111622219 22786072 4074040 851837113 451710393 608127582 150210406 767863604 110237175 757821661 723625622 34806677 526537298 991158808 631531690 55434492 345430558 698027761 920874901 452775233 419620221 833899938 6423156 304318107 673578338 538693627 621761695 84251249 595284241 226029482 304519475 615845949 98976930 757207080 543611525 957073761 274982936 58293104 787602200 149706801 865057505 635908043 104255847 983287230 782230761 396224693 753278573 79096833 842158218 288660441 748407492 546593657 446921673 709519934 436892467 744666320 484042733 468228273 245656590 597003957 482897498 220394907 738073005 668020655 483895051 271156321 447223540 973940525 197151612 126699974 111840394 868922328 487186587 427179370 142514545 757447919 784656581 611554188 79380891 878031345 463216009 47355283 749074420 969111259 703622027 496969885 424494724 770884433 700117478 931942177 778867080 915512615 443016863 994378191 268836560 707654743 313949052 455618252 986125776 604672608 726138037 417608431 207569867 982136772 749539818 803723006 764161019 145391645 586860796 159473230 548947135 991918779 949787033 469708083 376542057 824303109 150045038 455905209 210970512 868741379 6228391 425836803 88753135 909486388 122892758 793205073 125370299 28557638 169684075 355695967 449386287 342712386 851561469 662341678 873605162 66585153 124824954 791215217 589514040 93426015 441056404 714421101 735274392 8139522 591950825 778947069 407675676 284763789 145410484 162578461 839556696 741294530 765408502 115270529 988200103 239002597 9500157 708115652 362418222 380492885 901721638 260250896 652412014 649353547 222657379 714299277 16004575 913375138 156179351 979062544 638082680 812271638 273519718 919875741 203624998 199599821 525718697 225287877 797769874 844867352 589746794 402708057 715675672 207518002 434850501 561225693 388844531 724969807 560059496 508547734 170384304 993838022 307591709 860460860 982126972 296870503 758056165 845976249 847989657 417949247 657352784 758897238 105366846 558885079 782375166 156539780 9385733 729001439 962456126 70614514 381639066 565897706 310456300 312744972 253102302 623338091 46593706 441870089 15292940 298116809 579161080 412569740 362911200 240544773 746953354 569268424 217382676 131786546 923523222 343592322 838656274 539841815 249390814 98723006 401980919 818366023 242591661 879829835 301127525 684358240 114285196 170520825 56511799 514429456 203007251 594342550 945644277 750258892 229819410 488307331 769488808 479259274 999412208 491115716 120484387 358577778 768562207 355925239 227608569 837325406 861560621 182907931 40988073 939628729 533399951 639275240 893276418 511504673 86959360 890287114 631539166 307412647 341785132 879764126 44905845 117275423 742297132 990473080 246108760 891282326 274538183 17460929 291361869 937668097 883088924 331102050 332007272 4281878 780471317 158758752 787204474 626476235 128381551 143724762 953269531 238127792 723036440 534362326 869768527 81738752 518260317 455522283 883738768 291655078 22638018 155947798 672363417 984204030 138965395 800514815 710022076 509719035 312645784 428961624 187368281 35673425 471269694 112791786 652614036 458576509 820187480 536051908 848188123 22887773 704659560 129224011 700533469 788560322 219047739 500200517 510874399 533067787 510595270 950593216 357057786 952637550 580413006 166278641 187067631 515373116 360225205 172891978 290628976 612091182 612489184 793557214 904112269 82146233 689413719 203077586 43462156 399325866 985146906 899259687 289853626 610328735 907542340 384728957 654179481 226084307 704667091 750991315 758835867 410904661 494601454 943568110 246623112 51670689 102806618 546712183 886400690 556727653 525258256 714211106 104824119 857568403 884285354 570817028 795245243 278692513 85169687 630495991 765539874 536243305 352917136 365749339 713283420 601653074 212233840 937278939 942310268 757958544 936011950 612583823 375628784 759065042 54486593 21116316 890069157 190535237 14990043 629410177 479166849 737618729 571743962 721152522 285890965 992939377 460808563 888235564 514859571 268856430 926866274 333511048 847656020 265065664 139195261 4794196 147496896 414028284 483766441 351297937 582265106 486442965 189997163 693146055 477829341 384887005 21368597 859874927 915649457 720344309 172218283 854600711 461138853 571005753 136085778 82684175 57923667 373725419 333185524 469306209 23492471 123054503 455588768 734494977 481210958 703856461 467290673 948669127 941096864 363388025 963761321 882357119 688401303 323971520 257515756 768790058 351010133 114171768 235554825 208329959 479637345 644928453 140378830 198308168 243370115 883478828 806568289 297450412 413563851 666204865 571940423 981240560 181608057 970715644 681489172 617077960 375753709 723716819 643849473 460976131 525838794 372340171 455374124 632589989 435387033 947821929 352030736 446902032 295658375 905187983 49584152 980122556 200473770 110775263 661003241 938605919 179413613 760050844 803889404 362848306 711518315 612744111 600570012 162322010 277821667 172537254 478511287 444068897 38837707 581978380 125391774 105646587 169045812 307977594 312938281 508669601 520932895 376552322 35081360 30350690 136098843 167950638 238437103 950497217 507857857 947124168 597553288 839406668 349418303 886397132 318692797 595561261 622905668 99443467 41822847 963097118 530305087 133839554 51356859 432594349 133054557 285377661 467093302 879709136 625913542 75015359 597580132 341479861 760238044 246083521 124920510 102726850 488893478 851347276 320012090 394004045 571573223 614031177 24197956 732227114 125228237 735551414 232438026 103523585 768048933 964776815 991844146 442126870 66680690 568527687 594541307 382900379 58555203 693817247 114560712 729817020 907168367 910744434 652390563 783412699 396757335 632997250 806053158 381156419 507549892 323751309 649089205 994804921 551126215 657906890 238129383 452890636 459314637 871625709 100267814 919347253 63661285 979687399 757340144 98091496 245574561 233225061 870754113 672260870 966175735 508571681 512956981 941488215 575557541 587317477 139319332 24470906 79769177 526980887 579184142 399129623 438517049 244433785 906228984 841978056 367321355 449800937 205902226 843697582 741214830 929016064 39631481 296751072 798183563 374131391 806345192 488534614 285423631 406421235 822496346 112263582 102798608 991705255 344150479 973775521 941014122 558150518 660264615 149539114 286430889 57711092 310345271 61602641 175858382 182615385 138063108 638087272 106379223 31106571 832675267 241786213 78433079 29684797 593295715 489575302 6788812 962384163 688129715 61161740 981050602 62198918 508775260 752250960 185056796 825974111 379638279 150984773 788016235 17232494 927954861 290933617 173188951 606377777 511402810 333012776 386760602 846426821 248847960 93329495 381625417 801860645 69760586 689992768 335144352 402743391 704405976 644466907 110877422 328142532 593842114 292393978 447190062 114806066 891225344 33441545 320086034 924201544 102012524 112979535 402474600 271810212 561204515 672982198 164860971 147524814 372917923 118245213 674090610 689298169 522734034 119272037 994455372 214803864 970965995 898827747 169341485 494880806 490730851 488952745 49648563 60264233 568247677 188720683 843793430 636428667 974082541 678222597 697899036 145611332 624550249 219975118 241101244 223209135 37290006 286201340 888815889 690474444 840874791 669538032 998029959 731470801 546909640 218572240 201996682 706329611 893590082 141473918 713922408 324500696 613822253 949885387 735835873 336893673 447221279 678343220 648636494 793467111 713356110 996027461 7036489 435134178 536896755 757834401 616530674 330632202 440190333 177613393 681988834 913991550 795146862 607219842 379538470 852702806 420457859 405881299 760489926 177997897 81466769 470435735 620674867 802853041 29798049 345563362 277114292 732208322 421720575 578756506 600688868 895815697 898331977 426023699 357680962 363152404 470022208 869322772 451084611 621933051 62913543 824091306 43077787 784694247 199476037 437752131 867775301 465952791 342667928 934906848 571971824 40573196 813995670 210828571 602271503 121883402 238505573 506162772 275121864 698020435 123623235 274789598 486410633 573769894 348744702 200385044 768840417 266953696 258672545 660393051 601342142 762090401 149324124 942606838 666459682 30875204 832746097 968171289 541151253 674345196 137863344 319251190 570205258 642113912 294702415 858312231 331514797 670570038 963545531 40623981 611458058 538306843 862023962 266503384 144099034 413894538 333789996 253253177 532032579 95119894 157808665 840977648 109183696 661284802 507559343 569053999 410400452 917802175 46247009 111799238 614696154 490126814 726339521 814213962 256640960 384512474 403177322 987411857 970137544 699466529 546307680 182423580 462502420 26740588 899996806 885759229 831844802 749512127 202441233 33000890 182152574 582210732 351079406 905932075 881394638 651570870 83933594 554794398 392277212 917344484 678305638 697694976 662798585 902007216 402426022 165167182 824016116 652189729 110426594 594262968 433696684 455084497 949353216 474533894 234738153 400508233 384400388 782510718 430528695 578878035 144436475 433556868 53692244 979540060 480351544 364101163 557687194 912935752 230720510 8903098 861986491 362191466 484472095 495733668 873139057 487252868 528597964 337444010 506246836 980302497 21801667 74775472 213432786 928412224 688467461 340996411 93370568 499295694 973246024 446539827 36215988 732558875 776954277 2556164 869193070 35826835 201633691 505922462 246253515 643582308 415431502 196316801 128314648 164963390 119900570 31434136 441256376 63800058 543476884 534952062 250902196 835456740 375113108 782423973 291665875 778026105 44682998 901628832 483693277 980090174 379143897 448356103 131458166 141720868 653891119 85154628 503784815 401815607 387391978 55602192 632411341 422581515 716154417 126372686 649406948 279512331 80786869 792845268 458956559 283415693 27778521 608486462 268564347 789275224 849305895 82721190 173617371 670090346 465137668 202532655 547012245 807473848 133957102 638500326 593356390 424387197 326602929 901999753 313243766 668894992 690451575 697969947 929180033 316631705 155808653 351308484 245286532 967688778 3302740 120634752 471252333 999171692 636574368 718360892 946919002 834901086 758947186 758799436 810769841 882800147 348192505 786099720 72806242 2625975 663599796 232940023 737293718 31980544 739025116 92688018 795387919 354865790 470262313 780857482 566646066 119508604 421741853 760920181 443111966 325789904 384625710 837016602 333501972 283990774 451346094 596763080 519071918 635793406 608176192 582966032 682727351 204590168 784806430 684035466 670980827 637572356 677680951 348413653 39549561 349055134 281945657 297055489 392696771 370777097 593448182 915890626 625177203 17351032 354955430 142635380 637785052 693389857 134824358 6960212 961314750 829146796 445492698 583121298 617009212 54199369 142388584 34664027 767663360 132635378 771812026 567879428 588432380 305218807 154589325 568597613 839585053 971854045 221647952 470757276 248280973 602478195 457392365 138368466 6040995 760647133 220332360 301977009 561973230 617979991 378807562 818609885 103056746 235622965 114220002 461876337 938873732 600820855 737033004 449542674 196110506 110257478 53363481 493047630 320803321 327148445 660877068 553591704 874588692 749415394 758576791 206427018 750821266 710654646 120507901 908634668 861257869 34168170 499428101 701440442 600454698 418854326 785229466 143850525 986228885 517295719 353632584 581516702 264446523 261235891 632092348 110743846 227099778 439933832 947141585 927010518 35715902 956416007 148380505 168932052 18732076 353227057 798878671 651906499 84834922 321977034 150037363 442128412 41914259 661420899 818051028 20699145 78752399 73809081 693163756 443358820 856917360 700857268 541108880 901346753 811272591 435812602 40458952 23627419 606717507 930633515 77007435 738912848 974364020 846758103 691207846 983796312 693371050 20248499 575601390 305568488 659134007 806871065 81009209 504466656 555202085 284644664 737828692 596694315 584222104 360914453 848577630 157598576 842009417 139429313 883815006 648770027 146040472 303724014 829578318 135454874 55823543 599245475 799496665 425802119 708476083 966489655 862788015 21603903 153507989 652078738 114596278 837306272 833222003 160542140 489844873 969732003 160014173 708347718 146395276 848005022 42458769 807698805 877649198 80267290 840255715 84215814 183490707 5701938 241704186 127188789 190614724 905747457 886470706 829113989 252016289 658817615 851133902 807304684 40251121 589590622 523696293 354787632 622016364 515470706 72063374 357472251 804787768 500964855 780234055 674783397 487480492 936518706 778658607 198452953 344995288 339437368 28720974 944737734 642751864 297814447 644228828 483121007 354792525 337245402 416516363 801690765 491654270 271445283 203381714 473203549 223604443 784259123 420013572 670826140 777016140 722990555 369568293 726235575 241809245 828931290 731437878 782101167 875697711 811459001 738252120 546035130 281918367 934734045 890773279 815473902 197876229 361420702 218647609 708609239 904268288 984911703 491306300 993546626 589536669 435520277 957557096 88895198 12256485 600848588 72220396 689449421 976389776 295319453 277079375 31011780 168313277 315847093 659924789 562192632 965926402 363504782 787946366 660107113 324863118 576612151 247143526 299143383 647641734 228728894 614118893 234752276 677150192 605722047 261596266 936886502 647542957 712220022 390921320 225369272 219956098 159240075 550102006 544814721 606662051 368981959 563291649 140152153 258740629 724798532 419077076 4754112 235800740 370799813 858834796 267114836 291217142 865148015 717712862 379751954 501062380 754396869 968928470 917973225 116053789 430493017 360759297 968951276 810182579 490332486 44093072 404487246 996594488 948244097 772390284 216202182 873418780 916237355 835565723 259275014 426653188 501180948 647360102 519332278 758766639 375183181 582224156 180689343 902836423 151545508 49147766 219291115 980238448 590733939 102480602 220650596 583273513 915254064 781802950 242291824 342038533 646470049 749050273 936652299 490673785 395803961 425290316 95250722 416036430 121372303 833697623 746949588 560217924 724984964 66412120 626704344 638957384 284603866 93862170 327307536 585615911 842170411 796907086 102043810 11156500 811177872 281906677 612077156 334166556 403236667 725101901 164580913 918221512 494675310 163319194 701515288 319976553 109476968 949479162 348139629 748105614 733002281 944709612 305329857 46978316 929445705 985128103 695827591 267931646 310380823 993872511 597110751 237449839 800673321 522902513 472495228 961690503 151566188 742861597 891801749 669061904 318346306 726425442 313575382 416173607 280183748 24676013 141597699 673341585 585634106 7556457 995775392 232389545 744114077 684172162 22259306 277588070 207768104 514249296 137736419 54666688 10219712 481539707 708006313 424842339 13261992 159065190 944592507 569297842 4006353 178261556 146455726 920772363 576835725 305247416 875038225 18465994 811169785 606840228 659272478 96861376 49896505 775039783 622332029 75509603 952080660 310370927 269782142 735216002 265596114 106874742 220184333 505679512 518205658 863919183 871866422 617932570 570206523 231211158 259080627 132716885 833535521 967938606 932851654 822451886 311147864 250798612 276892934 773236634 521293662 473146865 16063305 962158427 522292697 858702224 172764273 223362759 141819662 79534237 661452761 266220858 927833690 751803977 450266022 109158201 493071729 724367333 901373792 381973581 375444526 50345726 440598863 7516250 310780288 696648255 450261811 268693005 322468831 423178426 833501654 235032079 123647394 346398075 940287182 851841873 298154871 13704814 383593501 981773511 169110887 41498815 277190432 733511080 62331304 756530409 422806079 626649737 640592221 909212211 387234470 845587560 556748303 7223078 50720459 414229199 255521657 60223289 944756073 922962060 496978633 218821880 821371318 290213372 640321665 50209645 889759541 971379041 176385799 165639514 99634867 538102515 862051829 44539544 80742201 573714948 525682348 543937666 143941415 349883677 743112409 522300113 37087264 111467838 18678056 274441653 622922625 55293263 398293322 300022489 719220004 562078225 682201949 745136145 261960278 729024721 69300018 632310084 988404038 746366681 397200624 336587402 591228689 728048299 866735723 413472837 301627383 7613745 574539567 5579779 480832193 174083658 911074917 945366079 202588909 950277512 15623001 994741429 272921294 889969257 855370984 921602539 616093229 695587119 845860989 907727472 487537446 970132559 87830526 903133997 625336732 722811567 208465854 479776891 790932823 189153997 351242544 519983935 322100333 850330784 515801044 201460581 815515936 190718225 13217581 445123456 282230130 780421413 981522339 34484480 513577599 622091196 425212412 687091237 855058010 682008167 479078021 184077916 83741054 344716742 729130117 980346398 166397710 548433301 584452967 463191479 444100282 788034820 804621463 332740180 350135040 637164500 147063742 642946713 725061694 568396864 421673513 608137799 871409830 183651265 6694029 820644577 599806811 332565473 163054212 749126503 899305498 571825557 880201648 430644215 900403325 455438038 762611777 783198103 908994738 124024511 875951731 233503545 790344517 618167731 46057883 203899496 815316586 39920008 345020828 789516122 41395033 54556687 481720438 846787202 542557421 110400944 254799261 156746525 310166352 201817864 175608156 258682383 841075295 720592240 591710525 514344489 364818046 481567221 671770611 30687413 735711225 179793581 23814956 124811261 234546628 189898123 471110010 501226053 175806489 981805363 577007722 961180355 498974519 856444174 671373222 247996846 643405524 448041926 988807678 399903935 723889021 937731543 392172748 633964521 727021194 161993205 87648907 500294118 802448093 338069296 258232895 539183554 227779061 58613010 851403847 554143277 588904051 916099555 729553016 285220677 320537559 963660461 770803309 479354983 202151077 137423744 2278432 609026896 668746699 25211411 860553197 142445807 286103545 279915455 318226239 332182327 656127834 442495072 679426839 6412102 281902610 878695655 628509478 858165839 500238198 318653489 34023182 166735634 150435321 548112145 805944682 776733964 978564904 635629788 742313207 849282499 963754774 193499635 403309778 640674947 906108394 331248570 981738097 264217587 206137465 550668424 580185291 427317311 804008307 755189352 802232968 574259707 307819840 761767910 482754156 946645100 996466329 668156534 926737315 787078311 895955076 391894961 696510110 618910811 195457437 100808166 325190054 495979328 133092409 687534858 967434051 734570016 50082231 695198394 593644214 128441372 807648534 311686583 101438202 474411800 224047500 93120170 808893782 986058290 37873277 732132765 685595010 955909731 460320482 786999788 395872320 506386054 997651140 136446261 375903666 426358091 461567214 757591721 335651135 296161284 141431128 244119551 507092494 35806523 181988458 884653193 77311045 735333158 253083499 681929084 548815263 907818719 468170761 593656932 537621067 608873424 432734450 121315781 643289128 136169614 235384779 778252054 379451894 740176874 978574219 756154487 329275617 243373089 629440834 118809299 391484042 256541464 874720012 569549424 139883000 20990607 547888099 922475759 940402713 559569377 42201160 216806023 461945345 498323692 893320670 845327729 194894622 796294317 593654136 70086104 409364696 938035705 394947784 376420508 136071254 752129958 521513177 804295662 644251209 206399683 342816696 883627123 590097668 706470911 44101623 304755255 324383377 686949027 386325415 223744650 769379840 863501995 337280495 452163489 219479610 950551357 755411412 386079610 406101639 482629917 954866698 721278202 549357465 185184882 405388702 764727820 597948523 559390328 956615100 548901184 626119960 341563974 38758073 97953537 496895341 798723988 690840879 383353201 920062250 824872070 600614966 164532359 272546137 274671375 448167433 826738704 107624185 839007000 209502831 249150026 226858346 135414023 428809729 56218283 313271519 211208314 457193153 203149217 884243750 532637029 112243426 826021016 25268332 557312294 230820317 103644765 807233243 154537104 998685653 421374101 671057100 745069150 643022896 973119214 400221111 112253460 63670151 333865382 918306478 790934101 112144809 396963059 477938169 384369738 469073252 905699719 878980153 317225372 160458091 261298511 390342705 251296883 477717537 251197197 581696837 326937234 632543251 836736048 673070175 565957569 828183406 602020449 822488894 788215767 581562749 330619456 684860825 245715113 470195140 487467455 920902995 239350757 563719457 304500682 49067118 648100014 673839448 968888087 99462830 50510982 309659830 596978273 826619265 29067213 933258633 804889953 532455126 484430002 490172029 654391052 24007764 566708138 880716078 391868848 958260954 249596416 981131097 300750843 876773944 302321866 793765787 600884510 155834548 334861717 209001521 795738054 283472237 396893399 512562802 274497201 37460142 963435065 677685651 232589920 855407240 95228252 370760564 4437517 64274247 218750700 676135811 551857535 713337545 618601243 590251038 761798532 657540549 532196591 221212916 515156963 743379175 829682668 774324310 385549624 432473791 493441292 677253241 785682020 802232003 986300295 254271804 171636931 563562568 573712964 969826091 763432850 644301558 908886933 737658137 64020628 416161627 258368187 886052061 47005100 277505053 313852212 98621812 103284986 614988434 232392728 281862816 712863440 849771496 612142924 459639594 375383259 483476101 324012545 906926480 373914438 776576191 78579901 153844449 501431151 342368894 707444961 432067989 166762055 500310926 531020032 950041896 920661299 913079430 83718865 208823290 679187890 580524320 949795572 404493231 832521647 559388042 669905272 704664433 557242114 579135307 422346195 196860821 944322336 339823536 25470006 446272278 25182914 35838279 216928165 585331094 386802890 830142297 2929117 440656792 629673295 727850717 331679067 934407141 709363850 90246645 784566867 950552326 738866931 764332643 710490213 409328785 60002519 8619539 156534546 488403772 7257148 159610414 123376160 755503076 661928625 596680865 537293415 281110005 589606438 578599836 223812450 229209062 215028765 134000386 331411636 583098479 353206278 753063499 641347534 412511417 197532605 550623240 453151864 130201645 325081661 283174864 586927157 167686824 177207179 236376527 105138397 514926264 505258451 412328472 705894252 710592824 84018958 248512283 228120108 11610717 274328498 990771207 611636296 8741649 157134624 145783286 260226052 640792853 811260627 751797911 174577828 30793147 939970721 888211329 114537800 61846668 44965326 907712417 881120545 130473600 784144525 470290588 371404758 443168210 594728370 68652596 611860106 177841722 647192744 560465286 762437170 905416497 696757276 568345991 558979577 524837057 54148465 45412193 71367467 359671164 337512903 946560329 180586653 77388474 821311081 278057114 915212177 839627525 94817015 722286876 221220481 280520157 272842135 664606895 410555002 864369942 902813597 321204596 21821225 323482147 735897177 331057569 678523274 110016977 528553296 882836424 216154722 279425783 568504678 507017475 306967447 138426143 433302738 750792990 694513508 94546568 434454970 333443706 395993723 684930331 443109103 415094369 590109398 380706754 423443027 400145069 338394410 358340646 924131980 68449575 239527373 649546076 440438877 246925855 335045511 413734320 856994746 889161861 754615015 744218977 529240463 703063774 73315476 833307252 470547608 438129859 949172047 165620972 51855722 861653892 725657580 156411091 999292858 531240265 599033135 539645432 296434724 851623869 29238161 423268995 691800865 525653768 318919064 613616141 609026991 353162208 426041229 297973391 675811284 12403142 435148462 606488864 598536936 482787366 226383419 32230524 575295764 697241867 10188438 733669028 751033195 203567649 736209977 363061023 876209184 502839252 301488251 785988140 733481258 812742877 108776726 616661366 801318001 117525780 526223746 377740925 942399901 407717322 16031295 610977348 368713190 339468987 886398200 970491671 426182244 33010293 810356863 977961607 430009832 957506449 11565312 529229018 833602854 860312064 447449820 425630959 441962699 922321205 104845640 227412127 263596421 683754138 411928857 311677910 226013086 80207694 754817138 271654327 756221500 759114930 213394257 576930848 911681406 561236440 541897223 831565464 580861834 421575255 617212158 498018200 663095036 549802912 242219332 274260104 349233999 970786451 735872413 143626956 658920399 24824341 294836370 538649217 320633779 846148027 101365107 548470514 856307762 322562949 339148473 485896622 34724908 771568059 323083970 560852075 979006408 406678407 678742987 624060731 108190862 470027839 54786677 569440501 186869022 685501490 157880553 924311393 316666397 924207693 595171537 277442727 694591556 934890469 242367670 366819203 799065650 961672667 608962909 487952670 733272769 595216225 496203507 283586997 699868440 907732640 913541885 315553600 644273964 402512851 665322096 519494415 371009428 507088775 996676623 556801364 723780910 339573644 979544528 157403622 997741507 30299539 763615714 956495328 653014220 704924415 141754749 447608404 410004789 192113502 960629862 807331248 39432538 377823640 187668546 37245228 833994186 685847655 888625485 82613712 402461500 234933842 450856014 717711706 777395145 775953045 272580944 29447750 820627386 409588560 90580030 630395053 772621227 998975357 941915262 778831228 790489180 401707918 251368179 654230041 212173434 415641402 850216766 189736185 168551348 861985692 474704700 671473858 723571176 337945063 535368042 132770937 550761504 498806738 890217461 751884204 494189800 677015225 886427284 867201999 186309975 828386587 73737649 482398505 405160535 947769672 610876563 99975604 291749474 99081639 9249516 632573208 253609441 329949887 334947037 102979501 580600000 308663366 620417878 25792458 917157589 55660025 426927664 698409909 911026502 345705895 514490253 505431104 461331012 397696379 733494696 664187880 54810123 39680796 876454489 395913890 558688646 249774037 818299250 347208018 287900388 82332413 363730730 381343285 687482422 505533447 313776171 307600752 453796670 821603987 676377303 725349706 409097517 925366666 341184341 144792541 70936480 568846109 115441504 350460020 400834922 85479070 441041775 596157438 9146022 485911893 317239756 219098821 359973653 676017935 844258986 12026561 415434955 479504503 787036077 226232040 798139355 137997567 787240483 443415193 786051992 748575053 696806125 133188663 206705614 565360173 253374724 340748005 292118852 319163022 731939135 149633562 694364358 780018651 287779869 979101936 363694875 350205517 207001014 947168840 601456177 699756222 658835659 875344337 630334609 982556558 416045297 945456887 350194031 883752474 164995445 817496544 447265727 454683302 122169275 775085695 8347121 182939024 108350457 852632634 537872049 419869020 323227342 206642169 522757094 277473615 132384370 446232790 231746850 420245051 657819942 585176531 229435739 866111342 823147402 395067628 362625193 114763869 877046371 552703579 379219445 952445345 227855863 594659537 288389857 18868624 740067551 780638549 203030929 86462301 119080714 857974645 396851030 581280895 757040536 36006802 817050289 30759467 383178028 976785518 338519292 730636038 574843707 416858773 413081351 794301339 663293419 868390774 598034308 825508685 152540196 153417237 56728864 771387219 570277401 103647722 695063897 339336069 356259420 140577687 304815242 494581722 991879959 355567792 464288483 686344575 907745083 857852691 402821442 761132348 194103070 231285422 581832560 237505619 68709885 640888059 244959782 314292984 134673763 434904353 713065833 295629090 859685990 90464860 703349409 642521121 606974207 32620020 216695007 877675923 490367462 975850592 301333463 642857497 260800222 211584549 252794757 126061143 783884192 626643750 801155518 985789340 591767569 54631094 84679947 7897626 59560315 79149472 715863042 168655529 731154860 526035896 404272358 829232525 546670153 427968906 241056182 176746007 570940416 126365552 801173390 529170114 728301213 577040159 205861572 784306170 81781448 311014939 663737499 196035037 321755106 809339799 814100113 141352001 102875077 503675378 361262830 494232544 883907279 559853507 411039758 660718201 336637339 899206460 659820844 989481257 44810319 130121866 720474454 296381080 103981680 55864540 792130401 990485486 227240879 759106675 978846785 792701706 48470497 261586340 842365613 424061895 299548821 272893786 604885595 462584460 691085566 211277488 985783975 315168482 745646765 445359079 393470294 14398003 556531193 604590192 835719671 23159658 901208064 90291481 881177408 872710946 513451198 437304657 46504568 439177137 531530949 389600372 46065585 257095822 895319954 146574359 517255225 275160609 580224785 86736812 766954074 35145648 983828944 64148759 618674733 363550718 875096919 522823263 433740096 146557318 480155125 568493805 228763265 918012895 677062409 883276553 415908323 738538675 730021192 221946334 140733134 505837995 978270827 97689726 803450378 486570911 892996870 57881314 645079737 121591709 48079598 616782880 768146157 357627182 133207221 515141285 3956706 878552015 916899201 44720757 786798223 149981750 839745239 823541919 392227359 446571092 448032805 73600692 403391294 446782149 103799383 154482900 479224194 632210003 367748195 777368075 691449012 350406911 198813923 56527866 874876543 901183107 9682708 83259032 360236194 633762477 520744024 841555866 939323041 485362785 332117376 262613589 674164647 96868306 595938853 735793361 483436020 540055318 138046952 654206964 304877016 197555762 274911068 90726995 998558411 952421014 627784228 764461551 916413724 131267642 638558210 884631323 108216882 364350169 690674927 389777 829070168 165103975 634654313 498224278 75266352 344005748 855087708 757583178 656672891 260567512 827725003 676625110 399080762 335815556 640788327 382633192 296002315 13166006 597680004 171727794 727459134 964083267 654484105 760277591 161947701 713907818 484732514 512639839 227225614 286347648 552491426 426588244 496196225 536907920 485699580 846157147 897164889 7604129 412415589 584761247 904329390 79493027 730589058 986350718 821595592 148733832 354791370 347922673 553943181 60565772 445829372 997017392 335162087 27304609 461969884 814746400 49468777 122145027 44625450 831250693 394719331 175894372 500066168 18509362 967219267 96571685 807984343 976119210 88002762 799394453 90631393 642712801 655682172 2973329 298139793 157521461 966705137 507812734 220978979 586742556 558945994 947457301 326815504 585991947 724551783 466521986 862598396 848594656 436485295 101000282 902464991 151284790 621142098 424594021 976514926 167448006 469116801 838924141 689778136 947396731 95832389 513638416 607179946 295104735 192542585 488100 549337618 305310822 366210527 102078941 399135136 301073064 811935206 204050095 667236257 590307985 504209145 422470132 996005671 525799966 449339432 506672224 809375785 266502891 638480234 38256057 485595699 567428556 193592850 941071542 821739859 322880595 515944270 854072586 696220484 430701751 164323653 659164016 852833543 135575328 965785087 545788627 935720833 486647935 764508413 800192951 966486520 766082342 159493334 824939550 818944637 252326894 370778167 218102654 412871750 606866202 404680482 725310733 861626128 875748095 918989688 12395068 768166558 514953896 782031187 716671050 461308914 834082508 760534745 783983577 96439384 768883392 126761056 647522450 79160949 665205439 979139620 827796959 848689423 27937738 466985234 676266370 856317179 283966700 579390599 792059473 317107478 292753729 690671960 783852705 330976306 466757527 747072734 708243240 426067946 923854731 361305037 571489701 960581968 941025344 191566715 651279009 208831748 207015348 994296574 907179714 186999879 378480842 563154541 726838259 480067002 791149841 916853919 389347137 228979445 31707010 642268316 202495891 456925527 143668340 656772722 54533967 604939996 647955158 915959789 563112665 796439203 196399378 707884850 604142401 573490445 871414597 578547139 841483146 462780481 592882667 921440979 809479843 768039761 720698698 279720395 703760200 435251644 342559650 775467855 826168581 770701777 998067829 826126061 439287708 749412039 944324657 34441165 230700194 604115055 506163546 915696940 920073600 825794187 311038005 682283317 305941264 185797460 743554859 70182694 656970864 609733457 451881208 744636547 482925472 732999537 925539138 85509761 823224111 210531652 556301110 822985509 677379917 193540488 851185017 74815957 827449263 999663203 351414039 600623132 752989793 262838936 348900754 21627286 906490041 444713877 616926652 101161558 876404245 920297486 883351755 632887410 345977081 274474910 960155189 957254057 633487580 70040256 717181953 173671139 574972382 24173387 137780512 640552768 66292708 672477584 601704076 904585247 862498365 231483879 324267799 925642354 625555973 88211652 287838460 731112089 702579977 311391347 853542210 95920915 260757945 524414357 396234493 773824567 512249110 152213027 611721397 392427538 88640806 159146907 121825016 599700040 575838900 456460334 669052030 840785162 686603199 476114056 245471444 380835148 855503188 965695153 785910246 989358268 271355981 514470364 37767746 242587536 90755893 986957934 965674410 345962673 109027523 766531850 805018894 906767846 751432868 601712442 358553608 408090321 852555049 130772778 288668786 54727848 490789429 677594540 778391646 62303086 656867259 989300696 9748329 275098516 697728041 629107515 333911880 665416695 176933778 799288618 945669641 614274934 64941395 188999217 32520806 588583753 507358503 233394179 431092526 427381376 873200622 953153610 884845728 396682586 272961106 308606121 704111284 551076189 317215541 239267306 236450404 842182048 325436874 613866436 710307641 239522014 297599014 474613750 242882759 507646764 763932171 780871116 909564217 747623578 220836727 670594030 231035208 37627750 662397849 412779626 461040921 861694964 45804158 785139930 616319142 232106189 404377448 236582662 107029181 560837358 445779943 996765736 196227567 433866748 595968194 240518833 884538070 338058545 439660963 111434849 288148857 760856887 827531035 967554900 971217057 492393987 841930583 986478993 735815441 659319891 625662140 633877503 146389160 201447031 221136379 678464419 445443860 195344850 240089232 447828053 867788259 77618767 853634745 623325249 21000075 491485558 202484315 410481076 21806076 158735697 116495397 789846280 18291508 73544319 215715425 359534302 249130046 811330771 625967815 239435013 109568117 295477496 331385104 905004121 744547665 700096576 603041402 395047364 125744304 578812141 982723832 25318559 118617424 816679844 881136802 678781854 664861044 564300450 821278319 302816042 394051114 27127282 287900885 733162610 932401573 408174865 241782459 197984417 709008095 675517070 697629799 639183303 627776907 566265246 67300363 86135505 243333010 350398065 441391175 194025351 601409042 619428756 462238582 677431540 682164455 651513270 799026433 845785367 395693615 6407777 583585457 737911499 28999941 730440039 58119006 658864188 282610350 456784019 298296946 160441692 741162526 411980927 335751474 663805233 696246682 52818275 996880052 635389550 664375974 669919045 563544071 502791042 573869988 964825306 962220645 289326017 345132736 965875895 789778504 99697323 288258543 60878026 21101450 705398611 908291106 684983765 589132617 220889017 523465922 562103906 174037368 204210201 793097720 738594800 197416540 62327016 939886447 174099970 705085370 114839484 504622970 626621019 233920744 319036644 577875397 393495900 529490269 660389643 207792408 474997387 937033720 634834779 497368514 59550109 25384821 411893212 947751113 410484257 241947705 261353998 252273961 317996215 794721566 812792900 166297399 415398343 489025372 914385695 814615349 151192379 723035107 780234238 866114252 729006292 309929125 977147450 990261967 102261724 510257540 454961673 66086982 364064537 937397245 799148321 277460304 252542427 974827990 991786606 405411827 947390982 271663950 894425144 959552029 845751090 301626362 683347186 651020625 489375422 102492916 562635256 299734650 23786847 10922543 911659777 669634967 873053166 315367413 630696866 342469011 24414453 721438820 506800451 583969911 863494356 773337860 213302751 22012614 997889821 564369206 553275124 936600056 601221241 389076037 695043399 603393547 526853793 95404155 695177143 47493603 999592431 774764891 562275216 808816681 257038629 996419671 402437163 123956566 709109896 55808576 330780588 162429068 368839141 694227283 399216669 846317302 92023792 763731959 937686567 428537980 740454772 595022855 748135572 35984166 699223053 327958510 596682214 189261227 732830333 672601043 794177141 169429106 411471810 315119882 611540256 943241026 575227296 183836066 584919234 524916605 482624136 267152134 89419840 636890175 456297498 563647999 210336975 925028819 233684957 889742031 47585154 568220168 653607637 532438057 56947542 644440280 657110411 223252281 572554883 251083262 307328100 472262597 629892091 502193718 361821864 818878257 25542311 807132134 708972484 803452769 751989684 515729240 325126838 614748427 592931859 787555517 105656123 639873109 440169223 979553381 768668398 675914309 586425255 884436370 773747812 53833541 106682024 340053722 944456486 848882972 837587049 119075778 235823204 368809552 775858703 60618158 791480396 619131316 464744355 318878507 973905816 802620031 658642092 272751803 118599756 917812993 209699635 431207900 716099831 958834507 955301276 323587646 182099588 704658878 53232754 414504963 470792175 425335541 668042104 135179910 99963373 127214097 882405985 14692513 552131016 658378503 87649995 562982869 542677005 728311115 520816537 75761813 957467712 233220286 492090165 350928979 863057593 310273554 335674804 174117810 63818079 87865990 623531852 758018434 787204406 864672788 581476262 323607175 371902763 982806732 544916666 351696326 460674666 241868570 358710497 910034945 366565461 379659046 766996918 396485045 981598147 896902867 774333727 349651696 638742898 33528250 610212931 189954882 583587149 529520297 15297638 31605081 75438365 211239367 545915030 908788933 680951262 638824684 109828847 885945398 34861497 220956482 743342951 653626755 94197572 301123227 85538297 688203832 838862046 608605220 939930109 221129492 668730135 358337465 440327213 337326298 208863596 211246447 370791517 867110665 244208405 262190716 833322890 346098050 531131773 733120995 917216609 818570143 41388696 561224144 480407798 113684015 901623968 17324527 512953438 792295504 719481499 205142943 6089436 504476989 368604217 113492352 105600244 146132880 587063378 91659350 664024633 216332762 842248150 646107594 271832782 710734014 227200581 533980198 898529833 285810723 877999769 186997335 458411021 934638698 648718440 310569450 49303399 130298625 223288836 647158165 954152532 710891849 64945746 973989875 335105411 656910497 417714014 292908277 993919121 815601888 326817368 811259991 383755744 588186188 174646394 460472716 589994127 193540087 363655512 614694733 130498801 878478857 803721010 81977939 886490585 351374176 853532851 261018432 89300281 614831833 556727193 727840932 73528939 185845239 307359987 756486031 672855851 834478449 57240769 830871936 522227945 735771591 687967334 374754464 223241346 984268445 830978947 71524245 829799219 299358274 604362242 625109301 27240052 203915532 730709099 364889679 483976314 681529954 843775637 471620815 416831542 621277715 178025001 44937536 794138933 347309193 108085825 427598975 685735615 258850540 763992478 315578389 232389730 149292973 866977346 716571030 135839386 412179545 890764787 3802344 992722802 460866813 648579978 116816045 417076595 517691869 728264931 447589048 333504153 162871571 876897373 763783220 512774629 611372288 36544045 93115675 283605121 671803067 395693532 63736724 17075097 296487841 257878068 609483381 803842065 968834826 780950961 597251180 487355732 602829999 621906834 250672583 383270679 326206720 776816397 200819454 390546444 168312942 630176521 298732717 882645783 555996044 804118349 515775558 35604752 777784599 169326840 921176947 923271930 959192994 792331554 324966522 48742411 719129343 378501752 118081490 462059114 742786844 454769284 792596935 264680684 840064782 593225559 457056389 63883056 356034709 590092298 746077971 256581630 294202258 451037352 188893712 6552197 420160094 854532086 394163331 267504398 418784097 478403458 918381120 785765328 267588787 106360180 656004870 965638546 735710891 911271403 823407269 180120624 383761602 930362945 462523825 297968463 141463040 910117294 73445641 611658616 99838513 761737305 270491241 223539548 264120744 401124116 843412228 110657064 540653045 845430829 184476197 445438492 423947025 32125458 126736609 186454581 750295991 619789410 584082036 648024197 829743204 690210430 323992575 652814579 686511041 925810292 784864544 670218183 793658719 527085009 38002810 625192489 421404407 811861654 96864738 732881012 182565436 379870848 973543699 287692104 739990135 755517020 759205737 52860610 87020579 603687079 177514750 934971874 424291603 330416090 782744973 349177745 723530336 846259355 924799860 849992471 545562022 240499252 243220925 42780518 419622335 713587542 484674420 308313229 439431372 925200741 252905605 84266286 5891650 959604804 76993107 41891412 21341371 200451879 934191877 49456335 898107071 802524337 282859919 192072481 112508797 652525624 476726842 789823537 401303095 151386134 576939765 625581831 300306083 879887005 398959746 434773758 479435129 200474074 674261294 319671458 535156475 690631022 932637608 165203 62712456 963325456 756348893 640251823 449800193 445555019 875757265 730909736 611539738 139725775 223203042 591191388 327099219 189084000 901055410 680685113 697442278 746106816 858317032 436455637 595428080 526577172 545858891 906883308 38931390 481055673 52780592 492310279 351883893 911824083 328936278 7275435 25022818 246145469 761919077 962603038 505779749 256496856 492219407 808398596 880418564 797501240 506682506 95746883 240905849 135948704 970714614 742736152 797907476 114734019 353078293 392139926 18647030 869230854 101730788 750035539 493655350 747112961 238295787 499780711 82077894 1734173 341227223 438048756 978423348 291151048 402805091 599928304 459353871 708077430 330538687 203625846 770702725 916203870 796795965 331180830 649852830 30854572 288153178 537143141 266197941 920362849 927617751 926336056 631109028 383217916 922678523 106465151 506213109 639346922 940487911 589905012 574956602 683078851 93294104 508474879 887168233 986752591 844014660 105347292 13229694 103746866 134119780 975869612 645846736 731768914 64755710 861205284 55103553 24929299 566898014 957055795 358543587 754225561 512100911 214315515 837932330 736743106 62796539 793210994 218878715 881674550 309659896 502854283 211005115 168624359 61456611 976444285 986825078 615120507 18264172 503305295 436848263 261226824 272465897 378069527 757876313 454896809 525566219 544532154 815806113 82502717 447635854 452028701 242194366 440173099 413287400 403897108 325882468 587767893 447222119 643256699 9566006 692197871 8432364 105044353 325174278 337077356 560411368 24173987 368488601 55137380 798373195 242301539 559585959 478062853 270773059 433937627 672949411 87489697 70758106 790498237 699482939 729927293 645359569 126155026 140828107 21867744 741286687 886042610 681380155 599117248 666993264 577011980 706695776 845714615 355528521 23682051 799764534 772868263 172351253 295137152 248919851 576576425 858426594 809484129 366166594 659371960 771996673 320356409 488475941 538135692 322943381 723193193 910057865 474522369 650840038 234268375 26155301 809720070 152261145 769259684 245966764 281945078 317560043 130738366 209583891 783171568 910127634 100281757 389089723 447720319 135952506 454592488 812176964 611786378 740199969 499625835 207590263 560247537 157878031 193980938 8820236 910202322 98504738 384756948 657567181 765357093 278203856 726696629 238927966 770839905 78685777 961027975 381152169 942591366 286228013 525715864 805939931 455030049 553630438 481088935 137363731 811272445 833214223 843137987 713474059 9811199 900111548 278032081 262702770 673165143 905014529 941568686 235807635 485955514 449265834 858806377 648821916 959898939 686782564 266600412 453594525 540350152 198034535 70699917 476074994 581053831 56152244 11228891 892431040 932823442 150169045 648027392 9232300 773465662 820953569 493359730 663458241 12600864 104040612 398769023 89669006 710469845 667745193 747205791 593999869 149228004 368879508 622021989 499594518 886696219 744593779 629112129 503731750 493422668 905957900 15999311 26926609 673794403 996887427 58772256 593313416 408249478 406567614 168393192 727324741 582201989 105180096 357245808 118190515 917833338 669905629 965709124 836606622 695684793 189685285 138034612 899427087 983606344 54332845 778611290 761835595 145093125 281711372 492954196 837005320 517886901 764818372 14837294 347243483 407486298 859331392 197140583 171053858 98691097 976399903 908117346 650488043 585428505 287846593 930897556 458780265 519224505 215989137 261058417 797421289 899948281 817987724 859676218 52635688 745332873 920416511 272605582 415324310 260244502 277257775 432174628 169709441 987152709 951099650 798256978 181233627 143201455 579752658 628732801 422400508 648327157 150194828 132213636 31905191 843099796 379667909 140620710 392644026 298993306 711393880 610229997 980588299 495625501 41178410 19977631 656771918 894114787 629428168 687092732 143393210 998884190 608704418 224094388 436911213 310401042 615051103 457538220 179321113 30303758 2214544 884116462 356415745 140711223 45100317 464338323 840311052 663894623 94857682 489943524 919390616 972568467 927920044 915489620 257459641 287975963 362693172 306138363 129086148 538776024 806826078 78047817 525138777 162872263 797253490 674386679 812580622 265212833 282004247 461433727 379316735 761034602 386022519 640263553 105216298 337869896 609178935 815303273 468429158 920662858 738921944 669368748 430590696 947630166 611639270 891826283 872685614 798917051 183757386 76970208 553054246 532113987 448095956 807798337 57786579 4247532 201184476 785139661 774192773 804325951 723978734 296620577 734400550 328660440 449087827 168961811 794629836 276183126 386461724 621041318 848133427 289723585 159129644 927171457 248040437 487086152 244447098 64764055 574408430 274075577 794592257 694991141 150928792 945298753 624872083 591398350 329703379 694997100 300117185 14898053 313474319 902561537 863583672 941280566 768485138 998859813 66971722 433821648 147667728 624612355 181811779 788889772 668352745 608465602 153461871 702676170 506378362 922498913 812693202 335857977 121117810 639710040 180169353 229433053 699327444 900213426 13006970 78610096 947665803 807516324 761804671 480194850 883716860 748911337 542872971 398457487 31562711 219531205 983781070 344696971 951185858 266185195 903541286 871376237 992093105 66446954 79764332 448829787 601111672 672806038 786837975 212589545 258084827 534393961 717829113 184491171 270724762 89539810 317156066 33757473 237515735 949954105 577645577 340786090 18308229 847365271 790117214 572717157 953381074 69310192 738198528 439795879 344853907 156219609 425507108 163084339 386771192 283084678 648261957 735958718 157074552 280416844 832371255 742629875 860753538 226012332 712005643 39522163 725562868 128147179 330149246 506495085 738243110 588238341 216378986 940582770 957749927 727993828 703275175 972105494 307795834 617130711 170774763 61034564 478997562 355577960 922910229 511849176 532957009 244875694 757264478 961022723 668505318 198599384 897278184 860544207 54672812 219836889 197839612 171266482 401770717 29459995 454269763 815467502 407939315 779757016 703119082 490504319 3002472 676285213 460867979 676889569 848090003 549681764 797053794 584142142 322918670 539251490 321268510 28130550 365588678 123148919 693366535 893128792 41614777 331238452 26162454 666906390 650197802 45264928 938281348 806663442 932266145 641101634 771801958 147151472 452960540 822902833 407407091 129310233 365136974 582423129 574113483 658413386 628151603 936576023 44923832 286122478 620022220 994433027 509963929 270237040 636269684 671698592 50047659 648944936 28411237 619451615 976121272 278637487 518541904 176522374 903647481 983167890 934805453 8896937 921463094 771131805 255254677 377692261 780700277 595772466 81266206 968500159 290675917 230017191 890087659 357071786 751763966 749246968 573314775 225256469 819863266 786586628 819593936 740489971 109264291 90634157 238022376 917227578 425252677 531943570 834188107 955310342 386248388 941333166 113547915 617666874 799408474 555971428 537732269 415699966 46864962 552956932 639746609 8133395 242381728 46842097 757042942 913144961 459853804 166307219 302577452 867139589 506165959 245049571 667329788 599728220 165958762 416574557 263248805 779718381 897860700 930061224 930511312 634924236 230058858 557955676 744222507 833022232 77473093 695228761 398157671 626951585 20905554 45843393 762911206 777447652 569521694 851025951 682396351 853870893 302581123 838006469 688910732 776217224 965049722 122073299 476504590 534771671 339672850 416425840 981746555 295527227 390116480 831360412 465413275 489052191 979521188 522758821 670861976 915640756 924932270 83115705 884664229 873264004 62725595 225190043 926661009 291753609 26418877 545363021 524514561 958544553 785404004 551150212 10292934 174257800 169496526 199709677 562426041 183694442 146381056 689239295 119194696 39267572 976668823 557695768 741285319 189919808 38429995 441506703 835138858 732943103 888175949 408912826 982207231 664495784 304594728 409570777 62761021 980799311 536127229 798524725 805419286 931904802 713584176 976156607 196214238 656863393 577476015 737595078 641572639 402578828 781566191 633896083 739998460 942048973 616389710 71945912 234235315 5756423 82415541 163833126 191042416 846209766 768078459 142563307 290400207 403332529 847321541 54020095 624171628 693661000 363792642 572421728 563735282 520694742 805512106 261571373 863382493 865797583 941784486 360214172 654568764 361343113 598370846 967854607 164740804 474312546 279766940 60471310 70145375 64756340 593469279 386322632 500167128 804010625 22060950 337847628 82320640 255542833 781492595 674829614 716941599 754366471 209817551 283874434 843975763 406450211 222516296 643424130 312319501 676148691 661395473 425807604 256269690 766138232 203998306 749149311 654202381 151153965 140418412 741408532 436894345 806025931 75572439 421136929 14082517 994175134 669789688 96682682 978749489 187934432 882724249 392236007 998553141 746437767 89084256 298677904 43263949 315285619 250798804 257907098 621741555 48065852 719877233 530605104 10507435 833264618 718764020 753334809 916243522 292191153 301612877 639457167 918319769 579471670 130092829 466217869 216412459 418572855 305041236 805718472 173761202 886321067 452241643 406766247 355450971 325374271 364754947 607248925 115021030 810483672 588604121 648535327 118869150 349766509 572868786 469365291 876598520 769283596 651570440 573775470 559940800 850257515 795477741 985751103 430107258 294383561 348273014 451328299 112957051 995383133 616682176 770081895 822634091 619487138 337725734 342862477 32257075 247327680 937784836 998931585 534134468 455808986 853588233 863816952 204013697 610336348 773826036 475988320 72301003 415718252 855644770 133935101 853416533 695286515 504633068 410938141 395038560 834689349 675476260 159653707 596139517 652530921 710495534 268039384 819914077 122215793 267286455 417336060 896397434 438238291 568913223 369567391 240056702 484745345 409386892 620264731 338285646 654571145 803935557 293007231 696174774 656471415 979394607 311850963 562815119 888595473 119160987 311955931 928144590 691052548 547659176 47948979 845735338 611279317 972588636 29365999 714719079 745630277 765204137 637720975 853377140 455077491 210894147 809671258 620300105 268324969 132806410 762131582 773643920 549856626 473002494 573590729 207127238 460434745 891783353 733725697 703259512 438568119 757879642 255842730 678921732 131838504 67835783 980659251 521962206 762598228 369149384 608662366 793292454 23636028 345795272 352339456 140202028 364252418 452278471 891993447 676877466 937241051 65544963 979673209 105052779 914004886 529348385 518267473 754079159 957461593 938736462 207528309 102287650 923187007 606880107 237946310 423689923 717831471 688756822 585367384 153031833 820637316 191631867 552491459 448021958 84404288 593419954 900420776 641459228 382218190 683511327 488972419 887997163 289065801 819056955 713196243 76844114 183152199 314979306 158889774 739115547 530390095 34100018 46597872 406747093 591337321 116428700 672784417 649032045 991047025 775735520 410394917 823812369 156813064 340316370 476402668 704610415 616236954 475085432 395763505 237377374 614287121 401367547 509873676 630479204 949640747 224264374 200631835 705911335 735530679 421077617 304368873 561713187 198904387 935463878 93398753 104836185 372899503 998630329 3908630 182804429 355229562 981797008 299352545 40198646 269574861 749413835 900943840 985317984 473442036 722532259 120199517 604065639 361529266 86008502 617596416 838906983 341888400 642207409 53341112 457483171 777756251 718831325 25641854 94423702 59322406 997152836 698487744 813985627 582266860 674460517 60124467 453774759 585824418 407623278 40598271 438627923 533740208 85935482 168713041 857458484 255957536 733208124 208669020 561353626 17341605 926657843 312295766 87638411 787398066 937125297 839221165 776123879 987086320 990260360 925298718 54114732 908605395 666575995 118457564 627515618 547077276 853407633 202335884 26482832 562467380 43480057 777638432 66731760 761450320 279534436 448100616 286075509 447225244 745710424 104877736 988903662 662184219 551916785 64958161 912764036 344117301 872603467 281949038 378719259 628063350 985328722 472199678 771971433 751973349 533569470 829033873 721819246 65353629 93225027 234850715 611312711 591969059 663713011 705251037 848466052 870794412 530521226 180057029 133787215 746806582 300504904 783562770 230704687 179625399 347921865 571301068 594171021 71709643 923992135 247254825 608840775 461024080 283696710 856961141 275090657 665565641 95236157 601404773 471912836 147322071 772780798 862776897 271897187 458231134 589288560 129450990 598656575 560376343 999034678 130026830 986182982 526839392 941896716 69195937 872407854 359143832 70333731 704251203 900361985 850444263 315610316 777083890 420336484 217172903 588748534 662028719 335067968 238185868 428974030 511552369 322866917 193421752 801624455 894132973 969796170 913187873 802828154 248994790 808717049 826396329 170852400 215706324 472647004 920299243 187602676 512501908 816841042 759910897 460075295 755700092 513313554 264939409 158989174 853494891 964078790 47927726 723275862 710200003 213414693 254186200 48349987 329983265 888816068 762071503 85902170 739649044 133439051 766698610 416476209 392193115 700034349 189222357 464557741 546170662 281820888 180459545 270482880 697047471 237159448 167318746 811210423 14865850 909785840 681077191 523036164 569126950 35031783 466842189 122247670 678565996 166068210 453509124 254046105 639928703 664626127 690774734 260259283 313336318 956542162 370398741 603213142 782160361 532486076 115258008 604338893 578944610 548419077 498498286 666593708 696967507 706914622 279489418 328775225 661446612 54245693 661535798 128554384 389946967 638645197 458065230 471926302 24047932 705162715 27402685 912704956 241879014 998448766 377042722 622452545 24851258 461592929 87393558 878693834 982571200 254226890 62432104 196705276 496114724 189020399 637483356 383973700 979835345 384264627 257161671 361232105 47174582 587455933 496842912 835077035 380565164 676819579 213876500 234657050 530016004 984788159 306190384 583557321 134851398 438262478 683082454 9838922 694837331 659674194 140376373 498566860 636059476 984309047 364328567 879321324 994723995 591432291 515871113 98075134 866521862 681337844 397326608 682755972 461359225 220173244 954440123 700365025 66369386 787220642 983796403 757285546 64245633 699230483 624872649 556234540 362999070 518243284 760791010 839502963 344461476 438863261 904772356 859599489 794829730 879669404 204972823 252328221 620464725 389679689 492454937 384436288 771670499 134324605 807323509 404302934 914045324 913492814 270126842 376996852 952266532 561167662 996924620 923721246 996619265 439413092 772893915 969410090 198634820 134579688 394996484 692969393 6053663 441705237 634732341 798499566 557339174 331936609 193723089 444506600 575465211 155998251 17378176 936300746 534773723 788428769 446032039 748603468 37955082 222872661 729330534 120660547 717650161 590712537 633920955 568723134 89189260 889261945 73400185 820004670 97114104 368485947 700073746 908053421 193086450 261908934 32382645 242363257 920457018 260398418 372764382 655720160 165573722 87152337 280301070 926208895 383382664 195602288 799735080 992334011 566917866 46595902 745423601 179894547 537863229 442769224 130484737 700712893 38207504 909449250 526795524 283141043 489094482 650294930 450354817 886937549 246136544 149868897 997904945 890175123 679367589 246115189 836922453 935821565 640105655 608918989 616173432 198460968 292013387 866303621 838550273 387792103 208583913 99001795 483885706 251630347 631290684 405231724 371603963 352175513 201056964 239893651 338497827 234292600 888474850 928059561 417181436 327105615 535706620 959971926 103466157 656499055 719359212 335683522 56547802 109258764 456060222 543320533 507436311 249475820 475682907 852054892 367039878 506215188 471345182 909526082 118508488 240619220 614592612 150359437 921088077 771976004 706204653 235530539 885484198 419399725 188343364 910490288 211886540 487743891 334634685 226702032 938732965 4676404 385572603 2113592 543716327 551319015 913035099 516156603 718450322 809148110 351121861 282279898 269031556 386934458 616072031 916798863 886496070 433379888 730372241 978397434 750854562 591021112 219398061 451126000 867504463 802669862 326466816 198951972 313966756 819410591 581778871 208340326 455725754 776708618 181174269 819548358 120963122 232727867 922458147 764553835 557555996 827582732 146150893 413025943 216511702 68355762 465260194 765662567 479162058 485082743 102228592 435585491 711655184 957250326 668973239 870511138 82660257 818866788 296410339 774590558 950876087 700682521 869910663 648249235 37338135 858491702 420451986 851497137 296822672 487176272 697408284 148540683 564131961 222449568 771373353 421717125 863594163 751993397 930369996 826797682 304812324 725337310 5497740 424456177 986300562 833051326 724196459 479387450 737693063 333475473 735376647 955679627 605664462 790026184 762133232 196260582 27636302 62341475 659172271 91106070 993465683 120732304 496298457 487933288 444044447 373204495 913704051 33724578 136082996 602877538 641333751 476994222 677632770 245155734 213094814 121763520 964522151 151992238 761861898 879377951 286707143 938023286 59449328 29077567 273143079 848141315 612411944 906490053 807522705 834794185 828501534 484622673 809484367 974927466 591742161 598836198 30578654 439475989 298544179 232709430 29489289 137861462 223797570 423536764 943799776 549726393 506441623 323599977 659292283 724737549 144896918 129631254 638086258 591817700 791348509 414599220 377720642 918725175 824218105 939032389 58029093 88544730 453397922 493720733 566969456 887657453 653110776 384368973 990186414 465659521 183312014 706091079 916899975 174081493 403950693 687669277 383542111 525127853 255275639 585520510 374581541 892589544 756062749 56802528 716411475 648924467 484161185 724169463 929770094 845417146 47798951 971425016 75537473 858688112 587990457 32706314 747211510 391672574 651109807 4977869 281885010 417015004 346618600 691819497 474367145 623773343 974958619 978329931 578225489 780909295 154350603 154596340 180604265 368720683 73682458 907106320 204608674 626957090 475137041 106067636 403014272 367931223 910811093 166958941 463940195 130765926 938156876 345725517 442165311 38594882 559167505 636458012 517260101 600643467 624129629 721000449 139738331 694981117 810580171 548192560 467994851 379227803 225267081 259923845 347612192 389384112 252639467 964715026 580825830 913784113 874431146 73341933 516582324 182333095 475295778 634262967 187569803 840857986 474152897 381987406 929328645 68458651 412518928 67018692 688645068 981892399 551349305 936750826 429087095 364926661 625006962 585076662 624285544 21453270 196952250 67281151 779060535 216247369 677214270 211971780 69051215 844405413 557504263 822848987 827407476 821392710 805836522 283651066 172255236 273840429 249928647 201138655 299515371 523776630 5429008 565876076 525132686 828950963 236216001 581463284 4186819 563431656 966959789 962157338 352698745 104743388 817035930 456630717 888709248 323290363 222342364 783170327 834190710 630979979 147824345 385144936 139076667 1891875 271556886 738096143 175548469 579935900 454371178 63205948 279455513 171996885 614213348 631822729 147313670 153912991 861346951 767965534 189764156 711965016 32105152 927400455 350362593 892811565 253548084 689242794 481151691 758435485 851960266 556090116 561901550 388105376 936855813 671186002 533544728 25674964 573702376 106066899 44718891 750911331 327896263 589446988 765423502 843603435 872932367 948615873 424892255 175715630 202633134 371619940 577015316 569707546 584117052 653833531 281672555 691121319 552630632 890328283 239119501 560459549 553481670 766031174 9558964 624284619 497536804 532459938 740319853 405125596 104359698 132787006 354800451 349058528 231146246 539226603 387044732 815050831 587896725 395742081 814193734 627581725 319026071 752159516 19023579 129658804 826592160 459164779 982975754 262680216 801929101 582831271 831503570 574399626 586829987 148343590 617938811 785371270 134660881 496915407 329439263 163566938 999081169 535511253 753027661 568370204 170287631 334497508 22663229 690876483 437024556 400421650 758305623 275949229 173581283 330131796 137384084 267640492 434298890 969448953 393135316 685349593 638037420 62838467 480721808 516429139 865332643 431396506 945750632 121941759 861137386 834504027 434912240 417946753 498374375 86126311 89472228 499261744 942727605 888368435 574675520 337842045 381360807 761131485 133546925 89015903 273391177 760663037 719112087 177071050 693444466 291723393 310601467 947188798 203001675 556349916 105452756 121704316 440772397 708212575 631111000 847832482 234788365 723889810 285749808 177283036 532489718 221642426 246830691 102992760 999349793 420203121 622916811 30130402 903985424 104582775 974063418 915735553 637757194 396972537 703107373 275312201 97259526 418394945 91617450 273030203 846758772 596648980 948346534 794193943 366245137 768276980 88950543 413539691 115272073 305368970 324269414 292055252 584110020 452148770 229254741 513209626 679227333 874350555 751186165 749800461 568436785 781709226 270669682 448669552 92112949 743560576 278410447 94098487 81224506 53169075 409417686 81729207 175715638 435263570 350195482 273098034 418579779 532602236 413951245 459496300 631972282 754903796 630912178 748727708 913538688 292966703 62715333 934266097 75826561 666766325 614941389 721586923 362613721 127336072 37293895 381218147 247823511 537663643 305402750 78085221 226056015 475592816 532181404 954006752 103124143 490122376 697574408 575154547 333684352 696879943 358655309 337752265 213001371 312403469 284794556 46201907 23240693 978440251 193127038 582323923 22764810 501509961 137538196 618838932 194454240 934235460 449088764 375668444 249512943 878249004 142173471 972324710 408167479 441571085 72746018 724803377 3472906 353866129 667418862 198100178 53547452 677603700 276225192 405071784 743524811 914188714 754594797 25376220 615894767 627828280 198507804 640960534 184448831 755665262 322655700 561833408 495091428 475977748 241948099 49184813 307167194 800804209 659274276 865306319 141874458 744040601 163786584 444944551 299322750 470567926 434341150 320191126 445136849 492233794 973683546 194509990 314001275 804503310 296157066 96643456 419459721 787177477 891624592 233505273 214338663 306932044 76837938 969665446 788347373 55492612 739905827 977885227 236196174 310771711 326662199 245929954 288618645 291817127 401576890 15020107 845193208 102330556 616032258 761647329 412794247 44016838 202919938 116093129 270486791 99196051 46431384 678245400 210886982 741060291 82268891 55800610 867034619 846477472 129306928 397603491 650424899 878875789 32585918 221084445 681341662 532604656 816558102 569673199 10605143 570658388 183524519 417919091 660660445 133376210 391445861 708203581 104989521 591922440 256991865 504044310 814439060 671231363 45085016 460938467 63169209 679128189 70013525 133266632 974799319 776923373 412299161 858749167 168368123 148057340 646168803 421002698 642202553 96789815 894461945 880370527 121050477 256852044 893791132 553244208 754650319 123284498 243233798 467712525 644665994 834231109 763384363 235662997 351804117 89842875 693138332 380771585 312847148 50368934 619276439 73387706 503426422 510905489 272953453 701052525 196419953 515183008 693168896 419883265 504171323 626073880 545668619 947782245 386571168 682504996 358537246 472494024 551188173 170742706 672706224 857345372 147521806 891848725 184872810 620423643 320401150 928396198 507622813 782323685 126483108 885253282 197574995 83469391 314754335 868121278 868849518 677397238 18503951 173826599 511177807 74787822 885960568 812177724 182473038 363345433 85315070 890407683 997731919 348993798 323707096 741272943 291261536 260665737 144255056 737512162 235585843 982489140 649400940 810086389 223493925 472848911 386768772 119620964 131581497 640898812 946928106 637961465 537484380 561700234 226408839 421332321 907610884 232863072 733597129 823760401 724969072 539165383 823500667 69681304 218587185 972814457 128057358 900096685 862516476 139234369 323652440 523904983 719084273 602767233 836571934 318592689 383752630 688272781 374185351 896143156 964568847 130836187 224200085 211240893 142344372 97390367 423087480 203534815 566380171 180462074 684929439 522990755 679584127 686582483 355856681 20690856 456077629 727213471 521598559 294756611 589578075 260363580 41690102 921966029 750783815 36037819 500434076 998896642 869045030 889584137 2507189 800259467 259947295 812498387 369654932 732848917 531659009 183781688 413778981 737111051 861293447 966580370 332431223 483431165 42128938 436286765 556597445 62926080 583693487 369945327 878766213 436451682 447621912 841575702 302458892 9924842 700513218 705745975 646901775 815770711 44654542 371544280 682950291 24130711 444293582 973482369 97493969 799066384 243307244 876882826 981722175 934989751 350808269 456243930 502266776 242360348 159216873 97654740 635116170 682426000 632808599 499480252 760105855 178643611 161827709 670917897 762788768 506488269 72675835 390114618 916054309 198521404 828638570 688450827 951779139 852704061 426897021 647190993 451534587 708021721 196620000 566659983 603650643 685569299 499974433 195014204 908616966 749810066 584152048 833797131 596991526 373465133 905023718 714384348 108102533 550649368 743084357 421617566 783355871 942438043 439886442 341771260 218471236 750613855 273187327 488307516 369083171 615403055 894179430 474421506 130351396 437486920 518089400 888827038 952570425 777971319 918886290 971346889 918588869 252454323 347602247 904292208 840769198 511009384 847252169 294845004 277627138 779892408 533744285 6666939 683437287 21005900 411681199 101064452 586154335 800105295 737332063 557826426 605724731 487683979 818379737 705150040 907559037 836332996 15273003 892794643 607636014 607680475 483631844 384068156 791232581 746994301 228263559 32922649 895587751 452285063 742398278 259372349 710603364 344092673 542899059 210618149 324785155 978310009 423747042 878193626 253104947 184107949 480429512 469310715 148094811 419725746 313953379 966828058 165209228 698051979 727344286 444760370 65625485 167271506 263885387 35164673 381171132 299059943 296653361 601737735 498506631 333987280 277364759 464856740 236538089 604248910 925175345 495801025 44467143 935156123 291225175 689384152 269455857 984439624 931751462 601653146 508460016 33665730 248576361 885389525 290501225 374345082 380007739 756127696 165172169 114346287 49686527 394763584 553092284 768998541 280100028 401725245 123697256 63471925 509561155 100233481 576365957 364380497 514439218 485461711 281380385 336519407 246124982 932936018 522591910 511483442 753687532 312592619 106776041 223041831 418240285 335915132 663129180 124376027 531980734 618910795 154134299 210488547 333292690 192380230 333012582 818667172 727261141 891552965 274871992 998277460 316176933 872732957 311724463 863286926 905007122 113885330 30868503 636470478 486554964 895264077 774877371 946999670 683623427 746955377 828252068 165428375 776815383 950556240 979346394 8305791 349159474 504708662 561982065 23477844 342981972 31559163 675185069 9533097 874305304 885395551 980121042 555537470 498809431 623900042 273291367 253406810 669544067 103408161 589943744 257870437 187076113 140261820 401513798 498743585 580126076 735338599 366480189 816798084 662885073 474490316 18450786 708456273 2396298 938227247 961604247 773642461 584109898 175857042 471224106 712194095 420677930 757435652 506680756 805523794 172318561 848446077 534453431 270060916 195855334 739868996 219056331 253305903 40427266 735165086 763884937 706787003 608534433 713909367 842152366 996717549 578635026 235335947 47593730 24967035 797237750 186172452 651654730 741796698 379917120 305576768 303079395 537853082 234564597 683053142 890363757 56550114 504414580 803359566 902011496 643119893 839560898 290641499 11207114 453101054 950015904 55721756 913763162 287407972 352984714 767219547 256388909 285341857 269910922 241873003 336251478 143377688 93898284 546931357 93983154 414545062 128450635 827659343 826518972 862021052 216010664 247640052 649898285 783878133 990564926 782513047 274411560 798051055 263299102 321900741 387759567 36717646 286101912 308472484 652780813 294682251 249829670 782623458 513684501 34199828 138849873 940230499 20082292 832299858 453497941 801554132 839685910 866367095 910148470 567331719 108362283 574856190 59438608 861077701 150330586 707950481 520751844 606172583 109153175 463658914 704161980 729471861 195750257 150807893 295731418 689832656 273217295 978462548 134199739 787965409 583777920 717680366 205988785 181963793 525832779 490983289 676103646 820828600 374328544 240295007 737232587 941072332 893155398 698659040 23992753 679723939 615212412 509657013 230843617 493705323 64903707 298732009 211721418 579784143 409485492 947593605 179473561 914534221 561109680 505255420 262667208 289356028 246606594 612207784 953267281 76800470 206217942 413418206 859091441 96722204 275444677 731657405 918604764 593120577 979323485 638039993 271596391 106401736 662855484 709058847 568318230 285917669 788392144 784044434 384264620 514343752 202486011 381485363 416401447 680407096 278083746 36764548 183260837 871625691 538285392 892611767 444455889 538703305 547823946 997374665 964779929 695305843 794382403 737277393 812920823 174415274 613178498 843597247 210874017 417668055 613147518 611048763 760922601 884106368 517279344 658373816 29682592 135503929 672531534 592637531 480215392 388740021 252378565 934271425 777883131 747586846 663192692 169563390 300789344 831649030 110683571 493618875 982796350 315321874 902759457 295576205 776160741 792676299 292588393 441064851 675670494 732751157 202147813 749475485 134966030 940637456 928756492 557554520 145018225 754184316 305388102 954328867 835279228 590599768 475310861 888320040 579580813 819202649 678938675 579933235 726774879 377927637 129920100 924711566 744717650 689140489 18881531 377275527 310467984 275705628 403667749 586289588 770522028 838766650 515480997 840294797 964208156 639775260 83664550 447821472 87273891 762094561 585619679 953955732 176635555 953408249 961128117 231092925 358760462 482055581 600797406 306002427 597569593 325822787 690456675 918426609 737953241 240551451 546828818 87804721 76688418 298259957 325533690 857876387 72275135 895496604 265509737 250346375 541940574 700983246 277060990 648901806 294223424 366426644 161494592 299968103 10548512 562318169 580497994 919717395 774404151 23347488 33341893 675085587 170091928 557255536 258188149 166174249 444560970 125844035 965642553 214982003 626246101 835198051 54439338 377042201 476360638 765795101 383072948 891666125 607193773 120170271 454177528 391348227 25606057 232442536 992978286 319728276 987877583 795397023 229859961 124349506 52517541 837909089 845164565 195168503 60914819 475940404 663408026 365413144 705963381 23549543 920358086 156308714 95466670 345367143 961786807 456348769 937584687 134622703 883322656 915840033 619659048 14917855 110456032 143624833 376619658 741205700 404192916 491863460 352445900 122613291 712340852 691396866 480058333 219587724 725488472 102017033 231101745 84190692 821730333 202187493 606363756 336426042 183717 890501150 494050953 710042157 979566980 85172378 325300364 781052761 574138701 757220545 357393013 543939434 335120183 316529 158176524 582289321 38163852 990490155 457219040 426267066 540210541 778149045 918345104 787777992 144712907 174553154 392278326 315046782 101216739 152316649 855759145 940707599 759324851 916436591 328645372 911937377 984724482 313999041 880474269 346391681 256079310 203969166 485130143 917452543 632256050 926237412 328038169 198855577 160579882 825517612 281544915 16844785 59303536 106442021 537362157 385774449 523428664 403389758 482823256 478558050 663356938 266717618 682516015 307031182 379731821 764015004 338872345 654605774 197052409 596551901 118494942 816762740 253616313 629948766 668018405 801189354 894921857 775949104 949980792 360733259 638693655 247881131 582302891 3595961 281313118 711030707 456780769 425120732 38432070 668272542 994216246 22135028 761243823 194922677 731502879 756087325 589885198 982456432 282457477 892150648 856257865 404540455 661826504 600391526 305739524 29434672 748313526 983687475 545552723 256469800 304483394 491328775 703756028 210378404 867697747 273312591 870924944 425049074 992656078 579839281 860388553 413768104 160422600 392660997 437377051 335803045 749616758 82628277 577583411 463348788 260982015 743216742 285949948 489751205 648192881 368264947 675899080 164124635 523174003 786257280 310567651 913620267 401292116 233830662 803815025 39947788 51366528 972405190 761175958 737420832 854038359 827894546 816523815 995732282 535940156 389946498 558469757 157570197 538668876 805229942 386966557 171060978 278429883 937029647 503580676 987816372 773999502 409799457 522103514 937596978 779147846 151440333 591954997 250860683 860301280 431118797 29766726 309748632 91116931 244502422 948898424 58319662 668179712 133352363 264015447 513998727 89864592 200007443 206030697 964393572 257045594 837273773 132060136 306173304 941953765 682773632 384604280 619543345 373945903 905280957 922288173 482894690 734711273 897418824 577556517 668978125 767209934 541219684 17220934 258306412 798026616 861628916 195243843 840921650 584990244 508917152 987045980 91032655 140719381 194668609 650748318 536845217 886682867 878653738 333135239 398329368 846163892 395781716 61687186 129763246 20698922 694808356 789341568 822090494 981935432 397632126 464100270 21974188 930770046 877976965 916377427 32342105 29610127 65030644 847970768 80453484 496493346 826855993 632846598 343381034 933601532 192980760 397743621 203797845 476137186 826170402 877108290 360346362 238918848 971098692 416058297 694291902 976239023 192353815 206306458 736617442 268629618 830158489 954809968 354165532 545238325 59444323 796725909 239834039 621294692 426375456 709749472 54380394 236006471 19587668 661088957 171202774 626360765 645908554 290597655 547459288 126147115 200223777 407601950 309623198 266071658 640613735 891053999 186461223 482745454 86170314 979511132 948439185 893036559 590964576 766007020 174806464 638009656 53440806 165777105 978621013 373840125 765909780 532738769 711750027 56772983 26851930 943935434 86552799 39457865 282594549 434573450 916066970 898111932 707595725 985290343 766077965 920301764 417903149 752621684 636340896 973589104 378046767 857574820 145043207 541121798 5607015 520379821 648409860 317568069 762271942 814160484 662147543 616549787 485230383 199503349 14930352 520756764 244149443 348668386 817612500 297049123 446658125 501490128 643168923 708832505 394158956 800430738 473377061 757092353 477497261 805797906 784384304 897966170 653600015 875245774 94212844 800799751 693363886 590350946 630346285 765169236 958453872 400875657 293485083 869567045 878891399 262849177 313987288 620215774 466368929 585426524 977424256 550906198 693072908 949864388 304685253 404950331 487926894 479733054 172234806 241177639 529696268 532072666 993884167 255717525 851468512 673338685 608057376 541379412 977775765 380683508 877296949 773724178 121899517 945531805 356563215 920716681 562254794 508892535 375072636 503051274 805421353 483545723 657467588 362526492 893175465 739806245 476485960 390053115 841920925 971422823 323003367 416037439 751854625 161959002 358440262 908649951 244259742 244244572 636491075 378340755 866781207 721213755 184375035 844330821 627661811 415123141 388766028 546475788 361613078 289174904 623766936 354520512 724800333 717889922 807781254 740808457 550809076 285687424 579853135 974730140 976416865 302613599 327142302 726794892 895862453 929017711 782887851 31491271 459193428 693007276 54858869 671010062 140945236 840134973 734538147 302610362 710613083 366351737 857351257 297649681 611084936 604911828 891452338 424725469 788694887 883746797 950845855 962288147 556668073 398673246 283127694 248005961 825329535 96015592 804684658 426251297 936754878 73677197 375409420 241137496 291531369 138477705 728493607 864173497 410353758 208174517 326150627 955879177 931439523 526296018 604197962 40309541 378103868 71314260 402737060 447610144 948567483 272228556 286838630 201782006 121274174 435921754 85078556 475073593 516390213 837733910 381995590 405257879 939191729 83778864 670380673 624581194 173560020 280659201 27019599 623499043 953000494 106846785 131512423 756854360 234147037 202844121 142813108 235382460 866010583 780403647 296968950 6561155 767371569 232696594 934617502 255426870 437150698 842701762 913841125 43204774 113856019 251754857 454849869 998640009 858694111 345484987 677850286 583656079 756675544 1561480 363447477 236130480 363641872 183612214 56974471 76538052 76086436 911616293 432895585 602078465 449531088 30982534 480893903 473074051 108455283 106974053 658258431 110266466 482660420 920876615 47820998 209114314 540001005 920847533 762052702 91532298 419844705 399723016 314905679 898239696 271872256 303116954 757290996 909408671 572432496 201150585 471716153 92119992 275185246 734863554 13892079 54096883 284906496 91636701 806149170 275474780 322392623 550548371 970616603 793211170 435281457 19706213 799673948 5302904 898561121 32078815 625197646 590377622 614905002 845000716 708751447 816442745 203718281 48013403 598472903 921172092 23071782 316762162 87541186 662029882 834588331 697106480 590775352 539596139 479812224 906578413 130272136 837982273 700629970 549138035 649189553 208886958 492454430 919719281 13733301 615945132 268769648 377309732 962430753 715993135 873218864 245370449 729553065 233320721 510653565 931847842 767181285 296067210 849535460 451156716 605001532 649037208 951167527 683625282 861899279 4596287 534681460 120401259 905482846 20566753 273971772 366534610 974675149 604813070 758204842 138216053 658735699 745867075 826410173 824165369 34131464 237780163 295608413 788245695 847862938 960073158 193627893 310042871 503862909 561056890 197619265 507998054 727681566 742285448 554320803 273553687 971150149 574416824 610155043 322352610 797153050 243556690 489097483 118741654 640911588 376878135 629258045 627093551 846225827 685798368 411032133 884403466 582342077 200589320 322030803 611233842 911710208 170029957 628184175 875642116 790312284 186841445 431776312 127688095 81574387 897236472 165217044 840788619 785320835 525112085 831586441 858584231 570147098 532304763 444951986 636115659 696397669 201756862 736222070 724393160 126439964 51641750 588810718 611558517 405739357 4540396 188384742 640136785 21051391 551356200 33704959 928309102 209058339 906993584 663902946 112444240 945092327 434201897 113504224 26204636 150638766 919105852 361184502 697366230 478271028 999773208 621229574 513582890 124781035 770913600 883085793 109827601 922402758 878276785 601520730 72795674 635202524 984524260 98379697 763711352 371334411 627145514 712192991 621070932 497323592 75856016 966451765 15823904 376345214 74051356 15862089 977851762 899855441 88233959 238807133 976541772 210085433 162008066 35555011 744287445 270056945 891162339 676404629 666548834 118232130 899943811 149846688 260587674 506065361 588080151 391651913 72843444 175525548 111345338 863758783 823664303 535132609 458335658 881606404 115342021 533393513 702556462 886615912 130526287 788323750 765780112 804629723 760204447 905368772 249711958 939607008 134301723 766170348 126278465 474063695 446615504 641184774 687218219 392591562 856682093 633890302 621679390 951877858 108339126 473918936 816625829 20227658 620728810 485392908 712642242 366929027 730362724 151432232 13319133 662129109 520913620 307447465 930502852 545351487 974812187 29144820 585600290 755313575 780660779 962512518 695992587 309578135 722159777 536245532 209680198 49368780 893817642 782848775 249992842 848664781 49155013 985124814 748634592 776357268 434981520 165187910 798739121 60260915 696147246 181488777 277489435 378895359 798473782 642802949 36657877 648363776 383766940 125387695 944148666 77554184 288211534 315754481 636568968 620742730 715596964 379944267 700638372 98987502 203768621 430674216 967587744 398435222 418301382 242896993 483955027 677798073 391038712 708317604 174555522 397538128 683738380 161524439 472112113 102313515 261917015 377777754 822423283 792224930 57080352 412359496 534693026 668876665 221617853 776773007 219578897 308373104 30397633 788772790 847196883 841244037 866009871 298526486 338608768 333706545 244324989 118833678 441315875 150897204 365328111 484533573 841142108 344902326 391217937 629873315 250591418 288856317 483824174 446203572 505858775 271343517 950723447 143571856 966632324 350773907 554701880 381196394 59833487 569607972 937282348 705561330 5214649 666570818 719253650 854214454 822388480 534979436 2532820 302355312 895670967 373554217 59254886 255445775 521921743 5747372 263722334 248308081 167429639 679346558 832727618 35492751 550259311 567182032 362440387 385350336 326203269 602541019 985142281 507660096 110325895 361644039 956844470 394412929 842931426 131078398 911263807 91885809 66148032 581847398 335360447 503030048 170932646 144809312 643561918 971896210 811854482 871313259 7306807 585873459 287178047 700810851 481559156 863372279 581454007 830601055 173091692 400786539 941219345 622394226 849496279 811138355 391362832 888669259 698379899 854498649 395844042 284520716 303380172 922430474 890611713 645491465 959185097 335513208 496707805 443370092 750131452 581293398 267413301 764104725 195384159 399223275 579482459 38917481 485198038 35179709 302308917 251456754 585030076 884163790 989800373 733052781 262992732 582371582 790141297 196762436 614869595 668686705 26008072 316843128 300295468 284432794 287477876 1989430 478938522 777783479 103490648 603016079 56048916 969577858 921633094 426647591 807509183 562748400 16202800 937299138 555834239 168465395 380206044 623243460 692997737 515455622 523119592 292767972 353723965 738627768 502104615 359850521 567729175 171610360 43105082 879770716 935644303 15233478 727397574 426406784 184529488 380655909 505921748 309754376 987512438 840079778 406142425 566258512 834951965 626350099 438317688 324165044 870839898 806572991 897667246 475852771 151461632 951618177 334058601 899368933 154756176 689000232 277810040 429384466 977577457 23272899 317550224 849473738 40024778 266109093 91572630 133603333 385471232 404989796 59780925 612267725 384586109 833501115 828464383 6902806 645549576 458854310 478801239 496412088 439520069 48729586 848277708 561770339 799046616 44222730 44273308 66515430 319577815 15211915 144882436 120186756 757750979 110493926 442327505 645882737 407926644 992244335 135895130 707019646 744133116 18500307 748035581 650294832 992192562 224971692 702382550 991036738 528632012 411358348 176460891 136324116 865607826 482020178 570635636 965282993 572171450 384165855 373643730 870571679 878298553 358779530 168537086 673289425 825351214 327488020 150010017 425525632 992794707 309834240 685924405 405512546 713198805 42586645 798584135 573756038 582662696 395006432 451932383 419930244 142881057 946938084 699860173 417949459 536679891 651943328 646523773 650384675 738385340 139409832 944767608 771013257 674062649 559812786 353162800 211808510 793601222 997195362 71834487 815883313 79509736 151293755 100311332 148649758 356818389 241345181 932248051 251644486 242883073 643808575 368062243 972135387 769303200 332760508 658780806 700463466 663998811 547733348 686612521 626507222 277375959 681793954 271456895 720716303 201867738 15023704 82529386 297459477 287986635 7490546 497687770 644888976 670946680 755470605 469645188 961794118 887818431 763568799 590806749 401443793 268578585 75228323 925604864 121652501 646656486 275967047 364838560 939404046 458662663 66518821 177975353 858616586 336532303 913812843 555266758 307511330 625384835 126105059 781972283 972358078 100788833 369830890 654047968 405592992 506670211 598722765 376983706 647106148 279991919 528996400 137083350 919562022 14703621 165186742 653619257 293612315 152443513 789570875 73358416 647867162 867602073 14014005 459675306 407962265 559493523 668455042 659299192 648763917 62154353 252780548 180009016 67171124 362958030 325972307 455598182 817514514 59077655 340058783 876292614 548065295 852006695 656345898 118788855 618480707 802791196 143007070 594950676 427501051 458095897 299974946 929837776 974105028 482298189 470878343 285306790 759647006 396330427 497843785 561178921 238035944 471932060 79966496 697129499 575894652 413473743 530568810 938796151 40294702 884107966 930042820 444173420 700036954 193885798 34156384 155876844 854709922 41751818 664048677 674764755 62808814 431160254 987232525 43270990 670213485 45512360 683575489 575016045 774871955 740440610 717912110 729370337 122038147 797954650 71859848 797886675 299796113 407214721 102859295 95067879 512218630 694969344 576564741 536381773 907578771 169719411 336373031 229642300 333525443 374316492 562655601 537642132 811390811 664882520 525796261 913294291 265413617 314330638 907593262 422807444 852948343 540518568 470185000 147991503 930988896 615752026 337963092 855822759 871253234 913176797 432620210 4997315 259993507 56623942 402891735 623418564 352458931 539305227 19087373 114399199 547288255 339908279 505695496 392283974 8264801 681474155 587442507 973693950 459644875 425851394 588576789 78027057 983291299 801974220 152901378 59008689 329155364 948269635 97432478 291429699 959776411 142764553 273424567 697715384 993729963 697259540 141468004 622419244 977547054 581666957 222401977 344504585 320116536 933303091 128548220 449697039 528702926 494854608 151840048 96537123 980147310 88540737 121096204 758492634 891463058 534879332 372886434 472612433 809785797 405938366 901269936 103781055 985895669 460987489 25318913 424723267 309533231 853651118 265850500 542376098 662940679 695614891 49959808 843691248 924343502 669817886 435028141 213784508 801148566 272187772 369757066 690893321 933975514 455452518 91672740 982683772 248623060 438061221 715959818 153792207 690216964 34564416 469488589 477276033 979435833 876126298 824064325 854741841 702533530 579747628 773648053 162969281 751977502 386085928 180438583 38340590 173845414 808864076 915440171 794667697 108529230 386427233 587912399 278849340 569763012 856696853 388534420 996684113 547595555 894325944 110158175 469079358 477918971 229322652 862608459 207596028 30613625 306377811 555725761 276931808 707576393 765795185 687963316 444855528 270643005 9031573 771968686 23450346 541242280 805843228 779736517 635340860 619057290 261658302 828464343 431535804 980556839 12600609 1842738 894399618 442486208 8726294 89333405 807390584 984718730 301544926 363703645 647838793 245362982 785232813 558004807 576662055 588069719 523560266 755485259 613875061 59886721 4770970 47375085 599551872 737093303 301356287 934267449 92408683 893849738 199025447 171862413 931747345 995250195 430196287 618737647 130136626 898286337 698335063 955049052 844044503 326786288 945261023 911811535 918952278 60601356 737388823 447087460 897635250 537320977 350272121 654318607 791047121 856558868 397509533 576318446 15150642 190915254 355225875 818437936 336120440 733877160 27380952 735633727 823325963 733806129 894550130 281364031 987978264 652137308 296615938 979716642 802106528 678551036 769014770 434042581 13686213 316864168 458506227 459843416 205080092 4696280 615111554 569972249 526505117 216817213 450689570 145852472 283027711 651115837 321952688 988021422 169782295 455097609 957556230 284059920 561110623 134037268 728328092 136976397 675430342 447248366 14343760 388827676 265199619 448224735 726835982 741669739 943948845 540456120 623324865 412463418 921673877 82935884 752536905 174982413 353952389 294100010 249537127 471644854 515851650 116637521 508859580 641686535 696590964 816012878 957421977 519479974 362719266 100354838 136924704 796698748 262691377 924605180 205556563 1962088 831973508 24441011 875548465 331688931 366580329 879381090 626513058 81249079 529532303 468260116 992809314 71975743 937050480 913361616 580959184 508378881 77723427 918338909 941796834 540791422 920205364 652379011 519510687 651173775 124787178 946969094 186313166 231460960 995364168 173477565 969521722 707307861 204081822 156078766 802102273 756663651 613300684 559683355 542964651 75778757 830328146 839056021 292294935 291479021 627430765 777372801 423000771 812761869 918406173 285636430 791923025 536180204 563843978 976423946 158057615 34545679 417909028 779672914 335301476 691570432 773110264 944860940 145868894 179007206 663971107 626927674 665111757 195973294 767876845 14798851 4024077 563750492 293601771 447775084 145381028 81062523 406893830 424747266 997442096 7146554 14296870 120375407 153788233 241188122 26042530 622041847 406146504 718540692 972542868 657156428 687482909 477928595 509423899 808694760 35367019 620599909 352713917 293712400 883110810 254013169 457781097 596360576 109963436 433182241 251057929 447374920 858648427 368563222 603930578 417939683 52449753 527002690 731100529 203636233 482361584 236387079 146392521 617460947 776985367 414718507 501906266 259731285 216834685 15220353 652674705 959334642 333256876 430981475 40558618 724300374 347170170 191453208 938005820 150632155 739791243 297684610 19211691 455295864 886203521 691691849 37730981 4891839 870294621 946854843 786531432 393465138 928391602 865042717 275185740 679171105 992845713 738646024 578042687 325402705 420102072 549597329 126959187 749044684 224784142 723733840 496259301 365402034 341539521 688818642 810514451 627039959 882962209 304820291 339185529 535753822 374454490 766078943 525780300 464086491 941618508 48924556 168877783 95097610 425786956 965073548 218036750 123424318 532062693 993136874 666639635 29093978 300278302 934413680 128304946 23852022 616872286 103666096 258764058 438817278 826680147 246621249 39915612 908057671 187402482 34661499 181230919 676357310 363989641 623602697 413297267 869887348 912568594 694627424 402352459 364987543 105254079 492904350 89288667 768496965 850624724 690134379 283577823 950831617 145432931 47872188 912693351 897962640 362790450 189904113 66570746 226854944 671280076 187762119 571815666 731639613 623250426 585303215 65576575 319590503 917004741 511674271 28051265 615392662 567730812 342235476 84838714 284447858 588889274 440861921 415107605 581067973 539908672 312951214 99375629 642885221 3744257 309535264 35972252 676823461 160082482 720318134 163238291 650491486 813438094 669395159 306266986 882544770 925117877 369499207 699493948 221609547 993469287 614622991 303682266 5919779 489420516 700268314 754174385 983756332 999230328 720721142 703359785 788407753 968663278 574785696 60493453 528429230 219426741 634624847 834195429 114026068 307001603 591941371 844809272 166797219 687330958 438126387 508516322 326554296 623853733 100410379 447016323 251722619 442450063 212000703 235138249 619296220 257410172 139383617 444114408 478421537 327468027 565736532 487563178 216864258 233154101 517023398 215280131 687558739 721359454 601537991 618473636 858762547 469386378 509130919 546024295 814224404 779216758 12469690 413675258 75808676 176843999 185861934 461009740 844859776 243650046 427670388 436729979 570812392 97187491 703532017 349877859 587831166 812960161 865437112 504769471 712557116 963405348 628549306 914537008 505910130 701246182 173662967 220098828 984597972 458118658 252752154 788536324 99672485 761804044 401409833 661765932 773217957 98840606 908819605 788319170 248685227 393990104 640338406 416577116 181920992 694488477 42559966 216717374 956579431 297805035 920221040 855777822 618602803 69810011 823969647 486431127 92296506 840004104 817586126 398967960 169499206 324117133 437096672 716552781 548876867 646550004 737300610 110707067 883893075 199173776 438771071 820287247 745357444 926715935 959636069 507020089 430148346 366660395 220781420 815604745 642957320 972872070 943567316 523328576 900554274 880478498 428832025 14366835 241862610 231667050 956167616 590175385 33621048 895951217 64774218 877982491 815083655 131054855 690861775 394318687 25065568 984479501 599792160 309194335 123485849 584951024 445037524 747493680 525197646 472877750 162773757 169518412 885858891 270547063 9253744 252656027 872632151 847040699 186534278 717826493 397297172 547529005 389622942 498787237 561315699 275342258 292875884 117113261 180161212 34518549 163864051 693945609 147340464 311467859 346527634 905714857 834419830 784185823 253563562 77068212 679355831 587778500 794857350 219095908 296403622 587130587 948144909 636772026 825674071 500283187 769047384 148723709 586792020 216979648 658494163 926010724 289912185 68461813 859560339 306379103 328886977 247090095 801326768 242584058 40177864 492409865 515438381 390850072 498242131 358493411 124034431 861483278 437390124 42413174 107464162 44431611 742385099 69606573 629898282 968496189 963393449 578237036 322283504 124534601 758477488 178742972 707158714 158906861 299413987 79449246 65358828 831479122 521873511 766678008 385286981 461926483 3365375 763678443 870971722 861107597 803178124 898868630 762300594 529818732 121332099 710631769 430151092 227144480 185439958 530626862 765662206 980340029 743147180 881777765 582930866 600257339 102535585 817409176 974523483 870176836 919194518 149931751 991569285 43137948 457532384 614654846 664244602 668317587 604694132 760682327 878331509 260343221 385260177 437872105 588245144 459362531 129838960 652221239 401820594 291992881 83774301 643269124 452850805 895860289 123446717 673885647 677001626 345825526 250879610 729734394 995578127 428268697 321454903 802506911 838280105 948278499 9434389 4994571 6468287 449769799 803671906 869918078 480980507 989948785 206513450 415253133 206308587 97938602 38868877 509731090 570179730 200446978 628296571 546097724 546816731 691106349 754712679 636343995 189707493 709985987 677124206 804694922 282060412 875946183 871716147 821501470 553465160 121167964 724860429 966986351 423329400 273283520 329599557 778796204 636503954 686851844 781353819 314945488 374507965 615424497 107536970 979734450 721225653 611321236 966982032 21215504 137672205 119421559 351764944 591049739 80832633 954005100 522337657 948858920 875235723 499159456 152533025 364747442 544990087 239020320 767835435 260127171 268802345 320134489 708107291 410689777 317015511 587211963 648276740 372762416 376380604 936557700 194696893 141853155 68706110 311006191 439850996 537953154 915934260 808385809 621961450 855992078 966074157 28009881 520311371 277843269 663428291 524118337 704851741 654855002 258115732 733199112 181501003 512037495 811617354 787350248 251328533 831555807 224391371 866574722 897865195 973488986 207648662 627647762 185506068 655830330 219455794 69835648 181285641 365590123 764026894 851401934 802106570 969161494 439425456 309150806 330535587 324098377 437449452 632044263 171021560 205576053 847338570 219917731 163048106 544513926 435293015 81073818 903076636 177592195 605181436 845047702 743755977 434929999 696719896 254671069 734177190 366592386 857055411 82864876 11561147 538591976 887068387 16963107 788595210 953353050 46925847 858106119 642811385 190026156 61267939 499717930 617429347 592809000 424243117 327354731 828463369 593972958 489843990 347571855 626594273 645556697 302458358 676999350 32163609 315219790 758344585 388104891 540344022 573465238 575626190 649934340 100203624 495658798 963429970 391457746 402748158 894589854 99203737 93563712 827297060 304428716 237836663 78614293 476972067 193908952 890783084 228357579 506359363 959697090 845749053 87381821 60940971 299879925 736971817 836830579 903843963 288261587 975763702 448081806 276673982 473305010 788109358 879730767 651321814 382752239 75004679 606077755 341098304 433741650 875032987 852310224 617779982 662551004 831891229 121892653 265436851 949707151 230992863 478081854 447464378 552688189 633739898 798686267 51421016 787735981 245071246 93585454 304652842 282072702 520725527 650485285 965265312 951451005 213540167 231680993 256947592 49194872 147060063 892050800 789260046 284749198 3810396 793497257 598050244 550512665 18262918 864917928 42139574 782433404 590573993 12184076 36670565 216949500 315963978 803396250 112031919 729808581 837116638 796189279 285974579 477550983 613497186 286367459 173074426 45670341 285638160 329819840 34785535 874251561 231387991 147915467 215320152 202284390 780375803 249557741 157674459 371420986 94921229 795257198 541000199 447744797 670669594 191662234 442456889 220012849 169221964 733015662 460876159 321244017 271149177 749329691 644917776 474918039 17671623 502389278 144639518 71181929 17642466 889930569 31768133 469199576 351365297 42957043 215722668 408096287 386157453 729156836 567597527 500549684 667192187 496271480 480801640 997317096 967472302 139272458 885155885 813757107 285043822 523542493 684917662 148755839 713577560 970877405 859456986 444791692 400493389 165237722 151887761 315471048 255792884 234021892 939440443 359197958 20869405 602364335 899296792 717371809 494384859 208720652 788908246 196865920 684164316 358204962 646358814 791773337 107658512 79610285 695855805 551460381 727395080 843792866 979618434 8733356 618380149 445349768 573065434 997830041 832537362 159072830 710306912 954536878 278667011 887456756 177835775 126719670 856211008 150809833 420032199 983986886 756686835 159286876 56395258 136110836 873380323 27968866 216670333 126698468 821644726 446695605 997366719 382146322 127856750 27872427 116051161 611014981 576938062 228870895 829936312 259007974 205542695 739227485 210564876 861199057 342974684 134631682 522196793 4679926 268415640 650736346 822760828 291403130 363802071 329646847 995533323 305043516 906198029 151707085 268087501 484600246 61019714 76566846 763722532 107484281 232602783 912824483 907039187 874271115 391438300 502276978 391693767 941558532 709012679 944646091 918420529 810400208 836090541 844691139 475489613 724924501 984375893 88133770 922671044 208399857 752017324 201379668 224056548 983499702 730033666 639646713 711398350 439483647 412779831 85508011 901838049 125874762 538231632 245707125 571076131 512985768 976548742 543863141 107824045 193055771 109463829 865273835 935720931 65803207 161512629 912977789 968009988 29783416 976908589 112802001 431265824 648060383 73889175 305481812 234713889 172034891 374951765 574535919 979767568 830399540 93783431 233517638 1839272 695972053 948933046 322527492 187151058 607061838 936092056 353451121 710468299 434394514 422323175 561387167 719176302 885854816 265325805 528423595 298959235 532957446 723286121 410460325 891904851 541384268 175071310 208017783 938632183 132770802 617732768 573618436 581413598 499919581 295733120 433760454 467345579 951180608 813553866 987390509 676301959 623894501 708095391 38264002 892221104 981925443 162068525 955412588 863611345 363446710 636510120 694671735 716242318 138220937 46879005 618398003 95332496 908427350 556000856 633975000 168895593 755798585 325135711 199674377 150255312 746441818 795174291 601049162 556396764 730047567 608794415 525998686 910860541 3514807 772968802 989943989 112824329 833929670 23310644 146657439 268772907 621464503 955714747 341469622 642021181 701714569 23866088 67796553 537563280 341733772 191127908 516927871 56787006 294092942 648781999 102593252 91056790 533697129 384753648 18599448 947125820 218094833 566806827 144977703 956674811 656660913 84983403 986833248 487114238 497482852 20968819 673070595 469728989 516783211 95498367 769728525 410789603 301954611 358488812 132067098 826846016 33309388 461918441 952810317 226659002 16292149 347484907 69875289 828164371 899835796 163105104 261327192 80796161 103259868 982541218 28245832 327902807 465198772 94953773 124145795 429227081 346510414 316685311 843860057 66605549 832339728 785805055 719932984 214641893 19598928 122170814 738892548 644530015 888880754 338114490 125489922 218624420 960184626 462015359 738683454 877140305 639957226 65822571 98143577 322298011 309798170 953630777 745570588 560189891 123272659 508305520 667383689 788367813 452118364 303998467 928056953 973103962 108631850 537473766 827070174 18268063 600874201 942748745 282569287 794093261 446196944 916029150 417907996 19981463 797486591 284077243 949799882 872838343 545311047 872672321 476126610 455871611 197415924 634857952 232157344 342761450 433247003 338844247 857159238 40198154 762138572 492065107 778128994 952718444 108961104 222373662 666083933 872907430 821163327 894694029 473271074 992785172 811597253 8628655 787653782 721817519 502589221 443399363 556633270 196890046 198271252 51278341 869317459 708166318 294031441 290130377 350644581 855400328 238929709 596325690 284087741 153405872 515273298 691753467 844269788 556072449 136105709 360687057 921091624 651164812 777672711 336479036 640468133 108344235 24357418 944746249 707805386 829524141 39232360 592445651 301884036 435291543 991194909 239922504 889582826 886298867 579166871 695932224 331902794 77229904 545035033 397293094 870747452 759498273 386841036 625108640 187561190 296261187 68417646 331494474 90695128 713809599 297963366 989520428 807030299 166132365 796863873 828224745 580055011 106520179 325378503 497778784 868919335 229604445 79905923 382912782 186040588 846681112 203680078 71861813 885810996 288309798 955180601 380908042 63404494 623032957 775557361 888470724 43195075 742450476 578741977 609241064 924589604 799928668 106706625 951242132 647112193 875040219 154556027 183695671 370329022 396757938 262200365 892665421 420860573 303359299 980461426 976315984 941550278 351814623 886518547 439126941 345735643 816343528 792479863 5248404 506985645 223374229 702436489 466119426 339636215 114651506 449365729 812339686 607034144 10320330 428025951 414311300 728779887 802015754 210252646 389106934 508391755 433441288 404364587 146570291 146692300 2123450 42434475 269485482 861336580 843086490 303677064 159038692 635179487 944304833 345708744 146232688 197240698 81960286 727450704 314271773 101816359 199689717 145418549 701567627 814932709 607793445 693214678 820378243 85081338 206861862 959993661 1593231 620141624 307927067 405485748 726862632 138816325 821048236 68087183 288287657 337544266 403832067 676422627 178923306 736638367 534663604 341029088 109036598 331302765 255337529 902930625 28436721 573573787 800704850 441482429 785457884 312617037 563887085 947707464 997814732 638713969 489841501 53526237 877920717 773363591 351138908 672489569 653156414 727542297 804749917 492617090 991729566 307443589 302673988 145868690 707100669 307598666 366323474 974587039 459893459 783576989 653664786 139915003 34277921 221287234 410911663 407048911 922787757 889845689 862064193 256503925 998200475 598683753 168325220 292957129 486068305 239428870 375716665 28714664 840855940 542049736 73651418 548009557 949114139 788776819 470392074 186760768 126823243 182488336 512657205 325890118 342869826 298974947 34173737 83938090 998156126 939187105 368906844 830243105 720738113 54813531 837218379 139453093 620441225 47363472 342351945 334661537 534282495 102509422 737299672 996414172 11016643 846672411 992932121 71787003 217229473 877952875 699427180 877363307 135070217 437409164 554680365 552653655 84530838 510090941 506602091 694001669 220837458 150944484 622234940 199293425 12159327 834968921 289514448 598046004 763991013 592391970 883715411 487732096 623043449 698525122 221802141 47897131 506129432 811905467 526604423 72838391 617080990 313428314 291570454 540409404 937939969 106632384 636718402 557349881 73895803 900888314 945306006 95844295 511139209 761236282 153687679 785794657 435754546 633681465 776689116 968465230 421089655 25326916 267520517 80053049 950554286 617835809 29020279 711122632 743271032 192436522 764269802 149695632 85399853 832293412 15823424 765711747 64564530 200160160 147692852 986638676 737783952 380088528 829239655 923813980 446237136 844827463 870439353 286980363 544063329 265627610 500143388 748624194 60067759 235725489 998394299 689247759 919117038 433613682 532407188 408321605 439320885 252372303 589207028 999076813 249038914 527749388 740406082 288471689 173988888 325336470 294892639 929454667 653637299 25916950 456117532 902208888 943909036 226098554 773148073 480694767 296232515 188834675 875680530 331329186 91188476 235702714 413063494 122659403 829316156 140935050 511289984 454525910 406957208 431263679 559037258 363511420 992316494 382681238 314933093 657338209 382016194 676220277 756262444 176589937 361326435 60221577 590668842 397341308 764092963 460036289 410836681 620659395 821668098 97704553 919738451 243946091 290851829 434244730 666737032 126165613 125282182 2162006 33027733 985019528 291528449 924989841 528798850 900111449 89951238 727558686 495299202 128859027 362017653 80667588 672999932 80685380 209937245 830134208 913439684 690246486 799725758 353266051 151752841 216426984 959461895 228525266 671904592 750556349 355333979 156180776 367392722 796295474 895658057 365501933 308269544 209569581 655076047 848735086 683725272 617734096 285358795 863794575 140177578 353070728 133967705 172910248 375360889 527056976 292204883 736565637 594808834 370675161 393807467 805773270 859415086 670756829 709916302 607713157 591511702 763227176 74059788 665130062 538952126 194641270 637585588 934983147 916241442 312473996 475089410 848794263 578120025 783222708 916638691 70242365 998254016 185010966 101112118 418942246 376935247 766934902 859342920 280737728 547708179 467045652 414854248 327639147 901888558 108747687 317740824 194008765 271670298 48370294 485373940 497662135 113393862 56836574 593244286 898339829 981620316 875193479 852977823 211300076 624544034 217743523 853861557 266725083 633970657 600801271 340230044 985539001 306794601 841259857 465865495 154546810 2670775 323987286 512356886 903313144 718805330 180753231 97131775 375886111 924621719 834113139 175197732 977746298 666207153 586589580 228556678 464703641 369169932 772433605 755523842 713135687 623262558 974396758 158293691 486564989 986669458 793643299 157882489 846052877 348992841 257718035 431809953 878539929 618737478 528307020 689291959 457170897 871152405 206984569 521498142 559241326 221395312 403994423 398585468 523872950 111845105 683959702 347283403 190025938 227947251 868744528 54534827 38118827 27149192 511730922 310285456 107497800 50796187 635797867 415497799 679508994 578755462 275906462 451130372 783537921 762741130 473680845 172454129 719097479 76043200 628841698 624880374 593267907 662989160 610639077 586249283 876819904 10666509 463396168 811781409 570950394 236846129 402134155 181406820 798725030 354902863 371081003 226997371 619082070 829623718 764748294 604337049 795566344 293678881 781562906 699699238 300337699 409022125 705056676 282760228 191793925 907901889 927813480 252678026 33467820 137456245 677310701 259333934 54187051 522409809 516268970 513975315 525670553 828068859 222558871 799795234 773206906 877743709 849915003 303540229 309273965 338813240 275366065 357017376 887891854 714367771 176161958 646304577 232414704 288649467 615270237 568426124 643002243 335016028 95994635 837604031 785671475 597198816 180688714 7520832 110865429 990464111 744874120 548757339 759514130 562643749 74913244 661672719 62200470 589763957 352535983 529150133 510199980 917622015 539185463 787485707 743521738 524310534 200014338 772072256 16191997 794910491 977927072 703168140 12823402 716973252 285246038 843293899 320799256 391603564 886832720 170890049 408424900 251364602 409839289 67117085 429535681 368504197 108829028 122714 764389894 834493755 378600714 784969285 502194258 498507687 78364153 694259956 155703604 361076157 473675366 229368629 680312735 25844905 633751105 470559686 656514250 141201748 586564703 728250298 359449426 618910494 450098915 640792463 648352481 742687089 205751135 560979280 469629330 354960758 688056960 450773284 516043093 713654368 56901430 652795200 419262582 819759346 829719477 882932848 883306347 509584082 370245122 449334255 863562986 720633322 925707169 621795318 731885795 752038360 678798756 132417827 282154332 480542036 570935374 264081282 694552688 151539918 662234062 946170728 434296105 913601558 63355855 511596672 745115877 733296706 97968882 456532163 85200003 277001571 588039491 813042164 699532061 581127629 860926401 231871189 71837465 727404213 448386963 367249211 568127812 42139804 192661094 717854191 753978894 84117453 323756630 688693446 545310247 976143580 99114410 810453245 77560018 300482048 121868909 835146299 751253951 447589937 679339930 143026818 358242095 119724732 87347215 552774230 214041911 548473250 881192091 301899981 752397378 964227928 752954642 133135227 2546301 576159671 351337207 483847747 935121038 581394814 785106688 506771280 356836683 117565719 727836759 766891734 384044643 61252726 237139794 912438494 446888948 698625034 73829057 954494836 294284602 560874794 91933417 266381976 385549447 717052031 324461557 138236038 922794885 202789514 119009013 760829600 496083668 716523737 179954163 301273371 63037245 643002482 742062415 587891420 139886653 669831067 216334573 651030032 982904581 503851229 870380345 276074848 412631342 663940663 931245045 921105475 709929334 187872238 317259133 31990634 217544115 268815539 341982459 663175321 804534559 26055865 661724266 151993329 954132349 870822831 651680237 67802453 781867785 543338187 558288297 341317441 644448436 149122983 960089247 581994248 350702355 126369265 62205108 715850823 413465402 331188417 588126814 183901714 563977156 962584114 832853013 767217236 16004782 682796255 134797507 955307486 487746034 945508805 78726890 320927716 627316025 444672358 337611387 342787078 613152902 738351438 887892379 677524230 389464208 575080924 297523191 605407440 554837650 770284064 768913673 420948518 300129785 757294694 283303011 60934079 737928792 596218973 788242075 337756927 288729789 431281892 120908875 908213575 199302014 927060580 655714888 194057404 192684800 456292281 371386228 400490406 858955757 722975439 247581815 834184691 100401605 295595623 450362837 502231691 550362417 672819468 28043004 815808247 975982910 275754047 476235540 562251894 839111236 535673361 190612460 407647376 827067068 238323599 97164484 443627961 969531437 523586311 135307077 32030300 508278736 220541347 373082749 879220904 718297245 230486288 810755546 480344441 400127215 841053316 141340666 836737361 386615372 424809684 785502448 377500695 257123562 147610650 832027532 923284799 332162093 687740024 690992611 425305766 568383052 367015473 691742104 419885846 916486860 170414462 227403756 67788132 589675825 753460246 233973172 372864938 584728678 939163508 49111375 77159495 896660177 274945789 277173773 886283073 69274337 565169346 156356909 690552222 758369324 679221524 223189814 761864889 687612108 782834258 429300605 62658978 95953072 6087303 23903392 697946274 308246999 427887689 508359797 465798469 677393763 73182654 252676523 400972218 139644818 31660722 31377103 995960792 930851080 791179255 236567141 560580242 669041362 278269826 140111272 380273954 572074161 366662496 299057394 232902877 359355788 394773531 787799974 507676945 814043813 85214418 230834771 247694488 796071654 803882643 955251691 104501958 257966111 44754090 488695610 234616718 455229718 935689470 804703366 290121059 455230583 545305860 98207436 56063684 572668308 404376070 745238409 719214859 886650319 660164586 363914453 416682089 894984511 264692341 996776914 144228817 967957947 485107720 242075182 361007040 906772880 721194267 802489450 396617532 168895664 505071473 32989038 186296442 541873800 404517970 879177803 890724995 983662168 89331438 630811259 354119482 992233906 892940157 999709432 138636659 672291227 987358451 324804015 101660888 261154459 114792006 833675021 291341292 141501398 610103015 294816568 436828676 964993289 326740306 372600595 366620453 904745352 808028163 660639595 13645269 136916287 904821545 702449936 605297206 723243191 706814012 626054330 699552172 919720634 616104034 385525752 739764763 81231386 353734428 852531387 284446914 676156726 324644461 777405208 77698252 476302899 704117545 187678758 422886182 397527058 232985086 45985605 728047587 189732454 572509087 172316236 76404473 384550726 6430565 815247167 360850625 28686882 810149593 466844561 668533388 381034971 90105987 358319835 801062111 654287410 814563058 704192164 738549712 181450020 109446112 58551118 153278996 333209254 517453343 14471630 303776400 762565543 697758025 259524431 583592646 815358385 633363208 185942262 783088649 371024400 702687607 120494147 96108241 383858912 256318636 588224429 467631931 363055391 538755692 469800457 678633158 558225491 203958324 358261333 217486876 800762976 732871745 639035459 216875654 170610725 242759744 811771112 664377666 86574608 761554436 514984361 547605039 134741123 244750725 476774931 707245222 935843034 960106486 977333503 594117580 798468973 914418048 936377503 845860725 168839553 626813069 152899430 635338329 924847824 68551324 84248194 202226996 920315373 321933610 219283578 260225335 595003447 956973863 745976961 485278379 264129669 224861580 214568577 835736300 514715256 115428735 85628658 785970170 796788148 645894115 434692136 350708532 142332388 296539571 259789814 468170790 144576809 540702692 839486854 944742522 151318880 769259639 122041050 121418906 220122509 449479510 66027789 791584339 946473212 579251764 116503507 820879205 266444600 879495918 132970160 355117170 933547051 175129236 122513258 324013868 288533876 243181104 431913773 258622665 483290873 51798139 171213914 784853191 632997137 741424753 926249668 127710355 66438005 779252991 35664128 51473181 432820537 846086448 430062061 308026297 163044727 132868420 142346838 106639321 785212923 216745767 773893800 66464062 71360308 703576648 203539586 969587361 589699460 606484181 573163065 853813220 450416592 414885518 588242378 529156185 246680778 199199052 654958886 880969798 30169469 152859059 606217860 919073397 378612638 333395612 288361541 946316189 733667076 47752424 756055966 250770858 177051702 146889527 820767033 195738979 128397723 143076675 275460196 920239829 188411297 264070228 677674705 308204370 582849430 313907731 267720470 476978021 288796747 19527143 375039274 128306463 464265808 507429125 192627891 362439252 652139951 94576938 294540406 869911078 792625036 871684378 916751839 734939994 914842836 150324776 230530961 877154029 255359608 961925620 695047036 408099412 695039275 268173100 811081057 140619571 120287202 962500895 310650008 271679010 539883965 61198946 900876761 948507209 793316248 41731852 13541538 533890920 831526676 440671013 389963756 96289518 981022517 631112762 922125231 580823737 294093784 753510331 380163295 208006678 917001120 9554626 505002748 922206111 471405058 770755114 765222962 663728415 502690915 503486895 800687155 391929217 344598023 797606418 282423611 699784979 186099916 244029499 732981932 89172638 115478129 745612321 988317237 640674517 498505647 895768276 624009632 567364733 671037941 465794931 173845669 797526856 60503557 932738858 390543936 709741746 888219763 41897105 309719308 837766228 794456742 130237099 629406601 874706004 583146351 164351452 571433705 241652052 704969671 879653360 307161807 9264748 309958994 743167971 341627190 122084769 794664422 488040524 136751124 537296202 924425858 820309327 63374554 426202316 495303281 759548863 209358811 613442340 475692128 32772305 708976581 134144994 989190802 477800872 720271220 929297113 628914784 938998579 400223702 947350573 592258344 67493839 583216082 2072712 377104857 220201309 415993407 256469262 761994685 317970125 134482389 169350247 924238099 76382659 792555649 195081756 343914593 115396064 854209092 266988406 336937957 854700674 56126695 734480546 507698384 557801595 338788002 225997336 824596354 893929573 69052867 356280766 392516718 802677483 153208763 463450439 207788260 359511969 907288177 524447899 345281884 175458775 224371519 117848128 281381729 380971978 937562248 213708113 570917828 394562712 47803791 497597934 834559793 517924044 138826357 618413028 223139672 411367449 239095634 202377619 717922876 716629672 478207610 738442321 736176740 389474954 361509788 641959375 21834996 596355631 733088460 930916005 434781464 547264652 365975645 844881333 863974794 357089827 487888719 758735437 270590868 876687969 941986826 693027265 455794632 904336786 798264985 155749005 575009570 906501737 476679109 599454415 84703306 114897806 157242227 329024122 579048815 131019373 545721817 625408157 948602780 467356787 727405447 827918428 133632380 508755217 500008513 275598683 696236783 775732557 978473355 712113231 832301412 704041939 762674380 95650150 789213734 618715133 931079177 132315241 853766565 477996205 895250169 341926951 825404913 688706564 930151277 130765362 36006701 304488277 267490419 634587603 712187914 654759762 695970528 574767179 247207381 741114024 838104313 307364612 527115632 812203325 329060633 678011668 969939983 372138012 269967344 197235874 769067129 864239973 623397121 752781708 838254344 15431586 227474251 145192862 358046060 500718872 563235454 392402813 958062157 644367344 11691920 609262450 975582275 103490590 988399334 344485104 168738801 558317045 873534890 573615485 571974132 940970673 751753419 810514673 845788482 370179200 945726306 571000025 293162850 881832984 892128971 750957885 335284931 964811435 219656943 246934205 196593958 645974831 881600556 993815548 726971280 439315706 736161273 639815584 511839328 69607106 9457006 552830785 651183532 984155882 136497506 488197231 914565569 47120233 144551847 830968823 269471050 113971208 427964348 680613308 366078965 98171875 795640074 937014442 292710179 167008662 722851788 375538501 594425520 906694684 9384397 22822215 656642012 181517149 164371294 490500621 88677190 215252556 315527484 348227509 593434942 575424197 607242828 593183242 230174436 518572096 875683741 388006336 837073428 37377297 876646447 122018538 877658854 797123542 368219767 209637558 296828335 719823216 492252348 3907756 235588243 923355266 340637466 954934603 659730262 912167931 938587249 783041946 881072253 361459791 880758466 429369914 244354006 545293188 844702135 285955644 416476287 590005793 116378394 885515988 162456008 771410307 590438500 192568240 967105584 251284972 456948784 237713265 345300072 325023602 577196847 538691303 918191593 439631625 247727194 49105453 328142346 975436791 422760652 9504493 327267360 492866284 565211015 331061201 437493419 790399608 208963738 592051773 772678128 665669582 728616015 91460980 482981215 10680376 999480788 36073589 366580206 23648731 407930127 110127255 1238172 524486302 887244823 880604601 139295688 997130004 47483901 936540705 279471909 282564063 377310656 929744534 657750830 635761642 761813387 978862259 24324466 647025561 852765303 124919173 393796917 709813782 541988988 508645081 107661683 304201196 172669201 40513842 930298036 677111064 977505478 577290323 845738861 553041792 826819819 822055703 211917798 367512460 73165883 769250054 998746994 616854320 648571471 972374493 473678794 708963703 743596462 977184181 992687052 644101702 897274980 242339832 624987485 223820442 562339905 326243974 974612419 640620903 967607243 713628751 557403961 983577474 642559339 708282106 546235400 829776824 325951871 773898522 989261743 449679754 879752773 616705982 560392299 736049298 742161177 606165124 538163274 475554692 537924603 133713453 474463341 703784074 513388749 728524724 100661505 589551950 383083003 586191343 777424906 659349352 945655887 65357456 619452817 326162857 62725331 206573579 241489030 923930334 456662745 696371188 566293363 306903458 874234777 148724960 715381012 911792583 519146590 785718130 442433018 795309521 626674041 335400142 705776827 958899568 465026769 642552818 282645974 83728802 886072645 973829833 755544408 881636435 718850237 951362839 103390611 424058767 711489794 258131061 327636815 546026459 477332833 998777581 254151269 578402095 690048543 461082250 796815622 246099998 759843956 416638850 883264531 512566590 186513003 663435285 954061380 941285202 898207247 501522863 968231749 307134004 229437783 739856078 177981470 515518348 827749979 903352524 1684828 392234854 385769616 96579665 509981387 628797863 451926541 353225277 422579740 898949988 801899495 725002815 139035224 854121801 37962924 905630610 306632727 941786274 480368303 562703261 807660701 311208619 849612532 63478685 321376263 718444895 858363045 222380716 132127486 680109856 903603784 729667299 702216113 978048116 263572821 66772925 61729729 148052346 816859989 3455828 283573364 358773819 163269091 697011946 799148472 299477533 403473738 363800508 854642554 468991039 709868020 764006845 115743444 88556994 149263024 853822649 745944325 817990474 504330226 345024262 659762579 720195753 708833050 638148762 870205572 206624164 146041643 703417454 443997327 331598708 257860170 736691874 60864336 133685052 936081365 602252337 556077136 459914206 870938164 42063037 289640260 62768800 462015305 62493474 790051440 375287089 256729371 719763069 666263939 810531102 373574307 955906895 468387080 956853488 6014636 911342235 23509592 877975035 317325158 712836492 172277885 286561223 649426888 558666582 105108035 368931486 649885654 710274905 560506331 376711708 884309861 477876706 507062351 794998987 541684108 672427707 206979983 282224863 46781145 811894247 744461593 83049685 315107731 79876026 641492330 172373106 301332783 34058020 709068857 190621950 365072857 536487977 331661198 802101861 289232033 579311464 645594528 150860910 663030255 584029280 875926925 829967744 595591182 732590386 267573733 659192228 817850869 882152872 988990820 997176150 687566980 42350512 864250338 989866084 28746609 317251690 497706860 157316308 949855342 401429663 775745697 369117697 638773443 227477193 682020178 400475548 142422460 712557583 623332774 316483932 521011335 263164049 257948987 240758067 850219114 105351793 978266652 241242672 995970552 687648584 108008469 252805107 544976905 370929342 798098086 48441068 213877157 345357291 274760405 421834142 476714282 378706603 961904017 623445365 367057539 668654567 887564217 230754698 260352841 228580671 788097276 270116072 48473689 841727523 447237012 911085658 116096688 703716531 917376575 794061111 26436542 207862259 642321652 338730249 103974372 233835714 312985380 225003976 798908196 913767468 521001561 591455728 574606310 93569271 715091294 255633924 902421788 859251975 895847617 919752735 442951401 600149995 436197191 123472399 192641522 234471549 631510258 734791089 279208870 222897066 74404786 682113196 242848323 234861248 503165541 175451407 865305391 362903740 310462998 473640108 890898161 179293357 734210295 798548018 849331838 68686293 141418734 882462164 764136012 319684879 700143041 579831395 856302995 585460902 45554247 462679284 879793145 356702284 109203131 53638537 293461381 257114453 497947186 740324470 140637201 552537309 835291001 553382457 635041925 88599869 448803746 420690324 421816893 475019825 870383133 679771134 219115298 557076329 442864850 938129267 971068043 745352549 261779022 160249481 48814131 974011571 249775878 542105635 17878449 132599132 743343676 81295250 95751063 6304725 241192895 744734528 598034125 792774770 683798197 484137518 377722947 139094811 495107739 418134963 664831518 568857715 715180686 338136771 531757502 716586406 162596511 944912278 571953190 11597815 663117470 96160958 796196238 16745096 706902050 920088852 638963685 474879905 628600535 919396502 248414281 39611534 189898645 595684452 314839934 168189706 983428456 441560573 232636086 635253735 249686616 145380237 913585135 814569263 182021649 119046439 348826274 454209144 518204672 845974628 339449725 878692568 502407199 290079976 589462529 401044344 866640131 176716426 574664127 962722303 477116171 16348539 224880510 805805203 568955338 23595031 916653905 891734207 554820356 942643810 679482119 480151254 603444617 963055928 388066494 590536684 358787078 613719947 29673036 303436471 59476035 789010329 860574588 513173030 824920352 768970802 918040386 251621986 320075201 391036415 831956445 58370953 724078840 812589961 391970611 917324523 104558119 448144121 818354492 582493412 621387594 478503467 826595841 318435745 630413804 78948043 390395174 870719987 108452165 381223689 987052368 626432620 47770610 602245738 395472129 780384371 818551853 384541836 416071883 851171463 408805158 981428100 973008634 570792806 446349424 827927925 473521680 642026239 91048038 845649817 69669126 933464768 179831917 7005394 388422759 316547750 196852503 267472190 690918979 688833998 266241074 991205141 185407159 70705520 20690292 208800332 16799421 114453299 975279289 703938992 142392878 737619999 185462440 488100397 304367252 21374699 286897395 427624501 520579294 432072706 108129920 134561966 86807855 585847311 805072812 975795482 513790961 684393337 280437157 67481032 42148549 121968996 26084376 759861528 191447872 178386062 806442722 917669946 209636544 761420741 763067547 228938966 972983971 886987979 901887389 638329397 501762469 971311370 252411281 853108365 809018219 701517959 302558142 419185184 413132385 757916733 888228301 79131458 368771617 810274598 234066213 106082297 2454271 387456888 882916995 127357249 30045946 578044420 930010922 583187091 609546201 114422335 110324065 230047119 976555549 403597033 984414322 432016400 60229331 80700576 505527314 488360841 155261628 330363115 173302337 739000950 533047142 826684809 891892523 348006246 467572794 33683360 623175049 481294729 414591732 378863384 470943196 885147022 847607665 787795201 8021107 198085769 346844897 162318951 625647061 782693947 835227744 131390678 671588545 686925733 615946310 251481142 415992406 345839485 96984380 750766205 521380249 684193139 820278566 670123496 580672768 518086869 353493779 431938280 605905429 816891779 305616016 595444137 434970996 441028614 526413764 592717679 485104201 834823406 372021051 167107559 162899756 120538649 950574468 218862426 838785539 135036796 29834333 804119594 893492001 943361004 848666466 785804080 97870955 678052105 545847119 500236068 109892441 868299973 62886603 290897495 978219210 571142456 151654004 521515298 591289173 579878282 353001226 192216029 728545063 851725208 536880060 545358795 214966628 863137592 598969875 92713663 456455449 372663992 471010380 912316123 195118395 398430650 180357305 101911207 793754527 729418005 780031583 556714274 72733263 437617461 972994918 951786339 549656865 54422606 975023319 486750154 589239302 190827149 350301819 172090777 442717874 769042888 302942258 573435781 78601313 107814041 150864495 417455323 991705962 135935824 882567601 787456361 650849724 71616550 871845431 649466571 872077404 834234784 142459892 109843824 875865883 993835884 277723310 665896561 844789657 691140234 421852722 712475041 646779866 822242898 270176240 866962760 156816268 186876797 265357564 817366645 274901539 648746410 950574209 154233272 733527942 332478358 925470371 755967882 777514184 772798604 841729270 990927043 420407753 207283270 254846184 864439372 684471920 369810993 117085971 601863564 682085157 122660918 990803658 565804162 605648354 563660645 498562324 277251034 278674893 452372609 572878823 729184902 368881435 99413015 62979771 598547803 807201458 715475540 562653440 382732865 262689618 632053849 395817739 81107288 717789284 190365135 385736478 450158013 904616250 394492831 129690315 269197368 669967468 978339387 291600796 783669740 755439122 516094175 526755397 441905922 126199234 887308122 12805494 454732639 992797144 578772208 590319903 137649433 819510302 487551901 852732343 720546983 57122863 160037737 303066673 577360621 278230342 819779542 768860265 58248195 839428383 298045480 985484222 426504399 163390523 713309143 818895888 38853461 29858735 702491182 692721520 418153331 286152427 762976826 928577194 940479817 486145794 898173760 270391418 11691358 803872371 610261102 638558306 597944929 510481784 993018067 420784615 513701801 625075624 406589981 570022432 774556845 712386354 813119989 150506503 289520960 781914111 476976149 966691376 444007176 811743771 218697025 525644403 691870941 620120215 828097223 435353224 646521604 906062523 915561750 109299682 985065430 681100264 826926061 679972371 548424588 635614977 237945387 227596052 401576527 971057707 357609693 74006727 556739741 462310819 853179846 215424193 103214951 949872723 486923185 683262282 519729637 106382258 880533977 116116291 740129711 580732635 793306384 361042434 511651663 165384370 354794741 598371104 607044933 574255420 695368252 26254268 346170010 805733732 735972072 489007018 716163275 383320618 742411045 583470584 521028199 868232228 360609989 895944840 419071697 220082254 920048080 133795701 918166855 708027364 291641963 733908121 910983966 793152459 764392996 512070350 659474903 978355408 612977202 686363835 250336647 434519828 474923076 599543225 981840859 353240031 18625003 309433047 280246793 29162810 334771721 456433879 50958159 391294096 632796841 800864503 41389033 371895983 222221328 460266192 511008535 632419119 390250947 464403119 527662766 764623327 287866449 407152343 961260385 286252095 996796045 327206568 777981687 91632008 150461918 464347684 626850065 241699375 724157481 503836353 987324575 584089349 301020646 748233842 416175504 673136759 918424943 691293615 281368742 895419968 652951059 617869411 611941353 454338646 803272144 646017411 928473187 163300877 158966881 47333679 249938255 327041926 666756966 296330401 650737216 481711596 741333082 791947055 262549375 336551931 998051501 537303741 893303337 954268129 881722830 459992314 431160599 357370231 38258357 392662723 58875291 453040833 170797046 68866258 887284362 748930839 835433940 918168098 498445377 680268803 216634942 249285731 785444566 962630300 25444233 253906106 594301089 568031785 637800109 287109675 488151016 994228900 334618419 678271551 930601446 504157485 133985088 771283425 138764036 535121146 103945787 68693340 821284805 922574150 82548873 140891130 52724881 824764014 48474916 451489259 640863862 44100335 889252512 221811354 383321104 805682302 735319205 415415085 972162175 849211749 723342755 543084970 268920465 900408407 941688392 45031025 869837145 634276387 47314623 791768452 137572180 974549114 277723881 814034986 989456873 326271991 668357633 212017920 909614010 156886576 718304183 76051860 926002645 41479777 967962347 808556143 687904118 616719930 390005349 73462240 131954209 83203338 969196829 165101622 483992760 305030027 990820098 53572513 554338139 871175139 777227298 330127469 193087545 661216532 515987031 454738666 572307535 771039364 556345390 326368043 757708311 863293313 723640193 845462871 283815046 630028393 653601374 128276121 59264289 794199741 481195501 706139053 458221434 370301511 741015179 383393603 532441732 515012416 65322582 933273777 12824107 690092526 119295297 893097981 77531899 206581758 143660763 919756799 181786374 145583172 652267283 267301412 715946015 396308751 714050847 382478971 94345745 211411090 17801679 968700271 948045061 675263778 732415379 213879147 418878613 321100256 441284846 352160069 612698078 286522588 440875905 862250005 356502018 499993836 245753068 455984696 117178831 622976716 829197876 737187577 295254290 445787626 24567724 519002804 812748098 382423453 144761617 42344692 714338164 902760834 225890504 230159392 932648600 869451825 81268027 742155805 375693854 681421935 486434113 756372749 38788724 665355219 633343593 137913263 741527699 458154231 851233900 895881682 373999848 987722418 777482309 317013567 958056025 183837760 388590721 584275734 375612046 827077962 251923688 796153124 721540926 408535283 59568016 625485488 217321885 579861094 375831591 719152244 242378201 468594170 998223080 675854477 265931975 165949489 452322953 17013456 465117264 812375847 321785560 708073932 196082198 739909475 268464963 856256665 3833450 518713966 796532534 591791636 821965873 179493171 592931833 392026311 140676183 878678755 830929904 845725988 850023218 109165114 506726291 460513735 98453724 473981773 248210832 823953805 71240076 919518146 782465420 494716966 197295773 912022515 893717448 53351866 250742304 414148479 957338509 322727645 928319444 606894940 974510686 86436071 871410338 522057980 770637116 680960326 64050638 476147116 689515126 632372607 152146215 982668693 613644664 325017092 652792389 500307931 689708848 497941091 496288916 202050350 287946155 677660469 973608589 694035726 425472222 794600118 963179319 144511100 693077891 54901647 69917461 564299067 252233897 149490522 582697812 991583799 405701665 593243009 652744937 816591633 14837342 689359673 661015676 417393463 492359127 588034367 344076718 167923714 255785518 530907865 785246437 754448843 278518962 983220659 891679116 318727479 54228480 244829402 596798901 207794028 962537105 314960440 637279045 190814550 403830294 415898793 610723128 933132325 261452072 731487387 581566888 787284406 853955135 107260788 707893937 642785444 682421296 429657744 152446345 849078383 945863410 637705827 785103936 806598995 372606793 410029949 123251806 86456058 270228918 870312489 350732891 570552308 822226139 131279879 873052445 162118198 877559436 473004943 63283495 653415233 462602991 906651156 919338729 758638859 383950024 349358071 801758641 132810068 275183141 782740904 531392757 729404811 395113041 165418783 458711178 324307451 955532489 307592200 413934768 77414575 241000155 105137984 508240292 322880998 5500963 702148484 704041494 822537578 462513231 962787213 694506775 68688420 84253165 491953134 874296222 689894523 103882931 927794206 774590877 292502217 444110384 688374226 649946519 104699504 569982433 977690478 578309248 947244849 911848046 74494205 435339441 31777957 945845926 323249031 825680325 585933812 13158819 524310611 51426694 811538311 430351542 910214092 450939061 906082515 431302362 449850377 646285848 786231495 489319922 104800222 430243847 268223878 849556320 233272368 249725316 912703528 496346602 587959517 432557541 544315583 506029875 248399552 146626753 336925947 381099744 632767598 362251858 469510103 38549488 801568050 851523367 343469641 399171483 956498887 347071914 749634497 532716647 153189040 229339942 55207276 215104717 574674264 760430175 966311073 972884413 872291253 535867225 937483362 166014503 26926863 449974417 830934874 930680772 326122973 132297237 921815381 73200525 61151980 142302443 157362765 775968960 811125703 336574310 947875886 372361227 658623022 603028957 838617977 477901128 4489703 625229758 978268856 979147522 913772546 92353801 612426441 761191227 438927579 245867415 209726307 368419948 303078282 720841197 541957779 310600579 366181573 591682901 401333106 506576737 720851205 990352030 923493214 538529311 830964828 727600275 658032349 195062067 98071202 976198785 102016197 719322628 292977979 673190466 237362520 495081911 277545182 993883858 285964452 21288384 201088525 732716104 364007053 716997873 580740151 158664678 549167984 619699241 676741725 717204806 81731659 709624982 392711191 647185848 643122573 586907504 762492512 919851019 348710662 281049742 780356760 34850213 387834580 320491814 964322774 834094173 579203111 356974070 478852731 738395968 332170370 668172259 414957492 675250924 139711793 501254393 634507853 583787772 595620597 323306616 117161506 728093713 489783189 217284632 55375116 595371311 144137917 977379811 762544246 502517803 527306958 543352227 263806167 635194600 998238918 334841552 696150575 312416376 973794703 707290076 862928940 758281987 91323065 582745596 509371667 9284288 593186856 373480487 842207598 269601026 380581801 117456437 875701247 140353092 928321108 520238716 517963355 505455349 525775860 249951709 748538268 936484391 950199959 315500079 354241638 176687824 104285921 599162583 468399137 889577283 81849308 801927005 653597321 145581795 755959644 165694834 809549374 645858068 291906632 980453186 674852036 120281587 404709984 416008296 112347678 537688050 897193140 230297363 287317832 796136345 678393552 294644040 880671767 805009409 476360831 541754324 249251909 728282918 513677025 848696092 799366121 349202281 308173516 395757858 68636916 985425861 938525909 607914930 25582111 694208670 670014209 199517143 804596603 596269138 135137428 522355236 61752614 828968423 799764679 872064082 300168283 841247794 670886127 284949001 148658453 484450294 756219342 103529595 991381137 619160160 200202843 31172188 964589505 980170275 556233441 990662129 410110212 513244147 231210719 11463679 277221601 61017948 82909758 508415516 570149248 207924373 43028994 475318775 335133381 727011335 984677246 968935984 182277425 164529430 534387535 616639665 688356631 276489106 298180336 575567509 594858574 930610764 504568156 313492118 738263998 561995758 383084052 483666031 266117956 559122107 145456732 583216423 427601628 881816813 777613563 968028623 232054167 347128364 56021616 712525393 672085145 983942700 465949244 429469425 302189431 615213656 531266182 960165390 857076974 319193099 195911604 860754563 608585964 430177656 981861329 467372274 52840949 14309935 592495672 401956612 48948893 694963663 438626025 952373361 234967871 810228348 230493490 744579100 568026049 226326834 683090450 527687105 727518338 932955431 149027600 708915080 282595245 299865579 546287486 616417044 596771615 636498713 386004869 3715166 946649408 464926334 913107354 461729960 712365862 619145396 418493410 721595939 427840479 765526447 844564344 495194312 699779267 653110112 541445964 8961194 580140248 661921791 374926941 603216283 727397807 277280014 959894220 53651396 280049345 316730578 690600031 521306424 426846827 715336830 262136294 451705644 777284278 577376582 644893409 600325280 339906666 291365055 817931680 766572092 481797758 826104500 697696511 216121626 397597438 636014025 933635498 81818625 768473354 484682099 657157326 607565465 714137956 409713253 155374268 204202754 607473766 88253832 419112264 78676358 636052624 541215589 801552884 286043775 167559559 617787263 280842094 27135154 178875980 824605388 941380071 126421726 127179387 906944579 883339793 795964473 416295935 96391216 518997565 818432136 533123983 18322154 878890728 973948046 330944339 599167994 717057518 934262281 760667513 262064403 134044301 302411953 811554548 695550063 464916768 816250024 257941599 598451396 409669800 442653796 821289538 396918093 215633868 769751785 309514799 71280920 179276704 68073856 762478531 707185741 260351961 98285832 556195193 141371816 76746113 145308121 68212412 208319217 820010946 7829384 345990391 49616654 528387714 936987358 956432633 817946499 220089688 681140085 351932302 535482810 500981794 430176192 533847667 80522625 395371693 456624893 548707210 600802634 151694479 512410 601989069 106113064 922291114 567717486 954954169 309499778 327819116 82482389 890262226 682629553 758484810 295908066 594444928 934893160 572778872 948883471 538337844 915066025 709083755 591661591 102103420 940276305 469318745 549421097 265994154 97109460 590338748 886633395 539507276 865095718 889946450 782951683 240084200 768108636 672357549 788435362 501701234 396755340 326558509 459949224 517848426 601411988 869383252 145824770 319658975 290920622 640702433 605928069 582855163 338681581 480906429 215849556 356418480 864515443 982945857 178912103 485521914 862968270 93504302 699647113 408973953 150077792 74350573 556808957 332138721 679497425 4764923 897925342 41468943 317245092 863458166 210924548 185908043 902233974 528870071 784651145 27710151 95323087 198396174 896947704 801009217 397120350 423556406 720146385 305498851 495319259 97472506 820392578 467578956 74411275 264848177 762260315 614072397 7863854 521852071 342499985 790009479 589100287 768663816 218441554 124488442 491030972 581307870 624782319 325941572 11778226 539130448 718271760 498069915 565751247 701495816 385630584 157070163 998914209 513037652 782732324 466407060 822912865 690746820 991263642 814119832 569787347 306591176 256452670 592398853 269464697 882812274 779141362 477690047 401558231 587690150 549579195 94568014 763130475 37974168 130371264 934696874 308470293 856020602 45682268 307479253 710654946 290565486 197134071 713925716 504754726 66255419 436510157 106185274 646247634 78331206 180238148 654367171 698260086 221595925 468771215 343199539 592980354 733226276 79845264 622306842 343931635 292789117 393199515 595675253 991208449 22384381 36856777 507605980 852777752 69295438 568194097 942067814 174789279 461669536 288121939 483218747 284200061 98123665 611669012 424332073 733201719 723309334 981683112 710974205 433904286 110323943 893313009 246781160 37091861 94390066 651027039 974008758 107100246 249317920 41672450 332481169 507933040 405574259 654435303 185843263 801334324 288528035 481990315 320488527 815908584 233261775 916641438 316859987 22782973 585864399 223745728 467340978 769301226 923640062 212084366 888167894 78399249 517393227 884126803 998123077 441724660 204601400 18544538 922375937 864776347 305562006 866162718 273060600 998674109 612177484 406483861 172677246 874660280 317767502 621150615 42067924 845935003 988324104 231942192 228159111 42771034 839933287 566399047 30939589 303686614 108303108 446585676 929042577 370659844 607043245 76051722 589193151 675260659 160180314 766252651 902066927 322192997 363642290 111582176 25719979 792908654 581252464 921900125 389985810 617829122 249481292 897617010 60201559 393902328 263530158 829561723 518095222 916520312 686148997 98537748 903969221 525721825 468308215 517427985 691447867 917267556 706264517 741137942 731784293 615880706 324612671 424741846 610664608 676867891 883038265 104508284 829420 559736548 713358627 483340809 757100949 552995230 896956381 767974743 348870500 353513416 890102970 700313897 467559162 884019221 295377108 432238285 235895314 691171501 59970629 442946918 833141757 142698959 714337141 806384565 35794222 165975017 346362742 244591280 484625957 64215527 50790920 483962533 188051876 681601708 344520408 128921077 52836079 399787472 858097590 250837708 148670729 156907968 264987722 191200520 654300036 689879925 174317592 707198336 770780386 913260015 857691509 995820724 845637688 346892084 900545060 612709653 384291398 314368726 70037156 59500618 938133422 264701980 577277407 450800280 779427593 350644468 60156604 735270912 364757847 392679234 342257905 422919990 45317511 208955493 19866070 671019038 250877018 84149519 53532042 527640346 529085682 750697074 905398578 407532653 225520265 860874244 372922338 886825632 234204076 604892908 214991423 203255713 718566145 991624932 360151846 41608646 213268128 301592055 981314042 819150668 847655075 71530470 267580260 461969830 223909115 857391642 564827412 274050829 837851619 795705166 294686340 933029511 245855267 694039998 696270983 212178311 131966747 360132996 297295551 570148897 92580700 100423032 233196115 376962534 978622495 541182704 970225294 260483524 906352686 24247854 64411752 964572923 279880067 416656823 276221538 455202861 26229703 895948999 201331093 324588939 204707953 464991330 682060762 245523875 169207644 41992479 278766355 591335025 588260870 497594489 153595203 19102899 907515247 392291252 697857843 740191618 171993881 521747291 907368191 941298562 965178471 570535090 652727227 786279558 914199578 36351620 683035590 172286165 688818068 864099404 897741812 695358250 651271038 145577716 364007082 372753328 698129993 417177843 202601331 495608748 732526486 312152782 426663762 744932776 116554922 122833342 565597001 544486424 762417091 188710122 446415105 363062912 979015117 191995928 370600432 700327524 674017298 340639776 113297115 381700237 813341836 247077576 720510840 786447144 655868155 569308190 754639097 901102423 12162409 686134918 997294362 687467155 248106636 40685243 211758012 535792182 288119894 517032272 836921691 695513481 593063321 864046669 294757779 833034653 294129381 397011159 69767597 609874558 421351641 899835910 471753862 421882047 927098762 953969932 645247651 556893050 741942379 635220738 858622903 106744192 993629248 983606007 293121163 329987579 238686172 520696781 106617484 479898774 522186199 545070544 677619836 60284349 434278883 144522732 626350164 996947616 528358336 383125764 484288249 841113966 570019770 191061080 521737556 56334310 970472606 873335339 453480374 60844254 612875741 21105520 849332074 573526178 665423375 839261094 523217080 189853548 317459696 680759855 162913258 970012629 533368130 254710336 3671082 102598683 847672940 629862065 457164456 891447826 773538350 360452090 784139924 392428195 39926931 770760925 638769692 764491852 810187020 991354307 933750798 32384946 437776246 312037481 581613997 115016076 65377448 670491552 817734251 702590818 324786712 214355130 571881070 699763986 600734695 232584934 248426475 800981544 143776630 841013448 692544548 726657675 470239804 823126856 335643566 475543613 509759365 577887409 513688943 707415092 796255305 284508757 588343680 94253917 756691471 253247603 375398960 735261988 376791456 711126704 913429254 799299395 962963691 600834676 397649872 745244929 957604563 197780353 260826786 189969984 244380240 413205285 548938815 627457732 948534685 668280301 445771164 444479771 622332758 639466652 330320565 588951797 887888270 450166650 503606552 860752435 218520306 695320157 466232896 41538480 471240842 598849621 215938982 91074232 493374296 615961582 115568365 605797464 455450419 469828452 857710855 755956679 662684020 768298144 990163165 656366092 551028438 444603666 198742361 552413670 270202530 145749595 669423225 180180324 164920146 274205657 915691579 670061863 356328198 469214711 23938912 77119216 53519529 174298698 862179891 775232112 909989132 489555520 830213746 380416161 86252412 387580677 339507050 922111175 691023879 300738641 151089793 605608099 876366270 633102850 961968884 545322403 852479371 675027461 133167515 59394559 114197156 640599747 216985402 874929371 93318852 548560114 205803431 789980460 631236262 999122972 510719447 262658440 164518974 744495372 332470272 838845473 238144056 660070676 313729163 951128440 716909864 854841606 419462373 385681013 821819317 448495827 742032547 725558711 174787519 939095651 658698143 274688640 823536197 469085346 122103570 93478146 501450096 519253210 52515922 61087692 138679059 233429086 688694750 314732550 212113682 570526133 706841162 558560055 222903147 145078191 399384135 390409357 841551845 144774732 407402017 789596042 598679097 984736348 66691703 704281910 537215570 791792844 694306637 923607572 57652356 299596880 640478529 621250814 998729122 154308276 789748064 444743802 793313543 648215798 910812354 258381562 926791374 736494115 249589684 102614678 420472640 547171923 89097310 194203378 885722271 957011287 542312204 567000954 127528295 858445942 914923348 996268561 527625910 763806199 378429952 943883768 551162075 635796715 31225605 23106736 633815358 617730136 916087884 900755097 755834862 638256804 546899565 290567137 495782981 568591698 504905815 41985358 539387896 784591540 799846505 986287744 860402274 975851385 615013948 516385381 702780863 821865938 325642128 528927589 18899820 693842737 721616835 869760769 553908319 746713536 43782460 312152973 764491358 412140944 880447001 380808811 434270408 463376714 62762912 280760422 275271406 671512489 258843142 744179074 10132122 193729507 638642506 450056555 173128143 956113767 480187247 649351538 525906715 877523286 282997934 17226645 576144106 237017632 267696068 961620864 320483143 476827156 165444626 347997582 110521363 678981057 439260944 701463239 133573966 627422620 83974434 989179545 520686607 696883918 662645250 823945500 726185354 455986470 474594200 163887291 461568787 625069882 42618902 115179944 381843638 919839904 509603780 122013193 707608666 49765090 928447133 447000734 419689478 572932655 323036901 602160227 61301913 859848971 593755599 864805212 105871595 331154988 885980564 65462460 766678816 454698979 590241317 673990689 141931281 47885999 144435040 682834689 789907950 39539551 248034452 236797150 500347602 734928552 636023311 696581590 916715734 276514458 50947106 562583915 501537366 327040111 42236904 686471708 351456135 666618588 959786659 858848735 456604580 412076685 430229948 212514772 158919594 771978636 536517219 756884194 808109826 692718192 170517463 712098546 799460129 844659005 795296582 86207267 452504754 566781264 902130295 590527097 991334361 569265484 698239804 12286005 564631949 842655304 549025678 31094443 131454324 984120293 633735139 558970597 652522770 287952291 918525500 528763133 70203650 552855401 303666977 757487209 404951997 668173887 575372146 984982641 475341807 712199886 958251363 884166528 593981316 478250003 5138391 725191049 850138685 89983255 807447403 278145782 750472001 827594362 537109914 728202623 758639132 852740740 251243771 714567739 971160274 555620740 3964485 829477031 29607967 155414347 98151478 147896693 458711292 907270061 742627216 11146596 238042487 196936711 888947191 584044546 783738376 201773912 568302617 3007448 980131742 875632898 343637351 815175145 718468638 625397296 222388341 39238635 737613998 252903879 222823081 704301449 225614779 850666740 923210375 882169770 539738942 558166446 294109813 503847556 699729523 781219566 727273431 116005577 727450764 550381459 683015033 435634555 651935895 309506939 300020559 389594332 91745730 170725579 232115793 877217003 384475292 575573135 577996264 654210593 466212310 961318302 649012870 854625122 961127666 745045872 341152712 895756414 127209478 276194071 839632669 908880677 169032093 662719811 78896000 971596434 758735158 443391646 256969353 836856508 580946106 411475485 83585012 738280991 802999548 235473134 495670713 491954686 158218586 591804455 355279747 951307399 817140557 586572271 579876553 806910360 824119683 141010854 625662078 988736122 121883471 693932442 326840182 101127049 885848250 705796332 341052194 353452535 237117155 278025914 313795208 256021403 811359294 748015297 136413183 311342541 130768461 736362632 297197319 303411271 270016447 946586212 471413514 556768447 643623387 319471692 404014125 607995457 242574493 129863506 567591519 747805538 84635090 410310377 357626698 70959625 997288060 152061911 716727512 858895115 366717670 24115126 143532413 665447300 999580959 25258198 279558711 386478775 346851257 890271073 571149733 754767739 329578680 484245803 856630184 21940866 440836868 855889896 181373640 96789609 241615508 224020489 462852800 130360313 132091922 233075323 827709968 253059853 58881244 472734172 223181293 463585351 997154072 207344061 632007741 163524229 871872253 21033004 476470693 738581201 395743145 831659900 676728241 593728814 985369386 810002972 615644959 779769871 36066798 289258259 339637636 725040909 792413190 959245687 843198664 89664257 800952617 587205847 344514957 632209387 204839950 993709297 823364651 801922751 663769841 882371644 447313205 996655620 679695768 193934475 345987241 979545753 907467152 88772211 208272147 280456450 910722425 638165474 474498350 77662674 368958578 63887128 924445197 503158782 413673662 938146034 708286027 183992578 867441430 371054987 899059660 398824167 554488088 520257003 859616344 421089181 277069338 908380651 348964298 802526579 258044825 127265723 909656509 122355628 845095526 266292066 771685929 949772473 166414436 603885228 309757123 340591634 659241836 350557416 588481266 929697460 1486938 947762524 832629510 760232143 121770172 85652537 697527830 652505936 807994523 719781113 541912858 818532403 296406336 674267144 852959661 613953319 956416507 411201225 762599038 550180605 374458984 118984379 376167919 679644292 896053147 433433248 664207460 377719685 90738877 102828458 711826156 758216168 872797995 647040006 891726077 384625977 549588852 582234473 928632020 785539925 207955924 91190067 34716922 333728723 877120220 761342639 370742740 883141789 294052913 139251259 548534093 500330549 2732118 152781095 789009141 184950520 357540181 806680655 288767973 577814258 929379940 424347893 127012965 246670979 47190478 809569680 131026078 690041125 734040927 281313153 802462497 39664539 751777075 996834367 632353898 853782461 851087352 17003806 700193060 501108794 380399961 752052421 433027959 125626915 385609642 17540511 684620750 509872077 903952550 941235875 72227692 273900591 3861429 763372191 730135615 412949629 990204082 408143621 836472101 95167105 427841975 207378403 708718663 438585288 695161906 207529004 898386551 532352326 636587709 108425260 926876842 886593757 424447157 867177059 568273768 654862775 907570343 493050442 954988498 5113852 784186686 333588249 578343382 645151737 527269423 433625930 539443965 749330446 537858768 991291819 886704073 822395502 578624105 133570506 357416497 75296465 87019705 960968951 308144044 537395871 463093474 148719126 275649090 115069018 978203657 11927244 864909027 288494350 705571993 451919189 993421570 739069414 685926950 890794629 89571670 598251264 868284467 827202306 237835053 123808240 772103738 310510790 202493979 849938878 880785456 246217132 15018750 681528416 69793586 279335997 640790282 471849855 296990328 262779968 18286569 324142235 80482793 113231634 68238737 750808612 734674252 192966017 248061186 13565674 15852282 665860153 257204542 955701552 274107824 266671600 960990939 334880135 419725108 409043237 17279398 409811444 300933713 288155248 976654489 874233442 220221849 669643895 514250729 125016582 948532883 574002669 2583060 312521549 675165263 754626785 622190024 61520668 265055069 124014752 365445802 916302482 277374988 754312106 467315132 222512151 68774932 313226056 276119309 911793165 263943731 790858585 395764478 278144291 988946032 549737158 215751411 805483834 832431658 125950618 516337909 603755762 937030929 944318014 315962115 766419919 280735265 398345747 789553115 233023848 378711098 381407969 95565774 922071322 316800901 577064545 677435738 360523134 3951264 742677739 322177889 145298547 188684998 49856679 179985125 115697151 163131293 779906211 436078326 232669455 319118026 185025259 89626303 261748148 563160558 352654464 615265634 274719921 232783156 467112523 283276938 182541851 264584590 942684196 112059921 395677435 463328681 862461164 602570479 557397721 268046175 477751383 279822001 968597820 917894607 660321917 653670382 494748598 651881987 195541788 434655392 621562887 441120715 742331682 821208045 846932901 790017063 252961447 850607067 609879875 200900178 186743150 682058369 146739367 173952878 635463762 922530343 637506589 993432111 343735488 581113868 857299142 983947118 189635119 560127723 600936177 236944253 993613899 71334932 119011531 517040591 28766730 815816310 876857820 721489019 555917798 287774910 280154906 951428574 862319506 221741752 606206335 231182225 517607285 427434585 670127242 70634183 338664086 458275121 871565597 585882322 152876396 322733320 257028387 3271407 255185107 706942116 821449681 602918133 621843112 774976806 897648379 552315549 15174036 545563457 5588420 183553730 777864110 542816356 948303167 157056387 604356673 538697779 177884622 811280718 758417001 654163624 520908439 531595011 175862148 470365894 27418826 810839129 926036316 644147469 339486841 338566296 822484646 986663656 944678574 11706012 547633794 626933783 819275457 875735872 715524536 479761322 71151880 334661414 554610092 153943474 33902491 828475173 962200045 413339489 68220034 123419812 958124007 542020789 753259332 35436271 936338066 253301022 3881257 594302153 913300571 807403012 376146374 408503815 80834743 329638980 722359339 936474665 366539969 326177540 499761742 816607526 587641938 360342481 251875637 966843099 49425127 689888762 210677162 665082808 752457918 529194092 348473223 590564781 759655895 96697031 39200719 838251053 2696282 723225969 679887893 896364463 341698946 235884105 424966455 110655723 690939676 578448247 140595305 979876378 863665157 105823578 274981743 545003457 242944797 49564855 730339063 36402648 732633067 711315165 438407903 866629845 654808752 651692190 455578533 392751158 339214433 151486733 533562929 699434106 100405102 751223195 80092274 125096641 386335838 871116936 426053935 151478701 61656231 743918191 874682630 350929342 943403546 327275729 343009795 946915660 606186767 801790708 20165056 8393136 106820838 69965811 178126995 560395109 579701872 262948785 239250215 713669808 30964842 77532499 552432351 301545234 89533184 942873778 183333288 192538904 810239586 668328242 610613083 614532025 371884583 876078803 683990039 961334076 805614002 416280397 316842008 62373200 840901868 568931419 273081839 55204812 705778875 233689494 993046509 549577989 710565826 547579842 143830920 607156835 437402713 862321985 728826819 898799339 805023268 425439040 671224811 978120208 279359710 378196724 129238797 862516921 288824448 285798110 18909854 793549212 230939642 647392041 677956067 896215112 905271497 380471578 330790241 704832906 186331481 377232213 797219479 123062261 861563276 204413616 779946859 717192039 364216895 656388239 90705663 948311630 694704286 861040373 126822260 743155296 8493974 227671781 222922682 62026173 545791414 964832719 254724294 792344078 532718805 285210517 83112855 620517780 322217689 729475852 363736680 16275272 945035406 598775291 338246665 18437495 99813889 135235001 702732093 915056146 387495085 659970290 592727977 380327241 231025292 193144215 411385035 198138442 60822265 274953364 705560846 164696600 558315107 131661242 833748001 442302043 429736772 763828733 995545645 944892318 879390962 82875013 285656112 966715978 22934087 586919186 447002122 558131367 944255017 917763128 54738057 512647330 215040679 197717428 943148522 790023137 853255742 946473498 882302719 455926695 183629326 614337821 242676210 967823603 615417246 121169147 684053207 606428376 298096381 343163021 802133272 451402303 270948129 191753953 497221276 223587523 174415338 829226344 249639475 691452178 265232415 890091655 126546187 928799292 628476057 361427974 299652306 53929733 389090383 982936239 213548001 495975976 545055247 830552825 578382046 819783540 967870291 164986286 433072145 593390252 765256580 331645778 586285378 657479774 552534389 722246138 694148101 665161735 922166200 420811598 355357734 403421280 779304291 466384504 840951942 493662013 248063200 256736076 880080019 199988648 574483866 86365275 369082789 760493443 398432355 594919628 510940670 340660137 220896612 41403665 881095026 360392461 780092362 558748494 903048730 137660746 32447730 915577616 366099209 651394470 283375792 329139062 320384840 413462334 416253700 960273086 228122444 513263679 460787443 421589686 37927743 75236810 471759624 813526727 625037063 776312209 146142359 996680819 903658519 599208729 109188386 317446663 973015119 217451487 166445703 800614093 75121147 969755956 419586209 475126182 493470113 242123144 131876272 473948387 786313251 757400119 494077715 326324988 863748201 807305769 477752751 292759794 995056193 29863105 191609444 69998281 866738344 762968538 294158253 829206881 28770700 373057115 154369143 642600618 85507611 111438642 407474543 425263126 109420944 746029071 154486075 255488430 49169377 732859991 393348851 930437420 82271456 486920052 896769770 823173073 247013610 960178262 52573743 319651491 347685134 26098682 933121720 293124216 271907147 888995876 437241277 121061951 367692416 384895033 694099610 530078168 982658363 57701597 141684081 692412122 342228051 170420730 959055139 116477749 5433809 331554216 217211904 192210044 462690559 7744576 550719071 656868154 349046136 486128829 554482878 87134089 496232037 239567234 861394252 353761067 504308722 964334460 791141883 17727506 376538462 21725312 27798413 213704883 852151142 706192423 569474345 781607876 675004541 32211274 965570296 937173759 816847913 892241014 338086089 688133056 987361633 559153349 504048593 132444727 260186291 998352410 291617275 422054959 234773355 499880122 784077456 80180296 726758107 211091485 988384530 142186572 11696138 919776624 909934934 130011838 829222330 853308328 209873961 151871969 216537441 416204581 392543162 545974767 847264905 802272079 983411804 605970717 293108948 388411483 812848548 536677533 657057746 641869864 585145181 413845473 139352832 798121208 449500715 692191258 862952737 371320186 143360610 41678257 612976489 899326605 31412740 6196789 214232703 956724438 908267056 306430673 360386080 959902406 967949730 124156824 765654223 78493886 845311394 463202210 789548211 463715582 681765690 633028497 415510903 925724485 970164266 549043191 563188928 343174583 300205849 793850559 747567264 810873879 990928422 919896092 619342251 694844444 218445196 841112145 742263333 620451276 65862029 590763708 246642132 10877558 585208176 132054292 829564531 643439295 853619679 444876155 679235841 887616518 711117652 666093972 69090971 225117923 948766887 335245845 630868731 474086055 259975556 573093334 636294248 3358598 748077970 347296398 84257348 30582867 347809066 751434016 464754329 454405430 978358283 796863774 964481737 580626373 122416189 345676192 831949731 325793921 635822794 133722701 321663498 766401052 276760803 20895267 863877956 724056525 337823889 123319858 929446762 815687138 155168881 670976061 761827705 108898329 473144693 921049400 117471701 410867719 653779254 501021258 810964844 609127346 810754301 366391955 882714964 593875396 104871920 689172282 507191822 686292082 904208532 743691291 788446364 840632773 193544320 407219362 753793345 700117425 240058122 990967654 480335500 422009521 537950498 50772628 443615415 332605379 970722092 529232739 866225927 809560454 712998607 602177807 920285899 342518257 613882510 676350095 340410832 552394311 683666217 20835837 179842281 707249858 799635860 781942295 3809836 102555296 931737731 149681134 357895006 853031818 817584292 768438263 981790756 686317998 548447251 324734429 724612621 57881140 676171635 49263250 229818311 497532239 495889679 592469219 46993719 599469567 271150075 663067184 15556299 396294455 188600777 49588480 2100641 834081691 36156877 322011258 349890440 462748955 265473888 604153462 994562667 596537867 507144833 945781377 914452288 738987298 683079928 836624281 806435468 715589188 638694775 268280349 811172753 860319383 844875251 882244335 800567457 52704898 797291870 831667283 41365089 489934134 563119190 911155767 474728108 467675397 459707147 213748918 40232497 898828150 453919621 875011211 498013201 91582688 798934663 603230664 980192482 482092737 699876996 247594080 456008890 241106106 526910914 690617788 8710128 696853612 695801980 976099511 919773355 541612891 111667191 67635980 691849789 17670053 795400711 699118555 863951242 793210306 286206243 555913632 655009962 148491074 224005244 151967216 502606737 778442147 840692228 326210953 395450426 324455419 307023641 361452349 596977881 206496499 244051080 817941715 987863567 935470642 898076352 693256476 128915795 587490172 309264004 780502459 193887090 411062158 501202524 18891277 535899278 448784611 746266958 28917980 261811670 482345084 965280968 143164811 516416770 902598324 976718210 195685633 755689343 703650790 478108561 790556279 240958743 107915927 521987907 12806796 465771955 751092495 269001937 387576959 751810454 475307099 211197226 166131113 152905169 736146667 641896348 140914508 300351395 853765009 886653279 847084913 35962916 96143516 755211047 713689454 390958428 772962719 895198565 489885648 422734147 837687671 240094840 96533956 724934805 503758946 584647717 868017916 830227145 264509929 100150130 420233179 749417426 983027485 402463263 864822028 941639379 558305468 224729321 518988221 199889626 78681692 596024093 85100292 595259976 137875459 970023622 621501270 553515101 922072421 265336242 130647219 839824979 892982211 300939329 714247372 366640721 31284258 764028340 633602893 358992704 719249596 28537840 527282486 338976693 453666590 426939985 986099865 925904945 855414093 566959892 114931287 765550856 713928699 250966194 862896005 40709626 737585509 971975677 336320747 149096983 172539034 389633625 580483385 505472111 531672929 674063334 359601706 993851159 623247875 386960245 546261051 488830773 861956274 745676368 770922813 352816153 283226405 502251569 345081088 581839046 860836695 765008165 957851362 342303680 116975541 547424363 605551172 439627685 360959157 228866331 13729921 461839839 659100659 71668844 71710522 160844360 194825449 361167434 407521516 388462236 998703296 439493767 499073999 663761270 369690670 985129124 749325167 58697181 767991478 737145405 395867180 13322030 221095627 32098171 746047484 664372156 608468048 925191206 454084278 283355615 155412348 20940154 324713166 702630903 63502200 394091730 521450395 927382896 678118537 866096895 9441268 620673199 611626914 387705625 202237319 721840216 652960675 247514081 98913085 553164441 798912346 693349903 839429519 775595683 892136244 279350088 283895289 447452386 345299237 958459917 729407343 672209822 731207342 843506384 239220649 464758819 520860451 955017328 916778680 655480741 605079291 649647703 822334294 430145427 630700186 15086602 137952374 450451238 416878616 977455933 797355066 903949544 720398728 707787009 446484279 665689371 436252310 731114595 627541042 409116577 121274603 825030062 359402381 671237575 834066233 455893989 182451630 854173845 701728066 456339336 802075854 636976552 962471045 571101931 109328928 524260288 495719907 2632919 667826529 693916642 857907426 845491318 335733843 762601922 222519737 142434998 586496974 949320615 481182470 65956985 243673317 660092509 67838504 640526500 54942430 18190229 602851974 100619693 705581415 475361155 450964194 317702805 645572105 330750459 427018572 379350890 448445921 325279400 707174276 683674305 572254152 918509741 73350336 368059247 687278220 361172491 534777847 37271529 989794806 814719350 654696561 650990469 353893153 681494629 827985393 36029742 153867215 818407995 533031707 536148964 569594680 605593262 360855647 337140665 998624774 612273157 622025118 867095576 368724922 693587243 414230651 877873377 238308240 401887082 828231259 789404662 139794603 951443333 671874793 119213740 995329387 301251651 536884943 115648781 952743273 881067626 748575920 205769916 175637069 749379478 915709434 631699340 470592095 273704012 764511269 530945424 620479028 317482396 739762217 238021391 413247070 663991406 310366452 66971338 188648531 927701877 871371330 283967473 297533076 888368536 638114983 356369679 958749533 131581127 186744896 631094185 666426387 745636646 635298253 623283373 499624027 321782817 806922260 32003515 132754593 827214379 142152858 511566998 894988611 270643678 473710153 514983125 57761670 958338762 228040183 940532015 173069194 992301459 185533756 8228145 515718436 786787496 497779709 89883199 948602474 584189688 188519963 700432830 565710096 450156307 37985129 197868499 524773461 834497384 363482320 795623010 736739755 233075488 374953254 809935075 3054225 846622624 323194612 457331847 767806873 553945656 39177198 909294462 83080633 417189517 876447049 8645666 603203905 140439692 54674575 760723285 232767601 383001768 175404782 610075336 76330891 960535240 854711338 484106737 506196154 216329813 685378614 738349215 530028891 822190678 659192567 243261118 994875234 520132096 263629481 138883511 38534001 428220495 378997233 559118819 473877988 11397400 340967579 812259508 404656556 888904686 539318962 396123618 688596996 291960541 572231294 70536925 423529344 903249191 402505996 140498006 140520930 148981341 840090734 877866020 325700102 818239545 865829756 202202185 690573006 776370418 258057853 690762513 458425151 550697592 696498152 501231289 915346209 394841772 712910658 497409545 451656153 376983237 20334914 733905653 635685020 615093956 436852588 434796277 602575259 520791511 313002505 703849904 24072597 278503914 446777394 839645633 108209772 221996158 280464937 857904165 104847399 99911596 269389630 591727266 359323404 939227818 974788141 70202215 221079733 534532491 168710827 447228139 887354869 759770957 138726852 621290079 132617484 256703926 36410152 425178758 717921679 895540627 854466133 17476852 547695155 908263837 680799524 858835899 852918619 460530945 276121607 999663602 891644339 891690274 929820591 854194449 941984442 647469153 703267324 674779946 122168216 850455400 914179891 392955000 10749185 203543857 625816855 748231448 332940067 31313276 635226966 147248560 761381981 746055175 621183924 610198401 970664749 93869839 878972185 631921731 629246051 743375520 261758676 332773099 673865788 51625462 704570461 360657376 542888101 633438752 976275697 459465533 946620373 24195592 251995963 722195926 52951401 54817001 38401043 764497794 70814118 57145105 573032059 473443415 435300485 44980766 12449957 779351359 705289401 637681286 623539360 924460395 288796368 936067575 221742525 404952092 891077337 961436933 861845502 462422163 250419457 217729363 324798417 339146795 84490323 720103445 351142512 584512591 148644854 965982870 480953303 528216252 763658432 654532206 743469888 939754817 107049471 467164601 536917717 769407881 442877512 237958926 530932031 836220181 509214869 651797315 584464446 206240370 100172770 388997438 347793826 321978946 923527642 616498437 695346234 739587693 62541546 579308206 472003510 652246489 314498703 712164870 844946166 702246972 815371027 301470457 516853447 405977974 313164767 272972476 138511489 723954375 295217565 501020168 42904950 588393509 696011321 659780918 18494985 537485832 712868437 274416084 31708974 704227896 224505983 610983571 134205896 826916683 999100702 835180945 146754972 37086147 8590230 842171568 371630950 983014908 135972959 624404056 690744031 517770480 21894312 311291664 236692217 131182997 61647502 778804809 959765370 710921027 50064811 472990513 867051091 579219708 386585027 97652297 29107572 225409688 206399827 986860077 64082157 705198047 874578739 792596552 747142791 275736247 490605280 293496588 248379687 574589289 72184669 658717274 117702406 768010022 584770779 46574437 520193569 665654200 493742915 458816221 152857560 716828902 609532806 766284728 562097960 77488413 744498814 594473840 429218534 250800499 40489789 291377083 368073940 281425800 413235233 839774718 313204611 599703925 831729215 966564935 441732467 650754327 204022101 833178097 17058345 562794666 128034168 750550943 378678397 818575527 132824037 477820647 163192224 741755722 67090025 872211427 707749310 914427388 561920664 609281009 999425248 672774673 618574309 873310686 821545352 909153168 340365303 965644619 527470424 419448665 444127813 906217775 11119138 575233533 495635759 940971648 248547263 833250391 482163715 290375649 416000467 785141314 76637431 504402585 841568574 333190340 368494547 44652820 610743803 550929641 632390986 304290589 317046916 228548221 549011199 510248835 333190854 471120803 931703932 175094606 958887732 14003491 833059683 84167654 557951964 567333245 531445687 917464851 405974635 104775376 476490134 414909454 424922793 796177463 823395483 782292324 670119115 548783487 128465297 699725599 628944308 64677649 868455777 482008824 982926005 741741948 526567374 390755177 327646185 292075737 12011580 448099179 971372547 85060011 149451275 343984111 90580844 36193901 725805903 616188526 592157866 800716105 311916557 604561296 590483847 438052835 636750757 989306208 289669375 639628652 949450061 843990319 149897243 463656229 949955869 451740885 227303496 546600726 608386877 506902003 68936930 392765188 229074146 522684119 490888488 550499787 951105131 24923572 813902439 180201547 292469681 114735280 604728411 73543607 593725862 20215324 239469638 500524972 454250224 197836784 15231160 447555929 191539048 461687949 370301290 528045592 91812891 210652052 28011671 116345241 950699580 82219346 439120518 120965941 571874094 343832535 767654412 178914517 662062758 984236687 542980700 730446170 643504106 283828190 458481229 687717758 581252340 907900024 853150743 746616109 971792306 279518802 125660309 479621088 587698313 943834457 9176720 603170369 325748888 220275164 386943874 663164568 85129331 987066769 623475122 199042910 574505518 152253853 518596439 16801552 16548330 278106838 880126823 682562275 177644662 6340231 186440240 273103207 289979509 402675519 969083256 584838414 924756054 454994358 904033260 97745687 731137236 978306555 804351871 187058311 405575913 622605026 328663460 924827284 403092955 452407839 850150359 554134777 711941684 378521666 87280806 412306935 286255606 783973212 26621353 834799543 663274729 169730887 901400925 449828702 626661036 879554079 781233415 398358598 437749240 676128741 995995954 516537524 824118157 598678001 917135109 631906046 290584430 370323478 455337238 691516356 43713179 910571629 562279622 905515299 619921561 797577996 792277255 629165245 261647193 940410184 655118284 638906570 533030444 420341991 662875188 518481442 747773940 96923112 147987447 586379472 182121947 899532065 747161116 802407253 424290162 673066976 377567512 991447071 925255945 469043639 47978125 630088025 984175120 81181273 879577393 583055890 171246315 709326867 804187455 7119651 235030526 141525682 575450502 625507105 691011290 831966647 592801699 420115009 509194560 493761087 262619910 411393985 932404244 525716594 347992729 682130045 403212573 740956204 972143860 890143476 890829428 170164374 857565653 907612443 392391402 154601955 529150079 514695375 40723324 364742341 611495282 943559743 1267303 878471869 711060208 993166630 300466042 400602296 993975850 615226825 404988160 231374271 514720068 725544805 182037540 958782190 879791134 644832387 296038569 659398244 333183372 471602090 162428014 950748945 471554736 740305247 16440708 984963578 939585650 937924781 573365896 208906177 696777236 766663373 515668411 662555591 325833984 107465457 488218890 320192952 233425431 144025254 924123051 494366647 205625603 280183203 763079225 536653491 450094763 508474268 982863262 498240627 336775972 465174175 651287556 250572363 80206900 918447152 940812932 387474629 427975165 652954040 572269371 574601457 110143887 110652094 211293837 436632549 226041865 600573373 138994047 924494891 299429820 451265467 396239510 615943688 719675257 941991410 176974569 844754820 382898701 643652389 7474616 112800122 680177593 908464630 579179652 198555050 149629903 723699347 400096883 141970058 156387415 806698385 448781247 182832096 280557315 348645303 587106706 716313731 276958214 574676781 82682751 2520118 642205029 718766114 654909566 460282583 530540861 96780494 180516209 554787124 165619342 116968374 548810649 81842463 634990015 821490398 504226965 808777018 811666184 932927122 676175213 85955536 626665864 844768202 275851703 739980995 374141041 577852987 202820369 421520250 427349974 664747220 3204187 533878436 900250903 211014210 15137064 744876933 69375722 325381903 216904384 97631499 74164921 783320329 82424000 529359228 81589259 659278275 828252508 141697744 104238165 302005336 656381262 256370041 595890289 529856221 2324164 966689691 660653203 470305676 947113917 769050951 149945796 211610150 153034162 499258827 225517975 904075848 855674046 395241494 772245032 850310482 447462225 807132013 249470784 343493345 128466969 882894897 31428630 992386344 337857642 307955166 77181009 171577229 816377122 782134747 628019245 191994868 175833586 351496506 572971010 479808733 49103290 956204700 481984112 404764349 854776808 443680845 709601090 241949812 78104567 623296515 201430971 132332098 923972841 234874473 348366984 55563421 164971506 775387235 953972191 553793574 383034257 233935727 964387623 314843398 696525209 489723385 483856142 127450194 860000434 867752233 305204906 332689378 831410695 302099446 737760664 219048323 418357508 995346257 15103368 671990683 610071404 335691500 287317380 443017243 118383793 690530593 702475963 903326303 393259899 930361964 207300678 435421731 668121894 185374772 968013152 98042193 584871030 859563809 516865775 200786401 628922771 274288164 533911432 863910557 401342668 730187506 737435563 663641716 59273637 984854336 195611371 344388489 529070791 672105251 255978867 196368127 599922468 982325675 693661244 880549695 990553708 709040166 124518991 479783478 906339355 438801763 84321820 528196184 805331656 322781025 842201784 10986152 867267672 258291166 629149253 920821046 637086049 575120170 446180365 650951735 200204534 375885365 349545635 850062972 878639959 410987594 986001252 996107407 253158640 717541050 15298067 882894668 235826011 586969454 858890714 950711323 576699781 807113666 456972902 638270987 951627063 851366749 682975913 27582336 775545267 863603062 672712992 122974951 270652919 603594564 324026750 734557571 288527129 345511553 460452230 551352902 440567400 164985764 59914073 500148483 411902842 775201592 858780731 548756828 936088298 875355403 951304571 466865895 853617858 810732205 830704311 923410321 967347840 539925249 473488139 908135828 306439082 620600049 631908667 588250943 600122597 718661298 191330491 843016955 687625958 773393961 37066046 139478441 274788264 461994785 535433359 223062374 139058794 759492187 305533043 790650470 626343583 560305289 360869525 181328768 359408416 658392915 991876324 118324468 797488213 760551146 590919383 951885875 242476926 898840461 387906833 238068563 743009777 831960536 647011621 706936359 335206141 955859614 336243953 893648941 85266461 998581399 915168080 177965220 933672407 4216227 282688813 659550539 745547360 86640780 587771548 974747123 441865336 284636919 45394777 622434148 361022447 916154061 251857778 955047517 208578296 808129524 519122860 170945180 551363322 138011599 422026157 933868982 293492390 801261321 924220257 288058671 777310775 111095810 286908654 568936503 589851572 536912022 359796611 142340387 988214531 324054532 168743262 270089941 534863834 58323964 550990653 299931405 618792646 33449614 939359283 538531470 884643591 39431528 4381354 759723473 936801606 341301753 890053655 556858523 146510802 421694861 524568721 92052703 990054485 146490978 706396038 679672158 467811234 150526078 885087551 749625118 751884255 727938461 323979968 524844279 963557128 611613032 969610086 748153457 436069728 370357250 213068240 995255407 173096176 742189763 475927645 821082690 144562780 673929546 746259630 746644204 340073454 865750029 254097042 597751186 989716715 323575831 629374099 577115157 359892490 473705540 65113747 97858923 830231244 460838249 475405075 442723393 177291615 48745681 41842004 503981662 805055520 423651181 268578904 262009394 52106740 118013983 389248879 330248008 86131744 63032231 636082271 223670987 637722031 335074622 842839351 310868273 323190446 331811033 98509158 829310954 828180885 550916054 794992734 235961922 481819494 63529199 705347972 780234805 581795285 801361811 851159818 472072505 736940058 123799080 993692121 920770051 243983771 354025570 799274646 210169410 618612181 30609081 350237883 123337440 303033888 960131678 508103625 422056727 25773693 770501919 61180103 210977719 321780144 754257845 564262334 941370947 140350245 545463031 395381240 150864833 229756121 82172753 542477112 259309130 304267535 319250372 117008153 954709969 582604416 444372439 4058315 979903000 788730271 952981588 304989449 561724381 794780599 471758773 428109143 4914783 665541698 95482221 747619253 254741765 686704537 737671723 111079884 480576112 74312828 872355853 869601824 934823458 808115480 359644788 287610663 790784437 292472810 899044720 247520782 320662848 285895305 925062193 232433811 118211184 765939297 813617894 243063127 52204938 554620330 974852939 951981984 65796655 716513235 782381953 542355512 3981031 358061835 601384179 589737462 522627785 113621144 223114494 433710331 32418935 359284841 743358267 825318008 572594245 859320459 791046254 678606339 847014636 820029291 320258119 536384079 544563036 305550790 516390723 440926102 705599946 22623397 697303317 498585776 617810151 541417898 472481690 510729616 670829904 850404752 17960479 185575909 905923033 92676725 203918030 492013360 912301454 100597889 555281818 62794640 483898195 67906860 943123126 84839170 90841505 674045909 662554133 162238426 309278632 572771218 138936301 8896926 410787119 886907621 119306539 13583985 482685128 204189274 288210065 782129314 996750183 341903892 503807412 363868352 771448679 871825029 384878766 854240850 667262795 893440879 67528695 319944136 395638197 377194503 236674436 273532974 903943783 5290002 138086407 164872757 772819620 894069067 895171458 286829863 433169070 162228789 378051185 79312387 211936384 237422244 503200350 47031232 314441649 666901862 511219287 16996574 34502832 334162660 634753222 789663411 456821382 670180567 610331957 334291961 113497782 227000106 227272928 286348617 89646508 726426604 981825296 693132567 528093383 229913109 946542426 31215940 739943189 426503160 407784165 294443015 216830112 460335464 775511880 633658187 757710706 787524 300032222 889988690 121308819 924494589 947102603 174938356 601594646 50535979 241670534 193995692 644972535 94012003 845343081 154712802 837408191 32811959 42075745 478724820 205312381 584974891 380121680 101538899 430167787 983844489 825448539 882180062 319152113 554263159 685788555 612365260 54216632 948788292 188709344 252592125 749240518 404103114 172880726 765906773 99937885 901990960 32747609 536161519 833615715 292265262 814573608 871676931 956681880 776474906 622583453 272366024 653701760 34834705 73306114 992007615 769313189 812042329 960023904 459303602 681064424 524664206 861091652 724214353 785904535 779366924 921139866 427393435 278756447 940959389 218209818 392489621 126922505 275489459 395301602 585583262 598972634 494918031 289316258 719442783 35845478 184443658 397052742 206492119 603800949 321030872 351565188 980328481 70679529 293394615 502814223 424288003 514033913 352251837 738747213 68188053 456495876 944794177 85532999 496848297 770234787 91636871 683115831 779854516 344437733 299172336 748678151 78609649 775894087 411958255 981513582 710647261 859341624 322224352 460964111 237858166 257253152 136555801 532028966 710205485 386990389 131594551 930214817 221224986 373559028 70057709 992741882 613826205 2051204 892879229 235021046 84757589 412836461 377098370 27958319 187936832 469139125 2994917 696934097 85913322 434541592 424288373 977623137 643468778 493696830 502964624 545544216 306950297 872377876 600413559 79316665 156826481 884178063 651773778 705457948 124807497 320209895 937227183 253520158 240830794 817355891 722863281 151878612 465851828 372806404 544001200 351360693 486423021 620964965 65108319 337364431 552250748 725479791 236832926 581532578 671998311 784956187 883007133 159267856 999628214 922209776 849161003 706550216 691219708 602617841 939547583 426934679 787231873 548387901 425112930 117899371 857053620 395126318 839261611 965570447 789989140 982034786 588424267 421865130 278136451 717657068 475339140 665020447 599074554 965645705 101018376 826895454 503773208 813944387 845578288 596386043 233053471 593668891 514195069 865834635 971867922 137963326 503700348 794277040 981137536 157038289 886884518 355194220 979341619 311909769 32000136 464466056 437064797 33361308 777021602 561966991 242275984 308256129 633667445 94605358 508419116 34664379 765976588 109371743 241686378 587571486 508311160 813720170 789140543 535110221 777129791 740047199 280293289 16183403 873114615 479302797 598279864 244045997 832061084 565610919 543247868 269749605 165521312 870174811 820925926 486727611 13701472 728445840 197784336 708704437 315541665 795770261 692071597 185485520 474327634 261535970 734668284 46138248 643481522 669199473 585636657 607469527 470052766 413905135 487414124 726562288 880071806 719158754 974809223 767946638 533500815 633055878 239463852 862210552 369974869 524776721 178670625 362283937 812352845 398141065 795262250 471785088 567393969 676478659 817562683 738574906 525136588 536687367 922230385 605246609 240584904 87975228 382320918 967850665 853845411 583132504 724424233 861227365 900283713 307646265 176990286 610327214 144409501 318073946 741392507 549284966 471362544 801077559 538776729 190098907 944481949 254043725 875897505 688820528 899748321 796372766 504759568 957270419 476072374 4386794 170270358 395482139 332676774 4897812 924835308 848529748 282080686 249179317 358953975 918607760 366902053 412862175 589901477 15693972 653819539 395886325 92047639 193094866 908133124 473491095 372500769 978197651 262662101 938965352 137872588 56948843 721048577 271957020 669639963 91548063 985168211 167304526 72519983 27883086 450655279 175329109 881443646 128707485 783020021 857935 813679061 375049227 992145245 736477519 888332288 459502386 3798003 732070924 421142304 247877443 453167678 663469039 823057634 670826566 388828709 700721798 829869352 272299444 5305993 402020504 482720592 426760480 134100265 17778484 974459445 258771944 833224290 53398025 392708033 142744391 694882378 82164107 346167752 36941236 531980864 955778984 699490282 584769898 198501971 950812010 318909366 830867474 591206463 158085397 516095707 617291359 856896150 689531951 916850692 54432056 249947867 80374511 883314516 926696017 447523528 755896764 768596185 897070748 591204783 177009883 548707398 322267621 962893354 142774194 964507974 295638467 177529974 936526332 574619231 20992387 985802485 640133046 593265973 534016154 435916332 694479051 669818657 811537801 467362211 562707748 716980848 169817916 282233569 841944000 883972914 530113629 969139482 63327231 746431714 77092714 273009728 421919491 670093116 917273695 515912440 639909830 227898611 267430608 796142516 30059424 571328931 563424620 809530248 115786223 606585774 437949599 2333171 636730399 984291886 251708271 126554175 312335233 112387715 92272832 682088217 965899835 769245834 867629221 136033824 366059993 575733587 242363681 745191197 248629072 988754798 604207421 988764655 828542238 628036831 57905980 584147668 372088670 19202729 538716580 228861638 125115721 993489251 480608015 527487239 227755242 938761632 224852596 456811075 954893334 212308090 445387551 537466738 464568049 661531974 270037528 838522794 889330797 484770722 95696798 937861638 983665814 21534340 327497557 676773711 172910450 71553720 709534265 840362270 23379993 328868964 99976426 72652122 71683598 181109966 950626284 690698412 598765218 729800704 74543622 396396069 996501709 147157556 638891269 629479389 560251080 407651314 454746197 669054581 334182583 640302945 514531172 900389257 457659388 623591588 52060204 250818668 226938815 439606093 986965042 240391655 507033394 542810049 959565172 405496401 186796183 982411240 622797383 346669924 832160360 413431499 921116041 817976361 241911314 486874143 620401232 470493088 334208987 871217181 62912502 792907973 360190945 187828093 147231960 268799799 612629900 715022305 401950446 720816626 545521345 993098204 843541390 795154770 335282951 425332417 275681789 825665570 9760652 11857814 208400339 269927485 437751717 430417538 837898050 958122442 488957831 786320323 646151617 949901383 479570977 874775006 467328073 919804307 597517839 538949194 674723946 892035509 659100990 203225120 671812769 966841671 15483272 594568294 470383123 365481124 703505004 680379296 767989944 202401094 194302042 38728219 655268254 75450379 518990508 268241949 550972145 268908285 786694409 509148888 492381413 818045177 622610668 303449738 909930047 194273869 205025284 883192216 179303609 711724526 825327955 63958139 779407598 724081301 444032631 719354562 88416891 193410151 193461131 116462687 989732794 14546105 528110806 916411515 434002095 846647227 780995484 822159115 556001706 479774009 925010061 837584334 760757797 855114243 801200779 276569741 76886962 338587986 29448038 866115579 283552939 17657460 473361345 477572531 200648915 521291695 263429364 774524907 957846371 936954790 965689299 330489001 806547929 76979690 270434439 725530753 452017641 753240949 371060760 963684800 965427687 461892124 944017844 331946192 626981155 731474012 427204460 51459063 258658390 746252511 446632376 49567974 551034848 237187590 159498404 170063432 911228131 548485112 347645572 293717866 106588145 788070607 986098393 134370165 90016977 171960377 126424971 537436427 210789081 69532468 980918149 123079193 471725801 337576544 7229737 76623950 637414980 598832086 554071380 686788253 618125409 241954132 71404136 547419119 562245151 162577672 856429967 383277001 628031019 24669888 699554296 382463204 616774108 839561522 58514835 245535938 991453763 368011676 329518212 432356608 154809810 443584868 508622080 543312985 48091731 748138128 557765892 484646012 278726419 132803330 419832376 932069210 830094429 484127143 878310703 848315520 600503198 933399692 843968454 247291449 394403762 74972749 698884130 982022612 887132498 550833836 86448218 263630927 631008476 83103786 336993556 756606119 555730235 125222181 100708914 55328498 164118779 627313413 461247343 826820836 745542479 362826832 264167327 616968116 852952067 500439652 567530183 620418174 540223049 591940149 786525898 397964016 959069149 724836183 593784893 907870499 714644755 398840715 625829423 797933481 76886186 772474355 872871361 645438623 239785007 742517723 184455327 439193582 450420070 496988175 889895822 642597985 137397673 478711686 280644298 585246903 116994217 816622579 551531519 109608776 976322350 130682663 720332812 1232899 927365299 468937068 143369621 697265329 806649328 116586089 4727801 780406286 972397074 552555543 572123918 937281798 355835150 264429754 645891814 177067889 559481496 910943173 489093647 851109977 551398795 701404388 911669390 853454661 408020226 17753604 331633769 384582283 252547892 763531075 165185365 443031397 384937377 754326379 79933055 193729403 280561331 447474653 711828138 871829200 306733061 978727492 157556861 412693216 502889903 873094755 678015889 622742129 556252745 393604249 671891825 935699494 385935020 855778187 543130642 334616163 102557470 987593870 219434498 843435093 217323004 692112642 737572928 716012249 689472180 386202028 706145339 41366052 702945725 683358901 594618920 83382089 834825203 699933717 409225190 34773539 595216551 837568420 910466430 347790470 912804137 166812006 168141763 440202562 779438102 73774153 777439255 191571123 296710728 98545457 265445340 365955193 66639444 805934945 523016289 695335062 354816278 947565388 465321310 787103908 557426583 22669663 622099567 101741860 316138873 70231954 175815934 946753015 235714203 427454350 546287990 31691210 493817261 858711466 930833121 635544476 284889353 67047843 556105237 898666059 831471390 352838581 126822519 878676119 484930787 120804605 740670496 599360890 398311088 831866666 492897061 982996211 90012944 175146706 510101593 515167508 346429874 723420185 530402740 981853524 473924523 420441821 23022586 329063655 699939716 256114678 242181755 689097340 113943616 849532848 77410153 925885923 414070501 447885971 861106518 337482968 450682286 559144217 255977546 454360815 560058487 882125192 685313071 144706047 734784619 177429726 684073898 490345353 874479564 566938164 958835846 421408314 6969160 846941556 240413169 53439483 283051815 683612323 404230056 445396340 801089312 283936069 247362068 922591226 33717703 661090895 583877275 455899294 813992508 393958181 722550476 630875368 255017103 881113696 1826151 74134785 876763307 778052805 314228714 107437537 214717896 450912842 629908805 177763045 80380144 842577920 282153287 379987121 467093640 365308931 934483741 884873910 19816551 323131057 175099366 692499055 126293791 61121050 228584007 199724435 858220906 770572112 56884406 993915756 994729765 163525506 249504764 969937112 350706593 757775715 385895038 376818130 863795534 933716403 636564104 904688035 592398791 168965131 738161706 871717901 37146220 323728060 289954750 412232820 56248518 198897807 987059002 849198490 302224194 715343122 799037480 430554846 891328213 585589097 923828125 88803129 237484840 130504945 32857259 499539016 75107508 723578960 56899926 935290785 981386332 5344916 329110676 405764053 75263187 299109229 566502787 450516005 707570811 18043431 631436711 172229525 296945005 883778071 959512187 908143896 520900095 690294269 816425260 770450941 507396692 48096484 672350324 87421534 739101789 586707680 214140109 368480802 288924540 848885294 96722810 447634862 135841222 343379195 939106171 795277694 655752747 823466599 258573891 725783089 364225262 890449567 733728468 649697598 27999470 771431988 129861716 751395758 593174522 530243038 176169714 712572919 428410033 735337147 760623711 596357370 767312869 693108887 716260516 125348791 83146567 476304784 517130439 429970227 998526288 829823782 948461834 254506793 708135412 472160490 901002255 18035109 606374733 721520916 11781718 571277011 571808873 499518745 29413855 410783331 114078300 898785234 506711875 202969501 614332502 786755214 302035709 504217288 774178932 943707465 3528327 88166405 457277483 522711836 486050977 807579974 191753035 778463782 323589965 810688617 399648343 647089899 685243837 307864373 383538876 87340074 722251101 816293464 38747655 596947065 462344519 326838028 408983591 206161983 589664016 686832763 571051640 106143942 29952874 165354796 388319665 398859680 658229510 487032084 817102518 362389087 861614235 576266816 733831501 96655330 32462860 750954630 282525265 696041049 146106121 189837666 479148017 516205202 334746221 437533757 918838111 854890460 471547055 763633832 487908932 181356893 754570090 281226326 965066907 587245307 159362251 594257247 466609218 114094897 533647144 314809656 679961384 509036424 983233694 147307471 886419933 837876378 241734003 606406508 569969613 818290641 998636249 105508348 300943462 410881279 587277419 969380676 151965368 663447709 973040997 103019379 972752098 937291923 727051260 642378743 80461719 831891413 291720650 68373909 639651875 159459976 541422294 82362991 573740097 548698682 133883273 758257352 681690586 528331130 255194740 21106260 625038838 324683213 379742665 190830787 134322239 988822822 551781821 858551811 944953045 116123171 821830366 483003369 126045543 617581796 892440727 24679567 335975739 522799010 588078354 596521739 374294071 299785977 48792262 990863404 454537121 278596193 807098414 557309052 998038831 840614847 487666384 803329954 237543837 584280794 355107942 132781321 80498009 594788668 711752947 575104587 601637064 783426423 680857979 347239081 599087268 33620415 672655382 804954690 353410266 179842642 288160982 860876116 693255059 972181183 358514319 579572546 636148709 151735811 368101584 191706352 102131105 765794982 218084573 346841639 835921975 13140365 166958341 384202214 860905026 393590368 564620503 559558773 762524986 301339782 570476760 683595532 466974438 321389366 902827962 206684258 988601162 219693863 805465972 753636738 906360697 245965298 545616109 604587145 119291804 963945932 402933604 130378810 437250350 470272302 889248671 311757132 600564861 120587857 322920288 895010639 46446630 538038739 972465810 468632863 506368860 661007707 462913793 978662075 634197965 789914232 858526052 875783256 779629117 695701978 250009286 410596660 275912455 151971822 240824307 480874400 869803380 65839211 978622931 959136304 104113047 871792105 72120165 355351823 934924045 435335015 432900164 460659947 954519503 81638563 736963732 146620979 910344046 94455465 676019167 49395068 54169024 788394823 891539079 407561451 891927835 252588412 910679186 215380594 100029376 291535918 395585142 741332016 208152796 533648823 225775603 921200021 672213292 404658766 668424157 405526883 111553646 138806388 563566424 880576041 174461296 646544684 628607563 364846569 191737633 629264773 863674301 249573933 285342451 391359606 20715033 580139440 278994201 401706743 239350845 187645042 411903075 191399927 556601431 870190456 266400128 429573831 843140487 115821739 882761476 157855959 54705435 452940417 122684270 229988836 817907361 840550553 862051027 631839729 879063378 837856060 174156275 568302418 552734354 934363559 474558977 378287060 173917416 764390542 565837939 443041721 67293124 38909109 450292521 729244351 272819710 725237355 335506480 116240083 974971 303104384 367418757 87113748 190384559 37201940 875120144 180159517 998154090 294486629 539988910 986461037 872211975 95217772 242724308 686188101 990487185 617300123 844663225 502554467 186108341 398720101 46400859 236626727 216134425 599419504 836817967 115417072 458720968 41670092 535897188 505126811 758296405 925361239 128308326 824880487 436070430 154293794 102511303 787651005 261695951 452246886 378159140 708319243 92622204 168122983 589505064 123702588 499627948 521165976 470492443 247781711 785536845 94768150 442971237 362895214 635668394 53407060 459229847 613450592 953996404 247811709 486934682 374373508 839567717 525086996 145028280 104360570 100728096 794037805 807495196 435649643 678910775 706712749 697632910 589754120 516547785 969445329 844377605 139820033 868576363 775114063 241414149 775847638 162440029 177580853 386338862 922675101 995467746 983486863 218015986 105785440 573337534 513558656 597546119 864697614 891478868 990702855 151048706 64569619 410346119 268759204 627226668 411131938 917513652 367277932 975227495 754023425 436454267 124392957 780096914 33093610 708482482 975160468 700401689 563082082 421323599 814893082 102802164 669194746 810648238 869060462 912218740 236371649 539097853 221413659 620311434 183985772 531879934 210096909 487986615 234577825 889044171 501726594 185956775 259816948 255764678 378131385 557424901 517245217 952659300 713300232 857111646 289085723 664067784 576308910 324116513 844888772 952272420 933380572 610618265 402353966 318880445 899775933 984272845 691278932 803428983 159599429 204496992 90064030 809996099 898605133 634887915 197096283 871539463 947501199 595811576 501753795 558029741 647736388 410882089 301608719 363991119 308419547 197934733 128442912 88307637 302364440 141932718 742848449 608650191 888366162 886620509 134352339 134282214 178234230 815766399 480426834 158675683 71543817 901725309 747117488 910758680 716967909 709523247 858104284 515989506 765953329 769467338 622820334 438052875 82677545 917060309 235694938 170893181 645244567 823332864 482477068 219910963 499805658 729165739 440783411 601141326 939934909 779722732 502740840 969339065 217271123 365454811 322506747 444726568 489887407 204928935 475371139 148526324 528123068 475687691 15682048 142503399 748948379 730130080 839932501 803584725 18348176 813220434 260078889 421074577 749593267 503559943 7927898 120009180 476617603 771154258 162938833 540352213 656047039 449968686 996764301 723607119 641434318 897661197 754205373 758597351 662721415 591832090 923107188 57596688 824931617 44399892 46220730 580248334 394091285 106235535 827352502 306096177 689611196 464154779 244418902 499368676 169307602 571087917 754599041 493568490 359690985 529130896 787981391 840636902 112097990 280384300 65384917 726886364 741127874 17904716 264037946 592714244 161989367 425492548 913242413 92834804 889288864 518163107 935528844 381266945 609941061 496904766 974608355 350968326 467307396 248299848 607389047 420542959 213026786 171355893 143417864 174906722 255116077 643744783 539147041 14817541 177407547 142240876 573844262 730027761 324536530 531255743 456519449 59464041 13733612 939046087 745776269 256740473 609215399 559232289 597834159 327778006 523938892 549820492 446260715 729206423 650486743 511643597 159848555 472694075 712388202 630818226 242406187 818560021 284420433 47794940 289572883 91239390 583370574 513662125 455113190 452667844 163101763 735442316 653632330 881539348 746186491 355201069 733046340 316160183 359078494 224381819 990649252 241023478 50047981 531149434 391154070 441288835 727596654 615896729 396197281 906873528 870860824 730239531 329131053 515212361 826512413 569066615 430837006 706140655 370102316 96858995 555892769 948797836 712785965 149415638 869253822 599199391 476775071 806917896 616604649 41165419 618345891 542445402 959549826 946183359 963463078 294963714 840481605 182091017 541940118 876420568 512684894 743330946 832680811 221458440 668266199 69677189 439513090 611787482 390562614 211349865 937963951 377237877 900577132 76409411 693669976 903826705 288405870 110068526 36991681 594065191 847531449 944476181 965280240 496457575 98932350 521605851 905486813 895345959 685913343 698938481 737773045 287402475 980046239 929609905 295199232 609087695 484756172 503848908 194677287 240931972 983485241 983315440 928571146 888924768 805796069 507576087 141392018 162747748 623021453 77460161 49684062 777073648 317309985 168888441 959517889 299157020 469373607 439717278 644897386 701352437 651948681 645116678 564754 586758731 833337463 97810331 442423862 796969443 317969184 513343342 250616960 225143836 798002800 864292872 703296360 974043039 97934730 886984040 12254750 983285892 368634372 812773751 939477267 636982327 499060143 946778846 755161824 145651911 285576869 353554883 86782529 340763998 877213486 751419619 339638212 438872304 324926626 401578781 608664142 22591604 491358522 965003029 696031446 768658657 332380133 420862068 737664726 362897350 392349875 791101941 555391679 793097666 279828028 141994629 831029140 648214464 288124186 157054506 870339794 37692381 536472980 329448778 750745790 649126279 511830191 574959348 471319812 6092864 57163818 635124006 187040835 519005902 774583594 411170683 117830945 904259538 945101998 461400579 674598702 875574274 638051565 680535089 986230482 999000849 305392332 211188311 513514591 766451480 293471479 373955445 115504875 761752716 965382674 174503935 884604636 989066387 129836890 780211576 988939305 848977233 363357144 765783901 565405407 349610298 114969014 608432886 617640733 793938060 551128713 433486997 977202361 211072689 835803127 613871746 937845651 356604809 745912762 688120249 169350129 32327869 284652016 785964547 721921928 44132390 997334399 913206875 21668231 379507447 977281205 763542702 316997154 177075604 965688757 539836296 750311726 198243199 627556510 437221542 819383299 85189188 864150629 649216951 942155195 779875905 903110530 664530095 531449721 552146656 584858975 768711640 2717418 906060074 470750710 801632334 68370227 674162732 836863701 543610521 862645646 784876175 103367196 119576447 452846420 501459975 675913416 169301032 284780049 210049335 53411488 654566680 813281484 1124491 838576547 117844412 471838814 529943398 394575523 742943155 904934382 765049288 356222432 969601378 764907741 160524958 841274676 307722493 497694476 419991644 50439313 874129223 707919558 322331957 716984723 439788972 16732123 539935519 393777885 196592428 159464536 489595722 468261697 297466357 223580021 63161933 598433292 842374874 99707536 627295998 965297029 790165781 965857640 142804287 863910629 894361347 106029931 408811329 28709248 210219032 790482102 781516143 20669895 312511987 673917937 18183212 796901090 205594615 673183173 420845176 755246781 147431746 341819042 919797419 135808549 358296138 173906602 603278999 889827151 847855695 800281208 790098844 812779579 77907606 7493886 777679320 823784248 740864095 267312232 68092316 491233310 118008997 770050826 842235385 214985485 274858492 478031134 107822857 253573797 462754003 90052113 474685243 529276225 245056589 747371143 204277428 66833899 943544210 783336318 196021609 762768775 405384532 433445032 885400142 448658333 903635666 407312978 442087502 341140103 584457710 808475281 588313957 746143498 177913739 216089228 45687213 887162501 203909728 42688869 584767396 344617184 340827232 732625321 179493524 754075297 7384741 459217692 953040067 913604483 450755878 623544364 693251977 685175666 633895597 528529858 299303166 528673486 741138834 524047468 22480002 184582840 283882525 762922825 555718365 497212239 618123388 157481976 891450604 342703580 73444531 761156478 347338424 527242995 681020622 923462230 415200233 311277603 990813130 69653486 528331943 676920672 705637820 401725079 754558882 707180905 318220756 749243596 548690919 168923657 937817768 775568118 981898300 657057029 652255882 263308693 998763499 164345130 170573203 139290867 107648071 79105796 49928787 943530018 291592480 361902577 180512554 281538159 706074555 962082691 821653584 404588573 609285084 517398871 801510238 269468021 58636083 211413321 164601706 315184546 835897341 846719782 850234300 986721927 415351935 340624211 148217153 845702202 795360796 501112554 571280039 722373562 587776933 198924182 469014140 37073930 841582808 119058242 674860963 105284367 623885470 47381882 489903575 277124448 784671855 877274058 377785412 487594076 277641829 809467812 661998787 991083562 733835374 263361425 164113652 945569492 630460342 107664453 713652177 47216443 783989506 625146587 653766304 351853791 846639427 991606508 385515052 3135984 117518266 54486043 963409793 314835700 141561877 854600386 137075764 981360900 571279122 558043890 378626908 297075798 381314552 180857525 115150900 745797008 679900496 31390163 633761294 300196024 753309532 170586237 138574914 212952464 969425013 855813033 460977163 604378552 819847560 587611745 500420981 173763304 564211648 565639921 863188705 665951917 364747468 158727054 504108460 351740369 813014187 534285849 721418038 620982032 303363746 164559699 922409494 727347100 561422858 279891773 534886737 435943508 818237420 54586218 524199239 350021994 685383562 927035967 644312356 60047823 332434210 958619970 735672261 161020124 703389193 5358452 463837847 17798764 992480863 78587751 439892891 433121626 699384602 317869601 28025752 950986301 948366700 694617648 850585858 668118365 91525319 752376304 995848595 713600705 341749410 98277268 300315288 327993530 456385387 21947243 555597933 638793458 305723090 534900203 389984037 907063889 371135702 488246073 799782814 277423785 669990632 154846452 340128677 272079132 449732138 347705951 477194476 695326553 218676476 921475821 198448204 681120693 987712288 652161577 244043159 31280979 586768140 52027553 694671686 7590063 189307947 945613845 21448292 880841417 788006013 781222187 222219772 151229205 741406376 222156735 770539689 394505515 65829681 296227728 90741586 969153291 52628410 899272385 972829083 307077978 639593260 757537872 401836943 944611529 585419845 261240114 566754833 721848009 40366697 382212092 294267722 403249956 26482734 746287473 360812277 40507332 142198023 551154506 195385485 468326113 58192744 251165035 593999309 169029101 308695446 538061962 68213058 508649000 584301212 582313864 467280076 955563095 307345896 195759513 784969686 411101599 854071589 310422047 194401526 600534360 830534836 232286702 617757086 672478386 200291599 283764593 818145635 528628858 983035588 35328829 667793014 416241343 614247164 395318548 878658818 603671584 705602153 60484223 505833637 285944868 619648385 862231742 596352751 209846557 756614217 225745240 17660025 537473567 711250538 712401949 617307135 635532526 534348656 440716262 203069471 186197749 272515502 578981891 184286286 969236180 959251828 172462319 733398309 848339973 63645710 737203094 525774072 957755776 643845122 89764389 515298577 282669714 833966270 457504922 227740270 72827354 241670320 786206812 291680717 500640485 824572077 559012067 244845700 52897298 634508409 394519376 620736068 517734127 120938689 212341069 217242808 513196945 623904257 647356249 554288344 752765091 972225145 303798489 375174314 632461898 468242240 15816536 922761298 647519414 900686079 439246235 204505413 189327485 322041695 617821572 105819791 684132031 136454393 338501342 666759074 1761474 424667581 440356631 479227030 926494550 559368035 146948338 949202454 784114785 471312032 396610815 194296849 299201712 179790335 929832393 178093802 845156554 270185201 270168506 660719763 249426185 995453928 788377408 251322735 458321474 734441001 357913327 439439290 515930958 250310898 668894241 950228886 117061435 947187527 908310570 263981322 373573859 670199232 91061045 580391180 196496165 875715666 228693873 741308052 299255842 924386702 133851323 536187581 886432349 212915976 577406116 72414642 25201242 777869614 214095946 345627918 990411455 268287855 385930284 439305645 646078619 700058386 533652503 34654300 458616568 90440607 563079942 251514605 933023201 190174020 727474135 64393281 795714080 603590241 696667022 279173301 682977108 652520492 354766364 717046463 119593117 831317549 78917183 708044700 213300475 480728484 598576263 793775048 578671654 890289663 32775971 508376393 55604844 611812039 360981612 940232970 943682289 436738701 113216705 840571173 362590050 836424087 40029215 91450665 610182367 194841122 473623337 556942505 394464524 916343934 572768285 579464095 866771852 974805224 546263001 866975941 890317501 453097704 862262757 480354825 80725377 240489103 189020 425121765 516325306 265755574 846803079 587827009 331021498 906556666 245362053 36222157 762681934 505703823 601774052 701550481 791055333 61440137 464815633 488157912 785049294 316268703 340054923 421214375 947742868 247066639 342615572 976578776 66089515 876503716 721547405 507231551 300668376 700174140 993338830 299682809 103204538 707159521 779992847 530352443 427218288 355563623 95847660 921449135 322427410 652806694 354986697 18910876 119150652 887130703 264266900 232882281 348806000 37586688 227143188 333961479 627608672 820627801 538711741 10317039 510733912 398443978 121688400 906601735 858641796 503973544 521867283 589058005 426415894 726103684 831161384 199309139 614482780 420270052 228745333 115866977 849818846 981813382 226213213 298211464 314329746 53599170 2648525 148475291 653204692 810611554 794722210 930746340 693107711 695858947 65536583 832973438 753969460 656485118 653577279 869518949 206013234 549437528 902281990 954333587 804069279 728240808 727807835 835000071 682603283 798376029 724179733 459509991 179294949 735513006 182298130 891211698 145493563 104260850 344190377 590674690 205131799 397810851 406819287 102136992 628113385 31241694 743759453 491863892 783281927 902000333 280893094 580115642 539185053 778434242 972471898 11295169 304936939 596032034 347500220 874662713 704217638 860830233 691501550 919170225 147805760 461395022 971365302 371924064 539885502 401663494 781541350 854145572 100603875 882430057 43464877 617097053 379792272 840105089 26039324 650496434 759756188 883527115 495388541 684068722 654647181 745786410 623118048 419567247 867944136 680134330 843171451 72633850 669304410 477568999 221060092 971323986 800636407 319268488 634815065 35541727 359300344 11495395 284219667 859427892 174436479 395056398 255271364 54762121 208675185 501031897 247506036 362800886 36792362 354601691 925216673 276994155 800952469 561137481 171080730 686497403 866734317 623954526 606026578 189393936 923252080 462642267 618568542 413417295 143528975 932441516 958485371 411206215 420587369 973805149 818391237 322165610 292536732 934553827 139186081 99034975 63692326 401709838 276193945 566227519 261255915 725576753 572801893 230639353 161198229 900866237 943503486 106250266 128011116 77296048 418758369 279413841 64753612 931900222 950180448 373696636 299406234 913441869 301106174 177859830 498980256 400763541 39907575 73803743 830984997 549940113 260911418 889785857 856756240 890012680 820908188 785990328 621169954 837710658 603657848 321029328 320525424 36137538 678021543 451143808 764197883 397677585 410140877 535278149 731974333 721564378 751764101 129977950 103776562 989307598 587913659 461412903 239657283 329234368 941860514 907736761 637875052 822690546 223162534 977908512 452527656 284880668 951270313 314704526 281337603 912041838 418411722 65184634 906951950 153327455 13473498 408017972 918208453 667385813 592931264 618612309 959588760 635607963 643180028 573439563 94319387 53372399 573084782 877171589 117753808 127368548 581245477 752535438 857238773 348559904 189787374 390366497 608773933 375555184 176598931 476544392 303569643 858292138 55020828 597263625 797656192 968449565 561294361 726609784 408595581 136870956 120976896 774651457 284514221 654220841 230810311 205233180 239901998 795178440 346417621 712305446 198374956 832562829 807683211 867930702 615171884 171692130 215681149 482912847 45121246 705805257 202854763 898982733 867314231 134943955 635920161 324807512 786371512 361120784 152979170 184929079 393131873 837433497 45795942 371036133 917041945 361965676 652930902 379157468 901864044 837986082 211551983 292723790 386244929 649164389 245563414 825707739 767327874 855807885 522645825 861330813 631276554 456173567 397983402 520029163 110370787 883720492 255201345 17780125 867173076 978750925 3028926 715157231 576451090 994942864 676113505 333320773 26545750 548488155 475362165 636184447 794392456 267544882 924044093 748226617 722003630 795314832 369764191 783402945 104005783 352900946 474162059 541693573 214888540 151520855 342498601 174277265 660353144 46118225 997792966 963125153 42813221 887142561 551050006 894352604 617158945 598948615 793038839 837713774 31437397 800765840 692493130 179168983 309179238 926079575 703274433 462299069 425311882 242390925 618228313 774559092 892503943 413804674 80727765 98949131 79735148 849857406 841864158 198892866 77309445 333881309 227122522 308435558 770654420 448422882 659902234 784624117 258834491 143414577 44413728 415710667 930975398 970692091 698693735 759169359 631929095 977917184 269952676 477134000 337459060 373556990 590175914 119808141 167475604 634240307 170151369 600647619 956031890 173936208 118920711 172082772 807622009 45577819 669781159 466918159 421101913 840392622 375974003 105233694 533292043 626759295 573954955 18346977 654168427 848821164 610019630 73220385 22205831 79093106 975481967 274687497 394937937 123707370 310331802 582242392 168093964 665597383 546308517 24666703 42735257 478048720 262832477 445823013 495664014 71909771 819472180 192886186 190950452 807740193 856434384 220883440 635911797 797595450 658684385 416510159 855035767 96212426 835907551 17972212 978970322 64588068 429415587 415795411 764250378 712983490 783637739 840593166 144774723 26602721 642189422 271656886 973430772 117972968 10675013 386227033 11904759 4792967 373364043 748012263 379539273 373902602 549809755 304137970 518831250 310879215 311358178 10712757 589034071 589227436 201441509 279659095 470493331 359798631 782939764 723244023 653909414 937811382 750414302 105933033 254551362 290488703 388548348 649338542 90686808 542061652 730460203 680989560 810849750 684061559 755565695 331791986 93591466 231251692 594501067 259414455 607082060 410830647 744729841 155327058 943469631 830705249 809366906 317859958 968535417 887479079 420201215 223698981 120013085 687163562 612376017 865260019 620805776 496015181 592107517 972880696 288739470 808849753 534264353 483977250 698164012 26264981 488477394 464767354 412073419 948348410 10320199 278392512 65836154 177896808 123323894 786763742 320302032 727402289 678012569 18466929 200098028 778587197 461354534 878916268 461491146 326499226 900151189 83939533 123288299 833362462 407495562 113419062 477320837 733277215 852975771 542020048 591800321 551447777 52434186 931052614 7868877 868832063 451139691 354903503 466132847 342514263 980330645 287908884 611370352 8248100 928839076 638443482 403238319 349371495 944495063 174601201 780916879 975070831 324237708 239241875 626464209 3015579 17703451 212948862 147098857 152403184 56777817 631818282 455402245 589975553 922363361 135203520 5447464 262954213 799188464 428126556 408062168 334343235 773924083 522346591 127974161 279246679 674081300 45710842 784695411 207676718 880214876 461045341 248992888 109429387 541272872 521049570 734228732 645554590 40836789 679999790 795265030 359448112 467032753 628075349 50178778 394415356 232821878 815480732 211453070 784713656 555659541 591370901 659482008 892935818 422585428 491050544 561872620 875386958 906612174 247913415 201068136 366537920 798630402 755117872 618499820 758771717 615662672 162306174 994474944 534356097 894379666 176852878 727681222 314264630 233416476 285631711 449364481 232005412 823124978 141751366 741302665 650949835 809184055 729908352 950774648 902135424 136170511 922235415 160472871 521214277 382101828 721544710 342676404 881941721 420151101 885482478 655509352 541753770 535780317 623636387 952986903 363424493 591037591 413330080 345208741 657356838 912090201 700877051 696300287 983132116 857120930 791923107 87851778 696400143 245802512 890362555 656383707 366981621 98090868 655033049 690839248 87591181 582600853 87769159 551872658 816694335 744376881 895312849 700390981 984291738 383883203 542815778 98795135 261442131 37549496 766426688 843282269 244498526 575508110 56028254 648197600 341103903 919117756 253116381 843672558 605612058 873584017 469028082 680938955 872898809 928044027 370343881 290805774 217139473 128596495 788053951 332731309 114627396 51752912 658249398 781490375 378627316 565928330 788977456 60496184 155914439 938497585 180560075 798294971 296564992 944506420 230873650 205466027 838551674 334473734 773935043 672169217 236850168 27015031 779006070 969839135 343989513 887556162 517793418 299625303 587093281 111510927 632349369 228700171 317974684 807899506 522750512 568298443 916957727 297245199 648694465 78898454 958203170 718374452 562218056 784704721 429061715 656699538 498500301 994704623 920350912 149973412 818609175 868301109 762397291 594609671 973551657 247725677 539654588 602417244 937891751 417570044 812330740 88810839 41016886 139482356 913952968 558124617 718421982 500012001 86059396 539842444 289962595 159474136 317757653 245568932 398317034 871417828 680462071 195266138 752861647 916802961 550959554 389354181 892128560 277674110 413295592 597696938 208857472 766447075 562729508 130252908 542414274 48090441 983662067 45332696 975073289 218848442 771706766 539999920 826340814 927997890 31536239 467691360 371332509 673022780 545803451 443060804 653004304 114874369 897059061 607136410 247895450 429205386 291242503 322480417 408016287 963187191 184202233 13397983 605084183 770687006 189423994 455584426 860746335 743310354 379911362 204085158 344670412 803038869 16099611 147175680 560091265 611964047 448429050 666743724 823977205 121104423 160687233 743306126 507446598 689900797 294278469 543165466 603968414 505387326 649950908 780142481 205587758 684778720 4158357 858323074 336870015 774749295 318172620 203661683 801460519 985637590 884997692 780430410 685404882 285293867 47008722 444413434 971793958 301405384 636388837 237397729 681656007 627087362 57956853 440362405 515644959 794736227 798884790 890394090 231931846 531229848 723781541 53990590 297042777 970266758 862081462 774823867 103260876 534512031 196990101 955049326 963957042 548586842 288019734 502480929 533555873 802962281 297498670 137846709 433992587 362383407 539000690 647300609 458541067 320309307 58160992 555767195 454554199 702063046 647183931 247843098 117623611 289230843 590877066 988096195 60122221 622630981 916976521 890040402 614676681 661868133 392224612 228059988 29428544 313458954 11852043 124471946 416430724 703551379 175604928 710464109 679302707 346130797 210572341 912557448 616367721 280214926 877996401 33678909 129026006 805394077 838137792 575032593 654535450 741445380 217711102 24507859 672776595 967507258 18908662 89335414 29799698 134008443 717054804 742298654 18072039 462284048 762456608 248391829 317716225 407632933 574830461 819981640 103253942 954021227 636397270 736942357 427769072 153333595 893569778 362035580 530965759 350727711 422565230 690917023 81869264 559663595 566042693 695860685 290530187 842303298 814913150 748432497 204068408 293587149 885028173 998957657 626470041 158151832 735744288 764107390 67603133 660222754 452400015 291513174 806674527 503977481 198655962 714307496 640905404 285072112 191767900 580871297 222735132 28065919 446771707 752525850 103731396 145491325 311748836 300899039 880096693 758624221 759664104 664532845 921880377 831795316 292287165 991003920 594490703 865819693 55306482 94786748 224166570 442528534 836578018 515723750 621500611 732918866 808335097 481044188 972218010 828163763 565788698 530293385 524754646 791387837 398248515 891474932 18820459 990164174 400419602 100821890 299301551 176631146 419565273 930964751 950561805 377369753 773877360 10317860 858186194 928247678 517656311 698809756 266683156 496809935 930441897 517937277 857859734 485361342 677757024 271372115 349175673 951981813 336169516 728603875 866683936 939990381 246614313 309435660 953011868 520079454 458773481 598624264 622229014 40850389 514039088 184734917 191558711 703026192 307472315 650954151 616117569 199582694 582036487 15131098 659660955 646221264 728455462 905964380 659936909 81112232 635370199 958739065 320284758 361013771 691840390 400572576 329663201 900770118 724597246 1628622 945039227 489689896 192004171 87419617 862626777 270043861 348582713 291935389 724783502 914627655 903567135 619115766 670052311 843698695 620868019 773898966 125635539 760926538 564234502 998672166 506802480 651619545 153150816 973398437 354781768 865303128 567238552 440492532 221807180 346183789 377152080 433510815 785216659 308934516 40825885 610215967 732645255 8785325 162211203 443151105 455004615 4362489 686999955 498073141 416337234 674085803 441064362 718444943 145051423 637363409 754978561 209500393 830908177 872262507 851700522 710531947 219085952 363136855 610675289 654905217 996233066 308958974 680742560 201392471 222331916 131722490 683409725 373024237 665446582 515967832 233239068 917571778 706998157 511815703 912945259 95248421 896856260 863720330 111981317 16414464 348613304 875898658 553003294 463475708 141519703 161740196 187843979 263593378 365131525 48456788 825007425 985766372 511891754 389669159 69110722 768883070 475809582 569928165 648549600 553863911 876145320 438667422 516615717 901902967 88838512 433011201 891264533 65905832 224704372 575482839 45213017 825453199 651097718 566871738 157416881 500946233 343374708 377288475 481416079 443586069 111808418 812968080 473739594 700534377 505290470 905300397 676027685 273954286 662425220 977550742 758716685 738314574 405834740 969720992 827844184 581163130 777580739 582461113 755011587 181913987 51478498 285948596 462019460 382888866 869162432 35122030 785381227 119979837 766692312 209019010 569839373 895568815 434144885 147850706 573966821 246611916 633365077 480281962 568391829 944744024 427768309 560821394 965382691 588649885 584001960 378430347 754504565 46995996 580449563 685405851 358663611 613251621 319094784 469448137 878454902 514523079 478912258 332004383 186980316 772395388 209958608 854500328 395600295 642806175 321818786 765320728 829379210 921858849 706692761 149863652 201246461 789219229 611764455 357877386 988805466 449948396 838798687 319594599 312028965 759783115 997758941 574046792 553112965 502473679 541283044 319177859 32541804 176885829 139419523 835324474 15066823 923652230 152845176 939479626 235322759 39050516 90405296 530390370 831935927 375218976 874817150 541482663 201531763 256949234 115082417 907205283 150904761 879434539 870354946 325772979 437792116 66335138 573988882 641156918 655011790 484357027 421071014 347837054 772522326 42140194 294924200 801603003 981530903 420473817 315723300 429611153 873871890 489313213 713071488 458400872 323951274 799810204 358471277 878739293 397543040 464801459 919896292 226138691 965553417 623522340 401751763 935772145 813529864 646681994 840835761 248688791 10560939 591768066 706404570 866583460 776020356 755094121 740264546 169943868 742337639 526446328 567630866 671681027 16769980 417038618 70980882 102338573 359797962 551757584 598199337 787841967 379842680 282841089 708984789 341833568 158689677 403294024 839350468 926730673 336343529 847874618 180483318 177888451 539336295 133736953 802567359 542655455 234934293 221640921 141639972 638168250 18487830 114564921 128316813 732495336 353513114 340149079 257011446 748260654 277562507 805008056 239603753 397479922 199650512 274509144 912778288 540475982 583735694 188977293 699787210 5629884 426709104 705660571 757160410 703169310 254641168 654767876 722556373 197218965 382712729 770353843 83835417 874337192 633121512 514314109 248139063 464646776 820466082 970912959 956471991 633934912 408601296 508946649 185304578 392239000 295183575 225556513 329462444 615796000 670640378 220017547 716988885 828616645 338068940 725032572 348452683 914093572 148457474 286639779 991002801 414690075 64658569 732780796 422327541 375563605 211255637 494607304 230627376 786152919 589664239 255083755 821170352 836362125 327423235 86211353 27089963 844171051 594177078 869988715 797170641 196251014 571261786 212599479 515600983 340022581 153008715 771243985 435939039 605691002 827644337 206889914 803722166 214325761 4504819 692124608 65359915 279296142 926714102 473068025 958948221 855972169 938550747 826930310 314099330 289713052 9999240 34617083 299716370 872871681 478579986 257746431 217084221 457784508 457601182 694086754 624347009 432451156 645079360 620433065 982791127 170565612 784802889 224930168 675048699 481740454 902706006 632729072 834134016 343701870 823571244 80796938 773073596 62931903 164373478 84040075 180032433 445245278 842875476 481070256 64838162 963520223 949924972 216057640 967706840 217219673 951995017 415711831 145292326 34978239 68155568 774920673 465001483 108314781 836483725 751048946 617437447 844366707 42290811 593685637 444087245 471825216 432516213 438535432 983034984 839346461 22149688 955957287 695541228 754781606 84310378 215138755 297072223 663558679 247098148 698161508 715195849 125250371 498175793 486230885 391054380 763125020 353714134 916370688 117431032 129989904 863722176 753016080 294704409 384356085 304302308 133467931 876382389 711878161 740301497 117987714 42774333 813009281 194541191 43955116 304330797 275685748 109608270 577200592 21974746 580578259 920998452 404468991 505867028 65679524 837620847 764001016 2757295 797533196 653765240 756271404 215253385 646088751 223606666 863262250 519750761 339603693 643428438 349902199 752031195 90438567 974684247 31853795 599325668 86346865 345151778 578170465 650229933 43298954 956905060 869167903 610728418 73084825 5788300 525880980 877777511 514664753 864832472 143929422 18003614 957421145 638227965 290595765 937501429 145089899 833386428 996491509 228776593 359362675 655102875 787834744 111648302 741132724 857230077 212266092 940859912 294502927 28956936 566896751 684628845 176519063 990643293 336635843 507009671 951759648 885073715 542651787 536187175 311568015 403976246 397856728 383317585 734798378 984238381 802364449 800956482 167092357 762384963 68461090 901015231 688804039 512222096 19203355 493513533 150410060 742130017 440216993 91082771 721937826 889082116 799253770 642523202 176304733 726778465 669847978 761406074 932279918 626212957 763435823 878678295 132676811 398186608 466834214 202046644 226219846 88753820 833504445 838779743 584227508 292078438 459740665 852396948 519423613 121103416 531202960 237941813 958875319 73431914 767473604 203546946 685778534 720484475 353109641 501941636 964794152 969007387 370735911 836960495 210673467 103100547 518325272 918070782 890134102 4265374 442611876 795653274 201044921 280994934 396093651 531669160 135392478 738014397 255294077 501111325 996230530 226715800 492117346 336630483 690708968 649386493 349398576 723546152 561505616 642540268 433273892 300470564 741886219 694900144 723791010 718214059 750209169 728916913 803027330 696288669 134866616 505731045 936941956 192377769 540678156 102317658 786653418 15319593 543108219 989800414 108290089 960745409 2026750 8981179 701094591 85680280 14019124 672271949 720741172 458903418 407817212 915487843 415273664 264088000 637654358 544203311 830440666 296483374 492420601 20482279 700267432 62691140 658555829 914318760 883114024 503119428 472252134 625421981 324815384 514235841 569940387 32757084 44362676 517166889 148303885 551157797 620682717 62637635 108273748 617533209 845421630 852309268 793364557 375465256 422701265 609844589 253135912 665982535 336139613 621360892 312740814 560741485 359682303 663754442 415695511 459410639 314221173 995842967 984098162 208701204 468197884 761154668 45180309 2503310 774517929 174095357 458614652 605107987 492519484 703700009 760629702 303087290 70092077 984042149 995527258 176771855 556530061 550519620 779053181 108711574 521138776 821946141 727808395 117143222 176239953 681855471 383943863 821554881 459375823 18648658 625507316 665383520 355616079 991294746 935210904 883735433 898501465 204231492 142854656 464442868 243590560 741609713 265372614 372573057 594074383 490461383 534883374 955503962 540571620 669076122 389666691 480367625 14037255 849193133 526373540 305909782 516852740 12019015 402907858 54070527 211015008 499156016 648285059 983187081 70355656 998106291 128956977 224749574 93837274 862232400 213478929 666764677 711351478 683888887 820458554 887477963 255378897 724142671 321238591 917296570 817603875 406908541 601002652 73536715 580356877 233304096 271997962 429385461 502461984 739757665 860727079 209672361 802142995 34116614 725068363 998244030 696795027 171451996 226745033 708375080 425581674 261613791 794736751 703794927 728086803 638225018 48389645 89000717 153234614 205953363 481305158 657826755 271248814 730054962 270502355 687503348 274212627 921191662 838987993 944581745 529958594 303540239 367041057 391781630 597816610 335017349 542576368 174838510 46639292 325849570 220389423 997928212 248855666 93364235 228788996 900814817 276948944 969870447 707077730 406943602 202718362 61984989 799873791 383249090 169451025 623915080 571745282 931115878 784827940 500845204 353598837 251300689 586507067 548862378 677539408 879719399 57549997 168787798 744017139 504559415 195356334 208883380 346845538 57988011 646946049 210755901 253129665 28428721 181684204 508272359 91984940 62217211 848687333 945912364 40084568 467453328 173684465 697284359 99334481 897104940 669188309 796106169 425770338 128634434 625617285 612530805 159453338 246888265 893597639 473914347 658314353 348972457 71217270 768383140 430373169 304760402 318645363 618506275 344517214 609826534 577395423 570367059 241952871 652474751 583955719 111392857 716300808 903570964 534945368 189398268 512569948 617877831 790899683 357105473 394862903 923254564 18585385 360418692 388398104 681761778 873680209 859279010 671267900 988710897 800995483 838959 256430154 91651964 365978051 431117092 900050171 605590559 92495047 96554910 668061755 37384964 452909632 224549547 665739615 747536179 922141091 719536263 223576131 183803637 252555859 300604875 581711231 280749861 758812329 874275049 787633631 164574840 152932533 417647777 450272787 899357273 190980431 632637926 277580918 449539809 451206333 466215079 898743506 131753733 353004744 149296112 376321960 553320253 735667052 172716920 10265267 858430435 79361900 195428660 735177184 798006426 494364047 660997977 701978026 374317706 111171348 131203395 724535364 395099150 678882879 767031532 840606902 442782432 880343768 171517418 685792053 728718018 969218197 504145561 155645030 889418836 710393531 266817215 840311968 31822975 866771208 356420935 203980789 386476091 726060175 174094879 52385635 974002731 606494122 715366886 578952929 640941702 715674781 483999829 879838278 643585887 797535934 16077451 525413236 589771788 548610061 640946688 747181327 731075635 327632627 192706784 225493676 341429546 581521391 198850964 470657284 343572705 315384118 111799797 125523833 824569371 563930598 361837924 83787625 740187337 269944224 581229140 460707190 484624974 605902954 192161616 676902070 804790526 165128049 848811153 810063762 454459672 366492559 723415553 296086699 580415927 820965507 217399766 728217780 982228045 644863883 860932728 403575387 430042294 356390584 701206440 364439237 425524748 817884447 588089912 507016933 446863778 213527437 789337952 325727851 902142239 994247846 757350804 98137337 843802400 99038758 621865261 312157056 250182168 529538918 69495941 556813176 246955552 710575641 797991012 977748823 541455785 473943408 479911124 932436842 847659080 772687633 751794983 849995285 685226594 82310879 764914793 623677849 457629016 592763158 332285571 588631998 613868371 113117613 566968463 512031343 624861695 853141430 978037627 427959304 733507914 881872996 24138998 553478335 362784591 916166405 471858669 791424562 987347421 279182553 435602381 86053062 579771532 722154704 797141933 346467223 313877511 930627726 375177779 562797995 821334429 542406958 32105036 139481542 368010416 602099282 457302669 102979990 780350227 309710853 932956279 591253751 231397930 528472723 451653810 357663444 224646065 174690759 966546551 581548737 598236109 231464962 718691164 282512978 806492719 473158318 697858050 289014834 759979911 101967889 587620965 874509762 168536381 941300063 636868454 294761577 818426671 176774539 871325482 909543289 554654220 138718159 957244597 245303868 434045533 34722150 556173037 518572562 87636185 206461112 351558680 132668558 902393688 676103495 844161397 751265185 190402548 297015577 14084451 459767906 646707971 301706879 591816078 335778000 711691969 25089598 155812046 55876320 396507187 712719683 101289341 417209248 259221600 445868438 233248490 363412267 550550263 32931104 938255236 64183523 149049399 552477027 446392091 900882513 915035791 820887669 724173030 715982659 297642346 188339013 218605503 274542084 896166525 244050187 93694403 372269724 845549165 512571514 981474421 953591724 359105484 996499129 709870781 579025814 603680881 43740003 364715831 816399680 574281613 933416858 421562857 739322968 832361863 562213746 454618866 155636238 985300074 985661427 200067521 355531572 341762718 234840942 588119122 508855932 670092505 703976737 256462427 300076563 362756193 408462470 640687690 900515527 70022399 261936415 743286371 31749103 99752466 527526762 917364742 978575095 282926769 110327472 256666293 349287704 233996537 553793028 797983795 366167785 245022973 397976393 949849548 664771404 689406167 700553395 202188006 691515769 579860231 273946620 628737698 775720646 43920704 486662120 924502378 959287894 911629605 402769299 928448501 363826903 602804351 16816227 94307136 280047859 942691052 101615085 246488548 329332052 945752701 313151807 458613858 12236186 768787522 78115887 650809655 531475826 150647023 480528741 915263757 780907361 382645184 102323619 363227902 518689554 649501129 399968876 182259180 440974415 947625499 440011423 278473283 253991384 949264343 674978243 720966004 610697691 520846936 29383148 273536928 206539513 509860631 653654177 757676787 701799843 109942866 255245387 824532820 191300954 189550476 978518154 434849901 339984294 515445840 875753230 760742262 612299823 443410988 954678781 715276832 298544939 20033834 152821349 638899420 564953948 706824158 922331427 262745672 996006264 280538835 334452599 151715168 747620640 471036362 179201169 270298686 304929009 561842859 932980167 770070882 493554383 655080974 862683370 138222454 835258997 48696910 479498028 848418061 855859971 361075524 639402428 807832866 508894850 946528772 879994685 534155900 209414770 958537983 49614747 244216844 268157420 626418886 522787322 133669932 902369535 335283205 992002287 928915135 773424446 215004839 846485950 444222457 608576966 229491785 951254577 460465839 828330885 733922024 839122485 70227660 973781100 155287657 172246387 867625254 166726321 8378121 905154936 373313468 388237581 762811229 309266571 701014081 667367484 577424345 953946210 79942128 685411653 744139153 629694818 85859750 964727285 82894455 571948804 300095941 875746838 570449569 157225955 539695371 303974611 683642003 891190389 298946788 419506232 298283929 482266060 971957199 849751187 511482623 514828892 701157812 377315657 303366121 99087382 596292375 378505334 931394142 729889249 58004800 468588460 288906680 26104858 143313318 682961168 879598935 743489216 184842125 820100240 899308559 865723442 302618396 697347245 961067143 628168566 762587350 940750559 107788495 701407186 624880648 578973339 529515825 180366863 634552087 681970851 161982760 296778251 471123522 705625662 116203482 933486512 41210510 244594286 467685906 767048003 680664031 471231544 279652195 900040100 640465335 419890754 92240507 616528435 348617628 388979142 784327478 92910201 154823528 212631217 335232085 962613385 51650444 499424856 448123984 833506603 862143190 944747131 496702299 62370318 321842765 806023700 928169110 232131177 171906589 458323183 457938649 773052414 489966098 723606096 970112134 802768508 865234494 642255494 529303563 546206804 23162663 30662298 275840099 896244679 791930934 100512609 312435736 574159799 816273102 86548019 187052538 120751834 741418616 439075166 456551349 196241778 592678071 557636917 388682870 234196355 255220412 585387823 101403829 178072906 654738858 343756854 994688562 974307638 689749373 92901503 683941730 368486660 18968814 458871360 937904710 304038792 173291615 423278795 679102426 387404957 568166476 539519107 243124628 645117234 527450536 178301953 565657732 507316739 604593495 260029740 369396042 593469912 493480141 329590243 127157887 503557334 994405375 59109757 63828336 566339477 975502624 625813619 560550108 133474730 79307606 626809459 7212987 361192742 640355937 320211389 638296072 943954015 509125061 361640391 673353685 586735251 496501285 572275603 692136327 271853091 500881966 868218303 561862506 251384566 63602518 978243233 607998821 245951738 623150414 914894381 989447434 543903502 156611282 448222823 929096988 514559461 672406836 110672179 177821126 913964247 342640603 366683547 589785886 695444294 455846121 361832911 109875155 658524632 480747200 963839974 857011694 278079361 929530687 915097752 383477732 735509933 745773451 756530233 161380226 348374231 214523513 765883638 690072872 144408261 55886723 580666957 210877865 278382774 392602624 997768802 485225238 859355354 977881049 821515200 468051795 31944852 29605832 362475198 454720835 862162809 97302793 356878334 408573336 590779058 335908046 325160822 236337483 984768880 967216214 634823099 132444977 154998257 879637994 358556779 868928500 636354498 478390374 741878223 728425028 827109266 829570169 80151171 872229475 809623611 224796889 626144210 239128990 645208205 836491806 470637704 397577561 84965203 642626932 32487628 229462172 282619687 635143788 963984847 319954710 170867873 121073184 629982342 785898632 643923120 208043418 688061319 988395960 995158226 255986779 26827166 866785691 546767179 543877597 342387381 322702796 917557543 120462743 874524870 572972947 610752241 734427107 864027906 530893898 430405054 353284680 386613776 785210907 746831514 941583647 49558711 950848389 226373920 479952639 57153218 841029846 50788432 275548962 41626792 88606586 457785525 906063568 940865990 192378152 435028140 337007463 776665691 841535122 414530753 508503114 8573338 244743642 637201666 814112261 695909038 615692757 518690477 911724762 370120949 598917706 964345977 117148659 906629293 985339798 364364229 805516190 785651095 838269885 121709542 207984592 302564361 417117306 204262617 143823314 665301355 362830964 603035332 362279664 334841283 577755066 861658419 777128200 574385372 747914486 660849037 523663874 752367766 866852349 413116547 848838146 498205218 141335119 370526564 19174458 753777394 185407248 807504719 677765961 616258268 176093911 381020474 718173939 203987619 851819387 949935290 985800576 723374796 496386365 519767317 150701895 705795466 494604968 422503671 439967722 145620214 676100770 602450856 256363937 725294392 263056743 18481534 890959974 264950196 902721967 718914996 695032559 178903720 572779497 911058248 78902813 734249333 63434878 745752380 352811570 368912201 930406489 798841542 409059247 432376489 247974801 46558258 26672181 608619758 739984053 464940846 488949477 442689302 918533333 103911972 329172457 942748906 195554197 238077232 687434518 73154646 442373846 639637911 369388677 737966780 891329219 460678826 499158216 134234922 42854711 19757277 428753024 994895582 695124597 27526233 493175905 727985218 746927574 125114524 639891083 170998350 550722505 565557928 264299782 315946142 333450626 149800012 107590166 867297355 181677493 650942255 137564012 84780992 832240371 193906442 608786367 133990914 116762082 6766308 896941231 137222747 325152463 151766293 371743637 154363849 755905320 478748609 375200293 109737302 22732581 333203017 8087565 198707206 332168191 415658135 586062875 762944216 96044229 783960624 219157149 736578923 365030978 377986063 468672683 344623442 155727332 624433599 598161140 55552096 641911878 121950657 207541392 451660381 667580856 295043927 121441175 850602620 283469802 287549510 429699472 576034042 468781846 77298569 345069380 572778747 829012631 862145753 835842971 9814914 414456228 946924650 168550276 323028564 73231944 602700864 771848889 426404766 214019693 736517782 995045982 612678643 943324866 746502577 592842521 358624321 333953832 703415958 380824411 115658882 910516977 837868571 683696475 356307113 766154226 506919066 949522646 201529687 206552221 297468820 604204420 141223500 149567441 457862498 737350862 895916532 923317395 961336510 380030741 28535377 881068066 44660276 581703821 847772475 340375070 536175347 580057996 249234985 841584099 522112227 765443683 386086162 303512691 508294705 920006023 467347158 267267106 489872315 930031253 911178017 707594905 248492066 197409909 564194933 834612089 350138211 329287612 286613225 578572040 694910253 371586146 585667676 592273274 21950681 851584506 124668434 467599714 105432240 882201607 617004138 217205389 236406747 935152230 558694696 579387585 657608021 791914832 573730429 681817414 974908039 419300959 922411938 942668338 75051530 111104565 240227592 213659250 321640593 107803026 966537477 764674113 136139578 885542066 223536850 541525707 135954572 746511697 779779696 174782939 261563819 423938258 583683392 551505793 522150851 892518948 578430611 124649822 4886927 798309497 352741075 258059065 183514962 51092453 602096783 819391453 391075974 69332178 917162702 958764221 552729682 187187043 175750471 902735629 4790308 928119029 762760242 170753338 314594076 428783069 785330208 332335758 854030843 555867768 63001827 375779378 842652684 858851061 477897540 122660004 598948869 843411429 996182265 773741027 360942734 415549963 259400960 727962375 930590512 590080978 542981733 403037204 150958833 40083016 212838722 900453419 862846285 521660950 15818308 859803930 899009876 320331847 313096473 975601549 703933655 221961336 482129573 830869799 251250954 552849138 465441401 767834488 813880101 30259610 675657002 634508738 581703570 601617081 776996258 747245277 296449920 651592722 80880967 767393597 819303327 335477280 547044978 911196657 708868417 366454494 962997309 368008229 702401509 661152407 963049466 404318283 782061343 438621146 748371234 281708639 318846413 408121236 26970171 822314807 736531761 379998669 176753469 45495088 492226774 717524748 326405116 464678845 871552960 792394440 270575772 353938800 552513347 68128922 333915758 882490008 381769735 30553303 99357960 421306555 241341409 831477776 469234965 716638185 169092778 742939934 608903815 392370261 70506112 795641630 681063351 235522127 743421184 124417681 613168978 436702394 584359319 859757599 200941473 253068128 470088985 255218443 327063521 614371938 552665637 82644544 503173130 414155350 985178752 318382311 922793262 886362170 995999386 778271625 709815944 958723442 933056324 38274375 307478583 396126812 725171475 948158972 149951616 609733656 595299344 827495071 74172293 473849544 328576467 197894114 227704483 401906602 499757356 910477338 937921091 105096486 241412940 923942428 929796510 190000955 618781405 545964496 152698966 195328204 99282594 700669047 941375881 660109694 800766872 710907045 487239265 781928397 966456069 688687679 924798869 101345524 708670668 328680737 717882591 426317514 616073015 169236030 99540138 648935697 656284371 302877310 166329517 8154333 50472728 555828982 660790774 28219072 47097446 803482181 218664842 82705094 72678931 371871844 445086544 207649144 632586361 194799874 548525088 948003348 808484401 184101418 207338147 518403730 432858581 539808486 874549726 88269427 112654278 941457012 629349487 436910433 439160606 284682812 471559167 543984153 662830205 529955961 660849092 233512183 314417231 336836773 189613360 266274548 281774550 837541102 463455340 800093049 330075401 950879742 966007256 74825502 763877957 234163288 949519171 730268729 962575128 163380272 600976434 209776220 619455635 886763255 640732334 170471991 327855437 226578830 964457662 865582308 709768156 625731748 685499985 72842591 640739396 988031230 570182311 633809801 91354165 969114281 253732585 246799874 634611898 153913398 129337116 126379521 336174066 797744954 289636195 926190055 149038448 622110995 474918147 145776102 217848235 533505584 187280655 876749989 534498622 437839069 588435564 37667369 100348573 548662755 596858371 705380445 568747416 336640443 216893426 690361878 202640779 27168755 416917029 97615103 454159437 117971755 166720691 268590062 434066382 738828086 426872084 713254314 938195722 114782997 959475419 319250409 502693121 833989188 979883177 389970191 386053574 665305004 567702941 164670841 170228418 994768347 776638757 844349314 423039411 932919689 793105358 863663086 880887927 772610944 719786735 615897942 759212025 159593715 736626651 246376780 436616508 422355920 364462458 447327395 562183604 115657211 697515163 389601618 912291066 373576802 72114010 848742583 313019528 194607787 912992678 122354164 621306254 352745894 476525440 804908425 656488316 528348945 459617563 163447478 163662738 719042751 776629729 962730800 388772260 464611081 796615367 693282532 744557443 361003596 488953414 476055738 62307863 289672843 117266039 625063207 746126246 764635644 698460263 225688577 303657876 765858321 182707058 369667706 572347323 536958887 770270799 201167061 302016999 662549348 57739771 849980248 934065033 809148486 677817007 434840689 592167904 820588794 714166947 736778320 946022037 812321625 283272136 51654020 108165747 202577950 992460336 539147229 588738056 439972580 368357107 347125753 795612362 809111542 45457539 582892554 907664763 691304877 200971106 141995601 163485740 71157134 767411552 714706826 100232397 563595133 165150704 820749189 278939193 46246295 739579999 603490394 711677072 286154068 128522987 802709517 890110732 269545817 717078153 329663568 92382991 84365067 203193886 793685318 848772134 144777760 550359242 36318820 543739109 23314880 442979855 944889721 941337863 510220107 230843987 52865305 117048924 751676959 790254405 438861836 508973288 775705862 33001139 646165939 733956205 74152739 526845531 574876573 567885337 414863262 314510872 156466371 453672280 180438719 937703491 554019169 180387344 11882030 795343335 502134520 759629005 703893124 893804272 282626313 565859834 309124541 899273314 835942473 169570711 891683111 684152560 616210112 952598384 28917455 776812475 449452014 899748626 231135987 340624413 526503227 152996545 399082215 98974607 288570222 365217625 31794719 621413877 328075436 524120167 662623956 376428352 66564761 254903548 404773352 308351582 619794925 944099569 879995656 434964215 297222478 46143099 33731367 524354771 486087928 370164308 808324727 762394769 243175258 666940255 652857192 616224056 591526927 359414079 741240305 74029331 281273599 982669841 345692423 169688793 440481554 101066980 772288802 837059723 269211415 703301735 758871556 404628138 964979026 888070212 275217023 797339075 437630488 990376482 518943698 913087157 580577788 753147612 400885275 795656194 121078848 819964531 896598562 702477098 519815463 697044271 933436541 834256886 549288524 80800544 388862501 198872516 804557799 512094207 999361313 147150754 499943708 217416133 313512013 948205969 557159586 241575012 290163750 860812974 509040281 54332299 181207520 253386491 807050943 769325142 643060048 386071868 493870989 165383919 662000363 223570036 54917662 777682174 882015696 259950209 146926054 262412475 531288753 214437577 110579131 81258521 71063208 484285820 331901189 411825119 627178250 111628203 984986717 458732654 250801758 102120443 336855245 529373894 383069072 522551949 519462714 500544291 536892485 408296810 474082151 884894939 498600368 396364528 905310501 773149435 821517661 668800123 150610189 537198630 675334661 452559947 787585523 751349372 116872846 333981287 678022492 339482066 645106568 158459990 820864782 397239164 943099621 170126797 776456880 317116004 868382121 826172313 371399804 426076856 157939748 724177883 453953590 496885082 370066778 362236387 293415582 133512901 833333304 4562946 956968376 234699677 972666994 992886720 344340992 80572519 663216164 173044045 488163742 915935898 642463409 699802899 567712367 27785689 371995347 597183822 556575742 879658200 506050400 720167891 307406940 578027541 302418050 943644747 147734577 98160951 814932207 579386606 385272963 899396977 630495792 415449915 444011827 841723033 662482782 101145567 333595234 415968961 300996279 268170522 711081805 932095780 596493321 361087007 88487713 569781586 444284081 454696727 767182974 884794814 137133214 569797078 767872141 966577198 590044661 597858445 519399724 265957522 541939973 161412110 469243647 410822633 746410045 426560305 374373909 750520412 998727876 982705092 715832476 560290311 703637215 393436710 628479609 265863363 192108386 6329968 367264981 906149462 279279835 496408015 537073070 738994424 325017398 172950323 484465060 799265176 527455102 705786893 313568811 540028586 457523570 99093497 359944674 126704325 43825035 313361781 724669277 848963910 645483429 582162211 637249749 508009100 698311728 845033239 889222463 634923217 500650349 971848433 314441151 91238903 642758711 139268254 145434646 713347446 670612850 200194419 948358331 685544995 705309492 320576786 43790739 417438434 329739531 473716753 757570887 231450697 12981731 373574918 816793144 541066243 973340957 719614848 163946258 68292419 415160920 50249591 676557029 673467920 707352457 43041367 149925893 192250744 659915915 744653811 57584840 268832361 904790050 931127450 424015535 691122318 742420916 346424222 851801149 978566968 475048521 777634489 466788381 179279272 280839393 760849756 858393638 685865177 449114766 122811660 953354894 403623123 999670189 811539337 889589338 21540665 935847987 437341920 662039420 172549448 742152334 808570941 559527890 897714154 506380341 707385753 59794411 914547597 22300802 955880524 665351065 972270368 373045290 259921867 574771706 187468286 809700264 920240360 199829525 673390195 418392087 650953845 540501531 652192756 453163391 234264366 123455394 232354637 45651702 126840992 959128381 726641299 647701259 96640073 726831529 598015883 797585923 649409978 710907896 157493894 405698171 415898546 938397445 475455041 998442573 245258287 255531332 61473548 140218561 765493146 548521310 264690757 494114190 152975358 894572143 901188679 250016171 315043232 817501412 783631338 969910475 74807068 167981769 166774687 969462586 383262836 948379189 962099089 84248965 414448025 743439389 653863665 427286929 453676405 723892000 202044415 417691504 830966 950749252 611932372 650639825 974011687 393386678 770770553 433548066 537767194 668278770 485793666 696440741 978748609 587504508 319129073 702154273 281973080 164639666 661591983 2508170 707528692 97742162 775484448 966729266 745706283 534224176 68175213 706568474 632313862 106055869 811240582 8710713 157606504 653747133 399572003 758433048 40686767 833463471 337691439 3002057 214357969 654385023 941562140 240949897 110548633 781172305 920169210 221787760 735564038 521410834 626586601 981585478 393667363 996146864 556059970 486795664 798377059 673559938 641791630 826098589 122801370 282537263 93282019 160102255 399927785 107814756 973725593 540485416 587983731 395428568 859849890 990345382 974889785 442458035 869547974 593294122 842015118 843298035 717059689 66494456 90832869 884021897 926161984 736458216 44526975 924417244 193894486 941531360 581719127 970769239 973352253 625537724 207528568 777245632 561117085 521418066 54145958 354568263 110873174 56317426 992953181 252681311 120172499 970663040 515333309 780727446 845097384 646780388 753941577 789918944 434589368 315768067 132839269 675355636 683044567 218965172 960433794 293232745 943014780 671731342 951049608 668833995 453023490 84445828 412229060 571327891 55598937 187018221 438235638 464886561 391728050 791844952 611381725 407918681 172539279 634200877 864810360 666258 825417324 853745468 298415989 112459354 947954122 339400817 525386042 130885995 949867692 482614514 256999586 680984826 598213538 478091427 854334477 527093074 974912890 345885638 457433753 657743027 241364993 554276401 811576198 940835622 217114341 927188094 590573440 635584327 473608640 594494197 581043131 246479390 395058189 994903721 431809634 242049526 348139035 823956500 538884493 121445144 348297469 764500454 342860882 942615119 110319687 500948025 937127154 270879031 196025149 800801665 947331559 979209041 878452416 851829042 383319394 451847472 171897779 542830583 426065504 20521855 23521200 941100661 253106623 731024956 671851742 449367202 394858641 730901730 262967115 348859901 165920629 948687229 999317209 663135776 988018608 755010625 410085421 366966655 294794073 379110706 410733527 200743150 943567024 467533819 590332422 372636409 278675577 483714496 448549519 847182654 588671886 5091418 676683953 650282973 762149945 629428493 148764145 640466735 883852599 116840939 626002542 83440518 32817225 330671400 568007957 477546366 535045323 157162526 153333506 69894669 76018320 753736196 505329386 10337762 871829929 747295949 527427697 663593463 452560525 475246399 576192372 268507576 247846323 420007489 943287216 154318800 100038736 991392156 18705075 273082459 216359302 488836266 997430202 227370778 367633465 329261036 902339372 637890682 654941876 620029199 212658551 33672186 286315057 511904540 745953073 258598732 615500546 828215693 648288295 993868032 352782738 643171649 237780731 96767035 879737349 645370135 962330449 478279029 403400825 597478985 435539344 813220400 467859153 481578532 384630867 246556575 296902660 661375359 394357276 246549952 993861924 323721816 701095149 400456176 446576285 639580166 242455191 815685893 494234269 615998182 56345139 112781469 300153652 181137919 705526506 15179097 825931441 671202042 684581613 946583994 752454381 161151814 866027785 490528903 175984439 139815310 812146733 322244343 529644255 863122756 697842512 742902353 355205898 174672030 289192711 401503442 842057987 472436658 608936941 711843064 257770035 930064543 343710545 997667173 117521727 611083305 120898620 351568328 993354355 950660553 683240409 459611440 409914615 805528589 477875829 478729549 98257694 793139437 756242570 11053788 365316298 439712166 733030724 276710741 848807076 769118444 794857693 451122990 936404208 473720862 885153610 838483297 465700089 111217493 240189465 634543394 581731580 459760051 914400285 150658183 478048974 634431848 551048394 972342027 922772256 314015218 452801297 589356267 339794712 561377804 200284564 909405467 890183725 146711621 863340391 978272145 37761037 227425466 900399080 81410818 421582869 74598223 256270558 903040540 373044956 339367552 717571715 550838593 134075255 355272443 925972526 199560050 133241563 76937246 525234603 585272904 989116800 85598446 580003488 591142573 31634548 594606182 420841550 4336266 158608608 450746014 86580043 235901666 577429177 962298753 478651206 654477832 183232985 705306655 903162162 94860337 335535664 708312321 368264418 943242096 593565494 524222322 51056175 445796855 49370578 359993410 646627971 785088809 155393042 130143428 222166819 49812290 683219503 917967770 371331231 891038639 300980098 918759834 57592840 947029847 312408665 971054884 782044905 728790451 585395598 184076783 168717806 971183429 947728678 599014231 818443350 366423572 659671584 108179320 46467163 287475393 989831514 325227508 512488951 277928009 439889091 75558738 588580139 537261532 355299645 385550317 98276495 123757483 288366060 205546193 532620576 411427298 964366941 455163634 627547346 554477863 811380542 696460442 343606035 41652739 698021128 65256085 356745276 593781590 972212696 567312897 263404822 286758842 135378695 306787664 539853345 131729441 126552104 866043513 283256957 368656378 356930717 46883394 477126459 370470706 651424793 848988957 573513625 701666916 784189291 590508188 892047819 912792754 372658209 302989379 781889814 849590312 999333191 822023899 390566541 332397246 937505762 893116347 506858736 593726908 383728426 752070891 280149101 667256081 740595790 22375741 293613639 318508250 986284468 967850985 292611442 738191275 314141195 333773332 656455163 154466812 510010664 840699198 159878855 239796776 80224953 401916171 223492817 557049730 134962340 702037848 311500383 615407886 928091656 624372185 68652891 145859065 373330483 365208710 984223015 960444408 61394634 62171469 474502581 258082966 4448631 676588038 731422978 44721088 992298820 172746647 683709341 839561472 378106272 975219552 12022473 755361275 604644441 53988996 988862464 270956361 923377795 192821130 243093820 77080883 533706324 675794942 725834111 873931586 410407390 711218983 710999981 940554740 203052406 250446735 637281487 140445072 691906313 100490552 845245681 630716266 574237730 150393445 215931618 571128206 231986763 506426316 847801436 519167191 981904460 849666863 810677030 274128963 775286698 165366055 115645858 812379081 631782009 764519932 167024787 158256562 470042983 29006964 343880408 29244201 386271581 267364975 227391807 672889369 894928774 573638702 885300437 618399655 566335807 66853483 837252791 630411475 166452973 775683637 373653159 137536843 615993214 614521147 228456099 506596724 361054996 748715398 190979390 749055391 798342780 359196817 540210932 516647855 549822702 531010784 124249400 237627309 775269980 299212086 602323467 250577796 75320659 868881549 73933577 314103807 135430417 865238298 66211896 484214035 93097033 141217012 211813069 390457357 755268936 665999850 631546837 321758061 175008079 852025799 340834965 158654023 499152104 314514750 472165970 535565581 246641360 158305386 137402308 357383861 816519527 352163763 279135234 450606068 376375464 359164279 511231301 823869326 887784345 954367770 94663302 485462424 24692837 599884638 291678913 339238022 730639529 425074482 822134877 908424520 928052673 212129755 597728017 996839857 160404563 599872154 721211341 700719442 387977241 594607038 129776688 418778629 466938017 51948947 786178065 787719387 291334000 110358894 626945665 824959092 136158366 576407612 466928043 388414417 427953676 711079410 590888209 610028048 622678045 867560675 143578613 231078201 898635377 43380952 914826826 514607317 335888795 648226643 537930445 712562118 428939167 220189848 474211254 622037783 119748367 128373880 872645356 913038269 234441378 19437277 275800911 746083366 904762655 494135639 427542181 530928430 633235473 47964848 722728743 88245348 858331412 640517026 679260505 6666121 759404118 407125325 477197902 416340121 812952306 319552818 900176889 750971731 589495875 753476374 489435828 119247871 76646192 966604553 914220312 759221685 773368892 25169532 420085099 108718438 715563882 187021875 140224462 211185961 4967048 28845433 560304409 868231391 349526307 53441369 29058036 32792342 378857446 17806600 167733989 173059683 135268097 624180934 742369612 422219381 966462130 222681484 932123359 988431391 923295194 742088844 380436827 550712514 162498180 534144129 840844769 624020968 197158363 923569788 278076165 224464170 459569813 828959865 302722107 125345849 901816810 870919180 952989129 303264555 40180424 443896565 831806885 75466632 569262495 886082585 221026980 590039387 799755595 668507179 975529539 141966768 549845837 935253440 683224727 170156601 371830453 527296920 348862563 400176474 508444599 563337572 45180362 608630162 189873260 263579079 563367977 55175265 879919620 620001739 850325792 817835462 837670382 635590787 242522915 797177017 451738280 46790522 940474819 66819921 897426575 415929884 744479285 351205744 263731059 512794827 586621625 779382805 121096503 850422107 437918087 901335961 462671080 115759060 427316550 498456117 552437889 922286187 60615521 501601838 437430878 636343008 979190862 173358689 781253677 492855940 976849690 999828346 403363093 60615043 839715160 848329441 746835157 921061084 403455366 299767350 749595464 335676374 946956865 56589005 386795327 515405297 894338498 440170454 667041988 994290842 661982629 29723479 804806593 584633090 596950758 559714440 266823031 228968964 498121491 538757135 902687041 378252233 386063296 33322295 252751033 872793050 412898489 322862373 788515691 369432370 250719957 432824847 790306441 565864429 240037752 937682234 986203232 322436541 860575125 10851311 595598593 497828983 297512635 750896968 596866462 139692760 479414308 530934365 453708056 918621435 922138275 574681398 829322887 377697182 647907908 761761598 313693219 895688582 261260641 503510006 68052960 369558290 82941896 679033915 86060885 851055605 306541339 263649902 563972791 663807322 99687489 432355714 802433367 28070202 727969756 653028735 74742054 556586466 503197846 272276378 234977101 747999090 129131735 662535983 879706526 240315646 479923115 129271752 148356680 64742884 523848582 691966720 616612298 679128544 302591578 863046454 968359607 750777292 924184708 273804953 503778678 879776987 693067989 803380424 556074289 877550633 812056636 767636185 179360701 565832266 321680676 532007462 184819101 260416376 385445330 638174135 988948175 61157772 470501328 923578198 162374188 912539528 876567421 786777294 767601283 397009996 645238846 978380044 173773860 192247449 993248454 8046085 826404230 876921937 757243070 827924913 785388312 807650074 19345334 38075292 490486398 958810233 88372201 942279583 177230745 687838092 760838793 891646983 39661221 67235459 895676215 779671236 26042968 544912798 831839469 324551977 346607562 133116638 192827574 140710563 711360292 413351221 204326490 342274103 58468649 95354792 955449598 691324675 629951339 302660281 533097413 324788091 939359946 265768026 422694572 257551821 230827001 415086462 38348435 285387560 743114985 319232579 619344621 713517040 956954945 260128977 883153321 979706961 743928961 618026699 92982312 162286359 601251754 329464529 727762690 381917698 880594283 184130720 970228757 579401292 436091901 446151762 264951179 52274494 641726498 867854432 194760904 473940579 18757677 801464321 592194397 91432976 109275682 737751804 799386384 314289576 550030134 159419366 744269047 283509469 600764150 803229227 362351871 563841919 115913139 393462352 607071553 314543191 924099376 613926226 643003410 148085049 195422589 632948018 430855141 403330012 623240430 405482764 643907130 58779179 709424007 880772189 37382906 275665085 732786727 548569790 600714129 189140274 338534681 377403442 696224037 971849349 489574589 266382985 678738540 442031877 897968328 319592531 196958251 597928730 893079679 631054725 675985565 939165743 61390374 118425763 441961086 559329230 678794304 807193750 315063317 246141316 925877127 685770940 784561074 55367737 240731339 190560416 891209125 532513689 62678350 324394141 24921435 382338650 650046362 305964216 783552779 726056023 689370256 173638207 258659812 411616714 615829577 812130593 470712876 31554595 695924453 712209215 307901617 280978717 816926338 410060098 213993031 551373296 849748856 247095222 502570260 236260294 469569590 754415684 537549177 758806849 725287960 805990916 524248449 409777292 915589588 331456808 725695074 768052568 383428856 417402688 14562562 20147238 706948235 881030830 333371719 331683745 86592197 781327078 556528703 732003355 298491707 633593179 883602452 880747979 735708147 606324867 451610930 929177663 683938146 636655187 701162074 809033062 699858118 436717836 195119029 284580600 975026216 744272476 587681880 774024950 451313265 178283198 725939043 232109743 200543666 977502102 14066278 405857059 973771838 708488189 26183745 247769255 427647480 169011565 775212889 800682462 732495583 938164155 15249418 245785401 619469100 329779176 50642945 135445030 198477576 518536498 778571966 206964351 128379761 89367733 9888348 763720992 791853553 834714550 196993253 790624436 82282807 676883676 380224527 409430373 805929185 990486139 458150064 46347695 390183569 427560808 455134655 60491274 410344623 975547784 253096584 383645893 658767518 274132887 95549490 590371633 534360924 562905999 166983203 375974429 942431425 803371917 408064334 877047603 900966298 144654117 390397235 101831545 203057225 987013804 13459888 684677908 500294982 542703712 965941161 959164105 657670751 589489387 69949075 88875368 309865916 248333000 709520345 711952409 716670851 995607838 713322773 663575801 626545686 613289852 556869868 921172443 760122991 668982750 711657395 139603563 642577435 926911733 79681870 782408259 462750811 390695998 840641744 703948375 734484427 871740263 94980627 224863748 686689748 769323831 195675053 791105452 317275595 420059353 674580262 166607564 423503256 672998923 364034235 51758484 576305347 255005820 186213212 627443663 146645657 755250881 388482836 661487932 722811005 457020430 455998178 480540373 985152043 121646684 181525763 219753990 533552394 431469996 965487280 588298982 300319330 431059908 392034809 208030323 886346367 844368079 971098362 96271138 595749748 154398921 273268323 385439466 281947779 682856109 493889994 329451464 115279709 156174155 33581244 894315339 636158829 824210748 825004749 355138144 452511288 497432422 955051949 997765688 483928038 433858058 936624890 931881705 519133312 917492125 187229768 983095381 647885249 813752035 532894791 267976191 687176028 732545407 307222 545932382 206983221 468280014 380300128 491930986 930871674 428101029 481649815 730259407 441086709 283274229 149778881 4054169 22221663 983226926 818086073 203486612 814166938 684831674 507764706 229920937 550386257 398698138 128576926 552582260 20397352 165857770 708452877 219080443 129349470 842185214 261616204 788130602 488716537 359466162 482364110 259459351 228256740 685960417 447484202 943833264 801716160 210306779 56342031 409270091 618709068 597766313 4454651 492304270 780325412 114379809 889613055 203935396 416949550 686097379 375449281 413166256 622426533 421156969 873362507 774286630 651983775 72923331 670690794 930156892 810710971 483386111 711076047 773114722 825025260 911477053 774385788 62597219 66915535 886003538 437132138 133946149 643746980 224220980 231593288 584350242 24746585 544236234 960259186 464713026 132916978 280397146 24694741 634608722 241837016 322447256 74829789 161591455 262448149 364122435 481778810 166333285 832946802 120231831 429652987 251133697 201294289 826596824 399184485 427529684 964300276 33610173 47456304 80362900 395215303 222273827 636552100 169150416 588094022 574594054 89846182 726490659 255805420 256460955 887005274 253089486 402245282 823267878 340561343 285139386 888476419 454470398 598431766 335279008 675910952 568460145 512668963 286685353 414482280 679183435 215453373 828477561 871340452 357124942 911754592 435169337 577925962 980192668 312048374 888216584 835509009 414407184 817612274 667090740 40254515 947070903 744164173 185065960 849920670 108701634 795805799 907012376 134837071 14741921 613853543 177723379 173482899 764662813 201478631 367571579 632093190 74672313 742846596 696154444 648118720 967061707 60331954 392058123 482341907 228625542 728031765 148043476 131869490 915077467 37946612 918062899 432067135 826720136 96281568 478409153 734836644 622257788 477557946 470747659 498154472 774746674 819358376 366849070 263491162 575720845 755926591 221619443 634501253 631874257 925490585 468324533 876071235 641114828 518190475 180578520 210319615 872970848 709079143 124718428 607951060 703534437 333796432 397142483 137803168 118321920 788128859 207611995 935630324 530985618 650034550 361913669 973571084 390649924 414748892 417605605 59465374 480051823 722045123 649593768 207782231 451212688 786110459 158406127 46293522 609044085 664890748 207637155 99123038 464442359 493109883 316276808 406338249 183641491 473367795 665148509 853076914 711670389 110171391 40783040 997137769 299300198 385348836 834428155 983912306 727665074 612405744 311924410 149769610 418260160 825670909 75965519 747669362 862706538 538151432 588354174 988447571 109843314 3518292 433934878 634650802 883859459 849421530 478924986 245574380 24491530 142821942 129761303 869622933 761887796 262107966 908659688 90283560 530660480 104636799 239413557 319687256 215064450 575346356 361300113 441645736 205441769 965142716 321950876 709551246 178396101 16976957 729119958 271339164 171002850 99149528 24543593 25152530 864550053 282775816 523492357 326767621 170214189 518458510 66310609 830144690 344879655 532620827 349443754 172309667 903002683 783354326 336432149 543584628 100860488 470578250 903285040 220157186 320763282 911482139 208597191 691505111 869336157 575436775 880238139 256450477 843114128 945696223 502972227 808917380 105011789 900013229 607863337 909536621 60084758 276211686 586676120 729763843 13700849 771316221 240119575 993210161 703623539 54367807 758657769 720680635 256096055 463703412 247814029 273953549 833282546 245777105 764120134 269675042 891786681 323289653 993664654 368643612 975087819 915237566 119543401 537662773 903736787 753578174 912563844 219385881 698220121 565923224 290708328 819647652 872767925 353149275 274291021 404601259 474398731 896583471 208682508 996851591 800519931 36312894 225046591 648228752 318346682 17653780 549239640 718721425 75374768 803953495 732890866 419395924 931787601 878353190 362530528 571073733 42595146 955530782 105759405 100564586 629254478 785303722 89328530 920867179 315403804 854212307 260771419 852811793 713235394 934715932 24748493 537706543 683091813 322592622 611964096 555849590 995031507 308922065 712064031 893427435 852950222 695850090 361409389 328701071 885426795 9398142 270846423 374749279 751404456 401357839 247562854 863334875 647056955 759937293 387248169 859526123 402547697 148282278 88448377 35485736 292654837 951315650 603377456 395596457 944510828 728657350 865467318 227146085 693309404 751260581 917106950 777618009 344135985 680396511 483709611 417154920 995360156 386035244 622889842 157240778 48109364 107622449 990765356 590782363 99196312 963206862 406284480 607538067 311453401 436452162 512460568 140697304 29925525 170362659 288193930 836164523 963294388 422234086 321956570 994118191 598043927 783665134 646591297 571302145 37669746 34108081 880791002 721593409 345883775 699404385 632958116 897200767 549489591 651789368 532688371 322548837 159506092 401364264 159256641 169759845 56642695 293618125 382991905 180875647 832607618 15386055 617493887 964343164 983810842 569629946 74870118 869697138 395599663 502368475 746844366 345928407 236520860 405515702 974569925 838446168 784433739 370270831 995091723 973420802 842868859 915093890 170060989 971591326 285214496 458784711 505432046 117430657 663770294 476737880 564499585 313192154 284467695 294512391 179463219 847936084 779123436 266368516 806699273 779411601 616706191 204032114 916714594 315428698 614209140 689394084 159062506 973624251 862943457 80464933 29648753 970808830 991926934 568066466 294155438 68074772 589667614 198039908 166201867 383973304 456377526 506399962 150433259 333834187 784625476 113321692 351577131 396088198 438654 131780980 592479046 675350675 135254025 979033655 814308046 234874875 210728573 194689686 539631504 804196193 368273948 213118998 636933709 874122119 862814388 173519389 21109977 130420603 723001851 854539649 921530623 744202882 488103457 846143098 110622705 65557605 21816304 77799035 801965281 523649266 183838355 639061759 383965108 614395764 659729425 553432778 197686202 293702842 146845900 106806402 879171311 69421053 379951404 34610162 651739853 295936507 154616612 998117962 73749343 790411106 360148947 845274810 355644240 926866178 505782704 331904456 131691753 613920582 605175979 442465201 328014637 102294243 959187352 586175008 361151172 552503263 566729865 877805328 165815535 103139452 442496768 722761691 505669683 302821452 953951841 285447048 212998743 767027499 277820360 751162985 913885939 494032751 770559273 698850309 73854420 509953246 360995083 464031425 413199048 717067715 681433596 512703402 931026450 149522506 197398920 277905193 504585113 281110953 896749614 886070961 482977704 410105899 405176025 619470404 49969476 843495947 923614435 664304491 366209879 676471876 941041944 635572602 959446504 762530389 448163669 667006974 860584155 910096304 923832184 814562179 202239383 425062963 110733888 318146069 548151482 970934570 649704921 521199139 992482806 571855721 110021808 787374073 463025573 222156842 407091493 984640850 299306980 972638226 566206626 29837768 24063891 997006273 952677023 380910309 892358805 463293427 227497101 598198482 80246427 675275292 467434428 104343419 104186681 376877000 487348981 713219107 829026999 776988162 145236761 736418979 601207936 711509430 283309086 385648409 862207085 56450661 814897926 212413982 786329899 697906680 815389270 802436857 456462943 549450581 345816060 799339495 960980009 200575064 837003904 121615633 536160061 162479623 192415564 875259024 323633080 975989557 110971958 401055510 410079849 360884489 741496689 471438896 2294662 220854714 789983635 648921484 314127424 1475473 57576353 243499005 284227689 71930745 888713023 653995707 369430497 423724243 840449720 783684695 988813968 653502445 730958962 607859287 995185527 522677111 370039890 190263429 280431433 194876595 204253005 247725537 779778865 205677770 635152949 590499755 264387878 445234878 209002150 961563119 244198678 192218112 733157491 856593829 479030634 903858685 357949293 284504024 337822408 463827583 381770206 368595586 264108909 814718701 371373311 61399082 359919920 862275831 888906849 508825180 925474304 225712563 958589726 755070069 496815909 227886826 615595394 429644208 864480634 71238389 389314689 71307920 938061304 852392771 417674417 324332980 839031386 973151235 172828884 482155806 24194882 2809996 736096598 947314798 857147086 453000159 261513521 369895312 100096579 392089523 104192461 388617789 460676847 118710609 527041134 797145356 935152787 540877018 249993793 600432546 834821671 957462346 352775683 557250519 665068615 548249418 647108006 513227026 427937974 571205532 726853210 378726519 587419974 554426964 169398278 52780199 223978224 794796889 729523641 561798564 152266957 15695479 820145533 848129713 546543879 401995027 257887040 915825158 15226049 561563743 472783325 576038599 941306288 893465552 771448999 690311052 73317385 835844652 101497993 890624936 909382685 776870666 949245998 761770146 150647672 221549967 279018722 963034360 177640767 999610267 835190463 111732472 595019233 618419624 903443514 778737998 584720469 839240382 45019150 586183261 483473218 324371151 405546595 20566490 180850985 645485534 81512855 251129053 117375142 333062307 669897291 142123577 853715597 277522327 617610781 426022908 410735552 860901912 387795459 541528153 335558234 568760358 716764540 210623487 885322497 442124014 395572505 957673974 64333156 176959082 311060472 375333180 716710400 140126346 696615761 650218298 253277842 146125484 387069073 454745366 16201895 298250181 191679703 386403215 282148887 824826653 232879147 776093622 353844943 897454276 642879248 850531572 693438617 916800827 447447363 465250840 420396942 680754029 277943434 146774909 332122426 1855835 436807807 905874490 612726710 208637211 780993703 128646229 236705814 749561708 277740018 756765215 315910192 955867343 113736494 587184041 251085473 97260022 400125407 317797310 371072299 590389597 237185704 414776699 371001726 701424656 623611039 541030181 984273180 783905910 504296775 451265202 747037448 371214613 826849606 332861105 922487014 950280692 587993212 400023150 957606219 90803508 741638401 855109173 497245038 247945862 28942945 812455685 61103282 567294838 86846596 605306227 308076775 21966903 318208921 988138269 10135533 839388742 276654622 94390832 653011077 607205743 661349011 815244656 623927398 548185743 208015211 373020318 41240382 917554628 984280991 798395611 233672865 630830350 233558459 481519677 616448139 467566229 89566995 260780215 933500984 529931132 860184853 441863791 276894358 385907418 856434734 863868544 345263564 288434273 572430045 703362984 932552703 29743369 201287841 374636430 365883627 118221978 533628250 223771902 302407158 792562708 797677039 814467385 854983191 47235859 848104015 993908195 27355928 487589194 434004269 691974367 829854961 533096863 210616914 591132266 480521349 618938299 739556927 336870872 415932182 250440558 925166316 961596044 961149661 928235512 968435950 603638358 291101599 453748674 331911955 118653081 696574789 295813810 499195922 61240006 618615702 654248678 141023965 929831357 917316153 339708961 637035013 640207302 535082009 981262238 368813509 934096362 814552574 821996539 389770871 7849135 632478430 563197590 17946191 428092853 533992416 322682637 560714376 909799904 885285274 348087972 750511650 606162268 937618896 38696330 343073695 296938234 396017648 499593520 128359257 561041049 178564156 49544642 779106299 943765020 623303000 448431181 490661122 8693412 146356170 907140733 357957016 879314643 927863760 870482864 450491123 748121345 448746111 871205525 331515089 394338251 155157623 264288505 238474595 109872721 567151192 657171731 566358143 639112192 25370308 313156926 67049816 846920362 207660605 823773382 106841358 387609172 382472655 642198819 862830942 748535908 969939099 350109682 480811086 188026826 150951490 870435031 742859383 612361141 330587164 362666026 874081055 79716465 285418664 309006230 276682848 622817808 626398938 534836461 154832232 320490457 384346796 326574918 948955395 863426160 584322265 252502886 3606182 862588573 290305616 479543737 735314908 473225852 135096778 710900187 302144720 594330126 363401046 426995049 40280836 90500429 691350207 10027799 514285169 971833789 633266341 167353321 72079598 587853206 256641372 427449349 730891647 30644246 493803189 12888089 693096343 983941042 812579587 502780782 598812931 969193800 58011149 833368799 534352807 203570714 764066079 793501785 238752766 836484758 811438819 725491819 855451688 88653539 567421075 473828865 764115281 357089319 769444468 789270738 904426344 544434422 700343482 101477442 94440341 302153462 929165377 183679669 638543756 488957945 155038684 899369180 370096979 116339147 319784048 373344051 957450539 504440528 131621892 920695261 169164539 454098199 930577235 908474602 364027995 449321696 722733121 85720094 356308344 94876837 670788722 487092355 970194107 480788734 655123748 427008747 192326063 629647854 571756613 889906290 918690983 963104462 434199707 431973610 894012914 460287178 484635310 873002911 843013500 615306585 829413689 442722929 644006729 886516466 535400608 996073765 20894942 704827584 455691236 823985066 269410383 816273390 426830830 375994698 82125953 402862507 109392682 368186981 895670676 757000083 359184763 513942175 146587951 970702425 31774734 483804042 405859047 144756474 664558891 167985475 95497553 422678924 752439149 485684264 952248972 60795903 254971238 926133167 395135870 828236678 433503335 255744665 409073601 465865868 292844564 993924477 957741939 90580497 734037340 378267065 21826109 234626748 899827122 394370965 20876948 769514636 528414913 526234834 895425852 272731270 696141348 874242902 912065882 391794488 682828472 876054233 961572035 521034035 801801552 702548742 758312763 406760098 700583519 531580250 713623111 384168697 627746833 209005195 387671903 25256205 920346933 866652244 96026485 605337103 204064395 372433029 365836098 98890467 311122333 798625181 172661299 510155861 859288057 295891811 328924748 234058072 779933990 298963085 405738792 695179721 314785118 472982277 810603775 115597655 389460687 966516433 44068174 136529851 64611974 480448743 121255361 159009668 580221146 323212330 747374148 822662167 472902669 122338340 460884634 378296853 819161808 538302989 528167373 805000485 154463738 653179785 285537349 625133535 280025512 25101740 961550680 464243934 138114733 776758208 674430666 94253009 39507612 205461522 48834057 228476889 429904935 524968500 295766957 501651203 152894915 840110847 144412412 213813245 224151386 525420180 547212778 864812808 811080948 667426083 51980371 321213601 190996772 346517100 741609776 597146741 823650941 772927263 706419457 218333838 326210147 927755919 16503187 210813385 631458463 612262173 830927742 621673419 512485931 435514690 125489363 580565512 11402197 377823961 518649225 93835602 941849524 475041736 671601927 560994309 994924004 742888974 502643762 617574735 678365870 110583592 176676538 371408560 540718754 666750331 388074904 18345061 568481734 483822627 593867930 948936577 362635622 934651209 990656809 442441970 869915307 760353318 557199441 48839963 456391943 57149078 805380556 80203486 750373288 784948291 591070589 41763937 266913884 377092985 177603171 1089687 585417276 431115815 152088344 752949016 417478756 36563525 28652779 462100839 980034913 732560209 477089622 600459295 885300692 277203246 344655765 362190642 514590747 574872086 160415875 63348845 127639209 843332879 847151253 359554403 93125996 216849058 537465130 456813344 544141736 194260357 972305551 718966740 706323122 391628766 506905434 851093547 628710028 204838683 767297427 250380896 414236135 682656897 76686675 649680712 307025425 435437876 35266306 560140972 803166680 236669796 594581553 165813013 823601480 750560208 620195819 992108359 19136627 339885885 287006286 532817761 567478985 161630953 199021927 416241089 381987436 430490204 55648602 752835403 512921827 379745165 312158124 176895586 611006273 245837438 139502703 108689334 556721808 522250048 65909789 667656406 896215011 930025450 143456170 85202393 859975944 564797957 984137865 9562232 801431036 114401049 373565677 313806288 86731283 611896092 224934943 599744424 704565903 521585661 533980500 757945513 768779329 961545459 160960380 863575353 905438826 30663548 148393240 455191849 229003802 693017368 201675023 344570338 215371252 297231948 620030847 529037618 500130695 892610745 759287549 558463019 893228449 114199573 590539057 843417711 758846661 612484677 895563374 796081107 499580789 254249238 412309422 609135695 717993569 504223308 727292574 40193524 857555288 419006365 112568122 827048999 566702365 962466002 152777432 243239159 361420387 837161524 599772417 865050883 155686562 967342407 942325009 244292652 734783177 906866141 670779358 639439128 303982291 978281548 859238564 100159207 369343522 883401177 643231197 159946123 103736994 299293387 252832714 41575799 830930824 43445818 257834716 57714882 712979748 764466413 448898014 370618131 877990052 15178898 887710861 715161412 944878320 725379915 572107478 441561710 986711909 858522196 514899303 725986131 55771784 57550472 471406230 535041949 490819703 223522693 9855641 479469398 22184647 413540609 602779035 456292564 619608660 917708715 405013132 517881443 407762426 423021928 76524590 750917641 84173047 689668191 382093939 534582631 871763709 792670099 659594300 431465206 444271097 33073023 600874898 489033528 837907114 981741281 280853712 368813027 283303235 471122471 821872885 349820709 900704234 513759055 661695993 790134551 2013959 436006651 496210475 445230868 395131944 85598060 72948096 334572305 749143023 355337259 894319172 207780470 718579581 360863551 4846903 992640739 587974658 170614531 764810582 613515222 934541426 825180472 865397196 631067295 759881225 15161333 106951117 81041345 104568885 125644427 900245412 156423170 283085834 934325756 359229108 707832237 624134979 639277075 504216302 611603709 279495440 881410708 540998424 791973650 938664477 54812384 123019078 160842976 972371123 309457864 847378709 866971277 958154606 774254817 925915949 613956346 257227332 746834072 975802862 843135972 667528518 595664941 241281700 337613037 704979968 275066283 130026583 361379660 698994630 842407568 67201163 956466442 760962381 470432454 520493359 175235737 998791782 959121127 543899356 439018962 376142924 854605729 336181955 891174193 570724405 164357692 883470871 937455034 119017669 730827961 498969832 616080510 621800739 70962751 851052245 152402822 701548503 332848528 52609440 566451199 768419493 172017516 52633338 499422982 677370046 446628881 681680810 851837063 765365225 151297665 409941732 517227123 445585141 938359822 112512585 775812910 211758308 723931147 324291279 558403500 891168749 9523080 550587116 425506325 75566945 585643968 869221140 130031640 958249485 731082304 567550572 595045132 974119333 417946063 863218110 464521779 24040744 429894816 459941935 261946947 837039271 92919475 352247570 436429898 951138334 655716989 39245966 658080770 604948188 615290137 546415348 810945959 331476613 554529396 566309240 598876479 41833068 864725087 726613446 424789438 866819360 675944182 281042289 355445161 544798796 690571443 10576909 776448461 741746941 231090708 421314651 479623078 713027719 208005555 236135776 762753469 708717001 99328274 14506400 892782325 879791160 935546442 277628642 58710514 825483466 958124123 303584428 299281044 861872385 518888532 617451716 924165326 315368492 240693318 782384207 207945956 14351788 975748948 479839457 629691936 706169200 581312660 84544902 184212151 422592610 192677084 127938972 264991231 880653348 962067167 295153804 987840321 256242166 424047091 514092643 284334907 463185035 944432773 175549364 348927656 635491980 536032328 811352554 755661499 985726814 736766876 647676966 712327114 661876460 727671822 781959495 470672485 489829567 704408333 33379022 52940319 339213639 64832459 956934364 798946234 42404554 955588352 921310362 292369479 763326733 268275907 590582042 792935694 846308079 224505535 178430239 608676772 771838393 220321365 173809685 683252171 98785174 110897891 948900522 795043911 900106581 928624525 214633894 445433898 267904095 879475982 121087867 116302547 265714691 391509989 649455942 695678450 819213648 181753944 27977202 100151090 285020399 276861110 572222786 230606470 251068766 307652397 838515804 866608229 348009726 909345942 868086658 933408936 405775931 101804598 958235713 783931925 330629255 688890795 143679085 336654057 579617757 354402500 55655913 275465169 287704676 403429069 352796338 924260545 302650729 308910838 754983558 205535856 405604712 618790526 624521886 610687658 565101960 751167834 318328707 676913486 267920874 331224977 290557615 277216184 197429343 612155393 526958881 663596737 846070743 308665793 429790985 525704000 587371521 972132338 579072145 409043341 836885812 665929749 607842729 306235880 251705478 738146052 28671447 316423095 547890364 840332321 974739519 920324449 262526365 975604697 315184837 319202819 697198276 480470351 101989263 206035830 694373549 903878978 335360581 769941951 360591310 687112841 619308119 511309442 258489908 396666344 347849037 354803961 141231199 602669614 577391245 269181108 843926282 519473905 367914968 384328741 254374195 195812797 94316525 505627254 147391900 369700819 425020325 857084697 868449849 140213306 905289541 163157712 919908289 331773780 76023252 313217589 131926930 328878514 685114021 590402826 992984791 257297182 353134532 761053763 421033277 411173062 376851089 74121637 128622773 367394174 414938360 6545209 384434949 723344266 232671687 773898269 755673442 860101505 417726611 190620265 792355906 170339427 157230627 897635222 930293576 863889976 324530893 419063904 331662064 342698761 877669944 81274019 896701676 408953020 276471153 43220486 216942832 366519397 868543445 551804744 195991821 346276079 577130065 521406700 585866276 489293587 529202845 467476947 983547542 17639300 505041963 564698087 3298521 595408707 478798508 549000578 409401254 699391199 9879787 971710394 166077321 501568929 161873630 928057107 856748701 809823083 487792571 387024366 736580152 468733089 456605607 11100465 855978757 491906885 2351836 393202564 848642649 283686120 625230184 960720603 753880749 220878429 310021060 476251259 841997720 473800132 133972843 797004830 793162411 997309528 832258339 44905039 175937617 692011210 108569420 161208430 413471116 625418815 966534847 444331686 462391362 823493461 18842879 921327150 177409186 904907387 704048989 524964670 123342294 539648997 729207907 662904739 717047274 849854209 320478505 606497601 958394387 426210862 7769371 834214652 871682460 812015036 961472415 328249479 546769070 759880321 382646159 365007252 440872004 859413987 818258465 678409240 895569310 445730347 434673067 58449504 827194485 16987331 780402897 604639581 927732334 38522067 328573056 413734242 136978671 205560956 824082506 284853429 175138259 844514124 459692071 116020670 656656717 734391105 624445445 431581272 757125 543360564 984380415 331862530 71506030 664188038 881322476 464703910 372826408 892782765 798379317 217604028 857080934 860501269 818882038 820849953 786319641 741370100 267395686 571161236 490054765 409878292 247543626 356830863 550313400 439024209 913593726 811638658 112352086 108321570 963116466 969954866 303163702 914538999 670294595 131884397 26062815 915327319 351565663 139401578 872147630 831685042 298782062 419805792 88463950 149370970 315357280 948824991 218003629 15575374 565410782 374307707 606995152 749027979 454303345 99168593 510284386 935404777 420885690 269084450 987521084 854418097 206221959 157104276 17956580 939229343 152013926 449474392 847193079 747487522 435225628 849518281 695116567 156551310 477818979 894625118 578592793 866870089 59280979 421938279 616659996 766973856 992119337 236587943 298096913 59028145 199775049 203061595 716266870 401875808 499356171 993040153 357623015 959883100 55085455 767038723 744609951 624218746 979401383 505454739 250515954 913237823 807957549 294896989 258872959 803620234 135933712 70214569 618469468 175964086 388737015 383623930 359754653 14700104 81206347 883190925 480075450 786606927 728792078 884125531 863266920 365025590 607759163 987254849 397229828 178621545 798275271 744125614 374496590 985535931 377161043 305510805 250033570 629301923 5744601 33391296 934393224 33574547 623389360 721791435 200271596 608555990 991901830 894968487 829921411 948559704 506517964 840125836 842182620 811223765 864930199 546613762 811137945 391284423 157260755 455532779 108954990 324784200 940574150 430177934 107266689 260881562 181889507 488235341 573297195 408366972 899999916 833890742 426078809 146178452 591439169 186433425 630136386 907116391 250590846 334415092 377665352 461663827 11702144 943691116 223523295 853308109 296859481 245368661 586967958 303328952 650618843 444571114 857766430 227951894 598414613 257079213 353383020 306950538 742042697 467657839 380725928 925461615 545105065 227215410 373366662 701788663 85342993 327140520 264039924 527268209 184863912 340228447 895196079 329649813 401876441 56935079 561540327 534786312 857745320 752558291 329636531 21928483 744375093 435154991 892050382 635884730 326902482 720588081 907375459 35694417 278076491 739303403 638026465 323477746 911786085 31706314 525092399 346161998 879808302 899723280 90087149 22344372 270201244 366436300 793645395 825215146 223718610 989683174 6834902 945549770 817285154 749616511 461128721 65702899 606610523 987763956 884026865 112113693 460483460 239913304 523136719 323128078 424434267 467657697 282301129 894733499 262031226 679791010 917823816 597032285 820997689 720664121 861639730 16466072 20690680 319080856 347676463 981598246 187561649 441632407 929240167 14971965 74535664 872610075 445958864 956037139 805181668 173148078 590945371 273713664 532446128 589899440 434755835 687510727 160554146 812251128 871922982 98965840 263142713 162928646 114411735 462711804 661142266 246439393 65309276 845414694 916636116 577511041 75239822 823202926 892388333 52361610 747300515 636121854 831470936 515289710 575120756 343019100 738004753 20723433 429482504 457450846 316333724 531522437 617990584 897449547 64194990 519266591 914475429 933142019 542187966 113002032 606796164 330620797 578423732 53032506 352933789 731787341 684429737 540984057 331517455 38262547 224091978 825990238 712704233 163922940 786188483 520436964 550110649 602573183 561046216 121154978 760891277 409851295 216801619 718315318 158512502 918353267 413719514 938876685 972633064 552557993 753314584 869512310 974774082 397998462 350238804 905463997 454861227 995913826 154003691 45081141 894539231 543101584 619993052 503659667 150185068 721854731 293462907 838982248 556786337 157567541 132880308 726705677 339314786 367346556 13333265 716393342 489239009 483714959 807425792 658827310 633040875 665372114 663082130 244555205 132894540 634488128 132797528 4840001 667798764 194269472 36725386 799654831 924956019 427542123 403011280 735196153 872945409 323903014 44192462 610355842 209702482 462369051 707366962 593140515 912852160 671283865 475436055 246912075 724723032 953207269 229018917 961923592 981518770 58919087 935013267 536305849 158703804 292822126 844548205 87469335 761424178 675897846 264060734 155461707 679414711 997543311 293482276 407421688 209727817 728665255 328622295 15506861 518745622 228587683 643313791 497975188 534380175 712447821 744095230 347659790 284855512 264899913 784519283 719382956 420817224 40998593 912955328 749385559 332823989 271268932 553002202 534670194 771252995 345868164 821479460 574084625 171233679 525345857 148413766 685897765 169439510 890776027 378962695 164086516 747093611 112563819 178268957 910983157 868207418 668828795 371089770 767787430 650696783 508216569 94899276 536597965 28200639 131301774 715117419 702805231 686451053 828833620 467979649 357952602 638173447 627803936 615955285 575513646 441676467 621678091 262565400 711601227 857651186 640231101 361886024 359637823 477157946 651431122 741470713 147180323 562410718 993597987 344563883 656224251 674752061 301531837 372742843 464226653 646608333 346249391 690883823 265500049 306087015 161005147 3734604 319383054 36341941 204628807 504732514 206411322 900233213 743192547 385284295 383394780 539555529 879679793 550153060 241011525 353486688 768008561 220954194 725778060 821708952 595361781 971325655 265263728 786058879 299868038 967773809 713985321 995747008 914082985 635427248 284219028 944096319 556111415 818490100 529631457 671223142 259936414 86051811 487582319 881229259 45115729 548958621 33768869 640300797 702418936 510455787 807715647 390068790 469728495 877997060 840895382 799885135 989076443 975188838 928375915 313298875 209228428 367643822 124594 444083680 415797877 11855607 82731832 316445419 386344400 500246584 775255781 597750810 821619920 185946073 832222836 190203725 97852611 335357799 298582483 799661441 854076030 304601033 69267994 732956085 625948253 463272296 806439216 31871122 764441269 668208713 544637466 844094185 279962952 67285905 159169251 151594180 334931726 602255337 364263015 289662873 489823238 121232662 224009572 928282720 969213071 429530491 877246648 893719902 920356700 618706113 921965920 568629097 553132645 554513986 19673021 270310349 641888280 112186172 835531449 505586489 174757344 712261056 139074641 839615849 714934043 511553420 902466448 571162253 161251201 303896930 206524967 986224942 544740296 831626103 295985054 942272897 819570630 364058770 154375387 22050569 992677849 724585205 467027347 404042157 632068172 722965102 102144032 687523686 484876942 323007002 344510247 468661858 246963472 740266995 265283397 383134925 717566439 707785341 394022374 88254613 377575490 696288684 247602445 157051653 450365496 844585538 703832382 598262684 291998687 452148542 389043674 373109917 535369705 985739482 736700612 638736798 90205997 597906270 196865776 899025195 438557176 323151769 630771848 112747736 592307509 240368323 25745711 80425802 870958534 403698333 5473786 624089168 102369325 547525513 168005475 14134421 226368669 718585521 249652265 87361442 658356634 519359867 679673464 964416922 581861114 55479283 949196827 368995243 592440335 490853759 169864478 360024417 316716841 831984645 373471912 590610344 372501208 998999658 824733714 957976074 811447690 7004099 661544008 549808743 902448424 824776015 229909444 499372181 959074328 98181854 914433858 378694993 868597109 608841444 214259153 833186030 711102448 639478247 182384500 975405610 684615983 322569818 688277660 151856348 668976061 961646989 87705927 555092125 488071267 917405003 162748176 605571104 350204967 339584795 944008179 17523746 811730086 708776264 197270054 890747504 885632510 504373864 21439337 832428425 365529194 554497989 807318574 595052159 837377954 81549060 10089332 925793608 824843229 869693233 751382640 921254643 490036502 612783610 648618629 148912470 670942903 612634419 937326636 480606467 952303887 660774844 15244841 505367415 106702458 5069517 920932490 167238263 428359078 106966535 735853813 515397453 404854278 782985417 243286773 526234956 827668773 144685891 932876308 778971887 931587091 817505492 362826201 700756550 259610721 891731412 365113342 623122806 278004018 434827394 108959053 972506200 424574316 424967696 677184238 387469271 287076834 682563635 666987358 136884990 119994778 738469115 366809465 849407757 748541154 613707176 676757072 14469025 868295087 284028273 491402395 138933657 89511221 750400890 197857747 700089987 997185875 54482706 617383180 87900414 596307655 953210304 609648114 983528187 874084898 474820870 669467747 485015453 905096058 551560431 627796785 400904898 329145301 314117138 37085477 707175988 88076806 386919950 647414829 370899358 317486029 6404376 695875110 623607555 680015770 628905264 927212753 499163428 123852345 283890863 832588663 14724835 452807681 387212208 376705855 970010181 427734638 324251840 34956281 194370717 813551861 803529834 934506286 666693724 830817083 411711032 312086580 553606834 591650931 785701822 346037136 925147501 133737125 725079727 168800500 601631294 15133066 445237095 638592741 137611406 458599528 236602799 409212564 892991242 967323235 936984444 175806036 80406413 310260063 990612477 317778367 824935052 784994375 621332297 603231390 913387747 341346031 73588831 400065060 30394298 145550361 710674653 154814376 302629398 753368407 645819267 383329874 562256209 771431174 91777304 274461203 40932154 116939079 747802130 664433171 621512358 410404787 993910864 648332988 365272310 466583198 186836907 791586371 764791206 519340925 938606067 935115481 393568780 153323724 176593968 921866925 127206648 625741355 438044994 670746271 911764706 498556067 470862238 62283757 272914880 27798693 73162429 277507910 316067740 392064095 616956949 150195471 627287452 979936718 63579884 880888508 200476755 615358667 521291771 753859844 166571339 634324461 18581861 838944990 452214519 636565701 921569816 182744122 558494434 242023011 235229969 7922134 318952378 572195130 949386175 118569430 337951835 589135132 463796157 243659466 174847265 211829335 544658581 863829778 997876911 897162428 359128227 585821493 423892201 459113251 96375103 176472439 167638365 619129317 369797127 552449098 756590077 549234176 571921177 157427239 358241604 286016746 948914679 611764186 829706077 112706984 62887299 898608608 493481046 268107427 807452751 14163974 931222857 687480286 823684722 331546693 267617458 221716221 867305702 88545349 538754652 571893334 604608120 154799688 798444211 530149018 562114467 939062298 570779976 911894239 265367056 512163422 911725330 482822585 377849435 307024342 831815898 119880696 484280837 200727181 527341384 546955549 849575039 518889471 240035037 943104497 950324156 440081354 616622558 266239510 825893483 867893925 682685297 752126670 728267670 154360771 372254218 334277098 799181282 870716671 817046525 92957221 975511848 97731091 386454810 944656848 507788820 591737582 791697758 873134995 927466944 184939813 343714516 402171304 206724961 370941554 632612861 254853080 809746436 477525881 316528972 963941400 350414322 826088685 167955484 531645911 967031136 884542284 345862114 129124600 877448138 120198088 53320211 818665179 588932038 772095691 370623422 736458543 427185630 433681388 521524844 178356616 377085252 585778689 503591622 552847639 400179597 824685043 316394510 440937900 352711670 400474267 582113720 229630129 247690352 423739078 563130814 436458216 864090820 82048954 202788527 495056748 300646674 66668929 998449499 381934275 480048562 359605027 664777760 971617528 530618210 347627809 350086279 839529443 153107822 859798556 941786190 755771390 423621227 347965716 841599438 379170992 22579960 221838299 59790655 389393751 156563815 931470453 959277659 226603233 822387686 468871685 851789128 392900564 899451783 806569097 432094573 536658467 164491274 369254869 875396270 301636054 339512309 779918425 390288387 194621722 563031944 723108391 634452418 992309850 60241904 515588156 530579999 204254186 309412969 374615990 674198844 68677002 643770797 571239136 626853169 778114933 189259758 432973259 389670702 148670326 984755941 705686697 914559730 848460611 159255117 63780687 234377722 382868395 284272138 620177076 550880187 193554738 623940815 691754221 830131886 987487206 699214850 626232123 151134135 421437589 90970945 675794662 305357638 48228560 635352823 383871231 22793793 776515086 258094291 33060006 818323032 484408710 493247601 747592094 321174872 298892798 750735818 114218219 841855552 392422547 66947417 185359187 117311654 449046554 794339073 510640861 239324343 807161460 131827890 815794550 215269119 883485341 511808995 508533600 638938703 354736796 171302279 217968366 856625311 528207960 489789259 319705654 868548578 502490678 203213117 695530018 852713479 190228526 179265397 831487906 97950350 626769742 782425677 906725997 76135509 446579668 551225392 434025276 211706067 167260641 395440945 269744905 924994374 573158874 361143390 534635217 665789485 789624533 957830525 307971223 748244099 960082839 849539771 650997240 564800010 972029425 120524344 70915451 868033141 314121743 495666505 39143524 818062500 549247827 161081322 6852256 578607912 43172968 650493015 661404918 421882430 810498591 484879159 612421263 47954591 281877079 844859757 142842542 944311508 300587204 468385107 107726865 398140867 781555988 150449946 140919263 179627209 67384659 680630954 235901337 57300980 167820555 780807334 668130179 752440867 632573321 237493936 422589967 58197794 397141545 875776869 417583643 741146670 704567046 174725691 604147210 843403984 503856962 116017095 456704677 997627729 391680233 673403406 238930316 625263713 740400915 872680875 451514848 993476615 966070477 473901206 165151822 177028480 57905657 799526515 55104330 528983452 739588316 267154915 344372283 324209561 870601893 731747526 730861109 464373039 66441455 706742708 257917760 248441387 193780043 837438238 689254900 937584577 618861692 995896809 864347308 132873687 797393660 158193819 606176190 5299384 68225812 126684022 525508698 844650764 72457672 670104542 812643859 515220936 154263846 842741161 679697194 754948550 467055054 459159677 916656914 383497055 802853877 160307464 799416713 851820285 841113946 543616326 543345169 54358549 83728468 544273351 466122596 742757149 115684434 469007264 140439483 17751502 942803422 808722291 329227744 550372394 896284607 51023667 948377572 506148566 274135241 923886589 493254388 310949190 635572578 345132700 600932949 405454611 620921528 587446631 863333969 90244898 353550261 296875638 618046921 717587446 154371552 42356735 845340810 294641311 803021747 635046143 756910750 24622956 738782394 585889413 776993376 5924786 251041739 255144730 112113392 490816397 45150894 144680813 942467142 557187738 491661396 914468861 981031939 77317131 365399039 751768382 708126151 3228490 890411343 955909874 649427006 357938086 434706405 121196347 843312877 800631799 365355341 3173061 254595141 994684224 514472574 818019053 843396966 83286385 878183029 267961561 140527740 739847150 294834892 543134908 705324735 310292951 432505986 280380295 569338589 552749178 694992153 246068791 53430818 514323293 457406774 836235735 910214028 792903051 948678656 730476487 665266791 389103601 122502382 791312902 70333995 19651738 862139288 670055271 323622619 480855160 668105928 296581460 865318956 106067128 928305052 946400392 702844704 718072464 949603762 903729524 721670712 315247423 415159754 66728062 334856330 83566818 41903420 771608676 309069961 689553425 636726670 583463546 449898008 587810710 126129371 390108065 985558746 52150495 475594584 271016763 856217597 677135220 693241050 514571725 798979225 985581673 669930086 819783468 85213806 555810493 354461667 15302080 417771930 4068562 218645186 24498048 63249158 385842582 873741575 105913915 841045249 856278211 494553561 592953666 563761592 78340672 140585225 767931080 204945222 766559947 337019500 729651957 994862361 631348709 614854404 828890264 532931886 439221573 434188193 228694710 549132845 701563020 522451145 436357897 655658044 39130299 100490903 921201507 515947959 119103910 132579329 840711903 778087522 913934731 162348284 276471858 594083143 183414612 73337959 170239908 365245002 498137057 5209368 582725193 975012431 548442104 511502483 699354590 382931417 142330030 595024797 522909678 248849313 567219474 871557370 973720387 351972157 967864630 373784283 37605094 502039518 66394408 589952704 116792927 487200951 51725116 426076149 182864911 655170354 319657510 641244377 848861407 466145234 432365624 198175089 923154642 475177158 366760976 111587973 294830687 33732459 817904581 459260792 98936548 864328207 771284629 943995805 56523785 852179716 906364722 40219176 751766207 859105807 458350323 288889252 712510834 223498502 460026358 530642024 466582711 848827051 183930266 426636326 58037712 257977129 111454680 419675657 793466171 785901042 26135916 778422784 453538576 634597034 919438695 918463702 896030548 696678923 5567264 122677156 909356542 626629839 680860786 455876832 649516219 104019748 428836680 434942635 629258414 16824306 688250907 909677334 921231237 848516140 682043303 927696235 725154128 921405809 138062147 397916297 636925486 206341505 38821019 305283103 906867567 420493648 977496250 657645753 507016285 197151693 678855430 183469382 760265266 338502127 534773694 475480987 484655037 91435211 214202122 946285598 718723261 401124253 275215712 913295603 647663855 17477996 954831650 431871246 103207846 560144719 347036745 608286291 701654205 827011751 325292741 414893377 594307011 983135634 720097057 145368258 421542101 600159352 660497364 443520693 986298912 645895480 527392970 990830264 322244405 142405086 626322169 253400225 276189456 747836847 472112816 416627629 897846027 878378953 103371289 358848245 113583865 763037397 153751788 858820017 198162397 450777694 596491362 204481639 662284330 797727763 684063673 204671261 96006155 130064299 754952692 762512 515655763 329254415 535378384 844889717 793282936 299415764 375055141 557694835 747849932 304480538 942330987 66632024 718350247 183530676 905994882 917350394 959091842 751346480 43593097 765930947 204941518 757437697 671029096 577438983 489743952 24779398 338825335 481992327 871800864 486767593 54369267 900505135 707630433 387428126 303181731 503209153 198965289 857449429 596379806 633988851 195313871 617502245 21786752 993459337 647081372 566792460 867441475 243063166 421918194 63240057 301100775 403795354 936412158 168367015 978764285 469013458 534161987 110332399 843903744 161320987 644496389 473263873 803353522 621171250 441617677 353185532 991887944 782762902 87927126 546335454 714482704 54698072 702789130 927526742 247037149 814103770 586138730 620029696 989005002 594481832 424905480 149404503 310029045 24985340 448440318 145202535 327339869 628328061 537190307 91562749 787616893 123696370 648784043 432423840 326319745 689849888 519552530 657933342 653366834 834274598 97899739 656719487 865219794 294333748 160337379 611343658 299480937 368709156 710005577 547256225 193894447 225240083 749033758 149315490 255715874 85663933 639211581 242888032 249599147 876387826 317399532 565388988 146915 970242939 886743997 469187311 897953823 20978955 404319095 709789331 91991771 667151901 239678670 823554284 683054277 476986195 440639568 253293536 932457439 790978877 635182705 636595434 679979390 195931164 170635556 281812071 246583842 333887248 160515757 412001148 84890748 48460793 65689906 820861043 276458149 501858453 773520916 154076918 561050379 650436233 296027144 214382749 596588403 659610468 447187837 192065304 214061329 540848597 140576311 147475490 506312614 594741351 463756 971770405 119234086 457219617 730363972 153977782 486057944 659133204 8867395 863992321 952753529 987915376 253688173 802198471 132585263 195371055 979302735 771637442 269653119 70466895 867626208 348410699 670386127 757214700 827706992 242447667 461646883 430075107 610394894 830701382 269158219 940055369 188128 450738917 505491920 389614638 449762427 90961993 612279336 94471089 569829472 311050318 229570853 637597957 982735523 701971327 813130121 234240210 574859389 496320412 583857709 268949376 300233064 836414044 727723567 713825846 472453126 102767047 258862872 222269535 742424461 266778368 138887788 37084600 975714587 942983391 517356440 859336586 353809537 208236472 147674110 668333069 911267123 246484276 709245743 672776383 716680035 67311039 487426753 839569644 923691486 731675590 572420774 807995709 25793178 145583672 601140277 829711416 949753324 590171134 410364065 396813621 177292706 995855675 219872279 618290133 949989185 494413206 886749913 886857688 14443767 879218209 771293476 690409172 809285779 184367583 908743306 729595188 405708843 789846320 672647374 70757538 682680946 82475555 666793580 256246926 790757479 302565808 454475829 498057792 108812575 302447745 729593103 400039550 180442694 277404263 648085042 742553817 361809763 210541099 12299664 752777843 525676793 746718148 882355606 364186866 203775466 255024307 522839952 165737471 572409868 351188754 767566907 99915896 17430714 702771183 86925420 784549557 279455774 393706073 937037143 504920176 92774546 203235109 197301154 31970824 245607686 860130241 616035869 921648224 207150003 177848105 898167175 621886642 66220871 748089246 394781152 45173437 311554841 274655653 745144915 971180097 965216114 173341717 236499944 103481860 488171930 400149697 342815067 74855744 564727405 16975299 318628736 839035015 426337680 22655221 372366695 867847502 277012106 838553850 495209128 343352444 719335909 449873382 234841642 458617033 21380475 265964225 257497691 444076223 383223979 338121585 888493134 57045811 829396749 890347095 843149696 500684505 467523934 568124336 560324728 182996190 347965573 780786000 380017486 606685400 506818016 205226078 707398772 353749310 750487316 599848985 443804432 509086526 893831202 224900218 496074070 436047419 34909105 979172751 24295463 770632548 295994209 30365602 821886997 295175357 600238617 599335759 194005719 949730492 817261644 444164076 155936312 959288111 561450564 862053208 138012000 892061276 863215235 717574343 148965708 975070020 720375320 588418887 351641275 203626215 72289257 702005989 209454498 68431750 608524393 847021936 767522671 983897222 521887412 804691166 373706148 439026859 371625286 379380062 804164246 580723701 18737635 615276685 730851582 1010365 770143162 323367895 578482035 556855276 298916944 17298261 391221495 806587721 46285218 134426836 393796352 257114756 560141380 282103685 205122716 946636755 255984295 980402343 676594978 70927143 611318793 603409807 857780841 568095640 147291098 847397718 935842940 718365716 908915014 85860006 29424364 568860699 318369095 993343930 48052644 496048497 640215236 943770402 198374961 377576955 208236039 126173890 595957285 864420103 25224435 318989504 390765457 283228162 963692947 538572534 41299058 331553117 658020034 175014846 74192322 495781146 898714304 709695221 588685292 811964956 110807261 996834312 305416136 180233693 210363135 206800354 58165291 918561522 442032312 408096048 66266181 921648414 238769724 419522278 404916737 738742080 955532775 286772557 661740894 82459503 592463105 427157803 791769142 293314175 111011357 87739500 700301949 324126629 433837173 383082627 375563449 900955245 33544907 192254538 146703729 730786726 594352068 739658897 383314429 716911245 865957493 574040381 268595665 69403803 145545907 325261307 747749170 458042783 318118710 869426697 382871229 63013721 876902184 900475017 792651615 397100365 516626903 157784508 729220261 406492139 472279362 816293689 605073222 35073163 23754936 308504602 19862672 406448912 677693962 732010702 439301919 847017503 104831413 248835979 678181713 308889946 621920852 708193979 123637507 589991678 772108832 885697427 667475677 507665822 195272015 219806263 501713148 681197265 697039345 39644197 382375112 859076069 589928299 763328477 641786088 215841697 750423781 437243262 435871856 99024837 547514605 720902567 165264933 182849920 170083029 102139406 493706730 583800825 779431241 719290417 636843670 877326817 838750256 36228605 971853039 718042934 415701748 397152291 231230704 856154580 366071066 669347906 281082352 58438036 198320963 971441731 594213401 590255657 280272586 964983578 348840224 75544430 224019054 265057174 135310464 354829339 212549982 944254915 989023973 42725332 891924600 670532052 543523204 896535855 265918670 953337928 601319241 563272013 567659475 244241243 536155953 435204450 10047627 789205093 869269987 837971534 608961104 727966876 941639653 333454624 688324547 303489691 727022829 78261745 907126173 241304119 165643787 832650533 388877412 647674132 888679695 462447059 182823419 909721346 793991539 704212754 240644755 820719896 10549852 791302183 287362080 626733124 296788710 565407674 559091414 860812232 250688513 23577036 536414382 102148859 777158080 903714491 485524633 262607612 676944458 695162328 420756270 300158578 632676348 43595814 937141556 869323941 494866135 464038573 401050421 87464695 3187452 431033674 198214347 522316323 620873034 150059993 288693548 651703514 377947284 792147846 183065424 221420391 268597214 978240651 605105657 466960501 888954858 195097372 722301581 360109662 473191633 554222871 853165493 223504106 833153939 12146975 388131166 680365819 647720250 572993121 614124259 3876816 948051747 396830499 754633599 90111271 659528451 760161185 234266686 948618330 644277454 582150778 674178756 137190641 237570482 516597097 778948098 9326145 343129980 392208742 228223339 897864143 19472485 135352543 736229632 305468993 936789610 942947236 208036389 87586010 252094810 559254128 869094779 634398970 421613068 556608911 403571848 1738153 621550452 45629169 739388811 917404076 10088807 862301342 882943636 626459552 141943335 163857707 146443168 788132801 362583746 466193986 668209306 429770621 521069520 378123171 889676613 244792758 827020411 851196798 445064382 700786340 924014542 311821044 910006271 562830867 358653641 946585116 442678818 391202756 985113289 954959870 430142493 912194331 561963876 980145010 36330094 986747167 672366339 699582965 47744866 23720399 968235474 54986364 779682648 967991801 576776981 4276472 473474249 297778945 274240847 977541475 195589777 221404342 720621527 733613465 625962060 513970157 871357050 979764991 972919784 559196657 637289218 623751884 463729506 473782332 791982031 33998832 69876561 27766414 363695381 51806789 305848704 553833373 243242498 282916770 526473868 334403778 669753973 440459011 237502300 401535059 222074188 627402141 654890342 199952094 289033734 916255861 866355478 68837351 642229380 597039092 858126734 545751863 921286508 124055626 427248446 371203135 563516677 423028758 213250381 347680481 715616542 818119806 731055542 277308739 509907375 125709070 999192026 297050034 582322224 418691933 900727935 162876419 190502403 355520709 19228630 124269855 434008885 616479815 733177944 912956184 573692883 687294333 289835411 377488425 11043992 807004572 825715690 163836386 370215587 518739017 430145120 230491021 398071052 695318740 492370124 75268336 628187082 327588038 917383270 104705803 220142190 31505743 496471500 651427179 934742950 231838953 860837203 377223981 604652297 117084557 620843911 960736707 149921404 382668687 614056887 286393789 804515289 804504539 646763577 326127047 62082457 978005373 760930060 753448181 906369941 974720059 774873458 50204481 936496397 32474721 676890936 396574157 521872699 951256857 271756154 417134685 229619019 201240847 941751300 186350294 325553300 185446207 95926022 95551886 245699184 502254342 155396573 52160058 645331356 430375063 212446822 117149725 826240400 909701603 557587428 297659170 204115761 270124204 45765562 192324200 883969513 559930714 880208859 442495620 353287231 830583263 528477695 128289019 876508013 564292819 997042191 69549255 262166174 749986081 264520284 181788484 812897431 909174122 412498999 464140302 232099637 360000369 325682777 287337488 810258465 754558463 369757207 979993217 862848154 66571129 867617975 257658605 565549933 787128557 186080163 283233045 883603233 642282225 604720888 730586061 926923502 772214321 652956399 296928132 304102625 657228942 229585617 165566722 336655220 862285117 774430201 884045503 789392993 649383529 770271560 584064587 377767496 758004407 817217924 932227056 519470027 29581712 679545641 422698589 225910068 622800192 737473472 749698237 42661814 7305817 353911251 313985444 705737622 25657268 815044926 979227473 640500376 513465823 893174457 268133838 567205302 622773246 756101626 799972316 248769757 501369623 551343591 404179023 237349797 877097281 67280682 577393535 453183065 581959624 222374805 997089969 142708603 412612626 974227312 365982447 246305316 611107661 678880857 300293746 722767873 474601525 52327741 211196016 160591760 635301814 843286894 943812198 870170650 127129821 985227758 677255574 102569503 66559077 474602673 640089676 900011068 883716297 975049945 34353541 17423339 917095903 163576869 6989934 609397039 625425957 301795015 842082298 785256500 63140115 784824209 877410938 752863233 71804925 594854570 486264709 79091777 239182791 95504264 833516770 415722694 277873738 57750278 400786656 834252083 500771706 638501700 443769439 615492549 418200972 105587160 917342010 569159978 974912765 325516819 602822862 918416544 190901658 576389920 438011837 565250964 806117990 966026248 599931287 425250507 983451437 360330273 956584830 248702609 312406185 459570736 343451735 735281250 762642209 362111582 471368408 384274400 156144303 670712718 431699628 401104461 311475588 685384140 757448906 114658437 93451550 159735567 98008948 503921103 460573466 222737220 716546790 333308355 895608163 835695992 281566378 834626346 922132067 551555867 286545636 122977536 429746555 320439659 906731640 512297814 811094584 637428808 328407687 184915927 81305996 632760666 162247016 405127486 415715589 166415405 317472305 759973948 716816390 275732549 342243906 560594899 983148388 761201652 224040742 374603973 413207702 87654800 181279588 732918984 68991632 663028277 149902990 737752365 288631431 738928755 583395524 293119092 745635845 318080289 984956257 578767262 18784045 650533697 572476429 166336732 181640279 355272659 103861991 966019272 340553147 390752433 431258440 984137182 361273006 587241417 593469402 578944234 5773987 487644120 338855980 537825965 853247900 30689390 703240977 720288521 519879837 936446118 959936720 361054306 553418611 838488103 892005239 385216881 81840590 712523898 904201064 473543872 935381395 782422342 934210879 766092166 624594927 588451542 994616805 786755285 727559920 65727405 25480138 865245295 97035961 428314105 615160757 970566408 299686773 450299573 205204245 579943021 711668753 875398859 693545265 9867269 262106579 782499125 729768046 911471924 169567816 223603633 826048896 786368383 301157125 771788337 719070200 634650436 156042225 86135784 141467439 464218715 951338860 899168321 532735152 34518060 389479540 196474957 551877616 558441004 783320921 209923757 437615461 369462206 239945651 605050232 182678742 245515788 2758927 942724799 405250520 190623171 191658 874361953 922242076 511421512 863330961 235674546 933359333 846429789 970805189 646501948 642873615 914322674 549574855 153681791 96132439 145359853 111219655 727078836 278876184 14047377 848590713 463626093 157850445 184555724 389749321 429648388 509147104 262985698 735731937 384100624 622608682 83370549 835850210 900652065 14338107 343210608 818688261 204595904 953947513 898457898 82205317 765415163 589193963 968215829 103867730 868390715 112585170 346926375 979551161 607055006 64579718 598317621 530567542 919970032 964746471 22453142 866017908 842009743 184839326 983529979 999283660 126522330 23760887 521981614 188907669 440886269 105108268 488816042 947250816 666305057 452820637 775776714 335932482 582884914 226021189 391286945 172487812 775672615 139836187 205401934 163682209 641803232 32823492 953285632 762688167 408466123 166823775 140727071 382448592 735879164 337625821 981583085 243680838 133292606 361476892 356251239 173349348 590519808 162563069 525461906 614148899 772553527 267628211 475087388 42400050 765421453 384772610 279110903 12423388 286870229 300190156 465522022 640560183 856106737 221016945 136006045 408411160 166664960 844303404 858821258 50895545 934461883 519232834 771986414 724634593 820259597 379857409 301706400 831955577 972768653 784526281 43361901 360352867 350527440 273667448 236698755 75388811 485575075 585901396 637477524 127175397 769514589 261385983 833997844 7117207 45937731 557484199 3109278 951930779 26345900 998161193 356246168 508629225 490069710 211936750 229519047 638405726 121939860 439698891 239418290 562413775 28661812 325174892 789789442 371381753 60757618 72349920 486086001 914517327 603326521 509354572 195447041 918708314 67792418 43023388 146512907 492684303 972477239 894397234 501644942 212295684 428508846 784951579 451147735 437801607 917233450 646824444 995815981 204146052 518188908 379482483 580173022 655133856 437075360 702788223 812299934 147165801 9297427 916495953 415414810 618869392 291332932 305935579 528441057 272779551 195777817 198203704 492222770 250806076 718782182 484169917 553446025 611327369 631898294 346363499 719993287 628258502 747015798 957329640 893997399 759995747 728004318 643206877 10446998 169859976 36483177 725013273 747658572 823105029 951907496 378851183 844061912 896245952 934512346 604539877 544193984 508540337 840725751 587780488 90327005 237489960 751660679 130852066 227741083 992517980 779499645 134451881 177026444 825928857 763168405 680746495 707717911 410660694 553709075 401914819 67131826 204488058 660490263 608235058 308176111 761100216 521162948 179126596 933072133 784064845 916134 649703717 344149429 774738043 681734050 173690550 802341526 729352594 660613844 967142195 87859927 195048160 40187746 592494581 896129158 44334098 226801300 982652308 317261039 596261676 269669920 568695541 360309530 378608019 834593697 950804313 438429202 802251872 35607514 514488389 270202152 670827141 784585844 628552410 693335665 282179939 271024316 359943459 516392305 786962166 206030224 893728796 792012054 442784571 87466562 351461454 829556778 551662068 713863683 30291464 568772923 328035221 567172239 60851975 895730049 598843585 866583363 188767012 962068556 671420458 95080985 227651469 396464860 696616464 975873027 286131200 465894949 648781981 228254139 108532702 499178019 235407175 500729920 190630454 812777544 945692437 485701306 119124642 978413484 308820 112937045 916563605 617942872 245809609 658763234 90150090 629386731 641386627 776282229 143577190 291896442 81529726 736325922 84893911 895740521 905672011 804027998 651912809 586054848 540916023 118831551 914947798 143712639 358050749 324224376 974468855 690396243 302552698 767265083 690379859 598133733 41938608 201723382 198506804 29732112 809454522 868993973 623382233 37895973 180507066 18295576 100127851 1085031 73589865 807521 739854181 128192777 244790538 221342834 371802802 210556160 538727360 742776595 445605527 411945820 759663592 179843486 311019698 737555643 358119116 785038435 245681413 116079223 875409237 902036832 502014493 278042434 86491226 344552949 127668696 709542348 351843517 747468978 82864727 590634230 165764636 676520180 706139735 976184291 293390507 526831600 883478857 223640010 15886547 140040061 594526540 423354601 321529835 863807714 117918283 633093543 181484750 235665855 153410062 525800201 243161831 803811627 644594491 720150129 46260071 430407493 723186484 550799921 596159099 296376002 725221150 842543463 903626340 511180544 593445418 205497229 966138940 749110528 750127070 447928740 532914962 167441727 228998883 679083128 17123593 741213828 7088101 336371274 890725318 98193583 715349006 646195920 363150919 287041083 819132846 38626033 541164385 872784048 108389446 372089748 627064209 194272644 76032295 873210825 373326448 117447182 621500322 468385537 232852984 999207278 262012894 360341780 117360928 979963791 130770447 334557128 878913721 565004768 188496218 130815780 493732525 477587457 525243693 600752285 668200968 676288182 407913959 739922266 523171635 308456422 326216922 47997687 135036029 325007969 823173320 697593265 901657305 848733141 621662115 774841081 259119372 438037903 385440557 705605791 931108 198291743 476185633 742867153 985522229 940801686 934960027 639737385 166826892 83134145 70194058 966988095 681108853 323226621 439650506 587895877 308428966 387643979 543495131 12903348 474236366 976814059 311250998 591067482 306494049 490490987 873117212 671949311 640453504 456703473 1039049 51235976 403123015 942067948 48660404 721061114 28361 79246199 988073242 573030057 231531563 904692676 928760872 750680212 191256735 53451943 36876385 3769722 105721215 443513433 266877577 345101026 675950248 256961474 553601766 254302934 481514508 702809314 636181318 402595821 471749066 812755509 326526668 78440188 523952914 533846345 929614691 758401138 277885980 754467569 966354396 642684024 493202765 557713426 346672378 910985133 60572603 60955563 451673431 545215796 528103817 817490115 527658497 809462237 912288580 496624197 661447938 507024798 561667020 24846981 15371897 553371606 213203235 396785174 810666044 792337507 520102266 358561804 444235470 401764481 314066283 510523234 249413496 377554400 325649336 472194223 537875109 831529404 419044783 474506701 186337804 71102933 261280441 434217274 397461888 946249733 885750851 206178833 435859621 216743261 639448649 162057904 631083226 529187717 719315275 481112890 317627152 513471433 800066580 421486551 907769500 521590566 852196332 972981459 332415879 473046152 627476926 742585900 510655219 652127102 380536408 929120610 251785264 533571310 198568584 35322713 393907543 4672313 350495804 381929762 89448918 829525243 362512988 922593259 776876663 821343469 331078855 790219222 567431114 93268178 395744128 201233092 845143086 214659984 384053046 186702115 782261233 239701628 674329032 524335597 451033516 488045879 80238237 274026699 616570467 554233612 928003511 103991576 163280152 975057728 90856748 63094491 314871169 176780298 752920741 621333030 684547621 926886912 457530523 955899696 383480623 181262788 485559932 17628187 12613805 817430290 155769029 719718216 125275893 292287341 825515194 812565874 795215238 670642226 955033861 897749202 741272793 273658663 771416828 47997788 334819286 593345627 82162115 68194488 63049848 402948691 326781472 963215385 117295723 615179471 613228417 158462264 517865066 701692592 235183479 39544321 848096773 865355977 860199085 325626218 699521091 646941951 787007127 496486901 458365912 407599388 78841423 592716611 476935770 123598752 94525655 275626102 720172682 566089059 786204442 250922534 121137590 323094254 684443254 615207762 379783020 902091793 852254915 182135857 199693138 167962539 282268583 836127667 608705146 2910944 180381295 127926497 213110596 27044456 945837047 156077236 828856618 424586322 202709160 931540176 989968837 203803360 546834764 5133342 239970695 944981646 933623525 710001249 622878803 23940747 655140577 37879625 54215125 842337315 584643006 590943319 139841456 470938719 601710959 706117020 512910245 811157969 910294943 921390932 799090196 1395959 555928200 573069635 87235654 500264495 123755341 848749728 874654256 883953904 440537864 66476206 886817758 241092324 775035579 155126210 317010283 72626780 232541616 952581243 488376457 80867076 403283828 616436935 685749523 913409552 652209647 582683965 109977386 334184215 132859726 729087487 790018472 767577376 174759710 728507994 763608473 741361962 98763065 487873849 24414712 611758541 234503618 861768175 343981846 163315869 296160851 219107067 540689130 699515 440480829 880293422 473728172 663515882 907813418 617040321 448182320 144500658 98213571 824526537 633276465 722225932 852159728 245944177 333714064 765716117 514112338 749074567 369182861 524337006 18828058 179517507 565084027 536780519 661876898 522575785 925326402 868933680 344661369 326895074 573978465 956864622 361055094 824277512 176149795 621997057 872986224 578140740 564414046 188569530 794952452 873651351 311716003 555900391 439705590 413667603 971782839 809674472 252069411 747000719 824674182 507736704 245859546 114500725 817664770 87957330 599299630 889102154 660074537 295786317 798493910 617875336 432779638 823113362 849134642 172102950 709967748 889638923 966073045 277121288 373291206 138061127 330653018 686561861 719819655 55794310 59450571 173491099 767345708 762476304 87299107 160999004 141412321 495706195 260695173 155669467 888092428 32771477 700403248 764001515 953266948 252752440 414558610 628949203 203694163 391720966 447608683 129710899 706877539 249856893 948926435 900107929 809152711 859658123 874952650 516980506 649217842 363264830 636932528 83274422 410882250 831751681 525617115 493912303 794677158 766681523 930073588 114539939 549618598 897683045 605181561 965172428 564103209 736913973 907917547 546972477 57204358 428813147 776713804 504848099 89230405 490360183 235301834 896625638 103093969 266017558 512135845 374443950 254678634 603603305 416969681 435731103 176545518 407710666 247637807 468550340 948985205 313580854 713767125 362047060 462075320 800168607 894274187 870440348 40579346 940015793 704874661 322331503 10011391 63364169 963805884 275590987 34039608 965658142 924774637 804833454 358848385 220473139 621645328 12598068 347364896 185585112 708079293 551367923 857383262 108986444 865959497 552708512 310624039 248947509 821358393 731983225 18027012 59101923 268363457 504045991 297371897 350196467 943822336 957201072 960122817 970506917 314536502 996851341 705749824 170646871 283465061 905611819 218363409 499157024 19464248 776631387 857627644 14368587 339626156 991397141 145360557 13116554 193557821 625188741 795677007 901958005 429131730 224616695 589794832 827126312 709790089 947809299 839503834 239866905 703972035 677635408 640836366 204610416 68924780 771326311 705781409 402270282 856797467 968150844 522124859 23833849 287116942 611479729 62421417 102594696 341750915 951142007 777681320 825489404 80992945 524935015 766695374 808971484 169266566 417395300 642752288 650782714 758295971 833991044 579246170 686243360 420241702 307232745 715470910 284025968 140097270 712221815 591303906 427718450 43897349 151755996 224929818 140039962 933594198 11908477 693357154 935198356 470768628 437852450 48170555 778597020 202104709 502038085 642495522 373309131 496204087 341548702 419801149 156761899 367628237 23949998 352487724 8252944 12277176 965073328 999199682 853295623 918090101 842215195 610131691 355161667 907981765 484183186 276612929 570666082 992511290 539574663 66939654 212064862 121072164 452084544 190382592 708217079 711935567 112928384 772100901 203533140 11837997 993449343 599678268 286891050 877200696 917817167 231045465 904447366 460011065 906022565 792263152 669109772 190619475 114180872 44687030 729567471 659372696 274152561 733590677 829572714 499141269 792935129 918301879 719370942 195251010 846757982 789493696 716286917 660668554 702582852 515399111 930587925 774022082 902730124 131053702 604909651 717010758 949490028 73217131 628583621 333592390 266463663 467432883 100892053 144519317 694728833 219181209 744792658 988566634 58537211 387560678 859400271 596204311 213916974 73831736 165521911 371204193 180072468 994282660 786198562 508239724 951602267 238676798 901329877 55231797 630653557 358244818 463491668 591760820 156399305 196348179 584165931 153963883 765781005 426027470 113707024 769567681 173671884 295295097 819270894 621688334 730588601 657839329 183187255 296396246 683676403 225978378 47943927 481368348 318154546 322171424 676785798 753818296 57382878 510291785 472067998 240178309 83930160 211362110 514663634 103226015 803365910 508653241 558057981 436730396 628618843 254134801 986860993 911629392 398891059 699278159 347263748 286877557 655412901 34786591 537317416 840309257 944318407 782562960 612410903 905035014 536933765 729170231 918958621 69505460 777570734 757945654 279631391 945621552 660584889 175445728 329385944 398420702 299037239 411988010 542363436 440983707 302334375 894200842 369721276 967999009 155659566 344696119 895117374 40863134 554874185 621229672 917632616 226343592 944112800 113748109 112373198 307679166 206250567 788727865 390851609 190924158 290318127 467914834 732623178 57573699 683615633 425583527 916961934 104083072 348324296 788561364 205747577 625757244 827000216 645591520 31611762 649329821 938398685 935854883 558408917 653366888 226658963 841085773 552144268 250097769 96242720 400146807 773615117 74424320 152828326 459504640 777422787 42099311 14150898 978705248 208991842 4370694 384129402 379728536 897015632 455264606 252812655 518795366 128600256 731187201 32018987 293969910 305325848 900073596 636990980 527137079 82203294 84469053 858650159 2463361 152626324 120016007 857476792 252786956 539579912 519758278 748267638 899217708 987017528 324923235 165210257 687308027 774655338 540792232 359205535 887785679 1609119 2655312 899975988 825092798 605504339 148770739 153156442 804481662 270405960 738578603 222071174 10494098 517187859 197292988 146422811 478445699 620710381 150645088 930685025 702933271 416665813 367982047 846632760 700072000 363099460 891507618 670144451 659774143 196336185 427524737 640130381 138021444 305016458 731769886 359295938 512590791 878774308 30255424 942602431 111796116 17409676 969449668 802501807 416167508 283422718 944155962 61673574 366843094 796358968 243993282 280390213 597422168 948540850 447272917 207989820 119249294 564283622 336373210 211007707 127776969 959536216 424461350 694707178 140952214 976475813 535929016 379397088 874409642 390990641 57153449 338829842 234742231 22266617 783006562 436479954 64957484 986472122 669467873 194201689 129676585 478776827 61861652 729552491 434317406 272762637 991850845 469465545 887703296 14028866 307985853 24959047 791788260 691309452 214748644 133511368 843380112 205170729 145185781 632535441 893903009 859175440 334333865 901254116 957435960 389334549 706203092 351499189 477213485 48813961 864748651 740179084 973595288 586199065 716559215 79857897 67760657 56437995 697650507 544464934 431609896 686640462 643006415 826952416 750367316 312690571 612792112 528308145 743600331 351813766 618498790 958605028 745657575 83877804 210061575 200433718 467684868 56543510 42448650 669927697 973133849 431061633 848747171 802902120 91867505 951089150 975967749 755142476 241491489 518131086 734069136 818345109 256399362 523806792 567962098 437810669 332997639 330207884 903211576 244685905 680303152 432034415 694360626 662714362 686849455 548157826 579500702 573824721 484792654 719225007 348256304 544850043 840301603 573938092 626201147 564730069 921767717 642698003 526833068 235366484 30710562 50800497 803347459 317733055 36446192 581514509 538161420 925750467 917612138 665190708 844896945 394301848 307444231 871198799 14617579 516442694 460995016 121520469 53303026 51482521 784516207 86344563 986205019 970679411 681357334 917440964 129620478 520167543 385171702 349258185 643860781 277442115 580749350 777894050 972158207 681122770 67578733 135706592 999148113 632549791 445377872 187417384 822763403 546235718 559469758 981104343 476062590 990790634 515487923 73799805 703089697 613231760 961762827 503481471 137715666 283900765 642037821 379406004 471678515 954236907 233821519 317205219 654627721 179577948 731174049 250450817 145355880 208126994 386167103 678678097 191318911 150361048 612617444 974090990 135347957 447701144 464202541 111017617 629552168 473255509 322005544 520657039 548269560 56492540 723780038 770261099 814011246 420115480 853894215 726712789 66762837 31486593 320693610 855797629 547155377 311300771 462412557 61476433 198487051 328340158 390178914 645280304 524210339 960950898 287941191 80579612 36600441 599959907 74515185 620550992 501883591 273391347 465309523 120158494 861877622 873526269 221597479 192146271 453312625 291115728 378335147 938808775 502988560 538211934 879438903 793681333 197166481 189671455 851129869 96091563 834897564 24807431 634423141 483625360 357111182 706126022 549074020 864262923 74969135 972206968 70704438 614745885 703342046 376700346 385518179 127622473 493166150 392169752 885611078 904289207 755630272 612391079 785999205 897424873 179571186 128327020 435068540 497852896 830543005 678901993 392060681 740485302 85534219 775411681 324390048 287436849 925640789 607496248 402033782 983642526 359368566 580103952 431081999 823413399 594017265 796474295 613108603 319047337 920423635 828167166 579792059 283825421 314042043 640241687 833707609 845590635 583908922 820027610 18084419 170205656 705482226 694272661 405171534 489094514 969109092 24614661 998623586 491261016 166412456 473103125 213406108 361751284 891123140 48280694 39996571 391039721 52071818 170038533 44094889 625227643 867086864 930917202 464808229 370868281 525456458 328039338 360117522 732718388 660640321 595092371 274109723 637435895 465485755 468224565 415929027 691798871 901553194 721441164 816355448 874467752 533014502 508794545 778195362 788293953 513719501 928108168 789674192 345165120 640387456 850946504 938626285 919676254 540686837 675585681 324097415 22600065 481095914 273782197 307880587 15362154 392829917 794140934 255533569 269892667 588534061 396670059 905178934 184995931 672402753 163845039 921391716 415160784 355156577 321378545 903820607 330420180 266238521 957819921 624014632 89644973 202262591 911955301 221257254 490459481 997792354 953613307 932894641 482741294 609117133 120231668 788004438 643242921 906619624 124579742 54631781 222916565 326598882 210339575 636869060 8213374 237855145 309929411 686137472 405835806 683116016 791082874 634550069 762495744 640836111 537420256 618298559 795836016 630870027 730669871 859063234 793350654 255928526 385689731 27329226 309139204 826317452 334835402 680609088 291122572 47851508 135648418 258125180 767874852 269619857 144302855 13670432 407165758 938844437 531399555 770965117 949601954 453214439 639834082 168592240 748441655 286814812 810064640 574389576 661893809 310928253 407498279 455962774 171789707 31180119 634962252 818108626 292048614 573368640 547950598 967739446 850277629 795168039 122143786 743382770 180743111 950884179 455805112 274528871 836527220 343851685 90618304 211369905 842128935 925051417 670696944 738939407 436535807 969698235 898773678 572562818 693887289 341738191 399422281 174378166 210479390 163966672 90816794 617927925 578177759 920218432 123647645 700400890 438706588 249920760 816342234 376964 269593581 341251751 654356359 348531009 711767419 394439547 315274286 656021857 796496454 21335948 928833330 131444262 718298133 794568067 470837233 910392722 339621433 587817048 324302563 253558683 191815073 962074660 123181349 298186186 956984713 762152019 500338629 539944252 278307398 980539577 6781454 468929578 313925584 940558884 86104183 771846249 192814275 251945983 369133449 286585736 533664284 736550662 390111346 776833505 908398363 667160815 122735149 67008721 500418008 635825833 965911624 42633696 915092794 94915005 515773505 704349434 711364219 551876989 741898487 985854307 865462883 284786273 714161406 117388579 259329828 395808665 163431114 206485895 881917767 614402056 173132175 300052218 926730298 733911556 981752042 812478357 692123571 186529797 769618053 438271067 714930812 661896041 621082221 463942103 460129293 693419822 991417062 199290806 781239917 67941630 423663188 544489951 478202306 390961924 57456757 310949761 245294264 697664588 164318123 31917581 968927630 521868670 804295226 732140057 278446338 327809450 331782033 923203777 30476879 948249234 843482032 782496665 326309500 674860220 608523809 300762957 439417867 202197985 644849425 718227143 348007721 387931473 357675613 649454004 632059139 32008231 564791602 408840196 243229531 461250236 11247126 758656228 150373934 997542277 772890015 499878103 258294229 280264876 331076355 80390102 918673451 102207543 851472577 910513211 39087729 699447518 173980464 539441240 285969335 502401876 917533621 605180541 321310095 883137026 604638507 775680391 460557906 598489848 742354869 721586526 298044560 758137571 404847635 696589474 284992572 451587565 152978602 371003031 101289958 63099208 584563877 196046932 758137201 631465438 398832813 557434480 725049393 912651007 440598872 465837261 856321356 158835925 300804638 732553738 810644916 498841616 429728418 615400205 441044321 298290344 428980800 554606401 810757748 335383006 330439404 100186804 849517914 392379388 532727890 918687300 17445559 250968425 512386488 4037644 849618174 974942305 862383663 569316252 128690612 866877631 297970189 306220849 878235941 698439105 955715608 695035591 556772791 776888675 387559474 769569296 560350055 693236604 71307240 708840217 457553225 213857094 827988562 247901646 368010415 773905138 201811533 996787195 60316871 604909410 315706712 621419404 763070283 161211609 786532851 260182780 356537885 742401525 758177012 299063960 877198365 977631843 922058807 846811192 952343690 16554723 113876032 943467318 340091649 49294333 385606947 963422637 809074976 730146184 8464734 655506466 778435973 296402307 729737957 686676766 466002952 646844089 701185923 199557029 329196525 923578359 224486243 501200682 318174369 667346715 7227570 605167309 579649343 786089154 562582783 992985270 5837508 631120194 174039307 299903310 932831525 662171247 288850196 67450215 29229397 252086729 877079294 633275161 526813445 744704099 144855220 875976087 490519336 951984434 269003678 541144124 590016348 473406003 334156993 715789763 814022511 233501331 93359186 507629181 690593371 379365954 193540182 957714590 510851790 461526344 735255400 43892233 369037184 146934840 745296933 845869761 541547327 577340984 407428651 815942182 456423910 687450429 284683271 961060595 510442589 331985300 429865734 29693921 915223534 485430977 946122694 709765006 200779268 360786886 693264404 897759031 797308371 150271614 346464248 621975917 277696877 859133708 329229786 409236229 897942865 593213580 479042792 648700526 355705514 112084872 869006259 483172326 328359948 350186252 22005750 477362751 940111601 901593749 921654123 754609065 484462899 661194606 290938391 784054440 170752791 286270788 673641770 275224535 442631801 340940413 563295841 531545666 522428414 847126680 642346020 83245062 931461513 291171235 614008866 597450355 701039157 345502863 302458795 197403488 556971604 975261772 450130545 91509120 583456345 553399446 734354014 881550173 194902707 436799390 501676926 442885675 916861439 841238942 401344669 373841770 107085248 145328893 803103966 687138696 636671448 721216283 673990687 308118193 652590473 177420472 673606572 408693488 453510325 588545786 376666407 576441730 80292708 918699319 86867544 123101733 17590796 624192419 698481145 430087545 488307751 114662649 327294237 443491559 898940909 866712046 978570172 177661228 7441056 58860546 889704795 801745566 725852026 526134798 10258277 400244953 259011168 609158614 982188216 813788655 784803190 784642533 477659478 906735159 773971287 673643809 76586819 510387159 895046251 433885238 575226543 809088475 659085708 223809854 953000544 911966969 218352094 187949090 251406790 591435057 511379004 8223472 220467991 361604061 509929173 285984472 171652196 942236348 556669235 702131735 776230875 106203894 178411843 721339454 770700464 972561082 71635244 733129957 993510386 233115250 73539131 702464052 136785211 84827599 475228581 477764163 478379211 361772828 194530318 253690831 153470269 370723564 576050239 458741477 249032971 237504083 536697420 725557511 449933261 234820470 707076903 288346940 652259843 974311443 252135942 568216002 802495366 833858075 205633787 4958081 340544047 612010088 11124446 399497584 902335277 331829067 826170765 900416923 732951057 674064985 338215793 568660439 125115765 111211954 805610492 442094788 490706474 861806273 797059472 400088128 59531021 915814231 888282336 898835856 804065869 141769404 422057035 188192645 851232365 824433599 969680368 291959371 727376177 779662411 894055681 106094680 311947198 502948356 786315991 895255878 415354035 499417693 697412286 658555875 154028846 472750654 236496316 286551200 612392659 478431434 14349830 185671848 211706883 92815480 915806283 151740598 267631089 628126618 155656046 633797202 863537176 513931895 879302968 170312986 622883573 828449490 483760619 321153034 172902644 885142901 886773403 691306323 966703383 479885898 535571674 719506999 782370379 967878986 672178624 583494289 574212169 604668201 219665126 935318747 279713659 761710047 939291074 316655975 373674185 838438199 584026348 453916633 313080080 216508344 434401315 204319141 283448686 329286979 931918125 937613980 43594910 642491758 770391961 134171825 138690419 459180736 311822980 748258508 10320304 373607424 349754017 6674067 867175775 590441689 791695510 876757251 729878533 620400155 789382790 266057392 443325524 291261507 205397572 473010442 558526175 92815863 548002737 514590973 596864146 159354749 651756868 306462559 1448381 762535960 42323056 114072099 850979074 61458148 590847172 272651162 888316108 656079295 327999154 729654311 11152516 355827743 454160844 21890823 817833885 888905896 257507036 647550280 251093048 305017192 967561380 473475550 279820738 610508873 297865606 292784535 181646762 124573340 153063947 885595096 196293456 236928032 80655117 951275113 44874716 274619652 63481276 142259920 847836521 654932407 590319747 223708240 163785826 835659271 280397931 973166744 280641881 958647839 979830453 677166333 256013259 485249976 563156853 476623250 494945688 749827708 994376341 61647216 157633092 639277239 782601 929847206 739854408 609828201 553271941 237219305 512765964 864090912 359218153 11026929 718597630 206980481 499645044 714975083 515471132 7757794 234386523 533977543 75691327 665670555 819047784 367164561 247704815 626060590 406145390 301312833 638427533 928209207 361887527 79249917 850179044 719208669 612499105 203659710 603797804 847601835 786938313 275582107 729695355 205025153 182005800 418664246 576915499 999374301 180594509 877988914 318393411 12519507 488508265 798956833 909304526 477832432 159318880 371248652 139107086 321896999 41239279 607539361 411431892 244555914 264756211 798272615 755852224 924110636 155232698 380516387 433968328 542151334 537503921 298714941 586811384 423741046 946895035 901044119 899264960 832407894 219501659 909950614 442379263 796467535 443748733 871012282 790850440 895467582 713680644 922530059 13158945 570693586 170250246 365892319 753233566 295286567 493668264 125574719 706064217 208321155 117562305 859151521 919849769 12071844 616495068 887473624 190594567 104390568 716740384 915219665 886179355 991527556 180878943 371614735 779005358 447744872 780580202 50220854 94571079 621843977 951912729 220053086 944907909 870823883 645821736 113930641 894100784 5570237 294659270 38425158 64271931 447015019 156535526 506514802 758884760 968349005 375101594 837167598 366148017 54650943 33276729 584862118 548111367 191419340 631552580 426771264 718072953 544649403 315891557 146980797 954870867 788070801 626574762 216812489 68572742 293208015 705140333 479164115 476212882 489443332 597520511 840140855 673975002 387881388 975604723 737625210 693254092 863932827 395260637 465606200 117603108 417669202 649556558 76149360 374191746 607352869 148047213 353422285 902988612 124501963 668225723 96254653 11706508 478089036 466407013 282385201 299299344 936326705 291001820 474175554 314034806 106989393 872142144 743302312 24002525 806839668 394593494 687080442 240748382 992551403 957844876 698831940 324104897 224163707 837646832 10087597 904048035 318885134 676901742 984553349 255104024 174148445 211770828 16399559 670509487 394613141 123107152 914093121 79679046 33346343 982141763 874407846 526267440 105396321 372068353 176994847 854453270 648986709 115471001 478941173 921680769 71435827 647943194 166774860 80377465 786077624 6191510 138582418 78036794 439210682 908060944 585916693 577205339 280164725 166064596 267460929 931086263 368787015 26781510 820278538 773692318 443867456 690508435 793040545 226055100 174046342 628693857 899999606 190741004 997156374 443116465 971699534 485139175 213077806 243435559 969898209 639414783 720566003 171557726 28058305 668072260 21138058 315755295 907965749 198418096 996043728 190116459 334749020 441283095 894687919 605885553 333806593 675905257 206985623 745202252 199406254 982275132 76016021 157497883 361050204 384027298 490090241 771155917 528500913 680983431 39471548 50301222 380743874 77767016 841017284 683303590 497132267 489179221 367386115 136062390 989757297 698658211 725875808 462048854 322096851 867439346 373228268 805027917 782941967 199660642 967279057 667902836 30735559 772408910 996710439 50546905 148045962 649683560 533427270 833178315 911070997 460483478 124841027 375656290 501518968 370909511 7759048 805799159 79557929 138229231 851548285 698989067 39872335 253100630 54980911 667927484 990574140 714089610 439808329 520866564 769986726 74051105 398791267 326251788 812274031 98423938 437582237 744223413 174520634 885071866 847111791 29759094 972812814 565056 261519806 176747408 450328175 100624483 135425470 862301642 489290117 91417403 138115039 912164706 641995190 582562674 593033544 343442888 523223107 231928245 964369483 436423562 623980626 472049869 541454272 278644588 71063645 728123298 60318606 72492340 173797343 620315626 291272015 798279316 314123725 317263467 432355262 830567763 788125939 286835660 10659904 590629441 521487214 39628381 886821673 62089982 214446925 145145393 546913833 325258982 388167310 717553185 291375390 883750003 182528847 895567233 888604124 360273387 351578243 494156101 817165372 886611154 154221881 384961153 398647999 468012957 364213681 950107718 476874506 698806002 697714888 15674839 170210871 12087865 832167284 202910329 753808162 864766939 53243829 323687449 956196477 93949160 17290518 4557958 665498432 629855105 663022420 377269238 483924284 293710681 760025974 301190158 628346279 635330627 883706382 556735333 551050254 85496194 615833350 324464839 872853562 103500016 484263015 918564969 570020285 269587660 124846961 630729477 548239502 657937321 892697730 585165216 393403266 421971892 273630896 439729799 723578544 162047670 652298112 955027931 931415178 191308140 995243307 789196627 715752880 509618269 106315904 373366248 386949673 89661272 16496552 153028463 105721540 792602841 552170051 847416424 613670536 461416776 305388493 105642969 736323559 32524289 906398826 666937545 844321533 187112166 355131476 662501133 811778661 368455219 821458590 152937266 391305624 197486466 182987877 826000703 373131127 124716524 697116320 709327405 231240990 112445748 626820173 205480579 614433824 277049804 412508137 596486640 285633901 544961183 493997360 511129963 672101521 204095758 857671435 912364078 337355298 650358862 786997177 401769297 651667149 466281636 491810518 336879741 634394491 154731587 294093269 851018369 244567474 904697364 511779317 511279632 128187031 261417818 106115612 16263070 274140007 800391775 734285544 715029248 679936503 549709975 511070879 204952928 874459941 306127921 597581776 619401966 244814030 555823660 545727973 210445863 735826498 53646922 85644068 74050796 582305054 687360133 782593205 724575780 47317548 652893188 7112436 110942378 747052379 921022100 911996251 663891784 775724164 427292790 40848874 521007762 176865338 471757234 465821150 625307255 118201604 836477789 287712148 20224770 669077972 130739703 414118281 642102257 602656056 741954440 464336704 200966978 734448447 896489205 292506281 326444583 544356429 844357193 648278347 474142298 9362591 630015417 207398448 654267340 81227307 639081471 198602194 664422866 687137706 151762860 990690066 114377288 855341496 239919376 696922616 847023675 892010395 452224995 68441738 794453495 96377081 443984458 90875193 777297795 630483588 482845585 576920476 759730776 126727321 129084693 299957456 183934501 892999987 183584881 832241444 807155471 588387957 800215470 105565868 498811447 743624337 628789657 345177223 301143839 891425294 530785428 358306289 203963724 647703537 164378488 905181538 505428769 721684263 248534835 71625120 92797380 937598258 706997802 306496801 325738217 73411001 778070901 758796780 181388844 771223883 151340667 844695012 981012724 262024064 133327931 413575467 788097912 308281112 466686793 810933542 646813161 433899644 988107750 571895199 593778900 850925605 281243583 666131732 303387062 434176509 37340703 479301838 787298256 735990881 994211984 4091306 33302115 589870861 927540310 117184367 994422187 998240047 702223172 575922700 718860795 415643264 470014521 482113917 612202361 101432064 527616944 742717614 342356148 58957869 816742864 271470075 741710926 203484476 264256099 284118030 200921446 699453267 795525409 799240178 345680958 54729322 530725950 127140987 123518280 128943679 122313678 74239484 650178066 456157857 934038078 988769637 362129157 845048174 954283028 523953756 529629037 9983093 668332007 263737862 209571907 443952130 960281531 824131878 627294170 372285523 773332796 630843894 689415007 169379734 18496894 206969847 790697785 29398425 667358800 215335818 177570643 315752914 937484466 807411677 603486754 562869974 821548746 520361325 530509291 500442032 764601852 917623602 38819201 449594320 57443129 623880536 666612770 532902824 89149322 244256554 683580790 787760814 907660486 652721946 451165920 884301227 676010727 673887593 829180537 531477573 148580088 893561980 189766333 874107544 752657877 716409565 61738125 346300255 618340562 469969089 634654642 263811057 301728563 504619234 913700823 473577965 651387450 474628307 620942601 603322079 568823772 346823357 407040192 494107296 884639719 957984381 668405957 378446969 738277571 697246788 910095941 757225963 103625047 794104894 631379771 39256100 340242218 855126327 649990870 167326365 967701522 961627076 551176755 648807674 166250629 405586173 684450378 999113818 867279203 893884287 584383091 5862681 204723242 586610389 581022770 624683685 956161721 684853844 388430829 958746702 24353763 135114091 383514976 138107810 107881948 700807557 12791556 968741922 725984702 424754367 848508671 126399474 802211883 664619028 569883707 391354549 778655977 733046114 791607648 905960459 467347463 410808782 254071227 760279503 337485865 264363142 961704985 803611034 191305536 499398102 819070982 382122632 252606344 190840352 840722624 937545675 485659250 330915741 859423428 247871684 333448916 335981652 411373475 625074442 421526399 132232270 55367239 447920564 455473396 62392426 226651552 810590005 721583827 820465189 485522319 404503234 562840400 190561517 428597506 96064605 382517100 6533950 32123091 278983377 864052083 455542072 678516273 168373603 975272590 617735751 399583275 947860535 758339771 744043767 370332259 281266794 131004962 238616771 103903008 372708120 738066738 668467756 325215653 586760937 879879650 530471314 774691569 462187815 395671681 462397011 112573149 420334663 943007545 814000569 438885379 899501862 162762391 4558758 73899826 252771368 499689089 335639746 765630803 403626044 436886176 626981407 792429942 867124681 829227440 865060902 461945668 483039764 605115466 5804748 539877279 129173595 591922369 893303008 566081509 709210033 905604601 871889588 520726327 561955290 333352573 363604780 317209440 510401865 9187709 302829706 682218441 443944184 945985183 575280824 621199612 892273295 811572866 927689495 234151811 808426537 20071629 43318648 256587843 41548261 247728520 178977543 231473992 436415535 1261 203281582 406275646 288429073 156427752 687401800 635874284 31101022 315643872 711261797 656660313 220231057 561969377 62015397 22698227 260243858 201079677 513933075 511266602 118286988 792906860 953685330 745500214 411834779 297454782 777029086 185765733 719025695 816621175 633897339 896155946 669387513 526716701 834883527 897276413 374131204 263508597 618129342 477562298 256649749 319918600 130908550 656219599 218022392 420857 879084291 871177260 531131608 928006786 669094565 689780872 849643898 103758100 982076911 273458564 196456259 695044460 365202695 435284830 208554743 743636215 102141251 805106930 866860867 878169146 226837893 494871841 445920933 813476031 10126813 802274525 970818150 301307755 260531083 406696594 873619254 552494241 849496856 592671378 955373609 82799951 592748136 670032367 521093103 90428598 765150869 828542285 282794670 106665397 923069414 569088243 790804207 135595555 356696459 241219371 49402704 970034012 932274349 124078615 587209837 112669187 553877834 401750837 838362193 122685247 4272213 515557011 29173433 788639705 975609002 66252143 782059649 913824207 528184078 718066991 188574368 865111729 839580492 908537488 952688843 941172655 609402882 668172281 21884775 748439272 218173129 947543 744695132 946262122 260462647 160770151 521367103 587244610 529598957 117465343 442774011 755727004 43942875 766600436 364537893 445282465 258423196 286355982 108159829 649176593 509899907 204625826 314221478 420421882 778121611 801699672 509237230 717049778 162256981 921228226 939336839 232979678 673219300 401481462 660337106 530659504 872201201 715513948 963274340 207168257 899952142 328933688 791429999 323676738 812321055 3731427 969453998 369992393 339791884 923017252 439432703 386382559 101880828 141080641 584688140 436280669 72500879 727860744 408017044 653560442 204705136 958468422 428041930 350217690 392141950 724498537 168143967 851687374 600275998 682565582 808345757 367727145 96625787 821539879 16138756 528892654 329872610 775381316 62467390 86343069 299819111 922820370 56501998 131190092 851853040 735571440 578982827 374337678 14731150 800523719 294528313 740412731 288077071 357253664 853747498 905864507 141099145 420164270 142209819 368929646 943410771 375352832 911106387 314277293 856530229 284128150 781894631 35397031 357738700 418272345 509396943 923190832 351461212 825347627 437325473 853959608 417069800 197955933 595759880 245661811 71996755 905417291 462758425 906504860 692381560 210473625 761029737 559311957 873764055 737049074 291597118 834609369 414274715 685621189 670903288 100785139 239141574 264130435 541686033 446422724 95389998 52957295 835381197 304297168 788179040 189464948 349689233 233912831 888481360 81257919 48962452 750710626 14265245 888976969 482907996 885327498 450147857 492415160 142015002 181276677 12645897 815062849 433345391 505086589 116108978 167876903 808370642 757521084 814860950 947288086 489458328 71374854 108062062 797371442 62301550 208575592 918531945 266190616 566511561 750228183 123429748 514525355 993744940 965985571 909604596 489874507 166107428 37241361 505713408 588010318 743586083 465918410 307955714 218064528 300555497 462715564 279897726 239625909 77868297 643195635 514806049 212687747 616227811 725867251 277135550 256145849 224162859 456050170 331682941 23053302 551707272 918897383 915643310 771903878 570907396 871489866 523757993 817922929 740848932 127636689 467301038 17502530 968079768 463874605 906616116 960685869 827236118 207698805 45956759 506012441 429557662 246635123 913483029 279485370 493417742 388577158 592925687 700369442 935288972 467618115 959125957 430413608 328766763 188866730 644166508 373013729 774342167 638244005 252199598 483863161 605550305 583642963 248752002 204491745 315474306 642536902 470450494 545300355 455116938 956070400 22157866 499093997 631562043 988302153 10232918 861378127 713661318 570865239 196688522 396251333 791454886 481268481 897588315 983935524 180716056 201394751 357005592 472199597 223614305 837852723 756533568 672133047 357547464 19867550 468706306 241805221 418641222 148075693 696760822 506830970 936875601 763869239 246610736 732395695 997614246 359426118 732478779 592571676 846962683 957239979 500871162 620521018 350422111 366948827 794015312 355614996 472287642 249554875 203833441 242196607 95976745 42532709 521182430 517525004 877287662 362200746 126801946 875990648 245205833 296839808 688949400 394095064 286979299 216115252 640606031 252478446 175858287 713697110 927442968 61240351 619430764 458497314 654565442 223637238 742317953 476324332 758287161 50009993 586342478 328144530 622084081 976532067 729816294 758468387 115977877 29649204 694060839 746785479 70098723 294646363 587659725 174661304 649230037 557182296 222225985 473866743 956345984 26135182 565490176 468009432 745060820 198425874 110588283 537972318 739335752 46444024 858720435 668163554 423260326 54846684 637732992 906722126 214047225 268730549 807254126 777979390 270022499 911702507 897503263 414971926 887730224 745039388 56886192 648714896 234480476 497643158 434070763 808530161 667967772 237126926 992531181 801960962 385869666 834857642 371934588 434067048 493202313 557760799 112514328 286448082 87531253 24435301 647099270 433313354 116741189 390954137 945984169 929553783 238129622 162673864 582887979 528451691 192119879 551224411 943229526 940771801 817824088 969100491 285902445 95936678 994033485 672172392 457886040 606433810 974875759 688873604 926341282 967564643 663292925 877018002 655541343 550273458 663403531 966839685 962807958 667490304 518663248 667677872 713612735 82546847 471158165 821321856 988588971 438149012 463914045 588221866 830594621 268633288 404873191 563831616 619150825 59819819 439398413 653664314 702096328 954970673 563469208 336488107 871648229 532125744 627957860 939304533 78022328 398569469 508873626 644933270 88089980 344796684 985419236 745036354 589256157 537095478 719156466 369786587 308306532 307453854 485922795 975866363 374781607 934337728 801179408 379292914 303527490 154840814 824341853 727970495 406255707 894633594 703102869 255311515 706382554 438844718 454120591 481092793 804077238 111800889 696438867 815343187 121905555 338875267 37166892 185983846 934453205 397753016 817759290 959980547 481857327 421596700 318722419 412006930 866129500 383898268 878511345 867511292 216996688 595317819 128819464 703470442 527671538 764483936 793619515 938781668 870016065 453908696 80869979 379894453 104983694 188681990 482593697 552600062 314361702 554507618 314043697 479265789 566639663 851094256 735506385 586517269 850006412 707717632 463964099 94279387 504850172 760212068 10395174 379696306 23515373 191377262 265964281 83648713 781424018 464823120 904707229 788864630 518776593 929326218 48567939 918930936 48195603 600282114 634822824 648735142 288971490 982253345 858952942 72999712 34728323 809504935 354894771 283469661 383111655 623418193 456886355 708364674 504328177 887660156 320289129 758401759 272947909 756748011 286779755 328751253 647215526 896319942 281663587 531237824 627433427 780941379 147078604 898049271 926297279 718389384 746039921 538250030 5400614 850654937 127064508 422018563 386110141 637878929 196834193 953542703 166076344 161814846 766887888 695520160 855447574 665762930 828290329 578014784 895370342 509645105 680435870 651756256 3424072 540141942 166732142 186673000 477465612 562842885 679616337 712951152 855518180 42517139 839109579 711905703 900917243 665553056 94541544 536561451 706670889 749715975 500783730 778892268 409192096 908011413 635053815 214547540 373541679 264472409 968985691 413778218 475943790 492026545 305849494 670015899 558452943 7327161 198853431 214915471 86163644 399375991 608474260 33326398 493777428 947536454 440445075 186101210 872070490 867198434 10959762 202682301 662956235 402427737 697056335 229845151 700452433 183306010 357350396 598078576 439944479 502417595 62410591 389178005 137839812 250160055 723159650 576179538 110177317 170669229 76977964 250677235 844456516 194215363 133700898 714316586 255567492 482181527 248826035 941003563 997908357 512517802 781377647 223415659 360685597 367908138 499160216 172672960 382104471 343908600 958326782 415612186 273233490 693403765 67384794 899684671 674729985 952708945 247511612 870159753 96881965 43856769 287612316 423007775 393474770 148183905 497540980 560484991 612271156 113187671 901596050 120671907 931800814 316777262 666496142 822386906 59255091 791304486 644359292 79055444 961110089 902473162 329224068 967971570 826031965 642033072 702191654 248016257 56085398 656867429 811035460 280153247 997536710 658871392 342087787 688940260 784714380 313116959 262173434 314481813 788620942 997115641 326060912 675332483 183837266 299081998 597838468 240866531 127249748 219006909 62738677 595507714 232881429 912194165 472570007 645377940 877963064 503933287 634814501 906414833 622780816 977432760 485234166 24510396 417156164 644777793 15015579 302504568 875978560 145199714 711447716 434376264 562755015 596691070 277807587 944217874 758617001 472765134 60108132 759811057 537287380 561001858 52403818 486355820 339202432 270500538 358815557 758126305 796948985 316679298 131075837 690478938 845868045 432451073 672822710 484495805 865922896 935600348 279546378 644894378 183064771 629689589 653254053 333541155 39109980 889727053 150530186 231461048 694111377 63419514 372493856 430483831 766755278 762826328 843739467 781071115 4050548 970855705 967419903 285727868 745195820 614808189 356914060 708017288 113518816 653435491 558396987 749201536 551865697 801740583 309728975 981919645 263320386 391878670 343043039 938429337 844164836 470816431 302149482 126486667 981405912 731945338 699727980 490033610 277899864 7235268 965816025 139882886 789867131 483531992 88416455 850682977 270998638 20894687 804443025 31281024 551027515 233532610 245871610 194551091 2866262 994180962 97507339 217186045 554295584 623233817 389676117 348545095 673973626 106508896 784756356 529423175 743496750 506238127 500886148 568284030 227471818 419714349 257278271 691279857 71867599 365449082 731905530 915800086 972876280 685827286 311201472 813062624 847939299 356400229 844528796 947961220 222216500 705590053 384753726 477723584 26985982 336122128 196918727 463964350 446900230 51613894 821630981 359924719 940201254 945509025 882317426 648191430 566729432 602059522 46727497 65413574 217313780 273272195 195270580 222997697 833229401 137410710 328290990 266938691 330762971 510364374 425635340 679653330 399158115 239218541 236829092 333438952 806378404 523414430 332266655 828595866 454725104 496041145 921902287 961788863 963486576 818417959 301742595 154334446 57380943 678969611 358455668 62129993 274925258 492620330 264006905 270133665 637278768 276152286 930263792 413724298 955719360 147522708 30431711 347268888 35594107 398020076 354836400 932943523 497427201 300222099 198315551 740297789 163488927 155980658 262198353 269352070 122428734 781524271 482863094 234117556 566449925 152919212 157623201 834707167 519024302 549151008 668193378 841302995 946317656 928068026 145369995 436616499 732567982 355644272 463231129 76048702 929544461 780295439 191609618 487573489 459664641 408075425 904340449 657229015 277911741 848402547 76035560 912469671 399190309 697415521 825524659 973197895 963574761 13683821 849260213 477730559 327211212 345442860 860683305 14117490 359369234 994723146 707341188 686731703 941866829 992507585 623531902 177776575 52490832 984523593 163156302 798111658 782860453 814470548 380895139 60079606 313351883 563972444 289420394 123629948 704310115 881775816 559073229 727831535 126368679 894879319 791309687 888832084 278684930 251321913 656133065 635147001 598296150 85806617 90580735 44851263 89321926 554535531 952398370 40308627 137510184 583255280 671150189 462517591 140238453 577233419 72556240 970185446 165127091 171444561 933386204 758809037 987667190 515281200 727038646 977824644 494650718 136515590 63015311 108078033 989139741 771936202 549529596 56377332 201460478 462604843 865063709 65125304 304060144 761765791 396218558 706747588 46898377 790214530 325793546 389210500 946561504 740745619 398563551 236276648 291882772 855009151 80895292 39990003 721329219 848840238 474040142 668589104 494638134 44865646 151644416 314289187 856267263 143133020 263725214 956984961 142786422 183156245 291271443 765961542 161267305 449981387 918811824 643150743 821593903 578914239 966496264 275966121 25043966 952959712 144421674 464537282 321736831 212593726 640557869 879045422 344794347 974780172 676554250 533483850 45538408 116377542 986540386 977275205 414729488 888998466 730087712 281955363 376090226 65244170 681934927 678462759 115450262 476919735 177737113 203835042 422294681 915425098 379937197 569896323 75087340 713029190 393636623 434034000 562610481 163576745 374066115 463315577 250975375 150840802 170677184 288532180 764105737 778750469 96632541 665369567 927101600 565399802 537087434 301429136 363840687 955022016 611598847 275835745 953944626 717691398 958564322 77455142 607696144 199436730 93070620 444235867 756810248 446346660 508395646 141947414 380228873 886103607 758793526 66592426 433648423 367404878 338191697 648695156 86801488 721216128 867299430 934914782 534590169 847327148 469904181 534346862 155027808 628693672 811910406 883798435 874527268 58771837 51636276 928190500 850425723 101850777 177784589 891652992 679623826 939129261 19333127 524184977 345656199 44303930 659446586 478061718 571836628 60096922 597990934 608575471 304234717 316625527 443581553 862121580 294461996 661360040 674841021 689212147 356206323 830432017 4908233 287995494 525429600 335203389 591595886 945125195 497066584 901896348 193932830 271981074 228779234 105584972 239764142 675087872 861357983 805831442 102356829 79746230 237929945 112360657 974613895 13002690 849066837 218590202 248084392 707157658 209304091 356965529 610376247 498707622 853424163 45272243 105980777 192844569 361279933 300709188 63996403 95654761 862992494 880500723 313348686 657105866 14392668 723358741 113727511 142789236 563288700 704008569 790728942 643638325 719446778 372855732 712523262 526578835 778320753 503739439 254297561 104366782 163773446 260511277 10065870 191166121 298673540 663193645 665548947 44602315 561403298 429143864 533202156 945673769 119854256 524268876 155493566 521852207 873010797 933509579 721752956 694630383 666945597 116107456 422852672 152466904 644122713 25388700 846859388 246659919 941978 297263983 221571318 118572876 66786478 340618684 813074905 491444410 217813756 437518415 626319664 277734151 718043537 160189930 464566809 69924197 379720544 418701452 857797133 206168890 63618994 758125076 998130144 77956266 476154054 61767306 837179104 658614747 903789331 173832437 941433970 109382045 724630622 184499409 880052370 653195626 532092257 371155414 887192745 150215129 421696547 109748366 748291778 115804159 797185248 351132065 497103746 138890720 442278622 104188026 133508133 831959371 57063555 722655077 379467853 466544776 316857097 863579287 187102150 958696044 888480602 104593876 244605980 641603462 83340422 425075867 498227984 572665347 445750453 855497488 515422292 835878899 326498506 795629073 765382641 521189437 659348474 845873107 103951045 283394391 224125459 872392944 196554395 769184592 499441666 905759578 168286478 701630181 569794396 879050040 154954786 283461273 776934447 265494020 696537286 534334064 243618700 347081064 52283966 567948378 749849136 515017669 862372293 282310357 5937741 280090236 101179625 359080976 878253682 872366321 573899136 893548161 82965741 497827858 374701190 320328769 800955565 880699020 421983867 217581819 963470044 356898660 456084281 959852545 542524709 118829091 800681821 610127561 4877020 553635148 879404887 891466330 725576205 356083782 469240549 880264216 681621393 377127361 576344917 302673424 982301391 552300030 836299735 250501509 939522467 929239927 427591616 887632284 420883217 818961463 336217251 271513755 856852160 742808258 370292603 494723402 909712791 401127941 384542246 170466449 491003908 852907160 507079579 157455720 409318678 139456267 43949716 408999994 480543457 92447400 746047954 782986956 913776556 56505394 70382251 159476682 881780080 435452792 255533873 458041373 380463479 866855060 720223516 546836492 437051095 63858972 529206115 850206972 951920322 659768144 25537902 740312178 522951991 227166791 14368990 166344350 659686871 964322831 429602148 392768412 968769210 291160134 852628010 947646207 962938221 559364579 539519104 201710405 412781523 518178843 910620086 400151753 272026353 375180004 153301355 806659177 186924883 60947167 101391881 490178205 153652823 547541087 529870936 821207813 196282334 408645285 81208916 50516466 761104718 558370148 55015165 137828072 100941830 109291260 770515688 503886554 82486223 992748256 757691607 442419053 575005417 973736866 639895294 406630167 230007908 111842014 476375133 83719029 135256131 533004982 662361623 935095043 565235282 737512265 449337853 611299406 192342529 756904904 239713633 978381106 718452990 450216398 413189107 477878800 413359605 713705509 390144957 528049095 847958418 554908404 604811528 721999993 918003124 338028753 689813739 485608539 847435581 279299172 822478409 133252170 31755883 489221001 495950806 785353581 939320200 899057245 758982406 681327438 862441508 221455098 621840493 619458169 807167054 192814884 547495621 804628888 444633921 651187965 751846442 993781969 972692704 405767681 718424952 503757487 364277297 361952586 562869527 770062599 676830747 894507302 332258662 945003638 305327563 229231830 51570508 506292077 239661240 386472403 347147920 727956923 260619637 428436577 118337470 853244050 990661000 387487041 309922633 740692490 269922204 776309138 724534305 195290603 647085545 501128779 397872207 9707160 422991327 455996739 635496968 168272907 734987045 242890899 939738690 666289188 281505070 376380923 27184635 828474055 366868814 295310084 583890485 84521908 69331850 703571025 452141253 306472080 732020564 708872702 904065452 148171248 151662929 271638380 227588095 218941628 484151015 416887824 129363914 160010566 877558548 113109992 229411003 360697420 874418572 718291164 384461927 784334120 698773395 788764830 146690881 691380398 69515191 895776961 904208529 192802743 676019092 851926785 728040111 14628795 224368128 192496444 978969754 271689162 725750670 871238813 558817487 677067752 684239206 158612026 12026838 509089855 280458756 704505443 548086246 837820985 507098955 484928130 987389911 536048898 508996597 851063027 509277841 252777747 301621856 976616370 4414516 8953513 607659024 906145265 977984168 297546921 837891561 734559169 396196252 862084547 407657454 800764629 202865794 492724901 173163773 970060128 890372931 220775493 745836141 146166584 15329019 486816814 816643501 398565715 466714706 116177254 802768798 170524315 729471753 976340244 412814438 659578010 569861010 323963150 957140094 139198198 694514008 91037254 652355527 434619375 91577231 280776724 979973391 849744210 947076411 634394125 336025577 408284241 347609589 405605724 683041251 290082578 260061503 407713607 566910085 34669690 699188600 206638668 601104249 167561849 288846965 637803429 174035713 664304205 104599342 11628642 462649019 546855810 322950804 386009804 888541252 644535452 846329446 74529802 798158250 954013599 474487169 560580316 242876807 582935379 604732668 693639744 491599317 616298514 696217051 472261850 338895584 85937051 429650842 189125542 264045871 939727216 26032902 629013559 42183598 206332122 818382202 850654676 183544345 399801660 820866701 145169327 738051933 91229054 179380950 974837832 672951212 850152694 806899720 235524563 935930670 310031894 44943901 513036756 437600447 40580321 375513581 547858507 6676005 572481132 88186019 761321387 517546456 295963136 457337092 534586291 780458382 809247634 164889938 740438909 948859693 666344551 566346393 562275701 742437411 579109075 669763873 500086776 464011529 20968029 485490801 953210894 583801091 316553834 573477937 62131889 673749834 806491007 546975049 725605160 932868011 411845805 174754534 417134679 478399705 568843359 847811365 414289932 474334038 37507527 281884157 368199010 922933296 666949748 321939525 116135101 78846309 15346739 187313787 285579211 138356896 539832645 555722901 996326268 250156914 252390165 599014289 674356767 358700140 594538376 153911525 153339325 514708661 531756350 412015793 926248713 88366130 923654749 88649025 236576453 972770605 170514199 985257237 935205758 510406330 359251502 956064034 486329185 878582566 441116378 111230272 359001986 849489806 925285494 423615797 151510093 129069158 956580528 865272873 128558601 55967736 985580919 825248341 231128003 182677696 455567719 630155956 556531630 317788859 142268929 313927054 734583942 833173570 997052508 729236144 77407336 6050787 227701905 203242660 900441954 492538420 312341406 540310775 813232025 141552826 134200530 623645922 334974380 136286652 10962998 552649846 363588279 218749658 177689920 311892070 661523760 856271305 178972575 877307386 519889568 832123999 470660371 21353061 555962798 228063895 240628448 570208035 338151554 343344176 699347164 836088662 1468499 200143988 655855669 186860522 499272405 888636996 826392036 617892187 965756455 98232065 824436302 200190124 265984873 807489335 469416236 969557652 1650334 420198488 333826483 621298078 522445552 709780684 411276090 3370383 934326447 767628520 201811471 355870698 618132466 51695056 662854855 965318729 343049796 304092762 146718491 446124455 40878829 530730090 942191961 554168240 172998593 674217205 284700923 569390131 879499207 3480440 923448216 503281383 123872206 529243889 271558953 572144390 285816343 875650812 317353296 274664857 577199358 368591115 489650838 785786045 387702273 524915169 908812919 720825663 132249785 920037971 280053405 973913691 477506043 756839870 202030710 818187397 226438551 605689202 460440219 299439486 19943709 129343708 483681598 943707950 930253930 483344637 340509054 666644328 601850110 900635398 734002597 457137852 421279201 398234271 473801185 973866595 865892351 106625051 449268329 876699824 792690986 52196448 953204291 13487907 640906142 66386201 93957446 316990160 720601882 663799248 578377364 243277542 802117336 513362917 341478837 385445163 457749479 153898050 325106191 610746986 507317247 431135909 455809430 663419826 153292439 635055034 12776997 144001609 239533142 216078506 349871343 783853133 776379064 413948051 772315397 743587903 111287664 95365573 381497130 838346245 331036771 410307745 419530887 579319253 79405976 754933988 483224765 195968304 233188597 678082866 687986302 380177222 575417351 87974396 158462371 211389492 778805094 921604179 730753599 42735164 880837355 857211070 318836501 895461743 578009840 778907454 805651584 784755458 687054475 279248118 552326994 273014573 361151538 685155181 8729297 766160779 38347371 616578633 821312251 184604842 544798571 412767594 912659645 973814845 716878784 314516334 939588160 936949100 997721785 828519354 72661679 248982354 540117882 688719373 587208603 263342359 470515810 76334665 78343287 672144783 648427396 626897338 363169882 918957659 738224643 63008071 163842886 366184624 605144838 932107060 908056067 760053466 428698206 225767703 566948124 21213494 11539222 23960775 393335068 790380045 643591883 599995591 930229170 835805916 635295390 312232170 202195229 622263579 111617506 294065641 998804350 853094080 179375795 719764891 987511883 562930942 178394443 412949811 21210751 855478698 974255913 385867270 146384385 197696563 579812639 714717669 936968429 38032303 400766826 44138270 616869294 911152335 602989808 923921646 871173259 642669900 359476954 51712528 880847520 136506557 796138293 226786956 222207706 324691927 950553114 60188165 601319630 424123088 556158582 562205364 810393446 40008359 235274830 48878801 516848654 241355971 560197236 72901761 181308330 880095023 177831551 580911303 281794622 392897087 45180077 315465724 685167339 472034041 702283574 679613952 360475884 323218772 18360355 395826002 601905800 272211654 675331903 354449166 187470473 642696515 504763236 964913415 382174256 105287547 497603732 67719352 776864690 170471170 838577814 324503528 622020107 597298196 876204172 357427911 906352242 594002126 499411340 35546613 516522123 290414420 276485479 195250663 981332961 605683677 662829540 419682571 282432091 927288332 966751999 867228436 171774364 267207008 611327030 371606871 215154582 186341084 834336880 272279994 234987192 321486922 642367806 1320773 710467026 815653848 463107960 263124430 659827131 694678088 258279402 204568533 370440748 432843020 236557670 223107593 842713545 574104352 773753986 36648251 467033281 240162168 650180137 928115178 256943291 151754825 696218133 257150395 865248444 373293125 867108523 916267732 651281049 793864524 615638846 550819192 750042079 71858558 861011542 334328542 674810116 427697250 658953215 322725685 17243562 579063989 390295211 428597962 790172615 607758806 14787269 840614989 386142924 480968655 123315428 965161382 850544515 727998037 319748853 65190462 893647619 561653955 27289449 825455560 50131087 822802559 906138424 376192314 585234374 678535871 561009045 913552988 4891469 702991071 818116225 962504943 832245417 86759161 936955335 124517647 337004175 615350889 357249884 856571703 823155634 59532021 165926308 775413075 999848919 454410822 854347 134524817 624011034 469397929 571351220 867401166 330832298 672814246 330841948 485211761 879818837 465470071 541545987 284957486 290354037 633223535 562290459 772785201 807869094 935377537 496273322 797504583 970408137 626448087 603774518 65531239 58276077 75677289 848288024 350927213 154229370 302427967 583733883 47192679 17538824 200934368 916432886 666429792 270689623 808852703 462826605 862011596 112863704 430615028 376461878 564277176 327629052 74803310 656177139 477290449 133169229 952399045 457934363 630439272 161942569 314652884 858031717 246727607 212654843 418869011 190947061 796585345 382264887 72867175 85146213 160840763 354167054 149584492 607212969 953091407 400367808 568803893 435563868 681248814 751894271 792881103 142975603 726731577 626680526 915778483 186844866 867592684 388989972 5456248 853890030 64655271 724758750 903129164 820902431 485508482 251795788 959057838 895851779 402615182 667750698 861334947 938856136 119496964 579811900 334646363 694960454 126345756 891498726 85335393 96445909 74169563 495882191 947752029 910680513 735006097 745384531 222840364 11422089 956772049 280823823 576992199 444685394 617022015 866599994 661102845 392916358 155220923 105266509 389498719 933315667 81357900 630219464 856251048 315426427 734613575 411566532 347173344 14492623 948112026 956071361 40586862 833633934 801524172 112467574 473305027 204333394 175851370 641077186 367802067 466569476 204180267 746349568 629461924 665371839 383083281 332989521 979149745 698887629 707894494 871267641 933428656 549443627 709610310 22507564 41078112 500612626 194736501 376585269 359182507 596243933 217748092 86987550 599678333 431644295 535209931 726298014 32748696 138189330 845674145 544990444 352689022 618519279 601373123 518178322 532792134 987816273 936813036 980898048 261008031 490570538 596914217 654800450 53428785 643343359 826399922 750949033 197365206 168341600 433004056 969544952 520605654 850098250 11687312 514679223 289090687 735284700 951647410 231032895 775454275 234680604 747471434 8678492 19071894 688879298 158571025 367342525 872881712 550856616 339335913 767829454 558032793 652137392 321380598 526224176 655795247 65421499 386344123 783579662 775199914 953353818 45367387 373227021 85970189 57101100 484774721 623860439 730189609 9222562 521940139 986676075 967777893 932664702 980431376 169788923 740361012 629037692 666070311 131341981 87386917 931209224 733285324 999349859 889088315 794969806 957339322 879118325 217611556 14879728 694778598 23061070 459643162 643648773 537190872 9348611 66748854 332528164 544486801 859424438 510356492 940195685 919200110 542832746 781847401 971228597 325876222 541025833 953599761 274039460 910001184 444655557 455559245 488454148 778490355 109103787 388844020 35306416 750469325 89905735 42514342 638396790 564906298 926847600 916325132 742901971 116358330 62808440 10357885 48542083 307302814 629535683 365155611 109364288 692966645 694467887 68121942 546360679 741259910 532203953 861998940 389708820 506831471 544389324 978501008 621144889 667040626 18984821 190308615 624395604 386722028 794629402 604992384 221318721 909461667 405207923 209642230 104855315 11288324 812992813 234938919 709424190 374883527 329182557 476614783 674870223 281157077 421984680 922344681 938519302 593525707 559884479 632870602 818146788 342125393 109043182 494685536 482215023 422841195 67819449 185262278 437394170 979635875 518802527 791962188 435868331 241266079 167753392 672881927 269776011 526315837 287561727 613698975 296373512 229006378 799041723 406457692 222034366 541185109 20927039 364508706 586825669 332749140 258851230 401031281 11793464 635331001 207173024 142603179 585195245 231023679 642384258 140620767 284509761 95726102 960038024 282541227 390401737 694712715 296126183 381639853 609503076 668718931 587894409 447974841 398303005 855950311 379117889 578656316 799336397 419991004 817015488 415576407 587793323 849850531 310640362 381314006 730017730 410246821 107051052 500009648 727218589 883549413 246595363 611109962 756645130 563197319 611896814 551847265 114036504 399750994 350988315 932657329 739809200 901162424 8662270 177621848 314040024 206986223 316980808 210322795 933396743 805751280 940971035 852249785 832278314 989949815 967595544 420902204 475040103 916277322 426769152 47722327 261644293 856064631 133718190 989125628 22888149 165755885 896619562 902449536 504761288 637099805 649259202 850929703 916877837 644824881 942524518 867435315 665420430 930342128 508783955 844668413 549350665 277725739 347260677 981109451 290814582 555460234 120792553 553290244 44854269 961658951 682380869 80146957 901758191 230218344 623475330 689052057 498068859 116631789 420262454 829386787 384564378 413823672 330508839 731034433 790148849 33026367 191723045 285691971 882518034 680628560 73013426 422955186 649162453 643652622 51414854 497939803 906249771 404349914 356512526 547852666 768029064 425639489 499596802 861569500 240615520 682721172 74084634 440140785 480449764 359824930 916826600 175470054 257424361 466656838 197848999 326238372 220536231 195168268 652149649 508356664 431345198 315705811 631418480 111051849 27893988 452548744 363616327 608264071 940878844 271110037 262867098 76103700 57379452 610032393 612233003 431916813 694978626 434272615 744080487 588688412 399158785 256213902 86111541 82977884 868280873 818814150 480667339 846598510 466836661 825798752 427445901 508138981 878309870 821666461 165657233 827646352 616425247 710714732 893589718 718520537 337690758 808108814 841897646 365280167 146827746 403218043 676470014 732451266 287715872 264370360 172317541 918915245 501422372 342783546 137021398 738983066 748920862 391477790 888288224 966867907 106514286 991124290 768781666 249473656 443900558 118439679 97920526 902615905 469248751 801064668 520756498 734877454 32808339 880027000 518009877 832961086 516159527 671450974 946878403 370930668 209615324 886433643 897383130 967570195 356184406 563206936 537043096 665397278 11531486 798297158 503382646 959833934 721499738 109636783 828677655 854525778 277938201 744323558 795606612 975595690 336035633 745308339 977488823 895921175 990454079 611926371 104274219 755537304 745995942 722721823 194475327 892826878 420161828 336386510 12058866 931710843 726079518 785705573 106123246 799082558 419499425 478913961 903388861 900025493 345491835 350333878 530340772 247170615 567757445 950530672 593781467 292955566 138882741 699132039 452763919 688474739 900867095 397912686 542558135 270872463 558376794 541835052 297323381 282799915 772605360 869474399 656544636 312198514 397244267 519794552 730267471 288495733 345904917 43257697 310401951 202428874 654173249 602457919 215190208 980697027 470055704 930534343 614608576 108772465 506751760 730934968 936813270 859313027 674233235 874862455 202595141 221812960 739733352 467632198 361220925 697232619 585395955 102736210 76747663 285952222 614011415 499298487 23730898 622574297 694396968 6969445 597974370 461210616 500153285 33839270 194515636 686950202 149971519 520186742 800010634 942939788 881667638 607302759 179379085 985743069 8585819 915804941 68899376 108972621 763282902 772843134 856596969 109044748 94028778 151783998 141813529 997331071 590262805 316551124 472339418 336186854 517918000 555969294 116459187 649368515 141810768 720928739 36661756 97679118 453920674 558744782 61373912 860552673 365950125 3665287 10897852 614953667 996185195 107390021 91695670 597260948 63357634 388736770 26647262 981641700 384957081 683377551 108400777 497999401 151679412 161405083 460739465 436687584 553512358 911970393 441307158 418588501 254485310 994727968 475086831 145124979 398474688 599067529 984874448 799362493 197673369 986738328 247581601 329172600 888485193 160801314 840990716 928225975 410412490 853600492 916301208 405602210 560259995 531909717 335028800 197933080 181380180 764430557 542838905 275744108 622449464 628829610 768120413 477049066 652620761 813714340 755019178 722562129 893543266 816226445 9997854 888130873 60648524 563864676 522083598 731935120 563120051 868235262 601920457 43406388 695872190 587937926 417038407 565619956 390606932 743022869 868549750 12966228 969928306 133082239 608024945 488040424 794102208 313963323 926920407 491933875 166319451 32271071 928417630 555879137 385900327 321461694 173549720 153641060 241628699 906613772 830932229 410799101 59204266 26494378 606206476 85442614 220877971 581956230 974786910 422859209 158539989 438225148 872305370 826069547 432571010 548033056 533847625 270474471 126630019 247026459 457671105 869331074 622154739 331411016 956320207 272820749 103151234 455479441 400785304 581892164 786719504 955807366 454267748 832085229 169784125 954839028 267714290 798542235 597890300 947999064 395212101 179368157 727019887 570436264 233042663 516400661 526801846 389049951 485774462 188806775 653545256 19178208 480778580 804402632 280668953 512332476 932698391 54121180 467919087 736834610 512563671 691955227 818048556 419068816 154319348 578700519 910480975 226614409 939953004 266292355 735740343 659155374 203243551 256384239 33113216 883448546 376174352 292421164 600255566 644691740 84612989 343588899 413461188 378945156 204138374 440252605 167955823 47284241 637642455 813546031 709271206 236257185 102402021 909389315 524203942 878868331 871971967 156271423 294920530 209983168 420634574 176905203 326081011 906009907 848486302 789572156 815381851 456525034 694770178 205913237 72663573 475845553 806951302 26707571 718318206 995953694 588524133 69124026 568193887 421020930 106283293 220456380 510085487 667169301 149841829 881512005 708517385 270989862 43088171 965125746 989853849 584182166 501469330 972161921 859027421 914384542 602493305 522038942 537860655 610782783 271090412 208285137 884839728 657002173 626315537 733443308 915406693 57741358 765773577 392180982 951215049 237526905 650771183 444742684 414251858 422604053 343505496 842637048 494031174 612641764 375699315 423962869 685897939 68266926 145554567 224616135 367181270 994917691 310290106 594212548 219175488 420999326 934842037 756719241 902800896 550564531 918767151 502851979 986143094 831424180 754465555 782475643 715352356 870626890 733706616 165478530 744813361 276866798 740481277 234421526 516622124 72349888 654050169 675109409 888608224 1872548 263831828 869126922 757547031 615916986 329166930 519264197 820359525 842564114 628614911 119368566 409416763 329758571 384176921 873232061 30490325 588140866 315958916 991414452 645698364 659601059 347569448 928263853 341417106 395207466 282714672 313833119 570208417 817857762 111966473 385069815 430865924 673324518 974444980 328355797 216820878 57993642 490305419 535720015 847795326 95849674 285516005 659098676 251747881 803223956 235278957 222685361 956541805 867471639 972702763 175499546 423435535 764179684 79233541 973105824 337135448 250962854 66619189 363019258 157838294 606862437 876518833 146327726 835287280 707498763 215956624 782452156 962165364 147572456 377081926 482185993 346247502 256269960 81236235 511662412 15185432 83392353 472345688 212542659 303793939 797777860 102566855 987086561 263968123 773035447 912088516 502121736 738174616 824870217 315904301 949776951 974700327 155036697 561634783 831652512 473635327 33008121 756560660 103004596 279479527 334131498 393677720 186644689 741143693 170573291 523729370 119601606 864144098 534654874 816483518 660680785 340274240 321934609 173054039 821904045 609830077 174086086 472588664 536878470 960721079 943232084 384124204 233056897 362324104 252483086 786719248 778064660 858336082 970270014 742871655 154109294 154087812 108499795 737129424 593590873 499869077 669028309 880488080 399201364 181927457 864692134 562815596 635753632 512901553 482111148 34661189 922813209 141953657 602740506 869635002 401845287 674457126 735544701 592352261 991868723 917102445 205999577 162776642 337358537 349145891 221652431 23044514 383176893 672200344 485069545 100350668 253339003 238322316 297106646 930825722 712644073 721170578 175068350 111643040 165158797 539265064 577893628 430251573 751639270 682921203 870766847 762838866 375645043 220303568 241375245 304768225 90562081 951671640 958785319 173185907 54777541 540135801 635429565 896390841 579067399 956461946 64522645 108320398 20372091 641160952 323596551 34124516 702080048 14702054 383206181 868548303 902734806 984543358 348158504 978693525 64571411 877089247 899014767 827202294 862491587 4076973 694170777 402828682 273296547 403178920 394294540 339337165 843850582 637767787 63207345 554722839 939936026 648080956 43935302 204867011 58277870 60632860 63365983 954311805 258504660 715640009 775143220 772288146 329164203 4807885 451559874 107120044 229088131 36624502 153789257 812637407 716477547 831822369 37679075 341118789 224187141 266572079 66894985 605474023 149156084 145265054 496643111 59130884 719740225 873038916 12713345 886260622 357548636 565762655 273262379 587192020 34126536 587483948 682010902 172938034 912883311 830219185 56341488 722642123 339374483 97789693 820379774 66505800 391472438 627768150 310750109 601032874 419846267 774863134 156221169 136253752 504115147 540019808 153401137 34986288 564971810 684791093 493989002 864565261 67785332 806303925 727448750 123684178 760835571 46637864 374803780 478182978 95356582 708034465 176767584 895573658 687242534 857740503 118833781 523251161 719821085 775644948 178418705 748567969 966523752 766704676 273396197 78499913 487568988 815645965 299023392 10493855 69076994 79146884 677510683 449041160 559754106 488093469 774182889 559156624 663307489 152360956 236930743 164240793 446974502 398845307 146603875 228208307 972228766 51355896 280245525 877671294 526754755 887962496 932329383 309561744 388282696 180844143 674875359 42769953 337840817 294573201 816740708 353790464 794209289 611888022 913049541 134121926 742885446 950011388 464936452 510360486 373379966 905798260 163884552 797077753 531717599 93967687 456934034 535827494 455457467 688830401 487355725 942023225 584745349 890754454 979031873 145669243 210340546 185127285 541236195 181148964 458746912 362957074 629091834 474049396 643802658 157845248 78385635 676578171 935570709 418090358 766664441 382493957 611756822 593598402 446289340 361549815 638792654 36555314 383046464 202631765 763154306 90565047 552335852 44364341 130147394 683582032 278894050 623090810 233345906 898583017 569291453 96618230 538877947 609194738 898337135 555804261 751420815 723907017 722755353 283192512 207455043 128968556 939297011 815226354 487230539 385564053 968758441 360201511 165326378 935317096 550036045 965856235 830288818 507041701 653728346 625091554 488271023 655967110 55356807 511883700 799981956 209341228 500842389 290839462 339791759 766077212 494392867 537604679 732037930 376363088 728916214 777937545 745417471 374255217 667069803 556939521 242997116 27336061 901672268 220499574 343455785 4464025 668354618 677119845 447499943 444138725 645460159 603796547 649775533 260489648 250486225 855539274 175400183 86597767 214313685 743799500 777913559 588942097 921744936 949003281 756512150 210558647 60468569 202685577 501547474 340858781 441757111 85475366 42318048 739937708 231998961 76817486 538216420 890927964 393983740 664444596 244167496 462534181 441349749 123052586 240584995 416431191 884198985 153317601 673534941 821558097 767676566 826852970 109242166 300587697 369850128 999314301 218312090 166278377 568847782 803374164 726511754 13265617 891804307 431359056 598212460 577277127 766225707 378127621 423205017 992812518 280836228 363755818 654233993 422508222 168503178 142278288 772108220 393533090 730707322 934079628 937367002 989841201 233570661 76587860 472042171 759221845 419083328 822154372 556674867 423895255 38753299 762310636 128394773 882844458 684646083 267489319 822736006 442109949 688832554 154135081 74395474 724952905 298551080 493559011 577714597 569480269 902716516 718526584 45624232 718693376 263025178 982560182 760746656 946887285 666427843 27205547 185082427 392832040 130488249 169593294 731189936 472134337 750836964 898439520 229289604 777408871 745528289 344439553 214757483 886551766 941210229 691666642 726559362 267813327 342473740 182934968 120335629 200508847 440200349 675884251 389065943 572572037 63159741 611956398 957555164 434108691 37468356 410746249 449565807 51659447 214002595 730464372 969546816 75448599 877416634 732249503 603223508 867770918 593635096 28998430 136169103 565024992 851295900 402675138 543304684 563806070 788100180 898730082 723676550 204796851 312685192 338288771 28812287 515986227 121112316 731639592 350193701 515601233 91950821 693174815 95501012 447407745 303822853 371248454 239109062 983920384 157356363 522240482 826824605 930977559 14204509 109122107 707291440 286304585 851474986 343283865 82172832 927450818 752699046 566816186 402490382 873175644 573642673 17312734 974935739 746175109 502966228 291807029 748425094 781570617 295706773 790930134 402739479 285698408 272310201 707300615 471462238 911579408 909533 561741544 663669909 155536078 41766193 980555325 249945345 713082657 643337596 364640834 604907873 639749067 961737767 152721851 441134202 297175544 857202563 324389293 38563104 643803462 733281889 373784080 836629354 695338882 966567556 624892533 506541071 638918123 419133125 928910767 32786581 869480035 134498180 921197377 300673634 229616455 893271470 303306422 954191085 272439568 352535242 160366463 406591957 909667098 386460807 205950056 339166142 123876812 927541446 326971627 53233889 583388903 203270290 458463995 403154050 524041128 2812182 858340753 757797114 712056790 221563797 880309184 867845669 462521210 413254844 783873343 583373902 244854839 552733797 503924022 18235961 151097548 372568743 102137606 42782433 331158361 672152498 482655234 122947934 234763726 154549396 14106685 217728055 313419874 859490775 173306442 328777287 71504934 529499586 863506856 19945044 894933005 729756971 336774633 240220442 413896203 578397116 422296782 30161252 87684482 361827930 164446962 420727147 111788313 452759653 535195294 945864066 285898601 943969172 6928452 869420192 476188860 356496502 820999990 59838535 609488359 72444839 877566418 743669826 515671133 190969502 121194923 308017754 203665589 562583159 738371728 925109521 783248280 142442794 873784371 290998047 112413850 177441318 232912503 663910945 144012406 705570194 292129349 365613423 360316317 729011806 593573003 143226864 73611484 547659511 687188939 963443272 439211839 18725592 279125576 816517661 767883456 387225387 882110218 170050734 261264307 665125212 524576004 394154445 702902883 127612405 659955527 871417225 840892146 113545555 299579847 403568683 876644528 531073207 664868621 700124111 839800776 915206950 477560318 254032657 752768594 772252537 264786736 906339566 924904502 916195924 443308248 765208067 595262005 316115821 369675646 168032503 638918877 24905234 539012679 504732850 60793693 337034879 587061265 55255451 449852823 206962446 979675594 977667791 457498557 597661929 928003374 684749555 963757479 831876660 664341215 554434363 71767116 789113174 433783767 830195686 784175328 244039093 944980342 584031364 979128382 698369669 38660163 920426768 865849706 573852374 766836104 867139762 491181813 553543398 852086513 932576056 744766319 944292050 864277878 59801813 222463324 985770146 597433328 493741275 296348799 841206024 993699250 553738246 916568491 535848684 369376073 228351672 240131462 31379689 541878125 987959431 454454486 202650556 899088254 781549777 840093384 606942738 533136071 788710738 903229573 517106255 262314707 156841668 71517507 390979608 845108618 451729029 40115112 142254151 185410329 842671001 55948983 743769340 877676850 15837041 212106847 537216604 246039910 921882778 325334602 579989729 818091748 617277267 660288501 156730954 986056457 305802140 695142931 431673839 484910962 787322768 863044192 531055511 862869828 70009231 276102513 799804703 370822217 485505398 594172604 561558997 554187469 245788865 271623775 763866714 652410265 454520579 52466180 78434825 508963483 5061159 49325949 478742091 514243278 486243293 676823439 484309626 952218322 542376193 862225593 712238832 759370217 402327006 922799115 566399655 613434695 660261481 725597078 40354954 133965922 871226443 559445747 853119405 303060061 950353213 601736140 385400298 463157989 196724425 538134377 518914746 149410003 447122130 885891623 798354767 644559706 362835593 221263239 527381720 580813821 636063375 919044531 871404926 471319320 518784534 985188572 657431565 343010419 435647351 97274040 101274235 849741805 758928831 430983049 961774520 830316360 79782857 177135891 912478491 783938452 11602508 932046935 794761830 973752384 883001669 637139203 64038425 396488952 589091727 996107444 176076338 141402917 909634923 614844410 233222977 896511203 548259658 119415916 604899320 534186389 903714112 354478130 743930285 974004149 346293456 269086272 729163422 371569195 776972209 281262545 716175183 538526254 740760949 884964760 49234174 771798911 629966248 117065103 415550302 354454161 44606944 403051670 936842677 689205478 564038211 502910999 708285990 967773303 754290107 998979296 380184968 251350249 516402371 966456252 61854079 8698087 955277752 517679636 626425923 743228539 70472950 40874442 636704463 160334592 595483279 836259717 254542465 763729766 523038915 65230228 996811843 886022111 537589696 931861063 996880598 140643783 580908740 767544575 442547261 41056726 952119302 82308627 873235544 974852357 921346537 543350662 910947466 956589858 122840539 171035063 445102518 437558634 918497923 577674248 745252289 753838919 764423183 857487330 97502028 594355952 493997476 473798571 307216998 120578516 308138236 181142636 91264270 441400452 406252103 653790025 389905838 976420266 431530767 587129675 952751020 105497496 235239547 920395810 144712002 727908072 853607260 281615265 526047756 874799894 93660517 83461833 165438986 407441882 20873406 134663782 23301346 264830884 850166323 737083940 375048640 520391359 361782296 434101501 17637440 78750705 118113775 675530124 747323775 172720384 113662832 798143511 892863467 360724681 463039102 72575503 997371097 697602869 312405442 246381122 301108415 503986147 768725890 24935074 392951880 716232799 216312516 998324523 890038201 415063408 400312902 361911139 969679979 25223414 730150695 740008783 289549266 713412146 58826703 226094514 767380727 680533484 559718850 897320239 123074544 545816516 593588346 490522787 625684997 655243133 574468782 832432940 519790070 380536384 843692478 717433187 751063971 751423117 960532713 955602013 854111180 524194373 583652873 949493144 34254374 702428818 709416193 178422618 625852551 700424664 337578599 806517859 755811960 973631986 846095318 878383954 898111906 107240727 569350744 758515616 910896961 809998174 143335605 55277579 763380728 813825349 140512119 955989214 249186314 235259022 749513576 645460011 13167864 543438658 276381637 59264813 269761663 540071198 534572169 505685889 940232483 551240227 967135872 682388220 59340977 365640396 415494603 174578702 529594103 246348182 2337087 747068953 628723159 789173517 915925330 820611779 982972567 316171749 418787684 423531291 211536385 712795649 821756561 613067605 883896889 488406441 597774810 97398127 929982422 429173176 476630332 507652355 298192297 469455039 972903654 940073455 132517522 216315587 762059644 476822032 313655926 2398617 39974259 429060390 273255060 434881297 68522362 844856331 75713229 644720228 895291754 592582476 663373301 247630415 611372178 785710749 283809864 20640226 881788773 782169746 473136799 833218368 36445536 286338538 795187105 979735299 283586439 724468287 517256430 923455717 156610413 492076675 420167907 364502392 969338471 676091298 551193579 696329063 669235330 433745457 229567038 193628990 858903347 276434221 153646909 40491359 139025623 913116901 968815269 115370708 438023201 28817756 911924571 195672486 466741577 451494463 142243533 651459109 446301081 842607735 881047032 708592742 939078072 886643712 869938801 374896585 292922261 477735013 897001960 38067911 378534366 902493019 996025366 987577897 240513549 708578727 36174926 951413130 993422492 203718107 742134330 54438178 971485159 306099172 692253865 880627890 201342223 365449409 607628554 738760890 870073613 805129077 552217223 584136523 877778965 416656471 132143292 197841043 701070413 149055205 236769149 135227094 749849204 13057876 636173517 160133195 328865918 191506235 626421792 678792433 276231450 514818422 362291314 606486935 350147919 715085914 57235274 709068144 760387964 33374475 885817618 762990302 830692492 639577219 782004494 758417867 727888518 200413021 792379987 472682297 517399696 282125541 87060722 57442055 617973222 990769143 910560866 482757909 788973258 280145899 906845181 793150556 389230580 769074782 831192628 727106401 571612427 615967391 89217855 738630255 358386025 797377837 371123180 238957362 780237307 37557907 995031130 451256318 170696295 101044185 119863934 859447350 518083189 508872353 206549526 897369612 547851716 625650176 169479628 75194250 774004690 869803985 811760362 671639400 631456587 792446279 609006781 68859213 11757321 14868138 855828264 902991193 424136909 297908051 705824013 839375991 22310108 976435693 315387039 21381789 977470389 893684093 58065587 71253605 90498018 778951039 534089987 617587000 852659660 224931724 378430902 600535126 237175709 998097306 971352672 743988456 682302897 290929237 254202032 791488307 318823494 183546426 404388191 20133677 884275468 602012584 653326027 461453528 78720130 781616477 944669299 345821378 886656430 636376111 444545314 137078858 111271216 303443503 907267755 716019477 202905378 944573746 89691429 110034863 664751338 794191461 379169406 269176132 99253247 8630946 32228196 302163163 799745831 265361016 47964180 88852597 69071059 613058104 540212943 167524847 345299819 843217952 627115920 865781160 766095433 365949814 646837575 277089208 963987185 190834766 770742985 178649072 183001566 266134574 916279 518542607 116345598 417695600 174373931 857455524 842240885 45136698 283734251 309745331 863529468 324096518 590006444 643205957 299824078 456488822 929146820 931746481 633741164 611714087 77437310 619435917 498496259 900884029 424649277 873801330 460950412 60492199 975423117 516580915 171566337 250392192 469110037 452334262 931186977 61773490 421143124 567246856 180854581 298027379 835292298 871916577 820747250 700765235 6955654 160925597 576566854 726766606 494951926 777353420 192182903 244528453 995703381 5958349 728844340 575018498 16465948 790900362 628133586 562771430 738729723 847566951 833152488 790911702 406868082 290213391 144997059 692492534 938211999 71481161 602816365 619063488 568827934 483450385 715701831 474285689 271936964 351656832 447638314 971787823 589220307 805298322 79411170 206802423 796533985 214114621 300044194 37006545 243140667 727030080 688654387 942577523 683378434 195327502 663559476 653984011 39503860 908205602 786482874 863587532 523304872 573665772 838472267 536661461 508421275 739886312 981897105 967116976 495070016 302454739 540115586 48552771 703159087 213674703 558020368 263447131 164956009 302082341 720989406 79106596 87722704 955580285 352375886 799222114 636999161 918599635 943844486 491848321 914006103 832588045 805894174 323498807 796323371 182535923 768968211 115344599 341006209 677947523 451126115 389676149 457759146 695787347 266254133 427342070 406516065 967650769 329914933 146122256 480780532 845114189 915541475 535775872 500975571 458101381 4384675 213117620 309360901 472297816 640730023 852449287 20867595 965225962 410617782 792474233 441719158 551226621 115152496 614434285 797377327 965052258 697749350 665811549 397567220 609738796 564656478 424523816 112944910 285256442 19286245 175042540 277041838 941048799 615217881 614775549 333946057 542331014 541226014 54433589 262595544 621393839 205659457 776465788 800353245 367753523 623666170 553002650 54824965 542904825 806855395 49316647 754660185 981392541 451623458 33605008 964484346 659553721 989645583 166483667 125579224 570389961 131612871 904985444 240526360 216990988 733806974 658204189 531889390 179270611 877354351 97728660 45699379 644940544 731589855 630637411 797938881 415052252 443416904 809799080 197898123 725136144 243513445 109827637 98831104 440687835 370347326 421992746 61057715 789432652 811486654 142448980 133753224 667668398 506157401 463391165 858735917 979902794 130567957 729196417 345235967 788753018 967539377 691578492 163292239 907178525 538328062 490364038 858027634 703414295 859164781 148307222 669868935 222886977 852096086 32420094 481677124 364213037 355492932 399097284 694246943 538090504 789984249 296632083 947088865 214454501 329656225 493942430 932626558 980165139 813634246 769520532 24646393 630480311 330107618 410890213 189964457 882596775 294567739 150285065 766861166 226372325 834040042 922180819 84721670 799146337 652627168 579694570 488773989 827229840 421047843 529033215 557768959 983848386 273579734 182471003 939282065 842633011 658433645 8024073 744171617 57882375 321749920 629183093 728376978 383366191 272585455 255048116 564727699 453679710 256038897 688446509 601723620 739759224 765674907 382078315 568715157 279768848 296710246 975411187 569156555 344225199 107139263 205324750 527275419 896664286 634023388 695689425 709035667 484639785 556706494 401803248 752837101 206719241 404561063 709937632 645644810 735879177 640190419 205863891 552961790 318781792 984794516 455445745 438579285 420625759 425048630 286061111 81763358 59330702 726307439 5239979 361310079 852400772 677640355 912980633 221116803 783335446 536486246 303210782 557422895 378341488 718053218 844961728 582748042 557633826 215965940 647337041 146330723 664618799 577289735 365823519 325080182 76331928 982348335 145100131 998544628 389443812 143931209 275379435 19782139 433013462 833003370 936919311 190982263 714643887 461431421 347782184 727332394 161982136 375834423 346005556 336815058 104052899 97796234 591620317 951960340 862981140 844406175 519246788 386839591 465154349 777262568 890077357 307256572 225806614 846087524 666108726 349002642 171418707 677137574 376860559 281450797 332861093 75232136 570187446 627134715 540934165 962325248 9740118 330010460 733011185 908327279 796647339 22022568 673527439 818059076 230615997 893316213 896482736 860947529 589380890 627339414 667048791 661461851 741117204 68112725 834389760 326725592 7517817 620156859 529668486 431266695 189490525 461147168 633205175 494775414 101234819 472731468 732146446 717702520 889394833 490218346 843988736 584102234 564703357 448825293 411871382 348901487 429392462 534654614 19886578 510072288 634561918 701975883 490100361 603868980 639057654 266361105 983089166 902312828 987695246 970643847 966902227 211675100 348279445 804047590 306249933 956168365 94452085 850843317 981622605 575339839 236486306 432765187 702139751 987632089 41999757 862749142 185492893 914632465 869117112 154042803 45262634 66195233 737050485 921406248 977000816 329366434 177516558 134162225 644650448 253353698 244211761 842666963 820630840 664751790 834906970 535468726 100430376 515624643 816694084 259025448 23376412 915528564 689755556 766320233 747535376 133242980 644981993 198265245 77301732 544156637 660742017 815735284 484865616 41639708 412700870 903586954 656663559 794867397 199316908 708146556 784703335 413851153 223716173 164713369 739275198 251020547 962159163 550554216 517618285 580792632 785926238 32619049 745364914 67522397 239233379 824883207 704181233 676828662 917050271 666016749 634752471 835506115 553811867 409245484 357420815 516199454 471198186 595458720 41752391 152611927 59899319 907990128 564367295 608758062 82639399 245627638 273156597 565676275 573918886 942316531 975371455 231795398 415428984 299090606 286598726 441458715 847625053 443032137 169412691 520987507 121466033 489005224 663412262 824881232 394489880 519701791 202370361 620453857 165062377 720700413 113162506 643810806 859690281 940624347 887541271 801156005 639610505 956312939 803138368 326476064 455311606 41906597 172113227 510069270 701814382 423837462 32526457 865285899 553674778 326375691 333062589 894605267 80513553 363812829 402160025 259043379 933617736 27906369 140525839 710274449 599195776 227484540 189281391 904512401 847629983 826602527 586271271 231672388 813620266 409163069 208261367 781425398 302296415 40173502 846624877 237869930 882117416 140606695 118930823 303060701 732689710 133517311 416801824 410098258 404545280 454480052 24522948 881636593 860215094 774392717 534743808 859336647 394186456 205127805 786778813 419347221 479073938 130432362 229130180 336403363 780740022 35624722 887173689 897361434 480394057 369452899 53761496 755296253 192911511 158376993 763332425 714419321 876158702 754568901 94754355 62193145 269381325 301616849 805060411 203463795 379229320 525891377 346962861 181531941 837828245 398044939 142278996 265265041 579228676 153029311 766677079 225434203 856996053 395270101 976600417 215966031 977509709 610520690 828753119 201030563 71016674 323533013 825285105 31579331 300080764 631672850 736650656 289492255 736888974 782497713 297313316 814118084 868563357 433360868 705202385 141577804 592969405 866795688 571010128 362224170 336985283 385742698 619834727 559190419 868021801 484784769 941597121 343238917 990352403 291415037 939979081 456314785 430976315 201019711 154347178 705574542 439614400 519006149 135499974 909176010 716555482 743355179 754471377 554495749 627914603 180452004 182838006 846635821 28082846 568842677 204961980 394406673 219496655 232813043 380736781 592588611 646316297 367557626 868607717 84076317 453910427 769273111 525205294 10238666 306751729 705256688 125207856 793892486 159656007 375131708 307821948 40832444 816204622 52295117 743285112 681418911 676225708 192172036 113850355 606411907 204359568 605229192 267071157 672211441 827887705 673850141 750539156 826594271 843325415 380814633 594869166 267160771 421066872 248333902 130349305 208553867 402722559 564471784 13541174 476357109 407067400 926469793 429084601 559442740 891502439 511620152 236377786 889049650 1140370 274885368 820412298 477217721 628686942 783111013 803195630 944603827 312476967 782987827 517048994 879334474 30707536 242141376 476309514 365595597 620774288 284967850 108956419 74115114 501222173 47578698 501030583 851326775 405348326 696603069 243324694 917312096 874586366 144064514 137442836 304209247 257613333 962799363 84194592 299311040 834313544 550077466 621141925 685806495 831093682 118248480 334767846 186393410 697176847 754835300 764584061 764266200 490718448 511076211 502473746 699545984 109309710 339248186 156245189 625693807 959726264 208438567 688526305 893788473 201630066 947157670 564112072 146290817 390780205 43665173 805246720 372549298 889414680 682949505 868421636 986788986 996085281 379862264 767126338 736563538 494887587 35121351 84370382 9361040 783706964 333294767 588193636 695737090 949190476 799327888 959463399 36500550 134956676 98995243 882533293 797686751 557879417 537287053 447802874 996395080 560955823 486751171 698956604 885138801 877187207 183588401 565248450 914596459 374143489 899416222 191702869 469310442 671758724 456332188 559538827 573402124 527962132 649596416 76005892 942584018 913529808 286308138 521935562 63158293 902619727 78181065 50860429 133764748 436244341 44068490 754064083 15458562 806836258 12950221 457063880 147970037 904261965 249655480 67751086 680225298 28009332 610733233 277275256 346624496 850368916 858163592 511965631 808548045 347856359 785377607 504646067 752515640 722947432 573544874 495359107 835719434 596782357 431142198 458820831 617150226 466879898 353021834 845988095 430279144 86186359 77075348 439197259 313544890 23153014 256798687 981728066 370676046 245375071 180211849 215726923 865293442 906166918 18839162 264799774 101605771 833193585 567409413 279219259 549934100 961678977 283269601 694157750 812169655 318110597 209474934 473389880 476061567 703010905 513257020 247296368 217527065 653088413 776070363 257973656 326292921 374646726 663808494 910007684 869766097 924524348 331520236 771177887 316969203 568223780 587653739 468427141 610551554 729233656 5344294 509138724 189631349 651555411 579332694 562450008 841916357 570767783 920968385 452015523 654130629 977262687 127888871 125581347 986491244 39168780 336957488 743657203 545499701 668257128 491099663 622911369 311163278 61911620 111943443 141303447 883787432 147332169 814014901 786342457 261896018 168749900 178266083 884958692 486705687 596070427 273147159 849378326 511686538 557057288 835512974 763378730 799946985 377440901 303739216 314482198 211587237 573480423 621212875 979756555 600519230 898013451 458517122 555428415 46592532 559851809 883535376 598298598 466147565 791004773 725890479 568652591 533126144 856443314 78041028 469665593 395109738 133132710 750801058 148024133 241225992 147396278 186205314 505168035 9444523 719534991 825837120 261125695 412082526 152400040 640619554 383790428 958415552 398312780 253395574 400133638 46132393 574067224 992091429 220763377 491401586 581764550 578628205 791699956 420975176 295503762 268790620 135591716 556603072 978332201 211762016 257894294 361588646 434953918 185632717 148930300 681699806 35350422 379015413 100602 956996487 397467268 345963715 404104791 926607387 7533665 552365166 414271162 98783650 601606966 237113388 185056801 164631747 140804923 797668468 742596549 342911414 844414013 260499834 918167057 636572250 719917878 994054565 964497199 174058390 918001493 524991610 795347996 329245057 655832649 895712182 209265234 987041876 930097902 850616992 860645945 519578383 238166953 44423116 991980466 710679234 966964396 656355536 414091112 897619978 693372570 481115134 624188032 268397519 923725002 990201405 154007034 39952980 217500068 611014315 495985699 578448084 934935814 287844040 448275089 35007481 953992395 534111276 105912301 752077712 91141706 546953342 558956742 401582269 332294738 646555872 739422466 9115648 849983320 762628125 296830077 922987415 569096637 694952818 171271832 292621178 287125410 29130966 943627143 380425107 191582080 36909027 666510721 459688918 11496449 485381807 148683131 135834143 970720067 849047961 740501547 595430772 310696114 334004463 264553619 15773452 727102590 948700723 687771330 646940202 375223804 372210699 626870311 932996706 950095624 28058259 838506950 153007081 887432522 388017650 799659082 125432996 752908412 619026196 802925279 184558116 990199900 107792707 662473781 95851172 399956699 414110675 989692096 794936002 769260953 814242964 213380867 469616597 512964906 993148319 236647759 164989195 176598392 733306702 522843272 875280208 491395711 684025070 728496612 84862852 781262944 4104323 618742256 110727214 160847387 732288811 189032719 663840024 308567497 433106340 596012157 467971831 135422736 364423408 916737762 233363075 67138926 741699547 301758977 869595252 463030496 579293827 939368418 835133689 608359109 790851623 272349789 747220084 852739836 336400193 238463015 475370625 213251740 562493444 943204802 841245345 543709167 69698386 792113937 316783443 50098373 258912849 885067183 704431238 920057285 767173614 617929438 579009607 437888302 306927410 341203152 783194258 73176400 126528814 325135604 190125267 223410168 530048505 56405616 875209515 202958135 742498349 928049574 973214477 329802312 893901019 165421629 213434094 990051233 214765100 181943390 846512391 428738278 452059089 906155190 906548907 481819584 672163132 493931448 107027864 983161364 178767362 945845082 508664659 913229677 149030448 832201802 951924487 252863718 585530239 271419784 409342279 257116372 378403593 611076611 151114394 324441341 253733265 472145292 780236781 541165307 553241288 967185100 604646040 901378208 147000505 670940988 906613021 728301388 393682549 145067426 797441384 608136011 110806669 373146279 341628785 635056813 89707127 272018855 904640379 970743750 562192183 973235586 307710608 836533059 152535895 984823134 83939560 591295876 421761167 506102712 793215245 299273463 436187745 352049367 113740259 417636303 53221816 541689051 491753137 559659071 25320584 916322380 712114885 949403192 867498508 365551605 868432467 853884020 15029070 984508142 91216644 794908745 53389143 706686480 891919777 441913395 4739507 139202836 460705502 790087119 924863227 379386228 641419409 546008414 325777541 993906330 928351014 836051708 585489801 51545037 656602685 257125581 73381590 881706459 931809411 6221592 333779965 204817405 3170284 704239025 571078806 887947079 444538774 147375685 822613491 890166078 750770069 449085998 961029110 497252883 512773938 950658278 773379889 657827447 999714531 702549914 982551699 456235180 817207540 506147439 168282282 66783957 190882369 760221707 805507084 831294799 663262997 528343353 853420026 877480110 642431481 774475189 83070893 243140848 492347525 962516518 981482622 729697636 444551203 49462155 890915110 448661662 640378554 725624223 426360593 196115636 142909803 255798650 814504158 495753536 129929507 669408828 498432119 437544827 618343371 233031313 72651824 186731363 332827302 74659446 231639403 766511359 624030021 39671184 377596919 461345545 120438472 733058318 586121495 697134443 915787844 128712215 821082089 919967479 401561541 456474368 759933251 157182288 507227039 549040954 127784623 928095088 121217618 11192473 716041785 945355113 349894212 293256215 211642333 980606939 555431909 187885569 964558460 242871481 462250951 261310070 481828769 6452434 425952512 331827034 8669370 342923520 208426521 118367963 249254155 638391506 751677073 678836652 123148141 337384043 738687575 304351566 855529420 992074796 436013504 317407070 949696577 68328698 201352425 938800324 9378188 762148192 809627233 10241993 152058117 308948483 496601246 982107152 582680328 528225741 518659257 402718213 269498790 593899279 242028277 971574745 695406456 3239515 553594481 707168705 65631959 56980312 896087397 290300195 1395533 727802298 745407089 851639001 925899119 370204239 967477697 697558746 247929441 107967507 498849032 13798086 285770450 198623475 98792343 222098482 381185708 299273265 887178317 415793753 989746922 982443715 893055172 351198712 940296139 579703257 545584121 760916295 278940672 630217194 114052179 198456153 841545737 715446275 187857263 902771025 570294031 494452717 835263558 969636892 105661319 893602666 630320908 105811132 700889208 352206899 888552920 164260897 632480634 28854872 683794134 773892059 963455062 483186375 314125219 167879654 48616002 174969592 154081519 697012032 304719472 969257332 671014139 568018002 889304024 66177425 169492500 517306050 363781841 809030921 598032976 785987111 914800423 79296228 297361463 566448424 381569024 286633706 437932440 441655818 837006565 344034814 69075444 539625096 671345728 656951905 514406825 658302707 921650866 451483165 658198582 460637417 687746727 885040550 292151186 25191492 102056906 284396045 367098204 252162901 371613807 177303222 517501871 325412196 493471121 246230765 893618736 57511946 556865737 222270720 109845386 605482699 452625294 700631562 709781475 430828325 991722945 491488686 518931678 379700855 80411912 893743046 594694719 426864586 359213646 440854458 827734023 434254822 136524566 358817192 270822007 413544825 854029313 663213744 187335821 283785371 271745518 699309443 735705872 163886693 582121972 225204982 333111518 48649224 410456332 199866294 377081136 737248867 488701775 439308199 533044590 214204822 946206578 477837087 808056788 520991205 525810130 785309617 117721746 410839833 386065730 121967843 515742767 587120496 193594745 483890876 957093862 26657780 343671713 267401348 401093815 11333165 628283186 550734261 980128833 712829614 24785944 651589148 25685083 950652319 799400202 758340299 164163221 511366716 248300870 674901177 359587593 153365338 248831043 735537296 310944981 731673196 658284408 33889481 442676241 212315681 765431338 778199062 282155051 67678016 9026234 887554498 536569116 739470819 818567365 697707766 168349657 314590920 342370483 849557084 542312684 235780495 211385325 508618566 332021573 698299433 490328535 605202772 860045232 128039227 370994620 317964135 968596373 598742984 20777366 400954334 346985557 585866035 857572211 42186061 155415694 795286916 810143824 445753018 771578432 410970033 577343777 319098357 833269633 316454930 324722403 217206620 62792726 853904862 950012197 364162581 848461943 176052844 699039459 168279424 326450118 767189588 896272652 951931085 273368125 920267447 865890107 300498028 321294172 43838399 829586799 171780909 225204352 89791298 532025437 720980780 820021363 354406444 86932829 653759002 911949483 920038270 982176958 665307895 380448803 332704602 988871042 562632388 670305677 885980197 422034230 897672952 509082532 190445961 327281417 823593439 883027155 413013572 798524937 287561513 226832982 814491149 562455655 118901463 9626157 889674393 920846770 463562042 412409988 366477601 355373307 746411086 304930080 119316015 767163991 273019469 576834052 437159947 135367528 193922023 992211291 74305848 23805554 892776610 130365686 573451065 872092742 237192244 844349896 200933047 500445128 691963175 996226083 199706123 566172150 104040575 618330863 990229047 795678225 642310367 154978819 141051308 434521901 396784178 364826682 164716142 377833715 714425296 974206482 57453969 610625131 701839616 886716598 176818138 745856719 608939187 832499327 268010669 269385215 140973459 217196158 800825615 774931365 148798468 689511191 54972980 112917207 932522638 465066637 699652982 954626945 981692343 108498377 955426236 569345270 174434978 923575596 468640348 226773241 670119975 742477892 132300674 890876706 527812550 319649465 374900983 321414459 438566600 579285911 998457338 851613300 127667024 34520858 803096016 375328249 56571026 404410689 141504080 652024861 843393654 581168070 286571835 245666750 81173763 524773800 433717967 116660975 77290359 317059087 95473584 688818832 106414413 230958453 462408948 96904529 870764406 540379144 559839317 245360862 818553081 564317471 224906187 558227894 245140887 746883604 934613180 936025372 341026326 944518717 328480809 371894015 399747171 619154967 605700444 552474462 767081340 869938159 244674522 839581299 873913070 230462467 862836350 605716580 587884472 137193476 597448192 797112637 637608323 840577808 574212625 608721068 207750025 660035058 60791497 35319311 22916685 700408261 200996578 486074308 123243279 722262668 667483352 832726307 404128413 359009480 105502123 933639758 278077183 934803412 588656490 278219080 974607440 517312863 523899078 912323064 43438379 863034399 519009561 350063035 912564265 68580717 910207191 401177452 410055341 792052874 50979027 98234586 501842947 611567813 781537253 887047447 328379069 9663577 275885722 203944925 580627564 975804780 538142710 496289550 314271398 577710999 528444438 949100304 35447973 390062974 244557536 512830972 70333284 917476749 536854105 389797817 553057421 794230870 104369958 235593954 1680236 658643473 472585372 696074800 723112932 796860904 865968220 796257783 817711394 312710391 420373425 129500989 157390745 369821643 554403116 292322098 914130441 848633962 79657798 24086468 2200258 778185670 931564592 923450966 81007522 641014589 371255231 149594321 842972162 367546130 255931078 443537453 989964788 686320416 419625190 247824605 379061035 646632865 6991846 237656667 732094883 771772233 815531237 847374013 948697502 540232589 206729516 777335144 408494238 915993797 862201650 683506069 960323840 971719443 406187950 989327651 163484623 473528763 175566463 642974951 547835564 758894690 650316261 935557411 682260052 269097215 188479436 785144502 787535350 252422006 916983391 262935713 791374482 913951652 899378166 941736759 919415883 422597030 786560082 45041608 513233897 499702061 562688881 744340256 535437961 47624349 454739705 490741785 50057175 405499042 658243025 956278104 555001712 797201854 375163756 356742246 480865402 277346889 536708814 297810934 308409318 416535791 987407864 914995720 679738759 51078969 544392282 813866416 187439548 743781548 376041319 822594569 866558497 702241472 253537462 177012919 368813582 684750681 796682836 869550287 787760206 487684218 881139669 432749750 725436118 693241256 725347857 873574851 714754432 183119671 586470288 61596523 571701810 88534529 196375971 463262873 171173169 554303411 618460803 90740994 718285313 494206515 204594391 411496400 767766340 437912046 552253020 111117990 721867374 181782323 38016571 994983236 754963147 424140907 320563141 725955693 539413342 405483370 6771911 730370782 403176804 111337489 681274371 384970978 114915897 100672320 371774650 598720826 851909050 515423479 658386028 730314517 66627051 814168914 753349839 7170338 109029236 737365495 302728834 452303755 353071265 927995720 204884525 719581410 229820805 146087083 426227442 498019472 427937107 49783573 322195914 262593216 153143410 728829737 152216737 311638722 276589750 445609050 131849847 428750730 301215248 621742778 919986256 457434572 338294901 199034277 868266908 497684092 987186192 537802481 785226987 543182353 852046777 626945913 167849238 557975355 973888978 479169965 962858893 223768486 759143259 311029912 53511648 903031818 109738087 632280557 781218069 724671372 183631962 27220202 599202664 489183513 867691208 96323950 278595602 607794762 261566789 267868859 932045459 788808565 956848166 36771461 820189816 115535475 652740930 686407549 997740659 796658461 468405183 148327717 848353593 939530437 128754584 500144905 541462504 300389241 983113484 607415978 20264399 511217195 175781690 606368313 345485572 737497075 991820389 787400055 693238400 989520934 615281904 446957887 736232930 209701359 223600460 35385869 607838517 85976617 947480943 367150583 70190235 440473556 103737639 182679943 185411194 497944437 683460518 642384704 643939498 265925468 447508481 941077732 272793717 28429464 649488746 697627050 892271449 193592329 101480430 846820351 576989797 935238085 171270635 190252028 701213926 53948123 680281699 733972183 539852666 164489861 29365079 457553886 235932844 188099227 761404193 653266545 315672977 365605508 832142364 745562214 163770888 214527356 889317726 110300147 668933104 371823169 985864733 405435810 674922427 845997981 281217659 138480905 44925910 829597318 214281863 992755927 244014294 845566477 703048468 168414491 223982977 51758300 600089237 378916217 843065132 580934045 115253457 267636100 533675886 823133359 770172635 738655060 682762763 414284207 757551079 42700415 124274807 809085756 915557966 665274326 513018287 572355175 795761851 713968549 738112678 955056926 617657525 135008479 942757441 672359145 277213756 493086543 821712697 836407624 949827866 421196163 379050167 512580624 893084710 521179725 853658920 614762054 621854293 512879163 833252953 394684202 549488037 44244877 10047221 650906229 832278783 372423640 875096293 464250587 13129314 716064905 831777249 215540687 577313270 41985831 632418908 83274740 93892435 171713839 691087691 599479853 264607822 405388946 216353510 704706872 185522446 805157757 391120825 555273038 698314511 975458023 486819711 793074831 676024531 650908251 442971618 903817009 201868566 178566880 249633737 290016859 898275089 419409152 764476805 229832952 485876121 98855769 150436016 938619134 104285306 845646029 860245187 863018 584169891 832367374 57538167 166823406 368123789 582446090 376157762 858241413 48183468 125003942 893924851 692778023 532592389 180976267 526737833 454225771 851535075 106117343 753926365 434917576 977008577 194244444 870331829 138978151 201993233 946419325 641872095 149969187 344383476 845461528 234974502 825638675 239891627 756317016 934583984 49205600 679696523 216835453 444771404 879978763 203986455 320361454 851375532 871906166 435667299 266501528 982480276 715158440 143036029 704498048 829809755 247036152 773030008 437049473 398389236 893348830 260201437 318351341 380393778 271303405 635658047 600466929 860815415 149798836 960240112 722496739 475476648 250289451 372557867 213416959 311241643 322404814 254835346 547361140 9278897 61652927 127038430 96321911 856942611 483808850 634580049 123559743 839538711 597478910 690768385 756108749 608471384 675279873 704961381 594854621 291022654 542430296 845871531 788712562 637397207 400240645 943836966 65679343 259027951 302532241 428793734 189320652 483417131 180481591 632059799 603359874 358445518 24018797 202138942 284842399 30832036 130528852 72897334 922876331 51670658 727414080 528563867 4592516 293411168 477527246 814887653 930631921 292281337 605642842 120723659 993271231 834638026 618824798 505052115 781394245 396768497 122421471 302036767 442502368 219144207 331112669 841625210 812673891 70994338 281225447 676339910 534110121 68665212 533512660 748426489 936760081 369041195 734295967 995069560 606152929 152338123 170645859 514674425 191782673 824643937 471617761 432478781 728168983 832392028 732655711 765928289 15180092 640397938 145183700 978495129 884477847 695479340 22267357 440241400 33243005 165158978 222113281 653863780 201236734 486904711 939429910 883471482 842277017 258392012 710225406 742391532 949148684 401215323 73804494 224726851 752871183 177168141 38518696 998604605 733236101 845903714 643842612 274665070 773790289 601526517 922267871 614467959 583459759 715053742 166199137 911812744 850168644 549445972 220837571 683761572 383249048 492942681 624100931 845783753 889549082 802196223 80882192 918363044 953756653 419939489 684183925 63264197 776311918 697677472 998192904 301420738 68063180 764595410 540139850 22791496 776040949 716291002 968050415 158087442 983630339 253342189 637291119 205454146 200268687 3399868 751124005 601907254 268857222 743903424 844062291 77836538 362516859 799320420 269302908 321243037 38438121 150892564 766993402 975672271 402784726 715547207 370801199 618497933 129814926 812344296 454701753 643131841 3082090 714667557 839086822 399867729 332721003 898390324 562819473 266450379 297465522 45536228 631291940 294430755 883827145 871162822 20937229 98142058 102595368 314096304 89126846 394492042 385838447 759553506 544968037 283248211 438916655 83442824 342461812 830903260 445771900 628663544 206883535 879670776 70386091 138860628 46022741 962828036 945439136 624022177 126742651 820412834 582357742 755846662 581930321 51464948 229000705 563019579 198898875 500258623 354018391 126723354 669171267 437100414 881304064 492564474 840864066 580008521 816291121 553609751 393165130 518350229 708850939 534903740 730078066 384589241 938548908 143917736 300128419 292995066 540171810 244681151 910350230 270803442 942302362 577323780 943290498 751107817 792931941 143452325 498923914 422243802 835632421 754750797 55415913 822245574 690899786 322320897 26467329 299215243 831247488 875150354 68394654 345891817 748716632 741779788 520227334 41071137 799031573 984487549 482443768 761362735 958043868 405213918 602026588 394701827 883558010 598968937 363933418 936766050 346323286 972790385 526197211 983511324 590968571 678658515 938975860 701733294 455366605 352055685 356009068 562099034 155257253 603919075 962628081 960544796 807512392 552011658 659780150 618627366 932978806 277192367 27375495 368317253 43382977 10197819 671720811 30647567 76821998 835399076 176824411 606906810 403495107 529080534 719064707 137596800 511888894 102235079 83219855 864952037 469654043 572414720 911575330 155883390 599900180 342446298 191443593 362659328 998938564 163140213 786087387 875115893 504037447 423319513 558617250 196717385 757185931 832694453 186430518 844311922 236213665 244215189 850024276 737377113 384111579 127428734 989636059 840962783 835559741 305275437 948735159 595221821 765246838 242915629 764445211 475303292 946825986 965902651 727555535 89998750 372325460 667427799 149233419 820813584 39757801 636705342 962764933 516964763 701870650 247741526 427288451 300465280 336888443 925435591 856934790 800211350 291950863 944484616 793815190 221550782 103870720 867132590 175271888 702006254 981583497 185143987 429138343 172149533 497541639 417729755 975855994 922396151 847533691 589650543 345857375 607744675 249477215 779846262 908153253 720136147 384670026 987939023 582157229 549400416 838668323 249328150 75285384 821957709 146812068 653439578 353278476 842099060 226116241 364350770 501671107 376136496 985364069 425393219 504812493 927175903 617627298 868677688 692847664 518254580 19524029 594078796 821459310 350508616 580920651 864300017 899523855 840231750 355792149 162690480 378654100 441859639 970600928 15640974 659075561 638414550 16775189 565823440 943736674 843492890 854606134 82488640 781370570 855993041 747057084 218235496 754950247 564634857 702680296 482378708 208972383 532064339 154795783 49056804 248200169 576912448 563581562 195046084 127291574 876087537 614035050 766879415 369764668 883205183 708960475 695325446 516863050 962771188 40570994 137542016 646680679 929539869 578213553 547409978 128179852 482383471 73383141 189435284 239511034 219176492 408570411 892000577 749468651 408634065 865219770 638836043 17443050 937846842 361601945 402047460 946377108 509372853 332233452 994891329 786581869 553113246 983095757 472315470 56638123 655111454 39874915 868292244 666194692 726262915 100729761 520433657 358492335 837831859 286410230 410118858 29706623 531428919 123605002 9098256 76725371 887535717 179306788 988347714 77503545 168971271 277989462 193104598 408781124 214461767 180442039 417288449 370200732 459740762 217466047 109936764 880703591 785557010 236404496 705637479 282296668 439506640 344592822 411208079 858513856 614158708 398421437 427621323 808244124 756819333 280251747 590348844 924264347 215346545 148345188 693400000 318608545 107595365 691747053 769595759 311746394 532771651 791163923 292809634 893569431 854046542 69581028 67356085 467569004 90445930 410816680 984781840 827692905 882225293 249568415 697342217 916408997 669779064 330531005 21146509 366485449 121212089 164873591 824575167 148101581 646689266 307130919 382437683 417271614 360129268 40780265 949270949 240315777 112281163 304595701 128247494 778075601 745241528 392526433 246797562 935617450 751476596 136874165 447834542 908687171 689939399 144412692 793271166 623847179 403170778 453096159 956730431 708748702 989843373 934381557 909388178 648185988 377718066 589151956 848761311 305343685 112298674 596575912 746564258 371842157 291537218 645248465 747367962 899044742 899727189 821274655 579073614 980354969 249356581 807802803 527969771 169376666 765816939 535454338 500142255 876712940 298021964 592770563 708965322 91679256 457108984 964208555 877839125 879942331 495029755 527113182 518916649 703170873 975636472 900961140 605567339 359719106 549343936 420527357 806077158 672187182 817879515 787242891 516207898 545059271 673189722 667646755 299762736 506886450 550187460 431138019 991364644 140908462 569149279 907688541 351447230 377780668 679257845 60903933 340195192 220121012 755928502 129496791 551609761 397803304 956116390 871820171 552363477 925879983 807336541 772287268 12410052 407611527 927984956 258065067 856786378 760557095 235104307 411367650 27194372 913278008 865982191 118647111 727480549 431943903 635664267 955844210 926136196 186721597 192353721 312459211 153314451 708407091 974504535 877429096 89950654 787158852 553868255 867173021 612436429 625565649 473715066 402692731 663316602 520503867 743229084 954787208 212639430 103703264 331120195 475273091 892944242 875894540 957612406 247272855 656747565 607550422 834079502 870910095 743435965 359165174 456122259 590840132 986507994 754697124 236981931 65782063 15584643 528687075 538088712 557678666 209539339 499254723 96651717 856359773 433527841 353311647 752896349 741844340 673686491 473312914 461940726 148415192 801734315 756631679 808241967 15314099 490923455 61458752 260030583 938502551 190150696 527058329 976046836 371890704 188543082 158834005 300241859 553231724 995283496 263527897 64745088 727546411 868667755 781042806 530381407 392848127 154927327 353326220 925039222 643598697 226889347 37309766 436119219 806397463 378674180 508979474 742577989 657142821 677888261 826819196 796672318 260633083 215119611 596888299 554201900 316441252 746134316 172364053 93036076 669901652 904743610 118473955 890549260 408530104 458088242 720725590 440713348 241470659 135403034 426010764 256986223 871197424 157623688 424085655 136090498 34192465 415171758 96115274 497930282 723484315 975665775 471983549 775882660 466346053 51366411 28180694 553823633 359160895 59210260 935387104 994832927 54853447 332737837 920524085 180012238 887853255 182368488 75471900 938546640 342440256 237316249 399900896 259188199 252096926 349158808 491513926 508219259 901015695 636643899 451020433 154141520 185649494 117796110 18524289 92429308 377953651 322265878 247323103 836126843 614336625 91891484 689644415 573068634 85446195 36755777 697227932 319091803 576285367 396063958 619517269 76246919 695605588 505530336 513764465 400825697 41994556 734142347 385850306 410011098 808205007 851293312 349893188 616169105 499854784 921696716 446866954 661413355 115053798 928522324 516978240 384678943 613492925 638665842 574486477 228626172 793665477 627167466 137552446 316859477 809823111 815402049 54796171 885343124 592795483 112236021 969606289 758353467 815189916 550389343 517903684 319395875 240955525 868183659 922140778 110475452 499797633 485581975 71144052 231924525 844899313 983345946 437149539 957807957 325907323 477293206 103911948 607582127 895718362 860720648 173576230 182900504 790790518 794035343 423519973 479005152 285442568 468968642 296818705 696859357 933754986 602000558 406479027 596990492 73616889 266411377 96380814 397821677 787645627 370605712 319973088 585932895 411275319 32419288 49440564 884355170 836758209 851873748 244478190 208708120 43032971 345173906 399155103 441973868 576184768 696000586 607217067 541242883 84034131 949257861 35611681 151883905 726101872 505616794 706172402 887323275 734387916 980852625 195041334 165710139 809485858 634192672 209943259 303341859 52094044 739550192 893012560 766130866 55473425 181354533 723374032 316028601 888114453 370983610 470370746 930045478 140893297 314076592 510274794 937914138 464471658 117965938 183978016 95730174 799351950 595025559 828252918 46808356 626578203 103307002 206675600 341901266 62681162 190453994 355020430 678108464 886192896 114661763 458063634 280689348 371986644 854076565 738662127 291885213 750412212 715765939 639523154 371836371 223704437 909064316 742542650 19196777 554567987 901501762 863993372 538606160 303025795 126330931 903460883 710470801 142255830 289466033 449256583 725853182 361545777 286603439 461810134 305530782 453240326 457232674 930432662 84417209 163545465 199754626 299679898 842573676 440192293 145005874 786747624 720321197 642215977 258691916 984032017 498740706 811231002 80723562 59578870 769866583 247714986 924818551 825294871 65501712 968296126 852844729 800611114 867370250 175679530 928590925 631425799 809318081 758682403 290429727 298390992 713664202 622374794 185244582 451336926 984889550 759213320 19350671 110829821 165434539 446008188 535262514 782347505 542556254 74264205 52830935 776010614 970764119 311706703 146826575 640609129 61980272 139506995 876061808 191855060 397434952 421191744 625623907 718395075 633311200 201958014 95502106 77857441 272071587 125329628 559155825 418967227 221233216 81315037 818745947 647868734 346591549 463863167 115892942 102825729 200053564 904629904 911150584 121862074 115021759 643509630 736804229 417870064 829060497 395268216 877786435 942463703 414071991 21917244 145092071 323934825 348874819 144660209 288271837 162976839 300356178 888630108 818343387 302877214 976330329 948534468 817664584 594073418 476786042 544823572 540292957 165638116 71109579 820683935 124539653 812801720 316419282 243688510 488945835 595671782 543068738 238716577 815766177 304000306 179637926 264342134 723261528 78265207 529086068 952314361 822226213 655934172 264757006 200878576 61282270 67014066 526361059 32576075 546034463 652983172 160049775 971911306 568455814 934940770 158015635 583146830 380939806 261188343 405513539 426810790 745262134 604333878 880709497 979205319 580704756 615656458 68066574 203139310 626091129 206571212 456507027 206567466 703023786 718288296 867921327 137833347 331094113 305497371 596924497 785809445 661730431 904701053 575607861 794986800 253484707 798741622 328471286 391972306 681357397 629673957 108893837 999121942 979666714 908698892 318012069 497241684 869532884 498362225 806947310 885021513 882971877 192396979 493823391 240407597 223837595 97624468 393553784 410487412 902935016 471378698 106320401 292965474 833712787 473954838 600269394 722669445 680954979 137459619 418845677 403237355 354431509 68020503 418731874 286800562 795404547 304181233 707116298 977302031 364156677 709621182 994944525 286640783 903286870 744236481 206368126 930251799 865598797 620734145 511517725 483873388 595962774 856069533 340152301 119675214 605650278 823963861 90863172 57048690 211820652 342800568 689384652 186595093 493635768 278448376 905550490 772942217 160783314 433916589 618823195 898732976 753104055 695292224 996769233 444599127 207725463 442126103 354835673 376000587 141578388 493069844 857044142 945321259 455345297 334939101 320346301 491302908 127035279 771462530 898305573 485547206 727830296 67097867 962994274 683179527 504929313 877937865 528179137 566309090 274384695 719546423 840176848 650724399 439064902 997757426 390699129 63805838 830354269 876687729 79711537 106356853 105995994 109770231 58193907 684568672 373098870 590158044 619609447 231822833 578547374 118716046 546068699 755061254 700647887 101592908 542570737 474413782 513315805 182592063 793490994 616589102 527166582 85318647 233949794 996926059 927728987 362235523 119758620 341214050 394815199 599113 733769496 229499652 544441048 196429637 351439180 174798558 21504733 201505380 727831180 691799663 784902025 86029768 13741760 426490538 414942241 238898631 354256589 41928493 474349381 633683053 645977977 968751230 905662946 618085814 380044728 40379330 969154769 722747487 113537877 281186542 186306671 611032778 103392305 382156653 451734412 728441121 294216913 438029610 355478701 512749496 791601197 459601792 324568628 53243134 202039506 736101399 254208077 709901574 841779670 798641621 306411586 458710858 761937782 431391045 416693514 515982932 625063921 446298043 757455785 30152623 313736805 672206829 311083225 149112634 512232384 55545711 986484044 56852517 172534170 875766966 432290522 933306826 665183747 877578304 72700679 125628165 663454182 378387120 577958944 118474500 454115372 658074903 836044955 818782136 901443058 642780544 603555143 907842615 936915465 259536254 763035097 153790250 855006679 759708788 483590633 384580281 513431997 374860626 300110154 626586379 80700144 23655641 349590331 503529082 380426766 733078967 170838136 281100916 604945519 313648487 636447484 238442805 650526475 159939404 547196169 35092520 623389040 962307564 826187413 11455022 20312844 949763726 62708215 161489009 234496145 369891793 682477044 332848289 114506457 848613431 18253311 96831645 820747737 255197580 329308411 685086012 690712779 45308825 190302604 432065360 636049368 356095316 576427910 859767998 526858457 643444092 573847854 632277238 231146805 458451654 437359176 687891356 882274835 793484658 286499064 562083042 207548667 895820540 620315034 102578272 232325550 741559305 750886458 20865256 489545057 407940917 29305848 9104539 810384478 517221480 59095087 230596891 475818595 94097326 872210871 660343741 430231341 233415748 204686575 671277874 959911794 435002414 719801921 197649580 457000389 859411126 517231771 708807579 170138072 226725277 187343372 83251216 389881199 492480938 70451754 661576694 14276543 927316729 389729314 739597020 93252862 273124403 787645882 376357890 963546565 627383665 34450197 174525960 154742155 101582 420212676 5969101 889162965 908954192 180133998 815045543 350362510 212165142 220699332 101123353 230437157 933734393 78882601 694659764 773192852 190522512 514261954 28919795 402130751 884041933 246755216 763411917 896139878 180203463 324647225 927902101 107312466 862286740 599417055 844033800 692434158 600643735 77589439 255614711 59663272 859958071 50312600 304266569 317515085 266425171 799508935 552844325 162648183 783341983 247899372 593958645 283551752 421004256 99360123 474232374 61927799 657930709 402882002 787470631 888652258 241041698 472032394 627763467 758053698 380744029 669299072 975711651 945961623 445039532 566517817 707508303 425431390 60468617 577167001 508182857 978550473 616768199 170399088 640818539 788768527 916786962 997450255 433540102 807737772 994894180 304828794 66086199 654047332 397324400 118273608 365523641 15035354 487569777 720702985 65122332 539486226 261712114 565491767 74504680 599924863 879588155 688158572 209609016 825820297 750466729 544816234 190427515 382189011 517313525 165552507 477779989 21811076 472820022 78242795 64185094 455429911 163883075 237085074 871863143 653750351 205000859 255274953 715428942 116310726 281130121 991442381 825728912 110587535 600061520 787630972 93342668 224102386 187533912 500605207 269651689 564719183 801005639 891449394 429873191 285289535 889545773 916624167 583859687 592970983 66693011 170150299 491990024 764012716 169471207 799058037 142304004 502041925 486114004 397672001 317273118 849164631 223637524 361679376 737762231 622790490 886817453 462748688 999700901 280766717 196426187 898659624 67748909 47147438 196849041 289060725 525654651 796209182 370129654 827868716 327460619 386986281 235228193 764045101 983445537 902638823 454001906 708952953 87841240 25514657 945393205 10626637 40257671 644082384 430173067 362158958 543842578 197766191 993641301 894473222 600021061 966720824 40098306 569403774 6929470 191419175 72687874 730821556 829309325 156059882 188195413 472086950 117683679 799142123 61458083 524401291 381089496 569702924 52370607 614026788 494185253 300513015 256149334 623049347 651835360 421843634 518230767 399201629 384267753 3691265 514418693 559021736 245022887 750486043 683352099 394488749 859651709 658792728 387849146 233056782 735073342 389983028 468416793 364580788 429360635 643732886 885001981 970522345 765226633 399051449 907098958 754379651 415383040 474652486 919095073 135673511 400656238 423665449 781082491 794267613 91985991 785277570 603850603 667896233 265934890 924307140 832097993 322606516 658519660 769299159 880091340 988545210 496785882 557610074 699404861 45717235 195349272 549044825 392183522 91114537 103212224 601078194 107356600 354234115 30355627 271262035 797771484 156283394 916740679 167805870 885396639 182531967 90921766 849566833 291362377 201641469 882573841 759348106 747468110 640285503 849563441 261541145 601501193 397591288 147215758 604894309 308681651 448345618 556757851 510105823 301644701 612194038 958023835 389413319 738459253 739604249 473255608 962087001 805418644 611880637 243130463 790092876 920235236 321337759 586086642 893373543 955465171 625434894 534761106 250947102 765947324 292894535 407906625 925519057 942926904 709290887 396412797 594154478 219811428 537490534 289774705 248805556 998365653 212599873 144699012 312129958 312547399 81270272 666065639 83408752 818890819 318673277 507153544 280430817 542655633 58599338 678956263 405978307 560268627 798586973 138993399 846179276 266193189 401176730 944833589 48772579 832336575 191660584 513614552 576847466 626871073 832084534 702418533 531900218 235920523 920656784 378678360 796600423 979130223 691009578 661573067 308652519 792830792 741220801 509192258 756054812 102229010 32282847 327017085 680962782 758503305 992671998 311705926 983838491 167288565 918918431 2466622 222145140 899907849 960494333 772164286 134756214 823463742 468401720 184326673 327948309 135529744 823707674 510554591 386012573 551379338 236933608 653688621 695519847 295062197 62977835 355715819 504807100 986397554 563007187 630804487 472698851 976366031 786031504 166874591 359851357 886546870 280582954 764532064 846498268 102491547 473947289 690160782 575858763 945350148 838160032 54614684 959112316 406128749 192755609 97024315 903308184 22226184 223529358 102660373 318740489 582005139 489528452 413986732 726148915 557994656 442389325 712061030 35550666 533145219 508733481 216145948 239994054 22308757 839838160 83113288 941743810 762104725 482262229 519738748 262491525 586964957 46931181 268043140 148834280 405372604 432527570 668581955 454953889 206444145 345019124 432247342 897998229 344548586 273679460 378339882 490253967 764277019 26116521 929138349 434831239 671618247 890122886 754129689 937431862 943541104 196044428 804064100 703993751 264935734 736350928 76032593 385956280 735275948 481900737 987785102 181097 16137881 732815038 425681777 793198682 607460265 918547972 982082096 311409366 585475925 945739138 250370303 310301230 940001750 730583189 551684286 574024278 583086403 229422606 754997473 71673310 261892088 166903921 781826477 349010945 550758883 676126796 111045169 569783664 609150648 249308679 367404137 817055062 236052038 698143270 677108001 886797528 736897795 341644567 431567780 28538650 577502622 358420240 706714634 298423197 50863525 397137177 859999910 301722980 806486580 356688888 541595238 54092412 236276396 849250292 197224715 183262874 613137006 460896476 249774082 780890271 905417759 534556361 492965199 942243292 466444779 538399432 616058186 256894496 176830073 780911146 419628330 615888641 701895603 557891753 446420099 897380826 984459727 489470578 810733109 240966346 885326752 893658605 479148850 644804118 832899428 861356146 83122775 431781894 47295405 890210845 467681616 419205927 724774676 385716884 172201467 891713199 585244222 508359561 989849320 817933401 810430327 397460592 462820697 349430225 372996580 396969707 852011681 147329979 793548068 553854755 150920275 275633944 528057903 787498991 373072528 98847483 105294114 85584195 979112068 245266216 608775053 248821862 317395932 4147096 748597536 307750680 359629942 855851748 844241739 133466224 604330507 882984611 897858369 365480180 343430887 888056789 580800813 533109902 956029440 640005595 735801281 309137567 502601492 986584346 10107352 508502288 345047095 405709773 406575934 144011509 2416234 814941197 252211788 341459114 198396479 119774047 649784797 11568673 203458957 245184375 499698692 740413677 760326053 865455721 285611643 149534567 272626093 258344486 204399481 848755542 281677179 347122398 807485506 414522619 272524423 685069442 476642973 707906280 886180084 1327762 644156006 352764985 671122421 449758349 767721944 634066018 178735253 263149034 990392551 691884342 475012893 523614005 457294654 504443214 41050778 204692277 57905923 954128022 503033622 409971842 555679357 914862017 472486411 312289158 158778853 706857198 477375826 45168236 535425062 645170308 403277210 132641417 939498558 435208221 750147859 514045178 337045611 35713978 724273500 945120420 329998133 400533536 561418962 49587403 385808798 21628096 902265252 285386305 495296625 197159355 824006957 523120655 608460247 493801842 130717112 288483597 81587071 910028718 601170928 736922135 660890673 83320939 791309265 134878194 86064343 47820848 548349373 489104986 977228637 710466342 322680255 659424061 462043307 611400750 73673465 320268295 197256576 828248572 779220190 448257303 501726482 65468547 214540963 609874663 333889931 805008976 652100089 336986788 890491219 150239489 198355593 488989813 730416295 976240429 125176566 180461270 758036489 942071637 416133731 867605037 368016748 544564428 442928859 318803416 352535507 288875180 539069215 901447284 198477422 502302510 65657264 379542623 828956782 826858693 622231724 616686240 389620515 438024496 476339300 703214409 606882326 745832994 754691588 369676251 643870404 35285262 901368494 901019373 445017858 929046666 495413046 99694773 249857495 944060616 65809948 935025728 686111606 757241755 466133117 411103546 936693222 99866305 231836950 284619988 275420724 964146872 788841038 387336194 966307143 929021908 177214982 870403976 428687038 327265068 158637269 710325232 947482100 724011105 723335557 572118831 808188445 349557062 682847787 151613040 467164479 349366518 870234569 933032830 246017917 656277956 84221457 991390447 41902892 622670862 76142686 570512084 201157889 136534593 208079500 31024537 351293591 951578583 336714865 728690915 997906065 983906034 204828872 95403084 758282273 918772806 244777533 576170272 173454384 943593630 575078881 620292923 740703689 354182372 914442615 962882128 115800735 736796831 195767745 178239985 15444586 774808259 685188595 578269178 200157615 523009100 323266676 531751638 996066762 187191783 416250368 244867523 765847599 235553531 955945521 700856289 337048270 451988021 198128756 830509586 492203229 59484250 766959854 462012851 992540514 960153618 897178258 682690052 404244826 276285904 984347778 961843639 842055884 454134187 725193648 34022947 247299852 4004160 785823041 636175642 373020732 550896851 796418684 926641074 591060596 655513705 947118379 339207860 420772638 340565613 944729179 54500806 23938950 810702211 797582357 153171663 533569797 306790750 306874981 632938596 968217394 871892777 9107406 403418879 559371391 737057353 106621410 113067173 461621710 447448616 551829078 568406247 779789486 658441294 974617342 841741515 490837606 992507997 445961167 278929677 444136009 913076744 438261770 393172752 770509840 33968013 572358217 418581903 131327948 354613277 830984167 201311364 839506206 947615015 53286529 28644881 707615901 179368777 458855143 814900806 22026248 808393206 819896391 866614836 823918153 542785232 773063703 56610722 874838404 651679221 6099357 591466005 251551269 476913970 465348983 321290590 601456296 463955347 363607416 129691260 20112446 304069465 447741150 808479404 120931331 328131701 344158873 691389189 956436026 842870100 658548669 458190775 197475802 1731881 531298427 340574376 628994661 516128578 925117197 394548087 290181449 848773892 278845931 651731122 673597264 222724394 163374834 788246046 805499645 230624864 552096043 266681222 107947268 124965928 140188419 44835164 633452469 584934584 654392727 234021862 722672731 24307860 160499203 681270485 117823746 321488359 94025987 396078268 582095701 167049374 164288206 12991098 212684302 816926811 571679291 736779491 472248267 301305219 324659589 192878093 666035703 730545017 816769336 167535707 473797781 153509822 678100514 438735311 38518751 164287089 913930500 647782445 51540237 367465227 710545722 257866675 664291865 966808133 519581154 872971758 373897458 533012900 334490235 833233490 967039385 745481282 269915750 282561047 268767812 523296466 302207484 835368223 819796790 297735570 816409951 671424225 396565877 834997567 698006029 73152302 507262255 706309224 882937462 945929875 956031298 963215092 372718563 517182547 345452717 933072246 886474061 789442493 12952574 904930339 485526961 896174902 118730300 554235600 148566849 42098251 889828590 541082331 800514166 694370915 768649997 429995363 948404642 580409244 534620793 384451911 746426909 855194021 107704055 275936036 412594636 511281688 774065001 490260343 894972962 521248233 115909989 441113127 168560542 660962050 86899291 704855017 650701331 520927244 266615041 456597390 406454130 630190138 162131843 435105259 794260285 117761727 766801564 166925866 681276800 233362103 451935055 744289027 870212920 556778237 488877499 823826840 418400042 318405035 950188763 555864877 387641508 354295675 418864156 638340473 858662228 472130939 436822187 228423879 357000320 123796775 188160179 156129359 894005325 838642750 130718911 679129689 615874267 136463114 347641014 225048279 311093926 572014238 800832683 356972613 798709938 100349333 966722712 513079802 581660711 660059017 777673918 50382273 330377189 668592420 250264130 166396742 486225679 233864984 845364973 650090260 592194872 959141842 177924584 191983362 541622597 197471166 568380297 118777711 14786006 6955277 526159682 416409843 512646857 936963043 317696203 217077223 372461160 527001450 255957044 651777220 229079962 343339090 351935030 212152117 435155440 766346510 395207152 95065845 67144170 895746939 701119594 675191039 363879809 376028769 507471788 438353815 929059401 649586295 771267608 853551252 168215154 590467707 264515769 933016497 377967912 566574279 971578969 992670117 794181959 469956198 751094968 282656669 117850299 538567400 331633692 675196443 915387122 578532094 247707184 697111599 129039387 587778150 821796159 176419251 253774009 479171505 379313502 340871307 729698934 433014353 764822654 834442346 993594358 778392120 434514353 271376208 309457164 508847651 371589193 944763262 504329363 368421626 501339465 618041432 281437434 945082375 911630453 288073568 58309771 50988724 686255586 573188068 915268625 379545492 41648184 680274278 725032851 74422945 896474729 985377214 775436785 317464525 627491853 732701423 979139210 30229687 532436896 205632316 907446128 567888688 552262544 735205263 758099592 376910609 807467072 885123092 376316123 14764023 684608036 1299089 354786757 632048715 308198151 319828298 673595596 548997306 767347984 926074320 571857449 281912342 969662835 636518401 505539355 308765495 856948261 704085724 423443282 109294554 690562485 223943173 311472593 416518544 645089747 319345875 141925616 921619635 307535930 129928028 547418074 295821176 849562904 575809570 943972338 669211083 922362334 641352526 532006201 194535109 692524822 926188284 393513281 644479033 50894270 703871440 27849639 510060159 834739897 110932662 961382393 442420811 306641653 10209677 830754682 428876223 862626519 832600299 654720170 228850079 736514431 36818214 690111998 87526819 452225277 718315675 964406015 778402119 372887364 853349968 280738686 325318218 497263436 196335807 604121266 801044477 403922297 560490335 540165556 643630839 767181878 869233006 550602674 736830364 714036477 555026210 108731998 942132870 899193880 431975241 284591514 531549062 927171046 535548418 35438848 468092134 630111232 308692381 262459371 9508147 620677707 366757642 1876525 155178328 432721576 209970079 814924056 582562930 151944168 133668988 177440238 848273171 36977557 254792620 55964218 992800806 173792121 847250060 419278373 556356498 321928441 802301392 793986674 207453905 711034953 626846065 6994322 78203604 411905447 757435444 157215518 690497244 34194293 961233938 629382843 783543173 880333100 58659869 604905067 753997702 474564510 51739982 281990756 863266392 771797652 864547930 2671278 525923000 615029230 934431511 404246826 155400065 847717252 649589743 335258843 22357305 831299454 924807575 792767607 742312039 104386988 193607368 979980573 509156147 472683895 705288896 521147982 593311077 732174044 219200570 705995083 465001030 599463857 924316294 647641775 280379986 984415685 923703796 308227416 688091413 678614577 48214978 63993782 407173346 207587694 994388118 938565584 228233484 883484888 709905901 497529445 568593474 48759829 110017983 940469170 881803441 131064449 572724883 889689303 189266179 274724698 560572750 487780655 448236291 725599 135798452 232197627 189252416 685123547 17654501 425403683 963652415 263635026 45855184 969511919 696378966 991389693 750266120 222170909 729585832 399622465 907935936 295336848 137213370 270530283 205214103 918770872 921852779 856054736 679725394 903171843 36279685 247467626 684565451 900456914 822846754 457672105 902216255 728004344 274823159 444743951 956285747 119232609 379830678 489758254 134926582 637649205 123354006 124311354 750604955 183276906 363170790 293806778 411890127 423040708 426305369 522292216 354503355 978989095 779305369 708353789 190637900 338871158 670412519 635652327 203485658 260624182 53131960 428628549 712178682 215686129 31017356 309512111 268906540 91525093 857503697 87028687 97371855 760601993 893129290 304448827 164080948 8111886 179477289 170770720 128577532 888343759 987253253 691028973 260210878 193551280 65191678 395777226 426537857 198486825 823319567 976631319 360789560 318413432 132936321 434973526 174490612 166889363 470731502 625476887 455937117 287613282 128479063 310604393 254558710 461026342 127784350 53363795 340777835 635303965 717100319 729746189 92891176 616521381 560150356 185802883 513655716 108029121 27442242 854215946 315340567 423965676 11514011 903769722 820233031 383338023 856427839 539756698 599233039 733868687 177116369 163410177 928116084 320511950 938154286 386187205 37532067 770052611 131417231 589220624 90337061 332608172 721445039 166232477 575596128 75424590 316105233 180979245 573529830 155812868 435381167 398763409 121035837 949410847 291579540 237629296 662268631 902382040 988923732 734212520 506437117 872799659 429487712 301090235 579538283 938689882 198011050 223537613 592584275 740330129 544727325 392716687 202338481 78423723 127588776 207761487 959908374 115379798 582843320 540962459 216826811 702570226 81580595 927591567 656018473 873421625 876031327 872305520 263871495 791742661 986070521 848641155 277008991 196549330 128041338 715110970 518278491 63976412 108968946 784738191 796521373 542726450 696469667 237246829 406796826 610572139 623523357 605108795 782175516 33424746 709078545 853822778 97459885 929880363 251422 696488762 468882907 582351291 467728408 582020765 52745097 928551007 52723272 355562468 13221598 766377482 343442419 797263273 349605132 510724749 760776211 471104898 885758809 167374226 23920046 86672700 853203116 20983342 804891034 166252228 22471385 192048267 750958084 72346785 588601774 334415958 38621124 829338049 849578471 613032072 992391261 496698215 556457257 366448774 258113402 752040772 374126802 408286499 650983587 844678626 378787531 650374304 370222422 533710808 428558638 127314968 891715610 471974738 472604785 972387802 577862953 10141097 166771995 58136054 257538865 481552696 320682926 422459795 787378885 72376653 203720149 52281426 235295388 279585381 512566996 276336025 561654909 571804687 828973561 858978258 902321273 622404930 588042215 11627617 825116361 652492044 668374833 618892573 113123769 893571332 592098845 565660016 56476873 389479480 101925367 693446458 660075253 840523726 908977722 691199210 775012609 461872123 332086691 220065993 568350763 961145373 143329458 142260036 95498813 661119837 768583218 847857351 59393529 81045619 251112528 719545890 373966875 370462507 643323426 410400531 539530492 994990420 981523433 883599101 664468654 377653594 43788828 315334228 404747160 495547062 870312181 613980420 768209590 763322836 832533390 338948680 706900997 512751538 10542184 522093120 875814129 323221944 222624453 257149150 40035599 85405966 253709392 994143939 289498538 898899453 794048391 12449631 230041009 881311154 703599501 434642033 789179770 537141060 917937133 500954073 288841957 961200881 668062400 301734493 81675901 226830150 47348704 330003464 82549865 872380620 677039488 975670511 7008583 409698875 980170779 925644015 736213507 575953980 420281232 114904282 191978010 648273887 881196674 486907890 379659850 679806171 897668065 748562143 695250484 531663417 742988951 95520787 443884240 590093929 75226391 624613761 896645209 852526646 457137215 891841386 615005273 224042310 623582798 863617364 852243788 877689116 104314183 586376034 423536444 482680423 287333512 770367252 321247046 407483117 191633845 238901174 585063028 557055299 724819304 796163095 245742991 548648861 316451858 479059419 415283486 436669532 44998220 214620419 936450140 833529949 401927547 717433549 719633689 838775070 680893236 352937423 845176306 308529653 89043006 336078924 209358138 920333910 438656453 23533703 562406695 838459765 685482734 291367602 187786336 594772332 493612059 566939753 366058619 335995463 152851883 320988168 312841271 853206277 517624000 289851163 844353828 13438375 657988980 306496426 657131487 357111122 7054484 31659128 42440000 928646764 232756836 933667461 312780692 243664364 184747497 993014608 397052506 633245310 482498372 719921414 408579076 308387733 105095985 706352770 562314031 129845584 128667960 668142971 647081025 725333090 862961784 82059121 783613184 710299629 20893175 393772798 146982315 567699646 708963451 861569186 891096958 845000386 578600599 345117465 781975618 763213551 936649032 66390409 444496030 906548532 574665956 861063862 791775893 126996801 960630497 114323820 489858706 294912427 167215510 729224710 886175845 588578390 145558453 665929973 250266608 812682140 359070071 341637666 655872455 953998886 922045051 962597228 331068772 199399310 725596688 850946007 105595291 360026219 57580193 489534521 516565362 203022347 121517217 472578171 65254885 107622733 203118372 734365532 953451117 627087792 477364725 340143984 344462592 502011493 482631992 507617422 989287633 82325894 988281956 129457003 893697035 977628593 775646618 522950733 897064945 53965690 570784187 136969579 925192123 339296279 530027973 682891982 189506475 610737094 371346548 926001522 422783071 277185671 308713721 263494993 32231154 55350146 596369206 834231447 528428922 296518387 107264958 265637368 114856840 66577011 637325926 485511589 397057827 1759528 424946892 505310435 589227028 363023561 714368209 433436127 902046134 450017279 778217990 772332752 489608179 352294101 817312008 497179233 275594375 654623649 320380619 933285544 116261319 729794662 948714966 1975060 653148892 296659366 351842191 999128988 775800222 303400488 316979762 852501191 746916732 329869571 714753211 95571941 835674162 8078505 666009362 501976296 511416162 823303801 888052252 739303547 972513456 266106316 553896194 247790436 883328741 412574998 365680560 178073845 445602300 542414038 509128695 490502438 447993458 806688000 637902268 484270282 525791242 995218017 355237140 540793458 81464444 172290670 547566250 679824539 445422553 991052464 156969630 49293873 348902337 116722659 521934809 788781365 376630923 913216436 798572440 696222008 658564371 238795822 337795976 813607224 462334741 580584477 108106480 276031441 709211108 333997143 243686658 563905293 680171142 380071927 866371486 869911058 226357015 43186046 738399476 157482958 470307099 739808004 974629137 444155071 945608142 529852772 957505720 860220584 972615594 53839821 910858853 482322416 913677300 614699286 8270614 26136772 673186121 611400074 749086371 98647284 44249542 244135806 518966326 975572212 921201228 678762938 628517905 50771845 582022774 467449754 20883165 964872474 846637088 53749683 19492495 46844735 972920887 583197579 105224469 866623862 527929256 682281078 555718203 586538481 638196160 180466606 774343020 478648033 789513659 249333839 276223131 719327688 298498624 507180871 492236332 423435446 160026557 816572678 521774133 963430306 533805516 437643279 142781847 177071243 257974752 404037938 370493398 252239087 292014452 685979990 300866434 964735807 703920517 139632493 787635719 542376771 302943395 906792776 531831646 322012742 186971111 986076232 825565255 898519256 886581902 409521496 541987482 721330040 386228409 307731076 128758382 286897650 670462769 516965420 758515523 959740899 37749793 140335990 603223210 963395318 753722609 678122408 518500111 623589083 645550296 436206964 602744743 23997399 308723617 996911170 159085625 841105012 740501352 270433473 467028953 976403798 743078181 431659490 595846187 68328907 440383903 704336221 421756426 626394349 466949029 279681729 468975876 669412951 741617337 994559964 740077961 383596312 780463249 924496234 850798016 733131189 414883818 286717221 355956592 659302919 251446871 284029956 709101096 403751245 828039813 703722120 867275542 769979184 423920523 823839240 144965412 850948722 204586352 514634653 138561528 301376964 162670988 829828278 161567296 899155113 355484906 328041543 375733749 568339182 775455528 971678736 547557877 219472743 831395641 298599727 663439561 975102783 149540786 286239160 69206235 327928336 279838249 292879375 374995036 695602658 247092899 342616210 864787474 424409230 607116772 112902261 553391504 740063801 980388832 931772962 963964719 483471104 186629878 810670714 832141414 831582979 19541560 170669174 930842735 775546242 25240551 874917621 750963772 228027022 381938829 482308639 603475754 518907341 22182236 612615012 649594350 796939910 369109393 152923233 355215244 193538750 12483642 865442565 202647070 116892514 43577689 193439333 721024666 133891208 669186956 62456731 112799929 392562680 595595676 366463083 636856365 188068016 72594688 272236040 200723024 465613556 512213975 227397788 515643488 208827219 794210282 128651375 384810364 197013832 817963144 802075145 844525409 816896796 161181690 840701002 782855810 944031068 504142827 548113522 481624180 894436288 349391469 252874542 106113077 733496513 137008990 979782263 195764866 157479228 12909313 11977704 904670800 167596449 199350949 38311667 558786287 836096654 326941531 248158256 872847036 301589923 203117295 642816285 774336674 163690044 428544727 895035583 410776620 106265094 406490223 918902180 443387724 341720574 486874688 306048425 790223935 260683671 680373905 39783151 699724228 487384873 841221988 469235487 470895778 923466968 31055928 723505113 732159115 50432912 870065540 469989303 928571207 197835693 217109715 622478466 727713117 260063091 982344256 860767408 385353945 826215353 592349921 245856591 923838347 804137695 544691682 903978995 960472221 850015176 661454059 299398286 662845616 108685782 111745090 52657003 69360357 556715684 274349761 213395171 165629581 45244867 784351012 177494289 523556342 166267120 941695907 346213271 819912802 80389995 68837319 350573209 744934578 346738048 644375690 600986292 665255750 817636611 868662285 611984989 368527330 649388752 491080713 237107435 423443851 2604273 978104686 78816242 838138919 607259278 677797801 730316870 169180229 729200837 51705630 593211824 26538142 169116545 43849644 146563872 595641972 509074058 736146812 514807964 59466821 525847893 541135745 931491266 702769303 20879852 164672532 32992783 208699134 919473132 975155264 500355409 149777307 465190859 923623673 265146327 583748212 753075797 826632333 802243297 842083068 674293112 96327625 485655689 663404045 79087960 669458792 59112249 341151064 601361512 622194006 160607394 867050710 789340588 792035494 278515111 719780274 793926973 119111723 321892374 486777213 354860349 789551305 747743930 822256130 557839977 775825546 90530039 989748497 51192346 847159313 231614631 117943254 104484082 838238728 157761680 443800953 325744805 556800196 366513892 216275417 118983346 439360561 456665820 149716716 456016074 232713396 42713492 566445297 739433251 186934215 695560734 956630451 989753948 345413735 181582529 222074018 976842948 155653963 18723508 916544006 557572029 409847344 474875705 267563008 559544997 237179079 946374574 332465903 81457246 432248632 740479347 538207466 133571483 47743276 585029627 378455793 543504920 40635574 734239009 335538842 656634240 412019000 191643253 604098422 572380661 238414865 957525786 260416857 499110420 868644463 66294811 39191199 364225523 366055155 468345869 57121086 565675888 474044042 448938552 727104207 760935985 63185179 198377965 980386438 924443064 268287627 956890028 592064086 359334446 75741868 768675813 898197130 555570857 86065558 629275983 690350784 612887079 939328103 586445330 501415101 189773545 884848100 799807001 950380760 85369356 472943956 931057553 555992964 987603 205601212 935267397 607071813 246292796 932209841 741450036 850655719 837148955 259147823 23693554 782657063 788540430 317069677 113063180 732209981 899848878 585469327 469781498 818409014 524995347 338942360 428091722 238759476 399027433 779163866 300491594 28075899 505211860 621234520 987736016 815320553 87973148 140313292 420751628 664415363 856759702 767941830 366587505 960281402 415122765 761144255 564885172 396028192 187732470 899914821 503977198 976731821 933263397 288594229 462952888 332650919 875532360 618971115 796862352 722176932 537132958 594425994 170173125 484646025 30685956 922104671 203217647 941144463 508751781 491440458 873421743 396095644 61874999 716881567 505582779 286307101 754761771 919391262 985424142 901583601 771441687 110208286 413397971 554725579 826231846 374928148 302071251 410196396 232368588 382948650 467841063 851156997 640388531 174856154 301508940 42139158 739745285 357394811 80009324 897958324 278693642 448617163 690152137 875946907 153479421 870643648 971971405 149416749 113016097 118276506 820904283 118761174 277543344 623664912 205023157 165453624 155768765 945027834 504734881 641074941 47238732 988337274 364369308 593427055 576090402 956268774 961287257 150167682 66499881 681361816 920507520 349469590 99617371 979534447 467360432 164913012 750732741 984345978 74666135 515217692 783971958 803087219 419825957 413076318 332831315 945764675 925311493 524287799 382088687 110633461 142818551 758984039 359435184 251426310 102022584 323877101 626862484 882089963 574970868 393534346 764764893 129488427 294369077 581692731 837580846 137437638 482031368 322820150 943636519 522167598 471552677 229052488 227666847 635869113 397366913 900087763 828114115 358911727 108973871 593365222 544376176 867882967 132855818 745306453 181507521 887962323 673610544 979026711 691092744 229668249 561800735 519916470 917024495 814511196 179190123 704537737 251145384 213586120 623672531 233270775 720921393 372014510 525311753 682160054 208082634 389453495 439683796 867644152 257987461 252834369 185656692 819800587 923716538 141554122 101206406 804538875 219416374 858186163 670523671 406963355 919889779 701915037 393503198 947781300 657193375 8162121 83339885 505204114 114713033 858054872 319249406 467408080 130569659 982986840 759296200 149141833 194181856 747076571 148032122 962541638 670179457 566170546 280995374 896056202 764748207 617632755 139315767 930939294 270190174 553407353 199328814 263780198 263123600 62746573 388995816 375706508 253372372 635398190 5056122 728899021 461868949 844232117 908994757 654546288 52582080 721747306 39309065 394399223 513407859 962490073 631877580 976816245 617629880 214066784 266949327 20273790 535064673 23975631 119405371 183973085 768772790 160621663 4405066 858029759 218683512 43571825 726847797 537328251 599646696 936787179 721763820 736952400 188620475 919311040 51588531 309083718 778703618 780079306 19170303 232859289 885226500 446147003 484518066 832013128 459984336 38858531 888154591 424587861 995514538 724517010 213209476 661916832 711167439 998444261 265566367 578402394 64805306 411360514 534769649 721853582 372503451 987796867 443221841 930908574 622129845 44620947 633700893 260367659 64584194 161877446 749644237 500802198 369162777 723509541 225857158 405525910 387414199 175125117 239973756 29737147 254688846 898947759 7558308 574562269 224052501 483505559 959844066 823770810 527020139 473371491 529557455 454849822 570016572 372514520 505381897 820994448 89773134 548833431 495453138 297990954 850343911 590016143 523975061 347334930 225235597 756823128 907015431 124848601 240024124 236990604 132470787 96973000 58910361 58532622 485409436 144273903 480027989 819440005 285970161 37545142 690593730 150630164 879287498 955078716 587882645 558673286 546460798 593784015 664950338 813035370 957266330 175959905 422919902 218441441 28060222 756463470 723730562 191745565 192759022 485400019 902485651 982417308 889403796 581692944 367892660 523923074 595664828 183476049 929102301 45035875 942458805 588699322 739401280 242024132 579943842 447820090 868404481 700559855 492986534 123579742 799042813 183510687 29821589 327125774 471444197 478969232 731941844 294079141 842786248 868556599 555749478 526525696 975268288 517712622 599153315 42279254 489613688 913688947 244941578 605619170 50340719 717270097 874822340 237155795 890737221 962526873 744557116 144368960 938076650 670831112 309230167 347191866 832319291 722015462 199393933 49527871 194103572 473048229 992325875 856592787 519824663 611231542 160063149 684393848 231474029 209136322 424714890 312023673 414652353 518197910 283968318 965603658 65246216 876322279 628310394 85996008 162342698 870131955 483785986 683184897 793326166 541118504 732867262 381163334 918984787 741928773 245609109 184799806 280007586 89182799 472489415 804115349 205747158 957928599 599867010 667738056 124313881 492366358 749727691 346739133 789034075 898888730 187927798 872502632 462882219 388287996 970685087 782984153 128181730 276188139 405692801 300387117 154843396 897227492 327195138 440904123 608454634 831542922 32987181 245905046 702548603 565136527 392922756 819707563 530705850 181463066 208889449 44640773 526965957 485257525 235059587 43006634 52438251 145614939 697622029 242186367 250153723 878637751 401530288 484875521 909219004 566891293 257049207 684924955 299935988 785013172 826986299 745104219 162661870 799716660 578918155 840734206 581879350 537808301 613678376 298504330 449417584 513127393 975951771 82740559 386663708 892892442 489051405 907265421 912166563 364136474 178076793 649376628 118241916 274648143 24176228 718201 655995139 733910048 30113028 209383934 247173621 668189073 228013249 808305017 959968727 75352582 483212726 735455961 867295494 125845963 534701453 922133479 60366451 110099776 213999776 418070163 651493730 506575597 169843236 792493739 428471343 56151748 428027348 527933642 697585658 259107609 466049783 669971871 596942207 430138510 936821543 558408908 746535681 368555268 178388863 519366806 134726586 812170176 104267288 957544242 928494996 69534748 75297234 345127732 781872156 705877004 632449334 352589086 960091714 294333302 933112136 146554801 924890657 347658298 222008897 568383121 346049757 91548530 774567695 184559592 550100192 343739593 40589234 398223 295636023 695268847 558105774 483127984 43604597 651378985 1307362 339241886 899539039 841782754 884610622 644105178 897909672 632926870 259232659 444793355 849655845 437350827 908013561 800353839 422681263 207858073 690134912 769016019 699195905 932952019 370623849 817907578 246602797 387889082 372995700 543016438 316564813 19406474 836868173 292388707 943122827 932540982 421040352 779310756 973326053 612142917 522319568 229196022 278411547 760304032 949866290 461819135 902132163 897145939 349052866 457718229 136200550 71201653 989044312 245630118 961961000 346578797 570533473 622780512 618708099 522179184 637672167 202378818 804232099 81724287 936119773 676218515 554264807 300703328 860444877 760232159 977441319 616342825 415242111 509596285 191341904 921488858 717028542 46790439 383845435 36612676 707471535 653720419 359120270 660193651 589342410 3891886 452522325 65012972 765691820 103115102 669813405 172566578 823532256 564720615 390691500 837227046 211788737 508309741 139663491 746364733 61171729 874984347 499497825 609863295 998653597 434141919 681225187 778897210 188357307 319251403 813764239 126167976 808045555 237315569 473332325 224851853 367462890 198229018 969853964 217931816 120996934 313123149 418397117 559835029 277519058 830813513 779446325 391065407 928570363 179790640 8858387 758569622 385071262 956024648 681215738 887483304 267734956 791283575 110472556 146228936 768462667 853965570 230774480 790490845 604922838 557542621 31461024 356085467 576890095 824708699 992096650 227186277 257040717 931297230 883195073 597394081 785621256 790608665 392152309 558894278 485305674 405010268 991003036 956855733 200193679 39692608 784845506 933030775 579154022 280770879 506391761 564003585 384288807 531979053 647652909 86913962 945919636 640534350 122689927 716336354 988994612 912139440 718169713 515840290 742126143 365467460 941084501 203359907 56819372 902087778 777775844 988960576 601451421 20395440 795644786 774854252 465830428 193085402 345592388 542204774 677111882 215581245 163215672 964437355 618038984 144797123 306098527 907835438 887834439 502085838 585183950 626689783 334765529 540916353 605564245 834201799 926190250 712916184 83023437 671170278 419090930 757121726 202290562 920716993 431981754 327878948 454208980 652920845 324576729 71508092 575815256 127975266 735025945 136084152 443541067 855381355 646231967 556173519 649809934 771487629 556221911 559561077 857038866 93975445 715188879 56573934 620420477 998893852 539260480 71077371 34656132 969033510 99509287 80123363 960612016 716053182 334112344 638259781 407642252 713693260 783357312 849736055 495273870 279723603 255505587 917947600 500016949 487900053 582569671 582488363 385944677 278546835 418711588 265563 306521406 431122156 847667476 990080799 187788920 659646259 604554128 412061839 164321939 166175052 392758904 545258875 586109659 14325759 793525613 82939117 201827071 195037386 228843705 631622353 647947093 709458763 340416565 143892976 666258489 997902811 943512839 950510226 669181769 883782073 85695527 193372098 507978638 575305911 518380612 553316589 826139163 539891155 347248559 993406543 167527687 895758705 495006398 793452280 415192383 402948146 177699876 633661682 816456464 83130028 287800029 485496571 673219392 129684033 839805355 425275038 9384614 192007133 579642339 185334771 918989247 300674646 466346864 973138154 231545952 127297278 948692130 956789217 138408835 35508181 450899405 872485111 979547626 417222386 50825730 571598469 991161295 411764859 381780993 951954369 565418947 168432941 962673298 874089968 679144105 720196440 875601705 250863733 92018265 96462677 885628633 905429635 676793575 547616933 8536200 320011901 567564572 106375498 661348031 251153125 897587142 266340422 686851233 843420796 292115016 515329579 289890447 147472639 723948147 475238494 665982252 885717586 451800444 851946064 433469687 559899168 599595181 358653095 428084035 649251295 18116125 950900473 717051556 355224544 180588333 548505474 123826676 670416777 575563310 450375467 837080261 220722933 898101547 591008214 753525346 538362005 779452564 47149387 720788194 323537698 4871635 228016107 462086774 265816104 500447152 374980237 755155612 163209300 487971805 234595388 15975834 545950617 250031936 186564356 652511348 599705878 513325660 614958456 279243614 539252471 263786522 902206774 716226519 134119814 168374585 368826906 587300975 619907601 847442335 54061650 133341013 136226195 138583866 580347230 468052986 127212354 958340562 493760862 826811508 379371259 727375276 95821265 465779986 574982045 57673867 90248751 752557233 922374279 193938095 825458472 885668321 402105791 997641712 148046736 15187710 208443228 889287062 258029264 487510083 116479369 181093707 324168069 142349327 289963918 337857488 527974507 635950960 62547135 937911944 385974648 142275490 786011547 829014061 586168935 102576689 841412805 981419533 192585798 722357526 98143332 294028087 528512721 811785170 773579902 170320951 290863985 544619510 839103915 800998182 793262375 299499276 835839799 329335609 524641100 863135087 528844235 583911669 360951870 769893328 319047213 530372190 201472260 542026359 953727737 680811497 327093257 514136613 7600621 96125741 40824913 117774482 893095325 551963591 902768568 158181488 330249025 760645352 299519626 843688914 977921625 236285134 748303415 231723880 961528906 21344259 140689183 250344026 911208111 325059050 331811193 399967876 526859545 591525573 571606141 699408447 776389693 389870979 374851423 323720621 959171219 656413991 656947297 498516319 23902596 882863148 249062589 863716935 60213520 715911489 714699427 498577872 661374022 46401429 154766586 111296278 891988382 687993672 50906512 163159449 952190191 305352571 670355078 988680789 769457330 933656701 633317834 361684450 853082644 890425028 154429162 915164623 976269225 660893289 142842956 413590044 418084421 217852002 553764749 441217234 28358814 628588224 671509319 361218096 48474705 397545982 627959266 732811408 638364553 267692136 483107498 775019904 755098427 881603014 545068097 918985686 288512675 359926982 250936749 100759378 620802308 618742327 333235039 57443739 497610262 352611769 371094039 247572848 482325025 740189501 765966650 763507454 799096653 406180832 754292726 333202186 889490421 851749886 333548199 872537477 830655517 149676509 79093554 712369600 597439602 199688521 642502612 796255656 610892374 780923434 404190093 419930541 985594865 825752907 548097366 796771363 737390387 573333939 135704276 415545651 239657232 110109468 657653350 183373986 354922639 490348490 960283283 105199566 446289049 121498092 652242009 39436983 837051072 687343904 404723356 937096303 544657168 312877457 769314232 226348097 40648037 950085135 682007505 913393628 961329756 637448150 715906866 73865578 277701506 137924207 889617620 395168669 381936297 198289656 458457137 91851368 400489718 458740048 742093797 719699891 881703992 982873405 702345860 779375034 792899913 951430377 437627280 852630925 908608953 716583049 376659563 626149933 838739702 609037650 563329148 640440980 365502820 459417511 814319529 901430216 891094256 392560428 586808624 620798542 309773144 330345366 676369845 300959694 136959366 967805087 487603157 10482056 143369950 322839961 966689341 843309727 362820682 784478781 17536591 638169550 513061364 911571932 950255950 465049293 614562637 412252812 184250403 204253455 123689034 240258199 604733023 131472427 346034109 232927802 618134087 554760964 37453817 909721276 426331258 905976148 839395166 812884686 469282815 501424170 992299706 687986315 375609924 430886998 863495551 192381754 819870619 483040613 321570604 246180271 331485594 802826678 713976809 870733128 783076213 524997688 380465631 354509077 867651280 403174553 903792736 581094017 112108067 246360450 812801331 170471190 987149639 193994197 571036829 961842230 437051105 869480086 681395182 807823709 409270716 434072221 337435823 551466791 453529954 842574805 764851164 151820309 621201002 739322500 231922017 457392901 965380569 854571691 219412725 940691610 763383516 121526609 346803942 380007451 288781659 5527999 529471625 151180919 950002922 375266065 410834113 206967390 398026462 330613037 908074758 833893648 522747215 641968785 484921070 366138881 926395875 838228325 236729788 819863756 559478637 423915746 936904821 697000573 79926799 76497516 175063086 752176163 618499173 931722866 337263068 780581307 667156427 913313319 173164658 489649169 50106246 49788441 694502582 443462576 82641006 262277475 10588888 461728452 966768477 459734211 470590368 138012340 560533745 497978280 796036748 307894804 719383457 80541464 254539581 444462560 683050743 683600925 302945404 658542205 873606781 402204362 118339819 340906884 904881751 836329212 511742858 926921792 563835542 440070014 786290214 195992588 388875416 794300198 105392386 857449624 511623652 828400913 871168484 529898511 932751419 974441129 78841231 218304584 151825572 780054807 601218551 103852218 174947913 468524210 608535624 128904109 49259663 553190113 308405870 970926740 964838261 838180142 54409531 890239461 120937945 797300184 109736474 847862195 414513030 860038804 964595521 357484800 840638918 492679622 739844010 943600712 841367920 166454259 130156170 799723406 167713183 749915227 605114123 832034567 866134284 230642901 494240007 534885838 57060058 425518927 388150105 871336565 6169183 174175674 620725088 131474990 127634009 568916485 154633289 815794221 822394074 204717586 263519200 395467054 893607384 75859570 846749905 610002964 93584222 546413743 260399301 252427727 784727342 404977144 458610739 124051174 16341763 492703794 479492858 185081977 369093593 972301353 479090565 335151782 327243369 910909768 305960256 831585643 329561085 786955881 728764606 498803124 374722282 37029790 469402694 195970028 241207619 260477400 793240200 385889822 131595431 420679839 272006096 192928080 471476059 417394505 920314858 941534573 173278580 725054751 846094088 808372961 530848876 925788200 63018019 385078350 88826119 419037395 885178900 3119540 38002007 41623928 557293287 864622643 870923967 607477746 591623889 455384575 410763908 195714885 513848247 458832828 93405218 744673413 480754424 7579704 851919 22200764 433532808 61112826 828854290 276511139 869725078 989922202 198031866 385633613 420842542 816648144 681286378 118954256 199395247 592630740 259064416 978128358 477003230 62005744 838631345 326770316 728505689 914629871 672900091 371602656 533497425 748580915 880392835 767479191 641548627 319531357 432538894 646040003 22158551 658287031 60459083 326711823 637877249 585203804 953127896 11141253 561723811 763269245 773146923 764223060 763178456 345922490 328602199 523995684 695100670 28139884 975214032 864172326 360316055 915417343 512908182 400889491 743785681 601686394 268559217 361488123 477426296 442188087 784837799 448883100 990677263 218005890 97784082 781186513 650363793 512977223 277677953 718733524 92902083 958974038 820428729 496837186 202038054 308830273 662134882 819840934 937355940 78169700 449842960 727657964 365443062 765938571 48184029 195542375 295463569 601408162 43535353 481572364 115480033 467454044 907939429 492528729 383153293 720390289 826766987 672722481 406021294 80930177 422098812 889549739 781049491 397246239 514985778 18610850 942176848 913265785 545079409 666409623 239686549 151737762 905723880 784106640 106775908 23310808 945647745 267972255 824782976 854948888 144217875 609705799 662854221 318891595 808199207 720087942 818881762 414719663 33579606 102196798 636944947 866058979 459960506 657709225 265581463 833706884 787859845 302066707 916440680 880358477 268703940 666803191 211897027 757365844 436286694 238820263 148867896 329371983 426117378 518045178 133158404 882012667 253008087 178318954 834700451 8572899 451058578 246632060 70646088 322906572 888863335 767815165 63804890 562470332 160343061 683766578 370762236 216172132 782113339 359265912 765886763 46106332 364080242 113650971 122353371 151068346 927532883 129989082 439937550 163672785 175962692 531328636 379402708 758493849 114780878 453736936 880977008 188529156 151728787 180491731 12908070 704507939 844096152 383470388 609894677 976564689 905463123 97714186 693719976 866212914 885418212 982732347 144222741 624787691 10298287 336202621 834613098 959792784 194110362 524889353 340835991 427689052 885020139 523778118 447602168 904842191 221299244 631759532 741539844 738685402 264479485 933343767 310012060 795137086 503439425 363599969 338659821 888897967 224674075 829258136 855208126 53853654 180489696 954852179 319612528 859429533 737882713 710925000 459973351 407397313 979457516 145202327 25530942 343622853 420428127 632838856 18531692 578774504 737080481 492747149 589839149 479012945 839703376 226666277 287950650 918307134 764870537 804851325 218007660 20272233 137130713 683986928 671477479 751220280 442166968 104529300 700134054 340804282 27386961 473108048 567266456 118015354 329550340 606679518 474403410 805116445 860108748 634789427 303993860 845351523 668366974 414268585 441687447 417958194 432845023 298524804 188686137 32528856 630220537 569757545 953426350 363099096 272533212 948131947 590740857 471149498 303380093 972854912 730959679 757523577 782088657 440153620 404246227 362858482 461566730 603428297 969428164 874897374 495194872 805794104 960356184 631463002 269143601 806141224 402299820 652835481 236486848 638534549 955084248 538060605 481377875 350734809 957304929 69925448 975414753 40260311 332477765 927673666 770445508 305750185 787644643 58589587 313373870 67871530 773442860 750388479 85179380 247085580 148752044 145573501 439197709 858729002 939589564 144363287 259461989 736943505 129597404 59896509 996941740 831056693 264682385 308810698 229974777 189744880 282211896 977896949 465230246 971939729 588332445 239418146 119870256 348471242 715911557 718157857 364888733 299005657 713667251 660967401 246257263 163087219 235957029 753552672 493927395 333134149 141329975 344090867 791695285 151978615 695828110 318751802 935465581 345204139 557496656 957637378 234749994 285777254 526103108 499330386 32102997 389429527 377083434 718384956 262148581 48640942 793756726 594041374 829343225 149107211 775263003 927952318 43514676 193249374 261074136 45570108 6525734 672000926 427033270 869538334 943876517 799788646 913163930 669387542 604892376 575813981 615936202 583270165 328928846 364545157 590037618 379693296 159847203 622635955 51783404 409984578 554902118 733245915 292133194 796371050 615130362 470394212 126025409 121288935 736930865 457759552 629483079 796318635 911478533 869013157 752871739 505486627 370803341 554659293 816488999 716353341 691524323 168935136 696097375 261506596 92841414 262176651 907131803 131230593 22798174 52688592 50071266 611028313 633675456 46701132 938435635 455899232 486634682 212895726 848288029 364337218 778356458 654209369 628419111 610594799 807870051 238717387 679167796 162925155 222481875 622002589 224590805 985590134 165050552 166847712 310556894 705053305 803265818 524314190 210566532 304190781 678874371 217754425 937130896 908017850 439574496 658205527 745060340 189030352 734934708 644558250 181694343 874511205 637341022 447972420 462637744 377573439 82718384 438030067 260880682 237944910 511777447 407564566 579648463 171774313 366733764 993623759 6675499 616015762 592661130 15369779 192386897 935842089 724228424 859572596 409024279 725544473 617047262 736220946 49569764 987856939 168610563 648748508 192446989 900112065 78018341 473360934 215133854 7567387 429726850 165060513 378366872 63970542 40257921 647652112 366888352 759191204 834961250 784460740 535237621 532775465 235445237 424977664 12369793 833124433 672680038 250329513 569200514 721080831 539874865 440539214 727086352 398117115 643690211 871950566 436791762 738323583 533570098 94986304 460906843 353612972 342526670 780896722 783967450 956124626 190927738 490487007 360833139 709979537 959235629 832186513 737816866 271269910 269094743 629720078 582672462 574053085 11473767 575974450 388676242 250651485 781765330 535309682 49019840 155930919 10210148 154469670 452695276 599350618 347993493 754922903 615139229 176376144 46413128 704703285 925581662 302426948 788950976 730437215 207764969 114625507 166357747 94825496 966549181 536984206 645520717 174492259 758721119 713127239 308433709 47726193 672528439 243172825 460379681 181247653 84908969 207355320 845168064 157403813 997610307 420764651 122029912 591007917 702697132 643699646 755595899 272020733 24434760 267339143 556340378 290172536 816060302 148675042 665978654 149452734 525692225 174155106 164077982 701160158 823322673 466816454 625729138 487050248 903683232 266513336 745641370 54882258 377048312 165191354 64835751 307292369 729019809 367768319 555271850 101150887 908085454 710218512 870039194 513008200 792078250 516162911 261153705 574061355 274344547 975368942 336119596 609945295 626653769 297415341 419113 280640905 894019208 634442381 470603335 704478378 388847221 778501625 660971586 118389894 17543754 270991673 886774944 390144849 805674203 311153761 990691902 89087390 462681667 370083692 189044823 437327265 67431761 987972390 833668305 726664322 452010497 139448176 923889201 955496634 55696871 25949560 712851392 892416867 861901925 838167655 137238470 439277707 371713742 986223264 379037979 141385483 511983991 415876912 327523633 768477169 511012515 463287019 65283612 323160542 745910388 378478242 325067511 380024175 121662576 103740150 188107373 444922274 650943899 864669047 61021239 584242457 578914466 910333968 592036021 24866292 397227420 594370491 607724349 661495745 184287337 48916781 552125373 153436546 905707683 58983104 173936908 413005248 806659267 835367864 759290930 236044326 969800917 507684536 945517896 156156652 758686367 645125642 190005928 259947699 957379165 47316960 944625636 915914004 458148635 736976912 791045973 10176193 740395265 218169880 268032576 111073990 673992415 767773216 881797528 221350755 569648065 846789521 326024123 611410869 784432272 519632572 462514422 269677638 110834647 351901670 901691883 73948874 749766112 785603255 951721816 494548420 225766725 761156778 698734281 615711445 220238111 173400510 868154359 353650379 395333434 113495215 968634091 37524411 481031955 935305526 859532957 820650956 390989317 864786929 292510543 716463969 700399681 766237293 561772293 515694845 350462862 615682995 842832323 442037546 373472150 134092488 831806693 372792231 892327607 666031146 304493566 964385069 10119530 367562278 233834623 334889485 718419822 254053324 826015810 920235395 603423896 303567761 504204827 23275212 52565063 243339417 439060117 830444818 908322959 895587090 585782325 853330000 741989798 170700677 534317461 903440447 521291757 461955942 131174845 37881049 638642368 475684688 153843425 294790212 107559336 789601423 650419590 721590018 765658672 364062634 553466813 834272877 559959019 52399046 573015548 335271068 848025606 192112925 940839336 772729489 900064215 793863187 55976871 582174711 489862365 842171136 150079158 798695170 444089708 330822634 22133937 380058778 839534923 301271973 127776972 371213569 541397670 201145283 81946538 967556465 635082972 23546850 386056150 186422061 843509225 622451823 373700280 241196631 488164063 170200693 66242007 254567552 956561217 669611483 374773096 329157695 814209641 977309634 324642387 761741177 813957623 245665007 804889045 855271268 864767948 169998240 90520961 664398021 287412477 528735358 256373722 936472015 401237739 512527326 136457053 160985891 98363999 517544634 977506016 321507514 83555400 101302734 950887842 140517652 894850975 636632599 321690627 188665859 351997294 16150494 549881435 255454025 535520487 864931896 61783552 693206239 950044007 681244172 193556563 327857242 348300237 201543520 116606102 325085630 906830027 48915915 402645170 328449310 396461641 272212119 508018722 660222606 834682517 845470204 285563159 47682890 153802742 835085888 335340089 329786959 954270740 382888777 972641317 904679366 141953374 508994575 795531377 266542093 494770846 667058903 13358323 254491677 812183540 697350518 783478806 683598298 921364840 763468943 542253902 783697024 929260824 598502158 680499397 793102653 408257127 229865443 136172490 823597230 86840552 261797835 419252186 813535164 136668890 310215481 200283629 316299582 676390954 777019722 128333434 271992278 259945625 997780157 474204402 373146886 560566215 403980745 999098162 410371769 878837322 657133391 367683187 19678902 757498810 163230730 745465652 176051840 207350260 584965437 185624336 496117271 621078645 234485410 827343175 815100038 541155663 902738806 684156080 779252952 193261345 263906415 613343185 6669903 227277341 242900799 533901222 502033714 905822592 795367313 809396620 791371417 58946063 326278634 561941583 183061778 855506703 716469612 60895779 382695117 523929833 786518265 194482717 589100823 700007180 493828811 131809077 23164076 682650990 426606575 481895203 361463541 552641874 4865542 289326481 698796893 486430229 126136574 247000394 483394854 855274973 986160578 174233161 464832359 261766269 139555741 411245294 115071663 446354737 41633556 919859361 167082448 76409318 695810892 932689983 714873983 285989897 640562963 174626403 714751347 5149391 639588445 12025696 78451137 644271768 445521955 162851106 235602039 686625681 959315804 607622914 679623290 949382944 206071353 886520034 604621014 919193780 197258268 153455970 191101399 836988840 25293472 131632241 610853845 553583277 82780959 418934399 141140972 356569406 856449369 95548328 201144393 108177953 273354344 665801301 875499865 221473332 636176061 244932667 358862962 565731701 3215130 927626031 497783132 840826772 3003789 266155639 38596384 215633272 994937976 626108205 857848465 515508926 456152145 386521573 793269062 371111656 989304074 616105215 106429538 526970124 644109805 302947280 145304229 389798295 41697947 640552661 566272849 103168354 744780085 177573504 26579965 951966709 308219862 16287539 650179148 994201 894332316 259649901 467055979 715439144 106352952 858258840 902150513 631052385 640304946 204095903 950586028 604820530 340031282 542797143 933018009 634772437 73354898 466876211 231072871 954672212 199329395 653717476 606271272 439244966 229486392 859508857 539798578 592732921 321837395 95147620 430669570 816820576 642849256 330335011 666387800 246237136 427257352 37065033 70556104 949141892 931539191 347453013 608532687 714662914 296560383 944727307 579680454 13113941 404705422 66333496 425686586 931549300 784553109 794275833 663595519 83070078 250891417 444118616 192399311 845747248 75388777 757311005 948735795 287392439 857857611 447575434 512817619 306302693 459744578 719649181 36850984 986033889 453539098 517250913 641363070 634241265 419014200 272530908 883965691 761717799 891071179 11893467 595618712 860292395 528354598 231244820 415061713 161791252 982337518 790624704 157598957 174420889 488417400 574771699 858301093 695280067 378708596 360028444 648370753 662119994 932448039 346309510 590965997 753568165 799484228 196934576 888852031 439836581 419267497 424023450 646120264 516679880 901300750 488682645 461918998 313019014 159986385 589056150 344009650 959716906 422248431 763949903 856020638 671875370 780125663 508807868 476161799 182288000 507843585 250590090 360949620 942878907 323615825 394467096 482237955 34983195 979235195 403090305 473408694 376798033 845785261 952492758 191710054 370852149 475440294 41411375 433501262 21298780 961057536 526499422 78854479 251649533 802455358 410261039 677113344 13960547 122648358 742765887 220486688 570434018 592278159 856972372 316739380 573432870 658680544 175130392 107240712 17062527 437165372 678091220 875819205 585742096 581440292 843440997 20941544 897053765 636249509 422275475 453750598 87434116 23517033 724087311 358516430 380213149 212513077 359792157 893273916 341092158 120630982 828899738 633038440 443695041 899992971 628441657 547034443 706366599 741772928 71815771 252222932 88995468 723017271 363082793 333218402 665444259 383753688 245522505 511077432 434676281 654257730 80835369 679750902 434594712 407830381 720100708 9319373 540087827 279761551 264401427 442044202 428673467 470386490 766829800 766082108 373736617 510507154 342694287 187022191 622296090 362033301 919186980 756868619 720565794 731580662 90304941 656368447 806734130 337383358 49345251 857654594 334846885 564631205 120819156 54313765 469414769 397657843 898141648 322299646 36770852 955463525 170052310 778702898 795486429 688707752 891010468 241443284 751320032 450307389 743333834 206610124 249586806 443453677 115529378 133406077 959936279 345504721 727164625 613941193 564652854 891106701 223842617 631729565 647845880 154715183 862833064 739792204 180576428 103099599 61893107 83382878 254253912 875812228 323410810 353932891 115722502 595075039 696705242 981262772 354132570 272986784 561388692 246914764 822770155 243763533 537234524 926212247 466444248 249825144 830054707 33545206 920226000 404220060 772373288 787046126 40277153 287754332 265547702 872538438 512721594 417407074 740715767 57228740 731067795 674327954 542531960 591889023 981192011 378143564 454838516 490924952 781367243 461336162 438603411 131321175 611197797 882284802 517075092 69388879 679320098 295898209 780694810 241981973 78212345 998568307 856471048 126101833 933573647 575633290 29584816 117468860 460594524 138660994 178314034 880731360 313540456 120322131 90508608 824145923 205518091 847209123 473642423 625973177 89150203 575247058 897472042 494585255 123818072 968533693 8824795 153589961 419430903 124286789 231606897 152170638 587383719 17519921 548566625 272777316 633089417 724229397 818843190 844568366 269751409 153915169 22378012 618008810 627998972 526141813 462454159 42288297 767798855 396188657 943743044 544904428 18935606 897060308 91396252 611451171 870559808 178695292 370913090 873195084 95374186 23317557 160494897 151636958 744469079 322857889 153545497 552396032 604061689 262730015 105215306 772092646 696189103 927682869 51563893 536486589 308061205 99478042 203580463 385102359 467588911 641663814 641621429 685561192 501310467 536672212 736347617 985139446 580523005 427069851 924771261 352214143 314563366 796936483 787551418 106188505 617460689 404893990 175634724 185094965 69879536 465130981 761404990 741216776 649723930 691631729 901638925 886908425 250416824 287902326 452495065 479046716 753119122 48346079 664270169 798696249 84955157 786409928 272831549 82107377 851379344 608269508 862429413 183361410 212699239 29565025 730783616 102031680 741019176 607848340 984135539 153136066 867221004 744105723 887435495 314030597 49093233 649879631 213295992 795236376 670637843 714223658 663226464 132308783 34755581 49251579 569299289 275479478 806670497 980396943 906287658 720404570 668630339 730635171 329848866 663035700 972862241 185692651 371729084 952983728 634313869 857473613 275063782 282197601 25200405 316129377 337970652 765013474 186010448 193022078 613506803 397273908 793044433 922724342 766819666 570599628 395423110 725528221 678424475 416617996 668131155 693586600 421823660 786793499 299973161 863615105 619059765 973472810 846951884 689676675 375168996 473013588 938303373 807380363 497680725 750858848 16700179 613739429 616626076 75949180 16825556 380367362 771218043 332700078 238945936 283065032 549993635 385211247 93107726 182954099 9091985 583452484 216559630 451277023 639321921 272281259 404139160 648924280 682493459 512916917 496344538 891124623 321790411 248162125 409645524 800937152 616442665 235961051 617771496 263659781 336982450 639911748 99614336 863351192 765165732 517108942 31722539 932367512 178091128 260685618 61803622 807311061 864002323 153818297 619649591 919623825 879024828 853337692 822089345 372642934 375573721 395935033 157170758 516680346 799136328 194948665 378460372 166164016 858533727 192542482 112837811 545654199 279336915 804338370 498365331 735338118 854655288 799733415 668214623 809638182 431366537 49692163 203171047 161870336 413456182 113475416 776542664 367232952 553714246 915622283 922748972 381544710 111572459 71854792 884666458 785410365 862464140 430693668 257788726 377574422 815024904 879982653 693941976 670016497 793813535 933784749 763726330 695750122 691159179 177812754 541517269 387944452 592461331 100753328 73534593 302924627 506403372 435928039 337423268 196139495 996272133 379278666 924823267 905323229 367945651 651467331 517157365 295602019 865403879 239256412 816156718 670316200 917552798 621356229 80699344 688076718 753107251 628661702 924786321 594175392 854330635 386976477 757171128 332195166 286084004 469880322 796128745 682001116 926675380 4292805 364844952 315420664 148661889 191598775 962098320 963836921 636447868 26035876 705737344 495490688 196262972 958020947 700465200 60290028 670916322 439474820 183832349 32728814 625019122 524926973 486497712 101195057 170532288 214493861 119141232 478629369 468517569 933154475 253196817 464745562 965702809 727895534 436467393 258050995 454429831 372162148 290016460 200228310 840345564 538913111 556625351 453755427 522029979 477669867 108265939 73861464 682917076 980744798 736472467 969428113 615772925 633028557 247682347 849254402 81842733 483947671 69254369 313237346 760962771 175183936 778010644 380615352 649081529 156873338 163834918 864131473 505352423 967651135 372534142 895281547 153060166 838560719 298858957 457652376 913420787 597660637 877103248 182285097 478970681 674202202 634324420 323447236 397382388 453423544 514278934 988828699 461235588 40877574 746743548 797425471 49852580 553801153 311090813 643740634 285373017 496724177 211989793 260736755 333980406 140244570 353409456 843407422 419627340 250635484 656010030 26576852 838923890 851902887 144460004 109817593 229133066 553324624 630775838 359659517 316299841 870937674 782318765 907890841 977469684 578464690 496867267 804868226 690188373 943794394 371291322 180700104 529952834 820979483 690964967 119250705 897995368 171442961 347710921 633036338 498947445 793873698 203366967 824503733 166562574 144421741 888468270 373405826 988638846 978413223 609983236 511895662 120880641 267940840 626157586 905337003 952131467 957115137 534945295 325282222 918573497 691107285 534977692 911252699 426020735 544363015 405988530 2653024 439918323 204889422 951645484 817516436 619433027 564056700 630616797 449927241 822274879 564504184 615544060 219848952 898733890 846240309 602723682 180214722 127988608 793712607 466694171 115423356 594631165 851431994 371494119 386089803 270166460 951679672 827990385 568899787 759758781 975722747 700484191 305370244 678698035 194011510 180689069 54921078 942468136 538071099 605115413 615979306 796838264 596992350 75684089 439463185 171004996 380690135 989711155 860937264 996541658 805599397 440125116 612778701 431069958 877495739 930041123 988902183 235265099 149363659 516930497 741443948 239365382 161114428 898997252 154640549 851728837 903116750 683623698 493211224 831018121 816594558 849679399 816087234 257356766 844741863 553069257 759371220 536871003 528361510 785634618 28981862 35260206 939895597 291845571 900085330 742190134 808719863 604707293 722073559 44575451 408522619 85649318 796781062 184601208 205852273 608667216 619453957 754181849 736124506 917558400 994945786 540663756 631864369 64857733 50869449 537750659 464878806 569418353 620598504 974591107 347884143 131226189 185170723 13602778 253725962 684143600 830099146 177683126 748784482 994086485 236655724 864722232 895699068 332047163 618315365 81474730 496616652 135916500 841006012 485814750 820479045 511330841 731443073 637556758 928985230 147995200 364111628 992941075 42576358 253567448 624391491 448134044 540569818 755377676 14878576 874086463 236556563 733398940 639485142 511926661 460862209 530993508 21944160 778008625 278900810 101809138 58118846 865896017 812470418 50459579 452733501 668883711 820934796 642709002 77656143 920605235 890269534 245838598 246673298 114311285 436228150 872676135 756773642 396337058 73644601 335060701 475388682 901122229 609499353 568144513 290586923 389030851 386572758 314032935 654388161 586038675 694409017 806385462 405829858 896061641 552028048 340001110 584332155 130359754 194101742 638205255 56898653 394661084 37123302 492631748 228590455 227691129 673070383 784074570 749137637 377703626 363664567 424154659 734831089 731181029 713069893 809468697 464262790 815999323 449143824 892238949 439718689 722341734 37704005 180726147 143183030 319919454 931508011 620654847 603249048 727760379 879933489 65086725 378401954 799936891 850664041 70439977 461822004 409825726 970929224 48401137 137902124 292666837 863047573 895193532 675959514 750113615 900577782 918003606 829198225 333922292 699032337 731030118 311599339 259851332 112246567 749680866 519827005 869353990 789480982 632308227 354907160 198816602 485111906 828771874 627074222 790892705 945026720 259315076 937511060 738220969 498358075 123225479 633180750 195984283 795763520 511225143 216395024 647665769 128350918 286974914 798617238 202511045 418439886 975359613 592947515 686167962 190310080 594010918 952626998 720630709 467822783 462608104 772907244 121126510 279333338 613663608 126569168 545986436 548724504 596143903 497261161 282710255 510663797 42002212 982779776 368795914 911642414 273671600 567014454 322918225 307933377 39403860 942892848 26712209 265995223 170877688 631330443 972127438 814156001 571295736 940712 797873752 580773773 495401750 472046370 412132950 344572192 203307564 887241808 943675342 428542022 216368344 85165868 997979265 104015389 36245827 640001176 41819784 306251015 381163928 27571653 459027563 456376707 780440628 441099293 767116827 486127887 307393404 216164423 181925417 783196689 31194708 845138270 401982449 695341294 114473837 563544523 695776919 428969657 802375798 577266454 58500552 874867561 850375059 815317113 830275293 449579030 642517664 70739256 634650413 473108766 222529442 729862984 608692024 699987951 364328587 268548880 846222156 776325723 687406533 617919885 17293075 106951582 237178547 506725014 271426415 808821371 192243147 955522784 439973760 504285852 789821266 810662607 962520775 758434397 135877632 709976586 557079232 562813326 435186687 426255327 454983590 963150523 425264586 540172424 969548289 485225241 371543559 420468780 993328436 434677164 187622195 297707305 267260528 329562322 574405009 784146858 809998353 663019832 763919354 350881540 21677117 929199637 599938262 662729917 359562753 634400110 855998521 334664879 188741970 562484250 429522851 641922359 128757954 456902680 314583062 524540289 519637219 645769487 913218949 635798077 714422173 203996617 563226024 386166081 807580696 590050256 818340360 352762076 209603370 20326553 915647282 520380805 100295911 76760236 892419289 857859535 921573655 532459248 925444940 590662631 24648794 809381230 910759457 350923230 702604091 417595585 473556368 212342404 718141104 595451344 163634670 751097965 692800185 424329510 109484217 511183301 629819644 816245588 551741175 627425171 772474831 516358127 519974340 954734922 733021887 882210922 474891921 355510927 530290067 168353809 878426004 764112369 862083298 741594296 976962627 442204714 843507998 188761646 531636484 91337042 882975095 330783640 855788437 501054659 200471197 549597263 389681154 464160407 9105238 387024609 63622784 687719840 809640407 991111389 280019886 569002460 835204260 779924458 104014202 462100655 221980340 489870278 689516186 629635908 418274260 576850318 170270013 443228127 758728345 13940629 967694542 527512083 19059657 112955627 31624416 284112161 290072416 877295912 310188456 995635664 583751707 166008109 222248480 662039920 179461335 797733741 188342828 20209773 894360858 393119626 817448585 258992135 255555405 347326522 988078127 361874263 442567111 864654745 984642451 452503723 571275966 747367622 475129685 748615672 982339092 922465907 997050857 832317146 435555418 860973632 840467987 610639291 954958430 184488770 449539340 610511712 292929874 204800109 783024519 938036660 806430127 253979380 63099976 538725175 522644557 664655872 863467754 730111675 818433515 20526293 890942856 119560692 792106064 670143575 515928475 80207362 372513150 974885816 928187854 21413491 237963681 761145504 656972907 266278534 881277837 319726530 714456428 926556553 270965201 389187142 661829820 278450550 698990084 791968936 619150337 666857667 923985652 735966406 851494302 630042487 900775870 610993402 825278933 392600614 514229289 790451206 311161039 267760561 562660604 987637630 892139982 785767527 283535259 105427387 11427194 353991894 340551907 251707876 84323674 27218861 702325730 267634853 762291549 201019379 834402273 344527337 42584457 128633054 17864115 390374406 59673673 244882434 555010348 552238299 914380665 740735393 328825515 258706793 77009716 63797881 561564209 883797395 4932796 526465192 766707681 768885951 148681611 149167822 468500027 855369843 937825514 306600223 305420145 429003470 113126685 997059351 429656523 71074078 631474934 700143870 623020093 513452546 996518252 934483856 592909146 763678103 262758646 788488164 203927389 305556288 42700402 201773232 983881391 542866163 208273561 868580362 312381427 381458774 704131230 475352831 943279234 913036121 228392959 963497914 112323760 947705258 982420473 383686620 998120553 436371380 458901391 929763764 147620096 154153220 31572449 883527911 271445686 938905139 948466592 417756447 459698270 624781902 392677896 461128349 345429765 848062589 205965121 115480740 647585781 331810984 57064249 164596842 873214931 799917925 296831113 298441405 812496191 296045211 496411085 217361003 829265897 735122765 112593469 545289749 895361959 613515035 837263675 45097914 412445440 77943710 329411984 58747075 650234599 573570788 476952285 768483999 923200655 866045 333203206 710557410 264717275 967434155 267279803 786527195 145361121 816636181 460044167 185960845 861255433 356605303 740775136 741711816 275034145 651034304 849792423 277173159 266514710 133523372 381433670 516916857 59533614 338408754 591202362 747984587 156909235 758256265 344616168 736863656 416061077 310525517 936987106 826445401 858718762 749009195 446709090 259269940 135826468 173959196 738282399 386830233 899934115 160076041 779955287 563016506 687229450 579850600 726435102 938702173 259706524 724067409 241543542 182762884 460641838 610660947 356041140 287491420 986252965 355094741 494422964 139933614 84093342 381944142 356958339 506561418 109758431 744031219 268321951 373361460 144051794 195054368 400613969 209161441 967356549 32783754 757719972 761894794 279525527 938597063 137409288 299419010 425915044 540674947 602464339 872705735 922303628 861733082 296126789 364299607 290882799 193780599 575431227 453272682 514271281 280593216 179156431 527351596 810505013 234992856 323486848 818682764 162578415 720805735 961069503 660177510 677133066 15676464 94675127 245754 381877333 173790612 719662637 823636230 711576513 578698910 150842492 800342316 153659626 467586352 508848836 711820645 459302008 222276985 94684965 346107639 165888203 364602924 143777904 202621451 290644453 869216945 45140113 712106560 503697656 320411656 370393645 420573586 182938658 127174786 714153463 751222069 959111695 913425623 343283691 888406090 426524140 55922904 412255791 959901327 522127050 582216832 892932396 346264904 136686768 8238293 177046688 720591690 11278497 515003342 430328689 855400148 62283088 197886759 209383979 674518719 791302921 482171297 347612871 556925033 113228223 458613409 668773424 668539238 606798712 391059035 953706359 440536581 680266660 955389167 801633394 339506875 699974570 431247974 510618016 36509694 693036530 873646916 972433779 15269280 170278996 638790719 92594107 207409287 891593533 580254710 966461143 715150149 550182582 304434972 516003910 537093381 3397150 100441324 380983022 396392989 339148725 257174701 1632847 309485531 270781592 570763670 380442419 212778670 647532210 87012641 58849036 598979217 428627175 866131992 771075910 558145875 340569866 590246965 500933955 868872355 368745431 807756915 720721814 601778029 626601141 151010670 289606353 730451351 835321484 347508938 301708761 172147082 415558091 33037892 668662620 888156243 618607815 982877570 491759499 425509705 815803277 387611219 167903312 186457698 276504075 698556833 145113092 791291535 296025211 666392489 853664614 703299201 163471316 666521037 572658565 240812564 667639703 172352721 77848426 265400753 627646613 687605244 539617936 149329324 93503838 393192142 368567760 868914461 401780062 627510191 267753897 413630819 83570392 299135560 51755986 144262364 643775774 637299486 260496758 87808380 253273730 51790356 632993046 952851134 808338242 407957169 127456447 836161811 265218364 296566644 444294025 807027272 883174366 59590564 520024888 794742314 844919183 396929268 881319370 522901411 634207249 543766936 405134778 794494704 892960879 922063206 530772400 508629760 177716564 630692894 421474152 576205288 525810914 989665294 176608451 185170321 73666519 295879942 377457420 952981194 897466089 155011729 505170801 288567559 646195296 954721102 621173295 365384358 213068628 291005835 767334576 444933521 840710241 584566537 77171454 288204943 73850826 252037309 727417577 784262832 348928655 608266379 543062735 512872649 996705155 865308920 283794001 88978909 900295435 676608428 852838242 649781646 475012798 230056240 563463829 731727207 454054740 522622579 44978197 704742432 46386828 977615319 615136606 452795277 373850599 482534442 145245637 795687320 799659909 580444510 554287873 485128134 678307130 385710842 730250903 817285616 221229348 685375201 976605758 971408504 851176730 551243781 87475706 178395220 980692806 455862382 934677981 350124324 774698705 715362435 221380468 566224975 350963369 617715640 175122161 6657702 345150302 70875461 674297191 312467012 392611197 798635540 366811506 344725473 344289920 654840995 558390966 528071472 448386190 484500804 90133101 678703817 516415649 647169460 236378328 243418363 389459135 15964169 498798863 632349694 182292402 860558302 686205137 895193455 215406317 838674580 49543013 215182129 407910593 358659189 772037033 711163598 698075425 435529724 502685079 386693362 397956142 694198902 81639426 649289114 261554990 143797920 408457936 306231074 618310617 603255352 361474598 645214601 740064278 348692874 331709227 517675925 954945620 415430366 42795799 366940473 862658056 569814834 885207825 704499620 70464810 139477401 501860105 115775535 177115576 46424756 509864581 861852669 207188028 886166802 225068668 619108477 73457164 225719466 330734767 632534510 464424567 851279413 45281615 768324194 90963272 3581672 150325697 487727172 66085408 484984780 234040141 569393525 94575886 297229258 782635906 667434868 749536556 781937724 900797340 531381083 146179217 639995929 548599584 494503571 810884931 974084383 15048665 406555186 405853998 487217918 240208103 156885502 721930308 401947163 306587909 190849735 376256270 614563828 61977945 31141226 701281125 575237871 688829944 953115335 443764930 140229614 991887202 922995824 731034124 585544049 164845242 546724502 736231973 864103965 882371334 7036703 74552215 804792521 646875149 691000823 278910678 758663374 790623202 209533107 771387766 967211718 940408137 492597220 679946428 832367878 434790064 900576493 922292041 853291532 555644694 778820171 707458500 967787434 490627700 870104093 867160260 39106184 911422781 353359419 176092061 164064967 218362037 642131281 458928920 182634066 435292702 738672705 453672381 962499342 220166136 789266557 96032971 721882165 58485573 245653809 724926099 750247347 835175062 355423136 748635272 476505760 793671820 455911323 727134417 329170788 944855271 216574702 291725737 854009765 330660766 948990174 987610188 472016617 65712881 137799025 284927784 370428593 542821483 945056194 745962798 232487252 778811281 182101300 844411377 835307465 784020843 618002432 739406341 149030398 370379549 98376343 175593709 669060342 263647439 787820619 894152329 2848170 623055773 425901250 250298138 248085258 298833835 869694579 706191925 29809851 506887068 942166690 938053269 36109041 688405345 276565375 115607370 626264037 657179536 731247418 705101013 239207116 856768702 51661218 491401404 861847488 982603394 969497960 345473724 471503867 23885494 750411319 607699441 498013664 898085606 503303743 380128745 89416204 924997783 17156186 216830632 433484558 476558280 793626742 187493718 907620463 743683571 375106088 354291128 735615783 464750335 147254745 654898543 844101626 811802556 825699118 406823905 32700687 987703511 607532564 306855907 19848099 855180939 893362132 411871621 693556350 412035593 845521397 775370114 769464077 391246737 938778242 791216860 566992185 230207761 88565688 642315064 135286040 361769531 938712238 322886219 306209631 974938944 706281471 218720709 793098754 711554858 554451457 99051828 125845372 476372128 573815738 57303839 717219326 119560009 903696602 452848871 897537669 63044544 766638213 568147695 49668884 527223996 796000876 632538555 245677279 156811968 456227486 263956011 69485028 129139130 1810695 703030731 541402634 978928949 257272202 453981332 257727298 268542259 608063168 207964334 511326584 616701583 277735391 480518738 173119649 768529704 176739772 490250920 253815698 522343731 770621451 265658428 374042398 181018623 982851012 998558829 598569274 664534195 863262790 173390925 365174918 603024831 145542903 124284599 422491374 646481067 869020509 434494009 19708 813705150 88640035 400134891 575304618 597568265 194206826 163811183 59134999 97911329 612299420 263670611 135218340 509893751 431036905 917594939 5900596 206768935 211661762 28782883 110956317 137060464 647791939 101064663 773239714 112644309 179541415 149961560 561790023 221577756 179164567 950790674 219731220 878541513 484065270 292098893 590043374 713696508 172748176 576972879 123336563 143959808 997142335 315612696 857470004 122322863 177430768 650453762 360822848 953855051 344259695 297320318 208461338 954313605 284754615 972714027 870442163 195747398 62315336 357452702 214677992 719374669 856319159 252057596 460058676 908622388 969113705 636647487 124105845 756969083 798849969 451741276 855078732 23120909 528930173 936678662 870826244 784672465 849108442 14486589 32814451 731834271 258465244 724219300 775806810 155713547 279245247 728112885 22229204 48758879 16004024 660760675 803966429 115428024 886271206 308633881 111301005 717992030 140062426 661527775 6390646 703027048 535592009 918938661 983089933 349098410 994201061 566541471 820997121 5444921 33250584 155334163 572250335 138324691 177348512 927020294 262819851 514825580 840598018 586760426 437341132 228903519 879240371 642672576 198400748 651164740 571397010 387574871 66384518 285386844 813648852 411089698 816173141 305217481 4096509 414570618 135744829 562296868 18581114 462922301 100288022 955811571 374571054 522135331 814721491 325158262 526662762 920782744 349871856 620205211 781518117 922073384 708402632 182549132 633039180 800462079 716038509 821059608 575685408 618413140 154071074 764881719 99756263 711510425 500243481 767498156 27740583 734067176 586872677 69955880 110177977 244392653 159639116 19904409 440746219 483356008 34619740 425623407 715998595 637690062 694565337 222128362 774627028 5423662 215484511 570193664 81435947 917661787 994484054 90718829 170415861 60705430 264163659 975285495 252113444 185999285 521189282 382410818 788562470 980716273 350344806 609267154 247246519 178873718 455409385 120911559 163187307 284532650 718019619 114324481 854537800 259383231 433084474 315695894 559650431 82207216 370986495 992272436 890838100 594211297 426711914 710063292 967283623 267103758 608481797 116650693 22593767 473206926 346773610 191233347 801119298 573486649 601812401 14724391 472772819 300369658 399311401 677378765 198534726 67173599 364419418 850860898 317005374 707901144 72124803 963088183 912705953 182160530 639358000 884975290 153703075 124328370 605873998 269898150 832590878 69262961 753873697 130114078 532435090 890039992 384374828 19497426 37318484 646249124 838658246 312134102 541407628 351420742 388385806 386076096 215992334 304981754 499045313 431927969 533659962 724727082 813503665 749709755 237290886 457965014 399588357 516996971 747162151 487769528 761766072 252334038 71495640 515651456 718453124 256757005 30982383 740942826 765156365 894791373 784589398 880403157 625853914 990744123 933899167 470092297 391961116 424224144 326195242 319698087 663568840 658647297 719349417 158551822 172041657 419960985 717338925 396921671 602207216 33669417 801493729 593542743 861507843 586750976 277895802 622555630 285518836 983917510 707998712 718624906 550363680 800133973 255349970 578923728 156511125 640854436 535252880 842563723 511540822 84395576 879723560 152137355 212636194 239392933 606768637 280907136 212516347 187029481 557038414 703970717 586426453 614223059 427264585 948086397 626835892 859170795 240531263 141082824 840892872 268215457 272465879 917657848 244267406 562793766 998915176 756373148 867257309 688803704 454821867 410453645 599953184 360427115 516813015 509583209 21978701 208701960 346653307 332001112 997186685 881649259 464657765 764380818 702584141 614843356 132701837 996671638 51616446 985309493 668347648 351640591 514103656 746695133 172468211 929283844 436492255 241939863 650532921 487087249 213172456 99251690 917616793 831038515 172509792 299880471 232492456 76471105 999957042 583587220 195906804 201736268 716811124 765244547 786599048 449589668 934833475 70156152 9657077 820895267 540996366 729995001 614920298 649242498 661055320 733763025 200943948 102654488 658447836 259060298 689520151 928709646 632977644 948352117 502209089 965379402 858805345 375111450 130323452 720375669 772739652 747119892 54150023 917745997 32791244 98321113 885168876 606150972 156384956 525791517 576885107 83912692 701329073 892180026 855331552 281566980 182820689 901492810 184768322 845879933 350894264 442993773 90541284 154125169 487170074 563719950 370682718 88126010 564837766 811034108 510518301 716810771 600064485 835613539 810708524 941500232 828800275 981348728 832095740 997746402 747316056 880562407 284821268 354634609 941481227 251631701 762824549 513258681 660921958 81824181 114163991 446141704 135057842 121959669 292076594 687130293 387375125 209804643 364477679 169621227 575346446 777781191 807787705 35430165 34820523 258473608 750786634 333104033 52241918 74960158 48285178 462033853 140806423 674525938 11533387 224668135 384156316 572055270 683235488 63575183 556556167 582527258 604251453 798270077 192315636 95711157 565352538 186805882 920732556 121580919 660225200 48419147 401045671 357364815 809329645 420997459 359931477 214967754 293007606 37823268 248928174 179114479 982546039 591237210 674031411 405073104 445814703 692257520 590728316 343962069 161945227 619628563 434709669 862177350 839823284 409654371 178846904 299767607 848997498 183972251 324555625 268728393 639900350 654037708 750585699 849284218 50916083 432427878 873242143 820710375 676719361 344058467 154739225 56150731 958683087 875176730 717974404 442113297 531557311 721826012 652330066 544611770 213711270 544342949 143064211 734601643 893061902 730741203 191748837 477416160 691310353 673997335 470011468 935129829 262732573 210049849 380448648 860164968 835646774 87333615 258845087 757605719 416287770 531455790 193989308 109526678 810337172 426456476 370320568 551945450 353868286 848093639 603614453 13436741 186655955 492974862 425965408 697564577 531663362 139126871 648723028 360003135 242105142 545035795 686273437 545044119 342053505 850774542 363051636 519752488 751227742 419113517 769851153 394272964 623334961 220125924 464776457 882793287 45187760 503221970 489840927 914226524 844125524 205344465 405848709 100557255 397931153 982400929 854253264 211382670 714254727 879756878 204841004 218716724 842051466 195516086 593260116 607323708 343076555 708798633 15592306 561227677 259699016 473411303 367240106 822473942 481769113 114089162 770861337 104557419 473225795 392182807 878350440 485006810 968540357 542645042 994994876 311631464 135811347 827814766 868296452 497806012 398643425 848630759 577588255 600566400 134550268 811537286 207892049 643351887 957471102 686195602 360191560 473377624 691437019 54852904 831263878 602384394 792063316 696076687 928927827 335027963 880315457 733738934 880914239 337216791 630739393 129529481 603577371 45529190 940553926 230651898 559646449 984476446 649272176 936749781 721280155 679270885 5264118 122849543 202230863 118444417 174639654 968340136 488223854 739755443 341385719 719696210 491321960 563995563 358505470 439664654 700062956 149127142 25593960 442677280 960639723 586859234 971751418 273783626 965316285 23993517 481577440 81866825 868899476 503747245 912320455 511492118 93273739 544614864 406308764 740816653 194647214 968529169 289657250 660797407 331094893 461391019 300238065 417589497 603549733 774009169 218614369 972422334 124745996 894673886 344369079 82566376 773292318 91021066 306253910 290912449 330839513 512955641 476876009 252425779 397752825 42051124 29556572 444044237 47728238 214223000 507816138 177310488 164612551 618381154 673624555 77144564 110427400 644768912 955225555 3308528 332311765 954815110 957577798 332307673 667983149 423603725 902645038 955098567 808466080 338622813 759104097 52222815 85313816 239798715 179455104 9148940 735632372 388796572 727518868 24574398 101914105 181886501 970946299 33506242 99017830 876487439 551406751 489810489 385178539 332168470 569161716 542588359 362130900 28042456 213986437 857831249 488596186 953468738 24516446 678520978 886921637 953306814 329475400 528784728 718195625 704858138 827244780 676820776 459548147 34995528 299817917 997463182 838777326 248504107 739772396 899667611 721958940 398890619 84317874 429247300 292136108 807929219 524610494 871433687 350220398 982624242 224331067 238422714 280886420 860338183 927864656 429256132 505937677 730515903 530651405 905081659 262621738 40645558 900054903 150195260 509939044 132769724 950190118 83992824 895935688 108930535 576977244 220375395 897802959 135588955 545356243 89503766 631952453 810041104 963043187 327398316 798456556 258108313 127148905 277069905 364911592 940365411 653875985 911293118 692525292 992397256 335064631 147429403 674245461 180396115 337404420 914010009 233152849 992176245 105384690 680303623 434582516 838372044 759164126 638961654 751958511 971121809 789377012 2646236 307235514 232841937 294856430 492509662 442008052 15890487 821804822 563083718 799622240 151143074 315332689 866105154 312585811 132400772 698599909 156467123 621849026 684145148 648565758 820852686 570355551 645073095 242041114 360321971 682909974 717772163 926831363 435193450 810020487 616842691 442831092 516490169 11960519 508731119 502266783 368292815 328531426 872934981 272553737 230523821 259652421 430373006 558069541 280716771 282796651 31506032 440759394 709326703 288674909 805241718 10799069 455496316 412314196 714282604 815277464 83147181 543276246 592014279 453413495 283248520 968480634 929461878 742710092 966702605 891727406 739274870 725435597 119722298 441651467 844009825 934305353 246838200 252348045 436746812 850538862 575787705 927077328 312321338 390381294 33297123 388219973 181956667 941608618 694322243 726584259 666317391 832789292 759529082 436279530 468823841 120342729 425365869 118615548 409365918 649110440 474667753 769789035 138943766 408417500 108962255 112472211 329842343 486300950 637286282 935213627 387839640 988524569 923743486 100147631 145179809 473744751 23512675 797476312 942538875 110374795 835254700 727615928 652491113 530056524 71483674 154416171 459780097 67830335 121296035 562012137 254233646 67101748 731669678 675318601 986009136 58097956 427029694 781680224 730055898 86682971 706329037 354063183 587402425 637674040 533023729 268954515 913026183 282723384 631010826 913880528 180343261 469068504 199215720 493363081 160773522 917609397 858935206 111826432 564293920 823955338 668099772 665237210 331588976 320219053 942105770 916208771 446647263 629265494 79458666 587520239 155990308 945167643 996873510 385492449 68760443 359891315 103948557 24281020 859384450 577238592 436597330 738519303 198608954 308300198 794178309 122492512 42741588 968261314 459004798 302906242 787148308 275326498 493769620 51955835 385274395 406788194 719808512 612076527 212072655 780018176 806095317 835403058 231919003 618348837 831926042 804582711 477111017 545162316 48989241 69851853 478275021 847622202 326385480 226913897 39734776 27913032 208360757 475151358 695866619 651381737 467821136 287137254 67030872 577799109 515652151 965387583 158031380 386850333 849716287 816356160 635318590 163719829 852536678 850724060 807099206 561638476 485331884 856751726 255420137 723348104 776357011 621937148 848296270 932922220 285812994 221037208 146441504 129888905 40542926 208397576 884572179 593163923 415035884 872343878 984453889 66348253 566222189 802202620 815094980 635325129 763273794 327132505 539993578 675662212 161177606 995710726 384815740 234747258 735674427 638281112 681791955 485797884 282086381 324383966 182451733 545496368 539560874 145289152 701711742 810371792 504557523 612489260 49494612 544357238 466111296 91195947 326613720 942159200 38691536 971956283 794884851 907957824 991748998 287149235 999610506 837884282 651226518 69199929 625176773 885088132 52509928 927762808 750735068 599640079 856168789 159899900 701099690 580492580 867795199 712182156 407760853 904128241 705762363 120128037 989927041 968238915 920604874 949288501 506993364 526064580 210873708 104334642 945653470 293239178 338829266 513263010 519937043 524263598 816927470 937158965 4940803 311638308 700651801 849521970 118089342 263045019 723952661 408392347 461675600 437585411 78565765 679728611 614859360 10872106 793440564 389097182 816663594 175487018 15501939 731118752 611134615 794416728 545821806 910477906 199938144 552739861 795398120 106342767 320642786 355893346 230132316 713594668 612931836 300486964 273730955 843488729 433222087 369400564 464886065 737436540 863485342 55097889 795658688 394856252 686589650 482073808 235013038 217893097 291113402 643359577 525034296 497794445 891566512 172715787 925384147 929542606 280424774 407843496 941969493 669771397 945453689 549219532 523132276 298383687 865410306 877138820 919480172 128044200 632713171 177750323 695490136 833314576 725611983 264514086 238777527 320127311 437927995 588248695 159098473 823313267 29507036 425838318 955401314 805945677 666490289 409079991 535649466 808823672 182640530 793946028 380196044 200182535 805732357 333292718 448466125 160536266 923963006 376542762 49927004 152496143 472076711 629812082 122217706 794357497 80527584 334914857 39260878 704464202 612345029 150973355 259843138 32403535 686773904 762769778 50099372 312630050 87777470 200886511 122002750 257114473 926351095 527821366 343808145 693726351 533535424 736151216 396347110 281739319 349837789 334242068 651513348 214518301 685940634 435775890 945844145 501330808 330951058 204401925 391811004 995263005 16043774 681520225 129559240 23919815 904484410 328189206 825931584 764403959 551303761 291148461 187367598 818388360 134618589 877036831 362642014 620333684 59592173 260387766 967183895 997758837 48673508 243001709 405239093 503786460 694059243 169685469 818643511 494238405 442254724 34997101 772890882 460109843 999212523 453148526 708525982 547454936 938099840 708443791 557341599 732818683 844519149 831818427 92639624 678873460 980582004 761088606 715564570 185414573 967415888 298596239 328868316 888741045 512244810 736018759 63166454 876579447 46087038 539322219 274585597 935639517 126773541 148580087 228209828 325477845 280989172 92488336 208931530 953938587 888285445 609279480 700637765 809463691 841828266 501280253 737663136 998977994 491016025 737407972 784185602 457117816 261189709 191862087 125914055 757013974 473700248 917293767 53909520 370271382 744226495 182775175 685821592 686118350 172757783 314650774 261518126 480371782 247344295 736006583 128127385 977620120 810185600 22908734 595922386 394367471 802456101 641976049 263816251 942575622 858316620 634169261 418317680 906561673 770973086 226772715 8262560 637313460 380387460 66184875 362114043 909213124 468925898 976136306 215079385 668716325 724279373 314336697 324762520 131157553 637361764 776285662 205550328 882248902 918660773 945772020 364838514 893676784 646524321 281974989 312915483 210841598 855642166 587498731 704317806 334324073 806760415 755571510 725728254 39578744 592653838 79093829 72919565 412933344 601017234 5280367 315453816 237139981 510625725 350065722 795410619 65723419 848877292 581550920 928763712 468003243 724581813 881684344 12868717 41159690 114676796 367393687 436599973 573859129 920994110 22512757 731239149 855618879 720839792 669418186 738012431 65446352 65963862 297402350 630141797 49489132 445611371 912200591 789513948 985896601 742798902 618114956 774823217 494235189 922032325 627053043 385130389 218069891 152120013 766147809 238403238 666843909 259569398 973434064 477191052 85134435 933896340 428334371 835196322 849805643 19434797 392040374 94765767 28019085 873694128 894733338 811084487 514570382 413805625 180766067 863635777 461168909 191743228 285274021 835462583 263719580 428607800 256847430 956486613 245443073 557980588 181681377 290087727 489484654 405111443 102099491 785641514 753042015 150758300 270251558 245176383 480111688 418969743 529367662 886715874 696845713 760406050 674243238 307359677 18424698 930265 677598680 255558429 930820230 748169540 866960220 223134639 630367991 907587968 196945664 250960937 868417542 206770528 711593203 558132702 21278255 443179641 380538413 905681089 250323909 844853127 366019378 961279405 410058627 986034223 168638059 959142961 328738997 455251603 427043845 805782276 355613834 258039943 800723586 886408622 403197563 891619826 421517823 195381133 832307112 979852640 303665280 47619759 893676695 897925982 678020994 388525860 338521383 476250247 904021085 79633748 559744500 400561363 335164132 476569043 280711106 610811022 621048389 542794516 16697877 537375307 580687666 855993900 454704962 590005687 540439917 576865393 109576879 778788215 489313846 732068946 528638256 401893276 974969453 823954409 728265114 152752166 563352755 838084550 528553848 331817158 528044706 776247209 132693872 368343109 276732759 207127412 75761473 936237843 239685412 158135153 364834623 103074889 934454300 433556970 115552322 471942690 780268315 728956722 252254395 458967475 989452973 949110365 542437495 993649461 66075794 666704591 929477645 890996139 15682712 754329033 461370185 717518394 648844660 341362996 241391859 954412948 450138452 932793392 820547179 377741275 450843879 240611189 966083349 600981138 877007148 732219275 632907498 893887955 596466709 424778120 973538639 100496102 557303068 689791914 404406091 535953155 185614078 500866613 790142993 785338323 24569447 255740559 340740014 740725245 603182185 641618383 124432295 920111034 553933428 950840178 856850479 910026853 71161844 374283340 991846100 674545774 392795709 57008070 8887906 750679469 84768390 726432741 239752530 793828388 609255522 773511322 982277602 101154824 642575151 300953377 768859235 839880752 92896255 755196700 207063145 389960632 795481334 698339962 160292238 924320127 505481654 210838308 563187129 235068129 291034469 720727118 913841990 862510576 946855615 393604690 822691789 260950868 149141079 108736894 675401648 196221564 387599935 31620387 654355047 9012328 171194576 496570815 504451117 759256472 409995325 643118074 901687484 472793842 254626340 323090536 543351417 859340081 638934658 538169914 468854820 585497021 424127867 629309614 717644521 717360743 706062311 391476656 646631967 222583304 37245801 50088005 893188262 490929261 376382652 324268373 141448259 155789635 798604770 443976895 276117055 618543036 826920469 491257289 498275305 374330196 365181759 969029480 263138064 494687760 942556637 581717470 808141368 325754246 831810295 278927077 560063425 966304552 546490295 760618879 469586979 461679840 959259386 151674730 116912395 519433555 846698632 327118642 493219154 9075779 998246136 980726079 43027172 247388515 11743088 881132860 326251040 839484283 697554343 23952209 423712883 162851640 986181497 668737912 152307631 883283996 115171815 342794143 245090049 252397998 418871835 420552793 867545430 96541042 529758956 162859683 134078506 228064494 29043453 838374482 612592378 194409145 550504480 198037671 100137749 132094838 703623949 876494562 707103903 365696432 848134890 200284758 558990649 32028608 461352515 603292193 462489720 513267312 242946430 88618158 252387331 750928888 716741581 846750736 648161136 839436776 629220758 856331824 990643633 142993114 438854808 241293555 154498365 348307713 886899306 977877664 430083116 410374939 361778031 809609482 323538197 434603506 793271309 218959121 668445719 154519566 999263976 959299640 680338996 546753520 565018031 594956152 52717711 355582622 903475788 357833090 474048747 914368257 517123264 660681634 911486490 346065321 638641236 483656505 655281650 457712065 388205514 590220976 449466807 394408685 29625280 755899857 528589939 306453975 992263380 597879030 330895458 645327019 67243013 239831609 315232480 959090568 339894241 673485830 45154115 697091586 295531483 859258676 695840198 292695459 805452928 233376815 389586072 741912231 468104055 343721099 813664121 243465731 730306894 580523814 275461748 618471150 968577587 874798612 889783227 556898108 440939379 582941306 535646986 859449785 766349256 732886434 146307562 36798209 907206133 938933884 320456733 84148972 576387429 191592552 873421503 287384509 14887180 836762121 797695521 512557340 910803521 711563344 431565212 413393491 677972542 706091055 788424426 784077070 596508198 512170185 345821220 626319205 582243538 687218887 413658922 783584828 867040899 410664916 949499647 605954466 515852707 445155337 289589691 488019723 977471678 24461861 499003082 79236330 398334765 622192556 895590412 645415710 295696757 950216627 445831007 406293520 305453550 755279996 954341317 668579692 269351331 425036566 858010570 612589379 769002419 15038857 916284013 332636447 193343797 932148150 222452090 131256910 339343645 84177550 649692348 898947289 264767840 121225093 636955617 269854449 648549421 29778468 80662599 363717474 345860455 355323984 536777589 101224778 707783934 163608613 500237134 256939724 2077175 213894813 877552346 884202459 218571131 463130673 367614226 950655342 875432370 625818053 880676941 409003199 187936838 811981724 570149849 77524750 335403580 17006559 960891741 594886763 142822362 414221570 104937563 324423256 743762200 909271481 525612844 297045187 9942943 490711986 914792628 228456553 813197557 770998303 924200191 659805763 255312392 332718294 431314688 110127483 233849321 621433197 264273749 183948541 834108327 467726042 946048737 117455562 928472848 67129416 471980084 32097347 994240395 317398304 74035774 77008484 683988767 475172702 809000035 289472168 985495379 811842839 25110276 546581149 15061574 894416502 752328323 264364450 203330782 627395927 996112003 657407734 186168280 266616060 504372999 319081494 265501685 534329152 905134279 630571447 611806143 373502129 195929636 464998619 327027495 527475133 834906620 20322573 551129507 457407414 653011203 288728467 425403340 310223480 824579558 532797750 238741620 792281854 546150009 671390072 734360899 796867016 410212529 391636407 612663452 417359056 517725710 344062095 743880163 815195592 71476734 41718303 46769183 367730946 863338183 974030026 227023504 953884743 995643372 570402873 242376969 955551030 974552415 10683044 209570721 26821485 691099070 500527729 445750119 122377578 315258778 728913658 177443665 958384875 905733498 296817955 563051184 152399032 172250109 122549542 477771885 946201638 517852276 804056134 816807772 205088401 65599191 257022787 4615012 20628656 227165976 883934626 56661271 838803317 668770934 74949642 129005090 533020620 914153263 551640817 94354374 22845673 132029005 133351346 913535123 384731565 168846992 879289311 434893738 877638308 320915231 323291728 987207319 520310776 267527984 288345967 597207440 693431561 560069262 411233563 945115076 557135805 58093068 499453134 78495566 224613693 849940143 713197200 596891913 159131440 19120926 995371026 303830083 568425476 308991023 30251265 238024791 106700117 593745662 446444028 825408594 151311115 88668114 423116852 644963512 217803271 644894259 833281478 504458509 325315848 112931305 830135274 342643331 410219796 513063506 81675974 557747429 221926534 384117958 232615134 573698401 859867655 599880814 153024259 152264649 505788727 340707655 115319432 878395577 762949864 199555868 169727551 820545341 763991310 6298984 823242767 246826919 440840290 798308278 736175517 760736330 336925321 58380217 933084222 682097345 659924854 267151736 670574858 940428814 127520656 35223868 835263151 918357533 304151655 481461931 958593734 32558641 334559427 35671593 795144978 799750482 508525666 786282509 640632277 548274644 612346535 70614747 867161922 564983903 551550925 269783770 619700667 687347721 283581771 977773566 110720491 522831311 856110885 219683134 835902505 856602359 949963003 644052309 300726531 296521907 446333211 532284501 706194317 181970147 919727559 418829847 49785533 568055777 729727241 684760079 141934093 995836282 419588414 864938282 928481051 638494608 67757951 962581851 804128923 723017342 793550853 943806874 883273217 94236372 744072374 926060849 815012943 775697563 835781301 723084666 812172008 453175630 461632159 253280498 718670780 243955445 969647163 240327838 346259913 299236734 951983738 340937178 850607419 362846243 126942897 315694890 423245665 30526817 102477082 767615011 995143212 331201818 387727147 295750493 807295193 588619654 188186305 899399675 686867907 998157351 249814727 360557372 269853798 679832168 446024399 465470532 968311413 40609065 966928969 10895439 519578179 530417491 392845616 918481747 910108811 12713532 451351370 411482593 298566302 760003839 573490775 676564977 428355649 730119472 684711159 107237934 881928082 43635189 261097744 538254404 747405298 873115351 837633731 381386854 235092797 540695108 487925200 986748952 504981456 550316005 772072987 259678097 485805508 439449796 724713012 228930374 563740211 824674231 729570294 501594981 219670463 312286953 122060856 628968999 173572695 602600487 9045715 201188224 988567228 400610665 495682425 653968493 928661969 845723102 531759492 979975412 941435608 5232175 168133437 86793206 430526450 957276873 183939971 178808457 382485488 516019770 265492847 593324575 469528386 242178201 620338170 347755990 181296475 945391932 192951844 715477686 249461525 427458950 434952948 249320481 243859676 480572573 297586730 540012318 940036953 74262033 910626719 404341046 984207199 299791581 27873970 700761676 517935897 877388604 294373594 288966144 138513487 247554179 900822097 185050922 881830183 17526693 600277070 561242149 749193574 895400328 456241465 381350499 65340410 576762967 520791169 191416481 397130213 191386224 903751767 767967803 180829555 678060745 417529651 924186644 238448091 195038315 873101615 310114023 265043831 22596073 713766458 164673146 686836864 685291941 582810639 746558603 772034051 623698531 761179941 551523083 115880732 715768498 415458127 784566171 844910438 523733680 895820926 389525856 565008729 51011928 600864035 4756481 276657832 427742624 513354248 344577543 720425333 742767344 241577754 604845479 112478371 49239417 900405637 60153639 689902045 32032241 180020788 540456965 593729529 637047516 364630004 68067236 650430583 326817002 653106662 519143238 108536561 642437462 751327996 616168187 320107978 181144919 642971962 588058007 184369657 93144328 909368007 98601509 678237428 515943578 875074533 168183286 915717421 402757577 968944238 385112062 927836123 531986774 643260764 951711725 957298142 340641474 129421135 254105859 334681424 652586176 304971273 901727908 310972822 467124093 309507687 760229172 162332348 897933667 241013891 870211209 99863624 382250094 759387269 21159740 508456527 949881507 281768030 679823921 630902365 367644599 201097323 754485416 891746433 25175754 870289171 802039805 856701979 212439426 276046233 689490296 870000706 952446284 86313230 456840629 441125062 159047645 233517488 135334956 269099495 868151441 406265457 96906232 475067327 485572333 603141515 576059648 161649673 98478027 301069339 784870131 927971039 775833789 765184451 458378325 754593064 472986681 6931936 432124105 244409459 287767946 437584644 572038580 977183441 973350655 984840675 715397726 864098347 650656393 824572473 594760899 125166009 166291591 628221704 706379070 205676368 298585930 816573052 882686313 418273553 678814841 159769524 843505126 624697068 299390764 569471790 918568307 716402061 989277341 186963758 322685321 611348511 911551410 168551220 641377154 545139614 776313895 323749224 873393108 19294329 196449602 199751132 798923704 971186706 267230808 421123899 333135737 498309377 380795470 937426248 496221078 166762454 333497935 948709333 158949538 711991181 50782214 586292586 274210187 99425516 255889280 764506087 896918571 936909053 335826666 743642302 858190788 988276710 341656332 690157581 40497128 500504058 520869110 169487192 647796808 24223817 480056340 198094470 289120107 506411634 455380364 581342346 484577137 508700923 827585846 394682724 395275691 514991574 101374792 391508180 732076615 65706849 749598632 408254827 911712481 972466620 676389226 656962647 523229334 630371693 584877647 916900428 981081696 17826883 98795312 999658015 307617938 207193367 101867900 838870276 563051260 357680643 788258130 850705408 293148922 734196108 232077110 409391786 209668842 605487913 459245072 495817261 955985848 773970579 158880709 520843207 740610226 620650370 357011222 862668 556521516 850972678 912496931 943234879 177982748 35705434 917599328 416929778 115487407 506147705 511185236 338322830 949229977 740665196 617614019 53659536 412732752 21638001 545745361 970943513 580774970 545153447 627472308 942537273 481975504 71737985 215109831 723210024 914820357 141887605 826888453 268154901 937782884 150887965 969125576 145031246 1473981 345756473 118248832 986577262 424355425 809217651 23344841 15863403 31770559 216217461 197419151 600007006 371450975 12348680 919782996 225820798 832614992 353100370 749143204 653429496 488700293 785524624 105359009 164165298 403572604 905107841 429164778 760358404 314038814 92246550 570289897 499508166 908152281 143174847 906759842 799035731 466994458 357486234 172298341 351629020 714099669 654538236 990008311 972699471 257966365 845857183 110215087 219898129 18359754 259482730 57613656 412687781 779720334 678429970 537777602 314592605 117803453 465621512 567230123 94908998 222957683 579642976 59976172 706886597 805558297 503519353 914446238 865283598 120474716 483532547 159427775 374342037 91385663 21190444 911608353 778203489 884832285 16351140 975153127 437121144 866865506 623665120 551429663 983461465 53474928 202124978 709530389 211230164 759507744 17564216 3664062 951618392 362775298 776532664 658768277 811993629 354049742 166857422 645156087 471567107 831747260 34882776 749079833 986679798 104658469 48360316 931809862 235006186 586084438 182321446 311865282 601817107 312564952 730405012 569441332 504673345 715013028 676801109 702773399 982412436 322590437 136533195 442029373 113104823 596152632 323611675 302873309 583702330 470560725 531228488 166152827 405672338 483109060 910710576 68640059 965760262 407669951 831969993 912737899 103863052 823420207 274210903 992842492 306698675 103435620 6748754 882631472 309874171 83041951 739044876 962489661 383944864 16168582 177526314 710258454 10218480 126361389 700846987 165621152 377146321 675657760 896692502 62424833 259527871 386885280 852418045 744733780 822474106 97614209 632255796 194920373 139682449 691149833 248715417 872240534 720372673 533099313 649306147 679812697 348548538 621700421 542314649 463905896 173470748 674885572 256896537 589860978 622294679 304254867 189916196 576608245 242059901 872879172 899695929 718686867 951488764 262442786 44116148 799517317 70047889 286381034 292589897 208315912 213075843 333043227 948838689 437506999 814453977 800395333 851445381 130238271 709918115 843159198 932631445 405698108 648576287 963469488 821593560 959908691 653190646 953776716 340480391 692980718 79649515 52328755 790408220 952474366 275661811 144432837 150730537 93764861 386886705 853681080 852910125 359743376 482164574 388291204 212827900 625950057 637567760 844397439 723659768 587941878 611769927 803395348 332425826 389682842 972259004 777315092 788988552 994835385 740769433 167512612 518060162 518060968 608677108 93092966 63887723 700762492 404328569 24840731 707132855 170748298 706885789 528425673 838283737 53962161 20474366 449461755 525033762 452460310 138430748 389840811 163939215 842309311 349800974 49286324 222748796 31006380 753803896 673778625 284966119 835526182 593350291 168953458 875621863 894078551 367067896 429576643 803696246 716337503 665594525 205681508 923110367 354710989 92253912 849434097 59826829 224607834 729792984 478262151 944522375 189077169 154054675 986149640 702192097 635046741 787797869 751776683 300569414 592630469 456580072 621373040 169043919 425152625 358791840 554723534 774042426 146879901 386217676 519858210 904226749 694839695 760316405 413192398 650846197 428910134 737796648 194147778 839762055 338460587 729588443 269498894 571243990 21971521 731997504 973196005 560437579 270907340 286450454 284908074 774810030 863158789 370181717 912109901 903456223 686269209 464825990 153055960 830223142 977725972 294942197 702491541 231203109 772920167 212905973 721824340 749692478 394331155 809233546 344564585 327134199 944706469 484138254 795730904 851602614 322237806 84081095 666936501 518446181 439138402 609418317 134843062 723112844 532886477 975724092 291331903 45713551 61427904 482094742 263243735 887873321 822238769 990977838 293208474 776995507 472855092 273965885 123761056 951789483 164785535 692276182 821325006 951889284 544683534 573508152 264906701 179314811 914920127 897034316 233037542 998103243 663701864 556737155 634577482 332265095 838674399 240889621 537307510 388303906 704802300 660019227 952456839 27983767 250537331 888756955 930535483 304413536 204050374 230466428 876399973 567792022 955379286 683845069 532724954 80928113 804397595 190127766 459841268 820258921 774178151 155236527 934390246 853165087 245769323 390219013 786041130 517478348 924375483 487913818 16027357 789227904 573270945 313689856 860420274 999145423 113446417 54576458 658978856 535561884 903555874 626035895 305259285 279390592 649508757 267385210 3293925 903984056 118741162 261664893 992073258 386685139 524304939 857502606 660132226 59121472 98681108 374120299 934100688 427003559 489121042 745525069 237260876 681869880 247199292 944716823 538308795 928448558 718031699 193271357 678624962 380978774 260155794 251367642 403361814 629783129 888251473 926096808 490503289 295894104 709113684 300894125 468360944 329740350 283290518 224150714 201254887 770359329 495190576 35990764 200230267 80923754 348969308 979439570 206024152 238334257 695653832 28371929 606496078 148262719 43454122 45928957 431064748 809113455 935551905 3936685 170649277 945134375 903340175 338992863 624546607 160075567 758506755 14137138 987002155 677230630 522130394 874819622 829718997 764728982 655462808 988203865 766806202 887860255 123879746 314198136 335489970 51439938 409174619 902661536 822879153 17495679 557189219 943515025 9257555 640460794 497788809 93985492 208860447 470983409 744632655 787517395 75732074 62129366 656392775 393396307 932990673 68002008 605143397 917578045 44727324 430686459 417275448 819578541 525277622 108865737 746609852 577538285 29326607 151924039 27527612 851299945 472365347 132010529 247586954 919997232 660423056 410907882 647957643 113708493 695461123 560085139 254787029 252285223 681145323 552558231 564592529 443645019 200267504 655597332 575119213 759736553 807980507 1146143 949806435 684875602 710170824 151861395 212796819 532249276 694318889 390991820 89302935 54048996 951051721 271941760 261869572 710171907 902124970 493022925 245147034 324747030 142836568 760420623 923069762 341277025 745479441 782854688 800451501 402473771 75297492 852911029 175954324 729611106 753578206 229774281 870163909 732368381 647525708 896113941 890035629 931123957 508994475 66251553 73190665 381489118 128364277 624682669 482643657 354465002 901399604 273466450 849364004 407049390 822949647 807557295 100028474 579290830 329371440 462054907 135746888 279002715 954503747 46116674 225061287 807975258 551437266 432063146 961161199 932985620 362968401 452359974 42182602 741731410 377920771 527456851 301805441 613145971 737151946 288250943 137629948 988781559 271284334 860041409 406650621 647146812 994982238 830373391 729698501 364111681 791613442 472531281 677006035 623040675 847690102 333230133 990966065 165570481 581443220 116235972 353472964 936178536 343483464 948223216 904010640 173205389 938091970 590950204 246778430 553865588 382252689 404501898 626917274 705853813 385681678 623714244 90584597 543219656 55482927 277752558 382758906 98901719 765541583 846292754 4878490 733338760 673939678 650212772 683223338 924649079 732715576 8605360 620455271 673602830 580060330 283727232 613178267 918099921 628923437 741784968 118528876 75985719 828434959 774723585 911094319 167784530 697133349 706197975 563976130 248907637 49605863 952782795 686261328 79186134 172662724 538071827 467764080 413963853 410178322 172185267 969084190 240303959 574072218 146779557 719491703 423118525 850993373 853883502 625833331 280594337 139790020 238650818 772843371 915669427 130880332 676081370 875869317 272276839 561081107 493939149 600064770 838305888 409378826 265248510 641281091 74995200 74916601 389671386 885467648 63774228 543264983 800552622 213188794 381975685 191230406 567470063 959489034 494154368 318662118 807893810 395394611 251605038 152644098 710410451 911716930 293707042 873836989 11586255 308158546 105571473 491258151 686957901 673234422 490601759 411848964 663360938 13825107 160751605 723988622 573610209 107117663 948982889 885422569 426151206 982580031 952201654 280268395 104206088 920278026 269426194 519952401 349635385 858942180 317107895 33498069 991666968 763569607 31683290 610993426 384157866 606503664 705043681 810265892 818556015 707647574 500429662 896749093 186818831 291224051 207915492 431305405 649015193 620903842 896776601 790668062 74270082 367394040 835960514 313480376 719894560 196120391 520596645 825486760 599165012 816001694 772277716 243755407 171144566 806825204 436590167 754853455 58321531 591407422 863392152 233246191 637774569 404359200 615459032 162325860 826119780 773239213 977429351 899888027 875032851 715447923 667448349 245772801 666078527 288788804 919231300 459014008 390586867 717778729 761910882 958488077 74964314 597090502 73931857 846009259 188677271 872978598 3120833 42460553 685945076 885845293 819400012 313334217 119850014 673191182 811475417 847940104 88516937 834500576 710438058 144662935 258624331 604349684 513462259 716871607 833340188 579200249 140821207 375522184 219744828 694906641 456687266 299172603 479830296 17949690 5579361 739816958 970303728 385999859 491806676 60697887 967702951 843559368 989295992 622741506 475718398 782645796 495993970 558446641 217410978 342301321 78905997 697467672 621858421 663670418 477447111 817751949 138331831 72939514 21684386 238238194 667946734 764602385 966301991 647092200 911157564 688248783 933766127 922882876 390722092 444072481 468082229 406840904 687977840 970399153 695165181 486961191 125780046 350389059 493795005 526072009 40689318 671281084 398910014 768592534 808563306 851281266 839915964 315302562 547056017 103106712 629932467 175574216 477913552 274365866 319134190 137773694 509220928 392292723 614684208 784832051 933919966 65535248 466790997 344099022 558720273 35614652 311557324 68604981 848187573 626569882 91266460 463869864 496325160 994281392 107856594 734946567 694947318 837752020 4153944 819294734 896352303 853165675 225374865 889397722 225996437 137515314 917176222 429718711 731393167 999158243 27430535 849448319 907867841 377814063 216051155 959131516 861029257 665557068 681146636 48085471 834807358 399284158 237980227 573300679 648628094 460622482 193415127 153689995 532703478 235781118 691783627 996079707 591221638 982074544 561588683 265627696 813184491 871855809 66498821 230047122 894894933 946431237 376596743 438281481 216835354 167039874 404432807 735253224 648385845 44832908 192881062 860300307 537759964 230816060 962721434 305465652 354502488 118716020 155667057 625218040 395195293 364929660 129230158 300438605 538191928 450321389 415797653 223240147 432899548 78384350 737704823 902851509 819786835 433140847 311153695 569771810 587296712 56596331 142568828 200806716 756336820 535857765 784866717 219185346 501128066 335398294 573914945 536432739 899846038 20324582 219377641 740302894 820330988 54436121 577053053 369794828 291559428 446096026 75396509 640205976 268791573 692597883 674773374 864493637 990960767 116923511 407538864 293553438 412110213 301093517 887862522 359433697 61534380 495629994 976042926 853447902 795616319 537513279 856437819 524274187 808363553 537839404 285419631 576928170 63474242 12588790 947870396 395961582 198167673 690086767 765037354 619950137 204772826 352630302 863594927 304850656 413729172 278942655 865685019 29411670 334053176 22079754 168942798 563580922 652746022 733853269 604805991 589650805 110315994 668764910 788538295 198740144 377990430 574024994 856688568 208193959 562316955 443824288 139423473 535384484 294929044 641290938 359386817 870643313 707858180 952733934 880300121 710514118 785817435 800327814 996870263 810693077 162814006 133085517 73433559 512847241 912574637 187870965 583455143 516143797 9864250 65210899 406624896 860338985 509983416 122749122 734818996 661956538 20695206 415524892 383112828 262744812 524311577 102572532 398145963 435919364 660821027 649560070 304624763 480015147 18957360 592306063 903158145 944505673 192516581 664957433 37401378 587929422 687363300 120645235 820829852 615296 929655372 517182556 29052 849333891 194728167 954710623 454465509 577280122 496336747 879097946 539053590 818066449 259411252 822463095 674265511 729175899 419853304 813397661 285967393 767626435 885594046 235115479 896862600 452237518 718173647 848084740 613328829 773468170 754213527 931312142 220855900 42179391 434779308 490929137 218141845 771330036 759101114 109394612 730524599 993844008 403389581 692768438 619129908 73568557 245065216 124112 101654420 330589202 949776699 565248312 636440643 72693822 157901553 816912740 84146274 669604153 907734645 274220257 73031961 276778897 240468281 618396793 733465298 5873711 103310589 443913475 439928504 961509539 57144287 363733426 329996439 731673585 395746509 591782604 395103693 249529728 949822866 81486565 56018336 455620296 754909895 19042325 799541752 441221265 422812288 820381812 890223338 728667491 658552828 395245211 188278489 269252551 527025050 66227776 63549045 22524106 354150591 896295249 195869830 276134894 711902062 30442367 611642694 178361378 74043375 925698981 479561006 532554365 148814855 793638496 353442893 339948737 579039850 709860035 975090976 634511894 637206289 433482360 457901204 872463603 955385132 765970038 326628557 22877477 49125868 17092658 58242141 219301064 924408227 117083321 588590445 401246119 662714135 82352457 180414797 937962218 343576866 494573543 997680703 313517105 564337593 162550919 226318597 218332927 530084125 890619711 588043164 327899908 18525958 727493402 246361207 264602463 237166949 161870834 68418511 103600022 452877387 294364563 766410775 527567976 882907609 611715218 72438009 432268261 836631783 527067503 325169903 916098746 20668853 551623037 807387964 588331159 25726687 895650290 95961828 973953850 713111338 874148513 401320434 972686761 481537044 993090879 682769883 313099510 122712438 861378771 269676845 757873782 738687551 115644042 69784535 774000163 955848798 920725501 332404770 623018815 67360816 91739575 596028762 274715539 567934068 593630218 864564799 44333470 472110174 340874951 275310774 41984216 889197667 504194950 725621442 155868532 652690684 126901824 810953052 457451818 412668426 810321464 656613491 755590129 734494385 464640943 923941233 904566974 215830215 665503413 837822414 48095707 419063716 700617836 531132831 219362107 530903847 519554937 457167544 926081284 876041628 636501880 70952865 177080119 299094829 729134311 121929722 734729350 799831570 477662715 177551645 350492231 127613887 816921941 538993667 435457811 895522840 209966543 51780487 915425267 992953015 917226553 326699844 211744771 489866026 166560916 938896053 524685518 912474700 243688752 689434085 81876272 523760934 416235457 647846116 162410528 520015751 848484285 527289367 140298646 908580234 27881112 465434608 29077793 711787654 310437266 864297886 717985981 476829030 186680095 162004909 979328941 420443189 894751136 770030913 914704850 439364224 868991999 179407170 127041586 886715465 847670656 711412635 563718188 257370236 449955983 612973691 882789764 413124255 723662745 934923957 274510945 429590908 856396698 88065693 614484008 582066138 80899749 445824452 572413327 240735545 815104535 129358585 798897519 371901711 852769115 335519699 776740595 831534529 643284600 279453004 604255085 965758058 760244862 731885482 87112149 434412322 128473265 880352517 267651707 133587821 888026257 165727741 99143654 23925195 242044658 671607512 773226969 26061714 830970627 303307567 767764190 77533653 548529287 160507570 254179472 239255769 710038425 423733369 685543059 777217482 7081268 990339782 46188686 173902847 155651903 527446743 452450763 846396369 169283534 810757148 854704389 415797014 124703471 210310797 826223399 8076884 600696685 798498948 930421806 951640484 637300629 255329361 382745341 602837265 406083857 954496600 672614201 375443027 79566399 206090703 945201477 511736687 984883417 99082736 906841008 897864235 418239354 629903867 293077659 913238412 148689053 770202278 721592817 51986056 658609414 696906431 217308295 405359202 773873742 280742213 608221553 35962248 619085553 249509426 959458579 110965221 8552669 424476321 511726748 360334579 645092775 293488130 603511720 313093532 121537549 235080406 103141222 978275265 476390185 227777161 149905347 756711150 82860253 893548111 494842683 850712154 698077053 215194068 151266760 294160117 553663637 679530591 30232509 75087759 562461174 921072539 805486413 598121607 950004276 161015631 691754542 313327997 803714744 393669556 278403776 116261767 383818190 370466494 978479133 328428568 778524586 709401340 955700579 668316983 125427388 873769557 960734354 575553817 800176847 264821983 467257794 592617049 196136408 943437483 545142923 895659936 782979191 894136533 817121340 842647422 661301823 911668140 930378425 905933311 981317265 94914981 623457179 610846508 38272018 500066080 879369136 835439595 62312230 890190218 649743721 441711686 474894082 955701024 743752449 528962458 991058365 50386161 653713458 575889608 585874324 691795840 923702922 665186156 415221412 758012799 864941911 653684953 394200299 642702877 356509937 321160435 143239790 555990952 437281950 274055160 455842262 822380745 201017083 918087258 587163493 99619004 958735464 585676485 153886154 308066116 672148432 847557250 179507153 620025812 222825693 669993403 284891949 703877615 317568457 120809950 811649801 515524780 867637375 435329624 911453055 450741474 465088841 463796990 244286292 485364954 464497060 143270292 298602963 247885725 132625116 919241059 361088265 494597582 639243914 171195643 673075129 471222537 68644859 725983351 460148464 374856676 775232044 608799356 759772499 434793105 981919289 824481844 745961691 994217765 839098438 550647615 181142355 16165952 915951720 511009943 295795396 892970120 812855779 165134844 550882376 155609358 847687591 318829365 131097668 193683254 274251949 819053660 46977757 754941702 774403786 13573353 783690443 781816298 615828694 216033193 845195398 796861306 73644248 865559619 689615309 479329208 784384395 323537915 311347244 367227725 827144915 429607575 131881369 744491826 490495629 182642961 43592469 336540298 620533650 281935856 471664730 525703831 990042712 356949383 243742193 25009500 934147903 941336161 533641110 144260611 164593261 775632146 187237983 905615567 644334237 786651721 362640844 765935368 823964737 583998014 958893908 333036853 436298528 475906292 371320217 931588034 467557695 484612929 262521448 187185923 676631324 186386858 916856523 672515337 289942938 350815831 6117980 108532595 890086889 734467581 763073312 152657337 227735073 678568661 168857355 996853901 843627991 891144797 881693688 632303363 521989835 727471381 954595987 175374499 671661441 821213185 873404097 166022352 321676319 505216801 772286870 784275320 394452623 829847565 70691837 283261974 973114674 863849875 482984670 689220074 897440646 718853160 114541649 204388126 861821225 209841943 363003796 462065311 21810953 301193890 686753999 537192194 653447474 933281552 997384311 304115151 11621912 859529531 345397414 815042902 45558589 177920372 765378277 20441891 728795046 691982440 738954458 234542172 655382251 32182740 663647912 70381165 579937723 372023458 805348417 77354318 766129788 819091211 884607557 455495196 180397797 892023892 135103182 607165945 99144616 304734991 922805811 522220906 791433320 125942759 142693817 782550288 477936181 870379595 532535529 510191123 758896772 862990225 28918193 316439453 109998066 190988187 765921148 505766831 241765054 611800875 458103478 799201619 503194863 574369946 200755628 787858068 55220410 40396268 754119408 904332442 359953773 938956552 768261718 214148014 595868934 739935627 260421705 87481443 814781200 493278781 741610332 749309907 378940244 413581242 152535701 472943287 502322411 413227749 194405937 905306622 485597980 427789887 699351397 371459656 923897520 313299964 462815865 109189319 654296839 452724414 595982365 749953823 378819616 111441850 655112850 527258687 581002357 355496881 929813368 290599482 917748522 733781517 880778840 909222904 422903901 166965244 256078432 124631640 197477710 210583661 769354879 299985494 711469830 199003306 62159284 248726297 652316997 53244303 45779779 62209511 193401685 714352023 859852538 255368107 955830950 400850805 99664840 290921164 473202963 367989746 533478281 412646495 827605379 747393203 972308771 577528064 284903151 265429453 77199568 151646860 205710376 991387695 787731767 481557376 372084938 812502516 293519695 394041277 179890527 485621906 679517523 122963951 620864147 847089978 21690806 716571003 9694075 377984381 41964128 662568530 851229377 444424164 605843747 49745883 335207072 553607021 792019311 220249437 196908404 775911430 268685060 798134593 541774944 397897289 252429940 690288432 943149375 837860508 592525663 912811132 68777066 238460628 117533129 56449243 881319737 430156629 270987999 480484150 905383850 401462593 191109254 382983408 864764005 535741146 431662104 864999019 489888629 723221933 741200183 726392994 537353548 989285068 92077131 994022054 678494983 533285472 138612193 435498657 265008772 839843146 886711386 317970400 406816649 469821410 812246637 100990507 508343909 845486614 956977271 498046211 787863264 789323786 168212402 178707297 104506713 824289063 206128459 220284569 35172945 28006513 586916459 11907263 773634784 79064820 298556409 94764593 911226177 939264770 808971538 909088643 575142206 771862273 216103026 333138952 346179688 452347558 936454135 804873704 785369765 288346951 876406356 707332858 958399207 186298566 634421181 94660008 170641613 152755895 369703660 793715043 446008371 999815530 447416892 127270486 180351653 871778191 646721265 554319884 55699130 64661686 540445577 164911171 860986716 909174179 437051841 241862526 173066753 343233413 727138077 237864530 532298338 158704998 441508147 677203555 129637388 849041163 393363232 100034766 9622697 24651173 494936946 298793256 967763985 42074403 237458855 677757823 637566697 775236315 680115407 85088881 945855950 666615277 825867338 684094261 700745378 277448628 118703519 294249814 181047287 464797253 615760706 939370528 54948912 829366305 858504145 800213886 441140204 416612625 876477477 938954249 433758042 719895026 758116544 193146443 879282666 327666220 352077183 902429166 919730142 622587419 983520938 798766897 198518582 929480316 960151035 641670776 971686590 220496734 775597306 459442548 744002282 452710423 151750715 398568322 862016891 273988926 722500201 227957910 457808726 888079233 575515370 415894696 272835829 21400695 135535823 390662164 48033218 724443891 927671219 166772634 277103304 312847289 131595717 948109860 725560517 258988599 65470813 434609822 831086908 176315206 112465528 239561580 837922798 312122090 727445173 636944449 783819327 326026357 237730732 766042904 257241285 96156210 169462027 256131127 647385625 310315623 394193396 308387731 347708030 91649880 26249075 462384188 840663836 273257319 712732275 592273942 333192589 702201735 475136223 663654628 865229232 403065561 111556443 679782870 742169885 280067401 377440325 697171932 141894318 809058790 943958010 954153701 577326302 418246539 660509680 522990740 174902290 348191297 229297212 522380959 458243145 775617983 511006089 943302165 341365644 484586376 7299310 668004834 596982901 295131281 436870396 28228728 782042152 111601110 575700440 644598186 284874175 236097071 704008142 287532168 206238871 659622795 899821721 993227743 883846539 184171147 343847052 18564389 628391670 481054818 778911528 676431762 108716781 562287171 255237663 368331397 395823360 518971245 688068197 264766184 528773778 669926610 98493591 925810570 663276014 144468302 836971354 838161528 201997020 645086856 40138509 624372650 885677397 369785334 817576812 540617247 969167125 399275305 976626477 209326393 710996771 531323273 192625654 46248413 296340094 826427005 434183240 60257389 299497223 901626058 361175229 183881470 326971444 558660093 523549677 357770102 862889233 78086679 320005207 58987586 803854075 77707920 483515487 518367364 527328562 132536049 93863143 971216981 504364299 856766935 53227868 642266013 698811335 838702684 813438999 78580239 119497750 743470317 835691524 226178668 262612791 11224025 646748313 796984752 596637684 327545191 856038995 777533077 407821474 520207839 304077229 993873089 443013832 680327598 479509589 258931037 388435280 29048756 904700295 920791997 421614904 581574711 314289120 767069825 671346247 640862044 328989150 321980870 786428038 165876468 750369997 641747826 884495697 754644202 855875016 672624877 695156345 43830944 861172541 480496559 975019066 133191657 955202033 119294813 402960744 146659058 224260630 986131025 711880583 799029215 900184155 458000026 328085981 522023653 955080732 948806044 782392773 596998543 406223681 894973953 605137941 670154604 357859320 860534691 698537623 223844911 139492186 918667027 399701709 902674221 278095020 938049248 936977206 705734703 837925784 506085612 49384829 319627971 355361602 386502871 1350773 701089578 725285606 927334873 286486807 737372413 31726780 71321534 968126623 629085127 718329145 931982786 993471355 307588309 984185076 465304467 1048670 552329747 977857300 100322634 136037858 817847385 618264829 708519846 65031823 970507812 386487154 974466410 126858826 236636723 940048475 829706323 936041952 959693268 526363698 342595778 139270132 92430202 789278348 763814998 145042857 421752757 618028305 508551657 81100928 458146434 366021921 966776557 549712100 330884556 538669421 410440269 282498670 931113544 273103020 214154179 88124892 745312206 682827671 344226067 879987445 812114122 217661312 250509005 636710200 213057013 988372834 94338687 655676783 864234973 349649590 223777160 971828314 912382172 161195629 16922833 170053650 41532662 661388508 380536591 554804122 498895058 101755475 187990845 346866109 188249273 947682086 324530784 365608493 164581940 339166679 62111378 77036330 903682533 729110471 788989575 68005505 921319715 938602242 323648959 273538478 850723113 508142332 506712482 871234335 572723964 602312754 322802561 360682311 391321224 767610078 799424634 758651759 888817499 727792301 315170411 657948145 891502432 496982818 967809442 658066378 214942536 528874509 261001203 681224171 94869335 660173947 316919151 392455773 855653888 207772008 661867979 629220825 778626208 587696468 876017471 461893026 848612244 894535193 388402409 233893523 110613298 929427390 849100751 399084122 771677004 74608145 956657562 627427991 250477492 355967704 463054988 377995645 145335998 618202677 375104519 84835593 564430046 45949065 409875921 896350102 839644370 356778665 915008359 152975152 588966479 939413437 655401355 498963209 234845053 74791246 646137342 675470969 424556404 80743637 44040108 198728629 482363362 854786744 980687799 177186743 94666752 433343154 594916133 498890161 671779799 492535676 218447011 865863025 433192228 294559182 649383668 233833862 236900406 83982338 889505039 349459000 758811133 63718085 337762921 182677810 4898665 316109915 85571200 934353332 505132817 224619101 326312427 688131212 604087110 444267329 154489460 814319680 197205615 682101467 602718967 66304387 412264326 720282258 91585628 263815173 450717665 571451560 147621905 138044442 489090677 321583321 974868820 420024092 199606292 25460730 43878560 128242180 236877293 625983607 585808848 437115348 977295524 949853993 527236947 857811436 340090639 648722727 254283965 492069992 72044369 162997677 981883627 625499077 421710640 982825512 406215475 292030147 455023605 119026058 860606525 597857239 754900506 931142910 984645649 649794697 254513752 968893120 344484944 748527127 385355192 571326165 421698690 47063443 337987165 819298576 843400804 328814822 332691888 851992441 889977954 754004483 928511529 3525571 842373098 828285631 756348478 948888457 397363051 137508861 615044925 814047049 72773568 117144697 208128556 855013408 885435265 815222105 521248120 919914422 778704281 362167415 182586122 92542418 79024961 977541942 204877236 554257361 241573425 267863227 137144771 493375830 501668667 50092230 337780410 216702806 320972499 656727328 217560059 580000440 114912977 651093835 407391154 83104184 168880252 413751836 805832350 808540535 724037439 474549821 689252838 240542179 712500743 655772479 436375157 381624207 9226991 908667836 100231148 950138405 355776577 325105097 376906017 876515192 893224682 989736272 26205996 649546527 224188190 432815642 519007212 14680143 304944063 581248086 314658870 879304043 137531529 357690410 44093661 191600958 900044359 525289698 446506863 620676977 629942300 24940651 981669011 584780215 10461496 586749590 301432681 989566892 480912269 319896721 764806670 475608593 679488463 848043502 693552013 349534362 305394213 473914552 520234209 956972814 224328676 164773114 274691524 826627717 638868525 517149375 489151004 105278861 851737525 271608797 59235768 427716924 147204911 995721899 273366714 180879994 840561410 440089088 868169612 640901816 903951896 769005806 368381837 459267703 854166228 420308401 211531194 363862866 833493833 976942404 807044741 959568508 69396786 905654775 175617307 817478746 840829135 905339489 336972486 949900260 662078632 9382700 516064490 928184961 759828649 390670616 939710421 836320947 361770527 657138646 230375104 434033272 690069380 705929475 118493875 400482926 187601287 829005370 866462399 784174976 972787401 519663469 791203981 565934944 211325633 148743534 832329318 332365093 321050435 215173343 594720121 150330239 259831224 162792125 155511139 33265759 644405245 26466342 889493428 259171433 402264305 964225879 855833510 111620508 973821412 212150593 954116996 176477894 519066797 300002219 395896691 850147166 231101395 523201058 741868808 980756610 412917075 595351042 508580945 121413113 35480636 792582625 635944359 432218491 942644466 763667008 715699694 191507035 610521672 284638241 212561633 987355756 945769093 718836115 146297978 30126737 578861380 583665428 9768107 203552448 551276169 803364995 135491728 699281207 694533487 597106296 903916053 59481588 376194130 720557802 707058832 820205172 219482292 513840031 309660094 787979970 892443551 195051489 699400881 284921778 557994359 4802102 233255791 530577873 767888677 288807879 585682530 77576780 705255014 95984344 136376136 106960129 126759559 463455252 813523641 365304065 652932561 697690968 418768747 148365588 501068726 780203318 34833934 995946999 86393261 422233676 536382793 776307239 46498246 876390646 769672433 742001319 608496309 63266286 952877749 419503012 241012449 241845195 86215761 809317789 844459282 634088746 607756097 262458120 996570763 502832729 516979623 46871002 393339398 620059318 130685102 412552199 321122801 375941577 830875483 405241800 416338702 969715579 812962039 444768367 250328007 44407870 763382595 30313586 262838721 501378656 907257746 735708607 20634025 785650817 239376898 111724218 65266405 260100133 241336142 151752946 749966905 969253749 823812087 767458556 314452745 284724082 401207213 33081829 585678489 520074623 157794938 866657043 269560639 84148609 610901851 457402374 501469595 233193411 782658660 571310692 5227419 211949662 830947175 746869029 740535374 562126673 324712267 208312363 119051502 839578030 530509596 892325277 676477172 137683183 151391025 994391987 827422606 459176407 359314871 576380322 333828325 957935687 524063202 662459623 223437749 68651124 316916838 832533707 997007970 962492366 469289876 538044771 701995761 41719518 253903982 550067056 535788998 412520488 63938187 986702003 808830995 97317074 821684869 381159401 338166338 518623144 276896400 733253332 752293900 608076200 537563287 362464046 764099546 742414300 187994551 245023938 274468523 256059598 664634771 58980500 796323408 227265919 807108820 33321346 39129508 241500425 203814031 608315478 866292035 429119721 301586156 356551986 888643513 601328508 931359264 889985236 481560583 350002740 408844498 831810624 588827626 914374338 580852462 209018898 609618783 971236068 342312028 759789727 23463823 480409831 981426389 969927616 41900167 163964871 276730685 972217800 834773199 152041537 97913250 555683298 284270828 809901732 367741036 109593296 866448202 911853944 494725752 512954508 269317823 40436393 594446166 456045740 809089722 505779969 302364772 955972446 421235176 907954798 253483139 315273533 33398892 459189876 338464758 426614706 364146159 289295882 632884570 415943193 263185307 604418683 265681791 279399698 571408969 619147369 984215827 754866584 265493559 95741432 121236316 502568833 735599821 869782200 475837013 938200623 615226665 318641736 368268294 422421693 3205523 996306533 245093399 862026200 213561184 961771044 458352036 220439102 925554964 852509609 882490979 649431327 237377917 104418120 612004331 805120376 778546722 108035886 644264639 692534384 847109397 826418949 660149880 546117814 456742884 491214790 503403723 419066332 812016645 829712830 495157047 831856586 791968190 782377141 580996691 94409900 746258067 362085831 419037565 944860976 615298278 35789131 83153447 250507487 391643547 403948739 199263712 821288409 126651767 474718572 475785732 425493887 269798998 406954216 477416158 56167487 616068972 9852391 68747993 832384942 952282955 546409103 703953599 676062076 330438170 616490251 40128655 165155699 218907756 103268229 306106765 945440677 663861225 613260446 360404995 116631208 89040621 535815231 838757077 836892166 177491019 402821495 729671215 738776668 614566841 524842505 910866273 248193201 833268513 132896613 818211432 780192382 876709035 941410724 659779439 637527317 833257202 995257942 233898898 982377658 249328374 138087615 103551002 96242616 824378633 981685497 596395542 258393272 511883751 478121059 14559364 727527782 822689827 761749324 970595648 120525511 180882768 951629026 963559333 228588684 257791936 677659422 829402431 500411657 600385261 741886143 338540015 642019588 596785345 533224678 933120994 383830752 591069697 67870528 655298502 226325485 995392104 76407699 298498570 934954371 848233468 326003949 236261845 881083264 358953689 267809647 81244748 574667801 842265125 983655116 156202560 493320447 55633251 822764870 199402281 945981690 559191470 53079087 808233830 18092283 655709928 859692336 4017622 393520988 178014206 832819874 898739268 756019649 109894915 723385274 642804363 764565252 138353629 857291722 229731269 230743998 541622209 772857068 199388901 253252808 314178918 991177103 537703024 768154766 588386514 878320340 722026783 941823072 905473844 794050870 244173782 354864189 189802760 955761469 410323837 639356990 420248369 34641478 780815494 922009464 57295025 49638814 313578559 944304309 77639168 829226026 142712277 710921088 810025168 455757772 692184716 287940189 479935820 112144582 820124953 133870449 505746457 781673080 891478626 866353650 427338332 666679378 412395991 841104081 16976001 747064671 379212539 491700119 677068604 149637517 845760543 891709093 651905932 434912002 875052281 477529894 261473859 785493273 147611059 172473867 156077790 303307272 858303506 733518231 611732381 949728761 524365619 973552697 756223632 745278871 808942575 73604984 956043349 510573561 497760820 358422124 79920195 215321437 402874601 741065152 4674063 503322971 879232571 70694550 19374934 711608584 211997993 822715787 745203099 570454354 801498789 807615922 323752197 576867750 663092250 341179618 530708326 365820331 287503812 857535885 247845970 88322740 159074114 511014958 374911211 363462705 343696286 574740415 241694940 633538543 692122662 261934710 817164784 810260025 240324182 481408451 420237244 911158596 291437029 390081324 722664762 699762520 322343416 130249289 145513473 14194616 827776369 202177524 810337222 232725918 167066289 827554814 259802760 68917192 857336679 49741315 170680276 212602287 470514649 230629106 104640473 778718082 662648490 317344778 293525826 598279228 749952346 762267825 315876071 5424512 337143537 542936444 170088576 87904616 572052462 19569115 174482641 778397695 585911524 7939922 96862968 912246187 338690174 213876482 326661274 912559406 951396579 28840015 986790509 501330677 442764093 932147615 763463901 786405164 905746025 146585988 925272381 277272832 454582250 10840466 763964267 845352173 786807203 869165324 799806734 245353199 50611367 321565826 710488436 780002284 322593489 384319622 293473989 690127729 297195493 436318829 987131509 468868186 749229551 71923163 340735498 355035127 473314828 74865064 353193451 325352013 705875689 884009524 538494120 91797428 466930326 826587037 730372662 313674878 120637181 919052365 378543787 595921462 203824598 757888165 358277999 767946597 285006475 568064110 153505571 767735694 369850046 85573068 30529253 967116174 210821388 724406922 642009585 186661354 620441263 50942777 61890387 221614435 759705905 215389188 99340904 234736680 670504953 175257157 627608486 55866697 950562608 22727374 922880663 103819742 626527545 987879790 789636194 876100639 250812471 578089456 620415949 709982954 615930033 848924266 304665585 104705007 554014412 811833916 764305171 435709433 874988751 813672687 776303364 639483888 552283045 217330613 317295613 861625313 105840061 88270032 529519734 759814023 197614194 306781266 728650766 636777621 787836192 329771918 380806153 569444028 782229590 325552257 919299374 642924693 560645016 345196033 304211394 999274505 485369215 87633232 276648265 68234347 34646993 29072001 301433159 857177276 665903877 816530237 806901084 353381207 425325736 492774376 288822540 926904126 176287053 218730324 612176694 463147018 640642864 992149459 865985476 504799146 522928685 639383830 489577059 67473173 511810598 681011557 599836953 844469498 870366529 501327465 104033206 292469620 283331078 216243971 336578302 738168922 671874581 389695255 360689625 386382362 498113225 259557770 899845487 126342492 398194766 260761257 609887802 84546887 436885028 71854988 617952629 440497077 861954709 81447290 713629487 222376703 43978763 494844585 650915865 647940288 57324256 689263892 956186362 819996807 684208842 196205127 927371316 109671943 450557321 901620565 378944812 507349015 942651855 729445375 637674176 267177774 877907350 963389838 793713184 149162869 300655759 317985311 159761524 437765940 794944007 404618230 742121397 11807650 289896132 434894072 374143344 452530534 744659238 626439146 363887542 562783581 179868468 463986608 478477360 374351195 651054511 189713688 823662193 600988928 335239320 83918393 754722492 978773504 985975555 303798182 894580801 108278825 36998700 757407674 649976991 22698220 589829443 75595376 718973447 307800118 377371272 601289121 485425455 656604375 171261521 221824419 523678342 843166943 873933996 32900142 176228998 945289708 132655181 953557795 542025632 406812656 726361284 620741898 775480983 521419423 948010158 287849369 170639721 159788389 664538961 241069154 466365471 869883333 776533128 927301709 389523919 821831047 617155515 590845929 35540065 379173496 661137518 80020572 948788889 620394589 260211643 898691864 127571273 413142101 485056931 367024354 568728467 336644263 279514981 921054852 999175588 570288037 31241813 626460490 443288166 990374581 154925020 643396671 482423147 817861175 813161301 179866147 96318266 535270529 52481170 17991154 640584053 230187262 165504522 433324644 334224146 388099169 494447807 77279412 838867852 250894618 265794668 466975427 259050418 252438779 215976036 699408452 806232366 745689658 79628470 215237217 93509516 613146967 462048020 387088924 809473845 269788346 818878674 274787876 138282919 608847576 367103778 363328835 500878163 848141243 546730252 737681002 57535836 820082190 815735255 202052839 414144889 365430989 322498724 463592123 561514092 617353712 933586247 588123533 220436367 267099979 137687526 770105167 360826809 52128773 401770534 682831237 488319904 182392169 509631178 804594401 902284357 718853629 114201099 67184077 571708433 271187445 913371490 180973672 143357285 740648713 722787779 350719640 382237860 682238526 869430029 380725722 530758432 614763947 946089242 208759679 311861607 571251578 144880171 377511577 96658694 603834430 885579130 261059632 689624575 729679650 511003403 861742275 817039192 50419567 22722882 172638810 15883134 123404888 797709138 389698861 447597640 327691643 440902867 769411050 416770138 897170388 61457716 740657430 479142361 319269148 9286793 330469302 279747260 331633887 82024221 881294917 987325342 734791429 380370980 358620453 49948357 727807544 259366864 894693448 184019010 551512246 388117270 770735878 582339206 830869221 574561749 369893333 561960138 44287401 605805643 61710740 394385028 299112200 913622280 810436876 155153652 977268881 877573724 296046080 947304637 788266721 905146053 907993348 645620411 684803794 103607037 612549038 197111181 140295517 328858556 106139297 38134976 435003936 862313400 281434377 771915660 204397587 62707102 827632153 803628419 652347100 370047591 467683075 365294271 689246493 318556048 218554939 860956210 512493903 628025895 177628599 803208764 86168478 889921468 647092009 836817101 553293246 354285017 403868513 110870315 273044506 631124003 492402023 490074773 648402152 155722168 101670434 27631672 405941860 853315284 611992262 718220807 507811723 261285894 357405447 148802835 249486932 671277651 683120825 786243100 284686880 835516472 489173717 203040728 788322442 652489797 759711340 207317442 893925722 174699561 305450201 6834973 521175506 768202697 900141605 871376531 150556990 520880981 823054507 571857312 38224476 495510207 968103155 973213667 357539380 50249448 197755753 639582990 610738625 838443101 533962805 805022155 33410124 196500346 940392786 123198430 473351566 157906533 191247953 74567915 172852344 387294972 471306645 302107158 599563268 804654774 674886755 635227733 927482887 657196132 139244312 899408673 931761289 121702984 757717957 733720 592810562 473489191 588809669 402679537 423713707 221389702 669877948 109268550 440983290 336779019 725033575 541238329 811854924 6195499 276384978 454808592 475737325 718522537 140726014 845744551 490813882 687767239 997528832 952022377 67821897 148584404 578387553 153428420 675078554 981999558 132459203 556844617 381654294 553978669 924557940 457120926 913667632 351584121 381856966 591962697 351511670 351283575 126021838 274189192 576569135 22974261 768307585 900550425 240180924 108171180 786490216 79154440 245902458 582291886 891329723 585042228 639441260 111222568 98567752 269639212 553662389 449793824 367684140 960526345 840329826 573683641 136452218 65168648 7301995 198637742 991151158 985389709 827580588 669360846 56272450 743963253 498047548 322913851 182521662 635857613 458506216 46630560 932066082 322257089 893195064 819281983 715072023 610066153 338879155 525902140 466913622 691301969 704483201 796090113 895768688 400309327 814232943 656870026 330014182 704870114 253639066 928740423 917937929 369816893 656653343 29907086 153220096 306011113 141215164 601734765 246563826 294911412 909029098 996994186 223677640 653200431 796875611 567983953 725225594 665995191 428081909 416699053 911926497 570208432 853643895 341417342 327482582 35557591 376219747 545626398 837303972 462086528 667478964 487006549 553673541 62592464 99582527 805468506 540551997 262591079 110371947 109598013 600100183 502296708 331212978 42962195 762674391 88067344 287906743 793013453 202032010 123280487 685590304 984381884 666190353 73937376 746310014 291098143 780292098 253271235 214593706 698422306 493171654 214052647 591679924 554178278 101858404 987924250 156605731 944056899 715926400 205881296 168431565 75655778 621100253 272685640 729857290 145174329 82895396 403311227 124286637 571215318 627919093 773674262 739195792 532472459 948968669 57305729 545895450 656921453 151987188 656026800 275325238 979045806 72907857 668901936 649621591 320643330 265540452 82629476 626537510 344246999 98594704 777624350 701278731 340356804 579965801 60036020 971976142 921607375 701702106 423206970 800626091 924521291 82187102 219165631 506852052 798590935 409347800 633543911 835525524 689611733 406698253 54571746 483529361 390895216 937078605 785272553 541512592 991571583 877696776 928984904 887609291 401676536 431052236 688496987 147058091 856786849 885769208 88232905 232862450 684653801 148209042 697089440 642756002 653665516 498367108 142228160 163073504 796685701 400123501 949329308 975380616 699619875 56440778 768079055 409652058 45051546 204409439 713895337 713540824 290168044 551292288 789942972 106763267 47453477 539380717 26534978 277388782 896971362 804556512 895965592 703921037 996874464 515044475 975672783 299687368 375574215 382120111 398543309 762624097 744094399 392057953 588824783 896864138 4984678 810749287 441887632 511589911 459048658 104675389 792856873 205790992 584393851 90737461 470282544 554046033 537390725 432583026 318746085 575510564 597875990 502349124 852963999 574488970 828938521 439196019 435022916 896742843 787137760 197968076 725269938 466625295 913330651 152492330 401783899 657764792 357697895 418169799 654554909 985523447 446171303 996507712 352960002 254126152 731158156 670111393 223381275 96083560 549756465 450890399 131988105 40571276 638793483 337824827 938204132 525758619 41008669 509523318 525936893 688449859 388824595 318342878 209092507 510872631 617054364 528087712 115242234 61860902 468154090 34468221 732687600 647275299 12004010 981001660 493439605 624091767 96836889 648610016 899670502 357194258 751907516 289078533 661447819 508068896 929496927 357294890 706923275 657708100 212282976 386133597 115026019 852680261 731633461 871917419 991900035 876673402 299340089 58403555 819263650 757316472 716302307 568233200 127634552 913073637 299528957 930568184 277370470 815443730 437450183 635624586 74804806 709286506 340905573 580188739 539545232 227132624 70194343 592591045 787477412 208130899 673207342 254468802 306808637 870006054 895377068 323641468 101240859 810648545 804429738 129639208 899992029 285112849 870800535 208331141 90542840 265215677 765373118 115106544 914691932 188113523 345513557 491483013 40484533 78277660 622782315 955458842 786104231 841919794 554520481 35633587 171150383 148974890 839625138 408738798 268100300 198009880 400945988 524594139 281790213 346950067 132336069 198986684 955225009 618698242 464738596 85616473 53090523 268536624 608438440 148285529 876115573 862745368 418481033 108665283 922489686 352971040 265820669 792418972 233556954 199653519 474391877 250011254 679050313 397808501 831951765 755038931 602183414 546361692 861253251 483230891 836668054 783298254 144003687 736857003 19133345 557143383 547969388 544983606 467905988 516930101 196222846 610608738 281873874 223789038 441051071 392374654 700515367 683306059 194895014 766833856 757421951 378587300 202987493 446394212 988749294 258655282 3828669 368402479 800342925 380973697 487626494 433229125 851853644 407008802 374983258 661628302 255384213 831401143 462358502 549034782 392872595 695894010 716164980 73509598 493854800 853822633 159679384 803237957 926892387 743181046 852431600 568777427 542631898 572536024 610483983 117416306 750840958 330684352 483687304 355840963 652217976 400050148 884668021 486603914 495781442 924380937 442757865 147670685 606774647 74398521 794801378 866388656 450661610 696779780 271392426 605909715 489610782 489646284 158079952 184002891 794648886 81662265 569519916 483573509 392189223 629878622 379332584 240193929 392986715 715855711 899840117 627685374 177754643 216068142 709006741 309578547 626006208 339441117 507706536 732883114 423196845 538788533 912619109 187700920 215004393 953292192 730042232 577346793 219429254 520516609 820414790 80182920 27512263 873181987 740597651 845291154 203222081 445905470 881145775 408655274 424157156 182206695 806329096 15066862 464967113 560089800 156765553 290508708 507988201 604681650 189333225 265800700 270688868 692353141 562065113 100220804 485863099 114407413 739438773 761274222 97619970 833015323 490823491 480714555 753866682 610319718 587186994 388894977 576393621 136210828 955663971 545533011 424206831 582397001 48639530 464050807 21926406 806943446 947984517 551812071 630770039 729625026 742204008 532023418 685111139 345330966 129818252 992785395 194799352 893030296 69614304 387866037 397102036 845492971 673998077 838808239 884877324 899612475 312271629 730384807 443126019 356464587 977061040 918379223 530105028 724932488 703691323 54198297 633933372 631700712 737097474 925355331 419645269 586739234 429470615 107486697 645511963 814153478 112361097 242582785 779618533 721071702 986610109 298826192 200579973 111962307 367691935 35236433 494065249 788313080 146323627 56334593 740020638 432803542 657504332 443576674 887539977 826341480 116818652 541910484 99957025 391065493 998139977 983042726 14092706 80706640 673108725 989799583 387314947 831739639 248829807 443951906 231455170 505039634 149154198 372957384 187366129 145926584 424718814 304953582 469057079 210210974 719760014 291847262 161822741 843437026 884234458 150414717 317570415 675074558 876217934 695863690 529654134 310049467 366496979 990928258 247899474 659743126 798429046 265108163 749081421 605854568 693813262 58497586 920778963 376401555 342282521 349017706 303523664 889324124 97877731 462045640 776810129 395038243 336799373 999913028 579697711 385587568 934520658 770023594 817232822 497145662 411151823 118122940 524206694 245157676 182889172 263405642 199081793 180068472 509913680 680684896 498619919 328155864 660396311 109313659 928967877 57049649 278186005 685315674 762706140 424087850 375459031 457865451 613852134 789822524 934552035 418253521 778431958 51426945 313551570 810633716 719588496 851064174 91740761 259052240 60373290 531765190 827464608 758539542 48191279 417149102 162445613 462937538 854075201 386678902 493043560 488037196 69432139 984043217 632161153 913540807 894247063 764225994 142708781 109999265 964455989 904022175 327756140 622869471 603494966 771844952 143394905 266848086 382483654 840448260 91833099 419587214 864214043 466604133 7372144 801635240 33720399 551051312 890728202 260093205 768934179 430072252 59127285 491077507 775332162 612535299 377213318 250697876 782035080 74421687 189693188 320246076 204775702 171871924 339714986 462690712 253405833 505269982 2105874 558726960 505321929 484715970 16301568 825723718 220395003 632292492 692178685 666206647 371463423 468542028 308919186 115895185 334743405 459118633 197507045 119796824 240550099 373291702 452599723 494619407 602434438 573325254 87813691 414982198 361972603 442370207 90566433 387924257 715759637 158895628 129929246 339286686 18927553 800398312 351121652 79584212 968366381 560648815 781941308 434353974 271967538 901590634 16640904 556036087 485852053 673924957 112927903 93502386 258642909 347525886 826033108 778572921 133377067 468138302 836972205 33375377 103658794 256255095 947815548 340818638 85622851 164039766 310343529 36529967 911893176 761728951 549582046 111467010 655297758 621071315 231525173 676808879 790905650 686007347 40510695 781834049 788129852 657759568 929592163 697518915 284220230 278652 877403286 227503176 765325544 334123980 709188144 659113456 300583228 280834224 258651832 327461445 821574552 170912522 43218331 47831981 215666923 825943357 277332000 234218450 698516005 78973298 900169599 563784980 198606091 278677193 989910140 201454907 75452257 333786214 779109182 341987297 634790211 651044823 873268862 639652634 521983533 726162923 321595914 513252277 368211909 220647000 154997747 594976394 468889238 841848471 831098239 243475948 428863794 741565843 148499062 414192720 522791481 50588111 662300368 474939938 26453360 53031332 908097618 888114530 670794551 73030225 465299844 545663980 485154730 807074965 983154354 977375524 611291411 394727831 298028356 389314827 682901005 463853247 202170563 471241628 890754649 775380027 843842973 163984008 241398826 786016160 881885861 991932625 996620914 985805402 726071366 201209745 7791849 152051743 85420919 252708969 343470295 151514601 212023762 676080113 634266463 850125677 745339547 593791857 461864639 882120590 932391681 838963909 927995857 367128094 862759876 140167458 354214118 826763694 352391293 132219317 54213064 350359365 94863770 879245705 115877780 127517982 82432476 148619575 505822704 195763969 927072878 590762175 331724969 91134587 323638864 991476360 490655275 308921221 911783743 347159910 843692966 323929533 886972112 895330824 633906835 811143626 458695617 604801655 555451593 951631103 109908606 898610294 811942641 837567012 418516800 326762990 99077210 729591707 407512807 349812985 444482987 220299555 329075089 780298155 318596357 241054003 162966069 993671823 810861132 276582056 510932625 21556463 802811188 118547993 727533624 26834583 202985627 803511927 943484160 255514402 948574829 511780990 515127020 923455509 575581746 731877269 872674881 345197717 650735001 347261480 668339923 501539047 814852131 305963281 846015190 95716607 397487934 85744865 924332005 366275083 394632231 610040117 119704209 195332625 754563129 224049855 729294579 247796598 861482036 415002889 806007179 287185078 460590116 816988973 105514775 849543157 911143285 129878929 790630461 287596340 858694573 552042670 709747818 964798528 31321724 199281562 32020879 32151245 595370460 762658263 728748963 996631834 189978039 804086247 962941902 614295059 911492080 820074371 232587334 840834182 828037633 601731616 70392444 925988230 977139351 428406916 463508267 726309695 667510950 901849134 304227753 975519844 643793518 545585152 253886387 671981868 664605646 916771044 382312621 859538754 818392214 805176084 406877326 957458600 232480961 760059191 211544324 550937767 365602554 613403626 334482182 520461977 832804362 228232665 46930404 443081967 904905146 560943540 167785703 752342603 768246897 256970298 581184342 60717081 14296601 361562634 177465537 625685280 646767985 668408742 23347384 769348480 752438092 564427447 376205325 269689494 826243284 927656090 642812535 708555402 354039380 562267118 99069533 482805361 672698250 778087467 313032750 173503528 837566830 201779379 280100280 588136142 104623617 869147216 685965871 188815319 444875316 981733416 866851656 610507758 703192169 103466662 483588456 81586785 799917089 254552958 302995254 110916644 369632332 960493857 142285801 677577661 94473248 273292617 140808267 905277819 316745199 657840571 319377221 801519865 150097468 53819882 706517903 407733568 268848422 769981070 616632344 388769772 637864565 496531090 110977312 397110041 601609630 42626873 387638554 956235749 321711555 495212082 529550305 680799599 359345082 960947964 58393283 112509003 260062051 808677631 607956092 167069174 483537800 922037640 196941597 351857863 714586568 207860566 89639699 453965359 105182828 953556377 911747198 623875628 20218077 571433552 69315222 582328639 950899249 975376710 325508153 266864215 458095814 835272145 304427863 882717349 85948571 194578450 958003438 42250840 776307815 452321101 361391828 886767419 315034000 783198842 843852087 458763927 308630129 417612691 222161494 738223304 152900447 522927781 548905603 95968263 703169902 939982367 666700191 878736021 511696897 239208470 378397246 442119658 760131485 143933309 495579805 684533195 726583103 119483813 544688477 544935007 837056343 599729216 873165683 225128152 284834520 595111912 495395758 579245439 737152987 730870775 558754919 414984561 122638598 109300259 941750349 68997234 85997677 304352785 498697047 720853328 872754308 703842130 900518210 188628890 982171801 104683615 109290579 286231781 961048161 512984957 171222863 47747926 341659051 690378443 885506874 805800665 638074528 566076316 697793608 71973946 332714718 518744746 85032262 490597382 240919837 944314433 515027777 465651955 637920988 841759679 676422426 926547429 970627145 279086671 235948853 636336245 450656339 792166982 361879257 926256366 967776218 284474112 795230011 890911080 702141629 880008824 700046418 582810126 563170645 678466615 673925059 916012117 742702011 551617767 582396979 376715448 319315812 509940375 847993581 584154630 450377181 894382918 81854804 392869818 244102542 427504532 423843027 487158333 47778165 637149505 859921779 158519979 215126108 287217791 816776003 346510649 600188668 206723682 143306784 542030640 223404900 726470449 578125001 219848482 161181758 818110282 748853956 557451561 607431393 854436134 198193576 975764123 451387980 56057661 982355229 565431465 268188308 624005612 380536038 231202530 917634549 918660330 703442779 433799402 104874852 618921940 381100920 171296233 101643085 820647420 779407205 234679817 625061091 918219413 244039034 423621657 867660062 498239128 830274763 503797251 319762602 65323649 79696861 291058481 823017660 214493847 682968811 806206018 912810375 411877155 505601227 547371139 562442097 952261143 390884465 202246598 420221039 954249961 590666620 832634627 27614451 697790233 797239047 522994821 231607731 427720091 158753383 729248652 157090945 138162080 606532719 854317386 561126638 650000601 451554814 478568328 179524985 77554298 704476249 473479935 779952028 286290961 855398670 247415476 378161660 355996167 978048736 873704754 702296991 928117086 941967980 155106585 652369995 161293913 878251329 360117523 963446771 820746868 37799669 651541335 319943257 239498221 655185844 706070045 369030474 541722696 481908546 428834852 956492975 534119427 339869447 914149827 111609250 69103615 88092765 901997835 560047323 758739512 801183508 435277880 189934360 827701694 493010786 689713784 296832480 327770188 899170298 59082487 848673790 484484859 802420835 751564335 896316112 73115310 688595993 721477586 289884986 386054058 878471204 759154467 230286174 864616607 647481957 503694919 849701635 380902094 419745579 914846428 998788968 947256696 721593360 222685004 932438438 390582803 761366819 744744185 918115333 458559962 189275079 698910302 21979227 305244477 554705117 715604770 695985486 62673622 477406114 226033808 386648579 626033489 26329031 950968777 941751418 159341889 282100760 412391949 375423371 990204491 406498225 852144676 863219031 364495112 97592375 743721894 134709592 366088391 462942972 460267226 752086928 318557592 659670724 664464108 99050728 915039706 677703687 290296976 301174409 678839277 97676432 875619141 59904801 555009023 562649051 72305767 355062454 289229551 324848745 802717089 396554777 799191796 803243854 217110058 365876443 106671415 17853391 94543010 123681567 652800445 531559553 47819232 442081631 448561508 957237186 909603489 537017451 685750306 330552678 176651772 47680492 749775075 196162872 555006120 407632174 37439604 457606399 638161834 263820401 262962382 403317550 359538137 653585251 827180978 226233959 428040461 106247872 640961434 980269360 665943181 412815210 75929587 530327420 473966144 779210587 642919601 887234112 585142359 988759106 384356311 678167326 764837538 214809146 43221982 784458966 502011761 608293658 621511817 967869658 976085683 146323573 509946000 566841137 122765994 38092493 342598954 367519997 838535006 769792517 974486941 414350323 527131859 897626312 688501901 722334758 965511429 403523180 843998629 724670820 74695594 787262513 498648484 76640042 976505179 19634290 525552723 398671711 937945370 636807157 417346656 547739754 8934159 407194756 149545481 682140251 669863514 648757519 39721886 195380352 442969874 373346472 461382850 907412622 26259256 937356421 265000688 173466228 441846841 535609059 17467178 138569113 222174084 923065365 271014441 677306213 454779494 932794623 499839760 57995667 749360769 537610 477578916 445366041 943385388 461782955 586798511 338269595 461035127 42328852 646322482 921159508 176562347 895413563 537604489 861285911 116883110 818220584 176729613 977827157 59418980 856969550 834269485 675461669 963488178 2182669 814529994 320763979 145257797 738234142 865601614 921381757 863851042 495355817 77017676 535156324 402235867 661457457 656005217 143795493 928681092 705884543 496101832 455326640 932753157 337590192 132895724 558879848 633133372 596375147 447468381 759867086 191385400 803561655 989841240 640798100 148398545 369327439 702359441 133348908 941614148 186032188 953747267 291402488 277287637 671779242 776452649 91252716 430099847 93210036 548097193 863872340 680821527 876999649 998133827 490665442 530515659 677410452 897148009 44098259 956434620 753935516 422724431 165254439 481468915 957673643 852609698 595083252 205713581 383825777 993595935 897829428 181866034 887214515 229647672 727051028 938336000 652288836 621782071 157256613 107900350 976980859 954005507 888284295 617258066 97311525 469134016 829483787 940779965 529441492 820532779 391462023 109600137 406751689 755238529 100680706 982642112 222906326 990015466 796176772 963515758 797561406 259200375 533066742 574400933 275831466 401101230 938038027 676482385 515014972 339806404 436838599 143377183 820112319 10556886 750692599 259914944 489555104 375839888 608967986 20676011 2627052 802420649 922680966 120715432 460415004 747812219 487654334 376843581 43620802 515531372 388112520 715551072 9717115 168769552 624421357 892638679 222684288 70597553 749636098 466977712 259405850 542403097 218321951 233355520 119844141 912935980 256627777 114942197 958420234 913510419 693914292 220640724 631115786 240604671 223402244 307113692 770323002 253702541 96352677 96348181 179634302 253446958 459873720 496774281 766275749 130959711 69472700 92895687 696266600 295905990 215712561 892075240 563713279 936127275 995534951 919978757 643856675 335933269 8969449 461692354 494807043 812966075 228206500 784769245 297776767 493013027 481140427 453284097 961038412 200913423 257027160 530342470 330924322 157979272 294408418 348635385 469057394 572797776 903476638 655015716 29965990 225058334 349019862 92906020 195384620 898050760 273503938 912006928 69947166 646640328 607558938 547148206 939018880 79293290 907181506 956249965 813448983 778153873 169136976 965103335 331197983 727564148 923651463 171362260 365782668 673185087 393548559 435047840 249031086 410096102 624992451 571988530 545644863 825451327 610321718 231456109 285336498 96972783 972169489 207990523 903327925 299080003 599496343 996430160 427423335 725867955 107810102 116904805 244816923 20694826 883592248 37153014 384130592 289290753 308774671 407337304 998774783 915167631 155666909 318540007 933862154 89793743 691698181 117096361 891827458 625062637 46946874 932807957 19796338 524521238 439081212 391515942 513236766 566453688 993849622 286485971 417901546 481060496 426011348 510449871 407144738 107074819 843647736 234714138 281965113 627342677 757853944 113381855 303812673 134163969 320370025 207459109 73797178 956062356 830646837 512769217 683703900 664023834 284177408 684353492 294771133 392669934 586389139 577691456 178594959 567282321 757988640 489782739 393569134 775509450 760511161 140190385 76468936 589485800 835279276 86950980 278045359 789470620 862517822 589324748 47378281 210317971 857485545 187719107 720986440 519006506 905223345 712990890 981192707 753528699 500624515 192804175 398888500 230342448 723148692 1706060 857605508 255256027 183580954 89607737 779513353 584363563 261502937 20051375 642957000 686636475 621307405 537406656 344327264 624883595 906396460 629493509 122553421 126162584 578562797 954435060 969914691 623363950 897455131 922848714 467999377 674769320 681253912 607298773 630593147 351933063 440503230 135406182 108927663 603688231 410471748 330845050 79141284 900308236 534187237 187844201 959018533 537399693 577082033 730521084 630239113 129190591 114356251 592321398 564860412 616984195 145068757 170718554 372215757 332108759 132910982 672018256 609021028 346308911 721118914 323122276 215246377 176475421 662278251 148132919 644914624 266461624 903742065 972074037 355178625 252283761 929556489 472458710 70753546 103912507 100012644 226429604 640273409 587372557 689185192 442040094 142854032 73556470 877614536 780443420 63051486 71557457 591558749 500455162 30085689 910928064 394622019 228590144 43331988 628306503 965119480 439653690 356958649 995174243 962083917 891577731 627825840 869330216 787964749 834952847 112201224 244549633 107919074 70667880 361059668 264082123 423897256 944550533 899617191 290420543 458067052 727098051 715251397 576502541 274092550 803922761 650377064 609898737 970442563 712983983 940181029 557677416 416228532 843221995 578584407 12801251 574168948 28878953 925361946 489815583 351529061 190707467 150196579 357007908 208033501 715583804 10458075 861833230 53835785 966166529 717692557 394836142 86580390 766798592 597650413 305441560 728023846 933621120 170329816 76300393 857069555 876138432 369500388 481642094 627172862 477583578 968367280 930523123 887241948 794177270 518182366 988765677 921566382 652022781 620621512 309435296 318824915 575049130 672016595 347158782 937841109 223931138 893716304 657096011 742191653 208654531 503465834 553748750 220001102 829291543 1021754 633545652 134349802 235326142 205596519 154158975 927687409 409173372 876207898 420081859 25625314 723483411 212324634 661106724 842977499 524136574 714757769 654804369 191174247 5553088 438338026 64860901 384780912 716814316 259863242 428365775 499478026 956828242 196860660 866343964 55890171 567461582 961623897 285185520 768896680 993474670 162961584 926732969 824775404 608263762 377882066 263179428 255209539 637947680 289019752 613489022 472942352 590315965 594340089 275521672 268330877 167124679 956820149 985858322 27094467 268642867 290705056 745535742 847880710 544157279 685936068 949071370 900063121 161224008 336190513 806535804 154002290 31045021 508998809 162370775 719470703 191380160 942131001 486843996 877486696 52799640 446392127 980251372 490848837 152526321 640746377 985731615 144602790 963412351 103664052 942035862 223607973 248909960 351186376 179163203 485876027 122263352 397304745 185445800 965104154 688794081 642134016 749270793 517571230 327087288 966978519 996782100 204297253 592282320 20920993 952821563 259254675 276379518 659315453 714760049 179430860 830422898 84385679 252574552 658667350 705522342 327813487 275646437 716896005 612177447 906068534 269252878 287103006 813273639 141173162 768469466 144154719 779339585 270279758 181729810 388306551 418219267 391317167 814614309 493616107 835068386 71182972 358639412 282925806 947739298 549754416 831692217 364062726 126530837 595165999 118596992 338029018 838185784 961193120 997115243 164785356 121727309 632226853 194346477 126892809 562206691 839363595 547935064 688292092 842211013 139421713 44842324 88180281 994129132 150842694 769357063 727031691 346978996 973559666 926319390 736289958 519233323 938123005 400698349 505950844 380582213 755085067 619625269 152664644 82445570 859419015 831096102 154779101 623870857 945394345 327682603 720333470 991653902 771290168 433320747 170802261 510233422 664976290 904631262 309470966 115431839 945714167 761541554 956409817 379652013 593125541 755475540 151235196 859355479 3778817 223454290 368941127 939381055 15502066 882242916 184860947 285014863 664181184 807084204 301031251 257745689 992397348 269522898 239685138 461010707 488375056 704474330 62457492 875213050 661565044 197315773 579734216 79008589 755241934 210688119 706846902 823423967 919244425 965852508 465806452 454975450 113846066 930611941 281202117 255840639 468445840 787917713 931048012 694659712 540946696 288917058 205935814 821732610 667122717 813301905 575196654 654995322 74602526 560341574 240736369 312260969 819825991 447536778 180683032 232602933 970850320 259959620 594155523 910685303 36722499 277406765 46611193 174366004 703775770 503295968 357999265 660907189 779073321 779320935 739485539 898332122 72165170 829140336 295127547 377340711 270413602 372168222 361834009 361667261 461479093 766692625 620235444 467177321 985536066 654011095 458300357 289508336 623476762 149934608 133861483 446969677 783162259 962194315 915286918 637620573 283925788 566656426 417763981 379654511 22959926 69219491 514510006 118665575 12336840 56686522 604738205 150777133 5496247 208476939 754496669 430766047 26955525 722626041 547906588 402993292 208512640 599719621 895088534 853528885 979796442 583202533 650552778 467107244 37110118 231275914 929570560 1890800 450698372 755757850 548592671 668180740 334416275 870815391 430552915 433206721 484624301 627915148 912405665 664103576 528676481 627451548 164477840 123425929 228585539 413321142 850877474 586404769 103291059 457924521 399998582 410317565 322648880 484088690 127022305 164564280 576214745 238166420 72024034 698833929 367181409 641098917 899804956 185041164 80184654 56463987 342524426 703517275 694572894 765000292 88539999 76503030 790909489 632748877 540516760 617986735 12500776 299546027 543946103 940494778 702418614 635621827 144529723 851195156 609110008 54976410 105327490 572058549 659173938 712937363 603807096 516452999 2129620 745012475 565134041 594773739 674591921 255192721 865864680 216742686 482444335 208220601 817198217 15966539 971128417 529418154 900368895 111583622 91860804 913871321 670652225 216545888 113160630 757053461 389820317 958507890 212020645 757270333 56024883 485491074 523657720 271168923 659786532 403947186 768153351 393947983 506475696 545506450 844258841 507418503 606017189 835209760 568827245 126582030 587256818 958390693 278097793 141008731 881968031 905626094 802690228 77901539 142936418 844421799 571710899 94688716 448866973 559915726 172003705 36327957 444766996 955898214 868658530 255301016 130936313 429266919 928611501 553395504 974624591 36836445 294650214 49272491 994947906 847259824 271905209 922364635 802584862 610903652 784948995 119473075 157099565 617425198 999786294 523791842 319034661 107846089 901640137 927042470 890720063 309281257 832647417 295911626 870767492 932165028 76522725 408840635 70514753 442548570 954119742 920004415 110033289 731497608 48379966 30515931 372209027 888474151 161366587 736799969 192230970 345961483 511439426 927911705 580406207 350438647 686418434 741982834 285504142 245523952 458040302 698815072 836619938 903942566 300495040 190887650 278901234 439123890 291513461 96253194 990584220 971216372 394631205 269231387 556854866 726377767 521818832 554592703 711859685 545612506 579430730 55404682 449530289 352655128 205000757 957802243 854657399 633849277 607852276 728539985 61974360 131370171 277985770 670875933 901415236 543086291 143423217 302503454 491835397 466653919 191838151 719599595 916555399 283560352 354679729 844819787 447650178 30853823 578534592 983136936 22087995 339635584 402427107 164324233 35357371 70915364 394833604 574720258 295891453 318386629 844892375 173723321 826108960 587347431 524584889 72943072 487754980 280644068 974491564 272110574 410255539 838230790 95974498 414315295 889088219 479886381 834028240 740305252 517443379 637574511 832990804 205849679 202680852 550414528 214960264 758964861 458347079 565213761 806651864 153031246 300328516 49267919 892089187 915919886 648696450 476230294 728303902 355049362 900253263 571241109 486204798 143649417 278084645 23044051 277844042 609321781 665298962 901696489 84904722 954485499 374489938 713090587 285201418 999552925 780258911 817765841 157110640 751744740 239737185 7651748 737213653 430841211 231720783 393311911 945543935 699430350 906222841 595094331 158376993 730715233 109866258 209866589 843560374 557460822 261567146 582387834 637861413 403805830 190707723 731133003 87247822 45155109 982102667 614397493 546760578 800577786 337579680 615799288 345440182 366677439 426119374 373711546 487373831 513833710 610879750 586854408 956190651 627146090 538286301 522787884 76558439 577575262 615119803 918765819 328298005 680603986 641868068 782457179 614423617 186922607 907644393 53081412 292267298 163735876 511313286 571571672 904830760 2417875 505039874 329755945 815066355 197829445 539383818 58065817 235925145 318848512 763147969 28434493 867445178 440642515 213112037 166315357 872469715 141853120 942212899 801908701 138859957 797856925 662628753 741874464 352235622 595954781 90702810 656357070 556260296 472982242 766630259 150442350 855172670 341556831 682103477 207540885 94057532 499489371 245642890 421757243 853811552 144243976 675980680 429072455 589159236 742163944 589878085 753284953 409142429 25542077 376931664 876139715 961213971 991660278 67549521 418122987 756560461 599191384 205434940 50475351 701928804 91295386 333076198 589479135 230346119 65948432 429215535 662063545 426050589 862702969 18213940 797823270 605411017 775591035 900516470 8451876 290151634 534150739 917502732 443047215 178184586 567668986 881822412 254944362 156970117 724780010 681038728 657893792 358879802 7890734 117279393 978263587 234077995 249164207 874017340 368758061 565183593 100487688 522009880 215002024 411231654 764821024 602872953 782882238 652463361 222066081 237020099 194022531 483952665 480417309 68061238 177364906 422079210 800405319 594130373 823090732 82402720 875333376 990954103 314581695 370207361 229712051 839175417 79326462 989082161 935008491 644555806 364992871 108715847 643640996 743802821 9691273 871613690 145783772 871746396 208451272 569535287 52176560 5040058 173836640 11747022 990946297 108834266 12836949 476634271 867249526 771757201 752847567 502966721 472223603 293616475 510203783 574486840 957432845 866091076 899686581 862068786 593749367 57517121 442934623 480987552 40538203 268367326 859609136 419476095 143265145 69375529 413260913 897976297 686295683 451535889 118681916 162613764 559050034 725741790 473036269 995450533 231633320 646138587 941029437 395603602 868274462 758315268 51459716 97424765 131924679 105082441 70506532 545949679 140239962 584282877 123284898 327161244 533201620 735177432 743787554 117542075 848164792 363580444 388336034 177635880 927695195 761636129 241825850 501771635 94889406 607904625 544178959 226237661 591396499 748832425 665957785 417894849 170789243 428107911 902077833 636847549 551971064 726351901 228224325 922641511 891403902 55412933 869046899 373730369 308055312 591068421 113749438 147899122 30084668 307226652 717264765 447434856 552792155 195954332 256715246 342752179 638732456 538979394 403127056 911603218 834285268 86275801 755582501 935523255 644431207 910265727 749265676 54530646 701966919 28750240 317244164 261351409 796869946 171625451 130650628 540551371 609594620 962095476 351526725 864509702 1042307 719965223 857577602 132529399 839032406 907219711 439872967 416586368 653036239 355371232 766897566 680210790 784344023 452294206 294268750 897853562 662139506 18809127 291798245 71945060 365774767 863718908 165516249 564528243 667747881 679646487 651232085 924956689 23287162 905737630 751522799 996145821 159839660 260444231 524896414 14376087 629279404 790984718 46908188 897526568 4810361 136234413 66012501 142994153 229094820 115533412 958478388 813813882 702497022 885432660 410902764 249723936 237442214 136445412 78035699 950303449 975669054 785572514 704626705 400836345 588636210 354628803 331246870 313351544 971951198 906843724 485704012 347449250 211495218 276396442 488778122 202086571 519231294 47296253 203124663 276599492 335368362 870156005 204517073 452475621 211260024 668464189 568997211 148035096 531715353 154575624 458124163 572568879 102803900 271077460 951383390 629867148 992957360 990592338 503845820 52813864 406099186 64422226 91333057 650532770 377538233 56694047 734763055 828155315 390770935 607695426 173620194 126711184 194643974 623505580 710301166 319378236 446710392 219500074 562952579 728961659 632739357 10368195 78778331 517548976 64021081 614010004 57783365 773553144 83464673 6251396 519301018 504322823 662628627 390046801 35641461 207295369 91309549 17036149 106571931 892909626 279801024 151276443 503464796 554875174 384592579 76118105 999883345 457690894 543509295 153271611 402382299 520200830 689932350 996299533 286763744 693725207 763198059 291103369 632578228 115320039 345473904 452782875 191985474 862332853 290166297 634897284 355811617 702883874 445823607 543038326 490024579 804424648 568858456 419546899 108295454 403872047 472826236 430417436 882190479 471174046 401920414 543921090 879689582 875470243 22276631 557914940 54467008 161418966 665856669 502348752 748410533 355781700 720380358 586751828 7157279 65415063 372467548 371769132 679842014 876408176 859800266 418435586 716997262 79776414 469201975 775753468 705528705 946792909 502832621 475356075 539694939 160726051 304854554 260748420 881015418 607774183 154389465 19468235 517388556 131193433 208832018 132234174 951473346 252731301 720280094 23414063 667867143 159670483 29054864 944042414 862468046 900816179 987416628 543134986 911049800 609010974 529961687 732599535 373900776 193509523 573506777 667928170 206172452 652101535 438722972 637881010 725878826 889588049 103511793 117626453 711349845 977389319 138203853 516375010 213844341 362179487 544345454 993839966 243876880 300085255 867320888 364441440 742197943 572200003 910556959 251481544 148139679 47543750 668144317 368815548 646536720 170782835 117336815 881685663 910708632 743598106 923974936 44562043 332719136 86566164 935041572 798460285 292461372 39280809 874788157 424729611 133327426 425024288 367901627 594518782 668510525 825650190 5048102 242756935 927944036 579101264 280099605 257284659 804059522 329424119 565779045 500723680 229168165 490709769 578953456 797322160 62965841 749088228 455206320 838466904 564165107 377526310 544204797 130087066 841400344 683706923 309017355 896142604 246416745 201693774 610739018 443346880 473501461 750454398 816716097 309434684 68638783 391251682 506498497 683510961 570591087 37164644 397279720 345368072 880469896 221978832 189194383 32320253 145700331 198899583 907024304 557947282 402635263 971853642 750133228 501506660 276752857 641738348 824131106 144983228 170147987 371846656 753509316 954556195 46787639 989100666 342315830 147871231 390303012 253392043 433323214 399030799 368770730 359992906 981715668 32158905 108657376 720631260 468850048 66759560 580561027 886466895 417697066 822731215 989056944 353066256 231749860 133777070 684562990 431172890 473610801 835365872 563450353 711023840 532757145 501776555 434155097 343446766 914337385 983869704 246695829 670068473 312786852 802902197 728508275 964700936 107476120 759614412 275349523 586332631 991429015 689188166 321387610 191401716 293991812 971753041 43998090 3108227 260008080 210698023 35730415 567327256 394208633 823469860 248106614 881194425 905916179 981716696 89688787 248810502 755114698 365604405 119492812 681856992 206566932 744978283 807690248 264754439 553445257 50755356 3506398 885024571 780329109 452352094 532109068 563888423 202545903 844551872 539657772 663618980 436042604 717327312 957772750 124218825 684858932 723121111 49559951 885693393 285388577 886187385 823636201 954236757 728115993 907190692 459666431 205891298 772174323 844061790 678516280 50723369 374599853 215579797 411399920 941974188 464966745 275555689 687989662 423408482 772457581 642732508 719029518 493278630 879936300 962570873 551638841 534853086 156802448 626125377 961898118 802299396 661059237 401953133 181465430 248708098 955889661 573963012 484439652 458579331 711289425 927748370 310520195 383756585 54410835 267834784 987729690 797320610 838638150 481199794 660395746 544126735 888088216 788297683 286256623 364850207 267017601 728045562 822872837 752671133 281817747 601748177 657624708 891520511 662112028 811705960 767337164 676689205 617660712 386387205 710774228 502594864 142451416 139222969 841076965 108570866 954941313 396766430 447129517 124812226 104018430 922579333 289623487 69280696 392849898 667216452 149454742 451254744 220592039 641990962 227418029 976578922 776499732 784790061 768724417 714847557 724313480 307245631 295213055 88341640 808499587 927121122 254954795 584544890 839530217 317743763 754269696 187717706 476880165 713933858 350650254 187557256 235018727 951500498 829151932 963130992 263965358 460267015 426818298 150884387 367564964 719795579 277131408 581100379 703737689 570899807 584355090 784822753 281247453 454048031 107392309 868660665 337622103 254444446 754826418 12008593 296982992 998802428 422582599 206301660 972665548 780805785 500791688 137737190 378414971 413159912 62955343 683423683 378251128 961899437 430019224 190444928 140616286 452799438 112854221 822476510 978758979 750503875 139569785 976625032 912113692 82357944 952857095 810187636 931089466 713374407 343724107 939636399 5668863 273384439 188172307 401880831 453053211 107189441 101045666 311508871 513398962 488540673 460596925 124909505 741918674 187675294 933871271 378101359 645313432 712205427 918712049 477450935 648009841 799886458 752341012 931257945 567677150 587302265 59634861 856241339 155166657 203222089 420894752 413501448 546955199 141173169 736915022 636084806 295573836 499750821 585272189 557338044 263178571 134493653 247246070 400921789 987138972 59555263 566421250 804180476 745603363 24714616 393648820 971343350 543504291 621031307 21153708 177806583 769095128 291440673 275853333 43479837 893450429 519504659 407189962 742406215 524741 973664765 208895866 238612162 140293315 381983236 759511270 360659793 229974269 276831007 608366880 858494429 16127192 626423178 89979220 212919704 621387767 836784420 370479153 976815332 991485173 940430334 81580347 123005753 772026469 559656497 6754567 683648784 992347543 418959233 228900441 39997759 476201883 199243889 214845009 960007831 971520003 867225411 306028440 567683799 702964225 147140267 634588106 773746409 554739659 482405700 164261782 299173358 938666772 907497930 828635314 853040075 342461532 798200495 930526421 524177730 95096046 583867191 938822322 982836029 648750476 665123529 475075653 785164862 486579772 819683775 141300515 646162739 160176632 576622054 470813458 739722560 476441367 244102228 93203423 248162306 220679843 905438805 167513034 774728315 367939661 999400919 585061482 155628667 217966765 427521554 519612525 114257887 838966445 836902737 466565243 664827208 589085479 338457145 362570161 758399790 960512513 756583668 385593237 747897497 298930220 983959232 213786854 566811170 779230077 564749484 900227463 356479223 925399303 946889329 450026957 317755213 286319182 996729161 135610134 259496182 487271729 258218970 333628066 287355155 557417728 722350280 57609814 289307066 801452834 776097203 107570324 889517238 720053576 97839639 975331374 197198827 625746290 689188302 551197195 544848952 855922947 774853789 736911725 929087245 540708236 263370683 762946678 660562922 94687292 281370532 514411953 31092697 828940343 780606598 980789065 923608234 649044523 448110889 235138562 307596696 989859048 50933745 508543703 418516938 532043939 847954982 370210124 647176267 128005615 299872852 914972094 290978308 129571747 241528260 772859352 839097999 255598172 724071292 719008929 815741990 97502486 33827210 296578050 149653147 369676716 605376408 384191429 180267228 847828876 170875128 814357584 296792062 614394124 212157473 151863786 67941256 91208235 196845810 783380649 504582785 873804175 470849109 314004148 679211352 526803634 991940971 854603344 358003944 313134164 792129623 36170648 6134081 742197444 465777095 987743670 711525917 474386838 696595953 777025551 498749943 265946194 577684172 742599493 987468393 256199627 872706745 94023545 593854989 170136954 440330552 812511067 937748146 617233406 147161020 68026747 199127090 259864397 915541142 334009017 823665029 204223779 792798335 223981867 416222228 53419029 154573499 161448412 785639050 187125082 493678070 118852414 342883601 587146564 834529296 795460663 861416216 975660890 575831789 928429310 573602347 386113816 347032457 145061284 821687856 304930413 481447942 258421794 902765689 246673406 660251926 847718337 525289688 318067750 23790437 918801163 17680710 142665357 64779905 429276379 609245264 973758613 140455737 466232132 747212612 87089328 507987195 285836462 251214920 196515346 366588069 556358578 846378605 707831430 400792270 904291497 769103360 458379808 210077331 668543218 655935785 183035619 836378957 620598476 24943497 489304049 38544743 482404902 362278602 20426463 461375370 513287653 584838468 390705724 278103858 257448923 93977515 936021381 124247622 321173474 337751464 554463728 745747503 366706668 213818685 262352683 391043733 337380491 334951002 412309065 529860925 765940252 42927389 292488474 316860787 799636629 415636896 147494523 17685108 675392462 499625176 357012239 190997965 439456076 888978066 210676288 226435507 43940109 797687786 876589859 946841848 38810029 393390904 398596545 217641404 507925766 422247114 688934460 269950166 499235307 509906328 815812660 285015574 758205754 378770583 273527325 537858802 898037706 838403648 580165114 570952984 444232041 866008386 215208209 611510930 76001890 669544595 649551612 439835589 479078209 113417274 473487222 738829260 96780263 727461336 448597932 730561149 560651525 944016678 595009116 64939359 358686004 870543589 997493930 847388366 809227979 999896757 608759705 332373700 871898050 193647915 193357214 241651836 401092050 369134007 382803868 494245922 44202451 647181270 493006128 959683990 403728751 661850352 791662847 820694377 742145065 977732889 329943687 348101915 662564405 589881033 437709142 688746169 962459602 849386273 261114871 405721963 232611623 201313793 619784337 189369499 294381076 960175943 127835101 119691964 458986666 498373957 155745484 393063599 318736271 374087822 403519117 615595001 58266806 644256471 183367784 633135878 892215980 514657917 788623299 390463374 929590477 722959707 41392738 422905367 455114636 138943014 450242662 388837748 864022352 931349757 221813950 80169081 875801554 583646205 277486727 226978715 963843366 648853538 493770291 394964092 114209072 610871180 352686241 104572190 909633046 96913942 491514917 494274709 434636189 100052616 436236223 6311487 342676326 448435118 598303278 953324231 219889825 684964362 64298252 541687551 550159041 39645050 824545902 852632255 597138 402732390 78196595 903164200 108172102 54971635 789622528 677371572 277567897 824744724 882614371 45372959 729465601 718691113 376868174 685234497 13215432 868495355 382636454 245572087 804740923 522310792 122960698 882532837 387074431 592539144 528048754 682933648 569826578 529471 561167236 324612998 176618660 403018897 471966908 167618357 816494244 739842628 994605623 57035254 558155215 994026179 975191177 862338191 339578777 897153943 612106260 31501497 103927904 180912119 460243295 800742490 556903583 202188756 994711235 585669054 176343633 655340959 484964889 527630571 906720438 736739156 613852914 960239108 197387416 657567197 86647528 87372540 221083594 311074351 112954591 141404105 177436474 218125948 656636595 968111163 962330820 123881343 97209452 973461169 105839398 834654274 929086502 264100299 586041452 602378999 35823382 844846965 151004737 834964671 306841756 21206228 784433059 137351720 75637328 746041034 571301516 528531771 6968942 615967684 177165812 130628265 820841020 91513677 904791399 500330368 828672831 692215312 308913343 453211966 460229320 149988212 889734896 878174865 792763908 763706384 948597355 778654176 96657169 316272562 516899051 171248008 347648920 523930594 770472237 850485725 131503233 684509855 934321702 331761055 738460287 671520347 77897163 894903405 668610953 583270412 637489926 795794554 287163572 643240880 683843972 376812545 609433184 698946829 371918075 392089417 86145038 50783587 692068665 900145323 81720427 945698665 952068311 25129053 50928540 56108026 341602556 629916573 954264538 621121140 486396980 358715918 118064348 539812370 327926302 93437021 665385759 462755174 871360156 534363746 168892313 931431558 766242859 201792388 991006401 785507466 381662547 831321427 364508223 712898177 452839263 906580092 761116772 2337811 280353179 262170878 155679870 462605010 518156082 522780819 450558247 670958935 975854886 462815033 928580908 532208937 986413097 777323421 396034157 499668414 637314021 200296360 424783299 961866354 459319262 542189150 220478832 973520722 910077413 270029227 440352919 762092775 847553025 727789638 534897688 944377598 132692011 711226185 412658674 755795806 267198965 23518519 558110934 549128269 202979205 567550515 878390743 493708653 382404014 935814277 572644384 562657492 274955832 862834617 168572099 360616616 53138982 195466310 175262179 639840896 761141024 791293344 429838412 411893873 187837717 214380322 300117712 942487451 154902431 311652592 37832389 991489441 713930464 934060523 859279550 565189926 816585829 619877793 85655763 109481802 249853103 586785113 207261032 897872362 204104974 174303341 117760054 805562957 126019496 587796823 322001088 694143751 498846009 401288586 928440765 515645979 823256360 252171587 188716504 167048611 32304273 752898212 215355873 368486401 793838785 507510114 680388334 399419312 890926398 68574542 289802986 749842183 980818515 364786824 729863126 70370038 934163602 741359632 844500237 708792164 313619880 71867487 14627776 415911441 644158848 442784810 964395669 658737035 554408836 351984810 680644872 500754372 530494225 97037046 185865803 420941981 663186504 51244840 951739598 672988145 135482009 171612828 80682910 66598738 556125544 727881738 560655548 518482407 500796872 670875246 790525719 949788237 970321703 688583061 412509405 611077913 354310134 824476678 537530576 500450132 951906006 729701917 429127662 266246298 653995541 425888541 884029977 464765874 865660379 466012552 460694398 863428827 732523706 181179976 399326002 840900332 384116947 484947412 715481143 803268926 633287468 107481055 527797318 574523091 795118918 499514344 659200313 506508436 462002822 481044192 185420539 741892091 273746330 762135198 307032799 70614570 559695120 549256330 590098308 533316493 447768515 809259775 512400791 363488354 552136706 681666505 181396372 690330598 317199882 615718247 982691614 686749634 565865490 311802180 34884021 40075723 126731040 47753522 535936046 873095612 164544872 265294592 642370917 790122221 902037769 691075185 837082916 819907005 667460334 791172655 245797098 186224890 980602765 605536031 90791093 918253500 338728478 217386754 841179445 673674978 841249172 63584048 92234601 133218301 384311915 638039663 949341316 406439716 329396181 487132280 299653101 241508954 434096663 59506691 800884375 389157399 843640680 51063485 475820779 701694413 142220239 531035448 783354623 923902033 981218090 944046599 796901244 939286940 241989991 127900084 302454653 375794443 858643311 665979234 915695066 494594249 183773860 168949999 898662592 902752220 550522039 479692254 826446021 81780471 698758590 893414762 599156290 701257469 181771495 685594762 822701147 288752815 691679834 739229496 424068286 356455641 857585486 276812184 525763841 536946629 564479085 39076138 241203556 134347611 694188603 563624756 302231178 134323009 679242564 96407382 484874905 410897761 965285025 696156971 640421993 651251974 646456621 924967396 695482106 155716563 327967137 497148074 631878640 4526473 795101278 515197304 228315667 623621594 752198697 439357907 257787391 254469051 361586862 215798315 342371511 447260643 638338311 81679825 341676602 628028203 494849791 68962766 556909813 678051742 409711136 497339222 998698654 725388981 759608258 642579937 701789042 510121514 651822476 122537755 161358604 916445297 148674231 866119091 274251642 14427141 816036850 867292107 727731215 290715735 459420991 787784132 848645903 600615101 613604446 525155295 743471021 107691360 973649248 631609093 868403162 804712998 851092785 260038603 635057165 716455764 621687966 707952163 587854089 540761551 512903594 891895272 596953162 288373808 941618680 117489819 72355037 862997706 112277720 495969047 140777389 731360502 931233005 114549222 460251900 56990266 448435918 153661782 988956628 290921669 479541810 706964467 417453922 128932915 383364322 948167631 348818676 291151195 894461517 545982194 245648340 885691577 755399954 878847685 540336916 499515025 468972030 445846105 333408786 568406181 759485819 557426597 128694890 372951676 743132091 587170897 755565654 727274104 997224300 591410925 785548354 955966238 636270792 246884037 423529343 21380155 880357559 10595358 387342116 622744138 314521167 709330738 432501921 353024880 180121461 129093580 493692301 155361389 125299416 447724364 287568642 471819748 981859165 865184399 244485871 692457917 828916005 563857500 21769883 476343046 739335954 608812195 243924196 490923565 252354284 818582197 969266671 981047552 699714253 547647539 747532288 154998481 381962270 661137734 757130478 903653795 737138947 759674777 629860129 247073569 761423355 409394312 184973856 432719433 135895842 577469978 346919991 472498598 595166168 815552793 729194588 234079725 52118313 946671310 520879655 160060030 853878714 575180332 387104871 176763949 224857271 715374036 476784107 196053217 219134183 133132810 778484063 589140583 203312452 315538213 354001781 648270138 616665905 94490978 870647827 467928784 762271485 741704318 512545623 159843440 535982075 599262518 466641846 938897177 452893747 166830633 62047827 482536090 417971386 867840678 619063347 192494013 645614452 124569401 681637942 472924211 941019526 372661024 79394012 888356491 846497134 932968421 293515394 360242435 907470126 118882093 881979520 535069569 555129634 913471552 40953596 331180358 199700478 979807677 986098373 66035209 476923280 122436523 131948803 643028844 966314806 812311015 153394082 590022552 304015179 103861622 969968159 492810453 829578128 736991046 517458462 705463683 103197166 740269339 240299009 897530527 227073882 922673921 580556913 634430043 249575133 793140343 865566840 980236885 646220249 497944950 284688426 895914202 111198646 243270497 539469785 702801006 764555646 12481696 282510637 416843924 401719178 390873708 930382827 404624146 489875865 381829497 799739867 839086844 339663720 815046516 744704103 294247704 12195642 195226022 531366983 889526376 870280633 780059774 555177318 204990921 92901891 550780604 932281284 465441594 585634374 165828515 24319831 794616743 504305447 563221019 266282224 353666306 36524506 78952209 300258585 6468552 675128958 154481915 369089822 469257740 408503132 975383577 505266882 886392683 866257425 479079731 132898363 258390770 338278884 574400802 806230719 672552679 402043121 479762906 700180108 740258394 374867046 858724363 221925039 885774964 469681541 602966314 471413425 843379909 57093013 846871073 822982242 91649974 285381071 872105109 392478806 144634786 230669382 474792747 719927789 27123358 329859319 101068713 943817325 35988225 831281664 366650598 216236173 59717548 981797708 123861396 199368240 236565057 480518960 348178502 786396080 923702242 187265395 662083956 706962250 37892673 947677488 535127479 245932176 317287306 398048115 435709283 160670294 571602266 804412569 660632557 84612423 232623149 647582849 128913302 762139459 618939050 435215862 205116245 875910830 571961009 76656320 305778482 475863052 618347163 273793485 964128868 199882278 103739663 477625872 619714029 653686189 799036091 335681799 325559622 841963292 637077417 693624221 645868839 950468163 463023604 158345539 826370687 691594545 467036765 608160494 416815232 290290532 451910704 245583809 102525533 796138466 591497753 739497183 834110207 404979447 420999776 189226996 581587161 345961280 696935742 527429925 68491740 775559339 47992424 118558117 647267155 339230567 643488885 245344339 601078036 576851897 367856160 955978189 278924308 31924688 213704072 417374386 337583701 681785338 180141061 572470629 515883646 731991753 762796943 136739626 106094986 487943923 56741524 443578936 959404786 818316552 165469762 762024988 938626772 59506328 983417630 234571119 541793635 670232757 768944892 461067302 594977189 548566277 600392754 200337707 307843611 267036049 193122134 410088347 546785182 896466984 169929966 459840340 704056279 202329994 665513849 589968480 132740175 853691040 413472232 4682043 881860846 677594834 699498594 317576852 143199889 885894263 406756253 401984589 268093735 776275704 393325549 774639890 518967650 735672863 517986111 492552826 999766599 929128167 210391179 366265763 58580431 808842786 357329339 55670668 179363912 731421512 771124777 936809861 961775991 141563520 382464869 926387344 554077139 691959510 241540828 180578085 146793497 362411677 198356096 533802139 43884852 362318551 919592231 175845339 95513894 896720634 509235909 563001586 148670072 528927339 468070094 553034145 622860080 569665819 302136566 969822811 521364506 355516554 572279853 80757386 598985111 604538013 229430800 86308969 283770863 908639556 691786412 411773503 254233658 910302189 563203165 931169882 464297899 193109315 114192753 148787253 113189273 211402177 578344884 338549838 254632866 695945254 466641168 374556247 320434328 38385300 561800669 798520037 509907480 878297784 579218154 609998932 439352759 738368905 922553821 883927305 877905733 757007721 234634590 950431714 702919588 825533110 18782851 882220393 881459063 246590782 692834589 649543870 795301529 853392276 670599194 263132478 748929258 111968207 350215040 992364168 13009463 43723224 594079833 945716764 357084304 308669752 304766035 544847789 820165948 648435640 833819857 804636817 109765173 681929885 122604114 122024847 398479272 661242823 833353430 590523975 905596430 257508457 858371571 593371251 829748044 359334629 851289537 523751397 797916583 477928281 982616080 556371160 999240348 236609717 81982979 956638357 839123975 861810733 102553730 180638918 591761587 6757975 377880224 294888673 274919042 652380832 634977715 615536470 520243480 423269784 178915104 50018798 912140661 335555150 913005588 598136783 955736805 552430208 587328500 41565493 894979299 627873395 832028374 870789043 666226256 103618217 462797840 773733557 736852069 744801132 640655328 647758790 997482643 535364311 132746778 586784331 702975741 566292404 676222989 601672664 103298400 727858053 842668665 243269036 696889148 965666571 872473682 600912312 638140902 576636285 301403330 597227124 358866802 126526106 54565061 401014148 963385631 195603930 510767894 466919395 910525539 553112185 640822324 562102859 208842795 324714296 228894566 579451002 466658284 627037207 615569655 871242876 951479532 574517068 519958644 825073463 836223421 94654996 591163541 670439798 652959658 6202559 942533320 12205893 100356008 106780529 385461908 680160008 388405635 914727759 349103727 837664319 983783462 860571870 298614877 27220406 148559789 166665599 514153132 889159482 36412154 719512758 315476047 334595189 735293449 597879614 993692212 277908844 45193542 870222891 767272402 888446566 766208178 699713889 394777649 615715320 669054941 42719176 824892702 994896239 69350822 678699684 719541227 599785039 840363739 856273559 544247878 981092923 717209701 785391126 489987440 443047538 95228770 679190153 693345233 465532442 484439297 494055568 989463141 642274847 320966163 70930718 20450223 582620390 451204157 768673314 563620272 807269110 104142085 422634781 765846563 281983668 811978522 892111180 902885709 26230885 635458997 646517436 415255916 886527167 720546527 700578149 430033084 581005881 141658111 284235978 171142504 653239202 974863342 69435691 618849795 227501604 871112643 847061133 724101953 236128963 891641719 756627628 220565896 605804071 627428182 568783321 893456052 923078259 539301534 486822540 346909859 500189254 980314775 361636952 639198196 872252980 968476958 269248760 945201273 404684266 170768407 584054782 542537350 389286840 298145354 139506119 978997542 400655677 375584953 55630747 928688082 491869524 52330966 908325277 831423527 909138770 225291046 858899372 505931935 641457011 388762880 59306808 5430789 965749526 607498658 99311783 769650914 972376840 143261402 568938806 211797176 72373703 558584890 817543575 53002419 6924023 303599581 980411556 863873359 620040692 446659671 785456035 944261746 341393339 581512642 635569905 935340719 874687362 771056857 417962768 520365937 519266479 581324200 688430287 862051214 492089636 618844142 691179251 135941119 975141965 814530067 891724622 816187128 686465165 237016102 286389988 975192581 481743446 524908129 534970714 180568961 27862286 997556381 689031704 117648246 787024902 907064217 833643695 154284195 844226335 564751104 254899213 971520735 618900039 82979361 829662872 990441300 852450569 31658436 150263652 761501693 276007177 982430283 721138827 355656482 352217165 491800753 246274291 534539177 492040866 508583742 557607137 96109609 19777313 60506794 78903568 885447362 363498411 199112781 940580176 669611900 638656862 974482039 725335391 826884082 124616400 729591974 730363322 927614969 214006899 99637597 749453610 459698171 899335152 699645050 773457792 214061260 99977825 393722643 82623105 430907808 395233118 375574385 883599211 868684923 444306208 899174881 615694900 281148344 532140717 468212308 873521655 352550011 928767753 215380810 729822821 95074585 966928918 226966567 731533211 989451723 859351936 171584184 368083651 187388412 523684373 38504255 392752056 865845619 961976052 491847959 317224106 361918275 673525806 930913330 973079901 84405012 920854736 158459668 162521294 51156605 991688237 94999941 488786935 648843725 847809914 620642694 831787760 948455132 416847609 531730105 154014228 579252854 194185641 126560362 801669292 879453648 420695721 446741843 298114985 549754897 797677346 615620865 553587626 685449977 23271002 166755992 502508081 442145031 984309975 355087483 399660990 130056652 733690068 660761107 217729703 469091318 602785100 326483723 612065714 350433952 222723346 635799806 294385877 449939451 438040481 84047065 339588610 975957808 950330983 135261544 866823587 776547662 184619634 406223056 613676481 591994619 673565671 624346410 538581772 726598406 178250364 934158245 43720303 526888162 978604804 439782127 990238607 877979997 497272908 76358646 560145024 146350083 312154940 110619025 321152431 270698586 10578660 79073429 531653823 702268335 216139295 828380531 476207059 616530899 874711001 198623439 130703039 435165240 925433513 9105091 696877306 8736761 809091909 699906501 706423631 988915776 17946022 241470924 908744129 977258008 249867736 187705155 907065230 789882596 828532286 359555349 189463695 732089343 295624174 295056400 872648396 10365899 920294605 773070700 886016783 532747626 744948712 717182542 712172035 30485875 495118088 803293206 834097989 364897190 406188345 692889878 225504104 177239122 431279058 58156209 961154651 999543892 992259940 374900908 914281010 625335187 720212734 496522092 644142611 490660365 226491325 513060268 20570917 546478740 805763715 436643797 272663329 39438188 68508250 946102608 553972368 882033799 261080466 159226180 451420352 933589892 611161682 460432238 219530062 156771129 245743663 191609474 799478872 37759342 226117549 939048081 175292832 442583072 919050708 758139801 61511952 449996297 425259229 586198447 190877798 947196896 856044231 942812014 156796852 49551311 40453710 879310927 236642278 148411374 18148643 528871670 116302558 562121766 74867022 507325703 648202759 463859310 928805417 996348046 93172844 599223170 586408463 245096255 732678476 44938825 929211512 285218041 812281777 602144334 514927319 29888323 490002554 613238209 703504960 467748374 13274763 582590718 944984434 798949131 362650884 207782637 117144115 432500969 840725849 362673519 115931999 862648679 515912980 470489822 844381119 288975676 344068133 420559734 461860306 672011903 176053742 50670314 781286603 671841061 837298000 640233519 458607691 768224792 771126711 621161012 630937332 70758981 658587288 855233405 611696884 34018323 661115850 839394117 563822950 625879300 262368294 896907642 228844884 814145632 383075187 940829001 516540127 966741636 767548624 351774938 66279512 45919147 880304723 431575749 879681359 925573764 777398179 41689473 212479415 620122790 534926722 870607889 568129081 239824791 41398089 767296413 263538121 377173560 204804596 913755308 9895868 424024690 529156582 553076640 553796493 824231037 491518364 675402858 308812061 177511565 576084138 18425217 153841727 423714648 88513399 132598104 269933587 761573600 194456635 802066411 103448416 85398405 992531772 61346551 744550281 223114443 953168899 697327894 504128458 240142833 732283900 683652044 543113580 976971745 736444919 890395572 441957636 157126558 300496533 569477453 789095535 653480047 87031044 992967794 587109387 357244027 427938860 706137847 110379477 85103746 402203188 649599000 641405240 778798626 13648724 523350049 614772974 759801808 610884681 198082285 79537852 12013844 816643620 134727996 840722664 483463525 444298341 568781993 964272715 844425123 530482276 941247482 888641593 136962181 477576919 245277056 65374762 858462448 236037739 939244623 992972508 508442008 583285316 455492010 443182832 586363921 376563963 522909595 234685033 52620610 641925538 268672962 600833417 78182074 604458105 559721192 788221751 188697432 954239666 72224221 307114305 443662013 255258788 589082535 863128985 166051195 151995126 109357474 754445438 704924436 93736203 780485614 195682391 439005578 725842085 280488756 751814736 408435418 840104420 515454699 773869622 14041726 643775807 297200572 621054821 536164730 350751088 61107836 831806503 338367175 209303071 74507406 194250822 948965785 296522699 806712294 865279089 142000960 765841488 513497025 497023213 895751337 5573292 852639245 814117143 101454147 882112537 342153767 974063749 407352576 721171642 612297716 203316402 326728163 355089364 485285899 130537657 532762330 183858708 516176426 185818883 502651858 721236708 408849678 830742265 961516776 493940948 366196786 609836906 368501156 631976260 594912061 661594091 93271431 144867803 359724915 203669049 361410640 285783438 475971271 810767765 931888335 864816182 621151012 258156476 687439007 759433490 238172557 107468211 594306819 96823341 279583609 633126781 220683028 392776780 488228191 999100962 428939701 746257350 866416388 618447809 73802051 327275419 240678438 410049167 655090320 915693536 849914383 514019506 952537147 48400126 124037940 998447197 609407205 80624200 466768283 60398777 751376233 480423381 258688585 643128615 209416340 110273958 783590466 408717380 705960186 393122812 499282774 300849364 697116036 832571105 760674084 324138234 893971831 609380801 830014464 643528126 571514634 363441110 672662872 488976581 27339621 347342891 573923232 823072881 640767551 504829734 568928323 789318749 852645811 816389757 869918192 912007247 425769462 121818282 635718286 975625022 360332158 997191778 396467473 863789979 791194301 76248447 469046931 603510566 885352139 778443066 969817556 523836298 261273050 280206339 796006508 687473413 164731801 11738620 713877645 650973831 36775514 303556193 777863073 397844413 677118176 190792281 690242420 934451212 162747157 376251559 374928264 584656101 141013095 233169358 397854100 226153208 869968431 602677395 672006035 806196976 478493417 980359460 141076004 870244941 492479609 372766685 768987476 298066754 191814776 86394444 326888172 989719772 973668927 873169146 882948733 309147051 586287686 434808092 909353325 419409279 396977709 687385242 200354784 401304166 258302281 872303148 369273900 431748759 267104748 116961504 25408471 447958948 42410041 258381850 554599979 959982299 77186436 727836625 845221504 219280101 700184035 2517782 771921430 288117458 630885684 762593842 112817616 4854461 449089941 488087785 926168034 81703789 66878265 437510767 457767149 986194616 1912473 675633945 514608429 685864473 890343861 444667187 958310874 792305024 626972344 475718526 556447527 648637113 618148052 797926619 581026098 558682488 794332565 400979776 528447365 110322520 845347710 588103342 304234276 297987873 102346575 269142016 955688696 275042136 244251455 897359119 619316696 911911156 251642020 248309020 792968091 352872560 293767692 790640275 795257841 538581379 972591230 496991383 759031430 216571626 943778647 542836739 191939269 362405421 249469280 981095399 22295633 421412214 152867906 924299444 495569690 860600407 958193873 367821884 870762459 388713802 687007037 765274659 175661171 781991822 924961135 297500406 838621167 122106504 166481604 240065085 626227110 993153467 26273160 271905143 500090773 850719618 835070747 403956556 676340892 824332099 629138152 900059603 570013966 665370969 878662439 795010730 160317160 977010434 866691685 971008923 34444076 507584739 560443169 842136642 443520897 859567364 850739334 266692008 728460626 270532128 370968979 857751417 653135201 257360507 588460344 408139804 742800682 833931823 954780402 93883235 875633636 855488378 459403698 8925233 556186875 130283692 856499501 351553241 820465378 523715968 78451108 301005641 65679385 159411710 321144315 321238372 341069004 133900366 753404284 460615199 577155901 650949053 103952698 622400326 162934084 345605136 661357786 442032196 995697324 73642040 755707175 441313476 734826865 736582736 152950096 33724768 425564556 825065855 555027169 297956594 703264561 225827065 736048324 371785354 832955693 623034319 996843990 72975303 971154289 162569085 265507615 519248687 262834098 922958303 655691143 820823025 79512314 123787761 954532209 285169705 684609803 353565998 342496687 918192490 72995679 88261014 194709271 142997873 254716512 261874552 281197378 3581978 63344959 967015288 587489465 638298164 264175746 179503570 839061578 773364886 999119243 651834959 731351274 394879395 837343085 310695847 858327333 349856113 564577430 153913050 470527687 589597477 490985127 878862599 418710535 787664864 960851456 789002854 822454365 803368681 657360222 531220554 62656763 971313680 790333290 98160049 185906011 793457448 91130661 438984392 612860624 290564615 120015267 7232969 321322355 946016218 369590741 513651939 674499401 92269606 17564897 28212601 511006038 640990618 205793252 365097431 117136281 976741488 419401517 963179894 512602375 66652453 240538463 299315928 836238547 2746619 759917466 725290052 827775974 816959791 413686382 925318935 361073048 897186558 883932320 196475923 569099841 833618401 561314233 52011694 869218411 814662337 818780624 813911058 56333434 648175215 842066920 152228556 938969743 283477063 980191455 976955960 798180467 964362658 737511606 177986359 484966756 159902391 198820713 175444458 39202253 353722013 74955819 454454024 514319146 160855566 508882611 758599354 275573263 622391079 461144749 514800641 51839377 775700104 190284636 883929705 975872342 561701618 271955312 654352460 885735169 52291956 168017638 117737520 536415877 620709352 259485127 827442813 513150503 851577577 403887179 47087263 14686802 776994151 562628516 585347691 588671596 326735460 106297975 326715955 179690349 847622747 93775496 673783564 626613186 21119228 790036825 170217822 796057435 270314853 946713953 990098372 940444876 510455671 490590070 931947067 442349085 176779978 470920458 466577736 640806627 615773966 334502787 197334868 861238186 217825138 871338607 707594225 242579618 99093851 300645021 946567754 322245668 51730334 362264455 176796113 325956493 643205078 655907300 439515015 837448568 145272855 545283543 240683056 203779240 669003560 657200377 894307443 74766579 959465848 713439822 168048533 517077732 579494208 659572043 969035971 579426677 343813981 42028822 203404332 92092885 980259241 834848344 59505702 629436123 762072366 964241381 132636435 692396358 807043631 348036959 341308638 865758909 725629491 505028622 217446248 788795163 677825638 790834210 636968019 903400689 476675282 401263063 642204849 227488610 107393198 824723097 208709206 745775496 129894542 68009578 768839790 646866043 490225603 614128176 646882170 24275628 29629850 760775042 939530415 789633917 916001804 684223437 88678648 346625579 805352226 769490109 717317689 28782985 43667026 431149778 169498471 15811351 981248939 724830149 105299104 284149639 761687456 897992211 558939738 953225965 683421104 441189527 655524111 496740427 931022898 809210653 246680262 909697575 811175694 794323415 73270269 85042378 106066969 423873575 198507791 971290130 23360510 746142964 861022050 374626334 663099912 773825896 277631041 296837830 853036713 747911919 836837053 153201678 861677453 137541453 801175512 781063262 691623015 91602418 64589715 286345683 724685206 639175185 661686096 609255244 448792488 779888101 738935543 119979521 642287249 622324164 520408515 964724144 191119129 360311912 807447329 670275586 659318056 618118560 226122638 869117718 342332623 559270139 604576445 562039189 91888234 593464586 175067640 259712485 305972718 449085617 661904979 989457847 571734295 918231095 15383005 605352887 968424307 381338880 870624897 941009635 235697287 708192227 579528277 259221772 72128767 239555255 308531557 406691212 785610704 525351592 338340569 200972315 560758264 877648670 208890263 618734322 815649479 486067274 51376945 964109619 555129631 589896648 18113098 684087105 74518655 289022158 605893841 188510289 532318930 597460472 144885733 720292635 916093757 601433854 529673751 941232119 914198754 650750350 986898689 592608308 677065059 98798668 751277741 466851825 395705345 722413379 994484603 189420689 537843973 242180555 193984309 959108797 282906351 33625277 519071630 614878577 456218025 328178036 971076719 226631710 800720482 876498624 337813196 520903823 641643062 20554607 902898369 842800667 687918128 430876974 760014380 399645042 158217227 220608019 361562946 29340045 240417132 649561095 867750452 513586920 117546454 607185948 665287952 785049280 19629333 860086790 993685973 11396735 326173119 314671266 65672942 911657919 717550353 660686751 425872313 841993832 744847710 162710340 672087253 78990512 979697435 337676758 146535864 853771133 65887313 611521657 282081418 512995503 624933284 380227050 778230724 224668788 682077167 117947742 515593267 24409981 651901116 259598274 272134602 222142380 306589997 970353638 243560361 560222533 376423105 622855903 611265877 213553197 215493497 640596826 649157212 164946260 796972419 197756111 555142849 790343792 309792326 634067603 889231260 347700755 22599993 800279978 571227168 887868207 858526786 841307049 4862902 170082953 87099908 340585613 829576663 417886166 409083205 724081050 990339116 166752528 470728184 24065205 933117935 891805786 910477812 454366330 358499944 875774482 750579244 17082437 935725214 146079114 30134388 480149661 386643983 118410371 473084559 821484035 692744431 623122982 744530368 768936357 555445540 499801961 584606361 221584151 386900956 337804824 461104596 2947092 509528452 2310371 42994858 430124217 732079142 770917521 329612481 160540802 298095321 117779456 827492566 796842152 889558997 456455943 429286687 602590375 890098388 54044372 503822745 848083481 339505897 691816040 307238105 367528260 872265626 580021925 338339296 21665142 26495286 399950011 346446641 62982491 82359802 355566747 278441404 658728724 430910214 212889568 59058863 187450098 686257594 318836928 378688430 708321621 215343056 428052028 371200540 403201552 863117597 730347286 40677678 845423685 261219930 271860540 441219287 713728263 394438904 325893311 939211145 720489394 907443976 543661991 984058488 546545837 324523006 91585178 934251634 645509535 438898877 242245464 292673265 617562576 883833275 47525186 616746935 57801500 157858325 523808500 479172428 765987083 530729932 858375445 478535651 534129663 671542272 414750622 965505903 810023992 892596735 539733997 376943812 742280428 177682254 685674027 190575119 178980322 913433946 975460218 10429424 540325669 574187768 600798738 960594289 221135653 594208807 311412720 461260528 828780956 539710438 388842600 202425238 301044294 463149713 258027073 471040845 496560030 449795805 612110383 511749221 261111656 718858894 925705374 552091105 469874569 221239293 33891549 539411850 397467406 801395406 580368137 761063033 542632009 547617200 182482326 597616289 360710745 922025390 187462877 512832968 422945807 142859003 411515442 980776977 617050781 320075090 734922298 424805089 200155196 643403003 685502677 366095553 498386283 782159637 194134173 34967555 849962016 840246182 320542954 630469926 753570615 585545164 830452891 859298756 349762385 768005777 811226924 159745263 279041258 94478931 823449201 905776623 587187220 968646436 690153549 488155566 499591767 865473302 669960388 245649069 276230393 73069789 819377713 791696328 286737517 818999950 887479310 165965285 21386434 892249228 590174439 51637820 970908103 801587434 793185890 673577888 945566557 384207850 807035864 24902130 856871759 826479398 980349006 52826712 772442015 725759870 373856221 435621336 715182945 324890945 97736653 338729397 60191380 520188725 692329384 390826445 216679930 485734319 278084711 779541092 965988898 687242148 764716771 250151960 875044303 626897772 378985323 628674149 630108757 214222599 272949773 301859924 120155862 502091011 32312365 454576982 44356790 786665340 685691498 296034070 649263972 636039576 36315885 81469629 502634409 823182115 726323430 232590580 155319330 515248488 488693959 198036470 90777569 299252234 631740509 540813152 166936714 993335636 936185060 142906575 110865231 120692655 638428197 995961963 329927995 468843420 460176705 803834658 181029225 106065540 118734801 937354513 394025689 584734295 892418230 594444549 849024213 793957059 862456130 127946894 959357671 787884575 713079629 838340588 279655815 224955003 186710562 382186016 182346831 346360143 391147742 463994706 731929193 732924705 757479935 199813809 460262092 805023252 769268671 815316962 719184842 395986779 393243451 639800742 17179405 879886660 589638156 76464891 928621416 77797359 663598738 163120915 275475360 738911818 280364411 157495840 584781013 523175908 575352839 356798703 979853513 108878804 1466666 989851966 910463773 300091855 124367442 246566612 730285117 49773213 553955605 484304075 425237792 586474466 438536804 855853914 232720507 123314871 913181812 688577518 931192084 506995899 736790938 18071169 116459272 321269467 891091310 543431454 120282239 629679277 106837428 404740030 269117649 670645874 476376220 870743395 646456376 802372057 590030192 460550857 100758435 742106500 780624666 628568311 709622832 879947773 181187727 600968724 615769026 703067143 644567444 241649982 841280229 911376872 755741939 317070689 848518289 50766478 955631807 74466904 349779591 686360314 345641544 384401902 375581651 786669598 357767684 215214284 370268839 244297102 687191357 648043019 975637123 17068140 587325758 23738431 280152358 360384195 138041767 783592896 457950079 906262925 80258571 728248621 117153311 263057644 35636691 26943370 676304079 121113305 323839080 278340008 384676948 394812766 198494457 899955368 387877113 250904374 663331401 370201349 493869813 388758589 588899523 21358831 723800006 882684600 495488401 749486095 61301001 942546845 523926463 773516580 729078414 220485949 503274618 47495359 272879861 752338031 728041000 857995236 958636660 195498872 318889810 547267637 559820789 902584916 981336547 145838776 460508527 213155299 60098132 953846768 709940109 775442084 375360497 219382077 869545025 891080262 868878646 339832293 558817941 855264739 606255994 473463970 521707187 416091186 596839537 80090903 948698844 164673682 877388223 839933903 938736923 450253201 714631737 834430052 247014105 498515444 43866543 971748454 619931274 108769561 865761748 480544810 147034099 549123277 756520303 186167916 472611894 619783521 85009635 215549035 498908207 928587727 278552367 3729084 547230216 58252148 9259410 413133996 902113520 205329034 484201206 20998595 2053022 101843529 210099528 755588346 57032771 194551691 453367120 434867950 893171218 462318544 442103134 757398775 538101410 426826405 286374575 465917807 238334562 54385680 704206069 500013134 925959685 554141016 719567029 255842435 970019325 890547924 503746580 440740882 129124780 155171464 234595567 745158895 323554418 834573939 832419770 162162625 576447193 340765430 105973358 602279116 637143218 837532317 72654275 724801396 152477508 662675723 161202050 667822225 145865891 82816367 896600313 816077264 395265807 270570127 398182099 107693515 566120751 910127763 385772921 196695173 742029620 845332626 964589882 394424618 734705322 719071395 144481827 474022545 421427488 859092544 892833204 50221984 342908652 200485166 517028606 71641392 420045384 953227487 479380701 715114103 311485407 817510929 167170750 245340294 481147459 265236320 963200420 134174930 250962293 122119715 364933005 738654005 392036751 260580686 424356070 941240263 352015209 100150087 346719479 629890226 485936967 904819814 829499403 807548281 914439560 946834428 182881855 296020079 920106344 903236853 453035773 67195343 56248601 658183918 493384657 700945205 324213874 941411360 524812889 94330912 72237405 457955168 382181093 919358003 807623758 186426914 263185323 26394866 482960006 946485774 600126554 747638885 881499287 41578728 570380834 836948933 581936374 651610159 652902730 628910242 146387500 14345087 754475643 428485472 403756617 934508312 330300206 343830676 754844205 627795916 379683014 94262223 80845299 680740869 387037805 219539791 929032330 418520236 987464076 434941033 141533450 531806766 976621111 247191329 760637133 450416736 708755135 250267712 839660083 680557058 284007684 532664406 402551776 588419835 241742295 422406504 788725676 507374156 333304627 243309577 467827898 735178404 970002383 374558137 897678951 768326038 936700903 780594465 142033424 818620844 317524094 165820768 31994510 710775229 958009715 928856386 44619244 406321800 921556063 908718870 71458493 429746617 508172432 712849115 967501988 594665207 556615391 991302987 346170894 132708414 895102764 231571166 523856996 229122504 241247158 572638943 965245996 783587788 250087237 120682689 657267511 726972068 885668192 516679964 635084553 855246734 822409555 731291137 961388344 96536767 644599168 434723235 774196684 229915371 845355164 27498186 663195982 738991846 434133239 56501434 576020135 99405916 856971672 18648091 312030473 451674424 598022974 325335310 232393289 78610175 46000155 641384753 756042019 991346586 441427134 777466795 196523000 631691619 913339654 996618986 712811855 581904062 169845800 413741242 132346021 987313749 289620211 932867441 211736355 180031212 629912437 383354980 876017605 804153769 465692670 754073606 431585742 583850373 192743630 506671075 642623794 914899871 75127224 816117236 221928906 872321212 341932365 911740783 662126319 786607593 334150773 397765576 892620280 56767320 691890461 326410305 958957074 393614886 301316385 593934453 333571463 66259452 350915790 50907688 357406100 298665618 972264352 156619302 473233846 863696717 230228340 948624702 124679933 929864350 20283031 123634999 559011000 11569898 938082292 490579882 345186490 59436120 230180463 868571019 696686590 844959783 842974250 451766771 900012517 119774375 759452294 31586097 991646170 99413403 894446334 699877135 393369149 694146239 313785764 349604604 600951917 795264991 628914759 154698856 770493649 636682759 761136131 840093442 760063072 79597670 385905318 977699111 461512003 616368543 226453383 993171898 420326113 169207391 979070158 527284301 350262937 724056643 323590991 335078471 918931555 398636246 831713410 104871623 52568721 432164347 307932011 484568968 84228612 591162808 488194031 997482563 683698448 417014413 875444222 357507646 102777354 445988362 109603769 122760516 971364271 442394017 465159987 973064720 71304008 380332797 837141678 567352461 865139302 78797525 578283936 803863299 741591642 130018566 320603748 21011790 89790602 354165587 998054566 161692746 800585952 92929996 626351522 262283149 199673534 251091758 274138441 809225539 574924885 153827936 217148181 2534726 78603233 711528187 72225102 580709955 430270836 67311007 499569048 252004764 283608710 348312701 549515474 297019779 790646449 579495903 792902316 927187279 185114247 681003331 515343268 420018885 611123769 128911863 213536896 24098167 531036633 5243928 776632136 609403226 442142609 798474700 54602760 522171798 753081960 544820871 626246552 793615871 481941340 446285042 444080242 298899391 931564402 381373383 109133326 458849041 513868817 409183938 718609829 479015304 937341243 140670713 417590946 46194780 374028362 723395863 586074008 597030701 730411555 231094120 931947954 417338905 755555299 228566543 214682659 511616806 478920945 616950960 812817837 682872237 64959494 473551281 897808862 148868570 315996839 931260397 133216969 151215819 177437253 665652916 621843916 661157173 649071785 971682363 466203397 980994934 906209786 533239189 305277160 677440510 833632247 527043763 642109475 274013338 943800248 47812521 707930833 184923538 68957999 298683725 537421007 125265247 698824042 84209234 611001607 662232944 24701955 860849611 199112342 629567334 112536783 170477682 242534541 765927602 791373364 441468310 883062785 905895555 565195042 435837016 895240179 364259396 718545813 779739136 223818574 262870524 660883031 322218462 279621567 25615189 132596106 975996815 68524873 254548192 189030760 432710778 367300622 156423846 532251714 686089464 352375622 327350278 38565252 429832054 865442315 196891225 755603045 705555254 726957321 671439230 646991421 204399302 825637388 106930379 263264961 108997273 978991468 404220834 516893833 993792251 847914911 262607647 384826466 358815389 511534377 630429975 857154131 144648701 241875298 211436451 355389945 203077759 963077495 641700949 245243665 599728698 729994044 309900684 366873676 245740105 489659345 95391653 53576918 454379823 431360970 160898482 699470597 300601330 255940346 446967365 930632762 505762913 78231619 793250336 544854546 729439036 620859712 756651891 370268049 416090104 491382900 116017089 638735739 99214896 997460085 699409611 487455991 132327460 255169035 487350823 503985846 593639256 383546121 550727267 132442593 57585525 278983159 309954742 35832116 128023708 702629172 334186326 445528236 77026047 53993263 542850827 138181724 580376761 414180304 257069284 1593930 835160464 795217713 218731754 146303851 981209124 936926166 542414534 264963074 903889731 517824419 957592583 288715967 90552456 777554761 90297779 242962737 331947927 776046389 399355931 465903461 470714807 432425945 530256404 894185828 18137569 174325146 461638028 716493960 498483892 518477893 326722542 765696372 99550864 152051586 481525388 334162769 292152488 780186213 90394872 132606986 512737406 589913963 29742560 240568688 623396155 793280196 393394675 294157125 295720788 467515991 396813496 70113318 356210411 787140377 921381983 465124402 745881076 962470210 642940939 699862598 76034072 380889663 878287625 839330389 435224033 92655969 353840648 467277661 16660710 244757118 694844570 939764920 899003356 635219886 10662718 737732769 680128098 744759951 838311543 530123261 467779452 781217617 981167357 720780244 354149195 749018930 683544420 240402584 223437232 932536833 617927837 232824253 78251156 374220827 462386834 434055207 201333673 908437681 149600060 855858245 626371683 156139848 325205164 591290125 764169556 881044772 349583705 696697607 468051982 38547760 98021163 677886556 623941365 421648527 210907020 1793128 196968402 242812129 753983365 689729801 927327664 519960762 791686456 192750659 811751191 695810403 409724447 103044305 33474506 990032076 837458967 757766256 802730890 412913245 697014944 725788677 506882699 657792137 64021996 369912352 474822776 427825997 920947058 361727827 440089167 101960716 577000266 679511534 541785646 957592845 239167627 442443915 605286238 763693085 550057853 258634326 123515860 87137672 477780917 248405114 798228720 969071275 977118896 166775479 700311018 548889450 511123520 241570369 613978118 109877622 202424931 328375308 536938815 215086300 956508196 419849512 89253846 76851044 582284848 138308198 635960348 529583825 58845972 975100040 684280709 442734218 32108035 967595336 919326383 23571233 830826903 333133665 101403494 67464683 89303116 509321221 135936993 526487650 526178854 885255709 304168716 76933764 250538949 741116684 976812698 740619843 264224170 820495455 155090578 390065351 690601412 108150421 780350376 420561937 471851197 621101876 307541584 515043611 511122226 600732547 382595042 147744704 31843179 527689144 797779472 700774090 410011382 663301887 369492511 465585283 813779524 834166369 251097397 932435384 70819284 121045979 31153256 402088164 891834617 79056136 592665477 148920819 77867209 906744896 812506866 553918712 121322867 444306522 340419872 964364128 670135414 493576829 790160207 188245469 622682213 306106053 265895073 118142393 606253008 244283822 969934888 338792419 575105510 192482999 838513521 620072205 489060234 394055442 969984652 215339331 679510208 546339854 930175293 654122216 57114212 589011964 17534082 203118842 828748309 261859817 764650747 242561413 855143233 700017756 343976473 777064797 645678519 363968481 121675868 652187266 294196916 276308666 954354752 696761653 133647836 904178090 395373790 225469268 40763638 995928373 319733270 261510917 512900181 818442059 132382536 279222522 652208825 601317477 182294948 343765694 809101923 739590575 523600219 574084024 643540537 544216033 297762438 138729765 478557242 684592556 642676041 282829313 369172161 635551291 5510195 291735072 453097814 203456402 774394197 366362287 525260131 167021395 655575110 888019140 227593614 970395599 45030197 870811125 742422897 406428984 831768307 929904231 265783049 256326373 431603225 862743978 404695025 433398320 283332861 630327225 901186986 766758032 226391397 5593091 256314538 998571067 646909502 736790540 958883800 409583474 610802384 841094805 618466631 322069153 64490874 369736298 859035770 873626415 145907702 508710042 289590931 524374583 312982888 628525044 219454325 665181987 484475111 828437562 674392382 461355067 593229635 40191406 728764605 512530570 20216643 505250249 578704614 182438644 282911832 765148761 524249021 791526401 823573533 942284559 176776548 702644914 517112082 263822146 13842715 711473163 797061689 974852323 600390634 399467451 230694787 583913137 119275238 27852390 464809034 901316333 508606144 868543499 354104340 528844896 661850151 400526616 825308169 53712751 752007534 373432481 672222961 907600718 132703284 279224333 71050698 1940222 334470239 251971915 882176629 788993874 188033537 712422493 472656704 770318604 817666781 145042583 245176488 593671730 828672050 153285282 965913286 4161986 256379052 14355625 39889828 817901552 905993125 557117689 44963138 528670723 56146788 159580746 799124387 31951478 567994146 289987472 239138421 492846341 7237139 565565995 915169259 509007539 456819858 761827677 577717385 678297929 221712377 686627420 896169247 29381754 368085942 644281861 535387225 312377342 333359870 388457405 513492540 896568687 434744331 32278220 46877820 61558880 469118523 601723809 32441202 848997075 793946177 871693373 12939080 641462037 863315650 815406553 556396673 700144703 970997869 995151213 259244002 390501865 488952343 790993047 890732129 174953794 368574336 303699279 901234917 162089414 853880223 91131770 415021895 949231793 378200119 137106999 289480391 105524439 406375036 667027379 477274744 206748455 47278182 75528689 576726662 435928309 716070601 231432721 8757743 636122638 887674879 194606668 761615651 354061467 270309561 905183902 425491904 513606945 663987221 911447159 310647521 133045136 672777346 516122348 751105231 448692981 413700421 252714429 209432169 64402055 218055781 718688848 707269348 761198056 756045042 276052151 952969209 233876308 125727741 905159087 138746597 172100154 594611697 125497914 270899422 471364320 491209092 581573192 713048952 11917068 993813108 713827587 622193504 157685694 318792814 372981485 137885527 554094415 24633269 763516313 228373533 626758809 146870505 800091982 209519090 605883061 55114923 444084635 63955864 388710419 102362217 917450836 187200651 608304270 141904171 846349601 424159382 661569766 489297220 455547158 714021784 527159709 636690109 612938745 533864175 458999331 442586692 395438071 299645097 989521812 322081626 618768494 464765084 694077227 494756134 150673360 954843211 601335280 366375337 413556484 935988781 165166782 846505747 969669223 73051410 646946276 712695109 54947899 752763567 845966413 983600401 715849077 352329982 634668773 895583979 160363304 550551041 879127719 589908376 141009753 123623562 550398238 579392420 759532235 978960639 208730530 299665964 761848128 224465411 166162401 353523932 18821155 797281300 71541664 687591531 601620267 761710271 556686646 687278156 211463013 639656920 607220993 354233428 199114356 162827958 821243563 177337518 91496822 673833302 188698053 180251841 684332297 41955030 778521026 273976739 580661987 734068334 691241948 215054482 616867904 108627572 369516120 646730816 5729460 662143839 350600988 803484516 870415373 370403683 420612522 857700230 923828740 506671964 978277873 278667064 443068571 754350434 217440320 155602610 774657948 982608575 556649551 747362691 440224545 232679303 721555996 825649057 80114496 81387891 497733398 645088511 738196786 356462416 143415856 168354419 21280259 877663437 875870020 432459951 164971584 465460973 884888213 837807715 347982753 250496932 435514034 187137286 302742268 961680254 222150280 53732600 364852723 602810144 417653671 698357294 469401946 375270379 761507515 883534913 534034171 310612210 921923734 248980243 723194568 106061415 532196226 445235720 751826498 114779457 999873324 512442253 562970732 215273127 432369815 387705933 691746835 142445689 157113468 360623708 697310312 768483674 108457384 820586859 417750235 586535595 133804249 604566015 680562523 117661305 903378242 470774029 178637583 534308611 371379292 755827360 672184731 632751366 855314223 796146795 287092397 832153402 92169858 353863084 970429034 838926931 1522256 648567844 239188753 593894094 25981853 538751241 735245791 556841272 642242967 270272712 600607423 894546104 203592297 558125270 657664974 261187322 46567599 197551524 723828562 456736883 721150781 738678062 201914382 729426607 823163079 484304634 530401547 797301270 593104720 186484790 81885144 539796941 314052176 140500340 966426331 565976795 14881599 531601339 99291251 271326245 18573238 380437580 409995041 987835056 408957981 876863122 23028884 760813313 478790998 152113282 362595347 4451878 117293152 651498691 815808576 33171995 291417115 674978475 661100017 719628656 717894483 262654745 740131834 381631728 561087548 163404603 655660455 680320965 105605189 120097808 839389872 982967106 487198780 197951778 141236251 166784008 776298620 511804304 466343362 22111501 213145461 37679455 672362787 442463393 302348497 972985103 881901195 757892842 264532108 481452392 783590043 819319430 571095395 21639528 198978893 262968750 353334883 919640994 182901308 515119939 900244343 697378571 813521043 797708469 908407210 841303522 864760897 52026632 881754598 426303111 914123311 227111962 878447986 7529963 596047786 275488671 653765370 198617380 908546308 532977982 786922341 757801442 629853302 842831808 904305316 720966233 869606880 618191454 854073039 616039555 817905721 462480526 216913209 968344709 724900238 398423112 645250954 37887130 977793285 153367532 961182194 937519628 554248267 674243301 730486540 142566778 171237168 662445809 931980791 189787885 148078901 985878817 168911979 647919920 657069197 355502792 493031945 532162323 6884576 868724748 718721767 390338074 807909282 646669215 841070780 631662955 82911007 902535269 82390879 3241943 967828764 571412279 76909878 312547859 651945084 943651666 805375282 861606997 178264502 164933772 201444409 842534082 845695080 582911793 363757353 705960561 103095553 60151118 481051159 516277527 839564192 449554454 912794456 984174412 783418122 995905058 820105559 870922709 959185237 57234177 373047016 971544839 11165352 566405655 163044510 453283743 91547370 37298110 545347849 212437694 356263548 404411522 58461252 771018250 113400432 101183239 503156753 344630929 441321498 19821373 770944183 655982826 814694516 50981675 683374566 882088766 253236950 489075156 675642020 360123279 907730869 458034750 126173128 191587887 473591027 421687585 575312585 173346899 105327130 265989454 653415680 411189835 497111663 334844810 133812559 18148465 341522693 945364777 606661936 410949812 141458499 438508854 976805574 67823277 828770173 292138567 964368662 273650952 314435130 651425277 414031966 133146234 488273131 243205430 861249791 233871520 869090018 171917576 643943526 401910638 36094126 191764291 938703842 390195521 524211890 295240810 367106830 699532509 991155570 772554094 713159838 727973032 318756239 24569360 569890442 188080655 828465879 311745907 928549326 683333156 759598853 313028980 106678606 350075946 709707041 844132045 798259539 587476699 389041060 540613777 883076587 291269125 374255117 715711177 336735887 853673711 800386467 270866396 725776994 638734901 738189989 452715433 414340189 11693758 330204423 672869286 257102699 821760942 208673013 331723723 40015683 684417514 749100138 688786289 28724789 445781837 957711670 396178813 121160187 124416324 914721636 634387841 925880898 129248244 777672784 759813282 175832075 814414820 654969297 480848910 341041108 429556636 187802978 355179677 722458988 355778876 192904387 76666924 284231699 213547594 863921093 726533744 47094244 980915483 407165237 939142819 620157307 76773773 495088139 90420618 9323826 560115593 816993087 384591833 293545728 626025355 522144140 335319748 502329935 745928757 223853961 864905025 677735775 898724843 615610167 785192779 566011069 989554963 454385022 16504842 555617332 475896292 657655740 866366224 104942864 913268600 63850825 244076543 438198172 320882991 37334009 851460712 75281927 727137584 787937964 993321231 561325158 972323537 717408933 356690847 72206767 304364471 600025445 270879072 805319900 144246952 615698464 91214543 891970301 420427837 146620210 489697994 811542960 447985542 144506522 206032588 26668651 394721006 371713708 531770075 321014613 231070222 186203727 646439862 797628875 736413716 358732302 353340704 383799400 380577125 769817791 642418786 613234416 401148132 642891579 902240843 170455624 679007758 668590000 464887355 310192962 848513247 829202830 663470138 741975255 696655611 570595020 221452867 707442194 623362037 256732160 263905727 932859380 551809522 894775773 718441354 389647279 128840296 823862601 731046259 414228436 491908509 987543226 855509471 158291015 37011165 716605913 533649359 314759884 803973182 252953722 67367668 112439239 703057415 380373826 655714842 349754121 280941606 205427087 373379477 383128507 29510242 594433814 631139603 291289234 341723901 957008907 405229689 545107965 485234331 167156198 65399575 25599404 476548718 417802526 102486356 452874836 666718051 433335916 916458781 213585889 232874193 929567851 245685533 733022189 453162978 794672861 741978484 233728062 710960174 491195894 33952925 574724838 158060197 183831949 792337158 53632420 746212297 325151201 265622547 711438378 750061465 872421808 43503843 40674726 699517952 727086236 749641903 258382310 799900717 508187580 654905142 171114074 87557831 393709605 302540537 282296071 107158726 392651639 354379026 620664418 646380165 361321082 913184673 610623983 747943444 722296465 79492415 793371571 102757902 704852360 198417898 644492882 362061498 244583007 450866596 76416094 84193732 327516079 567436329 744436541 482066354 497021525 735341168 444781861 883988061 598702325 183018398 644545512 596439160 705638811 374039162 412764188 9732362 333164730 565851871 709219922 894595999 438819081 87860828 278015523 468319996 132556917 807892837 426996532 515006468 368161279 983342591 440764900 801294132 229196641 360425053 84676169 965345310 104393483 219055278 445590500 407069855 685033542 349063055 587708664 612610759 254813043 243858827 719974149 972482755 370241060 788083989 504023315 300191675 503145390 158179587 139526001 556827522 843288443 907306903 540079725 538537790 527201206 449514808 775152383 622026862 86901989 323918068 799060777 717310171 315659953 192301162 135014960 239734336 752828268 524963293 110291169 563199041 490809446 618416837 581709025 462161926 90092989 756877701 145667066 989917480 623716968 545264215 196583128 43857935 32461867 63668063 18301959 485947759 231339305 334650594 268963969 926219487 311144596 311886644 478171700 720445249 241626888 248398380 862212266 871503191 683369286 535470827 996722116 976980323 393705960 315042290 37925173 790352900 405228550 411124975 450185229 974589443 859651245 780210916 336597896 456320522 12544971 946312372 692859235 347039287 449381144 847432048 895820054 103198279 272385617 618608487 620941288 514736845 540609036 228990175 886116556 228160245 984486621 682764775 933231309 326424682 332345059 538922652 944958589 698925091 369469320 330369044 832999115 361601996 79242694 200493310 849155916 940398980 439461262 359164187 630939157 611307349 308697422 412360840 992910169 347318596 166615780 819884255 257406499 790589890 717118688 536403249 681268489 237222510 802679417 109627314 606734963 597502192 1627642 936024100 35344311 504724874 741553736 25280915 537315761 187887035 636576889 35417198 887647261 516405141 796098528 794659178 336691167 359759179 309051498 775459871 610482941 275619895 555614655 270976921 883168857 959787633 84076845 582210465 728642231 616130485 501568975 978320363 428567778 234345854 696831099 396187741 64318208 764649825 259447586 662134869 606253967 678121368 559746166 404843666 296191421 772270856 159942278 26039370 449937303 607157239 72251333 832107352 27385728 71024370 664974453 927924328 354780174 740772230 218984230 914260998 624870744 574887663 650266749 95154352 560621478 468290313 695463798 406684187 608875990 539437206 65429020 68808012 727759831 350429365 351587577 334309057 647160796 241203485 314617459 29379393 554572002 980199391 587213486 900158017 464245497 343398455 858587795 830248900 534107104 461607501 951135460 301066312 407315416 560940967 426038025 314338804 138831084 843106541 668964331 510234060 554030608 590662101 321814357 851455765 193233333 346464528 63079233 684064288 188626932 738281995 66659434 666292415 898641971 349749200 330170945 478635052 826776339 714538496 489064225 880553138 735805709 801764933 449409485 719956316 979162167 635978748 100666925 473244990 598579582 739391735 475566139 946727592 373190325 757174975 911205387 826550663 226245339 976839241 73918567 284018068 82106886 139860482 686057687 751993651 7174837 481854935 760159256 252722200 260119749 412754716 35019215 820988378 27669054 608393629 783455111 491683449 453101274 167436245 948117706 346012429 68227879 744817450 860997068 19079482 640951736 156773406 246229603 916726506 534296520 440411310 76310439 775827872 49203035 206314896 443121859 423109818 636358519 577102130 304692431 605124869 235074583 742665458 357578848 487238186 739070858 328892974 396842011 45525902 640811702 684259553 663723599 373784876 124254996 385147291 186298893 474477575 6998667 234186645 90753178 313010945 324446265 136185484 191577929 209934606 530019063 562815397 629866864 433414742 541492092 717739190 584040426 454390007 779010625 414115006 558534424 796527508 160757331 281411490 715927302 342651915 940922834 871481441 831781336 361983973 388447495 609638057 467566018 211100525 825278046 870606210 390817356 558293621 725946914 50668697 999597198 898790299 573934268 305880206 599720082 820460273 997310186 183699856 47507212 932296746 43548685 18606249 749129500 114411803 104681987 25716167 85801872 317030533 733735910 797141672 947727183 263590235 979677791 905003781 999446334 759525326 327918355 519207628 305166647 673798699 989949529 635908394 109940607 232110258 77034343 524481190 969133882 620326818 229907508 90312855 222818115 431141553 444270349 95078203 80707148 165622982 2022706 666642303 889939800 97218811 963039807 334379091 804528630 962189957 63019328 236077873 240230425 315250691 364545795 961216358 621197789 42928456 59763735 246608714 294314095 751156887 138892522 834215649 97629097 66833120 194961418 157315134 557768456 156703965 614713462 215766140 990394745 207292217 96027342 883058856 546212314 401468669 309707985 881099648 442105694 259466831 22937745 741996114 317575092 44688664 435060950 314292897 754820658 587192177 261996737 958637541 504643341 771926967 879464674 735477519 452780173 863773023 152479206 342341774 888750781 410984102 748707343 731066055 17189223 229836134 302969715 275509792 596174827 876799330 329311690 87187108 175870110 633947264 482511606 678072963 254983478 833994536 865478931 788832208 349629747 34206344 325560627 44252927 268254394 485793910 172218196 739184200 294133578 583199237 225389790 704712374 654389672 303074336 598084317 17702853 748843210 374557984 260948046 835286416 477418801 123312795 381152730 839188474 974520875 838359627 755907957 889298949 951866282 246213529 768187189 952870572 936698290 448491055 528237951 860425360 879637351 464450168 819533504 59774546 630217508 344782842 817505651 128087549 997647635 37372942 877030994 572969579 143806458 8386254 439608657 983427915 100347105 817043127 458431333 407647849 667731697 771920879 605133843 747676232 432824899 253370479 820201193 611947680 974009436 119207076 563640211 412494194 475301856 25899021 564397287 861899239 477386522 44643518 888346062 40337073 730169570 845984720 316325207 961767887 1723917 408076344 41742041 321937680 887284551 479762270 636243980 683458818 446084165 546197420 328010917 629243759 471117440 653667782 233973170 925997733 340622283 261863281 286609532 641727132 102980364 265252649 627960324 626552690 613723097 562930648 187239168 983845263 682435380 652520595 224907902 372833740 432230102 820764213 321414362 99043416 59961532 948150173 940896870 937872517 699560012 604856416 992021090 175278639 625002290 560522180 438123581 203984210 591237056 323095608 471743585 575572955 266636110 886897387 17837785 546923889 57993519 430486557 829596171 891769245 856169888 796134249 114497324 938551751 783890281 261791073 960192440 864169997 837921482 329801249 321151263 954766244 120967256 557195711 631771128 231104058 907133000 102834357 662371438 634965896 11538257 994298232 643320396 744122382 177151111 30885009 225351867 247111785 885947436 338426559 15874904 491538960 925947923 120533999 441844218 105864766 222479008 436020314 102872292 910568055 55073499 620743746 910950947 300043624 131513830 958913425 25721632 103820846 865422230 321092744 415348555 494728382 876609455 187558674 99493403 988342538 103295409 700057536 416807557 72971758 788312202 386053805 229732001 422963728 114861658 591317095 581506749 810991280 397935249 911928698 906526950 64727082 665430897 295047094 828271151 515660362 784432001 34925018 52891364 686361974 329190386 784535088 687441791 979882126 248527178 974036461 489263557 592435497 542123839 545003100 156420956 567577052 690178915 140085721 143341637 157436242 96440679 960459852 840883822 166802692 95695993 212937103 304101316 37008364 237007249 63121482 893854167 159175720 406384268 74085254 490504230 869132206 415765924 898044062 79719359 969560516 485434889 661383529 285916147 601321995 547239350 667727175 447255621 585830106 994391746 209288695 160643762 414064927 348746718 666479239 177574464 319613866 84826813 553836467 694196108 304832880 290368957 488785239 289978443 347078941 704723711 253736120 762818739 893895812 860886356 71041768 499637995 147567452 633151622 978073561 516612090 538183347 824602861 528251668 54475537 563267130 276248244 793202597 586713501 323937349 416728457 971972293 989260696 86774721 446774213 848519448 727743515 77312090 971782337 743007145 782915008 478407836 190602702 312725683 658438867 509704153 254191393 205593100 588089826 349777998 797735430 438454869 81992724 436537548 934477062 52625405 378921478 806948866 508989043 242925071 662031614 551941354 561031613 449538425 943897018 630660476 127747035 32759441 906699485 699412805 590970887 982670223 445729307 664586920 386230266 433382489 537756997 987145169 259574453 437380252 796536397 811280611 844498541 802439564 801135301 61428881 470271355 870085959 792684092 964067841 843793246 801493468 239309345 545036791 97583880 620699192 357421744 797975914 382345057 253111422 233029756 105963337 227733152 701765331 167959176 607436614 683465547 218151455 352899751 257740959 511793428 234241953 981261193 172534091 858418238 197416799 523988576 271229188 73656793 700650231 998948197 721806926 137920709 72892021 376745258 356499809 239605241 615244567 735269966 582827325 164599113 899521709 589844793 637724327 369194230 749188087 620152220 56492708 770141762 28844388 848331101 311221048 160609280 861119356 434915069 587095870 889719982 709210346 503510633 731162572 725898628 797136397 672358850 153548686 597205591 608902544 985530278 691602859 872254863 910036978 18771190 503509389 409207087 762046440 909496876 597065121 504186725 542428487 799933106 194897648 962446261 864374662 381963583 119336164 279499658 11438403 5623744 516703923 170870051 58764682 176098339 224971698 393175895 516632123 706580331 628274611 264977329 381408889 378731242 64076491 53743821 559441976 190870283 634177825 994031718 147582006 80709769 925777806 314746987 148429658 422916584 479764373 733505894 305900499 265220997 9620661 406756779 725204066 525300847 824567222 309395178 390427490 693788288 385304950 858372482 460819500 431964838 504055443 419931420 917047735 427269248 636535987 961358386 402537210 141104884 172441945 235045302 85640484 314964148 951573563 877931357 261704465 688705781 517786478 396402466 923972400 582365652 666411474 842093842 826503736 684369370 925073624 337889190 636405420 35624160 261777043 217669871 876889751 353600730 945687354 157513873 208108818 989857218 213194893 6249761 459478063 564460028 777214194 901086310 492847453 387790698 200260229 957551633 927712379 98846725 711086939 691840413 863283623 552321349 73460372 962505741 614290332 178574583 729841193 366263572 230302034 74249732 25970748 635364131 394776415 974172204 683019164 34599676 47380586 54976538 871641917 347938004 597848584 668544510 57625966 878889029 437596943 751065878 869881432 704738133 754351379 708271550 938266562 834347481 423549151 745227161 841062087 643917171 311845599 391733855 556235126 909030449 156190709 192470248 150925193 27061944 259403878 418285342 561314650 772286075 569470493 644157789 838437899 900491546 869939075 338109260 993394825 452209301 563394075 448969173 481297129 342033696 72228223 531714564 795626947 387827088 548301108 726458542 761698846 777455528 780708977 859640876 626166155 334043213 380784673 511395302 760843581 452079407 641156042 573746664 604865322 233839348 578085032 414976597 240791302 904692599 51160057 233550072 701889980 884935990 853399593 50050023 524600082 118292832 497817145 793841408 453820921 939141966 614354803 609885596 739203449 181112555 566874138 464345648 264492835 639379752 129432505 541155216 990041183 466375996 997073675 303336200 741747002 10456055 140707125 323538043 534735492 103924902 631641258 187579260 887553043 933433238 717838076 261335165 244315338 446043538 402286885 96089257 697722181 718832047 327356857 841905237 6502673 274316384 919144364 202091066 626990961 163087591 120726542 782310947 643106640 949864218 936720191 405284559 512799872 425708906 413862563 367256276 791108219 163605250 520901160 477545080 236242279 256652955 905213425 183871100 419985201 171544140 282498798 239449419 851023411 13259475 918448045 266806531 889193580 750375272 473341300 91775932 187612136 39414919 709773660 227862018 746049772 281607040 863732597 83627964 27281771 460380674 39982957 368406672 530542130 263124207 744236455 243420691 169949237 857636623 666765665 360250121 63411975 377766711 126634844 320188195 543367629 820948252 171910566 608487072 199990463 574033336 697829991 579122111 626740385 178778342 952713690 278887932 769152113 673484457 417065538 674703881 485544238 845411199 424324045 856594387 946424349 765537935 915640900 241574975 470288184 302420898 555352862 761634822 929251297 808382897 713933892 841930283 625629868 275170925 67892331 747230033 689862184 569401662 752772551 530478966 459985885 264025059 157811070 330008033 492407320 86217877 190770922 966060959 6576626 404748780 315342153 311515787 68246335 165977024 240197885 339461588 834669894 458618465 2029870 924256512 825706267 406444677 239735049 387452055 3839245 294758497 648006706 776804753 339534834 784244647 481921651 394987671 245968420 379929072 929783655 510665208 43738170 508914980 138221512 819402267 763494030 184476811 268028607 288840935 430933824 327935867 562142903 725769970 815278886 127112118 187449367 405553405 585547591 306484766 266561873 341667644 713897172 474418663 36868092 653941810 956616936 947485778 791725694 914764548 26566029 253195680 155508141 796729966 745519612 292771327 759861793 836281393 818217394 791233500 576218110 733294802 213370100 165725441 779268260 292382428 138195081 247786249 569172766 429662377 55931346 311140780 575294838 965386525 111351647 347739762 465986717 504196954 430398529 669305844 548454334 372456792 23533691 252304437 237371413 89111178 372754127 204727806 729633587 783276564 999006241 832402796 734597512 788498133 338715219 195106955 674197975 222471106 785365961 692660941 906573330 87454336 271101015 989375563 573174613 639903578 35171441 984232743 980239795 200670861 553304437 994864628 610760826 636523798 667065030 820058171 769587585 419028504 890855035 268611052 869527862 643727372 976686915 279039137 179603064 255417311 203271410 270178610 795575173 123190034 632424777 140775332 381816761 279582506 25593433 152866395 157229059 699297990 27784858 225232074 501236113 329203206 273021925 344365160 938994426 706814783 240139017 160633452 136382153 540229643 142585156 963719388 475194047 167619939 481677234 187468649 194830661 238142653 424815203 527858097 908008015 2171505 616149284 733106123 169333417 272570578 938381514 267890997 419107311 183850888 35043218 913569841 348419586 435285556 623442141 11791034 666340976 695106371 713359506 761252162 582040467 933805072 68294601 599152567 595342798 427869071 80666442 230350080 641417654 394005608 190465777 350954531 54235194 114247908 182401056 966075927 546638135 368544107 162868084 745770113 513445795 971354739 310108161 351075810 986745079 789303477 951742979 809231952 252014895 675471704 632132401 703174779 469656391 982729157 137384781 315703913 745674185 326527447 962866049 924417634 972616996 883532748 442137840 812934538 893855148 879362982 327801620 354242088 354107482 188247118 946488613 241989512 914371516 587880232 67824326 992056300 189343907 681859405 145530340 389574240 397294354 940631147 896838793 897597301 959851877 672364203 315549124 948923458 769543773 955980658 834717769 212951033 294963398 986126520 575789258 816152230 915185136 681164164 849869033 738647489 208176697 293237271 61134593 379314465 152583061 398892227 121145282 643288150 339738018 129112548 718612520 205033976 434892209 560691213 551331172 75842318 644531546 216529103 933169469 168269664 730574260 408929758 361285314 370283627 365706746 183802184 517326599 802870626 738501960 73470104 647007798 448186819 382113376 150055910 494464023 280806997 444150816 105039693 897120808 14889110 319661632 53660399 385233230 348578653 875931508 384445362 788151562 871770346 447618454 365415882 522604545 22332185 641911771 153124300 442865614 688319799 871314988 348077143 366457781 416663568 651121558 956731463 155428007 112696784 381322926 540754719 290130616 714832766 291245064 802071926 124357388 147275128 358596151 142465771 337530335 297295855 516974142 687530520 383342072 535844838 647611895 947854215 993923879 409380148 652380748 310714850 528292529 788920148 844464084 217962855 55158620 815430480 358825162 762592759 670785143 677248224 153197442 460236520 234875942 266699960 989196632 243492540 766524695 905118434 112078923 164037989 505500298 584906657 284136581 511876978 103672255 821682579 180346219 616830806 126495566 245220485 728952740 198677775 216728077 478525993 816424085 440278537 14560226 703010498 466627837 730048216 422073393 665095851 586072856 961512582 821641747 660225282 342757269 875829698 413202049 306004537 388881458 153472527 940548982 545444983 89314465 572823629 144979142 32459288 592446901 948205459 669332070 12130101 45916921 39262903 15321519 629359927 795082973 261080310 338595581 301223443 522595711 645225177 323315724 867695340 810693392 605975248 316961614 595058132 42892433 425240362 295978030 890566611 844653329 233718065 195958333 6107786 236136370 828595172 269675777 737804207 248865563 659561934 725622921 722893404 157336901 735791347 25760987 648646931 818671248 429975385 739562252 155699194 676969840 727200667 100348164 616563251 88790267 158661341 116934914 147480537 504059778 672913114 163220611 934760568 657396905 447024062 8341016 118381743 859555923 421146829 482732573 797540111 481437849 373739262 103661919 245016964 188268511 482728933 619262309 44689550 27204768 939831085 419219567 281577022 584904770 331898815 446542053 694490371 512208624 350079827 674352638 682103741 528295458 625958026 660124551 37686422 156143412 994347771 496396797 532456558 195230145 982924538 158758472 841909316 818420262 116328498 19569204 107011098 830615891 224019429 803679623 272569580 959325247 951428315 83128443 632489350 462647866 862665328 550269206 614950347 620063694 795147823 337398653 33217399 155200534 332682275 363403360 806017127 490320678 216060973 387711590 871546522 309714325 331121287 190162216 252334645 902376655 137531818 541713908 729854527 677565125 28890597 700554758 224220730 34854092 258125576 371261084 843604861 375270178 468991879 681502302 924594584 833923364 342800167 357618632 383620528 267228896 532109818 783578287 380047930 80904900 978850758 992488739 321380348 269045124 158962568 168358959 441890499 180067377 535301345 602812082 181508143 279453580 365692184 826216408 589433884 701165536 388506159 946655655 782862987 272941765 633241263 275596919 808839850 618957807 614611733 859695418 908973139 470325153 425809541 422944605 176039086 394349856 583007572 504765259 385531805 158473188 446275622 969350206 588215513 193114618 947568903 108560941 177371738 794734622 734285262 516458435 219254521 103046771 675326742 645839346 516902917 209548978 621408231 159599437 182676559 231547087 514850286 261953478 68541044 833317281 298859253 826878437 275200810 63169175 75250833 540052910 227268523 500749678 488164400 314934949 869039366 579075854 648882313 831737879 43727279 755456016 747699590 860177197 789142959 334526740 484631111 953612290 3577540 827683307 563871262 388248964 265398473 183168826 735673275 674907051 945730580 179582729 901922477 708369227 809553913 99093714 333422638 350338811 897951406 4128470 821319565 623290122 154292247 514055800 831816107 287237902 95468804 330503156 306553126 340232094 756124215 137056400 533849972 75515830 947098839 446182882 95017611 108526145 256645869 824371294 44211996 240815669 812920254 464486824 911309286 879671058 930905446 989823147 352466286 682885070 437331625 449242513 116727428 617999723 550222045 405305455 672472695 714744506 495763767 934144230 377413019 108311721 770997563 604656979 472984577 871263 641928498 347027686 559908053 675290445 977793111 705161284 925532881 537352719 552546567 622671930 619768610 226540505 156402204 488449457 735803092 12165049 949176158 95584815 370761392 548677493 842880460 472195134 905079492 348333000 294404508 90130068 302813869 471692681 144521616 315445572 273130622 305173847 359839644 245588348 144308158 429033821 601836474 459496554 743268825 810050459 777046628 160091049 313182527 12628354 498292232 987435479 339468567 987038467 449924111 631261483 274782145 757446223 287855074 261038821 260309718 671072925 412499629 545112907 242216763 655235111 116935974 509517770 275893650 816445714 771179670 18032201 333247887 141481873 450536084 745489928 239635554 549814039 832601046 953051170 499640676 502264791 374406040 931813401 446553007 40358961 392176884 913915258 511194405 806628992 422500155 314823440 623729845 333769877 156444908 810033736 15611213 67726388 963676061 82193473 900725836 813862817 351041074 21078310 188259208 975657533 726648001 111493098 171327122 72208012 763322406 337322168 248931774 866120143 196095494 536423563 380381994 413155330 241977412 93861756 51814481 129029283 796223285 625001225 553219412 519099585 870973404 988089312 836912605 451016417 595685027 285505727 269475831 887317570 188422919 404639947 990639858 996563609 499412015 414782883 929021600 370850540 408451331 922027676 25049558 798444772 8539273 621259095 13126907 550618808 465876020 182012244 592917356 235067206 399580470 817105543 146388169 710991543 626332835 647090020 38073619 729347855 338080246 839438481 685530580 289604756 573882873 410539612 169373106 387743657 167022514 974765552 951338917 246747556 976825231 866206437 323610590 586216202 288122108 487593469 462400584 163488590 191679189 707949918 256434111 79870408 455627159 953441040 917326376 119109001 749812615 98278673 468025320 904351222 380276233 951215331 352206758 243121136 317127034 76110156 947697902 284421160 115332285 729322785 775247125 693261597 265909237 367252667 927284221 34799048 692828394 918685449 367012211 696388033 499246407 55373383 975535734 205437505 726004034 900325186 84569868 159396470 238831266 192266686 155171447 100231753 541347342 491864522 324744246 181222969 896748358 331636349 483035638 974559269 881694828 791567745 68948978 410528462 746931461 888809208 859525377 822857013 819832959 176917445 689747616 485733977 582397927 899029201 337313582 466480641 610250413 648250069 924454998 527872247 373394702 286332981 984068786 552783988 795730458 779636809 720017893 776199395 336327249 68248753 448023557 992847191 186090663 650738885 612500076 64209913 641390695 380404679 282691244 966100834 677919784 276590889 928368789 132785992 111005727 142600475 394202680 666947524 14388702 211123886 388988618 853450488 297141535 598235489 203726928 935708291 606730786 457042914 131408606 976248713 207081497 685137916 356830254 792420328 751670755 600414386 715968014 762403800 497779889 856686270 633666968 793157116 688061467 525364070 923792340 527911039 630680807 584818356 316468319 368082941 934931331 726866644 196245598 751316652 438302984 277268218 985948917 507939360 833410909 429629703 203336465 9028200 910238144 192874292 558735999 421717830 309678207 576472339 831662065 70564924 360633703 444207378 570023658 292973450 485912533 532681637 429706087 767464440 800268139 283909656 617206933 516711711 550198743 658542746 50912601 58496561 454130354 851720250 940424327 177536950 30967158 917989868 276544352 455300855 151522739 571446423 63570207 964349593 346946556 76695803 150268433 224955807 493518012 823264863 208538291 28219865 831499119 920301741 35402448 23884446 521960174 983113592 546909439 63862685 600081376 958741932 606928069 10898034 431084496 357175095 530726096 161813742 868093433 633676375 736960320 814528944 342856141 420619502 933495618 293721528 436447463 836688333 445540809 800006710 605687212 115270722 892748368 621818592 80299155 157178801 164856978 155820496 451137825 999710696 379758411 374194435 699021676 936384942 768042569 692351018 946910455 495911079 59298483 736632424 835425175 353521396 721103285 840891223 982478905 994139379 337591356 79269182 563236752 521712897 148141307 833144508 299649068 129027852 987231748 804967170 948788621 379773955 374180954 80331321 437471663 582185195 270258238 515936164 34046400 526748493 81908894 708901536 886361790 84005903 470389509 80989220 930410251 36779152 270065979 421140453 577771857 949636811 11801579 615993877 111439978 773603855 437390505 143777854 753674555 336091579 502629436 794051070 662279979 522177846 293768565 640855749 206350757 602243667 535836482 896485472 790211639 62419116 528254500 72795998 913581839 374793147 923094476 93968529 809305801 657360534 518072792 196892124 846485117 564156042 847885037 903235594 249763063 223959537 45550818 605007339 303464809 22989887 425613096 530616381 951971231 538673510 544212186 300816861 998044623 449295322 834865407 376609359 134413194 814361580 752704648 550203966 763835263 496284342 260389592 660612925 693854060 981437874 248825126 484339156 783660241 618977666 145791847 251213408 524499490 127257082 203716152 138405026 778532683 402429780 980008608 577865415 19498142 834665563 351825268 475619025 255804417 73878403 507505965 450213654 844886541 430776987 760846176 50935863 706764593 440969453 573816598 346714457 979049751 146856117 352326600 429229987 862394071 868206758 902464142 650390745 314687717 2417549 158809070 388079108 808467587 417139587 225607098 698475874 862569459 765506278 671807009 160575635 682265038 333978488 508872530 627751798 431976451 179353612 707162414 58434010 285793106 217865918 857641331 873996182 929177021 626827870 392327413 361240112 138336475 965330674 689717916 900152748 917751271 667257420 959388489 626934960 87551863 547491798 617907275 132171212 699625067 429320240 670512095 374645306 683693839 534312309 769215468 42918245 811220698 633165089 318495153 588926964 921853077 570306412 365592388 564686690 753480295 564382104 594194873 244476588 673213620 791632020 46993301 727457310 92538109 168978267 29455827 392653429 378803117 975581036 909687904 616456547 602969423 114058617 541557868 769055282 537743474 298574982 819792335 706318218 798377777 228452110 423266745 933532403 786891715 503051533 930963280 794861733 321960780 5476734 871323488 767695987 166963594 979278441 28458849 11537905 458319001 523632029 375936471 764644229 934515088 913220530 813139373 795010245 74774388 676406916 744973153 463671746 900133360 765224706 554411281 539184594 853540563 415680099 581909398 627198879 448665911 913996400 247334172 157635502 887903819 506391658 795443058 10662797 190255022 576764156 861863345 220682335 350583704 808674534 988175976 955844153 707616432 2142377 501181019 714820220 986704737 639285439 629557639 724714762 294313054 326466293 615948394 951342334 237342179 824034453 25972457 359897280 185313077 269992885 370174786 295337708 921729674 745125448 639706329 43855285 72713670 392339140 579415296 620529835 546177007 258958050 492743652 990662487 195817250 330455334 799738806 476797158 379410611 280703065 833879372 335208516 508240874 342363367 807836901 545775754 206226836 306269333 217649180 112785191 216717330 728469336 330832794 78934827 582254026 507270291 776589166 44105919 274657242 649497144 369711820 268791319 579321636 607750867 557361920 902102782 729517844 438716021 242142463 704533180 546711646 499109171 313288435 502728231 725578724 892667320 759700979 321978605 985416176 912144296 451976930 529473443 611762749 175994666 256166827 695250506 608265656 412586375 359501535 968270263 22601683 504000220 432323292 433999586 864911124 275191195 837410223 608006829 645283113 993936670 340844730 95054509 882725328 747324247 57177054 354911996 963243382 63016460 518635453 986880815 609135582 981554320 467546069 970777230 94213708 782129417 162709984 727473259 522001207 659121495 635930564 738218614 243475735 449304186 857452890 937563780 146101581 958180261 521963917 375470288 671969863 631146456 642958171 147171059 920817313 531920921 975758486 468716447 865142532 679769442 863882140 982927827 586903950 244591336 958115097 590334618 1603023 770907118 881879349 144356267 64257714 419311803 579290350 288911566 897320066 601029763 343539950 446901875 617659974 904093971 437356904 829204415 184564086 880135756 798138292 596202215 724474307 942436880 233462848 526943688 419439025 527767962 305510113 16389488 135892928 897689288 258781375 534081521 637750675 865652300 310821545 859774321 959724864 740833163 724253304 476607209 234294456 746684074 799932385 256057408 263213016 752096592 337155906 979490360 213440986 71908206 758509701 262751623 950012834 147004072 307115791 662552259 314263900 613479418 275141633 133330567 882946829 937282644 398857110 572663067 604852170 275830624 841012771 867913797 244525895 903753830 357341293 579119380 297041789 768737260 124015244 27880051 85247788 141166230 963090574 467810544 615961544 205185506 709595320 359836766 534315523 78210895 801273956 250225512 228915165 783876667 804692501 779699866 37515109 831323236 7062224 236669711 271008719 845936629 765699453 417868512 462906241 428619927 232744152 981589468 605716464 337940459 738224604 171936186 166041216 40406076 991418021 965007755 97562236 308363803 755429751 92659393 897006919 875651100 782843290 471175505 263863732 154995607 237050671 800842157 370268671 697391131 458103477 233696934 102691931 434881870 593240740 135030005 568615761 893172880 380995296 963739622 983945781 603418264 247433484 690444693 88563444 983165934 779896241 115696058 564610320 699335748 468577756 643517618 974302975 950601697 801234827 4325205 411217017 631986948 756100459 58818304 106126973 319826482 302205783 352770039 140903361 249385722 726872083 804376389 542971818 437421389 768527447 864262702 787740216 396340376 20842076 56662731 997691828 779772863 959526161 258573574 975153898 290082588 635695133 502057732 890263792 291253952 613218663 47970812 145701612 877895467 237756556 430457100 917965549 14767811 529323155 706148521 752699209 638563208 374990795 377353246 647219561 37325880 686596840 696962759 268327236 430808504 931732680 874550678 903542985 206415840 118287458 469769739 999399790 116065087 344665522 14001628 902528194 544885663 682581073 184030728 847958755 545246693 920534973 372127890 430727417 136158055 659843947 365255323 733982579 594180288 126396521 680470293 153577627 889321277 945158342 579320414 614217771 782712392 197776456 455382162 204660820 658997428 618134761 745074908 278181653 170346294 780553874 974409672 590132189 588356315 986547861 731811423 746282390 297072120 458012218 10111211 400088697 355389213 686388911 657142330 889620142 558906128 23470681 950290577 312412484 502025817 553980867 861523484 393513602 701537741 882228621 81705621 745687681 692937332 32417894 994010718 674582900 658267155 830660165 841475280 970010017 417731013 178987952 316790717 538101221 797679605 343835041 904463202 198395739 78942568 335873854 935018069 930315837 351311499 861864854 945488336 659177254 356775850 89682676 694924737 926928211 293253202 485725740 884307846 42618502 78936386 567118412 195619992 812277261 676018887 702607407 942975904 523566476 45651268 782231932 396370566 644424191 539874417 993144465 956829557 715767137 268847579 749685653 535248915 257014363 115005286 798229451 462209246 341558930 619395552 155397385 407567091 73161647 584388811 793537476 941553819 283198872 679472044 557186320 440725046 969833656 340846778 702682452 872346408 480674791 668234449 357601795 315718508 505179338 168161088 831613778 971429194 939626294 600669162 124023635 285015123 176178197 784919839 92312332 377793406 264762015 821197133 355561663 851527114 573154145 732793987 192523118 735819296 529755303 176028449 917024605 351151537 773575165 626766969 395568808 372984577 525261371 546956564 885871722 497448020 501103045 249143492 357614461 58347177 376920512 508728733 548316594 689112306 139518215 300078196 414596765 529899640 606567174 937653349 507097277 201197112 373702099 943774977 527514987 205810418 13935840 985383078 168270443 439791475 148004461 893515641 478019892 952832866 3622929 97031179 473122192 702881697 11291015 465338596 783227767 841663209 75427410 260053597 960065271 210740079 949563688 441300354 881096703 62118007 105726593 581040127 852756 919430413 343791993 92264405 72713119 190681805 671565475 824242594 741058231 418434344 788109770 11667720 515502789 647397159 684339442 532397433 827799330 98372521 190731747 194986255 598448375 399482129 688107744 99122860 717799103 638593732 413265908 443004264 580617534 784433836 286087966 820480827 808012634 438104956 824528569 876070921 749719704 81946220 594393635 205693072 454365567 10609827 898264438 872317461 958381397 266661258 789801202 468901963 990915771 271654755 981416466 202884335 625184210 368419408 349357815 285307441 866979143 231491509 867895318 432030922 614039363 282499677 500318609 341435980 535151191 917339759 580292754 870803520 257037005 963393396 32977451 421928779 386340120 269146898 796338826 130430472 755413231 232469237 699508340 262762656 719262018 69652860 51116508 936329101 660406522 332634666 442055499 599075185 816076226 306385423 263225468 738093688 271743141 413357156 99965317 214267157 140796967 818332547 470239617 741956777 48965849 173418627 115466671 847133346 955952291 993568942 953569680 629548348 947877969 65998059 482040922 257717534 673686878 367605147 661402538 70160666 281811778 790230627 867225276 482867832 765148366 629050477 698508732 832177719 313967116 976736254 503089173 894921238 420471519 913075209 608979285 962656970 643541690 874236087 807234027 824705384 286332447 198673603 377465085 172391906 97347561 231318010 156879110 713099088 326000142 844311334 695821441 486778796 503766602 882332388 452861004 418064852 296596599 832406931 758779864 341800686 299842433 958731501 208476978 425653816 676918518 60129858 78660388 187321120 322445100 330911357 66173831 873909554 466381058 379460161 690111235 702663073 180977850 75460388 724769423 862413992 22355822 506137549 972735863 84952577 249331343 782074799 988961841 292191566 319358149 397658586 464258113 843272632 637751422 683607970 898086051 718388579 633183968 253963730 890045770 262043877 381649521 33447071 86825596 946406667 660353955 858946392 250689153 567668159 619524624 5590985 801138503 439020952 499842520 584858421 263392631 55244594 826027680 560838326 183437935 198773478 511987322 697816336 321240592 181546691 572482269 293144020 521109393 839650576 716894491 907325588 338821016 80578307 551743913 961796945 428768304 344384663 629574132 317012325 688358217 646799256 950353786 30887159 450390054 234212267 328850782 637523131 925698490 164398252 130961353 961186716 391079060 828276743 281648194 831682165 387209670 650668133 421460130 586196793 414880983 291734214 427837426 388311814 690597640 669976780 371463682 614874626 792569230 610122868 720232316 718163341 291414514 118632933 950173639 737079614 451630218 849276696 345867188 80357383 402447318 746668068 521889728 451293118 933518748 187742747 763623762 17415605 232124927 378121708 734801368 994351207 68125271 784789684 335492540 152108752 50685005 278827952 728442646 258312612 853176605 742396229 217933459 970768759 567025682 930032081 602318489 7883217 617963723 125709932 944189978 350794044 292870500 728433185 36656616 322747499 531204623 836411836 645567365 422214693 721622183 460595280 932914698 729739845 271980193 998412068 926528378 746905775 318321683 246128431 557481637 986597511 253869376 488762582 275155488 250763386 481744741 65464852 371465995 768543011 170975423 897928514 902541468 468569475 176344876 170820471 562341051 671680439 802264269 982106384 984334833 385942103 147459298 859767928 103041515 574371932 101664306 429455759 689312165 261297229 454801800 449756488 209841315 598940734 705944514 117717176 356906434 45478366 322808343 845957698 589966418 928758505 278757309 777735016 202437246 371126675 476021685 545384595 74080205 38209181 140943663 324996386 378946880 690354748 362261633 458195806 429590536 620544559 665312943 599603521 5872075 500384722 221301314 380330801 95312911 689849532 118063449 534052719 962340016 246506980 451907300 868439974 968988417 9754304 556456 872940779 102238774 982316002 259130322 745446087 520744976 574424692 67085820 176021347 972358065 674265888 183729130 109862009 946551666 230986985 673854177 261890268 845145379 16945866 248631222 189081164 168977685 594614203 900566744 124844052 545145616 590409063 356473316 888269211 777455841 957133069 817606535 382604127 681391224 762121232 526448465 871564382 217380323 742562085 412986522 328218053 808764909 637868632 1098204 275175183 197512241 421498599 230898735 209681226 737968011 853316521 171298092 872245331 207637348 732169633 146974205 244298257 813882300 936134592 171581471 447120412 419686520 896664142 196370108 388443877 147955050 851210750 671547794 471655628 461005759 564342623 354406676 558733956 332646202 133031341 20827103 629448592 69871411 948396637 404515498 12407997 205387449 955203100 824228335 845767947 799525447 419071059 910521809 877005928 861934453 491157198 965970156 670956953 90932435 883400996 642363922 46078505 524957499 860370280 850290071 863881467 473818364 889446531 248208208 243976276 413373256 574945251 113637572 393524651 443040388 100391991 958371378 332656744 108005126 885912922 833004857 30843622 561193046 382311660 655103244 140610984 325359558 983330103 743857436 753463985 252003061 967187029 52531268 50483977 177524193 97069095 403500401 105274430 432843217 874245166 898200669 228170378 528129543 462717997 119898113 59567056 138001855 479722108 361151018 851526581 316005733 934387615 661998436 698569248 102879477 362799582 805344180 17121330 658341556 307795265 796698458 116476142 7186822 497990780 34008367 962193426 523149274 315519316 672313012 411269226 811456798 985609066 538803262 201326648 720166046 626674280 767035204 23402445 900611944 129349659 68706731 651908268 288347086 826136520 704354229 894224839 71758028 867479115 590505917 664691913 327977316 480648702 11979057 180650800 666425064 808034108 557529906 640904321 451652071 825160567 895343628 573244866 231538790 145782667 897764426 4311387 181366912 167964112 304781297 30371168 258429813 7759629 783824438 471110782 740719958 464885136 29660898 757602866 172875408 937973267 821603315 802542270 562800074 580051558 187935323 707282317 181295150 993174 788995930 754997315 299718936 417923388 371375382 854392760 714324290 522995622 472084562 376200390 583318173 345810663 598766075 580701231 805672027 537625632 379114196 582694483 528563722 245726065 587562424 977552771 62138118 239541699 426683544 57917479 282211064 690598644 212656471 517412913 647930801 243755549 422316878 611098524 437060057 242190535 132829885 805077115 35056254 220774947 412370911 771661595 315281149 61914771 99950828 428940107 400183113 782983016 582859154 859703058 979745162 78783459 133447230 806055863 866062692 341665558 233467882 688688721 447989421 689543644 748319539 158075825 768300398 919390853 511680402 623613523 134625717 38727492 931458150 977729808 905253788 212474281 378995231 249673220 640100805 891834074 139846849 322737254 954161892 721363791 63799780 747437776 332049324 1080477 633720525 900183910 514798797 437772045 113095439 550962412 693784559 852687566 660425843 865542868 205772382 925550297 409230547 679795061 411987043 234747952 102550020 964878951 463016529 887692530 250549119 242398160 600221446 658497248 29554976 428660132 803552986 732311515 109432988 858109331 467750396 354603026 674730586 302734932 282423758 406081512 66948424 179086308 889559367 657254927 978685634 123597943 125251394 693112333 201681126 483914663 318711913 649383382 824923669 856815806 735493936 411779313 694969420 502730905 909118624 470715481 82516504 75746756 746632707 842895705 789797528 165278475 994433118 98400741 654187254 988843891 912965954 447802018 10412973 530776098 56431508 133455566 865095598 309539926 783004661 562225541 182770473 618301440 658754571 823911549 735241589 782190901 541677674 715346731 369179610 367051635 205424081 204678453 101076446 774380141 315421148 625122725 138491500 487468320 958649842 175304682 421049607 555405735 235703229 614767723 152240193 587248508 551292971 385574905 203240737 363281650 657108098 841640296 954934385 190044620 5515705 490880462 608868733 184348283 649330830 567991185 194068268 424002850 558401498 557056469 776373312 355726504 966188070 384319203 712907292 617680194 978065037 197461638 275476779 284236336 792400675 124206850 760598281 18465960 352405785 104327014 421932942 403601213 387481240 778631052 5870926 565117909 150096466 894224324 290142254 801916966 349839800 555815468 291515973 815039101 589966822 87103977 485785568 649084841 315349285 371059216 334151306 584275567 319919172 387467244 966684480 290246157 556851836 835636212 94973285 727833064 277893632 30321227 820716981 85585736 345903983 903751086 57294616 694805281 744712917 160550716 481327213 511041249 927453648 736321568 194577802 868293490 656988152 428707621 564963558 306607038 808228290 192668978 307651429 961560521 173772507 746112306 88144666 204458220 572879392 946728356 625071780 703966362 855819368 834613171 620698443 796011685 988255565 669044506 196254001 376289686 46867498 69286112 599028421 703228485 401098674 139117925 588588219 112590875 943359326 140361767 179566817 96163084 802773129 864184745 587321729 806693209 82018722 512794578 717169870 376363947 793012415 660455211 535450769 888012027 660554775 864003684 768009844 135019021 152317746 543945631 915548733 81979324 719626780 323960914 349850012 928626647 174993840 11826186 539635884 577836977 413751953 249826861 942756487 287459966 327597114 656894307 959298536 462781371 692261083 25347899 693634233 752431063 241756268 815324909 498699115 118614441 685068059 771817820 766218231 246930547 555109565 934850034 20174205 918434732 293852188 110093633 344648605 296967641 781662398 24373952 635824027 646662733 651832361 399294575 449326832 916189962 770431240 655418897 238927020 610447779 747018527 720921033 205904707 140088558 532827842 233871884 478552478 678469879 42228070 54689784 316783409 924510720 233195119 504471128 426858111 547015012 120157964 495682110 390625120 737406884 442228669 380620069 559432449 54853295 306428941 752615413 511443084 771788172 98582269 769722778 297920697 127885522 686125332 254435924 203916708 121333420 444518281 232943499 755957942 935398523 95985610 204671397 690803319 209007485 426983323 645283828 348921109 184546411 159892209 312369837 47002809 232193905 840710824 289953647 332584473 54726718 642610728 26871482 313072328 609232136 120917356 880120861 376479375 939527011 631595797 778998359 73499959 475447013 391772571 858457151 623494651 381156519 106982101 75367777 550967781 427598281 827894521 640859099 9510240 195843904 941446755 786258895 50725051 32092182 381780159 34955943 843992152 444730499 785245363 830295205 758243172 761704247 65450451 971442046 993349390 651356642 331147309 287635827 239503528 404663685 604180608 751453320 512445281 497360114 545637901 131425270 548849204 395095444 332493108 700677819 795575891 275896462 411719973 103704878 437127627 874379468 171412813 800263230 398308026 90070805 525361566 975935032 411437605 775973356 834918245 78752348 807626940 209427410 588788925 354014040 66639922 614271957 647300846 386268672 917822588 898304437 486084753 408426852 95256340 799586166 18426587 59938527 410014381 703564047 434674294 133806441 895929706 548508616 136866746 763552341 53674034 113839574 741023574 621333983 404165826 970795626 367435856 835893430 980349995 608562428 141276126 192311794 927667693 339937016 687774061 476762222 894217896 453117458 972078036 656781997 119183191 318143290 54302212 64501457 530668665 723362335 65633326 240360194 745887226 238888574 953776011 180182799 856843307 478864225 504074542 702845308 839974922 555009737 115511998 836293366 318294208 585685022 453425088 915089552 669029027 666125945 99335819 285574532 891701411 247669956 598043720 923299230 660960055 257703109 469164764 358306948 368447094 597540036 911276668 495860923 164208909 302598132 279676898 71705939 192670298 957107990 686191546 852351682 125537472 404718629 348130997 66494600 245389217 450338890 802975927 707794796 560079298 339710645 763407565 375216616 304382002 992427691 126569360 328131913 574597298 490406634 38885335 956092385 450556937 526154090 733227638 165272157 307906452 720780225 717689232 805258492 822877034 300794697 44968414 624574809 832081714 563636987 252744914 152993114 164223424 580005789 577132362 643039093 782837795 145317458 617000399 561578875 831431828 778450862 826167829 681234679 350493647 892757777 942614222 920997549 360471335 620344159 332328057 664826008 768105844 762771240 967887758 153974192 65790102 569836369 399338628 67306550 507637506 943366722 261861947 561569818 457217838 343103088 105785381 632763532 471469897 634838292 60443243 655789178 88027963 404789825 576160008 160853354 459453296 976724302 58715239 964506691 951543508 597981901 609759898 362246149 400435298 458966511 301555340 767588543 756352404 18025658 184185243 785897246 449573515 344264081 534688201 744910768 569872288 982650046 207182789 716420102 73702847 415050513 117940974 542434083 102747936 926987646 866405917 5969353 193302770 564212980 601111480 449374338 476195694 762927402 374200733 225202817 30410494 829929595 209573789 833484018 760505958 796206819 34937127 349107520 603197525 837229845 280374324 690997473 227200999 564691727 933316011 960228249 478644761 492664557 527222417 744470889 838161146 560810880 760967447 56523533 236980496 547917773 926284194 221376445 20408561 306126379 977434998 763067680 335142006 959234328 497675326 346550148 683922663 480788997 390892637 319530651 771675882 502987372 410523545 688374107 27540062 918652596 308391660 123582447 396975315 976434675 732445094 357096972 875482418 631292076 246905789 690486594 210434620 234971548 189410756 648474743 115967990 361523669 301581795 723981198 235045570 439662968 273150038 138202829 602802784 213024113 730033063 843363967 844334937 162252096 509466840 838710316 204663683 729362085 147302038 824054778 728045116 375803449 211724606 189811669 436887100 82198436 883434509 573836317 564669706 775332538 685505594 473100324 172510192 852250580 762984790 749854919 618833937 241636465 270436540 237087185 332213859 230238263 606043634 237399403 357033600 35964332 998144151 840774309 893637762 900305243 900313135 656230885 870476928 178486622 145017098 109356053 965590168 627235100 394793657 552894610 380266187 223939027 845394315 487437270 373917837 911640462 771284253 259238596 189190035 415374634 908527581 277861116 235520054 871008048 513318095 682912210 353052393 553850520 121028973 451451188 451936962 406078620 135927881 532871851 647564456 802902371 819893093 130713250 737194126 497053103 500046177 587516414 871186933 838264627 30260486 918625359 627980121 343715488 288474201 781142301 551633296 713414008 477581262 277435774 819264230 275076974 220083315 875289503 542833767 767779453 408815541 362995393 155520726 794138078 275249561 592271426 284010046 854970762 514769660 180162890 927003764 31848270 118235815 262421326 114960665 705193671 632771159 449539047 19321764 373340782 996372622 772907971 323591508 565211823 512171762 25352399 978795852 133589716 823530159 856619444 779869651 845867211 638964194 210776638 408788164 730657573 704561119 703942430 648363923 295683091 115321755 884371829 435754182 202713145 925274024 612298247 282880727 387591386 223039306 809798338 585047149 937439984 132628365 541720960 906116330 679395759 130854848 214099695 15355905 655800320 28379394 1759787 609676633 363383744 40062864 623160181 700832340 941183428 371956419 827585929 607078195 500458108 617717957 846600929 542597714 349833314 104175406 758757073 26740720 210492106 174012850 811296960 116713032 764687910 447868747 541531765 748257950 704007948 84200020 240114921 150024426 431356963 744519443 155617964 572485675 281319885 39042124 742138801 119841595 500968145 534616499 955652026 617682095 25781981 633183256 561153488 708188596 917193543 996377093 573739138 298001995 967783944 559356723 906427088 903574388 487844959 900036879 110458581 572619983 213558132 51058071 503341631 742718390 941937440 321366807 989680112 882667647 812817444 192143260 20744261 684531460 639762777 790082879 129863671 740548068 203812043 710355379 199744396 306031392 158553069 911617254 129846402 816486700 433085147 739556997 513545428 203793374 946533691 828635157 362093170 529303489 650569111 129898031 571542236 853987713 150670463 514699186 16235055 756482879 173795863 606778628 315493077 895503091 46356025 504837787 680175208 388554932 549722132 341791472 247887681 891924522 803354050 682635091 880887354 474541553 737009183 70206828 597548798 77620900 226390071 671436767 404094412 894856395 316873558 897033909 656460689 326414237 626654881 997057224 250453955 529841142 418426901 205077011 617945747 497406637 97198268 261671665 702165147 504565730 285186871 894125651 19702695 301326142 722134258 822363138 388680348 227670737 480323388 147960736 929917291 794833888 116804259 198677265 952892842 382294972 556359323 375737337 752770807 728626907 76910723 398578960 160341638 217361991 496780736 155801094 15850044 291332254 481335591 15943031 921306595 441498571 836540450 74125227 509031672 399458886 116659641 486948044 565344900 545796913 341579625 559228723 184560904 363913234 609471140 509272973 604138225 825256428 950074723 842848055 282863049 467546919 925158188 554478489 80303489 139525241 919286805 208763573 562951166 247150713 478747287 641928957 594391691 709347623 674528657 42108784 570932805 198262568 519836063 353313142 764024989 776375016 808797586 159737066 501291339 554978025 511247839 528553351 759240374 324809273 657145127 992119892 331834768 444722678 378033769 71015767 926473626 574681721 305459227 862515063 972096586 182927283 945251171 265212440 528875475 48100693 525462976 874187216 162899567 318049344 792571886 253902094 471104437 131748305 997100717 295992734 929237971 929990620 314504844 492098720 152048000 843826590 340917176 548875453 325479259 617707618 183538590 703689558 965589004 185041387 886576527 690977265 686088869 524301841 618443258 73006175 418499294 847986072 235929726 84516493 184378630 215043598 214926457 269209892 15048746 935305988 736829342 304815387 351915623 721356233 440161071 916445022 520965048 477916293 757724013 386217388 518334486 308722352 804808645 170638689 75413487 296766694 371546502 937423361 770828147 39312492 652192893 842756321 568621002 977100710 821883888 74939194 8957063 823979600 796960695 888302865 483340250 812545524 65299213 155509625 324760712 763401903 466137553 958075160 336805276 9561238 469158712 959025410 556074261 931178767 971479924 155761287 666285955 66211262 167875260 795993011 358260162 599355122 950689628 77447069 354244986 809660475 978005531 55417217 321752713 522817505 625194531 406251334 717002071 726427072 517404014 17625873 817185115 338439167 337577450 9514056 712109152 769357271 879637651 668670640 652334778 272380958 777747876 157127641 171520180 684735568 377537800 657718264 96501232 242707229 585077192 373342203 788136102 260403384 151772644 925082796 223139607 215239108 913333418 600786277 385415537 10881648 294822242 258009940 388307069 716566483 725886028 868909264 887862565 979808245 306622945 895449596 63996451 215622727 561510114 386527614 354362742 956238113 263612031 968533887 792493730 911419059 551495767 259749551 179341673 499062975 407500168 423580528 386667378 235689379 755351025 743765432 212127497 663180443 606070718 368734565 658069839 486729042 205456109 701488982 984975725 455260308 626006133 337383251 406088958 999306008 206607304 463352207 770188894 903726089 18231443 953188852 809769477 690643615 621111013 10085770 766518961 51332757 191921266 906034005 659541317 40461824 142179377 885007871 930928738 543708868 861012584 110612018 621594416 615605090 567702401 390407695 292716844 470281215 221645814 691198286 879562159 644565571 854382372 58637748 793536939 913495471 200285546 780917346 789198170 487843117 437033404 483123967 254574245 37888007 542354436 632951973 555416205 572905082 876998621 256190656 923004169 448036828 555497224 613665273 515126315 530869378 553288962 473996216 288340547 862540955 27148498 464791899 34091203 711232266 490109161 210262255 610468160 732369159 9532628 439277893 470985886 319629159 113246020 214136794 683244903 979725100 292745618 721520232 548943768 880876370 863373042 166372415 592220801 188180975 675863862 724685605 771187107 966859209 194597936 949136556 82473805 304864216 139537822 318032794 536122930 63585911 972671161 817801027 624461351 357137814 657200161 388910940 812561603 951648225 55803999 275376408 68680037 956855922 426726525 911953746 792949438 689336316 82008069 400197334 717067375 803042594 498446792 946392867 279999723 948005756 156538583 386829706 879948107 351546585 499548686 943361068 970917410 482717390 72767477 197166493 146885839 974898802 227719159 212523042 444767904 772148379 170000938 853706163 192043982 903075487 757821110 221280468 815269835 601181899 47252758 660789971 668299582 663586485 499707697 750936162 167337193 570512686 780147356 853144086 415758156 990193788 119735047 171223891 206271159 220518508 58537324 698516949 49481955 380903478 206101786 369468658 902218819 8672155 887259483 638212022 855170005 223750338 194740109 110053715 352793475 690390645 215456228 376180237 327942924 733576962 358117622 509795315 943659836 836454103 857259477 908362523 573053459 272732115 716488059 309881486 795149811 141123706 8359583 61368917 963762218 383203941 130172164 213817729 452597908 959475725 535262995 176460467 609687356 142233718 744765448 982810355 303939628 338948924 783491881 92831686 624263465 980909377 82165761 309572451 939597114 337412448 167526790 801660837 424595943 741948186 366080383 123689063 83975041 172621904 425557403 567321879 623748307 801141758 618645144 80166600 476134392 642877293 946887248 842809105 88013764 586635822 588665825 435370813 268395381 599942884 266423205 339639099 725872240 285318136 952509242 438119580 601330882 315624719 471703381 974985499 302908062 67338879 54734223 974294531 607946072 712700846 688640636 281371680 652133918 745363836 423274748 64462352 869540943 906204624 562739049 359290818 262018765 582486975 164698649 71137722 874280989 357768582 778345825 912438188 215120626 586915649 345483725 829589478 559683065 967613004 243724824 695357712 625565963 888682259 305616991 949240615 739027201 834164350 90908325 287342585 528981044 735526720 282297521 491250225 500405132 807301169 282806834 923894246 130209448 296522636 782494508 391416111 386153112 400195433 493157693 567250196 224877951 554387578 57273139 716543055 61141905 637500601 423529237 528854121 393584713 495342403 184977004 982026935 237297389 331438019 76973414 242478710 561646289 305372810 114156521 702158969 828781224 502674587 585456246 395085140 924963873 855188709 390124677 25556873 133509213 715301496 880251596 975652410 130654385 706168251 741709207 614496181 200706652 967070805 460577605 425541124 271452447 950066264 167956277 35622011 150989095 640146129 875341784 663096451 534003715 925742862 590761702 39929600 432321045 385165297 761822167 507560747 235428203 176763983 281581193 78399701 69766264 689862462 279469944 59227451 393041307 501444302 975547735 782260501 312417854 839572493 774997305 367252760 481050777 172001448 94443270 785189353 709998468 941157006 317696143 258045964 582758938 226571534 152737507 751355362 621017362 644051542 58708982 541699171 752488970 411082177 50334322 333592803 226729096 172066589 82264374 527425506 768490003 800575338 794866084 998454123 266470299 68922440 336361504 459747316 787560512 379863819 346486923 434771980 440157975 557250813 462923130 733099922 262113086 230075922 651885002 279816829 400034549 806125174 709402592 666076414 635592473 670394592 182093627 55803656 652576407 801705282 263758883 500291573 809478117 45966262 648362051 846481145 705679328 278707256 191260100 308884724 499533 348900989 27224890 489625278 827186783 137592140 922666745 380909352 651510752 568833309 711792695 133515304 652088653 376551792 311611144 961029573 896300971 233288005 25747473 541186418 117603567 817708122 553556327 950927226 346536957 804616167 932963502 994509991 860655856 245286376 870746498 474197498 67266536 706563013 349139405 254674865 162900111 220143428 28085155 875590550 724758498 287788021 811783852 631214857 583863066 102738570 543814358 421359216 961480690 593890 803058157 355705021 371338914 103286142 741068044 772548824 556780235 111245726 882333661 32378965 860125636 978278474 559536495 93818660 53243757 306366594 440230996 35635547 655165464 203629411 208587551 432228448 417221472 120642266 995691404 346089566 140144730 482122028 62584850 836571313 663069900 522859498 294748988 67730515 197342157 693740024 868063181 534323443 610037127 913282348 64570339 668337279 199662884 705778001 292242832 287564677 421504874 632873321 800898632 940004902 142361641 539436903 754777940 878670957 367570181 286457262 56052250 218814049 676017907 967083222 349216162 340827378 758696565 401895952 976764023 894866749 517723712 586710866 146116924 85106369 724748774 885931644 676433767 19231882 92127328 58304928 982478936 638584371 913671533 963083599 314155137 692844441 814172065 224821274 8476647 803876264 65679337 120557787 807064297 778475967 144371287 751003929 66617531 734636546 542331900 249903372 450953956 74810382 181548562 496803090 81295758 120133748 116088717 662779915 501998988 181440023 267808140 525298677 771294550 699019971 932822918 688109361 958041383 244592025 482563650 793538180 199515744 457065222 296552039 740041573 764070260 290536370 253908644 484856857 636785375 82842865 287610970 848088608 19077598 499529335 605353007 970054169 537279580 83074392 724747433 20652923 481481563 81978815 410643858 958835326 565730538 307777192 611762903 719967895 553898511 327496217 781889943 824935965 361525764 412168737 239194158 447264800 793871271 316078597 41255361 877075532 656262707 571465731 751121366 711992068 630187112 529775588 417949677 500633174 581540996 802972468 390790669 799941488 920785213 822927791 736279425 630926753 362665355 932721091 869373455 13593974 545153465 644662475 888680873 550799286 110617536 840466157 115378865 789675382 877921162 354607514 286255531 954692041 190873398 100701915 78065692 116388603 593487688 276040950 374399530 794120217 558101901 143766797 750328301 346308619 611322446 852138139 354591592 14467628 674451092 975625152 423705413 159081155 215818136 736615203 646066374 829747786 872013620 939248024 437776576 585069573 751741879 519227622 15436293 688490188 804574502 166426016 173453811 169553910 768072056 101392162 474206091 919621120 958770275 147554718 378637865 928300228 240831880 363058843 475305391 265760395 110484458 385190319 300394286 836119337 194208613 659968078 333481023 545166423 82324820 234186279 883496681 909561979 231957390 300036289 435098843 749869436 927220612 730725723 963224371 900681393 151865284 989222635 211977382 17982431 658321657 956376337 183042123 890516833 807083436 965024175 933491998 367815713 436811841 395421765 221930061 19833050 243773881 962382895 330455628 963152329 644973339 894503640 152049872 726384861 399106801 966379248 789273875 971466776 968751899 386989937 785925603 317626116 134126687 859067570 399480707 141727290 753900663 635577195 548716828 311542129 475282526 538732661 43144852 831677380 902152939 685333822 301917078 487404632 962980383 264831964 893390353 954796549 383693058 850280298 942027993 372094316 457411444 991249140 255018041 121552226 97777406 548037316 999635161 644627462 991142247 643573361 104990552 367256491 191725466 284833604 3879079 184423276 647830567 425939367 683260343 751988837 8243900 955130400 229120526 390696581 958758390 797771259 258703793 414286062 829872245 997101854 302410493 165110818 54490926 81332170 205609366 311769967 606850389 255626933 133087738 535888011 633015177 288501777 421928018 620126089 733851207 261340758 747984235 709871577 597397990 809086721 879555856 21367138 507703859 334428146 81529442 775039078 202285625 452952561 207726802 183538761 967105569 519472709 234175131 234979626 461246858 55243445 651936864 297527099 180129829 905123760 752477465 377248375 674281833 896751605 981283243 405910252 91597690 160628478 781127083 624722080 153734404 501929682 205870842 700826741 140728877 858911025 383812390 49565913 665493855 86158417 641658014 20028438 235359964 825947180 970267105 244340357 845028591 822873508 665056943 550221019 417636609 768649240 637268806 281478130 454501073 76872094 591547540 295572066 83083045 538440613 131035540 750034357 6023281 838972848 575642429 985751529 526097316 967404902 756112314 245643203 338957233 25752176 567905069 137524078 742383962 965575519 694368934 207003002 330243715 805405971 468733586 958071464 276035424 840081466 532014916 903628210 675670445 136285275 839849089 145850840 249718362 494684026 86245343 665127625 152412165 431900033 700158780 634674237 499281401 736051771 154443451 590534316 665139504 366476936 580933460 513794641 437772640 225153064 631397899 982035632 397269720 79007695 733232636 149328657 717348484 103042040 561732256 655043931 553611092 790131146 693693033 262355450 275331677 332631412 924039185 210028204 252823919 404072853 144634075 699245746 838009996 248854646 609241037 208920123 630261799 159392770 781663315 524389633 770029061 535888389 213894896 643829452 764138531 156982433 829655367 506834865 130842472 973829946 689974119 217209214 866340053 694987807 536190813 442223265 124702770 674194786 402251256 731125327 564328078 524741775 891350512 917814169 259104056 634456144 660454269 616469595 95941137 995596792 529978051 128210888 416068891 646385800 969407828 329240236 408050748 319492133 411331809 300570437 685575637 744190177 845446729 373919571 40090740 123699009 171382602 816487751 51786 789447492 979581591 492861489 228939503 634168226 687472645 177277822 989017128 430759415 506731269 157440180 595598803 265682289 690561513 714334748 755106423 167763526 780774119 783532453 107419102 306106492 807406390 376591090 15888384 886238802 609506999 441305227 889953422 403963698 158601234 939231226 428051159 602165976 500405921 609608795 138021750 935284694 310726545 787126858 876478579 358730404 794639943 783781452 676543427 312133936 68940505 499017566 20995543 745524535 687610074 871029010 335608064 163907850 922052322 739299323 831002598 348221085 556680380 794721257 270244034 780587939 4955183 766261482 922145242 949967369 169402452 39576356 840350638 373694591 48599152 715935593 108713746 837495192 664971571 579496518 462624698 838389446 389362647 51114087 369216039 872672551 441668715 156418542 273490957 520980212 240393080 583689489 982659827 144746160 94408323 848181575 979536598 831607290 125887686 17771230 332608537 495330812 336558682 261150376 644595321 947219700 957381665 759122691 282894394 991454077 393839501 36413411 899292468 452229374 526473581 693914940 736395267 265641348 540956236 675233422 99458055 648164219 87802297 950675088 890455824 295289807 658520648 138864320 762157560 266766178 659269732 186705657 247835621 277903333 99400092 88994056 250249635 930384303 787172427 983805143 899374479 825079562 149468202 288228162 595651700 100939357 536263414 493612852 586436751 186712660 697799876 732157718 17080220 877701096 162820794 686337320 679985954 157086077 627942488 503434904 345547679 178260222 967157304 193518452 519129554 559282233 199397645 689199067 211828508 489618197 998533613 516509184 595375690 73271990 819418345 571538664 984681688 865689001 974511489 768622999 233341352 128540112 795624085 404990395 889021957 838574016 501876937 224738219 468916385 362489089 634175371 767040436 561949385 333918251 765490883 323468540 175910243 501340219 366453694 342589054 131669714 987854470 864582199 5407677 987040021 309926518 577228862 487517920 58061380 687769123 674612832 610009384 969289272 897991988 959550439 21808885 75005607 55235594 232088924 116739423 972038382 617376728 16782654 912406148 834339562 653439557 512274520 99960162 772111312 462642994 714442505 244405149 826045344 345715609 199635010 907212260 371687879 852587213 309844796 201802663 903923407 380149593 133581851 378063128 71647243 652193910 915298507 312728976 826426926 162595921 198371867 77216697 886589964 543102326 183084862 446864696 398954828 94497762 285257104 62075043 618102919 412402929 36430065 828819053 683324197 144008551 973521750 82017053 3942987 591674590 378733573 521536242 619061908 472623635 254558475 427072580 893990975 223242651 913522989 171758100 445299338 171329173 98281508 562454446 754348866 80251621 445790923 557592782 194368220 193590720 801682060 414796026 493130922 544195173 930320313 110702969 203677407 85798493 226031387 265473946 115944154 551909923 375173237 619854410 315390433 215356040 554871878 107488905 629017333 243576737 467109230 567701357 448766506 356038617 32413807 270385344 72652266 885311225 810641795 353546692 991940726 834462512 181178793 266961037 690348898 796986207 933876891 344766342 589884543 410520699 458444069 19509348 757689259 193586257 507767649 142544588 586152498 379350366 676249322 267426320 255606974 17121349 691733221 26059299 234615932 135088630 38505965 940124366 599144622 163968274 900063696 353985454 623195142 265252386 732762809 550455652 152656357 650628298 20762496 545897011 16998673 753788875 636577747 709775024 570340137 493005804 667925476 703010212 933876434 395536381 557575772 119041521 642651831 161690056 58456061 418292015 357278726 857391692 386276416 838480589 106749223 329226538 521652672 195137243 631555502 187303852 998213113 118093966 898779047 652948348 370547858 652259738 889845517 295728223 265514087 747568398 501952815 274501820 625527417 414170156 373860546 464757759 850981313 518663723 645380311 401377373 396020250 267799933 455527732 795756229 481384721 573250243 720648991 161577424 472050519 832381166 202176194 372587182 722361528 154169524 664987502 215361337 40057779 167744842 113113389 899807776 687490770 409641791 865131432 412492896 241752505 336347405 56963687 937895835 552662903 900957295 72281313 412561916 784318915 691440786 965706784 334691143 955666869 559147780 424459902 377116793 810845394 508096614 251403045 133327929 312813508 692341183 427047708 381359416 628112306 380120179 970138415 836119540 11604406 32851810 292079755 185100009 890196283 336489752 848620312 385764190 867883473 904562980 799116156 517281489 58207206 51222748 716387580 516727265 150908148 323430149 985769945 340515971 396822003 658527558 139184998 931112015 455398302 836196166 896999317 325514942 1879269 895120767 595550382 653986479 655143771 903369881 29925983 213921594 232540561 657558640 166327817 112918285 963090668 209714269 579522874 838408849 383826618 137762846 806404738 880976177 564725417 582298019 572753843 445954912 952697419 519997156 90341485 383427008 689063448 57648753 742632620 6434757 949273933 863602251 75210977 711768069 355694092 796511950 716715980 377130222 680802683 905433738 968680827 648477350 445541687 272235539 848995562 573602631 582049481 87336064 769152426 134766970 664689731 246029027 816613690 223745681 330952598 588845982 747821477 421041827 723088546 327485104 491483041 712038769 55919208 953365710 170765045 628695725 30099052 20143371 588950472 547784713 308789492 138171429 509322297 465492705 657073956 257002546 586282188 252332742 63348996 286981778 237513517 387620331 499128699 175559555 867250107 984569586 489101175 493915109 432619647 519150349 781241547 649517729 755261470 961090488 898106496 308053104 43005005 570225409 318018525 617467605 390512038 384182606 429401619 406773823 431103870 46625562 103518680 406017886 434431226 738586710 629750012 649416249 401299418 909342527 340026775 601122478 705635326 300670121 240298379 781761458 319395882 21831791 420763957 922691254 294732211 611304133 66948054 947420992 547448875 399453116 901542666 939964729 805060183 208299219 457335527 11098093 861956249 835930208 222075440 113417009 635750326 984765223 459351215 414855151 728124921 994028105 890516909 368659199 883005089 556854134 718308067 651021143 395067563 753820450 889587344 263611221 930335086 584462989 589231971 166225971 990064988 951694138 100867610 59676824 145963241 585806798 5848988 423776776 990560984 468673063 39858016 386166087 698976304 496321302 878848348 733252900 757720397 292367537 305729578 464724097 293042987 84593528 935237410 875466653 595826845 979213727 823482251 973530009 629090889 145244769 654044538 503331172 437282330 853707521 281656463 469265058 982870606 623176286 234491128 376285563 628105297 292625079 640112132 204802209 513968960 914020220 862667911 611206655 686188587 320853163 37624114 514239766 305248480 134775835 724744854 816918027 671262351 518207036 340496084 527328468 521160958 648654036 963687068 84166223 210834604 234763028 980778059 788053467 434991899 767729306 735678286 804810261 796394787 493940175 507270310 917866715 12213893 907145653 532343840 717345343 72751979 238501169 700041665 110878980 672113006 89856677 625446029 602953624 63525720 631777189 154273635 966521703 673365000 702482175 491644156 24328715 257089757 183611281 567473972 284576970 819890740 947095650 87026225 592496060 136581784 815278597 135686161 754127649 466911977 411256806 718572444 835239267 640731318 25975297 532982439 674615950 263642374 422277949 590308253 337973028 560113556 638602793 991149993 971526254 849428547 874919878 11327157 781266353 686179951 862310598 823330747 859319005 519899101 503094714 864604100 12045142 418547444 628609627 541516394 365489205 358924320 441202379 854902399 39094218 242259187 508775129 484787884 30029763 954466314 786153594 191497140 846891957 562210991 852614279 477559353 34100206 348977085 176925403 376718008 828518950 610692159 729191310 200984984 719356089 763344511 260691202 810957091 644667199 843408424 229670596 364984620 192710370 891251308 799571326 11911513 588516284 19671172 905525509 389079488 714663462 47311002 651567342 127529418 350119187 467942689 985361559 308860005 609681532 622746551 915189341 370662473 193039237 642324391 285685756 850205074 815429722 367460981 990643846 770227631 688641740 245182199 810244425 754709127 394519307 446767656 521992461 628061753 845365454 326774485 580550089 664802742 298248400 90066377 686598458 407181429 61460007 236373326 143274862 914533349 846662528 443254931 704567575 634033542 972220282 795343373 868901395 686805009 87181781 564315963 672780182 947502540 71458726 552433709 838896170 481386507 566451574 898347589 160381790 801892151 315916741 499933915 730217707 756823435 605345803 963685471 260281948 787612319 181632566 798140880 363860279 513495024 598262625 443951296 915632667 881339772 169875238 378264837 277648003 829070782 708287671 747716844 871213291 307245706 557815840 336980986 109576950 316763505 496896399 149705387 929191848 979346846 53580323 220814984 243151595 269537564 688947763 763786848 126907893 456689088 410018144 368806553 909835520 715702719 637586606 293222605 779748168 464820020 978940629 120477211 645958459 159045512 66987069 35706223 584713682 421087766 194163838 402198371 38501783 6358076 240801728 661522650 204463031 6615029 507637676 773779408 163190830 828152446 947738660 443116339 181334904 517523109 483058274 711941996 773836675 816906893 647327339 251914408 64522735 642130525 265124707 891554013 725169325 641496450 555211972 434775988 920878788 839256534 79234947 702892534 954334021 547783378 482963949 564207093 59637499 781545506 456909224 404387818 806943565 871327754 74894408 402406135 634131645 668514226 567581384 865699975 107098060 335534174 215448786 543041735 30191878 216218303 791192191 472931510 64746113 416568763 574973411 607864956 746683687 926899615 794639270 665446083 77486211 126376365 266698023 410086297 613924491 419570459 468768262 820965200 644272423 714724902 852226652 102991597 206381140 850910593 676692484 320794286 740592292 971628853 936045968 860806234 876362140 898613086 515103908 75234165 408599140 54369383 521878904 432729486 757633958 23139622 448198104 605356106 332504604 757612196 720172201 33777362 583634125 614679615 291117287 182026574 550860535 518278404 156707939 392607485 139804770 344579056 53323618 678262447 396300657 491345192 446901738 503577055 306133086 992543335 775267313 55356926 148678009 44219740 994906835 941916091 11285805 860144943 585331176 742350271 91639081 951003500 596315672 42451532 562588304 252454120 4848358 48399359 684745374 925963563 345763198 225675310 584424900 269087430 742356363 105907625 295812538 618487566 623796442 285919432 645525986 193732035 639521599 868496142 301704641 563168613 519483966 60404924 308742944 253230237 46231804 213730619 3384193 414969203 527762841 880427391 225200471 251707875 511698960 94351261 720359619 766243559 405192718 378644736 547673776 62996080 874882151 740425162 298919958 988870406 548195860 144144341 436147949 749541439 697585985 109201258 529088107 408683272 453860194 842018966 503171737 757971497 116398796 855798143 143759830 639569929 270613681 544822656 721514842 376584721 971428271 979890588 788284832 274278476 680092726 163386088 40571789 782068699 916140030 648723993 2419599 617001533 281319318 55700223 821703540 740921909 680217062 434760039 140766410 64274696 485022982 712945718 316126093 643280308 718349927 222091572 200874282 373756942 163672360 782377960 777839362 950387738 446794950 941561256 804279525 151800231 408662979 560246802 149661470 892335928 359552863 877003050 192366346 4782824 149002345 152579839 91621927 226328241 324272805 770232789 814388872 909405523 760963297 337438990 270695744 570964090 852927332 395066108 195398209 653873281 190906664 901798814 297423745 592251573 864605072 371266139 880038532 518887449 500207959 470996542 205121200 479359310 441669386 471544018 424991239 131247230 101299230 975884149 159232296 917208597 816877865 351784327 342582012 408529814 767502352 275217857 577434368 361869684 268288748 671805030 941705677 4451158 25708901 68269640 347772829 257959534 496523251 432914311 190605090 396172571 509408542 358273810 385659951 666631456 567678735 133567343 259735911 598162162 618222969 300828821 223034412 107395272 306083208 776882104 891908718 51972950 893788618 958475390 272638269 713532904 992785929 704777969 403902826 929579341 901996195 432577773 771492123 464070927 363792884 703447201 619523809 371481682 451921501 951895306 771329028 421906910 578800277 954751644 833563264 322147167 190163627 963901901 192857795 831405553 287420515 483205627 444422159 483768885 541610056 130341865 682610811 862334496 20983364 691197763 523421146 885946849 870742251 857947280 925764227 580897862 857414522 948381629 274427049 304720694 298334953 591485854 351200502 686507407 287199465 909537352 595585751 321070074 856421876 466566416 627469357 936742111 92783220 612773415 455325672 51274442 323996809 668772898 304346401 342052553 873335511 270756939 696721332 705419794 174079188 969933427 126450701 384244487 882507743 888512570 585136519 570422422 577201435 600602920 801499232 811167238 660276244 153848624 336505004 963683877 594389267 157417077 153333304 490777879 888869148 293254753 935151728 852505645 221080620 237632057 119593116 874936011 840043554 409198358 107709948 707588918 243212525 802425784 780278825 671823163 217348821 113448670 705043354 891812470 424711505 401175012 730536243 961286284 256069878 292717208 646595883 988960435 774841824 935389598 824720218 676020565 125150855 838623107 558587015 682256246 350614687 621566003 328222321 804111632 588624530 973998818 35187257 147422584 213718005 290880796 56527304 42524481 934199274 157292331 985614696 398755682 845504472 820390343 735973929 916229846 388726244 5235518 93996888 980100612 10671900 893749734 971130781 286192523 909981506 311737592 24355158 72564190 670303970 882391714 969941889 973895388 327131363 490594564 450137296 140639655 930880527 300525170 334914134 208622939 302523404 892671041 366181376 791642207 202555074 548513300 743256836 302158515 401947989 495768233 874475315 865432575 411277667 968017591 302990211 948170568 441407312 890182012 867130849 722034121 616323317 174341079 527579181 399949989 870435952 674697300 6290420 555770989 511467162 723603566 215313119 640709609 798961150 59992994 589108261 871280611 83404709 488460893 981911616 794697345 118306573 106667848 804704943 82171429 861105606 730177703 429918112 119795673 870014550 11486429 800761736 392811433 935182188 346955925 609364623 544515178 887547779 158137846 239563249 472832005 666909618 438414713 767924854 431470369 317584916 373381168 114999313 513221196 249322518 246321688 394234175 188455907 351205709 614567756 583628199 702178621 748723034 892111092 913306085 743989537 2617695 861314736 244605926 756426183 906579985 374166169 514078767 503231949 876900652 738528160 114836479 581914412 947140759 519817750 483256955 827745986 237590327 248267628 998724010 270698915 739053058 753675957 393447271 502540601 654467267 263584246 368606093 39488387 77914558 313429491 646362528 271778839 909443834 881667380 21201806 870580312 447974277 661027641 338766467 538434150 978215967 118068480 464814807 745351740 437332874 800165143 293753946 586940090 657835281 69972887 398383540 285411989 308423149 374320130 720766203 347915751 218529107 174382223 432190205 526139915 413993026 498668313 521033045 335212851 648132490 770124836 878116153 745036432 262746506 100243156 895059310 298634544 696366512 926326164 59706604 747968049 795831568 167218486 726659721 562938081 258285108 595232148 492408827 488741510 534791102 586759295 146444226 597906167 813239359 540900308 858160270 912155654 539999249 692462984 986439070 364294076 511191661 906763530 367449513 415168540 210566660 280413018 435043705 423798914 19447263 828013449 711268612 635095844 460258900 297826520 714832897 492021072 493075987 979865906 777590054 556797698 235814632 820031399 93571345 451452815 414347451 164426522 575321702 838471922 214471663 230023571 601967775 725126533 536219958 402642842 700463674 459999207 235964009 173535200 126297592 679121567 273150614 498611971 895236601 439278495 994293613 929203250 430511189 942649684 190997016 259243095 368800913 369520783 136869930 685334117 399540186 565004275 808839309 713477844 520878237 994685809 714191745 404446881 971622978 95621534 900965060 349928233 935517943 988114255 499975622 584174026 129279200 537265488 929640389 638374952 754589933 539627463 289469057 829422115 109502705 788154890 226165753 904696634 968741426 392701193 347630572 829623748 590071034 310899620 308164491 756867132 687844638 203120483 704594366 950876268 710690099 121934669 894340782 612446388 489846729 78963569 2712078 73081006 75824653 159539654 526488206 424505617 698014277 79012984 8463501 550230602 944740516 361529124 285418897 61633969 677165325 130647716 290773968 302284384 293843608 10811714 14056863 461773630 955908890 834305685 865913056 83005266 298943671 28843336 116923728 679060522 750922585 963879724 54543 901540324 589727762 924452797 226935926 580045756 65077905 165670442 30885177 229000287 596619987 481592109 147140247 897072584 543989259 741756496 127308914 657678589 568405113 836430468 193268074 78775493 445316079 872128366 698022768 452510153 361472390 872065280 594269788 442372959 784915076 933527568 922098519 591515740 919543696 452394467 220044886 679090857 376768644 996076213 999250770 890959083 119028452 136196232 179941908 847526545 421482325 277296029 272199606 128354891 857214318 619019771 763093142 841239558 420773706 447854589 295770882 526191935 208240913 785879341 116359699 837190625 665258479 31062012 223986105 973213258 186063582 997852274 27440839 117806143 919864293 16797611 480279374 540393612 687656152 389653434 213270632 361520573 551651563 220405343 565802188 913237430 854112605 701852666 619669874 162418150 703379743 226715346 412082758 290419309 813149422 17506180 465570505 476616136 80828469 398687627 556704088 594083793 477602470 155362124 976335615 872131753 941912296 487829318 857988150 978623723 778863318 443118425 779470378 459465545 46015018 801440600 645063206 362257219 145353804 548577798 347429772 620939807 56355102 296829502 46617725 474610911 559588810 512566200 419174322 906568711 166294110 605351893 903763132 140657289 830181300 847220079 795939474 817605438 833529925 503377870 787065651 828516933 836059144 883269553 543887239 697543920 653219722 485119553 579908630 119759060 467180875 184732886 102040697 93335646 146446227 487216907 744835193 745423601 810295410 439610077 352138511 366921908 887980951 904937731 284944204 858594880 494719101 656012706 225136043 24426076 749834255 287511812 575151192 408791014 818622146 16836244 21328307 349281008 209415168 148552087 125254191 757774322 840930974 122320909 230526810 551446738 367017226 550658631 266889567 590092833 760608108 198859578 604012807 604320004 365927344 744516453 204426192 796747689 552406788 655301944 192105033 310227022 140290279 257919960 924390454 107009908 229624329 812809054 963493251 780572755 818521198 48863828 580288230 92078032 814566357 651824055 967402469 501606931 68454706 812952321 987547195 846497234 377379163 386152389 699687365 961818217 853529942 590692205 327510480 711391962 409169125 605344985 666064339 904462860 124123634 509551233 486589502 491811550 284592235 805162345 268702454 350986680 707414936 890644068 857885733 782793527 89960563 997719387 896079881 754336673 333276711 386407946 999403773 63745506 14305984 610578104 839317745 152020312 306368345 274241945 81691841 159192610 709033846 377000408 196014403 575513016 300168972 154137300 131576028 175490512 390017371 936648337 918116157 922969108 66294027 58005773 112978982 861739221 70137971 71934733 719525957 175347646 579483141 760376517 492697220 907123289 626265107 880111417 516069942 569648159 872807203 920919291 393694677 819181026 660485550 931687585 289069076 159056510 324759839 926837463 809322248 773499655 99401885 613247437 394435642 511228558 151400657 478414611 576909643 1601216 48038753 707774595 368312091 846279404 121643575 529761928 732854794 308646171 38779710 461991381 538767929 678516336 545915046 73456332 935114715 85794317 473880217 138957201 629381244 172592312 433158415 448539602 514867770 436968930 498187789 591284334 589963494 528996508 455315267 743912496 1049035 366442990 464518256 729102475 947492268 172034503 873292994 783649719 678674571 434773149 387042472 289621171 547701240 671272720 448417741 762013106 63767960 736821680 549271731 483322266 570557407 577363028 298171709 403359771 756644005 794102080 650892963 702487580 717332637 165958304 169955687 567747346 775287039 162057 39361598 265185593 714106822 651225014 285465891 756654436 521862638 238462966 189403473 575698982 129847872 555517870 952078029 102376297 357001024 617858724 635852094 252665778 305019805 512631465 930979698 501463684 154873061 813911893 595174577 648234410 78401397 427299149 243504810 696289543 879384240 740881295 533524976 510563129 257795746 694395106 754903746 733922492 588810225 236855509 954738841 106644117 155617457 363317441 843575277 999552742 547610411 424654823 41521840 944631048 46078793 144003575 440452776 314035603 945669712 454041007 813566783 128421282 294353464 53328077 479206566 361586725 133398886 73949081 57679360 140441471 579499993 508011431 634131260 923542331 709663424 623777836 823470432 238879347 755535225 874410139 55763544 863432971 893978188 212249846 746409539 105205802 670035525 621352750 775251914 427463812 666935924 283213394 633333314 249261644 44654999 852216759 22846231 127901054 773409556 31743257 127697415 892862933 167134957 702524773 883451899 91410388 822332092 371705398 927283279 192700063 258728232 412017286 473159042 43306625 429475318 490691022 784251242 904918955 77416115 318103429 645572975 954138570 424317359 879187921 653716808 931844431 678260337 964864223 541995131 781619476 93601057 54633485 695453812 592293545 965676853 870809225 324991621 379293513 986759525 807305338 760657645 306027924 746406493 440362440 813035208 654065847 567379045 733705580 524288725 650981644 919531798 778400762 818444685 898930355 505263187 333781010 389447913 843510148 283722669 954444209 847576770 628106171 996619363 611601256 96494533 640508198 323091801 930655991 364073580 187929402 268131196 605043494 143454034 749983755 591336078 399353771 693979185 63361112 538441738 714693895 61129247 732137591 829919220 446648536 261304685 630043986 355705133 402507552 748360086 78269084 887789789 748648512 872934256 500528410 48850954 916230500 324803065 928525265 767233496 39549524 563812598 567054791 528579483 539925371 129502127 34086 247531316 373462626 282577321 25394743 414289726 213270956 860957522 776131388 128100096 106999058 614395297 150617039 561900682 848846538 371634879 520156200 766569851 840410261 593995931 632970732 86577996 696237329 214344337 494150615 8297994 471555016 877226627 666663114 441611935 167933090 246630255 907551699 428738779 721075706 468701547 18739261 131676703 915887832 840273907 662516715 971703905 313462747 364599157 826197029 847979508 270904162 100105151 457169475 190873521 107752988 74329837 55547903 59574537 27451890 11624120 333648939 192781971 637613281 73589703 722550063 744286092 701442699 182501418 281083893 479393228 470749899 529928377 504263811 654126400 925209177 822129964 964001008 879123807 667130724 925999734 870959826 560875711 325555001 53813883 405934510 999334591 639762652 516249830 387351034 555804407 894358735 867868861 841856765 159543021 838731170 143177227 163772038 381947993 234139188 135729672 608895541 31771821 982077073 257985242 839682324 769442515 722474124 465969003 215961075 135411487 430787057 409945487 140530418 91408632 656953055 514334625 838141178 307332336 474495829 892499074 161168788 231506560 880749884 158162436 213734726 87436091 861761198 594911688 539423604 738528537 513864792 231860688 784288279 267337016 110032756 134381479 738866252 609797261 975099926 737916589 503703034 595966074 546262253 403607612 240220419 986812751 70827339 954260193 740319097 39596651 579025511 263195236 37936234 662088777 27043997 616560279 385789536 392668180 253324853 738947015 887600235 560313660 63874492 503920350 877358730 61054196 721403083 721889652 43341892 827053643 193489228 105062547 76226464 826022469 751380214 884809572 602624399 966475943 688925116 214023458 11087913 582391101 61816567 171450649 442910702 205967130 159823219 487974188 622482959 505916942 995038360 306711002 99890141 79600023 945566193 769986757 315393404 466008848 591090187 277324391 311342136 184773636 791117395 924772623 594740695 558990552 25294913 498025134 176041468 106244331 376987419 832475163 78656195 954567330 477084807 297538327 879803702 527109985 173818395 947293849 120651718 421269665 992935406 821691621 877527023 903092080 844411664 91936437 634488226 281073598 310104174 420404004 41452150 364118191 251895270 38479017 264128592 544812766 798691423 247285988 394450472 90741055 994561224 606662332 793996336 623533816 243962825 521279307 783445682 480802522 924736826 192887822 95225578 39217365 109538771 324479671 779247869 707828849 435740337 237063411 98333950 900278583 202067012 989971264 974070019 705984422 731691984 270008176 594650058 344624777 794963821 427180688 812313772 577605645 968768962 519473481 904520606 545864577 214661681 389211438 400256953 9429418 659818322 132490339 594549417 28931770 235492767 384208754 769663488 612041243 786944007 700713834 259878163 278247228 486065028 436959093 652549592 795817403 226645095 831450067 207528684 564745556 675624929 15023796 516809726 769989519 400963402 85049230 682288434 242389113 477119753 967519196 643153540 158722556 309773221 778906486 846381612 480771105 816889889 462118266 227113769 576016188 595961998 869047222 564468535 780254762 934522163 192074407 115961411 977950632 76075779 889703616 468087477 34791878 496522870 577782686 769424351 49167102 153723085 555543131 343209657 566573199 19534659 781993355 574182340 610455287 640245566 103973331 356965181 18955723 985132059 33436768 468389852 373382608 452513893 247851406 463792015 624435256 802671478 238437566 501552148 322430746 317101095 856610709 533717575 526471911 352193247 394025074 379629955 402107171 656476331 1946720 398349536 560440176 122818258 887353737 607912932 904322473 40530506 84126391 436059222 243845769 897548887 268191043 446096742 425214289 540170244 466956821 992496031 531837600 438547272 724571638 90985263 526725093 285775048 138751456 322883515 876954800 675908259 520385142 96264873 659453596 895295103 545579446 908659928 304661338 653832172 586897471 423152966 852807739 42708694 927917348 248739283 357344606 412008832 18044913 527115394 688357931 477281163 306257507 657169368 850837000 327644186 70693502 799062946 302793735 817939018 323576501 126621059 506687861 548186953 602267074 238177130 973345747 874499287 627388039 202993477 685456829 950432085 3110578 897872489 13474309 617208506 279307764 602245309 49077779 951009693 809018143 456652385 726793948 622601733 611688513 574795171 305949756 123819999 541978535 545861373 599088001 119938299 5143044 95754811 523482794 456737948 188583905 648860906 35460056 179370458 789557647 893225806 558007337 247511736 79046506 237403885 77259656 749799660 161968751 98881157 786436638 207558573 190086154 565214761 724886684 302318396 256474256 637669282 466100418 526729377 132685441 269468915 351760496 231274632 130009462 432479808 452850621 627383879 597133331 782038344 730586237 730371370 472458932 470248979 115869265 751133065 873035979 799466830 112227459 991038335 960102640 39618321 858970520 327838372 187359583 151672020 401317940 604885728 469637488 742846780 285623435 850726461 403262044 481615242 475284619 57306265 240910228 611290244 672219481 941613157 142529447 570243700 517603 138696414 772077978 105963605 209176439 567198883 587563097 50410918 874440926 795855070 660577827 946014330 536463150 322729206 360000776 832640026 790968580 638278683 551065787 731410902 169773225 946786613 433306677 466371045 460676777 515359141 60767429 162345095 210871238 542828255 546350139 754085832 372306520 229097377 725337080 125020604 364535546 485078409 281459909 177899883 950805112 772970724 278440524 512520822 732594656 640392171 321874926 18242565 879571420 264196874 929057059 962281272 279379090 453592561 379300985 970250310 480506718 406530357 203910703 220119525 673487119 859297436 904226549 822809877 515272305 639777061 72613113 720011552 887642935 461505187 673396028 149825751 144970332 483080274 251260080 452365647 417783520 738810751 912643080 180381328 93841718 307004981 681213192 698588481 774461884 676030003 870731201 929381871 2267605 218825457 31637159 478367985 362385049 482691585 200071106 860323045 855053479 757488900 657647483 104942467 364448797 308069465 583605442 204925845 290490210 268393391 464818892 950252834 816953749 16100244 650553806 906652586 899157080 112662868 400345945 148181450 594208851 35961703 885381751 546427903 577973680 875161480 971559493 906638093 44302519 130860512 683738804 807786640 152761575 816875229 619927369 506832914 799409184 524184629 927504288 998396231 309737539 956151266 479212464 668898481 708995869 142001830 436223236 269602229 276467998 860891887 758462825 481178998 357171868 424947643 363430807 909970481 421272145 588163573 176180081 286344023 67546335 92686726 322980065 192981761 8991405 2941386 546129633 841681798 762170856 266331299 905394633 320767832 439863424 45115297 134689953 704601575 921635177 635209777 289156455 868799917 488077139 844298956 271960934 958120338 475110970 575862614 437371159 979131958 31923904 316115209 107795306 754404563 342457772 321750219 874333464 199218031 500427283 436110027 275755667 378823368 253748182 401432455 917072450 101020665 698145103 76841080 237712405 803381233 846749762 387833096 613695834 440755114 615945627 17762904 619458583 508575366 114514742 160563753 591421358 821183887 47884010 881317401 447566024 610840655 566703784 854340365 227228883 727082203 611824 603632875 410117734 509287544 600677184 616350766 883256016 76022125 615039188 214363051 193634905 640268569 394326532 865837002 658102314 376342248 51624043 812880153 218795437 818051934 724549792 134284446 546529683 77666415 364453162 930679014 299586066 377493764 911285059 462026701 726356114 49091150 336179330 241593698 654613235 474292377 573451016 273765902 72076483 747672820 254693541 775707743 275974517 768163867 403340294 603603500 788601363 42007814 577214091 137110294 15728230 124244960 847167110 577777969 255680687 52040024 409539469 758203772 966321226 166460426 906353683 438588095 81101088 479757597 55347923 559952249 342990320 899031172 460975958 227105754 836855655 167603941 928668004 157578098 443454625 45825247 822595225 950926208 219294574 416849250 71779425 575201096 340786594 580309408 311722944 682940965 7047023 642413250 747274552 887183938 526498931 588890055 733421978 542726615 54772212 736623360 336596012 352793187 924211600 521477597 268215448 611271934 745628783 21777269 134707404 779540208 130618076 43766065 310206777 220472502 598482200 10546068 45128156 523930282 396638216 941588623 426019606 399571494 473031322 181311350 221878652 311066265 347228912 47228583 289401110 470272549 485775144 716013595 563040843 635925305 166007761 285044630 850163999 801025900 267377917 245961685 615857723 881419742 185264645 514793549 498920702 931747778 787095245 48901049 397832586 3528497 746807927 276960214 289891696 465074387 800369557 681063309 23734615 818545533 700474625 71184148 950876994 52723377 65917495 995843999 110024361 260019872 107681158 410611146 358082840 39039656 522503370 302905215 142344398 15033656 672047056 776468065 374089552 724057476 203074442 627566094 323789814 731751087 867569041 795628430 578778157 56806857 514835689 469067734 707911602 980465392 147022162 434798068 554702296 635466598 154895992 285257905 927356609 123198689 881337889 659009256 29986301 972097454 737875453 41856312 328200638 563767157 617619087 972391521 25423242 818687935 115363800 170109296 335293124 20066354 858546261 657059173 487561403 65016705 140767054 277435781 287136630 439144987 31620394 607292750 597211814 344702904 348768503 66650683 865336600 913553469 175504054 170251846 546740008 738753356 974953025 985620085 452321560 983806512 949319190 721238352 379931913 848194900 998280112 709166276 942480447 832342219 859333913 684957204 8281751 51156135 161730708 119903483 560259026 929803019 184662639 548439294 811341500 881816131 238536713 273310113 402346207 802831081 442222839 411062471 81364977 46626164 629171797 542687582 120462531 809764363 820623836 969599266 252704864 996742095 803299178 382095500 381132275 869299640 93242307 1581680 881125973 605402622 360171343 945672346 679595034 700692896 878166420 897912435 656853619 8914952 358993020 499761378 226342667 20279195 750163234 659278266 604835253 318487282 980937179 368445762 828964599 769199051 753585007 37175410 682318526 37199105 215171510 652004054 897104254 35053019 447214146 289688660 900049945 549835773 374604136 433041630 204743386 241747696 305926295 253952440 571400686 768815481 648602059 432259186 506475480 881776014 142419023 970784445 220558445 564794676 819951222 409269712 604457943 139245656 311708804 474674910 24480466 705668757 103951148 517775866 983396289 867665856 48423465 843036804 827744378 611530954 592879399 28250185 313771044 304263438 523950599 254170206 384104147 676461825 567043347 562790150 288917924 232934637 447938907 257457641 325343984 153205933 249954139 988382566 326254693 470475755 755677534 500475989 177972723 657371017 395238636 130418581 232967869 931246056 256013419 211298983 364005832 512243558 318221598 782663449 609952979 722786591 501624965 438422515 114485140 844242464 16089862 647920365 559274493 840569972 210564845 704511140 758872109 674460731 32093329 923269732 789509900 760425670 467980732 535264319 576027054 938904014 781472590 259035806 474449727 706827167 124464331 433956686 919768166 851714825 842044366 733395150 496815938 525797370 86778953 70824768 414620699 782610647 955135781 423044458 684210714 986986846 634562676 883454165 886750156 455050831 801846583 882190729 57945074 335360438 97039555 688544406 577429238 839806316 408027988 724563769 666920919 684665770 121042560 729581686 471557734 116548605 345216404 707380784 21027246 334110016 256794010 708138714 73973697 890760242 69646531 620749826 779459298 713806170 336765989 957779750 58247027 178693031 531085247 171557616 829673337 149277844 746681181 792814281 653780391 10920485 645045440 182105324 78136983 695108309 566708688 4098556 840600515 342090307 357870561 472042822 146289580 711328451 389202419 892912039 418057215 487984756 743368882 602891225 56867140 517715958 120015363 341234939 498423931 324929966 3616895 157833887 293645350 610637369 516142993 839803437 999533131 513054115 473868759 321226065 482541190 14851241 867739566 303789669 71567808 36340373 938910019 898566565 20720933 787144029 997562306 933477093 47374992 453946101 47282237 517436510 792920149 990004748 138066699 974421558 940555414 339209756 244235578 763060427 218653808 346819625 138754983 901554528 747868837 912474444 348198166 845231781 822240795 590290969 624331282 25818409 476028905 334974643 488836117 721360030 328908148 899281001 234827445 29983948 977023443 986953942 103699597 983125207 672709392 62219470 297187002 677536643 505297273 434045886 826370463 113527665 64570962 212671961 546413211 424328634 609535167 835167697 27574237 725281251 508500306 700713810 984648401 380697335 775049848 826588873 387774839 990828420 433904438 532459924 426045977 741324082 559267540 690803529 787113511 646408748 75147351 31107445 711206086 248356068 180083113 618369949 539373993 113427461 370091641 179142085 875522424 921261500 985821152 459765334 498392407 544591363 23461203 393292723 433427481 753616375 543733505 525213810 291256828 291552474 415860251 472226228 654588807 631182668 441152968 829435172 724191721 680785683 502804241 165181230 500522224 737435126 118924822 498367533 418839107 59369533 830998756 572691330 917990916 859274756 339503338 953512529 666965808 528635449 464881149 294395105 861892529 878010360 243042094 908393017 837518898 707417869 627411484 74174186 883811988 327027188 599768314 68184761 295841193 502197020 710339980 247857934 224167818 328256575 327704591 901611358 975872087 445766372 584852819 484034998 763166630 742623626 315924701 367740627 499822060 771916229 476452624 789306648 597565729 431474263 713538253 737819594 327440446 522396733 637160918 153451381 228013691 567097264 641068951 948837675 38389731 900386427 973811061 900541934 579906359 377486383 313566576 972036161 509436987 906825859 681424190 812464653 532963758 588307218 248502022 695363943 714086284 973251344 873018950 268876684 510048557 274677832 534740409 52545390 875974717 998078221 672926986 868541478 670448039 64657951 603400563 992187743 947094590 445829690 559234276 194713678 975753001 357720191 31574133 986265532 459187290 706718690 235240273 675249047 97146846 787986762 831927860 158977929 432361588 64359242 43571583 378771373 176305017 994191323 795768234 444643131 676490358 835387927 447583270 242534687 744253114 19185366 724179208 349400369 777961924 538317627 68973001 287161578 91736209 443123217 411683283 763779764 851628363 242044735 198566890 408237288 832044801 916953669 849902704 680663747 982735583 626332786 463193869 843509655 540863968 962431674 279878132 284236270 608414273 244703645 754818040 646454935 426632978 46089661 387270515 428985321 603932787 724559837 906501885 851108956 27577784 994886275 597683032 309869573 896003977 721023043 917355974 620179240 477840877 465832767 310559022 706035001 302552426 513408039 112175606 57805892 930599110 479708367 968865889 376794561 616980459 496120437 702989762 387330080 503051914 365711226 479284417 203438240 73151664 546763877 834965417 27878812 762925466 147503539 783283958 685503397 753237868 405549348 715976265 588430043 496822829 5854653 539097606 908136587 393109899 49666475 235105431 595828976 333834810 901555270 521367230 417932974 876987562 998578781 266974192 460197571 942722573 967069757 139965325 558025410 37686376 821786155 214516256 630289858 480007621 219897019 813360410 714621689 647368811 707466211 717927474 978103931 465427623 119532051 737647040 298889777 482768755 782428311 154118890 798604189 464646607 351692875 226997226 716158578 997532657 467261802 435406536 98445046 657964225 20843896 216448179 131605588 962436359 914036646 603217037 376306312 489793120 399086842 648298299 121290211 608227064 169060790 683679744 96215475 529779980 211651704 531956592 988713110 716600506 545085343 278126695 706411900 120722048 678587735 570210162 287934209 497054683 566206609 21467429 410684917 545087962 79352474 344324156 247611949 421492331 319807127 744689167 332963550 17161192 708952015 775846310 155886494 873909981 990943312 374968353 875122446 785261101 161218082 380790059 367407814 737990090 266163525 338312904 474759670 316274450 452200555 754413712 516236320 434981101 205958687 307338789 783931719 639443100 284744678 652009298 452992172 777437151 285750052 625969234 956153035 386749363 83197102 502334605 440713740 241254142 144264176 993520352 296567517 6029835 277661163 400016685 256490463 759006195 613602827 544308399 902594406 23309975 576582845 553281564 141566980 208335063 360260028 538210055 80526857 98841107 513740597 599387246 508695519 244030729 259867818 443646294 38629874 498598127 983161974 132426630 674583835 223024931 324198768 768170423 351044665 551575553 557437783 861161303 870133287 417410368 587199245 766811971 185590928 854615230 164046096 118140772 36847779 648290798 523605347 34703710 718454204 241283899 883671735 975144992 655551594 323321106 453626304 743172174 970907900 441584625 972783891 46498554 607452055 523438819 275538747 215212175 75386047 495202995 230419046 417070217 614367746 64758377 108125275 831259740 320463164 30608039 490214544 756210164 932923430 647801295 686444082 266519200 447122163 601795693 808956083 929816281 855127941 969601439 668287855 629949425 711855480 964406121 902162558 121239906 343631928 344343175 335719063 649978434 175481825 714049491 537184033 141271406 918133922 297770829 667025260 884472582 840224849 559808731 21236561 640420063 230422501 876924474 651887765 872806524 467761120 905700411 203570024 441859728 601160558 895697655 942923971 395998842 457158066 379610710 455229043 738792508 989518671 857378766 992892295 511814674 440803901 395771044 462248976 418778331 671667099 129497530 257125991 655904740 737388472 103492587 444555650 178326546 124303278 839303360 834445967 981707214 883566801 795418430 456367083 28622444 514570738 713736149 327340111 186409727 926084033 315459980 207535628 623117713 389419492 343450442 9727964 102619040 973148290 919649909 184028658 389050458 118586433 521464968 368844736 892705881 342655556 457254688 714065946 488553436 94993969 631386766 71686059 178583704 263096088 786571234 107233859 857301797 904576799 865398627 91022354 325930875 694438548 632170752 954328808 720491392 771673897 455325517 174711046 226338500 778166975 175263249 868515422 432695946 564029064 398856897 702696587 364439669 157651904 976832120 822982124 745179604 591133043 241512686 490644742 751584928 289940288 370752147 744859702 748905516 230196217 241508641 515220650 275637760 8492628 352840654 774195230 516330095 468792347 632226226 476831230 392592805 819691312 525744531 733127214 536738816 284638693 929113522 49628661 986607441 468560340 69734839 257793524 673452583 556583924 981853302 82993598 246358066 32856382 723057896 182769525 579969277 489629405 381230106 73446401 869766886 593484932 859915060 378132698 397797943 52317825 214166348 945708084 507834704 649587527 101982380 798847666 376399151 326847228 41346693 297405928 532210543 216142125 966741208 436995910 838229762 385809404 584319084 505364943 600034423 701194855 528891760 571095538 382773983 927161027 684696859 721098199 525601626 465822223 135383791 608890901 740850199 10305852 369382289 747150230 32461885 178167650 873682043 85397335 34522839 649198666 433010991 871637278 219207531 227943095 445284273 503594817 617593965 588496047 236126189 353318374 607652290 153635163 906121467 644317501 710324864 679611403 728197358 635384436 903199484 7854138 220688140 485462223 676215564 66415535 975525297 499691577 816266188 553386852 603515182 898497759 538024050 687554942 641670168 552733578 131418965 443212006 546758409 441789224 857416825 673719684 52900848 62570734 796458511 687943344 597094694 359053392 875759888 711893006 950561155 423448218 381004994 152875151 981636603 782500251 298353732 838639275 362601352 314409474 153577589 615410742 299603111 722848135 437253977 489864281 176100789 389694534 583145398 356305783 14827614 246587372 131046041 239938429 410002874 648967130 701187516 388234430 381684589 803965816 576363502 325312586 295377324 64593942 933910507 942445100 86270537 322777052 760847549 328940409 517108582 722994381 415776619 668494 152220841 284158065 506251209 225031819 968966100 300832142 843861171 827380499 707493623 66744345 203592453 498355992 670370600 416458996 183117637 440450066 214397962 130047648 878423950 702365061 444804193 972773373 668895137 876254148 183793810 718704445 876220404 81889272 984251309 153186540 369745884 431328776 186528889 498071293 60037876 855567281 117143453 978272735 896668302 469222263 172314318 366023017 111150785 991355015 351886505 768400499 708432270 262431579 305113082 774294664 591154135 64125439 157356344 562586065 306048282 979188053 546204324 852690585 662092360 622844978 781386372 844766356 382697592 636775472 43733622 123799392 576499634 385824063 984486724 952079342 729541573 784859293 99058603 40752684 682498657 606508038 598099852 821611631 694893153 602660904 715498127 196119365 231198732 442317597 680726114 963218664 62233524 175854405 720678709 96878878 267780092 707109448 393164955 410160038 571476752 769659743 133959201 455846305 442293109 336565993 199345075 61225894 310539111 268605393 137859360 961783557 633332573 464076669 72057405 567577328 978024451 736818397 44865016 802212050 597503559 944046973 545306193 844588978 201230204 402375427 611523249 546194442 200572205 950377681 741336593 530065795 522031099 849367570 413125218 711682357 305075927 309668090 949515721 983670894 47576628 210425926 361292686 342138848 845057973 408254081 913452511 173034258 763134749 828673468 699112183 78189529 669096959 244577851 712762618 871049252 528888051 321277611 191216594 878135986 813807606 815911440 379778171 694836108 137100980 854422444 161901460 931880725 869555958 418401690 840773842 271909876 106891989 735698078 215517710 799036691 107977514 393934828 988209625 631989246 136453701 665294673 347800334 524684504 584033394 518581074 914083843 606006891 663346715 920365606 349253684 306311270 729067788 643128881 923652482 351907994 685498557 362458571 516434460 167144602 668227383 814956445 44986756 968241217 422559818 806738740 49928528 264741792 731218388 287104104 770895381 643219904 452962108 520862478 273508525 148189833 66831490 504434477 486903728 818285140 14923190 227927948 789160490 898379859 106773026 156502049 966014402 900467080 788969565 622381753 163364574 811755747 325638613 586613807 209027483 757614118 377998060 870600484 891702608 90010369 463756612 377619335 42621015 732298051 413084898 815178797 39388233 677660891 962870601 951356233 817482429 482270425 512543973 454528284 112047515 681668521 849762128 892382004 311150762 455855764 833873271 295148686 163336582 966114983 703498621 493952977 921464006 105630687 21973898 622440809 453456237 355813787 328510967 849863798 85864689 98951839 287893908 979820111 55027060 972572807 767276887 399169043 509321601 368353505 525099408 758080823 372067391 199948769 676433631 132283467 232123443 597223322 796350498 724791163 923890928 134385970 290953942 838629938 388099919 393256541 525229609 187003935 311109503 663417733 273977819 350484650 215424888 376192342 13652551 187741338 501743708 860115062 363202112 63973546 987599649 50032452 834349463 666396266 664227409 866435206 532728383 456464954 222185608 527986607 325819977 341919897 342749356 79317849 819157605 595716561 856449433 70148966 98986213 449707562 850417234 494978779 41284940 102907889 296578478 74969464 720429958 340547407 607906815 723577116 841519353 697757423 489794084 985962846 786182822 161531801 514382936 569610097 891439522 118813232 535938617 753579854 75720864 895250044 16516872 775619006 383943936 429509531 861584098 455061214 17466755 386333207 14086631 873095805 439080391 83234734 659940359 554657551 727582595 482052517 300197515 486442139 168252249 19753041 649195899 601983260 189852305 304500949 856503053 34878132 22836139 284803505 523804071 112859728 269445059 700646441 747271240 750223077 112992835 606432754 976602866 708178848 909612221 211536025 714997215 848106677 935427119 595436175 188410290 904428287 41112308 869014979 406142978 588337576 299780177 664433243 796128036 443712995 963534517 883136863 764777830 268864495 249096899 709061811 307606851 352801499 122230921 242084793 899476014 386680656 280142784 435079428 965413026 73195529 347902138 187941687 227168290 351144639 869819877 461861302 765631940 911013265 575981861 457664739 984648798 256576537 535152305 407085164 916308538 239261624 600470067 248676269 905644632 433867911 862811118 542391436 209886147 864124602 258304599 891038904 293651731 754560621 270202220 862257737 963594810 59330867 566819389 465856131 239663861 300621872 724394131 388303191 434253062 698531999 807909765 285806959 210485579 830955395 224389003 683181372 543217007 698956977 618108770 779215994 130067406 891849789 394294477 214695100 487296801 142303401 550297308 589014662 844679673 694705426 329706046 765377493 148756131 742653888 734227233 132824410 836005568 810615325 506258995 921576595 481131430 777477546 957465502 504879470 515237600 355803209 532643480 859813511 483444971 943579342 31746064 784922827 975029780 115036373 599273498 219083963 775524543 566426059 352293269 679486859 472815203 729638359 24619838 925798218 180875580 612953641 218535718 994483862 23309520 422234421 566752032 206871341 9452445 546324311 139567421 424659976 110009910 432736856 759176565 94543424 110687345 630003403 25398943 125557818 560555412 736714619 980729730 165149669 104093169 150285948 463638753 134614523 782713765 848848181 141426000 483993606 403109719 39903000 166751961 993442322 890189072 397436933 34961243 296310453 550400141 823382499 526853376 480018821 361674844 841411527 740824485 35063565 225724808 42292001 555338949 592916938 318085571 263472499 948223830 425379964 243430575 769028311 543475783 238848876 301791672 646159585 677168390 132599424 487850506 501670774 749727665 198748788 604531137 415875498 253537 373845977 376206892 569376782 884114420 723874854 219758638 966483123 337944330 806922574 839880000 847341418 28726280 625479995 152594943 72027935 450513981 742908113 364436375 494839207 724723290 620969439 246088677 4077481 431048349 294181314 91554409 16174453 168406778 265129923 245562741 426078203 842454395 306547928 337885716 540986392 400820051 905143043 134562210 238555710 826624094 835333732 714369119 885504581 382913075 961361107 689562545 576036246 33063683 670856049 198529401 646347319 713194119 746741809 835387159 346303243 386678072 448403705 35085588 794773054 817577514 835075467 877071325 190412479 475578953 999719029 812350797 139709381 896578712 271611978 130359554 522571767 215192857 818109507 567660481 894786223 170283408 120303054 575805459 70875481 689718194 71524920 371979724 772442854 914227753 760321584 667905242 371767143 952504468 374575056 287821717 445065626 664465339 463083405 799810809 360142721 105885182 306997768 531733046 783233456 131157177 306958206 534130070 67666396 872150854 470272039 508715874 966996738 929029499 957837785 692147858 828268734 272377864 847721128 207756921 989335316 327229399 875163758 568640256 476393248 822512459 524198697 607659367 312970492 9041958 789903319 121511744 744685550 598290032 555169884 306215182 791672437 733528192 333665655 290848167 846784283 602646299 18585708 130904071 669921178 308065030 754878495 362265517 912168268 446012000 533985580 627718538 161157912 564713194 601849053 41747182 905835034 65671832 888112518 449549523 995794628 460722344 433663765 514253087 785504186 90073066 374038888 191238566 834929610 611666576 544620741 678313922 751548895 955731555 902452618 133473067 159765422 725023802 595719635 504577424 228596602 850801917 73735855 350009935 846702150 699357888 458933561 566611611 968991347 316003182 793926078 291235736 413068268 949887217 816988813 499823321 70510893 521572232 401047580 567343021 871926196 352735130 178518359 681722618 868792329 791918297 428030324 91661678 166240004 79370966 216660576 909888464 219991898 490906022 299114756 778547645 713947152 929015814 62599110 189317412 652984238 344965455 515311533 390720020 201156491 686057136 281840486 843292693 299747622 189294815 840750030 842723776 208894459 49417421 986406388 766248681 391991850 705863462 844222013 873408904 718551022 794894751 62566663 191077254 883239116 888500826 635507162 997599233 455507047 35337365 965404978 402566207 611011660 607860373 806721563 115302356 833640635 221681356 465753582 164743278 194398698 255933985 369659036 961176486 882964830 846206657 143118872 565389765 683850911 834854325 854892466 109317228 961807655 421663390 575066305 368925659 396431238 817896285 253463581 529295840 772323177 932605351 566720704 172357155 76846841 531645547 752164354 461700218 916601483 222145759 498645521 457847980 388198709 130268054 446223619 402966677 574628366 51426724 26744244 116736444 7193241 339240060 775932712 557558565 761270220 914069708 596195033 281875295 649718583 447057528 649843860 907201092 34223877 547387561 152061192 879755877 867041634 497018415 588522633 980462312 236232478 657462174 573579347 422190914 573895470 153275833 625978362 589332866 745750826 790238404 384727580 409188703 977266396 693752365 43231566 623661305 493158719 57369732 643180334 430538996 249523004 587926294 415840449 241840517 994792488 549889086 674800551 497881373 321721157 750541724 579171754 291738969 595551908 925602743 183352933 70953336 100745012 1581792 600806527 408623149 640041909 900584214 773373789 68917343 491217368 874480801 570212698 836661725 149046788 11184687 353564810 720129798 854747009 507127376 932029917 411536138 679831171 463246687 577355692 92327390 453579370 943484711 135032374 581739819 65095005 654768567 836878137 39211534 146233685 660033581 340822949 41656057 883215237 368490418 73177497 879143827 338255401 660275279 582934444 637379160 741374802 820540340 227935680 150995311 975098603 124455008 133092689 244587373 929330224 160586587 819228671 278193571 808068987 763901125 36738315 704309766 650054635 24995207 348060251 827154814 827619907 528781280 473004187 454014282 738464026 330768074 765255346 652097917 248897197 172247928 854806415 586055458 371870636 253097885 831934665 860372147 176408025 715818836 985712078 317253794 775665048 621770918 561445536 513762183 343677656 540945701 83855682 757987098 738434399 276054488 772342671 741699506 777729387 435453477 8314090 952236576 508507134 525320594 385493870 106136907 967578633 483373800 775987847 527749341 522154706 932576705 957444223 930342094 399495844 504873547 179611961 319501166 930893730 553113214 748772335 757855892 635610715 249815583 789001643 949975586 544001014 960848463 165822345 293157853 432159217 490977908 506757545 441472316 345386047 559420216 46538255 58665860 820568807 554942783 432981332 362360106 218656886 753760508 440063726 874732923 620407614 593590500 292383553 66698323 985559461 739566384 489650374 402952204 45350158 886248304 49437687 685817347 431436754 170495597 357073057 119000807 580317980 663583135 727019441 520908589 408595117 643965794 787522418 560986672 372320913 739347958 92028368 461658786 719537438 170054145 241733078 520550505 688056937 500080514 960492246 210494420 489635414 59856064 886810893 205268861 88441947 551675675 471706656 559322089 172375293 603719005 601958477 943825505 945030665 688921887 765247904 254477828 689410017 573161290 152016866 856455772 515122931 638999640 894619352 491324715 262195941 984582516 528674174 162357166 650753360 572224548 522720476 738135880 465376847 20801873 576397258 702952873 144754105 671078339 435761966 167998567 19803763 178161886 372818033 957897686 818187737 505003605 589273965 146470539 481019056 678462578 188997497 302709073 609005614 395031734 196000816 544793244 255026798 991743530 300661539 441135261 87501433 754291714 781212605 956056083 353705523 18193697 460194283 796181560 33772125 2492361 89749457 28927834 581536185 388564545 90198512 7022770 917350702 410283272 274818118 490284962 855325943 214956750 875983669 170633329 914433420 236812371 327335856 687890618 495075707 838486838 708232159 752585856 865650101 813528106 190733230 787629532 109909594 873890575 188970703 591316754 338347236 150702293 770734979 185862666 281369468 85178135 215334864 811220702 142919706 964954058 444102623 510135773 890975031 261633409 123794208 370033913 372977227 597367236 991124892 820019825 301314095 704574076 975735602 599367086 809529189 830856363 183009442 827306001 407938195 566002136 99064355 472785197 43968195 979528536 962591855 931411696 753651297 107743331 882333877 108281966 159302108 682332367 374780881 454249269 935945407 865957441 576073322 709582528 686851347 896202185 337957622 12400400 749311946 199064606 408002257 648648657 772988322 921609552 984736193 842321351 189817593 834404495 112204587 862051119 842170849 258191693 872008555 463498664 557668791 152228656 697089281 334035464 823956903 400366697 110232108 583558725 206849504 803811325 836936691 44858677 971208812 670125171 459525174 902728257 445579032 344803069 195495947 407174894 927583387 748922668 127278875 697705858 768653279 465827075 887195526 115182359 691731582 924685370 790415881 887507018 588378407 323401197 465419815 156125519 385966346 341566256 747762905 187083410 841631573 860214652 135110460 888812632 504507156 968668822 366687360 933617847 362782566 25580157 12613888 137633843 975170640 654295084 421645 864280249 497083612 498797612 517661438 279813743 917121097 362998172 216175699 434724890 842008102 848900481 341046 194821464 343657147 433001396 710025604 68103318 586957247 38356685 655027447 794033139 290090913 202399502 600817338 972628056 287414815 774338018 208981798 356419815 869703542 135843414 194484543 256830897 947832768 910801657 796301393 952694788 338016674 541492399 161562129 355595885 353050283 447793155 260511162 452157537 409277008 310473627 39746586 153049633 511451151 950649481 608960507 728587281 654436108 601224571 279184523 490190054 224204216 906437296 507987375 70860256 442217906 788687015 422371995 214502733 683282123 496656410 28585917 27338916 972821714 823393452 141417876 210752192 704413357 784857724 850809042 459064512 726465328 145871613 852748766 144133434 318941620 711879677 821801248 912500467 722425722 347643130 54352149 355506337 396524091 934009311 195242011 975067900 904383627 407446455 59652887 566254510 651463936 457102284 360329920 853608453 550869627 90859551 469075706 515131288 918619370 166034236 558537093 683693375 277214497 619609431 103142165 508116869 264819649 89934604 458125208 668056816 716808570 436285601 295015018 728321830 332820103 994887322 882123365 908067687 539156036 335298962 654767705 943452671 935239952 769627978 544950689 335748303 804610358 486098189 121608213 562617560 309370532 364408632 817780960 251883276 220610389 589561329 536975290 825557912 273864690 847401735 640294964 188324771 787241480 313157433 187129371 978228470 756755018 70740615 391828575 819519353 859575336 708784280 889630270 965426164 254856288 819415976 318249493 631995182 548375495 423996366 98782855 645627954 156402319 951587513 384696056 533043587 400506604 97872667 76914070 546527853 624090837 607155044 624407736 813180279 123521218 413028369 992684620 705579307 902678589 874095534 756575676 667480940 973791882 223528932 931158380 559167135 601238263 885771613 963376040 975173665 822857313 145126504 737683186 237638011 244788812 780291406 515096087 495991281 769360668 138090064 21242149 642083543 312667870 597655251 856263368 770438931 128462121 115131210 526568135 33758377 803798575 919479322 987745570 788212397 381138922 656180711 454695408 667109576 155615774 399649852 484303230 899507494 24563201 549306139 12728906 589887133 1887962 385462395 665613757 355298480 753200169 411342313 330426122 835995103 741629418 131717747 370131002 723237194 874638748 93127093 42786438 637660302 480210708 328479147 540652841 904444831 663370159 250892203 241445885 53302438 390789812 580604762 49545879 309080890 808400051 938675684 125837180 343021306 466603121 588778351 321030071 99880734 836238945 468477188 937198366 586853769 351649882 709330573 741551749 805195837 509572344 354861171 46992219 614107675 277509642 719705298 426784986 211524819 795723550 294683853 436004577 368356500 627838079 392893727 145085294 257570876 495246586 593924000 397974755 218678262 401852589 281435708 353643803 501894619 654225893 593797468 778003576 8620536 387014214 681750131 214454966 957781912 720978294 477647595 346245321 580001855 42176481 489398200 908645773 405530712 458969163 604131092 524658149 471959718 724624208 154115169 682625263 907656084 614648092 270140358 726288469 482230782 185722397 58171734 344734959 165730747 105963855 806447638 693545176 780805853 671023608 437311687 923358195 864067300 479916185 133047587 310402854 821699062 570722149 365326974 304326977 139127734 323457892 431711361 277194577 467721703 156523327 731325302 973501404 56358495 180608328 866910490 489478357 364016410 738970959 634501766 615363335 737626039 198187833 734908748 709780570 777560833 426622415 997749092 494165029 282138858 61150425 447801723 655623061 395917829 694177660 235463128 769014428 929857005 595350248 722886334 38164998 708431607 151087404 286526931 756302111 431209632 830143322 929377109 594602884 482710892 305694793 783927429 198718892 845439632 551368043 513080063 253791353 305114004 469318044 562421201 793380035 898690388 255566094 158370883 263371476 196556619 341025926 639568662 742255886 472294983 521250657 601121849 537735233 176909258 483603694 878711185 968757607 691493403 116600748 562449447 737122918 272354219 504546684 458631847 52133229 704277888 304285697 731042960 620323542 138925034 22746389 854016928 941314551 556866542 642041503 24390700 908008634 638773802 70963633 341322528 531318498 934003899 953583263 778730702 129303522 825672886 254980418 212696566 200064233 916499735 71124 463939766 109383898 838303636 452514911 414170899 253076491 517533005 711676859 770504039 547318863 148499667 831592927 887006389 42515241 420148384 935009276 128791754 160131428 588472718 121904159 784859278 905100288 250145857 365683024 691858922 963476504 516384743 734254993 182434980 200723668 31133408 921937787 784987207 549708278 669422402 524798336 727031297 704559640 145533127 346564618 183884622 360080202 148270126 360233295 554900509 893219608 963500583 922030476 180051138 186359906 740305727 611755437 922140342 871022533 467325177 657047602 896526349 243580318 595651174 797615914 986452184 611932685 431542231 185220276 376467622 105701413 112581671 211315961 20590575 690472604 145066333 133592555 249190601 590705723 86556752 705186584 507173127 261592383 554269175 502741129 826929982 936638497 240499992 784742972 451138692 570964410 197437483 811927629 349011977 618220267 503365739 563981138 604816145 355728479 518563081 65625827 86855762 225974871 312474742 7395728 445373911 162429930 741432707 428453629 983497327 471141180 507455512 447315143 322950536 357521133 288207451 206492168 158357411 377873083 193333056 338923646 838824212 123513147 494272652 771322787 326285780 728750812 385169940 759038890 173958320 634596365 417444724 529286443 324733865 371070765 323996515 434538751 762179604 701307886 152929613 751401034 983802946 316072432 288479869 899385831 761699595 126153595 107304517 92635675 904747419 763738124 682063414 950630054 69850919 761138007 159106939 12965191 853493009 484769539 199521266 138097656 132845887 159656124 56874376 894519757 237147699 878789203 943052282 748759294 292344624 234298960 667667700 369686088 719647347 339118212 332045011 886651141 441607661 206622499 959438910 855057952 374449392 113627462 713165486 250627734 71455807 117799840 311276678 976692920 752350374 856842112 885584557 750683927 317738049 955616712 776953644 92343728 633329604 496435941 7270001 336933801 569651854 609832753 717348641 381922311 109600470 220307378 970164635 860849129 328451914 299335802 152529129 925576958 859177557 691771373 590151059 352522488 289553121 266050339 305426569 696845168 172904858 794062464 329159449 124075989 735576840 142653402 362411344 552664545 89325743 612102352 49942127 92801485 900838456 435357955 619540778 206031261 835488702 347188542 193886997 428978808 748275730 580409852 251250576 649421342 615631398 5216713 216613223 540874698 290965920 905960468 91010860 489603689 941766483 44712934 487553898 972754754 293167696 180797104 337731438 396301214 772100183 491903383 492816267 529228218 221976284 547628280 628294536 652296692 681880441 306630312 425334358 235496589 57376580 474095457 17491679 642483794 26131272 865233231 554441716 112254201 733173892 293382342 439449389 277386341 877294443 511484298 222473187 749383668 778194096 991516524 539938605 820329335 956034672 245300549 561413442 179255745 919393859 491686917 939275278 981299545 103002669 756509317 10716659 548741990 535754202 739722526 22437704 378995435 121618579 947336425 269250270 437315923 828506758 833921547 129821358 708455232 733579729 353198716 597080870 264879022 983358253 302810717 706473928 960678900 421068651 959215730 551624826 647137909 303461386 924071137 909883201 894057866 278652615 85901835 283280269 924987988 574644724 658840598 852345417 182036145 454193592 299441340 918515055 175472844 412431252 980057314 169440563 223797903 529865904 968532013 181644059 706672468 210965063 639363682 307377933 131111123 173811804 261543834 562873653 136253443 907098730 960174881 282988988 986600565 898440576 671335138 459126140 185901187 502231078 293806435 112678339 341149702 337090720 637617758 273261761 741484301 617291914 521142498 752084550 517155696 42821370 537042209 646806109 540844055 841313991 620358432 329952326 28172276 405681027 636352966 949992255 209986392 109492290 110328205 681188371 668859879 310184606 833218098 331568691 787284593 299327504 976440084 826462908 278098529 720146748 639291843 936969677 207618794 300169255 381350450 555885415 324996536 692503179 271460983 586003741 915166554 212379372 433008408 988050413 420168009 153088639 864480234 811974377 156381668 566528512 221880226 662182205 510320259 94915859 745151266 999802923 180625554 605552302 626773441 699716070 116412765 272042851 278038151 492748616 910139047 89070851 172244005 789701213 241236630 947661007 446549052 762521473 148203980 282573232 429212448 318624100 282790071 348041730 861372924 895281590 366760082 780452495 959136370 135286273 516254875 880859988 739650819 84470310 834497265 631556571 725087086 555572573 744398496 101823844 819456103 910344346 723152942 431348298 425841925 702845674 719327891 505082917 195022550 108042972 960710318 632824533 430109492 241857275 683586142 675850542 583308845 893666686 887752637 304470162 979493983 371635259 493605705 858606729 643373160 779897705 472999843 97976747 38141978 12550666 741238738 402793411 575251324 321399734 234443283 757129836 141732218 105843011 633586062 267085648 850648009 645737898 904785092 528026780 492784722 773405750 629072421 469902381 71987160 939112253 242468605 640151352 872880210 820566463 62249197 618209885 551356010 771221455 49077114 549671277 967601906 876910290 318598921 626496762 212345309 736469833 416297667 205026886 946668967 998212394 643800900 125094041 779438122 430123447 260246196 236022057 236195241 482070948 881303164 576284807 710852995 37738324 315601831 248943519 729473178 842849551 838655861 466481804 85716254 693138158 670183650 952403084 176436795 970593621 297644143 931846739 518066066 356092369 29038731 125424345 483337102 231602644 762890632 879971947 76622624 201594882 701170552 634508707 695162243 669241286 425242115 152124359 439183753 802335932 794156886 914145052 46334985 269815360 67571983 712335059 894001944 108016263 826005309 439968902 642342263 645352870 913094941 211770364 854174164 880014349 270249109 74062570 149915437 303325162 71803965 390916630 623479394 675595049 121687192 741423390 737669492 684599846 509092752 22502456 897251263 315385932 495517639 581623581 445101800 827227186 874698269 645370651 352521717 7735699 151253881 658410731 57136834 90646621 532029424 972162441 903313405 28146422 60991405 946313322 790700127 491565587 804083146 77392184 34487128 569566035 224486404 998581877 577603522 27644847 702712575 294112008 756427067 666839653 342806611 702255237 283798641 843066920 565488216 302553533 862218468 221032859 902124877 817360151 503400258 621938624 491799227 87688131 54502706 869240301 581685482 714878690 791462014 810307005 995111382 234449134 870061666 478171262 878586437 135824082 306423072 277040846 906174192 851716134 8652690 551494621 324115124 585290704 40669877 605917927 492834958 823130596 517402710 248073553 677091541 743584886 644318948 271048815 645057654 942083140 382964303 218454631 79257260 774789302 191464769 600834322 687381022 655056656 139614647 28467102 192939105 362986942 135759383 398955548 799365911 542661139 152180875 264508143 881412156 575674782 82652363 897751015 249695519 440617868 288386670 730268376 452213979 867113591 646491262 900127908 159589327 42504405 619061875 402207824 484050266 38485580 324136017 443515722 530655398 769400856 354108499 101350127 473539227 997084550 86578346 32947682 597379419 658734717 107741672 469693327 222693266 792285164 686283095 425088676 340161563 751542697 280851962 108306772 146090879 527755573 687824118 368673426 828023067 907129884 902751927 793153993 105080210 383339678 86770633 414534692 885637750 617803458 214957394 157981516 664333150 8126830 604841050 779001310 151661215 800887364 495909439 724461017 311435323 927632680 523287041 418179865 718725794 604663532 812690930 154205147 983662577 937658108 135483528 782144128 30047471 380969683 996280867 400364654 187131315 123128180 296422551 225234198 267048833 273253800 486791815 446601965 8117251 498555208 266728524 930986219 534536372 669429907 147100525 963459990 274089279 334360268 491889962 157435914 164925827 223663470 939680031 145050113 572626255 102445493 73732638 899850911 930993780 94765533 166487179 335313445 107087262 625566167 639504450 6679236 700849265 905532718 410282342 476911967 854371475 635222291 194342717 7016908 250274339 283331473 143719649 616941814 125855684 6854484 840346057 211802155 587988540 539512450 730877907 334130541 155385135 822908996 677364227 767917938 342945690 809810878 901121942 925637797 465390715 949693845 77371941 712589646 612477117 495169216 840615556 736560775 907093206 57142023 649481913 845635264 704127886 584804224 283552282 644364697 873800881 398410310 46910632 970684568 494144598 218992002 912675697 99122220 783705340 642753347 638499804 172541127 47108440 285043911 274375983 882888752 779300265 303778759 326413827 758066636 494560405 233113325 812122684 451987670 834597668 931332550 71144480 798447936 64038560 587160203 107196942 854126564 112359653 652856118 873648545 796311364 811589345 106143908 236506792 796681977 781021584 324004034 832488148 908715578 872991216 665858850 306130125 191379099 710703040 614338113 246479595 418855915 338190410 332545113 179962534 655100166 322709894 756478083 211331967 314797280 319543611 444290600 50813571 722471772 338900419 596889240 125745285 832302191 866443021 422798476 466019724 21554831 687661917 607181657 37911047 157716077 600921045 866270280 539459408 22121970 683036221 244325453 68255159 411378120 938260347 114307625 153769122 897233045 681141170 447651841 613416708 214969391 798964896 156179337 841472747 578445721 341514437 199599275 386045890 72163393 18695218 630610741 289450951 257055606 791783609 9727038 639616353 660408650 515733194 734865662 593784915 340958885 244371175 741153433 694752336 527313496 179493645 435273263 881992072 810897441 714493248 828310030 921521834 186205158 300881161 645404970 713448554 150638534 934499797 194878146 543597045 483039636 919524381 209557451 103432352 633415987 586629555 807455317 507370465 391279115 869791336 625893281 248893251 713547190 743635758 292239691 989957419 848602368 499434320 6995141 898832425 540934094 188830086 691626782 614642965 861093396 206390500 347740683 353030358 830964445 912359088 294272237 684543335 535972964 820356191 938359363 96625138 622508146 693032063 399640766 424632533 603162328 742879352 229847673 669350022 568049533 547913760 606288649 423249135 199573624 893154115 68380478 158298315 787652103 593996841 741851283 474536402 600024533 901786620 927167607 607198714 179871753 929469808 984867549 945717367 421461908 169242122 329425628 167931860 708258385 798336143 883505822 51975836 283419948 290998803 981065585 556328330 251088423 4522871 140628914 462906377 5989264 45380382 656045909 933337819 293041277 259849292 963909721 645296595 622806940 283757837 244208758 688921661 204016305 385572675 547086348 991873611 201460877 179032706 471013169 932306114 108555020 606443190 860717527 132628572 522758672 261722802 98481274 839342302 597988876 946492256 541557244 551748388 955448573 470207767 102896724 714625491 595745466 106178887 119716160 942088893 387552678 519817393 605282741 355625540 222123420 677196239 252893973 656936936 122146343 438514787 963362119 425596578 792769609 66029145 713025172 910944951 548613427 964122132 59234901 644228807 328170119 584770497 279217675 923105449 625395474 368139299 442673607 42112234 703130579 861545253 202301911 658210014 647887366 870563081 252000132 119372896 671252944 883404855 587220938 520586347 74257927 939147712 685282484 406762581 882868530 274192862 387087035 763944245 207005697 55341050 751299978 166728108 784739554 542383537 986358939 40785759 876009256 497046700 857289758 943892660 272065298 175431816 499641961 442774240 706071549 998258146 102228176 720531277 476769529 809628663 788158784 388449220 754804580 578286557 30363192 741612059 986611243 264792320 407854144 524342998 845710058 162527869 281857493 776523682 469062479 163822364 81592128 456434004 507819961 568620034 104949654 784995931 335790186 585104592 906873730 400289946 784681752 353582782 885934262 908532541 692917277 718463059 902248425 120291425 775914110 462132919 666038403 733187086 702760727 694897850 567181281 384864311 601671901 591209621 986139587 719057266 976336964 294225141 282452858 711667857 780013852 118014164 453542225 45484296 728831855 754565916 946314796 271774245 828758044 443463382 848688328 797170021 992624657 209670492 983652087 107510227 808043619 27026210 809162201 643703704 83711522 744676741 358765595 602163145 853305622 13132098 444973943 292492416 152514469 771750869 163274907 815488774 694832890 195184885 177000616 931468399 704918171 993434428 742681168 714695382 153249940 205996901 410277770 508836104 399541894 908817320 159202462 938474162 764722356 411897208 515336996 398735511 38999074 80948009 385789251 29689882 151640069 103132792 146411887 218324572 762666910 156316567 796717826 737360434 276931814 97191716 63500477 150935848 844985392 425213679 269917152 117448055 402934670 908417613 5138437 301491659 21770961 637692334 690694000 149854299 649457046 133849113 722384790 193642831 68137281 635182284 21237841 62858167 187804100 901968613 921866954 159285756 770836250 560280663 323318465 448620786 941030937 322542779 67137996 268109972 575105036 213536984 323675857 356399496 346723241 328780242 650197112 252962357 3982350 815122700 215829582 146749226 799246209 550891926 392007694 579192196 589994700 815690191 773557830 770574598 643674264 657524623 284693350 410233162 619152966 253844246 994020812 719605784 74731228 481542180 987137317 924838588 775405176 768898346 409868130 836804763 611128817 233682239 487462039 346061056 265303888 308375164 813086340 171230008 6529602 41573761 581223670 705960389 111342768 290447100 378860277 558178354 971715556 458664198 746292189 967763844 581697607 409602115 627527360 447508111 169624274 366810957 513164912 632613809 367512401 328257809 977850129 196966607 229464613 378982220 724403280 779627641 354192719 729942183 899228746 821733063 288355853 307867621 947078220 941164321 507405989 845551520 246020181 751504520 4638257 433849837 33758747 474539034 920058885 33307920 974939405 238441624 822111821 362429429 805841016 367423670 729876863 835129533 27121136 110686488 221980635 791121987 930522563 383039905 645745735 72109837 872468652 591324006 581438778 563379245 892683086 91528156 851844127 947222861 317023433 241012110 642227139 279140219 395068978 469002456 743102589 699351185 331288749 815082390 302015393 836111427 253026667 266834828 55778803 786605264 903334990 273478616 407603922 597378728 469117163 32849480 281869483 375459847 253047913 158600707 441298654 126791360 866179125 574606430 506293390 426611891 538340805 938466440 151853696 354848743 404216758 277992601 279943693 453890182 277617497 470680483 699673708 865986275 444699769 519093480 513342747 8693358 331522036 529060780 223017235 569923482 529808703 753640924 216360053 84074987 794182370 149054746 207334361 427154335 821431238 645833811 742871742 853867152 796982372 526728292 552770922 230455747 932839640 182060467 602153214 264611010 749282670 855910684 708504617 6332986 15053353 476563833 394609826 681670310 871359536 158516021 49077008 107727595 16397832 932627732 265993516 50587219 72665353 95491268 507172982 647297371 787713317 660766854 327589888 628107804 296114329 481012737 928184106 387357449 794980296 56225123 85956998 29721058 926180457 166157907 316284165 433312109 928642967 855931957 925196337 531683932 707760742 740965657 283850402 353321974 643929581 225386297 464784032 79057951 426176863 382938674 741656438 99731373 481366729 695120212 968745017 73449139 218230239 734421334 584109087 854947757 156061363 605180325 629284109 674440577 67218923 403819196 42576252 346834621 545930285 638749278 279394395 709238571 500773516 475821399 54994913 677827034 483684263 267671965 581540586 161396334 760740125 608998344 724166021 497411151 174466836 970757380 953380692 592960860 952673757 512233805 991826454 336031937 632338012 701756721 458812805 169522716 947622160 107434073 880847333 12605119 620398618 986748474 64230327 282059133 312411984 354315064 66880524 975587969 461698892 287405990 244181110 378703925 795112613 672741939 887676633 510406513 693340332 60285853 935283611 801132163 776189152 420199023 457898618 536804152 787236757 520876421 851721178 115572667 969806822 172638028 698273775 582642794 546773398 482121450 470255885 644117064 533291409 994557817 961738203 810544468 711284791 630643404 650302393 560822996 357322407 286352780 819547236 977742016 917515689 857996741 291567389 195330201 209813248 970010807 337192172 903886317 386107385 568652868 278743706 336260384 962692654 443371835 21337585 608561314 845143135 514112299 103247110 963790079 166343851 816068691 557814204 580838440 258176165 358692034 662041629 157014350 293946277 155343260 943102235 45956817 726819022 777507227 22434934 931605691 902545013 172487142 304785479 96626756 535715977 807389966 863416632 366036209 330825200 949462179 673220457 117929503 576711999 995535400 880407821 987823037 935230803 662848769 816008329 881360276 63994699 705418547 65419318 115085589 218994091 578741543 586295023 554397750 356855598 86445578 511081758 128805001 965972534 748265361 733630703 309317863 562995880 577253798 629035639 148646797 814421393 911013627 762629957 161511001 302503228 866970315 412093485 99987846 274030756 279787354 668644124 211914914 447687922 987482769 563709934 970183216 517745898 867339855 877853195 360540695 791134551 407804833 533306539 480795147 852757945 892690779 701774069 22114015 184534425 752662779 637623778 258443523 732188116 161274183 227585205 825013931 341004801 466785275 631243059 578806491 204927229 494045069 984318423 8182962 122801573 647600190 572878594 414669751 208346581 992016544 695985771 267651320 130665540 724845632 660714986 291483286 6808630 303274937 115161469 398454741 335674273 335230721 842227948 512661245 461878950 769122439 773563216 138555746 69020929 388398424 64282147 253692391 734461033 802208818 656428873 794291928 75902944 732028625 587408833 677775948 905797360 60459925 473135806 800927676 967818287 450357689 351099121 253228257 170537490 195327404 405674510 726574671 165910557 164000907 630637333 266122258 654188523 824788080 100905104 872696452 874615001 901568333 698151453 365296573 292297489 372123372 176316074 642691173 127458160 449138309 93277212 253275424 921253290 437419459 941874101 473255027 374220667 513561317 280789395 239963670 502173505 616617165 304144392 899155616 259515059 961620577 775873284 233684390 941864936 756469292 634749515 652832625 179371511 546666575 924482657 583284007 380301052 469105306 644893561 254645530 761659652 74381186 201771952 818055351 90342088 746823932 646197391 364559105 951503031 499396995 627082107 335190685 604585726 933843860 940651217 38078989 818395255 297383213 517441203 229468090 762874071 205669555 711795585 999950231 964812949 48967004 960379666 870018171 905026057 950575609 225052004 793456352 922401868 355325280 704163874 307379431 94085005 553077915 757370529 450588107 599953461 564016453 407814048 578567147 917554583 255126124 507243909 516227729 689026738 188116862 545825963 936857774 84769810 819208885 746417990 184213831 671236385 129915988 549944593 272912659 302179056 866070398 511548683 376857197 24497008 793736653 217615667 68248787 639089280 262019564 173441230 195451536 880807542 354217085 49983239 424384668 922723197 732134456 662413633 531260652 471567603 969885550 974136985 843690002 686961242 991662938 460779405 655282745 328408595 213000912 551946532 314627150 856743172 922433538 270082878 259100290 287725410 581571836 817878577 431308949 357985869 746013963 779743723 167716753 449558385 594363726 951937775 917669560 605210114 880307904 524054767 755015797 941796988 926663601 351498309 782748010 213786803 866858132 584251823 820556113 712275202 231742852 541779763 765572836 437252107 676214784 117603752 793050854 16937968 48156816 299955975 304734322 574355467 216663955 252790644 803218503 212916163 891309555 974228478 408410262 565522300 496325548 727630294 653532306 720683288 552478830 98311587 935681190 89193849 323354789 925886836 698960778 53074035 749097517 596106031 316512758 186769399 858512966 337415291 127841724 214320895 265502104 149295280 245903119 135724505 640353812 848847508 796496112 985614961 849450365 728663700 167182430 449241632 753841749 334353513 173635109 682766819 790959701 676334073 500766100 90257317 392453455 421969501 528106918 868641042 669143567 783561387 466045962 283831333 174476461 672315767 421532421 936731847 980597425 640328669 449765778 301555478 985846124 49956995 430206869 617846267 194847035 622639389 822264742 131113544 807506997 970903547 23178413 768170471 708763770 484756233 327729671 836595927 564303289 872814378 408732373 765768509 784311008 597766428 960275759 84611505 701502788 835510063 947521916 140226867 94171606 94126227 317392837 245528154 795964143 823438864 641149494 479633882 503447914 440775503 29928068 523704477 552266780 860410912 40113963 272950501 471163659 799924885 330611708 767448047 543028386 488769335 122227192 327204979 53874158 261285369 828694791 374609269 170096674 962101299 218855694 929429475 787742799 706346340 562518162 803438291 728070927 741237587 14588030 564197615 111141224 255282651 731385356 462683920 433617286 622596311 740013166 951404275 149172931 947959526 340999846 859300304 942909584 538736011 983605681 722448873 693034672 393330523 306720430 136401183 597128845 718565446 837961829 283228465 807761058 655714574 664739201 242564102 349913748 885509054 752068253 520367720 195649599 641084257 162993034 140370027 896823236 716409850 807055611 362053581 202264523 149831536 423884184 70454249 625155892 657015788 68288636 89145990 336196164 182546207 989541226 585165038 847974057 780257548 714457483 283041075 89917873 316867895 678409176 252890696 350026002 294202764 85705934 588403404 777026130 706630324 396005794 584172380 263549511 554139663 446548030 147791672 144301366 238257634 36176176 831203418 273896206 29212604 814354411 923076391 324539948 601949879 3009680 96967620 517463149 646853593 905871633 715475980 12463564 901090424 771557458 883676275 366640151 794284542 652924445 333452540 480598963 531841759 350077340 290082116 395701084 452643800 746390491 472129408 269855502 983044463 295666633 473578803 518026990 228346892 858356030 28619201 563179688 509923526 621882065 385936590 115210831 22578115 973928650 623645325 221159105 229722072 656491445 386584645 550099564 920532810 344331250 558099063 183357126 80998232 267348848 344204730 815483829 938926187 907878785 986541163 167615673 290651638 553739317 637763914 864188785 747401844 363799279 25851281 192982853 353511527 977753880 649068288 549798287 371068760 257401924 915318623 999829568 884077152 914893448 527917548 567695233 384346068 710466559 365863969 521751185 755734306 301269070 957389218 266068248 115038709 156404138 676237973 160207582 873224317 839799734 363694059 379031830 601567792 695648314 394012257 566417732 977381103 645911605 765917246 824353374 757060588 39556618 433925873 648463309 391873992 800304298 664540811 144278883 49596088 768832760 709998831 925674042 538043172 866606028 931885942 594617383 64443215 404944779 735131229 234551294 217255260 349980802 746817 612011544 29890334 178171488 150162671 492650280 855351504 665135010 10905466 791261453 722188857 586791194 450233665 655158563 220001855 194512339 280768893 729119100 80632793 719914517 32067018 635872082 899278853 480179462 569072053 214870477 943962117 715278474 569173735 959465345 77892779 618289443 172785771 267230454 295580799 913825634 792142246 43897506 267291457 713510621 801339602 922108018 258384971 776489455 462433197 124789849 925097518 905930164 580527257 731741321 53410327 596904640 178167331 864856765 636901866 897716335 993446702 65019845 226797945 699725767 820478 421494932 517525960 743671968 832976371 578142976 779401701 558079737 86805690 519647341 829022073 687137415 903539510 49385915 432295966 210877519 242455605 943517851 268182549 675262625 576853771 847407863 855702182 32901770 852669216 322739787 238268089 720071511 499168150 515191341 80390080 188805441 614088432 920768047 896325170 605326982 999998501 650477915 144875167 121012436 719489424 522810808 764238771 770101889 248223835 59464165 169292271 583403292 258219582 907510084 552686463 140693990 585452502 981883822 913893345 865744892 152834268 501122093 338930616 203218239 391088777 923142792 681235692 514920309 884446660 929900646 549121096 189461863 250827 317444133 306795075 244649424 945991213 181724417 360710768 269638517 979067831 758577356 590573881 475290568 551426217 847406813 559116784 307317349 826294436 46908943 214171048 449907281 995285322 694787986 371720103 344005698 119833768 525268930 66292636 41444083 817572864 162329135 229568070 424378266 375618574 14963334 953699317 270372012 44688887 730241188 132565057 152470029 817425255 159545786 360894788 624160670 673381795 527137539 876682864 379512996 528042154 267190009 380170782 434972936 718387470 686843405 12000615 245219361 658023770 177394412 454788250 277117888 289240680 435940104 16433905 783903530 993166493 559079964 71923522 190637525 918308240 955324129 546290131 845415351 34207537 292437247 462572266 217693540 46011789 15352535 98835550 771629659 35651681 745473874 48506158 690397264 306529594 883226299 559428574 473747051 559800855 11679490 155014850 871679119 313729964 148977882 688752951 707583706 91542357 222197685 722993353 682428748 74581201 709317015 768976919 968041663 435337732 257685175 968782050 727590331 357366761 24076178 59480138 564149267 762246925 474199791 237080945 299542857 435585907 803023887 259756257 800796915 159541867 15681539 213917215 24244011 566718376 649076767 596058290 982210229 519440422 702007964 343255887 860696302 380933803 646096692 776127514 921854046 504294320 149555472 93541084 891662112 27231338 975127080 223482969 28147446 376276489 369936005 335868483 966000179 949101719 86309247 873140432 985144560 367131026 520009853 902944118 793218852 961255681 696730942 665623281 706144114 218224280 599894478 779587663 261591266 491360299 612383075 115780909 741922901 591238108 810303120 675757566 711391199 221531860 594304822 544452939 254050012 607579412 121568409 495789426 255264777 165597398 709765850 569866905 297655222 316126422 993568935 655510079 959452818 705510905 597463873 978614337 397061056 533182261 859070808 619864465 41220011 864369362 599710892 651611019 249644135 91465594 930238855 473545068 649975627 975717115 950793473 713877286 738791563 697680720 271228038 588352790 810102839 47746829 451595119 122756928 730529060 981601770 837096089 7369665 562654054 503023396 939777131 269475363 940530260 353481353 204193606 232779345 710794998 343148274 259380262 625411112 371335986 310562565 462435196 151097872 135277917 55974273 825622176 705672713 772393888 765924962 270841262 128230374 283118805 431866040 7823172 803794278 302848236 556490415 745245494 409700300 916342784 333469400 842999180 42322396 671041627 671287864 293092646 204301860 407779703 291037511 590094438 392326094 31710629 780537921 368256877 569807687 516740246 840161191 795047635 44719941 373644575 875477077 265430008 334048448 281065467 736199510 632513428 166414866 762048067 420338056 168142066 429602760 698292194 337399878 802160867 596031407 450954387 59109610 973178481 639499 109356552 586925293 857902407 753578038 67848452 884606837 382674845 127434908 299424682 432529672 243802475 378285301 742139500 411603206 220976601 883855374 711833165 448657540 592477781 701843598 931166689 122296133 94549620 58558831 479407218 897628433 815606606 353744041 271964017 202948652 498727498 75979047 166744662 248938448 599105015 248486213 63664281 942537285 574360381 661931727 269038143 872723046 845868968 305862859 841244582 988152742 348840992 795898751 445438912 468195253 430006688 607436741 459650946 956286937 383560762 218897066 147177597 93382575 853026856 589416453 341669604 569425357 47550442 735562245 161119761 920633775 538044687 207692960 135031363 795926912 830977405 867171743 20035141 993608817 156213061 361080541 199134273 90651119 444147683 705564247 620801939 808141506 7834551 573863408 77239293 591315475 565836879 351217797 782483626 297402692 834092311 892373692 593310021 205241200 818998782 383549152 529023811 85894020 359962060 41177382 762416098 32076497 411330488 3071149 734348302 76717877 977467985 529968109 589015962 2003563 426945663 356615426 368425910 454866874 71461269 991945749 369876901 269109487 116306105 413180502 909307723 969533108 376497535 108851452 305755464 433047604 876391306 485649139 547529352 540811702 4287399 839977462 971210198 625067531 548675171 913728202 126956415 644781295 727468599 753775771 831548742 614511948 990981684 767647320 352865191 451666681 929263834 480146120 406920446 214093096 823252206 804732142 414408514 203262378 44338494 241686350 874594159 232536766 163774024 301154833 568803155 256009494 576005001 928133692 107344564 463649089 291682178 213618211 465190573 885498058 931761065 572649377 943050801 501908086 417691170 501033584 964763877 561607529 60317257 373656485 198328570 516586342 328840271 979602017 81842165 781124544 82221291 229603428 132982040 816580103 810960061 567130437 416407544 310832172 667886166 229686854 52135207 209487803 142158092 647211082 109019009 323468809 238182243 253850857 124865461 779685265 510181238 406200399 630675530 344214632 524230300 525748494 869181363 907481191 713493393 975512812 287105381 780442975 958594991 244082252 542322014 133521434 876502925 294019671 652348600 209090682 793693754 952596169 482745126 138012684 535177809 795602205 816648860 826403037 951314179 84444260 916490996 229592662 949678455 998262540 902823370 548351484 46577279 390960320 737483610 699845427 697206938 199067502 449124803 57263966 340750754 428521087 7838467 323501917 201167624 396817600 865426831 353296578 593007191 772844447 663986160 846432740 580576008 134616549 194006771 631643993 281590327 730483900 259770299 746987578 109940843 128200029 397763585 939737268 662871280 339418544 6740485 301723755 848631247 645317182 849939194 388930944 158203672 908735825 785898163 455735830 209034872 666235151 271878326 577265524 744939573 18188509 114425741 497413402 537532332 391130638 562089458 106654160 999154550 766142247 600928085 534960012 147085301 319928275 442911241 893736114 673883576 200355375 543093885 637223350 645450440 935940563 874425085 169813124 523186231 175452207 624199972 472920457 880527234 850180922 403329725 515648997 373945688 535807849 233743665 84132782 138708901 209061043 359641497 482953921 991363679 706682268 455033604 422526078 558092622 324751614 371270594 581438497 38126235 129679053 678983167 151157650 635817572 193179976 877015881 512782531 682359815 895929317 530294884 397278189 475946141 120456575 846498971 872437135 614252892 964801475 947293572 347022984 712872006 617397390 918100259 313932247 52875319 35021489 338985372 112447829 281514357 825289268 999690214 675528801 197228978 443710692 146391296 707641152 382262873 164523943 169673149 426940070 784433376 46033694 990337475 89294132 325451162 771821118 295414588 23468927 166343813 888566156 354597553 29151535 554824834 475860000 130539623 272027909 968690283 631142478 632025695 639757946 831982026 849972108 136666198 172411114 229630125 555478737 925004142 779704192 912519553 790958202 620133680 789153640 420730945 969047464 823673364 228829965 636133174 668944418 503705510 915032820 573053040 235806352 69324133 371082560 595115894 93840570 372635277 595712793 983844683 280368598 653130873 498388361 924882016 164391303 597221870 464976826 544240076 990484782 957188429 439934675 509554515 363496766 741315862 691227052 867398734 651707372 129988147 911181596 420593567 761476345 787196937 389831300 63441558 980127165 561932528 448840558 438534735 519709220 655819930 105751895 793306809 778712385 157185296 53806979 657965202 725336242 54730473 146092632 321757605 74754665 484566727 857380066 945210237 425652501 617311893 622839037 437072762 735619620 634773512 463986352 863582179 473654423 128816640 12586702 18857538 695322645 53493542 660708247 645266660 257995570 291760146 921655166 383049709 688098467 915612345 316140080 267972394 456543457 156623954 745504597 241155138 366957948 174242407 367039975 54361940 656627348 737587235 499697741 593780373 164009164 49385223 36961945 244761038 733795826 200468402 892126474 367306385 792640868 704358262 469258696 298086589 658193289 549761 548388068 101060052 898620099 951700960 517130295 74230620 810279307 185588771 522649372 64996742 255389300 160375090 158933854 33948810 543860977 169307264 982130346 20057065 718371091 888767246 23665270 957570291 461796850 559092078 912308795 782348939 944973383 443155071 281004262 975313227 88552144 221563360 155788336 250804265 422355841 103008093 436503967 21971811 783962091 763447254 950247589 253937162 562806043 81946190 238734766 845615754 698091561 633785446 628330685 579767627 2682517 73703762 843649784 741154887 516342348 540488093 223883128 920809167 522091227 478300660 601029610 109637704 111350219 895308705 11773940 564706300 583402207 421680746 130234325 132185632 897013816 827675645 668237668 994395493 450874837 321942622 904013885 898060868 463424016 252191149 99784320 787622586 266159276 6934442 520230022 877567553 91410562 692432680 736177936 191357242 355999759 200691296 296027320 726981972 758734087 442186198 521292922 550099925 487528854 242509539 54909365 874573140 479145006 986066782 212689091 460379669 195052621 165827565 871070789 506395442 772079753 849842722 611713726 225929901 199999878 199006751 931714311 988199139 359339258 733641595 931532171 935370446 73071818 194846006 587753747 936411927 423249166 481287110 936008935 495264081 431282830 280503659 354139632 799327836 842453648 526217602 829173626 974127005 978941499 406690568 469636346 609592293 442448260 949723632 971076842 969018329 118081365 554771905 964709769 76383882 237551359 577365925 834874545 573073553 805595652 367110374 289619183 10177693 865597809 499753658 543206231 604069215 508753468 419014596 6202847 350418035 372935359 592519238 9973002 408235950 382714464 377882328 622668175 373408195 928531580 788546934 762844264 358031720 442029339 623691555 898325303 605599393 374873745 743843200 580211347 269208975 449674678 366835933 431423802 752182009 232538943 542258001 554093582 210955305 386383921 624988223 741791770 131820353 881319156 969318907 534226150 359668014 885469611 242437806 755494562 809860115 868419764 315133154 206963030 930761577 450040606 839422967 463987158 511413964 924547467 548454933 517386222 235265316 80435982 627513324 557804294 630234 778929290 343610727 322182813 578358811 957364324 458709826 492716336 368404110 971869909 593441611 69374949 428514765 472098382 350499200 534217528 714197852 813721783 383390688 330580438 39722008 989377945 258289538 237961878 849516465 675715617 907781499 475723942 751091889 896887451 258349600 869700596 92896996 512684338 894000953 92851992 258214012 940005700 685056082 692653740 939428199 770990837 249659030 486627684 520314440 484342832 342393211 127516811 836447132 46331740 428472838 137161447 849080452 19777271 781756284 592705261 736447645 576530730 673443623 779907014 719938710 50477484 15360870 46306700 830164347 559721631 171553668 571481586 888674237 78394531 684541636 752690175 22291477 928694178 238557516 704612802 672613369 816600864 239050513 377556398 694518350 308993412 354861545 906527875 474321438 552696687 567301394 998869437 333550016 333651135 327018818 613356394 555108935 25696935 870147194 548176324 801469576 397762273 727560296 691140224 346935887 463706949 147004707 879003393 715144232 357375054 583250637 873345274 633207814 194459924 171640384 131825284 244969016 909339994 352877346 67517715 595765842 667806496 558025143 216007379 17603849 749722231 666389545 540022158 647131584 919830821 100451398 139204861 249682894 853166482 797978282 751811134 576175856 658629462 555255960 47083808 56213097 425198670 640262289 972790556 552122448 229156865 244176958 695758756 469572792 436496933 12069498 379466299 882142907 860519544 318204001 735399090 403581398 638648838 633289193 304748542 773767117 511804976 402194106 176660335 37053908 94884285 543926855 467214410 385683517 518665028 597141451 120999549 297349931 108283423 292775173 912393935 411330495 307918766 696427311 401196588 604402139 270097745 341514408 716092348 518460491 982130410 647540932 506139348 326555687 276672519 296989139 114225753 995968123 283218364 69405678 659151592 482991939 179783979 461963333 749504946 437906512 429722653 997841921 672920065 463903127 484900312 279963634 107903525 71971150 321156229 102811636 935279460 119139734 789153070 549370059 408605835 179268095 479798968 241229540 779353847 123125170 649643710 361230827 930473494 668075306 569221411 368879363 330655734 371967571 517756471 70270424 858914083 461413045 583425587 206537294 833449365 840608905 878493512 730007313 325917261 706703609 265682376 244385258 265573668 285269697 545742468 265135623 732981812 83603578 25001584 519168862 155108410 832090312 483568820 361067706 626393419 124728196 65168107 169560279 935170759 385252486 534568346 459341615 136054546 250224903 370504111 252219117 770458561 218841327 550428208 635497051 957698212 729494821 470255781 741023819 253254162 471282522 964032522 560127982 216612331 813761016 504730526 892703339 94947468 939659106 821340079 642416814 364574078 668458605 661224628 562687706 374209864 501461418 47267889 549291724 266607788 539973880 905357874 668618928 699683726 316901797 99605529 237230318 762010968 580939789 456985848 405202934 236543483 958074347 167321355 681701436 382806332 635646131 308575793 78903503 343836090 28175329 562154920 103854104 593285606 706880986 241755687 280812957 306848899 729997209 609836357 588237865 446714124 119481810 948710302 675948036 170872772 222277799 665443760 280396745 99834177 293416895 543908921 784866020 94705773 401654522 388639321 20063177 37031224 154734282 181409772 321242245 236203547 885507677 804220984 976703680 17947912 687511998 102576627 117244367 435992778 661485090 487280500 713865053 870936314 651064155 532565475 428166566 299237478 755346605 324011449 35864590 213276438 147789758 306239483 508562661 963279849 227242048 26202588 750080854 321542244 862397435 732025510 339796176 885951571 66945770 485899446 862294398 758525867 439626060 430711352 162424669 560117503 535247339 40956883 682753497 855424243 40355177 478240942 186711664 849624833 766017018 128918011 98491279 315424497 820563395 178718511 300004405 486047718 797918526 627328987 41148830 776514559 524906104 129275642 665924990 138332570 485649891 634335575 51319334 368788127 98585916 42675092 639348141 494836931 599554521 815831074 321204375 251197838 5565389 237988996 734738188 52447831 475993811 418433495 571081593 171863048 184790413 329790318 925421180 34416126 540257848 416202502 308288074 901477666 20489510 69539039 247312113 897388552 464655139 376251021 473659339 650895233 288955180 115068137 752808562 41866751 998880797 328881700 220500829 556063489 299590194 834407071 893749772 924546129 858549520 461147029 528449308 958435708 774443884 718158894 738060583 255581814 880784110 752004795 150605965 21692121 218800854 55597600 640940433 127069858 810265529 42333758 325648324 855275838 844856085 17476116 433084353 66474526 385059332 377211000 178474056 555329245 519150708 868526037 26952277 626229006 347879631 49863349 675166400 631731997 543233922 431918621 454795704 685900717 819993209 640251054 911287128 239674207 672542619 511362672 58332286 419403485 966997482 901802890 662403179 442154410 804345612 871878006 616164420 431931208 216750202 792590253 727040470 814157512 895300101 450671544 344917074 981406648 499001301 613785614 723454106 637371110 152780141 437027718 315211428 986314178 101113310 203426961 933537319 584659566 354277450 832457815 894524387 355407003 216595326 409367539 854724074 581301292 588248192 38101758 884394695 172106329 296946642 978055096 350369613 460793255 301345140 435582056 563887692 302333222 384401314 411709158 401827724 413167319 971772892 442869390 723941326 441353612 969824951 925143021 250876200 434010945 434023747 198512556 909049370 779837314 761070707 643807121 955972514 309794524 24395671 989018096 321519276 563373358 601502944 626917301 20888532 169212562 430243875 488064050 882918998 721098049 996260751 623741029 280787664 341032296 459901195 968125352 726165261 55955396 25061268 108476131 454163299 217508322 507672835 926232112 152433002 795905201 771736889 97926421 175426214 420025539 746721227 525761407 878986738 830058950 754065529 346800015 62441459 307871032 217586792 27378571 963691156 833003879 16829687 548613890 554200678 691809817 175649708 853438078 295665264 311041174 924025433 306373812 760328286 670891618 934329444 544225765 214330898 185635793 689169687 832347755 232109182 697163150 22358126 125097473 511534066 313203135 482878665 89747869 765133034 566281590 118519895 136953757 914410172 984936227 998497527 59111112 974107013 369071735 915149258 192450281 889648587 419659119 657820460 707293459 615141833 659171267 25940035 414824733 837288514 549524927 459941487 166748569 289574421 713351622 756609307 465186241 199505915 506166488 8142642 661850451 645737947 829408699 946494415 607303175 461390835 55011333 350545711 757223545 332768573 385198951 195534081 182812195 778213963 360509085 348751424 122942552 773179939 495792679 895911476 645867953 458742772 341926445 389225595 967636729 154670517 567742117 832587914 492566897 44019885 487568185 457401362 930181799 112106438 89478535 399399562 817760714 680394275 17970841 392175040 404269419 234668742 916460852 855131877 113209509 146088666 57886771 902832950 731321544 954626125 552528605 768262380 850356692 130496765 177674439 204176918 423246139 969918686 925061400 335820658 39524946 421753892 964965414 146402516 416923342 244596894 54293847 504319482 426613095 483183178 493724743 363328223 978004322 48656770 629655968 892275468 918287313 811222396 362028547 506831371 603047565 718035759 309488384 650637114 651731918 136995089 952542943 247684368 827580332 602767745 433914869 142326147 109498535 765131751 32994144 771481490 556656839 112888505 936503585 436844297 90427802 973679401 884762531 803056981 345214433 867368465 510595715 343962343 571320656 501311336 595449508 725568148 442570967 480526339 624097826 276267997 628403656 391656150 118593126 550710381 72018825 974915892 654006773 13129188 291540095 650372929 805106535 240840890 185241731 224305409 323147899 511060205 828807876 640077233 773536295 583212662 348173890 9741200 543666719 343495914 818235461 180557382 228962828 63956027 981889071 488841283 809018659 711243134 221507456 820410852 337398427 768031029 752251182 50470300 463312058 149041743 414458679 330899332 436812683 50262288 203904457 441232061 124864505 20373813 130092623 175526835 727301437 886559675 629948847 997481165 681532648 442385319 802705441 756913917 899715079 9058057 931822661 820371906 137254122 290207920 252967882 158046428 344849261 78605074 738123833 922249879 282058461 923079036 340940351 707836704 367135004 441562239 227059903 342505196 864008906 181434732 658806578 901544964 131152539 544783273 194333949 316270648 325855648 267000129 375985106 361360389 93170056 350893041 7179586 907912228 849017708 765739785 700660122 717634336 756160995 882279008 432969999 394202514 437066760 832418400 581891449 91175005 789980034 200317094 320049425 592282354 304858965 548649557 887518366 819901680 387491812 843107603 307689686 77396237 671074218 447199109 875932851 628486696 583657182 35427190 42084091 882811313 514786134 133490747 11633643 36995540 863888807 86946634 204973320 249099341 334947059 304809582 315062376 692801757 768709865 764934919 991477115 985297021 764914016 579003230 682134475 269534941 189011801 279034251 159092061 541425495 588821191 623628760 432466343 15935969 176857420 978119382 60037142 297808172 307623498 44480702 151803951 972897733 687372399 707992335 277750199 425534276 552875624 830448600 39578368 306196562 729030305 865386527 406402032 838704411 308497209 910778039 454686917 966873691 409972814 974104775 634715810 815693494 705002571 667350394 777980669 529764367 129953161 171366642 279848714 740106816 858376813 311024281 880758577 352053258 436313798 62759016 947838103 326294726 742620026 386101473 719743129 591803734 454486088 834733056 305144855 829808654 92781449 339128716 194092510 470315659 693009523 474681400 752940028 985204172 209231741 389805468 736415959 998486003 526856290 841005877 731901660 408741282 522108333 846009884 568178338 138899656 891452717 976424119 976096298 344224306 296113813 989335680 221844012 109485147 172705896 644368250 374244305 254726996 759559325 85929271 62079792 560878323 419021864 272186374 929637631 314365664 682577807 568621392 171619239 535721729 654056367 281403202 816691541 720777645 213430441 636243887 32603874 159273929 21123423 924160036 233919409 168144141 960814257 267455719 479501787 632980878 67496991 930642903 22093419 35709523 829211280 644655308 232374283 78238324 98313467 967405282 883587137 581989264 73841656 191685070 184337323 365531571 927370087 318376130 770528804 908594795 62495604 644666390 166536804 222546006 417095256 324259972 839673240 958322651 310546097 706202267 943137901 557561969 891544063 472463770 196247979 621220693 903551922 865679464 344842635 192712633 77794366 111378487 237160908 514984864 986486577 527011525 441916871 353040875 366558473 259335115 759445840 514897465 840951527 928189356 608056781 252972601 863472297 683688023 512991720 900810566 210961880 132077876 689318714 804067356 52514061 130425696 664110854 778284890 739603598 186306501 941364951 431384753 250644416 238003245 463424425 684279740 720848097 527568490 158473296 193937216 776348006 750246515 157793125 104098297 133848175 966371239 18721181 345671895 42382753 337231176 721967087 924171283 410210146 864166333 596558072 923951979 620938097 481907159 146526324 871613314 310674712 732449833 428999631 807225087 874687116 71789057 606892115 145630433 702791492 602869864 898484437 39845134 72017293 517507882 127404910 332732350 774960610 568050488 943741600 883525203 732493407 284604473 286048665 759775338 893273978 586946807 68108291 770230953 764825630 218998025 800638388 287140154 390264515 507733317 757821768 368359185 811416449 474459056 194252105 383398128 558736702 80047790 534303338 588308104 414174712 351887093 201434039 691418653 495833671 344744117 148546078 889604181 401138636 12437892 960159254 518953105 555589672 920429349 84995272 107166003 433015671 77573258 867579164 390135397 311954873 637599102 761683685 761733209 886257231 168774153 769121747 676729787 752914078 11859791 320112680 152467852 168221309 491787118 396133244 423750346 458901929 583903986 598477002 503117650 138940644 475619302 893485323 808041783 375357940 607164263 92453980 583058643 307585726 439625395 47839439 855678972 62269229 392687688 346891735 268960932 653047832 963188657 868313948 288017157 864007655 695161386 206647090 424997766 364863424 404400021 726666332 189572176 200782447 368515399 377872707 715713360 722876327 680536046 971905385 907843347 736886377 631510360 664302312 87769628 177764735 64679512 667020934 989993832 930260982 745912198 282383267 723199786 963157838 396208688 558202102 209387788 898774631 26692277 274855971 667581015 49613633 663737401 887652074 907094385 100050362 911949397 616826037 338960422 202532175 853249587 684396545 585956687 424798533 518259394 422912027 154179220 90407750 921019904 22104100 561883990 320357921 824750127 775530651 580202842 855870243 901162828 92925964 62234575 903617256 743654901 285076762 690683175 660662777 527113753 961283577 349431622 185423012 921619946 967035845 160493388 722822628 401209874 823346237 698434906 659899971 631615934 921441766 990445367 444109473 182624204 475035056 468247201 770108118 344236670 203419874 608991652 818937141 383213421 866712715 500322961 52518509 104981629 657120802 788382045 37893570 213377093 615256422 519356715 871974831 703326714 446623912 144605828 465483560 563973936 643149431 816804088 103495040 936301051 472589148 868657171 235500157 163604298 484614043 368825712 312050505 625846695 325366824 307652922 748264670 176384376 992093378 726759094 349027675 124602495 867216933 555196582 78118663 155838407 750730013 278358974 233258329 644915484 809329093 436830618 935285581 784336207 868833511 918984068 820584941 199839173 684273114 197534397 339262248 944130780 203845157 442088041 782409148 985981255 283907176 473324270 210443860 698091371 591297037 26080882 696862129 306734861 178864259 811304206 861053090 900288672 136299938 504006312 338649363 976062229 363259535 828167429 98131348 787550578 502654070 28591076 46407947 468113203 631744166 197867899 326571464 547037561 725332580 35940520 529477094 751857814 202746383 730378132 167986437 29854222 907620094 123773519 244369805 343936771 529202238 161790118 732773294 289982359 485232878 663613801 94065684 524288271 160008648 479936572 804920025 797536203 116340096 788768636 64439521 135406818 962864293 690062151 467548026 725470422 76131842 242456818 468628292 654333744 962088703 897381802 117459784 333643113 282867788 434494934 323643467 191848809 210432448 594501428 182410971 646255982 73619257 886230063 648876075 147342647 691534647 581880413 158639399 206949782 411738047 98554384 598605295 282473169 712840353 250457995 329355693 606759655 583041908 307142201 608563147 429167253 505495849 317646841 195491849 741544648 810211189 519416797 684154326 752420810 943183013 120217515 160091603 156428173 880291882 244742918 263717421 551873106 151329919 482041728 547133060 989344833 700263100 511574117 409612967 47135366 252236922 505991360 69332133 588817552 139304004 408122712 419700158 110025924 79297949 835491739 250936999 161460422 563025866 772494106 559039210 925149944 447246833 347599482 236445249 84711020 844543920 871261893 364587274 653176419 397696120 125592060 715344147 964767788 182927349 901749690 399429740 800630847 841132176 901893493 571284192 730596937 297103373 323395038 587021223 486473752 968562348 646895810 791902117 5280723 509434834 605857281 241708083 760104618 380925737 131103474 117790499 63352692 591770048 294951867 288269124 409499704 372977616 313089922 724695099 855412284 723055728 108537226 900563058 197393064 960323009 322842085 870289283 625486245 315487 880303359 569050000 633969036 151974278 791823042 722573300 873674041 607178843 874330693 594603298 265598051 237273297 212684233 539383714 958072413 909474465 752036136 73695188 935952809 489430239 988410467 434474425 921719767 459149298 342554986 194861130 36852920 112471046 271224271 576745506 181694020 955654997 874925157 985432038 47408240 920247443 974584380 251864175 553806505 634951647 455443666 546006723 661677670 872109314 613050349 388312714 231275069 789629478 539065219 200728897 170657705 611234264 146380123 529987125 228407077 575502862 528224821 707749564 205782272 602043364 341917360 881098343 957494163 12767987 545947507 414683509 905779264 139771742 834645970 897455715 136539347 240776111 796331664 483929250 273193785 960538395 476807568 461804168 699238639 16170983 465909940 347388078 773211753 788649648 833008327 943178973 356994638 466821301 986507570 715897245 856873237 177440380 330280540 634595851 770941379 617273235 819682676 949280164 389634821 831483481 437639857 674536641 694211928 141403174 566640987 982842343 785542753 243899768 817558800 343241177 505288284 720335335 187593501 707616536 475094726 210122656 827748726 27631979 713029695 346484442 915511384 663730054 346148707 285382684 459470816 346611588 764757679 79982472 559528282 468711509 297596312 421220660 941903375 694683761 754372988 460139239 21697230 231820967 855279166 698865410 859642689 966057131 934925929 453712192 377635405 853686369 534850314 472322556 15755011 444896273 754345228 149688166 635343846 571175891 493449795 663857105 989645428 667901199 107128055 875088121 646460433 934364688 903109834 802387710 470683599 294411144 754840747 442333603 271961772 474771492 615613099 103041422 334278953 234440135 239128381 379726686 589250458 338546733 124932915 655685695 106299774 342470035 980879346 916439459 700620321 235250121 286802484 839545558 843028665 606074787 542360206 965847440 998693550 492098353 356148605 163219541 430126055 305363021 268090582 946186778 96705015 530304139 349914724 436226799 526907022 908652488 673918894 723772493 501517714 149731155 986938203 621495726 133091263 502590793 997030371 541302580 333717244 248300984 292479992 760452983 232714337 377375973 938448665 371132814 46986546 478586328 423229246 824808272 650999656 583740832 182303085 6170974 485184167 825054257 969197553 797883136 610857518 248407430 780916231 323166175 384041120 765253048 732862808 506818824 867456142 739530940 131243223 760628463 653415207 200353381 586868494 561600537 848378141 534296940 71166986 498558290 288292303 967178554 674723779 19936742 172883811 618158496 144710232 415776354 803693028 766440406 634613952 764923416 275415089 780181978 594722065 934802288 846134507 406114307 863338282 340525409 959492435 931542567 890497951 563103249 567599008 376890108 543760445 105334084 858921506 886262463 557692900 211811079 147774455 466865969 875259267 956735721 624776496 194098524 730111428 850388305 159041881 311221177 324998892 613569894 711274024 593984209 278777614 306497090 76053315 761827943 727681742 532171744 774281336 745244780 83005730 727773502 508263679 581835381 680665033 525655967 626787792 399097062 157010221 195630321 433281256 351660876 743305346 393801035 570333638 67283000 400134559 660533376 320238128 167627547 797402987 741611088 595041915 355604172 979833658 852363063 787401380 786417129 451576756 435893485 634415326 377937179 662398797 390616544 308206699 914726313 465717680 61116945 704781142 485316517 256009182 684016479 531116858 524205267 562327829 818286775 644908594 431702165 672153161 274438992 502649598 288456854 439666915 937699594 426391410 276497528 571970205 499110826 405199193 984548233 535321 8180193 532161260 461072411 35061289 710387091 166640641 152794255 36911290 802410708 925229177 521326651 130035618 6407207 239029360 153983241 29581793 614576174 440338399 845879805 61864744 770852149 611645667 11610048 870850493 34897881 478405616 886397799 231530595 361093837 392079261 362129126 392488117 62297980 164749462 221591349 130746194 218702294 827362739 379999279 623901840 778518948 940263768 602981434 853267762 208257970 142373775 764148595 216782704 135752387 709444909 562041447 74815957 882355436 537250927 75590074 320661887 689652351 581719548 103067765 114950229 85738661 142056903 60131675 842257489 314405434 968132657 468741431 488628158 798271930 645704259 3119070 170448802 693703562 281026110 209783177 640186160 139806474 481441141 964665613 540621369 901765374 921601408 315255355 277174239 837546758 29871515 860134337 267541746 643960924 683156239 963806224 133238076 195403402 175558789 205442276 956326839 989229369 575836640 86484485 306487010 59896123 48516440 62739757 780712805 332485949 487690227 123776452 973612194 885403951 985993158 34485452 603223199 277319473 521022675 91646610 439740311 420822526 512215285 942047935 417925122 982382090 799830776 641855230 920080752 931932247 908869414 291641955 404271831 831762292 534006534 338610998 383531983 164398566 351189288 330167501 497354433 501595916 338191134 166414495 612540301 639696949 246762380 82287539 282754010 997768041 215749293 381174945 922557239 300021859 20103930 659223322 717378275 200449061 328410821 905122233 316214918 409233154 828117385 621823552 301928562 247683842 230990861 923419008 959959671 599554591 718576995 251257149 332731773 792601167 407114403 334605255 69721702 42951807 509403642 186320605 501701247 363190981 98696197 220449077 785360663 51339330 712949249 23985559 353046847 340247132 974722172 671586966 758588317 671704006 777809472 302008859 338983306 828470647 794994738 161865695 130837209 200368984 838931624 596070757 401319738 331922802 754145070 437892388 835420820 537653391 507543721 891288132 463302538 141865335 431486869 815639504 273547184 840197323 346840765 313760704 572430402 974024652 851877146 208206316 982308198 807493793 99536734 665121208 399682934 380718959 104511951 870006518 615298238 731642077 511657177 317864335 708091830 3407422 291596700 368992315 909625336 172031541 176942320 998649624 880705731 4193242 15674766 632610125 948519227 514576087 348912892 673364898 341309306 630150597 486228651 927302160 851368872 180747313 383978660 625729347 921884546 251007958 837434415 740505480 66695212 689854423 614967816 775421398 273497914 147854371 618933499 654040282 458315200 842949719 845247246 937014396 496532336 874353896 564928564 352421811 490670461 450937630 979929974 835114694 870798926 696604870 193882869 314670961 771137638 676570321 540518981 424031589 380347242 305904489 735126726 123855892 463609650 84240607 621356141 669966414 949194653 487322373 910268885 233847920 541980556 894258125 509030266 229822523 316640464 243982676 24742380 64108423 602194253 818451740 486325493 258252886 694579882 614036796 778615534 8694673 837852948 493963809 17980209 55783955 516177368 30439530 349177808 924253506 179539214 357113088 748902428 559922543 410342239 837584303 23598334 926958580 647131948 548151081 876629503 806543602 653255789 289651607 241097975 528016166 503195210 172453908 733610581 311836001 763957087 149812464 806580851 886787316 994662557 168021428 756435299 802174423 511199991 93369846 466040718 512968054 544482667 854233582 443892273 395453048 256896334 289164833 809409695 742855735 963382157 582576635 666446087 371495249 845164889 859189536 234121192 952222315 823993577 910170849 617865206 492405684 675177134 164128233 680319211 518731507 902439338 205357174 584689906 811020412 578104586 126232959 446439842 771539938 357312240 340183092 555949807 511194999 888540176 430733762 996987169 820893043 105209756 745942397 256573631 458219077 897010743 27468274 901825490 687317542 397043753 167877760 271275469 122417631 286757435 251897310 300661108 518451224 461847403 791933980 329787642 186514953 817096845 75594567 698754489 985459208 983076589 240256738 899310646 635297294 120710541 260860527 814432414 612571011 177386141 100703777 252547191 754613712 841057725 9834051 514196245 834589318 720464509 676148381 512738185 748359365 922914531 616318502 689151448 665072469 580724369 645058627 942890230 716660658 775989223 891851194 24024464 416178156 93639501 831783039 145116649 847194746 160544075 334135223 328540988 796891168 577977322 434994876 267123848 194229472 774005367 843838467 313821075 288700236 775782704 28979435 156936568 560948330 756633448 970962563 184044051 411463248 605513033 372895816 547726543 769126745 214750093 679361507 399891545 910760965 683157520 514653393 733763869 117012091 594764609 457771241 196550728 478705101 790183953 542949913 688410308 176572798 929795914 85925086 933540115 915719549 617511393 171043110 880206905 382539565 602842509 329341158 112431936 884233919 798185926 51601053 73700265 654838554 115481819 450891002 988037322 56074893 99315223 103485255 946108341 721355160 616357453 479572935 188724099 68961079 138279159 791381150 534545484 426365909 42494712 467335035 478671263 900094923 107402394 705046777 790334705 893102689 222478151 806721125 860323075 977219613 103586066 914791519 622733732 940952893 944563438 488535501 367078558 199676988 114359197 664054919 894725014 992874532 19138244 634691123 539309225 21353871 571036949 827051946 69399178 869302830 674946329 300284623 756318033 442599061 91547586 568697648 260601020 697603346 781121941 495643272 687573527 311054675 272792203 277542857 688304048 672763020 237954208 605423161 519918175 365864324 343182205 960511121 165274234 239483959 92148830 750068367 500376504 546753433 226183964 741992969 490973689 715005008 711850237 182384345 916273068 873494562 755806651 530329213 771045666 487506411 490173285 313998424 434127632 502536482 495485160 110268220 560669208 136430356 778492765 965365290 481316368 271868718 815165817 923203740 57057166 24460088 466347336 186994021 97039898 405191725 797819742 187809146 866209906 743162926 960651345 194562187 257973272 233682102 16128305 762796566 508495023 413590679 589132275 868399880 399916488 534873173 311020844 869014593 848391944 17236402 501653220 131513034 698676345 319197432 596734577 329255980 816295572 117651051 244834398 991265350 84155150 174405328 7893129 52982423 384382419 415770840 40471884 66482142 321531300 748482112 587311729 507416454 283418097 475288204 25104454 187596436 611408881 563725809 256328024 881901182 90814611 856329647 397894981 289705892 326838450 52217671 711305644 449602202 107721960 251218994 716489015 260985582 651524955 152470579 762711573 555779110 535871498 487034430 735273249 949085754 525302565 872180541 410729108 347622846 78594804 14736932 583194926 779729166 852438065 797678405 358663841 745308881 750437001 940729211 438072599 228535126 287465892 913253318 658560962 537899610 952646753 692692860 655271139 934330458 28721419 504501664 500806537 764747601 994136094 858236943 253335878 448501866 358602115 422036279 926328763 475876871 404411222 385275885 818575428 299439584 461644144 160930085 277789926 877562082 201579795 644759627 268872318 578809883 823243847 562326536 90868083 392431075 266338303 623962362 587286731 178924756 321596028 823562201 853733611 957750414 377041906 424311012 489607365 338037055 732209941 29827080 716283691 347654912 159401575 372796109 460861782 83747225 428509925 547708520 590809085 393603073 789774823 554772924 969297005 641778172 194562327 844378825 580467903 790744230 924230981 752734426 325511088 807615242 628170470 652239002 872977577 846559531 435314260 917930154 267205557 332056859 654060498 440549690 158641365 893349679 310067623 157971002 992550673 964126374 819424480 270584201 182427102 804477044 549347893 721677330 932678899 517620109 939072546 922733429 87134908 761514615 339175427 457122092 446789924 482559546 604142671 272623335 135654821 847412422 558455312 557699800 176581458 424514374 212373442 223594759 577384764 993562939 890458901 345795899 85854913 974134898 571110471 872709359 514044533 965603762 576954939 510481005 740688606 454853591 247561764 875708134 644415848 965728942 136075611 364942008 48408054 147127859 917724164 431229113 68100769 420614215 889254335 24053952 281357701 701249790 218738967 493960872 178605615 188853962 369969541 620240933 103401834 909160303 56122879 872470828 809750914 267197307 938097137 980620249 344693348 706067424 105604614 719879108 405386340 288183340 484091816 350438723 996951020 351730069 238176750 486444122 719688566 394182904 577238306 818212045 576607947 386607197 538152309 68797538 735215576 570872115 907055902 687117986 676796927 573893085 603103863 686708070 690586383 613634064 161924460 531685382 601291162 437696653 84954915 228153748 51201327 964581974 398606451 44071567 623881357 502848017 160061955 636567438 944907689 682714 313077735 55900175 575237050 329474116 339282004 406472897 385735719 706342968 630158602 689864628 299380319 556568034 668289615 902497879 22913009 160680196 368474867 731802183 958982915 896087685 421342956 631952698 119138241 589682173 260918234 826160435 367906692 979909335 480721690 613101200 651378532 966668222 369625554 750653173 118235869 561859040 806639148 740813497 920419971 558629647 630204516 931597035 526724067 613608369 898723446 709296736 602322010 365571567 907701776 392717013 111526629 131001064 244885054 84431106 46259992 196175771 387705453 286288189 581772686 161691410 176955546 57039661 719880099 551547681 901479648 12638722 837476293 824170079 971844339 886197426 202675824 741035990 374610543 522784756 6214944 805514745 962413347 425543055 704404887 423528435 797893650 435937061 339566574 211247779 311486975 317283093 338041330 153143041 673594830 536425698 29254370 157828366 165095832 800146238 333127657 892109148 148039712 93332846 527706161 752528057 614655238 849427491 414864187 721493749 909395748 472789904 375428230 387478933 144419450 159138045 570827057 938387567 600703741 729977218 892759725 35140039 63927329 379382684 279486716 635969009 988740038 357625560 815152764 220561845 423918380 722685042 151938201 784471141 722913968 174607022 869905366 753481942 187849507 75074932 875600313 679914546 624247064 989645495 348547233 717187021 718443122 771453928 778891277 285809488 285912486 75110446 513498016 265789631 571698380 749173281 936362538 4242464 486324562 163408051 356321881 24841702 772199892 255825062 841624853 787337273 726044038 846309889 304854461 239763511 794216602 994967769 102324955 40993901 511267205 469873975 943545838 601199729 713251464 790583444 255596738 646049668 33127969 265419768 48908056 967225572 338819459 299117465 819536991 978643005 450909814 65629437 417935620 43346974 728821541 129889523 73120553 412694089 941618439 471432623 652724978 286789772 505232390 154523009 841748266 584361412 767074177 258039783 268583621 502894337 515515773 238097637 295813294 688936677 979643511 625999956 932822461 815161531 862565376 102799212 584962061 185707314 310111238 207483695 666500145 825293430 432777222 78209326 857863184 789727492 390556499 189152809 757569511 847551160 635137885 930557370 330418686 757194239 654179335 378889105 939430917 238313146 556222449 937018909 621631171 798854754 792857108 269040501 376915266 601243602 507258779 593871958 99221478 356821099 799667386 276127482 716330012 36572573 368135486 768825847 113993258 244515982 63970510 787718288 883730798 820751936 231362848 235267667 685239482 445924544 797897161 144015185 330136532 618811334 998184475 710466025 283507891 134792194 523744752 76459431 923243834 415090693 454067673 272732954 941770993 299104435 893106547 527552539 43552059 428882986 936274078 803009940 17006288 753981122 408024925 55032521 574192026 123750238 708195974 30112674 560344545 744872733 834120174 847189473 681005586 546754997 716809294 313116205 14008263 950458893 813076637 392761352 215272534 562788459 513758257 691193154 156442701 144075226 131964936 171344688 767070976 121856363 79475632 818418158 194032504 411759357 337682054 160484209 405083819 419324439 420448720 962975142 640236999 293870793 733045792 504849584 193580898 885883830 393620630 707666404 234691875 109905934 805111188 792997562 378064888 266017108 61492062 387560702 959667185 128693273 62144321 111752427 552855719 394249719 454424799 449040604 3470577 340788648 662987622 610513187 580083709 713537875 349659156 679126609 959663633 671962780 818406817 633771348 7548112 915188314 374060001 802715896 19263353 995794775 792460940 891922499 269609884 478933105 516304589 681113797 15449255 127821957 448794019 100593996 540779657 179152440 376337923 907005744 139727192 718695641 195456198 984408295 253449486 328590276 288403238 427681419 740585047 262299485 507787142 834724882 637188745 549300518 732799490 194309719 37268682 362419367 23549803 381942514 573624908 249211520 924608265 680951129 586888321 340782472 749233824 872591302 565686535 569915145 687894417 978936039 228345052 837232725 325211650 480422294 429861157 619243822 507425655 161009327 850498915 778204869 706427040 785937305 771549449 70325920 589279116 967724430 792141846 641296461 718333618 826583804 639638815 69806465 799192885 177069095 80208191 265178761 556782597 686481124 480268149 117839509 17946299 551871061 356557651 180245785 190523410 3781130 779332722 28795284 933198439 728244957 75919271 555436435 873721677 642701689 507681065 297675172 10292702 785403011 381367348 998273893 617577527 328323621 485302310 596458653 862678722 548767039 467977784 813992008 266607898 93412246 633353666 282936884 133825022 88379896 975727568 718069320 620241619 365280521 966117057 12453316 902675736 668149640 95537231 404752325 626660852 5832108 176730415 603480313 485946890 412572738 961722817 882516599 625739630 946550636 613685082 447846550 28629344 719725194 359613805 683875024 871795736 757020171 696178705 637482439 182102078 194696684 335486623 283184063 742050651 37220964 713758049 816282101 498140862 719640 316651930 405604517 43242757 19863004 426593256 253592571 861759852 730047597 152702651 668650021 877411824 456192002 912931065 192202408 757821816 261403604 716176234 634791323 87725929 932667288 648574871 165448729 79680824 708957544 100834559 814936416 586924008 440101154 926604794 938149012 866125768 90459847 248902768 73929146 80936949 738282024 277389666 698087216 664265543 54539358 183692970 49779624 571438725 6553493 540219587 291838729 131047673 245101115 34704633 844584845 13555592 361224794 532920377 889959094 814439300 364332691 323114699 735768711 788242120 135323148 170005763 951817845 683624694 173147932 827217057 435302352 133025965 891569005 892697424 678128052 737569805 776037894 563559489 243178274 899779143 344438756 554125872 760928121 803513271 128505916 998825612 438445151 155556273 632802386 180766354 200380840 151265894 720280662 893699472 17473171 684722865 488490290 495366235 58728149 120024230 137285383 160682798 597688384 440194729 259853817 21330846 174099053 129607242 365729590 728354581 394770241 374649893 549438762 672656003 409313831 870287139 867564568 686365841 306501969 354888705 321978183 709632100 898311722 880420643 323389107 414874334 862339927 564688941 525285263 11865091 630600663 824568326 579520827 222865894 163680958 329734597 293177735 305725121 887302435 388973696 979316682 21771664 84576062 766777204 259234021 834422310 24831325 45496551 405561805 492028351 605298829 815115876 966932178 308590213 846740475 613499019 964814501 236259763 268911325 114296913 22497186 994135368 139744939 843001192 483715697 596051049 609853960 671442543 635231264 213165929 754841623 709209342 502471685 445709631 682672146 434797735 844401103 128524707 628186127 467091242 676874625 246821723 748911715 587674004 481541708 633689407 710197561 500552271 243455833 892854053 686697061 365046710 361751378 528573361 697303256 730995388 235579219 439145737 265278537 55025004 860658587 89165566 297225212 799214424 996135377 756742527 457801302 330764544 566967134 710466732 435520443 746917424 259933042 7189867 971790471 826488058 978434214 313203931 732165796 562914397 950655866 17795044 468076750 607300615 499740974 518152616 948530064 379935453 910823472 38361621 993603848 303771326 864268791 163839683 748543813 631698738 737001897 770089723 103889966 231716326 797717739 787295643 333423354 85651082 961914844 143514718 401613722 677753692 689720280 746937676 900758736 153910315 129934598 383878108 203746147 768020040 253656733 25155349 632396333 633753910 393249799 326437713 266478115 124509586 968408711 845163414 275870690 115721560 270961307 621493172 86122533 229416966 18004621 890711659 292608922 314494662 37745265 530046219 476676780 998633728 804423142 274142919 684727185 152425209 562581027 350339915 381269229 565756667 134292334 274395205 401769057 553016505 719368858 877230542 358915870 814159123 532874962 64467553 434309884 655881976 70247029 28844575 402785140 54372171 665999761 220201998 537680354 122077882 121643932 435724560 410801563 669720832 633669231 566403130 618770428 26159746 529757478 910762251 177604442 272269411 623791868 137323568 206399284 895249371 138790360 817299408 817011295 990086875 682714916 914538794 899810337 274623856 366484188 737896853 51668528 547590179 901628044 201473809 94813921 479043498 735458202 340741748 5844948 321579282 863043090 359998034 717496288 296332813 810677253 237873673 360295251 479993206 928943582 237680744 691718805 373365814 813702943 862174215 919050119 905987656 797024814 627062368 824188630 830194904 75339334 861830047 203907959 278137390 678252209 618351753 282637052 213837587 659258861 362924811 165935668 295092618 893244838 794783738 301722351 132939437 662393375 867821748 691545138 258598459 382608916 923061396 239110117 469339980 466095704 675653699 576880541 886348139 474490912 705786929 80078092 772609212 762849450 240663926 295466479 970670207 961496103 838560991 303994397 147176911 364659531 714791350 160697467 396725819 367438093 862662562 845477604 555883133 793458413 882183126 511094082 419058742 231768205 524708393 155854958 263100655 978730676 808131340 186836756 797722826 668614972 726852079 294486875 154218860 874238407 180082851 771119783 991533125 652599103 546662636 393594467 683624459 320734989 824210653 846923469 470747674 730538800 353575366 796581449 716308508 784208756 452900341 657371064 213970139 516734901 47691790 553038365 187406417 854325560 426204876 314488634 728268810 783291191 157994126 660626914 670138722 545626167 911576853 358108645 231711461 733527089 20456620 921891013 607033274 920515895 85346606 734818820 703068858 767150301 37993385 107627236 447177126 15664613 589915325 208084561 123954481 208140263 561954253 853950613 715514295 779269096 976547196 71085033 667784851 733082030 673635518 379458922 397509125 368355331 618671498 934700224 205064629 213245136 723871874 23098151 775961743 565309902 327332957 234791996 558566186 959642939 377685563 924339299 791588971 232803181 213344831 982030867 391773048 747520788 668087070 829889103 811018951 598990581 677768717 420218599 345858476 231841174 439261181 557921367 752623192 566004379 779528525 722436979 647337293 790254391 337104450 185554023 818709590 971785166 623375750 476390528 555889937 756232 40930289 209115307 985606436 286848933 9500699 227652079 30640797 434085202 580856026 630517991 350683772 459064695 644267084 941918549 533161021 793032278 737329184 197598639 20890557 718389997 56105711 33839058 8667086 89064698 509858851 63797451 227356070 668621625 770325929 248051804 129086218 516256627 718180464 123907273 708998343 995687034 282257448 791544141 53945715 2700998 927321550 743995094 184660711 485553749 873566016 351113221 299378944 315649468 220991894 60221216 644860099 631474638 713468734 705022953 582222790 216092647 399916850 670362734 136126609 563658299 558636854 622674044 916108084 872773039 575842636 746454153 298142262 504082266 898748145 978169803 366580314 195105531 573748391 679167135 190855722 386450261 606980658 463169313 357424868 548371397 231287565 454598914 757800712 45689734 797584339 579600855 110742069 69153045 802279342 323186790 534186435 468190238 447721768 480334172 488484888 248884945 821662560 907304526 674171452 899496899 321636926 747619401 581217146 188924110 542231399 627240069 399237539 23480750 969259095 497825052 847370073 463674799 967686103 369854241 207723025 362986641 928201686 816939344 529324209 523751643 906025740 208035036 732211418 991574605 239372520 221596992 810306513 256280003 303896853 82987443 236499720 361208834 679599249 776412897 42479603 482323804 327347971 130998380 255363121 650603684 830739705 110054999 26609977 96520606 714459416 188744937 491626447 771150098 704205883 653011959 498353304 588500781 315403503 506416648 221288737 319912229 404679906 412065235 379621115 189415867 239371883 274278045 416287276 83189796 310159270 580532330 39388218 722456182 5914999 162565202 551898243 627513055 127997738 573554802 856927477 983827183 95711479 961760941 316615716 877320109 195673860 884442256 371881443 102327346 887275149 135367144 861592315 858081080 340580492 24839573 779519351 691767602 697031258 901918170 634510083 818351254 34705501 190208526 712438702 354654898 628066646 261039933 870580689 245988869 734297889 809324302 810176692 590144006 281120789 125505668 244261408 920228937 318940200 186379592 967689353 513753462 700038175 865596580 372896396 167707488 378771927 984786779 451278199 341854716 899145176 987041463 424073547 206618989 141727942 987916517 230130617 420134971 280647503 472987905 159007035 89003361 574227369 266917132 664449535 642520811 135057043 494336459 213197653 291268759 356025150 301685985 327348070 83066659 656218902 200278878 107549464 292568910 641135754 189300182 382621856 548807896 674653066 99209179 160993092 990409359 152433002 726905264 624703584 557562942 96357135 287590585 415316523 923416669 685778507 429901207 227862310 541133520 311574539 523888715 717163285 948334058 484639469 47748569 236717042 238719147 720058688 823857303 83319423 980941711 730819723 594427427 620621603 866349442 297701164 580484936 908828684 282795612 146703566 632519904 880523904 16618384 637836154 808490889 728926899 263612063 202385766 814005160 377089751 26755650 81658316 621562743 866575030 520346661 177522738 996222595 669621417 387096900 199865854 301504851 824265660 288414093 353522912 821461943 873345727 894009518 439228501 410247422 521980877 401812939 253367615 292048100 271213647 354760422 840398886 521875106 750081079 56915833 232522284 522378801 321124690 908817389 556461845 248766365 232921662 567872123 207188775 892079222 904309060 625372265 356614384 760867781 967575875 559979580 197529568 462895323 827876919 119420935 41055564 774184544 635021790 626783145 668422825 55813356 61719110 220553650 616418663 945459617 218054966 602777256 985165348 411353942 128751132 64010753 766961872 326200455 95636981 238508411 609890620 299069405 603972690 242712746 317359454 316862671 685323379 407216385 594942373 575021846 388733073 781978033 918306222 280789911 897810936 307230028 13298622 301005337 912215069 764039091 619323166 162813536 102458939 352838621 935396340 92434861 822918434 82730012 647144831 972981690 963015322 7465131 971813909 829597401 828983060 670315743 381526591 214684509 503177975 631377222 633643806 932516625 59847398 814134797 191170374 240409141 201251613 641606752 277228376 715585931 733955174 570695499 172285093 387602309 471895047 645389759 347789749 408269201 762798038 245115474 785898059 792144196 924938372 252504083 628768345 654509136 257363219 92350995 832226248 136847520 898545618 811371215 190381395 39676011 375380260 330495017 954944084 599136382 500036288 362877776 157398180 433196622 115965494 782106067 801839756 980834445 103142644 436430378 340090022 812318486 299025020 117066084 110223930 198635770 624016508 162835141 375020033 478626079 594164521 282178145 331556499 358348239 944724778 749733886 631542433 423652851 716382073 472065237 513531207 543019076 66663195 998116767 938799806 172278048 781024606 44810746 675368444 899846421 24394792 809343021 699538163 25761420 591990608 634306524 352441212 163269755 889421286 365079665 214606619 952497315 967073171 497197203 10525763 981564338 867219871 996955403 273264368 884296157 424260594 812707052 170124422 629098707 239161876 569401681 124625640 298330445 845314307 477674269 967747152 902788808 706251860 374155477 343960843 557329604 429340294 106525445 497535697 684641817 926684704 171938247 778109733 47570247 332871340 653516650 749649907 17507442 651863580 666068478 235670337 47369854 116855304 980713881 110169797 323890970 763642243 75765516 847507647 158130924 81464482 778912841 269080824 751330831 354488055 8962870 712973320 204326595 470725499 544864312 104594931 260427534 382595046 643833917 426325475 793419591 778180936 377491843 660970281 671784683 814155466 697552328 191341259 653151623 350644917 562782355 193797768 880275490 310888120 85359225 155067743 984717809 713779900 38726413 441181332 693808211 482028559 543745538 637718688 609352625 563329235 246066697 208631261 240940295 917893511 212207558 997029874 786344368 452197796 335625453 702920451 911256851 687633807 304608332 653249090 15172095 807629262 850950659 446374409 330450658 604748811 752564041 433385178 266798522 954156501 340818872 2023827 340179961 206799970 580049293 847784469 830627387 50582581 498964725 458983172 605176647 272191852 265645272 28565149 45391234 398667224 399210584 49127183 829303760 885721249 971624872 409004754 102696940 125941853 896502763 423679038 365777720 198155168 495053168 656907213 327581696 123135725 154337845 871739892 965498221 819744367 98682791 219686212 116067905 48104705 437890628 641315939 409099464 282955969 160003 894013040 672927126 111301255 721136920 474721616 215394767 961280074 742581422 881194137 28473734 741617825 137216907 399768525 441210046 135797892 160748371 327204792 731397769 871222601 305301814 974252368 43011344 397011908 305131890 543355797 406482307 640735171 804964360 213358748 973301421 999139227 700709635 323644772 391763522 276181220 243145354 947081090 529240527 701163699 420059459 784017971 39981989 334005842 779148186 863135671 536381479 618526008 472782566 605327321 394086325 713762813 677929397 173913416 646872275 340855337 718990685 842100500 203669229 248032701 440628332 815606120 911874126 151376954 377151066 961889058 838066911 67892278 110609357 743708722 371942992 325115220 15581948 512922255 204584153 618367226 978212888 94326829 554835550 88885992 191306834 577460055 795272985 343773526 434996462 75929308 580860059 205547798 874004390 171363399 75619637 66505787 674406461 109556048 225755154 886060212 23004529 360616230 898838690 311994990 72356945 185226182 688516302 778812566 20319146 100810766 707357457 723480541 877969260 824273440 785527285 578387980 683182709 943573246 901599603 158460163 687673012 738334862 214433691 440691762 197406896 768339086 134208532 186270150 194516450 140571118 737074153 975101189 540775284 987745693 956804255 912408433 793075812 179307754 748279417 290128102 278886570 677843339 574416450 331289375 974623427 135419963 212801700 785116912 347496085 661362910 959298545 804117790 733907034 625297392 590352407 955061686 719821188 667390203 514892180 321610665 270914979 486763964 695756475 937161902 788890531 910799750 977801005 908509018 324652195 978310882 624246860 683356307 5235792 208658854 324969957 826721284 835146012 436717232 291347336 535609339 763605366 179585023 148389292 386325938 381165749 654717044 681751299 196235604 362163634 406872740 964126296 151173309 419294766 454842276 289599252 131523110 306147690 10323687 825350544 591871715 956059609 537961616 90699995 4601412 744873939 748086964 165184538 410412777 690712128 292510289 68607412 962640207 124772271 596014876 761450338 959671327 938557848 96440337 308698088 673923352 367856098 617001788 958658716 512597258 781129672 128970066 485435594 472625672 548711273 391475052 21225954 367268758 696964540 676701739 731042782 409480911 418571031 603882051 725699056 411676993 918101036 253165521 973274236 516208491 547188086 253780946 142543681 281249459 488551579 192728603 295294521 620558729 22764326 731591383 683998357 593986321 89464958 148319978 851271670 217605775 555761157 788732865 663479309 978600951 336605542 945594571 651173064 238678259 578800289 539898648 892864492 778417350 678273146 538798502 411608196 559422225 668190773 437002911 224683696 466123175 660894657 58019443 420301202 138600389 561076043 401659427 438042835 268120430 493084617 595501994 377890677 871309156 708424339 25733936 683920950 299637984 19430125 639581268 626875759 215472853 927106197 976364202 914478804 644724653 815144512 482332214 574611197 458107108 624043594 828199342 539309013 271883131 613940137 954570163 252851731 68342855 952185798 422447544 570443835 570182267 738300283 469049844 507757264 691264278 799852947 620446365 759092271 5303074 263940726 955312439 295056603 683348869 815157650 767809679 144605198 895839956 886367711 750305764 371735331 582599430 54195904 393930492 909304090 146539755 699491676 534672208 733502433 963295749 539357359 341112526 212935512 872981010 355326554 392834289 708190829 231213053 656771422 811120444 443819487 103377531 255377333 626442306 202139499 358742912 508751038 685377189 377252107 354871576 137208910 15259429 609116955 415867415 324356728 388493120 5273405 290805850 610165659 236019561 285463706 465129054 666325271 890354656 478919488 840410664 560326471 174012391 360614184 595346887 78357190 632742386 645306430 687047333 231566783 471413398 892248624 887903405 368886950 568074767 928122377 156266158 274467036 907482776 427215549 26939011 461147432 821341230 476620663 949064163 759492603 230770431 912982560 959647607 165165651 816797978 680380614 543610473 530601366 141486434 169120425 407813200 657328126 657681992 648821659 335318533 627910420 546993006 836688031 692181171 646298809 22481706 37477462 87499755 540423868 254471882 649187024 621896573 821909379 579936787 840191616 876845430 502645620 737786971 796419640 388352313 355143136 111639421 367358838 918277793 952664678 480546477 295483397 594926994 435406953 81450130 652390524 749762863 115045284 533582970 206748643 947993867 651416141 971270333 921179499 131715775 579332444 190778665 436819214 393754993 322819060 298955685 104583378 168659208 615524460 424752116 964995093 670730130 958406432 193289585 421826855 661493523 371624519 127272955 564014108 762545443 559204559 867343438 324576045 161837118 549609020 989656331 529411591 709282632 384413686 952237158 904644505 784711457 506212868 814487642 552781188 205922729 963374892 486927975 5668739 198394376 845088337 607026355 709917384 587769803 507960533 403525133 56153404 291920354 529484487 978106538 761966750 122948163 381361758 904296572 315800675 9987805 815239183 829291641 585298971 405260353 43074941 417628876 6363587 935666908 544723674 115659245 789732063 264278892 276007290 601074449 748795131 976759215 58746175 539766872 832791694 535146067 490018830 12813400 479594949 813101544 342934249 229740602 978873952 464441481 795379674 375874153 211434364 133921268 575086354 988503638 425217833 3033611 854435555 923267757 10578116 391135485 17384477 660597831 579665733 683531123 909585971 88801088 335866049 46407032 499890200 600289726 720898341 505776192 652651968 419742918 470834453 536587224 662436968 110402673 866597487 904222270 799765630 550127309 457151086 364393841 989276846 36143909 378393663 971939947 701338835 717872042 843741208 74064192 456191871 370966984 337145386 696119148 844942417 488641870 171212649 857745908 567465873 302646990 759109453 235257072 683912717 277008256 859573949 18622857 978213783 18882900 454343021 658637934 704216337 270276370 820754731 142663109 117292824 946804581 292529590 791636783 430413621 520895287 707288350 175354195 224159395 924419839 393687196 585041713 362423382 66092550 929178375 995001318 74549010 708363546 233856398 835181082 642347327 228851514 653087006 383369665 910777802 303204114 747774682 789033177 876128655 452563141 320226626 403059011 41344568 281153709 350911142 265185102 27445071 6635165 45734111 910027709 878568204 598067128 143082994 505965509 943849941 2523191 896642292 90795709 274500993 948160348 25673873 846025941 827029690 17580463 750718869 636543411 140844367 886053840 693209675 446817670 168883742 553291076 573715577 282066279 994223242 283026901 103689402 124379067 531921153 936327125 776296821 141730095 810499162 165104908 103357863 600947754 407190614 536768569 998888793 327759775 282631133 259655706 27975080 819841593 77158225 731180106 442777916 436401126 627567123 655703986 876422782 531607437 200283774 784764292 525988322 279953653 419370887 182458476 16304696 41812405 73041533 953590477 300242999 402275159 859039189 519877042 431537520 246631608 89729645 531654219 300065478 960364174 568264323 584164995 299718299 69412128 493319635 463365750 863258756 415672254 419631004 863707156 121631828 29903435 13551833 498089993 329191242 461158585 542098036 87135048 17041585 541337167 83355654 831910891 503583153 429061245 835775788 132249753 541267129 255958743 638186822 22103445 854529608 955196521 329714476 559821641 712133655 260149990 46692366 42168458 607821203 158767051 94517654 790083047 794925468 948857502 948133898 468848188 160354908 893360839 961661096 356138095 501243015 917809459 676363295 374614460 346622160 72094040 188100237 418781470 322931025 388719259 424044082 477804535 157213444 780382819 735989393 516841238 371776657 836940219 617359906 399155763 554211467 415660988 915386993 853026463 448706004 518516789 193840262 523746367 808907435 942875192 239610991 569445567 835514159 326224742 335961512 961821784 677562627 804116312 630034307 697623459 345136608 755161082 140840026 727556167 871296805 98089854 827830668 450006753 40434360 577495576 730549071 478680172 920437922 984186725 452617758 606910918 498459126 956735051 926060763 888201864 162582833 288355913 340788316 170976581 379494377 712999477 163980441 756457421 505210350 558481775 235194526 509598620 473085532 146295241 602587704 923547619 551529630 693073049 924754747 291545819 862535916 937793269 678130899 664338703 204606579 614183701 237662109 138001159 75917310 87503146 381601031 328745412 15345679 414929448 657406851 209837651 354330469 821636289 210900915 495292140 721687086 766428355 311607353 518703204 330397726 527735191 471870419 766045350 423714115 728748187 195684707 268418485 445495758 643696839 981185603 971532166 700312265 165929019 488901885 316955060 677880842 489748751 105795695 416708919 432625343 91400314 569654850 180821640 182863469 998703514 783563430 956773434 572034622 40653832 344773640 895649154 23763248 199663931 774590988 437847584 15669121 892078216 410905336 830575259 669706345 777932782 293137443 710416077 792615069 169838624 242351900 110504002 842217856 377490419 315205716 964288555 548144187 867219154 521620212 767589195 679713399 86636944 545796596 256779311 325378490 47703876 822455736 334473085 680358238 719351709 798934061 804244637 6088500 18563204 90852527 81292794 895012680 719089566 810336235 804438818 44392554 718227073 613838453 706920373 238822858 37053553 941331527 655454626 318744425 696612601 334892437 777720891 925390134 878320779 702091849 580499661 410238024 226310989 361017649 13328936 159287553 738298531 330801337 391659377 553578541 565034535 445396963 29875734 980314856 805646773 246869638 734930020 354097042 191960482 433509169 261668482 123922178 781786519 267428769 691569942 841145957 648819512 852712353 208205242 724815273 546732290 693328290 976879836 602692102 38536256 261574037 37122389 395277795 766145377 972433179 103744481 282772435 392049791 58214213 277283425 845256346 836761346 824779266 882268535 370172886 342674464 559607856 68555385 108514777 965305407 30458557 688093906 825327261 545975999 780721238 272177716 166886517 20484814 787890777 189996412 792486333 373919374 916568936 682916623 791753606 874525830 52709603 627892664 646157807 613685743 905547438 231686250 41804846 694443394 839010448 821370109 314563972 479346520 363081517 862077692 646405850 516360122 959573575 285415486 98288595 6153039 921734949 298890807 647220465 315611861 288077779 127692015 643627789 861800828 858449026 793637688 518234497 989695197 338400636 281430163 205515780 368070526 77075069 843326079 905757349 693271537 810545107 398524294 89405898 115318527 579936148 530169585 25311698 218628607 53981709 772403362 920737462 664528317 990156037 788857067 521308794 574584401 957228621 488374949 422721078 313560343 37329263 703612605 801649073 698711374 610288134 790950203 195255948 238339293 305218350 709255932 762695598 715351294 125121910 657562587 256418237 861766805 320022359 730578435 223438605 131091814 384785304 993709848 685782187 88620102 171543247 307782653 168021002 533135928 867359217 805462970 471546927 344111515 648764709 144116756 656959197 832056327 810854951 669822226 77652576 133084531 611806014 174654662 157088592 904311158 919613336 216749154 427144038 845390505 985178615 745781573 972360513 782668583 745142904 466991919 677454524 853373413 305661146 669883318 956936270 422807326 94298850 624981143 924566763 455904132 475816872 866512574 239296764 947501674 41029709 989604800 141956102 236295651 956414332 819859754 458949666 455516067 622333983 576102462 883506879 462254423 547971903 766069067 746936961 460692362 867075643 113752620 41150143 536716753 616996636 802396634 176868964 151555452 96465951 261789050 155120073 489926164 924423039 502576911 356042604 877175849 351326142 754324791 201463757 518921178 214074934 453376080 240533639 12932219 317358916 107296675 463760042 143012466 376120567 990310788 694956686 492309851 391844511 799782447 939919456 959728487 278724731 282718778 105843293 692596186 849746408 486314115 570217011 695506073 495264641 638569020 81584929 932030652 199854367 375929968 445269969 768141443 885238826 94585134 488426082 240805616 739150013 623349797 582243539 262188482 13246930 785415940 101748602 163231654 286396316 95941460 581005969 498613260 805039715 592865679 364059269 276080333 111754262 22789134 328480645 297578652 551274120 656748540 86256475 86305841 94446420 977001994 546660504 694539579 291930207 17641909 460670522 68197565 329145834 257274378 554160175 475350679 668630464 83165183 955568322 400341420 703650613 218402550 532501275 193786971 480385523 678304242 332000207 564963110 1970177 847924287 23417335 816297839 914331789 428543070 485359855 166456375 542294197 767465676 617877796 542461160 456046898 611044053 626480380 733629572 910173460 213833742 505302289 841696885 287878744 290362522 510044147 447118814 144045878 145527522 745603734 206778125 54477050 10257682 691397393 206093743 406465098 833076122 227434717 255135106 820464536 741317825 402863722 32924207 366711826 689446554 810054394 525091489 248652350 498415314 333458504 559983054 468313729 426292380 747321680 910824042 161732291 346257731 747312044 692052144 365742642 254072206 415676129 774794957 58933798 431323536 932440997 235841064 350350361 416584826 28967172 268866840 677567782 947551740 522763478 386190741 392096883 514818186 845465390 120297329 78225641 512233814 89122760 496795613 424323022 193054652 573571319 441225835 673405139 900846357 159337880 389215452 605949544 985363011 756736181 785400435 606301235 743075377 943347531 490625722 988724127 911702063 470809619 902290811 686358379 628000263 483341867 595152337 932789921 738128798 233034122 664298496 168641127 165872918 539012023 909464225 920686581 540369786 279825767 866238319 187705743 917040666 498493030 531557659 602095427 104897005 608142907 439203290 541994717 857566512 144289639 954478161 996320504 859557604 470364821 114623131 608080303 303747952 63785874 240060552 541882847 406545501 952183531 145004108 740230229 443523618 451363411 285886866 179264423 25217853 962262518 755251019 432907849 807328750 37588740 636679713 956979890 830680985 802289163 471752738 916892232 815827243 678201546 332347392 106731908 823823953 569086143 485703289 498714887 119254287 875864387 319453851 534406223 148427840 942584855 97202872 619678177 678925561 406633528 764010244 777425099 423345315 718186408 115659425 822439100 435942727 554468527 61287605 531189774 553279807 581556709 94411616 765695570 626013930 487036022 689555925 95712448 931490796 55954069 227862838 727780589 370351994 996544276 428607248 466410975 435902402 14244713 588294343 353958125 467703728 589380667 158024935 890909418 321418577 167001077 238193633 970545601 862890164 677572412 875687545 843701330 819205193 366073909 312235379 676068166 454331497 830319744 929980762 912593673 243376253 304800912 460266020 802691097 610646923 468739511 485164499 652271204 950570683 658040134 527611311 929710116 622104424 65542084 755610846 965338890 18703088 340939456 428969439 440453695 25205149 765608684 805920306 201168538 724234592 917552543 565431305 41376935 46871814 936148395 709009759 4238203 791170403 3595769 660260269 766457073 981896014 281705018 350823605 491045722 11892651 494227810 231352613 5506289 231157830 989377918 409190798 720357742 661196808 979941629 420715695 787968565 669963287 7853585 934859612 583160091 688664134 154397659 967454932 405936854 844957806 621061983 258227267 693574402 855966090 858270132 726618276 471744506 263738663 862867705 752207103 316800062 430789998 474928746 557466868 707204213 496107186 331074055 390661226 412254153 245798669 535140731 872646023 31403668 902607209 760869679 934082897 449018242 985098818 327702093 682067011 667725699 70502604 495809716 191240760 177019437 854478652 534232093 175572747 666654400 523295200 842659230 211417347 13400490 453081141 836706243 953578021 552478175 447122917 836995761 293550105 635285049 18769718 436703266 710306011 638627173 352166753 626972691 137428352 344468369 881029957 829784792 250653022 599308669 828109106 495430395 500610806 563525480 77262628 331746391 502627490 625004496 250615998 588748767 475949666 777910876 525395431 176339895 494184525 305043950 172399757 431844482 100794881 50079340 208365777 326355361 44371427 61223293 562171164 497387399 719338453 442903718 208343074 261006987 361966837 649470163 207137399 567760299 231906246 181338545 120707248 352162952 15919240 117360239 282538069 199526359 247549203 790669243 143922844 708004306 650996159 839024125 254699205 192009544 787731254 48476592 400662438 59968476 419631762 667166025 118345561 601650246 476918465 451488976 912897272 588045475 253952897 216029954 876687856 686533699 163892375 407516255 774912038 584099673 362447155 353217121 493174558 622418379 156854044 417204328 840495453 484008226 859677703 951178713 827319951 280834061 537617872 407237015 28751507 515189714 91245090 62532257 197649527 71920688 460760259 462151200 357468422 757737394 671525996 4450671 876008377 825515820 61161917 560600122 462718258 142647225 27754019 30146569 507788671 335895435 992379023 529616628 697842378 767747635 682556198 885432499 585617076 703638802 298130320 183728773 566072477 477660300 454602663 449923481 845776662 723958043 506058408 296422908 226314453 116159354 705220461 149885641 245459254 236164493 648725048 770655656 556258943 629090681 336529211 183771343 590364365 537830287 340062377 109442223 992101481 287844655 349333695 671349930 871288714 67557547 331468466 438346744 449318656 734451148 106596838 461632223 286175126 71392024 807525689 764049803 166951044 792218005 74827221 868047006 144096492 199669276 656368570 395855845 488580205 980890753 701698005 678688498 706715094 964226999 750401936 48778025 506309912 846919820 444787451 142292763 902801055 971776489 654258793 841157087 2719712 840326930 702725676 731678792 559910103 60122148 78637535 612250098 314938318 980339540 114376906 188172420 987882741 555907446 694829728 927458086 635261001 274396445 165480042 988322245 728728467 213397216 190442070 428608089 568154266 267144564 430165372 339006731 986393763 870089772 653424523 871790400 267395447 196365585 557478103 308681367 633677922 201013292 177024144 972945513 741015346 681514655 432475117 774995225 94111992 338080574 576173832 245075279 764931656 203314294 768081809 65980019 284230826 128389270 672961636 346568661 536786736 553342095 516743931 383355499 415933010 442315565 76928121 326916544 403955341 311621165 903070346 101269517 256827530 559979566 55560097 323003851 443049432 440004605 859115211 378027174 623617788 517834427 709529496 495834323 94995685 326094053 39747046 233458531 222333587 713755046 486756406 905054758 197265913 914684950 506491755 143495867 571855170 1754274 584319738 547697771 537491805 740083967 170238301 829523017 382986576 865455230 342273837 103719996 755439170 517469204 609670364 509895307 542323678 419476368 100388018 16664129 657557217 716449065 350255345 779753626 224998049 387412694 919845734 684626379 837045369 190736676 995817719 375091223 43399654 341836311 171596363 72257892 433051129 671982901 674782274 255764495 520243725 135466958 114039754 979178987 339573916 409827666 860796085 970475513 231321566 373090181 621494778 200323313 918272546 874816584 614614341 343776584 519999862 508024107 735901169 975617840 47183553 384425657 304516968 931215653 914881414 711924062 943016788 577726765 909653214 596597414 322078270 126668386 152880729 292766722 922065684 389391213 530164537 811406406 334375310 679288622 993104211 744145659 689249777 536301832 995791284 862217825 432361611 64816295 194033969 547171050 481528105 249923425 257344717 853233345 650921355 583376659 517867771 540905416 687705059 878835609 132202935 689672541 747717959 299015005 585004686 251092497 724088935 385612825 325639381 438903165 386201928 214473518 45154109 731616079 959516811 940100812 54977003 708355729 154903506 128104338 665020759 772736204 1658004 445215450 897722417 832174309 245015796 696763051 721370768 309620941 61348175 200239053 493276697 573070021 670919758 846198392 38852256 626199956 976098933 383428692 9884442 925128665 441329265 489595691 455042340 598698300 717469644 5164048 49803254 133134471 444156197 860099127 152292317 948589346 276739270 208852033 121578973 490903748 774556181 645419269 794584473 398925442 535010435 389734299 24511671 559858003 875891021 475324868 258460108 251785229 835767881 153962687 94323979 93049407 433895519 26280485 225812090 965351872 600417359 438655364 646660810 752562224 67791849 275673365 291104023 825842075 508197460 508960487 607959540 197579909 813995633 280240598 654624523 52951513 894787502 43732093 241855443 985000495 586914812 358934330 336910755 230061705 449121383 438102048 264436022 208052001 49155448 395542623 45495677 235366920 245466254 544200115 707012868 201401175 460454501 211230111 246002289 917859074 36720283 232309743 585483460 705753049 967296846 694432949 950146511 20592967 745522565 302517072 383556847 267827718 417546444 994695186 489134684 554706624 988089238 321742945 409785286 742763798 860276779 331740366 494767111 568638769 189380999 743127603 846446364 82110723 545594542 876844996 241310212 860641028 470228321 921844422 962150510 351889924 197094953 113286085 319635553 312255749 883736808 824645093 420555905 544991512 147952829 390729758 104956854 44479237 153898986 557504658 714132532 406596239 792647776 779264601 934255977 768672414 728625567 19466226 5272450 44703145 359305057 257542623 911910997 100814081 378694165 309029341 787784447 34320810 459394989 17743306 257075203 600305811 748514332 63590862 652758782 496428412 144781048 344925219 66514805 663535134 540223403 515069073 103611632 363145444 782385009 939370563 399220914 319066580 583318910 876380872 785772358 162827082 437695830 176938203 501030549 994112921 510457137 466986737 114999156 500570507 337449347 667343951 464090362 411038867 141546482 434057560 832119207 228689686 881160362 215574394 76096763 730534009 431166961 334435630 404841386 830790786 663894746 671932517 462510058 667334066 191691898 710323451 813156090 536109817 112246767 997033990 52883037 957599449 808849591 679977887 184262564 41789916 359289311 986910607 114400787 9887900 751119252 891018870 886144130 943601680 562799289 886653530 542474320 814843562 905874411 794563771 418798575 246135282 127025339 417834193 524005315 251667143 316149737 510357774 872644884 780619206 615170918 927265106 644586565 954962004 628215843 782685774 568930898 380976924 378046846 660506606 801405171 768659908 362502618 613245796 790176042 418419666 441219318 330943212 869397899 778908853 918144301 280011441 690551490 840425549 87319263 131572724 693552690 47745888 166737172 872230765 654921611 823797144 498489506 211599393 527175962 182483691 802965340 109463891 815116288 19185415 625764930 511841559 444920298 48275223 970545541 467184596 921870629 911926804 736766792 936662617 37938260 486055688 433980073 518635375 473241697 204730889 172477979 918305597 989584264 746409791 399709890 58169836 228698771 616612464 404356823 821116216 25275442 845748679 154992799 834481663 611310129 21805945 994885478 293584276 764407181 293819211 59189050 119233773 361282117 220929637 578918895 65433130 833643413 300400703 520850880 153138224 749022029 558442736 995520306 823478334 523883951 761570070 722508062 644731254 711650227 201962508 734539826 891135714 231239127 914870051 23213784 762812787 908550363 603586541 985925270 45532672 966136159 530957480 449677605 408075238 643326939 765623248 976118717 854733544 119630508 851366793 331940002 136792267 92857459 676983299 763433545 620676527 590183364 659283783 369417714 693951952 899706049 145354946 478855986 162879016 627281222 890288868 188814813 967634913 462320265 844714725 214768739 590194694 115124384 582921399 19706266 128254595 472294319 964273392 840013697 578481876 250343647 705079805 213081877 756926425 710866688 703163060 516216016 460434224 656512912 112160913 743849496 454023199 534115403 912040104 294381446 922884211 233225353 778769052 813822356 240820559 966219170 99581924 743206818 28094570 615336926 469146210 859258139 223419196 845261751 386781220 220959522 682250480 729995138 49720927 963807764 162227505 582139886 914164590 440615108 227347477 956527826 980527773 481442049 741454042 795755907 523204623 893155723 977063072 468046655 612489424 518819813 409080410 831659316 691819113 921225607 288429154 656967933 924586572 884583009 714058365 650022429 750268003 393453745 497215584 141936428 845165086 83425484 836354420 846059915 869853241 579781387 135382591 795102367 27877930 903824191 383824179 861336903 850349500 312614593 556853757 44867025 582907652 849726521 451654586 548711374 750733038 238489184 730738901 612878184 378333757 899586588 264565163 944270243 994132666 907374065 228308795 86772565 981038232 224265273 454105054 148663458 776054268 605023711 253754670 627429426 924655636 568142765 541058791 522072843 521588856 88580413 191201749 916585674 278824722 414991320 581129910 318731310 590831679 415275876 744185547 108295941 809310894 519653914 375763178 825742046 22737173 378346352 992279398 922138288 101228440 727954902 676628219 10115839 718978810 398233281 988677138 89971941 362323022 460428016 477678778 442437990 622402818 387433779 230442837 196308223 720063621 481865761 251986854 191014882 982389656 375389984 771677207 169476750 581398272 829009744 360382981 766360613 829019342 526757518 715131575 298048427 331718879 597219463 684963988 990475165 661659537 804437439 750710382 939325447 392963435 179128883 364931674 787956810 44643119 92887676 288129063 318093090 631272625 209076103 526508836 275258653 621686743 457804812 927125349 628477318 726226161 829942762 495427880 729804179 131405571 420826911 721978471 833998278 296554561 346659156 702911515 241652480 435352086 915730120 947938300 339191831 759612940 747942669 230073711 261759720 62317500 668717183 549433770 213645831 399454410 980894715 266970101 696156608 582285774 841573185 355190763 679189116 913698558 44040361 331840844 440427494 695090774 247679972 525541778 114122252 619131920 727204263 661491617 604905159 933711164 821433891 186631871 262921304 796172462 692776234 373545653 43996975 761200169 585837704 439179325 673180115 456794624 172124137 678511438 669491261 424284365 107007446 248553813 514255254 798416921 209182444 371283504 237621983 676381937 998317965 721933561 295844408 452049915 563060715 549887085 296297479 151137345 104580964 482381421 769896429 265905808 867180374 482363723 882233425 255933642 671248516 250411739 466588007 88822703 915556368 518927095 244063272 720475251 849969127 3720604 281634833 309988496 420684966 381140410 251652167 415577362 340484145 379569038 343296673 105959289 474656047 624414207 468646134 194815349 974708846 758374628 900860128 951613771 885640917 728227149 282275550 921091499 352383324 775331184 195616988 612025518 719564870 488349038 262362366 592728525 840761379 965199873 622064088 820140124 825412019 377395924 232076928 650665625 500338029 722681606 816002831 958188865 797408393 831225589 838756299 871974919 113332939 266769846 683911533 809762391 491766417 180016360 931501301 183926727 349000255 283340882 290359152 865078306 708931289 758629171 847156563 18545616 170618170 938636123 853516162 449273016 664482603 136774506 212641268 254845797 341872150 766823460 278521622 426250849 961398186 763616776 918429551 891040417 767155720 587414313 415762484 361225326 499737015 918383582 523671165 983828409 695641376 400011721 445721321 172710244 292592833 327957783 623267406 433611842 536508249 105749866 45520132 490237020 889000429 89359984 352056941 260201012 33981282 262879556 930016544 877365398 669636619 379569254 20122332 711740426 952845297 788238882 586405399 737727613 287012362 510787020 685238996 606005511 277106170 916678470 874453458 283956085 813241960 689167199 809791894 356048835 511626801 382413298 810992845 251453975 762628734 543149286 511644831 591295768 458191870 916871031 151033296 839807045 532035986 921545466 583249854 236719743 109524871 334932227 516349282 265115266 450253618 718988336 879999647 812428875 772394953 247655512 202024519 475901767 587405988 373622113 144296731 192396442 301168095 562270845 924511634 487729488 899839670 219305193 790035729 366555824 439681873 321356800 243325852 702009996 159615905 968821476 545791860 967666285 736417676 433667707 83555154 729819969 348257469 977896864 538825973 842519784 563114081 649436550 166992044 203419770 410456932 844430076 767841879 766898712 758243608 436811267 808323041 844737303 346978101 189039675 373284156 201540221 292076211 220223163 48542865 969476960 786022161 36419932 780414668 287448527 20625283 615624839 555642262 291762589 645090987 554357589 810819351 982755250 552312572 421328024 735965188 113381664 439216 232287626 373584774 734436894 304276068 988679974 488901869 739629939 532782864 357459863 838707482 911313164 728751357 961037382 910481395 749160692 445626520 181381024 9730398 262718008 262307462 240881456 662027209 587897915 243101769 560761280 544416078 658981974 542812046 381895911 275230723 841271499 610911890 566664011 451300108 985751468 53587534 450137350 981021441 21184163 871086517 732991064 964140329 312333000 350836007 195685993 67283013 891221198 843719476 784002775 505121541 281643601 625168354 346777680 876911318 60377789 654697975 85315539 522337628 941333774 770812345 549106590 326726193 225689693 234112865 533471172 983894594 620003040 235575696 290701725 956298471 24214149 35815599 237894855 312311538 393110194 819467247 203713502 728315031 72751390 454350147 861389779 60512939 174225389 47910890 604286057 616900750 415304065 729114355 704786996 299322249 137168324 294898771 595944520 874247552 439428888 676298708 651443989 2458575 647244612 255004480 303183876 229939689 723694130 668996130 36208197 288576663 159690847 154124226 318246475 742254457 686188518 572963501 681712969 630232562 893903575 6970803 44119842 783033696 800468049 259324984 928988474 437616607 272823662 913568845 889661029 566002080 504175687 988166518 116340924 45163443 985141234 223703903 274035838 955056002 141302777 494374517 977290580 236790038 802819413 261811673 806235987 865765056 896671115 922204064 218917589 617493409 253295210 964665811 402829569 714691981 50056674 527223138 567873762 927500224 956423508 242163757 842318805 738942120 885951891 314176249 195403842 494799765 157914524 239066638 867981969 202453388 154739513 574471574 271615610 595365636 637654331 790651954 24963029 243003011 326816152 692518835 431590961 478932749 401059454 861167914 693488263 455908887 747071939 692942527 917853531 367073515 640539443 545665393 56260516 707725605 392842930 254186138 156433471 123674157 685101781 345300196 639857470 256431342 636396067 173317660 900497621 165808887 148809119 173249412 946242350 957695130 768372533 23748546 253958280 152073805 867857500 6976574 727193314 329077312 6033992 976363102 795059 785874003 78451620 437518674 493420144 56342342 300519537 12874346 330371138 362248337 504426299 819217531 313766055 510041982 484492375 189566469 501823899 816778537 92658662 45070352 427577903 540891806 163214996 95025582 910256908 717973472 618100216 654381850 466031939 11654367 620568889 962115033 254614507 113859277 735742812 52993177 849955277 73386191 904508778 666170670 278385405 973710481 334199046 62759376 951459578 844902492 492846256 494788866 911568014 909084983 902129387 187345310 580245982 437499226 588942551 890564081 690170448 181801303 242021220 383103724 968371792 809695882 452561363 392157445 340048660 637466692 879090471 448823238 823623035 241034638 273846225 54038871 360083691 348442025 726050421 625746273 72675315 931529058 958270466 155067222 598841971 856577075 153607913 393595111 191039857 316364129 12485058 980448869 584280360 635496441 831798334 103186954 583262511 121349168 796037751 506305167 399334486 324491682 278810081 82122252 751967426 433949865 600240260 284439020 639373974 599104541 222498191 44001562 708087486 611712203 264332024 610831345 888708043 814717257 987667464 693266581 994338553 343286016 986566021 171901243 680089754 213194268 342711942 65024894 12788799 956775364 922395255 386467915 726832059 877320362 399515620 210570626 150009467 226510244 284323969 65939144 769975663 687992661 515646223 272753368 243546935 562932199 793619561 846467970 446748982 228867641 910566809 625173680 323255738 113235368 150984047 232076647 452168636 844349441 616860500 464758583 565301099 975269896 243195009 866637527 906208161 926650131 898215578 792508428 242065044 949290843 660484362 251132224 254185102 617846857 144704369 1369693 793662851 677550393 81544483 912598259 510863995 141967834 300513673 744221860 112597985 676435141 203733844 144044181 386818553 450977783 327158541 10333480 891756618 941537299 619877867 196099950 792667488 736434500 263517447 745384238 724504562 495741983 624884518 377144684 511583247 608393135 137912719 348304118 102555669 594743736 219317065 968003311 245887085 727703949 891712077 529124466 55592441 491701722 729508086 335766703 257942478 966155277 28879027 44169606 175072052 433299658 181422378 341275362 711395775 886025371 381812493 765904692 693748401 482265112 757871117 779850269 112318568 88009736 905545815 565937764 904706492 661114459 861739322 597978361 355670740 954130380 336292821 748973344 331768754 819419335 443649622 18155491 242024512 181394541 345593032 965306641 655142772 534009960 330314726 886118935 720157835 591821764 889346245 489328244 290782791 638011766 642303067 666612351 105937086 472270040 970563016 933766196 958929151 293845973 76575094 828566584 785988082 1384699 214890020 592211191 940662839 980509725 531110867 620931718 560273510 883978331 73632280 698243380 600546675 161091267 470125815 689470075 513263947 88416560 84342281 115632030 138207020 739095168 689417585 107468997 446162655 761384092 913025979 686351982 621713479 112112878 851333667 988164644 390453749 559551792 9749810 482712381 465426279 475260961 957828335 512413725 894142106 204301887 256227977 895792007 6192068 995828824 481867345 940104412 656088412 194837410 219760508 362372691 47474788 15878358 203549600 473775089 618878532 888867246 774942158 841499726 977046322 684923672 593727330 202373803 212996795 529765136 713289563 476864951 327709076 998786311 486081627 989233629 824202973 796860120 947362070 972490312 680578099 159357441 745972464 63281500 644409399 773161930 785070729 479925492 341324491 381950267 871116179 492264939 409906508 86018117 774719939 780853316 535200817 149636948 599461619 689002648 332411319 729532554 271928131 530707429 429493344 436773199 23890149 945682305 844508073 218057991 794913538 352778373 970686685 602417586 150791775 671748237 951521306 957332566 445366311 119466667 964232001 663565378 821821265 180619543 711178127 309762309 343604727 201641261 119018029 699941268 128155533 259220255 240111679 217655780 625002172 106545385 928796222 251626095 464053220 201903362 616345215 551460341 829432063 139942976 341030067 520364913 856898438 869804982 191972134 923035169 714693331 246142105 747513979 560535339 648468230 30854576 674410236 310685939 261578493 590584306 210750507 766316435 451398162 290911223 301657974 487636200 324601277 562478429 916668925 383209495 591968855 542634903 342796996 94271880 322815646 116286530 771666102 222906825 390684132 640466893 951938585 361076639 570277787 605053199 37099144 69708525 329412782 505691370 738003250 491249194 701389100 22249853 482595928 788914386 200556600 980260031 542188677 577997652 442718386 31159973 413248427 425596453 471953416 250193157 93657917 649074871 565048769 561957748 552422402 207310206 949277708 66328012 454582555 725729742 750853448 183533749 4163649 421208720 946303468 28897142 203276849 560755201 842303353 343858533 823300488 361722358 526254077 525539836 682476113 666339681 835421708 607174452 745839819 564264235 447572373 119895989 311858134 211505960 903002188 283056491 68140782 952611021 143487558 802234265 485011710 638857503 680288594 54006651 259863905 932710527 195694775 692609967 356726383 518538296 984093065 612151203 189434649 721013009 376634816 863384591 370138201 263505557 63752330 148558809 990011401 257019645 981961699 853991153 928977121 224392840 634157009 307058966 682284251 715299467 998891150 551166735 887919244 562788246 568919695 642428234 993338478 248680112 353833203 499914179 519137142 584369189 839538450 79276067 880615070 226031886 439253049 705103310 926430900 131448346 228636533 452510647 123950375 247605392 709806832 716622645 827033398 738577287 224918474 362817433 242569344 861200885 829424478 616763914 892363725 111545648 370282968 900838509 447245309 673140492 588363253 682203749 118788067 829426157 315556931 869681881 175663725 933819493 467341450 546618352 265243464 728982138 421389594 660082661 422399659 322966588 41506546 509485914 871925803 557927557 942299155 362262902 751130406 207183587 519362284 669032884 389012222 992262698 75024090 976627735 816328834 271219343 512418795 119938271 925986575 300190250 176973046 55559630 16104050 801899682 422553835 225849137 907283506 420844941 106774796 719220086 221853019 260887015 914126546 836488429 456362258 325193104 772008455 870990885 883243884 151022823 321863950 60195380 187577865 12331181 338805702 670158482 175093956 524433519 781969343 131172983 294603290 869792166 70678592 115333060 350028449 908560275 755993516 573282147 216452790 375101156 769248264 255009724 177318431 337314160 319581128 299550468 91677489 150901237 433185532 467742756 387090724 174121724 734404463 943481879 312350682 332031297 372772583 409915828 969837455 347967163 332468943 811948014 262239281 225396740 619842877 254331126 638380695 51576594 100791683 951311250 258267769 585673135 713404028 3125092 507325687 624322608 143086871 987034911 201739617 512863409 193881569 693279554 560916409 240875413 810468776 508602339 271700762 477167730 144336546 17267485 393502610 725496797 651482700 464456473 878037286 596130589 832508409 851978921 840252951 325103116 309787253 146990477 173943860 89889447 349925763 103302478 151745662 237341402 72746081 838046816 595260560 966887453 322233733 496247533 380171509 607606944 311858502 257560142 321582843 746736233 20528823 691874236 928943256 902732084 725506069 826566162 408359803 708232076 807458146 936623331 679502804 320222070 127693458 446136483 355620585 996654500 493825291 809948623 582700411 73691426 794846034 782123708 91057064 782962369 211886170 382749248 806328621 991740584 417785073 893277685 743405882 423049794 793906641 253440046 461302249 316784404 178553456 7705646 666308212 130726440 882532859 571257906 188461980 440173024 51512312 845350702 121757369 449051438 79938913 124307490 191475854 537365018 29497476 682238847 218996340 342471755 4351923 632054213 315708182 817086535 680612802 607567501 605800157 246119066 706618862 481414776 451880409 677238013 533906372 90789073 768492722 781508253 410429975 789414459 724780280 824278149 792740808 388717850 427157718 124494018 962978291 54501281 309439934 789220869 147355589 805071192 599574059 789941532 87539176 749050287 592498048 404519466 826608841 555291117 979088382 970732057 86441500 48348106 541226059 927791551 948431598 963358293 721610815 870996775 24560458 26938990 179172281 365135593 814798035 797164299 922783295 392937494 668174040 532134436 73000903 350664959 40945868 2692979 125076087 861541675 436668183 93809350 178014189 956993478 840422254 530363848 164862610 547041985 140800313 728700214 507077617 339005328 207152676 843025949 215763614 252189966 775238330 944922342 238388973 964799638 951356210 258986895 588765550 922576732 630690572 168814614 899219955 387580176 344565140 618889740 270592685 536499090 274856740 421220139 681068827 24120645 233075007 497291250 389142616 574846627 364902512 785765583 864259944 317342153 94731904 931234809 578203306 305729381 853384821 501725496 568447924 538419658 393945783 213856481 120989223 445305407 897447239 9621106 166777293 561615080 280293177 995777760 118527542 314169293 891403559 899161879 942313006 590555582 413758291 772868763 543709711 780772555 615158922 337766295 756459216 176963539 405427233 428732119 256757546 237585219 61034860 451191607 81718836 502949414 12830320 872801220 340378070 482715956 722385959 778312251 375378057 232690565 810558360 939651626 49723473 116375380 297000835 580922164 22876706 217672586 651320418 467158704 892687504 513426753 454676399 510915813 866105517 677141459 7173077 273254147 282576241 32714078 8477506 564600331 15727869 649204813 508153002 282809774 51827766 596894289 357445139 697218611 782275521 193504404 142293657 25342608 678048636 11013557 886182082 267692419 87928505 630961599 988464304 632910796 978748659 720108316 29922996 191605415 416148346 34836447 151435542 72159202 934554095 657850706 993103328 678949226 305621690 186875099 620216604 448191059 739444207 479797912 46064852 260344361 105343318 467386451 396436481 131002406 104208845 537664484 885855029 925518275 539566487 536528402 660274081 374857649 364490085 787680949 738437565 14602671 617344147 485094096 334653131 13004935 881366423 548881782 184953811 326444896 965865326 291672157 126318494 674333741 63365027 769205594 102256430 490702147 249055421 160518491 375290633 479280215 718517602 797734580 975083499 573729381 406076545 669442721 624302524 396541872 108236524 670205572 433602646 908510452 833921307 840111398 652730610 818877643 365169529 536299966 851877474 16451357 331101245 200713669 42450798 183157558 387050706 946823452 655018539 176959767 210947936 758352877 832858716 846954128 651112798 27655063 964220571 902276877 119761376 646377985 43139983 313841901 887952262 568471958 392535539 547638039 863874695 856897458 476923563 136685104 510238614 576220499 473448765 723796236 896909442 863886479 840398737 996766082 33970124 967761212 392930901 274828263 531728935 470397125 106344287 38075673 1774235 132049541 324538734 302423670 828746489 688663088 78171848 706113202 394176173 651802548 985467996 442020825 857726104 722799986 319712547 869051314 698396144 458989658 274368162 654191840 243048002 427313093 669701572 244072702 43944555 270651329 293230525 668566114 340906364 620891928 196895179 868351802 880234283 494600891 883453793 260810988 289356509 476210617 513505510 958491926 811941717 362117928 154550936 266921419 513828631 469656196 339928215 903105710 846082422 395761142 299992519 846882348 795567269 230663976 839327088 948194373 891058743 819406469 854565483 104230394 981748218 65201599 306460456 816513737 638881427 661303116 600911172 569031821 323728043 584200137 240918549 254877781 776403380 529876156 915216227 846540940 86675253 997969069 847054713 249019612 390445699 993994295 410866932 73974485 748092920 685229370 945240075 698789142 548393542 555295593 178026278 133428340 491279744 139881085 204308358 872961337 192412971 324910866 427260093 580776712 744317669 154714088 199600683 273451397 982219863 949677233 295512983 730912697 655593971 69505835 417944166 30210601 172423000 73822415 659502152 44011221 504820093 239079672 568193499 438522383 978266213 438485967 287378878 297025204 30676314 599306307 347662346 290437069 609995057 323243676 404628997 484317334 58939173 464434601 162870928 740223872 955990171 592225940 951706425 257442181 542351666 714323862 55965459 135664075 737551661 910556825 333015761 467839732 400486269 86073511 489287938 386906240 221450232 567553672 620491487 203815112 48364682 158553694 695166020 447522696 572309081 876729881 551879549 418147552 69652188 143044815 369042770 181428236 964183302 160862745 326803554 556139772 723400148 408598881 125898666 876680704 503138802 404604763 570021997 765249 545585146 30942333 426494415 284812049 435678760 966227569 950341010 358114919 523195414 755175590 859890044 565017959 934370180 362000721 345656396 711854243 887613149 501018673 190536340 995109343 266787260 956222734 900594225 385802461 899097835 823814383 459079334 786284965 598832982 272160350 601873709 439714926 248679136 82622193 362337831 329184640 487066054 414156649 438087223 88371151 78643353 645017824 196577159 30971233 794030004 330584999 388089092 873656737 585014946 866836615 397819287 657039292 543688950 992038964 263238052 539599789 661234761 686617689 613723321 805564896 116023777 774774352 397621847 548475369 743399164 273816714 225666554 652819452 629354104 969233956 266977155 454793512 270997031 763279480 889566186 655877905 78552805 643062431 796352393 283557703 76463308 141301414 431345834 56822005 229878526 16073797 774512726 864290169 584296883 464788040 38432186 147229765 336509333 968565951 998288241 743804965 893143378 935112302 506895919 540169080 859965680 655185087 568363244 615504497 685177548 417248139 803255381 121529567 745773237 410153817 807834717 841284854 856369498 192966689 326984207 437723996 713448632 326107219 409088153 69452196 551658726 908402850 304165038 638758450 714761706 246557721 163401915 774841625 471700242 688581341 181477586 831437188 584101715 371639798 517616809 571303265 760924903 965530659 702263534 626480405 784383449 373585121 491100604 460220010 607717799 728013765 407560570 581550798 445191759 403237044 916654504 820111919 296113403 637013807 517357608 381077360 619655245 90482485 358638067 486343527 585922485 470062261 184606311 464457091 253298156 856090492 928693223 728248023 201716370 404251146 265090573 886490580 802782428 18082180 341242773 268860228 340403197 336070281 382501669 738751197 749102017 438742473 616459656 133779608 816785708 139865113 203404257 418994510 789544728 518832473 262318106 603995136 633832212 901267907 424103050 712035393 418249766 482731967 505944224 90236805 588413384 584842719 717941423 356096471 21965313 895753184 7367869 946391385 689897168 717145782 191981465 675055966 514592827 758015514 143952230 751559995 830404350 399754749 213066459 649840462 397025648 993166446 275042424 103704506 828575511 206251818 117499040 779667911 833487733 391966938 90794826 519846933 749760034 202593316 663100974 394781163 657122568 447020214 589936166 527197890 245590439 519500645 469119005 468637722 988849128 146853963 658503474 968414492 499405942 155596414 811477347 878955158 781571665 406459898 226309152 384346754 122402155 460468944 167406945 710457948 135297382 856372707 703645400 766697448 420969432 104047673 907912690 545675561 484487180 803969349 929115757 889361025 7622219 597347782 347432106 942331746 73973820 121767840 691931048 773110843 762982030 342204821 561285358 566943592 164641433 450363038 317651989 997557479 976622876 470717666 713679004 941513753 180060538 12894092 909953083 503140321 265095396 336862142 716924734 233831469 167570475 818553192 873642437 989481736 942177538 159320699 875153537 898188300 478873020 656901104 110154657 149973481 547440167 864210393 600186101 427724704 221309182 360903201 802009398 477074630 192565977 350372363 457222167 625622227 799438022 918152396 214102024 366669999 351248875 878526230 756591835 792994574 831463999 666122470 499657907 230538970 424811538 574465846 691758181 362582699 569274258 237200985 431430536 886626721 692237892 252501821 827112275 765687832 671043615 536134341 968941303 973643712 175377267 659535671 755901312 221810538 397522659 32485993 456685897 461791800 14255165 158238256 141571192 404271873 645606247 999186300 637055455 424774895 811401665 795669628 879666467 61570603 134950800 173421914 52538749 907344303 117569395 130069338 543556927 973816762 567786933 192887478 236710690 807525658 105500211 821626194 872272580 819260344 439984903 768876756 493980171 705991766 965651976 816576567 666058534 56408823 362284777 202510237 307767558 199716393 368069910 831520667 317039850 273149491 334769236 400940537 888302655 16718490 76705457 34974779 517283737 837569966 654656899 445017556 282798528 942820866 479041593 805570158 924225313 353967146 670147152 576334581 79959275 953939493 839069326 314119634 126011094 492910812 755451944 862195462 107632624 909703170 624866539 76616299 11056215 854962843 332366363 967945913 224839224 704814669 308614870 782162711 637829156 719734478 228443067 312679408 424207182 963400730 128671572 77341884 131720046 494910514 291866369 20008754 275963605 708062471 458144079 385499272 251806131 37484390 123697966 146414046 321138819 527990604 378090184 766789495 453536277 661490186 765419308 956509763 8102347 531124719 929691949 394904977 177138607 703315218 642836650 982673255 460869836 241280214 596917077 383284509 638581166 438081117 515245938 4044728 195048607 847649900 830642271 740113642 433282627 816595285 567256950 28640641 428801191 358749104 442442404 151908074 67593218 395601095 805233054 884455494 17924274 779820961 219342764 182290206 23290477 745076035 520042741 328961654 363580826 278328079 414763969 606605051 73616731 477876183 475230731 19628840 697214369 838465683 67539146 627130188 328112395 213651192 517700179 393149441 832472985 546192053 953519814 774083092 40918822 89204522 974905302 22880304 701287272 441748255 648295531 632480322 406585678 412317415 30900277 83449463 567503500 313158923 413761228 286259423 314007722 770679948 804975038 145701527 920140678 36305014 482248025 918566050 30090052 297540664 993228329 492604427 95415151 1429531 133166130 294104245 763887592 903699490 983076774 142769903 210019900 969560485 263157402 384352940 934288087 237918962 559664086 556413935 583630624 987409255 919489979 416035268 247361367 128809010 270554212 909152655 671283409 952747352 332379734 159885355 735034653 137526099 387247557 903834309 143495475 602550982 647170319 180116230 396140544 226708198 447012283 689158878 505173889 457557351 660957344 812778454 213745582 274688178 713294709 70281585 400201749 532129158 29092648 479258908 93010255 541146644 261089008 311730460 432500330 673594062 350609193 577382364 866764309 576872416 598873935 677132815 656403307 159031625 449917505 746475736 204350543 714846865 814767121 852899791 504345113 846143291 385495152 337144602 464352468 243943167 943077636 375959048 767721772 459513551 799487653 944920894 603357951 61742823 900853462 37410024 571885228 899841948 434152583 820143748 41239231 267280754 318777995 532165785 12435667 966462629 495434146 543498692 431306681 612170313 214241352 603315121 749477022 958240513 55363066 90777645 51034958 205286960 783411338 884017864 244700934 774193706 324777356 721590638 149728213 857129175 717967749 524200899 589008100 796410476 75216353 354162995 653779575 152450620 15417325 780486690 108106519 497625421 887532760 827889941 700693511 329962566 669769453 552132665 414207525 839590218 831008811 616354413 869402597 657675074 475458834 392361768 268446059 358934420 421981004 840248058 54070167 848442154 419837499 355425308 200749416 582736710 845959357 994069220 238161671 416829120 29685882 369861984 968600799 391242602 442049566 812894784 774002679 264979802 270136184 164947738 261736608 632795806 508268286 671121033 443617193 496966448 242846731 164386988 345984364 775418275 239130584 540371400 781876333 311697226 770430455 927238576 857803737 70290754 638533034 571667459 171457502 341970100 869963625 958969714 927432366 343775236 558628978 370098377 281819613 755161767 854468011 751590790 268089280 403045081 229377109 282511335 405934293 869843777 936581219 198301602 387217433 113048303 993172360 139534320 463573083 274753753 127802329 230623938 938174350 938124203 783782808 100050734 504334673 767970969 811290373 863338545 905269591 995669090 315221218 43154035 553202040 879081628 873176528 653775264 904692235 406993362 623939705 506305500 727857937 52177741 78339404 678415335 917268222 567941941 839288591 175560912 859266940 839514943 255484055 37313892 921015247 504616238 117100449 865478200 580021869 885956920 63832011 116792470 209800084 164968496 746113228 496756740 263933066 7644450 165999397 93639710 930037254 887830184 883960300 449538258 386088219 631805189 723931957 797800718 63878982 400306338 648579211 76119900 298393421 606568088 93081631 751458588 784048350 520673141 711694693 744754503 193885315 240374925 691105448 426655662 538998406 575825123 561845849 177820118 787734251 248729197 870635834 844696710 823763205 521806452 221668550 326548672 24226586 100494508 595123953 252482975 65556821 198244538 86294515 921530637 386989277 796590807 839997588 821575566 301124701 114530921 77798990 200590004 789668517 562717167 247065736 396703036 874591789 917745891 470306607 831961411 677732755 495529742 240822052 17933414 274024227 351416387 895132288 155604201 932799420 769387703 560143246 523196792 381666086 135454522 8466276 974845202 157568984 343540232 819671119 703852593 759876745 203919859 94360432 786149524 421699241 590599304 207666053 876160652 439974568 616491807 649476455 580498852 945351383 213833183 261948986 771048636 375088666 984579042 195243131 505559247 11608676 402829958 297046946 495355020 553309557 780499262 329715275 476003283 782745440 105367353 289270459 657490805 217150128 997496672 726025312 427721532 269506524 796303983 439332036 69850690 227376180 628229930 106760267 244331450 559972296 186869043 89655150 153601013 932719336 933884410 691703673 40035575 724540560 382106568 546292742 33288902 254662801 227376291 442748967 803756531 113887024 536411095 474029970 259460414 591635545 560541056 618482056 748190496 101317406 970634775 58858817 433283346 819927823 709479234 631999285 939377375 509971140 32648959 384469666 930616912 453951860 952928125 408937071 738772878 10029604 673972478 166647245 774316964 548725836 611656085 384738732 308020606 150068684 636988412 228433500 882091 296262192 249300543 576987771 344728646 638125200 560910557 259024901 537248072 909698987 881467022 986569541 660031049 105469524 29105735 253513533 711174503 18338937 442261808 679781959 736925658 29544497 895047798 613682961 465063943 416054126 674017819 749253646 205582388 514744061 805419660 407721986 954599085 378135092 464658332 309568091 485096230 624171031 983230575 476120490 9728915 919037847 182486468 503184257 844840372 752856646 394096958 101827219 463766965 91998010 551671706 26154760 593330487 157142984 958686723 52559600 648268044 797561031 344428383 330551831 773514613 96710977 544876566 931093850 372959016 50450818 844375452 167454761 485907233 871772943 36498166 493907699 261430997 872666552 844906673 957451354 230677125 430570005 217123012 194534387 718790153 956593338 248751956 580974750 459664332 980912687 80013831 640600839 608610032 1352039 564326739 322829549 663659954 632891604 817175986 105820005 468749374 499052831 345127535 914266262 421595195 863537611 854702102 675363315 571596847 520994542 236746213 266421964 53407921 402712000 977335103 439308997 715998170 104786213 742168275 615887352 921952152 249693367 50038951 583689172 7060525 349725148 789354645 239607313 358090817 311798600 314505433 916099499 920504003 484924242 244404439 927465463 742683768 193354296 668304654 263764796 885205404 568552581 113379013 944940579 264163712 139540352 799274581 692479932 834918065 93021236 258804942 445869284 360172280 736558265 446269010 430449857 192439290 157613626 34443396 313317258 983108673 397050096 419169870 138702359 745911541 457104159 358875760 264079511 316504756 238964368 745953369 698690003 644596984 707827131 393012572 279608679 242178834 96055149 927192526 615829984 892064402 724296943 718175427 827107611 143987154 822646704 657504479 200987596 502719271 946289039 609792297 943840999 889054317 537921767 588135984 680609254 448753696 456652597 564056419 858525165 960702514 205863930 892640799 739798207 436283680 398340782 951249640 433506510 246637059 74606802 797464364 695922416 706027484 145797869 638483015 503289080 575752151 12466724 193637435 695467516 618741542 984597924 741694446 268450257 47136328 849986512 547241346 563624334 644008864 261581570 929012759 603676111 99868666 8184258 250129178 503941909 80840017 765970087 882186555 936744583 917266609 736993752 508828937 298051808 375762991 480315394 561484933 984925650 36248850 173437624 301082463 58328980 594178171 149603742 192676469 283243801 33131288 16573453 631837343 885027047 55925325 112876199 456768681 526368473 901389024 331856605 273322788 846679961 552334099 848846895 868843824 994966725 211241527 716247111 985117589 655767274 25849461 428176627 609937164 444470646 346829299 249446130 70141141 176519195 162313963 101131906 288681411 900689422 305405752 753217071 515585811 835669802 578518007 582167531 783176759 635936868 742728521 860079636 87694503 58322453 37983506 708437018 459298944 384223659 769072434 299575734 495311773 308949523 741116586 970830907 716380809 516526219 152242478 212847438 777488672 64414958 546977761 528201771 213837591 224466967 866926499 941796981 137070507 995472817 880349620 719395053 52415698 291467092 989205768 563640960 599856396 773938350 542394454 512933103 831153858 58424269 105235697 498579805 814986685 61154959 412354444 819601721 602309527 706074990 526783710 534289657 707154900 937178984 294118998 536815059 36022866 100283654 223275103 232030385 877669065 362035028 455125497 305370167 16212400 832651045 240325369 110229371 311656241 321844494 707801086 132615766 185411832 283682053 266736256 973371315 928111098 721890985 56417754 498402648 341887200 450279338 695375239 234088088 955358753 329462847 333972266 477877481 822573393 702234926 463685807 170462442 554783952 206488378 33487007 40417252 904075603 304104945 832419210 162214345 164053986 800182041 708425068 702294126 732114621 513708186 277576664 928171324 205045476 256701866 328100711 305422256 469197669 102993160 538113585 681791600 938754302 865731207 793164108 132139157 769392252 517459115 867628732 264850402 591744937 646702546 312119009 623460885 953677735 843259933 272309738 44843491 421260262 640476309 681396946 379627911 481009180 95693292 707316330 877745074 575352060 795795456 139145458 474437035 898999636 948237687 987908777 546242285 646156269 84410078 235037803 173365578 83997108 354745817 474547814 408202900 261379787 704218755 949765076 304896639 749879399 333261786 163326492 621076155 545768648 969101176 121717154 40033207 281720429 587045043 446197330 428580907 317157709 446341332 401611320 617733310 128878394 818387226 442525010 303411009 755299744 247262058 972728672 115328905 992047833 702630446 87137603 558923568 236896979 958892247 943245470 35025426 551971368 502688600 33616505 805603705 791651047 634328490 764613469 767470254 440679998 56068854 436262354 98523907 248875526 422185863 761581462 663458243 881900698 522892797 57747139 971523127 20734687 470373891 928802461 828050113 305236514 431267272 483436396 398798691 896834300 151608797 765122929 484320950 928999585 692897948 729356301 382203639 721599552 39897467 11940094 862183382 628397623 278735323 36374743 698760190 163374716 874839791 823587906 786670044 669055871 999353416 760221734 943235141 716836311 104389394 211545604 869948993 950440275 749254668 686363056 882551838 91617551 617989782 869274750 777412975 397289308 801016529 511862865 693127410 244728386 639114466 775819698 390805550 351970639 776665249 66144495 842419216 182116044 671134884 2794009 194659732 473157352 27771761 970268056 24916164 930552103 147557582 505754262 665394509 890954029 535432998 732419673 788377154 471408022 34977040 80734561 590039493 622336819 642675726 311012838 817204084 579145964 373783904 925522045 286980003 532773375 628987653 574264784 918840276 46648442 172433372 389257337 720257651 318073919 784865366 304503083 405542096 725130611 631557286 177347685 393827001 968553666 334393420 765838416 889542171 835126089 454306 800503708 684187511 943986051 747236520 908472014 25835076 57667339 122708038 220829099 339655319 407039001 929048481 951192273 459506342 102205397 707793767 550086366 665539997 286312035 255519607 373688045 157892498 33045393 828800420 59278573 244159545 913268601 251367313 337922942 926570822 560644467 999488700 274297648 370464817 150770449 88168737 615824292 698372236 874615558 891764582 665271748 601102888 887655854 420517163 261347343 215275624 386517885 920306874 887827654 991128757 175889277 660383827 638014033 852616887 112597093 27672804 789328644 511361453 847557211 527380512 883115902 911699228 194309635 776151494 853624420 379839664 739152666 678248916 617267738 842905959 181305781 543576118 278174469 323061740 382834188 216741693 561472476 802611497 183535309 269636878 491637878 248256753 348522140 348058665 903674685 423130237 723297224 669986035 605975382 827726531 362060440 307436600 456008003 736044885 868992725 975901803 21223048 777461647 404282148 115966074 861788665 288257173 865283108 411357145 299588162 603728078 154011207 559362039 347014876 22724742 470540011 42038852 713199310 441682580 27404109 249807748 564241720 427850461 678214890 990812945 920203436 590877930 842923362 940678292 332173784 886424725 474757711 193567504 378818457 816749523 748866599 929964359 640482577 512359662 912715283 176024651 300642003 894935271 765806429 992894846 863208846 653083475 658784795 657758261 369789221 69977343 445590872 49575228 884982826 356924489 350991135 718150444 403337986 704180610 476204253 802298872 889090411 153562187 283696110 764774652 847336118 223444245 224978047 492377611 914471088 945541018 678087095 492916360 385663501 713273901 356360894 239525268 899424668 529290566 759975805 985079474 53884226 849711321 974148321 567548956 289263243 765487036 624466732 271807003 94075173 968975315 487987325 681272435 370996975 824197492 54505400 763778667 949451386 629541757 244572847 815293535 829144610 304187806 655085680 788697223 596191319 246195614 167078868 983738859 51034841 792182475 151031370 621529482 453437315 409498713 838722341 642714581 173940543 373622433 52046383 612138306 689860097 744848225 824188482 162025352 874780607 774326357 99491003 312210031 243470152 75769705 937460040 147204428 425648854 461540640 872253860 78003399 586823765 65333111 660483241 153357964 896735662 198991278 414539750 33057511 631565858 771820919 163964985 72038624 544167685 175234625 586756277 378182364 419680717 482359985 385342144 414187908 126739498 485360847 153686613 507505839 665452095 878189253 613600798 474890474 668544543 834018634 233743714 832339991 419143758 720588907 720674627 797048806 227243691 88731032 40803127 22052741 609980054 862459182 535703737 341913678 607648617 496822440 286497258 938500949 333287872 669585581 479944269 570834145 828292335 842354699 529699445 66760503 89757482 191348935 208657775 798144395 157165163 383434615 839978489 564879420 572246755 892736898 376443973 103541787 678510919 658704985 435153569 307257370 967192740 946873336 718510962 627012368 439989003 306900655 491258621 73436994 834444708 392267206 416111098 567055191 839827359 978454895 869856278 488452219 96965797 380675259 426608836 272901648 396527002 7226829 929294577 280896307 71901220 353286999 252673809 179314103 59163971 221885396 515404847 553494270 729622750 577347253 59801411 311824906 447727959 52962340 166355609 827272384 973495030 127999534 330915145 570965482 69480401 392672184 344274320 629452254 633291102 426977252 177149087 127596177 145661135 532179107 883606957 570640783 365787828 139015087 535998175 51309054 606308297 708606193 624229255 359676111 119036559 955348625 582063581 365859335 401247136 298536906 583072543 963640837 772343956 610437273 915074789 599247195 12854751 910454362 982456603 756403370 422104712 77735156 523571180 299518380 166553153 306954251 525597067 335387070 467600368 490880238 791387047 289786866 769499093 305785593 695190985 532474022 310086792 489997342 504459860 479178833 509342451 194441305 131457029 11384461 864304726 951852046 813102754 869342499 490657812 256625401 601994571 67313231 86079477 43432816 589358331 799752118 298065885 847119630 784661882 978029390 205364301 153893835 589052262 6635611 171887324 670386628 335084901 248225637 275418784 161989077 36975637 420922230 924189259 591136372 292064385 868080719 646005148 323680498 715163765 899662877 706045318 786523940 187944422 724949251 744172783 873591034 830732141 844349053 43472037 999212912 634037506 57877749 180884051 353902051 894970592 467642896 422461495 228391747 450595528 356354821 947611190 26354949 306737249 521772911 414535917 336120325 334182511 945259973 979481925 159301388 158782771 15896106 788984120 641205137 430347831 592744435 475607139 232714654 393822521 159207084 506037917 644903618 681910238 253912157 219283055 976082688 666427717 723418099 400898150 338034818 668993660 784193639 29603057 511725102 372918167 309107835 428254800 657519224 864732620 32676187 22065006 804698174 484143117 688143413 118109018 765562769 497805497 336465725 51064414 653950243 396010236 782252866 868246913 663946458 690172627 515091740 493365033 240182366 766422331 880245596 829736850 199426090 197626799 649865323 899010915 152438317 995244086 49448299 222030978 890300127 208185222 880064000 816319345 672734189 477535430 727175113 488974750 853100761 875164048 227960429 870529402 615545102 421564480 520751774 319436840 561563330 902240399 435768546 311547031 677052630 150142604 961081354 521675283 24387279 867151435 940926466 277649943 860009279 242071640 697625484 766865148 744678118 384433504 483554437 84529926 450218081 702170102 13615481 308880225 268859819 245233197 366813478 892528081 870444078 527155152 462037405 331433809 595241800 202622074 994944348 337843728 21658000 230788786 35525065 78208481 758681842 648832660 327678171 880844089 201220686 180057625 461979030 141751788 155212968 216124295 769554708 655891783 897424859 494556342 406526519 234719508 201840542 825823214 465336678 990353646 221804500 148519124 82610079 346092104 810330607 283513709 756534408 688472937 923183174 73698099 802718440 473993025 355353218 105257502 471088258 241857955 695738939 850249935 170084218 82881730 850523922 624120241 861968341 866280826 218759017 382280453 905954202 538675825 969199033 890817155 380352996 477945484 192301585 326323125 116007488 842354573 994456471 412392877 219842591 80878184 369088275 230584985 69936375 145325932 81957702 773896586 700679250 215446299 122085515 442711816 743765130 501926171 662563898 44204252 225259154 192057151 804908660 352818338 820210365 328178501 593545606 421763967 754929867 466442593 773528784 543499687 314363305 811759383 820942564 952283247 464355043 969889247 848048780 486607294 402455169 615679065 558261184 822823968 487376767 446938070 718362407 532734257 577824106 831538628 513762983 995764278 694273788 937742358 585207050 648284913 354460847 82512852 147686176 660020599 557973303 689984788 631841423 57395219 457278749 721234620 260726192 164945865 839135929 207175350 988787589 394224625 137693800 727653533 930517199 802704527 974626015 190376459 426422113 957243410 904842183 819337257 838346060 593758441 88284639 80401201 603877043 634852005 315559677 858735468 825222403 313651358 434481562 33145734 297859261 672916950 298767311 798577250 720129291 910353095 614474381 10692808 777402938 170305735 3258771 73566488 186290369 280507357 903474916 390714625 987838167 741331277 565979036 895844444 679289310 112921309 498910802 382628473 648751088 903977003 755939178 269287936 248242427 174763036 592041245 670854674 549375194 533135646 3704720 470036577 612011892 930271572 959239100 856362414 958239307 558566424 546270179 10182149 714285859 202638386 71919847 671250350 673719681 434116883 99375813 862665795 773867183 341825068 542653080 921876503 276087458 509936026 766164335 432329712 398869755 479116270 536763654 170647011 853446732 448829230 150196752 211557905 706800460 821839944 606747065 995201694 187456145 281907049 146614934 297721665 899800943 437481939 569475262 148815351 447033635 266073526 607193877 87144577 30171813 294219111 567425119 414397450 387284316 4088036 882772235 395252420 491086298 391812885 987202861 223257365 315465 222687633 632123027 838002962 77481780 126099626 7179268 708740803 181144671 346923871 395565412 552218396 218278260 999490418 818534226 754801016 398796848 752211286 784688373 603913611 753848869 408709480 968832667 326042831 834828414 788449461 66045048 186427038 543221355 34062416 80210977 34360135 434202692 889386052 857513616 3164472 56270397 645086036 605429318 381336183 588261797 434904433 47959957 80307063 658229287 722593881 708253657 599403010 64946931 352762993 775366066 971639585 687757763 730845908 565245866 596357018 721810229 158520699 977095841 719026410 23367106 245531219 903116068 231410370 880368116 839387964 773167638 753292566 380510924 182270641 152768040 900938276 68377921 618433603 295776140 922644177 426418483 241446733 707874628 492306719 134835515 945578070 996734554 325978251 64899666 298104506 435128583 993697197 815560967 733797488 348539007 578320124 395370059 254089669 951910598 451570612 33506634 696743778 871372502 882319293 560150609 400320169 142398222 803967159 115208168 214427779 782280409 589639428 518722694 442093065 959088855 227216476 951289632 229195485 850795839 531889266 732546452 521794098 176098151 718147059 91939398 407272086 425809910 67377282 418478405 772777726 23105683 420761210 424120270 459855584 622631396 165324963 510865319 307424040 383999743 229456226 816757677 1403450 502927744 403540406 729140824 541813557 530280060 38766655 827378876 587523659 729362474 315092591 449234109 466913419 850893565 255127192 552463989 789094449 415143485 116817852 793888469 231931899 886275579 651862206 808319626 165790592 654067488 15179189 724570259 985502234 502385201 827333086 167741542 193393141 929160908 316106986 353438929 782278511 565232198 752093761 26690847 547081859 388240798 741430464 629114252 981132147 400488341 760464852 934362531 227476312 366460542 758514477 637303943 850476039 817626158 880762839 334864054 357316658 245079213 752955830 523912719 677077937 948712260 804657872 868060580 867296292 263332419 706121438 432614678 670410323 615200997 578492115 473453976 883346458 224032703 31716595 977329235 922409870 854147618 517671430 512861986 184524098 364392359 598700877 174956066 829594010 664640703 513482580 791923546 625213318 440092228 808720751 235947036 226554026 790894095 30544496 50632302 507261687 472687745 330316372 715003110 587952303 391020954 465348956 247279337 156279136 952235129 17564929 545316736 478503591 662008137 295074229 438462767 371350882 155712005 876890658 527543042 873857786 546071196 380957565 330209607 201274185 993442805 511231707 267655687 633307733 940679637 86056380 196816991 610506325 639116630 308904057 586011977 648147236 855802367 103466580 68896870 925757804 25652153 417506275 833165383 672559754 377360686 115504153 510792260 396338624 930479268 637616153 85100364 132802254 134132831 110236193 591221086 562712431 810127305 151906530 802433720 885766644 735779399 579793021 2848270 816910622 937598771 925984623 811901540 337720278 679255881 760577309 221021260 669705582 344702576 878542167 42247325 906980345 700390152 118362463 452027107 910075531 423438065 742180665 932041229 477299827 840888928 320855904 386545088 7512961 198486650 739473807 659433659 437256745 238540102 731497373 733014630 64380902 139387094 652231587 927813714 472520093 406418192 359408915 556074806 252720953 185614054 998564136 687076967 789417625 479173491 711856416 398801050 103111078 289540509 246172658 621682934 872630601 428110672 5320950 11448172 669720160 142925303 307698475 961324001 749974915 982678621 932360145 366171125 482167862 770176279 448391272 460530514 77118793 434758332 828916939 571131991 701407890 660467993 335432279 718683357 206685178 377999424 848524045 979893572 76866328 888625249 797750156 452805379 914776279 564788067 154803678 511218351 319762181 616774031 531694190 518528282 927322234 708464331 539965543 78182719 416485792 920342755 31816658 651554257 520755917 721749773 895137218 929659597 551937351 696977506 374055220 419444448 163678794 905229498 917810653 945949398 230307521 541967620 161379453 252358790 756129746 609439321 285816436 41515479 97519974 898315236 657729686 870707088 497429819 294902326 795471152 237565252 467763930 263847135 528561147 776621934 938301597 436611365 665040786 688575911 362200952 617144387 579667307 159459277 844270618 646239493 748942470 326828683 78786348 572899998 310363196 705376020 577675479 24948064 715814942 716064747 765198946 662777586 779843692 525215149 208086961 890441836 463917449 576841085 667460247 485657898 733963475 432450107 616030133 337761633 613397800 631699324 740761156 384397352 555145999 301149412 657397508 242690056 364370494 223647615 844908404 272123022 105277590 741273220 803755316 45817602 674400729 114856673 680481184 122384348 782843512 534625848 586776200 156264585 63419080 249449695 422260363 451504428 83354768 815147881 297711164 694510005 753569797 282815572 691869985 265298346 555865218 27945916 684042564 960985014 884650159 730497959 372750082 226556643 914015478 332069106 798583735 150308480 665252141 693729688 507534845 593803497 543804296 861774140 915835778 693304313 892851442 752046069 357074850 53676102 792308647 599174152 821204826 563294997 504063005 710404315 449864674 272998786 949459231 676673491 258015410 831161897 614357990 328270651 277699954 155782703 103693876 867531987 466973640 195857123 780556136 916109409 658289645 642357092 953924052 772496708 489335988 844373205 646956515 342616089 799520642 681984851 562604038 324872424 391278333 409951026 627827713 640021657 967290853 248805912 216878902 730582633 48142709 135694192 181582958 383586875 53219286 44333091 291094987 705264907 801390589 933679306 768788824 340346232 347924637 426265898 61328074 464316600 16421061 55781064 442349959 939177587 312223325 748977655 34564441 343906823 245035522 220269073 459473516 425904685 871492061 349611905 877122254 865652979 902614223 741229964 237940910 486002982 816905858 584000816 413004856 760399982 402569200 682508612 353483687 567281899 232936480 376490949 206975909 682947458 316638253 749793110 257754404 754492236 708565525 126504296 794349330 592242371 607973038 146452770 475830553 5637368 766542308 956701445 934247573 110365004 589746174 773530345 171541773 780255001 51292355 491661390 218248137 206654306 306818660 200260154 647274377 70289897 773244746 487336932 164541556 519224682 684732984 332901107 434671386 501714976 236333231 978018853 936171115 841560389 240469694 587061264 115573597 224052448 690166374 497634945 715101785 16893158 549768140 797467353 674488882 587830945 220289724 944755830 367080187 259036889 65279868 965663092 505484637 585651338 421355551 704854353 819773497 953417508 452784928 636084628 740829309 707707148 898649514 40208142 420871034 162409952 416117983 459220713 384524587 696167156 893646434 460425215 243085730 206757938 421836949 148610357 348969938 275093312 381817487 203642622 667287672 871434517 629372833 488115043 591591632 722897407 982678614 928870188 42391351 551886070 11422008 919566209 947546356 844144822 891554463 340781754 155545294 142853071 449611024 44140823 789496732 662944880 582473060 720470144 421116964 978502650 116143682 133618858 175874691 10586409 894023891 968895719 564835825 440508665 317967268 209458959 996033731 491201620 244401757 877604866 562418310 474207746 135005288 151285712 898047959 175186391 682418498 189173130 873389182 501989840 977575423 339239248 663892147 699910283 25426933 295212509 507391383 489807621 691113032 624585741 492517002 540957355 609198454 797558518 672982400 169587783 243093092 159973392 695709601 862160697 410745845 263406347 771883747 560994423 544405601 710512936 664546556 272310521 3873568 538153884 985819186 555590004 333462708 582060913 257318484 441428205 287872978 841564233 507913922 645668016 743653978 888306291 319337506 110552331 340321152 592906814 520985672 900844960 619918462 985400999 629154181 545726623 838070630 819189507 895681 412590054 113156383 503809697 72424602 35648778 767080238 428810830 364863154 546147571 466200303 326510554 268047400 39248883 198391739 76446367 513854737 262630717 542612242 159477003 251177362 354462725 844191522 552374276 415414237 941978447 988686032 318029898 408479084 615410799 226890262 350870837 58243519 916380641 842112534 204672889 748653582 55404138 580005429 231360116 285210907 33106261 99863789 548548444 403347387 519331492 962920088 838114981 343922153 653227928 12496364 905929749 489244119 10154345 974078517 23846358 486130400 354369192 830970514 967961673 86484753 96059457 308529644 533160998 710154081 549319075 356748342 962195178 818642345 820022456 129540565 132465103 727084756 796270008 607666120 372807005 361955879 241486767 2929216 942227599 62745166 309378798 672352467 581489299 254789245 506089532 491013598 642047509 198389566 232299920 257168851 635160586 764465706 840797217 478409058 604404820 163712718 10284077 275111107 7412225 681648330 197781261 745777512 415237887 329500234 219259574 190109500 910957524 663917603 190954633 581169844 933627043 550601098 565367840 924017246 309281491 529536432 514964955 929153559 366636262 648162660 241361210 706323842 876962081 265178534 727352412 771523989 762402776 768103255 554588430 231905842 467480943 872002505 135153463 193244285 956491241 618042965 329342974 146978233 763597293 625910229 336219713 280355819 828559144 217173895 88710305 534098346 763850633 731769834 113327199 178528161 344482773 970219477 242344549 956030849 289661941 874841200 901112166 862256977 593466173 532504885 78791424 334238955 521210518 496803862 71790713 461507181 207547855 311464458 322466324 742221702 140362149 355793236 982462254 357766196 474068234 576360714 46149081 845157339 188994192 603105886 604282486 693388521 965379139 135630093 851460185 62386954 131974813 89221513 643331022 611952279 745966334 911783833 172378850 351784459 344314980 910405990 739899894 156863674 879538955 472917744 111050567 745968111 56906891 125035300 622288960 568720125 496166861 906948403 2618971 223523892 501953271 168613151 553365634 654216405 982197394 484624201 229477632 420555534 159990585 577575354 495030349 171901505 257937891 243405802 256235540 559092283 729201183 586088134 262312842 522280097 569607001 423518703 840443997 889673556 346326902 703610017 391875785 899085527 558792785 595963089 81393772 951805418 734795294 897271839 857794602 723605525 652796755 636266458 772602529 363683623 823904647 583233917 452832145 301701245 91297443 132300913 953865599 668908762 615270358 287091778 367998167 988252966 867458192 978391070 931694804 855893950 325782698 832294326 270321560 651911779 133933861 457475089 873438678 392424783 805848294 748742726 768274550 989455135 600768782 390644265 443065559 951342179 442760700 293210274 422726878 18508950 605902312 559543317 955020334 179558540 285655022 631462682 840575652 524628950 115129440 347281671 988625779 41444893 340556201 430282603 34545992 186270710 162629943 240008456 198156930 565253131 597636956 467107536 758084084 801983767 850068606 349199356 874052040 490013369 241595634 551937212 993501113 267060757 767061567 609290692 225260758 771930570 72525183 321183931 430454275 440481207 57881156 453737984 277443691 626957887 297956032 670079710 28544336 100405546 432569110 377311998 559409406 494739045 364365356 82849326 129785375 621031052 441961321 243970283 663237492 352420889 304103698 237637043 625981736 247388575 159338782 235333206 337552520 272385174 67848754 544626132 949993913 83666193 141780488 998855327 501016657 408660734 233092455 120967806 239931532 134918711 849084730 908810209 807861400 333273589 754747637 713453583 685404427 35169076 992744923 608973733 805778367 352959520 313350345 268495696 628871750 40407975 873346639 113786159 264326484 649489343 880758047 989508019 776892480 435802628 577369819 593868962 959279904 850146778 228549612 878265310 526412219 696377401 153938798 253710361 31108526 212217470 822470153 161426433 474538107 232521512 870455969 725110323 422481267 231573354 768297365 368271132 275983949 494518363 898178998 418823517 819454275 753081633 941403105 689293185 979215122 34187610 660358893 828427912 275922702 886483557 781997528 925837076 494270961 884356630 164311850 547403070 809018301 524041883 51764829 126619820 308028289 752715397 378784019 1958111 135599186 293171350 140046096 66648060 599755878 569115429 91268261 468552095 840180177 67456066 474674917 322962721 122385844 425413622 638033067 260520503 987508971 462455960 48098548 113342773 360070238 940419098 61496499 673776546 477815864 190333298 809655398 514680590 685724250 853233622 655152280 877847749 835135403 518716875 837792877 291132104 538715285 844172452 730779191 737499888 728360586 715616763 781189441 251324976 188171113 344350248 798054007 40518970 455064936 65676244 926289931 265967031 142222930 317089720 757219800 194309305 699074332 246442948 240163824 517556255 90593415 620065690 119210351 792775563 16037653 690816664 367544159 404029865 852100363 221621561 783867650 68901976 43588129 72104568 489655802 305517973 295257208 684771807 266151415 503268428 915500577 866111107 886556193 40116606 146923334 311054469 19758426 371476394 767978788 793707614 998952681 953251316 833937647 49956211 471817396 574834248 545187598 480447631 606910652 690274526 993232574 85206982 680097647 449224008 340984666 650691546 568747143 952977395 507334687 515901276 236746494 926843007 118194005 983698831 521378184 990145521 929288425 781837211 583629727 827654338 286206888 346244600 571320812 317364828 155288044 182085577 290905125 810635612 283722821 355144604 933870899 698605460 334128511 59294681 679930204 417694789 228202884 164277469 795891010 861098182 683502079 977721137 979067492 33450049 776590945 115970711 719845993 772303008 363696682 789507131 115796862 439333398 118316168 401715475 309286848 513844067 851533285 964681696 420585078 532360666 968643668 762627573 112504486 928846725 583447316 665594558 97118755 368094944 91248299 240168595 622097581 499133094 36823716 306607998 494075862 426471286 272161643 692294504 441096233 487741872 604600349 863397050 52381286 40860031 759046662 534066773 865641420 522400906 400483208 603483923 785886148 657497424 182542258 111205628 44244536 327808750 420639620 407737795 834707165 95411923 128199311 718849846 194250708 151646592 962081932 690070648 55037529 379060148 955868906 709481174 888341438 677671701 436204374 302166684 305973938 962861373 292258844 312424764 314846215 488685153 959371245 999200295 437149106 288866019 728659128 593948062 194154521 413489079 890062841 247452062 912313737 100003245 177645743 112368109 136242647 85419906 734554983 542127355 447917077 209384987 309829663 920033939 480107921 572297731 571333984 982007377 532485946 369142232 754563909 705944010 841877915 345473493 161610920 471745667 687839606 363268287 939968697 762893889 387771343 234431884 348560702 2581771 376997901 915621447 868708314 903463919 5649267 412930348 726378212 160849189 995208092 626440133 120816178 86176611 468467681 370796737 585944220 677863295 733543402 815256876 833273746 244341000 44614309 467274336 580385767 992654298 511290220 195922007 730422519 59153636 582546091 218650535 23756581 504184176 133433597 557782998 349113606 393914685 458720644 33398868 321152269 744861233 659315020 355898096 446956650 288450645 914288885 687225030 692042548 480299567 96974857 570310906 638514930 442215386 694662408 14814313 547132817 971212949 33099534 370885385 71912422 450096078 401531780 151762788 327920949 699910854 462518045 447244154 260631789 50196056 829073002 919466137 668739618 728268051 951873951 346544022 938503083 970844179 625069579 336436773 350690519 535830115 271733600 385264823 356869189 555142982 127232372 910022842 790849692 830626943 699375320 31888156 727982796 274852732 583421733 268389062 974819082 317608187 441906775 649812725 675041039 965259425 815625010 731021820 960247483 687966842 518373964 576492242 766319003 455918554 519518805 133589768 592606230 284171238 889492189 444739115 199872197 433080229 332269673 470576461 942297988 272380353 394033629 347469372 591137191 143048818 953127096 526279991 440896479 127775025 648214746 491843142 509443554 625474468 981614365 748580009 519364318 451154514 417563856 225396212 231407357 604211055 957320299 756875197 394354106 249571003 894659362 394767187 146228076 380064199 964627736 744171652 638814977 847562711 336387743 617891789 57895795 647583253 836621598 397820973 187750089 880462340 275182081 5529037 382356768 39301791 379274383 839800079 342917690 640137612 83603265 865822845 943392873 297343883 899420020 733923712 212309794 55674478 146436616 137033629 668500822 733223722 12074109 203144396 827283806 860380901 89714173 113069263 609908502 731688376 488428972 526240879 721183706 411898614 784383243 151474720 552136186 779067417 731664852 85194455 389295560 429956305 305152362 276925432 50310380 480858892 99742654 204705848 623802489 484114042 542528411 821086437 622732859 679332253 793294165 422452147 261371877 305586630 312060167 783762949 108566885 796550053 896745235 427710921 793147244 202930486 109844231 745025744 601848198 203409831 479804447 480961183 265495774 493332790 311841867 609864729 912884298 913723765 236138770 824367363 743777605 667809932 478743751 759507829 115066087 201173783 570768670 438017408 225470710 679994358 848827652 900008356 305280253 409607493 603836970 414415806 789109731 338516762 849269809 868923742 508139546 234565454 543611544 336501989 606981307 561867215 122726974 876236321 261849166 87068696 376276207 285065696 352809686 576898530 991290735 353413363 836393022 336191272 674886245 507788115 715645002 633446238 120640938 304408659 755129918 631411685 138241497 124402131 240607264 108104418 160939599 245659058 856327239 356201224 186606280 759096534 562122368 927052465 592416531 454191761 92790606 654312890 865729965 74389157 369359099 339972392 670368349 318058850 453842887 300972864 801753331 824105933 38085701 75787687 971621736 980151658 559245032 797496231 640734110 595500112 9742613 905122132 456620023 835764458 499823102 811781854 605125260 156952737 28064291 153256385 656104846 778015521 983484389 602645215 412121577 481163299 276142563 154749012 597440972 77144199 291915058 446830520 102178232 291467680 106045222 79659643 82318008 836037834 520738730 525141959 160914714 286895326 572486429 948921258 372940281 179369970 616698179 700933522 811744829 777425085 439714602 916330261 888007773 416498764 225919 473144354 217625930 939056049 114292379 813608390 853393430 790081405 104941595 968736074 723753017 741933768 241476791 5356439 742606010 431626655 38586970 351907597 999012079 18154783 952213357 99845280 374826503 258740246 914996457 185695089 672548892 4945379 60710409 814146190 467114207 59526812 962653533 75646702 846248459 514942544 661313988 964818527 668206901 677019457 295688918 630328267 562933324 993188667 706859984 259652840 126654163 740538096 654298654 136271285 690209217 573428003 870584904 275928028 394223666 281989857 745513144 490898866 510843835 120750183 235103731 484939625 461912054 858179624 688356858 40361096 410452022 444950088 443309163 72474076 610475149 334690334 664549042 583249065 766789903 752180852 244380775 575694472 596169387 161428571 516564776 285496244 81530909 25954875 754062967 270091157 534176869 426027180 617377342 359666908 862183096 95833749 130980063 863217051 527568082 444685376 296979165 766822165 516492531 188386327 125533254 421764586 861136683 505027658 142940848 155880445 388804028 464111106 234651072 183830596 375714224 268827734 378914515 122830973 710086717 954582619 109050051 464471490 21365664 487157152 324119428 546335219 604863133 30916969 37797612 753197640 558081695 891215173 8845313 320021055 555972595 153679354 6819330 687474172 455437130 371731706 751825333 851995453 417931613 188177389 428061435 351050778 390725724 55943969 381004995 517886554 798265377 193095921 635436263 285153917 592525442 463160020 692762951 155510580 353194891 122910249 807548180 287535856 61184514 314065038 838792556 673970271 820633080 210810943 838462502 883435817 387680060 211166554 208433492 19048920 775760089 342236226 782242413 908589099 609593486 305076883 447969127 519848357 75331416 873489758 627636443 542177141 761672308 690379694 642498055 93252478 684797430 820381056 81851764 119872453 2900302 24035665 370399366 325674453 950951702 659461489 647926723 509091828 458693308 983472163 682516830 92558494 528664980 936338549 541527043 359703437 33795978 24855590 51550917 299028690 373152475 590908405 268036132 894668121 251496466 574120574 796039541 780016822 579065132 982924321 798274905 952998479 801247128 126404478 574693898 262903431 321610597 427602853 383710354 55050473 905518380 625445942 137279806 913167714 765415752 717946742 891217896 429335343 25139935 439970117 938989331 614433036 571821291 133496778 453572919 458186258 992987838 635295392 760529256 388567860 560073008 613353935 546290020 120183583 13777540 934583494 763916667 638046243 439708198 994906532 975323892 329462088 918890034 260561940 670855660 402782288 201594931 653829486 668718504 27013383 231294730 671282588 1960380 228470472 83010141 858709626 169953724 839259132 435691561 664246047 331841456 978462392 432806940 241423201 539485987 897029024 212249407 477928221 114207302 131610141 348268424 285013762 143538173 657657478 207981631 36792865 657857760 224081349 470212542 37513274 272833355 817399589 655918566 140315411 407323803 141967024 869290879 741610939 94792346 109932930 632618174 472921213 76726551 187653990 564540796 495098240 142886247 220069644 527401901 770237207 732860749 578630418 251781711 56645680 832190179 251019849 705721353 469784745 70028684 284195819 770296699 22917468 660263890 673086019 111830009 536739772 601779787 74246693 403766091 429550391 386012511 229961598 30677344 3039501 74228714 853702101 769492113 440351365 620522394 615697412 124189294 964955097 491469989 952751201 488082737 17144364 834714126 527284323 850004507 606877900 919695828 462480519 231325569 550403573 236280056 532429451 416155980 426865036 999409162 444139195 394652495 967937016 989724990 562991965 455205198 427645443 348946687 854677328 290716304 951675641 856055101 412389173 878173762 511208321 552765728 790850365 903721862 667753481 800398312 693648373 264367930 76111660 302391946 878896256 818178940 105050380 940399600 188766760 148709103 63574797 914264264 58148322 172454396 186698798 722998150 702313013 65886008 507156990 380148908 999803260 16568127 651142675 611240603 693890541 656639613 384725650 468759572 913822654 12475463 595565584 797522885 265147473 637129557 23157786 941921267 732193605 354542635 61515117 627411058 800758632 28064624 992432551 746192831 282517132 63140835 222004728 543960454 461699677 192190989 6812478 33148650 196834733 926603785 321276935 284983246 494537904 322634238 651787120 696210651 113267978 447194568 732168945 874823670 881669064 653843743 478256661 847274682 223689104 984581424 169997331 593469104 592996563 284364444 135877923 597496531 711398035 106114902 564372682 456199749 884471160 942527671 454099768 349395830 186258775 729280649 491878221 463976708 63766541 200190562 442642075 741777361 226087504 46423888 832995379 791911060 490867354 850447118 12478763 693718195 78192945 725230268 754843872 344295160 903970904 955761916 169191565 435052511 802477398 704201630 965770326 963901666 454204574 426464193 340380184 595269376 303081650 606658497 241370578 408523817 368808445 84017884 887209384 181899967 201704184 236899510 685641307 360308339 450140995 713157431 16365631 637864376 398488846 102818600 887358053 322294274 226195549 894361056 763820790 236637198 915660888 948917882 240959090 132212605 520967602 195714755 574369611 247082163 169224822 660330750 378974112 707442459 940846543 670988045 434636827 142979006 646397491 366442415 824640231 91474815 771093500 841608801 150051687 574601673 577243870 199021924 174602315 47462062 248782442 501311321 224063041 625998060 105953135 444255290 21420576 634480350 894006667 40514196 226797128 607424573 339079838 760499255 504703840 22388942 550233730 47705174 537082920 799855182 27188009 411768792 111213802 224127349 174745415 811823269 144505829 700294084 349088223 690171026 455857815 97215547 12732683 933097882 191879087 446316786 908624285 141114731 339612457 120302058 343167058 718480568 572041930 691248485 960806628 322173639 432421281 476632228 620798693 44654508 883249276 441315603 406450929 773233216 59130924 375675849 418780331 365937481 277611319 316799109 560968371 280929464 615630014 620499691 248993787 505099178 918385908 7375506 311069144 326528206 191543615 769025783 424443319 386258973 830027922 128268349 338440532 403995934 677527133 121525688 923091511 278396054 86068795 937803921 647031857 240951740 789353562 33378947 813785389 874027964 706244759 704394043 324303728 330796915 48862535 601269817 41805343 780372218 646872713 419129463 688511025 387050144 894242697 577826885 14352508 652648035 764682693 834291357 590945788 216509564 910543851 918852190 806839191 233383363 187352309 242652351 845388616 522931617 353060457 222139601 179967633 909524335 665168425 27440841 199409550 802893972 54088406 992789917 173874123 755480113 185666 783799474 167152543 776417265 527489394 523537649 253926049 230393707 988913666 764079062 15857750 834831856 650300627 399533577 323937696 176630441 26683799 672153230 802410579 556287240 381611998 32022128 499732618 208766066 743201037 340468530 399265902 100662992 670005616 788680031 290163552 591857418 226528630 735401369 380631521 205353519 210049812 919477706 254845311 195487 497782943 876144809 425320152 623071227 319770863 842515450 836005951 678388159 4353470 435091595 799705986 498192427 166771643 734946138 241666461 727392754 139040961 954951937 942580704 945372944 986995459 307833549 203485671 644780517 76379448 128895763 939322539 57619960 510337276 135211967 443717825 365062680 921287875 74559940 397665822 479342714 854771917 935967699 771562671 656690376 413991060 272296632 899629035 614781720 150439041 601055014 973649412 880560612 554750955 69307088 520311567 246540802 184280525 503828347 619187090 944793963 371799435 192749412 973624089 495763468 859303543 67177634 391937221 31766456 826618681 794119413 459373894 866303202 886719158 542788371 474806818 56060593 958563752 724550232 774651559 373361887 530962789 568272229 495010763 637857449 334995887 49251905 828803822 453517520 571627460 225867315 319745847 974146066 551594422 84701940 175331240 96763620 267163495 461344 820584305 369801617 143080277 729993776 18452888 793683153 912680414 540330832 784187494 360010539 813137462 946495818 288098400 356759632 37958380 928469416 346457138 917604107 640376193 654250678 98333233 982413033 61007858 934158308 30743283 512351499 19776857 585486736 615637231 662857177 107196819 631045931 331078866 590437443 980048087 141274653 233012254 189880369 532064581 234806512 755901751 992826468 883736766 45225136 968594104 959963717 115964070 76189026 441741838 807652598 470857418 762488974 372438585 616179770 200552827 436513016 208033110 684313289 300661869 805451606 896402390 583301633 545331375 190198501 553918213 349283448 932727391 572953240 401317315 312395534 979755661 207165760 718300843 832691080 987568651 357583841 346890103 222101403 485966035 388267525 238926327 22837080 845364429 721768013 407033287 452370634 410970350 900538720 591461211 167455802 777290033 480210778 943559281 661559645 280866827 846081829 952762357 42276247 172278010 479273527 327123992 903066665 240768538 910817218 634755471 810129126 995631028 513431664 310848286 766986102 63712949 193251795 185228009 569984377 451702745 425154095 615945042 121424844 722641981 811342468 800338424 228158535 799317397 644124714 543247449 974158385 107602608 764548503 27204311 47152936 62922871 105421253 709067299 448216058 310210700 645071310 564016041 693576554 134145419 534141705 858473429 21715380 496286752 92872170 761045407 252163272 276937105 84136914 179077360 284651477 68627721 16794153 590284072 136190491 571443359 393578296 894637283 538802010 626394422 23605415 651356473 814818954 419825334 351330942 785584100 337949155 644085530 576610196 688085460 442753338 808595990 589246924 89775713 297081698 309718193 333698722 841974580 144682525 66905062 825610292 603323222 620221822 403407754 419876782 923604667 685735742 356175063 415421638 840385545 66601952 370167707 915897074 488326126 886751061 665204132 815953893 119066337 484709390 148633867 330413242 233331527 897020175 534605843 337139897 938880190 825754279 746630283 915581761 647447106 901540560 321399223 497059940 965811964 253477492 635758015 946415047 529764504 408631072 112503274 402936334 657590454 46632456 57630298 527585962 503186946 824054162 4074523 252384413 334809535 560779183 220120793 305091016 984470286 503120395 303462260 398547768 137073320 629990069 578935384 479950343 367164701 165014537 622435620 453085081 364089815 480344951 704665249 543998868 978755573 393464297 285801352 656108634 569435500 937076734 941840841 854739862 225588616 962636399 470756956 322361451 624281789 74223385 396689646 504885813 213374762 680896835 595860783 876488908 323061250 463484139 43867378 690991469 210623435 892382368 311224431 638498832 347858760 411209736 734036230 368823058 596451467 263451512 602364840 759676718 198281892 882654372 155599091 600022347 469178566 609865009 927286679 739018382 918550019 512353550 993269779 361509854 191632701 990492378 591157016 758616039 185793002 423902215 163545335 512052286 463944314 871901602 586176787 84451297 265751202 593038524 257282282 439591932 140642497 932893393 524767561 144037217 299860054 617248366 97779300 105776312 144254586 918568942 980785274 48305158 158001898 128554830 200313035 244626560 179997169 829097875 69908882 114090204 899270266 259924858 564201797 287321570 803834260 302203002 812178150 786091075 587241991 491397438 915377940 640557890 449084966 809814462 372467081 559956416 936139778 870966036 193229909 983993265 838670636 458388703 686541236 222604299 921874643 286199063 209626204 509004005 495980643 772489513 641356032 646732775 434746344 11314388 270638155 542775872 884124225 386355371 662051830 109587051 783113044 720383686 409473034 70210906 449320912 660846848 432544690 509600768 764634986 921532434 853931925 366000136 292350721 848948142 857644598 659306110 794028423 907836145 524466065 266421857 904320818 287040083 876479581 48538498 55725756 120523972 953903813 256523866 817100775 7240915 981136968 450175768 520603089 995423756 730132088 455641837 485537222 38778251 646916689 193339601 329905150 402688771 937453971 547924519 166450119 392039798 113484544 30197007 6590467 74338636 617170931 73769494 870043080 232553864 923729146 932949653 739279592 713602412 75093897 824226031 553993315 329169903 865842624 6683415 543998540 790802615 557483043 739310840 244736093 243910090 727833785 954690703 194606533 984116786 370655068 966789383 584075354 816824778 282621506 741161194 41859314 133144578 478077860 748025054 736604521 305017882 15551728 822143232 643527140 896326211 498294315 103973551 735425730 172212740 6966656 852321575 143811036 325984812 263871023 934850324 383085919 127538295 650616497 506599762 819383059 387006882 375481882 882283360 241742480 11210152 90327882 859758791 351917501 416662308 909292884 867895089 56392011 952949436 216189729 677700382 943735971 886647909 648931635 81929577 211203102 533876087 401242226 852976412 641090900 311155957 746135496 345768938 507372130 413585564 319505857 63653395 610365778 583143686 719217489 11995888 869636973 978939337 312835709 148429423 652930473 183489950 950948847 912352604 435968974 133386325 878410605 229431714 694615496 996109537 843141970 860747661 191577119 707116530 721958320 636119644 456291048 528171367 277587453 766116720 397770571 219063548 335635449 177361608 341735428 522037744 949565623 203127927 591483912 625806974 783975726 824763375 569832502 887750289 237270123 254117394 999701742 428211926 316308389 548621234 664452058 242765226 225866776 953314715 454440733 910826125 953844197 203654599 579099600 150947495 306377529 333803941 737096969 757723541 717740911 981784972 931747238 751908860 900166985 285239220 821929667 666583084 497196489 784233651 554415339 479051098 595918126 816097075 184270378 510955815 160336997 820582890 170750500 485200510 338184790 113347724 978461601 159730868 670913062 322787248 231015681 69872790 676705350 793848158 178687324 849121901 165027204 663516165 927381957 157770877 443351117 15103743 286270925 415770946 813033256 261462568 403080910 255983325 639944339 456430055 165465446 413856887 199446731 27628274 658864871 924198975 997924049 661466234 350050179 52703952 333259137 596229868 185354021 646034674 116157306 867076203 316457133 919676005 104355301 281414640 265766589 632815475 684714212 874586452 329585900 15142315 975034468 270021894 707631737 842358956 922328496 925718687 905426767 387842911 96046533 443579165 161286275 12250081 543878087 818322339 752299288 307199482 453702841 355404589 931975935 764242352 608751671 100857905 424550876 967138019 56348276 242517242 929346134 695161363 419780180 863867541 399161176 692542454 851571139 39806028 515404477 483712884 481673040 926449656 957341482 778769932 326824151 877442571 445232855 300404722 457456944 599657800 391872041 53240462 6477762 882285568 480780679 341275456 663981475 910782886 578986951 231494355 546014651 951291193 763320385 133471981 230659190 115211563 502669429 707765426 942263170 799725532 212027750 558941687 952719918 780592608 96644971 393298253 398869544 711970385 35001616 301383381 584503239 970531915 582783226 894353521 388232349 134065243 358717914 932941628 650398896 612159121 624397108 2942227 562481741 581398225 923154072 576477432 590018048 827390991 531353758 635622216 350632292 588376518 844563639 989323201 479104921 781291084 565798984 911334613 779106521 827331049 346375122 386054940 988599158 586341639 203789332 269926059 843461381 209312810 761735458 583047365 347264878 572434804 862785595 164773150 932496054 563004293 172821389 397337024 152116533 445491242 773253942 586777648 417586075 295537195 147184588 805152298 516340886 916537762 520788844 322635860 777791363 667670107 907068771 83666281 107770718 65343802 197881097 25186006 298258666 676785556 601044569 307526701 625263416 884690657 626993980 606035116 288982901 5520338 990888387 62577416 791089242 668057517 850309593 500594721 588227712 34138320 37513866 708868448 897622572 804671352 174448153 742563750 944461205 290475202 30196804 973506807 778699428 729438101 355744728 788813871 574351919 416472345 187006779 80382150 538539245 71141524 621971039 626188220 950720086 629398250 219267282 511359488 794065928 854730922 444571092 935489470 317561884 633250723 327425441 988754547 92122241 826443489 188120356 816439607 65075835 84371937 755895157 257253975 158944849 398332299 173708719 429534512 638239527 655012041 363399312 282448993 419777931 388992922 667924088 898125777 930651960 501112181 255113058 720054159 394222325 771514528 586347499 724809036 23003923 140197360 11326197 393853309 194812194 670927005 838380010 61020801 365675740 694585875 232983344 642610900 55768384 728990441 112353597 834063460 954712326 738915549 712506920 695534695 447343610 987694242 244919325 656423221 779944976 173320574 832626766 254466681 544213055 708779913 13543466 224035782 630613478 844090366 54167040 354254071 796714389 849496233 550955097 197678736 768460550 662660669 288097667 308930147 494334623 199830035 808699038 619873930 659270560 27933393 632340453 26935269 669356007 898371906 723742291 624157846 473282926 125131487 143427681 76082458 701792306 638112491 946938918 577041025 709657676 775286407 886469876 677067274 591212645 261629894 570940004 470877237 535202151 893781630 331574229 825661343 937431448 960501767 963751503 730976322 234185872 995243581 249713018 856683214 961478417 280881038 519349942 276787271 277478054 219180832 512385923 557412478 596629261 648988465 362217579 51352893 647094058 279271815 788600873 255116772 744091551 503778832 986590209 409651540 942304862 912404390 304365603 247180162 989671194 277464432 953360238 335510691 832413821 597592734 989094682 878637939 234554178 182461209 777641595 335663260 647628653 66981077 194527383 331388305 188116256 826193372 841191262 514480315 688849618 816025808 493764393 285109226 981348696 209378976 268734065 476490497 320957694 510622103 550223023 818254850 954784389 213385409 332588963 294622111 166291044 762251483 93661723 690558231 470796930 576890555 738281478 699621749 294766404 851581978 187044426 936231567 899644494 420406865 733406856 659732105 721090705 931833860 761368770 339909751 27998079 411178910 854820957 144632431 264336956 515027001 265036407 500295910 118160955 813206598 973169154 367751841 83158555 513691928 871792755 283420796 784202033 103708134 824427222 317393671 380699640 746384573 51383803 345506941 738476877 243614877 162030813 524833009 463147335 805573784 692960219 215817212 612790370 196102373 183592158 244645297 167300640 517947773 318174187 205856090 519177997 490079162 273219439 489236904 973670044 947883989 662104461 249378236 621833224 200337133 189986930 746491224 193650054 629350735 895493689 200436591 961121432 776531930 445417334 144425715 394615719 515521061 621466447 359733424 124128530 653262046 79985572 846841731 356901965 733347252 221013043 972658794 555371986 797933760 35798952 230749917 160017950 536390499 871497700 642743292 906714495 973367681 724478090 696887311 6769376 786413771 436884594 305097992 475167514 100833128 504419780 543235885 581000261 952585530 418700503 694032651 630087985 590314596 443253796 170501183 357563533 410406119 846443906 718946777 546681037 559971204 840606751 138691893 797239790 19818099 209029444 51001271 731069236 423021294 401346376 61859895 739303739 847578971 36212315 845148353 732659543 177796132 452675236 708978336 873135711 441585687 195725675 905421792 787444153 383435517 10708134 768369082 75810731 683715325 545571645 635374923 463146281 57216072 206071093 297957276 821122133 961963484 259178950 196532818 810419975 752617082 164978447 691123240 777104642 516728452 409120576 831504428 410680404 533582228 543697033 922983 547066955 701375725 883334361 452993730 746670283 479330577 285599203 455028486 971856320 496737416 17284862 778751498 113179120 756369020 542562153 404927301 411309457 37363068 310239895 943776028 259868914 509393816 922627515 481312737 111926433 151221505 700503143 487130146 727285820 683117489 995903126 918297283 51502196 469343543 257497477 266676773 908001319 380359758 21037214 327260566 723524981 211070917 58538286 975729609 810530267 921849551 882656414 97242761 890865077 618399417 672194060 320347154 484843067 576757186 169387454 998707910 414071155 250158977 732997518 130206232 941098525 260253215 348346232 519875887 980103561 865483701 102367294 482649454 930306951 247408129 853612972 452410479 134515940 101623078 844069136 411854205 406413354 585852186 881669458 36719358 405614910 110097096 669556912 289786332 877930285 779139907 287968273 339442686 383944464 32678647 75222950 35103025 168932994 858267233 737060085 612313236 781507517 58795719 708961266 750132000 426209169 984506077 478685267 553368743 844626952 492331799 244295129 803913177 623115041 94048559 163281905 431665976 157023389 732493952 240731205 504046161 783714293 528762983 556044497 301551496 280973386 987455921 638868225 984834431 77276039 74383021 239987856 360818406 217116835 650996998 215126335 772339623 936358827 724740339 890491435 340950678 847143071 691109436 594589605 900919498 631832418 360694118 186783704 916348804 162461346 22380099 300122863 465180866 34254208 77515233 956733845 541775090 611939732 217118822 649060716 203740394 691234550 431802276 416721973 948584306 760293766 757759937 111571112 605889384 58370576 499828926 237997806 633866333 343331402 503521496 506000053 244789670 299699616 386689202 155766927 535043133 165686621 811817452 404794975 213524998 965653757 85259137 589320293 302919628 318488420 212790111 493450162 992212755 511220281 11123486 274714514 190002052 861228975 552063574 530411388 201223572 825769119 570410408 804293047 59725408 942493524 808864691 897691678 843824107 180538629 542544636 743320973 894758268 47925668 875380425 784083288 947769376 925007399 688703068 676067162 771056552 55085104 781799056 97810291 930968982 736726654 37771547 579910461 210469540 74265165 251686120 925298096 818370518 693805134 630092929 922362253 237311204 50857280 294879174 596083382 705516692 502480317 219261375 158285471 478953018 321752934 488323671 791088085 416599062 613421000 747084904 593251043 677785518 987783575 766331572 533783598 512957456 829600943 250916117 835423685 666825300 116135262 824273400 438915599 810413364 640151416 681055187 480582970 782134689 706290707 417824414 319265127 289027961 202927284 839151389 11425880 982364019 591796830 352103197 68787396 92048234 590366812 745364740 722594425 556236788 927713513 158509509 32367731 240078148 162762447 738803081 375199026 851696393 500397669 209891086 50498970 867614582 240035048 908308630 490668031 698859567 321749521 262971734 674676676 88520698 273617954 571122730 46198551 327784074 974852531 192049806 311171158 848528526 701338676 168845084 674256602 115353675 536257156 619471263 594051332 914672580 696074438 693726945 63482553 204673275 889623795 424106347 153055293 676626481 993756840 77263281 187925252 298447329 981343332 665440771 628995933 364214961 597227016 506923291 521611743 572944926 143975868 459194073 686064249 245106392 481166713 672281607 564874520 522169096 20914208 9681612 177296536 668382695 951450745 368548833 681939491 427724003 34091396 54988195 665624675 785926276 375284264 394533638 892321669 403625200 165257690 984572104 396193826 476675589 418787099 294487375 893576866 921758269 827792036 308789891 854707142 201848233 468292512 897859439 464109433 56768776 97072416 620364308 44713407 210737666 839349642 864394073 873834702 479330511 740783371 458782337 940946312 771773052 853175408 349553309 609521282 895419526 928527706 696977079 663898476 394401788 642382017 449122856 610539422 767323301 303209913 235347882 276771204 378761844 162406407 902953149 251568662 663111206 26126972 475613705 579760576 205611547 653774982 864784339 752495397 762063712 463055927 412431234 301238953 840208730 368316102 47944465 771979043 416061875 635801135 61931961 361696893 175290451 241491464 667340098 755358327 435194581 121198785 303264729 814638960 449564620 553288761 863212994 255496502 167427250 967733645 997721314 512843762 982319776 897464393 514878729 692325229 903596100 354865908 97040917 471272465 870885625 695423496 593163464 95688024 992517225 372395667 305366580 209182570 683387435 841873211 355072906 217416688 637740876 278423582 941574758 437140996 460783696 518231350 91996185 159153556 644927037 197037082 8003841 838685201 834492675 877294018 836343330 991254175 357915829 42078159 204325896 116404616 406105259 807378041 552424752 714404290 218473375 899295530 323486672 921650569 94350274 269692151 448353974 661503224 43333474 396172278 787837066 304092642 751763500 736645052 437409241 131203589 828282947 175524739 504817601 582142828 326951231 999911965 183298481 273754110 211838033 170571244 640159223 578046476 179478451 356318740 545585123 2889753 549282056 570648927 288341670 192995658 934998416 135885975 205310494 373333170 740726254 904209932 962369064 415605918 882471922 660456987 700712090 486607775 904285866 454082359 822973444 735960681 621909043 24245517 984350297 912542473 390827057 662397387 33699557 224779164 368580819 658342258 378000996 182797781 929026714 57952239 494732964 633131439 211409254 73823203 880349318 209300741 23747797 579599485 333790724 969098287 269191924 286180006 360142576 468279026 808197190 946568478 543870389 378142746 816385231 794301954 566809416 953142883 874942656 458285063 526208719 201039743 375403378 4041752 970937113 496445682 139091933 127167005 295744056 819429872 190736658 276529065 836403229 998704603 425522979 612541553 912375763 930266926 228422586 692867205 784682296 834993625 470077880 670697798 453506594 824458054 872378755 67465616 528701482 36309689 454981293 859797871 899839276 537090614 78928136 960012870 839076328 859831063 459872011 164795394 934779143 225651254 251347044 629079303 378319683 124615130 778690080 589017548 89509844 400474183 396385618 132622377 872017271 219575088 891018337 447075145 597910433 521485364 270329307 58721925 504495390 201007454 781215046 92833258 107201324 874219437 963737244 157087732 626134241 900802358 990061025 962232401 758169154 989602986 187406440 327263246 946346665 542552206 297198823 291092013 965294616 397940696 844761877 541795289 399956508 399632950 567080865 955848749 357117585 421812575 992538394 779849617 350665940 132907162 290218785 414852730 201810238 610924275 674159604 63492061 244640276 60694857 784645368 786495982 682811092 472598479 949649399 674733823 400241242 953606788 984766800 897912986 132414518 355799219 656067916 230991347 388154377 979180104 504745670 121273494 406706747 472100548 869801303 45060064 753224676 765552680 28822381 306559654 457914696 468664602 369010369 324324192 152161056 799076320 687176572 748347521 413990581 503644848 281630046 82477581 721008656 730206220 735164941 802590267 563995719 764059912 410819307 19928383 387459057 245822205 629480371 603302587 270155050 51500280 719683493 324086883 805550467 559525607 460158238 810112028 362014412 580761436 855874352 890081958 801362228 663164936 367457545 29014063 570894722 126825048 858112320 536730395 240986202 254375929 613683707 461332638 377653371 179786135 845037030 716325553 295489113 487368552 989829878 238930760 239332099 246731058 342309233 207035396 156689027 368420898 10481899 436142547 159263607 110595833 397850178 465986124 460299802 105239999 820738167 592374956 186303998 685182438 563722069 969405680 243470483 398325488 719868403 822507170 316775732 992582340 904311840 82640194 643782240 656852756 336664105 296236582 982402600 262502829 912523000 793532033 615418901 716629593 3316494 567178821 109875287 157059805 553142174 179186884 347401331 871383159 850063223 336671193 422005225 146157446 628158720 43109881 701438142 405263030 275926920 346186772 917575539 398548039 593164697 287516265 45124721 643454647 612986758 981706412 452891053 396454257 573438899 596571680 103031144 755189937 606814778 435191617 984455372 630651742 94975199 51136308 673702716 167600547 674132005 832324354 673952109 517377477 105351825 313498636 658734575 436868924 395948275 845013937 231678058 270577007 664055863 373860397 541398127 238549727 600465399 299106722 575931474 862692180 882595977 681565930 982937891 634630916 542979424 188993497 287169756 376016368 880632751 853048683 221497537 164678154 757947170 531645066 989239491 951937896 65553601 115144554 528710037 121377364 478704848 683241921 803048759 877154057 90932956 513988100 330761740 738655681 771234953 615261743 819126335 463207511 498337386 318789464 710306735 602620490 822414936 666766380 754666874 515212456 558550136 670789314 434779154 84183373 104304681 636485032 522095460 880724024 420187379 731036072 318115541 114325415 131041211 794799015 725095583 818762745 385449471 508097057 613850559 69797785 24071717 506768189 290483868 795459675 183565761 683392296 117004733 950645987 772378083 475742340 537215014 70888392 74764482 820717041 365342327 349312116 216571564 525073830 700362606 946859723 473905364 68536172 957157129 804954383 503166505 405087383 828266872 495267145 666027629 198031730 602623991 411515832 646165654 149613921 373596702 812351062 187914808 181708055 609597345 707067944 811220242 910414864 944102432 313508295 130246787 136497124 426625614 104536997 907389839 607912102 97561292 54718485 72884273 752768146 962568580 263401037 156523383 877350414 847577641 268501844 670576509 296559503 276168458 746849829 534613124 623888434 19611991 635246303 924897070 594255076 831510792 990646608 176681734 532074292 46891933 18009892 159549760 115605406 124706136 439011167 511350398 621730917 942974959 972158899 427974467 839361733 718234848 417206292 948756723 600965950 601730143 476209054 491868879 620701277 151347636 902093654 387239116 687430341 520719465 578499273 432788995 319380951 416528754 734785362 793884465 46665974 848275144 706431684 6754095 9664214 693619699 981401868 781703968 820766807 424715781 171451012 198708418 482957740 790771050 736728478 257942527 53334177 431622046 929424561 673248257 194314869 392026395 709131438 101844161 946331390 254910589 925226720 282886941 351380791 597427687 507801343 797365516 227116811 821904185 875830590 508367281 810289223 929673050 427632759 410833635 234198884 812069592 865307802 847746058 604412314 685631768 838290772 382582550 303372899 722494640 952614552 966578710 635828916 458036347 914546191 852945718 498220505 947857024 815669967 274849776 598874841 576883224 98911474 150270593 131487453 241445144 381748813 405742327 254308700 822904286 57045900 800054446 925297306 388458317 348412603 989660177 12744744 526067644 829017354 617200234 161056726 453354253 664535411 145112008 392007999 997553524 162489333 320837740 14918150 550369796 493206834 521321882 166709818 581729321 140736147 389538496 45918920 269809279 768307255 674093716 942351816 3579193 625276628 714033530 859529929 676365489 279348577 158070002 762130732 495186844 718526366 358806379 416227231 571337363 46305882 518169932 108247500 966097579 533004162 869805655 230166428 861647702 100584820 756821970 31617027 913929549 336585151 268187313 340364071 304873574 843713227 923314122 512682356 562704717 753612082 503938854 591374290 211757535 641772026 865844121 883339902 396097792 401193675 645112214 148550744 998598938 397591569 709952874 556958046 637055613 143300202 166395714 748989572 654059649 242659657 681346442 159246321 999016468 334227565 936037864 260313799 991873966 178556287 69379791 416221488 760038751 199169094 243594378 875715453 441208829 689798942 768444596 448647948 659257140 177025131 888859890 899017488 366840723 459663775 864901667 294420752 957271267 53671370 159065276 901712198 203655683 977061166 859353970 377655983 963123943 946637833 933854157 101852684 445789032 801048942 413133916 362787566 641235098 778106197 301567429 485255924 117599218 131338391 193603992 85827956 796063052 234796362 282864228 524764909 295304014 125327348 381461652 44195429 541291968 122950790 867719481 547384632 782104207 803291453 728367206 767035065 6902217 324712141 705528077 969110121 856526395 648068081 291850154 522393577 986106905 658574337 217995635 279932818 295292739 698437276 987941245 659644519 367780299 802021630 198026815 543817454 934174967 618254976 656033964 395559086 959370824 400076618 437340287 269988386 115584203 729246021 163985735 671738183 120570205 345087210 608198309 627813715 961629430 347885031 210630500 919647788 420716879 977365528 261307795 932814854 368661286 660900216 455439797 214881057 937408487 208598137 74682069 729261893 701777613 269970065 77475307 811651731 679594202 664065595 646281117 109122909 936665519 376940468 688520844 409623280 373987088 696127877 180855778 121542789 75200017 806196485 370062954 741794338 1518676 492287457 174396795 852307316 743003771 278972428 996565491 162533372 3158474 618788064 527551445 557441009 788936217 138440351 149338684 111134502 56767471 490208136 757938369 839379839 664316948 589110490 691520424 151737338 414829218 223760102 944112053 253595326 965424933 950692029 266280373 98124848 53548012 39036243 941608510 105164425 124455527 470031372 173477939 311274685 213350250 294733476 213692091 430101571 771550851 504824289 415261972 438905650 842508020 17753562 289559164 682405143 821269468 871618529 153169434 202783718 625596389 213491366 204403600 21540415 693954635 250919074 240477491 824391150 228615118 795910175 673645860 74351764 514615548 182553027 496240011 222629789 875154645 557283463 99551361 270041335 350612666 632455250 643768226 184752108 579160691 311050864 780099158 26606644 879062738 631926476 864694644 759113190 837724121 451700527 483749 540397881 968974205 590718030 298225949 980487299 346554064 778417047 431705116 368427612 719646985 883267456 765497594 850933316 879333966 943880419 521709290 241201983 196674317 749362776 379144841 75328807 355375364 955426469 230989530 753011379 503510645 211671787 289204134 522662280 205488941 958588071 250088773 99852145 658632269 46472147 541605746 363203332 132397024 47037294 553432519 1159688 643223577 646836712 871818891 100269747 531440712 609052751 478067148 752961097 419687632 838155968 153995330 810329780 460199705 302120807 894986344 249166119 219989728 783077824 870209002 196341981 434803790 415510149 299153069 117018877 910210531 863942756 916402953 410671085 609471222 542268690 937150887 159357107 973605535 81449584 630088659 614439333 599353438 748692415 63267840 464134933 68974272 108960390 199878494 446870280 173997419 135465616 807577450 587365350 442094619 824955665 916629060 534158824 808270883 550640917 872353617 413687339 701456594 387080791 908746787 286380422 607583403 529802988 290070725 1946004 177498678 778904657 792882928 551130154 977345238 532576513 229666192 222804572 778308454 227854289 783109209 356269358 540573016 270578792 727767646 274408733 605378801 625469623 901720402 469301179 208093784 375415316 984391866 706146797 565275152 243432590 712386388 279552881 405992866 886364772 422886010 723084614 610429421 603134926 967847011 248816151 361695543 512735630 766730713 815101631 700397947 485962233 389459906 171647932 941673040 113666700 634370688 611663858 837871554 886305480 156288760 227347672 372111426 533642035 674710467 724393542 555046406 268209440 898647781 838775730 651190855 939060045 460204317 191221128 400974903 803795473 545257698 196156766 422819864 181104956 757478759 944133594 983622997 349375335 82685798 961417275 840421890 106665024 440491520 779575824 300895338 57133603 113481040 776268404 612237504 736020086 638378992 367857708 346728875 800327760 897325394 512089170 39112415 981558890 971651685 75719723 690915036 376539706 326747737 439340414 56271990 938995774 853030803 490510593 760775292 674344296 329452218 308846819 334025868 511412889 226304337 244026418 52702100 406628001 724803549 42460620 840253003 323173777 543758832 945688389 226168870 206812803 827157107 587527543 783567861 922494990 738612020 600733946 59129974 604920225 674187647 456343572 619625515 829237112 864659254 640597289 260941793 103817653 241466842 613172346 776263126 670876288 787361419 217319833 203673347 627203646 908948693 642272406 426066262 70332082 382717830 734997906 208161422 646664280 873299170 408266422 566823056 141035290 730600463 694088073 604417928 277666905 373572553 623209677 224634881 804510344 246018441 264094247 891689859 512496042 317829941 110276977 934491569 181149296 90751066 487489440 74485175 722851218 263326752 411230755 28353986 335213742 729930972 874375521 833626852 140801582 566552110 591521997 847966627 312639334 686660752 71560778 829567749 686539016 801704663 569238767 960777698 851840930 386200639 478629394 402857655 574712195 455852971 320746141 471439623 15116876 700124957 452519639 65897549 6775999 761011958 562811781 317086560 762203086 20318882 82809480 867808980 583519974 256097549 999085937 189833226 801096931 929559239 736608096 518166938 679708936 449155254 397828277 543430427 864185892 644440246 588009293 287160617 352204324 400652310 711207191 292218298 736984066 240973918 174058563 592573070 8857966 341212071 843720119 965894808 796758834 790951768 40066702 348786197 870439276 814612132 982573262 239845162 192396953 421747559 537985953 593083151 997873665 285678947 525387107 636400339 645405535 387554051 12114998 686054418 574036590 884749306 773104447 885247703 213252880 682428483 830753785 997287014 964448198 497441871 580031425 551806032 484010393 521103358 392503633 189156710 862582299 257665048 252031934 660899981 374808349 408386398 967604356 187244993 193025761 400304907 205053867 410980032 415759107 256859537 766592843 328886294 202531899 556316224 839207623 91733343 52473418 681229 511429195 245139212 455536163 31623604 907876664 234432513 863827360 635529663 127145210 647642185 211068632 672902588 675895112 486323355 9073283 316030300 438353754 666455532 194429026 384275992 819088473 909359583 809561233 368469223 547462969 422290568 597309419 254104017 912142822 662168120 99760051 445943220 628039582 342030447 75462304 379508904 982927064 729448811 875072470 723384446 700924330 372340340 235721750 643810040 160462482 605262985 966121973 129470331 405955362 433098593 739169410 507289983 28054721 439922326 652885737 980778424 681111868 874398271 976740797 725219704 85855222 832920176 547858589 649324420 911608909 799141643 947910954 311302743 808022904 119832824 589918178 322460743 445197433 517207204 955048349 141604422 791696648 341667062 56428280 186420393 560471725 551190160 406705198 298029095 285190624 371767639 577806619 338325913 505013154 365282 337860831 719528928 36457248 506232211 655601040 79271617 99857065 366422523 259284741 20521560 909759016 673442516 883927851 727770165 563108583 964438511 648113569 209040996 262847252 864652197 259488350 650629226 936413769 283261500 185419481 796791642 268953148 279416224 792471263 944317690 234552210 353684703 361245048 643758801 573810507 969874230 231596171 806248197 366145416 341868235 588496771 173554681 70430933 380061782 874693892 716705835 987118232 27821154 954174145 300624340 719997865 738795474 984652181 364643757 828971748 446559283 390803603 641781312 758282467 33481101 345870197 633463475 909634364 69325839 428187061 614367013 597265859 974067397 894925861 557835558 638779000 560753345 247855287 71081968 102797573 504410110 204537161 520233058 296109327 274253639 279934329 739667776 387915443 214253861 693970961 885655745 390585195 482140675 169602542 163214251 239022599 383674975 359063519 126179345 392634282 350447647 670528426 608180077 16560169 518411699 713187949 169099469 626194847 946157521 936624920 956216077 355243179 869596763 948522370 777489628 877059804 546638817 120229135 976032776 900128647 460991386 586447503 270367127 137570139 856835503 601392856 175125282 745263587 46507603 827053646 515211885 904815296 750891928 50982314 992285657 401658117 222648472 481025997 494978686 41850738 671905605 611352787 320869645 541929200 52529516 282852550 476745869 471080855 210864567 695924168 389670507 941397600 717493542 995663782 917315166 472496875 523965409 43125076 701666518 528029574 600574403 760353108 331653306 38722297 893660663 142478936 626410466 637174480 680195673 663261369 199054129 135275630 204506635 412421845 319564572 206636264 791238955 860055177 345386355 539114849 146970045 841885829 414806742 680486322 298859813 516486994 51550592 991431162 114023373 436455339 638925195 230834440 826154472 647297191 532506291 419335347 269401703 516414719 697887528 903760876 832570747 34253842 31681120 910925864 245214683 201144174 853775484 351077143 513720185 78929463 92499034 738228612 512086623 38473123 684204988 721365897 905613403 47585897 752354162 495269562 458109402 254710306 552367423 47444274 809501149 642440790 983753792 20697860 51501358 4672251 532782596 633663469 783517777 749670363 446829370 622025905 736307836 610687242 145866827 72914812 628790569 682039614 996095712 685638107 351023723 385956008 747655904 345715059 406628455 862459735 791904951 970293895 681202973 543689238 447871854 85153938 813530893 271948150 718368426 274256188 911826981 421022796 72569193 549116261 686666345 198677108 372515671 444086855 844660198 806983445 174252742 898608287 323530596 462636245 467567511 376779938 528733216 706329806 927603600 854058358 613055711 64264184 58406360 341253513 925529601 769290768 125598395 528518649 39514539 842772905 769090347 848904159 730351042 274526024 689624382 935082520 600342459 626262722 271294652 755277636 990559236 629450825 961891435 277023716 963510149 37913961 698779769 396664469 392815472 332225230 743781637 43295199 616760126 969310030 639977846 360648634 803502427 268967256 820406369 753648678 143064049 843657094 249679815 532541155 862264198 713822165 41342171 199311244 523892282 608097673 326086874 539374254 36949189 515754539 411244973 583180854 328392617 123377502 697260529 659611973 347889853 389981559 491720921 6935868 602885358 927884193 150234194 753664069 189967045 622896110 282811007 685781322 585567855 530649120 387025936 762595514 418868026 508253079 719397292 637926726 183826721 140221665 186588876 976630139 579787696 772384475 802178795 428967245 72291947 488565787 217598621 458194254 400994192 635122231 992999834 598114345 15527573 566483128 240925841 358132971 366982611 914469034 908476595 150008589 825341189 518952045 696165367 375425765 679109759 324662034 292370498 652212110 226427839 641185641 642801659 289337291 289350526 331498867 504834788 819612540 131845241 19330535 974413975 515663927 959152526 446186053 797537749 932265769 64521927 504273907 829642282 969219330 813882391 509804982 425369888 361544909 675371644 89073791 173416206 263006596 27874092 868867243 658079380 171556339 924209415 423548526 414277658 424350587 169933309 224329154 350262997 834857100 155355391 356983369 978096554 14590119 951146653 859307657 439726926 640838854 79598305 293882621 65838323 628198642 462867098 130357481 498564353 599052121 778338793 926944986 522755356 523823691 554005770 839921126 558398777 343214530 942686526 464555649 348346276 687738172 270128307 54268998 215706405 448944362 926978636 425592717 826643940 420281000 666516478 731305279 673500508 759560011 562729494 975348081 930833882 201251194 654557222 420686277 145939956 592578031 922615972 390511951 701524766 714526097 536883649 246102498 561587493 670193904 681883473 391747846 274404587 424132936 391136904 40364864 424680095 540139596 830526748 715915843 109294427 500493434 36591041 563689900 214964934 418585280 141372356 804638476 778493643 27815841 716836985 530524503 962071976 300482248 822737367 883509011 257326424 595244220 735881964 313901728 550042437 829792273 940372959 645416060 566099949 973715918 961087166 281712001 676454179 505228517 661998975 781722476 374335687 163224164 10629563 522759731 998919450 160964044 448197892 924095305 736633769 66290870 302048339 767034838 186447684 26352823 400062079 80753063 753821396 764286857 524215889 1096192 661580771 142006302 283320092 688917408 396904568 163427140 868984798 665377276 938197746 537025945 25529614 299265645 202855555 188945043 495687928 28981051 308623111 84305534 293385633 199015979 945426820 297277014 627392429 98907904 886445907 944793957 563370432 18969886 12839972 583426506 174909276 728679747 913163089 334759448 322829642 545889238 563732841 816804905 442521649 372724385 528523087 608931819 264545130 873747129 876783282 36523374 479785466 493115925 457937293 449346153 229788733 870518732 762127320 543611660 491395341 967490647 791008994 422880539 358912694 786912363 544057623 975146572 959938505 347305415 105133360 967221300 637130168 806295663 371966419 973937642 628594531 408068252 105115337 824539205 391956745 773862104 860114243 307564882 540691061 162698274 87639624 705241633 324202665 603940008 570610073 93545825 280607821 610481693 740043212 349538930 798123957 904831681 55325899 260448182 799984168 423826986 935535107 357810749 72739695 813062947 973589213 957706908 195309032 346679456 385860503 913545838 737522401 696032466 467256571 781278909 739174523 486689162 330225522 708541431 806357226 907679063 993508452 420745577 105393358 269065464 307259583 483465330 993692817 923009591 885889160 528818987 39856616 197532904 146161734 594675360 271505903 341968779 690550107 962348415 349980108 673294990 533810061 251107166 626905351 17784395 546400132 910717841 375934082 372816980 824118405 760886170 963981569 655681021 592843557 373610385 871341167 144892843 727096461 536206446 235944100 580581251 585297609 787699036 756224955 203506083 717428776 555336298 444864815 491602447 447734476 648281227 534574273 506627084 370596692 752935772 73094867 729864178 907743524 338994438 890923919 397529603 499436871 211589162 599410848 645019109 782236199 258954784 511547890 455583874 336839277 79083503 295694735 458305109 841651576 747051398 361988510 422479983 264234795 55382742 454712505 888747970 34319849 431692896 141802021 121719087 801723516 380493407 430392561 426939159 82771705 112194611 730555079 602634337 149091263 22470669 759074802 846572375 579441708 858107560 301829966 590040601 502643283 663341252 531238237 802963553 212203742 761758891 926891814 573778657 375975891 889366654 949748125 214555999 547321394 68944988 938580952 846075314 736735823 416789582 365361367 731915469 824087885 157003752 296099392 820009241 630429984 459622988 803791802 117560164 489124577 150036247 353097005 863109462 246926884 201909018 703619160 3404575 265553156 469019535 273446377 763990471 339840705 617919329 37079074 40418557 375831112 339707167 183219968 572191369 684932694 36749329 886141582 917603335 591587156 509257282 785232591 298034370 867981406 755944986 22023448 247090339 359066091 660682548 636186971 737578444 410286055 451655098 978068807 957166193 837569045 812394565 729017366 456515570 845394699 764688497 629686395 676470554 778147513 346710911 331029402 979495134 328720279 391127450 626973030 295075430 1916101 326403594 64579938 797400907 963066459 264528195 769629212 408677621 90214449 443716777 533923347 336295336 522756656 801307230 507182522 360089467 540086201 913797958 231009220 468898633 232481951 223407354 357741484 60563016 249021133 675162000 693271160 267620346 446193583 57978065 822352025 485140483 865309086 745959010 195844682 666997591 521410930 408679785 732891279 899980120 93256010 794850654 887839968 647710495 254001717 493015968 555384086 682370818 847046480 950869695 520608995 267990740 752199483 307756941 339075426 941872567 494621934 706393357 63457386 4992417 499224631 206678570 539352407 452068408 94995452 484059029 643745899 442872088 927213692 700036882 898519045 823635437 323461711 61939635 445272673 376990846 50782252 116755569 955489103 723219453 923784532 839944445 170978473 376005133 413997789 641418255 469081959 943080606 291447082 345757983 382108146 663427619 47568937 374582405 230737519 321324034 631370097 588908107 61624390 711842340 666048645 692188752 577137405 998798923 985589294 827455194 981703795 524573021 281896246 55372276 931919383 109282312 640262358 858204993 276422127 50041966 212199915 669681667 873661399 696011670 847326335 624497864 373849753 512229167 445096804 751381839 405929495 379508937 226271184 812161834 913576219 332505009 445824611 181803397 636530485 536347320 404716638 745331271 855611180 349346533 979171864 180451424 981729356 480234758 106774079 976247501 205542149 161212406 29955266 207969767 402647216 370212189 343457643 56766835 8106689 593419186 462133362 39711763 307951707 561058556 644838210 176401562 818082603 498676003 574893293 357598498 883751835 358884625 224643304 915346886 267527956 851635288 263457131 73210832 576484418 338434724 251981124 56456345 628982670 538803543 660610157 766280165 511944860 354484757 248100350 936956475 625354913 426094806 308470136 60316753 977046949 407867816 443884526 479285425 27986219 515869652 150259092 821597144 903521269 289038563 306996178 743384199 897364854 339537029 815916105 158939029 312727303 2568752 436785864 302208434 344361862 736993411 464094892 745403080 930923568 312561191 795966785 442348574 582822470 388938148 506173254 345255114 612177309 725561487 823450975 962638230 428438547 769738148 748791907 449524399 863853640 301315522 577092172 115013690 16559360 936179816 863880546 938165529 22108838 154078586 472323761 989792853 567805019 715250207 956179655 695311532 713896130 32416259 409692424 244423684 543453416 269770997 591019148 500236280 687423950 645999297 875968572 329119676 268677404 150309056 181936726 215632320 90943240 328420051 878052368 602136643 35026519 395728789 80750716 324101124 366715154 782122389 326989296 180662694 478359027 15044753 309412848 14668265 699986924 818014671 404695448 913920173 442825589 678166013 711057069 817706900 316949161 333070642 605557065 409133726 986042419 5444172 483850123 13772020 196949472 227852686 199339627 824005429 519573115 397377410 159673974 844092891 551150596 243677971 784508609 686775368 70564120 219961948 753277865 346065294 80406352 344742942 626203941 117095537 87028777 272123149 287194877 917910286 495092568 605754821 445252422 647051246 547882557 606562053 522693989 173743524 906787109 480486943 374321568 703059997 358911617 491143202 310660131 310739091 270423532 641205621 693432206 230715575 704964943 457145941 724300318 317273199 102429896 536294803 91214608 379180368 947621581 85502885 266491258 199026775 220505415 268563295 556971951 507962192 496331377 578407151 336751137 898645787 914319083 27689464 753091739 584056375 331096504 577788828 245399196 50799000 84494926 430107577 131237643 243316641 587727771 956567760 134063861 832374582 397177375 210316412 429878907 379228554 530584716 585524311 177139913 911380212 967527819 148787356 85064605 146753012 541571838 303959789 853666819 520134647 111130033 677643803 166112007 170446429 928633935 809947536 142417245 193048996 869137387 428686722 304305288 251007733 962312788 203373918 576303631 181404264 296070249 305034443 562303101 324009224 38634260 934960325 734909483 925809964 267741310 277675296 114224152 410411103 812841059 987498802 837171154 170422968 426198230 738709393 916507450 717336824 505881379 688714012 92986538 221222737 723955005 573906868 745127974 242675345 700297032 790180313 573842776 601248000 313504250 904380314 383060205 973696710 953667297 676262362 589489662 181850290 920877530 554061930 250462922 679059024 717430564 448982657 625934462 404943252 758735350 316099431 348650095 569440127 439732761 627706188 32997988 90370015 130450479 105798631 913584342 327714879 897273367 283775602 493604103 719581889 206838635 570986967 223384921 530308739 572556573 761462567 416358301 656576128 353469300 370937276 450577189 754002163 37880899 905208745 946573342 803833717 640292724 706343545 531099403 105773887 749339630 634611581 477746713 460045324 303568976 973350272 431150780 612750612 728451990 939004968 86890177 675603186 785165767 32373111 781021089 991525101 148969669 590661331 554186533 716897919 533475378 815633399 978045969 655854291 717968034 748103031 870702054 290731274 679192694 179941231 995448400 502014636 244184158 201374440 502135881 683657299 278973523 825093884 972347663 469012965 274083575 306936677 957106195 545261541 552743553 714900470 500664132 432608162 937424334 235893081 772065328 930654655 595752096 81640564 975359669 343637099 140746241 459522236 941285779 220946347 894934935 152620663 580484010 460726820 531680899 634639068 490374968 344068229 707875514 973754677 759590911 711676432 326355827 117657984 516392105 98306771 113904646 68797446 133711797 108219581 343582313 983952238 342598880 953779728 425816170 929967360 7243925 791333762 805092481 806093106 85963720 578259980 598815934 703243544 267451969 506978984 445570889 45186930 257723375 557393388 228184458 316597909 599226231 930707210 509321487 746154900 684445491 434411419 339108184 780781533 866960352 952770773 343458498 583456865 826603701 789237800 126703199 659470699 208303353 423190072 837729051 146600034 283705788 480606535 616765538 402070335 977084560 266050259 243002299 519912059 922375887 358615827 38916219 156548388 26316686 211193049 148279264 302509725 420108282 144378469 80854208 877568124 991850780 653574801 607175012 811821062 482100610 529567163 185906188 562825397 791643396 166111822 27728318 25429346 615361989 736391277 363761847 201628872 31770665 174864989 131471582 958848716 302564784 803493765 198241954 335837974 88413582 987905224 561623931 490631501 388919167 225790170 963445402 20846349 188362037 344339985 301757911 930227783 707594439 139081507 240171566 338480292 71620058 654308757 636338905 17014032 556578340 735298911 360785261 284954401 454700633 296283083 100133999 832295339 986845852 198160941 726125703 812497029 157698739 792110122 578328345 756698062 624470521 757976383 61218741 93548188 428002585 41937438 405534919 800029066 929828731 497776697 898172746 986490199 363466060 814504813 760697051 998294234 201337460 711194041 101558587 508859154 661985946 517056596 627621422 31757353 70731570 400740606 61629052 729614639 694538763 566281928 125720984 930136052 585213967 926581426 735427245 601497742 420404165 258258778 898312891 957565005 260536197 894067232 415003447 835703219 549899748 257291138 231109500 440253564 389689060 487338753 425205244 935474630 185914298 484735133 62336242 919023623 79195081 351809332 741327285 205923847 316824845 400182873 393164363 832468127 696166065 512697693 517933096 707509046 444284298 313847283 562956761 596212514 881772257 523511748 221709189 993692293 784307091 132138541 256856659 702784437 909160194 905455242 717849041 515798306 467770872 842934732 861968869 272862498 26713121 845345194 771728855 716355737 795755178 33548006 577078581 692892140 597626038 335366046 799026094 740097291 883631309 705629549 430685905 951438691 643063047 392354799 876631183 681379533 502141417 751361277 575099843 546674782 383890728 386727611 394673722 62793763 8273168 850595003 503999901 890792234 167570897 336877739 361887761 991487802 896635107 132443476 89784310 830677750 833754986 717609955 828813653 311865251 679682876 310727607 824658903 891095709 147368774 587706417 689598609 640464627 69379555 141310548 933820288 713827576 149077434 203549864 653065668 611724909 936000610 74647742 502044712 504983744 235169316 292662537 723338587 868851414 146110567 366014134 288672483 713885297 177823624 540211022 533357570 120681526 370311981 30677417 865834459 544157908 877077190 275193421 962993542 409128337 10304061 823627295 79315763 680183769 992965795 147646090 399800427 59622810 190962089 191601790 995045836 884253264 731618703 838744040 813155587 76630131 369027388 254871475 761933339 147982499 316854105 96771342 104493110 58167862 440303067 682668159 530150102 94394243 437568896 948160666 486984714 264634112 997499454 868059351 638003899 746380390 593636358 740092344 258213166 849544097 79022902 67658625 885791520 773192531 318206036 822226995 265506697 273564240 742951894 495645501 498846447 641172030 665192490 348348643 682216988 998717001 26534892 75650245 153122066 617636481 851053447 606342494 742335566 121242255 365803136 453341852 806339494 346772911 458782142 17414603 649465587 997842527 999376553 100142124 989654033 807663922 70733515 89666328 700182970 206579467 544771865 456316670 666320001 908245968 243126130 690071875 611044324 86204695 659595076 844767799 500700401 421681978 469282961 284254459 920866211 962703286 50932664 426330071 256915130 565961157 683921924 6795178 157555589 957677470 236435014 403785748 162905605 423637574 394740940 94558453 538573807 699852386 497538270 336806026 764994015 694797569 822952821 537232010 107639779 434867444 361562496 859191756 387895125 243965932 42646903 112066850 814779715 895625812 847793761 51538015 487330345 935633720 432384803 821817128 5462420 761503921 545940618 741276125 601229846 960524623 918175139 586773077 298525122 945496138 499712887 455540061 144835727 197591837 736232211 523337950 154554708 410621497 911229807 23297428 67197446 528081159 75288139 303735050 511646993 93271674 701119053 70034795 999561557 94928220 124175373 726930676 248062294 686319972 550547009 960162754 671609266 156653608 624033746 532418988 9102196 37579898 677314592 172449500 143252410 851433601 888133029 614582561 698968961 896535570 611992459 333771488 481091724 211202500 649210172 786634164 307136038 748004595 786189844 52126191 146935562 12869113 409116076 671600004 932602807 549429850 73223326 52078683 862487437 39796094 802734184 310761167 374507641 604523023 510826786 885914638 482877207 274663678 53091832 805552752 610746897 677200928 470235955 662714732 620811267 277825639 261374753 850486471 834352057 208514504 957534921 461648076 115836959 130685602 647822420 313156730 251831027 872232121 111472658 141593291 65147691 161296136 940321832 423580572 989317119 176315372 235235674 364677698 414664224 304176533 160114509 457189375 606979413 932947578 236352022 41333956 995812193 810224488 86650434 454257646 526565382 257269205 849025760 958156913 547504416 218386263 296867719 54821498 773420522 220578923 686808448 466999980 943423736 790336608 102987064 462361367 676710824 149373369 995766430 945940546 124255926 594293625 648183823 216217108 932099579 318547806 918991766 378756815 136770022 428266468 729486596 605840077 273990207 312310354 171315963 430271331 45308442 215121483 870525939 566195351 708834354 964086406 458867422 380549721 83034532 904868768 35631832 735166056 258609251 601187889 411774527 903645141 931110346 34009260 120454193 786106381 39477356 424421664 81401286 542952171 838874126 684292087 473857994 403259984 537547405 32085166 406970494 885775413 964550611 549345440 599484487 88269833 589571307 482337943 80334455 251792986 21360054 4980235 773749824 875118610 854746393 915646007 371855392 355681232 18280317 41893170 466613317 674369622 35460397 888516068 450482146 449486821 974988221 240620253 366615211 681556819 286289527 963208679 664645025 432662851 709466000 163987396 14482571 971474910 796107685 86949719 129353783 189921201 106147302 243209724 477107232 728747953 294947545 75751411 274569595 949793589 278145486 924867866 648567538 375251480 14278866 732306199 28317882 164791529 946358518 56414366 553568976 910989588 580407221 727358077 218967275 995809776 499870947 720840333 722160156 421731083 441081417 433465546 790263776 682479659 763904854 118607797 640186507 61236812 677952627 408952667 628278992 961347222 944861970 956702151 891933096 876517613 125766635 696673456 842340698 805647416 590505104 944815072 57123431 933258276 233378931 282170622 59029916 927701003 973683734 289342125 623729163 988592929 528492738 982830764 19618872 258332365 562661996 873874336 131997402 97832698 771578635 315530327 63480830 108683102 335617428 420557294 518879722 500586108 414728350 13039202 231193757 50588524 349365699 714980155 461362510 490975424 575165504 107906272 684336305 826898762 421397741 156543518 841727695 403352731 828135798 233559546 454502340 561906182 980824493 564043885 12289734 851526985 366805596 148585036 967758823 821446536 415813715 564999293 72746113 740151345 266698060 907838727 593963113 168963148 150230637 902603754 141275976 713759324 340468944 927351505 31451149 986611751 750902388 13864238 313266774 241554452 711280051 791948321 361270660 737229315 142439882 893753764 624506624 679947919 805082719 959292618 478338496 800129401 637270050 225442430 18511453 953103930 649538011 528643849 409936218 512402769 820872557 275776586 956243768 789038346 673888651 399825622 850877782 389253208 752916050 742228471 619553685 364316945 621380955 93962291 37603915 463339070 63663420 884460056 731610597 364762467 211142986 709695217 989259838 138369245 237446043 997063315 185392846 268207391 733666758 431175138 273487818 929883824 718829885 721132387 360388417 119792722 943801291 773614732 380926593 283845504 758217550 361531182 598309648 295009542 859737610 79611741 493576902 819075974 763716810 448546806 441467689 363622650 914135524 473788003 897225319 725855371 74177277 330671073 852421279 5398029 736449735 499892135 337540465 120533197 673712041 849265851 990006667 653110598 97645794 710436926 157703454 732348176 629090830 485132515 465398688 462643994 563881397 363819812 809508856 292574270 722488735 54815322 972907927 675513029 104861581 505335768 867227791 711811869 736789424 792273204 112567710 805589417 436137528 651581175 347367785 378161808 998894721 299490536 996687937 926793007 794958185 443529004 930624647 109379684 481638589 222547078 992216677 571927011 799527221 369135864 420985810 887737364 184317346 566846144 509755039 113852685 324029645 963172136 481080475 869288412 739088630 925273485 362299875 540824366 394537128 39428812 951693197 570848648 580493419 25111184 999133627 551420038 147192120 18349558 685622869 554025210 107724119 784004134 243796503 635847182 38982473 898009046 782290417 700970444 657133319 16853583 622825656 740848510 838787458 275294799 363127926 239568900 811887538 577914713 124206184 458345844 10169852 553293533 772856203 159642603 781389395 749896884 942493919 642113366 728067893 383505451 432602444 123571917 516943556 455653110 141253342 582515548 134576403 891173874 486890544 528427671 503027790 837931905 385229446 324247333 390930706 819009904 955798100 999280474 369838570 883691535 112327090 247739640 748590682 792290431 346771981 745506363 371921503 427816312 760006935 973511865 858328356 960879616 595844696 668959814 116191359 909698563 800784036 264316002 378479998 309758625 739968358 275852682 568434699 700192047 630839791 539683337 374060380 404190268 609601491 409216310 854043805 347769283 435869291 358019559 945624214 920583464 245891121 393465343 638915106 974108919 900296329 469622345 131718333 197049138 859906689 274873443 899580673 939287454 944270723 250543715 147475806 773861857 396647186 432621645 991779867 621126529 302437490 505369818 105716634 297009885 251178995 18846938 152110599 543433616 408664137 29394085 307493437 52504256 35965896 35452266 97230461 955849406 373654022 588571633 779575119 110460982 335148090 150278609 289096451 576961909 151036400 776196024 557420288 990393327 891481992 794496160 988884015 817402619 352942200 371176262 760639417 433605405 743064103 373122716 194248068 256326082 333196462 123554799 286883354 569328925 734181139 637039515 365213575 583645377 61005209 224816229 763031522 388842100 436770307 697724094 131996978 602579986 403458780 105372474 383809321 650918778 330496284 608955611 636493018 753792703 516252938 236128040 590534553 860163698 670256402 171053995 331965621 635091970 794073551 869293740 178775345 375961863 625157561 863201546 223885858 204259214 634670920 994105054 153108299 651513938 606574818 868346554 396344689 527252432 151286585 225431924 102756038 305350505 963149363 635866642 117448987 486265120 201418379 536618269 128038721 105370268 737978077 625196369 338727270 15816804 958161253 345071244 309988934 197699947 19100654 34611814 556006319 669017154 921881557 119776871 618686240 936357762 801169513 756948171 43549798 283342731 927339386 257743039 237571759 618955968 701701080 573490317 92967571 107565253 890192477 223765192 6649179 618510881 202043410 203593289 42259550 795691827 618626245 651574745 441028262 576517911 933689392 35676149 509130111 119223846 535788124 406380153 881068500 683265122 576066572 248241276 755790208 647974026 439126067 301766282 934291965 727324699 384819233 973847961 532388314 807310197 789437443 743194327 80782489 710813475 95553733 380097273 692175167 924799182 412312344 108560279 652717022 60571883 765948545 179351173 710426834 10599326 581080353 539265189 54543749 916731600 46183504 389175014 709889100 807872915 555295092 222135263 652185986 128833541 435287484 794656406 241466763 307868631 699409034 482611343 54486685 147803645 824169529 363629408 807910180 480390110 505941089 671620457 440258442 109179305 26878375 650668631 621332819 280771077 693154756 88082034 310896914 564113290 806913340 364426340 752012220 605809590 274186894 382873635 837528714 97042945 804628979 41215264 399989402 399344 593151852 282344975 206417115 682128489 287944941 676279075 969104290 35955892 736212547 394174942 189790314 585212226 534905533 273679890 174102487 58528730 262196951 496565814 670077740 977536090 458775350 505783665 103664527 308505743 922392021 799489204 981988604 912621898 196860739 922895033 429577019 971753794 598068840 802776047 88972950 640092628 874604428 462710866 140107696 758743588 205002968 90520914 558391187 309264131 977697103 2523821 431661389 661045234 967523459 198477702 475521161 417138749 670809796 614858000 664464522 62567676 411999584 991943923 644537646 445116292 281259843 497268056 474455725 157683027 803977661 970877432 858214742 446300278 925772884 374331682 910159933 16171427 451460749 736396728 887922670 578966784 432076063 336396162 779735017 783812986 169201203 885962982 726758259 627799922 798532481 946653266 666527655 159943988 139932525 171836086 779204797 88165779 709867004 588920047 960454870 96794384 152438486 727851228 780364383 638899270 94855307 793020904 690305208 7698931 13455959 251349312 43364699 343140889 168956865 973614759 686124206 938281990 231636321 67358936 886802421 469110017 678743410 921574579 628056795 920663838 467442467 656792723 328719761 844187039 783894334 697287948 653638782 761536793 99100664 503252963 184349102 758131079 393533373 66635974 567526651 487102750 800051544 71190679 724821672 700306556 780699960 901563373 101681892 643558136 721961248 659729356 383061043 646183650 404448959 232957051 955400886 315706844 580184683 547048272 691309904 611091391 551398939 337701846 420374039 262589635 213897639 239785855 610030280 49422565 951091340 655776997 58492469 164798925 175897032 921519394 196136466 347498200 725817530 564919391 249859327 914765719 584530905 818266225 530151048 430718848 192958573 523011974 964300408 583305253 224329979 401291081 199398422 57742347 884345756 509610243 968956347 355935282 459664666 353401430 977718226 594479368 942614673 524426281 572164835 946767338 785797108 841831163 293434468 920322928 192123114 131926665 161694640 923104682 232329586 740637233 371002062 245829338 594181254 418406190 37362109 568796699 174676556 388447121 874684736 362006618 463021720 834194596 919315737 461586856 284637517 972458954 143025663 889749381 426502030 938430072 639913252 662512777 154482730 168531347 418150256 165264471 497235928 993240726 59185528 365974035 691745502 238378943 236178817 136643955 612191153 525510731 878999020 139441321 666942592 917489129 688344679 651773136 156370437 227265922 627837904 514933141 800376401 614478257 213518640 878387778 602204921 503346955 54864665 817200864 768494438 390024675 719198067 233042253 393825296 753739483 573619715 924971874 603087348 676558705 412920110 811738104 484656429 92687167 947633844 220962816 662957854 722474403 291134199 511809559 974643375 397610089 863956079 536123395 937471082 886914789 7611467 934301372 121617422 477903796 937292905 108653184 581159394 301103450 323577304 683448973 390015411 91206952 875703580 663450890 192397051 948538433 937905092 382354039 780238071 772866310 125270993 960763637 140382470 390137599 865272566 270863374 937705922 192692501 390400485 287588621 663814829 861371426 398659162 189849468 237394543 840177323 864541365 606213185 190312650 939888443 564408210 550620370 736727668 193550969 344682437 135812576 821590167 617332291 87025893 3326592 169197926 480092341 566129150 536321467 363744178 40610563 443269440 758048773 953266968 869263746 970362423 843511313 909739009 249658036 136468075 84177883 624709480 715437294 242880518 10971341 200485509 366617893 301708828 721270056 927170003 371105222 296949131 888717285 791548617 997815628 821710850 191607538 401686299 754344074 63003374 755820713 171019381 15831691 411457046 89371013 459065599 17085038 202064309 477274590 412239083 764623437 811269632 589800120 351189090 694391688 174170090 236053949 532498582 924786155 415412545 452227948 698455027 560597855 831017486 258091817 796423725 775912374 904162073 285332698 450249642 540407905 751782306 268379491 941105834 516595405 431134806 973747636 987908496 626769878 123345175 358264646 408879072 863053277 854830563 464377401 965707010 439909884 995190401 716651977 777799447 498896521 330778481 357700250 488047164 486661876 444994187 967249982 847395103 768295239 752742796 344287459 243580872 774574254 156478965 745673786 483614937 479701036 173622623 84035604 161854109 114013548 850585953 472132298 709684994 611287788 565242562 145052743 774190002 410684427 272613824 918693306 172685981 234123551 385461991 513575915 362899418 149190954 459951901 731787237 159351859 142204716 682712298 892773469 417661156 31515718 161562652 205857452 547328939 172297677 474192300 214800448 441676336 609273000 974640623 513479176 974841999 435234069 777907993 294363224 297919897 635528894 37856058 722757103 782175337 445333558 302221880 735747515 461792879 320220985 776672070 401552969 414367992 549736318 172175845 267575660 791677739 962328644 661234671 279860958 191469454 45954076 983660548 200369112 469566455 761115391 36715455 762049394 126398629 106899214 283672105 793193726 881265214 834074595 748552340 10918452 709970784 330333999 356589839 493962211 241210122 114222024 40258358 456581533 514343938 918501523 182071515 549133848 158410310 258835439 763402687 712612736 495666895 46851103 88937682 867974943 353438479 993955873 851186961 695698481 950413823 943899613 493973139 460859076 558909 264978932 368216907 705832373 438859914 946378891 211172643 768251479 816484028 479768831 723031563 954429907 333170029 577042023 479831819 460219119 205008112 122517778 403670719 925023844 123067027 96683733 465368193 863719715 326821585 662703444 745429355 904986389 503014731 713385321 108184783 484005790 129404600 168161377 10401139 221753850 259343009 815509863 52348714 592850283 517274905 749569783 947544818 198914982 190841060 227382923 118409725 5286316 459113618 890167286 303061062 77066293 593256789 626915532 82090043 992882765 368806938 225333265 238759282 596105597 424030191 351802100 704411682 810721294 491530451 609387062 406338826 629618069 897748443 482849981 221542121 181249088 565796713 858630544 529272629 106872356 989891183 992312398 817110227 505049227 480547845 134809696 647122974 428178890 737393350 255803902 397315336 601790052 99807938 125583309 540827998 784076079 254969882 783211927 923735094 349980695 43519902 683779211 821155780 291226246 956398140 880107939 669793243 394912976 289976575 734008809 30596180 805249453 843483082 948636501 684678179 725231987 343286791 245812304 762950949 305331675 40218537 471928854 620952205 534388690 452730130 283212347 252887921 903106597 468447366 370036809 684625420 353042948 356673948 167500419 353187537 741700291 695379515 774826401 24670568 892044363 759702572 905223080 868033979 298768155 527052987 84755711 60214630 694400448 489064643 819970305 384127267 370951170 23100027 452799513 236634437 615540928 322975263 994316208 526142727 600322000 455008904 872096844 152820125 149196096 488377484 737225660 411354624 340759682 255719767 542234744 562391893 128177411 684317737 207105519 75329829 513915172 205679051 395936739 625121514 909267233 483233955 380031636 787134822 865755800 76226289 302559969 885105293 11154691 223455350 454785608 742164969 483289069 786298720 966583554 987219075 674228177 276122962 649999484 876980091 830866350 623560658 366697472 360034414 395308635 899728369 366809279 773269245 752742985 503779853 559176625 215135476 856720794 914830825 444887339 512299454 195501553 699303280 36043821 788599992 134386804 671142994 488741831 979207444 987986276 535869307 435512930 161206546 164663187 586535310 744787597 280081657 458603083 885206722 366839119 907500518 674960247 79139977 429999289 617460670 164210040 499318744 750412575 937483894 980711512 815982815 816369697 974310904 498049615 378917225 695169143 818431078 43842523 306093379 584609246 448022939 552952554 164846407 719407863 921097557 523021784 361084445 69039402 116655385 15985461 33740675 620838994 75058206 155608424 166868673 259552933 234508629 12932825 672978791 542008843 281222983 87185299 856061197 383815962 138929771 800173062 129255783 365713745 194087321 525831134 205692550 697980116 629922650 154916640 476743542 905752403 825562822 369602982 853540141 521407311 343590181 237800955 814608562 374861429 174488349 253121087 489421269 555816058 563424870 990730416 995453385 824056103 868238666 493521232 936441142 945454528 311466682 123587905 354101383 51399245 884992237 79132514 159109482 746715266 591110748 267283863 80578209 38307950 519382382 513411850 971904629 841443517 325054181 803066272 523404214 270377906 399734220 429969211 744056077 569710545 488744435 488897899 334998847 920605784 295055253 27489372 161229435 410559612 232219105 778004339 459320168 406418212 261512008 270972226 989215459 76026566 509620904 469328957 414493292 210256089 690920758 971754978 87494773 695647545 872475649 408087860 792238395 665817299 724935342 543173348 841867866 214629718 252386655 951452167 281355193 561058136 347486251 176377806 182827121 538360328 248532480 292104920 573528544 636507508 483474864 895889153 912119441 499052129 108276265 163211505 158215496 521911132 605098493 751221765 569812256 711255565 216555193 530304299 603011893 945474692 53883255 699239135 827184549 201827378 887991263 869268509 826037838 707995785 794382363 198526106 132287076 901633972 328957893 516310596 11520466 680599823 860214834 785196469 822692278 992060553 560612954 628722417 239429609 241128010 545580684 914922557 7179743 899017592 532826462 256248888 760714017 863864956 941353579 638931808 28703666 790155459 676742725 752494050 951135502 102540642 518082372 301357828 31142317 135177942 945897864 335237032 596715868 858795933 889210642 651884721 519152618 171459303 116653177 967783343 509368114 642978740 499001597 470226480 587158302 398256478 840321861 704310417 314289154 68001790 237367266 35018274 963427745 366623695 929604928 575121749 871235626 849847332 27378877 428129621 319798720 384428450 676367438 412193351 253177592 911273749 768160058 465153341 269682050 420127664 828560348 330825216 157543764 115000441 578803899 49011451 477053137 21565005 576962198 91405157 566100416 653798722 366541647 706870439 734723038 707239052 286985450 845977359 552968349 939180069 748034843 514682653 957783050 57879241 705724272 191028275 228429639 286021797 241914860 37920496 479088967 317239758 727115360 210418599 721029427 818945725 884313277 446286790 494668152 816438507 290145098 428721281 560201465 966743909 594250831 140242880 858934372 603017707 316394417 665692604 512334763 54555871 682458451 683104860 6979316 120881110 998871780 825588854 440416007 514477109 667180259 399582831 92555254 393554923 976133304 185362550 520501067 914715747 366472410 93787553 824821834 812053461 901566717 377416677 11154810 590307432 35008329 171046842 965884117 158600626 118476893 824537743 166583587 757820899 126490276 585863217 64080370 442316788 111019454 372513207 447031497 740926395 637159610 147510859 808762554 962046792 521075304 216010427 117813762 433817343 837183029 240087543 860027457 631214459 297418847 246898659 857015462 756889315 356544995 707328037 688283492 700850270 884188327 276852079 888973014 320067315 476774378 112432060 818950530 541411736 296043796 410271156 961962004 570927994 820267041 444861402 469388302 543279414 52849232 163789098 715992119 680941652 901752333 488747987 392048312 906252243 868206986 384365065 222036433 191281369 195401816 141803541 551330291 510645085 590174165 490020567 377322983 776372065 513923385 980156029 58407359 962822913 898891144 732427005 928250684 755874811 641401706 807700635 210886924 316397584 632398182 749672158 787671512 873391572 286614318 397443212 576963204 80844686 178682733 623621717 186166304 191008939 4420234 249669141 552264868 306249992 834748512 4516332 982505302 946876098 66373574 778980068 155914526 876880043 413719007 992604746 610337046 711212989 382269367 201187178 801414103 433008951 465140292 134220018 775311687 264448620 510757362 236134964 38581817 788354204 417191733 894517995 227300965 578098008 153018559 595011733 20889663 629014492 131366031 687148726 910069887 489931179 912399306 181452733 147974330 362921208 971460349 198748069 692400896 662294099 842933059 878223788 51143460 605148796 18635708 200447997 62018641 922538930 101976062 894967677 413874834 312037587 92687166 780412773 505448076 963604972 817468545 522198332 305826020 631813090 868322292 592425510 87926134 474488008 110973197 790274284 340666824 611254237 838480268 463706969 131550956 855343940 346530675 393905245 383428108 709275555 505211999 203690018 627181214 14685017 282558682 149687362 669950163 712492144 260862015 551974287 629825151 58390702 809837866 113999159 267147680 508394554 62082619 408304767 872373162 548528058 506009460 505804624 386859086 842224483 247280964 822956163 827353553 614419736 975020591 444749160 819203495 935946513 794007559 388367608 378919562 889965342 122104008 858946836 688688007 903552546 597699144 56530103 88129161 225052002 922138663 697858586 432155301 900583273 157536223 697369047 293727890 780037353 864656424 744482367 377910316 620976972 606146458 778358905 961287433 574329024 70986185 269674927 900657730 429040439 168916145 685309791 767413477 581740610 790812799 766057665 808492824 118233400 492981236 659376164 748960472 360050796 567758485 703270131 669092510 944168320 610452034 779946310 957016323 134321290 736864494 772062040 543408042 400892166 321043105 627178160 173670291 72692721 896373129 441399196 233481941 511712382 992858270 993679024 86523204 113841733 523537810 977058505 649503330 118573483 91107099 566776565 445850102 824352397 60088846 311456615 281033760 382182596 551871782 616290213 475995012 166041592 585910406 589269011 287976497 284783516 643468016 286717925 307757108 420921448 850718417 385715068 730858736 330761842 71399424 528193534 8996240 915578340 414423779 693335325 491735970 310490951 925599921 894951453 730935189 909158948 25445157 531619399 449898778 325424760 235869570 363983200 9527074 695444232 46839329 668025483 322188038 7396816 161943262 763725216 563789148 700933469 637345395 744377832 617778627 968049842 868486527 354458982 557807676 153903879 452566062 635163888 703164568 298394437 402499641 696560482 862553347 79208711 100983173 128491351 383348023 88802055 442035023 914237115 878727834 688741950 528411234 785858484 299781900 757114577 13901114 288471117 138856146 706245706 628418673 207246451 652868407 513825430 265620503 334194222 205063284 836132536 259043333 602340479 725415209 933044690 90215358 648817667 652596950 833073230 413006535 458943680 515448756 77645558 487801053 715386152 654659912 868071622 222443046 725581711 185297384 997802003 431549507 976698540 622237114 308749651 611647822 219947651 394017462 257039294 348447118 661605971 511754123 246588450 64392479 654136444 942639746 178350797 752166556 704072451 506748777 686848729 720078095 876668354 570247265 240655664 816768196 777368946 786935090 630604197 440561511 654946081 454603403 993148997 753184621 75134497 894125423 171744979 544506540 374053478 372061926 571538036 375195383 204727539 934142607 610003600 205325539 528263735 636300131 702350171 59097550 428369609 542929974 67467131 828525659 60624488 367918756 72377801 108294464 116951798 405645510 898143576 59897963 450243651 31882724 492643878 897984326 616821823 328724631 70271981 367348042 438182025 735232692 869016866 970037892 393849947 620427438 798970051 379997407 677232712 824333327 202847440 757441636 369984349 98690159 725354106 891636758 74815522 872739185 868165869 354095963 182458159 70175241 360550304 73423193 814356151 852558234 134591382 808210807 343378698 650613362 719249425 980640179 35610499 569516498 959452920 153129152 243389868 974417327 91836170 696709742 442838609 678519794 170968547 668026682 981404031 342577430 768824822 584032866 448161409 916045694 831324569 95040542 950772546 431101195 973253218 506074072 182356128 949475871 697349801 769115002 755954691 959186266 785697961 131734697 173454831 405445636 41787734 549696402 741063329 13119475 424435852 396809301 146172283 599839002 412951233 411762375 860517978 785678370 456752915 451855829 914070479 702864521 229581610 878828455 135809296 703545218 24256789 706234678 582916518 858099465 583632315 113735661 763902089 829663775 270498962 249734962 565094590 10190027 95014947 353659233 501846427 964169169 156338610 435382464 395931741 155488113 476331354 696619199 664507964 10890581 560926905 244572807 565871393 702223872 750543463 572013371 350287772 953799471 728026582 564196361 613167927 492343639 893778205 278636302 619624599 534820114 771595864 825054780 655622906 177002878 21760061 677875718 21479372 402411144 948381305 790467526 873351023 451257359 18574292 939942227 714503249 147429297 787215776 628947116 189657962 89013208 991934902 370825755 525195464 593956270 261528698 372993314 366412911 150393495 581462239 57375939 482607964 283539402 359768264 423195727 497532110 224331450 483947054 656195840 51990435 619033288 770966489 677165131 145728006 960379935 181246604 217890065 989316056 263299332 316537378 269262587 933981402 686817578 850005483 749396122 551692293 907350761 289218032 335007915 65803895 456563529 760664766 340632025 994203623 865936572 436490853 91607170 992260651 618253871 428052106 680267861 526130421 784459069 499556352 992092098 965390864 411447882 717820725 230014739 300300752 499651114 626162429 336777436 255438801 415640307 640958541 603386991 507733618 491435512 12931579 133335295 576736025 602923510 399284901 984507768 273779382 233216249 298635762 906126840 27733901 124153800 489375189 785521799 388493597 507080658 30670741 481107053 283571722 380089201 480958714 305600635 339738955 542976231 772314044 465520688 636877583 195124480 925721205 606208358 560622114 653370425 917525047 213448439 418491350 318077586 971429440 898377896 249473204 46670393 585200280 593272039 519963538 567261418 203586810 700812984 316454984 476310082 928177670 180542902 699225084 451532636 390310456 894104245 750908539 954111271 79368567 70865083 231531699 942565335 682533411 929407225 273705426 281199227 651507292 627006116 496843938 819624608 562130460 353309394 213444790 581387939 31655979 925075269 499801809 846077196 530230890 664875762 219240451 153435953 737888529 462701776 195357265 776656154 355265071 636651465 311342307 151237720 519614701 643512893 788047093 62465077 258294109 327034620 521281193 517770987 715030960 554286630 738298257 476507117 470189984 824422612 990121875 895783072 571575456 441257203 531318060 241056698 997389366 193298288 859478500 26787650 264086141 737986738 617059600 101350188 384799853 548299297 457801837 213880664 409087634 103856412 467476686 76224102 62016687 492485157 858556230 857500810 537693735 81264441 286469270 744531693 562868422 384557630 294782545 138351023 134243052 583949397 729091418 311383629 518321046 211879899 92961057 366410613 248009018 349016642 688294783 922521532 829978590 435468034 842903669 417715061 305798145 22065619 651782660 902762409 200673090 930819114 182408203 237255417 374989913 145061858 153368474 653987881 57503725 375344226 172530481 483410160 285603174 418018975 375571899 881946461 143343000 561926355 156964172 960760659 292896999 138379138 469743952 330867626 329733643 55634869 304315518 771932153 793449287 139773747 874933369 349886695 604177830 292452684 462328608 549540650 23370372 56012657 69124284 39649205 204171933 695360581 269748966 355532411 849926864 84269873 557288621 923111825 76323076 632450275 83353097 294738483 454272670 875681634 301058688 614884755 406709677 784313879 974186884 109401363 740642400 674879186 827337707 558206242 725738340 565953241 501956148 364248987 763098841 931060835 621195784 396705102 757322336 909578712 573943936 207657752 229590082 476413483 866262019 312903656 192517382 464576372 950429461 726376078 171405040 725348424 259110950 613086208 163571189 197571196 487502594 743164619 825536587 147591652 855067288 780980045 738513958 493538274 445967739 208493261 403277884 442767210 339199225 51175406 247762118 27999509 660409519 705140672 947684315 73671590 454389748 895713851 694382861 107089582 719093066 276409661 478366240 359183096 241393699 363985072 253233827 761763603 464410633 870827119 955094178 334297021 868334597 148625336 615173002 947946312 780154867 791396238 112442344 259127057 964555565 298536800 45721803 691321533 427931204 501730359 390497078 493128849 846781971 69648455 199560705 26156305 693596323 930685337 254215591 923314772 165392627 529943092 840582937 978068304 719842664 845176418 656998419 289941062 80151241 909829813 657003051 205765078 280876915 971990460 973576570 238985649 525519789 608565829 502640888 690715924 103710286 719920206 971855603 984847327 99737455 366067127 953363858 871959571 345860969 328447613 386891732 923787344 710543413 443845127 767558570 171490467 363340191 747161602 265670997 29736294 105277244 300687517 527671052 516782115 24183857 524068511 446558418 522864463 966785599 817829582 221808189 461682308 854064548 149509523 815926081 484671896 237786838 591682245 976627359 450318840 516935218 562454549 604935316 557559132 634877064 384213732 960202391 581699623 908281173 744202902 260266092 192388628 541028340 279394492 404110679 307140855 937908869 893757627 9544268 913587410 301444096 131882414 331514205 108060746 119084108 805836720 699774554 680907851 795266914 475976825 255869477 628388813 161521521 792461467 904436195 947536245 219516770 966035951 334768523 362769879 459556820 69530622 528085010 35157257 535086572 364355644 266460402 731433773 941695171 644179836 691403297 242867120 995673433 584224942 802510079 61649438 710578642 67413890 106166490 314208332 969067605 315714653 624776372 581291704 882691354 769502880 109320278 209242856 198513421 450553264 137042632 839898055 170153755 183645662 658710894 238589881 30515518 709085153 723753705 446813577 474495980 936610687 25925666 907819829 667848301 362917669 995808128 38718787 557965147 164085642 472194581 818549501 289991714 862999402 330155606 510441740 212373854 357801561 944844861 208443319 10927267 428540440 1033591 55854573 573033453 253525225 186937003 731493290 436620520 259624339 244719323 252282231 592113105 227848388 358492541 123061547 557628354 425297614 219688401 367178266 578821966 577685990 912529513 510380518 804062114 456871306 736121726 726215764 592468944 95078314 870343844 131011803 384686606 282999348 632421244 738871642 179350806 390249862 568156604 209077554 833915053 503107168 137578460 14709682 74924020 290544839 169997408 70274794 989243557 410587755 983721665 731294521 465506739 102722583 430448943 464533014 60280228 211733745 869312405 590405123 225545640 116741516 356547778 604227716 365240013 730226756 30778821 615039803 73266802 464637267 67380317 688353059 18577219 404115893 515414774 385213227 685331947 633006689 843720618 136885005 155537401 266167523 203589182 415561753 647153909 903563005 623533235 539052494 564860854 666724054 339706412 306164919 33941214 5675476 318333628 317422146 761376023 187364833 509339831 404628974 676492204 869822795 569248036 819278345 462305198 322846872 762952332 213785296 592798829 515481564 127538303 557013817 370851790 351829046 574478333 468498037 736771567 96902516 682230637 703635260 121897714 321183448 954864202 208082485 495879601 686052143 867114291 400428130 458604437 605698221 214842859 463226735 693065230 16662604 125022159 180918899 91914491 595244356 476955563 101058531 202086612 795608748 105084250 944776384 738957216 921600491 350802223 39112161 427640124 129635274 477073221 18451656 776422801 125971325 819355192 900102722 769362812 174701910 433266972 782882150 778881409 472003654 277037374 703670049 375895537 35867881 881065946 719870079 86465690 180548680 680951336 746373093 28485297 101893937 665069994 881014511 138838905 935732908 271673435 276519403 784902813 425924928 970432532 547662834 576682161 521251745 26214561 383225284 368004988 741740750 924631057 29046079 10439820 117858115 708919366 649390334 333791479 242583877 338714590 940240749 191511612 493368963 111004497 134352126 913610543 493281985 742668114 128061587 176568392 240305611 376259882 928528678 215970056 317263332 473580953 269221875 106925288 372598169 633738084 772001041 640066546 305466537 616979426 248640679 626039408 980622131 526650816 839737412 586758477 886667296 256629206 886878099 601184312 583571374 830801532 443427481 493624520 156446444 680073174 862357061 72261319 865243801 141393828 982233919 946298519 276149306 66487303 881501844 284337709 602849292 239914511 73386088 353351280 642423329 167267280 483144310 690554535 985424965 209694218 716811900 548034535 839568996 51972382 506343544 490494040 53613388 300270166 953560822 600339025 66785198 448196677 415873261 641242495 214386604 303497531 141922582 48437222 622075598 373174378 112063193 182212811 975246658 733804621 894227139 541208519 48657749 762329748 623863007 676573980 803850365 38900719 336467948 871636968 435517898 57387268 857900839 710714642 306659579 336033617 745034618 458563974 66046579 815649300 723478217 213576519 144992634 16121779 784616011 620367423 63675535 945564121 127713071 27747882 640565251 211598340 618629754 917330031 144590139 902693439 490808889 9690536 565987424 728246672 689822600 868795488 486842282 306708918 878033939 499301129 371026662 656720665 466192592 369445041 197621071 569153780 222864170 454854772 945031464 224290788 94407263 18946685 253880563 661626694 226449732 364049161 377572602 634967038 85149081 443467497 446443314 287869143 685172823 31423373 621215780 488675985 11207753 622937214 594522224 138950714 877571966 508739708 528998225 640131742 806507614 293998144 340238670 672961300 643580441 525621193 642453897 967940854 529127718 280586685 386909850 475552827 714777534 654190952 205103284 777108328 672504827 1132425 681706263 919959524 534202893 789024151 34793965 777939033 561700504 68083573 532789147 900098457 944500614 999017869 972599792 498443720 46554399 10487843 172955707 874300363 919103674 589297528 908439024 259228886 257981558 804976349 446166202 701238730 535696695 380509560 662802413 916416740 971520196 280923972 482618193 821091890 682446796 365023579 154581107 863555613 446475153 236847407 507219528 850275979 125222556 152120838 24670617 354995705 204093246 736686261 608684009 412684997 326763398 450454389 486012332 350491173 376289442 910379607 345063922 647322708 865347294 440504114 575104530 856372023 581499467 535439489 38326630 18984059 410508890 548676648 35880227 453824235 881424295 669244504 757204826 713773974 687067962 194428166 774532574 655338478 582297855 964308837 313860391 982996004 855177283 15032372 506674019 230064570 409363004 362065123 465392841 715975299 155370268 229484497 154526380 509282257 593139099 671217549 350434212 415841287 630963466 731624346 293555631 570127542 764557718 668540958 232055853 692030747 557430292 478998090 238265746 686011399 263031752 137172478 694231139 425231714 809621400 479776778 397835395 42634807 173459324 596421131 30523400 691815108 271428149 437676569 428483463 340605311 509062080 256640679 187318928 703165358 150139097 657009422 569941373 765913408 658712674 98468275 273938488 468450298 923806086 253318770 483656176 883839074 860509889 11834941 904374323 797475976 97573679 423744305 827023935 636833047 610854060 901559457 412091238 111392705 261894437 152758169 502594123 421612263 915046780 662899779 180206186 469792833 171874637 344165139 565290842 212867560 254321473 856586844 710471711 925557968 57966143 616620932 24327496 283264943 249878359 721974355 557151563 614572273 127045612 370107376 555165029 932875169 655652829 768068552 997020745 548861876 896755928 368310790 407758945 546886740 163277764 824184198 10073590 515954014 479712705 782190193 433361354 325343296 832022242 96426082 650757015 12757736 570181952 206512024 901785483 613969276 292366625 835191701 988055962 801616628 337350459 677914774 580091607 375390874 34111624 801713873 345682249 261151103 910700966 265741167 170884642 846681323 47939512 424981003 780452382 547600156 525399898 754836548 841283516 876577526 444928001 269449575 685180269 258739487 308834336 192063434 313574082 160968906 782104372 921430275 532755338 753326898 567260532 334450797 369091826 428982014 836732018 283742182 545028493 294626212 595652897 67032453 387329140 27417992 1885747 668258376 884653850 171560546 303862877 183946754 415478990 759922904 820676887 785888228 753414415 260694289 684500467 892323189 736637224 66509796 188740865 713823634 114148967 382936652 582947003 504265249 232315615 247273491 109433542 607330144 953955418 731913891 700599465 972283815 701879416 858382198 377515282 943605395 817150921 323490616 556449734 701314861 427361973 875568341 462122874 113530051 53981735 362247557 555568553 744193263 290534272 953084667 713473560 928549696 936392863 592728596 192193606 300997303 785452359 359365082 319746045 231863377 678807861 98030538 460063399 838193505 146240306 885919965 332137404 624590894 581734492 821762348 833864696 404592169 487360816 157356740 55970351 299750680 992444712 256340552 945113238 968958875 387424554 974185045 696519526 682664519 42668335 460660635 537321972 942918741 436568360 643289301 452451628 867801729 618830213 793052171 541101051 46984125 521997658 644398903 671026448 373719879 131280688 501613821 676109936 56323515 62123166 804009897 179968893 771040322 190015707 585306692 586562800 727789804 948560801 552774804 377785126 16786870 523665218 621743671 214907300 222933009 957052912 39671657 296657068 868213660 63180789 805721270 55672051 270270153 412215488 409974005 76890650 790859283 817425332 262837318 606715527 689928771 413248961 452162890 593700057 26947604 439761582 778651756 251868390 926265177 402675207 99147243 386934215 927781612 319773759 504889960 155317009 687934220 241490800 163840043 54501203 935079274 414417306 722730560 963099912 765863328 63909565 461967361 404678898 593167442 538678063 260445872 451007184 430374927 318061276 604929154 586074447 510801535 893259694 254616036 505863687 604716837 523711467 606928632 533418437 359243438 656202926 928558983 63119898 981411351 775304101 391715377 96698849 631108397 627617843 780465886 197085167 581343873 865694319 296510039 421616288 546118432 801691219 639303108 685180013 901947368 275888688 182861992 590953608 577594325 825051349 901668815 283464632 929328301 582133864 358280309 584266377 989857769 384146985 269501946 662504243 697403248 870801089 839122172 223230796 22207423 179653158 225045442 482508328 38589731 779609167 627269628 357191011 878798395 818569893 369833688 315680117 590032641 139035592 829221611 939538769 384634710 156977941 30765358 949636639 554578512 677591412 970410227 841306224 391128720 90063544 537030907 814085106 601399016 799492459 603145697 862860332 77488374 480534273 447257595 268160091 213160603 263884915 397948327 942548691 564367671 991689652 592470373 662644619 127831136 420414960 409820893 431067482 742526708 2106720 844953575 816830080 639861280 673445273 510425926 669940105 154569002 386622568 871458183 486915996 582211912 335526761 73179451 380566430 427695169 618385770 518633788 586822726 962373442 734772862 500560029 421347925 840809354 509485682 168684213 506614247 448470298 357726414 613136756 65766937 627549479 720654530 311940072 166476225 899939532 344637850 199351585 215857543 799644209 260997924 470863452 171975639 285989977 237738396 224489135 110636378 759438788 585565309 430891266 126981297 607746064 438366440 248040006 856690243 208411987 170180352 756706237 677537609 413721943 852256070 726786682 865604811 297196442 620180469 928210313 275941456 150708622 555385053 606023430 457729202 708565621 172260999 238810010 507423864 305756789 41855044 420277172 26034068 560704897 70525832 504932089 338496869 264170129 479836945 894693905 223524153 916836005 839284476 806188460 766720888 172665590 102559532 640572308 912836167 986588046 898313715 36399330 179916182 514216639 505623178 473658083 836920490 753483956 920473630 421283852 833231480 678738959 465740848 837897241 868933433 401172523 347787600 171364794 280368249 491267451 732788136 989829029 853655482 280335450 553981879 423474444 238955653 134778152 323357879 541330107 570996097 955467470 997389561 426194885 282043768 36855939 299681799 797797603 892112625 997561371 338048014 879161226 166037383 831113729 605922718 850272197 481069338 182366766 976699247 304055860 196677362 629035567 756097839 601284412 585569676 259289180 840327224 304328364 211044756 937121565 837319395 64944029 536571976 16264561 645627114 197533468 464500159 662952799 120825794 297564697 816272750 110539238 665614972 135205328 584491668 984816548 413327533 859237643 80467495 260254436 66542914 291682504 666460225 19009500 976631566 314062582 297844130 476613090 697672447 121701676 282075457 637744121 124842517 22830777 568332041 724904842 883112488 199784117 337802782 539266129 164852533 396899638 970699923 995062399 572557826 344523116 996069418 949851079 341036544 106028182 386648568 252899475 967040947 728116195 56997557 302642626 875416851 277416948 502207991 185089282 806909632 221050033 441223616 510949487 531074868 793191956 350400276 184772775 311938521 466921467 561123249 834509573 807380637 43856343 989603040 903217533 856890780 594509047 798001320 13751251 112425851 847942607 567259469 306206470 76341443 337601078 945857908 218700915 301191713 922328411 986393388 89576774 751987815 123961538 651383447 540741233 991208822 603480723 645847449 685229247 76821235 138633451 111998298 701671736 369497666 4819260 724296793 403177198 37570631 947725844 208446521 968100686 489526535 987499881 770460412 97214863 390311895 878596033 220116266 771037020 923197513 561783990 7114211 562731871 240521905 749928896 669574354 692753314 752295968 424108855 576607515 542869049 636917913 124137550 192852449 151945059 311572509 744866786 481993516 32176588 706959304 631179485 866817873 213773416 757804088 670617098 266770492 992431160 939681344 525180388 886440486 420539232 533656624 213087232 579710933 274362496 778988287 722648088 617055870 679357776 267317642 219405338 689805869 165596040 871260399 61164396 633859959 232929505 678495942 492678457 476468731 705412722 412059873 643462374 725183207 597473545 664035058 1243692 28892963 303954705 20520606 855968759 219210585 517169967 879077165 809975533 550106616 991574716 969933494 981248342 397206237 241967470 692779123 591783263 431339065 58164184 313625198 134458106 306446134 268966109 310390105 677987552 458775022 687296467 499955259 238822408 429168934 316846269 630192495 680099402 516874956 263149336 286025496 515664598 673773964 104037398 725383563 866714856 138380377 302135893 433408663 732758164 628430613 94063904 558095514 539040126 859103200 361661847 836165355 622037805 411492872 418117652 898035856 500482867 637192596 167885156 447366058 787017130 888034756 357922030 710178271 679120780 445577954 26412316 952542728 665965435 146490514 580432649 195244154 267539817 932585148 559403786 865888706 661730359 605360133 532923814 878126326 823189837 825024834 340103752 38495747 231374193 417394620 563222664 165607038 333679402 131081635 518193045 198340644 419947660 138804178 629514124 136293758 795060144 913217553 677115821 907980992 37416359 440551514 394342384 260527075 536697060 281844690 701931911 807410071 4216985 665281195 732648717 46113308 720551797 647974442 80228690 323569631 627553110 120766521 56394939 234383358 52999578 629001653 346932756 410808455 232235188 467175119 614037168 268793041 75337631 445781959 230643042 535052222 636748898 813532102 676528718 787290473 418533497 564980261 122499320 76829917 68103293 932507845 68666778 683705609 195321448 892214848 732194521 361154664 16285730 931953198 725631400 440744658 432724107 667470475 649468608 785807959 564730261 501828859 958081386 336631209 684189106 826882808 80185876 373085626 901441620 400334584 502184761 925953441 48333001 998117246 274570753 722966713 34170838 771106214 401991143 912741324 468450465 91404121 357668008 803769840 974814809 706270648 937653237 102762390 431604713 166194908 556692135 903674514 366492864 837920436 535725503 449784367 6053590 813314865 458538044 469132913 866396760 313544710 624364676 647415504 384609304 946551363 104209518 302555907 186972587 521035850 824089064 51879248 725929555 337051843 366395622 856035556 336425774 967849563 782848033 30436342 665639103 978902182 535881065 134896060 694581509 818023198 188121897 293626315 662298607 197620810 243281141 768220794 495844432 99642429 340175204 266832372 918212979 665724553 157170952 81981893 863724748 843972160 317793316 44668147 812604337 390954158 590712920 759411909 216308856 87073198 47691205 800038612 675674702 721902037 958862074 390805138 862837544 565465966 877882596 520326172 731919285 458647854 885096581 562653045 167860659 784463785 968374352 695226689 783297619 579701104 872733156 567593148 758250145 906067767 437436479 352686813 828298009 73504759 421432391 17172640 427078481 411221384 782516150 914751672 797773855 936416056 335114555 612817830 452914306 324777776 897802137 395101664 621272375 685175672 160690376 167942978 864329335 920239656 117904249 859846500 678105454 618987032 227703036 12449245 669704853 686630410 328813970 522209449 476260872 866491761 704582838 469158205 665682734 135973315 602611591 202814456 434734219 901694448 753947360 430497523 434511166 759039374 701460786 126584000 3529575 119736123 371211539 824971402 340878583 680260915 229830819 175438579 39024950 734387649 602468548 461670122 943386253 844256166 440689464 423317129 418076586 732610377 732361220 707604341 953023563 401651375 787045556 62223289 162829634 926369346 258379179 192052436 372123916 200461442 249206011 330810444 46422628 979946074 903311215 925697153 787092123 319362746 594807160 815883064 499454565 211869624 181467898 784374176 971766359 321988498 902798664 716639915 783464300 658156533 51985171 231597960 907871063 401981170 844865746 729989446 488373022 59459434 21983068 964461861 356394581 733435529 757348455 522764686 956871420 549436966 580723736 752117656 246484743 20331062 103536168 200794234 986354820 438274280 630228520 138736720 255407097 555147438 299800535 879760534 127933314 684830503 264427793 90880107 487652430 172123472 147921142 751891866 994117704 189886007 41540362 970499839 262371919 903545503 661165353 484450985 62400972 605956712 952257641 187136191 336471630 542342321 660072608 866809966 504829905 147232052 996604447 595232791 286756781 463335905 449833027 576445251 449342719 124281236 961998212 512458075 971563741 116005078 407879453 81195782 807410642 816253894 478933070 499925853 529816115 197717402 334873585 453990067 583191694 285496369 531597196 664719770 608565284 292249427 277214365 658004139 769385494 814483981 675385069 896260951 65600066 650970317 988810007 155760028 615430968 18054666 465603393 640106482 490944237 978231180 806935746 568261386 226390784 659038776 183814217 102374335 737004734 299250300 959399686 189033919 572005383 811035519 995389153 422531971 302617402 606366310 415879008 371306433 961935019 702652193 903624314 481451898 134877569 487072208 854174894 167751205 642827537 165535045 822069214 11940972 304279135 488484723 361445093 381303713 435778017 664698059 102262491 607797931 250540834 904564991 225219910 177179070 778339045 586649159 136203068 123760636 713888042 78919275 21612062 870623343 376609643 984257076 550293519 451652972 494548282 119346299 499149765 863306278 175170661 68843430 787845340 539734971 477578565 346324119 380614568 384562016 234122248 412228275 309364903 65500767 14580452 243336773 327535276 918438606 541548344 566659976 238962712 172737307 644516651 784618589 592815093 711170364 325487384 933304777 23793527 500288189 529693208 677451535 27866768 499571296 605195506 2292875 837436475 621099788 709437748 783232791 540777103 723281490 405602766 10580133 314994996 627589471 234385921 635656832 266903389 436104539 190064031 470058716 525495847 233194942 715993949 103552755 530866149 308969673 843650374 890646600 514748859 599761767 315573820 289428992 777782520 222610064 223080880 256609258 982284802 946995460 558528899 800073170 312439930 209135134 18588089 679317807 998962745 507444146 920895717 982465926 8891044 203629571 568450974 781079714 774342249 389846977 951292507 564298081 294948257 144544242 408229480 518044636 397025145 278147576 755981460 895820989 637081144 869402092 62346389 240406199 100034078 897134558 573536369 667028972 16983461 56613271 302373702 845885729 423867367 719140925 110126895 253205581 718253961 890099635 918651480 729030610 530970407 394266606 915661068 419663449 437486188 88690932 79453519 266848045 363099626 455776774 569242149 746368233 487950613 586411100 312066196 87055087 932039415 66256420 743088065 112624305 24125054 315907090 558005185 969426114 289515937 242143505 696160576 251937064 905412325 973886543 166516395 839781955 613561855 322055828 230967700 786620220 676789374 772148532 781705443 630443081 103617207 365729280 806439922 173493691 474623762 884934430 635408719 610352760 831779857 468045170 486091134 93972717 61548451 644544927 347444300 724266559 477444219 564749254 760297427 749619639 710613918 277611403 123009272 612962901 582939340 144510580 106589669 887776901 433136393 535472352 856181102 24418338 110160042 989017561 732467007 835643990 852372027 156641182 74989434 578372096 773874110 399601609 867321897 479308159 794053124 451715697 856301423 584988932 479032680 613393280 663260103 734798818 783731412 390001852 331201185 480596716 335917053 299141522 269812254 398166793 126995369 676115407 259034741 6780762 813882249 848250933 917158085 899531867 724596465 406136900 850768961 385710329 95139547 306248496 682340398 85431781 60548579 542023588 108909468 443586847 988449937 911656071 489126458 317293547 548030637 42677044 114095083 469508860 745960550 393534503 490860101 242278288 750884871 964179646 456491020 290532214 612682073 682333978 733022605 568470434 83316247 579101052 974585934 160583839 687392112 14434895 499869077 588677398 263513759 866677753 178362953 981856220 901730094 441035847 564407795 390796912 20999460 317215689 993207617 573038635 414049758 11850199 205960491 323793825 383313711 775386475 431197430 346145591 972467909 99144798 418364146 143017995 828811945 652142013 413392626 37955507 760563379 116573817 962352597 347381122 205182585 981764509 898301614 270175298 777556831 202306475 234771786 155536529 711471450 749505238 764453966 359069801 408611713 335449530 862753883 99712955 371791300 396573058 560029593 474389716 430795022 627138148 877639680 624897261 230819916 682310115 892513226 145138658 578525737 727023893 389533744 348380548 300226810 139342219 221146551 875340888 139703550 172874098 860287153 871235092 245585987 642670014 851310855 313834283 177822000 565245224 716169826 962201298 243673680 552171254 122691390 971384881 813551266 361244225 619447157 982391123 475819968 194565488 360619960 545204483 635549313 168764210 142738311 116205512 445799643 286049845 80382545 527785335 275066128 701188158 482589829 40879065 747879352 558740355 652926661 511493716 962662946 872641409 658670099 547957311 722731250 631218536 403536416 920865681 846228310 678916447 993408646 719271643 604785627 653737010 578269976 738369555 410073063 463098602 14711604 163026024 369705530 917348787 275076306 985132341 644325701 488130515 128046022 374236138 135891143 95344688 314607919 618979106 516006529 670848988 453167576 406097975 769104733 284666738 541967288 782864079 454425271 372915382 741757606 157932424 462586739 299615860 62268736 8492733 433491246 958914436 795265055 970959696 135286054 996565475 394944354 636737846 819529638 679524547 245274732 395592004 761342127 405084973 50937505 869072141 237539234 988650669 576555444 101290657 527668579 161110654 611198695 47850802 532540879 822802019 173891967 371709148 11036044 761948419 751346591 31349239 916050641 678382945 485724085 602105124 981286292 555448751 467761254 944870967 398046711 217706139 603883019 186641149 803708307 419136961 294835592 886913173 989458505 656086303 522920077 87376528 877637435 104739116 193886610 551578314 123194134 412888761 721352835 244025715 743976177 36011345 200405864 588425340 877283796 609822417 965568950 460744243 478337564 134602826 68422034 806937823 95993520 489271363 526255408 366099991 784872324 230041214 28703638 255571462 689638810 856493575 138853799 826849960 610483233 841429868 50202425 380421680 768364822 782128705 596266268 535003467 751825170 433878294 968524091 855427612 881795788 582544386 591079802 904508759 819843079 245086585 990956920 638291320 740856859 305349415 564160442 788448281 275427906 605905098 519342707 611057226 794355567 509028283 963315923 838578741 772639856 951658752 435658404 411981875 729968590 832612868 737562049 949369417 354041150 976638376 852351239 769632645 245296801 86024648 370025721 476403134 112125147 49512647 954115892 21446984 741099918 400308604 120109268 906832132 21948174 859406975 93090309 728320104 404834020 630980747 531807005 36088736 195264370 129197581 972841336 928466575 166553989 218236748 330900110 23277877 300886006 476733535 435678398 882276496 854813006 405281931 338742746 169335312 136452486 926455043 552776024 688267865 412895766 775364203 980585117 90726528 841537854 369436304 514829105 191870457 381975034 72207533 34638313 995128178 801758485 923046231 166622902 210794987 928047097 412701798 914710665 830687006 809378058 995480047 532510591 693691669 648355224 539551151 615953325 416856893 492946735 431626275 941868179 21835732 631086686 68343142 941399095 468359900 971436061 847674812 785942245 103536239 721074033 506937553 415543419 573089798 185301089 560428228 911670586 617332655 196111381 513657422 342259391 227621962 541196652 193710824 548413837 166309371 607802660 999292959 867305174 185511247 404182312 378096742 116078032 853995520 198297796 885039540 957066915 860506317 584880603 691085691 952629704 864503756 591877883 452919239 94453222 340081893 731750149 323214581 559723771 284698298 985784247 35168649 617835096 36965577 610247115 883280906 938744780 213070166 450045720 744202618 418142848 858023109 883842934 238197562 417796596 141278569 37873904 826653322 830614002 467711372 503504332 612103119 909025969 509348732 614579036 85518861 212082395 40246942 630288833 465382056 913824780 114941528 97012341 188440394 845676312 48003009 971459019 583243441 545091580 657415260 817722381 988914442 792447207 270071636 33326289 43066523 217768534 77338428 203610891 711994164 452600854 79886983 546018718 931519032 816722807 54962438 70617899 905120598 151008466 345555225 414105068 552968517 140427881 527322696 67048230 640622541 273231226 862610392 523377945 768497883 395155765 783253274 632227106 837844135 86533452 207024093 411788303 31450853 685396794 585700236 351044682 665353179 802491725 247796450 549666399 637286903 415037595 667463288 510262871 723514724 688983169 144371471 280203084 448857567 646081475 434614936 585382982 137858689 930696751 826296927 62722904 388246268 514543359 914498088 981903761 945606027 970807942 74389621 262026578 256325930 5073956 475261238 708800514 444441895 29519054 279669329 284197606 46202761 345084359 613676196 469852964 732906495 877598930 211773055 97280789 543281356 831387287 815812762 229928199 81517103 514146864 467622555 99838423 686748678 873897106 745862710 202612940 805181690 656031346 936060462 520061300 693316970 570287701 39175796 252716081 478524888 707213225 587795005 487906661 417853962 718185914 89610189 439313133 362883343 907767361 380620765 737691503 807207405 629461525 577883850 870858222 700757971 364566495 392431923 464616790 790064410 533921363 796973723 222663782 816846564 345495767 304475213 128123699 776372555 804668899 723241893 985400758 218742050 852074436 292832815 521633870 242412357 509004013 200875804 409244091 208862503 564896933 916028811 183341843 775631853 46915497 945894188 141251295 124759079 484751152 447099791 608993519 349378679 227004873 750219703 472208514 888724141 509098640 620231302 697631675 146840018 411208356 443224421 992567353 657214575 163279894 867507680 554472739 312610816 802699026 525070164 243536432 410320443 426516434 127520270 169099337 933706942 555780968 650702113 750253868 299486286 193921378 969375266 413275771 458704253 292372731 738640193 835030865 80224129 200776645 109730767 304539501 90387905 246103485 953134127 404342182 675905672 15266270 937099142 71180259 425150649 589175837 431907843 763390926 595803050 899922028 404526718 431646870 307235953 130195822 551312441 904981145 782395848 661615856 870592947 138144908 186767986 744287126 475540544 106088624 974154792 273504768 593288973 716682417 15044669 536336409 975210672 885215994 140902278 395778087 975782571 760050243 575644505 842697857 74522343 488132273 850002579 516506827 961202542 598022153 660850489 89706590 383212797 443950591 351927470 100737695 247414797 341814573 270315947 206482954 545248567 267762285 746837564 323164514 988191235 426254975 719431085 947947194 676358771 623248749 281987150 298955973 898187636 968345998 800912891 762248398 336356153 164665917 817033008 361533621 72519739 923995229 836337678 382024509 946976333 139104539 502769700 702014932 470855624 135640945 442599998 641407385 222163951 604988338 963770258 787256810 947836549 671315871 145480427 913177254 387720028 729568464 259847857 63948576 116090772 464087845 64056240 593791753 386906928 384873247 841488150 130647441 324642325 972590746 930153588 572612147 869096029 849376046 919471056 636192149 351183169 235623322 4307765 288863723 571900906 296209045 876960331 212648402 318020027 285124192 838002714 222062304 852148220 312661592 857752517 935067723 70402741 193116728 49407144 463503141 198100331 408777348 935901932 394347379 107599026 311521520 369481198 999433947 2589248 469923792 836801631 417823730 690943929 462452765 690992108 752315333 907631117 606405787 973752609 550733201 79269946 55400062 221142140 820705714 576257111 143468505 824125272 433260782 316489120 859380132 208140064 824957649 437308260 185193795 73253697 822297669 471788937 891858998 425239664 958766273 200769810 509376992 119324802 401021490 286681009 293060869 58892435 639008684 768684634 33574806 69047977 148287253 465365883 521034738 629094644 902925170 131616695 143397077 43464634 412742777 357812404 898270934 145194822 795871736 965599765 342137662 405697377 851115096 762458655 503443680 49397252 846819210 353017780 141049610 334568762 992604771 204255669 923318202 6481165 763319523 111499264 379996772 611528860 823146784 715196330 161406788 625880485 208402823 936372921 10078854 405280458 850212632 938939976 425683547 914425191 356560149 971654399 71338444 158376339 77131762 737595146 254562024 358053854 120208504 954286831 633049300 68047800 320837443 475924409 506765941 526155299 487929904 262026444 509608451 12105585 509738643 464940156 266448024 252809918 659608241 5020974 35999106 230084172 768007507 867578652 749687656 514348530 173346559 233987655 629194300 365307023 762004896 901706512 113999517 575911789 375596380 276054784 769120868 435691587 243010915 682383695 934804443 918516060 569188212 833209992 482853917 621299945 837780083 250843488 181772084 777873892 478829550 267521895 746699783 258666674 421206329 943549529 263849512 921625288 219386300 626904129 351344074 693128426 674543536 905773321 518482913 317774120 237019510 262598120 123616779 60984547 3214372 397883547 433269010 227967600 943770890 502555344 113285702 250268734 591374702 874030668 92849322 671107721 275113868 295591948 929734597 670625698 826878049 885804300 481697906 74509434 310498837 390230158 198595042 281787023 804394001 747895483 848198904 712331851 904070253 510722963 68353490 59251779 949921727 757008664 644206045 611536685 563205204 874666812 744899940 965175686 170280027 614183519 134190190 575449595 286819848 705018712 902215465 800189425 8862750 527462340 776765946 181362710 506398073 135947068 888491391 910744560 750246070 836190531 244734830 319063937 393364722 262635727 383593004 233849049 908600315 650895577 455224362 608607614 72450768 761735783 528261700 58662607 175012898 413428225 906542226 527655127 846300184 525489731 361851770 154671181 405373292 498150158 620153305 194484043 171004305 458699686 163912699 514391991 420297536 416721766 237082044 644972233 257791333 519471098 224809899 646779789 247253914 697703350 435350377 635922115 276261379 922383818 308995746 617293480 43209122 540767323 659660476 431250440 203139765 182092817 837615859 361804749 679715273 836606988 305785903 384057740 995482790 571604875 252500161 303602272 391150171 625267574 575089544 724113778 66863742 167642870 799252103 907729655 608182693 5254467 37706833 506884248 179880259 232896510 625160105 702792774 616344689 668362671 324373798 92987311 231579776 228224006 811457954 369014829 394382946 183606650 386399905 677352571 860693079 788338732 545443377 563014747 65571341 443586561 626715205 171776910 445972085 727980052 521220169 74701455 671194018 325456377 142089353 522275455 765886020 911831662 185590096 846100289 789136398 546858595 399879361 321095117 862389144 369454655 943140536 560985210 940981578 209565176 839514557 457884597 191366786 836717283 272004898 141433697 968493064 609113502 615966311 22164483 843374680 504605980 400697629 915440112 929307017 337423195 212128656 515493038 901609636 491234779 640793228 875003878 597956746 133831649 485509483 167598686 839646695 89364113 62821781 504163601 674389071 115476653 760393114 567189741 587385042 583313421 38325912 306375667 999104390 841634215 861290780 355097206 788676936 411657367 417469845 758277180 158898630 903347282 385950147 778344138 837707592 23154180 767995991 374874266 899206722 860487324 304798140 594221805 628092613 97241971 594095439 742847495 553989038 476942789 613391945 651218384 239340788 266636496 946133340 195576570 797922554 135655753 325993536 789328120 71936940 978914958 189979022 293455548 452995524 646808298 106062611 710879245 278503601 403249224 166831348 656326141 246853872 608423480 345950415 330945564 608588530 742369795 999478607 722608747 509981673 304498457 313188465 665936942 964125779 642017449 298606293 378220657 944188066 572868778 312871357 112383750 983500861 732617005 392660359 879698707 738669189 406653532 100717122 180339132 883475097 509055640 594742832 536382368 976925768 893310378 549574791 100136392 364435565 181611254 964879341 278110907 159885153 296762318 126161232 314999044 493905417 644900525 86952847 633900687 680930127 976416871 838468290 584123988 879101276 313029034 40162292 854784794 444098917 135595962 641669971 893670589 327369444 760205203 573994772 303356336 869481583 297900691 59917419 329302432 722566415 779637111 584194819 2212465 394330813 700556064 470664725 808227241 813136663 363863094 185116555 872380282 712778677 328594977 165778578 142323596 972059020 750132433 733208255 898707221 9151522 106795982 517097773 20335439 615328877 348225347 125289376 499280021 504046930 407448277 420442231 89445967 754249321 796320824 677753985 796978014 104650037 440041652 165715345 162526345 777505378 84976429 167885284 397171837 207405114 585973217 872692351 148362307 191895880 291529727 801407195 691869801 258577991 618064912 692754917 342929073 333319131 176308245 543610872 396095422 828747710 614344954 480485784 730658466 710697187 635870383 652908050 978331726 702839553 447548340 869260403 371869714 649685239 406262153 748533165 815980055 747949829 421627502 486808028 709565384 462815872 640334220 371024138 296699622 350811300 615397244 995423672 69681821 291153462 127087738 577191283 105972479 572698101 431896083 846300078 214623632 94366196 896596155 583994101 210768604 577671236 226001266 63687411 683211282 251271833 865057579 675955260 620337550 648160761 888997958 854116045 677435011 325998551 593164392 225371156 980649653 583249355 191357652 947034635 602617794 639658065 117308273 308662323 920822043 184331978 55365497 72984451 745299783 902204257 379410420 34690633 670873217 347988093 341506105 408683900 311645913 721982283 243532133 95008286 592510855 651560606 65490424 937295545 285526179 2798671 956009126 535504140 773583398 205344465 878772143 487043156 976245954 530422061 729977453 703534127 470161654 605068583 92654021 352074468 381885708 468623531 926074643 934526293 561059096 476705899 840428059 402100186 427197410 818901405 246266440 508906749 12361588 179011307 799388318 62131545 647966333 57235082 389655807 414543012 332113535 716389599 290969796 594085926 143335243 375493716 59346041 296597305 77432956 353669717 849920882 699303552 146495435 589125973 913953737 768492870 104847751 582229263 136389396 521282055 778876809 40894534 843233663 989296004 828018178 375787328 907145175 557285563 531440315 345654592 640316566 434541910 436751011 277929192 86557959 740233813 739750249 950425033 912352351 638109740 623398463 23990937 106456832 720633324 579667001 798374272 369846877 421434677 10142941 20685732 770477289 95684745 880436881 23005051 610777796 757818529 472500771 607573168 204124102 861872823 734238898 210221977 811981550 93708404 739199425 166197823 35821218 433312615 330556015 653090989 602216684 462608058 437414668 330371848 571960529 878520391 276945741 91688279 68118168 519340656 112978040 995858102 579291815 283292976 940979359 739325332 676933592 2311458 14481899 551816431 248394126 785781226 737047788 476010891 539202554 630937322 531641642 919441771 783861363 97879093 525730432 771628056 377072283 354932587 632039217 266163820 561898962 1720656 189600699 488646146 52726453 423699913 423631838 848633292 11590491 75615495 318802677 912944316 530004516 593307403 245299091 176025701 626643376 77259690 812377532 690878461 957591047 478547372 834894988 112865677 671593701 768097147 722171314 589551467 394107527 52283362 947181462 644810657 999864274 880622810 533754776 828516547 364139726 953094726 294556469 257878715 281935134 478654082 557478690 20745285 519930329 335048088 297987661 550810719 169523692 143187591 56263544 598457707 708001389 653100544 544247476 10473069 257543761 215777958 970460263 681606796 785602937 88832403 791208714 919060706 390973233 339171494 402006730 751015289 914620554 78359203 422065900 988808829 505315525 483554185 441243296 109345692 487732791 812599035 285611140 855928960 744705017 722894005 413893963 648660453 398383496 369725490 289168037 501387566 497591565 672450177 556332047 262613435 412811017 412036904 246655014 814962398 975429857 150320696 483852241 968267392 530152972 469121923 945037931 344681632 878895598 575687638 211191888 452169785 872506322 476563805 472957349 516438179 480601555 805113387 8102507 801269490 568409970 324130270 203244182 584153187 294635530 828398295 746921550 439460181 395618943 434535368 451175658 207425789 768841584 201572267 181329153 328355481 788746612 129243244 562548177 962894534 460100004 826551807 246006792 772667030 776909022 579655789 857856174 406099565 676710837 286626585 642415073 245380643 520454181 229362916 283006074 187458026 796244506 144867536 273981635 982227453 285409946 37192420 161461955 282306134 506557742 310272128 638478665 250331049 339506463 255414974 335591647 262703213 68788866 35778870 427018147 900424331 734241757 579695212 431143103 118448504 275437116 416102716 565130392 239905387 308311509 528841900 508570537 724905171 326912113 177729636 510148804 34872439 261841469 546342249 119132315 397039656 219353542 51764841 134960158 287098854 35693804 141127812 998716685 961345451 62439814 795543019 941095137 163050761 997484262 751474448 658921878 364945733 284126678 288350140 952795520 952935555 829322788 614809450 802251427 140924461 836014570 693921001 186352584 113588468 804861775 867574927 808817230 404643924 364485529 174887711 328968226 825627524 884122382 571146090 276687462 763748153 533011278 374785007 17791310 204932668 830602475 414266635 427983511 773449004 928160786 586116950 227657439 642706211 930869498 879595790 471165068 263564339 98988761 356637068 853804194 830460981 387443357 328525694 378823014 463754207 230559157 381137069 982085496 891469218 530002027 457904989 378096801 464273073 334522235 975148551 566782670 522729999 660492203 635953266 631716451 735979637 412745716 211726579 470818185 396081441 126255311 45541255 645131707 874618115 885068462 983672317 279670629 83448373 446425398 171873188 129799730 750185335 400963860 40583070 83740109 215485903 329919341 925010535 707006766 764198640 123597214 922445835 152984366 628007347 202446309 435171722 477568636 639590186 722922604 57067958 494160689 184461452 514746 529225366 124172820 742787942 384255321 167023570 133919886 167909212 331764281 672188695 401806704 538772027 617289046 165755316 536627055 418759531 785753333 196631133 562391545 218520582 21800394 564793644 93893064 668302825 451950646 52161314 469317325 989146442 188969668 593714663 145488224 985929439 94996413 758140241 233635052 195942234 119780061 19539111 164603546 287548595 788628829 174579268 939653709 105555928 772709650 711023927 519785139 875107468 85001854 198938811 614003740 972038002 485648471 695070929 23445558 723600647 741536043 891194417 698514466 859537059 10171104 368134144 363534625 286424457 689782556 555809397 430715715 268317650 770467805 941786328 803105170 511766103 521562801 917375333 742226133 53428918 682428445 306202404 466399452 896465128 248480564 242154493 844136030 214194226 546828602 251823548 179421563 390664872 29700328 64695404 876930782 295080917 215346940 609489738 878799294 650253173 29422432 839422981 832445870 249882088 282428196 833186092 347875211 296397509 724788961 521765127 748969565 135961366 361684045 435985062 753936730 992820291 103953052 747110675 542461535 653567372 460069155 982463063 828324325 239573209 200988964 512136143 876480707 552726023 238824519 960232670 794449025 639543876 55543143 725381579 450867354 364242296 227090676 545197221 728583759 78306589 531947776 558488282 287291799 142836328 161657445 493306022 548659124 831543665 445519353 805218152 307023313 658151696 883481985 77033263 168134548 579971642 829537404 694469447 424888484 152331293 306664916 184322343 225016483 976281720 348164493 798877695 899303949 261079000 73500166 431246132 727749113 744349420 954213298 109941944 978111665 240669544 230821885 214467602 825217599 639214352 400748270 614730990 294810394 402748394 744420351 741762809 708944735 780386668 368368352 282174322 152857950 235820412 36159417 228637498 612645170 512248883 107561289 220555454 418676144 189952748 174037187 851075484 514440758 944111733 450838309 60239353 109575711 256729129 898826807 651824984 746164803 957182931 777289293 97123513 4690673 809944705 429227977 199404210 522994825 621394352 209059556 504240454 531151380 8156921 31345881 11953013 666830373 343988820 471104907 447728792 603773779 746878193 455318873 710196982 538705156 548213459 56395774 421137612 526539716 808427480 307523576 166821435 915482558 284988390 519636794 706262298 849736710 206216447 837889394 975404755 196986139 402088299 919633081 303091421 185468810 32700549 810605820 994418574 996679265 598446925 202362157 283801841 835987608 5044181 24285798 2231187 917419657 318162296 494965291 473418809 749478231 474722829 443003176 25320574 561907103 259302767 506201956 244381309 860080120 169824531 461404765 209256230 424767897 77215813 629461098 794386191 223825052 573534458 541810345 766883949 99569193 732221530 64213120 42253135 64363708 344975243 345491105 560865599 328014596 787238 411071532 838019381 452224828 938042426 243058096 258771274 692440135 695918656 813634423 847607071 963189935 549063503 328709525 580740259 765510079 198250162 156844621 457309332 541750981 327125716 662946607 956878314 744455760 687583443 503497822 203781397 876328610 472459414 482601757 132995888 279106953 884512512 922493747 510797803 329948939 912471552 152543848 958426688 626622193 299071213 173911727 954330891 680087540 900491980 247824470 469484909 361101927 361894883 206048817 2693103 906810080 695737223 119799504 501866409 875190931 940609455 60759860 164376533 887420335 642430025 203796143 904232775 152959632 279807877 86998469 611725969 397101714 990799038 761868996 206615106 823752390 677933967 753813898 784190605 468685717 506592981 545231202 243739214 443434368 918742503 674651329 703275997 640217765 134693400 467464215 160617941 931091802 441115014 976121281 550800975 307735668 583906997 406489056 847921956 437802263 576716755 151465570 766824744 313447878 79793197 871901405 477159604 726399182 822557955 941483981 317077204 809519391 379358521 912430899 314190661 117428039 660415463 755958885 792775545 724836298 367034841 750038230 321120734 318537170 348756917 932597878 649993238 76687537 60468747 653470248 215057382 594699728 275265645 311436526 961807993 914176071 645485150 829770924 378431580 205396356 142288506 943335250 147818514 627973265 348824572 886533913 235521869 153804526 744294581 988938005 220832109 568944629 586404921 384605547 764678228 330802213 355027867 351514026 184325410 10854147 894244357 685560482 431795762 369273978 688222788 862123972 887994978 630997618 596324456 24116604 281744481 856140350 942895949 278281219 615977030 472056456 570011658 455789780 145669618 123232883 262945302 516217125 222373039 978320801 340410943 44431070 388554057 617158250 793776287 595923173 192276313 647211081 713616695 339764422 817749652 337802971 871384077 933160987 756440840 800994329 421497562 791726542 310381267 549333851 669588331 199297424 686516201 575241636 325429774 422206030 582894889 92909223 581062437 190152824 294102075 158688754 22337217 907700427 512323927 681522059 141989613 328276237 513753601 520404190 491882810 313492801 278139555 43428253 929183966 116545594 601797687 220965673 890188659 406399218 673200166 248004801 773072322 813284685 384372556 57985718 646422892 472434184 269382430 334167255 825836332 849444689 798657304 151894269 324037953 178836042 44294802 722459457 518814619 994646048 462509758 682272149 337906600 802930376 955528238 473620016 47207704 971775765 218164287 960706807 643137589 188326994 394616323 335842472 700086571 645281285 950877118 508114589 826409257 468507139 925174348 961011764 158953118 782266359 216307140 630782621 556697251 836022059 1989584 704737721 166281530 883842197 818303086 353004907 745825068 523156328 696719928 100339698 566178564 490306711 569110719 984422008 401038786 574208761 71467575 55083665 514937282 741995038 811765527 354985384 850813412 700535492 142418986 539741291 511616684 794572838 325977398 105257937 752747892 122235622 689540565 807551777 818144064 801101163 801739788 547167320 588377081 661192565 766282618 505849982 917663306 612977828 332599488 40901529 49348471 103096156 631700309 100665090 173636592 275374586 286296902 174229916 93113804 165302111 24334359 429019228 180589248 557281799 136743440 781819311 301466899 67368801 462814045 224189940 978984556 54060633 149226920 325285470 34090699 833438076 998042821 945707836 56928380 858547861 72929052 135629772 961832378 39170674 696870608 91330681 910786954 660684820 172222081 345136055 168437573 458483820 852479457 975737918 842682651 20018789 218861858 554247115 572243392 656328282 306262835 304036019 171652808 984260435 768551492 429354468 629933222 699361520 934766243 927214718 148161591 268046864 380471522 83842245 586203280 9643617 238693634 230012788 52679943 931059298 239627065 793466355 6279540 435133320 54458984 560851989 607481286 348972228 477725257 852115140 204755921 832471007 258138028 246738646 967369505 569301980 357350385 953417749 938787820 503765376 224494204 496700092 929238724 362407826 105352856 204043150 83720395 496608334 781997488 439286603 699553555 5254688 799678883 46978996 62783021 870075405 916514649 842442654 974094740 907927605 374519063 188718878 975549880 28210604 502800864 569797481 876638582 431751159 770776570 219678427 140646571 747339239 475420526 224477908 598122121 79036166 855307193 495249547 512873089 904008827 508753666 856103643 303621483 617916975 668286196 583797398 305322883 267537629 560343911 768177989 837742606 270877663 551236191 766394047 308358278 300210919 830117311 544509850 958131910 149234239 893064433 860471926 286071494 691965425 7148495 834970064 619445280 691096752 890555413 322109976 148945049 336451214 333305186 138278251 649465973 907133326 616604517 691422873 949451475 227469394 21226431 893250852 438017102 270164144 832412971 770206089 820789149 463888170 337173302 912462766 223320490 574498216 152003864 762215466 689948714 822049143 310006816 410523986 233127289 873242605 846918216 948373549 612437204 923892005 176507390 234010455 572262693 510309303 284990643 642155786 923883391 429205029 853072313 275597078 219256322 456860520 730252 589526066 88699498 505216161 227480902 140569650 471806510 166842565 85450925 725992295 430077968 936761943 259237346 192763693 63389612 12076295 46105401 787694391 371111653 563621576 276529410 985015023 333198147 560077027 955110520 258721057 321544841 514264684 839614219 824898995 668585906 395144516 767210324 423382640 356431402 920051522 133939769 594740906 768383770 461624709 438987708 835528790 477326018 646321285 897550124 444109697 733913196 843485592 864178890 627679907 478096114 243474068 581340664 991606500 830757816 981465638 228109007 618917759 630401477 763701720 417868824 343088618 549805339 753688300 409875982 89565279 176377780 588401950 727901769 934223959 766590741 799069252 30909974 835728703 139418081 246848988 317099830 535607141 86513283 480550096 441605685 520343055 751513938 200500562 913017050 8866538 366374854 476535750 583714915 887870153 792220469 508857750 954017446 204132517 950766931 752141402 793750400 384553554 945966527 336501107 545310562 549274593 774979563 279936612 298942805 650431875 344737375 722023981 197850968 670251683 464224819 195245478 558895930 764112429 660803806 30027749 732061413 866419196 151360881 868422036 569651335 571760804 202790121 854124934 562009246 129938389 641153752 439755016 897905636 698233378 851586801 492122687 839288363 819746011 755889885 677169889 737532579 67147281 167787022 491868094 304845626 942238373 701406357 262707955 852466183 501952054 106852876 715898943 170846263 811479155 933409611 320448900 214101401 359560205 738843052 13909881 31982858 70644741 431119241 999449787 900335063 127850197 287063806 624329024 225988194 157248183 475194656 988544959 280089266 708901458 422373929 226229371 798621774 694307255 287409459 773370726 880650957 179056002 263518493 593248448 259500759 410619020 199181268 975350110 296416927 223146541 273347626 163053363 278175292 421829697 507006961 145383660 642621646 673695998 257757812 761199212 628905497 639184674 532346342 473804292 1882994 203051800 662153413 132005777 869482632 395448742 117553507 359969430 479015370 175819840 647983099 264246835 760807955 895471267 931063031 324939709 163946161 4083806 794254753 185566142 830081108 889183696 624929319 167312557 864951924 957708876 712880057 296422623 888162960 174451093 409870401 68684173 127727237 830515852 909027912 632177589 273476275 671954815 627723251 527251229 949719953 87688129 224345960 460067248 609873925 323545974 889630286 415368972 147008202 733878308 484039683 879995033 761401312 888026617 307167633 123998607 340494070 624113164 510568691 268465859 156014545 844894699 161783907 809774028 651383705 898301543 319892160 206538098 739858863 784945304 104636848 740728406 123950734 610000735 520185306 863109385 713952103 65319571 359269506 402610327 273200632 121587057 761325836 665672375 820916417 134293374 474594304 902163141 66514098 680222449 849176768 368332096 368574389 442216707 126851231 941307600 524164012 220908460 416473421 255048140 664539814 818922318 589803672 180381120 136661449 434785415 839840437 539147542 923161798 310748050 940186449 543436324 477943348 98294364 711979311 667423951 639555400 812045133 498978770 240134119 257603634 34856306 466432410 385132448 363128441 949219714 448524420 377210208 244690514 947166642 11911775 803608015 13426398 596303865 665777270 734104171 232841324 268375685 449083764 207778566 445108691 967442731 794765303 349201634 557467487 720906613 985199771 925324781 511737218 999617444 678318569 91477423 985947704 333337676 193282086 912768729 237310816 459618685 930623037 526704216 364702618 76169913 656355927 765057166 760928642 413446912 561687552 836404729 351091044 244263212 516499734 550867590 56757899 347360739 737502822 788928278 432158027 556435568 940054934 24269139 174164759 573404242 426907517 603290440 588472064 996057304 394935396 995799753 125129998 316581686 537898616 641622568 595097861 77135708 147840335 609933881 703286374 501090477 314079823 652042667 320807886 355055446 629336796 373814808 423553601 585103094 827739441 892302090 529382571 446829357 167746988 117355752 21794725 663762955 559723430 127851445 838685917 122744266 850867142 398321706 447025407 158058978 490251794 422309265 905275442 941812892 729798008 762093578 57930861 820665693 511671198 578532008 945934760 872763038 528583681 110664560 795267843 97411938 245384271 111618451 689019511 26815647 577903569 15480159 681494395 899260556 786537261 897281685 576213334 124449218 902638627 361563478 354882076 487879264 71023313 770309614 24911211 866384615 867091897 79697575 368883489 166935699 98866521 355133619 882958735 489852923 758361574 938822896 636386397 233964004 407222040 208433226 489570151 518419043 623540494 255159847 674521839 435315048 821069462 785530935 298983825 522601943 766494350 42274507 733554160 780200479 133338372 915323792 151493380 251220744 478639011 103054064 76547643 57091539 277338974 34255814 716546457 879934711 852401883 592969961 611192101 162751913 463220245 681639726 484746673 154497180 998764134 316191494 4270463 137068276 425348514 966228755 934863127 637654502 698265 738730252 249455577 675401779 205816489 436463141 400052357 643707706 908987066 369846119 225296661 816614622 271155669 684014563 685505931 228869824 841628102 990005227 917503634 522332437 308264096 144515537 34825105 142724223 807850608 903964645 713985068 527219410 590893270 590148757 193249371 852268016 732178342 934348979 470826487 660031440 662633495 715987216 369523432 414631403 43256003 541687809 171788045 265163797 521799331 361323114 771152435 278750401 748716774 932464588 966267061 56400269 484631832 119688562 340341624 109588654 344781857 450797770 229519807 520036200 51600480 526923692 685271082 198684400 170156247 821742966 741247067 60731577 460762765 783635020 188769661 102857617 33999973 319870958 255716919 267984498 162228567 713898994 632633415 915457269 820319047 139928932 112953676 670997370 682914244 472789506 122293305 860095385 732482810 294138221 484818641 103312019 444349736 85682299 874430359 526433516 30668493 994868876 424288265 924236187 738095232 573313688 855175348 458485690 884364628 432147150 35447555 848259903 949691440 576447624 567783738 478291309 442772893 825216632 15384966 577614256 149401959 796836769 349205846 561829960 663189055 882355085 64390722 166714323 47111520 483907284 742334220 847502098 936554099 919516442 180480107 502528908 65402263 61345731 487079020 132464437 881388648 620871916 866850423 123607842 553573605 373255744 488027385 650993321 792522757 295241688 269669012 420463997 507473432 810645858 678386958 125087813 435706638 563170784 548982884 754281052 9463973 467724996 365484841 551003202 667609751 183276473 499290594 460844336 836329438 68406413 644893216 500379026 244244308 155480489 330563000 726438830 444035828 302240854 160281598 96183341 740595709 23209603 803872010 323213234 14438636 161314740 175724455 411794643 931119648 803220843 409686605 670439321 658608938 148769312 725699855 172786647 499297898 678812411 499938654 371945603 478302586 218583520 497589814 937031878 684110183 803405516 530199347 893592607 980832289 183925074 279759292 374269576 941353700 108603298 928214380 604575946 293934698 361176329 306520812 328236297 856389672 578928710 558816478 490033847 853020438 321060229 166426965 848425831 813787905 651688453 52895555 364861456 623561749 737709156 358284702 918317153 928743221 729195657 824389716 241143936 923689585 165722718 33801319 478532065 65246210 574603590 186233714 177561858 538338586 780962826 951175603 748826896 34263182 428390467 454470970 320608293 144617882 625630046 512546247 353915406 25806694 179026761 162272305 70974031 273990622 1959101 443161397 923204119 190743729 808648151 891411668 371313203 839641380 876015344 536141000 163049387 908354886 244658316 964285766 36733461 320005362 464887903 718780635 454512280 693415430 682306513 128767707 168295027 91196367 886284818 214808776 340402519 466752656 699240689 107334891 672396643 724339423 185584465 601144800 313615986 569107158 930760922 376690206 778474378 395661782 413308848 90684834 249588200 286168524 632782178 493304030 937451998 930864087 257166181 804637450 499329291 670618715 170998509 326391473 697762595 734577687 58767093 206164956 426307293 141168682 453264157 718142810 396483736 785838015 235169551 706519166 989708999 794603830 76732413 953756103 628428751 733982574 670753710 446397990 728267993 382080305 828588023 426376644 4701759 121268295 958151843 356463550 162115104 333538546 402593327 384236631 239986882 356006231 55014140 853315659 564159559 76434087 509164430 224153946 539166547 998922719 43529192 629332299 321835952 178571367 925649259 317412100 258009888 164117951 637820633 273530889 744780908 387306563 708819515 59371743 495297229 126546854 142661914 696560802 836708562 384124408 367746561 33490228 94638773 258719810 456557429 95802591 332388654 744231053 1374479 244478079 544521895 195721320 281022139 94125245 546416179 409127709 184627524 36945977 998995331 450809564 528744054 560106709 7335009 109404538 251583932 963110604 110332875 5219120 156907873 811823905 942113425 439069779 206825187 438169109 935309391 828274728 139695504 586371892 542798003 642445973 254361522 394561187 320424696 605988110 722003605 532191872 713878123 252415108 3792723 551983350 271101783 59544752 415947502 96070633 727906390 730338510 465150774 791593501 451003487 145320403 716940655 31171133 338639356 160014975 323050664 580854633 223541471 621834301 715629553 942818554 505895343 6720020 572961063 562172455 400133389 100098091 796845262 386951985 105352808 987418313 728477279 173924687 421037527 676368904 392876608 831799359 886230993 568090017 110346621 166199690 521341274 793971330 374954419 904644681 343617019 351001539 826190414 125642811 172590058 373308302 33807859 814711823 822797329 609160542 188493584 337398247 233784133 324082768 859937069 192260355 228968038 624888575 740496544 963140095 881691816 720992107 804625185 121304369 851192809 198473324 225893680 259668616 534718444 231840143 895413818 617352467 289650114 686435303 622857802 923751739 572644841 315596561 154778624 652716350 143581573 642292138 255905495 894171276 280393603 531205969 615471272 640995916 628575488 809793455 522723270 804551993 663487835 727135399 826789020 50219120 469123181 428474106 27731041 439465028 661551670 649809656 430187552 814678055 869900323 391554378 734263411 199521327 24737670 789879736 145378201 388587587 624702461 340089882 264149334 295513404 770081228 723175397 582255163 652790113 973785106 718519533 988034873 14279984 552171078 759121290 62644309 798088972 788236492 842174085 496714392 487621395 563631659 967292568 75853643 489162371 437851349 389599588 901973660 790551595 710609810 397613596 386901548 449617337 22715786 706924688 193177108 180046290 681610019 844839167 614299169 840970289 396030843 501783503 159759481 58530482 158453044 554689811 380100510 204248260 675691731 551080958 517093325 112065862 670740167 398979319 713608112 652590467 951625065 298694873 896751698 278980630 161252638 308523999 639686236 957652236 147124575 100712251 63478593 803237085 289133679 479793367 2490586 742067918 468087070 24858110 794866654 351436611 142772279 200570134 486579357 971878165 728142447 984430213 63362320 72085947 283186481 763926003 70481546 185045819 921045369 753992278 556277679 78721387 659609427 314953665 197851497 613329849 553646847 13523751 730509232 670093637 81702772 54766688 683166415 766427936 986146822 631108127 728052744 192573503 474157967 765539819 661521239 424557124 168831131 902257056 72852257 351855202 410900564 563096311 626203549 825110641 991903124 3542609 436196814 629957809 991552515 25456547 323800812 295198210 802356752 646842333 645565969 30662376 168892170 573698845 297297202 358526744 332254291 183700997 732926567 286284450 321240066 904586452 622344177 462432725 453445600 675646825 312794945 275333746 141230374 132081779 751707467 121428687 635367836 321750807 420532028 900301232 401558248 79758878 136789402 231166125 45386250 717193574 823257872 855642960 278418805 508847217 167846762 946391346 204591491 213311974 547537833 969280578 968450641 406801841 841196692 496158455 533658775 758382971 221510323 536175949 600039439 526672952 726279961 797119466 222548111 830457105 719773069 658903526 172417082 693808942 68682246 324807587 972840029 623986995 372736363 800596084 918567733 177362490 585235684 546665460 410747216 996372033 747391596 794667833 425434041 483431147 358823896 248747339 374589880 736760970 494660395 736215809 185696915 519712768 608083344 872604743 914136905 575076252 440960065 428473881 125575519 354337998 305723655 2313054 398473415 308826493 246964471 608004026 251209644 649670658 278308656 925851223 394810604 462938605 792358899 887378764 626636985 524346089 621730746 635826343 621594125 802619572 119752891 810171154 230139381 860982707 153574594 672716084 756178755 903948866 499680204 512001710 380893239 190948891 760172323 41027297 677358101 704235968 915347035 261695186 724918086 621064876 240091603 642275035 502659495 446555834 407292321 823894624 419302305 141747229 774610550 951326463 657400114 974740141 354002791 879184415 696062173 420238976 35561027 923802673 123567870 593715929 3933236 883681380 924683939 179426525 713941415 930484413 897280180 374756137 389327355 395492370 42305305 890457619 169699 478595343 515724459 935579723 895750666 589552814 348543858 89404689 145290263 11962975 961730086 475323757 838517360 755726863 538089684 453508490 607898287 361128285 702234087 191515658 821160524 102838695 852372457 708834404 399207037 7889544 985143780 287936325 838539859 635886360 764102756 43299502 905345835 159053006 847910283 779397420 953895987 966527402 740166780 252605927 701886409 909349024 91878734 358219245 711624983 806179934 719491115 518531635 200709371 980088178 809681873 619652910 534423501 791800239 572236450 436769063 653320921 257071983 118780826 215386480 572127027 604497363 856920394 359117141 169648982 408531387 193160120 125833785 457862367 743787277 111092710 231942212 893492907 339141409 534529384 696129985 441448560 718280651 86531808 437760546 80858672 57993209 867872588 158840683 790027931 974795412 753822824 744520290 803183029 533567057 884910890 967700566 363200521 384941447 322866818 204953698 708336636 524712799 829387134 913686236 640433837 800827149 739802896 882838789 377811931 476739363 766679628 136530604 571302591 701601045 321346767 308494597 896783952 623948156 420939371 161822033 293424436 878151244 391617383 248563772 689165518 723846424 349929359 500447714 68875120 697601363 999229105 239725199 646572616 920551813 164620827 314956283 281391098 568566133 343614440 914035757 180078316 790369273 237169621 359772384 172323140 112743741 906853776 493338914 298541438 280070236 130384730 557543997 903171680 792511416 673540907 252168747 388305846 882659861 45194307 433505135 39603166 982650622 144783780 130106499 508014707 615301096 810532982 773173297 118456609 510025974 368890069 708951806 790647941 474224014 598211334 198011495 276509194 110392045 37250488 53335736 50486393 433663693 567878543 335185645 209877035 550517298 186071423 821290949 539340166 924816700 444897101 631805259 255290492 611532594 866853751 676987679 339927235 112703894 757164143 422363521 963524129 279626389 634490797 480169578 527189686 906015234 477760790 13562858 761464096 441895369 707581047 620626583 98078977 648841427 483109214 561680618 60955515 498647627 894960189 919611121 78576854 567763079 509956567 829831473 384484122 564228211 839643041 816805698 999590666 855709694 416472876 494318607 545952988 616928143 102678550 366417669 77535140 866083382 597252453 987441003 549817219 849331240 662862319 581989586 639866161 482345494 394178117 474295718 504705590 469548283 649938981 941319749 81957207 530621699 123913215 881160619 279239510 911730234 318483873 974245190 431058486 49711539 653717712 292644080 876414320 320683580 94473006 811097976 697583647 42005706 334910520 538058618 225160302 310408260 124283666 385324664 326319380 276102705 811472507 61240900 497329342 769332587 127153382 906916085 613566288 309778257 722443825 958885539 404961780 946839046 763041665 213012960 52340414 773965439 862781317 731291238 964870409 454051919 298011009 428301378 618455172 455575303 747697394 56121729 911230925 388650981 737869424 337529751 726968819 608916082 512151825 48028542 34262608 132629456 394862503 410903870 141229622 273854320 923776252 147689909 818630623 835744975 197149717 377516358 253255404 844213615 561922981 887180624 867435528 632063639 460943421 959465299 158960263 910330898 185278762 753248931 75286104 885761112 268032237 603792771 908615796 263829888 225830567 259826460 96434707 967746463 65938696 526411493 655421905 221536683 514892873 837261913 36585595 524334522 880841653 255926169 742409655 425568526 965317545 842980750 892324299 690328397 221725144 880643960 318998601 817540224 807691967 179560295 503056458 200734871 839796908 376665434 512457465 834626040 526717663 757650801 855451350 711055843 131748941 158274336 506758765 708459024 135493908 382212047 758423663 87771043 935374378 764892208 439129054 820372292 428610598 954469096 33656474 402252245 862350440 163342005 365098433 94709759 930105906 848065695 610432553 359173815 398191521 660255750 445335081 898733395 410340854 273924100 676654218 762728501 695056194 570604138 822867313 646713508 449939956 334669486 756111436 736502185 926116785 859285123 116209647 224769131 818045737 320006578 266185414 773636718 137605400 718111801 57787646 4750675 516823235 106949427 240182848 762244150 816234802 549761764 377190124 306789109 465776850 233179500 649212670 419722646 87626927 229546084 823990014 117457682 671974161 164937365 532251946 845207849 876947994 298692687 601824644 836487373 89534091 298704405 522667176 181710736 856861790 882671845 602902392 31737136 989803774 843531412 25087718 860869829 946161801 588696080 968138080 430404066 406282965 767222375 626800072 693633873 677542487 148221791 532786620 648858597 229085914 851079383 390287908 823372761 993386180 790163316 675625589 664944246 125213401 806550205 111078627 151145961 32762481 561669974 392017652 275076081 679490894 466798518 233436463 954913141 870825673 523230173 290365167 760087814 580668152 827248310 914053686 981820259 230277670 70679290 527269027 420057049 583618696 555709281 22144764 682259164 874488286 294683436 321779495 108953697 371931019 938863546 872913390 970041005 455877074 594649038 376581858 383969725 475623688 628789458 582737895 858858604 534892705 752832547 3545724 930567954 281755392 279303995 930708901 341258653 80726271 560096514 608429157 215985778 53836520 878125255 853168283 544688199 533099765 178744921 843606814 547730749 473951854 731796801 529803194 405619559 626311102 487635101 465822165 939821390 613502689 27824076 857704531 752086924 31250838 213622160 964274775 80638719 196843 438962007 168753733 629542993 214460640 445051334 330849803 123500005 553805858 89611563 436240485 224666848 40421983 270178505 646235457 680076074 458433638 969396937 331561376 277681371 736776411 447974667 302816387 408924819 193758588 979842741 29289702 462135949 223811828 787010 467680234 432849049 687512343 824512381 354943147 199368567 649528245 104444522 380134722 959722443 934977327 59422906 575097979 992348098 371335842 338055558 65266087 36633753 689398789 778089858 544263840 441377403 453862909 510739779 884319833 175947943 981269914 191162069 512466149 59210876 406888905 19919805 839251624 110060053 498893145 858461497 245568744 804209679 123679525 879064343 205724308 998886560 639357561 879781332 626455576 952841161 259120001 803713183 892911636 566542602 552112466 999735475 349922137 744093772 311109258 207552014 982900111 421935036 818032349 816425191 621120760 392938403 341725187 691154873 462605217 456041012 764940418 916536565 652878393 653499863 40159697 971804635 97264141 103686662 410185304 213988000 394011527 729730872 229009339 350376739 688942967 479688254 81258990 953722005 272321759 998157880 450263725 688795183 692320529 868003639 678470193 930927796 755735331 205547283 191447173 915213047 736628287 310450352 864039059 511412185 550328370 364365765 14583598 61615120 956289208 462984709 744059853 816935252 144516230 770543041 496831910 89836206 663523390 56225755 528942256 120496954 27883594 406698227 751225635 610226163 738263549 16443424 111248501 490017789 600050203 736729150 520793218 512603447 639232875 375963216 119547899 655869819 514004025 681747815 827255850 506824615 224702321 908159527 131799711 747035732 133741821 79425017 983911970 873424799 443230938 990449260 436870483 608116632 79734222 298898436 957048588 539791376 839692836 519961808 69013508 182456302 939922451 661645056 648208787 233853680 226908984 825691122 518167997 541786646 25001812 474067891 515230998 917489933 37791632 864378514 137188933 662931727 598846130 974720873 674705955 15868268 720953330 776830275 860348094 284345791 761482083 451162129 352517382 114064311 223650886 746066506 35380550 855732137 793669567 448282656 360856867 138410606 431869898 816952145 969627157 936028568 445286008 18239424 995608967 462981781 382020355 977614661 585353855 707696964 947357249 387160896 272954504 810546397 892828774 910597869 123197511 863473601 670762515 547569676 906451784 959045245 85763320 163922412 82058744 783955832 884741492 709327392 688855607 605322791 197349581 271870912 564359219 512474121 473916844 921702130 366971313 462428167 53430615 146534825 610147773 313393389 226188722 661179464 438088145 135048291 569822642 953595666 738756795 230527298 778839522 671679323 53907556 518717707 797059072 980416186 230472184 33319545 747533798 750919852 154564851 734649003 577872773 496785919 18888786 960579957 542676336 979063875 491385726 909112190 213720240 144485139 400137210 402902695 346837893 434164783 136235979 227271557 57573277 219817838 271711919 172650663 141553501 521356732 437184411 328442684 317364151 707165572 440507811 294593628 137483735 78468224 687875218 212482370 246070677 983913070 995027550 110855401 821970715 935828150 4443157 470914804 616339866 970690506 493053396 157059848 474135008 43587411 490276868 556245818 211666079 821473385 250730128 268005075 146224662 984062875 131862294 392773944 165311000 702993303 497589067 571106799 298617259 638392361 559175793 771674264 250393057 511806429 374326676 929146470 468810368 713159937 249435411 908510151 826823825 72720980 778158858 946879706 924714651 535696897 226588423 438620530 10811762 284775537 471674584 26862323 613758492 357405132 612583755 800621826 562221739 252838037 266577162 904918958 779845106 803686223 485838065 79278571 273503640 198539437 165783061 220201519 27261482 643395666 578938043 772645837 260813573 804643383 654818063 250557588 438185780 632418435 164734472 55463153 652186780 747444417 387622679 388653667 172787831 665322550 273634229 190381982 11930916 587890405 882686185 968646662 846244136 300862707 198328250 945581036 437613667 287065054 557337110 65630525 762829712 516662007 451597948 282418954 939732239 731122335 716956247 850504753 82326345 769473566 673830640 344199117 395548688 873980859 535050247 33023213 404622074 127764546 275462457 508158027 654252221 753057633 245058046 37195998 821392528 571657922 94876985 821478389 17803737 546048123 615286056 390845896 857674841 506028161 792254767 200531150 666122270 393345455 345629866 111586182 864634244 892840711 460225504 887029077 495088664 359955306 236467578 149337700 152301573 892962216 564744955 937019337 243000588 596971225 589465872 569123903 524995588 290783412 117700178 71514863 766750190 317023873 847349939 251637783 66065503 906808835 588868896 321165782 673792957 976280196 279653936 348751613 358722869 212988439 282519457 36152163 82486510 603160664 53520220 544244541 743133035 95147367 114224019 65939539 977970945 603376646 159505540 604009879 617512092 859943428 593170016 97322844 753396412 863541856 270533609 859225582 582755512 414275498 780194557 582025352 765149334 592295310 723146131 896361120 942931789 411548649 168777256 433100408 807068781 779903900 725570433 888368007 319172010 431934161 533240682 188350617 705415894 715383994 583237703 131578398 257975207 453584898 980826987 937231454 568604866 942984395 146489268 309460749 319017674 689682079 301887052 350379105 926508325 951253752 447436475 563230380 811585792 64318205 542800809 658160609 871358458 808174040 178374973 547318453 520518754 276355975 181786259 232296707 734660567 479919641 769683596 526728391 197985833 41143352 103932831 414842492 703508241 662101298 274157307 71457186 948615793 419422527 900900825 967962407 783781961 913979537 602583166 645757002 728835943 642209695 417261837 473918896 488490569 968984643 116169165 40950583 482452354 956713655 263258048 255874616 981930849 704347363 915638742 455375243 264238131 93419513 231863682 774358572 743798683 172764350 824952348 908256798 501199302 585217926 429031949 295613079 910770985 606720090 948270693 470915501 318110126 348614096 827964571 921002809 150443329 529674147 471362284 208583734 515666438 34454537 83795820 947874755 426267529 930810878 604429140 441830894 313844454 826154489 776904966 450367486 650941799 927811820 905879995 223747829 913415540 975653300 421303927 378423749 109550840 884544349 803400356 412377596 209866594 827573688 375596890 6908788 391976638 439390008 145245845 538222781 21795796 650641905 229441053 729869855 764137600 556972074 704418807 620036172 952479523 461351905 95704846 410294385 668999701 467499250 679321862 102075273 129559140 175855318 402988009 906399760 718233669 552018850 953174729 468173216 438345712 127326718 708499672 72995422 524318276 158821882 225327165 266556645 162923161 575835042 959656312 911882641 96034351 538024028 125514098 995816882 751813890 28611448 227265339 874422050 563432392 365457716 484508373 406467395 520417303 955058469 111492873 996211354 496562566 477644703 708049967 356988014 376034676 978849423 33981401 618774426 977486863 808186808 326327263 701288065 450549152 73180944 157008162 619469369 748526248 319798315 657939951 85192148 537524556 422787983 916860751 502685795 867360312 506200954 528914121 703586750 452073739 660769080 540130065 802919782 208315259 623054242 708262547 478699171 499164421 449911921 625118196 948946243 498257280 66392205 914389323 634993354 39423954 297680085 456858720 72075464 855387333 65837393 46179980 67119636 816716517 977350263 349777392 424142005 534630026 253468371 809705513 435462519 584388669 370244329 750222728 237025902 252269120 143787721 25129935 765571737 913495105 730863333 34624724 848089092 437493253 376370424 84143398 784724639 422267687 502446623 388983354 268967852 455791798 507548685 901553417 966802485 890688396 743538410 857095519 949136450 51186557 519169022 290848342 598294919 877532385 696762920 465501514 549923634 309427375 353407022 65759530 75772427 411826675 900636751 179843891 389678960 891328712 998875514 584710721 246176043 804696722 617229577 331805324 447184220 74217562 833565589 837159459 651033940 293633233 358145408 605199571 225635731 866160928 680943696 255368267 145122668 244677555 90524357 171494130 687476872 204599786 453948672 752718548 555148584 548274613 152780281 563526904 982247506 61352283 976529835 227797012 389802387 138435260 43117314 210901547 167519075 163749658 721481390 134453299 582647930 357261360 529139154 324296448 692383702 376237177 241808672 112093957 930390983 80561851 233949898 844517102 73977168 88583729 939353068 334682680 611662805 868379089 36106634 332412294 921021097 342921331 548876467 795326263 415110826 479383842 254283466 491990434 981685877 743399053 697989326 16045051 904344064 357439217 621599652 659823605 506701699 248536370 601685283 715026336 215557112 466431210 843842747 691971702 906763521 871621549 880518163 989894231 94709829 380557848 848350439 988700267 81011180 899760447 246624760 46790280 594969585 929362134 820651137 292842151 517442165 404096457 716506643 899883190 549503359 658507504 327076385 183759039 904734344 526844679 898155697 575887668 5773495 443971452 109543564 298236966 931586013 928265626 397834009 833702389 41982727 752007217 475452201 247077037 387549863 786942884 262046689 241385974 317397741 308879071 167507644 55648275 190280436 796241986 273940175 580951309 77234435 853862280 692259639 458196104 878570693 777981991 426434039 2213356 506770156 412003652 986159165 897430269 758899574 584919661 564435067 369754023 640171533 674018157 84556471 611253249 247850916 697053390 856266303 583806577 475738257 709556639 780559544 7849372 5639386 307763293 888777808 279457615 415642235 388424315 923574086 462965289 220603319 404022046 108309566 965363116 86496404 903741456 684037655 396992460 83016554 591741118 553313502 292438863 948965031 77353298 65297960 440866333 136951298 861771838 457773961 588711096 204784964 377907516 956031886 356565303 296193801 669750297 466549171 482717606 745590064 105112360 373387284 726687870 348473965 957847018 820652361 216415478 466980737 646680834 567535652 395245319 590137964 974492098 512768401 182754115 844143965 656385380 248307567 132502099 413645681 832651421 756336137 362911760 216791156 631609324 640539620 534830838 448983654 176040047 887587442 69128634 974643461 733858483 380149475 214866407 692746014 19502231 460765554 326296073 719452506 601709234 480797530 173837603 79451001 395027637 244874861 16707319 983926642 965694553 471689561 518630962 613280800 861925019 733826208 213437134 693308770 227628784 703144002 504910552 427379115 16225948 622026534 447476611 82705973 506542009 136558117 435566595 36433255 805807030 836845399 814944789 833417315 683599522 932502246 116625420 982403446 293150265 986932564 299241190 804609337 509185902 522064804 282923367 276886443 292190756 371962726 129652271 397799238 268021081 775195032 4681319 94892459 9864340 47043040 724035308 413215930 599909365 525547869 21625773 435871118 748910883 195761205 997362068 666822758 504872310 860119814 551270281 327235752 792744001 261419008 133021383 964780099 616283111 885229091 3216269 681466106 838404705 290528861 588797742 537397388 203221908 876427799 188856344 70074268 908570564 543023763 140309392 904919595 877878662 471953340 687801329 101180655 935075162 925021557 838409983 991186113 760370460 768316992 792566833 429131747 674183870 429851485 578852355 577561803 691079868 145782901 584323211 394109648 176503670 406383570 919323228 410776536 452339358 947025059 920506613 639538885 904099744 856622530 329814888 194567569 108725354 37420599 727904959 942325260 824057768 774955016 198709055 196707089 406792348 715195217 219783710 439628243 158104388 767444425 112424677 295325973 964693204 375943939 270019004 917677951 761028894 38495558 101752868 636686963 977064369 49791663 808079286 159625132 110524138 609400268 401900017 926226605 5756651 517853761 288533603 490200129 339049405 387868104 833563919 286968213 883724173 602842550 819863485 284316653 787274402 579512818 192314210 340197561 415027208 621433668 125313297 481328209 835219236 280367600 661972134 139566406 837207091 172399014 343084020 791339526 9884309 747668614 203827333 389203897 977245480 244509059 979168365 879016934 821900850 665732217 525282707 209365875 901095005 635748908 136759261 865198145 423763525 906070110 7787312 225915750 712611643 633164040 343667788 625774788 773568518 921069134 149749216 216092406 58470191 733058226 171684237 955555128 547918062 409642631 791655327 579604258 718351737 100205846 442387256 822140201 750032771 236611137 276305337 172215449 248882225 665139292 17939076 99224070 333560194 81231797 39734346 228251638 339754788 409029963 714955619 814863854 760813229 87065935 366641957 378449028 994275906 663873806 445156014 876448694 166664867 302782787 924398478 531463692 564509593 682349036 593893027 562530350 411355373 920897510 254247007 401636348 351460185 826992265 778865630 709655964 145982086 606419161 879582089 436975581 873893253 41179601 463329512 652120265 89944538 935132482 187189777 653301521 684131109 604855004 488299156 598093029 913458642 114893190 644068929 818854009 707258685 827188631 707080695 250443686 943274507 655568398 34587067 784059372 471903971 884894045 309262269 96411203 412345800 723854848 692273687 48329758 88278405 215191947 521059958 193255653 174459073 205870153 930041994 683428098 154546210 620936282 929555575 120698351 455362571 594549837 179869009 401466272 374654522 93299792 98586399 953644812 835701029 858012201 121469203 32791625 620731768 501734483 21086199 580490198 826098672 306322373 590257946 242371401 298893328 327299601 780932323 252701152 789523092 959639265 36498556 991437303 428882467 115442100 949049643 409295964 555289444 105625796 797175715 261724271 749804648 225659631 311242634 652710996 773387974 781158574 97061124 38358597 585157471 715833065 425798821 58102595 432554575 902509376 566190263 460118197 403047697 99035339 110204461 893208028 340356356 966949120 812979990 312999841 863286597 300568997 976638890 170356006 235929382 682598357 283708008 308557159 451105612 203719405 671155832 326692048 677728565 647244184 915830454 363110201 483203798 792651763 729918483 294396885 230081238 714778560 695224416 800946469 623238926 853924858 339450422 455903826 898613489 121861851 642754643 311489156 97366331 796849320 805821988 319013711 812106176 499767896 714261451 251481716 412129041 397287747 209907204 108291348 984962918 457918666 505513608 161129966 551534844 47113561 63645277 112591076 824334568 548410282 433163833 707347508 693022331 251916509 672981526 856479110 770293016 125058344 143564866 334020877 206004835 921640883 576660866 638901033 663181757 448096031 168396965 734365585 78807418 547407986 880239777 882322632 405079918 425353549 78979142 997519459 202302399 258355134 477583724 890205443 18682194 203072417 926530949 540640782 686917633 675283821 782612478 268855790 719293346 842017517 605653284 941598769 466979686 583671652 995309615 513476063 922381541 114797635 870008444 815462862 334736486 72308671 669201874 165707186 13830359 893413089 240669004 706179635 973109213 87742537 249338298 128494398 862017148 724479300 854650567 952528091 382270525 988984576 324996873 771673232 955197926 817322920 560823674 976495762 486173790 338487918 601651585 189331380 326754416 476764070 987112981 556826949 419725824 678119589 388670291 839070601 547888482 343868539 154395356 775841819 115673641 501250179 857704513 595066767 480511954 170143194 802515789 577692375 813113831 500645456 424519467 911952002 16687382 2380903 957043101 797285120 752571905 696201319 959888491 958022169 779912117 398446280 596652906 180008699 618809907 610543327 84206629 149384294 73786719 327542089 889397046 458924936 441473714 743535495 559134455 766041101 163932381 270917172 686667486 819293373 170802181 837679421 405396830 576923927 161318986 521450150 821301599 179732745 7287142 988614058 406191869 994697943 879624905 233688531 97087607 445755806 234231658 912771703 52863156 290805094 449474977 791554283 818996176 38273187 727836109 300436007 370150068 29877234 450749476 870303737 185950686 56585658 513425103 716837460 951466941 179549558 501955392 535765141 700775405 11892641 829882577 610173778 718860213 63059207 646678275 515177702 186550649 614530376 232000113 232101868 306886036 357135949 51258673 747823973 571736416 964785968 630207357 944039137 931153770 875752437 538660655 626968021 524198821 628642411 2879299 808834591 506937834 441212761 437875304 364966678 624676087 945233645 762547300 213561499 985824432 780828440 166232219 583398397 431169975 334771950 313723511 631419746 904991882 407313843 383035207 917131859 759271978 429168105 63765058 686123436 854517130 798728672 950668043 671513207 959703328 283322043 888478467 835844868 304254188 764922587 339371178 413702237 343795932 122824646 20779718 650483386 639908268 221191532 112028616 429428870 479464502 882778254 666434119 621307165 452461945 607397447 865276632 155839624 68556797 680161521 96554248 358506543 611439627 720247754 974317173 287585631 578244630 104854553 643936595 108001139 440136112 942085929 744778669 793468121 528509686 675060132 974918026 920584273 484490941 348110666 483111347 733725332 757271198 529299716 324173054 853129848 82900103 661287239 902683671 653730232 796333109 166803511 6642173 380396067 131754339 575905783 385975958 666903148 598332539 816041593 339601938 407956614 211884160 214355826 809779758 816818760 270105180 676030317 249520441 459148455 441178809 350420429 232046128 62556918 353118809 925499854 696031211 707333861 300266664 233386207 92258701 704198520 691561384 604102696 146992933 154077312 816571286 145217432 713754298 522097728 687165656 302696789 813732648 934411285 81840240 956787149 101991066 609206041 974315352 70085000 759170913 913027560 334505196 410007077 274965397 23016782 403542592 413999448 74453658 66620051 656998180 150818185 386005131 328128773 457547698 84438091 182687803 576600275 575468510 55606202 419215913 429185590 107407114 461471372 632135566 821517240 418792272 110678180 611379844 386015668 80221604 646934952 929463638 38733389 272433810 356492517 897225078 180135767 880855805 75607634 192604828 946094070 67896126 940661215 331166700 405162247 441560964 745240266 741008199 821560675 988111260 858425974 503324557 240308978 29451840 556475487 834886041 230551700 454481728 605456811 172297529 318343242 574771452 811916459 867628051 519960865 183687963 515389996 974613347 617787931 779201799 294779724 42644290 368349 200275731 123698605 231870680 495311404 357178893 157950154 4779975 869864561 930938232 259868239 614099805 759624662 811629049 665101464 529756849 848420709 619932134 855909337 210677601 733428609 930805520 748661665 532846991 529008154 390640513 806022955 101300453 646519724 295220524 20755054 579457311 535732707 308383045 281342918 591407969 586144012 840484818 226395284 364687563 9682241 275560987 95866933 837841542 260625395 898302645 930505751 497304721 322340847 956609806 303001554 885317174 337315010 904636285 863339424 272463553 309899112 188394905 291304603 949962607 574999735 621656796 650931083 72160981 808400447 611450849 478218691 678735402 329033520 252100865 876565476 674031260 528519008 386915335 235271728 897052579 538841901 626278451 677438073 853157378 67114734 253806611 589755171 659641029 981775055 295535259 777412431 323032973 211845618 305602641 699790381 246986985 72794032 106704541 594366580 47774997 432164562 450665332 276636470 253919542 8142061 749819773 5791968 691003903 61699509 456820840 923869738 640611685 530145657 907748165 451767699 191689065 909217314 647607426 594180725 371911041 382330017 136177655 403226082 503593064 934959982 117584813 868221161 831572048 867604628 854966301 324649825 79889882 865083478 555949294 82286285 187461400 437688659 880013073 317399905 709757783 270771374 648827120 132390084 719585258 309155064 619808538 341910390 94504456 834127007 502067735 955177375 915785988 767190122 803422330 927010634 718283136 794215939 364776595 933225371 413270993 866834987 460243127 713967636 621138185 895767716 618055718 263820877 222904912 464850644 845016289 52584345 370137162 895325081 783679675 315891261 68418297 119746811 301783112 390620382 500520726 176172473 129206664 919783274 354173786 83184337 98882066 271258641 21985792 115044076 960795633 630785273 5923183 242643944 687962873 107218856 781959897 775937496 592474941 162705838 494897013 230799917 615759354 663730930 701824660 875835650 501034815 609729506 812735751 300388874 812424507 340457780 370715957 346919690 816922930 534019556 318769429 416099518 422854390 302152648 297218991 858988431 27253804 745570550 544638795 946930575 953082225 486604045 135010433 653119493 532881392 131344670 398805036 271384584 693192545 526480470 263210887 504724933 746992614 850340826 937071048 936109273 746243016 345061219 555833983 908558640 14136257 963588092 287776242 672947451 555934629 743811686 783777510 651067382 432599469 794411914 928438389 530862120 504234908 544877384 519953918 448442499 428573502 990276587 494137746 415793199 961057006 926551318 970803580 52124986 566487562 248477390 272058936 802606853 707177389 542528033 210615120 69451429 526551286 857752893 535946180 384253645 182537643 747172718 530690050 317245780 563343350 801534940 318491734 667782754 892686638 599061290 545378557 115546854 947159940 571976898 528992427 104494714 563270019 413774126 347293972 584829801 228989114 749575143 860732536 650139539 295748879 287392491 684818523 927542213 911305702 434957797 755726569 48154122 440868429 173130678 823799150 52813905 964141261 8116283 385442495 6965417 8391112 369043544 682959668 774386930 993243611 28795427 710439060 867539081 12780443 254637813 189464810 860429459 811546338 802827975 102021002 323500017 81135876 22048948 855176543 432296345 778082126 517581089 90769569 299931538 719141042 810727386 463246888 527370600 850178225 792754404 618070188 121749978 481303051 61241448 279788902 754352991 198768771 978863203 25482143 715743831 442626958 439532487 691855687 353303403 658385066 889228554 787031195 236225467 651529341 698524002 369850732 511067576 987820613 52000731 148259111 435607819 444367141 684661542 735919468 518902774 214206582 234926624 494026879 688210618 70710556 746406156 360461455 978427017 51271553 155337831 329949120 290661266 333920089 511289639 80437728 135132343 946000816 484356024 868867287 966104994 626552538 183017476 409126231 795629976 697371543 758830072 984703441 889080009 879938379 313272457 233731897 732169536 429170627 618120855 133479133 300219192 179778133 97144950 184332394 344519886 142390257 851275796 815330967 601397929 213458540 200858509 868373228 576885960 670540019 971637745 235757049 597590045 457838835 24964968 969137771 722342889 197063745 946797356 481499932 204843721 380024675 78334149 472817848 209811656 100368366 945301243 394477446 884447033 427612458 206623190 204210686 425514325 77094655 879675510 583837438 960197170 934529927 297823011 134781587 992938129 644756030 234685469 432518398 175485436 995814259 900786860 504596713 44314833 205201946 447644502 61023040 898052735 448174499 255919875 970545581 432439068 968006878 523784267 776973973 502012267 398410011 578358156 505575915 489348754 315539169 350202698 539175659 453853693 818135579 768400851 808094815 807191001 901868427 235236911 776652043 820751795 454316335 261403360 426686395 84068865 842745806 483071960 851180903 418839807 494896955 558332908 619714368 865088688 263100007 370317892 77180166 38044294 472890278 54740647 898008399 476480064 632354447 481889277 425351626 635508152 621240665 987763691 734511379 977047653 370928528 822963761 201711423 97091604 75261911 617261175 571916083 881754105 626372683 559314548 804507731 820017908 461666604 908761886 742100937 581246307 942255777 298816800 818766676 927449221 808791149 966627612 481164645 784232374 701800747 305522769 273815267 528395606 452083814 80182739 448810014 538869447 246329692 492874789 207275315 59129341 193829221 465544910 946109238 984712156 204562781 692197296 253797015 835721281 680551257 264577480 264235526 277116208 184418576 17761963 620874007 158173102 472152885 531724695 127079136 477472388 396025811 943759969 919885147 640611074 402986039 814074365 242567844 342750818 670744682 262735625 439327350 899549807 668326214 686743301 276944878 248608201 332671977 973773784 667808677 698711142 879464794 253698773 981869695 359663556 175161806 115390230 117533638 500274226 954064043 602129206 123967253 482694801 27141509 736765085 734942598 485090726 467942030 61404260 923034931 619907895 827424165 335853224 449348590 525198177 524429583 123434633 237261473 990152463 588044644 591023163 919231246 22663564 621377124 191285006 622315318 635188248 116450551 219345799 864723578 810767044 885128143 267810950 38394966 377413264 301749826 888141530 630209310 995832000 819392557 856162123 240096106 82889261 615488946 923746813 418502959 152993210 955304667 926735986 633240757 614536521 261747675 454866491 865537029 971757690 877608328 140301338 929754304 860071 907104864 738336424 21991175 857312053 776390125 297201041 490930096 351947337 565094786 220388391 161373928 65829750 755809056 521403989 541643114 974901886 150929441 780208768 743020538 302744241 98618997 381654991 89334602 247330243 335733683 679534197 57487581 950441831 408634638 609805109 549110416 748917723 730724837 244375225 612324609 50297193 275091340 326840892 68708013 747548929 768179682 753270858 269319037 247408552 271087438 645993131 78243449 409419029 598761841 427381441 526227998 610716310 435233256 913605787 515176629 124265987 463863361 966732535 132082769 565987955 489774064 871361729 753800338 759502292 844954694 77532270 116732049 724489267 702142539 612402946 667081966 822149630 786551510 205227403 850879069 300597432 2057457 381527592 987055207 104838745 548306814 190307132 980197409 958597668 199688887 518848800 438175498 391597836 312546434 4838628 75851604 158338704 353248427 438167434 879474073 289281534 927949610 940653583 938932163 599009973 282374857 293770816 917215185 376190018 514733066 462015948 643610962 552042904 725002805 49186462 136459373 210323985 657534437 237912932 465974953 165758841 917197404 492334733 6163287 169266294 110759366 464943216 184018506 10258013 103128748 749546768 48608651 163656138 39963471 779892299 538000314 206979612 360765892 171422255 829637657 321885416 52850492 420870976 718985233 351283102 780659559 870278954 521439476 605749508 766428645 336535330 383828799 355903662 46027461 894581738 297540447 208966100 420577222 965403536 693176698 913178834 282889574 287287619 116232009 493892996 106565221 881838250 529190715 973849869 188493036 83706433 599469241 243234027 776813814 379831716 424545351 597782850 779644597 96931179 570794279 547690323 714242359 655205214 811836608 430903441 835564367 917634347 180669222 510000751 174908112 12843748 970424876 994137352 944240176 658646391 676695974 142083644 552357606 735350529 397873147 172287673 809918136 348154442 951016540 265543320 483072296 170433707 198648399 770958381 905746774 824260667 771692446 424628048 949570455 691361165 275831263 629945372 870365653 858582441 748258215 190075792 629219928 382935622 968854267 38642854 551819592 745621772 988214274 469626869 417806554 134039220 290526416 79592877 942256246 903117884 247227133 995040120 942262619 297585914 490357914 555229144 35191528 334831788 78770117 555551835 21887806 697196114 636311217 164193567 556304249 466092379 888317634 212121507 625442662 542194210 191879831 175116951 280042271 141176538 473566323 147511972 928197329 444152004 911482703 86166305 591120680 937853220 88205109 630660845 51044229 42391771 353880819 97989657 172290131 316688577 169357816 464182174 729249567 109446829 392404544 26766698 769548136 109603100 69636461 107488539 821217223 962842301 647838653 256892498 538933191 583949675 145058242 987569589 647844362 936566212 27871347 695879649 860554668 887356991 6782464 248923009 458705154 755505868 174132265 754036921 481090 96349695 388401238 464459620 182529473 501824535 636931870 774578268 571477528 443015046 901203320 28358019 396812907 189035151 802120576 967304040 897082624 891117492 945994483 906621193 982939153 521383742 277541197 828750686 492241486 645436808 892020741 359306567 267096412 961815601 530739235 568740412 204159752 189728300 650042679 956121333 936435398 215356350 620016509 476440493 107712444 569772994 976383492 285075569 742509036 407809447 778326588 292415526 718116146 111311251 188593476 30758331 341517985 465637882 8294572 633752713 951610822 490033674 599383161 121547953 547334196 705343632 566988613 106609051 688433198 917017477 926510623 284915738 769199208 304684506 482230590 89278645 670874818 369810912 730309093 887143289 824452627 368088118 748981869 549088969 314649486 146549213 78377049 595842789 127353120 168495060 196086517 552282520 434489273 355619129 531409788 129406215 250306006 103801759 208371232 240202286 103488704 762189991 809637436 742561267 473624978 654015768 583422807 838869512 610119710 53093176 634586014 838824386 768221293 634826228 262438205 712403839 681581538 737838664 405740800 324588118 633308457 252298280 387037304 717316243 143966605 461267944 646189825 900636779 323806871 425671407 973868811 613790715 975846601 18316950 153529825 351913929 855403998 898403230 5957052 183691175 294929317 770391837 461840925 457365171 564111441 716434686 416442539 853190672 417818235 441797300 587778440 92630067 435283025 601818144 622010767 531577401 469451977 746586380 351040022 326265941 667053438 359077823 181475246 881714138 18506705 47578288 712714650 328528369 5535930 852513380 758631470 825518675 91662993 617265227 421433560 37029098 438622124 217551480 244909762 546715696 574424003 897335513 338442293 764345747 871154323 81314040 724489191 423842422 680283096 156018992 455598976 514387446 91293127 41279608 636135260 596109853 758341790 831327579 304553338 452377734 320356614 605314246 343860209 964274447 854485947 378570817 139892969 838907709 435707347 74771459 988219085 859463656 666344478 252508240 868751659 476004560 225170005 621841568 808961230 40123556 779266412 689639076 439686360 231775356 344641731 196893504 275986739 938260230 860215098 258125348 459102335 653883726 718720110 338294817 505907977 889589102 200774436 629028250 788153169 164690486 499092722 685268566 886125708 668280077 397771557 856547811 937411686 796434904 960308856 694414086 763216732 795212327 280669416 567038420 300388425 318622721 109503872 287619113 696847126 341626161 500094817 915496436 900202904 94673696 219553683 206015529 697426762 841359782 622901138 685817072 642900294 665041514 800956026 815699409 311035531 723219383 447227572 266235989 973644604 397021764 836192655 107754247 855642617 939216569 554951898 160710944 427811620 278863886 182289106 520585371 485728674 57949693 977843836 456730786 672159116 706565483 452906470 442150781 774229777 527054571 352067990 117974220 179404178 29415243 335933483 916665453 189529250 636552719 135646698 23396386 491607637 157636680 599325901 919220364 789138759 48950183 241836279 366904728 349278290 627612593 199139488 153742923 913966563 679434240 817383746 761127778 367289914 404130000 948621442 21277160 674794137 681273083 453817448 942052242 913002186 194328858 104518365 627888997 223211732 244381479 455390945 839447074 446304033 868140610 398938905 512901526 132101683 351180599 46345892 725703280 386125953 591690201 547767694 356700023 673697675 275455897 473533055 664574572 266607222 335062991 512313078 501806724 132908019 100673231 272189824 947971647 735975184 79554663 93463145 589708957 405906291 847293306 35689990 291670410 375774700 30103470 520194251 333318245 337834546 850320454 713874784 180407676 390402225 526748105 112291036 272191450 510885370 408281776 969213134 688535332 5027725 225482898 809817676 79973416 691507888 919745850 640518708 736490379 320881202 827948429 473596091 102434004 530853322 421798189 236196924 593033151 999084633 233114651 606984673 867618819 970244000 981212890 291806895 216916676 972533119 131801924 502314657 622090782 150137749 17936791 705109595 587347381 388039400 541538262 302738217 783471058 437343897 826147926 573736298 704999452 659442483 374906511 609746129 270791664 191440196 557017069 577355665 857918555 58189935 23129556 664487282 452683378 893422216 735822475 397971907 519818969 217078836 208412306 341717664 556837350 888010298 285456027 151308066 188753489 646641029 548799216 875109345 768660776 981545883 189475283 599997599 599346997 831863941 601828378 76863954 912921511 152956147 907582149 672446266 765821808 376471543 520929549 190523636 39770365 172978383 800662562 430106536 716055936 175880970 820945225 136033253 126252408 127385425 597619731 859700044 674333277 797346683 126337581 883240549 854498217 706606169 17834460 301099476 610338427 582734285 100390912 44219967 829370826 549369561 787671430 12406076 251079978 420394272 540340106 952776198 17413014 764671234 57352811 159811145 173770082 929533284 144591249 631021805 436168249 101984395 546144509 251643169 258882792 590594906 516022723 59127386 174130866 843369023 164583653 156470383 588855896 831744645 807199148 452850833 659661992 992507983 182482798 248971697 653432626 394336751 124851111 959770796 636351603 895619286 595140415 904590851 236112168 89104906 503485383 788013375 331089662 913707608 794230450 633483975 863218743 393441788 326923633 426280107 841471470 456032204 338272521 692474515 64020421 919910622 111264371 327578953 576556832 485550265 236923038 260033977 175419970 428216640 192476080 641798489 835887375 748152531 262456574 93186744 118167452 66873824 224351346 675866493 119552589 546426433 712918976 781626903 638968725 244697599 155252400 262199376 753064910 633523795 51820052 998639404 643932101 393016200 123950430 24615915 468854363 539367030 473981571 901220571 340305109 107911262 853781963 803796063 655677279 220192023 333954310 28466586 291185071 840081664 221149157 745140201 946932536 679276152 903675049 939762235 918880573 785861468 711341236 27568536 940245384 911319103 993171828 365458336 475563573 301071429 778820726 771809078 840685810 969119542 569690465 213124932 7358894 289344853 731565919 844664483 341334723 969441581 215241483 510385193 977419692 142767600 819975544 939074714 238179732 776912696 247887210 4808881 703285132 117154567 964159142 541106944 789588372 898312573 957605914 480350944 684390631 217667447 379041323 453772786 569504317 889486251 860550913 533976214 308867856 624862328 22795930 475596529 500605466 244605654 104533006 462363680 705835154 965230715 466238915 700813030 244318353 343572456 507976976 785034990 552964528 576053895 297927381 380413608 460679714 225205486 588903571 946122000 809920268 95075223 802794255 719239697 104325550 447118315 232181230 572278222 23031348 694498145 638008213 466372201 340939381 685425571 625375860 766943946 928362680 924254496 529453974 673097551 246485768 469583844 566260050 314451784 887994358 37087097 626655651 494140962 43657478 180293717 411530730 154046363 468796406 798380394 64174345 739405981 250775609 812788149 29372305 521548788 328675873 329933102 10946258 53086101 826816164 377640604 515062618 602521559 982004886 568236152 772825913 658218272 64671304 811586135 269452415 245519009 338684182 422119442 920152061 443775847 336726092 113452694 920025093 73764582 284924687 167967213 765309119 98294895 938890648 591387247 268588356 504934325 682357344 426650349 489808413 84206687 94887514 221671328 198155815 692056581 237511736 383625663 399583302 271378371 620569462 672012921 669161207 525732555 258454560 919839480 101951149 502069470 778225177 608517280 290637012 709576322 640419084 675294332 131356130 694548899 486111376 754199475 254072163 582065450 373700492 498628393 890130129 907395608 125268115 805101663 792886228 121148109 278242748 49404083 478620988 844546418 633033617 410421878 874381408 71438063 790335805 525609658 543429933 344951791 263381688 73912941 602286423 597507296 733001026 676926979 89703055 736727388 721778137 570083154 299363748 755990980 519449590 329030839 237867072 980815141 112721244 833304650 685988429 964531043 209725937 110009237 28803847 293139273 74471910 510571529 919097212 384421265 419037447 708800951 670909089 346713910 543163304 766966407 863845354 149756363 135053875 232052429 696940672 978459467 20056664 50733218 563319160 561012764 4802889 922015363 395200111 153463164 933720477 954575186 339281166 988182457 832533287 726061108 650639166 537927395 853741464 156319607 505937963 158788779 569177291 632535124 2923145 383779496 445319986 854561859 703798739 403125615 197418729 273334168 61052670 155531280 754433529 287318237 185691462 616891091 141234136 284910585 666713077 301259022 795854241 756625544 89644057 196205641 401641424 936996240 845814403 660020071 118756408 546056039 756746124 332690177 666041023 673484545 295945808 273542963 584702775 322215459 716649111 997681413 867212680 929148115 729326281 883357280 248812453 916355864 448389907 871228574 403102623 196803281 605552457 765707175 42296973 755071356 436375530 439948806 715411733 962453156 191119503 702661625 295545668 581190355 893287087 173747451 180916338 351702456 906685341 230321252 29153305 349282058 923164089 275228374 607575087 244362300 662536078 202673513 933432068 58207479 51760521 147291641 970016500 836304043 273555201 730071309 638986869 682087689 881954016 21748785 466454349 701671510 268747639 394450994 536640316 355019077 802661458 955747790 546510054 401173220 83442750 624640140 540883593 391200580 714223512 778798114 442042636 531344212 125827360 702257814 37562095 349040531 259729906 643636260 289908407 899701066 676763210 921742126 429595053 697279293 516745624 946107096 619175193 483545978 459550697 726540562 656417899 494229860 229089948 888797841 390550938 42343214 830365428 757298066 71924790 948539766 468952666 8727754 557671017 72842007 479506913 158459975 484079532 337395670 670291003 169291063 139250303 951646938 137963487 477745906 688701901 917805030 416741656 347391770 980258485 44354627 827241039 458329337 42971805 535874443 555636499 106874209 889465451 863508960 912792126 759401092 883257939 113870722 73567176 556017085 158099295 511963395 542332730 834694766 182079085 651669451 545667167 528070071 951821053 31405140 913483405 541154485 486688905 791638501 617720861 69467615 794125229 439709395 415300847 841755440 299045219 236910815 827482385 441222426 739317371 296859544 673928020 767128398 85545684 217429692 888918048 364803100 568503074 711668096 660076221 200289003 180319209 747118291 336364871 530355442 318137834 290743447 838667040 724879550 757490016 67567008 880241288 649539822 998724937 57933762 109563849 982251696 336874885 929985533 877645239 785633992 135441859 41945569 411579348 404171635 644117146 747773008 198509941 41414772 773052635 442457380 867031310 963067775 890929244 789846810 100897027 131680726 433623671 493034413 850811282 473185576 178217144 287773599 810827663 563698469 216924503 375849217 116763206 418090785 124567077 868292687 654724645 873549451 808201500 72096365 344517473 341246358 649248731 759962980 631585662 982778530 383178049 737869364 982753953 740148196 253336240 780867555 882205499 224775706 158987403 809277609 879818895 595058402 962834373 270215342 884783744 275816260 172116054 521432926 243661940 688926056 81855190 703151013 815872405 143282268 605500363 466627546 793553374 871867244 702714925 824069998 63818499 112457233 755354641 786866846 723020152 789389441 319844130 486645293 831210642 698903180 885738931 639170577 110818150 929872149 423155485 973191320 368884745 980718606 821750847 762972788 203832669 586378769 300430371 256049924 577137373 915759488 864495211 183148861 262104861 519235553 272529402 813603950 245860974 965286770 279922568 70373755 809204180 650448858 472514493 645628190 234040305 133572722 525654394 955751551 943566305 787167168 626620359 907070976 62706978 951365413 858727001 621962672 693652121 841994811 647808748 872648033 673076980 985204767 7127819 857744838 33449709 154862551 380159161 447597789 577638049 988085503 369955731 948444610 33684961 778990964 624526064 811942166 944162912 58865704 790739099 625354668 307818925 558281756 939428859 739238711 364043942 378391636 925606201 198945907 510235752 256144665 455601015 736446727 912637140 477987397 903029637 845908684 813126423 129158769 117014797 918825257 789236927 351191693 411572521 184427322 546614913 205659376 149998007 74975129 851893548 316906648 577209395 78967751 245674223 979070081 348672102 687242680 823767554 253576243 314399526 297138988 579587254 292991244 372535199 656310073 100067562 603326842 215956135 53980551 181105043 236864182 21129946 946377841 342665885 237226278 76452991 52646515 412596360 945196851 53404280 693910433 14153329 379560596 556531775 142682744 573628860 41323106 515199516 903178698 508371336 448724470 924560978 427151638 20132327 812759441 792686251 922478625 917695018 808149207 528573096 21078522 440800168 973608168 116553503 766637157 404625163 889582130 334013614 139138047 262781954 38386514 206066767 200463902 718966068 311058240 675443085 705220549 115828529 864528057 243392515 461049515 111580065 508774008 925571658 30984606 188226365 75335893 65594014 322072978 324089885 93364743 767639368 488878513 182925300 414245415 863495183 689654170 615273685 433862036 910749961 231272349 971225320 444639532 4047326 333155848 754570729 659203845 802661387 998180717 995516417 197094551 570202518 119522880 323296326 554423724 708250714 637778316 999083062 363874669 922149563 755706803 231274550 188894156 668823350 891740776 262322126 712077716 996138274 792866546 841353878 312548156 949125548 663357854 795252099 336993806 305018569 865678984 226029641 893551554 979931162 362939361 999818427 128387234 519288635 708702622 846275803 417633490 789922420 739527012 60173035 484903702 773923937 977054943 443985635 44167120 300647145 961368516 242422174 945305861 688524728 228447225 207346838 935373722 116366637 246424085 156974137 403128557 777701788 906304919 968836113 147793934 414144561 287527408 116678194 143488428 789514659 929406081 706378870 855790122 460355634 123334809 640365931 794953749 350505655 529650424 189697641 324164476 832911725 811941323 41710041 977554268 846648889 542280768 721559240 490957052 534263450 471047747 572838225 850581375 372650134 588602919 252208508 624505844 78630780 773331473 775268852 703986143 518674545 356326076 723659670 670717328 206603203 969869799 17407222 513851624 326876561 83949493 273521359 33240259 452027079 657220867 23401788 468226929 132648983 778310045 450714622 578943549 177147474 467065436 881066057 907017539 741979814 51274466 536612362 393732460 534062357 866813659 544967792 335323075 830789195 317052336 284026659 969868534 41353414 152240380 115115558 727878121 78939633 652536171 76386256 738758957 811893003 47306122 37382588 77228691 372167130 74591292 490103383 186092317 215437887 718998404 628079366 574296656 621934539 917383973 363727918 537705108 468714325 729327596 735052359 288174869 703833249 865047648 230464391 88511283 501423031 348343351 177676277 299811822 365903930 18012104 394063000 437950330 356814438 96867459 784427514 210602787 492673936 982713209 361320187 106031435 696400647 482111455 536639433 512298470 550227111 203461864 708519368 946261788 233105947 222933271 334625774 78253001 911955754 901456775 201114016 164868273 483859801 537573359 615931502 489153442 520019410 579213913 230812965 497700700 553550757 594972659 612335393 119038026 289395246 638712760 185011514 151044107 764015716 897856882 922717932 890113041 394372290 441311111 868668333 882025483 255110868 593642131 531797874 454547947 717198368 639985617 888644242 284087976 52309640 921850096 29291115 125862344 567537966 227935384 192019268 245178741 90112333 884754190 721420369 401848210 177944486 756417256 192015303 843997038 598723172 182514242 133499750 199317567 172865514 778258162 795643716 913157528 259903954 585616775 630916060 454308331 506355841 919514331 773609258 282254245 761299942 652776068 687542810 412676124 467440643 904229655 996840393 394955472 135120160 535333722 264580880 536231486 224089768 276054499 134904114 734587043 278725617 681272658 598137703 884312831 913158338 166877589 430935785 141079091 703667083 926208874 453264735 327063740 341982713 557648371 82035833 744656615 957316486 254383290 849445342 380145538 675686904 843858838 442019051 851189048 437236875 392331613 483086109 403057458 892854049 319005561 238740692 847854329 708636067 522181048 497247861 725035957 715540321 188208871 174314029 305527102 451903621 504269143 602519479 506129906 601365338 159272116 347186667 456597880 696887207 537229662 942666400 518861377 74944608 95070137 944116397 872206132 299941848 703347295 749501381 94021507 198450632 494601128 775060135 702906885 559923151 702128150 352175786 231572880 470093448 259409187 997063525 996182849 239310886 227604394 310040574 528895594 954753212 65425895 621180611 294892089 701060307 941452984 11827150 972526304 687351582 290368332 937566230 998451469 460587715 570855454 658674037 449387493 138843116 383841447 147078771 795871810 497850798 960837339 544904341 697778344 360081419 396504574 563425903 631747081 55572723 885839933 63448419 331213783 775388387 948608766 503403151 425924674 202661461 88834472 841158863 106139651 211630514 738522541 314548364 164040927 620495787 785815076 737714370 650688442 383349138 415454825 145915714 145060321 632626836 308281292 391969416 586868334 285416658 806500449 53861796 596553178 112235649 871195400 238001256 176701532 730589979 472500394 351967828 771594379 938287412 828349507 80489333 385719242 131533255 216875464 561994723 568792160 243969736 234410760 202648118 789505990 281133262 756171462 902953440 930119541 654371643 869820417 363898163 456833672 555556506 681100103 258481284 885072982 312695396 450868177 979938049 569620382 323343374 414793195 659587236 734027028 458489886 399612197 335213120 597001700 371237918 990452457 469410050 932240341 850942526 245767765 23505355 464474644 481412256 131499118 141853730 301468533 895213612 709670668 735272634 777399077 653286163 654560889 403711264 119608161 511927041 849875158 810200749 906144761 190460601 608589042 264652249 139117841 464709131 1069112 608761607 646248520 98035955 849536410 86250911 672702264 744935148 625322658 19714348 11843569 960374111 596367007 528285020 677848420 178258352 728557952 82528274 624663694 285780083 891432101 511052420 98888863 984714461 281094080 75476177 357890395 491612384 354121478 808995720 467146187 211985909 745877822 973662694 451127698 821778336 354372533 17163533 575818264 99726669 507624341 182062810 230284380 986721728 762413105 82082609 580539058 886876252 37911225 93476645 355637679 727418032 114286870 634080468 300715761 587577130 533795993 692801695 318730793 540640159 647870286 260045968 851014911 367552789 729903077 188336546 403501861 208259615 766635642 652074428 429246056 874661942 962870461 408282061 997033265 469127168 919883755 37711456 949422311 943728713 18164211 10147717 46333085 536216242 406444483 387830051 509765965 279198194 807298629 805431663 15176242 684181607 694978233 613327263 750729275 500763793 464888626 474609712 642994348 98513154 486332343 790629799 521941957 762180273 43491828 929391546 548494466 617263279 380310317 265453937 967815513 866058180 200456755 685562144 829539088 811774055 847279614 554131860 768304183 716927749 499975254 261962336 880756258 154995178 706798187 469064114 785022846 988316500 899078962 992599400 176057960 506956648 705045540 988972510 5017153 533272125 53541449 851161595 718708698 312952923 147382393 54467778 192091285 463478194 430575102 491809665 824287807 948312196 92272897 715262460 286385578 949759344 66939358 841426950 314564536 58677636 617032427 789478523 845216524 674937497 848931951 754536065 629639112 773678155 428597278 983753471 650308436 329471594 871004194 780693654 203839926 458664593 675706021 410165696 802828769 418393243 907337230 8570412 244458984 911090613 789462347 814745201 157666518 12553532 65542117 892320578 133598624 147946616 424085737 574381028 572220615 474558991 470245590 440139541 129965324 290566181 765803713 311193885 458082734 893855519 597363349 851925707 684480848 314513119 692682465 235141555 933879953 422974737 8426937 649965908 334980603 991170281 566132637 132174160 137449090 128870335 988455161 823220267 87785550 522653913 485124748 86856346 609235724 845036588 235306026 317876114 841613121 285244649 154321295 895893248 964412218 412255393 779203240 802993671 32250760 162527788 49684201 143146976 932408493 726967884 800085428 874935591 2554924 394160853 983025786 369833842 426610003 523787743 406890153 442879892 531467607 36995085 784081699 590086871 218913290 918126063 200608984 996440219 716044103 618556618 845643195 86309678 976917590 353492365 634988124 981644319 362367926 775875735 760838053 797804298 496052660 281388961 479601755 245297926 780503151 653133210 838837915 875745315 246009460 798201753 272575807 413022002 51547392 758007257 111869072 417675379 951400002 930639330 233823299 637282201 626741734 932287176 887874527 46534246 240120667 355571526 962722093 250683116 7406557 151865895 351044670 587199082 510649981 474768996 251457142 300863888 18508653 381288381 834943220 369779055 480292619 331947203 157281427 925770799 809486492 383777441 912046375 774075799 174790889 46079042 535171868 49593119 578090947 726484629 140082966 734261106 569462484 327058852 416229554 399461728 336520684 108557265 357253052 189630428 831316274 462341863 648253342 939378178 123856484 954132510 285789524 84463492 219968644 108205210 114006435 912572127 746683826 311987869 613940823 98842094 526756445 534193981 920996786 47083901 885092921 120154647 441468533 169918092 135811602 200578783 419482220 731266843 799219437 476641736 920726651 872073134 95261395 481052309 937661968 821044260 276456770 456364548 199693918 768494621 994580924 497415125 538491521 375776314 483453090 723205655 122087336 817102331 810471854 944917035 294523865 990088164 683629311 980672712 581531329 686402914 68445019 72037807 220263894 211990889 5807701 414131205 480638070 154860967 316313119 264111870 86701017 442546595 216090033 497616565 753260088 862915885 359687082 927531337 766174832 202902141 172389604 526143225 939851213 402760313 157584026 860785292 534926187 657113277 738342392 451363719 844415775 444077793 78717492 347105695 89412598 530873024 240436858 936236634 718591374 991367357 583789836 132879649 963558411 193788857 42053618 164084270 29094253 748757783 354874626 758553291 734323840 224544883 610896683 342161685 111191195 992550451 677372902 656590627 571160087 474423536 674712659 889651718 535479769 21606666 367172138 990791288 679881120 915852000 793623004 320066416 965054686 901509141 567421133 168092418 298060925 221182737 814087190 662336560 308118016 737819618 454990112 854859195 118460280 86391521 554423822 815976255 26131184 216159889 151779078 495157607 500972075 519660575 685411765 895859255 37276316 531948092 684393167 933363461 231860322 885081957 45051151 312174115 651608864 517027726 332652633 479930952 233926418 739862743 837525116 96647111 258994028 717611948 669598924 396158997 12395984 765875537 575553444 37748980 529356215 773749793 159558343 280166666 526012487 704904082 993188130 423599681 581214257 636314867 407020329 501726649 554141715 136784007 200775113 958496 808974589 190128475 840944526 323468276 331915464 539409618 588038003 414901207 85709910 946813654 67468199 185530797 508386776 27448038 927924133 269921558 877611365 445537179 837855795 838671122 943267642 477283207 735999344 70117499 957390627 669544853 738426207 345886360 410702479 249644671 755271614 201562707 417995113 680856533 760993775 231323692 147831224 464607432 899925491 499051906 325030778 394042517 983885300 595926554 430516286 409403644 914997982 854871029 663677985 65433346 719106015 176382072 7323857 158142434 973746456 638904192 101741218 183694343 610929522 383434438 148064426 293305845 610546830 301518324 204476867 619774497 263335916 639018131 680464435 508966735 864151734 376782110 30656814 838878478 787258744 398616887 139744332 345248173 638704456 834928045 825512387 888279391 114712081 226106766 808515035 429586190 350464508 834419178 17755891 371701850 690118562 221057017 879117164 540180445 950086386 665489642 813119173 760042952 661269015 19894745 349546990 186453563 324854545 848630587 713337928 621449764 902996355 491294776 65107819 554434139 128767280 264968292 941722596 672702553 535170032 873347393 933800310 812583821 314328846 660873840 923255923 235104578 32264826 259936528 87827643 370657440 72098762 957418357 225500011 66629559 213031905 511774120 625380650 501389634 925409257 585661655 125088336 769345759 605910846 746719554 300300765 508009462 803276546 120619084 981695236 157873636 329071152 203866421 399319564 888827531 255692178 78101487 28512587 155147566 682113897 972832111 606874598 486823053 521852443 338700766 635238769 158810432 513005751 41166654 534652079 680976044 108017284 881874251 616876991 350362526 742803184 387446949 693005490 802511155 92943190 852073265 152742527 832204966 677519697 628935162 656750894 703185128 741435057 129666732 762160186 501761970 595251258 981100951 348767425 226005657 374357626 713969995 441284190 425751055 289573796 110871485 739004754 630385302 26749637 159191769 22963841 714379828 509773976 548870743 615687625 130026074 363207478 597881234 479434332 373272256 492448974 186686463 397075351 737638501 782323479 250399285 276408100 169884029 790232672 242704167 664453476 758671739 283352084 129800230 152595412 349515056 133406248 975616240 764994364 919224807 475012443 288614408 920289448 125848994 925754372 410495527 472148928 636975196 174391469 414255494 549578663 997500656 786959957 262131615 644615053 995406249 548715363 512011944 166734016 923292786 931594980 922773671 242040473 347877425 158789659 284016613 846657654 716483808 410590512 517262348 953854870 10082700 256941004 622562247 564941805 508835917 555227260 290039017 390571154 115202381 505909032 234020349 885318121 824287319 850575833 222498757 271200235 129960760 927722433 469725683 256600542 206505918 101013961 684520879 279926227 256014648 587712819 911834903 967615099 529194826 190629886 843811554 486431336 850681805 41052043 363657991 650139714 620514863 977429769 748902399 737850794 477068215 279435944 688508913 748463140 493753737 720481357 999360714 614763516 847864765 964255397 565418369 654515959 606223392 281466219 464495302 936349905 4757187 803459341 611950769 689829459 513091328 613040698 842445602 874706710 144392674 654122805 484753200 431298431 541995434 362798158 244879088 808537440 193797512 252831003 651514749 387163741 414758803 100710279 709746128 360578379 595921454 576961229 224121938 421806126 344475066 958859157 271726075 913420803 451146014 293629006 746325381 381941198 47437528 907793212 110917082 543924345 173118746 674004089 520931998 648962900 454215774 313486274 210718161 112528486 674933031 435633861 761572894 807333251 334433452 589770766 961016542 941486224 319647535 241438128 83502228 515293822 899518302 450990973 226920003 95102153 751662024 485618717 142430212 849748929 853882000 644548851 857554453 679353865 841337679 992812533 897614740 207583206 958711308 419374475 345759150 810332350 414311304 986882010 224856055 879836397 209224102 706142801 573283048 42152457 387397862 158807596 403011647 650587913 975644650 375931928 192441433 205021915 480745229 540303580 948708262 436389810 345730764 183216819 439354132 281895278 526297917 497195372 516153144 596813642 434301653 545196320 4281443 929074302 667633614 773208347 909461035 824255116 911622908 657540091 45618194 911399690 577605812 964469451 119117362 985502271 732434599 991154202 940690476 10242380 429522265 586254158 942232546 482967630 951558625 847848076 304769327 65212179 712066992 978733144 838508020 716243211 20613385 115272847 606293038 772307119 691667103 388227340 927336209 545345862 168921861 706855524 435896367 792904298 221333263 713356466 91257704 944467928 241415225 705320702 436865016 212546137 498978750 650291082 656568861 498695514 732011042 772525309 124278968 469620414 289462543 519359028 369662497 642731169 601977653 676891991 543922511 129833562 705967585 2937159 316359187 319544543 815364899 76539839 581557460 505757913 736394303 86590495 321270943 200977517 20525666 220752791 354749692 901820828 410251185 67323460 669405494 720108835 909662044 765388734 790832934 795311728 701126660 667914359 165394368 553750996 779840056 96910439 203549526 469000956 20500507 703382540 317022067 172153647 325960302 22610999 110973143 823545652 314462553 473345825 319121025 829235877 132966189 632647082 258155097 212264211 981357413 690986741 225487339 759321877 591103527 689548275 112648673 787489418 513098644 806226618 895540086 517961691 362234470 915302140 741995332 759376433 630921422 785996300 798230185 211896034 6056266 696482156 176600200 266081100 220826781 696090969 392901106 172995961 227962473 446889453 919080930 813419911 190125699 628747804 961672559 438147870 333033810 325927289 458452631 763793899 46668117 855817705 495683215 465689052 584357931 443986445 172939932 796076227 534279410 844700373 379364925 295659261 520262460 953195975 637939236 583992925 83235342 984180481 372934384 534444561 25586561 45654043 724847196 127121779 831594410 298085700 501468891 923200376 442931231 186211898 915140194 740587515 301862655 536953888 119292856 554557947 931833260 775367535 562620919 31949231 949774232 821364994 840384085 580178648 770879808 124829338 47224321 937382770 97507842 801187823 197399538 178389647 327341805 809628868 817288649 861318072 140758612 455662073 178629541 289534182 304038848 739369966 491409679 429656618 331765211 108413176 272619430 656464224 393441217 423533251 51435505 235344014 9432687 142838175 733655972 809976546 312638829 601884480 621885899 566807714 779921409 247626725 360372638 233652298 318551003 781143563 267020384 763932945 654235854 741470480 799337141 434961037 45858547 566940196 753209259 938583271 26655560 716060117 60371015 824167246 530179552 428559161 509644514 202182844 766074632 470376463 507967081 817317617 861063453 267485905 642378961 555379489 465754956 982108017 155556169 849840349 775679992 713841172 155923499 66250667 413481409 961467871 487891804 984196925 578876536 858963451 532592168 567659587 731980297 82839042 134192120 964011601 312520723 120990063 162125859 2825695 264229788 977936930 773102266 636452454 242269549 344737818 565477674 324024482 943174308 471619128 739526561 207404181 146761201 630795410 116079817 496037408 176912452 649284443 781010390 888101825 923829907 755660809 161575803 633086190 204472052 247815387 512993254 331202411 205799 5805908 852131385 588271483 112391245 314176225 796318213 777800321 762544778 79307940 158081185 557672520 820850583 20186577 910888207 113155029 376706366 405726982 135424682 826362753 118596206 507517983 697413064 118314854 278604925 612160713 971752052 175509759 663517928 293627625 101998385 272464396 595196359 79983795 217050 832466246 574355695 892182662 954547533 735472003 569856766 978156241 597486786 872410113 214732810 575604750 873818073 285114131 823574962 896537976 160051524 848015632 322481748 399277346 480683538 421720632 917709169 853938159 718683826 117382802 550494036 364381226 823262485 341687383 311689658 632559044 846664455 139507329 443093156 687883882 102530282 605367788 910698523 227929590 871832488 418844665 901667332 887324095 878283823 800011899 885333809 484802318 608172095 637193594 682066308 828384637 566982066 488114693 921179423 821719921 365281456 491038409 11551281 387562936 997943798 39804939 837955742 905477601 413059019 810000715 162248072 233082777 516882301 868515633 655453218 928461208 33243736 20724876 1511914 53045576 683175065 291810922 675561072 727662458 229818548 51219943 463415216 220859328 278774709 942917786 427875322 269165205 869757313 208053695 486748635 505100870 720526659 418127486 723068233 637574698 692139179 187842853 437448551 227176950 584454287 170170468 50762088 163036957 663671228 119962547 662099679 919586873 254446744 214822616 881711389 661471487 810159136 143992384 52279283 249348358 312321001 49135630 534480732 8974831 189504202 965555992 908134161 471375593 953557876 844188573 727067580 428732684 655220593 507427201 272863731 758000205 290917867 200928025 827148261 291882757 179561994 26678064 657884505 998900314 751114863 928978976 512454134 866142015 589299323 175726751 293972231 461833870 157175770 95347138 495359970 52230668 763072938 490441592 948114817 645915331 337039410 353232072 299813943 454384384 69878244 491825242 728156165 626904679 611326384 598838415 259421413 848093189 575651045 609632839 899767488 9545723 892196994 503495074 157332158 597174243 277714641 584191604 298095966 858150270 581913265 504988980 479532189 640944021 473770353 854109142 212669268 591780595 452190221 937581023 755404098 474323431 918342390 854944641 498390157 223871573 633410609 357864093 657966454 283236972 135764732 307913781 840436170 905341056 660274966 981618915 830327367 493952237 10076482 60626670 797079534 559952451 150050978 557886264 872146650 512216416 620698709 648620902 661331609 539321893 14729021 743353717 686935648 189688920 710069337 780537198 111242109 754739986 388116779 310655903 449166766 212260500 750452165 503739482 65317651 907674011 86972424 572144354 345032858 254516740 309154328 353122607 460462561 394840165 125568504 173099226 654974347 988385148 965480649 810687589 392166731 268071640 666891222 930394060 32301788 329530999 196132504 270584240 530511967 528400027 101790774 969255809 169071044 679370305 175001762 952685854 360674905 582849599 525334705 384869454 878500206 25660472 645933041 87423879 869496171 319531026 476148820 775249491 388696987 950020407 314851813 408707706 179766268 139187364 820874762 303542690 840818479 287356357 525897560 422971464 92626946 735807237 480632874 24806217 638730054 613749697 490512064 859043071 208112240 232073853 314177860 251761050 523330810 822690817 726591240 736206365 334287144 606226537 854928801 718740440 741516742 375816932 855405476 384372529 591129956 544960305 145747677 330639092 326227347 573303098 769874831 286038919 981653186 263492069 268840015 595295114 100516254 107249039 293203893 730242820 442642859 532200392 928789324 426167745 504587769 727314571 302484064 829508340 717340828 619767940 634523030 104608249 225293344 996625873 231732298 401653550 992518919 623864642 63070959 162914883 586592424 226375775 820480642 602769701 573342704 62628083 928135742 989939766 849286887 746376592 826413304 623838714 622700131 441267066 250038321 871657119 463331947 117756469 26850240 751097434 186299431 328708278 916289584 425872614 816660979 320903118 546098237 673619112 930128016 190037737 926027631 242273586 737549039 476954270 163960259 514601267 48456060 985217721 165274987 616848798 547671860 506815653 113845351 524816697 274256875 272142861 904580042 458745246 733499889 81701816 503475645 119082144 942556672 782553972 371840020 290554760 35667258 87641304 611286993 51352618 539331648 799438861 806517346 593290538 654486717 208763412 703979588 395729057 225587711 383485464 917008823 880065293 82264723 36746282 331305152 95215872 909275418 31455961 435591017 489777972 397861271 956720623 443669345 661442905 845757733 573641858 948907464 512110246 558734316 100731674 48507109 344075376 259917896 471282222 163470669 630179795 265360862 643994778 379492140 713673232 562381816 492623337 864660043 739693624 51596353 276654450 83941904 843786627 353868011 641039692 251715093 106873548 929583790 887891187 104758908 6549890 749816108 119580732 956071421 385958818 446484132 787952490 304184429 839241450 566948363 9905921 366673543 437663186 629074363 67636570 25664587 143559543 270672867 694434707 7020170 915924563 710087459 323885167 593260088 394272139 142730049 45485020 80671373 24217288 974920534 380695917 939058044 422765677 913822426 460092345 718965309 323265095 12005735 624012732 957955640 909122007 8764859 867621196 408415512 919227865 427263982 41705301 5991978 893106487 923688195 147927840 873887281 762526977 661674609 400027676 559817322 878497009 286046149 977389937 264558353 193293789 158582146 860869324 129410176 635905132 289565751 247793809 352825568 26235228 300920183 769291051 817934417 387087936 947873130 311961932 115768533 703774248 697300219 856014207 835993937 984898836 732896205 430390232 832812920 122762449 473407511 507674061 753766504 197731064 329551465 6933594 590945413 23379158 123786237 879861255 48196968 483318566 74962701 681206365 26274821 185251385 800868592 345852823 311415806 369060431 779485570 557180162 594493485 478715313 179925797 168893977 202202168 518772267 514556421 972833158 398993542 39677111 927401311 846283551 79425434 868056176 330880772 973904542 485208517 337065131 180477262 84791955 262033478 238626228 738977093 40049764 32866284 845938213 404183172 913757087 18377293 473016035 204628311 398054042 422547280 103820844 478993849 519527625 556805784 526768438 999922391 177112078 545778871 819644081 160399791 222044607 431993447 336863632 298275364 101603208 319169899 224617637 236146573 523482749 978980827 806284286 219047349 199706080 439462274 374534936 938466644 447453426 544062578 931342980 827231259 659569963 890006182 889205810 35602020 390360921 572652253 319699674 523521672 597206698 23003480 221934999 722702928 609482881 872726129 793760611 207866385 794710468 432866812 935704062 615453437 482904089 208364257 560360563 889194423 903517546 442472678 183849353 456491257 544761912 903954712 158477752 714149293 260974392 705096879 789499705 777191159 157585870 807908253 201393492 850483811 206703665 453674424 652303195 878017 867128905 446140002 508772976 346298548 818816794 15627161 434304016 9943271 772044010 287634818 564521081 711766309 993973088 218314549 876351435 470497347 817248896 843840390 326250233 644142180 267966494 269949709 974442343 419079433 967828308 211828586 835831049 70140481 200183537 136240497 474333528 999116892 772269490 201122132 954235547 883144545 905786773 698371391 608840651 245591118 904665704 275943072 691427376 347238998 700856490 102257206 23566029 486006402 647806809 803487949 6406884 376433310 976597293 719105752 680764479 822028549 456113524 407422027 991175302 495686864 259749384 921596328 409564853 505758252 546977871 568929163 269380735 389219555 970897011 437967056 458596364 955931419 309162750 147649625 630158184 158240375 773169768 581898766 290853964 102219105 65758615 997142459 215550785 101422340 104786272 249980412 373041837 167529292 170430867 243907528 734434018 450644800 945583314 136085823 405243706 931553571 304566273 137681660 302526763 211829130 875202369 113130686 684968675 178492249 201540822 405603810 487214507 643375795 748597710 85986736 468444650 361845512 613030484 320285618 47268652 704267883 700750267 307213851 914646591 181717448 27217883 736333763 34974470 563238665 530562710 166145239 389757035 572047411 39692191 573398700 39959230 543545516 954306627 678358596 347271685 612676891 434149499 369459977 121108362 71755717 922223554 218179678 733859157 123626248 524068262 991398370 691362783 343481887 809418849 939986789 908591953 363725439 265813084 718761474 616848238 225579547 231658714 833695548 641603289 72647705 133365848 121148887 49472046 502881244 441210690 277643548 302555255 398002558 416671752 940809544 954859598 166490648 599245449 746249431 472754530 997820024 680321864 264697275 768841496 68801776 839408775 734158906 189748987 948295129 830958811 17377472 148154537 624118196 674461720 612897662 495069532 197598455 669791097 256984559 240454391 954806438 463358697 76426363 280901195 194879433 13729192 296743410 437843175 726854939 211647143 188236722 381677432 991056035 27404239 812764487 277549923 141320063 887994533 875594347 193781956 88345400 219961875 336351587 137105394 408427218 779208547 816381430 64129545 414315558 699383003 738092450 278779494 810452089 312024952 732645133 766145741 512306333 419185997 287296573 599350811 587109364 783406309 899405355 120091367 485831412 790340806 607622810 538165029 836594540 525199623 193561053 816504538 917742820 643897012 980515518 447551991 428451323 304162955 37348831 820008490 773047387 905419103 365292240 128809139 488661380 602160182 487799552 451947752 742080627 226292307 556653245 446361182 584300079 499434364 902632520 126294630 558853101 368169503 411113056 739204763 873722831 899688487 483075016 73575649 610514000 668027452 882347695 304627961 157452131 444081802 816790225 896905288 410637259 214443842 350188382 528134220 53471152 848486161 702447573 216272792 1985656 902722304 870765474 260000143 975932732 609195989 791188453 293681903 780855579 837148626 558091103 797257029 776293329 969881034 957425942 545422341 227679408 117541768 506014705 589835035 432839916 767507150 606728908 147773458 898987192 395798708 188707067 630011453 487914603 533341137 611999619 108330488 344263323 828712743 939992302 345864857 988813270 164139172 103852466 98506304 22110141 666917491 611956778 152717950 425219442 530563734 376790485 638240762 35289711 46369775 91113990 25691025 497542196 481803248 22455238 420448877 991711181 947416348 335682954 534649007 460920343 688532677 962430119 572400995 312360467 79162600 940078072 345882730 250358350 503280988 924752141 259187001 31984660 941052991 781117220 637052595 212428571 278039088 182346653 373460595 80286275 904984440 193000353 988233880 595213082 140339160 476531114 809972911 215966370 513532703 225531888 576065722 288013103 556842315 768382734 182045548 348278007 340559670 498018145 208960184 882689685 464534100 420149071 726784281 94949899 582679523 308018242 730703909 709472781 140535900 332608537 389309676 961289994 785363678 451016621 953295594 726564968 841463035 571920271 892706499 483006779 738181511 894748885 616888827 464682502 106938137 715094448 819266707 471823228 698442606 853794007 366757881 532825746 532783295 441859759 568762229 774065418 571212160 527092390 545872203 278002076 757601452 897694476 45555535 575372749 289769362 820734879 129866515 813241012 60993045 737891572 278840457 403423925 869055794 157056576 357632939 510459605 19574863 276225159 60929454 704903622 676985278 386837078 320046630 415430521 599014683 215865315 681615239 280062527 308338090 266037867 527747926 397169776 293973110 560430107 455620588 892932606 874104730 494497621 897982572 988439206 890636385 925305792 481690737 760267289 537815167 532035391 285116880 49961281 443308285 226307243 606264228 690161541 513720667 644679629 538773461 271427864 537340731 256977660 414078440 365658295 138807297 694847276 440975301 567970174 173038162 169992626 243225894 647436808 599088260 850202716 202204067 153895297 264297781 460953412 304598826 244656549 423215268 964851474 923283574 597436476 852249935 314661798 663410409 791367413 811401442 831891706 543348062 640562626 142470728 820815151 968563220 19959325 441545217 969066682 287203010 543478297 598544140 951514140 532423176 392057053 545205799 11270865 554558156 387849183 398958150 334734634 969354281 247737468 937094340 422399624 898289867 593441882 6633072 669165325 926925761 491639578 419190740 359569052 373887970 995635313 313981778 916293128 721339193 210186711 942286933 700330058 482947097 898641743 958702097 386074560 764487027 495188655 757496329 63216750 399396943 910490149 995024192 196751986 171708064 97783897 102017889 615159229 517880634 308323990 227788601 704042279 922124675 334861136 370906728 479540127 199163367 222457892 247875077 444685041 507270593 390492391 890604897 968040145 583103444 483971385 475089294 433197777 934105233 350245823 880116859 329929819 394008294 943506271 741470100 459720037 351637310 673012839 273470045 930294368 23021860 845825504 169239939 749969164 143551998 956484947 638321793 70389489 689865396 980208371 131252389 89296420 706925120 2870081 660973105 258944410 978327715 397500241 396959148 969016257 884351062 693733920 467719295 241210915 356031230 997375552 563341082 292220384 107375753 163699107 380076490 43088235 155162044 626024973 376535982 258357917 377239876 571071898 741445558 694786047 602436904 191201325 780079422 900149979 660407577 78805971 986165977 744629634 640761516 755865527 474942241 722694234 375892272 288832947 87201947 748623928 821007517 566539814 588116103 273875577 191991549 524975231 734536345 387248882 16251593 403243766 500283978 42162137 571755407 508007329 620981057 654805584 781694613 98770781 188535125 236169720 530203817 530280494 14709662 829083947 655301328 162954216 747373482 991417497 921398559 485152897 527271599 792768227 442262155 177700527 549425728 118456519 610993421 457173342 700667266 695046173 450141083 169109192 597750213 840063937 542331915 6123986 885774486 27515558 497050666 264764770 184301967 138950231 117792714 332844049 830381900 788445344 963640628 421022220 497613166 171674923 992436984 130121043 683792948 17733498 880033067 608089840 77451426 653102699 761137290 83988548 917279112 532507590 310484622 467481371 1258687 490801692 99511243 392879481 127712542 996070725 515138120 318809054 119809827 559115977 532072339 431035733 500158006 384193433 835662795 120942098 238696124 136754563 38680831 217653990 42756163 238561299 449829836 223067326 281246487 416304328 981892697 740375482 389534995 884690863 151435613 155197932 91029750 591435409 409011663 893763402 652971437 280618870 948636143 179624109 442897722 413794630 349068381 49784866 20723143 811513615 292555397 802058735 103166874 815429497 85441392 455269275 993780301 490671464 274678973 877099697 782133660 936830787 999195009 687937350 484493067 888682151 986081642 691802672 781202576 947206331 388288173 155006221 868539718 283456792 787223238 634637267 663281062 687216997 370188579 43983364 330559381 510792143 678308432 10107711 377586586 342889053 463461844 756406815 84740111 478924800 139767462 802396464 898326258 789234618 121757064 235894676 933196405 652964223 969624237 804643041 650814973 67163074 550320226 253305144 217204759 624000933 764126886 315104786 779300918 847964359 575533041 46810227 204341819 529344648 593509655 947565340 208954209 663207414 553538584 438004916 65177115 247518757 569423132 933731868 921852869 910044540 725675711 109681040 719714389 362204123 162253780 402024849 610121080 811624922 124927449 532232627 970584868 590098074 393817881 929388044 847595088 184539333 643476157 569829538 173623053 50315022 330065636 560878520 142904748 949231903 331844308 455182374 866972773 680196860 776309596 849470574 452527313 955645425 869301156 150663007 353868603 694931226 596581312 522169727 184685037 539868437 222267442 702783176 675480819 409724111 633795041 40846104 987061148 330216624 860742160 468074092 22865278 108468660 98011594 279959447 364915211 783735796 355820390 541194710 183712804 897136654 94384258 808598960 924467016 837300633 541388395 312336589 416869166 515537622 732476070 372273557 976327525 483126152 180238885 391822735 600523708 789915780 300941062 451712675 695608134 166330988 261473661 591911040 197802402 530450122 831114901 793090581 88404730 876303944 192171308 836889141 700332704 258433627 75437566 854360042 738972597 128365820 351026460 479625088 569866636 80079275 167958452 718823888 82805315 791450835 171281075 100884396 444071047 853611596 698633083 70966122 326382308 362735061 631465866 54807767 354835495 523759573 715214158 372331933 394021731 690047667 377249246 483073355 933102061 605764965 449147965 827731631 565102530 645385486 21174293 138308010 51162090 771459760 441929322 765662990 951280330 408098558 488700844 491015940 109320097 608363241 96706023 154916851 340318075 610633734 670204876 964317009 471569564 59702500 840696181 297982952 429109332 4481245 288950460 697208978 244536346 340497458 367353224 456829149 729318470 396452345 177730777 3608650 418493382 227326873 438782120 296979234 405847129 87922171 446544212 141742279 24772092 520047790 767808836 214944871 877721154 59517048 458251908 231474877 493876387 886341695 103296424 28757239 46720624 319885555 699018246 301451414 891381153 51333828 636697746 145909170 425291473 170713837 309329764 312936899 8822102 624615799 545845993 940791014 787254639 506558364 923507997 362112779 849207376 883365713 95263375 685106715 819764154 637501663 64600752 5754770 594532934 171970386 425020030 263779153 984625764 740140927 379111892 43702245 797066393 81889450 776982407 94663193 958530069 522693176 198317064 446464351 268746378 208014955 234350368 211199047 708483198 425648866 75889607 225881043 196870159 868130253 19960749 290410072 818622410 138648921 615312754 576042123 931736768 617565929 935710187 862425766 796910303 248619055 96924380 317842220 364925544 662627390 740374764 871275261 217631990 688888625 698662923 436249312 884261496 648191043 437345690 352778287 919225940 442099724 945864857 739654037 92597347 537112305 813219945 941316729 13207718 3658635 806093833 829254127 166006493 15035196 759333550 665837381 605768649 720924671 268877961 658617324 582089477 361311145 956333153 579312366 170527185 855500627 384561950 216326186 567266111 40857449 857251004 859941701 232548239 413772129 288657195 273049327 775134712 125119388 657792987 252016705 910100300 748788747 685709565 12746533 909751871 297869385 24460528 979846987 935742745 880943050 607072586 893740628 341094992 494406969 537077817 805474927 89430719 134635461 669295659 602739238 509768081 388097229 229636043 128854592 521119551 496743115 297647385 245811680 518180660 656940343 286546633 918436381 992150920 475963099 698328118 633037824 450003940 715200076 346995399 985194073 102573267 649004253 952890624 419449836 194925479 202704236 307979838 608799930 760451632 699391248 109280896 778840344 543241458 600740572 846724538 582764629 265032643 419469287 161578097 684819403 149991650 208219309 617888833 584833488 214662015 898701572 945371463 42943694 444024724 920631324 802121719 676694866 983689067 320992783 670137060 935418681 681463915 251068584 813989716 479761060 599575968 828771189 45921366 482168993 511700888 483801055 397982050 897067662 299670602 758198342 928877315 559335985 553738823 946810597 640791321 855717221 420452022 367834044 883424735 419912492 658288990 213997080 763543209 731044707 718007625 882399154 686379007 285323073 784866762 540095537 8088505 231191675 293110603 988383400 844916362 561589204 311747282 865691427 195422371 693524944 460929941 117520443 729640 786605214 68118661 329769813 651944182 632241763 540253036 327251161 31983191 264845326 999601759 751445398 76456321 111526799 561989145 66574967 392448467 61170716 395155476 819343508 207786008 996896493 206909658 669742349 421868081 619954354 345688150 160569597 985563809 872724245 661382622 190292257 912555478 617269166 161017134 433732167 16811940 431215256 912583510 389912083 947843482 661873292 685952608 141479666 69345260 900686525 893424971 480014293 835219566 541903172 119577066 376401886 801142403 159699609 325290405 534899527 629516012 858870394 761543211 882148648 229810408 269730177 695527095 954743141 459941429 698622546 707302438 616225735 850448044 321353099 228869605 958678110 229211582 935094643 95672053 81421009 237040021 191512955 104022497 135851694 951102280 278339746 749991446 535012179 382285662 407574282 83828701 209242594 119736127 72499593 679402346 280248326 663467708 880610545 444067257 39315416 193160713 428891450 507578254 637043367 597366017 234814799 416793126 245373499 131992517 328583367 787529938 766346902 949035979 724330055 243666150 713621627 443046132 859607342 62427283 185919134 76440550 341737578 532634775 962373431 556789836 774940367 751216968 37843523 816949174 866723184 780389954 488760065 102086903 417078200 506345617 829609354 602703251 879196665 725303019 685565160 751246235 204012696 393036779 291838760 990711072 348808829 384049844 134826407 429566094 182186714 997955869 256380339 615020931 813562325 391629508 479958879 996132928 31500438 575274008 809801498 867273989 452586990 421294047 348183225 236233379 495712700 303711266 756166872 955855726 638082363 829572831 892504133 1103430 236175767 535688438 731661100 594125148 880650625 974657641 455427830 515551434 455541792 846623596 311316203 83195429 93268437 21503960 667868950 554217308 860435614 729632527 155157542 363045950 645143521 647562442 982772754 255478180 540431368 609038688 146258690 662356032 159279910 926866076 197726334 734438516 439601080 412527124 694511417 688797092 309234941 674188332 458212720 964387171 360548861 948550834 342315739 622470679 638875325 486468075 402254285 564531588 719970275 926120528 997898653 784638991 351244214 788733285 672701918 99178293 151177225 622184536 930234322 16628869 982641683 993597768 132557221 186070157 972871999 48668123 511618051 796863402 842368288 374424674 245728213 96242807 521508963 747703549 184106874 79851020 58400253 925323417 1871196 849943535 864759970 932868469 783561545 899558893 399897516 284260211 727859886 883221040 14853159 268732091 26085384 202946362 231289181 691089694 755538409 275131732 589947752 308833509 884501176 727797787 227394893 966617817 67429637 568707604 195850214 335407996 617494409 423022144 553873699 442147896 956550423 878168286 95169160 348882369 832528849 192209838 935277884 468842424 842751019 500424224 810742230 909434968 613764097 218026980 970548071 769700860 565618811 813507548 232021471 533753691 381447968 381555448 400372432 654141376 836918454 202247803 854998897 16162385 103595935 51369945 329078720 568495356 866756931 301510397 84178478 857093959 672019460 811846480 121429806 371735833 278511657 798489927 391399748 473057807 165612987 25692089 374471140 6293282 365570089 968830174 950296500 589538295 702960463 674196680 822651099 885656375 965978016 660894534 728986669 448160362 401459662 322470271 627831601 984036233 572072650 689774640 573994200 871576787 435808317 382487753 937926055 82793091 91644362 920407165 656504644 413405986 403070726 122235109 941113533 656280660 909681268 59559155 959751109 876848920 650354679 32897537 116504994 313750766 850758221 818736454 288022012 317343636 307785074 334410725 754634161 803573122 100389373 133739287 171126355 829104109 549447526 643104513 520878407 400124407 896270845 783802254 556269871 591217549 589703775 301405014 302638026 449724707 433985105 993565402 910508656 617389198 580355672 406830228 195384823 550653689 713547550 750708167 996605907 872627113 833155006 389844974 168065122 278693867 448673887 382958093 779667192 498884299 658945670 627161952 434980326 83859746 30835370 732685013 958926832 174607717 65688206 962105135 390797139 186813717 178517878 908765109 973956169 199280504 866804290 589652992 528750816 492222272 21304821 763963848 413286150 418852165 331220470 120347187 781899738 937985163 406078648 429739869 524202751 879379245 897252913 107881788 765756773 963774589 741109742 858998428 379213684 255481682 969723800 227120095 164982469 739486031 212004673 428101198 347307382 709910176 281428780 579244017 347371134 968826225 764150155 74687643 266073243 564109374 899517310 684426411 344333754 637969262 102482050 548009934 972676756 964886935 894641837 854666092 410555790 741301566 701264067 564658667 417312438 600743540 589095084 560198507 75665579 359901114 417555482 118723954 412070754 710203611 907317069 423651492 373955363 870925050 866735739 336971588 472179216 954224447 975360367 290513636 515458275 632523738 179725186 520869316 949928048 561629999 545513891 563085825 550253443 253285749 992336135 599569578 187964878 162026498 400359300 440013390 78012530 580142432 503076552 308464234 788002728 649672505 992428582 671586994 170943732 951579085 835044640 73744142 810669415 724993577 374039063 469159543 996814923 5542817 138337953 735306304 982266645 636004763 603994792 58846655 893581404 643667690 23530909 427819648 301197962 895390914 414072011 732642470 207465661 187869781 212498986 799684380 185042996 982009333 96880631 645767900 797015637 25729916 476786648 185571688 211093695 692600047 51742310 583113915 160356398 560320118 722032242 736786444 876814436 15605253 870208564 204885845 902002913 8802182 614478181 751831646 640153932 115806159 232838104 804891370 417765494 157140328 506318929 543790980 998845368 599898360 317932416 573366611 652022852 123317180 470649929 941931038 454099007 647961949 228371791 457790842 280941726 617062166 962104440 311612027 199795999 253254857 819591839 953859133 627994800 410114477 103947447 65868596 268669754 53749701 717493442 725551891 731860302 237039554 161314903 80773114 639827117 763195185 411643473 142668493 227993360 723177925 838097908 661659831 530304107 66983856 849628345 573655996 320644960 837489589 991927723 979147842 315701240 493108312 239331803 533612410 452340896 724641679 716631856 3417735 557537729 971151399 524046909 989389336 771778313 547361906 187593099 980154882 718237487 427809162 66536493 733180883 269124661 563546246 641494585 873871735 398633595 711061194 331709277 318590873 963906418 855850222 968410803 179514380 546009430 966269134 300962142 629181413 835835800 526122392 757091398 738485359 30836454 276658934 460305085 528350609 748666996 810069760 196553414 860473762 936159330 742754069 972099089 15554693 989266486 702326739 101859198 220830047 686740869 365290917 295320580 826180685 535062380 274341396 379462226 748380418 795559584 98289030 288194933 696154532 598068604 600918987 959011432 964230937 173077529 808557734 494697488 387495218 764710075 518375117 76067295 952699463 339629132 940378009 523569631 411834331 343182279 646698718 422077141 796585706 767870009 58774887 544549753 982153093 10063135 683880949 51775890 455744819 29197555 861614622 767318033 950576907 884024485 538797097 773209275 233510424 389734227 644099734 16784994 319571888 797317566 935649839 944297334 973016802 833170888 433250172 447925672 683438173 687550289 824253119 854870084 960545569 633206958 988250696 328806345 551795890 170077390 826495524 971174059 337654685 958066114 449244086 97941415 427603515 302004826 445859982 151132915 934146879 874135936 426072328 288282745 604313525 915098324 412254709 884077090 102389226 255162311 923180884 690077592 147611233 265863867 652981208 567391960 804966178 81267997 799508497 628298283 530820340 828733119 626570388 603071669 748370137 17341157 128406342 764924510 616126025 958385409 773261568 991430904 471243650 343400887 989096006 669675655 960442254 549872475 304653000 867048242 249588934 853867653 479673306 389496858 476470507 186444988 747411181 12760904 884714305 525573123 425461149 670507815 855451766 435838121 339033519 488750687 479800090 820795219 275396886 748125335 991547615 412985806 954381018 845857214 138936623 435082735 432255177 168230116 530893201 147019351 532207016 24300486 476346769 106982769 777600681 563002105 124668081 469403658 717475485 439415699 985940367 483216768 209362479 309464721 798939976 175361246 643201062 307603641 937124595 186654842 494618844 254737330 994398286 872120309 656460014 397637222 766938653 649347261 699469462 13693120 462898980 944045662 452680896 744088815 369099530 553453816 578248653 30376555 459523330 588108218 425353283 480227323 19972490 243529255 68244502 971846598 599529735 747636315 630740979 401672725 23400332 736655385 838928497 798401532 616679800 489235757 434969437 943015069 223840907 940703638 589440369 937960414 839862185 418981065 561214332 738396066 842702817 285954017 199209449 487643515 439360757 907437172 109086762 708340534 212449175 199952021 874362093 261226810 442886906 667742412 384076073 359647381 494491043 336123853 487899573 505524066 322066539 370600122 408952617 270844257 571638122 190056047 681546786 215988186 17077192 41281465 36639737 388683957 521847276 599101777 470951814 486546242 610740440 567553850 441932006 146832720 933259710 859492398 861451929 122464825 57059681 79657482 523938662 23139177 980722887 991091995 318147451 576038765 224784710 884488900 57098831 308728742 90816847 35789771 30959393 797551201 531748878 513098567 623100295 485660264 690389197 9121861 256856239 661815092 29198138 363056382 698857032 621300174 100386950 656900832 688271391 600363637 546235801 169660984 690222766 472864196 461742572 981920869 933726767 17468788 982106293 856741295 746706145 529634128 475728954 620397267 950202717 342686822 20436905 294257460 715051068 552765697 321484949 904478215 545002523 343552256 425881297 57903764 265622656 827772858 395731402 613457436 410476698 975557783 58483308 287899543 844280365 577761646 834651410 146123636 274055189 621949020 426749180 661940007 290568851 56320422 817335453 354959175 516885063 199558944 342347564 457605268 178802638 720530292 75579503 856477943 440977625 875690884 192639511 494522474 911627723 176581413 246912782 597947430 894720980 745041870 1315862 80593361 366389656 897212181 412090650 928316886 892225404 689311715 675381328 295555483 768978309 200139716 899470153 852633242 518837394 582679894 366040832 510501619 18391713 51715933 55592963 86558174 25745877 601945421 729141078 413554462 29050567 356359310 539495996 936854852 872799699 934887441 471484770 355177902 69507949 843796833 982026253 113707562 809871195 32778331 830477541 216060995 869386985 948738289 47189429 997168365 165827391 82798232 377347250 237849379 356048165 204720996 405190189 262803669 695280679 934987698 892159133 340308264 845732868 644164569 351680955 651409896 918037287 772497085 140000252 425808547 263985322 582468226 58086393 506441210 858871177 450685681 578057759 250329222 864201920 146459423 964129166 389845571 198282415 846879622 76988793 220099441 506581886 532590835 905802836 708742422 306947082 106694018 696922909 616996734 27158860 762766771 223667431 378404278 965705071 50382516 97048417 330013243 344707402 173035314 945236513 22773365 866932490 608408179 319777968 102555528 557112520 838014736 208429704 986786096 968935680 377403525 510043239 225812715 890147432 652982262 591260926 466552108 951980095 139912444 729659738 958020273 320077115 323394389 398521876 591109180 198041381 606048319 285568621 947957287 880174661 463750021 489492909 789661536 499109702 181842252 165991497 132055473 844876426 166476311 434193793 357424457 774866955 303516304 332163163 904518397 935501246 68887301 915077623 542204741 773940841 524774616 604979844 89770280 669183808 487994024 905289714 159519590 77843064 395826211 825811570 934509910 891275582 412935983 245539893 671128374 815592258 829599123 847323071 961606558 882050662 917902015 460488222 225622522 495263032 490499719 273343922 988305601 101318720 814556847 796577494 493917452 952346219 436377587 556521358 903859062 761584451 936071243 662437889 532014058 30983702 960378633 500076511 173999842 809891031 862182911 144490013 628228002 800960974 5306801 821118548 187036908 727841931 78419552 856469604 954844984 382594402 242442739 2838998 775750649 682293776 202846239 391023640 594966026 378888202 104573624 285623058 314571160 517273358 19712308 944852139 121166579 442279047 348745400 866230733 292142490 613591078 816413010 862044632 943502639 770943277 837414661 722272166 840634690 200546105 412743263 378280000 470642929 217472454 946141710 692975090 219591296 265787992 205314632 415915712 264972135 809432094 821265950 814390769 491565819 366198285 186141007 370271183 668010894 104596629 13261170 799638906 273854963 754977018 67453443 742232156 661623329 71964399 383661424 877770190 33780503 801681958 59001006 201140121 507152458 655363045 704030703 828137534 837745671 739669502 879425982 773701940 808521405 83972928 284849715 193564945 198695216 879263957 202088062 525635146 654328868 94472870 207771884 736529956 857584954 595905331 537002577 567979327 916136097 738946726 205608372 786479565 312780530 771156829 247667328 859259202 431151912 272955863 526321948 998687248 48976490 770058552 843103647 495038800 889645 981661162 148132055 595094214 201234529 82645073 668337368 47072759 588691885 152288067 979660620 691867990 928600770 149024723 296531742 739574442 853591616 609635832 878567372 312246367 147252626 568100039 764475529 15415663 508953945 714636306 744371404 615806240 959227162 364500951 249043540 151633312 592511209 880013610 583056402 113547480 104212477 484300945 951447712 251408444 598174812 202698442 557042505 798582596 751038427 297321521 141553253 971878992 309873396 872069454 532721818 293568398 159146419 356540493 299916427 339778954 512128061 431022799 320151258 845102191 6574060 357921826 141201789 515212163 263327753 502256287 549109346 423288570 238515582 377855506 300241092 197297982 503343755 384236599 806929839 122904450 358316530 110239187 50460113 97040979 861868389 862154285 587636117 75831299 607379742 781138502 286875692 579494912 183079909 757955381 342139548 471566812 521535207 746580860 218815668 656764738 802075623 981249728 69961315 373655007 185526769 677249400 886440817 853844786 123113537 461742541 557756445 897056472 240296965 930596022 94513496 6187500 104127383 979373268 635490219 856656509 357984143 161455815 604199212 290399568 325596568 253472783 843543038 25900150 333146098 241460329 512167288 929742896 174814216 654967310 104291549 353200719 275853206 897302561 987008134 87332210 314698121 451012027 277939162 275512023 239716093 954168575 85473456 892992354 584560808 84604753 146284604 770798698 648352644 916065293 166703283 159140101 71642290 106367945 73897843 250173663 806336306 112149857 993814186 397279419 841689737 951630332 861164160 74242718 389164612 695500489 28101340 723669609 782567332 394197270 626505387 523412450 122110258 953561551 627116936 789253269 270097626 981616222 516678155 739801794 820143405 138546687 584135191 451631559 997211077 158530752 766110220 470685065 403883735 160146711 128062378 308912961 521150390 9902541 187661343 270656933 823874041 772149401 80716071 259522906 522465271 41851928 702551108 659797926 165882032 612378989 269173919 548421141 262126098 932344669 704557848 211194689 755211485 822433403 627740130 821570422 891368487 835704172 605079319 162437206 83764468 511316547 327409314 321347198 243434723 565096375 280307188 975754072 94360095 795947148 972611431 589143382 324535487 684422065 715175851 905806640 870023755 116043975 376843270 433649642 633425955 67821535 733278887 476505296 561701003 10464352 405018455 920207101 741074266 353134642 977440755 852640589 61136400 628358039 641961774 411049129 348623562 90620322 877238891 592880363 946899679 876867235 743994446 195675743 406079289 66859273 691524081 301821219 345545864 734430138 256887595 912131447 830007346 669605085 960175880 226889066 33962359 990281625 669482399 998704628 893854336 715528772 768671796 895691566 884539521 592802660 508912053 521362042 789367851 737484887 845423782 814960060 373708116 332991190 305427272 764681028 436233418 159407737 992168441 613917146 498838578 203602731 606852962 919450742 439475745 761628895 852080253 624397829 755118408 390108319 105322383 461742847 831687190 98093844 523205106 88790520 329357892 637161333 987618766 981429365 124359863 978098358 406020748 304807426 923660460 857502743 342251035 780069117 286049140 976900111 967505835 944428927 811854672 598686260 894681756 420096563 304007012 512840594 690759238 174824787 444288865 385209817 761913403 270010861 433382503 963458020 779957624 918536164 762215358 471075919 841226979 359227666 461034133 743792741 21739684 531657187 152361493 303723548 131253655 146748870 976360593 544057778 993126107 993388072 779303659 380526999 352787173 426572125 102912674 973871012 114605880 694762972 198201558 906977648 481604880 144313472 677081567 396949065 972273860 109454404 765812632 675025743 176784630 196707573 203355038 639599270 411915804 598914191 101069690 194542243 96127693 922095806 258023877 757262096 883425802 637116407 470034060 768479777 878617192 83468680 536904600 105321139 349324857 948248611 768533783 547054090 788016308 496330131 390282421 754130624 632568519 497438467 118423513 972804250 783260369 210705797 918719360 191320682 142785679 218572937 278452053 156903976 826242289 185447466 607982715 563840966 122859034 223355230 524123719 51070691 158406681 801208192 905077020 120646965 896565337 769562098 5042991 33333277 483930012 273032638 584459204 413159046 61892515 677792194 798229582 53115921 509666245 9229140 38202434 566622240 254309167 944062871 513260900 573005898 485187786 803050613 526912323 916427518 18456036 525052211 786704080 682434299 516306574 298953021 800021522 634797906 488385940 674800521 146443132 608804648 56454905 48151761 496680297 479537639 271502742 427451319 180356101 35701323 407466497 678806462 795025152 725192233 172964773 323666394 223983478 127482112 116424694 71155900 619766551 503203378 250406059 923651616 496938887 985977339 520638237 338971339 859358837 544886171 312937450 220891045 164174140 808321620 886887246 380968494 350375871 193916153 477754005 861289564 429003495 376895531 929584248 456267170 914002407 395989550 254653252 582159942 564198195 672085861 560494092 235483078 563705341 158087777 304690592 947027742 912308503 778631328 280256685 812521441 390067968 302064315 812209853 148307286 615045395 574923173 322536435 383785843 492519774 75058578 523466784 580852702 385085560 894153762 583769613 773349489 461892906 13007116 182429828 164061653 634908504 722350330 140931648 266876237 867110370 347663984 526854919 192777450 351665669 326523006 178357310 519194607 807648925 953951184 996794242 134992098 507550906 745909035 822224099 228287258 470298109 995638888 67958064 936376777 375608790 998394778 790019917 528217082 840052125 420752604 871312801 996162760 587656466 856421729 643252354 952291223 273956427 395941990 744771010 11218342 884434121 772494970 403739903 316781106 869895567 839353365 23475762 867578397 746266159 512318057 26162329 304505891 243540654 305996855 376839901 885124831 736524931 926915918 493405639 407273960 553206022 503721586 260522214 958464713 643658161 614971095 949628921 193768468 889304798 255200423 50545939 201992984 92071436 874921161 360183264 822911929 846654755 230238032 480404491 817843277 62313129 648553421 447542459 332083883 410147060 721823062 623683667 166872340 742423694 684046859 727703954 815407757 360769574 906236347 785168856 116986075 57091332 227549397 914304846 827085774 955273407 966947848 185154881 301222049 980699227 676434163 960234489 731488480 155527781 767150975 650971392 657065691 819767942 785550070 147776820 411106864 407819768 139898268 62649184 323538640 164377140 496697179 956439535 940438728 995037713 852180022 866875884 205432703 374648363 183873003 811286826 370910600 321048625 188462427 772258173 576367826 783998549 472567365 336746851 66760285 449629665 951843102 986836092 223058416 199307715 382330797 727457644 590486645 290128963 312132028 792120664 230933640 304198078 331464752 335540361 51558425 315702808 111777907 847647653 415316696 117346973 205390601 115525916 27361437 86952988 536971966 849698646 714309323 498221642 30915523 980194312 529602317 202077426 957031253 453989044 248869403 450216587 635268678 2054000 29878090 149383439 286618801 414136319 338678083 201018909 898662051 701537745 256017850 410064186 160989793 392310933 112972787 478080814 87123216 695305571 852924281 416706701 684932695 128518072 739165692 603760690 632750935 399968000 548745323 752151546 687649280 694989108 271713238 988408915 542508789 280213960 772145164 905637967 872572338 245260793 456059418 978710067 852290704 960959989 249399500 54891266 566086074 930849819 740589141 323238291 59402235 358614341 403805774 41408972 191382323 558285617 642094924 173721521 777121882 245720044 152497889 807928209 799109464 416669919 814663409 644478039 550559730 869852684 213109770 416011013 334900762 173784346 114417852 423843457 56654383 747495642 187042967 147784255 75199030 915583274 69361090 830761343 398237118 328941699 35275123 999056839 173349071 178282182 176680212 552895880 440097517 684864980 996093263 591061296 617366978 364191847 714230409 762404908 353865842 12586329 549089688 394971001 286346813 291615663 691272487 525913058 323537806 217776945 696401348 826407390 625275611 805572546 973116933 783544227 668794058 230928951 271846190 644086141 110612182 696476504 273573586 472607386 792264594 604639864 249089253 341817080 628590626 856113066 470319917 213395350 846854865 37858564 82120921 798049167 719724456 657428592 836792039 475254589 801117676 873487248 519160203 749860895 297623451 927242126 313028005 786257120 412673676 119779685 339082106 679992670 390470924 920137780 910968013 166149332 329991207 545842686 127660820 839965358 782192122 414998422 108576123 637019814 771955740 539739882 887726589 533966557 678014637 11374093 322321453 447030253 645697049 306992706 8187370 263419313 494878507 766783710 177638465 428869670 350055420 422443712 783843302 703682373 289441123 766306031 691798007 204212925 357226112 308305591 162934813 593646277 17435092 116065471 31728347 795329643 641917084 539647292 71366451 474488847 870871104 135463266 278250033 256163231 174749587 512592702 275421658 783371599 47802604 977956840 920323617 117007968 492074801 105583030 123367377 217814433 343784433 677683615 416356208 139680910 190501202 695362400 80172048 164458880 504688264 244435907 850692483 788292369 231578164 159969901 853410281 455552162 403216890 70614621 294968768 29024212 784120139 496033496 101812698 700087118 421404017 566192307 527643427 744505574 293390742 370332226 649753848 557525041 242902416 259869097 910328584 254984494 40973673 294753598 104291134 293497925 578460057 139778307 682775907 957694159 879472023 528324445 658826591 268926065 857349084 817756140 312559256 287026029 68869135 178158193 921379744 781245860 855345956 390083046 106274555 606393134 629201564 100871210 297823799 51601348 54407844 505313495 67187358 341693652 448653071 439183820 487863552 207645634 295917000 549024022 425924038 919417219 67739327 844234073 792744437 429703270 815640494 989286272 424701904 477135778 210334602 596614843 798029653 734673505 946541770 257945347 202721622 114706166 927069533 940783365 604717950 22727976 488975170 485098645 288023926 754286050 632154025 292446629 721306812 922870401 890428638 232421526 662049322 356570620 695943527 924040571 901043039 883549832 470526410 920183277 99210247 511410554 829609132 452034434 874661819 438069199 223080395 763401850 750959405 586350286 858880877 688588671 574284317 756108763 869177875 871594231 582538095 120569067 697004955 527056783 377658569 28263119 665865553 911019783 443910490 264137203 144488233 719564360 158000968 346936961 195307001 650287976 579049385 883651729 408428502 957750791 590641601 447684628 839583783 966266106 728694919 96937741 883449614 103270762 766912709 139255655 886351116 597373433 960147199 488267692 927193375 286628464 854485549 328483087 99120914 969191914 343004912 196933125 893645434 573357281 484970420 986958525 741135551 345986374 960000574 555899253 200842754 152861550 898087093 706324499 537644682 328942432 804709056 215470423 230579417 216963722 305419745 284570910 677422086 401389864 238530351 413457191 975099462 223603244 162296114 817239047 89456104 3829433 210743038 655115629 56787381 323326804 36314974 599983171 330636303 116027317 92278499 280727061 971843087 801859044 802683925 489426652 115605593 899969251 391082807 409637537 865451350 137585852 576546679 665950182 829309195 695185228 483988263 148441918 677077353 365789370 809880908 15881172 811505280 236917367 925518516 929092029 859316215 992133821 690320630 647592127 774298065 76552346 516302057 206929576 600109081 341268860 728417954 439286829 641411881 499763371 186387229 655842848 688183474 945219388 918360148 14251229 858435219 413582714 885354515 518893504 410686163 330697999 316949689 920956619 136976554 330158778 543989659 239135447 385735544 704752865 890048350 15925162 541936993 942664930 866663921 860130286 601411294 677386959 239868841 579070819 146280108 512799801 318077777 692378260 703186892 888884408 564504604 636433654 286362232 341660606 344695228 37611863 160253260 411334252 534103039 702708381 414837478 352864901 713135119 103513157 696841377 4781996 477852623 591718300 335407367 634200487 957050981 882759164 895276374 81207231 232876906 93601617 543630279 325847902 605561527 518419157 833866862 465741572 391943895 390278474 465774491 229149655 572276350 320654013 463960825 422069336 656194836 936511923 575695258 695546546 922742147 891738447 790369427 844023946 158950689 971905092 79409174 897739763 917850012 359745208 62939807 63944862 924198548 973196985 173500219 237199892 844587777 821159829 831269139 993558649 122386372 734860409 557088543 926595661 608186045 144493157 229475471 761828659 111109193 181994408 888684893 551906863 441950173 803786396 167113098 262937938 960699244 153634417 549968013 838086983 871598574 948978577 673730881 84419624 647055813 781382801 269182037 462585859 966667899 930174476 240360684 801104008 322155037 997350657 225562247 322738228 1419623 878287799 454675826 851000621 392352548 146768534 899159717 144028855 222742319 464851961 267770221 438732827 3960479 21107504 385952089 168659584 881998002 112217501 356976236 467454666 309798192 936404650 688537165 673169771 975112462 650711791 869229285 675744963 536781810 366960359 542108272 509502495 788222324 526305242 251302916 825887306 524722656 472310781 234617293 148154517 41216697 588321957 298212962 779692015 641981701 549290712 517600589 110221931 269725814 186084590 932689922 965675626 206896480 302681103 901611820 574082708 689405676 353409739 16706192 541046470 845867956 864610757 668724028 378688607 8573060 295960860 723784252 318527286 674901302 455832419 994109260 521282550 635682387 907879697 585702830 536096172 493340640 381559757 705325997 567704301 828993572 866364562 172491540 418948943 844571697 459886417 287208267 42677721 295466051 791929163 824090195 248757051 782968461 750706644 433232434 148967559 195241104 909153667 244709228 330746962 684553745 563086346 65544260 805129998 531846123 1999780 154655810 885265843 108387272 846962182 492049100 519440237 324508288 609943108 642500109 69695798 761743215 628480343 455200487 132503781 230835289 455211345 233290336 735068048 727493350 498853909 94778443 370230363 552293797 739122428 690648704 609634201 509949256 961621699 368447770 847857548 343896449 887204287 455409974 699211321 332978485 516919030 417260213 175128540 435267417 820821771 106877676 415510564 264278128 576057525 866251875 578942713 781154659 778107357 781981623 171699681 687458043 776347641 863465282 814544527 391640910 2493446 437997792 478394948 188328635 840363144 213282680 512131707 123680661 123227182 383461964 585203795 83004143 462873439 768114149 212830176 38161854 851956841 546045691 998574466 868499392 938232713 124584762 480991319 924500991 799231840 428513683 469847525 414954198 463352606 86900385 726186869 855028479 835065726 902199619 651229993 506883733 184390574 513460420 634935098 607927652 379334242 884037559 190440407 615792763 549189122 260121007 312369174 569326883 162043333 249289640 425122995 676161896 387577248 26653267 621668185 828422690 661463740 854711319 454652221 710305376 218301897 308834722 190351430 957470665 351570532 865225172 743312813 647203929 571237227 817410321 913405177 604680701 719448488 27325063 937225604 545200241 551708590 914370933 214394355 781393491 887454810 398567071 484889073 239765455 289587892 61299281 118099321 939201547 694406799 942057678 707405583 635838929 232724589 295373634 888290790 92624155 234109355 2658162 979881554 967185675 536272624 305780019 948105684 102905060 965428158 135080443 296870360 964126471 1456495 894060563 923034798 724559339 173174562 964779503 172582256 870672936 745089111 448011904 960183180 560619431 421302641 467663468 230723508 285893299 30192144 501499809 407136163 314027049 748762224 234693376 84607198 342247602 254344723 777975665 444710454 996261669 91836340 98304841 426579746 934227661 884414743 647304705 685535028 830901358 527279790 64566058 174350567 809403131 361121715 499480893 594780533 286619709 139626275 190912731 593793135 654067870 642827865 559196396 977692763 73874057 707052327 459035374 856761256 855499050 751887887 797001135 547925761 221809709 211067515 415066375 174774792 525763415 81521873 691561234 142246108 639836083 472971875 28506060 231413388 390122890 92879223 862005283 534021231 750812266 748071197 605952364 419581960 511574238 332234750 401179118 796135731 554984188 826495846 824423339 653629514 645779284 542358065 356409778 41591576 87352222 282577952 342034933 334604202 85401607 628921378 587928429 633382688 725523323 541077819 94062391 12527514 36343510 962168918 567718641 212855783 824011993 971211042 971035827 393377843 642218521 550240517 750456570 120825880 297327104 624589264 225225592 245583117 767235394 356833503 954076367 872060667 740191565 656946319 685631783 374250319 7671833 235713239 960995 950138742 666946725 191657125 401160590 320202185 263316640 862141120 577312987 11209805 569568670 18378855 381576252 844248152 996326902 964518571 684286276 30360074 746624026 337495766 831625076 255925821 924720144 503997752 928720386 717905525 48712637 505656878 24744174 303500373 181162807 163927201 466802651 154851007 145656453 556771566 384783706 352985733 5033543 900980400 245348425 716603440 242754071 289229775 725278845 317663597 89154884 481742921 141616289 695661834 851270953 187548710 121734931 404135488 209071334 929698128 588411906 634144350 115568196 158561056 771056905 777344222 931993010 529126951 228710316 734585043 972682935 803285293 310342720 511658476 168935680 36380133 8561106 152272608 376986615 147839142 102755761 502136780 55445843 463460678 345988411 251228388 27117753 511114152 931250125 435951389 68378174 44506293 938671806 17847265 188588582 832181700 719997166 155899846 187732187 447368858 308047331 851534348 498658358 637140231 868201456 787490719 544554621 742113482 686219212 986883648 451613462 972089037 521486061 140645843 255895799 46686217 585742112 150643761 816588221 264707689 833273042 383907818 992439581 694124804 643872518 82702870 152788058 252639092 732101847 888293201 269152162 511772077 432922823 829199209 979833416 623286602 226361825 11757058 613396350 368686689 226934830 314194239 669471356 562716455 866855576 633815252 63447234 468243493 60815649 443093732 596781632 63841792 62000006 762398000 663830718 139050153 493297846 562544328 175590284 33920322 733172208 536723104 572634321 572442633 196981514 128682934 769681240 491872113 215899696 382369137 669118005 825621108 775386329 95443486 65169059 933571251 943441556 464165699 14503123 704452352 484137746 545972294 315895606 578842343 250942233 563295922 786138418 115122311 919921547 431927710 750555157 468714344 548905052 436637914 429918017 601709300 596755685 378952096 602422904 554589524 398981317 677150263 209675677 397538572 51185233 777562208 502730324 34576177 425744990 337649177 268231954 31461701 574991799 943345054 730387573 212499047 707173569 255939457 262933067 937807473 240903140 114366195 791198360 940250433 208485999 82708123 793589045 941291879 884394880 254226204 807434501 586094192 652626264 303889700 374020866 846334977 413493378 610149481 357709470 792018940 431112088 147793434 207385562 210926993 556949049 250901858 676660887 208166490 482806240 801189378 255048060 639805441 571984258 520798558 896105561 468788600 277475026 679228247 800884760 520811291 727661360 779934024 845210280 785666923 918114445 656395091 549152804 605615364 140513219 200150233 185395728 282393458 830622457 6890675 425729245 814592003 888282081 198945225 696993165 141553205 319214216 392123085 340025667 41006422 576532407 576868109 311472336 377831524 665984666 730288544 816069474 300793481 6503854 316635827 973210835 523189633 468950620 853833938 338894885 10567309 399515077 442374359 204708216 368193932 809918449 38730665 306168145 699880440 814896511 170979489 742609682 188222827 928307849 457616746 128446378 242784056 130619682 650105851 43349081 944068499 505378517 663021779 149342187 977886582 182982957 365759118 791068425 727774765 112686538 530000529 394532328 738761710 548618698 913898378 319508308 277758067 299379622 897741626 633849113 886977470 726354766 646234533 58381952 751789125 365388956 825483364 728350152 571030435 160829589 934160095 469126953 788364746 158893806 242113099 596975439 782369818 681943783 951277461 350239687 211839373 753091025 265696232 926518778 440144511 267720098 318660221 670105941 856743270 428154548 840231481 470064791 778915947 123852513 929105722 146370683 383770878 911455360 795091355 158565989 31146552 277127662 288247770 423599988 626066389 376350374 706928442 135266683 751054668 851595598 82489240 81460294 992985872 785732933 464845776 402886737 130733759 507944400 20545492 178846342 845552933 938391175 435567798 336622502 70288807 52540342 445347743 573816856 855214134 83091168 701222106 218933909 854805036 655511654 40026093 583592857 376222659 561822496 498509782 697048953 845932324 218880113 163314074 82345253 752937019 496767037 265369983 107560201 653971743 443294228 679493291 964444912 972120796 977132344 169295203 219747278 251281827 121069772 412074829 688114726 241781802 835799035 158621547 817669533 916184590 863766774 534776958 490629064 230407773 994576852 282793274 287222021 641479236 269632108 265009276 603971373 329956476 309587345 468505258 548006634 500653664 805307276 108459220 284981814 937064488 751625790 989795616 530762443 138726545 582791541 69400212 719943969 575361471 259592081 514576673 700617429 228083535 883677654 219996078 970246341 970891933 309476463 958949007 25935463 608644346 669792458 894518608 795533692 381807693 728730350 906397641 610920894 272056569 532603894 336449722 89963764 580210549 321639515 107756481 274517268 952578518 454791050 3311519 137579222 900679111 422977242 313524722 77736850 925617554 771621610 376318799 226467801 403731328 631610760 237382180 165975353 217756891 115991418 153034654 290963330 252263660 496712417 843028880 843022509 311807985 667222420 275230583 464622657 62798502 816436399 605395455 773727600 793163063 585645186 350159824 84485523 912799838 949606889 465664460 565449100 981125518 942047434 869386358 703985731 894203914 724404760 640799788 601833127 723459357 690904757 73533360 814448091 96457330 677675394 104544880 640043839 525411125 286513675 995205895 526473276 589316701 916711510 775127439 498522588 891157480 756190236 150402614 195249149 416777913 806269977 196657404 883307547 395136681 335273880 930997319 258427549 286234773 221763920 112099617 396658105 712173135 505130996 706057779 335764787 500844233 351502678 734450543 171003684 275070705 277958461 183686996 419413752 332876103 459341712 96748987 71493756 988068747 956865694 567956061 199363271 909006976 591990725 31487959 258553849 492846513 680484190 287192215 950181660 615818310 109470993 982964450 356794930 573595513 9774790 446303363 556152442 862750871 305768248 35868123 156602474 647139678 761508344 750820343 772903250 560424287 381800987 363094374 746414624 301482517 31363842 533444032 261985130 686224604 201633888 457517153 443555584 345077907 64335629 870304806 881055576 598194333 841462925 719296979 536834517 140738480 572713061 594783826 230944252 978893555 193970457 877542716 720366606 178972519 288475126 994678692 323656645 674069945 257482895 21215632 236836533 244723680 950201539 393321246 154115649 345988964 827540589 167079813 600746390 578604016 343651898 394435482 793326473 656730288 524991000 916078750 817708357 847672777 542133455 273373342 343280084 917730293 308799546 22517336 648147316 768586732 656453835 905725328 933214117 263336330 458190171 248315884 256970044 659732397 96332393 636392 223387466 987018252 530107079 434229388 925712974 600364975 569324575 51423700 151000614 422014213 431872893 393863917 878908062 142952512 378143939 393161846 96438477 607088881 3964866 172773255 952742265 248598392 184087609 671352298 380996832 526977466 978132841 66677573 686070270 717380716 399680813 95775010 642064386 526916589 974880907 454355127 731061323 552092035 134867059 264650648 80165398 585287669 787598679 817907342 712192242 832923518 247831321 263542611 970106954 884600412 550044325 680219312 937198263 806465472 47584591 261555987 868622487 340809366 874343384 925628351 552003901 308199242 932000822 779281510 490732741 599536630 679909179 876327115 38861231 216175207 123540707 678529234 731712994 494442344 148250240 977750302 864432287 936041235 577599378 700670194 791016430 979777118 650937858 583623265 952755371 562163730 961279045 114762560 163818429 469292257 215257237 579382016 557269829 742852246 746383774 355169975 888184846 729306887 371765998 125592252 683491737 282754867 711712933 112674998 332905197 343565947 218664377 259052971 620144313 625530760 826649416 762315552 546899057 792729212 925836729 715861610 7172494 225643399 856522520 603138471 878552846 10045296 640726720 752807637 146580880 629967256 752430486 481950460 206794717 698550386 976459166 156455478 818780071 331779802 935508979 59714400 939732248 901751952 825526236 954341547 722409175 243781183 644126492 781046355 533518104 114915655 898317663 240109393 785703721 915915462 437613961 690210573 161380249 628461706 698753587 653879785 547438387 338483210 409881780 494763416 282018940 826007362 250273256 857360817 521849284 643453997 955558919 448345539 223127288 270852697 165161059 77304374 135529074 657293132 537192881 791718401 845645546 172955958 703867993 348976127 999356075 369409519 316999488 601088563 603650395 864434094 869785604 433988237 40600854 71392324 452264499 415816926 292009602 153434244 733451693 252643913 736041900 821622469 117605693 122102895 512111726 925185718 706564878 865308262 953804822 112949121 659462277 657938712 314937709 674804396 973508087 613030149 999152949 786781974 209831490 649703104 172599701 239558657 170419955 524524979 250055571 380383760 587456299 99808776 148251260 822645619 910671906 62218947 563151932 758409696 242107836 76502973 82389995 637675062 179580143 990046894 644274036 915836904 833795595 913160314 698634250 401870837 5107901 600660278 365099150 450518495 464795568 433739852 987036411 713474385 137981687 320814804 92244099 477213695 522265822 947244933 787843438 829599543 488806292 974612414 490537089 103114846 819245645 125794976 736166309 501803335 975558320 18124746 769376490 977077683 292865175 727272725 572906518 135531897 597535601 401106505 71217405 305277598 876933485 611791412 607388697 488622485 367034396 325439821 393820097 96855641 52369934 648172753 773393646 214480668 910317205 32649674 740526625 979247683 108240971 702212586 266642257 74438969 306086576 541240235 870290977 306376038 255999365 155813661 505097207 91742113 76770233 696495611 408426540 151344017 797582534 511731917 491156269 992541723 209172756 468357404 712917629 857035182 714654841 322552156 854876988 917534873 335886893 567427588 558972382 340825491 270884049 619551841 293295636 793494114 645169351 389535814 672044795 947072964 569839949 774287915 589787922 957848770 802547043 267761771 722323087 964293705 594524427 996701245 303921769 64085547 16649409 29279431 558863775 353868265 28014764 240825519 113747808 267633067 715848491 949978857 175388575 206812857 815568644 747297553 986418256 917264604 556367840 902732179 767177289 578011176 623235609 584513584 539797303 766719606 538278925 328126513 413035246 199890761 263527599 953110137 671957564 871057302 464759538 96377835 57188496 998483832 978363899 713497847 416121940 169959561 37738675 461770489 900249345 351865542 473211621 366530229 257613237 444564860 839995909 149512277 77251492 651599333 488264456 253973102 290244798 814041105 282013564 446987012 436756121 948686841 181394146 925357299 299437271 941345302 440452935 23368858 643140516 617105162 77567651 90469983 903485763 14546891 992019458 907384494 296858941 751645780 321708642 558319396 202277424 130348356 836616107 774237945 326848421 765316429 450052496 841070390 788141335 716979301 381827883 832230841 473472713 428130217 140367455 697678115 10392075 414642899 537021611 623874486 464285119 318370766 320114100 33357813 411262686 351929994 572290130 565739649 177942705 597896147 66011638 893354163 287350337 812355591 316788775 79054592 649966151 753134565 526560782 657886632 533826131 376489168 639843904 525778557 379874443 66417280 600016469 850915729 8163246 403933193 227609638 179575364 849234849 406239155 237260147 849334158 229408770 112314806 132599171 787895137 251726931 117272538 282032051 711329737 159374564 899955111 790234961 659608703 556207130 789670141 827080221 702703008 387550313 18329090 881076269 92535371 875154756 229994537 784655954 65973675 925884955 310472352 656110232 540391892 472116875 146327538 982739399 298943482 264213978 792998339 348758405 59124074 623476696 253733809 565279694 186508540 398408618 535733713 278057040 174270578 212400035 297476393 862914484 685808740 708263428 723740699 585209047 51746178 898884660 212941965 221213827 645812789 15076312 233920634 443118662 785699623 50383728 137475769 591500074 658767633 965486903 868909646 309314427 514482352 503259073 947555647 539555605 858916209 233161339 488769163 775076804 191989419 47887353 760226242 306396829 183577016 472960114 924016320 232601604 218393568 855212302 417759534 890398016 161883011 124926220 445876543 144150512 328798645 476907743 841074523 818820253 215245958 498966566 827924349 246682249 749308448 437627485 94035140 799855766 620839278 272547910 967653154 470487404 398426130 714817835 154895234 409069287 57780732 275001788 345609513 962260248 337933990 571285069 955794658 796129695 536691044 33492337 185860633 51905235 547872387 878840837 920879612 381025152 991909499 261889618 571108766 236094722 625939488 474830947 971174720 687616436 117547594 530658699 805583373 317414052 412325290 86056724 977708006 957315066 855693209 697645215 159149105 234787845 831906265 19425798 481353321 281308076 584642200 70153880 279037460 247860614 783708921 606913512 19832562 97312622 777307109 206557296 860917824 804930669 594185725 939347351 53574206 868504931 211430586 70932910 488518892 377961933 894247918 275946445 311068188 975965433 707947528 529982773 167588603 635966015 598392498 803754435 70545868 680963322 621109142 529473140 347438153 435087020 631820297 758180868 150088802 895850661 532054690 848782479 181234114 242294444 723334764 3670740 81364855 961981036 539193202 183359828 273186629 312677377 596137411 637644308 519913503 806059024 376260796 886211361 535535087 947834120 586441873 726480590 887631366 749857978 148004322 458218621 293363099 991199623 653951729 272310828 522522440 410669500 186443989 159192816 101487813 469698140 236108121 408145352 521814267 695793973 316551978 926144895 714112857 248926020 931365411 826320797 848974474 282527606 851919689 976309178 702454258 993531355 505747467 631438607 637580695 598631752 527468206 405524268 696653979 572592203 276867717 935374836 293911933 911493827 614741721 228389767 248158628 621265543 407295171 106784657 603650564 910791870 501918254 720937663 692141021 57236371 341750332 623523113 122266315 472575477 942427891 724741835 192434733 552992476 353274701 714891014 770093061 676597210 846258765 557631105 896145481 609599208 536741546 920916974 661370907 183697344 489445472 809119113 793294941 494920203 73323376 952254139 175859365 845646236 908124421 317004104 354448256 823245309 791203120 295723251 480789016 739518296 368859047 128754502 11110462 72260422 762608652 638510963 629872298 391503117 458779951 199009142 215803387 362270857 464428720 953840131 107627800 763241195 743206864 303725803 281134325 898484896 149289839 901873176 603039237 930418476 337362518 295875971 562654640 967713708 13615276 149756700 184806790 499099718 630554383 675638411 986188544 68379383 421429543 405816795 835882792 76055379 941070881 531373680 220098966 906049880 813528990 391839934 397684600 952750405 101314779 822675463 118067533 93625957 883326032 528963531 298280315 670943002 382012456 490678149 512865955 263606633 366137662 377272593 680528246 500989408 972119974 204514321 745883189 377946965 535579942 38099027 891057784 425213789 783101043 942054995 147169240 780664313 649131102 631201701 296273047 27390265 53099702 415530310 391263015 910732155 238307530 860233350 306783324 967825428 620882771 508455463 758852421 514610712 907393890 487648464 379840568 230345778 817613904 2977112 148385014 624071443 407923483 66836615 662519948 861830830 843482395 625328658 202903344 54784970 991812392 232083496 213616425 562696605 596255376 819937392 789460369 351541798 420276116 948736138 907556362 141723217 437714976 811203509 172263643 336340347 662634616 367862880 107797577 491398205 193838701 247183746 953929861 826166659 44002884 41858681 181237375 19061412 304191431 768436417 615814007 220625574 142329888 394563805 796888450 839557621 701004013 143676083 922776414 72393579 377736887 798294972 178458974 643843030 725012799 62580481 604689150 22556888 510054041 388421522 885619075 893384791 15458023 720851263 811256876 263710469 932565941 30068553 185899937 965364514 741325680 539220825 188216991 595071605 732931047 640292403 938866283 845870861 966487847 877701664 927788338 468912758 528765252 694618122 357529465 306976371 305084792 484563697 728389705 820569034 535382927 780296781 383089404 344280056 950660732 651718794 60519693 257278634 456695766 69053308 78033809 691469385 744029057 649552118 416569374 902043808 974978518 147806464 251650707 22003534 492656512 796950217 538037118 889109446 39006957 252659583 745165061 25179539 706425771 223091339 999578157 121119968 772565923 244382721 168001882 821329697 475012488 133512197 522321870 560167549 521443196 915387207 458206930 69508687 154403041 86791634 263091553 896937938 750973323 383069483 805432367 700493826 746447965 882973196 87558229 972799458 856408509 734143545 108668816 51800385 984361629 91257748 749752454 624420283 795315006 969684502 204669937 991632168 389814563 79864767 490095976 936222850 438021529 848122799 690818299 630581321 184336606 715253248 514824090 407287141 471773029 93477159 198545460 790611652 188890844 529846255 298902547 986370778 135142335 479789509 679565614 174012583 62647399 985909819 973073315 688495240 56331140 562332435 770334808 688268531 932395539 380789492 200550622 32166751 110901893 389265705 729638877 793233177 642657082 5556679 519361447 983138880 579177501 574505433 119582996 740414104 717575579 62844208 833600654 872908025 247450136 41425964 337809803 862920082 484737573 333132312 856960561 661150135 92277239 963150632 186832712 358231207 488385306 331367997 575793101 707835811 126925947 54107905 269108218 416335913 664065224 4355448 217401057 414003766 87870046 806086978 244950910 438236632 115438298 767544702 34028448 940123482 834757167 555410323 874187873 589599918 196196060 591356092 611820461 814696798 702199421 354427638 211176131 244389426 747462611 29533633 611889817 805019758 86816977 928164057 425169573 891204881 431907286 28681617 955756105 515216367 495563255 700521705 397651241 93823212 711833969 251652306 830726736 952513000 278257807 761724012 565566608 50274863 157163323 562631376 149333924 935537705 69292908 263626883 21755038 600915382 926785979 167877062 337692052 149259633 642918385 428645920 337946061 271399429 359520529 862516953 494353602 119672571 882691321 988155236 96640947 534237961 805563663 932044965 347757523 441885140 230756274 57511925 697805546 507652346 358543810 938747806 355454398 212586871 874405318 128732582 196714630 248491391 907479085 176209765 341412889 37174144 589449932 194947823 409196458 579496735 642497263 141160901 914033228 500427400 655732903 418613934 476492255 838908047 423713767 479193318 151382081 734986343 554276313 426782709 190116625 335351335 381252982 84636387 896411083 705749454 792701093 542725147 856287824 880585730 116429857 563207916 445641619 402652282 496428364 183726008 995521868 76668947 467672449 162369285 390279029 636964548 504616658 512157049 716218207 808972115 50238290 606310736 772816905 883195960 46909631 1101369 481100885 748038670 692460352 274707164 533191508 621279011 42958092 490555806 997425464 68111967 476345814 839328033 306556084 662959360 142688243 917873597 607450789 877864253 356411500 236358620 899323508 545908562 393081964 593275763 716314451 674615517 570866705 153433740 274741244 79543190 471973884 669571761 320729489 151161887 341054960 267850468 727809744 175835764 716956472 248472232 592431174 733415466 738464154 359407144 608501221 389876806 433946397 683920223 938675172 871161250 444573355 974039932 854735158 759184185 30203443 476268415 632010618 421441434 703827029 938689888 709396551 528234076 681223623 262258328 474814941 121479434 995797115 979252748 672782080 490668033 392151180 422686034 731523888 811877253 646855605 888839294 699214182 714714470 409326100 635598163 45319811 369762624 161520306 739741511 489825026 981454133 97831595 835033000 982745087 187350187 225838884 246263855 870937467 282516817 951725808 187902575 139923250 576220822 554630019 113847828 15750410 555949664 975166063 802136549 869138919 566313412 359790480 646617720 327647823 879744857 93813793 631254781 450526914 344089677 792670977 413382611 50457662 429287135 31618564 544255405 252390960 518713314 417726281 149299150 856156938 157509726 61256049 561188162 84755983 485090870 152296072 548223723 921178101 238405053 194873058 453251280 582584893 556004387 532446452 223847355 299590302 688526876 844012782 994507574 192012376 660972446 549655685 798061422 615914620 248080804 478432063 145977731 711001641 661716157 977975349 18681125 635039368 415304551 922162121 592323429 426498106 791324466 74181814 62489058 410397581 556940756 311012384 540888536 798248174 260738668 536678596 299206524 90769919 652212270 382130811 443295095 581835698 986337761 174713691 660357691 144012273 287053410 761509027 386560469 447546180 767124282 740710577 410773939 696905244 956285090 377942127 152977172 895714514 773915663 484868 859255330 537469056 993194660 461750584 326764534 251538853 785568672 425137040 865981137 460516563 696825143 687022327 198171898 640120066 14976702 430097786 659059191 138030251 329259872 720871924 623307478 107363380 334137050 532267738 147478200 896803943 185232239 655473091 73746404 485163760 968297969 497716622 353841810 777186553 575651093 624261682 251750088 569095393 875158951 266306549 526049393 921159845 371831373 335912997 940893553 394321556 478920565 355616324 865191661 341431940 15242379 27980142 710461226 923929346 943830054 961520874 205721258 382431814 550434546 351617407 736920511 42350071 597713673 805413926 262777887 620337496 659476293 882093662 196210248 6806586 892026656 716148873 690585376 331577990 224521363 897897298 426189815 760985815 481106114 38837445 181917879 687987458 720878802 834444483 660595494 917202635 520620031 952851889 918880567 242457576 332698200 290734118 419026171 171144990 766861843 938618843 98052118 64942071 18213764 924471836 40561394 243820631 914806599 489355817 988303782 375135061 161446139 362827634 739664768 37158239 896663273 245620974 652858601 300612385 35764884 780301765 111447703 495242599 264586736 378893150 331639489 521453809 721948248 160045724 418146981 66855471 236842576 964393568 516374076 640220739 94980375 469153754 592255568 194181215 1962998 253151831 346998418 284110779 74952652 983958179 238641741 321143719 345489244 684100110 977384119 504828538 515847624 626958456 936514951 659735135 523249066 91314381 637532180 390431459 64132762 44602461 106095379 403458811 443792695 468685526 82448064 202272804 938028473 50638254 149118372 432123592 645645787 606447860 596513344 518010239 514393913 742626537 670787601 62396495 102649112 617327195 174224383 567845994 667792612 519382447 905912281 632829238 450864939 422686402 181851100 776420435 20308898 295345733 453342253 918790585 219050106 806127049 607080759 895918770 389402947 842657329 518085367 89726208 248099151 848450875 484787879 203556193 98935403 848916777 386971722 541707292 928490988 7626426 614019739 663887424 722877748 405645464 968238448 116933752 997125581 663484473 590997933 462645011 538597429 839000462 937385057 504129820 365698417 609919383 519021419 697624892 678234164 206609698 210612739 372707988 979780662 975006171 451966573 491445386 851644639 515617507 466101036 435936712 286873945 437710594 320616341 878498164 281508308 871504123 969700835 933274863 238790937 637804239 519304965 231382659 336496985 803274844 68915913 507308777 522199556 438436020 697265248 929218990 830052975 889560986 922150871 91768708 500941838 661637231 850357168 477299565 378289900 749843132 927613545 968320002 504802864 276839817 927738333 883075402 83575613 351818803 118569865 763756507 280000183 857165932 545278983 213410791 523604284 44815020 44840444 776785782 184811319 620095618 851779637 333267349 486840194 63468601 770481371 915764915 739691800 913894469 87052370 873462267 864834983 274838171 427332267 777233379 6503860 94315246 51762141 507037926 408732293 629251986 877488153 970520433 425204081 67801831 324497552 524810128 127746088 179087914 630625112 168048139 827025555 989267539 440343571 510812699 386538286 860089919 904870969 319487126 583926603 794058237 746972567 8790788 185675744 330738316 194657447 310952770 530413617 523165345 554967229 186561214 61147036 82988200 287683517 440327712 221230776 897864505 862011532 859115722 892693445 128228068 176554837 344134066 568878425 500358311 373508679 508233842 543691280 939757510 206696857 898391747 967013031 57647452 8242274 643556501 836644536 65785024 635897520 152202211 233192844 611030386 392170702 605557848 745496212 447136469 254471945 354965398 880733959 473197668 981411154 678901166 101759300 92668077 571477948 265682747 518500286 308931568 644039511 410132778 831062852 601465662 152082432 534881376 652066847 839557032 221053281 255604033 724537177 589312499 542837008 69586518 593849271 379825627 954226975 327816289 771841239 481571286 630631337 407953999 726247262 861405461 497993755 987328595 187503702 166597827 268186684 524065735 130086181 233134672 531567391 761044340 618578728 179529932 573212498 368174789 163714058 92920732 76531188 543750815 198247393 896844277 643380375 199557426 545259012 731505917 243434371 396867420 939240536 99803418 683310740 631008897 12339221 543583210 810798741 422414162 2081543 31329199 407175565 977760213 634650568 479212276 615445683 81352450 316159032 995514113 621488784 412530423 217016510 298957074 403844669 451424328 256029795 112096634 323689944 537845337 292365251 248875125 620804633 383516408 33328533 858804716 103978691 393265422 65515413 630546862 110498062 307002891 148998810 175269356 128319421 624036415 711841174 762692558 538665734 577367152 855057482 355249971 110294037 63200748 313264542 192758817 460562477 494224057 402882444 905023399 552777266 685693785 272947453 971614870 655211250 528489355 367752126 682154975 778721218 122967356 254355770 764224431 954972308 813887264 950069817 303263770 146698995 141719677 748202403 963756387 480381554 586090933 516948278 571495523 640009602 119262272 386176673 590361459 756225224 748071133 234660452 577196316 570071680 434648924 545942400 459261250 591435964 813406141 552846673 949334055 554642718 90571685 297524749 2098495 596714339 571913529 654488187 859393797 406929555 269726810 148901070 731481503 574409810 590199438 852690060 676521064 886907698 319637921 160824404 374111990 66483015 492410166 927986294 160350272 690285645 369654711 498145339 563886345 589368467 917050942 632232427 910018083 524384608 971933559 197431303 114519840 553170914 592984891 565946197 841819958 885017544 261737870 483825712 507139562 655427025 894544825 994814684 123964284 823731753 655998283 798157729 490482310 364640625 866585878 888283842 30499556 745150411 963208758 77891869 684772040 592763231 392172411 485565679 880722551 614722508 483244749 375217822 97749629 562237309 519503813 153650063 972722803 807557799 284567552 40664859 779090483 105469274 35249461 626047230 161771669 242105104 115528244 15138629 611837417 508811499 841773565 206457893 307005840 983651334 190438824 312621131 138373688 130680897 643745478 79573121 292187905 14770046 945743577 167775792 385696496 561363697 597984562 359855466 4547067 855471885 343682242 401908896 668886641 824683295 660594485 408211906 190371269 154907686 462327564 376003412 487233153 494827004 598224800 321918306 194539749 474937807 189547327 811761588 965894482 849950428 249208726 212511018 213646202 935029598 497282238 624598884 667075728 839492676 643749030 632643201 970408936 280966191 574788907 292901417 435027985 422859408 645448168 321674344 940710380 486835734 79075531 857056622 931597392 898273764 448241855 678055823 173609356 123304517 537068727 930641933 462926389 188405651 154971220 768671389 466296605 848043346 823962723 427265070 413004975 139233395 543628430 754262700 754939404 175716860 953100994 873553002 11084482 814163985 696386753 907194113 899716688 167124029 675750086 865584993 885871004 90745394 422467517 453799848 944490629 652792937 370765544 51202783 604882505 279479860 79035932 351682881 758373105 573494515 855944001 456218882 771540972 4561562 358017592 986270545 853677630 342619839 986662918 306450230 562271455 446815684 462636892 498238501 274550393 222010570 744114518 984253123 991856763 416029205 81754610 283265017 101821736 957979643 335795355 739656993 907827373 696585275 433964388 677632479 603415628 427097377 210195578 634402574 269335540 184075108 746756998 426985791 849441937 224478053 547451783 373910470 564138033 31438301 164483182 901807094 993607007 639900773 446921657 697761150 831581642 640584436 331271943 713028884 364185292 93400563 490081521 116850826 619375367 62662840 48417146 559357419 411030977 490148436 848710306 980787971 884703759 448848265 298907521 86798558 210007665 613302433 869054933 402524203 715436341 412453499 139529065 614791720 653238238 700218173 152421573 345235881 530149570 147383351 395813010 289100492 423609225 419423698 583583255 930205889 644125643 505724183 943309844 920415455 199121374 857612903 620978138 498068447 629644060 827965546 53351490 358440324 358329187 937902784 284583894 442604586 499326913 599137876 75582817 804804697 411713549 953304327 901301196 375381126 364877695 693168751 986033001 324721408 763208546 29236490 760044300 1847516 948384273 856554302 184499147 684498909 641223311 728121154 514785034 906500689 276370088 801739410 10955734 674313440 777532210 608841123 631259844 194727376 439108852 252371211 916651971 450198274 769554327 715819016 603848855 261565828 349554128 199842094 403899697 815505310 734168068 956463328 961809103 156151478 19761970 833490163 785750020 904605580 547869681 482651254 400593490 354473115 971432149 230659643 186414215 861020763 787043132 319450339 856298780 811856574 540619395 680248426 700443319 767083761 22195813 167183485 25417626 413689428 141926640 627748132 238024125 919218385 138329615 496109915 163085740 875571918 259860678 657444269 324270631 823608633 88666288 904243573 925726283 435157900 7055946 613577195 299665564 571357009 685956749 598926184 68256811 604562789 821907801 534073173 894452935 323977927 651973565 548254567 698741132 79562748 974867708 511617915 629051092 424448076 928851581 930434503 151919646 567587397 916443137 211622031 26847164 750618024 783980166 913107850 482446326 934603324 756941211 980465632 999669076 121191690 763890349 258157121 329550350 626227514 884979801 606415323 5266476 12402030 624471954 761585264 965084614 705464491 140716685 659944516 208964264 729812892 34223450 502365464 488753475 627273703 702741731 66472886 489968556 323878498 121317326 859974597 891037863 102168232 719274066 173782145 872156847 779923665 741310134 913208171 753637215 407170454 279819742 898878061 852056623 703232763 25270535 892582667 659019053 3283706 979167818 382146732 230782657 669074380 359688247 855492083 674256795 257794188 909594836 469211151 568538798 137861545 42251301 491729866 314488331 574642732 920809082 800544445 788524609 427602552 363392663 998852102 16015118 556552438 68315640 474160582 605840080 25381584 672639096 259763648 362546039 44741824 1460004 528563418 35849166 527304071 17334647 167785734 571553911 699615107 323500509 279695531 145597932 789653927 671665974 298546148 418179586 731527196 227823602 497956528 880337711 965971477 884567348 263920583 308465129 26362368 650354953 404545021 9569578 17059186 999241681 719777183 381373470 289623762 165668858 423949481 292419787 491347722 761808214 615839258 100776053 117205933 99880412 810236650 635571044 201241117 711688844 325676986 810456442 916838822 678601254 55875711 88032429 590135199 811104863 853520478 957949503 240577851 679847379 503383328 10633724 435973741 325614502 382298374 422012060 882639203 796247463 503597874 918781788 600241966 366559211 166984804 656167177 871386352 329502696 484216078 529803637 945104197 88703095 787082259 68332224 798880535 607391868 9777290 748891071 869888592 9966982 666087367 329657080 244709208 472347632 23090856 199413300 221422351 988778883 993442150 993874118 307105462 998510727 847007148 739524939 139829673 784247993 640960447 858112279 59339038 43390538 101693010 449443538 971080173 377718592 417540011 830433108 19730145 846481295 881060322 220961520 320745768 1416125 254183774 279337555 91947462 254860461 9187492 662314138 443091418 78067469 45904184 810181525 736853235 598462161 548419499 756718411 887721020 426767537 102974523 252980407 280355030 650345780 606666061 16263269 513143786 61673053 563588115 787763020 684189670 909749177 237153510 59385065 466597404 512723564 205503494 993213728 620537343 546804734 445709540 996980210 822826471 126508693 986602608 686978051 891475619 401075373 245515660 492998276 910172935 38640859 734875697 761979459 472339659 667852396 481786191 801768879 693112408 500488633 325180967 362239916 306278619 391485478 40068862 336833589 953752024 725233886 104919501 901208948 304998016 898453107 519930599 89870843 67597649 191304423 327192438 133938585 409408327 711053224 411108335 303458838 987768757 303976090 493871904 532312179 934060018 838190278 380428125 293216614 799928395 574165588 820751954 150509411 500287660 361134499 366854126 690850498 452960057 681613042 83103834 850731756 218005035 413639700 287955662 11617074 564377437 669346770 862224482 165163014 374269931 954205565 837589006 477815364 785825965 367389282 65861129 385761171 238227594 191076546 19442725 665768110 523932425 360719072 815862950 288877619 864546124 318436404 394263832 737123819 506595908 784237161 741696920 882489040 147722267 760623608 141033416 611162738 774200469 257376633 498715580 936331485 312204412 655316772 589167242 351730726 781845883 799178260 446499720 936216131 804371186 177929234 266683144 274153682 778848173 551657567 216323569 364390491 292435772 141975876 60351696 520524070 551068227 52536021 687456112 450786814 658601265 626998947 389528572 912700443 181374449 207306531 502132318 630664373 666421373 85919487 474700152 816301507 387705466 765689699 68937022 126021632 171387437 990454220 541096722 475086580 24144583 120095091 922579910 832361382 92382413 888814571 808320611 876446157 658625836 243668908 614630158 236644146 211702824 69081286 591647059 815799639 151061049 421071887 677401039 288435299 254400751 363061676 507968700 986578069 962604863 949413023 918335129 316453873 385360780 737060272 50742989 176103969 49486554 946763665 929467626 854614731 390991087 570360913 432415074 431032259 234204653 383893637 272594234 158869795 522615448 263489232 433490585 665619136 83527032 1014267 761117890 987242467 897035647 351130539 813774699 210319443 767464368 709586297 867847278 367741047 886787870 73320178 773303943 978311579 885595740 139624205 774095325 419254137 5657883 19537232 759316745 19184962 37763529 188180806 889726750 813962525 118910822 440646060 825405093 659026081 964466495 133335877 263696140 925171423 18573257 948719 597914222 724823040 488224444 649575321 159811751 634830019 945257956 426863349 437078796 51510666 321836408 193320071 591968456 459801814 909317483 264126264 598064289 284332862 774086646 397107443 417726493 499681758 917334798 249495066 31177960 151694515 288683854 617973430 120121734 40288752 739139574 369533805 4990449 418019009 113939222 47161214 805927049 558121156 679361704 327905795 189597735 232469162 597607059 209475737 835595099 156026700 768679472 365853112 258331485 533553526 598471867 677159509 804383659 363562159 799089043 125762599 889638876 232270616 123276830 922959033 835869701 466945228 946886797 348651405 903775352 958659818 692522340 721539431 736300024 890341574 68854197 152494946 227740738 691697333 174016407 305517812 738712057 188669429 668466061 777140853 478737098 124990488 425808541 201522623 115243720 886220239 525219460 182897642 114090639 801743466 796808687 48710352 357441998 679633654 522283684 930153378 402528662 153005380 42924965 430368287 44135044 720792449 201175550 63428150 518905904 68363830 220789656 764552634 253367222 699301382 274410401 918760076 480230874 298518191 230620934 932977274 182634624 289323329 360852342 887271826 678965572 297572429 345729315 24131338 973167355 799200050 436104358 85299410 747064821 439438317 193404817 679839464 488415570 112246679 288402475 730766431 233885382 486532993 846228054 245860587 987308343 346912616 13733551 549564406 648665449 829222624 347899087 557007443 782815126 601088298 640120293 299569048 82860997 706751278 38070587 373943487 466274319 764099052 976682180 498803017 477820850 297857582 410218823 58243606 322767789 669363728 444013284 315916770 861748447 864381602 412230698 268067386 678773452 686245984 477732042 421802394 594249918 109200359 168328879 635021521 796249378 568049209 897661539 84626921 636513905 592935317 612683878 539087046 98694703 192294936 550025321 71903518 987210400 445166156 713555191 367467128 433543432 958077159 265819839 342629283 786759682 587476868 902586810 942088720 903749126 320337669 461172653 300838791 872307265 106176019 637254530 169445983 11175175 237361053 31397766 56260861 298570198 505549272 291826070 79038021 274884706 388337918 320929652 654823514 380618665 677691172 57560626 833180866 238035942 686230785 234071579 740187719 328437355 222447099 4915291 21126381 394044199 698753729 189890817 229899335 722329942 314864584 664673628 390668384 52033367 671359757 340591718 460224884 287538752 31618656 148442273 452952866 775804924 780382460 956979405 38438095 27157360 233733810 544116272 228531918 921535662 997560811 194822277 537060085 355599503 801234821 178020044 786127979 319997742 560232352 690181612 113298632 237352611 525238109 890830612 153634007 299308047 202502782 120831108 340210758 817264280 780242776 890829056 646575088 130361799 195110981 293970607 505398813 234056514 727441653 355843990 685266697 656712367 324541551 754145393 445614763 610960826 210350610 755712971 801498659 564139809 572024070 281773144 516848198 675794199 107930148 853441128 525599450 852778974 110144195 265835959 110611446 98247055 662344544 747441783 258930728 106615857 62499378 832054012 71206330 254076123 541711918 688430972 564393004 604522539 911353010 326820334 686274499 918969663 796482857 568937970 177277165 860524573 380307097 331386601 906641622 658731849 841446635 553425116 378640336 865469493 86599856 698659192 719693450 805940741 622983519 81009586 352956969 837368991 664984113 212792241 836628212 321895476 67704815 14392951 114174810 570067626 393609523 367319696 920591482 753556984 771275679 828819163 603837998 192797213 794117990 6671035 747955801 569634395 914053584 177721587 408342682 921073206 884610192 527324436 683682906 142645917 224080425 303844720 636287462 942416975 334480254 828456038 483244810 185552251 871864971 587448334 665011668 832351757 586441611 783174474 132284188 660693961 748684072 461592021 309275844 359054184 148358816 121049598 492616192 240723511 191273261 376435074 207441783 675774117 119875624 164663106 809221651 494214000 321885307 860665344 486607348 126621289 887305976 809918283 718943028 641899232 587436581 636433649 185187829 165792937 30023611 923062571 770527151 723447583 402161698 778117559 196294797 483031211 654998339 128241557 72304337 286398968 831136226 903455676 837483296 51446780 212100717 391158953 499962651 729284282 973367152 42974745 57688801 686768941 663337947 35515994 237553594 360934702 495376531 212869846 345357440 124982716 764752697 513178238 252446021 237143999 673319018 321191352 569205367 390819937 102873559 188832655 402693499 981719469 943805433 272980835 224634723 643728753 124951483 255524616 936940364 702032241 593844258 406365087 498507660 167982587 499190243 890255562 34711910 807358390 507313066 112552567 73975694 582262920 364840069 902435061 462968037 930018649 855183845 766954502 672232783 394792921 61820328 698351275 779510571 741255979 37621101 997876630 927294088 420675867 980316721 341601611 595926961 952707510 145007328 821289447 640847289 126125320 998474376 527959316 322589528 632353234 319524050 996173079 757053724 84815377 468504102 424289700 822699149 126624847 999718963 798334996 179989299 949037317 609964555 658610322 348165719 256626182 536452618 930862912 819110886 827528 531115935 466263623 16010018 239120325 27546239 58051186 514219419 969862652 925984726 47760434 766020462 984919537 759051434 74417324 273522910 252700550 683504900 964855339 51137976 761724583 424017560 725760035 704385602 497657991 577957595 443307832 854758996 482821378 628803822 897761237 837669432 568622983 213065812 862406855 940957334 432472561 441121085 272129083 171033276 769693517 104005272 724289347 364460379 898216803 559008064 27494196 700919134 164321955 495409913 461335093 329597477 2218749 39619968 542956590 45138842 191852462 587967569 529146477 729332551 652366817 444021721 189453901 327146712 987062100 523450007 567496480 400286311 446842392 424822936 71038098 689205057 566419713 952878616 356444618 751479309 804814017 578291842 113361966 585544838 600329271 546782446 461178226 768868770 544601315 346050736 573525104 945063876 572255665 997046508 358483580 43117242 163146437 388664987 328943429 328482557 733787457 56825367 312347666 13650246 85601451 188085068 523432984 384121052 465885421 797353265 25421925 564229805 72019692 561492244 847533529 650328208 686875648 775289741 564077170 764314817 883267669 438432972 974416817 459524292 665553572 139234111 700454554 395032636 970948931 117105176 622556665 539528584 603728663 789364751 47889618 468640151 655871210 284581262 549215968 963537538 99087092 660313521 638875175 227241496 92776299 890461162 594385998 759954812 488275784 929439629 852669773 883605646 640948317 439863315 931150086 782351531 999849348 856292218 932333377 432578348 763458216 682997979 498482483 2253483 9499084 580376853 393354636 760294484 443468510 253016038 930208133 60862524 619779254 484608234 505348056 690336497 288455325 166822615 219047381 689288168 379925874 417862331 599273939 876104376 199761268 351174033 72928328 1075916 216709079 19814831 121394567 643407164 222649737 341888105 533121665 940864466 859364264 768517550 717330795 646503988 719986624 458811496 533930702 96814154 505589061 14322164 317432615 107774174 138146292 766572241 826677244 203261206 402442189 233272111 805420938 490119840 607294447 894525310 170051800 891800908 124262215 605113450 259271439 341112325 26356473 79651749 146625942 538604639 811116425 288657158 168525499 220470397 631432189 315203743 965640606 114361538 315651785 994240298 435648755 517607476 21919424 949507936 515144024 42495403 719080829 71888242 162297509 377312016 862406547 323215768 606361356 620556875 620843765 784851815 688013345 682079487 494072675 944702144 291546959 982173316 161428342 133194075 283341284 580144000 302791859 572909372 501894735 424408213 366980553 247768090 345257076 561179838 368490155 210011805 616280622 372596383 824248374 720846255 828812099 638211609 666263641 876653010 308011727 386589080 125377865 852419174 197110388 57256614 790481539 426883200 628163130 258208454 670713276 721955373 924738230 914520101 947248199 954063763 320875162 413928121 410370827 618574861 524754555 466585970 801105383 12442665 293810320 602773129 973325487 958858639 353901678 368939472 741796744 626680254 241633124 854855362 485721929 797796173 618319921 753832380 964184649 384618985 66098779 74485621 816034373 433574709 477003543 896913666 466572513 14315281 260875780 247807005 376428117 774892445 908287888 641840816 141184388 910146983 72171907 943469924 355610425 175505673 251356127 204839880 593413763 132831116 21538302 583495088 893070665 752909533 828598309 280871528 268081159 735539253 24752675 970964102 930308556 645833817 436717364 127536184 689684703 680898419 743086617 601671406 585006444 183759578 918089221 750928775 127934764 585815184 600516890 792745349 900573562 76856805 506739351 704924921 670318517 227936256 532193694 943062286 17698507 773377238 674265251 456077878 180868136 307307655 267612682 178401638 119520768 585453102 404371468 369239064 491846558 240747811 30156563 68358108 142942817 234860135 756218498 122384945 84786784 634978120 814086666 483372679 516761947 494680985 39426441 407832821 808270134 544444514 476441751 662835111 608238069 521578960 118902674 931089273 684084064 684866519 628980888 526566519 871599436 293102343 171563277 765203342 75659399 479746407 622613397 836413971 259604038 327348396 650897847 779864742 461243897 717431880 657752957 624870981 86961680 330009839 474369021 392420928 602883056 444190092 615226541 487715007 443462059 498556834 861818276 736663097 761797666 724019232 648292771 309604028 62517919 461758409 956882357 262955575 604371478 943199780 947189773 392837535 993029238 365841547 382914872 897601751 697065488 871823086 580475455 158236926 421764443 848589964 490338183 265112275 55622264 831155107 458914698 847455032 616814813 82007542 196138125 144833548 450285216 93853548 605316939 176680363 955342081 368462883 155612200 392768045 675907212 746573287 804534603 993197629 588033364 559091671 673849518 96204386 12586336 314317511 930264911 508120777 397177889 777865477 42460324 660439378 743279847 291000570 749354673 915504255 363392419 371206146 54704171 212289935 499730934 100014464 831952899 503737666 953070237 774659856 799575954 185882658 153942248 777974927 588030368 841082478 641980201 999498468 867800617 117679118 875373064 107326847 403195953 408463544 23884730 997402205 401024376 88554929 87867909 966960283 352687410 408263383 632466742 261004298 133180043 752857357 164310210 527137447 905709700 977463339 795283994 370379719 532272663 805277216 631302081 659023793 373396384 234745709 921870926 121833005 71460124 554838922 3749341 972197459 838473073 870259210 121281537 898029387 932506885 129176950 539865752 575591858 73897849 16383863 263775841 115480359 258914923 6080355 351503179 808039365 939159717 524838833 311993047 139248912 912260131 420388375 563519060 424697443 74263767 884167903 737937048 617943835 84655370 176549580 457558989 323359007 680775787 830297811 36083169 918708196 572487062 652831458 965813837 587623269 867423937 664592281 233145916 489656883 770816647 248641250 96951623 291191554 167217301 914647511 565950560 605140892 70512017 544445708 832851744 876529787 508935354 199714487 60792480 123835036 531177135 989991007 351025586 395685284 578414584 161512457 891143014 56083931 393569338 972199792 533662738 904587951 164768388 81771779 801815328 482071908 316936800 273107904 637592234 8549207 362025803 374908144 460424711 32366528 182415912 795841893 520867065 650989243 695172328 284314624 598974510 76668743 403345865 719502845 990675744 678657558 863000131 255588566 141906881 444097685 41719086 401113542 135431658 831841046 674972484 118952504 32737867 710557440 689286648 638756726 389862004 538579964 537630521 845193020 560561116 637204610 317613479 995184332 804191573 448578901 929442474 479390796 628472179 290410255 838603655 522469320 471412031 900530441 833150889 362861156 797159543 543871291 792643276 679467083 78412257 90384720 540431903 872675236 440328989 329842706 409419077 742831640 793350701 15499635 709569930 31815669 904926418 333354844 405814009 934045555 644689749 799189016 604454355 881484114 218843425 145738669 279611653 881330803 260765319 40424133 435653502 415400062 466931842 70014685 335720274 694962598 943761845 308959103 714892638 801148614 936607674 338444785 491199760 301196512 127593600 227987676 187557694 662718741 132065931 998910557 401867542 243948291 354423364 326534699 586090908 449420661 811739114 276121183 640096087 176524193 577762408 936389339 468156684 342777432 667391759 977713462 556297115 629738140 55455542 687631389 145944220 110639665 617942439 65616529 557704655 533160880 232882233 876828383 150579059 142711193 20467236 640840072 157672504 206092709 991545393 7533476 427668444 986409789 279567235 989774738 577871232 253277777 181371296 124209798 861156181 528409930 869794153 324091406 804394397 269501939 941580642 526953239 128629656 625520749 507944537 710307507 344472903 361322962 593854418 606735723 747928049 314094945 929277698 354540736 2597714 552437754 280710116 858163131 96405398 963943973 452906481 561168526 418492220 123342689 230755216 434539046 98088180 711049268 988631829 185166091 421281301 173054041 81514703 278539011 78627560 342719761 535767267 444541892 922443213 369558415 540202918 341068747 28754315 5220728 434505240 69211877 244617354 679796791 386396531 401155661 285235798 14795891 550987189 487311588 868986234 589462761 941083488 310326598 971617376 308556817 937187068 65703982 249484064 463349511 505057203 13473392 638622985 466177582 604795852 244672860 812662906 720792295 517711642 108610609 192932069 542436145 60726451 654837609 808677025 697193867 20643937 530405293 409965114 95937975 180082719 143814831 841339132 987587850 403457519 49817019 803378719 151127653 161691737 992623437 318199103 442958604 386908878 684949746 488984172 663571004 692278853 420676664 382915592 939753550 582508243 932226374 514400097 149740028 829671469 722056779 137690643 210489133 516951871 842577958 484290040 495366557 349717574 180368413 288743311 372869796 249439585 613971148 437789254 633805543 250661737 647073449 511656932 857433255 113222006 861750758 622186819 433586118 409550490 894393543 446527885 522206852 738743847 771463965 58753004 871531935 319311810 497772464 39362701 679929000 609834381 675654679 741824696 463310709 981933838 422023837 222621622 747622456 209629787 633211573 750872887 904042397 615619243 697491370 483456232 793845963 419521102 700669905 612317556 83743707 937247283 297574783 76887104 303018606 553256120 585889605 66333873 898082432 575942526 147543571 724219647 47280849 495425634 355445200 982034760 737996082 210206527 946932408 530472659 594874922 314016134 314072332 179500793 351754787 788549215 75581511 285361762 658540645 74755328 382040956 630290734 777832587 702428556 484803771 834600456 580213811 704742737 166858708 301268504 709184560 700974751 121260313 591362064 295070061 757405347 854708510 588831026 538237733 191254708 616838099 826287585 129848729 741538263 14049493 424840328 764705943 659040995 349582180 952514246 656556445 679995853 970795214 633120969 950378807 294261226 151756255 164564521 640422280 763733237 552854748 936448337 248899212 237771880 469091881 331575780 859083724 783886755 645767582 100353310 334589386 82414064 660535703 278456165 871459398 156417138 848644984 305701932 172862132 87558105 221335075 801298129 149473716 502211014 576159249 306975268 695739773 709655746 806538235 585039724 58903834 816214065 673317875 359126274 250651100 227937678 346069503 381413485 2435924 351234822 188860997 475039328 256495584 698994465 111541691 160255910 296290397 987126230 773647052 121413328 640021351 251315958 710803788 669771860 99574137 438874458 636914673 594775240 534082693 774937638 750153552 451836170 599572443 40002449 943632016 724920159 960526524 868515099 520456721 728298140 20734752 573541920 697233598 815094945 413176908 604386136 913740789 472968537 465560550 889461753 52621531 58022768 660478819 164935513 934171402 151123300 606161918 403962557 973968986 46442602 630942765 121617824 491381811 53801805 191435703 197799943 90242310 94580974 717892365 927208150 463991807 203981339 48568903 187780486 698719561 27475343 53050617 864202246 480452106 939233220 136474657 99915200 870767687 180762770 271666867 608411771 695541945 496355019 605525573 539429590 194460718 677758692 174350153 471466079 205795774 99190900 172801125 726219539 355962289 85702296 308548869 958022484 599530151 263968848 621026253 551029552 458457288 865372582 167920891 436344806 702545272 729933613 539571373 992696864 249314626 75121849 357193669 308228835 558627882 957458058 345794920 924867979 533958699 60202755 149141050 554068998 126832796 728508918 113005145 184952783 787798821 938026903 10386602 365067680 359923000 749570358 963382897 823505613 333187162 824544343 111561200 96725234 379056086 6473376 868303907 586598885 380048898 163636601 132502523 683405195 564737086 896435540 91369922 702616182 138081268 729693535 31440858 781530578 784844127 609108656 597110272 877114467 693322724 15580756 672086502 427384507 728832975 477758297 183413800 702692644 484887759 548183639 193614230 771038511 354971694 708912990 36945112 98644090 697631880 235095267 739628569 93664984 605128695 693007816 488155698 925561149 535735633 915887652 746119586 844012525 989008922 892645964 167418880 942755375 903384664 154958245 379353120 669727351 715860192 130517769 87095431 563979006 361254943 645581641 823323768 19206789 961414245 107893151 954319269 91088030 134414953 652644070 423317947 270118043 652554933 352402276 306380463 530719372 356041543 747678099 588180264 735862812 36336771 883522044 838733583 963217845 797427234 803917769 765896776 615807848 555780873 535130278 790452983 429343296 943057721 877116095 720363585 184780052 355626403 795912379 458418998 882662780 202594051 771235389 793308636 218812942 916441943 654434971 280357203 418918940 916751831 243912440 831460585 626611148 319918008 577519763 292895462 187662164 718803239 597189005 941314318 821040507 703662954 409781322 199915920 170895482 625784102 864384514 106001290 149321845 553285839 884969091 87973763 882371677 315257409 732320269 540653277 583766072 638781164 662530918 641571540 741733632 379416102 634180062 922478794 780036570 6379735 916694622 768882385 986458788 724367044 873339520 165942011 535899296 158259376 214353159 744390594 473407305 562725429 595226703 243962852 642572393 43217931 89620913 11096115 464405475 526170217 242574064 14962457 591654884 230765912 474772910 167920085 811803560 728684866 497233773 797111004 826848768 124374239 548480182 841839038 221740296 308897015 101450667 392977210 696445827 505275395 510578861 613437099 12995092 868837412 460343070 135818770 695745301 580577929 884031221 328034382 318747774 118835949 522699486 897015657 36458096 816011421 835756548 502625004 279800019 293932762 126328570 28897148 297165567 353223465 12967671 274495236 153343768 736819586 894512630 155703769 868814400 651408372 91061949 729586971 144203868 357687536 34326656 146735207 722823526 328447901 366460903 192701097 902563295 997959291 438177197 712776096 77719585 326749051 398727246 112555157 830219131 682172737 275374108 946640388 587843000 295412115 17860779 602861835 201162926 121211748 210867887 923143051 261198318 86850306 2740878 628815514 219009813 739703873 532425854 679370240 74244275 976659558 355957975 594942953 551881942 171713694 462071723 685973618 706128199 879015821 909665834 746463272 446467408 468760798 234233695 791976282 399229591 516193670 108768870 286676840 266628943 405307884 853431994 486987511 102457186 134489071 789107118 621714561 347217188 435309631 145042291 857989975 469475705 818116570 93621877 483743409 853831305 396131148 195357373 630554980 639114689 307314086 432785064 375411567 215609574 44980112 113103571 86738031 542293269 228127447 754498717 764370231 58419889 395047053 438733636 171062395 541484010 767294512 75453014 564052850 184633357 5747335 359631152 16871383 349077612 623677084 688792677 748802710 159046225 644123457 440229034 50272309 332788083 288175368 885692946 733497434 939990395 363238541 221653435 875941239 300990922 872948953 656395795 779614597 607715501 410631871 130727452 517823208 331893158 90783323 97712016 423322435 841371722 875946374 26782903 20759050 267641004 781363801 698024036 81024593 109735983 971912432 549529103 730259038 10344542 216957312 506859928 165761112 709232756 907997988 157381960 775166727 490376920 528596997 532811238 877808030 93240369 853850643 830941731 989611041 761263759 954365602 105698578 758067818 986757397 587711869 798449008 550583680 543874634 419386762 665916045 392191310 675251066 161692190 432403279 623214431 3266937 241085351 533604 356915413 906856396 102421868 91440212 650011456 192052559 915126155 696485692 307635517 531952300 766660557 90108885 92632536 209169733 186548819 419818789 902967785 985666234 944541649 385439937 772402000 708240282 600947511 843628451 285850758 580036654 588938317 757127709 934222634 768216164 958643522 571991846 291618905 433114315 224200279 844738371 264454738 193434775 537526511 311767634 707114585 405256686 671138876 72378621 988958990 793467835 147787435 914102308 924138637 206702045 546819927 436172413 978929878 898715527 982242472 871123398 103202177 97896790 870966794 276318850 958293798 867629268 321456256 345025012 720211015 462006816 592574265 649981114 615890643 343146785 213298152 129478677 861811253 596519718 34291602 606802603 464634473 583239973 881582724 96063734 525599870 170603812 2794398 420945408 922253506 865480812 780404564 944743854 46347069 765926939 670980996 26386029 369118188 346075197 89268327 134720795 214957114 663179362 279638021 405480873 186836846 339517521 635220212 663063522 598952943 129234592 744658779 791895851 513291872 414219586 613084657 747100449 757641951 672458280 231819276 206889542 721582920 761676835 387542689 60287166 655302877 11950903 109889790 157460707 288296170 77083733 205774587 633627794 280382961 819899351 703618954 818514955 39054608 878764847 349428098 42312506 223327366 145789400 32977252 95991341 573227875 111971546 682517560 721445276 452295058 323571566 375174694 491777922 28113004 813267205 806099109 307149283 867122571 508740408 449601318 225074210 8660937 82442810 573298764 612664081 337343886 408899506 353598691 319608611 344041212 379508643 552822039 906413372 435339354 368013748 985476634 621152341 207172021 514600726 949663084 221794819 124585847 539156999 593223476 68690919 682176002 597318245 792416542 512042672 963211765 679587827 735685107 298468066 942602106 182251086 356849821 680644511 536588783 311898568 615165546 805121317 44713537 455551622 610352951 644753172 414446187 347909122 752980159 918621692 360296041 555685276 485885496 656612601 476106165 688974290 525346095 406439365 779256661 942767317 959968681 402497464 816748873 137628738 119026287 961712119 571150573 986216543 996081247 665318105 511656571 602990845 778177056 936601635 913845413 943193338 691084126 331759074 823634261 920367585 67659892 147653224 578956588 224523924 165719754 839209319 542603408 955195323 804662722 607426564 847688390 648802229 247539872 615558126 843220500 545393576 68390940 572721646 350687202 730913290 934938007 531698468 345887681 490127682 424423273 585868677 879181229 330513643 435273488 567565285 698259359 382914274 514941821 15198704 91113027 728732156 503640781 73451309 419728303 296437227 700417725 354574368 831661754 661609613 574942686 149611427 256134870 581302571 351964708 173820021 935786376 992252283 932905547 366685379 653301800 731960453 972282691 894133474 17959964 74585914 977895331 750357661 274759350 289654975 355668043 285927380 894836545 393760084 486149571 285234437 442038190 822467135 432953509 220889986 398306143 943053321 1075430 263471693 266043609 641420496 899829712 393046127 10256326 252323930 521014590 213488124 672729245 564271671 161479154 328182570 262964130 241323978 152627980 356952701 8245636 239584292 876999026 546450932 762495612 5600855 549798261 480325307 137176981 410164083 703816748 814780043 791489269 942868528 78612053 598388913 726147911 466429376 655223108 78974955 30161814 569200319 562977115 340532918 244077568 436424413 379464068 876488789 705543500 847581784 890809120 810277463 21822072 51484779 569653527 776812877 755193437 950131719 534868851 601192006 950299930 465221375 903059434 436576884 856077761 657416917 749671693 992735506 994194891 696080271 603472752 639068591 284205001 134069726 712793299 8751249 521128621 496002865 30988822 317599866 493199173 729896972 34245319 679409334 554737665 885739788 768186314 563595679 738079 409531169 183016442 224941301 384807969 609053162 574757367 388663930 571134011 14360874 76167979 791984185 79242285 249881529 106108809 856967448 334618173 321545864 220667977 762421043 230808937 536037469 958097897 988091840 9292801 736586479 951457682 655500391 244344350 985600767 122513787 983102893 230259166 539353417 8902858 364142465 106718687 653430757 148694066 443037742 420339403 207280134 630677182 572634565 487394685 101585294 208641375 855459623 524252 47690183 747025603 216678433 948010932 965300305 505477072 827138440 78903015 76797238 836122273 527814403 482845316 170008383 612279523 416531723 771948983 99861692 636035315 291241534 24426064 732938667 181892762 537650341 573634008 862999238 280983879 200573561 166608988 942124400 857363978 917531422 127213524 957086028 578814187 361406651 280766780 486366924 644847678 177573085 367677024 824600886 885543690 699005613 731655381 129183838 258103372 733153655 735824279 694591381 232175232 17640591 448778883 173148743 102118943 571208581 708733429 98270890 325811951 554235485 4103293 623515014 626134799 244904550 948464657 159932065 373369827 48875254 32657504 606351201 987265890 302153595 313729583 964070227 462199318 264757159 72520978 123689747 700070569 144437536 409457821 621513285 589666498 827215311 239896790 917513715 734008159 475294864 973185425 114092710 54885614 556589208 450494133 987345916 376277135 994153939 960746661 381291463 210270701 554622811 999856677 137523315 374580192 694619092 885783631 377458856 673567998 531963484 124832870 913887535 735895293 835177501 57107835 759260695 937787846 627426425 497239135 706302245 220767031 235071106 902812935 845773864 189444689 527346434 126607497 428646843 420614113 591202083 184484197 247731641 934357267 934872241 943195306 138517574 837038845 741698360 540271294 238150297 343348296 485553778 695352761 304025251 949415846 966634912 913301592 502481608 905444198 17431891 758654161 164633359 53117182 860340131 18527949 450545067 759536390 267686219 548992618 760032934 383513177 483009315 997233646 284949869 691634159 785090297 12257967 852934517 258069270 684904001 19628658 338048740 268937353 769845603 373281171 912810655 185301126 451275828 53102370 231823756 728446336 434160307 165108916 608756871 579052231 498854854 714470429 491211523 291656462 161274206 632291822 401493183 124089708 807705132 760922131 573015799 902076888 980819557 243265812 363534080 701196193 576377746 918017214 108731694 898527037 319207652 125896679 797792336 560240668 73444883 700637767 559984569 430917291 609255788 837479857 380311238 228274457 752634993 47938881 506938612 98898510 447532136 988790919 385413840 857562932 572896264 306906271 701919731 797155815 222906867 345333364 378634956 222107241 635766770 892893782 309112877 519185188 636322084 964759211 605370066 891001370 501102430 835739097 532703921 562143323 961620560 987702217 310823742 541631363 115598990 824291504 910381915 123658810 169027632 847157722 538735086 330299590 780722813 141915812 202365686 592871131 496970189 342034986 641437897 392634499 506169281 830643051 398544955 996237308 315590455 225874264 703121509 154160402 252129759 597690202 223202550 81117668 763849837 883440233 118329913 882574932 59815071 774531331 321648689 719597190 935836370 427723951 460774904 45073167 910074832 972308629 393950605 581864653 230332763 623238489 306510743 14556016 748141234 502145889 653195882 625273840 772910495 278442922 777788982 139210758 386135576 831664102 679650567 516978365 267863176 659164665 431573394 952232263 205626700 735414275 622862129 155525749 94881136 834008194 356999302 940576128 648891270 726245441 994529780 247684115 779803100 961615385 500914365 956342145 868766741 881194321 534948463 438872597 857404472 370379478 747416279 67625307 725389805 35013861 410488774 683105887 328558671 590795342 624188252 920579420 639387756 886968863 189870922 181458585 80429430 60528168 796385659 553519205 185560053 897584694 175356910 925456150 175630682 275514153 839537579 587414808 362776418 992029164 974372708 184256850 48926098 228344488 898585678 82768027 411649278 180073608 1429114 86225279 868845114 231261878 594290712 721099078 48113561 292446686 89557432 47305645 210971123 876777007 294564182 607021321 134113342 215634445 550180265 609615954 365710050 993007673 741744929 523037418 749737634 367640740 290794313 779363466 708274042 967908176 394951084 909710912 726346167 862450133 709612516 717472183 512996935 55913146 723073138 511149231 890229618 503833652 472028609 644076017 155244532 589159567 260421474 484704050 422375849 293465326 61191086 928197813 395294671 999471081 121506536 859665260 716200036 554159536 682876182 9502454 758181474 87801525 74793836 284385139 228566150 200308472 760048008 726886101 436676499 32279301 652242136 76655031 294788653 941528331 806229346 90574681 571381623 274544704 66878473 498592563 804911824 953970518 998407066 107782301 937010290 844498103 273340593 75178197 264807265 756179299 545224891 821917481 712058551 934165791 332614425 118499036 484113906 207779143 645694258 157527533 942313850 665333872 985723472 577113201 870418781 641608634 294673291 974189550 522826276 556773539 95609788 84621128 312083516 90591399 272413143 663612069 292375664 841928360 429546884 692662151 235849053 470700398 220147278 150062799 343403566 919993728 974107869 311557428 189786808 902169435 85249676 80989679 775586327 95620343 761372875 126440878 961929390 923464794 68457794 163583313 82301744 773102550 238874550 35608714 954123422 741851099 869898884 492518922 216653095 557191469 492222043 369622941 69197945 580143141 404584116 802990361 417161495 845819793 749885903 393636955 398567798 869041620 138151727 312313525 243457984 299162206 424848117 379498463 45088931 46525055 192727072 594319108 830642652 568295870 620361658 699489410 599455223 238054479 402286103 700323255 955156668 118437127 971491570 712407879 376431941 392526458 162657719 260359911 411458545 767682656 819222153 491261944 543764893 143275511 13276381 862331048 348357556 342192573 115633918 638959975 241004699 934108828 212367722 58240298 495587561 738812525 265149741 617291123 987336737 216009194 492846889 542218155 147545317 967947122 174256828 403431800 657778163 665422882 544877737 550996718 161889793 788956467 324728842 342393260 85313855 91519752 871714697 548689527 578644385 351459978 567472773 113144310 591722489 234839650 729887538 636180631 803868434 873998775 642822141 650926728 818756283 50431619 393224150 135623114 872297298 578804748 126006480 362033602 631401380 161498064 80282249 124887127 57247018 241639282 709236004 410783825 48213697 940025629 985082780 117637828 324435045 590268487 733186644 866847520 872155567 962641132 916177565 273044521 455884722 436030488 338270461 493396295 177469177 634169849 934457212 300302131 182938813 154925562 561712348 508115403 29661695 868965979 449927439 688875059 555300158 977474146 58640188 43903750 631092409 657691683 35865590 69424172 702912159 724936573 107896328 122892154 802109727 223855386 365104792 617100212 703092819 756738265 593775763 123418775 368673753 122623082 528410943 563014665 455033782 727890170 312958097 741991721 558897471 180081415 731312353 156222697 660598607 975814559 565920879 195385625 425840880 889594993 769167791 285204038 425699697 457188916 482510615 691282983 301423206 941826829 727477647 740302999 52991421 975469765 520338410 738857400 435510750 338635551 933391982 999163140 106288611 44200623 243286307 695594529 344529523 528306427 616973684 687725573 144962394 769499707 69401637 575010467 291010191 440770213 375006762 21992827 418353454 614327615 413332857 130728952 772914854 67522945 322158591 102061187 792936435 630451172 202910942 816060318 265592789 616068412 746740235 1755743 144135827 846809601 926843868 404952520 793101009 305681031 21273295 793059652 678475641 976048361 804964619 604819589 724128580 770292032 815815750 685707094 323582471 518515443 717070693 752586285 294317279 8072015 741126580 227934168 184557180 526671099 471161015 507997346 731930358 63193504 707923736 135570425 856410701 65914985 64643916 861452829 653733369 579030163 778490339 319188212 421476857 226711379 669656589 857756489 626635881 931947059 788395110 839533201 482987989 165785847 240223880 189566931 631938823 721171570 214510561 278047390 711442741 582152846 548966719 211310074 317660393 346728342 606015605 155768993 97678799 849120131 809235469 460741118 579128881 586121859 634231350 47123014 528369703 211105351 530961818 347935289 927473638 696879284 933499295 177473990 275813405 381360836 27443271 336547919 914463054 103052374 996741321 5562822 984613564 970956514 288501720 18490020 497503249 466137854 978791100 915730090 523130213 943041981 299963414 486451099 783247640 423365733 619965844 975774509 218278916 801347897 231066587 239393257 416378219 149779029 414900668 673466664 428535652 866276712 211880222 725540972 768835255 542084957 717185458 345079096 712072535 401206097 649625942 662053592 473070895 959038097 147849103 499392836 311185992 597908572 299249221 531923973 627220777 63443792 355932767 649507940 248339461 496401032 961238572 244789562 652091834 701963540 406077679 761526231 124527564 126825855 46292732 441170844 742752085 986740266 521547113 584229027 217259946 469211110 920787356 219121414 309588703 965469564 482471295 313886451 701661087 316789155 599033991 911034545 172790571 807762410 270854745 951723916 410087697 567541849 596590898 696692111 325621852 723578395 118380138 639516495 551838222 724764780 378029961 666329109 442079406 976588559 5171771 292081421 97071825 116920452 509110271 335181309 247784420 91531929 488534179 936578973 53082611 514977242 932805975 800527176 830704498 258691110 568084598 860376436 982939353 654126376 701993431 353374990 907205732 705036000 319746295 540448615 546635143 498957450 740672911 895802526 607911313 662288631 148061920 975537406 372465128 91998604 614918924 468600026 874957907 237821786 942286632 928982228 837947279 107893212 848584712 789592644 612922009 752173089 932049307 152922946 699985359 968992940 586340949 807282394 807278165 549019869 315017191 337825058 896672637 863102658 479430082 363516586 776632395 816090670 686458093 531086173 813574050 975170997 432844313 204239889 203254749 694334111 678880605 453931642 774912842 124170036 789927159 686306381 253577585 225972122 838196988 228084290 222135736 532707290 334612436 897422277 776319299 300324164 521829168 395431347 266835809 845317730 254291730 676114624 764475555 122526725 332571915 765950757 104526942 379795019 551326644 470944263 5085385 804049964 290201160 698991998 706655485 663798151 766651690 772319248 700721908 950361356 852943171 360228091 668158886 882078514 277373611 867633499 666032061 451343831 2068385 49766174 270454599 705176593 862476707 937570931 952283824 972168394 410914572 333638497 359308752 166955592 808240037 430077785 270841333 988066910 925034545 614065760 636115341 194664085 939743578 859797969 795838968 475401284 300472150 822094654 921451425 684257723 538491506 591053586 917703242 75774144 704043108 143375740 850784153 229359886 764844374 688604916 802725414 789419317 809267564 562748454 280936312 777816392 170398028 668125530 107790737 693259214 41653966 278115036 497453360 493583858 695858068 354062810 526505986 481260056 666781823 345161446 643895695 605568806 907401754 77575454 232473504 318015164 771971578 273823526 670019277 601707357 712670286 368206173 347569999 294221236 977278505 80299860 477752800 118870841 380258097 31895839 439964929 772988702 298650691 918387452 792605060 885174524 697519959 738775861 617835728 120162096 705351459 760781313 930544308 685549551 836054055 115076624 897594937 429317782 3344776 139790893 443304081 286175232 474799052 304840193 85700030 874159185 342017056 322719133 24916388 752937679 338686082 895926480 273113929 590643699 357304415 690327038 179625655 976405591 547950559 896124926 171691874 366200149 847530909 182013901 843879656 274688130 503547159 464304385 434728853 556095477 791105156 511872323 76525042 824377045 304265627 235384081 892441796 949645572 261064365 753425384 479617119 158736215 146021299 594702503 313024930 751121024 413904865 349588452 876149965 768149070 264586514 723333544 277096272 44053718 779606784 392351171 485335065 856226051 304350170 232129683 38065683 222997109 462266907 923872354 797681529 74833793 433586780 571100727 405269525 670440366 388642404 709388213 732765019 523050099 882549899 461375825 102514471 460698096 521973660 821783941 73806063 720877387 375927056 625493937 718434976 853339548 242815464 457043961 529249824 531433041 588888898 311353799 989234199 144356888 136160124 584455410 630967462 113996994 153583522 220229904 296126433 119633892 223267260 194695491 797659103 757117437 410015267 325844317 42303394 831464888 856611191 399847454 399964817 317681428 854130929 461271245 692675550 952866061 788633721 553868130 725492623 36658949 541506175 840383057 447580970 311581407 527002197 901986956 374238704 674001186 530596162 54014321 53010672 634124660 247483583 81385448 963305012 187714854 288816933 678212342 674073904 488557315 101662963 492626052 817324776 764722322 333329843 60200149 304980943 120877367 494207885 960435683 53218327 488288926 604855564 604396113 766990593 865660205 959141002 896690194 822453131 566659660 158537651 977401146 169406430 802258634 490009349 55291554 209896024 40713047 336655617 34604219 918860050 267251134 10396812 927281558 916955267 120360126 627992814 700202333 12397010 366368647 828992727 576263193 21618815 931538347 455765028 194341270 318988067 19571233 235114501 469352759 3913887 368932972 936645811 490679724 448978178 703397409 81813748 869010211 83918603 499389282 449715135 810696095 768036420 604753205 487833496 127225691 402315186 262261126 249455251 978117044 371965643 562435505 502958332 317334757 231950452 180664307 103298399 178323227 665221350 157836546 272782221 768847392 567828913 35050039 42832049 657299415 852129544 624437248 268870614 160451776 121783089 570229976 673796550 371922532 669224364 72368659 740398399 619119444 320508450 911580687 76414757 808895540 581915944 723374253 265446541 738273090 284881718 630599359 677365372 376218447 56959995 446832644 47974582 790177902 771149757 644537349 36458899 900321829 154336697 172337367 260310442 692598663 670830556 290859814 397555137 797161656 985612194 847658646 912895249 288889838 936720639 603041643 713674306 589214768 767985617 304648896 524480770 52627053 478127962 56959310 467463705 883829818 597700722 911191738 620860447 872864208 109070248 77019545 300725760 653067062 999032558 904555482 223861613 395013408 254182976 860066258 66694778 322953830 86926281 485746315 907390929 848533227 764078639 548985104 169210430 591861116 484436349 768758000 75286137 861572408 290470355 768267572 889360040 86856012 844335480 527530061 331165045 536404162 617318762 545195964 62820571 555806156 382729004 46118853 51288967 370098768 39346579 795231018 733634071 180499730 440406461 579857083 122978458 708880615 72281280 636847434 803459249 476789908 414234482 745319269 899895481 953790907 242512270 749852618 95663090 660638714 480721642 788333314 635319824 895327287 415785983 872851592 795485190 216372496 959877218 59065315 873847860 487607881 981066167 173174821 420169748 142099074 386634101 730288732 617353190 457575054 170851193 352187103 975282898 811801832 995878133 121805172 689926380 631390003 934447726 905562828 669428090 905832269 149060567 576997014 665096853 27404290 760843757 567863719 752717963 213578702 187132767 429580633 68090697 306247784 444781391 479300985 224264698 438790763 820886176 160674941 324042404 582443501 25882532 434282203 552387945 434737019 173198440 347567053 620958728 305077313 755910565 486809679 245663894 535522483 378855019 308874244 362359917 621534114 457651392 103370019 125088583 360083768 726800360 322496824 41149862 776661203 755833120 152834825 214632344 207028725 533059204 297008861 800401984 69970276 799386456 883999393 12296532 166147073 445526944 822594306 568329838 51455169 2028104 125422913 49072770 11117705 204161003 405551832 436333434 228748492 671173758 350626435 271767167 394719939 561383168 487378246 943787513 77937497 535288159 742277918 907084020 433415985 889595167 300232310 881646421 491183520 98648631 54907005 51687551 819497817 606116558 704754666 326377265 948147994 387797448 640177781 2832298 318172670 293430620 119126950 556160730 289030000 127461985 323875490 444620190 664882375 169607651 346095894 861691717 80553522 365310057 911639931 165473005 451211956 44085987 930081755 66229694 530482738 627265888 30893764 290195641 888272950 311846527 459178150 382316577 772781855 646117501 331728725 668663945 872662916 328325676 898934687 305439375 349994897 523106604 547398824 297396487 351353024 253565694 217785143 505311595 142808527 904927292 599450900 833994069 311755240 299332888 150623745 580393513 28265542 407583866 183275249 865476690 12490108 715803586 310846463 553685613 265972734 279597507 969079753 860855798 36839845 859377591 353730086 393697110 317280015 912257041 515219991 7495913 902064882 863858351 45022407 963006665 831529863 101281469 916869946 907374978 747535441 535141850 78487224 976578547 996757371 760803690 746433671 736795076 174831007 192322688 490740339 620333229 598937803 492853852 45118620 838001961 421484801 885443058 172207522 187813208 647541892 297233645 666812192 795469353 674269559 670371151 613995596 210902152 831335214 480001573 40428364 401858366 112341727 389175402 304046231 914237632 482717629 233803744 741726151 348713869 140459441 437353856 935634335 615813546 503286820 119453530 859426541 856119483 979016109 5249786 964667073 457593198 191363683 569040091 482605183 139808995 21446920 546810867 169619267 683100670 301444534 628776214 147106162 654240871 623336020 496955328 872422403 774566431 348868429 283355993 275889178 728974740 575914960 430887358 244199267 202956507 148892266 102137651 721271349 928354487 368330731 269757072 903893460 554263925 862292521 855100462 376447799 929487958 484174495 908332251 851740999 454714769 827379986 38812845 639598681 716196092 752068487 382968004 630755372 810502435 307900781 427817361 503956266 770137180 640483487 810320414 475157812 2680090 478445424 374442501 313633187 612260786 406873699 799159511 751396810 378905773 674424669 332520955 179598834 852892431 990047377 22142694 343695142 873799007 76452894 620416404 362828635 814979117 544521508 69979188 772659906 156727730 818432491 622164478 575567995 823045393 317802757 34721735 16635374 361415737 184939014 282149187 931977228 215275877 296399121 393028109 279467571 757128872 564090149 105590902 499440261 862638043 823496938 923111400 976442965 246340705 760366880 320776544 905338250 922689467 595492543 397871206 116936954 387822907 45382672 413681624 885850133 773223084 544762153 896228818 972019014 922486956 980906083 521629522 249968872 186194664 103035768 852112360 555587426 193295702 258884554 84395550 48235438 932794543 416497167 1323460 669903972 81076460 543447187 831597331 925460589 417935223 81149720 324800022 965156825 329309521 3966113 596848961 687534645 852928818 65668668 877025906 601141568 329991158 249375101 21233876 914042356 470552396 580544155 150946595 332668886 227676561 967272021 650570838 922938637 58829189 833772571 295723752 847047620 793849226 90930441 9242688 907796326 302853067 502735400 422117 405906249 657275557 835805617 421089921 756654111 257738103 96161696 289269596 474004294 75548755 413672803 764119366 530417182 669339987 445904800 858144559 867545820 94283604 361414924 613387836 321240625 598543645 640469073 70268614 103832345 672199001 626253909 563446773 136678416 181428350 116673106 993218461 126412980 292135696 88901653 844872056 119327645 86699854 806475458 569708018 712814093 742855391 276730105 357640120 523602655 837913045 967516157 10901960 102831424 144287173 723367178 509052222 485435325 723481243 703857896 217174688 460607106 939075713 749353365 635402408 506883768 105499942 565467505 777756606 267002553 658506034 113679313 463413504 660928465 559862575 351241565 479727268 182801801 147419913 444016057 561626572 288688440 965187208 576342583 358713150 94469923 924237286 220994680 815475604 394701541 990903653 612592178 776546213 318807165 884267743 381370593 538763075 370761005 875090395 636331497 370098269 481728179 469964053 457676995 252919444 850169919 561123333 726786112 767829500 171361237 533492451 661708072 782739192 208345641 441892388 788399438 968083928 207012190 255846864 544733853 644846618 184376368 46012993 506472460 633177698 221875561 551452721 469869226 677832231 131326368 878061176 211716764 475763109 22067552 671614861 546425643 136315263 963648245 955057691 103478457 874991406 358772096 125814000 750980679 473002308 568416945 420813304 661635024 314289425 5578485 110155083 933621065 544495208 450177745 869798951 433961943 673676318 989674534 392061326 876744369 896756618 952679188 785580519 47433110 624219856 677032653 656955156 576323385 845493938 850770304 542567791 651201280 791507773 511640596 895561019 282149430 716857560 520399256 540213604 183647587 744524141 957214969 138151478 591516156 215531255 878155128 129114311 289920769 988523781 160461671 458757659 68460738 912108871 388611007 813363913 580491474 848142509 537684995 124309879 155331388 491026421 640409336 236628389 583658177 895327767 577649370 607147918 879143789 123396551 368907264 990127067 180878082 56820180 389897742 273844027 905207666 71086990 452765696 166752278 809825708 77744144 882624828 881038009 499637819 309108629 380630509 531471377 631839578 750963193 53904893 68458979 844622282 199029491 476279016 736473298 827502779 283913243 764712281 684633295 715569450 803615948 136336530 412634660 602345442 476184968 41996392 936246566 751583854 865932345 256414056 968848636 519295667 328073917 594104529 212065153 971111101 642443303 747808846 825512935 807336821 888239813 848988729 454457965 86462256 176959711 697224057 875065095 561468712 783264667 187458459 458346386 30304496 692876713 63400946 695204374 342996531 581502721 352594493 92300433 186357786 906644433 635792697 932256800 407618061 773814300 184814892 596442464 838165255 732821530 614153784 492170588 284004806 257666891 98061190 909363479 457203591 671046504 567917483 140337134 746422080 807210529 659075954 342821000 671595818 300716251 8408449 767962326 107611061 826617014 968742623 944855045 650305454 98611985 263132206 225464358 145048840 995396310 681521771 619693761 503153482 180862150 634714856 52230156 999914166 141096164 388918336 843802893 453097907 461703075 59155685 409960252 3460752 538850165 632102988 390214732 322293073 234330301 964984051 301558518 553436617 603812653 693732564 456630359 129896862 496500589 432895038 437681804 195210306 159705706 481486715 71316516 274406048 114111417 131770246 120921860 548436936 243561260 333674955 224777058 911988502 692115760 998766498 125808836 819327915 642706353 605330110 874422167 378531484 349701725 940268972 364236030 922580941 749720579 824230816 421155540 24371730 968619048 899441190 840942334 828939418 873848633 945845689 776815159 5233691 238194414 265651346 334207012 746216217 952531358 203693861 73814050 806171491 429795512 785038460 163684548 976915229 592504360 62531472 503009605 970321513 590580418 470686145 155731317 363124365 525575345 551493024 709196668 416541408 420082344 164978624 940788416 288014430 838775007 142320242 671036882 561449249 468359754 962745637 765531060 791097023 390140907 313015605 404081929 225527719 792076518 183922064 492950789 183423546 462848310 798647011 85005106 975531751 508172584 679133383 575063294 583861514 60221496 457131156 161328861 599078200 137630079 595816754 530789352 63972693 67133325 275191564 765953647 846747996 827280776 774845846 620300672 692100033 337083726 205549384 141039721 609305213 496066124 269629544 930710214 106926687 440994041 646476183 26501208 935970664 968071017 506902313 295657554 806375263 716728237 544358688 915966531 694359458 607532570 232327622 965196268 462942754 729679209 664760559 977608335 687242226 125135305 379966722 677453808 660922955 158161941 633959662 492601377 194445347 634875608 171971715 291471072 974760059 153722391 372273397 5342681 800846855 744759142 822586690 991949677 503776451 251344275 530226601 81360625 359690793 157506392 139630035 951015604 555372737 591586436 81488373 556993731 794882901 944647918 85723770 437791383 46338739 940794548 497486341 469394800 776514577 307223331 686254791 351090024 816351950 971925544 757692428 394816465 564516783 72367747 978411756 642554204 921858190 88985611 103205075 542159632 196211237 942515416 198294287 223265443 53516950 684177409 723254739 328464014 26466967 533481568 662700627 228498340 785497943 43627813 402379656 71741873 96659209 997150838 259643214 619192867 163562799 251632875 902817305 559708896 512975506 917073087 818208010 319981985 791721788 171574061 201460941 257449135 445652971 172188426 589216398 64266444 149387971 396712494 197138937 954992930 72269599 575386586 873966701 100624941 214307926 725332382 475022480 767268398 286791625 880070770 435865607 681032804 919076516 807159998 668984050 438373344 33356138 810119398 842479255 351718272 564178096 175986062 932722572 700340668 579060975 952249230 75998895 254674801 250269285 845774302 726614077 138735802 538016589 122569876 710904996 554750434 964801981 313728622 576800440 701633660 876006730 334995133 286367371 524277867 250149548 857371721 339299759 399072572 439152593 540630614 959881280 912709940 848267393 871229296 896760188 236756381 568734953 223604832 808911090 75653524 330098558 918377095 740077414 23227027 767304503 667320932 654410050 317048677 288999967 189288660 856484810 57311273 660332772 578656063 623917882 230261589 568721394 571022599 296178818 705114940 60484470 869766545 192270471 113931493 492657283 335520305 390019352 421852968 391684648 573721162 939615863 513273322 424295940 204945813 389492180 315326638 487977789 35358352 555532277 840060923 897421229 628334476 601349774 23566165 542084922 533955158 638940029 585407727 627317783 308947911 903889478 942012240 100364608 45044451 722648932 573945138 285258314 794978188 503469338 649944329 377043516 169039960 410847322 841727156 263482735 119813662 86721520 820700925 272131185 274555116 757237316 719635692 274646168 920913280 705803063 649186540 933764140 927305728 149713821 759958697 428882299 296445372 31031642 93784198 378605481 801860593 291124953 296005635 608464372 926937290 868922838 527443730 532600202 819799839 642901169 632395512 658624383 390303929 606541317 136556051 392238952 996439964 337495241 292241773 94044639 573166635 733052275 540124701 175142692 279094069 293791318 562197082 227364513 452075861 924694592 247534092 644138300 19337975 558638828 737494412 8127317 857381368 644373817 707123576 315509356 300781548 130015643 299178755 655822129 329899266 826332285 223097536 915714348 361247852 158595127 912104196 672089254 648192093 372537253 414184625 777675364 985555571 331182742 271658619 556161762 208487679 116403588 645875684 663298292 363439595 773074973 340837529 272459420 436032273 333243939 207046316 750158210 80664224 655587624 278803864 631324335 655414966 619007082 111154134 935021531 896245000 928588224 866692277 716773659 286044492 231356433 825885876 912571587 952234650 731349323 848639186 477752119 188625721 667525759 48966942 259927333 212834577 912362719 34854396 715990261 53769957 351797136 252970428 906767577 667428694 460028325 771104564 508951556 712070256 708178591 341446488 849339824 357506560 525014893 73561448 452943103 44109564 129146733 821716453 857290312 486397527 224753506 197308104 597038593 456469075 634475253 456664560 201138705 695982570 685714296 134214286 838915612 221285268 284308325 973201170 152402813 596788871 475829773 317258333 99439769 223073225 28284948 347085500 441319616 366602338 500379069 467543415 129820507 113964066 902442916 284437210 307461158 892860661 759767827 896375448 381538952 170629583 510267931 265018239 551858836 3844705 62638508 397194576 259896387 287500372 832073525 351991331 98114457 805574662 261529882 543391673 328621999 723663450 507823183 378383130 647619966 25240449 230532093 154984212 715285305 426272527 328996918 121957851 390306191 3678929 902624081 882125394 833296054 438760857 553060584 862246881 414631779 165229302 649163428 2765752 288869028 973240258 442316573 623486752 583518764 673251271 484167489 262944986 967536315 50838415 177151994 96791976 569153474 37595043 660810089 551093651 963709720 642229991 958195778 747466569 785480683 573215857 947877244 27344263 781392740 819007538 607120208 160696731 195472453 427142412 680238415 326497166 237358382 691713936 154557248 211029027 340718067 30639199 619526926 790918477 943833178 581315029 259021710 554020627 295785754 851959958 232748514 442730156 879542578 968344664 811871369 246022224 828455442 667018538 90694250 409851285 249190989 346563141 489990798 780886009 717044310 982246922 360891590 79749226 499430402 214702442 161065331 627602471 661609189 52765370 141838813 311782427 278550631 475170710 763383750 927821529 631468751 439416590 73318919 80527190 335950620 217240583 424187282 414102045 240539975 946003686 611278879 137269905 704159643 9192360 410016302 86254204 828624415 339691590 991038190 178059808 71536845 915380441 229727757 1473615 931366009 482799638 590563787 850610318 458885498 342198652 197582894 839394640 589516762 791779799 864634343 241160866 727682645 717479028 551886322 832073222 601311531 520147258 13234083 616622902 668009845 55982122 851194822 316322580 908015794 805571981 472097528 873493216 935511797 884364747 54674131 437845422 777694457 693647421 48880902 498369455 504220419 550466576 543629004 529195111 715232402 61783336 256274441 180007578 154070220 670098187 835224002 834051257 228504614 717061087 406512663 37438352 254831745 324029663 488598058 955729807 151344883 260609352 379858941 529482736 710635492 241702000 897268789 593845038 235816784 737784804 687216320 624661472 867546919 683620540 156265079 704453647 687819710 717482074 275457970 221343529 75772920 433732196 823342108 1052652 561791222 285329047 41780598 444943132 66097959 932048399 336052388 767103270 313810419 35859965 27242883 795305815 559812979 484730875 402007309 12048651 88555775 635369427 639012679 771454993 881192667 37731901 215346201 410387966 274341313 130327805 213048718 322938199 932063065 569780286 997658736 299562484 352324596 123793343 36479419 947232888 216595150 274094491 659955032 816460080 973148634 394881657 803211236 426186210 754885319 382247714 412307273 342540994 154726128 579633363 691008962 883643323 579316261 535123542 465548524 476605517 51930230 747286284 265059887 502687485 831398520 826895170 509485448 73809139 418971462 448332531 362622610 867427951 904527099 774801965 690051581 421470323 724565179 197235327 895442738 107196957 110854002 772760226 49141855 283814112 654874452 318312423 422436500 777477806 337692551 765115159 438092615 980181710 173096872 171890339 190633845 944598036 698706194 161095850 939585486 353646485 61741362 161528322 962968088 179625139 711655218 593296453 154134258 888975984 438725755 448368663 903878481 615906893 6574455 708464725 459022841 425436311 672971848 169864300 874022008 274991898 141619730 802056015 455146279 367197327 343941659 104126909 691908401 157371745 173409623 840502915 147710736 5103130 936188541 655400782 563731615 571629929 860781250 74489921 32162066 747779792 731001731 248088372 682848974 449908110 59579682 154841928 846622339 115570734 254355531 51703927 138152535 774991620 809854036 369946117 550552597 957564381 393661420 796076881 538093565 337613996 809115140 616339793 376207977 160897602 249367785 204280654 130623422 862783736 184785944 551086762 451579564 646094032 515330028 991028303 789953712 821386652 131676356 727688551 245048136 60213483 175640919 677753842 228694230 806666608 706363603 749135843 879595269 425670221 19793501 305781071 285614666 873641983 733029841 38053181 151190755 726171242 439980967 634589382 376751138 460835257 944142618 379975132 41495728 332868533 221753499 209660489 581033412 423918285 161869411 594865418 28406401 249397447 224426677 767614655 807628073 219072039 681138137 782165512 790707668 322756100 501893933 703548131 727349443 102349062 930722050 783208453 871214419 216098549 270084898 283324688 360458495 709020589 237328780 881673262 216621860 282363965 929145257 37998669 248787913 361374876 518587166 224011377 748349879 428802155 180782695 223681666 671269327 291861601 629129367 70722440 51019923 829123625 869766204 942666139 456351740 884749237 678895158 741057697 443154382 749032593 91137082 945496228 987129361 941227673 157473431 5533109 773370064 62944518 798675996 792409500 456530025 269159555 770485832 155916016 275646201 452214096 200140422 519837758 499390691 879530225 288521163 654813464 159313935 354005803 221734094 659940294 649077141 626670568 199360544 294916307 889990167 701645749 774446829 168109394 609987063 946508544 351438532 510100240 118639241 401479240 459199581 520434904 901044881 156503610 409338792 877701238 120613301 781720727 234658130 19481745 718317279 810324889 950809137 593610137 362760015 599928275 311139792 685457210 65826715 588141179 763470454 957321637 505020734 240520331 505483067 847200013 954420191 685480633 255966559 323109125 287336505 897622140 276192976 304696951 804598315 859607516 830328929 211863779 840252081 944790195 550662478 232969179 159067296 745925881 742857214 138502212 747529527 555935091 86709901 713438179 462033572 237440158 306416762 772435161 348167124 882951025 141070264 930941551 931150351 677039339 429121912 832873403 995129347 762914885 751707136 543514537 402620387 15484558 169026701 782302939 143339819 834805275 285206015 64308977 921411557 255083166 779367575 919610770 89889331 352324447 502436690 681643416 706270862 866439689 52348176 99557243 886749942 323690124 765021273 733936271 835844742 525544264 222207871 260196617 677187614 6912325 743871541 607463495 367257436 660869429 403278365 395225344 588452648 917938934 844544988 343742251 299243037 25607807 907210985 414524563 577168857 596453174 613629969 816542714 415223135 806533916 387130713 454626088 948229391 926506030 884801575 411359950 283933733 501225508 660453041 90696036 421277117 33618307 747444326 662315517 553412727 304700229 649948286 633433226 57057094 747811307 552728020 215782343 692796329 504156951 86612935 323143547 707191031 277780072 53715579 22203350 467022038 683785216 605525752 813206316 712069052 970334165 812718121 380522183 177351505 381642365 212691437 553068041 520014376 168467499 777409599 233190339 330277917 878173704 260191172 936133545 23092831 82487688 763491703 448204321 479804665 535772945 258180980 799357245 551029472 11105104 862124539 17915696 374003848 565620683 654626038 432287514 652542403 220198585 753117969 561552642 876519395 694730466 525458032 211752638 153890356 9230615 439845296 863483287 782427893 46776925 989879865 61268693 671234004 800577697 447569409 625345176 635089419 989701448 830764055 313373109 41715953 13423183 471319641 339644617 488096281 72753026 485772384 266273210 490678432 541812765 852836689 206208913 987953524 540281422 28395780 995918492 167768840 119121252 191674399 218945819 669132998 523541610 139891481 27970402 878045475 231784897 157614820 246402441 99760239 14130414 859921029 476212096 691007761 141147195 264621268 446527307 32123802 820836340 563333934 186649341 117486561 458133796 729325496 50598634 853927343 344578350 311314220 808111711 542477967 650116451 735876750 742394404 903425986 184004080 491846297 648457493 226468249 102649331 104551865 180069641 398110663 916611648 438722184 628525527 460865835 994801704 1770932 215491611 715542726 356593400 958053254 988577425 165006052 7186801 84840802 45726778 180944936 777735804 99667982 36102798 453696614 324737945 539949367 924378382 746540419 642511128 56246738 101329479 675512504 207066939 598833756 255894972 311640987 50542217 457746642 967010757 290613324 348554387 131156139 877170789 868259948 771113966 409233966 785280236 868588408 880117827 489301310 650378881 855073415 90956197 623689329 261438921 739316487 534891761 233940417 847918910 981188782 237847275 258063606 536836487 704525111 172808043 18545225 709460584 774038495 113593753 764495184 604480300 574672204 431523170 177055309 870068880 967775623 294756522 553301132 543499785 461154306 456225357 499627302 338657983 378090702 56642012 206018906 987508067 244876865 612073378 363889011 405873420 56723070 434075639 80242260 73567638 698659069 223732212 990646304 512813043 274955267 398364028 662572305 409551283 548658455 151769048 443151870 565711816 103341235 545433097 521081514 318125309 673853967 457295850 55400556 268265063 73119618 621884553 51471788 636896458 910468673 789676132 164352956 565872832 969018149 235939596 780041171 233134316 605164235 876220970 491909802 943512680 318470423 933198939 349826709 176024775 251223107 648746816 902632557 936267281 888680411 199547675 801179785 707642983 122642428 659558121 801440542 676486309 596993414 82711863 118961710 526669914 488502865 672982744 335528771 583396984 465560766 569221319 4064045 620355184 391470657 512598661 664289631 387916635 695442388 227256398 944843204 264560829 225801492 17351052 224968455 306548511 714199113 276817204 586032248 476737282 343140057 303821198 672586042 240258961 323695535 906696672 266210933 342341132 516157965 509733354 84882599 219659392 866637212 274071432 938799397 784196524 197923171 799785693 324747636 370461573 964729208 823668300 591808096 60587476 1969673 787171373 406798833 570436913 8713535 190773206 860766149 377438825 432445072 831060298 859081228 235436821 931800125 24807710 277506926 879221523 424068130 278768305 116957675 722728102 637446491 797933071 401515611 772220891 941803718 333054007 431613751 656099377 285756677 392273645 733202285 197658096 309856598 887433628 482436363 332218667 180377649 962541007 443849212 702659487 580720062 810474823 311486136 631578215 937348705 662771656 899789759 340780757 69610621 495888256 127439382 745400457 751372452 669182760 719128976 752403833 971224671 993893083 499965881 485068446 55975971 374884250 301140331 635114271 966936989 126808355 485367699 453341410 483071657 473393669 2084989 56445803 920436662 691692193 253730171 39105510 629469235 213430085 606968605 31534405 3404118 380688821 375674648 578793879 107063179 934238121 798270584 788654970 739154223 195904266 357796594 170609073 552777770 178556830 190940824 973400414 691028941 782783840 986790605 147440697 428673873 247222588 84946317 528292636 593605497 149852293 458621859 523650090 776901946 526515477 839273178 288773810 742706342 406739558 720861386 98312224 877139303 582708340 857793656 790983292 892682364 306796364 479359241 310023257 211392079 561638235 122402313 479616565 125397267 740655301 484492471 330949003 476415470 590122090 512648720 738339519 897647769 991528027 249998819 920918664 945340906 212393036 161325879 787958064 643467959 645588720 638601543 54173298 692733328 638893217 606873764 6991991 30394255 441433478 214762566 585945934 9781325 815355883 196981376 792410467 659491957 608891751 868654561 764313308 919327351 310309514 271164845 389371444 603429400 540908730 489127445 165449329 725275078 194857415 239689452 468253224 454469595 980960746 247011804 265486029 696389468 955787201 711475207 402875252 391600959 336331009 863599274 939481555 419695622 274418333 24651139 924133612 818370787 244029932 751972505 827302994 168077112 396293527 367037749 832627178 388842342 960539468 434792351 2723424 826497918 329460960 59641951 377987125 554481111 408345023 874983483 336315878 664165628 757494149 135870742 266739798 180956083 478961818 299301003 326895491 573438852 108109112 247798156 57511046 668797242 158069808 422557342 893418184 325422884 201140534 770490140 547345388 354140346 224162266 536726644 749521562 698124636 528925915 343954659 176310951 808707623 857441082 392931177 385043289 518111347 474957306 518716054 176998790 167334841 10088718 778309841 295787893 369356033 215712048 518280230 778181983 45881789 815656067 313555926 247521112 363539015 120968774 950812093 414769309 550851363 348870901 322356262 522956470 485071644 6668133 913556794 883294502 92141015 540428804 445354136 868420278 510223781 881573313 931548765 275970632 882549947 122657508 154919887 304371290 609027133 876905006 769910783 978096773 600074355 162560219 506482439 682200130 174928131 403079826 716237838 518720336 988098528 644539082 285483711 593510018 328527656 672813441 90949303 682119377 850489717 561422364 669287060 111110167 716629124 26202340 372940895 587888700 613364555 80490249 141655844 347748454 908989803 7696045 375499811 419340214 867200686 331007208 19381980 530485015 518783617 477642180 329728185 148791330 948379747 602376082 14893701 730294110 786338500 804825645 655861472 281152730 736795991 325718023 381146301 209938752 41878772 163333340 637564454 632234908 357139611 432960230 534760814 915470806 41035869 273408098 701490077 925406330 835522546 377145240 467626575 826403917 652685323 678783337 277453988 298657600 609010837 377154360 502636044 79656743 569701629 634693678 263730745 289768728 975021381 140913527 488386652 108737334 469973573 836715775 33426558 98006966 291134674 930211485 528169751 947213061 109999168 486622758 703565566 205589622 327651691 12577626 687491253 446095675 625296326 65939481 435856964 669772273 146057708 369981583 586466919 376995644 302906368 952787225 687472884 321862787 78588527 455925682 410657318 897448764 450727331 569504072 133385933 127399908 591633976 138672777 666341215 132659392 988514051 921994571 709512814 467223911 979585246 346474655 867633626 772563769 468511015 981361894 265559152 416518582 349910205 842945938 594887554 513610391 834804631 397846752 136645898 300934873 151017086 207915146 548752891 919217377 213658777 523253663 444882798 473071197 342275938 520753094 457222900 441780447 332960315 305185804 576697413 926129925 505795233 752944594 173858644 913082789 278767406 51242863 819438442 485903756 556008378 12951905 71327446 625268750 935524497 689774508 773914310 823542723 292391676 472366689 250978309 458814621 718712362 328777422 298311737 267865710 365347346 86548164 977294643 641910438 233680846 922687169 9846573 681682060 286289281 792874441 218190117 67697818 634778487 97167223 131869984 323837868 899683384 571841365 212874180 659900231 491110 601270285 955600243 882963272 63047865 741016881 432605272 813368110 681254105 804630921 446471592 827725066 964303510 355652192 60003184 831863414 979517322 598327342 124445162 113596478 730906390 241663255 61260050 819959468 237810670 206030579 781948719 834372181 590150535 333589366 837868291 868171735 782793726 860128362 686955644 368228680 449892324 513695038 444989650 581478127 741306831 483636653 18169066 62137567 126886494 473610440 197507390 67094238 918338760 809614206 510122707 803757085 592975155 518680115 839289530 804043421 802042238 597496630 818996334 627370315 102262358 608866415 95142299 147930332 466550258 98676542 920797207 502465251 598343976 334897729 265095137 474053778 123742951 927804534 823232797 781107097 156736143 781965340 773305612 904001847 166346555 238165632 445664794 370872488 781462530 3263874 549627912 277412365 820738731 503634682 818379143 160936119 476781996 780019291 562819789 499864909 275570525 45649247 739386602 85933971 351587883 896175863 9563974 234381558 473663593 532320771 101490041 617715621 997979585 131684480 151161128 173134155 973870557 418922445 456019930 367000188 248239495 687721707 963314741 602932091 138117394 438584369 259061532 343103559 133834899 943776552 379448889 105280765 257538980 159923153 551122834 999689313 924517626 988855590 876005431 649826698 916828280 530004629 587690917 958937733 669792377 62963548 752333552 241201929 97575416 787842186 203612457 693570137 460358105 857295329 468279434 890766779 987551925 21083812 732929053 252751006 36362231 502782120 549080536 53946159 368388900 761407324 336335792 83486097 397436189 477373449 934639427 320172948 73926483 976288922 681258708 406361252 47556117 581552797 841848712 948887774 425948791 463775927 540643001 790174696 402441269 182896158 415939555 643030819 602793891 314006799 289682783 471699150 423233805 145561050 506624786 672696609 111735682 567246104 419028981 267342296 317386542 885881597 814237956 892498828 861779850 748575005 43544106 956233975 838029503 351584083 692974667 765406759 744777924 43468331 347001177 114462433 21918752 413641816 398550345 929850603 677465474 942195432 917376255 185577237 736606894 488153554 53072132 64248952 501332393 702178068 621847428 158764625 429873457 925765078 371946204 38197829 783138961 115582925 857373735 538684087 225682924 226580180 631002068 778001131 23756805 621853674 736124097 297957649 259425323 518555258 66105575 19151300 691902359 448349149 828053554 680252535 58485010 22187887 50635079 530766354 790005223 613631842 269169724 767328137 655842661 349826444 560437885 595973683 45342198 562049267 296222541 141053282 886478143 417314779 733216938 762808732 643601923 317547320 875576802 112904469 431314618 810879155 526339282 335622775 820677348 651403772 120101443 886766303 100276283 598339835 20689177 386918114 301519936 545946587 653809048 4313019 49312865 748025674 379961355 624465931 307680231 759414674 620990982 652875883 336138546 227668346 656273694 181032832 393143328 8566933 528198560 209073193 158258013 185175882 621290321 553842806 512142061 503935652 246371405 101652835 535188159 997362179 840435396 214846533 901418186 604387982 246658086 717561855 382546704 865713540 930305050 676991469 537550230 77823461 942408574 883956831 380164248 594831664 333909233 176176005 532531266 227127887 325725964 728113232 856476264 471520473 668753894 612519898 670972653 352479675 918798157 281658601 934783597 933008835 443973499 670574452 392827994 493458484 695797941 586466069 425089710 161532232 622379131 910456697 54726194 405964832 643636904 337809068 842180975 512978151 117377193 471499036 561433505 974484340 88689136 625053883 379966950 203212675 167743284 6234373 340892255 146260823 534025 319882337 32974613 805727033 520330326 183077875 956115590 535316908 631135148 301574565 145034048 281768281 997717483 68918493 622361014 48812959 335162868 747403099 6513811 851869070 296990386 665733067 706311005 923455877 709233532 88766148 610321665 982663787 39366520 412177633 697591290 50422667 841798486 798075125 12368956 262456809 336219545 930515273 203061394 626791471 528178866 583377191 963769169 315922158 753117468 658889229 537005070 596051485 321951004 322890284 861786671 742455844 34933580 157608090 72923767 61076075 37471580 408041124 427815210 856120253 470816218 805385735 96126018 645372684 812526642 832492303 324085832 889319576 573150008 552300140 688746279 519242626 612365732 403582650 50532666 184471271 907182210 557128642 519569478 901214441 408060176 975890409 925126670 687547137 884012251 55953192 412376354 627108652 238426206 831887222 401586381 414775072 527596180 453868134 423901181 847286918 237797337 595740224 935666838 228471130 839548885 278073333 804219786 251039221 173629155 485141631 209655796 145002670 431878739 938033190 638431169 45085406 975706557 986700640 459960827 983371035 944832998 38933091 514212102 651848335 963171866 669286508 570758536 112628466 388980426 558784589 946003137 390422379 810580534 869621067 906228469 112945310 912759017 84592341 555520592 39940160 211486184 410533383 958319518 435419469 935237683 984956338 375855071 202704689 3002475 821399688 507459969 108987155 821655475 526174211 948192823 441643430 676293673 721156245 167643575 998585467 323873971 282599489 320159778 790529159 794610951 633847134 925440169 419779610 605583953 22954861 539861658 821925466 629283795 517880796 962104772 950014182 197092080 319992581 512845169 180172439 908689926 998024008 942200962 778946252 942094737 50133552 361436827 472028761 956513947 899035944 991406078 172554128 669337252 34121266 392659143 274729179 169894072 789053990 542008126 177060262 767605176 339595501 959268107 176798569 835825651 626909031 655378665 988454567 163266226 907950124 773946991 357166138 891341286 797278970 625507028 824543289 178489858 176235818 931523521 245372799 839872662 830917022 573821875 695630746 787869738 450223768 69531035 989628620 460333083 899828800 468754034 922538928 540396104 860693546 638528946 516980485 334147727 490944325 443676007 816404285 214895921 995318863 852076330 655714273 979793313 504785392 259601193 45849325 420201499 372732780 274703977 598181448 930708393 591071859 535865334 261295405 614605165 771749997 603535103 353071761 413610584 417698750 556366855 894843648 355964523 690106229 696517807 314186165 656768130 743922454 129367770 818219008 596040422 34932135 721690349 836401170 807340457 662678801 827247839 769973456 977525529 526043604 754929377 40714575 929952883 65993585 559681027 588268164 188386373 299043610 247870625 595252075 224488303 574405734 778937327 695705054 982152052 198028097 198459781 955713648 151821092 672172586 740284882 866289670 146690926 91082503 752618263 220034821 572613713 768461343 187960797 371869674 889824035 151268452 737118798 393728495 972258267 148603673 264111965 42113384 113579829 908206107 902453009 353484597 291463932 580946783 524565503 161285443 718379854 618603022 491390103 820129184 664143064 796583079 405780084 405888764 649870964 254025267 45297551 130558490 84787740 527285561 205040252 7644189 419589523 296791820 531182765 580077924 943423636 61964927 286144931 227785647 35263411 990037947 605729783 828833323 789081634 548318730 94001424 683628482 901653404 148828212 270117785 868040441 144409696 387970186 832618159 188322917 490704174 59095521 70163238 207355212 127708936 671183049 775046604 238765317 668793061 152362930 277898061 966406799 393076919 115392842 391671278 925728730 152092093 180081613 156310907 225676919 547284790 913105618 758691456 441435485 340470167 11806343 140644659 501539782 61342104 112633409 318993402 903670422 112884758 754019105 201184405 410332800 881686030 506591243 302094772 580227398 329152496 705400348 61531120 574487254 617732456 993966569 32194627 659617436 927745432 952280819 516855527 7501005 596272463 678682353 850452474 397116785 460479168 319580626 765920729 778063015 914572506 886578950 742250677 590934710 198186646 764568456 309364974 736272743 529080393 643348547 555718379 737036833 93735914 967368597 167284994 247471761 313530240 977304691 930612172 760251829 993219981 280052073 535855575 504991142 252703069 750391610 98509777 362051468 625369536 547163483 449378727 761788771 78190836 643700199 941097951 342297751 38075568 346080711 927949120 41876879 652799307 155377519 937070037 711717041 446412851 945173102 179908238 142841350 158309075 299286359 629099925 686489465 739191846 688082191 22372101 83822467 35893149 566908733 798574128 320717836 126406411 480126414 143655093 79552012 475697276 216931644 890186571 341333422 650408309 827883778 500315625 33384604 672762458 778384432 149402042 928452522 112376403 801235018 535547890 584817234 637009173 146458864 132320674 52640686 277675547 574128763 73876639 877440023 669218730 366209226 891219422 818081212 457852817 595068301 88659586 788133273 293899971 900275351 866607113 331335920 685910991 57801356 779221892 493880962 944796682 331945846 309792940 413076697 215537626 968993933 169161504 859367319 177795228 389400281 80570381 338439188 86387306 508364607 118297411 340439389 86481011 77407856 989082394 360748466 955224534 996059869 459671655 427102825 748800161 299828594 633726315 540005727 969634562 515055645 908386403 987936791 799385573 400724115 366218235 630620909 743124588 37219405 836698176 436711266 832323801 499206207 641132459 778560610 987934090 120905886 422966499 313510430 562430531 593924885 197880143 554352237 258864931 123208511 566735133 33366367 103755896 246061735 273281843 332588091 510229856 694463759 27335744 667794528 96035312 71742233 53930808 791658341 794099575 690945491 2796017 294815263 651248610 309933347 936919349 376612532 948633464 193846287 432644172 748384211 375278637 244934386 375489720 779562476 994416564 812846305 269885671 874598209 655689171 267322116 580575544 275377228 723398863 17374044 551461911 429948582 486542654 367913605 138075882 385385987 397112558 832841596 274094780 921671185 418168812 117596237 226560842 819599380 499266043 722499413 669404304 59633188 993704252 634162990 895737673 101430914 235933327 135657514 238340255 360896138 841296419 671357395 338289118 943599277 611852450 591032822 519536314 789295969 724655766 1295974 279837776 501909955 570869400 563666126 68887882 940781517 358682456 351529325 654930674 715630919 101107687 800795885 352059761 9716030 151201058 183422809 870518170 49125879 598985777 560134225 867775041 780505028 689305328 519871317 22813415 374384515 643648682 414583267 717773677 241846498 266972862 428793301 368736816 515936796 970636213 764457300 510655667 742075711 214699302 773534042 986772712 163621822 635559899 588472232 581958229 142740174 221664431 463387532 399492455 786420508 298494366 697026375 586961836 297400484 94999118 531397691 111238195 593138045 584083964 77027340 25452524 456863600 525179891 509369698 982773648 231049596 748191687 756235542 266731388 635376341 398141830 158965631 823727026 999825471 872291716 539910682 677016382 509280648 344862899 376004984 773297369 166134880 354920018 878555012 614571231 381907166 317768598 563557799 16190220 250930563 640063247 193364106 964266733 594199366 285733328 710661370 636843382 360348369 623988688 421443930 570501567 409037283 564242954 214947038 227541318 378042094 329966483 669309394 841368152 938770601 830168176 631722225 442508060 352537542 962584811 283437722 452994031 120692798 385940693 103952930 458915677 240321152 967783186 16061538 842304107 338571875 494898049 137512420 75386106 966240369 139957724 896743963 418286200 852033051 556091020 564701075 935258442 451793355 616597740 439601059 949792469 223716837 52973449 189696975 367864687 84994798 754130542 939867120 550744824 872986811 639442524 543825266 739396526 811779095 715123732 140296666 976403201 110166086 483390989 127696132 930309597 758054808 801432261 415733524 823706459 705525272 500984597 2981094 730675506 181761098 588503163 184868530 869928979 132357606 786450315 428486701 456274144 26748640 155340158 5602231 381507376 617247848 719440906 330389694 106205230 214188875 288249393 533986890 741488082 93301919 342320605 170043998 920327529 410286251 393473845 25930180 844332885 490861900 115173433 400486027 343716062 527135882 784126300 564898231 5082276 225417075 967604641 323305033 474116066 925906118 437977546 496500807 401859126 693169667 817020131 322589062 251906043 951943185 477873632 446369742 903954476 412128764 306032289 309445905 640097511 652591771 90670986 2663842 649184257 198005467 371575838 893262222 512173616 5548792 632798869 51834220 895619893 782182890 95091351 279155679 764610753 849360437 596378434 808494919 261767343 262645792 381307966 490764974 728761133 536416190 859398477 460294467 251139248 554073367 260136457 428435094 48969064 310000493 504918187 985694537 82946728 636923850 684232641 981079317 549737851 902793046 56308785 283804531 600149432 905638282 9478906 876967908 850431605 462313087 274972672 74951952 935615490 665416902 710435783 77394898 486480561 410079695 496379719 61881301 53303715 934502143 124730535 372379428 163986696 806423826 626664235 199832808 413606006 831080976 511630880 331455711 476087676 543742674 42728359 920644418 647323812 547705173 131901677 814032188 732156844 76281326 248801300 141569600 167564978 334087815 786938151 854594657 832814739 387550590 872902316 206419983 337021499 408872875 62255824 594235857 267898249 995049807 718264567 518748169 658584804 87799745 877101967 429227279 877279816 414618342 378983551 347874276 242260507 967035481 80356702 448073219 862218951 651452313 638596134 472746123 581225943 395705757 127840508 272753665 61563379 323519408 833402959 506468562 926031259 314959202 294905685 156004671 60908385 364106593 968863174 695189087 610834909 923237681 499480226 90585620 173073686 34575068 772518673 482946857 799306935 471426912 751061916 543437727 480054986 817418606 244651093 920782649 369091541 390411820 869299833 842000238 631816325 320800406 348183259 667767599 936361548 102229564 660671715 370530142 361831751 78061617 292251865 204585023 295772515 34330006 76689212 260001589 566621395 609980156 621306044 272055072 18946157 142036706 28264479 127237547 940196976 99598240 991929574 384001367 734836159 289927122 313553299 989180430 84079793 356783746 424382820 855386010 688264171 150292791 833059059 849649781 56807109 1400780 357842853 336138803 800413298 799941285 777137836 140936518 682350771 242130999 903747415 858590948 102979571 366224528 975281525 967489856 713634847 330091992 722988873 428583470 544112428 553197969 753732301 329347208 735868933 447557858 2864249 578597337 407717316 22638450 166856434 495610328 905315900 457066671 380570905 91693879 458183311 635652817 316922325 190270858 176587430 161472560 594923512 831574973 804494913 283703841 289930152 730977155 822232549 39071308 177276331 103062408 837370753 314467362 954885206 301679043 912938608 623749700 203992199 472607971 301813600 190997041 731291717 589333958 491432753 33363008 301814579 48340121 989190910 320155075 747513439 7193265 936447378 509145919 403657315 218109765 656460131 670423172 676243620 697648586 862037457 680729965 882094197 583563203 884078186 982361713 129925651 231977320 746503620 896381218 366638543 487894654 608695099 668744328 28379384 463601584 675337719 14768552 88307706 933683523 48398552 370205799 28089224 409964853 304251335 127241785 349101394 866667102 309132883 57984505 880649839 857522719 990466678 912350797 157265298 719668750 25631423 976237582 596048756 944612877 931750926 450946810 511305537 130526346 680944157 546046491 665137951 691793877 991331262 833882924 829872392 723654554 396407095 509545503 519652835 822727619 550527877 173475292 450667794 926709359 682002679 599465281 745412998 500268597 91014474 213200516 173013589 497965249 846780205 433312130 445744852 78883263 966376459 534069857 658779132 874405153 465192122 683409214 807660577 851568677 881060048 901504271 955252550 38137008 23622904 610283965 541654265 429489353 457062733 552969554 924584428 975705302 61480023 484511069 383756718 329181178 832070958 467044007 579559150 16073712 246417056 655458985 185470800 488202364 201107092 331037560 949833168 106893773 636574421 49032952 625292465 595021428 650878342 511177648 434270003 14556333 441354731 241937820 645973736 96351106 109449793 45307949 360207584 763512495 91323730 947305459 69764439 137186270 515768081 176774831 94366897 603196031 78781736 507918059 833400152 789138852 431626419 362831774 827813428 771374254 180758658 838739845 520606721 534043935 567788837 502233383 984812459 50145574 869575775 479374449 559693804 735010133 516704741 30993789 568127599 63978989 190554343 556502624 957475688 954668230 950351292 533726244 263021624 304125133 218945668 342206568 75813733 33175294 681108670 4593517 410581243 903930106 325471948 844592031 36894853 824715748 218654845 731847727 495703372 228505687 662156877 219114992 580767130 414009175 698638496 96331135 835057796 186741959 285702596 947471769 550731021 888523956 673389345 542669164 194417989 505522256 745688479 445808102 278910073 349577128 450433457 673360986 419478678 916665098 440113204 29785239 331375981 337672263 514818351 85363514 755897703 785319703 59881117 368147556 675420759 991540722 671108842 690659991 73333212 421417160 735542478 389964421 335206014 494354121 747395103 752792205 513173740 88263397 215298161 736348971 985556811 806545081 194197171 912078384 950396589 531906174 547990952 873162636 77407931 622819931 989132985 628555764 776559358 342061729 731397575 87283461 399180330 26698234 401457321 95588334 40678814 153821304 596809915 799187626 350940813 73076730 242183880 304897087 585248060 719681478 644382817 230368460 193506008 809158824 270932989 107059079 248118592 576466284 522855885 241172103 497550498 1912750 290606543 593936623 277851197 366993758 911954235 14564305 357804860 87318631 202544660 174745066 479525814 285780530 314933543 942678459 529098115 81066733 899105176 199164697 567078800 950471728 920590994 919903337 805767082 293462939 716437257 397703520 520590790 635480405 446427334 316802720 185448868 619183147 627649034 36161708 542014472 452930735 472085770 619441756 217808827 978253853 5725306 33133834 382541406 153613554 170630659 241040457 169338462 603731246 603272925 443197594 713665352 136995092 172298832 76536838 981809743 269718816 229472546 531317370 260974724 377036345 988270503 360344203 764095123 998248796 701903656 718457964 997407184 842281355 583038245 824721416 501353053 149383761 105330607 138431352 276377355 372786630 459417396 657325782 329302730 388313717 365757221 486500467 140659473 760140667 938187060 810332027 307947037 12228261 246192125 236121732 699665542 310900722 418741873 836828374 149562334 372898600 334199901 339459463 774308337 294453784 439859706 403732002 797971427 730488066 863829198 61769998 128992045 433762426 460108135 529274741 160243133 962648016 74799423 94547984 669959708 664869923 463562232 321276234 679054434 779454374 707495538 536469997 792233520 319127654 421917311 578858539 232793601 447598842 361775834 449901031 392682031 297911636 416666692 989126177 821375045 490054723 706707979 404377661 647921299 537757959 677542285 21735930 521543017 724742407 512708660 884772943 909230027 77448817 805258983 449124779 545326722 10949653 642244548 87291266 342173660 425890488 863292001 325851957 486859053 566198912 180164566 951787821 726131020 821387930 179321562 693717048 780236344 218405876 448687881 218419597 898175527 175967963 544201784 41580809 917305371 780432022 421840579 602356975 549832276 793086345 222215943 40785173 563337663 690012906 328627893 355422468 19802426 930894031 289675698 245989098 894269377 155779773 356153014 421156608 296837773 147787843 183688963 887390055 853287110 62986607 163851989 292913765 69953266 887733969 827454280 453592502 28599876 711025134 589505489 903957933 579734709 617139004 934709066 342145557 153593373 813499115 624677899 344632826 762607765 202291757 609129038 528209859 52888377 639428468 10411835 802391883 914428566 221373741 948678924 313487295 907850173 165978380 917437103 549180885 758643990 409280327 68078815 268130188 256775487 189559860 53014582 464956942 933013074 771995905 33306246 951686811 468923603 326531893 620047027 379421550 552837230 304173218 42036157 277014432 229418247 760174959 299405350 950062172 192544876 990237211 560300872 596672311 272266264 72844084 458940909 46917904 640302965 246520574 931347042 166006934 723908977 850203463 357168222 266480696 363882499 988286974 504273928 562800206 986567938 810637916 123768174 274690569 175960349 460568199 226680202 880615545 760319391 955200719 139441501 976131194 253569498 153033607 32488469 692964338 187468571 906561348 663075331 446025074 164226601 875264680 416602977 449063015 854721916 730351386 349762836 956766271 820091028 323757301 314691527 633368783 717532879 443624840 317596366 791104275 38972868 410563214 610217885 531907933 116441457 525435773 723073972 759195794 197259322 960369306 486825666 487453366 878046261 839319823 545837672 484226602 15625138 966218071 111611670 172925776 314247574 370464596 672706550 216051233 920707974 747862139 240304413 877416770 961613285 299372788 871936516 35150867 905092957 170718262 588186976 969209427 547260874 393349628 535234805 144530058 89068871 842863623 619242301 433343312 772783360 597574450 630250655 497925324 18910194 272204630 808850889 766208487 764664805 719734579 240795629 494958922 399415279 741857825 324494043 152153660 310957891 483526111 113027111 394706624 883033570 548012957 876600369 959391998 923679243 876086716 29437831 270919167 295707132 52357504 466274378 384350456 488911657 989913561 813870557 23794466 594414145 988602124 505780767 619944 530331758 943963705 257329433 212365723 536360887 672472577 940233219 557954867 309864871 267856874 526262204 383524016 591139235 251672062 799401196 705720412 73153849 937555442 396699845 809385713 564422527 377848806 863131424 486301144 543997356 741812705 317777276 200739761 846850405 182116365 432501750 945939041 503372548 510426587 305968614 2970194 640916488 521140547 250913030 217246221 655918446 26758341 108190418 427173788 519507755 894448068 499725910 433289775 172320266 660434167 211021232 752377391 903254299 572592701 325580488 596230332 203275217 315231416 922856570 64863248 712288140 883092350 763004262 973084020 447840969 444473418 697816591 319944689 404022479 334845443 510214676 411683613 7478932 360626402 127146572 763666180 283899424 348406022 443092191 31175552 263268566 51222350 844710510 818547806 501180131 375582981 686798604 337170777 369362023 686864946 124741732 9708195 132402668 170656801 635622320 610599450 515999485 216981299 561783563 217629454 871184133 900568876 327069185 775672610 33498782 949594759 102969426 877006173 618243647 532684290 392701501 955557613 866568158 832864949 782851910 376082181 723621867 953096084 208040369 169141060 148904213 575464065 543522542 235595310 534518335 99318522 760851515 290786322 850663743 973169593 661062036 40777938 599282800 934208486 746032144 716020371 829908825 730660126 888303207 849808522 386824445 76916491 241089126 907205298 7944777 714214656 588951963 928977834 447323403 988058973 73627582 876717409 774125839 386019860 862464667 38709794 292252661 672540342 661231183 591522112 19492289 978102494 778941016 170355629 491143158 133511248 342153657 925515070 66505665 21997508 868448834 737506134 260582241 390406785 412496057 259629806 526473479 359754276 867705346 464586491 17971992 753554543 467945412 856434730 941393126 82419067 413997111 935328363 558687614 498096087 358359646 304341336 60625237 442569703 304597888 799500276 169461517 222306263 532948134 765439483 564908711 148429562 98057666 703085823 311108687 415145835 19325753 984523547 135283907 515379417 142809176 851463658 499927365 197493738 407397885 131184360 923057120 666044297 2785274 949037130 884808574 983844850 597784961 436256444 576649068 246464693 657057057 767769757 519061543 171555714 219352800 922835880 217749120 83215429 312350979 991538165 528525359 307590513 666425243 28300228 578025548 861704758 422434683 80132174 133238761 662698388 443078618 243486754 358660043 175815780 316463834 154916495 362057848 912719647 770201251 936799814 126303213 895648067 909376140 410109374 511749621 983073091 969973920 958514281 601835162 263495519 832665003 758527090 535005269 843883970 51954818 291597263 48797451 263654813 69061754 881581354 388535651 279524475 341073513 765737031 159103223 134258184 19100183 532452203 16486373 688860762 206216197 583594140 843090553 557666796 876676760 342799096 759101169 527811731 872724595 753639683 721534808 121674078 663285002 123553315 518792536 799533651 125247546 737488056 981580833 360585968 107915389 833558199 53074763 692844930 899165253 5894965 848774264 392358586 534743024 993201676 931972052 863732085 530721827 332719006 448002890 123125939 338913813 901118932 402152046 567004109 825138429 791828425 775921993 859478466 196167645 974515865 278641394 878903112 564871685 494578090 334808576 781905810 418547001 433678432 968676462 215422274 534233079 516042120 978567661 734637082 148047156 239741180 341552174 60253435 47647678 309603802 565169773 939844048 259086292 507760336 788364824 132376386 42300776 104303527 899925295 8696733 469566264 193925117 170765615 946584152 604503050 84319322 728268333 675321942 476203112 662171783 438942439 436630741 826114077 110813591 575962821 244350330 944648715 202643519 849413741 920418212 509241480 589777869 298856116 635862405 930212616 858851394 835278105 512589813 953077102 138834772 398587060 466252824 907474295 102107956 612445444 88956869 314077162 948561649 920360692 205526041 715827620 797664539 731249449 247874346 642410136 931073985 421689124 26048753 860905795 25956928 61839155 372913213 857032120 357455598 413715362 485003214 754903983 464771416 826215338 279543908 355639107 785726085 829094005 539371866 592369646 985924047 272004019 319795087 693588130 277945178 555852888 825878492 834906045 771518597 346545682 947791992 638944412 509797903 839668133 401318552 191022598 573775691 343164347 220886314 713375445 245650813 290875113 340162855 728799033 925461540 847395022 493330030 551240752 543862080 611458884 266481797 49471125 566578084 986676224 3950893 939819365 418683699 122560979 51057290 726763453 424556350 853045335 740538901 82307491 919795268 601355468 7453304 726311383 219890353 856740878 982543526 620241973 703201888 176756602 582097694 653036543 731081921 497603784 984828452 676987257 470223215 860665680 839936445 520089142 789017551 386730863 563670930 35117670 674856913 293731634 234717592 943245568 760627889 277309313 527664853 482186717 161209221 894853673 103380513 876973906 526219138 791136525 824577080 196202591 18304559 735174977 152246342 205140549 729784820 408206584 267649645 64995193 806139911 830077230 102119172 256854566 713737192 874473213 932279433 580483924 373135193 589159682 67108664 988724694 319021585 146416496 742052771 360125084 660800208 378748429 315832651 257000205 194986994 623997836 551457801 494216494 709840784 407442851 517928695 962874719 842808305 90098131 857201094 912950359 470092307 347232297 673532803 607277209 163753098 414275667 994590537 73201783 335223825 843600739 662395121 771870256 855761743 746786048 774693448 104028529 154217076 982222333 948788074 813263200 45882371 892435196 962612636 790026631 578251526 817173808 478904031 952400305 25763219 980157509 746594102 131955558 3648846 301854745 851310805 628174436 558050694 522655136 759607573 371768852 139771818 10113913 50358574 485224150 392221875 752557368 100499903 270699785 744919167 448255930 940884448 66585056 267268620 465604633 714634587 25156449 626261313 802218159 586084697 517517112 882328795 163627155 328119345 677840832 389661514 362541857 81790381 428079654 710390643 252089347 467251749 455827276 356069845 690721489 335420577 491259049 424127791 312030346 528172147 269190074 627188986 245145269 956007147 614578562 198091730 347872088 778043956 209194231 112534059 139721274 863482649 196845571 190578977 642671635 158065401 618489930 686969705 799981241 530116298 405448395 662326430 657594967 889796634 835733792 885692928 264420700 650464676 178074583 974617849 689265696 625451888 875104909 569216909 343245881 150938561 518813909 785879861 399383444 589077299 744084035 127353945 206042536 391783563 527079216 702782058 553512482 171246241 713071252 467261110 401293091 62992688 561095967 676882151 108740039 956690531 943912553 37934879 805888659 760777916 138431856 52618928 857443979 20582156 901951064 23171146 986942236 719179862 447746293 296414748 47816871 66681421 560506413 469226033 516296076 288094003 344781650 960386690 694907510 244504526 242692291 587450163 898933923 341321805 746913558 874650315 820765637 886357325 429542153 324567965 298615369 160945141 481453867 273261365 322206422 639239030 349410085 566957653 585946215 938150022 213774904 334127018 197000298 537940088 976232192 413871686 562054353 876301088 495169722 15502934 776712305 888192687 538599636 951596207 174889589 533585819 683990764 448863745 154081285 648583261 173824313 949010410 63568238 974454460 299010179 818915217 214403741 100457177 634669223 651581856 862602823 612092937 106216863 17234720 754578864 239390704 815787924 377507472 358277953 181389828 76118875 744563088 768710941 591220326 914147907 504842861 209283847 114762742 841498263 28312302 482360366 952336064 401381159 941359168 807650372 588392030 611825851 97282416 879333299 697447081 165462495 724526 254044480 137448396 30177477 602542335 872926329 435396034 975233993 23791903 297907399 494878100 240996092 631705745 50834941 137769704 344468649 81016964 693083243 608294457 100237903 819515938 150974136 415021492 451895389 858606144 735431076 613974313 956669051 763504365 243487987 450160810 873961575 244372213 209663854 980061730 672066781 467489480 953976617 178003657 94775070 729989588 815931145 463582873 929536067 246439193 400520977 896678794 620865381 90443550 132754434 447892996 216310302 38730062 546904706 578397005 582823071 190842029 573839800 546991219 696581467 31576572 352709325 535700586 534581640 55690279 826958247 508292951 689699389 755114562 775656211 238336882 110179570 392711953 670673143 88234559 423166955 66839662 41457060 632063074 995750310 336893424 565233686 835682029 330134916 257951151 233267727 587374679 118066499 731424629 790758617 69710803 317383447 913824303 464675606 478821027 106417461 649664864 531374609 527521503 392019798 181763724 353411913 986365955 201391962 892352193 431107451 986342113 400028006 144719441 339051043 769304574 639110920 375350899 620169472 703920211 47520095 531994537 630761197 824365772 917094139 710656138 523994142 678358699 464285791 703135514 569689690 408309773 518897486 611858154 743859667 666843663 92539812 32145283 115211993 437883645 646616761 847270905 799985346 532147255 398849168 869328871 710617048 832666798 958135897 259803403 63240845 131588165 733215913 342479816 871871322 822547025 214188378 214420118 908498232 354298422 446953487 444497773 400193000 892681615 221662088 2276161 202096427 544492412 807567233 510274626 640442703 653294217 11809716 217215235 839460315 125793126 792392066 899930734 108869130 532495723 993663906 357167864 478570388 846003906 179323042 122389402 925827157 313194706 283592424 172197139 501119256 5988295 260054762 426803798 701232830 567526615 377372713 945727610 465217837 313875869 271039613 555947629 96716573 435768597 593256353 610601939 952344668 634526318 328937424 288719223 965658122 984231571 376230047 538772943 731899093 563677759 961817729 237387304 892287397 118525162 513231996 595446547 326513703 944367385 993552009 111763121 970988783 473067511 497211128 424877899 18592748 729998070 213512838 439521190 490900551 387956296 240370205 171636839 393785096 714085813 696095886 557871102 434631536 758993764 520801330 182659240 321770715 567709015 754863566 792950270 155479478 951583992 89044704 510316073 789098929 984536983 646508071 461090474 650067851 708313721 35740600 847287431 33347480 56491205 414057593 487059288 158601175 829447390 733849325 192426275 837913024 428909369 960876248 439907651 83624849 553345041 423007281 688025228 452401433 314969176 904202380 679971673 3730297 520660508 510589332 79335094 428660299 533348327 264466460 663006269 493018324 552749020 426610907 523671904 420184331 586460417 205977854 671210584 554933906 454174805 109063607 568386416 445352833 973073516 281647860 7892605 658195552 651856610 436630537 149660827 162482874 658303849 66427620 448450966 999293204 200780699 968402976 336783014 483190052 17654598 430727344 479734034 483465666 906210801 197262834 654968017 261566602 281178073 570362103 427045044 249636275 485715110 652069446 875677944 910879946 289658809 182308132 616795550 685506266 7743393 830225091 358739113 851382233 130533414 42582655 807760230 592562155 556012343 404234040 146401041 654537040 490596761 863532568 220295692 851464815 304279603 391721891 721409492 746970842 394802481 508912668 592181873 146323320 560674499 4280206 324159451 634722175 444059921 385302624 476775211 614157848 335448041 487901147 896101436 902200480 859048070 73899902 437910694 498142431 190597885 902871825 377516318 586397283 143471995 35533484 169434618 214601003 418889218 233453926 38445698 328373150 429469122 404564981 973155313 613588804 488340608 201679763 616625778 231921973 406339504 194698116 37641574 593459854 944787639 341926249 979105967 655063935 338713134 814041446 760990491 604205850 945524030 522344620 767878385 68373421 766947493 876819065 702845028 818963129 10361278 376633980 785910937 769696137 186147303 898591637 41451362 22311250 576333995 937328525 958379836 124084072 718718533 803739008 572304591 95788647 175917848 813156770 517123352 777815954 324585683 238918892 268820692 674765247 474074531 932901054 587049718 674769525 48867859 552685367 29891198 499596503 563038260 621958234 512991214 820796341 938723382 130858481 665690381 602888097 974978877 692445110 464808381 131652483 576771137 521175101 701078731 680632152 827088130 330423517 620974531 233394615 69895567 847893699 347928176 952615529 479280334 783660585 75525994 411101226 246876394 957080653 644378747 61792853 556087610 567679931 237171570 258424564 854418796 209178619 64611543 750476638 32980060 535464576 783814372 107517736 905817867 703693709 799271703 123575133 935810507 178931730 254081303 318518369 593057451 290874704 139986228 469863327 673972730 725427422 696253514 59571517 614755647 231237540 373224776 114887270 777287205 353186498 822194042 917781062 763213109 87583459 414513371 581258770 766767301 418881246 558549926 134775136 711498737 64205376 191786705 4912919 750806827 170281237 187139065 735560785 198563602 130585382 245370771 245858172 472872299 968197854 78217177 348534609 214420840 888887241 971090918 397903483 627991914 351732723 857279260 246060621 318990228 13358090 713773773 897358532 92750823 848350549 11621026 16440876 850430689 745958951 166345861 162548340 701129395 228981161 602314764 13281507 580984737 181058472 90796584 886460699 998330379 836336825 945735141 104685791 795477500 428705374 668695478 351849756 791118446 626919650 201968858 672105549 640111025 291229876 799467332 876345193 304924001 374556268 998098464 676690091 911083970 194926835 685875836 223262694 877487155 539599013 464225892 94205032 217104733 602066431 587120493 974703207 753379619 847821649 863484413 290871074 233898724 227618842 432495620 95235258 756785870 256881193 984442592 44404163 88869161 611560791 724147795 503176521 127755147 279279240 534033570 847928442 365470591 991549016 274457483 766752004 691978269 619536210 139539621 510742329 898770622 429117288 368369924 94561013 612506039 999253924 404487543 949562122 769859740 472280053 888799051 497559855 930000229 516991774 588406863 768603100 301215468 146682778 876253845 470281686 31334030 953376082 420210103 671661023 431033419 111225619 222489254 728187249 712028690 144086126 324369782 599727967 357396415 647378987 5308061 858563512 93490796 191771316 428625290 106924050 735052577 698096826 193687941 415127291 260891927 237231496 278286979 51630606 516038931 255362933 922470704 161819316 476465432 138361762 375084785 918180048 873976097 300857296 929056569 841930369 483091073 862058660 62265053 751839582 972303537 601690950 772067245 231882330 41586736 688472663 735932601 759507200 90032366 368304327 858252134 810683674 13995716 237343219 211569247 272698927 803844542 800215732 529482895 939832395 587120172 207610486 121176923 222356249 181916122 773963006 980888727 218672600 481161051 847490263 454442058 89247133 184733452 995964668 49416946 281780753 877962625 308298369 812466655 443747003 68148009 782993959 321857836 656448976 172187906 582972322 494019377 116813461 943576807 399542328 712119592 621213172 925058057 297754059 917420663 643171558 794217696 527479277 817502167 758134483 318433302 831968926 235237088 600782421 393576640 315518389 737767076 704229638 500191525 867827562 565716940 34076404 776978572 179619164 101773755 630706424 822670336 168381901 269397499 693153137 617471992 356736471 834739829 889936565 665369127 180011910 589606995 635903420 242231995 511376268 846568689 142581474 104302967 673378296 505138601 482360618 172806212 892311315 155274266 360775258 917023302 450723319 63649337 720556330 583632777 449799842 835295219 397857139 78092249 187147130 159686303 173452170 618440335 129886867 514023181 63156844 488775691 832044183 70555759 989206289 565739397 977707703 831125052 748572174 342249847 710643853 242073668 34216375 505388252 545412699 514768358 996758102 991089561 423337836 325810247 79494548 377105019 274938998 692179985 941160011 980339540 13996651 163496907 91731448 531996305 35744256 320651850 549551822 407690342 453532012 801848637 773973670 654675562 348978427 214136570 799885516 433776372 617263413 736796757 234336072 972212174 744533328 450535540 442073135 859643268 339039117 64048398 919226 214645411 986757802 438907903 255919167 949452257 941882647 953936880 944641027 47630540 586623672 391777756 625547429 484242555 854550958 471023636 816560182 209237019 156883403 397204458 692039630 723757130 349239760 893943029 249032385 35393035 287327372 951629992 273366511 342507151 962401645 79417177 993326999 418997977 960524530 555325079 717552166 161927090 225556003 207099132 723749696 65022289 883214926 993741923 793136959 207625322 254828050 964276340 536616612 489109917 805476352 405589445 68003260 661299068 828407264 114173017 6958327 642547045 860374470 205861604 500001202 679899120 923806682 204729110 560044913 191779550 636474635 826596774 298146407 155870277 402026263 999301857 644807203 307446437 674702503 68795539 562766464 530253229 574192666 24419513 415564229 848645952 757061661 593245574 929778843 83207268 31153038 492988702 213502472 904409140 208685716 369092444 138148318 738519284 86659338 74358101 132804388 761230078 351765577 24194242 12642174 287968918 578219237 336221040 978657816 580486300 348856610 521840256 839593346 367364017 115765220 118289104 441674574 820250752 479182034 223515299 564485421 231255735 688996350 661976194 567908000 844090729 320376099 87119492 137442519 361376475 809660460 750377336 58319112 391628331 952057856 119600603 215628955 488880165 429758683 305055425 613200757 543613916 425817363 495569402 667304307 664786108 128827931 357835848 695625146 790115087 172455096 693688273 119627897 260412696 482531866 314714375 140257275 886675762 316855410 359726490 103314430 575817638 340826532 132937824 721156633 962666267 847749585 304174688 968552788 836540589 549247055 702862283 745957874 471774981 163230043 714902821 783738319 541581589 292162233 527951876 76235106 320779510 354769653 517607684 673793272 320786972 386271874 400516603 649686327 505458860 868762326 241090983 891940822 838007710 861725069 335367462 363732621 713859210 689792980 471845502 798895489 170501 271849508 806488448 35362968 613609820 750225493 735174489 90061732 124384657 658472629 8852005 346806144 437299487 947333158 611520324 862282488 374572692 348934638 622173566 901612544 933210626 249898251 166666902 342640613 568206293 200590871 549996745 85230303 45372462 524551915 387993740 963347202 334303411 902992091 559444047 954554617 157328528 488328541 26087885 68981513 26977381 429838270 760865646 645330692 588608508 261474311 698936868 457295656 965745598 867658278 70839034 585215098 249706827 951826581 695113110 806893453 845342789 778679551 954415281 442455724 18749090 597564500 613854270 402939018 187644909 887806789 371916522 139555453 724184551 12836390 360303890 213831031 817480475 778798529 867637914 299497035 142708490 741888813 248280411 968578173 251942916 557991236 724074977 785808228 275736 300633345 612694425 774599824 774615551 965200486 304379807 123890847 212627428 114252314 663295714 55572571 938239958 410822112 153622208 452691250 946390014 287814046 323497298 155759016 789627733 211088629 972360980 777374898 326495925 180083662 536704969 429714026 308687545 859158448 278892497 347257863 848945928 847827395 462925291 761662401 327570374 162199227 904520772 659670080 621618883 340238037 269298573 222763930 849977081 613818390 248463776 736064862 91350802 240513385 428621283 327282256 698512976 243722412 334240221 211185405 392098279 593764819 536291691 278854308 90736476 657315642 337427667 623130307 824084097 747541787 646336461 420287785 105174437 57633541 324101458 342814882 196044252 757239395 612578439 717924114 983750048 487126096 842824648 444401389 335384444 487930571 591437730 743040727 32565899 165257059 333483815 727014269 778925933 415535065 696852550 894912850 910739378 720945789 169039162 986290508 728008110 77138610 418064305 518221966 787070305 876615301 209567974 339393765 409086486 17425013 689050859 313907114 76694623 859850290 310270342 820480691 143799269 384043284 328159769 227527239 63316113 254308970 27598307 911358656 494029651 273081659 620436323 63490247 944026088 739485059 23706814 105170515 305149643 721476392 736277813 989857604 655022097 745392696 568069900 565032868 36898493 668759501 561107546 623372940 20756437 168937209 897808126 834898809 601511154 797392005 106103594 562853211 829409821 602270922 269428838 950812463 183472789 375506426 726237330 884045382 491291943 786791620 731271158 173021768 893369606 692671919 490856996 566399616 716158641 834171678 734581732 336384980 379201654 69895641 207624163 677229924 315972050 561182580 682783367 146904656 285355632 401523019 589320349 578603231 535615767 623446809 946874420 676995719 797187050 38962054 34869204 874268035 879467408 108389252 704970076 522754893 616681005 306200706 926383776 381625428 863171050 284295535 199515306 487442117 919190679 654380997 693125186 660190486 715939958 831924310 98847962 355054391 762375929 855975030 245687032 466732979 736828321 148949078 950168632 442493364 552239927 672882841 630532781 872546018 452745360 625635183 447136011 43350631 490899868 316696349 324668096 79746247 204453140 289952582 621883876 307977901 886383412 74873546 142156421 449240342 616046530 105564504 481257115 95845787 241859748 102831569 403244960 328896662 699727744 13967495 307879726 173478779 316235605 28926113 647286826 121950606 337128880 573618160 748462422 929352826 344966560 526700303 795897334 231693043 992415864 56191716 242528930 176019096 381640370 716820131 319965612 158843564 899495712 676725775 639420057 454382463 155552661 19066748 999606800 174804610 990080291 203911716 834510480 57833756 764742674 897685703 247271259 377571079 212209960 796361520 147417609 160986304 302569028 747592961 333051784 454713587 258273544 506545083 519600182 373422592 90164023 830404768 236043931 96040641 679045462 239592240 194386795 182786332 292870001 754273600 469519316 227276915 879511865 478674736 291838272 81833229 910144450 391372967 319067806 456243974 254577042 771657110 750743310 596473835 338545642 440236096 508955523 873161765 583776634 142309204 497354482 930493835 674702563 417204670 133264414 761078842 627416659 985770548 970631777 881891438 764042484 830767609 874741281 765980452 939763325 407343115 799771267 394099387 479428073 327185337 492880180 795479684 372280685 364617322 61077721 413059398 909607598 234603052 432072434 675558228 964030374 156927170 236397447 754631979 28796998 381992281 748183486 237251146 936583665 298244637 89746272 859781967 996978777 710016763 728331082 232213463 941874149 551466432 728672386 726154119 265990864 940549918 948757816 651132811 963282338 206058266 26930519 505708085 478340370 375643498 855996424 168856426 855535300 560808388 407283119 97649063 675767907 876146875 605552836 332038077 223795185 629497552 884361038 55858760 927596064 413708142 674251287 488704601 92817721 262416691 988687140 380856016 964902536 285365585 978688228 860760695 469344294 722490660 358978620 793893508 780638569 727478511 692094031 771363201 576754756 803508083 427822790 982096900 533546818 634584029 599005848 842467665 898947827 472032005 601390856 40791306 751204059 954535396 40238211 802320099 524811973 643284912 885710004 402775059 77372961 222567254 98077669 648416759 94084806 97661944 643052589 750412575 804885693 408380234 84390889 48513403 612852069 197871551 684377453 824446667 356039581 930497008 708511194 454703484 481431585 999549432 408704943 880539551 948028019 646968181 934633673 890609351 791622061 675333375 20432201 491034618 615153450 644316355 891535109 422606550 778893174 163753724 415123816 679487140 154978280 31561462 348601700 537721967 427907721 375257761 309194330 375838069 36699218 111587320 833091806 709045067 782143867 129718886 271239851 443851373 364729531 560190950 371654786 870605335 937320693 872848292 393374096 998162609 132873042 402450353 249338372 63789932 344092084 977329276 632466569 810737036 411340339 528978175 628595058 473753383 300107217 384695622 790662475 854602009 521112794 455209490 906472965 152042560 746263523 654994409 34255335 152436674 664330710 632953854 171261842 367861899 199100077 339487350 564141468 857564222 25119524 55998589 773353385 787329708 217746431 750140186 235253066 359752632 353352066 214591251 124385682 694432026 838667960 242852305 227892722 851162271 25817699 54927175 120858398 187436817 218284033 428656576 89254750 873789135 252711525 863371892 834460991 538638959 320341018 889468891 119241550 881595267 353217024 413696876 267561659 938292058 367748017 441415763 133039396 978293382 107679470 190327751 452888760 268481375 409909241 75359825 301286008 472360556 46410371 702581520 20748228 774029864 664109207 622938687 48819438 145332970 776648447 875154047 203960674 274996094 922493175 432163839 666675995 747923526 424831572 861393391 813022097 402389735 111332296 240704706 690502260 611579608 839559711 841841484 536910125 908467461 682241725 117373719 189752370 190182859 104503334 651238373 69732714 639379333 141593465 771711012 296400839 528342406 59272585 777387798 143104003 146196513 350591047 403895609 203829535 443035899 118017495 862384440 459026522 186708498 916577827 458207213 552779342 29161758 181515438 979636551 33857711 900282637 517900942 882747367 226084516 998040039 995853068 766190978 666572581 83364182 276349332 745923084 32149008 983327347 539308211 562457151 858684212 212252257 641450784 285264637 96149998 593485144 496038605 591478200 601335481 386035254 177852215 113214765 931592211 85481051 863530409 992812399 88854553 38980069 613542201 218451514 558646120 67404191 17303867 586565180 601757230 263506024 595796580 573189649 329012842 708088344 596119956 592140320 294278458 464350672 811742754 162535069 760979232 773718896 384481819 60919507 577062820 472344958 145890255 364809537 903491318 891240698 695253464 458772825 554937683 93963176 363736741 981008877 400995129 966946312 874148754 562310242 789670352 94428816 692159159 424535391 671514264 20728093 494193098 844841672 818725043 881917079 768547864 278301850 147217569 296124774 420638487 195851148 636503906 608033803 673843749 731659858 903786249 568241732 854698489 929619736 260214957 760114582 115507365 527797316 565599819 850506401 538163060 707288877 313002917 279009706 927726309 138761341 254847006 335495594 183021147 380665332 350862859 573601461 652753514 95537296 956408760 865758731 589208481 405983324 969307277 557085345 602346529 556676600 170190153 291315935 834216101 531627010 171668728 38704713 425182382 601850105 671059473 948329750 36639256 569025138 479563173 461875308 407473271 179673126 549614947 108065069 213548313 660403124 355934137 40713138 208317172 63330747 341083749 247321576 695807832 434129136 715010591 954836365 15213938 392773217 323499983 326758214 343813181 683040584 98144654 543125586 226384313 277581539 541928448 570202146 195412416 336970329 226064131 732206793 977012044 871516957 936167522 786547110 498693317 571559372 572181950 363370959 902125542 225735315 478113254 457173537 380854704 953386162 935409343 78900379 64056217 295421309 897044262 884067979 550154440 92090051 647548000 284027125 317925197 753113512 839049679 953141142 579445171 894451953 570058949 520093526 99406535 255531510 861881075 916143551 276460686 473485222 792471287 686991617 738959250 799771260 418886281 902248403 101984260 872867854 970178646 37534475 85741362 204909134 96923315 818183359 148517283 16871428 218945139 600007077 730671681 668362421 886702393 552767450 540812532 328758804 444879941 295479184 201112072 770064379 711555425 756665145 370047526 44591950 100185079 500300928 970596445 828004279 737981350 55766033 900719936 2489546 977121964 695558846 217098230 67408418 630300039 430313502 32451842 640381289 661629090 164966371 646340310 330084322 535775504 159585105 132176518 624356772 535724350 313400480 766423410 200646664 980489090 954507190 413571802 930088191 496644067 274234141 20412874 632628503 285228803 194469947 943651062 210560242 862035183 77804368 166015001 646493151 195451371 77993368 861897245 638320433 761051565 597608485 662330471 575774836 124042806 999852970 34291462 556397145 419222124 424392227 902978357 776129436 65814056 395108656 244982937 431610565 685127532 50143463 901061632 447382883 233632466 262049341 558590782 869562959 392057805 960995504 238754452 293815509 657722124 534312179 733037596 7921831 603427706 459177230 180515280 781850983 640360492 826657726 356550766 156182932 891460195 558458281 186522291 993145433 222979125 148501858 13256940 480182540 812654898 58840395 941052249 993022091 530733892 315697066 102604758 735312233 711037536 815031584 285232189 999846810 529368225 860672834 749937842 647796053 628386846 857032992 363081846 772867741 237378944 943259841 510856005 65908762 564089618 7065844 193832215 635389446 878873541 141605289 409682607 313675586 962858571 445022289 721522107 171839029 754415462 407751406 653401385 891362479 543682916 988802773 376392857 336263194 43426536 840172850 528970238 190411847 152893885 230669647 338757642 708624342 971269375 329743351 894445030 229155282 682421451 2255597 120446497 368085540 573617735 155370676 897206402 324896602 491714523 37537980 697484529 713934516 836345989 676253789 552849493 293065716 539574232 286745716 720022895 933130393 674250162 864721279 510433529 719277958 934399935 882403254 521211532 339116081 432932589 726428589 905332039 408063795 139035471 855222576 262111248 434089969 577609404 768329222 623277921 944461230 541155821 321789985 22947794 710869116 706049036 208971631 424902773 963459953 613202652 789128081 801942016 716486166 920871855 793018317 336568511 153501670 674035863 636750296 597287780 996144619 164766752 512884901 539630991 662534806 918868252 71299286 468860584 229324547 916269848 423492095 708597482 961066912 253086417 113015429 203631452 89194241 94529004 543556056 448229681 751764348 76994069 131027649 795229235 531438329 468933051 774434611 158686923 968696528 192231947 901943909 24734428 704022941 431827348 688826406 958397245 219467801 853923047 788525354 903012082 845863397 168083627 349789414 454270037 679733523 908883810 140532978 809164224 144580114 140237777 778672723 740056309 139885192 292566938 611906066 790203520 709614902 620420487 404338812 192513899 112702336 676373910 169047277 699916959 988615448 946432392 534935986 129157806 296054598 65633494 254393562 63581194 22172217 876851976 874400714 345122321 69105982 997176747 737679311 951626487 923790792 205175189 92512312 930852412 525099926 936641462 324157248 399196458 185894982 746406309 172905629 947007844 654244704 833948260 895040617 902827391 478158486 705558028 170683122 629607070 647524587 673311369 212503199 855350800 97886350 446975761 816573457 713988704 644617757 928128976 966195636 566658167 830382196 975857403 653108014 969850839 480822491 871575965 876978312 316383187 861868526 974547845 197029016 47680239 869908969 49778958 215123591 447229547 352205137 935426313 571835085 457567014 481820619 932619612 780079959 83260698 461184164 137739316 277936341 687071707 457612945 583612156 745970454 153049635 155518472 626832102 139507614 594757538 806525388 859453373 60707692 985600119 885386250 581297141 603548328 509296968 991767591 28054106 677432544 121811586 418772884 666972775 158075368 84021632 612340360 720862258 133772719 424903970 879118141 26755382 208994085 937993618 963730793 687490613 741223433 389375937 837930817 528079816 87004331 461673627 355752218 671110230 732654688 218910045 562313673 388931791 422446629 96341778 257581101 69050216 546668822 632763267 868057710 461027015 364430386 708557752 920558184 106882054 206667085 445687302 148748184 182778691 386766953 939249259 109315809 472198958 196744999 118368316 951293810 312200430 116675483 887293462 72765063 513473714 72236977 216934333 331346636 680572772 468152939 305184767 704541121 591280572 465110388 867207420 102744691 503833369 594750716 163106958 360935468 29311599 916253155 220330651 657534417 570057064 458260755 821984725 635323288 810789427 620718818 747430813 997828972 601404886 726401531 971464656 540011350 964302301 947482754 979882888 72361413 289379297 917786720 883959716 583376245 633656099 832450655 8463377 665108249 444562991 616873673 533496342 103785394 656201497 460108513 718622453 341462015 37091198 375264183 470921225 429181755 112876388 211750488 906172736 234757849 170577633 647959400 291506702 349125226 768735362 689064694 384666143 471142300 449676388 783382591 731920488 865410362 920134994 837776793 810030723 162340773 821557105 750275040 94918593 438605840 383191832 92232192 562501448 496053638 298095441 620875665 651386254 781860605 569478049 860884113 715817899 889956051 106948650 946615851 631576091 345871857 251915401 870038483 704636815 662502349 176453106 802800946 298638267 164428909 262203679 496531743 969193066 201477609 982762294 458702766 719777017 98721781 402909372 902707307 515476632 223603714 760133318 227917657 7811383 532163195 993996479 191465706 409372730 689212751 324814353 64742279 168351569 773491664 65376966 254524921 331213492 219242683 275774024 670263760 706525578 5329188 307793339 529432228 955893743 156374146 85414929 145709917 251960457 692903290 484006242 660321155 66793440 610051889 762225535 549465715 393052332 597264679 675628055 83368450 713024692 971347810 201507573 958368671 694985191 394756004 239480388 121815901 397270508 785664975 737803376 345350883 278720044 860003199 536543352 994311936 473120713 165544211 406412957 40183374 117387208 414500803 690353059 768249367 60478417 339872019 383331334 929726368 430283918 301768098 44056791 992126368 544937839 970237028 808512222 938024792 690937529 961959209 912513895 451311973 794855105 55405957 150723532 320280259 989444024 742642710 766544820 501245406 764131798 702014550 253810437 467854793 389800685 136069919 458742173 890713166 970913358 299828365 606034690 985187735 592883510 165494892 117939102 51035329 44170582 820590158 192276311 263975872 999964782 597342147 504556476 856988046 705179615 603955116 524346288 646934607 241188779 556589081 488954723 342795255 809972850 787598334 925187216 829674304 252066362 117927216 86973135 589858299 57986799 309796278 41738341 664831800 895765314 845271108 347626941 461789657 320063492 854993152 956000707 330815208 454766211 432473770 540309106 133153923 92879606 55709310 82866936 414306681 192356885 71444020 387436405 264219908 866633793 177426338 173884826 765652918 244029605 867501831 664834246 631513108 197894141 689465718 222273297 318730278 984809385 126207619 288150564 684958474 754780616 687649065 478255336 728681496 351816893 760043627 93626784 146706536 364134830 274069555 588688216 590740265 50161390 224472275 728282642 917564664 167120159 127027028 340959255 178783944 14675719 729958448 111390810 574753199 211112827 500235519 228372580 410126095 294447928 97605560 7670648 950914126 450858762 172559454 420262855 665403549 682007933 338139523 463382916 713691723 305647737 132415428 378639658 976565899 963624733 141748523 316809688 574409329 560104853 179853827 91754520 632904670 114833207 466454689 432974668 775936852 575687287 461030054 839127156 645336726 357127553 609589652 726370829 696046553 711778308 543457856 760632078 848534267 336390805 209287599 86946161 654441649 613061503 526229290 491828852 381636406 138178518 128052674 14507013 291185484 155055467 604875772 92845744 248180023 881025669 405615853 541352078 338062544 112705902 643197716 683045560 317245776 9561405 647726549 121750257 403880134 443790548 232014709 764579839 93612803 984312663 90151714 991546944 388612564 691574918 448105403 549350661 375285710 436560124 928729910 604834481 604513003 625361518 569199073 316131351 422173678 47465288 392666422 592508834 511692817 481054727 985490390 957946186 333638564 862756999 714919474 951951954 686276544 232042812 921540772 759966314 197507385 229006619 343331553 774970655 157755774 578706688 828574289 863684669 955706930 453416836 835926203 350359080 412659603 407369238 236809964 623705377 865956202 848142294 964608176 716268935 285338155 712430344 209968873 911105750 19041684 929520857 912506065 467488318 698716183 169342845 778169960 722161752 540647150 134497991 652163648 120306329 23725356 896091398 846570812 488959159 911611471 212632716 12217195 887273662 157004163 759005574 559802392 370249798 621473806 580150822 89019046 592846627 390159623 998696891 528327942 891184235 858855296 865936013 196668741 318905720 19591023 525928263 122120902 746431012 361307035 738363846 668997232 584853921 427617014 229182239 580242865 180950408 253789212 91218299 133676039 322365719 159743143 923354095 977396390 215384122 686149864 279248095 810527818 306349813 578694130 426219049 357108380 116057188 146053974 328459610 316035506 857987730 537340365 886299763 689550877 308345815 698226097 628233523 81157391 730026633 281401826 784495954 801769100 4826762 377659967 906379198 638779046 89414487 782029084 453601714 62321223 957230867 148104266 160182569 440907306 187955496 233021393 683797188 884482157 136685794 787229390 422164326 253857286 503791618 343671100 666810588 268453929 543503651 466181662 558494652 825758895 74515840 214461507 601519719 523696628 975565037 183631008 839643167 505623641 500854755 593341907 736298671 91961483 846047452 329844835 581000329 269820383 655636062 786222118 103422103 554678174 806317277 160689323 260696773 926690383 437949183 220931837 140638813 304380951 420073999 592418951 94964379 288137900 499366833 873018887 983838588 554199701 20803665 449693961 34709569 497306019 314628514 234275050 211061022 401647624 551701243 348846715 673825823 557537486 603534927 986761701 337211440 954460751 660542329 629063029 208445647 292442287 432980842 85753598 764784139 776721271 560045376 67369648 505388864 410577967 974753744 910697239 577660129 514994154 932591330 590804568 911241998 135676925 540636350 502588021 313252484 527802673 787145537 52875938 348434427 976092185 214846467 337382918 697098617 187529486 143380208 810938689 868820453 593156645 605806961 884591043 371843504 793972019 854484402 762668755 322687130 20819949 723987707 322663442 192340903 20917423 104583277 597743556 646511267 256092342 764685471 748847574 999405325 6993312 681734117 956596209 460770785 810082007 834650431 957080574 155336852 464566647 204451417 889605222 70287492 319594075 637130727 535294010 635781607 856441037 716293822 268062603 426890312 410055559 979953343 179094199 645595704 47907309 862725619 678547523 97166867 839800287 376219845 547644434 144423704 796896412 853950274 624191165 768423922 211021045 777667142 619014615 234231118 678551223 25351556 679429548 609789204 71410180 604064437 370675583 600917559 406639250 621173526 925125590 41087046 55715418 494127404 200552272 987763115 172075683 866492923 39518608 274843036 655249361 105594859 598251009 510842544 859569658 176888649 69416582 42070991 101230388 610396419 628100216 562968159 945343562 623170189 186144305 42280313 714913944 897457981 55942146 989392729 811010385 345810433 239337270 637218092 546534627 451125065 924406337 472332827 638532464 703335100 682022401 687936719 872816609 743393495 813188917 788627254 543528778 487535324 63589454 974688728 832583391 757566252 864091141 527267888 649371641 858066106 136911054 55300649 289460725 49347556 359915073 731462541 442731068 330808569 960911946 541327626 12810030 636778882 383094433 593601680 353104924 935481133 791067754 165179264 964345261 356717547 716436154 654900784 770571608 419466006 126454486 661363550 471979914 501940800 340153165 76075367 129642469 870182307 412815770 425688608 534197826 621184880 110336001 870435580 304970516 981596919 808808683 558255526 680384873 965623278 378610109 491319240 805916077 180511310 776348619 558700712 574323926 926918742 105280890 271206968 79840076 229576714 104300541 771182135 934177131 250631986 208563661 802372977 231678716 696471897 343737179 608714198 946487890 788260150 290995704 245296316 743695059 466934176 161743394 223014005 668191198 227035508 728626255 847919508 719039406 991027957 613594448 456498752 722517497 644469506 856020396 67743496 523974163 127662250 93984916 54452348 180769001 906405303 444928490 661663601 185065387 589041700 999053792 15552569 149870118 427758230 68874556 901756598 814853992 936273698 892063015 896354760 471730071 627615401 600002108 992816254 650108317 87389942 662755447 523093017 923446204 359103808 838211744 162385133 29709139 622631822 816212190 22277379 725094560 819528351 912467748 410248733 63633913 501220823 275038160 308910247 845279911 58285352 45455168 161801019 539793456 98534198 773988700 480512739 787844169 999175562 981616064 772755300 213161674 941234925 937243481 287814650 926675577 535868404 12698931 546691775 901899798 517746591 185773078 24315381 721952215 231177740 307401784 727394187 698195772 659014224 904717504 831608787 977972768 719562181 783305949 322388342 764397078 980708713 208238880 936582454 721601981 146693539 183410142 201332184 567393954 831594151 763417996 306597226 550186895 266465741 188119152 877259843 799266013 255319207 393322397 834001739 644490451 959110387 509217438 955920886 160526245 840416316 635393140 568881140 706989089 495185984 587020301 759865715 850122896 303667792 51299303 473230358 642221464 710426895 870420693 656238173 774830848 735101272 663123012 658963457 834664053 529987382 141136907 305561711 238151632 817935330 976206355 714335735 258321337 717203406 372393478 699105 758781947 788369687 534743666 459221115 595427115 75252519 300336431 922970022 758949107 953200130 672030334 164729866 128738732 34186198 959619702 119076876 987004883 128633451 915531357 143643997 181849508 607215158 301492580 73184682 190532537 64140722 746486553 595027552 773486716 985271395 543514653 449850414 947514016 252751068 768254468 359424333 72209488 870919885 674050674 998839678 267233467 323857316 382727209 601191812 99256837 438139711 683935500 55010122 942406161 649803091 797644001 706445600 546568451 708220829 131873070 449874189 982121314 983926707 181038799 644457870 71442646 509264549 265276542 198643588 920895258 863525320 129705963 514515589 848522852 13252189 634193787 544282164 231768607 71020974 446968093 644245553 971661686 652888777 649684751 682628950 986046031 143863094 605111533 767298930 398527605 470211864 752080704 169481446 182994760 514675715 118121845 10645373 508463410 91876131 904116791 796678874 787171660 919471777 439961529 682772934 405378107 683232021 419500507 510384179 31667122 779785396 646528715 857826253 84901456 826811851 27937827 849598039 270593474 283641004 387622417 406136541 375578766 18278945 453227171 189482223 225593397 293031962 256519455 82260352 730389691 76378946 518702362 796179767 53611290 497707091 334439089 411688703 664181317 752870614 477630347 527951752 62186405 886344594 219379685 412524659 622797095 2732741 204961788 517324294 675164555 870561463 817649117 478308899 100782331 804412235 154805650 345312960 831316799 649713884 934073038 58296155 755806149 694325037 704847926 440755677 929745379 458159723 568652886 693547933 837319481 658979256 767641641 676573827 768089379 996589252 295996764 598775003 789489872 903818521 523158777 883522793 489867243 336739681 227135728 892223730 449824658 132104719 933827284 394371318 662513278 346157809 114169559 159093026 521289005 353795041 17206984 436511317 70902683 432568858 232179844 353746427 591684202 53655382 190199117 102000563 28378721 257995083 515732380 70138957 831633949 595502119 492712683 510570584 444323713 786013370 73311940 261991224 643142565 198173921 47627581 560701466 712839640 619285992 816592034 614098250 854654190 797700091 186511337 714144310 396897411 148629397 396785752 230174823 323178710 399096131 934082917 442707905 976422831 160048743 233646389 448905886 551149132 374367261 154097753 354070202 854833260 754399147 726887573 159142269 251326179 417329134 539256008 765572664 57286967 359247486 955161009 102460999 282836693 867219993 552938859 452784654 844028055 570444942 629419241 627063028 849119120 285844818 450784207 463160188 277775414 199493920 59298626 299889026 710488901 875478653 692123298 555438527 91520164 219471138 242465577 475634408 534724837 323239593 937642418 21636162 698183885 941934488 721990722 728118355 389985314 646289973 775579437 275677482 166504467 916794090 791980754 505865253 554955068 233676987 739208531 360747229 786053933 616730217 819576491 381876102 9566940 79178488 426763903 428501225 127087217 933667612 853241324 715211152 988828380 779903085 305669983 360367769 4962700 817183796 536404403 230803783 600540959 694548053 375016853 672755336 471975546 711855796 280338977 108991003 393907068 853014073 640141381 823644122 530414681 642368190 571247990 805676707 681389561 45301933 712405927 580221075 751294895 842832274 74020042 418666690 307554720 119289957 524844301 751742112 517866022 278430568 416344428 489055789 398712656 426148259 290815247 611560313 958453909 60950390 918835517 51055380 993073226 946950374 77137544 766002225 445276566 388982419 51504524 834293430 618262193 348420796 93408595 370342470 862266649 954558542 95299366 212721830 680485607 176112920 818378025 870888182 418722988 569427663 352989627 812293530 619276816 937606375 447731304 884010325 811338092 468863292 979892703 631072247 885229737 995264655 646525765 512380936 804694181 990787958 209583120 335547800 304820464 61387721 429842657 608112088 860573681 262325762 750502277 925135861 356751253 305840972 160672384 848083375 120361259 378442997 928765902 210168940 150343847 621167412 626960335 885227177 872654560 297589007 198191881 526771376 216266756 830632267 974258454 753261734 453595535 111369655 757454931 992096224 445024167 156144907 240807232 966197504 636039575 477173748 841064202 667155282 701548900 727794623 379038295 558412641 395417132 358363018 752363536 842097585 634468596 744992085 267791176 324028327 182604316 819976244 180148739 39772889 394501097 596633003 305151781 966959395 739638595 249718064 558384463 469270551 446359130 45971365 120877862 461790087 10696011 950364844 680531925 85794471 546814609 685889087 950277251 462951273 21170041 12164909 807511825 704863461 768604455 899138746 194569472 321336463 723658503 688650963 763146312 29301035 597686598 305069799 76441397 370503866 631384021 247963693 587855600 757975329 198230952 686184042 240624837 65650081 886244058 640835020 286278049 836319473 618502607 978459826 14250616 937274873 624806573 949533458 841230552 874482541 162027032 902566729 597303546 56312319 12162647 159579515 226824326 192231386 234936205 539139741 430931400 366494854 86416848 857778676 105187822 254106471 395194477 432576545 574740785 193978210 190303946 633137687 270541456 714336062 605618452 988878522 526950267 815146185 796493290 866264460 883948209 84785159 331409848 672841753 907442425 438355793 705594981 549119563 636038443 654834896 249814054 825918767 27870663 935953986 233413480 249698448 429027819 430882872 883410968 869093207 893569021 111262510 857221278 177042699 176724817 880184926 191888107 677735043 940313186 905335825 10364818 506256996 254265635 980366632 931473339 442741247 547084846 925726500 519961681 176122683 833549022 991028114 144818193 20489796 717535064 157183683 404884255 462565583 571592289 746034995 922152911 356816525 81055122 348647896 21995870 632694454 599369372 877920307 93661381 836141222 933257908 638683402 182011782 468415316 68012078 467431172 415508020 517007730 970020230 531450373 149699635 826521803 899250464 607732390 264657728 510493678 8086646 649652751 734432389 382325182 154958110 57009002 827017568 15848946 647489572 132344601 917364802 671737046 209929617 10757359 715353161 872687883 97662562 38124082 559396591 124520836 480971960 583341727 211245826 363971795 250872597 388664333 775045294 404451703 846017866 232404375 388039326 777805653 690216747 268240643 401479824 399952173 130666737 156366174 609794863 930702217 312165308 336923780 729010550 507363671 239940757 751214424 635064527 411457463 880364143 287463602 487419007 957912811 276794358 985073102 175740041 33687884 745383522 1004256 234631022 149975616 521071001 841782002 146893627 600844500 474575661 875678210 995874233 889310210 443720535 151946115 78618718 435704261 774915610 90383945 230510650 24900662 825425013 889712536 778897897 554991785 979140213 73244117 73740889 282107830 337922768 403267454 933679576 327221449 454264653 894021863 456107841 670151052 503511899 563071639 464550834 192683511 41928441 442702585 71293790 584354107 782929468 742692800 48812748 126147290 114981410 798117387 804604819 893179584 6574594 324236242 69748804 501578259 486253392 533257064 586105018 664695085 626824352 772350714 701541305 160763169 784390239 92762860 1615766 875301870 607854491 834795592 828250331 183228663 41032440 243385199 86926839 400693120 443298297 617531480 948597875 866385078 730297052 434559403 622445679 888372335 798197741 27899160 378487717 790551920 228102009 486164074 550120933 765452764 447102126 259845167 875890567 578812393 413378910 952961552 638980391 455303311 614710128 168221535 30990605 350618498 233469840 692849775 367404328 227924039 198541789 925962777 830671886 666636185 949915982 392350467 842015160 674107028 583573 632364468 791972451 109405220 923418026 166651635 655010612 532500429 609463107 528496577 444394872 779883162 523483640 899668264 879033073 108561935 959889961 498386747 464922759 986745993 852652248 875058816 457368630 197774766 318082786 637715032 893139361 235500570 580051336 312472299 65474676 645865483 187171828 122966914 903387007 73921489 362141142 92650711 883226302 937886179 203347343 667112769 248319664 900455364 643795092 301559766 813953713 252480665 954167061 958327135 302492929 575954322 673152765 316410610 578137051 278979713 430753251 650463183 227880199 619667093 605487571 228590901 689697593 886405289 143282706 362703023 885400260 566138317 442969745 351854076 468273193 278258751 59015490 929381117 580165007 188592025 965422023 218917183 728421861 414653872 287150968 345951435 696523398 373564182 143339893 221764419 521961938 167141764 193876349 745319461 903512280 787317788 337339641 70852868 552637164 967712489 528130691 965247935 376848801 696242222 929229429 566226379 492451952 676826794 253609618 428254125 839391794 768442366 444365626 592581685 432321977 939291586 539796584 571378520 724257181 285752939 464516529 588022404 567906611 406264618 804435535 13047840 630093448 457417361 449339537 775738401 455719491 812646277 870581193 390889971 664194302 119971647 646950896 351248727 811071296 579308911 958587270 636414222 150175717 8627763 368203583 345101579 853627521 932204663 450401924 406806615 140252716 793606340 561112721 164203711 880778330 598710408 810348165 554800306 841504966 675941709 3481802 946881205 999018586 32481076 906409453 554655522 358250313 251812725 938532911 914020557 596409922 354986902 160648959 839066188 877597778 655030442 29079851 784688277 667404036 127448881 405932997 956180068 145876148 998094783 890343206 337538778 426931751 117266690 92157013 637364515 87384084 25780509 858704053 688990067 13968117 295399017 491435050 637256357 376039892 843270208 148264819 180420231 544376418 868320347 246658105 727626843 504233849 365568512 68566644 867699862 313866300 35157977 411539372 883555349 532721153 627533714 54533300 957131808 120437878 959751018 337518774 165668264 227731990 244630878 818889303 121037420 900649569 736767661 493582445 207402588 445065721 60850508 903941951 311690363 856357502 727533053 395284433 360428771 840581007 459562381 917044879 796571659 815442057 427007687 100873955 855122433 110003948 159272620 305941954 869531802 424389752 867611769 486926752 514336331 103910326 36528901 464083948 233056699 204032435 584241932 871660293 61904351 327146512 670869864 160584129 139182730 626870286 800154297 457570105 922154609 815393775 846072161 264588484 674299366 63457431 458265434 168315495 990362380 687416149 318247582 757097520 750188611 819642719 816413200 95877884 351723073 319897585 772302927 177433635 414785555 422292766 9302182 611499850 808161347 627503774 769639963 192013054 397222890 394294282 645671969 553870623 976270828 671704524 709328150 764610970 798192407 769883737 591179972 716889883 872286691 30731259 716431589 853568543 377888294 637148268 714220360 415892177 670188653 594704550 388845990 295902687 522708469 425908641 621412812 10670150 236726350 858074010 404481045 766050592 926484322 444733057 203331760 142590954 811167465 853358765 831817568 143245454 300300289 601507253 640621538 303844156 238489626 933838557 983528227 818926745 881208109 369202121 456704638 660418111 540071993 188033860 319626893 773270309 322849225 231718534 399588629 523884611 951529556 38554852 832982890 389112834 34810585 277437442 43376549 83961611 162855490 980464897 64746640 739688914 900528682 69906367 259703329 924491968 399139079 63655864 125016236 104786880 594259584 933841360 906936823 58350974 495870053 612483355 650228498 39614944 642744021 47728396 44520729 955565154 915343851 210795332 832172430 30164677 106918964 136194261 344135570 940117927 816271812 310905383 34126403 994171287 453667431 705207266 363321496 333119196 516310924 558161249 413686406 189167295 495400366 636597147 371581088 903629568 400424255 582074567 759016244 363608676 838272037 840302976 138880766 478713839 667716410 253375201 905749209 72332123 403477282 313471827 150603480 352069920 449721214 664620954 823716119 455487441 493766184 746562331 312487345 166384278 143970995 462105622 479134052 642537994 629443789 917302951 222705233 474177565 881010710 12635062 849560436 364317681 99121455 9909380 872387105 358381768 957457583 232042364 106625659 339245676 964592314 124679932 328033124 516196774 937739660 794007163 415543260 250977716 364993059 61184760 340207845 997994691 166003940 615713761 727426025 622022047 279927630 686947640 1353245 779553319 161976017 863565018 896696976 184964275 446744020 231626168 923442464 447567911 492680751 471312064 869118866 538173372 679921941 935843508 993951794 86043855 510223540 417940404 141634583 960462492 901746589 560362838 690714921 12271386 450296974 96699624 365339757 246768276 480465031 600694341 798089146 976489333 463912511 391851419 728785412 801321595 179755555 52776360 669000767 834583873 971658747 759024618 623329074 607380952 934616684 138095957 175907872 415820150 758432758 195932807 996256628 312014793 524894273 196722182 387078462 358798177 350396103 175928120 411631579 332506648 845771438 624385721 82009269 547411122 605330644 128000215 662868917 401944875 48779596 994430402 873060271 443196880 921337170 449187703 828606805 344459068 832996253 637971378 132094899 14530495 136197854 959506069 551799227 560317477 421376849 960295883 933860021 356653854 123959880 510567314 221248153 313929129 695754684 189354502 64656998 395978232 630223305 798165153 466842966 473980475 761549167 831119308 797196090 676798500 387599761 191326390 317929792 71610800 741066899 606376142 297036003 622925465 465989239 742250580 630319561 814282172 396375097 141131766 819229673 750601419 218645706 875183159 12225606 937081407 314142087 985911914 333605144 569352403 132087149 135958734 280622346 338889995 420645498 676680759 436929489 40295218 876787868 264990159 574230632 834998716 155263899 360180480 855761514 853989606 209138818 307780073 123244148 252591527 469616788 255668774 120742597 182424950 102462920 561567423 314667110 745892493 321539613 512700431 741518882 279216507 291350460 405903685 646338851 913424226 253822624 681638481 696745498 969533018 931970583 723317711 381633315 118144690 369620614 764936102 729235710 501527131 650082020 402314707 964601705 433503252 190444563 7816035 934651329 19948983 603486505 633599798 301010810 839810013 918515280 995931532 411371653 268045966 745975249 230979339 174733111 11190214 521911404 336599125 417027682 128574382 307564437 879606358 575899155 351920699 960021536 27880250 650338426 131408227 514382325 545992588 932610312 780184541 957433869 331294243 118067886 149316019 800389997 256848053 95996659 408841621 214333049 390560046 598099923 590245161 198503565 563888327 315045591 201981352 755040720 124987365 795961495 962410796 679852035 15820218 834827928 774777509 303377356 308072133 907992952 780228419 434850433 276889872 989878405 469756982 303652306 743862195 589252938 419528903 920805765 663419679 525842642 123633614 875203200 574440756 876832294 100629321 680099974 735775734 523937565 961287058 948607773 7899198 338621104 103933443 256183181 127514865 285389099 387044933 453599462 177532044 721654547 661355579 716583399 180634772 360073773 403478842 398344296 352223509 766929537 837953992 650459757 231293498 456146539 216790273 900249962 301240423 464369826 362952378 523998266 385289241 118432509 827328409 185416574 143630488 381191606 823078146 845702255 387483525 159360421 391370181 92524514 786309796 483577306 871813657 817655308 834699862 761237282 325235242 404670784 336133155 457907772 929713805 545133807 511110220 874131931 119408874 674701872 554718645 315758284 634584728 409801980 179390868 231578591 860593618 979927943 315466356 844578620 995954769 248077051 783223630 815082594 89529032 131914547 449784242 382838918 932641880 88428378 388955357 120763490 878208842 257513151 589364095 398614766 102067019 269533657 340075586 273552474 467088100 132480230 288732836 647114736 491052466 135393108 305468460 969353125 952161052 465562279 313140547 182162472 923231789 432605925 596287176 456592827 343878062 852635030 750374062 15370500 258621324 564403239 111147182 570656170 684093094 80559249 755693413 92402949 129767531 278781211 971518251 872409431 352327345 877164775 461190948 982287980 883695260 667548753 345348702 654985938 561190563 40429337 58834603 404576210 553105719 187721141 88768663 56226913 836730234 431172264 863204871 139362287 748869704 690206410 98321561 238443367 697556822 479265078 140692334 897695382 579130158 318324712 954291344 951152584 376898786 833726998 371361223 153042488 997790688 262818822 922134139 996590993 396971811 640664594 558283836 67638271 311327707 513140518 121339713 451981755 771398481 757522578 306119378 305181905 204648762 19618625 550038167 917456850 858183220 611037166 690282968 64188210 137306212 234443623 882830812 930731408 559341536 415870537 590985207 867356449 336912921 122048915 325199632 691788631 291878060 137321003 736774624 660408281 769638784 932639184 482953792 364176671 238968713 962817269 194229184 443500077 338824315 889075709 25514591 583883218 446699196 633657010 525463011 661663845 175716584 85527550 149433328 508183856 462373654 615718965 117444519 653547446 772006847 803599842 55538611 871447522 489568070 153980606 22211273 469169062 37121207 853201638 475818586 624940447 483631973 208697087 708094740 156666228 754331433 513505159 389687249 882298843 651786051 125722559 530685462 611834450 962870740 157948064 634482785 120233980 46965955 68192957 435483343 991201751 569852324 851448739 761620116 812328876 809754179 165432012 519922836 104047797 365572771 933777488 508800322 289987214 435396437 86329115 712473568 868492572 980645464 473459484 425678153 32594527 335656653 905239588 265152982 723982649 827983872 107971769 8887732 829483308 880426332 949694630 479409084 377208808 745851386 163162809 316097287 186758519 261148658 411135386 825756146 289521018 213314856 297036854 350693581 782970303 727934053 928575426 379641735 848542873 426563629 128903128 986931588 901700575 275063610 62623682 556070325 475590231 706589826 896822753 747503022 895147438 485858609 368501027 135753009 749004928 619336288 421774210 156885917 936844565 363474473 995690746 535615096 150404210 687561233 197244399 925418577 15716696 499630439 480527408 422352436 114745128 929178858 971633161 37122204 971258819 260036132 911053949 572518538 560316314 260987047 495152681 690094116 971325825 385801875 354457283 197539104 200238813 16908123 853439394 84916737 6933611 628366412 445693737 455162623 94087078 341683389 173554593 676554923 153722321 967462889 72142181 120133023 108289658 649914270 553311918 45782521 608961909 985950680 821325661 704637786 496757868 204252773 538675363 976584544 568925304 238494860 255988933 846608777 942377711 865726162 320548689 714794539 705431400 365824099 614767953 880516019 504952123 418235862 187848930 293848796 697135340 149754947 171255681 317565192 419035966 547011107 104952439 301418292 483211241 228566017 729482666 748987340 270746815 706688606 256917781 899120991 161046901 86880004 877818772 537431130 778021513 628448331 807786516 543549927 885252537 278527673 241067189 745759095 193492202 853607299 713456177 785940154 957605131 92853879 849767786 502683419 288480134 44656806 660735701 929647772 320924132 491776007 828105843 722711467 273496550 411711900 265139738 235456129 595458054 418689606 732984507 760681782 879664948 492475094 345576493 763669098 420252405 679613380 206759450 71097153 488623139 204326196 400088784 337468754 95458828 420392683 624202032 438465731 333322003 443131698 948334073 221406212 93678602 69970349 233991453 39634335 600270147 361749633 618429629 401488524 5073028 6285173 86450730 3756740 731875152 751754053 216999191 333579573 691620205 681905068 262598402 758715008 229945479 826600791 653038339 257580619 922397648 122944508 422102491 873869368 190530485 837947705 557219760 708220131 23249567 244460785 578136005 118656080 559349036 171234814 839393135 604672502 78768413 376469450 684846848 643615749 342898164 891101752 907007835 526157961 883774813 537602907 86636856 557822782 382940571 400828086 433263456 98066864 220375940 714647997 700903692 154478541 809733789 443504598 88877248 934866996 538742059 464177191 935850286 603932146 262022446 625671190 169345866 130232072 621143081 222671154 44526222 810738390 479624793 528312220 97186046 997774498 481245951 946588591 631303276 463140142 116679466 921448174 930193898 738641338 632051295 347411914 869034208 245322645 317745075 503419972 999724519 861747548 416734737 954491051 479339071 812406988 678532903 120546698 494260188 851970757 567839334 484127305 630417478 730869137 655856403 148278441 287852216 660116443 960352730 725077075 359008949 971982679 893057279 469210099 554022038 688041029 296180883 78700412 574497538 115991176 291592509 129657190 167260511 618939231 726490402 200507048 98256986 789483416 163786801 618555590 354685048 407079310 358431057 614079050 242427921 36686057 762861234 730047151 657872089 450577751 877578135 403472070 2827993 509648515 41638837 473237815 77694515 555488248 227045222 220001240 258007201 778021385 622916761 233341251 408377752 208642569 223405642 490439235 982766161 397958616 222066121 940630843 460156299 577008298 281389270 602594399 681300095 420676265 231200876 935120749 238713312 704553954 427079811 185781843 624678225 171617772 228188350 917172189 386660246 599206826 312438126 969148578 533487435 160866033 353394784 706257817 180632241 603715763 400679893 796137318 106503685 23095090 29023804 170576750 463323269 921887039 930051202 747101148 103557104 220675449 760942393 604759993 413914101 610912084 634108011 298557258 393771054 683134967 994019552 540415793 294333045 216181807 986402699 927666241 722626943 280346219 612482312 367433570 214602509 795606460 592420342 141885804 727652233 397552391 317454502 948999910 457641354 755066924 94485714 477893229 815306139 281402172 573828494 384413004 917563906 651825394 668340095 418319774 630439687 55867988 999539582 711610467 934534906 938067630 436684749 536345666 485465625 248212090 900432408 984342814 548265023 380990425 951529495 818848511 186918974 281623945 696707339 856382115 350801158 104898829 442090050 97435620 234437498 702063540 680460390 171093099 149012606 265286991 233083030 9532326 274944236 890583962 553115474 524819568 177387700 960078881 153621872 351527569 578411291 509882417 701112910 762164135 440367697 443790536 639383210 646913782 651185438 870582829 233456645 407424093 231727490 135472896 318454263 911311357 755722258 770310523 181360441 705711002 216441917 702176031 919930187 30226474 866499123 250327788 327676145 431748372 909791926 114244485 148558012 983100460 477014100 476112046 790308240 190355635 792421515 834376143 9386892 210117106 80400402 297931019 392369147 118975408 677467752 6644513 722908146 914792288 179070943 197727250 453027942 484173409 309269359 692799877 876848170 547352442 569069689 218036850 407578578 177684972 24108512 867011094 947366033 610079140 273887033 340611139 788529149 526315152 896156350 775982498 731140263 17467871 844715352 96800175 556859858 994046116 727034835 556336857 104035690 839140329 855745527 546576380 378438245 597203244 751880964 790082245 238188329 98238945 544068359 589750472 293973957 14042345 525085338 687792258 55963130 328468496 391407616 970846097 528138456 188051190 33808296 886944463 511860768 508332812 973914617 215110207 950518936 741513501 79476633 801333944 407309356 652067945 23384235 912228063 525027611 551954407 948324814 505248043 902155227 90637583 471306509 932436885 232291764 826056408 471734507 190817801 167314340 445071902 832202580 805674094 473164514 605617406 350890492 578532350 842345725 25954259 721940629 934077785 436809503 204198910 609115360 803416309 520347294 525510569 40158157 232970534 468661738 623734400 481869941 980075976 712995631 757602481 419985672 889099553 522944399 257970116 901020915 264331014 485113567 933005628 898125903 670028367 603885975 275052996 634157632 721807507 634380796 191472360 574688536 204922866 459217345 576982091 333065658 156208137 644276373 672746336 123281195 340686923 42023374 191411380 669750003 809803131 823923982 276293965 445578870 617024296 304211796 882469673 914681890 790403026 576828245 38690844 606006377 971828466 753741233 261770353 4179138 5739538 17299617 290096117 901484953 709781331 925558530 705384157 863211245 129377390 884738326 920223352 344915357 384096448 600136218 502789844 955104191 872520775 354785288 868954685 693984937 515469465 379740665 106421154 711706481 215623522 515611545 836787778 594064755 631104986 957172936 160612563 839060349 395417290 564588958 757502982 383079216 282743506 387651565 905924074 869007821 727071620 86655484 444740517 749175988 43783700 763468277 974139956 367502685 826381308 91520941 953650764 936370418 74233814 186972229 874946995 236774660 443647670 973035058 331246308 98302817 635619337 362438903 691815203 156276129 316933109 747782434 772829627 527839106 188499476 62002319 640329999 428342733 436400326 624696939 651485285 430115477 477580987 961022182 132769996 808846110 281795906 794099201 423129577 637954943 951648137 28679825 621573540 203442284 38891764 409446942 833355781 352399570 145856866 873861253 85734168 683342605 397666322 913587004 355644878 102507918 571663142 806107652 953607948 138654079 75103572 250328871 507529566 398775040 16655712 215169320 889107706 509875636 968035542 671071132 208605089 627516470 931004911 29885579 263350707 116167946 311923435 846735879 194853531 122424708 927954017 920163036 750842864 348588888 285075344 566695281 432363778 817195309 454596022 217224590 146999025 589153292 145848831 624644294 474200174 74894013 899669824 750357253 1309820 713384063 49793061 187201831 926704654 534314455 502157704 429305656 75698619 86561303 568802651 215346423 145475850 650768467 806370860 83517077 317873101 671930789 171261722 783226830 814650381 573402199 891125464 271838727 557053955 449121777 692105387 434302674 279205160 339364652 663670663 908144217 129966253 960504534 346705197 974388681 479706268 937864660 927008490 309181812 206906851 83826381 211822364 897351702 275247599 397636398 847976352 842716793 652613424 503220084 684049875 565413136 922299481 886135476 551404634 424956465 247747389 537861977 842360512 812770321 492098107 79366899 259654555 314556628 121210406 418105856 487811846 404055906 997057298 558239920 573060794 678666731 263743743 737386766 561330164 930921591 96319341 528463304 206611386 405737866 899748565 353017164 423763862 392198266 220765258 859580316 660441744 600079208 142042419 893065810 941420967 763563613 958380588 632398187 160515492 553034790 361952362 86670685 887254812 568668846 893923081 309730676 881010817 761794528 663327711 48474244 238799490 954387033 712261781 904748368 317574314 430247056 622331753 790028858 165381888 591954045 380580587 250936894 194929617 336775216 139517688 120474103 143291176 480366572 980685396 737345357 22417532 689210217 386912519 599902401 913435407 548352321 117738877 437116714 84322295 293546054 24048441 988850758 909304555 21699394 450158254 232579208 222897344 735112708 985665150 841696810 238543532 194889548 492777 934432590 520669451 665109090 146117004 353344145 654789360 398537483 384128689 272100078 212513342 350042878 733336708 951393126 794920106 560670257 366321460 793112094 244031587 356514244 739160539 898334793 3751962 619805314 114630884 934303002 830536305 112833920 381158568 292920822 341041905 356880217 420482640 237761560 417147305 37263044 85879022 6980770 145599135 151653422 876724274 544397605 981224183 462466966 845039689 148719558 961254641 729526383 763204254 96880499 65416555 219945156 671669132 605502044 898550263 670504156 695633680 485722062 679247878 569448164 589688078 936511235 216616585 86516048 407235183 441012082 913730862 628343945 10397642 313124758 623846239 744143097 367736043 645322694 133563196 902347985 291335668 824251916 570534485 294878977 669172177 687309025 982801404 628213478 741442639 814906600 443181873 895553421 57713218 454045613 261950784 465741631 472428027 884409887 780369987 852980830 90262562 467886138 184238665 114584931 880625217 275924389 339602548 387156725 436291311 746209250 786342561 354329390 981191899 471662830 616900437 14698899 426503569 767770099 493631025 631801310 147723175 114971657 643844020 364973377 30519452 313424420 852033811 213433313 626664046 478402501 306868508 170324119 413189047 639697823 582896173 163628344 677099860 425181868 933398659 778520895 139769945 930273773 69894431 951514669 688813432 326505844 660450802 590288011 916066296 484771805 453716509 475227416 996629906 244581412 767053644 780442759 527549244 945884626 474243492 958161784 400411294 373585061 914341937 776579760 488168886 248033343 573271983 805719484 754944101 794028657 348437801 38372316 134688781 631212010 903381461 660956677 620604208 439471791 234960018 54968426 116302960 132252866 988422711 280286422 546819024 983525297 616020417 165946799 851626414 737865962 482560888 683819606 961303482 910999476 358576590 372470552 108653800 900602967 308772050 222256953 128911638 530616195 892680645 399130061 912123825 717739594 46683425 856387470 329092286 302956175 512188827 483753833 87859448 994424233 93983805 562935226 477168385 812273503 463143820 806346786 747636380 793521975 713510106 953921307 769413899 208518090 672386316 547743343 624700266 392119011 66918185 646744016 634197007 939826892 773524303 197951931 96561414 814894427 810942685 428877333 823290932 886169141 948566010 439809289 16965754 777629917 935656809 599095479 624994369 401743978 240809889 718289642 925561653 481910942 211127692 19966439 229174668 936092115 179937640 856108946 935737680 42761104 192479141 20629116 396352911 664568826 772362940 179071825 811029443 665584939 875473425 56292738 833820093 69606702 291752872 554158749 146689101 400183478 514622011 76436115 789287997 987837328 388495474 56627811 954042812 850437283 823016341 64847501 367915799 498609004 636442296 359391067 5250925 194523214 531816438 228489353 509476679 216675706 526568881 870463059 886546288 584214760 331977028 281004129 278757136 942614640 374104628 815727147 656894289 305699870 597974072 80675020 398100848 395390059 115292258 414798003 65247710 450601586 981678644 532432011 856718557 674975780 781963208 924488189 301422631 674866474 308830246 221062261 183247229 616555143 230072337 116463346 686052771 147214625 260430709 455707064 136692419 440947191 303414542 44100966 75960511 21936560 475172710 428465809 501980923 803666976 589097853 912956495 393804225 505193106 540825153 597121214 369150072 901565588 780055817 754263649 366464783 309601095 744758336 55971354 701113272 522561841 398239946 641852122 309952437 923145228 317678129 825245163 457569467 372747130 543165963 177223360 213079123 882528449 217675699 56963894 685323905 67064649 223345117 915103543 197038727 87907192 814433898 924526463 654310166 236582215 132834483 304595321 102554124 793883150 705270203 350364114 884271704 900447587 942112523 245847459 677600275 173035386 994759278 555724704 310168826 119993132 208484482 553086173 46956166 276968476 787451838 321432404 487564063 503617143 943498791 833231957 459581967 999211276 7111920 22897524 337257825 828274547 542911653 451701680 506233233 945238990 520810799 695462800 567267028 797504522 884925116 433514360 147058505 839272637 52709351 981323475 740549017 616777119 652212017 522556483 131915452 774042760 698326353 861822791 359308088 308420118 987362244 331487738 828970957 689892640 274455897 105245389 337422867 297729930 643146214 249721129 635873608 660063532 914229558 145363422 373184640 539380091 694293532 489881558 365039482 591505996 752733498 616673773 671187489 154246509 616133245 12493991 279877661 72543165 922109222 476186303 789919439 495790064 246021373 383731784 505737018 818258139 811706522 795869130 400560640 238943774 422764345 568386666 724308788 445631941 13984171 438213999 653591169 594684307 831307656 759359891 283839693 900882712 498603900 270933445 368956817 49286805 163947391 999509397 885335410 215203771 840989492 963965949 811556270 510394753 4085055 959537198 448574167 33488974 627452353 869779493 612819795 898746785 424172000 330184010 422367330 459582805 253909480 902080142 369329389 443590947 89066909 969922912 659948234 723334787 858464327 758670609 452732844 855273194 340251549 528712625 314285016 21815587 739367590 147279408 689044175 814924977 153525103 579474133 197049111 882227213 858707706 715698672 772642358 88996264 725943836 918400865 397650939 786796853 87778639 807696329 452034970 763411024 574393877 959676661 542580165 959903118 398414995 74347701 530026427 407703646 916141576 709691855 248520884 670753721 143152167 366728182 993489264 222171941 395507497 321787990 221688175 912621922 522934435 70399872 403657480 659095807 741502594 188495060 364135459 312065654 263678196 17980627 50351572 733276774 928028299 151357140 372971782 48207997 667569471 833223552 140905104 667573387 366390627 230519008 180296061 851984393 237270350 421493481 174522039 933822603 661731466 151101092 809537823 888969928 739536051 311710506 430899139 535760734 840629082 219991329 445726454 870249267 171229086 420916182 434600501 61836615 108252373 772816896 492631240 839818725 550041494 468300627 638111397 713769408 358243131 705022534 187450136 272166184 691676810 410931476 392083503 157303278 512893120 119863940 148836702 401475834 298469130 912930381 964342606 55224003 801234279 37083957 345134344 690006899 851821162 458832389 260665953 376104499 214523435 894829458 764657433 19286392 974330036 321896855 640949922 738769639 65541971 740466723 204028581 666511928 965892074 487587409 762613585 277515358 992603702 655826297 774586123 173933649 985668402 60064458 794504180 725513530 60772183 797930714 981825895 341122899 44262337 456831270 328629890 747215894 709137057 573970358 656477508 656266152 78120742 680964646 958028527 152339941 705304157 124780206 403220983 428969782 470148779 404751276 183928769 66996421 24622216 410063937 123072125 364045472 660552480 734131217 157276545 171163070 654262286 595316476 73671161 745701584 746490194 795166556 898053227 61227149 459554789 217800709 275984631 236682213 168321277 526571428 643250257 676885229 690829175 9977408 846249182 333581905 678633929 365990355 95837243 485444271 935988206 887319197 911486341 144141270 954794565 537620284 447758525 581829230 69737585 634627545 454382587 277073187 84938348 29159979 899990143 290373769 200000638 363316865 487078130 571564512 58339471 606797262 736782526 552778944 547548152 52193589 314677952 432016255 944742425 769309660 445364028 59543371 785699023 400282192 233326501 946222545 999020680 240210482 818511674 682277130 128060466 526040984 129261471 943554490 762536636 3461452 889300124 432692041 145098006 164706774 677449476 883603571 391670429 530142992 858728372 127372677 195224311 123442646 998893126 442429367 547724399 59268942 385616603 965544955 763879067 913560880 336443139 961261416 510139552 118472634 278070135 704763079 891134980 419131423 818096326 150853588 568778169 910250719 334766712 96034196 616416808 777435506 376173018 203080508 717347865 29917360 212459814 883436800 4475386 345518132 417366503 896791367 232173086 828858104 947234799 187106869 929942818 213040332 679729337 233722170 866974852 573107013 534911083 172658660 236858957 478791456 208914956 600598015 519874360 718073237 429087526 633316534 79952765 194568795 618451115 346346329 367715460 678496353 797148776 266340956 283578066 206456350 469338971 755647011 478034180 756028303 309911810 665316391 216746971 572217069 917985929 355293152 255293782 697997224 601156077 165326742 172670973 840920437 912101595 940974070 741677275 785421513 271640013 85222549 168385746 943828690 319497921 380502994 628736134 897472710 232698446 171389524 893783903 26383316 591719698 531238624 758042675 427121272 233233321 191828398 951062413 349549943 3506500 576826961 893273251 666486684 855101339 523710792 700547807 741551920 607573176 345717575 841661633 701215041 957107713 377409080 268151131 271139837 268207433 664373509 862799466 594248958 353329100 417756795 70803712 915114095 968328797 92011815 804492320 123965905 985792380 129471702 212184928 717947693 110214517 445068577 889271330 781550797 337339239 475922851 9391905 88181798 153902370 248275592 947789873 993850239 493699863 578016190 156627485 213333073 551895325 700319453 317516285 256209555 590725024 729783077 189764969 720923627 563891212 518961443 57137320 698090240 946421533 151862955 993464791 482491979 857654552 324357562 309766454 666429388 624795440 661586848 147234290 984541358 30693199 353415208 786393356 101079945 35883221 201445591 481917358 145030799 455547066 286517713 379737294 162689378 103378020 282438398 366474294 253589531 953558149 635785819 447407548 344308830 247915799 453564031 3788175 614920361 569013813 236100782 313376524 739472414 764520542 137980965 504201180 622030477 135967843 233871397 953930456 935818436 23735389 556511628 958410565 847654386 927739810 453081615 874396306 488749186 948837470 386826476 85532227 148638100 921033343 168472232 668341834 399776637 527037644 202133829 624874445 438551398 67866002 817858135 796480986 470530584 545603352 284715120 726576927 262958421 684068849 677231010 763192178 294941493 310723449 8874966 65350378 939483144 776633122 224420200 340405302 244099202 225579703 841704218 504260839 983500411 324790933 56575291 742224142 562667076 965733759 714505022 176876479 792439024 126252519 267469595 858527639 958164909 377106313 789254832 159124130 805702081 431989835 921052938 779483688 759997975 518018686 889229853 629796448 165943940 865039536 98563683 262360459 305008459 441332972 542289985 260144400 939505155 107226257 596558040 744157848 977734435 523947503 13077459 51468298 586495888 848047291 123553195 632143575 713698288 699834024 96848724 556507817 5594536 789811156 661152537 418764269 264035138 289093340 870952942 487806868 570515124 197589452 233632509 804211901 336677529 879580943 284476427 232431220 752013358 952975549 949211782 57625512 801998026 187431687 662502470 488106761 586601056 459004456 624827115 524852452 328556130 143372340 326803451 474423439 953519079 390903660 302934775 584884005 461887799 332670293 907084696 223582835 76635626 609541346 150981648 202026831 357274422 657656147 350798134 731710993 378934655 541497391 194842544 419560163 613889576 791166869 983410634 564296062 856125604 846991634 897806344 411293477 69380511 989790296 791460521 641689258 275313366 475882733 345369312 386737908 35054004 805413347 180740213 972555589 404731229 929978503 492939968 496944733 445875507 562252777 70619562 769937508 952850180 347653074 790557799 756515479 733784474 303734632 799059560 314806348 412366189 54875606 977580991 615140173 765623326 135691387 425437334 203065615 833504250 830494195 787712649 439360401 238160005 916894049 138983766 71882590 460773222 847436192 783302614 51210279 278857888 480921828 414228006 610524597 603712355 355750046 970633447 395925165 309729732 708158508 183611367 15016021 506733843 170111144 666409916 735234977 619123279 524578685 773876933 949158204 249231200 375329507 689504912 98667435 59305165 160865658 201934597 772116662 865816863 900181609 171598392 944310614 647310143 6784196 78461760 391527396 59396663 179086061 815689905 371859053 403937143 993485314 190169687 651772922 629713403 130836419 17817840 510834364 766238301 761486 596346816 649575104 590085247 158886542 304387618 569267344 870894919 701907538 957706356 531796234 43618172 553504778 20966388 579681499 105510003 636002096 957725609 20234627 876856753 467118887 132519140 733120304 509569338 272574426 980421118 134507307 449736602 140962649 143833761 313170157 865348703 974060962 172313269 508019259 870840569 162798760 271424235 186723057 445928510 363184852 499026623 578125195 718612069 228903962 16693878 815051063 209250506 691918395 73041218 599965758 787153179 453519516 16945225 743855655 758954099 669016941 51724668 621504521 366976210 471594697 166797216 774931676 710391837 763721509 505817126 131861748 926423266 860305810 624190656 931752041 674218060 709587368 479681535 96091050 743774431 677837962 975229861 798598313 802876720 797737685 244765157 687138077 46125763 768249138 327492023 822091509 24807559 906949676 15562483 120152772 154376300 447798763 262114282 56814667 873888045 131827361 252528561 505985042 972759108 941720278 88492764 176542946 753766317 184206051 229050194 473536496 610628334 944801846 466543930 474191795 717306437 409504647 349487188 443655828 613762919 118952910 280776677 620249792 368006439 643931483 898289518 996581476 506455651 66508712 112396728 773706978 462211127 575654668 795476915 282343542 103455199 304077290 541692694 290284273 275360104 912673364 512645088 384605920 14658535 514682514 77157857 754541809 12501364 777691451 261710850 582661848 39150915 914564828 791857600 770688173 227589641 780264839 120130430 666608917 25917853 36995937 471122571 67162705 716523720 832792975 381334779 908672840 224239834 340140437 484166646 888279622 520688526 318163586 281054439 430945507 854691208 901361188 137327925 703532792 664409983 466772834 535474207 976120754 51497676 500688432 956482322 226530171 349917558 61819656 736370354 312127571 985945256 689318001 80713477 211781485 755416201 142019818 809679223 444064017 59783251 879354937 571322396 830192598 427943959 938597814 930331799 511998953 797025895 759537978 319354045 250313426 240516696 485556347 137605503 470417956 911452017 953654489 414010198 251880969 823402181 935279337 186028072 858306986 547981803 953912545 805555582 802732813 590023033 814821596 79613595 890431119 84029276 549854767 658725797 208045608 335690456 28693918 740198698 401456700 139775735 263710194 791356802 339696306 343098356 549659616 316278042 675884342 217405769 233949310 678096669 569047920 407713513 734821808 139808437 83848015 731180610 509028312 974958256 422124886 657854597 185803545 840479434 590383033 181235110 771498885 711084978 509177176 872921576 662385863 715058392 867073031 540829966 64354383 480229335 47392459 996352458 979706238 536548051 387158998 744740814 567571795 745390662 168981267 48504516 344147587 83152941 59627279 126013528 637476535 939796050 209216250 586648043 601037136 288427856 545401289 88098850 450551248 834673544 700813679 449421508 413858640 54638075 28302139 763142173 431079373 454901448 542508090 398239038 165152547 546371745 840466625 186208223 390435671 49071826 515407872 989904291 508557148 838248368 663107380 722067731 722078553 289067343 809338783 307205057 597143063 214676160 232227724 315232355 807318075 842930706 171167260 12342065 966196601 145763668 371022546 411098798 841683398 214425972 566651739 350244584 546675682 618726561 844836429 203766649 241149491 855108145 323969455 286810175 885344077 972676584 557828255 225833433 130702782 301450270 477736562 63971309 800950386 212824810 260451670 514127988 266740183 436412035 744994538 250612943 289609560 592401407 686364069 204681871 671752308 347084388 393095234 990277914 542858665 682539412 584790500 515979160 823990268 509960736 115683411 174027689 394244421 208752980 531215020 870632039 625111754 710253432 454763885 898979457 472621155 833642529 315267744 600704563 325668419 906241591 98518434 833697850 893157763 842643698 983169877 621580008 386316188 957626623 846131592 837810260 555692242 318713886 550113904 729130422 557906780 131861380 489437547 417714286 125617976 559735794 253275984 678419718 228608281 403180145 783975032 951620924 660269265 385380774 342624913 728569263 633989759 662761332 809373774 974632729 183352280 32072557 724422694 199332107 504798360 219556075 133817613 709793647 717734498 776201661 75694894 482977792 848575059 139116925 358892633 345705246 374013112 896074463 969217594 614531622 951251767 867657587 494487574 753479895 279315134 941445526 118985337 870356014 466580072 676443064 57647463 128673364 560143296 712866809 872622144 194605799 89834685 221516762 814671926 214330692 164224191 833478184 157055510 232465205 655224622 653398448 46131069 100749265 543165577 114251568 971249857 599994659 268914320 291047656 945180026 183610554 889414691 560530521 45668203 450853417 3146123 9356675 554308407 984814380 338594384 110065666 613935771 35125986 991184548 103434555 449795359 307619321 71562816 331191547 209364268 848816610 57935613 231333598 559055357 622610693 807055790 989663191 798230126 240450301 807493696 962980754 582341940 773757897 598869390 150589773 317270698 579014460 573828795 948314679 687439403 239575889 76716314 438709485 802425556 48813161 386995433 499864770 291528819 957009807 766798380 522433422 771266778 530262176 721858830 276400698 999600207 551841032 830270104 133254101 811680876 196425220 228064104 870554154 725227075 518472095 600081683 46453738 5239708 896296489 638430242 692039417 282571734 402505661 301690624 35629435 733012000 434795329 309251212 721761140 669547620 581136749 686741026 968543101 363689404 408902142 325277043 603960001 865874980 279277043 385353592 557547795 988021073 176373720 797435249 606337948 399556788 148026356 833334372 245673961 540316068 298422608 415555817 346743054 281029953 531515871 772000261 429325127 781985886 308616230 416690008 197237329 387294956 835486783 880330812 918457959 526730345 232897332 21905966 534009189 559498334 174183562 666256130 721043226 982976236 262469639 934777263 50427587 916854348 915124518 884646231 850783934 549006036 350953924 587575199 480047772 56619892 811208934 648156824 772947379 869061105 428524298 44763054 268552425 950437168 197002919 826865461 889870481 455131812 687681849 499293190 361053515 648535711 17409921 21867685 325180001 97372387 477530632 524533047 750315310 59180895 702065235 593049688 718062928 464201676 856068111 970398064 235410346 347259496 380536776 869854954 380573369 262182839 201274574 508216375 843851283 119221441 462156040 885697466 366208547 874009248 855571722 507001495 788591001 369649876 605510445 186901669 669535175 525459147 824499052 446893732 602365503 575025177 847232418 124489784 22756635 574855348 919240378 805526941 886963533 239316901 379733030 820851608 637275126 107858622 564015112 147077367 558693896 273031377 349184792 478689653 465850746 780600811 634223557 555474049 327185320 997566779 942299000 928434555 160267780 900662055 167256076 432782706 203109386 550855218 652172646 530003282 818780864 762851071 744698337 116429377 695169580 264620349 778490055 461390080 814120614 941571873 700462116 30316464 804661875 406343848 475340174 806682223 782977188 534348249 251212373 950899957 58455940 274728279 771735307 639358760 285925304 442834789 544658560 279519493 843803264 824012101 985348519 116336013 59167038 783008063 177766471 326184298 569019880 438896923 29435272 689288277 928978632 263337367 773657257 215406752 482376521 531364046 235201839 70740251 870219016 275105448 184559407 897558733 602551606 607259721 682435719 541503557 898938607 890174780 63111179 357380553 735711079 765513680 591401257 532490944 191604276 563262379 347639340 508327364 6794831 720780505 628513580 705331962 886332146 508043753 195695536 45958672 344024894 302831676 909147556 463830940 303042269 493613248 838302343 365835016 102690167 301863267 543940253 232463158 85404947 746505885 741127432 676749954 311163285 964860357 177982271 530326970 843763142 618785435 121021442 909745724 652336268 421424084 823572351 938034820 504770750 969246583 91558880 396812461 224492958 719681003 283360697 135305735 347005870 295519578 529211243 728113339 828434639 327915216 727712661 526109996 160403195 460956908 431163556 977791361 72587645 403839302 206264539 372412078 135330243 987542441 322730196 613071691 266529862 361477648 541649381 548407566 16218670 934201160 819274141 244990067 915055015 878067919 394029658 195027974 708343582 383234652 730890173 203883757 534728158 856492052 939515189 184250284 344750366 236366772 861199658 7624344 540941078 707520240 52083591 386947503 122592829 266792868 491697777 502707935 525209887 676807066 864135185 214962704 901416770 779034126 625706937 69786882 244549068 606594570 24821883 686649333 6056617 702069075 317571479 738197182 655913401 22606116 511288880 518816094 431326614 621839069 133278112 427533017 784648644 311774541 128523590 687071306 937190895 726064498 801157514 175642906 242702658 383707769 928363737 939137956 665058115 524734319 416441571 402255580 363335707 9194937 975931912 383599455 90001227 266173057 183525356 524533600 408782373 384883797 832115877 138557119 307480024 367808504 971886506 995415045 84813488 47098943 609881296 928794049 776564427 341454732 799755543 992599776 290792711 610812250 51127596 722212306 419522594 582574319 280563103 812978352 272195084 968441174 499817033 750694086 470361360 481418511 15736686 257865147 420840523 118447687 2249414 383817639 206132823 259412490 564633502 164936908 425561228 477004390 98790337 51379788 963003294 389265956 72781951 238993121 597224257 779056491 233081569 893179765 927680606 1772302 179136958 221286488 694732067 963420093 515690773 205885949 643305086 263278114 533362661 751550348 190380500 69272243 471961417 918052668 234053645 746765325 193640224 816681307 609264213 417294615 112740714 163222078 927652347 207066869 768402868 825207124 608726091 583629637 212770034 802216584 562150331 176609656 379777116 356700979 177805729 818304588 696559841 105125444 402396013 857206194 250633339 855299520 361944828 352692744 700793513 791804282 703657072 858349313 946954051 149276776 912474066 774121758 209579923 433890993 874174407 171142665 884105409 969709020 105431428 394941576 874152660 398551602 407536948 2751471 428620190 167640229 644946020 112907703 681793672 769568544 235830015 439345972 181172712 223386596 208727068 752636103 154390293 217519662 53538760 355738233 258325490 567505318 680795758 487291795 875101190 891724201 383788782 634967627 648681560 446877520 384139543 269456875 974521776 839578730 257130338 579166523 355655544 88012482 43076493 43597832 629323107 47291571 211186038 938502609 895278523 11175855 857476728 665816867 694524410 70012167 616628123 533090742 631128403 517352970 660025853 952696829 66694910 208274182 941504894 999845077 939479024 785446738 106994976 610355753 539597214 770734922 652818236 655349782 908186684 253899944 70404356 198958474 461941953 532553108 60013071 392678593 337404985 914558574 797844751 351040864 769825620 551341164 681307579 185595448 158203354 330877384 588294544 424396632 650195384 791160870 420299867 677406416 926043615 579508559 315141360 493460797 686792702 659810423 705720643 746394824 809512037 303105698 829991424 511085677 648961956 849307283 45632495 148165804 442553398 704880111 626712372 68245514 601626870 330855761 774245945 520577468 238999217 714579759 643843990 779484082 766089544 214418083 228964299 127096037 318313132 286571415 212844849 369457247 847167362 217144402 862759409 722597788 433895706 240682053 248655297 120683595 778948578 603297356 269045350 553112984 148979202 356503481 662994951 487391526 70400449 460429102 559217577 441056789 938296431 201441716 831799871 864302322 605484684 31510475 479559684 706210117 141376031 562417150 267474742 761922997 665987717 21105204 235637837 671850152 800113470 512998781 174119783 733334367 101166377 452206889 622052633 878041762 595270418 806079521 700215020 712631821 44397338 620383374 798739549 151353464 459709210 262629425 361180698 702683846 865226642 297390199 800877731 453382697 908707643 4662830 352502082 244863682 676390520 854079896 242079719 737028922 858270019 970963271 306284989 685235529 788072949 958751005 429321202 237592062 680563942 883240930 447552224 776060445 901137750 543540451 208990759 411889600 589293137 651708052 496972323 833971867 962392846 43611319 537878834 141524849 985431870 627997457 76184629 688427646 954281593 676442401 316592235 776765045 896363291 290713469 281798414 863961753 838882952 878384115 144184892 948333535 639127655 760130404 386966828 603982090 298508815 262408652 635953132 448735483 548736788 777626180 717086671 986915260 536284448 523655560 612801353 654106147 590792711 349361908 588236687 496002374 408809808 277152794 931533651 508565036 192188911 353653341 674564692 306417586 687582271 556641263 180376842 297010240 987029431 465327595 907371267 50483553 215116163 451908358 343489306 385383425 314049452 79582329 723702167 58663016 526167333 53606537 862972856 126917838 304196836 574956709 194616619 786322755 652034883 812259632 764575989 399046689 383852954 668660968 455182095 827321960 927448611 313242070 733210173 464602230 800060568 540244320 988409882 826376600 448876085 395876861 863455528 506268198 944993653 423299108 748989206 624358854 977634343 796853216 690006665 687780329 519271315 676021274 853347025 453716427 164945164 808714295 21995633 925445454 825221844 267747070 389888869 324030402 474138690 329682700 606376338 182155894 694279405 274286456 987137022 967888167 556646691 988925451 990572622 723949021 614479309 822893379 720707402 303320802 851934865 404279556 348316037 111220806 994742426 894410605 297556829 821332234 784550855 555413200 139171702 164012459 417916501 691129606 849004362 821235732 264123055 735801751 676363635 682547720 792264989 178699729 112492448 262761324 707303269 645404469 71464176 91329187 717076992 402503709 160087050 963487307 488839400 123202545 651626100 8858346 497277715 283721073 77566347 890492239 564666234 342111729 113164605 41375846 592392207 792477960 696803665 138433076 138235280 915932684 946887513 252261372 941447989 181800794 395137560 837175172 603108532 720134198 927216803 914113165 560147639 252549834 738604902 799075539 679203746 792450480 729169855 467493071 39871227 778062275 51955370 911982457 410185865 686491746 934191393 711057235 305591684 967491118 240130284 36345678 850496145 345292399 944565054 661331662 585158875 878900917 467045207 603889339 991892186 939957387 506001937 448492356 776362382 267386807 652364053 43244705 14190964 521778922 925216276 961223138 251949429 38225931 968408105 595989323 565591528 746301143 234650519 218448719 170686302 951535419 726286121 12259345 987577291 673730183 731457589 810532303 719586175 544139425 422771901 155735470 492901081 307143425 463103635 188369704 613501076 531781459 343022257 886062963 393566801 729386203 790251494 478368361 795323960 565152773 836145231 40533742 611242095 650011845 635312774 95015711 397556054 647719775 195722054 678424010 997134039 198697621 33019024 159583451 161897700 810036306 889917944 984622410 549362661 543907478 623309265 195538735 226885213 614760808 709177765 727399390 917804849 119046807 446730205 633306847 241105032 439746179 96122733 775542326 257025341 518774834 302693137 777764296 731750481 944170963 424233527 35199964 516041676 746970966 426797321 150542108 945870741 769091456 429733397 737653571 575710107 789706016 388465120 347518450 476042168 365584040 322651699 819299708 520232924 680463708 995833820 718697833 790152747 646523253 665551770 253986544 873745781 410692418 165189849 474612461 122718449 668241371 820466616 543161500 883490715 939059398 281151742 357516978 285255163 958929427 726440890 6434535 995502122 150891176 368888728 334129799 951105055 78761919 340656602 555840174 415522551 1599461 172973076 888240725 448318305 198998387 375264166 849384813 149105803 666519240 634278431 275174967 803854674 443681787 304411193 972271032 350271199 866086627 232747513 425689742 780164416 653078762 298573518 571097881 607099955 440948898 636765445 358311677 755368977 252504553 433294780 190651878 108099906 639261953 624180373 820309289 7823193 99250459 382211799 842282780 436061330 379323005 961372154 199692169 873514029 474937921 249969090 331153974 10972885 517131823 77927692 21768745 5651721 274223861 742934454 850337487 724498448 989683157 737759803 330865603 994379415 471620550 312085068 335797400 575453005 406059774 308817233 515809184 575048126 47130563 726563212 536592722 989333977 497883643 940995171 302415730 601769741 188617747 842521278 958690593 45844868 67267633 919464637 529332914 544778821 864812406 698882553 121766203 122817256 226114835 742515777 220594988 595346141 66809955 149228208 952596873 83286853 353983690 515489475 815639361 687106353 620118803 633442688 637009283 839747733 225771702 600382187 227921302 654734603 652322468 608513646 160053727 825335230 506864873 918857455 92941796 263682504 970295545 612635587 756182076 689457779 882733890 706791598 193166964 735079645 798517109 600005591 315785755 147988190 957084687 244379875 812871586 768041793 789107099 676549904 558540881 20488218 420971702 291723068 458208059 368792869 609948830 351082717 150849113 473571277 995940862 468236281 584877873 504255548 49083486 902490845 906094177 415287760 854038767 727797807 356663868 89958052 549420154 405665137 649697667 111918263 182965723 81681206 487924064 522132615 676237529 473033531 608267906 307097866 798002667 350464292 596188688 347132764 311556221 369336778 822964921 23414128 53212439 985321651 932895639 123307660 692701378 570619005 113491240 372282262 955055728 570277292 49248442 785280049 903757544 146593737 857923626 330841446 967183091 857535817 598215577 870782301 736210328 416261685 784105599 598912223 253564344 539758656 95787201 247623584 65902843 171677674 679163370 573725652 992265600 81384866 357201205 68916701 679354010 125390366 868696199 932578308 627102843 348588038 148336169 838019437 49482727 83111661 620123102 633657550 159986380 979081803 270960577 723278356 793528888 840880160 781391413 805158120 533573666 727175989 153968274 950394251 258752728 444468353 526025336 342067996 37591726 672048978 571872538 521495100 559143897 767332852 588732340 340961459 753329437 179112633 452068189 680745473 737984683 98038023 342828418 181897186 428038016 383131936 662452826 952024413 923311454 630359276 996055519 99311161 65481609 873867716 587374622 665663397 302064180 119768709 745614218 706337253 291666980 616232114 516500795 809370919 565580932 683420843 374923139 822807736 149173007 713321271 183164521 991182923 628414434 987083105 717857052 22443074 611701019 72265251 665725153 492388746 690132612 333646650 859294522 840972411 424659448 638016042 210113509 892539694 244404892 712579959 680720336 173507593 535637610 725003970 390291467 45767906 828514304 745040536 135916558 42534313 383153996 514742311 998330659 795075051 903908469 861861747 636336566 13732251 164082396 494497021 346870364 844308679 527280321 673560633 64265423 824004049 57840371 28595235 761354842 739119671 375987620 30459547 103419724 949013392 375509026 888079339 631339755 562911321 412284934 415116281 172593396 369909965 828474612 832451141 37016995 140135481 712361433 831715266 620720387 933356107 554924283 222524897 43174299 82542201 767945936 364732213 884524905 758196850 250440823 256651785 469712254 435930863 741536342 829988735 794216251 334612897 996389113 8033131 521110227 126781094 348308139 920920762 492138779 937589021 889486698 266289456 436460029 912725461 318460203 492073568 623971594 85619819 755019692 59099359 607636582 828128177 99339457 254638228 149255632 991045618 808351986 29840164 948287564 455427381 670401270 596230512 831756043 687275907 620164373 625846677 463383783 255045981 812919048 432383440 911110630 158649209 476108334 819496662 475495335 699405950 205643369 585153986 492803397 852373296 469658383 978503070 991134515 102264417 55494066 58209142 990885295 752510650 476260415 925651519 829200403 152170627 198475013 556006714 821406716 386991854 209615815 143339004 788338952 688624878 392965657 581066179 632310793 720401200 664849600 232700552 842021334 391761363 715644869 351686325 702262966 260182192 877155416 732128578 878322879 445327027 658485462 159982376 70152331 866255136 990239477 440124507 9905983 47325186 714303403 776442094 987626703 540395514 831317371 809099235 10351060 968910433 496257291 842028536 271631698 241875399 318313613 760000650 401442378 506705460 42419666 114993713 700855191 852730756 439913777 79973698 86639010 360872827 480280511 634081135 635337054 117363587 953798919 521131601 901942779 348551646 469515407 311792795 669752437 810405051 903813032 61207088 669617816 201717556 735820750 621622605 20297421 70575305 372036893 582884542 276362335 562369491 724906798 113054145 395830607 84676908 459834453 724518137 160069676 754168944 762869510 454376134 105247412 953233680 210938721 495538957 879038405 989719243 765755040 494769331 817218732 522486852 736298849 570604172 788794244 844272694 687543336 322895843 31066242 738674311 432075618 482613888 794837889 700845165 734514969 1332943 981890743 311089207 996785342 257233344 172165110 93425429 703183982 597583706 289576579 688985217 132956747 482721474 326255166 50664672 396911885 274466789 429451847 390721270 530868871 449889852 609084147 747378085 208925910 521707533 238361520 858176129 131545024 213181280 106339153 601955052 282260573 469160622 551652839 131801717 723734099 965599994 499335383 286069806 734461323 341845236 204045123 244126536 892999728 2693163 32318583 666903624 954589833 903427488 409702815 175639963 751369108 163237166 56258338 491174039 350665749 616966329 596746329 4399968 395828281 743263254 800431977 304702019 477463718 282666315 704033323 458000516 630882599 323879458 446801788 656835981 195181468 926033719 440841893 428784853 909354588 145380537 904146258 387528032 157351527 690544448 276468297 855679734 541287545 904374169 317650299 386858565 256061985 821454018 724841928 252736515 531806403 278279750 805338391 633589047 598953728 93595027 49762918 95129178 676352330 326064041 235442800 500996570 782272883 883429854 838208614 495649336 146577574 827247680 162968451 250862124 377457482 314324262 274504548 485208990 910829539 984410839 587308499 958059515 497372813 242490517 921900820 944849429 728413511 304892409 909541807 615544201 478157780 772265407 178939210 92432754 843371451 50029737 530020886 577699271 996437592 35287528 679270185 19575186 159201459 165991422 186836497 270352516 978193935 691394878 55594898 482667019 483453091 85426110 340978648 795078702 712607431 110332940 926364161 92119798 565151578 358313712 282266772 872795680 909178633 470831103 648547201 141439823 538434222 524985362 111744149 577463122 408120686 880801330 165779513 650167272 216414579 208429599 420870331 453118780 546374957 680561387 713414370 169153737 755921813 354975234 777582806 355186853 961550582 375132854 866440822 868385007 584720740 740300264 239098147 521257469 13535640 158939494 238073841 364681609 693093135 824994370 923477273 277871115 284561439 255765637 20694393 408518828 80598640 980464700 305585437 909586952 486846451 297083738 157201978 218214164 854693106 130784805 208354918 858159065 463774638 774255289 674132553 741772390 77083581 550454357 463679663 98564595 632583786 171219157 820297000 319769909 873255600 357332967 660449526 67799728 561250986 615263447 16301726 438874955 965433460 433832345 680310647 199624963 605705008 815074811 196235383 172552684 882601619 811217777 334940651 300901765 262268874 874242005 78368562 822156465 303728 602500250 765239873 102515389 655246693 231246436 778545257 117174911 663277534 909257942 699607483 279114900 322591540 69052555 167740868 761908612 565540812 110844749 18618073 217227679 824667347 668547962 434255266 103750310 800262737 80022523 974521262 736716181 23420031 555064706 724246854 73922617 190858235 526604779 828857303 983940476 305915127 457056578 609965509 708282237 428860567 591368724 512848617 933962180 436011531 859006008 556639659 527098379 323946464 965067511 272414929 99356240 463583517 723483375 746811614 996555508 200604562 916152803 309326784 258467824 191339267 15302482 383570128 792517760 548003239 247781707 32251559 688972893 365378480 376163452 551965848 127612604 577542370 97335705 803026183 143256252 561957259 531410570 815452898 575528093 700535073 534816850 333443534 949475354 965062923 352785504 989238634 594746378 60084246 910069783 137590106 601074594 237723175 968398853 110819902 100510744 857456052 137316602 365161515 104039144 416644277 22468754 172660017 15751372 690678211 797920443 295404953 691293604 866773795 672311561 501732383 64734115 479010585 651166650 158109980 113073515 69174095 837821750 791338354 254678944 337811353 902112854 560168955 164082614 172677676 802021858 874228644 592518898 331334065 614319976 118855841 351295114 852074255 240740950 590643278 84692107 697048041 321533398 104740022 618131667 739440247 730936541 527142866 490598081 695465131 744920293 570019964 840524842 527519119 660453455 840830804 98756351 633805115 189743664 407860387 505260812 334703425 804416893 874681466 330476823 486727244 68008014 42918220 208063803 566759468 878356366 353311368 383646581 716891567 383459272 878973107 126236213 427915623 284268280 82434463 370464054 652322416 981799641 443325225 984763020 668767212 565186419 696416241 685679155 846378246 225523683 269564082 811512378 185720130 577455410 651638333 786744869 973850767 569028468 473697103 228591335 348813663 692185274 712120427 69528151 420923189 103299178 102367061 686566239 609547777 570859127 254208742 521916884 683762269 655856478 640743411 633599018 240821847 673553995 964471565 978775966 197086971 818691086 559285180 815342934 91689171 946527596 334291982 485415467 16147422 566082571 381601467 987358900 615358511 156548540 709788094 41204320 363642265 875376599 386747485 856875357 678119127 223667577 639469913 306572947 107128449 872170788 441507676 534435798 956470742 262449391 588981648 571994897 520095104 570953889 984171067 76879973 445736558 497589948 621515921 437216488 305251097 512996005 977830840 719933778 879604918 2829858 799070977 653932854 989890148 535419020 191606992 80723483 822267191 893910777 958010385 805937812 885827562 879283669 484478067 661365436 363129234 806087280 147063572 889717844 649688125 667389022 482200161 798026094 951699008 511212789 48954121 459280974 140266486 116070372 190946315 33861646 6733481 106786297 647280267 103504004 667432572 710357157 363264645 114890334 125945442 768800962 273490156 469526367 796699018 709531209 179637495 60243569 265096280 401303477 832743397 692773517 79416062 295618110 398368665 526858289 485198676 181221118 105430148 935563021 537938833 420225226 305169280 758109612 263974226 978854324 522115412 121071477 248115005 82039659 950621250 315031129 168632580 578204030 496240773 61445921 353616216 453597204 109425627 230933931 363823046 134622448 243493109 967722534 211915372 430029825 773227786 780374903 404623637 539254176 172014287 466873747 883547289 240885460 868950077 416428992 379082360 648963001 279604692 372956375 729934828 316730282 198943329 565851802 79708561 795620908 266871972 505653582 694390195 602997634 781361144 761822544 122296921 24919946 685576238 760188433 506771115 230863080 108656541 718047213 49917720 701531088 157577884 212149479 813267696 356839109 556496156 434681127 144635407 52514945 72517470 222447997 519984557 275525885 642786697 519286073 993076253 343392755 200751373 998581605 918658677 902756397 741839725 543770128 13211022 537460773 807768437 501851748 683620543 708962427 953514574 832051956 533393151 790056261 728715910 682472111 286630389 43023891 799914433 611946178 7357759 903623865 392327480 586616330 993979451 478474430 888793265 37639166 203961691 113289542 686804527 489384161 372193257 602069333 24032155 758059784 507917038 467346623 279087673 889509787 403132967 796134460 651530183 611002342 942656615 816139951 548589604 931860941 591265745 578231187 995892769 603164903 523143169 637736526 637469548 69594482 58663381 299069561 396659357 488444028 770163936 986891080 61782232 872877839 112928463 947074771 89383232 501958865 592244140 648639079 917345178 235745262 111060933 44612997 415901447 103561734 951640972 614309974 646455480 493131471 45208024 300777265 688825703 459470421 765771485 388344287 910012951 408503611 315043811 966124181 605949893 643881178 33704923 721498124 164314830 942251433 88178890 982705201 963160664 326809757 352449667 550544443 375110883 719042206 502791514 906827583 483688438 752702566 680181511 473855255 848618557 280371260 689172161 731161486 492580614 675766026 331510150 926274447 291929690 314337282 484957726 52667662 368397429 146422394 760154675 206340911 669830893 34453798 975037079 663973828 722258019 641900948 43691616 478632488 89830864 121363839 794939083 875396021 308069480 82795428 107717149 606002630 974867032 828383643 459487571 58602580 171168289 92268339 987003974 878066224 311671140 932483967 94723780 53067085 402304744 945658225 692852673 199236200 170280228 414612254 168028470 871913769 182871569 383846543 211073044 828945465 26796249 688180112 372374450 504000617 854901336 340174193 424206400 720001665 432921699 686292191 940055651 302624820 963386792 346042993 697604562 352661303 766145625 821993915 784747665 226695505 561103663 720185658 444678858 29507819 639375344 61745173 987477023 745108573 168138854 656693528 873940941 929391048 298065236 957000908 847564273 770684158 660473592 370192325 478594961 626697158 140650490 5507190 924410674 745830557 329199356 119954742 311422034 453519143 45648071 199336810 275872676 178190297 577766583 808072666 510372046 878752140 385263476 588494984 752472763 821197815 355208916 84426834 424923464 466533303 935245838 212650695 60002024 620603981 85252261 996231204 126062149 247667557 665845259 242096095 157184989 666778734 799722502 429125244 644320043 354186877 553171116 225581130 573061895 811236759 62307064 806111094 751576641 643576865 805211352 987263102 40798849 444540982 275652212 233562253 153922943 699683125 281608333 576223310 363044897 12456452 201219301 487065246 863249322 423025970 530385800 76131426 830636204 861469359 493717572 871517285 844403194 901983093 123090285 521771151 768988235 48180096 834873450 260748507 290574348 414663740 234374912 442456960 412272510 744163090 529848053 310846554 783369854 658176875 131212267 658107926 378028651 146229163 803803719 174653764 750626389 945878004 850363310 225687088 570267753 209887220 356401597 555392299 766743856 896071040 263298659 183505306 286179919 257519040 526249116 519761964 135983413 507032958 936599367 680120179 439693024 240386943 902509096 630779350 115252022 916099819 398186455 18334911 601637987 512688901 492529345 101173276 896669865 190029335 660047583 651680546 552248620 923778515 761061855 769742687 320882191 279286574 763213147 37092656 387106166 319434704 664528346 856278946 781979707 343468133 265560045 72884956 666174399 83693435 599472825 305625239 452484882 120805698 613195326 861895714 255205943 321572233 271819013 186503175 637996343 487350911 911131505 547977863 917880771 204278279 616743937 374178102 217266503 164636213 587354068 954076415 942404119 184326132 70792022 88341836 202329346 69442561 342080280 844992856 873218380 906024363 427581148 580301472 871654394 101217004 222424177 722141763 950384471 372869309 449435039 244500292 93018098 782410 237273853 186418530 360923828 11179058 380061110 878858445 154602648 2423128 378386798 538972674 899483140 143563069 131027642 103317534 466883465 242513579 894774654 887003867 591148660 877456348 604537343 880344517 845758644 94462724 648381308 440580838 635563511 162117202 569794705 227557649 903893480 213011917 637718599 967430190 394928623 403379392 520914721 129041466 194083625 270728471 261666075 76282676 460470201 369362729 573908797 878540338 177085047 5139366 946143658 462004443 325560660 913225066 403721949 937733717 838514354 407545342 312962361 745533405 460160702 380437586 557989632 175979675 397960264 614685666 87027076 339639107 229472911 97338313 63698810 245174306 300549980 375993545 516301568 863138414 136339932 674907695 542754353 980604128 846318214 392606891 122147763 753387320 290440914 866999173 552725525 641429051 696400583 610299020 170807986 832631226 824741337 570988031 266928996 151408425 137929144 158948844 988172983 566542049 327853374 88528371 267316987 998010569 437194970 967051892 385445660 502357926 728728742 973014333 754792615 435114161 517461701 845740960 212055763 35627480 669723815 684656680 998219314 313909678 702107527 854807911 923024370 295433229 718394160 948509842 528849500 910464070 548741849 93635451 595867875 700587938 341227954 377881429 252262465 855666773 521145782 96476389 880144687 458197518 711392504 953599977 353069705 658377890 692296569 351407228 595821610 188436891 124241991 119699999 354781139 550590214 889618564 963323094 17760435 259280832 934508652 738412021 653776557 938588239 841052862 151990383 93584935 927355127 25485833 231025370 695003368 711882307 764442631 790810736 763448765 78221407 786173734 557602511 297009469 952814945 298655303 718423220 929619510 871608045 735704090 361659418 79443983 506022523 425104158 513908237 772867065 159524020 31118231 273821017 279319012 347410384 58136687 712657670 662006911 148657232 963462943 243419531 244316341 618663601 294950061 711339437 107036169 579863545 968961064 796610347 966806433 165867479 550032414 327926155 762622246 27335079 267882588 481132748 938549616 379404524 558634962 929537200 467657817 168954948 701754476 155610327 455873598 386109370 430107145 136790160 346299658 385652038 124332008 538217776 640783730 993235037 908482338 759176615 715100117 526673289 839684309 957042966 220591532 462257711 831971994 337727411 662480056 442377181 474807839 588704082 126507322 578577785 714695227 471583138 181775901 837810590 588363365 461415041 254476775 624250947 77896727 768356430 343063636 789066213 53500755 654150456 327707756 669689428 228027618 905566683 650006820 86366627 472324505 605215395 870249859 57986348 665465325 805696925 267738635 667036569 533258128 967243492 302261381 185401039 137418543 357269710 695872961 315065406 409275592 116015057 24864869 760302638 304484477 755129375 766234810 618074474 807339110 928046558 965415232 816298206 477439147 638888441 598826405 248506044 8064815 235705035 207799283 518086779 167790801 703508871 8820329 192854471 646849893 551573095 541599803 188487722 374703375 645808992 547010649 834916060 404722183 960507279 332883804 329642739 514983374 85244042 758738559 688868224 428267962 13208276 947044805 902680129 656252960 936254011 570828218 999601743 625864715 16307278 859152698 311394162 608346318 46116264 615229691 975255988 51739923 527507718 947433598 702698030 605911836 488323422 481251664 938907034 221452780 915420630 763259240 940650669 467795680 145735153 478283822 256088622 667993549 902967414 986068191 406348212 571765058 360228482 783205072 408896029 972051137 685173112 199016742 701506050 662153144 864964823 374927191 258189619 846589364 400364381 894762917 227108508 475018797 906245692 202826403 837184702 34643132 994742437 131507505 164514459 162506141 41512658 234895344 490107514 971785162 656793425 734790487 800902217 532282582 369855460 161402409 942990765 383526021 233704869 698801594 512550635 373329473 133248434 560158082 213166666 479753172 406151638 844686521 517103050 586521860 946087070 229661079 499563790 566813242 271236383 873982764 644954805 561643667 49658790 532306619 311605991 105786434 578669901 109781098 426132353 439524721 207366826 219576594 520109941 61432101 138048456 658906958 19331094 996586066 754005485 765583064 418775049 985717012 584508245 271198762 878051397 380386523 128869745 256006226 39301965 173215804 609372941 5269747 112931662 97044314 783668163 234816407 477939737 806430597 3624691 997367419 607293166 66422167 708200740 271040077 447829631 895329923 560768590 809188341 412141243 294314340 249976024 398181176 626517270 990199715 504748766 422797965 539189403 221694996 590094040 846341509 296235933 826244235 213003828 557701239 804812535 770103519 343460338 161589871 405680820 218987486 612654296 345648438 111055111 816034766 670039041 235145433 707214926 992373008 182278951 778097092 512332884 228597774 550171073 804124486 941014726 165873396 521526816 816193590 853930899 149575459 347259002 37518540 921847801 170091437 69016111 79009409 651018938 769695838 130992101 213134007 367892349 375152251 826230581 296328580 109496611 726072466 41413572 923110267 949549563 887407948 348006551 461610578 309927296 842883657 625092266 924503621 893927060 69571680 913478451 827157571 723533755 277868697 579490602 788511177 336423863 111965475 729113039 343921336 279134606 679581173 868091607 298160580 72661171 290259537 678533175 440862078 983379778 19037017 227341339 904698083 164419538 293813287 113327673 557151945 506981474 933960869 823716261 136932717 925823250 251645043 690830611 978641621 893415994 981708290 211984226 722930209 119627544 207881671 264823105 173206768 804976495 211749541 645907057 737108255 355699654 831602978 262817626 890840643 559487936 646383225 684730466 796790709 10617490 576163321 924549817 939280543 179207027 811722087 395795471 497549761 137307019 928905498 759626225 663742713 438241378 282925880 413816500 13401340 642227567 751887639 566537120 69595065 83865301 931991646 881948376 712302675 181386723 140452090 497574792 306123070 433700092 350117892 841866001 665619605 105285159 170003487 916464468 605276470 585169359 15552767 256503051 92516787 381185829 766151924 262482422 40587419 910119245 905628370 762281294 533077304 425499167 724686545 719165552 365420627 291810448 664999284 107273896 349976460 272942744 275283308 881899129 751809345 123799256 877894419 239201662 611852813 901958318 473162969 772198875 683687924 347772580 708869586 411771452 874936399 272580391 172475866 378271651 963509214 592369171 88015748 603863047 740681448 491438318 439098112 560817958 508754827 113025575 572258914 408498904 580135144 89254439 830767330 509831592 998454098 701918456 226516032 881335884 888800264 258475203 766908254 152795190 565300860 62272097 211652940 755812826 42020781 875559209 179250605 93181450 366576529 982636951 527046029 968090835 622646455 671913596 181724088 79400400 401455937 211200355 667127430 971035801 332896072 783231292 201116705 550210561 864517767 348189678 440429394 853002773 723702061 414719186 596814179 352873556 297859662 935838792 788296348 84243525 857792635 704659393 816083804 372622936 691985749 248655391 448640829 661954110 989108916 468291699 938521718 521057676 789158931 591999312 195436250 832951951 42819937 46261419 729809362 58385637 691528908 195615098 905664838 707698091 489692785 704383863 190108365 32956054 779703927 646022281 647897932 109568479 495725551 501781087 555654199 610685080 794375121 150489587 310525992 559882341 945309718 515800756 589424175 630043277 165507526 952660565 274869653 790455202 794448072 207405138 271738101 514805953 564770015 56999616 701106208 101577072 751981270 590432835 259377629 359433618 316413541 260135573 663615095 700627167 402301458 495804384 99060556 686117327 457047029 159975541 694729231 861232855 550341946 826147803 190570203 342439377 822171361 976617095 461407374 220966532 425974240 119184202 851414746 17353371 33780586 670463900 895048575 758383440 656619824 546798872 256538180 103699239 741876598 22664090 118727065 240861606 864287684 286655338 662721717 668197990 826121135 611008918 625354074 750880614 119453719 443477371 5480629 292731589 286526476 217890183 586265993 841364265 991484848 33835870 3076212 938392464 182319310 444183293 261028221 824071876 60698064 85361563 420074136 490431328 122895897 394881929 834256336 711712503 249085986 962313143 130158656 928342988 185980972 390419693 208780175 838863163 967186922 530922612 109129355 60916041 146517846 92043436 675726856 979306967 515389197 66639021 689942300 848226716 606093024 878672310 180652373 745179888 665103046 895292750 369673919 813546002 457844435 524359241 445793035 773212294 620032144 898777401 923352527 202074898 983007744 875325610 769497854 17436739 638646394 585583264 183658470 207136183 520935359 611528075 883817947 362089940 444955402 276067624 906549109 472237817 347111437 856564982 481580832 571808385 129611708 930961898 767370250 424447589 986106414 343684218 549235240 599551670 668463134 827386253 509201599 134175943 883355336 825962686 36700172 457823974 425263224 940296998 356964219 825131467 815030044 722175525 370370905 546449526 48190418 191933503 108785372 768135181 412380405 350604374 980028522 313543033 297556272 735852906 270626393 476555152 742557832 85579067 906133898 339740535 994733793 204684037 128492191 510495347 597710614 543309785 193118284 15409842 703237999 433606293 336669675 744132056 708753880 851348626 460111616 332100886 228873122 53902290 438649700 419015283 267316317 417173609 749880750 355014445 640380877 906626448 14888471 881465316 99396532 389582662 260498246 531327944 301439015 656483895 109530274 733039585 628985637 979579018 409732467 10679516 570546476 237948025 837428433 351355607 30936792 880296455 900732824 917989095 584988042 289721521 744987370 232497032 127265667 8118030 171259823 829281681 80505721 141678854 427167859 490852563 250204204 198520819 424689946 327902399 271303334 600758708 688158666 698535736 795927415 456032158 743552210 668432882 595144132 106044298 829992747 225649329 674908220 722713419 654694063 812922479 805576518 640161577 91151397 82139837 23157495 744639530 830664293 854627320 165356796 129374160 477440998 565851128 674095838 111445594 124092182 807652273 291352731 113712208 668837472 935324310 504210532 970962669 486243246 720947056 763556755 422044217 809893038 501428254 373855699 921814943 718675272 952323854 116536318 917060289 555291567 689286512 770550977 200608949 270781789 800537408 385201829 162005831 845048219 466232751 190837163 749034790 714098148 198891724 311658282 142765841 896104437 75717250 406645478 496200926 424930069 576675995 138201670 735539389 648911464 438235055 181893731 345362718 677382307 923240350 708080674 252320652 923506861 588255683 253675298 905937500 600895545 402545879 447256874 393707793 331869304 238103187 4788624 260174519 607658138 617849770 513479995 607075375 976176324 679494526 339913480 885840606 37440692 68567196 336876717 15054993 106146769 476100446 390679762 969384898 425054963 829877164 766256602 752194066 178039321 736486971 598642848 882091636 306593302 664184217 675558893 589045367 586574240 927427843 149080871 239639666 637571325 898280673 588050827 821848401 823608815 107763514 818861846 758406110 226459654 780126129 798757882 492107128 814606398 578652557 235138510 7453013 963219943 730871894 19018561 293725144 552561836 22402873 913213314 12566279 940345371 753037831 411818267 153020018 9918210 501416507 322286084 389330223 310998862 796706983 339588612 762197843 471037560 199480081 316702446 563178690 882777332 181634303 418777933 495778895 728747080 152117726 696923531 290177254 170054411 221242298 57415689 298957989 201115724 536422240 822954987 764156453 54628260 692563211 183824811 468366353 110066113 234505658 229137397 626003899 560971648 313463014 893497597 591179347 132080688 121487529 153885312 706403042 538210912 855052264 267198999 798666323 288447348 588697634 193708104 962245878 969570039 962903719 110843073 553843161 456547543 700370953 17694608 798959780 411666647 891752292 271685988 703418471 431882881 938507522 584552976 993846144 525484769 924637076 325265413 360707892 437756558 612356614 945596296 916608527 864081099 584539763 344345887 235005928 163727424 969913096 995255935 717286116 28346975 335542607 502535494 623944543 96654439 421840695 933366911 690179812 308457697 81020496 323018109 900544310 273114399 509602829 536339943 496598292 586365590 614864075 682868424 809007147 350105725 949217368 613466387 90167776 705207697 106404859 855947813 933559156 977102534 166758985 984840990 775062969 186162951 873683069 152324220 725725959 835630310 349691176 851444542 881002842 312647852 525189508 558180861 382723529 426292883 869965422 841869701 281788608 933873530 448409177 182754871 893230954 817297017 533689048 975261101 714591317 101169975 592497191 358177265 630431761 487581357 968336328 145606054 305794842 221346610 445508675 341499379 663571005 919832919 217435577 864103014 720440002 23307326 507043534 839691822 817890901 332872568 843399310 274542942 743147262 50781567 635231402 336286598 389778814 57129534 809968101 467876196 246158489 319684000 632730197 592670876 530728961 645796343 267670315 24534480 976344273 6408948 268074882 720907095 43305106 440197323 695380156 399853982 147752594 543133362 542790453 216098863 30499572 487224968 502456145 462790098 634800110 424998870 486153416 905447774 540311482 648394048 304396355 850638067 622413796 862619435 903346126 640348524 901574261 859797016 954606081 735966025 302298798 311910949 898143424 405584923 698466082 954156876 946203192 508975435 752703891 652684788 221753260 754788413 515386072 530461171 510327339 857721653 602047731 461849915 799130019 544757443 932042260 553068271 668746298 425671612 654878029 972861757 911019481 282854999 709230965 879038487 384596066 839725812 941969073 729273600 638403937 954323484 542517917 910054040 209257490 269084089 140177272 18142187 412771083 536378376 377361887 713546822 924746162 934957006 107389315 320423655 925751076 412212056 756356149 563715362 548009954 866146551 483110811 607658792 625200826 583886434 437745843 912084802 916992435 591145038 958055801 229227480 908657344 181846588 205018888 460775231 330009763 418051401 161954981 920725729 94456515 246290804 956861532 743555845 485271860 860818871 254925195 308636272 680521663 83198052 380053922 400272444 900128928 911043873 485785097 74755215 494060735 601580967 524526647 909572130 353318597 328418445 876932089 767762928 120498006 476085854 541018080 478338270 831750295 668839934 262581016 11636634 114590119 769991590 227145924 75024070 81228524 52082267 640961252 394006105 536506359 203064550 95354654 809676464 856971357 56000425 286057432 978725475 891806152 142745669 682662506 946718612 469594840 692536453 700595116 741835865 552297777 715335177 583016968 661603754 51958075 958652996 432846993 406248528 323079153 574741922 553750842 107667559 889911232 91976466 872837354 920056425 414742260 547336288 926643160 644330629 286476798 686055337 215447405 591459051 619520382 549484277 421340704 619902983 810752136 362434917 643291498 143269189 213691361 878249704 828808625 661688833 906753506 603789590 909723536 538074395 11407375 843975554 845979697 690145564 271541541 321113223 726269902 625264540 884530154 566938902 182418321 906343728 112188471 696125267 545842308 471201133 775709152 931035797 464187866 64688345 496361985 997450235 928047910 442859554 404793276 666278331 448106038 356498050 940071295 7167149 880864528 364065303 460880523 437866511 455981567 638561032 634578322 148186116 812853660 455142783 100137424 817479308 282305158 28296299 575991792 675790499 469684472 574053896 754340514 867654257 520504435 394610541 342140751 292103340 274167773 701645004 400957976 985064905 309804037 622143422 990774103 675972258 644154015 66793979 314210173 944807828 121561051 556898686 413965412 379630002 787849498 860504809 370070478 455130068 38455288 52269554 306831876 522828261 987843660 680769085 759232674 315062431 212951625 680009638 218217862 818983472 961559977 214691190 658947690 66019869 949222198 389938205 549351417 162255124 746784673 793045566 61502883 7457717 273286580 421537504 833815858 164867338 628679684 774686941 502692745 889701586 921276142 809575343 828310641 316916771 224017045 361227415 692875469 428946454 571892165 405926564 728815976 204551407 872237321 854378148 169263540 160531716 61525411 856022372 679088307 306269604 609869425 837895901 769292041 630969581 914707711 999715576 84325982 964401519 32599918 237573846 352947232 812274648 118083399 261443394 86082042 751875464 718215214 146547966 4630038 639873778 577611246 647927845 922082776 984227596 806601498 824445401 227384266 910730511 539189497 477466390 543269308 550625846 9756440 2513211 570158122 579584979 662899207 92821216 157305690 578231382 19127145 640692305 732549117 23775952 704384156 32198579 505690298 173216054 447022512 7983292 937653899 346365362 863662198 304750827 748191871 194449029 43424259 194746790 304252181 729318581 488233503 788472859 875985361 564849700 729875464 599865351 512262586 463187352 19694014 747825903 596465847 515123210 366323701 160339728 316013327 908669315 796652966 865674479 564902915 622080589 524508971 366232049 190824877 189458072 279491326 360412005 901197603 13521749 451636493 852170857 19708149 204549063 361701774 199903988 174521422 564986407 582659741 30250428 668952460 661257436 278036570 260565807 839718347 728711624 816231039 371539716 214281275 258609132 697620381 773627786 473715455 570226919 685596927 415097533 18297270 560201090 41171361 925167688 369665210 39932538 343039867 647286459 537222080 482532930 55859209 641037438 270769345 769619311 711795693 482199813 67647585 893358881 282643371 440687340 792114450 855293818 414542538 65494791 581833591 983671136 35831524 85958601 114357097 920674322 249072347 868222168 599066756 89956574 536287021 761377992 315923082 964263820 63378108 69164371 743482456 95522734 519070237 321452546 389473404 439750159 342189835 243834897 892300437 804089263 808986754 336890063 377940540 860474726 438625220 457140152 83176123 502814021 432946855 392468954 186264843 815873317 447216101 747894165 337874261 949323536 12767006 538013477 389812266 989202663 32836045 431631728 203148414 250350803 419428855 379356210 344341073 339856257 825420567 490290566 906315137 291674240 944089640 957124142 320523647 411505858 849806290 897068269 475044656 489132955 826369774 103916632 251273602 233421441 385006457 608054359 161709135 990958901 15255537 238586048 132250112 695855917 668220029 863288939 544990764 525399694 312707964 857531590 791304889 478420360 447565310 494685509 745537514 253544597 379683080 353418975 196915093 737037157 781648468 284734448 490294680 163582497 939791981 401767079 756528254 70797646 709611602 318666730 931182086 483363451 5001793 62999405 912953801 568591822 461231607 262153402 805087845 418800971 689086729 670291156 130921408 499704030 914734139 738748943 408914284 644634515 792486919 355382539 112794695 589967329 235205281 2409137 942478170 319020756 573851167 15189586 10005039 70230411 572709566 208433796 953128229 426152849 337844099 790238540 469249876 155346208 38165393 488721364 70125039 634508472 681126791 782678225 352729713 175193742 123601873 971897951 340781515 774913397 455961538 172181521 238084065 513469056 721230407 119628347 522608536 98464400 437958966 78487332 971720655 517652472 667965119 597204473 837381192 274479242 483789142 216646313 358776976 547097229 934519925 967145890 912432026 613927449 563308598 336014725 249024605 348764825 985824128 821403775 288216839 694493411 495226429 870869949 27579156 262156334 243057022 102429137 520260241 766662221 152066029 81859237 138807672 162700723 254371199 577572979 865546199 82308969 590762885 785475028 674349301 178299451 691373052 127655446 582689198 995024106 899084912 789544873 29045200 315952765 987118806 368495072 329088427 393494848 173641833 583943518 384429883 474823385 328672143 585649539 773026080 554881052 303490273 518851440 367989663 159237212 221389236 528905453 480100986 615490955 623739833 40146919 906081400 79109064 712481338 654181157 319680395 740720545 486951032 218657416 265598236 379109160 74790867 100376684 576034001 500823983 791508419 635455347 782155191 69284322 41368164 854557948 302667243 871626946 585273881 812502525 626522238 786073636 261270241 607398144 421907353 510043129 119320173 232149117 175122242 539071020 832991017 647314084 598519016 776973305 741143402 342633742 240728115 576073469 33953438 150951399 711123720 25067539 365712132 288220482 431528053 247586860 445653312 495765513 749427389 171672522 695808575 135165781 524499077 353857960 671444455 760201109 184925123 376722179 768136993 727643353 22678154 429308164 202953637 798406744 134004761 547113927 892707127 537764662 257822280 409190266 722289273 828066060 700838976 377811797 341838833 912594542 991731674 755334747 512029205 719981546 504472090 978510506 512277115 727650451 765961824 194447232 804503225 233952311 188012132 179372969 747305988 208367407 225103213 771356934 691963169 742735017 78463732 536588822 523676172 685864294 439082710 629335467 162845809 360817073 118045970 209627367 570602439 837829642 620653400 668402772 501762104 820460193 7409669 270725220 171680085 496797949 176517937 735232380 780821096 755932755 847046782 488664949 859543937 428589745 449341957 421842528 266779093 834412654 759647782 763524144 484482814 135662895 555601464 619012526 148336918 815062183 691162502 503612285 612444590 565124336 489690485 634275386 444950648 212494630 414145741 668494508 992116604 681280906 161223995 874392305 52038105 160765559 899724940 115056886 951185257 556058403 847016345 268792440 17983541 259720017 10961117 504502439 456664878 26135958 204311762 135770954 905280927 562449764 426412100 96599814 788566094 297333123 136538834 258651615 917566741 878394489 452006914 520481740 443984480 84666901 860781270 234503820 584909927 617405345 522485880 943981287 526254391 355587426 358329766 823366186 279055130 372799015 471395599 37767781 665373856 571749901 372690368 774527994 156267905 253338828 426124623 146164848 370446848 178649657 729303554 333858012 863950923 114957147 621935116 441915530 137861917 912871598 479982013 786823044 648664171 445010116 468660888 104324044 826810872 568759101 953742562 477435782 631550442 583130780 189992251 35087079 987123682 557293629 100904742 256143191 777510637 783275035 871825462 874140583 107130207 991079688 591149517 359982805 247371489 850343207 357764246 456189720 958744517 974246583 773815686 446768446 478724219 518393403 698554565 104207335 181311488 691834399 751494144 936640888 577302425 804077765 146884065 705260205 425955411 605805637 5441762 649108384 723049164 535106225 721238900 776780298 671869228 435733640 784242729 971539330 706690633 327401283 803772438 411306537 495010891 940241953 144573731 335257844 277459119 517347667 565814066 954584964 380431933 312632093 746917838 717393860 242521120 527344267 868506001 189370929 411370004 509875238 823536317 766918564 271621188 711746568 173934537 468144052 764928911 811837588 73661823 363516340 186320005 329637040 684608493 990793427 285667908 864366005 456403784 648251477 693712595 597882663 370719357 737821155 822128036 116603743 724127067 452196421 416240511 800656907 419242643 576445753 569115550 309077202 845520635 424007845 154116019 641547945 45728938 688985818 652677500 836126435 605321483 445589755 889737722 942932413 179884659 39368949 734454416 652495994 255909050 508359770 365978308 395641536 417680980 962543928 706115691 305566668 346706104 132816564 284272286 401466394 994243223 46914211 904231108 583879965 724619785 989268478 863785588 481059552 225684453 867105558 793601149 933026525 812259493 980966782 549456027 514362138 715728915 510991419 501318190 506117950 318614512 933790577 811261060 564415974 87429515 535600090 40353321 918108299 884819232 276487499 543942142 63669964 706570903 726833501 395720996 514587621 216494826 353579724 309133909 509476917 177137494 843417173 203261272 474564435 645821421 489170508 337277123 959935279 624716607 928333438 150403463 41755473 946203663 406682252 395066400 136821764 103974595 95803636 551540284 813539360 662562616 904792226 129309827 918518230 325586341 560160534 972534271 639569087 881679045 903103694 803922900 655349363 3354251 697684498 384042027 964068911 468052413 14861912 707230337 891370252 993490384 879000732 346529171 920887628 445738943 772203558 595635783 53848879 734988019 449223859 389531262 318998210 11354544 679461699 167978980 623840736 844814859 229046527 367594743 788167309 637525499 990862600 345915619 869546316 286069227 557154272 92230052 195003063 530530443 277958857 339686169 242181874 392530833 497012615 255635423 348851809 816431171 316485711 454286270 288224070 622824632 486900541 166176002 291115273 499446451 136551920 519447976 525891083 515155176 948556328 541335382 833378439 816519342 217208502 99422553 389311796 416617023 703312309 138612574 25162491 251543353 752360143 302310892 444665208 866844711 946768386 953778459 246093207 701667066 343035766 323771159 992033376 250741866 953316560 712165065 789269438 614005965 766830673 393870117 96248495 19495492 983827256 453115157 816249365 276584015 15531011 136285106 542133181 276513059 28264793 701298584 88344129 528340992 308262925 457427379 823216260 767462756 319052299 851725360 547725548 82197878 231847881 911372086 856390926 457082243 319897137 761495300 56532868 918076181 61576871 565152937 716508427 723762424 663411438 700796295 571418908 264488524 529583161 288753219 527766293 439136195 545622455 394612443 129570691 917995275 12683785 637009205 733052968 615401399 972619205 897329164 836444286 428412497 574292687 338245101 10083394 137657815 436536756 337179156 364429876 660116558 268675977 723735289 602260680 931540230 766102636 569681807 653334643 354437117 479864575 107372775 871591807 492256922 498738834 743622478 712530904 434101883 227081224 150311666 539431924 423615857 634354978 137038704 431591340 435727106 670618896 564101082 619703395 238414580 683995479 821788481 864508379 549862525 397693931 760784184 512071343 108696184 750973574 113381814 666928363 714914024 758678710 334840716 79702472 949648984 176529710 197568193 962742727 291888887 626075729 255864166 810750736 508329257 439669690 551449763 643943145 47635138 511208034 209522009 219240069 844872681 276286599 409206772 200052939 881548464 193050637 694695524 974327601 315447383 80219617 294709281 589698317 458679809 691513676 61610038 914503548 978170168 419211728 943076175 244055663 810180069 955009711 129252034 119443057 154702471 174032273 927259131 670780212 534022027 580881505 873569902 900959224 234278125 387666984 809695646 228691726 65198879 609295454 211866255 470319146 844705736 461469394 723102764 7654598 188652356 197412172 31675822 896664087 648196142 379716598 84173443 195718401 448059444 539040130 761995631 726549952 452101120 597469438 133628541 639518552 498019357 24324291 853592171 367883776 291393584 916820117 857704477 443877362 947992039 521611514 241707515 904352955 628359783 815527940 154427792 62719132 264502100 466195670 112342460 452687457 886617933 504001628 361335355 443937667 64003483 314918090 2012005 736379396 135615673 509421734 418211076 678295768 553878946 827035341 356576740 542603709 142531528 548082064 348942816 71099977 119154126 422810829 786105571 293215395 523025074 950966699 623106829 147464944 466075821 587097754 975071626 663101894 534678788 184300778 278096239 9581423 283246816 99902313 303104750 149298924 414916322 793515958 711402128 96034346 172820662 770821777 736547832 991687396 337917899 553264643 642745329 775900663 30405999 333147087 980327185 11820206 800182340 846618690 555134387 820052708 990022058 548707463 237499171 736612592 624821021 42527506 504203254 220137299 767002153 939517729 900451181 103910476 794626063 898485285 546361342 782176183 98169511 109656615 120154986 618572404 309664298 688768464 999333567 201403192 975942239 309292046 912952755 790245387 614142536 606907293 575897760 131343364 970987563 545737254 887045942 88533543 672031933 62862082 360263504 157703519 384637366 244146996 78973750 188791046 273293700 30912347 447866442 262525032 626487286 457357906 451026421 341081482 631837337 258381040 253618375 425796489 539926706 375982368 99199896 973993316 523771454 877498951 64464460 899295733 495231263 726449855 94677763 957533908 133452164 107758417 382393564 362099856 64562376 46196895 675237249 116777356 769343196 504070207 837738162 386723822 428161830 973840002 295884657 560474635 409156388 273370206 237585098 332005868 541374317 37420954 181746250 311861535 254616457 185829150 785370994 518174740 362933224 632252031 872761979 644762833 111502204 361231951 593180764 89054081 531238531 818115351 636064332 968248472 988918952 635342403 269421507 471532339 78022961 502445569 78305715 229537206 528462140 677871052 955286056 995834097 351972996 298002456 868023734 984967370 484090645 657733023 712019480 400080754 932641378 321907191 419037773 692795987 530714431 669602108 220633669 444231296 732111089 716253110 176987129 61624016 855879658 507821133 38639463 824589895 351531414 891658808 744977404 277506378 751371095 927286937 204855322 309146854 548821683 640374173 587531703 93286652 525936252 677881942 654112165 668534013 219061860 790525817 605912359 254970113 386412054 328220463 459704282 203406192 631095662 422396886 233580382 984911000 556391088 617188484 785965358 349832809 98837823 578859657 252601828 274540589 8355267 230903832 512464492 875966348 600635575 246477880 598149563 875736775 66697389 519106442 189598104 426694758 556763030 185298375 47640854 543961715 222755655 92183897 522033413 126601795 259806918 488918691 403565943 411141353 13174577 231463926 100764796 78999514 568431954 431076403 308610394 584687375 950590436 422038778 250082958 999943808 860548883 196547876 709644030 737487625 620157786 964813899 653213711 664670289 279132134 789205549 910399468 242720892 739036347 47410635 796489605 95379155 380957727 867778148 240092658 863190348 447872402 399114028 485454167 998806311 18290412 253839165 191312259 927003299 378309518 532128078 258785021 760077561 602617654 221305211 33968502 379331264 382201984 960893506 566825868 731655909 16589648 28836121 706418480 154184336 709255573 219559746 419442724 543781750 104643105 974913757 394844495 469933565 142373762 732957087 57403608 774263162 399492342 496658148 435446345 490304388 645941710 982786304 121270 832194422 745372905 506411513 472554448 138725711 19026860 571623049 151852277 618130121 657648699 766746507 342221957 589692075 974484919 860474656 480275817 128149673 745228428 927831193 15245987 630269987 187800059 216208725 630935794 201060993 568203551 269953853 733405030 448207560 723364370 816895774 571573599 850493643 284842430 226257134 541056606 773356202 775674163 332373353 324735753 101649741 619620218 849020288 666231636 758357177 957462462 461394261 909746982 148820901 684285058 941904596 302014534 17884532 331338240 44504425 469260045 120663490 348060181 959052857 694982158 410100695 790084252 574256528 439252342 361077034 864678109 742161607 147124067 899088084 823822434 270664552 252537988 68344633 996879059 735691346 298430656 731018684 257511062 384218364 446938086 128496144 196204219 941977872 548747952 1801614 30384469 67161681 54323348 816989220 262630873 963703590 992653289 444628466 629295072 99342570 637682332 340484377 954427404 496907950 537358966 729632778 947239454 119092237 464518870 807321039 150146612 721359024 969510 560543543 223788202 751387886 482248483 41022120 803469881 238097205 630727512 886832294 365073537 377675582 461218620 65186827 140055167 98246738 247094486 131908787 642664256 690087534 443249439 45578233 973100223 112652640 490119476 578987902 333083218 224225720 945519520 458582439 741920529 471616537 505399033 622067089 945315766 625072176 851651552 572829474 524276503 928465417 677881052 956819387 950738316 138448616 800636692 134709619 657095436 31856744 278380015 288619201 130665873 95544433 642994870 58477423 818856524 800402901 431637979 303078002 615351641 139724549 875572056 998875764 723217422 359650900 200326284 655153049 970713798 360665050 768384963 861996249 709856935 149152042 231370992 693131980 400282152 497390264 616935247 491319942 344789932 876088535 842356294 108831531 889187876 410980772 13314116 224024054 925702204 302328583 5699365 855427770 403290319 477219942 965535255 38502844 214552074 415199185 364999772 135321514 871555860 450438034 504510968 70959186 92728831 3046117 714273589 300789425 528040272 116684447 256011785 897901103 937020648 197244407 971022199 983817070 162567563 791961590 452136152 469418445 747091664 761385330 736093637 688965965 791635529 469747355 133126000 866686947 554397916 967277982 76287747 888740395 691547478 551492150 909060716 674487786 406907066 516904864 624718235 765931753 741773060 608965755 420709035 410581458 81836886 724362664 683054577 591770788 161370521 16100459 732764243 590870113 333274182 495073349 714218652 454928233 20850933 310550689 486326033 918155201 347051562 633899721 773203544 608631667 610389113 482636235 113581314 789065319 113374849 922368752 462733501 332993493 656392840 182722432 824481323 332053252 455456822 678640782 875594226 65219410 864634240 287603893 261789111 597010654 995718763 359318611 242178621 12098436 155822361 380927127 169483668 297686917 337798943 224136754 69587813 976466650 98526557 447860180 425802949 439758807 807285191 268627 837265871 700464097 973332692 413493832 145551378 806142650 464285454 443263751 372818167 640988854 555354073 114512580 135246043 698157366 258897771 752046125 644997150 165685555 967961201 932414108 638793815 165855581 98149784 654803866 513576949 628312371 734561506 521818343 672932030 392546223 292147668 638627475 111482816 877432784 552761764 469665059 180898677 934116400 421606891 710686057 260327914 985482322 226231830 506712715 185717100 311678392 956281438 866564949 723575465 504515961 572490450 339730100 81558738 848259 115641025 502379811 634497377 405440268 602862780 662871405 297796472 476727884 738306803 36882411 304679533 445679798 118273370 235748920 895223035 550139019 669529382 627405698 373108247 125073894 129712009 665761303 120009379 419347486 554232350 976863638 6439647 602052146 667223836 394557126 777673545 399855158 880160497 973756009 793422846 327371827 85439335 190076405 825827282 953032280 810116650 847860349 13273027 938544888 845071107 530373002 411811610 130196284 690760251 79417551 382790369 753514569 211842680 570962271 231097938 477925306 785547926 131048930 77230535 626119427 436293166 753765635 16879333 657865903 843307367 174549087 498222917 735103449 165646386 16254054 72522286 748929857 188619175 254735615 863800423 577394472 811990741 461722788 411724174 291135373 581262225 131238580 281623852 51001767 76992694 635812337 413015068 194985820 794747205 494164251 74391840 170074288 799023850 849937333 605937600 635541722 98208141 885883936 699844963 840739233 731212765 277316493 621370403 701031760 965977711 122075727 373320606 861314506 847799446 620628315 267274139 846283003 528559546 47470585 389144479 743049578 786653525 73681249 611175558 991559193 57925200 258547222 813312356 959742341 498297566 842941234 974209338 848868270 382085882 580259750 783537874 341963161 197416441 447233082 9776908 396230446 572411376 411526443 825842069 966837224 933175290 30543128 128491615 657353085 659849542 394903636 59255341 682525418 490288374 530134002 482557531 177808551 915090843 635782031 675729894 957055379 767513550 285293197 746513885 524874486 154670541 904760512 751212091 238813313 574097128 747188135 520511300 453040642 968336738 527444040 770807745 747563594 926955236 980133685 264646674 191977997 775498302 657063279 908366297 342015952 785552845 209002260 285872871 74405121 338411387 633532817 945912303 13590079 685856388 426642668 676115243 896875209 482909359 639367578 698807407 351073578 955681097 978986946 1343185 239641930 484944847 976940675 476518836 471352227 677640816 50987438 642716683 805713291 315426645 563638378 477822878 520259291 614890972 159554486 111191786 866812035 62063427 811798332 262106787 948515737 946922745 426339310 500835992 279789500 343394142 183222002 78076646 912185062 501338661 108943685 432397666 733954325 273987421 898828082 233776240 911288934 748942903 973104523 121086207 213987006 232680201 729273409 805993966 480005423 660440469 222287420 353672002 540792903 868722844 327200106 401328481 504429820 844685074 891517295 788091986 383016646 141787939 677796599 106662476 570614397 305876604 968960208 651409969 697941093 921546095 823443848 153940092 433750768 156842150 83202158 16158541 581275118 472107561 356546533 562596995 699052153 879466528 665641071 289694271 638462887 390550655 622952503 611780813 395380865 978948260 475084706 307804438 667457806 529760192 173794971 588646320 101149340 351977712 251261643 525100499 619770958 978853686 46570752 868715480 789590157 161488509 695439760 717583169 359263437 746828127 908217016 720202277 793468504 679702701 639963931 934336177 866590716 305067858 226408603 21634201 289599991 38651842 413105028 731066320 929317961 12301063 476788932 318103891 821527673 386792190 636462588 603234906 449170567 196027278 440408739 663542156 442911735 123164659 346072860 894050326 653121570 765623600 477886929 392941278 368612782 492829381 745502788 706991863 700116473 799920902 800841464 838714639 428634261 239488596 306556908 969746490 288032681 924613328 571747925 206380331 991445473 809116317 277288929 108320094 951218237 362235736 731686291 411267597 65374358 574767576 341170694 502334566 616024475 560499612 917720425 904831432 263550815 376766213 437424960 487286222 749883194 549615228 123447067 283222999 914414481 360856973 714931767 83449450 164930617 909551759 23857819 603628012 201806534 735644499 507604900 602450988 503378938 344544672 343633288 543331343 595332272 239695982 737517876 155377580 636703541 226213923 428846244 365589687 202591312 874907778 287481893 905842176 685575706 343832463 99266076 642717836 171172744 627803746 266779741 543879629 814697448 69684397 50829547 677295582 589236373 961349015 894786121 578330738 762692527 367107650 943799918 186409706 784582438 849005350 663573616 920226609 500602596 351101060 845306793 932426422 291212390 345886843 646325306 456501978 450167478 892751294 454557925 798566076 980508191 985465411 896549183 404603581 120365000 496884652 484185943 122655191 733351604 217742294 637450905 386424844 611193019 862242267 865022282 244098289 579993708 799655331 824302653 795109900 156514114 376384521 984213105 106003669 185985457 576467770 169466678 706757763 83128766 55624980 680192561 622160160 827488160 893243652 38514539 961160992 297436504 749282841 989100861 331273169 647866842 859264861 212894427 341078592 417329390 853727393 298681032 920705325 84810213 796925847 817423476 530189455 432151186 664802503 833911267 136105807 400835413 134180958 655804773 919457624 632162200 629959526 16465890 124664193 254197872 901367836 721119408 799527333 783739641 738264471 762584102 375323442 560844424 874207483 777954226 164162772 715090070 578604527 860731463 526573956 958034420 112255819 890873304 363499668 346249549 336703004 56859589 133833685 910036432 746659128 321925899 813884304 808711160 81018531 21199700 94536488 189569522 112844575 832721308 552632983 583154174 870051285 31569106 834625988 275078733 362134140 103482082 894511480 532177606 330285209 486722505 804358094 260221665 754265370 893743767 544250983 532341796 959189975 297187779 269770872 84896704 831583469 124157685 180945154 824396246 367377614 986277859 219920386 478433858 732683349 467211556 348363076 414146263 926162055 627651109 337964297 510611614 121169776 423583439 779781053 72446823 125554832 501755670 7093172 814347622 617828505 32996064 597177811 723604158 972665904 992805479 129327430 332807190 196723421 630128793 491400226 874081796 647950958 34990853 50361081 312934132 2825905 626366573 73479837 721077056 465211879 483079613 66828277 705846151 206247633 484713012 518868473 659502433 220838549 44062021 754823887 759032790 455245974 369381441 59874619 356395443 780562752 340660707 528166261 427676154 292373310 713688311 128734270 739218789 599577968 837146797 728351182 27068519 135633997 629164483 185746792 239075589 539250367 68351372 155582281 179493383 377010569 96491535 835409278 553804397 788413207 188890232 694949645 751607291 396169322 140359529 292912330 581307248 893829924 974838080 340705592 509154952 201853900 802211774 130694546 45573541 66147395 126917092 269793922 878414431 404986278 547228179 677036843 706881003 24743456 859166017 108549004 792178105 505549382 427203418 569980820 997168914 845614819 171394411 389608642 889957178 413380635 18619883 944144096 621883052 104367391 97829678 237847718 268130959 840289117 929514281 165973864 124324889 139599913 959935841 654931092 770621683 147460199 448334551 63827465 658359829 476625845 925416156 285444977 110362447 988935181 643307303 755929724 309294176 448451663 81175582 134832198 543235077 733336491 738488876 900843206 146713588 517789306 455279465 802782864 995821999 212197004 13506352 719709361 720442227 308983291 663958581 606947027 104759930 432590774 210568302 690998014 766695815 325478053 855840187 390652552 529644982 98980065 395395567 518228823 485897821 919740114 373239275 694468828 58739085 335514271 465200624 98452211 16704483 9329394 588675862 675285545 691210318 99417486 913559749 439047972 971500750 821895076 478204550 336757348 126967297 544616897 780707148 471857670 27841390 127060846 667605606 564572649 691383052 780809441 829285788 132274194 92904266 52942493 61273526 703621234 555561016 15093933 536255296 284169322 656757473 89950099 153354514 723872703 973189480 335086794 813693844 436765175 24314955 240841507 957485503 235875946 227030109 846138645 563634950 914647 453260809 830066816 869954717 17294205 682119546 113835835 745278688 726418676 906669174 717322757 183525887 871173169 299793225 15218755 238203568 355942554 437560273 213178300 665175574 465723864 814009096 663581010 933648514 939621906 58066534 494745952 732369192 404109635 628836850 967226225 401727642 437315330 402983831 432555575 881293569 896086092 480898357 971260030 987571315 122670311 963624535 754488970 617018061 590793660 603343818 488303419 583722306 660436276 964349550 28167891 458042266 458973770 691235071 326689739 846371596 162829363 612192804 868578788 830155653 989334353 865281268 828677831 998471858 429922497 994172981 470881949 724803459 385318260 905041506 707950933 874031951 918522948 974973996 721955301 882862315 629040325 220647543 789378865 798944108 120835665 840503093 592246668 567319725 968516051 219744011 464874028 288943275 127458946 843873774 54795094 869449325 641907208 475319016 57031926 588827857 459951353 392471189 854181740 88289843 500020226 996390537 607406138 111834638 706793274 376420664 496204848 148358593 172802021 866254909 267825350 268912007 999324857 186512876 788781147 950807422 150209190 915519474 984026655 771707531 511209180 311668395 923981382 495018048 808232713 704968660 476910641 701330706 639390024 881749173 787017310 984087474 974759184 335368380 340256197 748988802 409819862 110865212 485247689 455440322 22125504 896045289 101436294 657491296 863524307 404072934 112944539 202381799 82021687 253162560 664437413 507811593 405917858 342460868 356303377 878466987 665158783 196490930 436088313 638015433 66176967 235127736 860560886 866157486 348020567 11000218 836974905 732231062 551990196 483323241 231507209 748871157 301325612 688089699 37705070 812013769 822205070 379268709 994329826 543116919 486428103 222738052 477506222 347376706 598526072 571825844 225843633 377904211 577332914 573379193 592823907 707817396 63582710 584324958 552242498 805506364 202357885 321318750 92705197 885407674 590425783 259091104 320215575 755259274 425775397 754836902 152558861 694943894 990440638 274992228 742935829 219583236 838973676 416033136 195092325 670616626 355607501 302197732 999696030 276678886 851491753 279807775 878734508 942780630 516188808 925939305 538260957 57565299 613445139 399064482 90182788 745315412 596531547 513482737 107614935 948321533 163017753 721054198 389444622 263088875 965724368 724195902 676388535 276185079 873963549 576372245 543902960 738542321 357001613 893377450 102515443 141471506 691222139 121528679 905452979 440562665 281487641 878098593 745459154 659432809 431637471 50519569 580295851 41317978 961460916 372955238 102923758 367613067 416108549 148881742 828018686 87806979 948627903 797294847 349805857 447918658 319689389 573959349 902010576 823710004 124353572 644374094 467619833 820409288 983067006 376154985 528516543 554110620 519898840 698078942 100417172 538803262 598694653 33034804 306653978 804610400 598309902 91102839 973021264 943399018 290809533 79206982 63899113 596583323 354608843 43422092 986477202 851133116 467049661 162082661 440262815 216858528 872460666 524203362 293293244 818446559 839847297 448648789 436985135 911773825 367126922 233303739 340179449 900064104 353559593 850391877 263671705 419694290 894674888 471955105 728734077 217042390 867851658 490084142 869638735 430457616 384946088 292281242 17727939 546012195 130740212 517615909 113626467 821939972 886886168 142221217 751467661 197558485 269864088 180630195 450568926 592699976 855478601 795742272 629080640 768274433 721207869 792090153 830488587 360041328 963628524 397006792 169603111 737450992 161968120 594290897 667385447 993801815 841143413 440229669 517048576 885794633 195334261 161807329 308272898 148021338 965282849 677719748 399926317 476606660 124758094 139785164 947606892 352615452 271494156 509733363 713792566 839328973 251140598 409254260 870142189 692339140 465736592 604830737 387851729 946871690 59575964 118535871 338236976 411141600 380210160 128585222 850035307 627590724 42727430 227676671 291704302 272879984 438112456 572528670 81490200 380951356 606197807 998586944 822673505 412307784 421318080 844184820 583781301 285739317 253424954 354697221 319056905 635105406 584701394 671164655 347105132 431461361 771203587 738325767 145510977 720809881 375654856 666890886 544402502 501717877 791790051 761531709 46875452 139128575 781301728 539323312 929007622 136989370 891215312 612260712 206330280 256342876 413813990 757704805 162407531 243801301 716363601 955933929 595429011 234056260 409005815 201319448 775890406 135582857 49053420 383470587 458945801 244547427 912775206 338728383 30560093 35161626 346811105 726215450 176141989 133768236 354691324 543782806 32751414 576360781 213509800 701193337 993549163 333806537 229800561 147769481 195291430 822118202 149838232 973968690 910492401 221303166 972472166 839804580 832162856 182779335 58698926 326903818 173135572 691149733 357176679 7941619 913547238 125725252 805966006 110620391 791211470 940969227 338725320 663100539 930202432 154010672 857486029 292226170 32356217 810124861 901592852 468778960 167813164 27851315 129800860 551071531 272728094 445324149 43825546 831821343 358652234 798393901 583929679 335097652 223522808 590477711 23548598 684626736 506591620 824756487 580724713 343345909 5372443 614758844 703903867 965944517 640006303 82193181 945441201 714360477 17140469 946532474 976169145 798437985 495368326 734048181 747080905 282238587 737307796 704803119 371431216 717682094 468315313 347538288 553125757 708465580 749632917 294496510 276660161 696280609 547498487 114999670 102647885 737914158 27548669 361896340 709899990 501667931 501345526 160876241 326782698 417328486 727424387 695214657 477938759 727910745 21745391 623114692 398309893 723842825 727853912 633458890 164824203 121833584 742397507 971084569 661938742 752644939 168409162 462549878 247662575 110705280 725348706 933220143 46617127 869028168 928955722 615003326 185469524 857011572 266215022 815312820 473031543 381748180 459287188 660944273 339815220 375451039 64348957 819251502 858586474 121951988 521392955 518889878 725892738 779514442 865569118 755514094 992356034 136013248 925804818 801379101 829031888 602238599 415897721 385808280 59130494 149468501 861884337 367733764 705054649 349557115 364250314 178771744 827002267 958997646 1877582 717174606 977737366 637735233 140478822 878502526 245255671 539950053 929006416 769615996 736931952 884189870 776363967 927455595 51066540 953718941 911337039 719290997 691245907 440836612 221316455 226713848 454727395 209416411 711258340 191119219 392092196 919238497 591865299 253154988 700257417 865125833 933834863 351461176 360040625 76191395 589384094 754374623 911824515 439904388 312831722 536076058 3755448 686730740 578156833 630209251 829767317 319406408 27951748 751085918 13313307 260019670 431486541 39735343 118572451 381533395 873084754 320583474 50813295 313329516 377769461 50778741 26578699 698495385 891976641 385460935 883087184 676561112 970397949 787412151 801047017 158272940 842301872 938741094 281816454 29013393 26664184 186460369 634744685 693054514 735240232 827325023 697624313 905856080 252911938 669712001 526079484 30395569 14906967 648240479 129930736 643635452 38717188 678338883 101204045 589930826 794709471 556985800 674934746 955051308 870623259 569469037 144137060 669312878 269330039 463866309 352087996 514013035 419470721 455177501 804647335 277130177 282144418 524319349 519976485 995734559 856107291 19239280 222427465 844246527 925258208 131540127 565908594 526006981 623569776 828771422 921607118 421501533 105173721 893651385 130105523 230621229 821490150 601203206 543549728 457727667 436788869 613854429 105452035 84828423 869544251 6314478 474756145 142163954 270310607 140131915 244675315 373416463 742144809 528000924 939677215 212657447 39139713 538271302 588887959 402597943 426801682 829915421 429265060 297205286 920462824 540891536 397317208 819637720 429059743 204994378 550964566 125263569 829380462 552296791 731399531 548883227 918299677 233624904 936062986 333848784 836806380 302144311 4790362 496917998 115888869 149209742 843509363 587513994 268298239 111124091 997099682 669748975 107910041 156614597 334917423 34836400 947707168 809629750 989962423 300034532 902562254 872668036 938572753 931353595 172179895 912283846 514008171 112035864 948391000 464840037 434341062 171686821 391653323 177434197 176499958 566189051 421410237 233014676 747114276 182781886 516736312 708403401 993492089 376500380 244779821 88095883 192928548 576448643 548297481 631700986 245226702 553702939 447489980 769515514 256919281 662359016 640192498 596946905 221400166 863542939 677847828 259737306 784000742 17583332 662187264 32571480 155839020 150487121 119322972 162313846 615982614 186961032 75057803 800003567 775821460 196313805 535475776 113748727 419747698 560853924 526491863 284609200 821149380 124901416 624877693 364963863 445379390 214466590 244625365 588865863 250057188 581042615 660856153 406428042 926987465 898287557 314492805 919621730 107079143 965568019 221897148 429273260 454500563 609056391 55421363 460881733 503175803 724108944 455844025 737443166 359459962 429416351 674076083 472603463 857392676 263602128 965342374 722879192 921791320 702646430 362217479 655892641 510532666 767964816 488530482 432603912 757435045 790551984 263822075 974403296 231008795 815674080 462155974 108038218 630848013 573597466 630995001 196604109 275738545 292759029 398453892 114201251 624409502 216167278 738387134 855685615 375112621 590011553 493160295 212337117 28624190 26129761 693159230 234828481 31678449 132864454 94803161 280590239 307308175 247764741 966798725 822209435 101893092 742283098 505055350 86406101 521850320 38403866 628998712 822999547 614591459 282514247 564501064 322650305 963915479 571137936 641457766 775533426 455431752 485153086 765204782 675609327 674099975 322435930 269702581 545029393 504554632 751666502 58609287 389545294 168539370 498577763 146023105 735926249 141404367 142804806 360622071 114796618 234601997 612392511 28947999 116240685 272796343 144808805 318860954 545803377 605168488 394178890 580860997 899376780 684953423 144192370 124462037 271985449 620000619 315998147 497486558 62657067 377507007 523279505 322190951 770801566 242607387 209208309 433358182 595856109 786109653 526721180 421971483 463963203 806765846 883561600 671747519 331684768 589614422 93851198 322079172 42359883 570945945 628832489 18277098 685431172 349727077 101408649 191527187 507008540 170218132 303413945 200042792 971598796 5384219 987342971 845784034 80116389 762227730 69735148 90524322 131955881 138362680 253437812 353582182 698737224 11697581 94128457 128653650 428214077 151926172 583526247 93275950 451387410 339385151 994125463 339531964 662764879 560847156 868809064 743060141 374533214 731697258 281113990 135136284 705594435 363352333 389544821 192119763 814997686 550499686 341573276 196680747 825560555 423617699 27842559 840549809 955235380 586437549 146307932 744559343 682730696 333857718 405953892 756423132 710663009 903856180 443984534 109057754 636149087 189207926 239160156 684031824 191040553 155136349 218781919 566386495 884612864 546325479 625135194 430483412 8458580 917466415 725041977 246999533 849287075 241967362 897845636 43490044 818427039 320977798 648862556 499676543 305676856 959467754 634521362 792068668 177557824 719627625 484853302 225668367 481839538 752632896 927294883 991124299 414303015 545318078 472240064 837709807 260387709 892643494 829291482 820231973 870166291 131212162 943999181 772953790 281916578 862868446 82276760 727069339 725098782 227263366 405019962 353470246 725289024 465311684 573214832 750084246 858346242 606884165 593478941 484603280 9814394 159824171 214754937 351927498 176688964 953338388 402333984 332383642 415347498 932933192 615586740 737452687 771490949 588339286 520157563 975673915 725680673 233447634 746440698 50403861 526531006 54181409 324923129 101051910 293359551 168632807 727642717 192931906 928068439 120110346 674739619 610260021 267795417 174255346 624112265 880197172 707721504 651813642 852295358 688901875 235932744 473917930 925853822 341832453 524624666 222042041 516441911 356203373 510413051 590004409 247425528 900052973 204527016 248219495 320238469 201209444 373925204 146323394 327553618 622607710 799296853 678745698 933611017 291764893 859317445 780709525 200666526 97847820 753804567 485504184 717570450 685859965 107908761 230050346 30978913 111468518 203064360 356028698 65010853 660582607 810026177 133123569 375140525 894239721 635589789 987655035 663635826 294307411 826285468 280793907 131007836 766705458 777618765 988453629 597666534 443426538 462866282 123623341 167094210 151108009 605834309 550590149 809070027 958803969 715450186 824369247 72219256 100942814 97816242 129741156 813741561 688065793 146523625 7343154 672320818 35326926 49408072 98424492 85829680 654448689 177486961 592120175 237882470 399639923 293172332 71935925 420309886 666219907 605556157 995875251 469387807 296997880 975845799 817195516 691373390 56570997 123678575 96770084 297627166 72598775 525753823 38973074 883986723 374560065 926127474 98783150 298520630 181846823 333404968 727930678 776377858 773330186 12695697 333484401 381598731 924370454 907732090 758268382 737347144 303647499 649739590 942094785 569572774 852423150 144796932 190073433 922718772 496844105 378182856 618194463 809342641 923494406 871438194 188179776 251893545 646392401 988571068 443161646 268301505 841415646 983218133 149383629 216748419 68716396 277485770 927985475 981705558 710762174 549692442 986428902 571382929 135880644 163162630 468545340 801552118 176645310 504785945 754094273 371325652 77953990 813818134 311230829 369973003 46634636 490907599 597630913 422991999 718638582 135887132 434527023 616357514 34601813 317815815 210295206 370889679 367656024 395448033 950368034 144122992 35629433 553517683 311116826 854919391 863416175 617415934 607305059 847910536 746480971 858153456 229208849 141342810 695919537 468166609 691885586 508911422 612872838 846957271 759677821 555917014 644142009 134270045 689994265 624749916 793719705 330624949 524191463 673011363 305934351 884655852 206323360 954197389 600272249 601925435 798741323 591532645 657107773 682565939 746074777 458787427 133211831 788733980 443672837 123706682 103534318 292405888 855801284 993500291 671615426 450908985 760224481 658060711 238955527 158133223 826285891 558394925 511714747 129929696 861470357 348982618 234468065 687368182 904722110 772730877 395346570 187911212 884104517 556959049 709418401 425628093 181103507 96649878 505140957 434711299 945168779 145043543 677212575 131095057 482885032 848215790 802862619 925979600 229712882 3443589 588329867 970470844 430158759 803811340 714396339 561444667 658587704 228358046 820002092 400895261 100144421 286317408 899984077 223748540 274694503 804387922 27274196 874977901 443371461 526844809 871496 344397323 910430262 539391388 177993100 129101122 957741787 254600580 721227124 915331229 807830745 803609102 626837030 919084979 556352873 494375465 664540769 800825612 56682664 393230276 601989433 112517534 583546854 822767814 706214427 787213343 519674551 236724449 647649209 571155224 145112240 743108139 496466047 735715993 112558699 228202127 888340376 111390569 709431251 679099143 834042914 971299124 326037720 979838585 382103373 140457707 419603884 668385418 992994810 931497591 219657124 673766924 213991043 178110478 671647478 922652257 405971210 151901448 618304587 988573649 940365229 163783448 542892278 830023921 478779520 959215109 837877933 986670234 751362098 432281934 281765538 613337582 542149521 727793677 158289957 261750017 138559597 447881574 539953604 650595096 749177531 255015082 523953731 487849046 954426474 371092427 888577334 912791910 251601167 499837784 145665771 888968179 168659140 98903192 640699187 552145196 612878250 976491939 266088010 849469405 333296064 601450323 590676584 671684763 378180894 586869237 345683251 646904064 953678448 329492688 925355956 454342192 959627825 394429364 790946337 21504468 26481220 586138370 484858193 531641944 55392381 212711950 909304357 322524039 93103227 282286830 364879323 523670844 198480605 190802583 816763810 265589595 333725938 147453085 8078261 400648427 671182961 184635226 70756987 653197404 870128106 722861879 168475529 221873440 340215592 384215569 88278822 601081060 77796736 57885725 748253982 476646761 434832917 298433334 70395153 786833012 283980202 871612682 662108460 994452208 739607939 47626952 873995728 107096872 375524134 596978355 869689903 636100525 581805386 611444750 789981934 720605351 264091971 974988534 470983777 927672920 574855773 442338580 914528143 131147766 525409705 578158816 319731526 402446925 481372740 664674396 337358659 664834257 624373338 383200081 785484315 711357211 38934293 940455301 936968714 642374227 87938060 691427497 221839555 41318762 446070734 81276167 517072102 861976386 679032115 221627265 768362056 190415520 701511362 320713487 226801538 945184524 908391412 958008601 675634540 453997824 218173280 110175606 808162848 347974474 764067358 737369879 331520262 278178325 821822072 509009036 54832034 615113377 532048732 562836412 415855001 398261766 435966124 565926547 639675756 116920870 817454978 396804447 48488416 507979356 52791647 862354012 32486871 155092223 547736811 764907905 187009577 203639992 965343192 417587041 112615189 656394834 746026897 43902253 211702925 795947843 277257404 897545886 117835869 313005928 980895852 8248034 756665759 914821021 329454392 631831948 784858358 87254995 136157813 335887870 613503412 98697585 561391057 989139722 2863839 494120664 659548960 386796580 411462761 387477548 871767322 63923755 445584958 37601148 375133079 905529056 482188712 434874360 84113245 191754550 679717140 473451307 742496628 944760815 988035152 251890573 369099824 232077325 957319446 56668726 640582344 552785116 796479214 531615065 691443180 758008284 394875578 998473606 331760670 383494343 388750448 7099208 464757061 876197199 207202459 16401960 593142359 317790347 887612495 980852885 39998252 168131204 504349665 16835379 321483413 183852444 254380701 766832115 5739018 200937865 62670714 7891964 574444079 526953858 68301905 669689622 201772698 200104414 934443231 321344376 859866177 544606453 953126974 402724615 976427279 175902347 706844118 920747371 953763732 249088662 279988889 771156433 769305889 569544757 975789600 599171985 878667646 232238827 619988966 462673324 619095200 174327356 97828784 453472302 529623519 134489297 635394051 135666481 575026366 301461241 831293516 417487077 15469853 970457695 476908102 100341147 40535499 302169418 820930897 245076051 339076173 181740875 232816316 264035270 48045526 195440248 218044629 474867497 924383259 565069669 918482502 35083545 456401815 685455263 449405399 630266794 681191778 511531275 822993927 566819930 390818772 387097769 112165847 470804742 863887453 896479498 51380458 147212959 963971798 658964444 231693138 851383636 5661417 536211667 165071084 540220612 524974508 976142640 758102725 437479049 658682542 631792030 930670768 757423695 582419150 473441994 464078515 60004452 59973207 401133664 385433170 862033540 384617473 843518886 540146991 800757637 748880161 593514026 477154482 791441640 706128997 446194041 936684544 99742450 67936470 797671656 528777896 560730814 457942379 949794122 119220699 75568310 480858447 915128190 44446628 208664155 856151782 248602503 127923075 973043195 565371351 77100663 63335423 682238127 426944930 763798208 34305571 118623266 319352144 700920671 525437442 332179401 252841234 878122499 790418984 818728822 650816734 817720908 487618216 444294028 52441897 758069860 444894571 643578995 21492918 759828185 575184625 228167683 756993312 20431456 265706672 148352606 19377851 580434844 949800737 774843264 750676971 863561054 835995158 245924553 764576324 670278423 991617775 266653027 568246651 781254749 434058132 259611688 129844965 993248565 328794858 277474935 127198202 526154379 614135891 670421188 553021089 252880838 729433621 846621922 33107552 950653652 671990404 706543024 637308718 87387888 911004836 851926890 339550382 168982467 599300905 813696652 807425652 364768316 91432246 164813100 24706465 635634975 81057357 443013349 517806029 656075339 615305500 806858404 45807091 331281159 818357403 64116211 699054307 147143466 109643237 595924422 558003133 990494714 768019031 558481548 86861098 489344435 768988676 78190400 155295814 3405425 367014301 831797312 476843491 653772304 350372283 58073512 754003681 260284427 964717715 809423251 85742520 534045711 425277526 579893533 627197041 615990082 60931994 660046290 758202870 109713438 152651283 473915163 614145254 134960454 832777823 61847412 520123482 176899726 27338297 328707745 869879606 410563545 270351049 907620051 468306219 929650254 280024463 660244557 228322085 178459846 233832493 47498409 858387802 970268017 356087921 621244734 756890341 832179663 899412680 261193224 738808271 393131626 136139260 303631588 135770223 680211206 697191306 87978548 250206530 546209714 494151108 24112817 2600657 364456559 62079055 581153938 724519379 895265521 293340930 8638495 378361276 774395281 381377107 404797665 696154878 909440033 42893233 99803534 885281102 136037985 762455554 358509989 760803119 618203752 159799801 414190667 374242418 906730346 747460471 804914668 964644591 105515649 255026596 339618264 890239744 654586200 62998169 690303167 942629081 61852292 65175790 877108085 240868275 188189611 983842648 249646180 986236485 727079290 603839546 476083117 573383047 864452404 393035972 961176761 508547762 841653467 934107994 777678752 202445121 185967407 575374137 175707565 446131297 333460743 104642177 9978468 78989457 741811808 90166898 777846993 911781208 661094661 844649737 26269058 111321117 974077224 280540398 363287367 360565774 538831351 79088286 24415714 481811189 438275883 576632092 973731237 75683513 172730534 510520157 711920301 952531818 822600378 129162610 144027833 634748734 521876143 584368606 840157952 906078775 348232170 147047237 59103162 453115295 530123206 618573048 332575564 98894874 861112102 340602568 514379536 129830812 272596134 471207286 654896870 775414587 830474957 104922988 997139055 250018048 616021921 866013485 206147485 889277835 678227244 65338952 810424166 995462123 656710274 24061930 511491512 270204704 766893354 244722062 969740289 39085966 480157677 830303375 248295413 823995715 604569582 842883964 164646625 843796337 889181068 595883058 698903938 29981954 638980925 421335145 752198702 153075174 332224137 547140706 627278924 196431413 456541399 886031061 568028672 618707899 788026235 778327784 649911422 765317736 468573343 312233957 696902426 43621603 507396506 906608223 562785383 596177121 23293520 249564594 243540301 309862487 274727138 32285943 839712013 27688 758844382 139029071 42894974 621911656 473386053 337188741 888367034 918980772 732502872 716650217 369361304 56675968 213304379 389177785 227347435 950940260 937110993 422828840 352172663 393985446 76609765 835866019 202763399 842896128 142223207 452433761 569481448 255006673 334265957 891153570 162920547 763137068 842521364 906845873 213617982 745018210 235233685 98462765 9474493 673878731 826176664 351401476 819542881 926551287 449821657 755696737 548419913 209512550 707223944 260275044 923730854 861756495 224446104 811987281 63149234 540130940 478382358 130311777 475523246 774936735 458443475 305218300 686117870 12081040 9249968 273844792 304180086 616231266 156675590 703094206 129373077 557885981 566868695 63439040 365860083 49295490 663292615 234884038 947755683 511780113 899867648 210855452 635122601 669084872 472609017 78473724 728490429 702868786 535349587 369795334 733255908 265402816 484013130 538682184 980749095 821539826 37984428 48169980 508447632 465833588 985055308 10609751 780020622 952649010 542907352 418884910 652664015 726769090 813983177 37535220 461459766 493051972 468946710 74035970 414443868 958501346 856449058 763058774 106290410 311227417 743617379 303306448 953685962 595874940 362017370 934790188 565379665 301840054 333542845 746261402 267141152 783859356 788763098 329302419 336901956 78849908 287039221 91582162 756238794 780483257 663948049 686908841 939819159 968499555 980541421 566660764 565391721 187250411 447497909 168186965 485844255 358304939 884120503 922856413 905298121 741249477 214431564 588053661 280319051 875473906 438785363 204802214 873974965 227680557 867383261 664553811 963854820 787603610 26191110 848916265 868254970 726376799 609542364 897234415 450802144 418234757 889194644 32868443 399309964 291537426 567620690 752451380 429272213 691129045 935159925 933965863 11100200 566624209 699216848 585917812 341763188 144812344 386637786 780689355 529627251 335977971 786266760 738077384 515493622 892393941 395036145 101825540 311356099 173439884 523960173 137093915 141506003 508904013 145940618 630722893 198713327 64819593 444181806 682123825 464244725 967079863 64375755 355029921 328193453 912989869 598856530 972887829 694408807 140485683 812592902 474383387 52375648 952376339 508102832 700793679 249373035 396362865 460623770 671178572 660398823 989468800 239880868 707272737 237721947 988363806 755953411 873193764 641247409 340766439 623568990 288184312 681496326 87751526 955528886 60755953 445492614 418512010 331555680 750563376 921358160 106755029 474856724 574861490 410199484 901852164 667192850 518247781 857841695 484493955 566982708 642339106 545967779 636646664 30871834 146888062 941663319 959581274 639802345 587151949 314184106 466693128 532823598 486069810 606844976 266381539 514589594 730905778 818551749 543484045 5821637 912351853 552071465 594957371 680248228 16296554 204461002 550771341 334827035 954396351 718749025 910041106 502406674 211370488 384339605 907033608 857095027 629176876 978549478 976312254 834686966 344848649 18345791 917980398 66984815 236339911 479110317 156876858 261993798 772181623 819238665 897389802 270525108 150466167 958068321 436465789 400203979 696777720 962841792 405940647 724128820 159531579 540852366 557757039 544047283 330320723 214031075 822020090 717247970 618731150 651950821 604051018 76237048 149319536 539544704 480458254 793176033 849179247 767905885 836705861 262217558 597248998 720581103 486711049 406107711 963782638 247857970 460654412 961448733 965951237 362496360 735291378 795665399 590420359 413257865 552485750 242362731 289832940 684220433 539004374 644765523 468930036 201991603 832430644 616969432 519353040 708550499 6372540 45896772 16478579 960833461 563210497 389644663 316083730 445807994 747156540 805272197 237512739 50108214 404842760 690528526 524695554 73883351 610978467 385184261 883741580 424706994 421828761 648639036 602258068 340704163 472506894 359263734 672238916 6101694 639075764 942436800 459856363 253404024 16404136 142529048 650375827 337407919 564206386 521789925 384297537 495876111 307224461 173295559 868668017 607254979 678860850 431449059 855781410 231604493 476373709 804565259 715927831 503496229 135586124 292621947 826373996 235887267 884250800 164791796 48537067 468026006 984156867 576064529 653565799 258298996 899538446 795247030 233611661 903888439 720907790 312627053 491307460 953194569 11488170 594753130 955148245 531477163 239190166 20168519 375404699 435850582 863554227 603579210 580030826 595838855 93566998 318419065 848153629 52724543 643488339 296900375 295896909 36209967 900853385 360646323 249735387 273357156 134943621 413002302 312621602 223637442 115712596 467930969 700731062 193332526 990494239 375947198 593731351 995318775 158917954 273242450 386555129 937878954 269440031 756692780 155116175 554214118 807202149 576579796 749087049 947241631 39627655 542023697 221151062 193151025 867324973 356664087 758265355 406778571 687348813 832740914 331862758 785385031 448732652 238370049 938788536 995740007 995397482 907065167 727502659 951468826 77126856 133292352 651486439 661959309 116370297 866410300 49388727 761232672 754530284 777944027 775473348 709770727 3789059 251175607 807751574 463170483 179877647 321975137 647327585 940284401 689008178 475818905 478853114 126183901 246872409 916964926 397472504 520060400 955269170 408057359 854432037 531726746 111010560 435374992 989454301 687116456 919570708 199010756 220143784 565108808 35422583 324208675 568335923 107540160 219211622 650745406 506810704 44666755 722571956 411198432 181849668 174096379 614336197 749826920 974972955 117183267 964369556 881006262 209510916 872235537 161809656 293832113 770687794 926490589 821595167 12345448 294524885 656633179 413223874 739028993 186924750 494678988 732131505 602112275 16952808 744059324 422868992 223439928 121876300 893809864 186697517 843087491 891300234 281707343 567683870 541485094 760738861 688260854 429794605 63863508 561225141 528408331 964524266 851427811 233454830 417183953 18313371 392799940 779798270 37914756 37916329 619820157 600170143 435140357 179987308 842555911 869332233 592002684 292310075 318931407 270984648 267092055 238300576 318477139 559957019 400834716 841664564 291620593 498621225 488466854 852183522 684557645 891981371 83823983 351817617 964456410 452355690 136721817 285282219 335511742 131864619 248452388 94236174 225806404 910536222 30259165 196126234 182839051 554203789 355816480 415891206 526392620 557570668 44715954 447190961 831939962 454198305 718616587 708537008 573928838 76602392 927775409 181278785 398201528 868215136 680122998 566617501 207910493 92573043 362315513 468164719 441512621 552069394 379162380 796729379 517930920 918834097 754111899 792105393 996782508 283171442 813666442 306936909 548723225 502835056 218359111 672612660 38946052 979123177 834902700 342537426 567642300 600064499 975712450 889154627 925321157 558425658 813296901 114699845 897965934 415762096 729274546 781933138 97588366 713426580 881406069 731762718 202006218 880072353 472286618 26937880 361957613 422202980 457954108 342429882 276121482 107434871 317359208 964697982 399514898 864651779 291156692 530363624 498013672 422277969 520741808 730058697 581667725 160450068 205793840 453188020 823003708 521825905 656552957 718198662 381731969 502182537 952272155 371038924 816446844 537822071 457688563 791698806 876283242 841180080 530659329 60564162 681285900 901228666 503678835 878466877 336763899 668404815 289951753 122986852 196183768 773182577 156069388 979365065 716137043 347785424 432992827 202830677 986302488 208494017 663957107 301705201 117420890 407739518 752692979 928089286 721503725 788083455 357371104 88588401 805180485 494592516 703893135 644187405 973387116 356435762 874831672 845847835 563585439 382928077 56650960 100975059 800983884 919682957 869832721 683449199 52448125 651754107 377490327 144849852 848816493 350660518 481415129 842411461 204104583 841719190 640275912 528606832 501371289 651107933 914161647 648637619 687294276 589569882 792039544 671967605 738138568 455920654 961856806 440923279 803178098 984203455 600245782 348093574 501372076 434176947 259425004 21364026 32470216 229386022 977659855 98918985 778290882 619609709 589480633 697552522 725238351 100373907 760635579 806448201 703174883 861400611 967187068 633951823 210278482 207535098 343510270 322195888 437645240 377912379 911214248 112327746 500114024 819979389 157262122 579132644 745760838 118983206 689932408 644769507 972704354 724769010 23903016 742147354 350569580 347995877 766797073 178098186 406266715 12391739 780230356 165892102 958499246 403166832 367908465 486479822 337843963 528496360 932180291 769042103 731241971 723555920 744687326 991107562 12150777 547189871 841664512 657659877 374128931 152267453 803548263 879938690 89280370 278969185 463972207 567291229 331783597 899583339 766953824 653117185 333209310 383005064 777375352 194523361 23018051 528404461 124554123 254030472 671536850 242973491 180709652 970867203 369549676 377141217 377657070 233042617 27470176 564360971 748793826 679516113 878701989 969253804 881324914 478096888 385691559 388544031 409070365 292015865 117554743 26893473 984201423 96878160 610830343 403985356 919573585 671411435 313149613 727201989 689262008 150272737 679935467 878384005 819635221 51234282 265057389 240911777 468518770 413630807 981690861 480218668 346537394 646398119 663119243 49339298 681735695 172630651 229015888 517977114 928332220 752783712 224754081 41171489 63282308 497224156 782594777 190658642 396136751 395990714 354989902 226104585 771042181 713744510 102561972 907123071 120607581 906649407 632394709 605805003 741440841 705761719 842576153 316689845 363103519 86910086 20196148 996288591 771857980 748727331 674803207 990214239 482371276 635753881 487068802 212620179 367556101 94687504 894200151 857522093 848751653 643653518 279833261 341700413 681152345 683828045 263501911 943771454 457645173 968375509 291931832 330854743 940245446 363452085 750332468 452485625 152374294 392030283 30645735 226909721 982055258 56470195 202148686 476628085 709966754 310731047 134378403 892003146 261462485 536890232 208532132 553780942 1080999 82980795 383814752 791231428 41154948 574652918 898534203 168074994 474151118 312620385 298932772 276200383 971937218 704976352 387609617 426148939 699651470 868501171 757820681 580612571 761413344 475141719 244565038 869768240 991212059 433232246 453533878 523232976 595319331 209078996 993116998 772234601 755836401 776414473 511098787 427056878 787329724 515454955 856248584 996905648 206304929 862174141 668993001 149513007 773707512 479636412 145110020 167179135 441779266 13037125 552655312 678613747 26994600 423836111 368898663 721676956 695477962 251418682 930883460 430448719 901286474 264000440 438909848 671161043 672168697 781422776 543976970 900290981 981024734 330528925 308391078 858070749 143396847 291939168 140428320 210565826 844078211 393505418 755223320 371736383 114214082 870101079 645320480 739560145 756508606 710723163 704618973 551362163 995127814 59298471 934330630 817142475 697689127 833543548 146461540 970211924 116354502 860276520 512145230 204809736 565223232 135432352 985240912 490244686 677409581 212427302 144270188 610844413 664965176 185878738 598950406 113508945 609900553 958257820 170338417 981783683 146253354 767373964 730017702 731597558 1720441 249456939 419519852 435808291 218349735 642249239 285405786 595637356 423021585 488508818 291207490 25621912 763195573 114812773 651365209 823103658 925048427 851447135 696564167 359421591 1750026 148225265 513954448 48041857 793255986 490237135 631693046 409775913 262209582 805506132 629825714 146881087 301122824 470886100 996593650 716110935 629625438 643702463 6344436 945951178 832923739 504714261 621296231 474889482 152933409 683887625 202676368 101205606 613977657 1941074 131959701 972725908 7640810 719193244 370584261 547431694 106893203 214713671 346620904 240575370 373259096 104282220 318635030 986739946 16792413 414333408 18614958 898057548 72878170 342426420 156648485 11200122 424260769 884707337 712331201 477147584 242548695 52524539 330421708 454792589 26975439 513787827 821277310 318601548 190939855 791344152 318007170 565511557 474178031 375745271 181417517 823070128 693966043 8603787 15335490 769199107 587340167 435010640 917083919 950923888 160199269 776120658 432493690 926439700 574926946 5222297 228168509 102160939 59116287 112255682 601029597 745762932 645599747 480575142 520213473 93240547 30694447 277704138 788702191 948342198 244944805 362879494 624426766 146672923 740867532 203103362 857948505 890701758 698225362 45232608 296133335 410873151 473338689 582785603 522648376 221826702 644619855 481253682 483183428 590031615 437893933 180084285 845316387 678793252 646787969 802914380 365259411 418685733 936371578 435966643 365001370 541649913 887461101 68787362 970732870 458345342 96734076 128286224 792791248 638268325 275539103 933928048 563642942 641279576 909669986 925312512 222189456 734722986 378194480 973301490 745306711 743481192 8115313 793800766 324155434 564513615 738366779 471080475 761380233 745258592 930975459 118738128 926560781 19066704 218096364 196784558 383341257 959426696 781415659 614106508 126541231 578276142 276580139 549974029 800359018 762408625 57164995 203687687 162365831 141824954 711243496 222628421 94245319 6026343 447820542 353039528 686270867 726148020 123940585 12306318 984186971 771433948 897520194 865491980 808059569 151464562 728834209 381471932 35141876 787219250 146414778 121701097 36284400 572907464 210364038 6536689 419575150 552298957 40221158 836578974 320924724 42226580 153499850 327857855 988633037 622800136 808956114 859706899 147914692 833388044 30534546 294796885 996868241 671307538 261089918 321613863 241887789 357533762 158978094 941143566 195915766 106084239 861964959 951857618 791594463 728362398 99048408 743663880 499209249 871322091 4498294 298594768 536198951 303627505 261223139 891255538 635798047 730512863 132413070 369598291 975875265 22537358 147250507 772156929 617899621 691072811 174104623 569555520 272483447 974448681 682920906 890787435 589957023 228055815 36483793 255445303 191640104 726674363 931850495 988513684 500401430 850530337 796498759 447430147 449798719 538504525 849018644 852135032 938149601 428265834 492809242 764476863 823014827 30661251 158068253 502517576 281720105 911135542 227960266 200828166 996814413 101964548 434099911 821379829 477381029 475479176 610083626 91213668 241116283 389681675 961364219 63371120 841446964 159781542 191093678 651369585 660414606 666395150 896517104 495368769 817178981 504752343 647433829 922768215 594421405 517134214 429718807 327272693 40327934 592879179 640778832 478104750 667365003 731353942 769972822 71213780 750355047 91569750 766687771 579815272 709026005 365391524 357183412 172729885 150646372 987908599 181301498 13614892 635424909 787033243 510359567 655581877 815706705 179307351 507386810 833635737 662759467 57825420 161841661 440327524 190005785 500004195 343797892 682869776 868310643 23873266 466682669 1349735 571142434 243237765 537518520 130038644 443332676 157281324 872331896 340308232 191420427 985361871 412194590 642319622 63772057 331323697 796880807 792535763 732828060 152889478 360048086 530123886 638587072 155490867 697553847 488727205 893175619 4905293 136743695 227282336 92265647 764600091 373556208 406945054 242302130 651415961 174390891 360564281 688657975 178887761 341604186 29568659 628749804 179000857 761056520 254000858 712933701 7458859 394506049 12864976 750840326 287390653 250964046 150029304 635379681 186394725 540375860 99055150 768099926 614670395 704662130 611298 833366869 640053849 424744286 437172717 186890521 804647438 862765023 34301624 441940523 908056555 51760360 615961396 122523808 225401094 501550594 557895941 924523565 986957801 304424359 855803258 559256099 527393747 277321123 259354677 151034977 823006748 341469856 301365682 86887833 422447745 943781029 469726998 745557118 827672434 398300441 215182016 870533036 668614191 846637665 480606158 329584308 996531410 661799332 72290729 492528707 67828368 703812192 478525422 289332262 626412027 394167071 504011658 268499405 985088455 249886873 441491007 209870255 870012717 768023332 521253333 549636422 900807119 558324402 727401466 713865968 165138182 667588163 122550517 903099209 124802525 95617210 776965525 370779268 261684309 15433923 322373290 275176975 31182308 389802047 779963867 650862779 828061712 226426496 629823336 776082157 822103286 913520299 728133086 264500880 333696269 132924466 113031430 852182490 689932450 593532768 389129837 217405476 273845085 165527550 693719365 230510306 948560095 154875399 73634491 921378946 390947520 47799023 356272906 201211151 120570666 769574208 785343696 615198001 901905841 609876424 15250989 269439015 988679422 565524861 23787276 7012154 547320529 306722911 26738873 502865113 411720490 369495316 586664457 204727471 769735970 581368752 284305553 510272068 199529013 260866076 5141418 869682915 273581371 816322180 655366518 220989754 307882869 991372617 136964952 880528568 299591652 11975401 240704481 247764930 662133256 913396898 278999129 205072992 342944423 751114421 104190525 341428170 875597291 166253257 271914291 576337772 859788494 534770759 192704216 577739018 432244290 460751169 280790749 27560434 641446 478855820 61330867 142747438 661778693 752832111 548041184 722263886 280430888 720953594 778057773 984003941 689718585 762092755 601475254 836986800 881768124 216206318 190549279 106712349 773915262 950997079 286317278 212439277 348153072 953058017 483367327 534238515 716357205 373626015 619751465 693346371 686186349 698025238 295922387 824951944 97094871 973160207 567674441 672007113 14839678 823475251 245293007 531121481 540960301 364587268 261264207 613444657 986489679 234329067 854931020 321316311 676619651 583182417 393243438 939900971 48700011 365286561 629437107 317447306 831315445 911354388 388653929 313083214 745346349 337996737 217197299 760482831 813398978 478254329 173679689 939617991 649288997 389207225 281678117 974012303 52464149 868964714 485462407 76003243 807706539 175361041 911862662 24869952 378805271 306275842 417954444 960259861 655973384 716948179 332123639 838051137 722914999 291256571 893366809 601895544 204966990 494541435 540295838 675087810 371555747 573761374 553468199 398466015 492760680 586309954 260570487 700633254 566683354 691305951 686966182 388475123 648085663 576843084 825473429 722906318 516934937 809827798 175668028 118032599 741119542 905049760 941304071 994750746 208721153 352755772 933723878 233883937 33477172 150763626 51700394 775320655 263786820 226826111 691503742 944876952 499671508 851938169 235936552 912765606 444717649 172492319 931453005 961013532 754478310 73297399 570725190 999525330 35990843 837281840 163848694 751316467 873604256 510889105 851596318 334283981 100669406 716951127 941065049 567583768 135775154 1306335 874771455 205837057 194400511 975659980 561498609 464419725 971262258 484736702 409574185 729328052 811419696 369786545 722487455 123375386 435928239 300312211 100790179 315664199 588226719 643048848 846837096 442845109 364034396 832745255 335173507 541101129 113684566 144324761 197758599 305882111 870183892 169398996 547679870 827412693 366943787 928585927 605757234 220870165 2745424 528401662 332637291 578813493 820188597 632536037 203120357 877341268 877364256 370161913 488355722 919868572 443249422 35641311 203922616 308788182 539112971 376745068 731507894 846341935 561184465 274329969 495031055 696942439 761785472 66774042 106988520 609553576 871203409 137359655 438927326 944693726 30593470 641692412 708798701 25398270 473530936 913420027 144527664 415593216 894803765 383621592 110010228 431299145 689150534 623634275 941180421 607603447 896618004 783247625 586026558 585401306 269262057 627005543 753823732 426690737 625031509 525584554 435588458 141146902 223294733 926127160 572921961 846221277 503618490 521219454 470122303 240894696 335462309 936463285 296603664 179944037 837375447 339542393 678123798 140450039 258412714 612090916 602741527 369552824 684435610 249470807 725190854 619048026 671392098 676441206 616600133 157757853 66076814 326367611 10289395 690791017 481989475 715128635 789052383 855255423 576168357 895551725 101108251 99295091 690804043 739730234 587356739 796553353 888452717 382479125 822674535 682959586 575461361 406989009 657057096 1468380 276793920 540760424 290921363 131347209 584361553 882918105 683816005 526535656 354061289 938053230 193344242 882521502 445414311 705567489 28557677 698200209 930535089 314224367 659788848 672881340 289807386 132257424 159613789 64199910 805522868 16148467 482320030 658430745 850929751 119211062 774107437 687712834 302737721 444607455 796034550 746979395 238013848 385296626 44787810 870632023 979173445 319221761 576696513 751511289 487029642 140758336 385080835 679211948 909825748 809816331 118499295 307480158 490432301 879814173 664137743 690404991 994663057 948580068 321820456 419524 771101242 31792678 887426141 914843237 268272205 20777278 461944490 189703445 424780577 834211200 161209382 493551876 413789444 860467948 971020825 290495697 810812498 69828326 407615745 374879787 78546992 863270063 24937902 740225421 366900935 378826834 708480304 371518150 694586640 618780256 676889346 490856843 484345287 87628736 185023075 638915075 380022802 470994858 408004934 356607434 670537551 460307082 368243131 328801043 444680730 82273320 584315091 530217972 859581681 684231198 475163762 615566024 463449 205729699 704395270 970657470 359683416 58657157 266929204 324701442 80679913 152671364 307982661 692303287 227739239 703361671 965155150 151375974 251635248 716734082 163362689 127194829 790349967 121312733 96144198 217854865 604682436 334363497 24190274 998126707 153170341 399550684 507685682 734439800 391972889 801526465 893096272 29780525 134325637 292165101 724130742 181495944 718159328 70434237 287182497 957122971 410169043 717786336 230034061 189450449 310423357 917878736 492082571 379270986 754529452 852572937 711450426 811942952 407423005 270207650 275243388 571240492 948171109 818042471 378752801 130623820 704153988 370242825 339966875 10317512 458239481 60087766 710745487 491290102 175550333 983986601 527838529 183180179 232379225 984497428 138826598 453513653 180792906 690184810 573185061 185267862 718408087 966316952 727565484 358840378 226518836 263531581 487063007 252887605 558728237 161139644 253884169 332265252 701965646 225259618 86738981 434589088 511751214 936081202 805910350 616704011 935017395 386437119 849165441 263018281 528056797 3043375 541470588 672844317 667995627 995650341 284751464 266977964 391997092 518793370 228441807 301472027 741736339 295411810 41781392 383181250 609657133 56771768 454585539 824301468 811329923 657623584 126875653 26878268 372869368 435448503 439058300 194379485 815910688 760828143 781619723 565746964 274268356 685036308 642367147 799818674 905206863 461519332 658026426 334982934 18908473 88122290 84809751 438512446 24396094 777483996 182243974 356885683 682170804 387524394 215651264 188617694 784500276 812868294 841731232 182630203 990144288 787849980 127919784 218880629 17549853 908139388 375521376 697196240 433199755 478440117 47195488 24521898 527670372 624371412 663679530 9635949 619827189 464379604 324056970 531254006 40216401 153521416 676387954 729620775 235314966 108007941 577472401 361345218 425108686 144471721 69815187 182273554 47871097 201639092 624428298 922889263 173473101 458776695 987094684 357308303 431331571 347509655 32524466 64743986 107299267 495331838 514648695 904849818 317234762 600889931 225333825 415440512 813756397 545301607 818749491 56062283 736056644 549873226 670146714 160651150 921062697 766490376 689967082 484207182 946964249 226419135 475312382 455894488 389743746 679918031 439706536 288900606 492998745 514957722 948550227 971335104 25469946 968134963 765635225 153493495 549454493 998319498 948283803 173424362 492085548 111089506 913860443 802651157 125911459 92923974 325090074 988424653 786778934 965227689 26978626 668175398 229462495 838387524 447060938 518735148 23688229 926416920 231138824 504548817 967387205 289213254 79374441 99132603 333219687 449650684 569682014 319785213 400807672 683158651 94899586 511227516 97176490 113361461 128201561 85034425 496221596 938834795 727387885 787344118 417887917 852208514 685863143 185221056 464934217 270007767 193826517 488546915 141789364 820227771 178206377 792219011 683771364 681145691 968710518 768406742 748118150 201264184 33956779 206511851 264130716 350392186 454594957 835525722 167859682 94947871 534614360 210538654 75902234 89464991 342180703 138406556 668780826 519094811 810697518 377369451 623522174 702694423 730382713 831443778 87581790 251748352 59304765 642673641 674548404 669123381 850956705 821761219 132568733 719690806 434026708 546437916 704396278 670351456 842302118 332561544 513312592 934235555 529530699 12084350 981163100 759014255 600921795 181762775 173272967 902157234 697296418 790083301 767836681 493369916 980553563 394121847 92081323 791177525 126291919 938186598 226682559 766237388 14659336 820278810 948886729 240557877 200144851 682689686 179433048 812437059 463017039 424833754 804180715 801645955 408082761 402246427 523426620 321023125 676757650 781574024 109399608 536735825 223400639 356271150 899870183 885626786 503210084 535815750 664722223 425204826 574333316 547207762 515603446 614596933 763043482 874788897 568678415 458127381 220458947 495135686 541817427 947665587 884791612 32834280 411418390 192812651 291327843 680989146 15711635 18799387 183920816 925753307 758087226 716419328 744084515 158792131 443434225 828402260 340443314 780764313 634285274 417193325 249063216 234251380 324091805 775541095 6589595 551162847 313983274 593672187 912523845 618280769 112690659 714386090 639301616 921878218 48774907 36381044 634212662 965777244 546987264 887400608 475724726 236079962 184617392 803056076 7572984 863325981 912617616 238368511 290639975 728791494 19930338 807716341 202027993 381260529 363836733 717523183 665314630 906672308 588289350 436974688 566340988 216526065 334201719 836529517 77909387 159356874 606650725 580988049 639219189 903115096 837580380 867549842 382799292 300864599 225396466 30284758 456681230 439278288 177919521 285490734 288675265 146380188 48210423 398759685 944821478 305005217 734465280 436013583 4102744 452885200 479449074 821469077 307051277 999806093 485049097 337517333 391856243 238965187 831916410 43196112 64474243 257104642 847347156 499215421 406227220 711538393 360506734 131469789 974417176 199995558 564842067 157750586 212640211 708599529 79810714 967441260 229102829 272507350 852538721 800709827 793394419 356917967 421661275 888223850 980626704 470836610 929999208 706180257 20677648 466284809 362898789 983147693 956932215 569102934 160111429 781104641 409729565 914855634 286784935 347748822 156191005 87493495 640731988 572989903 624111057 708659036 382083959 768404281 448920714 626664433 388482752 76769726 359114325 188620384 374703735 595367655 381429590 511367422 476022287 291089330 687958886 351711971 225570569 729795796 503425081 959923261 733380713 193975285 786342551 954533648 163595285 585930423 855032478 449574653 84391255 669121998 515780680 205504006 282961839 102080135 494592118 660014282 82392578 927109314 93610222 856580240 61948132 654202771 130394259 430036368 523176713 896148284 98018330 522469762 694026582 441398741 271065614 834375761 710078491 899435627 13651532 208736608 353102772 661737079 662488509 102266149 565231738 834272350 725266599 567055694 237633975 342422507 746549360 906130133 941153160 318709303 675376598 224532020 644953741 628915136 774494361 387045242 501007814 335784469 30455481 299631673 539640280 194544462 757524856 513897745 173086636 66986225 192309561 143907903 467203595 452907668 36599166 941665984 569911612 322010798 955943099 161824465 64819395 872114101 657451568 481363999 594495605 431647203 622836723 771229385 474840942 143007134 188960905 693103861 980419611 79728237 523763538 945567539 256424878 13308059 930622979 797791828 830010931 862813142 807381424 183909523 847766659 439626118 284313821 417024737 81371594 196951882 463254603 662205996 901488731 650442792 384276002 101102905 624903946 249460266 842831257 330579839 699331461 810822068 567364408 806836579 45723393 281763425 248222358 373892671 635285269 360532468 679304083 216296920 228647832 138663441 53843600 713355444 888828231 157161386 359666142 807366689 136343083 481739442 392352479 956027418 292898771 698099295 192639018 646599998 128160494 291519839 395178897 375661251 414739817 93583413 522681803 694168530 498153012 287209011 151517380 355469673 741270218 501326799 435236365 281593928 921586973 244611375 688248343 89985933 314580293 680571289 288309966 18250264 381673064 384098196 240229711 519710626 385455429 468797130 306257521 224160355 473491915 744162532 877015692 810985013 627909966 343011462 784055456 751434190 538669744 312682701 274034013 627485234 180603584 740054259 177942802 7066795 42259934 867446582 969733963 252853358 304467294 176158216 22938674 15246746 13016121 193454244 336152709 339494127 432212161 65214173 502439289 402079582 554666777 964891446 622039211 39568964 863311701 188975962 128517970 220323291 815553949 848732239 683242211 42378317 873565543 813547780 686065996 397739368 902619816 741251091 203660182 157795962 192680466 189988834 992121650 577594974 84613443 669224119 443448736 961869489 106246446 2402437 668356151 194901688 5766205 598090234 240439089 696684424 867123003 84035901 6026610 141916310 53060515 237509120 932063635 373163937 60118073 564985145 41261641 953781562 12352626 916322697 142309419 194782521 641655672 458686703 110343213 680447848 415776762 860803582 903893728 172762435 987873802 437616959 185277747 775913700 216718096 799276924 278204853 826090168 723635195 670740362 511402985 676587753 533890819 227621073 561326791 343749907 963710175 788144513 832631975 979888413 768256451 513302332 451878058 305858572 672911588 4536765 991082089 965675402 83193121 468306153 658018720 546401145 316159816 781231058 28732452 484505610 894833627 669538819 469037673 521729137 508511924 219703328 369227625 940851684 844479183 456065445 674859439 502907650 577098379 641569848 746514783 988997386 210806197 548595933 663774417 704451700 752694242 854261229 714269477 81250539 595195509 613485811 764543259 180182121 793259006 52756577 836567262 611439403 897125285 577631045 159962214 128561170 340783974 976636217 934409175 161915358 346371462 172208810 857780989 393551474 898766316 760216496 948312216 560044383 937186675 113546379 572862282 600177607 283974431 588930189 505499335 366699970 446920445 734681943 597394152 867460616 278911760 695879267 31822211 892206380 510282401 387995384 912200432 370090922 936451553 783836427 107909839 647651027 361416612 683373607 761286184 837209559 212156452 776882592 478702990 745252681 189002404 556955516 862208724 85416774 848309708 89508364 131470697 37373381 17772096 749184338 58244707 503517912 828207571 24906546 272319781 684274996 996759129 988069525 60902798 378100490 183821252 561856163 227383227 541668126 114912248 723084853 653187104 693897730 91299931 916361606 916151068 471433927 279902967 811799414 953856426 975390258 445474590 375054920 647627565 832804632 449847616 763886048 158458957 308158971 920587321 395617998 635937304 113512613 361836758 761599028 265549475 983032266 769259155 985145151 271309344 841572672 764389323 838948773 345753651 865184639 810489975 445053506 183056162 580132592 560145978 690629420 320473024 360726789 162585592 699986456 204690628 572258557 348024374 401568926 315126129 156933555 192915724 101561735 366458903 93858495 884531243 559160979 812592002 100048001 199205247 703838551 345745690 786923742 180424320 357246990 388387079 535836762 431536896 940000339 827810396 591276849 923564203 790577811 323835837 828129214 292055800 656304919 369267600 765118464 302132630 601783350 765731124 242952423 243641641 48732441 768746502 426405470 667855186 226883880 550020063 284526090 157651398 12664131 555979951 280833172 165656226 467091762 892699091 625044382 887675743 380102510 736922835 472600447 310854744 437348045 338678990 336017993 307303416 452990848 474193645 576559080 708977588 240071015 113352093 985419916 130663542 284986355 186425311 248895670 743823774 656779310 368431380 420696246 941050116 732875020 763512436 43737487 730405563 441746142 341604766 250483838 850204978 323536139 553431791 666734576 414686567 248059440 747314931 731188515 274612423 840916676 392136575 516303171 204118729 871928638 596040528 264438828 570787143 650121461 181354611 241346369 262701468 707887529 809444987 643614433 815906076 51198301 832134322 403308998 345743179 458667412 997833755 794553258 715889050 469068172 79955728 503070998 726577923 568340341 797900668 528804047 955592091 679126159 600237208 563161879 174078325 150681181 791341267 650005664 453453828 922847104 992560921 736595646 495724375 270567815 760899455 935952562 145827083 890110348 3337526 216802718 88954337 992970704 964356934 751932027 267717099 862469259 462968539 327708846 679909971 65433194 694342528 362381804 565905286 108670181 785540826 82434167 594173226 585432275 69149589 799376303 278687557 97999753 600288622 390441046 413638922 886998199 352976004 242228478 590410902 858248828 39749697 455981339 330904210 404750990 293244173 372035039 795123463 46099119 692245586 756531625 288652760 977922302 458662917 128929840 956818279 320677340 959590436 294657028 919320017 258251281 368780081 871972711 415510257 719740813 5052056 954802636 102214495 448496920 717911579 734688982 986795225 636240974 59757350 132284398 554934544 333789688 596643079 270573731 536949706 389515603 125079713 446842992 581762933 254588094 199463150 691879567 733349521 818401609 884209118 257794926 162578786 777786594 188946073 862051708 624466008 330220279 998582812 444264788 423555211 367574436 937642431 651385036 181340412 198725872 186228723 880614651 370153206 744562575 656563008 497456237 583535424 986618155 136220806 381070202 868549690 810421306 184943287 212421636 786137217 919394334 180184574 883037662 429917485 688524128 40748282 172783780 361637153 304765787 281268769 749602771 241310220 292595373 194725235 982098495 100091920 639105714 938911922 603468329 550758215 720228207 654980669 46334782 900021742 903937219 247446335 462353661 492318013 356805317 742659826 764915817 148092349 589926010 78092162 542888490 595420126 345557394 395193633 487406720 565971800 725954705 758172104 879856196 140924156 577303097 951434558 965018805 648291271 248041634 128518531 591329388 799470875 724802350 904264432 497513215 928573997 442151767 532386198 351663641 439427048 28570829 307907795 497461453 760874152 379898979 61202936 548534931 801776890 256822483 374422517 586787411 139123546 887855379 636888455 585723412 382280021 360237832 958823271 43886054 46297480 815803092 180257214 181643914 111336986 787033196 760931479 927781185 611765421 548568392 635229792 678683007 42169311 896826237 309118666 204711376 503188330 734639050 912795250 886713870 503880731 807515304 439628266 655797175 762319649 652707168 912517992 958898935 295202679 491022127 681252206 417202361 991057859 34160744 665871203 363351919 800326236 540221873 463036433 589299698 894939335 145521616 94714612 281261916 634564480 567498617 425253710 151385729 997719437 524593 235945169 690537918 122151516 423739839 245212265 617897384 217751772 891940572 635113281 211153979 718720353 3000969 912939305 842812631 954611673 776848402 406838035 469869533 833169963 800103148 968138569 583264245 720799061 621369912 820979616 937470958 756189073 188587148 75367542 761996168 39151561 658996702 382560490 21855880 631844059 661289132 823570981 358574454 185651755 149875371 631823139 610211683 837895278 496121904 325478451 208261587 320352874 753544231 436062671 562187476 780341951 158053323 947799572 885254078 639127170 159286178 745259317 123435053 747437004 527781623 38262575 316099332 305847019 150858850 295349828 489286089 99286488 948600837 338248103 350572741 962841724 596767599 30120219 985666208 227147786 793833017 664319249 726241078 42326391 597490920 802489897 803635771 426285411 510554827 999307894 270201694 841342968 70989193 467710745 715825929 96650329 521042057 793435094 389045504 550550923 532219392 377987754 191682201 879263604 318406730 864827466 19737403 835007331 151725401 462733350 3738079 81206255 814631111 810498484 591145648 57441836 7301310 179896041 439369902 414794084 686331460 419322885 712650633 31191872 577658455 370052283 895656497 776191642 512816804 219091757 627076852 299562622 559598472 989440089 734319874 965422746 58652192 48114406 990433184 72761047 540757304 667727598 44662437 15821620 828051513 812296576 943285476 868144472 789069154 443604320 384262111 10181603 41491745 386706658 38820662 413271271 369335253 875092800 606982734 559694110 85125400 777988800 156022437 285719452 657104984 95435401 950299786 193793929 469269395 170262664 740690842 773622363 961862681 867336671 193293445 939996252 583309626 978824 501891712 423696026 390418137 8684506 936342024 507509180 259348987 570108877 412248046 188024866 494326982 568383517 940620196 955792257 135450535 953992849 878808358 70922715 648467917 369672583 383460767 759454330 487569133 682404710 75323792 989610214 787247054 644354279 221817398 886957844 559389530 879557799 694590909 152758558 599734242 704779909 249779862 119379986 569751076 431721483 402280524 613664612 799983768 461642897 912429336 418953628 933784499 205306480 669008705 723206985 852892142 937560541 579040751 559076891 796934353 160043115 382131025 828668223 530749283 257422514 344895741 275717213 530719160 951500167 160282126 143583267 359809184 11685994 642189033 54340599 862918583 469455014 822249706 109493287 308554221 604681824 763117277 460385676 481662694 478199029 792306266 984180677 663774786 90371707 19728054 215349645 445428198 362160891 307589499 620342670 883418552 972484579 334307826 208900251 565045623 134849194 345828152 562139831 828854810 45935934 970052220 907349506 954587244 265633683 632930368 12767132 174773333 712466650 179085152 373187209 165550174 936165617 366861057 116202110 369520634 701907904 300915957 387676254 146056074 666451164 1204395 751099294 540424129 354360247 759962666 572978054 232814326 21982529 958970718 868858230 499402155 10215913 859749542 266778668 52280366 699992098 95937453 914374869 384650880 612984037 587422206 810716094 902030534 827982428 915908639 811340085 792633393 458862113 462544886 609153010 102109405 714610781 639406694 390154609 607302581 536508210 317726389 968669819 46414007 809172110 955455560 347301629 192594474 345616867 82361429 944459352 225548958 549196487 149747889 998777207 858686180 215525772 868917014 332279715 56221664 382918518 953520112 129870937 718426332 762499027 118866420 732952726 838889727 517152262 920131263 850455754 733363044 682825022 490114386 167411883 994863621 325089973 504232160 790498700 887426957 365070826 516932938 748134135 55176297 631749760 276760804 760698060 390247993 972115389 503379182 308523562 711712359 166913913 781339794 720481779 180294143 855871668 69667222 760476686 609484589 188847423 519287084 105367800 493930284 325754149 635133903 497047664 878953970 828949246 189477572 599343160 413111314 773496431 206568591 302182983 149028222 616720862 105452400 600713774 649928406 940544684 371763497 752655287 371401190 476563648 366419408 837851306 690733985 890392754 495070292 598182783 751756949 270478154 774657424 629498992 474002465 741340395 4199546 61306570 405415529 385855045 12772181 210354492 811887156 243424012 115956525 450085212 301306611 946625129 381659131 928148959 146275356 471473613 619986058 712024740 990581309 674951227 431741390 14526583 799411087 25848178 901118322 284217787 939585085 594558293 524441878 147091248 150156908 901445598 448361325 552644441 543340888 849465031 534494114 177863797 883591242 623166462 775953480 240523232 510470059 803208361 990968800 890979226 751809302 996588941 464552750 282975629 692997196 650588662 262025236 693417225 840131045 968038868 323912008 395323904 873496202 935302271 696311765 646423020 861627167 729759194 517175914 635125025 792685706 45708540 828792626 79730929 52382006 162838049 377720819 80358106 505590598 64483556 373973657 492119017 949997967 460197016 820935405 554513654 623591557 919098529 622471961 648351811 192263911 787550376 306493524 974003858 729061584 339012794 283618201 585430217 777764610 410792645 29946296 177936610 172765382 372336475 797853180 357152294 438599251 845719280 935929034 970438475 625834384 102068588 717866121 918774913 325057699 684827030 729440959 14873049 650719165 135658149 650716374 857632885 196817064 188915436 438811031 824047972 526978156 456062698 899757298 784726622 810963864 290395611 667388444 698293234 254834719 961790017 436273767 759171027 296266597 254380536 396651525 932856689 485037657 307731098 740866664 726333251 828888209 985620261 890007891 62781069 481504612 771419847 544574815 299580413 160107987 29847383 389554347 482956860 539450164 396249864 469545693 739277928 5320687 755207497 919875377 883762812 974638233 338265190 21844827 113138693 111344524 537068344 990361358 269108103 468397208 2702128 501597171 405870568 62966885 30573081 503073485 939542344 168744378 844351851 716348045 856724361 588843211 785161258 681735120 366645170 824644676 87145200 204654814 880777564 849787731 950075469 224033720 264682305 387742119 721110567 429972864 132943678 723398135 459041556 617716923 752276707 65869767 993467054 15503823 830604558 74695450 254790481 801298647 251045980 95581721 380729948 604840495 504672040 244477188 467974623 52329857 741558119 117038118 75910297 921293671 405316960 960904163 944983860 678198748 407899924 403156963 212419252 54308863 720707262 175074023 878516202 307849919 422930816 886582769 111538045 230692713 117147197 971896739 442658964 413900096 23927148 665328420 265946899 62706973 876545762 249553502 625091449 807371339 663633582 226876428 564949856 286784927 485043889 180773255 501278167 882696558 165913667 327402503 694241309 266772409 435332622 388186492 837295729 44720599 702507433 561228677 519920439 453282542 616240196 270947046 363370678 578023683 256083931 181712110 291944924 306907436 422133625 388815864 618682035 115552191 934506348 429554682 252186303 934609559 218384216 957892553 362442417 723363345 942165974 967428184 762015812 806154357 541748602 977409164 438730095 832930461 138538388 255208185 893478542 10643711 92968402 832870293 480807330 969832795 624037353 396263090 574904749 1651773 75028374 320811797 773428437 604508664 568700355 85071935 95176489 736171784 735541775 850794125 571955807 457112786 591755751 850780580 127056571 754803597 156358464 555907403 837136956 947627098 917289700 144657867 382055602 21102525 162844987 60518676 562044351 475238389 666731202 749595071 353945491 954419170 468185002 248019572 618481139 9114652 664650311 571347093 298129770 95041719 155262960 325098122 323351190 438669250 291353423 940382266 417067181 349093605 587553766 266816120 616711225 895093182 801335762 192310537 476557789 604362834 40085014 370037203 557643984 714109218 39488938 118191628 75989848 789368038 45081761 380404223 17977727 21589348 980450285 181643839 805774713 221064490 360552709 49075799 991545778 874743482 762218933 967418056 538109560 64619714 234659188 12260690 719581962 397579591 683962571 469203861 686474877 252253687 430682267 410102761 999097309 872733388 947295083 354332449 965506427 749715657 558764227 989974983 73137466 684223937 116881325 468039103 695266950 13286763 687905443 271810960 369600389 293035370 147786747 439778833 427504880 873620414 737133081 130204950 23060080 101372241 169551313 811302838 211794772 978009976 589133821 765249807 442453577 505170728 477286886 572333597 654307208 598699643 491829870 764978742 453246842 680302671 307266548 261857910 436374248 158366436 391010228 238643196 79811742 466656419 675516254 79620126 433310794 477704439 40743003 796091482 775351252 269046288 115402147 482894297 269189714 493358690 488685731 557233580 398093492 781782080 369743838 423487594 248353023 418746141 476401978 811806531 671306585 844672464 884753182 817591341 130513048 211863748 919150288 944607362 821020419 678927537 471024997 383302336 906948241 184765273 753999357 380522275 149306112 675527631 897376264 529617232 716377145 182388169 514193690 856200524 65943471 825069097 810869547 295297043 777202289 129969971 913467441 34656259 309584128 318819627 799241300 282617546 323545529 548355019 394541825 485958724 506954244 743337392 173495848 754799365 231864321 741346682 326400628 29004250 93267358 334214806 727786106 850391245 629899173 843548938 906945715 292763726 714398753 108488600 199163954 625291446 834534735 765919741 580915176 132491065 984441082 841564305 552471752 356231441 143882957 407137320 652812257 277826789 347486889 24062384 102836405 487363214 623046917 872249902 716223836 6275343 898728579 298913074 70559923 281807887 971473845 140573576 377251181 477023442 673743565 337214694 175517856 839576439 182785126 572758963 201768891 118007927 799404408 573743666 877847389 118435742 72392851 605187010 847513848 587481346 795786946 712505023 649431275 402064207 790946666 361857577 752132954 444664025 763701445 886936063 976497653 746188170 304793116 436508206 272160427 818991892 216545102 297091371 947346774 882651794 87429715 108109159 788945437 215155862 321133251 389917122 870288132 754650111 391842418 410934308 721494166 727875655 482880352 524687505 326443468 555381006 57757596 937191350 827517 605707841 106679921 701238307 609954157 527177508 322427873 25842521 605577096 884732096 326859900 699033482 348098615 6347085 594730911 913613204 796297711 169844635 721846040 900991229 834819097 597654403 470734600 955173810 936055471 245405469 436860539 438197170 260062864 102057514 376612420 939510751 239290039 699092699 197326208 458107298 145677683 732327413 294814322 189306669 825124154 162404889 199688836 728111700 152637029 749484990 521914948 940283660 871974690 29757516 485568166 183994944 344508592 187517944 560660022 476043918 595918514 12392787 68816920 35007205 343090594 842566700 713649089 551539738 382663117 467716201 505256952 844689599 20377311 952332258 426809115 449011869 94376972 258890692 554845516 514483195 414837686 520206822 23167526 542299609 957646414 684255188 713298272 819239829 914282561 66767782 862629755 734041210 894251826 93268772 974899423 56075466 484535243 291269046 230982674 812413713 138192787 193319487 515739155 609274539 996546639 788844448 488443150 572202263 789008751 604058010 241983126 534179781 17156054 395159571 656642714 100819374 417688667 989787345 568376199 238771769 554768602 559805666 60311588 372226323 733556542 910186520 431676835 818881859 322598856 405887294 653211870 986115986 927002793 999047721 101634737 249260125 619938689 331639735 994850216 839215461 605963334 322053971 415417198 853270521 924032017 752008113 269575327 669680771 322922284 615781379 955974019 508169101 589957895 256956194 213473177 127424315 437734400 117306502 964524871 990036125 542153475 217364051 21359644 123262383 106632930 405651548 700495500 346869417 277364604 70013474 795483365 243858252 835873634 57900688 45829191 929854447 866176627 550470599 570853032 836830673 641252100 884782836 908842630 833980263 964150992 57579007 19512112 552272653 531909039 907020105 216583065 106178292 321690990 140449843 784104204 823023547 515432511 1550593 167257924 927456089 182481585 357413756 617725380 487806370 658768319 253501953 778425866 872689835 469259991 153116533 809548114 329709315 149965236 354552302 847515610 36438788 678126487 471145639 957622080 382720899 334633542 799836811 221746953 380330772 755574838 769271586 848954858 106205553 40617681 243630372 629980808 335113391 646719229 896155837 1336899 78151868 809824923 933313371 702695091 90734851 410488022 120264270 44457102 703483732 741108622 421529326 161201386 210442374 502003071 8159842 523137673 797776564 278895900 520396025 646371720 743040507 175789833 487044753 33394428 799827756 746709940 318674638 372209074 155857746 863359939 696502784 576003471 436305166 277626903 223507514 908180432 746959545 658232470 290845211 78593834 715729862 147139171 575354190 200554900 139581687 423676988 794452020 231929317 601774074 607856441 837585300 115650635 823747427 236825775 858810267 937976578 730790063 567910052 542194228 774435416 424172018 148990765 193621244 262995489 410683464 981739946 637062484 851121140 198378966 82060155 344231195 475969843 151722355 933226903 119421723 580599692 538804476 142304364 865580652 729889970 969842694 621194257 266275428 467554592 242536587 414336443 143981061 782864266 303458510 901181685 551621047 974259204 407249813 412373551 658588236 57582637 650049031 623133743 940053232 87166170 947228697 220814723 955876568 872523501 847737408 738912982 874419442 399287986 625614204 403198514 439386466 327372051 813977588 211612498 468618298 497513495 732799438 719771506 371411173 410595982 756178150 377215061 608295609 380762925 895429279 131315350 548057257 503242778 650598237 762510394 301087729 372990816 203200775 200414997 976322421 764620747 846418862 636879054 253136636 876687607 887223168 456866098 779410233 424528918 943178796 59689832 508486356 166374660 797323625 566217841 958513354 748351802 14353689 582619369 824955839 35102570 17408592 532427231 863686006 151372265 24588 339696057 661455312 191949340 228946544 31235932 663016390 855519194 398350415 184458161 513841492 847765928 809127283 507078703 808506062 590782375 746398432 652028036 354509412 290303749 542727016 829873112 852438570 2273690 593374357 927863653 741451941 227361883 542808857 936159744 885856109 173641147 730549560 686124912 484076159 112035020 571469856 115186082 864920994 946258010 972530359 236955205 349200205 775522476 569260614 921441109 568015730 494434439 228548109 67841457 726313441 687251968 749202651 208784354 242189835 780138571 766720281 610296208 652851673 747713626 22881744 581132860 798017 437863896 362484568 931687945 881404112 100973805 840977713 54231721 110548410 329832220 598896740 115618533 291730800 151693670 935388698 413151579 501747287 834576583 588813699 328128615 384832556 313164106 383543919 409588431 442493120 991918278 45273876 462497922 139903107 28510199 591316088 788980515 943693270 745224427 336555106 226297925 393356019 230250321 22764453 622251855 671458955 807259285 306960389 218446722 712703354 124874946 2882250 83582067 656419480 163450095 850293462 60114893 829666898 898455189 941756479 113898320 297948022 868725161 297393842 712192009 619438070 105159351 618301152 462607387 85461175 866158209 874374483 100773157 361228110 58729402 255809365 497171875 431911879 92108405 523954004 189644804 121982922 887224231 151561814 438392392 610362641 10714898 136080011 442182920 147323549 547204400 960852550 87105862 444402159 4531072 286838550 76400723 388889806 681895427 766927000 369273086 554308988 533928978 239372395 245204324 750124583 708083158 349475644 420264688 732878235 459404792 107414911 456082980 721344187 734917483 960065397 980807395 240145225 327582895 220674888 974668724 940952388 929630086 6883297 225486980 20269921 647790721 519114909 514109845 986181233 226485407 193072693 388913890 152351404 52522 17100493 282681930 421055735 940511519 569745066 928611735 942267294 617649008 836658250 421666988 435225987 534678880 643792613 389433069 569393472 403469526 130378604 786720332 490638271 971272609 933179511 760403832 285942342 284621534 205691091 264851866 182163741 759646610 643954628 768484443 274703097 825149318 618001868 324312263 721851149 740686591 854833002 161127937 92114919 965287526 638647030 173339967 254957870 573968979 21393650 289811313 920950812 209378854 317822173 945346451 976756864 37265857 681385100 469606834 936731990 424628648 406686919 851898621 729013927 507835592 394459853 90170813 752539820 613150902 137630899 582402419 517006620 368248008 605993573 131353105 945453220 432619327 338474708 900403048 571959510 133669019 639261452 47153678 990712833 640469343 514864191 637094351 976213232 228413933 478390015 491602750 719798909 435582859 168440662 986827052 527172246 148858444 401535332 70811586 871276725 906510069 358316991 375405916 143419078 923685902 649828276 69865469 428631525 816278420 816258256 401855262 143537119 478591987 759705054 559960671 917443068 326050230 770432464 299173873 848843838 507621505 806841715 337143058 68971546 186026515 795507387 396218450 711687357 605524928 776752750 23303015 712247910 703140835 216398370 762767655 988621339 169989887 161523518 880996699 946004024 119455301 986030189 84515809 894210168 547843915 62155748 759046880 942628859 309479771 254020175 458655058 333317297 190209570 37935216 432460125 353686391 761240670 10655223 555137151 895409176 264772814 286147683 802267589 108908803 497129002 680744349 528278898 123282996 724602070 352436182 183943156 353395283 619886487 983259958 103485752 733969152 835506321 987132143 225591424 269635581 421454956 518144371 899569310 102806619 149713412 584089067 856159005 208508353 802911120 452182256 82846680 49359918 605224360 842396797 559311099 260747961 353493459 350540079 446404142 144236865 532611669 943715743 353996410 57890161 607044049 40558890 740255734 582666636 889651777 498194620 833379608 101546185 496991306 272529245 407302587 81005458 298337144 316155106 762388844 215492949 440060714 373067795 438230298 647296510 202946252 734937662 21562255 847820282 240706198 969580149 484410209 193647656 170655721 935047318 656212275 922586918 820197549 877027576 445382013 140021191 127486031 563075989 580549709 823344178 682200647 218436690 239421797 148757350 584946019 669588889 487550253 899578633 673741781 406862954 575936894 101005263 999185924 934002531 823224585 154311251 203286543 643921260 985769960 586852300 343730497 767231091 547536464 600442664 284787162 751939797 737006680 164904683 630101147 9427785 647269391 581676644 851264801 213735575 241147680 431481251 280080301 988815393 660589155 33165498 461688318 722483008 329057301 811778578 830101820 737853542 817192751 430822452 593810291 10939090 235847134 4198116 998644898 589311377 655866534 65785088 600347846 407016893 234331158 73426918 149287377 858762578 309759731 897068345 633377933 250494868 489611210 626674963 658958540 834648763 570180491 425418027 595162381 408657667 652103293 106635872 176224002 784244295 190306024 988956690 65956219 961601235 162799677 161690429 79282248 525957050 471681973 631247851 999462011 774893838 124299808 735255433 45773198 84513188 686292526 850203026 117250615 248527781 59116252 706514934 640358113 92909956 672768977 49333553 224563109 980084746 810737690 544192782 991236706 401576348 472621504 259372197 831136004 775267535 532884072 709436408 581067146 24078643 427879880 646137418 400184524 17502420 280001753 840595599 872676773 473210403 664639713 268312214 933302631 625316794 818428910 332755755 490031600 540713774 362970884 177880897 777477940 893687906 953351054 935864887 891778743 164380374 443531012 884046240 413848979 969516323 89701924 993570786 872236683 120651534 464876357 5254252 881882976 259619490 462865676 277655473 60014521 364143359 527246300 665439255 948050153 897046462 709486800 818288632 537190566 95496814 110249782 716779066 820152177 458849804 721648667 443396488 232793272 691877390 975210572 475664421 30513216 332228118 504437945 812712690 349656882 311693760 580048027 499543339 768521569 320622432 588579919 775538862 820701598 505191011 32783711 128282744 925222675 52904147 248848641 610249958 939666820 978187037 725146303 918783586 912049850 71809129 568256901 411723402 58773153 623427583 380024467 3119646 276439946 706334446 888586401 645180995 288798260 630894789 612995152 337775801 77790921 945464368 19267883 563581342 776890718 733350784 415108061 835584297 941274006 408888163 215171885 652582138 983795528 131606445 435182882 942938615 762732865 676301723 967744200 773387854 819250249 962513526 967209527 306230159 205289796 625857356 461924648 105654157 530360619 251348987 90849834 868420332 801887071 336767339 147352662 870710215 7857904 986953369 946824884 421826732 302074885 337704581 950387669 484659822 258148027 904645079 110710525 951767461 307400889 856447164 245266132 812229753 653399894 739586883 491196743 524828751 530070674 978745073 547887099 938926739 359409502 228584000 735559530 488768006 721111442 597823841 666501527 567802104 62860333 423152294 697361321 949143808 416090655 861337659 283717814 98717230 620638539 961422868 19222282 895264346 461339980 859625485 670034203 566794192 463664889 579949362 590933484 762629141 425442387 14438893 711679077 215418183 77662508 970880191 901487845 937953692 429177571 373075133 737126514 110093920 528459027 596005344 461384506 827537215 171265002 548134384 891995190 244074554 674500083 68994378 237267755 386429574 661512953 695167106 423566230 265614749 463234803 325756090 195140027 125955353 790615681 115294969 514386039 31754808 952656974 607382390 900441803 639805902 607785864 802821960 913337989 382014911 800693733 600527174 385561792 175659382 409716091 879395391 640243948 377838279 417534940 438095135 787913949 737575121 92094334 419080215 901446293 108234008 583516903 895975276 465613589 470588213 613938146 627038047 259588813 531229102 299735088 753888806 588576190 897237440 713883742 656904804 643789924 82576464 496216691 1658407 389759642 464080059 810846075 376430885 865669495 887498777 820974897 297918386 942653757 918216134 222922007 783851841 480697302 890385981 670223712 97825411 669085549 113933343 602250144 683776353 983665357 936813724 873029039 491771631 308408823 78776868 974578833 447536349 500036070 550608764 545385481 831702642 11278999 750225915 21700853 906855220 477777072 232559425 975153752 340967889 503085637 841670574 143431900 144998941 579645651 343743842 159178101 775912555 820541430 390479583 900439251 500042126 40616776 540335572 741963297 752852761 352400983 335326589 331894078 701308241 106996853 122762951 618743686 58642831 6982126 717134917 287648870 51258740 621194130 808762901 553904324 684970598 821458376 637511077 486772967 261320069 916391962 458010882 44648486 181260807 579742064 154532916 952496369 29269948 877083920 981962797 623807127 697136904 930590108 416286042 263865162 860473149 714962357 404661969 638053273 859021239 864378747 138806421 297867186 760854345 773470579 309406577 454889602 327257389 470949533 95907668 634623830 518985636 533257428 730696931 701852700 761518702 365042659 113458202 1938217 876679147 102876789 5792269 604854235 267442959 151283353 806484967 475344212 866018133 721981487 721209885 670484385 678808146 151859308 832995788 18356347 92918868 687543252 394200962 305623653 606287773 567816355 795826131 480209581 307353841 426708150 197997511 893580949 782861832 489362470 213560128 59225048 824617920 549054247 918178138 878877603 358885767 874574214 673116819 353978443 229742795 773093606 622673425 67687315 396478232 922307164 182652871 174363128 809312684 89612013 200293503 110768933 908557634 940482254 178365676 956174426 565648909 756034180 996313369 61007525 498211361 671931380 52452621 485065238 965971542 61442668 486759478 937238503 641287815 307942868 149586210 714733837 31761379 339168633 743642834 867826833 255567535 773003777 879013377 287653919 289776147 154927413 645617229 82375407 150911192 579896634 947167594 569936310 400319616 848345772 414159542 535745113 378308511 596502366 468576158 891729501 608393990 740624784 557701188 917460026 361897941 573470717 82685497 595474973 287259711 454696372 62902928 799413969 139470082 427105820 569774523 387055094 996979391 159418648 235607657 731949631 294577573 794004961 115693719 690180537 878180848 414913025 897723115 667086260 254188316 319679825 479363645 471288432 601008004 152872391 15971416 884971508 807119568 738109275 53173287 714261862 689039078 268855931 76494490 131844347 52518618 849486031 692936712 757932541 70012136 77682581 915313393 329987952 456802773 517313784 918121788 832592697 867365445 206350392 80516343 793337389 954002178 900446368 354880123 490819390 387932969 782577601 125127661 788201536 430969386 210578526 909952577 377621250 527169147 305067590 860017894 709343976 609599760 226352696 39970781 30819103 233350123 655192276 185607215 596944523 565771407 85319602 802828666 514711970 977927272 487251095 237159430 577412810 233129069 593995538 281685718 767047793 746434980 625199521 335407773 849436389 989800673 808003218 47210911 176453298 153780110 166232375 739630344 913289941 347510512 317977140 208763560 557366614 882144320 4012892 792006658 346294962 585553063 459268401 381845298 73277699 803624594 234870544 446445994 336682401 972184663 695508447 879519719 590479796 665286345 969107764 597831708 69445210 86730449 417463006 990106300 37568246 652313261 487374012 954017934 359685581 249410258 735890707 626984830 895553499 118312394 157991975 518424436 441678603 207669751 550036699 719280739 593493843 985525274 220517071 917964604 952029794 450750745 811660302 137957428 356945677 984824180 462654809 992587937 839700932 234291244 172407158 699152448 254050248 940184706 827593296 28990862 212258612 441625770 391355608 542977304 993184570 111608266 983624875 95921675 519531385 249190581 553864660 852503329 610764338 182002042 337606148 309114947 689212891 796655907 435949921 307502668 506592719 856158299 990366519 579839437 127074204 495946497 456804412 790258409 112340411 555757135 885568869 764605277 249057093 762887762 21953741 359321869 994098002 346998949 813308607 292744864 488483993 310631329 981773092 995894295 440968775 880278781 511107222 265223856 833598143 130526733 192939191 951104547 810991399 429228504 83783860 298321200 572156610 63811594 653764568 641491652 761352128 471718227 227473535 558790233 297144293 111854192 978937251 942971313 115913727 481333501 273869072 456690372 736085305 541768693 864132365 152229866 40159237 124322308 850311235 741813095 263914784 823004357 822646253 212461790 940928692 571338827 44855926 470453969 357658108 574059419 75291572 402568587 225632707 869469788 462059229 453479716 638437676 937349286 848257259 663868163 845562232 506643183 488013964 13163046 755335184 262159697 317912309 788776690 506296914 288342102 326694792 579303715 565615709 955011427 727323778 449132689 505801252 993004496 602802745 690978938 213503244 749048319 498965129 329310215 396778205 486085963 264018070 14308376 712174420 899176123 660741543 192571374 427303146 163419954 11118400 498296172 538322596 683462770 83642704 658949213 543388700 217934160 645804912 116993820 846171506 123004495 359465800 197923364 527116210 840617714 161615429 809106297 187537619 204442652 175984328 25754706 184233746 207216580 287910620 330464472 650999067 208743674 753740886 878811636 615591151 277750505 293801373 840384276 508087114 946878436 719872534 964967527 429437594 780989375 115337784 925067558 563850731 822142173 842618918 217079772 848680306 175411474 500033587 382148429 642035679 806515584 616442978 280972554 417694461 3373329 972228159 798099004 646587037 970046857 389722980 145290251 76642107 560048997 207459994 963379208 5611003 652083801 491290658 162063847 923339684 482136177 952465701 158111648 5229270 779331856 617359368 961120494 208794655 236322840 875256789 835852932 427720813 215668889 941587398 825127804 22557960 356389171 494515564 800458981 90029342 240388340 545184434 750752710 25702704 815571113 697831224 686548252 390023982 328862276 824273846 994712183 482423845 183684494 582372472 946605627 857599109 697407697 620438242 832149072 709476532 374856254 740749918 58714512 715930129 41820976 801827873 231296690 865930429 970406264 414669968 535813626 558754000 370498101 851896600 797294080 293569815 387013371 45751522 308195367 787108506 143616406 27229906 248959139 834490435 26841374 462815693 258096030 35314848 309635677 272492600 702597288 575065287 670288064 765158186 112862388 867707565 954575480 907886272 731001688 46114082 660346563 449850802 379323424 469158960 576966578 903623954 213274595 135694639 107187240 705507732 434879891 628244952 33545525 821365227 703063404 123285652 5728783 531286688 761376604 273362380 425168283 47142667 596924629 31606892 587297079 110892884 233924041 95631903 8236668 255479230 436032214 530718600 39601330 988806827 874027663 364121665 604151901 263379471 616658045 189172399 184024233 296570647 824471020 868279122 601774264 712681275 920545306 445163281 78300413 286016631 516153719 89026550 449647762 613476515 22415158 516734657 213496671 634606279 893172513 580163600 179845786 76479420 475872687 557203986 669926877 515835313 141601909 521101191 523923722 488251098 633119551 864699762 86848385 76423141 351586339 727343101 797285382 322113917 355243744 876511692 170703513 540965895 944666668 346768260 798157875 597300674 52759377 522185982 162353273 557564095 529370524 399727670 374126847 37779522 467753530 657194551 602867413 453160626 272944880 512907332 139157917 160397161 633199248 389236202 952784412 659498616 114092348 264626737 799559057 814749348 35172539 519184666 733281542 293069271 459096472 906413666 773126942 372779660 619706689 697255773 571338188 657684895 28185157 407426120 219148300 124439164 90761928 710689183 790899498 29855268 834113207 139622431 803588658 670603020 262080635 115983438 215791296 450652456 192538458 917137283 612521099 324720482 365050085 160913482 310209885 41533643 616465607 97878719 437925780 449766745 643842145 971841515 439783437 584467575 414793912 928445407 796618717 537122793 541892453 901472726 358725911 881923278 563455444 605641249 257262659 791053050 306431464 242483795 709186033 741337976 821874748 217449919 677023933 391347513 205598167 912409780 844210731 82460550 950782153 493246413 860188747 389065223 431666384 828490113 700252135 27061406 805263225 627314606 330856752 272285156 427175927 515176738 784577889 617682263 984319464 483891061 46389425 446844628 130525628 917454101 867485474 395979469 529632663 199800154 213340469 751933229 877820628 394972530 365097522 288859226 496966993 156687618 505368718 985402262 149048860 107838091 812517435 243644316 932118041 751216940 72099404 788999023 217687621 255872101 263173894 599057582 399857220 945870082 84833115 634937185 634334530 704581508 964370885 207559984 8372017 20291202 391175121 573885745 320187641 54757484 25005413 265683999 777152249 960563171 154945544 148231762 64153888 67547276 921886306 893898023 184151972 492102343 234289348 541419041 67640446 796937548 843816570 183567309 965239490 947855327 183318167 742145136 236757340 525332497 61505558 701206744 725001530 928348415 22810779 985298079 977956980 314565823 59779532 384862647 817269967 66689333 771092393 203975343 814745406 150654070 410720287 924691754 842555280 100213537 667284555 427656690 950711550 324454449 200194700 52716052 686166155 784819686 252182524 660170814 923522777 524259235 885624073 494949856 88728652 105443275 686472048 1962369 887102827 240457317 264337417 682566189 175833521 938881462 172268726 74935550 450229214 518011699 493192804 80577746 559820099 523978860 926505744 447852907 693613068 298663184 509247602 60018282 896693441 871983364 72197707 387258106 348637622 568912736 244344675 332883646 687214116 529129943 505416639 705803729 797125330 132778065 848823755 499300491 177267948 50116406 209264074 921671650 172964008 740270007 93596367 75486215 383679073 986267962 482041938 299578780 734050630 881743826 574651432 13111597 342436996 397730992 68288146 304061929 786010878 564994816 884365040 282174323 264653863 962155470 502654961 239376607 423350519 643704532 53381491 904081096 763058785 464381596 656111246 935056505 406031125 610393063 301203434 412692613 162460135 795468462 825643629 574212640 377013375 826073637 830017887 183351303 539111614 501601535 957726120 595881616 523532501 226611707 661803993 582806339 287007103 417644822 112567209 509492581 391654263 665859257 952171837 564332066 149683935 919491199 46486795 711845325 182054552 452716006 531726921 787253334 292578652 796795998 940593634 312650946 531228107 308781485 436555185 32586021 541550454 140800742 285483022 792377493 163441567 23630196 238160003 507848209 825079215 748117921 681258666 6243388 403832699 590212132 708381195 936351155 844809689 374874390 854316620 640565223 695330492 337058015 645975478 939909371 166717611 62411097 822655453 181687502 124443165 533294759 942754335 267395097 223098771 823882021 261919092 541217121 536686462 561587979 438190345 849022465 428585739 184798615 288844449 998290883 735755914 986706275 143131592 839939037 976798334 158345671 308277506 125871062 592445412 698698885 426335187 930190372 705504061 646264501 369728868 520975114 384096027 259984934 779240971 107740958 636341869 840675149 672950204 403976257 57669419 355670115 132091711 216889494 864021676 374015559 775865043 820697714 41933618 579284459 220365676 143266616 913671002 664112669 139076445 253030121 563050968 825033803 664696295 21634045 997436761 414524628 282478560 217639644 262368460 597507959 762357933 291487617 580392735 423674451 717806565 442920797 682242899 292180880 469778133 283704061 368359856 518953136 330748224 929687802 826806591 145531877 737869185 344378894 212438711 703160813 618862175 348088677 316491837 250566544 736056599 820863771 438224264 252958279 34515347 19178832 234093135 657229791 233990548 598189996 44163410 106818862 10467018 269039617 599327447 608008048 205244205 273417853 591852756 667179441 639720699 498793402 678341982 102769491 43920582 431839388 88553273 805034152 221620459 398104647 623266705 2300327 49124376 596404922 417265855 378796372 140700199 884988504 43970179 980977654 836406679 349095382 440115134 556813500 165397671 482219113 160319269 344977374 694293301 70164031 820825948 63700249 714520632 779684840 469741670 458573688 491843622 50106772 492722716 62064980 895055973 438994733 819430866 779881632 494633818 499072712 871462155 774058886 695723705 994617384 20035193 496720922 428825744 55293938 855601923 100590679 565567138 3121797 71064843 643033900 880067218 168748057 466686443 196633519 798119204 280189913 92066762 789766399 524433330 668053723 885955224 792425833 355645485 752241204 731424217 138145491 757045652 871964792 870027816 480998528 445671170 101097960 944173138 680581114 191171546 649381405 124177574 768865853 746094360 706134967 812382139 567304338 162431845 881108660 936421591 796708492 723295372 110532841 500617396 824366874 718370306 642669222 584493087 542516294 876953429 180635399 435407574 56880994 33257087 985805308 626680865 445943916 395507811 192065641 535931988 781215493 221341846 787679344 801362038 105725271 486572866 439640577 748289226 638229924 969744680 941828036 325962940 941226048 781497818 243414471 973610379 362123083 62229672 103922901 693519800 153999726 142482698 860980631 220265375 247982302 96198793 919370350 199895726 851014030 354808888 666247062 532801024 433522027 187737423 680315045 835934050 235463715 466239513 180827758 807780238 813855227 58385444 372865474 395375232 182980339 224401935 165432564 530816267 116237901 826076707 270220597 166568795 77040997 585793953 357364123 98322656 660553778 996828618 234700779 832068132 863843840 754442772 902804904 665982251 437643797 15525447 833255912 67375141 921937144 192221752 5243650 483451515 772556566 550537792 69588287 916579615 582118141 952365351 582678458 653183844 406498943 383040806 411034639 558834645 70657957 852780546 843371741 705364247 102828227 509899419 465435618 560686491 133449536 561707828 29833933 920546146 94640636 422971779 349008670 846322925 703146666 904429372 614176035 366353326 760627637 801904904 522998491 420182705 342900565 526448167 3084384 25582688 114473046 761438261 371747584 186254764 56517105 450629318 393661131 852610229 604238872 437944281 380269069 517032488 69388395 676015757 444113510 894354017 451838245 991259965 401889736 58988211 943766348 958481418 984282836 891716429 817963868 141511142 643625097 370125029 639332571 646694472 877756363 765616609 863843682 974703531 588238218 554018568 87879137 701673991 839825030 833347092 326822270 240743395 176010051 453605979 336305128 59651307 496908454 840274602 390130180 20079760 124905012 604515419 590098149 961845629 866229686 768934087 79809079 689663229 17273109 78891452 769909380 406777152 801936129 720925034 154398364 996849826 109105862 268976469 298532039 397952145 599141968 542517590 652138048 662366367 4860716 650564373 971964304 285667969 604151248 951895567 98177428 42612847 748752054 995984582 268854745 229202518 324701346 872414494 352668345 760798832 798708032 153364282 984285398 399053286 430559184 416505743 174960327 698283783 25303015 939184970 915105017 387381693 15583755 967792254 783420394 421029200 314475464 816300168 22750144 604266955 405180930 373333557 760749661 484136446 270300328 424846119 54274864 216185091 422868381 432887955 244197236 485335738 916774941 141660119 292387665 195962032 634066003 584085429 104102905 262653432 632093845 168615680 992612399 881747334 232797129 250932399 916099083 254682054 393845924 554857054 963117462 297559018 936107597 110257081 97449694 489745768 196677553 830592003 99862527 609821031 797073582 536166228 546478612 217444532 922740999 631027333 357797709 790968448 229678573 863692999 81943472 353249603 89611028 785965298 541535714 851125240 648048908 33469776 988399549 337535240 311555444 889809152 454871445 474847159 507594370 318939825 910932812 514720631 537599063 148747668 797255445 354491639 713769519 253568232 514006167 432341921 899929527 157469926 561812479 860104497 223237903 920203717 614905085 956957970 247805267 479291030 988576040 884495725 359803216 164695940 516135431 989193882 907313339 879600679 937988221 403947480 856896632 141102942 643345088 474532911 845933922 19559212 999926176 278659613 803599612 472804464 256827058 298429366 17977813 603324425 822378540 173196728 868636368 759138835 275368191 19663442 422979104 700533773 396352878 279954507 380665734 525282512 223232036 351918318 967392934 83198445 44645482 699398806 620784852 302773685 226935171 744956851 929391598 391718728 334808718 17332070 40173619 967847431 18689876 641513445 504899348 299568801 629969297 862127775 812568300 871692954 178264020 899740887 492096861 617454661 733464717 367622406 133551932 954483955 127654325 5943012 444307428 290404850 899110267 517448699 594341391 87703393 714556605 771853455 814899851 647662386 116578170 906932600 175010499 119152514 607399921 347689383 820302338 489991332 222929617 813785241 290630769 372457077 467037689 784719866 633227104 288106513 674169155 899155971 91119619 732496327 573114172 42661748 56385717 441490121 657126760 85198723 141637284 560080335 852808692 108184535 128496260 65598863 420754867 339065481 906283045 304510147 986358316 904822312 310256269 104853326 767580187 304409127 583464348 438954663 552518343 562439130 976985455 505199060 647723834 872732802 974585618 625612415 883706464 392266166 539059202 520939173 871692645 806107797 598976263 144718712 358703608 208081358 145954468 669397034 775608902 412248564 623641526 398870477 682826295 282840364 560402977 580918303 560623375 821375555 579387453 702989569 181810544 366016625 4782331 986580493 712992186 812955890 335167393 10260925 938503390 272246514 270416895 809604165 123127884 537720891 670500464 907898888 126445782 432453786 754767779 111479621 266196945 126612506 540772712 827323720 628135449 435030987 216266326 866603030 423724693 334691795 687384367 650274789 537735777 804942250 649529872 826714854 503661658 577464829 685318762 484647206 46136678 249581832 711614430 980427436 511167728 475308050 222158872 222904510 112989971 581563671 636082166 272912569 565836863 774167992 491072133 491942297 418902865 829280471 755927522 364798402 214638968 640362761 947229240 189847264 944742223 694074321 144197528 769965159 183896588 978586360 959757671 152405202 110431296 232029941 421793207 806826060 973435656 23569796 757499209 545156724 158751088 244186885 743930752 138943076 648059569 734548673 136914147 159018524 564046752 230645868 952359985 714740396 937565867 364714105 163140736 837886416 903659530 674228917 274648576 447768336 914044955 650828998 981959596 352185518 352208009 31037987 170344104 767586288 951507949 471956747 69146108 422246578 69420441 414418570 322090357 869183867 432584603 742502626 319734153 406206311 560085931 643866773 485790230 336341028 636330331 899676338 454101572 227559139 604370332 926006798 266730140 621188593 197248790 415726694 374587162 697108645 791214033 197107068 791604853 718270701 79507930 740033179 345136551 532889222 999494235 688850359 959265868 798374282 895534502 920436086 547329105 918617731 497525466 459896800 872800818 729594542 626112650 862639804 752726474 576723058 865653162 940238525 903156583 278821792 164580140 658735687 25902310 842219563 285037711 88555106 597226647 420648844 645802819 702828313 747137361 274191489 999631868 186189390 980747347 35254555 936849901 245973 450559334 626753423 512579999 836120232 604321085 729172924 796974349 581762266 536923045 83768436 521554387 527113169 529390171 232383989 368946360 783914345 951521283 641456672 42502604 313491497 881919228 176694316 293486167 718541611 471532948 548482345 107921340 206391517 130329864 529617340 252507507 312817432 330881879 728562028 797610074 757160998 835708056 133248955 282940869 364027757 149737056 20361711 521129357 569212633 223328839 614022012 907466221 573319049 861573328 221387341 274150887 545430335 202030136 74428816 658011040 981939760 616059145 925330344 219260964 806200012 985379209 200961253 311786279 972958615 715451017 729557900 992628679 144826762 350164753 124767381 722368466 809231779 429494560 16262254 171204994 568415295 425687069 453910416 362146338 528130445 201730604 98116658 537637858 232910422 832167379 979204030 661433696 239622347 985194018 922669797 680951726 199947793 749569381 321077663 824969337 726486017 580516547 398419118 250124914 51946375 472212344 653648835 234763894 608431207 402007483 860562200 210467214 32687210 150300141 8124244 243083144 533848504 75660514 95610429 333739771 940151900 396950039 393668190 280026706 365597575 914383612 888719026 744814548 91082750 86461298 119943255 168082462 588401362 790929061 313657427 628582807 659610509 872264691 692997355 366140642 851424423 565653703 987845370 896369741 336761562 434131313 589005863 64231931 501979200 592569466 472067386 244466619 893267311 605658900 55509255 549996268 228371209 312015874 275925176 80709179 572625834 257858751 810922749 188167329 603989896 178392829 544477853 533625138 783095202 192790716 484924730 320145268 140194496 932042661 65917937 445470274 210014823 211750994 250787746 116892183 419474233 603197482 132053040 522900617 913177039 395201335 313305720 769799210 306768026 35059141 859215669 638367685 423883327 69763377 752500832 218326266 184875438 424192404 636059367 819950406 116740875 877241281 888962089 38394698 214082434 449938306 252217576 467460244 33674849 768213278 852664088 882484501 625148297 714716331 290357942 853943324 895292044 565473879 929875736 208644852 513394162 567750183 84184 46031528 501861194 133411297 222997276 244636451 716424759 943441372 115905565 777649520 802548340 461606935 105664661 989464513 719277346 365977977 866555686 129913429 283445701 465198149 648994823 561237752 750708151 453822102 834456553 61427312 346337355 539252518 139275704 685130148 164121821 526643582 911379900 746076583 567916480 134052690 45868973 867325631 163903660 163924643 350247459 129297294 15014463 747811297 819614781 379550485 255740249 301172399 201134784 947644860 814961548 521275349 294534128 161394850 304660273 861703585 329188291 945218965 426305138 768920459 71465545 725390433 59644560 776660741 130147935 651302077 823983245 542886071 808652343 644832316 739357781 147452505 699987294 155042851 342097938 614329276 445461509 774801278 460695563 93063089 119398298 683459303 730393428 644834590 69590770 992691421 568406293 611826085 192134159 30664505 910182223 993458158 318830062 490628663 536137772 693658611 894946704 355704935 179481105 546475790 975899152 966975423 348966136 100096416 546019268 351316173 150383064 519646387 810956004 782175026 989060779 882129411 859063672 652395418 579202845 98540987 790965984 676515553 860813056 110302656 132376077 536595003 674356782 163348006 235778760 929824858 595643854 293189696 216404435 232854168 779069980 165165808 32539111 995436319 993975789 285382835 617148650 883387384 524767808 210299149 688476738 487187009 292972934 42967024 413888533 333793727 250973603 403912866 693379855 137777009 710681415 343098788 668482250 569256301 665077888 961654775 735008949 761355499 201014429 235561689 874422182 188078989 799473367 944795919 290336429 384125563 313672770 226890864 925467115 418512400 438209789 772278791 750587753 318041316 566930639 902423301 562297720 975564725 592019995 483057373 811609427 513022937 954017912 431199688 497862032 351783964 230878857 3113135 84742552 314423259 178620464 299929116 165764492 37807581 387656851 695640598 633760048 909855438 443290980 5873978 151866019 679130159 774183310 873796812 745757733 726983394 241405181 588986937 187583376 742955900 499856035 232427066 718782055 563813845 539479602 763265732 842010680 387188697 822238334 664909394 759698193 815790799 853669331 444831205 989159842 425801765 723821880 75753396 402330535 589369003 243518133 515915468 38872586 968492866 659717413 658492785 257700932 515646471 807331881 266780039 90181938 30924799 116995646 350973259 548762724 78195898 828016171 749477388 399613075 452345148 826453941 19690966 581976760 390918184 123784445 923295333 239816646 766228052 107746678 104102625 438340448 818598770 946204701 129737851 216440474 582437455 264488730 139149501 862198568 109746547 275472488 553023593 347254754 809855781 229093412 696145586 254332504 919335239 434802979 424604818 705337076 875257242 790221456 823255033 986514888 596693576 253378709 281452307 839789522 844888388 31922500 240152197 530427621 917189844 881512590 28571801 601025977 283285608 871821704 482904419 92687317 625656508 802146056 31213089 123017018 881152778 215813149 515528894 912437547 399683789 519643905 879088106 219917738 622703535 921109103 459620849 970081101 42210755 868420125 443085392 276411549 146578716 418187456 78313633 357261566 369589634 723968910 30042217 125394735 843403078 344491201 612575920 729001988 802911618 351302710 954106030 575499188 301637514 122905909 287859707 117320190 605368223 50537830 487977219 541866292 677931772 906425906 384079003 983176414 240727287 127905699 181171686 701656166 888684946 109186736 136861224 705485519 596897289 976895098 863778548 684960770 155033744 746660928 807260054 642834131 61947711 562522887 510985008 390537832 15243377 847007866 894153801 355477345 958918331 35957038 77410918 144300937 711550500 463145176 569467793 886517906 89047255 268146737 464953927 574002958 775774731 808478510 593668809 973696773 932615471 324167833 592535301 515252405 163259621 539454679 119242803 299239103 628002478 753044926 553587607 112092792 191354067 147048498 691052024 409758951 497901126 210192684 843617761 353330036 287496665 992076925 438292192 542201972 234174267 9342761 936424771 352416682 48061255 625789809 59031694 58839661 13916816 249374841 248523834 403112306 740283027 336686017 133756146 178336176 821652688 973331371 545657678 835718182 542699904 279013347 199895330 685968181 532185562 162176840 435603543 639031420 874185983 338323565 626155753 506861991 263749011 36274263 434691201 436069083 619102011 615776948 86748409 664784417 281883465 930857177 283433978 990252363 921259017 936071395 987848554 689835567 130393711 171262868 50178464 658800965 462264894 422537844 495282720 306882051 166819762 905637746 748875567 947203058 267766264 303533806 976446385 742599130 345015273 494002593 807076395 365591200 123102290 238039298 900129940 152500435 12590262 120415013 192126537 157169256 28603599 215633641 650243387 374006260 2142802 855561956 453914601 701910242 990508522 554519911 725024549 78276171 443749413 537126114 422450358 550477200 281524303 158772012 810895772 178404103 466670461 169521320 490158652 966960107 67129006 970482561 880227122 939647181 347971420 753119420 855116644 627094790 931783855 554755145 509340602 327817604 126011111 250956116 680777469 618976793 980126359 666968602 646754251 291317790 301411808 943390092 189479449 538719747 489504216 772197130 663689793 829185806 863650627 891186709 280801716 717053407 833620666 80951105 801648087 389400736 976136885 647396467 649685553 33916959 228239183 528363006 635369706 909673652 617514911 954739051 624799160 374285358 874779435 5055667 38510842 849278367 570135948 129645148 583340054 622124243 228298849 629743702 712176358 417887510 56567638 846299577 91505381 616345757 224321426 817760266 372777381 561588354 824091434 405349707 661500 676396323 445630958 609438404 108555687 171407189 570346119 537115425 921019898 702714744 988801876 454004739 460834903 130013140 117072514 825937275 473260749 511917508 80224964 493033454 652977544 884967085 342902703 762398 981468413 647008411 885907077 292866207 215978876 753038889 620554842 607570857 243332277 936473276 936932585 692328956 862546080 312155551 691706141 324175300 260577900 753073794 705767653 729545689 535807315 831922151 231044716 156540847 752782201 823767277 590504868 637614843 3062126 731195885 7964556 803614339 78919910 11666282 462663621 895292819 268511448 714086989 550046211 299386423 95787214 627105784 507078622 30459950 252400766 210905269 332769517 410093190 576399064 48853535 66988182 156392958 527955618 456497161 567188025 775028341 696139406 211554229 377205019 894652867 38920631 892985599 551591201 570828844 365522459 885625646 521141293 589523400 911675598 414169728 178917029 461094559 364908852 110773307 440803175 864115263 423232990 19201176 101347259 602252374 887445721 531728819 65910702 872515320 443238187 418794754 108275485 546861713 330795162 312027587 845331773 74698068 946555479 879064434 889189166 306180580 746254156 655303980 400946631 756627340 827233006 565939315 157213103 229922738 950920904 509793349 372210506 210888468 221489220 872857052 92217264 557929187 522387564 233534304 238125030 158225697 774782827 458509337 415615232 6646638 65226388 5230732 348417633 514443785 41749702 32116528 525091626 180753951 858276499 178689298 718627140 437658881 456842025 585441012 940274044 692136730 602141538 67085544 627593301 972468314 214854778 163020301 69822379 253584903 707111097 878027818 128770413 870263634 597225333 189677406 384941447 953028799 338438458 462273323 444900539 355266623 323908836 225401567 680093460 586364754 322365536 399795062 120547041 606585873 964735644 295144780 493824758 673780473 448967340 873659271 317441584 394876774 281174675 564504172 669674581 214634388 88154292 891798317 265547475 857766796 760320107 646500488 667811948 893604649 725385363 163554649 665462886 92936251 78415975 978454761 512889371 82123891 292063122 810649765 546729283 279407585 720971425 701503702 434041935 236042888 624251999 131201099 459085576 149233870 17896856 338100720 365258436 968235487 927422260 281361730 814531985 525236662 142968760 607706682 221765106 776060127 20928305 446565267 995536023 315339279 776785210 231783930 306767450 51065763 266210923 813681087 984042152 216325102 439527288 874040974 253591282 810986036 512448244 836001110 792054116 94300180 166802257 905730841 633766355 729054978 389726867 758998319 221862356 380234251 570566461 420292456 12869082 740034808 939687438 167461600 607784579 804207522 379503493 391184249 500033544 78552762 769493072 370822005 279574184 19827355 596176057 279688555 597085377 826329318 976341996 121054186 593755387 863122788 690585917 491146743 415668925 170788942 126275193 424495129 222136577 87705233 496109716 242338805 992350933 18749211 614299877 101178848 920925109 558666783 769697484 436516738 944848967 254905159 314886487 168157488 973791395 21068136 472089773 450972990 414009391 798743571 718719193 273732095 219305682 844338780 173243646 152491656 881068498 146495442 888486023 811911251 535571276 414778443 947207346 290604302 897261915 316921852 939899983 398666229 254626694 747110755 962170584 54279251 670270668 711321489 130363186 431315707 912290606 226698343 826421302 649708263 995737775 396345785 298442636 74559323 79939013 424011854 930532839 77853904 113465094 554980703 10765382 729278425 403197962 813805689 551764892 870443957 265800749 293654999 354428014 973122606 996173923 359631913 325859644 838406857 768549963 244012865 154431117 516748987 987551596 946162380 116005568 223432045 495968862 616449691 996885243 616764603 924262695 143238798 518973957 296051898 244553623 971338059 688292597 460086109 605951659 655879314 509174919 35140383 63745637 772788116 109560216 536373289 351150021 492709474 19321268 942755126 222107510 22230928 363286471 325189568 143256660 637437699 814721054 140408018 185470487 190609076 534863249 113617737 734832532 388671309 526376856 712890527 25147512 7169624 540147619 503355011 39214468 287324713 353064112 287686677 204182309 966326622 773454514 276099433 511335264 742159623 159958911 571334814 758821121 548832643 450526116 368984287 509460117 221033416 725757632 588350009 924433265 215848439 225276530 186060326 474646176 876084230 92207833 499922104 479853802 659892431 584881212 602658056 362355965 698742474 227898234 630848986 990518462 338704720 518536759 187814044 879988780 620679770 500669510 606700645 688677951 44272405 844975920 592601888 751293404 551162335 521653219 103261940 208276536 632618580 365507828 345044937 56000638 696056962 932092094 203880503 964064285 686831198 253506698 135646209 466463534 699602353 131018426 631199351 209254962 630196154 730331960 781368327 916751698 92744337 689457152 112804452 687919621 318302373 940338856 721823933 46551886 930987544 666783120 86272318 706741932 973559544 373971963 280286297 244185512 285114218 135801617 212718182 595164407 305509404 531492274 887888116 903888780 79811026 732027886 431975286 166724405 911325135 553606547 479924305 54959611 42921616 595035723 483483585 726049158 504833329 467516840 122228705 241860605 935663229 381365002 979537569 104767717 241628625 913074976 183848712 994906481 220129204 402904590 741492933 189957857 605791404 553654950 291936308 810101111 932882765 485451866 584246959 677104106 364233785 591133707 86775092 322988526 125320363 266723864 872963046 807782866 994033244 427510320 337350871 912798606 622458177 599302672 417122243 823491809 310029095 746692432 468344324 581149609 320263795 69371075 36865501 144554983 729734266 666268384 690828415 921996511 804642234 482160791 618458497 473375400 6929400 285645186 25137101 215253223 44360719 680416979 300677323 130159420 152748852 340425943 470220370 558012471 230319459 473735467 20896259 146845654 799801518 214640758 842872216 426700370 663573309 233453880 77622650 621351861 210203531 356114854 913773658 852657345 692393166 603591125 699628992 325878336 419007219 952027421 947020529 623831459 305954208 589963649 486374047 53700427 185186975 691671819 543634022 594509258 380009721 292235139 416973127 485422242 402539698 846504917 554378871 38358761 483380564 725649213 306340408 404267651 59677839 668959309 632102444 986066247 608863928 795863895 938564755 911613673 139186782 297515074 273385988 270230321 990765837 799545521 740485295 471632526 110108899 266831120 438641020 568544781 635564440 77581041 829019001 369025881 295592756 614020995 452852785 779082206 603600865 228194445 656571839 469272440 439750705 534910134 89630941 20742870 215239443 6710688 311557759 107240023 826593261 899959876 15384632 341740812 47586836 658452349 729546166 343549192 300141815 732088073 136072914 15760411 243906876 63313773 759254356 419445331 89426413 950897882 508526916 118381142 210750582 988834369 598871 911517592 168567520 166921267 994319666 854894995 591747846 386289738 178754835 695861671 666935027 137246857 246861927 585866336 285147899 95267512 776460378 711033565 53429762 65381746 928794814 679107344 39842543 374654810 152045632 226029069 759309718 629058166 761144884 233218490 17812445 109340319 75136279 660155051 679026171 309509039 734117292 454054435 278456771 177690144 289995046 177295548 814628087 252079976 854268892 782549680 377320661 399009349 625539751 785895656 589515238 155094273 351935947 155511944 663227337 450448255 465478700 622798524 974742968 827572212 147770212 643770601 768496879 757928028 983402159 341351480 652634322 623403328 496815336 700723955 423776130 893916621 502484479 715716707 108926608 751090566 626546943 917354196 869580341 614031935 501696291 362864777 470358309 905542153 423539604 863045568 360999009 866346626 550131917 424477431 736909512 352516126 743862829 328257664 815487187 393136451 104139462 904719850 176256835 769960831 811070862 29750276 162622817 24975378 699190407 682086071 11096734 724150904 368909548 541476581 785656431 133332369 828802883 216170786 795845951 257019317 228471007 233093294 835506509 10339536 306542791 99658257 180783599 946186274 757058553 184361311 418443903 480275950 358003508 715184465 592544222 291064638 337896903 435343515 626431106 940985948 171636528 622350871 474346 425238054 946176064 609502504 892615662 402732499 173760770 496615799 892138402 140613570 768182441 517287946 489693024 83874743 692907974 421110850 386421068 915216354 917960543 312796218 415911504 43462308 710431682 217217453 600733402 305824922 347009075 393506294 749763453 369373562 683229849 873628530 156412354 802519533 148319959 889232146 890446602 561471528 64178731 304224690 233537654 799049776 506149072 211039020 797537197 344625094 82124918 667009188 583107373 721736747 37677449 35083966 323151968 737887200 600980877 143460708 674813598 713676115 866510074 498690622 397587387 819980487 380339348 695933929 246507703 769548412 975537499 820521141 716083775 645359843 127750679 561962974 181147898 822979295 428337047 749499491 982062683 891765996 455989511 457304870 548175409 335274024 232794885 845409445 197053490 25693086 661151906 286106222 348985839 434874902 698393422 957351660 364810036 491907781 915758570 482619088 349972242 855041164 667981678 197353783 943966211 294545121 103719925 302722583 480013352 678148042 350235004 228703731 314287142 170311854 528442768 550827056 888447379 332916328 515702478 112957785 673924656 366401313 842014248 897990302 595042648 330660991 73121085 365577990 532199751 72546338 107308910 559507026 121199755 200735859 192243452 950437013 147314699 182742312 344948880 697230102 733735963 543990962 216716423 624417892 317154912 694507845 466037504 374505760 962938317 694751258 117262356 416898021 275519541 245084985 304129373 374747751 991694176 388790957 933004884 96538923 783060042 540960495 591384779 929860011 357779878 950740387 668141304 280847086 118077439 352756814 617391505 127459414 398186154 52799332 792982176 131638469 533911859 387098747 228128622 459059733 588012523 117043607 942652410 427902113 252036038 280743905 407529377 775215804 751244289 645607570 560185910 931674513 278865303 791657533 159754413 978969928 521186960 778944571 969383088 463375328 628389730 720802007 804062220 788835617 265239934 86244016 717431892 482552392 418672593 789815949 157855638 959546889 455492700 521323975 516211091 241749392 414129048 419381200 244522887 570234566 502550578 901824695 833790367 812541425 226905218 751914243 920609029 471727299 464791027 508724853 844894900 152049328 842747249 127200850 300954448 107396874 163020000 955250229 11995658 559069789 491807777 890189550 647613935 439091065 538384083 965607154 420864981 768255278 412328601 86673883 193603742 216051152 363832105 101432405 167869931 89948021 256419219 280252085 701899530 505524171 29334165 333920751 653355814 999531574 198891105 495601143 774967281 696036568 757823389 565481844 258549287 766094571 30556172 488137829 748143133 407573764 822028213 454932881 679647205 94126052 453722339 960220480 388769112 263324996 214629113 18103048 886948099 641844173 365548564 92838706 376209106 261413263 737103069 61853596 860840089 155339837 910151426 566112885 808477477 638784587 871800416 945172389 104837861 585250270 28479353 627273049 455714581 54064362 154052378 79119755 735353852 549666973 461204271 397877318 203716052 388592258 407453552 30312344 344865057 562555337 249283284 41597884 79837730 364817451 601169089 733724378 92902502 323948809 908061960 220351177 660857112 245359417 673845128 548469845 438786055 49263968 776258485 79736426 916704829 685646170 719069557 909411500 635462293 295623544 2576422 742331936 38868010 424504948 844966175 633589834 438374620 722792258 380615621 621081206 184235298 104108744 285817313 585965208 364156346 871785337 471495844 635235926 558324029 294402888 707006719 404385848 889407769 264786992 416032290 245179861 695783489 503998311 9464835 388475363 827117374 130054347 132664764 802447786 241146853 860468773 669513608 635778412 423482055 524581297 466222172 935438601 497496709 457546522 305688927 395354545 214190212 89532447 157292169 91744076 918559811 653012621 273668669 24322816 385818988 678107767 907133530 35698575 215898144 152792104 475075217 91793869 449194369 835825037 525810059 606517553 897434936 152261630 300704361 320745685 836203665 620664873 601416831 279157088 819084015 963543997 934231727 943235595 601888459 961758114 194847629 797645401 96249063 790790830 665210458 38745861 564348123 250947812 97931057 190795904 689654105 754351656 270339643 37482754 623056381 706726714 463909664 323368442 739929103 853119791 668819982 365444250 23832186 640201982 302318236 191963264 636447219 330996592 316496474 942592708 334583674 603341149 71689405 788025322 207899366 6506847 462735156 915825196 944306424 225661846 9099704 7672198 167257698 214121575 547021520 58921751 38975991 784400512 336676179 536686768 448487364 978076184 223955742 745358903 726644065 350766039 365506465 671545355 856558852 904398462 891405275 755013261 100695204 55835567 516816487 218817127 612982899 985222074 431550728 705086170 782299083 676485268 808203531 514369507 187474602 234128246 805192218 960225384 486953072 219321881 760475979 194145966 125982382 792733416 599671823 886262501 185757614 240224803 451480870 741234765 951603703 916093194 193502987 423061949 325786974 826975726 21200844 460745443 789855626 408238173 584873264 154114938 796449143 859403996 400227602 149730415 510060313 330360653 165207199 861232401 351485668 571257837 59246535 974353352 175542751 767916273 852161390 776599583 992648745 217732290 758020876 693287223 121922294 473480229 261286876 798501418 32274203 387554086 508095724 826455356 658265422 572196766 377072852 977768744 458955867 597417580 454070082 5170384 412442220 627134616 632753269 827176843 49727276 102778426 263059221 87223297 799910372 563135875 628872773 630919478 25665765 676501302 74968425 574035970 137977205 323903594 884897159 898894924 82541829 220818724 359000262 135738659 868848692 930038371 554959015 832162564 402273457 853934086 479135683 188173025 701163134 838047870 660274635 282982402 901372188 514225712 346624471 418128792 462316337 10567872 865187894 945874722 466008085 249986690 606937826 280808318 300892016 725152141 52946672 429237056 273178954 367435772 598326200 281189194 812517047 746484022 632281138 777476649 195416897 402857238 283643134 209407528 523196769 825021445 996051416 171321212 783534745 266564734 247083142 581153706 953937125 70796912 917112781 764465690 789447662 976982773 644108320 62520655 535773084 780276409 213045198 269044284 691605744 804317750 314012676 865083407 318090244 637259859 565207640 371944570 694559408 851819924 248445969 264717431 36001419 470706699 809444802 204468405 589798601 733640636 101945660 532755344 291013750 166959188 213038546 92886398 117100164 485743893 69246100 250348279 899205704 998041576 172710781 964882456 256868237 594653326 767756995 180707615 413277617 336202841 530732521 474112818 984433827 768812822 911709844 658028841 291824069 803732367 239463771 592401926 997110008 136220559 766043852 124257258 268334178 977896950 978112057 815713554 409181942 429599778 285143391 262070192 778660214 41767372 914311284 974297444 870878990 128328389 78414052 517528192 713539510 375374977 522294517 15796644 700913548 78911250 363500501 580322787 477028554 256803894 803919135 384021200 231089401 12094795 182016157 204054649 926216566 987780504 220469539 291350915 68161859 307402779 17654648 501230136 336724858 358085153 133107158 871890952 120250550 934208519 361708852 393392225 794495896 527169349 815490406 670976166 294170352 179576687 422478311 313346576 492482128 971385319 215533204 4373816 847198918 393181555 975469261 147509462 543305821 228867913 852373031 335394031 479599275 218681953 124827152 871582057 463207533 57471907 559471274 474789158 940171285 342694981 959423005 213837586 757812923 933738366 65139940 847887346 263980210 700559821 535527287 227874208 58800942 824333165 577604907 609537558 185353501 606269356 232502878 991058697 259188132 69411175 672511494 694720201 335932969 641966518 13827448 303237278 408311802 880663438 152721305 355547497 177132685 519769997 844720969 841345755 316657644 587964514 209986504 568013268 250250414 146303074 735156326 139611811 658081580 947774659 223716777 954948495 466365648 432189303 152471132 735734385 214590458 665599215 102252364 139276111 66857084 343598300 214395769 768236363 864569278 144239561 288575761 348601023 47634463 705978025 718276341 280312923 931699612 925235095 217588397 275961130 542446279 36396979 329519102 272724791 824161049 984184303 419562651 965327389 112477699 606988421 443767156 929492369 527795732 646827888 977553012 79960771 980916559 757343361 122946392 557014931 784653882 290608373 875051188 150447427 11404848 879316036 884967904 396388781 909227034 417145406 973142961 15999317 408037728 380462880 14958205 286340351 940066176 920993300 338624103 609457671 325587359 189543827 455065622 897187688 344211397 719489978 856745520 532372527 299927041 690322160 891252856 527875993 166039438 944568345 539582250 159758725 642964418 687769011 441107933 181558378 320808322 269865864 220357670 531673007 812545808 650273019 333352497 751812912 600919736 884959290 674857571 104806314 859900161 524551569 343700609 947531150 877379024 937719970 798940279 568502926 889978071 745011988 483317332 510925218 702573913 163158291 82743580 391375987 964581161 554701803 91524946 165264449 296622017 360542286 757694725 984305524 651252364 353510148 449415429 856403757 408811156 472780825 670248249 435846308 356392492 348322786 892958062 882422022 589269454 258177863 581821866 397282079 883725219 308401678 826341179 927332496 683827071 636432003 273215196 583578675 727394188 413751944 251443496 204448886 785803263 145538881 878503693 924150938 2599751 942153231 197230755 951971779 247099197 206143048 565491686 115917779 169486682 401285240 65794079 738607329 59500112 944806920 906960400 378573942 479023729 691117888 253148898 182598444 613471035 741468436 513197250 802582216 968425723 727018723 655329311 38673608 505668295 902742149 797232312 414117167 817440179 430490307 486944876 8975876 90922814 891323083 166998924 582489997 363167909 915283826 475395476 201841713 317559939 581670643 414171590 489281738 292394729 84379800 163558045 643658933 673719169 772937266 450866361 167676389 85745544 149789210 638733898 686423595 983025353 85564524 748824260 788743272 976826299 709878775 433358992 118358339 806692767 240052684 258710529 486094034 683874550 367897161 246632168 731517912 264028625 7716950 605512012 332382629 755114906 413800455 78223174 34006833 69678505 788840249 648008015 937590574 585491019 836627060 851367227 461629089 41633356 295447961 208762907 778074362 538923968 657881586 958212970 820461957 111461026 120587140 663134763 434831485 844529374 766734598 705213654 111688783 91272954 965006448 464974375 642405300 806543302 607201985 878890546 116885087 462692150 187680345 553018682 573274066 793863420 525817253 147647509 318987369 690614007 587382248 159367319 460702847 274326389 213965824 361694565 19892725 108031142 217716961 567032894 692429220 906261076 187039437 150492254 453840453 166061252 369599368 538943133 899311491 927616256 935845350 346699007 111941984 448489863 275292254 208920999 35483962 872779581 283311437 885559568 299837112 426050559 967985868 762454431 895833517 396996772 795111879 126596194 809063365 615331170 801829746 894897883 155815834 844815483 76721451 277525366 793873015 609336419 308439950 272211202 672325379 629803332 577800244 394925846 185136373 692643726 687821063 384150512 252541472 114405260 524595298 924764582 435368917 421172785 645082236 217332335 216916772 386798215 54137096 454381530 676510963 934382655 65140881 398860597 567523740 459848109 241890516 331464367 370773463 77333016 829254835 474558473 66414755 11207001 660044027 15821122 462292767 667777264 398070731 494103545 778181764 402091355 418185587 185287906 97271905 155416394 921120452 50643497 504210073 335982663 62873667 506322727 314054068 129236153 262113665 328796413 767764467 778278915 282184919 932004910 502038733 611560894 88198009 656872607 911595412 713191585 66495133 584843793 334816431 712070882 781001093 242414750 593714153 504115578 24577337 106617994 98304866 508834161 633082714 409376694 299698117 32896307 547070225 117996916 523761432 208426027 273045565 947748830 498803735 331866 473788768 647357734 243173014 536743210 409218260 655279914 597798219 709046664 151286039 319072325 86554206 689403147 784995442 75436748 735969322 970249808 39404255 914334713 567919749 84123631 370047917 893761697 810479101 682202241 941563700 14795898 59167620 999226706 624168149 964570646 955995684 929910756 767039124 971717270 142845979 713192181 56703315 704198977 622386387 750384835 470981406 310687541 116791864 388848702 388828128 705580190 631584515 313920979 31612216 438644467 482183139 60376512 450288218 585649161 744949739 946948837 933936040 314772480 890096777 392959113 315206276 441538910 130020874 743320464 61803508 649900088 561708785 783553324 680000129 220241061 716062172 164881642 653071617 563669549 463550925 865034382 450520112 450944442 837580529 746640156 993256911 233001612 255191470 350792103 460565507 910817116 146705075 750928633 349561170 938522053 487654791 440105454 366338772 526130682 902948367 105867045 946695044 947600799 485538968 513064081 246905679 420247553 951078957 679399325 74177224 673840689 140434229 179621699 378663324 461986001 896183946 211414045 106380736 961218619 349072956 845105047 503647728 968877260 7413254 647099666 901738578 238757726 51809398 129917655 978511492 223090147 676511970 399078616 991265193 75737951 411323389 978668884 726398152 846265977 807455945 696684350 832011214 474753120 133861058 972662226 420568213 641836478 390385960 866268502 775752017 627294343 572756775 268484919 831435727 138962245 274238153 392813873 856859269 354391535 97393884 703362588 541244430 956433286 191860433 114528163 820654357 819247327 87313232 129233565 969338972 866896810 469880394 526126970 193550924 452446684 247511301 758661205 870071788 282020311 43321291 404821585 794523963 648723786 629732795 921316968 960623704 483345645 526115683 749739719 116576736 975502846 283342847 927031678 173208757 199521261 855836652 512498768 20952384 503936185 556916291 634917405 632530971 134726210 775406326 189258754 884412496 422578142 94181210 119790394 229894091 691931586 805354123 947226738 152341787 385533263 340935875 433940066 537586488 253782932 959401315 219449755 136491041 137291390 479473259 222744834 600317377 321399526 208290244 83545147 514559211 970834289 332575563 848176688 595187591 400907052 639850351 877300213 56456496 257118659 856102872 708674751 166721118 932603084 784979518 495084928 244815792 287542497 588178783 598253524 726371334 610429169 711345117 856668072 93845667 551266925 138536090 92001651 284178706 490357129 929281106 395364063 479170190 288914873 211819376 113865736 579224430 27804319 259749544 383281020 216275074 612125352 408366647 210913906 886171082 728681681 363065194 660284138 61550900 492269565 916689357 106315619 258863286 18590461 505561902 995526952 789129160 372493475 754085266 414744946 457314462 64305339 839829838 621294663 355029211 823915210 44311999 874333179 275948927 812908567 503685939 894101606 287437435 590333621 937489330 642495544 753770795 233707186 915090544 251475158 306874536 783917113 702506406 869585646 931864188 357905838 138525285 39396710 319114939 375252328 794161983 893597073 736330054 807990447 992643866 488781362 64463889 54116388 864055806 285332935 428589180 921039300 270755767 895829184 866982227 14517645 331062222 180423967 754045295 846963111 604862632 124921965 503485217 479272608 876641463 707271260 947791434 952162330 240939700 922861339 210710898 222887166 652791673 334132298 782028660 231143442 794973212 569440567 951923943 949196996 515208630 205971038 482061815 483203084 562208120 685692780 160994428 779550622 195397791 369002228 663931009 900831078 681487388 517152611 710969405 867425907 737841738 732350919 297000680 875488358 682616377 573110285 792139906 492291237 674313462 82151004 616435165 329270091 435686827 841966905 122602761 4271429 437468241 929517729 832503418 819362090 20945172 870459785 952848390 302871358 109100489 857702976 599819225 348139347 928532743 937197445 331946906 658432647 860384460 76299581 788672162 438447971 113249801 448413729 975673914 884257552 470461553 175420202 373282864 184627294 81993957 137164703 643796372 777467732 263901830 648934591 723144259 9527548 675187753 424697867 855837019 800434548 437385644 309434031 19429388 948161596 477759332 886922997 373124673 480835587 753059098 77316151 180748992 953188639 342035942 273228360 667788792 14134407 364480102 327575970 115006691 849238551 623479076 642429770 359479190 961172867 601496080 71516643 35971716 925804090 841930734 117385457 297798008 567401937 455562987 766740587 160099277 51131562 643042520 242518866 971561978 303530696 931925798 292060725 977418385 733792446 941740308 931435847 229468579 981934394 654135682 651381368 351969488 228610928 929153962 393706773 385568015 481760290 430947463 556378175 122969091 673743106 740452480 818352530 62405469 197210764 67004557 950949470 6503284 689729872 233312763 335879555 699367226 712122195 137994329 868754145 692350866 92217345 511182751 450684947 820939411 746336777 359518586 485652704 731064861 419081454 786218881 55732811 22517707 720643734 510720398 395232527 31185155 435305963 62786438 857281035 605408041 95864765 139112120 459604692 652148975 687419487 472902522 139768554 845854319 318869377 18738003 872276073 953471764 800397439 212257724 30925057 337494600 514902677 321883341 669401018 96454827 39253546 152834202 405371657 885250936 762137728 477110769 625409251 354876662 621217780 285148517 225829543 317887705 303867591 902100035 257020988 767392422 548458415 882856335 557776061 739409497 385184764 205322399 719778129 64375480 548690875 882044434 930473370 207690765 769308132 731471890 540456769 863750526 148129624 661624230 328710523 626854842 769066999 692476038 119659722 249351349 217882141 511822962 714568709 834339997 19759359 68383896 500131408 484377472 969909655 706272416 201991577 51377653 179766862 661885608 887223936 362327366 931935225 275333432 749858337 560751948 391210644 175920029 14207954 596418680 397822453 643759864 614133609 626204345 830460332 186594277 211675220 97930069 436037640 72980798 512552518 853715825 366267165 428627275 447673539 765350021 397223671 85998810 508759082 691089737 580372674 362850634 67342942 317053065 475248269 801045230 196705746 57097778 78755687 712521915 380639735 887091241 551777525 305562313 386978537 556218672 446759089 488678293 151392874 65661965 402763171 563090352 875803935 221679600 158048374 327743446 588479489 896999584 291002177 504054925 959734312 398121724 560737180 249246296 165325476 788701110 974050314 259134640 753610789 390799294 574875633 745201238 135211966 438093592 49832066 400935312 707689819 82761897 180196765 151873227 231076299 252862834 917759666 950329526 236968750 153324149 246076769 179866065 539162844 384180481 807155278 493957014 37157828 614054794 731938583 594426565 825265667 547019589 467122339 400150823 648711755 625565814 918099339 253072634 228464225 977087020 510783361 269634764 979287633 422880069 420757637 459913765 241670774 466145630 356259591 790876165 892260895 949149247 341706971 717907098 170814157 464471797 334396530 834987540 436781362 154702886 118650062 490505536 871320746 189457036 650972528 611344409 990857323 132225464 667114922 170844329 985810124 561586222 265939506 9640323 669050254 509618038 595186573 425663739 555161275 519480973 542234639 140888239 85108263 184932067 845633408 167924471 812256538 879666097 885454299 41994790 333684727 931393671 152334573 923380788 440514380 708031165 373363711 677045120 335506734 329377457 578607745 645226246 871801150 416546386 938710566 621963752 93496020 930548890 720047277 424241270 217372977 521658574 105230036 687937906 648651493 841458767 238127875 51731196 218867524 898058820 872887110 555510676 502085949 274287717 133351675 99692165 603455466 274416071 221082753 679783437 302644386 305397638 356775757 787405441 181045276 543139346 33566531 978032000 115081284 265295890 925667129 504023403 400433299 431625013 719031215 648462327 293982741 40435365 931037097 497413057 263950707 476751447 104314681 12864326 134218669 360135400 817612924 663929446 895618055 53533064 864528858 102255815 616047224 115996403 300954889 93387484 394432985 908352787 482796221 637696974 117508141 960393341 262147485 144244147 97451751 351999217 9874603 4881304 30895879 956777406 101386496 6919697 14801058 673853288 239066120 580374955 498299491 253740317 106058730 991082680 215581705 227801712 691666243 506214454 798448012 818163290 929545947 514684358 771222610 559679896 690995877 175980503 843408186 821129641 432211571 688211883 999865979 499737149 518251419 155788195 910467596 401034554 950215159 480240289 450843493 80884669 246910092 246100358 415403652 974648851 424965595 265142213 12751081 895365717 759658685 200261832 139225156 287363884 430289993 527499119 923724890 716935630 838155524 628795902 859336526 263871426 931684682 904265094 706360663 533662895 175445054 78815249 386224037 803170825 197133432 886106341 852252639 601168730 763237255 889075272 16413065 974594130 454123248 471628223 182730893 649274612 723935379 294626529 257470873 364612199 484597480 605147187 713269369 204852280 631565586 638223494 197717605 406552329 212877800 348841615 960766695 360713302 894011165 822413332 619700104 487689361 4526112 125969338 18146010 725488176 721533458 383978597 367877336 856459954 922095664 554628236 127431190 302949942 671342574 424139964 329416757 842635725 918847674 559343969 131481468 481872565 847596421 389797261 707683796 318537085 200861519 781454998 792618371 616183652 501596084 785523882 319483823 927134285 299051933 330299662 444007195 773756779 631208663 671465482 814267336 42403672 468332958 13314510 856053152 904084004 520570880 577859143 469295924 153770728 279860465 519711364 192793489 219436142 620172107 255285332 648694508 400350634 216856070 71554268 711167541 830467698 909322476 925092003 174447262 213464090 49898297 41504765 893009233 556141637 283608625 246252676 727429651 401177591 578137278 846635195 120821048 688726967 95415368 979828681 300775736 569171801 603738034 434890944 515447527 575824447 508958883 950928701 814580610 994912021 358235514 58516003 34210302 182410129 172256785 338650917 428943991 697562628 395170840 565595093 374706094 369359709 213074537 988658260 400317353 778750822 497750591 696143057 695423931 731313015 629536954 62735253 158085113 273065075 432956388 191100758 876079537 126506545 982615450 706967957 135661755 928579266 96643546 226779606 884265413 411973057 859654836 940820620 921620648 281272930 984950525 742595730 754999741 774784543 955819319 602265626 200967840 995691671 459762506 838610377 553528039 783093475 797895752 466737454 324893601 393824475 382141405 896700353 745436390 740261705 754294224 306611955 793979974 562281247 901840744 669298015 867537483 327475050 223292130 657366287 162909057 341314217 779615568 438737317 317280292 86998469 411863955 105859438 215303248 307925648 970799843 791304342 376348340 572635818 457787020 646926531 149716343 453440028 472540585 931977377 326793192 180587262 952618414 193142140 424839919 411596120 829770682 593441649 483094859 835285196 685594996 663725025 743181064 532071004 881854443 934724010 897346173 911573324 346353932 417322120 114005814 38623343 964922152 840053503 740424990 389147050 575710203 56435012 302620371 461243115 161884118 992414470 928207363 150085176 78440476 613193645 385560101 928500412 612278689 99831856 234657239 575573003 676012969 883148938 936073523 726379880 70253919 688632156 442782731 446938292 299162102 983613672 500723077 248102779 107507056 183616969 33562792 968761483 580372206 111571947 661310514 148336572 826345117 712947002 936119879 682225223 888304695 490232881 664740521 865094615 357767824 195724293 21642855 621198172 150330133 324457153 257815023 67160862 594777335 803596750 828853715 345442253 709386330 255651734 577510814 112598363 639084257 211015194 786443391 448716374 544857293 758675110 696148460 587803780 25801492 600517106 121346242 524616920 420327560 544187599 411550778 873995349 321707452 544127261 157342413 503186128 558823960 185355438 827278293 801106639 385220516 982277102 805702361 682736300 794299763 637422912 917790636 510761276 247627840 140555930 976165046 872545423 253989411 704036531 650561683 419554557 74995146 118585934 777315369 807959268 972009074 472901673 736859938 474158948 89385135 823322797 213178237 130701080 266924857 609904307 452156451 541297552 445562795 137876732 876618346 816317249 691540734 124891668 490894079 77361140 720832587 748723162 958484685 977498668 940569427 263971251 179573167 232849480 492280772 964572853 773354972 505059664 945695989 949934905 989659474 555693985 387301754 229711923 166512484 806440708 674151730 559346552 852252677 432039440 19412794 58731191 943800434 311410125 724936034 908179130 753862247 307653962 147528404 25399892 79275755 140258852 51423997 172824248 921565845 812112460 643718875 144212951 993480613 233881415 313613623 864893941 885995792 487215385 482830711 583708944 256195461 219542955 292565216 689543071 80884553 723788012 806497047 707574956 105058763 650504795 522930810 809185502 805803832 354813101 747396529 491479946 57349776 144598120 546820708 353695005 987127209 983463986 498734393 717123247 152795810 146816238 792455985 211345688 49275783 243333375 612642816 396856505 920879569 128532684 173424473 856787246 738750978 906566140 496473181 820238274 989184439 451556485 522578751 8465729 204656195 208936073 55269749 718607296 282759141 660282410 772485010 458765963 210814906 217013118 720524472 400994580 324125398 309883211 749624854 522894696 43649978 722007536 729881838 841976267 738723208 838910549 167446107 880550428 140860625 389371529 831627306 904720806 102970619 102245503 712845524 595640467 321068619 903787931 741673194 358194235 423455354 881023914 910428010 859011277 943297275 988143711 946321041 691786116 705926910 164086135 981979112 98741470 11233662 46631780 265953896 268047154 384014646 9694377 28552317 892516290 811583013 214595612 198494518 897501438 948303841 907703607 683250735 61771088 630400095 165203297 103533563 10453454 566971613 909814624 980246786 472455685 800890319 255455631 508390948 896485940 902806067 710122826 351581643 188427946 700893350 518570032 65579724 83096393 113589943 464213677 537488304 751203847 584405046 768025435 277382323 15727762 30509919 547191317 585081127 595276429 596090226 927949595 585074316 336524612 115172377 832241620 136544363 144243095 436044663 340786866 641612977 275356567 901788492 28722602 153944029 520434294 283127745 367647255 124656654 70901721 989330416 211122906 142998836 800215998 421325143 157642370 360788852 241220742 467644935 571085715 3603029 743625063 554559017 204133613 565720337 985190039 592314014 908710652 543166488 67288632 395898934 520029353 386759015 342904166 308771730 498072247 71082242 46413170 789048010 985042068 950777599 963867823 937121364 157837979 17814695 876840600 843473069 312256034 645250417 105198322 738352426 696596709 778980372 340781550 532079819 702405137 508469566 283357311 470400176 913615136 841060307 357074866 331342492 526101919 574637182 470410265 417675083 38804507 368983233 868340544 419506079 276481671 11459367 224183181 444197729 138797347 837545430 964979988 340613095 250941228 306395660 321231561 475069569 543771945 939475262 445313668 222387388 907962064 673532907 402784735 659796326 402813673 477732898 401585422 384766443 50729466 829331648 650510460 856551396 632920879 594678201 986418942 104833133 547168425 710066791 405063297 73847028 849719785 92458513 248884734 906678726 556149410 532706830 424999149 883275889 464723288 101242077 834511848 940193678 755584618 397003015 80405330 329812106 314922781 169293669 419825589 154667901 570581904 893533433 292203964 122755024 792480047 79718401 73468132 654627644 733641684 750917130 466762542 725419483 4559987 86153669 794503573 279443269 515759380 592330921 270056934 177721128 142769208 155071061 402113206 304376279 328064726 123794453 152462405 881234991 560003973 445057818 34408580 75270444 129583896 260791307 645015705 297534432 960664298 488026883 937026151 461922096 61088290 35915583 476719220 52241867 686355309 847793100 419171751 735110720 249163711 172633888 417053479 586796462 932657938 378410162 851181652 65051400 132338368 500202386 760522287 314982318 261086226 257920766 697153741 816116072 88776780 390567632 140431603 475182483 594404678 413966277 82677633 81836385 686418861 135252822 953563151 668799120 970142236 101200252 794832759 138483502 218450978 276338266 983129378 978476012 411794727 439746051 94637479 174569474 98139095 676955421 428501166 640997932 610275834 608723472 822701160 349836013 715693170 531345237 384766192 720167390 162660557 603759233 109466580 377521351 708587268 713372978 3494857 468908880 695938949 348240426 977204572 283560471 78469631 118774590 920662732 165224056 219995415 384596595 948653825 720391450 274716916 5094666 545351098 222379146 237793166 521654914 603085896 966463154 366071806 684363392 929571590 919070801 230446584 317358402 309092871 172324394 401771209 666037942 660411815 119999980 426376954 615206325 108462928 582295620 137515454 149937952 412400709 614798797 679238077 113023394 811122201 418797092 777379711 272417256 539773708 485323885 495520522 317579303 80863637 463292566 217483837 867296598 690207075 883022533 396515680 384131574 839739554 653781985 439591353 824655023 552141256 401354542 197726775 927000901 721624208 482359159 804212345 862175907 53892838 14838825 193234029 948246046 278285636 168268895 743109598 96872870 23325646 655218287 883043423 752865414 882902363 929455648 969514980 399984258 255076432 227873501 435314621 777638997 75253983 295532684 171789994 600493046 132788618 722906220 253868704 521341153 794554197 29390094 333545133 818600987 6103051 211215436 432650080 329634979 902204115 854056901 622035145 82440658 862442012 677984354 559098467 423372440 353871327 278663335 684826529 685692669 947517078 365396074 228784623 894375909 181172066 367924560 779113049 574010837 927969208 204682831 348783936 55523901 39826228 316579487 883967513 227347836 711419440 332402467 967720516 725196180 574427893 423842520 272074855 425507589 730577719 84708417 872465162 501160165 856642725 733562623 352198 327012649 54105228 742205662 766257531 578610436 685753795 127481537 443011301 62317103 726197912 687270020 347278249 350995577 322465754 606637250 77743725 948517861 522812387 697689964 710735288 85702564 504205527 717590308 627053638 369086514 983345812 600463566 887769528 346792109 680799300 3405683 187235314 487926601 833153789 450700372 347131254 571524589 857745179 169555191 614903935 163362127 625504295 180058613 731956592 868687511 994204983 975189260 468291781 293866436 361248945 740205495 319044467 571831627 689119061 642580579 451955632 292038311 814479465 536257216 510187326 33998416 246974807 439529868 286282989 317751076 555907683 781314859 518029954 231373316 783323074 343041985 325207780 736795766 444765231 458761548 808873458 790115896 615739319 784467941 951436963 571082507 557821912 335845544 72131113 292892131 809956079 316278474 788803632 49055954 741370213 781411579 889934114 893504543 705836757 497917261 816096524 663739024 278411107 741433263 176318251 680068267 553360036 85846202 430361663 885289259 448432296 19356402 79453002 670044013 914886094 213948629 292614261 154393770 777496706 621889286 801449805 812747209 642341933 237574603 777000747 866780376 212452105 835869908 394915544 839176990 751528654 797982008 475487365 783157819 504737156 533013277 807148176 900964397 485350020 615749006 33555841 354023331 177771837 875658532 501503881 691372576 20281530 867490795 935012194 584381414 799388755 211770963 278969252 718583814 554102603 103998815 38846020 743231434 577431494 227828700 825161219 139988414 680495834 870191166 45232239 261040332 12316897 677189699 257400560 414834641 953971218 385169959 79002049 645531185 546189906 403944690 582036569 810668850 463004312 662602762 843937487 916229216 523016732 751019594 993609732 949229511 40928555 209449980 838757723 61160386 685060544 879087277 997209101 859960307 992589408 389213917 896755413 516903047 992270878 275083567 959889115 967618643 658853692 313026614 433156171 238104729 703088746 626923132 501755237 196767805 237417289 178057899 382048986 923669353 967574439 797174427 548893724 795412396 871829784 400406465 907838361 943620074 615062692 810550306 582490525 971805011 308268522 575852359 771526315 782153999 509591717 243273677 488228844 255469241 604694717 460097610 442903084 581041785 940633885 226593093 669045443 63177294 956577888 999411478 671941881 683904481 942303972 736251273 79040800 258777368 180255398 797189936 598970292 298239419 569887946 427125955 867203817 910607277 143129780 456960556 497141199 196489091 776668139 735061545 755572761 880871061 36845726 508873818 188205471 434891169 950829156 918224925 532243213 707555739 565363679 783944973 32475915 628763575 906540029 710189253 941852406 404866277 908712449 275954330 249666642 299097936 215474082 57207087 41251450 940733992 828281070 420669616 720145589 8794225 249526703 997352719 279957000 789165254 850683559 643570859 834724929 938261971 373624222 207056223 203049272 248204424 332179077 489165955 809182689 206519370 558590981 383201389 253058827 675158792 496346424 510339899 254657986 24473065 120280363 588023097 10530895 893522725 593542575 591703841 259780342 667447524 110603942 134728167 86650904 138999773 60223301 26176880 338111644 575822128 312510540 36488703 426831687 631067743 435518886 725656198 6670206 888254311 508980378 36184157 127016386 738340343 223325299 967241718 861304533 68451684 463285933 921709464 306049839 812504340 805166641 760874078 123220611 405651880 762639879 737743947 622446168 760404234 695355140 343436634 786261480 30498264 147481648 725813172 879256731 190845700 978067346 865386588 250163440 598931871 629340324 264712216 90266481 221528070 956015352 898341435 25758473 684911490 906652893 671658875 379208731 942214174 93868146 3861650 476273807 35491078 756169228 723677982 717449068 51834476 616762684 265059821 465446251 632279285 931126012 882988442 200110455 647205465 210350213 702242893 623207271 54783969 209870195 357026969 776915598 801868659 470856838 196893445 514343514 883283454 597985358 483221809 234357952 398820923 949430573 919975654 607805532 244407682 379748979 991247003 895369566 706024825 87887362 793493268 481947063 506263465 248244766 951183552 225756124 944304507 719041841 633880016 194171069 886768717 997781682 551771517 220797401 799449580 71403657 556258172 181025884 148190402 822925879 245939017 523117042 572407353 420342873 112581137 961018136 800491278 913758543 935221496 197961979 670715291 204290119 813318162 581896949 224560291 724326255 971200003 331741465 635028994 4444440 321124714 920229142 381380802 846257256 387953244 763914231 407994816 100143274 831098694 464243316 25236669 101210402 618706479 880573878 295972108 513170935 561635020 148410005 188905817 934675741 626914728 890572359 70255225 401642756 308914272 161302742 212919707 278812475 216081691 615439941 178000717 844831145 830147235 1284747 123342387 118725469 180568915 816353698 256446691 825691437 451436396 508911307 233027666 399935381 68207803 934196016 997174718 361278147 770179140 279695155 575100300 696503878 641464489 264066564 843654362 407116660 435613174 320798950 512787417 517442133 213287704 557903285 738574305 515191983 761130210 838535359 30497739 275795751 311223224 582068734 770685957 53386193 884024511 765117854 401919887 61431007 620947943 78313065 736357078 517609688 979473723 531693521 187732820 22001907 693822728 615965165 949690616 829486113 179773539 410499904 685413828 177411867 196285510 855462735 83513609 895714981 589031868 324534987 815024869 388784865 630285791 555773107 360219040 727796467 363164939 638102652 482824755 794775860 669474393 22938198 121605014 925415922 773811542 881288386 95681866 731809327 765238281 740346401 897630230 453784014 319020565 868150504 979345198 236383024 461215126 924121443 481575046 306401323 592161436 75557789 409018377 246416049 116682693 273326144 631459913 285549424 703358688 408562750 511076976 955324788 763088188 234722085 654097253 676646019 82498758 427321492 784049231 160342655 803478845 579603161 59550396 751109503 378746366 866584247 149876258 183893316 578189036 801634175 642501344 503341929 313828361 162636311 723105652 708345822 303868318 960705261 611741566 162173264 362666146 45125143 432274342 667952004 34458514 675403941 324421607 212022492 838763563 948705639 456587354 128386742 407692257 249030985 987354679 262213863 300968910 118691035 608000729 721580376 729672579 180236579 534390667 812776948 893467547 672186699 2196075 724809249 796840935 592142515 61724678 37079368 160884048 810336253 402113954 280310259 457210750 462534082 64355956 112684686 245448950 671466657 332854601 900312900 202182779 603381614 745233437 26937658 659384598 941514947 103898238 578155787 139057112 141082306 867650950 456319331 800868162 90352575 636814579 419662799 33702238 293157853 837942163 212841070 412782875 344432917 501956494 26604646 105623672 805435306 527729648 267166877 459314264 178940981 112870960 648448786 460526650 604956779 224856399 871009980 38775436 379229179 422477864 269938579 305943722 944365857 448857412 805372058 314055293 111005741 894058344 280776838 121498909 591164216 595150191 913550050 949709692 390134442 114087382 835639295 13215852 404635675 120291049 215452919 953029880 462291739 547268789 913882790 395452156 837715781 46181661 190420050 611251669 334684646 630218347 62037593 182043819 129853589 619826220 733157940 529992495 30746960 665623382 512248707 559768891 223079692 737028043 68557964 655267428 662181579 363816073 402712337 273935811 70186325 128321618 635379369 328411345 713895919 274607316 308263047 164861612 281907783 114917081 299460194 590625034 925144733 722054247 526009067 728007196 404433159 330129373 974677089 449291400 536151305 163048789 122146368 959277506 747928090 710207636 333097386 215237399 750552079 734853696 561752145 482857157 773761399 543396006 633286762 772387044 742018374 667657401 315211178 899893575 74265981 42382886 753720812 657253335 963221993 902705974 919206943 445865236 162301914 695525609 617116330 28211069 683835077 293785160 517187407 477942981 89190587 999485923 437088830 667245690 380170735 159460601 381900861 456429070 291960161 120763231 296572488 506018634 315301615 663712565 83185294 745154337 509326355 590036228 254677864 207059137 38273615 6680943 51492846 361456666 896843177 157394598 787369290 537818634 430031929 273063430 492283189 971109864 189812177 99560305 51581673 526273821 736868676 63829547 26903400 864573339 145204090 732926675 556133043 211499586 474450258 688357294 735642363 443112019 716403763 27705862 359753401 145734347 577055809 794371911 276094383 458527625 799329362 617961091 605824196 350810615 662951262 695098046 30598402 521262968 870779628 995991483 737142063 780808086 212121964 459334391 351812973 972836773 865159948 143713526 405979422 597851729 900073227 890347088 731541062 265261566 815079967 150040847 914167552 267288300 859661889 87110219 424025746 797657637 551994649 589317041 590205900 237965818 635631503 945986332 429791329 992398400 412937695 283748226 212278634 438989731 548947558 249991175 194175460 888199651 685254819 718411509 33441086 952557571 967363564 541990970 260333861 180740193 866745831 6847626 448651691 379256658 441632346 945007539 349073628 347312522 671715786 690986209 604167649 231297577 661486649 466415209 792504913 431716487 933000168 421896447 962120068 588742323 422266641 326446696 126519245 920004208 498739621 942046973 680094972 782376014 842680166 44601329 569553328 721838806 43580977 806628114 730501195 880008670 354044827 344315195 495228200 518359500 459857137 856298757 854602465 324751982 692516313 391133376 738284286 888803702 984305617 487238848 999849485 747301521 614967337 248710007 751664803 27158986 547838600 698976749 621654148 513934924 156689063 257017664 785416954 799933924 76378362 988821675 436275759 167462297 720946794 524033133 581387581 134205576 785366686 277607173 371482634 182961529 316209540 750997794 648394251 814215453 417000717 789404944 527614955 422164129 58293806 115504975 844248561 574556460 626583184 212407379 248787667 121016421 864953370 851103009 943514909 961569103 888427703 449440959 268997171 723491746 114375864 482322551 30330862 246433616 295037201 139474397 394412976 407426483 425239923 998073928 22921321 287415359 878050641 171894576 637772813 737561801 303057337 175625462 92732942 238264381 601784835 557864702 965086631 183838161 131969885 716443200 321992207 792390368 405366895 215206146 902862939 282295132 870574032 780552727 651146317 314989916 488205328 738156084 604033058 169927575 794179291 847334800 555678397 296638759 55194456 69087563 315298409 816670059 769206319 353849060 194698281 885933976 904776735 960571254 726868371 828592323 697187745 891442091 475082059 587453426 131916515 440106883 955749363 683673030 628747362 205022547 996986755 615442219 937958613 487362186 730134214 271412046 316286749 781621124 782649395 721552736 206213205 267816148 558838810 279858778 443781527 482964171 882560395 123663705 372453702 79711627 591514714 197371503 224821976 231942295 897307032 905174478 852821199 606453987 941104061 470091306 512275708 258854869 541102966 967587844 161525551 943152636 88282337 825942013 125944787 12514915 191105009 34453290 880311897 968330150 920757244 895168388 933286542 223616889 856403719 824365613 612376620 568524869 923156054 709667032 451592236 988135317 140596671 861591591 796332471 661067735 207039433 366839081 708685725 18948514 852161164 80369605 412657130 219514784 935213707 280066715 985075480 247025620 531388148 448643667 317711417 405168449 408463492 380874927 696791101 568820848 273974914 587448040 66812655 657356889 229927698 954473961 488154681 326502813 443513028 122717553 763674143 993248796 408661502 816443553 579413473 958998498 300530178 831239188 634126089 836944470 789865423 465125864 683279418 540761829 279004693 799969517 130212880 651487019 54278861 22236596 57588983 853776724 477947482 87541612 632369562 466693543 336588416 792285946 159591581 327362202 767257596 231358253 421098129 230007564 25915741 547609257 461511429 499673250 342630583 915553161 688385566 346422018 649310375 728197054 648749828 893694453 977137197 903116376 699048139 604009112 733627645 48409358 598018650 121629495 59901490 361042042 412966598 57864589 937480598 184550973 468984638 268445384 633139632 463056049 799697741 389324186 825076506 131247512 303190929 617112636 719686654 895597227 694710134 647746607 801497349 758879202 145531142 979201210 832211215 163073462 992480799 800243889 97921341 680507213 379733227 87475616 939180682 810947741 160425423 54500264 62445410 336373931 174716671 25467017 842527413 291745187 654263861 378677148 831038122 396598766 80542690 794391486 230525812 193056697 432415099 571094021 122352597 271331263 836749441 134379421 590114004 55289593 399786006 919787249 886573179 1098572 928746010 595961750 463755502 855940540 957916052 88943689 685151724 169958252 834529700 819490865 572469472 757459084 262248714 227969687 216506721 943958579 146864513 435211680 336567276 228659444 349908155 384009570 397533994 53547493 33981567 706639217 118350921 97934619 876001249 133061036 563148212 223216775 878494033 441793734 588959608 985842495 105636602 194675725 77648852 603918667 354424519 448895980 824559237 105642158 573856143 196170625 679419790 951645841 278524531 434437761 566597641 20779332 837436997 800795796 94131770 914653002 631760363 847111466 391438152 295457576 497042019 716366907 198691182 917460922 1568509 217176221 88143983 238364125 94480867 509017037 55616054 505058628 711266849 178024324 879196726 717733563 296783173 378403330 641729782 490041341 715291228 799126472 50324670 948227118 363320341 278244258 290636093 472957549 739535727 542468307 62322586 859586835 837658468 356750166 765703055 587712827 603251082 390278216 732696449 420805824 707972104 872771585 250022291 246611750 650397322 10895177 117736404 431162657 180676076 172708943 627851553 63642329 495393613 709522886 568144833 17222716 625731569 886672639 414263251 269045923 982039247 81446240 163951745 947659891 183217312 289074160 40339490 28386890 208112518 103088280 545992411 863652272 71766129 342783185 150019630 561758934 916618349 321274722 280098497 778069190 274535884 163230891 998195181 731193579 492703900 363556099 392155082 939646888 594039563 104496909 448381739 948664076 973952638 664075442 990815329 563815151 477805080 388620362 741050627 172374788 562027973 200482843 781309817 981494006 990248471 523938062 78001677 755963687 457813199 345070118 409737801 361814370 682043530 715774511 632416404 780685411 212174970 20309537 255693815 780463948 783662457 876396322 94022881 601581610 99204997 702118897 208481544 748552363 921646810 352613740 488767056 473379922 593570747 841777068 450801863 85943605 765976654 663087405 652614371 601163982 894463019 550856209 823030063 967273846 981919474 988610155 943624930 578449773 646741079 218166416 136952816 127577428 174076828 472774674 138227077 395707984 153555998 617407217 32304274 119238004 620527905 90258803 584625890 580978946 440990986 96604733 564698857 447579469 795903500 524590359 376381554 824797992 624792737 515020811 805743001 405284441 325709023 728347656 81519689 287906909 88383725 38194272 669489151 226197352 631864088 603767826 843722923 54471906 676578133 455752081 708448232 65639717 522002096 16444286 383170349 315113149 762859484 462138221 7044836 838681321 958120085 85082293 16988137 890263304 336969478 740512610 876703972 424411164 507025626 238113913 858468734 604197410 336856566 529698347 153182786 181554626 263505883 213371350 52108 289694570 361018356 823038014 482073752 933098413 380971452 564645769 90736048 645913277 425501276 53747836 620266182 688583152 306537812 239686213 927898733 636213727 111628454 602667677 646457724 662040104 408831382 576685125 648269131 665925684 839955803 755264238 727539712 973334696 420485888 236519582 960068469 663575175 513827664 914202184 223355055 602663369 434403512 755889119 476238390 374054789 227365615 3966932 925134324 766304421 103285054 490220219 760245614 560127842 771644832 345296988 278072631 949100946 975503949 254665223 725152765 109194165 221273296 734777645 977624958 789544623 661846921 729995397 99204450 704283078 379521152 808068452 203996000 742438765 282398068 77297320 673433445 526473273 434509172 602406503 939151098 72177335 919851461 698289163 256364992 317723277 533824028 414728682 87757106 692993168 507327538 913876584 983462313 42344374 338378715 713249927 326211904 586430303 334834159 343140657 943606460 582262478 269235089 237014189 679111981 372802707 731186407 429402932 704636736 438963344 974630545 854488420 286145069 765988339 518759208 644981121 85426120 351713794 282370910 928219086 980631789 144783410 193627824 839015484 627804044 181433230 106340367 699987104 811827469 14132611 970412934 200063757 491832322 585872718 89108544 981012672 37336258 229440319 381114450 542401109 66741225 428312851 429093568 810961200 440727903 616953028 652571867 538890166 293223247 413810917 899701551 421466175 516894043 10794424 378740943 792970723 150695076 816693947 405372772 519164223 674835332 323302830 716263961 192123748 482128120 22526670 84440136 176494962 68953224 459291199 109704756 120100521 250409582 794032274 603940981 329841575 257471131 576116447 265021310 133379516 446711151 895633843 28993984 257772229 321094330 391180488 258820501 236709014 60401374 606425043 577672710 769380174 443497106 194738983 760763927 416339302 584314107 295062055 204340029 669141127 630538809 425205281 916395108 317296182 742153344 128299322 782950967 868413381 247019885 868550435 47734016 823271617 416805640 761383830 704745031 253483436 226626696 268710775 145565304 72146871 206473863 411206332 504561103 717431073 449748310 841252181 380584236 435127792 941034714 580210895 963234103 540910928 318571397 117389995 282939314 746596955 394223011 661312825 456531559 455180119 628513456 253591054 912018758 254492261 203064772 648232214 120864691 555781370 512901594 326992858 226177770 577186845 906956103 191185343 294889304 967795769 404619884 115085428 181087631 9306798 42553127 234949918 660484233 984561286 680763390 938638888 794986159 590653753 430335462 506977442 819136573 693349357 542918275 724276660 800020499 252842320 16154241 159088667 120804721 315014530 924825237 305868472 696430002 954761314 693049480 843929007 724051426 392928907 600751727 696551142 982986265 316121992 110990797 623159099 578295187 5018777 742405575 508700810 839439568 592424464 481175296 336014186 918132047 839681121 333012214 387132481 99620613 927019442 680769064 674754727 450313389 300903958 583570878 159845473 299215324 837741508 639547619 482989846 722026212 200155110 867873104 481465334 172406350 879086561 801643302 524025045 834391623 978860416 189482134 366314582 284082697 461585776 720663365 304645741 545078637 333613781 10200813 144499073 707551880 810468271 377032138 399374900 333189848 850893428 858008210 27741877 4316389 420470088 456565220 416822335 63344905 371598418 129797036 203907975 58215368 455470281 384700894 135891271 84136555 14288749 395564730 791226513 517936335 869904719 792011116 545091168 137092272 645773786 599541498 645782529 958994869 618117209 632000978 886160687 116777944 946239903 889534074 944364128 458841994 233478679 114153043 839527239 971416095 563469314 825968465 781887700 265425870 47074353 358571606 896045038 231409603 610835807 821964498 914261412 208858829 487968921 632186542 711387822 719740489 932355639 212289675 111468359 810675297 583658304 816768789 831188546 240538274 988532697 418985159 140641409 117446999 305065039 676037617 631028807 470935245 599785423 748723649 502472116 56464588 969541319 69088673 922705578 488910434 696651164 889441440 913774947 269520951 442640475 422504141 978337126 210108090 803514219 873947948 289043746 750557566 719190150 503348168 970507314 414905214 996990971 369112545 508855588 72026124 484182758 160292583 403704558 493594329 715449114 874100894 186344844 39359221 299097110 471251315 385930208 763053190 950950385 314133198 344178706 415337810 300676327 698520808 872501431 721861364 700609390 441643289 7993249 847547369 303846378 78758866 889337832 662757577 464353241 734797354 792904325 377888899 992958451 561682331 153536742 713494639 283211170 260956047 90178310 443645792 168453351 484539200 525682222 914242998 702242909 46065166 187550115 172884675 832107251 427298038 424664250 539046323 327787849 102965062 543239108 535709171 573233993 776457521 774322928 759287806 729675967 392291372 129488489 94282336 520563759 37097091 986056534 797730912 301375840 312177738 698841142 41091049 132903130 266288481 482864707 663538176 193833795 756979059 683835408 993719099 327326580 96306708 743039258 820155927 3141994 307883621 704475225 716790192 775155488 544927902 362468356 827940050 287391826 627696613 464574629 383839221 654336409 353266603 124538788 629766293 25768039 411539105 947891221 844401582 521156691 990190098 542728013 321416448 612703170 602757257 46375382 854353431 514846483 798475048 789007443 539478836 485303291 276813282 995043836 176428000 978647639 133880811 337688825 150521182 716263893 467458494 744521526 54466296 936723461 699499222 631991990 907994369 382298159 183181385 745519806 537641847 669034223 577111062 840980979 770764944 681551717 362762916 335415996 782176640 175575385 776490154 790495442 559450331 593566715 811931359 524832886 321613760 591818670 88692101 603887251 657836342 234401372 851514923 619015628 57827094 415839874 644534795 781537811 56819455 386735998 879940017 72815018 531249189 248853845 153614814 808194533 493245883 236923273 252001892 974758137 865703040 833989179 2131904 956423028 158837830 739168773 308750999 694705748 105254218 329359617 729287348 726183736 948391278 722974643 264051694 649453429 58364420 714645394 579623610 298470889 714498283 673158590 291054262 291423057 72016115 322360747 392075871 258425016 364280965 263265502 698110754 948172078 767113749 746872345 321860582 959682938 440608991 107726851 339499188 175767451 543334195 929795528 210055345 569980008 338958295 997327598 5057415 569209212 105556126 391498589 732168188 674802879 328541856 592248775 953231896 856460822 264124567 124334683 200822598 40869745 417575751 352778346 794631542 281063787 732892359 148210843 576629783 849430849 535998896 325027468 951686270 242149546 46579529 940250033 576599610 747832040 886972372 283410631 420555750 727565097 631173169 73895602 726478225 810457375 224869522 722022067 539623295 810733548 389860881 739069467 692196973 422366573 415725203 856210661 809204902 468772628 638339774 310508817 345688619 697853195 535362484 576592697 806260438 606625232 786386873 488378588 732876539 10445197 197483526 721277288 911925106 728894663 590249142 662004757 200625681 375607875 255409961 157333321 616941717 15910758 680962082 928218203 626701237 661239075 870662290 43615585 417125898 274447974 512607860 945286273 557107434 9926591 827372773 866945068 326015290 473289334 738748570 623349976 757069738 852839910 463759388 366700877 186351212 59721077 253982428 745818626 167210716 511306058 119677046 569201837 656888557 740189551 548750054 349340898 492084785 258102542 330924545 659600036 885260832 335023705 745998221 376682690 613645229 823180867 831368391 118366290 336118765 164491103 594072328 464186065 468407430 910174127 431494031 619051352 559907421 982360201 624040502 303475202 463941141 718301890 481093304 121028881 518767327 324400297 216885980 60892493 653016195 104053939 693093224 14556026 930474703 288386189 991497564 793693566 259629051 843143409 400457949 625773420 842259019 338948160 448278567 400400094 938589661 913054129 438300311 804844583 341050870 24699118 613916641 260231353 264654215 736921550 641907219 951787804 929151995 744056554 823689798 683892455 850918395 871990656 326489213 266146211 241764782 659014594 695459519 854510510 84447642 815504395 17779570 486950636 844253610 132936516 245974276 286994200 289896591 289273642 222977358 350646386 509130934 54216646 985810693 262289417 957142072 486998945 259039197 949232322 334858364 381424584 673698229 157744257 158144441 474704446 961742055 501070730 629248432 625483864 749327473 313161683 738450550 38697290 83178139 539264424 909634355 607319562 527284705 105379691 182339277 338462262 614734252 490810502 187178648 374588507 59701483 997420319 336411474 459919818 480335460 864325171 339501928 591873827 354789066 513223135 70131733 793635185 769576080 545563391 765429534 363608280 446314179 162429465 36261719 461697518 206247782 701297189 867400467 118584271 869970547 525836623 295857041 559098379 159757547 538215978 518703218 742464258 864993037 107117628 557624901 737971053 710394288 229103106 983825979 119347854 402316136 347603836 775671493 992580808 901394759 776456035 111145390 295699979 422470656 989996644 561017084 902539601 432410250 7844405 76364122 498454179 577897386 49154726 457325026 738270344 715392355 436007156 851022250 997501586 876111435 919850693 878490086 175436117 514486441 523912355 627588291 406597283 627659179 175902061 740593370 882831383 978567382 96038151 769044858 84884109 675430678 820057167 497257713 479183166 470454101 657813528 906623006 262210069 889770381 715664195 882080605 344583747 958703120 129701849 545023561 219977000 96968723 476050169 921655212 30545179 558596737 573638081 17234629 940915511 276418570 148841990 706998521 67885071 283072662 803614166 111270117 770321521 827359210 690419859 265479051 57272427 571766341 675341426 705584219 720327696 935160641 298233812 516275791 53388639 24725041 249448384 361955829 169411239 413296190 428093340 11364072 451861027 927105195 228907256 26402634 594245374 777159152 444322628 926308611 716303671 131426733 47627215 969699362 514297342 642091464 436764763 715650793 975777879 807416824 39361724 763711603 62471962 719980795 206160267 544662637 678653664 147229482 581695468 803265360 665118287 908954431 568607583 193528890 913133723 794799542 535707359 521348815 983193281 732836351 550014338 287887309 207640048 931560412 262278331 249713193 282978765 246240264 341085604 418959898 212415254 968242446 945401576 352645360 552698151 71939827 641775050 786562880 993979803 436247824 127521102 77546053 54501351 265968702 810734925 36368764 885129811 812200914 397634324 58331377 48253906 487332620 91553087 915225154 242139634 951756496 833850209 387674505 640753508 544998965 625568690 203257771 164843852 927477617 131672333 756993181 135495527 364285211 493590731 594806728 791931188 934050480 616619234 740647054 18709867 35286817 680886502 351280719 667741074 547021629 377589575 833387917 11666034 259932396 949177844 912003410 191582753 511566965 470850640 171790384 785662746 617223922 568346316 980123099 472447449 187887818 46811573 317681794 339349223 971221560 162571457 914759230 280047928 736417553 229789602 962426624 669204850 955312178 501606891 461142775 58312106 84264311 668008970 851643251 944633850 342940143 324849156 192975784 308660104 623032207 647620708 679359827 466387225 50149430 8898360 980686554 188972794 13744912 128199491 153821736 542552124 742279680 257352304 644748141 783865544 64322019 967458252 130177869 105264197 869148962 361612226 869740348 697437976 604640094 912604167 464069004 805874356 195881086 867751025 990829468 284780575 184720362 821175886 320358791 151001636 212437043 107140228 875992717 605125872 309243371 376267614 697662790 551020731 892535273 421823816 247821812 353464999 188329872 761874504 58001324 367260126 506394135 397667142 412345019 733035879 819655151 120909471 379761929 241701596 515905451 156532205 413527697 389653295 852512093 91934319 20075998 440220676 784773133 716795449 314319910 403737635 14884682 633790609 27798388 153044162 478896052 14843545 148877205 964927570 63325519 412766254 501576088 105871649 688103924 222849925 685887505 424148752 873229108 533381558 529583858 665131457 589109649 322304745 34198940 961101261 310074463 514509594 272408956 564684853 777959396 807102858 496186286 508694136 372041180 738853257 211497925 308573192 9887008 449435332 73720 855634738 217844286 708762160 101077008 851396444 663606512 828425130 380160282 920534523 458927478 260829459 9351864 902896923 715241157 63965627 375871928 487406012 432852999 872466230 793782320 187588453 210763097 807065081 634433782 915953687 387427968 183955632 359152050 627649382 298356336 704170269 256035788 975611105 411335044 834916608 401264429 642321933 589256201 253845726 3860869 665333552 489134161 177864541 611402641 675505830 356307321 163453175 395636441 5908545 150608324 838773969 241012832 958773710 246286452 807684833 902360910 947807234 240620191 668562011 542529378 38221272 914292777 211827101 650012634 505017230 849045008 118845174 345777424 764087603 239075422 66508159 519131724 938972920 310555621 353603983 599320411 733840357 465550145 290612094 972481575 886819475 448143653 639376365 974842987 573094780 161533125 477347477 627394708 876360074 333922991 658099653 79169935 205377843 971786843 988888371 343307343 143812287 928579232 634255087 74621263 114474454 751354840 713985727 916740263 110697456 800767731 223973135 294576779 83703039 648459219 426985409 542492873 86935048 237155918 509885278 88586035 667453940 950044037 146401709 388113795 940441923 766914462 337644183 889267474 365633432 266739030 117810936 997087616 778155960 725585183 920819742 26438902 486701201 877572470 547179345 928464069 836031461 20365471 477395685 833398376 144416041 78006244 787221123 811234016 91060882 960594952 63767582 6909547 556750150 721984504 952374883 826133994 526948095 46727543 342088811 716167724 847851639 730451321 108718511 675388876 530604692 621524618 324091442 491055061 60875793 26643811 780798488 273638535 582867353 290414796 54312894 420790935 972759696 742434428 459408058 888870325 11363947 446099783 927978950 229014937 225701770 820834554 927972183 404368449 367542305 16438990 728561498 504601965 473179160 911437952 851277564 396643548 144032981 221745635 423946405 861694525 698412395 578860317 268078789 146828435 430667622 438118104 817526542 706101060 870785675 378237903 297711192 13150422 581097894 278330104 923556683 296484218 573859567 120476930 122984565 632619292 934757950 198113621 712057240 658376004 991775385 555617966 662447397 419724483 803112575 875026036 424760693 209326542 707076598 818073931 428312349 901180300 371739617 438650255 904635299 617779104 769419309 982221213 644238365 418007289 410990889 416776048 329071803 546228895 920100233 610929017 71947324 712922244 387946571 539714798 463367621 47066881 546063242 20317736 633090800 469795517 670210685 756001567 750578055 303325318 304385929 431834173 303706724 894692521 269471559 800812165 917991008 983787710 189379757 188958434 382612271 328568760 337114621 944869061 327824476 460876116 579978076 641672944 757837913 574603933 7763791 36333142 235897078 604628101 546566306 240270089 543097985 196010424 311650802 731215899 851643388 823676590 634911373 725350633 897380941 323192465 348780821 579607237 510666270 687379023 576334354 941737303 217972020 684195299 513502785 443362922 520414124 873882108 341962918 729566517 901878143 904266507 644419600 580607999 995088575 792808172 419962839 829705391 949553849 696607736 940160911 457825391 278184610 262610200 310633956 191159417 156719457 81538495 364713992 185752244 55708418 205135210 145421595 608016093 801613268 443304317 264976715 29885145 584864363 961990821 852392431 67535576 558161283 296500449 966274157 271333185 843552340 393554057 327198948 782152334 458302865 368550863 787948458 869312518 90995231 525019089 766070058 305542517 353650971 678984181 378609569 947542120 61816521 594363885 385945752 218138901 987801389 236185379 772247488 507439530 914010451 591088073 874921646 254435116 995010245 105323711 574282178 483508271 47287905 17624327 240847911 737116872 916158993 996000245 256997284 582106418 895663662 478128050 678572728 723294156 57791700 369616255 511795249 590707423 375828308 23481549 926826592 933287926 228870890 609790650 542222987 407646831 991975620 40581336 843920311 783246915 433709592 344782300 143131888 588933262 138933417 38099375 41801095 863284753 249943459 593587374 517474887 435060340 610757449 749458496 848845818 88530608 929723784 57892046 324740662 263243839 11527177 382879847 789278791 748056862 869761016 174000168 801756295 550535043 627762054 356974675 700812574 33119974 630586985 157037751 7900873 357272735 675072562 41901732 179691 929387669 379052522 812972750 753143696 884619957 686914517 930389940 134560259 518157073 213029034 618387276 682621905 505692251 517654402 736753550 494055192 339391036 233071532 87470821 51935391 189179684 111906160 741478143 454691266 657966976 965827555 210328687 54164392 817042940 685846275 663249780 883031538 103475280 833602165 983175432 121784129 705337946 298893688 791516573 559469298 194954308 40296124 418503219 631289711 666656666 682855724 671917735 884968484 330391589 244189658 217725343 901961442 643812273 64944508 787286026 584973403 762701375 380760461 826874567 736954291 924746617 407601327 659106118 714321975 322318380 493429262 395628344 90762352 11289986 490483338 295397366 951409564 397182430 178592811 30558663 640433280 23574048 691490589 639298786 651908692 44612401 208109512 313435574 258663288 425445459 803134434 192588340 383555031 514708069 330703195 216278262 379755445 164629993 716953568 482546335 631262027 29003972 968552777 858393551 576620157 858430216 890756860 968191826 870029987 157793650 694463489 856075627 548111707 937396340 530014563 213283963 439316926 324141271 329183024 333665135 754393134 833356367 48258546 780434917 761775371 64799205 502002641 940477954 974380483 938661514 439695572 363349062 415538887 289170452 506409474 908690525 277197321 726057441 814157958 293757077 288570423 784944990 437967506 111684900 434721063 20498076 795819355 782672790 168589368 21986849 695000232 236185080 259744223 334231444 237762516 744865213 686546581 106637100 280747964 425527125 676688939 294698068 344032572 542329643 30502516 741554093 853027898 844380569 196918934 535674516 206685675 62264027 937886335 544030269 204511688 201134248 285460440 265372822 689577017 183263437 73964439 988937439 963353220 436389855 975097981 306779867 136764476 784992939 674090925 897507926 218140919 889847864 462582621 498607089 471649408 104369218 584599421 358146035 897192281 462313229 169235519 95981177 639897706 954690534 286616284 801964545 604328803 110561657 793657211 376338595 517210397 115302314 775073538 298164956 30536620 409268936 856813380 140176647 767851207 84706040 878175872 988889958 647199498 821380972 422947266 619075187 159278390 583007959 322688475 504880486 117604832 119041229 313493767 88056505 164324564 968217705 73477919 602098638 92524322 458828616 264035695 10133438 216397851 951098202 753081532 401948132 978988475 115865016 507302444 978544025 11272498 826580982 748416487 382718558 805812762 724572324 393869465 813486972 920944680 810272199 907403542 539275996 118214210 26039982 318411519 803028837 505454881 482070601 709658398 802058272 612984018 660521366 225146274 718623158 819669951 647100670 42619675 607488105 148047419 894457029 875315501 187931316 365365994 466587453 502968414 584751635 837606843 758813070 975493909 255734474 354436579 216139270 568555132 461343628 543159576 246502591 753264152 903382787 515120093 472717091 78189065 800794120 691200580 840048467 711182047 613549483 920472585 307591684 636655313 165938374 219344660 568976722 611662267 705040462 396558164 847519229 541742365 236017445 700147173 443494470 369180857 177164739 500951584 525854017 669060071 615981566 383390080 569305392 569478098 649455324 547209869 836027107 485025778 157054605 313441415 304488004 443346953 918124099 145505880 213629436 900906643 366164226 342425794 87509722 488884669 190331735 287791589 213050735 651972491 694246231 257314403 318356258 800255447 485145178 808920947 904189450 777423980 709660215 685398459 302044111 574585639 23207570 454165733 416975607 408266207 553644656 660359934 75274735 789673055 980706149 621866477 183365172 420719017 324771727 504948809 410348287 430957543 13867233 897285009 185932994 432333969 880104643 48971123 219717826 597231509 539761148 716671794 818794722 227314731 85075665 470468576 526868314 446829858 107342911 75549376 329345919 211255442 112914538 315843660 805143714 98799143 348695518 718553988 127467919 281502164 207377705 883699296 645633003 568129419 369764844 335103868 977536859 516143387 512050121 220719447 172222804 167898987 243482631 173024062 646946511 762992304 519167851 650400491 270140810 664461341 503065630 991193486 297988222 777653010 628757726 124416875 518690508 325813128 416844224 607034690 483225933 585853929 893733095 63153839 35108359 808185834 52568958 594332322 15327337 461458601 64252491 468646938 105904067 81076216 299863683 210051036 50560179 346532054 454635231 30293695 311162748 731273227 935841826 248627185 333933986 746923617 162233364 414727638 703590 92601409 69991471 929848319 798983092 719205652 998168631 340356289 498981583 928693537 498810149 614115467 841078106 653925086 990992467 621092856 869376823 132758233 108337435 992860923 807381275 845697811 838461857 722885142 165548565 977087016 583787525 549965395 840771786 813395144 448217549 996346692 792007989 891940618 616111111 149341540 39638778 445574336 603802795 845199075 34467949 633108101 407366612 518756251 408982820 967659182 636263204 623074572 898563734 63353535 928990461 518636640 636075467 680554200 235071196 3857784 468149673 502764398 882959197 187403898 916281162 589170402 414554820 189812669 240195569 529985076 779297749 202904988 819351360 182315397 471981688 249587295 710064960 819083884 74328873 403074691 727232083 753846993 101189355 581992118 495330509 736045784 796425824 334223532 884057958 589440253 77116548 995252666 715818096 608539189 903615320 811959092 603161956 143784807 418727059 322781086 421304537 755203694 374665219 44853159 136612339 33396534 238724404 411306000 252389497 547265368 461556695 874696264 538392779 699650136 943813389 409487181 863348821 790957415 804667015 126591860 295746757 625295037 142150916 368860157 776838734 297203102 4261912 689459331 314495166 427545700 86193554 779930971 391307379 175260276 410483151 721680333 855298 128751658 580575950 645685557 654962235 885394533 234876332 794479518 762549933 271608743 125885596 652364124 677119803 8277511 843556414 734942249 193256319 373405503 146375156 510218698 708981792 417183442 185954617 445544555 704327946 660313909 107027357 2730505 396439442 700569150 262823518 676362133 358689856 751370111 464036247 811575736 740822857 419318234 732877686 968069392 842614743 937711627 251790033 953782228 217440976 927289921 516655066 333922510 985613444 706611834 16684253 285127532 388860600 979840612 685719338 948322878 873693652 445746811 198685352 842177655 752497587 236096255 604800177 408116059 952918125 76946100 926237965 885344530 781150854 201602736 268556643 531668821 28530783 624242116 183449368 547501514 339146583 760631808 977505310 928841883 728414516 905083675 20844934 394487127 895417084 800221134 279561272 396090004 809556842 596648172 386583520 808914062 383405336 295533743 879753537 882307215 698578676 932994894 499449776 888084122 43945961 700610628 212100770 860586285 758005002 773635415 944959881 897024744 508658052 784370646 627654271 886803121 878042915 401132826 836899034 16433392 978010595 243029354 448879825 781451130 637074720 499255316 17693194 262602091 229748658 627730809 352949330 402834197 528692538 640501274 857002451 720353944 589969998 668110665 455597526 621547374 29974096 891337598 641607750 217112270 280675901 354784079 456132392 506063517 389258161 881772198 369302996 806454523 991133765 452347935 269304535 69959063 271737409 908965318 231538611 760779266 881427200 590810118 854885841 667992522 668651919 818050567 571195266 83628826 115085023 244684346 765641063 12248804 194893269 572318592 733885908 259271244 616228024 690726642 431572077 10383265 984331237 25670811 224192684 505990073 676587596 490065599 41536805 646343933 354132155 676994567 614745684 264026044 26473752 968327231 376488920 909013657 515727726 788165521 27911611 59418131 409229814 31078308 87746386 444049471 360282156 596955696 453583834 198688168 589800499 872358205 572204164 51192811 487958176 537107595 407389354 69836034 217163817 481533248 820227317 171728843 632245053 547816478 434728620 140288596 52733246 492966682 20656886 253916715 290582629 580892034 648335932 192605179 856820329 806085215 348912223 790724247 240869225 901008594 910056378 458339758 982081588 959191338 156997971 836523348 26576086 729905504 705683797 665931803 436923140 520474510 881046899 799020866 518121903 648118916 815545713 76086649 465220721 440484479 596379246 569416574 515039824 789330745 39784135 146864331 398518916 475326205 656267109 590228218 871904786 972859661 384538255 634963871 120860262 552479594 995389111 11843548 21570066 243058904 808135564 989550885 781494380 2296112 226730727 730139076 268510592 819916036 86060991 378851554 359804725 116138536 880689281 316047736 205756650 353324056 994779189 455865088 189775841 747347898 857117246 985073838 729518851 531031714 829483557 985707249 536993285 845682430 569374714 531881849 813124340 815653483 671257652 868856586 59011039 27740688 906573723 419682165 124978904 782254692 600009546 261309420 989624742 633883685 736913404 182001426 94215218 362791418 226411885 864389271 348872007 161201990 103232882 462234116 282062896 630166513 201421418 425958188 489726292 889687612 822416930 720031617 708040395 678635356 189632742 110446072 614892653 38077530 44789202 579940152 470718137 649828432 891749380 160247390 792677234 493484607 731615908 611292368 888130527 919393240 921571433 872101999 455351061 909401433 956380488 246165125 471226268 937984868 453785145 348356365 235007078 27973271 317775338 80967423 428907699 365918364 584443649 7263371 11371254 92900644 400071181 463079188 177413543 222775647 838150863 74176303 234318380 815460777 392409006 643153071 592845733 869939795 533924827 463612232 628321450 983382356 225190753 862611897 800762174 675264674 639548320 307401448 493071986 216674109 41204612 533501918 827328072 758257074 133944693 257504970 153075262 481541389 971864367 906475502 926758826 403608917 788874102 950922305 58430816 25416049 515348210 339858423 605576547 540497139 591953487 67258171 309614421 192644713 475270215 772755205 976509404 976739128 406568167 866429405 773350031 970548051 913200859 823806342 65679066 981137271 129948197 647497145 951626820 7604245 593531978 103763613 910921939 597443286 446525335 629404450 955222557 128365013 812516192 750684873 670231496 586851291 317303021 786683261 227646223 551785311 107025059 52499882 875229627 974496854 140494765 552943486 493869173 184541822 458979813 828299934 781907972 938415906 509575826 92359006 932827247 889610364 73711709 477815107 927677517 924523348 955622668 974192945 106742271 834817230 874080047 358683103 576220780 624938028 162644602 121137355 911699960 659397393 774811456 420569682 66324441 262160372 343241463 658064951 512448130 569070152 169139952 119436057 118966443 771020880 211720951 338256522 267896542 230101888 103784255 267495156 785708704 751286828 374380970 368985731 62158995 672269341 427979430 9140721 989692782 651911938 716596766 750687398 320222597 666479007 198049696 758643026 327947883 5734706 980855420 713903921 963030155 22834779 17273802 221577317 355316121 918865120 450816751 888416362 875889345 786141450 118163870 373161364 663471836 137828318 676866887 229440552 594112129 511824123 194226917 606944719 241909161 695451149 794528499 743798224 272328781 706964122 850026466 442523833 499868909 583969562 174514854 663826602 658165070 302930731 638998731 72494647 926195515 488785406 586265350 343086342 263383308 394636971 156661659 201450005 50449137 411297127 582431812 113350920 974330454 222275027 70186549 846073559 166662471 167890176 806205970 21286467 243413076 23370468 495719746 413599178 174814133 622477631 815046293 655751043 408768848 369022961 839490187 507083056 564347219 479346787 623896884 933562073 626080737 92224672 559652488 338493608 375626716 562581776 275411377 208070644 691873706 238323567 638623924 889053761 145034052 174473322 746035242 870667483 700076171 705788897 4708111 962593986 424947726 90294983 220968120 144645257 31724995 552349889 331679440 281717151 314984076 368035113 150774823 325096693 706866560 574434841 159705316 79085361 667514606 332968069 884771326 607788817 884100287 669579324 424173548 629342436 799470608 548013803 921970896 453713176 314677165 666616312 76266091 975951441 674159104 164654613 167921457 465184326 497696359 753752058 880561951 481434382 769640479 505962053 398246685 789001664 38419185 625247004 299144998 643369646 531791505 439384489 8112748 744623577 853175755 722575488 157043861 211350728 674879744 82834171 290317051 631417723 232132022 190500211 824261822 389309918 565462738 126817648 996616945 335171185 771698648 58566646 910080221 746665195 361100081 305891642 411431183 387350103 87841266 12310631 420388992 534162344 529705608 425282182 438929255 884300977 992782938 693497255 359382372 431316299 867144241 346095487 682941103 17425181 952880768 107279970 326556658 279511628 904117581 132997197 897551367 616060062 157127359 473601874 994330184 741160103 519313170 257089006 817805413 454550873 592784105 535783002 362771979 554227064 217390969 330521461 60863497 306491377 499659300 955731410 950357969 805394853 362734320 5044628 580089937 458223502 490051969 387256642 316275259 756160335 505256363 476152930 373397773 6792639 563706777 167853661 530806231 824728212 200051223 49899017 795723354 442574563 155993892 170744639 21770949 491155587 297534484 587553828 634797633 266049196 400823164 828181903 968918598 672631809 792278879 612214902 439994321 426215015 356659101 155396785 783067890 677173307 770567048 351744518 480925406 681901426 346484490 157472401 284600321 214940798 765082580 413186298 791717266 603474059 374751642 695477848 604305759 807440868 3945321 153840225 645913516 861865381 539912074 220897622 894475930 308878151 443964583 18070318 308977997 709160999 527225327 837787067 216974966 815718059 131684621 529255453 890233411 430937493 294181010 699564632 919039511 390890127 992315476 15982518 368190084 755851246 303724186 442497877 172898182 768119337 428937848 171835958 958785944 476367908 533119068 737310894 385878027 653186180 49238979 329637920 115457392 42201159 890988423 256625393 872401255 151718054 975896550 212288556 960119808 166148067 283559996 950465784 802056897 879126421 595222338 852148842 139543572 798824765 87687204 531319074 35393540 874237629 259976611 819351164 148056269 17484428 529448497 412701489 448680114 113325262 214403759 227467327 298869256 900405889 407891629 50130179 225313491 825000984 908308665 708722771 636196665 189143404 845390506 581566597 642682767 505281806 286056154 279669700 942315425 92780576 109956400 392521935 788547327 491348173 617015037 918379379 213571167 970388064 753324883 976300729 432831873 235344535 849317521 875892993 673171721 234407457 777247148 458732395 965877004 760424236 6510631 658403658 429949166 869109605 753745655 268389907 187652940 335803431 248047554 816221584 968757223 8326824 372267738 642623700 704695555 386801679 411831014 613687512 807109712 251571378 59527342 970638416 888046347 567143940 143304047 356866005 126410006 170896051 419347756 27390141 110992510 414447649 690748403 658804836 5743106 63653634 854559941 922039595 817916737 388607338 974073740 184370166 821639147 120851163 640215466 548203137 762055172 639695936 219775755 381841614 496620816 272699425 232191487 408661017 78373605 196778726 20958674 661725702 204874709 257526682 43459258 216059473 499456487 625489374 325365481 174843263 625565322 825719888 883947629 37160574 971337338 814560195 678103930 676846602 177131542 90108232 593072512 96106352 714034913 436598215 877731099 645698140 764407355 780275269 303366610 945519609 503887940 162229164 429412295 742587076 818419645 245669899 407020445 703575339 524467327 751396016 29930772 372161134 575147017 529692592 623070468 215513928 863405751 884629436 74296703 912137693 520620772 923392034 637100642 393060334 978649691 300111733 498702990 198418765 511397431 556983996 225667807 226631240 945007435 543796145 846893465 398328013 295878406 656645427 369233180 847379270 689065703 653781202 676520858 923998266 486359394 108913790 415158217 710978356 343845058 982454408 875216542 806960773 827519739 910711778 947382529 110432931 614831782 11974594 991638884 60849184 380879378 251242159 820078809 179257941 142359646 219590022 999722021 108581848 231796788 630661304 872134560 238879076 314781932 594891580 203330328 485300535 807409244 64756701 998875088 128687440 73957102 297001829 727415665 821101374 953165341 258887030 169835267 330965058 719015080 345577870 666440505 418021661 481943353 427564258 444041375 511534940 9966227 800425048 161743393 702299652 598176624 262962121 476485574 977180652 973667858 269531579 432655809 389406157 649012054 800866350 355453545 665203994 858295474 978530147 812987298 546510799 91756456 488692530 183161231 626928608 674672029 614943325 897985078 6805861 86560769 223689434 752048627 658667059 235952109 107722358 178997886 817074791 424240855 309768541 753222958 169481840 69297603 526433318 792112913 870371907 286133647 993883736 757874340 625425762 363707983 268064684 606626317 728636560 567768684 500435033 508877923 504212243 855237286 87174404 635211664 186584686 976667612 2759116 646647316 306155855 98804863 820582413 979574313 623893363 841761469 109491930 198851899 604992253 393879339 955869989 225297121 798503600 671477572 690608615 108648589 601382074 473925037 930691405 580865330 228315068 529569685 973618391 540479197 348255043 952745945 508134586 857203005 101982988 930899821 766396902 445882087 930460919 340411881 892122419 537292534 196191228 231210656 980439046 95467596 444501843 802740631 535410392 614165327 704205763 870712514 994230648 903308205 145888617 477835601 967719035 469090452 524055461 858440011 698884506 265027494 25512318 367881753 20590987 291047096 546143947 669463510 984161742 740855732 341858269 858864187 991556119 160223954 812678184 20929416 744415467 336636673 2623535 434443721 959274936 144402513 730091154 106121775 485322150 1154669 367799707 526453024 297347502 238364290 581126709 414800159 956700644 1049374 919019935 109453579 794319302 890118470 804629393 778033112 409772520 490462912 206398396 521236021 268015217 789777848 901986043 89809257 928204739 649589132 225501236 866192212 405773215 112804011 281145562 717423201 355099104 876218714 740992551 284028392 235520797 775272223 42728565 872398334 369437852 173265705 145610403 622932766 604844013 788177626 236972511 168224398 720785344 796043167 763064357 134090503 212030311 535956945 130560439 135032402 837905725 945707718 77863272 245907880 819269516 645494991 148608341 856408867 611575143 69072522 264073039 104597796 179644752 98534334 508172757 178855022 212599308 242868682 205826269 90749008 733770400 283557447 109745818 706790054 705805035 341133927 874359381 970847096 167395405 364318035 181555867 38406067 908133383 258109116 914127597 509455583 293752289 450406125 234228622 57342594 340868292 102444081 508891204 514674865 47894145 371263939 855961429 568425234 773176176 134935951 863123312 246484856 281457061 541925344 429677273 652352008 854730951 451139766 986578413 575122432 180792316 911794195 285990821 542654873 579159384 798612794 790992378 715209649 399833755 900761813 526879591 190900593 841886548 420416348 879291607 884106960 64032227 96534028 565002442 374491153 587007077 458856749 775238972 762424424 420754945 16059818 60338750 106431032 242839161 6019567 594876437 717161481 214673863 901982298 766521629 660618366 87373816 246550664 666536660 194420735 803327294 696316161 717710018 223408569 47799241 431622090 697442688 420812588 878121027 694655312 904919446 970154119 828237323 671660713 832993601 943925017 530256422 461094860 859350570 93849832 645073947 663778641 778703768 200208348 757901995 18942474 732719233 99952054 643322768 378705734 278940576 747922209 735451917 866159695 517234901 281858566 643390939 730136368 241107005 739476574 419580007 653167327 516819921 186625673 510796452 601769949 546424147 143272913 56080980 66625439 477253916 354100550 54740583 81962238 98495404 706005903 756022328 418057856 712064407 634786345 433034274 265130953 405980537 914075576 312726374 363498953 390681875 539811878 127717857 529510823 340101956 888604149 359471133 130463392 814907430 759987447 906958115 523269429 151594382 286825979 615823749 213243185 875687992 506689274 714908202 738014201 818436399 255299269 268746463 738874456 172481742 482108121 966159837 941036942 11825286 407974552 288071832 557366326 811252942 779941723 943507685 567834250 364361778 666500170 834154436 431048889 749416644 58381958 875143002 59530607 379214835 727910080 603643512 765048679 706935083 911629072 654378391 272287641 301763092 619059159 970177890 623327461 37895379 701838163 174624438 381023181 235756363 499255584 426529117 689333960 646616958 596875976 703003832 360785472 468104336 649959144 420599612 994426183 9837458 205089084 802941997 166726763 126652902 967440916 747175598 567983734 372097011 588007625 142047359 230511021 78359913 745807765 383704589 952704329 701539472 186076117 941989602 379420325 254435365 466929440 470476624 502393714 909603483 795812374 371636222 24193406 569014984 510208803 967533378 149405381 885205105 414952769 282889235 588215555 277898025 374742966 653593028 6615576 815014571 458628722 860709935 32397104 780888063 331545889 793976301 553947157 506243116 232739468 676426461 16916256 24667464 364231468 872237951 327606974 153851085 571415941 720018953 211739825 835765527 679119049 937044916 567616481 901698060 102311805 850798035 109686790 746271661 274551685 273469911 735224202 560024241 6996503 833031056 940843527 895962031 85635828 267651552 846513984 520365618 997257690 273946391 810339505 245395040 759936800 404273370 938601004 150341233 851632672 2310064 743253370 333477551 192049101 881261135 350605363 269730757 216447929 616019851 524838358 12228095 116174561 954927433 258576107 702160854 217649728 717554075 577615390 740207252 491203206 980338014 974173960 11257033 136175961 869694294 585801117 275425068 888171662 219013320 157357645 212052316 601281402 7777434 879786466 605278026 929974063 349429889 238063404 542550121 681095138 94489674 971696750 77243649 805742909 621811899 825097991 910171445 365822979 576751175 980059237 366478344 74601860 518746516 6733494 624807751 934640165 928747295 731069377 414804791 339016531 989404321 710169163 56562532 4013262 522910525 279626741 449548123 348339852 746008455 698466032 176820486 520887441 144894916 319983493 344690487 765774279 490677553 545954561 840220482 842177842 442947356 807785586 921157826 378553528 579114622 790428923 996317686 555494297 429823966 107367998 80009666 50637344 900301462 777359047 128586873 664068693 49884133 628240901 79640966 115875116 905453502 760913141 832307632 831350563 752271080 996906888 557532190 634378439 405138037 421515241 950450754 338888836 542822019 856776878 838564462 687245565 703123110 298398774 64745494 287906707 812571230 194279843 917520915 924313037 480778183 368253525 502869264 150717821 6519198 186190221 694117639 510628813 362602801 216715192 750557587 797747452 226378156 998053953 307476850 382817231 711334582 774735957 715475292 355709150 619005010 517181390 103340465 355222465 937928430 673817341 797770160 22258892 560200514 262271995 49803926 120336853 194465652 533241499 857597226 854927773 204503166 271046744 146316963 323816352 427971850 740121013 731578868 676295621 480715816 10938939 668495624 666389526 536451807 767422874 348690368 335470000 976064546 906039677 532761242 777815580 946170017 184837300 620396761 696724922 842683379 812796063 597584663 237188899 846985363 941966252 309280555 629777000 841497041 116555774 749038024 63640535 340277256 457283928 713887312 656269119 770724729 999354188 387965731 88060602 128872858 303140694 259420276 824442565 434546542 127497337 8840439 570804608 373699005 454145824 861435837 851711911 325990676 600943872 35536225 807722994 235898630 129425536 208078875 121787042 92224455 40304924 190741492 820415509 997806879 342292618 592667382 100153250 841900611 417335691 215477929 119560766 396583439 641694760 605656074 278757143 351346454 538757298 77213567 720825811 151623016 59417893 702638550 999385263 712990896 914052485 941732903 807125589 545671202 969381012 560906772 307786295 367146992 815553904 199989662 936825909 544317723 426703878 858123744 296243301 743058937 97147931 197660810 291920192 929111810 588521863 619110339 186980116 474966517 851306925 948517708 820548910 945585087 775538978 79258908 423973713 839314613 859086211 805710543 18070140 765891481 219956141 918029046 389764773 36593967 184055728 75962539 295548031 215054024 304708646 261655727 596637253 650140646 595758918 123338743 203297149 535453442 466893730 83678114 879204472 161316979 288825002 760836208 312440919 192467713 303769592 764061604 116532965 376366120 997742679 652261216 396954829 632048333 230398759 542002352 928585392 963994114 337746708 818641017 359881078 654754094 742365095 505319830 834425159 395442267 339689183 877491728 891692770 727161974 743813734 967250376 305788902 836521864 256083756 449751310 620707211 77146832 494898429 926093638 219197310 286696791 553110547 837090018 51925923 757162848 221716886 119018251 921002844 366766307 414050897 646305791 626386531 361613825 163734830 937451700 7062752 117835471 715074462 353581873 770768000 962608375 783106087 547025216 508946567 299963564 31806570 881777772 302659694 185121336 136373815 34926460 223626083 243346518 808720387 641928029 34450792 405878190 449182189 232270848 700422100 928372978 818462139 792439644 145706204 311914717 121946209 309527621 119497032 718144644 283379766 749378466 118170096 823641416 334328896 587653114 73809900 881082052 966381879 375546842 171918899 49677485 746304346 505656210 321092981 20834347 640348381 51555490 86225825 216597351 682316964 81663701 206474514 388406541 936363624 55520861 908907421 538224803 540461082 665313325 882610956 516163950 23051715 289578252 830618015 461586952 330928681 676406225 318422105 645154705 52372909 168761269 653569877 965415222 728418933 724852708 363349851 564846835 762644811 731740862 463162829 154573374 949788937 44505026 511431466 477768984 779711036 718456786 719924311 817297306 626819011 25710345 42050568 314589918 29158577 438299383 929047573 308625841 662173626 951093989 695713847 493854260 432299253 245588799 882115644 843336009 138062519 461731712 221009437 598524897 411992587 946140710 410923695 393407763 110197088 744471808 770981234 941213006 861417663 758215401 353238907 722491874 23447393 2385071 46954386 629598904 451687673 462640772 527056451 13158500 949647304 922758440 902181919 195660502 118106457 151650606 357726514 799722977 233497216 636675713 771528141 154491587 259888788 222468140 590879082 681855126 299733694 621368874 253369660 408448705 452585549 827972941 926266759 133337168 730123344 530044417 438458778 252667654 508555781 403612762 387434169 473074107 326902860 663522951 308927233 187875104 274336423 192718163 306810919 642709366 507855884 988854888 904215351 68185300 214673747 745956634 693900035 733355708 67327628 991725033 841409018 466775127 150662244 459263153 817724166 759495118 503661965 902263046 51780360 373236811 233342302 864483584 973149710 468701658 628820318 759765225 448905689 542168854 950064498 769440987 730834840 284708263 838730141 426005994 16419130 55172329 773426680 494996658 18557656 871449557 678046474 852836819 479038910 5579109 24490537 105476230 985714865 627116873 63263759 482783003 864213516 408444664 900749884 926993058 232843867 790680761 570657523 234234917 184016735 526710138 489061083 796655558 299347125 540264541 838972012 993542203 753538761 33403758 536493490 387808797 665497987 185232658 983728464 924405490 770850893 195334582 755012155 431034837 507333549 497905556 314447611 895445159 440463913 878409747 700590894 670293686 280048694 129015225 467697374 722040087 19603442 491029084 464088472 867882066 707265857 833602684 954751959 631733466 774043811 284093823 83321030 764449762 722082876 454155575 792205778 849620098 662323362 367245711 71998593 202476223 608705735 982206013 549435787 906410361 583862138 940641311 157273795 382250377 207056626 872718313 635555001 953198595 934691505 632475586 182695561 974172864 45684591 555245401 300757285 51819678 159452861 820390680 595743313 501534795 998155369 113253488 446501860 915730879 761971888 734553022 84778371 96618701 444698747 965055706 842117803 589014476 811137812 876718103 873961957 105831211 394037756 461803910 468340365 546277211 516756023 208276759 666249894 345935080 941875436 155578450 511399390 838271949 157392190 794436296 306332177 563374329 898428999 821226715 801218893 379055330 300456542 229345817 680080306 41421976 693973256 562651766 103927465 294274763 814734751 624232123 575570155 942941057 36862586 203737138 530156185 658805731 873084677 539694823 794688875 896235814 323558420 480110878 198744425 169348816 512926149 884302669 735950037 828912626 436052375 652666201 14227373 903709084 200564665 978434260 355436438 791324977 405165700 891390466 716337899 444771230 76625159 350030816 384452987 418364380 651372554 230145763 362579191 52879393 775294685 752743459 714262450 835678160 153101410 694982839 987706256 860462330 865494131 222692341 45240548 505984942 542642359 714786017 7420434 555528854 749115893 548228667 623147840 825218695 2091928 519050677 981404920 912023833 934236130 667638931 22941964 156380559 905349652 532065803 12820726 113030446 699933913 334593286 776527070 61241778 927517562 847296275 107075243 552108203 274730936 676569506 520534209 573805282 4794244 155955469 341285692 329205856 917471464 152491398 192913383 211027935 481194773 283226876 343854120 496440197 387440989 787839314 374510916 416868366 184207384 482414925 381127941 951113234 597790456 281538043 539745338 381682343 926550726 533667699 362457992 652577035 454967685 105391048 838031043 736962773 361211410 590144887 70401202 509376238 855764252 834588246 750353460 505772888 945914641 742991319 458161332 709995499 392699712 561015927 587409471 492075145 75253787 592880764 990441772 132357423 631913678 390223351 450104255 98941783 221158598 902257227 198781672 331366144 63092282 889886507 780432091 882096006 200803645 945456683 186066020 895527301 728793162 452871444 99160417 550811085 243925457 304685150 489078556 265389715 81676899 474333533 507159686 839697640 908276414 886435078 318811568 88272548 430729684 655986799 951797699 480735182 31204650 548294555 532959552 138520237 124367316 392004667 368404504 547413735 60821441 463689139 152365133 611498784 310957625 906153540 569280704 106365240 406725119 874123305 468457918 689734886 711535161 403176525 624524681 550828972 418095172 396136847 932611084 371337692 503892887 355063904 610037711 152988337 513484772 998392494 780304157 275646543 872932233 782607048 744447806 473050151 317925912 222584232 726032449 974913258 107367020 765622278 586110459 321316465 308551956 876084628 343317408 332532656 266163149 459049811 365841912 752433219 581083218 852213161 125532719 269363348 610215206 847118913 13440152 950736899 658355440 406272945 780724564 642317977 892610502 443927902 56943592 586146164 140754836 995078777 359134337 567026912 390852356 833144251 278916016 480694118 425580171 400408374 860873144 987676465 19637940 478538924 704089018 151921680 873076543 552116132 489681195 309016637 475497517 164809168 236654875 146287973 370291370 833501172 637443448 237891617 545069648 525780356 602297212 580877575 772781692 773214376 266196199 344461939 952650232 813810260 460848333 993079840 882672926 783694181 980395545 940348632 971948108 78992812 989315914 619829881 986632504 74701109 992424821 463051036 32140160 153263596 252447066 568391462 480312109 900348847 334730462 698995249 559971746 438036872 407260888 340299175 724944276 275002848 454590295 432912868 412988112 409320670 528180118 67814099 554910105 575057290 244508060 742581950 115795015 516473034 576630663 160128084 806581960 522092122 985767141 713056325 802197022 272336159 63470307 71610950 132204735 223644757 545246866 964001849 450495825 142204632 372813056 680095120 77351281 585009957 234679997 694843738 938921716 546077787 890431047 856277073 449983634 375346475 809990747 451386184 728894267 620977957 44006893 150886481 16984946 75257057 688687000 837316978 970782834 586604499 622818343 800737534 27940831 791670896 302870514 529257747 957714183 217334088 346758644 173735239 285936938 601347689 667880148 715231302 913592506 631658491 561147138 629148724 903495201 675817377 590129114 266305648 695509864 327764205 329251096 199375519 153932825 225521010 285828512 328505531 589559608 256732392 507999970 489836730 335977675 308755372 62355441 585368068 125722049 187964154 794087617 478057183 650123503 204533736 469569454 580995773 742401539 378986865 458023666 12237107 248278239 983370883 437807574 62420907 291508423 49893968 57881470 561449433 149324470 337268738 210051246 761300663 66912025 350360895 65201573 679074100 793264109 240044825 520992140 375617767 33681303 407556453 384029985 268660441 93212116 671686024 711702010 21515839 231560916 654372475 874493905 650558265 752923414 594506081 787894154 660640616 993894304 519298583 85210032 622235979 328807101 520169128 354545298 263730660 930953258 45852540 118103793 164642380 333614187 555093801 359720828 742095126 706342249 316965965 408634893 424680017 76760040 867857470 203792686 797784749 43486570 522749207 479135623 305439559 181712726 731309693 276523314 614092763 745549073 339964983 548833746 245546548 363268966 399195813 39033343 944938517 344513391 780330706 175613313 691270948 616604773 755771567 598949510 717488726 994163794 26025041 740930264 991974500 337447979 136940087 687382267 782203380 499139285 736295378 782526453 622023389 156499528 795421785 764108077 679151405 973225205 235874802 924078331 39397170 236038456 84079681 7714675 296126779 786989734 412024315 135297416 208189848 122362347 856183701 268808621 377982720 568435070 483211742 655026708 417905571 412027339 174903404 615326078 502615780 57661373 520138581 136367741 447062634 855511054 745523539 189361757 633861719 196022001 333711811 51448457 198461198 53391880 283745812 939301689 155925890 614676743 823094529 321429260 999614622 126145674 209857662 147025127 844102243 987454291 479220467 705935377 258186708 995504024 435564072 261114290 298679937 503865860 406141260 430301497 224834937 697644631 428676110 133761894 697972947 152577994 753887705 652876878 52624574 64512870 88653672 88879684 664006556 499231242 939649927 767112612 935533566 232085547 196505416 223739752 412611166 508003223 391487842 145186437 686865022 826619659 572562647 872916553 123416861 288843556 252965352 365134422 909777298 658577651 241840034 894261130 678271857 828475704 898395697 293245134 730082756 974931133 834805166 524933399 47803066 637095673 842397605 610751569 873822694 865386419 956592642 255213578 213783952 199793585 393250626 721195332 386217842 966542205 709109864 483922388 612531165 849886915 788754512 381848889 946870045 886907076 216755792 34613572 563405219 918902689 45285526 690791553 841469851 905635319 722993536 51754899 836348344 452503230 751353033 936990765 203930467 8316412 237963453 814264191 942237159 695049059 436727474 867478208 878345114 236211221 709333907 302743787 373963516 874693166 556748440 10833073 966863536 934271298 816026056 66145805 538542622 38730238 777894514 806387841 444712584 315932086 903300139 120551945 783000096 342150904 146315407 383499643 11346165 626759200 316655941 941145717 996452531 150243260 322325883 378259617 661572007 863376575 922277859 675655052 231186211 502624456 828971729 613536967 331930650 1252571 611965317 715140155 305241313 583550156 149058247 850659315 261894882 467086666 420781586 544728903 116489905 102533297 47650262 651254047 839114001 817303305 194053385 806166916 756546445 247451710 579563944 860727189 526020100 858551189 746781566 301529988 745617231 550290293 865079188 958361083 992697797 166608044 162081363 916529767 824677207 90081904 635071858 813732535 464441844 801586608 121174707 490487258 626524679 60471973 111935220 168411733 805714868 275570376 934343812 810899415 590167284 547647590 461659683 54604173 144169197 485747671 783128922 38493081 135928725 804245900 790968475 834622173 452413326 775966563 35952756 138755150 357492131 689082339 429029923 131668743 810888315 784720076 655857576 529700522 713363300 868726866 416396294 206017058 18540505 554000489 510640816 748659136 917736289 952701223 36995505 77076810 140133691 14003454 555540227 444701360 598539384 192060890 881185350 950047212 293806003 891965142 495980985 866723899 999886268 93736491 777127442 16490741 200305113 11392602 769106145 981958427 793081366 6775792 657387740 778729254 391989555 566110781 449127598 497966647 47264696 956673868 574869318 819352481 645385425 549210275 615600736 695128005 715034637 141287025 321876419 214361847 623753650 660960071 304301439 403634683 661925508 218598324 499989280 106167061 340810951 40811376 695049580 593129982 663707457 571486844 366189380 255590803 426427142 348688969 639548829 466844554 643295172 968056799 786485987 419979769 999463297 579841033 980080860 957298444 116969786 700983215 593213152 535608475 705666733 152162281 950475307 659888617 874165515 395174531 193359216 437742227 163158667 844035774 413244889 550307262 403130595 369605376 737941940 773803068 842081655 716082599 111437363 205356164 191080830 454562663 136762046 308947440 748363289 548129078 949400633 828938935 685816477 950565313 315295938 394085252 496076249 100353742 669502838 616798516 661868105 262992673 474015782 377910505 950450299 367033903 308549977 378772035 866779639 685619036 935467787 804486240 678899072 433001287 598085205 723721519 320282885 262238081 452321112 734667623 28246702 584948915 80053295 517679769 468945576 101321682 276391260 11578432 550435960 977459566 364187931 354216388 92386026 444257297 860548042 426852346 522069237 628168138 105850647 362250679 340287810 70546365 909269855 129165722 956492597 818354 626480386 152878643 490134077 585700454 787113797 861674458 488100308 85726382 92365644 554949542 194120890 692927156 377068659 971195841 876582950 248036844 516439319 121555304 821037979 448485062 222064075 147172263 610607147 611952931 177938236 740243640 341943767 333016272 873233725 683409195 950012367 727410290 352963620 635923939 523141934 732224099 883213608 209943399 191642728 191497468 553962632 751104387 330395764 24924527 128873869 94911780 834421024 115553950 750225987 27328878 239101531 973616743 275542607 911004206 80239492 407503096 99156945 2905983 515548967 775567913 694650064 237214075 322131811 949253996 947645549 312889235 285370945 80332060 613654626 500262302 734322701 754477719 576441540 248579565 143301330 46961623 626852661 160516688 143233830 450055984 547796722 330355949 898955716 655946780 517277822 443308430 515176516 90567683 465215513 835753449 494077205 846625591 253802072 619884334 887531393 468930715 958341091 732071779 450931210 90028701 441759231 223224897 976090410 854057157 786176286 768127907 837939587 653711689 117470632 897979374 592032420 456531616 11829425 979055629 701768269 236713496 737705072 618838665 623786944 243546607 539403698 248270458 919910413 755414639 179645043 797309978 685900587 986139706 451139710 780307857 294793241 246805824 807340048 535437730 60744268 738435721 993470469 930998929 917588332 228779472 662446082 249854249 525016697 705045480 199879070 9399424 132627777 82016957 554977228 329009753 710171197 984074365 635028136 495816451 317076674 711130318 319396674 956112868 969649381 118005715 356798790 334801704 76933157 667861683 219231183 590354354 875278506 148460140 451644188 237537663 435206393 771614465 374535297 861980942 964092877 298565431 971344067 656349107 692515350 581355979 262030627 406623585 121565538 639830969 343992970 397671973 225527416 590049367 978144257 407553773 405726970 679563791 208948842 865751867 92165969 689473153 236954823 235658775 680114462 23425414 28275519 331903142 804258219 220325662 927300431 224772555 242346623 283130359 343322748 998770230 827833934 916110286 736638496 942740124 182067017 902018698 79794259 373387906 534867316 258373449 460150266 332544846 547780076 720270771 45628317 904508264 474958086 602572280 227202477 229483531 623563985 445583194 68096588 629345636 774676037 141166461 422068095 840225276 88947473 553127916 931402805 948324279 586405845 53101593 327339239 645078023 947480504 331119273 759905632 400722080 126030772 678144386 574043944 608276004 683229136 25545029 402492542 501781483 220413835 925760030 85353931 936602220 114549557 363487722 729304659 707547272 564415865 854804937 529376674 611941796 93753560 717793737 386342285 616214262 632225089 921771919 852703432 781335017 26356131 335859809 801880755 221670007 688296737 447438775 64590760 103980926 35711090 74955244 854593134 505531532 92867168 700563421 556646985 819312290 430848751 915085977 52841357 719976114 762095920 450373231 144293467 170676046 496519661 629214771 536527470 480814314 971255580 948713876 413657233 137520654 2846829 109076546 147299318 158433510 993702285 286751681 766601127 128654657 139587181 446517495 753954980 577890803 445458307 134897542 406834310 582480968 153028275 494020905 153756216 160326180 448226806 779470527 926024717 918498109 49483680 479467828 75959763 221103922 290523754 678786998 236801752 879819882 426235289 354129281 159156740 622662714 319921526 432870974 736469279 491415680 205382118 803163488 280544662 131368326 598175002 909510997 40764134 481037628 761809358 306096601 252147915 201694273 87001472 427894513 266224156 796901688 172390417 497336738 617202919 623862695 856736992 283565406 705938721 469568938 984101278 323128704 882118109 181843377 697710852 520044848 255141490 663144791 690696985 187107938 634167983 574401775 24083761 723664785 364955308 296483002 949331867 555756482 455765695 705746336 673020373 182725732 671569980 988462422 734189211 870265775 771893848 287518865 726301737 799084962 490844007 249245886 71781253 123302534 157867558 586740776 84152196 376335806 28441944 537163991 355769389 746179450 542923240 570405427 316479703 718368961 940942807 619035326 825228409 601652349 228745728 761282945 490073463 84118795 143049360 148144735 53216950 112000477 979772838 786302740 834629413 689910616 495483563 896014135 42876764 677501327 450089281 769252533 434859233 252547267 444980552 434168934 482522135 316743935 114434026 82167687 915844759 73697412 97420772 259449547 721321641 405095220 917981662 354370945 895119153 756872170 448433508 155377524 50169353 960886961 457005918 5957277 275699537 992318107 496029772 277342042 271209395 771681170 483794034 795976516 501922566 280171343 440426345 329038122 556307946 199561991 744866170 940041013 561015704 857904078 272342172 153832404 126447506 750369804 51251392 385407947 708730778 462842673 482220705 152788507 619920039 81877119 271035017 281013254 805078655 378403501 78460235 125318865 682366111 894157484 805424049 253013883 132876933 20613954 230152271 927704721 420206797 369677063 289570725 188215695 217553415 380288787 462905971 529448721 876478537 439206186 584164788 298953232 938176475 272416937 155891613 527586049 212944760 625868770 918932456 626755289 997835472 386260812 69487315 275290737 399070322 186017757 885345582 825812532 168888716 525771817 233939994 912204470 79767303 646809771 806210483 790182954 177104603 46301810 221218183 933011901 987062323 245738981 955885819 539703743 866244975 280724684 796340280 891835094 252112818 367113730 802976998 245611650 21399739 778097844 923052947 762619265 652525193 378169727 472023175 404725226 140070758 539915768 372778744 428199794 711468737 892769505 237946303 256516717 128533515 771134926 852893248 326717438 501240546 946427075 926072014 682607810 463734586 868720239 902992653 420666908 793355068 129235036 434929173 522800482 355748661 896358219 310498876 55611503 381858161 711308895 210049002 293958443 527209814 865288342 270712665 247514036 513354689 677280636 315355556 46288435 365832147 129316484 331118035 246782433 332719766 841060173 639790891 644402464 690871219 895569531 452071579 753493138 822521156 55545894 678557220 205270403 397254127 200468368 967683478 194756220 32842311 340943683 281135197 120203794 950988465 929950653 723594956 851691694 308544192 241035576 518840787 395415703 279394393 411091309 709594592 591426164 488311719 615024924 33529450 485556335 781818626 699697392 71848322 993935045 873971473 27682638 439509250 916475083 475784014 414705606 83091167 51566502 207628791 7864129 75807476 710078832 828681118 14939376 978986444 65590875 786876040 898530804 488856499 152128586 484915048 157034828 681231447 67723580 111033215 444639954 435113366 955569043 465498941 151575313 655332477 603852660 815416726 802778443 224334465 391529336 894993581 528140632 411804209 44135088 790596907 592467349 630619351 996882167 985168080 139364426 48481681 37078925 495089322 270843814 785890129 655186157 73963135 598623344 950770894 233529814 260071899 696353093 154053990 322528668 553114567 711616274 714544071 975565387 139439791 808151341 689723039 912097833 756519682 3750268 810208941 592244652 895232730 135760663 928224653 381070721 352664003 282909272 619972367 234400948 667457389 686306390 837434993 866675406 351207038 453544968 108507715 988010939 363530994 783856488 42384723 565505170 751046666 255301345 467932323 420063834 667118922 258871506 518677571 610594915 117245119 185496742 962512509 70643010 829195535 573937588 494234746 158519408 614466412 574073492 319576845 965322672 733436133 900784157 316418476 896722206 881780416 805833909 930095543 155797316 145529284 472160067 407515288 691365 212317834 268771456 619899599 79834681 414529098 90143763 705516906 800822553 412691983 51773790 191031015 748432545 500562100 589910746 675476036 746306445 707085485 693536023 497789344 93557252 857724879 553407849 980964832 772811723 726211381 928206698 358817034 647993419 486696502 131694865 155648687 624119323 635826655 528309958 905937784 970877897 441419747 201236764 981542905 741105730 626330978 924129165 635666989 802773991 212175630 762829374 506045095 884359280 53597900 497723205 853945188 249601050 24176068 854573235 316536166 136465207 50221216 435390709 412567168 837063928 643688886 469120814 943893102 979681548 928869369 962556829 526349110 655257132 347872229 237350414 971157046 4579335 825940252 616752526 973663548 446571683 257118229 418576504 3992925 830751189 228606739 436172975 613469776 82398511 803096438 507418853 847969383 228826650 959458347 528023600 584135402 226409157 957024562 346564836 505068829 406718528 101145256 429404024 12542404 568401631 208663000 997633294 228179369 31097946 448978992 976673480 512294703 845749096 408563364 121585195 61533049 977887300 378187601 793918233 567341617 399813465 29876801 400238550 385015281 665474478 541545661 273961784 743544649 421987674 449590433 824837178 929528182 615891697 78296830 271108415 757077993 999431940 823841978 310623888 520336961 67498149 73003372 468328307 277142708 633502521 880630549 380923958 224847359 937537346 543852856 782776477 536101430 579270190 496756084 63356313 583161280 161390829 619402948 179588639 377130379 931489253 133952002 119788550 963952445 728370723 324070458 844350252 968295421 172298697 119310124 317554560 366090054 811320149 95687121 292237696 733195605 941977064 480084938 411305659 649064619 317581203 507655426 447946090 583147795 86546991 342071473 955762347 490474688 625455983 417801866 333651784 293631627 887409570 569962038 958150978 634684593 846688034 78832090 917470389 184179061 136551889 575280643 120728056 253647950 652224170 830129666 571333311 921407228 206424098 873078347 770879215 329660453 269187812 529555625 842805289 841895342 340687741 144605790 58623319 956922483 877650239 306352332 795185795 766463160 320631861 807946875 928487230 635633081 642600821 761977011 56520245 276111114 903161729 155645570 459208500 758162187 247606523 682148299 430165458 900576415 156201727 440143615 506665761 948579230 181750075 256346850 411617429 221172670 637717693 847884039 63392556 412143684 432829628 960407678 286872449 535904631 918310151 326375567 151908911 192660821 35591947 152899283 719892858 72856538 122601082 323573990 352095664 59220390 189352136 324511119 483314478 798422883 838250737 441510335 876018260 449678596 397365906 76899138 934206732 887444875 385102530 576061115 369702534 880657033 376286002 751770452 894181570 477089050 992606735 26212808 818970135 473391154 558175966 473461206 978152566 749625559 34532650 949848925 994877470 485392703 893370987 203728974 966102275 430376005 377659668 754306172 608268721 538485654 4655836 295812090 741642410 443726866 840077912 324141316 887798658 413070101 988421742 636465935 493390647 294612830 620075497 826127515 395584150 869429112 891491286 38208375 818614484 515066621 922927346 143468139 300910950 763288531 253317162 738264941 919786532 71638513 8779524 936989036 281888207 201097758 710861868 529689627 451276107 363368537 402097445 915598403 184131172 805108635 403831036 833162734 624892100 833458489 412515745 578937534 413986614 40780818 155119146 624227657 927538904 679727448 192612033 321047162 439704574 663637454 350633885 2215337 402394232 200020053 576574298 585604796 852122707 465824866 177252889 928318164 88656422 731713591 115167902 2547219 676795119 492254459 702998851 351693531 814259390 795043658 894992255 161701588 940940715 270104455 60173033 831666334 6614646 431487439 217670663 645098934 757886629 655437294 766891329 335262500 782230457 231902338 291993762 977945700 432582167 655662459 34208210 51117549 224128769 695939241 599315977 639075940 140034086 20580311 718285176 190254879 408316738 174418871 169821241 887563250 27355466 488054038 928187191 886993888 929464488 707798941 964316960 75479073 589463729 742848199 23200255 322637741 668785173 110340226 476975747 36485817 271045686 186569402 165718480 476737681 293984984 968166275 805314302 802456371 874189605 154252659 472230141 668124215 728484227 665701120 382670362 871535899 891249983 131508953 796611209 450278953 765316615 139822725 890604868 789902562 926553583 957366338 202890043 127027812 206165763 580305195 505460948 77959452 878725417 904145050 596778790 414181849 373541924 671068646 883896312 374756283 296811538 869152495 166434771 491237689 198523515 192668478 651725517 550881912 639925961 673638703 66764091 225209799 459271956 423935006 108300641 547080677 606640203 804633350 573774848 503388417 135392399 852843938 16313602 833705488 718219250 218097639 950822348 939285667 177144146 577774824 556314998 88408017 102123741 999019904 45816266 990927714 219233469 371364019 151066612 430077523 551731756 392298715 859309299 774216373 90347126 618132410 683484217 394559958 971747594 107412479 1835180 71236523 80184866 514125479 721624330 344598125 407037090 500820933 432677994 105340413 471184356 757617882 453198921 787601404 75860174 831491128 718846159 802324000 748186585 339605625 658682998 702844870 736417817 947900330 421719787 827116310 187859459 601969164 20435854 590353719 434881482 423153909 718388530 972875102 844343941 336487858 757291895 553616249 284315721 589988882 504280342 213394869 666682139 150788733 967390538 698740049 440318639 521625561 128582491 555505719 923810777 235584262 969947630 513012929 610798276 238466081 787774815 71424635 443947666 236359526 990869095 199317747 633305989 474248225 905112275 671040340 457690734 432961632 412560793 913121275 467681796 923277503 841317093 479378765 940179347 872852365 849192212 288039204 791327448 159549192 720068461 223963943 582235055 219373357 91824276 445167490 684111929 450948178 185678035 534296587 813858640 254633798 649092869 176485318 729901862 904385677 50402184 798759577 136432612 786510562 392380224 930381427 780663668 979934320 862455249 569962522 190790332 224001703 916127717 426550509 642277253 543606646 485942592 632709576 734748923 270681704 401793962 555621808 557567146 577099787 612082163 584239619 232305150 903696532 486230919 903922583 981732544 96881258 135964256 665236249 614699388 292344742 966031942 277415165 431578784 908701341 715358330 831228786 14693554 253449969 402997618 310707974 257920015 825473498 192636824 843970284 614645024 582793806 932847029 935650199 865647754 845720280 222753837 166921716 519175498 503826796 769143393 772738855 60554573 630845495 924025016 125926897 8009069 167421325 543082896 262112344 749687926 295963243 450343823 947631325 126265766 836162304 449731690 51333957 884853207 901460956 895590774 627319876 731588864 626241187 235768400 246159930 947790601 905687318 444147674 935119573 537457000 244027372 732770785 346140856 180191286 310876425 415570867 823923918 8448207 903003837 256762571 460729394 629077490 425602506 540121471 104998546 113007166 712790916 801669114 474408662 497760425 260073324 549141509 573916334 996446836 279225164 37599650 885430620 638292084 701598308 687737221 751879035 351987548 847898152 309222260 175864189 723233202 926956325 877603955 772229156 328324444 735280410 149018527 270873942 608652792 419668081 751124446 80453193 775092593 819728096 296338507 899999202 745614438 524436331 578377723 464670066 391311546 664394664 948051716 526940589 185383866 666786264 394614937 998033330 491286001 746375222 187786561 926522598 223905532 557956609 452364265 575201754 345164760 396441494 92152763 786155239 955234581 794153997 784104211 410802110 185053705 72216905 228327018 352686249 367905292 775948199 156012657 450294405 397511264 582158562 468488835 665651855 522416286 769498145 549669751 275587028 354596446 848654003 488916254 611816313 894578231 720844796 504193421 775617574 747200598 339978363 707989465 624780678 675978406 391925091 787269847 7953661 934948612 562944312 499600183 307082802 344087606 686576692 261856278 603350303 39088697 406574550 852595477 290765491 764834083 105136065 265334194 584937476 39664187 923321740 246192972 466881689 216673309 117167363 205892277 125430069 44337816 672942434 596019135 7081804 227917760 643633952 104583786 824359710 900581394 457323903 394315991 90522382 260519976 665443035 506030074 321019458 664181039 85000429 239975509 285386434 94369364 488277474 200300292 393760340 593723186 30828383 907505351 278513605 612228612 546340379 596065919 472619217 843446491 579393781 882449662 27476276 720244470 257108029 490963999 692536120 274439095 651938395 101768158 477272282 837260513 244869464 661981882 814138344 545567797 676384019 41517816 203653055 851244474 167343852 630013529 583730121 443493294 681481277 385293131 356156810 15484689 742997431 883784835 574964328 312442944 725015641 962256162 52643006 850137017 446630172 505115996 153736786 665624371 870519739 136010877 711787110 660206723 786587355 429329972 297580068 223440723 726166654 509760117 808909273 756401697 542810391 489931661 432583193 17802408 63316761 773140974 157244344 909333086 293111205 325351683 211085107 962597176 95294872 475593956 100120259 75783529 555415906 73448577 777105236 296150366 311887371 487760197 70466223 118881243 189308821 438022090 180555790 51200680 542033097 413090528 863058751 39075796 26451699 962729910 745189646 283897835 735759359 549234812 195893558 175126070 145906172 881753751 27914140 406480403 82936951 782070860 861774662 918473036 226559145 789535202 29531323 984933484 538323330 331266020 716084781 774607911 744649364 941213554 483234420 205572567 418319005 530591737 967107933 140039617 478915917 208833494 857204244 414800889 972322120 21533060 273867682 516517339 671381399 344496539 920381299 526850280 378284691 227266121 674861418 214594183 366210420 406438907 460361922 272622392 956655847 576699968 45780935 48046049 910875134 796016209 134912987 3904357 462669600 711654587 348832373 814001635 617535484 476556117 372122284 101413826 799069272 483240448 591207086 1169208 447836907 886366337 945457228 861920538 464737367 487919123 746922486 402019964 793879132 241478075 524917240 23314699 266231823 71458095 218929868 535615298 843721318 696888201 59958788 415740862 545774321 721884468 20468332 703428486 147708328 612584851 145522332 382711938 152304019 830189312 887238872 839312202 703963068 37052668 594031047 561378692 483192425 381228081 851274714 795553746 475401363 539366988 786896057 884974434 361062975 77284555 719103103 699587413 307119931 529338359 713532418 138675028 847156813 187730115 290893305 880418860 368130513 785355610 871696013 69595626 127169346 12883326 256096207 886659602 943908107 708812803 865488202 665762697 495965913 775886801 800461624 750158164 49177998 184681592 645398903 687626235 290866932 933230116 685784396 628807438 339035182 139048310 394904938 845642383 397623512 94563150 171509138 310484243 718092626 505846893 572227933 4955779 383122321 227492952 987695892 899598478 927298199 84728856 761101311 667732499 799307119 280270257 855526194 516675670 140928988 744575919 568203425 987916263 855080605 914524670 727831178 534376590 15210646 973920408 484444318 339066982 224244161 514122929 828598550 774371076 291412734 858754686 456662981 321927283 191880301 618528358 323339085 234351071 907088894 346522735 462288556 995052395 187992976 643514419 237832868 430145093 161151388 850667190 142192450 235552645 983373911 143204701 640184764 960672546 109042828 297520486 297632458 224706784 74253297 948471368 823346979 592296963 334716419 53356495 46266105 994940552 129736946 552124131 595566114 105155302 101680903 145247891 680223774 370664968 472523839 26094473 134997364 516949619 342071219 101015343 120006679 635990933 958032600 14960105 198685890 153389781 190229505 127883111 837179347 41680754 526001482 418480665 517609980 759241242 618405755 972019830 318846380 201888055 364957815 566050852 497805095 403542273 652098587 595129294 589719804 882733771 800279351 943975045 782857905 877856879 892102413 405349019 980590110 225922448 535475820 966078106 855001226 606607912 596994492 164499552 255870252 224641805 811017592 941153812 848318549 593632572 965642387 939078839 513849419 687561568 816909956 618320408 654437506 31558965 255230501 647456223 853377695 903369319 92814889 149931071 893186892 508013236 839273947 80143116 74623930 90792223 395701527 751817985 690073278 589643511 706361295 974314878 385073226 911614290 413786937 95723573 320383556 424645106 265113255 915670266 525654124 956144958 485788636 395366928 584707119 906159316 573786308 62707793 19396386 793637805 93651902 149888990 916962107 881984042 462197326 966720411 578096939 815831910 953952164 516225914 30322269 988623970 771156132 719733158 524093733 671390292 679372848 453807477 927464458 901763528 20832929 620961818 722477738 709176333 654150135 892807214 149801436 321445238 655379307 471738076 77931984 892501193 638847078 646391988 356260780 342028336 576615286 882321457 937086470 938651407 987177293 723342400 682134016 195450755 448710526 547247710 919689964 291821494 131842057 115276942 882301305 338816054 609724532 970581832 246582164 774805271 457415841 212005425 862412495 67038646 846424462 482568487 617624530 65525283 769216455 199956602 222519317 434852334 680564550 444448173 200218221 421765636 759882255 396204980 259453927 927927151 504814414 986001238 969753851 426545059 367120678 80929722 739839674 583918444 418073685 914413649 930835200 70552474 476479722 369543766 169353544 954935781 250007672 549442525 512124276 822521660 787987436 364169298 287867070 611851790 888407630 213950522 384038534 166710620 640796902 779799132 992346306 194791827 226608222 938293656 209376068 455933626 966697706 170030409 134417186 354046004 838409654 53675756 846652003 376531859 181553994 974158834 62367116 568734987 91197162 522261619 799003809 900150179 604692182 845717727 874372864 343844735 395246282 764745587 396332228 475019147 756030235 661459977 794087043 84838678 181706825 460871402 385146129 993773990 192812671 516527527 178697048 290577411 769622183 457892309 625401707 666405096 742702959 842282027 571790310 635294001 761862612 253513952 714383127 372587887 230159189 602699228 872555509 245437260 620510049 300306084 492836209 948989381 177645467 901069372 691717362 211027062 764063968 78702728 1632248 4499015 106792056 258967969 604450132 919199965 853877316 191252778 284184126 833447453 779513534 636128430 597049308 864360369 922634620 171048275 537930997 120790402 609135874 44372986 456983765 368698957 248338732 209047160 116693529 624269786 230435783 34600924 472737655 908443806 242830225 712395835 898665172 106534132 743750459 222690643 931988844 127179254 517385143 356392815 880428085 783230484 853625241 326475255 938458634 721332761 456751289 84688936 263456356 759490742 454506860 78223632 796366209 996266958 227842590 284209641 117413486 364626429 824182367 687180490 440724503 378173934 235217701 135659213 655829 313906149 144617918 106538206 958412458 885857859 700517859 680295621 670598405 433370510 547486947 670489840 322188077 527529426 621907008 962001149 788270728 281479095 959162029 739471942 410031290 703873667 727969913 764785080 604658702 514829076 320687543 82451660 333280235 581690293 764240300 242829155 153385149 793182048 521252360 576768455 891332070 250623024 21746213 290401658 69080247 730515031 863242592 275456836 377357347 156163876 151420605 946588838 223672901 836015351 357943641 542754293 206058509 399129753 217087159 32815174 892163006 448443390 958606023 409190832 31762048 522271944 962304559 914793740 414722581 920455795 49587898 606421117 630451392 251370945 390969459 477716270 502656819 646088125 179339209 356861491 67162517 563518859 201726706 870718450 6460838 259859227 492635037 239579613 128370173 817348868 427677846 461645599 394004194 230535501 804269359 398402308 495502323 815574295 937479587 873165616 309027647 689867054 367870628 73128045 594431812 762991943 325344068 382292169 577495813 37741701 316672139 759341377 725626264 474840458 184416440 295815629 642710998 457129555 319794354 982379877 360727122 763776860 893436164 483190217 68840289 22995204 482425346 502956964 621206416 639094643 380653189 550567933 629236843 423114423 483181537 347979378 256418471 981242015 353971114 603389723 882298529 212059402 3059696 865354983 370116328 419214856 66176031 922099947 704506623 704986492 324760282 545343855 235058337 793545345 305661901 354194754 432716919 616594163 58223154 855552774 751873519 942807430 775981088 191665190 196267555 542247820 599680595 196897941 953472422 885496367 465114023 446710243 323698297 795425736 849348628 175079775 540015582 607991937 643388720 663814835 723059403 92627964 100578821 190302098 847105963 35678941 759663422 254926500 819252293 829838271 129075064 616043512 78055400 124130922 610775001 567436761 523310208 215989414 890678941 304021082 819026463 471284497 451895681 813902294 133459420 608032516 906990722 860748895 260120392 140077514 899288507 863035656 565115749 719865953 986213447 388788671 195678939 456921822 605755040 737747609 964220240 553807143 842997700 755963937 744096735 557638135 659652001 223553942 781945333 416637691 986543895 101903665 917168725 689266941 94046354 554322901 464186296 425004582 929453571 834062871 22435641 390788339 190080223 929598311 711846812 803257861 211407175 583829971 261779708 447882408 131735108 878582563 269200978 257826634 59939056 917730491 654268698 249801573 183735579 931796250 598070994 572347997 401901526 851799604 561979542 198091784 138901151 594404032 683497184 363325072 518843514 37866743 130785730 802455915 970190740 913616472 321192743 683961952 639928884 312435193 737307314 217650184 655737627 303919010 406955570 570873680 765618677 96787794 471038864 694242165 183500767 34227392 417080591 894940237 470510554 365929460 422709850 312978663 730693337 37275982 629221859 576772609 810431944 879477977 54988683 273898405 508821534 646828412 151846538 480497109 875361646 891221619 830048207 68829267 845995953 549258678 859253246 139218466 250584960 47460730 905654432 466723269 973520246 185567081 477623381 990978242 75311526 834521856 952351594 155396203 667044958 168461934 34405183 606328829 471381051 99039128 690391019 514183232 98044535 925431446 118513251 487218098 589689840 618815820 447956153 420069470 669499942 409114168 199861724 574367320 197162650 325824476 728810484 963274824 388860556 879372851 987754417 116362224 154269695 804388953 759258461 526673372 169102615 420342110 175735875 374991422 504805549 44737798 350915127 622804676 853011951 845691212 534696346 224061874 685802044 995240639 795617930 919621000 903954265 717711784 121817098 935974805 595958390 122877879 617027227 598454337 329838201 164269137 718489113 366239453 777855083 782489733 281201188 56268276 336404958 87092099 486724900 112206087 547713830 879021204 36236526 956656969 351820130 807310525 473831920 524800959 986705989 400614218 249445686 625539146 82448548 90491570 371834082 843609429 443763297 626584790 452064009 949065055 428854022 444604390 369180545 160751686 815025211 332560048 988043084 866979980 300368443 617241980 183913566 273090075 134991606 76942810 368804970 705453827 285463852 249600638 980784984 603241725 567414678 638226507 565868892 997551386 122698902 680567454 629133260 215941279 779580431 207120959 834492868 357541409 936167930 250902721 723663926 450565154 783563020 677734230 853590842 775999022 299121478 549556427 486706602 279102752 117458275 266861222 795699929 635763556 899329547 811018884 184569851 979899102 981612618 589947542 768013593 686284652 426815415 58648507 608388835 364877329 408799004 169736388 951823900 223089424 917301299 751330564 332109501 885479292 517418050 762560445 428277299 449882939 276759109 723117881 959684133 554839745 876758457 480604274 839753625 811664102 430452675 83742130 546915505 897108724 484030478 32106093 795170542 554907581 878522148 616740526 519041918 64211585 851346562 766829204 340594002 386757822 153788425 655045490 112560893 728317149 186879888 555252783 828590234 941795130 73637829 300838301 814604114 221404715 805167842 325875916 297791307 565290153 209645283 47601624 680838216 943684489 243686122 280252024 964724230 48972990 836509742 824686266 898497661 411668799 821686656 750866755 288304841 645069161 622093621 777317186 493639783 597743742 174084348 97638104 610113355 367680309 576843437 798510599 205249060 261463023 566441142 252646645 692626666 250575498 215975732 589202354 743091172 228476082 296468677 794836746 717144998 434434393 331555011 152612502 110256242 414583801 401062181 689494651 813976015 33677328 643427133 746270565 808111808 772805064 292080033 272723244 912382736 352123641 568031106 580742686 750995500 973793221 848025259 989637982 35994428 449221025 348594965 522113164 537581672 956263951 974432440 178452764 26733691 783176949 818479153 595436327 310114431 998419351 131079089 649805534 874570411 265741890 144783966 815648866 922130523 618285974 739016693 382659720 8293334 796179064 442349390 501718612 883041924 740431807 424529031 8510405 723511074 521177141 392521765 212195857 435855042 321130214 973606034 661836681 662559745 501283150 51406930 376704044 56889398 616987363 22429744 290894709 800903308 121699095 593781699 535435839 379364349 174190829 911640113 886638728 698412505 27152634 404402365 813023420 123895021 191065083 87834649 638892722 208117888 671001269 93865268 181073661 40960575 25669235 732914481 121676107 492772292 567353624 278421109 641885364 743942813 526679425 291505351 508566521 272889387 708756298 890308711 296130546 546784588 75060110 86165991 255742664 871048274 667670935 919786809 820684118 246580364 268188127 471052540 412462462 505334691 366036537 947735457 703147535 333719031 202685269 34725771 394866409 288718177 283992757 192271479 59944945 958265188 370150382 49940740 654304431 70410689 911821212 609030593 270904290 188317332 972558646 475995831 490426790 824283370 314031256 328704654 403698276 396455271 51355614 938177709 700052185 400259925 959941508 550043564 388598561 994940160 25878853 812507317 401505755 710992235 903926936 194853228 417288804 188188521 765751013 785696080 565211504 208200345 884619376 673822735 761892610 505044986 794351109 986251118 887467726 14190793 318471344 680254965 631688458 116181533 486174630 53709333 949204597 662570725 379932810 454213177 103863816 369248909 107988154 776280219 50735943 197409273 842855613 747652269 350177114 736874335 116140366 72991101 177471674 112714546 138489296 924615482 586762043 805967280 111137038 324661345 106262811 200986877 99137251 387912650 174959659 788207176 708048143 235511688 567512156 996389208 188759417 28626989 890811870 502334 563851868 776225454 361159917 293183637 191162653 466914127 27101791 543945326 366728535 627864514 597027508 639078046 675150119 237890581 81331123 211774705 968724032 760287195 678103153 808839545 857453033 213535461 184607008 112276468 953096472 389630141 186010604 214954063 24696317 994592247 220373367 899575879 116959635 630053773 577247255 38958054 331425007 833051888 661368953 958521785 546689692 707201874 804541291 699924579 802604902 879539687 367437878 356447773 503526146 22335984 634951275 19545919 659773403 862061870 765881122 175387790 484434980 54126207 879588873 167289653 243905819 868938817 685157844 100986988 259503824 267855905 656594035 307332080 919296525 519819251 861690788 961039512 667606921 482565369 744089349 293959857 235390783 783765602 869812637 121412611 130441276 366770828 818266064 642983261 636638057 689008280 430731503 955057555 697364095 376041984 788675524 493993507 968905916 30560843 966258897 648799891 367146680 639333243 539324201 71707919 647231458 334784544 203730837 399680341 815259572 701329508 449577439 736389972 524145177 914398900 801865639 535291357 962872079 981772805 363490717 88660651 990756709 553952910 578281683 561267983 54479485 487481640 646133476 90486309 315054917 496697340 771392882 909681136 646258152 988516667 260798654 602699619 32594275 183487899 560634226 573898622 91808080 630410736 927889288 320319222 910065829 333158699 740426122 647913740 269789160 336572564 892791699 227041007 786963362 690531811 921931488 771342972 867813616 235295224 321685020 449830286 864662729 414895338 298807662 997280021 524547916 448095785 132493328 781859956 737710431 312452780 656469558 130665125 863347355 820828949 894318969 40375002 358337074 55861113 939168310 253545584 573144913 737340885 864112440 928991203 880420906 724488755 872248981 929496139 907769638 272695454 575160976 714838437 250633971 946358735 165869451 560941684 15589678 943280546 245710728 675222256 822035714 587815340 10202469 533626530 314392247 500615703 336320618 334319467 118082391 588232814 930158849 336132129 903240917 146304450 756643714 241828326 749294960 134844580 846612886 540127002 775795784 516756084 452706885 874800920 898850006 706563369 744052266 507872616 720310648 496746736 737513769 172402086 972143149 344551252 57517242 595461414 866030751 902340932 504355493 683439749 699846523 739656539 714520391 43987736 54218186 310678088 286245809 909781781 410742521 180153985 692076026 956091307 54190544 524756585 684306269 535390259 373578502 41841052 104252822 388481253 221198563 745024895 506562868 337971575 831539934 362322127 944742666 866898657 185941845 223984564 436537650 875448760 281222512 178607944 638860129 99665307 581897905 876119400 294698641 483579937 79520715 631132329 348765429 424011241 606424826 192364106 75860474 462345680 291971901 332604490 850757164 849618539 959245138 144782624 957833906 416779506 23046759 589328154 998780028 90006632 570000144 757419128 919688394 250384163 334745299 580357955 489431156 879229354 302495966 895258002 157356510 91420435 211883397 246342410 190646492 713974306 405031669 654060681 200737240 562609164 808964870 344015761 678111148 87371512 789424107 604305092 835310278 367048434 735403250 643352892 872425318 469554320 961318866 8961598 605429450 857521887 455195319 721812946 584040751 820042653 23942684 336487664 169073041 616554311 525202818 948456810 764160730 153116375 773443924 35491400 557786080 423288873 277633779 548698250 451007303 106783531 570990483 516596838 393296904 439122011 163376101 656027104 528170256 147904982 284090632 775864180 467332348 371427667 24359651 382023976 461656135 198782741 547812712 47523138 639493624 199694986 935864890 889402408 525659698 846832406 987843476 123404117 988808245 680112453 789282032 780511267 443318049 368300876 368816208 948725642 188075010 949566490 537654609 184263406 743510707 109032925 775153070 242273939 567291225 417786830 599013308 982755488 777095333 50010466 171980849 200424959 82133980 167727524 558647464 932967656 553099879 801650619 117045641 314512103 758461996 72455959 967963690 192980178 424772559 265230580 223666629 602131746 900104142 405194037 650161363 60592461 332509625 114118240 832272822 832466251 930237081 278470461 242570574 818507962 190548490 702421547 679152373 275302828 162058377 172746665 580969026 581339134 848512843 52380649 150454420 662103927 254002939 922462379 746240392 942776538 685318257 451840519 324266064 322461185 959051905 770176317 951374108 879508314 93989284 340674860 441764297 784494714 789377763 85738507 777381583 177270565 172083621 924195980 898176111 614017279 905567993 364023706 478927202 3064119 24028332 472497305 195797586 268209305 160345250 307426778 241059740 427179707 774387308 401579508 763165967 146751880 816015208 283281596 156392555 476006327 685323022 568558473 730335592 711597119 187026444 84531223 953315458 937801077 699454504 334987365 113274778 910747719 870916450 569967006 459714515 61113958 599739938 589339673 411880739 591767433 284935643 380277338 857725784 287961146 579408451 128486337 392260254 559589717 998216921 366445790 359105407 529275723 93621610 852901868 962683938 293993335 574415398 432973293 19341629 984064844 381955169 899836222 408169762 129584896 897380994 867049186 250153838 66959261 791662663 163371315 980128480 590324296 99173436 88214000 216258782 962260324 893678758 879359856 796675868 764409041 622727425 374897728 335663297 519202623 595279308 124965935 705064348 750488378 426404319 641356560 227513489 657413994 971978982 503062512 430182569 116825608 719572524 589099778 891619833 949588589 163169469 643207353 177329909 364658684 7333679 913383117 895080324 475075651 914579960 141546023 89667924 115191676 260948910 810794205 410453441 568655803 278642371 103277113 36458341 617191474 263136857 436058948 548080227 697616220 172972211 518447786 711229901 280980805 139035446 810970051 959436758 585661800 912413418 930172456 840444506 818013422 757305166 14887145 938575951 505437218 315004123 79626067 991450681 655704526 578661648 432867387 208043911 128458800 372455446 228707311 327388570 741783946 149331245 508967262 712914955 96574907 42694927 861200448 587970512 236510106 157865523 775005318 351636866 323854724 426285379 976080866 421922105 144774983 483329519 814328899 316527223 969276163 663648019 298293852 215941029 201079085 412065111 681942748 790861164 541351145 667165047 764195648 165072562 605359421 876848353 253308426 444119995 462595072 484772485 79014932 374741135 650276101 340106598 737620720 923619736 956812308 207812265 360626541 964636331 937806655 827014954 304363809 805052998 927793493 837629260 248154817 981629663 757643658 733783291 616035434 576442106 300401654 948166712 519454962 712383707 32563045 57052498 901635155 852137665 152071876 470445731 735635411 686065294 38141749 504227696 395165750 928612702 511399075 976422660 752480197 170439510 452089309 308988529 644374457 636614537 291548038 821377272 599443389 638108638 424481800 530998109 668617031 123751591 297524255 898237879 690940188 266101826 883231578 355298786 271652119 939016839 510987385 210204614 74078830 109441727 310733761 652531894 790678744 900416367 850986079 949080195 742186383 279940899 989117420 330838828 911096882 970576372 475694834 381158578 250072882 129552924 830592858 360062454 136669502 144325249 122961090 741847814 793135852 661283367 434163322 138512693 791776259 621849631 362961303 783862622 502894750 541458167 347542013 665106802 855754408 817176871 815640443 723495635 490029629 461487644 307986121 929890964 786006623 202446274 9714523 153908906 14249554 527282336 992938116 529006850 436019037 616206776 275180494 55724412 957202549 559615183 548044876 491963103 738261340 304866627 143994522 748356978 812465689 602965678 342428990 628827603 571928427 461822799 810817691 321884676 876310746 494647560 715133922 129672920 286006239 852753249 486000142 317257493 473603695 641536556 652192673 57920959 324196791 611589917 940755178 738091389 562670942 949287098 71142092 976150199 858359047 710998690 271015800 712012175 118923117 595065733 463967987 698113933 143060451 485453768 379244688 764692932 153583695 689875348 239296143 450361873 858674860 606123308 843588214 113695730 602293757 537434154 966342180 82134925 734915735 749371824 595909428 123839892 272707608 364544845 938428000 835296059 782338130 230540779 75369260 843602469 310070184 135578608 903443568 954118664 324376432 542260777 886800119 500880996 469686817 289758090 185319267 426149565 636436537 945402075 480171803 994137504 398379270 961851643 55249488 334793896 322989532 903977861 946883665 719264827 148455385 327964010 776526926 172641262 456201852 749314873 185000861 472681541 964688294 529688499 593657448 95208248 496886602 375637047 40942080 855372719 176605420 652369167 237597914 879541382 825621375 623090646 43310431 49212413 963076671 623570212 559671360 283116982 141420373 625464617 610966649 792480922 800258915 466273904 747014477 110272036 766556920 607148884 163534218 260764233 611623368 328078983 71637731 880903183 7133590 821254247 224298207 286418335 485701706 713364168 636405116 955009737 776805386 389809570 152159292 222074534 846733386 291539052 582254212 119828200 642409250 879758044 337966507 480084964 645099124 592192487 447450554 817133937 42699426 229296120 778557059 127415691 884007034 503253960 924389284 730622837 776165176 588638025 994631153 450205275 244410782 102075705 495581265 5020746 90831299 732620388 696225184 678287679 232195431 397007328 457940620 858279111 601750546 247078600 626673130 300718761 634623950 907933898 637085908 844556709 459038934 574328593 759905860 41885334 9363358 169701595 223396867 380502062 23249712 985340704 610978373 41094616 481738309 821657368 36889967 960526553 261213973 123092225 939874276 831149936 746577561 492192108 892643641 440310703 526326895 717316837 256509909 860090416 366348165 898398015 599936435 750735861 788047873 210782667 94402595 2241018 79071455 720311181 465408329 947809317 149664767 745419391 815390828 538574989 588741199 663440228 74698075 316153445 35447934 435632668 118183242 327280786 310795526 799117606 551384933 968753733 792809983 148158980 286723538 526048565 878403891 134566312 575360854 773095395 550739608 131045276 664022734 163429073 186180858 706466829 71913198 764024361 286350628 554408238 879226602 376654829 480835584 179644770 268122545 119958836 977930022 239603028 965983878 607024495 598374269 26011854 161616149 145205706 922793312 38866795 933843102 492034951 855415735 530034409 382337376 437281751 952428910 740482975 85157928 495881329 33579312 601421794 713116887 91394895 274196652 837731707 135206200 923039801 735712492 10096444 658849856 489826038 936112615 168386230 159138717 42186182 958905511 290267692 249399011 350920604 118714885 100358449 238711085 181412201 968718157 48772494 878139003 111663581 307393374 223788958 625271793 258373289 485071900 316486282 213468286 942759078 444203438 817564152 456504224 267237865 600607218 713421710 128297681 963706289 765907557 374882988 655452032 385087214 444441717 548389782 504042076 963945626 429207303 980093916 962157307 14452972 62084595 954745985 594058222 920222051 488122282 190756608 272407487 476599266 192949567 912000099 148810454 680655336 474669467 187079306 491211930 581536884 931399873 168326950 817495046 452362458 78896365 619363087 778860447 504959345 604663922 631260254 118179892 559647115 687659037 654951148 686686125 654664032 227667087 40585242 797113906 529377774 347367697 722405115 865772679 938686128 381014360 564847349 613152558 467843338 377292939 877860486 424081043 993244898 427584580 400838746 165848207 425864092 104395955 559931862 207509745 532606213 857820158 120569048 839795137 831022237 456611688 538019396 153683543 481394090 291859687 182287939 257823587 870003999 845317784 968028057 896904809 926989046 395667421 951299881 431948232 464015585 956771112 310398401 803224788 827967932 100062574 923606080 273819067 576337023 740433213 71309275 441106432 21043104 777393632 876775302 740901846 186089825 104746585 316984087 730989196 595320303 849907721 325064914 711435913 519030741 660957191 50443900 169756067 591792242 194111757 44696922 274741428 180667120 527049935 855119028 79788536 837803259 268054341 76152130 481660635 863156783 38551988 917011134 837742186 822069737 883723993 895362262 742004697 776609091 177676711 996317944 858165229 35659634 727530459 282475936 208681120 281149427 415991545 958577533 920562796 54218455 367737907 515775970 180551313 539307485 176866159 545588963 697376692 740798707 936100405 201327998 721026766 892938455 157479126 759037009 412585623 342679635 653006963 745972964 229285164 553435773 354087074 723268132 982323249 653365166 475304088 742152482 227451707 498837160 21054652 109332839 139131844 446310025 893427884 824233703 37297884 206638828 738576160 690272520 493081404 221025857 629975866 583934573 484399132 182747666 962416475 754944499 909023901 717693529 861227083 713846845 316928196 207442166 382128396 396089330 859206400 316903765 491013400 646580235 812362226 25342719 923226116 990405012 673303680 200341124 136790018 774478468 979731817 684642275 297487088 637387767 699778854 35996173 119041681 867656991 42207739 735847903 732752026 104147598 950134969 192413838 439372737 373027662 769782386 765337479 941581826 352090484 697069928 209874979 36940917 660305682 73435193 435663032 289802208 564870578 178132329 641192515 611482357 809453391 976151760 460509992 333588562 613117 929680354 19839740 777538332 405569279 115871653 423379254 344596042 285121356 976188540 323852501 683653876 436241456 213194829 998797331 819565238 980444707 990757396 585733018 835905188 823862891 457326484 966907997 505388501 840909072 396933635 814930027 530801409 301792016 957572789 280875018 698187058 528393004 20203261 942201521 735116489 197522457 792920768 228689433 821328455 11346132 742231515 721709982 754772375 604156303 23095536 879962221 206422483 755872713 160345491 927226160 685205076 998717937 977669378 343971177 380588167 397825977 993223821 736942019 820061468 49306992 895423220 520763271 384099255 518764460 241881028 741421130 320961829 237715442 462033233 139276000 655821299 374450375 18711518 518898279 492777030 447582916 246996949 39657875 439886304 457633154 862575884 172413211 258341416 970357766 218865787 986179214 847131403 680935295 415638639 568044570 494378679 179349516 940858658 154974977 518305457 625898204 322245493 844771397 435825668 881344472 380662665 432680198 935412030 841862887 866402616 856182094 792327793 5349241 535763868 827333935 573719439 930982533 331193485 569079870 555975647 294481148 718626927 232623087 395076526 536245877 557197104 200617747 717925868 152403442 726697577 850643231 77890555 775182864 768225918 225238475 663994106 397042588 306823757 784891093 139931030 350020087 840672239 175014054 36320703 473400509 383398818 471975677 16331203 203689222 236833740 538641171 850121089 564238906 382237352 538563427 134604859 534235077 275064456 892011033 789088739 663015156 514866822 616208196 295437667 265173229 427950663 358383249 163644474 381890488 10933634 467152124 116443441 690675253 586526859 829735899 530398149 259288967 699726224 526415778 716937203 268087832 559672794 227631985 322948829 902308317 264069549 771978208 551583540 797045950 627454926 272175604 580559658 436618887 522705033 471576906 299181450 866270503 867986310 619819818 412798303 697773698 727080612 115143424 696710108 214139823 924813436 36919492 599835373 668655567 603262066 389947808 599210430 753321197 363327902 602847312 283115631 296266391 564805548 413558191 840813773 706508040 829939363 808073393 329765673 909221346 572296682 776675207 876020394 191314316 202404786 349013737 630151896 917803184 268166756 760587586 63766748 762443817 556482962 560958989 647609044 769813350 910082302 442599976 178845294 982373990 257033579 862820624 551405086 988670465 211092452 466903803 884867872 805131255 578235927 272937891 653273917 303821698 863161861 672820059 585955410 682889422 440043871 946873410 659642969 809129335 347071486 805677954 962960404 234184245 66022741 148223678 622247325 521192954 866786852 669808090 772499792 987030121 182053849 486683457 808447384 178746740 626234910 909493185 150924168 772993497 755538279 633344732 903637510 865073142 77348067 217155027 555933586 28566817 283105254 59973918 460465082 803053387 637885483 67826704 804598841 951221540 332556604 255651012 838317039 274378298 26401843 606453907 849538336 23014620 900400349 389565786 693767958 407700254 772056533 574556658 888171574 408199189 548976778 861651085 647571520 540005997 312047577 258577666 166783775 701918062 440204517 56198625 746016085 995221612 772299216 758360388 682256119 835067784 299279941 447539592 209342223 675926639 962642456 234733762 974003507 338168612 939325527 932944582 942507448 351852561 759941001 1374304 79463493 135898987 893896542 858617760 533543154 872453460 507544664 943816626 966078577 173933358 858357143 656788528 557447700 172855234 296046482 788379139 150193678 512976422 401989035 944902961 123667145 404593530 598478501 290491043 830019415 56561705 784647555 352729230 720369193 235209080 764430527 5396138 857615243 338756613 482017229 305955957 131317020 728396880 495935069 709883715 922372664 432941326 374747020 388669094 232045765 22605519 710860104 251386758 78368320 307059200 367239736 474934665 336826616 440647523 342439003 83560589 370587474 360990379 960633121 259514473 603413159 529693542 886364727 90006248 148398011 122626259 820134487 267570595 728155340 265833494 203255663 367287664 795721150 910895662 142475827 797402878 859110264 874038572 427792901 800334360 596866895 729182122 809578025 244450385 615239708 222305159 562434901 867242583 73604512 616514738 882224070 729986011 157905595 839112478 852255407 965513553 636722553 438102636 227966907 342810395 738630243 209154869 566465347 221076099 73655626 738376482 735127806 598264492 448538728 442464598 424423875 733606658 971415670 894141475 900761675 746110730 988817955 902221964 313479581 794628198 226766375 380934722 541212902 36855472 522229863 881902207 10995379 810917042 240578592 283685411 111555682 527598238 611540319 88807210 806893844 645014376 692180017 378559190 215744681 580010426 795814428 847979922 125968624 340638655 597418466 55667272 403006322 585493053 352762885 728267939 964717883 818626042 191474831 160657097 641135 985978793 595330015 292605895 741916736 457021645 905083702 18232266 42565202 217541945 545709740 283628147 535426779 589335932 553282501 559893734 56158840 654759154 345175238 139843025 708835719 849877611 852357406 881983040 832061991 857550096 898743152 15512437 851581646 462015141 898437858 507512378 969804256 650115820 888811302 740092524 63801263 369244275 204060260 297775426 898533061 975632560 830253116 206227478 203018876 908718267 376978658 856563954 735048501 38513863 404841178 876205895 269710139 851248916 855371616 100286665 601779153 842316946 680196623 479362091 217351162 102448587 908795123 396164238 7351168 647106975 668198417 938126697 500548611 364018015 210434439 102086652 931755311 15722413 390604313 415674269 203052772 274492409 71217779 356770490 40399926 607001507 247473534 66181263 312657276 1088274 145095727 730570514 832684810 85206248 679471140 167236232 141667574 508366959 197670009 969092252 796733528 491195830 366362721 451390932 851914166 646306080 907914152 655839576 75021167 178867571 417503743 955071146 621299347 567466898 481347166 796202292 433042687 365519701 535776555 358643677 299249899 575461134 883355773 865318324 632104213 31078614 245879919 571536737 85640020 81126025 706059984 672416599 14819238 535778985 211891060 287630107 372042812 171872832 333767180 317349749 696973302 461244164 543689745 666248960 577871590 152643311 245890983 375958709 302211925 964960186 466466568 472321906 621345493 254062066 879611769 754919503 156105981 239574445 835458854 526105327 44712188 390520824 489008440 181441990 179088132 352116047 392448331 970138076 330201103 319243599 998291630 409826265 838589715 209552458 137950788 149221406 46402694 254066674 492311529 461563881 3847826 913410185 228205137 519610515 516742116 337279315 830216559 942972554 912363705 957772993 877784260 48474841 483938419 364108053 500964363 88185668 237141405 259468203 510901674 668689538 306656790 150237620 851930064 249869070 870751192 931633811 933691533 434183558 738416255 811045325 669465812 194174493 455765948 732750407 568150148 233152477 436348142 428017475 644586311 377634653 924216491 589238139 502834446 132807600 197124177 435761375 648561105 420124504 6346924 751636599 95615068 128479017 278033075 203141429 919298570 388761034 990651239 527090225 289826439 854711156 916855623 732831705 631663780 721138112 813210788 800153603 353130390 289423498 75572856 959704865 217047523 931670175 659671625 588162106 244467362 267018345 83997656 527809880 355984699 958051468 971469776 689389907 453308577 142204127 452969298 611864317 332836944 576272046 615108420 285425963 773964720 497127280 291294055 899829516 422524382 119551610 698630151 418671418 659513704 75685193 327158474 32256110 148872371 750461541 252315705 666722691 160814564 300743875 566456960 713192760 402428495 297027032 804778822 457055484 673471667 251620556 293364816 285261435 218393291 450276381 729342151 417291750 554639445 40411381 734546653 189676520 140303149 296993495 970274738 958940323 525641184 943512881 324961849 646037688 818324312 31555258 724567783 380839808 905539363 603381640 961488587 872349503 268663657 632255582 177238120 214138164 335693921 133524298 287114688 802881638 380450206 286989605 446939855 763260628 19217892 51830275 761039968 723652638 789998850 202031287 185528218 626027662 250314565 488927370 538325031 635510121 784147953 753633668 478004637 976648205 100558372 675370990 781662788 320282977 953700127 452867586 902980919 52937394 322125564 61821587 904114194 236859918 936794721 141353249 124360720 352916047 583429761 528655579 62157503 690099109 62761633 308598255 606329166 736776335 502565087 130066925 297151891 249931164 525132400 52916239 461131224 424305239 250572387 877592254 692231989 348030980 18021676 854847860 53917968 697777333 790960438 944626778 826491929 810616633 983058934 615905362 298989231 671306958 868415215 750934676 969382399 968584691 719142590 743084593 114683108 118220653 140193074 862248376 560087326 166959797 163023748 201070102 908352924 632969759 917698161 697413521 424403913 254798021 376252691 551896167 975538916 239701744 540930638 350640919 278573670 42040633 962064772 167953965 801132118 918979913 345790221 259349651 655395312 770107818 631097875 114663859 196858123 530009978 945476255 967641153 803692039 133787309 835197722 52270284 86938180 104429662 757372398 731394762 475277810 743218557 676968285 552354668 759109137 92241689 932067358 741146781 405054429 826350906 171751056 498328484 782408286 962870480 799711372 327990725 900640986 414454413 437538097 585639723 852185045 636807081 198177662 515669760 278378443 420583650 625645013 909800904 513011146 219550970 149461079 158555273 860311350 858698171 899869094 856218701 432117863 800296275 910581693 138346936 568555706 521443613 232380251 421798286 94756127 146999385 400941859 921265890 791300230 753148391 701535763 706023566 852969905 120772253 388783896 48152908 504458204 844856448 16726085 897853738 393985854 399431496 899985308 348019512 272833022 598926724 566075131 522965243 707006955 156214694 112599057 209875716 893199326 391919317 134308797 518418306 514680255 101243040 148736554 561633807 813228862 409501961 62323697 138349375 849521947 570428548 472248253 650776210 750854536 882325545 837980248 914203410 775394736 304567050 753099835 766761702 714624281 989717477 619819607 311512920 629677294 678367090 452318278 867515603 565844110 697170999 172146280 141436940 436950661 198762979 584228124 604471764 426657656 853263954 545727286 737620248 847635753 762284175 138344633 862514548 595162577 47152582 48842699 930105233 983028228 763908889 210629439 199080823 920900789 877798884 74292344 333567309 403017162 940984839 257838357 434396234 692900463 483210925 943620804 351962806 956676657 459962863 903637565 748078191 697309207 998641793 345557387 547886329 982665073 510349823 231809385 96306205 549359482 419152128 332981830 234642182 449418830 10944949 21757582 902812665 872532665 642311955 12891741 696511024 435931538 7903804 961391719 106067209 843002444 682581675 357131704 260699481 449420032 272613855 702834566 270113929 600585610 974253017 77731637 51630473 842233498 863458154 902086302 806515998 887003408 979632998 731984678 473515573 640337833 539640542 835795038 195649560 550511027 338210444 872349938 799056688 259419715 199597373 665506205 738247207 623976188 54040769 547548508 728464360 787038804 759243847 955181772 55347011 687924582 663370763 874977865 925523925 421643810 418905892 775532698 460593170 829142866 230532294 846884392 561847188 197292050 807522445 75021619 456565100 643067643 47869299 205332359 586627718 439027118 437436523 323851645 884370357 66441886 699980196 729283652 645424555 398308464 121973642 363195834 581847205 436699057 649758328 235078505 176827238 394422263 187169485 859880478 806780557 408991861 327272641 948496649 208276127 143369547 959915125 439340672 15901937 529850012 833518329 923520871 104653004 604660400 409108745 30384054 271259819 717840070 26335113 536706472 342801355 719400240 303588670 910539039 991181002 93949328 133640463 249236934 832596882 3457204 584849118 138712121 318511776 30952027 467906541 720969881 612112483 393943109 747861403 242968475 573043980 179487044 917721690 138710096 900574198 452417055 9676338 685380980 235699909 250111188 600239482 60898468 735587788 298931347 924566140 397345366 328191417 959017217 302043941 992901672 620495264 773607442 268950065 202945112 413816197 657593047 30200082 240093407 189331872 967503404 100271006 360798867 633074349 657411758 697146305 332839312 331310309 936707263 412108769 37653658 955956456 699868185 129804340 263091660 641962235 234972290 311349889 866672033 794085972 736837242 296833562 635758622 724343919 926280606 901579418 519865485 691110363 405790098 605545301 824533334 29100413 174406959 898244669 651669083 284164346 488774678 175684110 863966598 788458276 58155068 850862840 234570031 83402107 886588116 436074539 40601407 823756985 914223430 436963175 373824404 794567231 914119925 200345411 343025108 300369749 119150884 737701626 844068103 466652651 789843495 636124756 347489281 685358698 747203564 598328096 837230851 976460805 805225969 982208489 235634464 692260097 919400272 45980165 236721967 520774563 418101679 503234252 99969228 143260928 432733844 4944841 974970039 524484536 615256146 325716937 545590126 751521370 144489940 163998658 952154705 114705846 337662876 461126459 311927746 71045001 103329544 662059345 741227372 432562725 407484764 731316370 114490019 294333162 96244670 523543116 862212651 208144274 364202941 789570832 577228406 698572095 279264946 301569305 289424154 627769212 509812918 324449135 390286142 763730414 582262920 482598383 739574240 703848388 733608578 977433025 755019221 265471076 738138470 341809474 167128127 120928508 132567048 891270371 811065486 190439570 220080289 145124734 788439011 664147217 834980436 577039845 67148340 985156984 255466235 254183877 929916845 404513374 701250323 177134550 646006809 432785867 347777634 927023593 124598388 847733404 34137282 996317896 314915598 502538947 163166788 410918937 141931274 895911280 118665901 787265439 668675631 144984355 3459793 982068783 703140987 232679149 527786159 758448951 569105001 164700934 91811070 179263741 109638701 310375005 572778927 955733005 213774652 77715377 535366904 251875503 593808950 655992265 305481389 819863612 56674270 29629317 345033700 486501941 851840128 688567037 282052127 493347043 667662617 370100925 132030796 301228126 621270783 514956159 39418699 180366589 822538287 104115742 280455934 460454440 966834495 705550148 200144400 104760473 270821424 890426799 543287221 484731081 285958963 802091262 159461615 901382634 430498122 867984930 501548849 907761027 569832404 896370304 879274488 792332446 361679961 252463468 637734824 6658643 994493462 543961647 126623534 329285452 144020054 439445567 968111041 516147630 605491264 167352216 691955248 554575175 648775340 78070523 928298640 173123142 978003676 975778941 969893582 721789096 408606268 26123919 865568158 10594424 412889032 774871765 148691110 336392300 161603569 939386222 625204444 365610309 262934307 302981473 176333774 334225051 486274737 817796348 21795039 79743126 540800602 457949825 951561843 69827945 874456783 582735038 586037337 766043677 298404608 483601891 923654383 389247272 116245380 471586565 208083426 640935005 862386019 474821378 320663455 395222117 260718705 376719223 739738447 241494926 2531305 620437659 529261129 60082829 244007756 929180851 865021139 929262898 614541646 519263457 255561770 423161173 778640820 157585648 221221044 37640157 905893988 583473766 670109248 900596934 587329269 332048091 421619894 819212024 102338862 257914406 621015061 746359535 959286075 131551109 831240556 567740779 378272658 313895293 84008079 384026475 647773497 783846814 952721752 760452679 902407456 988834751 269236223 972195753 829238608 757869847 327772046 21083338 380834114 440521623 151286716 453895789 956006857 499041311 886802376 47496741 434997390 321590997 364982792 673181487 946811044 526913948 838035056 353639535 519114248 189851240 938398988 430464267 393936461 498296541 519319652 175876276 643508959 589466910 584842146 28549051 693758944 504859858 578453820 891566344 502980252 293592373 613480961 989456024 542552826 697393439 605194014 844096424 875077307 82575496 408763192 157229297 599032 66843084 774274579 48565182 268520557 972100654 853818076 237961015 642571043 312647137 27776790 299480207 250920428 346879042 650296224 622763907 446779537 250508886 732382274 111233636 69453519 37284001 31359811 437069304 634461660 719634073 684399186 669435874 791415528 663829727 842011286 966392692 352889429 531831021 787696058 311080034 969096300 919375973 268880107 73141237 372845259 784719271 586674867 169476361 376562499 83033526 261372594 124814005 212445531 535106181 858732193 255692313 255832749 787782182 659476893 976165774 982954154 372066180 400015895 748888165 99065989 964685858 856025174 158060570 118443228 590284908 392123608 373853177 215698000 545938835 512450164 436743001 379204682 379440531 256637926 345847529 118115369 451819719 882468600 39529045 501046962 982417540 486634631 395302298 730942006 106289869 697275008 701451222 428562566 561803201 73718485 524390527 968079569 103534327 218423887 567944304 174041266 326202058 884220112 79802439 454202402 946157438 87142202 929966783 39298451 805317874 187200753 162218762 231535138 149234167 402731329 490002097 710709085 935241663 525001 835643424 771550330 887924833 938359474 618637983 149714274 511903414 398738616 516972400 107392326 903026247 742861657 726969753 116635825 589404876 514401636 259553039 615433980 778956220 701137068 404667513 979085200 422730695 43733503 172250693 658195738 33611165 856022145 241944043 23008651 554682316 505730365 936764297 281015863 919347630 16067638 98981191 475174899 505900500 364410687 288303942 974879917 766649182 932243150 15858418 36002025 233454839 39828084 175464211 485170124 716046947 523178569 13271079 246936937 466958500 558240218 659354629 851219180 935608638 347019294 645005884 297025021 984295147 624203196 793463406 640866471 515853395 670052006 979060075 572757851 677940053 799390787 484079639 858384182 576355979 11499485 244449202 341349833 470291774 718246168 314395758 875626859 978088948 109170018 389593642 100957164 996598858 35253584 62695276 268588570 347670332 353428144 207609283 628896943 50461961 311750053 886429982 217337306 803181603 161829025 87180172 322499908 531640435 441131931 915672683 147462066 815849568 99052492 554418932 233459950 139767833 535642668 650866969 106967189 864163108 583289346 90241259 507322323 544404388 103507886 522257991 783869871 900224233 823771854 494479998 514360700 697993693 416123146 483955373 926647088 4108741 488677203 658688235 960029550 127500092 961760876 551608731 563658482 18915302 438572235 857408149 91736929 692845643 616834702 433776727 695331520 265988051 643778786 249674814 752506565 450017771 379612979 425587054 846633373 104113586 737236619 281639767 643699996 196114156 873634486 390122615 441217992 560829303 154751924 490994929 271241956 530220132 509695194 333069146 158308636 952725501 26474811 449370471 367289559 89790918 226405544 310820165 956927170 283699675 534155552 614843159 89978913 993980329 68301244 927134017 606112786 962997551 113085791 754611681 660478791 635535122 550853653 886026215 729569088 864430535 923169471 917959631 91468876 714396624 14703947 275995418 166800670 472157096 733152379 398625716 887725135 634638176 341050403 826391416 148759050 53635258 975745382 991507474 995330731 457580321 797710682 823452864 881985825 412116444 941189875 492665269 544555822 252681720 122428356 331860436 766394984 555230056 51922866 291601028 331531448 840318195 938152975 67364061 203855511 73796166 413688184 413814565 513432342 222154532 964905590 384367604 207732151 477344517 231987662 870661077 765259316 199438425 698484964 95394736 727687283 376168577 93576993 505003995 441355430 538008065 479512982 799684986 937396418 183076892 337897097 956088078 243852407 200744708 16578828 190418648 264570242 133748679 256571932 335451929 579853299 353770056 983931426 882077886 852939573 681904177 721163426 401128353 427869549 62708013 620669207 665168991 451024236 823616613 533650534 377227727 652662656 533731354 704661113 17638110 142312422 768572021 971161172 800137398 466206332 483585523 456697241 329777287 119914824 829387092 163317188 600875400 161664699 913385504 874843676 628068197 792014048 764295615 961324713 592854002 984035977 544592361 371037437 139022625 871331139 20271200 678896883 253301509 248377391 155813696 731975472 616787404 169997858 281850207 345270200 747182939 535994508 693652 282679479 148015150 484927826 754352496 990582900 544500555 464372710 249443430 259392801 257488624 923192352 670282393 398916847 123937139 206855205 141998229 871189371 449428682 442609503 639166638 156428330 845081801 147253788 633454141 769796749 954630226 211719259 776916403 756062557 348456476 203586274 827552795 621576700 277397270 227968892 404253191 601476648 287052668 867671823 380926728 858161922 871275837 681044964 101323308 592242044 818354033 638009425 251148661 129540434 33188230 30853947 631065988 83743299 979782000 289178014 780552647 639556372 689453182 731923335 163092862 288177280 540732894 692804813 372446044 958679159 721438776 261572541 255331228 123322877 204127122 667204835 88834284 609845289 337217412 606144630 177615515 385615840 678591778 866076690 603648616 437157248 979519369 715687612 563864645 508537424 447345071 890307061 403126461 457445346 712689610 841927058 817319647 367477982 551755232 203799950 753698077 676087628 913239996 199609653 773985930 373198512 214571011 538245718 625346631 848501624 875525533 447262446 460072912 285481815 795986507 622220611 314831566 420867751 618314272 266009346 977134531 221538050 365267864 967260793 371495878 48241046 40249778 221810074 553781970 770557500 990028456 7535611 636035232 563401788 4232512 870168079 117142013 367184719 602441520 992928121 931698613 933670169 996311882 139495161 602411890 303444292 976140084 632876508 354434964 572399864 113510406 258211270 731672590 662962003 567750023 483341268 501081053 649852824 257965976 992745167 528397186 587898628 703374136 584053992 885979052 466060417 400620596 281362268 506404118 298427721 122319432 629051023 556423671 155408008 330336825 654049645 970929561 348826962 103727693 225379683 952511868 459425556 300727574 880113834 916036262 621367270 647365763 523739543 224262167 341353758 348436443 763773531 123861996 12641013 928304229 558641237 985064069 748781144 999339486 677187486 136768869 785465417 47901510 579779548 894242546 386679353 96050890 292516947 894496362 433144954 115483329 469984385 351432249 229928725 111364261 914153137 98686352 399574218 564181669 289258495 465481584 646463603 980493725 288923458 955732117 411294990 593318360 440016533 391232050 19933251 520892565 576820937 195436560 385310877 511385700 73086039 343273004 183935897 305993477 358004855 382903599 186033184 146542395 878709663 50152074 47123645 563873622 645527099 379499616 305745938 980436315 906802181 336884250 789532808 655666326 929577222 675810738 732748666 590818284 214886145 342739008 779344061 472708518 454756703 72080301 262793115 520936613 22496179 196014206 671075619 930836609 391763160 194218474 90270776 558156027 853964609 310237106 815819093 24887301 156520528 535989997 45707131 165607207 504018158 651452866 962657245 267426582 259102920 399331647 897870966 127148367 350081373 732650810 474281335 604233694 701591220 313582469 706798174 425446099 108937196 970944346 855765624 820090076 940480149 463414150 315711078 798615571 765668779 412361610 194917755 880859046 639057513 560973031 369941643 372648075 635478670 680240403 242314995 677782050 464382518 401151291 405373036 395867780 722570187 940413507 640020642 471648926 54240842 38910658 847255897 214848860 631801862 516459900 571020471 52824014 280169329 514576448 235550531 8970895 996285240 265704727 343209488 197283798 674206531 316373914 74459792 854174204 172891294 565785069 565446819 669549692 993918271 725981104 232853380 269353346 774188533 434912764 712150925 974197584 142522571 450006245 158647033 835310795 471045292 604419341 575690090 805154910 115714683 437758609 399723815 109790568 348672099 666854460 72084564 755229419 635588075 439946941 368851145 291269912 1105163 71753099 316550366 850078713 480215871 279592877 901429174 257862806 743089791 892338897 592573373 759382227 171419139 253275680 291263226 356648916 820542242 327122968 201284649 508812350 748906077 534176756 944229531 851308426 749557769 503322790 818250694 43765914 48065327 242244290 655366351 60040629 10648013 435620902 942039300 469582679 268965414 372253237 709226563 445428965 366933110 158008531 855834338 572161609 435117723 390116073 955403667 360496479 793662919 592156258 609149471 234660547 368038466 696285571 281253284 496284251 466559817 49184268 563292448 714099060 380580951 645108230 477302392 13895286 403258596 110684068 256118911 403825726 767128272 793200474 783138082 672765061 64490654 349466428 277035514 915669203 548195933 707218577 266153699 272528820 39828171 56446760 77679161 515889567 175380680 103880491 716833687 595646036 651299115 542077265 924716371 337992922 182076576 634751919 511117694 232580603 502889691 70152695 598602494 98171099 633687920 725685559 257704946 514900038 288969984 545237653 75490615 255852457 334654165 116290092 691621964 970609289 252256657 499440433 358903644 838223258 499672658 978455245 313544707 620623582 728599827 481053955 751295008 134844260 993830259 960849313 648775121 446987072 417588537 482154493 645789804 57943533 980675922 873248117 707454302 389921696 572240044 197033434 267900587 265304415 191159983 199237662 700144368 358361785 268727936 407541957 856048370 695037531 332524696 936856834 609392750 437602709 818984182 337696959 688906160 168149980 444605224 246556911 586715922 655666530 928949622 96581605 231720469 327264430 65912029 544582619 263876451 701432500 34981142 556292938 82376115 699182244 259707810 596234102 911875960 265282139 643342817 79156756 762579334 746689902 86307517 24903299 498725260 932921067 256420806 307969215 923717071 855680531 109964113 138897571 488247600 711470304 197365143 308540050 538661789 658277903 108840840 401029461 121332096 688108804 252431015 1031979 610299192 744928404 800105008 373396556 211266221 414897867 19806428 55427581 867180876 359426628 342513975 805156225 3426150 675253519 38586549 166873827 451609155 455592485 735027317 623873865 551845761 950242965 147686067 813904169 766933275 180524122 170762211 245685833 670893567 917243216 909821731 111329876 254839692 307819882 153027175 213471048 148815731 629547089 344933665 287494820 149801995 854316582 377370823 175421001 158980112 80573690 605938297 347076300 346755339 786600503 962592649 192772179 5577443 545399941 976317684 373756024 814458323 552965996 74582284 158625972 146578731 762654514 6357026 774388456 256949838 38701713 114043248 5214462 699967847 598750276 311650615 633799437 769973377 855253986 202131945 291202847 960829256 967188600 530370332 592291195 114832170 951808963 17763926 915917884 539108320 56949316 277654742 636261919 642318523 709137178 483894591 358429265 127579829 314106353 989929996 663728853 505295346 664377427 719112273 824460865 735579177 6716658 665500080 209903075 307545866 506058316 870198547 977325760 475573829 315600161 160533472 292474212 262685397 761475886 560170638 58385815 83815864 353973941 553010573 787617637 527885575 370223775 955769790 801501681 482601423 87034534 235479250 676578153 852329734 978479269 626174126 695546782 765227780 588000577 794057515 248448310 436378945 106472992 503549796 831428486 690894249 193810770 512031556 849041402 170778743 53948698 605019086 438593665 174309242 854361414 189587556 688916976 937934089 163989516 19293654 125032005 551189731 543298061 514330568 389101871 419580529 321222537 92190804 629152488 804690606 200259060 123131844 786637106 329341946 995046309 614869165 80729718 869974532 56834578 457494850 793154418 387614932 985495600 262624166 851622981 324361592 268096150 520220233 929809590 692399048 457433287 456901707 10314506 56196649 836137863 512217032 981657404 273238911 264151178 927064638 710168156 807286222 936235379 943343113 145522647 828008698 114911681 503588968 768548722 153399959 14836069 519191417 912580799 645233471 245283465 687235554 875642994 384371083 542268546 615910561 861899096 181089720 574053036 535095122 650914251 342689066 872045324 371575868 313812855 186707546 429953493 269301479 601835730 473759722 290363748 305943853 105663789 160697489 582123160 704159358 984755606 58313083 301741525 278935830 538849058 546853478 700189121 570835181 402045107 576780452 777934270 652542562 250353161 991246345 855894678 972343096 108011033 802773710 317501175 781234436 303293745 904614518 203126032 296294348 89133443 126147439 749547129 221206873 625086144 354951999 659489567 551700803 397428037 547351431 708846547 6472965 380833420 706331121 414395072 310141386 210747917 272607513 312017090 914628668 731793939 111463459 641388819 326101722 464841138 45775414 768906419 948538923 864927349 94282479 972502935 770605019 135555605 330929063 910902586 382287885 169641996 680995497 350247512 903624833 272696179 446409442 663033100 396530308 658058539 780777963 489610808 321894619 450508331 749197647 438384279 157704873 964249250 889514885 95120062 289663078 726311876 781551703 19181437 980474495 298816778 257185164 553317189 404112422 294715950 464607763 147148441 16479739 938872827 645494684 476687365 386345166 25221958 36513511 778563695 676493072 819051550 652952442 171549234 704009016 154675920 847088291 269619481 702319397 376485148 534964370 172174477 3047547 249567933 25576761 845895815 200986601 141486986 153581693 327248788 804077601 504502756 810858712 226479313 564408367 133149165 130576746 746104615 316278940 82891673 272627876 324669248 157288537 85625944 432039367 780402224 312606727 579717811 300790145 321753211 263459161 878405688 394431599 960536559 61165243 890158498 637358527 405540570 905173085 512729755 567615278 16567349 78327935 407904955 703591182 888317375 659874584 787720253 371269831 381714004 155557577 824849482 179741205 294049120 751774211 825186610 540776181 223638715 836679649 729623783 806473116 944523810 232547622 350135075 839073135 760284943 142709592 335579078 930899776 621604862 753525527 244784863 193632039 644509158 194063054 860146919 4134430 333225676 982773543 709431774 161463842 517269793 120893732 535349434 469297779 674369160 343030396 429829384 808613048 397536073 691364602 878354874 557234877 936857828 587601547 264790788 819380824 777487733 136588075 539008641 910495200 892702625 957704864 399584054 965156599 390287806 825093626 503500703 744533022 510698532 266255261 742907610 787047675 379555553 654612514 108755880 454062179 812499954 116030099 895780887 627116733 478653250 296862942 504225736 614337157 758243287 302602991 902336627 857215229 206720313 261785341 36145072 996802348 68477717 539918876 38022468 75346903 130236283 569822481 741113842 354686372 442894877 182203178 772499750 282833199 700211694 665303282 497709522 929229288 171097919 174299821 449620778 346877578 197703770 76507657 507476512 713358214 159715059 327129507 406816206 139979813 303912227 327627525 629199703 353559447 969748997 826375813 578883614 595154882 422996856 280906326 589389778 477865822 32804027 326473721 540700015 824192463 641519849 297571905 237984680 145503470 763469632 112038403 592201314 162310130 883487452 68264600 452046393 997674768 881216547 538096488 884670010 630269715 724537645 363250735 71635441 535758831 392827476 708119584 442926192 99106733 509006291 254304901 656900890 328766751 444017546 105138909 924281343 990801327 592980839 183441494 873841950 302946495 184961156 519615715 472119002 385346931 275325582 538244715 446260863 30836284 885484152 856586043 283277211 716579887 945852129 556697748 640840834 495860088 858474741 993307342 344460297 370640141 140034416 513293164 117237449 330441640 957450043 773908248 175956736 649681331 11610092 552444782 275587727 135043492 514434490 77490368 890995470 195665898 770736856 467211730 734880030 643587531 746341407 672062712 122776156 486696862 544434797 969065578 186562189 234514166 428992451 375970858 492262484 124112374 265622531 806475353 366685977 859836356 841608866 583563946 196361724 803397215 985670976 646558851 954941614 823350868 859065298 986601343 387464071 467412973 727862288 310032131 729316082 532678716 411376270 981863445 201499226 97083219 329891659 52899001 916433845 809665384 450743157 642079668 807696112 246622731 111631267 873860776 369902917 32847085 909047321 415184496 208117886 360728726 730265860 410635475 671910942 936924753 767174162 464132223 195445050 928139526 87824493 523813058 802553820 234064674 353570766 785880042 416611142 20622131 546157020 270093625 661298645 442857372 374150834 67891349 677188305 938440773 596078685 312669216 176588591 949133230 537586686 521478152 571338529 581245737 875958959 606723215 94631834 781779443 310343705 151351841 456970705 878771571 391870396 802045367 839864360 20448529 645967065 325708524 967795730 633176317 473408952 396618497 44248196 791652946 254722181 238938907 2531964 996951889 4395462 964158366 879085259 990440463 902356314 591154067 986123784 779624749 382101890 220157156 166559007 602441629 54660884 507204240 379103153 351443289 797199260 110832623 211485499 157097497 336824362 151093467 898284206 622419268 596133339 646717833 273393087 3620372 159451145 154795924 470123290 480533561 887530979 58451412 575698616 484343888 390895291 759733309 504116344 120558296 581087603 594979461 826041656 201482633 296128841 529560211 763863670 37453447 346968704 329117664 894875130 312116215 926472633 96316410 793029030 977350826 933296774 736532293 471333460 787230272 714638629 609332411 802305364 15257209 546058237 984661098 907428307 327557591 362868247 373155864 637911139 982287841 303426551 133675823 181907243 118872159 73516367 246386152 651270494 381546783 242654826 736472316 197422696 443859601 191031405 831673439 159386624 68850521 483542381 909519959 244200495 199220870 729105295 976957785 468470818 183977729 606107474 621530777 560639218 105373173 796823643 353397164 825094294 432763306 383430647 285990830 556384646 660144838 591124799 158158832 646853639 441770759 878928775 146347203 168515727 872916376 401506437 179853300 282151901 654570965 138745384 421428433 710022705 82376851 647106946 135491765 353557898 476700305 538437333 273993780 454862471 864515462 845164812 435771597 866712249 648762591 391239237 330376764 796159911 838001559 845500493 287401695 788767430 918849119 184669405 315382469 624341325 126324873 350921774 240189462 24783568 497587926 763431743 42270459 100154606 175478895 729329037 629667465 420098810 280148618 514574749 713670756 973349392 67480752 206638264 916839104 86422414 32563708 593646964 180883273 850085424 388977827 68735311 986364588 360750494 814433873 702015371 136783379 775802591 15491256 810936560 25486373 329918952 362375015 199440276 625984912 493487562 957983337 212816585 971178093 340908152 880678322 99289832 120180846 58506254 978836860 922327395 219707489 108358068 430286213 871800210 365778899 171771572 640894606 474819062 269597899 841376383 559053778 240838038 931783461 441661638 906198157 678850574 446006408 384333192 328046322 471648435 856863436 559655820 612036074 825956492 271645825 609439652 13072229 336798602 990878740 559889962 909001957 457469226 705962227 991139384 416758660 285806367 433239235 447373576 210782597 481397105 652325552 610345403 120121550 679412620 169460333 613115892 171714469 522539028 439953275 876312332 838695949 388980465 144548492 736798890 814225328 89528042 140771089 279101960 328329701 101787265 917398066 751098471 36536768 374773209 966420061 138463713 918530256 699180172 886394519 263081537 610527793 68479535 32706712 612671780 612733318 615395753 695240642 18928385 914325776 641232043 568013946 67692982 496974183 161894521 628969417 596150882 389167993 542328335 827343784 264146697 234664498 780144134 14609972 72453236 896864498 13843509 214002324 195875692 291655793 323636372 905563093 156559745 876703952 44289403 531143309 293990109 395841727 183366152 332871608 441518187 331921355 511923559 705683614 607325595 512213201 560926931 488287192 178652607 710333040 454629216 363719957 62148693 482879872 233495782 630665886 840799469 379521299 889922352 300510791 361007531 347599706 844670660 677226322 753717987 389940225 651033019 751793682 488869058 915442815 721870948 556744840 609059005 737999820 467199512 742886218 932006589 92975167 904236508 102749504 271211511 103907398 888796850 175565286 658419688 107544959 849704828 293995360 154944015 513436835 633554001 808416407 397798775 382309711 683466534 351712430 48543659 422913762 673134188 65328877 555594561 852519983 117473615 53835994 676427029 48183123 26904828 905190330 679272089 450713776 102930550 232963397 332615624 992625906 382819063 676718969 120705509 211565021 711288728 300584377 325323291 119254175 747792715 436582604 23853040 441938386 888087254 917507381 936242277 320455413 255069537 102375807 179341949 104218822 881556460 704011237 282037041 549636940 71320923 59012436 563485926 701995720 434372195 644805487 560015635 733920726 266070605 70450062 909697308 84178529 489115941 978612571 430706789 354928762 701224109 935232031 860619031 873580990 811992641 187402468 393192191 569537470 751697784 178740055 38777025 46423909 175985103 465097982 338310052 226309495 548883141 289669219 43009366 231130646 997221818 258647345 25865873 712593052 742115927 871304609 689973346 705632905 765303563 577237358 469654837 45534617 763519342 983881660 359706162 29462383 569647449 421061604 263693793 633311631 439718491 357604266 227844202 210828018 723392064 533444975 552353873 630565448 517426110 499587107 970979164 401812739 287387357 125761165 397044050 945891582 106372517 38340400 905000436 21389485 813566459 13564685 244482080 320510509 322686537 930719744 669224061 224886105 438326432 709630840 25033216 871640018 414484613 968202563 690346651 922473309 940494460 304878638 655293870 129067819 737747029 729124990 910051805 367674511 798995319 775335757 466448237 308667344 315426412 999485208 778495327 295926461 141386887 832596314 754794668 757769891 239938960 863614954 732875215 765841012 599666203 544326037 563704231 872683201 163846046 984607824 676923553 845941032 860021675 165363557 896495309 596373420 220890252 857213821 399761728 225108109 544999445 659958668 803371018 920731112 282329472 622992127 903902544 37411337 770015341 519812901 335460251 104363135 375573917 796373369 363398256 397200575 295593733 726476711 206928281 860777739 28820151 223398776 427276580 611972087 816322197 881479706 641239097 446554795 993387843 603110948 379367159 66036932 352452914 856988168 283835735 915522738 251587885 734468782 115143433 302727951 783367799 165456351 800834410 244478524 821589597 141823417 390363906 940884216 699343576 452444318 524462146 186253779 646746117 908342621 640770783 707044752 398832633 802607312 412079498 38814979 61276996 878958100 436664266 246784925 678340642 848539617 493092094 711591576 408259388 872192649 80905584 180996621 600123996 73897313 201721563 58721198 423338794 572082751 997600681 855374813 138607899 934779756 658904256 451298653 582317099 850892158 310344118 230153126 828935327 232511462 938336190 429925504 848710020 475874124 861173348 95761297 294438817 874272604 284170807 668155010 153966222 277298865 753700987 101681833 782965726 891739139 91162711 525828208 823648598 300804356 309681253 481994261 313805169 645882099 106416324 89162132 618447819 677940723 925484414 449186422 246470030 344881521 873112128 346985769 768568625 135778802 126795186 712414935 769951269 933023474 154158264 604230471 594735950 194317194 815306264 28673616 773972887 541080735 34179963 823969393 54983088 271973804 382298751 76945636 995455780 896951238 210679472 458380172 523504484 511060461 627270811 293467728 227595674 444514326 41452389 604963824 985396447 198437082 996847817 222719020 990779373 877558096 819853285 94198215 970464681 282647593 84278591 209581375 13964468 378321266 63939260 610318657 289106568 3628778 850965429 112196684 212087801 589110304 277410445 142362951 559619558 849916989 262906784 888874464 270967874 101584649 119494495 87439048 518437471 615956927 640298261 482364999 147412369 898936613 419337030 690054826 103513959 183395945 217402178 724745682 746222685 963385912 211760415 502837151 180154914 787914692 965754709 33899970 678009921 155946437 569927535 887856506 875961302 846005684 39839724 76387893 925798464 195218264 463460807 303725635 588159236 26921575 372480294 137156832 653582176 430261348 613559721 231863257 253425766 754175843 774215620 600634350 666819674 966819307 315079261 510474355 814368982 80818575 927761733 471447368 159957607 15242724 618317328 747686797 416247613 681630512 316342634 816115402 608817570 680856686 804957926 908143494 877321327 509050534 76165817 801144998 45934534 386707910 844797777 459340299 147547245 931247 953813351 315417141 702701336 590265031 52414872 649187190 768067416 873572123 355276990 476274346 338273133 866749238 149444599 495950275 647965152 877959096 952599551 663324940 691568266 319717376 503628929 709164777 618824559 521139048 840701097 188788876 138706309 153939979 88004621 73775539 519419516 527045336 554415343 127219468 441333395 986256480 270447095 369776372 625729605 925325637 1424321 492225481 488536468 703821771 60528949 376066756 212060722 676199180 991618157 797087279 633417717 568214240 177361600 784320376 61924332 302173831 765835724 171584787 755662372 830218532 309875811 404292186 144584488 27286185 46292236 918916006 369003114 514389436 800620067 228950861 418917128 77060249 404584927 344495313 323535000 428535187 947350768 992583198 955274015 130089029 949605363 665649821 383141180 846675925 831095553 419417114 681978590 643509027 248023867 319265124 258317846 593758950 411339367 410494146 912407861 794885174 466174076 344252731 121241445 211655763 886645785 371252579 178729548 45925058 731160698 451230080 107766451 706404815 840769642 732951054 965509958 457477887 302937399 263669563 70319351 357874243 590257284 139093477 979230420 986102446 967132861 661857441 937535824 407278385 324895583 70925920 501683323 581052653 945529104 468993997 186076957 946171590 286678581 445271887 574859905 257182233 628748654 336107020 502090585 744341674 799320513 818278289 36894009 943944180 527013250 624414932 940717444 905579406 428462647 653416826 331882168 962164842 63584415 543770943 759410058 780134589 93418166 746778615 759055799 8085102 165286974 778468651 960676236 122800973 161218349 980050334 156265596 136915431 403259851 373315689 974225537 564575739 722924860 313598751 261055650 177728356 581647785 549490682 842758189 385088275 755132445 76471765 801900183 46590643 213246955 70791208 969591475 660059125 162571158 529183286 323361435 224065204 749992323 685388011 39582056 685069901 43585633 599684 253847103 196353663 849979582 421378418 413535379 520865542 185492112 80181823 374845488 766509617 630865281 621581357 345838722 533060579 678965193 554607528 970018567 972732097 546674483 89101704 349115618 792405632 312763049 419056567 557734783 790505065 598650028 765471540 102806831 103789395 41102085 414308947 753548327 18308992 788553228 544967044 423643221 905093558 750105953 879289270 725212398 828536483 239379634 974344143 107283898 430125027 573348020 588650664 933125019 775387915 718247219 338452190 283715324 721428765 531000571 794874209 847186320 785384587 508962039 326729990 149124311 671434166 406803848 746230967 517548529 753432064 866182182 146084556 894448532 680420491 847513991 620665865 957300814 392954424 942138101 672523601 303112612 274280515 380388222 650610488 736544700 341312432 9429674 987802907 337834378 679899856 321784864 900231350 27757407 144311636 445202490 412878756 592765792 275234775 190678613 680315043 828783532 135388648 977033598 692844997 108473044 797860643 691032890 149711537 622959405 799232625 65832387 349841859 743186045 819595829 302450736 313277654 202492480 746923792 609100360 222661280 801267031 89750755 279369814 664174849 455848750 348071889 720647714 815454533 770927514 42629442 674687220 797894314 6479963 964431634 207520598 893487244 448603850 509223858 660977994 520175337 644594995 755482227 770605562 86169659 259252546 502960267 630308382 34137455 70575235 837529747 366411425 84416259 688885894 801500429 491639359 97892511 409404017 310603114 611443577 460485348 331761079 990228915 660625017 708560771 347426147 816070318 270649414 824313867 435535499 298315536 385202260 415732093 857542952 677335317 947670586 696841244 389562186 753906081 618977763 669005769 811762972 231822315 97839994 667720453 715138203 892118119 514255116 227450629 580581958 580998345 70650518 172131076 177490976 262229634 99714867 888013059 421106894 763451979 714047199 64926438 1994896 796847643 981772980 249041113 494628662 455703874 956060777 123476815 559964417 305780198 953950202 756852358 724804292 413492575 588823096 311056708 627744119 762306961 916223082 336476669 930373505 171257277 941215831 677799027 600740243 253790886 214504929 448015890 227575253 454519728 283782080 72307959 946886055 924229670 820218277 664517346 751984632 18448363 854006064 623805310 205382662 597345899 293875059 443444863 41429439 147272441 969263723 148602213 100924348 85961179 260140633 766814059 990395506 405211632 782809842 590956734 15792673 905385632 899203877 946268050 476235854 614495866 700461633 532665721 317972677 184313657 613751843 78392320 490384025 213143320 412213694 777605977 148299094 805856095 109331455 975825452 165444961 352655825 25886094 189971831 550546539 935021901 395096895 470330205 62463802 948331291 640422132 80122882 738654271 330460737 214877293 349112104 581845133 133750950 473201366 429569700 114361713 959061523 742951223 649390562 372637342 47089549 157205056 901022719 871724928 49699236 716074721 793875589 390247289 293886418 942162126 957677955 821035479 505131415 762978102 717295500 744417582 119729397 995736388 82311802 331395740 418000588 653064263 431169705 58137318 758695560 391246456 796617917 596231779 66979237 667791616 619469866 550737540 235954545 827670702 429309493 407744320 277731789 929901404 233848335 462585457 769787213 131460032 805196065 611996658 547520572 974281955 116512478 672026050 729898808 260848316 790622063 907454379 672674293 615062167 178961211 262496703 523574662 322914360 55129332 492267624 240991956 942828014 883503160 874478353 160738052 375939678 705600704 411093606 53804176 319126217 85497345 660361555 558975846 885081806 260597577 195871418 266872922 916902960 329561285 9217924 525134296 741035465 74137979 737846871 265156430 879920094 36409347 81701867 708520623 52996420 560066113 397935077 386499112 619905901 520783385 488924808 283697954 992414185 686200744 213257883 482344277 632493346 5195019 267092231 981063989 952930723 267828263 858095259 665128040 340910776 653885264 219405615 985640026 143303876 266647641 124620184 863779831 938486884 453833035 359692132 665862958 903556426 219501439 603103236 573953522 515889360 356132308 720915304 526020417 839387096 315707509 294205633 490704765 212241801 393224277 51648459 376318261 583251904 950907868 14376748 922826187 956672946 181126196 372714367 377481313 104844938 207176372 327382765 838578056 407416774 991429564 185052271 856076547 619819222 932660068 227503686 231036815 222433381 912052793 451239582 580776596 830515821 324322176 657785590 18507582 692291116 589065136 377306323 209185536 222507570 914420221 890217702 119525314 506096323 790165050 710522252 488608556 2608825 259585710 761209631 860701607 318995074 240783796 649614767 663529678 592979668 915603007 145190524 672021873 792602032 587863607 498849045 600711352 272267506 941433020 706286205 834995928 794010233 598958029 894109050 388012359 949982774 116854663 789097305 825109069 255229176 989600614 824112578 337929324 756322071 848476216 131011011 52030285 468979666 646162747 81995447 138628390 187046276 658591602 633132073 275267066 739299170 582130352 849439018 12276060 135021846 133243481 329713816 631979638 9351881 250463889 614058794 782668149 93116014 343324855 706668292 153612867 692308443 54572867 162504741 346167594 936600188 594802416 717328472 738070945 219815575 676163473 158546439 299584128 817869096 539829516 331285048 912381884 281504875 992629830 109333922 277035825 443373322 989923020 430830078 702940073 951726303 835863406 551306064 913608590 97234965 30006014 40992534 393770614 39405399 806076784 451977926 102315263 15436628 74938757 277552477 374823503 798813914 95160256 551536431 320442347 669465032 62278517 389358723 801162866 974820777 930168255 74207289 16731238 24979738 633758896 868431482 800445762 761222063 808710598 346403679 76777984 239575241 622347723 176930951 422185012 507488696 311634720 781648121 397853929 116892535 360882266 964128845 610529172 868971579 922460439 966438625 880652158 329851734 634908260 851039663 579509430 381276582 559950759 3102992 637256904 138849368 9444006 275026177 441822887 644377384 448383455 820399176 772348156 38668004 726023254 891320513 204795600 745467214 239821250 830003214 501166584 408652400 174765224 388727061 992658041 572583700 820463408 960323837 364360775 395896381 369214318 285083931 403574022 255351885 132742452 234418876 48977990 466278696 237962686 618942472 634231951 824460396 336106882 723999129 18533508 314734919 178988562 582852786 327406528 981029811 278327468 18112981 58663701 744567248 892030672 405893053 458101801 727041753 99168024 156025960 521281071 376416708 641329736 207318197 857643568 152317295 990133839 897363555 862277401 177908255 294946018 485087378 947747039 614627630 5225338 68258758 693651513 923148654 172975546 182925746 430210382 244805359 112962650 614116635 590663591 526522326 63043858 784987558 15672399 98353855 941001725 226768137 28029945 368421662 200596922 50408447 154473692 214444647 149300896 375128508 193169254 208895969 683292274 405960068 588948497 607027519 938549518 931502536 553702149 12687228 944895000 937864771 547653624 568500018 514068146 584446049 977439739 377030434 380964058 656863708 65264642 786119975 702082484 757963913 743347402 674452564 768603383 331573690 436933067 338929989 602862448 20157075 392540630 46758615 898989673 268920548 913464515 6032789 647995227 815707167 461077468 842603700 358388405 468430127 241552464 731856049 116835044 959905155 722638484 133601310 120779918 108961669 554622393 496172467 347261928 990157960 814869709 651321567 666054363 24503807 628339156 435037762 702709742 545580183 701507859 184228670 530573810 950996946 520591583 721705519 469327406 643986857 963550004 100134894 903988825 383103567 534229940 62402847 255797271 952017020 329480016 927764544 316314436 630724674 510804218 425158490 622362744 870372009 390654892 273308739 794959835 766985387 67418844 517020620 637115859 931295120 953290278 302284567 687797090 231343046 601316200 858938399 473357113 196896232 624939556 903012030 713764261 861892011 444795456 60074826 523262994 268819684 876255161 413033668 493532067 668768513 150484134 22859610 510551964 985427227 862670553 100355305 86739991 721022064 76539289 416125190 105685139 763586135 581087021 364203804 976783766 635584596 254356543 451549758 821938114 838025510 233802397 235659852 876475804 91306842 988104782 969924814 595727352 436240806 10296965 269370709 630237312 13063595 344657376 163335243 115537260 771907943 951311052 534493256 874382905 459407134 633564671 975953285 479783758 586095132 45944197 448082349 121693049 763782370 776583617 450073342 228619942 874972465 80526107 141174724 947444780 855707045 808245934 388005190 731133742 42750649 320506612 539872738 949517448 739622111 101946467 197542068 290857907 54166230 490478350 575360862 373692552 365236669 502766461 655892971 489617160 101999441 698382118 588675936 12633649 309515319 665448411 469704529 31900591 95606012 667225289 590127538 90410219 369419013 570870063 816893198 974845640 745580166 447270487 831647870 251203652 337946474 273327517 219135113 863191290 703545788 692871084 300099696 106466851 145266651 62275989 652010694 299653866 392408114 817704256 725741426 929970732 356471045 117216717 153142975 701832553 664385348 443693720 721382296 811567750 585284171 746040415 281336248 74527405 167522175 48232542 530198108 24968125 758259082 480917288 161213518 285151925 42970097 665784290 706349344 439963756 150339015 104503514 968873365 293082941 217089644 996145818 645838048 59215507 735422167 100899169 561451348 145050720 921181541 742135637 129255343 711670026 804423050 332079954 445440362 433678431 34637957 70077625 467621833 167850346 299112942 231427806 807722988 147027029 92461427 309301685 824479826 881595404 230989599 895804745 391064744 149545976 942282441 176535137 922389902 862860605 901174142 974041322 537080667 674738940 375722875 429161509 772133566 225977003 127985643 498315436 719738904 851595904 189267294 264179142 950010726 933246742 29943850 477446840 577109162 268779337 377587972 584925928 659799865 250547054 791301787 414770244 957315742 417694620 29155732 551714009 331643362 7172236 412260013 762565834 837613921 311442367 562394625 732986204 43780000 257994513 121100773 747915765 941897018 87641665 884723638 625102301 79250840 229941428 94150027 853933397 687458663 5292465 710216976 25433598 845233238 820734883 847698042 466004709 904179285 620389381 813479382 362371428 770787629 121821942 598286884 748272409 99098917 102336243 290377215 472876434 804812743 612717261 124237918 299140762 986088076 664112107 767986352 405263520 391012782 701417211 553644206 951002762 268197414 534805264 471033935 270830549 655727822 295449923 486009144 890488215 415970232 649625666 728365812 473807564 148399039 275373987 143113557 703537086 124182985 846796555 658284109 656002454 467452933 210219817 886455907 8184922 940201739 612422644 110581847 399362986 781356544 850716851 22422492 137535230 254879519 938762644 918500133 895446267 468280973 98841673 190272188 494555676 917408065 913079618 196992355 264946381 53152626 153268641 215132197 468665726 118132 817316662 197378820 584448379 992375956 503410120 817284046 559460828 441487476 539750539 461747258 187030982 401493944 378960385 462048886 130832900 381740701 238971605 447609357 842238021 558575742 796963258 749052259 323561947 630908280 238317661 199744802 749028495 176782568 210040251 437694833 57062229 197029590 679686853 583997554 24056707 311716852 67675181 157429676 338026888 782523306 848397307 68000033 402807609 425161534 456408566 858239216 197777334 56345041 346496364 646920159 412037362 472661928 764360173 783071598 394828738 462520206 27869080 237935017 205253005 108527336 106992612 471362857 466138223 781520280 994922340 909636341 282974074 676501931 935537384 538005166 850650360 49818032 988700567 40345686 389852594 374175070 391683257 649866015 594005314 778050800 669630313 738571708 556162492 527067295 948890287 69832520 485430065 380995842 266320171 161229320 539097115 116102817 413469677 829213479 963428381 658721307 555298461 838569286 112034175 326286268 911687713 294838987 353522670 347894596 825629425 3936374 275303474 242851938 3995455 849400854 166178293 769408181 483331510 260551646 935882651 121975677 631424685 121227253 302026904 847932137 723608271 827189759 835884158 478525991 678063404 427672171 869750598 819877897 232640597 438399757 139942640 962437160 474131195 719298517 539444298 281546770 771128002 755123371 334801868 175932443 718164306 48978882 734848668 678711619 75677128 172354932 337996819 150790525 334867904 776175874 740094496 13763109 841934704 991751263 431986633 13261955 154914379 212185611 310636026 395604007 569868764 893883207 902678103 354578407 835476105 411276968 820413903 145197415 809489846 758042963 247847948 689512124 362537765 594141471 247403269 146899755 757409702 531831371 647575907 892680255 419435867 518773630 232798080 177617260 284263854 754268099 327488973 821227953 366455023 278612615 424331721 352602935 456386183 354540485 959091231 118927929 299995354 760581331 366645487 475870024 536381569 198661314 497627278 928737934 71649785 667796904 712425251 430655098 140931994 786276241 940453114 154885882 505380984 821969280 474844046 903468806 736444542 285586239 470741750 192554286 331861722 851409960 302569734 556216407 381146945 269966607 827778021 642298853 754446571 177501102 13189709 105626873 306643798 663461678 509857495 292858239 255543960 965537063 411277248 739565500 849325123 65878992 831973612 919494274 441785693 407379916 936017927 976407593 534369796 970672082 183745123 180289872 780448083 213679233 967932419 468548868 382789381 127312631 560307616 848982404 624130388 182123228 343410398 733887241 634230768 10219798 397686680 401756772 61741973 135434407 50123980 793586704 213392251 156957804 24559813 393114872 93393552 763680576 346221586 102069137 606684445 258926775 273711314 337124309 805865582 330057177 184934218 970401546 161464588 67306981 626593811 312318680 533269614 155764335 354183921 636860673 825895048 237395849 501074472 11734866 600532594 823821932 299274257 845865015 729604430 942966830 815450321 980871572 180543779 736636593 596236827 540593338 925629060 985241689 488964726 390595659 52936201 724962243 525479 355348948 387115527 27302837 619665359 248422585 776064569 796911777 510408757 776849634 998109164 851164780 998543707 714051727 240566782 476388398 947276718 292965013 491404389 792171885 139137444 594837604 583782294 97247002 146354799 339935801 787634748 765044786 240617851 244740265 190373204 263509284 53977912 821726363 60694711 662183305 314574237 413327548 747579834 435306812 773681385 709373030 554665563 338087585 435036384 58236497 777819494 204003197 732524561 673108552 711124753 502753202 2629480 557482806 406904173 272981326 318239395 33600871 828057314 884830956 158386984 923176101 11756318 218851289 31837992 956005246 711754396 378894346 429665352 728033520 366668755 782779547 676479252 788504414 826674678 747045113 147676313 366178501 578670744 747712557 524315675 954078217 98594538 324883834 501075947 468321735 42728464 745299187 654529295 810853275 456493175 304992710 157573866 94353994 558121608 4705675 358351967 654775742 984421017 21721983 717415006 500220457 163634470 765386659 436377539 273005449 646654238 488339271 78604370 999818797 165297767 627591908 491687784 266571667 889086845 555920440 88759924 336796628 848866663 365204151 668678817 569650325 509327675 75817137 416925766 250675208 585530193 870675381 432338702 4750271 818269537 893318420 533701845 858115614 216594684 434597560 883298536 114922242 478351476 404064519 487423790 336948977 831993232 46385223 987137246 631721836 451055595 8314831 620521758 794485203 889832395 475472690 530323266 591698071 218354201 420929221 789417397 277463459 236555754 961162083 894971758 975185657 567376768 576848085 463066350 54801753 99415431 399945533 181085214 780842677 805940697 216388934 254673271 476893009 981342801 72174195 500539428 640774100 503051696 172258613 735870489 369169677 773883851 51325601 826875035 628930436 340916538 256556030 195256739 663126609 73967949 410739808 540952453 295533252 989004072 402460570 890920964 115958675 130957023 106428688 739959092 361887601 391874070 682595314 202183830 966906937 761590539 475435551 361420911 801148650 712801184 347624500 860522798 874620531 594689666 748466714 972277759 682752929 24185856 228887434 926574101 689495001 172840134 202518224 294460826 899362145 442085191 733740048 198007457 831128705 731578291 6052519 388785850 881496336 885296765 976350734 156693924 647475091 298468723 765734512 387250089 54699997 27331675 902655028 515991712 298917471 631875760 597026551 860491181 247537330 602297181 787063877 851524256 995600875 139347077 244287144 986295394 130760643 41464464 217963188 854069802 926960535 922564909 253113451 80556416 579345068 856700429 998397313 659320963 455877815 770605732 821883159 428739301 591674966 837981437 492275280 673613227 98967214 339352699 557837016 788329671 303883131 282969745 265482481 547290143 900144867 306606048 880016755 766687373 608268603 80434595 585305541 183558592 167652484 728247164 770523111 501914750 314936666 767388532 583760202 846098003 602458949 934465197 79539268 423529970 965883920 442797635 638135130 901957232 425996925 365077271 268719820 7910335 474832431 138313616 668099035 123922517 61301526 219778104 309856386 947699970 958920754 786358980 2842693 99853126 438579039 675151290 316023774 812893655 402378510 683473214 97734066 504691402 130878446 228720239 21951893 615831096 554059212 968987117 365955723 129836569 859267845 338329386 418899737 118929750 817824564 717933519 222777339 413203756 847720187 736803870 731154376 308130017 177042563 947283617 64159064 38806105 184390467 429740868 564453050 103582189 884361797 795876586 980305970 334039629 926207211 891351001 194645897 616398644 255377854 434915169 206833826 255520891 887095285 71192275 703545045 171384532 516404012 194299589 269952529 959692233 809250231 105418909 327753194 797554801 253546386 164215503 698809544 551711365 572872462 70260043 184112506 353659004 768820167 401738229 213007038 11070578 340735751 19101283 49859918 463025119 471159227 593863385 311710417 69883161 498527190 184509456 845141093 122373991 89266704 39181569 239381018 609675749 875080962 350431504 857246325 452217480 180617980 525337052 899520335 363180439 622896997 627836839 381392359 610544586 562953676 337094700 247761011 29383934 935159760 443942077 52529850 153016232 368974665 204105132 79926495 211174249 35961861 729216338 931335207 480875256 644361743 345685665 578565646 139153849 438080740 337438341 275773560 223505569 117766519 133739142 777792859 329124103 937610768 284077653 76141660 991759028 340599528 697999615 297075353 60697353 431426434 579042658 65001447 996292416 634436112 977218170 957504021 511122869 911740153 509992544 880155631 51752511 772002033 538177396 648530056 746184105 857832486 982324156 260773851 584891422 317148034 36651356 1073689 886752334 529369247 510613094 857749980 801414829 890505041 702193365 6302731 314391614 207114191 990497558 857137185 140092870 954065196 262325119 901322539 691558818 272853491 193102471 806372475 976572449 18162433 696251310 567258840 975512175 559232602 204929288 699855662 953775990 569598408 997615809 236814694 292068535 557458925 964690264 386481182 151799599 377299729 131181208 471145631 726757443 30320181 197255248 60815242 126295871 86614522 612880036 510219580 745090505 661327446 442505651 383171594 196491030 873511703 769473567 948747390 947733041 456359802 223708436 939472415 573392503 694864479 948165395 796994901 867279689 173236051 474234219 431505384 63901021 2697466 42698922 906842427 111963829 960782413 686487448 816247138 65480029 296668945 883118650 583283286 41057645 360784169 637203803 904515774 605786644 514779686 74381196 918782359 230141756 484603317 389056136 600458803 514075334 774181347 591096405 271534662 433744183 637714803 604500585 959377707 498627671 587017975 469336649 187403930 935617892 72469344 522712710 584494072 556484422 326045234 953847182 520703946 718159334 975480906 970078060 836697382 334676935 138610323 330375965 480528348 661183431 94888621 791957476 627313424 333414684 998036443 825383617 564786706 709141188 311843645 179567378 933614667 583898642 194079011 497708700 758841381 45486540 979604929 885240731 621347341 299647479 209914374 199995293 337921380 33604237 821319592 752954153 765568391 562441696 260943768 64861121 240336621 896627773 555171472 741533881 687865326 222655093 375176346 238060345 344529744 460790984 97779575 459379356 201811513 749217665 419512507 73176862 581833045 381828261 317412134 719469942 979276266 429339826 698797543 469879419 86584476 170933604 107480293 165993215 973168159 23556655 35635197 366884734 697785090 561841522 708547005 348710901 745925152 743412384 66945790 467962154 266445357 506275718 382286344 55817438 454817340 164074291 413477851 925782120 765656657 336554123 236343549 282210750 920934702 772022210 586471387 34296998 517589610 617325646 53686138 215858958 73375250 106343745 409685323 731259406 798060901 435486510 256386309 739518800 657456211 364635377 653436797 694747196 376531705 763368925 705370280 273004355 370825537 737427674 419044349 865643361 280713538 240257134 244078494 587204762 198129457 444920973 160323595 259827391 635572132 717829567 43172521 562114324 855382008 251168910 306936947 374288343 223734398 375997990 42117241 512665465 90044021 989795852 634862135 398909270 877843293 400498552 279475607 217125259 684472147 20900790 612269748 755920009 252808210 92232154 367582422 101879643 286913961 660314740 408746889 827996475 766463445 183226925 880464710 66341963 806361782 465304702 28558979 652621920 816535498 764385144 331033940 500566726 524302288 79357488 455177638 465599990 9163091 532555631 210678347 237924328 829827873 534998554 984458016 652144115 490729978 22236491 61454949 353859873 417304925 674009867 706974571 517391036 355788389 235331144 347479901 235839211 689712175 727041657 13729435 265215817 89205130 231656630 928332866 151188269 399354818 985048113 780014841 133954528 109054202 668598967 702195921 216995050 454018662 550093821 30590714 671971046 883060310 671148174 974817560 89456822 696018339 790851251 334888939 421275080 390555102 601870366 727147603 927074580 947168471 464188870 75972533 105431309 79557706 34865666 645561084 154986859 36724821 118842571 602290615 83341785 68808332 559966686 40521937 208631730 645806628 727131572 439934200 443663858 896205838 7531493 130737129 135592417 843401903 583900521 405194971 799836513 748071346 954198630 522717576 656032498 740856492 644529290 114389302 50187940 651517420 813679909 892107811 829440533 838167451 849224270 29668743 886652877 630589667 577283354 529041099 160005537 843770017 999965099 576316989 658777172 412717230 590369365 455082444 729362710 423965431 909108563 264730938 481443930 20227631 16780890 61052019 974699590 598857775 598696486 808012669 225143527 890483343 377853279 804647560 349746541 331967564 441543177 600405944 301265348 359893798 85734204 131964702 447885751 945511927 544077111 123680803 453083376 566043694 50231807 640001333 930172872 485560966 304028004 601897623 749390403 278647625 916993183 736021086 979779201 867809216 357841061 965846124 865318516 488780072 805774658 202181646 913193241 802673375 693321390 596787163 705543247 881819083 726864831 172141837 425421893 642661146 716729666 465234500 365258025 532241606 584041399 118168101 536458144 901870897 965278381 746541895 668497631 513777797 905514065 258931066 634596725 449869959 307154277 268717909 672053541 463559155 899408241 315489778 673001092 112521799 700281654 960354095 27464321 999223848 667706674 35287603 850910522 270939725 551842178 119116026 821825950 54227100 680154998 536703794 551121865 920996065 917088110 717266296 590564808 303452667 844343963 637743516 370410081 734127344 737901958 458529773 789554613 424472536 221527028 533102237 193154717 297237272 634967312 576914641 334917404 876214103 13679207 100488567 831776373 927582608 326207602 593164307 117045539 967906610 935898914 859054078 415167171 836242549 431971974 16794431 132626108 474718090 836912704 423988797 780718689 668617114 883276713 888841541 287289304 570890339 886349467 926583605 189417483 679732078 211062119 550583618 396779457 604676741 661546550 826210746 288812367 786632873 794560176 751545816 689830431 583468476 344932961 310213328 784013162 675780100 152851808 257546646 436512640 627487732 388255843 111247977 484227376 169055704 139102814 852901128 824523018 341607733 854498027 845571788 760318062 176843014 123044681 983171969 959054486 291451975 263557000 547167561 672937316 133052690 231728199 729078733 523569746 962671639 665053648 325161394 624767132 277786253 940407894 99175514 732956870 90032259 455957423 4904867 96798076 705405650 184268391 417000717 615879078 367621623 345247387 835619253 848438947 267565724 407418368 114586092 936726186 813103964 875061146 60341293 229397105 339815493 720554612 327714813 686832089 216040570 186140199 254581623 177713807 836118504 562098966 956478126 109825684 658266987 484761954 111220379 813486585 967090359 405101593 973956952 887054142 740476131 83534114 748540019 414190138 974460867 651119208 938591796 22432519 969171508 454526562 977926694 567964271 367420093 546381180 889777566 376522237 307112293 2715987 191372251 599965465 414165425 269713333 482878871 297463378 444876945 712499962 62795697 123162637 129756738 614687186 190443192 370037875 891570296 118430268 842461027 439007344 284240251 211205728 743824058 525023449 287307231 596950931 447290162 171370395 376057037 492402104 273846197 78709517 613423891 238175017 348601633 631437113 228945748 549264311 986034283 60133516 809737603 245366812 673667889 13988261 947459580 822443603 92506885 214152899 276523695 368257403 247083028 925964189 741777761 726211365 44765773 823379590 90805154 742402574 834893464 12168937 695298991 955302767 71771318 285754725 570761328 439401211 420571749 432746261 753011997 676987477 861800751 238818717 202887483 839394589 197812171 603608601 351802522 29259776 295910049 213235673 356238736 744707110 762490896 454629201 936630962 802059223 705740887 244805152 974777828 67402940 837096395 958862652 726730061 190905228 771115697 927209443 114232330 337814205 124314697 187718186 444659686 461087686 951386111 841234795 626711456 827113187 674535702 208373476 975220241 615485003 444173069 329457312 414771989 358829154 284615011 999372996 614740594 866845112 922543819 284420817 72974190 427276996 581431320 346846424 771026480 523261749 835304031 347909854 982540183 485478603 332679346 279059885 150355673 91385425 112411440 257139028 748637047 641295606 562363217 178289438 27261211 672280498 574087850 60711084 613647489 550416783 619650283 940382355 777827326 243028739 625033902 731981774 835332799 237028898 125713909 982015868 719534973 44952461 259567872 764508656 633979647 776521222 951784371 41291602 797356859 280349052 844603783 994005744 781194119 155491419 30805301 630623601 388019963 771818748 893146933 154643250 547348800 208825321 966448092 726720978 23123341 144526104 993702584 669649435 838149284 621607558 69157858 146638281 616302234 475627379 731149632 514581009 978386977 713047931 839870632 622407148 738797868 307849175 995151764 143621510 40695036 10477416 403355471 473761532 699894323 960227601 506836216 139139904 288314246 174833004 643043464 378840008 548083457 712611051 75934725 984758915 372825894 840833782 469810563 119853367 373369558 900148196 34131102 386210603 859074693 817866987 178898603 750220045 530260383 289375718 627480137 908057454 815783227 234335764 260671925 53382122 13327235 270593916 34746062 485623805 718675678 977475565 208319920 753356342 296291748 46427129 92384703 487536534 667362938 230415877 363824770 297177446 971327214 427578401 865578869 596854588 832691989 487511478 160021909 265330431 602029671 464563028 821656974 403991666 546607839 632241037 368187862 455537314 885829285 743601667 783302223 129409609 608879710 58867564 231012271 193852809 895403517 577027333 222000829 491585405 96930183 994160149 531646205 98852647 229654585 324416428 768561577 861492294 386350814 929299596 510082011 659878949 985595149 327180998 822981099 847803839 406924870 585499250 380232796 702527302 326375363 427226916 631145724 690555057 354502 873351545 103297420 538319904 430655481 836628513 371525550 635113567 946817625 577265750 109333377 761502235 436194164 257065195 233938056 976114252 871637505 941051336 299491037 413967311 805249872 38671708 1029400 423304564 957851163 75036380 623845892 831803937 62936532 941755779 666792959 822469278 906736073 769225225 951724184 93107719 26813688 364243493 352705424 406099209 635272101 519553558 918003754 337160812 456998097 874455495 584965093 849770017 324014507 28137829 612485336 335529980 801546868 599181229 178537321 812940666 744707497 341687347 418711506 713873342 24683652 248414936 917947505 579110886 262569867 931228630 527002718 141606346 441813557 65293646 164518134 288761511 708442165 993396200 67371695 485654151 149443281 931990285 872231850 314464364 105065252 36855771 408555286 146398928 16450583 288847286 701412983 152349920 334391181 3005220 876297351 855174295 441369126 733459458 551262551 158721028 437222568 935620874 142802532 684585516 820310616 447203939 935392823 273102826 196690353 933747628 621305041 403198669 568874671 391030973 400500861 155472932 333162507 500762337 424989358 259615141 820090072 356014671 354554946 787569533 432785419 42763873 131012255 52747275 209199894 685200807 94057441 220612964 26473847 478086063 391360858 291949394 509259864 301828939 57169558 346065882 432900257 831741487 443028972 398169204 977219993 166468686 471171208 749090640 106038140 331907603 692274876 530820890 585042499 187911018 970471602 619077927 147242133 610240344 39969946 314199494 896173731 900981801 717750393 838204967 453524360 830111514 882452532 651478727 267445432 526182638 276250906 876599805 566826703 399686254 750896092 502715055 516135142 561803737 165937606 47696826 939422719 301476621 72694145 377739805 953410249 689878271 974046169 104846823 185097988 369992434 859000623 543696773 424360257 18651264 757080876 257603161 768305279 502249049 113104621 930546281 629091355 239532155 201425504 342227136 988781499 601673139 292398720 960344696 806448709 764947652 196361251 586740874 191256040 978043227 111450495 69709061 580731003 292674108 50809397 41019274 745954741 924766586 789385669 501266422 87112621 505713494 920738716 790312824 806235069 132134162 387152055 644188908 360648570 812846206 542063807 684270875 613369107 231520466 432915983 366025202 576341315 526646189 770749666 248914780 988777615 225511855 756295176 142237423 155418066 395995417 984680003 915492198 339106407 320715280 825915159 962308412 999117633 421454711 304777249 945020598 879952169 841202414 330065502 569208131 993203457 275888539 174806752 288451388 189916604 641138103 434537788 831145603 55889843 227346204 353937592 124144504 163375605 657261356 546344867 715425647 621356060 644391993 648680893 285816062 385991331 625967414 333650414 508026439 458466220 312151927 975981106 519952710 22537786 797251924 838857816 172160164 734040045 572236382 657968069 302153454 847210381 749130628 47452978 40311303 643511929 709118913 112855950 803939587 254318817 407521075 34985641 583044804 120569366 119374284 100320429 15602475 117926111 198624696 622803669 297596670 925574379 497084897 56724755 832793961 301085306 370924445 794686325 393575941 889759133 503080491 993704148 766536485 844010960 639653831 310295080 513768165 170289694 606241423 756507783 748490559 329563222 74956249 252425277 729887315 169669597 186158468 61443482 532261678 59616227 474279585 553657460 863152141 544003081 753583302 120031857 910227031 34838662 736754847 886670555 215761331 414681621 658129211 887529729 940676566 890188995 812440667 194416652 763775535 75539177 230851124 257277985 584138510 852501931 688063744 660940735 212817833 892584909 958139383 781235395 827572997 883657490 40530779 374283821 719124445 347573794 623818293 376034063 407379465 78648579 471518808 967814846 782541118 570092114 566424369 270828575 921496351 39473451 184615893 46488263 274911949 974960896 110233202 196775325 672916913 406059920 913976654 538740795 151527031 67582919 681998724 813708474 535631436 763032395 761655710 88986800 657064866 634882643 784621347 187385553 588524144 925964805 290560663 606526462 143198469 159080958 733815609 436906637 805240793 104174462 10152696 940942899 330397189 543578694 113821951 795837850 565689332 577415307 787846995 255729692 962904783 327437029 309930713 650422366 396280633 946535888 164791871 15962282 58840588 664393722 40655936 528418455 542572246 806696700 322871055 360080463 501856232 145738145 97885055 825084877 685607554 337157292 45289155 18510754 358895959 656123384 952952892 328186136 552928428 315925534 772595209 313996442 480110393 412041664 810372687 719363161 966098208 154069766 816250748 976973462 815242689 935456902 301688793 60403452 684671317 919526916 914067685 137724670 75818868 156689329 582367774 169679566 113693891 537697534 543525903 483771859 797482907 768149888 750570432 927221703 223961204 825214962 498147711 131027659 118999226 702647483 928335860 709908041 854060779 881769105 221694103 554558400 34778761 395390502 543865596 505840942 944392232 867510092 432721987 967824083 8376786 989390446 932295672 704645831 790042085 54867324 94997296 760017596 741533441 923956743 207858890 456382479 537939976 392778440 121933420 34817076 105698048 101047528 260489134 834121833 51149060 187730421 862948598 32314377 560306229 230246169 160120189 654955268 369383766 906315288 243817183 64705647 568586832 718254982 841406472 821982098 699868126 994113789 217875319 357279062 702926266 847490035 105878921 964182769 720941576 999227920 211291915 845043506 233742018 331886416 213042370 44393526 638279182 583583355 900203024 125751447 926641681 496603320 714709415 143017979 477911778 853314790 928851648 198404653 887012323 90798835 339216853 892627584 40175057 880527698 755294132 171445537 978758927 716331649 420633489 593805962 158945140 394239686 895064168 367571344 247719313 812897722 622568077 851650436 532556652 424024183 551884399 358030217 110351058 663855395 186905246 372595088 590181113 615959497 965309277 491886865 376221906 108907368 64992004 167714930 98210635 329903359 5708187 680973985 923077080 875258933 807812763 376083233 24151542 326280680 579868334 730124390 756981118 780500074 995136722 421306244 69748385 567008253 806550339 121897690 100966948 713018662 490509618 716205902 610195586 662020799 790434552 287241634 241494384 30250577 374723564 75726232 999534712 889376510 910662290 836418781 832791655 151095084 547830858 617488647 24212025 574470056 926029073 634486358 280697199 714308094 830501347 583014943 552532336 499122152 976493559 882133174 678576754 860447392 125379998 258548456 336446930 982547537 990950930 341535309 600110937 537404895 261007496 897589241 593869915 19393360 869825356 163419884 633991243 441343907 801682819 155983254 140384508 303341208 747643323 754641778 989694257 743134966 198150934 74577503 528449314 279669920 225175370 759375306 439794786 697816327 788776056 610948907 589006526 88063247 560073093 175326405 591956314 893032253 845024079 334637394 490742276 997498437 719680330 36456412 481212679 58209649 981492046 651366337 890755906 528151692 557667750 35997600 989540871 276120513 1585824 104926551 834218846 629877233 270953116 699304058 381239866 806175797 76658053 584066159 162163958 884696005 732640315 811556225 56583718 590830682 6461925 570298597 597664092 529867848 199671616 267302123 8511271 277131653 972967727 349277927 765487500 741265304 887370292 944365034 80547194 352382364 442915421 656200995 185275036 260385045 459307750 805776829 553857526 209880386 903993102 243755724 373980489 138877955 527391046 793360663 561487772 54489014 820167951 824059338 869837557 242544014 419268907 553605050 252600518 256261731 19982367 125080485 948115638 815835056 392813172 485414194 478622933 563234102 803634704 57720988 874042853 871530127 406578925 682910592 247425402 994189087 695646176 375695325 598448219 954126955 570170068 470326071 31959162 304107906 718810058 366208241 215463473 25150861 711767059 412427119 815050669 836720698 783375537 313742490 3714187 608655082 925899904 811212203 694813788 546073208 755186656 51486927 976895612 894787496 16577435 522329988 219881916 578305726 320603603 176466196 821871971 73633708 170418049 635182194 758252176 302137252 750060271 136360871 532898200 819927470 610298055 524363298 148022224 849262065 521538812 762925400 448159737 575601224 389812205 641379238 294066321 948563565 42898405 45822169 504290907 669098055 380251727 505267622 894457876 316508017 581170899 720724725 113512491 720079739 896552525 694699386 470583492 539555614 880819640 761695421 85353423 940418538 567172223 978715113 513483056 116336045 934088759 254032410 541318729 911598618 62229876 450964681 97142398 767172009 148135561 529548019 226155031 591795266 10924694 169757257 688876567 339250130 30658626 555849558 537669366 42046782 666364205 387407148 812697957 54052566 211576821 969875686 673504839 186188442 408167831 567007911 898961329 178389210 898963318 892884429 637059684 261544211 712544675 924039335 115827873 411699648 278281325 227060560 658356138 970643889 945558441 739821211 877894829 699393965 384280489 266687547 329363523 605665549 906634634 878223990 4868480 882171784 484466258 876630868 237576589 319678439 543288485 114652209 23239713 114807857 67793295 681814764 982546596 877360801 523843166 818811076 24051335 53874751 618031641 250777778 117958546 438966601 745879668 744675951 953105681 10921992 773903473 203190574 159296734 300663849 721519619 7571767 952047862 198301571 452670344 404344818 688740072 354553337 296105530 298744736 532657004 151865146 575507154 712679808 855194190 190301126 593922961 365620907 741343608 362186868 149600870 7000213 187248562 602987488 208411848 911653442 655421695 936389649 150789544 113090803 114911419 910482100 103060005 252306848 362968852 114695980 666543861 68278154 76805511 432632003 136393058 454210800 911862525 678189357 323321058 693588234 7291343 985903398 883901745 349386992 363975270 635594023 927069959 66574450 966257226 267529729 774461814 785686603 913965417 809064297 654250246 798709235 504096010 557837008 489500518 473895212 223308110 345566207 630847587 806164434 219888428 212567760 474491956 921731017 872925710 168234026 693084459 294272150 793953855 26223013 352863841 697079114 490513000 469503308 34010016 71776900 946907710 503293494 935315423 548654462 796895304 586453910 273927263 684504684 320800398 256323824 613817406 234716899 137779227 463562042 109376262 969413998 333094964 558182849 579372628 394987203 46310467 331936973 415067941 79279469 922324343 642650687 298369924 928501132 291560187 83070003 158941962 188816121 306950481 80945541 940792163 518175970 361634688 476816296 527111709 477497901 81274930 976537576 980204415 345049172 65267097 91051641 549004966 859263689 747163457 623828617 612516596 656653583 67229349 501662483 571635569 354161036 100316857 955574530 407386551 926162569 17626051 620473152 745413528 606116137 808283883 360156366 42902972 503497972 932827400 221820971 915610187 129355118 860089851 782969426 779680595 647248927 789458747 246577617 466627587 158311951 662331383 602965038 305974983 543864281 897657553 775666640 983488810 959707383 193560235 881843090 402914325 694483936 858337544 99610279 572491371 578492824 918112338 666937803 907906838 867245533 773516151 865371035 732507699 361905057 482218760 775702026 58575534 105876311 651078061 42503701 314717899 939641603 508632914 273023317 960487719 734029101 106937877 390258750 59013309 859208340 386347544 292048757 298138407 429326212 996276201 428056994 191874563 151726478 66154151 468015760 667953732 395119764 665296899 21682127 940309916 2511819 178540164 881597452 727713334 35646131 322073617 51034504 132825606 746564987 499276678 454844610 607723761 49415483 875956216 446614387 902115975 801108395 483323444 541146771 915952212 100646490 290255074 527213625 558579388 322612705 517990158 590398165 173248270 910310973 978575256 967540943 746001550 885921716 270473718 559033945 794888084 625058514 600469404 406731055 49950794 282589794 287783577 812351437 257408243 683115333 383777882 176761124 133214975 842607255 551969848 597110406 125816800 606277481 618719832 898175788 685769284 813000940 525559486 861192433 193907236 855069359 116247087 2498020 22474388 7005776 610169991 957143267 317453074 243028404 569143159 47794742 295088961 148204549 707365016 939298638 542139451 758150229 793100401 70577132 612912935 693788055 127042108 616525717 35369140 736406843 44609000 220354689 290296515 343820122 430284080 798050899 414637378 977699353 704293712 134339640 267103947 897650479 430786968 893557781 164723557 469225225 812228425 879386507 90218527 532657971 244786556 729400865 99337640 533868045 10388731 533938821 192238835 157670498 739713771 578561231 187680925 932665012 196972497 671446325 646454024 650131249 170762016 69475933 468302822 989290652 870831018 295646252 340774113 815729841 984713462 944118964 331669895 317768912 374765945 339857794 575116228 126786848 525809102 101206209 128205705 134000370 728855756 835747593 87205681 47993918 79403211 215335418 180421662 390535922 361533557 314429975 975666946 891779370 163695166 488054538 409434962 386694948 160744465 944275681 983674777 533082053 546110376 604136717 332759267 702575839 860178538 235254572 630853883 657187623 816354265 233171638 262979226 989742228 220230524 365199834 282008482 199548482 901004327 990264652 730331550 154711190 264723265 317270956 736436379 113201477 606394193 899982651 691726117 221118219 130870149 769853372 95682878 136456972 217808301 209160359 407838648 71901545 660555920 996447037 992219934 508449994 278809036 133010706 635332993 359285780 412869606 340266227 93952479 923900985 487070874 158847019 240851227 430822134 573882915 910912781 755647519 458670991 470437556 635060710 927201022 737120542 976672189 47190228 573742837 376874610 935435081 663014129 414871460 309848808 878821038 622434749 411476189 745542075 290131973 868686107 105135840 694397164 869386252 60563854 49421248 686904696 734524658 763346460 551271368 602758458 415010579 335667816 411174170 300285133 383660159 797671268 887143775 706422450 67064954 481270622 25803907 274539224 814405280 826028630 482442645 744746601 670207679 166087471 914168922 504264032 42662850 317773609 312611842 741512944 267853625 775092840 97154954 733826717 219832203 610715729 437048900 804511100 573877743 451373810 943300616 507863138 530160247 99912823 926344752 883682280 704210331 728547443 754845283 630664340 810681178 489733158 609452314 64684668 752903598 533120512 926813653 689248255 59986282 25262536 518890311 820524650 795991960 306278885 259013181 933301473 695139770 757510492 616725549 616422433 460707105 350098140 890242065 663112903 739722705 178332400 398746314 345765900 828469848 829059042 335732756 403530851 131037908 514271906 964785932 978610059 298235000 753345227 479050328 847641777 443468132 963214738 629001212 576837455 94163447 293488151 821902588 156719889 438182214 913709300 912642276 375882671 233783793 4215475 98606800 300520249 293780392 541371725 200115013 492390972 521038386 595605618 992954480 31759201 903086197 286474036 563729302 395285462 419634962 419676275 936002959 376706158 438154105 549091270 434110939 830915338 484256760 530841599 335716785 809011798 898448774 777371143 977635238 435519092 976318019 46934529 3890333 430425685 969182248 497528357 120074668 627813301 550785314 710781393 601075586 26482309 449738261 497917126 570482044 254474669 863789013 250116884 666148974 364156400 492459103 744228830 599001860 899357125 977294870 678265641 63673852 981879448 436953778 408487975 484942680 528939634 42752929 507447020 64135381 800161933 978653659 598464285 812711934 731136597 925181972 862877431 361648102 211590731 744882702 694510432 584440308 581708176 509926855 412972581 603093755 626143052 286512009 417003363 458645909 922868684 734141240 416817108 768879747 8963380 928286812 135332129 536521225 30684853 688437816 747879715 860800028 666303139 288869239 599349354 860219675 384773934 574180602 919400531 34682640 725094330 440387513 753778114 913407355 509906586 945745966 341531119 947138294 191883569 401415743 298876601 951537561 275765022 910017984 249719791 537616717 285073642 486845493 83265132 539968642 585851861 647155770 523539330 381874478 173002352 654525724 129826495 952744474 446937382 41788035 26023161 914153856 357561536 413039107 618720600 390703850 986594472 938448719 546543169 26254094 496028542 91478701 558688143 204275012 484693554 191262255 385969026 201106588 408941678 58435289 608575486 631066608 469281378 501277739 894093342 739541058 967680395 890763419 120394862 51823600 845782450 350623007 297350140 288385968 626585783 259362854 647794632 112894641 937821827 147157312 876609004 566760772 177517110 331760685 58925865 589774861 815774476 905494070 385252171 480190770 441311022 456801056 358911469 656625519 833676159 296471927 818890812 684641605 857478110 718893928 583737196 811236861 791836821 168332902 496795398 803600588 442136862 955120656 164361287 240146675 546924785 708687707 645763332 327092817 621934752 373236768 222823609 292230972 885233365 113972538 2917509 482894699 590417259 595645716 16226503 502091704 89216361 478882689 118876036 529419670 991564875 541252796 199157540 493488588 9843489 210338963 168450723 268043068 904312294 862837508 759345927 662779191 842814568 591002118 482874711 637441833 713287129 213431024 602570576 922909962 921501544 774490712 152536154 610487719 699368835 548956341 418361014 600532634 839673228 497136801 236481634 532839277 237856397 378166952 286350913 505311876 85634760 438058718 398885006 196648369 531925838 476628116 321198595 782360435 12416994 20515192 662545490 288981864 835158098 400197887 438859023 443193461 15745258 257223256 193285302 536520755 533886000 83232881 643266120 171683249 32144103 872095308 63843916 303272644 539624082 200940565 777355652 300016811 110694167 199851758 627881264 214173544 55062871 308529404 288816022 970849309 575160480 628485439 860556135 492128472 557139326 707924675 182652789 138452601 499148301 622495226 776456838 263083270 151208515 339649038 183459205 240309784 827588233 205904944 427952543 636813453 532026562 868195964 335861027 940072448 798829451 207735071 288352238 482647833 72076596 23239632 916693568 588434514 493999242 455581147 134786602 774959413 671782387 432114936 290527390 580598714 204950526 231913925 900203118 480109424 8240532 623536767 116267045 394551543 814911165 812323639 790685070 5175531 231441957 722827954 444738646 884477989 794550953 821846654 971821134 408774941 566198711 837695803 191659681 309144273 101878742 122205927 720675163 883346398 82736800 99998488 546898729 423182235 8902890 764107352 910786906 641070053 622697833 358532094 548582210 995225353 214273669 124395361 858154668 810130938 343797810 143293619 759672177 297429565 398055648 518097767 337421130 847748819 648320786 726990378 431245086 754559869 214190541 428240782 860248384 226731803 541319363 933348991 239446567 299765321 995325878 793476019 751212553 644470130 283325105 966008382 107799739 892121720 405339635 370256488 278770791 371098906 961645128 521159500 559772710 20262245 361091945 287579909 541077958 102902067 376795698 189258959 699251659 61530049 44921869 24659920 368628268 417201283 13460477 319972988 94830536 905612208 64868283 105931246 201516694 87362213 32778584 638391873 444892532 374155637 211189063 73963126 283116804 765248670 798614445 291687704 506577263 862514923 651325500 125723164 54415873 988931843 301382634 77186531 928912411 353400629 15835035 505971198 603213719 199054391 795177018 858721310 408356780 612391649 23420687 68645717 790488147 422148160 982075569 5020671 131383205 445044943 979767964 218366793 678834852 452962695 641719813 542374481 416892358 48396850 371541926 665840361 242367844 819398385 444735109 412954913 258137525 531366758 931827181 583407179 548334020 66516316 101592297 629303702 458618421 910343971 30455615 546876184 829028168 143365974 586798759 832931100 927579813 902945194 317324959 584098883 851044857 367507421 122807575 930154908 155742182 843802178 470377140 636203589 138075314 5684611 217760898 752052815 533115784 34157420 394820825 132213656 643105746 57211571 923628299 268731852 608596093 159438166 372930393 564920420 344600969 795839437 324505502 13113517 471264252 127300991 235727277 550447720 874450774 642158942 409870886 817408479 580390933 673270660 854941685 494503652 332935970 255914175 929402825 121728118 527281280 933686676 431398290 486016917 712215270 243677583 154755207 612210949 967359043 796178297 844115235 953037908 477720110 490761415 379182813 287853110 274064434 581689646 660950800 746698833 291977128 59150537 679041707 695700983 497719244 481085723 299255231 227045724 800207000 548288663 66036375 105072022 577414307 803408910 99856148 156636919 805681224 256887278 359814542 434382820 300930358 135507674 676847385 414009536 366019396 207750207 528028214 700911951 730084192 16888213 364113458 949947685 48137467 120796536 559297592 599386665 454769597 332653086 370051984 992658124 749618093 302136067 23057171 159934540 398594407 577891843 898622436 195596334 140911060 368262593 742672046 144536021 319102202 627294613 251303514 673151404 604990301 460862967 994000846 50255919 23945616 757530601 804043114 450539018 764707504 620538 204793676 978200492 592772869 605782934 425318569 352025588 194095050 620665674 409524262 276063662 208838000 293328451 190162424 384038411 381619163 988028040 603461575 607330913 466134929 601388023 142467991 498756238 640962313 360213740 769702881 615360255 311262620 233070684 601678851 471655711 7908173 190119671 890950442 262079024 625505144 226293907 175312165 496498728 127698244 958147423 56861792 672414215 589366709 127124858 364002062 787976396 674859263 547282239 382818208 119681077 24114709 779960332 349159285 99973634 526866796 412924962 231358129 88171997 286635436 820723109 530905059 628112157 132420850 556000126 124484619 513668072 547661638 786958691 345661971 361588862 946093910 72998004 472425250 732045683 820947028 534103955 357478245 45836987 234391789 748669082 193423030 777090075 66654502 935655813 751829675 741478260 126344768 700009078 287373966 70985834 535432698 607037347 398466772 251397421 63250056 917607797 621939773 256018105 786380909 629548005 326598590 515671693 413599122 41562083 902558331 638728786 839723532 781340875 60747754 205739493 804963675 604062410 694512041 964524191 208135711 319561088 709566737 555282588 795458005 15038481 523424009 500775397 783674440 945188197 618753860 217129244 985855673 918269983 652426147 839053912 107174693 852654876 653717853 472004762 391885950 663733153 532728018 925205636 294286878 891942226 930687488 235524809 274600236 109458810 838785176 752621831 640529522 907200865 196906888 31302479 546826327 431782125 525933445 779318438 50066541 2076295 546404475 130488062 174214639 692692302 402173826 859524423 44637966 543777155 963435127 854589629 377262715 516903679 321029353 781887603 322033037 255880583 987862353 87750516 966156546 522562205 299546859 233615320 867912732 905650443 905804114 378587744 373952921 299310077 894197688 998204566 421425258 133662832 534314169 305097002 494184306 587739707 276318939 6199993 938831387 30261151 421907546 287430778 977028595 388894103 747235906 441762856 632668228 941531767 453529975 358799769 386961199 112946255 302783865 23119208 13481306 630530772 165414003 629448941 695650398 85061331 231919813 745186263 941945930 235532348 528945878 719314715 709294966 43146957 699976079 336712381 872459985 205374750 447604013 478812943 17783184 36287618 808690223 207558891 613128704 96387130 419526699 114998080 173322933 429930322 335627823 586097620 865425890 486817485 174375359 400878127 745201192 422924422 391597026 370714787 293273005 361967817 724868532 995914891 813177865 356216897 783774036 9875667 909576314 928888561 106353018 750302518 616181316 397020658 151725678 545349154 77003104 396590950 768976599 417372004 340398012 77543134 370363889 368939223 864092316 975623772 769713493 231391889 779532031 400804496 508564350 943485964 804239632 366360478 103976 236694096 682800174 583094242 230325456 74197726 991906608 872596334 626487162 868531756 106679945 520746374 949336303 137054915 368265279 428655763 233649085 368099732 112884921 881058288 914611351 910859638 395041979 273553198 225146332 949635814 277242718 870668620 216501139 180089790 314504784 380175998 230932659 137753380 213214486 72079683 705230876 588314957 798372612 130515392 375699238 642092199 695319179 404900837 896114676 987828799 717464543 911666073 893833846 165729188 523536208 74985622 935576162 14341982 627735149 969826088 799611069 383766266 673094639 268950189 586892597 899996266 363888223 856594672 375264618 606838542 585769662 71954747 447205507 932987868 110907428 708637574 403632234 171147265 3579690 2377631 471679424 969787174 429726482 941900807 375675315 213431408 616303566 191464742 166429478 438262892 805115600 546967224 415551154 257539555 371014313 267372385 155511441 349640982 860407255 829311197 82255668 862226803 774012621 695580736 339528626 770784596 349150152 100634228 190586459 735495322 578240058 770605188 474112996 282293720 834176777 42336658 660970846 136386134 820697280 648694394 774330533 287023483 959872933 110436898 31086865 518236565 10369708 322449086 692576232 99966424 880383327 961492545 19122150 261490188 885019573 351675201 207743497 10977516 3186291 125794541 86882572 925165469 917052245 345633102 382555586 7518667 173983342 351846421 380072323 236068430 500284639 920329792 892043504 120188625 237928360 352006315 890036657 330979522 419964297 540667957 114164107 972654637 48728671 450347657 91262771 379108562 272148386 921380813 230687864 743807602 335799552 823426955 162388 398438720 151809661 625652809 734814200 775868361 182200934 349236080 270060916 134435019 123316271 785494827 414464354 304426158 853901296 711045292 764916311 666696699 208898634 138428731 980287815 490913318 697298438 151340956 71404494 498328627 731455589 19065352 416754343 351059424 319068426 804840306 69873707 965396144 64675047 233324388 300933598 336985572 429212475 95945239 257736038 235533747 287561310 424994113 829661819 120569015 471021969 383352724 682153220 963914549 644356971 848029746 765338292 348988603 343529861 797994997 794349538 287205026 685931485 19704049 153692467 780796247 648393852 935828877 914727007 155893614 95011015 843798562 28482413 205065221 30058255 937984500 124991843 627895109 586653446 992679309 470964207 257995522 985209731 530987484 397851781 126445694 971218867 182135996 869748881 967505441 774825469 80659199 238097168 480352930 261322440 624490924 490113871 155983051 695195368 514777314 393171326 53810916 768062237 891628043 734056366 847508529 692730952 508500125 928950145 930908403 904768642 644618825 982990164 7734564 950636017 524629976 653874973 603156900 129161838 932655117 51623786 428610230 579766294 129446682 952089725 815652587 111253205 54498948 586234647 25927503 161141622 652775793 425909073 968358280 521416965 185565459 455072223 236743415 19557861 999510601 577583721 10460301 431368340 967601817 750955142 530915776 559711277 25808280 851037065 722809671 726849221 307644769 414312556 483478710 811613399 20557059 830594287 288754050 651591358 204231958 57487019 748776168 930102736 914511443 806569572 717519366 163141003 314476138 504209064 168402820 356969227 122834199 962524958 222157934 140960757 391171617 143803378 256306376 630266966 247410751 712368421 747375981 885683702 493469641 357082397 248364653 285663073 282308091 80155531 67561211 177476344 233192440 189502946 736078229 884518595 991048961 771233165 643022395 527271689 196019051 711572535 563904544 15605611 261399710 70415868 709771683 911278401 70815941 59541229 271165288 231706511 90746152 410373951 398761398 411882647 382247204 337985556 331326364 582718196 558572943 455388241 656561996 145248791 627126033 409054735 623741787 221884274 882338308 44061299 794176349 599072774 756363126 343023509 408849300 157276671 395259953 488309311 434740230 809358772 517205302 715282082 975976521 257908654 687920329 292572886 717229234 347102118 47944614 781566637 791080385 18417219 555027722 120054451 476113749 27486489 43551700 338978620 214807635 8762262 666371450 827121845 455203182 756840365 452883598 53678639 927039126 543908222 288375038 722418276 322694099 797318286 141459630 584248320 650340799 128867031 397258956 851731285 100167756 154946775 75671075 401061929 474308665 22466573 699597124 204698714 630119770 775117992 170476886 214497736 89078694 539085365 139859535 901808292 231131620 622389352 935333724 373690335 19051932 953932422 799510998 993871144 32084018 404089115 814704815 277819766 872727652 774802533 987977968 277483860 838820145 685000678 966086768 884962902 595929673 599021835 381272217 655964232 128981001 345278487 847231183 115634776 609494139 584599817 583624169 943284142 217158603 419980189 503677207 521528189 112062249 679713486 964145272 565196956 976378721 922011177 196138950 850974874 684271785 948194858 166979942 633268056 824444342 237071264 884261758 773849239 391674949 867133471 463743738 223803087 168770876 778693359 253708293 119730066 352268114 199675864 257611015 357716182 2969243 850030210 891872160 125650258 173475861 391097081 276202977 541150827 31074730 655339703 769328597 800086980 736209897 491919943 649078896 661690156 661648445 642625707 190195591 491995648 190234289 487036773 516581660 933030836 38656007 199627261 884717277 29959607 304879785 196528270 581436756 51497198 744355807 671045881 483614074 355032125 453274497 690483380 654225498 438869910 313779179 807792203 195334404 22578659 394869470 172956613 604260105 942960223 174989661 209561489 645731136 746045465 267554385 813812453 609026983 264454547 234253440 821127293 477772524 956570656 988658345 621868647 711601311 508985612 253064965 131491171 360057283 607531864 532292456 653655075 787851990 545345526 562643743 305524431 814843619 411440902 174920148 905832624 697686957 161458086 292417270 320227873 553798124 864714263 186089185 118884218 718083268 39631693 58140630 125673405 71181379 177563651 291955808 784397164 743728563 49335412 366835951 421626407 981602330 399376445 377953 98000628 809253040 450038034 547001769 814994773 652468333 295688286 325761854 34766979 168917284 368896701 85949086 982662307 68192726 743206854 98289731 529654148 110813424 686406249 915857722 616646030 830837840 183997039 343348194 504625605 362867411 67696751 494340665 292424369 927023300 315352752 645354059 689399666 189890727 650309034 979827398 894073216 851731064 841292246 639040566 679506432 126495441 783894613 733860466 805995192 640669238 660593923 83353300 752847293 825238856 906841891 379532574 944614868 752868393 792825963 312463247 502984304 646744808 240937168 483456415 260240846 81549455 346976248 609328314 420617632 692476482 806743951 783615236 508914050 685260200 878237645 470555105 860760997 856533623 742216969 452245002 414334979 835139605 50155084 813763863 225970225 528172743 191790629 359037246 696079641 785302019 354106032 536582238 627852169 232367656 799258731 882968617 473366318 418972179 601067798 476981154 508709755 716406468 339150082 633577900 544115263 85842380 69930780 310359781 922250607 259498488 434276697 606466114 89739347 849583378 929898551 289579192 283705102 601233534 958744496 592554515 463282267 540846823 106379717 876546909 533276622 271027380 106887929 258511301 989109766 247213662 672240290 785317644 747648708 590047665 608150718 583704664 724344750 470113060 878600849 222710004 831826768 629542572 109650063 172590287 118196775 742773925 793921730 614415148 347236272 149737029 129400944 416223473 613763837 679232217 995627997 145730517 645494057 33151186 104390863 492822994 293245476 257709473 110104272 71850954 577170436 491592129 116230469 758742501 789699519 903013123 552694479 786007212 835676201 16158926 669454725 431163378 844188438 4819410 277902124 819334179 299148500 789111130 429565696 404237637 24977402 32119934 862187525 985424237 161946293 669951945 661953857 937484864 519873445 550278577 336648986 95957544 319223600 501309901 557154194 16346063 565996823 742558412 98917788 448704894 222987895 496744477 343867533 456456609 803167724 746465291 23870952 601268 915118647 136123730 309816912 197613383 424792116 403491254 920088595 826231796 522569172 764922140 44150772 364510051 533812102 614485828 116321210 753614302 938165663 648664200 858949906 134771359 913047109 106513257 692708306 951920882 144329785 60607982 988190892 412917476 169044259 995018019 133708438 395173666 869004048 637958900 308562297 905910779 61046532 331999494 839225512 957005806 915929286 441610472 281537950 542559576 9526082 545535878 911223290 152324146 375684844 432813168 117198963 301602580 52309856 412398497 174340215 654035391 753083638 330807310 947653909 331287696 673806473 415636354 661149288 560071539 300699751 11756811 870398433 238319085 969481458 220131055 65226637 835152637 826896047 621241863 859820048 297377740 672138767 32156324 708330233 722956771 788298043 96018024 351941963 199419245 420536743 43539677 632618316 964571314 818549664 700965383 961822900 32502130 767936243 75691777 906644733 489755207 948797563 150504136 316912788 345355751 438500530 465326552 79413572 280727213 208690993 195759633 430604033 746620634 753556711 926598900 66218894 212137728 636425104 741614092 307054686 824969357 580352315 992835810 939221076 986193743 355614190 953602570 654766395 151977288 156305473 52809961 489860603 876092973 986446276 594818091 118039407 132662676 59537662 468243223 471597947 352178004 614745757 903917866 930631639 217207873 274525971 352159879 641270259 495646174 96745191 64408546 199493578 305436885 688662317 917969027 391243435 902284710 448434694 123810977 553463603 781768811 261290938 513859313 799883430 205468613 548467690 511246425 485700666 919276740 184728642 102616797 401373829 691481234 86813026 387263082 823951973 513680617 520622902 636458447 43384799 260934854 768522252 558772360 131381928 118274970 161123280 459167671 421287495 912182178 842568503 757782225 623589699 792572628 315828876 984550726 670621990 600954499 15227620 149917599 330459983 707068743 835049981 445591276 426927472 480686385 652246869 815592191 762926898 525330314 496777315 106667191 84015846 461074478 367602574 650048169 845879097 350366206 146974478 887025101 446712696 990294415 173252496 951524092 109554741 823771891 512879772 162674163 346180616 927488947 836366592 550564470 915608473 987708856 740707370 1404933 27174546 448436072 501713750 565917467 683112406 112919235 963687822 470262636 290122110 439356177 29704536 411422053 929218843 533274751 454153557 83207461 831983628 150214686 121554390 518504399 715900027 28853699 614223691 804079268 78092206 180256334 283148114 754152192 897694600 175715965 806447553 379161984 113830458 690140391 821046114 659293641 602732528 101549453 232827692 560207407 8503883 334578300 755483442 1686812 608706428 870886590 481628615 766416028 123042252 641232186 147587644 741019764 432993782 456130148 483901134 906100537 582685805 192386840 633557356 289704345 683626478 865946765 714248777 670630354 544121802 489682342 363675791 581061720 147978926 596374549 583191379 111232657 757513418 596730772 976959895 657234990 96126338 771068176 45347221 798883942 493697895 432361090 74391644 467661639 158642297 797460282 463092936 410779880 290746138 547843206 933609547 434062583 245298910 845988517 796245076 458862277 862450038 544441968 756100418 242794486 459527330 261308375 191468653 372200541 390788924 896301810 287211493 196382103 267303129 238465305 546234156 956250403 722213426 608897666 190527021 461573341 869405884 467166385 693345043 226280742 829415497 806192816 606640918 414874904 833219380 354791349 604475446 809097655 517511526 754428330 12854483 676683753 75675443 194996964 400465015 700143810 300856148 355350332 998580298 672265939 489419340 192585060 618489979 692208783 800324277 198211413 330803260 483115301 216830952 941232110 469283951 804732300 46563656 850975283 283293229 730233474 149240801 381653517 461948556 517879864 409490413 246532827 21986001 639577509 786585128 18670395 545305973 430088795 890091789 868280158 955617532 149041449 709554351 627405536 353704115 677006197 885317401 574162705 958264790 621088057 405140052 49976142 618118058 526672631 731347914 113584103 20357684 314981279 767540449 91600913 303920609 386690823 246811916 473228950 536318527 186185601 117651089 372482042 486934703 136927469 503064911 840030324 371187640 618594188 151714594 934319343 955881198 83803718 695049348 717143597 275951489 722827603 955568380 242182439 665663746 946964061 704299973 244071080 699840794 197996286 502879423 827304538 510749925 39811894 773852340 316949222 908927724 624866217 697053540 184670942 791902204 180391239 321175848 423632431 658973829 175521956 59685418 44996042 582210212 520617366 915683942 640132567 696601488 241265969 317226204 520865022 9659546 471540823 514611239 935761675 5290393 327290496 482043698 62580522 202177145 818732465 274988550 670823897 185676486 76975836 77959034 281868804 39041727 144204925 761485553 599293537 410318078 469056769 35237985 365500638 677657644 258897451 409457121 907896438 746841667 86544620 864264349 553133089 751595639 4100179 497514505 344649453 474238406 641755538 100480651 773943741 840657621 99338179 745429133 862735834 166526861 428526439 222297137 461106518 755937498 138815915 170408382 181808410 487828355 711155791 556129461 588752690 236562934 824293860 315976449 191007338 784498899 981747372 443765901 355669146 250234435 349065312 121816821 92930551 102595562 21637366 642277920 879004107 94239316 201551309 701355821 783249695 367145798 85541753 214808873 2707043 76670194 669043629 879652936 183737955 815745758 77862202 362203417 617843523 580108419 550211822 147778783 148610812 205958311 448674082 881946880 176843147 591090231 998692534 282297094 242920616 309094311 21868941 287323437 8961202 477380239 341199216 456305243 854216186 558507475 623353359 992359669 921151563 472852481 39791736 42002883 654431470 697959 795814885 725426668 935784429 285162097 603701993 943724616 505072110 122782399 251235734 856993938 195869117 425450980 811521958 970931117 750247428 193813400 963395724 773914002 304144912 65076471 147221890 419964750 818043909 105886574 961349340 232118576 909919396 465917449 617097167 65163800 361585038 859689957 452602816 42310553 456041049 943417395 660116879 179184000 181045546 936690843 583724670 246171061 765670742 927582488 140936194 596362782 434138886 658288618 879704450 241000469 991371636 464916454 780963601 277746689 262663747 242571377 515908423 929529822 31418115 687046461 740682764 978208482 327528148 663486334 915859131 556802408 218384732 261200721 951807192 115273316 58548330 809424656 614892026 410304886 967338944 792682767 442543221 141662354 523224085 55564204 336243300 676549214 718655329 720374148 390665723 172725675 366491853 154920405 288977048 5065731 167323010 763875654 725060086 521090031 241329793 529965388 126115598 401559886 728397122 342326743 148354037 171158299 758916086 575750168 715327460 79533947 57785187 933192077 373355397 87938210 248334186 653720337 615115030 935791750 472919316 273694027 925929102 154607517 590421131 385714479 914627378 682048473 502981281 764853666 179212752 410207709 934997966 186731788 383423575 826526293 770514940 211084715 9841649 494105693 855841977 181044155 952430347 208156384 439296954 248630401 149299411 211626372 644678746 947425046 998443472 191540405 500198406 134922198 301005532 863620796 881464046 93518262 674136545 967857025 392386407 113476906 887487848 214104331 390201968 154162029 416910644 857025971 336834455 741377340 817780675 701497046 427065676 107613043 510611344 897363548 158009834 473321113 930537918 815554503 79566904 748859187 771247284 426792297 371911663 61017468 999540078 617483834 575043908 675383807 692236901 600860212 589023680 13230335 18024405 580302797 78949003 925708807 681791013 125738666 970760931 887291692 517495194 857690661 579160821 105493659 494953992 103102243 895980502 88254264 87832904 309553288 191487704 672060852 995091971 422319589 535972291 707170733 475587940 715538894 367275595 124894151 320469924 38928070 591081432 559244456 630678870 159900142 947044913 621866806 172402340 401550208 293175685 679002993 987494523 301452822 84229360 843118763 944627800 926210816 747777900 963675204 528774480 854301623 232913525 369026250 675658671 838188944 106027237 137531682 735891510 594411000 947181805 431726921 862700823 632480539 216487710 96484862 99816184 250688575 253323361 323087618 903941146 368599774 798016622 982465611 431446427 638635093 988499938 663408244 10153820 967507818 536427569 192305202 839067108 693764848 446219866 755526965 407631840 405872727 200827823 107074314 72898445 843045435 984089849 916292424 878953153 854038177 786392397 686686369 501908534 658939549 378176383 343924563 430147128 173771253 410963869 935441397 310544626 87790556 44957253 901285270 177910924 785585998 484159619 24411199 258566654 110661766 951796842 392879772 230535362 76116500 431637925 159941336 294339869 975548030 259471238 568030166 287313987 545141636 443038417 862045379 762858894 712967781 442227974 994666652 301164987 472858576 454139717 808242422 259150302 611899166 818400053 540973766 582375557 329931564 403163732 51758825 278895145 323029644 838119749 4149762 856335447 282387567 895687727 672980165 419436762 851390116 78329772 317741337 127536292 94635811 499372694 866705621 555369971 194000328 362963307 365290801 668031016 264547405 543400548 456424324 577813800 311447844 229165318 36090723 524755907 351632889 867843639 588296650 79625803 565777939 956254407 400426816 465355915 670526575 762142123 392201670 988231096 955202163 419242296 489172804 106071598 478810052 166904162 541888067 266380898 470122528 286196762 708567973 282218311 588028041 716611190 264657472 750127039 627629484 855868632 266977079 731817485 993998734 730503992 541115425 351475567 137208906 742113109 959728653 563972845 651957097 40073548 826342135 888589364 522901683 34346575 799802837 482798184 765330483 300913865 219115492 477751128 572576109 36875350 969751919 862408973 506369180 783323027 844671817 800246009 750164877 389524683 320770565 304225387 977888554 981275029 492754023 328928256 648755854 363106031 618519505 963259403 97508350 794497353 84025867 630603857 923022777 488595376 363992349 180991421 58608453 197938867 295269078 493327968 472489200 500527594 676585074 437655687 158822635 982901946 726268939 125090683 789940865 468088203 15777372 649199653 507899641 308807933 471656431 449928040 78521488 454402568 632930135 926508198 842648542 185027044 714949975 70638829 864989905 170362298 49884195 873574708 970663655 631528927 968732687 874693079 802288091 517293013 233821115 86890837 513489474 135268199 646089317 285168005 385217587 512290500 637374444 42370939 293828350 877820092 472766256 857907870 894902304 364721985 43284674 267463832 698150748 69798823 76628389 370770724 144875948 375052243 375770004 169312067 808436343 888804646 23291801 560553131 230485850 721981477 880555853 785757302 360052607 904555350 193533578 430953665 505020860 438028705 89500579 371128557 323447807 350551495 160201913 605897318 80552908 886048489 164527509 666346827 286872485 192095835 830154077 174337826 688902985 232289608 653057246 467474205 520165219 346279521 518579581 312938083 461019772 706830035 261239183 736817035 305106140 775444022 313052141 899357031 610972761 328621078 836336866 313672953 168414803 733473492 85269021 494893777 260949841 351712357 240704985 243243718 605225757 446359384 229257633 11018202 329367952 866557710 695823730 575197497 64103173 742637606 970959595 408542776 705657147 899364646 26583036 901414157 442867231 725949561 720638390 447579626 45021656 974362986 186551968 94244861 47347630 400171535 649521508 133352067 279445532 702712052 893475724 572815172 128323939 399080472 415167657 755226859 972791946 296286962 678039264 583789712 32108897 907426823 809889607 94065704 282911122 225294712 374345193 276799114 638067209 966508425 724452348 209979710 796594916 93338463 776600771 601414872 1460140 599321567 925502163 127996251 287300050 745165358 564174993 265542493 911805097 255581289 382389240 552595842 990237250 863674661 209505831 737932291 338453281 994831629 669213504 535364848 558727978 831959135 720520457 718373846 661028713 612182739 114699080 657160785 439297909 89589427 373754349 500050304 93017512 874859781 16649791 822782920 85130758 41103602 683697910 404894548 395187929 904801884 534773139 615009957 969420282 188497339 647653325 424600998 246844165 616933985 594498860 121184167 691743840 384628020 829621134 850072429 294838408 267911539 361749672 63677069 681720742 656356430 912667873 669399985 261043942 760319222 665387524 732794996 748709652 19272872 963918056 627196529 251837482 116798417 315619052 883899792 699989071 61207744 147839865 847327333 79370211 711870593 134434389 491463534 19715181 207853983 807122563 870963080 608239175 299293107 812956500 530941773 202080995 504525611 903274383 480017080 428044797 612845368 370387155 206872321 657007761 637464332 188564158 880269647 735277696 633727847 344968010 396958770 58029349 183565248 430553585 797636842 926533843 916431845 956685578 502147275 136908769 180458540 948617822 793678580 808562222 860569692 757718364 672799944 830066714 31124453 150239196 960633349 25916264 195017528 710996629 664540563 408677632 825286848 265378449 882546886 94058973 691966962 810800884 626473120 345621301 632048334 270566866 45508726 235762097 939236322 21546932 808597557 799354788 831196274 479024405 871395423 316764877 302299987 864943742 755389121 421122367 900834187 632505012 934274135 610699068 290081324 734334705 476767636 233078065 338799294 330345760 415805368 379169410 555227757 846490128 73367137 426654995 525368181 389837593 219391877 830987963 187158920 151165027 657260795 475104537 68087651 926302241 496013219 242146692 811972245 79574078 678162027 152440556 967659269 458802098 973511077 106141372 139654984 602431126 958621995 268172432 685577170 224528292 588511193 676533689 947799486 279479400 299812863 953803607 537625289 878716549 734382800 604893670 848332534 474911267 979442404 258397682 776632145 831357968 805986253 510188437 588930941 392974178 133484727 736633946 850422999 474507232 546433932 133038996 644988104 641421148 324776606 44139634 170089695 743959915 570462424 773215067 482979494 981143852 519501225 364032776 411999167 235235018 261635645 606548370 555719464 988815181 473023631 96474060 17529665 330160345 272435200 29673369 459620408 320824830 700655518 144192578 819882149 874844867 316255343 458134988 792700757 52126426 305108083 170900109 272217579 46543977 861985880 645518670 89602554 118309471 841736033 951191274 144778357 32742209 478658509 683201716 430883812 814233962 41576347 963170838 512030059 406649821 37554677 318787376 772836418 759839352 5321202 332550342 778472629 231438987 951363774 770400896 103442047 44281058 578343566 801674950 812064427 340688402 447867150 828629151 315832102 797496561 90406703 606203395 153977882 634242621 401415763 410303631 474122526 128873163 795715377 614758105 972304051 389785945 942121611 348612351 865468600 179368487 126226100 273786888 36605602 319406365 94471806 848368500 76329400 119220001 257623178 972847513 914926963 199956853 503664075 437421858 923967342 625356803 798460322 710119622 453857519 861773663 669436680 551479973 553369182 298954136 565632049 481410236 965150504 295839476 706089980 212739089 947595405 104278218 4393944 520749549 204269194 310864177 195190676 748573871 946761667 770562735 275084511 893324392 342005688 498264767 909445819 623626666 829546247 451986799 204582977 4577873 693134337 290730418 2033113 688251319 962866659 962990098 837684144 123944394 950149994 398946428 132355474 557981912 826223505 240783723 921556509 767867861 84213989 929581074 395847576 60080664 337951791 917550767 201273428 905606403 600828613 460609519 367270161 576048651 710059913 523156357 749186533 134388237 49646392 909497018 865237290 242229720 554058257 311684941 711059556 984011432 799546392 976597969 434678707 65539424 836189376 770193886 849524155 7469957 898735184 923096492 934615337 592688625 193228370 108923199 980552429 520435832 904963527 496304484 240115420 362345473 188718985 338755633 77624723 702505412 353221491 496298471 790339872 837720456 552696820 35115889 518618960 532752249 898472377 573618280 637416211 144268457 737866895 236217819 801381977 263506234 591722198 805447073 190124416 189500873 200781460 601448653 637283791 144687486 648184285 637087688 315892683 374564349 751460799 462408969 332083560 26954330 956257751 658410981 800049294 360442109 382188827 760709210 62685023 792450404 696543783 891426214 222943632 459934293 609431369 380402013 38406432 786052214 332980893 368871334 905199154 28665194 360859654 338417426 125736750 44913441 502829175 901045916 929543259 113750699 824384870 472075545 428248531 340906636 570950578 714167756 426759540 104137799 259112924 622590520 990947417 571753676 947036775 823756769 702436422 739595696 271953095 270571709 696941301 612363812 252808939 770722276 466167837 373899504 410728548 225770285 113163522 908762080 370490808 75707864 332687148 618841255 201356196 168554626 243244530 900222993 692993911 816253939 863353894 946292671 862033631 723344429 710757960 628095377 717368915 596755692 788798638 43459754 968402417 212773945 256550644 986023205 665006310 961175053 348445772 261519091 934442725 521063781 254978653 875188186 1504913 631041839 743178773 919811808 769408391 991289849 832295105 9274197 255551290 507163466 770594823 81452089 26573577 290675177 167595556 132634806 346863896 159462687 421739893 56852757 407542544 684423484 393012404 146409225 998816769 664750374 486353114 18854934 956077612 397445226 380262006 54263527 988697529 847229810 432302904 608222601 166672551 984480656 997961942 376096653 797620338 415246441 80082114 633908160 378337411 864818111 113774076 446818454 652255328 769207494 497799385 664501699 859050954 826880661 260169565 584001388 202529800 357678511 321951938 7155311 661639740 187942716 440166217 382531214 581871362 806412588 940848599 170636929 267060556 666346352 151125645 866808802 995537988 418796218 623913962 945792276 141278257 144728663 342343209 441453693 766416204 626218138 26558518 584933436 120167625 273155520 228862607 281162200 415375371 378145453 690704148 683469021 934531032 323721049 459455837 209041356 464145418 942809469 202814756 232317515 455454013 901732913 112900196 175116108 486354540 211699948 406267134 50525198 367753029 228446663 301762834 810294329 38514551 682490216 550721384 940728021 117352760 668529087 144751745 714421422 563498661 506415600 838403106 137419101 56759419 16760770 423455844 202475079 90392020 974837944 30471264 715351763 428658737 229700312 118351154 790274033 997405101 576790947 366826684 654468401 359163373 645848508 397684918 957956853 834541789 118383136 354878378 448613825 853562035 382373293 403272562 736752654 705998770 816611409 82828752 161007615 234644142 109413118 320063399 68400715 227665149 466171580 322962239 264506623 724148567 731244455 205929674 39797006 206443577 444892708 853865834 624076800 650050009 37936561 408636053 466609612 676157205 938146677 766134048 501451446 879126021 714867942 989886572 605530 647719195 79900530 67751007 638483329 759091648 901933874 715691284 40055437 304587428 459015137 873112613 73419885 155645247 837777811 208745979 248455081 694188582 827903497 816351832 611986227 580847202 669169761 100213488 372903924 950066881 113386355 88737908 722070448 712473109 387833350 112992886 240791013 600710333 539625424 487599396 467892578 410133584 25077636 784873272 774889252 998799370 927162698 897482560 365175709 627720486 704918287 232993489 729223019 283455751 715692334 617645529 915162930 704645168 233439129 559374229 994841655 972134104 360088263 965708276 277353896 1981938 114775306 98619688 437299660 155933212 113123423 778829378 474206637 422756935 784168324 4043339 796614506 896800439 670193468 686619579 827743507 417565613 505235798 646591593 712113301 226670046 690797154 643035549 967049366 509272395 516267557 363314418 340852172 596716919 464490273 582165415 448616984 957771937 701756059 769896761 243109757 332975322 313532542 506660720 710205171 622177042 888016034 420033035 821099283 971034700 84566937 254106487 50257630 821268022 955588504 726658033 793433987 678341935 844427380 688585754 248363912 256527849 770414899 199066389 237672707 400520278 984226989 250520266 446868911 200119058 450147465 579586552 995357072 515779811 429697471 974931123 860842451 153452758 189021017 386941918 574270368 63632011 582448828 841746134 204143425 394749475 5179942 56284561 607190560 829592210 624280376 51976718 299487360 962225178 241218991 322068718 36695324 66218033 344864578 885382396 14041547 56176496 871045135 626895924 411102362 205716047 260520617 20922665 522355849 851223692 898158779 934006895 109709186 753803182 451449074 221307908 697274187 799752554 218480819 577636194 396691211 768207100 780172010 842597673 562229006 220038205 707489166 380137058 784786874 238399188 335124966 41939809 181903614 647196220 177648746 309098510 147518171 895802649 609558074 853012706 179179215 127613259 710607933 43431590 903405633 777987527 696127862 585998656 908722264 596791101 411854747 552781648 723581515 991498657 583041882 156233185 325313035 51331058 92627685 988284677 318975208 962255666 605890654 161934897 17518709 781800700 814337885 470280180 705683532 96215732 596166887 360134900 783054587 778885703 201110338 527740465 997977277 198088789 506056844 486144554 547324973 452405680 197210499 252570519 848898333 709927258 789088638 113959707 17473239 340583231 694444393 339021815 119755127 466925136 39975293 919444826 272134850 595269989 376055709 305342346 872100021 545138295 837390350 720632951 834927853 656726402 603080372 909768017 950962105 851741003 703166309 669784831 854704362 211734173 192157733 66332264 295648380 228568756 575557897 246037799 584899133 625377433 843290320 675562601 885494492 926118858 326093568 244769599 403629319 541647187 31548770 533220763 429556710 597759657 974024556 647247801 631413506 614960165 57121892 973379992 212997668 627319132 797824702 742508058 212818025 88980926 800436140 418827958 834745632 831557344 490229451 558162881 847583897 159244536 564604393 461144012 110248007 360750614 725361695 56823748 834307485 82797766 533071806 92856495 453334121 507664820 536284956 306032088 349685957 540255077 724792251 249078500 103273081 171081461 43212060 27157735 976627840 977166537 259717573 786414240 651107427 711050756 801456669 16819084 615501583 729788464 699236183 428067463 992763421 254858233 358317460 482923287 431751440 874684431 830249895 637828138 992995477 967172031 546083262 630274266 418510558 174510267 513136337 275749197 909873864 68441826 951895826 945141107 461075185 421897277 812570846 850836917 849760462 869417964 284759014 549121374 566448918 535183114 397164474 339792392 332695887 837691075 575028351 472945297 918584580 269938379 437620545 980398854 411823177 299706428 544492024 434440442 698869895 103947212 296999745 228955289 241552933 913440636 336231075 577551633 745093960 861992878 465374955 820259949 328831016 851636571 887210492 734040622 551354646 889581847 367993503 57177897 124053579 589656714 521994161 904101042 40839091 328858962 349358607 470310273 485957466 303654083 439282696 457886089 647937225 460708753 739727108 297831350 33233678 350562535 175286480 981583329 722719504 437057166 400239759 368493330 710973216 506813095 611414284 204407943 620531541 46053594 959725808 151367529 125710613 262009257 956328760 114522731 321886263 856612030 631262898 459131855 270119120 482888198 96965150 374198549 417772488 39982638 160962895 61179535 310881256 707215482 364442515 447479281 956813864 86402059 194642820 262311921 59652657 827927888 548222266 560893610 613535153 259378678 95893099 920767156 864940575 781580000 934472443 362105035 614098450 831738034 556544863 81109442 436375172 791725070 677164139 157911832 592235329 509860859 61097333 586667754 941949482 400002636 684227226 968951404 951985593 988781054 371051329 618641515 504251827 893680102 16234925 44905346 675826476 239792788 243763113 599697861 149404530 374850171 562546112 432686834 820369068 524675964 643387048 522998863 357916663 727748735 202309500 247492731 26589855 391394760 891771559 412241717 488759209 963465179 629549848 246988447 601746930 306428414 680923207 934758943 584466757 902035753 862600067 413510441 337573473 543436890 504537678 395283188 495955981 110607822 188620293 636489352 777834170 521144678 156478438 197667679 97002003 963109955 795068286 211723863 352479955 82381598 974588173 629837462 442730433 104476651 947457898 650016399 91718450 891532712 537947728 539553114 350124938 878411859 354009945 960274188 201408486 264134528 969957751 913359496 600661973 975901896 241534211 880937256 125270707 262463883 853754515 867262446 251751959 27803877 217817989 383747710 56139450 484739585 628481254 97118697 349410773 672091441 369149497 400941079 549255780 262992338 950666628 399055220 50653097 376717721 167733994 606532294 756557483 217788815 325746778 184812605 669245726 623537402 993787854 699538326 406401357 43570381 485636273 819147853 743154158 76160806 375006168 193275988 935038355 292408360 854184774 170908843 440075758 545384097 813488998 976508746 97986256 981126448 194510727 182069332 759954952 166080949 873215588 132727754 304807542 885671067 259629219 135069627 528369341 556329167 122595570 791863741 23843140 171295283 585392789 327462326 870233221 169060906 708237787 955918875 843259878 344615974 871332847 152687402 210703313 660670455 565007409 952981752 752061786 157752681 983249435 287756864 905720772 414862414 458688365 573473684 667060111 243750514 140280917 567594510 705553897 420006358 383862601 54210282 941846903 119144953 738815367 9948880 692222889 906967583 535703293 3789748 578250880 72369620 590644707 354064236 15639002 267364701 778080697 897660620 20349430 550788699 272367463 356171962 12189587 730626437 275576615 938553852 370476126 152670875 903636117 74489320 289055860 865015775 929988999 852256938 707602060 287185357 693514793 485462864 669947793 679990879 738098899 112146703 75860426 307937027 577106673 511257899 127028436 941136181 206694393 54823741 821171326 160867035 418818813 608902845 949162479 713705320 656843952 880237756 743650798 587107885 169453569 652783591 610869737 335106929 650861357 264592346 187856453 453049341 115394549 841430307 8434625 200637461 954826608 715032000 650179257 190226438 392106414 845537509 872244522 841739476 643208227 253163944 361034822 801513640 21653088 431113540 15611107 939521248 835403377 16651864 682084193 829463363 811699932 163535049 613740158 225588288 710531677 836669671 200255794 318353326 34404832 486633885 826713128 247085614 950345994 181796644 312428682 459169291 935284857 759687264 492367541 284096611 866127015 95321814 648830542 590583072 561731563 551689373 644427387 205754026 970044307 132906445 264525119 338996592 854174644 181149412 337085323 24568472 923158061 837570923 652848806 144152112 407734872 270275762 703093326 428522557 258715435 971207008 365176725 870952121 197409806 754822274 71601694 776465224 181759136 212253139 544113711 238774133 704374893 36276282 470877504 621991974 292494958 353414555 242747412 719560882 953916231 734451307 285441056 366290038 140186570 906201870 272935078 274436854 465871927 431369636 288647621 974008070 458801464 795991290 975494654 884976921 42961598 114778980 652440956 761384542 201064918 389050237 779434581 419387646 239451905 242821978 56811389 478474027 567464055 317795332 357190680 593906807 700524858 762818911 9343420 252523646 453344715 384786849 572870164 724170642 945231071 31569632 363550831 806555607 268311490 337534517 917722385 713165604 949758699 46325185 733320811 398462064 69318979 656421523 392469686 26223971 561210146 102091220 665031201 926846323 9290004 361636780 420393476 145578107 822978591 335501575 886924682 731845459 357185257 758152900 452280913 256652846 440961963 651168103 123998165 244176619 5938651 883123851 188528759 674441110 64891651 606903750 215154007 648728173 43363538 779734762 492980032 184544556 851269378 629504989 305102595 573897770 412084149 119732436 296016297 271903804 627156325 32274882 55853395 716238093 458516401 494457825 576119644 92480506 730515499 869698580 632088101 426988222 95466052 202086629 154531350 395268688 984633374 851021623 990467947 112768651 240474366 261519423 121195902 657033543 619191311 705292579 358801611 793007946 918483288 218216789 57490961 656647949 176919412 415539277 500129055 65313189 551709132 430160493 437506492 70620783 879697779 491152976 939502447 15177513 619353623 951727863 829036092 273925093 451857103 637293915 952422379 304504063 848552295 183164304 968883317 189929837 582705308 708400617 756787549 378447818 453430681 72175676 776997899 580810892 551759145 660835253 344766313 257178595 897870324 565480571 989875381 804248178 639266330 108689789 572903788 788520063 620031292 191121231 270798088 563037468 901934231 113067107 326687776 71970825 499482691 781271789 484485913 310876247 126787894 34108630 18987260 339726137 260237638 611999328 889364512 72883071 788111963 538053239 627364027 99904408 810778124 844278120 85381353 472765748 898305251 377965729 334158040 21856062 352169612 816128985 608848495 250809821 223399998 157901416 211914894 571084473 429599239 701593338 47463930 488811728 82850404 371521831 863906568 110178603 610849085 307657458 875120660 403128861 458903816 83225432 685537108 941331066 298738915 220807067 88686767 172076753 173862934 187361563 351915382 165187785 494148832 181999381 363753522 938746625 550476224 585396013 635226021 72772003 837877145 339896989 683957022 269938103 300714888 923171263 481322154 473121269 844026492 154572405 86991250 36768586 512576814 146806645 738147359 222137017 278624206 201187809 856420703 372537882 505656458 821304897 207640747 293141769 674901476 764065709 618636542 713414035 523885172 361633672 851391509 964443550 178314504 628306106 466440427 144771963 489080294 70152101 184791812 728269459 890001356 646190537 742482893 879211461 968311266 412345065 359793903 809772922 797317918 385201027 141337709 587547738 983561017 753029214 260870468 326147266 881767876 666938156 459577827 116321215 663524158 189396828 576103645 851557696 4733590 186856452 732308761 102012322 515846441 939599914 751477563 54024449 225545336 886879008 163076489 578588283 883890201 923425883 381142211 989241659 193069640 353262450 2905016 650041589 173745540 106465656 285879777 557932805 633131016 232710169 792369253 539540480 64094373 715276875 124661280 525165449 206901606 393883793 502658193 858857052 799885656 41206399 45551644 123405445 512491210 852290557 468066583 43624271 758207094 763597897 18604144 557178522 12110393 703724658 305080204 56963358 886373737 556033885 164252249 322592167 349432453 261575759 566807084 853753424 485364672 622198638 509711350 435398547 263702706 850043204 203082286 115662645 549540128 486315804 297239125 336018549 980422845 609473950 57182970 536139347 35079076 87538993 953033131 205731486 559713245 406766490 119548160 162838475 733557427 306022432 490606189 887819922 33741390 576199907 509748878 283976736 807522874 868926819 77072647 968836629 985791476 818607466 608333058 835524597 870749799 309617205 426771911 899343085 314913485 66078098 903288661 183658100 607354607 553850058 808172063 24156670 718975123 271772841 528870639 142552690 89509624 275153184 586948703 87516346 556209485 815070132 394635025 676526539 509600360 647973051 245021277 959778648 802634028 909323481 557909085 76246542 313061772 124603982 540076447 449469155 114340741 673068298 49731499 626716573 569151082 342724904 402123889 44765582 25449012 607061044 203707651 176897922 317739924 304251130 140226396 570923693 106723695 669547592 435893691 351675789 683303047 632156479 798290367 676632872 587505700 889977435 178457917 561004937 306158976 928209440 350941698 121641050 528313808 169094821 377564450 218763025 986758997 549939194 956187043 263380656 596542996 464619689 905234828 132022682 759240103 277110586 299180575 671189077 854711567 728330497 983028059 257455653 211094193 951051078 660901021 314879114 238018557 172271754 900930973 414560619 832934180 632178709 336532582 52645945 153522550 719884012 103608962 528103014 9789751 983497870 49853534 546747217 290707892 910282739 308792472 594508714 977083580 976880053 616556934 119172831 571545689 84887380 737973370 467415120 791866612 932053505 601028800 600238089 219689929 169660890 982774352 829850761 21478595 285606973 665785565 242520168 237839036 810833051 356029897 740290900 808144250 423851464 32236049 96828870 304018654 453220131 297090050 439881835 781656430 72582741 178815970 798057228 522808780 628677713 564951259 20997905 945622233 776729059 410037644 284374864 720432495 739104583 387723285 368980777 11575358 36978782 506625408 331915335 174917946 267488629 971053245 975957107 703300174 728083241 162255745 959627562 295862867 751150446 909874348 842826114 827109366 16223093 434462333 61908650 746975916 569735615 389760092 423904236 973466493 482696320 68879654 808324687 177192319 538297808 364397072 210521291 632027456 648983860 861269836 855025957 187954405 953145354 344860088 39943667 286155972 779254048 769348966 207799955 759175985 608309845 965574104 975318693 962033077 955773284 714198077 607384568 711102039 872923831 41066412 904986608 882266076 342824586 946702511 800590407 338009720 146041940 819606081 706550938 256800000 156086119 750105251 60970228 86875572 27936126 737523954 424333161 596244121 697837060 879775150 144099497 785891275 833077234 997297861 879258656 782143425 146987020 717592790 481656062 580996708 732155196 347096097 38946393 720791347 597458704 93230120 502769216 395642769 867119928 384264950 570623010 363598619 642675453 189190795 423033573 718038966 198494486 508308928 541323989 289116819 579358430 142545328 867526191 791484859 91130056 616951868 80130611 240032849 860524110 635431174 209684171 510730730 410956330 573156803 584765859 925805183 300966093 101041918 420533844 925291359 627040782 252455301 845265753 665752420 543634126 55772702 812069869 412510488 496559280 419777021 604634846 808725792 292053177 517596198 855876200 971330704 80351586 729202914 958900386 311196120 735743811 862650318 846702208 811637465 736103877 885631837 535161061 702106832 39000255 280122948 212901610 359486613 423723699 598871042 274758835 884295543 704226674 924709426 987026844 891816476 63297857 522099027 33623167 797496629 252699034 405296383 706591533 502964545 558171035 303963912 400867082 106102123 203525458 851877942 25677222 937588292 184908215 308855731 651694919 443396851 545879148 752867745 74396438 237956815 131531377 696301904 585753213 756026368 73684776 856556487 389870775 488648942 935284405 229604912 241815450 211827019 236214407 190493080 56831647 65287374 124056330 708589887 62479667 177130410 248678723 680605983 364575486 528076054 264562842 682550369 219461377 433008717 458233330 768138963 906424815 949514840 847717615 28923672 452049478 502893265 800399554 391986429 985853703 928971748 894670556 993021887 676986973 786739634 216007961 233951011 474428801 759865626 219258258 67472090 230458619 662636370 381234236 430402461 377849337 655159464 23016015 429631612 179809331 843266055 852833059 236190336 567376865 437460039 542632941 343409909 147265069 429715882 300635739 802878582 514449589 448101205 116342716 62862224 832554089 280833740 352386314 75291921 908198081 317715198 447037318 456783419 204016806 457674701 743567046 640833191 119618895 690217677 131416447 442919540 960997007 363614671 908640350 159018194 817216059 349907876 653231653 70654971 206637438 673285763 574003150 554080794 724927039 139679188 288059751 480292875 228501199 669898399 242698437 461549038 104875883 612471609 240381012 633637969 231846864 947035634 61134671 992865568 293205115 858117120 30713564 754651365 697072902 649592672 778652372 461202009 390614202 708370793 669804116 883311927 194915887 542317690 219953591 629043026 857494986 342029002 588576443 217511616 188602548 9158910 283822309 531724955 922420538 716018439 977054647 757710153 781098040 477815595 602880592 591576442 371511366 939643360 589626834 316679827 24250400 718554305 737799221 130685441 765147031 61060682 56526758 601779352 63769756 600530780 258562101 730406781 878309384 58045669 968579085 944550169 137758870 555326877 455349387 272718828 766671436 738186241 825964169 258165047 37119886 39547789 771468061 710237645 158521749 794537391 543099853 526973940 386887287 909781972 265915221 171242138 662145963 689245636 98450187 529699122 39530260 414826503 792814342 8709626 520919993 695853222 33394999 90255854 751532329 718646903 812739010 923896596 736651612 333965725 262982357 435272081 473516947 799974206 780695479 455546010 513800853 411667675 975060581 498884947 102755070 893391147 514946430 483205415 308523394 257317469 919550256 767803187 317622874 326329789 979314768 777505917 859630003 155102547 131663984 126543032 644325516 985631415 25821290 379537264 830350470 236182266 524868974 48028848 136049311 707924831 979060001 751845380 969944423 479061433 249007711 855597680 317202020 872568643 885279302 402310074 642647115 511257100 135350017 322788705 601977980 533523519 221185706 131871926 999494144 297701662 184293294 697645347 81021842 403438122 887024532 511404693 809935854 530583591 58436385 912141362 713180564 603994993 342419029 508175232 253176750 560995999 589900424 783711347 511005094 52754703 108282148 617671663 691099763 521557612 976902578 695684127 785859794 113244502 254466018 248430775 604955853 476665663 632600002 885303551 104233508 266255316 835934910 9148312 12745854 898701289 584454843 281480037 954400959 934633994 755488315 575344146 940791824 355317551 208307393 885425147 444257375 575437161 467148203 161493585 50417467 272846445 300438356 648023612 870977915 530778080 261040493 118224980 161472380 450279881 625882084 51092682 96729047 705012220 195691736 863147219 891716252 984358046 557273000 293420055 817539048 179038878 78989178 905487431 142649703 548025589 729014264 436781598 140625454 255769789 101711714 511019869 209581568 909146211 658990277 474653229 243079961 349617984 746993151 364017764 375769432 267361859 745496421 778622753 953328096 494940317 185563024 637701006 937225689 712888177 921243223 634428757 153002526 61503835 973694185 23814718 784894904 269635930 444851429 51026012 725169623 75551122 600775464 301065510 125099806 648417862 470596108 313611399 157266208 540078641 950777107 603203775 147908149 587381447 881265885 915524356 724936660 383623562 824477391 386057830 969214070 375962063 350069942 260632472 371823331 503461744 498682676 923226399 251220463 137370822 372382933 568900022 431488585 910574486 309311389 961532068 68984467 76435176 568125952 981133395 461700191 136698279 51783236 498728894 210975307 517285221 354678259 194052524 963297833 676687105 247058105 937805189 79061611 316197943 919843633 967750559 645574548 138368319 400806623 159401722 703809142 913836947 368040902 122958568 398804285 127424500 163813769 563131772 800569522 717599870 104103953 122452566 411943578 287967733 594766364 314020027 895964306 29297556 944788794 689536763 322477521 670449979 267773668 762065147 456442435 607235391 285618929 121574709 152887692 447574982 429462357 260573340 786958549 580768520 911037258 436144450 324679443 348408272 997520044 914219140 806629205 239047222 157056584 306817916 816928532 822189388 761178413 915650795 427275907 137155686 859332255 31651110 547759094 7779446 179436189 332430516 417026206 573798889 700982481 389320311 979205811 953390650 641070689 669606971 241921541 809268280 900840868 51793811 400788838 177709257 836842647 876200221 433194021 686031121 676054732 562156488 806212015 506962759 447868191 323802069 111976942 346668763 920612473 385263825 493915427 245835547 892436760 744551500 153072285 10549220 277663882 427354253 348976976 185542076 792852523 895396506 77133107 263533941 154989548 200166822 524926813 653180796 829454286 383187213 963266960 916590554 26941958 934950070 320903308 822117578 665896501 411070873 176342919 724901695 748712709 91860740 830540167 791700974 18854259 158944469 769546135 692782481 530291664 18404772 311771546 763186602 4756376 284409162 964481002 644093754 312756299 376232046 728746450 600050331 813485329 177430084 898347527 329133188 376029352 722630334 122500442 144819139 689235986 92399441 98080515 507516087 458162122 344737248 857052811 784155028 454680590 852619546 792119236 635266388 153040119 125215712 435260061 901330075 908963174 446968716 54463930 114081077 697506960 430701613 629586126 252100293 537516075 790654625 723856408 97896879 827311830 850771493 695898878 145908792 915353414 522593451 251831065 615918038 863628870 203558112 923595313 789493093 529589630 230760808 607730173 230548015 715397827 364653600 69913231 528367718 145122773 140786841 706136817 967141817 552864031 604592155 840474721 299112395 627551785 504290119 622831837 897855765 896345518 829012824 976539739 226402032 84677222 977927402 462598281 666062355 304995605 309978583 528280843 754693664 984509218 694272363 842688500 368462942 960196284 485736148 493916119 87710500 878577086 566401007 343437532 118254276 534092909 271059249 918092527 525260441 76282286 236173204 73915900 235010838 579562979 479437311 914707861 995414412 935902630 920410363 312778320 571566173 779416486 878571510 460518679 193724472 555946108 624697723 359527607 831773261 812302608 230192623 209544360 838076045 920075984 67436385 102174209 39125239 849846199 156709631 345048029 375505179 605528460 108712580 290746667 193125571 217023048 409686508 698928576 630238599 872405791 12714217 402030931 128893069 118859672 479223770 792363835 485592923 329908522 829597724 98068026 177460640 389836326 812963465 293744715 728400263 977665164 523988856 336776756 52368302 117108054 884867331 513367896 416010615 992391219 441543668 545813188 355714720 966781920 201537634 662638202 347175243 85206543 636257221 453608085 443797866 246610035 540499939 514434871 97834799 53454695 36356081 15719917 313178338 473151537 865169755 775181378 450857656 693930766 848466484 18043522 627721730 518296787 225183477 933092923 996580406 498911555 887480710 973924978 488284889 361606155 110018210 3770728 95901901 452301523 655498280 52111849 449054973 325005686 539230850 908083255 142473685 392305122 381462917 753490407 415070198 466301129 533451717 198977411 491174446 490572937 498262615 542369804 96324304 372906919 326916846 883866257 482208518 51565168 332394220 429067764 948518840 228321700 584360573 563007407 103587396 181073339 134035484 502825916 669360959 121897141 736782804 887482642 675908175 694934112 831152713 536015160 56307708 921982299 120812185 739008392 469088359 958358180 220116241 13509276 549252665 272140313 908466746 345511160 879187761 768353271 773434168 390014002 461964114 779059132 907370160 746639404 937741344 707205780 265414730 358357411 936602286 291545651 772235085 839510183 296412135 958277557 481490976 165966162 77735993 780508682 658009500 57274098 331068251 660021600 354641630 382324337 76428208 344810145 317738992 480094248 858296108 346282068 378961721 123430384 619211288 733745148 920197488 396676157 314037027 22121325 326250109 847186790 916663938 733903288 271953716 757202031 323471429 407730860 825319274 397134129 639265750 350485763 595227645 604389285 665871643 605900306 62791144 975344852 170441286 608671965 783047447 642907520 92140372 545084240 919168173 485713521 235611778 886018447 780594602 990356987 330356408 979630070 445664409 439312386 503826516 761163621 797738066 38127688 71393358 255242430 566323209 83296274 715926835 335894349 544545290 760283135 13047736 302263360 209473232 453694351 197528502 947650395 727636489 501936761 977477350 193136220 779970745 209934891 500816743 325657958 932426654 632445311 149382701 673536149 426184333 396745552 707372775 23717424 486913432 792582689 682917242 367268003 348661415 280323408 391555898 908702356 583949684 978030678 828364599 860093127 463562846 565102696 914149106 673834877 970127753 582754442 180791437 570984813 792626674 731303043 450893858 476174978 370559732 169210965 896621442 377374801 300776516 801404038 655764411 11865663 807240560 873438327 143472586 850205037 623895890 510368814 417085852 893880521 172454799 241412037 358166663 126288902 964285341 745489329 879022126 44276091 428836579 881656189 196029158 796889086 276886947 503392843 142107333 930804858 408816327 933889341 774892690 208329695 249951105 739864404 52060855 740633186 714816099 192281957 148055584 422584344 294336624 632078208 245493661 291744837 847632027 386311620 890202641 789804715 90696615 510867056 3621878 930687701 686520414 403483703 906878007 879474192 713781417 126211208 762421132 367215883 95141257 553155989 79180476 792826489 257154087 594641932 90352106 124698749 954071729 654989652 264171756 270595467 169341653 777170958 114306886 110175802 608678640 253559227 716543844 353052823 747455230 93531191 319019675 76590538 290449854 371021313 534292781 876014901 654771698 63275915 964906927 542784973 111665251 438702035 254152936 962290880 609214741 364559224 246848511 640479202 686485209 406818412 573598282 560533599 442199791 320059217 845125329 254022374 506980529 53838227 681281715 587022879 250046119 226397040 477732014 201633448 640495505 680836726 109791508 872823749 771604375 435698985 318133051 803888629 276241732 872608764 326424848 639741532 848969019 637717942 396368057 609641061 753165632 720994363 385258516 265953222 424864156 459601736 419165277 53155595 189077118 889719750 147018886 524208743 452043796 774491967 614076085 201985881 363124518 309411535 525943548 82268779 547434612 968563102 623923545 12811152 981938023 669522691 269538034 649101169 636677850 109381755 703888628 878968290 428521222 933174381 470124660 644270660 769954027 449345530 863798229 707342157 898318752 267953900 786436445 710137848 490576515 175515685 448558545 77673873 348648053 40114520 743622901 317639411 272578452 417622851 841303842 851531510 735134203 618583375 99757315 354483159 547306401 685283767 513102073 617480070 119363523 676103523 901794253 442458105 486568947 998736486 318246685 242106437 188585816 327029952 316326655 926383444 808619565 808689035 107582068 362789342 780552871 468188656 430444780 355839598 4500230 476104236 223121023 29346006 956419890 668627526 182392605 935943686 691835680 640288150 595023859 436201016 92671267 196646808 163550152 978031118 806912379 931317239 817153048 341891489 645293591 983678831 338177149 677021887 841897857 418745409 969927010 408316049 738896934 879995182 163497899 84223275 312785889 517529903 794937960 990223600 662115516 734117417 964974397 492747851 368991096 650910703 28185830 305770514 892830612 234202537 649320247 372706504 651225243 815756822 403676199 400299812 232471654 159844082 34133097 484235939 823308478 354429002 432044240 739189253 719786856 44411165 629381493 133467017 25075786 654223719 881500979 470563517 49101313 444981350 197217307 443321659 215847558 497184014 121957683 903211631 563997086 809796567 811971005 552463884 840938916 623035438 671071989 507247122 320895853 751268523 864966486 588938762 609618393 247626957 899591290 166377803 472332147 401941823 336073024 580745013 469344423 540875982 772014113 571093022 792504188 666088063 441001501 758039726 495266769 500090181 667245048 732412223 408565885 301834387 956174427 541121308 560287734 568458624 391005948 680792945 273529964 982362136 258824651 797455990 762131234 760347982 512474199 815663066 924690724 861316009 502667789 425204918 590956755 270006021 564400557 570992564 536345811 840627597 132829809 950286421 872044565 88938635 341359963 595149188 545783281 264194490 870926690 52507988 22349114 774007421 619969812 853453043 207834181 344704367 909698407 77660678 75029324 692240659 858762578 564363695 844030922 924468778 880912066 45862198 892945744 481519513 249430568 945527788 437610644 22864821 325163928 448498828 762053010 540708022 879578707 47778027 403330888 786914864 294305617 311135190 646319367 883956672 126902823 586080210 77071641 485594941 422255776 198042772 536409150 155709990 503702707 746238699 110190674 441891032 83362934 711913419 412422923 107376950 962483040 286081219 378547815 941637404 425409467 778241239 758721375 546128276 332944312 93949416 216243035 21394327 965360211 820969947 234847018 98919106 148430186 957441931 399864289 523913959 969257881 793703843 335489051 699192085 709308813 891370933 199525038 787487522 899854238 937549073 436617496 931263742 674180012 216949475 303291699 826179841 600883078 302900745 520709113 130426789 247246726 764591440 987228395 394550327 171345557 205881086 302818043 481752856 29288200 114572735 874109101 274269189 138138199 450176380 112542743 847869351 482017955 293883862 791525714 301771873 358744978 402115530 955403843 564171283 58677563 482043871 382323728 173555477 77769825 84791414 97373641 638166154 693276712 426051912 842881382 449603732 946688030 351989009 273543974 402553221 828816108 51172775 1590171 889524504 508559113 373418720 15390934 193388538 444190864 998877221 638104132 262292946 437511201 814005487 535992605 921386510 906710287 914057839 430783648 914088036 390402365 816017139 399170239 622441705 121097506 603589005 231021385 814627104 308052391 811372512 306301148 264499539 255814862 443325082 539639307 763071245 354470953 754568605 1064807 535715263 791771845 479278803 662938205 306901161 629299755 644603266 403383394 276079693 495951400 624350837 277128226 74688082 430068716 336977412 763872292 963338012 463751804 569412549 308586878 981268927 601409440 271495166 370891543 83324005 823015630 693011403 668205800 8368958 712166977 916862615 874395654 980785441 66514464 216207485 615926868 599493780 481784425 116409864 259129666 767708861 945981788 253736501 568466992 789444458 298461374 707918031 147115031 577674638 291898430 747262932 746104954 994594305 493161757 124917896 506413115 23191506 741649576 642371118 838137805 353739624 56359321 853687151 501293635 304857303 472882460 382114273 299635026 565926780 709521527 268095716 17317874 788753572 200138486 73884523 986307242 44272454 694607738 728936810 997105214 332999912 277652606 812837445 95280406 363287869 85825473 86918519 819010240 357882078 389250252 485457875 484104586 637376603 737665454 655694443 998092410 543381601 969208536 106360954 356770438 641351923 888314202 331604912 66060278 771777655 482362670 682470296 946784304 233328961 929036531 471585113 703384519 858402931 810434605 976252249 496339806 808732563 475294541 782548339 255953083 203481806 241168330 973367234 431372748 728123734 609086924 805664565 641396208 326108229 125037509 911132211 224827359 934290228 459329866 218272745 769229313 933274895 815901950 958166762 138420795 442250059 33482841 698273939 689155250 274373553 492502457 127137612 923861482 539339450 696820458 365277445 578585647 645381406 762464244 553351762 873522029 793820549 910880636 266487748 367105904 353972560 987334011 902673821 221985197 17592228 211251550 890822807 576956469 812243027 214417236 57663355 455972176 800727462 788366628 581734942 142368419 886834957 603285130 602470345 413744125 379053391 142879129 717373234 865342294 211025612 637770803 837162769 227464750 598961619 935040449 521026847 228872074 864956889 64267277 923819172 152763457 585910288 222610474 228920638 27187611 288964468 280647486 230118205 466122251 520559339 200197771 27908207 904998898 452522062 622676918 904453345 829671474 112849061 352373472 12785428 257421851 161301524 713622707 590468278 836353999 43863449 885763235 395110657 8708134 618984439 987534040 182286300 130641995 315870189 413826361 729665675 50506586 952579352 70727929 804119956 537544291 808941471 535615238 887198756 2405343 856463391 907428918 388114509 165494659 465133557 164688113 275212304 723126838 757124793 147370329 272099708 446635193 1996246 576871115 102161733 402217171 440073971 754085095 627906985 858126050 118408080 763846235 309805932 962096917 26302382 14810866 4999173 19190599 364794550 587501694 899834447 278274191 955842383 242045827 974095026 302471069 6826774 977221555 878733662 997832548 937688592 518443312 56986727 652652406 803704501 323971067 379468204 517683603 308696787 541354684 704625923 882535287 877005050 218996685 960091436 681338527 330855975 929722182 395320363 196500481 695632296 249810080 994102538 975689577 949530859 428216238 418978095 952139079 818726620 553120076 888067659 672440200 686795182 673623151 331782564 141300745 164168236 340664633 21920224 233259276 197380549 433450171 865715900 463544347 85796470 714612224 223015805 147743327 948451336 364454733 517451581 154300648 335532457 686972887 158087143 707746729 644991339 483866680 52122845 38615472 177194571 835236292 919641362 481433279 799649014 207697522 830118842 140882430 448707724 401169878 23014561 225728699 633534335 421147182 476847600 612894323 127093906 160901517 690929154 281419506 371669489 422376243 304828050 252992737 519355926 224698277 317194285 404447440 612588443 197460318 634233502 518259407 733438141 634757842 403957361 879408778 809507019 607375459 25069891 316567589 95979992 539869449 636613491 937614158 814946331 799845705 659842402 201518300 966480156 480584678 399799258 722030696 529074810 470299051 986785071 215128624 10544939 236712987 116326288 22612335 486017594 908885592 831970346 648562052 842871998 155987799 564366910 369699175 850645029 197165996 792443805 856673159 26320048 451217857 729327250 917354399 719506947 793725763 865045940 338851991 615561808 807608583 805119040 491577284 430927516 842907520 977733859 228549462 587310187 127899049 467506727 504526383 428190829 550235172 244554976 989741693 530344997 699496835 763748796 516446883 539615741 620974245 977734864 977934749 440756211 117705164 882626558 261677770 304381361 283187239 709761849 211392913 862649167 123996612 259664177 427815252 648782308 520303583 875774432 677078300 689084496 283656163 11514846 492888698 651082186 287402945 905718172 163808395 269231595 977356042 471313553 308009182 763566474 609301364 620471967 594336384 899192850 101476790 368758651 196080220 901538985 766347951 349012535 473430760 542138391 203117437 559068 255513752 287522662 646004047 801373761 704697824 231191474 133853034 156376861 127395718 122975861 583202905 611660738 263080815 377871133 154399682 24522199 202638586 487647016 269790165 75906013 513137352 363358803 355731725 327160769 534852992 669505556 127165970 505486535 659043878 48700976 747394473 861775870 9937546 718761516 560536887 456698956 83607585 162600462 281029728 572693804 110154646 791835999 842307698 339128702 247955036 759083259 249401346 345456719 8360285 741152555 749709531 675080172 369980808 58598006 893065486 793352817 346189396 671508720 840313546 819318407 992376735 195109585 311049851 409311555 135032477 462706097 441053735 302602483 548202246 291082960 496807214 351304051 13181542 204679426 434325372 569317693 597295338 181847296 257090317 625466878 931975551 535097964 837573885 691524420 71791060 376331440 162263859 712345865 104332756 808231087 959688142 826641965 72799226 376877270 682177339 904866211 179850507 380021093 749830578 754074980 33668654 834735951 633814212 396288014 899492336 319517473 360256988 975672326 504044473 991286904 118742513 371924345 884441063 867027261 561019438 662541301 616057010 877952483 173469322 765373082 269372181 922868859 219662692 303820625 453579073 905101870 734934510 966888950 496740969 139167141 260509789 915122725 42074731 710152977 783439522 735526325 614874661 163385112 550793743 924141862 464063232 318133266 88345744 732566014 850640020 940177402 4368308 731853921 365486734 127059301 657838622 916647606 832880860 389485434 216798715 969775574 387241588 791876457 773866621 145145742 489094958 436093945 44010836 608745301 860748418 731024811 314515343 720311103 716110851 342151199 124053940 710500157 996444142 402489419 624961434 768869947 639175038 116072891 420386394 243226919 545364495 456244378 443205957 753635364 128208790 897242206 80618970 605836963 433245762 275374462 720444924 605560731 110897247 617879891 814084263 840923366 426760640 677080631 91536156 916762789 944916406 53478184 935059253 832743553 561713866 253670715 298871516 958255748 744065481 4438091 346084289 207533714 280757660 983064873 78409238 612374678 90471667 496800501 434515878 498867567 867328678 210835215 739862981 914611576 312902993 961032305 155714029 270204832 922002477 887739236 570374607 889123285 641918200 442029307 546227418 734060712 895454158 235949854 102082576 980494166 360843146 971409290 446347036 517791876 429335879 25467636 170117860 35681744 287527692 363054119 575850074 23794526 148230145 158111345 680422595 707929654 313424262 382089959 425524561 42550320 126028074 366454381 210531830 979284788 403611203 624833913 488377488 7485903 400676626 765033898 699464905 858662450 205039208 457394916 98184280 592339025 780618392 708278875 316388807 215926374 245963006 344803989 976749991 485334273 711973579 238126517 927446151 604723085 412465469 475419748 579176503 780683189 452559081 28945245 9238781 34443538 586201972 356675362 387191101 765019755 128482140 360821440 264449521 964150264 540886570 301164689 156824154 990560954 734131771 359546991 356027691 573790202 553680930 925269329 862054737 186142077 824053044 544167544 881560782 949264232 91591745 538828491 636202069 783713147 952285247 200156706 297883289 683333627 205277144 907208505 804208209 244077823 311245589 795899711 411695235 239238179 835001518 508290446 127061442 658699750 974941249 457270450 467827051 143524054 744301126 200663924 44185058 460818056 487714506 312056883 144557318 683711027 983969714 50463945 89760087 716541247 377397880 529816728 697446444 912413632 548167338 937743760 395934704 145589586 538250202 151651699 22382503 404986763 322301121 288112827 269860433 559659918 49058204 832892844 863173805 945641674 911255787 441337331 911285817 646426640 516291880 710672112 107722214 536247085 651108441 778031388 696405925 436621561 162369007 427900399 519404716 449788289 805833053 935970810 10976375 778808765 154299834 365953980 15289277 195585652 316042102 744283399 676890266 980859085 608963457 325444761 972069132 710005882 99685311 746773104 75728945 499134294 241197996 610484164 798928551 835164476 142102737 962331667 793897418 500111643 359800033 774336236 750753806 829158663 33718749 704407570 688673736 619770458 960887661 572387452 559451115 701103264 86114058 585130591 479248685 166477931 199887017 600040345 483868706 894314109 262726384 279039129 419571417 486110102 976290608 993320965 786297069 327397993 441674270 39950212 561585534 428203016 407223385 369379809 593900832 74667341 67442355 110222158 762935920 450748759 592046694 111737282 154658008 252226953 886248034 83110717 84642543 322390067 347524083 451016180 125654525 279286449 870499429 562747457 922773817 616626580 225594251 15170311 707428687 212237935 461127370 666066305 366282990 423365334 341567205 353218322 842029165 573907075 463495265 257383084 269357854 906661176 498427167 264120034 236445967 6570960 703394519 95542413 27292829 195847899 869030196 841381772 600022193 904371071 427690014 530086096 430716998 861471025 230279784 823708825 431409041 778018293 266124150 922132760 976686288 669339447 618110373 392766348 120397204 6041464 387784187 160394853 571014372 117325957 741413056 131696583 419118968 507422119 839978495 547026244 695175382 695086135 784386425 740474401 598987771 618830507 625337487 582817248 243214507 354403815 461833515 186211543 345404040 834306054 298112014 328959330 757983679 195983385 252575157 579806353 903063098 114612284 781398787 158705388 935765916 964665204 540566718 7627434 311894833 750239106 700562775 474491681 151507673 612780741 766030938 91991166 526884092 441982981 790021415 307571342 558312763 19741471 787181601 374711096 682224968 873084381 28983547 326619529 575482143 228202361 221061742 927798508 302382546 380069784 233471491 215178622 308646196 887237552 466175746 398785092 660820291 594500371 582893879 662024066 564304796 672114656 949284351 775643506 359972200 641072747 123267707 593431043 472943299 568609551 611112267 869821102 535121815 622040449 350612312 688048156 749109435 733789792 847879589 14549231 309832711 549329578 683962939 796691886 542071090 320245483 258987034 718550354 735321582 629455184 196350847 297709887 53164893 266505729 235006778 884811454 545370459 386669657 808371890 208218607 212610878 937055891 695782840 157240214 845039960 770377736 868657221 874467049 376987516 482875473 656542305 541659761 837262666 717745838 940595985 424780906 890315612 990085267 165761881 423779721 952636580 772628572 201809435 453994656 907537282 99755608 869517755 6153418 950271342 911742648 27140450 738849080 696892663 207765708 279477473 542465509 837338813 11368248 772827361 745359601 470940560 80447503 545091997 360376923 599770047 398771338 45249598 589589058 828144110 432805358 604604478 93488375 170499878 666513570 405832356 318166958 90815472 342751222 694339640 236807713 394807049 544497063 424036821 846018721 874581784 227995543 389101265 114673580 381144941 441461809 410428178 30833896 541263294 403154699 620564848 980115059 971331771 181416082 184929894 621456598 643780390 474515954 947568738 458563124 267905227 945239637 921133256 822403622 27708562 226422462 326021611 670823679 29199037 676534298 698405011 667691995 183934077 786276931 745519475 12935695 532023682 856442276 849927078 205859529 589279875 757572671 933586281 941278701 130615995 604438062 894221597 599192530 676739735 584649203 701129078 298332836 781287520 51857737 162145997 321885203 815639493 166850237 847315088 778298642 447327132 214887595 641081678 870288849 534821220 207023887 27997642 146265932 15939959 100460133 677527788 726314433 306182334 305672166 948647021 132046507 107090531 238320380 46307083 873572267 245996641 808876767 268858014 142482216 462622048 294385349 581959921 988343850 827717840 621820312 450300700 801416740 86000002 696509940 347049924 809358561 646986958 304975929 253292670 874139462 534276523 847342629 138252577 42981065 790953220 424388726 37888143 162445139 602996734 30600970 757603496 246150964 17640025 576941892 281312532 57493421 885860223 254096299 734252862 255307949 893399591 971887835 509721346 186491612 562001392 793143122 233219092 566982775 85856364 23283954 663626655 680793356 611369100 243721733 866193115 136716737 447230828 400518694 350194485 451408076 296060596 809961282 515665841 200527185 766638116 727551202 748726878 442460493 139904953 814674771 665764619 572063078 527806975 930500424 978042312 845179597 311234268 217585637 117108719 373935456 760652422 219031155 882209105 738573818 971265219 953065542 885034523 348977625 71272456 822317628 563035707 26731096 886118040 396948312 983653524 380764244 850135106 382809006 706765223 873899544 801348450 670895167 452572292 921732205 7843344 823558375 58540824 170150655 181177302 50083562 363995711 130793791 398689314 24332506 414175903 296826787 648178076 415658243 881711610 694615469 969102215 174749963 688355089 260807654 816001393 858856609 477937433 380236845 835368492 37295298 183363240 861980226 364237247 720929931 110673151 916773032 451517125 150400791 714451895 906851384 773087434 36046544 183129898 278233578 295003832 705529081 45990563 337145252 438025752 542208434 770881013 424168402 85070452 96995569 827634032 593966011 263019230 658954090 516860727 934288643 969693485 244040245 174368570 22773833 843476098 619763135 415291925 601377730 180716612 895451110 24025268 625690680 869940424 310836995 357555629 438816316 771971197 283644314 876796075 933311256 878926434 945210016 398842820 810524006 973323919 316763941 212265781 170668357 821549097 347742059 324151577 683774090 167416455 444353956 493130970 713885160 465004653 112193587 405616273 171485213 166074530 567144048 179579906 207889322 911005938 318771303 130538880 897669276 467960982 652146146 35831466 48321574 11070889 112101946 322141089 427014082 745130721 955067834 539726937 158046206 219671825 788774178 888079533 373592099 271262463 846322302 996337252 751122517 891227084 552854659 389258275 755788658 289529631 811635364 74882273 251580704 723047731 394922576 933576870 389006013 670517418 198448236 351970695 905284219 945234606 345154355 268525807 597130977 653572433 470361164 648824839 659538544 347465748 672839859 284996126 359843337 512237799 147881280 666828714 174896190 741063382 795346504 198192676 531616041 498512408 531045392 458269073 207331576 95310226 4439861 298479916 906676982 287312862 232874023 155463824 819400697 277086509 563230745 845256134 852787302 578513487 487598871 172484743 406823411 651046429 347184233 534970799 985506071 198376517 931283647 736646380 893257394 816207801 135631424 502659342 227294787 708760806 887444204 652555555 713092862 348651584 657229887 932787046 659713250 727538757 372342244 54351384 498423258 479987462 731935358 58869685 839677477 476447688 848802149 738462427 519564356 436856674 804759980 251731719 71393651 472547816 320445959 566797203 644676477 602763707 196431045 460261973 450376990 906705476 553834579 219086497 50541262 440789212 59390530 793633424 572270715 609310809 997926927 578034748 290003550 47927212 172953406 471344922 517354158 320463178 632834469 121507450 955796618 394748787 292551639 651960261 128592458 892891433 660407520 898674906 239659499 713161175 817537839 330147601 403254052 711672401 74784421 76561428 441903730 169974925 10074256 385133730 372059651 576924904 64323320 559937535 996543095 305456335 183439102 959505245 701911597 944968471 792408709 246385694 767260002 817051255 455552205 823567970 639066172 553810595 156909529 677632442 638811333 159663340 41867254 191665496 377518551 263985662 358861391 680917681 462151548 492445310 521753662 989885860 322909856 238504569 520531205 139085015 984334876 109379772 864690510 50231448 277934326 936039564 900903342 497271937 443688855 284619655 344601183 232435559 475833340 5200839 551492639 217347503 858752716 185470120 934211016 860330059 577975034 91433770 168999624 705528671 979923760 290706004 371932598 300607743 326112220 802581798 494789837 277843722 761907908 538053879 444999303 285260730 588502098 981112344 766344761 150173765 420176386 145811105 26977754 868382977 646017253 553643662 171773109 503580953 151951537 508393137 310746186 402567740 453799151 358637694 379575528 689964415 271719874 174093660 481425426 259479068 17415051 373730470 725705668 549390639 247820869 692488235 586438369 709732233 805140577 928549591 211585740 64604290 588904304 320782496 35840470 717297338 259578857 225992078 515944558 849828216 31343775 699901666 752034229 561413531 269797485 890885430 101360264 529478875 763815870 983198398 444078665 625982444 31431970 459159821 915289514 773952 845823572 11726016 492378854 373553623 893265207 970755634 142315582 607472782 30735442 678159045 390101508 561528485 391238362 146032412 773465877 156724870 149983959 889747791 146532885 577553211 221064339 878869303 891665832 750564816 556539230 858474272 828653123 353174175 868986469 795695101 24397920 799481635 753516718 632102091 771842646 812662812 891633166 990762619 188184700 200726690 727134752 200162169 306169764 788463364 301615671 773956804 380599584 745660160 339471612 565331689 508693197 125294222 915921070 625643574 453407710 333642668 194300480 209913323 371515107 165181884 394461312 348895346 657055122 381957090 251366263 927640521 695329493 651376356 246665811 931319213 462032911 492763308 332146993 276376755 308622297 98481884 831537628 611043185 411848606 378489926 134292560 120271804 391528674 718533841 600369593 12449109 114700758 308279467 647415771 653965291 798571577 936430985 345999136 426926138 702683957 753890683 555360877 105354727 972136488 385600512 32698087 581900480 227128129 575692973 864242076 534883600 362338863 193566239 574568803 582073091 54834060 130265498 118687484 436560834 659559136 396651200 172448740 293599720 987774059 350589473 812433064 139303823 689795224 612656565 820484484 429813919 590931834 872412453 991316473 567400641 92352728 839736111 988219944 575159614 114247102 225578169 497008448 135866088 636921375 196186809 598030452 190180383 387455378 892847023 96876467 436984590 8241539 516379526 758279748 867480577 153645758 167594007 978791229 278562775 733260819 91588432 253359653 956849775 796415333 441666821 39294930 229481811 871980903 490154129 479203941 895086311 892001136 120611935 843840427 4956817 714986644 272026607 734102897 851635436 34428242 637335283 697313153 930080095 489857677 134040852 464871133 730538937 251826958 170844505 571732079 695477209 54095420 138073142 971492327 309488388 749147491 704563654 146191215 967825631 944897940 962477257 895751283 152157806 220705180 873667681 891381747 264319965 5357608 282403700 922293953 164398653 885636959 224595119 435061737 786440214 116392622 850107861 145372276 369691483 18873963 108040912 906646934 836311254 753981470 770138498 507611596 405799906 370000761 126114660 722834810 889911574 240294870 187295558 270183793 970750358 744522365 770470182 80350363 326775792 133967838 947967247 259448733 334519757 903670401 758086475 92098865 204080975 785900775 298678273 453603416 191055639 242313985 746235637 250557710 587693817 462199916 871910494 759742012 759659895 847297298 624446967 351098782 651517903 862692590 26075717 25454209 975561968 695806785 802337943 703939081 976867237 735015968 656934785 524823505 4516580 35982412 137812733 56149646 95216377 135944413 460359301 503311802 648476481 983861778 606109752 712421677 758122015 951165680 264173037 716817224 527986781 892591452 84045333 244851220 783331722 138340062 991310629 694557151 394078110 461302485 528573028 415337682 28905703 115979442 682594732 66676277 206103917 651920927 746635873 578325541 740061461 96640673 341937035 17908329 484998555 916210548 61022986 560647509 541146517 233871783 381224832 117390686 920220582 78181260 342388640 27394535 91995615 278336564 979171206 513325860 362383940 308968093 548057225 493211939 378565036 347976511 263502328 737038819 966368077 429804103 883871497 516776900 9269496 534423015 678392451 893390337 666802236 813666277 294739682 996201484 839940091 375251935 737144199 15537804 81590324 147886605 228493134 267972244 681487590 176719402 87078562 2382294 508989544 120213357 215293878 471286427 380930434 399404076 206474196 334120546 637902574 685103215 865578964 344413661 753278338 693837106 614511394 869441452 953795834 974040389 888454220 873879137 405941318 591034883 671808496 429520744 565174552 866615146 879214268 831730788 586790877 11735283 516134909 789684034 102836240 886929920 338586791 181981616 862527430 260187174 45173257 989211143 236117683 146131396 236480418 183806696 827579404 949324602 873627321 623656682 339813201 701178239 476117496 875600479 846585396 304021998 619908139 305708917 950559013 185236590 602850907 309909434 272354146 113305970 496240504 665878042 285896466 901079490 955227275 972588170 747202734 759793380 996341754 233496463 918827555 705568100 36875854 879338757 951515328 569714421 351349725 291082054 990315359 996989708 858077581 286876125 462055006 853611665 130910279 977326646 67854444 436832979 722677232 534745954 584914040 981286333 75719345 999077568 748572795 897262671 921754550 328101595 267590118 856311136 483896560 662170453 494068772 993263045 224362552 365909721 649035129 957630653 705721063 399737029 301733153 335497765 416316133 300003992 666790707 169869345 306087296 487775660 954013180 560390244 813556994 59401000 544641211 360479628 570086692 729948140 744644699 620157854 265495843 158309469 587845103 433311592 419967745 10804027 970865526 431126835 235806718 677265260 12710176 642241142 339659401 674980476 146866264 109022559 702484963 560669066 313092485 106870033 977129499 548571174 795582661 464486883 443685622 7442579 894450690 689253262 719525804 226655324 950747277 151302435 104083518 392150034 617460722 361577896 684485602 823191834 392369645 437662409 893296717 699669307 15874630 578258245 240554113 327036636 320531039 386262603 790225775 953779754 636718016 350446354 200282235 192911530 255623200 517899922 279093409 724188719 805166556 783497331 502880507 985371880 481409119 926645415 692616317 607005102 693022733 41211819 741232762 944563087 908898343 950974035 123889216 178789257 977406861 266784896 931077961 586045116 279916542 262651881 511227175 919491785 27960917 992244077 875168871 856376755 759596730 379625245 583014278 108421699 258046283 528594731 136801985 273880205 171790631 744734210 540381489 965499712 755035211 62636556 398834306 981270782 657556627 367750108 835296556 615786555 822821882 986105891 902855199 85367895 45237028 560352398 453643421 524965197 197179422 684546160 727102230 600873467 293903432 359405844 798697982 123970961 282762144 223844723 185965416 141180316 469101586 987018777 376673213 921611782 185196590 908026492 592075874 999361320 100446841 167250931 346300712 993143415 355043931 617512595 400431645 119940479 117666841 179998852 996628530 436438023 859054653 871333203 457704061 231814293 231874100 570584873 983683915 356806475 870147570 800919263 896289261 158703365 186190885 417311959 297121884 54718770 69469488 533152841 681193128 828716577 555766227 652243210 293065409 137717237 189604771 831766818 925629090 95418474 713668411 236758072 927297678 821193849 989232586 100195874 592072904 386327353 730876621 107703988 397075342 160268786 538725982 23713578 914968953 160714486 17620230 94657404 230449936 287368305 935151035 416896680 131535477 72731607 384308095 595969317 898623128 224326309 871760008 993034563 336607734 414988028 723319779 499826275 882144666 182216403 975623768 662004356 389912391 97695419 529928022 273478045 351239875 434289559 956683866 834697313 149901280 828124927 256756735 569997570 301850815 775442923 441742782 523578503 139964340 646652272 627931080 659801031 601351888 156925731 926542591 439849725 19559650 178407341 404888687 953275659 5993066 266898856 152509931 708325500 157192109 213841964 800410072 732524625 226681712 390584304 158780576 416081450 493041018 453801217 50903442 658653789 883204718 428904913 732961951 885473563 812771437 670019758 731600948 497653418 85305280 415397131 936928233 748459484 276388707 40498372 407550883 727505241 711515652 341590429 650467177 95408691 774602225 597846265 449902530 729120911 610008828 206071232 93446303 327524599 856364273 445187230 379067552 566732838 634949197 420845609 377888623 405239606 682357870 889835017 457779915 768500925 635101226 786031356 639250720 378345681 253825315 774992307 806014482 62766680 544487205 765128401 827236170 313277509 886809889 424280951 752859476 561909775 55016140 670280996 691464908 202833532 625370631 527994027 565635603 927718878 170890465 824758625 115099652 652403308 109344966 351492335 195373779 234675468 786318283 627926458 278477712 3155716 874351658 259888725 101097111 113034608 787705038 696841774 104267566 515634839 899553393 239757876 71943076 154296338 864754287 845932869 461207200 283468447 882483375 834486996 758573950 451745144 544706051 645774407 481100085 56478981 735309653 629748409 807217891 700394278 373119347 214879877 625453862 617398802 353391710 375513145 406426365 962145892 688648985 573294160 380799200 80604122 77869706 619991574 862735096 498443798 455998866 887022647 246765796 143561629 894585545 106704583 193303551 831219104 169605705 194306955 270700300 746709972 997842114 769634038 898332659 396169251 906068133 276715769 573774316 398174777 773822514 413627800 900380759 844658690 234965042 848663836 19499334 461884700 25645843 594356921 938883486 732842053 240955055 674057815 3597436 188865482 921888231 880910131 889504839 545128160 475121509 781311582 600864478 837534399 365041757 356863107 914597873 557310921 975421008 760353342 31644134 2758119 986403841 722575327 746635744 466419666 857313375 383338741 289499850 430014261 91958745 612689558 236902158 106877449 855157186 726722261 468769645 423239626 760383991 200723542 344317050 339150583 920452180 405575456 413751742 744709581 532523746 521705059 374433884 901574899 799741818 872676888 53018170 472722519 868501228 697764399 607560564 162065705 867793117 352397363 313018936 610274571 866992368 400633124 804848990 161763589 126678461 865036484 810646245 75823706 147697788 16437598 394876157 233088749 829146179 717677006 989274293 626435991 81235180 190909181 614553749 125111156 779192123 937366663 920009522 829390592 148886711 379618983 339079863 8160152 253966165 141508944 389145093 514849809 634638807 99192657 653282673 931184438 351825196 809558201 167300825 575827487 952378857 556514230 795769565 166312186 812477304 785785828 751776396 524355670 577385553 519814458 795940787 149619122 485105374 282932237 807956852 939175586 285451477 940763806 217612336 416432916 166986870 973465531 101963285 94772988 634433417 368020131 331172378 150165217 786987435 88709239 514319639 595533067 77896270 531832872 511643836 185942022 868817994 103139073 241050830 898070182 120838561 967427255 348318902 229545231 925282222 460400671 299882727 545984425 683139689 290480611 382543721 414807981 144277285 636705860 257300394 959711630 675891303 624506929 719007622 805721038 423707360 10563067 906402627 930947788 282925497 933141905 500760558 107743737 445445244 724837318 767731573 972482925 256827911 394898280 365120896 476560968 60690464 128392108 765211253 214628744 323015100 269126593 253550939 545893764 561419881 881379205 114586094 159934036 436287689 103244266 554749650 152532309 20409134 565568180 527743751 867647145 687623902 895069423 556479922 25268017 310906400 644877670 638707481 964369504 356693943 744317011 322720270 557048360 37322302 8996745 287750210 525237967 501185627 828872535 225802423 44458247 384063281 801707613 785186769 879828003 810618365 588384228 59091307 19575637 887444351 957632265 514878638 543165253 869235188 621907858 308234107 214789305 424465953 601942405 563642703 747876586 350489155 971265203 908804045 22868231 69016100 143097988 558618187 270051429 615678672 48095985 729626791 607898149 352805070 431080449 613019525 515156584 997823537 907165985 763705084 704621383 811622212 953690667 848237124 492289376 303897023 396446496 999284874 701181006 640358547 567921121 901899903 506850487 614415688 399514572 203206592 504583995 736794968 974264656 649175780 557564918 670712278 489234577 171423866 299118782 730458923 308713781 345157521 432774148 957259651 829843872 972996849 122241417 764780829 979416624 737194015 281812489 763895552 110497952 299131767 668263615 919365553 715578534 921685968 462338258 47041849 722221503 59275541 486108934 973323028 521091217 613578244 861781518 572582305 249962752 24905254 166967521 436054125 629687036 461485814 433423648 955196783 66339408 181640025 710067786 250869770 267021446 251949116 692266133 20771528 409436024 779067185 280392579 592422619 791217475 691831356 2208113 234564041 761101177 848615386 277379877 996904138 694685487 588347342 788829079 308007556 138503724 833806821 139163559 955440718 414991093 461160757 113188777 10187133 560365577 210443149 474715143 593997775 864143310 983690381 497572596 132924428 106138168 183579446 133944946 500921949 511717641 830354496 293962849 958826371 579143640 680719218 354130628 300934803 697047391 421251892 304920503 632103497 991307878 523913798 655170622 816610240 703278397 303487576 83244180 70624532 115840857 445236691 800226217 649283565 231355200 853455156 776430414 30547926 190663371 57058101 514719595 883856499 932010900 527993711 79192583 704431754 601232449 322552590 304281404 626246992 572898789 462829324 558876751 801120884 14085282 574588161 840168226 188647162 287212602 168167098 125906126 262985412 660843525 299995959 98956664 625616034 374651976 284311974 164198130 242719849 254268071 860283122 812813506 212245821 427632867 739586257 181077596 505854240 401783930 668942235 609715292 971660076 102029292 80018129 645237014 656454019 176086971 255286905 71850928 23889776 962034867 310412097 216156354 129020130 426398173 70249327 784204053 807715827 368494824 371495371 675886739 769487598 228147593 30758823 877207550 140240242 734120700 215837360 783987181 766974782 573111078 994571025 778202096 553448287 924034200 279072606 784289942 447051504 650600627 774138885 443585783 264969367 54939938 786856294 671160000 189154322 570960789 230770971 427292493 90563229 771035166 562603697 968044682 799992400 540449422 272989292 561490508 49759931 597378827 871216256 138701134 233719791 72418301 164357452 470923791 764828606 193297337 802672505 5980499 472434649 114428841 228077060 148993592 880863438 586461536 855796905 497554940 241652319 121091369 724963210 411517073 595739816 538405299 688263235 993176849 780301662 36496431 905892661 579680742 179795731 340185205 669766345 963870806 714127179 905041249 967580901 282151348 879622097 236812130 443273595 312260838 32308751 519651249 10858020 994041568 933475852 191273172 540029851 563398980 820917516 474102809 997283937 970164476 863143305 125407100 699237852 880439752 614134468 931604196 130448264 68140573 413009537 103802068 268166394 543098218 785816411 250358425 762020499 807953401 906359019 508228348 416263896 255083917 445722951 665340324 579407627 743026815 54628475 90043506 392260366 58338091 679563919 376526335 472194605 605121013 723776724 290385948 498202368 945805355 754193137 686768697 212441658 182736580 516813146 944762504 299582127 32268582 945744085 924442257 404160197 408850077 769376333 167796096 567823790 736393621 316096755 662972298 243372313 887536972 392377327 298244177 621262073 856847156 804592951 149472615 158018335 111818952 560054671 171735736 660329136 627964011 551910025 633501653 691106895 890219869 268254878 948163629 125697301 399202944 196283295 285072640 548930567 687142329 341018176 301484674 26030597 663118444 743367046 451499024 757755951 237251853 688670839 224431627 319640859 208846614 403334274 242870196 701179826 318303425 419869429 334800251 3324698 395529984 365087930 980661358 999123013 271303174 635172404 583109729 540640611 211544488 699644834 563583679 527692339 263634065 41589648 714998595 929038890 558332697 556621707 763013565 774177917 720067933 251858177 834037700 805835913 470875559 974890871 86398155 561759266 831766539 141463907 407460367 582546947 398101313 337399121 351070566 235197786 555781575 649710381 623062602 322108813 793120743 331543933 268574191 998873276 642271722 783161117 292332700 120345797 584153763 507961684 691292831 454331769 909286113 273703232 984524746 520958795 931101763 212233333 307135900 542562559 89895924 189641826 138000160 761282137 629147273 520136947 275045750 621069232 624692648 371041419 719002719 695015214 674973528 659367556 313359272 199348810 114169359 922287544 784418619 414211670 744138390 516948944 512136260 961703054 126235062 500675894 774082764 360536419 408838616 654599482 373810673 593919234 528734837 757990846 696111851 838567823 989293725 256431249 839910974 176248697 678403401 626218637 327551713 835487328 210115482 178835900 173985632 743335155 471541139 76697145 808442486 840199944 554881681 862890298 130683817 920858195 991793012 283941276 201240857 301504226 770561897 417993503 118844107 71562834 741716670 768715194 250529581 859462411 684425982 886958687 186564830 466438229 711114441 199319369 309677655 322274207 870822471 553134077 42080987 960078901 812357703 94975916 908904567 167617170 282347653 62799570 294622779 574297065 295077061 162044791 838065250 179208142 839444112 972247724 793545501 251604590 668219294 455246556 190857897 131661705 729983469 94212231 645028706 382141647 563552607 305139687 443687295 962308605 926684380 901770456 878770174 373808955 819258508 50673524 471522988 794715833 521817992 296619025 859961504 851910682 709448606 929275319 271177787 724779501 251560489 473915760 225102670 27995712 824435716 585583783 217963403 305274352 89397461 253608764 880405764 378286689 795147765 657052911 672525063 262306134 312420046 737317082 932799910 9647274 358581447 150986992 442747036 279665043 129033424 679137356 620768393 365970709 149503013 788779447 116006263 962170811 173532468 114258292 198940459 347236527 350733661 952327653 243016679 10432126 507527100 456727632 534708179 149642203 195401280 489911443 499702258 987118370 790149109 371626442 167401197 798326404 559796470 206195821 1047351 849563790 633583344 785542118 252265628 887374020 819137905 149981732 333222365 306041972 723260843 32933888 240013918 204090278 24296487 951333195 205887747 812468870 100050409 636856763 61498359 407990200 460039036 318267037 1310572 135918162 848010563 501518301 554617745 541976369 631923812 137462840 901464635 782084140 620340495 285448919 214624843 863986200 740054723 141579031 833172888 521691248 926665522 494615763 644434020 992785721 663402614 692317941 670312665 58684191 407600728 941363715 448412313 734174331 3331614 542944628 592550483 623487394 702022825 298362965 399006967 69396071 503187046 283903419 630775992 900341912 458529598 91326278 28230979 235936945 483997219 743818437 989300052 317716809 159218276 953012868 435911884 897565243 826888876 735206682 218866952 753831100 815395325 412750325 488302390 109346811 929772820 515859517 652970238 373465760 764487231 509917648 195083155 319156931 479462900 854367427 458630309 843462170 227153606 676929149 856573191 720931939 766980832 887009182 6910477 361323268 407847675 923477014 866679095 570105533 620148602 186350517 849292492 889913879 127834114 567456689 797998228 11945274 176954404 327824144 721169885 822537936 686328039 258360551 190996473 290950588 415264153 700044159 1284885 841932074 58330086 359306574 281283324 3906505 892993756 931730646 189134856 41029130 945788932 964960365 718263616 963651890 653312065 687265944 949109280 604155263 385213964 838163980 528212416 794717145 629412527 851323563 249646057 173181871 23442121 284866773 530199917 394977183 246532493 309365543 800580796 636504732 333719592 927089511 205666267 394702846 253736184 120049928 726049271 746701916 810919829 979527496 856677774 914696213 653644111 718453808 828258077 903175170 223093033 581202980 627744420 105416108 763708618 201750663 771200275 519284879 510130604 917662425 998708557 170350238 938088133 283737517 4032706 949680439 969398143 859349950 334484508 769533995 995127562 113473483 325224159 895547877 512429617 597887871 362464446 986828549 508689797 247372959 342348782 170953681 151568556 605352113 82697678 658401598 570810538 619961669 807706369 905310518 299669300 246452120 635287616 286727330 530136091 445974801 825637256 343205051 410995400 525479195 484236466 302057772 706133344 52445371 418949071 154315089 637527614 648184155 830924094 858941231 78098698 475340132 720769696 312602719 993926184 635812728 992090833 588940638 517731515 813388882 635157774 618505842 689399389 520425169 512114912 896523239 571672278 759959035 222153124 59893452 273181159 755481745 30907090 915504878 822489897 179378639 283963741 283242247 572478992 326825175 62879147 788597056 662478815 98984594 357072989 262342821 625812030 751750012 156239844 727160391 511032420 509504507 78385208 578676998 10473844 522452778 470143825 739691530 690902296 258895666 980142907 245243643 821161613 117064763 472630646 785043471 196293312 220810883 457547970 953186321 30423658 916244699 134354914 193052057 395148117 25583609 487024628 886319283 54641597 139516335 932606788 598893162 843322435 856036313 697999848 584737212 676435884 307548719 853397589 535498717 890252475 649244126 204601963 388516621 41471549 136863454 627830765 452460 740033489 997903219 640078358 375967024 54872081 724988862 844015823 531228587 734562510 932564286 382627958 607354483 822568701 102995418 817784895 422595038 860433289 810288480 491236647 426355804 870184934 936199758 31076782 145928727 922887051 546785215 101992080 423115171 79211320 233051938 266699685 722238111 533797979 486424961 250197970 406788262 273792801 852077488 267777390 314340293 857436133 177488574 11008402 748348927 103408407 397453658 90953392 417086477 35356415 425454885 913327140 789462438 856709903 928995869 210943399 957851443 216069024 113887928 531564150 76270511 640833028 703051490 163968962 539923305 255663777 753921868 750981336 808780551 742762008 301476482 686221345 571576130 848637961 229794573 546946591 626492729 357341551 553552054 514289998 716692435 77531451 598143919 125810065 62455316 2974556 229707286 817564818 738085519 909776732 615110404 175839023 164164430 681561386 558231653 183398406 670738380 814388522 908851685 496084451 186822736 754406475 215460818 696730361 620091276 48763677 53459252 640880001 829145036 565931337 810438381 875707700 387255656 343242270 868303149 101587460 156676905 798098033 87497036 842188049 446766491 444029804 667173759 632299215 717290581 126734887 449849932 485092548 981706858 562254039 815304288 287352882 281475134 156833766 163268132 354746710 691468295 318097449 216103371 224676958 399120600 840421466 167175218 614706256 29302212 938265713 527994416 139189346 759975107 969128951 984295471 948649681 281533259 441381549 4040275 997776069 601995066 29662692 721801756 804364271 78207716 539645006 996478636 762521825 372287411 603159902 765019119 234578716 236466836 42935291 107706585 987103218 378425456 41142880 383618479 159824595 413740445 728372293 205757894 609520868 250337390 738778767 845678112 883005841 765493701 501012121 707242286 849657472 515227639 766667402 985569947 669680665 847927866 846566868 324545713 38308322 590818023 671603090 377452376 66753835 599928171 791616190 778423825 579175674 259203589 726684877 284501023 202649704 287834886 552725226 420534269 23002113 351712517 192499335 650973350 767168907 123331239 835354012 682001208 46176153 298620126 378249567 766591243 816144371 755479633 299928039 280283226 911016415 123962191 695747004 914579645 354915527 376438744 503430198 190143582 384569847 75841447 368751811 721865764 311654328 631434992 84701136 594008598 235192647 182058352 789828294 493526357 349220459 187339708 788474526 555200672 857858057 720104052 859133600 905709231 999535403 691116042 449066605 480323077 312464383 747025632 293531757 202288435 593728054 446971291 657464503 371660324 146349352 645197597 171747490 995817780 356319728 53935434 661321823 211802083 120487446 599294244 150560902 470347690 419847998 909477442 457161785 102348660 659105852 196628629 659415304 558547879 793429910 90822073 640459006 542011444 542448001 421593885 64827742 760377881 522552328 273552262 68132784 30626889 696225124 974256104 538861584 826695867 672283211 241280603 711165221 631539762 165285016 889201518 970049640 818271532 708159577 457809762 644832161 718071322 933275179 594009643 298248158 391399615 770645237 381058794 989708642 314723277 449360696 492847526 822457963 902251444 257798521 903118876 338186981 913719418 908054186 408415580 340618474 986014134 303071771 286849111 31138099 128065282 315345843 588923252 948146651 820081813 583890523 224298409 208781055 621481386 748331567 516161990 708824399 829496169 677226745 517911042 462506330 451410658 273270119 280564935 970996280 137525273 613863439 882181480 806658167 994531831 427050928 102867184 465494321 572078561 251223673 935560169 178759394 921473189 631348366 630674153 349399262 311981601 659009371 187575038 124334504 109354126 565236281 205547416 813653769 381052096 787442305 347808167 412687415 276211380 935012059 550153892 323761235 96265636 286787710 868826821 481438339 346558726 121149552 180219329 93820670 604314906 938280916 864652844 575140917 10787054 572718981 277541615 716767044 270580144 199591674 17095191 400397271 392003836 774131942 58939297 179688844 316064816 760446902 536599838 756873013 610025741 323986134 485244688 377665285 814232681 646989052 486703841 62932674 317412885 356731899 73693604 118214885 366494346 734831068 291087778 923130350 488621700 415467136 238562616 361137146 762870258 481247155 238696459 985463538 202160223 970840480 180965672 595151420 382364009 54968162 774964665 17734508 536125916 372251536 140701146 153895824 274285056 742619826 654152380 141979488 945240177 218402538 669962051 870382023 790277944 847880414 350647485 535080749 229230308 198766910 219051513 701337270 845538880 24341143 504565057 419132421 528085400 916963934 590515507 44318954 653567691 418957728 237702965 188878003 748931032 786259734 871989542 306193584 964250840 856121451 398758736 123933096 268846446 203689531 989323897 917215249 321257289 912853640 202187057 492580306 375880011 521507518 950533600 447489066 837434529 915744527 956307806 658119019 116684850 825402872 729591389 576998292 903129285 63211538 753713931 940451181 813225401 597678061 21546789 495110157 2325956 986222329 939134263 249817663 116294753 976051900 634756895 74034590 874682898 351159136 435327057 770810197 500127391 576491308 734059759 329694790 156696375 904001930 519238864 776429126 169905730 254041653 354290023 7331984 927469539 374767669 561583448 949649163 640971484 852775457 335529743 879504867 452540092 88938588 220922995 208042881 340629930 586803386 186306870 261203443 379780630 692882784 491524520 976183436 874720858 352605641 523803004 669606133 324638035 361044650 315938939 491043314 71634999 391252411 936775547 635148613 652192666 339624179 819846292 900922627 189105833 714746805 496908316 321333728 188728441 346004024 251237854 212621325 799150635 730266103 750955670 295503334 638515562 647038859 417894457 698568852 118929296 344717683 898304637 619426438 374845940 54273560 452133884 728326343 339188185 389403498 259598685 706776943 18083510 682980233 832110344 86763772 53375074 297483731 621030057 273054903 165612568 372609376 389995746 228743995 602455879 148575076 936155986 530001932 697992186 982460527 833678440 737872937 960159704 531159078 511472910 864557920 418726119 204496856 72372273 994391134 756591928 391814738 135456476 228251319 670839021 826529244 464650102 33423958 620891014 787010682 783693764 223860560 941244484 910553974 340218118 649472843 318595322 258019171 961611865 84981861 184163458 284956279 547128488 972384307 657988245 239122939 694816760 603020466 36220072 845399285 899226760 962079161 831014481 299334635 781942882 919172543 515733361 66945143 164150092 676370285 185388953 692911801 404496343 290643590 807655036 774822206 419037672 481691528 620513113 943018428 924494677 468259094 972928485 922288602 367692805 675021426 207757627 973953899 555119852 449467998 565010523 917947824 70982931 544150749 265951462 386729769 286912839 182711018 693106597 633079499 444132364 778482134 830668237 888950048 95473584 480514018 106382241 202505713 275219526 934635466 597934130 663488868 902942221 361496429 125455273 408761363 794285025 711243794 425227985 853418725 970401672 196793256 193401318 278884796 750763166 662508965 632202121 127139101 676500486 239475938 592251431 627416418 916785305 698151964 113378583 250223993 768437284 878066202 568938066 666520961 917878545 806208047 765455967 79299326 647582436 524134923 165516709 824110601 489421871 173276232 472912968 224664792 737908824 484153663 548786510 726964983 513088561 23443681 843061124 526746324 501366101 552703281 331226656 249988084 569692329 127828938 223960555 828870798 358672349 776433192 451310717 775555108 344323532 264908236 53234406 361909992 985391847 189712846 688186546 675132131 781542528 287563595 132796091 499341848 34927885 445084241 547650530 651483795 85639392 105973156 898028006 875974491 848310545 641643949 438195588 482301833 868151290 295489309 629893344 31059781 990985443 875165513 650675150 601264087 946352606 212386888 139574972 559087256 573788944 866483178 20092423 98506177 310625615 472491950 356902436 963909922 813930503 603602074 876104833 731586028 36168286 855131608 497060134 58846115 627961527 974534071 872053081 673244613 953894094 934800170 148124152 124803417 512128465 899623764 340304656 241682394 384790311 12062244 707872195 827063436 819255719 116474672 57911544 496973281 245394341 537495438 6960441 557594803 133736922 739580381 426101031 49899920 784582650 269582997 109786782 544951739 906605877 968709533 430151918 382160125 184875382 644126145 65714097 754359137 983578108 991271887 607218167 735640545 486926691 194482045 667801905 513723919 763526644 843671640 555232855 467726158 250306358 546528292 721690240 837807184 423052434 170920779 673573816 520636696 75162767 627290200 680568743 788292587 949616824 400919619 958699439 42748679 673590728 702478566 674875082 489290226 376534743 909181792 85970864 880107855 112481253 870011324 197315679 491183732 712977208 344696796 929542403 756016288 720992497 519837679 155830286 427588757 507569514 203704461 740249203 555060540 864184765 461042150 686491285 715716444 684943247 202009307 111552950 939807135 972515476 271024575 280434011 382088379 642459588 856785248 436742714 141393075 43555196 425704242 491594457 766502230 610347473 97896067 944460058 316651360 150283749 297684527 546184385 994763905 98165487 236124118 302236605 620710628 189618981 333273211 981572130 894742975 367042103 772184067 762611551 875872214 942726239 322976816 362983966 674790893 12333760 204857188 514716126 649815275 423570020 610660685 522050618 434321610 610256568 557225673 90188080 560483957 365915578 8036076 200171868 403032262 366293989 219131707 670785254 552252887 355946545 330695426 297193004 421095953 567985367 73464535 719944215 559678682 288753584 743187392 821507661 287349613 752674501 601270489 948841722 997150742 883514447 22510181 187530528 898667940 659490165 82289900 155066130 843174220 183740602 558977632 959639925 24214269 126357240 160217970 47302961 57378389 789677303 215987443 634277080 210957669 89552159 619679483 177889041 575284498 284159748 251620671 854251827 590021662 518771873 497714109 32127484 170687215 86910961 563288594 895829377 665197975 475623465 328358151 778661675 932309808 948836268 896290749 532326030 588931228 490304755 103202672 633979332 97445269 847747830 859245644 698084838 657177186 465897084 542079185 821723487 958946861 203185880 849762098 854085716 713253765 418204247 983010417 580518568 764813455 601923717 651553893 21625863 517426286 751857904 342116203 926362802 667245044 262304322 752800890 676025824 654425923 821923041 861847121 134159483 65036750 878553578 509069975 115847235 779313518 950454637 510885556 51962269 799290482 245137539 494189703 439783813 452517469 371245018 603056732 413566431 90448541 954384645 305944374 363728040 749446134 703896554 627710899 141435730 314978002 315754733 550130984 473094507 941021202 264342119 293590392 330325425 766274911 907042666 131494804 597450 607979979 417598474 935728304 264115695 400799273 614944334 960242787 861691047 656342407 267179878 436421776 25079599 807759703 890887708 279480854 228175126 513351089 80873470 41732604 464536152 494037706 807378762 281717662 584692261 953459935 553872385 858919027 794018652 835377767 349769986 924727480 820850545 837143417 578720064 580387985 664309798 797655609 80843299 428724997 62974814 177534966 342083648 870716082 440751044 635892672 454398536 954782522 409017321 886279796 15387897 337628785 910256580 747697363 866210384 879658259 320423396 520109830 679383564 911351566 349155737 756336394 240662837 362797781 989004875 643092195 924764085 378610371 524557613 264388935 70460912 855364329 246787973 175840420 25787693 991259782 921202918 333658577 822708522 767617011 553916651 784857882 496898072 905896136 891923259 786234692 861462381 977528472 778934239 741511334 117150136 736613745 746539088 874139684 332610834 798105978 835022514 322956549 10758272 750345264 135732501 876438170 204816886 334076976 853802745 469541881 400678580 135631271 270733035 600549158 7889854 581600765 655188452 597414799 98199143 789623606 922094868 45522957 301960019 691597209 336316009 36982372 407493030 873815741 568446381 932835671 815433081 581455305 424052239 534871471 829551770 423456493 836978286 475421903 978196203 946530911 605291551 460955604 42993699 657650840 106329198 91811116 753686775 74760369 475413573 575842198 448145513 978220468 968790080 574688160 656868307 741507409 902159255 345099670 892045462 465501488 310453025 689323721 462996715 306456244 276054601 160385553 605608271 535299546 150893593 278458 677752171 131583059 672578304 395236417 209962479 799196174 946213075 879844513 529249585 337030216 306420050 15334761 728311855 682407111 453900321 772913730 820879252 53644619 944243385 597574906 418128485 845422430 281846155 392824814 14829343 52136125 717154435 334756963 247186672 146610311 279393626 122412024 322875499 843036306 767685674 97924890 280495662 517739125 400627562 368966398 323277018 410251075 589922115 114443552 559048415 820011240 772206905 643083934 975382241 127397392 848155445 788637840 616615224 486965423 517251980 983811 64307217 160503823 896674585 188127340 602600234 744159667 146155303 543687995 380131140 699917129 493008180 279373567 967693556 967281950 706759839 339197788 555308341 322432226 673271622 754728023 502169136 907759291 929980725 270679595 750990521 168247891 917499995 130506035 707182287 595622030 993735067 373829493 297479016 302298328 796647239 813735630 276569431 118198794 867388213 289992011 529922843 317335656 149989131 500181010 178703710 729725082 136671771 811914102 507737584 757827311 239519801 512938039 157179463 16079728 857999278 371267721 181108134 638870867 77391967 52098351 579015563 637394892 277807111 199479513 657105038 280505905 494259827 301625635 326115800 996293176 94723470 783345591 305593639 995861091 503918803 420193794 958382202 138687919 569859578 503106168 218776162 889032490 119156533 10696659 893906117 448740052 287989484 820148359 185257334 263559214 291365172 162884367 542590607 572544210 686066963 389278023 32540055 825773364 51979654 95070378 828469159 437592235 301149767 562492337 432960628 462354424 975941569 37178961 496522294 822207208 297084079 462775847 63168226 689428785 143633156 703824210 187460023 694449895 814032294 40945306 675414888 516686044 181000710 212620166 350553948 877263681 498247187 297267707 149702881 779260114 464114834 447988813 883814499 412531768 499530202 149938721 846333016 874056551 544878226 648160089 82238607 724078036 733535935 971172089 746126761 29061121 977926683 506163140 275315640 316933455 917873880 584229539 599654780 869927560 509365426 794302567 979490389 328572384 662268752 737408368 105110342 463907461 95054366 364462138 780567252 220817948 158967209 244639220 232857457 446793899 488812178 902217868 238736919 998163265 227670202 297630727 802850120 586129713 50058070 772966586 241559494 868041571 755532163 814734125 827026583 238978098 721825995 357723054 239548673 980999526 973685548 366513054 216477250 167676244 455001354 524955894 451919345 640846840 786429799 840915612 120204069 927081068 671215491 815434678 776714887 477035578 407240531 437753957 835846176 540010838 657622709 138446613 810409646 961404805 291347872 259070836 116338773 201935607 847471764 289386870 270945820 809798796 668814929 968819404 604205342 231546516 720013493 819743577 283146504 706567613 361938783 826460079 195850558 254951244 278353891 747701427 226434755 900363202 41824138 414726330 334424214 341930319 127927269 591396930 128244062 797406841 118716357 653836476 574222420 477785975 322195284 288083473 835133622 994625641 687208897 275838318 238538533 877957687 201944917 525526914 796087465 605925674 873771714 140100806 865741370 166380540 62569328 902382315 283353883 279900285 660478819 303911689 505398135 168173924 667088454 114505083 7808444 379924708 648592065 619745792 878750360 972372151 918451565 723471738 811150556 620097500 658245662 822227981 83185908 152521118 492170123 834791880 932519072 798051978 175552304 977039748 943116070 927826416 850901736 754092553 306512900 595595134 501175982 294169598 963353128 347261175 964498200 211241872 667262485 198051017 412339265 376528025 744297338 638017153 251103194 122740686 746698703 23567370 614319509 878311349 582896965 715496909 395061051 470704023 998524049 772726586 345055870 646108840 40031831 439113263 674454233 116613400 834931195 986637768 90797688 95140193 998983461 12714522 789692166 260698362 250686372 88212152 833077728 608556300 342824814 634733904 951873774 256659553 906280113 807580073 832736245 994748287 649425571 764515950 867237062 754990824 389494079 245719869 575377787 785806232 650194387 642505092 255044550 559027141 46339584 609542964 339975160 490254520 539626000 163295283 51681528 715050202 244084865 101434065 261127166 254587891 520857421 395825276 758872274 322996456 378251792 621247845 370700324 425420326 123767172 266569829 724793497 502509071 957915001 372036852 418578162 719320186 685219671 25288954 61637581 234995716 666719296 599180907 398091011 450286067 476644704 765418338 995646584 301896577 795558659 812404960 841881373 138651938 893376600 949736903 27776282 787225477 821726038 611720332 136157810 368784985 457024926 759382005 732230971 684601268 226938176 323684925 134400443 493836250 549344657 204347954 546524740 500782787 753939420 687229179 991910582 536384299 567486523 414287357 546420973 885447908 422291258 962155507 568116534 489942404 366086673 990458646 481497038 265759983 483542644 607559318 413442895 370641403 167911214 458384914 250530135 956846204 273406685 126523923 64904522 441162410 245283537 97614810 542000310 299591937 449971566 8704335 912104244 976257833 510278470 490065903 205807618 238890772 283791094 903074630 997826507 812179948 847575002 718753863 579823968 830080747 916816337 188500748 165910137 559786266 247647683 322685619 352136905 255355963 495090978 111682515 373181253 85500283 127799164 906623915 972175563 956040745 318534676 751986451 879503166 164309483 146155900 92728308 875076698 743211050 640699982 433280244 63154601 63457794 587472712 113552392 218550332 179296512 85896479 703882897 436135870 356988494 794331715 185202596 676023134 840794494 811134055 899437144 373344343 184057318 889953819 174742137 47972993 845393377 727062363 88209765 279096138 839834312 600067022 851573767 476437659 525415432 462826436 593543743 39731833 508532665 366195722 72590142 182240538 530784298 519869857 459048980 909328838 476823694 659435611 844460438 320981165 192035906 705235573 435046790 649810293 553534736 707504313 707272905 45500183 315810123 829406747 356687083 509453533 227042255 311770391 555734529 366211416 188382368 870388151 523279913 510949549 813598085 273742706 222815997 609057638 532520817 450435041 954254764 741948469 253398979 424739856 238721249 277060386 181519016 532262798 389869060 966376935 196907741 32475975 180245555 20359327 665855377 482439746 873984095 229490428 710608635 177103520 526621837 949643243 42109668 639284579 624067768 428239696 852847199 397394750 761931977 651705480 979174516 340473946 106908411 739793048 816620246 545743361 488904993 817523925 269246171 399114397 421293762 214396089 433537270 739672940 162535921 324567432 420763719 697449675 756966692 738235763 838316732 735517797 697931074 940901753 688758275 493533314 832295230 952534358 466120005 40178560 629604794 313270689 742261908 819300156 107161947 365267561 602520696 845027435 133193402 703490954 458552857 15013357 929857702 862002598 401368882 187139515 7020695 107653979 433179659 267793939 755332432 19664040 51058140 651576852 516730884 341808512 630024323 279907215 732507886 615691202 114459631 318719983 830252272 979220842 785914984 666332028 40473461 50465763 553431275 198355870 65127445 942693961 903165693 616191525 943035291 182297515 773953651 556206291 778653932 798123563 183913677 38052314 241419543 567940719 940107008 749838572 49825980 424541878 413940949 553245518 172348544 274206121 209007711 691982550 498729842 308335235 188094386 665746867 2224753 678621309 400997149 351875196 48521629 610117066 42668607 27513832 752490349 952678569 218390231 205196449 530490876 390774126 642918667 330287942 925389801 520239501 535655900 216701987 625172309 274712749 106883905 730308754 48394199 584186652 465003347 622310196 361428770 782411919 171761913 547373893 986266007 877854436 178351292 396453986 461939597 123915811 261135651 528269554 966043633 308287826 325020253 546137361 338268366 303024548 791935784 207752068 589145513 984298314 372670998 438264407 702293364 774638524 12875401 252176767 375672952 883893503 275784705 109798394 39288786 34406781 359305867 875038638 342821156 495752552 901685398 782700278 132127079 168819639 587836352 393728763 57997768 524163288 849629259 825874145 232431633 246129976 709588229 428644315 229669988 444661144 520940933 24526715 561348173 217616944 40334139 879799160 411352898 708643670 874835514 260914653 416653362 865757298 980909 577104203 10169212 329222292 201394014 144438121 90603478 299569557 372212986 925376832 512480857 388519232 497525222 986215157 873112721 416406203 587064726 212983528 65156324 734554428 483957004 450177332 817637753 174805416 394977277 250301678 955516235 331770000 960797171 18533688 266924693 294376772 177736708 43434631 434961594 125955203 446967537 493693112 84765162 331779766 732704121 205823483 33509613 564028259 370743790 477147135 987405378 446427722 20138314 884419817 889795196 838199896 101011669 642769987 578506625 746173796 602093094 499668500 380084461 13878656 743670750 43696016 648538237 917994121 394440674 803051327 39165934 770655386 564516633 624342884 296772165 401784349 67397445 872272091 418776397 318034968 637721695 809418829 671357182 711062399 521496647 310791143 796736533 787527054 327956202 785747694 596122187 494082831 795106119 520388538 673608445 629442496 481450244 369592415 282944826 738624455 985059660 750555838 131119762 854881058 602069828 625887488 596295881 388564815 896304110 570657480 298531660 249817166 456135825 522122230 938356411 714173662 98466903 704719096 939604570 258364562 307892184 404867885 703070459 932456448 954413037 73174884 688782401 258751315 376165873 760170830 286741014 823868775 111497613 468302596 132597314 40977861 410439134 782374893 982587966 258013260 925192871 283802505 246294784 375778192 434186595 365297854 253673132 834578131 990343046 162696762 229016625 325062079 768253200 342321303 746041635 917695215 94670219 285497756 597269111 324586684 517787201 589441899 128366488 360888996 310286810 31156656 961229460 734200311 43394156 167836978 283668605 723573894 56715110 471215036 632035289 160173045 910264218 694638489 269719187 805014616 457959167 389694216 464356251 499132044 756156947 315382582 171609649 565783816 54257615 497555356 523099300 6031338 508667984 830855486 284287098 47545855 187112273 572852873 294705206 637050947 386616168 91153702 185479849 260359425 192085010 842171728 867453782 197635095 852003057 575542543 561155355 340084973 50232997 675777058 572453577 802509132 25886401 838169404 455303410 962054969 894730460 622208761 10261196 290435231 635198575 345133066 348898761 814963475 257139428 756520160 365228999 486582786 970140545 849147775 48329460 665550025 443272689 71470501 879903032 621025582 385697108 84522923 896354582 861552491 803714932 460478943 815962329 981043282 504759544 68042576 105945555 118658142 849919608 226158470 592078853 663479438 470885669 590154321 103878667 938496038 95326323 85307137 335140854 21398139 724343934 950503866 468758823 209090019 707075774 706609018 189024039 386351225 275407041 211179484 770916532 653943486 245066860 602696652 83383572 981483338 918066820 276860223 18508818 880098185 254108622 610511057 824763179 332484675 500920539 746118996 488833319 167167582 490541973 363776501 246615973 95598802 427214320 766624234 205111152 749903250 539038063 426317781 112732262 400495726 28085854 553957241 215741173 68232417 283086231 870858524 873417322 465106439 743477727 752835217 872656732 681876820 649633386 786664817 786879057 769670164 296409612 937679059 700675295 79319309 480860701 454933771 372692121 221363072 675270778 718111744 8530736 901045624 752605051 828739042 994471855 648695856 384013882 405032503 823321623 42498996 860983968 124240186 442085512 122126805 615263450 816338186 99921069 625069759 203469991 711323565 59348953 665854421 302533963 300028765 731285248 944411968 626070287 620728759 533420489 61514173 120126216 778031185 544206389 646801781 95622291 25133062 964760443 49394615 112740359 485146145 949844322 707137694 687184835 349935099 844726164 576820476 473017491 719936463 202997814 265017242 262898274 680753519 524324324 611744524 612980815 504956155 870419298 967770992 739565087 581565050 325962237 776112876 375975739 386671328 81359970 307777536 998458847 953219437 660687232 761321268 372072497 328551725 386459875 729883625 294334697 49639497 974024113 17459537 80985852 838494412 903875566 988944374 633342187 389510974 241740758 622561084 696972778 798005717 648148245 165587055 240995922 803044324 935500720 212449451 952030230 886807562 854457435 311223137 949196008 827957255 391043513 673266572 550944560 857802622 799512267 21156892 441509799 71537542 4154236 678026201 922626955 694788688 433840607 622515352 443357941 618746062 825800101 827539945 410324002 993354505 683566418 244242290 611788481 399165324 432564828 428627031 596001676 335486370 780051463 917497274 584675436 454946698 331189022 174658078 183009879 818738782 544985921 922711308 730377923 639748762 61370233 308465313 461262182 243887302 122826131 737192291 206363442 324454679 588267163 246214753 394226671 231919132 782114362 420195644 760666720 386579663 424808358 686058828 434672847 470078769 363781221 682940809 190111343 130352537 285908778 793115102 353088661 99615161 760396732 21174358 722788733 633614690 393942068 829471048 960306776 803897623 62430735 738929199 579142106 901714116 873333475 738915041 927601732 386145484 215231169 900374134 633114845 916304653 691424531 659950722 287580918 191584124 230999207 164538761 795820763 813993347 837030458 447926563 441404758 733640618 502776683 275404411 579912074 236810781 613252150 475747110 24876350 809549749 879047486 870124679 23383914 374916152 612945757 50205079 780442767 974421002 530398003 544627237 668884386 249207420 624417909 352785138 907376217 557881443 628379033 407148722 592021304 803008626 569635867 828724430 387413951 148524131 425943573 421278423 988402303 561387003 356014448 28866943 415902002 406633834 741251735 196191083 387673002 847065582 165016486 604140598 443324614 177445204 426599274 429267573 358767727 863593075 737257839 940939026 953445927 373233217 466446481 337720559 685995507 296032434 710836765 176808478 437791748 502656309 727692382 397799594 472902893 673096388 682049853 214560234 67712521 24190751 501310654 922006291 936174249 917294365 573799053 699894307 6437284 736514253 834998181 494641178 849158117 921187490 721871026 489527931 67563679 410399526 129668337 878331951 239218323 837659074 158775418 283293271 340317878 788659927 251618285 491468441 960238273 298255113 685771038 564269937 747330571 387831005 100823078 41247703 100424795 178415809 759262916 400866577 539490226 109163422 600754072 962694869 443639395 147713844 735408762 934065544 959169171 513338945 329504766 516400816 520484995 48838679 83302354 616223594 754767076 898394563 497053481 126438789 223789430 694895835 140449617 790631183 27814531 508099944 816398543 813478961 516512962 414355240 477942422 584240679 202011639 476469457 345061281 697536247 393692707 598798477 175076529 742982756 516397848 652626062 567207098 112265431 611880813 729894559 679554841 285481490 543821607 727766688 560915544 620791698 537191265 608718260 307879140 652977750 6777746 653339863 413140466 592108640 315185418 329849266 328757816 751984415 79531180 708424373 519060693 668677313 844506812 93674504 968063701 768611325 697194736 134651405 703014556 722240563 791768486 489874150 110188856 28580682 8334996 43350974 580521416 451732804 977889753 968156165 236206057 824269888 763867342 171878244 953183813 702506647 366024226 124898745 876248191 399386322 23050695 393871328 556799913 424346056 589569200 27368275 638918990 430179137 233681457 682467735 402370658 606782991 444250922 647802556 559156002 718214932 78924203 524949870 891176636 675803593 626042913 672153997 783740743 315712161 895487309 499412178 265612355 248082165 502400326 584084282 301886796 661873003 698367435 19829752 824229118 500175011 411463513 555141644 260326568 674312821 532174561 373072805 994690210 351533887 54353243 404162994 242846180 469905300 594414911 73651226 157216628 680460873 813838286 90800716 660095379 597996847 92439074 164294669 852560479 807802264 393173766 669161642 81441199 474219469 984054444 156833742 641020440 535017649 591365083 660087169 24313737 790881828 377970590 98896749 471073367 823900974 570330046 420300555 668458829 371334014 930856160 8129599 955621478 323878363 509262662 349698436 893027703 245978546 310167834 984361901 178510475 91553252 976905912 887348371 989740535 111081424 730883280 178877671 818016084 50597047 660749143 244951829 975838401 476374314 690142373 257949527 398442286 484603111 384551637 373109752 291376446 574802218 616300773 256799619 796991037 520487749 263515814 608630299 631453798 538010645 696947115 288267175 266697280 723060000 201677591 695109858 609228760 553277761 452075294 437242289 657165977 63474623 320763744 210956582 44881607 572325521 150482556 786046186 303790164 579013447 170707757 85308947 924169272 532023415 295015047 768533920 527779788 514965732 65111463 46625326 85853728 146135503 667426898 140748127 588289057 776553155 792911776 355332597 514094601 503377234 162685728 843767589 840800501 621531011 185901646 882048561 591644789 805553089 42651728 869718777 42186044 399042014 440775779 121383291 192866065 720245018 176400167 549376621 407153314 485769689 517096102 311112295 771317011 241700267 318942133 11025595 58105951 192532181 147735971 643807250 145813365 815387026 344888284 346643223 136652499 414080366 232877871 406695506 735644494 349752529 712086102 425098814 137045281 159552298 441890017 870165561 569593327 383080318 251963532 725755857 957837346 168050635 489635610 267214502 473499994 655771089 754604757 165605858 651476358 74277347 882473763 142852025 553883194 368848976 366173267 900949113 195779408 437889593 246236766 761427857 744937642 382707690 309824614 674112288 772759338 730788875 225809444 485259252 287219915 691815598 185928276 84123420 307498852 388177099 88526042 728897555 372171521 141418477 645448503 560083743 175400480 712363082 25050953 631298349 815761052 660643405 743648845 335103115 283815482 624296384 361219420 756671831 338695510 519811304 569008003 346712351 380152532 330587331 421069471 551978766 332019265 611862501 70811157 737209225 477449889 149495510 302459182 278553504 688826778 509361767 958494455 63063085 126535524 44396481 751366068 333515083 680562367 723928164 176713546 527300949 986421795 717727015 182636913 863086092 249107827 247969714 486487758 269877683 124671662 938139786 132714337 704997680 44251977 452418076 760579096 658305601 341137738 569536872 919150051 535901601 850429283 118267861 657427773 992972846 548804648 468069566 870532222 806308956 135601091 431089699 263163615 867626922 678197012 953614468 667938215 887196105 943850470 567646435 975727775 467275061 955393716 804739987 380913015 671041537 923521525 943410069 952197446 178731113 231623763 868480751 87343826 273027533 67774754 367065766 229128405 924404089 288509440 958924292 243748084 788999737 115266002 493521032 97098544 75994071 103173896 149323732 108551530 27606182 290403108 915912471 67109398 517274442 897045991 527242398 883941041 357823005 407785629 841280879 182634451 998158527 612260992 59645291 503741717 981654539 233578920 497419570 265677502 527703887 776953737 106852474 815147692 20993974 605602109 198705404 346260644 433229222 683331286 169519044 775029915 434770914 868358921 182807663 27030574 127095154 291033017 787841020 754270036 295085361 500390810 559733302 197737221 805159971 661381907 904455206 110074893 317542776 303411498 916407461 315624673 632858434 227794354 852823714 377204404 614129219 107898954 447998747 62471805 161146024 47524801 407139309 655939920 73111839 702357531 550461008 340872178 86702430 789940886 784273563 277270007 779289255 731296630 434515223 966785928 971454442 940853373 218898801 390557298 534338818 736613174 127928674 583505081 941999023 555172536 905830105 815533606 545769455 625820173 29672346 355801738 191163957 138125397 14269944 963931245 738755236 170088735 513712323 800096260 414731731 421856301 836465425 461469850 648860752 844021930 448786990 469557803 666800141 232508439 211435248 58226762 367567457 703999783 295447850 593515483 617398166 869994659 989230197 309952996 153040485 552301060 63655892 741233412 551948865 632097129 278157713 565189957 229699165 680749701 360313 284218736 217577466 289420177 395434481 277385641 160958720 284041755 524773925 109142369 212777142 261744682 78351924 12897557 519082431 184089164 521349377 697755360 969827015 598242808 54986105 140940705 367188432 973577600 755238782 861595835 407372409 627082110 550516718 516013630 192150399 422228742 848107062 684223391 758355595 922850025 161344369 110448823 543145918 653728025 499217205 562263454 808617634 687421302 95842258 600740096 191997875 606883862 520658104 210464737 43502087 110262194 835778113 811857137 131395207 170373618 564511852 201733560 46135157 628368749 875990848 178236162 16760055 41097544 62283644 24063049 968482651 161063096 816341215 303671104 49289072 194889460 24901215 539666457 242651795 309651915 723898965 696742181 622805889 234964947 440936807 840603592 5403366 243811409 252095246 226647822 460450436 624185591 361485978 878772868 9661022 143844259 466777477 44825705 531425153 411323403 180227750 392294028 489213668 125849141 870966901 185641380 185824521 53858205 406661257 805928281 45178612 235800474 678279767 554965606 975992896 153743066 935719407 127280821 582654177 187456227 806702010 931442581 482936555 970802052 193488591 52755456 377254623 110993567 255471031 333612409 506187754 997718232 207695622 889916678 711297285 930259306 773457706 288087646 668021768 917775163 518951533 181097931 421476301 84773818 830979077 641845285 858568370 128693620 733756062 851712151 738809422 997211150 300303066 534940487 728528427 395357194 133147769 350161406 184338323 501449424 44411125 120860155 874103661 194999547 507366623 97001124 587747309 486517719 337629831 723681353 309362219 15949266 301735733 569610128 443486449 745969261 826730943 274063501 690688391 71410632 619838087 191460163 51637611 566962397 423217638 631035415 440524106 571330738 523218191 483080663 807604267 16736518 40677734 567940156 513914504 664853365 943352120 656815931 5032340 138987498 723778673 902319175 176710318 623127069 338640109 668472973 212590312 895735809 335861036 396673882 45217912 737128130 858296032 119785523 92068123 58030674 771806794 997134618 352643661 984489932 960247597 600146691 628758842 178246086 226310109 779183594 194305291 29288418 280284410 545305255 884923484 282945702 773919096 179885062 372846827 840547827 408338194 215603555 599866626 142512764 483748716 611966649 646412877 638214447 923640839 42999985 291104266 868600107 94517362 967162335 330288929 228886170 618480463 627026074 83664586 259568853 312656148 170799305 960344374 89281022 915237671 28686840 431072277 124939183 324237367 17148819 545794271 508473235 433807093 884820484 48689145 691343600 95175297 716480313 227467553 297407123 962867484 182680103 320829128 346310247 371277789 497419258 274091930 105428814 339562275 678566892 307863428 919845293 829058318 932207095 496982289 862704818 784905494 274174888 339245653 795464512 973569870 918039224 811286529 192320037 438002984 767880138 677150883 36333874 545970514 635022274 588237847 335351151 369191511 589297308 21822944 197077643 25091482 851584218 498522261 134132329 286531454 240270612 28342640 416416432 850543042 107694482 442049231 372609271 495789639 176175304 281726440 239259505 757858434 518306729 507260159 751583385 965820887 27143074 368840379 799087170 615503219 482550576 481815350 116661643 609423457 7057591 480273518 391125742 673436770 420950611 588570349 696386872 328694856 117749993 799568553 570613236 908654124 156969388 201280522 834102807 524103653 228705709 501038736 182384794 801273385 62294614 784991322 947718451 438764469 390563217 202064532 441389493 297472126 87632334 812080696 486969966 318041157 201807247 5729429 188051617 677395582 813800931 464832503 209651250 652494520 29161240 342631334 728474553 482692485 148037712 787268274 534624222 791201108 297859867 846406198 510396142 430254932 30135965 812882156 481770783 786928622 381223484 139280597 923303517 169116101 460496220 623331992 448360842 698540545 756095345 315830278 140595820 819497302 10414906 620828006 138723520 447354137 739096568 553922190 166511387 365003752 355101296 328904816 189741617 170225394 292125243 396668837 934797109 959260685 561922768 385958968 8505257 534820628 442860208 942329173 767294344 682833665 435273119 820461626 665454974 379917119 61285799 324975535 799590143 439282214 296296996 381667281 524559403 85254552 318191905 395830322 517563525 322501434 843306213 50397551 423189033 699819875 421516641 868285871 453346911 873099019 540944971 222909272 926877454 324578852 183365298 793002586 496780725 775001345 762781022 460693249 568751032 336565282 645424463 826704031 990941564 785424339 889552652 788209840 153713858 738685634 870009136 626419609 81989090 510872865 748605561 425073185 710010448 495628509 264278620 370599069 107452912 848918403 403356048 62982733 799712839 896717002 229779696 111155347 772196002 336094318 390490486 542613444 513072768 173224106 149586668 507032122 480849120 281497963 455770755 529768205 226761807 303706582 772486932 63541680 345595724 966729120 3709410 658854504 660848268 415296249 32830211 594321067 380946783 993891984 558695614 811315429 596521257 708155338 871034550 792553420 355152397 823511919 465675988 993885379 576776650 859338506 534781981 835227164 479518512 558342320 79843481 418583610 379920210 708404100 331725504 431319516 118064229 954849535 356903920 231815201 22714491 624311952 670786477 173270477 608260743 768513811 795095809 485347096 132087757 491225447 834842334 862161419 179747250 938261207 971840740 391927644 999935367 901436572 349345655 721395814 551130673 428522592 763050741 213721709 510548374 337208509 304526664 192678247 928853578 366484273 54385705 119026075 974097082 810701398 278058128 51439321 99478880 703574872 412280209 388733746 870897535 275552443 604448141 421449489 392821788 587348704 204735921 804321264 732615725 709605358 261780928 399604910 121638387 949099330 233762907 732880499 929945415 132890865 364177470 462409775 936311481 845265792 763774299 324748147 573784950 334034383 401593105 189672705 549458123 461342963 582913517 702024441 55695363 86234034 950203277 971341372 13866525 808253620 717805839 304841547 197211138 630510732 959510257 516866633 838641971 792804864 934545357 596540575 925636950 453530072 871559143 788164962 581760689 530070395 546113665 662038476 9083178 64940668 399382058 998793714 633592515 602040122 191800281 528280581 320140679 154799454 891480906 260770521 726023308 228873013 644076444 227560448 427591667 575107863 616169009 662639823 314662554 614951196 218406876 741344486 714628347 155683232 97039465 571470783 322473266 471022499 654462946 60452251 102929270 522808487 40178280 124547584 84389990 826964504 23223545 904974188 134427212 825660999 128445131 50253680 433538716 610078960 228117598 61637866 259097435 808371153 901802869 366595176 213194724 731793770 433261003 19190717 581748081 88877094 58992119 123114825 772177983 227904115 654153351 687160281 886416717 700181241 347211077 479456256 994062842 603480427 325711726 952134252 211275237 612851435 489613533 292941530 817564101 656648623 357760754 259288881 410494942 961674682 307387918 620075227 390859133 295235029 131692803 855169719 838310206 531302371 353576947 375649583 194552621 808937984 759587265 243078989 795495257 36179294 40690421 682874193 194583865 275328049 924280364 18496587 546050331 196073002 903572112 501414600 871900751 352157736 395606403 568864325 662600788 466104545 612166005 341000974 554205091 846291243 155848181 82123957 941365234 614252972 138556240 847685911 403649506 259820374 675195384 808201383 809918309 330858710 681171535 702814559 428796549 886647098 141360481 686505898 272638248 591477683 990660753 790168858 65351449 183428411 730836537 224943101 894195803 494569356 466812179 121313761 858616405 667386957 921863076 945374084 77129899 259911614 919372795 701421544 819892655 453846269 875001783 58654424 33235592 715365510 373951291 975484115 850327172 230687814 420931292 447653429 650195358 415470353 325051167 508543443 464435328 912438914 294373728 584882795 796055284 752012800 820617904 670049629 382688417 710449373 377697747 399900924 562883381 841354697 382737604 923926027 797095870 947962729 596665454 471023711 300608495 622292418 817822266 821778037 445462201 838505884 829577237 593976687 728821185 974726171 712813732 569335394 14060639 866790199 548514982 444749138 305841064 685295166 259549099 812886482 252333949 357639409 184573626 802894544 159242118 52512840 14498387 570001811 786296878 279391443 310242473 444598632 279747301 339799569 681577086 52913865 463959984 405209878 540615032 69044121 6614829 233858282 934245640 862318397 546208059 801223825 843981948 456858799 489579293 634553341 916495736 749353797 396694791 64385431 255976180 803538085 893472611 591513086 885027179 211337222 716831963 932500334 224405848 441754641 944842311 651317873 182643165 902523710 120302220 494826727 624038082 4435022 420457159 857659514 811360400 76632877 420176368 681588869 352226429 171227366 719274710 582121867 386108464 298805794 346571976 786419894 977280546 646562542 197438988 81639738 390977074 630015547 775977822 676577775 329437603 248520683 259923441 282742057 538695863 38299930 573851899 528481109 997678591 926548575 164073261 536572337 925066549 943236887 800639776 458834262 116963700 769824975 444851134 175751228 736326928 231151049 358290951 679669368 459591024 669789324 134288393 792270498 585239295 276128188 568163171 729410464 220615841 700726290 475240415 798023222 603589834 424301100 560463580 991771177 389550147 884690350 59787253 400417836 747176018 376484349 229811551 406596529 404555851 110998954 320897623 813080464 417393758 17480949 305484521 689604905 757060510 519285785 180235040 87110993 654535600 102784204 323734357 648824089 975152155 290345359 641185750 349458334 205681487 298765116 617412804 549384964 166576791 97338933 716683500 255568094 61013070 109131111 730084602 917642077 309325040 259771768 845653094 236657306 831684959 143715958 299905229 348567760 305564979 208478835 493095894 934176737 299729613 195488176 249119945 218810058 417084435 843618403 422730370 524408811 1039046 96163404 673814096 907048119 185471675 488392311 867929378 817900188 919953595 929103509 975104894 239575967 432212016 534661283 4220337 338648369 663108185 429216956 86443791 214612949 717325926 17570516 290241971 471176171 470019313 459064162 652707698 854371034 198165758 750845623 635571991 131939000 110288729 38880703 943311544 85893590 749393764 72166021 566413377 814261450 223722427 369680076 349567074 581392725 153671253 481663915 340209584 978310525 131058917 190014700 466437660 454491246 154820746 59692167 370101404 510092731 30442688 101709795 22842817 401128370 707883518 592242330 626773794 786947808 77596215 130798993 794871160 607576224 334993745 939641008 334181248 153303099 478912954 882330178 221302946 889434063 946086675 261954383 503960622 344875334 569043590 246264663 732150908 660760889 362634688 157072158 920403730 779714061 81693350 191513666 744063213 940731665 64708083 334225841 169369437 618437276 370222539 223101889 410876231 371392685 502904620 178771806 364221108 722163382 741445875 215723515 94447523 422404785 444132458 906541847 924609122 237763967 86485445 739414421 260640685 477094260 286267010 644491620 37202104 399770823 122509613 28790033 415087287 554364179 823747581 375784259 448753544 42398619 676207957 496461604 185086699 903248475 527379374 688956349 148044348 59334801 944098721 181168143 82201710 465208654 870278591 539335297 689511029 96904531 476286340 791457089 963833470 812611091 441629757 532646971 404884062 541740267 852990156 574100304 19625503 796091578 485311881 88838334 618384064 291359559 183499055 50146119 655049667 804155705 212523281 688522023 867523732 408766914 615988195 259343689 321261836 883121702 70833845 937371178 31144601 469992376 680107408 48733343 285591355 633045165 674111943 265409317 220518629 552454280 144078240 350131765 592260335 342727811 617038404 864197232 137537240 882946732 373469474 61396966 342740488 869090921 309887807 88979604 915880879 851580562 561879001 443882068 832122 982756850 119141961 779370191 356714382 481491263 989807968 186552623 396173627 158805114 703718736 456274442 395001582 256752961 837929755 5930336 878420607 735442888 171767972 998029224 856746493 306621484 391709080 386005902 958560129 27051921 516485365 231425352 62440960 340606963 495155642 171508019 632298503 60131078 452698582 130459825 386864528 569222681 883329285 25880019 449653412 473687314 581181095 232418890 263950916 629140854 147624972 548669990 408433394 582258509 916927188 635443952 807392021 388976562 581170785 805412352 371028227 280353084 112515124 360768602 375346146 380120722 423543947 618115605 561705550 277569831 323410183 995819861 424561473 571244333 492865382 818337205 382715445 205281944 990570497 747295050 755063165 222763106 988573985 723896044 387802639 503798310 837831867 648996916 383561421 372750723 729325428 312653922 736433065 374156882 500223700 483474718 471467259 123367794 353364656 70970298 539899124 34137395 339933666 126430237 580888298 980159554 721878438 87511564 268096907 352362396 331133739 585301438 589281274 32619478 576115707 725557227 597427295 775508578 792446886 726137970 358761654 690656425 48458754 571395242 638566710 931128140 398473860 450413269 634640920 107217350 397086381 980741958 996111465 48351495 427585154 104891981 551410948 499669226 242316385 341528236 633539769 834241506 807963794 817821487 259725523 423418262 589451095 839106076 410690611 968420191 737902541 845455552 523022543 23703834 330933889 52700087 212276876 212273471 442735169 126817061 368145006 233247955 952191782 142207566 929098334 775525905 85513978 199125602 54976826 689084080 665076822 191669480 559499455 317950342 188358814 702611003 148979397 640237996 312736636 174233311 952829060 373850284 539777218 550542393 104672328 859990902 611621326 719640049 898303886 835979936 704100455 483400401 85228668 975762100 773700596 9612751 264020562 119400829 848856662 534592899 41286219 892130084 966007946 516897960 251694566 484756380 964909867 261460580 269493992 587850059 600352579 409601656 316965338 746400425 718294153 937941144 769999173 185541902 105525316 127449332 119426496 340273835 745422075 612081999 281049558 535678489 249935229 195570503 597940680 426966426 850018356 69414309 100431142 176519545 815347215 912778112 716466897 587130869 860073211 815694515 559021361 621816860 524647233 322078427 701839575 525917880 840422374 917497623 414993823 968253254 793555157 230121767 897996370 118834464 869498258 139872185 532398541 730280892 754793994 759211270 421687251 434429544 933595343 403227492 396895714 903988835 441729166 389172652 258934338 498330045 905467079 781912217 276084579 11541717 553650948 480188303 730576739 628970743 102746033 863337102 742585912 266448990 483126529 511895185 453400390 218930146 231468102 861016407 842669332 229483447 16353879 790266301 690769720 467387076 118498295 154430731 935484699 414279786 304668671 219368330 382016272 734070117 726616017 863131945 177329717 169263080 685145134 911821662 53749822 141177367 337469834 711235445 26559000 771414274 637542727 786092620 696806997 249531437 195547130 461341123 528679679 783970585 585593245 532869602 940901167 520200735 825404912 858988213 741622903 777895279 10382755 365315157 158901553 320189730 857616586 376304463 97895999 513646803 250524164 35187745 800188676 353544685 696339096 872426812 906765534 694961082 928282136 626885591 778250436 58425698 317419388 578494975 636110364 821000946 534879944 807884551 34514050 455809010 761265343 273667172 364894692 282091497 942878607 232351791 667874953 800560051 962744546 56920102 838523400 777190942 500843880 471999666 929643937 363621126 107127998 815401148 471688224 522441002 832263582 598313866 722434074 374254491 314898431 302860360 260103947 984539195 191454799 999532221 984277051 738949470 646962618 138779601 302989113 527288959 331370475 338509501 762611831 630647973 76036017 712645766 418577624 153811402 788353615 996100657 461206015 284511495 627500355 153779796 455582112 797977145 359667098 167755621 646036366 222288110 987284988 384437805 987492985 483994019 618586207 661230468 706449107 260367537 667556493 7561593 67136088 516153603 948437498 541071974 706717740 733846685 426190980 499187955 644847995 675667863 959907332 533170629 680068943 307682619 198986755 952187379 784123583 801174179 238579667 542903054 252625888 258665429 609971714 87050301 97892273 934800298 70793837 536723267 686640144 845028264 621154196 174713974 175223511 425124317 537255946 670044399 535266822 614771075 631857107 314744832 524189928 644277360 563226274 733117595 808064449 388898210 262875360 458080853 684141625 293439681 410841626 704925424 526955775 341085144 764965967 258320567 612013648 728167258 165187965 186882496 780679151 3880238 859148238 6238158 425142986 713327546 552491008 411787338 464774842 899909121 981965414 734686993 618640248 805248119 812027595 111898731 663577935 923482256 789515963 738950196 822820563 628518278 898313577 660149148 647845372 864049485 726853108 587155564 398400012 548582834 944930458 900552539 721580216 342852165 502868528 941668558 213430928 99370621 911031631 716493628 182755995 974176668 157856624 869715761 674369316 25648551 948657083 142085822 17183801 921173417 582024568 472438527 352812280 409590251 108084133 982308457 334937866 128433578 897919450 705220782 860257598 743965645 618263042 595923640 391036705 926578937 918443613 74823402 912054269 141830587 156853532 111753007 951769215 430644848 931420357 193969439 560565878 768801036 50204408 191329714 877473683 999924876 330016590 134486662 944494506 406806284 427646059 689201152 246508761 437423541 835816160 14092569 869200198 538869261 251496912 413088171 804911234 14405007 786464370 178882117 802608324 938803453 856179445 374011507 568104559 215640241 201449024 852569118 479017259 389525501 376310016 754304901 784128404 772360254 976065782 216074552 102898404 925279830 961397748 184731863 173176575 633812442 441565871 468835736 239816312 424970069 150611610 626295380 225908367 570729342 759084031 524844350 499884957 269837471 173270408 77539590 811668363 651478363 70122437 399393307 747097913 459492387 11587710 28829932 673912894 512545941 523660595 392326985 889436158 906275165 547180617 642985992 195157873 326969707 866724297 50376655 658841449 391412106 560272273 76787636 253502318 668594383 651579244 791413025 413902974 591770914 409699072 620478652 201736881 593394521 872275967 970403183 12938014 843578134 629465947 375088927 825372616 761198565 29663835 198140091 268854698 453900450 338301511 280345796 625336731 728625376 540752902 96425378 532993538 359297184 224340112 230780912 508074334 357651663 667424212 555292335 163918646 589450321 81290319 776749396 565841517 710697148 989269631 600100790 849185798 43675763 161431252 182746860 783938877 940356857 212033729 429281567 988767470 800926811 43405495 971091929 821782688 182405635 781429430 361499072 571988110 520792241 64925035 698659081 853242653 137918517 597824511 248308140 677063742 141026686 645963813 324633575 604816488 412247989 475189028 798591174 564767357 282982323 107238906 68609320 302447564 428062375 278093471 510343517 765147418 484236390 672636806 744927860 760247633 726001194 592541333 156443689 599526170 73858668 269912210 302200650 775852914 892409362 813490403 729137809 273551582 761072414 739147377 575434260 150684378 294401087 4075957 855553483 681486347 666413268 855562550 285382807 811547095 254738892 557723539 655378764 1948461 408523296 774432258 821925184 439808683 271849547 495447931 985126979 366051326 901423467 999394345 767428098 823548872 479213557 291434731 753401867 190542857 540269526 86422732 127940242 404615550 982092406 474152044 453739165 706375468 361410892 981370183 6656698 725500111 469397699 323689842 709850507 884566473 721490673 436250893 548813779 614934673 211288635 572656818 658965296 819439090 518877236 943619265 972741922 305747516 69464286 592886149 320196829 956713138 747556123 485187491 968180465 304338879 612312031 3415051 875098150 168053840 122775179 634404340 174895605 714011507 101351419 466008158 329297086 620693718 968743720 275441828 687182417 898178906 800707754 895202317 141309052 719147344 579558412 991259617 937297417 612901483 327395766 169477733 972171121 53987619 489684335 198678540 441065995 837019244 151363312 184568965 281751197 133406489 891032048 862320600 500012087 198629262 197259299 253827023 623515915 205160021 658905012 295775921 455172243 181940254 882649606 602107728 221945593 689287609 631862986 249405049 202975570 859773967 255204504 671927342 996423115 428014949 769377857 78087930 437697580 283578291 95978699 301014511 820403680 479761658 548431653 948421529 542785409 511423474 948882576 94278177 700695772 766842798 39974949 981619448 204803444 80402245 412431677 191543750 223738606 384563002 107817438 27867519 300436282 868390 764944456 648076557 119013778 618415498 260352078 889289868 973632729 571636401 587154976 563913528 684530253 308882568 898583807 891761606 319001243 22765758 791985214 641281983 623728327 962302543 981719412 696908389 549492610 33960998 691086936 229440175 472589663 221891767 811587243 834249816 399046158 381185174 191855942 777968550 517942380 916273125 155974904 732146324 703007323 624751214 725363413 206499621 384616898 320094013 436993522 77521386 684707408 215227930 202541677 186997096 51963449 179405470 276224814 474203575 209778378 124514482 87931513 340265219 997981089 742565047 615909288 156443693 274801910 484729347 571424399 696496871 54501366 47521646 375397348 423327836 269013925 935937677 97524058 144017540 659995549 473578150 797210188 394963310 816426156 85530120 259833740 33027845 188880156 421991920 720624958 158680633 237496104 171757141 841259084 687451961 232995854 104419917 605977951 742140178 557797540 289522126 500997157 466411187 649579533 864199641 789688832 66230271 478650698 808913593 576792799 944141948 135470683 324930499 691584857 526530702 606487904 917205218 926186917 855793797 250900684 598727124 480660841 284158339 264179090 626009757 221964185 649368727 195175530 371365442 232274081 5841891 231103368 147243564 395839819 647416455 722823956 653532580 4434245 953041744 63761886 589559419 541449731 486865317 478959491 185728820 892523564 193336336 441593344 265799658 452583947 495363613 54815281 788100547 809786171 931769035 637926993 232086842 50772706 578335512 519700300 584981988 960045696 533247081 993750650 488921867 950467611 478678568 809628069 994740371 691065000 20030941 692607276 166767896 199480678 298709231 300778301 382178250 137354170 90556746 391208321 306486302 516881255 544303092 868326020 374532616 382879407 572298057 398777470 727112321 192399476 381141103 286374139 932745620 227135422 284382494 923879986 956144325 568586306 706034182 378528148 308588783 862443368 736358225 372334362 534754651 447499142 684968262 664720437 82398107 805626014 329286466 166101338 512277544 861904961 59184401 506720277 911975770 459867040 149151274 254770129 271820464 731325902 413792080 888692399 287925247 4336344 314616297 864566899 162998369 294080158 973029254 89036044 175428403 594757680 806891596 726930344 720077036 63070915 13533108 224931588 898109117 169340871 659139225 612682816 44655703 461337234 489650502 577465160 982702121 458579097 649305358 110011756 578172790 42842978 783075931 139722491 694144826 904690661 520525127 694251324 841956310 127539497 115733756 416455336 453610245 563131049 353223960 932322760 387646569 78022500 762375515 504481388 757313957 110905594 541078413 811555670 300375084 566669413 220016704 618081491 631817632 701284393 751482771 225104909 473770035 438399648 625373031 481427534 406121671 933148243 433676644 309176296 468193981 650386322 370347231 27969580 858386402 973493496 270101003 946071482 999536214 536845621 388079697 296955691 901973004 587546871 638033572 899640912 321674458 196203539 467850402 659023088 198897732 618770143 582043135 247177413 792763470 379302399 781240208 120759739 202371433 926588256 374535401 458612925 630039630 722895930 844722432 314816746 801013933 42612393 186203023 546829693 562879787 276828519 804247755 87219842 432927699 279840499 833260282 782358199 133735835 573804683 856841491 905764685 660985996 974136859 513897231 91298955 44096864 790630815 442449390 71902278 147917088 953584671 735576526 623986729 860979988 378095879 578321761 912050805 821946008 868911088 338925596 961754668 707474473 537549518 265405659 559023452 792807459 476787385 339018980 270548639 178022576 104070994 639558030 866712916 507092221 99956244 75014053 815124014 337536054 453394858 184668324 182165634 110083172 807472666 368205938 817448451 568610792 902778917 248174229 808137120 764687194 456589609 943413813 56611439 829365588 149463544 772587827 921612802 263373267 706739428 449501099 936538511 437748445 348626204 498807946 566414178 525778158 38967723 368308427 260522394 546990988 732832363 794518282 471579105 548008885 963420392 836652772 699175034 752765431 329478069 694521159 172804147 818304485 721320763 826004656 42263461 141713725 207012311 599924453 615531076 559523343 834747508 405159862 759014823 956881980 236975522 604061519 955992467 859921084 729479820 41666129 597097274 239474561 181255592 336715534 972063384 756155608 638325867 825441832 110756820 130510351 984263092 726636390 573558436 454446698 778774284 222322447 232616896 262904666 136320756 89920813 144616189 594013312 498161702 409367050 74803081 828094720 732067961 637228092 225266103 901902505 444869305 537353557 267527326 125906674 443921279 184858935 273681483 343039371 789810159 992238093 418774905 367738506 991028666 470752334 777011149 742087811 306578588 549577463 558639047 574720177 586890720 337624633 140096780 519835021 168053684 308545588 450634018 912964573 963837938 162655452 690143406 443350479 942220031 303577622 227462022 376351870 498361768 814717285 148626439 291395095 230830330 995389571 401009193 128266896 855588336 803105475 536586762 571007427 964584394 934071453 32153902 304895649 246670202 316621066 530315819 158628165 370432864 109066558 221671193 702485010 297818368 631496104 253167711 555341933 707340856 99292817 523658364 91273582 297343206 192303709 788113048 985335498 875405721 285094202 210406126 653990982 418130667 203623484 503951160 215196047 277647356 672679275 597265539 29105902 193904131 147663037 962265548 13600909 891205287 158164282 550990396 726396272 758284377 992656516 668481198 281569014 397649443 340582750 607293848 199649887 361328782 57676404 732649599 244304261 485589064 337560918 86221236 419011177 982103841 199939480 456303403 171992097 613096138 120941530 882089928 466183099 850688149 494484881 639209282 108958384 281091159 298523244 311869726 639472507 712297504 789925274 720079786 69320093 653578130 371680416 144418981 264741905 874806888 300023788 489015755 756834325 684072403 525441511 847796603 141524842 979090624 320255120 60764534 812632517 336645614 699617488 359360562 129468237 530133875 205546453 498368420 384780844 223247260 578521017 497474546 268270452 938065086 792476984 20662980 915040857 594538788 607612999 232212643 498592846 144871388 191311028 238967590 144187170 498193871 5927840 593171938 420112769 607204450 371401977 261799625 121181474 540489530 775854862 775306836 374942176 549726041 46523437 796332105 541768454 603743938 537725067 618662035 455298502 859168801 609115723 724602707 717746207 235387148 54909816 2055921 183954675 729438775 120875434 949694395 438122289 313420224 178512479 234210967 950562952 760454386 231457222 777184883 56594366 750225405 232428893 179735267 953801686 189439354 643423299 668968368 395031234 985657601 119942626 677497375 999418017 298787728 102077162 441700129 497728018 236840561 974220195 56767555 735798586 936276884 827125605 172282182 823091144 255741180 506349409 389575755 776918631 270573346 623147649 544509920 953482427 844008788 769306454 119454892 741646320 65518149 213628325 197281051 232028477 882499798 847159138 927328893 424279069 281620605 363126722 923451931 446708366 625767444 311407133 740729251 945856463 807488953 82765780 226799859 229649527 394270045 161407569 321880715 336133142 272458455 128417729 271437945 144341316 586189068 962185722 308494695 420575049 576981237 285395863 311557123 953748143 447763018 628928651 347227727 774431629 127999790 807166893 545825088 443744910 495126887 310470451 213020633 670560655 124232829 958371928 439102615 444444601 761806280 533724089 675323870 276516022 74107927 432909348 836486898 40476204 930922094 21323905 232873098 749145888 374858522 528889995 469970714 220536527 622804951 926113636 699211540 522625042 478950351 237699064 656660782 329774046 210891362 423864132 743976543 902921720 623391096 783663420 359343084 951861840 781434041 656626034 769820649 642228212 621289006 51623558 813117469 932201743 436693427 579429135 859350906 85919663 932986311 431605791 629695645 165324881 688505710 361865089 301766993 460228908 42669633 831844546 247646621 295137384 739946937 79208479 554230393 122082608 97271052 99835429 260554672 197474648 934231701 973567986 965816898 531304270 625427127 805566672 762091298 435077253 225320674 448906168 952835565 223534812 926624302 633965446 927545547 529500500 847051724 490492601 705867888 954303737 312309844 692096983 736974078 385791763 902409997 81552124 292862089 737927348 786383896 930104041 789860480 171670612 596528107 629052891 847946093 704940776 205416449 226825070 871433238 316300658 584121547 259767252 945860127 355557511 961100204 723070480 824494917 708992594 253402402 525550228 76722330 642235713 596702704 202674433 617944955 682276935 271279752 692377684 540837284 382033166 88985808 65289983 961308024 460409745 91051596 176640000 60398749 694084309 603454632 627197042 88205671 921673091 928964395 276781650 464609248 931063382 959218163 573209927 450164684 541662756 629417685 425452498 529053255 960156811 230990759 345369799 962596012 285061249 123266070 335574764 278889789 261781248 910203408 386365384 834114109 438644372 572007299 133271669 407548442 205307018 265403726 102144032 490303366 147412147 794906027 374191590 594887682 552517067 101854510 61601958 783747508 204064004 848795318 769735382 961795456 843127775 865485450 531122094 633421746 85792854 726059819 165136715 63572919 657496495 870338887 338457047 750193029 918655036 769846226 482743927 382494034 168109169 993469486 959242323 734361465 880360410 750523201 235916304 388389271 92946923 133240067 966772497 501377464 231905778 871555649 437661719 963144671 40038616 502898201 863474111 70309092 631296231 681254570 451321083 535625202 388320211 420335145 419825238 393555736 362977328 534570752 230621558 556374790 191649978 936665798 78482392 450987416 551793343 395843929 351219367 728238367 909101070 81937377 767423464 572569301 664699624 588413347 810176633 187408681 25592090 438695997 401206688 864981575 977503073 667530198 279627488 104374491 468367323 787137511 739686420 819973632 849018169 57817788 190414525 637557066 551628667 122649431 662886427 965601189 68019675 878679790 665643253 244034779 103126664 432687246 444197565 567579191 845806292 412895993 679858417 32700565 542496158 802881717 911998329 795532956 227229273 907459714 304769174 766626401 946944558 819036598 6203534 954929879 463803637 498965159 945028232 690893607 486401705 325590368 474948944 142965988 265878014 352712608 240413474 697489465 888693843 79052140 460128646 970068655 197658714 226559402 805590073 51558490 630799596 850354288 240112767 298169620 167281939 783709748 86036423 281965287 534507092 30143983 928926596 869524774 490387234 208541874 611555138 999478618 597767220 923717153 205149557 54340560 763937077 832992214 215504748 303574269 171847414 832685434 584521842 941396709 395286720 948638035 458096666 631438972 615831706 987934151 826338051 270522030 847375228 617294475 44141784 558044581 893736154 65750090 781423269 585561585 249951840 528920814 638286800 485065423 779018742 329847908 546966027 391475753 562720239 664301815 68364361 611430742 274441800 49651795 206934950 482844198 785420785 332930425 531335136 362607268 778296113 493135004 276305923 487931852 9034161 369091844 900620875 334950591 754374421 964584511 186766798 899707435 158143147 585195397 231818307 530244280 119295315 836014640 809056838 879567402 847318346 493527536 449792307 644114574 855490973 242655015 643239218 964938329 224292 241339672 754287939 124947709 383420653 937298114 995283677 113296633 814184224 358701373 198194068 861322998 696262561 604929274 104441723 640085624 545492047 502037070 194490023 14681646 222439167 418732564 306359841 424553120 459403882 288580297 194457189 871017790 184453297 432691069 857694425 388762578 520360837 821927948 210103363 939490233 630355121 27715349 270862049 894368279 430518161 210128565 397250202 536375414 770839874 60097721 8514456 650569328 524182565 376874840 343192858 58703003 930935584 848333320 473783121 322868188 320264873 48111748 75759316 589348198 474074255 601539108 729654765 58472611 328213349 380596101 395435632 359021274 351842064 875444360 710450219 740063822 945237622 566135209 732669987 863983308 149865211 159702264 786766666 136639701 767459477 20104752 146513670 636791339 824973850 223595956 984694919 296394300 656209904 124427640 507902146 29671500 153451498 985847219 692351931 701354744 358715075 788333538 39717992 621053347 537300778 426376132 759099824 694793743 286388429 255724230 471845909 196327022 726924171 859658991 800611478 45922800 162976638 141186123 55653871 368085211 895946784 749754116 737482750 251694926 49558437 295713704 996294858 440652499 230655576 943945480 186604212 511292663 937651143 866743842 126744338 961909192 848691765 944031287 314396827 899997870 163698829 431422198 446923191 789952946 893073964 977435195 224240859 190149589 552807294 15816936 597993261 710160606 788210311 399045069 164514007 241278808 215200707 165348064 347480214 950502307 788158777 574525966 606864281 846460289 376302442 6585502 720355421 912375943 79726013 117948742 49889012 975084605 695274263 458265815 331882101 880351376 812926394 104529516 616313534 280205824 2601076 854837951 677013725 597628972 508866917 1573497 691205571 216802738 171333491 615426981 910528609 523490557 868850695 170345255 840902803 975185358 152733658 465714252 540737985 543021264 270893463 429354000 743189498 208928469 271261211 698228209 221689600 292337040 105352845 981172961 206717274 820384717 722987853 603043811 589734274 6012715 85267798 660732161 36316514 779532963 824448670 607708600 172683941 935727609 799108519 688571347 602914530 131595794 93481007 927709461 923820660 803233223 158557392 82768986 871297430 314748166 465215392 88096835 406662796 640153967 124631429 695487971 446678247 865726085 654653712 560291053 436080533 457745950 388445438 626652607 489715765 408610320 63716603 447235893 944961604 735959777 588809689 621564962 789018148 524208063 195094563 669071346 165808935 470750122 226658071 389645440 381091266 722233627 161007728 175159698 587217002 404397916 251514973 54427916 156528679 778961621 958590044 838178872 747156172 754926002 801782822 873740729 39191797 144722904 466372679 959401199 492668855 323443755 571499638 437338767 907459450 855038656 81013409 112126880 268579301 816207945 646887139 515415191 3070828 67765265 5099472 724588268 219568534 652257549 680420604 524123617 879027831 193339681 543589139 556910166 237422769 541570852 10509345 235251277 578555877 358530853 757273990 961665288 983535284 373662993 236137383 161115496 173022911 398649512 94188485 371520063 911304907 590510766 247426730 684816918 751503348 479996119 451244057 654934657 736030879 810720146 479971726 366150951 351545689 486691532 925521649 617689133 474606704 579939535 946167313 67617044 139661840 558438272 769533359 657697012 130056788 107520497 49294009 878851399 836809680 418050142 422506859 656545881 396672229 612044530 284392579 651498750 558076464 415108827 492921142 579347368 225400825 582949898 76944100 179862915 952968476 245497737 401732238 412119556 516109775 920380581 792177906 870398924 958003968 312839185 429914149 498639611 374287058 641746552 468990017 823537958 429141945 159287194 340652811 673997083 75663 616356103 470819417 332211127 836503887 434713709 390742208 591124103 706357674 841337868 224530705 904836370 119000712 90959001 885057959 377801602 548872346 875021991 979556674 695048358 858374461 333105031 769845721 811097465 576243643 766380884 447064280 573539568 681276710 599727758 161998543 676412569 27598678 637903265 633627431 749749986 35796004 866593808 72548297 306110626 973756579 126078819 894737866 845835148 471579966 674533530 128339338 661365548 131109133 720771461 769507744 613059459 870879538 339397962 976026927 822307280 732900031 452703177 779359998 538052492 369155520 709721784 743084239 85101268 281530838 471159637 613804197 874013605 784609754 950099922 260248654 449267883 847588916 767390870 640712597 994463099 299119148 114115747 409399475 208634742 629239212 396460867 330496656 120259115 604216454 695175705 98270018 947976413 954698941 572664554 3248003 778035246 247190908 609771434 491875854 137173088 294038137 505227744 574652357 974520332 285734858 988123617 173668267 69368580 6769527 420313519 70115683 804615266 743038744 68158146 383080513 751009028 148856818 114866346 387970002 807278982 285875853 141305390 336817091 248647078 149233785 440537125 31066133 189070175 877222434 40859412 99743533 688770109 822713769 314823692 902145631 976792434 129585061 758081378 281446934 867224565 467149462 563636679 606287204 90178170 954484435 580385342 417753541 381257384 27024399 916473369 241628485 633248995 537907029 910547026 933664128 764957416 787124906 638027612 797746897 968394147 895328729 718935681 43167316 772783450 726035277 30895203 121395857 913813727 326447152 722345250 537778121 241208821 592354634 977815977 668356376 474213342 736686209 191860844 327311786 114491130 808410306 262141845 852219287 596682564 222871702 108176915 214013086 211542925 417535239 644919483 470721741 970431144 668533688 934168260 265085923 891418789 417375882 950080420 848389106 467768205 708345704 959506100 732436143 72886577 286606633 500381208 796118998 664604698 813380963 108120380 773742708 713293197 526729340 334089311 323059959 699457862 640624169 703490117 940903737 150976715 964325290 817849142 492645389 93843201 804567494 555095903 938617419 644188155 476924511 212278525 251909778 335617416 218128128 728206252 138572890 631912198 119626613 124421362 253458924 207099811 297617598 162972961 861903977 287384058 627044729 292409099 733285360 366721092 977574662 721158490 942729459 929977079 44882520 237883026 344191428 78390584 974475495 946987612 838830952 52070453 504019925 786547699 828877611 626652760 361944394 580680002 129758895 632625666 676707868 792160641 972656420 772153328 136401316 408494709 740345218 756532492 566865281 266682614 53240586 673403482 353666978 113496754 572075847 760734605 650129303 396941745 955742987 538127551 436340758 86179549 65664191 73227811 119819743 878264345 479973635 228348342 438112300 325482862 541454335 894249204 76221224 253221007 259176367 541785858 424841638 989870647 974436527 650599923 529473566 448007962 676451161 169148813 446558714 984595000 931984734 840392376 340874374 947483042 673844635 442171726 585447405 774917657 676520636 547680593 968581244 812823345 993510345 665580539 429980428 116453133 842406075 536975621 395187038 953664796 263149760 231384813 721762615 80500363 691852754 97638124 396273196 720435381 705748946 827709951 763363920 630761650 158924768 928962519 749095444 347837999 565410360 97981885 334139527 748099295 421341363 115978601 143503969 614209016 754388277 829294757 612123568 494832329 717302108 598823472 567567383 457595965 376995645 993555871 802855839 725370298 21420877 973473420 909382822 377552500 736980717 747081577 715585313 426137985 425777162 160104502 400938396 788743718 986270658 286458666 611752315 676830093 157233042 676671763 428734500 356855165 226772834 612332653 573150907 458467390 162897814 627947799 836252277 168544647 657484515 905781320 994088919 538044573 514130300 521226489 92978147 377449534 209614209 821512830 817480758 779747345 563983532 391997096 930536845 735733211 179377370 32840361 36827761 977130553 457666670 786019596 736503822 716292616 171396545 647643913 743542010 879817533 691450380 478763662 89978065 152561927 468446919 348548749 846228463 841470803 5699782 454044085 443666808 196077254 824338702 62511508 396218634 146419160 649058494 671657127 844055393 964853357 922494838 298521247 627506528 739170329 666205310 337909832 682358087 961602101 472952254 394852152 865690802 420243094 327840304 488152986 162036508 205656660 676345394 794709436 541253671 676457426 903290578 429851749 198335846 288446406 855471774 955756109 797584984 951389788 179768152 999750119 960158434 809357813 714872938 878177101 713028849 687744590 984505083 495019211 142470346 222648854 841405208 637426947 230803468 594514977 275039250 585880225 605454567 215329616 782460758 606227210 921262747 227375161 32193682 650088809 602731120 309175611 188620320 407342574 124358206 829181950 148713331 876745391 783379392 838339343 255148812 796518156 703582902 301013654 996930703 912404788 347175224 986306906 297605166 216916748 534001000 732486946 163032527 280379710 244808612 17700670 239599773 467668741 454769637 685657379 416230272 378631342 576684502 768392161 431522301 134970785 327331177 150344147 647105502 50105635 170873340 336614321 820886031 8943110 457975799 513679946 725315623 86978002 653480151 982858846 979287091 968848422 803073380 336093987 182356485 532468771 751076107 373020559 677064266 362152456 538162787 837044798 530813503 365010837 459566237 653317803 55296575 897738168 587188358 268161102 874673709 234196393 763031727 883449196 640343066 187431655 700221378 662220638 215171768 13847603 198937298 372933851 314145524 257465205 914045243 151651528 680651453 160832294 607265272 579364081 639891272 131853306 273974269 793670361 729770368 537935880 826542028 897743929 137828891 161215354 858508450 770680823 466042386 11163963 243222107 976963820 205605503 668479276 266586206 602359869 118590099 736981074 799988022 537763862 638963684 414881840 662823818 505816646 256939256 598934630 290962290 241982963 397680361 305364245 347584057 503103532 713277177 543085273 109887936 405201797 838412483 708547302 905607642 349795009 787397861 552791325 697195733 501776155 332828672 514171070 228259726 154859205 634054798 474518829 474677551 965193896 976183340 670209832 409866407 420688219 398348290 570578503 394448547 627257395 744330009 558553462 243128332 879095641 510237772 187732699 68944238 94211431 101031160 456623482 30374723 992377674 8881502 257242555 144978632 494370712 350476804 854987590 672669344 881847926 56447733 161992659 280924847 886132133 598973998 51167591 789723279 608126343 493737191 756659412 325790427 425999172 696036457 178215694 827410252 997392488 748290789 992065579 341651970 331389457 733299984 425344701 110933208 873759848 581129384 294643053 839144620 911250732 690725694 141190381 445804071 353382906 773970509 200819645 682919659 815155549 617889021 79123714 409120900 32820278 886402440 20077260 119965683 47631581 731926065 145709568 327132528 625252081 564901434 816459234 949648229 109341104 720946375 277301122 422574688 582363159 987749882 863398513 602270729 713959461 876093013 658257452 86677644 192056143 89652671 907242086 532681499 574491180 904255196 150464236 814896461 469574581 956473566 296073227 655045230 527502577 460979618 974120405 940410027 444720615 874546624 9434533 712958867 556931150 795880929 773538962 399050911 924128930 670131454 8538943 143780514 131742851 791763243 97607119 242721984 662198541 174187008 180464352 742933156 848756822 764844911 505000572 445171239 661568928 159714557 757770935 789935157 330419576 360374109 837347435 391556245 134643920 143219867 456351798 649294275 808808780 503514429 453597351 329970913 565987679 300562644 884742085 721719953 91852004 424730827 109248578 999913694 388476148 260779651 814039572 330528596 156059520 434453839 305869347 765771799 420849907 448120187 774048250 874510377 420675438 150032819 387189233 442234902 476681590 42542630 432297969 212904896 29506285 243705579 570783851 92232474 375473281 504703845 708619687 849726489 991384307 381417834 412838753 99584929 529023116 69428704 645460768 579824492 696776001 961100980 756438358 78875245 855348792 311323133 201173385 460311864 548822211 397150027 735217648 684735891 432488312 109779409 718110594 34546439 335096612 903367561 942799455 194107369 134041751 247734243 252914281 970954083 166232893 322723403 664998839 950727202 996544647 644175935 749301144 762701645 533155745 662992080 215256081 229883954 905321226 461164345 285291937 234626343 933578580 635486112 476340353 297142652 605836042 801947285 513404306 193772563 257602605 980625619 174369375 608225755 472376836 442947547 257604265 668106993 652223452 794808501 714049402 689009854 972999740 856034816 217735561 619589588 201426173 243994732 788773784 943934860 900211851 829732111 423748034 49301820 736862249 116989217 248277964 149127614 702510937 907516848 634361709 122923311 676518079 307431511 188868432 667521356 741743184 611285799 247999721 857228719 585649521 231876545 811902117 620339500 425153570 331040996 467443071 541868930 44311927 755730704 884817302 236735347 691096078 654403824 801536519 157948847 3381182 433881352 938751394 848102861 38725306 77508034 744889109 840683928 2425807 387149041 574359759 422604306 164051575 595248457 353623624 933730419 947848741 264961629 679698672 573533235 552955191 849176565 463716296 411636550 316087480 247186726 75705029 623309010 728352009 632884536 362928873 119558601 40457157 223962568 557222778 894426366 416047544 197144242 321444783 361932474 876086583 799511918 217258640 795086089 68492935 319758803 329769398 716160422 642479563 449500536 263934759 334349148 189458283 94274197 767006018 54685123 363304924 493853163 491786092 530369715 857558679 720421648 338482918 165213595 402875514 558212844 71233960 672369556 924922540 980912364 970370650 567418267 904629487 36396864 363936728 279256395 829836512 210112227 665031992 69668968 167031914 737422226 269750461 487701312 125070962 503021251 56267881 639659741 747825846 519748835 569057606 499445730 471334905 315052411 467581877 169768976 550239825 847545160 183690325 195329124 167635370 669133239 798376464 851020251 730248718 166241154 557905691 382223210 437701194 484367341 636048894 321798556 527995784 30541232 317272647 922573749 53508490 203463889 625210662 747404109 189510634 401398438 89201166 423616809 1535796 460507500 255286056 474174321 805668925 175204007 421629419 156873738 499354093 695493089 398061071 315016258 308027837 82681418 164334523 356967729 902294202 740615308 624464008 721449515 812020675 652591803 336561308 721949932 202638377 557892845 33747368 295895026 751536479 127891332 237763336 293770615 774422776 864652290 254040792 332300905 964706800 945416994 997876233 457071770 250471030 47671873 693954855 64061604 195266498 914750610 106090024 60106709 976706397 14916557 631727431 390326957 248381201 217796321 774305443 741219827 332053100 211965428 311985768 686759409 189115601 856175410 585830767 889027341 429279447 875536382 300259274 165370043 103350785 89937758 810633268 619928895 201620369 388006274 799339504 295200284 771018312 446140788 476151681 485287357 450510033 743570253 951536135 404338847 226042436 608756722 37780081 15297565 991822673 283744577 43110846 81090184 168297964 70451792 708612948 96599587 648203807 477609028 508213171 607782909 411485221 776342964 242122970 989696247 473601291 226314028 722575928 48673263 409308187 465659427 318782912 105167116 876294512 171839507 677665064 944843257 319428599 176652113 338455357 119437183 352153531 649444091 288379804 772258637 121367842 861496632 339615501 36443445 724963220 254848823 773922006 130096228 295365446 953521323 137525712 643281573 868865288 322994667 498350848 182702502 214364904 561353528 402233578 419676019 629365322 7316661 345126769 621947201 388589334 770672091 515516537 837630453 557665480 268998797 489987069 789018484 193624574 953413753 636779266 286259132 409068367 945684479 166141568 556604106 17487003 926043337 24361393 83689815 297619303 845559515 52724861 491943121 193696685 83602364 140470188 377882088 32566072 357552368 240609539 764525434 466602028 78670244 374200830 272613489 894166950 221366810 610669509 989889287 800735092 929166376 56600837 354210171 728967167 173171126 863439272 897329316 329166251 964366004 159596054 489541836 89784554 185847012 372797333 293468531 847973909 752696448 850108806 748242892 272427554 119512183 323372824 820314828 420124314 870497807 898786352 736299845 421976483 379695535 699889740 989501597 865535962 891741692 703653316 3974763 242707065 346386816 249492533 191707611 620407134 578278125 890135106 869329053 384605467 305475705 300464004 761360108 736205512 569704634 472937756 16364145 866312817 616240589 61133760 313986106 359391951 14452500 39418536 303663920 427798936 419208849 371343514 725139359 23604861 69029882 992229168 134002370 817153325 393205968 157670991 133106947 514395568 241176195 432497871 875961233 726026393 609901082 688825072 301530071 63552238 132380826 121203322 625270007 848344765 795744178 202535813 693308018 812909932 868683346 908790158 235903182 480780090 339305777 704863941 424788098 616820424 863060185 548083940 358312167 716201157 270662852 830714299 864121682 55853694 752923613 608919832 140916445 884978017 913606781 264957871 66243367 463630817 635932980 584653857 221485636 111968782 473380441 782250331 48155015 44850124 192458536 845329916 673249406 944294433 10428299 610338380 269878909 877793065 876106635 701665625 663193955 140640424 907423910 235684149 676993590 233339536 734928962 659103256 834406709 677877936 827108530 302073432 620817736 702318494 588089022 119953458 715454559 731252291 99711009 539893803 121771456 344797600 411515819 421986567 510088732 49993117 91320285 298644585 739952365 94546150 150843905 171766568 261476686 306970878 841679124 195119843 831734126 719769130 579409390 77442785 729805903 900193631 502948715 379502598 927176672 558169292 347957953 773711803 803014357 279716502 332556514 833284569 13743503 926638234 285616956 442275054 101620214 859954780 540375727 283183405 570783159 265633525 61979828 970217020 193453740 941885155 770694091 199657055 152105519 900915500 895514310 724300760 479994461 46581326 5741400 916904852 841210363 757045340 489124110 770074250 464331874 557608029 698582528 437932832 162838180 762124416 411180058 142538875 56853489 348210055 782014322 451839173 684146530 745478759 629765601 973350268 308701700 752065224 514302781 678888 158998258 327009296 154015996 24910935 265192041 466132619 300194 18702943 306243789 274215939 529071221 979476302 557398568 633847890 858752788 507716725 284770345 354771278 215990087 381611710 689093654 44092973 634350481 342519229 218129121 617052768 61556813 190118858 766737443 89195335 173880340 71935396 810699431 486985190 792535173 441688085 224660303 559696317 829869537 979210392 615022284 122820710 235482201 812511903 625009815 211947902 378178402 542571011 554824984 256369367 477008037 510154073 603858943 161448513 756532257 568065005 208558354 456878467 408360410 329646302 262231418 176644576 61791971 803037885 195223993 226884178 125893727 487323415 720218421 22319579 827532735 128464082 173429474 294462654 637203139 777495611 861528569 54111715 659630149 533451583 158525753 217371272 963159857 922072447 699858342 760044869 882263107 644261168 821166805 91519284 584626175 623004065 160991259 243984967 464998416 900811020 508657516 111307183 391223501 968769297 373761291 848947442 142984745 371631380 402696139 297931197 565952677 644061062 909546463 695065334 418504519 325358812 535710543 698007784 113710239 17169307 615723093 348335936 820560980 799742996 162073537 119222388 48311098 511762169 589546761 340169590 546725562 988337958 732642999 845784649 760425876 547325367 885117610 802027433 487385302 528716661 309488554 148420885 921086376 273329043 784621890 107122882 466784744 17523762 171355727 147733159 30149407 813192958 16977551 419178913 513044188 430114372 825681546 365591359 787418867 23677497 300955467 893065642 310233608 819281690 814056062 989737055 399851092 712446676 207315369 807282421 244094239 428824539 328827013 523768818 198318477 406432083 612716563 582438890 890224552 931693603 540151641 320127446 392505689 910412456 332244483 334519056 470911297 317431863 774875025 683442723 532444543 946025865 154489895 965056601 935816331 730465388 866683027 439568989 447702190 804071481 178912133 611247900 776715012 844199672 877652546 865921348 527808792 37169417 684756815 320569844 943696360 330183290 397938568 288660517 681058687 945261332 717414029 506556510 915918695 29538167 214830496 662957676 403546763 828600519 392879024 153282957 36923621 44471576 790701201 512242647 37155010 394781492 506122784 407685585 327734753 455159123 481418901 511980177 550172402 319057860 297946618 465474132 879010151 508957116 475023788 947386761 180068282 410106768 3264165 552930239 467620574 926220545 426163237 356298499 831932542 464354780 114461884 52609183 968665604 434316384 710093923 252565372 615370560 765864625 538117320 348742263 723377069 54499685 783279847 504625164 430863582 94434041 21353877 843353700 234369326 148624665 468940904 271035830 977479904 186257933 82167200 761772406 28418629 217855631 543010145 545116469 973442370 389308639 210317300 797215834 222639385 643147092 63929572 523479342 212246467 832620986 156950056 107925596 293151714 647052537 600109319 130163964 554222418 51975279 965382803 133171757 455002996 413402100 341461962 106653707 427145483 356113633 222824565 418134901 79151626 65533327 246487079 136888162 578935052 14289356 355442736 659883245 248434026 635063143 344344056 870696892 578302547 461352223 922199898 231351242 868741006 67006383 224610490 262833498 269805578 141807850 452063831 828704625 764044899 168746436 38693798 12007334 69334469 795323042 751492242 895941233 130276440 276396199 88979256 103655111 525199255 430054863 963822489 537223349 241774585 878250137 802343788 200087167 318178605 495056145 751958950 949911859 471340962 607546874 170216329 27337508 438755727 949526883 906650855 191612977 535076548 287659772 49824299 465642856 243962498 431949091 876761218 898873759 260992292 358056408 348756111 949719751 697465149 929400110 103415490 570365599 967723816 156320513 596974064 134496710 596875037 484361831 752499803 259627853 563125493 687261231 725807147 31564568 642066806 767914796 712464055 94213540 658373209 326089820 907206083 877866506 170416648 161471911 867208305 662104038 456984388 618703735 13063780 731860359 72755450 840498106 798519867 563663770 316010564 741894353 489786612 15088197 969939506 528547704 480753897 1204130 967147915 750998974 523036894 645596839 120179660 393300148 577983368 449876485 539964365 281396164 258892983 717340161 110609610 693184054 143499923 212506086 769791354 153344397 119244369 201068025 39706767 839331630 133546074 583142549 769465105 434781914 400136971 305608881 127205723 24672401 556253612 205488530 928558631 609598758 971303854 663314647 154417584 130760350 196577033 472084931 168146918 617615128 806467096 267377215 956874184 986626617 886459453 568399208 402069975 837993603 771120577 246102535 106018211 986334398 380743627 982800823 868166952 426253387 308377191 784710966 68443110 469042390 682838682 84484576 72797365 33258668 667284872 556317318 168876191 501250948 185359617 613985971 538372171 48487930 731396178 828588631 425612992 494690086 639631429 638747961 478161048 54470782 725759354 16772515 257335976 296115427 441336782 88021686 718775978 257223281 921357480 669612047 28652122 340286311 354481143 9934071 597955210 822908793 885987097 857474962 714472018 140725519 940175592 646527816 194021743 482403065 576459431 910524153 602854416 625759169 377827588 26182053 928255605 626568288 594726974 787145557 374533986 606830007 206070278 26548401 155084307 211945907 602887151 835059500 602184984 567190596 589139607 611210456 932505988 816006473 599494995 683982242 311236901 465573663 797587576 915410206 221980074 281067420 231192405 533062492 561149946 460340755 223249292 609802202 77553453 300121102 105972511 399619014 226753817 79279918 753014273 586503990 401975071 425259363 334788513 544578331 786717012 466360742 205121768 565097553 604477647 292984560 337267575 170816054 889009843 592043056 194611430 454765673 292771625 123454888 115594421 533465219 383424640 254271760 806225173 889289737 516831863 914830111 249468858 526969943 884274357 892070703 354660132 805271879 47127429 14755919 849296040 62152658 982332301 898593925 8694830 158482457 763373027 164515838 236731330 142938543 728021906 753447839 635637757 741423296 595363154 359325626 476542184 112612616 700538844 31532142 352719361 911540248 243405947 221407846 761863941 902218563 957956375 441812429 182919875 93334321 174579952 734590504 106836597 867905663 337528502 519607059 176548800 428545990 862971881 549178052 737619961 63337213 31753908 808686886 123855130 299118226 297931293 812417391 379354953 871088090 683984214 714043294 739479110 434177932 662730198 329613133 825599961 353214613 395838802 903601179 790373801 176440897 405211913 953094908 351815808 24121111 789856960 565048231 398846691 100069037 527787634 759584269 35866639 335969561 590845527 851106622 590541891 180240149 18658457 614817778 158434041 16345185 361034646 528696041 911541063 11683485 690470355 105759208 681898676 494336990 363228365 821532641 72363495 511327249 909216481 148465494 809347500 798821308 752215297 55925950 480986821 21215351 148536954 615041289 252556219 691637755 582644164 126693337 80543759 18188326 658647675 188944404 224673796 187522223 352759488 725041481 226548952 668680880 876608790 417236677 994754450 948698817 609211343 28090367 6153138 242130547 531222319 195249696 46880664 999291651 113140262 907257619 186578878 485712913 637138356 54727357 934758307 136982631 847373298 158774454 543025105 900597876 599568718 362138266 865154649 718852090 423584557 337493951 894839257 790029780 832654287 222187465 410697222 408056499 75073336 145406282 395328335 288889677 693830615 812210720 651730271 79737689 458005066 391827032 616282486 161465014 241389306 637917264 637434612 82787781 363094042 436974551 307442218 931168840 971765073 177283341 46635874 99445425 909006580 352224355 127835568 93502665 653374994 287443137 253703238 432092233 742255186 36893293 108030161 431720367 149729846 740736581 121622758 850203119 520210730 108696902 755592675 331015472 86789037 749986901 81582271 191563808 202596244 248154364 357396247 724421278 350865854 501264559 195299920 72245320 351135254 332522953 46095960 62461351 978016926 927078720 8725818 572765295 663378744 603080292 641639348 918696068 527991991 570911455 219882458 311935225 575046464 833371365 6567583 689096945 806060248 2094278 733973474 338253313 125594455 109253227 607643487 258453768 190104366 440589697 208165544 731121006 68291415 225230615 632670637 402228312 651967682 937866131 289993217 608003339 360852192 513882781 799070554 295049196 429832740 503714764 361923199 141566299 699862090 641238683 681887619 377665892 753826534 101934739 867098047 451270706 775014690 411272598 439831204 203119468 918971241 132756646 169838911 634919093 43337356 603968065 78445327 935756580 119660932 38246368 267146377 168623873 270751705 111565262 688023754 398520224 436492762 422939068 138139764 913110283 659382124 274863816 707659240 832992988 96925775 807880981 947795197 616471369 756432598 876593761 961345342 631005417 260887678 484222246 848107122 793206954 127280531 750368384 468261063 952294839 265693773 730789331 942373720 116280967 973456878 534217252 417079584 652926729 491525987 59929260 990241046 276084584 589452958 616293202 552132678 75630638 141154056 326331152 995179916 785484313 336867864 286375514 49812061 304027369 773302260 292179011 352064277 83458134 554108099 833940197 638567524 858036214 744978513 719742192 938091653 248271980 578012534 73212427 603265414 21602439 252504118 707264084 207424059 790320691 108656888 587521166 685582006 738577051 369343428 158534557 816251805 769608094 375880617 919626734 734633508 315057355 973788037 370047538 959522456 984708655 561938886 639774429 775895029 625390894 863365924 474147283 522789107 641349279 81967054 127444403 532705845 997291684 550513259 362494452 472430486 171812955 860836537 390282968 515474073 294857511 644384608 3407675 229596874 423793527 405965321 562264136 493070654 50386410 613153825 421415035 913638175 434851246 939384794 521328134 695146470 540222573 741990631 101007428 865068853 733100932 205344558 130714241 650077832 604424114 24518070 604833168 252004771 832447719 880315948 275632703 649380484 933942420 573603435 755188184 822211604 46680687 445102468 317034318 814630415 899278550 753839482 410278743 642552509 463481333 616609960 135165941 359563943 1439672 40557192 914982206 305733255 167249146 854027229 527270023 909060451 323537341 719768450 972447900 631192856 797623593 453396465 711931316 212126139 836034936 563349492 25536616 595983521 952003769 98801228 837933344 37433147 246038572 412483099 597891218 702251128 649969882 461772332 464958825 955092254 427979177 313805257 174253266 633677993 944163288 578671135 413420635 657629422 260417381 240779241 612317268 862592587 493058952 93511944 578522714 129024790 750163304 57990617 731055149 70285122 643770309 811562260 335052093 970342459 508777066 294638503 189857072 545538948 840390700 769506282 343179055 665259003 371105820 184936965 703362752 77271937 18732212 904617800 760953431 434124432 255122852 412265169 634180949 463166970 910773288 177456990 326883195 374941966 852074563 417462143 732590201 917159259 396664390 855753768 79593127 729248773 628817688 684174566 927107461 511201855 481584134 957978822 594005860 870974797 375474298 908220995 907898482 264681032 918876746 727092848 783520681 881250228 403579531 871795081 585940315 623582897 389967692 570319694 498118191 904731518 169219608 962529022 748203603 501326337 783479619 679077343 347798142 560516994 902410307 754995911 365718357 277592844 785274654 725799273 623314687 801079905 506229322 927214647 620971727 898135346 261486269 658969571 335230812 486192332 873091936 490442422 378660716 382524570 203554847 110758635 270868184 81810183 991147172 638735439 58955847 373877577 424367271 435713969 803671961 515459688 440202504 246674689 92324750 972212663 529855950 542092158 355930618 470480090 118158469 735225098 597684810 63990987 951015081 449265861 236523589 676198014 907688745 32192094 981548472 109746628 677624527 924601322 149011378 341305469 632851419 424855072 600833078 293739372 57422362 886469672 358167575 131011646 896943243 640523254 719909736 530625306 284740485 2998188 304209800 598702635 534952851 988364218 983513415 117313707 735149908 853746979 854387348 821519200 83134596 886311681 339590518 170272152 577224864 939409129 137750893 191263103 443133598 216271676 590189247 72452432 395323733 112786355 250199766 989324578 893563666 326403653 805945703 317962918 938479316 67650052 123850722 46031526 538682279 793244907 389128504 112946915 463723447 684100611 674158497 439738306 206606168 280673340 941680625 236109416 492977859 357052551 875826908 551612531 103588279 735984932 490638029 660153473 199070039 806853693 665102887 117763734 554474324 946616659 784762489 237978014 703135985 879365599 999193050 118608672 345196368 695785300 459605101 467846304 685176149 110403374 915480172 599401930 62822863 449160246 463987692 720113578 455896782 209065433 485461922 30641053 320877559 633376115 503317453 71543931 519231116 585596343 685475910 310382853 78733942 160794539 41714622 658247179 727050231 163969269 459429534 565983213 961158210 658634237 811305973 213023497 922800597 973136093 529934790 179574428 16700369 623474661 935683543 594238550 132061722 347623295 609793366 590324343 253340935 894578123 600606494 684178017 503030710 378399172 869090225 598245088 4509268 767318578 68189388 499987511 672179159 603095959 283055807 556098027 822006122 748701790 114874125 604245335 152594854 713656351 955300041 9433786 953963493 1611271 348729316 881845665 419509147 515233830 819866298 690392928 834966501 481944435 745646663 573210545 73137483 773966295 537623960 934316016 417730836 284065354 820217183 598844785 756291604 860896213 720798714 9119971 277088574 994243418 816725532 593418786 346848401 964224743 767211360 280487149 615322665 490720136 398178836 785030390 761952612 23549061 738216935 940358017 516561094 450637636 660962178 312981151 567717991 426277462 694988942 625658024 674843266 131832280 430428698 329145585 615091180 511761214 750110241 664955946 169284444 315512152 582822033 795763351 639972684 175301093 359333462 795711258 910155458 702090397 271761824 260427936 729914097 874236391 697546723 408317508 411856797 858050432 716428036 655446609 317981403 39484562 735250314 821032851 1944897 991174783 443990654 348692541 644354122 856502935 433142262 288661463 803799720 859332413 487458614 901611098 379817192 642253866 759006219 899966049 310338325 469605770 830986543 437947178 811872141 631572951 873592416 793272463 41259033 399775096 493289690 27669569 118591236 369269347 585893389 295303164 557313431 412868591 380186554 566042141 262597035 972591100 309114286 445900495 829758888 515838935 262258800 805051758 285093308 108152808 429794291 441419818 543096251 414394175 590364534 123761216 909832451 994113558 198658754 737128718 215867174 281297880 362165751 62593457 729789946 378497457 198781327 69975250 38220252 645013772 616415730 400021156 612033465 617514012 215859366 674206876 152498057 677707775 102488881 200768598 531838119 855097860 211010468 483649132 350682853 598289529 729653717 411282077 345083191 603756432 339037400 792975115 937573890 741984410 292003875 12050872 45515449 275288818 362941364 540692149 68393315 233432217 447348077 806626264 372394053 830152085 219110922 560742337 167144873 137266788 462721727 51459729 802347414 827608277 436929666 393014302 1845915 405837616 743151054 318810597 974301988 665362572 158825662 685747182 205952295 122815507 972399241 882687375 981168243 670021070 66791760 982776098 977969934 522453775 400500081 325278914 887821419 435528074 643770888 872011713 630895567 886097576 478128392 702061105 550003147 424912464 422047890 857391369 84094466 110171846 646437862 40606299 418492485 389482747 468375017 188556391 348446124 666973065 747244411 640002234 708141594 564062671 534240694 783122449 596428790 771291879 758084740 552885015 135007189 345374204 392540877 988276330 642173722 432179886 989032037 278492389 35693164 74343934 379257738 128310085 940784336 291493295 289830908 948254547 589455091 935948534 943779200 586751979 535885727 276252683 258252877 894894759 827967241 651449720 567013833 255684867 529948137 712325393 180425997 830278329 737796393 764609261 772026656 255953916 644744002 137672993 119355707 294553870 258479496 346573039 130019800 391155315 923312565 994657527 966182742 403319696 792118885 690276684 929098837 309615824 129378413 950753374 55794633 540289500 764415168 717595744 648286509 411256424 375629123 521489195 716722557 373813268 745300504 107134764 997855310 235033358 834581661 293659271 621913445 723344 21257671 80747645 627544776 201984020 246830418 909583138 934544373 951775425 221454180 984861622 357012075 716229491 457043525 89747218 102288916 687288666 222882850 392817186 700282390 190180272 791743950 415886329 804930545 843654728 437232789 677512851 768096004 887485655 882515440 650618224 223216519 977140581 664754519 599568845 897116904 697854220 563693997 208273644 98803382 952577972 752832989 541468071 398583844 858920908 80016878 601605330 770523133 977790596 46462901 372282797 649680655 562895835 425083745 255695983 935782896 104738285 350861870 334678174 368885580 463880764 333265570 256483836 325418037 342549254 362345047 944751748 49232120 546333435 952313122 183759424 802628246 701437059 50252347 490719996 672996762 976768306 342379238 867352569 461798986 351267676 312645713 9976256 649285039 925433161 300582222 765132381 384631274 966450435 343854701 46090218 342961692 621572865 991666760 330846410 282540391 360125681 682751711 838308008 220050073 966708415 672365916 608665407 948828812 252089077 582738581 627636372 247436088 881178065 498118341 183812557 961324920 459600104 414217600 932786241 920876372 777736607 27174094 751469836 939024014 14601541 528653615 516684699 960011297 427656373 828401522 300699289 718577892 56105539 373370910 901935895 569353246 978905210 387841711 663188411 107652783 140481635 939896880 367902875 968989298 863249135 571604027 206101232 446011667 6187145 502030907 227298053 526762129 533735207 661740653 959282363 76570689 690310882 415187577 123056147 312788195 950846555 632062497 7846942 846906985 689618737 275619865 969918020 173236943 444605421 311136101 476327946 87257937 507406451 871610797 663559869 978775865 783667411 909820794 407328264 420037447 786743741 83016455 643125054 377029778 173894305 625582041 183371909 762176500 59344209 660462576 560995556 329136105 167319168 129666016 5420795 66270239 174984317 975164053 288601857 608698275 622277411 782048950 72341468 748706800 479031039 95053612 26729629 274389117 493349928 93891849 476261456 91009915 385129277 432297124 568771343 409335066 413174956 327777966 620321197 898108490 221321422 38175212 401344123 440649711 817148110 227397703 200989036 561075250 27047070 601849932 182683449 405386736 882321978 759440351 338492560 473182988 805914000 534064082 748245544 722613922 337528804 659309966 764892739 521072648 56400598 341081877 316012696 375636929 574169017 866343436 239679270 259878531 246594809 790206569 519878216 551908540 407411771 508106918 691391056 631416671 867001800 864293833 804487832 94573729 343168628 480976546 477388663 824226606 934280918 638428179 664706517 617321987 528272970 351510667 308157173 608296679 654940888 950429561 683037319 711449898 171786727 23343428 402317928 483004564 548200256 531905248 799897067 851509839 234144304 34051156 457856051 204734082 181629719 116567950 825767950 470875546 534490526 275193142 309846267 611747689 205394031 166157691 127380951 926647334 220522553 279256512 223603323 289066939 989766812 890130736 518953321 643835765 678191276 260606639 375273538 653003654 121944489 940793326 942612558 448276201 778124974 959355301 952053866 792115127 514359433 42129316 912950367 497584845 946643541 34400799 208711090 520479125 921177892 197048114 979703286 222407 902807355 976743537 373408582 260204 337007856 754612747 361041492 657115020 729045979 898516800 816888168 343759608 568880340 930391465 152734967 186872703 888788588 439500283 408945072 292161038 765966806 811981875 641834494 682129660 436898379 991113179 50927729 316395579 580903797 610398414 294919045 884846564 842322873 218366288 616708784 73883151 191152982 370226568 618008461 962662162 388195279 13045654 384358971 74875308 254147466 530744740 467497314 231001806 824770534 495890878 250336946 769192174 53016224 273850507 918101325 883561278 454357669 26860980 563818376 369297765 689618612 334738447 297934431 519756393 571438354 728347282 272346615 55509242 970835183 285845636 112307194 224636017 915431759 960658957 438579142 61812351 747483866 672527281 368964389 531809436 843501121 537664786 291939672 952017236 303260398 216314170 75722247 328636699 476493528 82814064 434263072 156948128 574020261 858136046 718993435 440755968 950047519 956468056 692379630 314468273 724138268 914737470 484345243 997527425 301884156 186478029 702073727 891299825 868336784 981193138 792130892 404611247 269682456 630729966 758502421 404384733 645385119 572906889 379523637 200623969 750108171 548466982 530716796 948775457 616448813 228487093 173155404 177724178 741946112 12923454 421498362 480932792 260912851 225425468 997973696 402709220 304813720 286071390 205245515 593728640 572148357 729894927 697264094 461505731 138750578 207589103 525990809 650816403 332764924 625067343 239509934 889576040 271834473 760160796 226055588 742191721 359176070 807448858 670779707 632465670 969141496 168013850 175598240 321538147 486800849 539345091 924822707 692348416 181803724 512220058 67136827 194810104 860592396 507182811 460012338 944568457 630479450 288892051 696704225 346728542 762743297 299523734 619472166 925493507 754510373 195092527 29958740 105028727 914119058 685942092 95283473 530685818 687926530 769817128 754166221 276090418 302305318 221966851 899114116 586538535 924150020 742059 684358178 310282211 885455168 239130054 687758134 302838285 778695087 184063399 207581584 569566821 475733106 813914750 739131091 481953296 614336821 79102972 280150019 179532891 976278489 890418079 653106478 201590243 874236284 987209276 668086855 133721555 483153759 491093506 863041570 282340814 336413448 277067891 222272751 213056782 82605258 412522226 806552798 929333766 819230739 950299290 506158816 947497289 700114781 403590081 356663353 755171486 999331300 319599822 416918984 213507524 759129909 47362695 579932277 955811071 862057143 310641622 591631560 633713035 991971731 890032798 447947518 166501378 571949933 972315733 822804516 504351758 718312656 439575811 531865370 640893372 960433383 614205598 56226993 37422321 44660964 636190363 990840776 627102327 346335147 485276514 788779686 159608673 763694180 495278935 887929977 169026577 188679208 996663078 444508437 771130734 358156784 374935263 751979585 483851487 873459824 966234764 466916559 988924087 702396022 987840535 545816408 32288135 661928817 214903639 559127798 401258389 488257240 460891099 515446622 560624889 421599797 271250895 367305045 579811231 44084325 233876035 835550682 694854277 515293344 720004414 325520886 372126624 583897255 501351857 595124657 618342820 50435103 14609814 832385525 798074391 16560824 255280081 498916693 797730023 577663791 121634942 666747117 168044508 539323583 981361160 842302969 155358032 507459774 387301907 329353436 398206817 663433088 884981925 559116796 356906055 25158560 938711196 402312112 119754027 690791049 414460141 762691421 999993860 296832629 294946004 379510046 278876140 152652349 138271569 25190011 962585308 332852657 116861737 468151617 660949882 44714240 244306808 902529840 62664787 956992574 949814177 395686021 515223908 907557467 748201791 881944294 504986383 777112347 994230241 194187966 810586361 367580522 252871533 144799242 668627740 488509614 850410104 110810463 191437681 139435338 498783845 783579470 606528560 410132037 672071366 183630249 110865925 862763644 685880941 10577660 479934516 497867342 552886695 994265703 382671157 974585596 241908297 384294436 328199828 994218979 633842978 23421845 392700987 89515509 115576569 610737646 823866425 976149199 47431118 965418697 136098120 406251628 568610275 613825064 458864998 950408690 18756099 793241065 809001463 982106869 111844250 144157501 242659963 753722679 713069667 756569341 398144920 142934010 15709846 469863234 691451598 93647544 346400633 311883748 63441226 173191603 308974995 649964748 34983742 827470614 323315308 518280112 90012323 686746252 103900406 680185623 195895966 10798277 567057627 857867988 79748766 133547929 824405703 969123772 610166808 589141269 561698684 157007408 122497014 680664606 449730579 797551942 438319214 930981041 373679618 343222933 102006302 140253785 542275800 184627916 733971632 866212944 274933286 766624868 809521738 865234273 311264223 321821708 313353956 834639665 160216122 510450527 353967864 886971664 830646231 480617289 375880181 350193863 892039434 244668039 840950046 791116316 965992157 696204746 630479769 783478536 475086877 771323730 733804414 709903075 406240526 882034098 110169923 130394246 901453780 663981770 367459842 334104927 981313536 440948817 96606285 525744519 719905577 552370936 765361986 44203436 92860524 405965196 223351345 268982040 261767336 96625482 332930574 991377704 83905943 654389141 535773607 490638519 453526597 599194122 19469455 481955581 363699677 212191407 188844591 138252286 932971602 400091622 413946470 736054056 216167735 399835248 149686258 774606604 960561687 120064606 333564398 946789448 21475754 613805906 747243097 881952404 947593804 190900266 339708296 92987932 967173546 333689716 833388578 931981979 370415435 183036486 272024136 922025860 115672808 623524361 391191308 294588638 772482989 396304996 224686702 801738165 979523032 212289193 908174532 102582526 462825164 609572814 495672106 362138702 687850422 670837555 842644168 715076211 343724981 171702912 467752720 100079747 763491932 120579855 429768456 62914392 704204177 256456062 996401078 39313087 717966454 595310023 776581325 502480408 374746456 151451413 686920401 585838675 952277062 607928773 996899289 608919231 379347112 450495981 610541206 761100748 148103842 897157147 438128756 654969829 800148490 483244853 550415017 876990853 431624632 281755864 179279557 880712621 158082453 91792748 494131608 962958913 267307344 119510697 12779082 973901837 222662738 601237512 321802824 498314871 352528742 372243093 810997544 254481440 849310187 537559078 498053900 633003993 971907415 484558911 426924809 991865696 420719811 281970423 865124468 86657709 784144265 904024737 261624875 650289498 974648924 856921680 713167945 915117207 125198362 461396866 165822419 284614051 576418 959231044 371602366 907507869 473085444 455987084 685919090 132142560 876923475 278803644 462209730 783253968 590644880 831779952 401399889 449908546 276889481 451328821 364361672 183440648 95271466 347002438 346212532 357122303 123167169 613968822 627992706 963191362 850312726 718222667 277255035 91937884 385952416 917744252 472750736 66757624 454751630 981649996 164289312 576329326 809206588 608679157 685844499 468735234 566546888 772209506 611718874 763782299 103940179 491231270 716063635 287987832 468726639 838066603 745344881 84798345 154895199 751471012 314620375 727774131 890174333 871884473 19876195 166113652 216856455 841638890 228970249 356761935 384084120 11212886 692057298 397453692 494811755 937721323 273754255 462639737 910110616 844817211 21701017 334398382 552204629 129848506 739804561 588701665 654576867 719914427 438115993 530359548 154014703 415609490 138277517 944029891 776406751 649658129 364182975 271177093 943447619 646919929 445299873 435464730 675052916 639103021 251204607 554494446 961955241 505750959 648824036 690150125 430718785 375797346 585753653 576370657 648648153 401081684 708954774 637686831 75086764 919101264 674954685 185732285 404897986 161297346 844792852 92285523 628908076 41360037 130726712 52868346 309409371 827558726 960235233 842423888 205425191 558362454 992144173 455995417 98274357 275412809 181550763 581142376 958449800 374573689 946228311 305783369 161720406 606369460 251215549 251786127 483121776 476945273 914393268 313375417 939829067 443790893 107752772 969552026 945878985 808238421 204498654 20009646 204083117 235666540 341038531 240728059 586914939 843368041 889433780 19493673 221291962 815360347 745544014 604339487 177135761 582385562 292880993 477190371 263170684 540171212 439628083 983872132 295490800 212534766 175852114 801996556 457803663 932328166 481491404 988878607 152886000 812110983 494394203 485767674 968084776 440593257 708454849 977418635 921376309 900866568 296169312 760720210 714273823 713772404 905598279 417523150 121563353 118788689 247629877 300988439 222181508 313637488 235455116 379694653 924405610 541711073 195219426 871688802 933087580 758158931 146029586 77170603 747222286 863245068 661054136 902026369 21166199 713011411 351168665 916940443 229627646 487132808 189595794 419394824 746532610 49433034 407629091 532941477 855533541 93195652 185186070 423478406 224662601 80276957 634133538 983537526 650081560 570026986 45794664 747362956 692941844 633827827 329356495 211662347 877585170 447617711 444711644 340927824 365557328 236100605 109613920 444005174 948233323 98954825 49510306 61169186 38327207 195654971 964435566 128504274 821324508 365808756 224322244 592723123 452151630 802025252 896985924 503672385 898013467 115818532 436625480 321062433 540500774 452287951 937563367 675870457 38814025 309341607 705371208 297390197 41098659 72236717 250257884 960116934 431981190 682168338 719220989 819088785 91536679 346946699 768779722 299825198 628427260 274817501 301585713 785549463 395205166 783353023 602432377 766998443 853817355 496915678 106425050 288929586 151450108 479620028 903737235 843378400 372359008 936055670 811635251 858512427 361133281 46843203 408485683 448056536 499073579 252060256 233096043 696003807 41367243 363325189 19660325 329492086 265832258 70086594 169039459 115640020 732457911 171853632 756288235 763218159 231777977 951439507 890337317 942428380 574897065 432313492 477391218 555706764 974972894 146981153 191622844 195006599 34864438 340213162 387441378 318492643 13451887 704795644 38830268 726599224 989048634 232299689 653291279 516138594 311338386 793782840 602397342 790321590 137021365 493380738 574321265 160905701 694887365 814092457 146322293 904575928 804503788 522528165 852245297 840693793 596424190 507620117 646431778 622239672 287515282 280616247 520269115 980621470 582700886 197659188 65919626 788882844 7557232 470008851 164976016 30798417 782314399 351393060 340775094 705251973 683712212 740432682 282684421 394821130 554913271 923115837 91562895 279663203 427672600 30026310 205799996 212437665 603838333 688117429 805766691 356222890 217789097 596012001 596889096 438688049 788369008 262474258 707217383 321714378 412406678 566800780 338154121 970379731 85179034 81089472 217667647 494612977 355284936 374692198 975752667 10062785 174514738 571833094 305584340 121458914 375995165 829966078 379853084 985679731 908500591 734316197 377281097 457044067 861594333 209652949 287868745 684396794 730063340 209012322 431831123 249376058 574212240 811405671 733710782 594198924 108612899 178618338 451154386 341120478 75718493 475165652 387507903 859975409 210414534 210603964 847175002 739150407 756728824 85054680 249167069 232763302 323900100 478610977 640539461 789389828 532164528 166834094 477222484 770885961 891589452 56337527 293836123 448603660 47283477 524311927 257028145 675886127 610421890 310040824 550219828 525660474 627023802 639823856 459843707 938762720 577638902 681527821 735814387 882612269 886855772 867290324 79119630 758726575 712028640 222612332 768245445 327622395 806829406 658391220 18592360 648515210 265582161 731921269 560954338 102792722 413277483 662654541 46978196 447104457 575476593 951495239 191787143 321794899 839297496 302485370 39733069 500620544 985541015 193484418 775006331 775557113 94299126 76344181 121903174 60202453 918158102 594795265 455098415 40398293 596263959 711128552 258172611 339802699 265523671 8461758 230963069 596556615 244806900 473041947 259774701 554593527 640948669 111834282 181397833 617590536 515088976 351193884 348487168 883407815 687883208 964794457 684116021 165869369 761510060 766539640 463733558 208482507 901045634 433076518 152171574 642026260 41591665 889387306 944580286 562168890 896066642 404906638 161350065 76174868 750823716 400405543 816655182 596807370 48393785 387408165 211516839 884768729 927129821 570376631 60745694 838262456 192121962 626739023 692383471 371507169 88102883 719690961 275387427 862660012 916541441 219053915 854005206 278397452 775544829 436333837 296763615 354907507 172301581 71698552 969215964 853421970 664345738 680182814 823773017 206854743 921294410 478963935 218991978 47899230 234180677 963342191 441514612 768356320 892667994 150700200 650969168 308627236 46295804 362951228 119678743 513866846 330257523 268798673 514202904 8413083 376239067 244527221 650730167 103052924 959205964 635926986 243195206 396682777 373491294 640237556 166628716 461314668 837583086 565072456 945089687 919695061 312370600 171577293 365480950 122052554 280025430 248337955 519604346 975220637 802796679 762208577 228820107 330778841 652946402 287827303 931759506 265202898 59687908 449877030 351379635 315462104 80986256 353946299 369815996 133885807 992091518 888145200 44538885 125949012 780164810 468402518 819385992 418566661 23834575 498574441 95505909 290008860 532538005 73854220 790084092 328999604 112578198 580861973 28145814 594948811 367722551 712539136 787884190 268815632 2870167 985629535 929728422 70555939 482376321 740244703 998206381 881576341 130517484 895715746 509521478 748283745 230270277 42044022 42644100 721487870 839746667 611197065 94026544 38436176 389189710 369394667 447040906 682201974 773034243 621408360 950906042 960608983 609663801 246002571 244462117 802019543 337220228 731618939 732664393 122758734 353946891 170681078 77520202 965426607 822533820 66900054 587495421 677318546 62243876 103290619 494628914 431959444 420778061 346514461 774223248 276762151 94237410 682821753 161553161 775326241 749906646 475273375 599704236 389579961 619896241 315351327 320866530 99975132 323221148 228055886 243866086 138337124 388034905 444824127 54254309 849660316 592040403 415514525 907761527 669141087 907597386 85574960 44843151 149745993 290646042 885298492 817229582 552634586 536000954 802144963 362549847 712887610 364521895 597391915 874700758 362528494 84623023 64628632 669340044 167864411 697126204 816249111 541257702 981345533 860006593 138778491 746057747 842688514 187980976 295152266 271033488 773929015 950688808 675226607 596619289 390483593 728509869 464993901 59015811 379955192 195588979 641631609 447069 803846128 584409995 42583059 732946574 131695775 347122800 502815500 563244359 149940494 529283717 202705947 433463392 112389629 29358867 860220117 959157583 120339653 127327992 353626557 517088678 516655253 421981698 76409350 729068589 360833525 804733004 82168523 352417446 182208631 320988244 718646597 62548186 762298145 155413513 188822197 299840485 143150332 25948019 379303816 839219592 773412264 418512326 57679556 450444740 996494566 939871574 407332374 143050159 918942220 284098750 710352489 912695493 269498553 172353264 624997643 979369626 830965951 644321893 851757071 122238953 594120222 949292058 342460440 360582724 717211486 385156815 350291524 446752435 843490186 850503831 849892729 852882962 667117362 4313061 29497805 865999457 501302819 587208015 440039939 853804912 203039581 438350350 474591637 918261615 981276920 654429433 411112532 495853126 824247643 875305682 28594577 781603837 344145271 874133607 361081772 348733446 402577731 515438882 964106320 313533657 178677383 113634908 907035074 212721144 515571106 83758565 846837397 301779226 611850017 847439201 441511939 521981325 196098725 493977282 377695282 72817894 310545485 952701868 335200060 271760646 960123712 212958785 169705806 69079336 199096789 657200251 218931321 376886754 841204117 857148282 789119088 306961875 102685903 19999655 436983273 389328528 177735422 593507320 275445152 237972000 302574077 568476527 930957747 875677753 119131561 463539733 617524347 231931604 359674447 262567884 187840180 44099812 746929082 551751876 714581147 260759422 491674397 43534029 785286319 390368772 762506976 94566127 328319730 451054052 402968027 101960276 963249482 554912986 631638826 387555041 505867922 549529949 985396815 240738367 358138366 505829508 572001931 890897530 650047204 146815102 684755097 338506314 273493902 841807198 276576252 179415068 434236760 55418565 339363333 147814750 696941337 546527474 165248678 602919909 250441403 53895022 472551713 878758580 398527517 619745884 791705379 818309892 579243508 526511693 136028151 441074107 319244448 625955267 525533906 701951891 536489142 930054596 588803787 73075192 501661432 386085915 169132254 844748458 910118344 613117758 168727016 389104766 367678076 931918718 569903553 369679318 131078599 795324349 581586829 175419597 509798429 615602209 335603992 937139072 499925515 604011233 725017049 163265830 874765040 471864032 670738833 274006288 836287716 325830766 79608801 125276537 402487968 345307568 307096821 933001082 729602756 337711555 201517640 339975110 995141997 640116726 795525106 299037581 390804693 164200545 630875989 124864229 233704996 184168157 647519913 156936026 808435953 546403901 261661003 871850402 653339258 387383130 840044038 523768680 26192668 42419613 610356719 596069512 24589812 589462726 130404167 889136474 91496433 405880864 89117584 165689239 217168305 263112756 144479668 32582540 548411585 888676830 813403699 972349114 641729472 558533712 286826355 940831023 498057768 267554077 161886356 576682000 696935191 176547221 463426472 47653884 712868683 144878463 800080692 408489875 568814465 77436464 449943371 574703961 158213316 294257191 186871013 57920082 299208787 125289685 479367671 790317295 269301064 516767432 214379584 37850842 426378219 600973002 768781031 715377212 698122742 105796917 19872959 11579824 764943430 27079117 591477932 839107485 951886577 690674109 130561845 355486389 665668390 158033214 993248250 141969848 722236458 13704676 62094291 928994001 124428584 206275051 441910910 484916887 393160713 604628295 366946911 416745166 417713804 946354088 38128776 976220318 572937583 783236266 122850405 850823984 183839763 780872663 796695862 383728783 627313849 742259242 972369411 776572800 907816703 492226928 940422255 817905388 699808450 933016566 749343051 107385527 895962392 126865823 283044237 594142573 687283049 9626 44083637 992179865 714914769 278668160 920547841 342239286 29502563 421347287 368817181 590420273 599951330 88803225 737808026 918867263 394843806 226047258 135844124 738107613 312653420 614474721 918248071 168950403 113779298 371892040 360926797 198478539 466462876 213491883 412868730 727488441 487988861 198503475 365881736 140606795 703591885 493936636 597055879 353722037 333679130 895483503 400163935 904611393 975812651 550209414 917175809 230716358 296299747 641041057 571028035 436637892 456266078 177742526 244607109 271092095 690675443 794721711 50213016 517109261 796139658 643560624 986202238 561169761 353688392 816783317 220871442 456452469 28590607 989644084 771598895 179952332 282811977 551313385 376699728 591528328 133991517 179928024 266735786 317303056 636884826 505125054 629555755 117074433 518421023 128772555 154454988 967484168 812621224 781716892 271654388 499426846 248914447 832275322 348521827 77784464 28857702 164106134 291721233 257840653 484463564 64393330 575960824 346961264 391826410 30187296 213232974 15313586 79240702 555637994 341872492 196230498 580836715 930613121 295109552 448054895 855226048 454345535 789468661 524510658 720854994 394436813 855169225 795977642 536183906 167405210 147985678 415784410 83328769 208736571 788745517 598733222 525196784 871356157 588122355 813036173 53857844 305209466 3680429 333181239 575632449 418428361 967486515 264440063 579259705 413488333 145013891 264357274 996145073 957575027 35740167 554252308 142361908 666378169 175513040 127285997 236436139 240642174 561499088 213562758 691097656 623525969 458952813 501524568 947911545 785374732 65588390 57679677 452214987 169564717 537373901 926712257 896540426 614463632 881649253 289954552 432144146 867747706 493556034 895825085 237982659 784280597 239302137 239162650 582139596 606170386 346857636 457602215 786535407 404629852 491704264 752668981 280905426 906133523 407390609 158084465 882643148 905893427 557107231 878555219 902023046 405604329 906734352 10138250 456820030 73254636 298160641 342895617 624446016 509175707 764385203 719153361 56392214 192124619 613558506 845824367 370271666 978092768 255552766 287460419 62640246 108989947 667115134 284850936 554862801 380968520 626285333 885081169 570994569 297030007 769971231 17675045 415732948 259572760 301116097 51803836 568285139 362150402 457950883 189000844 149096789 527623125 590201498 93441274 882511840 159169714 33035252 840575900 957645397 542224889 566073163 918099271 591829344 971125312 272419469 240507563 106427593 717951247 452311263 341384161 634361658 480905366 556468518 564303038 295487757 260772734 320279096 2614368 582568072 652514488 578131389 850164839 114407501 880528573 743702971 47145041 571616317 750528164 790783402 144794941 127539036 282519496 106385239 576506950 692556914 245363248 833495623 801242464 864332319 409067089 836995290 658795418 343384411 420163148 260129403 839051755 691875823 978804422 814050713 857187514 850894680 224676040 398347822 857699564 742417521 46483502 806997705 200238517 841856453 787635407 986442754 658270749 145580717 842982173 946496096 433905742 695331726 834612896 382069624 478368258 436520378 701366610 979586033 238277954 857993546 276691231 688703626 143465694 255743785 658697717 68644095 209702614 244919987 375306691 250118503 447631690 30668312 110032856 462471290 381358066 845543966 184418844 31021002 492057832 605031539 129582130 443294319 555620909 89103676 769648844 959895225 356144747 545050300 860046979 617957205 696257799 156052520 935011568 852654489 843654251 535973743 552604886 541475510 810291723 928663003 612904856 991744070 945599765 459110413 195823662 39958405 372714936 625123530 409691057 616111255 802310715 142630140 619789787 594988497 334615939 92664068 125334020 823396190 97410594 908513404 977241960 26287954 171865870 612461384 519772249 925999042 586370458 495429319 690449859 84031105 825869714 531060155 452508534 954613450 125778331 423002055 20990044 148226016 476887397 907047048 955528342 213767631 82387137 332470016 727895647 770762444 676337368 682420377 418038667 461254618 883036844 269872303 55575321 730239561 932360976 587573786 812867372 149614643 387512674 331033809 527650705 244910925 590085887 224800136 679767668 837381836 237169571 613241858 669553831 888199412 989529542 317233611 306029012 567009855 254166080 301589137 944550480 705083984 883187725 967622656 405100253 711507255 579844789 42702270 972052176 141795068 456466644 709056233 610593991 132558826 232365281 190085958 555627557 922322661 804075251 694143337 984764235 245370699 382956614 278537301 186007903 51132575 766737382 442606737 868637905 755183499 495735486 251642762 176434233 445022508 396599 773586160 371837638 488453558 584941756 557569944 781315307 398289578 278132787 480560023 546652513 178161007 884712628 313210766 345151634 270561873 922001246 538183632 694657530 783491052 265161139 120733772 816281348 984141595 166025105 623275218 633339655 283299291 1187562 753527728 972599510 421399749 880248923 171919708 730789640 317637088 27607317 96729573 366523027 936428240 71647939 597609915 309574715 261398313 441038116 277828129 71950063 987831137 790393394 786741550 140804197 843249815 899302060 677341382 977979622 944341039 941791351 459979085 628162453 433144022 440232883 166699297 380433195 366030098 95065058 986875441 1885526 118471383 250151301 76298065 592191865 231029926 336065823 905891977 400953548 516506871 350098737 235690741 546759846 880385853 178812488 394960746 53246209 419133754 209856291 77807111 418400523 741351650 555690383 166837948 665649433 315242709 312526452 454443882 317587211 478567516 950827706 53120880 526962238 202114822 516509013 182776398 189006895 123741978 421922451 600493812 486575865 995015502 883828159 458951361 735485173 301316102 947695523 902532281 404125165 7926702 554403803 964681967 568266208 703070193 750959768 798284709 163318400 177602135 774421406 35930425 485369825 273446581 346397504 621931828 740877304 639501411 239813764 19278769 61933694 995536062 322052828 154239465 344230560 297055199 175451100 875448014 966560946 410679112 990049168 201751028 417189108 86227249 95853379 408163501 435868920 539561060 984154484 375044030 268527287 766960413 823087857 106920652 106355420 466855091 862705816 296538738 69937793 4303245 927914367 583355220 183329353 594429799 915709870 93934284 460984908 714717179 260610577 694309008 922603002 715637665 715698273 634451266 427443465 964759799 55333231 524301931 67898475 397970750 444793664 61349364 821063156 888157385 982777829 487783658 87286249 164946548 20933806 540392385 376779450 814307042 165282857 987254343 579174215 547259271 219909656 150873320 976918881 424232799 69167126 405596101 70364305 914565610 121446964 943868516 362159901 869447791 717304151 650195682 849232717 366370927 508259022 644607055 121080617 590596432 122087768 106590242 683076463 153643778 158475893 548534784 807123296 559890633 833236636 433424345 965028526 742068548 266363989 604613871 196789773 935283502 249486469 261785756 349072104 88579199 195802134 70728861 322398504 48222495 819866620 386906408 549561285 913686952 175637791 827116745 370846205 459508901 113600835 575039216 55136518 612894271 447277177 9402006 692791706 940967595 350414687 87149701 563834467 164599279 732856644 592184648 63026871 733351995 86742387 418907320 825378845 509113954 634466345 840381641 725169250 966040110 820934834 722379652 907272559 342851249 167003125 122922749 533493205 51805603 571177328 598561873 374182459 519234871 670657549 71991087 643968507 211627539 2291051 151614558 520110483 17837242 341781710 595656084 331619655 176857926 861987158 307248750 754096589 188082729 231569526 260498551 100785924 572521268 648313793 165967690 744567671 290459073 803588414 407869998 92819190 107592659 393983760 796785037 267243922 301390229 646405965 326932439 136076469 629938743 111203553 303966589 844003229 46308335 407147068 669133491 815839203 348543764 768619761 420994753 346573253 688656411 932037366 416144487 53427480 740761482 679704545 599633919 39549463 635758536 885176334 501469196 501928487 620258557 882342842 420702206 148840250 30348183 7321879 723637630 657771303 107899170 310167783 254110799 913367821 646481389 865558290 395946333 817058480 813632415 129238926 709578026 928489777 440560952 23423414 849281853 847071596 601905995 965916538 736758989 868849866 768294392 187034922 800426400 414047135 782131463 380327855 496834369 917076000 408221406 892842996 764498437 584782958 734420928 978646332 334067263 859119289 908153206 615304198 757076883 141732705 987149069 500974296 62659205 864760018 606726860 919746944 960055661 650890805 956524381 303831053 771497805 801341277 580014573 701699070 911699106 410928133 820519008 43553691 722169115 556580677 937443750 683933406 958537888 535114092 342064318 775418308 820733490 904269631 320426717 567333896 896073845 194503008 573519040 670489694 161135378 257361035 346889266 908531751 119381252 185371323 922458199 793976880 952804278 88803620 377424850 682150892 99011106 651841514 912902332 822790044 513231801 14059342 16276055 835098398 653323633 238142252 993563646 299275189 627653194 914197981 540367410 398496798 596141560 285170925 820470881 754251074 49515856 298918639 867138152 508052957 978192853 998789230 432760571 885532044 171884629 982794755 472968081 647072183 906650269 651317280 782407831 380674735 651527693 156143835 593121646 799674338 182888585 676228367 693272153 840553220 986310701 250818058 769201196 110852554 641084072 603700860 682280080 848630469 943876000 529603880 131774862 685562562 470830128 892008645 659502538 445915574 246311423 781809509 387595638 149580451 3439304 858707024 113745019 757913347 962815100 817622176 435105145 152161551 655078689 873651671 334318806 522650992 787581072 47356207 823857127 35504191 213756098 487161966 215892267 154498443 249719597 883914848 727579064 282938849 799835404 610788308 687497977 144832599 73245765 861940459 478979665 319282642 94496982 438272229 331906787 496511121 796697809 15588230 914031716 968330839 882131706 944039231 941228943 894951963 427117061 220101449 224264230 274432775 650106939 45324502 245235502 165968619 614521359 506456960 680053778 980351371 339044220 387035527 196808302 708736348 325245155 340653791 22102652 3320023 244390396 16698179 283590246 706956545 292654711 771079691 492729178 792016557 1459415 792241407 429161991 788621389 741287227 745382470 541115753 562188607 672909078 958849767 913422899 809528746 91216253 453250894 664288836 959437300 388619957 353902153 588658009 483744010 950165217 775501921 438565868 9881423 902982559 422874868 138542903 87562931 859693261 829530010 418391522 341825801 444274343 945091108 393001267 49717261 70922271 121122944 428355394 102507605 669108681 520528752 159102178 904068410 89448790 840996190 887638740 758208829 338468873 991904302 717259822 470846491 829427495 628442435 898225975 313895658 486976136 999983834 673586877 915857378 555770446 917632505 984112014 581287757 832384729 742033608 798022926 332182865 107928219 873612246 94819091 565160731 583564847 695341965 933994603 778458925 227402827 176915399 403033677 272415534 493096065 124207722 219788957 952218965 904062896 864674686 366589386 658518651 37201540 887968864 388103629 385292419 802304081 633436340 623248345 307909607 783983286 31774699 966597506 867300011 468169262 543192509 624847725 637790102 157223967 485418288 894862448 291502039 388157647 649883784 36942435 736364967 146076298 18796513 795530394 399726388 507935931 399355796 516396584 320034960 177755181 584493693 251810943 25884821 756382020 757459038 461344108 984211261 343217266 310496463 760673211 210682460 89995591 708699938 490881757 168565752 575739730 970796190 501744620 580811353 432329850 713509237 272767819 999859010 352315575 688432904 453001489 298869140 911489743 621066440 111033289 886285636 659698927 535702517 601945633 183276163 630579328 480863002 880577928 735516206 639188565 887223936 1356813 141926072 733665647 371275584 808135348 168448724 959715000 525420570 739331123 225948823 968144262 568669969 773826054 791285675 983912603 524915876 865503228 625942871 207285214 424967785 717434333 753624160 384300617 963783091 736485020 469471423 573117985 763230341 450741843 983632730 407888160 316306389 31747768 480342058 364475079 913850574 431483620 589124950 748275507 47243503 700850849 958294633 605832581 251582635 680299550 864920815 155606961 338238012 10337872 921458347 884660795 662138567 846883212 97213356 785496867 558087320 598638876 586999678 67525318 420388131 217569893 203270900 983309684 764089372 867198016 146112576 862687000 139219320 140171155 553471911 23657067 871146380 191964794 29591396 975532759 947025362 708067185 825817178 159390080 394280136 219715649 90301430 621972936 829213461 416883023 431220576 829982314 799614134 375481797 96259655 311286334 960346026 416686092 708843312 247265687 382680506 111798981 842676068 204791231 329698785 173914287 530999957 38625433 507443397 87081398 6720918 80434520 250414683 641904579 325499477 25139945 869208996 619375844 106008871 545972384 401059549 864592517 345370538 12331785 680948710 989686917 905632419 622735486 685730625 33955121 568036616 459501137 9249190 814808341 860045563 120905498 885454245 176779388 62288002 127828359 432002731 360108122 980090331 38615363 377747119 8456418 644158176 302749515 780024096 85717091 648257686 229681721 25707450 396461858 690218800 734059388 408743876 894498013 966534441 416071558 120750974 278522725 944485215 934680699 572250292 458065857 706752248 323923428 613074498 577693361 59858552 564975346 322929601 70314791 539141071 853443651 426557917 909577088 917439074 349640708 311113878 606645900 154936474 225627986 568385034 160036995 662713714 89724041 352551788 810015560 757798658 480086237 760233994 861358534 758843249 311567084 339359263 68630564 675036675 127944997 696038105 151852231 903904390 252837582 687522484 511529550 850926147 306597974 467423290 87444927 710819184 467872065 767667595 670512126 959718789 151574720 705760781 141217416 788131940 589242881 57334135 426304701 721867332 823085459 897896198 612786236 112018290 989377512 49241210 161367967 822181180 73328708 659434563 510392067 418704165 949679910 988395915 954957369 925477229 367780092 707705743 628571682 188511104 187621479 458246927 218600939 549203967 367210686 84647405 183182704 664247124 649521326 340710374 596142194 478421011 671851828 827502359 691967540 42510273 139196034 512913887 269772836 754031961 290677389 734946371 926885428 853272603 608112487 392984744 865366680 544779618 580466484 359702857 539387 536112897 264671584 195743128 652786892 915895970 938123318 583681628 683837624 198945559 554042847 273933246 265451090 267087017 482369292 503643765 273003427 53462075 647978288 612280404 627314167 47049675 768797935 281026541 558061675 391045800 875233836 772758693 944247752 869918800 553877060 487029178 263442060 873916103 200759817 763374661 336857131 992209226 871339505 383120670 107149110 915428836 814211596 227751778 339876931 967984471 100416091 432032887 57723357 267206070 471384561 308522326 894648798 228345571 989679323 534842952 499746652 106761114 684698333 58910556 573644654 869597400 90671894 892790239 855540009 393366128 703941560 724305926 689910417 865491002 51405583 49082318 632861560 459423886 408451920 80760662 856738577 367004526 611599742 193407829 815529252 610185979 493866105 554812153 722165059 748819058 958198930 536700355 921576829 988040783 426055657 659313993 953077216 238184412 449045233 386545853 798348491 722667160 585517634 703077594 484191407 839789573 785838384 290998866 583657162 720526219 63849710 882765422 863036693 355060078 963696339 288533154 455525074 857995562 681118389 178176882 873634553 133026269 838812531 701419242 330933126 603494948 389494791 520861347 804244969 852719289 145658870 67882830 363375736 350284943 398443674 569785557 928053837 628933121 237780842 554275114 661181884 637161986 799914924 716069096 515408512 571151190 894985694 778852508 239005770 697525509 388139737 995902139 293998085 37320899 766462331 290644736 958437288 771219589 555486740 91508699 276756154 353190061 624752119 531387806 714890978 210992001 793249544 519632105 828253679 346993210 501467836 610433169 511226002 685326302 414012868 573109244 170856191 697614905 221886837 648808334 550679740 99030013 464630352 592988996 647685534 697398141 352124899 103979246 90067634 607406728 162417602 829108430 858167671 904752606 128086365 867152706 620723929 384212726 923407647 267345739 434320605 750586741 560492644 662319319 875406586 248934933 398160586 609612339 978620765 530388847 893437726 92271715 695228240 305422462 397577400 527139661 992907620 912140104 678402065 199220587 216387254 293515898 898543552 299400062 40328627 778853801 809311320 377799731 90340517 185586255 620248429 524419663 620965191 47889626 148298890 575588434 180479947 296528636 623345408 331283207 776657525 571911805 352506387 342549792 309818725 175560327 1496984 393110093 760380236 353009329 373896640 445838230 537819516 761521189 608158497 721731502 708727748 553199165 35562710 405260796 537457594 738616734 537099254 955373594 538953027 788302189 796993382 226586385 396284308 704552538 191434076 175843277 149031384 314784111 261188026 197854201 492540916 291610581 41709829 623226689 100901305 433678489 741210444 192780801 898194916 231483614 206179345 108705376 986814795 446821815 67559267 370093521 569099728 913328375 891140684 482190573 166760667 402008578 616082497 745587998 700473087 227901498 726495507 681984416 947828325 570120257 342366160 602112012 54436454 913445535 291460971 112305240 160219583 489838465 967720422 193095521 572584003 224853659 348801839 751421001 444643699 48610846 812365998 245123406 35584577 462452985 895914218 559477373 334792123 909948802 537682351 355465836 427033279 215607301 589731206 656185627 657689147 311051764 84072689 67010210 978192182 422935780 110203281 602831938 828148316 881569516 232394266 2746129 436564377 454254155 225689309 244857132 125393986 359504131 983718733 406802960 101639561 595380466 469542418 896319339 136073105 380372583 696244053 838382639 866449537 260969749 119073123 86650150 696759906 425888855 810542651 115724465 461396177 884490461 824701373 365100834 90273466 997204243 224430896 159987563 399560380 763836072 796894613 145729980 768531119 557155247 264256046 268367912 337993713 321260818 511160438 575808888 439417895 962866609 827778757 49124170 463280338 51261156 985413469 781018817 808523827 618038014 427469908 549992849 608084434 112438119 936576336 458028199 429778730 893140989 107809064 326371720 359416648 264954367 325409603 601701952 196711253 941674073 549024465 668491829 344220530 103931786 548184389 557248848 986520614 529301164 744274556 413240643 954127841 838613141 552243256 935576244 797293257 903958133 401462336 216118853 868034377 558026483 298731828 895962971 967049426 174911165 173236205 393761292 944234688 401633333 133762307 856723871 478431768 603095447 95483681 132464001 68034467 676493294 293018583 866774778 521652186 671222809 632017570 77748281 445663364 453414400 271846072 540366585 317939329 464321652 844179721 251936663 789542249 301156515 523843553 590749461 335883528 519323329 891929333 569248656 409102305 823699983 690933375 857700753 224552673 193334878 528384432 676723358 104250374 464329759 847846724 698773885 114250895 111948031 555547402 766484856 34425605 462616931 84202278 136156431 82253505 180749915 30650053 148884664 396455202 428478705 732513995 203237471 737673463 713044805 665378667 183704642 189380638 917317891 156470005 51566636 828932803 162339218 934220712 881631131 235013412 203860396 861178098 490622895 621426568 418209554 995191691 855758608 178272884 253710365 33897933 676685059 581887253 225386598 905968414 549109369 788339906 771943505 116833411 870051010 198088794 451263841 925676438 13326634 689930825 127327596 599616172 371539456 36453576 453007789 562410571 818137302 239588105 115236807 708750680 109532087 327371591 746340334 729591240 775360972 450097492 371638943 456697644 342798183 123680500 157190923 206139821 641458390 46563762 42795888 823388003 843238442 918113677 91518378 975152807 176666507 563424535 746464059 203410672 639692693 630388354 910795697 439025510 444719112 400561991 400731119 14175347 315019759 497930510 294731010 123804244 972908902 768769856 217664223 297822204 641404658 644468183 914909101 609880158 355576522 719111356 45323481 154601553 572752808 533864268 826083494 364540821 656086811 893271459 532516651 851739152 239195596 983688834 369533585 231268114 413923101 915458889 143298687 951929288 412860184 379450621 346295233 228284037 275706992 281668032 559325457 565488500 990435030 410757837 33971829 496457522 283789339 577686680 962304824 599827238 572911567 245751999 721776082 342224211 120924593 165099304 823975884 512523870 971662166 568355369 653487202 831241976 236550486 551864792 986843147 525681019 906087959 208613693 162447620 531314486 289321496 406548351 199359199 581358256 548227330 823591501 278728132 846072418 789746162 981175118 445577960 385096534 310513990 869860826 955180985 551284226 215423626 16382769 831262630 505289881 517285369 503037728 773586264 450219256 363741311 36414706 776077924 770836878 302171532 736160083 780218566 93612576 754482030 419586983 207975804 394391259 631223000 86291445 392065326 614639127 822714289 380651899 401825067 661118822 778878485 722364282 404504891 838616036 811604452 30943571 7833756 419204371 550740187 487223026 153935669 641544145 246655540 865344438 683938177 552863166 831992408 495271032 141778997 429381812 529767482 852162195 459496805 284034829 65028400 969512853 736681595 959918377 429916340 899175356 106896114 714189186 193141674 85492523 611103236 934918809 541171469 909012524 903234132 69657724 887528724 759527152 302323063 251992749 698333714 798505023 190711170 102284520 82391453 233414406 453171177 268077671 237265912 18080842 706251672 537024445 588945348 499731230 45849487 455173512 754875116 452914305 700766662 596471678 296082187 851940170 430298281 627825001 176220601 989894321 409521172 331243002 617461614 792850057 90818893 655394720 547173933 217237384 10504740 535906441 394857479 376999220 905740149 988314867 780903816 78956208 241889782 469303211 178800543 264430959 908535450 602288628 277522794 707714241 493458865 749042595 442492071 441298768 489844432 77804291 688312229 552877781 707713437 866819548 800807563 108298931 571564436 921245962 416565881 508569672 919345422 399559871 541445761 57972794 760587060 885205313 230157266 13968088 935256442 817284500 684606826 606553054 211667503 27913074 259930974 213592293 275924297 984855388 573134946 1894415 385960074 128859063 158686864 845033175 238509530 515371285 623283483 576757002 642343486 732510673 621595767 931051296 495580639 719324475 684902462 143880661 159702590 200930256 75634549 234858522 446098168 833556540 907955465 371441612 366580457 125593187 585593375 209965769 597142987 187906690 829187875 294979787 254875677 383910385 873758586 386340930 992151778 395715133 510230051 492097326 328268142 987266756 512166659 545713114 624891550 649635763 960472577 720394610 458530942 101674795 704207680 184767059 938108828 266127974 377434714 458892992 229352869 549832225 506539911 817929211 876484600 410115561 934519514 532063340 985995534 833162104 139289658 681136030 830675762 116554231 442630646 676404078 932352387 126150287 664696727 346504881 369566485 819205223 50585721 239485188 62690614 423725426 971016195 514619903 653320412 39110664 983088536 587960562 240953675 515003899 488023772 788102376 858809341 631784799 982585750 629674541 108551314 4537576 607134429 727912726 142099835 849504554 67708822 679171206 466546876 459201003 529816217 861863178 588596003 338091231 94713301 360681513 166542534 468326813 171905295 975855917 618131211 255548906 625287407 985638502 347634 726269909 453106749 237218395 717577575 657999257 6366140 140870481 664503771 666461527 579959663 49908719 560599972 416786428 826780177 424555302 929001527 989011503 665766527 932850126 753174217 802505894 917999950 256533029 655526252 224176959 309079233 484074310 113109825 816486744 259346481 675117637 375773709 538487316 242000707 367670882 982626651 590303966 915638508 496744123 19180154 256887441 592984276 679627565 970609329 822433312 175910336 398851221 972605009 214214159 564907526 976448393 710165616 125095155 379531233 163600654 320994867 267475174 435693099 149965461 4052206 765475138 330399000 558721114 699012921 458701215 514710983 356139870 167867170 723774532 693664355 584188627 381488798 664932276 305581857 388622481 14534426 787389102 979193933 606135837 522610014 776367992 377557937 33993534 461116017 997495329 189604944 745674857 133981854 379968753 359502852 247328831 94166379 339527825 943037645 519630779 93068955 512088345 849479797 769984618 833275888 630178992 556801955 881730245 929482107 764445171 74425741 655716671 708887868 399095493 837347733 904592069 928647710 228519106 491073660 246983306 916098147 256719784 485778125 51152137 953279677 176792877 653755253 772412272 136909743 505275398 368764084 29519883 242170637 288178085 611138115 95287782 540518835 125473596 636447551 610411899 225829779 292534804 584830766 571625322 85609468 419066090 167555346 381805447 490127478 666759100 999610396 110516313 952717973 732990194 190587093 979388367 333575908 369213858 859925593 521869825 674728751 15974603 832461697 536248750 879335087 148625852 512731988 125224784 451894060 218125256 794649593 40488887 896084716 190450770 384691521 872993670 897381586 491215739 63732762 594730957 322671122 741715448 700096458 406161632 877180880 123508952 430837502 834417432 92924084 755129052 480665878 195372679 735854415 119681601 42910160 742442579 383837246 32811020 367520250 452332957 744276453 522067529 378526317 655472515 930210011 232553050 132163844 674179650 900976354 705922550 554126902 890369560 33036528 75637543 802419477 85054521 767677587 581269475 6819553 409029545 646829234 491483212 183743675 674497908 388632927 477608764 821385232 553217293 606622955 235910238 478991934 690133762 279958742 867096499 398365969 801749753 846953332 229302072 900210568 73997928 963512922 793351143 800057492 430456619 796863199 162953388 679158613 141811437 662154321 678550612 473488743 602750541 618309640 316594782 385226445 512081919 919637824 455616798 29151962 804198475 879733599 547729077 221539225 627728096 591371206 211161064 86613819 963617228 750614335 53316680 111854919 273799021 176046765 887100773 577318616 750744122 414284777 893205940 563935521 287672795 963703293 570110030 641436215 709107491 957230839 728301126 933476152 843707660 775649929 756410064 360116603 167905688 263759301 18708984 497254007 830612076 221310019 984431561 531544025 673468294 345778129 115961459 475087135 50967503 225644743 168466436 904611640 548302757 759177393 400345324 976514461 587400110 986731430 732560447 974949115 272380884 879321769 525953622 145421702 77319348 77859271 27862113 308209442 32516683 922100893 645464511 580482744 779326805 29626746 248826250 965533205 372843478 404859116 529503359 253346961 934710739 702034499 934823979 285453011 442742902 477575294 255512773 18010278 587873734 364750392 918449700 758412429 740322842 407979136 555033828 274271303 522268307 597845928 495319999 701806358 698999810 488600631 265764061 586780343 513440599 21372681 648682661 716185373 90675856 675749191 300374826 452214984 802221240 450744466 527263566 386625458 357359036 352835841 917330567 701421157 839184390 176674977 656803136 728484502 301048328 623770573 255293017 327997981 210805964 958628808 163183335 910571161 30700608 123769294 553778426 655818913 182173772 193158417 748813901 370142556 512709402 787563450 775212889 49448620 411146892 652745114 408786808 850503349 155072166 174408947 631950621 108011535 54457604 34100046 299088565 906280005 612659064 723719116 579171286 231527533 480992880 246236132 987810721 319571161 449703106 873883050 544868005 565504426 722430254 335973272 144269456 861234371 196275964 831680300 75950192 645199226 217817711 415543493 575670499 754784935 506132054 455004980 91508053 225406307 1328486 476685077 474661933 23753722 363944385 948866803 205236462 291112008 261431552 875794465 614216057 383287622 798474773 210446809 906761006 676401026 867837205 717331775 117609888 584801919 934702982 801816182 943635998 173427551 5597615 521134076 694334359 543916439 716878132 665163253 654960292 316152957 757010622 326889584 356040025 206685634 292037742 891870667 985538246 96517307 538726805 964782785 483004116 386940422 315521432 875440765 117749461 801265055 782395078 634973852 405727423 83542481 836527378 393083076 49188412 970377745 377030252 287630385 386000611 23324110 220775042 219104 41452072 943229291 843580427 385152011 777837255 210197794 100752713 272060840 474217312 242901828 374246592 748839536 114704868 760332801 219151659 620275677 210718715 750182530 890861917 874630641 306894691 250655261 804248010 936638346 270091540 612759649 758303248 896255325 102335969 955244681 297728996 401624411 935600316 400107264 637752288 421901771 131780749 298728791 904181563 219628843 487921837 848527286 790870370 251653149 149184344 544783708 793410151 108016514 885445279 921617171 669878531 79996249 402975805 431372667 234469555 952881269 10561877 614888764 28748757 695347062 222141127 61915479 29544173 988822786 905065549 970093885 434488055 654349982 978244385 514736605 573535590 134047661 973228531 586545065 55027979 309322276 181155365 452254383 536359801 557071150 66432311 729805919 87655682 589757261 137321374 157437424 677151078 834244685 944051770 611543155 434018994 920184390 260477201 185895415 788171543 355600201 603576085 161773052 829184804 300606698 240607850 337820375 703347974 291423763 589373672 883207725 980939544 650219443 600167472 399474901 658716745 759107271 257625954 908842557 168138710 432720192 920326925 252046773 48422256 527188027 480347287 45933335 309121927 832794054 739784311 750048526 491076174 574803613 257457118 310359631 39984387 67270290 156095147 460563779 786654685 592097886 494574504 320745213 690560689 203742040 346649611 130574324 575024311 489946042 618296320 762826303 309145651 554528856 379493270 867892023 589052688 264213163 311065394 755411819 511021041 353167271 982145679 156373357 257484101 328693311 796643375 85630610 456691909 266986483 57207006 918997027 634495285 600140169 415779115 547255088 534991425 533304334 364827515 894722160 277853822 287217118 520700840 660526238 506279515 509469118 845175509 90972398 22985060 490442185 992912118 548795803 564499888 79798885 218289626 517308291 997889935 505163088 901234978 159102584 90515105 217489584 253717409 66335314 368634990 897537598 719822723 786788294 345712382 184026862 613335076 150777408 954983382 855179737 249605470 404771899 976759316 528952603 324157048 264219763 947891074 723578104 643885964 862622116 447390199 608198573 763609681 979728277 506236708 399532556 762462365 953828461 75032018 797661729 608680435 756297098 147726201 708992268 204671122 89278918 719914756 415468969 355940940 891001503 649748206 72101906 56670842 750946774 598437002 81835046 280157461 433763199 879774772 745069281 183736538 907081459 914549137 826833346 67966059 325949149 519447205 651323710 512030552 195524273 82504681 60188093 951895525 757068615 589505245 188215339 30796640 951031678 404636686 835182491 685740288 240103605 292302221 801282053 223921111 881939397 574939511 2697390 907961608 505302699 571303665 992206996 13616688 839781788 937921841 929071538 173986933 688807756 319968677 454829398 778597875 481357531 248309376 231481552 589608596 911286518 169704587 882739826 327950547 58510914 304064947 4839926 329980017 968812129 335688982 58104076 832098045 538361050 944854397 489775002 225460573 683267290 292977006 498521359 487609748 549672534 848965484 186635464 463355304 787833185 384937731 58184047 694251583 539563679 234979264 493944482 443956294 134720611 987350814 85919910 417369432 251705696 471757536 836878839 675106086 931908755 430637952 838291590 493286203 169389195 387025444 774075623 869520193 302240281 896693401 754522664 578199286 783685552 787392386 317671741 909620287 370177720 367389634 804229993 990114314 49929491 377142768 228876372 180331086 690543490 599693995 115904825 280067804 875176972 716086180 350225471 902421834 867471320 143540897 823970353 761497937 486936687 283412135 201209737 664349460 844192006 631211953 535841072 108802223 61063092 347353581 434101748 189158601 755714385 560806174 812802568 38744885 208714145 713688886 534226466 67008085 260692055 350462391 239011195 19322900 584556887 910355984 594155346 73284359 420466 47282216 181766816 952006939 148379764 823225924 204568625 369833919 52330825 707375340 235152193 235731635 554033099 202386501 487260253 721073139 593040450 732748363 341347105 583473917 364447308 452391861 96224047 669105061 765911995 549820490 635745243 892310903 602512527 621738368 953989111 596005237 637538778 224024278 542753298 844774778 569845771 886650093 418785188 709828041 10971351 95223095 974094494 507552213 185421109 271460588 424468488 17194976 191317563 335545534 207072541 571951145 439571439 80436266 186306837 935050517 164780453 561961322 906429663 192492722 725360743 283494750 96453572 472386668 550125763 516398570 587273643 647525635 42050308 343111692 283079959 811858645 694420176 393823399 260582194 174576374 897322615 371079779 446892626 508230376 914188196 328556405 561375394 244881657 415578638 87571003 947963597 999232945 823622552 220242646 141739970 676821071 289416331 799144719 958945887 262634454 159344953 248193373 484680136 574640560 614501188 272600675 445417867 934654999 526972782 80647845 963662586 210990210 806354604 814219394 674920396 711485396 824417334 204662136 805637117 279762924 18929456 842316353 335184837 548733981 66004595 562402215 534086545 17167854 645497734 158908632 640772672 325197271 419398803 102899699 583944916 276315058 180734599 873429745 472806884 511499085 395649062 726603044 947411783 55531133 79726654 936020214 546317115 329119619 707307811 798608302 422169124 515863213 155102527 7925643 734848745 81680142 755034169 339297070 188502571 144110598 704511340 994557724 864330634 888634595 187726883 808280117 524736524 730630193 197401266 198050031 342485461 996174748 43710909 975925380 61956623 443024423 494999112 883792973 502187995 980111365 536639451 671536475 396914509 164961191 458417713 136214480 993736120 646354828 724745686 323538516 725873421 201381171 648606381 38999338 548490287 471880094 353366201 20534899 174426613 60178075 625921036 973720139 394807112 801540333 485287968 682155662 874729298 546506682 567271736 220670118 226141479 490158228 491603616 70877608 622661168 822173129 433378581 764855752 83841166 494559497 477009622 420433956 877867648 302682480 419414530 19476633 112217766 155489730 157536744 40970891 807899743 740287943 240920328 93320559 475483340 722135100 403859997 530157086 136161646 508641073 706317466 904536464 65979370 60879808 580616237 374815286 474074957 930184746 485381730 406469520 627813343 542563582 1005317 468306504 563120044 269326278 414577293 886162294 601940498 882959363 963529503 352918365 50373644 340973090 642636335 678149061 129225420 35294775 528086719 403934962 378250457 845503969 292571918 525999077 742542927 51403773 231210243 436365462 746529580 804637345 832104330 945317482 280437061 208110377 669116736 559752652 835230185 959496855 853579119 279490364 723916575 191496739 137074966 786045258 889895114 255155076 807694942 291103331 962072100 477192925 931937190 436132963 365073010 45115071 281905065 517823979 268772275 642803675 88766068 649425061 74954463 794418894 445958607 395542108 636093670 44248895 130341427 421765808 62821107 17514007 934391837 985298057 391061970 249901670 780693975 574901316 22978276 921121829 888769813 516656839 992866342 890112457 411303456 871568615 842037714 681784025 491686568 125034464 77887461 660815705 125078091 996399709 817355526 943792367 352895711 49044570 92767405 309856740 90607738 507361934 439281479 398297614 516494951 681262262 810476554 477099626 338708959 375726791 160765507 496250001 251078468 652570419 174464354 584332892 819784254 463281313 500126788 502178603 749547598 330382305 42618834 24947845 998137873 631263601 104581117 843824290 202599547 160297146 693079975 237274717 337917872 445890592 11563361 844054771 998412433 624766602 999181530 91317769 411052329 467466793 421474333 761182109 450303690 365484878 495813731 326140642 553279556 71728115 39966266 615988140 259266483 547836978 694670300 288735362 85326616 879707004 802729799 245747601 532132257 256700308 774527675 728975709 877775621 628050693 853824198 579846877 992022029 832394529 822009309 585347703 16270767 47177951 851998125 108526744 221998952 638543809 765037395 339822439 763160124 599488530 718138076 950743238 408627459 376010025 992217329 237347550 604241012 995063853 638817865 806658844 334695833 148228565 28930462 57162906 89013776 669898803 119022644 710677780 43566544 722024271 116096662 105290094 861071436 597235448 388383459 249130344 521632332 646444611 200472813 835786681 434955125 59744823 955389328 361326107 751141974 188106192 661745329 44248690 270760577 79852752 278270657 469288616 753378005 296814210 332262192 331157728 432347227 850576310 992098243 589593966 968291053 945198597 544068176 767391091 510167721 677065359 961657585 224611649 142486611 419055174 767798830 91031716 996113755 784681306 964507993 421453927 142620061 626108485 574494832 786452193 123620465 68186875 967246269 796056897 789364917 771897803 658470218 818316334 446413247 444903249 113758460 20270434 646418588 594719310 63243964 380052928 121466720 123083325 676722578 373731847 614490925 108159410 238600500 800933663 332188234 296978391 777355011 952891595 85217188 414688228 581240287 462764879 200033674 564884129 97632238 59185470 125406401 581354313 95120145 407799338 546638053 790393650 846043434 757702907 664631872 932776388 577632248 641625018 136101843 269870823 101964068 718843489 665002759 19296296 46829838 833650844 979507713 28387593 255440534 430315412 808140148 436769787 987140255 236337306 298910627 704108464 925534321 845718363 771449725 611773991 15679305 468203452 201423513 353011999 284122342 988898362 639970046 534747836 335673841 107285131 352900583 575653339 808426498 415959616 219982870 868984939 132114190 548791562 140879182 152511110 187516778 536955007 975396726 289287461 8379276 848086988 195880886 196133643 724815511 755252030 394888249 405054215 811961180 504889338 62559457 6999302 170884141 334587514 273757716 513627642 709476487 778204008 27181695 56512605 172291617 412216804 824197641 668886941 748461117 420893392 3766078 89252104 999491033 12944700 990910005 847462689 292887215 269113732 351155625 127789001 936309647 890337528 179203367 102086942 795867537 502014270 107420636 489880610 100434895 202941444 195255135 69242919 700508219 530280232 785535914 325426762 566284330 658666564 880991148 813219312 73387125 779726386 756163288 513073537 635406734 637187572 807519028 11561557 51314973 356953256 850182664 726479381 893716764 73907933 516651840 235855809 427977055 471175956 191117338 198064974 882645685 14777365 299376325 642192173 615635183 449566953 488608917 794576826 760793171 425473854 764760764 855049878 721708805 100535322 469933502 379747265 628903835 980990268 500963114 23697396 476825908 318570308 624306494 592628751 54394704 947922931 499504700 137999354 884374004 894804980 788643293 652152765 320164227 292009401 136990071 976062462 714796806 41515699 406393220 331841337 154125019 550356827 210487660 648408528 208351602 438677344 775499279 140159792 172578968 689150448 491952678 589307079 805638039 873811474 998542170 233152026 975461422 903954208 195565565 719672060 1433293 425740586 781602767 736695879 671188094 500466705 895824246 153755182 721465380 828912447 895960892 234343985 608364372 636610331 167485273 15418525 886174440 847063999 321666358 524360528 402787038 927592394 138048315 778404206 505013642 339444854 893841310 206151712 790538725 918001731 363074070 127932288 925763285 772479221 363630249 756926627 467714043 239012598 383340937 253218836 965712179 926838948 808281752 501838379 857729447 703101962 715760338 336279074 811625344 170563820 719514706 518537773 530205859 937239814 91019943 232648034 799482366 543214801 484465192 606451826 648297354 332604231 393096326 854490882 355868330 767308917 389681101 760280271 108338398 792713452 504466316 318108424 559863444 490511983 516765855 544799709 705081309 832925484 670093050 301839374 617216611 614432385 116364477 653499711 929202957 382371063 862531615 150456570 129353167 235135565 413135088 393981099 302817602 561245365 551417847 595032001 110291951 549325607 255953073 128985254 232595261 623743072 857534874 747148894 903680406 208171455 730398058 538029543 525486620 56943040 833049298 807812547 709081144 276554906 79764658 519416126 103209654 178827896 696759490 692943071 434238241 914837027 48757571 439643406 424607027 493549432 47222265 114293634 389890600 832813322 223613362 660905974 66216445 354200395 1300478 739622152 679827107 517424160 340008214 47672343 259818069 617453081 377489217 435207650 710110012 878119434 466176838 937865530 300286735 810148172 267257067 138075908 291778170 807009530 446799281 490305417 265496109 119701847 936509371 235745970 610032872 877904394 968587984 507964046 262324839 726778825 432574140 708064284 732334545 301692849 818516421 534188886 984326191 405158346 217300085 603133549 422211468 362652073 746150373 464337762 736258920 592685154 440173324 761724024 555025930 162283495 670390820 664729523 472391770 387031704 768099912 124545173 819176459 113391019 169198511 24924996 99700101 33509573 632857633 508746701 97625573 888357250 140836118 964100651 735027371 841093391 495219712 631991923 966928947 940682645 939478205 313589600 369362896 391663845 356157125 433055162 200352755 327610574 304552557 242802660 134717534 867461977 164674684 276700776 663091995 694442189 228159926 394462643 643539291 696421297 29690411 404188942 900350919 187836297 54679244 604063048 221552777 670414142 272006409 948630869 168448487 336832287 434489834 427108659 632206878 563614688 968333223 6945784 102044247 880952947 188690809 288284208 551803908 820085729 601383928 438586071 550638946 968725482 528006848 169895690 9145855 218386398 228241600 634737673 423959296 142626136 547368511 329885179 675536467 916163835 812839912 666122879 915670908 643495798 761375278 274398750 962107609 948076665 853900902 756818467 554662488 917401549 303056602 472344371 398854048 524695424 70038171 297860072 918896459 366810463 518932180 418264602 551456543 158138856 9463221 280599851 473931257 206690572 697946421 937833060 227328513 849678639 541392588 902402896 764277191 79855438 119179481 760058919 462118193 366644825 611414400 545047371 563443840 171928529 251080437 721372675 43106935 800883164 126749100 979314008 293348357 808124922 907512726 714389110 1886107 254692663 852244321 74252740 721360454 38696569 134987557 534305092 321458830 765787415 878433250 363298822 753776304 167658170 630617391 597581662 905066956 160210489 620035088 122803509 890300408 489952475 997261616 794526913 919225455 662579158 812510894 3028731 408381581 887892522 837674632 56698196 650222853 801642328 232541142 571497455 36797598 207641559 329179135 367840820 386602670 237410374 902271864 150059331 776160947 172565583 121845835 889091560 354145736 310245212 225095783 395962627 154076954 795116553 201629097 399861672 678785656 760529765 428854692 467011403 451117978 771159464 339723383 543740090 449509647 981326460 179746103 347169614 645961107 719417858 907873627 876773829 854942001 797728554 800269020 276418332 330662564 663812389 307147812 671007694 248353746 372436877 768246343 75980648 559071532 208298684 868415124 313740148 381408080 861701937 657900023 171179039 629708387 134767105 348465859 78225306 420844169 420165416 393255282 123060953 797693004 726201623 161750275 514074210 362042434 467707007 163958873 687433190 749841846 299552480 397054813 838105673 280446258 636660614 192960699 30539455 235244170 548857239 168036174 404065305 273490418 644747109 953088003 871621751 491185002 328667499 570059650 204534074 162188280 895804668 332970603 681328843 782863087 395873728 630476445 623925188 974078987 770734784 722504992 489385396 31019451 625770522 586060600 11671555 741890978 696727230 721830515 679218676 89815109 525709248 279603937 680407701 44970351 160374517 874639655 259628373 500051445 920293610 985905975 770349369 482080161 217607913 330782683 229661101 490600511 259732495 295489702 19340633 829928492 619677860 923693038 350937189 698184676 705183886 598518928 112474314 983928242 474161415 765762032 673112092 910954813 218771442 370201718 368206182 884073278 83130156 392541145 17792342 793120846 127787152 828845019 621080915 483376408 926890361 382996446 594206176 166980998 369918133 288247378 735667764 411778346 773090971 408324285 392635129 837466316 463701598 659680471 777346724 186695264 891812601 296758559 403497594 890544664 313791304 734406367 429491946 279676855 904564090 818320445 577104895 659251849 751729776 882469256 735246162 281395603 329196902 158827468 727548705 442743228 717154966 295912312 75001243 104528369 980728867 129125324 746639260 491667010 798742831 66730393 197333029 853208306 161197000 95730999 323839851 365866130 982134903 257351322 795479705 241471763 852297541 353889523 388529887 502201986 980238919 777290804 610460427 211311691 816291032 532163654 972958847 905815770 942490028 269308130 830319428 674319647 475422972 249708610 276838715 485907667 443724302 248532938 582301242 393035939 735952712 345718398 724905440 211061182 939249938 773105030 496907607 343581858 292662218 257226319 52299302 205575462 918345309 32189188 365540338 462416105 622818390 480723183 911770289 361193089 212252696 543967274 427957741 710547919 924250818 654552405 231129496 623789455 173019256 299534960 325769682 125150871 135207292 812192164 363284414 251785844 396151258 928525963 704502166 909041937 56433053 279844822 717279737 422202029 292692294 786219863 949659537 328007228 745107357 102917363 858518200 723706684 72426799 622296953 716428501 971756263 671068369 236374475 841000466 719274937 129327455 549255323 47402643 850290355 493199647 405423547 685089489 413259168 795870960 120595241 464876835 367452718 24515791 806236221 747224250 320050821 173980804 586049686 304440344 21037181 416978347 564937784 534832128 976476874 287117872 566360357 421885648 743053690 186507364 33792300 6981755 882430971 801202937 516702399 751644809 493396512 158088945 518697563 178971440 257854067 598707733 505056043 984923162 339155424 535174986 824481739 919930203 163291134 156764005 640186082 395719567 990334997 346573371 972911997 306424294 349924082 115118179 853466834 633807590 59960680 818363951 886755047 250992159 520567374 41484215 126232445 244761505 9114593 1622115 148480798 493509085 30048197 528256813 760380959 330995953 71265264 295083841 288456253 776189393 822753565 396051534 286524375 207380917 470381469 894969202 76307526 654844935 116620458 742966234 802797770 245134616 725120519 760733263 971698419 614955460 980503536 14906488 556867098 524785837 507116918 478720047 124973653 442372035 872701814 928344927 44973188 188435265 194456164 763864578 296682664 606494485 492004062 874329631 92623724 321631664 296642882 131333504 814547600 531726104 891437163 954614284 126450452 930819228 921631207 554910479 805598260 166168928 377525129 129395122 911332278 228011977 408570643 620184660 516791460 31339471 584599287 479108632 280844387 75537941 307099785 37645289 673699276 562280287 181426003 220238543 445060990 887125398 319833685 406616833 193986046 244151693 693978194 937758126 118086286 146593644 592201214 528809625 565612268 308623520 639952292 631366001 509152907 400811218 880240319 51053387 324150572 810967334 772070644 259900437 391564444 437835067 437938441 671247707 566020103 930827183 65627909 377981735 381267616 32880233 807907811 140968745 225850166 385626850 482950989 65101771 771355377 739335710 604468770 877435213 428985710 856400664 70862624 983137563 355884334 449097526 145913624 180264138 40329006 644081696 219054238 977824331 839079913 61276658 664001511 102133951 488175677 333811248 387231044 15874678 139000647 84841408 804762946 432798414 497245637 517389526 774442493 359006990 962381463 113078623 956553598 843427775 702593524 397458879 982945338 965823022 452012046 123054916 897256215 221466330 259507571 362937996 328415397 171584277 12239662 993401600 478667343 957706883 827085755 85480670 281837957 578668537 430015875 666328595 153462356 66734527 385552584 592896933 497744684 128141515 566564651 492914714 461087323 213862145 888283451 519328417 371368193 93472026 259801082 640759358 90468045 401142477 153851620 776616639 221479213 238212063 705348211 706084882 941369381 360446435 426288912 355275494 428138436 835499461 443679629 278311447 552989927 609544036 910909562 550584451 676003810 799341727 356577193 282931886 685121792 191099601 736813735 748685645 26637727 750284475 781639703 617974852 875485646 763948695 872335380 838300529 443017259 461107687 83251546 604039910 854291881 636089543 482818712 946064086 502866069 766212292 982974456 531297101 979034411 579061263 553413976 225608766 956606854 227943797 452493000 244489232 701841337 991279254 527793027 990170377 496827976 87589887 224099766 847002444 431843123 223232611 955970493 269792459 998760095 562548396 655552247 996815020 30968939 740233912 671103967 443818833 848123039 570936069 856758391 861005862 25093073 42907242 379685722 477696082 270513690 166689293 514182050 935550780 784569182 546244723 35706208 7304840 694843850 171069259 893085907 945740126 234060709 250000653 438684687 120470516 20805864 437695495 66446642 277757865 661274261 232771843 503062763 988390892 800940176 924253297 718359630 223943174 510155140 200150733 789603105 558124261 459734181 686057542 842300635 151339092 872908423 258466733 334904736 287499775 610061803 316048770 490339309 349753305 686731734 820854703 701649923 183048931 741785187 327484604 947074125 860431795 634919408 441417363 624860345 319399661 153977733 611242532 985523319 622294110 610315922 881952135 120063324 662735127 639644778 691008566 562386913 205946739 649786719 160291571 837918001 257158539 855857834 815853993 406545923 987425784 87383468 678999968 676924334 287381417 352219773 396456244 910240153 424942977 741778316 902206977 431723963 871216984 491822107 639101550 294339503 832870543 753701972 305855975 406612813 716171666 763600559 330371910 501779923 277175400 313941761 921125919 182430062 213389190 46646139 708800547 352388731 909795063 764859206 112634047 238927150 725161045 807769192 353445899 335959613 251447429 276787553 801581085 827020332 657050601 673104632 303085571 671436404 65004141 192152224 897401308 638072047 955951012 873971816 86333386 618348263 243309645 251366205 869877065 644022840 908939930 728101274 676953831 476734711 964960093 96959164 877463601 682442497 795368267 660909071 701484597 706717934 296078594 503208168 309881030 137410214 85733131 645670477 507969078 273386921 903904210 365536864 773864187 62619700 456939176 120600088 604448261 332297751 945171199 842540443 852919794 58885158 980748957 3544593 696308378 244358651 745337101 101829005 433077019 236276815 148055285 712238815 944429646 823857067 312362404 650107322 938913701 865207166 466035017 757177107 457254592 768090701 954349046 130381570 668754454 465149576 983027411 546472025 961384646 929363974 330772093 243544683 914933716 32244988 212575497 88610585 969041206 941570708 577158781 879766748 524805363 101992351 368195338 286762306 182366416 96293157 511258215 200152424 863126218 251626064 71873651 110491693 470643686 374469060 93381177 611945755 549315179 739870814 698481367 249834635 252205986 75095979 994829557 300010104 218124904 625141491 466249565 832988330 587476190 366399779 74794338 170412573 93890740 859822657 644540832 653439138 372236023 360011705 559913841 580552945 148438206 723448792 342809558 907693712 758343553 119841567 858063110 962648535 195745858 569602547 619649248 841065227 175632331 99047520 464807950 402775939 191345159 613770230 479534321 499810918 134394062 122399750 916552168 244275032 270972067 697175731 595056057 712541978 252538330 794086779 807207322 834726541 513062774 964783261 803632899 747273942 706480798 981324763 154276799 302859050 4854695 892042396 589230892 522895871 831792965 259829983 569876761 35734033 267456014 891058770 15481613 182479111 541625895 367587846 486676817 785510490 846221858 796161870 467579226 936758185 624091205 18615432 81038253 857026507 757918038 10928936 362660739 13554605 672486287 133872149 829582557 836144921 733973492 43244271 821803366 66252352 359001311 159645129 567290629 83220981 789275724 928194402 176821904 268834460 702120133 953388070 830493279 586857646 357415346 683376553 627244473 133863327 641759100 551761742 560440604 233785781 56649241 491299116 761099564 105921775 903352513 103018379 170251087 897949012 917597959 595491111 127415049 85228487 988553735 635916985 445090588 978700023 341046796 670704088 355768543 891238777 530743540 212107669 603380601 510202570 554478307 166534217 75938657 623010967 841118123 451594241 870571106 404879296 331542111 323129831 538407010 690038659 13089886 989921231 80921907 487371000 33260193 104102933 575777656 13031162 220758964 113251200 348829891 500763452 244374975 662417284 14222664 448424537 703681581 953064999 694895331 223462323 707094203 544626324 34684370 63804615 658906986 567306496 484103030 821259420 471467342 54463098 351804967 926301880 689860370 213582428 943112709 716669364 138310171 730397553 61995036 965254501 524265032 570958681 945367482 610697370 301334589 960715507 699722839 409643911 884228411 317217233 21966441 474865959 875668538 502517125 224809311 743298113 637123403 189611801 877586559 358951818 538726242 826947018 730277053 720080050 565892090 870861621 889849113 190948419 291520004 732401215 519813580 434266847 202378425 232941145 782011468 943551485 725943570 735019411 249898823 592530039 911732341 837564618 385071844 10018415 930461854 446146096 902101245 616963292 465463978 430916803 957554670 118879676 816046005 567488369 762094144 691653697 201287644 567515467 789286658 19206764 675774319 20679585 778642016 294320280 922195756 509806568 446407864 3308784 951389053 738221499 570107378 629264418 340885917 226185585 272596663 856929798 734758797 124207558 754358929 12831405 649363121 871223301 534984779 64406478 940851499 175048593 122411062 987444538 400923825 346011398 998730078 648892891 191733855 627694464 254330058 461391211 595239722 645431968 894850444 269282478 67553721 681451486 594763764 247374166 483510753 65551006 101388531 30025393 131802718 843265150 818412284 475898447 591351636 136868361 502528873 87212634 645128201 999821053 608972200 226249444 993534000 797573011 818591829 275263687 798856008 573278279 965073535 907394810 904879968 775616137 112997602 993966326 23515556 366226591 716201330 614411776 106467087 290858029 726119296 660517079 847115113 826768751 631466137 230282511 590402760 445898596 406592869 141711128 188145042 316703504 553097171 734451009 662002506 505760276 552979484 658767275 642789993 197574489 250122566 244626932 591491403 620644215 848689973 526442825 1446451 714517292 950346819 348100817 818152473 680083985 96897778 62231445 567429855 117166433 535589318 845108931 776085741 982477605 458331300 219652018 564695299 556720146 176139373 594059502 422442386 328131717 204118301 535195664 105155290 329723252 756808984 780204792 41265176 325116059 979882213 449506629 667820439 136763931 766052249 953911648 590931565 126850822 690107430 435588576 127727915 936253634 425606709 708619014 413442108 914721425 753467628 824173430 502241118 705250493 393661127 157702257 132368023 939451254 28942920 61244002 396619133 925117137 763629206 692311475 981288445 924168852 757400564 562133394 185787915 304873553 535475118 655709254 480483282 17562239 925652252 644491423 696841342 945553714 817174259 432379032 426594232 229808690 44625612 191713417 766607594 442950061 928996278 729195131 664447641 682969464 88296802 958811041 533527868 920077665 877864145 343115122 797830978 251837473 878220147 528860136 105135990 64706108 255765773 819404867 376865801 461725698 249336253 629835769 21745952 988640742 771978866 939557895 269325628 641523330 488040564 447720519 983726970 216159540 554261797 402644210 595269430 674778711 648290675 928052216 913789748 301583932 128365434 662443610 891471371 483215504 465710970 108758563 634468322 857465803 965299471 814633535 564733849 768635589 522952680 620557942 24941563 340573822 898086435 524141770 192588863 918029782 548141533 377810957 352527371 274446280 92732952 742070711 394785127 673772075 952760010 563839938 554774735 754526725 465582798 485659333 245809328 109007168 897920277 597135639 189822499 155005777 823392686 651416573 363667171 521031603 384309307 853261934 647635581 65772257 649473386 261776932 471671656 136580470 341248044 747237358 208435085 112501918 155016103 776565711 112479128 566539110 160681519 412116349 472415302 912997114 981078622 305050303 512220492 146762681 599334191 899877177 501333180 768480132 443081146 838150121 379277447 445643128 424140746 553481102 918330460 257463633 220847194 166874019 185402535 167553531 446746472 639257041 330370534 804393843 322799008 537997223 929788554 186433192 132673046 371436065 754528697 334371313 489959172 7336854 984304496 361504784 521975214 483522510 9390670 713089660 365688308 272052883 788930638 515600577 651262921 308551835 305976267 366604305 572435309 719981334 696904126 270089738 202159401 1768003 493980933 512732802 934344828 71045853 6501205 887201786 909841265 329919774 950578817 932181029 493004324 668028933 43997268 713129962 741666317 584533478 721184067 610182233 599077846 876885800 386003097 212564558 193955122 692953282 708418978 711808933 600217398 692829999 690725564 685856794 446517347 303248018 106473020 564539168 544290287 658291894 492877131 149140820 269543394 756715160 826720260 378706975 142281879 309403645 828937494 944346716 676412369 403221734 986534537 828381877 805431507 534027875 675692900 312105725 964031708 472746315 145197281 110624452 288360125 67090703 388715220 406475005 908142597 388353637 621037095 495956383 337353459 119896652 464276335 988517437 600917176 541239925 238230546 494753151 114476233 526607011 303790954 993816554 26943820 922064362 192295653 178131515 356971350 477641612 439487218 185872843 642558212 168920630 601790011 792305265 799846710 450905320 533679076 698084092 613576664 126945270 194064625 511821157 369239344 339456217 205097610 24811988 823725860 986104857 576499613 6421379 820492245 520695661 279883203 605982578 133682259 433866810 585837299 715722822 582636280 923241410 682542326 92316971 487811351 231703274 419871864 226210909 874283330 291542157 533427643 378105808 357244192 747210895 544720450 526231458 606385774 969046011 665643842 231351041 789180314 798818818 986633780 684212825 672207657 411014751 125663385 548341773 99127561 648491835 396287196 665587946 201429953 893576290 983722774 287592583 829807897 292675965 785053666 129053259 737500269 105892127 13318070 772541713 316751533 922789357 390744055 861216447 273739899 142157472 433302101 5957811 239891874 440933735 639385117 287220504 485588109 470909228 522399157 881054935 100253981 559719837 691980525 903863431 185423530 880995481 119200492 247985776 648813719 728030897 898974800 409369192 831234471 113734442 512301102 154646979 42244713 402041885 210166224 266086280 656569579 219710700 614021994 449917061 469269101 394778691 289385101 684049973 611530503 688569711 781319692 633478283 133513382 831053383 933150912 627326255 24223618 922361239 869397488 342546020 397290546 961090337 668724161 81255592 443987225 38532339 247612298 735410681 52644792 724130503 148059837 881770627 968046973 795185861 662368292 50615918 825996673 683866734 264633918 57358797 165795042 76852131 426458321 645965939 395922379 422674001 703950117 690963222 191215933 228702331 31208515 472481763 89059781 918829708 197591623 224211810 924791972 561471625 945138756 13782786 333658932 852115303 746114345 982314573 234478257 355249518 948415837 733964145 390732914 570195637 170626831 41061922 854859827 407253168 258226165 348825672 246653719 247192676 586840793 626843442 97289366 40339167 540573918 912529390 445863800 453459965 870659658 867621708 541469081 75959042 81597723 472435447 929465832 59607189 2201157 866222224 535902405 605609491 852777940 214257242 579353420 681843016 248481561 362404137 732323851 36636417 540741722 45207084 682933478 503481717 19049289 328253015 334751424 628948238 963691117 261527449 241698029 212304223 268958441 320532024 185332415 433630601 204908925 362295250 900956123 777895749 417843633 161888361 689248054 130420762 666156001 854929850 567045478 656566449 289595200 839466306 101835088 817132525 857193994 746694907 541819557 316374457 936714274 578278663 308719364 640731087 358337262 555942993 908706879 708694625 458335752 429813707 730722691 704925080 389594674 154288407 170696732 945571076 350914059 709432964 624815215 273971258 323969601 755774474 329223116 732097195 272320602 942736303 169964601 636306567 261797420 457155613 268611159 326434901 841430036 970687096 85864185 373565808 935266566 62937506 733627801 50063187 31708462 527200139 576549066 601007972 974494631 407865315 445705367 425551622 656333847 554109549 661476532 659440141 686702223 331281897 648344799 327454349 905141522 585309945 146602741 972383216 40867141 816149030 193660450 556445712 819917108 959869158 968417466 793917606 898725707 381362334 11304237 180087394 77806254 285080287 637659869 503643910 280748953 164515922 686207439 244254312 50550955 227907898 60499477 150381465 115235645 193057304 439901308 775936278 701463185 713968812 969719936 777374040 314457653 920768254 137279740 372136722 270961886 496295952 241936127 171364183 713675236 557446591 356216409 690875123 977913513 806507127 385041472 41724680 167092472 95391256 376743954 972920443 31768767 893129604 441342437 369320113 605134036 12667920 780669621 256493241 898497590 44766558 977107630 484414631 845967397 80867522 630688082 47870688 157522685 189935632 660876918 512677276 951733377 859582488 221550643 565260791 617815900 842294695 153779662 596763663 125725195 107423021 884969296 818129506 746655129 438535756 563303009 683725281 719085631 549377106 499834156 25079147 307723505 976019437 762305641 507458179 35803761 372419446 842617993 275673395 808894754 556632216 654092742 515875628 537959465 55381098 739156781 567939393 227944798 111658348 187904939 922211306 377280513 331621216 65314484 954346522 503125550 494221058 904643695 112896675 222597519 205194068 704333796 480606681 644167328 703176952 72579598 888557761 616990726 351261510 203935047 277097548 623013866 71431281 923728278 756131626 872214375 100276374 436587580 217278319 432489465 778197470 505119458 333180306 587288838 880046321 425339960 275062657 776403039 458759288 99106329 180908814 506566775 792841298 178873230 570126383 549576572 100085643 527424743 311052282 888867069 100853893 625820113 448508277 759206728 251808994 553941762 864539147 940034122 632550620 389717928 216542188 451794524 143031673 333319687 514547606 969794266 876172232 469012896 440543303 61413623 602403084 820746225 245928811 218244344 802865381 239186522 198049143 326065533 941483371 9167188 281724346 447508072 703732097 378971445 12457202 589345389 958678158 571129072 717493472 664929018 518208921 206284527 742997446 32131967 246621858 478163007 309888887 38827833 873965886 90771528 307582212 334071161 464960730 710351748 513723700 92852292 856679809 613956221 534754826 895067155 327843059 179957900 470365315 380302621 994248994 481092057 698228867 834215524 111458356 870891156 903213199 856683841 101032202 272051375 906593799 502972110 45751382 744910584 701278342 214755990 596651420 241537908 31369350 537903715 688640956 132298424 426513540 377662006 754918206 687315892 158678993 841260494 281287830 956783294 74368082 541358821 352132912 425387301 101693277 185474006 571852369 228100186 226499319 571329885 332547034 724287237 129765803 116599384 724829268 74456772 882183412 459413748 805035309 778302743 876794879 739179579 403189083 82942815 146241139 735348688 53972328 936105187 408394011 843512966 145662474 437753018 276523587 175637599 980093969 686336876 257268060 969875913 472282077 692440200 187215255 877461953 73985154 951931313 475151426 667603987 680039976 476101361 18705306 693976059 844644366 31232099 840938828 479361368 543118118 329304777 540274897 314896508 807814016 778775810 63392374 717613416 663066229 47707663 419070651 231308373 478051740 397714207 936319912 740714218 912467591 730123088 510613203 574797330 619758073 424491833 136611852 449782875 186553495 256720203 890868799 372959384 193315756 395921404 368524229 312413187 859881022 176399511 323101403 554985812 187031275 408110581 83791111 253993350 555771927 766416421 771996978 451116037 761527782 246347087 113103022 238918244 458306874 822853842 866699613 538432343 707190948 18562922 785189149 942042622 131711318 700208738 382289879 488749348 260323415 300409173 370143921 39378716 217068207 389780140 983831239 302456643 88781630 894852601 286011992 324226327 798279591 833717391 917216581 728068748 549818680 725699002 964626859 692509413 538639901 136791349 412439887 277069346 909685648 148909125 270318345 406884991 30028331 37964243 864379702 886019563 210826259 615862876 471812518 204715859 689536893 200062712 873848555 826788194 718459976 169367516 18476138 129411444 947780799 438912512 439861467 753458142 817866425 379623885 810335718 881221113 436686942 976216493 960431651 194737276 539061158 709783567 868627277 496657845 591238163 905917003 266109610 271625191 502163415 418512227 233451011 891384320 729636241 300304306 748503396 706060505 171615714 471616412 107916926 759833500 183609359 921926609 302516519 647621404 777196129 807629173 243410537 957964267 903363596 706898590 148637096 394352343 129774933 650682916 668503912 552813929 546924956 900905953 866440057 566845465 338927394 585171768 371061742 363217197 907814826 744735859 717963582 539848716 164047584 132831399 573619674 893126407 88058351 36957632 892029627 643053000 314723996 633497145 740237188 489757373 216871032 721860903 70849753 585395209 132693771 381002917 199812493 672632689 596092165 517099341 161740747 439277480 416559565 47801480 393586512 910823847 319414482 559395219 601075197 725330957 605879899 607313621 144649807 595938986 538299679 223100806 14146326 482371650 692929076 882759065 657733557 741757895 234795153 703729558 109766357 719882808 577458686 371797780 774324718 237006642 990320228 995310049 442645415 355943978 757138324 122473182 357653181 481605752 796379604 848352080 93884336 500362268 91815554 193518994 152711492 700544321 362778309 716993327 329788764 444805936 814695139 911741091 720429255 37521937 710318618 96152553 383473505 85373568 873159019 717109928 866011175 6243890 704698590 423704828 767599334 174139108 845025775 663649270 8696279 323004233 615739588 481769544 331143152 656309128 116341368 376695200 325604578 591895160 905939218 859116128 464847195 83732991 375136531 17274060 399555964 596638170 787347388 209192692 132770027 427198459 723332771 842413591 889770494 758206483 736316418 642921588 259410046 961617472 470028049 482619531 479058315 389394098 792648783 304650986 193930145 547582836 770780075 215691979 748361143 423588333 36266039 59995551 224997217 557727085 925444025 652377600 342084843 803832788 912631410 308566997 480646889 299999376 708961574 750328534 292693992 833979093 46216886 484773472 632243918 414754001 960277080 243036308 319293262 34530328 85439198 389232945 965528135 644299635 574896098 571390169 862302977 803405014 208127879 900823842 593957925 387613569 287009019 176732438 360891040 979621593 442319878 921856335 80329727 899285852 221658353 930655370 672400415 564989613 635672723 343107635 493220172 337014691 248305225 88068754 205219975 140240823 651806467 603551500 564262645 166735765 662422125 815372222 261675791 511704640 97324826 407745529 151044989 515604196 704491086 833953241 427654324 851427310 378122670 640793297 767394267 240203066 534015573 497575745 791871353 259000015 445839009 333584021 689426144 65575557 50344520 150496323 946208256 915654667 81824865 60489060 581046300 306127053 223540550 99608497 81964574 7475468 202891589 148995366 134326328 846212706 82182922 333342874 313721965 762868614 434854726 794436736 665885792 40928045 159984050 265707670 522717838 710890222 220422797 97594346 937013464 937304613 707531553 779162982 324395906 228859974 602019384 788641709 403583099 571351274 467017389 350322396 744364938 994087055 306612558 40213822 122699180 256970735 690727924 189562524 784915591 520543883 229833211 12749948 72205905 598565711 134272341 751815401 587667763 945254913 545164381 96878389 911933738 656087558 965067669 707855375 401865659 876428728 575511196 627400241 56284021 689052330 462616408 840915144 575449962 990416765 925197090 877952144 629295790 435042223 273388256 154914700 486375704 580163255 187613123 297826318 120270140 845996217 853403571 741915147 861132135 399446429 705423543 81474634 815940997 680775333 142800049 897764058 235451189 77754655 235195379 487706632 82413285 760260598 478746240 839225338 842874534 962547485 864373990 419746804 68436181 219055338 274555307 482353082 949494457 367639127 779828460 55627173 166984471 792057034 671859904 844984475 691287899 240412386 9517061 745278512 764545672 955517000 538836617 631864609 103613334 515328710 92627330 744231500 981653688 62700916 649740372 30954252 758753449 862521416 420197354 56951348 662326069 161714876 873653326 526528552 491873813 963004052 904182143 293469155 728137413 676719388 819299254 217893740 511477427 928546108 527267119 767562006 894406064 283112608 892869826 239611935 585514738 242252761 433701175 586199552 584006717 685466557 52898813 690214696 404632818 737100437 335274061 211522239 50964331 257592886 318683211 2723361 975993901 351121449 413450276 873710428 50215592 331806666 609572904 469538691 137699010 71602672 607689121 22976384 414768523 745019325 798335274 624087229 540193503 58936677 641312650 899215711 554417857 849335813 355693232 718910070 129146033 692474279 579749440 10865534 577221746 724153675 537024733 402198463 503400275 431341790 560471431 404784960 271253878 486207445 999681933 384502354 192902885 449193062 114066832 477893807 363045646 891326389 604256282 902166526 84596176 34455481 144426249 742625317 685577951 285125763 641242746 388927368 605930777 394447022 227350775 817563720 733993808 32025459 680647940 553946729 535378229 328804746 795741332 431463775 236248763 776175864 121979311 544924438 307535932 902745477 633071803 85831707 371866082 834088908 791630067 443214800 977295775 858776725 658284013 191133811 112009521 162949163 358124723 976566903 639684782 643251777 883567828 199968433 572811573 472722798 881169340 478261735 79651317 307511560 646602981 630664922 621857514 840068574 413344492 28999936 319598796 521114683 643205793 92085449 61501471 718952650 704164804 981192331 234040990 900721702 410533683 423473844 710593825 363701699 69738478 900423527 426339000 852946700 55477761 707671586 462439813 857694029 733372987 907670195 671083072 788629650 874522435 445379137 836977398 992337433 948011926 676546425 679605275 394967577 189455421 505760318 840248511 984899582 625302967 552059172 947866030 388810668 776801417 936053707 401048901 47690301 82725405 695951683 391086240 881757979 158412534 442166372 552109393 243073992 723183267 95240116 20376647 373371807 267037843 185450124 770439118 141921497 796080424 859501742 855317731 527883666 938868464 484202048 199761409 479780264 226292941 639317921 73365795 482701122 224754638 316465346 249053138 43765761 355737662 226902790 544855403 868556877 237925234 107577184 674227582 794876615 385812148 888923809 785489179 537492556 634269302 828038998 766887268 741445107 74399696 769093409 929331263 980190611 786625181 709049912 311509681 287692427 768729284 533054206 190409407 849179068 246628363 618993463 851241392 579737141 461065027 9948639 593039124 937836537 841967953 6983274 757585623 1892712 983958204 975887197 641454174 925258886 668452916 114485766 316830269 92928422 697505553 99473342 233246582 230963494 853538012 602998857 553073680 833657935 177388838 230015100 924791327 758949159 947528503 317749043 593038454 117354371 757379885 248555108 417636215 349306992 673236264 931790745 605306429 18584656 664436460 919002618 924226238 541695110 144203448 818298192 629622860 441620993 305892202 790406245 7368814 918878931 699130386 824857847 623116215 878057743 190497606 872065290 660134294 996842205 810285594 443027304 592433556 595633570 86969015 595551440 604601255 262116586 457489332 230885877 982394999 503859719 539105008 661092430 460726635 348602588 119648089 815650652 159075376 627165328 113741749 117937188 868447391 992615127 948024288 991426392 727787097 396300791 224188197 498488272 166886534 647243101 142092387 302307546 801238104 53359483 132597929 609353113 52608834 503296983 208271681 562360732 598187957 841140221 538789440 698979319 644592898 705449369 556083537 607323502 739830499 609462897 331860821 126333344 826631654 787140894 292342893 137103334 752678439 400096354 558950396 376291445 251077435 189417207 846554876 83309986 84507154 609427482 944330784 606949562 202648847 293424485 421780984 690646167 643805173 955583320 296531782 488441002 990438207 910440616 624112100 648227417 785362260 95743289 802441981 841443174 61009165 487262663 622139388 480684028 225146980 832097639 675374695 3388133 522356061 413562051 613363082 196370936 578258520 771502222 994792091 922975392 784916796 403197280 511444040 189076009 498078972 574780651 493584939 647606378 820460760 104123652 224598279 891396375 132254448 223591650 839844955 39356891 413985578 782403770 205746593 129364674 306866544 146329242 634493351 618708860 939751406 842173213 399076768 984585478 677321701 629698078 997724710 498693966 600076721 391676253 274768520 202322156 874964571 444206110 626230403 721368221 590765629 293047113 609723993 907711516 256213357 214963850 492446276 745186852 610423426 171380767 31045131 651264455 679362394 552467382 498921423 560791772 772109610 384303249 992422334 378549294 804696695 591819148 748411808 789979177 978527120 948352863 137025858 303494544 758249021 847061456 313901436 403190490 65122995 41203271 385101557 289888980 717669078 647177709 246420366 458265228 629420054 910902859 583563599 631943999 672572946 212370788 991590957 81595873 832297924 198866431 766773276 421113336 493967750 132465400 568327943 45403411 298403184 395778652 583891565 183119666 253194405 202476496 430474968 83701503 926100222 225799032 966309605 100283548 498409765 211494365 207332125 598396258 856692408 621523818 179640312 747103183 960368995 251017780 433274245 128840783 878895184 185621161 521229195 152290429 949629638 907637293 975145986 447530271 497983372 548587845 207607314 785895788 695020900 596479390 183544170 257702759 618023719 759187238 793558942 737707218 911508061 907980733 290384169 870156269 641614877 803989409 785072174 349288666 63406388 507917868 888338303 140100672 491510024 10124268 95738909 500691450 887473159 790456485 731283889 925251077 260653859 755971567 927865269 439425972 458845777 667819299 575651329 137411011 58731680 819210234 397180962 929072597 354375322 477530962 595908573 267828977 85766455 63460898 756867566 491764316 22308922 822031835 457716970 370861844 372930525 897363370 795069853 938720153 915294692 895701250 859725148 907435767 533325875 524369928 504424032 930176355 407051557 529582792 967139397 941129885 177871404 551681851 920534659 798921966 946029810 337706352 447355278 806801191 726487418 860909470 816541146 107129047 434792818 128461864 59410752 731617516 73647770 733379013 733441679 309777459 322561595 881846230 678500295 15034398 544521342 512780848 896433745 358601070 262045040 107478043 768554992 295620315 49352422 2787982 323109491 745075783 185607398 852223788 790453765 578625616 935671167 337366178 4606436 675538026 903685079 981370127 701372285 606894401 882043057 774762766 445184931 866731419 653162409 932787684 303330486 221466058 262020146 922066720 323506917 706544273 27515412 982557616 332186615 215740779 5196343 245111011 546060502 700304776 514188517 608877327 430243776 458072438 202774177 105500312 934967921 999414222 15662521 205793343 126512840 258309642 560452100 316093960 53276661 95166717 471089634 655244655 260930124 880780972 654539510 722174740 291180533 510049007 404071978 195775207 875418182 671202077 919516367 261487656 383530133 376099804 415137308 17996908 621913778 554295039 900347006 390672207 980565727 568768843 998420874 926266394 460032298 680982050 260546207 258897715 738768136 591190 310713576 682366645 173235255 754231901 204782518 801415928 353426567 842964420 519803565 157119017 243078145 317972213 843782555 778035097 35519643 187676524 557099543 7426741 570211561 958610023 233152844 325565556 652321985 789358407 466968145 271254222 850977162 345692698 93228331 60062000 523200529 107417879 506616270 954400279 709141286 796713444 243776086 644701281 47147775 92611068 557899034 489285599 694220483 627469954 461009830 432120726 822905441 935714928 513887221 443096917 6667828 346420079 381857603 114439061 639445848 547444660 381474819 198456263 81734909 447388794 250724677 383325135 344912793 622791094 267023938 983994945 575721716 201958342 867086072 984608166 502430905 496487914 843179947 256159676 946607586 605832800 822200013 392072239 187700040 720339125 905914659 865523196 527055901 555528870 317507072 828690575 561651987 293928670 648064342 389010206 826260018 351404495 778607738 932071795 811380883 815124680 659194398 922637070 341895002 501965837 740778827 86172867 865841565 468828980 972805402 629418781 613234727 151736434 921135603 232956765 75388335 963768672 821053487 411601550 951069627 351077752 570759378 947475361 894011178 950532752 74506182 935763032 79548836 575561205 38447670 583825162 902529879 77609413 665886016 779972326 735987043 461123183 448428957 352203816 128488370 796059961 651187061 2213937 271957342 385841238 621743816 962684375 139390043 269789382 641563650 229056640 277225980 441669838 818110517 848556339 759271245 383025843 697913451 133792769 757400142 185726593 861882536 655988921 739722263 436755818 81411171 171689395 472194942 827274738 514236194 66328757 462643598 756369012 340254810 437707521 614859977 901275149 535041018 311039182 458145556 736546456 157604279 442886060 337949852 857807125 271678713 209065545 761375339 58689420 665629992 360962627 690158756 15986666 822722073 454938299 425000801 86452327 232890471 383434632 485563635 733749834 31156289 445602513 949963064 938896720 513965871 959877870 373010863 395820623 139824064 799539393 141052548 920037680 406267112 289721424 668755378 847482956 428993107 100254067 898486710 62341370 289505784 684748130 860602518 767487319 570950778 638811505 98181586 97732556 729464879 684262293 748809785 884577530 114580636 278411450 655362837 151248402 619331833 774315524 104800876 327909827 516844611 251804129 89566368 565804311 252640337 903731948 141630343 619778640 388129079 720590723 576322906 955896034 128891182 682228198 80230388 951274687 184428982 643217472 863876430 780543103 815372516 148462384 972326561 954852133 444280624 449498421 440430653 268081424 350965600 905618697 397782019 37429507 674173083 28605959 464143741 106045553 872248468 816383151 878710672 819107006 385837771 264540536 658168175 112871252 955006670 803557562 767519497 131181167 157571582 381707449 194888055 74329842 391271720 406705329 270273325 682882617 697658854 607234256 679518649 689583043 96365735 869655882 777109810 687659823 362784682 570252587 604414350 640786746 18744306 15311157 25150172 354005614 36923596 290196396 308824561 348211359 277967616 199867908 678275590 540724526 446944366 273543487 688076314 993943105 221029807 432071249 942624029 297974461 40858206 94277693 278522824 812153880 18593071 291446956 418677813 765213838 458377392 897128819 503584712 638676343 352512355 304726967 602952874 43929302 67502566 889107318 763972693 610449491 859950809 198098403 575105204 385965190 286262962 11550962 333296445 206804697 739414174 245737374 251416576 899566164 388082889 209584430 738115932 437292965 242252265 268809523 907485628 213526731 87100182 357675070 177830930 285896968 401899767 469166341 158832817 210389251 241533657 947367543 596077239 138935634 702223277 170063751 716865792 961526694 125674841 615014527 921466828 344023227 691296247 48158653 334500868 536676741 729942108 947912408 950426362 514636381 394369491 423145636 822051223 6243898 413871122 454657558 468514446 590713002 740924519 648374834 754643337 895973478 542422930 66019903 548519632 757804449 267129033 807102744 352331262 954301536 364171690 61946528 400291400 961940186 840645782 921188516 837832690 161785509 277818302 235673466 110654328 219468879 972382928 411555724 189084417 954940715 274070839 870752422 243862596 389506026 125243323 209586380 832019042 513815186 231315095 152980842 544889207 488123200 11576127 271044778 470136753 988458199 311670200 603276081 591875511 742190131 716282683 772083355 181798302 318247843 781750622 946695309 355336070 350364788 499874445 167902244 578561699 635702324 690217941 32519204 898872437 609842211 646027122 747773866 428360608 2379603 889107913 551530093 196530392 411734349 23612181 167066662 161470175 868374614 451234143 348699520 457606907 577516277 936732660 360665564 554409188 489078803 81004800 876841694 889973447 421270377 322443599 193132133 460197900 34075525 837621789 956894531 910723921 611480669 392666542 280514064 995355098 525683070 608334684 637343443 314120700 170156881 847855647 173657169 188208154 50450445 104572400 967424663 822532963 742949373 526855036 779933943 191147391 847094299 976864605 846888467 98532732 788841797 61293920 701127880 607609482 479322728 354289245 128092687 415929509 213995602 422856529 886995596 330509698 432576131 887815421 395842550 863509014 562555599 393848951 954089896 200319776 440424208 663894399 311302055 839940328 581785278 213979400 347789833 579667886 111011901 191958017 492899958 547486755 281000351 630509945 35125593 408983246 511436880 148186354 192869257 153572432 232215692 494017061 417927400 149646174 615295836 486699777 50976330 578702038 510711240 767966513 620632758 103198128 756483087 332642581 555484829 277645644 460740862 396261863 127080461 719885698 424218719 387300275 36693318 787089604 31290893 783369886 412127743 200390322 210018216 580760507 984324931 563888677 80754007 903034834 729556734 569489180 712123185 186016974 392668289 902593698 426740553 542180124 737208270 814155099 555640883 2047905 921942246 108079610 224485995 95826797 152555526 781429771 99240752 110922540 199544388 97600571 130408638 869515730 608724035 455660809 858985125 419817583 108116313 368535698 559000929 41089858 443650438 72299321 541445073 134039261 615327346 324744340 672343694 437387779 864749946 441362856 840519084 928839596 313180393 144797440 792243711 649416243 960598253 948912352 525450216 930592818 552487611 239509661 153130659 678621107 604176095 209302452 466596134 320469686 81203412 863004065 664561174 672033923 500267230 173145889 348732017 353768753 352665676 647813231 886777005 209938021 342236094 341655023 428618506 811199231 597656784 317154555 10218760 271695737 42464549 11615900 909157006 559756564 747323072 251878660 208744204 646258563 369011914 745339275 521170463 649562307 815923117 156362602 373876220 998613471 234256645 305229030 377086845 469869019 558623829 532002981 139290930 406490377 918974604 574261725 792586016 819963896 538502386 807578640 876737496 513760384 228588003 618279225 500267814 758399109 357734060 999127197 376718669 982670762 908817917 211224950 493672888 910153871 356511676 939622276 859757427 595791628 319515052 408964187 130793547 271682142 991608501 665390750 739517396 332531116 929606877 954771811 291339426 159911869 948671681 421731012 637293493 584829116 331601642 313621227 63368463 301907522 943431236 296104256 954142000 502119547 204509078 41569374 14816588 823711293 471115035 799052487 438219549 346346744 945399862 919643347 303982636 448766110 955479554 468467695 780458202 332888448 665706610 242709470 839177768 446424604 611424836 292959211 171771484 455690314 720883529 506402842 365732343 533649927 454639958 59400697 980317273 642512398 886761686 855107439 640163932 642445451 358556726 730721975 666941471 731204125 552601803 370475614 234559690 928065368 349866875 827320259 491216900 998054909 392367929 921130771 914238185 129544621 974277084 772894896 880662767 427285152 531936032 565478680 920921041 756562398 381576880 367818332 305778971 927651675 223869196 814656090 649911677 802960195 386761868 83051069 432932737 523503950 265261111 897043357 106100136 616640860 603409108 531722405 99251048 532138024 315791569 147320802 492191317 920260697 748897540 449336206 657290345 457109216 790836430 416311959 689003652 204114376 970920571 848595334 48118632 105246229 119461723 840681520 542930226 19634922 379311702 644150200 379862615 381744503 757149721 297753691 542523286 17195697 952364467 742934113 185533959 129491868 693385535 436738928 243184764 167426966 485371092 133414179 251515669 113427505 278012082 677991246 563667999 992043096 547277055 843572920 450199271 123102142 364609661 371350091 676925116 290391624 169154901 744529114 30816043 426036638 192058797 684988987 544539575 962746512 483256283 973051557 255762033 40547623 787156600 570394865 630326426 499998020 960001011 810200007 327703698 745669614 406016143 86664326 436435790 349318172 217907766 294356642 729240605 765942742 131921915 958997129 86511214 669361474 684642532 469508305 916380912 679858372 818756721 605129794 989812415 451625916 588701104 280761504 528260029 647013791 919159426 255706341 309692257 339981267 882893812 9331284 334246414 212802801 876122018 536054627 909565168 247845663 763370924 615522920 585193659 270546916 656324003 216199676 640576790 621057210 657398045 920616658 198444675 273484153 581571109 449511108 938902638 493037398 721080489 330722727 945241783 441466857 648237145 102142890 45802240 311700484 129563935 769549256 108954418 888125078 742435023 47541664 798461929 237338509 811133140 353140998 310264037 55261923 173365806 163904873 694293004 157119901 449975470 728428358 130513840 74940252 677885427 532117852 712854578 791486288 289236166 137258892 228209397 756929808 942977392 393791217 890678399 650432418 668016240 148218608 624689515 316811526 474276898 715715077 166231231 415679914 843442280 870460925 980536029 868533900 890151592 639215498 228731621 341459553 643621203 72184883 996614139 148318405 469308045 525834439 719538549 407269107 636166536 86285545 467733427 730628889 213236154 896720572 582604364 792367240 739032205 770080602 985623353 912345622 756982555 787489737 993204298 625951481 938561050 857571967 239003514 439466723 193112035 62873496 627676074 929369800 964199265 962022316 580647866 749734727 878150468 491573386 407605930 245115280 493183620 141861175 545575878 824989598 73718940 327615392 410259892 949133229 890046941 540988043 335893754 409226439 299379033 80007229 258618176 878049545 241519654 227343392 141236316 205254073 919133933 16968553 877382979 666371562 953423688 139115982 470752029 913511771 996170256 507307282 744143067 527431280 296148875 393319991 61125290 574189342 790661472 631854156 904142931 643624823 243492275 820194267 388106932 712559900 203119667 763003673 434910651 312490131 735415355 638657356 482981490 589440305 863784015 165984190 818686266 347342899 90864 957187851 930547103 938944476 286663880 428973204 657058371 651295555 847441152 87738331 995241367 691232130 952084197 471569227 867623567 281765126 915701127 58534178 88092669 545416396 796912458 322530867 729992788 660320748 262289238 318301758 150052498 226358313 827895519 114607694 926728956 454136037 848750310 568968308 465837959 332074975 427195413 341619380 680910297 24185553 151544650 671733867 6215965 715314873 19002371 406440420 557439794 199070490 7455853 374043146 407153654 136179145 547056777 849370031 283544026 795445471 768010579 239511848 206025074 843667171 987490319 892207019 666895991 93191871 704628818 115735280 130347628 501723307 698563723 209403853 28605329 942103843 676498740 733687120 697152651 15383619 854237371 139473647 562566866 355015450 403970991 104563447 673858150 282967878 733549340 432136936 500992370 846133041 352727583 825528265 837342731 260340100 693949183 282470443 268447639 106183201 278637173 432570947 867890585 256459934 150173489 317406383 312006740 48596111 780233413 975628056 20767059 729888615 657982707 421244157 117689133 498944302 284923559 791268747 280983234 584897635 848533312 936617811 216319171 613087034 243496476 912601120 590508774 151832118 437728956 1871817 684048627 651345121 924333123 617526863 976029037 810660409 416450002 809029299 431969199 985512385 289423342 586865707 871134825 569194244 528978250 395653922 521664396 299356054 894831454 778197799 118519491 818972271 729634991 716183575 320071134 927329385 375355341 151350187 822266117 70725355 29604734 963073836 503150628 14941661 792783341 421221702 45903439 866661642 702080946 51216809 535076045 262686981 800222373 263113232 585017183 118487294 534713908 299255339 366529600 220140083 618767114 361761426 631484317 478291216 530253097 921621789 307163297 286953650 641474971 98560993 472303235 387637020 453493021 187869847 644219362 229283520 328389158 554946940 946286974 701443444 261938463 935092532 363901808 671904378 112468392 651453781 243055513 916459486 328303224 188609676 22735198 619600419 959214028 640771992 94804365 586416973 708112425 422621005 58866293 785599548 986820902 393939732 58493035 244637171 942557334 832656315 536337252 498925374 495217162 377037254 766762152 952171132 160828878 515685136 636075407 664953990 221041715 52361955 677278840 230239039 277708886 881666893 797520749 830709242 550016593 121344581 250687219 454602013 186566900 121679798 623991858 757213312 471759706 441566166 951904294 870086659 671926886 666315165 114442708 619471262 842351954 31463845 754328963 96881634 907576816 418798561 160113654 659326892 247594546 812879129 164515549 102259360 860430730 912271433 334938063 187701159 409720960 243818783 340642971 140698855 250610306 417490001 37859477 578056989 852556488 803537343 568886200 369616454 758672539 690480992 293079132 382591787 562586988 658776552 323900243 367837683 150992353 251123024 394403799 810640770 635064658 856101804 528099480 679422471 465839367 639363383 985515798 390928652 847581101 550180284 339458587 773083400 615705398 247641162 963032658 267421480 977780874 887474321 539658380 744831748 837497116 676900740 964136418 713925714 338892249 46281192 764350839 615602594 282776379 89461393 725837513 406618864 64556748 553872264 367368505 140419057 173937443 426160648 972120587 268513595 762468752 258285443 712774233 203443791 837778834 825853069 747002743 233690255 297243459 167493068 964014177 101709195 601443041 205292172 768240209 315341803 255991773 665755097 557413305 635045244 418091641 650678243 409979651 289449707 277283389 288592104 265257255 187041215 246987993 984913938 981874033 950582691 832821921 427658156 707141580 124098266 997774610 783997570 261907830 757193016 944641985 808129983 36926778 833045752 930283441 680824156 936931999 931697271 362875994 38454524 813764075 886896635 726857689 389302007 720991584 867057136 995340822 133387942 667713353 479353586 581928470 202967268 866483660 75452454 945612978 97323508 990526435 350575338 940593404 728815698 182959317 311227414 701606239 343070277 154840899 940123193 169627351 910849912 519049534 260038730 456556480 169325282 731945923 929972777 721734707 356962373 91088743 81163805 736946303 498719506 843157006 432808372 587096223 588680719 416116033 862762024 233912766 247377760 576342918 669233087 381420927 342075632 185365772 441442152 699362168 924080344 704027325 457774965 575026016 632518207 793047309 43621940 292877949 542351805 627428878 120521378 552340360 817144625 330602785 230911201 822297216 519379243 199943430 484419599 504414839 937575198 752643773 132884253 336945009 870929774 683491984 186759830 922330553 543672038 163214964 839521496 703305224 919491465 286294606 619949645 489761326 350370751 137172325 712219015 373101464 524150152 673073491 583599272 749323332 99471434 321947519 150516435 271620580 652446861 201513166 137092633 508247881 541600042 400602593 942877980 587431500 78706089 668343449 221771860 934687868 198337695 485465075 124787919 12953990 761808117 31791107 724668545 9601401 77467472 127343126 564282366 895271776 687738444 313619002 250409781 940729234 787500289 9736151 80363932 361735755 691075249 880486301 756842244 404926673 249721813 899402024 798903300 554694303 857734064 724743397 591195087 283495146 973501260 800855011 735325840 60285097 507315509 509425840 505253730 276438505 787352122 624407304 277389706 505644694 626762463 313276346 857148829 868029548 218796490 692785175 483296629 15470622 837616634 709803752 292253484 111337965 975986357 89647434 989990968 27416729 851411126 92195726 532497969 967292897 925231439 205918844 118916791 745719029 449843558 406810740 608345319 38277460 739641784 592038362 338034082 659281989 646704306 19016307 930222746 842485036 695989043 479482223 674774343 986967471 153273497 203269909 712390009 845932892 747228708 750504073 291160158 320969095 517618605 972157548 429234539 845033965 978722321 784967023 270974848 72451904 377409502 679683392 31224907 450903718 888776946 320245082 643577024 35129940 555926929 628990866 74045827 463022372 874910719 953160145 872638063 513370111 218481140 838909071 57682121 756462554 64131521 27869953 14762903 172733404 309754697 308796342 604346308 843899552 499945102 365620443 251311056 949130061 120551904 100903575 303064780 372113585 437607345 449291947 729530058 142882574 743029465 102705463 415979070 955682230 158031396 429175710 756509155 534507796 82938463 619298964 308567707 593522006 486848676 247861884 301107510 496244079 291328815 741633534 189821295 320735777 993391001 401883480 215989400 315294543 895759696 987328731 694339777 676336287 375581058 582236984 549569162 153738742 912989464 44609937 59338880 592292361 969730692 544808911 224429086 487171715 718562100 969512258 824056740 489575190 49352895 986798836 353577504 495310559 394953031 64790192 546932197 480563506 213838592 585145684 307063824 382860372 924884718 628693785 550267039 289030509 931469264 480743815 765581998 336838258 691701411 874332011 588178799 685766243 413750866 862610853 347269627 639909594 835385536 599972242 775071148 225454263 163715642 584430637 637640646 934258790 39367453 493614265 821397433 465385398 126788333 290079057 32341585 392513590 555050517 189212611 311397472 192376091 886168007 101901472 153891821 499826494 382746729 63082962 271700960 737723591 973462850 169016626 493635942 60703652 848371629 22874092 519567690 341147600 628318702 924695830 699046599 788988174 536714739 403699599 253983892 357526653 183264542 933827635 302637101 194634602 14881457 391314023 608273874 616628638 14678026 635530609 798951222 839820573 233617022 798521679 502255962 402156858 748624546 570394025 938709121 875759455 995643835 791644091 658234616 185471686 177439083 376982660 441008073 595919338 49081625 673327369 981130126 404444104 216911628 819176003 798693731 437425349 810028267 391914578 533710115 742263209 591375509 895164057 609411034 868820467 728857750 607736247 973165857 706765060 144008729 587605832 875071666 520317891 817025323 301898017 170540280 830492218 964075442 803426756 249644274 90005065 420102074 924305317 942810818 47002634 341752573 169754956 734362582 818653076 905297305 222873142 837886650 953172177 133490440 26838562 208139748 184379884 394016448 468498209 331987080 219884089 903838244 871588165 641697452 829596584 254328705 395936537 948945137 514306804 375127570 671588150 57971243 282688334 119984241 216523925 333488525 871512733 452077056 886485342 620924945 270896320 373752994 254754876 958253306 698509835 481276334 919139810 388899479 112235337 145205575 886206241 666863244 421091549 19920441 274313701 384077542 627110866 602448995 531641896 611643545 999725275 431198443 581781049 726402956 959221348 593699690 607189191 7151963 985382772 380519266 993963534 339960775 609460604 809996539 554849265 553924124 544399792 721475419 987043054 559913620 549181005 33359259 556974071 498762219 635582558 626021904 610948974 706936414 284180140 586561186 453177941 212906680 792936147 54439583 361220789 156032362 482139321 174159752 486356405 92360279 41317416 73871471 496589767 590335077 39759595 972079749 422441008 947164465 532667572 122564298 540981929 368531282 240154173 99165715 383643081 611768177 939541869 335097514 806164336 62706053 20102642 892469671 783404502 81323653 643015689 642069173 403246253 206160807 670385765 628473143 197637384 578607229 862924327 741648265 600722966 763395794 520511271 626507080 294263218 612062686 156000118 315963144 195321537 826815696 618158930 673841701 789127499 265828062 109917519 791554219 71246863 985176485 435794469 787687678 749183742 876346062 727419258 934548382 430234062 861868312 725243480 803336219 309979492 861319535 117163634 273093802 605338919 290424207 904696086 63243627 690063754 200704930 19503819 54124262 377546445 417779034 155203937 787099307 640284279 7648057 473490391 178115216 51079360 397142039 845978485 850850380 394781639 586089825 141657025 384595120 600011074 799363707 252712575 939160757 673582409 778115907 467156640 327577413 362156672 765713891 705296255 473470663 435980067 27960777 122427244 380441575 122350856 193839737 48382175 940798016 672222938 877295039 730815419 948996809 838074853 781431075 13167861 662678504 206118636 15257397 203590689 661734237 490481897 578064442 922177665 599428462 481377751 452563856 718213552 747111197 906372913 841400504 939387093 50319526 403208706 681452267 207723188 800588665 995315395 32577597 596252916 359769006 958585436 171152565 5032447 708363187 1691630 587433826 536050659 328800848 593659890 135901752 891130771 636046392 340264681 61772128 731265959 762862410 371278373 754920204 836350689 433279871 67417720 837731904 738807041 236605599 131088324 760588726 31135361 139519230 777972596 101768775 545012194 836643922 487800066 45499387 79444538 403326468 904376033 224003519 767754597 438280622 62066323 283190348 358331241 976352196 772336332 415266106 316361513 818144461 956586802 663579027 312644447 129682716 12971738 707575004 827258118 433118689 803557728 293300723 108442078 409268351 209065533 682462635 957649621 958656454 961542340 165777375 959317179 583621474 646817232 202992252 333139431 442890320 906098351 862268994 896398385 491882376 411313519 847600928 95126852 770341410 952944091 882017029 748559582 336038599 817728743 321774521 936323614 979685752 496850732 173241209 20792102 86045522 751283202 914574831 41918421 907933032 29591451 987233084 880284593 649640343 215038226 308132373 127273596 862696005 804131037 636333242 35904781 422894306 163943654 883230133 41215097 443187138 225077875 840756995 520725876 236577212 376199047 795867669 113427551 810725790 97747876 491755292 989177168 610778759 617620380 236944207 864366255 476692865 805640183 666287784 718657916 817160285 565235988 585601837 607725813 650909408 758867572 936813018 662942890 517067258 525561937 713645135 227745610 611948559 406767281 797075580 37893118 670369321 762054077 652514264 395741597 873716178 406727475 857094282 890340365 981510559 516170584 221330045 959802537 958346707 636487850 944339514 678088700 211761917 312798129 40495621 426832990 769962998 983933356 337896685 279293295 952138765 33657506 189768620 741162332 230804410 574024272 61217653 796621113 104842674 682573589 609557957 326601390 505744653 151444109 400710417 448169251 689176696 979862319 282919934 489078922 954274171 842080416 844931603 384589861 607793655 35782494 506908271 686222499 949448214 599226873 183955837 952152030 225856704 387323582 844048383 524261492 889083082 714781290 116181880 539540053 904929108 254590494 484116803 166528030 292744709 864835256 481501334 7802628 504320236 307681787 614169205 540830371 117752041 721251677 495062324 539876859 455703361 527256327 536933955 799698162 573894668 252259708 585413757 309625552 324687897 611622457 248689974 942908605 793096729 225017695 279834900 877722186 492580248 329708808 296784 412697871 823719564 659388354 15743256 986764504 475503247 27513084 180690441 778442044 671439048 49231253 342067046 559583326 783793282 841771478 611887710 306968390 738244681 302935719 282488188 146876500 952110456 42989630 728862167 687774750 606926280 423648041 872429061 451242823 56616701 934895642 329581779 872407378 95800333 501658424 945913879 403006409 467508074 708392114 432314373 349821390 42566172 195168930 269594107 139001356 716477896 477814822 785495434 460579060 744476247 544192352 149324467 669178356 921319977 704914872 132962868 42462627 110767114 658481772 654937141 878348162 676853667 521518368 133089110 870636566 348681944 240434398 164322629 258895312 278272661 190588608 361240605 319023151 143316296 429715237 76449002 403592359 324588022 427532596 769461288 912276533 586550832 518235732 804755906 250936405 225578158 788676467 718506038 448612307 13922547 113621802 262309841 250436793 223810674 803240943 143829872 867297221 660176821 95259564 188267075 86911729 232808086 750195222 850277681 898169733 840047009 223788736 374337764 243490837 968394101 122838183 637981341 561045246 344982179 670058429 896895494 5226626 605191215 43847928 256112744 128019219 412544384 91863757 596841380 888163257 130225491 785150646 903312556 535645027 931395529 52860088 472781547 483935131 690742504 601255569 357917166 394865014 804758800 259630901 86689591 151914533 463163874 935138452 848864639 833348943 321833645 841369252 326573017 346099336 716978226 52401780 690230720 995262798 967521437 809794502 29971432 101472754 449187141 80738242 393912670 49031663 276986114 855281331 206424329 835627155 836333883 808641911 203573715 425725623 887661445 15509148 574414803 456941368 639354859 404537450 136011713 953457753 586633605 885743913 44241926 320495378 276640574 798368582 44096906 616613328 286286901 253547384 947219835 730807598 990252053 294558523 699626587 927479468 889602030 658986718 792874364 283832019 102410588 103577393 924538157 152688192 432533990 42670482 748701827 247460851 159418467 446875243 592942748 714651777 15625301 440628451 263212123 95514882 87207362 623620518 352717620 543992284 16069193 312414363 499422956 45426569 872391208 428997992 627488488 161666406 657073969 758787097 968003055 820971121 61780707 344817283 624522422 480351704 29154734 34617094 127355885 138113967 707781520 16200987 271724673 610060289 767159500 621518898 66256680 771732663 718917880 386347056 13939774 329471266 813609316 330286547 217042838 986614641 575538186 535465770 463084135 421809215 856381838 333987187 39984481 127165483 179919659 34095763 347192361 694410424 698955506 1428567 967704788 717547532 672864834 758395638 595502919 250116719 948503657 394057743 740895221 125501456 549345801 884510724 341376403 298311255 178798395 426331972 400860030 698921427 25148488 631374392 101856434 645253727 335530837 126730575 418013815 359468250 340680367 187469065 61800800 554467151 309654955 186324055 311152130 416872226 803421589 54580088 135164824 88164615 334259556 803075880 433745397 387953010 874355224 404055202 797483716 499155909 646226659 990327887 620334013 306444445 118785472 104810223 115841938 776399558 74653205 9616746 729700437 359064613 323020129 203522250 693690961 81805107 10316486 595717546 891913244 180721342 713735447 314156252 813989358 623057797 449208977 232444893 777917784 270955659 530772362 803727912 142815298 739874858 941486276 669060966 628153632 946668916 373142194 635924206 811176142 663404735 51653041 380794370 841656844 441716245 504582948 951433124 710619558 267905115 328290171 568750943 805839079 744616108 276318379 103829297 705763500 748764608 133159057 926195137 579091335 46684180 187707485 830618037 901956402 882602705 691810113 187304349 521859094 788219272 72799302 362894099 830001822 452342454 249954677 800844973 800920774 465332116 188261583 495310789 441214567 881397 214633743 939271478 246362109 330083953 964571875 807539721 778072907 462553259 865632939 332290509 815424780 385582102 965772305 270396194 456092375 30319247 719784005 901630482 526029540 639970394 797251046 553187334 606695025 655126096 891627748 978675405 943409090 555363368 414480786 724823578 153384153 290811187 138065715 77872018 242225481 44528813 539153453 392312097 901563688 677187777 874583880 793772914 135821734 762431301 123633988 389370951 677648330 329105119 886923391 945057480 790391085 269000146 883115144 631356240 576005407 978923105 268508196 61764806 167375481 289786606 304706797 78196353 205646986 697691822 306427366 912680477 577381648 935477488 950965293 805932067 447995714 108547935 264591111 976814759 602852420 460058536 954587376 415885080 910051265 680098193 462089733 818302312 280364540 449061704 96257641 804397368 28955774 326375249 613690009 376567868 435304055 667762795 826141872 144239034 628163267 295280135 585010163 606759527 126942418 252088132 801560615 111477058 754725751 222610439 153935434 751256913 807220817 275575354 677283136 117144643 74238287 14355509 957422334 467473970 200183853 282016329 979425653 691779009 418545912 19848723 360243574 881675770 522611225 783127634 907367736 471111760 161937135 632301029 918607892 920358172 693883406 984493768 26635286 980137180 194408996 98465225 759850899 964266375 383520132 581557046 156086640 552279489 947865701 316687911 84146418 321716928 422493624 617200560 80357639 504171815 293740225 220775478 686893893 913937817 367645857 131124761 712107971 792536126 899284368 903990692 726761667 409065176 936350122 333319789 185626173 170220559 435091259 83436799 800120665 838428301 312377518 111209961 405211813 795744473 80583431 176286570 40276564 717198993 45668882 316090295 782772598 294472095 402004850 207123401 298467300 282309630 828153054 911224742 176545807 694400207 780002405 611418709 640311526 637400844 799246911 82710320 646796160 272907142 79072784 906903503 157873090 785991079 257818901 611134144 148343196 636301893 681548254 756272621 980726696 473455120 471251592 725066547 753615182 709778781 888481166 865166014 49834891 7615271 638717717 137734287 724852469 947889982 919117121 5041144 551273089 671809608 955321581 842572775 496555156 981607815 756552567 96451979 591995295 923657662 754083231 16901602 788281427 17300657 297956261 501098729 184391507 974348011 732316205 725325112 488854316 598862720 301255633 134250018 450042980 214575409 940155782 572835782 224148250 775831166 921251540 445040589 364709712 57928961 416563419 188396544 583979527 659525369 601421850 803374647 751384160 311245492 286586446 852783755 350298126 636761767 95964686 402205705 303495115 296949824 622060516 681815743 237832072 449799258 35311009 733986275 231697998 118921383 731943494 55081653 154109902 814196658 54278123 234438009 252544275 712381602 150782383 719077527 311372858 540290275 107426756 249300185 507721196 47939120 437614447 83297890 575980493 122228344 873940282 682730934 336680306 599784210 132407339 345415790 896752218 267258919 414367693 145427372 247301145 445811617 820786895 268065853 703702309 949303850 540193234 864116058 372330229 562182803 357297555 616498752 193046582 347399417 478652309 174419842 337153537 905027434 701350441 31091755 582859472 741589394 423830810 150782207 917882541 867353095 586454390 973482353 680111845 550362321 888649662 735718296 963794112 543131823 643971354 7747339 247837101 556904249 139633231 593523473 586510788 913373524 509843824 859810618 154100241 842299063 793991361 506844896 469486648 552242756 116002595 6865769 877501658 982943256 407076163 32830683 434877893 378676234 829120625 788559807 297689214 949497454 696075388 104924510 403665798 573659553 110152051 785137209 623001866 409364322 828155899 399024762 821627777 190441045 492443643 573492915 281700479 302309732 14242178 676096946 311780618 510694335 335101814 752414554 791271590 912615454 848254271 64598091 424759491 738772632 118401101 800657798 662456665 409748648 469711546 164112164 830527628 512323353 831068971 759624532 552135779 412998813 881203530 37456438 504466770 658016639 993441036 365377959 509217851 720059736 430084670 533425798 652134082 96758515 100536676 94107598 371317767 434517868 925941026 900099408 507200951 813305155 799397806 205323213 568960405 473873523 552788607 780852226 465809331 454020205 48031329 256558120 514593688 550190306 115491432 584443957 232332583 92742719 48726203 963188422 41440367 675460367 219441889 475883222 193832615 935491725 606243708 117141061 941252738 929825787 383064776 732276286 658787415 106497709 992748992 190090290 525601747 717438425 122444056 200372799 165552214 711363721 10301266 959115248 548272479 239528992 93432185 121003189 77336346 617590777 342328931 744178292 479287769 504077525 705303923 365100445 229543446 395706476 347507037 532420377 88262616 416149187 528867314 911303970 642726600 180014999 228336937 872362017 672629409 714574013 494681352 577166872 337118873 251199193 366433459 427297358 866810898 680913519 884284182 171467357 527418320 545527111 397809321 379050312 621133219 255513092 735776326 96091269 682343618 417023381 260752722 22400860 297191630 279348814 496127076 100079401 204626239 727445231 182208343 364547585 234343939 228679955 846120823 17290474 947083746 250266446 932689283 441020392 792674015 343225268 443361909 936719247 743055563 569171260 247521285 205287805 867780683 536515243 46250503 864751364 83971887 373128913 842670331 723177688 539164858 1663720 292651355 478485134 99805583 351305458 871264187 858383285 281538254 463646918 921805988 992288800 967538309 594006476 496268853 699049001 502036519 189340962 11202131 100049766 330821003 237958300 905796663 172204570 658518033 804219454 569975210 238970020 150003339 482709157 3452318 703854085 736220811 260618539 385321129 372493486 832359770 785675545 204345152 713068572 562595879 327175686 841942047 761231204 94649202 57467503 879657384 117938109 302116624 91102451 982862559 314828536 932153182 385132353 493282829 853253839 37742322 557609578 199199423 708615460 636477181 575401971 473531138 921696504 334380564 137368690 225520821 657068416 30322789 36122909 495860618 370370679 282194985 472996830 782043356 4629195 255600900 602484034 205205579 151193576 566560106 193884674 985400388 317943196 689181093 423911363 918584968 367746088 924044683 810567780 916673903 914486967 591827173 499320294 490055232 906976758 441016636 548519499 491885336 387061264 758260279 472632021 924168984 759456439 306853490 875832055 422960950 480297025 967558975 753586386 583379506 877026819 137719612 216714795 401898963 821465734 346430496 43628033 475793409 451547657 990483756 94670028 312711325 824561311 253951982 496488865 148425501 21525129 65549379 697458395 440062203 693199866 685652638 566100060 459321460 965447431 905227982 95810612 391023897 712615569 414697535 704915405 250847125 313903763 898286528 733085752 782557307 471442422 731645074 197576711 687688564 812713258 116492191 863449786 606289338 225492114 258003801 814796182 338507354 260670087 26637376 127858995 759885632 346129771 667238276 112753668 279829379 834795215 512725790 553446620 125979384 757722065 704425666 110190984 147357559 475503447 900516834 376334827 200038747 351065333 481822130 143500519 610386157 637217841 445784676 976782762 172463504 463856254 79641328 544064946 705710786 362572337 937517474 956454470 531116355 69386139 848548626 960932523 439569262 843572055 758610414 943388288 423011830 177029894 494385375 384329363 843334669 459636225 216629483 433857092 623001408 274189587 47171427 499331547 409235935 336579445 861850319 125423112 140827704 854262857 977858512 588027122 685259291 452461648 754042657 115199437 336422737 642172988 687638209 749645344 709296281 953920179 702906398 701592383 44343964 6094022 772364259 130208031 876459292 655914895 167483273 361986490 438604338 67805987 970750542 687279786 178616437 354930657 659726329 622454175 382082767 357255852 415654319 334723247 563492982 780048528 208843316 253574080 488803599 343225237 734679215 62475266 856497062 598206445 362348950 23516390 104835395 148689650 274176537 343443333 821040865 633114878 72514074 48274673 140594772 34065951 79096448 588098375 563255044 357632908 646044334 995968682 873608257 793274088 305003229 407343948 666947247 908429666 561203434 178222839 852884558 790815651 370097686 115994206 289654553 924454067 708392815 746220236 878547278 929597185 387197612 805806558 984534241 387096439 107500629 879826409 700916261 86528373 924703517 771759000 562545047 675059304 76942936 525593491 539108278 776963675 679469184 559832124 634962691 946827954 835418716 745896410 221775159 66447886 104742331 948199226 615238790 347199675 189842343 662524966 853220477 437874765 964096245 945864981 949155228 450729747 885925405 122466195 927784366 117054045 978671504 500756443 370529862 207774356 998515504 939477925 598300437 483987941 202916047 982320012 906780621 79742490 102369753 81746489 815897772 249085286 51460997 784398741 112774239 441805209 827270056 939600474 423351108 536541732 500509189 652832737 186398823 402263484 566124212 240697042 520702916 806516003 534964709 941894032 150538414 374113377 784641921 898369195 173718925 783102063 517093223 449674229 533778646 685967641 31797848 55898683 471329264 429466754 723456013 560207703 631361396 431744460 782921468 431321104 621100175 293346621 19013810 94642853 16003352 362682501 197263194 391583408 118555365 269512964 128378948 318551160 105255656 587029969 167116684 732963612 349501411 976968180 618901800 768287006 995189403 137834828 469208265 363877415 179058247 509089153 120961934 401045767 895334451 976443783 898118653 743972073 297363713 712009619 332548343 714753155 636004323 490236641 419237727 468885349 286636681 670522323 797380450 506796314 799119050 643577119 729909642 915250455 592385959 722668535 940615749 56995783 653483589 942013600 530556893 381413797 730892358 758547433 804824194 603705759 907627672 841926215 607372807 307557499 481688227 561164793 625021003 109853485 297332868 113800790 558241751 153461797 87099024 796197642 672369317 22656707 216582662 566615588 332711877 832952375 65270634 850547756 469615853 875634277 523949873 412797470 33121965 614472284 588565591 485168841 799351644 240256728 67174230 468588417 932860248 948201760 337536745 26480268 647147287 226933455 874350573 341512620 844298624 702532036 851108294 382521873 284167710 700476140 938954465 811028896 175176111 455708293 794622315 60540175 47907538 245344031 162200144 63157306 803802006 536042962 580972897 412374865 821544414 272975585 783773216 604641108 862824821 271742577 359971454 575878482 845273194 873328732 904525733 163458847 491965983 159316666 531564405 202667142 118691641 331723881 629700575 269268402 728195584 360691356 243559936 428726901 149197760 41160879 930549336 573465700 537778642 786080500 204177609 429684270 577987614 781655149 327357433 730485850 692462363 732215300 382318412 222651246 234214205 258581413 817070132 712181147 97692142 886172442 818955055 957190378 49314466 397711241 821580591 268460054 804977621 534628133 642128452 336923134 111592161 858257285 618541582 291593041 788860319 856596357 515085271 172445944 950735954 180240935 766230256 54374237 338594857 382941683 389619211 54403223 411529516 682465077 614477737 924279241 206411370 247500050 510552743 965559654 819271322 507061430 295080541 144490599 206017858 315087053 121596728 908925498 100326929 44551072 651874029 241575829 995017931 853673314 547545911 736731600 663521797 444645636 156057255 223738917 370427708 737783295 327870326 993550989 567660484 561273308 86072258 981890831 621691188 452964197 415235115 366009419 662065075 854198641 735959294 599138332 168163859 952677217 82765729 278432085 797411041 207646910 188412381 906854758 228391775 873786486 605631517 671686470 604680135 871282489 357181834 393791111 713222427 736065973 800101189 654476660 310809288 980892302 172456905 93926915 669321325 388677315 17623156 915378428 829220540 646737541 156840302 937664585 936724784 101380796 522757926 918474081 771889503 170189484 665959674 580913622 99677525 221734940 321618916 150777144 934303913 628254551 207655558 228928153 835344287 945594856 745815312 92628134 880214175 369529661 488127052 845203387 412183941 887735956 155763510 577323237 733373630 828203050 873482613 317757175 150137144 688567442 602280128 118123200 738121225 297516262 589466068 111282262 206759986 840957577 124496156 746571737 400452087 620450008 325506894 497974551 675881404 55023525 134628153 499202357 202691638 552743804 330222685 230502804 157275039 221862294 577202293 518747252 680396030 737510721 832932931 432263806 740651820 858000455 146755732 263344429 977397667 395335570 165325948 114315565 568463461 606775235 939756312 524051894 775125372 180791983 567050695 618107752 302583191 104705000 874873014 522599692 745005902 823013981 512491336 66330390 430813252 931762594 151324627 708566644 981189476 715953670 504432958 808683411 954086840 943961160 739621589 857236436 919854254 672454031 160517152 28746792 529514865 527614074 379244324 264370589 984692119 763530351 340769531 813087128 800473605 513700155 260826772 927063963 555995951 27392911 333358875 31364017 736612601 680266305 778378041 144098362 581251084 70323451 727464485 503580475 906130144 799507789 360155018 932667947 26943645 888947635 387539761 921730011 200089970 740404862 975543984 702061325 909531071 176662809 283864572 975699141 236620964 366256537 722385830 766261727 332564444 719467356 123699286 796093399 971190335 714661884 674533360 789611399 687921695 560847718 495430073 364945961 986919197 313056928 28487659 232694379 342268832 8687561 713352607 631183964 668025648 831732963 264837454 629744678 628941346 669322676 623547519 281069603 522938966 874093170 878408709 855322380 831106463 543928314 679977152 248281993 467020618 484919469 162567262 109475822 608227142 76744589 584132234 544342371 310610941 193233670 150823528 625152014 914338453 408521760 447823650 46518052 727830875 261618309 516666055 23815372 999044212 896714112 230914949 115252522 232662028 891830293 432374819 104852978 152248265 305379492 53802458 568808442 861013607 470974071 355617250 515787960 198536064 794016150 199144530 485839981 436646475 726421296 359647556 519983277 641331926 229371191 181232814 474598447 254868424 933598221 91661947 481106767 131262885 969474547 413700779 922091188 920905427 941189085 136032026 78575759 214221548 702443677 684160329 549375477 745369646 594843724 943472344 112886749 320598355 635064640 250656307 37233831 686361623 280975194 800826388 680291177 484925804 99014257 35476613 559775385 95847369 821994510 447240971 162289393 622770199 780273575 406845349 225807171 996562952 189378185 369963440 178122578 666334220 783849131 517799683 825611003 882216165 14999336 104853201 343457604 701921035 919080191 248202776 55495576 667053857 268562397 901946853 943290836 419179115 290805480 746890890 779678914 897419472 30089899 148681999 906179138 550802173 690303399 894680823 698079594 337701559 388173541 394733380 278917126 575289945 497097897 886908779 843742587 559588539 638493793 416181191 795620488 404214897 199698233 116046297 270797153 193949638 686726657 378804989 711984070 911047127 91869996 337286318 243046856 267235713 888899163 726135483 218521667 321534363 115601267 251622575 714935494 498701103 401751030 747359304 330051492 972557699 939928831 357486530 25385947 58808038 707636773 710938166 770291828 933550922 638160437 554662529 29172129 924884017 648332477 102947021 967371152 311315156 390497962 447929043 421882211 940362069 860004929 198071608 19743985 68480343 584010219 758587457 99334635 485704906 437640558 636214593 587323973 414151842 581850458 739347126 655958145 475941291 755266346 143749311 951429721 24373522 389855434 646527160 600062898 901345111 876073175 608155436 709131770 636704542 573025765 140681762 862948930 953797681 634637932 292412520 919363231 77640620 328806309 605929167 834572479 670190745 510263848 46880439 402798762 815804315 949099372 970614750 764923131 572505222 573102710 562033493 862670287 453035471 742971782 94763567 131644169 338742722 680387353 16717495 496282257 278757861 813467405 536309264 329849812 300485755 263235747 89462533 791120594 379858609 412821554 481198522 618716391 992155109 974631924 528638067 394791290 438010520 819971171 683715845 207626124 811748622 705714583 224041306 397359042 54163728 613902257 921267957 694736799 293082472 540829019 627754477 516500153 681170143 997448363 205073030 660283762 344098898 661914170 697111180 961655396 245558227 650102119 61610140 767250215 488871080 863972297 557923325 958170408 350544853 473117353 622673424 8743242 652167522 259639082 815165753 923663030 480880613 125751078 223695449 457765786 460296943 64785153 402637383 416189851 396138160 375757320 209420108 824107959 986623987 98763598 458975301 606997137 980130603 301934941 910552166 402671916 78238239 768343537 198550090 934653712 265093446 313876549 344762411 536831057 890991751 33888665 454724444 324172487 759412861 7562748 508490774 629845460 934751746 486132151 38055926 591907554 930383530 716107511 618119477 521660493 942352395 92255637 59310650 238733624 484449200 146832917 479582437 234038535 742973976 722450586 491491372 325455146 915822761 469886597 710485896 163008607 795489974 713181055 598136902 387962972 696416095 6906221 352675032 426807864 616011689 240108376 225084235 788160713 737075341 32753706 625796494 652488225 330061792 759508991 195594555 267276065 468905554 140462540 263586030 922754062 525734602 16748364 206342945 329384318 983824841 119319329 312829698 746038565 366234706 92717615 946280889 145030268 275011655 424240998 881519633 968992460 118518470 935444875 795295948 412371477 371508732 180229922 177901473 172900314 298737045 448432089 845550931 565425921 609915639 495949579 547422211 603807345 205038155 12883123 870630444 84223438 213929905 786121385 365081769 813216834 737861856 303534783 115017077 300188055 362629004 531996239 752407223 26797261 669643928 922624678 638794797 149390552 884863838 311945578 977391981 533685721 982518632 802491857 389152530 194299241 1144584 895595049 114769081 705662017 964416220 379193092 807021759 193474241 9932036 168948757 516501823 612306484 145658501 928970584 139067848 502819056 10153951 353569458 541959688 132786320 494756753 564468652 310779529 409067801 538648936 532807719 495308624 979764609 322012875 804702907 678213035 63189612 343524199 778305562 880579019 845582194 622337370 70190973 743328584 501508503 574079191 141213405 833864193 554247231 140583062 555911285 648609570 920759660 230308434 173991635 281636399 440026256 152853922 420989591 679752883 715498129 589876056 871018683 357830522 537548307 866798109 964443345 751485564 439423087 351861696 459147014 751911378 405904030 870388228 791364104 120392574 321568207 295063467 669679146 793777669 695342228 927679609 82895345 829054828 920575595 565964507 339874558 119260936 336269424 992595710 701509259 971202843 728317005 458950762 749541842 139243200 510623318 28899659 371380457 789533556 404488087 31097226 126498981 108377645 311855804 111770009 458072064 472069073 582485869 793645043 225674700 470300109 50539429 243470321 82813108 830000464 814969929 84930336 682323986 354111799 388101968 967402521 474765568 579393447 416681991 416719790 881417825 679218204 15419472 921670906 110894817 498390972 440642922 293913306 573155691 877287157 757200750 52002509 354155747 721154857 865352500 676807713 305061792 74269567 258423921 474613191 594602721 8119997 16690695 140248040 460976513 796715726 105777461 432905695 79627260 222869389 583396525 943260359 75158289 362326146 324327666 379392141 183046472 609232017 914593013 579833535 749969325 552100015 960221956 401505638 499770102 276429241 212163105 867150561 396748159 845467729 860119850 102818091 764159376 258055258 974539097 585063668 806317837 954031936 345363061 364463204 279232500 784299480 753337987 280547119 944932101 743347353 835734762 658969723 706419546 206456751 998027773 561085114 187418066 380960192 77714028 716628668 850513870 180528429 179368846 86003202 702725626 461742114 369047820 419216986 569678313 225896694 887715827 157978921 913988765 80354885 444683992 202126645 289155148 153009106 567465844 885351089 919340342 790910896 492067546 326479408 67980642 327747586 10119361 575265639 177445981 714048602 616416019 19166184 658825906 915949667 95635610 665982837 86423872 431075284 762399311 620975288 620656435 842165414 602273654 220516617 792518425 966776586 259018461 995610902 660026337 231460608 328004895 948452664 836969904 788278692 311426834 893715240 535210129 904113167 903786966 684298917 588949937 184416294 793159902 905272132 159591915 806631048 849347072 323375790 694512641 574339913 752601569 353458070 774211994 757122109 864713636 218790053 345882840 756662384 743620062 299116083 356090676 301869943 675533085 421115862 385469692 921624671 538116911 833217875 277680064 928362683 449115234 968708044 377771786 957966089 183140269 457461135 104557453 439337574 860939489 564501811 474730101 967846324 248128567 348734039 829761404 817815984 987302944 924897249 761961773 524635487 854480083 181885254 407355637 982953618 717442514 907646650 495292052 258745602 609614347 53376822 849908812 9921336 751827697 809270336 903971716 74394052 23127129 936503548 795080035 820785663 4944041 533767961 489600471 905291098 288823918 932630703 957933384 893422819 764703972 638240978 475629095 379305697 708620151 787327921 940858822 195911410 976634368 633022937 20657578 54423979 309049904 204068530 662248854 627133031 660796121 496654738 513433811 322156712 160154065 964737091 673808493 382577111 802747077 984103519 21242053 439392956 174039517 563636034 718212600 339278727 41699261 800569553 891188785 133419415 850883240 721984263 10290327 715463002 18082349 200867119 714930935 608141035 985263960 479022136 216245795 384320668 219077978 793347796 969378937 285964703 78529030 871716490 281828872 400745713 51587858 373906402 804249731 512707077 758230176 495272832 481335867 24446441 610441180 37792495 755309879 866954010 941048400 755287230 376774495 483406010 462975956 635580438 286936286 710632303 380728961 452587970 586003667 919318793 913153812 952740447 660176954 681137588 526524384 885031494 787316169 182519702 659070970 566392665 450865977 276192457 990382063 873267953 112171281 862059524 41768107 158875011 16329857 614855374 163527975 774941124 488212689 511685558 806267286 176839129 800138319 537685289 711546338 414462702 204684790 506426354 457910542 682419306 864322460 968268365 947533581 629246352 121602997 941279541 863497794 947203103 362567306 210569421 365144129 28386843 519009272 553150350 814595117 918291926 137109108 684636727 832864601 334292701 95289293 473225053 863537533 93525978 237309552 285688233 8044848 121193198 881184364 953515498 128762009 210828387 263412635 677234766 539278169 600075100 849959959 831931208 913156472 639962621 452521338 590238174 838510463 903670446 33334442 500770156 851501599 423175334 380632893 128434206 940157874 538242290 852678505 175820174 813448194 13643081 788955847 242559024 664152279 410428096 309195163 993589773 917453195 915917986 101188262 439519219 728153671 395818526 296794478 133762563 63705127 501795279 497602979 850445653 354238848 148610453 115146703 941719614 202491361 713386628 311484315 183021640 82941576 802719248 755278121 325744381 448401318 239358443 114490123 398102503 445302604 296991741 452577414 551157460 615228677 607809191 842669707 834510827 372253956 294573985 877657976 767627418 502251121 597977330 656217268 997273380 810783664 318465074 804609940 629226036 645379492 794653209 836423727 641430877 279782977 411738786 164107941 831302724 831435880 991690689 307862596 667148056 920583307 550352053 422717291 488079276 231668629 134305078 670350956 509438515 627158349 433842171 394824799 34987526 79437290 243865117 421246387 151391653 832748891 613036541 93722233 129061900 871555915 190314919 280511850 122489017 319620921 136076547 939649652 829104654 730688622 979215861 57759680 445561269 107722175 39627243 808475697 591640929 430851143 381289538 313724040 477866007 680815387 884848128 746447117 129037645 875859862 744227613 405190950 129775001 704509937 723043381 426209182 875585822 296210676 772707691 730960585 770010235 883258699 376643636 565242291 992657606 963602998 949446115 355065694 731018660 574825443 437829552 689981352 95586069 846192677 210968203 704722700 437002175 487207500 398512675 567073398 859694230 896980716 925358230 712466788 743512383 91305105 850737214 42992465 272327983 900067569 892538463 224580184 399823010 531701723 58953792 501186429 588260907 276059970 803330140 668576289 770053254 663174983 646027704 181248943 763932265 887826467 408650734 154612349 777053386 56951888 180243111 669828469 665549506 854729881 699271734 67525106 715693784 424271318 672826322 336486422 964112300 284040487 296234032 418126557 435300647 840727093 517804762 497205628 247667849 189547281 495525010 352911661 131681380 572457323 549786516 578022682 999801378 327516466 566877888 636868572 940628271 704404997 978756773 410193286 797130825 213924839 591341325 373221379 61857810 930761292 710378128 856437038 384061357 196678407 62647780 523110378 475683635 68384744 169919185 830123738 592789209 141115241 685982029 659082019 811366113 257762603 312417477 831391102 31587030 9907445 679709639 989007111 788520129 945306122 658786778 922620102 87190232 939835934 344798672 130695362 895567459 810509643 961710324 719225826 519192747 364426931 273246022 86798804 200874141 145563243 781202920 377278400 157765134 121118312 375863076 259617074 754286591 632848555 965378088 356979325 775258505 37942327 331968861 69352575 316407692 349507473 998639997 116727065 937750606 278749367 685011692 747835313 843525430 536384676 619880737 885460585 119905213 187671872 232465865 76691839 699291248 486364650 469743420 480106097 835974550 976138053 935387507 967547556 160492132 54813340 263321140 627579540 735948182 283321165 140565021 297278642 99217800 927437475 45073842 326523915 43945831 799004168 687559049 154145759 917754308 772424098 223892674 922877256 549356343 479586473 37131588 61260997 471093613 68920398 901886891 463466462 522922213 752769732 785343675 42444849 787203241 322978785 189159381 672330759 22717496 78439605 222439897 123991946 199376653 909628986 332913759 452851464 545505337 671473047 758520503 609985784 854176942 716048341 238779255 90567964 733496812 453530023 956414288 229334912 230952540 588685411 623910153 654193813 418263693 420757600 527746950 407873578 246255941 801722117 713803031 795914053 127606908 691319493 594797980 244112478 88109244 571765737 575589590 580963349 948643544 400062018 477156196 626527848 401987537 931852603 51461039 535525657 883769190 343846321 13954331 55717545 707250733 494139920 501377517 339209079 40474072 357354612 857102604 446981668 933582871 849394845 137900081 255601421 943844521 529877655 35401162 616786189 775271152 132582996 479831528 186973514 379208006 125336960 788541777 851601288 222103848 32321899 763565249 719310786 702391976 381768038 791653249 266245793 316724377 151692010 931280536 465264472 12089337 425483912 974399910 87782064 917467032 291103946 949789306 72637614 440717188 865152121 858181599 543606513 44943647 58540269 303488823 909380409 801356997 685125025 634675954 918125325 923249355 53338965 227831079 393418083 559435141 186503076 187128136 797656694 635265871 91011186 695528327 972339421 69170263 181279966 176105659 277799157 602669765 983705 150068245 291455765 869692202 600346468 388875779 793798987 190196326 551686652 78035987 582594185 662272139 863759603 673197080 496797000 919611430 706537934 777911344 599455777 174088816 880067514 892235177 424553297 654613202 973853751 602701805 497449295 677506941 862024631 304718031 321921853 335355416 264981535 914686958 633303102 821141227 186741321 552608633 846367016 338522156 687567344 731953003 581090066 583844288 444097091 839166884 213583879 716012582 550246867 601571192 168853807 631420561 90478236 397619233 349213254 291993993 955909584 592753911 454766989 912546304 297462899 88922397 920631180 760804819 673605042 723864059 435853279 595548818 518117743 314939404 486375766 896712474 461036747 877561815 819979202 663444945 319236573 865425921 805570871 520031798 911780152 3928019 772861798 322791191 617912010 992609239 14505698 584286227 678115740 472131486 915143570 585260939 561774551 897066336 30261854 77125802 88540279 309539805 189842046 515230751 668937990 202802726 879434108 723038529 370790609 120190916 786940956 77869149 348675436 842694816 27387924 471190024 122141161 606103209 396974868 686239063 589177446 315173272 159556121 870067872 700913037 164583446 569387204 37061159 686000998 191481035 488159600 739153494 257902052 841125063 826162966 273329224 374920122 625421847 27977988 156585128 458698062 155880177 165875920 233784995 672542301 142196461 590572337 277606929 267241122 46732988 125315425 64655316 315396570 957941051 339566602 268148243 270789132 507929358 455385981 206617227 955968644 280497615 307957253 830859497 102890210 928048957 144268467 867556480 673998960 673868093 512325014 552066917 200124281 605365764 139994910 198731200 420505221 552077908 26016737 57939717 723129646 353308187 545588612 940537689 499991762 847857429 984940198 457856434 52363762 24836900 322012954 538633602 227587 169182055 796628182 236014269 524324995 423875568 518538361 413262772 866239889 380020046 445764233 126831965 46235942 890550698 41196556 678022837 863793338 118337873 957604023 880669312 241037814 240479186 194739851 43621370 491753365 774150025 706066385 955954701 604088321 407967769 267852087 659366110 367986306 984288746 262190171 77273154 996832281 332885618 201730774 163687634 951522933 993898432 971071515 742027404 584741732 373689713 123317535 831585546 351255123 477323608 901581704 704574002 675190348 715476333 383347208 519914167 835151389 781187668 93980208 983553482 735861661 147557144 772501379 89296497 694467763 648741954 416128420 176506215 159492518 511596231 171077578 963209326 392103200 921600498 747476016 543145592 197104810 933722770 793937883 984716228 999792358 190181450 385261080 83638526 603517929 526204002 758144148 887442614 797702827 355171311 382418060 910785647 588757223 184276909 852180297 600560412 827855533 527180579 690359983 680636281 512604646 729591658 411501132 669884102 391767529 878167894 762360565 854150084 40715443 41596420 671194660 951020973 477743762 469334581 843899029 796245449 523524302 399633622 948701972 119902241 462671646 960515852 376968072 611486736 240265871 638528756 306111584 381596735 20967227 295946503 297042011 169683490 972923907 641612476 609891837 614280915 47668364 697819248 898023124 708548926 739022658 708195335 928261132 906613221 558650069 770647774 102795595 806406130 769751836 202858582 859791598 377895745 948466353 364413363 46992554 262297373 366699566 492604634 110793592 318335510 96504197 23029496 217771312 46789819 457709978 328717161 399266493 427911824 86620546 152205768 657861938 651255705 588678880 17769435 698011395 933742308 691816096 22008286 668329143 527025210 263142094 844416343 299982008 186141309 232254925 224392940 489295350 458166960 233597571 624902424 365667356 688083802 765663472 192707415 973572955 389520166 335754694 558479425 778626691 21251770 477202223 162439317 758427399 432912604 240331160 213940286 39815638 175106753 581109095 838424753 502262914 13099538 158106910 431880205 524888170 178513414 232896702 591319864 209164252 964911938 410566981 117154914 805478136 558513769 218510436 267758717 723717546 416781362 846218524 453616911 532573827 267720005 129294419 817816034 527149277 502612084 476100946 307001215 760406473 489284229 421555808 190282872 562301899 650379541 225745744 183831379 673521189 152038074 679019457 767268513 328904962 325653345 979667284 961380698 573812466 132417018 622330247 155818681 21501507 744342892 82730132 483575079 646695837 977803494 294764818 838711423 974335530 827937671 56284833 266533668 13605409 934502852 35165213 79945910 920695839 510023002 94100549 839229931 647907799 197989686 630170392 489590917 286654207 205651175 211951281 85563147 379517689 732321686 542257356 324737710 521423981 32690005 902768561 700520094 779381699 607913512 749033546 862220967 610911410 8856600 813021788 383486115 80139879 63579015 588874532 206322223 297675328 686980048 942540369 235797213 217428088 547652653 629704971 642312344 332430800 12382954 944579105 449536846 815000964 755175991 768795063 591620392 109780057 772432402 101913908 406667005 857924166 495459748 896632738 523769049 704107582 628759647 211348705 602600744 70324964 683526132 806328256 211871248 526895003 323937955 262699808 986324466 897768727 626531839 271558282 486053670 60300800 820088770 207530268 442289425 309235376 922383293 507155207 173477897 958646650 377264572 492340165 217463597 880230323 250885024 347262659 919353674 188689118 466257910 625690675 948260296 556928948 411988661 411706683 697486281 42136968 206899281 329179866 399968020 58687869 705149084 373341322 561899831 342937939 921621422 57942397 306718969 772184636 904179847 675411481 498574445 291910719 826461720 500633882 741328313 555360203 79065678 706399394 710432235 61222693 511816861 468025675 723984806 736588416 471295272 788206087 906831891 3696070 658131519 223141887 692439725 428694053 870815980 56620452 958819169 503982606 563848187 615605461 157404161 819880155 33116216 454481115 785471220 731059104 254612440 276848294 75807015 96822208 9490307 103582673 343747904 806099403 88254224 267735022 378018711 184598723 255138110 793535735 942369081 543952726 860416175 614613128 66692648 350822913 225336905 939861744 535740648 139487112 311018820 60052197 306243612 492385928 353019353 903777436 152182579 223198294 814520794 951535563 380111588 432762248 858231035 204035181 339817461 463880596 749415884 407194657 713113329 179915912 141997972 627764385 755396243 278579207 855483752 661587728 918942850 543531896 773705775 20889608 58030446 711006260 620655268 241293089 232191329 51472778 980051402 490929135 494865956 657002771 407716046 954230659 87985929 631633093 737570235 645589768 180467273 178963557 964335620 408947674 707108573 624103006 98953556 678119333 219079501 392842020 563095108 904154879 458616598 670156214 942545897 604461112 62820216 863780324 188619781 608904778 977784927 156967114 935472961 830823139 950403013 706699118 118403409 654982890 161502010 876249991 148048012 454596008 539389573 404518377 174778458 799944912 387702678 908270866 55751529 40222353 407322426 729770533 16922249 321902549 75390382 335534043 920899333 187406961 766139018 602001366 876803804 17160747 693547736 480886180 302048394 903990455 81889186 769563712 492458529 280953296 678169557 78050505 487776720 788298029 9567772 924627435 588063838 796869266 761538084 447978891 641490347 6917969 489056248 108609187 619838268 279930017 618238407 768479817 164490845 756842794 790614457 268225672 528856165 984539237 196630572 992778363 916402328 603695395 543194403 581480880 966197749 744291327 78718752 262835667 718371989 84829400 224127833 963989937 114134451 171540634 232111034 557269492 675310198 565282770 707212335 522181124 207848521 118225448 627987209 359417357 889936453 38654577 493401651 414238781 970584664 640850270 141791859 505564866 797020295 592266657 224657953 584610545 267406354 802978891 575392236 710416135 811749707 779688589 818355737 210864831 268921661 863987416 120364547 736653937 380688079 601906878 662697065 1252282 47085251 226645867 941437684 868417365 450102613 708069892 402752235 785191318 709800571 600220442 286823439 960234486 18515995 603688920 280268747 234131441 872977309 884266718 462501785 342476665 711378243 246854822 139151662 901824391 199438661 641143862 594379302 127297560 999380844 315396295 89310253 772743852 427211144 329817541 350116235 79506985 712909706 98335587 552587642 679656405 882350548 311974172 274517588 733795302 944822323 671763941 512521815 109584355 324816876 798577637 507739752 746498610 409869215 756570736 398605711 438089549 536350987 833416485 348010350 783933529 116560424 511409087 96351105 762030551 420658634 379997509 518242401 107083638 45291039 712954610 857986721 949153796 989042244 748514140 157565775 773882952 300795551 981577047 10964104 339719795 556324056 407679290 144201374 404715482 233142559 759967661 445319101 287772914 858794126 594857521 615337363 331923090 943949061 515655409 28819641 526401162 621428513 301181609 573133435 446535060 798559834 819170707 355635193 701500924 959208519 234939981 411198902 28417305 289739694 136524817 83284011 224519579 825038854 697239274 450367957 237115640 697683378 696441002 658437987 243932191 297775669 245373586 550956987 900505645 723873721 289379988 717208830 399970374 877028647 841840516 821930629 57203616 871526998 31965516 739406988 343380069 793867319 277362402 720087831 294529359 883790049 65068653 146522603 457313409 866492465 25646595 220727360 536334610 402844974 223731931 771778681 577768644 112457743 664535995 300482821 204115606 67566166 696029487 700727432 927056569 315622940 491735 455985026 325448904 115403167 161856894 729699874 223441803 823732408 103285091 175037783 492803475 561283273 443349112 211507386 760332790 187175941 538719125 615058547 364952897 51990079 866213825 862683306 829126004 113476265 807492465 585411639 954181123 710090815 173732378 744242034 495311189 141010759 133966368 508724607 324450875 946912286 667644294 469555009 922214336 421931031 353050973 859640883 939711080 465647033 69289140 795457105 862137678 121758888 371503252 515381437 978032030 974510159 73220912 413285043 123231765 23469904 373993002 89179613 268309359 138949666 212062919 733902843 406772339 216237533 878278354 950615250 913114126 544009872 370623191 302920357 376784322 450382204 465757890 618116312 378651790 722145898 915521023 653625234 330862303 648164231 27357434 749776870 31199541 945980809 925975160 84179474 995746177 155596511 73698202 765503398 648716433 84990704 621777640 103695329 602310322 963117064 183859386 185663712 16754619 92778868 192798751 548123488 945186760 418924052 664904212 717606486 628463927 290905262 419413268 38794176 248420834 651784667 164036450 311083107 941387288 504941674 244267494 17625461 176167768 173611160 875926635 208656214 328557933 614124657 496142117 388651184 700908148 40690299 716845979 536352800 803065513 352920858 819582210 961056311 713034231 639095970 136942469 357955561 285345986 404503339 70855755 937974739 800989960 92530911 16612478 147348744 852182384 368613182 174157485 526495848 946173841 252662686 620898605 78243685 44060995 466458957 440555878 798380143 634557282 182786795 848281151 758182420 720791699 206832805 817925210 908289951 426948854 470062910 774960076 608424462 256267136 349822092 255891335 988982599 4226311 62177034 827981472 42605419 240066092 343263331 816336374 960850996 63215070 699846813 391568513 212709664 187968174 492335950 156788039 525257905 42334327 75745710 67257418 853395482 500319375 560700114 678218871 637419359 542997407 806914402 746890240 627814502 463574539 319024419 390887730 804616995 371465012 953046610 351448336 100184834 820811579 278696612 189459655 145650048 723634128 305750101 684546360 994291397 718318862 148765257 566921484 424068477 331690584 369748490 283764580 564114902 212166528 518207866 857144029 551362383 930249235 765335747 646159653 185933049 156852373 508979400 193871985 649320388 245819401 226503556 72545022 828066158 993864119 86792671 338312487 226308112 825517918 348573827 399405158 665440205 388910521 432047552 215819046 230596947 801407568 138331218 80571095 180276285 390801522 507254600 298696078 96126492 395335177 799347217 2983356 318779262 8961361 583128870 187215990 402403602 419202971 850775866 724511538 930806362 261656096 184420952 279422661 780436752 225019700 91351988 934130030 548758020 211853810 26489348 268172168 325923306 781580810 18169237 703623924 955721247 845264675 599371145 456756403 809036969 249964260 386410910 600738026 387346633 140293747 533304442 383158864 748731132 819129799 7884942 274994703 861008854 642679044 820258796 962612207 587919652 678517841 395486437 651984469 996331773 346320302 244697993 65933497 736563917 40772118 19427926 49138667 136623099 68355321 246525437 750843193 920197415 162272820 526255017 648537843 790163148 124152843 485782248 816714089 304481561 795631143 225602531 114387413 611423972 747359778 439845424 592870447 923834051 801031723 363238877 425631332 236215051 189662413 847989956 609141917 454460636 311395864 159659432 905663064 72905749 162571452 958678416 101156774 764794343 969296367 176803634 644204707 753440471 602492598 245471680 103607528 913882730 408090310 376201098 193394877 770928302 500569913 992883119 846472119 978821633 378058580 607379587 190683229 422938793 512936844 459103837 793688993 666688238 531832618 527337464 846065956 119844170 75338305 763271444 676350950 482676956 329409650 789842048 584727662 129779767 37067203 191446074 592416616 180710523 559304668 702133831 865576008 810221678 521831747 371397510 653828259 594594800 787064018 21849217 229704259 729335158 283694073 356291808 43414946 327271157 365148964 364895130 232082448 303363636 649960048 556599426 114632502 529452574 729485836 524463511 612149222 77437967 465463865 784857985 211045233 827757956 678566858 787809007 708690951 584125909 624049391 674817684 740400857 280351363 246468700 299359024 205169108 999609407 445320069 711337062 3053108 787763741 972676665 370752653 757841710 945621054 787307077 684052682 883149789 500264340 204678523 672605681 83467170 702114836 474202790 530466446 496575568 757724538 95621462 693987635 461803076 541587275 904756070 713265918 836799759 278012538 888449621 138439840 956819421 659515044 22722711 42262928 666189560 195025243 113777232 175067846 333001488 251968443 687170351 11050240 829199879 299099010 698869508 912028408 687323050 98299528 492707736 530734173 673169902 726235477 631563753 826760531 221668237 87577099 829778630 834099093 779098563 292918311 297247560 552255412 694784574 686795924 654267054 135489452 944891277 601692313 881159053 830242645 133077945 581410840 602018483 990771474 457426931 214586131 820392993 51637930 773337231 729731255 640208708 217937638 138361188 430695467 88994108 740550750 983894541 425885885 617281758 979826767 555640411 336522905 441675622 42561666 2812130 322723367 311367313 408414866 125631009 28669988 882179537 339839336 34402305 993249187 913250443 545983317 743825736 935258784 375020507 691946503 464100466 256008598 129262903 329775377 473581650 487877572 323464485 191110524 372733840 324130091 608500615 26879726 19650293 94448257 213082931 794560212 293280215 852741622 104893219 847174478 561466312 892182776 962319679 644803884 905379699 763807632 624300705 454619688 110846264 653568411 650667205 503433855 587630812 985517956 781886082 85204991 100481263 989208912 779067833 84060805 242360419 180464385 781648410 141253583 817929451 616111344 232139752 83628339 90081651 204963933 792431589 59544770 19366296 804642116 339459330 634569069 147275363 107011932 269426955 125337195 249216005 498724815 522368021 865991960 164737830 341756960 636837281 327886273 15627367 749839266 245257728 610413494 29535368 758409523 566457722 800594828 435890275 601833497 392574355 529585910 721354680 147762093 560872772 782406798 892990887 814528696 582392857 143352581 554423795 5363 208633836 105932210 562028552 33867160 10407357 491568727 559142926 420813651 197830626 30580387 316521687 246608315 318585295 447631362 440564740 612565724 330624765 294607726 973124938 85104223 311257176 623980623 260494673 431069567 630863038 284595738 738901 291235954 350710975 800110111 246408457 290792621 265891057 741421889 180302882 241547628 90025830 902022000 237041374 421330123 223585217 671435961 231708674 330015919 604477462 440208745 831385013 536401832 102254281 113802227 32807511 654862105 753495552 885114481 268984436 796842196 565671368 46651508 197586790 635164184 252452837 257702790 107173994 434769924 913560358 371277162 908928639 905373822 218914043 578196892 179494811 775908436 421727120 510084366 207293021 607808252 807945863 200239579 866776310 338818720 766428371 892786676 228148234 369727372 411489404 789584313 724745760 107060659 791476151 876052315 894438790 523476881 60176578 52576952 999919064 69111643 648261806 940809431 203194786 135545492 532381166 447834888 742623489 119241546 287904754 352816119 411441091 858850976 999497378 272261586 476839691 925898706 501215991 958952354 576431928 33015477 699442541 866142707 483806422 627347102 222926259 87687545 219656240 203737507 738813877 985185314 746495420 576038477 353551141 296316917 611265405 196580614 145491099 73968140 206341108 50252793 878844076 163897874 685655759 984000257 156652808 54150406 457417891 335882715 913440795 344069415 952697518 192486516 803549042 534260944 300600502 43705480 671748101 402562582 300063981 739736569 173705333 380748685 109023642 374705824 513790853 260906311 207172875 389735736 429990536 578040726 831644399 137044448 176853325 942665200 313684387 176549043 659272414 803799465 156115759 679128270 273873742 687196055 12511654 601133870 505706639 328619779 714403759 363272216 259645599 461732950 384810802 118355004 732088520 866616140 75850759 946168641 454460613 406330698 317766980 293260898 778881079 743853594 592949966 882572766 511701 785269014 633151465 116066586 822063657 241559091 950363919 39484204 805689825 841805107 878338303 250357280 56323161 243596574 750179416 572063037 500022501 334421555 918347837 574224056 607183465 512638361 88380011 995573728 302155538 418981072 590542408 126836001 986518407 13363231 17251214 373346832 320772968 153449566 576945293 194477752 736803805 22265723 883397903 692765400 17578277 898454277 500121184 199959324 124301404 94795970 905465118 197567852 110508461 498604872 779387442 385017498 616997222 123087136 933058809 747524893 564247188 864885906 7490498 956985414 943070391 804744910 641641959 614040870 552202871 176143012 197692178 114273291 391715171 424141750 59985841 21671681 931808967 370636824 594953564 662213120 826182311 20575858 766658185 489132799 122466988 702313720 782356534 815332373 271172892 995708564 754328734 889712816 7737031 1699762 607202339 747512982 658195285 239780356 742349676 139298043 602689561 128783267 670083928 998236620 408432547 262962254 95508540 586532557 705068407 573872248 564377158 670000514 581508245 767414556 993420759 713932679 974441799 448105072 114326361 673059409 325769883 740256225 701229484 599799015 943921095 786261143 779244434 31096529 988945628 631024471 669050020 34932232 111047382 287288514 313921738 324235573 890706219 628062620 439760934 724810776 962319471 823225703 50825392 550929916 202041524 797750995 610176044 945401129 278870559 631319936 691537064 437768419 884650196 439862338 950356948 678051657 576511439 706881792 945173350 913045628 614788200 136885026 913407786 946549458 326340840 487381928 426262310 192870369 913822493 211740769 288765820 870126807 11952876 678313477 304920425 905458563 46914398 904618058 238738952 658296139 152935989 998483370 92437213 240795961 549118877 428280610 562449066 884471052 657212243 244561776 399359855 920452951 157911470 956347096 734493417 840664482 327565683 519480850 903085218 501821834 229541277 230028369 938326942 263652361 829648791 68132571 665984356 435809251 518560730 476101656 432997407 702568914 786912903 41190000 913217239 851211045 512321258 21552092 793940222 459472404 877419809 336236652 588768847 757515989 597970592 736215260 563468616 570175978 610089151 418418278 834292291 527417677 124714084 519988263 151192606 794484335 586916361 514771566 456633153 445079787 185014743 480716922 149694597 328892511 65038921 951099228 675867132 916523885 697447712 575691739 774519108 113617424 661930580 716732315 274881112 521666584 11648023 322456462 276190710 42267483 249206325 156294527 759218600 584507201 426663953 413655865 446826187 748368195 739803945 510946253 552906277 30910439 760527669 25436111 965675807 570912543 552650984 260477894 421908509 592160835 728273263 434479564 343368418 952449623 735473107 952958027 157589088 631136224 357389669 297704448 350507846 957246976 813535335 964580606 291412539 213872279 270359344 981429923 601237969 656504304 862642208 438009361 232987228 252769887 819650081 328285543 592205103 191857677 256297959 119506323 939614954 794385549 2048862 423787514 447492348 680013898 512935563 522407600 270264169 340845451 606351372 505938512 907966811 189893778 650529878 77847668 502823189 830725757 140608103 892485820 909819760 622070308 228034035 365885965 826232967 67975325 75627511 400767251 376367932 162710429 499752744 706434841 334145336 364882938 583414689 478660273 873622698 863691474 493378672 574720434 126163797 173477523 286217155 431549283 271248877 377694044 686168633 245312955 403508271 589921635 343702601 261734160 443234448 242834959 868848864 392930403 825474755 677415078 869635699 664632045 405134714 602302965 49897034 681727228 556743556 290170600 532561187 909714522 782152262 803274112 44900144 253369198 231544365 131856680 893796576 662921603 743800302 647294163 392239625 496524085 548097151 897490250 680733690 420148852 202534034 300800616 997026820 565375581 9771078 605417788 410588964 644371134 953536888 456554243 699001479 888455806 346686634 918158219 421656592 227124025 233728702 611193796 431173804 413771877 192649016 837360457 292969494 180017650 641014841 512370135 874671559 491809690 840499383 597946686 751142655 880309107 568722085 512097478 939113189 379611584 935129468 34314645 356091913 192596606 329231674 86644178 130031869 873384054 262300747 961293471 530612993 828727622 493234921 773627682 370293848 316568903 96931626 656107346 64652498 131727990 446333924 679105491 879393962 401484118 77756976 391486653 688037654 190317192 573176410 198407773 611513060 624083927 492845580 903071379 726948001 790386355 63349638 37661771 615634197 90915013 374830448 110943161 568778594 283056312 127718298 487876769 906506918 771496264 105700108 616169373 411169643 357855117 499231086 928013560 237514922 537396935 817674862 428844848 317553032 284750655 420002137 888140520 388866420 556913038 567381999 460048135 90340540 315245189 67345726 456220100 298754764 305845798 426028213 547348563 879731727 870049123 761687330 57752334 876796130 62823666 943777962 79182524 674483179 590809263 940987282 598786703 870192580 318731063 861972733 852448228 140084920 399946428 261600294 198442173 134474280 274357310 168008948 296046885 122723728 191891520 360914978 41097195 444345151 541766258 641456753 209215164 864920487 894171575 778448761 32176107 147795517 808100854 188447678 341382778 880863771 141195879 111416087 225331103 30500194 179430931 739704775 263071411 133192567 144385964 951547828 53411760 210152192 461381842 91382894 338743026 760923143 737557538 944284897 737009496 646180897 935785069 839095401 967824416 763785961 448771770 288780566 841039330 157346637 994513036 942167917 625602128 703219260 535314161 663377879 36246585 404678056 441121970 422050840 80131868 229055384 642177317 557084557 577897980 219832213 426282176 863108773 942363313 281614282 998904363 744396116 163530601 203177894 442822738 864785431 695548922 809880891 474562112 943600254 512511723 963221863 605832316 165092033 213304951 555680702 234442637 592520283 488298752 469037889 254951475 863487344 568232542 616607176 991328973 804982076 123739361 463685451 104330266 186271359 435654314 905833890 107798746 158800940 799094894 851768913 912152248 157339597 549364514 211510755 698073380 664293197 563717637 864092076 410257098 127785248 471874522 61076572 557138464 991871369 958129084 560004594 92861249 74450467 794897315 788251609 531193973 998013216 690802713 307285663 464550941 198505235 192260454 995016854 940076472 403633692 730811300 243678626 728066519 130913711 212493486 652035723 84172864 570774023 713836970 533265132 443251765 891521945 354899057 761899019 810565076 657460025 961904282 174230593 184583195 476314917 660934542 202330295 59821263 884539536 499075196 924513851 896708476 802536103 729614633 810865782 417120640 65872502 853967608 332551928 966730247 305566621 504619852 759928138 414818437 683419166 333000679 3436260 379721547 313368434 729735498 316450608 703002469 688431049 463707194 442594896 331007947 889417710 627157111 22727275 735167336 929140709 457349796 907707512 496377930 253735913 224414506 770008415 344879594 571125242 627879505 400663892 443835167 440231991 121061655 836709604 176392253 954234535 553234332 879268795 742569363 70232556 811440639 612387591 614436843 165696068 666756712 38856683 897797776 659470974 494331941 153880769 823271773 763010480 559097035 913356356 773837202 875913853 38566855 248020669 731594415 254387731 110763583 219428807 716390574 523379665 925375765 42837058 587716515 470621333 487977248 624917570 851009311 97685979 446541324 727287696 130584945 492541698 365134725 611414993 583366525 328477032 203376045 907425732 261010267 772093379 52919633 348299300 821768854 638692740 343041356 409147419 223326129 456501656 817529773 191558364 556333907 134258879 225682037 104058369 7696611 815294382 214181916 327889460 796782273 531886122 933670843 327475841 219430533 663290288 959439393 392778489 365555634 411376317 790072412 798021772 71169442 140936149 401771462 487369667 763676669 395796394 7514164 347617101 930559441 796058449 976688714 510651594 21299739 236877623 664786457 93476417 887895501 233733036 577131312 779213892 615942237 236838207 751806015 146640354 983122619 359927913 201492512 752983936 430941578 317257337 510338846 793423464 37776582 899907486 412277764 761535257 477811508 759314499 495664517 55461271 858844107 30698370 727857934 158670058 924266899 391011076 946623051 27158738 79855935 593612047 39443635 757959048 393052043 49420079 615022151 324252579 102629843 542805471 613794976 387307333 886491430 414767195 49448422 789470550 188030879 88513787 937350735 552567851 981238365 430894730 458506626 258914493 133481402 859729166 373379989 595107152 706199590 201026630 103718775 734197379 742559898 996793978 787388419 480418803 373109003 695324159 302461689 738137314 602901358 719503978 415907096 294498356 40449889 385681253 511629267 463718224 143661276 238519304 181015817 95477049 285676515 737083187 642553620 783000311 213836547 742612643 573455247 445051334 980400962 115289117 565107690 489709863 784870808 255610813 720826925 730520731 947291691 422368565 45863465 280596877 376172453 138985946 945108617 523115719 897705706 734947713 632323298 681561437 115372760 923515214 130300492 486398503 319665469 295121111 646435867 246727575 231021219 362069175 685068254 421761807 752600919 90647481 190698030 712251614 314848168 238508084 72046175 890481132 165060694 100886706 334239349 612181022 24351938 445873693 562946484 144244615 634155570 118376592 249962853 465902816 839726275 906014262 663175270 785729419 6501272 424570113 954193135 363875041 351868673 74221901 471284851 382800941 880974640 210203712 733250188 399094023 456863332 718490564 297057446 989862169 709860948 244545850 421868482 70826627 864866638 243863467 147517862 113412583 411773221 617079448 357809227 355274649 140703836 212968449 964368465 875724773 300955267 330109541 493687246 918503033 164796341 614075012 643042097 557540424 776156327 460636879 281814030 10276158 481687389 481319363 817494334 641442761 777687579 396497948 217956660 81055523 807030998 705194191 796306153 723292540 612448987 609603805 116384578 605274776 419954654 730007727 725953223 865212318 271074942 869535412 44837750 210888239 160057382 588746460 1369456 440799849 238010017 601333770 691807788 10496260 311991112 322623926 101762210 375770475 12416615 322780396 1344806 510305596 994513137 912418281 105455444 28111514 361584869 891386947 567904599 749142313 631790599 411868210 262800261 498914609 876238599 480864263 88338272 849112550 547652446 379501409 673131464 230650446 173970703 811011594 763760282 917293054 960032646 251746907 959085530 981350557 499813577 965379372 384009237 55973856 845444421 916141639 952772184 912043693 473788247 375918437 127620010 432140876 388301522 107312340 172802334 307001803 25188488 527722188 241067607 265142736 25847054 710255153 610747238 257009683 563519103 571897351 396603050 730003389 383743885 305109959 891881522 142825431 107448634 636477876 186912508 724105158 937769686 547661081 512117746 885320305 720497263 890219931 372840300 653801059 557172915 378945975 830731825 638691488 40026219 309141399 985345134 965466720 521760430 245694142 967625937 514974802 878809616 899091152 192163121 471666734 369131123 321102808 439193137 789695741 194246366 456116804 759635275 150220423 493231130 105410889 295574132 478941223 833763241 512188426 983098656 767594193 994023603 753630489 790832379 193607744 371047984 110787486 677639331 265613330 738603696 949561808 290492244 695352878 256800904 532202339 8531044 561017725 105018671 813351489 473250039 506210704 619305427 771503338 612973730 782276419 654667940 119457941 458277528 233391821 801391719 461971474 307688739 210946370 887230470 289109923 798423627 811586874 924797571 431112610 903952957 226261343 154243589 410289395 660075575 784260295 281059961 846328927 810546676 531975686 447409803 170567866 130939677 760745569 889371021 895776343 233019206 38526210 620525256 77590825 611970383 758139194 380894611 42952657 371061483 786835545 104591009 582977689 697992198 156088918 923488367 692802080 73181174 446060713 812882687 334364326 729479499 540751741 648373224 698693715 812899317 784858771 243385873 105077111 823931735 658859136 313419355 794015509 622806895 527203448 283130365 430181966 521586558 275902049 108135819 551866974 149482682 278038481 597358240 297661111 938122781 78167178 760519408 365743347 941567506 757688689 247617364 550825784 35989096 480884783 525070421 778073262 500026643 960872189 513750961 362955628 515320629 158720493 647701167 800315207 669779135 399427383 273379584 966571882 320861931 806189752 477881482 369353020 816866422 346182116 148487514 827379131 232496933 205531194 155519000 627465148 661787391 74060264 241553892 511050041 270003217 621476615 568035197 556591009 317069810 127180990 378904676 492582578 20575524 664262055 612199004 578174877 744872882 39923728 544218179 554139992 470678604 555016280 880071584 662224093 542356995 544843389 29267072 166108623 916645594 292663697 582747917 888688291 794788184 216964698 143001362 720178870 768422220 927804210 839091400 142602406 185160046 396147604 839136845 876708521 967813548 79472254 80292689 521866943 354547267 40797350 324035186 245973175 707631006 528735000 69937571 737533669 266647971 890627456 447483566 915861067 298620821 758788392 993087018 638139855 161414035 781521272 792212468 627904383 446313065 849440605 88390324 291339196 665319310 338262331 237271678 174053922 694458525 960866169 212458745 154068003 100341986 286767908 904549697 663673893 918820356 755190589 162993607 224992832 753854324 660991345 653857284 276252017 205025114 592714516 25225094 34368178 584754857 679328527 592412596 146897104 734667593 251094139 233773214 686484666 57535037 923459026 530400464 151066793 39688335 312687939 3026699 595316875 12817605 976912065 768720663 400660061 996953369 175461168 103447155 573981116 820345260 746053690 885577776 960595466 129425755 911218446 267391543 401592560 73799120 883947914 521164428 338585628 80337309 395733319 215165723 760163540 315845313 285508056 198812723 680134426 91243963 143411809 545092912 764047351 502575914 543607491 306190983 233893982 686066747 558683219 810865836 957944681 108655723 475374121 807475154 211387617 203939989 930337418 464254521 137249947 215207625 545018316 526762137 507007020 693131819 539609050 23817682 719273486 959204730 351383916 301090154 967224284 416151535 460154641 479168377 793711786 869510744 564980113 408946778 906942856 419767396 430168134 494921494 485317858 969073695 205368868 548102608 108548000 315865191 326724827 77389375 600678392 635930658 35526243 337919622 715085697 209468549 726161812 277758095 280906489 444846815 597327198 556702700 434457039 729899912 211175093 445619210 105928747 708636292 279642888 718810118 755126929 50991533 870446579 363985827 333415211 773276658 507304094 700135903 159052104 186356021 737856759 939957021 54364100 787218152 138638430 894752601 394544901 353751761 796077925 342048018 328060789 239463943 893155733 512504537 553603231 430463661 145861663 85857244 824444218 702333863 88376568 702071711 468338622 511517575 170367277 394373662 116123460 492611391 665538420 98265604 472084337 889778331 527840799 755519799 333846346 992129240 657158308 709408316 763308767 304785996 958113445 127958647 450202487 684338122 258515103 212712867 884836387 577638645 62495288 284154981 983588592 307138092 244289703 886886228 374976930 183288298 891601026 810487137 742699468 73444155 827024618 840204233 199068498 364202494 405941058 692889082 445283998 873307668 110594104 561687583 685072933 748576663 311176375 381448637 596071871 931469875 114768767 24858321 106251764 45478246 656896303 4487647 279885179 936558917 102137971 905230320 321507715 814665030 336316993 47464265 823166814 568707815 343888756 694935030 277955239 789937738 207873089 720157955 636391081 282340977 539711093 397184850 168476156 392062029 181543390 361672733 243169032 954065819 823172449 283084123 210944698 474624687 632658991 195137125 193680012 193378551 516661725 918796703 849023893 398593660 905798802 269242766 344575520 688601612 582475715 852742381 878665271 271293307 16353955 972185806 409273129 409729051 541821252 515301402 712922741 168489051 966427672 236047260 112144324 511368617 838022882 832526057 848527747 84499206 493006575 974921117 76140196 625487951 106925846 139723952 574427773 768005913 976600362 553254022 198245445 734571240 730960443 270947172 185022870 381679980 131616459 789545318 429707465 696435053 124165986 937531381 372917451 971789286 281911119 828615761 386979597 680867151 221086478 622847223 929744865 964700949 656931256 765172333 689222048 275499516 626213867 575017809 139841884 727485762 553427055 193270550 182380311 562899723 128853881 593136781 218498363 517072346 274074711 331864376 755857949 954038569 409560328 128421645 836948008 620319257 949620956 817930597 888632165 558692015 974394844 900740582 572528932 50236448 165469233 929565241 898100683 97648851 415005114 400389723 667869058 498447173 693332248 998570446 149964951 124183453 739511329 737998917 737179915 403416704 674941760 385767153 969188043 471030150 884326564 665441839 426466882 879693681 639004593 533285490 738677840 453275507 511025048 404778195 469468068 674237585 965700335 803593301 511988597 283895500 650215145 32534610 252685751 100874893 306933586 900240284 908415613 945286650 403495205 686143578 216146080 675591736 391305114 555542878 783641735 911553978 133570887 777256121 913971246 431633189 591586345 2285478 267253214 298590698 218484671 480556841 166858824 640682396 2690302 826129051 540586246 325894619 194537272 515883422 521943573 639971447 985348561 992417679 400815925 807926907 133662079 730424231 270213316 642556446 63344852 265307964 159545486 974694353 678866576 317636202 465832981 476225049 204894727 271899082 994469434 479773609 900302642 880998613 156229153 600297737 52971544 720258394 16334896 65461612 483872691 947834482 111736581 21909750 903015204 671146408 137856538 992659309 347396400 214545830 243578838 927295607 807985885 98481711 311392133 675025759 410957830 247478503 727855188 466865910 814381353 296849313 858450530 100189822 716426898 998990179 300033798 106382555 695586684 863008532 832836181 181193611 612077913 14768261 397421817 644644972 411310811 866986285 868447753 237020979 582311608 575783006 698797439 176629621 399526240 465577947 493172938 975811317 76479301 37415094 288239277 580632783 500430871 852346165 119734946 891966715 795035432 482941383 306421091 356764741 17747619 582587102 497443053 967967922 344901177 305048357 792089181 813911799 299556545 300273351 603697594 803789859 32097192 985321744 343043398 464607041 629063664 305362385 369229677 212390408 165024878 17760419 50111372 220586672 701000933 791818293 406705450 529085957 518657649 971059451 134042941 825792976 111599716 482409004 666835878 491682321 780964099 430999700 865770038 459520855 473211797 710232257 163175451 610199390 495598331 944195031 718696098 414727608 74917821 901743105 149824765 178314704 939235014 528752954 165773466 175882351 807811127 925249387 725497652 500936725 8176686 385059936 928426995 598431441 364612818 121636846 218969386 392170384 751928910 371748637 195575027 300379498 346276770 797857774 303378152 895646007 289154852 908158632 425882081 957575191 314797245 913908629 304284458 611470690 144190603 891976439 676090376 358984092 925115943 495811046 147344963 843045689 15572140 289093680 751472239 558449836 431871537 345221254 726498733 180796107 809572306 602754055 372640281 699856066 706796578 840595968 172709275 781209324 448325741 941287602 172582587 429416362 312754588 445379561 464554122 745090392 758019224 787580372 74142320 86717319 110865518 352185478 444415834 607123244 606045995 22054945 204291057 906702844 451809893 118248910 762597043 329106790 736441226 272122877 967958749 349469766 364412139 201253380 365975137 826173307 332180434 673420974 617301771 522996335 705620175 113742860 387758759 504988286 836152833 909596275 642376167 787464923 809448174 35273229 561209088 911151928 930896035 271033270 351169422 84975034 936432950 725663613 285274376 947464530 702619910 636367046 324935886 446358550 668699008 897709742 75092089 278206010 339624008 901285979 976901344 746702461 152929035 105635129 358041647 221820741 87906044 493396446 545609586 925741663 350719184 926209893 691692721 415564406 507490104 652804752 142323415 764796889 963427988 343206016 962042943 50491486 82159234 515830274 155642691 120533692 856553410 34480654 272125038 209150014 789118928 719788635 994016029 144320129 239048824 198225209 867776101 41571133 740335033 892790006 671598299 772481608 70401120 322473604 470974672 473501812 471628099 343134045 32220258 323327258 351869412 41308898 428970482 177129898 371962669 644710340 925407385 158841865 156665179 734104936 689020186 160367288 101404858 879524435 155252093 397998371 396383462 857257521 181721540 182097077 339415987 518330941 36287512 120335031 584635729 948429146 276975536 133554834 668988824 142450323 795387996 828647589 789906199 193624796 599720098 939586745 898141850 59931165 89124262 144700659 689072134 759446573 603081785 638426696 165662756 551953848 705360112 191797428 749093137 187633925 609579007 385885000 631726037 968157078 843513707 628417994 214236303 586691124 473320095 143626610 887379080 804938529 169398362 930867953 504481695 90648315 807383303 112742784 370862569 184702374 363614281 841743324 780618172 89129422 803455530 844449572 590614095 197173357 570370258 549964195 499975044 219014374 600134119 538397928 583101384 788112826 348597007 236208990 173606698 373081437 407792385 374995385 358834095 675336873 26887569 435329801 206282670 433577581 526824601 930738443 591431410 241016275 991506615 437082817 403144571 236642472 685813498 181911250 365005326 466645278 552054503 610354601 998963015 708546339 558535006 602086421 86187252 234084367 610464589 933111393 824051770 705487059 188066942 202202435 869368122 560502465 546326320 686960341 890383305 508269169 201315409 881211528 605133988 246609035 453116671 415331909 724284078 532485081 717934175 796278114 655885399 190932907 776325674 873719570 387138386 386103025 199431013 473303620 503121496 39420388 800857970 610753109 475137766 197549373 754256042 543378613 618291618 707318764 900020356 118210613 59747129 459955509 832446604 651891041 210071841 801760405 863042336 481674112 539471743 421151217 297642996 826523719 609593427 181414737 220040665 578210132 520150054 282593544 782531326 27115801 974003959 670007230 72525306 694132921 897576049 707106767 518788366 492994650 521613627 335087918 920391469 177710182 653596693 592596139 4530969 787114934 922263278 898617697 22297005 911854042 19127671 774178264 649751100 800432231 286918081 820974146 661055616 169123273 776225399 531782051 141508128 887423150 733099324 131128295 304910964 149597711 184605627 417629737 948343520 779694948 577535694 538640989 141260736 590255505 244120652 873850582 546488311 366280851 448705291 567356102 265894970 102243058 952538600 477641207 426517757 27173801 751894073 738245801 525851188 365144169 394930374 628548761 16793890 894201393 292751035 977546161 124297540 62206944 358492495 192525240 718506379 586774010 912884608 216771858 714512753 343404479 520346802 827677219 153651615 2251487 614352287 774480907 894880817 957801156 115946300 11782422 709780640 692914984 66147518 231362168 24099444 291061165 822610841 229721736 197721695 906044971 666013040 909483803 180625998 848042166 320862744 821007309 168300854 290164301 832198369 217301400 769989041 739493167 822706361 597808495 54537387 529372883 800880025 952754753 427267937 275710684 500461334 633594001 32731449 118444487 144505731 209854432 816980744 239258369 139938443 546527501 701075951 718571504 470184427 983308451 957147451 647474166 937811407 855995922 642111376 429886492 174187366 311940444 503562626 32287933 67244669 746607136 611078840 24079412 228301951 663272172 261323361 761501469 541225208 213346474 862077216 560859553 240308368 391292329 260679634 324402087 55750640 566994055 459372124 604820384 981423949 339597542 272418633 801615986 994123890 138854155 721082770 518349423 886425203 373364967 417028748 586532735 574649224 666910457 750425463 566444173 326661008 891718742 382859092 762420106 646419490 761875364 375276440 710524485 323322827 143858466 109733953 529267142 481987903 913399654 65824331 103652329 790612903 232005424 580156752 586404473 220772482 737677551 985805203 285313645 511131715 996926076 367692953 853630572 311689950 370841531 512176875 840073403 636293280 980776090 94003507 817286699 898804605 393402079 662296801 528948012 694487360 413669499 51377654 942353432 435687944 477348193 376243150 830708408 677205277 99848083 555368742 841171637 327109901 520385130 818810211 583314217 338727773 658016068 69448443 597205102 354693202 384953270 841250692 140603099 857638258 650439998 411918680 402085568 713444876 996156907 931416445 617705437 348341688 341616595 292920252 880749750 406751483 720788773 10153493 19269996 644592485 699511700 915403435 233407617 851266961 178363542 613211337 956875675 730436683 652947025 697096119 117594122 769216971 726676383 649547149 228676395 267731703 694183047 424754432 292177703 691300459 32036037 506007178 557978921 499318890 632334492 818009896 778610014 744331206 341583512 585395315 718253647 550763974 60351911 549234865 598993090 224413115 232106424 398373319 274388972 672266115 869908055 747866981 814575495 518275854 431286015 402817195 212371381 797578587 449630920 199878404 454440409 350970046 192603497 638631654 203486642 407068862 407544071 837455291 136169904 915966230 864772584 620812342 284369022 355450115 183914804 784724397 666397178 612835816 304299983 244857345 959062402 586134825 139144885 835537568 103300838 134831192 770078021 113237014 431720617 910837697 423600071 905894396 407070992 98636943 546247607 334768886 619962002 993442284 885952438 279203433 659901811 71078883 804368860 20630719 727074450 401618718 740554369 105875751 952938943 982744338 445360575 881654176 986340180 236479851 332262381 71974657 893538733 167545251 485160178 949967112 160849843 868264598 680834600 436054018 64628773 519991557 417097286 616905473 346434211 253279089 2081247 592784601 507061850 803929821 883324170 433291091 937770283 768605972 417670006 857462827 127365041 278542720 396917541 851192338 146545111 659918242 289259772 20154033 286319369 269700919 392638190 396917545 223112025 660223005 909183307 235456548 734021595 630195136 923345790 657582668 28285102 362151841 730561374 948941692 804278123 98751154 352751048 596589210 99552964 856029886 991532563 897301017 837379307 41659460 159506966 65557557 904884653 158004583 192680931 645717614 914967874 554237748 687351879 431652682 836153594 969302252 213892080 283459845 214064459 370444924 50799091 260585823 412804407 570041222 839620901 540336790 170862898 985790198 708221816 176325900 649477955 87752617 492248617 608469937 506510216 539539114 804556553 800275486 165601769 853909941 11290915 16995710 644407366 383009704 568677277 623314562 399244918 145680626 839519335 508253398 222771117 169873248 459460569 902043466 42548031 905027321 889401673 860492101 924625615 775164746 359463475 3663708 171894234 876737460 598823909 980209997 599324140 505267154 507680010 368418040 147362104 820681862 180774305 691927104 322669865 945827571 413451378 251821669 523652366 347708846 595777039 529103464 348308444 833858032 304960945 206683036 799859781 764303291 218012315 330937868 742761801 86635345 580682 207061122 308276376 824178822 589437748 917734801 241845463 150670969 256613297 442495652 639825826 998568570 504766719 635042217 500162545 976403356 905634037 670607512 808571436 82743210 345327663 966489784 186894122 444363635 210820445 819690943 857255570 69035700 925857260 721621503 477576258 60044657 612674415 680017420 85185769 646322688 350391732 241236784 485197919 69773192 682936167 796350393 188133799 542358273 401893282 323688906 177572717 263904340 270148155 98487474 50522078 40530031 234388517 747158431 378401737 823792128 26572311 236931538 783773825 692201315 519948803 850008522 618555230 76789164 637916741 634521692 884954035 648409156 814612053 152091160 570676691 616652599 196388596 46829772 411455380 196081419 884587372 371383151 604907146 429830091 921806071 171747844 452001443 778350856 430623656 77639662 723845523 432712774 982173128 630096520 60585353 304845486 533760606 925858993 644218334 969773501 630213273 45524241 913370137 331216831 891600240 59078705 707800217 535798198 321883878 6092981 344652147 604591880 840901597 300436528 708848403 633892300 477487550 95499883 882217715 354718454 666394482 171325972 786601038 829180793 373660103 392002369 433868035 594845566 587265149 210998353 209130656 695010263 220920089 87635188 404478225 121520476 663549094 834322696 306460205 596472402 544338543 41011268 516424481 97884086 722991407 731350636 125584133 856125646 259674781 527083789 661924311 221618927 824397693 277712671 353370531 358282968 812473524 789175819 419337129 772369957 492858866 303445658 507580402 25799657 35886993 620122085 117999632 60169288 286368132 271197188 658198359 278364485 975480884 853216839 666927133 950125566 615360738 85547131 784448038 743933291 145352959 287061827 646336671 849847915 45346644 290397182 304798767 57487847 336842027 585152102 693823677 95892116 131269165 720397924 943601305 674910184 632350281 150880956 816498305 612321412 398937364 46783333 948578261 54466747 92755899 751682210 267260756 621592984 978009049 43881457 101076772 661530141 909246196 986001975 79696623 632232598 794795107 574759421 87067483 39732684 609804424 822080699 10331822 263151767 505441673 340860324 614226667 137274829 177287718 543548736 85499998 973768070 182497029 305733845 922868328 993279022 90801912 97683364 581446815 817367164 650305080 661903440 291516830 51826171 865342826 22836577 121019284 779841594 227203332 519832855 418420567 581784470 152624255 240593351 630526309 909998895 554106317 273096663 21532588 74231016 715849145 382742099 327825597 140425606 488653902 777658581 549369001 376194688 811403037 822238181 845321539 697370304 546867855 983077359 785606985 396400643 458205747 176019046 355304505 466882583 374977694 827959458 114436672 672089228 151077498 468737372 100586753 412834964 514560189 441749758 864591917 154220493 169494251 463264255 684730413 847494985 282090185 683294083 635616450 477918433 656357450 274140552 221212606 654018939 130181195 156451711 120379396 924490276 961936749 179430784 435376235 932808067 117978266 217416415 318403202 630743061 735601208 832791514 11702533 795872190 215636908 804102570 668396443 829719152 502532306 889444332 143107874 693030624 95026949 366774950 25435679 877852344 29510475 745907977 81603059 615937463 831817420 499946660 48086763 838877574 603244330 319062657 214771516 657096319 490937529 63677650 852526184 154632588 763892955 356492455 472127420 179711341 86039083 744552225 545115490 653826056 356420891 773789371 441754352 66938720 922129473 219042199 60626990 856483263 6528788 324535479 167552037 816562135 303803143 841201147 187212586 199556163 640090070 406534879 974514110 877554927 769825427 250128153 7228860 184463057 558390861 208078774 84374707 242833747 737868132 365205359 65496367 201696908 345662432 876781961 825129934 922420807 854635794 220645483 572742747 487669044 487282832 911802665 882521682 496968631 282046622 258824864 391806674 930904910 267278859 988270302 161079636 903005679 78088898 45675026 751930384 499957344 691568349 921682776 481988822 5060541 111277125 552196867 256050831 801059279 567677481 246254119 103642117 851831537 300124812 458215552 93450475 791307951 922577177 161664658 550911543 24894608 430405824 76255871 594751317 371331709 519189110 382690745 498721019 448734388 136802885 445572021 95504553 253945056 716878283 840870143 958066301 699861368 619909101 615475762 187029823 746175589 409575589 182998067 240185465 683118449 563472137 193025141 839547342 189872707 566174440 229697335 359292491 686671965 993035789 676715923 17506975 957118908 407685701 409015945 246665367 926149464 85020744 758987742 97118764 451120661 364092464 573843525 756470723 115004134 845660108 836393311 321537574 576195362 729838425 687400441 989688578 885152346 915200365 516304678 898457929 751504355 455493289 552656281 713446965 98795363 104755595 848626939 702922390 832651740 606008551 345897329 117363650 400385941 25670951 302251473 838681578 549764472 923023785 633272804 633807816 774640660 598421973 412212174 532527165 473250822 874446208 307772667 148612846 617980464 411149750 274578383 731934792 613265478 767869252 988892353 863405427 147898589 686224471 636630069 944040662 28691996 917375297 92219138 56291893 977754359 137246459 242234349 532621085 654917301 134020130 505087445 96257250 36632714 513888178 443952167 52684178 709037488 407459685 134458770 448895402 6439857 940592999 798434125 211298835 335160050 181869705 72751777 855972896 999348271 170070121 641011757 806496853 439827712 254708906 529059809 712214390 469043381 395065488 656274631 59632594 656271049 300675370 9573483 782782984 627689544 419534278 269520114 774395880 982752923 866317502 410343730 937982420 698365763 128907511 13281927 883855595 821411350 192662988 599348737 174423866 216136373 715839872 406528965 118331313 142158359 881044023 129044659 530889496 506842240 760698508 107279545 15015224 376657651 399369467 251376844 293853083 254092881 157280602 192359945 380688645 64264185 371680349 957140561 248003318 702572611 457708709 244968515 704075908 144096526 650355967 728976366 527309561 209766787 457787273 336605477 803015283 696149217 947010388 973740315 416482915 58430725 177519850 16733988 501307884 450366173 680884039 901727880 822213189 400612379 607463806 611566868 169873075 482261005 198605942 279588705 938890317 927945878 705452213 337055468 258445801 277106547 136815257 508265358 12592172 734719793 809841056 828374489 92948535 463481812 599707643 616324133 549423912 788229022 497494003 297981178 678065710 784456395 768934520 407279441 321666807 804061576 7492804 15711523 504314073 302895216 294759398 846257813 821763119 426208498 281758945 301044267 727510921 480407183 4687219 478607787 696857947 949977217 796745271 878525891 435145584 287919169 382351592 623773612 183459988 398741958 491184746 21214810 694327617 203353594 908582411 755144691 321370657 139628169 52700886 715286221 78101 224781023 579378829 106799547 123502542 412908566 306521571 248672249 182185568 205468132 584993510 665666556 669483002 610604948 342667073 491615165 176384927 686590374 154324718 142566479 58482833 603079655 59627694 627415454 104146480 147285787 780796216 548174263 152326155 507352440 26657536 816741840 788004510 805864947 280610722 558478939 767708838 10206103 44649988 338448482 569377403 520424465 847420739 366649659 943556353 128919064 911611422 71248829 286834160 514244361 917633822 55861063 751168432 964828807 925782604 629822993 432008884 895718017 582247335 646789909 959974544 224668654 678432715 372717192 565927792 368962032 417818631 742799668 521082550 597908289 633270510 310749613 523358802 869898566 711059631 951205594 386461302 214539161 547750785 379405506 408638952 529329817 175091819 682935039 436631601 153521085 920440082 794030065 302543440 459897171 284335499 596465232 882944058 538841585 728502529 304662024 969792605 245733755 430253227 955994085 650215348 351000806 326629331 617625415 27767114 252528935 126814660 826143582 336701674 98364722 439748351 875965087 498946239 862591618 195187499 480771691 991705419 494417666 697980003 477118069 954391110 910332092 786750716 803701628 605808061 871487932 148210990 949908270 750812473 419095170 501683595 183543700 911523316 663299842 907480682 929001608 773930632 202343067 180768424 751276270 924280954 234236511 657096884 345185389 693386282 635596446 925645700 342876436 568178201 856631742 922304606 308139035 532817995 630440987 41263975 616744265 658127763 565125824 263216205 168136083 106795019 656053428 140709900 176909495 968900282 700587155 785664565 895861853 772414785 228394746 561923889 301829352 890221939 106785065 644217025 513672944 478307335 603566442 772706859 307427028 599383528 409512572 735842135 811051744 58625964 71216878 180373448 277724056 847859985 496626989 224005822 189944337 647471699 475813965 544211787 165131681 708685891 46447554 906431846 54615513 838187603 929370562 182071460 97433077 921040850 41039623 920808112 873773275 762233146 240780270 249500351 225266317 591162238 227724979 754807255 738828617 428166477 437879019 236714045 768627106 703471659 635822186 117531707 825315728 487057682 428022583 553614271 578853038 929245141 151240905 741363797 756819133 637625200 700580908 511782886 43634286 606692934 956764976 259282863 230905036 280096252 359807167 70992506 639187422 44641150 774024238 748048283 121121780 202380981 638257939 625804141 990203010 464104158 865309522 258525351 781357973 21605125 512851083 86037799 404120445 172721697 946191912 932567464 773792322 896981086 232552393 431902712 107779547 371572499 887340148 800988890 129128994 493118028 198236872 897655902 429758164 709010882 585072351 592154238 187291495 429747331 677120799 225633463 617290017 80174439 670907941 885736615 724354248 351593160 308988127 787220319 877104456 158277235 923527412 763629656 715385828 480416617 978405288 288692349 697239067 890896147 156607292 515551691 222642645 517211900 448432618 663043460 527386945 673675157 516784272 535416583 553092182 325049094 368188920 557687685 837353703 374068848 280721865 719952741 356339008 667738481 681819954 566415869 615423844 957338777 174072036 748674682 569136520 443360500 228788866 582309903 138096283 924150511 109922758 52595392 751170597 991635704 191517939 67385990 956387837 830967720 110429380 334124898 837051568 729101067 730707698 265119035 427881682 930931445 892605615 232189765 152734400 724664579 878371624 31520420 271534831 775886470 24783518 756090959 262576138 389603335 562985907 464354011 451042935 85900566 160574846 478569801 585752786 850746700 563986918 203616879 173151659 463409552 610009717 351133458 716221943 298325489 950169440 781692755 617858403 881613134 538063001 111135223 501996683 921514865 496118430 670786902 872694666 693478967 394934874 564770036 477762742 318508998 516693212 622884925 204189360 449149127 778873473 426961923 543716767 992239431 145234314 619042097 883037419 132748029 989247290 727969192 174563516 51645658 511574044 403786523 694715006 823923869 925353242 744989383 839862721 503997933 49593804 180049019 41406494 198148715 295750011 640217664 299936982 646265327 108922235 611105462 415603908 755650140 244903639 738208079 412387711 561411326 209511243 774763189 481243504 858549989 928302656 196030894 533407442 766017488 743960214 294255910 4352890 973269215 751938117 86403089 242936227 601332482 687143951 600078003 302452819 106656024 920891787 497906407 770921253 588458654 215511124 183824784 838236114 117902024 221127280 11852137 570301208 455842647 923193009 695753414 532231361 48590589 514871972 47698536 928394295 507426418 961696449 862384067 44518781 922923048 977249135 262881030 3920957 51993246 105654995 860133264 414464946 439554103 179750495 345000665 115250977 583793078 692960332 326443476 639096689 81464512 560514037 728238555 950694829 986125050 545807879 135146646 767543385 511275359 151740360 725528577 108559427 977322913 672203783 557468578 997969100 230729422 424822980 705421774 135955316 987236582 822555937 640594030 383344159 51838440 350489162 675670405 814189302 622377351 503882119 726285054 805928367 516269816 359731279 68740685 436218030 550941116 371380731 172155863 609290367 709481864 135848304 299131488 261767240 536918999 838321719 992295597 640820651 430656313 138068365 772360934 124704930 673543235 852261668 500668845 41338568 231381218 222339103 76692067 212447194 981975466 709115184 169404553 612965490 208480083 423039711 389473392 35860009 93475760 626538026 171611578 418122266 762682577 620877738 388994514 242676423 47139852 74867836 208871000 390311667 100793021 484171618 188970555 112867825 592042972 985393687 134279574 97365751 404719819 721340911 846147521 138502437 479066148 93370323 853621328 194718220 559202835 652058604 681187375 640689482 422505788 236402290 648177319 913369346 204877121 841118415 499577810 225182832 887829751 164591968 130669428 23462018 41391125 654709624 397313627 904515113 124621603 776900613 878667619 657407162 887352316 491622186 855955669 524866272 622601252 927276796 209173645 59380988 240054838 463834920 324528558 475262872 123158626 71359189 112933708 756392035 519335951 240648645 603569245 97984059 596945229 745783223 492586831 39367783 588712613 391265238 680148606 583052975 600343902 384726858 570314515 702143616 395841514 740630649 687095642 272342633 868438899 566877570 992162765 623577042 296479216 641222957 338955816 683571231 949019104 368555602 345580458 883641024 61684797 694520452 301570849 517504757 505580718 130928680 896981890 532411630 837730490 544229509 666062104 560973706 723864130 790853688 133978014 506513579 829852352 144134963 923574827 344707372 591931930 446959395 293054584 945281307 338601959 785028341 830627270 867242711 922670966 425800278 478626038 245673241 790418397 766269655 917507651 401608438 390789418 962951974 234214538 907641677 546286349 784249834 725967211 386941085 832878140 619559146 731901327 982978283 613649249 610069959 709472333 884770401 320272255 867845084 493745410 114109909 73384684 487405942 27394319 644720911 362950773 87055977 56238640 314516687 748163609 171857208 116583645 817850781 727329586 719779203 157396130 940988255 450267026 248664016 632342293 739962285 913948896 517253226 869509115 661236457 88072448 864774747 443939454 337508924 432834831 916891485 811628803 621294669 880424695 362144917 678618447 983967754 468332894 644107510 99621172 366711379 467181635 101005695 966330786 83993571 793882473 457151192 732909012 984746297 207103766 86490327 388955205 791469788 321343151 707928055 60588504 455250545 719121656 870546171 884050693 139795025 930104031 15598138 634072221 497689766 551032611 922336666 150947015 952652954 367259681 99795180 372471303 649726674 444763828 639248740 97695772 83568494 736565190 731882588 182527965 199449933 13330232 529441452 35678152 643830477 572766396 384363224 513684777 404576213 591707573 504262243 269962062 76748373 581765169 316509677 429548514 778026175 228331967 745043475 776783832 202176528 686957444 642805096 292547125 919188084 225741817 378689513 18514408 543105888 447702455 926786094 957712358 413377240 172110970 424671185 754518082 958090933 434605720 320923567 478352531 999427389 809440509 942338400 839565714 772972915 211216484 346281037 953039026 124871907 473595160 916970567 242558217 688432017 879339433 29054421 621482837 828075247 342091430 867869628 728599904 436047719 435702054 251475249 753663215 158458503 664209295 102296152 740724137 22784913 322638470 641303336 924977948 841032347 109289100 795396229 894056784 408337899 82623287 599751666 330431783 308961787 858870748 688482820 121785293 747636685 983302369 747725672 563668896 252846032 942785823 386865621 210519348 716597052 494671217 619520738 654958949 786487595 107840880 925759098 812207978 437909330 406990089 892427860 217463154 123086737 1174275 534227568 576186996 304917281 82247005 767082931 112579079 578685866 37533428 726096683 145307402 349738762 186886203 546693643 99863235 486538831 915502045 129744663 493182229 856045053 984945157 605876204 341935956 794497931 704508803 694120945 419235944 182545421 39571406 31497129 586723916 813679274 78318782 554290831 644391064 88925409 17923780 965103165 695675862 440050754 154872409 766856253 621387024 279541238 666610216 836572090 707638900 875844503 512590839 698965175 284948597 824960204 774992741 513678182 727734286 488519435 440531026 717281660 183511695 869535257 30482633 329413392 734133843 846683215 809191543 383568089 807445786 982956926 4121557 344893736 591289914 691639079 726722349 54094431 955088176 242347522 94453153 986984339 179377573 837785726 986125894 366473564 515473106 707760248 455821745 996924598 543040790 953083954 173805035 552707216 980537977 565431077 182058015 599851747 478031860 146103678 209758651 859163145 387998313 312391594 596122542 714116473 199896805 21168241 233084538 251264635 998718139 630812510 312744788 26518991 264357292 404824994 936204774 928893243 255908423 512694246 327884133 202092378 203568088 601451515 371218983 307803756 168230006 250014792 80085518 701012952 549727435 220350334 494657902 410324632 619134933 990282563 966610812 911184443 242613691 86732350 155338258 288144679 600941349 485259034 65732402 474692889 585850984 950182136 804845053 809508400 994679000 963844240 787119103 386088583 419758699 631347219 674498824 184840691 670888964 789320282 451434084 24483019 774813548 461354580 804611127 102386919 335596956 332716535 823131704 561920645 561348684 240890857 112495901 616987243 740156657 386168464 896808850 311414863 632394485 589443646 673778670 712573906 187891583 838177827 115584456 96501266 481197587 453739793 937921024 933626367 702302226 860324642 862019334 795487446 492978120 364532209 137195261 474061931 772255650 338260532 118180732 264624621 498727268 261647621 633493212 536915249 695475747 776600381 769676273 380684807 286112640 762084397 194218027 623759388 711233669 229697611 596177581 498133148 770270466 880196342 464764271 915714127 531994686 60187322 840537998 96504530 19562138 849741794 75278760 163497955 505935655 238122874 781834930 85088595 592464226 758759248 935908457 479056804 927618032 553434004 132373719 884767565 417794493 324449788 164410022 439903929 280777020 617580124 993550325 485510494 941024740 757525374 917468812 346282660 103235967 536512790 852784607 969736978 472386305 736654798 288578351 480198380 158575815 740456230 383785045 71018778 459530439 604795173 575757363 913562026 592661738 830099387 623483929 326130895 354213547 436557679 939747216 305109531 192790869 776835121 94687045 56783226 509225279 79065954 984800616 32457928 677874078 444543456 816068285 670804589 510216740 695025471 121241578 991736251 182881657 837550872 439900861 181767122 250582301 97137277 381839365 215022261 327984567 934705143 293609998 752425143 746536568 853930208 43947263 274866994 777647156 178960724 232436778 980254921 256806300 275531029 932517180 911915593 721118997 700386628 580123638 148184735 586436980 391482301 991777706 650513734 679816176 597617097 951469619 964198225 668591613 59198215 949621721 164277115 2251049 848785843 24907315 715089574 469917853 387149859 337653891 269172475 124957215 897055868 216647868 744276639 301972342 525180447 309786293 889914293 220282484 149884032 827168841 280768280 427042366 289624649 483103715 927099707 172055441 426816604 668873400 916804203 814582084 471763908 955846709 126927425 516073445 689920471 156887291 778594719 393135103 357304975 571256932 749239015 672834860 816195936 288254672 288136932 918330547 137682647 820670366 411635813 353131582 960407988 808059155 453199332 270280672 770256723 774460361 422621929 147337482 464064029 930535961 868905812 631730824 232774695 742699004 740192897 793504278 11156844 438154884 946042020 767727659 1806493 725741973 22685558 442391095 479852929 619491430 988733755 785107723 974855194 876475080 17960902 329911410 883024191 648457188 367686241 636549294 99013531 6072072 171034175 82364789 924760556 586486863 556681834 6611053 6159507 617462143 21578102 416597442 148836785 415878479 897863247 339318788 592706972 407675149 978213781 497891296 560329639 520513130 257269557 623780212 157978861 850333799 115330834 194070251 310223175 443726985 635632814 145283417 243925338 12181862 944661111 458166397 706344676 175446966 150857474 487285389 919138109 820670251 257042780 8057156 209367165 660753779 707416267 496097637 191029330 61378254 112071550 477187093 997256879 703748105 933264737 206061533 283204129 122019684 167354197 882264597 203920910 647013769 551549749 537579984 689997516 129340395 287648339 178247434 164171017 289338992 648172854 423023852 676718336 260266229 533128969 261251043 327384128 270609862 329655933 533105732 40071241 955038562 981028735 385641694 915584008 640728291 225750830 744453190 224510273 338008524 84031658 155810620 784686561 429127551 947003889 562179205 423642224 970568338 632652375 364502662 519155319 858748885 637608300 790895316 235101154 557800659 254686716 573492452 681271401 583302905 106346166 641978675 186612108 486001951 997616821 360516865 269294021 317071858 320616315 435909499 933749808 530449659 348342117 423684698 914556238 987795238 747460302 223239380 774083501 598880540 617058207 808986641 469216753 21718290 145122737 180074754 221458583 691549829 92953630 61316473 757017146 915120292 347294873 496142959 728871232 577036164 498988915 261406633 499695879 14418715 264777025 867034294 703340726 767611329 512071322 482807603 830678530 749172556 404967605 336443740 336014181 875804838 336533083 191790632 588936392 500506036 479508381 869343860 480937381 651897291 62300196 846416527 254314581 66636549 734852843 44804036 599750400 765465825 695498621 610815061 437999998 245362917 752537787 877482530 517205566 791190009 193336744 641465826 213344288 84112310 586954652 631392687 323068066 72619430 301099316 564101195 901188942 100408183 860957081 629481930 916633774 619990333 900164493 997942931 353070758 344418732 922844619 587644202 894136693 296296943 715496856 209087692 909747995 113512295 119897253 306064500 961896326 455094005 672779940 94699539 298297084 906257205 20919415 306428290 230226486 345045932 578443432 667879494 460683166 276015822 929248909 410924266 540739893 161775593 521507492 210279843 905831818 696500779 346896783 105522550 179997242 807009194 160609421 787869458 401279133 301102477 572247551 932652034 597361418 945854869 860535021 261662214 246372351 646424379 708874094 571893829 456760234 386046862 33269876 297089378 24764472 237697877 386452890 389413945 951683787 552133548 120546569 965441552 977651981 805090264 814684852 436374881 344951348 984332734 980701808 38664160 469385604 906583600 163590400 546071552 911961109 400266825 224692708 581522455 441533395 659603590 441548710 227306389 43639788 184591546 754477529 446058993 542970093 808845857 130201601 70651459 882025627 339291972 928718120 909422471 109310412 413192758 338211200 348791974 974603070 944775197 190792857 241063910 225873387 818357281 8575758 758930509 205275827 291995729 565270779 665058814 861196002 940668218 319225384 693173564 895570523 780740537 35228626 146164967 811921330 352736782 135642273 927006276 887511796 577055519 848117794 762770943 7957745 341496625 372284068 844313324 790234118 976932392 873444459 293196505 779615225 773703281 878392923 407372534 934972937 944985175 516810787 622113865 405953034 934398912 325787726 937042722 609697255 131282677 143781339 478133777 185485393 921821015 590909438 108619874 76938546 419273412 912650623 226730940 250601395 840243600 555496710 49495372 458729159 427230882 963693607 8348840 484343793 896257806 545416306 960076506 233184217 606792277 429226606 658244975 268149243 445646965 900177972 462330631 965072862 82734213 288730958 611634731 810687696 632275142 978035469 303235342 502740456 77974654 992319418 512955495 401845574 907903408 468559283 233905539 983510128 782773351 287976390 198657318 880108387 651091768 971054107 415385264 519737715 602805248 195587049 85744154 165566936 738107012 292937960 957650003 658065845 378893783 501739516 399959961 436591378 927796164 282272372 255403432 525107975 139740936 505839600 661235608 835645529 757922799 436458475 438447431 522435143 431033069 781741916 657325694 143854007 856355602 714946070 592387685 628255301 745262855 331974342 975311538 270115484 348287094 119271793 788046263 294006288 356344260 656557139 635496064 682644668 296702319 775982940 686417908 6785046 31123745 429924065 141715537 521736826 722563528 934136406 649804974 467614333 282764566 262613662 924568595 553284900 466416244 605939520 420020279 651416049 662367568 392212569 339133442 418994936 371419602 934541807 895553974 743049139 886283030 348495332 641266685 337471294 893169256 294806395 46168522 107692546 552481765 111417876 384263217 670742145 394859414 379604601 218686795 35417690 175568939 814197199 842097642 567734313 980297792 532785439 852481559 737451863 116694729 734398555 340937892 816509345 661763963 361057075 250370635 981002565 616304105 503520182 98210441 47240904 720590740 769972269 111425100 144173598 944377784 805147382 713327758 897877493 556595520 671471508 349185871 545349845 668669096 446564803 833426543 804695407 568759415 163325787 128267448 693114514 585663107 188039048 106239250 73688094 761080764 323573985 525218522 662244238 497029641 137556906 662442259 516892468 802520602 655301252 686216786 669920388 745027983 861460929 100476344 126851840 806951389 745316810 290094674 660897115 734124361 157317998 364462702 754788314 530336813 504740746 691224931 160931693 910436875 835828994 833036817 311298046 117637942 138872402 274682560 231842635 492409873 711781067 569724152 219219517 528394283 433873572 151898342 992714707 513310988 518829389 765897642 97129471 227948957 430821603 338949970 773284483 565455855 206559006 18013178 9375312 500022583 347453115 85360288 560916467 711298624 160339185 660558458 117044582 45540795 840878616 546827758 462989636 389554604 439038936 997683097 561621865 351323720 550325041 37216172 59375256 857481904 195888865 798847061 147579713 273543078 377299725 471080615 552006386 385975485 203688771 576993457 387584472 832834275 48153053 213802142 770704157 334251178 328997504 447417421 457084121 67825112 953980910 24766160 238326683 196323930 799732853 947308283 887880984 999666591 554858261 815254658 635709059 299172828 9498284 756056409 257118352 518163179 932709485 532250070 6007170 355278178 230963251 482881021 229662973 849148990 750770911 951553391 531469116 292149839 668753526 840876961 741074546 924286159 967023890 160556748 493607818 186762219 609724406 846079671 504548515 686939988 300621188 673509841 390953329 824090341 265558110 418600058 481372335 783497039 877861176 708680804 36384630 155959970 590007371 347624063 868021328 325437845 843607937 686528529 490718123 444748932 974620247 903371173 251053192 704092713 711996384 914669633 222235934 156701050 861512282 396018961 679269369 17435993 883608021 24381806 561415500 267269827 209097348 684991049 141171083 875344787 395881579 135634579 894866169 184931484 394443053 769944079 572186660 499096846 693100496 289313526 415671151 831844833 909603345 490026367 913426424 275369114 672448711 38225233 673030912 809107024 848141499 533003233 892307615 249694811 734386048 484135575 832491794 627373069 838439294 912609862 733168127 431865182 752270080 668871468 111606555 810778516 48098441 838113431 602508998 188206341 448047226 140147790 698813251 745016213 544067305 394179248 639948417 25648135 149398309 987995807 905296359 479199895 573840896 691379063 6171409 263404334 151014323 80185072 86442768 326920260 548871442 638252965 435072544 923780437 146903231 442727820 634934933 362033595 711789438 584261662 726678308 125855556 669294743 620702603 770513069 214373778 135691123 225224606 666904955 657611313 180452802 697757971 922637815 737612328 341554833 11906575 686359281 837827518 610645720 817671336 422940764 854641638 439864801 227193983 467713827 192645278 124635046 531950900 322375248 273996846 674353974 841340405 489041071 58035267 75779827 715883618 966345982 550773392 233551254 981358751 371976576 125851534 179070252 325377211 611509388 986333628 492544549 730500260 276229887 217769350 210682213 182932135 799692577 930357252 372677852 529005300 378890361 383174474 273174771 838005813 624287886 370952372 492839280 983677326 945675284 908776762 97407072 55482423 928899652 422270964 721257637 843444335 650121170 114545732 190982253 416319095 208388752 509491832 718549007 617560802 343200675 241802954 172404070 297684211 946085399 119610113 216769645 407597360 972311001 480512643 240933763 866018853 368131527 492683570 347501315 879006403 190631219 244955312 123898233 877337447 819496938 893590151 369868195 663572365 874904549 554771145 506169066 396350544 999791270 62169273 810274240 779731502 899712282 991197416 280490795 629700843 723067049 775270567 421210054 872375718 37169746 383682512 260711584 760424182 910303406 683407401 504416135 188941040 265817963 192628749 674699919 936792580 603566629 250363689 480589486 356087418 851419643 836435242 501853319 588226836 486654271 467506721 604049758 991564854 144524450 384665024 526892219 410878195 491195961 117852254 637588943 875159716 73276765 900137725 126729917 345188243 550239087 670413241 829127289 182298296 526175044 442124485 222908615 36960618 344213283 986258874 66846075 890695368 817407072 590017037 631360051 873584346 936341781 481931524 56658463 465031465 830152389 123484717 704531932 50215374 650090301 702544031 906764858 998433942 272465850 18872669 732997248 703352163 776459395 123978082 17134284 336995399 341931812 354368486 198999041 917965820 146139597 307121912 166726224 219980159 142837700 473375757 849356968 59517316 927244647 642737070 576464086 221430918 342619770 747181290 105903365 130552530 124168986 87648131 9373545 958276888 191974928 848106591 459967112 131816357 772601587 479648293 819203220 679945162 343878869 59853887 320773298 339478797 352835161 520714621 243801012 773944652 525279688 765837251 820457479 221734252 209495676 180003115 465071253 59975257 336092869 829625909 694826318 308550488 941697093 462974075 449937637 263218291 140578578 106410327 528300067 374731619 265114560 254031867 111975289 184418550 779400054 552716434 969681609 961324297 162735297 548463477 176734592 953322391 343278567 516072665 607251644 301404728 652565504 180637496 103062341 468715937 152475591 451792113 460051178 26897090 472279479 603887939 629322368 674937414 378145588 307052816 448951712 693051045 903698153 954485667 885430042 820153766 649106572 365751225 287950766 941217641 793803480 755297297 948668716 403305586 219928701 751542355 131262551 543947186 9348686 531209257 566187601 645697833 178377695 745888880 211308074 371893694 9688835 689086628 746958395 793168096 762195350 754671482 600407754 778086760 393083318 70788563 417078917 798763684 126909920 753175838 792773214 456488630 159910524 156903757 47691868 780180241 58893083 510157099 258865238 628842914 842139398 57160279 792747346 256144688 820150595 841436063 846620009 422247520 418981641 339475750 230996636 688626076 189063972 822447263 818618163 470416530 260238577 210226487 160178772 61707797 318044442 248401581 173673260 679412870 932794574 710706270 234038266 891669445 274510717 995119547 9559234 206257517 35642607 279185973 798728282 287043911 476747658 358289063 398712532 216199791 158599810 723963066 264628817 125811683 809439245 166793856 62778896 257950982 244097856 40457619 279580541 890817372 190003282 901825611 706801243 421308588 940567309 545888738 789316359 871139470 479258649 254170633 581487794 531715309 575554212 240939542 3300548 202637717 761934817 315725651 198375749 110734379 717201333 260320582 905116834 401100972 591077436 131167435 74601790 86713363 183198912 402046706 322967822 672578341 782369277 32725656 387694581 945566579 888575966 889376252 947575963 596115766 856933307 790779854 945805105 284962022 476523800 912309720 295661382 247884730 425502796 906002211 987817125 7331168 974169430 473171272 893926027 352604802 468111851 385928103 519099740 469186667 580995870 829478991 672362975 827181988 630072529 934648005 709397934 249908947 964276225 288594571 113667587 546847803 132048186 866178790 90944070 336136809 651404447 136987915 55239340 348476590 15644673 65589694 770093132 176176236 787789973 40543378 328507176 368417842 593671677 121111066 7598395 688690332 50257386 771674963 638940439 860425365 900766583 812018959 845821864 100085215 78403692 217056884 248481175 830815050 243178616 971269872 123259096 354313315 732752961 212268753 197742923 876017515 496649230 253895468 21048483 974800237 135900017 845315014 554171820 290393106 928405342 637685457 615386526 845399954 528202725 197551416 292270517 698416822 750761976 871212974 708042520 977882225 956691079 869820354 486121605 175637543 345870913 868546013 915949401 270503154 146883958 55891528 87748664 532106569 387955943 756645444 682042002 35153750 14408023 441967500 533891631 484069474 674810357 438174341 53398454 886686403 739649670 820764956 627642049 147609838 502981005 623073312 271846146 924533990 788944004 201057247 362669163 54350438 493872175 457857637 310601696 884046256 642282650 276925187 378555509 597297854 10370773 827984886 861372321 173901210 863036297 860453979 14265048 682519258 700206509 933981261 19937840 407565216 137986402 307393766 705892053 343096797 364354960 743728855 539495737 498441193 709644978 969543090 182260974 26551527 675510958 959959719 213781743 449501618 579989337 517522092 399801260 820484696 219504072 695362147 578939321 842535377 859121474 839007185 96789306 316512941 654457015 717791325 927877455 704071223 184502983 700806784 209371008 954720783 920028514 285140032 731470295 664614457 680129942 647142638 512953449 216632479 417193169 789339775 292408630 879700105 509639513 487464490 81296286 707650912 423014561 239850668 60605207 257711441 234543876 338088404 398106255 597493847 127068379 232219303 294302201 814937979 382554653 991577332 16852806 246895836 916086372 181830570 352971681 964372886 91157235 858943447 561536492 359218423 998154217 696555548 341449936 216335799 394508312 96468291 790492577 195226882 432711014 450618581 947079498 257383890 262802238 581172965 207836558 343639500 547027576 760008828 935870209 935163802 821771337 635933463 869161895 940507206 836157242 501267689 661157244 491987904 679619378 278478007 241438038 133100039 727716487 182000184 297953788 197918944 348722044 35302824 604277936 384894669 848301280 39907068 746972281 661771755 251499178 904121793 994383750 31822310 620070944 12772508 783478373 701817352 781128359 673588935 741478005 812585127 513009844 821846162 916058715 318608434 192785432 469010594 467195912 682820133 30690251 96898009 825824570 56938247 650620771 897052371 904374841 600546014 483033002 511724060 677420288 875599418 487851393 529479956 29230633 46313559 325350416 331874281 155749340 618766770 966343874 170470326 662799212 558644317 42178450 350501770 515671802 11790171 100237486 406303610 295614896 983341222 305814754 270731373 806457853 226822729 234483527 251632586 246710376 997049536 289043468 574212677 524858014 657397234 763186376 98315936 217149003 404204691 37309337 996044989 615031600 629761953 687172599 38417505 918739323 386649029 26488728 987376076 938943517 993733360 957781299 328120903 223697029 178573593 576841006 63060981 572014584 386001235 494075505 654790979 274576148 453441341 283286597 968320720 370479098 434809870 804996440 89631605 105669278 480806557 628643223 26078970 92194833 521318094 904218795 817020212 565981121 798132751 790499252 173260951 764782911 131860244 857150028 495212233 602743147 291149415 741547486 452758316 532844144 275524798 386861240 822629899 781106043 321358113 714289359 237720301 855766136 238140859 959945516 841225334 53912564 44347214 980700192 588635314 701992207 704978522 241128627 785676529 75443050 357457552 626307435 710430737 364486878 692568343 65505440 181366738 389382462 960577533 375023141 424987173 217208273 486792094 636790928 846782588 797288659 692909477 371414131 10851797 102243373 662632857 273589796 767114878 7805961 482771637 100776047 605159420 731427016 828750842 466689137 305257666 477895542 870112747 371873807 631500838 299371787 378498635 254766900 345903758 803484918 289808118 654115691 777437119 671763814 411812272 486484362 589163416 884750018 488829401 880936371 778983258 942459138 591017435 444993821 647268155 512486292 423693479 992006577 419451959 294004429 887801890 252768585 424263892 778956064 215563519 50421166 752629076 687331585 32641728 763278315 725719395 484833695 5367083 487056938 354481116 98866801 138475406 95299335 765045225 83359372 1956936 789864660 990759318 227415673 73178068 59533695 679308018 739106815 81395018 70710494 528627794 405819427 546397673 504272717 614920265 693691396 843262646 485070564 617909598 10161953 667182940 917954409 250305161 418880475 40631980 382001991 765546417 238094594 140256670 817474101 793266886 95307268 962570689 655231574 418379130 263690624 555184502 470458409 409852742 139325347 225908705 178379723 520182074 759834179 232707662 434871908 494595631 427277018 611137347 845739313 335235813 747977372 264027817 45628580 39527277 93817026 184989694 924119382 48726063 686165423 744698727 101319326 462918737 290249978 421438023 949768984 954582659 90023779 618476229 984596392 611401770 112557350 122160907 287214161 728815635 266512595 871143855 71329342 745690819 126413256 731694956 57406135 388822429 818227487 878836432 435262050 397996235 405432745 843882656 770465055 514060908 440906334 186373865 211738657 838580564 593682015 866858186 372046427 368573279 804203602 51896408 850082432 711325759 296950292 586700579 889787980 484899995 226428570 726860156 416098528 330706524 29390685 17583109 858535280 765599130 649515139 929423493 360516527 140403937 821149897 383660256 890977942 227419445 269350792 10681139 567551182 428563661 997493295 255859057 122516601 17794159 177672977 931755267 494756745 747413398 128988845 613413385 441984178 431718166 969242153 815483341 218382448 555571744 131100264 602446724 424384454 739377942 305104263 155576327 253969381 5804897 340578173 745039947 453924519 632626151 311752755 830510654 717968869 710077206 224314401 132058479 395615463 256181568 793502550 211227657 762693247 604737084 815493297 542634812 775987451 157177997 119374107 643807135 391925107 294350711 469931057 234326518 474083498 293267601 851437813 170767724 776318774 262190621 661056398 8774462 553865699 707102799 734651258 232389369 929367766 570574370 573872822 549749668 374382626 433914135 598604752 657046482 635982283 474296978 704955412 565751352 911087479 121903208 858819304 573336703 37519333 905322352 609698809 446478385 165778868 272056613 954491444 538540401 640734136 625204226 101086722 63226967 250134812 126334333 468173253 14925024 513034073 489927694 169175321 564379718 799998135 359124960 11831933 363329589 84033427 965180786 815507295 604898456 658782663 430422670 78284055 868991145 741837835 796948298 422232606 663064263 489556411 53867240 410096384 990822984 986331783 590329313 530155206 943696674 721454808 64589102 512791220 960412334 890030245 910084881 94564627 761204827 784690822 342455109 39925555 895188631 479247580 98185440 207605376 250905640 976355086 45014310 561847916 379160022 958707711 176169504 561869470 95655377 333697354 391854062 992329082 382234496 515823588 460154539 542245370 370980894 21393402 828674828 51053556 31097208 227276527 114133704 924573488 611082099 206991055 151811518 797937968 728114251 904696743 548471092 907867583 122915254 928760346 898970642 718477694 781056444 162239666 806350099 97748723 37257084 296399166 813682480 993584905 931663866 193879631 113651322 132786049 774353062 420838991 403331389 455702799 871054117 249584168 274259600 455263433 565023644 499202893 148684515 185053917 958090954 98578217 290863597 462544062 859084004 744171572 163991591 213288132 888578540 699413236 469634534 246647905 938438391 917770508 766362673 692657208 713160003 235942308 835329729 742213605 724616369 818672712 316833980 6491099 309520145 93126621 950666597 752259584 685462635 273300813 16642432 344424336 414769785 835062854 975794583 866164424 433269402 588428427 624401854 463701126 942766331 737771619 201695147 19762987 907875335 105489948 422643123 398385859 754338213 84068219 952369640 534669166 444412527 591373816 712617410 173299733 43427520 100675572 641925610 372422664 168373700 605297984 780656834 656495137 153380774 928530219 541766284 109383973 447064315 803822518 72717391 555058430 499839092 763783586 245284652 997381888 870095707 378529215 500188056 881020931 649143586 792033894 889687700 661654139 574924324 935898851 229518229 54146077 184801472 680336872 982353073 154692949 292549217 629323898 288174834 314615033 596825476 589956607 755574630 397907212 496669214 340717582 714541207 285613709 627039837 412835201 128762544 487339531 459616110 241756367 164686070 37701559 940367277 630014347 998244516 355108239 939571495 256836820 613995874 623155743 939406218 901476832 390521331 75823661 913802516 521903711 888835210 269141151 470313305 741621284 240707192 856277319 943076052 211426034 928331529 70750178 467908976 223414466 268284519 450004198 230844097 442379084 786614352 224620560 988805237 209500445 516226280 166193600 835852109 919136114 715314394 69746747 436845752 643247711 133911678 686705671 486128902 568376884 741747889 867236325 841815786 684027817 75532970 799476968 468646354 312185405 189826803 319777623 725958310 487670332 638597421 885623120 979182052 594749799 211004881 173112379 140945561 914566582 178465051 860011556 490296174 684808129 86274219 628990019 201534819 847729426 895012727 208539678 200397052 152051926 655692503 431661575 543637717 384513192 846660473 39382461 734965272 641088281 225825921 252913978 233496610 86558865 163699966 594951822 59878985 47726670 313077503 396357645 871115325 18081439 361531667 925316497 554347151 483976365 870198557 653958065 248189755 640156611 711591536 174520653 623996030 501457593 30082844 775242445 154870612 688318149 557454591 516889450 568547753 143584094 452709062 364116359 588435958 147247100 2975693 566572283 104504852 433067297 520024984 383139651 997041926 90648776 119457318 806684069 747606733 66952247 769753133 742965849 409994941 581105919 977597275 367394418 849538788 377584856 161712110 788181752 139474712 96844560 584928165 129704919 656737304 344574650 912664182 327045567 876635994 397120743 332128071 53563625 192221293 344625720 490276035 23760900 563058924 530703732 227603287 583817588 527771845 974884874 193136988 354055033 694828723 231996855 113894903 321480277 928065070 952679553 271389723 111990686 176718267 899553078 3711105 359021869 532316870 104939278 72337498 429089769 652264134 933130099 31040395 303925906 994446543 875414511 918887878 175454991 322330833 996005337 939317953 210866627 195842777 152147833 847066785 856033193 640900660 896141091 285968964 661132015 234034720 6784990 496468685 612380822 32690898 532339450 678107465 395042875 114204402 271169363 932927660 276756741 726733722 229839084 730624582 496100652 911059712 39892546 632173906 252691397 240870443 689079924 992080624 101899351 588902863 963770075 998068841 841513827 305070500 538221784 810981275 281579002 49907286 481124513 717839467 302595092 395805792 595166723 997490276 636253276 657425135 675116674 965077055 265180220 897461632 973664755 537486652 939325806 987484972 923395444 906175959 911601081 89966179 558790946 120768003 249002439 941517407 398113251 460195712 454886487 831430917 719773467 874094772 334334962 2121274 643455923 320950039 630565470 792227567 932570385 59530396 545901081 809147351 489719434 50780156 990043808 734936170 704775661 589463264 145454843 875690016 462838701 429470405 903657515 896150419 211959636 929558155 862800304 56215266 833265094 533335791 225529388 201582788 59340600 665090601 47563037 830226988 338686658 699059826 931520211 348001385 348355810 129141512 694779360 113157156 987349491 345240071 561891860 624438578 657445406 623220709 54299042 88580010 698174214 158963135 333118013 521128894 946833378 180904132 131156303 183978661 276697617 338373654 15420594 777723876 119285919 737634442 663582276 148797009 112973601 165352233 993118566 477814460 9195420 316918585 864237088 269541879 339875343 365474333 65981088 816586374 215285565 201989090 825322088 159332535 241578808 43836292 439379341 651563607 924829782 27142711 851141014 591303608 233959748 237801793 478309517 376968127 893775 675435937 22460268 320645885 30953427 442738304 75025270 620165601 622079671 511742048 579350764 660011313 918165346 295303551 11900256 566366496 637149826 791654625 785344098 888733856 627396468 333767011 553200744 296013091 519489778 402759129 936354998 889147366 978120349 96423566 991920189 890990629 973976901 631218718 870641604 548160580 219548829 458259198 764338616 635037753 786872422 866480375 344868447 906557858 70550086 19594363 720980373 479708983 873582969 425679440 696586315 34330796 247270614 656376312 183270169 71148624 57290430 633239128 594682423 369533370 246128613 302628350 278003932 18116990 209430152 356759451 777306506 173974778 437898355 239907868 234529769 714623978 371187734 203623291 158164370 907663982 657189220 163970989 448068896 759776154 487567476 309883738 491840637 309564662 786052496 103122996 890539516 738185610 389425665 226895778 548614669 729925393 233915431 157157077 841132046 116836319 133344630 312562341 852421619 983549860 799031918 62269429 282675721 349710010 760859830 711667666 503086402 909243447 407224314 956619431 291085989 364554679 507224041 589865027 978903479 545264429 428397113 812796500 381809026 693203268 389835414 72472945 155812666 644042333 105860470 639201891 558416842 25006885 357868115 356126210 340552244 104788996 650758687 659586105 559543376 500708621 266027162 757070994 529604116 817931180 628619759 772448552 443220859 413898249 180948766 692443471 325349483 815313569 983649906 141438379 813448555 70899018 351233308 155782355 832730156 532990865 765716245 571493161 843935227 557610161 920491878 80240431 171631750 695042410 804014060 931727655 411467528 162637592 213154063 252078386 948516149 433420784 761099405 692270602 491747188 277748114 358203726 914880035 894081047 160579107 421569287 219653963 592007196 152650737 244779028 194462918 176929501 411675375 454382016 576321229 514642572 345440388 632795437 386868076 754535912 607768737 361893368 173830512 308962534 207078047 914411718 349913276 752253523 478667724 893292202 467086116 224751974 336796187 575494061 263449330 896221756 741059948 533931019 152247896 228306198 649466337 115905252 547761682 635061474 437229676 286751483 906441094 343069879 100027353 427441760 927606858 744940143 524595020 65399739 986415402 836522315 591410724 436935078 658678866 273644890 765622840 793065815 884940125 896433384 434435712 649033602 76250552 615636513 981046757 697899753 670748637 546487118 663675593 162632512 343367677 87497300 939853922 154643626 725445498 429165948 576299605 747850215 38710601 289657469 717725679 803522851 647938885 486702407 859541436 851457209 457199558 234641868 82896743 38924007 275594973 33232517 782210789 861288528 302441246 256886326 192907857 199735598 646434148 232581485 486661912 563940616 252398537 301371663 893627594 70081573 934085040 921980740 474634588 947879060 35823596 161854795 504629616 465779297 907051993 474082526 338463339 531478043 689093777 370187942 296556582 463812645 612011483 264209699 217444803 855015795 300868680 891171340 445115787 768746299 251003318 285201638 762101124 32661146 908841142 774996311 802945448 167103289 611262330 487881387 376851229 373430348 765406124 84287348 540334097 931569354 4865734 188885351 494008938 525142053 696358924 79724238 464977225 812731787 630152632 887945681 344667537 388199579 648834296 334500332 826030193 408060343 219392304 631268145 367306064 457284361 82787101 70379059 602508636 926050810 171171448 303001581 939311880 833676304 915823225 782293252 264059796 11660327 407573035 97091931 347385071 409811957 663459384 21724524 433451810 59802411 316541580 513951337 685837525 576613488 786179982 374182284 970893851 487574749 943879575 210089841 606145829 214087386 972834731 769140235 533852767 581628955 726105975 566192403 591470809 8213632 985673706 136978901 418153107 285471274 482291435 261341221 339145298 900693034 250794901 578412989 936091584 815692483 999480531 904942961 590954774 257436918 406619579 142860488 151439449 109797263 182618565 46107797 149254358 719747904 56996884 591897356 272007390 931651995 300475099 386113643 317370393 938513223 543535468 839543308 588659164 876128797 297606747 940149904 329074262 553289043 288445791 982372103 582442796 877024264 912346836 583275307 82987182 445417753 661724320 60970908 934673712 197625378 409430353 467151461 621083733 29708676 132269296 527767260 849906433 133120759 55362526 193628781 533321240 275731885 623064078 342715927 827840817 784204895 166786424 581024845 142756553 436445986 253788764 97073604 454456335 252513303 875782918 616383889 117155610 768729101 506509563 92982368 510974482 360825912 145598692 499357448 305289223 907961991 379582953 426200877 483103802 969763233 846513569 330399885 786219170 464002481 306149448 895221993 554648794 234422343 812027966 354671771 122335554 65071942 702958257 988032682 753230362 960097879 454116860 300444974 142516877 968504057 358831083 355340412 344123700 902697001 173861071 159718612 612662504 28110580 437361695 350359320 156787284 876465548 706578648 337307417 994038276 157009832 28224317 482209456 314887143 419329149 766269100 190598803 165033536 328011049 907943790 890122788 320403537 957848900 436672086 922546074 839785774 730212559 868800583 317072024 477576456 149832180 549391734 363398473 554240156 86560277 688709093 241547530 800906926 699221925 832423607 559924238 324822753 40871370 584036289 724610419 374375577 831369921 424880121 418750912 629709951 9914999 897371366 80287129 780114756 532234886 709633852 590708872 209215253 705780159 684629698 260362658 333209659 516778243 782457816 473876009 550449541 106276540 994855675 463065033 620084784 255633135 653804750 137920563 246262877 743893696 863865316 477512164 598964122 216669914 793175224 769035790 224087565 114435779 182568264 689948201 78118247 758600632 847073701 782178628 759457067 247350937 375067375 527209318 822793014 863942430 542093779 559957019 766626907 374822334 246070441 160393921 147189657 467126794 195964159 215573794 619724353 822679886 61601572 623256477 376121883 183279773 531213724 914725677 423270136 570464944 50761907 995095668 12221969 843350013 456221959 60307147 204651376 92790401 561126684 70457090 119363831 131596291 265664016 201317342 172639627 355135506 466947742 617830226 545046044 906148665 802198187 916406643 708583684 971911144 625857185 189324642 156445148 840607856 507945703 700730589 51333715 162670215 426705485 170274146 46412451 71854477 511957926 922631802 77147249 859415775 738709291 437819803 997206214 502499479 47987453 24130542 305141069 52994410 92370378 206320422 372499492 905120319 794318252 459258840 37629515 879512274 627300044 856579458 937800308 281398753 340842924 145878699 278150453 298280550 975463148 415323406 277016452 775391506 672774540 69331224 611687273 52872897 294865521 860835534 89951098 889278306 204098342 175028908 401391159 73263179 599932759 518841525 647542696 773400379 872006440 125046951 394938207 363544289 332334722 15101332 335506338 200778083 810575070 465625900 19371939 508459484 727639686 660830988 927293290 2568872 185363351 343113757 170518517 637244005 376774900 788559841 562124676 147582350 223213502 708559790 717858398 154455954 11932946 958053054 91220913 802443507 904853379 961467758 511046976 40871959 190060395 579195286 788512956 190294798 25041461 591762422 870684049 336498440 695896051 213414361 545989151 391395340 840514963 126074759 892192893 88625383 200187779 696609092 531461624 548887890 176815311 763237539 834416864 676357319 50813586 822107272 230562410 993621565 722710776 114811376 376262774 697207991 252729759 324323850 439736560 963936820 825334607 603455579 403092502 979781716 3472833 406077477 954262958 991038169 45638726 753705309 854178826 298828167 580514221 12021853 526762340 160620636 994315233 708267951 801834449 182337816 845598272 573264364 62211146 990326203 890084915 11685992 659624005 539015405 312888159 123994057 751483513 294209619 473880924 234235542 97841722 820108930 452641000 763565335 671778887 325658246 64605447 146583 577414718 216975551 271805540 777115900 78609797 639708890 949341302 3725017 955109289 618280157 814559212 452789106 337393246 206504704 877243674 892676669 27932363 454771524 851817312 479861250 436206816 807051212 867226889 881044427 757940018 839782769 446890387 949906425 605344985 456235541 453658930 959283504 388766137 408987904 229121639 39872556 68886270 354725926 113307482 820036996 389059038 635261128 960946552 883584489 467013871 450577063 276383665 797185712 64232100 829558970 470660893 162842810 901289736 304289357 260238803 740000087 500399520 314838202 35962130 317883409 270651718 599404371 689944045 155949142 243239224 772887972 504142327 257112516 155010743 94875438 12246448 933166001 929122426 430455192 544874236 198586345 497414894 319632469 946185361 486113193 634423655 522893899 43654528 438261651 646011023 600662801 526389877 285124046 790512573 361831999 539783014 276967067 528288025 268909508 170556547 881224927 869177554 72613365 680492761 997222211 123234303 567541993 27708931 361079989 35899470 198522470 538969956 987995444 345796293 940614809 415037395 842683491 345921825 973291227 337589331 953407154 576005047 819227409 146321011 759101708 867484516 607207147 987964007 803858690 229793433 731472715 878860544 169958999 80782664 479420564 481253021 951172836 352161745 603017079 371512985 83397653 784345501 314502135 305835664 562573202 98296006 415969909 168032903 225340448 547586600 843105097 575340424 262196888 301958764 418927530 416954454 111570233 415055695 259994457 794871308 781090175 719963643 241667014 108888687 921930131 476417529 535823141 436793312 722696894 593913891 974014381 121759123 706922500 2427334 873576453 509132367 888790039 941702220 948752024 521006479 429200679 611508465 375783400 627287138 949731392 565693534 542262723 17019764 671447855 385803775 335832241 666949486 442443484 926752231 160941487 337656343 361407940 751830248 615984178 877696899 157140752 460601620 785101193 551018382 981322876 781136393 145517009 213294582 828776541 292697839 757332721 44321632 794789906 239735961 431079957 647590359 379409546 398490865 974924670 675111220 688943905 437149971 517548386 509191022 678443953 997441354 58771306 343846616 55947060 942014882 46154279 13889760 47109480 980601476 305095036 523440804 575715835 326967862 892023450 676549779 65432111 381993369 634025688 461258416 232602934 739034002 201126003 533294093 844659689 811804398 47619697 416503865 103795907 444241827 138129516 417434214 703099878 909812910 76381399 576960579 657932306 147173705 839462986 952900439 320567844 726582537 737539013 239177961 651179004 884287620 350775123 530398769 507560497 54046985 516716738 502883409 759439612 468306458 204781416 454733942 940268903 473279073 141761767 136384263 294179272 99015554 808965225 123074326 964756502 781898394 553217271 155897275 890267133 585834401 190781292 796299312 239590363 441818857 569924623 111772420 127517437 182149251 216200792 824573336 681852409 677624295 425612439 16691630 699353545 686808819 160320841 807544695 886960729 604623962 343845710 914807430 582176933 396177511 790372399 900495570 157645460 784733587 908894808 693599249 844867703 728924415 942145929 906282405 133771820 79956864 317051133 630459239 473784765 290953873 557160456 351102056 990857699 428165516 398927862 323886389 487490502 424776461 520007820 502617939 421185185 287572306 377867218 433776829 541212677 967664484 292048517 778904315 119158560 544135135 818989987 351550075 609557073 252287173 462130876 471556210 824696487 968191358 75363328 247929988 263545215 845040058 862771334 876329556 641284678 490801190 719440260 320602782 40776956 376930285 786127763 67328688 366429198 919067482 387172103 485575780 478903735 822135531 88200867 310519964 190510428 236167852 226220632 908336188 715639802 474502835 625023838 130238008 625696685 297508033 881890614 426736726 378006683 228452886 194977143 522697948 156436467 506173448 906671897 132240982 666624171 612092441 108296464 130937562 677238642 107807943 415916524 761779485 390055853 15111639 9396781 144828223 247019028 284060802 310473898 482661274 636133172 831417168 396917526 260597043 129654267 997771374 823465224 592984754 376041131 713256037 129212963 896833308 662127169 343268422 592827360 840381052 159383160 38156307 77827292 942346398 827032445 310839206 711415585 689652697 120395319 993209759 912356430 147349365 925042127 753989222 445505897 697259845 413933385 248027101 572705794 787344613 38425957 626982525 62274487 890060872 236269717 832541456 388302524 98137619 611838020 822461795 899577433 818225669 425287185 90674517 605847557 560120220 225836412 392687138 887426121 614472134 893182738 216830694 130434790 368064228 445978295 365244895 718539831 615724417 821205796 492721293 448656758 993145904 920993284 207877724 517149127 853426379 544367970 688059029 146168030 913422208 998882094 145887994 364736346 315331653 744693714 587107594 585361267 340142961 101411748 632774878 867756887 615659328 656469614 549945244 55264564 683063710 607768629 998515400 616277162 686680476 326749921 903398213 564822999 591899512 261330760 503089690 318822527 630464766 148603030 234030604 59134288 765520332 915848251 312133823 172112697 285002563 614853392 490551477 47082015 855611675 536237104 754673739 988694123 318367654 52449983 545257051 472388271 625365334 956061906 481446554 341892532 960087444 715208991 118809606 50332727 828883506 822405097 470746544 557531610 16325366 425614762 510374650 122390836 597024817 687458506 8335703 767422737 206120819 593683714 800215326 863362461 180188154 774783745 654628182 567670522 437092034 431219718 655894428 321175464 269292551 84191698 785318745 499914201 382657992 19522666 333571052 68268039 371351595 877519261 891220488 987497248 488138806 994418860 911695195 382364091 867876626 614153708 379485278 977210103 84340579 736927054 930807394 773297922 874771617 855248794 593295028 852983615 482341333 788386075 183578398 900464588 867480670 224107174 108890019 635383525 682214033 22463478 50990630 857681973 626071538 933760406 584106673 223793633 565858186 967805819 773266253 289352890 575753706 792195516 180846167 614363440 213629372 227988330 465536858 80101562 304251916 813062979 918035906 40727373 64147389 659970480 24287811 985752021 397545049 510101767 192581789 795758750 923743978 851232156 399052842 844733211 429287680 328254900 45738802 809972507 960982890 6064838 58193538 403114065 360080127 642693359 741588368 348931642 352652120 608507005 457200720 32734662 948043144 789418576 245671297 141814660 448428600 487444584 517550585 38869593 52552954 899425007 710712807 579705925 824771288 138336181 261168875 253291924 573706375 725947591 871467275 72314082 245223065 780215477 15647063 462772547 295262116 890875404 676873370 790140265 780163352 317505279 866636755 349099083 870828307 719183867 366128751 469684496 294290392 704950090 527014099 69708937 484306190 256523121 928487219 549089074 896470649 323705927 84669023 792690773 228002471 696246882 355818486 155393999 217553729 855405218 276743093 937827707 569403283 681365098 480187301 903501197 966637185 370528425 933911305 183252011 287359183 122179438 29497943 145493365 86953258 208112 369710945 276790011 600653746 504217120 150977649 409276586 384201064 145536645 767468025 430168691 923231281 461061586 225568540 809390466 380616715 573015719 331833073 347497252 595375309 592213136 444884864 803741006 903827382 672382873 616806664 283847143 789425106 394885042 155873580 857622840 44121306 180765223 327433369 259494851 143798024 982047685 563239529 917600405 592466256 211196579 103269232 161523530 365276791 878110937 769038615 911579408 812591535 833187343 250965170 400315795 23214100 695622585 661853692 437924058 343734944 29237118 148006635 563806013 976359842 449308632 231466106 727097570 885903297 606252755 121810315 55988166 48381110 544014975 39250755 988928441 825878574 187936479 715339949 891396898 775457671 279286595 703095182 959704627 251304133 269404313 78011178 447170070 251716192 13851035 881778183 34294894 757361714 795745949 658569091 683275339 735309605 71200757 86945376 960170687 815783605 842690754 741227535 109382056 630477092 356612009 222600005 586224808 938413395 823205985 340132460 742333522 851702063 258666583 925246299 167185663 535786605 345755534 140558169 228293210 434782745 181394471 374884520 197563977 317431248 569177790 700872212 676969492 467543959 466278001 103687085 842929879 991532021 629619353 949911100 535215992 921826364 170092563 375433249 920447334 94305815 505315432 205234943 513725088 742381425 193810462 936001332 970615593 672490635 35264079 134303318 645977733 383691610 215682758 903885204 217712840 800312752 668078586 598340431 13077752 911008759 646007177 667985193 123257285 467527549 227765275 38817928 452983402 285681029 725279439 507645258 411119688 545438356 567973740 246651954 788657379 483330529 755520674 229741615 736551008 855949716 139246784 397133944 560123521 999611991 217078483 334738561 435323824 178167475 592611170 612564306 989600502 961061341 390003538 940844066 297816274 259207077 17762696 474920396 612380374 124839830 575960951 956635376 306493202 41603616 68143171 74934935 41879427 668487696 239049832 228826838 511452048 100749724 260665522 816394230 966089494 502560957 951486877 52274345 450873314 934253517 391447461 218499194 8226072 148292525 615297503 59174174 495106747 211417052 759057365 459993160 92148669 991241444 776896604 318616177 21060163 931311442 965548013 798785801 383017164 166234259 314577745 232423011 197933410 206784581 649335134 488377718 35249059 508487475 852007950 355841045 417809290 529590275 760028813 681288755 303893758 596778449 566700917 843134928 51748446 897751052 872093206 430030532 667635311 586882754 477508985 714340693 110877136 412350817 62621777 816612931 187706240 50793933 891652110 468402287 565069127 779067286 829517927 643629008 775233746 105613515 578322206 840777374 251402807 601573912 142493322 679161239 678951464 392763207 162537940 605805100 602650026 73577553 935122930 306526021 402492947 213786972 32273752 51455960 195717288 929459116 545309222 898443457 270702934 206038615 334082193 969925729 531941068 844198988 46422577 393363683 564902173 143816007 569899200 274675291 359107543 591077695 310345879 665262495 295862554 144970236 170239042 800488310 329139537 832235534 494729385 74933037 156857802 114673571 183965744 107543981 485688062 256255183 792279209 95038608 837152812 713655508 32791485 157280280 718131202 667732338 787582516 694112505 994315269 624929057 898176795 217053092 112034661 14763177 610392503 572022843 29927271 457677017 829374477 400235689 201448845 179648272 953927011 181488158 233044543 705558888 545648745 771513153 727275011 461739222 45360402 714793381 239738988 835713436 62459157 267717465 556873538 139841581 686140376 337809713 286328344 567599586 863333679 431455132 778631457 902129591 517660989 72846915 708652119 287119401 636438059 59317057 660463031 40408125 414266163 447298526 656017025 827912180 189146466 724783410 963136943 520965802 560468984 685831928 594204407 897404804 602687185 369669497 214665923 939059183 807137216 929281683 651379531 514109740 52143228 723827136 464965916 653288825 863337927 714429548 610959057 630710213 75853105 528738744 448663334 210970908 277951487 507395027 323097819 531158177 358397424 328387442 771744119 926879493 810909404 944691499 143305511 874467014 335923249 295170901 181499030 14581901 151553200 687617472 446811487 982709728 220047562 81070776 435688329 789758892 226237084 635667479 341657078 404132479 333297680 632726067 104885754 489596702 523870404 537631233 912385632 613239073 39327569 769746542 943692975 399971651 723870958 927551417 80226901 953757034 913782109 538968194 706057284 564854749 967542234 950735220 394638828 703531407 171415657 586629028 26650597 791390593 151261703 200104816 311241954 499061635 377139652 105252907 872090778 363086002 254953183 469087443 550227301 664211549 260416593 203001791 904178387 665711268 886260661 840568240 835370970 249156248 173827667 583283816 376169527 803941929 840119392 322544957 308411834 893451023 248084838 775170537 961928923 206291681 424449785 33280846 441405399 246678221 2918634 667399465 185435476 391842618 224285861 672995543 586433459 14285364 271799351 498337600 496462303 387083669 849654318 997624763 913097510 84936176 703347509 526166757 607512762 845811751 729140588 431623933 52222593 108992786 925811670 27403410 196844953 307292494 632861041 30151835 37207037 679972895 549545401 91009763 41575200 381008721 688429427 803718763 927029387 65485961 706846159 930089076 960673229 548226674 562717933 201135665 156961575 893598460 771969493 218042075 572167935 657617513 393763031 49204597 138826188 828547810 491583162 265403025 684696544 378870818 605792667 456682987 105362743 184296713 261649676 552609658 120398426 261797808 610902223 889486578 949503497 658908865 863765414 629865468 412155296 84720920 29714609 901428667 106177985 651488490 572552656 289139362 427101457 321695497 631148696 969818229 471640784 400635322 772649531 371986183 136744544 909370106 922058802 711877362 969100023 531233983 306671414 520364230 333746258 324607844 571159191 780838633 193379326 123691662 787672634 209779245 410147457 292049311 889463629 656546026 847065916 989395708 715363656 679209260 11412928 608548223 342777313 759361943 747796484 342011855 255542382 354633410 791348486 966375620 84675678 164202443 645687290 148874730 951274855 581993616 580903340 19739872 488158955 511113480 621178831 611195021 831865606 833573138 273430261 99028787 780443213 34909050 801555479 659001873 538935452 396290129 269041958 558891223 683383807 479094090 326262694 489567597 40084382 857693072 402444730 353045373 540722629 974947051 69184651 591269699 169029835 467399365 584815563 639125525 456408056 889646886 841114496 369039662 534387221 935684465 544698910 961253363 178943447 696496325 3179693 749558039 451487306 540256755 834793643 510825133 104789801 432335353 880300832 384317252 264076808 886769711 332556720 658807166 904334799 818245044 656372577 700276605 114570190 610533227 893684256 284595537 908330692 703196313 929629400 415803970 393972671 275319956 149379309 244004009 32796571 824300061 467561576 993423021 181207961 42112352 450611431 69398596 956799685 621367909 894557110 30314687 978281462 931275267 262098386 93516405 34485543 165941489 117685473 112301433 747909233 326810511 123375299 640539088 154776144 892212433 367732630 152751720 860914629 162233723 663628733 177820015 514706985 892865655 973379619 8976788 516373494 877572036 762278050 659521474 202986312 958646694 19068972 711589884 408462620 516893975 916864131 412857014 191066145 361938872 669190898 57624929 224752211 590456390 179459618 381483498 445739451 271528692 905707064 551693131 784590487 623017080 884828904 666723834 378373346 446260661 472996219 765231871 308140209 711577105 818247399 931333960 598429229 376264534 83336727 612445086 372745154 82520996 963931911 316646844 496016562 905067867 684809852 300653800 317624791 1255835 981090322 665723570 418892521 524480644 433590573 561121377 356060487 205060090 941053549 502108363 392247910 839752687 353389699 124688254 452002850 657939245 227692544 644083193 98799596 264498691 591122256 792200855 697821836 6070545 168905484 428578854 903355776 703292829 382360562 144222121 701570590 120878887 871567242 382750969 44311164 742496013 751359029 923980918 685684316 528311866 963255456 826926569 2143969 331577197 688957100 145474223 838205369 885977694 23703703 37436177 222441987 455414848 965347504 90415297 248364758 93395822 803066678 443024446 298205005 480681927 594765282 828455789 458949982 788045336 83964988 442151278 892428065 28176937 317102152 90206743 165593582 775537180 326346274 827877665 634311547 882328699 691636288 591538225 577030459 850078213 977846648 979643785 899469666 676399875 795764713 327462141 717725046 774684908 245399019 745701772 527412187 482215279 244874794 72557116 81149312 875241833 445841627 256808403 429786686 183656882 788403072 119494577 758641601 362515682 573876726 66933349 158910305 916556489 800911027 307996983 793791560 380854120 106753982 748159415 238484099 657223542 611610503 268623368 779684061 192498081 321481041 638869828 214103845 182953698 240619967 626001106 627083354 541418583 75697404 193344531 720814394 18273838 390527607 79593987 115932023 187801918 172056477 25546836 261644212 428820944 204970756 544826436 794964119 186627037 738490269 410280321 976558937 565185543 728048195 892087143 850005717 641013734 612572638 921120176 955164890 266814719 826921415 628399999 697135489 212711935 782823196 874310170 958511872 734200823 117663790 754985125 10086996 584389382 193892616 750122107 695010052 698249893 812943062 112967633 948262403 431601621 287533114 723743873 182526207 980578235 645623185 793135531 309488336 307851807 911389703 574280332 878954597 930706616 526106526 825489600 355566967 547078728 575970799 924074588 23089744 51625320 929564289 182426529 775509686 230759339 815853759 722155707 962171421 289105234 309833099 381331890 311927774 793877494 959968048 345505672 686378823 780545005 911876366 166949335 132796431 444336310 838303873 983760813 461425979 589151223 176169283 592870918 342215807 841704047 443199788 391673751 412473926 446438087 548423353 757102580 746533791 868848682 725610771 274937030 794524006 340672796 882451386 400854903 186122911 576876399 800082444 266513299 298914740 774993636 466010793 65395361 143549230 841625114 482639871 794757217 566011570 121784352 150497615 76392893 405741621 170099397 517991133 316320014 372619642 52641308 209577510 577694902 252280116 472452431 163036028 332134158 146136927 59619117 10025604 417281388 604960 60704635 852492726 859711758 469985821 815226503 987984606 137112498 699736476 239993577 651085940 629038893 885243752 782937645 273555498 911060947 474420178 777705197 992407366 800613116 433514395 90232145 14831344 696571167 867936133 314245157 545858055 241276853 785356452 648601191 633348736 562172092 68075926 972662221 49969144 993423967 209459509 252162107 451814639 947335068 227393793 178657657 521441721 764297830 888854216 827349109 474647749 798097050 75714530 479386328 364003199 124121840 760327105 801890552 556900007 306029410 589858556 667793396 311622195 172580358 594265726 185729571 897192126 661267455 601238717 633623579 368521042 313118695 396395062 42522929 271799159 444919795 144310609 732020721 274864787 194840985 733578205 114686712 784721941 650251274 334085708 616721878 466171201 887105970 727997007 972292612 128661269 989059220 27358060 928462535 354605406 174009019 206234425 711394646 376342964 409231384 643013826 843677556 423443213 385326647 675131503 905276908 471097425 897669523 846833712 203649260 33286478 9121453 710535241 524321561 502951479 769772263 424153915 955254342 311742279 163839455 371267710 647979332 645905568 455967920 203192705 232116228 385297696 627478862 695162992 576966282 646726402 926449203 402152788 86024162 369524779 669094892 376084140 796370717 482887181 293476712 648503155 412519744 866376612 886817616 503916377 525606737 320264669 934246419 326614371 900935280 181856028 175351221 323382167 632475235 23254906 513023020 567889353 742189041 189444941 563220787 166190240 216730901 686103033 55165542 464652564 148028260 438738785 861944571 247583315 617098624 793855471 422603213 229404396 883816237 301268061 201743793 13694069 38158849 853180266 468271093 708415324 93292202 590861833 398795062 185786101 331157433 830141766 587019201 130081387 918739614 325029677 203244451 414614961 174231310 988128022 904358283 441463682 893873277 521102420 527108184 151111709 396839036 984036966 711923508 943295417 735092140 796868834 853112103 14959928 357989194 631255806 3765157 387922519 32577176 848685561 847555089 243168 99252032 911521858 53092548 374027863 971282472 771464630 408202435 628585111 660235085 700316536 15994278 332592543 184675261 239031438 414897761 539001321 199650093 444535607 128701839 881937301 290777582 754890655 559418779 225086454 368261288 735475331 193784110 347377461 606594958 939656689 411220766 953969837 896386644 709933652 135954131 992657972 378813757 410136796 693596546 64811087 649225723 959768880 501442106 532723678 694897357 695954894 736166972 786780359 619888525 348778560 988310240 151453591 264001040 200912923 847955917 221830068 439042126 597306272 261581002 560225264 447653384 233283328 109514385 73274392 492091697 483311418 68769961 884981360 456147258 527771478 926341461 537794129 183387167 28641716 180464925 378719434 563200370 23422369 797666444 731221272 944284976 357520267 985550287 882784158 934108444 178270462 270930349 308285369 629380144 931010792 889166724 312578110 894461746 785172925 758597827 417331283 523718135 293958708 220241776 550359191 264015298 967098568 2815832 947692378 190805764 555015549 484733361 711643767 680679604 335733318 961062191 959627819 973175174 965509506 197415980 557089169 921029816 298034262 580670759 724656765 879499969 120227349 980924814 116494226 848120983 617855208 865019767 76253132 287172503 515793144 840708651 74458056 767107994 962148690 659232107 378592969 485071514 551780961 627129123 247228619 472065117 891869777 737975517 964208261 216801349 515554285 216433384 639914497 180602395 219674113 207328809 680748682 425666951 223749840 913987584 372837133 333036714 410507995 153327903 897031750 579455729 906749861 240500950 892487668 85558735 950697230 782506559 852028895 966738422 299071560 253799487 875372886 708695468 959766208 124555095 209840536 597849659 331811684 349377153 504199436 46105994 476292473 981443781 43767703 816288586 677750003 700877189 443495010 208416926 272628613 60016295 616197021 658265861 93025658 997310929 356641451 875911781 183653206 764659051 772650536 786527724 47168393 261786660 249803993 915252875 931443119 773962957 787930918 545094617 633098198 692946143 864979384 167590246 229243415 644978793 659587343 475269456 145834946 140132211 777117224 156373676 719185479 562556573 368225776 80567408 849003470 983761885 236510574 734861177 103216924 958636724 662149074 24514543 16657207 875943379 917901711 740584991 394624920 672701503 332781307 200373930 906733506 655081583 729374184 445347125 521797758 449731900 250077524 78660629 84725375 881046556 492145317 886352894 489164860 651272749 722265597 104549628 807070471 447114817 884792387 734980655 101911084 795689493 898482489 161990888 981410996 411526911 782139449 356129386 363330380 838183030 573248834 962097405 645041634 298401248 985544994 155487854 898825878 826609992 532529517 935591977 811667245 785103401 348724524 549595716 471899963 196032418 320525990 522469654 74182381 75401448 377090649 144418716 639292247 791212137 476053881 895278987 121384612 841101656 522111806 275478606 620835158 247958521 703018080 582017649 887888138 901051586 2603712 121051115 476117040 398248444 677876814 905089997 663807431 784120153 360283187 300489404 434864584 18860243 617017905 868148653 662005822 433276753 116525320 219622759 220204899 66003901 200620198 460526107 585561189 377373633 717666904 898006654 38680008 298402897 291205895 172973116 733578083 824934572 417191560 529728066 461553162 479934725 437150617 339358033 886736636 609271094 340471447 142473163 932178482 732257050 796521841 589863794 446734541 549988605 334484920 709695344 686064772 557346817 553930422 419209809 463018158 150674646 994662974 237050521 687973599 654972300 907859227 649370846 146425843 632656005 95782101 931921058 103945801 765893566 58910908 849062613 269252746 869447427 227508610 73601746 513276498 695473017 783322462 339737492 988810052 817603391 619845589 546329985 747477681 218019264 7007291 692320926 737086582 921056654 14161779 762912975 555165586 109830262 742651306 959247848 739529010 289478031 32610991 932129860 513333594 278748454 310524217 624886781 829624010 548463520 898012623 680367932 707113134 556262502 980314103 130868451 179406906 58066029 499675169 426140093 288890883 665157598 393782447 530078115 185626127 396088959 921272845 780280097 636736563 184130518 261517149 161633794 930809341 881629723 5901193 663744123 250885268 622316256 234082719 930238794 159540775 708405496 640237101 400637316 741309237 593330624 741716124 628933269 816416996 168102839 577392393 82953206 796111806 613338289 962501662 587744284 743901633 561766087 432032009 888847975 724936391 724200100 769229433 715352820 252697290 5825078 565203689 620609031 858635105 93892153 876381178 203170821 249324954 957765671 347245348 392502450 308603766 207593252 735404010 125385726 648265659 92467474 771813713 559862039 149858208 933845733 513372264 950372443 346916552 935134243 41363555 908002485 866996686 225389756 186596715 494805904 408154204 46181763 629861038 483286579 783194251 909459873 432309793 362135521 275138359 967262178 598524004 363425199 948926522 444922468 337433419 539598877 915863301 890194874 106149379 992827941 159585816 902617754 768311256 669886691 337036026 473371730 15903747 284056769 736764632 123990159 621401523 390850280 274955845 813541173 132996179 969271891 922734102 289934069 6755094 288900397 177918935 391062831 173936894 887056009 781164742 905900107 489886983 237464985 822758867 843486913 862111689 936595541 231306159 81058557 551328111 171865818 259599 643492000 951311178 290717533 223104964 874856209 36274590 391581123 669896439 686189545 461974084 984609639 972727455 253949154 879688499 680524782 636354750 650343798 799012326 657010510 30158647 190926284 190150185 215558450 966020436 814811511 749405698 444949809 61236851 372382708 63976273 17751148 42068400 301325231 742059329 984460097 890766980 412198421 75227205 441008022 620802349 331551184 404611457 273514273 198652414 424027837 467908385 377392421 458713014 99110839 572367443 335433034 687633237 193902911 264896574 987225189 536066726 436312362 560338210 55455428 312446541 950551847 965788985 658361106 156894851 899868467 951714289 220564373 430895016 66092774 283799049 419880615 214289002 833175013 642666366 196286997 273867087 624320972 604621069 482364662 248456987 257561187 187020588 828934316 439237017 130070964 409740362 824271218 632898535 719031332 430091010 88368170 49048151 251477310 675985891 627099668 86127006 765412473 52398267 813631694 917351265 93226615 804761741 177955872 99525951 289022811 340549386 285772406 653611321 387639055 547647709 518987802 407800836 845373625 411941234 117309136 529295333 541481648 397593979 85193370 889845240 455868818 926893613 958884030 980657700 576693035 422576106 431267094 758853617 254967452 833656913 527980353 385972203 677116847 742893188 955058585 661231741 697748910 380120413 199244978 276320824 751332131 938146108 265132687 271882761 599590484 611971780 22357520 416238648 137021048 532407250 188942966 691607256 135646067 533351271 430444179 648812441 910107049 445180168 664636630 411917220 851532373 134016715 495737787 475116229 417165311 513834958 780102537 638050082 155210027 459968805 494476018 960351444 679154418 211247693 136660035 648447941 22568438 293346863 852421833 3407781 922391689 390843102 756991065 520955795 97971064 994558105 219287720 244784444 96369614 964499201 35557465 248416960 85982150 277506067 253992844 838579965 571036757 40918696 953059358 605953778 378511233 144687117 482384287 586594376 866053265 103148911 343396240 541944866 858802851 4031972 376529138 550646016 596904171 451889328 122486922 834087651 771496262 842094928 806842474 127201350 93468907 598881257 103169884 70305800 276306825 2334797 586363576 576980996 152939959 808408950 372669060 6479952 550631423 454318053 408065437 561440630 403859890 14777519 631638510 576381363 219772493 149060955 62915395 101111193 266422259 210457832 668597949 76514662 602783117 766796252 804164845 427911681 458559845 813057772 473492452 36585824 787636413 541659361 71737422 901112563 731562448 542608740 963321112 983662450 690723707 268028890 481047734 760164573 446501924 847361794 921078255 363229426 225452643 234825946 631407023 924933302 501603078 65968132 592860624 517480915 448699497 339999964 735133501 113647101 348609987 896071325 714869514 576986704 240578777 613902282 10985134 207863539 327800484 689459601 593035875 693238020 203820869 111936698 460914617 725470038 705773225 159815075 457750904 383303694 947863620 177818728 123577411 511628856 889950738 852459773 4648932 30855099 11981977 467793258 693691458 963331144 886629133 442637043 840900055 179349520 158793717 356325110 949311111 941712725 317923198 474662906 211081218 413820769 184237312 454764470 104413409 131887907 648481503 949379965 76276884 621295849 236840233 172995014 820214159 786044895 498251089 799503216 44173832 96630860 304181293 976850164 700280760 955860382 710846269 3245503 464839688 228423913 305584693 177646620 3103018 761584339 40256095 449107050 431098051 135380187 879773963 929989149 844021730 62163969 170684974 733130213 457606227 678069917 256051837 989360865 682316636 75391872 896935945 944937933 557255335 354984855 897336276 975565868 286382560 917804161 635326451 261700171 882843472 611180955 105119808 347869757 28304000 621270764 824108190 353423816 391397702 4561854 506916704 630638273 605415924 989740868 775140600 475839879 946436290 13151488 796303734 480714838 488905338 618331016 346544715 792628982 448379313 358368376 463518808 604303892 18351086 958818001 589116807 615173707 678733707 551852393 197542480 448197361 289258604 157173197 89892786 627875278 902513499 389368117 929302560 700291674 483054169 558226682 259344521 355553053 248016648 844633838 155272718 763021543 564907911 151432651 993876710 889530147 590715230 392617608 71613894 161604488 898080064 467087659 886049615 100829433 415090805 316823947 209854143 369624689 238759420 604080054 515200120 958151264 512536984 175414902 614286475 943264213 147990805 796473430 481455284 344320749 571149152 293628739 753429893 583475817 373422275 28284389 439481681 84440713 401710184 157245199 388527213 344666444 825371553 300783515 945368233 431422167 421743793 160042660 909021220 585287927 383451824 827052662 974111083 720626662 774978095 693736207 657494578 107152188 766282796 921991914 234722763 395941204 159306220 982322922 848596057 221530326 206908257 536194088 20879464 402024922 373772604 149918392 639484806 37567681 187035851 155645170 150186052 647924611 319474675 291309075 441673345 375026990 267599698 674780736 489972906 65102347 346173291 17965459 20849039 436278054 754567520 552644116 737613027 166321810 430553844 319003512 433396815 853269463 682550579 114454450 551605590 773025421 427199730 988847292 885278712 917136307 759753779 994678044 936734536 356125958 239405090 736694102 51560706 101088737 986263283 913047433 847620210 132050649 978298716 129024783 162639471 896674470 591008098 350057240 553317118 72975084 887587233 200703254 600625335 171693788 940630016 43973816 320828106 69374177 144103220 369999358 939066049 457397755 151837967 641952270 206028979 131333014 401581488 828362263 670551148 547730003 988508183 988691285 199933264 939758858 546597751 606743939 512537892 669829546 424248362 374925949 128756466 281304085 892937219 480087802 382275488 36650490 535892960 825855398 487607234 139401890 363463337 844028341 768253064 716945751 755473395 720574453 788737056 367740544 864066293 534984308 125033859 306277992 453374254 54142591 609490468 769416843 151004174 295958057 454785968 807265792 538898371 190447876 202147082 877203086 659509456 424211981 219395097 920674719 61558502 464138630 896601806 481877234 529302913 508921363 916607309 331661872 756813706 306226631 227579445 920884010 17248863 745823027 611240762 469500374 64310844 193145690 948837040 184476297 484401988 741922156 311189484 340418373 588820590 178484410 86874837 931996787 780084239 939791242 754567041 643190918 159849132 46700372 152483241 475525914 988070732 885056509 821693005 508803673 930508816 162755544 576067723 517927314 934155325 100018995 990682214 418036851 601402690 476676440 729936711 491065532 444572399 414896274 120417425 816355455 147173277 267320360 921589494 634700118 683064872 750388803 808585824 26011458 763789623 666789998 196114359 798499263 586883080 331078290 951880499 828566261 128567080 680665383 37049143 697504700 116833404 15378092 791725475 920772188 395272767 146081721 72231699 709450124 27950645 715419928 384677634 89437081 391929815 91953646 145355791 297530020 903864165 836223854 378273926 266774351 799902664 572378296 219125108 303815228 837331102 864930611 178259450 504497804 114850667 632060041 166148003 509871448 119636918 947936453 284296603 119680529 552343475 702949 844150048 298903249 720432851 985210554 472584560 516161379 807536812 870189788 793833242 956414797 60523316 265881631 194505281 375756534 758344303 263125345 383103475 153223977 957268321 986193568 631533142 901689523 189118940 847026620 549710277 914366496 300113301 511211876 368278893 720345432 839646584 875222322 969364919 578376338 292726558 525159868 792582969 123424460 241609090 997132194 667076649 852747538 332750958 644105906 296136709 540903006 4903386 181308138 797768057 815365447 535482351 406928825 927382537 570717620 876459400 137904479 310444781 890257461 626322862 20449667 247730247 867701499 217429587 698921990 325712846 912204435 364466890 939057853 123752032 950028093 92660565 492038289 539694178 107754851 791972521 859233172 752153006 356557468 509881909 963820918 27095627 315938158 700924201 197602644 205947711 243891085 737637563 682181030 928966486 457785280 497876132 505801384 951941203 874643144 401700021 225041847 553441623 950847908 257056463 871827094 327745385 975966608 133514948 422998254 232850967 971267191 835885368 458438455 806956949 193632105 414225653 998542070 439991090 179013358 262205752 652100104 767437111 229335308 96656116 444689897 788213192 885914115 792313429 863509170 114650365 95511332 486409160 568810930 549911659 111545111 614314425 761503933 827882168 53834181 36633626 787717931 459586908 588237915 462582365 461351157 22119358 324037926 76785876 950576534 547454732 674126121 290912752 821598122 816946898 796024690 953908600 662600332 221314749 437375504 893957207 116442464 953534085 108777756 697676032 485860233 915043668 73881715 569402258 176578245 232987953 777500769 566356423 609094072 718342840 480307846 572839255 625467184 110492546 967011518 856173684 419596513 375463661 757593642 628680414 890148853 998196417 429308265 392575958 234337782 868273950 14012812 650417445 441355994 81871331 385894178 454475957 819856005 997263761 154722648 882171786 129005649 891407305 360484237 211240049 126644369 159036513 625774485 398200977 294274183 434683858 776948012 160728110 62396508 196117224 355407022 978199317 746791824 80315201 585299765 461712835 868841047 743600890 134047662 478829949 95131896 91289523 379735723 731662465 678293896 108001952 629750953 250768450 279657871 764026972 574049580 471209719 750099601 571186695 891423931 713765174 484884857 856754557 801380964 263634935 892601748 426708142 181500717 1132592 737778906 397815053 139747692 980933084 741807260 692773403 774282037 132546977 488915363 168700152 6196373 668346884 707561847 292643329 620241092 177334079 328096246 956551857 353666490 353570980 964777112 634534870 854547613 734612036 883539018 882467460 506728669 405575779 113214140 945080456 852736861 131071391 340846862 486493416 767817461 116168880 958477023 948559640 607367661 351245482 868994073 102370336 594274267 384072506 333358783 959790265 969419963 467573516 454429183 660718687 298545518 425366744 164533875 441783190 85261891 607931942 677500750 796070088 568253829 358336941 677746269 972794694 524504738 202435174 936583876 437920406 949640981 953321891 571800161 15264930 185291581 398902191 594292363 86858257 584348531 430577591 337901770 900789568 764490229 866831563 563787042 214586023 124371880 952989696 112478192 161464681 449986896 400014601 499467147 556458982 237265067 463436655 951153255 704193765 296419037 716121347 693436030 771784353 409080360 666538077 668322859 750434925 714154871 497504048 134996250 912628480 371248191 522829738 687176545 377364873 149078636 203231745 158667396 890648583 926947939 997389943 135443802 803917190 497076061 734992462 142836014 213893628 718732022 132289832 741259921 580747992 596542419 644219686 166213746 834012870 498350595 563422265 452598159 474552491 990100905 907205702 280584963 469603538 983171487 306520395 44543032 663863362 74008230 661633016 337205210 259757113 215331528 415443444 212757402 905220441 670635175 702400490 351030682 268533949 547026199 517852139 861766621 474141532 128240718 148325675 563571090 548593992 358364064 594406283 209487616 702136013 661208333 195364355 55578568 207941911 948311808 507571874 706663567 379040927 393701962 886156748 889796461 995622679 891781774 156102224 842341165 842772587 764411397 557987770 885287360 652545393 535035015 120109407 776475721 985365549 908972992 584744383 575875753 11598201 334397312 804787740 406216932 273652565 391071994 594154013 514314864 497931931 57023755 503559188 303878179 516637482 601266364 989492537 536532617 589962398 428181078 190293624 279996861 7679020 734158014 85312500 689476799 847932897 88104753 583255715 743778442 336565823 760352267 564446361 312906905 263669902 391239944 231405351 718621004 566344083 532685487 412269522 14953281 349596029 543194408 551638006 556903133 174416354 314843548 631236324 19598185 63171272 98368404 53366250 190790659 402563915 92503873 696797665 278308232 334362997 39744386 310430744 140861798 711215133 486784516 936665207 143110328 463808323 312294812 445898994 493263606 411655296 476686557 423266791 653972979 999555689 818153644 909486517 504964949 444952314 136393181 612789371 579293227 417045240 939817512 931585887 207582452 928596099 484969688 291359389 604031444 271537551 412398205 71529149 378279834 974725334 454950027 708068933 258332228 534688473 891100278 196372052 330093229 728481944 348361125 991248110 547793509 751314774 898563345 85372868 979669319 30169416 344831482 31157189 502054879 443672597 826165588 996072761 641871245 624560403 312933666 14345073 458143850 676598772 878120609 261203749 315903016 475494447 916994701 328117896 556261178 192839067 521438234 718680092 603741586 384516272 358824417 719146130 456482231 202050306 657529716 652173912 737751828 441660008 566625122 957152473 230530440 146693876 186213437 830459697 334929009 6038989 978813459 715640185 606866107 331987355 309504161 402309020 31686113 194938850 801584169 332801910 329280069 497808693 477181909 455069183 261214696 793541717 983399449 462040720 543468464 632683479 831582788 230106084 717866209 477869419 757094912 345274010 622988834 834783701 509306213 904008075 433071951 119627688 863445109 862513935 576522813 536167624 610481210 592478395 643938305 154956174 130058889 333565810 381188876 151051318 737672108 995831020 945347217 65501202 235662995 839746694 415239217 547960103 899779809 487647932 377507442 830913430 40409031 449282096 973181174 478423274 745067020 305371347 259960127 576647998 291783982 451615286 52267689 883161963 190771791 653290619 686095963 601833221 890068019 363613745 67520358 440652309 446106653 791807469 245356252 33502294 833609826 560504254 150397196 501966323 697822580 28580254 164120458 776932211 553321450 267137622 8910607 674271233 695927101 998880870 71451215 217998988 31601825 323997173 775814566 189359726 440161410 769083380 737621524 552365698 498763045 92014675 223548086 240200484 87867580 282559113 511671554 432535480 62181930 277249065 580735027 202716002 70258781 175334062 679690588 696766257 68190538 759339234 336061180 286626456 503433406 972177992 190407872 977547408 625473390 797621685 42495277 472651373 207486968 714268972 338575129 542541605 921842804 585595632 60611232 864803238 694289081 753757122 592542925 696431610 7446951 587252786 860145381 799220374 114485253 295867776 97151468 932779259 112196580 946412309 485327854 144561158 643417934 438051254 916164177 828144544 692637291 150919332 434975294 982626248 205752879 185096031 426109510 274651159 848425205 82453230 660751111 777839626 56024011 270212788 641622200 584549170 448074103 599183031 217149018 946781068 976317633 843508225 988887431 416303852 380972615 575365273 602727911 432844367 662533014 998920583 2302872 556970532 555735259 75017738 188941124 750023884 946871995 585659263 73090001 375700992 381071585 808719598 900437170 861046449 57249041 391160678 728436436 657185953 887786994 273935547 268735649 802430267 935624307 336773041 726047921 84047813 738417265 337944190 282896254 989133627 434492953 626043370 882581533 395433884 831890153 173854510 401022718 571347017 571857887 790038721 557275831 78939572 77112210 899621138 850884132 141796775 173320600 499527009 680369915 736103666 892298113 632165983 162410556 387242265 956173506 391843764 985877129 343147292 760376305 379836405 491887419 900550901 23444567 966140750 733161353 401204402 619719470 7054866 428556482 703332510 63904005 443960602 386636396 362873240 169717717 613990456 533051043 751198377 472253652 165993804 206998812 785006310 525819595 955705043 676002583 614819459 727894005 742701392 560792374 818722954 86184564 512782725 190765873 715576530 472440992 512614993 414652702 339579654 680294832 12088769 625964639 725954875 129890153 94653297 772959280 791932444 113198765 5149732 246258333 134810965 258665509 301044442 146696457 655784678 346614287 203057449 575931871 6286650 555703444 101927224 637474970 105208337 864185660 466353809 914295489 366642419 140255225 606811211 797133405 932530774 316629987 355764137 418184056 833734434 789417538 862855932 82551459 878056858 118441970 523894212 195425206 860989256 944062716 428621637 4394898 286890042 594326652 403012351 250405646 942611334 139267710 745830361 135992593 46320043 520038158 639101156 171858255 710384247 878911699 909797245 20369595 710051132 145534849 393063669 619221069 831316614 508972289 29645495 618297175 508386151 334039487 942171562 953735041 881754640 375345207 746580344 344235518 79169325 566090310 721493679 802674342 438269560 842690772 20361317 215086269 791308409 908697768 474619512 970951042 502261541 373800961 935118986 820473026 921844045 639805630 551321666 470794122 13346707 454234335 374636205 580500554 610464588 165872688 738360480 827278655 751551881 243185719 297646120 604367874 810681613 9684055 630931468 73193594 72584035 245888087 832494665 888220200 881635325 115362560 109644558 796809616 538598105 819498798 568461200 568379915 614698258 190840332 249716799 186964425 355984058 59723733 41993054 17706255 944992529 758568999 550946031 479342151 833740090 451816586 682252071 29366397 135525682 412725324 209549692 630894114 733618608 413569876 645815859 647134977 51680279 946737724 102540603 870733525 158270882 972500487 251589511 35785301 677384596 803889471 7738716 663276051 856757029 831367296 439171868 199371604 761762002 347277775 381071938 93867195 641438226 121670835 528191988 574936922 856400150 340710791 631100095 35189481 993632987 92467355 276268963 818490112 324613740 997475738 215553406 110918508 773687161 792274657 82042302 439434533 423322067 62893752 923519980 400642500 569188913 111212141 426121673 446535228 249849605 632319085 438965983 602007101 337672876 882485180 232603719 378231866 991728126 140040435 522771987 497874918 708685160 603605706 734996027 350596162 904152170 19998932 480504617 552030233 188920207 675071151 281587385 616007224 304924505 518576836 949469756 563581405 409379285 76678624 185915595 678859923 535790754 231608480 84367083 885867325 67220046 65612061 236590568 6116350 543304018 163825220 153160186 938730476 739794384 936726917 500656359 825424329 837298191 930999210 414676753 564615280 105023606 445030371 539743448 727950581 574622538 395507244 328425603 880720133 882872654 975692197 603138001 295911562 82362068 308820004 79319149 459077693 863198834 692121969 60417420 778062191 339970570 699966925 230827854 118933891 729400942 388330605 809771025 383427360 938683207 739435608 616483279 6669215 324695741 336963952 814782901 817621151 811370090 808295045 365941748 979050305 706756820 416224550 686814429 977903281 609399932 156698418 230250668 68208745 320412404 630793550 250296653 600072167 876936727 82825898 792296310 830102984 605031069 866477288 925843064 888614488 405862171 720452039 325907954 748736408 976745729 233767329 105448881 80445892 281882599 127664728 519757081 878382684 779380495 300639869 309593330 77599494 76222454 631360105 802211271 217847274 76729813 36827226 494976351 950441060 518427228 566400399 324716746 905644866 821231253 157783957 62310058 955207209 89741735 890732330 833392874 324489713 438197140 43103803 892871987 898581774 545507061 977128224 200841870 303064855 136916405 238890587 153797668 345931336 512691019 514435653 104505796 834512015 643671795 542831497 192291494 263702780 314700654 146966563 980174417 117203991 99008164 27973159 3427749 501621058 97743033 515430865 155329400 91750515 635525154 370942751 376072629 11298652 934332922 988920843 527165027 286304751 452879018 770451539 56579356 915019823 745578571 281198557 202133005 561687714 480194793 247137848 255364161 799258544 611222292 497367902 1071048 212689062 968607211 994472881 57806186 631407544 407804368 859821108 804071189 871984508 366318693 446420520 32188248 139401301 37618858 878530877 963949902 618971307 828499364 364982740 485541454 86292174 190957189 3279563 200078248 530118423 374661666 541775591 177468301 942726700 787565037 379573103 30192656 38748471 376446922 161074807 756074113 728898908 75214636 609676730 7807966 251856858 375448647 199568932 636692292 626415063 234267571 450102699 633060978 407562194 109458597 940524814 301099139 814237068 200699384 466045830 571613528 123578789 747241056 278726232 228741319 119245446 785514539 731044325 85933351 570586643 488992130 623226798 775624488 475640908 489285792 194117886 415143481 836604219 81465331 103947983 649102930 341305514 31551445 245604886 501500267 960281696 199550075 719313991 480960786 884544281 224582489 147564290 794199456 196663628 507651349 54345094 902543516 532422625 895388491 115101269 836215135 778352433 789708683 351898083 67450051 521359829 693577010 671005397 569473146 180424195 3360719 75024062 265917208 945970384 129884759 173536698 209304383 237273631 993213577 842906254 158594927 493227734 706824492 234377484 77484288 748852136 979373209 342918646 717636382 697252028 285576437 878992144 456674666 385588050 921928764 618715867 877324914 356388886 446024803 396453189 782135504 762202 62752916 615020439 62821775 605338691 462338129 486509776 170002688 352260168 262009838 538282752 347691678 112728533 813216488 780764284 52323644 38237938 205594734 270700508 148832161 197437264 919392209 93601701 38500991 897562590 433248982 492149214 712633358 623858447 445165115 672329464 580745412 470611489 420369928 681167944 312721804 749445777 968117831 536435007 584141010 839022680 992861309 195975350 391029473 898345844 681129785 170567796 124575878 156421684 770211229 266788081 456516520 170262846 699709796 389840300 412421559 961672262 319045194 961225428 345253486 515784550 258380991 597933353 839144069 445484194 373487306 294229537 316500833 393601982 275093489 451753567 634214076 99998063 109718852 644706600 151413758 798698719 83456069 911039853 359409776 422122051 143955811 636684156 131700084 606464472 166176726 317612436 109283840 687216634 53586570 634588634 201245053 490872648 491288431 714784378 209880265 860771028 330484501 488907983 233869473 805632535 707451856 956549480 178534026 468468437 631617564 324584234 782754264 879319497 818983131 615365596 793403288 321420530 535022334 752493925 8138198 750406653 584670017 958700225 894323716 757527746 104264680 815688289 120536719 93006473 140742861 681863464 691796481 726092106 886853655 925075440 708608781 834299691 46109850 161717874 459420126 798099016 938694530 20278326 971000081 807602076 82060090 719454401 553087228 576450144 773703085 497137798 788292241 70545056 450921302 502465806 196587662 867929754 715676294 396891037 587702628 834604553 449504721 788776162 84087760 13619921 465677478 818875779 358356016 320667725 35053670 533252633 633093909 716070634 259989090 33735890 168935037 26126281 463121183 25411734 554623463 804670482 971673843 363121575 143884249 510380798 186123143 455812190 738342303 796687680 418274510 288594525 707795513 848957474 732449471 466234915 767386948 985402102 877068656 541632649 882533439 841447868 198622044 663330834 838982482 922002236 95540419 941308784 910949985 920619477 981335867 502611734 458687875 284504938 523670420 358070008 57077214 477255340 410225481 456423458 720241983 993620949 53289488 878045027 829331296 11086949 639089286 976831964 363902775 224681717 127092060 914327725 802338720 41851200 692785725 935774364 764899517 310494288 757900184 741802895 202350306 663796778 441815790 935075871 465033829 765853186 397870619 472559331 974154171 387501651 937826272 949926716 385019877 833538449 215345342 200261737 170726011 724860687 213137223 434006616 631090952 675138001 448151649 744011830 978245498 618055298 232484036 278431390 307280992 298489887 14536493 246399960 813219221 287444787 91325941 999288825 679676544 966198031 395865658 614599381 830523744 94089357 118696842 314471187 935103047 245050993 764433607 441614729 253383265 948616172 8503662 317654402 10306060 897279677 708364030 819867797 289736796 658961831 54099587 332132020 845280721 712621807 430470791 773290407 659082617 560297612 305257662 151725049 154846850 470591885 781830028 218130971 271121210 981670543 539974508 195636967 764422648 861544896 202556717 977942632 834372479 72397951 83303260 560198136 364753540 439530819 8188970 114868160 328636944 745859535 52908588 359280098 132220734 429468982 560009734 348705232 363207137 268977 281360846 816677301 990697418 519379288 184454829 90852079 357923093 525544839 553023908 912927658 717335745 20054032 182050114 866364133 14051687 41066107 113775044 777281194 694953001 386994789 569619242 382642846 2237133 171875354 410767349 925868395 420584432 838461724 69664569 74313242 955378399 297676087 234656455 461085442 97666920 387989098 245343755 732603234 13628310 349080804 26045196 817297306 251790172 174599458 954876223 736626129 167759421 313814415 442818629 612346845 834649481 310788789 548010265 286592501 678366839 103544389 702518335 866212600 743953388 748200433 904495726 823507777 813735042 210860482 130573887 250429462 927213817 70178929 234293533 878774473 349278452 344631098 82976052 788356162 377588391 760311969 169633388 544789114 853772020 10838541 413970500 406344607 877081397 511679563 872468267 971347504 358190345 300163406 630201383 221040901 386141268 58287616 641295960 431497571 416649271 685068166 252267171 798221231 296246342 467085998 784405230 741935667 961247217 747407450 576349986 904371389 821077203 770677420 734761285 754913682 604608353 658688541 198922420 798374459 496649670 921480071 123527394 291155175 966422383 387585994 685053944 714628743 878757066 538534588 911198308 899779490 764201234 36479985 959324554 869532904 681997316 196777897 281536015 51893128 120109119 621658209 592648746 449435262 371991551 773303937 604788369 890407739 158188003 399800710 686740935 323235115 46834901 700126540 859677501 836568142 438737674 787518991 777159912 739667421 987317436 623028180 368206064 177835834 158856295 37280181 272491608 9454528 724400784 224268741 936223574 77693014 106251522 276178358 402266430 929682799 709513812 16445368 33364761 8773163 1133183 203304855 719593814 671978038 30604942 594700496 389800011 937290700 856107208 680914430 597236011 680984944 775868803 927894670 375615816 926854661 268739819 517349666 541992336 29574748 410377409 13314288 358816521 815185328 144773070 951860783 944722108 729474561 885314657 330533598 154513696 188528813 96124236 981313478 940521078 691217740 43293661 961864187 733532045 183975186 451887363 860676521 707320890 374006338 391156739 938546292 901769816 639730445 996758594 804760069 710131449 501619643 675297085 480939732 116355298 408280574 374184680 184786001 790899916 872405402 645241450 587633105 93966110 758641289 569168660 999417759 123937469 678880036 65218278 615539404 436095608 823620 523666548 202210556 875640249 354925511 800423728 877295625 39265848 366526957 24188968 956450377 44061856 797448134 698871877 468656202 324892484 353658696 91375671 815660453 342466548 697803495 875076038 809970793 365393288 216259118 999645789 832322358 779120911 12917315 321439610 599994304 610160744 67897460 847212557 79559175 573969558 108689158 630778525 681206016 493160815 854677711 461890217 305166629 151231576 309952626 367162009 55668301 718729907 418248615 700544865 875901736 178623805 479395951 546303771 128826823 273336522 641591059 796107151 527013096 345331063 988243752 979619290 614683083 365035904 251393293 799718651 454926472 786617507 627130407 829318801 631785068 839929455 141153597 983116325 275396194 421490852 345773072 464167817 128426038 495811421 509504165 793042983 170160840 14006579 550408693 614937304 542448608 331385857 751626551 814736732 967057236 722090326 468778228 103920344 308051578 726598356 412538193 611263660 79749805 434576764 655306540 8116827 685518704 695508776 921502411 613020717 503009864 990394073 851462828 867547008 908476390 47470430 351338095 152683822 325570057 702092477 4739893 610989104 600221425 616033361 486031605 516853854 486168528 16908350 847321173 351101687 165212670 555662822 219928411 15480773 30070979 589038241 142397958 894144069 667996678 327960115 353512430 434746627 146193944 853077037 503505810 680612891 18640543 196510756 831907745 893472770 469606585 817817517 747276778 74588296 38557401 720780759 124699506 436107838 894634615 895116747 357019435 669096395 222721675 737459721 216596424 572234614 466640367 596516271 465841418 123150793 606739073 332846817 646190531 182253148 214088663 907893749 251462134 484839765 586945927 553751326 54802897 775704514 359536096 741799427 155300146 169735257 860630261 208778693 190959215 21087722 648725678 681455951 519210894 780862297 450478765 978408278 390686913 568868042 804520140 47826282 902094879 95236739 346288933 649017637 33018988 62795185 548669628 114226066 777797236 193333080 953638206 497700856 843946898 594771447 514980351 6780611 124743093 505779271 161952042 800533101 706812097 870509780 669589815 160379115 279661100 23438761 183260280 176224221 907944578 303220817 682443864 585069919 793343738 199151723 201836166 853731544 39569200 825453407 549583837 20247287 665954863 385051486 8693302 958005175 122829238 857772007 555518193 785482608 608532327 42502867 370382410 49850290 997607147 138631504 882624047 757615567 52134028 577566817 641252909 185824004 211699430 922883394 306950488 213717061 878422181 537763397 278819712 924918586 523750690 817507222 807154486 579804428 172301662 849101723 424187894 47223966 200666316 370838146 342436539 105217614 227862895 366918645 266113729 63965417 790652748 353695779 13576993 18644957 710115421 848899234 927474755 627121946 780295939 279613494 197597904 250032424 411569208 338882203 830424079 919029916 50915842 669457325 325815914 768154082 970224418 975767280 399547530 540563398 671011730 401302766 609170781 180746854 288634703 980861571 77883165 777643961 106885462 182535750 905621215 284062820 140280669 393259752 140649072 543025418 314702065 104720484 620306236 337037352 585578759 600579971 468749195 180672617 230308729 582464393 798112335 351932595 39921353 463712647 962514637 89651718 734384011 630938022 138945776 950800614 120665152 769494352 781293017 20931335 350718985 547233445 329819704 313961484 34709105 921916154 957115609 528003478 175871852 579561775 383190816 412156425 990852735 836209424 912368865 830188744 595340422 268820234 429257854 577915811 220915018 946063185 528215657 815569203 7656812 935967575 109990190 114979853 111088517 235827706 682316895 649096083 839202364 89328409 277103304 964328250 714212151 92647531 23117309 604782438 340274057 158987536 447407716 142408000 719287324 587171793 66171562 918625751 99039846 6301203 86637014 250364821 76689279 226394565 178487482 478347790 110472387 377790501 873800259 169812812 295231132 253813082 347811861 593485988 769381666 886332625 81937051 794735899 685640446 564167964 114600339 513883110 395040318 822800360 67738979 2052428 805133143 149065759 712398370 892414437 900324346 572564299 262144364 527214224 963929674 832399274 91772051 738885580 742238569 894979060 934873735 224774215 459097632 598224936 774820723 391602711 476909162 88321478 889095716 229367420 59633936 670288591 574761802 363770384 613141148 13806283 698882094 889995028 688759071 999520899 962707168 543886749 368566752 188545963 891036564 342611059 937694720 942745616 610636422 215923576 149647928 370836001 228616559 323250364 544199508 50624024 305939357 696330510 54709704 954275055 32338354 833697864 13263002 432014613 567688365 390662211 765198390 398262115 748061932 67231103 332195111 820680538 712252744 433533846 687162884 560316064 234361382 111525657 683802942 737908773 234075258 496934997 234652757 157860548 463225429 732507221 364461307 481662455 693065241 367345883 18545609 404490174 494129044 246716948 112868674 62428111 530537245 845050044 812733728 49664996 294945460 628804918 431571343 41631405 520984006 157493693 117927104 787603187 915476001 850606314 156900727 995281497 942631067 553766277 488717944 413635744 425577492 184779373 295985065 816458416 343864606 16910062 793796113 614551078 36177567 545032432 225900469 217249559 760203150 101797947 555618115 215355990 350014057 248178240 644057508 482136901 589885928 474295671 934567131 950426842 194918411 725376771 247351666 461606160 639978713 893718865 327491957 106067291 662780834 338132304 97535763 130393247 599688345 431386098 386391912 679283978 732623718 184788348 870218730 54297656 373422876 980885901 883732365 833169139 643183073 698405552 488590466 54948556 494495362 984864682 988014189 827921312 256844012 730387646 334873564 744115430 839576965 854833481 711017441 497767956 630777583 436519047 806640617 499263465 761125213 381263772 954417029 922146637 660052267 624976386 303483413 549899099 126275672 567453271 714033403 892630903 476518231 8195064 770552575 601548776 92005633 950911565 674698038 418570359 502791980 902653573 869314636 186187357 316428156 287370882 344652643 239094052 181374962 813012238 496467519 281044781 844269448 684128379 212855462 817132052 528685955 748837918 916703395 617377993 137807629 969610663 220604034 149846345 932817613 834803385 489181052 13566756 376025008 422889928 276693763 21286937 242256262 264528506 72281020 243205590 839106270 608782357 265894873 631429884 123507108 340845473 103248480 391216007 409710370 953807761 293543119 502446181 869444805 189887531 884364867 959407873 69289994 404976253 277611806 499423584 704670235 338764492 699987773 39807560 621127708 118942147 129596414 886800563 704136284 259670997 848977550 74912647 646373702 605922913 995736745 397791870 566154560 793661057 824927375 287569767 700932328 4826623 227985698 645281261 522971543 669992566 175877328 346170492 489129979 47910707 103858273 34611941 965045378 294111155 861650588 268378702 505578249 540942340 713628236 508334036 647442750 695255820 326974960 383177968 502370510 600825551 912933288 419608598 512583269 673007949 395977223 638805528 51531450 187829690 208570997 617346178 458197042 867776652 513617515 968445734 332362299 348740594 637874356 472497198 367792751 78982204 326103313 463947878 990477408 270236128 860435946 983740414 7621221 627049470 941447703 455783710 617500840 365538555 730325592 319655299 397306151 747705920 834836703 568719877 947851654 6404428 956927130 9932184 502529482 299003389 62780472 261027117 220444327 555228018 582320133 819699521 637645827 705015070 672471443 869053501 151797643 483494286 796710138 313155451 881584195 980832869 313813184 773871096 192417541 995311137 614218314 732392058 277596768 130897818 86463593 983101838 932372283 288845071 249052490 936638086 753908822 825218064 254588891 39877829 847549027 683795151 822942088 733601183 446460416 708024302 772015602 603067640 702528580 526099387 144435925 318178289 578614440 184751714 248381316 260964698 286472747 835268087 655258063 499474674 825033256 290336117 162257974 80897554 615666188 665449906 418093034 136256082 949744598 336102025 388012594 218195881 516915782 353746637 124098894 136113370 698025718 869027387 904650976 695937823 295541468 439925224 719717701 335595857 558730515 197642467 969944603 813185170 882536859 30869176 96177821 695503063 555175958 31221459 33477039 945669649 744850807 4405663 954252136 625969168 30602711 218897229 276423558 188743548 489835336 325130285 530593791 673094694 71796661 933012542 230077812 941944727 118895074 29753353 379949845 762050989 111268407 540544892 284837652 106131440 187925262 718920344 464446549 280498513 178298635 926265627 352507086 558594519 607748420 656759062 285586700 388288406 738481660 117200365 315925070 811735779 575505718 100665027 222375350 103589782 228277115 949314294 875533638 269858562 733935855 839186968 576002074 768094444 779870559 284971306 736473962 152715927 157798951 932819359 748292940 165471865 473349925 993998743 710999656 151618277 834395204 920261519 864195247 867686591 886568926 495802072 371764310 17011207 588569195 308139175 914081722 40658178 251180891 405818324 626231564 836531545 12641861 972407850 117388983 916510844 822118717 86512886 366999516 671389856 355235 278373459 44834233 946223315 875429573 108704773 877579760 736738553 827403195 183300003 36110128 296058193 728162516 563759577 345737818 284040642 909857237 67493328 505644839 571684009 994726359 500727251 470980672 589762048 554960227 333957113 299410878 410846219 865259055 6970173 637272011 687662507 934300442 431242512 157397033 550989193 949277564 342214629 918205340 890718402 462323669 930271053 734164530 865319880 157889605 179593655 147954720 772826839 849060074 118106069 30351248 355053227 416918459 220667241 742965949 855089656 452383453 635776126 725494454 165661116 947456508 943935323 151579884 641672132 950818250 845639206 533581593 56904197 440365531 891986780 23338921 793639390 826648372 921019120 19472964 255002821 120116483 900239645 874988527 541145889 338289877 514594759 12326792 400059838 119136470 33534596 300624512 464428055 732571718 863474058 914937779 686114131 54289810 214552756 826951352 577661570 407039477 646380572 386330330 873830305 87880636 123045811 862921775 996282952 826554264 780881870 877238340 670481577 370429368 212193996 396358581 303902946 449666478 560746851 569924322 93964429 671297453 406630617 362060870 619797109 287495939 975030266 576012055 901540939 30957348 214772254 889760026 195297102 22768483 460390307 730473173 331929905 617806896 919757783 336542093 757088858 46169220 864526435 802794247 392509720 940385122 694434238 236460554 886185772 437353847 182509552 296537528 608031760 602974226 367592897 574361568 223647731 640565043 239996868 967522820 683105989 961506619 105593500 44064341 41048432 711633211 723009802 594008173 665546037 672471320 649663470 348008114 437047016 859070923 209966930 306753143 251713905 389917897 180392234 365575105 104954976 433722844 386134020 105182200 119619108 819203865 513864337 529779288 903208695 919685751 325356611 355785391 650427989 186102135 792483154 779334495 36607709 814470619 111720149 629449898 154636208 711228373 221516525 544650385 370547946 302201496 868931512 802403550 293341824 235712968 158477415 57414619 981449163 549644419 376634234 170790325 830410934 825298669 344330604 889290752 36260153 127876913 523889447 632829718 868259424 984300352 732307510 110470969 410874066 176861964 884342164 548952799 801673746 388333092 995543500 950529943 720220072 237665276 352743549 756002355 177509629 511876814 593310347 617520940 2096818 492422700 342718340 837734924 99323001 311470752 697815615 59949036 612551402 785230781 154458773 689407565 280066159 6645429 201130828 375475657 19678415 927833258 736901813 990228080 805867582 937249728 164624652 479886394 620670672 71589306 145360362 82189541 142759710 886870704 90661908 817742786 663290337 891625391 432797408 305000206 76809405 72090852 581272102 123937979 973562626 567916115 137878787 770877725 633382109 68174562 922056160 893201873 462238468 185131422 613585656 38240879 761928911 759068802 625687842 135810929 248544220 417275876 421316257 86002093 953357631 513088498 596775338 346773596 832337030 841739099 728532790 511576296 484530647 152987299 739218849 961692380 150704535 133037726 241290903 530062083 950770709 809867746 614149602 9321241 438988682 579429422 419948157 748990882 826563107 198191548 424005734 643299048 345276923 416285680 367816204 716124058 693046575 705816480 202074015 782173398 54601658 338327349 400982360 804620574 403951929 778146849 509394860 916892772 799316241 414228710 634458564 477187949 584308836 225609978 929983560 49340899 969084028 777292850 598672136 761413261 855760182 96459976 669851053 338763275 868144379 375272107 110224741 865368307 165279751 642386843 973499100 373768620 473530135 551587591 99341770 350010244 575088454 687251905 305316261 495115493 282257362 671352692 53214913 646582520 853055600 310750201 405710212 830291135 285623787 770681979 399812356 311053393 568336579 540668533 90119049 602143505 177466429 428174696 194869349 755386680 609890464 718520790 12532168 287380559 912080749 19319875 919321046 221860747 939486164 552906145 336849205 245407096 497871808 205782570 172511674 950366400 360889139 707160940 266454461 82037682 345780186 460306439 905637173 83657468 558617916 818766306 300306197 125766883 360058011 235437525 422332595 407662216 67574923 846470326 562933843 821009990 571940307 876906137 905609988 71284491 153605098 865159907 271991152 826936304 315776498 931872221 453246305 561740706 553681603 834446542 761479073 744817790 811801962 907299010 280443986 271703876 473467294 581920320 865955188 320208583 596832363 353771817 358817637 638349319 30263319 470681618 542984065 497011049 722085572 60145159 497247085 382370343 495840084 581698419 258000477 211377933 268306620 857189913 439114311 118135608 753396358 374993029 807501551 592404669 465732840 739982370 899314745 360375680 274352280 982997750 511616976 982037214 654990070 563540330 642344656 861009751 900473100 173060234 305573189 123950477 322898553 372196855 577625380 46482011 131504866 355192975 267380624 993070073 520798831 712899562 347840332 936357832 656524229 647510139 558398490 188804903 851709506 316632874 355184621 150403621 231355341 110167416 869506387 469738553 103826523 680278617 773655853 908130426 63212628 94969439 861036712 576720632 958568302 925652782 932027774 931265470 46489313 278411027 578627300 769534707 895994596 114148261 871019345 236676038 240212898 322038783 474165499 292973995 501072148 472541846 75930302 345286829 198289955 790222014 615137574 478899702 690793862 979643321 528169205 749019791 930420764 912755338 346821286 220110130 423365602 912369212 467922459 683938896 603965113 448323050 883100264 458952642 584702304 630874514 708469028 833668089 165495147 958473726 780570209 475328479 78656695 174175629 663942457 553135017 986011614 726662261 231059579 844838390 257586350 66852156 815792085 967192263 412848120 169644675 994268072 600290866 749588052 908439054 696717826 372055950 903425925 282971449 105664149 576362432 420419235 787352856 102014971 988624351 928116975 281177650 78263303 936034345 536480982 1291565 904822828 184564095 84704696 487459853 439034261 572869543 436893185 679455421 132887841 416298034 695564990 582929894 106425958 184815107 905302872 608599927 94397795 903779465 181178442 271543486 904481872 130024389 919725604 111295167 896045070 548379822 546738275 248594310 556931034 743206712 816038671 128237814 692190385 776869387 946348133 498789564 166957855 942962796 307576638 522087984 540219848 369219323 306425499 101629918 234093999 19453887 775559499 278363590 120440490 436051211 297869659 498165539 602221342 383291200 676238165 532628955 870316664 32455673 292652732 16385010 247838457 104547476 347208112 835057567 507493390 888748617 848626596 516363477 149070960 178203722 848753216 142509380 170750259 577704704 790152573 204249057 751333804 565506940 967126783 125494163 329879860 368314899 660703142 402747025 103355766 988035989 162470821 969828086 547373571 747037853 475560927 956230312 914284120 706140997 483445434 934649427 59471786 767378363 164309022 796902327 31632259 215692374 102571200 865208202 813087418 71205529 533902467 993833566 689820837 473764839 956924699 686736527 736630874 650909325 928857154 67157525 94142919 226669707 294343318 569094902 579117796 60736175 331645023 844475444 477997558 375142400 858581668 877082764 232473783 602464832 765776743 986032510 775664967 60263080 534838452 696833588 393663553 264665410 822535640 377099565 460469159 246409730 660630096 146985986 540525339 952848934 583010427 283124756 375629582 175727468 611543185 596853682 590570821 432637908 858211182 87000291 535604306 983227671 85157340 492111240 226341616 28682560 152099102 106239780 73473720 365243044 112789958 699269097 119411969 880741951 183214547 507402524 259413138 749269097 49712403 994746750 206860298 694574030 525343411 341926895 390735661 672195295 174829119 549997857 232293121 364209098 40468414 290588145 702084342 982784502 894812311 272688929 789863036 703697595 930794118 845927245 537821255 616013896 777294165 595213851 209350698 824000203 683836129 656485178 383515077 130177153 65062706 986962088 623752912 487521342 467687323 931558781 784098216 779790253 582606765 754474559 889960166 181119920 523697523 183670715 917252592 158889389 838560595 311553709 734657713 423144866 735149812 74393294 341392404 431945750 765987224 750870168 201171435 385678574 643861973 660907048 923164150 587554966 516152262 359631375 272960698 216754890 554490303 891891514 272352818 555342249 433119918 522027396 287822914 990547910 367071788 511205070 930207282 187963285 911562910 306990299 182768915 875460994 503232954 382063455 750513848 180388097 443423968 253810811 741046175 25605731 786893931 397905540 116216306 203412054 456983636 592639277 519155177 934740378 941956758 343991268 33023844 729276853 636407413 308559106 133565621 796850896 403794468 619176084 110682851 191751615 195376229 291969863 873640875 878939304 859690696 32809362 533881747 812071313 685079815 234094348 208764213 560477495 733112283 798074225 458948866 837762410 139797712 409870657 686407867 673389079 980118650 559502466 884488445 466552880 995992485 499093917 726376485 181418048 487537445 596355038 221352270 200792828 391263678 320471050 807587359 778764499 162394819 857109406 524323120 598147299 965370053 73298155 805770420 653569269 525095553 790033063 753097282 865439431 483167416 294875315 990821311 243602091 601994415 93812620 58435818 404416131 637756147 798866870 850023649 270718622 534229046 720532559 845535137 14244551 904097166 626487793 824519843 24166965 499830583 50914927 407511717 298460340 831221823 282213936 67875002 728980935 873660296 818061910 495173432 12676131 155037464 596944225 152795958 252475530 160791097 45560325 802730677 289805929 804938489 787412782 326823175 398394871 715035914 42280972 693751131 683221477 871984753 285804118 622593803 938827011 945203571 229999617 381583654 262554996 483492864 393660757 635602029 329953749 900361588 222895284 55230330 952820174 212158320 665805871 825402667 355899137 750255994 827812783 328566664 854467927 304628124 864384081 56561673 646451490 859165330 928439423 419670673 872352475 731155817 492840293 329931612 564749106 804556764 118413403 416716627 113620827 531174441 23305462 135707731 211096744 727069753 349726205 178062045 885707198 45604080 910638723 18994332 806245218 759037521 93855090 497501280 553040488 440260845 651447779 522268964 353336824 153055133 814431689 831751948 804296318 915012290 304698120 916835233 851540996 511078611 939625626 305984707 112773243 138885434 548025284 863590027 118722892 845991738 909531821 530986490 79020234 633332103 495563176 78510624 375696963 985031032 348366009 616054256 199453282 297186006 93761439 28741619 235426717 444280145 29041769 962912012 929877550 907941399 301344189 369193381 321579819 443229894 277777847 497138345 782019978 925327501 952496665 961799538 108794444 404440175 30807572 458115825 87090933 330687703 986355654 731007397 683514572 7958261 695697152 540915441 289755506 260763724 444898803 708801923 496716600 500027779 358862985 711503561 892674062 831398894 493155559 884393260 55196288 423123627 995541022 91076363 150108320 333332743 874718795 799341229 791861586 983825901 842655729 677998056 804412611 30761907 388358748 391351099 952589410 441302256 581817939 200914031 954752002 29799745 530483644 894994977 730113728 400230062 833117781 972986707 829177883 504259834 296359791 712210511 241549786 225794028 577351690 194977330 313017909 586064925 690576051 590590346 395920382 531323110 565327169 216874831 733932151 942395425 577489654 880397031 255829875 830191499 212092165 422187745 702007609 722112788 877836499 15614631 578084354 243622809 513976847 375519187 720022062 864834565 637843041 693521844 709165654 94835506 569924291 840206461 56945809 487761573 695322116 200980378 98885999 167219335 662206376 65230542 673327799 717859192 703987367 241278032 718642696 338753624 370317350 380075984 632620713 113201730 682373964 82071892 913518857 922718331 18841605 416976803 109153654 818674888 192506544 115280834 84883123 717738987 850265919 343544608 837426964 883565991 660693039 198887207 188428046 13088407 526352298 484201609 537049999 989104822 86104219 927931889 763242764 802969180 156963455 208145812 498242493 169840734 544381795 523009267 307515059 513894614 993039202 3137230 73078594 112217978 250629650 880285289 731441985 428282442 156196514 130396533 326867353 927937630 168892775 547401842 273067324 801422670 896568798 359387781 55347703 348709863 605034282 265441700 463986123 135797610 947988642 39014454 696639475 361415710 988835751 830703408 197882720 771988066 100115601 467643313 349839457 44429627 468725713 72587536 721485226 274981553 246056788 40241973 917422263 398313778 99363329 464849389 920007554 390957592 329440337 344268714 24825532 3786875 922088541 746667101 11709064 254743938 8768822 516794017 109941188 464834179 499815422 718710871 789370075 919802933 827365992 677589088 633284694 401668146 397629845 322497632 245582737 621019066 669484654 320361275 625096471 234840486 808692344 399205778 761419795 279762625 362871347 440525429 858578636 803564792 819909444 481984238 877818464 429419100 405264143 251081056 574220636 858744146 823809732 771866403 746174634 783348688 245094691 460614872 952911276 317115862 241317653 361508472 212287532 241178391 268823748 69228396 564673431 484603125 184221428 520333315 503223971 630499600 743934702 942295671 67430196 686666555 674299199 250798814 683438794 870082071 37155080 313034401 615255719 531209243 301776751 699444978 766296316 177798332 646524509 6807129 713217260 33439197 678242814 766436709 942791148 47317912 255506043 440494203 351879597 756522617 23339778 603755916 564457396 723890140 122970381 758300107 696628883 2559317 204403594 87431877 698916306 698902629 182205556 340174114 566826573 985766873 205445034 985893602 507823412 302524454 257902482 28996107 50172112 923052399 369562852 130395715 328959518 849624029 902930835 610816819 721496797 755072832 980902584 216841375 626057778 61210230 764058717 857257193 966201820 802918410 913848823 690695942 588070948 875445039 376732400 646222007 291253621 260243898 678568945 627150992 683569463 897583104 596631175 551668819 100064025 343357109 670241428 250917803 651192071 744539803 860963513 984739996 361826475 361410904 8130171 265136593 329218246 170067637 684785573 533077751 192469646 834626881 565567996 111966837 221902167 814382673 533263703 524383003 823065927 844093025 326556050 148329748 652826167 611682044 625095391 2256083 62634913 944633195 382742274 344039773 874935246 387289199 789712625 256926000 90974812 291229158 484489691 51934137 704195967 445742591 937668087 643040761 862265027 746651329 726027134 520290182 563375728 534752079 500851554 787312551 581775394 683872934 793339922 850640325 140073294 357573745 450479854 875934169 59322277 49113328 460899167 131006007 545835857 962704897 576815894 207733714 537749427 917559556 188060461 368019339 125863112 603277142 736650569 754792487 245063115 187773185 322606434 427657463 220120053 711020528 508571690 118796201 660052199 737749822 670335601 847925846 674854864 662343562 451032842 183829296 171276130 697706043 214285263 773346346 623460954 856172652 464987971 879973646 755560267 543312398 89253582 542803339 219388431 429205444 897982018 561566616 139624710 988665762 654368567 593857884 978270449 553286059 489484665 569159620 523048159 728463433 109191317 87657153 38190636 774972207 102203820 128349388 525422161 63138748 158022745 96462586 93865540 148373792 490866873 716565423 885623712 190147330 488165733 472217278 662662549 943015791 864572731 624621959 500444859 79791674 573761902 255148176 670944020 504988195 174653469 87023508 841640322 861336340 371896858 329520315 526544988 111542854 934841168 417545470 873453215 599315771 238336996 83425738 801125339 36694563 510818919 381689987 920954891 216249468 588477832 525453880 324632803 230057065 635766583 104983617 431099914 278191665 819250643 241749249 49638628 935958117 365175902 863628950 441963883 983745441 879564928 531685813 726383579 398373210 568186445 232333770 467267639 77680135 695229834 862622822 968119963 945478616 790036050 389383789 2246500 851697339 776966060 495626169 707343921 442203426 273555701 706001886 140847577 360783984 94313931 899094896 660203249 702040215 911717988 514052341 194522167 686320290 670390317 697592437 522215962 779469061 576548989 157490658 631301586 750945217 415788108 162556415 390463373 889360532 169459682 533437396 203020752 704770656 391729169 852285107 77562674 737437827 350834919 50360443 175253812 303845363 757290611 69418759 98194052 58082013 666371945 930020601 615440994 271682492 454747328 45593773 885638627 999484944 829321440 285631438 738822346 747385106 461511580 705880455 549585896 27870324 335801942 588569301 741585351 711801572 860057565 220400223 913000283 12915361 54692872 691443072 323767629 459977052 237979872 550659836 427004590 612387648 635323361 889593045 230690713 144571090 263749583 961604183 988228915 532561284 859119968 376498368 85646597 55761291 609351150 414993777 948260548 910360074 92948652 52332130 847271837 770127501 273032130 818623498 460280482 287232327 392155608 619194963 580327623 275094801 582993377 140766780 906424461 532299213 611274521 874642737 859264917 211254087 935947023 416890557 787896150 770096326 485136780 616272194 644568372 249229739 980549913 976171585 484207772 605415935 684361635 986919723 173999027 564617876 180688846 576884253 236488658 894721163 247434051 903610393 865204763 764254210 183174695 830979654 331445446 21635576 991345577 410209445 319932656 535727529 959134678 44815067 204862987 812093593 291903424 808467367 937885981 837251529 906313625 645120151 200864818 126028982 704123775 84357817 766620265 939352193 315010868 723261497 250506656 385112349 118286948 709570372 717374036 946025340 33184305 797836224 5801053 181053516 607625913 615870574 14050932 689086359 256029837 482555095 285534687 439191088 858691706 113328141 791297579 385561350 347635012 51100269 171023596 965993248 912782992 618760307 369197507 523331174 693972115 232082448 920421922 259035916 520172593 279733540 61947827 856764668 911870952 901175732 635394690 847717484 250362075 173992455 59126833 518771057 643397751 760102996 512683387 903733124 816561906 578614310 8242496 177614269 269446841 145659108 132575124 293575213 397075224 856246578 45002395 85749513 148030370 65642880 910084891 308535708 661163780 568291195 163895092 943918128 976689137 775508028 268467297 574606753 273563210 608715599 791912940 52120669 953338414 692782866 800668215 300596682 389227333 164278849 99794355 952632101 282527053 762607414 136707729 680760872 132622930 696856023 33645606 511996442 25779171 9879613 405672869 796075550 95223747 690744214 176330497 485060439 216707236 225652527 146023546 257022354 211351624 271443555 407549488 609411525 167138123 178783710 773770988 169792815 826005660 783562089 731194287 524747604 742493565 2542933 60346812 390166638 588280914 753663396 621929443 944729158 740495232 941944984 25993500 134844448 560047820 247957203 475578618 993346100 953781851 276986207 209734317 328603059 437892414 286114568 317767797 578370045 495890406 250055349 501313 708026225 252421201 372144712 435782475 113353799 307651008 884278593 519792804 56816843 333676749 118582420 56277363 252587600 114042473 24846559 339328698 476567041 627990726 652084115 503879047 413645116 557931466 450067247 876612537 43679840 792013091 439719159 621695871 916924263 808051515 17606882 907458589 764322058 750488272 728376421 705022577 486428147 592656211 251904633 230455062 538100205 431146432 535656651 592479012 296644476 946779296 880212208 259092142 514528805 60710393 19415008 824922052 376037191 645597436 803948888 23471488 655562 753948371 749403914 341798016 689708294 847166890 960300583 55216151 620283264 744244092 822778833 236426116 928653320 339195049 318223656 873086258 807836874 816528184 475444175 869214794 18183445 72758477 958087568 615307567 696685015 503974753 238591760 58228730 786028508 894183896 168823225 999795534 124802464 316100839 394795374 729963782 247364918 213328619 438637194 557899767 615897001 18762630 969510733 474014641 978582357 150222717 3962412 222966070 636098640 772646216 766555567 430252930 404807988 331754370 664822290 693222148 146522255 212911337 241860043 613515175 759429619 337119874 109819367 74185377 858060863 636268167 233080914 675448407 203804376 131140990 420166958 369284274 471247755 886536643 157672150 982769826 206852936 567379473 112067050 469838082 856773484 154810776 914940461 417155044 191792527 663891425 105095689 8060031 366877914 359485597 361485239 612561276 603623267 422642831 977264692 86733511 659415978 260433163 928330271 465096919 605311121 372384283 613783594 901662637 993617484 571118496 14087786 688673016 707611821 353601359 703238562 553971845 507070146 888802576 442547579 845970692 850787473 8635899 16611226 839516705 30737813 606356091 31106153 507041327 629662921 422675960 387253935 27430651 731109981 154591572 452350239 429299264 738483797 868360035 69605585 821980889 111248674 362150079 184595385 971112142 723335819 410000131 828340139 347149593 186010959 973798554 505164985 465239351 47768262 520748083 630748242 907376735 899347 219555747 857204962 162937465 90872361 522288075 337187170 521902012 123545926 528641321 112008358 407490102 651286388 923836544 256549988 938030207 265672050 269062722 327078227 480732297 945902168 381395859 71604437 769453138 881551110 461131059 162396581 676652773 722073339 894812971 582464553 203206023 297397852 66653752 194302027 427591146 130015356 693003469 1415523 959586817 545622025 240024683 218177301 927916707 606746151 780202505 962365796 673436150 295909990 414850201 273525242 956348628 829258173 357701666 315243383 798296364 223938053 360351170 928849671 189920571 784742799 360511897 918702669 802985338 55973890 86815571 962321191 552419942 399271755 903109542 713710894 234279075 262177276 260891794 155019428 483072890 895755171 416868032 241402330 57744683 333703935 329906216 409200482 301620188 685352199 941619114 135434233 876854801 659299942 384128607 849022816 561970032 688284755 780008362 990753424 195181581 567630047 936152636 800153799 320073401 569649265 313493730 909797661 75633728 854481085 799256151 695804520 277901785 470693858 274503347 80795419 965920493 693474939 266442860 470254635 284729552 532779876 865592299 769248188 140823822 388407667 582190116 516533801 505584183 336285199 778843622 919658843 229228742 634877812 620890020 873186812 430274513 645264664 196185583 439910839 404050821 289383697 284447159 332297485 142943679 416657693 538393627 173097287 580538862 880647148 252891487 970415706 127902079 250561842 930879534 832863528 279205793 711098352 705005251 129762614 217237630 22525452 144310204 620197272 720262477 253455409 543514484 891721318 241288962 247451539 805812519 581942508 71622361 810240686 397789111 950295268 914607205 16116948 666366855 770075990 947460203 776184661 379283393 15136578 710529603 267515097 129511233 717616825 858159976 289390116 907343926 789824944 802257355 576182361 103640881 397062417 318287702 86746293 361271624 679322145 312597070 711414353 155473632 220761513 944387839 108462461 233062543 802276817 425771624 738176451 168150333 686281494 439417313 97534724 678306923 621189763 516173729 783574064 652139326 995812239 827150766 158008662 896206427 759670924 863752818 155823921 85010098 92235534 531179299 332125843 63053922 898411012 588287625 209717194 636632061 83815123 168264717 658873574 745798003 932786310 463073922 800932283 7985512 250637477 315264053 630185272 469856131 218040357 250221019 595810478 49454944 151130215 430358327 600888979 726688361 866320383 215374284 292377679 603954264 710286767 99369677 514103424 118489567 903221611 758980393 536427455 984436803 834407667 676493814 406029512 911500459 900132841 849130673 22713403 337575785 783607090 92125510 870488597 29332633 790900101 535290308 420605920 243501924 567536908 101771256 41953994 725126251 201662767 786974432 754030430 395572580 681466976 744371530 488405199 381257536 645316883 637532414 875232762 496848127 351683968 490843450 283090578 506615847 645236727 310214728 832427394 301786891 141367113 239125783 801774885 346166233 286669706 376804779 111846371 277629990 199939348 80012895 807877331 595244243 310609781 127524914 557379305 377572482 913141225 130981914 550414864 441195354 908361615 332056697 639593007 953529264 830413596 763589809 405605374 543282833 238295017 385328683 610301360 931057609 144136640 957904284 57807769 311413932 918848767 505642173 346227067 608404338 903504694 976311595 617792508 747516803 227870663 272514852 671725205 482314705 179712684 536266435 343065855 915686241 932389520 21708032 940931709 950709570 311075099 947168598 285396164 435842434 193972440 210249343 459128839 423675813 345761786 378135802 248371117 792689726 185953181 160013622 774122959 946495177 559670052 735114475 540440583 974794215 825894241 319271263 331530382 752990996 633222970 192523660 892279256 724227719 269516473 256829549 216455743 519299401 143375608 885184951 226299161 358312975 418867870 566182209 678094404 667188317 292374734 769692209 23520872 265681153 106013743 218113461 40077727 410134465 696532351 564942809 380691809 794651990 768450893 555762633 789556769 535946752 801681113 318384825 813296353 22477064 321205899 468758880 986957687 688918295 758916268 298901412 251762363 170711813 539072800 182097929 391662887 253795184 696703308 752931527 347184575 451383682 578063823 74845638 664709827 832348990 114431741 161605523 791140991 301677067 450383852 54313821 323246856 445377565 570763546 142282050 904379022 963242545 296978380 549331751 165138589 454647991 515940897 340380735 826752643 566485178 68488017 337319715 656500401 970889240 617550802 688479184 110519777 68143799 722804539 972035994 27974182 896740623 225480297 963386636 929570059 677186186 636903971 357377679 87880682 446250992 627863056 977423769 421664362 787254966 8373308 715061700 117868932 806803094 455785090 166937648 968758830 116678611 96258329 27276533 692551364 94225400 100170303 822498846 107131323 745173836 462743551 716292454 450825046 827395919 603612127 697668231 101025829 293402693 581768198 778677299 157092075 245247374 9350400 913333964 699177637 409037927 614955046 974094514 907467607 645577870 116303722 401503016 820339521 21346171 697510180 740494285 349929957 372783507 808534661 763211466 122883616 9546157 170948353 603577569 680305046 488242545 230477550 783917979 215045133 133385613 296731266 536923192 952271057 122257815 643593777 662494557 803965109 175789813 582839421 269611468 839625947 249348554 808790688 784852003 64108633 553291236 31452092 42796659 131464457 676738437 349566794 254839808 633538740 508790361 693829552 899851034 464423051 419789363 93543094 729706565 300902407 640097605 340603646 514980766 687710043 300783001 413722574 88238305 37849363 98026715 883527427 109429957 128667328 138513860 154888469 874452136 438859693 302370275 214891593 642433563 813757655 957944183 679585365 896344427 155421664 598680541 158396232 216106840 248224986 888043122 103996878 809811511 210473687 511542103 760707364 372335247 430855515 694492618 270732828 621543747 891577809 742471589 65266282 588308780 835984542 334546490 113322132 254254457 671150774 586984728 106623278 67452323 23310550 446824608 18186217 358706080 845403567 415403435 569659391 131120945 588973224 458533112 146353682 864078573 977999810 171848055 949540009 312304525 291089739 568624642 404077667 640226882 601006000 96932914 921045842 98976567 118949043 283514595 823698413 201136082 635090054 396574002 793890678 114252191 591603611 49617308 686682506 34792590 271172445 334511095 571434565 406558087 838414288 11011101 478067648 193492294 98004331 13493309 9646295 417734989 962525061 6165562 501796396 589973387 277742469 328171866 497036541 455805810 423431379 730349164 288022935 41623823 203504826 956529905 207469849 888487605 445089758 159115840 968890171 900435220 968487883 953797356 713241652 899822839 149991808 215764974 37160495 883732314 336085131 457399221 597546881 405099253 266990168 636220721 786851801 148638498 864348247 458953386 447508094 932063612 277911124 483204055 820552329 478761298 260564791 907805617 202458702 696938489 346339675 761279924 66934959 373403027 967609959 772113805 880361337 373195616 542816409 503491364 573225697 631401842 241335889 21765820 874260769 977864611 624119392 489139218 209360343 931334280 173439323 624096692 17330307 652556123 372171930 724109021 2626877 192882628 992302136 90483295 452599136 40257558 873505792 209839736 264855805 472172210 38693975 568854874 660222307 974946036 723622697 76096435 170408973 267486379 607162782 47843982 522181756 334701589 528415874 983029478 642000779 750879935 5334146 793084521 434511848 734174540 843071453 811941843 304375723 357703544 474378899 236703360 607527295 67501856 515482434 340403368 176029470 54973287 575669134 151183588 493368160 805315085 162296482 930370757 27618771 197919598 350946007 701784638 201693960 436068732 493361436 776409218 261997752 643769003 581025415 42862600 17957069 627258429 699597481 534931974 380709441 727936527 148210875 805688869 861008774 653045643 441488556 796184592 211873657 274930797 517842387 27665980 799176914 628580448 37018470 428920764 594807476 945689955 667957162 356344173 157223737 606412769 149313672 439253917 896577269 178667449 708124601 307679774 321092157 46798497 550715653 154643262 90869364 909696979 386119077 233152441 354650422 379526976 965872514 707474654 595384296 829886219 976510763 144225490 780740932 504040334 581812598 950562573 746523869 901348986 255025704 661899325 807779039 620174959 776936989 641551411 196946085 915374208 595964775 197060550 371670028 488514221 193439517 388414331 910825575 920628882 536420937 522356710 621147942 249416154 111586372 360175964 208838231 683970148 828079364 588151919 126523098 429999739 129915297 634146750 36560166 917542001 604040945 275956802 64114366 584743282 849063608 600576336 76335792 13369045 184612591 785459042 864816252 456213402 417027999 286600053 87657800 258135730 525215783 227227751 531686206 298253023 398519696 95009058 556361308 686930917 181537411 479050441 564380524 484972528 121536987 672556766 993490823 930053518 373181863 34139275 964441913 236206024 716644516 941390923 861791250 869988148 427538507 810376272 56254456 21706734 208568668 200557992 92341293 486833289 565198219 121831369 822567144 700654 2946352 901867833 680039780 386271360 598378105 906908534 301832549 104929220 472578196 707883217 149373989 127448453 973247662 875746678 800228186 609827560 145768443 748374569 50153258 207424002 167435059 151588729 835258208 391240825 841504928 263324596 107149149 666259797 787656742 729852815 485447166 986048255 970615166 450710987 190098660 921699599 822305424 256522919 80450409 614477669 372066988 53797960 742724702 513687850 152054078 722235994 160274936 378001877 97271616 14673699 944075185 73378727 492721277 420452755 183129251 505077352 219458613 892034368 652869673 236775278 583270085 534267267 467156716 710770745 69392169 595347321 521392098 166589714 636126304 221382385 772624454 789222611 549589766 80864179 398789586 879420776 240450764 150183258 334275804 885561451 582603457 570231671 347961202 527758072 286931515 692609867 914653525 998896790 488424299 522638794 69908079 41144035 770029776 545061986 528304447 295364976 936470185 866634025 677687831 945155524 358685250 120577871 150264510 38203491 219791161 201659809 779845862 823193439 328948524 582873927 987456065 203113881 461166918 188766167 764407314 282987145 999501545 780298851 336928938 74833713 217189930 525697571 3183602 164431897 708560071 665263372 468819045 823282873 552436065 602786985 820368237 587530130 959624079 525637591 817137252 409169707 40392986 138049262 511638333 146348929 301810469 404648238 886433801 876344060 152051863 952296761 163385335 246406886 772432046 100549797 105864786 422210245 926897531 3980201 201719164 433024242 399074218 546183439 897830047 407677635 481237358 533834465 40116191 935590617 570943571 92222276 519573677 536496592 257607290 193718005 914420238 410014855 178750711 740981270 248296305 71049304 505921822 630454919 570126428 675342449 169218777 539869171 486797040 317625016 408521899 263080156 247199951 576413089 107105878 864264091 973000666 928822211 300454 77612680 97354137 890927451 684027458 695445790 581597373 566220147 787682264 799371847 838849085 571434212 626815137 640661054 265611413 298853395 824398222 155394752 476172388 123516380 808111423 487389946 908370484 195139791 964643231 228951122 640523840 784074341 178950819 421475211 793658546 285851098 180764016 5486975 839498320 829195182 65038459 506121646 732845417 927574967 380052743 493210197 669161459 197637103 648627646 7051326 468706360 95250165 482929071 991635843 76169046 621109462 292483088 541788984 29189185 668484816 84642979 975269058 352990452 90687085 794008599 772774881 710334579 940038681 392810941 736045313 713530623 451171932 454946210 9417493 721707301 308626877 460775131 230573051 123216076 548386547 712595480 741198472 719667046 965809248 487668788 815355964 805759856 203740494 478011539 680498472 581888858 67068436 388760891 442160745 972091080 215899565 268855981 653700833 216532410 5405185 18901765 989639826 874853652 222957412 525074575 929360337 411563534 814402391 515219355 681124086 32614155 327682738 41654948 159475727 35738616 715217053 727005069 119651781 346613594 795156462 127942754 648613459 103541765 410008075 964600435 792416823 261216607 755866221 175383859 21158593 267723597 286630403 320583063 865379093 935745246 101212493 699616413 809626335 223148833 170420472 819142580 847981375 220613766 278899692 285340677 250420769 538743214 400551361 698693562 253610120 190998856 223579917 660214689 142938425 814486186 48253490 697436369 877785007 283664600 115688866 371354158 305298477 159099527 497213912 983896950 990012151 406383841 953147763 649766437 167182668 335644742 638013248 583964847 954897118 178896733 104367112 802065491 708383717 732422767 432644252 480557515 177744008 206070584 647549463 562655682 661713477 459740572 17262239 651142553 204027402 814672809 645302976 146984204 665895422 833800567 594438466 793277194 972828225 241175942 611993002 916748968 257531554 223241830 620692012 769754855 784749845 909629603 645097669 117118087 260852782 452903557 528592882 176804570 1692999 788211726 804325264 947838671 841167321 603405137 618530601 338656527 392583095 376867119 301570616 941083246 948340000 537874745 118583065 966121935 697355411 616107269 221231540 547517924 787863156 757856365 246541494 611029846 317795209 212369365 875815302 904595056 789192030 210569980 833449730 22264991 297082904 566024387 6969099 685904961 242729065 643597141 792800882 967211736 515914582 613537995 601336354 995267532 282286765 672915651 794057930 829567677 634642802 695897055 548197395 761391568 196707347 495493699 901223248 71004475 238539078 708510797 710146866 661076383 992895689 64467276 172607734 476284881 575185162 206503594 346327607 284833565 171536995 680550091 375678399 464474086 267978883 191501118 240400557 545255045 192243707 996540254 857934002 519396519 753409009 581886930 877912470 889470658 39844561 186891713 75072821 95706419 196429641 664440568 406841488 273278846 544613650 704271230 488524874 418849925 728881977 285470900 290734391 81055904 635773527 291372288 473769371 741783187 233511713 171968697 500641753 304814601 169113856 248428253 534472512 332826594 66240647 236934857 542287135 768840459 319687208 624910242 637348992 871903116 118741413 300057498 645515907 842408526 864769129 653678067 39117598 700451166 477344543 453059906 590649431 376569745 744170574 161138677 679599281 574878216 477506241 649739189 560684235 983699420 875938356 321100337 227013715 641153655 218756822 965778356 104362748 572916139 890665916 195543842 117985612 170937848 703198550 660061255 893910586 633194783 645155872 837761011 934801787 423394545 947651683 436179601 832446958 542816205 39672768 433850764 700222934 220431290 203513578 514017209 837775962 67210539 168734709 457938397 891107115 705495602 952833995 815646177 266007654 291550239 664341144 478916138 387478530 957625858 799785295 258015199 85639354 351097336 562999307 691617267 791919757 26378017 893674956 130510806 464108296 582458687 675171616 584914806 72021617 121462487 12598131 953464000 557947798 602582023 768201343 744633969 114718261 560643100 519837816 87619502 788367908 638045270 953429396 894128584 92143183 926692250 722728595 110229092 741397461 693397896 371653240 127416570 512287320 632725318 159293290 508596420 383598943 267342265 61227801 961392169 43638221 548071766 393458093 927886474 758920877 868876145 200934236 208649582 951720417 720166695 160875439 696173862 649708902 848783916 558661195 972859449 912647371 646626470 519545583 129004283 513182294 10556047 929735370 974102404 241157371 611586774 438045699 545439781 974774406 804166985 649721170 444668872 909301044 698618385 421126571 109609928 2178364 803595365 811457228 589463914 177331753 706519336 866790372 709195232 566773110 302119328 904908910 836872491 86283041 249002055 786337516 439651503 868582488 733744120 163862019 424716628 393388459 312011040 488201842 602778390 128745019 964261152 988522011 502031645 472112089 997821250 215071789 165318711 280786234 188157455 882299243 408425929 880589259 622419797 262491548 480634159 819671392 244193152 536218494 978345809 881988606 551933728 997401121 432038930 334972014 527593180 6797196 329861661 562889799 357138631 932852987 423305871 150017232 771216827 55615242 406135866 413564967 269823735 192599595 364588190 651734207 610979012 734012382 180400869 599788144 182286799 586132627 651638416 193080884 913351712 867073573 899048690 739504774 376186845 245286358 990689154 175961279 122104332 222304824 887880614 885207710 280838277 4228803 520166313 1948458 854593923 496102937 151783495 656539054 639837783 714325977 43797536 25397943 184282441 346060320 580296622 227697831 373057534 723376039 674404314 959479922 761212312 940928547 350604638 859837265 62640550 898151711 892716137 908601810 947451497 216715870 48450354 704902416 538799125 583909258 999964105 377925503 736537265 394287479 188743847 838394943 255706912 393875383 635374482 280222058 441476189 645673253 935092257 140135983 512915103 469506533 473474772 555096354 437792725 379581658 952185107 128086898 138581286 944224920 204407358 423362678 130076310 204958433 879416228 706642433 647756916 294670355 968250275 808366367 158318896 522609089 508365907 601329372 842505417 147415650 699303640 588752702 940520421 355705621 258173208 825659297 49256641 153283976 900088775 372872473 749366603 54399958 690840076 140769124 466133185 518919211 340743061 122073020 268850127 990910005 849646398 904638126 1715468 890451378 546785737 57213008 599612271 126234814 339117859 522367180 657319860 620300467 121397758 736055948 811368381 786093321 116586617 141063559 521884338 285007184 497792520 584616357 364314534 666155360 967903348 975108467 782984317 792725422 410758475 457856482 809883096 7052924 596458942 758761906 950920155 664185338 484080471 368317707 578860812 801446488 918321382 880042008 955929376 415328946 629157364 752846568 260562222 875322213 819308186 994569634 775272878 180299968 559370633 559617622 756489618 433985572 470670257 866547723 248783916 574734353 646453760 21910461 99572599 670506571 284407153 393316918 773533606 921255167 840728939 249918733 863136310 783134220 496335130 625311145 789568227 95727505 361784882 447096732 479939740 849878524 822830874 171342373 265655872 656739558 953713092 410641801 179491692 507519588 601151952 814993517 714374563 552379688 480377142 181381508 267054917 720848958 72525425 642761451 830340717 589004608 975820384 600340098 104515557 328400057 969669960 512749778 367533481 503498659 446149302 325481489 763327231 126789855 966691371 917575285 193391868 412459011 877228696 94840491 505091596 859908554 559683293 542070741 788071141 10560559 590683683 924990551 128423707 483078924 977547604 857531809 621967318 568876154 338583755 724643728 970508879 545876885 513900753 892878250 64354385 109109273 681298125 516790650 225507608 900215859 515624524 482935701 877057689 433083331 928841632 839389248 767216445 396430502 102702213 327719084 223726600 333974099 972454214 950449687 85450343 131113217 259540775 166105950 497808578 579717419 37610104 465167601 233791824 775058806 781870857 879395526 505649110 286102318 738567678 269647438 380214879 824621640 410859872 159800723 574109474 623125548 965920205 858754266 991195972 853549901 745134094 831269273 956688311 366165157 965385241 545186654 982284309 597564256 563585298 141465367 391432318 815700402 963001957 198317103 24975116 125793782 226491257 939722188 675126527 256807678 782133938 259868753 372401108 464200718 414026775 272067303 171508265 154701287 253311637 477941726 420778767 914776633 849511179 491909012 302945833 392191297 704351511 765622335 929980087 78536702 948244505 912363052 173984278 422550012 167261028 39746784 683023901 485974251 869739246 504670397 758077669 465794850 210085586 760886513 681308565 154203808 684097747 295482773 808356805 969678209 54387476 361748728 854560076 577193787 695721199 566026982 468731767 119961781 411154307 770720758 13861955 65672112 808348765 204272794 908586428 257070344 946654556 920913452 717799786 97777102 445132792 970464901 944442477 414801781 964270054 668568335 380188687 314601263 345055551 923940695 68984885 646169218 174293804 437577781 808066682 668896411 80400075 996349587 434970676 5113346 452071141 455141307 239640996 430343869 808691731 175135070 287622236 968641999 693203984 640727090 464548586 231025505 365148220 128688608 973647020 733770666 987108292 429642996 709227837 804866974 916614516 723252820 711108577 72823288 849725697 57511131 853264814 679086949 276522147 753476442 831641157 881101456 537601485 543747769 196324447 509927930 126829949 904130559 801763783 789565770 453413677 958696739 306230611 591453870 39389808 390373973 713264972 154213640 227000132 116524846 720807628 652770283 346856566 532535553 305373818 188602921 643444598 157853491 938035358 741129298 9461953 167646693 663613502 620704842 886729878 196780924 407132275 191921021 390802172 13559207 435364941 30130112 894160157 752298750 821026718 627988873 603144422 230114040 352470771 31382166 546132615 366458377 800427582 828304030 35371018 868735040 938698521 243668137 340002741 925870364 265258404 614221238 351245830 531628923 5949271 591207447 871631051 511744273 546783419 926322697 74087560 249210540 677163748 958718376 831465058 882289077 993731329 553319438 293261553 94490796 393272189 433939212 320692757 424919778 525864869 577358094 353188440 635351122 281270787 623930131 245904900 124143918 826611093 152649162 163771125 921029048 76068006 282469322 120881281 375865547 458705230 961048879 649615986 657985365 697525641 908042763 362380043 857416761 558849321 496210716 343116070 398736893 429912950 923909089 932256501 536309580 111441548 488780221 491303026 460604241 61167629 983212096 189963429 230222679 383197559 745719295 688481303 252855934 149762137 780994362 961836603 546219425 878518094 232510191 441344314 976167088 728854838 673003348 11237085 866606618 920369750 758204065 899967843 578216737 653741909 119038901 351086289 630255024 645235690 240119247 206463360 676463535 715873559 13879841 453883844 725198475 121356088 603093728 186275059 599544266 77812349 470434865 299303942 367043315 55606029 648939571 39019633 137417167 961185254 623610850 928522661 256597233 235577903 967808720 367698074 563762048 954949899 2373098 653654043 478613722 987166705 460004143 115079736 98496718 433100005 463910797 958980104 717084024 867543766 332592013 847984324 74403753 985119538 436054911 700697510 754972152 366304892 785687530 677299194 591612021 968849113 826938619 818332521 169449609 726684200 722863074 814216201 987551856 732000669 171581190 734432561 221274144 582150286 888944434 481453976 787352673 516233695 618721540 411230595 780448762 324776104 560740375 973422798 513863744 992625214 116287484 214503166 492289880 17265222 517080394 220845741 210545441 84428303 574863932 383116662 392571526 205873907 773909838 342789749 191151843 631044852 493498052 56116574 574090557 221228564 728128501 871599171 800289620 584361069 299143227 216019868 569329137 455003315 401232283 642783493 558612013 36386838 796356006 8204696 799077871 600065311 884749942 983372859 865214593 849157497 192467738 3903460 751816863 525146205 151212820 653685672 56471362 503664013 264145924 243647015 581753147 578544999 390744776 668474103 519400763 247748536 392481397 450009421 414037363 698575566 536337583 99569148 425154899 613917963 174701006 995684906 60042006 153681407 73266330 271885372 973511043 201144599 490469846 753627726 111789844 270247641 839083754 217621211 791099472 378102879 246650232 130637093 208779011 230534438 983847156 101466180 915509757 20243778 632406390 703601573 604087811 664402047 395542914 810426089 195962806 110937821 534886547 302924872 518901559 615693926 50093163 399291266 437103570 179537235 200834893 17812158 138400720 362598006 945550544 260141645 884314607 363144704 752542422 163471754 253768651 51309271 381082330 543462623 720986958 926293461 563773881 706325994 490414022 648337271 841961117 630447818 410526061 739372177 151098781 777605064 190462863 743256737 371947045 748506087 839890432 109436102 376964163 682701525 260287964 634457004 935952331 695991237 535012413 977684054 684404790 445323342 924641795 760312474 954065088 188372155 135853589 217821799 301947868 975334080 328301874 397547826 336264475 21000780 472865095 700560906 398461245 291248003 66724191 166563534 84959022 489536932 781599098 679282655 947904591 51957554 955538834 926907478 57768749 561218875 833206188 753187621 405732255 802255181 419632478 279651925 423239253 556542678 497461849 352364866 452604914 353795430 618936712 911800257 368007432 937645476 387416522 870849569 255885054 763385399 741565123 632689361 93053359 825183001 602944063 162950773 233018508 24703388 28815659 781199413 480276693 435930160 604474543 561679909 621898665 968311757 684727246 382162106 620972898 18659712 222198743 970323280 633123636 553848004 322329289 28258606 904871998 29852410 109052515 439494250 244078380 186079676 508248599 720753228 931784322 264518409 650760640 252082084 681190351 319362765 403206158 224118930 997681558 892782311 910579208 283305245 418067260 296654374 58783485 959209312 963495764 359924219 711504426 420029429 884330856 423713263 173006127 202744314 360127958 707300943 883914079 3436189 640185148 157134827 841997287 247609682 358037149 396597463 374108169 162907248 892316341 901711503 147603326 683591513 472740476 591864756 310367652 487904846 879182585 192834502 114266931 388642018 663592581 232951414 551173726 350154807 530268905 645443249 182565492 906052068 49614338 577278559 336235167 317306932 827229857 31395417 86665246 172805990 201234079 953701403 505831572 402201431 309420685 927955607 887770173 653326701 922063049 146372573 837615413 127211020 356564672 680542873 218926773 908296557 729822751 480339908 494634558 527965853 976600863 869345973 731981500 618523213 442143921 69172289 166018289 838147244 708126178 584679891 689624044 724257997 638688861 604784582 626884583 286259161 972830675 703776920 466107769 756779012 967544109 143074893 637266282 218489784 130252214 1131969 503031557 402834260 736469375 735934003 354704636 398832072 362210728 183940426 888119765 223935220 719584169 412669860 771248165 462803825 532539627 91672418 627396148 908322712 43893494 880490878 825052789 981049420 63629943 445888065 626093892 749700476 185990862 121783078 657710935 522802162 85671312 141131886 561972386 840166226 505073606 398788905 636781941 967964712 189710583 55167874 350929051 795019904 64022295 968471160 128099246 50329151 504581322 620988444 462148 61773815 347930509 162745896 729856019 942161450 398603556 573713637 55704862 682312077 516401661 973688889 953842674 518424980 848148004 9768878 993752201 821688942 249911257 200382695 556444272 129980260 662245683 213523124 201037877 950946453 516273102 68658788 226142578 921799764 215879792 145392680 715160758 4910799 449498025 448975666 878646355 44171504 359778118 871781594 376431664 517579693 895729677 65950027 154900784 280637818 836752721 207827827 666756195 441465300 668011576 934856078 194924897 188333963 486384142 691079429 57975688 83516005 221663375 746301046 301281576 30619176 799208526 183882295 697563416 243758973 760399167 534527809 121028865 307261954 860698603 722580890 752151173 810666236 53635874 178883097 563230742 615070960 775182071 44106450 623226390 344281518 262726385 796224904 349909193 934326704 788311710 326734454 338022676 878977730 158676404 576713692 309234721 653336736 116949369 476435419 560610344 305902188 672507104 165625496 121167890 934719091 180886980 943016707 886045434 451947918 745870210 10614385 459791418 537846811 182672202 650444175 861755720 134961216 545621959 705805738 165322714 341632634 240869994 918662436 613660857 994015129 541907277 792477526 6604959 196939138 891755937 538786384 978926205 612865535 328536745 241763928 208463657 498545572 906082003 748560127 949613731 180991470 60593840 625498979 948397883 741671368 540928020 271118128 541932715 513529221 970169871 824991451 499687956 880399914 250294921 696224510 444615640 608762178 296677889 230180134 246086634 133389751 518462756 125291181 233150227 482031987 851110765 435636196 704612008 185627449 147152300 916053427 101086194 94270738 560015574 913796823 85838949 418191212 33624604 85269345 29628009 514674858 302742564 304105849 22026794 105071386 273739341 495441447 709054116 917448420 342676395 37823676 412971491 996976428 910267895 533751953 145704489 251702923 234769136 32901957 473182026 548813346 927253271 650787727 625128901 482053290 354590465 207291150 673031156 377721228 189898358 818959568 565231923 306741766 995944195 321505580 894212450 296918599 246633310 417505781 582857823 916282978 24232796 708479489 387911056 823739801 370799946 147668865 315529430 312912346 225902705 220735535 740217900 611483968 534890336 56767644 133940905 92145671 298480458 508826869 910303711 297970818 560678725 980720641 653695585 657353156 400382381 758129872 38902921 269757651 934438909 607132068 52399189 973493186 987579490 858213623 323448014 838142145 247185594 178192643 509695708 545879470 943299389 757798987 365656608 323724903 252234384 76835617 625014513 18701888 571847686 661923738 156982579 541296398 444511721 520188397 736044928 429307829 675475863 271262537 520934123 31873268 283220256 457525572 75586493 275668208 186314031 551660017 803676819 868453401 620117763 161960767 328075481 247241168 385290714 39131121 10781612 586541199 345725950 570410017 936753258 472343140 636001619 907173936 145161087 146925509 636652862 340633287 918014213 822403066 120075771 987476470 797651319 382600121 353603537 676786695 352894073 680067620 782385856 393618208 127034848 421867827 568268324 521620869 964755461 526263025 125829452 275522406 343558180 650906795 378081745 391068004 643689134 81255413 985463788 119221222 931623402 435558862 829893445 558096417 595831432 515152589 8780191 618270120 653599951 281494372 690408790 630745435 872519547 818557170 736385429 652732056 230538061 724533851 194587743 766506707 939993781 964045996 451149460 670364562 611401364 141154466 282657473 786593021 552129137 869149274 594122274 60879148 717170177 565607165 766777234 370572314 933357470 973793605 619360805 809713048 559351159 608336512 465805645 165176201 174044575 801838242 23751457 711868354 24702067 469725829 877427056 330734870 130124950 169078310 14838124 606939159 835709974 448897841 854161231 665273451 900913488 684227176 833145374 618827135 320212767 982900153 722499975 754925702 994298791 259938085 637979765 815551942 265764991 456455554 428354648 208964710 674068367 345940686 771378671 919912505 610688303 513053178 921800581 241595150 604031243 492717518 690052636 635092974 171850689 120041125 70793961 796621786 868450122 470350323 256209230 315407249 187633918 629161685 337436290 536667912 979014095 450281777 454380452 282112004 915050727 496812895 832672007 513172951 921809231 877421192 76408651 933061228 528662645 910080631 332342951 127587928 903750976 51440408 456136495 333870929 370924224 184927653 358314979 308760127 82722083 843920188 641542552 232425016 385972047 104339212 911671672 896117233 862232857 517964598 682189147 469997019 97533219 796946341 135195213 646918947 113031767 916291465 322361645 549820768 520908048 138088881 641177002 924357258 258207467 897403373 704737567 778728948 435935454 294620677 506580363 78882312 382207525 792488778 45426431 747126435 71344882 778994242 756726805 467084070 207231887 475666856 85791662 800426253 624617286 206073777 35102204 105526284 816781257 636511422 553699338 813620768 267010041 900276627 946785361 137084942 726003783 336710732 351498070 831628802 209155895 389063137 303055551 952906084 383730101 442213218 771326850 945549179 469010251 601381961 865006169 905619434 4252055 579831142 404506918 263099880 263275350 499730633 981239666 138382538 319121375 954747447 235580569 82044576 724054513 680858518 664545844 947635310 103915537 283744632 188081829 191261024 16546725 543209072 564220567 708992685 961625446 494235464 512945504 487456033 728887750 769292292 838258460 768572984 903268842 799796920 703943732 921208429 583499919 593263081 295693730 949363451 135546147 454462762 147495417 27581339 548494792 694434946 177702313 465994079 156599727 183456996 866133014 961372118 120963860 606312806 30749328 873832276 766909646 191148866 314957792 732745622 351352935 952360730 252167944 516420044 308130856 958557274 869789102 734650173 72154660 165604776 379374894 764425585 164147212 502898281 942608349 890944136 438737466 192390573 201813093 736557955 591292040 922385471 638650681 420775543 914872437 852471633 390840495 455200904 949908440 81483514 997182369 800675449 420037369 401020367 860198682 299129537 381590577 173209238 464420562 268178270 379089159 22351031 472871823 147021918 237112950 892614286 948327942 89778606 683560041 413011516 120067458 398273797 309288325 559399972 244731597 694436886 697261257 116973601 371096474 214924468 677590965 292198318 101898576 607448422 226916659 826174738 510468592 895233296 346498369 718148260 19782419 243297182 945491982 18879686 823404167 307062786 140558718 611142160 614302209 728916737 887688452 475557070 613670200 848192987 129580773 966916072 281590751 278658042 432359396 871302946 438601034 795162682 938329270 82290284 875927082 708442880 668063387 188873424 168883862 653714709 873676108 296815589 994165585 567513567 112781539 514237898 50068920 254841381 156017999 851207924 922704030 23054583 782164394 569787561 937059318 397049952 955822361 130527815 550515810 426592590 3580479 680993915 444987751 335269091 184657635 886658878 702861745 207270545 967925551 744024555 181353962 293337047 384899520 472046401 157728106 817972229 982234992 618715683 742390769 984018103 258354630 895678101 193961953 621325187 205054016 130610449 35600060 977324410 389622389 676479409 556380855 966264896 93435394 344683840 842098606 563891163 942706703 115932170 113958988 868846627 614736455 281849952 949995634 37191898 93479838 952000563 514014047 966730892 810955710 249899133 976334239 852768381 950583061 246860346 884963855 908200465 17533855 372390183 267757708 403254338 946332400 854120552 471207816 314872905 1065727 486737188 993232827 138341846 479609664 651287382 343572993 612848621 249006345 483419563 960233611 232013341 548256151 327841256 467732583 596587524 213626442 124720675 885368502 687650648 24660153 624901518 12588743 750084006 570357664 512584689 999950695 93457995 75818339 34416363 522134517 198054767 675832548 844626010 760962075 607445624 949458619 380431308 749670151 630854518 695476264 673371835 840280444 384961574 193649091 270727886 123252969 780072145 691806284 702527861 604071587 520806778 439898452 208776350 732188227 718190954 941572585 885482766 839797928 218059006 806279052 299143862 452926573 459830736 161146757 352879205 761522603 981813658 118836361 808644254 87000461 33442815 888770775 349998653 403086398 747249556 540725224 523018503 379753512 621573643 176662506 977708816 256263025 722467181 633229385 983951972 740068728 489074399 723218750 193516067 511322343 122280773 693306932 652666681 137084662 11066576 888688955 215115126 512212894 900925139 865599952 434106805 239409401 243809298 769657837 923409140 836992179 283178385 314100053 386544939 993528255 687055554 265737525 413077653 265921482 861051191 191990774 566404105 813290813 882091175 200807652 601691287 5083076 195154864 189727756 344774412 380145647 266305929 286412518 255090799 618285724 11490478 98196607 594226880 480435066 923619268 482223638 792300009 49186337 16601034 499301093 115180017 494969715 966263359 689203705 657803004 883626574 771090075 330861950 731339513 122287836 921032159 101397645 424615809 873664461 853521370 846942938 640129707 283571098 922316828 87665916 4207073 218879455 992676797 192593519 754449748 835965891 797277767 425379406 617482820 304949340 785100636 220966755 422876515 714643489 526097227 263385679 308373319 452692138 795233661 361140189 793098086 69356951 175076193 99966228 714239152 571658853 502360936 659074120 103244329 435830219 439596599 307713567 741268354 23843250 371120255 605477539 345598440 778718884 80027802 958538587 958022753 587863046 393475368 314124269 252627464 343603544 47434351 414058504 158157195 926207679 586239053 535096222 592796117 631617015 374436095 925786407 175107467 298769334 362804345 475268142 168557368 147526782 820586604 475254002 743901514 220049110 581236924 583807189 890805934 124025014 788545198 695913249 951910368 352072172 579024884 262320658 822495485 288671124 735665960 704406782 719835789 885705549 164098776 113987979 495878596 400265853 59666344 117324647 683397858 63409791 52186638 545381383 333394791 506111785 689712406 777137613 889881957 366937662 306669436 469562238 741399957 337522542 59925886 750016822 897072278 450203150 100459240 318249666 906705548 36663047 443449344 257125778 712723412 218868458 820274346 403083514 611838134 375035942 139090477 776709057 541239737 296792156 988102672 532104627 432148938 802926979 321203160 405213930 120216392 811258528 750458691 47179999 142443482 132389818 51637711 211553901 364370291 641489446 162454460 617898678 296211502 273945754 146356572 470288065 331245383 945420685 919813432 979610830 285069390 375572484 374328402 172837128 143498851 664892647 467073554 463729661 649742130 562824388 296341106 723817362 240927111 207567584 843989916 904412610 59199018 882393617 495492014 770195500 664364364 235624910 354835362 203001580 288245293 130831056 431736799 281303444 826652556 745184 17176310 158331656 278019597 632610552 995326274 554909438 231476815 519780981 447237311 873087927 698025484 348148823 131614951 334872129 21154817 843670900 318654340 948208110 598790595 507171219 516265013 430362646 25490847 301906826 125133449 783189303 961916420 155253213 190347948 451822155 257343343 390315358 980048039 316371814 376699434 725873588 611267209 692546716 68163511 336383514 317931767 484113727 739466527 747553854 373398131 730190414 153103575 247021471 821585040 184435899 181202677 277978131 406770221 992578944 967031403 676733417 316420374 990795234 197698425 288097670 241980142 39994980 4462851 181774337 753651553 843008653 885744478 254309090 390897879 594134287 402272139 610578736 146739493 175326632 926446965 11235499 24497098 662329037 863789927 791416594 109388720 749798819 688993410 615446369 624110253 426200809 714227986 299513760 676239240 456642035 936353897 192047553 527470819 185187156 448754300 591724713 128446243 69965198 401942706 630954722 663147471 750182593 255852951 607310703 896872045 838520901 560255330 984387217 467062288 99599052 470090190 384625735 153966169 555953769 239763179 835903451 143712163 613501544 871165727 5762791 217173103 975276097 273484630 624722187 633832989 307512254 50531847 368907548 306567719 408350655 907391753 335089356 255370265 22635126 130934988 764950588 962914703 36726546 628862586 23313665 28444635 179357125 841541825 704267008 994937334 469590766 721640139 782013979 154485321 932032908 436590566 136153541 995480429 509471691 812372828 878061350 646160273 171373141 632762225 475432207 626941891 121213242 936125740 818972066 403921267 331156828 730939684 745456517 315356429 238794155 519692613 843854735 847572576 153234326 613458122 886874902 445991454 988680298 190868040 643591654 950745601 349709796 246685684 52985518 955085738 519461506 703146091 428740137 518391199 664892293 407477104 512503756 260801611 820343266 142061947 102453437 253228725 750433093 171490399 107673656 849596582 84594390 259935311 849337111 117449157 745913741 175691199 657848300 397834477 689228997 367439927 290861124 955363633 954311275 132039440 742939793 513023381 885654974 684297702 190480809 120063150 291390577 9869853 35604932 605306266 615948434 11063067 326687301 406751765 246204154 957046326 320397157 538119139 110277606 405498715 102925342 381857905 200583720 153512360 412446898 697836904 670674861 928165186 233576621 188230674 827684072 285003470 919129365 531954409 730430996 726676314 183295391 967918167 942809692 587476282 913004893 827982645 466955078 693621868 727337544 193441336 892770766 52507775 853952242 64533392 455484465 554994240 861076087 611886516 397983323 623810234 913195963 699722915 379955750 977658884 993549288 695412549 864799520 465619149 283185749 17293559 840584471 993126692 329343239 473823781 894551332 178780484 911712161 893324220 383557150 267966843 532283307 962308215 724983141 207947665 761569845 888361242 831166473 648693217 692745543 157967553 463568499 26417776 165006593 832016186 246831716 171525528 348304262 505004618 285819395 789135058 296010825 590055583 41726977 620845491 359261434 985600150 35719036 848521017 822566240 740806273 727243684 465698718 737351134 796614173 363979891 339673229 293149356 105814284 754086679 619604382 762230396 937425631 43613277 623009072 775074145 484306058 204281031 216928234 562662820 514074326 233447140 908579820 990786052 764322722 692977730 957546638 300357741 932638003 163927963 139205623 324941854 788714291 605635197 210731834 170297985 767411979 910246386 104488728 932340388 158469635 860624040 159530969 488130327 231914808 922986551 463604960 971324078 34228395 355555534 457425831 170665041 184995255 151829228 420858376 698717586 386868730 726605880 841351040 352837263 205644317 100597410 403879407 611823219 919650408 650491237 597517578 687061918 55286035 452376479 25524584 89683193 301791904 442640039 776356383 373160298 680845210 978908043 264834257 131322732 454352441 846854629 127970767 617083635 306722494 313575115 982441065 656819123 925156178 578038105 901601479 472461800 528206283 571611886 938418211 243668953 5073857 916549043 311193878 629209517 107716589 551194880 403748294 656122851 86228226 528635962 767797415 654809716 201040974 503989024 868862174 328268225 589356995 735253326 549442824 842294628 681928837 429218649 110370024 176350520 482604671 988214116 675935982 936010449 619866551 707579837 454969361 263071169 474091483 174516706 987566635 896125627 572760843 203611231 911041036 398104752 93495494 339381279 745644927 253320946 467462945 354860276 638673325 337058287 976238399 702194151 454522529 154855543 912338198 434105184 540275399 461780207 906467616 994783813 413889628 463549730 807865082 160547862 533751514 492980193 985612395 86487663 289538813 92054928 202993003 461748001 501801394 82583946 582421827 419945921 116744050 190939655 307454851 746201547 384981427 882790446 98373085 634428380 567879781 78838177 297386147 783062964 78539986 523353327 931627037 425553068 348210606 472910524 694003084 824995457 988940642 523599111 822154044 574544249 247687896 294242331 583811062 689604807 188647641 724831220 338851064 958454659 823033411 667334663 646698965 975699546 457053915 365012633 394622781 699816554 991962602 812167987 971078699 57347592 429394156 290595582 800183721 719616013 390133048 122019018 84140907 779502594 705032292 94796606 621857819 450352008 178938085 206312847 174771171 543278347 624632861 783588338 435074850 114758602 871079950 649320789 954845035 738229711 621200206 534991059 16691341 537257769 277252435 786683350 176379382 644523258 530779014 436652098 971160913 770165972 667415444 545827154 304639731 580381684 142874987 288879289 204421460 660162636 388587997 533039049 975449405 841965274 760172348 908050817 679405380 981515877 699671997 721614422 672906286 235929077 760867398 15025486 761493668 528942345 611958477 855372526 184338678 57834344 789578134 381088357 350579792 577544329 912240485 620961377 205884402 484362030 402731529 723962437 322063772 519656535 715439765 150101474 571026988 789658814 145035432 457468652 684381963 915150029 449868063 816769361 246444494 43858726 561206217 480354703 524574202 74668050 204873098 75450563 832855269 143137611 567660154 126712952 78650645 377099008 134766311 269397128 855288987 354845710 521066461 108457684 906386612 386165250 338649281 6078 260098238 83697107 821604328 652615094 35649988 532016636 910267762 915324379 389257612 795168402 197726694 915177395 518971501 323108019 549556407 115815206 516809972 580038356 616949983 520441479 827698576 966736259 181751055 692072442 717092591 594377908 532063261 917186637 705763965 861956507 527385562 448020914 961686775 35355058 386092376 46538823 302956407 167134304 82205714 208261806 465880995 411127148 107893922 744839322 497161868 641616257 212833436 948247277 679977056 889197619 884323027 109982211 374005045 189606606 915680065 441482365 879541061 958822564 496449031 249652576 186850622 44687808 625648530 33425557 196070021 323042964 82569723 244193072 396534281 87105698 418613671 965061682 909028618 152919436 102447848 656894755 777248523 942644739 795377540 910568875 266900227 911734926 196978168 977330633 753922869 259030144 100333744 64377535 452797068 944726419 734340233 66631540 840059597 299544297 617127971 611915672 111213445 128934826 825838179 20378107 710117487 717023425 638219923 532909125 209720585 367622473 862369255 689358738 106142476 849068351 526903278 470791619 651781828 435381208 648780610 477198324 74715328 730771519 612139504 75833782 861361776 599441432 370281668 461147522 810344116 708973520 619598368 835589737 896902276 73615495 74810350 569664669 852540076 96120373 298777750 578705995 270362716 975718857 816269618 653299910 714933193 693848553 691094140 213911479 908063388 526493545 321666650 910483680 299017629 756980395 780024398 806128599 833217581 818260604 600556436 385619759 902884121 920000358 720085447 223847612 158416203 302072812 160764460 518725816 951267654 411909801 776776482 802733792 612698076 624985662 282497737 560719820 695360128 332507650 842759788 428473056 938399533 240530402 540923485 538128042 750922094 132725444 918728186 584887434 92297542 914745304 991186424 720606142 637332680 121263121 46248987 560697547 494587182 185845791 768606738 822710176 413743837 736445989 345969159 853918658 35693969 621569168 290770716 936307104 694837492 364227722 295773880 574018466 715690641 90397179 857643171 407599769 629838461 180701405 68637441 691374948 391025528 631588286 587339807 56786918 581803183 113361808 568321411 722125535 763672270 889121941 961881379 749483337 436372510 627706798 24864466 704686417 758295911 174326662 397385147 797815786 883539395 155809933 846758603 637903939 705891321 41101084 799775465 785981766 892791910 881057821 405748372 58699918 304179836 797759631 346338552 283694541 426084308 151773538 168256699 895625563 303370534 691664196 393477507 418831159 193411482 230587593 71342309 182150024 784732884 906211698 695070440 381810474 224603114 968708864 584686097 644845410 703015314 95733772 431597260 655804161 531401489 360912810 442862821 867495174 983525788 454286158 19627059 374192454 372490085 475508325 751198069 73879651 718240583 141426812 243111630 63563771 302529159 381649739 32596318 377962072 249064976 252077123 105546023 685899478 384351482 394305872 833451762 483667235 223377200 51396591 762816645 22742452 234724386 804618758 294084158 74644227 27028279 55367071 30010662 199192592 575778021 392040836 575656501 838906048 190127757 685424494 25594838 547566678 63839814 30174789 717498140 120299964 90862256 415071705 336478226 786294136 448061520 661508065 714412403 409044048 701818712 38196681 622203816 484728385 5536331 922200322 707662313 783032978 795671847 678830814 167542914 630841688 644770866 648835550 749245150 198497139 147495884 639128144 441494044 643056692 473562334 455170347 857692367 512199443 186842182 645743801 884513697 782334200 569247393 807385418 755484627 500222447 353392810 499798702 192519294 20354291 505574282 687601718 723949287 741874091 876711770 674820045 22015629 880653461 874287134 311398063 253306100 70966392 365794289 987690895 510779050 249964913 813944056 225648274 717806150 848546498 392371116 140798057 120238677 857423387 729185871 575508672 44207972 744135977 777842538 249736765 193132765 733906126 141895251 964614086 315880007 458123219 426265936 796046399 649417165 22748784 604409430 898541644 999427873 779014913 751090365 711083565 473312436 875586199 140572944 497049060 386673333 27147406 351863534 151568952 474617827 539496263 910519885 590685758 829296562 550889774 242828780 374402637 778536747 262213588 941551368 662401533 936681416 46226354 661316372 619110991 681085478 936807053 1484942 208842491 772283295 137724846 111387504 349284087 287600719 445940647 438768850 640073909 995519905 543266407 291418267 634561547 3870447 9329386 171923694 981703867 791869201 202066984 681570215 702984692 891329440 487994399 193615335 614837298 634396195 409972387 148836811 138884685 821914296 851300038 442358574 791127608 46880541 676420 983629902 269028555 211008210 571936624 269919596 749496664 335353899 423612231 500541867 394217564 242815511 630824791 796451060 54258566 806598978 518441963 882730466 408395931 500481188 598550938 871290746 355769788 401618746 11204949 826517396 265829107 936656080 39467771 845626737 472707479 864178660 968570747 263498184 46608245 967801733 362716523 710027412 610417412 220170202 469481706 767080315 421090771 123476319 880144943 492112136 296810259 228933879 950715785 384158498 585654397 739897191 693813329 834231309 542406551 592904496 147909656 7632033 918948146 575306491 183254278 452059466 759830175 452569437 747112924 824242381 478927071 729189043 964704369 190253047 442289212 943590029 693194159 892273708 31479715 766843765 470497238 18955273 62359165 954944994 122620763 99350777 196389265 582751582 294246896 32538434 379371922 29948545 413716351 56661015 748406116 536713569 624083814 611762740 824543033 515389255 651260180 621550373 204995463 732992879 390766708 455424093 781696133 803942447 687714757 25872183 461077539 303731321 482145696 940099826 379299230 130382804 699951429 752086056 344122086 835595333 57136738 133822396 384612425 274298864 411487714 925310476 752057907 843569445 976573601 613708247 819184686 155607395 969374886 118884409 452010563 921557459 803803441 767001585 659777930 861131925 767583674 739469701 437269949 473570622 6692646 386152872 199275971 984214693 406814309 627446749 455990283 238920141 71734217 29837340 551997550 341479039 42549465 193542630 7355346 340333703 395843288 151209154 323450893 447839690 222095139 181942045 993907785 51107483 661083849 954444804 780837107 411965315 750272037 124221316 16333663 974737243 18131454 98651561 675168649 55980550 726732231 285997843 392428370 114628996 578527367 921946536 352684798 280002546 18169890 17990086 168649122 19855067 496237347 13900203 329876135 146679192 291384825 627616681 433794646 294782109 552131298 383853972 553602428 219508178 961611204 817310941 512854679 673184539 190630290 508529704 56576828 971256680 443395754 671827013 267211285 489793479 718720797 248453654 145452209 316737593 902461455 203113560 811319090 749670944 450923860 801535528 332213532 229666973 777420356 533365595 795127806 826633292 733098614 626202886 450091170 37085542 807143815 38488078 63830036 306319170 496302950 837205790 825682882 817383789 157911162 339182138 885189361 561539279 331249528 46852947 149868757 138421654 820265504 54612678 181572075 395803276 576706729 386819019 456276642 541255234 261806631 767460467 843968807 736890577 798789071 593976798 966549626 747166896 89535649 572452542 577598348 935682793 245919008 332305891 477524072 101390018 566294506 749933813 834373204 796441321 595232182 543563765 988400848 275589936 710589898 343242477 682002251 987045519 65512758 418452451 349139782 315862090 768871642 243834952 284620156 8801603 130015469 887055158 144639441 428193064 948233424 915511828 369406957 285602785 513392772 943642227 878162554 944213899 819743578 737337480 10245409 799263099 18079954 966791192 923535736 515707679 416845115 895663306 73352702 976392218 834522746 618722503 690063942 771234473 479686285 930656595 176018995 659983304 676893629 228578946 323183502 382466367 839389662 617846240 601430981 149382514 60235497 299277168 21341263 851698486 680360351 908702684 784657398 12020045 619343927 946234150 538623815 135378487 460193218 812624355 362547261 320956552 870415739 617648091 707013703 331156803 480933701 70171262 462788355 930169163 944518646 813182564 247064491 453798456 91749765 708256591 16440525 254075252 234776720 426915939 31071741 937605873 228760662 335342963 115520325 616443449 907008355 93973609 195153221 644355137 482292812 942362999 972476511 441211713 280507476 325212410 433215728 245835589 872953288 733354737 714253199 595590113 612859824 139304832 844994644 827824027 781137429 148361451 118870697 30930456 638527060 76251278 734193222 721813143 738623805 868558351 890256789 700798155 241888613 289070253 863471647 375620837 630721250 277678972 156247214 460263857 373629351 629345949 67493760 874349738 957501786 903138695 205247927 662781213 219408599 886736565 162183203 80316456 146220136 623651270 910822768 516975476 527952452 909326813 379050903 559923623 820745970 481457201 898964844 15026542 81583920 330275743 304768687 722891704 611568396 249796726 196195176 695376107 313030037 134669787 603536441 445221556 141702462 875673196 285248637 725340509 855696289 660223275 166294016 475488323 15878467 164860660 535968731 367026095 945795225 224571016 380472336 760968543 955349907 130024270 986265612 599152707 836142923 755621682 74553170 414831459 669709557 910090345 850359896 40089432 698734094 853786405 741004972 581945880 958811693 981500473 163256150 312103896 44619245 919598810 753471486 801656346 921849010 124615257 127896077 128645233 564261507 977097516 384835166 984806081 362110470 24736892 367181088 363985857 605569830 669287431 228459569 642762507 855400798 355434286 198687888 711562628 850808153 315137584 58482857 94393318 695008274 748961563 554209668 252772183 889409366 266961930 464827695 172944444 825548485 735361189 807053286 25066004 304866792 982166159 337270603 739030603 745349213 107955301 661791061 771093650 345989787 492541031 614214531 476783597 706649048 353097528 722211890 22686515 651059955 703766143 68599629 343202041 49632886 263254307 534500666 255483312 409226291 222742946 947801482 660300836 489472768 37279154 589449323 342597897 527615221 154221925 420308787 401573171 275310123 795103254 445959159 668103573 863252581 844970085 465990121 705658479 157368832 89749519 435061990 863010504 73458920 19667786 96901781 936256408 74684491 647984169 770529891 883478445 997686549 896627792 637006041 174695535 863999094 2179211 454382062 801205017 90539935 97842832 651156327 172671821 903095244 333205986 975931329 941457029 947633603 156916720 621463892 737713287 926514851 104678714 911029625 530109443 679789584 125597492 504174966 627235284 853044811 364601899 526710944 784342504 458349064 428027916 916671943 964540845 354592608 267965782 616920448 777741395 155158669 909146838 416080941 756642902 788373970 65704499 656714061 332178324 105692320 445044071 85965726 73619795 155029892 106034000 197548683 77597783 511088051 785352402 17719841 182267630 312411887 727876093 712942469 279789561 496941841 119961331 182211233 160194891 952706505 23815505 152967393 903127207 720305221 875950014 344674352 637778517 227914776 468979264 680928751 254117788 849183088 655931789 913943740 40819308 74800926 917405334 362381619 805027036 791856809 689048326 506726610 573796859 864113886 461786584 118480522 667579026 737585587 460738730 959842277 67992092 806634112 611962853 541569950 554090954 411255638 138201047 457336880 519952826 207709949 541150873 712525749 270686782 919163849 591578562 920017199 922442472 652129298 837460849 715336414 229555794 610350773 747094421 422504464 795424009 140202383 527626118 684235392 764584010 970361041 735740764 646263748 139322144 305040187 557332841 714845283 776363933 335019371 371696106 994103249 937916263 226765981 322635152 831461251 31937636 123888489 351697173 733584783 82461751 257831983 670196966 339914937 515023985 789181354 277118948 102116047 868677170 189659465 586156323 687178832 332802949 271159414 323748060 382088034 591993395 188538459 541812559 694266539 521813041 946525379 919938240 770275867 872344389 59132586 196809594 412189816 171905220 894820967 540836866 661200963 405729170 907734919 92774729 265848088 273130818 693435658 937646148 177204336 750717183 193445740 312309575 93236584 507569448 794343031 781316238 477933548 107440644 378244086 312970590 754469059 109427053 51473797 125189994 900087542 493830891 307077237 507217414 763917092 914841167 766688149 556436950 395551504 377056278 637913615 364318809 507441950 942418819 144296686 875509969 812043089 853518441 67370955 595800686 891715698 282993275 56117561 445024658 413213082 288349828 842907544 496026483 348818167 142861797 588830662 596895010 183532695 72361286 199880736 577621585 204195802 46058530 162076412 334733526 370780458 364726734 564225993 807555282 288198222 367948896 837197503 829681533 506363944 702260051 749837159 105675085 523764293 896246669 880854426 793284036 998761381 362915373 428093165 195368345 741107736 1213983 809136620 470155256 965932752 336408665 437486154 371166730 903332234 933908121 88039940 112348324 670843938 905737235 398381048 53289194 313941968 163132350 418520623 974466322 350199435 363806609 42258530 113340178 41022478 370485400 35205677 600310622 622561131 667473935 190111073 634637758 814180491 13707583 414270856 180135684 211288770 597625998 906680648 948357705 55213693 854576568 554232022 405277584 891990918 983027044 743967968 239940526 850146487 879030629 748340358 224191830 584430544 44538574 811209505 244056311 455162718 651333145 434691723 266909491 482376758 356425028 623329314 558276398 20641207 742924775 153136249 20427006 532655666 178310085 691100191 326900723 353511989 271521220 818475622 423592960 156932113 965867865 478476754 139509468 150741553 487618882 523542351 80898573 416594284 44539129 77743493 541314372 691142065 800840983 982497799 853726751 338720449 358926278 633298580 877746702 986077067 147676542 808060821 394191129 733062813 160059749 272564843 813052417 21896078 339759455 620791242 799528733 87483352 95807239 866382625 411868378 720697634 670142110 239201377 295705735 973944065 200525843 819418353 103317793 586353559 453392438 503321073 70642572 643742062 172256481 790754862 87863942 559473967 158517999 343875143 56701405 784303607 868611431 983723555 940062531 689066888 574828892 593275532 243410611 835682045 908670061 812382566 313655706 595135901 213918938 73384954 564707710 874105653 104196375 465480843 430224180 672604761 598340459 527257203 900235551 903622411 411465549 35344477 394471830 107976937 910147178 325006957 602564453 994926565 574787470 251132357 979172107 685551793 587931445 946059244 973317531 972884410 329897060 630088038 804690748 673641571 981247008 988886559 825968865 870008201 156093241 320458598 859713375 768385567 600175192 824307393 994358013 440090613 234362674 307347805 844397572 851043299 474157696 374896970 954769264 747398260 577416312 262946545 229658178 46415167 696250482 133173942 186576370 466289912 570675755 313450378 682975821 991411108 208962595 127763589 42740471 15674828 792731643 134077989 362222502 609607966 839567494 358276799 471393914 830569390 186622594 509122059 990328658 698416979 386154259 819970897 847030462 146159982 281608459 32333516 641390438 636578256 385606213 103665552 475799158 843404736 5737998 92909150 241001777 669717263 813623364 650773455 854204129 870160652 860259752 961968167 873773222 794104597 788814367 963467864 833519695 10875756 362114834 45590611 465043633 404399280 305736799 12775546 891740782 896875106 468498803 268280760 759246583 387336913 972186125 423973121 292156981 240145815 815756403 286724360 904211706 22538046 430887735 104523041 662191435 160161932 317178841 74851108 187870344 934324361 813852708 536439029 192917124 459501206 531718706 617257179 598906015 877168907 609604926 126250469 618572929 604418488 73998888 944514409 623097526 790706747 862660429 6850849 35154601 165636775 180963801 588806368 616489171 110711705 491834387 817669423 475306301 729669237 87475036 699185715 580841506 583810741 495163888 347516899 314464595 434377556 446849210 350538755 833316615 385171909 717272870 774757085 434484150 281061285 827582087 290203474 503094817 93645040 347949499 851180484 120812948 68548749 823371548 235942094 579131352 294305000 418486161 20552940 821481962 138293426 883800940 243652774 813183602 358392730 369913667 977817844 937370130 69927763 200268719 968302400 827695284 883023825 465607587 52315901 172641742 542475472 791700759 214655725 305388624 421853938 685473266 773053623 102669378 615740232 36781506 46417241 996893775 199351617 949932148 173285351 532722337 730818955 869538470 13332056 590497690 284413746 870655916 485953047 529069073 545755518 411519845 536095038 730967392 608812271 998844897 292486531 832499358 571442567 118016743 936085255 776414258 335120240 41607533 216856760 625666210 203372326 10355985 860824412 841983436 341933013 497189621 13749938 605307221 887234823 405947959 392093963 419183727 15936160 824888609 827877123 137968581 11930195 760144161 494827802 120215951 7253433 140227687 56181683 601431008 461011630 681747859 578616056 265886882 96883068 572096965 293286318 77473195 347091171 993167100 44890585 915789801 748975620 236914811 68095594 422676965 13847304 314639369 738961405 493691279 578582218 125964711 712644190 261187170 424493690 435720188 81610574 608000444 169816679 843944381 968103684 135888493 455041346 964275723 307872887 683698097 730257203 400609617 632409987 186157917 76005842 732448028 747216700 640831265 640908047 914320733 453259391 462057830 136721028 897225418 948837692 622550840 109715344 635197765 563650557 968486810 283241099 85072114 955998856 213960397 813021579 604242584 242804270 703022437 179192569 275237158 485556407 153533995 535658218 721038051 921704984 193097757 26734425 94562531 558402488 644517150 49917681 766226710 658815276 795160011 480171048 720870279 328246762 329995030 970824452 160036073 803950374 543640674 424618110 191429246 631327310 880627009 354946616 210028066 748287248 555907621 220770025 498224999 388400375 736185913 553432382 889687559 869181743 550428347 371216512 277142680 657669577 371351797 537691461 669365181 665063615 619166432 661261939 2883479 277905174 869760844 102969677 416715199 434950125 110384354 201403524 21341105 775342569 198951602 125384020 895262202 876975049 950732094 82101186 747425509 976035161 725265379 32980524 969586024 818750687 543367377 130117640 824499198 508096146 370802132 948318551 586666839 827809089 25458899 34960020 457435748 265398613 433729026 47025842 496300963 813202323 98450839 161971381 181418854 533898441 567057129 793669788 937779426 795031413 164348212 815593375 624735617 931659152 494548103 389106471 431103701 767390692 962109262 62592704 620884887 318141473 179452819 891878533 146057395 484212758 813959582 360262795 727231957 771343471 758333710 706671872 753012433 243392228 596635802 617811491 778633615 832916476 903818167 934047747 610520693 117311382 284241625 880995312 146701121 717730142 612506160 12217193 883825133 956921927 368420693 609943150 494047377 229648898 176362162 699860715 792691750 718736115 80308981 348434634 832859677 920830188 142668680 577650852 588459431 3381795 583462156 739254146 663976942 684684334 23869301 99690255 529161813 196819187 850880450 495112187 595218859 267367807 649669862 124787873 550556172 204424662 922763479 502215555 231058565 606912253 368614487 333945216 63495821 953362373 726706310 861444420 501676007 648919324 434344939 757242933 947435301 267955168 578590242 369800610 899547153 65702791 829003534 778095417 54335587 770823646 599341057 137612771 384291055 180016956 206371092 92337948 814534985 783896080 657971896 590419085 284251126 263722202 608694692 382606904 695944679 305567117 156189582 21534361 794956825 78224459 481690875 40970965 418337452 967324545 764063601 719468412 959494379 87728427 501910699 213060012 519514418 929922361 623751342 369750050 809698308 907006009 325953455 98136162 217763294 495531026 949225964 321579711 82738409 198854207 724530797 889021976 116359206 861341147 849224192 821327745 731316650 905602505 812529251 583630807 104252177 51972381 651584660 392324592 300526565 259532985 642724282 550178094 847144682 824803015 820382010 729263464 798054061 355351936 64232379 13000383 518493798 871523670 236196158 835272791 294536154 265400555 80733008 462407735 482321665 994032641 572471147 794754952 588532784 950079762 101850820 692121623 268396086 607333157 179215315 426450321 743974146 115855654 745634464 595378525 227097045 366581233 630195485 598248961 645384329 27215358 570274146 743097264 753517337 12718527 994479815 796768252 787600849 172685549 853067158 895956636 741912612 429419520 306317208 416703450 571079134 601725709 66262526 843331521 286705560 551078637 63551661 173445880 340289020 490579688 176631679 380180979 531504112 49820150 761067947 7764249 327248433 499616412 165305183 285538540 399438000 159962999 382368931 85939369 44980315 480623425 576454434 867653270 717331980 518508133 515104460 62579934 817816674 53848231 316810304 550529525 39543922 846208552 614192128 558665408 426530001 969673793 625318709 58201825 585497865 880663667 143071122 406710134 251693700 104195354 495999006 888583995 620155955 490085368 960909387 304374947 529265249 204876637 493428617 618132963 647389170 898361787 103647674 40178441 430795498 110339762 438151880 345661089 562059962 243200963 108956017 973434970 350987798 85929731 444550006 764049034 114695909 332911365 585707485 89465631 431467972 996537887 803520239 513456264 635383257 18100545 922798487 894369406 805444933 507212630 476788942 354588773 765092833 870238045 836340415 56781997 805665860 954357569 182852444 232413762 854672985 29835837 324741110 785950869 971416763 772667224 824828237 425272138 585622127 545365651 404983778 850475902 75982389 276916050 804847006 210302516 660647530 251538543 944825926 152579251 111908368 899760246 643380324 882521319 689892779 856460657 214760316 585950334 88631633 539602652 732865926 976310327 680041702 732527590 413435140 545281548 202907316 45342540 246662298 185851818 683641149 51882983 343583758 711522754 586042133 329087839 772769137 520984474 473483528 390760034 999943259 210667153 443858542 27587268 963886536 695208030 507183049 65802477 99887071 474963253 120655299 370722636 665526528 677235480 653949567 607781857 564016713 413732686 15125890 305241662 122932956 414224749 226430916 764449163 312206761 611942499 191322937 257249784 992876597 32301648 613862620 515271157 358767404 965744644 121355751 817072801 518612740 830451249 893324036 829388649 213875344 55162049 878189750 246659265 883658544 449912050 773485892 110179103 810824530 810339551 332796360 746266993 781217091 634944799 370660867 541664925 387321864 29016791 24468090 136886750 121682552 20321932 811580717 558508378 359054990 174874299 768485677 476210505 104853199 516346146 845742085 676620233 307907359 397863974 920634338 310005811 691000149 730675663 966782437 873258320 787943867 776794399 368299010 766892028 353135945 604706922 163097299 964241952 132915169 57339303 262280172 506956476 805183155 471792842 582451113 244456772 587269739 313108176 500523648 282509471 432455060 789765281 13191345 570491294 554352592 10138636 769782264 259408233 381368199 990734708 360854022 680313743 380986404 56485401 418392161 226253326 739763648 73429399 335893871 358462330 821462207 401552047 777660070 602661159 798060595 770385437 544791300 886127316 67649 959398545 121556345 69475802 438086639 789090362 963660215 515020104 702386169 124201173 561497645 777944742 537874023 479430541 775725808 72102136 161717827 428207494 19581101 283079012 673720836 630906745 191919655 289201783 28925683 874506224 990311586 376198144 907932480 196619544 668750198 200629333 119989578 372528461 563383185 412285990 635156987 366750440 260095870 153378295 748289388 233031838 140730936 542751845 391669232 859061009 885922181 118940207 239904382 117812935 437396234 161565364 922630129 201912661 153676198 539952960 106614055 817399335 777717925 20008914 12579923 816240693 12510617 773954804 8936201 497868871 444892690 953357158 621927476 898916027 730420264 921218287 678314133 697651487 535095132 595482071 587151568 924117272 662219072 277613669 151161256 931735036 114677723 964285801 762363404 639988952 324353592 844740262 253512404 822657864 594157892 728658715 129995689 15365312 925825195 966434706 221549421 797456126 543161313 253548092 46939107 831425969 140457035 964488291 743521253 550034581 450405127 881334660 884552466 243167773 121203034 248082727 198432190 97146301 111312695 918292198 259403602 684751782 536248870 150809995 454234866 852592844 642818953 616691284 940321261 280972193 19734747 381271889 278892962 122704685 396781582 101787946 305534224 242732249 156015191 866335513 835231819 791044760 440490177 752264601 577778308 373328400 493867183 760674094 569077352 58123882 860850823 284009808 668882347 956211210 891023977 963952033 693020562 279494239 446079773 899648801 685301183 895311160 254295896 660267038 965268632 721255551 785179254 413923395 884279353 5416307 303094272 792905257 738208102 886230348 476277458 785861819 738710775 884444001 642392936 884517989 931154835 726365113 49216969 948162519 23391304 703309513 371272079 392127698 891069842 155059484 38990648 100519787 235457948 981109632 778804523 713972385 383667143 852915583 799656173 236117974 850807027 906932694 649295402 151484093 962820065 819793720 863837905 676628446 2966209 47101241 715749261 541852651 888860233 776886384 890319583 713239615 613688215 221505970 611555369 788915854 792961016 45942419 972504108 458272076 876046622 460327522 124244904 120309242 403088174 9512898 637502551 69264933 918378096 756654035 687268603 727697802 103639884 630294200 303796019 388099023 257051395 427631743 460333510 763829672 622090631 162866487 542298907 537889766 565084725 131532038 611523034 108256571 704957273 127933841 952179352 306716625 554444677 619243334 965341181 80895370 21422458 893551434 67161624 465054125 711324577 279413186 466541933 788358506 579663164 191722702 838265519 97163216 314881154 680028086 50532386 944293564 481046529 911505453 497417372 833410462 813672989 629042019 439381370 41224697 556578016 241593762 489075584 458203725 983842341 105319939 994590771 758831610 8132214 359628679 177574681 986132220 713592495 461258352 416824228 918698000 37386207 648890219 593243280 229477246 654963186 417610300 181262200 330401595 418892652 898874208 302016194 52965408 328394871 170563972 691015617 690617910 665138489 84440196 265269262 895418478 163108894 519418784 808382843 957601210 158356267 778124720 190813526 645920854 584858764 728316095 87536321 325403159 204694229 268894570 407950233 935910041 512128573 166258260 987815675 262689180 270739589 23291914 327050795 657582976 770469630 820856472 978475476 566924166 302762315 170925276 22792853 16300032 718413760 727040436 58011319 703356711 357469383 431614673 434150738 35938826 974430927 200996928 976528154 864009224 771289037 548742015 158033559 247583817 147244024 921995249 314762803 401324529 211603476 522418116 41211456 395531514 671537401 524933414 627927529 841781191 92094873 357531445 980941239 563581270 581628689 500999440 783865529 708833958 96637215 365018124 56048986 909991198 355809007 992865699 69263625 104046141 522807614 660116988 417279104 266607614 840659612 82081398 490288124 708912311 25888194 39381565 324605930 684505741 161978057 581007734 244043828 479277046 216134769 319110587 530986559 509832415 29868030 554228250 877753386 317631314 421147749 347479858 817392390 180974789 315271194 558144370 196200934 134359758 784002935 321707715 5450651 112795571 409656061 300788318 88284505 166245515 50891693 78364563 835315211 779413332 546569112 41030110 363450020 421122473 107114570 672092807 487017775 513952048 255584234 649486240 179539840 656294767 485570476 637205950 409938867 70199011 612401501 425480295 343252821 433579745 21030120 786984933 417617689 353337679 554742433 602638949 50921754 753142320 259782512 759385791 173112834 538201812 296932373 811421871 310163688 587947055 413901320 389983789 602832630 481216979 552616636 758100842 437313971 162190863 780357208 72770280 512142823 122648078 685143065 828448617 266098136 437082941 410369295 1676647 943122424 876836208 408160321 242540558 560060299 142709936 433210252 646132598 901547875 157565879 239950346 683539209 654947689 230194946 973100227 938008599 731891860 226772618 209389417 615043004 245325818 954797555 24214108 336974506 406872923 991452106 197445150 726823752 990488595 853671101 73529061 141381173 700257272 603202230 154941719 27325671 229000468 539744143 341166485 136682408 185909534 721776925 755579073 971269812 404859327 310659838 185359740 740578938 168318966 657011354 392896152 593579936 837481911 987823338 674188287 800452979 143530882 512114846 732315507 631623776 915524724 162423711 768498037 28468028 959380284 468738033 335733839 870745467 823748646 250459321 213693277 66352051 701827824 111510085 100011962 245808261 972978977 962637977 252447496 689216230 565627353 980585749 289280125 602320591 113801817 419318228 506434333 319028898 561122212 796162403 970784631 16892259 565031937 246005774 830117961 204614002 99262838 33752286 940762195 763021306 902045687 735920792 488210629 120586467 361136154 147031992 662064165 233022293 957578519 222103500 809008541 63031429 310347032 681428480 912748153 987219798 435031414 390137167 809062118 886735685 850833387 588442879 599059464 315365476 984748026 805408236 771458325 424934493 343612445 192014219 425428244 369339822 864650051 413446885 663915790 750769019 979261353 126854761 297932724 269936316 941502040 764976022 234905653 307668684 921862053 642556286 817558992 86847211 753942661 981071849 885029596 184178487 735323455 845473792 615505984 991242375 309841960 483414482 459859144 265514196 39223832 155636394 317590313 394064229 858879915 985424493 755221656 140447997 690377122 192222688 985063951 255831781 535244090 674963753 266611707 634346502 662116950 91829634 378146483 911706205 214155993 758739698 369570558 868665874 927342845 100178477 921061691 895690860 802857019 470774679 783621947 716768127 428079073 779329705 30740946 727104671 4348004 420298082 586445361 351895597 17519457 719612585 915451214 30755227 654233995 286293537 913660820 612429639 936676953 643068244 730292372 951255740 398263187 304597220 486661232 10795199 505095564 434093954 191815786 321310707 785231632 648579959 518403338 894181654 106151857 555986445 299838036 813876902 915475606 128443366 724303013 788397507 712961479 300937267 750136801 874930074 22030954 513832221 282771838 225975686 524661913 509364625 487303919 177381338 855440503 478028477 961607214 779328822 284988854 485883964 426167186 898186309 507087749 236692942 656891106 905776630 400679855 609547032 387063210 441775609 518753060 515648369 981251511 702241753 546750593 416232968 408133003 258238405 919511352 874025915 506941394 32686924 192104630 653835008 180257948 19551611 872508789 895384289 352904544 691174854 543792868 545764738 396832484 724769624 980987761 668067523 979319671 502379009 910282916 823984298 746028656 247779223 597968128 236038147 243878137 943960025 787500430 952254239 742292639 237491645 493579570 84080070 875655121 964306779 42630237 46737227 661358148 706540526 244662592 373619924 143706269 931752000 785349614 976586149 430986555 813731175 42581177 308072635 250249179 41724259 709304707 489757317 155354013 611988298 510636972 272762928 208300945 945847861 870180394 296963663 612501990 127022143 792354934 103335806 957453322 496842936 724960618 660473842 65257242 947977815 1107136 143023915 153673588 513862135 304589127 147613804 944670510 461169595 197047506 416479884 745054805 32836431 72071927 505665856 637267271 981069176 154693897 631385229 743787465 534479281 183169159 908470076 857171298 900370306 696795503 285343468 395166475 272728886 480480669 867842960 567101847 105310792 69415808 540660728 688623300 703723402 906708303 547227365 642286919 58612687 476681139 194925487 858847016 350467080 580161014 773820561 131565026 190229310 928498486 682961636 974615083 735016051 739513747 954830473 684316292 339989438 546071783 128460979 528624847 427378396 457408705 717270081 387788162 775129091 233749701 108084667 658718816 761749825 88226835 675900059 567947805 581402542 808671137 819588318 910336777 551609818 207893764 896733814 355077976 335950298 770889901 285696327 492242968 794762715 797671331 979009626 790054383 720511864 432994840 395007558 783652629 282760257 174551783 351029217 840722778 304020764 495161767 990307729 329723175 513739351 659071129 204128709 854499615 331680152 484166952 175575683 50379841 96127209 844764434 185450472 535760733 837173753 792278708 310676759 995027631 136070838 32803835 979818355 464583218 540329661 704595981 322474162 340288047 109741429 453978585 496165552 45770719 232653955 122637689 750531009 858826601 421193424 935075198 7680047 288331794 844381052 299977999 663113612 894903217 765579007 559036620 69893368 780433736 142525622 52749601 188071887 390357625 651959203 466224289 272650170 22638755 83317891 23389891 842534615 224596621 820818828 505736775 796030513 139632560 13709676 369180600 813984917 858321639 556768640 100634477 85877931 45411029 24405726 219555053 651157155 946255845 426486249 249987167 38712859 504011388 531501123 986524586 326847617 227864240 802671543 1515275 810225012 118603092 731245272 319036455 940491069 469505032 317776356 170949288 653070615 185950907 587661412 325056473 604237322 351073833 129485489 241502331 590080344 180428141 981996048 122976410 336085048 357764165 118476367 403443268 417610765 492084641 664215591 249387703 877696344 64262609 374079670 992646855 505171601 811478181 946112182 68014341 249782994 569224656 210261191 894118190 873612600 998128878 81153870 540154573 421102248 692587611 366529296 978350742 503420645 167303250 154956273 969233140 433458505 891750225 570244677 500421803 390766149 608262204 26150158 867379224 412682225 852019711 541837159 705482610 157507497 235672551 371554039 110363520 712857471 483300558 382303687 904089669 682120081 771886430 43147445 666956411 555151796 381569267 600489563 99202674 294418312 546502023 94244987 860313043 572170289 390243222 76356508 453466457 180026094 298036550 477816336 158599820 818292731 523949212 217116441 457920890 918696825 98170488 18424695 983901724 768716276 965304245 835276415 930820048 936551971 617611026 6392370 98247070 883111178 758332732 636264135 194255721 445068094 752848556 389469132 8898729 762884873 917669296 774277841 679154988 304280252 515728416 728651058 495053993 404800124 273090545 275398453 921420617 138242193 930912344 724876159 193474686 804053325 523664864 888856052 236368730 851635972 86900157 484903582 700601584 123825402 330913492 466012702 755470300 765185640 818565841 477416577 321280585 651074760 218640393 120533002 760744296 499525512 264054963 956718012 614751040 886308129 276661568 42561732 339154443 444979353 639353379 852827462 917381825 103925926 163889719 4885728 920303363 660587334 960511949 494532854 390905746 674508738 832517732 417032903 332696014 307618243 708103769 684376857 100480109 701539598 189288085 553714639 680265794 114758229 299288949 615222354 760688147 195018724 940225674 137609955 834455815 933221584 796076126 552878101 539695700 806590904 835994438 763098163 645565652 106704016 966600513 684383615 226490652 889674530 147014942 704773888 848137070 33505415 944925010 851745730 593948 693719763 348398471 201392358 482796882 804446178 115266707 183926052 508154258 613027159 667922688 234644731 22923395 276664366 640261751 226301646 98336243 262094910 728977575 708171312 798355388 860490625 942403519 66239483 695467808 106761847 134068775 246051570 816467359 78606793 187399475 459461376 910700419 374733269 569804834 243223793 49772308 351531342 312822667 242169167 939005024 565990837 144356884 32234732 23299682 551556121 988139834 803298074 433729135 440002806 459095165 81056965 248504844 467757822 262187681 548577621 524895296 854834814 631979457 385528794 459016780 515250661 534172780 880453989 388310569 194678401 43009554 573406500 852385935 83665930 952300668 537886514 791652088 925022119 521987316 568898756 524680370 969035788 790937713 23949523 428252121 880468997 822145996 362111500 453928039 531268000 399451281 611515300 777033750 333545810 907492913 868964444 603862307 475768848 168968670 839959778 765005865 976691979 406572223 268715737 699410343 698485861 984255686 458691470 152190077 428930917 688507347 781712448 787881850 635455877 643786177 883482000 666252894 817706517 638419236 919121489 536920353 489058788 226861217 68769130 143555918 551865915 528681639 879190807 575770037 659452240 420133598 800280857 902032789 19145332 21533367 145712001 452917594 290476564 123771407 472014990 672679958 102535483 657379539 726517487 796586101 829414783 540674926 673313959 668880441 37888824 791664560 604710739 263814676 52047027 233244344 990106137 303675684 31132663 178148283 469213655 260069216 632729379 197495152 363387503 212098783 559925902 65364252 438984726 246094156 653912899 682146464 440047432 7646771 302240371 111334270 486763424 878505271 724434695 765549655 50058975 211238053 982614097 179525324 176785904 896846454 327067898 636455785 291167921 501499791 655669284 944800614 429997745 935602158 820186556 21970650 364224531 839219286 301401960 306110105 865934893 189885684 203312733 871472999 66421579 212517276 910586710 589443609 661210375 203300651 983878786 330544204 370120480 387964904 818305297 110586585 105782451 439442788 473583823 207824713 648627208 226207304 369971007 459916411 766174079 239497672 453918758 115174509 899841070 817802053 243233572 205898031 232859549 3663710 475114760 203121607 774231191 73740684 544632962 377697054 313086662 652038910 530038628 223677933 9850677 875007588 949902991 943827093 207609073 184148799 801322619 379600350 739250144 382107058 717220109 709628535 385430566 176408059 945288675 302036881 856361490 190013652 578471799 225928287 347830861 210164777 643287786 482584688 434389481 393247921 672373988 306892901 925369129 717860064 403997873 33663437 192370299 888876919 283488256 377433660 484114383 238158067 508600102 360051634 850541950 67259287 318951124 403921886 519134288 411554618 77692922 458522280 392894106 652425480 823719589 576371582 341348883 508316167 531857420 459674090 566326495 630826069 513752620 69529617 120942222 845614837 8475088 553612909 625737875 469209736 261703048 667958711 793502278 770765755 394680011 264747445 812830048 884468137 206861440 440553795 502898431 132336502 878975541 132136069 499082710 307896738 457494911 239845109 442224903 576369029 740176300 213761738 303741439 80475573 32317126 483593972 698952258 774830370 898312184 15441030 649554133 633705070 805712518 598248987 934339964 289402449 186172974 465626047 589348558 985297448 391468692 254020920 476951201 624470623 115379415 3240071 804339669 550371790 220520290 658032595 265590923 885076145 301061092 400732558 257991383 186706485 110933477 444503846 332180803 327756902 783280651 860048702 723505775 687692342 675858125 653149931 116521429 121617254 400739527 890805709 106110701 844611347 111861146 402500205 689705708 598422947 959166104 605408259 278528478 285365352 751638745 993231038 405660665 616263106 293172342 53904241 206956921 611257336 1155886 345476740 426167586 336002027 317417265 182382111 972488041 853650698 622149919 344642094 372028963 147563021 457543673 614648393 87851856 90011333 391765673 238116162 743272232 244933086 774715800 998558745 565325368 954910418 806931152 935654053 494274290 264831496 569573970 431868719 304674614 709731169 734124912 88635365 305579302 757142083 557076937 182516378 466598808 276377907 329489938 108936263 856111209 135719636 223182310 608286327 731775377 592043159 153799047 770197780 410811656 301325631 311432247 42084218 900294134 298233643 251203593 399630499 3986984 193250864 667630207 1030855 204646472 760391977 115173485 140278501 96075465 770295169 459196924 915614115 581687612 527485878 513984746 858801457 44105173 946016263 902041921 456291529 573267777 317175641 877338733 920824820 920488890 245974516 309849407 298173376 590135400 90718706 677584447 210270683 199697349 403545601 257269410 795596497 553234709 553230175 977173396 211189039 212619977 831825169 514304025 963529443 359208885 616996435 202354268 184107780 538800048 962081213 502246860 60797327 120335278 293259165 750649411 802570669 880171492 387215414 521907930 639641857 737465066 570267006 56375598 330967506 815740768 254378224 266553188 221176827 511787003 241471012 35371309 114409460 238292637 946169718 425901245 714592572 679060047 190357862 107528074 90337171 852710830 272426511 192459315 840342750 639465631 922897617 912105756 411527287 939624857 380318453 161451785 727723518 897081509 387388667 416678403 637995066 647350956 763385170 408010118 113670193 493735462 530934498 333396578 138115128 829402743 11348135 168004823 900088229 887135865 609518143 528757566 857512492 664597312 158896283 473981950 364913717 257841274 712316062 975671758 931827780 800233981 406075796 491159071 588211968 26090444 574071885 640966269 262514246 402643550 690204288 179008893 319495952 673264584 407293264 712009614 859187040 539331998 85234897 285383819 831935893 889552550 407904330 969831380 525832441 482724416 733985641 986209547 353276314 917113789 444794040 721388500 792961659 879914384 749138452 410994596 108853944 695448825 304177305 173459283 423488426 37228396 411344681 648195172 857077764 633179349 958069308 808576352 889468072 834936421 146671482 77464865 622962159 323570090 233009139 194430967 496390336 714661587 187425205 38742032 986179677 432101812 702165048 10395284 189808702 564702532 243157382 186714391 428298626 57774888 571189213 167994461 343601570 785005069 983361390 22172421 613840920 767599343 35216755 200086506 290988107 773336306 460959307 128595799 646917671 946448809 331337350 135988516 85259413 102553951 357665169 430344728 375872680 717439350 410464295 663218384 285562341 953637648 924355765 867708840 95833189 751710057 809477978 402911938 931872060 750550234 631088682 992648686 862359038 187457610 360045788 892903835 313021358 642593699 442608540 925804337 259781486 607297152 136999750 823688004 663617208 284689653 408125890 27182829 68316364 229264654 640410156 204330336 848092884 651614202 701582655 486948389 919577343 304129619 899497824 982088915 664933886 894404519 82046137 549026476 213985518 220564300 518135269 567160781 676536248 381771256 83098628 161560641 768999581 724714217 443685539 488854021 938772695 405211061 985939050 642261581 884164716 603802984 496441337 771291252 189199154 685973537 290423571 138247207 857440793 498205007 827263015 511573426 479951070 80198486 122996868 157363012 72540636 49305083 483971142 681461929 752775586 288621983 517256022 163211698 944617437 60413422 251010897 909332331 319420288 76772089 59209800 298717713 511731474 713509221 984992628 42642068 189325194 413174435 96834888 322965822 5913926 648069100 738896154 912353629 361494464 964554784 961635491 321802954 725088726 331826700 995855260 834172853 518757328 267498522 992635933 463333850 135777591 134756175 887693179 110706190 322330933 97989086 114715067 582061392 827977758 714421401 127774084 210818204 724498585 21447267 388679329 55440233 464219679 213391512 967057816 464559393 63388089 384570662 484373104 41446914 72736143 966171934 600275275 870578370 144359663 728748897 349931082 325652775 909641946 549996722 786228310 955876209 153947689 271408754 366198208 897217888 635098172 474656426 277504867 220395671 486907168 825204134 727548203 549500214 475051155 590308398 149994744 885505958 279554763 883210966 557701431 900071661 647836083 262365958 940596866 831200682 40593380 146734355 964706323 620941002 935481306 40485557 924479440 360055770 275240773 714802490 368936849 381593792 180188910 772585727 681802481 263726910 793886305 28302942 103723026 455645117 130803648 537737229 404199451 777309006 384291138 113402307 346643109 413014951 496877843 659370992 466805687 52363443 617840539 289167955 698579902 235047062 687678665 376941465 982869852 795322155 107853441 610782128 857378937 207785611 884511247 3766384 326713641 506374606 414407390 40545799 871774437 652976895 185397132 563584692 740051074 953583221 356189125 77667990 252191220 52209940 163598561 295053009 953553434 457986108 299629662 584044792 281453601 783068447 665994496 648198786 805108115 782343483 161965172 234984973 567518533 381418493 937748021 896263289 572110472 344375132 415515236 258558698 556574272 343344441 18028057 124089177 663667563 168981173 261219272 350113709 322858106 474247041 154741002 284475270 184896910 681198653 865195975 106277429 714648410 25038348 151449711 517785907 777199803 875516284 586947739 476554985 916835764 222158378 170149437 820264957 767440020 668060485 592622581 329221570 641808173 959366301 355964922 768923668 262818429 215753563 782611318 621915954 407449149 551789696 292611621 420563785 209626101 723073396 435200325 174110417 639122285 408563609 872313478 513927541 952591623 445117472 515782390 798218906 683586120 636126929 444305761 32357766 94502268 762376265 511754950 535441669 947391164 120288768 829480105 933817242 181724872 349118702 649702132 734343861 59316089 407427574 117535797 78212315 310444340 975833798 956842495 362106934 311902476 881118863 960993037 380698864 136731368 642359216 217903208 608558663 468798549 478621786 622158183 463668923 993893784 616844690 36192045 147975890 334429353 139319069 23598156 22677593 390686223 877821739 984698182 993955972 983528101 547157239 883812266 639962990 461031310 509642137 154251253 520054607 47783051 856585591 311058678 415682050 784715970 825689253 3474330 371852880 111647885 118330698 831900417 610493209 773819404 115842923 467846828 729454853 778134810 411038435 655116966 444796938 460582166 72496724 497335888 679778986 331433483 556735804 752418887 28452022 306797824 254286215 623004979 431194610 205048292 693092448 160986932 901737141 65680426 326731625 644868250 598351282 185631338 203538109 171447815 330367916 400844302 706366277 458859922 150694009 465109527 8601170 780135616 77614361 4428436 619170265 858308379 889768884 835919893 616227634 982014408 389214871 591726085 694826983 142835115 794470829 860258431 661581885 578986638 744011808 487023385 818450538 748642357 985456199 101101281 81736906 586498367 864754049 710938355 78416209 24397281 552442521 760710867 40885884 545864840 552758377 973331971 940487344 710579926 27512730 670145622 257387590 962269064 556640025 446112030 762988186 156347518 800358737 732451992 222003605 625685620 972720054 84860550 134313134 566679294 41763533 71802478 370990957 414127458 867086291 832935582 596158611 9125125 691077100 937899101 393033030 853175893 857818876 317698678 630754522 328683047 357610785 728092579 915682318 981571801 690045013 649075439 636018013 463294645 876675302 66331497 401789741 254639728 912624309 949765327 399980488 743189403 185847400 74993193 279382012 789927849 302755239 974206262 888407464 63954265 283647691 313282638 830511697 633428997 673586508 108591490 540003701 392813325 99748225 243263807 474987174 895508306 509886418 855235776 837559198 532648828 749352925 818359506 996549400 836937780 2019319 689049859 822114757 494796772 897652880 497532744 775674438 438251836 499344435 628921544 473375507 700470570 737135920 559251106 778744791 946700187 179493943 11407431 485410441 641177658 623946624 478825115 509771076 140104490 610933940 465977201 657724052 516644764 737005485 5431513 850672058 132419436 383789066 411024062 869827000 646385240 15445184 437791442 856342189 17741824 219937275 624588480 438907800 544352679 964535084 456712143 161128691 9684303 619616694 859841535 374356610 546512406 260792014 942217263 514603961 629303274 462628700 537376070 124974624 740533450 369003504 788065668 282986011 541173543 114109036 944544634 435952809 378560749 173384652 88789020 163714806 188681060 163716786 855203845 553568738 152854270 906442755 993062942 954298819 64340940 676407650 894819502 151706916 346803167 878405103 647140805 849979844 140113003 849657332 486763875 38765318 718246176 402032418 791437301 417400712 423502769 135187616 607402419 717720155 99099329 860508919 203165820 296721125 801889031 470878899 187591075 570404623 746316790 218180917 543618958 741329193 572881592 422490426 905388774 956861008 517964158 278848760 598966509 47053635 240256491 92353939 569427240 8220307 92296955 788170449 821302820 228225789 986394264 808372725 876710275 537281337 268591455 738891522 615367742 526688094 444024103 862712859 610537798 388871500 676549509 832659062 121330658 83467616 111259919 592629445 550894559 7316897 190570889 441168368 362041053 29568823 394016173 691910214 499782083 188099638 300577830 720917407 58954236 306570844 982810708 884672966 317204753 489306906 636533244 847779439 652278530 459252175 974347572 421132330 938683852 197468131 746570684 31944315 152428233 668945727 663055331 816377774 675050688 557481103 881254320 950217528 174968659 998803081 801204611 811214924 465909306 502669438 393719691 545632096 816869548 626848596 511565363 450065151 327746705 757340255 734511771 41985380 703914376 775771215 546133720 697392517 856475148 322113243 16715604 54752038 91959373 667680565 173230624 137599559 329496129 14477876 494184810 392770643 61452725 317107422 20562244 928268150 249363544 473814711 566483150 698459589 181328011 675310056 412276753 849646249 392724193 393523413 881079618 630913260 589531232 202497224 391996584 519576273 626321678 383684499 114317170 659420937 150226559 632694472 516623304 842955788 300692735 476553444 112454705 18286214 871192680 878744706 26873879 734404961 395278719 51003409 307482021 797779835 18728773 822446503 202505139 190087528 856157907 292373217 187077102 73438583 413251877 986737117 412341385 911723374 608127481 833773517 382504078 371447510 646370293 319560635 225729636 36473967 544356271 297856278 974171733 517349299 27644831 968385222 815483439 695136702 677311163 134319813 55035640 868959310 111534443 487884559 105654987 743444251 315597228 534858393 769369471 918680227 597925837 115194786 159639822 907435743 485495273 89270745 600275016 9967037 373726662 326474773 457715140 733027699 767966133 597069097 620999638 790554458 948338052 442575623 800907000 770407572 798730921 554993200 136274340 374379520 739399532 968700424 57125950 179352411 44539086 673710460 459543390 591318505 318995700 884242348 647906150 873027443 121984994 18983693 987584936 27236544 687371330 565622822 150004733 473705777 996813016 310761869 230158987 491337323 806116501 518037275 398845942 932753974 511882455 397996410 369639170 183782702 148224307 237443743 624970040 83602011 20513262 289184032 495982857 946251229 117814737 464463053 725831332 321612711 858368502 240734607 779439237 190426841 117197001 662406044 472987694 711967057 251185452 78308214 38303206 385530585 18427949 879848249 106066725 748343335 363988208 20415690 343578700 108017893 879365957 41581044 140143541 911638620 626723539 91420823 200020683 266600835 313816681 807808879 635461416 108991119 590588342 687953546 622989920 361124115 742308944 400412726 127696489 194815822 992596099 758813711 828138576 49459057 727958141 611197505 769767536 321087641 605647126 130811609 664741416 103237737 42037884 4731894 447628894 381003507 478005411 258966666 777220069 150967069 352866685 23824340 455661163 137832262 577792414 638010965 722896117 110876243 703723380 778173343 391480782 279958173 598575077 20332093 679702588 698981888 410021154 237892848 94942904 102476320 249426290 211594916 120678463 642702258 665709723 45966817 620365394 595619851 580755926 213930355 425325094 160290045 799700385 689955826 618983338 173698606 624769792 800370981 17982300 930739887 828767236 320011230 388635882 504197138 482677030 413710117 420052909 158814574 760418433 697371951 86356977 593446155 162898884 581079574 559546139 117432638 55948856 253041523 684864782 505315650 900024597 805266600 641066616 941961671 386909490 990430022 748510919 758451848 347816699 311878803 38297941 900633703 822293618 536560703 675424164 791692554 796977717 283183391 323709727 276611592 90657631 773407373 920827776 96962487 4590685 726852246 945673826 929575210 446389576 50633567 725504934 519082764 748897700 513358914 285270873 807357012 962152680 339944509 759872301 314843240 577582162 240499545 237234874 427787003 782117596 865412935 415078001 664778401 703027193 468441579 851577412 4951576 129763008 503352209 240730987 129467818 79754742 71377836 554505087 473989841 248440624 74169389 930037723 522985560 327846316 503463953 796880659 776399770 278700371 202619888 366138640 150300225 752604965 933962589 26677203 886290875 462606120 864682407 239241781 91916325 400671969 324961903 587221851 290583748 1349365 789751431 32453568 587178296 332341217 114288360 201529102 740024414 388909994 963230800 220879929 57369927 934916322 112307914 164466663 709086412 986449665 837854073 309893155 275625156 852622258 626594384 946881867 776110455 50949868 127849823 841820710 884085154 388093068 847389824 842566263 405016124 780330345 991627408 269394134 545116332 895486401 264641193 277111442 666763029 603295469 597675558 189566951 209051220 465989087 929154954 641848996 51778083 504024816 740262052 669280306 340398152 673607939 231985193 902050274 233229199 741853381 637505225 884984607 441757775 621845813 365549963 30648324 54050599 925642905 555514668 704999757 475172516 762489389 622486849 157895384 243443898 976361862 798594526 41591726 828492179 351885360 530467687 85983003 197789018 112823992 826304270 714833981 654707289 273699427 990309482 531518205 867574047 795506756 425338923 676334766 201282044 858047456 624202391 601241814 176119437 789042090 49804265 799727072 514943325 619912419 868080010 948504466 523184122 985122388 880721084 246635612 711095470 676002735 730173266 161446259 784213390 609800034 114620732 934668107 148260656 761592246 675575384 703901525 296843589 735204851 858321386 219451508 109337139 173518115 484397063 966501418 694202444 231376195 106793875 960574608 98172241 410646107 3630814 617067406 665493342 109438077 120446889 291039208 249805960 162851278 902515084 402096326 561054415 96507729 111542676 261747322 675838148 853719019 9642203 260458418 5518073 186700590 169014636 78925728 344148438 382157957 851945543 299647169 368247032 705481760 573718793 391768702 408108237 124659704 221942796 413047812 974814875 649903493 796421778 708515670 738154772 136019735 660577748 777908779 743762410 789735558 489425504 758067568 304491916 441371673 894125292 156126813 952532344 57826712 457421484 629964217 79814367 925145409 259248167 595403162 597184907 650823340 149996424 872636229 713464448 310157073 27989705 991473893 552772866 576987228 471178657 971904737 397709813 683324558 675801554 187290302 697804616 522770288 454054035 780307234 378100644 752433889 362975024 157039544 230858844 876288497 487400147 686942147 664194132 398749705 510580298 630552962 342246807 105349478 901167564 620922617 420686510 476773873 470833440 512933568 434835634 93385472 939296229 226970845 832786177 413258752 420526952 276772503 596368435 284531987 226774124 939716091 136562594 710932682 93002766 95284552 503593453 677183879 803526056 479624577 963916528 715883453 313482253 811398633 828186180 16360115 636284944 421526882 879980531 761226776 474812595 182937341 159122929 998968076 247211688 643608446 608528620 612399017 794144581 850739018 823643508 99998444 18663131 130449934 345799992 197836901 602701335 106228782 482657048 983052932 496513069 612653619 975473564 255103958 821774628 113055220 611298660 571738645 944446575 142285405 403880497 840771738 846159027 444054813 412902474 705341289 583817071 255714641 469720442 941577494 494220807 646450960 873458596 743538431 357986358 200900867 663222293 858304340 890831596 430176568 971724830 59250324 702390568 454465415 264849980 523273776 370578486 797203906 648484627 929990422 102365344 732162498 399784538 679785122 252126614 226315768 220348243 97936096 537387954 766387723 442987857 999194352 53445690 181784011 556938309 116868029 401004598 714230304 370464558 310586497 70196850 394182727 522788167 800493792 492017283 437754836 742431262 489213906 21276563 106842609 199100858 685956212 522185625 262650923 689776468 767536608 283870222 620205912 843794789 894663891 870659035 335387860 269123984 86057456 104313821 153831296 754694447 661628936 142854126 916816514 563286391 478995498 943015982 779396791 586132588 768904446 84702594 314685135 485416966 830372575 108174351 789808864 688502663 42389749 539172777 373410527 61540509 315903546 311751499 514975445 29730188 62844946 180326139 705273064 197439950 210165563 752254877 120378839 790151212 821692848 230663441 870909252 236765490 486688508 82500212 242469026 501119935 673698093 121780957 252610643 690250409 7558916 232589266 818088012 745986861 724398008 286221925 497455431 627199914 291062823 677109481 985782852 139464318 884424795 182025241 766633776 986381819 686356186 307233364 962189136 54494858 81965236 254916220 998823647 201141249 445673319 432601490 260906271 317999439 461146752 156013589 589586341 215242754 681234522 81115199 560642789 192927579 692392813 770454141 193396652 195849044 370365313 842490604 933481680 312606203 974768126 676889695 64035159 153065017 815274807 128010451 36847768 993129916 917964781 375331390 616610498 957826517 301581253 424654484 239189443 989895256 399548617 713231221 398928758 931477249 409691766 950486488 382184317 409108529 689127845 68788608 606504489 721539254 730274452 202254446 911465625 405528670 801679587 285092211 285924792 329822113 59565434 51211895 588142876 357281766 339528056 492301269 272784854 378509850 359445906 967510790 222597653 198734066 678035867 673609922 957840032 285637387 705051654 23918646 847488645 990284255 607455013 430925378 350156807 430065841 555059755 275566498 126093350 449451788 798075798 994606698 151297763 241191147 398895221 390272955 355458830 910439373 95219225 710729544 492624444 89968688 335221452 313772747 730626584 950543374 715529691 751494760 975059156 704913388 224180279 205070507 819746112 431229094 893386311 583735846 544005055 687970117 725199740 860446412 58593949 506731702 300953734 705727072 286020349 198885448 415772901 142756562 7647556 712984389 688020763 826796315 484360043 618994987 894329329 113726520 409411212 769227672 218844665 936208747 794482880 740991988 196180158 269482820 382537601 307034348 143077337 199965736 16040100 72757508 795056154 956494285 178631294 494760314 521082421 476534047 568993161 619982455 76119616 515967682 326622164 2090411 121103754 667863201 774267296 826213667 426733615 914618506 828787620 286175231 937402132 906979786 35491833 383332626 624147819 576680082 186297446 51288779 389349118 228460716 670390052 168768455 224254421 942794974 523964568 760452089 59231812 303239002 355487279 458788078 423683148 113938259 818110564 63913489 980122968 975414149 871334441 687682984 371485513 586058929 535939334 800620447 102210440 825733666 570139278 417034428 577615952 217739613 749969715 330280871 647756451 112836227 646303543 993482768 42944435 332242067 880139817 258698354 921575037 851131105 708009975 993758344 593953070 479470858 122157151 539800747 804756597 93103130 628615110 398976673 34516848 5388584 699205309 260707607 285385779 796597175 919595780 572100839 36349525 64529862 358335966 855877986 562068384 955997998 845789752 146473108 724038044 464511992 4023721 748779614 533457999 822772770 313128200 883070404 706307329 189377926 367752309 109618295 387013705 96474608 821947144 504521588 74437769 929492039 253147961 794133581 359755412 436322712 970345995 23811263 482736138 571865024 573489773 106853780 377945518 520511427 878298657 134039867 78645052 870141103 619315770 57499529 930009444 735572172 356213942 95778856 143879981 806986513 113300205 994330613 816520179 260942009 149338947 311838917 215248322 290364695 71585886 796479399 556078477 18898502 548179169 113287349 630584655 843835479 839536262 366104060 478060983 275870556 665853341 51904951 985364952 47739642 243316405 967486965 692388881 706601729 574392582 225313191 19937478 413296655 991731211 58466192 716311058 911810272 852990407 64433539 896675254 75126358 319677750 979911555 416951042 990141176 994825777 446627127 613955712 894636229 551122860 651443795 582098972 409480637 250512190 208017011 93959818 740843082 124868012 2428147 598631350 225524518 738510627 963269941 196716176 814797683 884220842 471969639 164157308 361055214 993531161 986029698 681011166 459244953 704351095 52276794 64849358 877763994 157129370 67562479 453754013 825977801 431757683 797208135 805593020 995739615 712063552 236375286 995400975 59172223 470039638 731017677 750659284 281787462 317607835 314910150 167586810 233747647 708241251 602272772 785522434 805469580 481884881 939897764 828610484 781816590 560607058 977728965 642105207 941706710 512268692 703347726 108477134 885514994 568349476 14171253 514409097 502504603 880919117 38696849 801590663 246738715 254889831 644865215 846895878 57964092 943198739 319934706 959652728 388147399 179611084 200217115 680692833 734978036 784780968 997029147 715134488 792506003 362693444 28321449 467662203 803056698 672042727 710377096 618894583 436557954 410845878 191469220 139255090 504351075 172596048 900783143 820255652 286410505 598067905 805484252 705667535 715422786 352665086 953679503 891101608 37114309 42518198 316517049 890301101 891153205 377056689 785791836 882256601 128090831 820727977 703858824 653630491 97152908 440872936 881079490 560258464 618311873 525974689 982510964 456656595 786993721 739585611 580493812 806744164 779736009 931161107 416797983 957415839 845096833 628685592 659753069 411298603 406209864 893979105 749863387 801018130 212054119 485245365 942793354 484091146 927252143 621778499 959978059 950358404 743769195 597592462 950077708 668359254 627736134 42737421 591819858 55530330 321664576 801575872 108556468 361016654 768129396 455234933 755305217 625559796 781325411 771171998 83699580 414211188 417046847 383150040 235426855 278630020 706458568 312369684 648644256 895076263 615542926 937851840 499086174 876526158 209626989 750369103 554128400 93198969 498293577 590060827 436581089 189912740 283318725 244121164 38390031 469972309 265540497 115282590 690346395 124690794 876890401 997495259 58041521 971005625 600215935 40648751 244920808 208651297 814852054 691433813 927998131 772622236 230746911 17893266 87888681 2925915 542617699 145463417 825652036 118370830 13137985 108417641 341094027 719534239 77447115 289605441 482449378 12804193 628882168 703337536 132655293 575477957 38988933 698014405 545733840 45191676 142413819 507787123 966711976 249526903 250039615 868482723 588616859 467893827 66580484 901158188 257486722 335826327 24740853 34968793 797657877 452682903 52901327 146374629 989867432 45809867 353698074 778604385 407623353 687403057 594377535 407900420 528020033 680886963 467854999 10638347 716581629 136560543 967453466 829333209 77952556 207297690 57064740 225223671 477004616 434777211 671114011 255707545 651680041 720517765 602183964 285599422 274190436 648111823 465950450 628985612 351032848 637935754 520437853 444665329 66418287 702238863 558694905 308767547 897678960 702090695 719925470 956610680 675412867 956324540 37532251 813955990 305860753 208607934 455066791 974036565 572987284 632391851 640582068 217382423 2358939 962016459 547542181 876371861 955567083 997458842 521978769 752128744 776569388 79544969 406847715 628224376 31664378 905152659 16203162 566375309 499177070 999988795 77484140 344952742 947862292 930269271 486101468 573177837 29244967 664217249 3642809 909382773 112895642 982406147 653938175 96950223 239365685 287777323 841498408 278840571 686005273 642653744 775544776 991034100 897562173 99812895 851722768 673103438 986068276 854751167 379263638 303148785 158774673 472745768 415571953 18671671 758161942 852707174 576525716 262764694 763024670 498940031 657970440 846839715 508723189 544593663 101449257 958423034 660987217 739758422 239511785 289302799 23764598 586690463 182875113 733885198 464800585 732594880 850613708 935208411 961441352 919566501 313615767 875709649 428566897 850856358 829419422 426365182 862453190 117473318 677741763 958388269 282180594 669112723 311264132 142335991 499325383 244805666 601856491 454234883 511781754 122366278 714525130 414186636 934972156 7600375 26667137 259510156 340649247 178795529 773803507 242163568 361630809 81383482 115250763 200399296 166202463 683814625 341648747 924787401 383852606 285714720 694051449 259642354 662912706 535898033 603057113 128174525 700312407 347956315 149774845 709661431 695587863 228603602 684481361 379663100 96054153 143432995 242449901 375912049 630600166 530274267 77340378 490420967 242983607 636348244 937783924 617722986 662024918 304399512 394243183 464132658 683287131 460179950 651735050 685025673 295568367 276656563 616516508 9560818 568410512 292114111 955868832 933102869 741905503 637091072 1936000 883708514 477167368 752873143 688840099 663800120 246129329 995532318 339440019 803700133 749241496 929012820 573006190 427334250 486231594 615806224 731533344 714633248 628392606 933291505 18694119 631264814 337750813 668385994 254846814 981983857 578606773 245278865 187919067 803527104 622164735 169406360 925192257 620090597 945728320 195309796 11922507 35077307 585585485 521050291 867603172 214962346 110353451 750434210 842130884 162713748 743098479 368233999 166848607 739415171 392296703 610470846 867296802 263063662 207318653 176668207 340377470 661151394 180042236 505659792 391076032 86019014 888812553 918281134 486841912 587877225 762550437 788516504 757987150 493023149 928177903 879002027 211456397 859128158 20890549 300583029 244836898 333920103 693635046 425448197 751807850 247293857 186382418 521062376 935084126 521190304 228392883 185311683 244199073 707427254 848949754 151707082 698874882 983654919 382304172 254327180 739592525 14093065 788059702 894364878 167860984 900283738 494616255 427957794 612140182 996195992 442288053 297018917 776127882 741320184 339735233 838230257 898116983 94498416 983325849 31601381 707648328 984589186 610822968 636728165 119516619 863872783 697335749 35641494 260979722 513363874 857223333 424068406 723366606 812465163 723932540 659576881 666031943 322549701 961907794 565831382 672408306 956922218 875846692 537078569 162721237 654507288 157889069 708137438 619406887 869569723 785806862 204919845 753719047 457075967 174953743 850924143 553260849 117846938 962723133 392937607 387947489 741986594 503053070 119403083 500096540 319146104 602863184 494667797 999235876 322646897 890288346 204768469 952422944 588350448 454039258 421592280 738662318 473588599 544050684 920128684 225174280 347687854 859740400 424825782 109804657 647401358 489649881 118020516 107675367 538649617 773590804 619876785 900200254 451367357 647080325 74580073 71038202 57837454 533955356 728124018 821631275 978845699 662852463 85884402 677540902 384212764 188397862 800773344 636611078 87585742 248963187 631097155 264878830 688348013 217518918 518808885 234717457 469387001 123193132 173860735 555255884 980731157 453893581 524561736 918885695 898678650 683188891 631182107 499077694 453010050 36036057 95670198 577286463 52771322 952818789 171723407 446169672 312163612 913370221 269861302 517771948 310863472 622995960 380005958 783011225 486070274 858842720 83493880 999884991 57811003 807985 329814761 653413729 243027775 761433316 327749814 624189389 319980867 832191783 93382140 504837663 969089282 524873961 156745343 886162271 148058127 186308064 646929801 140351077 412455274 677856135 912752115 649760375 859910217 883540648 400073302 34563754 189625714 839175134 516580378 211118784 549033216 497710454 485389974 21845683 626097041 243064983 525318150 183375498 594882076 642318132 233268122 865878111 101449680 752434601 350059614 854701348 219487421 54603878 286925559 907871034 818082700 263373848 980573770 473278057 78846219 277643868 48020559 932852102 675183309 889943388 134020740 707517595 640917734 535374014 519759373 448723227 740757219 266582819 368032964 872944457 252698756 784308095 851893544 716183624 267621409 485157924 663015376 227989833 613220831 23051225 907835186 725595218 942237853 953164128 425925678 172423521 282231129 445624477 129571701 192092802 307347321 188313266 300437919 682296019 922961293 47236573 479733916 602272429 101235370 582300843 117405828 580502831 45198243 661643119 759461440 886887930 465938601 88482851 910360949 298375137 294903034 222016426 622635223 832691668 173415212 10792890 256548288 751425810 51228420 951079618 297004849 502174474 954915115 12768658 293516338 281641797 172880255 822910807 376534273 397863867 962178892 693045466 404265140 44765621 722378483 921896034 745247104 952520919 951605613 152056168 501601595 679737932 838421766 976384239 698507668 554623135 432167428 751807828 42343960 19008878 956806949 323482255 424480483 520801203 353760770 10607925 680464351 501782843 514418585 230414681 877516982 403221299 980268102 818870246 387754708 208210658 863824753 667689530 582880264 843202713 401968631 517607217 387331417 385258696 611133231 830696536 847011512 988322720 798407597 430884226 846079730 44109880 571151205 353081325 191400677 638536950 482541202 38185337 260355086 261387805 343511063 261761686 212986176 331626725 545979174 705664241 574744079 486440337 117924809 356065226 35321981 27785150 365545935 235382409 578148581 441612303 664852384 890930447 191491887 220015921 900662969 870709303 100933428 724137866 874666518 155653080 217370898 991659091 403939276 170286992 892854570 96859482 291442481 297657550 718973321 917813195 300389307 117774815 645522295 926267569 593775972 138311415 601025962 834211279 987061353 142767787 410259048 966933740 533805002 170202065 6974495 257905311 963977300 220226078 709861972 393515576 463062646 145633415 393155456 386711471 659883399 662811104 913781615 829121447 72709258 369705661 365901333 115754409 340577521 860624003 376704504 53693287 679888628 347363660 962924465 706766738 914466086 917558016 21568810 687956506 86121770 689061409 727556475 689174473 745600620 362785332 495840624 867418169 609176338 649171022 462099727 619549775 566804456 227871182 71270301 401062470 216769440 591910536 98596084 911470933 576767359 7290869 640387445 496694061 557652009 694726019 725977003 683812901 12824661 561704119 152080697 967423334 397964231 560497786 919950421 973220807 278878043 193377544 961748952 382864171 549345015 989407294 419631636 287377191 201669958 609632916 184593278 237723145 700422010 726383654 996191267 349369882 665600491 256948311 127966325 841311530 697711971 325461153 383612828 261102550 576084570 137450020 60574190 706167031 769168414 703623290 470135683 21976805 1207340 235837107 718381194 905882250 222764640 391267282 867316142 41165064 415008353 306717655 171649944 845278321 346662539 907259755 712541504 744195187 741533264 54566240 224600827 478607033 55682725 745394568 65683263 224025430 804892052 103211937 237859919 129115787 521942477 478076676 235824076 906981785 123393483 256867757 550460254 673204024 212949478 766848088 622661515 504884108 951855035 241006254 468013077 293608904 925740046 597958901 594365279 238525181 137463654 396566145 138182257 748928509 887377003 665496127 897728329 567232925 497339770 134392309 974280378 786481414 659119066 560948001 740483865 595457375 915634372 915672890 117858298 827795673 290284293 162442967 175594460 561291867 139726202 531578928 613652415 544905250 580129643 855351693 104356547 314782049 543058592 358237235 850041645 390059271 172998998 458254216 105520259 349699003 710013855 457151703 654380454 730145668 119242966 715453127 437798647 822998858 631753139 805215053 205990499 236438909 703174924 743236847 82915803 135566644 265825138 761553154 651093812 977952560 851722070 601426687 498154312 400409079 167970163 598215319 759152398 483607275 368428697 599356562 903640812 69877199 390558015 7803796 16223936 963606986 45095871 815330594 121799605 317101294 822685382 585307282 829597814 260344189 930094185 129203834 370441539 150707231 843330682 998626858 935124507 770461708 901878706 32644853 977548617 248191530 772630861 73310445 281399266 435118877 870840163 393947834 529341646 323430392 244405426 74291306 717088084 672173840 352572011 493675259 16935017 736846247 488787199 748569859 710298173 998084431 192361922 265818688 473879169 900148071 199644214 518773881 182618709 436527916 367958574 498529028 656606702 802809403 919959275 945131109 361560903 850437172 985904447 972455816 284439355 487156451 955589546 784853891 500277010 59392765 420857060 573287253 307376470 133750121 895589342 356066965 629399463 78719015 91659263 656703523 558474111 61619690 459590959 572237787 47821771 767803997 311726644 918835192 811479844 382924116 431469206 538970580 126095862 113135855 605508668 457717446 206084602 577519811 511411895 498598666 181868357 175372222 584183816 271401908 18492318 574621448 416380796 341151084 654739774 769303785 241317356 676095881 437217996 925201964 954051512 647049989 635244877 284296736 805698703 986114512 818423726 185243022 92057847 133826437 56665390 700082150 51011892 8953575 748062239 55395270 808658991 963678500 706384307 144321230 911225417 154210807 585126266 577733929 388722765 684037219 218425154 746787138 177312636 491523811 708537779 545951232 323667876 616680316 509340425 725628751 439111946 495036069 788072791 445448986 396821234 797980262 124257205 771690561 506146721 205002396 91115704 181325797 734255567 854067255 113165542 398480633 702734723 31112895 428943332 839208581 911397515 659494841 827347785 782640151 36207740 684955811 979495163 302138066 549456930 921477412 203026671 139550723 813185037 25137426 352324909 996635652 159847769 996666088 625758342 893805862 561119041 258967201 53957894 85774420 561869770 109446476 754977434 859277336 279374746 365427078 332900943 144821687 819517720 707115350 621176708 655289414 980159099 396192940 991564531 226860777 579400654 307471075 583069742 61349910 870916201 15609635 81834586 290119976 75262374 690097477 748926203 922869826 185400663 870719286 636211543 145743614 447157311 372687605 704869067 740161518 17134131 663436327 631497552 112250817 696151010 545894185 23647909 77357819 730110991 316516568 506943386 475137766 492520947 68539025 927969119 587389927 848413484 529369256 482498151 4885056 326848342 883023367 749454181 801253941 894185480 622028268 409385896 824341975 860728078 304726123 813266305 846043268 740958839 76253994 174345052 272442495 263130982 714136793 95989288 962680212 928258841 207870315 588758355 387360493 172653819 845941833 892705583 462050860 230624206 188167504 215547415 343572332 768399189 60696253 795443270 396490231 662491287 938546622 887517192 792992451 284812415 954459605 475615011 386631312 125474423 252908302 864703022 538038436 921846601 474365025 55668141 467606401 745150410 597182682 435125222 501678614 288252275 492778725 701104610 933582443 738733873 16260546 635932223 266836445 731843517 49289429 486361288 875566866 906120559 987685432 83347694 506842626 517975342 838977897 12826052 973967453 351683636 444624576 489479840 24660182 562665609 824445630 780180899 174580030 418460836 989951195 263340018 395282419 894362462 417500185 914610260 454233843 727962469 259157728 578461677 867432142 271930548 44700886 430594203 993453982 528612962 251408334 863126415 8477928 93537093 284024779 700375719 790401432 319090759 434458240 739583704 590779486 106438950 621451818 698719784 197501584 227110438 750520879 48506863 680397677 119452325 108315896 112751376 790040299 581783254 743836248 3835923 55424536 834354451 552242433 684124308 992629146 720489242 192639730 16821776 928393740 63623568 31992803 163034967 747980861 81808841 86563278 967648985 739627118 340424192 310380448 443917389 337370971 125285731 419992161 698576462 681607264 15224106 595876861 376192269 644711483 318146268 10418260 187986134 127506590 793674209 89813367 690594098 41182625 36536658 844306899 169156303 550939383 178284042 103052255 397215808 292253113 695587645 517823349 412184257 13127533 747998214 384967137 148810323 229004158 973000927 610789917 58700860 925856910 264507334 974813561 834041172 878226981 347996968 951254599 596976555 541520651 27048517 446985238 860766676 869835904 569417137 540241162 280703765 493183194 815835359 281689991 408412706 17609227 96625990 965486544 251590229 789922515 576519270 605456072 505405347 712454991 691263050 383497333 790407004 570211360 464555052 310637099 687902431 157766494 907894219 755731308 761001957 940642865 980314633 446679621 621161628 181601833 481076821 463939460 492776499 615857004 720941988 723197367 547091293 781132029 998716271 979821899 4350206 657509944 573145563 363040657 160933970 618976233 960096768 549478646 425591309 351473230 692767533 800623976 61108646 669500720 649462854 855082783 274096502 415116037 203993162 590919977 648912960 391564612 435103999 751974619 526594053 454836294 177632471 576126795 183984975 37123682 942515901 888363166 665673838 273488169 694065976 829353347 714929861 639612979 309022941 889676794 864952641 234730142 438891338 222862202 262745988 387254371 254100504 671630170 141661049 391049997 238253973 326054304 219591339 431699192 145485733 296313615 522405445 175837643 52022127 255672891 393280118 557705902 250247117 484058880 632350500 433059229 527915667 559695267 656313357 694516391 402252061 730293431 19426915 857410773 951698683 973698190 587103364 122346415 440037789 558962229 607326388 691016058 740635615 543233827 696078419 312728498 176277629 873976207 260545238 308191499 505501859 748567179 719963475 130493141 226087397 857064085 342415846 689292366 935613624 53746177 370893187 515720770 425237538 988036454 806704335 946235376 840434964 448563671 865732265 942296666 390983939 426431756 464000690 101271498 249392071 51064044 306021673 750958739 560283071 379251007 275833907 536260408 80823770 649498272 534930793 117016355 760783320 860682437 766312182 430282614 622951666 33763432 694451910 454217139 602364670 995648061 27806515 890465461 81198836 968230299 367402526 392963432 158038397 52373543 891751246 576004721 113633030 178609420 149893309 575053628 653856657 650127186 847191297 888160806 397581015 569057996 850376246 943130608 901342619 914159934 660230335 696516567 705267199 80599451 573188460 929697608 957765431 673265166 709021311 420007768 554693746 821741034 601897229 726836558 813248187 986679262 596830876 796121831 42771604 454338574 633922467 663584407 940126113 158122886 334194415 799065111 196285938 761233761 569418430 982824006 326491691 369260661 24445395 557039251 724166606 964640410 439244752 392895457 741910636 226847356 371273263 595075314 196559551 595026149 400429013 791583000 320872190 524314330 617083473 761512623 464983134 582749499 761036723 856742622 25843438 365981062 205137733 873924481 634652413 96251470 839101867 498168193 502472644 776686298 869922062 273440271 282136176 356068811 104961691 523444785 595126403 636736915 81437748 139934489 715586468 236562480 510490929 616561865 116799207 722561922 415289838 208954857 3000622 463681662 952262342 637552164 193369838 118170762 538277753 767855947 901598529 736687461 754263128 835761737 175987372 496031192 561820190 303641865 692296811 296763317 864375150 185956427 997758803 99010795 304000 125131953 99741153 996920767 104402634 641087707 921308613 885265722 902450785 261817267 709425184 634118677 60267419 781254544 959781282 189304978 992750038 420823953 28240704 50755460 238524185 663590007 128518089 898344618 473268211 911638664 119452869 83143833 705962571 449215251 965383561 142450954 812790171 311312888 869866058 695304084 520796503 701927587 565140485 31611721 521071802 856077415 380188894 758452290 320950609 864417473 359127977 61946401 614125486 227920777 20453218 404602417 162393315 389670669 984085808 242356489 396605568 6331167 172422880 855213829 637727272 65293776 291114420 197741699 623274198 965341878 277714856 650156662 804749922 761159621 856376221 895857509 897834225 969314690 812472479 322384303 184327037 392778118 788857605 509288424 212720033 29302097 474834468 350031099 336679149 390410663 461439130 125592462 649535702 505967597 33348095 304754741 853607225 137751847 636995215 465756191 524341626 626830345 85759731 878039976 809490420 888975946 972297769 760099438 919064302 553711346 3992335 262716728 253675993 533599016 108595288 395812512 204053994 42820608 695713108 630610248 748887959 940212510 109348098 91008598 84676185 846129263 104128977 211692230 859070501 702385388 443051011 230821725 766204871 446581625 268531299 832111951 302318033 886773918 339915052 603599712 546129074 84292803 151105364 633557182 426706312 591703935 257370961 983845478 73205445 782055693 384621619 334253489 410062517 530429425 949066348 779699969 298267451 78671381 34403423 439568572 32676133 514602840 494987886 701754186 880542808 737733713 515709708 346640724 99938989 458109631 888510331 640164249 52930001 856885787 465432396 156194615 216504342 98128560 979884012 45509930 192300522 293854081 738868862 760578220 885720773 386512489 107368787 130136197 394594380 514071618 995212446 24204811 253165080 821344586 470094962 801624316 549322158 717778124 99831613 454592190 859760826 638194742 161696307 140455078 814572638 250211299 846627516 958213230 205310779 367567521 749353565 526769875 378043087 151375703 871004149 745986764 413123231 793251661 58883955 663455928 704237982 104372040 981905536 592226269 872871794 615572275 322888921 677931970 518858387 901194823 463419160 622256050 197450811 555171181 37558428 667884320 579925619 130107138 175084366 556373458 506086155 18430525 379429781 131618354 475439189 221924533 770178703 813691290 85132246 172498829 935465744 310494960 877365428 884258810 415294569 846520534 487407084 444853429 192695261 782907411 131717640 660989129 434887407 894647633 459466268 78776421 592402248 650737533 676551940 726799468 254820865 303297214 6393329 514972639 946899434 638807185 720394569 877224939 190078365 833949164 115265512 346399150 967283491 864380878 324160810 702764682 645610691 279775709 465512738 16643265 265535637 172247167 224592589 468408848 192831557 209475865 890799399 519309539 960908135 151357531 807051425 239806514 333059854 222715360 211960986 360924414 605669013 283185560 498759024 201550832 76358944 576670367 309640488 480744646 837103260 311403066 622887779 759458310 101128927 56470824 50609249 805284875 606168646 828061282 46871062 335012361 753648930 11158377 487380970 117858687 433234640 499884182 140658784 508683625 630083277 620578171 955205329 329123317 702998617 35074795 112255625 811768039 173718850 280281843 770413037 94226727 719531186 330667440 607819635 254290293 888451613 158190956 577564966 141730778 204685870 156606916 687955315 230920614 196375276 724905496 775095119 462297654 324506715 707822153 881985701 186106801 774726547 790388814 515220984 179945971 17261569 6735991 100067814 659763714 470098499 608847399 997895132 761053761 826432924 560787896 649706877 736516025 71131530 697596070 278480123 290360945 88394744 705755367 830799262 213372003 532698410 713206823 422443976 521455450 170830353 254315807 539863819 799158952 705825530 993901644 444571045 452786615 787873311 473570410 479953385 251101404 168708402 218535611 611333415 769841052 756312091 105958245 164289095 285249738 999508509 140734048 505809424 702415425 832085781 422702656 876785690 620023511 786663896 189109275 996721522 703628920 897391584 799768564 568379609 359795600 480153783 383746611 307931020 352166407 712359907 777747050 183133061 116515802 894918549 94339149 980668698 687218108 972080840 841138579 105637444 170606575 191180161 234395317 140560874 516962156 895375079 150017492 996061128 3082393 886488849 921780940 730619235 475407001 134657796 804503831 468090537 399586213 642719435 674261121 442248137 778180368 202754696 53032742 676123627 572336872 936893555 142789610 780030889 925774991 458150787 974905758 640854598 268613957 327213465 693928845 769007598 245001137 143905546 53498261 363162246 442416846 823958321 879961482 866634069 549508535 388865719 655246832 895637587 256605270 881816867 82214558 577305696 67042752 397248239 69181164 107416648 377168600 738593560 834668917 566679258 552103823 221969581 89923062 395833315 670644720 74756128 553470451 749315308 162409678 53705465 831552914 979682070 804147321 681710574 11190635 120980844 362310781 318010819 523924915 337800179 154138012 198040700 76230618 189579865 979404644 714695248 895310747 133709296 895726453 939425849 811738231 157191501 237486501 150332773 563450192 823347536 358428641 698797247 940599111 430670192 798207941 509188107 611824828 771150513 46885014 172797905 965641147 750376575 348894638 291755315 934262375 846449851 203545318 553505280 388638608 780785524 735295038 530713306 720676819 697531361 138708916 924386004 147096024 94169448 397450214 975667485 357068052 668802075 765734360 267511849 781386051 199440391 241256021 648661918 212461373 978445519 510617091 541028792 219125157 285421036 728572788 331285685 164408718 654029199 756465619 231751485 152461129 707094343 400017249 882991315 187124593 881394917 302013096 674028148 678591464 995455171 7367303 639935283 486318889 253951350 799963366 510054175 628484770 789503563 242152173 442720738 81420967 909442872 839683105 912598696 503749351 425725733 797557187 223422418 721791568 442041564 19529543 87621984 300872850 322675182 553008604 426567913 126659064 185304053 852467286 627260033 372107204 294595499 938209280 295527904 409618696 22548626 908539530 975954363 106399524 802961708 582593179 62970863 588335793 180391439 461268899 852918590 561097837 755699092 971708373 633277587 568606433 242940597 818909432 133540749 425276339 387647361 998789105 981388598 140930305 522237391 536063679 793270985 587776057 29115470 640478526 478204924 673170878 221711507 62239648 281790448 21173936 505422450 448128158 110028625 101906106 605837023 85498292 67765087 576932569 240123276 886683822 350596144 575821638 275700717 964509294 648405287 860507464 172721749 384356712 48488114 822442830 610218505 775711727 925103948 382624906 490669768 422929177 144223712 543571455 352808516 556853865 450407644 104834591 224630369 912248143 791906202 657641862 884481786 803627638 195638783 869432783 914596742 555747131 403670057 616497164 16731966 613826457 662400896 803749662 399731183 336380415 990272102 319526155 11236000 689423132 243277124 431134771 44378191 680288876 991991732 756803405 106567788 708741125 294952053 63402204 731217524 620687289 403251115 871101562 819172482 30563471 923488542 555558724 94323711 809378640 838652133 234839001 802366209 201656504 231034509 180308229 928219594 549410239 647858339 819242395 270245187 647759188 746465928 78476425 957623666 337597553 946018152 9725802 520088230 987874046 271755182 195748441 972754314 311736105 626990920 501935739 128564582 807861748 544633282 98445672 27522713 28973791 134677150 925723444 213008590 384039127 208830139 469553806 9016415 812915715 671513425 170563031 125538609 57312924 271252832 58806324 912376345 307991225 852320757 144123234 350228281 482161511 91254207 712239426 902217795 217298996 676419648 214804703 818259772 433292893 779356166 472776776 101741271 896238765 823266313 770609480 800846299 51030264 848242356 185831583 844529375 282502735 753090245 51902309 120221233 953200233 235650566 414662676 56570218 248807480 232450806 934091541 342014496 827278495 143731514 402382471 222506238 97009906 422855584 855796836 569042128 432529944 97370326 182837477 675324801 195969824 383878786 742381704 864572911 600334511 195066183 340400138 997958185 651241008 765372398 186859080 715135586 728304664 731967035 704789533 309005927 444244747 50948491 314601442 762794454 502367005 935390929 275587415 770624071 24758122 248740547 596613408 101478478 774607424 553846939 678805375 654913328 138965566 644855565 326839306 53302118 456264778 699360036 265091273 423780467 483530129 3596121 350120974 510155445 284744449 414194601 449801949 41122673 215321596 547798441 708482082 909259590 603125779 106887931 393452979 354016243 296685305 435381800 13399704 84386103 851199281 852823621 704274148 660222323 732715976 114831126 879210108 503379171 547124159 992472451 583684343 997257638 164522059 455625792 728304805 697748134 760422395 337471760 622131455 817215616 957526305 592754544 746455867 608096984 946650914 224409527 257250330 208919362 434003832 175059897 943190581 20067413 475702509 88260110 246153066 309180892 80518687 783100361 400061326 205729104 209849112 45707709 954554973 478007137 923077961 167471151 138835405 995119898 324370309 909715822 321303372 981681578 562507412 751485401 318021006 928182009 916397537 684305300 102635609 935104177 66688646 353268044 121599207 580375688 978874621 786745111 720390741 983405988 943940342 885153730 929824345 450840902 461472273 965048003 183528092 808702868 860684917 404802993 951584723 322852875 529071798 585639043 519544126 224407610 743644547 617872302 585207410 38110983 203589132 533897180 293607979 457664681 480038015 275640838 75656680 95410626 922846270 600150476 986935238 842795700 10724226 548330096 636373401 172601208 90630267 379002614 14108563 451584074 10585778 821850107 256363701 763096741 383667773 604510497 142746230 417851593 968878310 167879831 688180258 280841023 102874179 290235314 585950115 235945080 625629871 977308905 115448941 756085549 823374837 238702370 287383143 467890821 28113533 628843182 725367734 455782100 391308046 693267284 166892957 655589979 467287780 218373845 435176720 883799708 134900244 989909451 66913496 717848518 18655782 822092503 998651579 2422134 104306841 220417752 206989025 436306522 899883137 89572166 747763258 841397338 855100846 847625511 327667094 713455762 406254085 994412031 228890086 510377835 719917253 31910857 187068475 812765287 157814458 638188324 410774253 701739976 234162503 787483228 979047267 118251675 657142291 180933941 439391018 792848444 978103936 495145928 177700812 742611155 142954977 160429339 684811596 465006588 468028304 728516077 386534986 173811297 943402995 242634629 852289900 126277885 439217214 906157004 52745058 126226783 256094973 418714404 408496035 283593560 411847771 806296216 811372362 295383750 216097682 950959983 664069109 719496228 665173064 744386467 724885332 761575723 58271600 622282549 373292789 381624483 773725817 34029701 713583834 514304341 983196243 870263492 918808172 260628605 553703701 401640848 314399610 873009137 872759302 909218572 641360735 910423416 828434863 166415152 924831850 513843704 337371806 835325679 538474952 625824414 771790363 306580663 350421091 929351226 807962651 567251187 591928462 768132530 694937932 240235465 642313385 12851204 993407931 896214827 403497542 473726405 209819299 283687806 868515495 139693008 670905108 989133470 969860245 513503574 524270371 277222733 121472804 229651600 471576877 557510366 768060255 315622258 326068789 219399945 28056753 263456556 147046487 345802003 30724068 65918100 950160389 373261919 898762238 206501177 782246712 293630828 405136481 160520125 771683398 289300180 603774412 1726329 535581710 190625672 615795773 463872919 309777882 337627103 142225330 564305190 84412502 346505591 450117580 538898271 857618767 152435446 435436934 145572671 819921409 904519856 360612418 187588683 746904971 100130497 57152373 30397926 80231169 797111365 943726918 512065740 67802575 344340428 957406660 657084324 379608464 138355560 745662822 235652620 549478694 392679821 248089686 269642757 275545168 163833834 444234756 498527571 733439780 391844321 445235192 273827590 179621446 420920859 743094336 275150569 738241001 634638204 631660971 218323866 637758742 576384584 104684158 771866457 365696794 782420284 413346728 687051700 834914247 761316419 467621083 712188814 408636558 932308071 425824099 773753207 533071565 950256151 430905723 898676270 110365228 472664473 945286148 297134146 462060728 506415998 341884029 764813947 359406640 264734191 91160743 476684607 259007470 760430463 512440695 106374574 103650376 779215570 459637481 718352570 291674364 85175728 434916420 525481096 608498449 328867483 136348731 538146314 324625534 306108733 678544088 821468604 845560013 347286547 391583035 461272412 798580454 767686365 998922990 629560362 998741060 106280936 544105249 444297400 274744531 113025221 898314588 844450320 392539308 869227903 170230854 26307501 391700764 771678850 743983612 554389684 515068115 998434508 484139858 160298333 15227012 349376863 6775342 697035987 474054757 531832622 42360982 679795805 901083801 773294630 49097108 324734848 393281289 252893635 287612706 375831639 471611104 729955638 896831262 39977733 691563620 117817245 990508015 324611199 588475510 909135565 818424852 463307882 495819272 294845409 707014047 408973040 116209005 648320819 651529620 925704414 407503366 110576179 34828178 342903537 724668821 34684864 554590646 838598112 136064663 476284594 591185944 207104235 218230334 722161629 202457423 339383263 558070754 671697715 21831347 128490028 559735742 596167747 369663322 13999143 751945523 730990341 236059623 810178430 831064086 99145257 505912765 999558439 281121048 231541589 8343254 412225066 261029789 166663142 701104919 728665267 268932834 322631321 117950095 654329466 560848083 528590318 861644341 118583337 996545553 327209011 852946036 264754846 523923543 386491779 983210956 721836244 167867881 708984961 559644218 513911476 934485972 554712251 437153631 186078863 938203571 249405702 139880997 24101830 818312657 560655085 832180704 398920267 982694388 2469611 658017676 177098992 327870646 514985875 860257705 476585 528840114 693171428 905118402 471856701 366492301 743539990 488218594 8019976 808396852 322418651 434113065 512711141 144456096 69469673 379327006 32506936 566034770 658126904 908278872 988668754 877252671 553038271 366784878 873433085 608858081 127081460 492643009 800772684 815066401 188609274 131720856 387574611 903336475 103272798 634254020 537866220 457320698 645382538 412316996 334439941 852963595 584403183 985941668 15391084 419526891 862834173 734524759 511776840 890219199 718690362 291143087 692949298 779244500 187559608 658413726 653965577 643207310 463678443 426943201 453229846 552205725 126321028 308954418 48261896 735738932 783481421 919025020 365804687 18882091 19037077 737622345 279311146 768321635 324596488 432299418 746825263 440721189 783091435 682315765 672895697 315370737 197397215 469564597 124475543 182001893 126911667 672327545 332637008 637954178 930898277 418162346 943612490 932565267 520579801 173221785 901814719 382522728 130350138 404949355 534022785 26320847 122394882 457739502 732150593 419934994 633659192 400252611 419800983 79199606 131461712 90315512 528161344 517153318 911488853 865959724 428810391 439924354 517301532 893810739 397483387 265195978 242095850 31479337 205689985 440353818 560491483 889441372 991398805 910021465 266506988 143081810 463937210 928034119 229230978 499881371 669245939 20325938 291397617 750967094 381460854 935696758 373378183 928253218 407887720 934517359 671689886 618939040 204705617 504713420 570315684 243920817 323099470 752830956 511068117 611391201 330509809 797370343 470214931 632264028 281838039 885896077 368481852 876023090 537079177 145257064 10065610 241683656 222322094 308105387 168604346 529589142 183947065 629291290 808368279 700696219 672432035 873203764 829452846 160107457 371487700 174315642 965438827 481435441 231025539 527338706 939186223 838911335 755527396 460346031 936376286 661160572 184443068 653470689 441941516 600375071 109610128 754520834 972236552 613637192 250531710 190809473 169039612 195881499 911985389 72154031 491795847 226212713 856967696 477061401 907262922 730395493 245459139 262839889 49892677 115817992 163520799 875791560 612479980 214262017 970902540 752011823 810413094 706085543 416800595 142201004 32216998 736103134 663824804 378244965 704152698 267943417 566555119 389031904 446049381 948132715 27707168 829425383 342416772 6357431 376399453 911410242 317294505 65019099 462884050 522145809 606178490 105018997 678432065 919734841 975422020 26698616 95018354 618459064 714885781 680782554 990627197 37856251 233597396 109804537 939846696 587712227 275007788 744533684 177220168 670627880 344962127 614220803 539291023 129135985 943573740 395158373 490928781 69940008 749719401 379296818 507261210 712161572 296266520 128160643 357172170 655006633 842299185 432489443 206804646 822038246 149842186 959458032 778138459 321653351 664748140 856236965 867719542 815558445 42285013 890372332 903384097 224607888 243910362 660707830 676929525 500065682 669982437 774926278 727772894 160481455 696334143 15663276 732218791 162583265 503257951 646094500 674787125 444173525 748545113 468703703 761857480 254954541 55022538 491487742 121101765 231973721 946412942 534546899 618946099 451790135 161586588 748940819 425553293 378147001 847631170 590671893 40559508 494957997 173843211 511965658 860461415 129850194 935027824 978402524 963019528 400870573 717238959 3555703 73461228 302905899 183724507 172230122 943297676 860540496 107722175 910270845 301765967 390850715 819141596 25726816 313096731 424205871 991383355 687080579 801183498 172532837 613403385 548069260 330541644 665393470 309001536 717723348 540366091 893339703 835313926 415588241 704229410 440394091 801409410 788057725 772910962 306961413 362075807 432928924 727752023 42579600 126722412 859511614 723415267 863529473 979243111 782549175 615267170 999772665 283737754 768285219 10090495 816017655 508647940 805731319 571087397 687682332 810668513 980115455 992199152 131498870 855700243 208928417 6073496 493421178 44409905 849298698 876955996 317554217 444039874 730538582 237139729 812443841 756053000 566811607 580491077 934033809 286936788 677231653 273054756 427252008 634274056 353442615 149408730 669260287 640684205 359625859 911238292 20357827 335888837 602169207 254652676 958860535 252139467 466417402 745707616 284393685 223583776 256691971 328677877 795698098 792757373 925632841 5534746 317465004 7562779 998887251 549065509 6760549 781381310 19488504 926755368 239345055 378783423 264193510 438384737 552787824 100811621 581376980 631275753 804332324 947684730 400086882 206597889 382628213 324251342 481277085 421339731 917646348 158108606 677039899 447867680 237952287 98806984 4938855 528347396 984064705 104486620 817276535 559294264 51079202 58113802 955828893 155357512 539606312 80334089 782994421 446661469 882897847 553751392 179164539 829240925 516866747 765069825 139275979 149519723 128410748 649971848 108274262 367852942 354421788 850640964 476443850 332651953 957866467 201455538 90158863 907828101 329846489 452668969 427093265 360148581 20443235 68626378 56987678 34540148 841346992 934491915 162156698 108437606 510323186 901837791 260764074 675253874 419880269 201808858 480760338 51001417 424369630 108277290 253242902 145948147 272459518 159844362 417228133 927868433 922810213 471451103 884362531 797520681 509169921 369389183 200773969 835202393 548204879 806097519 33656835 909361393 47790312 328504179 432364051 582746298 341442163 521806159 971831328 653136438 931134140 551022241 848139866 67363397 336510871 498574177 190102895 261221148 907232767 619517648 119447065 932102342 163221057 121110953 656313030 929264346 314516754 16366279 841221662 505140646 737699424 729260814 564859986 963635413 974597147 811994553 162354263 432722902 808015428 205043940 260847553 15610521 966110846 605435801 823293641 124951095 211429621 638650994 643229816 263446848 583104588 371155294 710317500 61924016 294999478 245967429 872925376 310980332 507427488 477121651 407419441 750305394 520181018 776259079 255334256 991319164 102645820 525208793 521807984 494859971 524693009 290338601 258742431 293377871 93708261 689326629 885837124 448933540 330722525 958256491 340799526 594961183 4583257 15869961 62377106 849195034 391384656 509687709 679337880 831857641 990453527 154159898 475290748 125484699 161061750 827410668 783559940 67531213 370984848 366438698 724248011 916121930 786372069 498586685 932682590 350679808 715465518 20719113 120330698 209510862 850353260 442551246 205907757 9842670 849323811 364491935 540091184 295474614 472408694 754845226 127734104 113121765 261605047 609279938 840046879 260399197 76091438 677045998 190395806 184821211 288822709 643611070 267654534 689392586 952069160 956125993 628972661 220188675 768753560 144042614 455468311 333871229 692383308 955854057 419622463 76969107 13854765 620824801 972067215 931655062 863924293 709024677 68725526 274349514 911393405 514986500 995405657 518810003 132303284 373280110 271884023 752325907 406509314 453376732 781522239 139109815 50075394 85227159 649502399 284992753 691210969 952739509 678148677 650907560 549252987 113745325 317649271 150257135 490817616 150181819 871224134 612927989 323954547 25741429 80505149 207718859 280157756 370030530 257214655 503590189 563784089 305603055 982673486 367170118 537988817 75854054 713325618 358834980 379541066 651901555 46379483 882454296 498800639 479024120 201549443 392534254 462166093 244492296 210167844 86703606 760983883 327000941 440760271 757010404 277284627 468896100 185593649 678082664 834919673 874100104 201367942 798682710 334543171 17112480 545313675 335897618 768490772 702945201 320238582 571034012 712946813 219342215 249639143 697913389 522068030 969647782 698178449 666756637 96837616 650605447 65906372 793949142 521951780 919163252 37367984 98984857 842543945 550746124 498287702 560137977 275822072 857635622 249162217 395089895 886460419 319558101 920899872 788878088 384039446 586898526 508295945 48052262 569418159 138015925 145432051 647644747 232728104 862236984 738939172 445637366 135717266 85149650 716188866 364803588 298424945 929153527 103178243 538933917 444592764 572251135 486072224 781642956 958317750 329651678 166067618 363944555 191717816 179476574 498892735 238688227 122996063 24684785 431817158 499941062 447873221 405864617 241558946 392848204 550322883 823055568 514833750 507328675 569373315 767324883 338175390 589738983 490553489 597307932 544314811 851079309 403689307 185104698 841784227 879718486 899902579 413860757 134131001 846671561 266342264 616993085 538301650 989820877 393586883 555450864 19401387 359723791 945082511 897632317 147154097 341965039 360104793 6262491 240727382 685619663 317228068 206233751 35549748 289405645 439094876 288830240 902860143 564228390 483898940 486319415 466021012 916646997 196146559 425373865 452558095 14929587 180165869 249155786 865529588 718872065 324576073 653143634 408637247 77470997 448641940 824913053 820537886 705688634 327086435 581625521 213990557 555125663 165331553 302789337 934270052 595230448 148533444 101774037 539663544 504097485 127921238 848572226 969985458 780298098 840297297 908618270 871657240 363621830 771198880 356258860 33444638 576154937 408659798 347971398 722486501 429001652 40373427 910044152 141974552 419943644 403402440 837139640 35135352 292114409 53507029 678879008 152267209 26176311 523652133 237196229 929521580 593544981 396960658 294106958 830527505 270213952 291558748 491809712 783623223 393392615 839695025 528935926 965452879 946260228 109509408 559069308 867428276 994172854 534568565 574095197 206945732 79751601 758698010 935582603 386835987 153858906 579641473 697785599 377821311 975968802 786377437 834947304 670389926 862257388 365223911 682451947 520447532 414304397 861326149 764307163 91456317 289343944 53646821 580438340 422548919 516427805 589091461 781743231 893726917 412849326 236890269 650310125 726322573 805782979 956652262 120989721 97129616 683544866 190985501 572943980 41960491 252625037 688002702 683855568 476166575 976805717 574337415 668065292 295430491 977042283 315812457 287408242 300364750 646903944 910584777 343380358 884606662 133493128 73815578 337439568 12421245 73689174 12243540 234049548 200328977 14552042 531226062 469640350 470917885 535092481 900297611 570225408 605386844 563802060 740299340 294221731 372215678 403429413 138533035 359688532 525780029 644314582 877431952 138699228 106633468 668242662 792554228 637148393 680618237 53456478 737714707 29985461 210714760 387740096 410938077 808185234 353670558 778037069 516350508 922632728 344910316 363796442 153354242 638714605 367079146 31976034 315108047 433993431 604927775 699579915 565372477 345666611 170250498 365271638 258945426 517522501 385526897 322218002 811339693 925559865 944252283 201955776 466328070 352550090 423747724 286277559 229529951 922782708 598472604 526794632 612168195 685783435 324103145 669546915 878952012 883853184 750996016 702231079 489035124 281421232 667584659 866698506 363510402 30185869 558786872 229680599 164825436 844798300 320958397 813914988 76284509 144089746 675201880 922305562 843946828 860262808 742300874 158318857 270055961 775304189 380412599 276114005 24075050 521163722 596556615 248997116 756062051 882749935 72126847 641527759 287776332 309596533 780698316 34269240 263479025 417759980 438252463 533634823 307631696 155130676 189014560 731364555 166863457 949700606 657222799 928088779 548792955 53491427 189570372 813917081 236237019 385822835 358360817 907483273 881208885 563177128 479232446 882140109 729755834 521024668 66011719 13730201 22543906 348042562 928440794 215237582 952589522 334531863 445961343 747316018 889305426 260250593 765760652 863564491 75573580 761708224 585288546 868419629 667663548 92028309 396827261 359017570 154705408 611653976 264658706 383419343 871766056 96699125 583074056 898781851 978836769 326607745 901029902 165035858 370962063 680065969 778736716 667344887 594669497 354911747 439957814 797585452 123224243 830687391 79121351 907433340 571141871 588499622 121597643 934540362 166141394 408204983 69794974 916116610 828737157 882624860 406634707 74545275 613645036 816691202 412754473 979773532 625579648 404971842 684367807 475032250 406762430 968653053 574780254 198453824 840490783 893555800 927397851 93512865 677492333 350839245 794569333 216220849 683411752 499799879 392362216 762815782 284499572 313647564 3508399 715377789 605271685 421169535 332090611 640134639 740585375 986539157 496905174 966945412 37101585 8067611 884221033 870913355 971347372 327485807 454567644 985404923 640305097 246194526 28763754 54767687 831136209 782758191 303586331 591583880 495547770 68006165 564508636 499067759 106926619 805201476 431652689 687389596 297874817 759876063 329444628 725748772 788425897 831182785 763151674 259169457 466863094 854848036 816221091 580096830 739930300 646900245 482457838 406329032 85127817 876956991 297355350 354456168 610119561 544463554 257339168 272446240 487182848 74597856 367544580 989071976 366569772 750588769 364176827 236100233 177651506 676747443 666087039 654940216 66531236 357073411 891001869 275854117 791550601 549088442 905921986 359659374 809938293 825941629 367575455 203531932 424360969 722773595 901844465 360752067 390581593 181494448 619917920 420532296 622645441 536270759 16090611 324623475 893610802 628029026 133276441 657150693 529578197 264172856 860402996 98931095 296311895 309575053 865331098 196650993 101937217 749214076 44747580 368601956 406416366 285256571 983264455 972996806 564729100 628964337 898860145 865383137 698328748 578550134 797318814 130569529 706340589 274403027 320318599 964821832 232265929 475340326 397184959 999941369 664091949 311771939 151356178 319390714 584249985 608892635 155175462 504860048 237870680 43705527 691408507 332269820 504858433 907793025 97951849 981167840 146841258 957432644 879032235 253351738 768836373 452581167 560937056 155168902 73751190 273986547 662408035 16945248 83795240 63479696 998747415 424031379 213585783 754135998 189664147 567983693 603418847 993612377 924773463 641039224 18573822 859674055 805121335 470517130 428744428 65778688 212104021 716150735 87747225 630487087 783383165 828778920 367719751 447252919 260130341 783235808 937798611 60704083 724441621 216271997 506980993 235253570 573517536 999962943 49796705 740572995 470119125 209582475 679828920 516224980 505060013 940439345 591607946 818370900 974962855 245919751 690182626 861469725 495197855 167375232 313907850 803836238 800629967 282693854 394661145 723471518 710839366 718132193 454758513 66792823 174136334 121616960 359476059 303369861 753718407 552271209 745581885 240561068 417741357 179694 732846724 30837281 827023778 531761927 157040999 270620230 550344880 199293202 624596238 139417439 811395168 604383018 967401049 162840251 475298842 482958870 952256704 437924295 111404544 147813571 325038504 934333389 375451332 136263639 931489201 454900301 806932123 351235281 622829895 667092250 791737954 62950025 547764880 589141476 536901491 959153715 96658216 246062834 48045862 259838934 621344082 343669249 316163671 125211128 917227769 45282364 447825017 261679612 407445923 445107498 689394868 853085661 999292790 904762209 420713843 224292412 991192255 106910212 58722018 912121083 861585286 825282326 811445911 638393245 518751805 928635097 288516788 665573955 524501055 450223666 178718123 834727684 789841073 259341370 481003339 854725857 368695760 89955009 882437765 62794300 976068229 425212176 826855479 879621955 768541401 293556527 951045352 277972589 125887453 765372680 707939982 594553333 58921290 590895999 161096639 462230438 794460202 448188785 285878703 512274530 547927127 621190313 164586463 502277726 173192706 524486396 560925627 358393519 551557441 431032740 249637577 654132790 894153401 144388552 52103853 344625047 881313064 341051694 377071492 721653353 145307649 448803208 386070752 44997501 909077140 821436546 486939022 964437252 243310084 490268536 8284041 901107531 825464163 306354433 549764549 748915484 74954960 119287187 254034524 690625594 300837938 569707410 220030402 882187476 226171135 791352204 906299509 287129868 364709733 530292718 387999978 389561685 754424757 594589385 317331406 736384403 553873420 465884777 776097507 294854720 342423232 400557497 348631690 507458952 869690928 466922843 266801155 809695812 133423091 919327471 659116 12893517 217146469 386079131 51645247 108215559 737533268 159506517 129727331 695513523 883563091 695722684 822458666 389459787 819902969 136376362 431051187 669114414 538184097 454545597 607422635 1886651 985958183 20389661 721426362 269356309 41220572 67456960 73966179 487772750 216280960 366186133 559865678 373404452 629248249 904009465 844736372 268870269 215201650 662888712 40857093 37586934 557798810 14317155 661199238 750912795 873073001 160625557 942962015 960181416 875852614 146316825 49794378 529766571 945599063 926454206 825087414 108674334 321282191 726465906 434101899 301068489 991921822 104137880 653206531 661160591 771772585 505070625 134401985 179331188 330539710 478103074 930515043 578564325 232399734 266333003 157678401 872085329 886721281 183501583 98240524 973889288 933176 798841174 194958892 253275394 118140325 414295893 599447220 45523077 930896212 654168457 922680386 896572923 157707995 705847800 641912140 342277573 548850358 779292800 647235051 220079672 663354422 456342302 766845688 581173821 990030356 814989804 911403389 590008461 360407721 551995468 542863399 406610834 435057617 149900822 111009143 822073502 907860177 158668552 248677615 770646258 736023850 363479237 952383810 452767277 523954961 135255085 651501888 302798962 232988212 326353137 248779339 810104039 225624237 436078156 697525697 346760259 625312100 860945134 264050222 898077685 150292644 508140817 384676212 763936041 962929578 618443448 170562185 534530472 483399573 267178052 237490421 592098884 855281218 610740632 235871025 277766453 517949864 235720790 695244993 75565985 435062750 645485541 793549510 274660844 608389466 518584315 199944964 245800085 278700807 687520368 203923928 92766952 636666930 214236821 59105676 870454652 359279755 940907692 681163447 412164578 294413381 174616044 983259744 825657002 738705862 458153154 69226165 906180694 382362520 801847172 579081638 627708645 304551048 302997133 272227653 598395946 343779490 56166579 289062511 867773692 963481899 182462848 389155906 444226061 474482557 154521914 987071666 73289602 983272518 203872467 205071833 755747384 521072036 425255280 463933434 512200935 5037420 253018589 145532591 316475485 344984498 929711137 31867560 887728017 37701678 113223237 142249581 89464113 956354925 83099243 95605525 339450534 550808606 414971256 575625949 548891604 183047277 431623898 627394581 398609492 425926173 209928011 138511788 48216 744219796 186260654 13718731 685610099 3772642 880983149 745831714 88037877 882981116 796745117 423123197 137749822 807330482 274439289 890249727 715227736 539202750 437445488 485419396 983810809 131627312 629226330 645067561 69112949 985031543 545879917 516967836 557431849 898422713 463014181 199186192 392297730 333728465 191667912 897743106 317273947 114892573 203686337 323753864 524963396 834660426 560015190 204117021 150725470 279097180 847536976 168731190 825194710 645331671 164888163 633223561 525354044 30177748 101179583 200654045 291452128 407267064 303050849 784754102 640727414 825863638 222517499 506818143 272490906 564328736 754972005 51540876 884144085 805389623 811447284 486971531 747377900 721188461 231435193 151397349 489587221 506785603 999185906 60994313 809265155 177745494 340951810 937025525 139340531 150748495 539279308 772856250 464303264 626035149 31769812 286846076 391620681 610694188 590067530 422969613 799374769 478021188 842885108 221840600 77523765 438787973 423257489 115969553 216528025 648432214 35349328 315064515 337772257 365222222 219565105 602342350 940018247 418451394 340738356 209464396 675280957 240713422 110080789 276409859 138526584 766252472 478974109 975010848 799298757 265759244 456365748 625970044 539177198 481380514 361028839 922729729 657855624 845548426 766983680 119251151 698366177 617207001 688097597 357528 793535673 197806049 939748008 699870207 406716571 479095432 206363901 474265205 849913905 681550792 357989741 950462267 507159688 107792994 948363798 576101524 539193316 718138949 357066810 571487751 156519675 348523262 600988213 725727560 771487011 297780144 254547363 863800595 649925825 302926044 616535593 212079662 877891903 885224802 716358820 176691928 139431624 698003271 37528468 783963738 728382966 402759022 688517912 747684779 585490651 196405988 243588015 421531166 585863148 731367755 345561376 389295880 697497632 442824373 173833335 142410477 709538207 710612791 158124487 864280998 344493526 550168942 768131946 279379752 740305583 120106202 145534745 90089743 185688791 99357319 878026694 791531709 414204923 611101930 853203382 342358402 369387185 254777798 507509220 493494876 86002952 679719460 542125963 396022530 372432991 916181649 282018149 92745031 878990730 412309086 702085278 18613342 172884304 932058132 711870978 105789706 341203288 809098402 822728215 704195207 983581077 763160099 356883562 548289229 273695363 855612882 530943976 882738031 738987982 467626232 613650159 160436552 435507179 420095147 766754337 153089695 324310538 752905297 912884463 347066875 612022668 310287497 54919599 606755071 20471239 606607617 40918367 587061793 957179369 573356834 931907935 572181209 255470618 754234248 818815154 965785960 314579771 475564197 779764917 570031078 791121957 793672255 693378890 33644987 498727366 28786264 837462618 283756902 282612151 395963926 716056914 902758842 963581425 321761557 408365580 959648761 34656446 409311584 524371876 278489764 220341271 555660442 587531494 341002670 629065615 414201016 381436421 962325382 547382088 728314269 815248227 984862561 2923784 635810963 415252440 355771219 864026545 2713127 509867196 986493852 45359760 515440789 164656324 913456477 59934665 898068314 386811058 670094889 318492959 787029723 396725528 813779726 504128318 572840425 318297331 324766553 856335352 726420546 298505857 916207920 431130684 932277032 604119121 964214 824542243 493421992 208143201 584011310 137724238 6528218 115156465 69535279 568668788 909295278 988601204 704903618 918348121 235032951 130120022 483183172 488350967 69025764 486798852 55582154 898687801 634155064 361246611 963201137 215402535 606188961 660617105 135862246 750740005 556448151 220680375 101427113 160478281 348096517 725737577 734878951 223644838 632340382 318621745 393003587 912994936 68368000 963420051 453525449 383658269 446188787 414577600 971433327 394599001 392130528 4149306 671473752 607735976 602540761 490690759 145833046 356733054 982595752 891734903 562592490 456510626 704765282 447457652 131901608 832493134 98565562 100466320 471710308 988190565 385011906 6119026 608798328 841602191 931540976 671341762 677958031 865232822 399870937 456490 948460968 414642524 671769244 2015745 573337959 399936079 938438962 825239858 403540490 139994481 233819067 953626577 940389627 542988449 547117682 718954196 437497237 511858665 595890542 174795521 705216361 791056477 156234582 765960570 39515864 456303186 241281132 653219861 972960620 563590898 129696999 469957732 307049374 39551401 586728972 134036063 295630003 363589597 455049057 638962365 185132512 904019961 83015448 581647854 59242672 954900484 244667203 988044227 536144726 241575827 292288657 216774460 545138020 106950247 353549752 88205823 328476209 97065842 309639819 430723853 894403192 106979047 764096156 722200753 626665210 108055381 885042111 121137669 989929086 657293596 912173721 856210170 399975017 459433560 434765434 901454920 735193645 267493157 517920587 552218287 431170417 67439599 494460544 757674348 236143304 248855040 758286044 530720711 578132380 164049880 369985656 110509892 882084729 853931040 693688468 729251088 501424631 880574731 309608873 292344176 170274361 381454623 130458850 515516772 637492256 873925054 181008322 41800132 675325162 35253429 606760873 28077321 630079350 424168986 110298290 647499688 444569775 860087027 813457508 844033999 602516926 428849645 227565019 474313816 502838025 130503173 388898615 738211153 139889084 936168482 272718398 500700458 847381799 523513200 394808943 931502125 488988938 671477750 61843955 4604587 617530921 937278371 510396158 966595652 8182090 407534936 3672829 874591872 989616695 450336112 269787710 571178447 58899269 578838902 502915427 872739245 39141128 352385512 71904476 995509284 626316916 348553707 207546987 452772970 390758382 616959496 911882951 70995480 755012910 792356252 92125272 572409640 320635285 796656506 10732734 485202519 664728780 755851146 891955362 604614508 972485068 596575214 608497849 520215963 518435135 694138675 263210415 832640671 41160991 227752812 652107351 929612848 622102862 252100457 450246573 702403680 235536409 954845462 573701457 550149074 552463410 724378811 650460063 523301609 901482013 685409262 26985825 954231356 438759825 765256974 918577449 874155829 390110258 438066385 282321604 432295482 598919413 427659755 410324207 542713332 388512448 900418208 396213902 578673628 350028743 409165611 838122810 591683369 918369428 422596829 664300389 99029800 83217823 3593636 283016223 745249531 103611208 23051342 176429943 72490264 665255026 615657253 318115730 913412514 230212533 773525940 811222516 329936766 660826276 328180962 538756385 156495742 681366091 867889445 855521492 362734172 698558800 373020120 700463260 126457499 498370459 747805856 305810406 294000795 527108913 173603347 694473364 358738473 276250421 527591771 296359866 208392088 695935570 577997281 177869008 875568948 824046596 437583144 656037764 7295386 256200426 513763426 674566932 312798021 492317098 44597416 668495028 815183532 500165748 521060720 649875021 241694798 138635300 744913179 375348197 397910058 323816928 229814322 311794862 375412948 76504892 197405886 80540127 69136419 734338734 502193157 98616504 74014141 67702067 155182001 385561045 379698944 659760093 948307386 728084386 162158751 740678964 185501415 29499841 694486120 929730716 648694691 321686575 864825198 743970460 904882104 61744579 620547605 541657416 59066840 126533164 248401827 611200149 373022496 962683606 435794425 912347186 881408518 630436681 451299132 223335343 92714930 917989156 235954506 408161442 908622951 412176333 646416026 508764830 888215712 135184409 196675028 804480538 566302524 904714248 14573527 389782628 908879623 456947632 302646573 579669487 93618271 721716748 138915559 395442850 387598693 316196141 454538212 909127565 489213204 773254453 386600433 833815171 639390753 852897354 643751968 356599849 148491513 641252727 160199037 601521185 639857921 847765347 21698292 283166600 301636244 995541369 337210934 268460858 501990795 6044694 948602648 364341944 677469674 371823244 289813091 119107561 987756288 409164427 335534559 885174036 952839983 82064682 105600855 140462841 273915431 655214010 64517973 230970970 40599109 184711510 386550398 567859007 155603996 402628623 325997440 242438366 956937738 484094210 195103253 91476766 626492045 111192900 804226232 199987484 194806691 840331857 154662148 892920060 448043289 415910866 523822776 421276583 459817724 232272762 789092078 592460759 67167668 600043274 93653325 78213796 202676277 433232849 943233845 124660680 50653582 534035088 76053310 915014878 279339796 154205825 977257968 658062505 707826835 674876752 739924663 96311687 747777312 8273548 733778828 671267381 940245760 985385582 106254335 603603770 298136501 157862101 328195206 157782445 245219577 967344009 816822994 309323936 910244027 988149087 103959856 554237240 81298360 977737461 646954169 252335618 537302271 760027101 966451917 52799000 700146435 866919576 180416364 247388815 929992030 228600087 299978045 798490768 350308647 317527603 938141072 445771448 992070632 487169935 365307935 673872748 378955721 495418998 382099161 217434345 750534523 540705667 424004928 427377553 413736949 498901504 450246328 831702261 302402995 239007100 451157969 110100983 390636820 156415521 812598418 858384225 687434240 339796671 545630018 415289725 653526658 405639072 673164757 116134037 243679037 99242970 364965155 794257379 549096187 104312483 823101307 661699606 329705438 215473350 989863961 798930663 856159444 133405649 918574957 798218433 333873758 164073322 71730441 50525861 119892628 923175795 122202611 118057780 205262022 888128639 371959968 632482061 200474229 276029924 167563231 267119066 219081475 536780753 172788890 379916419 586920197 656652652 848503284 326381916 902121669 621441075 566654547 487395121 528267449 648114638 963793497 876961866 611253226 355473699 355946748 753339114 21354976 162478845 668570323 229326968 875839116 538958593 796408145 619087996 998162091 86892236 431499410 548311732 955472629 632183757 60661490 165359433 34030326 295493498 505599056 487732234 459952844 267955245 170872024 132211262 714321129 38956890 777174370 357889665 77399542 184591815 411989718 880853871 174950925 149658862 878563175 690214620 253264968 583517375 73751958 170283522 783659651 12480967 340851463 515534851 550904020 238637487 565233620 679103762 528267323 21278487 629342618 140768869 182555630 193973702 879993433 739455559 78496500 907515692 69596392 178294368 989662571 274104292 657497484 935301515 547180340 597453914 281826031 132066663 188699879 645998221 397877357 276864305 947324522 305471842 929684856 840180759 130009977 392096353 735017154 617945410 998298173 767742853 476893220 679774300 69374793 19864485 55137640 181571640 706690429 755157074 611435277 553060062 952248006 154961491 518763177 326198862 19061886 218664452 586836485 907754479 896007171 69385622 850690424 939028360 373445428 538575947 632844906 89568772 747265610 414174150 688837592 198263989 640044811 955824728 524539743 196403360 535714902 514699465 133352397 587589996 243229304 33936943 535831098 850174713 228630829 703345140 62911696 669887146 330310943 772990068 965468046 224095777 461150719 718953561 553603431 505491741 691221789 107053506 822677167 644812923 733681998 479443888 460437509 342129508 816224436 225300476 545925690 338940401 252187240 313576057 155491186 182217551 37167760 985164350 370066968 13687518 322433866 908640679 752251077 509353041 742297075 775882847 137696855 545447293 332645478 418406868 295928648 181755065 833698541 59112378 705734271 701989131 19722515 960232405 728916373 394492565 686925459 318668509 604730402 915972380 378623477 289430170 178930227 928026694 584582082 556876341 29674462 763307565 990375338 598077392 903637522 336465779 642738453 74471941 740944245 490278371 535664554 122516355 104815006 925547791 862846889 539480851 989460964 143887615 300348705 30190354 142283523 88004513 481648375 664928153 243983655 422211279 830006925 567432093 557360953 499029384 274396912 170995993 791441025 416634180 352483175 298427842 577512275 295594399 592249780 869372931 655649991 682615383 657235536 965893848 460416910 750793758 800390263 255586455 988844317 321377863 207932317 710020959 20159414 39996121 532692088 198045336 84091336 112669231 501048529 199571177 326941757 519712531 496780723 846926126 233844536 486375374 748671917 138039023 300909647 617206039 6064566 385209204 859042049 147161741 875546686 347134820 339181491 989784258 698409044 887891789 321205338 991026582 36507871 546149523 48320835 989396663 425918783 687652283 125416885 790996635 824731690 74837503 888073383 205955531 121106645 68306988 992344048 875274275 669481100 940966594 663859289 698084691 673839560 50935041 991296982 577386989 566137775 732636809 114536602 805041920 131749280 513676142 385614500 104796392 999266992 708344915 3095284 866487970 721973733 976517213 296089024 180119507 985550533 321983369 307879245 686286262 693822418 220456624 420571958 580124978 304934226 886947808 319691587 462415482 479454740 316003758 572826197 942574173 460790197 2797749 806900287 931135956 359890038 839736937 460484006 130544071 690474137 445922745 757982633 983621797 448475033 978765576 730871776 74852431 654997916 797309630 834365062 589303117 606711545 84897154 613758 142365712 887871104 609434251 928643821 677818822 261817721 682184772 168824471 287935286 647357 76885126 342402416 371391562 52400416 898472284 229073594 168962367 827723056 137441029 859112135 979765665 812096735 20614350 596441808 208256537 127431729 388223524 256694654 228377174 530073921 23975933 156134766 477058729 646617784 440751438 738846666 100121923 840609628 348196966 148994413 425730828 968306220 922286615 607876299 776590420 809402449 928833823 326360590 42655046 178085125 306928749 308094370 348477224 901512096 451296490 648673078 140546219 957415953 11189405 760777711 863732174 359587572 125776087 127428315 446527529 990293633 117957077 393070260 136087014 753042518 574180332 677238593 16634107 341768446 693196630 657446461 518352058 800239069 563441443 278867740 890305909 379168771 734018156 311570623 629392790 130642420 894321270 822560426 796322217 803831012 359987874 473355350 237352373 497311734 141616106 469412556 924612778 350206985 872094616 540885888 569436106 540792278 833699517 422854299 376893596 81834256 770911826 653440878 121531905 614282026 227414631 315271365 980265858 168064612 262947971 843892726 395078243 572917329 644436466 288291933 363072178 835753524 313605497 560190970 411383002 224768589 126558746 324851575 475001890 211331844 608550628 271783400 584151622 3888493 148238876 408586068 146764914 17578324 603554447 700646796 361942570 837519401 710910 200414829 777606643 571496058 689427259 742397279 57459797 938613636 71853907 926762501 573302985 442937955 350010396 936685762 527721375 264494792 574372155 70321111 946351126 209193924 960232228 529907894 155876077 765256737 574623606 701723410 884988617 950213388 744446467 756845309 938350978 365840344 3756 51190133 177139703 586961915 533624167 219826548 889209398 337991334 514062495 302007412 947623077 911887351 274345973 660292022 963114203 649789825 182993377 757551740 498957072 795676924 238612177 648837904 262664231 129381651 838594568 887032328 157292613 343658041 16940752 953659640 177625143 464352916 88620839 329656894 356562450 931517998 184955124 782093999 722197851 921732783 633279905 218038287 637071529 666752725 608543456 171435961 581601367 482957671 841721857 338284533 429066863 715284851 398515619 825539436 403905927 661798032 29202127 524236478 554722391 16545129 274229320 494154322 923390440 81580741 783076356 600560717 792758588 889504266 537361706 599553729 579979108 587857385 726172415 612717049 361979468 916381493 39435871 150028573 437542923 404427700 95828307 526361360 540337430 898400450 106199906 142193007 988937432 859839279 214676346 754242611 429657364 170897256 207380476 153084619 129558550 461314061 853754594 67673928 931070691 173603917 97513428 499580860 306028756 190111491 220200678 343785373 471279994 997157209 309943545 121177553 606856145 750521009 486506345 878690147 952629218 393343804 264476573 629040950 711256405 721159062 258070254 199957392 557808956 487687791 568381505 339757538 820815275 183071946 61517854 248718106 552573565 118464242 427854249 748345473 314698373 818288313 396862402 928887847 69939385 369284772 327953975 856636629 119726395 897655085 172967646 949897769 317184749 586825212 889080327 586101864 46201093 628587310 244512275 466566277 339396550 731821629 723983197 98854909 751336397 333554871 522919982 208956356 1689301 273509677 136400369 724236281 687129998 297064635 65925130 303688580 245303172 231185349 96333775 624319066 396104865 740874459 72381957 312284318 706830885 622529683 331165567 209827904 872717325 46027459 298686399 487586191 582489368 535833816 142036172 353143995 320036257 606814338 861296525 177438328 891830142 605312716 736017027 501682184 233181510 464339169 123512989 473966265 279811356 366916482 360108673 803840638 558484267 820441569 413286524 100949663 26123977 981036091 487658355 695056477 779840878 7087939 213064964 817468342 429281798 221785758 674638632 612547134 699076585 415078206 51842896 226817569 955256496 738614107 521332247 846551133 295257045 244293093 89460421 680079040 635213584 602962475 250969551 979852363 346279175 166003808 85563941 71937428 664020705 398158187 778132672 914476367 285006435 571195211 422460440 89978381 178358078 440244640 929820542 764732199 727261 778995122 444329799 478824949 128184392 729029318 872595822 449672065 692852127 846611285 816480185 838313176 151188851 561566616 114420674 867299693 433833048 136178779 916672799 216695917 286121212 265436830 93650049 163492460 785974661 137097438 493599337 609999590 426380524 280457868 636012544 114435918 893038499 40693944 170840730 702531617 393620774 966370883 896378649 291969945 404018669 125925930 79850958 597939462 527480920 728194330 397977378 767444167 592445757 565899569 47169526 196077586 859379763 896533015 231079365 471882668 904738380 252808434 377222228 572342345 552429493 270452745 926306885 347781735 73093342 354006428 868696659 310811544 71098418 160583152 551496098 960601676 673450181 335097699 962735796 788803559 71327371 772556425 479364774 218727525 445293620 920516239 937845456 650795075 107293804 677321419 894009751 595999641 723348782 353738423 829758945 168299214 973818980 435799372 182917544 883645532 90707856 251260186 740816242 603716257 325422033 252866962 315968929 828566184 615786367 461860959 391834401 767618049 527065444 445302537 252669357 161108798 253457548 49915578 804146928 778325249 454421641 349325491 463438046 317082848 95388360 809597560 581241725 117810590 175866251 943267846 965351208 388748858 68718520 715320261 253431304 675016323 608901164 324643445 818795424 264096302 689546943 546620997 795017663 587399060 717209946 95702605 503230957 181485696 961758865 576948911 959779126 272409226 20013443 953313062 59198455 142168914 885268045 525988566 85659241 416985140 788859535 716635211 844596474 793070152 79565514 555670945 370362077 962480463 588408568 646183181 586808618 904112330 477669061 157198015 236398046 890281277 463893469 249159598 574018398 632976632 369866370 281029828 79307071 157603304 983054954 385805999 116969907 596148373 129857261 75067137 665003801 272247062 786810221 350149591 112755212 759533484 746631955 599579660 782462504 155489219 957537495 47649691 186745772 639767217 813382177 53329331 24362504 859561642 252747779 29900895 389154154 505342626 744664982 63467986 419195448 775213053 480485434 467641320 63315185 747535685 589016047 209595345 833135516 847621163 863293926 326851502 970920218 951538124 291164788 848478177 688996169 255378804 516658993 129180235 724811849 486858761 772731188 583444828 613225704 988384859 311198403 393884212 612043543 228604065 61300013 674235300 237052624 174777256 838905811 643869354 387040457 712408243 622878009 589823364 183556164 198609072 536223871 962947493 596827389 734747298 604090217 803134354 806933617 806013753 555791228 886749542 848232202 87881107 200688119 318309848 667957008 610140224 963764207 521455836 877819419 341446261 310131912 555447411 122246953 56028316 929708911 532069519 209112529 689611704 514115209 644759908 353810450 424215237 656408826 420269962 843050519 166182969 463901040 818709179 485094706 889404579 797398571 886520455 703378210 359572705 669684653 138608689 506786713 640827973 310775522 764730437 293829689 49893154 268817409 66401864 372815472 963964366 250275442 485705751 742979344 953587543 708359573 106000194 378916035 251111814 468190488 662302027 126118988 897327570 518643752 39778539 824320395 525819673 762457327 778573705 292461324 109659279 274972992 327500989 308406797 686620988 970607444 645914576 281470525 548853506 248618005 898755521 497227553 951945408 927038636 655767947 639304542 638018141 317389365 412296454 669660303 970145375 473746664 847743153 168084885 260236 415544049 405242469 705084412 239519618 8165863 188266668 260333320 575634364 420249950 242327576 120975616 747073504 381735172 33895747 515087762 792684808 613285219 421050755 573185883 23827440 854690093 742194 904045919 593289929 620851683 590207530 608371065 757292835 348768777 42187930 894338434 604999055 979805783 943661077 4023527 47756503 907612295 112904008 360088502 870269065 218237683 958094878 387121518 922676267 89184560 432710980 439928187 640807078 68252997 595896893 980904762 422011548 832948480 368568285 833659654 312055882 892809198 632898808 570581640 296787219 729803133 759394479 319279801 180151861 883139464 523863431 618232510 40508792 397050700 348763742 106045669 914190187 647918149 127621527 148746905 933962515 113158360 879332170 215427663 278304179 179234824 212297582 233900673 618123860 67039458 261388525 15081385 579735481 784316232 338039899 31001922 95892826 237077273 628504735 14140495 201884050 258173350 228745833 440787298 510872108 157875386 383177747 678917638 266311992 423142377 175200496 501852800 2590946 512119552 327456101 99446829 361226629 335827223 971445439 414022863 885995558 911645251 178751093 999645180 614441564 983223035 848622381 136661138 784620497 15589873 479789685 362601555 789345906 37372489 718318989 189824260 606622121 315077450 331795365 310045857 996175365 766168066 10530413 522864563 216173773 549968041 175308966 963196959 975485330 325101789 142221053 766141259 878329938 324487146 791849307 675337576 820990005 364934275 515207556 293411438 814602408 73208273 271878851 299249953 733464436 225805228 755443590 241217179 440718641 238190771 848637438 703146301 866885817 967056375 608067838 217384886 466305125 529827398 596262304 695389862 182978041 17819898 420923850 615476117 150299191 315651570 962410889 71891200 324116475 840622147 3341992 653723254 60033870 909550739 169496038 525182322 582218427 662381617 961841396 337227377 769031415 497110810 379573440 639036970 708578241 23401822 413383057 415148155 167180505 743062713 265527809 823779471 271072194 492587490 506428335 273482267 466055137 807220255 446839188 584980220 329914548 45603022 926615280 354917057 806510246 422710149 973916217 328194225 641465966 594617367 390355873 190692150 339382690 55883618 251463003 684870911 528847615 675869323 831039727 544737465 929211497 626827841 148126595 644164664 366163707 680282709 932751044 135550872 327497419 467508209 408091491 269135008 150719940 797981129 788841812 63714092 56152581 916325139 811770276 876084020 310760183 391162808 235812147 295007627 542402138 56185441 369880998 842592315 488457070 213772420 145191810 908108593 865612756 294599419 103966457 777932633 538935880 43322891 878564693 834110674 22429168 97065804 264329602 570778468 187562365 702874151 610427917 796599831 157129747 863916785 596088486 744586018 377743502 539883218 35945498 246558269 315723866 248713715 739593709 979772238 640503493 186698961 87414346 967113361 431840128 842688934 206422924 927983930 188871959 626742955 562120051 538184077 564283860 306705354 224092903 697695156 65518923 799624186 647639249 806904835 31426024 669171815 414029492 400730409 200851374 810373275 394039636 695506656 422693846 635082979 970480013 680246437 315199163 703944211 699487512 557755649 271857927 279608816 863329351 991110822 207347463 67152707 431825036 620539472 488285833 470724211 740357761 455803281 75332379 660271660 455430253 368390410 641189370 94118464 202990166 154492905 576929575 23995924 132028592 685226664 863867876 727914381 771227562 914611775 810002049 408359978 726541739 35297501 192521600 802722118 595436280 598585068 114742517 932551743 753317118 602784035 825756181 325848140 59547561 267979200 174589888 360231115 799147624 845489401 30048095 687425949 222647836 939493605 612859339 342666499 717442438 204652872 87153805 691725323 593096285 327430401 935962607 429542632 326319357 223794143 51460678 5349419 106323269 562802890 575585801 432178696 615734580 989196309 656010137 321760924 515820978 130935677 538898035 461060435 341141006 731946753 509812137 664072248 8154587 984449190 750171085 858224800 82422764 418558690 24641053 318222694 35389832 245452129 68365476 675448751 46507368 433040913 372545604 973447882 745419122 43041064 852503955 650382787 692422563 262802956 149334563 318893019 84256132 262901348 331296146 533832931 465743031 656909965 765399353 807002310 896903741 139058275 212183090 959825839 55817966 234686560 747494534 296331709 361465779 121055031 665451483 391530241 891087835 583841559 365010433 477297501 615474192 1040354 910649877 180926662 305745865 409067986 434330265 731105527 607837745 811891804 798925327 68894269 566436478 243199656 339120981 204292329 816546073 349033022 780144335 385075446 672786855 466360488 254732994 277949620 939374067 149262852 928728359 399074874 448877109 911332736 772188810 839508817 84899335 145749896 984726957 170959390 809144263 622064493 411942313 699803030 233140572 113951535 741381632 555927662 38897501 295803438 270772683 709920148 624514606 440521194 973462016 972579444 719215828 107803548 531773819 984116236 262275255 647217040 333595283 71495655 381600009 918557209 821795304 616903581 321558588 727669921 284969316 167930380 705371143 241223717 308501495 748920351 464900075 74920568 216681294 224628231 18497838 546361893 835127534 759513801 116263303 732956990 701765064 901888829 282352743 650867047 772902224 780783133 633850370 294393149 202391375 586949228 46161067 493224643 606558283 41693535 361915398 831935742 577037148 526391829 969949915 496527987 707874772 284625111 174615043 204505179 204334816 34435220 648587293 417445589 669122586 311051272 226330512 221596279 199365484 173793961 991611704 857406603 264647454 823969386 546273656 854052471 383041990 271232327 641944837 948266723 691231970 152525929 65740153 267992602 407007036 55500857 744843058 375605072 423141285 376754827 924199790 370310341 187587600 704576702 625697339 65576429 604769966 662121345 354595081 112911511 681588251 57544038 555863438 311696997 848633406 829026646 871542096 187972447 613348408 315413523 630863872 8814226 580186575 709135548 260844847 199002972 6314550 240132118 431658067 555276297 485762306 397935607 697442143 769011464 986423154 865781792 847113709 690747908 19794103 527765003 751943030 797292723 27296938 201126267 163975969 449473880 678908852 370289044 552451545 657955907 648716509 254161472 559649205 336043834 391542943 124231992 678430285 918823004 99777699 864680060 530743145 967142555 927316022 3378088 295106995 739721608 175012988 248896443 364866075 840461386 618142775 862607153 870893874 7495905 701039204 309935767 331170619 623297844 76485459 340633978 421927078 42114938 991795295 103322729 86717333 129035893 937718204 377684752 386484963 47512631 30947342 508307274 938910461 619014851 616448869 571089002 444027801 316413238 430965761 644882002 377278656 135755380 807607087 297248415 475555215 741499797 403071601 577347180 406929510 569854934 408331558 166344153 899731446 901095673 5936242 800700476 25943082 170593299 206464974 997221715 30465971 731439191 426421745 396678371 135818771 240324376 277785933 560831702 246318552 659383022 165469591 318812500 740898583 197659875 726189173 163507336 582966958 574175906 701414526 609100819 385844246 148107814 554375449 169889849 923664507 820951536 533901786 369159036 578054692 503993086 743312414 366144570 480093782 786233885 410112334 600049121 883476685 465831542 342928763 130875491 194352026 509956457 820327641 719330814 718356778 536676450 886655589 325551103 148060923 437659579 766086956 323471379 688660442 199518767 714066013 844616048 622102775 728940296 153598970 99269721 69314175 919067334 8310187 329890292 185254069 758147692 12768445 58452643 728285097 647801265 823184901 404631193 272767968 32802707 441643768 688800690 196291070 464237570 737147610 251937638 322469634 161694807 553747073 995346008 790644420 492043661 275644271 268341305 949822666 762567507 852870968 788628215 806160423 56868340 127317645 807162743 338095854 16170987 542682753 474661040 854950271 501336123 271804520 734352866 587832477 600376068 745771839 219223233 933731931 113552619 61893844 578292319 507078496 555589576 739680626 969594660 191979497 913312114 648443268 748542891 435549601 369588185 54806812 825370242 537616234 395407644 849722547 108919762 870103116 552071068 122946334 306553046 630275734 962290940 967215247 649514129 312568003 554899019 687804044 569208181 134671685 183481308 20264119 962759845 188098114 567696442 434966898 996599582 600249508 316946649 203706185 878759190 898160304 411003512 355812346 827148249 820197641 728446369 870182704 885973893 396916598 451502563 106267988 104803227 14865319 507125717 346764347 785300730 548412049 9571297 499295607 662322806 221686248 550483158 743500693 953465784 492538897 966190185 389589922 469978412 748365847 115950903 776593269 800840566 252617813 768760934 125311218 489087805 352334593 177401608 180742630 80688832 979359122 629476198 223580371 795398631 97806374 266676110 872231536 34038437 537005660 637739731 289042111 614478514 877655864 456735544 418863728 774742969 511649865 336320547 532650574 590937795 896602755 173565748 701556038 494174499 89265550 981904795 891394476 506528751 755695212 858343530 783538591 30993928 165593098 142756626 426611132 658413002 139623215 802705117 797256674 988364967 289099720 489206117 456027899 656446869 855356606 373324342 984919416 643787670 742359047 653393509 901905179 89579586 133659705 76909686 260818078 349073329 476727720 129829986 707095917 747162217 122215188 726302075 881414149 44407614 655130173 416114249 39497050 27065441 524370008 261142412 77234137 670377811 563717071 88286650 303232624 6592952 645392048 134560869 675917917 748779211 287883839 23740453 814832631 997208979 955794207 18576216 798075238 266879112 975536808 592478117 312320411 241085328 137008163 494902203 337207610 868927369 191236765 689673114 142714846 495777773 547499606 849559346 926830456 680646181 50434846 239063208 104029126 691647556 93850418 776637496 620310314 909074399 324643783 893721280 740239272 668814641 315544450 924355116 364726013 785961769 379610155 546893209 969185508 233357363 161820209 557304276 471092341 185561870 652817644 713159800 429785213 835281467 836211446 775400325 927203981 395269239 43614961 681870070 169566041 729968005 495716603 440372334 562245383 483412753 329148168 679255595 221024451 660956181 381165930 945747339 153524587 666053730 90211742 810725540 820858780 625161782 646486248 813548830 480623683 265904985 670833900 850612174 654841010 515222309 786188217 385106537 634701718 769916782 58628100 778589488 216305013 1152409 258415576 670137658 144656306 585277708 943611729 176125574 746367222 70269938 336985782 646524032 334846697 964310340 866122673 305689978 95507348 667001985 617789239 96802356 341204401 189519817 952492381 696456995 91104334 976273306 813439391 292842112 315168605 1602221 472429076 654869325 61956983 783321325 356552931 517066337 946268682 300427381 400092791 202679527 391108726 170552594 737783628 911422701 200663910 53941029 185406269 603857715 25587931 662100759 826409327 415102143 138813195 694332911 27074739 815527954 767257775 249216480 603539872 361195261 369052991 917326612 281455895 189672725 252295448 50294132 575920836 542667720 83426752 255422511 537347957 686586245 724638141 764274464 325222472 829823372 501717556 548821880 294280033 736977289 906365005 628300781 975778073 990843564 428359437 481124633 115192928 128943246 141770478 417720406 869689565 73456636 110724110 75633194 383364191 219095542 941380696 938736297 286543356 211839377 797679695 424914509 43671531 793274974 99217655 710178076 592435180 43336352 560543210 366534215 340506570 70854182 879377732 636722439 245097455 119919088 816986602 540949439 196205986 364394945 900203881 450904039 634863209 755093790 107786588 876970722 637095908 553372071 486184428 228135814 84064707 447235637 521306470 478156096 161175249 750445463 344675127 561268562 339636444 906238410 987119411 426652557 668130891 87951365 870522788 780647119 293121300 543521628 649148640 542947101 51870894 763234172 217466584 18601030 342559670 894570484 361264612 301720468 327603543 291924836 765527889 596480004 691633360 920711860 645332957 4534442 963884858 681970788 932725983 944442311 836378660 789140079 937121565 257139103 273351196 41288634 97904708 14214246 4445182 131394248 631463542 827021420 615045480 92249223 374795199 252929561 313915863 849628627 845998866 351652496 83348554 561527815 501673545 418169065 833869588 873432049 710408161 379296749 456475303 188464506 340829112 669845771 607830599 614340318 223507670 680945711 892216105 605985328 825550330 539819182 707016279 983580358 698959359 585386976 682416115 533605801 530064163 437283231 919338627 83797056 737600294 790800176 57939362 230026376 929499213 116713644 593905328 553295254 995581408 532814785 674086135 992595076 795025581 226073481 864312840 768096398 156571959 732016439 261005027 896107493 950329603 458315360 616796574 261562756 175350501 113988103 67488494 992522567 792422126 45561601 482997766 322819021 279733448 778131214 98507190 927172974 708067177 910653313 719432534 321336354 940992201 36773095 354601723 15494995 805432100 823291644 638293915 548606690 256202177 599606815 621735257 952532417 600326925 375735738 546290606 116806244 881838210 22150154 240419951 317969028 233015300 252959235 12860019 648812911 683737588 120320672 420792880 62198196 146928357 66725543 119359479 151592366 584803902 907145935 445472751 575038433 829095861 724730276 719621962 49374959 679200194 570722950 477683453 907040662 681523131 892435503 447315325 696130754 308979060 484920009 216439883 719523253 290892568 255424019 995257456 876704537 368658958 71720958 405992594 658272256 236910864 743932412 545896718 375301127 714670833 839013536 891670730 708545344 297305322 54831968 535507437 481132088 776175240 165067954 705155253 850170966 159420135 446367444 145817704 286611615 53717482 223537553 591115102 457463177 104333655 407297744 275237107 631520533 555556937 42215995 717461374 348568025 841572183 860669539 577808365 18403997 903211269 190246193 468909450 383890364 706117656 900826750 406433817 931972996 220275310 539914950 233644623 192711707 722827725 121729062 276590189 176207538 147152920 838038412 992239 45953045 694268946 951720525 595975835 652944987 66916664 858186973 784600613 549026895 347152577 826841225 145419835 655702672 375598753 599859940 569370793 494919938 485695139 370484552 586384218 862176651 825635128 489012395 61191691 763055342 85145354 779163248 472844370 858466581 465088739 506893586 3953041 182320451 352805070 221543136 154514221 60853021 76691617 563888356 709971375 258727029 376772113 167259026 23540891 784049115 190731331 297846326 200619051 129185945 242485661 594336547 46997106 100687130 836121047 718756076 4691330 244330927 777518812 960942896 366963265 176326184 152110145 170004307 241653789 863648164 838270503 804588266 879867152 7183089 69475503 452681 60241971 645888266 512458369 255785709 472001946 89817783 454559851 596129986 967415469 157137758 116057137 335141377 108389395 623457679 58417355 244358218 419948882 633485919 274019179 499703221 212039966 552917824 780202955 5584047 157376501 916301592 897818020 187081747 537215133 406995131 261744786 747659195 456352008 957955587 638712021 645231121 661421887 730054073 38298145 651306537 501318018 823133237 636906177 144575259 548333130 168906465 751858277 21838894 299473816 20084050 250911573 883475314 791717782 514544298 6374715 650275505 988406943 332559945 866307565 298471351 394937358 97918370 946178123 986009503 446491628 257478215 138286092 751218070 21949250 299585325 459079255 447576033 558837767 696263659 547442321 837147649 583256924 563305155 805762845 96490619 840784595 456460757 290060085 63167120 647058090 624012404 994627309 371728580 11032844 356435311 179328611 492859470 556806814 711183875 180144388 354841544 28125086 507080859 354708890 267778863 653481196 636732038 16494097 954428720 790578407 402143008 501729347 300721653 922187965 26002512 951171723 104418288 620853015 285783787 565184467 664235013 478775738 526899791 993054899 345559246 514561396 107510789 179531799 234530660 485945999 607269563 66298266 232840687 409896049 339788798 255021676 676333945 758039088 416582514 115852533 128552724 837561830 68693954 382426879 33649130 119709265 340739445 277779967 425074084 657201544 312644631 307820913 383406814 280962736 444628835 55926426 899431544 506575905 884833586 701789147 648920864 630786133 688143987 710287269 82089687 583735321 176698007 309925597 67683702 16762571 376518200 835498431 921501141 686966299 342653050 636870945 404193673 485158699 687587752 206224346 938175121 325226274 543154622 929491309 278576090 44656376 369516033 774761447 757974446 751383389 738441295 132813579 875737377 281466823 205691546 209013772 279696932 129017473 818756158 945164646 799741609 844143103 926168849 990881991 201060625 542958912 540882303 363769149 103149907 156158316 190867084 313109873 450267436 992358429 315369093 9675303 935934335 822337923 924091214 336030250 960502307 911557619 297368691 765968767 923424371 840776424 736663550 748207353 573353062 367072839 269650903 953786635 447744022 420320624 15424357 407615868 107199219 593606939 469609865 61907587 733541037 721541971 938489142 639665963 567157540 575544500 910017450 755091441 833004936 47353254 486066169 988966159 914240089 33066682 413992202 163997992 566583435 75548619 525886308 299522927 793248909 487510803 80675461 655182682 38353174 2288321 761036995 379041106 653594074 79439298 324332189 208412315 980174588 346105080 718534136 869008921 400820466 353657755 107690153 661410923 673042513 448195528 675740590 106513910 493803501 270497850 257320943 98239038 696890272 860553704 479812208 877582089 895375242 627987363 860685757 788746929 699946331 295184413 621318786 202536327 694471527 341059952 649607127 407693620 4523049 642956825 363584988 987645748 920631151 266320712 131149956 6219049 591950312 183506330 554494035 534704019 718998233 457432616 983047426 13490319 165789242 200652917 393118058 643522905 284617512 193783958 544174486 838975768 291896168 315837721 665894462 329334594 875949042 995051973 515793731 667967962 959298980 289093931 769071177 934888105 956024397 299716274 954909341 731034888 581382568 467061140 923308132 22652743 832125632 265597706 14472444 746475022 365140909 572359291 928851770 114712762 544971807 103085184 190385736 195589385 310639520 250171965 79097855 500028323 850505286 784869815 857613508 399311997 489231049 703757922 592111426 685261394 933138631 291588108 722842440 593768802 917376686 493048692 829818467 439779080 587150763 814375563 225666234 416339595 174527970 9593204 5024029 586050949 56999679 182095564 699586371 668249155 167881869 543227070 395525317 520102214 814427917 211332742 425617617 508159441 93792899 3537381 755609310 969749609 974532312 840235379 149552954 903194909 631611032 775425464 161945650 716405224 527243541 68924245 140382052 912097013 14139303 810234279 763304131 361552353 932285074 932248 977078569 937851085 574151555 257919488 633754528 892488072 696380174 371422958 770092016 159216448 382065366 673285667 57736377 146240167 725009190 160917026 900814073 679378297 472471954 583922158 400924531 665171800 770223864 897347106 321595812 171898445 168843230 311055955 121288994 28293469 752708778 956293946 728760753 150083711 779327757 483437941 148674687 681804519 276852174 545388339 534408789 482486413 631007630 902321143 924413599 982953316 791365531 223485285 509398371 922661278 530423639 800497468 965600827 308011899 444841831 572516188 277719972 404180597 311325694 67852768 971898194 870405363 267798138 467058518 728957398 836027627 267786736 362057796 616349690 681004690 850860806 522059909 444953289 231644225 847038022 362655102 503757461 892077853 631880817 927277786 737583026 635370278 558733033 895469447 202451537 244914909 964415865 279686050 630604110 411945826 484764758 99023178 410120055 574026444 814143716 10895627 285004513 541953785 493681158 850914236 326008599 284074303 756722710 549572124 405647890 648748629 266361109 929979997 352136027 85649800 981500804 217662029 580282710 999090606 937796189 236301371 480412998 727167814 331909006 5728335 928941173 319086651 748003864 928518015 374861474 933631890 609805679 360683498 920371354 822875078 877812251 166338148 555473225 980154065 94264856 887769912 718632564 304883248 761004571 344584149 106248959 522973956 461812450 32376548 195034817 639733244 734587288 386609641 412962267 482285102 109505053 293408685 741322657 215258362 40758665 761510159 638005282 21398980 487891035 724274392 175857581 242619246 229124048 338817496 199088179 86997496 164238348 483572074 935339768 634283096 601707716 342286654 959868858 347879822 293804740 896498149 107830963 970927163 980751949 101761956 566343086 387644165 344783888 59643865 174120677 896213824 399833900 935327583 908171553 125144461 239018020 390917298 272205047 465837395 924083269 60524695 540243719 126935852 839118216 77972846 108273043 755357199 973433047 853405946 174064304 475904114 993234286 364460246 595100393 451212527 411288065 914239919 201744251 694095012 971933398 293498946 525168093 564305347 931004545 780246374 524482433 831438610 85634670 777569269 408267148 884355541 116845718 872195569 833841766 713969883 125941452 939844981 137249852 69653951 710923599 983843923 501641369 359812431 17387231 929740927 132113907 379348275 309752356 233803759 415869307 869547336 247837007 977515610 695244373 656424500 292763846 780971375 674326443 966015403 273638644 463022238 870860369 42019783 39864459 222955447 227183715 543618187 37601422 819096272 989781929 853667827 758685208 787888202 728449832 88478236 992885724 618740907 847577270 99508042 873759024 783919069 40260750 251979580 845728228 641268824 587402034 481701161 71233559 397281377 629433878 497875018 673731100 354456766 786094898 959569218 184202616 60946462 420121177 221404917 820928623 20482903 739333295 82212335 896385993 532478775 926909554 806463671 766630554 695762438 193915689 923455308 974052177 189139159 224670212 789501321 203506472 284854874 769078881 877315360 946509208 879585029 387798686 828993010 571513979 725143221 307315724 530625237 838011085 218394241 311896857 529842310 919964469 639813403 305905941 762934335 228991869 755683394 180102130 824516468 492988817 214724409 598310182 430513598 407679642 110566922 999322288 768476941 591844442 802214153 332716549 703133131 656641385 865650663 864388984 527694673 411946349 736698446 521420796 521049869 160399865 277280116 211205280 130631591 624865162 279674287 830422319 818883035 218596877 634620056 113767078 259373112 878076564 51096608 804145616 161904232 841853145 593258762 13965008 633716196 65836338 246406668 50334284 857930417 196576037 236872245 342464940 634033856 561083223 36859616 270656126 8043411 246045038 2407165 385655137 363734079 40874020 952857745 86706106 874422018 904008664 299661324 78542486 802848527 142520980 268032128 698108034 382523562 698200303 957012818 869593908 819359591 125705982 415668204 952067831 349026839 429975988 594964650 340441780 638216056 77792502 339423047 555397897 586385518 278905770 170024155 582665865 923911094 882368558 951992729 757089638 879214419 761541992 599625951 604657014 436345583 858806049 645496492 300152475 247894162 270786227 980946042 236391870 994166842 985762602 119638595 36618074 743533069 952769494 78849621 285064469 475430030 874396396 630061206 581452972 270416715 283941231 432840528 501754324 317172682 676136691 535032493 100222087 269252433 411339050 511988232 807087917 847123849 440880844 411419112 437168908 793519693 983746269 155660622 30267955 490604851 524976351 624334378 964258581 136576797 209032382 412122123 951211803 802647962 749893718 879111738 751352313 622685283 605887903 379681129 48720498 550731639 523140003 537961875 204359666 167227179 601840605 219931969 655723506 734719343 96732637 933856791 281164100 370450887 733967250 974202088 109793506 816860374 545307372 856139515 877752017 285515738 974311028 191561674 340597490 361255645 404611303 404991186 525843851 663149847 937321415 584101538 124553482 525545427 706652264 259344149 801109785 537161755 621430656 131759926 169027820 788594433 96570108 201087542 995513654 848106065 698233460 950924548 323855806 764026736 743536511 940305234 588335377 90606328 181955890 900951039 836103071 620778186 721942543 961957076 644661707 395927049 602118400 154341966 17094082 427488 173469024 625964495 115499373 90349000 686194305 141873888 229203884 965028186 64754085 615820895 471279733 423153631 395169687 362001027 321727385 413193021 855244224 123069587 882724850 423805768 561507150 526194178 134224277 702542444 734033271 971464318 869383747 486697709 640229008 975015757 279707885 822063574 776663212 3485832 362612739 910556694 937295952 470512202 832271684 511001402 501464670 113499056 916054985 577565376 21245216 265078130 294509872 79711435 985701847 246340146 896595704 970177921 76325815 83274925 908425107 604891245 363279795 611235614 708490587 654714198 676439849 275065794 794116132 176037190 644235231 15178080 648559977 136703956 473148787 599659427 116494723 893941306 903654693 873203371 242614127 718501995 581506031 128126045 951339492 160135991 754823508 713828474 901480070 930992789 275816473 788706672 284801070 984044947 863369649 738883659 13346126 376937725 217388909 494687376 844026257 120692705 731317278 704796130 439950755 185635060 857939895 321134294 880250324 369763606 813959402 711334301 627872197 561384512 250933586 758243442 841163181 26603931 170831425 313945982 781305367 307197300 578943143 407201745 758048567 144213242 201439183 662579524 666778074 329430168 775734121 906918322 913322159 293129129 934802361 171318314 286985948 240074312 615350202 814338166 233997735 335168123 733429578 371864999 160497247 989359538 946761085 915036981 986595038 959162641 712032088 66800455 789117133 334901028 504736359 328151722 477469652 699102921 600035067 181083913 772394206 602489565 904519182 125793815 301552318 775182924 581027373 461259532 449327035 16702576 3490015 48526395 244939068 20175287 531382859 136348255 939479798 56326617 817023866 104874414 519061694 833313175 998284333 457590537 844190412 17482194 963903803 126592130 589662411 666509026 974363051 363132992 722680696 411277688 645729360 499733675 701604702 691319797 93820240 812108013 375980823 536694235 816086349 664335590 409461741 277924125 531727385 298574123 473671774 234853009 888737083 428298304 237716493 705065803 160152543 972152030 996270968 628100863 975530391 20602850 473157220 176419615 314189462 397909450 929493347 843814092 260621575 346539122 242576900 785646649 163977175 283681318 162014870 732801081 77791160 91010021 363526906 162410642 337291391 428085996 612194454 231324892 26038862 817077968 862115743 885530266 422608103 446483349 729996699 723608092 76808033 979650878 602445954 926835740 184002925 218040264 654623882 763403421 824486164 574418796 112226622 52922108 975513942 7108542 640584518 648753872 521283297 364396765 572234564 579587033 625108255 218276301 521134252 509093318 468168261 204051402 998214714 569634225 417408831 786881258 981284320 160100220 211227785 527614253 438859491 496868570 846473595 637055783 717078116 579788434 316494016 410072217 449080770 574407840 428381190 815096087 28399094 887663680 107016031 307905280 894825470 167090106 163940672 628045066 394509827 686069362 437839701 262047679 814233341 668267147 895078134 851751826 248875620 533846585 261207218 445008092 552769455 487163316 791000798 995831889 124580887 305638159 419129613 304533045 334833919 80195708 313459104 287420622 84269005 592085609 580464058 958486143 21171996 588822751 670534274 6270660 677702680 72128024 591119488 413000427 325608045 599388261 649499066 815086745 604983016 432286231 380804671 665886815 522425329 28994182 613166035 884765 655015854 363189470 834169483 990434762 249234112 299791839 66439305 701555465 603426187 768018141 928868613 150854834 290775518 999389753 429047906 873872430 884186173 421264416 67881329 198677102 719304080 494522553 429219395 504887492 746701272 846776060 125197773 321146406 900989381 287029475 136055733 850128582 651889900 684034024 185593983 142158819 561237450 369390080 565163364 578091052 361585518 921684867 596116263 325980792 7868113 903329187 737480666 70781883 346375491 608383999 61588261 507631758 415249861 37519352 63964631 336329436 969571695 489183105 687420286 505782643 641056128 523040826 161155236 74414233 833579234 7333387 726036602 905405555 204146763 869102436 454013117 13308016 303014809 498802476 414769893 332667357 285670809 308296173 670735398 114277789 550421097 820254157 922242193 733898969 983900235 274399937 250420246 910399935 977879107 126253328 767494207 674191494 745968223 879644793 990649524 397425047 830619387 583161 172396853 2908916 959929265 609944237 254129444 356843419 133531470 457935248 850784801 641333340 524033134 893003481 961486813 510066928 196230503 679909011 48854556 356271231 418061901 523774362 784025611 677772466 458843488 86181823 583058011 267256690 725463900 446524393 943677674 251340063 789025472 159682023 14351037 99504965 151451405 145680434 554823079 546340197 753453496 370692121 371399673 929705390 581685529 267951486 457705505 599535700 519422594 215062765 204516890 942675460 777018191 537002662 19789045 944586042 77276266 584400947 990164840 223718337 38541052 528554146 891622720 917663989 933169781 179142097 76416475 829506376 112627809 538388269 714929957 914741587 785094972 324013224 480429012 164166504 292345294 78727944 404096251 320147731 89713749 39697828 107176828 538562286 314638167 743251810 785779492 420058959 52868362 465360196 868547453 257924280 489931625 307128516 622038569 389029319 644882114 321047768 914097838 659960718 244388922 349725556 168451962 735717725 504819480 722345438 639108662 772316836 918476937 535023571 420710195 284989120 480314550 567570333 99554988 55188033 321405466 278234636 682229483 184907293 146041864 775694863 477034204 680708460 513930944 71428612 779708995 26777618 37010387 35008326 389335350 738854929 268203536 346101456 679267934 447382709 469793507 193528271 130839708 603476899 819529225 270571400 511474717 233848540 688355394 570987392 49436250 151531898 743084633 299546869 156944274 723288101 471474228 358490140 798399918 721257751 607216141 206163748 746762707 616881010 324610644 535496415 156035820 865287008 488312436 672432687 234398675 247697703 298500734 430328953 584576094 363104444 342785529 671064705 106138685 343937410 8013567 487298999 592148652 603944995 637679394 879407559 857775418 135487550 183977252 908183836 22458528 420056238 224830595 274419518 939233767 54018550 823245544 247014246 38315505 55179785 729067155 174169250 157869253 593434734 268896825 193554049 860907095 185828386 779306916 864951055 593532498 373109883 41094839 194187937 174264703 999057512 387715749 444731528 853396666 591270425 197113550 558679665 727929615 343881365 588066209 102064881 640859592 105964902 143484155 375153186 371004029 413765712 620572186 912585496 182242198 60766431 176951580 754067908 521588233 899589856 611929758 427535394 45948848 662294497 855479901 601403985 717551981 608430604 991239220 834579287 884666920 654720252 90470845 767328286 969489770 883678181 732974962 404323001 235211557 775714042 149971295 792212846 147925206 266345300 124533285 229112617 923001077 402158223 94614418 926416053 449258054 358297959 401682326 606292957 382340248 439009290 206749067 177763112 898472896 275573879 875192606 976233122 698932742 344499857 351394075 259748624 796966553 281480874 107191592 422885983 262470936 282370258 305787497 67901420 119075069 710697869 966041799 413597436 454076170 375456011 413694897 686094388 19655788 18458916 585841320 934809969 424179992 139368566 423558363 613740452 414867573 207326172 865466584 899022349 400241360 314644147 950968789 40088209 421641266 648965879 357882585 693603310 739319466 569667968 354015977 665467466 767975252 657319383 607385399 838714312 943992491 67330858 5749321 923670872 660862049 874039037 594137140 283344019 783040379 161574717 777765215 379886330 892965162 974898183 425238436 493172633 849169403 383929480 106773769 117448018 335097675 161055727 280392863 603315043 532835338 81989946 816096590 441156009 379875668 22609537 208029221 918021494 33276176 178232643 789862963 908018142 430697762 180563909 89131813 945923902 731306170 718315386 900398301 722001185 318832561 351109615 702732274 303081370 779904426 382942907 661713054 993975714 602599099 20012395 622634816 210541512 81716896 281364798 157755182 201884230 977824627 762610883 534909358 552130057 207979484 812544602 661829860 337947499 732644914 35922040 13658780 574058298 424368034 933608730 170907489 383801019 585211847 943679869 366348565 804367724 2446572 547451047 501866638 220844718 983794973 279328728 553002070 411059094 918968570 111424100 209412889 667520090 564014797 321832908 252629708 468246746 963649498 628824268 763826736 182048872 188313154 556458655 143380109 996146073 936347399 450125652 129416235 619912873 524241866 441894779 973059252 768981977 483190299 472637289 83745833 457657736 606385650 962415754 705599156 371471503 389766497 372454234 892256431 170850701 876123111 962002576 962005591 776265082 725476455 715840438 493600825 763148998 477017531 536867239 752245190 561861133 411111196 872389601 96675528 203928343 317200196 637320341 436729259 235544328 325598692 161764347 21139370 399072083 313473587 75164578 584971962 785241707 390699176 327359767 548255901 51718266 593310219 274830334 779520443 518257838 611464312 820785126 925455968 837743210 848462701 219053387 517050081 224677212 694146264 713430507 201343461 639264755 654622122 595442228 351675210 270333283 282035339 374559255 873679430 119379130 883110845 768374438 492265788 688045672 353489630 603037344 592519564 991520861 270785977 379998756 529864297 134188156 149464840 184413133 182851786 968864594 128343426 563086401 7159626 940290860 386461606 986380967 338056457 631772914 48218561 633453922 894960302 191588836 489491348 260812669 775812033 360489289 588824468 954222970 72019164 707312536 914716528 84271722 423507009 657988886 596153428 605551203 83046938 206347885 344648527 38128095 907089204 769636066 543031147 924917480 699428263 445571927 178652596 747811483 668810578 337957680 837927850 373489939 805344977 872443701 80611460 771448735 543584101 948835532 855571166 401688246 330430685 253412259 504994578 143933879 478364860 899612946 268506882 94628780 155407593 836436381 372873782 592851171 827092674 745297117 58779365 498836380 999929675 495768561 644953043 536311362 668349490 562559701 769292705 855753124 442800974 486748471 812041911 769909982 667768333 445386613 658939354 172472196 559342098 361623045 760253941 201998391 100962358 257585212 440834475 927291995 758057788 57699597 600806340 441603444 929599388 432526328 56177982 60565867 407175540 216186029 390560522 502958289 633945439 942939134 42904354 525482012 817828986 106840969 702154164 920780587 981829766 537141293 164186525 649674964 453731648 102313785 553214534 15747950 688061392 819298804 490534781 722973311 874563992 745332399 848445286 142190166 413070729 362418854 964770679 440960974 809942995 149442422 241637866 456429676 873037887 493745325 150526535 786693909 378133748 458017577 18784560 919456956 986355697 246752844 482879768 956773132 412580207 772421081 390578869 191334316 380533704 471568118 758985679 614730925 714780822 540803136 519346301 994658939 95098109 21886243 413872499 510730111 337388203 192492829 925967613 562063304 770599522 688415660 262379291 712295150 978412811 483972954 907871933 533813499 836950120 877263477 601683573 591675550 274301864 143557923 846544611 753459192 534651565 95961158 718246929 97024929 183622096 93180535 466317094 523740126 257889375 418270584 850235826 807299631 809347508 589355759 912332242 739354195 796887791 87855865 726203483 245181897 109767221 225580822 728254261 596469317 117706193 493666836 676786870 421422692 162794244 236071491 452156136 978685021 516969528 849517747 797164299 823232563 90254616 6260189 322898830 687843384 67465265 662847473 569176537 815549711 83364350 290836264 923535244 764988657 938839012 516800904 83462463 641998309 321500138 190065362 946825827 199834428 317140413 730822873 584445433 422728729 64594781 155539747 664288433 862187067 187979702 295707279 118950088 448831087 248477729 575082037 49529882 290301088 235045807 356932206 671090892 593160946 323355643 185913713 706673971 435387481 236810818 119057324 944943420 132780703 389517010 783916121 578881440 282083228 877158061 985462954 804663103 752722149 184067151 116895361 892026754 356095312 979824837 508223271 542353706 29368533 584982961 136945449 35912817 484219094 12207209 818335699 92082208 190171995 891388449 916736818 71227780 642511157 116521282 175670055 31917291 29186077 419403747 674676720 811181739 479035616 253725847 288171809 565695504 969327983 617246976 424445382 164303869 940192012 220636119 881516355 425979550 838589317 600067491 633185289 78574775 438322663 351787283 977302237 394833962 99994339 478536298 362763504 601826364 84021438 760173993 5896460 720438665 849640258 307911763 346493813 665468825 332809063 996684785 812094469 114741673 552297310 318035123 29218507 769064473 360215023 914218234 910440186 265268363 363809085 149144731 248248623 784591266 445871404 353567348 344541980 34444848 751181260 436939060 988502391 102782679 845864253 664123686 567187246 335658643 870450426 799574791 193503086 871105791 718143185 878678031 561830374 284518766 530846314 345481098 459432269 446581068 810253176 137128091 512493362 912492922 687692124 544589167 800520606 164775185 678273125 340432924 52499470 486054800 689300154 769159786 58269110 806327519 310293797 896987526 707571118 9754539 153433383 431681076 286463106 531496991 601800405 951588911 405110696 227617361 78250630 597934616 135884661 973772687 661605974 461360070 690649637 849688894 445272332 479222910 103244045 666410300 254265018 306596911 911731654 445156192 582556692 30454273 21938314 821487010 696460545 345314253 34729824 638273787 985227987 15190989 903389878 438068738 860233664 553929070 575172727 644707740 822950415 680163073 60881170 758091146 877310499 478933018 426083668 940356461 489230180 772986471 192021237 331447258 763674287 892877961 636272404 869173994 472696791 855237738 612502914 652841465 963845802 822612712 159635267 571557537 932272846 845847938 60900727 871574753 470722707 916033988 978085598 982083609 881138376 433905834 717440434 654413513 969568418 857811647 610067167 723387517 117601015 738024669 522456676 71432626 901552042 402911940 37485381 680247387 676407726 285026378 705973853 451557065 1712380 461028453 75849596 208891506 941023164 831400139 615352497 841164308 757130235 398251686 365681208 50278441 409408266 403378163 1549336 946945854 308061167 433312370 210449166 744469425 560787943 561136085 947150344 310134485 512030973 853167107 999961481 409508622 771787089 501688197 892536898 559317829 8329442 358915538 591953990 242519331 57909993 109734467 469169437 164246280 822193066 272385809 45518250 540571633 184593686 110823441 405502147 176897863 383934522 385341231 257254841 996043152 780840308 583917600 872633593 671052630 228881372 357169164 929245927 899276483 302803709 957198994 232663566 287435155 41926039 370526499 396126383 36792944 274884685 664542835 683949777 20470751 93975205 29149196 428087242 226479759 370698009 677012986 713642683 261707376 672921151 459721886 138387881 880322472 450369650 439885811 45408227 389654174 991088627 568058085 215500777 559367411 715474526 37831944 989892452 280715041 264753457 362115065 286078918 211657497 922456091 190254349 539678726 632250723 150727224 236178221 124342050 560054694 138627115 729978994 413536481 190259029 9657394 4833628 665423002 861611700 99677684 460793833 843600953 992155614 887224480 87602263 686265412 679756447 242586465 339589089 990406515 274199512 509651787 396067584 770159492 1918807 838542124 626217498 869289546 129458297 699723192 681844911 905971931 993430536 533418451 437255130 758761242 549496757 843157548 51914335 81572221 943063794 167311951 834608986 307171536 100053023 609362232 417728385 494727744 985853936 281730176 573149484 825447686 510509223 547512596 135651859 451185898 884677497 130794248 697346110 541634201 610167736 304758266 894737775 972205665 719961129 338975179 941531176 51258602 796814475 590041409 65468013 379973690 853268050 560734121 955209569 31090770 855979279 496798418 446819489 631223370 894976481 208730755 132744998 487942587 199751756 538530158 316196349 532986105 323473280 931085643 283837671 892989419 21066651 23356058 477962380 908796901 30038293 817569213 562914447 910042934 808151151 46804882 904835695 906409056 334753456 922998344 271681295 201804521 784698976 13459681 660697706 735307080 941478566 554891266 566021273 980335562 938279831 997028975 390257251 227891959 979694305 315160085 502195964 270365603 837227911 337360799 931131680 10495254 878931979 106263776 525476124 143340617 862128276 6770939 988864183 593743866 711274731 168660069 161805696 480507288 394910873 269222751 106385483 136553896 384796741 71093866 143004352 627548436 237878773 820827552 668586524 842488030 393705681 411208519 716678383 144550173 39237843 724457196 431277232 709272423 375424245 558782549 331708806 866417439 39228159 423130452 778301750 66834643 306403257 889332891 465761376 367727756 539911502 505602759 31911870 457914784 87455164 841131633 401038731 227698662 955022963 432697790 712516238 70571846 232161858 300697601 465500188 962833416 355224453 582094186 86166698 601435145 622921780 133884775 138139646 449462778 799784921 341874765 606423161 166149546 699230339 941277219 7579469 167201902 454458984 510269073 255801404 7963907 524484882 526778154 659357034 141719623 558830558 678985447 462911268 981303679 936985504 574331131 140469399 951769295 147397126 197897141 693544372 51157274 969404260 34950689 652170619 845667272 280499877 948406380 427001793 311266064 744263549 572686828 457761620 19261050 504842564 569827823 689702519 327786960 497518442 830451000 762907106 479181930 400801989 503135252 282907058 599171951 698808428 926494870 552185301 693570953 633111581 773147740 755895533 855006386 393868108 737759736 660448541 679724565 502859567 20783147 941601101 321701404 295848814 79678394 720955209 848383580 436317438 171529643 433032415 331344630 307803203 381282261 857759416 31514644 555314529 590644094 164216999 13022248 782307109 128717463 143341133 684325960 547791156 385681789 856240252 426304430 823425789 516029926 241834944 374005771 556858009 761498561 663764694 203267257 835787410 519323560 10338131 601511244 694924816 823535613 690193189 472625157 446014318 78525171 75130961 811476788 237007371 900201531 281414173 887979192 256314722 363704104 773010976 731376664 264286629 203040340 861358469 385470658 466839317 464414878 880847651 223786548 304783339 105814393 42581826 679753018 285358042 195207073 968532111 664865747 250979660 180592423 324699628 452099170 308122808 758062837 216931026 964902474 335184413 858605922 769208514 829755630 489943996 830087332 861951560 293630867 546398410 675066854 177652036 289522654 791622385 543975991 922695893 996263883 610765684 520885179 55481029 535121147 937294889 80064248 906140927 133790258 734159097 583366157 78133248 384492404 806828628 396681013 504342584 1008392 266501722 147631429 610869505 310072102 399241928 801966533 637382840 630172093 917591671 564058481 31791189 666140863 368219080 634245816 198451596 338810973 493128998 951114173 26093694 151170485 115648478 782742541 19699816 27136646 493993232 247386991 542210639 687433403 46323158 693747340 763212034 723181903 342869452 466057805 516211403 167984011 592656761 19128269 447578589 87041887 221061657 442600062 664072466 627386322 981316547 726285741 363492862 580325362 788213882 235344497 469001205 125020355 926838254 764841417 46166232 310463613 790893862 340665561 17046164 416767609 331466211 487868876 444789406 689836168 711799827 864096994 491770572 685685182 598379719 528905638 41473237 256405899 357070110 972091883 738867700 869471408 86694144 559952501 841802709 629315641 456205149 137981048 458524110 434345262 181144077 427692168 243489646 833774137 758626909 153318927 263605806 673909113 855540097 701560755 649435552 42181137 251703708 667440214 253501703 962160310 176999656 603483918 110365032 152033443 849882151 566158057 409396659 969883643 258843737 721270109 973986133 463903508 122294194 290127742 421069704 506129374 809078359 30971553 445568339 671300411 589290301 596285260 165081346 135550301 914469583 241528259 915554668 8643879 11143797 697483474 427331683 381411376 130570279 936060764 753389213 306439510 589548520 562241841 855595345 525168476 262844203 419382641 317012879 307346957 495350275 839051703 151471059 540037241 347018713 245372811 152674587 52210854 41164197 199428877 851889017 285376742 38066649 564390265 641825973 885439722 750836004 624312649 828036681 406950879 717741562 412296825 58459188 292881792 172415329 189753527 718993864 535590033 51409704 92774547 206328066 362979469 852689726 332586626 668962745 940525579 479726284 757779263 919708423 374521083 209173901 215010012 377039765 218569388 419068767 658792289 165350701 606227424 23168027 995580936 816930669 841523244 471385192 534607790 688478166 200528592 745369607 898290583 469463726 358466388 240761240 124027414 475541844 490246660 423068921 839256862 284827143 550370102 400875572 288630506 379195844 519531328 776387254 661704325 53986289 497209284 458967171 137055097 780416898 609734224 605716874 833015274 67399191 258544056 580743186 405170496 799982555 732060877 310632589 942660240 402989410 324674507 774277156 729739395 801253369 65561172 818788245 322553150 888992019 167636337 41873655 929697177 195163700 712117899 461060298 747724731 662534998 509764823 226744447 120058324 385034794 361428453 420702125 779826797 12613388 358472901 832173027 687777673 777652297 608970351 19131745 612449123 574919203 525915771 131120511 652403704 408213847 227525196 535468130 543173348 94099412 195577720 424431051 131206078 838229359 768525895 827935999 657223247 820115964 671035818 799954122 470165534 730714709 67841166 53372427 395310624 792948620 214997366 513261644 947527090 781711656 263297198 720071423 96154423 328333096 195099417 759149171 403695830 62380041 554159241 920611439 729502310 54889303 73399138 440809368 168095465 793385038 412576082 916835471 197689371 847806496 745537391 164178909 466080851 761253914 828908653 320426262 864241673 668832826 259134032 141209191 478534370 687766267 882553807 101800032 827819681 475544581 289026664 468314787 931571765 891033203 936664473 792637999 773150218 877846611 349873394 468820714 455546152 217612456 231954383 226889978 23027986 295404570 804402557 269980741 787537274 910322666 198084457 847308695 221293559 797066793 523767824 80019538 3829123 518865893 879163077 629992037 284462074 552052576 444479621 36759953 277611534 550668684 112672666 238133092 556837664 305768787 112074820 287688987 958545656 447586158 209537882 749850340 900363294 570767081 224835806 159880486 929760421 668638624 400194714 996341732 290567647 182035018 138596517 941203237 242636988 621577167 167426558 580279331 367373403 316098636 787159968 480050647 533604882 857337593 167132743 327281061 719069664 634667021 891085574 882570395 629984801 176924331 539194356 85646830 398284561 71005614 616547986 352661421 854496879 280567403 735363668 400220396 268120511 733198580 78517336 795439023 248096918 78803083 428006821 719900925 622165742 400054411 808674086 920832656 37170090 184434422 810121828 911138440 217193969 96920909 682752296 86755473 436673629 696037516 243141117 122490923 539957373 496270634 608042378 327395939 994864804 259200210 470913149 812517906 922102565 821254952 945754278 592832017 450586784 671185519 75750852 917575469 74842676 800420809 91633940 640669920 244034815 178321075 169260223 696257067 867706963 961646385 565784843 698032023 736947693 186702922 52962742 599523804 122382703 767704804 950571044 208558477 60247854 942155759 487904982 930227744 358741669 190873454 219063741 721170636 46732073 366370021 434556150 813214426 504105720 523154625 551318370 758445859 477564201 957315989 706917891 17890963 768337773 320431569 379816300 905739355 932201172 557722522 424879277 120462574 198120175 949080172 633533752 820838570 948317807 648883165 656802756 934568700 32040337 235062050 832532277 256180441 460047601 16661109 177307395 999558815 623300290 815851836 414684573 202245834 462167478 875003771 520675808 36442313 516818390 235544832 924911160 145498165 596896665 631008327 461706164 381250607 488276758 950521539 246925139 68409729 279519298 308376814 987285046 373386672 589801086 422328137 970143617 307309631 99167336 668261156 368627261 301447460 612075798 846373185 260475352 281707081 193963732 593521645 968309444 470601646 373589650 550053574 882309566 253061175 284242068 640997966 909649286 958787200 195637679 891826507 157428804 66994716 953897264 420946916 250148016 954981393 324819482 570393177 539516994 613544739 569948200 761991498 425333668 961229902 300718107 24567949 966473616 175782913 428319683 687778495 981358611 50675745 181455105 208412110 402974537 223450858 673228900 694602233 132314041 610699811 950178929 209282578 849966051 460971628 163966853 456011616 418888776 206171120 760162646 830026924 212238609 834123971 85665637 49743341 209686175 652074768 981941526 886055995 653147119 754634491 360773348 155055106 248129309 404885577 971698956 584471085 850990478 168929393 428053629 927916991 739500538 360509764 519076365 80827343 488314326 753270485 931014324 538519711 331757139 832901318 741264938 897785711 380696255 971046024 676328763 476889994 374681282 777745672 835117834 988488904 320415746 720582504 217030110 63407383 621173824 72989689 596244759 488529777 803620134 352890683 635598175 446888824 456779152 884036118 821192825 729888127 762224587 556769463 139389304 449378715 814941035 814732853 539049285 561144864 556005558 448577029 242931496 404975865 378973555 481987637 552468335 849823228 334821078 588813138 405382992 43836555 330129134 338190281 25086920 747628158 609499663 669471343 82638246 554686602 498072505 306772067 316004839 882723636 685119237 759177741 484699545 739255605 641322090 854410141 132669134 676112085 579912661 384166739 319351008 310747435 892675595 817669692 192856461 678819678 250311094 359276065 289298393 320817487 569064554 119840132 24692296 243123665 319737735 137083303 809198475 594689114 610099566 451009456 113205105 312245682 564136021 114828895 889621403 303533185 743399130 1335603 752046703 105004346 865824510 766716509 306248171 323631206 234735488 827949339 572052791 853080703 814665789 813351135 801278888 396924262 595429751 991649485 431228698 915507229 777594171 762634706 467863231 278663683 162942022 885327341 696404479 400592915 861632847 337927718 704571384 51968575 195256249 793738443 246945551 182598967 828262469 564176713 376858141 568877352 223018779 868732620 480213244 947325240 516722037 522210325 894759201 788543601 204270540 489324672 940248513 969272433 420710306 815832949 76345379 212285568 959045007 354650869 486023690 483341764 631113840 228085188 273956935 374495433 937483274 607798083 973640912 828268394 214438236 517551844 719701709 562994426 485926622 234995046 963145346 676904765 921347676 494849632 12758015 920535117 378200016 573988475 751102957 921669642 640930004 480938737 334010377 442840776 813126468 94338527 174544814 113652615 738254986 665410851 244383358 136423077 813943763 887522160 185865462 423879714 380250221 741621219 634290536 725898154 862868405 507853062 477402619 162410448 859252944 919548753 883671948 138348830 907187559 729196810 314986617 275514720 515405529 768927876 755149128 267854945 786644432 247713822 980419055 679822465 890471386 798561588 577791041 148175268 36224639 767291538 328161674 161075937 604927264 782628623 890958327 984724462 953113504 620170523 68669754 405245490 272194359 575011094 66314298 270255291 337320210 263284314 461035636 445997624 368357335 333334368 36374446 236263712 83156831 340298622 530300770 344972624 846098302 336982188 749082083 127958720 864597375 753560618 628802757 963335907 588810768 35038870 303878730 375805446 762232093 982713129 49726837 174375941 341636010 638107183 523668117 271384219 727489664 803233944 363379325 343649203 993200200 526266266 420712652 91717778 93085800 914573335 860822361 645188562 923932327 468070169 65381113 63700583 298203389 105673210 462514519 891436352 572473666 271162512 210906551 426901237 329697155 379019504 870258299 64777479 524499478 234671266 925608941 885358669 89368307 752622427 268775537 505481235 118834643 422708947 568171663 188755584 97128202 56292325 222581485 455287026 200768552 456194323 313984834 438416254 508113599 235394670 211015265 635767560 984983341 659894373 990582656 233839783 579681942 430911016 587301858 411680871 634518608 571361658 940162889 655081044 949834455 386300443 615596179 83098291 321997910 348566802 80908030 486665128 19769607 53697833 547778122 471648440 210720175 242126719 790371941 169284445 633545404 185465899 521923841 663135030 956110054 789952933 210543057 221076321 279247338 355191708 22583359 357748233 319108180 962414805 838453 225639285 316420830 689032073 131369942 361083153 837656517 872425752 28178148 907410429 554304071 358736607 753953508 376900754 803427998 413897437 202426263 245469925 189756764 180772543 218067949 394381746 950784960 417425510 159712285 360104188 731200136 429411084 274242809 79099422 551097367 415594025 294633163 277770821 5242919 444380736 602807538 443295396 803572203 758053804 907090276 967029922 42816462 38324700 337843520 679483925 19219144 563108675 945964638 77636615 172646932 359200047 33145715 331486896 300713056 626981576 121639712 301541539 796055324 650363379 558220610 16169130 601719381 430305369 564780033 219578630 445112933 370713093 211065677 315898764 854143694 663797727 296865205 91743700 694303851 516475584 891810210 305428747 574886062 625984627 914318366 393969508 697130150 125015690 118650367 649647149 33508775 195608726 104694908 503539283 759496435 765732730 448581171 996735835 314771977 40134874 786369805 534392888 248540407 893218121 80220882 21887953 186335336 943056516 641413627 152094627 382661613 116841905 315429812 74665548 674369881 525548863 835855989 757874331 96688826 740620823 30984761 935388926 957833581 833584659 370005748 378434767 29976049 96814676 563675339 58349955 169135578 781864182 82301317 810743514 597297802 867606328 626413526 879857420 54134909 591603443 106393822 108309280 858012541 899605932 135696569 290601530 383612863 196525778 723179250 327072274 338039377 640139952 654124586 322648341 803914416 94736443 774185270 221437578 57438799 149496816 671213410 99649324 335618523 713599462 58517370 668508037 869197978 739101209 308984946 990568682 275229479 829304567 14240227 611267860 964226726 667527713 20740224 206185748 125958767 30282821 21353852 811836262 398269182 213732320 657928716 874633107 533723631 186901183 833211432 834330005 633724170 911373503 513286463 645002632 941562855 689081083 689364431 124093323 473755924 30062583 576961514 603239048 543354729 794778634 466394107 26523838 852310081 237720425 876694450 348780559 44298472 993608377 211713914 127191241 809363579 728299138 539478342 856142139 585860317 548494289 190782238 804661784 770930973 94358986 425563516 196036250 43466063 675927761 105668059 765919875 495791471 107361503 773964257 379654237 960459217 527100429 25262233 282498108 918207652 846871629 47004577 414669078 457282512 394842159 864024071 681794420 475052207 321826607 483428781 590898288 105311666 38797183 89628335 532916885 362929700 812739238 43036194 719829340 554343574 788114433 417705125 209542404 545745570 389924635 457455746 680412833 229480411 732570455 698509336 585040566 880675438 835000550 83216421 402915889 239752921 994347436 841588653 143872435 333599400 53547067 123721599 726941180 837729288 720750770 537231954 816610485 33812486 543922009 139370833 379333022 37792686 937526898 263546656 140747845 263534118 261702798 187124870 419708018 692145697 290442897 50269452 894496119 700693372 178000114 725830757 831901896 786445631 291451738 840535019 301097970 636943443 390233210 231206512 34851062 971062531 844117344 340774005 475882418 998272685 981645769 938665934 474918699 569127512 860309182 452857273 18176936 88949217 340527948 228078534 250549946 787575198 904206925 194677139 999824122 31216137 88071587 764745249 285805438 521598257 952593406 597414558 960290878 427282337 722034575 970442166 373669948 833487647 163471737 652267202 939005010 576950743 431111131 435384803 387212957 70868715 35123128 665056242 721510736 659667440 788068411 407407560 997715923 54119231 779887747 998216082 717205475 13086509 527834804 733247383 141203059 113432456 973435380 985383949 756700930 769420994 694110415 957523690 957635822 311916086 138750720 772691518 226078127 611666481 899768043 408070764 94052432 325695063 333474939 437623602 48006864 301771090 892811678 320012315 342944103 850655760 962333606 657104700 721181880 643393250 25112903 610871517 50103297 131300181 762360036 590092912 570071172 161402761 34068715 664680813 781413005 927253436 62230409 409217991 678220944 881257972 409804804 5766462 634160817 687363432 731981397 398664812 568026570 918097098 364562104 956986169 714783596 443417830 787889772 145028357 215797533 593738568 209366816 733571258 178900163 952788168 418115610 778890404 801110934 457311602 448947892 480653103 50028616 822938735 764523920 839987583 270318381 992021377 598510811 950900775 896261857 629068233 183257918 198297820 194898462 891160910 938530714 21331918 185757125 245751678 119465605 205095588 299114388 987510888 297591196 481343194 234440040 570871138 317370800 858496571 379527316 350096696 517550720 546067255 765666073 950242813 818073383 335165957 628414208 766238185 622395244 240070180 680649704 981710155 875275877 558755638 268363322 368190563 179450330 508193493 343934112 633381165 966435456 520223989 82797105 643444015 956131376 52518931 609935667 495547510 234466685 404986552 216971471 591161952 442426899 899571850 258466654 332940187 686746462 681978296 52707560 836101810 80451188 354301918 703865552 724911293 709763683 628044361 850260427 49390875 189149731 2154697 455154674 426683944 534930002 835266480 723179210 185208961 451507423 820956580 212783649 406145465 130517424 903261871 477626273 89615917 625690705 554262958 829301120 359003121 604066405 877911063 662613610 863271623 275601023 706800706 787798330 730831956 443918228 374373719 329935394 626165535 527798864 334730968 517800962 324935809 584441889 616680621 114844155 737965950 319729911 669151272 945676217 371044640 344189274 477756546 77073038 68931226 441606964 839210300 814816297 533174532 988389462 644662861 31506384 457052510 889617037 253797039 422038753 2219840 577581137 635645276 448665786 574944804 185733220 119756744 612238830 121925829 27992316 643204989 853133021 758552437 776702852 399075692 483629691 93474734 450043317 351916007 125051559 191927596 352075962 936540959 276857125 449952220 174413028 85244556 741228452 530574888 852121916 853424257 814237393 61252605 289926481 757499218 405565992 464465433 610879471 207122415 375514702 321615820 293258525 201376654 877341058 41063614 814083945 256444780 844863572 874152777 362934260 48608813 706166718 638281336 913628833 571834148 657875960 4561862 523570079 496348169 434207711 918180201 573197183 863481510 142980674 627633799 31132976 136394751 588365963 189723077 387809548 82976367 967098848 694035811 984265939 845303907 43560638 804985357 227640921 454237717 44757677 511264221 86010156 783258028 865378997 884410637 210027577 77858059 129551339 174792562 817491713 171069735 554268949 337092952 464907768 761176697 510821560 767476401 774379905 557715759 704274576 564400707 551169456 386798822 288265885 674572525 162429907 250078958 53569622 188187917 918362058 731893017 977105380 324319752 300220436 466834358 90159385 833090510 848324933 829214235 530215391 811612951 529829261 398484222 6327972 748122043 992937034 967893042 882852370 723911308 678173046 319084534 950627597 682786559 424287395 496269766 645139034 774012100 496172508 535602922 935671473 831939694 930219528 320638476 777351377 54784915 281185864 971110039 205911797 920823704 248575334 867159972 688581953 449586554 466065991 794184587 658043937 803891883 322849153 953573446 549440788 124279193 993825285 379971882 545239921 406702222 204959988 486723676 785735006 22474324 362627769 816560767 977720789 331168452 857645530 399525430 316958778 276761620 136331496 858012586 445134189 540813174 225401439 620042878 391189640 709281419 171779096 306184139 903800006 646564920 463779915 553427323 607941614 189167881 809083416 508290946 356094382 919794525 285869097 303554895 596800957 92379050 102715489 429785663 583370721 798246135 944097996 404647766 877266392 355139938 256080107 329105246 905878802 753990602 938542752 499669988 761650248 306053406 161067090 486552164 604778290 310263851 46569471 30154212 373847541 854816523 646715856 594700041 931834952 381486527 572483363 790092743 200248211 949683712 840220955 192175707 301345696 549571564 927612095 743408153 984280779 732755662 326746376 836870522 101604023 56036262 791798993 59734583 506420757 630810449 161234539 939108858 64076941 183354169 974488864 367718020 368208229 778126705 820905882 884673876 36827162 792583669 655153511 353752625 51705148 529686732 597985301 296829776 858832444 738011491 362328296 888044185 120083734 363350890 573005524 622415989 150328489 773235774 876964642 73295412 657635493 967186323 554341173 708315907 180315121 42375041 497065191 557994851 287153926 832967395 435255409 967404972 981390262 826860072 410207643 973006758 109630286 65258703 345232328 826324574 50067636 346430228 412685285 196079736 125027264 403741843 158931889 270796111 403115028 187428494 462912908 82513362 417344379 930185910 222879698 67170325 926727404 360062593 580584867 251698976 12850978 725100049 196072983 429446236 384432594 182038183 805991654 528523310 80976561 701625563 949130502 191657286 614277030 981195324 957642277 167149865 674078856 376761148 626844424 178910006 730572790 276054559 629370460 718464234 925707686 269144983 927346465 430777595 98567538 588759401 993921937 156987798 58954317 337378454 448693249 300076002 749994354 620935344 811220827 486085921 879967588 592745407 914295043 885767963 924689027 931775247 436489258 989814708 912927392 977586900 57899942 901513600 763846783 905689146 581617241 469976918 425189278 716964535 993633453 107815538 194561087 144798131 271749305 446268066 131791479 548735236 205717601 181579484 696067125 183103249 393095676 847035838 363046496 972441090 934654269 129229565 983142668 304563993 466431429 114249252 134904753 656670949 791063236 465973492 307716698 171852886 972769829 49030534 596501719 510554523 807141131 29978282 579816313 17391860 288981359 47528113 483475898 729732095 862604621 420360403 272441737 434483390 698811174 874329854 620063016 673506013 564714807 973641443 422216293 838614280 36628132 952185066 302403022 23270506 90596754 419291960 23702352 491629355 489647978 503603223 177085816 390329747 533707375 452909244 118091171 552585561 395073811 329643108 859416231 135679655 69392865 406282676 721580056 816951422 123468648 179138630 131162742 716227414 754443840 811163910 822660190 115215090 823150400 105482708 639134244 769158437 906941020 352953676 423427163 971210612 887551723 288684171 30521630 474669514 694898053 858592941 402066031 919411210 314432510 787017394 813121768 586341852 144543458 234284515 796104929 65561485 876497532 816455933 117861166 357726067 507382515 530008184 590202204 790256166 542270839 885960038 359106318 6244901 612263581 726790840 142961097 997688767 854343322 782972682 140203669 481060901 766515533 79242451 898723250 830854487 179967320 875566029 573628739 864808983 712980642 439670131 171723284 869303296 517342064 873293416 952525066 225045315 996225636 847311731 385070419 803600295 82726254 736884421 894114172 385564961 267280333 573261677 954484068 1536732 4237653 678075458 878645949 215867980 908650914 847403280 742583479 814479749 612974684 309068481 502179345 815227174 600335583 393163040 943576598 30274185 222182220 395790522 728150804 50813891 7648994 860479842 652840503 626063936 790621328 855448498 856844569 844969031 94342795 165357138 288390696 579019138 646074286 427109832 469142551 446912524 923267255 402445703 489062341 594174569 921371702 359603450 472380316 331590298 660653548 369051699 47834158 167190 152071473 173895885 671805258 58184447 345394739 18500720 147904725 921448975 623222571 163149891 994041893 875532472 299326404 64312614 145296929 890176874 452514695 764979524 480495070 114749650 423679146 594525625 762208522 867945717 492478561 986341169 739204265 743584237 747091489 826072629 342489011 138505474 986873577 359835584 803499459 412042957 115762893 595158082 134064998 456439141 949844815 51853536 772710630 974542938 622020365 178178512 570497062 891409351 478706903 509359273 122180567 861585189 65474726 486268739 855519454 428544002 956029271 332126037 760394042 835476591 602321062 674927151 548771763 343898388 460704913 270741571 758604112 954046065 882022566 740966946 299880877 981933579 778473886 889457647 1096604 364842282 871358543 63456074 216891674 483555635 567116487 590469335 187701412 330954431 835817962 765777502 897578055 915617216 368688649 895651658 122189122 399876927 218869444 387967675 673283960 740559227 482336041 178643881 581243517 856834007 684024266 688576218 705765716 552406862 503328506 210815557 253637205 756093183 383429046 23753650 956484460 882037699 82801390 772260016 888081352 272703176 564242338 57695018 495145065 765462119 525583507 8622327 855900173 633814102 6934389 945885201 70279955 181159014 169231565 134601623 257441531 291412634 978312885 915246213 958740618 460395690 457338891 615942431 435341914 641527027 638250129 223580177 273287703 722397501 706606764 162165362 690952612 446409266 295143600 364378655 47579500 114735907 228833509 514058483 460002755 335782439 902988553 494199962 55030604 607422311 812167731 932839573 292259346 416292918 357717657 756281673 165220802 377729610 246872350 83918564 386784916 124677043 899846049 364572813 835175222 483069190 289098704 805794301 325882377 639435688 249732132 652521649 513256436 306520381 429258280 695572807 943219363 245684425 670219312 380048389 536160959 943933654 198443788 823479556 942522950 829436510 20482095 382741753 224560476 810319551 858079616 844204596 34371888 857047422 414770577 853254566 767507091 856946413 434150024 467842438 127254337 981472104 737699420 300253761 613796287 587147144 578242320 667058018 124571965 890952922 862768767 487399824 226868723 558342553 303813119 272286764 174539517 181411465 12821546 596098419 278879267 775315128 706226286 469978972 225093609 88750531 30445934 730589708 715186311 596597020 557928026 524874833 797230204 990605023 248170592 516496776 339114749 793207740 312588801 55604039 727098386 137886046 430680022 65689101 729248664 767354056 502541679 66135437 644662136 764664216 884214895 19515517 48953127 938637334 641977269 31260981 62821677 230509291 499163379 192650690 748221903 249190073 591015708 553117639 941096636 873496742 874630478 698658104 102923247 757206740 713362503 84545502 727369569 863489109 366139732 737635752 404856555 898271468 166083268 679853898 936929228 621114946 482131319 363149949 606995870 56216154 865719790 471847938 262883098 22599907 660786866 261955283 800054834 49244841 686270501 187101973 890491261 46453885 843523933 325219634 104964309 204916121 233096572 119980988 134946286 506271009 422655514 771822524 828708380 957534430 841517322 853514000 206564670 825106547 163027309 298933969 268711186 648540210 459599929 575407738 563749622 766389376 687309713 267909046 489789244 293912147 48969125 445508816 569217569 290443805 756752195 835344649 257199566 605699205 563966298 320089388 665469261 686014149 893856306 92449256 12930409 169951459 404601748 719977152 333269186 934745955 229048335 409416328 483379159 379991402 215560240 494365030 370293709 465575559 663555607 30559315 738266552 308387200 520751494 90199255 50852846 891592730 186250224 662130846 617183201 268820687 717234282 279688268 510416491 98882282 339886594 620659395 904473441 331827325 892263716 289446750 50575526 548286469 22289038 350990155 467368110 898416651 522882312 457156139 187151972 283787432 68733545 22376132 193837621 620016384 587506395 473035805 13377516 779993519 692005635 350827290 670304654 961224997 69161919 789457944 352849998 808417850 380517904 563574567 571198723 445747873 639283341 810272667 624338019 822089459 975321578 47321311 227105517 518016738 981589748 648260073 372419004 687053295 805414709 280746823 382534888 229499262 145568827 554320094 645174296 663708457 335430229 607621386 21349027 711863846 778705974 655451854 977329466 963333555 18392396 212303299 861784306 789058408 540821554 426120568 831312778 643949199 688423203 984710116 910484536 855419880 490866952 976618130 15331737 588047142 205543644 21954165 734333170 984651246 587744646 969608932 686799609 715244073 790031906 690984956 819510078 736209007 549940525 30674319 226491852 634530456 499006932 949289120 491256869 426333758 223462169 916949841 12860058 439533899 703593842 456590434 585877848 88954201 50639574 788249726 198996671 614671126 717142435 412509923 574896365 529382074 956996550 56775114 285091613 677746822 750739174 127076349 62723755 802718465 223879606 847298816 752384667 706299629 800302325 831430592 511183262 882293797 630201747 857581562 158035983 141174366 424419597 728515841 123928543 296486690 427086369 21165347 354174513 331073504 827032541 928355227 702591256 234643074 552724415 222198804 303051434 326116691 651378553 475518430 875553463 590213740 898202780 583041419 325778275 261671134 405710955 713050750 126045640 869495131 404005702 710682373 916099200 96126643 871833055 546565254 685964311 460884106 501276094 762761118 862161740 466356471 995650903 628740727 499715428 390133128 644043277 565346584 135328989 656033886 129016060 400425599 955335360 357878238 648495450 593578426 541457821 108152756 153778646 25186340 709318357 347243441 233287044 170457798 840813340 884439446 328404697 228898531 324467278 733499511 844187104 40230053 246742794 297796689 601845625 121146500 449330959 394548018 167265436 220391568 126412405 656397523 848344592 824515825 130952556 86228340 250810554 195260929 662860072 751489936 697040258 495505195 887464770 556766744 424533707 816541753 268291344 893837684 12194305 734721829 517269615 945266854 66885528 84390932 743186936 982189005 793284193 629764691 953017617 171546532 809966529 477073145 914597898 729205609 341730291 866761233 3821636 264836158 527450236 441605528 251679989 318102078 172718165 186273056 480968239 52788149 337316057 449483794 751164583 252573532 236047890 715144048 829298392 824463677 675045811 169947568 594365834 551044237 293438756 391143396 450809409 308971184 418199825 342068612 421690068 661920018 999598246 126642459 575407780 44391524 688490277 351667510 507518799 709432872 957048535 391834491 424886189 966683587 756636691 692376143 747960837 232718865 916424245 417014106 177941234 771675375 247537113 469700196 201020828 782705615 994294133 885934184 977952515 377853666 290507315 235317872 899359978 854492458 38910196 643603124 169198876 114499531 583044323 427672449 262651912 43565531 547821088 391613281 161940818 216754582 861102798 308028497 750482034 134942651 329061860 828923341 574329340 753032575 773555408 950288332 153222570 503737681 460646167 731686043 966993524 674559568 949296875 230561028 575491868 266311566 938017027 756964533 728860447 217912757 258596055 55320379 429710206 506983795 845510416 772204830 9025637 928036387 385694518 535073698 642830922 464986938 526000078 909670383 738204672 141207637 982720602 560748802 857504763 105832888 574005684 132928634 761536674 537826613 844481733 518004297 880224100 617720409 833194885 964436388 809473306 182746331 567358606 813766958 496314426 823859784 634193603 401269590 898324669 503843897 466509020 80673118 906429598 345765746 668766412 549432928 396418743 400212579 963347863 661831360 769193187 580173533 131587916 997480582 21643047 624968052 125747885 629386325 289853555 474113275 595452410 50925345 886776209 413180115 348425218 709872039 390660195 617704242 86179335 51729770 864456874 413883557 335436123 34450859 785001134 667383936 415044966 985522641 538547271 317990487 891403566 457782687 374638794 509460977 785731841 17556566 378868714 8089644 455728993 198054494 999222762 22332826 148716780 264337281 417287801 754943228 11069448 98337472 833525172 700905341 463031698 612689427 95971265 694052785 847978381 157633625 809370284 541131103 147260098 357939992 117500135 140574955 506857727 620997310 755900011 404331861 670517338 750382369 894125425 320552012 589462321 391824247 686921142 90613734 865187601 115864512 902303025 401051670 352945797 899894504 305067653 521773582 559991170 833056433 440906477 708531663 492035309 550631425 540403209 767996541 669448203 156424243 691876903 232209445 94754268 257268084 590587371 990181943 782100749 578435319 583158637 204748543 229291932 266490153 241991867 18293577 719982481 628765770 635417671 500765726 181119037 487865348 249321770 585759977 99945566 241653473 567808081 787964250 514001424 54461599 252885928 406640312 212076628 804955531 496582314 51342467 886421778 245496436 875739656 491590481 118160908 207133910 526191970 755170506 149046826 918612553 703834923 292962991 876046455 459448409 848550945 183392571 66537018 477268572 588934244 576145281 618057271 372931850 88447678 25866812 974435313 68333265 512710138 8505173 592588746 792325733 77856521 317244879 952797396 899948856 104032384 22115778 613559390 496982655 756705770 941390124 668441238 760562312 732028227 824553683 349843173 594995051 2619420 395389549 164337014 576448425 768563831 748570922 272315143 755603593 610870504 762831377 949568213 472707432 222297270 105682995 911838506 376838887 605256792 347072947 128699820 140935900 957051872 407364878 61651823 469040112 21729130 633014733 507389802 746302000 502633807 602069072 615689650 139386259 559342042 256753133 919318176 714497824 760505932 299874139 692155837 940139015 397765519 262864338 545187715 616641058 719014851 896876249 122959706 874570699 19042197 268424714 329682014 731635477 802888693 921737504 895411861 954843358 67113609 412215645 921060820 150013042 205184544 739745546 735550981 643390759 283410555 273948262 3961536 959232741 15022745 179662743 615005232 568048649 76842496 907688382 185256782 548429081 4005477 131406847 795401056 946031626 571577975 639346794 828139178 568220056 844963815 321127432 979495074 245478844 892308202 626472413 57896585 688384001 549848734 641405465 864468939 239377848 459696587 655343162 105783185 476126492 967780698 999009465 833791977 344573960 361793500 47394936 61293961 691281311 354308626 937963068 161965799 393914346 964844433 744005847 810654884 132947560 246154490 588209337 413482821 555522200 801042098 308341736 206872234 659093316 942964462 616735759 865750734 910257433 123442920 48935169 348615834 274939942 268456300 889322490 626268397 768881589 5776300 924605911 280484745 920946434 130993638 5957515 433569546 348771970 111470629 589933988 149101208 204153124 50334387 903481108 977328800 729333086 358713067 913129046 500055037 703472564 247948543 19520131 230814006 349913219 359193320 135048893 868562799 359981938 473753964 247751806 934104909 703775650 36005116 421660407 161297177 22132827 42874481 854949869 559152023 247620843 479495466 444130855 151785622 762225770 379564 643915070 967480374 210840867 579518673 875021433 200191970 750741071 423820498 726996722 644327884 75389585 522685272 614575513 266924541 388979503 465692803 981539417 388678961 358558317 857143258 373874046 474641992 383117406 252011769 898045293 58867018 644460593 869437658 832990392 235400683 209554131 304900132 169273543 827552565 738454527 918898602 764789197 561480095 694530799 251196591 18492936 892969129 380290785 414172611 862612921 833381317 232374873 356975018 606050943 46061430 49648828 829057216 548955038 263408918 542232739 94322607 838999196 948654707 812259141 474712909 828041951 967833836 780568920 411390128 170063889 419014262 25136858 47155074 899528322 389361543 255157565 74442591 58915137 696977711 937075513 692170173 625812348 563896136 786823340 40029229 995286866 261682379 113860399 526608389 38559720 107695382 94014759 45554517 322602637 499810865 547166251 711639590 369523948 240454990 194209703 659541283 78226669 44506531 454489024 755571499 442587922 920070034 602064533 882771350 709885244 482036403 896538357 342518292 478236883 566304992 145125039 838888913 947552513 506847038 835756772 537628253 909426253 1302618 302791350 888317425 265177071 402547851 27337034 450983001 199207631 913786595 161338174 58595349 443293182 330002371 705426693 974087787 565683918 881924474 269675246 127530311 593934299 818243888 787245679 744327624 691481736 379054335 611645958 36473131 95102182 592997219 186073906 133424056 426375734 988733996 566237940 669688576 677721135 737360978 845324295 955426925 704800872 768225023 357263154 196596189 617040120 34429782 722497033 365927925 782133715 683008502 708622648 496735572 365988825 48298843 855004289 682731794 146167789 32061101 941324539 214389692 286454862 118323494 387896921 245281667 697618704 305130535 24090627 623288215 488465117 381242062 502798777 441502567 379833907 565616246 570597410 741817330 390987826 57597444 121763034 184810244 183264956 542960195 912915952 90491365 672442460 655076800 471779732 803554604 833141545 955579791 53335623 620691509 506061415 451916299 445455381 421498430 827865383 965967982 311137061 121614029 459960477 248350782 658002960 714134402 85851766 339622159 744414100 480506006 606825317 427666178 897010604 278334312 34006848 532984911 705624673 718378852 46332446 180932217 297427556 377049545 801986525 673321026 533231350 726826353 83031049 169416943 211804957 377368785 567927832 566415523 678345110 624251958 858500529 936153221 662424041 148864069 362949732 817700979 450042355 872386201 731078969 872483597 316458786 327135883 99235540 992946603 142979945 245928532 939998953 459252388 901171677 140891397 634075049 723584447 349723562 752589396 847894806 384895006 819275797 911118440 705100845 542806760 492651456 173887995 131857824 782157592 428787146 55545983 317698820 570351470 187922290 396035582 311659881 922630745 756293388 930802851 765406534 85452852 821914111 490030817 63303222 954880969 691647285 559688421 824832593 313438481 398587375 553936376 142985745 191028690 184474679 321736114 600466153 274927172 110384354 190792001 363309745 163941651 900488908 312492557 794370066 629145874 942751827 438317776 863348981 431360792 698585484 16015229 186408476 326359635 793596180 264876644 712652031 880997714 885198210 314937331 30049823 794229640 957864977 30246589 657516772 430496340 841463251 804931888 61181747 837494072 306191459 728327614 662416321 745910006 2990645 598880901 499272253 952127248 736619783 438546652 70135763 956056788 299667031 368923606 240749292 32816378 708550965 978304093 955703920 844152224 424173758 285556342 500330256 650129577 192978174 289401009 722323603 867314894 368547592 244550968 713166731 262517966 465343097 250097408 151983096 835571596 137731788 24777727 263574515 579667523 155855141 432263132 549672901 567192330 615799117 295601652 25049063 301151771 715217132 954133494 962813987 938688210 937200231 671718762 986658631 617727302 617264678 969922432 27067690 511072523 746885772 723301811 971342584 338511849 646623664 523151743 950156312 69321804 551641926 267626978 851886279 778963994 84223695 970783942 78905758 800048187 725920092 266413491 431645635 883415961 95004416 776393787 727423209 587578909 230853993 418612788 166583276 911365566 987401578 246271856 859185042 55108661 864071972 86077654 958786161 738107239 712230917 410027991 559846279 842350757 496796371 397462777 322865394 21188908 738543857 681933223 519905968 64473904 492827099 470866565 253729184 323652911 506811653 81184683 836774293 24385071 308972940 125886589 610509315 597223412 574994287 14705331 128430540 871493492 620287796 329164082 115191146 908326113 677075509 313447482 679477223 346561101 176395249 183040865 200360334 992517228 427937567 925325725 535750330 306794693 532273131 565809636 665884225 652301280 991758403 314971973 735650872 811836691 557375036 28236239 130506195 565016229 491221930 934215528 647818196 705232952 106737989 144650135 581649791 67208517 372127321 887561159 851515092 634334667 558382793 33980885 695935949 10258467 771052301 461255836 29920014 977531199 36714992 291858672 86120823 33473244 497230306 642749463 156618361 872600000 480521461 766605344 336736992 834614450 947378296 510106360 403253525 356689346 739163038 71370958 195700300 222044914 587686131 685482781 541718653 667712614 451320160 418982896 932311709 753400875 310996618 538400380 108287243 469749967 338219620 853767201 283775460 98356039 425037548 936715897 422973 208714996 612016790 588235997 702755619 212503944 196315559 303331689 958323956 758042240 536833434 939396280 734104805 984799505 173630084 449637219 339923597 472539036 279528826 284931288 602816276 234150090 554523522 262048520 949586231 460629570 927168764 711199656 810331136 662046948 779992776 483530058 986642250 576798058 385940794 572374390 997925964 984988309 182480807 895643079 243548239 875164714 759043043 321164668 267473380 124777717 266530935 242868994 504473645 511428729 369766286 680511856 72569081 916106559 65929637 554485998 690944199 363344233 351535921 107039626 2004802 715590928 81379322 931477255 554772796 557635917 125068322 914108140 376019992 360456172 308692816 582123389 364849727 170495802 118280164 661346216 421402962 561661473 12529236 271568946 554296459 994809964 703457229 630746503 362240806 441847123 116920814 304394194 67992710 647716350 180937488 273052911 180043366 426780684 34821287 521781869 91998875 709088101 395281293 925411347 302088395 14312514 794614246 588488139 609624958 959349958 45209972 387389 666432952 901122621 914955249 944273925 869953523 500574145 168020949 29830797 131300128 653622705 73264796 445191535 659686518 819993236 577662353 651463466 107328516 384347279 632283084 854010225 219396539 331872386 935371169 173410517 342026793 960987653 745943705 839278861 223369649 329984769 176481744 485383883 171305587 165352798 140872636 625585213 489183041 774846709 29193823 142586288 731506089 924312928 55389428 453112662 395571145 19773691 749762730 775076511 591322649 657849534 164447205 411616037 416941566 648143786 162183336 17228799 57031781 914139263 414311627 51687202 219540749 221104695 164089831 477290395 88856429 990990603 610715041 412963019 292861996 253136047 452442254 996409617 270629971 921204647 850100564 368136269 885465395 667626668 396582617 798633350 199279156 451061250 741680692 842952587 878902299 459940000 47445076 291348016 506777877 239202696 136084438 686372549 88333438 577358633 878129377 836878361 235451502 84281480 649733823 966160053 821059307 691373308 49256930 994227977 935946006 193137573 571567441 191561083 329974360 867305054 550639655 871797867 156381799 96999351 530404866 597415193 251657811 136554544 667375208 30668826 220421151 114694104 915898799 439772264 750546510 172797748 841847025 202722595 82595418 926239825 560140466 181826864 393353039 973352951 80550993 468990443 309419469 964217168 247865761 776289569 91202162 966640792 486024108 44949303 774322288 745677301 476669225 477909908 873723168 388129695 406170349 30173808 790629406 476406826 3493618 373488997 315841983 849817446 981371830 163971436 976033479 598528505 606732006 772308508 143154140 154804113 291234792 748236097 387576376 985067839 311510434 415619075 61616859 37554536 106394755 803784119 882582621 773834140 204598659 776945648 367392297 497854961 256230056 166492573 180664788 631257017 37833613 625550319 69213091 829683987 398727215 574257522 363457037 38517531 738800832 678368381 364400612 13219509 67105932 132782838 52547663 845081992 354063941 423916369 652688825 577328515 757999138 767770547 381047689 910420915 965598589 662214778 15458704 972721037 927703051 348471287 350467544 896769775 114204738 900377754 955466608 595614942 488297889 32512092 804415881 232712245 542317161 866748433 116997538 676406064 798684303 54811317 862090755 626579913 491123112 965651050 448381522 141255364 640690593 397349203 212696237 503575961 221500068 175234447 942777037 854380429 635391816 468145644 264774536 901195287 77046715 120616159 528941800 38200994 517685316 265441970 556342973 242040199 906768883 934729357 385289940 817607753 6429523 347429460 298446096 377751028 17692721 156724077 27695676 384111813 519282644 317792122 892785302 452328243 573632238 271656637 591204107 355812695 246013055 399819762 512021007 931481677 744666667 928848823 63229326 320176632 700971898 897658511 98438839 538181637 856031099 434154294 325287916 571360394 227270037 914305215 575122306 568832581 268910399 679691618 678618044 788273255 998316005 208664274 811723440 642187600 594672470 322946739 717254699 347213443 610025678 181453846 84685101 891205774 123806261 841752666 816747175 300483759 69503774 284293305 879012152 350182714 537718856 939498475 149679944 678860428 881935961 309356941 385103340 26925395 105316567 229166872 121513290 237993122 195492985 749272095 578346229 541016061 621932331 168406082 358188373 28140358 23800547 733204671 44333585 736743795 821095516 620504769 67998501 873222416 674672103 417950026 496004155 78016717 24165221 892078051 512586084 369432989 996168393 889594440 862447255 261932218 689826891 993569717 59262251 715069691 600995281 461805835 935192316 100874798 586356497 239790554 151765447 281756949 22290132 355943992 536245229 181796882 886738980 440558679 599536349 913082741 245508409 998025216 485691614 384468332 848073646 182377996 209360912 504667431 257099915 623678295 38902346 907232996 334180397 77169247 794256912 411445516 56995584 168322163 248872001 749619977 331268089 994275708 880039373 216305407 575021226 495010028 92060765 952716749 162435725 380336829 171717441 311764789 676156897 335031514 242148560 410810868 215813762 754137411 797307035 976801909 193126580 582256886 403950769 312241018 535981198 520822160 345004663 985063294 432748069 552785424 279414327 693604412 572317097 795487202 754309757 654974822 39938906 327689240 250608180 500303085 86495303 851262474 77240307 933021270 859214932 868416019 486838080 561118216 498653271 155655219 694499403 935283540 161604097 833113118 351745090 53262035 698996413 141490712 413521781 730417183 952647040 513304383 896446281 153975767 121561051 996136939 231091100 458993628 898548476 167818161 199911909 396907741 441090881 746785052 355929411 578582019 364933063 301384141 15716171 57791515 358676395 575184564 166921677 367381851 436197512 509953535 593649986 691603102 774020357 177583741 653539826 920924355 447876372 563088150 369501591 269788262 353586888 369526680 257654408 490875122 949039781 126759417 892079918 570770762 402778544 819496557 920998005 673239317 322374809 966251184 933290432 705658467 330339204 615425404 175234988 308874849 399113904 741562004 793952776 757757681 495417311 406918229 862018713 994575076 328633530 470745684 714435319 791637495 365031936 388070238 303937038 599992132 788838452 400346987 956292769 118097563 268786109 924153491 785246735 681076495 473907254 803664178 973930655 419175962 291744805 716656799 465567760 226293471 799050834 834080689 761397692 6283769 285975391 269553212 5259779 116305219 196078061 566813108 75423289 13982721 437121260 939567595 645059060 594454048 545866963 768148154 740713367 54262333 964739048 221167180 150167006 541055680 133803126 88332913 357330191 458288016 10334375 110200342 698028780 464712889 107129961 636117864 52744616 474327308 967914692 461482669 415920746 391991934 832452873 109659667 341531673 554089566 905844485 895721166 780042520 194708438 289558051 511663595 202658604 268961811 466986773 206138042 380178276 601112141 542681887 654707737 453026904 93389176 117047000 362544564 455388079 480435948 800585689 68645998 477064570 170982663 292515455 521629668 695332 494413822 144007772 360386733 132809660 655085897 772710043 505282425 329011395 290388307 572028999 547926192 220217782 589424228 35705415 194863158 979200069 330693530 405575650 730147489 78000106 731715441 758567255 341629358 349834431 972305275 136607550 455016870 752916159 612792221 96096868 253767963 749327265 139977389 550368452 670067494 905056689 993882381 220744380 135654027 741904740 82472820 113873965 284442051 98276105 59704052 54947217 923542955 900997956 395084622 201666889 606464713 247979086 874071952 851717430 780671734 38614125 577973761 983927376 619737877 757761522 935007067 994561348 510208738 597260429 35268291 281209054 915605738 443534913 821887233 885644566 904644741 829958424 175029007 411398338 561001134 915174565 601536763 548800974 467368778 881963599 59112486 66671316 842261697 453105042 263412520 253641701 88537186 263707461 134948219 853949372 621277179 119411216 600150440 944794594 542464541 94435284 426918949 591733993 354331314 511450463 27164082 895792262 884220368 993612146 486706634 135552911 22719605 224232990 812342589 547058670 916932823 215306852 137916749 857413125 66368187 706307179 76291891 389076661 524014616 288662197 552759094 138926974 52805560 295472941 695359146 565985209 839941479 54495535 880659702 587781639 241512806 855461027 580090388 477787579 168520242 430454204 764157324 35521497 5494131 395925695 368842060 124182301 386072759 499424081 377780452 880241793 228831358 703709239 112954451 910512122 738066406 983190041 697823299 107607011 850725983 709889477 646753156 823744861 154629953 723041094 308601372 706703747 463563713 97338818 912778052 733980178 658613269 854177436 330285657 828351030 315086909 427056036 628653714 160605737 248508584 845103770 63921812 271149095 810235104 354203391 299703060 390925040 850504787 480646127 869271146 32123483 477198327 461681792 889659641 890451844 548926653 542322721 7732321 888624482 47134702 210107848 297890560 40249404 821089355 231326181 96610350 108110108 239866241 33926834 545758299 533246851 279019659 517254794 71287660 203008222 890002903 966656840 647571226 640205391 474304210 722709206 941370493 612700589 184480887 597856922 389200239 733749117 725611144 130226890 23285943 678010818 20201787 561754396 499039901 530549904 545112566 621668772 7292153 868836927 817026619 434553788 97733765 398637635 503008866 485395442 581836713 556136617 762912482 794605863 766649009 331447416 912210889 655094108 256461522 941615858 159866776 742451550 193720049 496393019 950807450 704372453 253187195 991063144 942648434 2973158 150898549 821459482 729477128 187716060 963145847 782532009 648901742 388470220 182256275 838592736 433827307 156742439 370589448 831766512 530139740 341439958 716310526 266641841 247079044 404699635 921649202 886642082 74934564 134948274 941933319 549154603 147699475 304812249 621430573 443953921 250275819 227723159 972842292 635546090 394317102 47474421 783513104 435592067 648649818 989421674 660386379 676592520 559615472 419866711 400968887 361283404 300855815 975990480 479820508 476619187 773517977 471808255 256719219 719738119 490033765 508572899 291291959 346037271 145220855 914178850 260392649 354364431 896141919 568342111 130255077 681170878 745342210 212856052 520536406 502670206 325377448 230326742 300205924 8814739 990773265 896839221 80244189 738526774 266368449 833739619 872865026 784932068 982772598 15128349 381682299 477616183 885431180 968321091 347962281 894231604 11375436 451233702 190613481 33255059 478573099 657303817 207532334 511337198 196143287 388599818 860818455 73489514 328898747 554983008 397051888 610971417 19277449 687782126 897008432 459313980 163876845 606194156 24565126 524142527 39440136 66107745 145105293 855785567 499250239 915657525 21117805 663071485 9645472 34092110 69932827 166028201 997998643 720535611 876218929 371489002 490441986 263685231 301643392 384574274 888274006 395617832 672869315 608363858 675412402 377191662 87588011 573192239 432422852 857850979 949180022 67360728 520400055 505676683 68552509 284053432 59264973 719347032 317308232 405228655 194248033 630394858 95100554 91132224 133261320 197844802 991984228 120428210 136165668 205969972 303796785 352516894 850504512 35998532 176605179 206169238 40713457 927754538 593924526 261443628 516743087 326069212 237266229 229802750 968973903 898065888 871006105 600571335 500381645 438343992 678173909 45902185 288475952 718390947 250261480 97488043 686476533 867989931 823879426 847355957 779441641 599827197 38685432 888313355 828065418 777392930 919216692 683984763 18473001 927821973 447756169 542003859 98581158 132755982 695693319 293580595 789697493 810191896 695740685 483340235 181947328 788631843 337923162 658221683 429024299 113810186 356600508 646461845 493593872 661730598 755398961 781458394 515545957 621394053 422507639 598187098 530637022 362598155 46058235 880933393 909309070 214437957 817136428 876002309 249892629 510930963 910468088 914887423 925810670 493882339 963990407 583844109 813442273 303814669 854162729 518879998 137288315 906403634 504373981 577012549 188507391 998616266 733354633 955523394 208619108 470327288 543969520 959919061 589661605 407064029 648281746 154791056 169013182 657553376 774789728 99430543 379315358 162792823 283396377 195001689 103972589 274372984 259727772 379789518 212277662 257555544 444414532 876330157 266049060 386145456 426105150 169350474 881523309 712343334 808822970 457593442 424343492 502650601 935867454 624674300 440149641 114196870 765166138 949475214 854065854 687768564 770906728 506780676 345135027 997612361 68230359 224690229 8875256 340951721 271516697 310597526 890054640 953068438 809917104 174242241 384672736 687904868 926325012 424447673 553840151 502459734 308133947 802501318 846854591 102935657 863457499 784696492 21115678 943083873 615743023 154004552 323873471 196960873 673542104 890271669 853600166 785862105 931372453 372879136 352021565 836172614 591575164 459553750 481227039 691157404 722118971 740142203 295082275 774611746 701142729 394267215 772511707 76775382 181320985 114114581 534953772 775811691 437109537 748107452 875369315 943682985 803976292 797406926 828561575 340085949 596580014 380196353 547066347 793028824 764133715 516794800 52914843 130238247 940344577 597488472 156286693 726578535 47100976 903914211 684159956 927989882 359732394 252422272 380652206 50649615 653594203 820128078 156033305 194573878 50447534 260828568 490106468 189522830 765499743 701437730 498429319 332610308 604747251 74879503 305322356 602982472 566874596 85409856 364385630 540091366 695901276 546275455 40172300 848556859 742635740 815619771 506600682 607595938 289523417 6327695 173554840 23320115 47144231 360237001 938652914 45163699 840985654 518438163 562330948 419879383 205429684 187536591 552696828 5478252 161345124 569858835 748933754 581131646 646928317 559136797 716792717 189904754 886574385 962730490 23783868 228060233 974848670 922361091 237874140 74193159 602720649 353226764 728843079 123588473 817573185 766127229 362680346 441138298 498583853 682910356 936273630 47021737 328051918 310008420 163669115 837354467 718568548 322371548 226750732 455522521 637919768 657884149 781939108 835611361 900937107 472297702 736514991 860119808 333737777 739315092 808011455 622216748 656713235 163575345 36423686 542873693 392317665 663306649 583780051 797402836 310092121 850967984 924958291 899580740 744453203 871792543 880230392 346201441 360060878 535778331 99944494 236709918 872819949 71168674 755339325 121486625 396008645 483385959 536843063 297315973 208676208 305362367 805095919 805085982 162920511 846804346 253780068 198505735 878872871 79368942 976798418 463371951 582048163 923373633 542819342 715649591 941838919 47380971 369591672 227153789 509143862 2844921 433426706 438686670 155612023 483166026 205467049 883473029 930591762 540575646 461311176 195967416 410379327 816326221 515427187 143461485 667410165 959408321 563661257 99695073 440103795 770643476 116418672 385111968 159619263 410525154 623251762 346001436 176585077 588711779 381953290 926039339 410802046 339429387 954166694 468313937 326034130 390079647 340941405 178831203 125783470 848356571 43722254 785615610 867849842 468896350 439177219 462115299 867296163 174762670 93839893 682648050 802980445 358239408 904142532 516323423 41960615 604333079 82888700 279924110 572967308 755737799 71983713 862171348 519711850 424127732 373882361 55595830 459353207 317124267 418057893 1292940 872024302 838431306 931415647 977492074 674675148 795823491 328520779 67290202 665423224 819072569 141858899 996938906 812333855 977637885 463130119 372428149 42769559 941648449 260596881 790287910 109073098 512041917 899245410 857261441 944460578 998829010 520324873 645017972 391226218 626957583 842561180 112078982 528526573 250381001 756115394 636308588 962564741 357395918 907413704 58381934 998179802 368159810 403688306 805781060 638243929 592975526 713370094 742884177 795598588 921347591 142955920 223978536 624693513 839235785 914588047 81319162 499280588 243988960 217986311 301122822 71316480 757598329 807482361 696011806 371652642 234066523 430832287 677782893 341833840 43379198 185087420 315343329 509161620 454032420 654274761 172593722 123881610 459697044 297509638 331834188 577531946 222891883 165652312 456358699 859037122 581145216 332497768 176469441 412634467 973856201 820566256 340427497 492129147 632600443 27787457 706868554 408987648 529092771 53488839 910080129 79600129 68826356 705021174 372316322 118564445 378700763 816248081 530722667 851112863 239386361 587172949 796023504 828909277 983983347 292968952 139618010 403528005 675474454 917628191 17795439 424637563 648924589 926878791 871843998 446035958 513257921 443846259 317255843 530985217 170601898 954543973 847309122 867716966 935208984 816456654 558234397 144225109 442632039 364743202 638098737 609262234 583103997 56902598 773960607 76228987 863771808 557553054 309094975 797210056 231213688 963210711 125640339 498056042 218174942 194105343 543049947 565983145 872496828 827538094 597197044 346935454 220905320 897951999 807328207 388835192 229256843 945121035 322187392 301104175 649971040 243233150 997316455 608215031 70983116 562675536 764100925 72288278 124380101 935397571 379647334 554963382 377260119 444284017 629103228 47652805 29606132 645220869 867294461 401955512 175087880 991697362 61040635 389951661 944444447 699507847 121372497 965862561 283177411 726961990 31127263 275091993 67385778 202041161 398953627 590712910 840339117 803098147 581769248 296327934 810845437 165113877 319521859 990622151 265619501 367122363 359416715 3400985 945986772 890665610 912989230 943508312 953122249 855965075 239595492 276794584 954560958 474168169 155213564 740002008 693909444 684354321 695082430 317287938 984329209 451839196 431974432 210052794 204566394 232610282 472525408 606931004 347752183 891289354 116150433 789430788 146057279 379673201 252966379 139277392 71898500 945595353 383629534 342995938 680314563 571415931 591214534 767546240 597623377 227518467 445273481 375064625 867648151 482567425 508230827 225724390 580131126 210608215 408004396 812208111 599805712 514640006 631577239 83660568 906531845 720528502 712742118 233686356 940472735 302340837 40270219 465688354 497313289 333154326 599382018 158155428 415066082 230177324 70269431 616737963 659992381 807156971 36450684 163000632 512480362 626512454 41205224 277440657 792772071 587174148 326779560 71975286 288264558 200130582 405095876 217629273 868467747 273948218 169319668 338818597 820945249 911110986 289706593 877713771 247382165 335081900 962573640 21154073 382399040 359180039 191616180 699148800 12049046 880040239 396268837 412212473 680050454 61518500 594680603 86741914 976851936 521097213 145686872 787352449 132821571 908455266 384616669 35427611 723824405 991524500 363698602 792268556 928013208 126881836 845717179 947630637 2493059 820756939 780072951 735036161 949852666 942909758 395475180 997119641 338873749 891934550 212979426 208692845 822660646 889588055 439480392 941808806 668452374 697849609 746407649 693256325 599939965 778691447 145497837 768547430 122918370 564409927 258336794 391738937 931399379 943862993 559218442 301424769 49092859 937248529 115276763 806996291 503134203 612594322 949208979 878957674 110434353 722655748 684043152 153234271 810468961 367905844 950768368 99303285 183602656 725030649 873729940 676893144 216254771 480303587 446089033 875079682 63034487 595507426 778946082 321456550 380989559 666758632 149674644 832219186 945409018 54787929 231689220 373961952 223913264 153849684 969964747 406173760 732746135 254204223 517929485 168815782 270260924 597119957 906205993 988840859 198701419 106214459 962438251 688755172 688729262 904250638 169774163 717167478 822115527 287462604 547655707 485137983 205003239 611870957 905541534 900826357 844903069 404385271 709324206 355942865 418785801 243956842 176930924 329698260 653976737 583087503 776734624 957803875 693181183 493974167 669321884 128680503 406402355 122476591 656161327 572456293 223692836 342627111 299984410 35747018 873242017 839981438 510192625 709923644 615796499 586046564 489597247 734433088 267389234 652290782 260500503 256702461 97096586 256663917 263677786 545163284 248567808 940502311 582275719 852720389 493600315 479191937 425507807 619264563 644761785 911895128 426817196 590573889 229165152 783996716 656153949 628899679 97600061 534016485 58964117 697862961 561506597 985263461 206699376 876417078 312905205 205012973 817986835 510025741 835209285 132406279 880685111 878100203 586179050 142879681 654631143 896598529 668854246 112263201 626324190 784004770 463331126 620422222 362834001 660626496 882537096 9708344 361432938 705520791 148964192 460135656 778465371 298823269 312336448 899068833 590994630 250046337 939972861 688856370 622081314 760426198 69039151 92480815 903598162 756780648 450092425 798484374 479729859 62282035 686786857 750584443 899054950 453864091 548626168 737955682 804049767 327767895 230435015 639822965 444640488 329557722 149146889 970181823 624470635 797232020 849842132 743742716 748081437 801896130 879813209 870464059 310312807 801442094 503203034 756917757 41074231 143157781 240329672 907790819 940863039 610062786 881652534 978467691 302168345 438264667 877632060 500484478 335840158 208088831 109352316 279964318 778311205 275302740 952479543 893747811 456094591 440609635 250541930 587580809 919851679 537617588 609818889 299923619 50391770 17148600 792553001 326189260 295084099 719563193 729080766 270902407 383295687 364159592 721130573 844489118 76863483 777043816 742681293 402166678 758868094 495344035 961900401 524629631 175246001 608075357 149176274 735686572 41209591 285116804 205158565 612607792 103957211 579763746 699064284 904943312 277248342 644227775 196606704 75705616 257853497 738982751 296321852 135535782 208376498 859401405 877094430 280661080 924861959 856753383 138422255 709789989 659507198 622710195 904880867 776308261 380542388 301634617 744230073 100984260 771570782 188814723 722726557 393253448 258480928 948587053 974054610 2255263 389454193 797983901 106234798 568372715 914696891 298242627 91093522 581481246 360015808 839472682 977365401 461841701 228876043 131810170 765658845 907880585 474203664 150311819 956514490 725218904 656013758 322660181 953116072 288791776 266691734 630344982 481647357 639059518 675456326 354882893 235476794 302748913 840588895 449055568 295965323 116065207 471268241 736688925 37166117 397553881 352056106 211188113 62500499 931281017 702780275 650156890 920431691 374575352 800879654 830776634 929959443 659679951 262400403 429577015 273888650 671475063 746207373 197018625 318282996 601998387 231156345 608160831 202118754 313561941 329325024 725890650 895993941 548589425 96594497 145918762 291180580 114148539 538992424 248737625 109363492 688976500 556004721 901396211 955500335 342671284 441187698 24183864 627991717 188062794 554113104 810644191 913847739 771371085 299420717 526769678 9511909 681982669 800037403 159328538 560388551 575626466 57561784 409958188 184241743 370037409 350364727 329846023 527185266 438579154 983636640 137842334 424751665 570147660 788424980 42207481 595027064 174239978 889862058 831802066 522625300 225274354 96276152 250835348 235460795 349903413 201663564 597800321 972993973 805578707 809099931 943639430 644724814 856083266 183350965 265425177 270848414 47888990 463974102 800359394 248481126 860912550 552437571 370684392 719564065 180895624 292333807 769616476 5366586 216168799 324689530 124005475 51441518 233955179 280810686 20549836 815014567 962556739 437194552 732625358 396188577 148726110 84655342 575151811 946002072 606944448 926275965 522834138 733293159 891376696 933875915 749711280 249832312 158813492 21511549 564153561 2029145 641831218 718547303 884748408 106932410 885712339 276981836 180385971 766725156 729046843 409023083 140746604 889008393 161098648 841013018 82162795 492485589 139924056 437540758 96995082 799428208 954570701 813650678 813011455 831948203 930329565 670651598 927133813 211350689 4534560 908844321 783206658 356061920 574686456 21398447 366581869 35605611 994999664 528488624 721950255 833956077 414513759 247561364 67083585 782063052 58596244 61494271 843344259 505732928 31845730 170191318 359449211 162923735 511032047 469109110 620416894 124458068 191581588 1370556 590847417 603740299 510267607 742052159 343940225 805941683 922799628 776510009 518034220 98544635 562705744 442439137 952063895 739802861 215139289 635285101 472163481 313546414 216230631 808422417 210193116 901919386 174057100 79382297 126302111 551651671 614973475 660494905 660005271 104830792 592752658 262405060 202195695 866280519 803644969 579092094 608511109 686692243 594231359 411388625 269935771 301601298 409211686 23924090 703800959 815426347 441963111 920710214 89331823 501409449 122368689 310457625 826344508 251569935 514127500 488533941 672213121 319724940 360240746 650782595 802498271 677549239 789662862 965106397 634974894 418178466 466725538 620938537 549815722 36023322 197138118 529665351 587198264 491235248 520573068 544299691 460969309 324628680 173676121 874139395 532617246 746543249 284175462 418692596 658711137 267156277 50101861 879696077 42236373 943448133 318674581 198910366 529365227 427716013 547202732 357641358 466845054 582226799 497124128 967739829 275450470 855629995 778056103 341861308 199005639 597702413 624608763 153847021 498005576 77201150 232812923 605525174 472093015 908339510 841387675 299075034 724090939 222866902 986450413 756333 250177270 161969048 777490664 947536325 414630615 697774883 901070440 86220883 909236234 25771964 107910786 246059199 12453201 835038540 270601473 899339708 367596856 482114734 485219194 758163830 993742295 669504915 55889712 641765705 85018407 467010304 187574850 178373335 797558864 773338856 300923690 510036357 436869634 750707852 102412576 446377328 470990625 96108596 134807856 217827702 168035937 5736657 941687567 52943163 875529818 818635318 326186651 662729495 98958642 629181479 55625526 618473479 808125840 425573387 955164779 571163645 85709064 921477740 206143699 514267389 562466644 902093268 556005508 201506900 674526138 303438304 259062277 804085006 297546593 872660872 50802303 489558967 846071654 694576969 424004020 391264616 576599620 530816874 512613200 746468970 931009105 248614751 900679255 551715324 692187721 123835639 256765356 991428539 249936418 589992893 372295520 821340666 57980152 607849076 995247622 715097757 28748641 972891884 193452212 983272947 725351688 67431592 822329597 611965965 1493365 579034062 845716153 685549516 652498514 645843004 762944276 711458191 613993749 588213086 736038642 855213988 530202824 814541776 149719610 460511654 557068624 245872519 344551669 656292300 170889893 192143815 83002785 786817317 964767724 402663648 449488631 709817047 396276571 956482859 262541733 203128459 695757186 860412520 560468301 503743862 4391 354572573 552770849 586266774 916005936 7824443 350995083 509015515 866041889 367677859 819186230 518103127 607011754 843465272 11000802 916829540 806884299 57842457 26470406 159703144 849969717 936497267 60624877 342000831 120783049 821016967 781462342 581920444 656217832 527769484 873731223 705947657 557946309 347729975 613216917 297201711 148960215 284117782 139845726 136841216 746900964 443677776 171062430 261339161 712855382 546896699 409035475 947401269 718252623 431202103 639861930 547323172 961949677 829783889 932820169 75050537 388308012 988273219 903545169 740087959 774743026 451363612 238617542 334050393 955948272 435147286 70165590 617451484 655501283 412955307 201337898 907558804 235799925 816993955 95725470 595634719 991158094 437714452 845376013 771993047 839318775 620834263 153302643 136472111 20151471 85098682 102985714 967863773 810177066 717572227 964721496 839907770 653913413 211302150 781646392 746733270 146462287 871883762 829101827 875662715 580779287 26931061 221773686 375269594 183000385 211569273 507525968 528457246 473314204 556341700 494549842 251934174 962534935 88446235 334435569 4350691 342840891 387830507 2947850 688360891 816170018 379039020 425800220 938976985 491717544 150602051 289481013 236297167 171706448 708102908 350976299 666817491 603426925 375541053 452625724 728784423 973192136 933568334 135074168 691698030 112079876 658444861 607136607 952809031 236167597 179103161 173996533 305136118 617349389 377533311 399082150 711483432 225670302 495830656 830207538 817438780 977296881 901625040 842358534 217212796 736207981 470942346 418275250 606752889 984610447 824768950 902756226 16787504 43612933 13031256 813093332 163191892 402194120 147862069 245866813 620842550 436786586 475347609 388064999 71672046 941237539 730322831 807253032 288025171 157436931 446608345 40872161 673683410 374177265 329022648 147463633 204220561 315829460 180257144 179080055 660454480 154318253 800224078 761482196 290624502 479412777 18752354 382255838 905735267 880877282 756180463 210123770 387771499 324447104 497370845 498122999 805389875 616161345 73371335 490839055 154319575 992580962 561206324 300895179 984989126 813015518 225426001 397018701 315267173 118297912 829823697 20793649 476851349 479849019 125626529 482131302 432826656 482790789 105367005 702560779 421366751 578518376 409833036 809867364 634340354 53853983 635567041 407632272 959976251 892552559 855812717 269075538 534068818 266858661 66039278 381926398 815139903 628872219 127240989 997084392 916549519 703290239 874665906 120571882 210656510 961551919 459800481 407946517 355356959 458363196 534411864 796534695 772925188 511200933 316374716 990038871 193073537 482172418 206276292 136819524 294335264 461742290 826490223 603819667 499690639 733092778 200187415 394930928 915730553 884985939 774553648 158209069 95147953 427932747 227627449 58855742 641823422 902405819 175199337 159061455 123538186 325923042 181070087 809599030 492405082 805979101 252065485 619665617 487756352 524158243 329020716 615570161 639182051 21945052 912181387 801383822 247012489 499069958 751986519 870395619 397771457 826086678 891162671 548716436 134691895 649856231 171220994 290636668 114128402 36418181 773409897 175197521 64253753 15913487 204717454 152960904 633287966 875385476 414611130 414251144 285028111 621482193 544713524 887947337 684821034 903255245 538845505 871774717 48144949 658709180 509751588 981444613 787369072 945128646 132295474 378803351 437588846 658920455 113095586 170230229 581384639 74803878 319843364 555593200 790121949 371546988 946845254 499334588 319881317 856115700 895504156 764228372 973341261 98508096 564381998 662867485 694412690 548786305 966325102 280034006 901720930 537637322 405657177 827615019 960671777 519992325 722914356 219067034 14152237 769642309 183100228 673193690 83571473 988344517 825854804 62248743 332192930 61998047 481451050 841228372 528743200 443637883 239443020 552833979 498790299 918247868 990833710 640066045 440813877 264941721 845843185 700762820 2314596 439299609 954193677 640333605 46893240 918959971 832769774 507264171 755760073 375644316 607653965 211509495 38003764 953432745 555080912 455259583 581657660 769266689 620347096 757088973 147493781 831206045 518799231 182704782 801843063 740130300 743626129 856493217 975463826 974466921 241291997 930294660 875725555 136803068 126610000 503547791 451144691 87090971 30881706 52131886 482057316 929577927 265613908 334164670 556530019 865400010 648115484 52318666 17000522 512975898 553033 288017303 990995335 15268136 495509817 704348519 603810501 714537226 484713831 136618751 13205982 614240852 163529870 883269199 970431947 293308205 595000725 715310289 845483707 448389915 273297796 176599693 432021272 373577981 610226373 937935772 668941778 544309617 152202548 674945807 810996528 125891846 959819231 323154705 474586419 153910597 189945414 988186057 825912728 449818986 983640797 348331822 304075021 55571273 199552589 520397571 867438617 377219577 185749386 6152628 369725872 737518083 139966109 733957925 565125085 289370773 504653388 439691349 494690059 464532931 98211009 336142384 877594104 310828910 815883882 405602040 885785511 214049288 349558950 15135214 352647801 108139212 460275215 877264944 311884457 534564289 858147651 559090444 154826616 652386876 419502609 992497746 359089895 956611151 450394964 815120415 566453866 62360316 571671986 385054494 508048818 327745504 959541304 309769877 115331065 733158152 517742874 463999174 791766525 421037935 822611369 688957772 963523643 354978286 56774828 750516708 116248559 454469885 729639710 155500320 930070538 873672541 655540546 778433314 598696903 171624400 391980759 948167911 537611987 720006391 975666441 885734699 24251734 824083347 558188020 521220160 975116857 973070732 385113660 648274705 909448287 898341042 853791666 708172728 600386936 75225149 831292420 571153597 555383706 420807570 384767359 777008968 1143857 565543914 467530097 947782210 107379145 426472610 18899551 444860353 5044639 447446164 652588801 620572083 607797431 605292071 9585023 421438564 138882100 369977670 221647863 394589308 157230749 344668506 428009040 518031579 342529642 186239227 454855764 11645252 79151779 281857382 691786149 794892349 314461469 842123070 122971876 283311794 918700858 446568555 110877822 841748660 83171496 810961969 263158855 588080305 507649920 418205618 371057133 216783509 991161736 582504805 665053019 785636658 358548268 853290721 866305708 511401888 53026455 84194091 139297087 525451503 17242371 163998419 631060588 630521210 822382316 380301761 583433597 944629799 206420032 587576452 376754328 235659565 349032062 404400420 259107736 865819739 597900160 929016718 36311660 768252659 995459863 83257178 371505634 995389935 65390415 498356547 749785317 122312146 756093060 712726158 337790167 136012097 788786700 812675864 915903219 280249426 115369201 526099477 73769523 905927534 222312564 624872683 726205212 703897441 237017832 918927314 899548415 573057095 782999822 190094043 889430711 137615221 584027968 133396258 776737538 856249178 833637507 746450440 185799325 152321709 649976748 721264155 855642045 359580602 269261222 530241475 986725868 676643877 104673501 339424216 772954367 965483087 481126637 735105564 934391234 15548072 302005279 559678395 267248144 643072877 368879903 420312119 266874180 355064321 88131250 370886794 533287555 110730990 926281328 9934994 150258755 506795185 534673575 337151610 158228752 966187778 77493720 34388607 60093895 741196512 844472707 394569413 289286659 668544366 158416531 410887691 123910008 321704393 641439004 358497962 448867262 789519466 527072129 638528722 255476723 919285492 988808342 756876303 307630702 459679318 795752035 497850682 127365573 747030059 462837552 453063571 388373549 723227304 824342324 930737165 278338912 168115145 71296052 451639633 920508376 460676972 34543764 117589206 116126773 799148332 649815055 236992424 55224165 91399248 407628334 940382251 755006970 486485514 76087520 740878222 389993317 72165419 895054075 273377648 887762484 889006969 458098637 207723057 41041478 146961622 944489141 921852632 209819351 241709597 874481017 768710285 202162838 528682313 137815119 808679316 627330400 476064728 880665076 870073881 60442045 102942171 914224328 600523719 124288426 211017652 178431542 290720244 677720753 331509561 40649029 6712060 711991374 481895541 329001591 520030279 760558015 883366922 627291857 797570722 788964584 520412615 450323128 800922333 593248815 729688968 124034053 11553699 381585006 122979146 598727546 382848526 131326747 239435145 207919821 646227314 250628862 238194137 751355564 489838246 785512612 858143897 69601494 873441087 438258191 698398173 971975076 939431521 671670537 424393212 239014719 908211233 461996708 426126987 555051525 651247768 847354001 720156525 381048001 589630022 311810374 930640121 693156766 214275166 634557538 729398325 348986061 706917708 543115170 14783023 228214652 989874966 987152313 519920347 106317549 891348597 996970853 803103922 353550397 579921886 743038044 661582409 607421996 763634444 177790344 176643520 437117324 390212131 629800427 535730728 86362294 758521132 812211233 485786084 922169942 543850813 323583179 797865033 562875138 604164128 627538293 596550809 158995602 302498379 3750833 718822768 773457049 24119513 81785712 662608087 167963525 52510168 548373553 606360143 374417851 848651781 871018593 892292979 261111666 625070980 362532702 749261952 645043955 458979667 377808426 215717019 760713334 212741929 507133176 562923182 702536222 167966081 361781132 122113712 732424182 760106951 118017091 85642807 7657711 39385302 867477694 91373008 736823021 429436305 180664863 941565362 717046015 835811393 20206710 810208142 658354292 459668019 942115008 871487485 733039544 132276195 215201077 372523800 782859385 793597254 434692672 597497115 748984448 37441328 611506252 710300225 55077364 584489802 989387305 455399382 145178955 725437757 357043055 578449801 722402305 617760675 298714433 938664849 781905370 968523614 524307153 762194387 425396674 682039546 434304997 104769330 2832986 591821183 212916609 175372010 964940322 460615905 226984165 44943403 435165281 860670796 877687343 821094641 696287853 179538686 87623453 757650489 74154151 223066429 169581678 955652743 728570708 559810217 629836376 564085535 959680420 840056613 569246270 261742959 425430647 804440129 423608370 883728784 142898402 134268982 716853274 229742747 926815677 254331478 587530007 565780953 480277990 744086786 796218566 442787318 974639135 48053535 88069993 931973985 150485301 188885601 917518220 807780465 346975495 561296741 949295767 875203988 479010159 89809180 482836225 45421798 261459567 701085448 252484680 904327200 652795013 94299509 953077225 518365758 766796687 129392799 897459281 730452915 742676046 317801625 443780635 93155740 715137529 496303417 781827971 81571020 1281598 16881540 947346196 310827319 584088269 306252784 845257751 676752 180915262 784454566 774405774 550409257 939371043 284235796 312310222 910184136 491507137 802696362 193216679 61583042 416157120 428317210 104330439 462495990 251213806 146784005 240588391 553249730 435436608 484600765 754437194 171815729 4573927 233108430 26705291 77517365 125504872 495013722 894942782 658435894 591033089 492694322 755689956 398035611 772344942 941569806 819431855 655201133 141681021 601857773 240854313 721684847 297757260 594210943 442551099 37490916 695046569 610401677 366389031 998902850 354507263 601328620 417475021 706217705 673667925 991574252 758385726 659073834 965036515 134331889 148301290 701081297 499958378 470905103 338587439 435602939 69733322 394975795 222707922 56249343 123094538 946101700 182980670 699285835 881014499 52149756 814022788 788483881 636147699 16174346 299720030 536046171 576733822 995020875 506462123 24267618 658445130 450471255 766348441 178150953 57847207 551837940 448818217 308557101 963423315 770153170 181122069 98800067 626229923 565296301 171403646 958494376 804689031 150544292 231397930 989360804 915346193 435697419 857353309 701156531 282613628 330729529 493875994 376237212 952861042 707804657 133621425 635227924 724161818 202653624 518129358 599669255 368540135 65539218 893772858 752300607 6076373 747085389 316123594 212127365 424417820 263034170 806252696 994457359 710592997 951077124 61796331 184091803 856494593 796692450 973123090 827966824 748366222 545357930 971244431 256701990 283313111 305091021 593303060 151791051 141301759 410257749 509960524 90792803 895432089 233525522 907440647 50490418 897246600 353226197 563481906 410900110 375871727 831409641 513373043 665720351 321663468 236898029 607602114 788514890 11348893 796975957 54081059 635292713 495802081 300908363 912872656 699550653 658832283 517946355 51349062 379169155 589091789 26327618 627623030 581726280 304774120 125106700 208940798 296810059 947412701 46509714 757766341 575995600 987158203 20795366 701845743 191280812 806646379 97132084 498904334 251556816 949338565 956331267 815678501 701678413 946058695 430838725 898622156 217671073 146927604 594385499 412250825 860390958 603661609 55971715 210318263 393992630 965059283 500544597 651099418 976061049 794930165 930628233 587802550 19437498 361335979 812340317 669321212 324913939 551341022 797667563 597411002 415781569 117750809 812006981 789210168 617207724 253023509 926443427 806992604 821302157 969514756 193091069 663829292 779949673 957405990 393355297 930782952 924801643 286875489 3294633 615090379 966411362 549396562 151043808 757369180 153774282 165114533 970931919 990645163 518277643 172159082 995044659 969679273 185211436 500600108 858949597 528493420 382405635 402492211 439767982 307304645 400199073 51517538 522997487 82744108 392545816 701079855 275018736 659344373 812796313 63647773 261308684 152544259 445984791 996289942 469552220 522273401 743343525 864682796 892141993 872823688 728022934 795122925 851466662 904792795 194676977 445343901 171632733 394285691 727422155 945150638 70026215 524839138 894794212 386104595 203903116 962402868 587787248 234385890 730749132 832371987 783981452 932296570 41654806 535231828 88238153 892472671 156580686 62786181 943494069 966996281 316976710 71003941 671453486 803581760 368425459 547814114 170727957 575987282 840091887 463510739 198956504 811639653 215541665 629763061 530301046 218020234 14474034 875884618 999045246 175973534 991985673 985490602 952269297 18763168 27842147 426035119 433888267 10528408 673614443 667390171 126015968 627447421 398638827 797792680 748731447 597096912 382474142 771951944 444482968 160263226 322292530 373994177 343599323 703464976 185944469 764585923 856670764 898095549 408475961 381073034 350370853 885393888 83354447 959063433 117526795 74196075 283006879 583738691 669099672 210903682 660117245 761205929 894932889 848683780 734875171 58482687 756177251 153862379 489299271 916390257 874334657 156697140 979598664 466507146 527555246 558107877 376715733 114003735 281003042 96540681 440739166 963947556 174160972 472575383 908178336 237233284 192932755 604240557 466107860 904855738 115568206 615438320 543168221 335819526 167506521 101676754 126357207 415408820 70914676 222479285 451222103 236575568 297671621 428438365 315629464 723456130 570819668 321956798 740673110 524461235 559199127 563073959 805054279 30340745 436192932 852118806 248109427 941150435 859531848 362960534 320850387 859219361 43015878 89642196 262346677 8280758 692400885 93818656 766798617 141409325 409609403 274007301 646483366 918931236 383858250 67807776 867840950 443543000 159638653 14570842 71332291 230201690 960741144 887543952 652592226 917159987 944988522 378681708 337009106 802219452 197583830 609269602 272868268 609869907 298257532 880668621 393841582 471120177 378871900 364788903 926143241 882334555 513754661 580081649 17897680 742639537 652118505 720079837 383453274 351387528 771993077 769417774 59690998 327714618 109187184 274823665 205361471 429967439 514606532 317021886 804680520 97955326 290015864 662888225 165613464 250453085 873451815 510197670 994023340 893031765 437282195 352794824 278241273 345221214 907799943 186643484 256578009 891939574 85223753 377595687 594076233 354590076 590483858 979972660 549633520 760487883 646695621 566354266 378632161 838857957 152765129 943818714 168271181 268997397 851107760 42690072 148490801 911389276 316368858 995386129 937835649 711904389 45204290 650386524 838726871 870374732 327011927 572962322 437888142 524734521 540988941 839347316 141221280 772749662 725237464 447320242 937638942 467299393 214129700 701211555 779066010 263063017 451772373 718876572 509511655 216354165 400025751 743591218 303373838 555436681 821125381 517841311 707123618 520831178 197701110 501833884 156369182 900330167 770753054 64019975 280950434 931995722 869570744 190305753 908098361 930997282 474758704 205815074 488998762 454940915 114173284 351522866 688759850 391383539 364579021 268778169 487299151 3244569 899897208 214181375 222496446 863196963 13169948 704034478 578773379 964562378 88853313 575664245 872534884 122618448 594513021 479916711 954996784 378430931 727705770 145114384 546696438 204340447 786286752 291280420 913617982 849528401 207174980 959759889 336959267 400996964 431936360 145919659 496865168 150711148 306435917 304531406 713284981 743099384 358911373 617268780 801572816 588860532 416636456 540290853 129466162 4147298 13873053 551213351 307944451 579344747 394467022 36887385 521114893 369050341 870654459 448954253 134984482 976316117 540178909 192356393 203088830 351436256 384823550 285417058 115259260 75966606 807166176 150523638 527390835 286274347 104426496 333775926 5277031 641915795 976265912 85806028 821619452 18496732 276826699 199387289 981106376 690913183 227409559 342977479 118697113 966243000 865137284 776592031 968347308 779134568 716586417 506272419 89891365 912080210 902918425 403858789 445137081 786247462 545355030 584484390 185936521 312164225 660493776 328279353 554728399 590326149 89118497 340249208 210595528 843205541 334308092 581878867 344499346 965305237 916281716 339794451 591697678 503066302 223885547 716932752 588730375 542618314 379931989 373112675 806810468 174473681 819431023 662813345 819434288 274611071 529457102 883048427 505158948 110064635 535797143 722619502 816202576 853025618 252036765 977234244 831364782 295127622 510226950 901657785 978317462 823939438 261637045 346210000 47770445 931729325 559050769 613564779 780435756 369761444 801545765 534891739 738894866 950736451 148520441 995559710 319658531 521472801 58496906 351690867 217564356 247099993 721085372 965510274 44844397 136126624 279627859 481613478 126938423 189981365 758693887 233071203 340531891 642645355 301191772 201390013 637186716 961002507 867872893 790934499 797049440 550762884 424887156 677374309 142239735 372613688 191004655 763479535 45675993 424387445 202433648 789807970 659786439 451171768 319580469 724965501 710213196 232213279 848192034 89504981 173946461 371887228 908573077 521350625 727743980 99457180 588756297 793365697 871331304 209531575 666143443 160228595 801743872 746992261 207520899 114092848 15278712 90762586 42664758 881390651 593608175 35071752 255290642 291291513 913630498 932450099 169976722 223180935 665340470 901716014 789006631 874755992 756418728 126980201 353788595 992151177 772155306 219595789 9296869 429432930 149197198 772061687 52610919 342068455 842052467 216968121 971941241 796718523 180635933 170910157 58051524 149423768 487823404 945304102 836545596 888184896 515753697 758958677 203230382 183678152 15098195 376851846 900653883 516261 287831878 660074153 282211807 447960263 366337744 417181660 970871344 627660045 156279004 285431468 93222203 646727546 265208185 756231501 486753015 355836882 990177501 790082251 469080714 867204389 613772691 935033783 418401316 331944831 584695854 60099107 982117768 486133832 157641465 377727211 959336937 508888110 196348872 648538074 181782629 446682623 487649492 916291964 82740077 316945782 823257173 953154645 244066683 27401807 915198230 131503471 200482785 231208667 812927995 820633934 371686008 364534766 924762378 17330782 72971998 745958833 827531613 787222560 907294493 326293629 748806596 795875972 790773810 758796050 401309656 33797345 533254640 630899687 358933859 18605134 654614039 100987316 84123809 429283918 502535961 288943390 61371860 928203272 582769261 780735866 442572920 312514394 787136263 528220674 809165666 541776436 119546623 473502314 503620748 790633936 113442565 546109394 846728134 624403178 924897853 704188514 925745136 22187394 24071392 548656951 888158662 593027116 813372066 12140390 902646805 523526414 999917136 96768218 840935517 341083430 754540696 728805882 859172927 665887572 715368523 933144312 165608628 370769478 750539675 656407649 687685829 220477696 264349916 446181442 533364515 37894494 926614187 301154159 442136783 924664688 579874113 81292875 323771918 220849600 273997836 870617341 746521348 180276713 936311653 19949361 292228451 170493977 774695159 528155576 40558308 489170809 622481174 859598878 636235538 539605000 10914972 407518890 128827300 849107051 116825743 48010062 657764835 652349402 666481509 541802208 691933779 253055948 94524706 360900038 697799471 242526773 125643696 268230210 165920452 502470743 756813817 887861717 115989333 176592088 559675741 433269172 49992457 658792362 656622175 873019618 689968553 361173897 677898114 400140562 187883103 232725706 629149268 86479914 565052110 753571842 420107301 744294002 557633877 786205142 870536021 460166900 702648089 390652251 420671717 430762544 859186415 190172948 121177383 53365496 609903085 186753862 480431523 327297748 984363107 766322314 771391036 695936050 51998734 884799066 670665894 378532090 175227103 667972262 369881320 487797753 566691734 725076961 405506958 395630699 363580958 312287024 815345809 377104839 54103525 258932944 805805313 282024821 536402431 540181817 572104687 585168754 275244645 950150967 905483849 507899715 255316602 157520954 90073698 850780749 662780394 657474473 695547666 160857333 430675773 91787135 201058123 508756696 206392935 410733118 339707650 385807548 641341171 434838075 111308116 997837078 320619384 138957814 742804156 777488979 194667571 191651106 959895517 865274168 222814449 172671302 611393906 140148227 104142666 176304667 836422953 65299768 687968251 457149354 901460364 398942899 266556585 578851545 552012770 598266116 717459100 703860523 491726921 181557338 604001035 916290319 292124843 493610960 306070895 71373082 774850531 615480681 873745826 446956719 989120819 101433594 66052576 902855819 859725238 965917806 670390620 666921512 554607037 180549835 711275341 849041151 271381173 22659087 501057087 15345956 888295737 827645083 204162766 675909187 32929036 154522488 659504570 798898772 222520317 63375544 1799324 868940757 91164297 475248802 200024181 33202942 182357328 684353312 869925613 285996345 118963620 639956679 14601383 898789416 974331198 495016228 747833015 175796791 31136881 274838721 390944191 192767500 723257423 636390081 689200928 234416503 503997793 436189012 314832480 386588201 7903664 530383032 670969702 230048417 949724015 3272251 689536917 589395570 370461798 736909178 570439558 34398976 911107196 133053697 434756417 820462836 114320311 417654050 354196660 196722876 524467547 34785101 584034586 855922659 368418225 419517009 269944736 398240725 651652325 801767709 225401610 262087019 961366770 439433522 697177768 326053946 285932472 989084574 431188551 718698216 158063980 257194838 273386944 656438871 863120812 800636711 308015676 501846099 958887609 765176872 743444723 805756896 929305253 963397254 245922668 151013925 125107964 103840333 957152907 376118775 494590488 427230693 247379807 350516282 875667640 444870693 718583042 800609347 436508819 745791114 129130547 471913476 284619174 934969835 122140039 698503457 333379842 563800134 705934957 174735415 388810352 545188861 519988477 131598313 760703441 880545854 227647819 135664865 391776842 959451612 598239720 188193873 556665447 497259514 696370874 523707463 426114730 886288031 342418528 742277753 987459173 748347476 517806286 548558682 297944282 487468289 150809883 315015131 945487825 467849471 526170275 559682461 858925233 333916855 141479794 577687838 346053653 577189919 157598133 456192695 677788198 287234919 706101537 953328982 492093519 47847376 153355075 292272124 429206767 16614509 393159096 839789853 695742467 871508118 29379358 700141108 930984644 68264910 564412707 313243586 726762208 680849324 964794269 268843014 917887432 245928154 738798029 121015100 60726147 991116218 914292332 608811703 932172093 315651250 549959067 515911727 457954189 348818823 556024259 451955846 954032810 392156186 931694723 530966825 72600471 977522923 2432987 450461381 164222549 534297055 424910783 556129038 727411133 976670775 455336713 79566184 464671600 99596466 459281828 190534970 294478203 882200050 896734399 570314060 780661275 519142931 685760814 201922379 209113561 437076911 346499416 725146860 475067453 71467665 428847019 470091847 132967045 931952271 553769071 539145245 173849542 653842636 725388055 890861972 651802096 671161699 410396456 446554595 154025906 555067068 611752266 958063136 9686061 190383219 762398912 861674642 378370020 599745265 78722702 584000407 234290604 416640776 328968187 231989011 904742186 142943740 641773456 300007967 616299792 739632523 368106921 738782334 615728373 362752110 923923592 85013670 688087297 693973035 779978970 731551896 740726473 728508911 332655090 490062908 910218118 858404460 85441852 533780743 748656520 140025394 409040751 304577905 74062332 178288613 978153465 252775057 669002245 511789831 825149104 714060758 278352282 104414936 288491743 431669577 843738503 33625567 399151426 403216100 12463740 307807296 536802451 462782121 878775409 358928696 295352872 224317031 205939723 391914397 459284475 796762810 71121712 770227984 489024338 639519070 346613172 433594916 966046536 507606511 186137900 478580513 666448229 755344468 503242894 719374158 633701303 406483698 161193302 689652819 378263770 947094080 458703694 217286443 691611604 343420452 390881743 391634582 725840782 128930458 273186600 662799534 481832270 599287968 443942347 842011278 718519782 972919432 627397247 322720013 595440922 235539666 73165440 898857660 590331189 720901271 920650543 680756560 405802014 778572896 239084272 776378499 98471916 546925355 432662403 943558040 350647333 836383390 595647790 777776058 611119658 698044138 674047559 849522905 506505924 75332527 75377687 210112067 532238506 161998393 89239063 879874742 177631758 164266944 678792593 439288826 708119725 873317742 497028649 412272323 831466043 872821148 864231481 630048714 896462547 477248147 149724501 328749502 337952779 578775522 266741168 136165510 638426057 153410971 585412179 109355552 25591549 829439539 149943388 234552622 405563832 948576459 97161440 291369932 63943990 990431997 282344593 757577503 521072414 53434058 702185308 260328831 975105820 721777067 721410448 739536601 129224557 283838466 412354069 446256551 654817809 885603056 513847590 253832736 873965166 786595152 65499114 649527984 506216148 568229970 269151404 391306874 958683367 582139338 268975893 751074182 245990754 643526498 626241421 783165703 908316081 711832427 449143182 317609316 694985111 425837531 366022592 761724619 881241402 108593674 67612968 567787528 968389583 829904829 432301246 728758857 77059246 592687362 223389542 237141579 892339924 997902492 155866369 505702279 110277464 993258041 464508648 561853392 510023248 262505826 491447802 503143522 308468410 242131096 645942439 321406235 722120075 59413506 730802022 382684950 955654084 130818343 369083843 472653378 220772147 282309403 232565986 967516866 621857742 404314544 531876196 708010324 244236866 599341334 569660770 697680850 195582196 428794642 200714250 576926709 681358404 122636867 73875215 161584508 762932815 78905613 658542320 139654600 383859316 733152664 446586334 721065057 636058569 155525313 954340140 384007496 295968070 459618686 538693297 431646044 553799317 726928863 23680275 10136855 779145258 661276951 212873805 792787442 345466195 677083162 538662516 114977235 932947609 431455502 445384804 986335814 618363389 878410705 256629592 394155282 350531481 108694232 112499605 145118721 29796368 294661644 224331164 681634990 626960398 945821837 749623582 877238780 494666985 370393423 890251383 214368529 446933326 882918755 411095925 264703219 408481197 712938113 484925973 415755678 518844341 942073641 554877552 749584536 809260583 77869265 28842677 252403633 957520145 26144810 261743102 398736814 980757650 285490239 866323700 885097684 297297957 801026567 453618420 879126591 69463637 742061517 913453267 899126362 715114091 514264033 129514862 526352672 43377139 197131127 232225545 528497112 519955107 662282968 712219984 259891146 900939847 164546620 861895219 648511630 437330618 542622874 714816693 371344608 991080288 475329316 238594616 84774057 843804075 11360661 120787669 567130073 908101470 9420492 46078933 409373889 452820238 603824914 25030888 703318951 788535564 111236572 196290786 799340508 478229037 997961017 362821764 697907921 75961309 148065104 517395721 933889829 757397217 463192889 530477219 515533004 999535552 401063125 368001150 281532935 935784072 457328533 305923655 533097375 402608604 41348317 615519050 936627565 500436151 839235402 115267774 536344800 540162335 890597970 382175930 82563042 552905804 887205629 825426610 197437564 905108189 905771858 451800366 894688085 568084407 281553598 891632009 869936790 291164026 163593260 898859075 490042563 2062917 649750465 411153462 160773891 796537558 284973159 876975021 257398425 797304566 172284088 87525552 703244310 411615638 372143306 758730344 908570432 533259551 99690995 156608561 502525041 95327186 730202684 286369272 934239811 86728946 652442405 589226542 625516707 484034075 732933392 256239889 111065782 689189646 815489777 568145506 155845814 620956294 154581721 387917851 911165498 90645489 975507232 49676303 133119748 624778442 65911764 970726763 843204591 260559378 478788421 446693878 712659213 197759024 283807300 89196046 764389404 387050139 96133792 638783871 510489900 927351834 808956242 513797489 301710652 801186318 377199330 971767908 351212101 707778588 716612554 928093002 13100670 521026354 401639279 894145452 988911091 801805235 121244886 554453856 908671691 935072651 381860646 66103576 232722528 527771880 357452188 223974987 299965170 269150781 341357793 535894061 505719620 130117754 120252266 782922902 46669111 63953002 9620295 926358534 912150657 178066216 738997047 799182142 854295570 110505209 540659452 814138055 960511192 834520916 30987224 452206645 314915774 824314306 236833792 854807335 181510723 719778301 217609408 926351935 896233215 209942408 707397258 863319957 61682190 454581848 730654183 542076909 298781076 929723292 744711817 826718033 190406067 168095516 47285679 232777464 607357104 314905425 325764655 426518601 831570286 318671879 572530434 216746539 504713675 48138362 166513107 308207306 721890263 699631360 298755710 933331349 779348091 246666444 900821010 732872144 897613252 584266329 62499794 95682756 178073009 649799339 902494118 117281093 70313231 735111790 40906281 837846636 373618152 274505364 460978758 308769122 63345264 46057134 830790802 90649646 264034984 861474660 974168330 421777280 801348292 482374979 318424007 755137645 772095429 644134636 471951290 502125777 893731271 475277465 554097806 701974670 177479138 961811853 940901713 629281014 830381004 720529149 713679784 55708269 733163983 480587783 889257389 420534196 513465759 432888507 449284460 937187691 99374133 602897979 50859324 83062026 607147434 399861794 366842073 120253519 850212179 643500966 989127851 725219879 861648463 71369783 678200019 603555448 818954037 933434307 845308019 960010269 787974164 838982292 580167059 927013084 741878016 849075949 973053011 633213277 174598683 366384479 14854102 732530930 303367897 76237685 328741350 73935249 612693188 345757817 657291889 442057072 359906811 164666343 606002356 461935554 680591499 841472671 203650794 146442257 354886677 909820108 355037286 216412284 167938234 620754147 388874065 629705074 922403544 861312983 577921075 446649935 60723750 872864486 158672443 551220772 54602122 575275659 65962463 878973830 537366154 902880720 478135263 40245237 586561775 248256456 749946832 508068248 467985663 751247543 858606188 989168681 952418022 48031802 540503883 872846951 683327235 897147621 563821990 646925014 875227701 224525402 147422618 972991312 199349319 726346361 10669966 345619102 255660617 382140785 524386823 450224450 996556920 956751030 356997249 766298903 473669504 475348247 840268395 505636195 228326696 930245332 820853007 530679212 831569569 731133494 757556499 366171026 609599525 723161317 395990299 384987132 559032623 110547550 88201602 140613160 612145723 617852713 242877840 699534355 85575285 925664346 686509417 555291748 875059749 9652678 37670400 821812434 122370523 628938216 522436152 575966465 430094080 349365757 800132242 469541066 638873277 299808774 958073471 923418500 588390262 587859980 267623259 222402838 704509860 631021942 149297715 459018673 87629224 79374195 225342185 265655278 521825978 628642492 396908209 583518998 412067871 915869053 187684954 784540115 644150385 55933524 360830578 344052054 616768904 393059030 485324064 280295850 470972731 139590073 534937064 934694674 393032831 756025491 130973880 291436691 353398208 610585806 102837358 760246647 119342410 434028403 215782760 311733220 89030002 899572629 412375905 968640904 701550279 816344788 406456759 214543742 621886536 736501718 864439817 175478898 147721291 561041010 857994896 942555983 230327395 166514985 954508862 473569399 726963266 556855544 401851077 558994485 358232361 903171777 145644 616781782 993537485 952018597 116075869 497240455 553906400 645943932 952692750 454269621 817498530 23144149 873758992 513146363 445324314 523665335 418411832 904583642 189827184 393028655 619094489 364857282 310432975 603803072 243391577 405209791 903878865 579147992 796444754 115739809 47228126 827089085 102962289 120172855 549817301 4188664 524249879 139795577 541869117 841939517 974189433 240205594 577014746 529165727 140293338 374518080 414216634 33160139 829774501 196149068 332712366 105924248 365323302 81029498 53371514 963375757 871000719 324895519 558518777 939014976 721665687 60655812 930567863 575714256 560399374 182759741 658954516 888702052 179189240 420664268 622745370 520198903 557431472 283460136 382933027 836571541 399730727 26881548 783372182 149562822 910887756 655741398 841830914 963862965 858966077 232656969 910848144 39467908 440972680 415373629 153107740 934748838 471895469 505879490 207810927 617679270 548570584 319077151 571383536 484616989 971077193 315673276 204197134 61916336 571853878 22888497 173549926 911080148 461990658 644472037 899694351 504230633 594679442 796442589 503119192 913455165 889239594 622285185 510246921 582610679 654997502 338866842 617887491 539687837 911000313 328993914 721820312 643562609 610440979 664281005 110672439 255493498 522761334 748965258 383115812 958363957 148620177 36474755 243105210 502118039 325232845 717155416 413231577 823163451 492264788 863448010 98297123 149770343 686665033 657930099 836134865 217488067 378493700 150414456 841002088 93991169 662005889 876985810 605764786 29632120 186774120 487670932 987391793 39001181 610580577 563468165 392547770 772653533 96171947 363545292 560532397 415004141 458427802 300454067 717277806 214825206 408628491 984570202 257836105 38981920 625746095 431459109 41083144 218310402 539644591 945664189 602212375 928199711 196004778 776853971 631437599 584379352 280121679 419334331 567213678 310372743 617861389 265980696 108317153 960015637 765302770 878072447 799128746 125941754 278975889 487280714 783518671 906095060 736959392 285081305 157370076 134156523 486218474 838104827 635472595 108147316 534068420 216316602 507383268 885298664 251964857 964579070 168405548 491083527 705502150 689379811 853922334 710680000 424464866 469536389 797307820 788896784 752588659 593135705 95004747 950382780 996310680 553382509 85054263 485221612 878510811 386991864 86606592 783792268 771943464 357217737 303765467 549084557 80632808 849469455 470897582 656948203 651782534 337329692 35073943 390617896 930210882 595673016 38607941 77799307 658109730 263030812 25421301 87964865 907435518 174864843 992683042 664989278 465556825 19156760 104746871 230300414 716675648 242078563 816168354 708482712 535153212 752268083 169992245 608397100 250579800 277316261 638814550 133286562 404917425 828708380 267248893 120615369 159481684 29046422 704038710 438495971 42537388 569091864 356034983 786911493 46958258 462806534 386899607 712255101 612633159 774960994 645298420 177361150 132843926 957171608 928310772 480722428 406365801 174660145 754076152 383932101 775262341 930930591 435102241 498378561 968339242 363195127 819858202 191871607 151169712 418870480 782735465 431935546 713908269 952772856 666923700 131746117 402763945 780123076 797922871 313550253 78264048 877297455 979869405 748746060 518748905 819626191 890385200 467738887 991044724 824954893 735996896 408954786 970045754 808491746 408366042 751243333 418543555 962132971 179554742 529996450 419600755 689560181 153383154 492252769 218234375 494382594 810022143 771027766 298146070 711576572 476918664 495438918 550479026 736815823 617460091 684853046 698085188 378135961 784160749 632295837 936169855 48088826 92437922 700776094 276105742 944400973 260202763 230440906 695747744 420485661 533491771 736802101 427668764 2759774 36605176 392706861 383351211 527450092 732717707 52920565 567758163 366604700 651545596 536932089 426085217 96135592 11365951 684460355 190475567 574064904 207561626 171602499 369852425 250172930 220230443 35195376 664489456 59218785 30572404 854137711 814981060 655578374 351520457 527401216 560315805 551804494 776569717 960174776 736560527 268225006 810533340 37541602 57802097 160976781 591359828 459251275 740134509 895073910 212749853 335375398 389523743 349375650 588493223 109180345 777911515 706449497 398165920 239695581 282732520 540591458 778841990 936184127 408753722 674289204 739303947 784479205 142628473 145669501 262348296 506885127 755163372 333732823 58393597 673250020 181301959 125039701 337057618 969912836 682059179 857354142 873106117 918186225 302863949 976701516 963547753 398099517 333347639 254742045 319512616 282658781 449448240 849545734 883083424 261142498 739340321 890622818 223229918 152440022 440929212 340576773 970528977 570330851 385750940 396405053 710426420 706969340 835012754 673035668 552193237 391926784 159379266 380322308 409229067 555341219 559796998 195298794 345006853 990610340 662371271 363150798 782589971 596243568 33504090 863544199 267628746 414357633 772330419 587368843 61938714 371946676 595447442 69450700 461307886 741876289 136491635 96231853 406855429 168298676 763670812 166551001 897686814 898210342 137221039 856924352 139841513 572809902 220292638 599707381 318865958 261099322 908790214 410491498 453429175 932688996 899693284 408980914 245921457 843215069 957957379 313192050 117481809 61193118 829645139 537883215 386834496 303963145 476097182 145374291 232879694 382072066 986260947 22850811 111100903 355208443 344171947 262028547 150328548 160984419 927131153 467626561 681603139 258540550 286531446 9364427 676786236 648415959 360265699 941095978 429130863 505168730 433864593 17276927 561891373 249624425 265717237 784116896 158503317 909403519 399808473 549413575 594201154 310367336 831150176 618257954 116176392 58121734 442166859 494423587 845938598 840513647 472090492 483928583 701735692 934805638 416194445 103418940 671941492 18750901 36518052 132104060 238375144 590496238 46387707 968631541 628878130 225245112 570374627 146439578 328907131 631212827 673321792 574046784 927654035 738950431 112928168 609759391 265842397 746931820 111952953 353661290 125615781 240840103 886690985 180698743 181428597 639537121 854830758 983254376 562653828 841011349 236339654 657083392 670177430 432073409 396674840 262118470 307175287 543661063 73421366 297438212 520971912 793773526 895121973 415881628 896476218 257486795 358290699 720623849 126458574 187687834 701511699 810218229 714837637 329061648 16567051 911493311 625743248 270837589 138558062 188397766 804114840 853467061 282045424 934571294 557158681 458165582 264761861 861868591 817241418 251277523 877942020 923807353 703906862 551231406 281515694 407400002 34577641 7452853 766911846 617032020 20204072 875716708 850812037 320416221 779524805 801995759 59693402 45400286 398689166 393656210 300978829 125476378 982544573 732723321 281859826 91822356 454402513 629380831 495010311 264120312 238345624 15878432 241235025 309871640 45174095 768211511 294108101 146331140 189958083 557400550 433842952 686794257 284440488 311167405 931122319 124673013 964125583 197090204 294210483 531231032 242126514 237581354 777724682 957652783 330470222 582403631 750021341 76991383 387039594 298108452 373315600 498136609 515780735 947363225 75796644 860970259 890393716 364933549 607286636 282765443 838266825 459415484 127880980 438879881 265786234 471327883 14319622 727218560 81529769 987237480 237718218 60377366 117919130 242352706 250249544 247176673 777833428 55952617 295947120 512018397 180706645 430513616 535378803 239930737 841091656 576823453 272062749 401377690 262296525 510088221 427031255 201175069 785045268 69410433 477843703 648485288 989785368 458610786 231669524 790551627 958530630 688421962 138944846 9753596 964830936 120707551 532051960 16205824 781939004 998138702 677827488 906574916 799659611 136629158 477929826 85666613 698374238 33987938 397362350 225644956 662964002 816204323 807076385 998330553 38959568 461082410 874255317 829260471 630405182 518278280 910253291 695062711 919824035 329864439 287018317 225371213 708545450 9097931 348865374 402019159 78683310 75566454 262167361 120265671 399245254 940475384 111324162 619579362 2875058 705289300 178624474 746753269 35175798 240310318 993818785 92458425 186323919 691057924 838887895 720173060 175849043 782019334 409688239 775855454 430166511 971662073 577417059 35762397 659792330 587529364 995039216 24887475 673619240 555191956 393530689 114907296 890628557 330840304 85010995 79459690 817364701 769027033 785448958 713715693 389847959 581082922 551189472 16355679 212197331 618163005 167108040 151656535 691270300 652896770 367010211 660373927 682746512 957370185 768132518 866988477 347574752 535107599 796131535 30164496 623015338 938861301 571898914 563791756 555885502 569057016 368108478 927542691 706065341 772611059 895498556 903221486 494811187 193583736 790312623 833427793 235842941 627672688 221193556 587893469 88370305 359539185 496975732 513768794 229614391 648147555 764399030 356812535 976006373 346981547 349807133 316869813 823074787 414841993 731597383 711350258 931484450 395955354 50286491 705614534 229956423 367503663 710652192 190210831 400199559 913507848 889154894 917377131 846699835 285379733 159204738 439895692 127281904 135399504 498799358 751614807 586808755 417984888 106353197 617506753 854281169 588777166 866355344 422240542 276480497 776242655 755229090 215305330 803967556 458903444 700759492 304892202 751031737 136132869 286498378 233368872 216137445 121979517 650569534 690055435 608659308 746076205 221014742 499915805 372136560 437673053 147218983 576576624 476006994 567563788 63256774 849831320 230794062 610622908 617399118 419151601 267135499 114762454 489078170 585111597 875890240 714948646 582853077 365355400 804132554 11428583 452380295 647334453 99138771 661491686 512268979 74149819 890415265 362878812 181538842 204551581 613936103 726802514 33986495 240751661 749209536 885127988 941719668 327251946 274481853 428522721 923630968 6115330 539269966 225383537 219579202 366329908 774724693 116513403 521106059 448460416 696203735 530569289 576842128 435310301 869848064 307257124 99987989 926455199 934883106 25434813 425254375 876562875 59082381 937055841 250160657 215597588 877828363 198853636 404436058 194776285 927579286 168753073 772815774 339297024 821862028 212027804 683934376 368319441 607104847 639139586 511446768 811842543 235880257 892791240 699807144 68083965 750254833 258313931 306826860 19038238 770215011 575018568 851745206 829960052 448138997 695476813 4573581 514788834 612836757 636161186 990818842 736162023 60930590 844230450 565484881 169681932 625359854 894662142 589758853 557286619 995356468 667194862 255814262 110258945 699123519 984945949 477461063 42862425 419601843 141359202 506186761 822704990 626670625 176536554 895356166 633243384 213636074 574851907 936039984 553378515 2347526 432008327 266234498 993573768 578597884 313123328 393166144 903200406 381606259 897213727 51611141 803615087 911708843 405359823 130621835 64345496 801846552 467953071 172149074 336848660 847051275 22928002 791046406 962996324 52207818 413671732 904910878 268441497 764879223 424481930 137117084 422014889 624555752 317439022 259265584 871589784 374151852 405431835 188638905 576887137 715154921 377625086 92541887 718175669 533099168 957125720 636512521 183992209 588300444 906147854 667650980 806769267 85791614 148468741 499720473 526591739 186928869 240033047 888443480 970503244 802478502 486544047 383522031 14922735 283550999 397666847 837838228 998281036 115485239 835560240 63085419 977187238 77971462 274139060 300666540 234773167 161691794 31114382 158662380 464865249 788702628 609188339 861352111 655921999 309194290 198582728 922232738 375788871 684664137 332345546 64020828 302078467 263157955 509546114 445843063 595364132 229023157 798541018 542367325 910941973 898910546 438907702 612750294 905167430 152007269 374690591 94974781 93881795 383926259 261686235 465831143 284606807 172582480 140452090 432351735 561725756 216382520 859615685 354187047 269943660 58107476 308655678 571176508 59169458 171043839 947529917 297713156 124113703 350998980 330403263 356830552 631583637 276189231 82080264 780574277 939553890 123931894 789934900 46223529 337211208 530101739 674692192 634562695 358701969 325020550 202701003 823175845 346163700 991514670 966763241 387382349 475670439 850904114 873942761 557544092 88826300 810877157 762915131 927880669 641665864 552035719 238948437 31268944 489363579 41241117 67486395 707537700 578437083 572656563 130219372 747697409 787297343 340165690 365206931 249276717 988513700 754205996 556174768 397843483 636326998 327815093 499615268 888129630 508526801 90314033 242561688 886034055 427779268 148099547 799586439 729551222 666765929 146566510 858538997 961691351 37100791 463716537 305775464 33189217 805682392 388542740 431728168 340795127 450564199 550460588 330814475 600187328 440821932 479629156 457623176 639094831 397469829 846315411 444959022 894413921 431181984 921833867 628665141 725781844 723426638 752810582 411408214 40222327 459922130 48617228 951724456 609407284 65417456 833729706 1050982 686877187 188432743 337800937 359042995 925305653 986452553 338121469 601137765 574636888 736548248 94102385 954562589 613930482 947518450 369356925 528046038 810137944 427521253 249700051 274726441 39372580 475735410 910231578 248026535 35074749 510324574 223748481 916008119 5835898 940035507 787230382 866609320 405108531 706666305 992889515 581268382 188229902 922832926 289823846 505286817 41824023 424498085 813374198 195845028 388290015 129779870 931137770 538225721 670629601 171972603 9575408 208296362 266676862 734258474 205034047 135708950 122040070 638052357 347445796 228080742 137513177 47887278 782778173 217123119 520876393 833099361 862467510 588147020 412940794 977617618 733194705 882710666 735223289 344780771 794245016 56420346 749190168 534731493 923796175 972748776 328581928 642934741 83218442 94177541 422504462 765892392 431295632 659008861 118729114 462727353 980483356 823167857 51455594 883396689 682578018 216544025 944014835 62055763 987032888 69442337 85047716 684238546 21056851 247305544 2254914 279696829 870580063 500908011 966102245 706137885 838223541 114940563 397027983 21465628 892168992 545371221 254667079 909415606 396976508 842900653 208307261 119412175 699512191 294524157 348996006 14161840 969288109 597291481 597621174 143011857 872721289 483462964 225860979 580066329 66074774 975461822 257035656 312946874 269820951 972418451 690405839 368280144 136660431 42209066 435253418 410824361 616539448 18192414 596398330 988111155 332284410 88662771 507010279 451963487 181193346 884655676 284689821 888017296 657613924 134170730 865377866 527023674 487661030 434119719 551462861 38613651 689018992 773346229 457253270 750750853 229076281 503212217 634630965 855988139 972782989 981327764 263449449 256544656 784689943 537351926 393070479 123621729 55535682 986050211 467285336 902421065 856876221 856397652 583310196 188903052 973566531 703671964 86483019 925476112 588270367 344501252 9264071 691271623 879176428 857185116 946167517 842360317 643628989 330479147 952793738 849541452 584900158 625023246 943829252 767943105 642319390 809630210 565994699 112206973 930203573 625276672 825105821 328461424 687730330 347573214 384775559 311278357 342450159 975529354 686273693 310745461 705752115 829438134 81760064 527271942 941713715 584730471 841588023 477103089 866796086 438373794 165049667 335348172 797225230 196800378 103864270 387978586 99694418 774887140 859854839 929257391 548008257 868676667 722308344 898124154 771980606 462826548 500870779 188529028 293789991 838356435 393281738 666618901 447381686 95304949 415828964 507340668 171066945 925955808 120548716 815181794 257838388 168730349 210737029 528249777 860297587 794530607 277185354 875893734 553440060 284163225 59363421 365246060 549351690 507080881 928052028 856640953 224395758 896867526 888162194 90540198 596824253 126260032 75902399 56373290 405621507 684064057 646106612 5225850 8654751 604736747 21767855 214739626 839679267 46354388 763979538 724010099 593814456 232361721 175270285 395587259 839611036 832739198 137350405 510729654 838719617 301371457 768963985 255060616 886005515 986710192 62560767 95069002 722152736 387018719 121395578 396800003 191208096 758404820 88670160 780224932 637254596 128452840 725857772 910758635 672307282 589790853 684448924 58880068 535661036 437425898 357548126 182756893 463642865 211488490 123436924 248905071 383527481 902436479 499417924 771354237 509512298 294502604 992239248 514615688 723916092 539867352 564902347 97582827 798646358 106231933 989848465 904162296 29808603 21861621 809145930 648518773 40039526 266324039 378862177 496345837 566664746 101894941 603523324 658299473 111736229 106461291 513247058 710521764 724183324 270819239 938548190 878870256 497551395 602988119 282937764 266908787 922086206 222048829 180971668 295611910 225474723 206959233 388861917 660899733 513522074 232362978 732711705 523188470 610747235 345771711 801568519 950710810 57627520 891839802 387752337 304003180 445599950 890449547 41867037 15233181 58590226 134542411 164827075 422362288 710767011 875980417 348561659 719285172 621018866 615191312 253000010 348293600 491229820 540406721 467593244 808351969 498494781 329379431 697752592 44014014 758773189 708304438 306484323 546148020 16778245 979608987 121959911 438361035 626828039 462334924 855900343 690218040 234272843 841691103 827464158 224650649 813539387 684820877 818197658 429680167 972960276 439134108 508189243 931187047 519047780 385341811 111900955 300255600 673348779 163737285 907729024 955070513 72236027 944313276 193322537 18934755 81564069 232208282 981516716 573732504 477295412 4731120 891907442 595107738 742794116 435792904 850430779 563149684 717265083 466819906 559918460 372541084 93439319 487621303 75915828 192346277 41506982 893528583 472518692 959502884 810923656 17123413 660218678 824620383 353330603 332069804 986975923 990166484 481636211 545915095 916075080 919797601 357206857 780649349 228886271 846407698 801113609 349485206 701914175 871298797 207856042 624102201 630906414 573320701 299323736 289271638 497621644 481010489 852679879 454246280 135861170 822103606 881693723 15614628 705747948 517271157 619886160 281697105 892322527 100928874 91183555 178312410 644974814 839699533 5168393 302808589 850993748 226365247 811137352 149787966 967207743 150844512 239704501 649949543 727906317 46609593 499147187 714551017 300321248 413111602 275456535 850807034 961877685 690338713 240407781 59641351 508780357 416347247 166862502 299545686 3458291 291188231 78162861 220156967 48369524 20810515 790585504 484996324 677527132 1188949 99230836 975130362 835243417 322007530 417024722 304534667 401355562 6414135 611648763 257727708 807788350 356652470 635882495 216794271 750346631 194850529 812555790 59763913 623066844 851626396 858502318 347540632 367211468 882930699 286004226 123784160 805359679 733363071 758581724 963753789 218638867 724010297 727189924 854734203 937636157 145221112 643013636 506096482 33139025 385748563 123938631 613041702 623962464 36876974 855558987 182317311 179808715 340913601 64612237 809456297 737494004 58289754 232360543 406890823 605837434 268471836 775925423 88054450 3168231 827583206 541842393 876674133 621746235 991535176 958215385 340832837 551656304 520252760 242142939 960265026 238980136 518299466 618133852 525195193 764673002 809848452 118368741 188374179 612509693 918261736 870495949 506006767 167084844 591709676 421445980 51501779 95664968 219086932 154596752 618526068 696788649 262899137 320179615 594354084 418210353 150242225 720346347 750565760 735695991 648636262 284903938 399909040 89642015 121406089 592692633 3539255 553975982 324401566 592431893 374055416 776169357 622197310 771298307 480450080 764710544 978591239 409507957 312593174 948585731 569624543 370572050 201731894 481141931 230562686 661567461 13406843 661362438 9082072 764615512 78539321 787513453 682949520 780037657 330531794 990094247 626795378 771814148 652545294 64658812 786414446 670770083 759105966 731829083 266745664 329390060 837198018 817699866 893026083 136514975 775161097 38820148 465593948 483336045 272294442 63104774 395270111 655643121 164764754 119858662 91598965 992102377 209581296 196436751 607179934 336633812 51684022 348112474 106153761 308393990 198922700 180995301 290668112 149734181 184403554 533494454 240000143 639726118 755812022 751399977 256276708 405594731 248938233 111526294 728666546 648095687 796944740 82762064 369254525 13057716 570280671 837977851 644552910 180672721 961990411 924682234 921925589 341514748 770333392 856815520 75183120 224914698 122374679 780442334 176070741 728123604 750712666 968254533 680315965 814677348 873607949 658699559 755874169 956030146 747998578 857934662 398088890 709562855 519437369 112507857 742835216 138630135 664708706 685421613 482131958 992873427 374018654 498517029 906122569 370003144 103348178 75766770 32501549 806589408 644382709 936822249 816640960 298082894 260212320 332257558 932027452 785845527 639596485 813738673 890809441 878111476 826242118 643060444 823431807 77136093 262814664 997556795 237870263 481770745 920774506 138923933 147044346 747480692 558312542 860036477 570526256 528328741 409472301 417862092 741395975 355833154 236543300 143102593 824493370 653931946 372332440 284019610 948617158 475842257 31614665 76514322 297087697 174925562 261705964 199848957 458004178 434572326 214692490 408096783 958419241 936723935 711850236 721088042 34818565 228590071 238057641 264024279 389395350 999829759 919895251 630561715 933237828 901019494 611891883 171527650 473541886 85112587 435878050 384442027 916215578 553894473 201957831 838228888 34824703 566837073 276716061 239351309 979122808 267763567 653532451 120202349 429950204 423524628 350638891 86963868 586509140 491371799 911650510 55161165 294500808 643625915 121759816 347866820 108903562 350707000 773063283 416961979 419682513 237137569 31615965 19346203 90328102 363033041 572535525 329677770 251128741 157212606 83445134 194712540 707668049 436096697 230174416 784079048 393854096 462452333 587079241 606436389 371279313 884687745 477576567 578486332 776016531 539481990 770736790 687166039 863998897 139533505 798713263 766458478 495360820 121127803 676552438 925088834 176235566 976487204 425721768 678208443 479064834 486703386 583826169 221646229 434863448 199463476 830273579 692775293 762406174 748992062 881336579 885656881 147973175 126415168 571621576 458949690 104279605 22446197 992027652 475747909 957457423 486436101 972197918 609547314 599947089 137041354 889333873 393012743 232723532 613786148 29216029 862237124 452087714 320128404 645486337 174323208 24362665 792899163 676643988 839457773 194394509 602440992 490229817 279320141 169293869 925009630 218523627 410183260 187287558 142930487 134637147 257218722 130707036 654237171 933843470 578035010 724761369 873433589 401333898 43295555 698521018 888430854 91694228 714631724 647147696 486756576 376306939 919867509 426215669 650779563 733869991 539697998 576377400 717674504 900092478 581945496 25568035 537445540 418083808 253292300 345572191 729835727 1869701 860098011 391055328 196477071 455040083 26875743 381268472 859421064 886830119 754217390 94105898 393760955 4720772 943912748 530278547 465536614 97020591 636409107 42688052 328570110 917962425 496179739 729188141 15698142 174113213 954146695 978737600 516355173 740934461 760620976 568270748 586862209 470668164 841302334 48141032 634149464 549235137 394187900 435552744 276419203 659692694 171320360 139597670 750461684 784731925 99138610 812346567 850400340 591967345 107184063 141935943 337493715 310713242 270436086 159646775 858504831 47312563 971035241 20472453 214313195 286680630 480327409 404592159 16396858 985026487 489253905 632933289 457724175 591700035 143275754 965267291 309116618 637463017 178463035 451597173 332361708 723204863 816773889 795154784 981935431 523862534 869618306 709261405 516227531 34490513 289451441 333488634 329290320 176205426 216768684 153010780 486903542 670396250 795282834 218768097 537766319 272542536 378145791 737519191 55506510 993233381 611690412 950381017 647288164 257885556 596028903 176231726 966707561 799120520 431329931 619515873 352966314 384614992 661546894 338130837 743032292 158726188 467904377 342018394 164669942 964315377 857095432 193709399 196231121 287605410 239167737 260916870 411372613 666444238 509681848 482116562 869443789 129265036 319689186 656959763 801083968 213292472 812983746 825074283 753404893 633987676 364247622 463931964 838032677 295844229 923236021 81284353 685387434 309411491 107952816 309618945 112146150 726205320 594035731 285867312 230652080 386312882 482514619 613746972 496792702 107211559 241062151 933469099 885643264 432530956 43934621 973763994 817842401 766590687 439508868 111126707 239297429 898479814 574095241 386926262 505334589 544452675 517234332 855366648 342789400 396823143 423476777 886179427 478864804 392798600 932764720 451092348 623193881 459548184 577339001 215268714 322617430 458088174 664942845 630036976 283039885 198198630 47960925 67514072 732740304 5071826 97914390 566112851 131940460 410721676 739196173 960706054 816012412 854783225 588905101 35993097 850528994 39148898 266293304 2901443 415502435 746193525 209064754 306441945 89737593 913532035 847192978 904885502 125704232 496668294 844252318 431478078 117360062 497898554 826296565 520625201 474183093 304741444 646540125 142020560 194922130 417596741 784855761 801702882 410427018 992288764 231605801 143957450 889102484 999261438 50458175 135305951 576123093 776165571 499432263 240450570 506097343 286623950 352591668 612346907 173503897 521271212 91845351 682320289 249472777 775821916 470243804 917431539 416193793 705761242 262757982 37278628 745534117 860343954 888299366 540086818 546619677 795307221 630335663 405944595 722642163 313070495 323571124 584094784 17588850 469640716 476443937 815448863 972120352 380608872 839220489 233667474 7791469 530050780 873677433 546031378 730658565 403478225 158527676 90951159 521735172 662523351 992810393 386933595 856242456 12320646 82241801 541361369 70788448 592095462 396557926 925685663 235911115 661012962 270396772 669943145 871487434 196045070 573560148 65849153 331323429 198978167 499877094 266962789 403024604 156338694 44724492 343423221 877828006 834872870 489476444 490796331 222827690 295373600 369663478 537622721 101454973 940626554 310520528 387292061 685539110 429988372 279217022 318835703 636105045 477399667 208962378 501773984 249165007 47383352 242623489 934155971 910862434 854691791 5720005 127484801 139235714 651211881 625052647 352626753 148302329 628335951 619137875 514405791 608322846 405715683 72173228 340784633 750875459 651752608 215103489 321605133 581470831 740125087 503720335 297321994 504259286 393116795 171314145 294087019 25088533 170946041 832375693 793818889 353071151 356624672 782335080 228887012 243775711 861380180 198795164 467867336 77551693 981296136 455602424 628213701 13538076 362460449 679192793 45433512 910624157 124768792 769644330 37863260 265360848 403992201 347487271 432929439 453653982 52923757 911138380 426355002 438086586 637511166 530412574 82447986 826644167 479039849 625710630 833636108 741077894 908208605 652397964 341943059 998617073 171425478 828488679 683630444 171906667 596563618 750113408 263311671 92363565 986851331 725588190 935206483 885220941 867254765 146825277 38416238 97100575 320410445 11617023 982981578 774138901 165481800 917867343 573595102 656211692 914931623 132060584 924072506 588105872 91912294 243477767 953353824 61293254 496046365 929844727 971251857 436166075 302340506 163689183 38310760 732352242 684463094 77430038 498564728 886409772 416329023 282003730 473012804 952688586 851653493 649608049 548243075 974109544 61484491 112014244 775451396 739117943 262312387 544285315 255166396 741599818 144686370 216507437 233996345 945314036 363685585 299241613 729358475 381391086 466940218 426162238 959772928 239509218 813938038 60505887 269170523 45925891 812062276 895375778 531248232 717131596 378798643 710617399 502591624 709485225 404732515 409662928 625920132 113105329 816022384 607725829 321230996 999632883 409370673 985371081 528456897 340570535 600778642 173225252 404947707 36756786 635267364 178478150 449059742 64690085 922219172 652830740 378681257 391384276 754041344 276831740 277458612 791290257 758309509 495171157 826436671 166136342 408901492 254604373 126212426 288399000 410884499 398782062 58670416 199520120 856304990 912049772 359082454 632421148 153321982 758047080 153453204 44806936 421960142 580533253 871025708 557744109 908725645 722991378 844234908 765053882 259496867 385673761 739259954 142938958 91246292 572077812 592430129 712929889 785179253 190862323 790781247 107120307 705630730 413154672 911758383 886879761 422372234 681955552 770817176 138825575 127585060 128870799 404356374 145088743 61316681 217485345 265105198 881161022 123327545 339884398 476793977 756583699 196873578 618783889 581084147 902985767 37673812 562418870 967873235 608209747 188883177 213656585 786895004 112188738 971481314 707448028 17496600 581692572 903253859 441439733 898888623 294823957 104746632 462443937 757111168 758271056 687903558 591111495 768977037 475798634 781066595 474647879 438925444 767329824 845771838 606544523 3885012 674226057 813231770 706061484 329232868 52553827 165293188 936936317 894574291 112063942 418214801 830847987 775330115 368348112 164486348 24197688 457049525 427214931 524259045 964941222 828367353 555277146 589895032 57740924 129766995 820338535 187995688 195388972 103148178 543703897 167461030 304607167 830288956 912403716 449236398 90743778 678279253 513408486 764444781 273211631 529717342 492973038 55428736 964919197 124339336 384900935 239266751 424742549 370338744 959270614 553231033 744591851 639185349 555822347 714963019 770237896 521778615 449706713 797451136 584814329 90362499 943721791 228181095 112074008 759284444 624918310 510866313 139578108 36205712 369912971 820619777 578308582 697853786 42108967 940481433 669356601 365583245 702276222 446111670 464450870 328759747 256133374 961043966 205330351 623390615 234920997 322298021 985709149 57283803 363696437 184485220 823721909 37042125 223649327 69872298 14477978 382407055 272343744 949234253 741323663 129570283 556003203 76354254 551637718 918413718 70956314 628596088 148746034 440098305 208418343 40876580 280846440 382896369 106442815 809642234 852598716 132401931 697313529 373666449 642742645 465524458 702549319 26458719 128217759 827258850 526432925 864203074 775071407 148410930 446187711 340059631 114399254 992411860 523125881 914264111 983031874 948723317 963447108 942052702 331038524 425645223 653066085 637533910 570016954 595504290 329770181 628126922 651542587 537216063 879849921 943793093 517628910 805234298 686140659 954335941 223419557 582213554 38611854 496808506 485606073 885993513 524484593 255461569 57441523 208455152 512339080 239423249 350715072 260720807 920468223 409196919 800585744 236400385 391487983 557301876 969406761 355058740 190831989 141833651 28770256 841056218 961061410 314519669 762149206 115784232 391772251 254767778 769107394 171595941 48501259 153947217 965671396 537270576 423848926 755534923 483603645 706992309 568442302 467685107 740210817 786488714 735457947 817981161 688921761 77600659 745127988 296036391 383752329 218975959 40087404 686471579 678811877 424676838 461793748 525563723 947750888 211576843 427339472 894475851 539980357 511745007 930634585 814365980 816122720 191466492 71937314 419359342 576742153 47579238 852461741 906243150 126370305 236905453 708459291 568819431 54725543 240081742 225097854 569110174 104523206 475265930 319391178 819407250 711533032 739609809 886451866 922888658 35184212 528722496 361774214 156807275 787862523 832175591 207539944 387552880 565722577 550997861 636875785 761004646 119811293 876340078 801209145 578103295 669015319 994572268 956296074 528413842 891761773 865939141 200249209 957789579 100161884 935895109 629979930 935454401 548303958 868476247 589979632 44212664 209493244 83349125 946750858 594590257 664394397 31356770 916352100 21806716 684971239 946775157 632335673 999879291 776672678 420264901 456481375 528849982 434401828 736495821 178471123 425379790 50235300 260431179 138771950 376242832 672190552 859951733 288073287 677977070 164702959 683375264 784763007 832946905 196918540 961067186 468481605 209234130 106013149 204709826 661552503 157609619 277161400 578485552 142314703 683768909 624309195 918870418 653107701 803358716 744926024 266187997 690287573 572278058 158006214 706352183 178079481 538756008 443979031 52892640 138659050 241267875 984776310 403847467 164694542 649289222 231112325 814339719 367641576 134462993 966886333 671596277 532526339 309938791 681278861 872976938 913105935 212800446 320697680 163837834 105644584 441739413 291190049 514958653 40403834 415853654 298854977 597259932 6551035 751206733 830911767 533434226 439378256 812439547 688169604 463899463 341668727 189472743 175553928 735233744 644362432 842958650 556287101 113742334 996188735 250937762 887740734 500897681 480843078 763169171 454715179 648884917 555024831 171722303 585585962 989485340 65444226 863391358 321900607 492300186 977712716 297189229 889495648 687083404 818105659 118188401 719525636 722690131 88520042 658546784 816923662 654086839 539627126 80831842 822530269 37923193 166122007 422899536 176882668 379936593 37269972 816112869 476734759 442678835 194356216 118849573 118229348 771300167 559969073 497924338 459680889 144255405 464487417 187820636 961474748 463192157 717446460 857123262 898778070 228115321 976862025 915922960 247211253 689997378 616474492 925502273 911920928 513090780 100462637 312720411 666867431 699767552 59544772 796687589 899398308 84600085 254917065 223822372 611357633 933826178 993941979 200574035 404163652 383631370 688289774 110467728 857618307 388326213 562502214 250196566 739782224 445269570 399633748 374247561 300748898 372452520 764324160 162385478 281773756 105332874 833708274 478309641 92854558 423477293 536583906 953331749 342232479 131010208 245500809 375559987 991424324 712341010 152827221 399728301 516506702 753354518 316876671 720285261 432992223 56617967 155700810 30193307 539717186 814717529 475873127 806748910 275829646 861380775 838603970 375507073 881955434 177061051 26329817 333593020 756936123 625216999 38098699 18319812 670400103 954491804 580124974 25983802 607950193 702434211 623133092 98255949 317991229 226116227 293517861 431627526 520240839 206604359 325198634 100181140 390234620 518116280 398894226 489896797 91026277 280190406 643195560 837260917 965337113 881432679 598367562 254019414 763581423 507560252 92856144 372998715 169344991 752315686 50614904 922907855 877038640 800749922 61496593 407143597 608817238 161317685 189315371 198618391 65729631 176993587 402290202 905332791 33510945 929791706 603713450 66262991 518195912 190801976 19411176 781890722 280955701 658539835 306853221 618016923 104572074 421071373 755153243 498538503 48657718 454867431 292264016 893734348 256088440 115335792 12706073 182449580 591225277 707189347 43160143 293337950 214806162 159216613 885224568 360953958 600480507 69048914 46352887 477147810 942683537 42374457 620279909 35076732 514378854 998506144 245237557 972066376 509378442 785835021 871934858 966009641 733374315 832690794 113238553 252798978 545693380 221843828 678580954 403214893 413188643 512166622 123103162 421334517 862278174 724105771 910978922 141805348 935786758 995896112 57639776 803844912 780926925 321299554 194862013 454808557 534264230 13790762 606729284 946080622 505059528 122545183 369189023 582657780 530537178 343542324 451205520 625570308 586800705 419653398 920456659 706407762 232886370 359796089 383394868 352361516 165358080 422774919 865977713 874383520 513061395 374507312 975563767 867496886 751865735 791795139 874180383 84616716 149245346 329267584 788224212 716257709 667701807 395905957 631902836 470408777 562743932 231667822 332290064 500181275 54876713 677580749 363442476 381999541 621369780 859850020 398994192 158115007 966503937 26633965 409488985 446190538 787710436 955616116 836664139 379049630 508819841 192294576 362166284 438620573 81050328 795915202 566691861 334079227 998441211 525191576 878624505 361803498 688041457 436479304 979963469 874844001 455556203 496876292 352550957 452159727 360221093 765507601 677140186 457954143 706221173 955929797 181104931 259397361 512517178 268370833 543119167 756697424 837808507 13283678 991273528 103476261 13878300 884188084 894866457 778245419 950746446 519520773 692255512 625373009 88300116 807952200 736655357 758353963 233637355 928473450 38851203 351370078 849962288 767443129 487583328 85680089 7060703 524935355 55544658 494803838 231341084 143282058 297167033 157935331 56982332 478325786 373099678 873159531 227219472 939243894 711774917 831228390 165646435 404638602 288125245 56047348 886327773 50376021 931881028 433794436 257643285 60437558 733115957 966913343 582621292 864328556 308773618 868865392 889264543 195719953 922670484 142820768 245892073 928461155 640404457 446720038 216840706 563582385 866538755 824173154 951074909 374162737 112799144 629212398 924209552 981088389 458742027 549592428 473177258 396959366 953857135 466559965 702121478 192390039 408343466 466089607 705958401 690623440 637736368 899498120 386950038 836796488 123680422 244320239 976627392 614727135 659421910 512627674 326231356 565322925 371778667 94305412 369709225 10387427 927680732 834089963 923040394 317507273 624586510 790859812 724970660 522596388 613031556 862840782 681589838 239147052 465496584 750216476 961670791 718149206 992055349 402089290 356928523 950758237 112595426 615866365 201183784 649479930 67073159 256455302 929440560 465361455 268613845 600807180 215158324 785708368 524186905 190494762 587891800 284966781 958754251 549533269 270790259 342599159 461175460 977125735 176996249 35402990 248711825 164085880 700639518 263624565 100667524 643681572 203397699 613170956 921546746 964800936 557848169 255094845 663356245 760065500 50895066 166025606 566458292 321236355 445977571 54497235 67913991 346720422 794110529 36828056 663438634 136052854 559450919 192325346 134261667 136742485 332930000 228247398 132219025 118250281 104946888 173373112 461900204 283320215 84908725 459627150 333184231 841596824 165602495 569965269 663427516 211762293 292433218 75258678 265610018 562145120 220491871 442723545 888652113 397837492 140104368 205835255 556866793 267963682 496452165 901663375 313604738 611377070 188213841 660247878 529897300 227875363 349637063 493381634 135070918 559723631 301188373 570224688 654881152 81693594 994463563 325615590 41959246 618077404 586781130 622332454 922918645 616550018 366242663 274544386 318743582 458950445 752437630 581980670 39608948 416463207 850028045 420738362 925319551 531743835 431137703 540239911 198479285 969621911 217712957 41525642 404998199 617745683 740528012 867130565 536087925 699038476 292612810 640413427 584658502 374445979 886857279 412378849 923828758 818907620 956001810 24548809 685889768 218140058 181614647 394119981 816353301 359663269 436670501 465713199 111420470 252985343 969615561 674630348 984814937 655912067 329510094 811210150 428733265 981626826 323440436 163322669 223209628 242029247 275381715 470827480 371090062 368695089 65152190 353969236 844109805 624066444 180693279 134769632 671726612 873402607 292278851 374214401 254878456 555221271 398937142 523383603 605191261 391525576 398767596 39058089 815415235 163741624 119743615 593591298 154578989 236984994 180857362 369693080 27103605 625919736 390744625 782502054 164063988 169103626 18843925 497519485 535356359 997286539 666726411 527290138 180627180 879635402 240366557 479271298 141768197 288090231 857008673 336905712 486427916 424400687 22441804 722196473 587342208 281895751 270167571 527808185 711725292 710110788 441542485 860329748 464416117 775088727 975889752 237610756 281284938 333570849 975116640 460326795 764571841 990405441 929595156 244916035 776062742 87698461 778615753 156989991 802149119 687444245 82968454 34391544 738569756 81096353 844642308 773170429 851288399 998275573 38157553 273823211 914795839 619993045 527574440 698553944 392821418 617297768 198148161 847376591 833434617 356514585 58831253 101940007 426442871 235320163 588912878 677505704 719537127 653452504 437410060 687236621 646042817 941023743 491678191 637857276 319568968 518565657 518137757 514566714 550271148 734590967 842291314 701611573 405856572 209590798 670975677 984243780 996735183 821708869 334500189 557238943 291131479 12753425 795185251 917343348 959488665 654290769 871742134 202360082 424616208 975280513 898672371 257812580 585615544 538205355 344062070 510565696 425232446 964599067 848628525 816358639 558312126 307889821 407794319 190159648 853450496 459058930 43237011 184275459 652904599 784579221 704724734 809023687 393092106 568663104 654523359 450975379 428177577 206788251 610544933 405121591 740556734 46903026 494610904 318020079 771042474 246294064 972568902 135105868 874737524 972293112 742739086 8824570 805538800 401141860 217108908 864818648 212891691 472558657 454061807 742772431 564893025 266780607 481604962 407989260 910820367 2539543 888983158 16378819 734289546 555343980 445482880 924130169 126096416 613656064 328283901 496248281 383146385 760433123 272895097 482463389 353829523 355497091 378858133 57296206 985973104 640017564 187825903 951724092 372877679 835762691 456312205 395175485 793203059 182289752 227643313 265153041 129462246 145772049 128753661 685405188 971699165 422623755 877806528 93212420 376704742 152346042 432160702 262169718 298192064 569158973 31393762 144596267 737422762 988070265 343868464 515088393 85252815 188865166 180001347 914530645 751782093 334448397 672774985 782439027 522009520 736214136 995499367 892796211 149138111 435870381 878670957 302620592 948407709 726946856 344730007 298122444 981315543 852587098 786382138 449388912 301912373 392072967 217929466 372996679 879347215 792749711 813663032 230930891 555805670 577863670 74916791 346113813 717182682 56004811 264140424 397624499 845568000 143190963 411539285 585267899 737680075 637319903 425437755 927743784 164497655 128067108 440285019 340730122 748194354 217978268 250177036 822530939 146989583 526764838 176895247 493039470 493448384 934242443 610906038 72380683 598554310 349352574 51278406 563064281 637909163 822886172 617348427 605351907 792964282 791254767 714065722 682011006 124291261 374449066 910762455 348142135 711890322 519774506 128273257 74647478 275860411 697346083 254506787 259439071 117245771 23703659 654307070 926977160 437933555 212609080 310542940 614213724 610881605 29936785 489098338 734670584 5853152 129553065 609893936 270798325 444849179 482847892 234327088 920490208 197817909 753266567 784376425 483931844 859667944 306474553 853281500 942237827 307982221 431854248 672728335 503797806 312376721 969501582 720783392 77234982 442117533 329237348 867581671 895544915 308881649 318528367 424414483 979784333 498946045 82475291 513846122 789606011 637908242 878197878 177156500 323733837 840985906 797517641 810553452 685169030 673060073 622762088 251140612 80974612 877055547 528758325 610490198 158636618 975729093 372723543 595808306 816899297 890591757 118666633 258948110 650260781 278886690 829488381 674131304 868893991 489761446 601076284 953585451 45633034 46947547 73209779 955872945 757780048 856819114 559037257 335338083 519975771 118314856 538450195 851945578 251753191 113398108 654899006 2517107 805141716 800160484 803858358 570048451 981287991 463792207 826857560 869093609 548699436 277526640 396370845 465537139 109682128 887506463 107968142 960171376 790591496 661983529 285009592 268282912 678237488 806772817 945504900 51655284 345744001 230105230 548454127 834238457 221687963 302033657 82000865 494044752 890136814 194820208 753909339 189610963 352638732 257091095 530370066 208668913 972765231 25992768 442053559 61494884 701430202 167159988 77613177 516019994 559196215 768599457 629986531 358823081 516189200 966106347 68613126 322159175 277988881 359651286 815639556 197308256 176121478 864307942 662889314 148124170 532339831 447243239 714982817 761953358 146102939 40413456 448021131 474161042 575609734 235691929 979672883 727456028 272105697 56166878 389255986 490644816 633427559 43401229 391003774 509534746 795782146 161818832 846944017 165641599 71919334 324980581 603322574 8374806 296831440 979296295 78255521 776455142 826713163 684859105 82302812 286663878 572127708 901427233 724153740 907888730 771380557 513985537 833876451 444757649 910378094 563866328 936829149 519325957 723935927 181129852 620907928 246962995 597920421 486343155 953771638 657451871 335632747 236498347 812473890 318537860 952726671 169014558 324941309 631862729 151820664 528463228 533905243 220869885 449241453 390397494 280759928 538111241 206721924 595426672 421099456 316821749 49154601 991250115 680369629 684738810 520611791 288090366 169716932 651852714 57621952 275523352 642120491 349698670 425726512 778721293 238237748 902241026 760004652 350599559 366084425 845380072 429636936 603755213 542993720 327740719 416278283 824304658 114117184 279010769 260928227 871061640 186723460 762731621 576392955 519220349 949156863 983349019 491589592 938094687 720225616 464973408 136183369 185075511 399463446 34185061 948366802 621542051 278461527 353067580 90234658 562972836 197199128 591270735 888041219 455629340 65945522 68455127 371035708 651558941 537797411 165795944 86887283 75754763 89371719 670269619 543519687 648152590 562165918 861194638 5718560 121982978 326750188 348595217 717068498 133701932 755483146 320765837 549753158 548359895 630098254 276013060 460863634 14722382 751623731 12232184 956503611 755135145 356101697 954352967 161461417 283503098 669062436 712353588 118880418 290299143 556613770 80446326 255052452 366467763 504638377 288530404 316835063 56931267 798996861 543525377 547335833 860294889 237046545 255736271 692555828 4503882 774998530 454107055 300881126 32028912 543160550 11495760 4885388 42365924 816344635 919868938 265955214 711194986 539427950 979596764 967389169 931126012 490447399 859734767 380033582 492834586 216036916 647427362 570712024 347287399 558173102 209570465 837787165 455210415 660186000 890835413 619644597 649053148 443468752 862567371 364964797 340228602 942229515 684943791 686639330 660761799 703026489 962336914 403461190 919611725 668593149 999389647 233696616 960105020 681556696 985401583 342238960 275839351 742023910 378910054 333577770 43397738 633962011 344014092 613702908 582396485 472022656 700359926 591083711 304691786 21581116 76371196 565158254 111359190 679062473 369056272 882901028 180645086 684922518 152778774 662909214 74266650 988133193 477309562 85828936 739895754 85327140 346615797 366526587 206887135 335778110 689144290 972863302 731696164 510893920 616351346 496108243 949044007 97977246 686655190 963623891 634229646 323010065 189062797 986214030 881799977 404870558 943293494 806001465 29480797 785176443 371605970 772436324 563419675 459574244 434579534 540324261 449799704 452218686 55161203 897400872 858301551 699132054 628465960 825968643 410943691 806780071 137561074 638408476 808198383 57428096 84594514 733871275 617975040 528883686 456631059 427851114 771942031 256423027 236717104 514643859 239645596 973478365 840941963 333734248 112633076 861527283 300610605 598855721 605032139 170007850 369967403 174147620 559161001 687217503 207455359 700270877 820695626 992128744 608730244 634825 294585686 813462691 183383582 169960332 627456975 964820994 721786187 417909787 765988996 267540911 809706948 159010118 492314092 244652191 44686143 207886209 967051637 464810688 767332198 288498605 380374681 230441121 9579325 135959805 484732704 498950768 942784542 445955952 739874755 469003922 197609678 432630680 909275612 561569914 721453710 524026185 645351403 872221415 935344939 56808256 370736052 744375508 718826548 786581007 932903413 565778399 884384766 192841816 666899413 678861148 179704929 50187040 589841907 235758733 943507539 858787421 865415390 835311879 54050474 187086120 985782533 276016733 856883831 395359082 465522192 968955834 192038992 355803463 176342029 516442210 970442429 385677841 178728625 652065877 555962772 910041943 16565777 284048398 756851589 181212040 755582443 936644088 82368540 97342404 224061397 343803567 222513606 503217191 843918612 237919214 78062466 773700641 966934618 784937047 999694365 451220655 122753352 219585618 25954693 690716370 603924116 661532368 154619381 40163267 316527394 587635683 763990301 415854287 977171666 770457076 74375214 397542075 203082745 254399481 843021583 882746545 283597440 222954589 311726204 266129761 737080016 669427051 110046312 359886229 500154358 324335096 448667468 83609911 83705942 386804488 774867634 490735303 620840150 333793692 585174485 150144970 797788178 239568330 447960529 331958600 761738891 898544296 87659830 663962579 674826714 571211157 344979277 982135695 226640409 173833800 267860823 131230736 282775526 339759858 538708711 931406091 645225920 876133044 299013786 861886527 993210037 500338815 822974120 480464026 139070804 801019069 846453222 298652707 464044290 163136505 89344810 879048022 113921598 802703215 383868221 138624114 444019717 857650037 904548961 946944555 967692390 752104621 894035423 938792967 551262997 494282142 943393527 132470353 802996531 842768490 69424518 472970222 687571838 73868754 948549498 475480153 259441569 462315217 334513555 166521950 752468902 535750754 144720373 580803122 695889704 464676298 185818141 609402758 673780059 390055005 759952307 183894304 519931854 98153743 265422506 897382398 827031083 488702863 812524657 320379398 598261883 95534014 497677248 403216292 145631631 599474698 400438535 730173888 559335397 681783801 80593607 536552276 567621593 192876569 728482515 998989585 513900204 438925009 406099402 326037702 889873254 53118423 913743322 238739121 768000811 358013474 374549215 476362429 476069925 645037845 600385511 380517929 593028476 778405008 148567694 406340768 335332159 679504961 156595421 209524733 847805241 911690073 570311172 949573824 349692782 5604217 184899618 220641190 63537178 483017471 782243695 368228609 272279597 36859376 910063846 464555709 821481984 414366210 631947704 528422974 216943174 853223808 178329541 910669728 402292677 404875175 816361151 932401591 761270507 719190373 980741575 727629510 171263708 675126637 596480495 826938840 745654280 687637200 131774401 401758490 270203745 869047209 128759964 230356112 25269608 86772239 288736849 19523407 401593089 588391949 878636057 758407775 467087343 573124949 438107574 428230930 554748525 235629246 652963153 110059973 480038722 366391804 661727707 264536853 823144254 449731186 501253190 409429721 118752475 338525682 764700918 439696524 91248567 198796927 809251535 265015061 910355398 306932774 436120430 256980564 422872625 714745338 373440642 599688457 959974146 538333495 511129446 14651940 334670133 644393518 270489433 858777341 14872047 232377340 976256183 115488582 224393577 211475097 567149445 972292145 534002422 13486074 548536108 681852379 821326429 130683796 403502907 20224175 966771601 847942489 231151546 161174752 707187486 234139748 712801943 752569275 446173197 619340012 80004958 131857360 431971730 901283318 662795220 494846104 770925039 46788489 824034348 302642494 19175839 303376953 353865168 859041265 72387936 760795853 497090469 989770066 456924573 347238224 174888672 386821123 17581047 888583767 785366679 56992668 108530226 649241146 58477624 188413245 877698276 182738731 601096855 914697061 500006984 432086868 378539190 816352634 772133554 41567869 374357909 267566592 571322168 347665554 32476914 212411386 692512171 121360746 414319781 759435293 162721856 356006476 445154312 868195613 421552539 822228461 890355181 36273249 91484034 411879348 957388853 462112303 33859220 414156845 966791431 536961181 290765450 715829349 748533838 102395882 112497869 114330944 619233268 165280293 907742861 317578618 757005983 927101106 88818669 232231075 598765083 901204897 389032454 886426439 812395435 802200784 833406403 585372921 345238807 810133249 363159001 551783855 761829987 723592158 806671720 599896312 206394772 340994530 969589982 417496369 830228329 900012882 852979370 62175831 582466328 594803928 872875458 419365725 70116087 470252326 327381727 654117776 51875251 234132351 876008773 882768899 466387611 672418163 177969999 499762899 294825205 352470628 67082886 918207949 584384819 145775236 53332264 38597614 490176470 728481895 158285289 772512377 453610456 449991745 456271150 314226074 675433458 768062663 402068942 946863353 428417878 914047290 760731157 583307470 355812201 721156360 550751563 795231597 31007886 500640078 683088440 184456411 146241829 235964603 948887564 642638452 552312589 173186816 288075496 835003915 563442062 557335092 746858853 81037559 483032672 353652556 408881389 857687724 385161769 143823748 938307765 422986475 665311379 519307235 887184183 764614492 153348670 283640263 544674981 274718281 547065965 326989212 889441845 519698637 719338752 105686147 914596265 821655019 774244738 492224612 361538585 424761948 491801786 977919376 130396038 404000184 745348227 443459309 959991182 695926345 244360049 979732427 350211566 152822887 759123014 878964045 891274798 786278973 342197661 81265854 650382702 41731907 333134444 224240680 627361262 325125200 897001847 77405812 108682126 385843589 914461643 82709453 639605407 319417083 259646257 467559287 619417872 640201750 489110469 975805682 708629933 41802797 845795273 29891086 512367421 623355463 111740337 605217482 169873170 935193518 97439684 898821579 495849758 856617913 834678994 38687202 159129297 838430641 786524592 728621293 543957341 438068859 828763027 622146830 255070727 878230035 844955114 493884660 319889883 715322694 602743147 238732816 208772987 376792749 761210558 879999976 586686707 971524124 848167734 970881834 305133865 944409894 220960267 814761302 335477831 606694291 504172123 510951792 462986368 991625477 667420138 427507263 881107652 884834249 578199656 758626849 507752576 91919385 975337 732697885 594185647 295734125 658946768 180819206 969893524 880430526 299738364 29211295 399816364 91211196 137123126 572901277 177561198 151860978 542957443 815606658 880275255 629444426 249026960 938229838 364043714 545059550 927649867 536697030 328438570 905273327 47467797 335600605 880770907 883122101 433178489 685046396 293275797 329222888 191777391 651667548 606466216 322134255 955772590 80962005 62041478 308318715 385394669 351588766 910006561 334578096 299781474 16000793 102440896 480252621 378971931 889042526 524416894 691931847 965033071 273899481 596681597 749595071 815508903 141901722 757435173 497365636 89075903 207653869 603233478 351567179 462015422 677922564 404494508 703431752 50688360 912944694 911387532 282557114 704299344 815887791 375995831 205943635 263264290 759868868 610077407 415923577 404450398 238353725 823493335 467559312 724077050 768593921 100949942 657279126 728077834 235258663 869354543 466242287 120718345 675436348 461877252 332824549 642143083 746651044 236593404 774623941 219411643 5899882 902507340 993557670 879266510 113269790 447280353 855704168 305692083 756212883 86099607 308461539 485282583 955585813 307082381 706383509 42597115 274957585 772640700 754107299 83680013 369433031 740962760 383462650 541869860 695052876 472230500 974319335 896586932 179043634 526815429 566854094 33925204 785357698 784688943 142583516 895983763 710034371 519461792 577133640 149209039 416813613 744733162 671043350 336318321 613332127 485851218 324769893 571960208 287726519 129666205 586016490 945488301 938215225 271227298 324132734 611611521 937732995 621057972 97517077 302291573 680214527 44030852 208606065 668322941 129726461 139497259 824641865 57843206 208345089 412825998 453236654 51124049 304289609 437691858 788899148 244274344 509809713 21407434 884615736 36296841 999272288 901377095 503552550 392498815 382292870 855303178 509403069 263833419 378674651 146536631 100954744 536342443 656992616 59724340 128864968 41721740 869564693 419896518 750141873 454311370 1291783 396276093 683891568 484607506 308633141 929874966 165454611 360704692 63624211 831824485 990925457 874634590 470030236 57647322 363166893 542466500 791019900 299660334 793983959 41375076 859495368 17463306 667480462 619028204 886622024 352758171 683076404 602610960 232884468 809198258 721900222 903721854 708102524 318865991 272718287 515146961 185700010 486097194 915228389 657925671 224649051 623409967 156351901 86997289 856463775 966572022 32483872 921424353 713553330 584714774 236287509 76773936 769754143 568452896 726338900 799632485 345538997 785999129 197280578 972483076 101697002 568582892 159916721 789230475 163168275 427757496 895897333 384266028 284533906 616859077 78431602 693604685 600006988 941090852 415818741 434438174 316256193 294464166 998031325 111366323 209268983 841433059 367239475 459322003 768857366 593483834 244294374 489715850 465416801 932158050 86440947 998901624 927513699 146887687 499885802 802748652 257596173 742047356 250000235 306399555 152905087 880550736 566388862 384013735 585736330 385932537 465579948 291375417 38729289 972783511 82253913 777187676 698982484 156732382 293996390 348090437 982087341 582572271 286430257 34029564 251352692 112371543 474543507 551173189 682011730 301590819 277114879 373149882 79768882 574123324 113071631 599717701 380370779 445917041 661472926 480529960 679720874 267750097 470083335 747679441 168325767 326129389 619693196 722877637 351316958 872974271 922687338 570336600 798318547 281613512 549731476 351945203 798398115 468822062 121754848 174574455 72793891 411857530 997399080 455165582 93558697 316196943 108671942 402434314 794509342 451081994 182039704 966303488 684667181 919812145 400879365 339167918 866940323 705373236 640003117 236173397 505357635 823893420 944718255 959986819 880926976 119898473 49812418 358860736 440502334 940814046 532755579 479768324 94820904 595996958 151098019 610346074 66483581 640101026 712166095 471932491 921767466 975666042 517299322 342012853 628982367 283442807 483953806 379414894 19347326 611127027 585399812 673244089 447814705 422280017 576918286 900338197 942420766 586488242 243686100 459619104 645060876 231151533 961063690 639384631 434269940 520534863 70392012 673568921 219292346 596828390 7878315 221323054 509795779 782016071 668481310 558185811 489217189 719472376 873922344 275706222 35160845 91158844 676380614 315701056 531070099 402333728 206062729 735415338 73322732 583891174 629715207 226048663 263563669 96974096 20579524 108505122 465236230 351857085 208495894 771438217 541024139 577549502 507888604 803559068 339564452 385490388 614764139 84812201 538633181 515975855 564707353 980463118 983902980 52100390 463425421 615589148 228335110 428769998 358048067 571555507 412858466 819648455 193024675 249171594 990097196 688049930 283982460 344010337 390696597 158714892 592565888 799400921 440936370 989055834 391213209 782615513 29830735 767863392 675737010 985761977 629711760 706827565 699649154 690682953 362720084 66962821 961786272 312174886 988621266 585878265 209132365 109731119 31073857 486717786 598932917 608152862 180650161 534747283 887175457 224946340 736035842 634636431 105336875 682264883 844974275 273904715 142091702 241157857 212481392 323824647 202971094 21157504 633314577 61156578 254521368 18294212 494301985 932604721 109842870 403265426 149428558 389150885 525400470 257250588 670916868 642721150 33418217 605164655 928931313 316812361 534133968 422503072 199176933 905679183 487756450 122345054 7011794 552123342 370369813 82863569 233464696 30179578 115185055 520675604 348313828 174433307 386496514 92813059 711697907 579659719 177907288 151117565 22024172 84496226 97346493 885305348 559226473 136778518 859644132 723774526 982795448 18315916 525162707 46289025 177084546 443746876 702398816 258121294 426324329 477228463 183077301 787384400 755723307 768315834 698239013 24485243 962053379 979016335 825293018 295870030 176624619 226563457 817047869 623470833 666208746 774299183 445505412 620589458 877713367 189736134 982027230 797093861 214202968 76437040 8358218 301841250 997351459 182053113 184674808 876335533 893913733 243276015 158355906 789536135 240309136 160039878 396999611 960134550 384143089 871796759 211852870 428214122 346761630 875587696 96448643 584719032 935726760 745248302 495285087 865779691 276465497 810208082 778965882 518047102 695700410 407837678 671139738 919013449 677637328 85101740 771912333 894599051 94219190 843715971 694743214 315077374 309461855 63620285 841987377 82767474 977652171 151648960 720713628 330283450 102010679 940195361 153497648 815268586 128084359 320275747 644079066 802716482 145099172 355558259 187415097 908039357 344647035 900116578 653825705 100197080 231088278 931768500 511599886 372675315 713917170 392443843 586749808 71377361 137503828 358096053 956877610 367685692 245130301 642309563 33641713 226039806 970124741 637676495 970419899 269297801 579615450 617114070 628667253 430308427 778558407 22028259 922324391 435352716 887692349 616591839 83790952 385346693 169262145 133452718 970733068 319940744 869706132 750843832 689711761 706721197 18443392 828391090 129626275 339959669 701926914 326537297 148307500 167939333 936823181 454866 515554424 876960646 767247513 624948207 887785769 210466621 605705043 639480155 700950049 36195023 616330213 431276704 460613911 48453835 789093574 332272123 775539853 423610670 852555656 947290035 140116922 35268298 552685233 920335802 285956466 724851530 389310933 889097429 855119663 986483359 615740997 570128643 341012522 237569097 877457924 42169428 292958274 179262540 945359277 930853247 139804908 147411050 999655318 164171962 779850450 875580296 140062976 73265953 852498129 14916813 936972057 140385165 185899484 232568832 921248967 506840933 311493426 917396929 93241960 175029145 980358109 561507031 839582932 742253763 102888851 501566379 581042660 971696763 787098662 286785959 209731162 317494946 218326405 4386951 103825966 7185598 424341198 159465739 831350359 442384752 806870124 619334066 101056246 366379294 949605668 912753277 190805726 17050205 215128075 937608332 167880244 792068560 585139056 105963753 752028058 419019425 208997108 638095338 312867875 398827000 928525982 916515262 976795658 633645376 638777999 657007222 893070448 972196166 566889292 893175680 890767622 965507579 452019136 845717408 834792071 479055753 397984338 87482951 870157900 335945365 367650106 179341055 171623848 79936607 275266174 833775113 545960035 656758426 501584207 139847135 774745035 620184904 634325273 99137333 665010888 341859008 602079671 393789469 332033814 90371657 5228343 103138651 335001738 793919497 823317425 100974253 825111033 828462072 211166190 822465688 789801411 529507346 312316735 283364876 631092865 888654835 842891600 134677271 876338423 969590092 84686314 878564007 332571031 17766558 958692180 500437126 561455654 462913139 114478153 299223877 393119335 726014043 329238478 848695028 817430656 225839546 831609602 615043976 672151774 492869333 552549932 772525136 515794725 157361850 495231327 650967104 835093552 101254755 375017738 556229849 290865647 113947813 320784756 280027614 23725457 649554399 773717114 133988152 819588758 661013903 725076998 942177407 644762316 449946719 165031069 512414362 78545894 755679537 192232283 530887613 327367927 870030568 380639540 707851342 434975323 146126856 317977799 289660757 482692249 685670137 945796726 533479983 62775250 652278334 936234982 902960616 160862279 58707929 25767917 874182682 882923482 716491099 453001034 988426860 825764333 959664632 836983 690537251 404904153 154105106 351960849 915161029 838799824 196256467 295815461 830765295 662377737 946030359 358463285 532332338 763983054 482882192 500568953 391823835 10823265 724486941 246675683 662977692 187955868 101004345 278377175 984216990 983453077 443596694 285589289 803877759 675605521 914118594 551886816 819969299 435754886 716249064 364221587 310306720 978780098 697416482 266022789 501072397 243408264 178458841 283516464 534844553 385482623 962543380 289666246 904624749 190272413 948672215 389266523 982133911 489992591 625866583 226110586 980330719 846939459 791704986 380581277 146686235 623687296 322505047 626580175 231580385 641766842 365725359 721244333 149713859 526082394 618000602 704030662 478863915 177106892 792146279 403115717 765931737 74227458 738135104 980643112 604198123 167528096 16658338 633288066 261516497 318984146 441221555 120523208 181451415 927357848 245034931 417329488 218242500 442895291 678216352 926842852 607041259 635754272 483061419 907564955 809104970 799059953 280664093 445755570 644457716 159927669 207580500 865721766 1983893 306481321 954283194 451028654 462144110 451617996 161457434 412461502 692208865 153783086 368388802 647541189 270479612 455586981 740097725 268563105 32175178 407730520 557986635 45853827 783163444 614283235 257437528 120946019 916166791 690691888 614412007 3310490 604883172 426341919 865633075 377945769 582606418 120482381 39659603 838827128 379714024 292022106 38202788 674759773 667049696 372092989 532595684 293787953 623392628 513791563 904029412 78813180 44384200 301688394 22939193 658354093 832241839 924555556 862326975 187993636 713846474 774138305 783952484 801872504 478205991 286155269 500307102 270084419 516618073 426000634 939915177 383764491 925227183 542985539 58194262 832526845 540897457 152732094 336850433 343864793 537459441 246398045 459074530 371157473 409418413 660992846 14316335 794452020 50055061 575114220 754604424 798209566 364943963 753331750 615993391 131391680 660240321 222780986 959054931 789022905 128605220 826560271 270820534 526191360 766095244 927439531 435662414 489406721 755109306 398741492 321317152 239932121 399747569 46276092 61101572 565750319 554763659 98005492 190051741 782281406 821633792 42656330 938906486 618342903 625502680 571644792 824530731 209689269 586230037 196414025 166432176 974193921 407422876 8674142 798066782 600603490 482867406 465101575 426003567 286539079 552450453 981734997 163668018 546659784 126740119 435238980 530769251 839305095 950378223 574049653 900648963 816371055 908842646 396249775 803416822 381991706 186690917 619227057 172863105 894985327 756951006 564992185 673510391 595635653 928117980 715743754 997924865 534774175 499140929 624221175 8801866 147451536 265875805 885791436 413855544 187977550 403668008 524131779 711377812 759520542 671848028 781058192 736894406 240934667 318275869 74455516 47755195 802049050 798754897 391258879 264807378 514935586 287744271 297691170 243469710 364989784 554269595 305739610 323388760 802740273 252720294 43404725 973474504 625192680 103319344 13588710 982184586 922035206 599333871 137800640 121883535 999276264 551017322 765250660 702763048 971212864 622152964 223909990 454960319 263394972 708111525 597176420 635851693 56946813 242626934 675595113 888368808 673102995 608976312 663782687 452400473 15386395 463951521 290738414 190796836 208629581 229067087 29996456 887469885 1114771 357141424 16745160 213240997 640272336 387736084 260242863 265593234 926780811 776688528 418146966 16881396 736283463 572195846 702387330 950664379 446431633 609837588 903802540 190376048 744042939 167551103 716281139 888109207 655786413 137921582 458826311 47184272 528659102 917013238 313940576 260242150 251012519 564876153 74416644 378783998 918470749 232087654 186939538 720564571 77298749 706027875 491132238 985076899 292407866 9087336 429671174 436200429 626666534 966958801 736763749 469848419 592544509 974691567 158229701 541974410 154920173 779157064 772393990 654378662 184410956 611728981 345907137 481998785 915156839 959518526 326699551 219895418 585084860 770259607 987905156 420305074 976605905 750085971 314351265 153974868 805195613 789997245 447912850 979629170 293264011 530366649 397532851 303612335 226484683 894828163 296597217 898854452 80319390 101104436 364619976 476826646 849703180 439842082 884149640 81248089 225361296 312937047 927927758 823403756 418844652 158928865 889813867 107681355 457852371 515440669 294506087 73055392 325477191 133564043 154957561 442065789 195418570 383359807 905874794 826703504 777740165 842236875 102749386 179608724 768932937 130665658 554931042 544811408 812738049 243526311 819497607 884422560 679920500 400293051 604137544 136396465 721510134 168859710 769524270 162521459 105530271 522901687 362185980 730423925 645099910 442624805 120593015 452586745 904135967 377131478 783414064 42454217 92412938 348122686 481376845 385950697 424017381 95730174 932435187 983628569 455287769 674224877 215239431 112525373 715112965 293522976 711333908 350181551 412266888 659371849 190134856 577183058 26736441 577894032 954425564 903656694 722036580 39309974 34135420 850732089 588356201 207078762 652098050 374970175 205865660 631460729 924711770 684477064 776100239 762387311 91177297 730301803 325070487 73920660 366128694 689414537 596761151 523121086 248909637 436147019 287946952 209349406 446634568 217592430 631792074 259910434 694155834 945630038 695735749 125423801 165837105 117438244 28395289 297881289 972983943 802071956 63828749 639812056 613540443 190625874 865153877 41766624 434095569 483343298 476217826 180496323 624121449 922111064 763155457 359656374 751284807 653931942 162592243 42729248 325818508 582073629 986443854 428298108 466216282 178200421 271441178 908275983 984813568 335038234 754422622 527106629 296278739 532170099 110510823 468470915 536103471 101429955 939258918 213802557 239623976 328360580 319695347 472554060 822648593 685170138 748429149 436610454 64108046 168001971 809165499 505003377 723235297 762886409 864452813 655882653 25411335 729885978 241543053 672428918 914557579 966484692 888329376 164829053 294552413 968005986 533232032 425718442 15703897 269615815 168318660 236497155 508986351 268926305 590192893 426810968 148638300 179987036 18532114 525201521 913874776 4534581 391040980 185374615 532351163 877270355 378461256 921582589 507440672 439206143 54953074 674183065 636517992 537665682 96708739 105128627 971777654 652388935 919736321 393901707 714764381 131246456 638007566 187807394 982627293 631768301 885245824 949092548 244072785 129563079 483837614 502430815 603112886 523133300 109135138 42012646 33299055 12268107 411094045 366918244 960496400 836297118 341989572 956846652 470661701 36946119 561905844 164383164 550416265 21714472 22538073 194246427 722656389 673598980 410085310 987179884 202912573 953706512 924570088 646662099 621770170 979590671 186945117 452935544 158933782 466902503 418608009 944861621 628410169 392581751 227387992 38035119 9606506 556803067 530277283 143491828 133644906 209567670 58728795 830366464 116852386 546117763 674284143 659083511 748760292 512847415 888685157 404217965 619733078 874828432 87834984 275324439 704599094 693944681 750791800 321018054 316530292 755466582 965432099 877682038 338645004 972355589 472226434 790681071 713821780 712449746 247603741 359564539 76138273 729086323 325736925 152171247 879406985 99031148 245542696 873968852 43466351 127605237 207323448 286610740 656555205 572090984 49591003 221819594 380700733 24757617 356033627 278404567 87849121 514048074 187428222 679366801 12459876 539743735 432209405 688767579 674588465 177264305 313775539 873674469 752167623 255687918 468338555 84769451 234036195 348226406 13245625 763149432 881132966 947739093 648018175 773063246 746209674 322632829 912006301 136028926 673585199 183515512 249185124 160490832 876181353 451104061 480645813 578863267 741338473 327209641 8710341 32193293 682982700 502901339 403309793 818324539 410509553 914923053 176532395 376271791 460331915 16895054 948105295 990322205 851905097 581294250 541854292 288864127 737643992 471034105 443472509 770238013 959669432 751966524 379969818 901243991 223371197 350724818 214877741 443615903 725867201 930911117 468700364 895209999 232832549 268894881 761751093 97929896 179527199 308260031 732626483 176416921 433915895 382228260 227882109 497390209 516982466 704273183 724150158 307278328 296162219 299749723 695721492 81228140 653005181 660453872 67675276 854018745 79131241 777824949 978919159 903276565 989969647 528017996 619646480 900992879 739414784 407048042 163036455 606567504 487249659 16160864 380710631 595024703 757338810 62009444 432318705 768223711 807864660 624367750 826139436 46556384 871400681 319288350 660527447 18812320 594772508 133587644 815726436 330360221 82096438 318258315 153026968 905502941 219714495 845894926 197839383 428465660 809225903 524056615 974677824 271295275 396623305 142566871 918432102 251508147 647108355 2457721 143869200 87118668 627821518 462242348 873405016 365235239 140901764 494242800 995385844 809285830 158553821 454871645 306682955 623950369 528038416 424164615 659383332 112497720 20119403 162438892 635767703 41441389 91337133 493688865 75622926 147051820 192041736 519340897 896723446 758050136 387335789 893610329 775280075 910508841 823483104 779019634 539264708 12026626 164107621 566973119 902720383 52109479 835583948 514600198 537709434 575129613 891525399 26679568 435784780 833698809 19695943 36184452 405814969 17637921 264419894 620307270 562142617 243681935 402220010 299553826 360829978 356680285 732949705 189579896 926866133 677682518 447224859 512452196 449063861 659299356 151932859 15731667 474924944 491550775 682148533 373200568 314427533 510771414 236607389 300811515 253881959 717568893 61241108 87401566 131281506 203779904 593097230 755214550 561676119 687165148 747059902 907808329 441827873 804905379 881929914 441187542 843115810 801585752 822106601 916985117 224650737 584223209 252331902 807627204 265633817 684823871 160719876 678436378 4657208 955946920 928647415 719190612 584736391 278469396 303127257 905330748 805700708 651487544 367067305 610955227 395065908 30248602 417245852 586671440 264004008 229134026 16543872 556043804 813820860 104148324 804669597 762381863 81575839 71022396 977649429 156859878 63899789 613617121 565380883 312535022 618397850 616317868 276455714 788148469 235224545 951818244 843403453 959226077 887483001 405576524 350800135 936032814 283498407 153129245 357371128 405668397 965676650 497472777 477468098 165017080 514634149 847304752 140558097 16312817 440332684 236977201 486555242 109135720 219554316 25257702 323817043 816204743 156305529 699069616 919230001 196263200 926200901 106828285 549290289 466488391 750562733 388999377 503744362 999792870 126735054 36197372 98794823 549248687 416053001 726458462 926326134 982491029 191558060 266988550 106991801 30557748 235495440 765004323 955954294 892762503 234411963 858848833 139345372 921335759 707628390 985748260 984791126 693460381 641460089 597836042 76301369 948945598 726948776 875968923 999527767 477564347 652317991 763460326 924053240 963641544 363560496 701026284 316427622 436455734 803772677 493915546 13672453 563635846 415176287 660853221 582574339 941567494 741233192 40387940 17063259 426252644 636461854 799282555 254004344 402744610 206800729 120280319 391141539 897842132 674384072 390318802 141854701 505461899 246674697 821515734 947094796 732685169 86293699 276637017 950832241 169540611 934345051 731062844 669610111 616095531 908170330 464068843 356442604 846321398 502789021 300690133 664770924 159254416 79095243 698697752 617796548 805938 183771837 773332074 451591451 668321393 228464617 201500884 162589321 557882337 628990367 755611271 337398206 387103587 520985612 986400431 424612115 84657425 804303033 384256880 77582960 703445633 593274029 564676180 369962115 709999363 296564909 223293075 953473792 376908907 709524209 431960571 315231985 457618851 183914483 949826128 490974678 234290551 246299603 931159244 783403541 826063758 515471836 747759831 205275178 951743994 221314418 314957259 970894237 55184047 932302487 230938961 413165541 88867054 243759595 95020258 762644229 39026915 879981120 55254946 138302845 441632535 197351872 529335687 215247094 206698994 435416550 789269861 658390634 184645694 256629404 392662734 197579404 852418446 796072793 330035013 900307190 435856941 990270255 89452354 636230183 656018744 292819531 639129209 399164494 871383697 480606805 162495041 690164562 304665042 351694433 941466081 633473253 2224468 65680045 136479758 80119390 882838653 836306383 574020942 499488546 851567704 489043367 322495755 27042577 616298341 702560079 848798388 49471020 431534719 448103010 776488090 869121400 879107081 717245924 974561236 618687541 321409663 41698334 900067411 471432192 466304776 276594134 636537236 57912016 174105981 761314163 21213519 286053821 934291448 844603069 507987370 199432738 877187462 862941719 604512960 405175529 63659061 909296464 615614220 894190288 762557997 183490932 869986268 414175710 25157685 618602061 354512666 512438607 908087225 832927293 567459553 601987460 645079818 763207857 98240760 879297437 647035554 544967969 860183607 54290454 527949252 858306821 141818292 817414161 38268034 421542584 267182738 889444973 544390426 646213891 733099637 44475998 686849567 180978079 846702038 406385934 44513964 504045438 398063487 933317813 418515406 210759993 621676192 188614083 680400832 515756669 976570455 753324986 660708063 217916724 254073648 862765984 651358803 782784574 669064160 919955370 264313574 271100479 811434538 114782351 562437773 502428339 997462772 373958125 179165734 825543450 476659906 916988265 775144653 695895416 590668223 98465025 657866224 213932691 544190831 710450678 170109765 806527827 135787231 397359577 451130419 137654525 584822469 570249739 304026752 355884116 439867380 187679294 339701071 921350780 756603259 748503683 31144868 357759722 784744462 509418292 1412660 82394338 386163613 906112761 942376768 755887321 873988572 576445383 880416644 197554930 253634032 229541050 258448861 66971465 724180990 951489594 765513786 424948222 390945616 845585175 496333254 185849516 737834107 75981177 97984501 573396503 986895630 673404762 79510707 290153201 154241133 768164389 333439786 207580609 829228027 478655963 636955659 789856630 808692121 233477115 659345970 515530486 784121056 21624677 98406578 873023944 131566773 354469028 393888868 655037570 494706927 830203220 655399189 590144312 602879934 441689744 187914041 936355052 649348872 535873297 349696661 790866949 100912965 653483599 6863685 849680523 247535230 857431083 509464341 401448105 294619201 649306506 586489141 307523165 176493720 899295627 196775655 104608078 90286642 119927917 415657818 126703601 573578772 981504840 473202396 848182369 824970619 885213889 422214976 45909741 32766254 161204886 688727384 967013708 690341554 651110600 947594949 434193403 948605767 196327179 277937308 394833347 483816734 226732046 498147805 112254121 913892516 297160642 404274434 671798597 223741193 115020360 33580666 171120329 283243187 137207884 44274570 862625253 156538903 767295133 456984333 533525422 385134821 373484732 860651331 781161445 877448833 266833365 72514010 932146806 459464 255733647 381832153 728596619 965000002 81519775 451714532 192840484 324817937 504363821 423437043 867356077 786431614 565160364 498546940 7865526 89410187 967424457 248953116 745068498 275348867 780108468 648509604 634667777 170916352 266074299 503142756 255471835 624517062 373816780 631443423 369472803 839432112 461669286 543966045 212941137 450847547 757887303 677208154 759986014 130798477 704740634 63727854 688545655 730579007 41236720 510702021 11875051 13626671 993469313 400225865 612880700 808981551 663097722 44360549 756689897 819700706 967293720 785268145 187120777 967834912 54665966 767743026 895054031 872598723 736584406 948043204 849111108 99805906 329814091 379940408 875267902 213833634 628119599 857401693 760049497 871435882 733269781 521105750 738205076 898936479 491672580 689364054 53121247 782515773 50890444 513775336 46291133 99116530 576547086 822600539 211026329 993800545 25836472 254573147 490788589 963261326 294766193 221313692 123036582 31338228 520025680 794640127 638835523 935302230 913425399 913194553 275728892 802135786 867411623 460936643 66984782 630283989 841604173 578540194 974022656 331143787 783761107 62332692 129773250 124228264 173607048 79618774 306690347 393059900 125967390 36305535 645245201 690896558 970517888 619928833 142277490 605998133 810170519 675729612 371274005 511774506 828974448 718168685 535571911 525812638 588924291 853849579 159061005 555110332 479692371 257947339 192743508 278432175 467644292 306923221 184704371 483270225 827732829 733834698 429186883 862576626 89882432 102282640 477524609 159058110 95381909 384061471 653800770 621711949 194810599 32799646 682275474 853183594 801048072 340403275 126099242 450184203 885944155 498690238 743566834 214606132 510497624 532831965 268628716 993518449 145487370 417619874 731914581 134751301 138695466 934844797 920251320 30788824 929249943 57783710 724488726 39558500 509234974 842048113 110347912 927922070 899098662 116633519 654200099 488469223 57593483 558647200 97058066 616692172 603984181 845128421 825244982 31488515 253220914 524592416 105985974 307546634 46639342 40994214 177360868 615076679 921003398 337624346 74707564 983848091 217184889 410475258 262866304 27990482 372935266 168530227 740342888 994457090 178487942 254968773 963136422 170736505 428709156 773753515 487291661 94846421 346809911 217330511 886228845 118878757 303482392 601051410 885461222 946537104 688664116 753915851 803695716 443770404 647918964 757792091 687252907 758557548 840730772 177530295 523440839 196883017 386897309 486311507 845799456 644885869 508541525 344297142 937544340 11846087 71616998 466613085 171960071 898153497 1817400 178368577 250492788 866502868 389034130 34754253 432348624 872174904 478158393 304402749 284793051 840051159 950989268 816115096 690029750 298626184 835495691 419220376 911662700 471673740 361980817 828553075 637288304 419918462 113047102 319364273 102251349 511351239 330653464 944874379 274063505 990198813 13593128 344376625 560325859 530395395 380084657 93003544 93005229 842229199 355533481 127047647 468705861 821085107 951980308 146227269 351234904 796164773 770497225 407961235 173643471 900474343 335610380 714953879 181599073 988381220 282062473 56954634 434678135 509705814 461952698 755289768 431427142 442293665 296411438 964388921 599867777 250593896 674884778 912380969 360998231 468996488 613586257 124834353 840872822 609199114 543787441 220486864 743455560 993998824 698255599 10566385 663461427 60904311 545752741 123938106 871281417 666797632 422074314 578431980 774959739 401299416 337648929 405967025 917822958 26467966 242654235 378636224 405774999 307390252 802050065 650004593 12744037 371618745 399988311 591775928 113873633 589367739 909245755 704581278 804984590 906793501 712641453 119561185 669160887 739438943 971584337 969804041 163665963 136066029 254545121 282723122 479444706 333342107 54930824 584639206 512526185 236076820 880157674 385270783 696899867 799746502 186363096 885371332 27822303 254100977 305388893 364766714 50369138 577409026 329362462 221485589 7415421 518446617 986556518 89606758 144885430 606687934 598290168 779415915 371265336 516897752 697383905 962050327 454682407 499966505 588709319 420273619 440650275 254098561 626525467 357272589 908676444 372208416 788282226 43386707 240053577 156471141 166319740 316405962 502845141 150746049 861418479 327227486 575722290 307085552 293307949 243595404 753892927 741205272 702702452 523928018 753452063 951661138 335514575 399896189 285599947 287295132 485948048 834861619 961990003 551674685 505214926 855229984 920577334 2207389 540405899 136173433 818563650 431647747 225267418 915057421 165159738 931210660 323799177 536662351 543959491 986698344 835675883 529267590 93491938 192909639 702662885 568609692 269291257 679279791 773712837 500714615 887598549 946575769 455826435 809294556 428288910 483964304 791248396 326395734 651725591 640681434 22374931 76100610 569490402 457769982 801684922 543949518 13077819 430673875 222618925 134939607 852315467 781193897 759924696 91045801 723195221 585437918 649469343 482014970 824733607 200757639 35893685 995152048 80055221 973073143 542099373 265967328 962230375 469996442 844168335 897542245 547523536 68458797 531689315 135241562 31093092 996753542 511657713 51358070 517006202 228184122 133858483 38881599 103342718 272634520 565693380 126274207 391746439 102893713 436523589 794284844 676489235 396926534 175258379 682745323 657683688 916133687 668644584 628806578 850291150 903029024 499985770 725128668 615133055 776126543 735222992 318201669 103937735 67347110 213561676 960099473 351480956 266640918 410728652 72915479 362555579 605742517 163991014 243855782 598897731 234691802 988108550 977256633 593643625 832779998 858775536 686681456 993965172 792389044 794542677 3863253 425356798 172977509 136548070 615148622 635160946 339352476 929402676 606853151 633090784 179952828 798368718 159206115 825118487 122336205 256366403 924213649 866629919 925959081 279843026 519715933 223633477 536519249 925334554 743131527 586186334 761916487 561492614 978335952 712552180 629396037 980306338 20437588 373873781 34440670 501243578 48051592 158610119 367705664 518812832 756733080 102827304 337524663 37786844 65819318 942480048 938108601 346589258 86228742 753122376 681784419 856645943 984910735 823542516 621648662 339924958 957359239 126424625 195642326 342432811 694248155 2546697 824179934 600247120 464671873 807925994 748018535 998644750 125418960 747650481 625805730 559601480 264243043 188483851 783147720 6343519 429372461 837672532 433533225 822150198 397328635 888096182 511402760 375782347 55016618 938138227 530546867 356962074 735490795 788369692 174083391 713782251 530752685 912209668 88194164 6019966 31883306 230669279 321413440 128870381 685526885 65874926 658238327 86156893 796375472 970255869 101044911 88922806 777378117 940654338 917392541 863262879 719593068 168148005 36725527 520311866 818326311 161391958 871537883 263499404 984511463 685182303 173935815 670445622 789546027 850569520 494087965 441728344 912960164 116800146 692615457 746951798 335754064 993574529 688226741 221402774 765794663 791527998 848546095 80121848 420504590 456885222 229728879 346438954 233034260 767773982 887614259 49537888 246205963 269431300 510276876 2599437 371072490 994067548 97507772 710723839 372015184 481381227 707090774 790473079 326347519 193524901 971076791 699579195 670783851 397015503 313543660 884712538 514026203 710749758 376638871 504815329 497801252 467474031 876313938 296236812 772149545 212754312 792636312 758805374 882009820 218404445 980026205 986513855 274427984 178636346 730789283 504286587 355544978 354037490 853969291 409708745 467693300 405503595 499353526 967366228 746056236 502778807 383030937 108442844 375346247 801947768 167231179 74286770 420566124 681353504 738419493 769552696 137823351 475062807 929518048 127724448 364368678 173876527 295904206 943690797 900043011 826894501 423885951 889099736 15853200 451581455 89706002 751504159 767133517 337911601 513784949 479136302 110266622 920327769 780214860 728627475 793248928 706596274 275638691 167610699 342630474 154213656 909401742 41690766 103174526 131687897 503448385 456947735 199468889 683713408 806565968 159004984 280970583 800607862 673292346 893258195 702871587 983787077 754493057 628435356 487835655 991606710 276111135 117370263 435586354 155035279 975740943 585057239 510517570 776084353 296538137 304328067 388106708 628371830 296340429 237302146 211077922 359707750 986578487 949982968 264946383 482691109 885691783 718669955 491553527 928479419 686608050 725485876 966410506 599830294 8027931 229721627 825679082 18820100 701992636 319926324 995717834 859978000 659615638 415081125 795855264 842189679 867223306 944110025 146521287 310889678 328746219 56184219 974665295 435886501 150073485 396837068 384478450 933577915 45213955 874785129 75535162 26443105 188271440 154601094 595035803 998973331 266501017 810948670 409855007 923500704 167313084 910380564 566413560 63293824 50223116 658269979 533373990 77386317 178420001 251125493 54671532 51635055 752381151 52104353 559945858 249421583 137287854 465388303 35228415 716175117 667138974 899630365 102081342 59112543 745310391 387684272 822977501 186915932 558204997 129567409 92102011 49623227 176953765 191003836 373654117 307893745 90932172 776053091 528290630 217867909 293621363 784361289 60690517 486811828 209777959 134891435 673401210 445564015 895076865 233227824 482177245 864933956 154233361 803032012 72488630 142459246 322274904 684819366 53164920 593656841 975122351 300189315 345813511 694625535 346398040 957356138 509580136 272728775 552015568 296068090 753423627 813894964 540451790 817530960 189195136 490661531 847220138 967318694 412715666 398877685 954745224 733310133 356169794 736160707 272391536 22308164 891470620 557248525 817250955 465070172 961912500 802986488 549487663 330016321 86150271 838417413 145208221 965826437 686206567 649398551 365535580 639469797 74243093 632177886 907106289 940173154 332296080 704881943 940717995 884139787 714179792 582994490 705594969 403102251 891192538 919420675 658097541 777427600 626101818 915453716 177193693 626655364 502107964 110216694 616998571 525389241 950608468 730007624 218505055 809933816 868521671 222708155 122116509 11540544 650533824 224751393 887932158 729334840 130661286 545803 725379769 177040658 46488599 190325245 473582021 381350751 12938474 848727030 958656647 711638384 422246873 978254108 554438094 762285449 430922073 273933746 728083459 844344303 165599263 540948566 211910713 764016087 245980491 341315005 553615989 663507717 180209286 627608811 848376457 771224867 416021604 892364291 819690143 256354258 64226332 752787080 979836261 501192896 989786719 787205539 946122648 109375588 933829963 327569809 175541712 532995610 938400621 176377182 490186648 926328459 234824510 362364211 579741295 379714886 321600438 110539221 398247036 871386106 820075068 115584451 133651873 549209175 911749614 525098827 520600943 349406218 466421488 72715272 772717962 203044138 569687619 807505613 523678194 757804413 104882620 264541466 445227735 319127315 887148172 740138281 335835373 858807693 538668938 518785046 207359116 20660160 161989976 37946265 479483888 644705006 391926673 748580580 687520599 674401155 278499114 62064213 993419161 760623764 60268850 876622752 475909867 104009112 269685596 870252176 369339349 648785149 900782805 970565025 942480273 291318582 871383918 226787207 597395176 857018916 204824243 53885304 625332755 883732477 257596646 662238075 973690200 357027721 654517348 566350068 370371880 909283099 946537866 309797892 698336208 97845703 414019002 450549528 890982661 18352608 613214505 133324944 333945055 253696151 717269870 283545194 961229882 852072383 149658697 440846524 513641457 774113250 974928911 898312954 775797801 925984360 331292856 160189010 570213755 805422730 976012189 263408303 2266765 253608650 201853354 647617058 272535218 719538372 578602933 45295681 27412783 139994534 779525154 842709906 720969453 324336089 372907033 843229280 554218862 255476207 953613869 546970372 747615628 506818443 405229980 655102586 498146067 986766565 550187821 449316319 238827057 141164643 332773141 643651493 182771528 117858464 500342977 411858766 714751678 378754908 939693663 47297410 356569873 225064207 466212922 652996775 844767510 866905860 760179656 154195044 842930899 876525333 6816092 915078359 592246034 776993115 310603937 609460688 603067794 593950589 240872995 125777229 482160870 799340616 694022307 120704349 252706514 81299977 830595449 16435637 329696740 469058465 347770717 624193528 530373504 855653436 483523414 794779629 623143553 555125875 483962982 167120474 613219268 374122381 174880601 311614183 578769858 410356744 953020749 439470758 288453909 327173048 648116817 843870745 304993156 647965456 207065538 107270196 440873275 901185348 2864151 575568025 498236570 705065009 635930635 610914329 189381643 756530723 179493999 597249898 12201042 641134924 434817689 914294889 863048596 261074583 629605455 773579178 36572548 254537570 721379157 966636712 321289487 524417540 723310393 102822076 534587447 466785145 730569920 732841527 914556612 899226241 255070091 711198252 976346473 553620447 856212089 391568621 949728176 311190350 179271233 205428817 745551740 79311827 940985236 868266529 294740567 963830299 159306005 455506275 184567336 178699305 614850547 25159004 241443819 933362213 432414655 515653421 278767528 446511607 815529245 415731465 233681010 549779647 334994079 20552261 431701459 826670044 436925800 556735185 603351955 868872999 192967124 570688549 57073413 189777909 994435254 840085444 642771050 700115140 976114580 604450417 539856040 656293772 131137140 425841619 976052643 379343709 19490026 360887308 507643212 166728607 522426072 511035195 865909599 932278275 304704695 276368458 751216830 782913745 468847573 178850423 530235930 958928008 409027935 796301820 524463574 3947439 464535479 737852954 425923428 13776191 128731643 868610609 233672713 647690746 346269106 8676695 765579835 479416715 110339318 911128072 680242823 1829496 554096179 328248899 605863500 91032948 228565839 672325669 50969848 334128997 592920492 424454486 772039282 499635991 824162581 500647248 152698215 40148813 115368241 227715775 622191840 176278490 926243111 448999890 986832832 614284033 804771067 938054873 920991920 411104692 900696917 636090205 713073725 793864247 524432951 657203994 32823735 860109156 459000953 941939417 665772526 608557707 238490711 581466649 742115346 697661897 548494404 331541648 893689675 531623819 992677841 400962313 422739435 353066913 451502700 294576743 360793839 365722865 629974920 827209717 972664290 190724903 163868526 46570730 667628697 664843083 612939708 509746775 168875972 108111736 511265885 632059604 125227243 224902705 808580424 450913616 353971839 475831812 218237533 292235138 795398427 784211422 108034889 962995615 470651268 537033932 485301192 577330976 858120949 646041177 90058864 232285894 431705533 794207701 493730299 158056944 851085297 222876643 836220967 18682373 674162164 443057297 782968950 288322697 237996348 961670041 777104711 646048292 894639426 654042157 929565481 632926625 805805295 723983541 3716488 999291790 416235500 293201247 159779101 665761606 962423554 673418688 797398264 913360849 297607387 319334201 213969125 344985684 557591147 455930878 256474258 624645900 590370946 662501619 917127135 737886078 125564945 19707101 134583648 203149705 895586072 615273558 902711699 87029374 515881131 636826092 181401645 697635869 925494103 161663721 410009947 726323724 424631899 289363472 459967637 936078934 193448822 952660041 714626738 108000314 846559455 131368735 599040989 455590261 373320566 896536354 482860183 218455036 199773992 793928644 234028697 815478878 290502825 285085398 896087631 12567227 224209229 258445138 41113715 52228375 342026588 971885357 166758157 418677826 873995283 690371210 321928115 137689996 847398648 998010727 338830129 149382880 284381801 133665411 408290316 256897033 166131981 350702880 457386078 154924578 706832448 885559575 66788744 403920231 339161346 426206659 347178715 396641488 12584140 689176553 557014439 257108768 90458 972221906 778216695 193203890 862905216 369443702 215083511 222610763 570890700 754980816 317268227 373713662 92729882 950582473 794969235 866217925 401521624 958808623 603646005 65438787 240300533 210656140 147855883 287263585 592831353 772382926 254049465 246919754 837844090 178081488 427018492 101033119 229631821 742623220 541673394 9953508 565295005 771031633 77442237 23281561 580745717 177137730 683146134 816290123 959385798 504570061 960684207 487811689 765341874 154540170 943422867 751119380 444310751 733771924 881610219 671108512 59537792 10087457 974499450 414422676 309905601 884845906 482688133 367627451 478981835 693554080 270417231 959561189 964243600 981438621 473030484 524418740 854652977 64184154 33330924 860261778 144110651 925439209 9880894 491478016 377121083 71508081 769164130 935286788 438147587 165055294 466354467 186075917 304936324 248690111 571569441 473213860 798052053 490319483 633595477 755653882 855697482 391924002 791838861 259227984 740356108 788917765 83370623 378725766 575514779 705585556 935168178 20795829 65343664 984768583 603144447 903887778 953828864 421013080 406089425 276807670 35223636 546343848 933691808 24776115 170162350 864217856 584927553 287531924 423353267 948544854 837086685 727487769 747088613 499564753 645244444 446347206 390375396 600376594 770781542 450089510 290182561 907003984 71471742 566421999 763779153 764411338 522841197 153334337 939879068 883824635 616397446 848136726 834791546 728774150 951625514 514482842 664270200 358687714 346938307 255797563 683901684 233803919 764450135 638378122 247828771 55561919 622674759 378853743 494686426 550825010 843045191 730794682 537519996 781448235 760259852 300411939 839311965 786138383 997083294 3345634 256163589 645747835 875477444 325141199 312306542 8268428 586467843 192335194 983601318 128149302 533122573 269838969 266045017 236027577 393133785 775173847 789263308 915303115 944842833 889066920 49125196 412623340 485455947 596479050 60144330 402763591 931628773 565086692 813895070 28811665 724180107 855509889 945447720 511619741 261177140 488417151 240007167 833441011 875221093 555240453 2844480 63775618 777945352 842479144 737174176 983906287 371705300 369760475 961269141 647804589 247124162 986844481 226339283 315269836 474129410 955261124 736373537 948703389 789362966 197366270 507750215 332444741 225691314 47176867 359306542 336834482 693872095 537113532 674716912 367457725 510090170 145526834 330677209 532065152 545057365 899109539 44956365 498413501 65830372 610584244 29014072 352324105 296958154 309304068 842805625 860568621 919832839 929674963 313257367 812478586 517774614 514480120 539686946 580555046 73980260 639666376 100897123 749101948 611532615 327267371 134751368 598275712 445074323 506756446 983663533 602594358 76347355 621301155 843445759 625928472 285382199 350502643 295415605 776968444 586126777 700208631 149665467 752358764 921303039 472994762 592817981 699508768 166185399 218720330 64132359 667143795 394297015 694645974 549627567 178981053 420322671 897198228 681614296 504996597 920813046 752758107 24570938 161735009 148649257 979787960 992847960 988378907 887073895 20802022 369763608 965189875 799553590 315940748 523116610 886262220 177445070 897820216 174752445 459319546 957740099 570134711 574423909 480468346 686167443 525903133 848026018 395964224 640348245 48487481 246867535 473613344 809295964 368068812 571177001 650747737 630143707 336416650 93587522 669489156 293716049 620611252 708614941 60243990 335098276 310337313 958302701 719953882 961597906 797667232 22499811 188165626 285951610 961915140 246214560 644338902 248861971 128282416 596757974 480487444 972379664 223257420 848537487 811814274 991609065 734324738 374834064 100486664 919939005 629705668 664685130 670546116 990282849 24666281 141564191 660402960 967626624 833983947 671116541 893730313 737679436 385812222 399403343 136778915 792568444 219559127 434293613 702500302 30116606 546161898 725048985 842488151 326159292 985752247 958435126 485849422 171018515 616775714 584122950 401735462 486616979 84413899 437423805 108644426 105992374 820274296 175257778 303072186 149208017 962897372 501411132 549181250 877565687 891164601 411422153 724574165 331594200 439061180 26557377 136389405 122671254 276782577 797925682 330159373 835460414 933129606 809653631 273395855 739496531 537005753 144765523 276806905 870764179 778421622 332789144 756092679 152414818 26214878 395151809 465699400 130331207 236469217 963173100 514238977 597005490 840212211 507389386 837088884 533173039 205807364 185405499 659533621 727504988 970614347 242626612 630964334 783740799 375568426 524048231 880143134 894950833 218499680 391888704 162120543 60995285 641576614 710969060 969616679 188306075 550260813 106564001 467799329 377419757 100222002 914811584 753168870 360265688 299691645 355459243 472468955 67609852 285161295 984553526 304854858 288015393 871334303 212571044 399224789 998732727 855305353 56749731 62385380 581045576 338693685 190247463 827575678 300037712 454764572 105178921 488828273 776185739 448252062 441050651 872235120 390159336 212900945 995747273 18488704 272942524 431176426 35882292 445525585 249047960 613305874 600947374 953230087 926097642 555572619 191811712 30347472 711179529 258073682 915413128 427368220 473664605 861382726 891671786 151467372 303325936 546668849 305604521 899859594 375734787 396601177 462232 51622392 152224704 458672036 586718846 279719874 382048123 324875414 405370916 306657317 397855476 559952894 83381866 515808482 701935196 154866381 469315585 739546254 620944899 874658109 459141023 962321920 932164601 574822627 317502488 555815070 14848587 906655409 425329456 672124725 940415927 894892866 875904518 918413859 466946901 511224499 161947647 830979690 391897255 365973386 452715819 108789880 291893373 750721271 369775432 959921334 810288350 171214559 205066330 734613596 100405104 999422077 219699610 17372804 649577494 674824522 669125403 347767637 873110282 498850536 588411526 707429362 995148124 656024683 659324073 599650048 486294151 707265022 32867637 182562835 754365079 432678382 769245983 226855696 80942357 571424231 195305149 874568965 705882346 251591035 810470555 593307465 716061050 98515798 511944173 906306169 91935193 330875033 936863393 620945106 888114447 509743217 383270025 129144770 549742018 617707404 641146824 391546805 887036128 196193660 402132045 335644627 249438499 701360706 547693787 983740955 194534060 117687010 720626339 310640798 994565398 26121604 996745225 955714061 261292554 303914012 580889278 651068742 760996174 947949652 55819136 292720418 182184442 970550567 608417418 6953983 722315973 684778514 53278741 197447902 662118518 431271281 536984417 513019814 38989144 174831803 504959195 872624647 110232257 57899459 707075221 330352544 126805498 943794678 465321455 978051500 134080504 741874557 513604665 165778992 814300698 668471278 519308489 743214884 744239082 65477766 34537623 384366010 269929303 995009552 217801334 613304893 541775409 575119647 578154030 727108494 985637086 526148941 124110871 805891746 610514730 487881521 91526601 537907778 538356783 962077672 298958986 888108395 413254682 147740882 373402329 272633637 800768272 623380168 723330212 124278760 445261579 548915935 810256711 562801054 398234995 617269228 910331346 759788458 107336334 45995514 10563082 850866724 151974210 702217380 140931541 765784957 581159327 965528452 336374988 434774194 718836468 44312503 25318194 474164644 187809625 44651691 856985161 444372192 751348894 220053953 771655730 559985329 171203087 180717453 789666761 166478923 12177150 360580599 585495771 206499378 798044950 580831283 731203078 882221099 907205524 51037553 630698557 608911499 314836758 254580073 255971693 544553142 344068827 205125326 585695526 220218690 607020041 489992200 544707076 664089414 767062834 57132881 243447981 448761016 83141025 859757741 731268063 465840794 107388266 859896586 147051696 877675607 716712467 54218646 248067266 399073272 585577607 741555503 127653549 364987533 539081549 609060736 160237443 311461347 518773635 547728277 403292205 848698673 828078803 46720604 161524396 410771077 666195075 652548526 48882526 426984757 768460420 932390996 692957833 726837382 304519421 797206218 857866077 213623159 838058098 786767473 902431472 948785186 635952982 649412007 389420150 76862516 669772088 892342828 887701212 491441316 132973662 498963727 53951226 567710965 353949295 512707528 240617627 900923607 342787027 338173281 107269303 746672065 467049046 257291183 244702444 267187963 971924684 665899465 543859832 317429593 240575629 980273444 500374159 310633910 451172199 353807722 725970064 181777205 618558603 566965048 615294825 953625732 76846724 901069390 859155213 280461155 750676459 46542254 610973154 740724549 793108275 654861339 453006811 352559929 265477908 770893159 160018416 674891597 28341802 282258175 83040832 623401789 965653748 9067038 374243232 837503830 811802794 68651515 301164073 903078364 608060811 274350019 41223783 514445472 277647954 955958641 315453563 280877997 313426887 154271332 748176728 916909729 432129949 881089852 832575579 73434526 378423281 287036417 463075475 714194254 772850391 948565993 233444774 519405910 31570884 83156530 966871282 353679500 251283402 383517382 948254365 572253234 577727092 602545266 749027631 858044521 319629149 861541532 179537016 162049107 817077650 927850673 938231800 945041225 664663687 141933749 89377420 350621696 41800074 993898926 135388495 795626832 250465883 107829128 436956222 478217108 748029310 276059517 592567313 585017222 241800672 138692135 258664805 228787621 72703411 934068804 636631762 725572867 411895196 332694368 223659746 590616824 424051760 704190634 638018223 644715760 955530168 138264420 275313466 823990693 164537855 853446849 345016490 700935048 565882170 26850286 545307764 527919706 911055958 510316514 857826560 426323942 833558543 452023247 288276326 856700262 992280164 736750224 387292399 613563452 666984587 669789340 805258087 79173675 913689121 56590308 766250982 128753752 82770217 891874319 174888813 720876220 715929339 574116606 990145434 744631099 437961619 615270352 945725360 584038380 470132646 554703407 944584817 74149865 360518118 801463348 68360780 166374844 586255763 700465199 218905628 312563781 888755094 208641061 8286035 618750449 449658608 977221670 54752798 264507190 404645950 562560110 236314789 812568164 365806232 178312037 786989132 267162573 16594534 286390318 751185613 373066103 309662975 781027595 420004219 564609056 635382849 728908081 739413491 838721357 648168356 249268542 844452383 974485158 510296727 685405777 575684362 833465012 910120426 826568813 747846261 404039602 856677758 916649013 139231559 315939719 65914880 818663453 990378839 833108658 6150966 147057909 582628143 217719066 355679912 760937006 634600389 103698707 279613421 500977097 687997746 689309934 855913625 557280942 30893120 148589257 353528420 905951321 396536507 231343196 338739539 724449337 64994735 956822263 127371587 127915906 657251896 869153462 201447731 717901904 313412378 25268902 711664577 901195555 728335809 470635720 407938055 602099928 958879906 670709738 961995914 101386053 869095187 608325282 418771078 433958848 433441168 729018881 513639709 662595217 19623712 458080764 202054373 805096650 307293557 488730340 960966417 186925894 231759138 541430695 834946315 980699946 996657333 10828923 458569160 452566383 217339436 108001438 986568774 990252546 182347517 521399366 80584043 773867005 298848924 193691983 336614305 30957476 98018880 369257464 756277655 457541294 726350245 754573522 631701178 947879417 165278226 142066894 21667925 881778503 867602103 161688002 77822521 71594420 225785095 207376896 334546799 472710288 374960577 770203858 836563693 841214579 294780563 528051893 782022359 687835749 795646439 31408661 334435144 384252359 898099369 245324927 184795339 866873309 134549287 145397947 136458220 971761317 382004005 926046799 754661321 382701 724538403 996209886 252974917 667900154 111364257 30778613 498998462 271271270 677355992 389715319 818798983 362819722 646317653 595677227 878567460 305508361 490324780 500518321 136343349 848469087 479572789 938720056 723480945 530607417 317079924 203440185 766395858 217775515 935376541 808642328 198593259 943573790 246729282 593933889 12923198 221517047 68116768 617234209 326190491 340720414 401405267 249162572 567114934 197860010 922581333 874441276 957522628 887794515 597335610 205916315 502287915 323176146 446437950 786553848 672958836 580587637 306655022 504807158 857379561 112309912 660655840 496861886 932848470 560656255 170509561 255706308 585176555 176268877 517708134 380922168 6924551 304102233 525814866 909472344 904914484 716497058 289351380 59481400 194962144 207556711 701497426 993279711 58800647 940638138 466559539 42738995 380627911 355078608 837706980 469786187 739500298 630090879 11204247 581379751 499704015 497313018 778315711 546016163 366522174 806338874 472269299 392451619 48568132 745462314 457012545 899960320 857341804 151658497 473797503 4028763 2124026 337430092 664873313 486791131 224112238 633814907 887268199 337239903 74078943 888154365 369434468 690711077 324906478 766545713 639534699 826058581 751648224 600222823 647184201 441620562 557754462 84568074 74826821 787491942 712163260 231743206 531010016 772716067 701148805 701939954 856845447 964056972 230759167 238857236 61374225 178333591 492255646 520485100 206589792 969140851 592539796 202253579 511792067 494251248 122622820 874734903 205171991 424937413 3397225 102987120 895274951 390589849 610782023 159821188 332898301 395310914 269803525 815753031 655179593 331438043 438917620 132802803 647826898 950320501 777824367 728967667 708184065 558843563 596628256 305251936 234496706 894390028 951980001 263204354 571300420 7619054 764972436 441047916 681468183 980593634 781419872 961144299 640657800 917140817 647749048 834355821 710894962 993436507 427251112 745768658 231712812 405561804 563950768 213217216 422098814 354194597 369619387 624266767 60358082 917259492 892950352 852834859 483303855 976374390 964798279 90807204 714939815 442039805 467669572 176039956 884284508 246609537 939143878 545771535 719404973 880609134 97263004 190352366 53203736 229373543 931264001 414976539 41701729 582809560 405967974 853996472 823299883 127759152 174752974 342661137 581053769 466801494 330256635 618384137 8610105 101206851 498916818 559414176 599779918 275839878 699076280 578204938 986542758 902062028 485943510 754637022 167555619 805585869 464174908 792415537 252753614 245711716 480777195 783156895 87270971 196465658 115892367 173445103 816961043 693941257 830691432 116815924 765198040 863555290 306195337 141074288 974039980 428419735 43916705 512826570 641634869 883136049 745868748 313095421 419712218 415062791 997146360 512496637 838787415 552660857 96387042 119479647 614010727 717300332 224948681 997472103 833268604 99834424 109714115 336578440 384369073 744843781 188136495 946705055 787693852 537598717 165101110 611212534 154431571 582973304 468540942 34019906 329237341 108176230 108718687 989638856 106477814 288976375 220865737 628788601 249282639 20797845 549561849 71171596 203875363 825156325 262324571 685005859 307155951 265264552 229898175 697313801 361629371 965301271 812327654 965412192 570457042 573034220 372622078 282638760 229764587 164556799 543809271 110135719 395009248 348082759 505282416 225001234 68458814 127557961 673642195 965258545 874973022 915085777 757599021 979252099 173213812 126767988 492312865 114681436 893933296 376046383 967643844 140184191 4338398 134946007 368659250 849610055 591046880 436715375 480558221 96213911 689776855 869953109 781598510 861550885 935284252 342954633 37303680 348007045 14931107 288007351 265300640 529547387 141735469 534023694 928397043 991403599 94053797 741147410 116923739 762766191 571046037 122288762 840994390 796969804 663634986 156880765 819915901 586589800 580888513 328679171 983777239 792941434 373557654 74856019 234433038 750728012 28795277 42581299 816548688 994374052 493089271 568755308 217928874 691442557 548826615 888147382 751201147 49267789 291668529 126253142 125399509 670834477 711800062 21960541 90485053 708152055 560234783 826859947 864258093 854578161 365139821 33614038 731485841 451089017 608686721 397258281 913857981 464640372 169185809 524435118 799423580 893158324 75878735 736071393 919028073 327286032 181671716 119326280 119656948 539538765 258644922 120122495 683206998 551853384 14953293 935779712 628237963 347515163 133763311 627161997 201869622 531202622 686700179 712592853 464671109 550324034 532600454 449876534 233505558 894061820 533163217 852625798 752245766 5597222 294163710 534331516 409395468 360576828 495184289 103478716 214363280 305325165 702385976 711171979 298116430 832188161 426948042 472398581 241080443 988866524 937466717 726623546 440001467 63805105 462635907 140489117 891342132 42012417 772374908 771305112 157014884 666270233 168636523 778474548 69413980 539639547 427634370 787347261 574771431 891161560 399067662 702318281 33531379 922376231 284964928 877266687 531880929 532519308 723348394 625084988 428385661 335673257 57926838 264275556 399694925 896405 180613067 783467130 500452338 428071393 318558971 946447499 444010446 123315350 130385223 762926853 774263124 241004352 339760351 390518 743628992 411644554 37839070 289777266 855082193 72498703 10160126 628054143 33557766 533810710 729508043 171206004 70533295 4742279 267373432 767950064 68686288 66242589 815738594 318733095 463672517 174060504 23820747 535410062 594433314 197002239 954883376 602984052 156262034 885917652 309949190 618815800 584329038 645180348 361812405 493877108 227156580 445018489 774677932 799206781 167773146 768591832 660017170 13045589 519693532 707614032 271543109 542761599 917783305 855669425 645611888 459918771 548226198 491166073 711417142 184852261 476268736 735257289 678352859 637090900 413158977 330399999 424172243 380490727 823958417 162812866 410274154 421783347 31031375 827241228 644543484 452456528 829309529 686397794 214739021 195627388 24449064 945192511 460050413 88814774 644246767 376310537 677428200 99739927 82503978 820277252 324155379 459267863 723244456 947176845 47822291 836549728 178129797 233519685 648618561 592260823 511574673 852209573 755289355 483095612 89956054 930563528 778380686 377432732 90683363 342623215 91990722 712982456 693716257 517002940 740793517 966856557 632921680 78855601 202885848 626711455 741476767 725153126 547003836 712752246 724577504 809489928 147181910 299084118 879621464 158350649 425025077 862409405 108495967 954244953 569351435 120427171 613809355 233653960 426688489 512228848 54138545 993268713 949909181 797640410 678782674 92775177 608341405 493391999 239343014 864658462 753795984 932917484 272706745 110979040 868741346 410298966 744526116 566198180 663022460 681669257 200593887 58913078 898984340 252336263 659320753 659221211 900978195 949645827 332419084 207185510 315467004 856670521 293671837 953401430 196430333 996166847 246662502 24775854 160091016 823708452 710713260 332237911 90814177 789746160 993311805 685499034 593870236 538909572 947132600 905220518 400131846 520130201 45377994 760453394 385963042 477750525 613157647 554956838 997673736 895751698 262352750 252996750 12452325 902054836 581214200 26018590 353583192 490707301 952982615 7101750 929224600 518137859 315690335 214681311 530425738 34711906 185025837 347780606 361725677 11247420 521799607 909954880 385883997 824561289 780878438 100163284 694727789 536476309 679832694 786014307 39062659 480357733 83794240 929498208 570486632 80954946 650853897 259056883 881916818 821062454 976609676 575949437 501739489 205815411 261258059 500000864 3516920 926888672 998880489 185833600 847252580 927132510 550196455 740160416 596020916 868544375 974895252 42269877 348906363 559287040 350126131 4030406 637913430 479074637 595136317 724663952 816501853 707830502 12359945 371446915 411309765 242658850 812848456 253582487 220601787 634468753 127474078 246348389 62254400 881007151 20307175 34107089 82936422 161013320 265344793 103909297 925045022 667794548 891850009 914712680 835506911 125766377 659037197 890884138 551272750 211034984 257851076 236482105 37919203 48382725 836717940 835327851 164833717 805265772 269926395 926451495 587258486 358031696 789401970 411220434 727934118 510233676 475975871 766384651 537095119 789498861 947964849 238698787 382553561 913422749 175622646 530132198 36032935 926287954 905096718 712013911 327828340 867967268 627916046 284592942 255569888 701855593 246827579 366559454 438021413 983217194 902852703 603285889 269177457 554873395 299658075 825134546 33280256 400336052 881470831 960418942 931579525 940593592 322919868 15378805 691348429 457801703 937823277 616687772 679964105 651629785 671546612 675407551 723055841 363248165 100252578 331482552 170724004 959281156 272294394 914700974 366485979 711202800 378863609 294115555 506044646 909302981 742989517 176026764 333452720 634397280 819660566 936039728 44794228 45868655 951624437 163518465 574589533 292231358 830272653 732608002 662208379 438735456 303864228 843207464 219258593 377580226 322477946 140822453 194186264 740844107 144523131 840361004 341167755 938426052 742050978 921187862 454827322 320419001 867776368 660055216 334030366 618327483 497051744 223806304 326828010 299589760 758992876 934128969 330249160 271520092 619552245 110647065 79566626 562789737 4653571 953848340 881346773 307253388 284309106 216041215 603868229 153310482 840274259 613148299 921824767 193261697 662263980 680327187 190257628 127255857 357270486 735157415 463189398 913879839 730014017 860200055 649877396 740801707 868360311 4785794 42679301 218711047 751901180 768015030 462379216 320563593 103381291 567004301 343622648 773816666 87954490 272797622 988690185 783226875 523665294 923219875 509418675 892647068 818309326 861325339 103241549 107306244 898227094 858524063 794684670 501094153 711974232 941016584 721450800 629370884 129470774 641593407 499772851 211495183 935797786 552348564 75230460 519371749 467584875 246353160 780955731 174210718 838492652 470567432 294007896 526461675 857243098 646388922 273076329 804013964 558195938 273362992 89810 182130898 650949648 299969205 918085608 85447434 995685633 663439179 935237017 38448421 739503298 644468773 389969060 857811242 158333909 201555872 172399844 432755139 40364937 387696889 982284165 527308399 164181627 555319739 106584288 783770587 337133618 879504774 568092125 392138160 952568357 6754556 960495199 102012989 253775590 477849119 39878431 422159849 51479380 509570730 857553084 629469510 706317737 532790490 433388949 215366977 562151657 539737850 714400410 97315652 598768453 372431751 245875700 723602076 409144019 580472939 229981686 88804636 280256832 217124371 762812126 63614042 933196494 294635114 162037520 696390186 13434918 741528490 404298651 589005993 437139506 55411610 329669288 70121946 500848955 783734619 727176889 312955535 131544564 491182298 200230615 640098802 264095957 714384787 794196968 486431479 69876759 974325598 423972885 174849436 102400032 874605963 273213835 488737099 980111357 809414857 311357955 502423964 640480409 596387667 176896568 602020656 226480224 17309116 810189778 674919650 828302200 511659870 182291864 15738622 348369364 757834757 952413523 639817132 932218798 707390272 123380570 157458878 207135117 811751850 52599725 796657972 126230388 528840735 6992589 52585661 776326361 772551747 302612597 68121283 557565902 168174434 212618172 360184285 179808703 503570054 385579338 802826566 176805236 986089750 132387948 700862424 716176845 996634303 661468364 917855304 420642198 493628348 931492308 987980107 369271580 681783471 539083025 399411573 15278814 983842534 888921063 676941939 486577668 855260527 677054636 958661939 877243706 411682592 322617624 814376076 20502310 943867738 686161001 69965536 229614358 144394952 744803042 141631800 385657012 990341083 953467226 975178200 172150622 23533569 653952853 444192553 425545679 290039125 88291449 916104627 929392831 257445542 620120264 841811453 132949258 998261177 737383223 877974501 582242379 672880197 789176168 15770090 686387712 22464154 349310226 31695613 507673520 334213409 469286887 205930193 379451390 941163969 598932984 963545447 72069195 467063570 197330044 821551799 605466076 608042649 771193046 985715299 823716971 551705263 255414823 482510395 165045970 702567048 661165196 353280264 331297398 423775623 568397933 772665885 52270197 407379510 548883347 719182987 246154784 910740457 496195318 337355496 696972631 781494204 855706440 136147436 434369293 882993267 246697570 222933341 386900666 988324256 129937886 326482189 510451813 474680769 232296836 389277099 843928327 29076834 224900324 613563059 571958529 432451394 943282241 79523696 512739386 685630485 371807417 447672142 286966722 697535017 465531892 326944460 62176492 19972585 713307485 274121832 742878926 621027777 43411644 266680025 951887936 441597617 112006202 548109520 312261923 398703676 163886168 299984599 480914712 915524692 199173887 29107543 380365768 130200896 846160295 502296879 187854826 983990940 364753984 64299615 924840014 607339925 736852845 952368410 848392247 526381991 385017615 642354230 93932188 615439717 305271797 938502447 511128044 702755906 230502399 292831477 750802340 302924461 795612059 315063616 529224617 5829742 875281540 405057687 843135107 924605439 937379387 294392554 164067642 153239099 635333153 563903662 706865102 345412046 91650138 995778841 61052309 905358076 722768931 724475234 731378581 830632842 531723977 801001137 823722966 919476882 608741454 287397496 274395508 809445481 40529594 828091740 710728342 228947378 765641123 672002128 174504792 809450918 444620743 4469323 907301664 430818380 502353592 384635793 715844444 39960279 310430502 377759972 86732538 866251564 930979541 897755296 273370607 382659445 249771891 865270818 808752341 587970617 946128325 451828271 437300946 326501859 89448096 293029662 418657302 130002262 86719517 481548936 19950032 262101417 470908544 37715818 487081072 68854741 660659967 215940486 294982811 608777435 856632126 213752879 738199938 858256051 933183195 227314598 912386462 457237433 584200523 683799306 460658838 885291709 990737964 325004368 586593113 689653409 623990017 447475839 584845422 76098991 981211553 605404493 56935499 333454451 387876062 522549630 495405451 815275971 441529349 730169725 345913215 25652307 204097751 218905965 492314572 173338656 279153054 520752346 675309856 914200481 561834998 708012936 959088508 765827666 445883875 307166629 855346808 360230490 501401001 929977829 765415618 604161552 241403248 927437754 125674501 322729389 514149151 572738403 948430475 809164270 737014065 374614338 285344794 750835597 697802057 701281151 722483545 204507957 976710466 852069971 631943874 344224801 381848862 208406245 926446570 114043302 909899013 687565474 566444024 429155645 137128754 438506184 535399043 189000441 130999801 221457602 140152948 820493810 305203875 990104983 270973815 581905413 216067617 290934306 840775877 517023044 934992623 41593389 415311884 539579201 159082743 629185160 903322110 600531933 962247365 854733967 610347881 479249401 336624780 994182860 5072830 258536272 781659411 801450091 443379321 278529259 922336244 613617130 736255416 642802609 71889570 750279469 131259735 109344101 584141881 31495648 265330504 322466580 514454049 716871859 524911015 947143492 710461223 520592239 458213814 838687428 9337333 274562900 874175337 772720938 843534469 680883291 387813023 180851039 535857334 923221137 836303170 847147748 86521300 91468954 720758766 168942801 964165807 81740035 515451468 939972902 821164460 419969239 925082784 472901421 48242360 161142723 931174006 331108448 362966230 67945339 64368177 156157260 547005872 233529472 186352246 462262715 486596129 800455639 882187341 365101102 64834391 461464436 44324883 55799175 117724304 812470627 688115034 866821365 689665234 40397961 472190974 844746461 369475292 972360882 56213446 751053264 669669258 296171781 118772554 748065027 527222430 880464574 785659673 645664773 815037322 11863454 171312930 711897085 741427852 332619996 925267415 777172209 342591812 5706262 308026411 535625029 292245034 818870072 518371765 526188282 568313686 719533415 720598325 80731738 32052446 340232704 675794966 710698737 698162159 738354284 269539967 868635078 808905464 988669830 368738406 934573487 337690292 214843142 803342493 606370264 290142072 293639857 684716373 354172003 356267392 971961300 304420078 853253473 813902296 86460215 353225183 84555769 367746257 967323267 683105760 907879893 586207501 353285990 153334907 752561640 399134234 734947959 564916979 912225359 893164054 83058752 264243655 172108982 730758203 476080100 436823789 642649297 25563244 25172398 596140734 605784851 293044031 293131726 377285401 331308090 947805451 792445100 932244884 225086659 388782543 338749442 137058326 411370325 879690059 383161280 773655754 662878018 77133922 927392076 500283817 110724491 264841304 14104607 225538565 792018196 603720184 678617688 845065284 812589753 979864419 541458566 483345930 938408621 863366334 609703335 295581124 584154912 361395319 219254132 629816715 404752753 793885652 753325689 773585604 429120608 323726507 570791591 213561086 533394195 943930438 122774588 500697882 542133268 756868030 26905814 967642690 742965831 647725279 328614061 376895051 671002871 842643973 276006247 250805547 757147339 960309651 585690005 468039373 795394924 631616149 397732046 340656833 13954746 397487905 785722098 767416460 732294919 89924019 888935110 601316284 846242377 223790962 824414853 660687053 267380960 936314632 350533 483907973 618493036 765178893 128056766 621206057 539903021 313319052 13984181 558021442 216240270 808111036 768125701 95937511 404408601 745323676 86824989 465156776 79292627 716469820 775618697 240811789 217607993 20452744 376274017 878208284 51545244 72906374 468482107 374910825 548005133 264134685 690088532 20978577 575693317 907074312 490757527 174019666 792732480 903566752 219123197 245641410 946717799 109120401 472076026 813664397 69948513 798668373 528401553 318387560 5481230 50942750 300964788 638481506 310024078 170378387 514621956 183045700 977082265 683983613 349278669 150057189 697021131 492157162 905525094 3397431 257978241 482444703 704883209 324535044 348894309 547970532 828303256 133179909 347003864 815847725 94864069 738683297 244081856 646393606 979822331 605198842 588312518 764900504 949318032 463270585 685483125 648132191 432034350 242247384 828408866 226686888 647238823 169713134 645649844 243680894 521020847 511037478 856753864 521033515 671527468 50445952 789102916 547626294 804110409 158976646 8863008 643021413 359147743 334646133 98920191 791091583 980348468 27663423 521936460 324268580 435425835 313000705 581359478 582478726 386480755 675427506 821876301 225609048 39500412 620264589 140452379 453500432 743618293 687048053 932698174 860398190 285255649 973013457 86193054 632764425 35107657 650176668 869964913 978674835 917824971 853443166 204111075 823611314 322953818 371633087 219310837 374564003 806309311 396896027 823319639 942791198 485972022 765825707 978298510 917194431 175322811 341800310 632779904 215398332 557581738 331882415 500939259 661047020 907597226 285202539 490456522 528331935 430780072 53315241 776512441 995102682 861636641 460074299 290887557 82429339 33124634 508081273 240597962 646988492 781315583 633875000 68085521 277246157 940374309 889741961 734155394 287257226 939930532 560936175 235016245 542597396 757655541 93699007 139658430 671759873 90129684 711599302 434927946 935967175 302106055 997258903 572008667 337365006 473519700 906488077 512050215 725082918 269798029 965524738 88758008 902679988 955239445 873033779 429594157 237165998 156305909 460258579 906799776 357544487 475520369 203003075 223110149 111943604 631078383 772404803 242873809 803050554 952184167 840870812 166353677 716670455 994336712 458873323 475884541 23481263 385180180 564239193 469570085 19257972 191169764 316796972 667642180 65032407 406447578 665959321 153600753 409735723 808657455 695132433 174591552 481352270 961067781 170426736 492385946 529801579 580133536 309284391 174297787 229636759 263110497 184620662 128319637 76644493 242380558 976550652 234786565 678062802 414111241 891908772 253429061 348444196 488792011 391079830 123583671 921306219 740733060 781461097 538761581 661051238 652267124 663266394 172854803 121403062 375702310 420700487 454332270 463577210 635050649 95708456 133135327 524763230 255455614 877769790 103896466 644297420 10753152 77988549 368004572 322992153 732694211 645806515 483173355 744404327 728438891 282130847 991747303 723747617 202364627 562003384 694031458 102936452 665391616 464899747 295974149 719758890 915505788 788386834 672193118 421231805 538036318 315785051 833406162 540213998 513191873 848105997 580330753 658013294 178293379 589998334 226439063 122972533 912871370 848632859 219850892 22307133 299496451 215406097 157921535 711464145 320868242 622807065 251894003 861830119 212030145 555147274 599199700 949407212 346761823 329281639 822177951 289294555 201446041 796079594 886043349 424907990 786630187 817181573 977645811 407706017 340506253 988719679 148559536 102092264 842905201 446336086 826383294 6606777 38789409 604184665 325348720 815889498 78338670 527996915 592509831 438514870 393835029 603995533 410285186 233577696 297642345 699779919 958177523 377546375 26950692 67594259 460036653 346776021 903762673 583005450 520615105 721753566 303225389 901233814 935722942 140919172 557713593 441702959 834665635 866673726 196455219 83433566 485200325 731906871 896407147 65367313 475177715 872083835 706230546 679967856 146812606 27403593 799612520 336378926 287187937 346531651 280898372 896809571 874566040 873023215 801741047 381918299 752276104 68631426 973535311 202331660 327594001 220083760 674181523 548235094 502247310 441747482 959071937 147950845 878224283 608200367 289416406 546285029 692896263 516857522 959840612 812635894 976402827 941201554 846512988 520372711 414794308 134680834 132144446 439368199 526881743 707002484 176880102 645495430 74158415 443325241 186640044 715002038 255239607 688956678 388318047 793949808 15540472 746778755 658365434 629281563 687447706 248866546 736571889 61417312 88896395 853020608 103718481 243857567 362898108 670283742 575095363 726306959 855554711 969023097 385667682 147056852 287249495 113138911 300727482 572592535 356762816 762075503 223307507 901107801 160232360 509644413 549160799 122697834 312754337 13758637 635012463 439189270 97420622 859974195 873208545 888450043 107311552 218598925 793650913 288483616 319163640 198898966 470277929 128329491 94703251 17162579 777584379 742357478 94408788 399235265 241181556 721957898 501743178 636020960 863887116 951989365 264257285 345043945 452755106 178618716 416811727 188947117 596893660 88293060 825375671 926684524 26546177 556842326 126734811 195456455 221899126 189954246 638029024 159403813 753956391 478693501 865487121 885202794 469381123 483701235 969231691 185259218 921741082 605289266 72281031 260171569 136174540 344698094 687899199 32079867 829573688 965659975 488875924 112582089 690309247 179659810 948778563 72220289 668765961 566191389 993071660 119144608 855030834 785387447 767605488 478697641 457634025 848626118 556066674 750906526 592721759 461731723 900248113 586772362 260474099 596984316 231556467 778283788 674321873 494296330 172716790 229716379 73709169 242819295 625206527 695897605 65034023 204621830 334486206 598264918 478459211 675392548 301501166 386714734 330953049 545172151 854649204 237007689 624939664 64086226 246513275 365873489 379204339 336808818 549659973 452987811 888174335 401901659 676110711 596610261 23203004 814696132 529855069 100258573 215099077 29993306 668170749 281297695 211886437 684624823 626186035 403226250 731369562 80700996 284077774 588448233 181298586 499677779 831180072 726733530 267044095 539911115 478292190 945185626 364843894 485133836 250651237 56638235 72911017 757318902 179628909 505150458 635506872 370668204 333690219 401160793 780944896 846412954 486568383 984218875 350629710 625967995 221545776 923011558 150990577 693265544 813923671 318780109 252667062 595207601 995799667 318149782 902137011 959274466 910454295 787478665 76160348 759294626 511611427 310046881 145701429 367677027 472852354 884958327 715747549 538541921 54097176 762957843 717595612 462514014 91542039 183113556 769860931 549132158 138649190 280347298 196886928 454227610 915106655 145759258 52782135 479697807 235725831 130219121 558403792 563361459 933449313 211738704 856600528 364501429 276499822 228686096 844807753 644159354 123282281 666223909 211517161 168534139 647684165 613768025 583991848 505920951 62229752 340013548 281228050 122960532 572578586 328384261 677247121 430432855 584202318 518094819 61439075 109888629 813328186 795873809 911240731 734276450 142221615 699347577 129964341 140455410 893431629 694653999 782871579 21801552 35844184 694294341 868510229 984299621 826077360 101711588 486279632 823970504 667389631 518482385 956481855 451521893 436279790 997237772 417631340 540354241 157942474 911044917 860203009 338969316 921771810 973058246 532187590 232003269 597529162 998127040 316826121 972191775 97079323 554432258 47562450 950217505 96144870 398766849 56464601 648948365 449365074 465775390 967302470 739309185 967181369 527801956 221375182 703280801 268251713 370928829 330086337 744647532 517514184 548057036 161807107 677327129 202535870 426726987 415047783 297812492 969428338 335657704 184144843 432867368 276531720 867972671 610117375 643615738 733090030 470829076 506265890 921877560 968526735 268804921 96878339 637673009 205349168 736210280 891886880 260783369 448749921 457940624 372211901 657208242 41533403 99925287 149976843 152791954 638636885 919282731 526127849 376264098 705172393 942726453 540654992 101644592 19714393 21214002 394349082 97162784 292275166 220156424 83996536 883559669 47853765 482390891 213167429 984406156 643185015 5927480 416643995 590928898 338243422 958502821 562869603 866483594 810727353 829307196 16813603 596129419 946816471 864494879 932681883 558838486 183124427 511892530 196471933 764057279 305641686 931198204 102170960 500926778 383666633 659149150 622295375 882502500 148123928 80473817 62602124 707355146 619815052 140290245 38314582 661373196 542435629 938322921 650777762 447858165 991280036 107764674 196762766 87153079 351086577 139646340 114241311 977418077 443927140 959795539 417077906 834331913 600235159 201891787 555580435 330266967 268537751 446095252 768881256 599344980 931633671 630263644 755152452 562660565 452969167 55136016 745663214 655442044 896488500 7912100 391380342 713386518 513338114 20371003 109241066 544969926 478786805 942790793 36335069 654363957 679339376 841427871 984719486 16168275 228458838 369622624 869186172 92667806 166070674 874862414 496775985 580611726 895349317 230702250 336666481 167815374 675234468 179876683 569326076 801918471 395100551 393175840 902592307 475213778 512977789 711529678 550157240 420242163 769711629 386729623 775319344 418901495 47540417 332508524 138922134 682645666 400928224 477005868 281533449 398895417 832795474 30114751 732789920 515175991 791654251 245523989 832670537 515342813 23118773 919380830 554154862 966797825 34698480 325753655 8882066 853492307 998172570 29264361 659545444 254682904 30487290 712472843 803329111 134712269 29990654 359440309 63914355 46292942 533118159 132763527 80911827 530631647 449359453 455261746 537590591 401677419 91311519 606593310 605877991 186397644 237442819 576535757 922120786 640825229 329021777 517264838 501764458 194472826 871746589 823859158 168302382 268826700 981567501 749543760 468805405 4138029 76557944 345987611 476957670 808637652 305056529 756560737 955080515 378402103 922691746 287077311 434952546 144481111 99143310 165011491 170572959 325011567 548884471 868594290 869219550 73762825 55351056 315892951 218042894 981784641 617319803 156212833 14093486 190215052 321703018 701771588 740332422 811650322 187071906 299153312 357178157 490850519 306775014 474308363 290578759 46184698 358118188 840472838 644596237 8258301 877488456 172147834 638418301 236179720 880757040 205468029 924718515 597417549 285740457 799513519 176861032 412648574 87434029 593602391 319363672 64126846 660631544 623303531 240285744 94237818 106830896 156155794 192864888 455914804 165608021 321700784 213153140 510009150 431290647 219836364 472530931 402439258 776021441 721409394 333645852 433216564 275808811 450447690 354762740 403667382 322717774 255008431 42138628 398458246 556837648 943925611 993256561 608781390 112373195 891417835 228565354 394852289 491418162 300053710 545751 439871636 231856795 504156783 50165557 183917918 678286273 674878108 907362970 750150676 717205698 170431110 844453627 896645448 31475631 130042905 787478978 652622306 663845125 917586043 381189999 274752549 79560100 304350067 234954804 652168421 307824608 975936882 537510214 898926750 240965038 647857851 492406599 817128843 495710588 288394354 798465229 621641590 186194556 267827078 709139296 496113635 326103512 173498174 247788525 844092950 185818180 438101947 216245372 562125784 849414273 966709545 856438802 553925953 225870249 82658625 414038575 193648377 959121397 121843658 748360670 820509458 565060771 757399069 887011592 162415212 783621416 942616795 514685663 954439226 952249989 361203152 187430052 89279244 479535070 939722707 116929149 425990725 913817958 544162702 930484056 302895932 518181811 902909711 604159673 434777276 860025961 154859136 818376051 122006198 770906046 538350023 532780686 17773610 828251952 3393825 629855356 34407996 280472485 193862963 553392213 713645203 203075470 838186952 839955327 791293398 591743906 933187634 64460560 620576080 426816539 471580603 983642754 660061027 832057704 417594708 666805670 49058922 4597500 807003815 570450307 217070215 640186378 793736659 792122317 328328654 158895121 188617280 349706298 894660764 6508407 841431242 803241148 469062941 423558461 305987846 568284963 527980188 316480723 445922613 433394832 344508559 633571515 28948744 346875689 630896146 917970458 426061132 548189857 187739068 301094933 754334827 130405630 646351480 679129562 104896205 540566242 870491868 310113646 576599770 758252044 317324268 409101803 403068088 867566529 788041767 698888160 720528032 677794922 271538730 999978962 458018688 524046422 902484698 51686110 768982023 137019428 381080732 125410096 242088743 649047422 321591148 698570970 581932957 642222414 760688819 907271982 735451524 320325550 705934873 123286396 95698670 35622779 576776217 352899313 532226161 240869639 956734027 308964115 244532516 568987021 596261051 781171353 700197224 379493712 539710832 78337515 957639946 773081150 182221187 964663734 248874523 343479150 85756383 59034256 133920431 850016199 506968952 930562350 97714381 255900605 115865231 581021911 246489145 230531334 471371346 587246782 972992561 248996855 948675313 657409588 5098130 880858116 51013139 126163092 130916022 302796810 34759115 63523963 279237999 453289962 107113035 12753398 329166761 709809129 570466152 354274473 128204956 171221847 635572004 813285862 89389503 934694174 657132132 628799063 222611990 428277734 22832452 72684832 287828400 842706463 507314693 153375535 670945907 281650547 785337761 146629330 98683927 536480104 689500944 420511868 340877689 936831276 100679003 123872694 521815781 851352527 834213139 504070137 723659766 597672840 999672481 362591023 137094016 540492274 648713909 979872926 276594655 176591386 765023107 893285141 813603086 454806792 528755524 761386039 901680279 443489468 11028725 719645940 914367656 391526733 526183168 836554582 301590809 810038850 442839043 633991055 95231255 900938613 892748965 419669625 183605169 153958736 161081397 936595020 677082152 395702529 274366535 871426052 425926735 212183382 807816948 787152991 346596563 936558583 177691411 230579846 108021800 23011552 796505697 258400082 838879234 739599973 895880120 587579082 13320167 198819832 577769475 409706736 556933754 353414823 756877568 566301406 881213930 927046900 359295246 376650339 958401186 304478968 795721612 788169257 90633837 263317462 92625821 754968055 557500461 117569396 778697745 645350131 703736730 111077086 410566876 760119533 427430541 696173949 585141630 714688236 72719660 761252209 110707162 536887700 566635701 8801161 683221930 885042804 837272480 276381769 614243690 873298446 287312955 408192785 302734906 709825662 691239689 589422228 806649711 451962399 404840809 961592750 533074169 459455778 590893697 930137729 253535749 242603654 948222069 94350269 791390099 271838038 545226437 422335826 873289774 291605881 764198488 193693804 723134500 952635865 985964818 265801492 4810874 633463405 143662960 752844900 745551698 693765477 413518601 414108520 25608770 68632694 447675057 903875239 349101508 216097766 832503340 423907360 20444601 775893485 296083747 201405375 970970159 964600211 239164991 721204119 688563606 741401350 294593963 116157020 9224887 141551785 149526348 123134923 973641277 349539320 102968308 827350775 371613776 593916267 45885490 889542632 954077259 361930720 322259636 203429784 784881608 821647707 155036285 811167852 281198320 812799626 763271665 698480862 237530186 384155164 785388037 900130302 283027210 148798575 513200430 966573793 740156245 851144452 149203860 456064236 758386705 781480069 314419453 587759976 735965798 470479731 396889382 863171251 315894102 541472236 634455822 869989963 32687607 374532077 944209168 290859752 558401632 242368725 567068706 512064137 302875183 807414882 487036294 771823088 611547268 260216637 584679675 612222260 137551784 541914991 544012894 961677363 215901372 364546444 435487323 197668437 362036860 546746709 899318461 692711961 805489492 900766530 431975331 48660098 697515402 32258850 522303204 462851599 498104051 687388449 537428998 430643429 607748677 581354632 584462710 126176191 119531252 171798085 70720974 213575186 183619370 521439461 608671763 338670583 32121352 533888969 703050069 376726094 388325119 652452789 26302516 907229020 639877462 192372466 611330940 857190094 511545641 77360286 573421890 539501095 259175467 456735755 274728130 720710283 631450506 309243330 755157386 454112644 232456542 942067614 836033164 383334061 914055917 829860692 543929148 555215279 998903624 853440014 829086334 379251618 705350237 899186568 55514109 355909065 652829300 132524858 205540757 971206384 350167983 14884802 343087825 131585228 735902679 347956117 495449334 275356601 715316303 816469219 709259858 252751504 743240121 423966910 675088065 913709317 579691591 927313805 85377958 987350265 777260568 301206198 333761670 345098523 568454119 773421681 183927405 984831054 478768501 208838718 450751833 649392415 528279663 612727218 107679564 379376665 516251088 351941091 480258871 381524409 909101510 791911460 557733119 751104698 754086614 303015279 849742492 577328563 607262834 997241458 320061884 529756721 906817548 418687038 513190817 877282347 612346627 212047515 195517178 135715669 245542654 918555476 779494524 408827484 212367848 323924896 414117396 84615050 212984858 356412622 628741519 694755201 643821643 950896468 312826318 871318703 255635345 779478956 847380554 53826454 523241091 190796638 212474702 876953778 153640773 322893309 100362457 690152458 831368933 360096925 611963019 678777696 267663845 633171328 977679324 907369463 840877394 235775734 163116956 77827059 453269186 961133264 803015097 119112546 410576714 168289922 488180529 732533418 412981518 244386314 656432605 639042492 890983907 648161590 857005719 197927748 851768631 979250785 205185133 886806808 642996825 236168127 161917190 6936865 584030147 759628885 322483639 740968812 176692675 750582213 797232880 403406922 75344062 615767576 564131393 697094987 667863605 993128138 807009532 689662873 577908679 37157984 709804878 592053747 142420635 330578964 340588550 362649096 543418942 647086381 33595009 454860947 342053897 850531497 828998575 216468591 212545138 612353855 947865346 652317621 385844098 309831942 617362001 191918247 819370206 438950886 747199548 798426505 834447822 183815335 372981310 52263588 18812953 819026836 321749364 71015472 980423330 150785728 371002866 115044114 568454288 162973288 285906637 15369215 784120656 269077843 984065195 961185648 315522321 732817815 667178185 680676116 913625131 941576143 581424723 720862714 227273352 194675005 72506862 976342931 542942573 771507479 880108924 46083292 207389585 631666581 166430224 508481635 263871100 617463993 938000501 138240450 910562707 205005111 86864557 112292688 237965628 883806558 461613236 197339095 897816798 304334695 786875901 388427178 40468522 355053641 891541062 554992825 708161619 166015690 823317760 734468838 73728538 266104141 431088837 48209738 722691645 197773334 258661330 424125053 413449917 434522275 316201418 635118284 406837043 486628087 372716836 153472416 162993923 78337104 158585730 42841009 646712408 199384657 955719286 569158949 923610082 905252015 314491225 821388581 206116477 594569411 34610684 206053932 588479746 188641270 878448914 614243009 721849265 765722322 962832885 769364328 298640156 461523395 463809885 189429158 611287083 545308566 387086706 750511339 592009269 485989634 889816955 149745189 11119245 986461112 758537503 578407689 804292969 759717153 232602252 462750255 637578850 338651296 726546081 200216685 976577432 724002379 574769800 673856995 592822375 636037462 709166104 801069622 194251095 523212857 246455325 899604534 73964025 488122998 694982487 39188401 258614206 904144899 481851148 428542191 962570950 792416264 221665442 173453146 101586686 631161357 821338414 585650915 58572660 869096003 361285644 963567588 592103852 643275009 365655177 218040648 884517998 692040847 733669038 973180979 136227116 172101358 986402266 113077444 924823126 601013256 546333002 78673172 836832549 996334515 942747564 408390977 295010611 377265617 652989981 758179323 351971742 504565383 283076923 565775395 30854439 711017586 136681911 444891912 284101307 664743285 785572517 950765578 261665263 706802089 29794506 674141322 98634717 183973570 162478016 670327992 142840271 251144283 102451314 119870071 633034129 553335560 340078085 982205748 562361856 851346580 896853751 762239688 625128789 981052237 476154982 329427552 887546046 718589808 421301372 658959651 385205967 191478208 950123812 346639133 880167122 516198661 820397986 774351077 519406222 986812710 122809803 221802997 134127205 94838443 416602124 942017586 565158197 581670627 147546510 598213780 87600509 502293284 26442928 886048928 912933585 821739358 116257048 872041775 847755923 500177540 388749582 936001730 446613267 602001694 275985493 402994295 74823538 567934181 752281987 654412347 968580418 558252304 6316638 742445564 148717448 426700764 848675687 504482567 871821799 584101357 318877254 375510031 273016846 146382903 391956285 404178978 637567400 575804405 219815575 549821876 163016791 668518689 442255100 119809683 112855740 537232725 847421028 939835280 671353557 40317524 438656912 164326299 68789536 97847982 870345202 501630169 264984824 426950921 874708611 856699432 812927603 651043807 460892801 813338247 808677091 161599851 849497661 895508691 425280789 172007244 318033428 777457854 376875867 897234244 759322780 955450572 670982580 230535329 540975853 863860113 126841765 526312396 922974424 713498051 731295869 127976001 659773446 133442371 525978789 943108801 385126196 232039818 96562865 614070890 942417546 83161077 924059899 65785820 50217865 661561081 309826241 727911541 424107946 191687102 323535822 797877598 296448252 800133437 316523393 999923052 873620703 424158705 80980389 958330938 471416626 89715871 484024428 893101382 637070518 606760179 240156338 165041481 342483003 643347631 678102002 90457970 171583925 621507196 999024611 952643650 330466837 270721654 914005499 97770636 922533564 469313686 622101056 923379941 494352662 960360286 581807526 114771221 224253521 185810293 297321835 587139013 257701409 597536044 93383637 857782577 394181228 14008998 370998717 930583711 823685191 442453023 388042007 830534899 549834784 885906107 462985397 873089564 210132232 659893686 147205438 272427767 566730879 754780669 986995315 40164931 422798424 134349461 284032254 97964212 790463776 569129600 621092038 520713126 872201799 551538207 84257453 959572836 216947028 545507114 902356952 188975598 122198305 288118838 392961080 139675561 897882354 12832098 137121699 703490379 874112308 402491920 612920044 710926563 928989130 640711154 955947464 800679449 157855655 843170821 930080772 821216179 851493508 588262693 441362705 924291211 604940278 759116793 358684131 743277465 375950968 900843059 700591539 622084364 807433043 412154243 539116325 158361599 670911739 249146683 215504759 478599179 722057926 442372500 598544907 837524345 66281793 591840945 870936977 876323614 45362675 72801526 618968902 133665851 299701311 285879118 161035312 550097072 430671418 955206984 209422453 633875803 799420476 380825434 422078346 70101735 93636522 791705994 312541470 575403505 174550610 416882720 369702174 601866319 492592027 489849226 406131342 514150148 274277678 426061548 597179190 9928400 387547214 388078706 721677449 635475758 572712404 492656122 261054444 84048747 261112856 285674334 89892936 799425261 224599217 926182445 791888459 185374002 924952113 816834264 651935556 971120361 31381777 419541505 50958107 541271732 589458418 910302334 576804417 821225084 499569935 601864221 262026957 907637313 871455948 561404386 495275652 162823617 440121033 662905094 189889950 318337971 451415771 340812133 37889633 80991879 500606136 882679030 228669107 988605008 358781054 765651295 298077182 535928163 456541888 342318919 43922714 513821619 504282640 844648352 692886280 85597254 666252706 800199154 664263822 472716096 678098382 854464090 72102152 64163211 501440901 98723592 426850324 263320136 359260423 518780103 178455900 316403601 645635429 236823060 143158702 932868082 527319159 155669750 701324883 900878060 345573023 149566612 626381087 2850419 10488253 151044795 262429234 400056910 104815844 600852472 710756864 688366656 660880622 899581194 700445151 936541745 165110936 210968548 480078178 979040427 811059400 704172390 982697646 131619989 38807310 741711998 551077103 984047812 187191865 916884531 457091230 622544551 574751776 814036518 797697642 14193579 499317163 746014222 555400737 378354494 356596609 329048864 372078356 365715186 324232128 340303626 821988651 421092904 428898653 283257106 926713970 60362180 274851060 571757722 742657753 238906125 932553957 602808908 429635398 586996296 101095816 878569945 522176573 356328216 419043080 781882868 771962997 71585591 45336071 826903982 595773089 846281716 716854105 272755937 207228732 685856904 326938661 382580209 696677515 580636407 366080000 966327621 806688507 502409993 627205253 124684181 146961933 350191614 73515582 513659217 377804101 900167819 571438480 903483602 673612650 94367602 642569669 982006079 192676624 467664333 749517287 380911693 346873549 589218449 932508679 79464186 164576016 861595270 32550465 386147406 769531658 27419098 267225395 762648630 106182518 970955669 48850263 589895524 365860970 528349185 346078586 533264143 28184186 192994158 916094187 614791673 866958267 617292930 415350614 556602594 374861682 376719406 29988928 456996060 528382225 929702509 427528364 936915520 214944008 771887586 609614310 817938441 995307117 700845227 303681572 538757132 880341216 631533083 465276540 506197262 940891937 914509689 129822553 7493207 475843219 730532196 194959190 655415203 392663455 183273617 522422299 140406318 701911130 42296703 691697823 67269495 205789132 754714830 113886754 222276373 710032332 795328645 936159093 746528190 288365102 52858073 432371776 247795235 559326347 799036282 59124152 843688983 93970940 874557243 873977195 407275289 472615946 506895654 781134646 521336134 537308178 150768426 343357556 46424813 215754585 401454157 862126794 13379351 677893196 996335684 20830945 385934925 315676972 80832636 903371159 516814796 467846125 663625849 188514754 841025932 814772618 190681665 592606147 279126415 498818004 552908226 650473794 962971633 46757297 789441852 446078622 37068631 831763049 795097960 391757084 870821194 213067186 471089594 713181836 449570120 3878194 206264209 800353660 779854164 193620621 941885327 60656545 288811029 714627208 4010776 790278459 1624230 168025349 73600773 462331408 416204662 786496954 391528523 871827485 650855963 578314222 817955271 833096901 701884999 978765221 895913523 606887176 388395954 515522225 863051566 195118755 659978815 502505219 841481994 63461677 449049975 464659356 398459835 245417983 301151271 188832392 950099976 154770467 545441286 580740940 772575205 943627724 876363455 29844328 987361956 396203771 583552878 409670017 46522416 166174672 729222856 98816521 333822862 590395274 707297277 719126759 176755324 758675550 631189106 666663885 915065453 392032969 719024269 52011194 302157557 447545231 700168913 387727780 514593735 315695388 371579992 398312081 208203008 244788612 55457230 945799965 406432355 901772221 847315583 341143756 14470390 793202604 250140983 785037058 66968850 485509539 623661382 663194655 631908530 90759883 352458269 638469400 943495310 102392287 246688853 172660178 578303871 369796049 49028293 541860488 549526254 811176317 541975710 481366572 972918350 81613916 632438287 342128675 724357872 925419757 844073954 53455127 863162907 343684135 857259250 530674259 166909952 488145213 102740252 577535535 456599667 101836220 232195796 752157819 369410553 307730016 938226115 486693102 63067916 371994705 661387611 652746278 708457952 535209209 526221558 595382072 778008049 676814338 485803112 454645743 897250357 718573870 122512585 866790835 227111541 540710951 262247058 867786916 197796748 9277940 930010950 559030088 247697732 128583836 202760857 860269599 8193833 981036140 407276723 948413224 484021130 127449703 277287714 811770885 993992824 798562418 120890198 895599925 565999468 187427908 716652892 440433693 529712510 330203287 199046360 467271851 868038217 158462406 304344406 35738889 49186838 839200602 37611217 209827139 109236020 785644178 369516830 867752050 91647320 111883713 517938735 503824098 585303955 494072522 956214717 150842905 640549245 205821879 783972053 655951074 380236041 427504055 831183696 279090590 498725135 744666432 87453607 802426732 972234173 315601527 812389130 576856757 499795935 364904078 5333410 42046789 657267284 948886409 887547661 290443990 103806934 104627914 268260169 498472766 859984208 965744476 738112214 884509026 192695122 266232591 312610104 924414399 288269267 999416273 437845748 979697554 67129934 287038833 375848354 922054994 131339602 444108360 949809800 306858653 992713601 65855881 940926653 25597061 727066154 602438756 788441842 347120660 229579685 498257170 42789767 89722782 509836481 539056032 694164129 951757382 627691924 796859827 973768577 985033540 554674919 558921114 451846845 991336032 263338298 314619891 793838333 441336722 458928896 592285483 391597767 36346622 911728917 444804251 769484181 284606815 42709025 245020819 193511695 677836713 364154455 695107538 612471979 440860595 253852044 980341892 648854781 827285373 503344219 826778194 781711767 331865354 995674901 765927346 578916297 204670572 814208461 825411893 640651135 582814979 55636251 596264905 601439387 444059716 731883762 234785710 428208791 13836384 828983382 913605703 210824639 685029237 461806224 512938666 865807845 950432171 549458311 788361089 184903772 794324889 541557552 750417023 969183260 390644281 527711865 638185333 444693885 61214964 530993801 609137727 469156340 433268625 820664042 531471380 113545362 788015236 444028776 9276783 973844335 22519891 766700539 460146966 522977016 987515879 793923193 155142851 328328773 688113112 964299055 67692020 578348653 524251383 218106318 493665160 638185911 505104575 625303474 955606333 581401585 708015678 80764934 41164792 275303698 954287282 455194826 301181723 924545020 636741362 239546031 563153366 416149379 606364366 553807068 512521216 24704694 393959519 958174098 851682535 877532597 926986656 106231205 921564913 873845289 936687708 132834679 231787912 607336193 575255682 476355972 964737742 873547647 77111608 674527345 981211642 29930930 27258454 502496946 786788052 213631416 94720217 560941302 469388342 514319215 629907670 75812310 341340070 34745398 809375551 329121006 588155310 587163458 10523785 982816378 811228318 21652575 50939365 338106792 489483939 497246048 151110022 584169603 864840705 587468114 940455220 903469941 617430223 384363623 929363990 894483900 653509338 872244391 140472386 873711974 135343163 240842417 146642925 654237584 157348924 947754017 306062749 944965152 504178760 738021594 830881748 635444707 722852688 589014618 818413092 607238857 698276185 713994805 274127470 291106000 126830656 315998297 173635596 17853177 409146565 438187910 288183636 15467979 780667537 994489371 34751602 442908021 489880698 465512468 541968346 48007851 563077719 832301661 363846479 841546375 714395135 604720663 719434559 714204364 872815394 990593947 853348770 252208007 356779672 954518131 487607172 47411789 422793341 225502847 548470990 566112674 616274201 374263395 728070653 708643986 793189513 69713790 923532715 615967879 906608064 65670122 17126507 122207162 190920049 147106655 280343239 785358705 432625916 660927916 533861082 68406942 417510902 546276663 296365181 57091848 957468300 377512736 552684288 70215295 252629019 124443638 180942349 107499607 715190783 683512161 134939457 614630694 499235308 66986735 641235550 971660883 950605587 739074923 517507731 943370189 748980075 377676742 269244133 179604031 291267020 160545748 478864846 642032907 450766282 78542194 861264404 996083211 863240189 49984886 189950072 650185996 847836891 196604516 954161424 371605772 933929067 333338874 695134275 203205338 99682485 782090680 573261113 969357618 839570270 376635534 262736599 507585274 999262526 480165754 68479057 454470042 491284724 233874831 13853481 906358159 581282057 369793650 462288426 242847753 619296662 254800390 443159698 236817812 289514975 489132534 380499673 657456960 370401230 416373331 58807748 437003874 206669868 112266534 70983764 828008115 959422532 595673712 113677812 275625222 442365413 466365933 360114699 602920593 446970131 678194533 428825236 668492880 858650560 820868567 910692376 501185083 486195425 991555764 689140943 325426406 635946631 881769290 762303530 443275965 704385364 371475740 251018863 534835105 623704781 492330466 70867990 614744987 485481386 339108966 736843972 553717976 961453478 84408418 382895744 215175458 118639961 624263363 602668581 968646617 313632253 22122628 670696564 984431546 496349752 68259197 300585026 498915000 29125518 698412611 913201583 89684290 489274388 507686998 411227644 245259382 884236207 959926626 201384286 276431474 479118864 389632290 785474385 882217038 847204722 831649658 936579485 98774395 593132660 435061226 455022328 826810950 245289329 241553455 407292639 567156825 667418439 81325985 45932929 476092482 605572458 928304676 122542899 52349636 48310650 33016490 22680740 211296898 963310331 325860116 205236205 815462658 27132043 316566365 383966061 404782809 127485746 527165294 195835648 371574147 985892533 862286585 746694404 999472835 362673659 225756940 743199569 692739791 116599661 130490611 664760564 162865302 338488870 523434668 992117377 153209418 148872430 776230887 350474818 650633707 968191484 266992089 861070304 765190448 119678038 490604073 237289841 179056098 232865507 556928650 381145530 716169942 572249869 400473635 744413699 761975384 897480025 186560728 654732717 322104469 117535640 597840971 910377392 517740679 853155519 981264320 588257936 740437490 569223615 519057618 403477484 417354801 727858190 701740587 443677126 589915126 154791371 861634597 951108610 320560758 721164400 12044717 783241740 507795505 871512296 975756125 64302882 552738267 358235892 564604982 94526762 42915413 520745473 15766003 5792144 812684737 500868690 109184059 117579200 358354731 717060110 17210802 620386767 897141340 7389762 340534870 974610512 751201852 201845260 234224533 828568957 448758886 567780345 594496606 875019600 761332203 680540505 517853081 889460617 445276585 394489027 904353632 199925442 254238895 530961998 925996794 80366511 902022731 637069294 786354526 196359301 896719659 596137662 288566179 413356487 177649975 76503900 864239881 902729491 976860176 892478942 351964160 705532825 361189124 628185079 684020376 549690397 222317651 804275921 297942902 247316227 515259082 102604260 898441161 279655537 287518642 967161096 671262045 646752256 974437367 911216340 114003965 356140597 839483300 47521982 947062298 543668711 463180136 641696615 79751425 653299263 3511824 500126394 918591487 862512192 978761154 708034017 21299461 972117813 521381413 983986240 684911453 934299451 93656186 262010800 396673166 641072408 652634675 434023722 714783753 975825230 86655712 821694848 877812238 835623131 818897844 507284206 937578062 883180541 745123549 879483159 45467024 377646636 819767742 2931657 370526540 378387214 663432972 301848864 638021490 432932548 682228148 611220369 592876212 568123351 259333334 859732424 40195080 72246077 53437403 802147534 229429695 846562533 659213679 537836746 824473046 966878782 276826564 431682140 162756322 446118096 478017089 563140869 140544424 698550079 458400540 700960939 808691772 125103053 548396230 849984290 183389683 183612968 468208395 19594763 341194923 466639240 693521624 930432164 571124454 566578524 80322167 200445451 440272542 540317595 763378124 339095992 53458656 404734700 70021212 322491975 737166157 249168858 848444863 736092740 152801061 25770762 265684541 947214964 954612794 206947026 92432557 433117104 252083571 444278159 716958914 91505550 567027348 766615328 373437661 807742794 455613001 296325121 426860414 941030866 70323880 515154352 52630142 301197665 613564947 183349280 460238961 962248473 268756287 707651872 104250594 603808415 348765431 320364895 912924496 803980437 556569675 994662281 801591776 640558320 94105473 343345102 63004216 606271792 516896845 406848240 266132060 587544026 127987383 742948266 224372048 859517292 302856688 709607388 940880632 616875131 224865741 26271044 869468237 261502917 181013433 80421030 471141869 917067848 396605081 762747374 286420003 790899670 964017392 863779864 34813298 220958499 502057659 490106777 272127655 815765958 252548568 236191533 646178588 609465120 897030706 496986062 972390909 773794154 903060971 675652895 22162611 393174351 989071128 174850730 924114260 264146932 63205544 959922419 580036255 400329858 280195473 567898972 512259506 262092124 618149642 579077905 888926313 221032271 819536551 88293676 801150198 152439900 319834419 346873323 283096474 301742918 303932555 80821318 633832454 380476153 143811672 167327900 175139662 44409455 33862706 72527026 9930846 342041332 254595244 777948918 547784043 304010450 224831339 921254166 543288887 817973572 971298103 159713228 444823778 284925282 142654118 286933254 615179263 619051858 972533523 60489024 579823168 110956522 236404799 630421477 99976952 80422959 366397790 383598933 588061963 605183936 608957410 453201137 708802332 868292375 284792348 768064034 428462207 230736082 75189391 80628763 187321872 251577468 354861680 737198162 245532610 214032040 814679636 9494511 65243105 79354408 526734939 80910461 540749916 219949304 179778714 68176312 72686008 499721442 96796626 532873361 574441900 587325158 542202626 790795134 164297554 959779899 565003227 30345901 330481340 301594788 806389978 9046362 45302916 707553363 974598415 700681641 553903099 571360694 753899796 369479464 8060714 235365359 722272991 84110581 902698649 702979065 130731567 508285173 875044131 353899365 83378206 713654018 365886251 424635066 466923008 385196502 195423321 498998676 707019553 202110485 428084465 927463714 616086264 990726193 110672921 847745206 290972797 622347299 103050008 926253001 866961022 309113688 761994481 63952387 667824683 859892011 427358222 805281871 742908118 510368370 803297162 69825394 999125836 988643280 29550653 201074999 591636598 36429628 628632618 63126747 543347841 352287369 549743421 958835649 57606299 724799999 138898463 683246964 586720338 872401394 849962608 35549838 576439105 589860449 523757525 688375094 864332367 118711355 769891075 943988745 422214821 654618391 396912191 365449095 356763255 997057716 511318527 800982843 871969763 433634290 393966386 6203845 345533028 849532875 591397452 96656017 995879329 859676717 736763961 458289758 791114865 978559712 41066470 796959126 124638884 258943258 437710296 741620177 79411261 258658067 661427624 458863834 810444181 658128673 927795418 803978699 75542760 836056000 222199158 583077401 236157770 960578577 233261234 465120489 917923021 964791084 961642936 667093578 731164221 633439321 324086442 347150873 951864626 292378176 362948251 867752568 41876204 865251915 507577738 619428704 331042778 64082899 200813437 91082210 789028334 574436826 285205461 123407034 559838183 648114819 363003399 826074494 991937090 975569958 46144072 639289967 286620786 628443057 997343102 188785896 600470344 119189128 100553399 643179206 373010453 90404186 865362118 549572137 760558067 751287092 30416126 506697766 107412712 14931318 217436710 591578304 107157553 302875010 455609051 707104055 122882071 831582549 626048240 638816585 860236143 419960956 732160794 729697618 142201469 969761148 229215874 387211100 337475426 96181516 655319753 658004838 614521940 503162453 957938761 793968149 104410050 692555391 946170123 907123722 855331927 115838344 605178597 70956413 543005236 262742647 776081127 27379220 210342228 882348290 596662287 691890427 753460199 55816549 19625041 517762946 390587288 279246208 373063150 722928463 346000049 150404574 232596630 148433857 668072531 536020216 995083094 202424611 705953920 571139588 110694735 865398621 700099795 591991917 553367185 548205949 830242327 277434731 694730881 317773237 509838845 343632794 618027486 14050328 646469464 300246517 83462962 500691287 378672130 186881848 737810258 124751928 152272891 535109346 938426529 230647309 136533032 670100566 32038656 516901152 905917376 543764312 379759249 369048093 986048011 841062031 933081474 539155790 7686588 967780014 214410910 563835017 537939159 476319348 621240144 130362431 35677552 9933791 118890681 886110647 985132912 130793354 319966211 8246392 515971930 92680253 874903864 419583578 979411294 130569202 589759548 828315717 952838585 266698614 97913546 157878168 919301736 794370465 479103896 116886965 245808682 352580179 380667977 338110240 660298918 606055578 740061293 429458017 480176941 222540534 472673265 885287814 602299463 781205189 372972545 203443265 588804212 625331046 577163502 285260946 647373292 348065795 131602183 624420246 746485204 485198196 893081415 462542492 336189136 776681401 805674423 199103986 227621695 400777563 728015849 761070073 174576100 95468856 401130804 244826778 672600868 453005637 886099773 938399502 711738647 952552241 526797451 294602107 80955064 464753767 114464690 399241030 186832388 867873759 232622416 586043841 59679717 852516114 256389516 695638995 594968596 998302462 637101909 723496838 393516562 172276361 919623121 676719936 73398624 789512546 908163395 703229027 610214340 92865811 469264254 679877683 120703966 967473879 327201874 199169022 636993383 217474106 167340488 780411955 889697359 677951093 7001996 610049427 534522821 972677206 583402486 501195521 699105442 321253994 867836226 35614891 328659402 861611464 850558946 529050202 675028316 475228426 350230512 666245625 379035541 597182883 542963110 765432924 393165779 322667585 48892597 192638972 834154876 754094821 729772008 682170866 644432662 510222402 340484505 774763291 64725963 98903682 661876424 963656263 939522399 249771299 931773456 384423662 997299915 906184492 822488456 172189225 71665826 875243862 150042909 735478179 40108553 393842914 728477236 782570760 563137688 140982961 432773256 201292655 373818440 694738111 518333258 584612115 432234247 823031460 964725189 958230676 66418024 987498663 559437762 630898376 62711790 617575564 244651847 826246204 579697937 951805074 490551587 147075327 31647267 238726822 100173509 626481458 90936065 486111128 43617991 438693828 408040698 743504205 928238912 201385464 582769161 827285217 349563153 324171312 819520181 115322510 87916674 528423398 943189380 190879980 81352459 134085486 643942020 582939391 579237174 345007526 224914429 730725640 665803909 2306047 135403144 148166964 949064066 660986671 141283596 912186203 127352975 172287137 874728645 162209623 381103089 245965250 161984322 724214431 733732157 367530576 819514428 688962102 392205198 291691634 454129089 449213211 374636495 825703569 745617391 443567625 207868903 162992684 32800433 20596204 25599659 960195682 984592604 414516456 785013995 662592043 524640610 552910015 554825768 154173916 349777494 393727235 187390604 25121260 305280439 63230576 836876764 792613409 273916674 342546494 25777533 416434000 260146855 102563704 859342919 294093934 496017140 918337658 756199806 720066408 396608317 106543569 414036311 156951419 675258315 924653346 484239882 373767198 865461088 918192092 494588803 460947345 281202509 686897011 459307135 4536970 538692413 106218153 187752934 590637528 86605308 717136845 494225177 162489477 962197733 815734200 367945464 99683853 493548581 546436079 430741779 853183292 407308189 594097800 631497224 359894228 225499251 185820213 508577807 138231172 408341561 732347765 40326214 714217799 946030158 293048628 258740175 72131040 708731979 563252034 739169522 303669338 101809536 215470895 621601707 562746119 861585886 183688941 845907075 675140475 678726525 391545605 742710771 404144674 127641746 5933878 945190276 593067874 52533248 420938373 449964047 400041832 957565003 573573209 452457973 492793903 983249364 144863064 210099013 636763826 171172637 645237249 16499632 541711017 76207629 639976009 896952955 283586147 209270540 900513030 532450850 758108328 309868735 114164104 469082999 503450555 1648158 5491660 180992655 518647077 905006412 759844448 438517686 783725747 864179624 181219628 809725328 795164097 279139804 232485920 810348711 30066996 54905394 216960264 78347792 691206896 902763214 8195641 898376648 770601793 364092324 147638686 351905815 576334731 77482355 471770231 110354314 109138411 874134479 65776584 977180648 216785916 104309255 665428640 913207581 508197881 765242322 623543821 412157230 288582659 276830748 841372278 389997766 287968711 858150438 498181436 994317005 602935209 279754871 334114389 845613244 53669863 104565041 89097341 834567869 606409965 272337874 287292471 421636221 758134929 226170220 154189869 783052148 389561824 309525647 442584882 98435603 973479804 614264920 148651090 323285869 303664278 695227088 548450935 362703401 661050870 484605968 291464293 612302489 872526738 730371567 853282499 88778070 85677364 162715457 624099690 846544199 687493238 935877366 788420916 888752552 557370720 293669765 966348687 184493876 544429953 548814328 438288918 575826652 965553200 142899733 807301481 861467965 509814211 705835915 85729830 306022960 380765852 749182903 490449925 280091732 928916217 830935565 322221132 388035836 582562442 696837082 93154661 682610897 987016707 828318 293494452 125393612 973721489 813497942 433246722 169132593 10123862 463474535 332767712 892609707 416574742 255457563 992396140 524029937 34614265 150488223 425751633 688795844 897534559 770903985 587667575 222716802 28811588 711453958 874802886 548386762 726820094 841563235 780464579 193989670 350086507 876614386 460670603 180647026 638430294 663639206 511100117 724927935 83877933 59506332 199824506 2882641 643047008 865967305 530211902 94139584 990574628 476294103 841713386 16350386 970020085 615438802 398220762 405349391 906456883 291059717 567514298 430272 857095933 274836529 217858766 354164242 967507921 427071513 322785468 769016253 414929266 114951367 144215077 504326966 908093225 867349641 632362201 670031252 967339426 943187612 773546908 463847291 596609362 234689342 337562866 733123878 938096951 324248133 116516602 656631203 186794261 275808793 622977462 343389168 58102013 221668641 258133497 587510816 637167063 643655503 638571933 910811059 688686950 486159150 917011558 490505193 2974086 187885545 792894008 775701463 843651362 534066047 459374864 921595899 886361062 356500915 860454954 711909679 128909045 687687982 495311512 808185697 719742759 483753927 408510990 36967961 867996931 9753683 621789797 730202519 712614048 579125238 521347057 44635061 403393854 521079801 516159491 272895707 88424376 445810451 936137267 610632822 191874017 186184313 81274264 957168062 362306223 805427981 312360696 90526058 29705413 292925413 938881110 405912298 327400506 156759137 597849381 783087028 420874318 84435379 268432089 703636005 863264716 812587742 260008780 17271439 294557662 879834038 838455115 789041303 181888711 310579519 353553329 878651223 510494805 911584310 896275788 267417571 830101526 105950110 431648995 629015736 226467514 80828725 876112683 753937577 428255379 578896763 154223213 643102301 745543080 553616581 151153962 404649043 332537008 163862610 163105210 598307076 949837254 621484562 794582828 103911952 819319033 210222380 948950268 605792627 729255537 265299312 764724726 390264748 307175470 671625495 428320727 461429982 666398908 749093251 680406164 272406682 550422695 791069676 873485731 145096412 805720593 302125623 134185471 303425677 843088510 467734540 388254611 851105746 663266931 805937315 425812536 530096311 438213628 929020754 313969227 459658638 930638609 457189286 724501494 579923859 717593025 273390563 324544435 338582421 679583258 377710999 699487363 378284216 125906277 891428680 546242436 915929348 464668375 185420176 606542083 672165406 114732470 409639429 837383220 780235862 692736499 704284589 270556982 991277869 737436765 70620765 284189804 647756717 61532798 267281884 515061324 971333100 320686396 432291175 555275201 335048006 115225660 570984936 988141339 283349911 499944829 907384723 910551541 321974045 212935156 17474487 700741614 706175473 523639683 676287353 467729263 655158267 661768504 646583445 657399610 241230859 76046444 713632226 759765229 278968901 254352699 402089227 715365983 82170265 528550884 719741423 227034475 178675661 15943438 707162878 262639286 159101261 559818905 459157346 347815526 697434392 136816656 569144515 243726614 198841857 68875348 191212330 591827053 339048714 144028100 550662281 665244081 972602741 622257867 968216395 431891130 101100371 963553318 657656916 517115666 503718797 463978665 104996302 136318708 6716254 318633016 986905751 92269714 192444291 135698266 881418753 59346083 33293558 156308256 234318779 850291028 749083922 423767622 474556562 497004761 216240859 211840629 962790025 392212515 879135528 108876529 332296414 577518811 731222385 320319315 477890491 490239130 931891534 949495023 828611497 303641628 541950816 854536429 730580328 549940611 105211670 417337062 736780934 6685518 809814421 957942191 615337613 984072120 582402100 845685531 286898115 716517585 191752004 428493383 291727778 428416761 649496152 441553753 885662420 211225444 299367351 624513052 12375493 327073357 940669900 12913352 912384062 614030289 310945737 333441644 19599011 290405719 442972877 131952135 114841853 863705613 906653952 724423717 69838133 365551293 365381556 271505302 515088053 138814248 278413928 79312535 140669164 784170726 344181900 958000900 528882344 273245577 807803989 771412044 483419965 368037534 582570821 552489961 192773877 553860625 588666446 540092494 877146354 386826048 229596073 562313090 146908185 141237692 164671794 90681102 346412375 474165174 167672767 621724182 669655005 64823490 435774601 583467202 162988100 504982186 302854966 943772084 250433301 669108218 381370504 848794335 583182568 959194184 32127675 344775083 882370201 526700287 894111629 766598536 774608419 700990666 678765626 990308356 52953868 72980691 988838441 31040992 547895249 328916368 286366432 813118670 693570089 846739411 986793872 346512639 365724721 307984977 506500774 960334769 733199714 562455933 615570301 159081908 702448168 826782119 194206687 353241315 693454521 449818237 161472943 591886811 167458059 729968958 150790730 163679992 276463019 912678561 501791241 747734014 128500033 293147532 579615206 100456477 785539490 365469575 422777402 983384388 984120407 965471122 641407644 92589887 530075435 401178947 401267757 444547030 871071177 903932357 114413824 502111331 873569723 362939965 799379559 470246317 180558222 318660814 144623353 307944865 601632536 545306991 199349506 501184475 299287962 384681643 328912103 850442322 786107529 700026193 245777539 356263436 542500879 557647590 245891652 416962003 484969088 466823109 995995853 349571514 914168959 463524362 219905214 566923687 310227909 916200243 174324865 154127613 179675897 617391552 550859756 38052264 224187533 113674310 615232199 596837188 890203927 168435657 652990713 554062155 464797261 266417400 90182204 948307574 521645888 631400674 838545677 863829226 424571009 464885553 973325242 306391863 694882918 279738678 33390016 871937217 410809199 64519537 14201125 835392375 711588711 441817057 919185760 923240075 757924600 451985975 929150546 725296041 899499886 770936888 747187815 842088288 318281351 251609052 229708621 483016257 109178498 756493714 941549428 590583694 690649725 92159774 41337733 176929331 202219517 157774236 311170200 304184443 205025293 760240530 208529674 88252777 391961911 724698628 362212496 335772995 861190676 426123726 985354483 736689231 614689798 90253285 686604773 240449018 276200589 330809316 792402798 377725374 856415622 299839118 452219640 495738052 358760700 6605932 349009351 252103557 98347242 152027889 576340426 376928133 349283890 64233092 711001241 912913313 226656227 248845675 490940445 896374688 54215507 302009033 335846169 731224449 268649895 866695888 171606533 730879883 400473460 787775882 221080809 70738604 485970016 355209892 538439474 295933162 345448785 134384244 618436367 943840197 671012731 96062377 14023379 728821276 496408981 394295031 591402978 196191870 372853560 335990118 511360071 669041227 786214545 485100524 245490398 345808415 961765867 748606143 598446356 952261755 248392961 787185470 223474284 475186912 680338079 461021111 128525321 904139941 656300847 687171987 255796234 879980686 926788687 995611285 372318456 687710300 764388713 140620176 497094590 256307127 994418172 488592585 233159508 917315091 313684337 782618878 254275478 648076560 916401880 322400466 628446998 922658874 359034184 197894139 825556587 938298948 196269415 943081871 533812544 391160201 411734433 654993768 495960247 503403038 92111700 868522472 162445991 545719893 63717684 858423630 787443009 22650688 121829122 217263127 492475952 949106316 728874413 153603596 432697374 578566003 166471932 111859983 915141831 40230866 404210171 439059066 940104418 726680974 452129848 981856938 634016645 451196373 964819816 153338517 452598055 49656540 786794999 783016697 507104275 845658127 562237376 252841243 263697649 373538713 717727796 681549507 912421183 787949406 579310636 625810336 211980592 525400391 250895242 601917239 300122571 541394384 137062088 145702432 582365174 945540404 222061404 275044470 225128229 855414357 319987004 280902872 883999636 521380036 980698414 2395390 864088481 316946506 688097286 932511728 332104357 969096844 413424618 74872497 662997264 335026629 329856213 466139077 777711181 113439332 812113033 193275768 705160013 233869288 427032602 184475317 676536147 977927186 550290128 349305356 954666320 513720294 932027802 955931156 366301772 310789423 457473547 667161164 572201916 725584526 955486612 340379493 211794233 576246584 768407677 334964833 156310146 687794681 647624342 459754249 582584577 783892115 527495038 164838226 2615094 292912981 806541884 79795797 699883179 380057846 800934022 403022574 466020536 496786885 155811756 460865639 823148031 404879490 425288801 389106747 873680057 407409204 539111085 441952921 860070460 197299356 894295083 741596467 745466837 158426015 210300848 700613962 925271874 146642963 911492405 826948028 847988857 240478274 648169407 157605852 422293986 742445952 51005259 437648867 822550296 590973130 198767473 512306463 863755957 494203241 991537051 579478824 846198623 52651983 745156779 257814286 186819722 163288039 143578915 118181726 159862668 978527483 788694389 267315304 669403796 190152913 320273196 583247322 32300548 226510122 612261894 78502470 411158581 521066825 898968066 515917398 852838142 833133546 798301395 804747704 873602422 561661118 997488810 565512969 93816187 882317128 171587382 774875922 243344620 205301292 318809379 202109100 73910887 663960790 517742936 234689853 688245198 666676817 143899653 786411427 623679582 419559881 384551727 624651924 454075931 279877348 242353191 244916815 667121482 843472375 629179371 282434919 696446170 559700168 4104297 25894084 379314274 789897044 924227528 663251849 924486902 635083600 134430171 583596809 55805977 77237456 159014045 933715400 599679761 228507428 153995762 191538745 122947886 557213787 408804281 901818239 955763286 226124668 381636445 906388053 958958157 912041074 802964350 567291826 735987311 41221193 990232666 689427790 965241594 790741183 308663839 981875262 783394010 217776927 975279235 473982293 807283927 235568669 52888842 907127925 931495027 972365964 106532628 854790620 115550113 470285293 828750641 117662765 310266013 196869619 334447586 209916626 671198319 437709063 834476737 969716616 106278073 549352334 717539115 10256111 980448507 634182273 786489188 548089635 713980064 223388283 569506749 69368808 596418296 557306532 673872044 909094459 153174816 650305870 243375341 712140649 606500455 101566803 479086439 63757313 997711592 130127255 475902036 771251881 944978487 571207537 536651612 70986751 613523747 993286685 222076375 450872754 246140179 548988333 736168346 686631113 75457360 756161451 121091026 273617938 682684841 958188709 920736173 122084995 50486179 265823354 974103071 35900084 723810355 952970482 606711461 591730560 56693054 817162669 452241808 612346145 211837736 215229608 940796632 91428450 935095476 591267224 788727384 818545466 782940753 773928645 45550275 188417973 68449954 342702052 761404025 970784845 848740057 284629927 297373939 912932276 453245105 718150592 435691630 203397862 57310313 308018539 415831681 805538216 971551100 287396277 64050528 161510986 736018834 856071012 998277034 931333245 337199149 698850955 152004678 547925464 508682733 930277930 811397603 997175041 339138419 720288230 505162809 321281531 588845706 570075038 332794829 534733251 739996892 95875037 399906445 515562128 665647537 602334049 754975797 268314267 428794098 698528645 35661323 302876520 915420651 63123728 740811860 432137009 28623860 597460685 276649920 253225560 460364570 688416299 325778955 578681730 725685068 979379517 538787920 501563136 876220164 966768563 264511717 698137516 471015517 549245777 253095618 873936005 345000640 777993160 805436089 164916860 207361958 565818852 341881205 275379169 756305829 278612522 971873627 829275402 610547200 750785429 430827123 805542869 792809768 576257 425256689 340389597 795201292 490513277 199247463 597906706 358919754 468715130 189009070 617599052 167549599 681790510 679043706 598497371 341259306 613908412 326221973 399408800 959063269 911119039 950792265 573563943 87377198 905038940 835566299 50600562 745028122 920195858 665004316 140628967 39995612 709172649 33222243 739372308 34127198 592171248 685151927 914292354 337760097 670567364 591176662 637945473 184991230 982844946 512581636 160383579 881838544 725235613 686731208 116754693 944661170 904768122 972254255 692386676 659589800 608183016 41458316 255359067 777023404 694313607 978645338 71336496 130687223 740882163 280624559 814176526 173451483 456451020 229655879 117495390 902721452 200399947 358394982 794507230 757464299 620995913 363396003 258431549 10319764 157574155 386827342 897192904 862647952 445682763 569602785 995498568 696022636 824215719 100412495 422377896 60919476 478610503 857309636 370794180 95446064 175807014 617289406 507438790 166723445 959124660 374450767 392364306 337708026 322931866 512051330 284483674 63889588 569634781 440388644 982734296 7194238 132719103 840920583 807926557 859244792 106102546 461616998 414241136 292740590 689449498 691327106 981092788 208523760 924145507 670956954 40586651 324518507 166689687 279338151 81317261 460942210 291030316 753555483 965427300 661296565 84644577 823643447 150112372 56602005 461603841 173096573 255916842 694874348 908019369 270497792 803892605 461408604 79153540 822222439 737338692 679733152 825198705 896183032 215887554 404633172 312159778 487143439 134111042 139366787 39475339 855567472 979773648 551278892 495017110 41108309 218656450 199733034 232579075 509909871 640571850 769247957 843040053 35067988 541002536 940742752 728320324 696869888 54896256 175910842 415005702 586685110 571518520 221831113 111256305 364329622 236502737 455059550 183816397 695784748 697946910 382341701 139979970 525795614 181652617 922156348 366741178 940103511 723285127 990112779 691400672 365857535 646882718 312184972 354108545 882647973 587600258 392277313 438558012 808130698 147708468 825902477 174267398 487883321 940551742 629372041 388558938 522127815 159473199 298804761 349813270 20832600 6961977 856537730 919356091 426508622 453233243 541378848 647433103 213637373 11602152 931916943 427229976 506861816 82672560 891756000 996217373 720016050 651446217 409730323 411076261 504790301 327481916 259874964 706703034 384307461 860442264 579124811 926572137 390691580 311371953 327146125 867893153 647201707 885812437 353924667 358766871 96967206 247060978 675378186 327287828 349168970 416031710 738904808 248801883 550717450 105747583 780222183 291142278 406232385 373582822 543926138 812868707 946963694 448276474 64376859 513618958 712090168 361250095 845428825 755555350 788344600 267915492 842440004 857870021 526920892 96743038 288857129 649147357 889167734 777849038 399127161 389145281 866877469 604275032 453522050 971819716 737033096 40467480 134142358 79611548 477500540 634257033 96475294 166770644 68345448 972574520 573433185 179668030 372462104 791847788 211742153 548095449 740232428 278296951 598120522 639973705 204405296 704063752 436001542 130047563 349163003 745628413 586037886 506736080 105059514 64659392 398256678 271195366 783758714 398103263 938083534 956959390 623436653 197306099 600307668 751164951 702302092 24175072 42491206 727738806 106708622 149670931 791092268 882713831 529227263 347399412 216127353 809546229 528127034 140550145 198334752 510194569 38867183 28619142 3938434 296234404 751565956 878112176 943112676 138644594 194193749 232845847 805095938 52003837 963879278 393091561 38938843 82618652 467459578 470056504 365415794 472922607 328695868 693469153 298010601 711373819 247814922 884714550 565714055 793409081 611043607 613226936 46041918 758044774 521740614 179113850 500478068 126736416 801075898 572924056 644865703 225329417 979665514 211105563 309928004 248213483 375142961 26021760 948250886 976023274 564831745 327186985 695669783 848556397 234284497 729451506 434946826 316717918 167838997 69753881 176515097 710173927 218859274 217073580 332353233 436067470 260245616 792363129 259396768 257791338 414241677 212524524 258720557 27947089 867833485 329903571 378770328 344418381 931002457 343524355 470937717 498301488 192326363 356110988 97429942 639091329 39230239 862871804 733955108 646788297 568321366 450522758 875162490 178362323 421357882 279559423 957652755 570826940 737366546 935744132 451552170 832573147 88696932 709858968 750143684 858326082 279231856 264610047 192906851 188227579 572252370 911858897 180049984 490318367 598719812 771948833 698612206 391192304 849159074 241601044 240984001 116943293 511889902 723966574 701146979 121196991 758200847 762199979 935589423 765222566 392175819 133353722 957982830 332317358 157803023 517787622 716987929 456084741 1739140 28798706 719337548 60371402 239163768 509743599 504553664 913806845 893322181 792743184 344231765 753275736 175250153 425718637 754287957 202274906 179136721 316764817 600276209 485016641 431414005 1965231 749026973 549353388 435106423 572222132 149239916 876917521 307927814 8342423 608527891 40348684 786125829 112940258 761710040 749946300 590101229 542288927 777604639 948042170 666123273 546719485 635997213 672274037 21096571 15554242 117354653 466908647 357177892 637718857 945530180 258315695 131825853 530205849 994774840 101847734 583263928 194623579 288683737 306896621 195388505 654833477 663116006 515980353 753716546 757705686 859488294 727546376 308710887 91831431 455534613 990002769 880525773 816045159 784556770 30598898 450198898 448563323 722534207 694243273 310113700 782609558 779904428 364688707 606834141 382109399 673351616 458471858 123024311 1811562 751981547 196621660 19157201 487841888 426598703 736833204 607995097 929285633 140329587 594970668 68633791 341951880 745633025 152170555 839673279 721078273 748301826 945415882 100155490 457856576 439028916 72482459 509915019 556032638 166292713 139769819 785606920 35608846 306967835 853714822 230956204 273087755 446589362 703029153 377624646 754135220 818953937 606373068 309125725 249346487 105394003 928983298 489401047 965281330 673027513 959250802 520620458 836917855 619425413 761485742 242764927 884941443 596427535 917358245 494393569 758874694 982221288 236787396 840763223 874488100 382047338 782417488 952103857 210855004 734791269 903736228 292218363 737098883 961255393 803968636 152140196 150107010 666205873 2840042 899778797 107572273 351767564 177424972 121372903 823842029 367776009 223120966 12959542 941104346 988555245 376923479 794418416 975138036 738089213 883073349 968196538 750307289 390941556 641812863 587880568 268922890 193961285 397364736 830461541 441932945 163178572 647922029 476581376 138763166 913090711 374621676 946694180 711190775 159958631 766675309 152924419 726820336 9770697 493073952 276464782 511502869 34850868 743737476 880611126 262857747 825890132 152905182 203642188 842705390 748943787 436895972 911509998 734253041 720353683 255767085 362312460 305356093 474449608 872394569 829040572 561180040 335302833 263526529 851913800 287250866 999193005 198314431 420893037 758145884 548288123 298397500 280297174 105710319 996077149 318187357 236861618 190090682 84914539 162553773 172057139 467261853 46519860 64605239 576227944 885191731 957654111 649171782 884360821 987820798 411068374 154690691 767831021 683834423 139794755 743732074 383120353 108334938 321986603 809034276 396057387 727175694 165668567 940001123 735419426 246327024 186967782 710884574 434331853 115447535 393820599 173484603 902261308 43864557 322805023 239716435 214347662 396868868 5427462 90900352 432331138 513037500 215802347 683191603 713494778 131523299 243900164 672294793 312513113 527109765 882672980 862800243 969014573 46759585 553298570 163636006 271759836 508289647 975296457 796680784 93440794 398718169 759510730 797869862 723103478 417583431 181685626 116764592 925882323 788906057 539100846 318412705 468238743 895566988 779077904 999488977 307346777 1654130 762505855 634423324 102280464 339318847 791931374 739805701 256275986 736076725 976580707 917697487 707980798 309686482 968125593 932253034 350478007 780458343 786118351 109821256 252744149 870682958 415797189 379765812 532379912 786476785 231883628 433148391 701360489 714964960 81471608 908860556 469566212 617287901 298218633 738550463 652711250 405610000 281663268 278315785 674308375 633453047 421131687 719992453 492712274 423196346 843783190 865217636 412455465 533580712 899349002 981398384 540820614 359480941 187933854 948787990 937600575 837850317 862130850 44179579 300190205 786375988 976758360 841219185 70344539 284356835 193639106 708458026 47822684 174329970 250663491 430483212 288044966 976371025 173125187 262508311 196965561 280868194 97023388 629552648 790344023 344791308 848590059 206661939 597367126 413058384 692970037 226644794 414101466 195206725 352407346 290529461 103229295 492691118 985639584 306580780 218749947 735668827 378241926 466430837 675154760 623443634 610876699 568239169 208770641 198165574 375752635 103796266 77923699 787500838 253114134 325307538 798039937 474291223 135814606 612971300 782018405 18246631 634871140 923072526 96772953 716821688 114516402 219554541 672685970 888172192 179870241 187876977 793330533 43911182 1150601 898499972 961599857 782256922 868134127 528520087 121477565 793030141 518293364 825774153 599106047 728137485 290415107 911531084 890143998 16263143 783269082 673784611 91598290 96156228 156492214 55202263 366180433 279370662 355694741 946829303 193431085 449939156 315761805 402335423 433525908 951748672 72460545 807436907 811654421 358022927 407656179 587859214 502533796 357866342 699935151 641261633 755209442 61082427 83805035 165939484 460404733 822432681 280034913 953880071 988792617 296066156 967085782 786523233 35645325 16423617 773341671 820005328 304212479 965256584 795057951 487712391 87452367 58797806 222679410 256520944 92664313 54518892 768648399 737547875 958701621 929709097 808375708 524762366 255584510 721023434 734018255 365032949 850798672 550455091 815965950 258619525 416051730 286627441 227994789 173356081 899170888 712730131 77976443 460801736 800941619 268913904 308312997 896537590 813632654 746405334 596749018 695872950 847135474 241439822 172254569 428492736 496170126 439946770 852885679 839298896 969017122 117153651 609062523 561509209 775758637 394653204 366111252 395062953 978623968 637803690 352334190 404586971 555587332 863392855 659232254 223808459 24451445 88058237 605335718 846699028 436388196 650040873 268301502 9327961 334159466 229999896 984930561 253020291 328253352 749257602 977284516 309445397 920812791 950715254 433441876 146824712 451344210 34233925 392149001 413920953 392196407 524300159 957090724 337146857 190772522 175535983 93039895 212613819 187010698 961417658 522037116 741954341 95377352 734738899 961992150 898195819 454845659 150052188 408045221 197942818 211018636 840822836 775493883 706815122 257551782 177743408 671720648 254927266 12663023 384761276 715020756 671591819 150369380 243214380 727168506 781581176 999327892 553249261 741779973 38161773 105879353 780619461 206061509 29217597 966017390 32383565 465862099 814518001 782026175 276469063 958870174 189453555 645008937 45616495 358722552 290662067 521947337 811738935 374684364 175570978 144814570 194916311 918252450 346284902 111027950 93227292 411892383 775646421 690931663 888744231 285098662 838445475 689987783 194485956 302127288 125469547 330746183 888262241 405411586 155853083 518182084 963958991 891768380 257286036 375516211 221864641 602373740 334075118 806932552 821014634 911370561 537409441 821395867 792745185 954866217 343592903 917879750 124371581 262540349 372142010 747103326 828484909 248649030 619703800 946196009 170885205 883990984 587371693 974132595 689805202 900706107 932292864 493292971 619668376 512113474 474184066 377225640 301084872 889966797 126202200 285399454 517284066 827435919 63244 980663359 546869 811074005 840326478 379200706 570466231 508871905 91598256 864547737 518606636 198698563 658632214 266910254 979991544 485865645 942028057 601162873 635849811 556297901 83942574 128812896 24692259 811333757 466781551 82291060 49622953 420284054 991754997 861530744 126347021 199631025 434564706 973241291 190698098 348585664 383719521 858996583 11930448 762965363 471692618 195364961 516303371 568350233 176954874 178938388 268575730 477929099 284167300 741492271 190274112 954291078 149956821 643501910 699742359 565192384 192158274 614235951 968556765 342926810 874074950 887848512 346132463 945618372 138113424 513724764 464400129 291315937 641248737 296042646 694563279 900010186 548522939 885421020 444471044 226548290 535916361 922230572 954313697 33274020 209281121 541716712 886757890 21042061 44088900 592311465 502644691 117699320 948717638 953471136 753768959 821937132 440969457 481063691 798914992 356366326 617124919 331491469 114444414 797706596 670318132 962037162 408360491 534069509 559899494 112614562 72124216 875745247 777790565 689655249 940388303 47246771 881109963 207678172 202444307 931454472 154115756 835258816 728306413 141423808 896169898 760112188 499370443 374298290 854974803 540270572 909982913 677659538 822580049 421335757 135889238 893742157 796678326 885001223 192371396 236620038 81983411 481610809 290763866 860574470 961691752 407678583 396924236 211329764 427869810 997034333 472747874 852825925 614622520 538996987 529610432 469425709 951413157 81920272 525936797 524349722 658908631 222730534 341004179 426557227 411523383 18310451 868662983 621509916 182958908 146666778 820701457 478588753 137144518 927944951 758775265 931938871 379673947 642976171 426922973 997794710 225784294 447856597 514441910 309799680 429322872 421858960 243527444 311028218 9355566 439419148 21170975 542898426 680499700 755675944 267745141 522278366 827259150 679291037 81686887 422977168 571441003 594919541 880494707 612608704 823495910 752860108 562144961 743290267 151654272 762445217 343344491 354936267 178798480 92766829 63218071 883442168 411102165 596676572 984212360 186036204 885756414 467603113 189910356 162174233 524373879 794623165 630743163 215497243 103136282 7693303 49857763 990212102 953854250 522961409 3675737 116423728 570241207 808844444 24333401 721021662 965519043 814636024 812864640 277781806 130506447 731154330 949911437 31694149 801826087 128079431 413314118 125563417 123963935 823023496 108924077 536531059 477185287 711350574 848011405 253167567 18166650 347036175 593621008 189025841 674749871 245787074 573059359 196012911 122019712 767166369 741525427 523613911 886674183 712779389 126959983 705466070 411672138 95978107 697389824 180059058 454174383 702170594 574106396 393618660 506932720 417010089 23845792 105012575 375842308 142758004 600253570 98396681 553962597 181029661 579502330 154643063 50817761 318333417 266196790 925448260 370685552 50823371 964057845 164126732 849725301 175322589 566081475 417284488 164771273 976120737 752700647 549552573 789487800 384457652 88725127 550931259 983449008 931129618 293440342 314293434 560574876 127388380 54571732 207191666 699585889 868717596 331253231 321420156 503994438 461065935 683060722 614802160 692664233 422457430 46495862 764292523 383206385 693313444 852659931 330600719 956013182 77376007 693449784 116904681 224918335 195383365 226281983 73701942 878378890 826797329 747049203 194269535 561448544 550447715 627565870 612392971 758325590 552537149 608197852 376771427 357768767 313918896 554694974 98641309 442989402 734134010 806727602 940837735 841187740 428197262 164364137 592345393 775415509 354254115 898075639 547282424 285456680 778452700 659262810 572566888 804214177 439206266 42535805 566083539 414146860 859505940 62888527 911724546 422039626 310785965 608985309 833748356 296653198 940928630 785554421 285801300 585038333 552017526 704515345 43083044 771559967 885045130 195903581 622162213 837197930 184392003 298323867 796516206 741249312 458671639 529567611 877901268 203116545 111216934 925029929 259905598 199080607 206242316 718996158 408771373 649118335 509326963 21238097 488743967 408041893 567291654 976355874 675054170 716575957 2352342 355908574 118572943 295368451 472469243 4011802 548633540 525880279 82308898 735665987 456765796 567059977 724671380 571025905 249234042 827402127 771136738 450510521 897996666 103365911 299676186 883152206 590892024 578759912 140311349 244647424 785466065 725798818 162760292 324671841 488448704 418294786 572581690 381777613 153334407 50947350 869030659 630853867 184004254 791893560 571965583 663835992 403516935 163743803 685467692 928290418 851861323 433352594 763104440 535083714 271786286 456838829 743840156 358819143 935783932 579997947 111363438 109853272 308375778 464734653 371455924 391610203 490012258 779996780 83451428 83371478 136626568 389061923 605532395 167505143 944430473 588053429 202714233 100038013 157858402 242680350 935657604 320595501 125620096 401776540 535758892 163193362 80347069 184590485 185962843 613999492 992948264 752996936 151765496 810093078 408163224 293770925 785608360 160851270 446140118 967118388 533905307 927673937 323483482 586606767 526640015 322009966 497047291 138397399 217254279 282121240 483456330 265254659 831844395 376646536 184526982 368976451 287474634 341275033 453460904 777315787 319158003 341920109 691486684 835712990 701256909 468643371 706082663 139010311 228168676 354898329 742609562 146751026 790580957 481653454 951732765 514446903 635286052 723001027 811409140 345906964 246607628 992611644 778356329 507276238 816962059 201662994 988930452 872798574 157464734 92810456 728640510 999017344 305721077 246747113 252836191 86373169 693129257 549797257 491121085 197839940 455997971 381242079 824804948 111539479 351920218 441083105 889119619 114205444 17071644 273412622 433305909 661229186 465090269 939963979 525055443 687933837 938060483 635793995 108606023 468739895 154034661 881446533 693739548 417465011 202794994 843157105 335365596 525100756 108960623 556796132 963866557 634614655 327097751 892527299 835200449 827412697 149457064 56706526 195956932 215436599 583665840 579763336 677974564 487271342 729224011 792656923 378903190 241868167 996025848 614721980 967910260 173133645 932905147 533052405 297219453 139495868 413144936 366984227 364405560 86990323 426347421 525872625 342750377 641630278 743698764 878421802 764185688 163511318 276550563 756326486 956201607 503957060 384394614 221795454 710777941 250626921 175787499 336634525 79451969 63732185 507629855 294791102 49809674 577766002 528959644 908606138 148736014 213188673 382794152 318258643 460460384 781108294 163562301 522602916 630686873 715617681 710786255 17338843 902958138 110825918 154612633 359526248 247399450 340977615 119042462 798911131 151286268 279479920 53768950 636838851 248637306 308177319 741841465 339133176 788256526 63691381 443465246 76195074 673735295 501702295 790606659 898222120 215122505 189004766 928250443 197967953 137738826 254038443 75956987 562817322 647608975 385650111 49899526 652778701 250917845 728850441 769329401 625339944 742230711 492695222 995836156 655117122 559865544 288803627 493561442 733940275 215776152 879299770 139748427 568792629 922823740 292518543 259492853 441655343 728023144 47542289 581468283 832636793 142863371 300336957 205371322 687842201 70142057 306093917 540952209 372590136 729508111 210530784 203264591 233081472 528258289 833991636 165172377 501363478 718678338 170388117 475195575 865657134 510482062 644463270 492416264 997370407 474947242 370671899 921275568 42039034 13016930 152146776 256185889 180936947 425153961 44550584 567566983 799543486 130311359 456797756 659340244 720379402 235571206 6238462 901943917 340563043 719882596 436894596 510625390 147466531 417291482 352573321 616682426 376907480 718236714 703937272 155813829 989404907 785382549 172151393 926751121 423117477 639029181 532016167 320354039 208967635 791347927 36021493 804287733 657290253 786648361 701443437 478243420 739990418 560514281 395287418 923153442 627804006 460825242 835454510 290928866 537418300 64193395 152052569 669449814 971141797 789125134 842774610 362303180 823662628 126991929 679350139 577171321 335224153 881385898 123023510 474012772 416626936 141257010 477498851 947466309 320298779 675607877 31825973 251420146 388679485 972887388 667985960 857044478 260049680 30397965 227675079 693629886 908394947 388587736 464088504 65734638 59514084 58513758 956962175 713477585 755604275 485360319 259112887 23156919 302157410 148609842 238292533 774448604 584816081 532028223 41885827 710128631 465819731 627103545 147493527 150717232 471784089 18152490 380844099 64147236 873021717 854874832 935436581 913551207 544510622 922519849 922851636 179448477 905959327 804024912 648356186 683233306 279155677 371936144 8722293 517824604 618871668 985913225 500971198 410812863 464746449 574343871 117764136 187138150 278709521 271374588 493674434 882917504 251244806 827924042 743368850 596594614 209500564 258724564 728252114 658242880 2618765 117988541 155882053 598133338 662175341 994568198 315190382 188244104 956471836 144896395 156963077 92885786 816738987 777591365 842826429 741316794 260781289 56379655 915259828 424178334 477868973 845974458 379792588 701782271 261616964 30394164 342641577 214164798 381862246 978978510 509788828 631394741 239178287 855282559 459752483 555583933 827684563 689900495 160872624 387308734 403587425 127347597 882252506 321379311 895918795 762103376 355420742 317448087 47468269 274093734 42531074 871213955 47864706 194797637 752196689 879595067 444190842 429356139 249505469 797717392 994581713 281135673 646006186 848064214 928410010 431512231 426095573 539967430 811950184 757787414 560953550 837318854 924074718 873719990 781842307 742087619 950031634 353140952 464125708 266957884 542852493 216082766 934479801 676824773 981570649 136771222 344881872 206128105 863129236 528865910 543952518 362085662 772164208 522697010 874880877 498882856 313765365 263256494 694382346 276648368 568718923 63341294 771046051 223741096 227924642 74307459 949296386 825135042 872892438 236633998 637758759 145412619 324652925 101994109 703374051 696831497 628284771 529071623 571457993 412921212 720023619 522450640 510482336 892724219 757966094 378072744 501048076 795874303 422718290 941342530 659265155 843662856 631365917 422839991 92198368 767768271 707344426 42868763 572706098 99959302 777264904 552109462 524639918 668975708 883326895 211888884 663099606 691578434 921013949 402402221 627051593 116386685 436775026 804424145 489813226 458636729 722615141 447759575 152550389 782695286 560124449 608283236 548081229 380603280 994153365 533563888 874779133 914684528 637023083 665614549 5876856 243574290 834061530 182929249 335732514 519748251 233802086 570807036 63769365 224687035 74030813 677452504 743733400 526444069 855088975 233511854 888395939 927641403 885426826 223846501 611104795 353458548 56551772 568002509 251100019 586045692 387911469 650764481 289729735 325773607 822094819 545179357 28094170 911974845 753387261 922518233 631947958 214434660 157492780 923688351 555293622 56660169 855056533 655145440 650771887 737806794 346979287 373880145 750139564 591882390 336699410 406044253 505950671 448677630 85717714 442172847 888368202 790855319 865449326 406541518 510380827 426377207 234329369 970321557 415359981 271238740 495456540 920657111 76135831 815208643 214774423 349081636 867662748 41332005 811772641 349469073 379439135 800901606 703628323 986425703 98800783 129720185 116420933 296297057 161673136 928054600 878123718 478092449 291515630 675674266 678495847 626156505 442700686 87969679 559769692 553015905 776836606 462689772 253085121 152155366 181135003 307298862 105567008 269073977 512504718 210748891 125827924 549300114 140387054 62926731 883678824 302718770 774128626 809753295 202602939 83192642 967441371 768079699 477571651 463498076 863674302 229739486 79704592 414326091 391211644 396266442 806435556 975144226 886285899 448676110 895982981 24228327 959665688 947724761 155521031 921446922 908806924 677345958 385100867 350344471 904475083 556366392 886645736 367287545 107872585 250164894 457802383 530966411 441995828 589526222 58067057 141456358 33584705 760120458 901316681 261231252 963481951 730503446 70886417 523125442 753270142 703497320 118256342 577491071 630764083 754195573 381487265 448061439 682514456 102131631 468310732 607742694 603757023 178373173 900173967 187223710 170237513 70985107 482818676 375310302 149206289 75916719 451150421 453088166 648721194 146965196 508623845 687309060 5998355 645488600 779594010 52978483 437027677 478843294 254738745 534744519 630427658 658104797 310467175 647116781 541055166 834102239 130772594 610391263 193237701 611648592 760213629 487444266 901640274 489450963 406844123 888358992 708414229 876509663 249309082 785472141 191463961 95481415 515220754 750962458 535547082 616318923 246979883 320822578 395584762 373578483 715399367 891303743 739443312 129702587 725420061 797349987 281952018 480065601 683776207 42497370 73858164 880722413 297245019 879305786 713419444 820338246 596696851 406341565 828210271 201385320 307338063 29941715 116983446 112149929 298880791 639973277 947186018 563790682 830682694 246752763 685814757 302526203 888668333 613339404 455900460 885846231 473459415 734697345 792397343 124164593 658269431 840175300 905735212 320617142 171559159 241104424 680063803 381134652 692093827 970233116 529489851 989565712 830797240 312293372 108533092 7400513 508357547 409344195 331415244 266692863 397477832 243449488 854774383 293997163 18432302 231275743 797709608 376558506 300818650 893436228 355795268 102495161 364085116 603818213 627141296 288113095 92469330 184792837 661729368 458355005 793785110 275657882 90886211 56404968 660816384 215801121 452336648 547895245 804262350 624312305 666459741 648508484 796260639 813436279 871416437 623312447 768644958 340461939 296007437 987380409 514843068 81937049 863998403 970516932 363947065 286151130 124610213 630223786 321384885 308403473 700334085 171303743 749611745 515569258 882592749 813879763 632285288 530724185 858090309 72569507 269096545 739483326 64769520 604822200 774268832 802126855 170306461 931671343 354779492 703808776 466851750 702729796 699972906 732319701 891687278 63793425 712649346 563898764 340392916 970143999 585447452 356463991 405652314 362689674 400609325 629474779 428476640 71681556 256545966 879950660 385615391 476720344 169466031 635583492 959502076 97215271 50063515 820183154 781521058 173236903 267177121 274865181 687281282 387670704 487478133 899709885 764649137 900901930 253655344 917147351 69279394 661260235 784943197 828746049 500265867 33301346 938864425 752856808 240371873 864419678 384839857 494694595 555269968 414658972 438046897 114591651 178087176 49989892 26577044 732327190 650976182 345528692 875805100 632517225 765898033 542529020 352821113 543116329 317342943 813789163 482862023 124692881 424406894 990445413 600584916 887107451 600830545 1790846 449669511 613317814 759049801 520236560 819444757 919934472 436322776 282337962 489690185 850325679 649896981 999883749 441641738 131787556 567338042 153357994 211962911 142116633 853267416 781003378 873406461 265818293 752583570 323713702 105007659 563146230 692341435 586363987 579367549 346141694 790083223 488050821 947773886 256670916 863829488 281184312 872490299 942369252 443409226 72031960 298026928 78909945 494889614 552187477 274100398 726207518 785008414 356415051 959583678 361575707 379236855 977457123 171403771 867254954 387353369 444746884 952058119 870281763 544277735 900962768 590473412 49116779 119841526 684292723 369042551 754285341 903220360 880973072 324058596 707419180 93465132 1889630 365284622 125780276 466319737 385895775 867511969 982202973 359163497 987580487 296200041 627333650 359252788 842364113 569962628 733656051 171213796 137797569 355949782 732365641 35194568 77915198 847941652 808236796 538648815 675691569 362672746 277592193 36755527 176848680 889112036 477286522 398594432 768682108 334469494 52748570 509408866 320112628 399488773 823803994 540899802 517947200 838551559 551268013 155550160 48140583 441778248 664447949 543376967 791673492 774649690 900722671 342401579 36560725 276792211 97551696 474008730 365551413 280586387 621411263 859455006 917408131 571699348 295775938 593254640 417715021 783900232 606375221 180150968 358208190 656317592 610485221 352242995 656058054 283833451 768388518 111154204 142668782 353547265 777162080 80216307 853288867 611492372 739418840 728522610 303911572 232574330 568377778 521941022 815083521 881079634 220287116 411402960 2940146 71788074 853189902 980160108 33896943 399961074 863180904 881671411 956104614 712008924 366367970 727854558 342322157 284603998 480276714 594385781 924191191 371873646 300170682 661354760 902891060 52053646 990955945 632180626 646625424 374993203 757603754 265614381 805281754 702567076 468681470 309524525 756846821 657955739 899254994 838656731 760204423 228991779 936879023 743403319 879784078 798756200 324415016 70750355 135649086 347986566 593844101 410866489 110977882 616455381 886328662 884984080 776100389 910501362 369025480 564168748 2894080 895705378 403005042 449243568 400500041 280143212 856004293 615270228 891144661 903040014 176257457 127706047 171562115 116995602 203248592 802247768 3076820 58797061 819589157 62712712 609362676 516679026 229441068 918356710 69224225 533970492 46537827 856651750 398774307 817137690 372312923 488523444 726541008 147356329 721192831 785651407 821421558 932361327 317131072 955143675 709049396 569385878 75313024 885981608 161866784 928612856 650054584 915151951 415638628 472647331 820487602 786668031 771995999 360491225 7954144 107562210 516124068 523723736 836745138 931394936 160443897 902990196 544836526 788729545 784778745 803023152 372457315 314476723 108142783 610916963 131002107 849858986 154438883 66095407 469322257 758763123 898106435 679971274 410205395 519724775 591168328 851452147 852966603 279555503 690427206 330822797 224205204 253546000 65295297 66744387 943383992 149443268 210451323 989999641 128920570 414911240 143703589 319020251 235716293 691090779 573621173 169962568 202744334 911368570 408872286 930520765 217899148 845890157 907254187 537239023 171453995 198389175 774599405 905671226 356749220 322620489 122829274 843320186 113594014 534029988 361751717 641467389 366132840 238830342 624794627 669174695 503582341 584046040 718451982 261465098 988053878 593162567 434976415 981352116 230788604 877511645 437853215 943776431 570207291 679242127 501178678 113532599 73897560 612326207 143864594 175764758 612266074 704335415 566298418 733084017 889998133 935154944 258999721 784213247 775449239 3377035 216436352 983409950 418760824 928230819 48378636 896167835 74842909 914979300 446326757 753640093 181304225 426321584 139088934 330847875 870492193 421651095 466985755 587575601 824083501 236430127 475733058 417829364 327803623 342769035 75422127 121951390 802606777 848973812 520206100 84831593 901653265 344661547 607290369 967939570 38819101 826943015 42358244 662911011 465900636 270261008 344630406 63288278 99652364 415543628 19954553 839333280 565484584 190251589 45575060 931833535 478437369 632344883 716549695 206529965 335244832 354704381 637475862 882229903 721160642 595449926 350670511 379126119 761879871 333814292 54251287 135963391 690322337 838760053 194748513 230935761 722378538 893047304 566406259 84708422 723451348 2273455 638476660 604432717 131584744 585674399 874777930 701213365 807149706 685362759 447931847 896075792 983943320 301929922 345481278 932725228 652839112 319072924 101562261 989921151 654229702 702542076 683400107 13044068 409596704 836606892 455358633 499160762 803188731 297203617 440114853 774231594 981759248 335781975 816330512 932999915 897233181 773158057 40073800 743005608 460687634 190697485 654045747 957117111 771594458 137977353 539696893 731181579 950438714 563803721 492491174 411596035 790915892 539389422 279102028 580278950 979717624 82563941 397054584 2580836 626613593 652222916 767613635 367430630 595655841 208830939 872267742 5712557 547103638 86327690 545883960 851969576 53387845 635259008 628751639 103634576 119524679 711042473 868546791 176559279 237773491 551421418 824909744 85022932 99446856 897372721 146368094 136182145 903146799 828995316 565576305 168472389 852767064 770383546 684680243 387048088 113466179 233331620 161179763 220950121 149871073 845371683 671603482 732429277 266056757 51388583 139875377 931389768 787968597 290203133 429470153 64688299 612242340 520482786 250426943 687033862 533648774 625592622 787763042 368400864 212432794 945943267 286182317 746254179 633275029 609352749 93688340 917522020 14952484 30902301 900261127 608618913 199445942 965295868 702155038 1546382 825128231 936606930 684783334 713295338 742310424 520388417 500258153 329020887 617137094 513142826 636616712 516470107 653516570 768127542 555431293 792704715 894791570 915395372 173044008 545994499 848904195 605965880 625356281 608224523 68946432 401320831 962794435 299229012 782827093 112540860 657854766 281041878 136214625 331208585 902305318 490373208 878190369 573935284 128278784 689286581 556287688 868344927 621809700 419912730 843105980 492137112 752630750 618643435 66861745 183051495 493156956 189631548 250003066 62931755 830520181 584967734 650216193 23548090 836365195 299299334 557222461 372345332 800543709 735241906 778726341 33053684 677194688 383346136 289615133 400036356 353335767 643992305 806045322 861213067 587564034 957054238 445813346 151772831 322195652 338105998 620066520 895111538 134906753 997932928 452001147 553301709 97300243 299251711 732705921 930676796 967285873 516480841 52036418 206491517 865140906 932956303 380345907 88725491 615310223 816003955 165757809 851748526 265232530 555815256 798813025 773690011 118873352 54530468 300291653 706266816 537145319 102949333 287448699 515996797 204290685 195873498 790095949 83944818 481977237 300577867 974914320 193034196 612575436 255450475 632347073 968659234 183915906 242554553 839384941 640098712 356704322 669236479 32831115 360495564 942565309 689980170 753180128 294919975 898913720 849393777 96758800 694427969 398862334 12050036 427932694 968908174 441169018 251327740 138780630 268083027 563063926 467678863 473947253 712437598 68431318 326145898 849660057 997634533 39842296 205698293 422962424 187842984 104556631 397188192 74434757 340920587 115003980 573179515 807876556 12839549 362655353 280021354 754961015 672628669 218861146 147540338 637329179 178534108 639752807 56588458 215153207 803651447 269350860 816635381 760255892 364418133 261009341 66852602 851140655 700909787 488300331 243798566 349836284 752429578 361159579 819121566 357575842 353689790 835847060 616548989 101744784 97455674 914762460 352964710 875840449 671092297 769786426 692218066 66482404 918829651 318886679 104315958 456324484 102790721 208781845 239334255 470621351 279478587 439643375 987389145 439865483 252882595 842452297 766119298 415799861 16792796 977320040 531796761 178233076 327754200 780262041 629677512 970892308 437021948 11944023 484198494 24163025 808603218 593304824 586522734 231790252 204968170 934754578 124839131 28143259 311961147 98845931 727204267 140461103 125089846 278526634 95461231 992562130 429765947 740970294 640516821 972840459 550402615 460091676 74444780 188735638 122922768 380573759 969075765 136866702 295124605 819166448 840782117 858260271 297352881 698643801 388535977 184812581 573999367 428919971 860614820 817509384 103293133 24779385 308736401 300873518 369584303 263111790 176937114 243018432 468913366 950403636 862330276 453749261 564187326 72540858 411893542 395458199 849119945 188957470 350845444 682986375 162375472 842230378 364290296 948145282 111041005 318068353 682107223 997731467 426305628 77140506 516454732 268572076 908496771 285294537 732802788 389747312 148402440 884030655 550472577 183247520 510501017 645328402 924235994 805849337 139380709 667254163 329761544 981975922 386879144 871050134 714149774 653953820 310796256 219357871 323076903 801917393 746923260 231883612 72167064 482895282 871545260 622702994 290709313 642597029 737144931 111305966 832287939 483029249 423827159 115471202 367014453 357995461 372674291 559791566 387787744 757361116 151508992 752580218 250918589 356435706 17420668 486318861 189032612 194143630 484386598 266921209 889827047 11788651 34446265 869025497 35982810 636304341 158922101 169901136 230849840 389123753 742348070 733480238 284207495 282211863 346502794 655639301 83342539 893555369 305607314 202806316 113182358 235753163 670599095 9691562 498658745 931229241 413883428 898409954 743173862 399366330 341981254 896297489 35253144 39980409 334463821 895706495 505855946 612429998 619683203 688939901 598598574 38135047 947765257 755525814 975048822 228312257 754928753 744102845 874972355 264201809 285286202 154015704 198434373 484374569 162074338 979506260 145079224 981348069 209730255 497277186 706689769 48052980 825656205 251319579 580510752 595460818 425364319 302612202 935048930 304217420 628211099 475678572 824027970 447003214 175289032 738769724 25747252 314164116 100506322 130184230 366741641 980202351 77006691 629716256 902910252 208315098 611705350 786507969 875224360 207678112 281758783 833046200 862742201 978448929 126639782 843731414 544127203 623486306 348580243 201847513 946735627 311968955 398786468 283750626 689403525 269533424 821627558 877931588 699813768 471495977 794677589 240537818 544627882 425001055 329149784 453039236 338089704 966644801 19119213 481341900 537967167 685065091 256094204 220879631 854164725 486761774 97063857 612176105 797212233 387586703 444945793 579852628 938214091 983098868 742230742 800239714 592096693 314327515 704084711 165990244 310025621 277623890 284128675 478918788 114867392 86864735 464922015 159057878 259793531 572188260 47015313 565523120 484182192 985694107 725542265 362279401 720628937 446175502 329691856 848026984 359146173 762292226 640481355 306609644 450509494 540420446 753548254 288650259 338001766 86961389 148055693 423743711 911411969 221154504 977253269 305075597 720538342 500961087 740703072 541969044 309023575 603751523 512103695 267628009 981956716 538467475 513383260 797383278 387171384 627659325 749417287 662301488 937221717 528610943 293077518 139784568 868745334 328631716 875035823 667238356 361012577 220002420 257614402 702228828 100976719 721966066 908800294 110906967 436535902 955492003 964453592 304846463 947440012 438052967 125490929 153367476 901407008 577036604 459609635 720449093 67531597 372138265 771432781 651548412 952266255 59484704 793545379 958901024 649074176 633352522 984778532 16940589 23198652 301365038 239603293 855409507 891714982 189881902 605645695 46912116 393958592 987959619 719000817 234446108 402684626 77715893 435218595 481583499 850784506 463822615 463440429 406268466 872492637 98888217 181644182 299337780 293225919 776842759 210264520 688913628 104800292 762474251 798142911 129935956 691001710 175930071 513432535 85158321 794980148 876498474 290599202 619113284 799706863 235109605 74563152 484626386 506361567 850317772 836357934 669771857 49419118 748684169 372362481 28831456 483142602 640225093 626742817 900791959 470262985 472274643 89666578 761019010 656472973 787013326 72976945 347166513 681169968 265870598 744008034 74897193 151887821 453689633 684880753 547670824 317734769 241351778 255490556 50243644 158703347 555374722 448283821 373468465 442756646 956022983 631827104 492739729 247058812 608654319 283238350 806704325 527988868 150238727 760584056 630690572 366210836 612221781 573300105 418762206 477562991 660811758 595444278 587969841 378797903 169175929 936782821 351381481 96706043 49385929 960428207 270786637 678353982 946886713 303629936 241880084 647442296 396072872 201672088 293482059 459513831 17027929 946226351 386153877 319278349 398318842 338235928 209962118 958305840 163544216 464616245 638852016 513810651 639743432 123290873 796918896 373980654 653881544 601954252 581346506 464519480 186584493 453473639 67399731 414274969 275890960 736018683 389614559 751279279 928436094 198096269 352616602 904853596 490833361 437389596 36042170 218805674 66000148 170222629 960349079 571384292 502284454 362545194 772245003 795549893 767408178 496347607 210890489 9116593 919417713 379519422 134635491 518439462 946692067 932472246 670776141 109531996 831667253 743162197 218814754 438798097 610059961 763225322 219416091 749036280 296832057 122261948 659475249 662002831 523088686 365370004 804321044 575276363 256165107 472691705 802345136 288644501 431539067 683331960 18778758 762227886 657530533 837161024 937737625 255451656 27126446 18856948 798343645 628700966 993718479 578026429 560566729 225237791 637753308 809070545 445370532 203218843 315757795 904668432 173592108 621133693 436328130 640689533 167744398 858183287 626461578 238857263 500105270 708102311 119962476 943612605 489754624 299784970 928480814 545694376 305315261 491505623 537656279 606319547 539896042 683167432 790466205 943375734 302493741 649265633 970587112 825333521 807285170 186182884 147577050 788797454 737898584 359572523 932938001 533895892 734228170 845353731 799176110 704575616 113151263 686042967 720000730 780445525 922723526 232080266 627826276 217159869 792818820 637335275 234686750 233484732 246657486 809618125 535202015 974040048 99461203 540715858 128218843 680943650 918378076 747748147 277120013 359642002 611915283 6434897 415161124 486889238 576461893 836348590 167588360 907492482 330431329 31705565 620701935 379478281 891401235 992372724 54951580 836942327 755351684 433641446 438068034 304894273 65769245 799280320 76457037 567160996 248674350 69324844 747184905 741084388 430435705 481660558 35045780 181576360 262292428 996300494 895889545 398169474 200770999 439842555 224915533 715461355 989289980 523058295 603298763 936310706 809992754 636931164 572900455 304875160 140159915 511747021 223876458 393416268 207298970 699777667 466743347 812744138 51877466 607414806 830519249 587499657 130138064 631863948 661518010 973064778 211905113 733408515 401998900 903882770 865006105 567100911 257426236 476914762 181815728 220696986 234444647 590009640 332755355 905124827 342059676 950024531 298697093 224824345 260148176 861996331 56008263 478321670 41336278 464673749 42100320 72896285 739857250 639374616 954163377 865936299 589913005 829757631 585260037 343539145 962354764 184587700 920750954 104660991 820586587 736162273 341267125 508953257 674247517 487106263 720320176 238451625 869391777 877256064 65755372 602513045 145974607 689133035 829023552 678660217 965471060 229715095 968739584 314080184 897470220 274494750 501722553 656904361 783955612 591019635 919863900 658206655 100651295 410422983 559046988 551605612 492578732 164644982 225530832 637088611 308606355 981361220 499199752 901136669 163117334 779925806 64495381 944569057 549611729 125698846 37026334 51929753 915913693 566963306 695127073 590601987 47592693 799822899 759559501 290549694 136882367 222605838 795038158 729366690 306520726 231139044 285977863 634371483 852830144 264893616 668395245 434554101 160017358 299140561 298578459 735423163 382940399 947135803 706829834 621582726 636686110 513391752 518508770 208042200 147592367 672176101 550309545 966340419 149288981 839816468 105912524 346854995 709727071 465195410 607801175 524547949 563771912 613510424 391233575 824202017 258752311 802293677 659491084 55287270 281084483 26051572 306324242 599327150 515822434 311896190 330050699 480406663 909003534 714897110 513638623 825688208 30112433 52287692 272991919 992206669 206524592 543610181 962978615 719808363 350054287 113654711 526145906 105321060 936520126 338519004 897403021 361868682 714485913 390137412 713923417 871557546 366703337 115943251 762091581 541008527 621315637 177284649 557374940 507499052 135417144 599846083 764288852 299836878 910233537 126625816 228775214 88600889 64636380 269284607 924713695 452259896 179994166 148093557 807099204 916973248 759923762 904868274 881280764 24378314 188176527 430283170 555902411 738346990 457677095 130552298 902601921 65479646 829624456 549757528 891351803 202038850 610126219 507993955 339385633 767980062 859606901 622046484 183308169 601372591 330478403 333039721 28671190 314471555 983846372 32076295 969526569 218403000 846196434 269260265 995047661 635579097 298167226 180896380 676604267 311900937 224472724 130158290 98128661 697503047 204235290 618554137 221930102 943320763 148263213 44808874 242527125 663096030 927244866 867564363 284772765 730359447 731852979 425664786 486959851 770933059 31426673 571079780 453557464 460527679 847438133 777722286 640198376 652506467 723038470 741100913 242154515 32043846 56088853 743669111 481641204 546306941 379453838 165504608 122525549 541401662 509002876 667741655 689658452 948747687 4571129 330641116 635684661 380589790 922994129 680185935 149944156 966325767 948188273 171364938 729654494 922852038 633688060 520433842 686713263 634904925 391802435 35275094 623138286 203862194 649860678 240349089 464664271 42642094 117136514 548487719 635029846 712569799 830929454 449835069 668454789 127578736 241380445 316355007 308987401 875871779 69590392 672053773 736555983 312788364 568528511 10504788 406036537 9349828 429610810 471672129 693469578 648514939 653683628 693231057 324426382 647529609 39601019 179633646 731096213 253537126 997285559 490532637 170215895 381812417 188603619 894166663 615772496 40481635 643624652 590246686 287874298 916379433 868390787 959118657 130029860 850066448 977499320 451857832 558946556 499734166 859588290 197736903 194021461 621443041 856224270 893202885 421713699 464260744 9799016 693604314 1232463 28265439 815483699 467679162 816431141 280866645 390376694 447344793 158438152 922014602 77406022 205546735 503948618 774927906 439871174 379130558 490385708 215069128 194999023 66524929 823431568 698076535 780300761 964666708 475661187 214336262 808879242 97358992 369418051 480518722 284889696 19377191 601887413 167640540 872404048 283940419 152605857 733927010 354198703 924590221 700014587 483284952 392901517 892492818 337733236 258655730 477590315 650086473 951469799 554708436 954466545 154261753 170911443 629188666 286407750 880215190 502932263 246499968 999667592 588591041 527765643 893230446 238930241 768413820 357024482 886596730 124581463 249394305 251734215 254653135 47936389 787828868 536449360 998962701 840069047 398791687 942351755 535675304 202838235 757596532 128730616 958035519 54189440 876627098 983893117 280561385 291856006 123837882 783410275 621194689 157694598 640524293 752270308 482684707 225519178 388131391 560225595 412229412 631812641 914499447 272458647 298011798 63220606 803553826 76197714 638333503 307884160 749461127 695751133 925875138 57036176 150901471 646027506 84824126 946114545 849452092 370256631 772305621 926380906 651558257 236570771 324635738 216335353 608466839 597082777 888088336 464899717 296120857 59122070 880508886 641522108 840847577 710112511 281255103 798797344 633379588 873325843 248194937 672421268 365994549 749087426 354383490 100697828 488090553 33464217 247664376 247815017 243444740 125365227 842740775 386053322 482312404 880405332 604669386 948921757 394883577 353865469 826364513 548455789 480512827 604155341 539229936 913277887 450247486 356370766 562458705 46924053 190312139 729852041 790326572 729627478 412892417 623622373 597481443 121868958 66618377 906079473 593928989 651733116 32223012 744347138 254374748 404143453 869225393 194332872 443222327 669723712 191027589 92407184 599822781 708039685 540157103 5355166 937261186 311873718 358847906 462711850 167078778 211017075 238608741 557762418 631240056 16754204 611437908 990062067 617474829 419224088 137013015 933792860 323422143 882605959 320403776 866853000 555403366 261536833 97124195 337569147 479712129 688346517 223127383 692139548 697099388 211602228 798391909 363301236 73219117 81146528 175616689 623516851 107077262 449404759 488777686 201029608 477456458 288207554 843192532 683755167 532616257 562579563 902833722 425220239 305471529 577715726 262565104 8848230 649719589 333104849 87044675 325991384 705059998 188320965 750136842 580796138 967244919 949523000 313573361 77101187 91662377 584820883 165408467 348058374 646939408 520682907 793597751 11225084 861586068 724183909 255528657 588145090 584491621 677692413 988167600 771166456 227341991 246104896 55145751 806419275 778234942 872648714 631942880 55382614 661392015 66508188 732673564 395921986 403232306 827453401 96287521 635643395 736752957 591200611 865930785 627674687 614244532 272417619 249557904 965447245 580499928 49309339 930827711 784174300 781644768 750439638 288954786 522112489 961850204 111373832 158292315 626823093 50203124 134760264 266725698 361045997 409731777 481109187 872310981 226834161 123760271 976778121 794650248 696935357 830476060 53869572 366188139 865276213 812220367 682805280 739203996 152797969 335314889 693501779 788438907 958242666 160340034 318208226 902848853 819135330 592803542 548595791 119104708 708193848 383874464 548619236 130806602 24349698 730480054 432072970 970056783 22698938 445371261 720960506 336870859 998652940 820427542 453448738 596034564 995067618 387506355 772988349 512529526 308744291 604631063 147238704 91095635 333410251 553816743 524873682 539288585 935523910 653560788 934593066 649966905 298372748 260817261 729395035 362308927 740763432 906436397 492066612 105635770 734261080 72841400 355752110 851546330 928597712 963188833 500203294 849686271 453733221 690391843 267177465 85015937 102653161 829415970 166192760 627892180 643281422 388881557 163883323 300291426 609281129 148635100 547670067 190249458 467639979 176409420 884975371 165823247 673310001 366181366 324020188 467544027 925633286 105829061 548850795 977259183 510307308 585443519 970250996 695063951 716404003 919411754 746907474 352414633 863617189 709591123 205993908 893532958 739825506 99561831 525081629 289508020 533372405 229988726 313115277 572414465 748888708 263959289 195960598 329550269 95711086 119298759 305608450 521847325 482448425 161519497 724675071 10454889 173339142 460603747 784863418 701481532 592299487 877496190 280488585 640894899 134290562 521789149 795809119 752733228 542020025 632290365 3366880 862730532 236249280 29728168 285967569 789473691 781902023 414754694 787638186 929299436 591997544 689061810 943050458 866397692 574285184 510923362 742931850 782986360 960228501 982745657 473566824 319950525 255785343 158993824 256854890 32382283 739651421 153977822 521890527 428018685 197075733 83051268 503737264 744178984 515140892 390799173 822451457 280299301 306832547 666775888 764349609 215617179 356164748 73866176 571807166 659817020 323002479 180200899 921526278 462431922 73782748 568269956 262456478 630301934 507537409 224505368 240302150 3656423 548193571 702429058 585983403 76202448 243766345 354888416 811537418 530764814 179945582 986827382 286036515 525130386 661885981 438928408 457699797 449628579 658838424 800485649 224278766 266579659 697272256 631616367 196715017 929574652 459761674 581811836 729210769 302756214 905534707 533178864 74366168 116943619 312829236 632731060 353420349 452880965 721760264 777307916 170938502 526045156 890868096 499193057 285286265 592670813 182471611 978143751 102544369 818804534 534255726 68096875 114240764 239131519 194363109 928185015 611033875 703560365 508059823 757568716 735616993 943617029 512525506 39206519 244991980 58845744 179904870 454156355 410775763 319724158 981583455 521989998 840386865 770084617 213083225 488297179 401879285 70178913 423273563 471157991 955183675 945982350 617565506 920363784 994738696 539856308 602207720 928339087 800109046 121996024 577584249 8472885 577778337 501019537 889321771 913667900 863973259 745419039 914678458 704391341 594086441 3687608 224910937 215553296 829922143 546555275 673503194 114068500 908427587 559391202 260636232 735656644 827296953 406012190 780228530 440649128 885288133 394627303 772181897 255128922 677947302 511247461 455446874 981586013 786545788 328036787 735609280 345004769 288202556 246762272 871140300 921385500 851814305 769247920 37314047 276822460 864008426 642747428 893761301 475943100 949074517 17252007 838679735 223253274 924301589 767430857 611746505 139041066 648605168 213642730 885353001 354927818 640749231 637963238 369890949 947471590 654198150 114140810 651633811 98605727 467061483 884928235 890300956 443619264 319726008 845298348 790679658 714099475 467711518 68814282 10313328 613178652 753177764 339623776 869566536 897327340 970823062 449221363 25396513 524875555 680029379 573655735 489234627 468192584 815127031 153170939 248896764 906928069 928276220 473768743 262707091 185615377 324327185 509225132 486918800 759269684 52865442 177687095 516113598 682771284 178651799 304384740 16014031 659097633 41790895 329946463 975012819 334565616 552720814 138245234 197596118 24369511 904371931 534871406 412991339 723318893 239988615 910441806 344731219 949762677 132360410 279070294 757271933 587318807 334364034 219365249 376675836 978654582 358660962 673091143 319489720 226078687 692793229 710939914 500047335 503145336 696759023 989191615 982755625 275812359 519858934 830412013 376110837 273170189 69690544 672938380 871615850 352547997 126220113 27649504 137287224 426393326 78289566 833198005 852111853 824494174 509314926 239073945 324166715 789714365 594458089 373361418 152568691 253434372 128876142 365193335 379875627 9032540 731029786 239947822 88078667 508461251 855939815 928103765 947993372 612526526 827268647 393019230 145505037 978735708 774147748 840417347 481496467 664270142 162999477 454034739 878224111 746435905 146612881 170806739 21958524 970395797 410070574 72648056 413746951 841368860 118983303 641147895 839826249 417698825 356506896 318301493 57084089 109723680 533999790 578157855 934855402 151631725 360529876 277517293 900989485 55580526 214393097 461598238 287396874 562839413 936407769 953888818 140537696 950330718 857845833 996180890 937506626 676331932 512579236 878178895 276238914 751439211 34942020 248531018 563420302 193947230 996528015 348855825 942183485 341181866 474281408 769805328 84437955 737691700 662021488 359878038 831569920 801793840 908985103 955033747 952585311 156249672 310650904 219084140 510434645 718407310 315817409 317984701 835652920 571027476 53527947 190656361 815534608 612559257 81414077 906302014 13860402 84157217 961603600 238851544 894351428 678347014 372618570 181156155 437464104 132243663 994215719 267658111 23723960 551935314 653304972 229883053 108849123 81621117 919464401 752853183 553792412 461510130 367504441 830471511 823522364 267269577 357731510 444826383 861835444 829614916 322575993 427747295 768235736 543181095 933703016 288267825 899111968 626235176 228672206 296468369 360268652 457916899 569709281 825482437 603479999 906546634 415748408 79379386 692884177 779859242 843002909 391619728 537828652 187902853 216072968 297536916 933663351 987897783 418250003 934887413 776361517 812954804 356870357 401266226 411186018 360654887 601938694 992220259 534743367 839031328 919734713 432391557 518018337 644315390 363159276 361079349 801583995 923813314 554940737 96779578 570730281 587766459 880635752 395258364 885660206 111382411 612768177 595794485 115055147 967129218 662769459 761847945 30188003 899942076 904997012 823694942 964774517 48025523 827562772 131298316 334954659 73625622 210465131 480420457 479330281 418870781 338178280 118575293 197172887 382290558 760232342 979897582 58407386 649058908 87328509 513134268 847579244 151533014 243855356 173234984 266758166 987142928 284812569 656116327 620192924 312551161 663741283 499536344 869782908 825248369 31830629 904603391 61061588 851436268 847772588 24732676 301798867 151221601 617249025 120748338 488034655 42179257 339195419 624394977 150421980 943852326 278832020 191887104 240029778 669301508 441241588 123697322 749766890 474761514 420537085 319501918 959908604 669715228 943587949 576060307 342705547 722298473 391535106 166374881 679359081 598419235 531908590 18850247 995252323 984135983 867807707 256459075 876086582 739726122 568466794 173717072 509640349 857519598 813276041 874106214 747288675 162410991 295962291 596609176 979245698 738349706 347331305 54782251 144838720 212548791 473913314 502531348 122133557 724412662 9366410 12507190 422014877 246073515 181459702 218280138 980265284 814774537 828095441 68219730 68669251 577326607 854467873 447883377 100895452 235762548 981545011 285054896 697696279 619551307 917029874 850142161 724525593 708389415 618356789 447853967 259638593 509763724 59670073 745875628 261566153 966833402 409089861 941564889 142056910 751564582 714679944 573533173 703044144 760240538 471628314 965231845 348681003 631371483 687264291 323469145 6201972 910759236 236368027 714781930 67207082 695769237 926778711 108023327 486156988 697796949 654126948 805217556 504518080 797968252 59638113 184142982 719251215 357162477 485746357 109601220 99287001 597850940 480040230 1766415 626095441 955586609 988807822 423954372 208000418 609485948 518553293 122160090 804390864 972983634 625224710 886127827 979892582 862251846 320250222 446869186 203983934 449157906 899333899 187472228 576507480 603414838 499905424 565012165 757472729 532733165 757772520 684021200 756209980 675020013 261282113 926293828 420591026 124587779 879125028 416214895 267526637 958261450 876587853 223768531 947330814 203892326 288720104 391673560 801420733 363862823 911571776 930732438 852194188 134197572 526340037 467025169 584742921 525020677 549401283 1415335 86611289 13008592 137997417 412730204 979325934 269973567 320304013 625807131 304093545 518536484 220048560 450386386 849776343 955660738 213818368 38944619 683099432 118434392 761855782 492493860 884187512 779375789 515654590 488407183 612869671 954806842 809727836 103887443 53172570 725252948 91498274 123262844 278950794 943752293 565522348 415587980 463332890 571537263 249805908 956126581 812805030 534175872 101266605 609054222 736108643 780703993 99067272 452425636 664418352 134800921 385569726 119639634 494797551 907787614 209087976 733205089 589917807 321307855 635035918 776578263 88798247 535292301 721085395 286409219 295104733 827428023 235039822 156403792 6469976 224649524 357369166 428538936 750877559 676017705 161564105 167598871 421385988 624824804 196954258 357700573 8729298 380390839 271860120 471240558 711078151 94248899 787775086 896695823 173923985 859188676 643059315 651902295 224653254 425686988 25335602 276323968 994007345 11814308 824734283 643592307 221033435 236425263 135603619 607938729 190273536 669465962 992909242 356915397 713887377 416656026 977705084 1902193 372386891 39516266 64477283 400246978 715516287 884743596 655071877 10932717 566228362 357631146 853034040 670826928 746426306 779532756 413799270 454575903 650145074 309634497 813856201 33050035 342644356 736569525 997804215 810982282 883736371 972574907 514477891 959650116 312608715 517584775 440552618 530870450 167470863 802737869 488989878 701908693 877310676 493067639 168913387 273845255 916225816 161405936 40379050 215816742 883313331 971047097 926602740 434983185 848268062 288937312 994173057 906559296 44384596 842797508 825453182 678858933 332660342 135509301 538913121 678604155 973393579 143058344 203780804 24960511 782590247 590709460 900285627 599596703 81811904 563001011 964849205 315342490 459436097 95121168 755060233 31269886 364009900 5379456 604199390 391190514 611391946 894485740 717408363 897333924 323147307 4033972 653011507 802238313 678765400 891666144 641571355 463035717 954281969 13008406 990821594 583438322 956517479 670369963 642162346 723950440 332717586 268135110 933842328 430825874 327199080 778717566 200492707 628224049 842297369 645009155 277605895 217529577 260979950 913007378 14775825 630418793 496703267 741743051 190474400 37520376 953776088 731330826 764015380 941653113 297879892 786599916 553510744 475174790 502847253 553516423 685475512 363119313 596950565 281013104 789547432 603711469 404768823 845242435 475771375 488566974 804537372 238322880 66270124 634434454 224536455 105708143 381661909 626495565 826449659 352219075 85419595 249092623 222535633 854381163 913876206 729144425 598418380 317748781 121332747 319174544 757267651 789409406 467563372 716117467 919424330 35236587 714215216 69093077 27850619 911810593 376844605 170404203 136484680 256098340 576045577 75003149 404148688 141749519 462320291 448528648 220089091 12454374 258629431 30019410 667259108 212042178 838321352 389526242 206584506 636622052 627330151 220198607 922970758 430336410 725512168 350646597 331698268 374805294 724825840 898788701 436311844 70588446 335713687 50732369 137831362 451148734 465781937 882472311 463887309 657338162 493262691 977392747 341938396 943278378 208394047 867792224 924076783 353499612 470076963 338736137 898539070 53099228 295149033 887385262 306683556 186259306 78339406 423242561 275082967 919987525 631321525 114178866 603533947 80012933 607930463 85169190 414599586 324610109 2025054 457200886 648384643 862534075 358751856 258729327 315097321 266694161 705999683 652724343 402784618 144286637 33122328 70325302 234827433 907357181 416341532 807819527 154940945 969951927 261715722 956729039 366450130 996688463 186455842 87355755 206661290 528226886 684979317 324227886 38641461 395041204 685013156 788333382 63814042 620319507 391033135 586145379 469321860 66960433 323658700 688049603 61149870 151576514 446609004 396199514 657114903 368751611 509572991 238137694 110758114 503795827 188665721 634882660 781311579 153186437 945205536 592413003 214719720 245169053 297271805 213506412 200525750 27560357 81593040 518631636 55448184 363943123 987464091 50105333 251345518 606833744 380716570 489591313 548121475 704790260 101881681 973792902 327308951 653692304 524006604 922183314 715867217 924407498 137445325 434944778 652564537 211690232 180461512 654648283 175268521 111038978 705789665 828839120 271364488 595856991 306865635 215969044 10044849 158919144 458180388 442858520 65598591 789026891 448621960 416069236 388991103 870092421 949014591 922442119 87756113 8822050 551554970 730190020 152641759 212222128 336526739 245176531 649485464 493078680 80634041 750968275 836336640 742409164 558061030 497547025 137847107 451439315 440313765 574581351 327501619 890317560 816669677 138065009 594320193 315280086 637223969 939342653 185934287 89303183 192483487 278037894 5795053 85050486 690166515 165665588 89126406 991069526 745542993 307582630 435984202 383981577 417202872 854417295 869155921 645844815 964784598 204281232 714005980 945544280 888632427 522130859 431778654 29999723 1854200 56031801 700262658 880253931 918064648 505970943 179076208 486344162 480713411 868372449 627906865 795248037 688106304 447784840 826111173 36751339 426523667 704379080 726497604 594138951 358305144 824523392 175493708 962550819 926456623 394886241 805790972 444822061 491806427 713642979 944707465 356809561 432263673 901180445 832005223 27486774 887312449 681420523 401028374 555250100 822289486 562265148 27526130 863681447 455380347 485518048 78424764 868804436 798190075 892667672 731764028 382305326 645185277 434202251 786948396 468693457 377921778 164230652 803224893 478285076 327664052 419747683 148272140 838033913 379729580 287814546 210561387 418372798 871259431 663183842 594046122 586489410 912543870 782149238 875945834 93956008 496944640 206592149 70820366 388359149 516486035 626063654 969166233 204808798 832700381 820337179 997088029 993000737 667753605 83542447 622671326 708491901 910907736 46588296 11880879 594367013 517388952 607508629 501152844 503645527 56720849 838429459 640492859 334789683 910783287 140976871 962696471 861675883 455592681 317718003 336828003 501276732 215507919 929764709 707018474 661415622 446189245 297842379 939115701 524501311 841329688 654538031 538985907 74032984 312007794 115266129 459857215 868735272 40388956 674878150 745116321 503888720 86867990 907530636 261217202 335220922 442243187 640869462 806601582 413536433 672507561 224472475 965717770 724373070 171516490 111089620 987868166 964860515 596119110 420132625 550563925 442524296 452885426 270270972 367459717 893938756 510010704 626380475 209698198 781800478 219573185 376705948 810710324 674678773 81578108 807750755 777273833 683153300 119771041 660878813 63370153 804539689 722877050 463170747 661728163 196267455 934426130 825216115 381072667 739032787 400175909 570623714 939163190 553708643 300287422 244266718 772548256 178560280 634008927 610267774 384358396 527988020 452810603 461097286 845160720 149608572 465395831 543851301 423743706 237409819 515834783 635544187 160900217 936387650 520166408 8081418 859625 23431454 11975887 550897288 382838315 999301348 72827243 117897126 178925863 104565567 263331432 182537233 872375248 288177250 598434213 158746456 203901732 222079873 589675031 177324565 465888327 247020127 472393194 249479931 977378223 647838398 876925881 510968744 154194653 574110340 926507292 51761333 317965800 961527973 49095315 540904138 162187087 686918576 754546785 927866821 345969847 56009031 168902329 757111872 961955420 955361208 55002756 80687875 935066528 163486745 155196728 494630870 435740414 49526960 366320689 894447905 168400747 560381297 609986289 541437502 147197701 856384394 696327892 976164553 775306780 488856213 438533603 460183224 583861035 702018288 591481100 725877606 455787922 483009175 580752275 316981549 693503515 571098175 355637993 686605115 54623134 719343786 328206080 601687336 456061507 688996782 910013990 808212293 818410651 300566896 441992518 101837048 731286513 120610268 77311269 98642582 857322590 52231577 295302687 18455029 405342951 587458178 972518449 838858858 150795949 962587126 355744721 525276002 682361469 315856664 209799822 271884523 665155489 378826176 218242465 738531850 802527553 119198597 97925546 725122458 850794257 686732825 386414553 49004799 711297894 971130157 683954824 538782754 493425569 448977526 163781925 192605921 836974124 871705839 75792538 266651615 899369856 116037103 537445379 655059079 862031626 990355925 832416890 618905482 308866298 998923722 271292315 101959405 258996306 145244288 142459591 323313976 501446605 849999300 228964297 202686174 345686688 70657283 92474546 909029406 16017436 620532048 862433909 32676536 570551491 719407338 233923200 20661838 375030934 859458917 580125175 562746365 855394471 265844321 706692895 634961405 659357956 528426700 672225731 945766283 170346148 746904558 446250028 983655016 726653509 992854064 263842855 236171765 186991592 236599428 870532306 124099347 90623541 34151581 857646571 718611597 65961598 887988535 776344088 105584985 454641006 466028127 373045241 954271839 910131807 202827829 613883695 112025576 437866270 511125208 482649418 865515474 637476778 335162991 221597477 627715898 204330643 585228661 332284011 274380556 825004307 126549405 876987289 436714771 223854170 915377851 900271758 794929619 280771058 937982474 152229293 666966829 125564756 941734946 281568763 338927721 542620360 263467100 735073388 157303455 500535816 342405558 68701192 912342305 887351366 147700410 552789640 479161786 489774329 138419920 776013714 558575414 613217796 562432986 906324767 639496605 535601405 827785126 27807935 715174724 89625271 753001506 617187093 580669607 431712499 72962580 730251517 251086753 459981355 625609645 799710035 137720731 356075499 119995249 586870658 156450824 37906341 794355063 746245290 538124890 60768671 484582423 485985300 822138179 975854311 399525619 889162832 483032802 892498305 982134469 12998128 346480157 349713616 202046791 991814986 502067893 464698973 745064513 234861026 540832834 856462658 250741371 196641814 127907272 38767547 476859071 849224980 519265328 129766065 207393423 904362858 752752968 81982613 528239135 933804946 788211723 270756513 391837130 223040805 95447259 454822639 245043412 884636032 358729448 281228220 674019698 311466830 875303486 195607819 647867509 351472298 395524774 507132313 798076283 736570838 691636847 346576741 969912860 670422915 91583235 461607961 116837225 330307354 707667782 766065035 580534141 957972932 897677894 749069500 114142467 844655781 609854413 842077740 420729022 472908913 422030988 348830147 513556484 745544532 604260208 624182922 234043366 226431627 417506803 720626580 255078137 303625491 187792935 469854657 468644659 796424628 483541210 651009145 104642595 39906312 164810754 603923371 487918086 464828504 322389423 100305803 729646424 815318971 860842733 557136992 881321863 284741127 121234736 727724466 94509450 657152821 179747729 191268239 374958270 487648978 804370704 202466996 9146194 683911826 298581855 780133068 650240616 721746564 456102636 781629165 859743746 531350117 82304160 874799353 170359355 59804450 110292923 235180488 169322626 281838793 358875207 220976616 10192245 211624830 931890911 964861132 952476637 861681519 856287997 344033820 203908380 63096957 441613605 388501836 29437969 768739525 441775083 968648671 767257631 213675721 186925583 568132827 447829088 350631550 457597177 436246198 103580056 100895082 31464613 380703739 8855635 720048184 537447855 691728342 433365606 661898840 665717585 943613708 956325126 116065759 131064248 12369735 645315438 193056371 473097343 438717944 954826671 876030710 547088078 414601564 264677127 169718087 142914769 457903827 579536961 106401179 324652938 785408545 962945810 646842528 720078426 486433483 887362207 254454465 539817020 500699247 814263524 391827721 721806905 528112912 986100888 511006402 464733229 556831402 974661440 705040545 503638324 845936858 862503145 27078381 166500306 311885288 18675746 20570780 630536634 940442940 47051412 863767700 757496726 874306051 712571746 203533964 415327528 168799657 749473466 591121659 86412243 266495907 140464659 233326727 803975834 476726947 885858875 143996537 516814477 731419599 57733547 359575774 652714219 96959961 965994254 911505246 816260146 79420747 217747095 526628605 928234170 677401754 979918712 129884350 762063442 669073417 43730703 449298934 271891990 46965340 173406912 245809477 110123664 325359631 599221305 343657587 377801835 302171673 626522901 721007333 495659156 15779895 264944509 958019794 988856355 32628834 173977003 504714827 176907426 433052785 992158472 956292254 297087679 630527841 869097825 929818539 153673248 878665307 623807186 333864420 184754184 146613017 128601402 403428734 352852371 95432141 289789835 942536004 965156741 927338067 110722228 327359087 411833500 262395960 981842269 549230852 522384208 770809819 948753155 877470 195530642 617343881 837646438 927357518 918903460 301008011 967630732 120028685 329487438 236205937 541210208 279753929 594638616 29790464 612789624 22277808 26725331 128601093 566335616 84920891 859005542 967409234 460226101 703705111 826401138 841882536 484923638 860878093 693897048 871659028 837572285 816824758 881301618 338395486 856833314 692235908 34672701 383121963 236756657 736272179 138947557 862914274 106943828 56214847 786846581 950884346 344559735 733909926 305670603 89078800 643845203 414229425 927963795 339114726 866292629 567672612 242459542 531870328 149521648 859021947 186253462 952355851 154912797 99204088 222595484 198617 189478253 221067509 908421516 984785794 970862889 296838811 973979404 611853591 251349291 65773791 213384799 112038184 980575556 726732296 434592515 409081541 672126220 918375818 580372816 679799766 610374768 584961034 122130301 385019289 787436491 294584584 245103203 144044046 454512349 501536661 685203500 627274065 391429039 612522659 855526031 119741024 428583652 756588457 654726484 691361476 247030969 981448263 25729954 409051636 262534915 72722742 342900394 663167913 414045370 642588640 863687874 563098624 181670607 795979013 791840724 986438745 92697594 698030711 777036422 919828350 20427363 892018678 357469896 166655662 507098711 917959014 820994097 275688443 983739203 67610041 78411977 389863794 158078059 686541022 209102922 222497916 742748589 508940071 185013798 864181733 188685373 519602336 460078862 901690541 283651592 651249446 817744126 224911377 850660031 114801423 434357711 88831074 60287308 667611375 142835588 598472594 190286964 209554727 762890509 47140396 945187263 144142488 814927866 323690123 971689078 41694254 789732433 866560136 669711519 770816977 665598176 620526637 992738844 879864041 684036265 784033373 565748700 307631496 758329841 541008106 22262626 668177375 400608660 582246783 805452680 144704664 646793618 527771003 688367907 440288979 486860262 875743116 737314823 299398043 441813894 743617391 639709487 986582911 941784331 489531135 301754199 862054552 760655884 732406023 442181689 932874553 487063386 795077900 871035043 284237788 172956659 55899992 216817633 501060384 514978370 95993900 568047406 968390648 603818616 54421827 202199421 338194266 836546333 251527140 654770625 519139694 109239263 542541205 85536517 993277103 551656542 318187679 612324301 420092832 364708439 665324141 708038576 581482490 147802569 535114076 647994352 15833198 553762234 261480085 872649988 433577706 875819094 430802931 199768897 181048372 365293380 119251737 199895560 584885277 540988131 250311540 429862163 491984487 70629011 681946407 507515582 509077136 984719888 222668231 43347134 809942413 681337931 814761683 960444598 575889989 140105362 559406152 930423643 451368405 554414791 493042985 684364770 200974344 503668309 46359968 801993992 520318181 192703973 497906079 217445742 728691062 304023497 895280011 986803707 966509529 43697167 305240701 855908588 430999698 878822177 523080553 460027500 926035725 938537471 234275602 976877247 94965465 945747745 432263342 319552174 59380100 784436182 29765029 422888761 60735117 352391800 526140071 240996517 315027344 611463974 502402130 174141545 815844302 196483007 632356501 423111260 976262038 387131034 969351778 411396913 226891646 281441519 900449908 367435992 923251193 571818387 526088479 877696617 732045861 301758763 899836539 83504759 54746539 751149775 335141883 446300445 996476182 228476065 43029382 413117921 529616691 268453034 650440492 627057023 635533910 544450196 4668608 429858763 264389693 540132058 790344230 811661900 950209922 106252266 475461056 504860352 39789558 153730082 637275893 88295414 628415505 242771486 686325472 447860826 134359293 431688423 351748864 665968831 883157852 855425536 497566774 385638673 536077020 176102371 299177300 4485806 598112220 138797070 668680188 714055195 979758050 959758049 43933651 309066239 585367291 193059749 533680842 315934505 61910642 296596502 424132400 219166192 889167606 564568515 452534609 509288740 401474200 964033176 52431455 666442131 153258213 746150359 846752017 290632491 218492758 372058929 270209626 89013887 189191374 195111821 732828756 530297889 51471910 94040510 333787898 976128012 948836919 405287284 190018637 262858181 516961892 597202225 164888142 13445806 694801182 831330777 169031645 832182735 937108296 876958237 842251837 532683988 951177333 617327066 574218609 825939934 968629765 584515425 785976631 702560255 171828528 19391753 725313 702440 289473516 137540021 64040467 637430390 949810046 19924191 777742522 277944373 783570947 117291212 278064834 322560589 339633162 609228091 680742734 861545556 880732446 758876664 425658084 577386587 632563566 144585246 63735821 815217941 980477943 784727812 588548837 621311902 670631883 699267196 98475680 404943662 187209962 115991673 218053490 746148637 281816880 400033416 327079937 396701755 932675701 959444174 89620267 19700038 118299665 854589445 358270394 209538722 771239542 944936732 668260073 482192433 398712048 561362988 410262498 811268427 911913123 991968278 376176114 605158171 419605142 617259078 243862365 490963602 995470323 58887340 659771703 108536858 842538063 69270488 722770518 31467896 777770779 350388925 7191550 161637614 40449118 231319492 936757043 904075493 586840661 941747924 849808129 811749004 924804797 150028998 791206436 433798971 230220381 574759828 482449134 641232038 356356735 641452095 157592830 552381535 328173102 63320998 772088665 290015258 237259644 301063888 857627775 704990472 732566922 609748498 327695994 704767188 967176708 358376705 938996206 558520925 646231347 691577022 971667367 934278310 829198608 850740786 419578950 16233842 377660561 358586658 100665769 915102039 169656417 922457226 507169995 578657939 277155514 762198219 795901533 739921310 810786678 414109555 115278713 623443208 155132650 158354271 667954092 765712142 735920226 206667051 844604426 602707323 387386495 491904301 596682808 338873959 945229558 513100824 245337124 127179313 8281378 392428126 548308917 124185606 473747341 79788846 757649510 187152471 351323522 500534328 963411161 367876519 137442460 674962797 307274506 4607049 168714147 501104853 330231543 786639441 271429359 755632519 242139319 953436052 388992375 249041803 382080690 398890365 450346994 238674683 312362353 899980311 566379953 324180978 322758557 60192654 687441500 51340918 396798748 417972985 247493210 265784344 586289289 829283945 897039068 43781458 912686392 178360607 974059333 432080760 239192713 140881080 782282693 650381960 54764344 83824902 998679056 261145877 681945633 880216805 139929443 362621175 986523950 998980554 792815396 606578589 273618707 98975249 368706362 585895216 673081517 667536571 499775742 589131305 928188884 602818164 952093645 434196709 286152053 555171808 367216060 770777541 149200252 609183321 35120067 55554492 306771518 824006450 348051039 179475782 366095606 646259689 838211504 144473368 366050837 6635210 658452277 294835215 75661058 517798858 239122456 868050147 499288986 612202990 225452900 236623164 398348506 727987193 855913883 918699138 665529396 524465788 928545837 2885034 207041469 570780589 479609182 610366817 618968286 829138729 741646148 530871326 950864689 104073390 341707018 316625424 776935736 773550876 100932050 181331667 662158287 170148500 254186698 454193189 503440204 97885390 228921191 402491622 496007175 546674801 674224247 912978581 710541011 781424011 142525030 347036672 768644432 230107571 197170687 976440801 887470904 809962905 77969042 702532011 742249777 211707544 294308544 882441061 951071218 81751119 77843016 798644683 737672306 528116649 579845895 690081580 857305863 284145124 830327152 481657184 740222421 130104847 280640724 210879848 602831077 118250847 880923830 704981196 688851656 51658308 709061406 748400595 170282302 134347140 858550016 839601313 857651871 486600965 609945408 817792761 568790298 946517256 743967007 300876042 462911655 601876828 531226828 801151732 354837073 296103129 5879283 300255009 100066803 539981867 426388961 936758536 359227006 311816496 692529039 430202402 456661568 903440489 904515785 809018736 183862841 381256321 840236677 74997016 307788340 593553604 460990384 203625948 113959961 864616260 82555749 277862263 306139413 462263827 769761694 257991692 43082528 276252550 946086630 777305091 348950978 179733620 340031823 715587178 737185140 993752524 24626999 632073076 838650260 429404592 904009588 993816199 85025237 294644597 928821652 200182451 625534335 264483683 687457548 294966565 375642226 416773132 621454221 275002222 462898737 437935163 322901158 941803769 412801428 629780890 273218879 937359178 335474742 90093951 796667646 481987281 916392654 337329693 858158535 758989126 873731911 495968598 735150205 631292615 785961561 982314526 33718405 129491089 911164270 536323060 313437366 700417803 167458292 887483003 138450294 740220211 548803328 909132439 105817285 267811524 916532690 978215942 513515196 700339909 20661396 565820667 922753188 799095989 606973848 775954089 170306125 442384827 414332403 686295897 971826477 801648318 368554975 507701925 278751206 674477435 78690799 545788325 965064684 500657969 640550116 625798751 608818041 393294062 7938861 771780752 927460597 335206922 276520807 127234918 404791863 260762347 527513960 336931625 993747130 840747896 263853248 987431667 804035211 147006706 978048620 425239464 825193323 749238858 48284389 892346148 157645268 793515807 467816185 54866475 246548862 713078433 62055325 531026949 957182546 552353032 519950564 144171621 199923769 482788527 33405407 59540354 101389549 189814520 550197414 41542275 84440181 350553225 309160082 692985808 182925021 647005311 869059169 942294951 968568183 320818166 602737212 833760633 307476727 79654035 829328876 159302239 681167771 778713338 591008507 815433198 685184606 855229951 456696372 113593914 772994366 704529216 838779690 559789084 266414552 478368162 657839768 195312745 456047732 203377951 395148514 584787639 243631961 986083490 155170012 698569511 724847374 285701590 585614573 334986279 413942519 694305611 992144776 26820872 115379521 837623811 917910639 428369334 231591967 724919072 591531542 100487818 54938734 448762271 22114574 474591266 350819835 675146161 68970229 550936782 365882308 196702065 42996372 822131980 549465789 366203968 772306095 17532545 106273514 504520574 515204740 954177427 244706900 697279502 276380029 521724938 129286587 893506611 509087054 343815243 271304243 655059933 766651170 342818435 430669783 843292013 197186071 304722066 817044552 613233965 557337975 255509249 812270472 301200895 502034090 322955037 243710906 252826983 613518986 196036965 450910314 1710290 965887742 270521300 298167287 477303141 185133742 354830921 472677360 37133353 934115065 636280586 889303787 428394895 409773843 776183110 203672864 475281830 227269630 718315004 649819762 508296164 732837597 527615691 420763785 636087442 649808652 116117898 143572718 546882329 523713340 155659366 127980303 855431950 276380038 614905052 652858480 608191255 302082359 310008203 158613600 39976610 752038630 162773284 379194182 523273838 966029455 688721299 8937635 224871180 255577146 867315645 292382044 875762918 776111050 127485140 370064762 453297259 884949593 921925072 702285194 501624832 652363554 365563408 174451684 462239363 146966932 199911404 305287917 803771048 302266368 766779145 884658076 688274395 569355972 306810502 307072276 908305547 310709989 22621322 573047937 624162609 450725684 474442798 512143589 220406434 972388580 414741657 250854072 170959066 900963692 438649589 843572451 650765045 861006962 799821541 396997788 851097415 301764962 452979039 639631091 250807901 150211130 131032913 764227819 613990058 661732486 640635670 961088722 720995727 213658359 306169776 822160177 389502890 788679 591763499 696353582 859520608 479255146 632065341 503907805 626028405 615828093 923642781 659444728 16634717 87030432 767403332 300592456 970146843 829140269 999712661 30324290 462743233 336454455 441224324 383120008 590126539 850784452 181097035 287377869 687699367 911823392 947972558 191902243 678666296 743744405 901813088 28659417 222865765 669529304 611986866 423913779 550977045 840997471 857928573 919822091 117164155 340564925 49100258 341599636 930829731 935010447 43314794 565843150 716122510 736619942 727494597 598622702 11982936 488956344 939110364 151725686 901565309 69878789 845108177 515049998 407366641 739548186 481009410 35794247 350029597 201461327 157558101 135864783 430233221 83097472 487282170 87660608 96500120 937907810 858464605 201904948 817868622 395899888 262197708 36128076 458446285 271973034 492849919 153417656 187927943 457309653 314966327 801284971 479516408 215643763 493550096 75285882 87766503 835413692 748666237 187512145 360058596 620419730 405992334 31730632 94942468 76750197 612417498 281668881 52152410 740285119 974922020 645106000 784347851 30515061 271961598 166646679 346492334 985123314 683101177 190850232 126687483 241213164 578301743 756860663 947272778 967769858 651544425 983566860 749691938 597476807 436667980 571822425 492883210 201344728 110293699 53851120 20597346 332620992 394412841 362465770 654358163 748673035 241402347 984080818 174019925 936475331 854350059 305025982 890860969 816924823 914411819 843151636 670006870 514405565 791183244 336935645 817943836 841607355 716064296 834032212 943487714 56870446 350309809 54411399 629233132 545465753 10907542 46850277 216295424 100660427 874418746 969837016 909114780 704531083 859778685 669974344 20471728 915417444 931497176 924374301 110194804 58906235 82712019 17936497 634218682 873509859 873707252 967041584 889274644 799823505 614076887 20286596 636422570 885907868 84214300 604692501 48823657 321365048 269178913 353064719 519278199 890287515 397709399 125019968 47551470 323638701 711104432 557255193 398872149 360095134 34616103 359294803 476532925 865851872 69831467 797734440 304394587 475624375 324875240 55015934 205604951 519446571 517809490 577894649 609790819 778218482 222738786 531294162 585738930 238574147 449870916 463690091 294128866 479457357 567007736 841840400 88455996 690628443 968085573 644380935 255386717 951861362 430975641 718009962 496773120 255094152 258078198 458825272 983082668 598682333 771844356 190944827 526963293 375698550 691485858 784309060 134233724 769879452 271466151 858487468 130698781 878197106 289906008 999396559 937834755 826010741 171807539 433016176 500362525 646557315 835684222 843435151 941377714 841837893 453275692 832279372 198864269 184736630 477173122 773006447 450401701 249697423 323579065 63045054 168437836 427306507 984629828 652030625 307419155 102234845 751526443 100544562 785985019 702110410 45185923 982395249 98476768 868078570 670849527 395270615 638889201 365767604 588485116 696285096 34930405 647769031 129509293 772298678 241259333 374241655 567290228 167137773 462841825 646045615 836621153 52682311 590681038 563949995 656975652 365760148 108384478 970000571 109376580 607609495 200425718 785824137 443644205 398123632 287218571 30473916 996111348 19364112 241794569 173670468 624139029 103328290 573982592 391734359 526797193 953793298 66731754 631789171 269479411 91920623 935910806 763854911 138046849 706678923 568831896 530211 949056795 502176520 948674890 752703208 622239751 451105248 617187552 31080246 686438866 158236194 830820149 310028630 873001957 344441738 434552613 540896511 268706697 85046541 413939825 767256704 268435435 862490448 369134616 457100229 591893506 194032529 410601303 189098164 348620798 540458534 198525231 403967481 569205227 843526702 266229582 426205964 368480084 338234038 70993427 465307007 189693599 300830249 977267749 8718448 241351499 729401835 225130914 929208923 26089393 104539595 670413039 544727365 473924335 798171122 508655585 711997948 268566683 556656408 524399205 464274659 159867091 624831463 984925107 661528106 602067909 110116584 850468536 69424622 936125030 550399638 151967703 668897805 778198653 886525568 6041998 364761830 21239847 526566810 857082488 919821718 228927291 792722039 337838015 964084851 466921212 191361704 383458001 488972749 165244184 278862597 874337828 380653235 20715899 362408693 245509148 679975469 302097912 274655900 925329521 746107870 658391788 644930686 360398733 99643947 211562025 404262271 914112875 285976951 925790992 770457181 120128315 321062600 98899527 117588487 912844126 272890239 256188039 432517606 26088723 65773060 237835573 523062786 859505036 918508904 793185049 633001260 693317752 370056501 642626939 762865582 124870460 208663993 51216032 120661124 19428718 289737321 250450956 748364165 740963917 115471504 578527085 657514000 835231595 687479168 74007069 823065024 1800101 320213469 538715732 207212538 165874437 59826252 928285303 193363193 268577714 258875308 993841556 377667266 496647330 706840121 17420239 516889594 779858704 447594412 904682372 391691688 640551101 241563140 708006174 53216985 498075921 348157027 556538889 152609994 170886127 135953334 59269347 411658014 549689742 56981694 869960598 801144305 705347807 808457346 767108188 846339678 310122011 441693015 701167793 121498549 609997341 844909104 762904761 653093967 441748909 83645238 501321211 903377686 813793766 299303993 520615955 774826557 553678378 258219704 617174989 184524311 440648031 479974282 138628487 572822538 296193320 186821848 80864054 497907703 138952526 450443039 892545440 624170110 510115149 456643984 889598648 569245347 969528362 182441721 655907315 564035981 234001788 546480050 907030623 58884693 944489384 132183817 375863009 138618729 705482802 554097718 160305159 822314167 945081642 226747209 979576365 894818874 677220013 455868681 889588274 318229652 103755790 171772808 973036529 976856164 466217666 704542488 459653679 450141534 513927917 840648707 183009764 430148509 859044843 152953792 601000887 549045399 991981208 238361519 139163473 102654255 517609032 607214946 688887050 246600405 46996572 748061470 6326420 283664424 881377621 993629111 454586477 298711529 856507179 112415931 787152876 178369094 110799052 158487997 510812078 494589271 613787451 124958293 678203114 975367957 814922044 425393673 238204652 696250776 536237895 255728235 503334366 172661965 526112463 81706233 107125310 207834582 812598645 979855503 470443988 203775923 454479913 47423504 712405906 590099760 522067141 888225094 271831746 545719401 52798628 497407234 914287525 500840124 60009719 4215721 736052696 656176281 324983476 80696459 275516952 771605137 213459624 69527750 212184262 891439793 773761412 503640297 633067007 832154635 419318584 79837550 446178569 452104224 948127540 756332459 224819737 799069449 884026602 756016223 601677691 353895632 275694505 645565325 425497511 945402941 670508196 440491343 754313563 31718141 596940628 448637682 678025231 381459799 789818563 666289123 637471646 675279995 940547356 649923519 642741313 703169136 855614179 47770625 280369531 155633529 733728290 385675784 937030965 482956603 390437961 781877109 108005344 786305900 328113460 417679495 739221317 339123039 241407381 801711274 539816578 933052363 283179556 670556452 470614161 454743346 706564171 827566487 145441087 798372768 240189152 47133140 113076126 523582237 977861776 3425620 342520990 210616981 908054889 917678038 270840408 473224188 897791576 361916081 30661087 863281742 759903470 399432996 177925039 567863889 732963510 525118418 906034415 90722747 319914217 907325705 386237480 937294787 356719599 131652209 376868307 175419787 557261954 635762779 71422758 65129977 500826056 88283839 771955770 295254606 311735068 551029325 709371414 982653731 912757216 721985932 32741410 741634412 704909952 443455000 424754451 86460485 649552762 569491873 503319811 203708716 772734176 667054927 948430084 853745258 986072885 878407376 736693784 891123308 865430735 998335634 883716774 216623604 562823199 850565599 180031116 281849772 638735343 671539469 982002101 205392054 350153160 309966092 234951470 669044056 531207710 72256750 903908207 827437191 714385060 904450140 463790587 383322738 839991795 477345397 817448652 969463706 458148377 390890624 544021146 740507173 20126832 683936875 422868700 585187082 589086761 398063152 246563440 789517436 217995132 886458925 724617554 915179369 977078018 915708642 475218257 246974919 542539334 939744015 605960969 459930694 733689761 405123793 607072650 614477296 544490353 534449849 271791447 926571853 949570137 148211090 97705653 22163681 967746191 664022006 652730841 49002740 477384507 998311112 274026034 705200302 171973846 29796873 498737225 826403091 212099961 397215437 336626108 587113023 473998645 346315027 931004947 586912753 916297110 469135444 160545416 739965172 412516893 260950947 649571530 234245955 278569347 1000290 238657017 70932340 882529371 622742653 420343720 268447485 94766978 579770540 357392153 446503084 293001384 153329094 150424074 54496454 291754038 55710284 937520093 441634059 760888231 628062465 67500046 311431813 503541455 264783905 676034580 570804498 766684191 34131536 820876030 700352787 279370498 322297574 652336419 184629981 357684735 109454443 639998574 202451627 159162585 942343626 953712493 207511691 67872066 848006124 856916733 107945414 20888514 246822894 917417620 983722984 981328080 268912246 251325907 61355596 125019423 26561207 462621142 484483620 727823458 596675919 415787980 979089797 801005231 379550250 985636069 835428139 397346702 970756899 664476757 595307662 682477984 324537179 737539433 593652131 840422919 171046061 449567414 745924889 684273532 131488043 516769115 787733508 971415121 754906092 697267420 233831410 340398415 320481977 401643981 289261426 314065852 15499227 651214803 276792480 681411182 424184452 43181274 233206110 302023555 271070520 297343826 250929729 70090340 125367366 984416973 654598258 333266623 241404730 873784891 153768697 871691599 939218491 471921092 233882184 670474968 860362148 280139595 674047245 369975780 877445447 452766954 394272300 569331514 725649906 360840731 606907578 832053157 923230129 519806088 816369086 208762060 62981269 375250845 882184561 905879355 352989511 335772160 377044893 611341631 203822595 620347808 132692619 426185361 536968605 221508473 709825648 851303940 204607967 898816685 473705932 687627852 363665324 714908552 834422413 611239888 492395194 990003499 827298517 414675745 958400084 553218199 159197754 883011699 608796895 593506438 714915671 499254361 848939172 176666828 402899843 214244794 833199325 363555810 234326189 456907567 456617046 73790700 405519283 786400111 713230239 856251562 226149342 335395981 261517694 552932242 123469856 738304121 809006489 80629174 830611840 710513427 898928187 319557875 528614747 339046180 3325013 511711815 639408071 57363777 446905550 691067646 289846752 530433964 770203824 99825755 807009284 307154065 640529115 539327141 433759312 300266843 104587152 521887559 810343575 824505442 774178644 213781129 690407997 649405886 429200607 875633849 901173364 225754737 826542176 765432241 378083858 292443026 15063219 637824346 498836435 299083446 790398292 334931896 361071739 992676021 745005687 657252186 586954220 102665907 911520166 690319542 240046272 700285407 914333389 857545769 909673808 91729457 181791015 81142264 227705929 387354149 330854964 599701278 172925553 307841223 981938469 839297327 276856760 660902756 506793217 203348597 700709100 143280012 961233746 697355023 873348987 577666241 822190178 96773753 31574085 128637842 883378029 528452975 730573889 31540149 384413457 448619131 609755795 768285366 565741855 316509001 56800256 39961095 68199013 79825099 723032771 608094779 262814504 234098970 437625608 36299136 734894932 898520265 986585761 119317706 57124038 831938603 333005227 435127727 95684671 807923643 61798792 16663648 93804444 176903551 717146101 629374970 989911381 480872601 382219512 928732607 37795151 215987570 683704104 968365140 924926037 320524919 579055744 141281834 720772375 687858055 696969227 499071258 327880297 942264102 475239096 910294335 279875637 981496747 293223345 463703827 147903249 596863795 147695330 713420626 173752773 770926129 360498457 843298726 482202938 853476898 642453088 43463803 28837601 426193247 880497400 580701892 896845870 650008561 16109780 610317647 833728194 8806100 293209214 404099805 389766570 382219845 6280804 74381994 122046922 286454621 911416141 678510063 968827165 954196137 689030913 830835423 668368975 38333176 550407665 101357502 465251431 224463282 15120606 27347815 529912112 358670744 147200987 817296035 62253710 843961617 421629359 281752900 599162044 652054265 955170195 554535553 986805848 30921678 888485521 758089042 49755209 433718698 36356170 550908502 11813738 485548229 207773943 25677356 43735431 259906812 928881841 342412132 86015554 931114099 622091002 744221563 403932611 359716538 724862206 728330183 145423331 67398983 147060636 828162511 679172013 358199467 19233062 802117860 273586365 924958738 326257092 606949179 392338911 179694143 595389514 727566870 309623922 449149737 829690135 28652751 404188314 370027915 604044355 828993680 772509896 553313851 460893780 446262243 879043240 905513035 789177175 89218649 411463878 959142354 418807497 607072963 357962137 492122032 601008861 746479685 201893846 60148957 755842983 773293876 213752139 993594703 34321624 735711907 863744562 999178113 292548790 520928577 32320084 308437716 414628911 536491058 885927502 70762254 194392635 204354175 739458060 772894550 697765135 857567241 602800625 199699596 204921515 929138517 647956469 679054675 595074878 828565884 330758485 274295923 892883245 251602574 915797156 99190656 811960977 567364994 424538810 840779797 333838248 851295393 722796375 789261547 588507208 521068585 478050721 575983477 911847473 342712162 773442661 758160709 699097314 596723788 672207420 569819822 3159885 907120254 10041075 183118563 544401589 581177387 264656080 629556150 407901381 585204563 614590561 541061979 683028898 220266623 263277048 444067741 969299297 840126741 692756883 604113336 434126352 156133601 691337267 837156679 402454028 759517438 988855186 259287233 993322790 310850399 983772574 293383663 978932079 988929271 447690228 39349361 489137984 689674929 262299350 548338909 642309162 512712610 970948461 691787883 18142090 402837399 739482404 326304063 708475810 594784165 702141200 114331963 902841716 763309940 795901942 207255951 186580490 4273371 73738561 371231162 685652507 499979049 326996426 827169604 228716651 707336745 375295118 623583552 544685585 837866533 946944415 198751078 943710430 696857712 212626046 572190156 910075232 385825797 274945146 157915165 833217774 301306135 126857695 482187072 284025319 674876821 450757437 748379501 762003823 965818711 406369217 466540783 122449578 972846054 659817720 308712081 485536226 837142061 432079570 283801856 732554636 811086769 968686131 886177032 684525393 469591002 506334205 168486865 324769358 921343927 221664999 269597240 426006974 409348598 311399294 783000134 28597501 595695523 308105313 597494775 250795537 772353183 899539105 452657710 990296694 966953819 169612385 272939580 722612379 409711725 413089197 209838246 498026777 141417114 391065253 142884730 357867413 816639221 647048886 530938701 686813710 457093939 714155954 433902365 184897568 310414833 178361795 163095093 487907021 900664985 648445876 308201784 748183055 542654723 171005671 588484687 182907520 922012202 714488889 972974024 566808797 749768996 120578062 100820030 280614610 451972077 439280036 133381141 498800050 767073335 645740878 430540505 792273881 494133759 610941854 267608259 805830857 6694397 681862342 399148559 809556760 229321539 554784112 608617061 571785319 716911591 882472683 872606867 429553853 516952886 760411993 753718442 880792582 646970653 466888095 186958627 228059906 278696682 833945770 85142022 363512634 770008149 368617464 480212092 74641168 967420161 390674666 772166982 621002969 180608924 396865014 845739828 921241207 71059576 804985893 655718458 839740935 498795047 69726069 587544538 636660742 747191418 706204659 777496332 700835108 384106813 161307785 860356284 307714837 425345665 800947642 639870771 49371884 339763644 961549553 104334250 816888091 270314405 541341370 974189346 112456380 534676993 536646366 241757911 429434363 44657422 500607565 483433005 438085671 48082138 705029060 643469548 88826403 727256631 970442288 929159506 456724113 193464377 576673649 561014460 258298667 69886234 373677541 99905955 651086314 237757732 285062097 218991617 53896536 368046295 24946095 750554126 598362971 879127960 891306815 607167926 953693807 645419479 735245196 331432102 848336133 210396023 515586007 956504081 421502932 435071025 441916358 705917747 296340009 664167209 66719351 947210636 169650623 341272469 142076810 134353947 648493113 862115874 780180618 771571575 845201428 450139174 622057847 442574775 613077916 702398052 693008935 110279099 81740785 402943315 723370118 65662837 209618558 781293732 560750353 857884771 957145826 676606017 701083820 314958133 354968728 122413371 522840786 675638330 155760096 698659472 750726966 815231302 894646204 655986837 599381067 495426803 81662951 384417338 425167378 438630282 815458153 517318877 703304583 375245129 705256847 156733410 148488182 136251163 850206156 984727649 14909952 223529720 18962693 623240046 795256693 858803022 416250472 268510394 497022623 93515026 394311532 942934629 107007467 692350506 893517048 446368858 512070399 669389464 710048635 91103144 702358743 531732674 413269461 641427696 284678138 877785852 295383158 809553559 38910267 421587433 516920584 471578166 368623315 889274286 711132773 448584575 266644061 231445628 428220112 891844485 601674014 272425558 733870555 513825068 916583281 79171811 885982345 86347904 45754051 832093031 195114128 353616057 672756746 982738719 299316152 83972609 570772107 325356408 203996562 2111854 638508068 559998714 139718849 19915129 349296499 671459798 658588012 384306017 974380704 40386233 266664475 886898511 781955825 61463337 280392452 962040885 9660900 782336881 563903711 321725223 250764029 393101904 831799763 463398801 860420152 521222562 25749470 705193170 907782741 878083755 981376987 208097416 854821494 436205622 709295215 446362726 93530381 956627449 550087382 950189774 127772294 434024720 79962415 80196376 953093941 816324466 923684384 296153199 576495954 288498422 390150992 312892564 732671754 355481954 192707208 954845063 510229093 522039936 172636382 396771105 991215861 28700475 381152365 472425096 241173798 587391685 40083975 905915286 608314132 746785148 416300689 63773920 26321028 295248077 378286904 149089919 778398000 774984229 948832221 864523898 37194971 630339249 493415186 975215304 735423837 379871611 243444582 450176637 271103509 952299165 459344174 455029678 99516927 887876561 975955021 15892435 621283732 14085698 171469152 542870517 361080951 359152704 360869079 885437841 680220288 851846981 640809688 519235228 515360257 671863602 871770794 110552453 256674704 32995928 98725487 652057963 948231347 470082361 521232167 281455499 996635072 556158073 765278504 501926137 646005485 577235494 691297515 724885414 231044878 571323592 519280115 273184512 723582647 450501241 635174340 829930538 756838964 281912551 266787263 377688371 255252859 91345129 20148295 959676661 565133119 646165575 313193375 155563179 793789197 143268185 138883552 790881952 221758661 875427697 95268029 989846675 306531778 408513741 890440103 688832914 70139871 761334271 57104388 415348302 117582048 535553354 678435347 513045683 794831324 474908315 489556890 58170397 288774970 72599901 739295851 320104764 107280027 46677491 897322985 768482763 360020558 152067197 342359953 745182290 494239667 474193915 97922845 984646309 784062613 813021069 900065643 93608159 620112921 927291673 88814250 664059558 406124163 383106202 507298397 868006742 866536563 288688172 985742051 550406589 82017621 660253477 518035639 884394835 639971705 541498076 789890204 467535161 268488085 110965745 127929609 734613685 269955718 149495714 587247101 842951310 908348728 957950726 796808373 991813449 553747413 180655071 549034466 386751351 860367234 84704677 988714186 785493005 207719904 196666237 12993278 561981718 82409185 653128463 82337410 489991595 860697696 239912967 668860163 224791386 351596429 257533998 139691350 397297361 709146704 469319663 46315864 73788306 831062896 918771233 201772024 797490225 714086873 548438290 979817741 85944161 630274993 201631320 429407393 532920264 497535756 123609125 998953658 995444342 200300473 815406494 841595495 259213574 181491332 742224612 838989654 598983251 439445805 123882699 529000312 24898878 192487772 850053627 856971167 943777121 712466447 892563563 517513832 36240609 192080584 574845330 789896355 77470584 678352830 12607763 641836423 960429671 88715908 312436679 972074351 334244681 319685855 124900955 229280392 978706162 417478552 152696227 410362768 831766042 836920347 917650886 671575279 669163758 254465404 288694646 704396107 111008357 973634554 94935284 983195117 900765274 675989191 429278776 561194283 913378342 230089872 662095959 288999055 809079610 638281134 715311529 242735386 972425073 401794142 963037950 135447443 42382462 488094788 68627922 743877874 587245682 619065400 695298438 115666249 656847422 525900864 30002950 500304844 554266350 825023068 223354179 280699187 353843354 862069913 322135246 92309030 42585799 865135200 687559461 865473166 736133800 6150997 55756703 900655174 465222950 444752949 249995622 908397214 253885669 224705959 136128254 570414508 687076570 600922886 499140545 133994956 517854652 636856698 970633183 659335715 393992825 691286710 10996782 601810233 418818191 24143144 704498543 81147835 627020457 757582126 256172938 167357081 300012016 873508168 287414789 407165304 349721553 789581210 743565233 707515825 768502264 691263104 758899929 332050266 167393778 31425011 859272318 759861416 790398447 692938657 862006829 185488604 427197148 337073440 780491690 786074524 24788052 46681486 816819054 621823003 526857324 646561114 84098713 413885184 975564214 322219165 234987564 489774003 856252394 218046992 733143187 959995380 548470478 435034472 217838362 371409823 892615171 304354918 527576297 428644456 190994924 417214557 848194606 263059981 615356022 249780630 988608976 710674026 727998070 899735440 227082666 111705243 898710015 277073984 879897458 377142798 200896054 732722807 9535509 985766616 661305961 340472537 542584694 567962154 814357161 742385867 288776506 275662129 688136537 674009729 289047830 338990837 858934969 165895210 94208320 638603567 219969632 628000080 735331564 447480024 793173244 47354874 686623188 307647870 891073196 451839985 291360011 894315801 172734258 150311817 924983911 309347258 191612571 182314345 404518828 252245027 818534914 490479840 318137500 323158986 454270399 578488025 103691479 507228965 846650105 18810797 754107341 49342275 159189855 112630615 180178609 7822701 213876039 670488735 219466480 764460367 324604370 739874443 631686575 638186391 985954747 440888135 700982666 500960749 968574244 728379631 724200982 336857019 545360002 846444027 450847733 303783368 538309190 968444145 473452749 957938281 913675604 87916523 173425703 363063284 790199102 815310641 36176264 25505953 918780990 65790870 778241773 865688287 17933693 924412551 252152821 740012813 560871632 851320148 119163446 631305230 884491789 329615657 60811280 569609947 631834190 842230067 515155789 421168522 78646504 737348065 148082652 266270753 101220675 856961124 354282065 704343376 426012196 132796913 549773071 586594100 663324463 280092788 560612046 990950226 16215562 967799489 886668774 537316404 99951414 284366761 317990765 604612791 425313226 686696270 214432689 867082911 684081389 854135536 747412299 736667553 185090061 496399370 869498362 742044164 518654782 516751519 254404650 876843136 273548744 963239191 286523003 714395931 356414812 79945580 45467280 147992149 564526999 908851588 707018130 241896562 554077678 501795478 982680914 94218760 920011956 478932980 864837728 645921686 540205635 304789916 720322626 180226746 507631491 776123540 91904558 611117406 180943400 885512997 249609469 267459463 544143655 436150903 653041061 614149518 513411395 668194010 553386872 146688212 362024317 118755771 671710913 117774789 758110408 23379667 86775618 806107399 221107377 534990332 353584809 482334826 450269738 3844399 992559560 652195373 128550719 100824905 748606060 884808953 721138408 58292396 874846885 661083223 677745249 120167199 731645981 481256821 447487184 289837959 231926101 621732911 222506923 682619495 221433994 916966933 224214061 769297632 293416182 343676651 945446349 447385033 492690927 819284929 23963647 893455720 146573720 539595837 710352185 520261662 781162821 582975819 810430492 811209520 55219506 909584395 772149262 240152517 255346904 498689741 164799527 914532248 164426280 254103245 945928675 530687206 140998801 778930804 583448028 49966236 255105524 578980143 190536629 615666274 586329707 789141185 652697222 378176466 864176848 606931992 178010598 406048160 154171130 854774719 544678765 970396418 671746427 184777458 228398904 107141688 893358419 565068169 812241029 615957453 806010722 297101318 106670229 420335043 988087796 845269761 579662629 422495883 488407157 45333813 134573979 154804997 619325417 34777219 415105146 779806470 225781055 228900879 258083441 431015726 783605094 304053009 912859582 740414549 364048212 16359341 799354181 697558082 384609224 342311309 611563332 762258515 814085359 434819966 911993729 340538018 161348638 698246231 560455357 553487473 539324505 917069212 459949512 919384842 464349771 621757348 694649720 635721362 592917596 529964937 322686526 946819641 36638898 952265939 772155535 523769772 216181922 477362489 82497258 653093463 248601586 143017958 185815580 454722025 165824387 859759915 789235029 155896902 341888570 97430484 186970212 399744754 9448073 131296639 299318983 274248775 989512657 49049324 859618288 986589637 95753263 834638208 191937428 770329312 94861597 116614388 73220547 263695347 827945745 396446192 569156743 862184351 77939433 826963883 127562049 569402378 662665535 806724273 545515190 587360053 527022722 146442615 376239881 424095215 864408527 443258160 867180393 208015994 201161313 293716084 571725157 484594680 203398990 953457166 740564067 725939573 296775037 887948933 960439410 225586011 465083901 610262079 9307854 408307176 194755549 85321278 674378470 585373380 657676836 780222432 229272636 689906264 164240742 380312994 509163320 341524413 65359750 585715161 851816671 404178337 244373595 653221962 920149360 39346325 880043042 125059883 485618404 470617216 700252889 86393201 573402671 251244589 629418589 400960408 534546889 723830548 860773907 621787758 782569440 660624637 680723978 652454411 527029106 528282450 51773285 193251115 583917994 764477936 343482427 785228305 72777967 536562437 163013420 7227930 528558522 562922156 393698351 168168643 580873035 534813501 558928732 289265637 735324421 821278158 552633814 587524701 452486718 655446541 711969078 330007765 632768628 882296274 647143069 416019740 371243922 471163742 289937660 568843621 730086150 466815976 231984438 283789006 238220671 826687389 315468536 962594277 696303878 226801697 67841389 968990678 386173000 1711916 972359870 234468304 898373320 225572753 682306646 679442318 907361007 661293896 981428175 793652366 689611542 51966880 556170086 407899432 7917623 483122512 534728148 821481285 781063108 433354399 17707562 782553272 867168515 196170694 719081435 543378684 521637951 752829526 315694383 585868660 364958303 258946818 517402195 204476034 796499577 818477956 380650684 724786777 765403289 712447649 239600616 103557765 259108537 9537837 129647648 18765553 14083797 155083001 339174836 840357968 391695001 739631338 720990988 821640125 542303645 423798592 25176885 994720165 242606883 932589435 463547303 242693311 170047707 835371850 693058040 287111530 749329631 636851888 154808809 451710604 54212073 492935410 168726896 408850015 170874408 12249594 705225424 139283063 75757277 744804824 660791790 312056111 505732043 415857725 392446139 73207173 295862709 347137054 305016078 635195331 450758363 355187330 767351829 70630351 103689025 813665078 498129118 280777508 392184356 443420780 798247819 680780268 254399815 971397622 12303406 648588383 710740777 94482325 574659470 570799304 768206362 769931717 49009652 647537435 456318341 4801340 570658051 32605441 81399586 565766597 379305279 317804802 321262304 99403632 947171797 32425013 816756398 733946384 859542151 473319184 121951321 527734100 2902523 770953362 448050882 20920263 325309103 237361703 299715960 640634435 943746912 141746484 835243098 581172789 276304135 456592657 604442898 187807978 702353419 593053272 483698850 899832094 381254510 409350126 992264580 8160727 994338030 795247002 845201489 325840268 146605340 145390824 848571559 586677692 578547533 410935631 449148111 360533770 366751445 223423681 659584135 759879000 655000060 831447193 306978054 724765122 369734508 923979907 723689311 315199351 116864516 308638186 89965484 335242775 450541205 389687678 950048874 264183854 424794242 933968502 553446752 478582304 682252323 433623232 202532365 875446569 949308892 173460418 784832896 517940965 484096355 720600738 296387124 656398201 856353193 442396323 951440039 760324546 775801022 339819791 234684341 566132796 602016355 315235172 808493205 835311872 350954281 298907912 458213080 874400663 130183936 325296589 85152980 753331331 656569132 679110613 732021325 773122650 904506093 600941648 807616073 277126784 531852187 550094029 148794620 799867750 926966259 723697801 53707997 519637202 719968851 444601652 275949564 314972041 734054591 219801158 951891795 470022141 239367022 828380561 726848660 298343875 49169954 932902990 807926487 923182468 530747925 59096254 560723336 163227020 985242452 886319370 757635670 683911115 277988151 650379620 278130680 584895766 949732815 754667395 833190191 177381498 945334637 182026510 959449297 714139503 257296938 828798286 831987454 536166501 466876275 281946560 454334047 598543618 58271856 20040273 395301798 108222356 153591905 515796956 372280113 479878697 766485525 168421982 130794953 172062007 122009638 555642298 336883456 344891364 25726663 79469132 312648515 172295397 535648732 844960465 588118662 505957377 781725208 337407456 613593845 919390423 251431740 587864752 433059464 381761239 800360189 191702632 527709016 762652177 80715912 875163589 656335577 307050698 282279504 94618302 62993267 108922198 489119955 996049220 219550515 627132881 141147908 876707311 883472860 776207661 218697141 439431926 699301445 14568787 884541985 525812 609344658 931424615 567296426 638739494 442723096 240035177 623450514 247570833 21945090 549396666 274121274 623050727 241438260 372476114 857100305 651808834 173260801 419767601 594523142 965841053 680921427 367541300 495794817 74193255 372012989 787450752 793644669 592264407 785947577 582101913 612480740 996623780 781831425 172647315 829385090 41988572 270683359 158622791 969329962 37483640 102360712 244582224 482787101 260426996 567149394 164266083 878189042 657479707 325974165 927218417 139654022 315682879 304507929 563384174 290371353 327635024 524657253 231451172 61142662 153739641 805798570 73045745 260374426 759764612 484714885 926288859 210786014 803872498 719207778 307691517 818824110 312902180 574208503 191721553 964035876 58439175 463964754 112984017 40160666 165811258 989614125 59352051 63318124 236691983 470005952 635763177 87305881 641943558 757661396 649452183 339330808 482463874 60544896 751239207 750517289 902916361 214558015 253899833 79266145 789037152 506959933 59305372 782292485 781660423 175965886 530662521 676726464 397001777 327687498 46908140 144702981 715705524 129092182 519101228 815137164 555582457 583276502 928768012 583122513 329041000 877103872 921373648 387420378 415263519 739994556 878015059 56045445 816869158 468963337 749078476 247569052 148017491 543748200 246691206 142184522 514958457 645427973 165814512 460803554 813003340 204683448 258232117 133977769 628015704 932768510 810966650 724317058 72880209 646629645 248563907 317583642 442194420 874639509 714302059 700937907 69299450 87364205 642540962 909745238 652343244 406557282 530500362 225622658 632220382 431042869 888612060 116253989 509819327 781129070 738583366 415147645 322914057 923945236 198979801 957357429 845535996 496218565 93915370 788326723 584037716 600180945 100471454 683424385 739591999 224428706 81563957 527055056 846282678 197115430 375713177 121854719 554850361 829200598 565690658 71481076 974955118 894615907 971172990 527273930 467364931 455305185 468375637 456896857 840020141 666454013 86400699 478717309 618651021 557925118 621176792 501970202 257229024 42474664 118906633 630446977 54600624 706378642 90606019 873730534 162461636 605522195 659026301 543994450 985737436 239851776 224064590 88728810 577710448 700221167 165363770 469824665 638778507 165078238 669986404 175782260 255133685 726143797 516031686 157547811 657131084 8897107 137604087 402910507 480356689 285659605 939888028 787330894 972097340 949716128 928482191 559664138 217825378 797523616 745646744 321045062 640309108 298929844 961352433 707973818 706695514 595935405 190578481 124351612 570765282 605317890 56468453 510456147 300867282 391512643 392073016 71963098 555308620 367181076 367068665 239817069 560523196 42244363 5860092 289491004 465906716 914392213 651047903 748385498 687793135 497769212 582227642 794462165 13259481 280431006 234370796 497622684 50674707 328498328 889780935 213952551 473190125 126680973 142269390 410615624 437515343 734725450 763426223 718856766 569580549 358727010 728697514 381140937 695098637 463998708 861845273 20440301 763125309 501608303 997999574 900965650 657748986 804476523 13103432 99544734 5836538 337508035 925218588 543443590 960698388 453870151 612374334 379261122 351307482 746111708 640812206 773510544 626295100 850872979 613003667 752271605 409029816 874318959 628573319 293757362 430468867 444614534 970158663 319741569 694119714 88820418 238912635 199052125 246106166 818149310 684916726 567904469 901565642 577197963 275064358 379132753 38103899 440887022 89121634 839228337 891825370 281832371 408780378 42392917 809957829 448866952 912695349 336274012 65670711 539293123 891369174 549483401 286708010 713048785 733714232 437832518 798436316 239108376 717964600 384833019 641545809 470939642 945894241 890146764 9299119 903262831 725313462 509625801 58096504 864227325 476990424 460164812 339321742 2939368 163479856 305269679 43172844 885605734 652585016 726638767 871257486 819484188 408715810 632009186 425497037 960043013 911464303 659142038 758558548 241285840 235564679 63526303 210573781 226592883 771013354 630299857 687659790 883640040 29206784 733369197 31472324 606306467 196848700 818264981 638935356 584426754 975143524 150886342 565443153 219295607 424592965 938153733 681526299 986539108 545614817 123689731 929682191 419338259 345484054 188802029 499416258 13782852 339306323 237909631 550414401 665723668 565181292 82871385 682587876 795205215 726305777 659588711 146089265 879868346 874510197 658921789 732230014 870737509 41781072 409872043 83696132 336178179 565850432 562331867 124530621 479158381 803236706 117612793 575063974 675256102 943798095 417878026 909764526 615474385 782379319 227275885 715616223 719641954 468047563 666643085 228126284 923114982 438741101 301164230 273139627 342332572 876751508 627325829 324533795 114688292 557772111 753246861 545197087 854793222 165030204 886370643 670871872 836543803 407038758 420219456 988815994 500900964 989997487 983623350 221375590 138244919 218270716 949928377 21896636 572948035 462154011 487366577 339615882 753278789 990756565 574741051 936172866 813569235 681534259 400495386 275437455 909649910 942342008 8450116 80038946 460427167 14685137 44314416 574729788 877555349 417767881 658422976 840742128 688920374 975200829 19150964 287331468 658540614 307993955 202805632 378995791 349342415 34332240 439067115 440698042 758838999 92256380 752854767 520299315 140981008 275362658 454861980 43350998 671741175 950145467 158549802 253259243 921054479 761612122 877718328 598442120 352958306 55298143 938632074 413672179 184046600 779828269 66579803 253836003 942715833 315871476 421142217 649293390 259198613 772416067 510624885 315404292 365621781 122355031 242093022 370414994 963283756 89998852 591285829 117380687 266380300 40338646 978130403 870444837 532944434 276171184 168537654 794519392 365696846 370959777 140260416 254459006 519597411 456006605 717754667 845977206 805420019 759437315 83706902 590721832 194046311 967667043 991981923 419556796 4874787 807021030 36509497 418535109 951771580 519706578 274288868 27881715 160142642 637422480 937905517 768517341 589794886 352551071 886431304 43318870 321351834 558321360 787911960 493655456 589470734 972097602 596005880 627494132 749902774 180817072 759315445 249886795 756410824 772520542 132649027 706033897 434316352 703957311 981994977 212757358 183162601 663212432 152763057 441716957 335557614 939664352 417758537 591459190 930303054 853582693 116589203 230484746 42078609 278704313 506762901 488692500 244877404 815991483 258294326 606592680 937813310 107484228 365596077 477880105 297347757 325810011 143215498 74698689 829870901 678993153 320463623 312032561 615822960 485654358 835560828 330408927 651477707 402093879 986129381 177466540 389775474 719768869 17198230 161277017 901590683 848805761 891965421 843703875 733834995 699841559 727459025 272671395 87385394 2457778 808272391 221512727 401605697 867507786 208381061 394442177 245339450 130530392 482227128 1874480 696407690 401614319 998560476 738131622 714337502 726839793 791948561 526661776 56461840 128358027 420677157 705478765 73129627 88646483 866842135 521965273 30794052 724990660 210800385 533647104 197387008 832796736 843497780 422253715 623312003 223162620 442251804 414716563 205374030 727136780 760907811 750812430 775753607 371083140 603867181 182302037 762046937 243370038 289170034 504937026 420477643 669721138 883337185 298519849 566280228 379877553 699487508 818315106 547801358 714810958 929530811 266650143 226230311 172455981 904753254 13221673 6158726 199397542 758979469 25009371 45478292 869197688 613125094 168814299 394540536 66772336 820693789 232277991 163388836 945259733 947655689 989310606 55742140 953765382 194207159 999486215 323246759 527737136 64310038 783750396 532040506 635770320 564535560 550074343 499806668 578011772 757502905 269799742 28708818 380100043 674964447 784160466 82219073 577632980 259070016 902811597 428785338 693148784 492846509 152645380 553529910 423786850 51715052 919809271 576806270 473977391 873073532 55618224 625479552 551076048 427305240 255826163 639766699 755123970 219970727 329694437 359336361 832264617 836135428 179086047 307729699 767533588 568870086 656777484 537252084 377076563 136935810 662054142 863893296 531332167 693568725 748427910 525027062 439614951 99858844 848023918 458922055 49237744 917785647 61213467 46429185 214781529 48914562 479532095 745403326 972475351 981925723 930794378 99910441 14318794 877525855 615044607 833626735 465648485 408405480 837196464 848258948 550758242 745691780 496993387 440431865 681667071 132318293 82518985 449394782 535220129 542055501 597543292 750835822 103732735 421670399 310543049 264603199 761920004 922133291 375249181 923966094 345228823 176988260 379903066 414267307 169806503 793481169 158339370 808512022 72489658 121738669 400737123 719848362 686798248 6573938 797578049 362404375 737006085 384578506 235516946 509578191 314915554 196949314 817641957 759317527 131248109 376185689 545417140 701698899 790844853 32235461 399861917 249298274 397196010 631784389 800541028 700768876 895332773 664336410 49235159 163998486 391082696 118796506 332084555 944036094 839750511 444417155 713235810 287173216 246152951 428509728 327600074 411881469 334874213 870939390 852286709 872989374 651011816 232344955 471147617 358340984 216947307 624004561 91372383 420573955 208227120 164454100 297051194 284004587 820243533 136820750 398343098 184871051 553870958 651103347 496235196 706134228 409660073 239479206 735038813 112656614 108883181 513854890 41133116 426949731 302850931 663673593 221879172 246279925 153585394 831619111 701214953 182646916 809938210 451295530 994452080 156223526 149269809 441482319 697578870 256487328 156115827 547919236 639300817 395375672 58745608 490719253 777048636 865140612 489315763 940015308 340168752 210573711 613965439 713502548 226226848 311381036 488448066 221101463 329744666 161787997 640045468 462986255 40420343 711088159 64562167 954771720 85373576 501763828 287357919 434031145 622675822 854276239 351511956 786775191 521010477 144557857 579444721 795047360 664216620 723504677 182675669 424439803 898718472 332219640 682242071 924746618 729067208 707195955 602195447 468062396 567617771 7658513 484075883 777578321 297850614 230028710 230071702 949094116 308530070 970648879 291965157 124318580 592978824 702800880 591145794 652388632 568987326 748814533 537520151 163144854 986444562 229156411 981804424 761199328 695719513 974353569 953914484 498243341 657210243 242722922 226811593 696398541 312345798 157278931 387970162 955938895 558061641 315802284 485296894 280357922 838808307 821711092 546213535 858679127 613094207 623381648 203210287 154107195 572809040 797160655 260912447 577638101 707933624 866879400 115240807 278687746 144248711 184052425 188674259 501912720 743627087 40477424 323871024 520073340 297231847 844561059 868134833 379942208 450276356 132760633 548478065 126849725 482843742 419417031 215529029 175770439 813345276 876817124 419359923 393384660 338068526 629337541 555869009 444303949 836898964 951719237 123463045 312121734 757463085 301973661 138108083 420546295 599605448 82981655 481927217 267259038 725970470 295932964 707276643 481773312 12805852 578733608 919169965 244160842 155189432 864902801 183455675 977951717 857512861 859201905 950895483 987193389 808369271 501294906 240752931 946294730 234406278 486813477 172817115 621313470 695960828 364798462 2945550 370709799 912306102 921651445 485579236 522058911 973434579 197782640 225756237 300329420 894989891 51243952 951753489 790036138 879162391 387459239 955447293 836381676 570477704 364054588 734295651 593844419 310575889 380757546 832734923 774959736 167683271 639010195 80111412 392503385 373599649 522815248 614829759 474967653 478703973 518339193 599798783 538767878 733057329 838040970 867139658 257530788 434378908 71643866 243488466 207798206 195829314 938087338 629668823 677856610 514662367 917148900 290744599 946392566 649304753 940130366 760799935 77612930 677096240 753235575 547235480 840954087 434588698 378452596 572074121 854162354 392514514 91957140 206363709 719937720 755235672 913088937 341414008 804977149 326083625 856733410 824835047 898650751 374723932 646108865 511203737 937949551 706992893 391612297 941141592 488334193 917310799 787349571 64160790 972617271 72419052 789351552 691146281 247442362 356103601 776365318 337168775 190992300 762954929 723227292 503672647 860277387 398220056 419091049 1590391 42589298 27597519 50747590 756683486 136505350 336540563 72494795 649975557 300033994 264319758 592582780 528732408 776553705 970003286 898022653 29616296 397513143 716693506 749325166 805565575 973725972 377041314 306691851 513586787 262568404 225826165 389122725 513392839 467248085 76771306 589650852 2734093 526420564 537742157 758276744 251618467 634698402 655430185 360154452 502798764 937206631 884907637 145804772 204682387 372315264 151386458 854409031 608496616 818779275 840271070 111450168 627082510 905563610 4357380 155224039 804776759 437832326 78470694 96473933 136956584 747570319 647769928 178717470 975005165 440725120 504758546 627789682 31834833 378648896 402427072 67008505 248073419 619283796 615476859 500095179 875092491 621756352 156153567 380847739 384707477 259410369 559378386 662192455 463832333 537573066 922720127 741225404 625753669 607692129 831097297 962727224 967364133 145275470 51945005 692574387 334568815 619506394 361365524 116015929 668057142 335089282 146653127 462598260 315231768 521343152 182261486 491660292 439094006 726233292 69783203 466148590 878437427 215187257 82695081 55339621 866361459 913008414 329261212 442068794 963020847 534269815 968346114 932661412 378289031 655010764 167046533 274311086 225367854 832372454 431784103 706467068 336700736 447725520 813870492 76899590 761022636 191980807 16908307 948145805 461163032 195698178 254367487 804199240 362296119 6295709 794118262 941713079 794695203 888670822 212536012 613637343 872571753 340412511 966281054 629134293 762528127 642087289 188354691 336189821 298997976 830602988 729540391 567636799 205446064 758744163 972788031 857566918 517081760 650582877 723981332 521171335 95640337 576208796 371398859 956694776 14038348 813488601 524835442 197215193 712388278 898957179 526091955 821933648 158692603 499572989 680980155 578064207 242212339 152107655 712753936 451655760 147941063 686783523 284202328 742506132 219185311 142918564 399830275 824505074 274137934 18847807 551715126 616601700 46371879 413719442 196551698 202384380 490609917 336880932 362029799 952399662 842861983 628188749 20615172 248467756 850363140 448521381 578165431 481213424 585925578 515110283 383071345 434185476 112739496 385424482 158039819 626508296 289297715 807742783 984175153 168213152 724683171 803633381 403463521 126318168 965255657 53118501 443265102 3144681 581880726 277402877 21711879 688328686 458815206 975904068 948166486 3314412 636506431 384081258 55648819 204078925 921056417 300209592 480739137 18949726 670235341 697235987 350449509 389961128 327654680 396398539 322606488 347207742 207774591 302633284 447748681 962820215 254608436 796700413 736110702 54182705 847626356 952865135 678932580 774489311 586919736 620932496 36671251 430295288 325884003 530309517 899904893 959482977 468149659 871189560 279835390 810974042 613649038 285543114 426926299 175826768 162170466 276271241 148964929 590358699 617475759 368760651 790439517 443859627 193117741 462607582 171250682 253473339 988468261 732931790 145888402 678922957 229982761 889316295 191694993 424251196 517472753 681775911 830989592 890444012 701594270 31330604 942192193 447227888 322118245 480160058 687173879 377478202 218198167 965041601 814682811 819472620 156437425 877186978 280282886 994582203 379631228 748657626 732123381 693875092 376554192 862216469 511766329 169588454 993428914 857703218 594828922 745001087 1186169 969214712 754659697 375969374 473435806 523978491 518972879 784694132 741855763 793294133 911577560 433489833 451256374 735436199 44362015 305584816 101295391 237320453 873287158 595860633 463083756 972549739 864092897 23446380 365218501 736383142 711351049 938424781 534341386 374134466 181883834 449474327 75183768 705972144 616811835 129318883 955456457 209156784 880394455 550006718 55288697 950173558 718391595 40982848 688048834 579499432 593597142 324583592 160400900 199840351 376879281 434151281 679797327 266862914 665060726 234809350 990950507 482417569 310061900 906266528 428833200 897557123 692213658 531100781 603538099 304737367 605473408 998169970 854525293 723855018 283509491 578225993 305536480 480670423 713858838 988376785 425090127 571976452 409080823 804343142 980887777 352399078 102034572 477594497 793482756 738972937 332416182 343082769 954824551 754454574 959857017 344498294 705461741 723960515 416892183 825190482 706506863 236315482 697859780 245802383 974620548 846273277 309693152 307609083 331373743 720129188 243231435 373038886 29628183 569947406 373093697 983289449 27064631 162954863 828041726 384013041 32787184 877725806 600759559 319469667 544144550 610622936 193057942 714506482 76809767 176630234 186993905 76116943 102709409 346529472 388377032 925048263 551520217 287257131 788450899 910466490 202712280 749120381 125285816 207621192 515939786 659822396 884469045 587739395 176648783 275551714 957769145 103879535 304637677 348578078 108305459 862137720 977830879 838190325 898689153 506914726 182819404 937500196 173612452 592425553 535790935 111242160 810228371 416592578 537239020 1140058 651822703 637945672 368380933 407456228 863301230 646050179 620635662 93360217 561764432 480019882 159366678 883300912 149410158 891029 835356013 792288314 378755085 154407283 558354955 409122604 106921173 76611711 963184999 591355575 671933064 573519149 531511350 515258068 175744575 872624338 653439540 694425828 92729493 699973572 33459520 228227817 226982832 504516030 505995667 303909503 823295674 115487629 758778136 933603762 800944002 804384403 114324148 140856896 468251757 720279535 691659761 58372420 759851921 106767852 915767761 702636872 261942937 457307854 703675723 189768546 784804536 451990776 419737262 261423949 694844027 153901184 501120240 157464355 307264076 816181629 653299676 710448097 513537424 47200948 874536555 22354040 390973086 468552484 279222392 901139044 526041603 725733864 178491454 132744212 627674732 447028986 664834709 594502607 808392292 974285522 792970620 615967152 775824560 260852490 5380655 931101899 537193218 433792908 542660315 999308205 15886514 608066478 131005868 869764019 111671163 867607954 835127954 766724312 853765935 887532234 283648034 636979731 209413562 519405456 718688258 659670532 441842845 84804841 874234851 886090817 79303944 705043955 670761614 883676406 572859214 518444706 564476226 368294292 423051619 346342875 658217421 967643456 260726858 652609684 298309358 364154478 673388897 725062320 243177190 682346584 388284121 896752287 899012929 994166610 270140161 450833791 241498453 510842067 137151442 182772156 861360336 836028518 36856328 44141419 278298723 519119007 345941227 948395324 950621678 263526977 659306933 953540576 864797941 555386486 451924718 761442296 126305996 905388418 977080688 275307110 572456545 766608647 785854458 962868360 329900483 623047191 860359059 872264131 714611988 409955583 744108746 594444476 737812070 846399034 667730624 909848320 720773332 650081058 442500147 330633956 432220199 665279473 831242489 502679086 362450411 110885473 392444818 330766331 287491286 744861869 830515854 713100608 502581954 737665217 11931054 807654501 429065679 457837592 832039529 48498013 852039228 403882089 21381026 698927935 457546135 497387555 331133198 684825773 111269619 282087355 828869857 891230482 659874517 532122146 543642635 498701886 248294825 636413899 228417753 474987186 73879398 89419647 976783725 473666452 569331706 911530144 472505514 409016805 189062094 708569549 463217793 566248679 861682229 108651627 417221524 960630885 553343324 893942996 677787692 638032168 385964484 78777108 882505821 329891161 188044240 776010031 3006503 439530565 287876563 569595115 20902717 758072247 396805431 778634230 473391344 478516926 31904588 475199048 563893067 923284490 808954831 530506035 290978689 99215831 203703827 753420047 788820135 79863177 860199740 342118312 957373997 22858072 551478625 275823946 136584966 348114706 116194178 136851105 460420246 487669103 894902575 573935246 793810443 793065329 258196936 378576751 788705831 192148424 154910251 658531915 484628287 320690962 687069102 978453110 873592631 158391639 525975327 69234930 301303038 103723796 303867748 727016366 77189865 310322552 69851613 851688722 508056134 379330375 743832055 607726058 765070337 761436981 380160987 904221105 434338919 362211760 405576671 594491501 124769680 586120719 553332975 247900243 351373127 375053535 872285748 463731181 309634806 559792048 59601258 853094139 244268172 122364958 688077558 193233043 840070478 920522901 352585045 220586589 302742353 320525806 915062252 161746008 782835163 776489607 660880977 229612860 473321310 59548882 630805262 94454251 72433898 321818602 357259356 918243530 516441916 567579642 618835464 728111435 983297144 760417108 804388929 513216420 584638843 735353695 640007774 846714118 18856243 241816806 631870592 147180951 422558897 477745782 239159514 912308306 37888014 808333454 386793045 387429931 168613273 464775692 652407188 315730234 802024412 760224376 16089912 41187290 716978283 56824540 653249656 627821610 569808064 967376770 926919052 5336432 963290003 214993214 5382301 219131580 530981093 829962955 49604260 13661426 840556691 712550920 456677489 99173587 949305313 166108177 352732595 16893378 647408509 757136297 988104676 623183789 49487862 451718894 218232640 108773380 760719051 587904798 132172796 7909734 186990225 488470720 221182488 752218648 796494037 229539100 596201132 438098589 446988442 269492839 262191149 804841587 526829775 23873605 702953244 834914200 884999721 744919394 758848168 859659096 575121176 73619741 972943643 453633191 22088636 395552903 564512306 565106458 886331812 476015560 739136942 132050531 756310219 491451674 943712250 335423592 648445923 955983207 985056927 319732606 477429767 172487062 353602586 323725464 894091608 609424931 833394783 479487399 761115633 967134613 78131728 387417220 364150214 706478665 331818844 968038425 680465601 789908040 685485866 457148080 516347616 403741585 807913809 561109435 965603333 329873147 714933399 567081454 452350068 3775975 408550864 833266581 857304864 68835235 539755078 12531702 561257950 751811689 949269135 451049977 135085413 216707574 637941216 864609279 162293608 704966172 713598781 954507839 803557503 335892194 716609098 27505837 612543971 152929885 346352158 154157341 476149505 721174951 381578788 595570316 28991404 913326134 596402114 67407117 975671705 259508214 524681014 659470964 519902253 109488637 114246879 304033750 496919737 422510149 541570715 344991856 121733974 392610749 715731535 924874389 689715608 542349051 506824273 543481149 999078667 75242752 14774658 808974354 417821721 495008746 808166001 624171841 576855049 32324427 823872112 126193191 45219237 984484915 657656653 391077792 892476270 953967806 113595809 683697683 506376100 779051808 321771369 146149732 903458843 413842418 254972640 311784408 134330508 854837445 522785222 706586955 839267614 846794066 676805069 305298518 179211754 878603979 893085165 482827964 558561785 295944355 569076567 662471190 489876475 316690034 148432358 961727886 393215683 53963981 423293507 405244397 588481596 544062987 542151281 891794806 839489873 416805750 973462283 584414344 64665359 151121632 451468117 543343307 746861572 263118851 467663303 934303633 309648284 925356154 629074899 173238691 274126303 999065613 72815806 614763657 83926351 57100922 590684611 124926914 673335552 759695711 48554358 554686555 142589248 15762383 716648987 202753861 298160009 585410966 65735700 36315936 644171223 336292252 250377099 266654223 535763740 851235994 47980021 903313330 485749856 476928453 279609472 864123696 822759105 554014713 707578130 13040075 240581994 888628546 980935052 427672358 745984813 16806739 136655529 100368375 605243671 552012770 221178745 817065992 155794889 95753738 577766575 245116645 600143189 256610383 135385608 776285667 912047737 871213928 476008974 311796357 159198017 88461565 554728360 517276044 801526440 873012079 239660848 903552164 414509573 583723152 687618344 752602265 265244166 374503716 173485609 128927716 128569191 886940000 528010271 398332421 313976280 79950142 898518861 761045614 846583576 193398205 149116386 838004199 547181477 797707583 171020700 792218663 503847610 219511359 75126586 46791088 333948951 596885165 43264983 623167195 90344424 829529516 113238528 647640372 622451437 831956939 415926094 853837485 369159756 674531378 335797290 58940548 355807957 871189357 820069786 587407523 929137547 236585551 896098066 878303032 547558394 246063047 67391036 934367660 557055450 378902039 127235705 59886472 307702414 626899273 369957457 525268135 127546915 31297617 686354141 406709506 41544315 8254882 134310931 934932082 264721717 594788906 556945308 49031356 658303712 267566119 461098311 198908804 276148019 840888326 726271253 294157627 630949390 753075788 737431587 236778763 560713816 748441893 774599426 940156380 205679377 337936768 79857518 672144576 675988189 632496580 731663185 736786946 121686651 409526857 941369100 68090337 514302993 547865657 693707490 950530670 315851643 408148970 84980897 26869471 665436414 929928034 291525910 639670178 627055798 563236289 570606319 788121759 144971139 72789644 361548874 913202434 836657510 355028849 233974037 991905842 154901425 671368677 433440291 5997009 969116809 831745032 951552787 39002508 355890481 581549042 206383332 640876524 843869732 882691767 433220591 852791132 81684372 254954746 363121884 815581242 256265530 681122160 55160587 623889275 992485208 617158808 848553567 89178740 345311869 657589224 385570564 715782999 145249644 58705057 469058462 644920485 746233904 476263627 834927400 644950347 687032032 107496004 57266485 612970717 342422759 523601668 51753248 783722899 340269958 929119845 495271709 252116963 182645867 457085180 875825421 947900866 531119343 655499865 908720592 706359225 22794633 341288639 557251810 449667176 637732486 408319199 611139213 520569089 570590419 614981858 213772532 68710650 37688338 154742212 793797359 429224797 170662547 638464214 374585184 567042616 490633442 780547693 466418907 185184403 822287138 261390932 417254740 928316508 40798627 998954418 99547172 994780205 274867802 286351946 238899416 463707456 55501642 303972097 481167186 885738714 952255310 773627809 32228106 23050919 949745866 206584165 338081764 622901577 888208866 663697435 479779708 272757278 736124297 830793835 835061547 46581530 817778975 643778622 233425378 673415874 792689849 914550699 29878241 391652305 699940257 538458529 752210443 815030369 322422889 503789893 196838824 259991132 377681924 153237455 914706488 353829111 706516083 392183130 709641187 349937176 32141608 563394604 39387308 162085811 662376038 813978462 658976838 848003292 462812871 485367897 817704214 19925560 56790503 512299477 500893182 29551272 173591595 224421569 885982964 942039170 510208662 263632319 394743788 13380414 212093148 38874889 903381186 126510829 952156636 789743364 204082032 447768246 452221466 788284363 650509917 362388845 703164759 802563944 820972219 736950642 330936684 568243208 568573011 993450600 218037281 282699719 877558460 844609003 363258381 402012424 55645224 891368149 247253672 415165090 158891858 569910681 877860111 381857533 855903977 721897933 985126004 835934744 943073650 258807284 957991693 373265610 428250941 128127784 621770462 551562699 553075419 386134278 987496529 287327696 777740865 439616359 466411192 315761891 270521521 605251678 450792568 532527380 73459522 936536218 752543193 708863331 311862576 990111407 766409146 919776273 819924976 161032962 761997280 280464203 408228349 291088975 918681714 149940139 25921428 987435156 371055915 763038080 144142568 310621882 855002148 249329465 253272921 314244790 258015967 29384015 337038460 823804928 164345171 259672514 145911908 201726223 454312139 611861748 224051353 608801433 95872559 518973134 646263318 844169613 43367893 591347678 396379092 824951013 233244529 54202472 681112242 861168058 396404120 653692178 326234043 934249673 818855993 735258214 432431892 952631613 772403224 544119698 733269488 491052119 60560198 735436050 706977882 2305272 34293842 199958505 407026959 194637923 958399584 720530689 377398647 221326436 147998460 766485254 456524586 568538368 884515557 570416116 27923314 967870035 843911299 409717370 244360520 533029442 673936123 612625707 470166947 324442135 257226281 202876822 878538782 692416213 646942605 275321754 466549828 97926539 105622391 989065960 405882283 886183301 542465299 554435854 824438137 419374844 540491902 556164921 486073672 616448261 855756164 106246590 285233949 684840454 910765374 612930825 928149635 768292096 311810392 310494645 620920891 373384357 494768509 388777366 425517664 27975683 379974915 548654523 251207107 856700424 977046205 760093407 935911203 857708292 251363301 853659077 99995229 842624994 876170980 200946351 4247552 463788798 430488808 188086852 652140736 914050911 562168316 980638492 370041033 418762529 464329953 616396442 381455092 510930107 918819339 767906630 892578551 617343728 349878877 19487636 259085713 96827714 873183489 840042237 202319935 806004660 968459241 155577732 449399941 764719067 249751892 384736540 626697260 281640065 680498530 811201406 816815830 864448833 957836650 302474972 504899098 974276841 376623644 622529531 68242725 557063447 135822869 879218943 473843474 982716573 732724836 313291411 214900109 597631669 333708620 453162894 697856977 514065306 922987830 765301851 586962056 320075204 651262047 130316045 925803873 116396706 671595214 883917955 630934968 850426929 161119939 8904202 217365980 759912017 124908105 898485039 291185668 834114872 52314033 561152555 280777430 708937358 716308637 99319185 689531176 196778449 682709104 419974955 539677138 821132766 217354218 529986519 379109143 795014080 85983543 994753555 686586911 233169548 882187606 598398574 273095964 282481189 971202001 691987347 154274072 297950144 638620573 205534406 239475911 86326374 925969672 116016609 875454447 892090976 514092146 561729169 735618052 478628638 596695447 868049477 656833885 50423465 867010048 469952040 828428925 138759868 774494619 388715102 575460003 399321109 169338825 597530635 34267077 865759988 773350465 780163717 829056795 343859434 710602335 2653213 75158996 821211302 253483175 650371451 121935790 298935970 413922173 242566033 885735063 322590102 222280167 464654625 369739541 373540894 532434993 657996867 739639230 395027742 333175736 559592113 809789953 944766649 350973259 946758681 901200775 766878925 780351981 166210165 304165552 159997533 856501094 268367889 520376021 769851842 462848672 56529600 569707528 392664333 482861012 900079611 349461537 184726444 783883249 875026982 863340660 452037033 244737908 47072609 928802179 209021627 198836426 604812899 494015672 52864249 948184308 645245219 787244361 328026131 734475332 760564961 513122835 46185760 666214182 766180339 706147731 871700405 597186247 782353507 900015621 825091963 406328023 121199757 928313305 366050639 245950918 607357878 824945910 191334898 891772461 508457041 336769406 688190753 270729907 139212698 688757434 833477764 682034951 601106347 684472272 352320534 909018931 525936717 837905711 58581441 350438535 835952935 374310784 506454795 955551884 347788727 85468488 730027330 157014965 901674163 768737735 532313645 299713292 559504639 244870932 635747716 609927891 144304470 299006701 117261040 364723834 169845872 101618680 904873107 197400552 348175725 662078536 824457391 639950736 692248300 948445326 517483685 567855889 640354961 195367511 707577435 189664064 459065707 185185738 206092802 34764733 224316994 745704480 615830134 257909740 612564015 635933197 752278001 238014191 120156923 427270123 971532362 933510788 654075155 20613958 188435200 966869320 940228057 717654148 760746318 884429824 948617021 626026123 610801325 46154243 329423 755952331 865612758 830735169 4776073 84043564 312465089 70270667 703493116 934295985 334171557 999727522 342782680 704051277 361301375 609454687 500803966 558951666 947282100 494998640 711133376 892914088 802084517 314932510 339992567 422244191 903284538 267868126 873486723 971418723 53260599 222911145 133216088 140818507 152737551 649693109 315870674 455330277 909501634 573063991 344788358 324692650 4126950 792731016 308537819 617709330 435709645 262020827 804700485 997104095 877147908 418490979 675292590 40215285 729234847 281249268 268358221 84679282 918601443 804668395 4763848 586227173 375874761 888662541 257760148 815688633 670318924 238102054 324502858 411127280 230227048 259792974 203718775 209377262 560270411 668296481 256909485 726086336 333672072 206211918 888500741 894866207 188863476 52882462 53010839 116548975 67530111 606413131 924553148 172256487 523402796 755152469 414727365 199460223 751917608 766114787 891461536 995797383 817736401 384169189 591534584 803478954 273447210 616832888 770437920 621266278 782731004 488221993 884750347 770315960 224347497 422472308 905155264 846718770 791438678 232638412 751705193 778769000 267411195 539252737 900975837 27035628 805410995 846243384 537502750 765852103 112762821 626822557 633679104 125610514 641863253 128534287 282167967 976952697 618334377 137656922 701762522 61539131 490787660 287993063 928721197 512123174 636595348 998207159 353111435 396527954 172365897 205531143 112915220 37441752 819467145 702967889 575071832 493554998 332300710 195068433 336735739 612323955 400514706 530420835 683243220 73053285 998501425 384581607 414892443 354855297 2127066 600834055 548352961 688048210 673997558 395173192 792540095 207752864 853976800 918253541 852543275 245436993 656284434 365071374 966488828 964703304 422899173 356568971 92936323 80508730 653409664 569766991 412462635 154872895 460887378 496923628 752198192 152489460 815625225 781060519 838743780 528435094 329897814 900693689 643465194 836877774 610449764 182803704 994530594 829681671 536827219 115238565 492101787 18823627 826100774 578817790 453100011 360405847 146024499 862962256 512876285 921103519 940035484 617765060 593704158 281705879 516062850 344456058 87191998 347573526 787335859 109601795 776372831 669184075 557667872 345680274 903484013 538501326 347942531 291831650 975774498 361823353 157716881 242639995 522359651 346895740 114043893 907262110 821909827 210482656 375280992 730945530 842393594 949463883 978252203 574927278 889482888 22394756 103145515 941947699 177026544 325342507 121953820 113173049 554363629 279369906 187979627 856896108 485432894 44551170 550292692 924813235 257526160 643813447 555798991 26333422 339472301 832693812 344373052 382399767 843580247 183212279 115690944 346599743 315349565 125652380 868964341 368917098 493832279 639356447 414679909 716792196 148588290 117146849 298321849 145738707 837357012 118912766 435115896 108069090 947529996 250406351 969431930 103289413 440037282 103955098 18257596 727700681 76099771 479798079 701729834 176922695 69193093 160833920 772262009 599830238 90316645 797488615 930231483 614268741 779651814 242726546 181307728 579025365 677366219 22236367 598071671 282008586 885399770 584930524 586863798 632119362 771172875 98683045 773220558 163962685 701010119 784323268 290224244 426094046 204664015 723830379 686923234 760063323 105811361 586555944 231224686 807660624 102343386 219371538 805464994 29409220 994981379 855105125 388399715 466520380 698145751 564616766 791418230 176578148 560605331 259534114 383507353 854423995 700342421 854263608 378331429 799863111 981336297 743126597 288132435 954315956 403723454 183869954 946895584 789877266 381086490 571403932 301386692 664021886 565155057 157576352 964351504 74235824 287315426 776234198 401261551 906252831 567640784 936018714 317180324 208268876 660308925 182896310 7755762 508428758 663045484 149196030 796124822 754634282 472236236 319669342 108591133 215427497 930298796 469442385 716928877 659080216 751792443 777709008 793957680 676454445 204952373 375932117 654441537 956333024 351908999 10264240 654129391 639268943 200548180 899022975 784463155 627502751 761715899 804429459 378007606 920063674 860330605 321703723 128323729 124014658 990267386 78227485 882614104 733295800 249127931 64598090 746570996 758179495 344325041 24905140 905525129 747113905 7318103 934885598 488331285 276841645 393416351 317362400 42671292 465052986 60314793 77596383 549913069 785599934 885802602 626123221 930187231 322260283 538169974 907300350 388500141 11013621 823805120 235989442 759763209 319515740 93896263 314147568 358521523 779747418 727238036 199209977 400275084 522817779 674777004 962123480 167686941 77212396 745894037 971783594 139670348 991815113 72142882 755740486 214188682 353115701 413591263 750071153 466087205 542805829 458769328 447182953 594266275 782813948 652319334 840205456 964250634 90904816 208602127 638258534 447200933 839321210 888103263 214288257 981031241 197686798 23993551 18567887 109962169 159079945 373910803 817641639 936363545 418237879 890659363 884902659 986288831 308482866 858052830 512040394 317597221 530118887 249806921 916127727 23727626 268056599 172460560 819366743 695342427 253500883 648659312 705129418 195405671 513582625 441632897 721692429 983071345 89881745 995877520 290085829 360765102 512636772 302040272 659668692 244858873 395812995 986204070 211405042 59558510 670394072 618429512 363498453 262198150 649660631 166965366 186841942 620835256 322654099 788143289 529273096 235742672 977320866 492305372 608828886 201517897 57475700 298686267 484521481 366977223 720945280 52684726 449255644 155172255 616842858 334091296 931946921 89392392 759024350 926283106 784600089 696377503 189667315 833761027 181253126 512178151 738315992 207044771 365263280 582975530 24754819 499703606 984260669 811896009 817970414 78529766 953631043 95826671 536948765 355877863 182716457 404343693 120734764 403797309 725124559 153750108 868512601 870444909 625759697 49790412 465996074 673363374 802659242 964831670 240418867 422762097 603457189 604910940 587551366 868380064 661984519 873387288 450939714 61650220 379161061 71798705 636452970 723531552 986837737 96388503 746920774 120520104 522047059 157284525 55973978 203413226 164450326 92141197 410636566 579529889 933403062 723223490 67092876 191258417 794047892 260101734 270968288 675281216 630588091 224766597 813589229 90133460 340362133 524563352 778047572 548981826 742695072 809756062 27836782 604041068 475670576 894779321 938160581 228473859 514333042 714611243 296559989 388573101 98214367 108497281 651927375 284208229 596399250 174161755 665381030 890109077 854030224 861620437 557909485 724979778 166082955 657391248 594304105 568361881 442345654 153854229 810007061 5513004 995802637 734740393 880861777 121928583 907252057 398500412 15565086 987434523 685119557 975499730 385468992 997964806 324848899 316985571 993534088 10156305 560330805 186567301 254525092 109553 76854344 829193844 292517709 563630626 971838147 145032233 443955336 485770393 956552314 942361113 517993313 759569825 589766359 402975841 760323709 252077952 240088699 166724428 133965145 966740640 704405940 327745321 825381522 808065638 892074934 768014874 415780172 240589254 479018674 659165669 140863264 922669452 342986806 976634547 742651430 789770265 15713513 987059843 736339654 905634397 906983742 728246166 353071625 7670821 770182132 252889621 321888186 588382531 605989631 819961860 166709555 887013620 713098601 76080754 855695589 976874063 430036984 394989291 46496301 18630243 171089389 906834715 15054412 473933326 745517226 357080518 123431929 156042646 137616988 519193219 932667620 382224225 157260620 473338950 856805411 572060957 614177861 644833122 323676788 46275791 93963270 6766361 969489775 94935146 915255383 424580892 121023785 105121197 695615249 138338359 809822989 979038607 772566868 441461740 535855691 602288441 419009017 686294005 397261491 264739998 579570811 737972568 359215880 20507098 493989813 823457285 67218852 895894421 267310026 247777329 863650812 232785398 501859100 960974035 670462603 876888700 819662740 257033430 737146109 599644748 226915781 247829296 938353773 219400165 35465101 114402452 241630317 857138370 93427169 910156717 91120352 780663746 135946914 816284813 726653144 397592654 342828779 468059668 781280455 606646590 220090115 221049910 61521198 386996231 607414199 999639945 203339360 866850825 919496044 572652043 439051016 761853568 277690008 950331218 20863772 180558367 354989709 756490004 956783378 775307260 396848082 852967487 795535358 977995559 391817563 119981269 384647532 108234040 329241933 812267316 666433637 225127417 931014695 372114669 57441581 606415929 126357733 537241882 194311077 678818828 234128474 990475147 195825597 181371694 731997848 428561928 415145587 17515647 573410705 939841191 959817116 713349811 445158912 32493698 445938334 55584330 627381381 353844285 108790829 695216836 742623395 730574592 750375839 970587336 571622828 659892417 741292452 873849807 762071150 519749905 215471052 370282430 9398216 985501046 381399392 820451062 112153984 263174315 739736143 484928348 267436754 747953358 394637236 797908566 728141862 803319845 846679321 503617355 155410701 56363980 745815229 322096988 956227253 838756210 354712867 268520477 418353055 175376665 371732209 870647656 170355824 302590034 937979229 398519697 257284908 479666248 877370814 335016131 368677941 586626519 694796581 381872661 205727280 338984109 38106484 6155156 754744896 196788662 637804675 609276389 166830046 460149825 277439467 111666485 529925613 37188438 695064593 84679030 945513813 308669392 446008201 147897728 207708729 672219081 392909017 179457080 530739853 100067785 794837514 369014418 655334801 587941742 893803522 140628810 401175019 670815832 535738709 527379755 886443735 700129813 416947450 897024635 76700995 97970609 334587552 543797110 546155924 205045338 658637528 270951293 455595638 245437785 580656298 240770673 683079342 455308924 956237611 132455856 697518694 594009868 300990804 225636666 634168183 519645591 727015422 882362131 968527283 58740726 796665480 574548627 268319601 588620024 763700319 880352014 534366430 613777965 226679878 327403436 630347428 645089005 904224353 707030303 853762240 239696432 720181125 804400921 501428752 846980960 475263755 218596472 196193083 505658649 377044028 343585162 443251660 984905139 960682717 289971301 815177002 340936798 256929633 525219943 731590445 389360297 705798873 147896826 695011498 825115327 944718407 58930944 762458548 761945182 531966014 954243867 867139446 310995268 566969364 980605433 940211781 667340651 43066876 498066711 627798610 884493183 445654911 330549685 989612534 618945009 808555353 236885710 385609096 50389579 864024331 782440672 988278424 522640124 637264267 496770839 601118649 512208876 778871265 818328251 54031324 53318006 143731623 985427219 484636679 420195521 27295606 775228941 878442792 759144382 939348168 949309316 453736786 524507247 295186395 148414152 883812284 996693137 522143683 150125216 320140429 245211615 153729951 942323145 702475127 276632581 238916843 483637499 84391035 750581543 269337047 162327531 190589526 224195019 585699759 656710494 837982840 529404737 856884502 970796201 898321572 238553265 251640315 362253467 417507866 703079169 75087418 619072936 651065880 372619399 504205983 259289590 631216117 557378258 479172361 201390283 411443538 232160286 150297689 566797863 912600122 597060746 795084671 179682323 830309577 131394193 427766803 980140117 503275888 824814394 16834938 207198666 114901841 525111952 954675978 384888102 192245757 828705357 575023224 627333840 29725279 175346858 36220027 737144241 3965202 40334538 908926832 517042093 790212849 711995013 405681166 589810692 315690185 968166734 956637231 800419911 274910386 846813992 882577241 411126595 909191433 181565500 922773928 424065403 541224870 880081932 788476627 134303066 437015063 680606432 95580669 503939457 851415981 844037953 368362429 145800782 901287836 839282601 926878728 776609024 710109460 917157527 397134628 14822179 159237306 278287025 270954373 449664017 702740072 422924106 636296114 809853451 403837505 632323404 541968511 441461943 781396999 532131663 279007370 68895427 904910549 756628810 179159403 458433700 203874660 54979154 369499502 217343900 113583873 229503681 560097338 26470892 544217261 212367641 624947619 307926767 548554422 970627147 790452867 480809059 715858726 924236590 377621453 352633955 621534953 553453476 62996198 570793316 185002383 483384680 200179858 654745483 340516856 83152430 545407433 601110022 156742697 524374545 672124150 188026329 994856900 680439024 912200370 190843014 825842030 792606544 387651091 573301267 389822892 157337790 16637303 771351372 737855607 795608875 453704377 373460639 456954252 386360313 789249945 160549055 278542472 287374957 257892055 366820271 914956091 663308938 723926666 984138127 37988735 392347082 761968885 201334472 750310177 982383147 511698015 535280713 154422861 53018758 762772192 46545244 879397433 161912906 523437531 493473348 819377146 857907396 162198705 637897931 396066593 976123597 716796486 403135940 985238939 849702354 803687050 218586097 211545630 908347670 740571885 918046161 982571333 345655150 126612701 409298578 9283330 101395598 47693965 157156346 685924154 810256649 685858009 371703973 598804465 380744311 611833295 96097943 380162452 234964602 781922026 199179196 249168283 298317792 616160241 2398264 500605309 42799321 428389900 202401446 809121990 540177020 754756706 314986878 921866033 991891122 672679615 830888480 90182353 562155564 115865676 62632762 821604294 106542308 132470472 886804388 853189227 234632921 31783102 648109774 331615324 275682362 552034726 779431045 49282018 986006069 913175654 540980486 131512153 20299899 557863672 727649591 453340621 979087201 894309004 827306290 927717424 929058640 380625963 178058581 884535499 828565765 154281786 413771209 52672455 416675322 235603239 616532600 151687969 833273300 967393791 830403034 48523822 571479018 18868118 576737878 770901504 612207179 165648957 979370733 200315866 583854747 268932024 253561931 212994118 649282879 77722787 809664032 649884703 587765736 407013710 582383030 750914577 624378896 331986701 512908879 586249900 452283692 856451137 286394328 399504638 267023933 786405222 209850651 204999074 660325374 823441572 472051906 660536198 596748808 796729195 839713677 73842071 612131135 740999829 412749268 584474693 550918021 672063563 650644105 763860126 227970686 178365281 761317238 153239607 240265874 483636177 435031745 82213059 28061402 953689954 533838051 817023429 703170527 659846540 756465660 96167004 609285411 968177442 227503581 363560568 349154053 758768540 915423704 184976302 9680717 576655657 638100021 304358047 255276010 245457106 879341490 522237278 724442732 761095837 744726327 372108245 5974626 202434631 241264415 506995231 194990739 412066528 184309993 816504036 658001612 227653599 55453402 761166487 788642476 910162952 675416996 197518542 194556616 482494429 830682802 803056590 337151381 767894263 971641163 715363887 830067622 11241637 581605883 211890436 910634882 328353011 682330694 573438645 449327063 949808571 761399484 475186443 669180154 351196342 12785062 848581582 367965178 583620557 225786615 921787331 128606073 498713930 794428789 174344302 179410450 991436443 603899126 527780127 39577057 404661347 982276227 979595015 819786395 319931087 513769753 555873838 248455948 493813959 918045401 640720353 838035209 248495818 99754027 699872816 844387409 67672218 471355852 67133074 557364268 560714331 446071667 648968813 819458611 576019851 766247083 688989814 676519058 937147304 523119608 648842867 140698634 279499459 358131798 954299474 875901014 758512106 248343304 727817613 12076815 525691711 571433609 103390238 764158734 533996128 744252345 891333147 813619088 105612204 425294817 271353132 41056086 794249883 137715939 586329192 505410575 150553154 554656285 720073181 504197189 95295395 937122975 857076043 635254326 516559621 149033921 235562949 270526172 298145485 883175553 740702855 901112486 513499065 145850819 989150990 896816688 98593630 513016854 10866686 654704214 757102924 942534110 169084296 964955408 86566318 483769167 637156545 881970089 175436644 611030050 601282361 321815076 762649030 753027604 87607613 86662391 412261980 778069975 89246363 835079494 429992711 956357797 844464047 898013665 535238703 165246807 110385656 454861407 705454246 886290865 34154077 412633278 921589555 112062412 8854411 825774723 58040730 519098354 875617937 497656766 900258487 870548760 930629398 100927032 446923709 666293892 48147772 958629097 124339282 701303732 444243439 790797042 535630692 718651224 61299866 582335152 634304476 287643152 109577500 917002745 408896228 643747512 38033900 547489862 105609180 461482720 324209117 585586903 708312934 545351586 354858726 771638008 160057492 205754984 380497702 815574665 474050104 355467813 638252755 397013611 696547393 728796523 39007114 26572960 475176940 191191216 72219528 832088766 682709712 419439882 159737794 258694273 30057570 796256120 182931565 944198690 888016882 387954613 45610340 774079114 312938339 356656374 203506892 263930199 361713426 651430887 779828084 821493559 960189569 426605351 763388255 918687600 56435834 456485641 821920863 276595358 956577392 835621836 50311487 543986717 503017255 525564934 573580794 632686527 172962383 327638148 367343014 147162949 815262708 413945693 962868738 173142211 924323151 515365788 749306860 206637352 144273234 531166988 881916536 566803125 814265161 557821033 776716464 437875051 368773273 84136580 630854939 444469666 474574150 66866252 630477661 264608418 354593121 933916470 393527637 47314130 99014426 530898087 892852288 171925600 605905328 188587983 997167008 638447086 668076901 968984952 815081086 253274731 627882488 385842064 911605750 212252022 465282901 444356404 190373955 567247748 115567017 818103513 147330001 365746360 889583127 660291214 855038388 754157676 551041252 119303699 481171687 573200128 399614700 113663411 802897979 322616306 569395948 543486537 666819637 416576466 26236894 113970808 628531219 725707218 626632687 604272327 352108158 78853936 477556473 599146716 580218698 673235530 109391583 99968335 122174790 699469000 242347259 702197586 810891046 684573205 588855366 881694492 40960610 883627942 82650089 151732960 992470864 187888564 619357550 719897567 488929475 781460359 51957498 973748528 397412461 580315192 238169295 42657806 702554798 804188943 914854261 405878302 119026446 561989535 332832492 167099011 637978664 297920616 143969829 901290449 774548444 869396640 574704539 767153194 373349078 867571278 929419737 314418577 696505472 726497749 90912726 763641412 697607812 368124213 6823756 505024767 824592426 609852681 802484481 903301249 285547907 391377803 106382656 897084648 969860718 379348036 386326201 534914935 877108802 805001038 635868864 562372290 246654218 271385371 400053648 121939194 318961506 570873724 643569391 457535333 335853872 228104797 197772868 138709057 654166382 248785678 324478227 287249157 294411542 300033473 972213761 612966315 390724532 907697553 265572541 937049831 922473572 652278160 248209114 962041223 319081117 654774574 74779718 422418143 601485770 892378359 603213575 734802382 521995551 156035444 180753562 789479433 71709405 734038244 684869463 509568621 951781080 435983225 410211635 890417999 463393381 298437929 500684476 608563846 676774730 796211984 667740839 639669717 584172615 203289745 388750372 584553070 916694613 225521963 577508844 857224536 710087997 38136457 400238934 625577773 608455184 810269298 453446750 514411747 914113735 78370695 905770208 241438075 736554077 694777494 255418155 814509901 407846866 487778703 566960452 354888011 403817419 10549718 909600862 632994316 342799054 909244505 712517254 105497040 439373523 1922946 985312722 202333726 691819933 256384433 300737991 423252016 471094309 250460057 854433910 334491327 786849544 563478224 828907240 9368051 2815225 625686688 501226412 583529588 397412799 940385642 654371360 910626757 719824633 997189457 40783424 830211703 378112050 305550400 893865966 516099597 84393512 526415267 645182853 477062422 649479964 346473852 284519059 727298268 350541609 938051715 713798665 874819563 291868399 827773052 99409592 231899015 263343679 374246301 706016431 975972031 718651791 814600331 701451492 70474640 309335067 680238052 354719722 162249098 425846019 748661466 242530905 927794661 558963906 467284969 193407578 906836903 466924043 271765290 629393165 297804150 963758841 923074650 806001073 355085562 486476438 388454518 211400698 112350053 862388493 994001617 12420991 661613727 668084028 266160363 681138018 255132458 170315556 633707418 340200105 943234371 59470079 939438609 380863429 721017748 642594258 313612842 262714509 617772555 924552558 892980279 793210742 812662031 745296998 173493082 563033869 949729473 63729171 583118989 732338914 603618392 987685655 361291439 455173909 197188135 81206347 778301956 964737362 504990620 140683851 473396829 142397336 949012302 690606548 845857418 261161051 859952528 99745755 293682720 980160890 717134506 769424400 266654533 293551972 586848922 673865891 963452618 33767695 65859324 436221223 870296153 85083466 205534813 239796555 89266998 635122245 901969463 607954333 174536979 265483117 318188092 692931148 567578540 520731180 794262050 595385402 922798835 447847621 522909506 214798138 294828887 396513494 72818115 37507164 534681849 576367443 248052055 368542935 584819234 850378140 670808487 401703385 366800560 350000979 549523316 412024007 249509874 689711996 994311912 983593022 891405777 530890571 246154524 34699112 251296415 647090903 105667552 525699259 215741541 409439039 137455564 275666542 138892964 479900188 68679108 28637358 194563421 894481985 352299213 636933814 222429606 440319801 165980434 994254029 147642251 377045960 271722467 991771455 872070144 86695038 678197635 888258829 616971868 409492110 528558617 435001176 937811691 138506763 54750400 772866214 712068602 9968048 838673115 161762336 284680348 842978732 609008555 357351555 806813629 931890494 319797302 132487409 427917369 985914174 518183955 164982062 337785503 238309738 764276329 494052094 31677283 399179805 712444384 863907680 894636879 962530725 349376197 397752467 685491768 749594247 888327486 929169369 57848185 411196092 941189973 510129715 424023203 863148365 748602805 624597136 312855258 542435566 308737011 191194518 590594794 992842531 171958583 999311467 757411710 438451192 242727793 483139107 455588283 473077191 973582507 62046760 13362279 269269475 989052078 304077842 992714478 896054466 342691817 712391216 632246484 312713071 311950191 324914404 955481234 743210248 451521314 402435340 382041822 577589748 512939724 414270502 330316900 900317730 343468659 230760068 269591991 378836173 71142438 367905956 940281216 968999488 67197563 128886377 822318752 534841855 25740228 678952576 39512727 244613573 988337992 92825093 308392792 396131333 501877171 944148795 459970114 539764080 368587372 116851850 112673697 194560727 333362667 850642394 611399729 582988133 903819061 345082302 368263871 484138090 247548240 148781201 761644938 497447680 491663565 594240043 766756682 755561051 500339328 423867360 90572279 134303851 118971359 418907050 548801035 896802563 227752830 440057778 849209962 945445189 484691394 77282347 78886925 834539074 2882713 858935488 115411202 298812265 604209045 649851210 925809940 569022687 185943203 763208553 295071970 758482646 324930836 950340787 323546026 43099709 289335475 531469303 146681765 211231904 510802592 99142134 796401086 976268802 593554330 727777341 815384389 868536129 816841927 753217988 863216213 145883014 19385277 42615311 346950679 774325379 809880545 889661782 433411853 125869452 608927286 893894747 681760812 782427509 710016324 955497977 54599577 739254214 362751743 242209190 844143504 12869811 995619789 16369304 410459612 313983017 13800312 595026136 613945277 794301918 234499369 964491091 763535196 186601784 922648317 1155220 222081605 753105989 192932285 772687338 598411225 541132667 520738619 812624037 503217966 448197978 246692053 636504867 713599002 125489875 584143029 446649571 217235408 316239927 993395906 998419569 231624801 405739983 348884409 426239467 326802627 386866874 277589823 546264699 719611930 368984060 400871561 736379567 612607959 10411844 985010744 459278428 313128532 287113902 741756280 811022994 264612733 734768218 406953621 361171344 412903424 914037832 154553240 709314192 845921469 656220735 346921416 290825305 76380650 706664074 457472004 676398267 843734560 206855532 655413679 376787282 38376570 881286768 730156868 366565120 298457313 369541788 814851452 282185688 428540639 511888565 65807706 275691290 518381139 975821552 213823910 843707791 462104102 311402697 58316939 35681865 328736854 275076106 244778313 586077698 59320562 921275877 286189983 200005819 375903284 526547869 165041212 8171706 494401781 93827040 600979507 134521827 978514944 886341075 285659445 716987008 223462928 662412812 956548543 436846426 514558757 658482939 585821687 791444681 719326574 772473712 400375098 67987354 78546400 307824190 151899132 502967835 226126401 590146506 563007793 912431872 4012822 7519347 369549612 33620603 877233721 290888596 196158509 371996966 888054251 688514649 751424842 639977427 250030004 559381259 693098710 105264287 75169349 599244502 812411431 845386443 719096843 230562869 250416917 436045891 71831256 300786407 601174530 838246955 944271629 712335425 258157064 927059237 214528079 712271817 4383295 898145844 844980358 779183574 709467099 523718176 240174609 589443312 855280838 552059898 43528226 999712991 637005678 481631571 37652624 606915179 300654350 555144100 691007217 945497526 307258661 650302860 682978401 869244416 14076719 57915642 162955517 920757864 853340629 99436946 201782552 589450341 448228665 191208279 274181736 7133676 650911056 48754237 716059839 151022421 728243530 184270408 700761609 354303971 47617663 787083775 613036256 177741841 705547857 223604756 321057339 300674471 870123035 158099338 444659284 811969667 810183896 33649827 817947699 101352759 588017030 634558355 645498670 442560475 116099292 698053569 492947812 887878837 527384714 572151809 710502017 101728741 957989078 42422581 604353063 81801359 298770614 586966232 713571446 325623166 51577071 7026392 228338240 700532218 556463142 54447464 534845082 451918207 236633980 684428836 620106024 394994269 47818582 353202864 212381020 930044188 399145560 37747192 844403548 318732908 307672244 980391216 481497417 307952642 779891878 766250569 759751940 618216984 429334537 582454522 489917095 939824629 676028648 211381485 186227879 865829357 766351132 976654704 138261931 287601344 686402430 372753311 743289082 877372477 515844164 403408778 153173745 497516369 343344199 580223238 735472179 242153427 151456814 709331320 306076227 892024075 54245293 594952807 966071511 446221106 116491425 2665320 749125652 491593679 470475188 580664205 902083390 102589497 346656785 958066725 293553235 714849130 563126570 98902039 131344585 858267498 530176933 266085721 236172730 963174801 867967725 634491706 714177117 934016566 804355870 590902839 165348423 752063026 760736468 696459430 445981231 215227358 819152764 378654205 424114301 247068735 727868322 894257526 970116111 302546836 631451847 521883453 636135157 200621687 393228983 449706748 552193934 726457530 97984440 181142112 179383175 765115706 949506825 979470687 826764455 541126545 933211382 928703910 401111314 233221239 167082801 586514714 346227749 398760743 791646145 449700910 612842111 520900415 908689776 213299556 544750260 350443801 212980999 535165993 523018723 859610331 38042186 56299634 345478097 652488842 361770823 27540865 861290373 736681760 656391352 293880954 940039098 44611830 510987921 212200235 758534749 467706847 61231122 254441206 700899834 442199565 520404170 470197262 669191167 771031164 121773128 263683694 173134353 396303485 551680359 6625033 70821859 902163982 83526752 368691717 861322597 886870949 965787354 792657361 782927560 273074496 808733016 409673167 115803581 68657594 810648158 767267198 410910327 249435597 561396044 97302910 118609662 246770118 256450322 623181130 508687034 109639789 966367517 741179847 487047742 231339434 721800428 163201577 490956789 3725683 802448700 706113173 163300988 151967417 694896827 754013338 428103620 394193800 564771409 318414452 525245786 389075859 637846915 471511800 323241327 666477160 192497870 189421970 284297200 577080616 948534975 519238698 16435245 131763809 880756452 968383358 289865404 16349362 727618989 768059201 879663069 931254324 279456189 456372999 341322930 405733090 334313374 225446575 837486986 998422512 631033615 689788208 74471202 938621257 355059876 512578988 921197996 494024914 291573681 377849061 908419547 99334695 919702092 832714598 43569784 13878146 308837070 199315375 122272834 233111643 172373446 428352860 335457681 487296213 713181564 333129625 973046604 668260633 944128151 766091241 440172202 674720747 738169628 888939817 907946596 187115029 95092182 132441848 344953610 949538592 600562915 934155304 643107413 876583356 403185157 288699808 599754899 365650678 648116534 907441562 376111354 929036970 15426335 643763415 758181855 812405884 665629194 180368947 47300259 530258804 956125994 50338488 386812836 962131666 965780353 397881642 773629835 518646582 713259255 846648524 137000441 16627838 356140867 714377652 448041157 579951169 215409309 478012007 855689439 510100815 142245455 763754011 437235799 388890421 242820708 693786164 778551901 633404488 294706755 748809485 707722170 989233993 687893780 654303340 521978419 485136335 239277058 80997915 473994224 593288019 460877416 775172384 98614880 335987105 22123295 981735328 663373035 74472333 297632359 748640933 518899974 56035175 458804292 381262694 547733461 146870005 667537501 338666550 210037729 470331953 172049072 129868126 47946728 396142064 248164064 99459741 219367764 353863962 575635222 42497471 651594669 577076715 259328894 483898364 843056370 697094297 581793467 428314407 370087145 87582463 146240524 706975859 843908419 633839414 635733456 817101702 28935963 787364732 554056564 914782369 636147735 600158666 812439256 561520380 241246253 365692206 585026045 300228644 238168760 369990419 730316612 381465386 473919627 754837656 89973893 368866459 370274963 855054677 199969757 978578159 50754770 737354002 440825912 32080319 766498249 631838231 528288995 71720869 703822214 167455528 993733854 575860740 804252378 599435706 252151670 729427060 270789368 275093332 72410204 987917805 642771154 618467028 134581082 581629765 358426387 542978508 771123899 930545201 543177913 8373260 251892244 639859959 426419456 335944050 348056590 727620970 649085621 340665686 621033300 614679681 132408662 391040180 925249066 561936107 468991080 747938295 785459306 51442868 420969617 310764016 892050890 488630691 287287900 699291327 523612774 381823649 322800306 674905606 820787691 772893911 288540224 198387874 230857963 607156571 560687101 609042046 277643376 16199385 946395074 807395358 965695225 929867702 374957471 387557669 686337092 105687448 738326222 97029644 149133165 816000953 162989456 335055631 624835571 745987787 686831215 287050806 49337622 653492140 365976849 12250212 109903193 9613685 191245472 590029185 739180450 838758785 41058330 845649535 18940378 61150844 124188336 653803597 598183477 960588856 89010481 17380336 610207832 88968952 573664090 250954327 515915518 583702523 501855012 97079406 423649241 1568877 579395195 27375777 157172155 637373328 132503599 168122264 402675239 478296250 289890537 56465739 363525809 81988019 399394552 559655877 765434582 857614155 773950614 271360455 249920537 393320000 388453369 441306877 484744273 902824751 587392127 994443561 157279973 123098585 167345244 144741673 594984715 222818156 519627437 440939969 437732184 279238159 420154016 285075406 317817223 449951122 727126314 170584441 481760935 649644866 583577417 878368177 18815317 230443969 465597074 488290437 873940362 268855479 34272668 940553153 433141554 184539197 360368774 915124390 148767792 804221755 22176074 25573178 214109523 435350394 136546117 248389252 81780755 378584432 148816731 698523181 668828298 566642428 76151556 195952576 621837394 960915967 417028294 906160603 765027763 117327704 414078907 569200289 337704980 740122229 459994552 806333810 655597075 956683195 183787647 559632748 247379200 412954720 391270429 286251335 631584232 915322342 764064824 480232338 380427524 450272958 804558306 939217540 671649599 287174844 823993210 744206169 277282417 161281580 180502770 425666282 770644428 311622958 926497369 274138738 466420167 364236234 23957541 463669747 152995713 643307096 549050339 256691916 914502426 70269639 365542804 833330669 702168510 813500370 480859777 765591593 283872389 657438105 718340987 863397721 176492510 998467950 922503721 870778444 385423258 392767726 161600694 110773292 342293194 480740650 501847243 278981887 539135732 429011337 90691854 715640604 34644410 14015457 559486378 56972816 515425607 714135530 820412825 602887624 172498143 747122590 642113562 800101563 351191607 954357341 832359565 208754107 717568907 471116997 328914949 932621053 479054155 283785102 695197261 858247671 146570674 166712429 842981068 343899196 910648683 322847596 944450825 53852619 58563492 362870734 744401033 349322618 208375712 90144396 309757822 944284404 979756048 210343724 612224703 46169598 225431781 225457621 585236080 537491163 862436989 212610689 96108978 947888667 599327305 622305551 976599966 5293112 474200345 81654563 91084966 564918143 221256335 188156957 31415038 253639921 154702580 997921883 262720472 159190217 297911673 76171410 568723000 404230055 868699434 554759614 764640388 899389151 185912973 358480035 244763519 864912448 780379346 916824872 944518589 879527628 538492493 958540689 921601861 192803568 416847576 130250048 583705734 147223808 551050736 698694575 551818904 122423795 933713342 109827217 601929049 178684570 423299397 31172464 118540912 393035924 470802876 415635114 592367258 87038769 398744348 578437892 329414074 154766167 696692517 862471370 905449795 168899889 683287389 488965373 265566767 259786953 206156427 177225963 198520828 837675428 166336276 960096982 413906395 852343082 815181134 720721657 619671790 503325748 614330561 762613350 575552204 536880491 838510277 33399737 289165879 316719542 227561151 686109718 543007237 993181796 574782731 883088429 991247422 961993248 997366488 104386803 85526573 996874983 768998669 617124634 928109597 71625892 277300804 473279376 918587845 51051909 545294968 109045470 393625075 416258108 189183956 151154176 931840801 757133688 766647192 788287571 7673509 946311109 560713889 978846830 889703692 398865201 888199819 436657280 755802407 798441623 399606791 393232762 823034423 200853020 324394820 592883083 873942337 380328421 20644632 69122048 198957423 841397652 365657615 495658842 605538831 991488737 45032004 152902924 511015556 42358486 905029239 567750490 629716133 698653951 130461382 488132081 990700265 860292253 741177911 882104689 143418707 91107913 227199029 298222325 61367662 974875492 430501790 902723163 965656441 160859200 690863956 638817785 948317863 214993457 763719308 919911243 531209957 313000583 746548740 26093186 477786222 942641603 896176033 548641352 233867991 808233983 794446144 977335053 875319109 589568983 681383984 303136409 721273008 527131453 965511911 306437608 835475883 240988416 74223314 876244062 236476474 254228865 344449454 334802300 323531622 182248076 696522679 104628527 409848984 496569208 947934849 326244404 893441885 862148610 392836766 775828256 742322659 758896851 390201994 353019352 117647965 614679107 459203878 32674399 69183344 965095256 300431720 521045123 226389433 459941632 563445806 65967533 654008057 158145565 603643162 340880987 682287012 987025060 376567704 252609509 214180330 961492847 61016437 745056171 56963558 941294132 454541318 978240937 575193626 223595911 502859698 87170396 56001563 849865223 843579592 663405026 381914419 402819982 734515958 401572656 714326923 901812741 595300229 131576971 95778731 470120469 475772627 898051102 499632319 578717418 493022048 94775598 335342013 927829791 677134447 732590759 657174945 108612243 844474084 399157004 228371441 889887916 810352498 42142048 767404279 793609629 859043165 306114475 734428880 79038596 64295307 359280572 448074110 459083028 639149859 198290187 203425107 567304254 781139791 745885973 12612349 188847394 795262084 333935202 715734012 383505141 509485236 195115144 225213881 897225808 935246591 480442111 196718378 669116937 257657127 650954674 139569693 540617858 378266849 752179074 78411017 170500530 968817764 37159978 799406566 810023949 144890809 313763068 927419737 958309062 607402782 486732643 248947460 459221354 471253472 830658852 330985874 686986188 955618134 721582308 831143338 952571488 898386848 564557433 977207680 405230241 990160686 597979741 125870142 412970388 710299936 595052836 811447766 155350403 338181511 550930638 247478168 527215117 245772667 179949360 882886253 860574031 846309993 681091863 578331174 285789539 885137690 91975932 214355143 130570213 686448796 209173761 277044205 477055452 622957080 481455997 502774973 184200534 613434085 648237431 673635640 99654310 354633415 533653972 310179030 44845027 550445820 901569939 897513740 206927512 764929531 777401703 896074924 657666041 595385772 670753239 918507045 184009309 268422489 716862790 148115142 893236619 290940609 218703020 634426731 971113854 109778621 127165355 286672903 241427730 119693423 550082228 298824587 528200723 201474942 357159341 685264600 473604132 128269409 595916151 67414053 2647315 367711339 103708604 421117300 726655738 259439809 422575116 731815824 714526283 484662835 716582155 206948370 573476758 770919535 299106237 158492331 761864934 832913830 639725188 734401257 876147072 477759994 300431120 823508066 137474116 846196626 237212969 529346062 704186877 431688303 629655539 326903476 898362821 646568666 552160622 886053522 533829759 943458887 187353293 631182491 947104349 440470558 316274664 173831173 56143760 461651176 428234053 274690830 840040779 780256065 193636571 373328152 907697661 318230101 987007272 57879253 922598126 883420425 515668136 76498354 339555394 624769978 999711344 642216595 429031288 445971845 644819390 145427239 284764307 505346956 893935819 221158917 33581707 233918936 330382089 186948491 781077525 250841384 532067410 959413402 123594844 553402631 620141099 585076120 681926120 701033297 536082636 253738341 264938261 314789488 526869095 728498140 828060835 496766005 532410195 453979776 388017508 201149761 777408002 773920417 415563165 586541521 173022293 495501145 913018476 214686982 834653508 283273085 444796919 574260045 688308173 135874967 549385728 188043295 515676563 32684294 836240384 738827316 898677679 799785349 643156305 790488708 463290192 179428643 454844647 240398126 208893685 435183418 329912003 92984578 80822996 191693521 870688731 827553387 849015403 208878857 488838204 255202256 837694431 870506577 29590519 481853464 351740014 696407005 473987892 529571415 228929751 739669514 267016173 937488107 670336052 872715140 357237636 951623110 299467497 409889832 725895096 342730977 844498934 467970831 859493979 952189690 427723013 583836929 75862720 135935360 332726071 806540434 640134387 607211893 68034576 105757740 18544056 763500543 546372801 940000631 869629453 785589386 849721651 640897058 561544397 44313255 280097043 845012056 36189008 340345880 920645281 771135482 939270141 697260373 71535576 886766919 694374671 528007765 78666093 490713004 247128529 300424716 139795310 26675792 295161804 460121266 720070130 251653989 814867612 657018276 60147543 77302399 156803121 893568057 672757145 586848916 723724428 495968940 260667528 515592795 878405929 120125119 562514145 368641365 34510506 748136574 379796482 773398325 145930661 839731130 630289188 359422399 330963440 784115056 616599382 903229407 740820385 628687852 763085421 78893000 224237866 366733063 167814717 463042758 900332526 888630340 476717982 593544891 894681350 521676512 168397046 233462383 633908409 297370122 698549995 17615018 142638499 78436059 833892582 547776020 861568778 819954115 352681536 26329033 651119494 509722410 279914708 346273478 858249911 838494620 419992992 280039615 913970276 361904783 906513228 98686935 561780806 957889969 827838761 247377114 298354074 684051898 31210131 920944924 732099385 728976211 475593902 60569649 623196469 596456558 468683364 96692691 54549460 789818779 701123026 467460391 875376610 527037565 244510914 348938907 511185870 884377962 63985135 149763942 372256486 944566391 648763604 875864087 501935824 505559733 20054291 285086094 579860101 546770345 630385173 83010460 164189687 515183709 99668460 521757407 713498056 653772950 2315742 938011844 45218568 571614359 699867187 945904669 867714293 756639754 841477356 368934554 357236752 561347401 904937333 32270480 515042344 250884363 842337954 167274559 121844596 648703268 346737740 680679566 24905306 570771629 463972903 38778488 431461361 50278088 180124023 286628658 576436882 226841147 214308943 131395548 26432972 779095223 807829781 383280589 111129877 13992961 884535900 30336996 750096343 848176097 934863413 843218576 600900272 359458558 97287964 808523878 860614084 859680697 517051745 582794385 605521746 779213559 903377571 469241121 118698854 248730323 606314816 818457528 890949536 126985801 49812864 695959101 886817425 762442485 537551447 198339763 182864383 328911149 706582222 929735896 98729249 565983843 835883136 289529403 268997252 401974103 113506822 223062867 934405056 113184932 354114533 669183492 93221239 213885041 317674275 181770192 642867716 769661195 39621545 109397267 342901164 582413767 700462024 55966448 91259146 470808193 863123737 671323249 442996467 626285802 900014407 516609180 422043892 292744393 624198410 314903063 124254268 170298489 485930001 216414013 48506016 660067361 823547535 419159167 672063633 297516464 488082301 211389916 120514204 173562225 954930056 358995237 697101452 732002764 109481051 487852968 120998269 735975535 781633851 666480131 267602141 962942192 32251421 653370017 538244877 168309957 919760876 260740881 493449983 592891831 707909002 55269883 899783501 373780563 436516986 286360855 691613124 110493380 808923301 532719052 661208288 158212909 139003626 973382013 237690070 906924268 881230596 988743363 841079944 52163516 955057111 645639873 137979400 941089641 305234720 185013928 184570930 918777732 75128285 90419668 743906317 384018589 214656848 486239206 166200538 669317983 217865474 660666449 251640646 752588451 625066831 869743067 211402260 638398547 72789884 920847383 191611713 101835455 117508321 672525872 606201279 765382535 365796384 778897786 307346119 97219251 968141122 875248459 204970085 655560510 167025285 578429303 79326328 170211946 898488928 497304129 239142969 573014162 329515721 12318375 542903573 943155405 275829807 481940043 116966181 519691099 666435478 773295584 695748053 312302996 409366600 963674877 91267262 171903952 57748518 347198572 652602087 649158731 458012159 327741559 803026863 875623285 476066299 200723468 393972574 372287893 362612129 166288589 503291193 183673787 987666549 27025169 114563085 61782619 334489669 544909177 604429723 50130094 256486166 44816152 137702290 563606151 329773815 611245411 742377758 911129692 447737950 245435678 161983186 854668333 728020147 747789333 814893739 336448500 525749289 221158506 316599011 658969987 281453899 306735958 369111345 664590588 333933933 353789959 555100377 358843694 501171915 975708318 934381227 114381430 462363682 740318952 703690965 795611941 914814962 930889633 892549909 327490712 716241960 414663114 246189018 962594492 876904934 354948721 86034854 924845165 863260949 545830121 35094154 952863411 894459860 804408159 15263234 507538484 156780400 372466788 759593337 87789940 877190051 437151038 353474893 719803320 842176924 877166191 772399907 258062472 427380480 943080213 575058533 418738965 898855224 135946832 960558365 785656816 232172699 602540134 879763181 383888579 119001429 875167768 811493669 937393820 986796386 528997153 844241444 336009288 977534132 125826925 118863192 902121543 163598346 245362153 636993077 583134633 569462239 345317501 874862639 730559064 743942351 264959016 576514824 167679173 175995507 325541952 930393483 889509342 919834311 722100718 362613254 768019178 990208769 757305119 472954804 169604734 675529886 983285397 451231371 97941444 239717671 45517930 35377753 959879715 849016922 66462074 103095963 582407340 241245633 571916631 501313306 87940050 95836263 232476604 962263496 99172620 797162398 50449549 569874905 749051969 183198385 95289377 973482702 435483834 501107884 257329701 725254622 437400217 832198331 794078551 315530432 814284740 826443757 670697355 99311709 416659085 459382436 715047765 454659981 239055639 696999728 607879523 576197082 490064715 992939836 525922009 111392376 438587930 941313014 836245645 268871534 175812470 59180390 563911276 68382765 248516721 316301895 430785616 283085596 18284351 503289588 71569671 929615428 774511421 544089625 526496299 496900274 194496768 826918430 638983885 480022227 24798182 888502793 748698338 440866339 135139938 782780780 153035858 359244387 840209654 594617387 203863876 779446309 910612452 192210692 28597991 489997189 711987618 799551335 794099196 697230600 508916942 199754749 711712067 422440681 932398266 49556185 166520992 319712645 615148074 309133048 475848228 571356986 171990114 293676940 897468899 201258113 784035403 334511471 679284838 202079496 364468257 503355773 8743722 27170807 644907807 515246508 386970219 890066846 181944500 702756995 955596166 444166266 775085522 69156795 616124961 906802322 225673240 533477238 88413526 269187308 492515702 739183901 82085636 349557646 247120126 476416579 732489639 885396900 265380023 153612895 666331010 176586506 486291831 309814185 443797456 599547796 428548833 486240024 865822577 276704925 163406428 522364938 289178957 513217670 246249556 921761956 909016615 655240465 911432305 117032662 827019607 281791699 667167091 524560038 578258134 426098761 102894104 463983691 962478342 143782151 916386689 987630789 797485079 734852367 626850044 501811340 642065445 495075092 649490137 866740469 295365576 705173842 123877762 499624847 914998070 999971950 118652030 895141133 538238833 496965021 196546752 814404324 336843783 440305111 450782087 59044844 61646028 844462184 85516449 539417483 785005013 377228499 482664866 960688832 79738087 182412776 586062086 114416320 300605324 989665899 483788929 881539515 813343406 265939149 749271570 360297052 306577722 208900736 133024575 784207718 900440541 107223236 326524127 367081279 811212428 807455704 964701692 83058805 223471419 713367093 131507130 475183752 987113795 441988373 385695356 522180667 767543916 308808585 268700901 40497788 955516302 331722557 160343320 476623975 520263199 548089361 660206318 39911585 318735574 87446052 654757876 894989844 812434987 937873443 639728488 352051717 475059056 84085747 292993503 430063165 906291492 159831604 214310630 404970856 301447840 141105520 810289692 871033367 533144754 562991139 589921740 725220406 775942992 4007669 242148720 460690784 954382797 657137272 896590985 924245472 356172218 469188937 362323856 670147174 447305056 37681060 29328840 645014530 824036028 526852937 574253446 835079848 200868221 667952189 893408464 600880717 587013995 834769216 208000382 863479947 95436936 301438977 664412427 854423690 751319507 817947057 198740472 208133460 138170364 681048307 896411178 650253478 323597234 178143007 347290065 824037344 383068747 935438649 736974449 406745524 295546705 551779648 14134530 183204356 920392563 260784490 35852189 875017547 401813737 640230123 714940825 252434826 910001792 766384736 719865047 486174452 630863951 618046057 550112075 778931869 291540978 377816340 251829715 108065478 827742798 61410743 629935397 370176855 968036334 551387649 598194176 754975622 578376828 894313216 486540680 785099564 353777099 462684267 996500225 46477529 133032094 563001117 512851640 252246908 462283540 912613461 628644685 332796171 412251847 223042175 125109028 132933724 812628357 927896793 327716673 431979902 413967870 482413235 316649874 461819382 116492989 421492921 52101879 401791057 721515666 569110029 95330871 215942039 675635648 241156825 298522924 472050843 877147996 842622532 959516421 164586871 540214361 147133054 239187842 86133017 249278580 149592234 545945111 469822162 180194970 272343158 149614214 24383797 998381947 594628718 148048671 972871965 939520444 57192858 562157298 920467325 148582295 731270677 700389112 513022754 524040734 637894046 533583053 742196651 764576088 3191696 571274439 289417464 587765845 472838362 493073941 321451970 692231096 839204023 234468655 77179210 143410505 113333010 372985763 672630744 79387664 184802618 584418754 781092981 830626410 502300327 28362610 984969751 518977151 924598440 666177978 413064160 177305803 126194006 396944481 313575550 114243604 741164058 247884267 610434675 770032427 1429231 878229737 967829558 853957216 846492113 539401590 635793092 153948549 834679002 953986269 977075292 878990765 30951656 117687894 497118501 701522951 491468133 573237522 371458505 34324488 868133256 827826239 72632025 724872546 473663297 534066696 141646079 816217333 836189620 714285494 379947501 671967483 782883310 454863119 465414076 907195540 837796194 586466091 72518064 961420275 198546082 107756783 282533234 203729234 675732575 606658525 599272954 477994281 954227391 162297882 293567545 841960226 508509109 418914200 799677195 693857874 961818818 28400420 484800833 978483773 325394320 806581624 853276041 9173333 247138615 201833028 835137763 64378201 476816561 730204935 216674583 376283589 481074524 597972077 275645075 534538166 802126510 646704624 71172112 22605341 909119872 147822553 743555996 785518517 104342405 469441605 318791531 272437738 395829062 106432695 23063472 796937049 205467154 206588441 421162687 415162136 260033388 423998106 305270829 55950394 321196359 875668809 344038676 708065163 281602922 252672799 487055224 112857697 583674456 921279888 765392998 52162321 929331853 285769265 157488896 584439704 587203792 837925166 89465512 721730645 743359604 815988787 418156013 204865165 505762691 158479960 249074448 94630591 131941476 254956814 226847690 9156534 350944462 972690443 71266435 181711868 505353318 444518357 682940746 910846073 638469635 184215457 987353128 59496520 303554741 900822582 230646895 3240463 492245792 870023302 285566346 649269463 481337088 596212318 904655238 657719348 715699869 797499922 120120896 572192441 849326762 345912927 436388512 313708652 482571491 337413648 142812531 340862567 851612555 782059866 25559287 335522570 941338636 533919148 255094008 280968282 885104153 907557299 713361593 438770773 941957011 751279969 673142740 230513615 216568985 970024041 411653745 471736124 534128289 47802879 479913502 26712049 875203096 453140900 451831979 60783826 971717123 689804570 157808648 454878171 651350203 344090463 884558248 81583387 197670664 243612279 899720190 557234360 366167417 222927908 52341427 9754293 255414318 878103809 95276195 619376481 462880510 27582288 438811174 8322602 221260628 712314837 189809328 794890543 765434130 856494923 688118599 697555158 562563813 46195448 935838045 742963162 422146727 637639655 700354751 724019420 44181380 832329313 87126823 575517914 475748334 358377438 115696443 356858394 475432438 961599579 259689215 320109423 193625036 831367053 162787482 338788821 294830608 510003180 248565819 417964677 88205415 343135290 518806198 43848323 872553625 774977131 695686550 720026015 803838916 641327042 982331514 403046093 607253434 430594200 384319425 346145980 284141532 792389735 762301280 91674978 616254162 26400666 267949658 878152040 85637641 213656995 168283834 44175602 318434690 155591533 302920647 676819338 573301069 421423115 52103103 255279407 39811420 116699992 526630447 33278461 567672028 534705638 185852274 595894204 85968030 348368937 385213638 375041796 465931794 672066182 20832709 439605369 407401137 275783495 964622194 606085482 909865559 924411990 19926505 886376201 947934293 363730930 629281259 114835948 795975929 210297463 578595 880437922 883189843 273922317 321437813 264264067 824320628 123450093 901296919 310055082 911372287 703231651 604785205 417318655 479804080 300601944 177915673 158096188 649521357 243607093 168920886 449969886 980629170 886178075 807476972 990235931 292964950 888303732 999216771 71517422 739804736 939610314 269474200 49263243 119247611 525756964 500863320 235337649 424149277 178367568 248129712 558977145 396467743 812672042 730985198 930867772 928177835 498582581 798133704 353728493 272401802 668030028 800066232 157238390 88080041 460982262 674424260 483583298 724173870 738591255 625979805 766085871 240798298 695718650 487156953 290917757 181996667 262531940 581248576 180775189 620502410 671576691 460181296 334055274 493932540 174304946 900292071 845202042 278087969 231812988 285507879 938029425 283056600 948909162 705567442 500443176 526288852 902457348 97717823 882314452 361056360 748213883 366965355 946948782 213412697 58991693 623153244 860523575 118488439 356532726 485898917 131860208 726206444 638655826 775209827 557734950 534594045 510754274 69208733 773342774 457615398 569477146 9067476 837798123 429648252 504023846 656628024 83241454 494589891 591300200 590358370 344163419 238497635 122938295 366490677 994762348 770038362 708909649 617130225 36996470 932504449 373397574 814218483 819205894 567140696 676211528 554623456 566444176 219064638 453845715 650590204 849192429 596342617 742066971 264655645 173906997 705637537 457614837 794368175 645551014 494906958 109122836 776778035 329419501 652303397 887186916 276976891 692455504 575724121 151404691 933061492 46534844 96322311 198375223 607498674 134161810 706548619 709072121 479155450 733491475 206828312 409084057 11947379 524450337 736624116 202437345 24965850 685810060 870744849 981151449 220347839 349234161 606196336 94082071 105763162 770065982 186653817 125558996 457840675 810733699 103448438 133571154 912351741 826033121 337374560 776692111 177023175 440628382 171363718 604617520 79726639 662091709 92853965 267100126 677387037 506285545 218211388 306767545 492244805 352417869 660576636 139477672 877983829 164372418 994319276 224091892 576101260 611112045 762116012 434403825 692642936 682373017 411567353 461573000 655085475 193144598 272967098 334007778 539239937 714875634 495975338 46148915 263851180 194030819 342626273 98971238 725770190 966458010 131970114 59795555 233576181 396126513 91615107 169289717 125662031 776096235 804389201 125043835 680101592 447195323 116832021 884419130 519982047 829763097 549260491 298216657 998864408 463831038 782749182 577474414 625856338 294122229 565023671 66801689 889121879 304135197 92456574 42731088 324348245 115245808 384534714 4105782 130652386 285187658 874967597 4003735 455936805 710538558 104682051 370054336 136390743 554061642 305453143 816924630 45234540 502399835 461322651 861052499 716598986 801787212 462621861 660978609 706155114 15221578 728168671 850012668 756639077 67176404 37323907 180286733 786919776 34490840 715433192 773993905 616938582 212015461 210161823 235463149 974191811 1561835 806895329 440273272 445561536 596854142 588376279 40481539 909728324 433157198 832769651 364264074 582470138 899188615 461800169 857122311 627130166 441882230 111020011 130084795 844031124 425936209 204008862 464912931 488028063 485971143 549763095 265799429 922404527 63013377 152610631 469909836 63581394 107838063 581012910 276356522 527247672 840910279 114930812 575664743 635336104 321137477 530455694 829973293 4004009 454080417 279890128 731688808 293083181 987030494 748926262 126022220 715440532 66886902 419226351 40027488 16202403 429483181 664452183 409126444 858888395 195246116 377544534 618898765 932548286 758528414 844462843 36814545 317271167 913024729 172831759 789450343 856854364 77107713 98557057 50628836 137943611 863299884 913491021 79331344 503246935 854261802 344481024 127041914 52039589 687962429 369048361 489166471 934325067 438028575 48080912 707036950 215040753 953648960 532228154 922987947 85078906 432314126 88519776 278059323 829075307 896211093 493457333 625422988 418366684 970964349 676945851 345212322 64268216 983911338 835582197 297076412 107932211 129120056 979906590 105832037 753601062 718431742 686492008 467067476 162743542 431242559 880176580 470985306 643608272 501701493 712520740 813954077 378871753 71193570 684294503 395515626 759130886 269593059 839099552 312172004 832801658 809479922 570344631 363084035 565407744 204044569 915314201 394532391 895356834 41682701 130766030 95648461 99112047 13836715 573981503 614492358 719429482 862064249 261758783 805621108 5690078 563783638 234765514 537069419 338553471 445847694 80240844 357226290 833160609 610656329 932048215 936900464 965414160 781795676 364557172 231035295 840944304 546107264 860609303 534498790 221129444 840124249 212355015 14184629 940940466 599572410 749626112 318018024 671284786 69226549 204457146 688901855 802967627 599667437 390631940 572845553 793208496 714451062 274713865 32429074 998703276 760004096 696711917 18931035 967854535 221811651 594599191 410759158 680337774 477724125 503130768 1287391 758253533 459588243 615027001 495684606 800082100 709360741 505376020 556345752 110402083 997607243 404925905 566570506 605157306 88338679 47086635 278606565 686779214 924280538 424505270 875465792 899707289 799333131 328748949 34490963 328521560 917931367 952972443 625675278 3904052 814137667 508135869 413933747 765934460 601201560 258729392 462686991 623249767 680828896 942953922 711670917 880992036 911049861 398913726 921758978 35440447 373869079 258200421 352991591 178116534 455010243 48957564 933460948 251793760 270678254 362123471 888042717 475233938 631256745 42751005 512816192 828394625 549068421 438533902 518671042 823180273 515669783 87161597 208343430 507215736 312292653 616223036 160823846 444901390 718979620 481812103 937324294 280331443 623289795 471316797 986417308 816339040 606099648 368754935 462637565 747695799 389707053 514604731 184784137 192868484 608316575 855957381 836011701 47886922 505409166 995755233 199899090 749991804 1303397 424606350 94240143 5673371 639405342 446290688 317485663 43126039 986854005 846313367 321569113 162273816 804406322 539041703 140678014 196157712 127242443 614436461 633729252 315474868 953161863 738576409 373577222 930525438 297592630 189659008 22861476 153928404 823726528 482134495 970888463 84877821 843605141 564692770 850019715 519600876 289761364 805732303 870048413 229673570 416355013 957167105 289813166 309798233 26621540 756683439 833926535 167148837 119688032 835310314 876573834 151679090 115663819 129192753 37959967 526860585 994463534 512540116 381537579 505503555 610927990 631850863 726291532 838454566 211352610 824995883 202080173 579070168 642957062 566227415 336798271 269677798 884870456 137906823 369944128 512058002 120759412 468859628 858537220 751421105 790885360 857406382 828112029 65633277 778179284 161473786 639851934 510593029 864179183 831580450 35007616 987437737 997300160 972465775 206066977 118446720 993839467 908469289 94765553 400158573 55929674 212054112 881256542 128678614 9357227 358506753 625789038 919699641 308922836 937774272 49198942 707220022 924869302 449901211 860928584 403283951 86009696 963346904 691899860 94301601 473112795 824136853 147656178 849608322 980044948 723349812 399611536 612782031 274023907 177981813 715590021 878782550 431411780 206418750 567212889 113806504 955122117 81092879 716560656 638059297 773727367 826788244 30040125 368380088 210824952 361028227 233307605 548115240 135409774 985899101 17134456 853937156 408962837 636208239 983152765 20275714 368385397 346036375 880890463 477863461 887750612 624973859 783302297 826695188 56842424 539394568 597494688 481203976 281882266 494798427 16930289 953380614 92431088 240000364 141127380 372364530 831222146 794798977 838285087 188562566 244533580 381575926 514028012 859950577 543453201 794857205 279283071 518865924 204097719 847549107 492226163 724823307 723313477 241106053 12191746 580118610 272114353 149255253 819908254 878079522 794342367 620022149 620192384 543571445 272293726 646106375 539000094 218764749 234102493 648329206 319868352 756020826 962508849 608331865 497722746 759910405 790793895 512544006 510195684 948022459 179231105 677840783 86383930 641480800 610324226 199349111 549751499 232084840 752458226 208588012 950205483 732344185 215406584 660650693 803666132 795292107 542778238 514660862 105009540 745101637 783041927 517083727 361061332 577088356 994523708 274375441 239984650 882124920 503284542 491787046 691729857 474315997 844896394 876718741 701154641 279098498 398892495 568192259 634931634 119552521 331059781 332591896 777166438 400097665 535938450 485957875 285690885 142519720 855239181 552883118 441178443 428518785 597484063 6207668 183909403 671281375 327415217 425845255 890086292 444347357 730529535 712345921 758116226 703749266 895717293 19013115 21360107 482901393 890752608 216996755 155218644 104090622 356736416 106998883 155099141 675406309 619067018 402597261 980314122 781572480 28980446 451837157 274200128 149331043 356473084 932724522 527646189 291685930 549338289 202216214 259794615 486787138 334423562 499238710 465900238 61015456 791373825 794928105 936875338 129405421 38940285 515954891 371069746 167782483 950799801 966118719 227871320 738218378 578347698 694882267 199255382 950096424 531686445 620888938 475899373 524005922 439338775 380996792 473717330 723478540 726253654 458009555 44138501 490835561 549164689 132426927 302318511 113973739 163661961 88956623 465031172 967248831 177489163 781148894 488202282 979500154 489886807 377824919 175932766 304429969 552028911 423221628 40625122 551524251 706127944 927976098 985765378 563358030 11957540 97034693 723522938 580343651 860843027 619137408 595560362 64177770 456080776 347235179 291251996 166671861 245744098 396198369 327456782 123468186 24471301 8639744 784577998 906892934 333969807 536240481 524228029 332192352 657504848 296827186 787343990 600031150 866017953 97549928 88431614 639798015 903971985 87408832 408945503 121550212 344959445 459957977 27577023 948066468 828103945 95372956 224428087 646103882 488129615 408871562 608667957 435797962 488548844 839994247 607058828 110828256 854035047 776779561 495020316 893752815 307219817 944365575 175652332 74075603 87353200 440662571 764889689 976262382 550286682 576448638 139332452 625399552 202372539 387729362 93152024 782122225 759398270 866086885 939025217 145452368 175164798 794583465 279082430 219898367 975198956 998506998 687820348 716028740 808831409 877409296 267516374 991577740 231911388 768144199 523358303 637951863 168740251 807279227 3527446 887802293 173389555 256360700 697316596 457311520 322816259 562852399 762554837 459324872 796972601 983533651 814177684 67762240 718720594 310651209 936234881 93337145 730161189 452310078 298968966 66480360 676297481 424489985 806850027 557731139 59236589 318654448 845571789 548662947 942910889 230822811 83391173 610873627 823681182 997432713 24602243 525848388 993324398 548200219 920410643 859805656 851583498 686870943 961120559 903887134 946641187 864308114 737928199 21093235 438583218 711810393 143991164 799553778 653867839 645410777 513006634 380692977 282595045 754393012 268995802 716295749 225031945 394131028 520554193 537252839 699817375 350901631 951430634 652006246 239535830 755998618 671852412 605464024 643344691 324679945 596988237 373982133 395590712 275495170 535841970 608990076 570193277 27576865 757065595 177245732 933399922 116660506 883099620 179240760 614007461 598765104 368140939 900233975 526550633 365770787 317619554 561395718 285694636 110592780 319044512 967253421 599977406 532390977 218428965 776575678 716177220 796081008 12844871 940709536 461102011 823299352 183761969 971357619 863021802 777205316 941508359 282920804 765923205 433781879 894074359 457109619 60242209 211869950 44709489 977277278 674358823 771408554 769409449 342473223 76853713 176732931 401810058 271704796 316079439 472888099 596025954 981082920 95864880 319850972 933871374 599161401 898465033 58362616 659043725 138604274 260148227 155457901 229677554 980265164 953772247 884183893 503665518 927865006 550206405 122373867 573787628 192751686 866138864 301013020 964207853 258856650 722414811 241777350 235438829 160737416 733211864 654626157 539532492 789004982 963025947 308892345 878772089 578493583 604182297 480051976 236689806 536014163 263454470 719168425 210369724 491409210 775135602 906316274 480879332 883203177 472692819 964776926 450084065 382486003 106970131 980083523 273330112 589195118 342826563 267341614 393700013 444923145 866749106 180977649 493703029 391738655 33758907 824746976 883504630 508982686 681387651 581632475 855983127 272074677 275578822 718342132 956876841 451342172 388921435 103924265 457956030 795957869 148837320 437132648 584009257 1648263 187234622 495874212 519892015 239434855 328999711 684738382 291612983 546566560 36017043 130837217 328157402 56894284 46217046 978882195 125087739 701707058 910248588 55307585 379553108 417226296 516241113 18180900 908920435 768687749 773671584 39391338 305715343 73136912 31217039 229254298 10062642 813230127 526463654 630668612 897645860 122612185 45396652 946664477 12543468 432710144 268213644 617523308 120167003 533645560 282581292 524042707 731171257 843815621 285288428 175870302 682603505 687994833 562458860 355843922 555103573 891047156 703094577 232835418 719717231 271294109 441355442 962842444 781995692 802604269 247141957 64017804 142290033 765322953 223554689 774441266 339405907 199551982 402245541 806167501 435370576 701906039 415911267 47496136 212763541 770270043 913547230 386409386 75028572 730167264 595803138 310010782 692958820 727025266 119276285 874188438 683973934 945190364 361948965 888822656 324473510 745390286 257104694 595017027 222332911 466300612 203704573 350263304 92419408 524410642 966267386 701296631 260306980 339584054 977384769 603117855 791666599 215823232 128498231 989406596 867345488 822579774 432514307 578749365 892687419 43208605 157838923 823714489 687119561 338453848 31176932 877865296 128939630 700150138 412972192 680020034 999943160 520073867 945082699 554976245 896603478 116040949 253240241 96501499 239047055 624875372 684142939 334189832 16504357 270179020 3994979 754158140 299001945 492643795 80012216 550342721 679519763 78172071 835292130 749744298 973614631 497369011 886371828 444479416 852341 757934245 314049464 503800174 955051158 610005052 575331078 578230850 364227618 684515591 376459425 645845183 507775996 859432929 982425256 730574398 523640959 794088476 431460651 997563812 807896995 438012407 588556294 95592987 586909944 395955300 943095022 175867706 200629251 598807084 180824130 38299838 166878270 579045545 594962414 365861147 54274756 521613332 625463187 800539336 743629453 194998870 700616289 334266855 424567138 667658836 686021103 403345161 536723468 225909250 826560365 940737168 270651616 590473731 113527437 757017253 736584198 767449098 396952944 465725244 93718409 788724569 592115697 622130795 57184872 368323362 734418226 861408416 133662276 224913903 691866174 595004226 193091435 536324157 161492763 655297042 448052242 728030559 557433633 536569905 363661018 68504229 836523421 288950567 689321085 881874100 41492887 24289137 18359826 590819343 408202968 307415802 25298694 362052185 911842483 538048861 61450961 178693788 237145045 825714657 923557318 551407049 606121496 872271620 739220553 719107180 846371743 277586482 192594761 101050807 780829808 929741566 728317722 289784859 861936389 188883706 653436790 413045778 504163760 965037275 244050983 854349770 517203120 75036910 414157956 282383212 630293206 693458473 242011688 418889066 273624842 417989839 184863603 451443713 558625070 604115614 765307215 167893645 688590056 299196214 750509615 55482636 963690127 491170598 803874209 990086630 108575068 654883611 346630238 478970550 168047404 958904013 620434634 421440950 513483546 293091104 442469409 932236581 708472179 289488816 967635546 890943790 800862681 649415947 731456636 31050538 149457785 675522258 570074554 664058106 502113005 861778582 856048171 409260818 688476944 244962561 589097896 887361962 729928265 125159389 601158625 876294645 663639347 241800351 526717776 112676809 393639012 16685034 209033047 128899457 459397296 899614539 998307437 197036899 576144773 652518247 782008152 329548017 491994996 381697454 280977408 547344478 445339933 971319916 447162401 75627168 48582133 987196603 621254685 234458948 806422627 749616172 381565539 829859142 231231190 968888148 265087070 553333319 843721494 565010473 751660162 775875036 785970114 903667739 159983500 810933145 205907801 580192041 168877600 186070838 286864982 665714566 55423368 862393264 118688328 832231171 392251044 857004466 705327518 696168448 883763632 231321702 464644098 708408098 875502988 125430233 629775840 510733408 703992633 578526986 72897220 166585994 449951944 284068357 421905685 495807961 420843259 472608028 41323183 197028409 260913781 117417147 415541117 366485784 985067796 880053101 28927505 440496303 9813162 611944707 786711291 318098854 514624178 782178292 70173991 549440462 147945324 769506561 263234254 162193626 44078121 689808728 524712810 602200105 572879799 973172920 575391692 818905175 142035612 841677596 334282136 142999949 702279386 352769422 654399638 852550400 6723493 376296876 644371667 462444701 563184541 667563936 41372178 66609969 4759874 617838811 799312318 914902158 586883386 42472010 470273299 932560137 967855950 920517301 920753407 281339160 189435551 997276047 227054806 44814852 985638439 378486390 942762353 856690507 193506938 674439533 855784989 985588471 278486517 831818009 12270672 139461073 271460468 295840102 5096604 205943576 552037686 374441362 532700512 945384913 929677903 544428224 761462130 41029064 714056960 879519030 305820192 815286085 139500408 143983561 697675492 320266112 629882330 753908298 761339179 64675003 326875608 423891797 926495250 29921817 194216467 115221033 308626267 110098202 418990932 545870707 636860034 364264563 746136522 89492690 910938041 468812742 358845607 426799218 133893824 450118513 321369579 956119341 449316763 591879475 162527480 310109684 718642821 289468526 971427175 590553578 7663435 708485147 233591710 378996403 22117018 179293482 804097472 689980391 284513460 642671718 789900395 867408050 471087972 201079082 965154360 558136751 968722494 772794531 858653979 350430730 599818775 737277688 207287198 545285339 82856434 568665888 226177596 741540778 592521441 549578300 943644225 46405678 899568453 41186401 431541697 995788531 580850468 192163450 757117652 941239603 785407800 460851445 568633785 161675842 716519716 583462775 203554683 443604606 759529782 930076488 954057630 264173208 291577015 897047847 151934436 165545170 570152286 520987990 577733055 6379561 568010283 7045478 299345848 160172415 542920304 857466008 248490244 887812464 638673979 893397733 639826956 162945029 152628899 483573558 247719855 61301600 944602368 335963242 850725549 733751515 42884807 128876136 841422229 943184888 697230716 903756170 322197624 223715254 561280579 946412634 436157052 176795202 211252676 450451385 354461817 25507917 318343851 720225418 156313019 90801002 716449581 561711400 999066414 291478011 834714638 95464532 487458046 612613376 511958801 323990525 972153659 517276949 760694727 808731650 960248871 372145046 701542018 695109484 898840096 59858138 119162948 549393395 721162796 177574948 374162053 103933574 412140615 476825269 235403174 756569324 108757990 348560047 389099465 560003836 870341562 546676203 881451845 129477958 730267829 297202544 725287974 507774300 992418401 214263050 22627259 462768972 24953751 937021553 477562143 692274905 701987847 152776651 963172345 700379657 262014603 202007120 470105767 499880119 476411752 796294872 253744056 728519852 30382056 941437444 729559827 714490066 486871201 983064835 369695306 210324369 500154681 6480691 814879190 999863294 373776734 398160726 1333355 228689579 343225687 397815700 358283758 732951566 209781488 610549745 831702848 587766772 418083528 128238809 869925749 891973100 976464248 309901895 459498084 702112231 347239092 937447336 811355531 799976677 766999896 671729223 512386472 158778922 545603925 664184316 732408901 969146099 236502717 667439970 19428171 749202024 29893491 441887912 414260804 133484595 629843072 24275871 362231718 921920966 332887692 42547739 937278171 99262597 595835289 522964326 674620298 855231322 84603797 533804915 307840762 149722122 258416258 357357177 896150479 528652627 453240226 573045540 252853815 109889863 682368121 798391494 365242701 311925404 417432972 143325214 495580161 47996505 357345353 186767562 903560612 319829858 103817396 95656646 533256365 983723755 219688053 624316045 542251461 120500791 170467549 865579330 10808805 938886656 159920390 409450891 457426439 507848508 212542654 804023716 736821654 53306903 635287370 655018257 270684691 974781894 527037362 573405931 182610143 628328034 387780066 808261342 276498530 770745644 187422512 960044111 715180488 765862396 490256242 49649289 970711581 368133959 166925286 81883801 561255941 359010811 330479216 387490794 429286719 149527008 742063996 630529338 637774101 641645562 55010112 292739774 869473181 198776358 685414491 403025220 949249612 386315116 398223432 633124641 181274014 629544167 881804716 641228083 795275519 143011616 216934001 972579507 247076726 621774690 678723640 963092621 145153952 626481214 758885483 102315926 623427813 206177941 73045314 771262315 136395379 576886148 467302197 36580730 365956063 549279866 527111742 352386479 889948696 912150726 607702873 803025328 240998011 502498708 362098096 544221469 902844269 877489175 75525124 574533898 560275595 407735904 76455432 75164718 378026226 326219817 47145469 555614538 183934485 767271233 668273411 681565645 195728771 801904419 24087044 616552259 455954256 606427280 340625728 108350467 58904151 367114254 23777195 893448533 523678751 232874454 579911490 223337978 334085187 977756360 692753261 586505933 758407330 716165773 12190303 212549305 550494225 46362996 60629110 229469975 628634728 194817119 514923495 310072768 828170872 483229968 56665648 500977706 35293163 53468028 643165714 589264517 551262180 410307469 377059737 722620390 334064816 449718423 207027607 366414079 416440493 141246524 378696262 950635153 562815222 650029588 854312882 303382053 711095024 679658524 412547805 394938431 913935456 92319125 327062012 145728244 819962957 216662564 112222917 564077802 788203939 178723465 332783465 572569644 534376105 76239701 883048221 313737271 31862315 674593893 528873555 826269985 53861966 76810895 228849111 12544286 230946561 373303585 362936256 250081640 624278324 659290896 566519619 259375228 46090754 200301094 324735329 119698904 856657971 285716065 749512384 843994662 224394598 346162694 145386113 518082465 855864578 917342096 860954866 546809685 738758358 415681472 565049710 721010920 875297865 805338926 274004897 758657573 658271001 552415812 976653670 681486088 956274959 3111603 164382303 50323459 939968396 571847935 469274772 762272077 619218799 946714629 80074805 604096871 943077016 913243863 17450235 706640266 192164880 578882204 352933726 458874116 562968004 234764688 877280375 189678618 467780007 979169841 716505818 993505893 55094060 284100354 215450990 529230740 162288268 684735900 412750571 398741995 528159652 907007310 220162148 362276133 971868144 238285289 478823012 908418183 749955778 558034462 726948858 198530612 633050756 513905362 873176217 210501954 268071935 654855595 919066845 160733609 546021434 362768853 494657396 600299377 342750299 217058540 612236336 935261161 385653218 100796656 877103512 976152784 416009339 251381097 313920500 781315817 934315903 847933419 472304194 87955167 444662894 132545164 233178807 381309689 357364600 149887171 496407583 527814639 472569515 493604019 86766354 995683356 296517608 327566443 654275052 558243108 72407057 142772104 873183175 225946341 694267661 518381682 248258689 269612458 625309781 856302914 515853311 967804642 894823045 843848008 192272745 632487093 196275838 358051718 29543368 324976414 94073691 740406689 613660840 184895880 267541252 556510120 628863649 630411304 381688941 888772490 205160505 617567045 932232446 730515282 4935166 809112973 470345792 608195072 92609236 722016193 677995873 612972264 257708325 219655156 518118439 607052733 676129119 395422512 688917174 9152087 717086224 247676826 488736109 988941565 251516711 567050491 134085601 304459495 187742739 302339890 898923912 202195894 422715361 417656107 244461469 89292311 3770296 456545730 766505734 768018593 451565070 352922552 335751256 801193840 43620409 802955478 196449156 995089758 351839055 60369243 41425965 497174488 790410603 178864615 40470984 716269658 810083385 510760285 265506035 716034963 448733539 122184339 109225765 827177486 910481307 227356447 271744966 560253841 440449156 290741525 719704017 236504622 522573979 759144594 253884042 987664588 154162431 193272687 677272619 62270377 97286046 384580241 351366586 917071308 532878873 125067838 361751379 849039651 285931247 984303612 253407122 905077573 330391900 455147978 479843945 76544292 376941410 455050394 669880361 143326352 248277232 25366832 591888713 52500925 839007012 462391711 588176180 849047097 423235574 435936355 40270160 441872469 727024315 776919051 431810607 105123163 852262461 933117892 34218552 831149446 384324228 159829767 226972150 191639866 159110961 148531826 966041188 976800538 225354443 106165741 878776885 763824765 642026677 332368161 281482153 181649706 112950982 869559558 189014918 490336975 135193110 555880944 89902096 778574144 841696059 715269181 778719149 39614433 646513321 89456741 131006415 721227898 9268015 25700638 215692974 773036897 260510134 356498081 800803266 130135245 346158071 643693152 400020925 270189624 405044422 687914953 741558451 510551967 807481884 949529607 878587547 960269179 838656035 934016028 58317035 684052440 565368363 416644658 79469512 633482714 776494074 368966071 730645355 205407203 893414510 330671043 514789315 892013962 237410384 479895210 418429117 464158558 934366051 30834022 460908509 992287207 963846947 987622769 40606601 194598450 700874126 303027375 231552469 386554751 568180290 409921380 180108480 369802576 925311592 178827885 199910967 388332563 753089642 848708094 719939567 725062684 186438369 306408085 162989395 384283283 945879956 853045933 555083220 346517630 735491815 34813944 839432538 232495377 792233726 716099133 721963906 844015736 822410134 264100267 130511669 212929181 551662982 156538801 639002750 134919054 987076661 426863082 953489207 42859754 980315814 651410043 804158083 827202756 886484303 11631716 118200072 251088335 365855114 904473841 435319150 736634546 623960338 588936088 570041564 96753019 720143397 889708799 557698039 995563545 654904419 919483512 538330539 600280259 360465113 876787931 646134824 807778554 303845243 392984866 610358299 107083070 573348249 920649953 977880573 314407946 620435483 485170519 730398828 19355986 739564644 868996884 705899463 859533618 207331496 960189202 552059024 670268813 930935066 896989305 397911807 553103127 429232325 786954042 913345945 403655405 232968428 138187940 91826592 532411262 655078209 861866998 213460801 589247490 791148797 51888785 279824195 714565193 655135810 393965358 917698849 482800685 964390179 125682086 187054094 229833175 220399318 823530465 291509239 893937813 831669261 973238925 569805815 526310893 555470060 683581558 719094610 511506989 284163797 212609597 580622275 973386723 634934652 819062246 711048757 408265168 161685316 351145074 252927604 907294969 602639346 710390327 993284098 629122768 677054599 928828150 51548784 337446229 793232487 615050191 305147049 52632632 859808402 532253325 715146977 93659284 231790541 306490265 867752569 556788369 758221035 215542273 899496274 967564479 536190265 74042712 318289502 319331213 920566014 272695718 472681267 273816651 884431791 187546278 390402270 215116823 242409023 324042291 375097171 733555384 219712503 157317825 979942229 413915707 519974090 726390936 231545465 636884987 451300012 126758004 414859328 713223880 268179784 561011168 772119888 91972923 345039273 844023261 630345024 525134836 417845726 211348558 808787249 332440621 975215450 428216985 159827965 197445056 992699335 308157193 687165765 774916612 757556172 891600642 209665661 335320141 395187091 986179667 500805552 694873554 259031213 436822676 243228166 418060317 790798525 33674488 297973521 132633966 88962765 302919237 828351839 598185591 3924407 898999443 492797154 12776038 891323080 490810788 972039839 295277385 730676351 854469355 955496858 88319087 717222982 28081506 612008885 182965056 79198777 205949000 281718719 572399114 692546645 82724791 980628979 886666396 145015173 482497849 600306427 801012419 546814280 737260978 469577234 780831094 177402434 399981206 918810775 814385467 351726851 563782395 784191190 856482251 448932823 915469983 385697496 770228359 934362205 651442377 613405315 347646952 933621343 572694851 949824265 369808101 417801516 51366681 542829054 24033536 710067153 890278091 181573805 665571626 999921747 988419885 664915856 739160745 111000249 448292702 580857465 889753870 448263369 277550444 66885515 468810347 947608515 758487080 313021219 394812284 487867701 114845127 897656658 803879581 229190937 102032234 701482282 973365030 287673532 836938282 796354398 746726256 364593846 625371018 174572450 28272586 939819881 942089114 348884589 575549076 770907382 807814983 195141573 153383228 22186528 2894811 793609184 434600992 756385688 898147730 642500064 305067882 624748325 571976363 329616457 333599943 40049969 914794681 700121278 585641940 432297849 581566407 864472118 510335034 91875790 292936480 65504318 91154261 471193373 906244981 159078354 605426660 504134101 32132457 8127353 387033132 472964805 608899914 985213894 887436848 450284616 102896550 769791841 453221176 768856482 615565566 885546217 169997203 29396038 768592560 422640198 728638030 684597658 77480810 990331236 574577290 963303362 697002804 687198558 467899496 772075485 560824395 502067422 111846831 768611424 656041139 846967910 149532543 566844931 817870602 838797296 141890056 639541594 772854603 478013924 156758458 942730462 882443283 238870148 872509943 983785295 568130530 124260590 262267084 833681354 773443101 599872272 626807664 473654988 264063656 818825149 599189134 387618240 30900397 537279495 421404932 819993099 187252108 178460722 299083653 502954723 656691759 781259358 548220300 635310525 15940106 463900075 671331011 77255553 32114692 977477420 494767464 907045121 602834966 625160421 191796151 80485380 162921148 265612431 285098198 295237694 255483413 271808832 469099121 326412823 518886585 170913823 649971843 277046105 636329677 29970739 114930803 726809457 64148475 263179049 416967623 808317664 994875654 511058114 475034459 128179966 945360077 420050155 380885176 870572781 273217491 412731327 667261736 239702896 409463260 792185677 161405355 210802391 974099317 272747826 717368712 532062316 171997514 311575554 389276223 562233409 392349120 654686251 179568524 21814126 441132637 414930043 862560391 45236996 28382091 152662329 235681414 305762605 254885284 860158423 231484095 682693133 267351058 149880885 402287744 205439698 411512218 817228321 421235159 416003367 250122913 949383582 708619901 6422171 974496881 760567238 557374827 892344466 544749985 397230870 77192453 786833336 49283091 769017962 925181449 522858906 751134380 461944278 113754848 679131924 861303269 776841466 56510960 888772452 792196748 664507498 621443552 46854613 700686298 318141004 393732639 158248597 480328772 329165128 392252093 545867840 542214257 671375439 52194894 974343034 929598458 993562718 207866947 186017200 410237831 578772384 726537396 964949485 296180940 282680965 740620432 892636645 275008357 172143507 16318382 831106516 370106313 391452216 733616974 414397448 914532827 824542429 89238648 276938049 70639148 820121806 251223329 992563947 268233460 887349849 167094855 559758379 145196294 587322602 817742558 369242910 284993066 455069165 42879054 9970201 101040430 962540231 958946319 864923317 631683277 71294291 993109707 483975969 292999274 194168961 441231233 910449938 568615658 588946922 558616319 500743829 578368653 510918429 919032890 217096619 399975016 415562579 262459139 285097004 12258091 586949464 63439980 343261199 949205908 318031286 285768869 270431489 569568028 831351024 170244759 654410956 469635923 932797087 627085712 108219042 813767391 132466569 415328092 79729623 279209495 844813840 538306560 824732385 879349876 215708123 692074634 52245058 211433867 82698613 92226337 818650648 540229200 850151300 209972126 534229868 152710837 7467368 327590709 445954524 856521517 205078125 230321306 312523911 743006755 585867161 262682164 501945430 474145295 11847431 297584027 705933954 399813112 951941732 667776041 701622058 954735333 601739787 949351816 882612387 861822647 472695931 827086733 20704661 884248872 787515254 666455776 167683959 384724803 756582822 104348264 988380516 425823602 808809715 328023485 878504949 284065787 920389696 421762368 973688549 811521214 605362270 86473954 470124511 724020052 75074936 931688369 883615214 418376282 934604175 401731548 857161255 410643913 163299885 687079461 334162221 805998350 647860001 646647485 1045778 20019885 840423036 344389039 880160913 661189593 926058596 451451041 439133556 640907091 805413354 246536753 838201957 355901547 71489376 549497558 117671105 532761456 736257895 730925916 139497434 124939278 232362265 723298265 213520732 10655666 770273943 133764252 219905873 324928202 431210501 321364048 669675619 234042634 489634027 357481886 926388828 5807097 317289022 283359014 406501443 588351597 693086079 494827344 201493108 320858002 690278438 816193359 820318684 168231844 937137451 584186249 554649157 535760206 977516195 86935615 118634624 763118791 424243853 722347907 116933825 3927528 406370516 933400792 449155728 399351608 673884720 495121743 58936208 272217991 360793806 543494179 41649081 428052772 2985273 323376775 639402755 154513946 111950064 210156805 967667398 348421228 568533966 338391875 923761592 452319192 500301496 151049474 657575603 790022327 659050919 158967509 819335956 993363487 178298027 464917061 598934904 415174970 728831122 762059044 338643544 20570506 306777314 317255076 801174634 542631274 13678684 693236896 905229375 219093527 675847139 212355231 978964399 394593970 846458603 456241589 457587684 586161868 538664859 456017209 767874135 746637960 688600571 935425721 865383412 323073919 954960980 681179085 909548857 701365123 477671705 365408096 660160868 392535231 981398370 795376960 700532898 795253856 301979729 783891328 93862009 61851658 296247195 560061971 22684773 39958283 794789470 768597255 936602090 539136804 254622221 477007036 147020563 54048911 858486764 479729164 935740873 223178972 271147089 773001096 224182966 32015138 475978479 882124449 557240218 820933114 93248584 638300768 966447009 156634405 755526612 175857347 240995258 367708897 908567843 526096492 693527416 438113915 298278828 226982082 876608475 827573559 432394275 559861769 503131101 573403535 313853221 318443874 352752361 767524387 555485235 976721593 146088946 131595090 862770317 404619912 263005930 677425455 222627072 678484302 62444920 22063186 39347023 473235780 539922821 330214140 355282948 541498680 895601329 668433608 982495913 410320470 231659162 151842824 798609357 55934932 411903454 215661653 142434345 11496758 238154534 712898458 861142793 480834823 484063204 589161367 607831805 865623218 392593257 778117241 120082835 458469793 184953896 391792338 827495310 632444192 735296777 576931624 955719284 733569067 439596502 433393713 276515521 596794026 722918263 246986644 479253995 758655373 275522043 649043829 554332854 385638960 218247476 719717017 738160274 544615623 501779335 864439987 779858583 332834561 565380890 727841364 945439241 750136426 903172442 838302059 17349534 133197038 878838203 899921847 368809079 643399455 150399612 288496912 527051654 737041184 558317936 78210774 92541121 427513267 635758631 100680451 225392878 190676212 828781202 440413160 208853062 854205227 154105392 501433718 252254333 645435260 560445009 233125400 404085222 646334440 979742729 852247 61816448 149726855 44527422 898093139 943649201 849484555 301365823 242528210 190585291 520282708 715977375 447234646 252232573 528701032 40807537 33737826 226389406 700450654 27198251 597581158 20727705 226161700 712982001 521859206 327174175 349283701 732266645 624923497 717774240 262893645 528979369 726603495 68488656 110306322 988509350 762651571 614449381 952773508 832880609 870018917 445073413 498901490 363327313 954567482 855503413 675541695 997629067 194789788 675771057 723263138 937227465 994032619 319605674 814546897 680621303 554359422 669998738 43857654 922483674 533556098 324866222 769723458 275203029 644400040 957416704 626258153 95362925 937690499 887639248 703661958 311592204 641826404 541892598 406889244 61161956 236372477 669274564 66677755 937154441 559021346 837935502 985231296 702886101 149881796 849573602 623870242 840980821 876167509 467916590 965297325 446585701 564513969 406699004 265255920 60342879 798917823 376908603 718986197 441079912 193812071 794329175 892818060 2738366 486225813 19666523 510309541 169656218 878665669 172508929 331638572 690298355 460436785 804801375 110930223 205056245 111647294 104521143 186345589 577902633 241677380 648486079 911076990 485015035 937702946 408158102 160901367 148914592 390954269 914048658 202592287 205433230 939213356 73292157 269825581 489211205 392582892 420239958 939844568 297315605 606669985 506724563 754404238 969031355 360851494 513026708 869833890 756294780 652260946 294228319 734946413 710191190 179490358 997571760 842714777 560049712 7732202 412120773 989090224 24313110 246139248 135943723 438264534 322845992 499377915 435303185 828573868 65561421 646423656 490555552 874926522 468442312 922392632 415019422 553144932 443992981 427582449 361093706 256880542 879850365 154823242 393082028 404701973 623444696 262003196 703880354 58515982 614860190 920061708 76497793 166345886 194745551 985933269 177678520 797724761 120487171 210328420 843404555 811377293 228624942 225491211 975120299 170425670 673071464 278071696 232797908 28090205 243293972 254385422 203213898 588705129 871779008 238491323 937028658 979190592 607312423 160643456 142209671 710442790 21578377 79550233 462961965 718977449 133934845 132544962 158433724 199808540 890190325 741103026 681468880 505892561 536191129 566688000 274979127 454545619 582178042 801157230 856690435 692716964 605993886 960694361 136434072 677134153 329312675 641025464 230143369 591930641 227242945 552923962 608640520 164221879 414628936 508421866 624599999 555671230 219090245 815103887 354186545 468849888 833692992 271819351 3118851 687972411 12553968 924138390 189855462 818814881 641738676 9773071 277279403 928304106 9568198 478822658 285283181 845273056 412316138 438239880 695833032 165764486 476006130 389201970 254753331 266815386 572324718 806885521 856411832 754906694 736062176 174462949 279886575 556022006 349415179 119150239 80610062 357600165 538321641 287708374 776324882 263595687 469918538 513084700 252185822 281078635 505540355 667850146 382778018 575762568 853173517 131503134 795271425 336295316 78185876 779579504 14671477 340219851 403679473 662493125 400591907 704383608 506995915 802689005 522544587 22346924 415032195 415375005 582416807 765193799 624565124 418782545 487963936 396085867 402369814 771515340 507749504 831650119 917170267 49289860 271643918 906413440 557582424 143524381 518906693 452520075 758458042 185694696 741486192 712410308 279652321 41797919 82977984 661200850 775017645 678208566 451115638 944481318 138831181 382324435 780888651 98685518 931852966 607952924 57471766 908324851 896042546 686047961 946729980 689177424 637746323 335656875 322385371 66292458 565648594 390965661 620567926 322461457 845555960 721124096 780709183 539106826 274020780 335595917 684699738 639043904 183401784 319024029 443388734 434611793 949195309 538260285 917158945 668929235 133096473 820865304 658552049 866068236 662679540 696040962 702231395 914513244 859230967 97742104 948161606 920844511 700136755 843052379 188946070 309262999 534154061 164827085 883347682 888196275 146364613 878074000 87500745 504006347 668992827 767654727 977548475 986940929 663093399 473856847 127959205 580260302 863044397 755564559 692760517 464911571 253710355 392498170 119916622 493474711 74499619 997752717 958591493 820763302 282847348 254076923 11628615 722121166 667108752 164842573 947158777 229155007 858791851 750409077 304281572 663514644 26597042 920143703 239334669 60482714 149791983 74318925 197874784 717374556 757695538 811955772 712787122 371481711 687016096 971241360 44133723 985151591 903960340 379172228 371404936 852453924 947957807 758173615 935075629 455191968 412648849 141965793 364621107 587908711 418700833 827634792 203067381 184626462 58034638 357243428 938583611 95222630 682098014 553556899 502693393 423050422 408722372 382799835 232871033 775543935 823535868 68024164 193821005 505261339 245521704 351008556 360280850 284544980 97934516 710032811 994151872 835437842 2988281 593057217 164377136 482533061 422297892 651528394 595407982 622921339 162287386 229248674 656719272 861304765 602756208 816004035 569977952 59301076 683699028 772742711 318463391 146816992 149097822 470931836 550072062 952005529 174884106 703162350 192247559 2467328 724571297 20164204 35124952 459503861 882837920 553748118 115012440 985023847 551023 402211837 92710329 84037140 40200980 14519072 650960658 123416660 741844721 413651465 953199863 986856395 76010925 550242378 875978867 674653774 936215474 504898308 104362364 490328727 73779329 685443552 398850341 851208794 960073147 790545921 319227072 272312368 86691351 623299296 291535401 424906005 259865673 940557290 614358700 943033766 7068241 956653478 524244353 167493105 822233278 643750648 80170711 467150606 824925751 257199931 4819551 839628732 641224299 54712307 253275248 159407557 954496720 155744242 185819390 480475708 995819521 510575339 284733608 579873739 880070790 285061959 298760906 257769019 710502158 407478836 311849105 402434689 492171781 716519529 107834562 298384064 153822763 425962821 608759932 513598191 301379581 66261313 281280521 808326196 712195888 641710427 871935345 174440615 921195210 909069381 239054774 359275937 164406471 345824665 266605077 142622416 411898413 905531315 212564264 997874802 289258587 608264031 43188039 185945194 507402693 364509592 185966619 451088922 175330546 747934675 721884241 952568664 953147668 53718593 571690229 154142804 5924553 651519118 666892539 291910113 315854974 594007520 205860557 447594082 517993365 282436837 840272605 462605165 764696100 84881666 736245729 286631046 943435818 339573558 620079600 782150142 223815271 570057425 369349957 82839283 644840029 574284523 473563171 341204762 749060423 520096729 76379201 772010402 535039946 976086448 294941022 561066280 110956054 376486597 892789425 742691186 693489997 489864593 555044908 690319094 388818848 705447435 787438030 426167558 738848809 217075624 379509057 95531661 609830609 894611257 696636731 728348704 34486347 525013131 234582880 236357032 73560268 252958810 113033913 674123804 108323362 697322271 988469177 275749139 156162532 444939839 137278889 203003169 364508031 805650478 453997526 764933599 746945415 673521747 161238439 17535777 526778937 592948930 59025743 191027199 764407487 592076574 465612405 367960325 323015211 17004490 98125513 634916109 256985728 159260420 269517146 835931522 498687055 382041683 48895864 129904086 330042449 426995442 803005778 303274005 835904453 635736392 150109485 194361086 521782920 849751207 390086886 742973386 617868253 745244052 701052638 345427354 772081434 108086460 722653997 282470990 604054923 296054571 151091956 542684129 418764650 845199867 591575625 45996489 735061712 785825691 773255051 704114194 425089989 865179514 385647660 546583120 340433299 34745178 338870161 127366338 977033389 556505618 864960460 573141052 85694985 343330906 911856398 550410596 616737300 91799789 885607705 578212454 125679058 159131783 928312819 880336440 926001931 467921428 652928610 438698445 915823018 778088891 276430512 538710094 603155009 365619052 724018987 981733790 65401497 484775180 53631746 276539304 72109381 932716289 660504279 472219867 218774865 116408380 468269549 248658730 992283810 295662174 911780906 333985638 633051806 302062865 903576059 58363031 424174177 861386144 820148605 694165559 899837823 182371410 25904257 102720549 598179978 684057007 996807570 968397208 243126411 598536690 711019626 353831749 327939113 722140629 67382380 427344818 91272073 668906511 916569339 275373286 531866967 311161102 973377665 444378495 24339789 889487833 362972173 152552723 565826182 701021922 329557847 562398473 394958505 953922799 140326179 12976730 957427840 947773749 460746465 993296678 959198869 216657890 709263057 747827979 580124112 124222626 465979844 527541034 220554298 627336863 23397838 9627437 107499613 686752324 11854487 633971002 427443873 492934027 838777851 716392936 984293639 358017177 75835027 686631317 283054515 715231135 119527281 564995565 855228540 175706615 432302061 971627581 220355109 82992140 626871888 191027131 703186512 864236403 900775539 85661528 168058834 753019253 586129226 606092006 882238239 417483352 10944901 447220666 227633585 591240432 353737603 591613257 641647672 102884189 360056746 470812924 671165976 796861646 92188604 579752807 719914418 771332026 55332084 393592501 527872914 307011507 836568583 186357575 323408206 750980030 571625108 918636791 278927779 943459068 139580561 765674620 538927011 191037593 222026399 935875594 582862432 13214809 399353066 707246866 351610218 289183135 852972213 878440233 742321538 915374435 141841906 3351064 845489580 379032434 166136007 336771103 955396681 657850108 267759279 299427954 886878480 787505153 72254691 924731415 57382171 905893700 284279675 140980493 568139616 231737817 886129640 841768161 700786009 357764327 917494803 376514847 197725799 449857962 511040050 212828593 186598358 830819436 603681901 242151744 289127999 234952227 355586211 674565466 552757031 49608937 646475612 846311286 393267844 111602362 886880278 281189016 58769206 602648134 516547891 45610214 682626341 765612542 635208380 573224967 544661732 367769267 392835676 4460181 613780776 106009806 620542018 645017554 860192217 791382425 882757677 110942539 418737704 295181828 548631218 654495972 897010788 744478812 550525670 657692404 480029304 305872448 365381700 723828572 672489292 102650908 699382287 188227198 316570340 273972573 80052649 379340322 981089287 180874559 907921979 976574004 139269913 630520807 230094045 617880579 25114868 653973640 869630796 949321756 504138190 298188518 681881683 54012103 320125888 819464385 788222136 429334603 885737801 732283238 440881575 893083439 851573744 91840567 507279291 139929975 276885151 219635064 362008149 153059341 193201976 64617839 717430831 799076787 547164768 20288787 808376963 912507463 246806118 114707184 979581953 871588896 261479727 256397320 191313199 796583776 30845143 212609239 550730090 192937402 600522903 892811713 867389203 351653107 201124479 173513915 584893192 422651144 84075011 568423887 13105216 228298703 561183457 144090429 190120678 57150425 695672815 493587287 410497374 752563141 288801643 750817295 591098460 33120814 327249829 799782259 405290810 196246492 79442715 592881066 954759757 809204747 541383758 703332346 663381050 57494803 624095257 398162271 505406805 532730352 519110705 686154935 448240204 40205726 219522780 435324400 170089540 181840201 769725257 391026402 5711527 812084922 734903046 640392265 597966364 764971527 655297982 350861527 65333631 31471060 338818420 773096582 919362644 932013780 123491145 108911466 662683656 602888560 562959874 839983781 906457551 955293217 848258933 926245047 907175133 990085157 106655526 972680409 870600622 242066821 893814391 875042290 15369946 249807343 373063714 537880889 393087621 767090789 628830219 821805081 494518262 290187488 672730313 319429356 959819399 448222901 363602227 454405996 989901579 117105376 463337084 383035081 178709604 856532693 681232778 695785613 554099062 654976413 53746182 103511899 990311849 949017222 762717129 530160142 743883289 228103680 95543570 355267082 319690515 233885925 613262186 248310002 797879342 604815789 2085544 471003331 96721624 231711547 131693744 985252747 915982292 440116962 466754566 248455763 264925314 241615277 632734148 40927111 675512996 62134802 821313355 389136837 389012191 219405750 353821651 535537143 797881655 220862636 64808948 948235694 131306819 423613358 352601681 54243467 357820308 645855715 439585188 823746201 608183482 860297529 710036919 167826813 420888059 283025324 687777053 696956710 174985856 867920310 806444066 520000635 543386895 364958793 147497571 315158784 541525039 826302936 364193657 979506302 72884114 72182138 601674065 95297468 592750215 246937030 780847047 787912676 641632669 689582391 659095126 290541492 522961730 610616577 83022396 62532331 887527747 955622800 639204135 11452306 423060302 839790285 547310687 578812085 947072565 34408775 410929206 961142401 711679402 328200805 566174508 574093617 384155072 970994934 367005558 870505047 688535921 53369301 191777121 595783316 776389366 291813785 406502876 513442942 532784436 319658084 794285164 414797049 973775578 493310662 365713374 711647560 196408557 206427220 437972363 629389327 249539394 152434196 793653381 505602184 677969469 355757884 410520474 643094588 223496013 492713455 648021712 281566211 925334876 476322514 780977170 771941404 843873483 430903321 856377192 67758668 530305131 129276168 939139408 60739823 611620759 127936089 527430965 120301651 237041066 886008062 751201138 975656088 473628653 279563533 719011238 598843921 758479818 794785823 631219758 97033554 683172896 935779339 800919417 881317308 735085130 684880403 462293297 302776112 578231073 594856025 72590458 609907934 194048052 823914367 100476899 720476124 128964941 803186079 10040948 886097267 86557818 466735014 605862752 151530965 773959294 139139320 75783021 78212134 4979393 341192059 493846593 208682410 895569577 985931496 736676260 496878540 616080837 381950163 673627625 474543940 802214610 656180261 848856040 350906121 55445603 935506061 821313962 800032154 294095626 166972755 861734521 232382742 357564943 626921580 319977026 181632373 995367533 442335084 134610840 116928841 23638673 17891096 41282806 867623403 78999482 812441347 720147742 743584696 995425177 960687242 125527204 783725976 400772203 745588696 757568094 891907257 239986244 648479852 248894081 523360912 734598309 140298930 341860986 978488517 747672216 525876397 308299398 135489091 848589995 507511546 397516644 925459452 541170188 963743296 508652782 567387033 898706430 325146147 793499780 551918546 302460604 379556815 878239851 900462857 600939687 399893383 382017871 868799535 484101005 732901630 7370612 12526503 777731872 676033528 939711220 755974214 804669874 239273475 594274697 170197334 643508409 15875423 662107817 72041476 367097941 557314061 443440328 700086859 501538097 5238649 562891731 354395211 529026976 957963680 434093137 469412924 443718863 162772310 796227793 379772517 73156662 756805705 445263179 444961358 571239749 617510000 246680906 663728694 392217776 575505377 105991292 146101103 641460079 149145886 955423659 589636271 613099299 882929012 346794386 797685162 757326407 930608630 86149851 737154737 759883310 734841121 659339549 981296787 734400093 376813911 491804251 18857740 921971745 36467096 26802503 300402096 604604820 560725721 542041369 253232787 234641738 732849128 99328210 488820582 605284745 811328969 816331037 977487080 316936030 914156021 941424404 78875282 333624485 228908564 442891989 916509518 687372701 664021831 561484661 692776415 633284556 178198064 995706574 546957458 295234546 766508394 478224560 383904524 145016920 594227406 15648995 403360563 754437477 857922552 677804023 682632237 759326917 241766376 304088477 10017107 969815098 510218067 393433727 692595535 450594852 690810814 443906615 323343405 459274591 189815269 168048540 825929887 161318033 152856563 288830736 220286228 952267997 156092867 148193579 332421558 901782104 867127316 372199522 892474979 398851143 5339276 529903473 485389121 716894375 847914028 441955998 379834185 693024941 29369860 735581408 603352087 973524310 334667443 3231365 387468422 913126649 452248707 55908012 679827895 983669204 278945626 598849869 122479568 687207470 186609773 262511756 933893888 674316925 983641327 965140478 964827499 220906007 559666874 812641410 826972245 560840588 662323690 525370851 916629901 700592557 975313389 661335517 245329680 912158342 606628641 188855072 886951828 820555100 63535164 466397662 229700266 262736355 873351926 373544840 927745494 334741515 916107987 199865232 906869171 560923016 305444710 503319885 347666446 355147855 786211560 784196541 788845410 348443518 57376410 618918034 414579053 701065162 443506355 916332210 192860497 660164431 322444730 662199528 44736361 231134664 589812230 299385437 889507460 596148173 278744610 840448668 552800552 488153217 514334812 157649696 491846296 176507862 349920088 688914655 907799147 550548214 520116392 862479946 976910385 765339724 369534592 468719167 404764210 97220274 21528402 972739166 977555891 660138152 386722539 279435435 519687289 213352175 970917776 64034705 764931759 161756656 815096188 383856436 817539127 352020622 168261563 859964971 361877633 989423011 142819830 632330849 604925677 662340569 200643136 421852389 883364368 434944266 723461883 492423250 983969608 670474475 619038561 552370082 570511715 638502010 137095834 73083675 139043229 50265229 223445714 229811525 319877787 94286571 643108211 581784130 553697710 209975377 180328177 963034090 663295824 109158029 833570516 738376168 394524824 208710019 241471591 476920256 558264407 507689800 89327859 340624027 803133504 581314351 909856369 653349470 430185985 776568082 814550601 159340699 676933351 498024201 830967173 478128249 258243763 775341850 971440907 95224679 978995437 396003086 179732705 175806340 545729412 582159537 99073543 381078675 814153974 513835268 231276267 243075816 49015249 440585953 425668927 786779017 738715081 178677950 165117116 884379483 77473943 785176841 718169494 854882980 403759629 165425423 560252676 608849685 831289975 24974099 93580935 613408684 534007390 354458459 296516419 909009262 143506172 574262865 653050487 471129996 767877855 973176500 777781671 870009571 918314772 842007062 742018957 129886734 658851927 261343095 676244897 811000488 233095291 679209059 617355573 78308932 519262494 150057222 240460448 193665846 193322050 744815629 94151323 971937822 797930981 543488386 323132224 288630040 794197838 180720618 562558630 683090559 722786666 475391684 205882170 641251875 641870532 619807614 833488041 806909136 502553884 866396619 185800172 350505863 703304331 739761109 197470049 412623404 534179910 855793636 943469767 39371593 204868181 676202247 662864404 774120132 431730687 970621587 771250203 379916717 596050392 32867748 474264201 184694096 898024727 737897499 958303749 826943549 35931429 590760333 615610864 374432504 218767684 324282624 114665551 667890524 247840275 569912627 691975941 556876688 384124856 181679457 448695040 750616188 727981242 592985752 994596694 291630303 615302318 827247594 579023588 705128706 484187930 745137984 308053770 473540826 38393058 735271625 943490757 936287941 904153763 522349583 737686163 272366635 417441433 518043906 499323277 269823666 766716976 682055425 673271827 23225969 488801750 409783819 267756290 50991286 869043777 130338483 532029030 266459693 275299890 109643334 348138702 403376711 182180655 487233638 666604254 839189409 133979534 345874850 532574859 461115103 20029333 179258665 455812753 724060019 772193385 341705585 673082126 669482776 41340027 923173325 69089033 120020694 54753987 340578659 408269750 567108939 698803792 231305382 463629851 853680381 369149348 925358836 756837183 16138949 801089779 115323669 41401095 982346607 571955417 16515067 981112603 127939600 505839471 47451315 214131112 587282237 869114426 379052670 407936709 990582977 699448118 120531562 176595418 369120403 406672020 116790488 391883391 889143705 87114352 626615511 476652868 594050933 767086470 545926347 178351764 172032912 113738787 891847753 870323350 757706793 955551384 399344185 613562987 246941954 300729282 918111633 184219646 890605339 581751307 987285797 937317311 535318808 818934918 887479275 927913243 48896766 317172640 733064729 861585744 979451564 608868135 461934022 972321435 564228913 151656911 578997122 882438414 992171742 38685747 484476552 681293004 191864814 919217306 751490747 302291322 980242884 475562842 8886091 17845022 187712334 620349460 336423513 808143542 155789852 565269849 924554040 354925467 133335993 264243396 711717036 918140936 922448023 963207806 358873790 651347534 272976890 452251166 662166571 817493211 379135132 227720791 317382532 438282998 418879364 323609440 538257668 880911322 512327087 532105212 460231852 878572605 251913604 699817074 118633385 638396963 727832973 869266750 285408116 213008747 523437950 46495161 960027783 72425546 571025107 448422882 143616002 338730163 755813198 894413595 569368893 628755345 192851593 665463671 307581996 173779000 535674983 498059883 911456572 113585542 741173154 162130432 214856865 267167188 665558810 289347644 400978160 493083401 855229217 237025822 811030574 539011530 198088424 14808839 324899149 196466357 919850584 90707642 367551429 976014066 385937004 961427990 714582698 23382141 411243589 718862421 939221704 723163138 524120780 12857446 22222901 162504749 544600505 367878118 278348753 191353649 200727988 658045440 953154065 457235222 160499757 65300989 339418012 892849304 275773252 839973111 902034018 452562441 216428820 324183688 324843013 23964099 13087304 282145292 458216364 618328556 571663375 70113940 289448565 521821882 422083980 46339512 31956674 433539240 207688105 962834929 744571659 111104937 111131287 507453453 242027545 193534418 66509702 518803802 957705088 893147937 560513464 52189716 265882344 108572096 650107118 226746106 261782825 256533814 136844849 108316516 197550098 896215323 586795952 695146780 398597859 479613576 325890833 181997489 101016071 687385865 544622461 162567327 621475408 985087148 942635766 393472124 287207371 207182647 589154891 576219897 483869477 853512094 364800055 615622310 828651013 856268217 766327132 915683568 561571757 958414031 266473543 467045908 126191097 254724984 106846961 110777570 479217131 256955907 180556371 415240623 328643994 130500857 990855503 280923050 183475232 102336920 5163701 203837679 918417964 537680650 206562657 934637452 583381363 825690723 457454793 912244495 607512209 689910272 443155435 532080070 516423048 101963791 376133183 724370206 356090399 113204551 844710013 897524849 845109897 920816656 797914331 922219732 273018413 758611927 374310361 707776020 787214740 838437262 558497246 823392844 392849437 601303376 346864737 499874902 651437201 305661496 378072748 178867206 245091980 976120323 602871962 829482139 132566668 125154300 49194562 453825405 133425304 211626672 651994185 95437993 734264517 767026578 813877613 848407104 84417189 668969577 495747544 342648564 841295486 698710102 535851199 12606559 316471459 160269220 712310813 937627873 560637819 533071206 971946849 188698736 609625761 247941996 907674533 769263218 78985998 545779619 356384815 420106646 705781742 773102094 653900899 777562701 203971576 722096060 22005594 352457354 278859754 574761400 455961266 281686671 420532061 145406566 461022528 545638691 416935431 593839242 141689030 549146210 222036855 345928803 798192463 439175114 415943372 134449384 527806256 809082337 531955039 630328071 385972836 455865944 222633757 368724267 93052663 811985582 555222220 903984180 567133400 391393419 471045847 541643679 626624230 987122741 795584827 433157933 197258238 713254141 172345484 700684646 926452084 869512816 367931081 63748024 675442241 681087688 620876205 295890539 968431171 473448738 785650825 193225033 593428125 830503102 149360847 304633994 403014580 3152829 696583722 729701445 827896900 657412241 374891458 450382006 747746433 137301021 198686143 737807161 941170594 762620206 813425001 539786778 940227689 998978062 25555254 863716288 461575658 471313259 277439395 492449216 670984397 822350049 397234798 800321911 926050437 733773934 371401748 401631766 585916936 819636354 408053720 492473233 911104796 124385934 80062844 447166816 782896322 695686784 371019830 950341760 265152874 710964902 64558330 793179454 518793703 795199975 130750773 24571000 262872345 211138623 867956463 617714776 619558704 660997770 98503129 651252507 915282391 249926089 802532719 430187941 753839773 424152511 466672074 698818059 611828229 56513683 250124657 442419649 592509251 830850507 361860169 394686705 600896524 15943693 336560295 653892560 473359151 560911600 578051742 549959182 310302394 177488141 159893258 418219865 866918086 599892799 586103593 534343804 556171660 47218659 777316008 249112604 208741886 593090557 980439481 316075737 800114290 601920913 600344113 280588531 15890716 80375332 349416221 96541543 303154851 346807074 838567105 43492161 487143697 135716778 261405308 439336376 30594717 863176816 500549554 189449949 123980668 61197721 583453839 817427628 576072387 592610564 285842971 534359218 358400622 688207540 30547996 440537374 375079505 788017203 511909161 143340141 988121424 623705973 240882990 312412455 142609817 341361770 50110095 262781024 409628973 415550483 743381503 287396436 713170591 306903028 205416730 390094581 263830058 449277898 385133597 212317803 54605514 670873215 858699685 623069314 260135905 188533754 437981239 445420307 517427064 388716508 837411934 259534711 687782047 473791754 597817263 491780661 975276256 512220573 724707962 134491603 445695344 364362441 381558539 878478704 455974540 350775189 513718130 990733024 858794440 947046005 167717258 247496239 958545483 471200549 300474618 862362318 640155593 274744903 769239375 972999245 527271885 890216028 275743847 780962663 152544017 371181567 387034468 253602442 64327476 948291851 230356631 694334253 989436702 600378662 186007384 704058545 361407479 218168222 446287463 658790794 796254293 940400816 144851876 976953025 382683739 363821611 124836256 562405282 384682352 473521887 199038595 202010519 462620627 495537881 668609122 330123919 491471151 523661609 8237656 678706421 242845353 871003969 389532757 23124590 15996150 889956901 587796374 591590377 591014381 429800106 295581554 898126789 167906128 326944962 58103424 176668447 227611432 523456883 999378400 459769581 111210636 722861771 860627014 883138438 264555688 516012292 115744723 832270092 228231098 745376162 510688913 5011729 57887233 691413434 937794745 896550812 404845772 458290914 998865605 508042734 517175395 265870656 368153133 676638519 290574635 40112987 844743303 173574040 899797150 587166632 593032366 229677737 467864530 300708822 246819019 248783168 628176593 902647395 370014076 444185856 534699459 290524066 100681683 349472879 505870425 297511587 167485139 30491106 144818363 228937635 879286045 906551323 964927630 782548213 435272540 785920628 624682846 377927693 268164299 166684128 859362746 841807161 711385649 919266135 786663379 148284848 623684575 732195509 281292800 975613577 446472649 369835963 247238691 909995617 23159415 746438190 450832750 72086760 824538910 383454073 388181887 482767322 8899250 10259620 50363333 563225029 85195011 752721907 451092740 694171323 179620363 742438614 55061399 701421435 981188367 552583540 945380489 189068031 449100619 226640817 140086565 828305698 246565854 503555355 190792352 25015122 564131314 564604027 801864424 154499728 20865393 462162653 828077380 680999217 842241796 44890294 161391766 502063586 380468592 622648878 177142892 805327730 17991318 665432299 969852178 365643925 210090693 967036161 478221868 757832904 154533665 750885086 991894376 429728732 439114078 201616452 720847395 435446589 333057018 847861817 650128078 188337611 23054363 473591669 363460064 4568513 959849691 322866194 531479464 208678229 986251964 985011207 86861740 391781206 349149303 839881867 745600988 741162657 141147684 428632471 9009999 260528782 183463196 764819068 564133982 114873591 658940578 679781956 847867226 836872316 742088610 795035670 942335486 801271117 577490139 522895345 994512827 716350406 20190598 985574743 778624148 242692032 404393675 662870851 50012872 413504209 217682814 148247378 7674051 590227920 907894574 956702815 764242840 840787145 77786072 404841669 735317230 968276236 56546564 760214731 665447288 424833535 494619533 489023435 915742578 564078931 282507222 526441109 154818086 255740896 193826272 642652492 162869676 467436815 480123358 112483583 549035906 530383639 2075790 991774600 10504220 642019416 5713623 949076144 234786757 26057878 57812640 142387902 276614607 579047541 393036171 98333259 111747067 261603483 688694927 505750730 802606086 801081970 264757037 780016848 286681834 676536985 44505645 615292639 152543302 735377339 100141964 74175506 966669623 70928904 49712980 188256522 39358421 625104231 874728692 229521505 466345654 23730452 105170150 784033691 145027505 868323130 236367956 673588670 202596769 245567961 204456207 676894523 178736509 944124482 783418162 656688971 928047951 585173017 644396462 156358582 727635633 244596110 875973224 944244813 318276652 592746152 870245196 561545597 436491436 54606774 19135850 149174407 684770456 852193011 495369625 415652465 495683959 482116829 61200924 520708326 404895197 870449687 332786651 170523806 996860353 126458294 546159588 316462373 780618374 830433463 760482415 564342018 411189438 317455882 354256328 891552715 208370710 719943006 730303233 322334970 524148179 636458229 52685468 51916234 123495204 593845968 797145097 681298577 252999224 923135525 209161053 701562255 110291699 929272333 217184236 291683741 495187094 945683088 275633510 88779681 100959413 638534783 138816319 102137943 923754351 191202206 12548231 766435525 741242470 978516834 165554522 191055055 643576209 802603764 730979383 895807671 354181465 735369555 218100144 463726126 19340890 308533874 716876561 250059521 792019532 987773685 475292173 797162327 239018174 837027794 588380108 619487728 593243104 802932165 812367919 334236091 361815056 966380114 681538353 696700009 668912749 430367820 751735092 497877661 342176677 396083546 725106925 742746546 641437229 11310894 961807003 710924481 319612462 440995551 634188366 56882992 649194403 731103106 127748537 519446765 702719463 544138910 578026806 651674558 256747864 424391100 773359180 495651335 549477692 410303416 459879849 940157393 428479954 606121471 551469095 8231450 436150994 733640677 875949165 46639661 594823806 242221585 118472985 658243470 272915012 503039449 416663858 911296496 856989797 507861406 457329452 992703755 825098814 128804038 917267235 310712411 647115208 559569259 413120728 382947990 130930376 48065616 399995205 909509153 776429048 399892519 958466998 127432849 893875226 816117214 865073510 632087095 426767981 352032318 41967529 403249406 128176952 842516539 705458332 701402421 988730302 621812694 986898564 356586821 841707071 406116098 97170583 642460560 525045478 343702875 465791162 785503071 257102516 827537739 662888956 645061143 218958117 84322545 59910753 458025382 877392658 363711874 321530253 934749825 775734328 547834590 936302717 379521368 99937313 936815246 765772278 911523421 259141518 66070412 803718711 482236659 494127337 539278893 638811675 564417811 390948785 446129741 330129048 79691229 551645189 506604146 571726260 80888392 54743257 316337440 938994122 588951828 711778813 660533799 642176273 74888531 737447738 884755876 351625952 742022209 216909258 659823048 991149494 840342548 309247313 623774650 342638085 130583007 427141555 787560408 249256637 63708641 430264103 448566958 675143732 209126416 275038434 589521099 155171702 874022337 973646673 266666955 774701862 60442100 592027460 750913195 579690339 36504131 966574327 867429248 852500047 387408385 173581300 643263917 756801823 705257914 45745106 307094362 864557745 289870726 221998978 552270605 332203850 712419097 334457995 590962983 495688881 161432074 787330953 772955736 524351404 512501124 139262910 740387186 662081921 810326956 11064580 646356619 728496503 454457249 425532286 635891842 78312561 194888534 959609266 624132328 248474506 972612657 967904519 660545720 656059688 168544550 935299868 666392743 848138143 816284421 306060318 790445656 271648963 888724087 313222597 373262371 659643649 815620550 740612250 960442408 956995982 641341915 374321738 907686483 595004970 751576059 751681587 96635933 222909845 999729684 981596679 311474369 115918557 942224072 533725792 843813636 917567334 795043976 953449213 269173311 745192641 970428437 208325427 426248940 915594444 364343741 171270157 252821324 358548455 783936893 605477092 821016785 676424596 93283890 38495588 44026044 319839572 888717736 61320898 155969089 979397322 54988044 587176099 10757397 29218260 967861306 165917086 511364355 516583542 113248251 451716670 738990533 442853267 69793845 720286995 52553311 361609145 936835493 878716466 486964892 131302267 199837178 145283724 410341232 877156349 630832223 658093719 726655871 865107733 85239240 590481592 807425768 227367662 78049970 918583455 27963117 983377710 359732338 888195982 876048983 432258052 185791714 148864027 350398694 613496069 114841047 714102176 427042778 797822921 190597747 890071466 959593356 172567211 928355945 530019501 548532279 98140236 66013888 158346777 977806582 675129415 925314917 273987831 716515711 685965807 614950550 197818884 79358305 415628030 547802599 497535911 651057883 714113848 581936191 425768675 957895898 845841587 828964671 532439349 799912793 830622066 144003584 435234597 991858925 413771599 899147337 481126982 481324381 509329570 79934766 28514919 187888481 207734507 901445398 820313827 106300722 21530784 761291091 765300648 893609406 640432827 773919043 519269104 361131600 558059289 309077206 666500270 842223594 556727177 681139357 682269214 473588601 168297195 468608877 979156214 656137430 120530040 983973069 231313912 707901399 950659064 810383579 153730437 354522715 645935541 376944723 547217415 691114894 865260571 272531692 421825847 629948477 975297447 432483039 205456888 444301137 879426980 664937010 617260964 148535612 57593067 788788832 561413886 453735975 289287160 942731347 838416236 25155285 111556108 245527895 210509263 55887363 808618972 757712733 338434970 854855977 97872638 56921429 493651808 364903230 282664047 510641884 615282432 37097296 813820432 680141417 742691181 816571557 358285998 157447093 456773136 212723544 454013907 613601662 659921754 998308856 407004643 467984579 221037092 60822289 418033068 470501695 729336471 423332965 442487002 375282348 19316435 195303163 98127878 797379127 653927616 415895299 110184063 778295123 47541771 506082166 387339227 164447086 975038551 381206142 448693252 556286499 367935634 763508517 598404469 580583088 919160689 826087717 311713357 138377564 641505592 420351889 719152760 31809573 986829713 730510332 626527120 510400291 972716457 280351742 90015035 556966377 619683140 544699324 206051479 131498466 478162933 57079881 248196455 869891518 694528783 186705221 364820831 213458263 902030554 730048937 386677008 22807446 126471080 830324272 946811280 1587283 480555458 601465368 521686241 392589406 434355349 989419324 724958119 655969599 409252784 719452956 257578792 393478203 887792935 572078516 446256862 685455723 954154791 313044136 807438823 151122220 550233686 172140723 653276755 916000091 874682132 158231993 25327287 825843840 767041588 141591169 726482198 738138247 595878730 775090194 706041393 128699219 817836678 117012653 575132337 163505355 537724582 555094731 288955127 538590341 125791190 489829847 548848948 146053999 928965088 465679749 392723710 715394532 35771452 563452437 121792802 878005060 24789113 792399250 538907182 695995129 114051291 217482808 273451685 326834922 773897426 595031686 990250687 445748097 230793669 785753106 655045999 753507853 379950982 914063440 3702958 944618838 132543145 784270945 754212407 373684513 810743601 478422800 510346139 687672947 439444235 404146032 173457833 77323556 229235356 224335205 848526005 241895262 243355378 20600171 358433338 436085449 78890837 923103823 147062261 97521061 638285526 535709083 542762011 658561094 682537111 8392374 895184436 935006283 40790267 196545001 373923634 47735587 154851191 693747738 885898266 786549405 353225770 541518057 250998560 263719227 817359476 183852787 880816929 211718452 851830391 175141597 391560782 677008043 931425181 4229916 891656052 936033763 874439640 892228583 459004376 453863997 2897087 68427292 921343244 726084597 786750406 864444125 653897195 658241963 300260947 876003293 705504950 248196476 848136232 308633200 766723293 155856514 433501343 613133886 565588098 109732301 910037360 963330830 684776097 391586426 4561218 131776735 99940313 219922524 921773375 845923031 499572340 169850564 651024635 858916056 293363224 75354393 566082828 435661024 571991629 157611637 262722572 289245337 871517447 518621656 644609316 71970048 316701139 976841462 784287670 578768423 623005252 310564702 832946363 637098028 718780602 181154641 231383105 971929827 159860294 386914973 312796463 984491784 759383347 387452713 498150675 695093844 545860584 858712396 462545113 712914055 459169120 216065563 446504488 228375882 358854331 357320385 77848454 806552845 717544683 613095441 454079704 532025112 15424402 538628614 433702786 231518613 683350336 484593776 281971956 568867184 439367295 524469909 424105564 121461947 330343255 101156872 885538681 95553757 438764502 467804969 788016397 571005243 948715518 283759919 155419759 148964805 501768776 389748983 474238327 911791812 6872319 719069370 55523020 726523627 5651475 430183058 790440679 376525857 82681845 397043653 354357855 847157915 900065955 533869308 212827781 800013888 631607938 327931440 364337555 27203189 967808243 643732223 707766786 160316850 691212507 890066659 831580189 86897140 82490092 452059483 825436421 811469678 407748653 134669987 459557665 412779886 348824089 211099811 958515562 537523808 423077762 439923883 881615419 26463773 768997817 551565392 796986457 312520291 346562392 554517685 630664303 230901386 830648174 858861652 357200158 679659291 881460284 812538982 81682124 990977107 120261862 60428156 307803239 363670830 20084325 615280977 905294285 315498380 600131666 320812458 930297113 954471650 409644691 223102220 739162764 455003925 70187645 582376806 234044533 305938695 83648655 402278726 158593980 759556134 133553908 209966145 919828519 158314294 580193828 322950512 190965031 308150498 981111777 273040303 811149944 386146587 818744175 947834469 318453654 530369809 936709006 435797020 64074790 353373541 111381696 65250340 776929839 990184317 53750756 685818743 613975043 496874408 948549030 563952949 415437944 385089033 630611564 894559316 327534528 37087476 666286004 942971034 102602609 689132421 320170155 838562910 594978082 737913747 753762988 551467974 612580164 997084853 425260123 881342542 744209053 427974038 924314441 772277064 561080703 54349540 329304797 963574471 250223226 329404046 389108994 469686665 473367574 64873416 548944960 889204911 929863526 538935742 801156013 11875377 859306576 473516854 985684673 102019271 399632184 263523026 736033976 961951246 849648851 923303362 629704912 248337895 752606746 218441425 169994979 3290494 487453131 146555598 847298412 897136760 483495932 155132991 978651932 669729469 224663605 834507928 473710352 352954008 835974762 820103440 379371134 823535383 181238656 758796562 86547399 892009221 927735181 90295237 286480890 851386029 242369742 695574409 192854511 27550492 687108681 47224507 184026737 966644587 243310630 261061430 333286786 191452574 641003131 725126712 250401269 274193991 720382665 179458222 715740959 99930260 51322228 735561934 332679568 692263761 577296448 183611430 870786079 363792609 93842022 161966055 738163695 373545540 381931291 622707609 933978254 949569689 186264987 271644461 761902349 677368243 583552171 902487797 611630359 558659301 397618815 688839077 730335936 47315322 663457703 88570198 851444281 1077084 958685584 292441604 317082252 625923831 310242934 297145554 729971959 602787736 763058258 753127515 65372042 369494881 388328461 715142579 5244687 400773664 965822119 705710852 525847183 797906566 826454428 182284744 662928598 641424864 236108387 289321487 910943753 27262769 921784018 151606795 174741735 7678937 823406408 798711820 687691544 141111930 991139798 809452121 396663501 2712480 400518409 374134855 904305779 445029912 719692955 248885688 412856716 979467280 100326189 107590896 454438014 24993962 463751793 980748094 215331054 332490725 625094306 154314961 544070711 975541780 77101565 959958095 624758614 935062423 674115955 427947479 6759814 197627849 488584404 178652556 268041593 841927992 655679223 952890614 336423017 611411372 423607350 96943342 505919590 66686293 107650857 274191351 757390198 579902238 130410890 28237917 330116356 481274821 700175416 10211888 284603645 285144455 344485045 397829883 32876662 942405523 656521224 521093738 754874280 870538037 655725760 505309738 477582767 978048780 494158024 485982634 36487958 728509973 701579385 554323690 757942816 179659911 642751259 483223602 347392322 742323043 155501731 319061157 363978421 862016612 418562476 869092192 250055687 671357068 210544018 306452891 108901271 188393601 841633125 401490500 782245338 684244649 314321635 539773216 54412798 746497488 758163777 925944267 394804686 893612752 602852475 564289439 102669474 557539702 753917220 426909099 133356948 984472249 52894960 683884177 730577201 909814170 700676821 685773809 581530876 350905929 146927226 105115856 547349572 737329721 19957772 76896798 87414600 66140391 499379696 735111675 598789108 214959139 868096680 288979219 633226970 159297247 118566868 523990775 515868139 272695202 49416172 108880376 928139415 638792447 338843474 50567690 947002346 212143033 719797105 190870447 328971439 782850418 783219877 271675207 384828805 887371598 183273847 221120371 451975925 660323366 922142292 4382795 619071304 133642224 777023585 511123183 7700402 375389301 768327663 691004904 528108284 118512984 128825605 235732059 42496200 200458253 459391092 298381536 600812062 29235253 924951645 774248438 331870538 471534042 703994459 71959185 107536808 400497686 875706902 144683366 596815455 13916593 231501239 322382873 188426743 820484882 855419116 248199315 582816130 179350781 758178643 257706626 237133887 51677280 986485173 441274 603780496 32635949 5119680 869783648 13447973 388056875 530045190 845085888 169923327 976186237 2465945 498649493 876195218 70020165 31782382 176967282 480596226 991840175 943132268 250089414 184148707 964212197 784869103 160002432 947241024 180469434 331402153 52447851 38633826 513021225 567962143 20667681 159141694 57700635 916393922 722846047 546184776 365459752 871917821 515694080 168126658 631884239 311795965 782342276 632235497 353571051 450903346 243038421 27883732 166087754 363160207 213168484 146017846 17087875 281244159 171547538 78623684 573945559 979822711 749286121 608372537 335322104 832659553 384256232 925295999 36081822 232361116 277294617 487148016 601726995 850943408 560827089 49941599 524150740 443333662 229105756 276465201 326187881 920026750 783175477 406021069 525860594 589824637 571609990 883818486 681570960 306224897 219534179 571087640 518057937 533292376 239004869 527517360 418058434 688141653 871603229 48162867 889931961 893957876 450813119 639679341 211794379 481443673 964088234 919319977 104667876 526544458 543058649 436521467 375311720 55455329 845264823 706846794 432416170 306349979 696709187 160749465 111666221 636848128 903134078 386030484 822907289 490809832 486134396 672900422 789435785 820600866 211176663 601191236 142685384 630647820 27054756 378078678 521112971 767113383 291638064 614579537 639478920 262909352 843431516 496939670 610675720 586310273 471399004 214524658 729009063 643777077 898959932 767292467 815833856 917073761 412054876 436431302 476366701 28196412 686079461 886275996 435974716 587206405 396759691 494793231 944581120 235666811 549099720 498391563 692506725 528541540 523728008 730063895 678362375 491858344 993983827 546669015 749223588 70626989 177613092 37081825 570739137 278642188 627216896 611827367 958846200 212151436 875889149 379176837 833345642 99243042 562545554 57725867 482339763 947235110 650393954 277866571 553426339 963101482 138569297 573354168 671970372 965314555 614501894 63679409 412764285 296410105 970056261 336314702 834062767 596054494 548353932 223763492 109669246 765553667 948722427 196178248 801299005 505227829 679190873 337408265 378357822 160426365 289310081 200619516 96092094 357926472 260146881 116182767 527657818 947945960 270349999 716090127 585731942 502495474 362694353 370187355 640680264 535068276 382230674 753538516 9447268 113359260 314680333 60093974 648982936 586080547 277454769 573793410 737788126 391438429 387179304 653184566 708666747 240906473 158198169 214792897 829652166 483606885 962431813 769315688 828643576 785410840 574391276 483037058 604731441 803100054 3117718 75504484 851380597 258074546 395032874 142305528 560264173 748424975 455720261 103175756 877863514 674195066 10408244 148774380 820727263 141534983 939887430 34678615 809785604 59894342 286604470 209157370 562933352 187931132 708087271 844804568 989391465 608912394 186854990 609298249 907178197 558762457 287514017 436079192 979480540 525058967 624305009 954900105 967686805 489867017 917462820 626397820 889945897 110166654 642234289 860022042 792034356 371876669 274317772 599007512 862054593 677898221 329856974 575798649 374911434 273946000 551791752 95198015 959218532 824632053 860521326 544400796 487254947 918033256 718737245 758110051 278804880 524110032 790948113 962738948 4686248 757118707 933004139 621221253 64942559 369068750 474818770 354354904 617775689 152875430 374664015 205748942 292805233 986871500 804548664 370224235 46512852 638514605 89823831 947047847 451774119 25549231 210233775 25251177 176202867 655853745 877287982 869637952 140399538 545265878 453204612 671138819 575465232 740419654 260776673 181349931 257464404 41636205 920505591 859126038 340897300 303142170 740655360 200041402 654952120 264570796 937059483 120829923 39154794 324385408 486199959 362945797 966731972 695910915 321138488 651477140 177444936 214716995 115010809 704672519 185971227 353177255 454972443 102770589 161118318 719409327 81519731 257512501 636977074 81885577 649674107 613613799 523832293 166495926 182073430 555991888 689022991 114017642 500358598 645079875 442398891 769877007 321532071 236334456 438078900 487897450 806706591 131359935 604949340 602261144 10054703 704454440 966676908 992703955 244708574 880950933 823576090 631159231 945511206 177883654 558850989 391555541 961704679 798370658 670878811 776139440 29493063 422636991 745721516 82721122 59537213 898899698 626026822 619051396 146046036 746578288 644812508 119771323 271877687 619129148 274125142 978216717 34704648 524515072 264253086 911633 515523186 14820583 832795015 903788641 10531585 690640717 351315353 616709070 921054072 356695584 332215808 740151337 327471618 730190675 237084419 854525741 416022645 655517538 750122965 745165321 839221409 486122122 87053562 915391282 706516185 293201154 796096180 7219077 748090938 379731661 668677715 307510173 374172945 636947315 500581081 669208968 657768743 538658761 104152982 561482355 268343477 262948089 262099236 994406533 743897160 933349297 255064437 200025999 813793741 816123389 982074125 763451856 379137711 542230001 835942227 423736274 76383373 484542545 467905490 679040767 49833151 448004508 194954770 462956424 149141200 613909432 682987093 797285287 798437681 504890364 917193295 596054693 512531536 160697404 293152167 492953773 227951665 954034983 132813194 58051056 703839408 557683924 643955351 755530558 390306854 687929821 120623556 322095 560330651 591468671 931683798 486088320 979859191 511515668 127441445 172173633 823155367 971205937 355062095 760419167 556126403 270870535 745881189 510552928 262769984 24971565 169028023 270480437 162111697 573611727 78107653 620611605 378884053 95136412 590003241 240852394 504548544 286692708 708222511 956777611 911172480 849939347 401924087 394082346 722515854 962587544 53292885 20263616 551468548 600152224 603054061 943058681 930264679 877156963 839208535 549313172 409379732 51136889 28512833 573681230 825008892 259277001 768355664 41361576 89416200 115566607 86101346 43254216 412211751 654607024 233168924 937058272 810874063 169309933 437974874 373104221 834149736 772791652 798253812 664693792 428842086 910556738 743522237 251237755 365403135 102366417 385183147 793549150 838231707 330018075 303641483 858792396 130723310 582781217 600051560 283162377 278985413 124891767 995991848 820493461 747943658 312669289 156579156 879562552 663174173 833450376 22878234 528690114 138316430 380067456 348698244 907396035 546374506 96876693 442635721 386989312 882002613 920045808 734866405 750228134 743393497 519108855 555233855 250921555 454381841 585951153 848810397 571630265 559778813 707139174 873287960 286845237 664915114 319394575 898912110 718587431 671888958 138184373 318168024 388584341 408145319 334366071 572695787 356108105 634640152 690170128 147415383 289586533 129271036 236109223 121709978 385382021 53638283 862750615 165521247 428422566 410740369 627090629 372902005 521168659 411874318 94271461 497373197 651086784 524348276 467486227 253688379 851008847 834734378 815866447 94320778 742198764 141457352 771397568 949045224 870178883 871624838 42093039 232005654 577373055 166174779 380453743 948059315 844484404 664571799 749340017 266164305 348898162 807701676 241216605 663835193 552368918 416022858 929677167 172172317 130880946 233206032 989144344 875531768 392942276 510556166 999285388 885282809 182741557 457434595 815126141 96175029 585366408 130660834 23386559 859232279 708530663 911996875 538260690 158435073 271299216 471635599 550624016 615868250 489428500 103441846 663821952 535235015 327897984 826378938 313122011 352322483 662962977 859275818 872310474 53330748 281029036 313149470 585827174 268438707 295587665 244127304 853054739 711708764 917148985 122658479 67916922 427669374 663974853 481915467 892606043 228893363 626249141 643206403 684114485 699361740 469996601 980474384 839302600 343273663 396060117 414956662 686748398 268374487 84310066 696556766 345459773 200765263 629744760 135529021 598319745 274688065 590319671 348023212 692269566 585130542 319753567 528844646 702222377 532107490 167799320 721904680 542744516 931799086 224256547 611818855 768020514 199922672 320216651 645195678 66539396 799467229 371784545 151477449 388614786 813371544 13400863 66871930 766155165 905284559 624141148 241763674 930881636 693943504 784330226 839947739 808793017 453513399 133215338 96089540 346607769 91588179 438601360 326354334 929156303 387946012 320918350 669779 955536157 638682071 601919408 981895316 586358443 56333927 699663092 5450078 805561906 939523110 312328310 577283103 516630070 210137608 395247815 85764999 181240440 240775038 314497802 380003296 243912908 188978642 39209914 805833369 981678965 703027891 939152540 265776407 600307958 897151243 151859627 506602216 42549938 523314014 421878668 200731899 543138439 187604867 493557858 816808001 17748685 17885780 289189287 717092856 170358033 961651334 73680683 956378877 441519211 174562643 558791581 835200631 918445985 966572340 323957452 519958660 759919992 562247156 845118540 323842603 795562191 177542869 480692857 137081543 109188165 402594557 770412070 573947830 683651028 601070892 873070987 612871967 67884240 976001309 8397405 594196642 725349621 875495025 94133672 98772011 412571791 508465125 616281863 274778554 612380084 98763687 58950727 471699236 12680188 972193630 439499904 989955652 392017666 929247312 796695959 31140778 552831266 209442521 612445500 273687167 184091015 24084126 698955692 986461142 156243062 526073422 145189247 379279520 208997278 227715258 369598422 150112250 835508925 379212659 260053911 579829948 484430242 212656531 843363305 104879835 254988441 880417471 270484412 698630510 399119270 526278058 744678640 950856851 925184705 713867599 402245237 868196196 855081480 266877514 772649147 943875991 522427086 343498888 33864259 604158493 819995351 279631786 299028090 152189399 989360327 552248455 811401125 691688431 125638479 220494639 947927695 54436132 924844974 14712437 360405228 56814431 845205330 322122559 689662401 733031788 916961046 751647633 623174920 299231281 103857405 346249346 660516067 360720544 410487435 203311333 311766111 893056080 623288983 192917158 187129607 529738441 841862313 257973344 265790564 678042862 352227428 302574405 383609264 575242687 729813712 514743978 841695361 160621422 865281120 930706155 118623203 19791915 973802312 87713995 580565882 859251021 938414520 680034997 568318469 153634384 41660816 333781504 281496466 992236491 22818303 295634428 849218015 526059031 737805826 599500413 974308115 634655030 345304049 395908018 333613755 609290790 291773038 820162056 390870319 7745136 841932813 700815719 95067827 331228527 383966674 872021791 95159404 697707390 499874333 517831035 685154713 710126314 275439832 202020156 203900188 824915288 352233514 432589442 954244767 360946895 752399391 316570833 997925459 256391105 203279661 612199569 349659955 992658661 729920546 6563387 870985337 315772684 879496516 904915504 225030840 300126818 92321804 231625621 654115447 560505643 183718940 442293262 174202743 995888123 622833445 73351828 157493351 106811196 667429901 778676728 545226565 856518356 770174218 314024962 667313285 409499981 174585630 777756562 869607483 940173015 785162885 865811827 900821140 291433851 609536286 618731095 144171781 164048497 141889202 664008627 54303828 371399730 925188153 141292115 50226375 340998895 927446064 874863933 291120378 462845293 715079853 439408777 169680488 620777426 220749956 617643121 538460558 331467042 546592437 280543148 100627580 927705885 628719614 785798393 30574962 511529527 51603548 554547780 768877887 601436576 756528095 481000857 107936168 832141838 793882850 88749686 457670754 239067869 836481256 801859077 106352680 2750432 218038562 412184997 450574412 770481376 41569550 58187168 679135412 844000709 592265160 117879325 718984813 939892823 838551475 215464087 371747122 604704028 447350550 962650550 974629907 723644186 71898214 929997699 713212483 823378267 611026058 39103263 378536784 765959953 340496697 385632467 990156509 839099015 621457428 263238028 224924716 778382797 336329501 643785723 989760806 246895785 765152342 337442801 625276825 183398565 330282771 50449803 701011146 792560736 57035097 173084179 584947149 958738182 785056627 190797905 924252837 519326543 887550203 91420958 217844775 730909933 687172058 401303550 38275648 416479665 369576647 65101736 584747113 319542422 52934306 870742792 416566657 771827510 473833272 184529371 285450775 872167848 29105699 503827694 79179931 435691402 374932082 235822170 218210380 404590137 854347834 52104080 247095169 928977628 807253934 182140909 790632244 87522570 583300289 363127906 832411468 540209716 863267361 177443888 392833003 989847921 412052002 240949937 163090185 463631013 979181130 640403222 799214011 803038574 473445215 157742564 721334341 172298595 960922685 862060224 851631056 684700310 180622316 635176173 245031689 359103154 627748528 905098838 886963713 94999996 560426744 31889165 547649940 216233807 552717171 629969107 158779736 826259402 964574624 669693043 302097715 10294643 481943218 743586632 854025268 348250499 586719313 989110659 226634766 404850601 320588544 38656266 959677421 375176630 52594402 199958630 419038242 893134369 685856769 230405381 232934026 833985795 40019515 107333898 357443419 486964416 552954095 898514716 364264232 200728247 81125948 849032889 496767836 591951813 846899956 539280479 986827195 832863724 928878096 883520589 76916171 883326013 524078097 213501303 866243521 65419532 441876266 292208941 14331291 184870807 859809257 102798792 165178196 37150455 553395406 966176406 82810234 117811616 315005187 35763487 975163027 257947997 284099468 828639335 95474201 747666781 750241659 982447450 826121616 22056090 609462438 43775492 613635038 969131189 441318581 686962121 353653486 246633033 828059816 205289322 6847315 530784409 431922927 853763980 47276205 991160626 513586464 841471209 870045210 921125302 997081343 126838235 332267450 85784994 677191739 389982650 658805740 315923064 670969778 931389381 707572995 591529807 777743676 542033485 303304510 692747582 60436868 585832490 569480098 85789888 284165680 632894826 957830440 307763135 276200705 525629716 767156908 373159385 236576702 263853197 597222204 549071217 634746244 693627599 96697403 449052164 711469552 31050016 429611911 882013743 748590134 950893251 225633753 426469333 712420378 983589504 201926682 520621494 999949844 213394389 202174855 693594473 366256505 716039333 160472915 30305397 206466227 756700533 719815322 967432452 949618535 412427376 437507285 640561984 525373610 291340273 817183743 893298980 478080982 97363589 548453964 49902391 589272623 761358222 453652980 792848591 396663814 770520296 187123189 605148335 385520110 911579540 326797251 520888191 33174717 199565309 258979523 80218473 695765646 737576023 430169498 905160544 624967284 650793826 290166964 753522950 771780188 440201529 387810621 559721067 777915500 705053781 673370736 616779450 640122152 224637881 269115013 873456882 27505116 311311786 212214712 260002926 741924698 320858726 242206059 509661344 280836643 919265559 932930312 282010879 200791654 951293709 419012948 387321129 151750202 821319072 287552162 786471584 856544441 143829731 970504162 962070934 188938708 314074465 59471599 111343268 884413793 269528196 406690144 917114032 728590723 496309371 376710338 892824135 731995041 369672564 147527777 276547684 404011056 764007038 898980291 481717126 669107287 168832877 598516672 60181598 771820210 102998880 665587419 181467 463608866 184928607 789035562 542700047 396831443 176447632 380442825 677302725 99068265 182255253 766031460 591820113 82077992 86898187 991113358 513546040 244609169 393439109 284783448 549880266 847900446 362267313 379635831 714346669 421051624 537385210 940393824 502196583 724495182 328342096 903255475 761495027 423215974 417142225 565790569 956335134 379037001 692493844 897519963 23087112 302662409 432615850 269735463 33151491 649408150 278619405 412004852 781758759 180871914 479005518 155191037 937772602 645836719 413951902 765390944 929384415 935100625 967067272 812624916 817229718 427276831 600766601 69013195 98910328 211737184 132062160 158769003 478349094 830561212 967638449 34468883 70992879 368883885 933510564 533312222 433572467 128848772 968013469 33318125 932389618 338272529 776116331 633822095 749968864 941504168 188508191 628063011 766643396 495176643 204486492 124620367 888523617 33838037 271724597 177101889 471946772 456820241 325036458 233606399 747731649 427660892 998962994 449167319 971716042 531084425 663620720 23135969 914985832 876487996 536218679 134647500 846670926 346602227 153604751 162024419 482786811 990447497 968962607 923889997 631380374 772289425 296211745 293068215 643712777 561345608 929580993 592897056 643374967 427012261 180647672 454868286 761619451 219530170 146052899 214858969 951792700 919178816 743487653 901206736 496217085 16818919 32227316 762751102 787941376 862648256 119115399 978683476 621693736 530040450 424964282 615240030 355707457 889032008 112291809 662764907 312292278 326334861 70904096 591396265 997072972 15329621 220289971 603624430 786390800 414081583 822399468 237489905 171359609 17865467 231543071 190880077 328505074 812639266 128606871 312180300 884239303 339866283 250595931 413959801 588727508 595059958 254315485 785494709 871773765 277579131 934154510 13717803 131536426 915015467 799130067 109023648 22867566 101811168 665847620 847245513 580599845 732074585 954079143 954003548 128755810 855719916 860518920 914956469 499682160 660054395 614608934 126429539 314294334 565875191 948014853 947802529 406557856 508430638 432823754 357349341 80699794 602897638 434661624 196801880 568047361 366929954 716704909 566716761 798232356 480217970 938692288 973913090 844732764 803002749 382327766 406066531 288229474 182527404 945351426 211217002 318849418 578395472 710649694 427374033 479826062 632608129 655565413 406181001 184083688 14123688 958292706 217954421 990205424 340645533 629117226 216155937 441396774 814413138 50185849 899167299 42989240 325398358 523169431 594866300 496364070 778904718 214871768 424459792 607113561 827094199 473089551 102312029 134821958 274310628 883334575 936143049 242268734 5831520 155067377 227108928 839581408 650483788 426035860 429255630 992611858 216766014 844476533 768316000 333715516 700754881 998134898 984533429 309166372 399797394 333157694 707607514 778258840 564646586 789305665 710286509 6606284 406184370 822479824 250249019 414492205 537826210 428128333 972669580 874866717 478965757 177140292 647372211 787264932 121753549 97917487 220972037 741817165 678629649 298045942 638902272 373535217 512032676 551622928 408852802 396314788 63901813 973896953 745933316 238108760 805340098 638340295 566488274 282747924 368021502 466683148 907176144 183468033 756604987 559297371 783970702 678336561 301930847 764720445 418863069 63926937 914792191 845889586 470496367 287408988 80233573 951398467 699753207 937349564 476046171 35311024 666109238 583163395 376490423 741838346 60471308 830306432 519010321 197955347 288712854 988559104 714181173 177744117 597581525 830661184 694327069 461091598 616691069 456263098 495812625 502074400 445835623 995776468 591872170 385886996 87518969 70366435 378917482 271089840 405493313 48298158 709917464 143197326 158162509 694827020 719598243 721284105 598456466 644854371 755870714 222666457 548061030 976475239 232846751 60732900 98543676 848001477 202129915 557564087 609265872 616587494 257003678 704850471 544564691 314149965 34224720 459116902 41427554 350228648 586856889 296807678 730199208 320683438 78906472 373181682 921628235 861928568 562269690 851390281 907981479 539296588 929811841 320648784 541166521 583298919 960046285 169557314 503219674 595983515 890045028 685306248 768664240 545859018 691582723 116005838 345285442 518382378 391632902 359072493 953316143 198521141 92879767 111186956 643628529 929852579 271290013 612593914 341179754 508991478 217448619 307817704 540091594 660561764 295611250 945084273 463618762 790264051 815371267 689343232 369308396 77793394 212732920 773976692 808678197 127515943 360823421 661323889 139509050 881958164 112919952 617113078 418340365 998110886 31536612 834188441 154205368 720606495 475045579 9956239 96799824 882175734 461641895 809276538 488231031 167950110 290121239 391108814 421937683 699134289 824644564 711328590 926365776 191104440 110437035 44089317 127454041 192148687 750338467 376023431 641017224 480272287 707606561 943857772 615742445 529701493 940279015 378055067 880998479 101807903 660834390 406779598 159393691 536915320 329111355 974430042 472607915 141772970 73814011 321995807 588657432 434579473 179997805 759963393 392502908 662306202 872667147 391806028 212111024 835740815 120291194 941136384 445464834 239318684 364838990 818281135 238020644 978976707 197655622 399056179 884406923 575666385 905422843 61903274 179233785 519072741 397150824 1919062 28464642 136623373 522565480 179278443 541263823 429107127 917681765 11549389 463309306 279575878 589506002 592270918 109118401 502077402 453974458 648142365 715860886 712667288 206288627 796096279 754601161 58975404 905124613 215857798 630789834 239282132 265547854 243214186 280903838 891506826 877210356 632591829 151648992 664231036 451852527 15102192 707939435 799381900 518553238 218796457 802575364 1632125 517195013 96058931 653177444 618665750 638283648 621906983 809382130 841430555 678556293 43402003 48829895 843442095 723296657 506317967 781838038 496040174 3737437 84434205 730856318 791119829 129875451 205221275 369192358 855797609 307485850 761227778 191957362 754676390 50530089 32272448 854593339 718211097 975064459 106937612 842825822 981797270 442333910 621203851 958555451 807811972 732458133 753793241 764532928 334671672 452555460 869894454 122151915 962670263 878345091 731258759 105645019 812588905 715369325 541741089 17764460 769029431 696210963 801905715 428737124 837297231 888601844 258343774 426807071 227034370 139488160 841805730 543457932 995665000 676004287 560391889 545909444 512074998 141125001 725325754 916089899 480666532 449399468 378407467 65174491 879779844 168845824 32202690 649096491 659277624 826823065 290692901 659470430 64408422 242360425 11677465 502663477 419956503 141000999 63769636 177488324 74798527 401238027 628857073 967363692 35458313 558557068 623757995 363242630 457056096 240889601 163393381 140540077 960239451 298309833 901716646 442598803 787589113 102301103 810601182 707326368 965802212 687709014 960345780 454385044 297318236 816096973 897535669 248464626 114020244 4491004 659944237 746147480 933517149 969300135 659661575 226640041 344884814 856344842 631951158 784009185 350469328 573672561 799427048 753475145 388192144 301801022 214227619 806412213 843413023 589676761 102569263 730515254 831453463 617333294 166489128 111366214 872309417 198868550 95602643 120710842 50953145 213912999 28744172 649140836 111406260 351388938 713199238 260735381 276657851 490281265 126498314 865223026 573291932 548406014 131173332 582965763 439486004 34618887 66634786 602250576 651840929 115744309 947034548 629968251 796341286 70288523 705370363 670152162 764328083 321901296 98172560 476875331 638749677 292440251 477185957 144054234 863254868 109331158 43012839 975294740 377081828 807636899 341905550 625461827 729796047 447520091 969417112 271164756 881250751 968750784 778889835 689907206 760614477 730068846 902856962 727679338 47243428 399597505 133406113 326308321 533224533 136421799 468959006 333905362 184676627 943036024 256680806 97365880 441510770 572463514 991694155 196164244 58218547 297419290 944135861 434420326 350133018 285932730 162008319 604781619 38687076 738237252 664174225 740286817 257846833 634856695 211243269 254337053 929696504 311670950 400476285 840440816 587906395 434820358 919364913 978898155 911189811 227862636 148167162 62243431 769848852 700989036 689086217 615163731 916136584 653423474 647207710 662702256 140522987 453317023 52597530 161976974 822639735 721670754 591223049 237451095 150532128 312649192 989820487 526486035 510178157 420347110 567802137 21819053 818243166 972151051 929390058 219537773 184040339 233520757 138744864 265530231 68472385 699551119 697100749 302949656 250074282 83101902 844780057 79913384 184324015 267479714 40847725 812363202 22567262 402581071 184096797 914376686 764830800 639140184 656272517 471531268 77858589 392426427 796059340 175941407 848781500 820866182 621145587 698268911 823195275 248337290 209741598 938332161 453558918 342570415 857512517 843174528 816071409 703389267 878407726 658867499 301307537 451200445 152489618 747654377 951909263 77249751 162202451 472537427 118748977 598879159 186006081 329685066 586465872 988422521 395742496 873296882 529432427 588401590 146742874 207927008 936807859 136878723 658011006 186530220 42069016 905193104 716884265 375364387 97918091 119453448 885025485 22913664 200478514 976609038 632347501 720266781 763062645 873746149 706234098 634322287 658173083 138016742 795078356 381302604 277639031 543570923 836293059 465074265 863688863 457227057 35842953 922964937 339199154 571447766 15278452 336227603 441168686 174685622 806424754 91653548 157226518 393479602 63167088 837525701 644858523 936111728 399314676 297648477 745711160 486006999 44977106 22865437 837173286 47487157 920066492 539707476 209742300 60149784 291084833 781842504 67310208 947631183 401602599 19909772 79279247 337505081 384763405 838970797 415003568 720766370 856977050 267566891 65725529 143956 4497005 514773679 620984576 316114764 886111780 498361839 117290302 668548853 851761615 463878614 46921138 871933583 944229922 254285636 904240517 71201474 831742769 12135090 612811050 184757799 239364464 378215408 124555833 757879434 333393301 664559103 795196624 560781685 526861840 634530495 339416784 856229238 568432927 823520932 781507577 557197541 155416492 624798895 741562730 753313906 126574352 671777451 641442124 312058408 329159411 398702091 329374173 543381153 988746159 834856656 204537053 910085420 123019898 351748791 822645440 666552682 638287844 269252981 678320923 274082923 779474109 109204931 409927301 264508152 111287259 184419449 574414019 341550856 427695591 437499797 119675235 582617515 229801540 423374550 708360803 396321766 192141023 475846084 903720614 48962792 36349299 557067610 811213098 270154359 337985459 170432725 969186835 245357848 621120983 256749886 28265433 180823631 525553689 512962362 716021928 277106029 867638560 183181658 974189868 622811495 441881527 748073773 889891957 32745477 629371727 37626248 604149924 525865690 428792611 894474828 817009153 6390009 267730539 420983566 656577146 455448989 175749648 624134316 336528774 979596275 268124779 917322337 881966086 65862781 259037190 981384110 961444876 313029742 953500287 968631972 436498902 238405766 820983400 156114335 988865329 252888951 4384542 980850373 255154511 979412252 172254398 974965596 11177775 158963166 820795183 551428209 723863981 845925283 412795309 348948501 245695057 76686468 823259523 115763150 702375301 457773295 812646522 11075203 679833470 905249203 241628931 506139318 982165646 858084939 62218809 480181350 84427007 330018351 347692847 74499794 149931535 817011375 61778600 698207785 525633059 433674408 518738688 248171724 432414746 787862348 996157235 986173593 644424813 13985085 871788728 938497020 682031468 208093328 497073446 341647041 810238006 267069678 246312105 157056552 576886863 768162570 553226601 637286620 914595025 84850005 904278122 124274208 315336535 530635068 292417824 958082807 535756140 234754139 717942706 859678091 477736365 666343158 859710655 716802785 711884625 113190012 134125175 466074527 903484156 268830141 51276713 534774723 683315893 804768267 758426442 498172102 357598058 878544283 320787306 19730474 129646085 790050655 457557727 750462433 598838085 640035435 529122577 823918476 203979457 385188619 77969682 237072044 467264248 416968263 683112146 774487957 508057314 68105684 48964331 839575984 203969181 940633026 318329874 284371756 803060802 534838744 533199769 82669909 706234366 874311193 497325033 974881452 260506965 430790114 914196382 484882769 781731793 425021597 155642482 460739658 268193842 394835239 516872564 464274960 18735129 126068345 425391867 453539354 397917999 926546396 839534716 992347674 130549205 70170543 349805623 121171259 163751572 266687008 338437445 812471744 127436158 119969990 912001296 288284659 80478659 855988272 436649252 707941907 802662488 475359973 365966518 328439601 655014453 101929591 751879332 382028612 748335707 962599841 677973821 246872565 398597625 213209222 444902899 408779226 954185467 681139457 268322068 921565664 108664163 417367589 938742226 722912520 131424303 266345955 3512850 957887803 932071815 891548205 740695632 264117270 44377609 525232535 387672751 591246826 427255596 953508598 447682221 173264663 481248245 174040983 216096413 259561320 98566931 542203222 313112746 53711329 572556077 15460022 890505645 295687430 142636911 739135811 674712963 392735895 655408276 803556039 232089581 659240549 935259284 289215962 947502358 47173144 515410611 136164581 306555582 819185792 758053700 915058176 969820499 771318545 993306679 618856721 729714794 249762934 708740788 31362476 794931701 490993741 13582353 93567685 804623730 168900417 60376785 532189152 539167634 197042612 237428352 320213318 881015292 172045020 18474200 203298494 42054971 488877588 426702275 70154904 105894961 125923789 890055506 448746352 231224292 688529494 183597817 804675722 415365062 935647263 101444054 703449948 219196153 269063917 77244796 604098704 754936741 605873003 820871411 476911522 865893313 228441077 415307480 401693037 375637678 761515405 375879146 404421014 89409177 978299169 392487821 5554862 747586363 963799008 219061376 236054067 24762617 337632015 157974052 695460737 237731264 832795335 214278248 50740158 429534533 718390946 786580699 41487189 636321104 48247416 614695498 419595952 751442316 211744530 428150878 371303648 139996296 974964444 344757799 351191215 798227920 516748195 850980493 381568717 692698185 969072879 390680868 863420140 50401524 162541014 949280353 75377626 464788663 164872395 379726583 251954009 629355943 203978096 535565488 151598789 675742717 807641536 33639627 438505584 120359756 855203604 951099841 750082768 160840912 654325591 189911205 690963397 754671701 367318316 781516131 199216558 293417390 765566769 506016634 502049454 477890485 485493226 680195593 481212765 928318446 880604565 110058988 588256022 268644444 667440150 488501358 159583594 409958310 338150729 713716149 164629496 141546968 801887005 763563849 526174198 981600909 338606094 555988655 677027033 167799447 408874627 261009235 156130755 297496479 805782173 436807797 607811765 738824657 514099154 473805340 756834627 931183515 566074953 275327812 756438853 578310323 221945291 223705950 403328214 809402272 616964477 848969099 516658426 388106532 538262101 65479396 54112150 453082413 253576139 684501040 809502709 423922866 286896407 181238471 113731897 763497603 869672425 553486764 756464218 558092136 79492623 295189169 608998073 116972649 779465654 110946718 26392897 279753962 913816316 631725 654641499 42135774 881173874 435446991 439795539 121494343 201351773 879374642 493320778 204613243 592315692 474960357 376086878 659691282 424239369 263833325 901003308 233112209 681065489 969198693 441084757 881272656 770231879 495247599 942426159 577716162 694244984 776967661 709722882 550376132 698388915 398441040 993118295 426725991 246597713 106231626 645997789 272253181 279614045 73198776 544593861 876735038 668362351 388384418 170199933 459946640 12734880 282579925 593492374 53673061 989597963 663869511 739833892 553250946 108363499 632234812 363353472 266015587 296713612 351413251 51955989 283550990 252916133 827076539 70481757 856558709 627317076 751617573 159081945 312292721 736584896 224880646 562216252 368252345 929432563 95740436 296024700 527364497 373995261 398247132 749112992 744280241 753336287 281480358 129779634 579445170 129583359 304152996 888855341 565869266 728725704 979016764 429549117 67816430 929322526 425473514 710989317 222674216 783771913 268896791 366406388 976895513 25578425 156164499 258052111 184016066 723722872 592518232 990190810 564537212 109202657 328399590 700352085 234469961 754491974 224499747 412609057 690453362 181869420 285990593 298832634 744200171 845341274 352339700 1581430 706349333 519975983 345815352 669402560 26051629 92471013 722511272 479589545 140344077 229972274 163646828 569994616 594469429 933300881 620492353 116429143 88253160 30255290 482268797 708171682 162102380 425682127 894945610 323950373 420152595 822193423 215077285 511355701 673868408 451000543 662040688 934884010 188401357 784539277 839825628 144071444 642221676 54612151 650789369 919418881 334826034 95051677 601540622 373066430 283392125 813834559 930895518 242691641 722259769 395409147 823125207 747408125 240870304 362904380 189151647 62586667 483896639 456588159 513130773 662264608 272378791 79579636 643804091 723367390 565400554 144044193 422159169 590656513 652542706 248217471 809266102 44829738 905090744 159015956 756829577 519203248 765108064 134681495 219192299 469901121 720120138 880251601 487576241 791944962 488670778 94086234 165934400 597298550 861340967 851265363 563612877 70119850 870374535 430028868 348795282 603588083 821956441 20368490 908836070 263978580 737611549 304604105 871601091 589375759 849088663 830276955 621793241 471622831 537539115 733087232 725116660 926921223 506240388 986738417 911916703 846865400 885903606 908031893 285284038 131257266 94196700 9405060 730227190 679162148 404482661 4315137 525420670 974813333 681292109 425968004 749261492 157723545 608588284 13799791 539675687 172278391 548995897 243448401 571362734 290287343 437379854 199666325 103570570 328076985 65132738 900149034 666976628 964577952 352681609 934105477 519537973 755133176 816463774 118257618 144708194 301591355 220219818 177097251 842318384 786431605 224433635 876782462 402932652 325465563 548443432 98886175 825699030 962818793 589061821 412037073 479329063 182450452 684028170 284709875 806204534 262368681 259100378 420243650 585885465 658887214 848366268 915059506 217512710 483360099 425964937 440699716 289600466 357225244 142157305 946032341 500878528 316854316 330030100 553720920 991579882 168621007 456738808 17508891 57511381 27919724 796201529 693747978 623098293 981097610 630856908 699812297 18713855 58112863 447129314 323785603 589732656 161818298 869579126 204533340 571999459 285362094 458211936 851200756 213226550 868008041 580548243 838953702 543650282 211833623 858798818 879660661 134889189 719366444 35708101 135005361 661297006 948155192 366249595 789092901 596361536 978826155 927435990 735802233 30797515 712898871 393943579 789321594 679214892 322041948 240527267 371790466 734332036 52989770 202306547 502729052 407346055 443398427 934856476 577725404 477109095 704697093 57118413 385076498 993520909 703888990 965175267 204019167 941738074 543451826 757660407 232679504 105287344 357019928 194077692 764594056 68474309 670080927 486559387 393931114 745781561 295070354 931455120 509979566 397708558 748068455 479597557 157667350 878789087 997667114 17141900 499224535 459408344 589890610 51315527 845304194 790962725 911014513 845764212 92626048 173032561 448309462 355615585 651583019 434787736 596552947 836228522 979802629 534755276 630771664 356659156 727920353 531519925 477729076 712993402 802517597 791336406 735984224 340159768 67013284 543678267 620051184 839624102 454244567 430719655 51258789 116094293 664277206 744096763 39265116 516322777 971028582 189769657 226461817 582491946 893667834 230808948 328463485 568621933 371078011 578189265 508057275 918072482 274610957 771474076 336698636 741972159 39248474 179638354 252029468 123962800 409670931 472562661 296803658 63857412 495614814 473873989 834627011 431400274 360711192 762588910 5371394 186900498 751255039 764813236 420134003 681103526 790366256 245166018 637456263 579323223 8745986 738595378 193359774 910381614 549758516 335145289 506413152 141568345 478387326 729455451 117626986 926236304 692212841 301411023 106943965 666095337 888219149 92806096 338511996 837289727 551049288 561314300 145229273 23206135 72361733 365331341 346045663 627498650 38734434 30033191 575715527 428654353 310265040 818406975 290543119 970278070 145422712 34609895 228516198 821186616 766819175 972974079 625728339 501261019 191057053 870389898 459220447 792810679 984223430 526113759 947778672 771634793 667985960 512391481 671437663 266872833 598111853 956934988 303955040 48808493 244414771 513613343 667217716 119259788 191954804 645406915 340151457 289124252 589801034 864399258 201366901 298642914 798563074 303674057 468183787 76924215 641224611 398295135 781284414 830273374 47706495 317711993 433102505 119764660 379278437 72211275 3253361 672841172 847852633 800655831 685449488 115330006 809727095 553810589 856976082 304767623 278740282 998694503 854011808 565352298 707708498 529425186 481161120 894123002 841533411 346122764 744708392 263699707 789991482 493780198 531071520 186376878 64936654 363149045 890763564 47730955 144496851 473410811 676575448 125157621 327661262 831579752 636911486 401578327 253179397 340198223 505766623 600820884 974921621 647471272 379297575 981522937 634306386 464830963 999902849 652164304 739950479 220408782 583552358 831342870 422403869 70791572 756445606 655936173 387240224 966664242 185439858 515782326 124015819 46613889 8578085 324315056 359702382 600166061 866209268 372663284 547157995 336192706 484935966 995410486 225643359 728056009 324718120 846892212 574375302 374412359 355051962 20272717 112964718 322892100 916241844 98561435 158262986 846357984 337145966 281563503 431187549 998458258 265461493 762944770 642286726 821959569 133541991 176886362 414193715 841820902 397247545 599225559 511167024 994747995 797067617 348860962 972359023 828808149 395466037 577523914 790510793 841234859 575553347 538011652 444737882 724653654 365010622 575292121 536491110 812906696 98665036 382795492 417026669 219715935 198092895 46380110 804070310 691430914 443438865 129460816 490426784 945653633 237798880 945208251 76108027 51541850 945872948 55444548 492007420 765345306 275734543 911707176 783681917 646220350 376125976 154760903 572629937 391495110 442341876 213641378 817769194 893846595 645768292 269591824 592857123 262128013 737349200 476136676 625053077 641362921 743612501 66229469 281555987 245432111 885335583 981342560 485558863 976521957 720215441 200438964 999642974 789281704 442821854 804308011 41645508 317799860 131479502 365586642 395544500 950520531 580590432 335919804 654551704 319274513 938519324 952608517 972243286 688916224 672531310 102745207 682314615 980254196 379470515 558368709 629206734 57143054 783517721 976140462 234459096 909403876 15148923 64852790 335665923 625441990 805805560 839175204 458798351 840404555 564322127 70001424 760108862 405627703 824692763 924636698 803036687 466739167 546885754 711169665 586489836 854255166 179551178 769101928 122938162 578919790 774675343 545745336 316747499 492846021 133054653 284237577 53666564 511694844 432635719 201259209 222228046 131688473 675142588 283236596 861011213 209685405 709892855 904469419 582872670 828528925 514216223 792747912 915706843 862970609 283348693 929840323 681505980 376629025 153152514 898132884 17035022 689074229 253968222 206637210 466303026 850718343 902251539 307755967 518005414 368278225 231877187 549464517 829683699 430816438 874363669 168009332 371270079 70529520 410104920 850845921 848596946 742836686 938668271 508910146 347743053 26191612 112873836 484779090 100279036 721819083 299909697 645182535 326191466 134730387 721314660 261575724 959204108 703634779 725024476 103321226 570906831 269297606 514247229 180933600 34574257 671249988 162003084 46886479 243076248 831382502 180702344 80845764 494431920 540416271 356407048 616250963 21208529 701272428 739011671 609971853 752237964 321863187 520276498 140855810 291966511 233927894 789941676 296630975 52190512 497544117 795700859 238078957 15850984 508433833 841846952 255117938 753065716 105447829 801062156 823317752 615109397 544946544 748810581 958790221 614097575 534724884 342167963 411529557 143252231 577018586 651324831 591863757 40997038 883855298 18020155 713640342 880229422 870210619 632809758 979082952 253482079 813532174 207042467 322499836 94062405 279256605 205781893 897178459 73297646 178242261 717643078 435262076 243052759 597736401 524625745 826848148 206920100 543013013 285860809 346542046 386661491 219665654 697723188 241391012 721232282 864738406 849885576 616582503 681303180 780262409 486651331 872575874 836120245 896799990 631444716 273769712 841848059 90350365 372357635 614936054 617107614 573120508 29331650 217129817 673508022 255862535 859481910 13576003 682173947 105613827 866960804 995230805 702176681 96662413 693233856 351290205 263099283 881961002 19778355 739339566 57711239 736127347 898223379 89039081 691358789 900209236 849979989 472877454 342283251 629797477 394972608 641721812 871466599 452493704 293376225 585837227 59201845 199855176 685409299 763387297 751988470 651556904 670267316 920331840 491854759 285767797 831986447 829156547 473844204 639624418 351358446 211753266 626415387 469248319 511349184 413371237 865424954 213391782 68022753 580103026 805727485 156741251 194938919 907403924 134929048 66069355 68296209 730094784 510776080 746145425 281795685 855652326 574300655 993582815 469997490 522448247 243796643 530133407 702144544 733019379 843253568 581764325 777138634 760689902 807278712 525432056 274996800 863727797 692961237 438216886 579290219 907764798 122546805 943735176 822612638 494899180 675874745 981353372 360223186 604782188 91265063 535802587 667141008 60636734 74286053 908130611 388088247 227001189 845533683 666884334 395213109 218123411 87658852 158089267 245161133 669990891 355324943 528897300 705770103 299473966 703032624 529518644 861910066 929141347 796312015 855590874 164418630 563046443 255806460 483561437 750742096 637376069 729635555 827594816 501542344 176037981 498079720 488902856 610283974 635101194 623323563 654511868 938303269 34423682 944279820 16940375 125600867 619673535 851423717 548901357 574562866 638794110 704236593 951998957 144446067 950163687 104472811 15256294 922281958 700832377 320644139 109013604 420997774 246113170 841866432 147533532 811813525 886965798 969455446 159224642 544180439 624953603 790138717 63474045 297767979 132387290 329194187 184653206 567666186 887611476 548190234 971947284 532425630 301073866 2586891 20026315 612163417 621201128 906986703 823128874 960580283 24600053 99080854 636087614 745625939 559039885 328028253 617601703 941150751 412106874 464799516 676027996 239354915 72105855 517354749 551725359 683547145 48883899 539570029 351291668 542889516 28866070 555436267 208894914 306499937 387393958 822424001 635852356 857707304 496803676 418901293 808423971 850025993 161547800 444745115 585837403 439556443 292878878 529939031 657199592 669561578 454598598 700970340 318061685 988936042 955669337 429505474 516566773 734261035 507098321 647612943 417012533 300703031 71378469 121129834 975303707 415276354 944814036 152661537 979375133 400310474 351929194 976331006 651222986 834742066 611100302 92313055 588392198 662711815 165999529 203329935 297105497 372913866 823980797 595759872 672016049 447727161 291931173 633701159 349444815 152645610 782455747 450981728 944463186 359525497 622776842 344634595 463055248 843574842 702949046 689750363 56948259 772345751 622382039 114673541 524361872 405217550 784466666 17838672 979252632 971810400 572708779 685971847 260038805 336637655 494125559 384735065 379396907 229108996 265045821 144268784 627675393 458984395 501769334 828006506 809536393 105900781 961145991 923785636 712118847 162751616 789493771 824401061 822785881 254360428 32529394 620064452 10551680 228490072 192100704 97455197 561370802 422529190 988331949 400578784 834293572 510020796 606706567 301411631 45635807 680288185 470838642 234788083 155492199 116047438 409778187 922186317 39004174 825100432 686593783 715140165 689945822 158134743 226655715 147159867 542472276 88842799 126202970 293575174 105057680 939371995 125993605 632369177 969512115 980901984 723516715 109530411 787174724 316938781 584679077 559192056 920117008 834415844 690732603 664824361 910184646 455416573 748132298 756125169 353652469 394869823 856489661 902573443 277400509 453461626 82599085 619310787 414193988 209160899 88385467 110620019 254558 823631546 570544616 898247697 811519447 679466940 153562910 230120846 694200011 515375253 760648815 363501656 12564472 111854927 535385020 565640519 697824806 341469479 665592290 711797448 243229702 149542758 615313769 83098259 236595724 617045611 934707767 632016764 287016637 815470177 491150337 82334969 278130517 795485331 628941882 449800769 338409363 852048917 952355553 769352284 240798187 493191085 892733174 594931589 624361364 999489710 323801940 863752097 58758953 738066670 658057495 96970893 961343280 285771032 985191525 4035007 232738044 966681030 524412805 578422815 350382922 667677491 491402717 238128592 690242576 547132857 270253505 211401049 813498692 752288531 702775403 230073440 200907833 676537411 76773191 86016860 413447412 32178179 63514992 882989313 735538207 849124625 512843005 810761750 29576717 143535065 890389783 328101922 442901509 102801081 915919784 560671073 902898322 988544970 371911832 324085222 769554071 586989340 172840511 389636805 97648917 55007703 222009884 496307987 965120202 936858671 272568250 826358139 508556876 150153389 889189887 911613262 729410451 44670016 937260034 613594549 26372763 928416128 839538184 764992546 319266274 615869506 55813795 596577908 763659677 32438675 828990102 666523118 734261121 698444888 630855261 644438495 158522927 378097181 288412691 12425343 335614789 462697905 233378034 745867863 843990 690471106 303647200 30013212 238527561 523994435 350042548 195218834 91832499 142196294 895040850 526956240 405202852 80975068 530311888 765210562 778788111 242031711 709141293 985742482 376762070 887644514 899152871 98137110 337186723 14487249 347925609 466375774 833695352 333708123 366188651 635923820 681589655 524778188 588031087 873727594 649621023 708427568 878154364 722794705 403715975 425310575 144862741 899591730 870763947 348841915 459637217 973915897 419514591 113954194 337184143 109946188 148483950 14413908 886734488 566228119 52238748 44615769 428449359 441699859 929659383 340985757 571311243 673654607 932796990 820331674 562020287 506878690 983469573 616131713 351604584 875607200 115478051 190168911 706028154 912971506 439129987 561531730 880147043 598495119 1880488 17494710 41205029 960946602 529230187 992789615 483544716 97395740 265195272 223997090 934369809 73066072 301521900 891182188 789105766 714274911 216358379 939560172 748283269 700748111 731633418 716600084 947242700 302710984 421330606 639656137 79590895 736391499 584515650 684655659 181401934 909038906 898386248 97933355 329139230 818550492 787327389 467749158 697437762 590245926 892793107 71503160 405443236 201743514 713745669 439150203 167241691 224770834 744684622 320611499 567685050 902663160 369238430 455973580 690273860 387856455 777307714 998852812 282415466 593158661 599521132 740668462 360148834 482300503 448341394 62016645 172021913 450922602 289257988 879977709 95064199 216096137 847463628 265021130 169099558 911014537 676871455 719751947 8455082 285744554 413717846 739889972 167213461 288846099 525104271 41919492 565394264 230167506 628542209 298610119 367739977 825490808 707324874 624896001 618511846 574195481 216925065 350446316 944028653 912132660 411738710 578279995 614248775 503511304 46384250 281373451 269452883 52669946 578104150 143263539 94164178 248901998 340485806 7359706 244167868 566915006 359492163 575756019 521165341 129687118 997409529 267296525 228164282 389435153 766505911 745528865 93521348 351845931 779671684 804276484 685145186 512989627 575522861 949051215 765698545 776621091 514615705 882834073 652646116 853123288 409200170 708258004 981620703 444823542 407756538 332453532 310967405 614205277 776378884 641119789 281070862 412226300 906558835 872440729 89388695 962493336 514687912 163177933 162423373 855172192 534187326 663821503 51930158 505862663 418934061 297649671 247731551 818378300 293212284 119398090 31823533 472973792 552300292 481573573 172442808 545941933 52723840 524293684 918573045 538277378 140117194 135437412 326554620 564383413 636171761 84029553 729311602 95388731 698637100 335182222 302049741 754640117 95520340 703928549 812535554 942934322 933416384 585640159 472508264 406969443 359036735 565503158 122669333 381543946 831740506 993083344 834443638 130357886 764885156 114638373 985534621 257669568 494088067 914000736 888984697 277963577 326970457 770904036 74098619 528859504 679903293 200079207 307054401 994383612 874672371 29233065 469057980 280988924 369526842 74367123 628923671 390648340 964554129 791934742 132251176 45238727 632908557 679887845 142744772 918653874 528347605 127504509 453632762 382413656 748624345 47580417 896815646 42307015 459262267 418573989 459480916 587146359 959001394 512117588 67744228 290642000 117397615 70872357 140741829 549133668 748109143 45880643 315749026 739660214 475097277 672195670 140602501 277569169 276256117 748946551 759886245 247204426 14837224 665735698 757900870 15878325 166188239 128200156 476967675 144431984 181498294 24318737 224953660 120769571 894473173 544800100 356016852 373903278 439362112 125026551 129984778 681295079 754794125 793847547 219346074 932920136 636729596 563265214 646188783 493380747 142502100 331717023 232616290 442191410 204320573 788422100 588555663 862278450 820797559 833934797 689248534 160846306 805110864 879514828 459314775 841712148 848115995 890405471 425384559 758707830 164735348 584826537 699302628 941200062 479114897 990021548 439900181 960085034 597473197 92261184 621481273 168939677 446524579 347376091 13699178 572730366 616113518 938141576 821162593 471000745 383334204 556762360 977949573 573643059 254058853 93840797 931491907 945433754 693230785 418668037 497908816 707224497 726811491 781175884 578227002 409267681 903638640 122261140 649815545 336668345 344404725 955916797 335574517 735322930 718608082 660514169 328503900 842468869 49227197 851943343 219084813 191185505 648298826 55795450 793868753 76122943 152446312 771232267 888010738 93033958 69152636 851896192 942374578 467688488 320107965 974066877 54747318 362285294 493154333 231681428 921083236 708241946 162664204 540466539 128090829 920343176 443279558 302027829 115677501 325357706 776677090 297217513 715771824 110049101 592942083 270627823 516350973 345983076 534228405 967477548 115942157 61491588 647468339 206858962 220159434 325237253 58356970 587818868 347478184 496966204 436603311 910693093 287838249 99374829 96279084 898243802 671797713 838519848 465827378 462621811 787313670 312207210 428339264 160568466 81195541 344402209 168976925 722263624 488274265 346770524 416240725 270957226 866520295 843753694 604078819 830870937 199989923 104902095 775886781 58259639 673039138 260113813 975720360 971132828 666003819 374585755 132137134 417588976 717110769 61166088 738015651 107157101 876853296 45234915 266403845 417683987 5361385 239727251 433958219 226196959 958144133 241229036 597894424 827831298 176421683 159766184 565903113 40511498 35714874 746752955 622884683 120724034 171653124 865230741 256225321 426998635 473901324 695778715 934490808 83236387 602469380 943557495 583797905 588230973 958191714 409624945 19056070 34208106 890567132 277886166 710730123 294858904 7033375 323781345 307948709 758761020 420397180 387145663 747460797 817345980 804291094 237523313 644010020 513059906 44820000 75554133 884279685 393689987 945656770 495174944 586429480 464950567 813250215 276698196 554577423 424056051 95771299 96467911 60556480 545361490 615466542 747707065 642554908 481609097 591957865 689313864 932564891 72374225 954957102 200102452 527599718 193073312 419457586 59085272 700620442 868856912 895470486 854482201 300386047 405566249 542179273 814355942 504984329 194950103 439741860 767429912 327690726 602066946 18218837 292672748 154208365 484324855 23191787 796629716 175051324 753968390 157088252 804051547 219148015 283106928 742605383 230716654 236681352 77525673 400308185 348413105 806136358 90746417 490794269 475494455 386560159 597116088 85885547 897222011 777233444 17506026 605046068 108805625 293536488 812015042 496690192 770510314 50219292 942032337 8163614 487142469 427808566 880672203 875198563 985529707 586676512 315846055 929075016 874558887 146104703 265060403 570904947 714747533 956113086 154846658 891151738 944449318 613379638 127251339 431929751 9136689 631854794 822103111 757463982 261950362 938318752 946248706 718940438 752138599 687172533 889913574 501702260 542932525 316544789 973905848 190064109 144331603 359004208 817071923 695190557 984129278 408333231 189708198 26598219 424925649 509987237 286799560 288278481 521604462 597431983 606051923 194836140 587787559 604678386 997699202 750697609 438631228 161050975 136334981 530556595 748356942 852480857 544976206 64521140 428770581 899724641 968929350 594812009 159049829 297119237 19999272 563801060 841690836 622132109 655105612 670359958 861536807 153995229 88113515 648058674 882419058 767906254 93854274 199341247 168654615 690591359 177068043 357633802 511030738 70469237 587927799 301833535 786175802 309892281 733904968 557114866 578403298 972911262 17767886 269503807 703639207 886015317 76060971 546808993 187840285 848991879 90532392 252121878 174927810 29395614 68386538 524189748 777417209 689494721 158067774 818683838 716356282 718862025 440132033 252481509 111254202 577458134 443885010 853158389 525183866 915187529 559768581 804808258 458917628 584372575 600309894 344607702 270316274 791011175 858586639 633747718 951111882 986736274 796821354 176838117 436681511 542102349 335812210 75907805 836017569 632430126 841153595 147963504 171841819 977535653 356195648 102773350 553896257 230620407 54088096 151662289 356215965 788693339 973814606 214079227 556712906 886779587 763056758 529247288 237404677 200490499 758483253 968059355 824791611 824586827 224888266 130981148 347622267 680645409 143456590 455688973 685482098 617741799 413146677 112134984 676308565 320259386 482796654 190304323 56578829 572331707 156914531 208878515 450088703 756622760 723030698 107958024 268753951 57607698 69341043 594070719 290595230 867787397 133990690 759284321 858429664 616332768 970954216 343796418 547687603 885618439 447933039 693797995 567956496 529208088 133810463 977929618 181445566 370267189 922993276 189504138 721228619 8917909 528108544 726893365 746131241 345981644 985304733 758099834 730735997 131458289 634438956 767544002 228881220 187955013 84904040 701729573 109898286 109174423 246295685 814507253 660423635 503665487 321012484 763143636 428433765 622092574 951126203 439153942 239361419 627769969 237226062 449434163 540852087 207055349 590329333 287849807 324675885 149439702 830090324 321604212 418621271 90925387 418760729 412772367 122021370 467621877 118735679 667085528 49715280 562898172 625616694 44900540 95971576 988062870 330961817 99063144 287352969 991439581 589274601 297229631 18280721 723540589 58519719 672719949 196007783 689614885 919086284 609470637 887397374 317726114 264646262 169324023 94276820 674952081 496989186 197936686 764847096 990042527 71607632 632916087 988050789 61756989 264264782 559081587 186969936 6358049 926628598 234294687 208896434 71179752 259916638 50580931 481302096 573863015 358270102 189768956 724066646 294777043 31059265 397970611 884473965 868790546 614054473 193332667 398636237 458321692 155601075 549127786 546608479 955378456 950304028 800379479 917065791 577428846 42350172 983079889 933423174 898217803 655594813 733060853 598203291 154666768 797999503 452502811 482196409 8971921 169442491 691703313 468951332 352180616 925616876 192321765 984583657 59555272 75571386 64172889 684492102 84641759 429999606 296701435 640939859 442126945 550364572 669859965 273397109 895219150 662942189 133860598 133078145 504961431 565851226 38011216 695313385 973563386 383293026 659307481 462541880 926367891 703196281 372880462 391711232 139517671 99636196 268264311 971321013 176616454 146043924 370666470 871609075 933007923 859042006 986012970 858286976 133979149 96153440 485115775 403062778 658395570 459101037 946397382 164350432 519723987 474312510 22708732 231104286 803019691 917331379 620422302 814539943 570935545 901978201 835303739 851248625 319721750 677828743 940205102 931992362 906698401 178205075 901322441 980393204 151756440 887453793 245649069 459940227 845473478 217912545 64977074 298994073 306144076 936486825 763573264 74646859 577346055 185837090 845113869 377888848 820182689 611397370 701394022 19608200 664931003 75985737 266603295 629481647 376223038 617714949 368693699 659370640 202099307 12856301 855284754 544152903 75199259 942279333 775239118 476131343 767847838 375135439 781552634 928398555 578935535 609140280 234041255 29654391 128801903 731063393 990005554 827074110 865918253 165910283 709219077 28990011 942282258 505094629 177501189 690457775 759201488 191869063 209034156 406701391 897164229 170880681 474245752 254933092 453313801 980445476 765825483 203479822 839606950 540809454 804917367 425817145 593468708 221265046 326656416 442309238 691073207 398612944 319898785 710330888 300207619 420295154 685983581 957484935 399991315 24741777 125874330 714528752 158684715 896823644 149157436 920616545 39996209 167626114 444219986 925188646 815192611 822876694 889720518 523475071 282464755 650348798 845125201 357428853 810523729 228380335 421944322 89374164 648786876 157416994 968059899 83787069 625933218 785082670 274552825 369994499 737354476 593776245 23978915 694360150 937507402 708806633 758968287 420616158 970679660 624437579 392001519 740993110 560929286 841109445 947459699 52610444 127586507 964722822 435796139 792407038 276815250 621355722 731979332 500292101 982212477 28049482 771308783 609494454 871335432 616620605 520861776 516461938 584716867 29422042 853424497 562928279 821882558 619211982 514531177 593816973 532214671 646178504 415817162 564100112 79092745 336162480 390903701 164003699 853776999 173046137 482410498 329557677 778407006 469864338 400065817 296779759 762386996 45860540 261986859 578568153 608388383 193117524 970372052 657348345 614665268 793070287 629144961 895270437 627120035 592606978 248239000 949157458 606033304 60660141 90466494 703371484 528428908 899289596 297745151 130403484 950560841 768747219 990717676 964714204 366017619 423606174 502626642 834975652 291560135 963998167 661393151 612603266 915054943 92907914 670169786 536362869 180190337 466181933 959045477 996325986 598400970 374872101 427527943 752463503 730499344 797335947 903249960 540741459 898400940 929962346 160329217 100202207 974498950 151163904 241734138 338942928 107662049 529219484 354029395 243015628 267197575 512313282 68297305 969854925 258513844 320820595 924476907 626452510 749898186 732384627 785668616 479986029 77378534 329469103 339527493 487769760 926427879 83635125 57741184 346957969 186100791 293694200 261680665 129794137 719425233 872704437 254589079 692706923 300658681 776842852 841000519 520941475 11808563 716728367 247025987 228858208 473190219 109705111 545687067 62730491 217999053 194959486 422284628 492613715 932251188 894582215 609149705 411437565 378146808 915762607 387340841 462120766 121168826 116688652 62348214 501266121 848314016 145451366 526935683 680191107 819113655 497311981 580163578 669128638 408117140 403274670 741824295 943826970 318856258 247600583 419194158 371680249 805286496 213919154 883806903 151107025 838482960 139322721 598261700 390993887 221760514 103301279 113181557 590697616 773748973 492424220 645585565 268484560 443955677 841262213 715883964 421751726 647593575 927052975 710246939 608969444 38193480 914650856 851372352 199903417 121571388 582587219 674257929 170329676 872870931 908895616 809243108 170118245 129562740 573593132 9003738 717802099 302193192 505973661 620377337 765028545 283617024 856943730 94988858 899976334 250141684 515487180 922898973 462635041 714865459 909873934 120342223 675256267 417776109 708299487 354076879 919987523 572607294 939627771 260628606 566455983 166469031 531281777 864697036 274509465 392615692 480614591 725288288 443198189 663605523 915770140 871759379 647460527 46396704 229418804 526294402 251279909 769264616 4322534 203154734 303760347 639957294 128845136 873933851 805922702 882528970 878199400 254313632 706607762 7677935 378752668 215441370 694204290 981773553 820082971 776967019 517141059 465354940 423642894 273331753 185398296 99330503 962156369 695406920 244134779 602025013 593139004 347739111 967964029 43921517 251237951 390458837 382712422 406943023 409077944 873791314 972706749 673133486 757243902 668857997 220487512 528237057 686113819 477343809 110377134 790279791 215550711 123491401 346381787 844222945 576094270 907691228 901003672 965054834 893013164 35087346 896661205 764327063 979334403 3460236 206091131 902737516 193889075 208702417 257007641 116333341 102951750 916390520 352384974 778089602 81460021 815956789 887271284 416988017 340411832 260578661 403469841 384561136 210314576 713610741 269251482 715724331 773816104 465488346 365547258 243404578 442263643 77356325 983456811 922220328 439293189 51544305 769307316 124194881 79440510 212383475 164773654 506796481 886228922 381765456 314996284 120781313 324511496 641827756 219502775 596808310 241606414 755583891 978967853 378312334 425906529 623210055 268954932 810335076 836889865 541614032 615258312 287933923 407219927 409567202 578134425 699703920 363972783 962214908 656599013 941005018 15249761 6130957 699348067 927242391 797526001 79610237 984561939 217819470 142803220 354358061 571174910 865600394 938552181 597793781 132369325 514997692 313668759 92558163 90552687 921607015 734817296 158443787 428247632 576595411 727533273 251094744 123285518 781866194 438132264 978484001 638730848 545787133 385255387 546015965 273243187 905226772 527353284 98625325 79482086 33803533 182868479 925964229 438742850 780398781 522736438 468231351 494177743 781891653 807611222 661124557 170667884 706115863 316512704 63774457 849600307 466992483 490270318 413174775 59681061 754295763 304230736 964042511 779393862 378481617 599682022 585806299 328855678 173377703 772368068 417564604 467738779 742572912 96430469 416865831 629902246 509867019 648297421 596597831 245165836 351163081 386939263 562304696 136153159 752869065 235563417 272371767 505980382 31314962 395665847 563923335 987824524 200547153 255858504 395446280 842910094 764636950 851925440 629644941 744037610 363712892 927788147 375513885 96580898 89896645 512961313 833003326 780806465 303760042 728227737 225116294 445873856 92020499 128648263 933768326 211315290 850674126 591565506 619422279 545146301 599304340 565337418 563720015 747134058 637001404 851579855 556166740 426060851 349541138 680409782 613492506 983870263 661295897 364203597 138054154 304145063 722506495 24619117 863348678 4359978 551578645 853451853 147275488 374125441 795951026 340948837 315134543 496675007 225846668 660781617 250217577 723420057 783151217 219455272 715793778 357659458 378845603 346175761 367515573 256904733 15961326 882115562 260998006 905473954 881890418 53236535 669756761 699109637 508827166 918730141 509310363 506838172 943955591 650575599 657395206 93651197 386403900 456853920 826574903 351505145 834641455 445262850 807071982 956506025 35883373 976380991 930814109 802589356 592575249 851201441 609376673 497485067 463417829 824562328 736864290 996238941 454958563 442488918 119178348 741374797 252432006 593938056 599502000 944375364 645464312 60518293 660323775 922939292 107666211 500278100 41671877 553605161 254369128 182156860 827842995 304130106 325154200 234860303 129027952 276376421 837456326 685845656 650992345 179340797 385075596 540631842 597944893 109323957 995051446 730868935 645560529 391420548 918752035 366365423 348607214 238612693 920165090 32098741 84011375 240215574 762068477 224825474 492152814 702305377 743925599 470717864 996096666 883905981 921651942 605185396 396879766 308248274 553436311 433857501 60362222 485332113 225103466 229456425 798958364 587092621 9636920 101619697 420962333 820109872 44935666 277361066 988707272 507696107 414632056 173494363 120670214 633515365 241258182 298157143 194533648 692571663 799214354 882346232 416074174 486735109 957396884 329478559 611455963 684156594 10660759 164392400 975722997 468311107 489363865 547248424 640873646 418128751 956935738 894179306 788059388 384117685 178955803 441814997 344321490 150344292 506114955 490333215 24002642 455359084 5739212 506228026 510200301 141659356 715463951 250102053 747005544 925603512 16153897 231198287 150723761 492461750 80724355 559386662 129809524 805666179 484277093 362043038 646131431 83135319 861058960 383378272 905570523 515289145 471852172 782090424 95344964 18277822 663609520 862648344 565912815 844805491 751824329 40020680 439206700 618420213 158712507 673490465 483548934 858255425 539530738 493031518 264691140 123064124 440481133 349822807 873672027 33141130 121723566 62849147 160387014 587601975 279677356 22724072 473031077 192348686 722283495 724628158 379187608 600873970 618193381 598386731 599039472 378030458 216484182 752764598 927024249 300651331 891653222 848091255 655137644 375655214 734139292 429512390 642344359 812409278 817390684 167508736 790878742 404637384 652462672 318874091 238096114 525740319 530545099 274648333 708604389 348030657 209806331 542227264 914746085 649975070 617875004 516512776 723421006 964430414 575797868 918892920 124484307 987580703 364794621 10782466 507243575 539463515 726997227 637437139 391756821 628231255 414457630 846403016 257395780 965282434 983719311 229770474 877187125 487335956 485620042 7364828 247649300 823631015 893946568 589780306 943440114 51155120 266042859 798048444 30945 372874554 595561144 98557281 961214875 136058392 432513473 348415770 99886139 333799113 385154055 922255091 748838032 639145511 221250430 785653286 13235962 268292854 807663724 229011476 597060068 501345524 183574930 178232337 899157957 415017172 968216897 82542772 728609835 515439719 14444765 632448404 871822373 504025585 834569674 201009795 960923925 706589444 983838544 50142225 152635633 69327571 234258074 106832477 971524519 641698290 45550591 866557718 113173741 112606748 761188298 124127670 524692207 985994278 24786875 23675575 395976754 387068455 157208616 633851336 390984848 480664552 641789267 911604619 17424745 97847469 458506067 621648859 343415254 910135433 525953904 221141448 748594167 659873914 614047865 153526158 793751789 335475234 491360480 992105636 955580714 867153023 913219204 686197817 234399497 962913215 92907761 720002227 684668348 774050426 48175060 19582507 628407331 599067502 596601140 132536801 915346703 862664297 563253210 229121462 117504573 938774500 746110742 253509182 335232038 749583481 461944327 189549704 651435899 333646106 609933957 512623080 683931198 696803968 402885740 148401282 252363835 937348140 305267633 576146525 707908400 332585734 70247957 820642029 493005089 69490620 968960540 17448327 886065799 537965259 603834645 277928223 891750027 719442146 717180873 407546039 125763791 202743135 388598101 854751740 456986674 889792314 767402208 563241300 253931060 616786572 842688783 226128788 371635173 711020034 630760856 560875095 470938538 44435012 573146912 978008617 466055721 869017587 272350372 958547408 798471263 6987341 222603700 887271328 758067311 578868953 370149536 6477226 211677593 457597206 560232576 982450158 275331990 441974366 947735263 953683134 735844329 224633140 998369732 559925593 152588177 558402210 606884392 617739902 377393772 851404803 150446804 902784754 272953214 922068596 887402716 886870370 247500531 998012667 250346591 71625167 436451207 973016215 665771745 214400980 35409025 611864314 572958188 724786316 972258267 799104245 805105672 227555563 916818854 758298120 305836500 604046514 645013779 416662798 633420637 423904692 805324873 750611418 872319447 179853323 914937634 433995356 977871254 559451449 784301729 949782193 688871721 216273197 168520077 618669363 69541761 519089682 497425179 95365675 300841156 932662489 933349052 188126036 115212809 9099105 629065924 445995046 408391918 117132121 584442567 613962352 732975327 760478872 848860839 255288186 804452975 839719740 74971801 209396542 158738305 885884935 631268890 412081340 350533691 376711029 10822591 286428948 69025297 532905000 669273820 288988388 416459865 453279357 721909427 205820921 436397772 633308446 176015557 938900037 849975199 104390476 559916301 36711766 639074181 996631335 619219134 656970087 284689982 824482344 811168824 390646738 577583159 659417926 494167626 291739301 179126828 829991045 174374828 838998607 790525113 887516789 201772300 267889658 803372303 583003824 356941753 295597544 243499387 480667268 161276456 767109756 797597973 31753060 841756634 803234234 390021481 222483575 538139076 229141296 631185296 837010859 392408281 939584236 98321821 360440009 218535404 962715205 645390051 597437575 472934874 886503748 843368593 789874352 105356808 972802506 726121239 854782223 283546740 485373116 472478957 603579906 945459846 826779040 673443017 270298069 960609141 62742726 678563555 980620943 598768515 421644295 291571051 840472604 859618420 740477628 923194698 619886065 164433761 803613776 646528226 312865264 818189137 270841748 425664841 19201292 658502701 558828288 926786766 129999527 736576813 236701186 650236967 178803772 213547071 568552622 856291599 562725669 678573860 594088350 304901077 710798002 957121402 270556793 269004471 154287920 607061169 948929734 354247613 428037794 713515618 435082175 527833520 874742673 296783267 233794471 148309451 765930708 82604455 676231590 445298843 351657138 188096251 443964374 319450900 140178204 793455574 202045941 25692918 931912654 553081701 13389622 608141081 380264772 485386840 245674049 217097830 104587988 247886108 159477860 318044701 340864490 527861276 859524559 113004693 764109197 470477324 182865333 415502458 858605037 508112952 207152415 850308197 819219701 549534887 140221559 706249330 170876481 91704328 701546517 675438838 875778804 176126893 81012056 919039626 986540246 70116957 28380999 944481841 271407291 330207614 93290142 92703359 102613464 33280560 846719732 940063818 869132755 64327363 635223735 323761911 867455705 97619038 15132171 254455084 686056496 262701892 298250682 206900788 546733076 498171599 915624239 298023093 133140747 337210520 457659718 214298739 918285816 283226402 51011863 284480431 756675312 889384384 419229604 965270617 966729511 262634446 113257248 443579851 12225997 332123769 856745398 135308535 860849615 70934769 776749758 628780057 397719429 552563857 109591424 458273377 500981394 236502083 214575285 690897014 218922646 953048772 389943831 41351117 389826826 571571987 862287239 147572321 546049248 614132366 298254644 104403419 180324296 956536084 805296576 784064422 365185237 809959147 173633192 784547473 936144456 113006190 707426412 31453052 941905504 663296290 926895294 197340320 544170617 551926074 368263623 942197195 344666475 404739161 487215311 156699900 63283700 62825858 480204299 429877111 258710354 826269016 243968139 967933793 666685289 487990112 409766390 262146363 633268473 50735121 307604574 232288895 608460298 451411476 63475608 725357012 710870652 450408048 244884651 908929361 443055121 458892529 190959246 500113373 564219935 658337563 583783876 421341485 417858920 927986828 347997382 306079548 223707885 842831963 966570193 828384364 382977163 761846000 29454862 404550757 908900854 799289750 116697464 788317582 646411658 804441657 952533306 660302978 739183455 124583590 840515505 311657098 567423264 870652737 337847218 158715727 145303059 40218617 511890094 174298614 834566909 321495070 731441008 598519284 877266167 939830626 879336430 325311901 720859338 532384495 39767836 608963693 624141756 955822737 771266583 636492051 152281327 431809586 190524143 493255743 78563824 446079980 362808298 776590958 92381545 888210284 546439695 278365219 939741457 450326535 959370833 308960599 574545776 752161439 499642620 484393257 160196337 951215140 962684237 874417967 518799485 844571397 695410964 893677797 473128389 60240890 279405859 970681381 831492424 405148312 952510067 986629450 854807591 944878191 930105638 695529711 957611178 301232116 153290933 542388693 128325929 390991827 997934504 34964545 821294809 476055630 405337209 148221773 636456690 864583377 119976415 815862975 994527015 201488959 778202045 771609970 402562944 491350795 379297929 87541410 595862499 198365089 801627905 898245090 569453401 416447255 359511374 150487702 14466942 38746543 162839526 310023904 736158399 891920305 411471652 794307648 923277024 737749536 397314553 5638482 946955684 620216861 751863227 322499205 416330217 784901963 364746982 244344187 133690666 133489691 950442222 366732015 358133397 422632612 51083513 97764220 991853940 131026458 60779230 137377680 928364245 416469611 273148726 461158567 103439256 221897627 23391011 93989446 743035717 918124606 744568575 358541201 61772466 990244134 978900253 207558821 321730082 527690745 310458430 503846023 598110636 606042251 738439874 570479673 433054111 324701991 590918356 695636307 552878168 468494887 373981857 581196683 693497997 247430094 944542619 974042189 583979673 835953530 887968469 101975953 768710265 845720284 320753084 108598288 381400263 326364026 530453107 599237685 189020189 265862139 243369315 596137861 719629787 970570358 131236995 247035894 847888645 230886445 959414770 499434023 822403596 964648241 17053666 452735135 961728538 996735596 574936520 537613614 105317384 333148412 642255278 748289800 581587685 898353427 291714556 845414547 912258379 708043052 350862863 670079483 954958821 44833796 18845676 751739870 955478536 742594576 919231696 913934887 222156327 649460731 938228294 851896083 391889446 388027137 245570971 721794727 904409491 387808807 259909780 247837385 517911046 689670709 525333470 690184024 607645785 574137026 451031521 403811681 58360635 844774712 636417038 844511388 72056366 371220474 640078733 395465926 337535393 961495560 368222602 379728877 665874517 828215981 721981068 813217105 137212094 921920017 993020486 676865751 609377426 544602180 663880910 418302703 323943756 134204843 178619591 752068217 263491137 617773659 22295204 820075270 659361571 724147639 808748869 960482114 627651589 562233721 684696202 780739294 313277669 957330325 666986599 992513364 110487542 873507895 800704705 80849635 133808504 392717870 446230663 671832277 385466330 726823260 251753936 812866329 734265720 546959213 189010528 332580645 363229659 364199183 458485352 241780496 954670886 593704818 212142034 724634427 423892428 513898995 657639505 980747698 941697886 94322024 864664714 274395827 599203514 934853651 66800419 526264094 625489114 920966517 382535868 16502241 831400114 604447913 199111802 899873314 76632875 297580346 102640909 414873029 389493519 395483620 787112336 826993947 527517924 953936305 627694403 482374024 457266722 47254078 77196014 216298685 536295902 811600173 690332479 522769077 848566988 602399587 99389355 445520537 311222107 808789007 909885395 37459158 235705388 25684043 687996764 931460622 846678940 987273040 392672283 10292713 477946278 259312638 717086510 101694157 429912163 358713707 649595461 108265508 69539258 280774882 180729676 910430278 304205259 85325534 965575587 746148904 692614727 190132091 800448964 45525021 209965255 417487471 524666961 642874261 786661035 422508420 525698064 279172868 563024256 596281570 60673680 512772672 728470724 142989481 725187031 977676555 809929346 823185297 748942836 513331180 158840508 733280849 97459652 146529567 441564837 602517088 40458131 537293660 940565659 227659669 954108285 275230937 671345141 98084132 556320660 256022123 761758557 337260544 872683100 826535068 415576413 935029338 434757199 303808527 575645079 221970197 234490730 110863609 186467027 554731778 505892406 999582424 588776165 992085964 469446839 174257770 860495518 397858432 613473558 127583367 123346184 110849928 857323650 714351080 81784894 643970660 387778593 861186421 626493821 58401371 103839241 14001379 546316185 743615970 323063244 930496305 712456188 803638081 758105222 912615005 528084620 522786783 612770301 210062330 803418529 527910644 849487952 332706243 533671390 374691789 840427848 262270546 479882722 430488290 301874617 509829928 544061743 337179178 804059247 41091076 558717937 294361282 584527022 994820546 768506547 655006469 456583301 290158653 55232300 387379512 311753462 994382334 627812782 882273877 729967279 278492532 393154837 677606084 413672851 514410871 157654787 533948687 181915184 938373137 520786682 107143679 190946483 256228137 966643120 812285822 202369550 979939762 225902995 16035859 107743109 283229005 264915679 200930703 257625810 607874481 280875868 957980083 200197022 178898703 361975448 212551531 968080820 904417223 875424020 925398272 9875129 692910160 152709571 231322293 623786511 344084442 466518981 316958366 328062867 772531752 743109722 703131961 528107581 780688380 107865741 800163772 34113527 615938068 561650863 672811973 428646992 339955259 475114967 295965235 914332402 931752775 168793016 863448867 848419428 331233236 368804614 107490045 589561614 648959141 164124745 913736457 747097060 869510187 300319005 640985457 762403942 172795852 203008196 576329292 624641340 489254266 161112104 41038983 215712606 341654957 582410769 900458665 796024516 565800306 920003093 689840512 169107549 95185231 961321716 601210960 611291904 368867904 111443423 39953966 801696668 524088057 610812671 474800829 32253788 220132784 834785340 898966347 95330812 513735130 684180798 982833975 478603730 87664458 841756824 735775774 286272906 504762271 679181265 745966260 45238414 223793909 229401168 151707637 101673168 28317193 291312111 358846119 590376149 941116337 708660509 941709536 824607438 965410809 394800424 426425999 323810849 381053053 295161032 715697577 915561644 939891862 343461524 79586339 679861015 185370618 392797789 849252453 887196651 401054937 248297338 526225061 419595271 923606155 750107658 762741083 63632116 685155407 999846288 986907858 141761404 816737208 49917229 489780489 993393542 316789951 973166458 263887823 96704505 708161416 402635711 791986444 229410936 624036335 863380472 975304083 968379776 442492376 480872973 518556546 227868002 675978306 210128692 494095319 237403747 71181236 954882629 7213810 399811227 669487359 692205951 552662793 630038600 338171405 990938102 164800819 341594342 681936789 872763506 100207202 429317760 249443651 909694566 971930636 416469135 890433216 610679089 355567140 18238437 213968598 487065885 161404417 851028764 23404818 792657669 785386961 444308100 126046647 17987828 270958612 157369997 802024754 375796165 118342593 606775627 400862117 711863467 557030150 991450962 914720745 697403540 92338256 694224231 257817745 553959197 812871086 420744495 241724641 527496350 188287644 806982874 822586460 905834667 996354077 139494606 596700937 192072014 382876594 165759533 161216447 261495736 637143882 786385289 991048251 171262777 305510948 458960455 704968229 908321626 714728634 77503396 150719490 969817428 370525944 918090516 677698060 810133923 769384738 199248784 717009593 547799547 610101403 157838650 565881237 977357635 476404799 427784063 665627458 361936406 756662191 500480566 607991784 242690362 234501352 542983459 205749955 797395547 147452109 527186048 2149964 927420444 981679534 413418829 201674414 915410741 637625006 572120457 28115228 444662964 89401916 1854274 237657555 107228342 488301472 720696309 629008258 995484478 60941769 166464380 738377969 183945832 208299572 339962853 70047479 46274653 741192010 823063116 507140129 409105162 61014657 71570367 458209410 104609073 248395163 824448990 627005431 692036054 997535540 726053614 714295789 303611980 677126072 745908952 952027330 993204503 97126500 435087287 411365324 690430387 299248117 658526714 558953952 656166969 264980257 806344735 772621157 606678400 641698587 44545322 578468093 445998764 952018206 485090238 729489558 519579935 815211853 21147573 850994462 277789782 39297050 548264687 883453060 778029111 656640965 218585984 505300968 948777724 484927875 717169090 339378593 181555174 179898393 211518078 156134345 194388340 274368361 679688154 387955228 911300259 706790994 701375980 267885702 570896765 194507931 179281023 3108574 798608598 200728728 270442831 694986454 664512129 922076218 610444029 177768231 331857063 181912232 674123152 97040911 355360507 336168479 855716069 595632524 708853651 662936871 543402189 575951019 321503979 520808500 614048961 741649349 246922198 734066999 724446140 957727184 804521664 241942449 327017105 708493077 568067634 200587779 541779936 861931290 853376020 954790575 241450464 691399937 639183797 231119796 280591472 49775359 673537351 105614866 238414142 352068759 860720837 959199393 539156855 142001046 899970977 124987085 9427341 171796198 665104138 478704607 117895824 398186613 935555619 461857063 766340913 164760358 434193649 569553982 104116777 607746233 784047781 64470837 251904 679261865 423583750 72740628 880974332 615011738 136886490 873005042 747491350 368924813 265320371 445589688 14444383 745920534 335061696 133189449 78407218 865766195 387676534 86017227 765879546 622057239 608315223 922195940 856857085 785996333 872770292 327160965 109059415 719305402 108882871 720587990 578606464 690746468 165280861 704583116 392042808 901118763 250477926 750881851 299133381 583278413 366768176 421030884 159084498 434736142 700637392 729856982 911670829 756522419 382748460 801324443 656185737 30361007 235506082 522875132 643419943 989034129 411489497 541805213 836057001 437864307 542426301 339800715 714306005 157147883 352842407 214247428 869443549 522563574 523153300 813900497 965343802 85482177 260333929 335639228 237037089 506683838 949615477 658031855 473385021 299269997 615960951 70689014 304491466 766802055 323306282 527724603 813102202 635820359 321496432 211591577 288183052 1425756 692643124 183045771 37800855 346993634 45024093 538097028 891120560 729316039 585511915 968288731 632814075 342863709 333077750 981923993 574284969 854289159 865474782 297382062 478504239 847710861 81099578 639837730 692978388 916548566 510021139 961676961 105430596 846386679 990925249 240356442 380479423 282891750 918589827 675312473 471653716 862912741 199858052 630478059 233066194 246296588 165202815 283399215 286531079 603741732 101423850 587027747 409774819 166323626 372714721 544495318 387650714 197043426 263927767 695207595 427110471 948237119 156252602 276033040 717440707 646204125 326825253 981797870 845018602 864403776 546512777 407277769 51838907 172946275 374176092 966272444 892764063 462119579 830414195 137679150 170899187 583767208 513486255 196719415 641840657 760156066 724753734 242216921 560713185 390798053 775397821 797463992 27887448 786224769 50668609 741591698 538002545 288739780 608634618 64581160 886626961 799641066 92405993 376180196 896349598 684561354 18991834 22407382 789380984 257568715 532779417 462185525 191342213 755778521 354014220 232280246 993838897 228043 325515820 300613928 447199136 427573849 673251862 468270888 804232484 156124727 796616774 207521182 854783592 386752429 632720942 462033258 493249018 139899705 700029462 40228827 723059699 997999685 942003050 619273710 251809655 228268138 982283725 702923425 273671407 866326247 139206989 544206951 943085647 288394258 855102408 268294033 382079149 815033965 536021046 558370963 319973337 591507832 973516490 853472034 332131863 600462676 250865716 513397976 875265247 696493967 548082237 693874786 778245866 480746164 655171953 993477708 293910282 851224772 197311396 824561143 315033099 886334308 247131540 322808751 210534290 398464508 598385013 201281853 715166111 120755343 922530267 30578094 17744447 24751265 864217937 149380799 661955985 586412524 82379399 640049760 311006452 972297688 659249221 918842392 395196690 868231818 967116287 180836387 798962037 713687909 127709605 4350689 631822823 941032064 518415904 547927724 403208194 81988263 476537749 323637526 877088318 940490085 237527752 114888479 963144135 603382988 652736531 328180247 986943996 953309632 482058091 345329530 543346717 90806782 796958492 971223460 407590271 874216539 181674742 81036598 467953038 589702418 446987734 424397017 40016812 219908119 17818645 447567971 328265823 53351368 177492638 464270648 423315266 185363155 984410603 102552489 687464837 703219365 438993839 457665261 253255972 961047791 422337238 316017392 953536490 295539033 380745733 187149419 413545841 118480547 666254480 520468237 441753666 582109107 846714667 239862344 337262683 112153010 556989916 233931766 711412631 33534349 883355532 570517096 645191609 273150099 196624951 860715928 675448209 709276755 788683819 152772517 934004618 814090650 750106756 640881066 974812284 403077981 201682517 519162965 388208447 286731632 175864216 631731332 556123444 792364533 786738019 617608424 871256493 880000571 19361447 293781664 503756356 276197378 736529379 807124941 141634286 473286520 953945024 423928971 623653878 35750561 869419647 778938222 175913029 965726305 733757539 764583727 684228437 712903936 176574685 186080779 496500966 360298234 374989070 566831575 804768416 661294329 587666874 19648164 786678913 138805628 955893896 752687599 441402000 925681838 111889606 636126690 310298282 705327232 199738105 572647636 230943534 656882605 792034019 677968756 738504422 821578615 857952769 345617157 556719823 667111746 809100831 999652826 9348194 583163301 598256739 433276103 168730332 185180535 974196025 358488685 426157961 504081206 340145377 155268291 136773381 770530962 844295177 144135463 120457130 304362115 705866188 523184756 556840917 970404559 145443586 365441235 140734222 180527374 384446803 924238216 385232344 45589119 19489084 394864299 356070521 959399862 672335033 171854691 397697093 624059725 308663055 74282156 836991521 575917007 952404680 697886160 566882638 765889715 44470053 658223 980030756 159945488 325705119 578387443 441527361 998197666 746667283 676334210 263843773 156939328 83476755 633854787 766827699 738583189 872352941 721777146 818212227 856107863 325082191 193115827 368345284 782106622 744136300 557682973 617321341 668434976 499945649 576936745 401462731 946340014 578655518 225769553 499401339 22972788 599542912 689496412 168609496 83652256 746450592 185852948 830830718 779659406 365431388 392956923 849486277 501065437 865719426 276646524 970757688 134928860 325362518 706824243 851024763 142551195 448916475 529070990 319334362 941824088 977565582 951053806 998827911 371184314 626824296 953718349 5475574 729821228 876542771 282089590 809523853 45296959 833522177 307971703 234420876 614106680 960816171 556836050 682781254 191058427 1370840 547172668 274399909 215128623 190184109 110060683 523448478 27407933 831392757 304953566 495117670 711202514 333335999 182229368 208081014 508159736 776234150 206992172 944437640 551051614 552690561 307131708 113756248 688404999 109812143 363090998 43259335 777723702 662231202 876533368 995564390 411587697 866601601 745446392 920744089 18983593 131452991 703011427 126990745 991996476 458723479 975132591 992374442 771460973 413658036 166021779 84357503 845941326 165751100 496424333 472106987 849980056 732261155 974841020 246708463 395095753 537407956 616822950 468751701 920988666 337092025 915906560 215541332 356830751 538660412 493165105 402205975 455220858 71178217 407432582 19252436 472068202 748472561 557384534 444350517 8719190 785708940 799590924 840134359 668427094 164456422 351100427 833052921 705762046 652523954 952368174 707150650 50608995 704733485 429075781 878153202 17175807 868944336 853921725 131792983 8510102 334237848 809164393 326344535 750437431 169129076 635599242 842390672 206134544 532674589 555185903 981303526 789310769 907385150 560132355 651895552 902673734 899503824 516518550 773748575 481459213 181797395 392917519 553891210 157031646 76955648 492604028 144302058 705881404 918269692 953562022 827955345 679008812 595481550 837988392 749297640 573988247 823752089 587907110 815636766 883855725 549026795 192468614 837256298 483243190 396051577 341573348 843777541 313065990 791640220 924161088 122181487 494260005 366720223 16126878 643280367 668940794 529116570 692014626 820184814 497927879 117287430 416298488 613753516 388386822 955141059 717323049 313327777 387085074 806489328 348096534 989001108 101729608 656470233 311049799 279474772 936759669 376243146 845371110 406036717 184986702 449681924 495216388 386922877 520015546 70716073 954334608 682875069 186579030 766664922 669595537 21345486 713755348 525837790 895230681 889488782 490645786 929233870 811310726 774650370 586057726 33452042 885015848 817158812 988945468 345647826 212298827 799432650 662188108 398539828 378432727 691143043 283194580 904671154 754730096 85462949 500544845 445403110 875135640 242796474 813989840 486337935 503003838 950884792 235169503 125317215 559969461 204527386 540448833 291748684 507247716 627524766 186895876 58901524 982620529 127004921 11610318 576004786 359618868 896999911 37166508 343892502 96570960 962808941 312703911 419112026 395724349 293400756 513406258 588435573 54830958 308012830 52897096 795129378 294636332 855248076 951421542 999690850 930480964 130981422 660477235 657115821 500649802 851757183 724720171 70630269 40183646 364829358 293150780 957177014 109878459 221682343 77628197 209508031 705787052 282344946 995212805 239180107 747996824 667777750 229779299 628484682 824912469 915373933 594192558 36935867 213359410 919026964 960395255 652784470 880116684 773847397 676786141 583591078 695107627 886465268 635379434 766080861 493385015 948231136 490961193 63083332 229186612 171413308 884679870 395675716 433724340 517875123 36348553 603723125 356702079 233228484 60403385 554011971 435989916 894569111 962829991 888469561 839246564 126204490 368754885 182066594 842126739 787669093 678683080 555322434 213001034 441668593 369143375 658437667 384620631 287423469 636785968 420933213 143766121 226680756 644568552 334520420 918988641 141696566 53570956 673186631 520839819 415020567 167907225 994047469 967035388 445225589 715869220 156504938 586635725 81187587 580033447 605010672 496503797 634439278 991583254 91055385 487315707 779355190 976247764 676189387 365502406 562764697 733448922 725057106 6421743 994777372 398927569 556737524 189689296 931455821 585033304 595720328 829389310 151160478 835179778 251401576 993004338 281719881 955019111 951871267 148533603 763687296 633974735 108462942 989420663 902069284 59082810 211623768 202269100 965371561 638748079 783422685 83149622 232698430 784942939 834128860 328256352 895201681 216240985 953853585 239471137 310294616 355936350 117968532 976371421 765103573 108566226 523855871 674971798 663121488 432759036 114331683 572481794 929850142 650728034 95298897 718834011 623461962 744014194 507564396 125146350 81677774 143094072 892422345 417650572 698311936 669997899 776756447 181153867 337656378 553044499 377622782 149231447 927513055 403130347 593486896 614091813 434127560 469453733 262662361 603162088 581136445 219504482 337569866 137539173 46952158 500152839 604012254 522833835 113835700 583070711 694379203 492018239 320581997 852189518 168236191 804815396 889086485 840666913 474338914 439936890 732493392 393190753 791044137 794866261 180910546 40110407 231298074 982864762 200105660 835659769 765770305 538377145 30431272 385670809 505687584 67778053 157739657 287481409 623818428 173328869 118748907 243414963 875360206 192077276 152697402 8023385 961310508 168123655 426198489 550291734 138038689 842217930 204455438 725543344 238836912 369262314 887800818 729586273 305281624 931737916 865710886 696323661 777751307 857281406 614377396 447059400 935998869 28870679 407376704 766238648 390158511 955072480 671964382 353976857 994269087 814907414 888654221 17729611 182526064 603708381 526155918 123818363 933043220 775230563 294805547 731079142 985424352 195177933 276340795 209414681 841941640 76019563 44554958 84459859 376768188 416351592 880308894 998663163 58933280 318204933 165963209 840213975 757454311 572518624 862853149 546624107 992207334 386225619 615100998 419566276 19535942 604679975 954647481 50900181 226218680 375175892 98916660 110929825 741865357 216415487 507101259 564293197 668905045 903846481 776701864 148673693 995433277 194676947 729531665 341063167 248941426 28896827 531877831 901640191 206453143 51663307 923929808 768236885 928844730 360815906 72409257 389181268 775897697 822899852 513467916 766088898 563273911 206411748 460232582 960737402 372260809 57624012 967366537 833212621 177200533 48088587 218568705 3495213 213069129 725448068 238771374 624573404 112203430 512960027 825984916 328018204 67548199 214197806 18750607 221331903 631343380 793039194 174838712 534390355 324078776 62551996 902903128 835577022 595383991 538794135 829918013 436140046 906824349 145432944 728214226 175831956 322958947 42856644 605892304 143122276 967456417 554688561 33421865 143683604 390804199 531689391 895437732 691844413 401452588 612436563 136397410 156535085 754462485 694524719 933508273 605157997 95718806 895028557 713606180 994463490 439218785 57407635 812472182 189607122 315334167 306020886 4743984 720296052 691680340 652989450 835819270 959287327 672646183 997657122 52056648 245529906 939055003 283876826 363379007 845194813 650699751 309929496 64411007 518208888 998474164 435139695 202730904 251557417 247932998 232353004 981153091 251785796 207408780 46662414 497034613 700795588 884357235 526422760 248083029 312545900 244010540 309598409 179560845 366086570 88209933 516169674 881339156 282889280 793712950 176639471 151953590 750341919 949388078 976452547 332499 414467598 857302635 512870284 837467914 718925432 505186428 323974837 267761289 714874101 621182331 459934239 455511869 289986722 512828640 453156206 99648941 932425018 314630814 840306293 506322699 547643653 328711725 619311343 318758962 642729239 582361947 848678513 60745020 956059365 978356644 89643329 538903550 383642931 543429225 295248256 576035152 556246804 193807119 964794093 373958821 108915244 24298094 135849632 271428176 395415413 901478913 811269674 296571646 399510246 283471344 339236675 940435319 990903480 697066831 11580500 455463317 661945374 647087082 985842175 112230540 159822564 229970696 151744601 190937205 495543642 865967934 951014547 717009447 279224953 371011145 330494371 120646303 955829399 691593945 993230949 627699323 912591218 467323904 13274589 489486472 577223145 703645626 94484347 10311380 680139033 977261723 54820862 415918511 638360637 491956564 741107431 33363688 84934166 295831170 358840679 448200338 869217270 638092182 790209158 284545469 712295319 548050064 632178244 985842848 462731389 883470234 114392693 401092100 985816289 628963734 756920599 540375732 880590745 440099401 195686504 141849896 731507219 739938856 203581197 563968638 835900888 856377746 59743207 856546062 58616527 552648825 265501315 577703085 250461919 942399618 391065069 383620605 927147012 864297695 754419959 375056938 661730360 132215692 381079945 849629281 125915944 59797799 852461339 824133707 305414601 130561411 181100698 256928997 590719287 742801384 787907856 865053911 827458018 794604922 851095476 205376669 263657037 73380024 803225164 580544385 361477167 507033749 939141252 900746271 583360228 470024046 211536760 477388330 266917048 544549520 857217192 671004099 55134931 771943051 726098535 744309222 243318161 257943852 619800696 675793494 589901228 35592025 24042652 179573055 760594952 405085709 384907201 219104650 747969722 132245659 228648465 104658561 526267637 798743254 348848299 937282712 287634509 608945174 826583663 613413689 216680204 756290950 597868506 235039837 466236895 957538123 570623919 163615055 903261403 168871476 965005671 571276849 568512647 334710753 801500052 512479787 472461066 249729118 561301952 515154228 369005492 28606538 801126866 358579575 297341429 454863305 531243488 173850565 820134452 673069257 235249235 724459377 790341192 347215676 619701896 221570581 448200723 422544845 467100993 616211806 449327871 902986435 289451421 254086038 763567852 322406692 905634784 644501602 936397760 480562790 681588484 535782899 792096722 875435558 618591116 744295945 969734087 46793211 809854834 576995018 620104797 972362364 113928400 589097637 300392088 123827374 854654311 642625225 467718166 362586800 735289906 241387337 348374920 343191117 247059477 681087004 149326222 543343191 991758004 928868170 208402657 762260955 894173016 337408095 19252519 949211540 212171200 632536164 849443404 416704857 196140969 280669216 910201919 752468326 664580634 954764821 634960523 89413930 757459847 522007273 55021 738590629 368725102 553516961 785204091 232511274 87059975 472126314 556129556 149618231 28937690 455899932 159717159 465145673 390605198 615901366 658780657 614603765 344588437 200070072 468610329 66948848 3665787 611095544 868032977 45661793 814970306 944267804 731471287 822397494 321333733 996826447 996657545 608194837 667545667 382938055 67739963 979342988 678232306 732697215 651274668 39684210 955034782 291414166 97637545 804672363 334695470 24147751 408698523 922807720 615711733 139511262 294510835 554028675 979510736 412723947 761861465 891672303 807351178 657440879 857432286 338748943 309055986 349273576 302084971 714384598 565457793 782712006 570237108 188021768 188217580 294776136 298102971 844795532 910156962 609371497 24554597 735545664 647754633 445631646 665617516 957219255 396934917 329090918 55687730 406566605 432784083 897623264 297958133 166895149 612489735 86477054 896204185 875488314 530869770 777067212 470622728 406875284 66780944 240318862 906226145 211547321 309178767 480802568 397951186 240092045 362792029 880338011 713350171 352433721 314865959 982219367 755705223 332726482 586872932 78843903 636373484 374741320 285019740 48514771 649874786 694975847 446053368 324181101 488772046 695177665 791896053 631509337 667516991 241655086 388511257 230981666 951659010 333250338 956720938 823196714 408586152 671423675 810717752 46024839 105113091 933141695 484096998 120055628 466685080 53144770 361523158 212417129 330337946 865197332 49759737 293139365 878881836 204629751 640799344 462637831 786883865 437507354 224155811 332582578 772484830 884025015 520693797 603122730 879687129 151427998 259645149 240028412 462075554 947992222 41648750 825529787 763733378 558781128 463629349 27447761 879888550 45590329 935573672 974285203 479417789 620728827 802192364 433843611 48173651 732267744 460349720 283305529 820047221 408322663 225034877 287427021 661719547 81891217 709041287 942179581 348287037 713067444 283344323 908473776 615039354 127157407 613040096 932807822 974503059 237746903 409200038 757583816 363217261 164765034 601840925 225093654 835905964 92717556 882330391 188079031 912419845 338392946 177393568 888555180 145271424 866058860 724012459 475826051 3044201 158988227 499090299 807657267 930459252 65809537 981005985 468095494 60808691 788318364 838524980 189087169 441641383 742876424 103915184 199457207 764902185 636110656 412810542 69368809 719606359 708373916 279995016 853604071 247422207 269426620 55853328 992691394 881320833 798508854 249791102 465610542 846055722 115604128 818200781 25061788 608328522 927931423 142286647 931523969 923645375 562680296 873194380 289870433 896480852 387001198 162140145 958031656 485694829 855596799 697969624 448453085 98085965 458733285 100718010 80028237 507478958 354693354 617652255 713267939 293918836 495433524 211950707 643285087 890016588 972535124 379352333 984828186 85790521 441099300 341214318 228861910 167211339 430154569 870077229 814501483 382920151 550987229 708633763 925404517 494168231 782770127 166190641 981117430 844546510 179620863 324822015 553643922 415434269 214609059 638892594 50958941 980784965 728414692 262694313 648976453 582527803 162870262 133956024 658098704 861090156 273417537 412183878 441060697 757923715 900604184 153315287 705030523 414943740 395513068 16767271 516173478 546850402 765469814 259576093 162693118 315506275 655485075 581750797 607798568 767820856 711227031 121475868 426526788 62873539 229676616 268423921 644673603 406878843 868572845 398115772 132013103 46592519 483010226 288879353 963720586 324796481 51503556 912504218 660581517 548980888 298610359 653129483 904164978 910945628 336791481 861330748 507256724 926051873 522348356 710070374 333466785 699815926 487010066 419999567 888470153 585128743 218730001 685370779 455723193 278519148 228381058 385276726 66743099 803015853 246060473 598435883 76137419 161725495 464487743 237455218 346141000 141915703 735271707 196836032 541452698 293356036 562155075 181796768 879540557 823552939 889904032 250518626 490783481 784982136 146634477 745243735 325026613 652576950 76618163 45124647 639754387 269861813 42010595 465071976 748581550 295804081 883778449 227684126 506950413 269413916 464915801 313129209 801814240 71729797 365721887 587482296 750602856 782118665 578211805 523959838 503288673 591888631 254415729 526090903 593854696 953681722 210472813 394490400 781944939 349407667 228691679 749434115 13951144 902028870 667004484 463946443 270461460 252630595 384457622 474508425 383171374 167399312 220367997 831029593 111223463 742447087 597816208 292972050 231174480 621948950 450385797 682768484 301316532 661349739 178582069 272071600 724924869 54264021 776873564 278268827 750560735 844444168 16876231 664921683 920238589 821435844 554624958 743678759 430730982 504734496 742488904 200110724 540776333 224786795 857218948 102673909 180117808 193753997 461048845 158940112 67033404 440449066 881826355 727762868 681815169 865162703 836956598 997032802 759984854 865716174 246719961 612862106 821098097 929828822 285973240 858715810 136578744 358165482 404129879 880885952 753925877 984440725 989202233 325649997 163639353 979416417 380837152 100740714 611254452 943135184 327501397 910775181 501154863 877682301 842344513 792578550 975634518 184012092 443884501 728006919 26985305 987108987 6375368 741097841 397997480 844610240 205924315 513192977 389625072 471125738 475068273 802683640 1114019 22522951 416072785 194856069 917517840 945419238 131063278 140698549 643946816 856939256 158222384 674120770 632151691 910078082 893810042 325904698 444991927 441563833 458878671 354562076 649272196 473902512 484817459 629270207 483812260 576572557 263264319 29969647 81257964 68007316 875701881 40276984 589843789 108828666 265052889 129050216 941749925 21153493 895191111 844706413 488864963 616047581 696761254 822330201 17019938 62521067 4492442 580647624 399284279 585565065 324905715 286506390 45605556 421450631 359702925 469100974 761665679 629098122 859184107 275960544 866977023 96708218 254169480 583127178 664948800 746242982 436614258 231222190 882553567 210775999 932787543 998995738 554931026 413876326 488735485 209805671 6503542 970037777 494091943 216521670 304672574 104859547 490325174 507195732 543078789 593986713 561841318 510454904 334466962 873413733 939838474 992330251 729112516 352841208 661363295 71896488 424824027 594425270 113734334 382315769 106095923 109072048 901408624 606882616 923705034 720797034 711392666 410324506 896166107 212210390 870173710 366231738 243088339 871418485 728250803 128890800 404009905 550997730 415616150 594697929 778209760 844797182 367532729 24145748 864877732 881871171 165847364 624493732 56889543 378494363 825396347 282425305 77287082 993208601 997648911 616283851 32743165 465064058 19844531 543702627 900875140 349933433 264317759 633352228 636761009 374681118 323831092 390930331 105853276 748604875 43002892 761401304 112740821 135729191 519534973 15580521 755716832 446619234 820908005 871221172 813039395 22428199 286579785 689665085 959079250 694314375 136290459 97660117 329581164 42347808 361950171 958658064 783556536 467007183 398532539 696426526 223596883 200740055 161283527 250648832 11879870 218777861 505690752 164834631 511971250 658698421 37994384 92236709 744977540 945522468 253057847 581995893 12307579 369783731 615579244 294423148 20180103 929720763 951768189 541286181 120689863 882609627 708381392 868888543 382237262 736562491 401221799 420213497 306900240 767600225 272648436 72131512 110655448 262581615 21861983 544350657 633269806 788362057 367171414 123599960 57989212 920093175 594751000 226753910 165311330 450038330 436932301 719522411 493853878 795533119 458002444 462167337 388179673 332441298 978268326 404807135 911592374 132677069 95343454 21567078 42211479 203123548 350944949 507275763 242856990 613035217 164869957 385303041 702496079 435589905 972122572 217780467 835549560 824502951 637863129 988306408 228451466 207183541 918215444 304991600 898734862 775182060 667137760 880663865 421762589 968425141 766561992 150640656 238159838 712509649 994166821 973359703 487821506 943617036 774765674 199100829 631290774 37707002 216690500 510493487 551829735 701567444 399916972 151729392 602551483 301351156 969041337 865980195 20041488 910080416 603525391 15321024 260601304 638433592 113124914 222561418 55165406 955723494 233928757 65839015 650980688 692089301 216965210 309068297 947112301 857717473 980699631 772131082 727704411 420428507 974150268 459761421 581829718 594540451 757212168 549476164 929379442 850571955 928189901 457407507 107504217 868249411 767660128 698805840 420229707 433085103 709232617 361822107 129052726 51807017 686635810 335607665 828082297 689619663 801106715 241989982 90541610 826586371 357913898 81187621 838054210 444190524 890830405 186717177 722189220 432927472 487897920 689234483 336630080 548407966 659227734 2313244 228896295 4868747 234981961 124039590 524657726 673859994 458935035 782268929 430735036 32572108 876765820 245492277 146049593 894030241 238261653 391265762 745062841 446863611 274598375 157976740 39261175 567957834 617669732 857482259 605622682 252498469 402258045 322906071 858031465 72549114 181736687 718604016 756915402 300573224 40128171 777918915 638703586 880268435 188208062 536820843 61391058 773475932 651841662 932153265 25795881 891118595 600856234 292765224 788344040 329229331 79266071 682250920 349129984 391468076 320637236 412248056 611133318 391103915 304224126 53976014 637478536 462024110 711808510 530312522 408518667 941463751 248230260 175135897 729575660 79831187 143641090 457113226 391297099 166674539 177912994 812097158 120852576 102196835 994897017 888771944 57254202 115435514 359655345 632561784 705027999 967812462 963207995 504992848 309055232 165234387 986121168 732613043 485371904 46691575 915795480 929290307 985881691 134478126 861256493 311239235 334959132 100580714 999121536 422410222 482387056 490315248 563345554 348680308 364968224 349299868 529859902 994562910 781870913 236976597 954117603 246578423 129336192 171812086 422237641 935660300 440975725 207031369 473449108 8595362 775709275 365451899 171957679 363785511 162598767 990165076 862072571 757090835 674396728 957906665 463150803 9744333 2051143 152338267 66342521 84679433 798619238 583097410 344597917 395663647 276486510 525417255 682349654 519973563 109358276 69155571 858213314 933119479 680705166 940630739 490141162 361292122 483638881 5118551 26343897 130628846 868384284 279116405 563791348 641646263 599540906 225198076 252516107 965296324 218952225 108821083 849867723 65428322 382645394 754902131 707022301 275547987 789732927 266798995 271458657 61710044 193923423 630443121 959317834 797519611 686931436 393576496 835348589 757061118 620880066 182452294 113284132 36465654 987645995 62649942 364817790 334680545 311366901 51515533 396343342 258299837 85178184 486998459 839374702 860036092 22493104 408035981 945455101 799991717 173436347 186324542 245606823 630826523 886935817 84961298 492843693 672813161 354072463 512580119 994638988 470722601 548362495 975283098 214461807 824362200 942974184 551045470 385497570 908984051 434032986 353867061 423484979 909064087 169936633 989074704 393959543 938023672 996998519 535945453 17943258 755593375 281776687 228872360 616534043 732198439 288836183 455091032 384355278 300209654 238098403 976312197 567855163 627952772 878583065 104959223 682774569 96957630 40123118 522679051 499261569 408891830 766658234 284258775 63054387 818582858 324544583 238712864 347973122 485014539 498844465 47084397 565772606 80599240 173247515 169744303 239475494 312439569 440233650 502750920 297430208 641834162 260077763 549137286 609119657 230256978 482237880 966604068 22342506 835192161 922383702 94255282 749358023 537934885 744047086 609242451 659766495 915805137 91185527 924984134 429554360 999023850 301285730 258041254 997912560 53688715 842567848 605992272 193614593 439314422 617655432 325798485 953852930 75813573 869536144 235070540 313330929 279854086 820680429 226735338 876549910 959083572 480956251 939488956 268375594 738142067 641477828 489669453 3875967 311307276 583989603 621145993 877765681 457913913 622870056 135481815 896022393 109956546 339057553 438419299 704181529 683587017 206411085 381313904 70934814 190106110 17795375 701576185 826908293 888630750 392401490 651480372 691404316 563929603 259044913 938224005 755673905 294134953 564893969 455342849 324054209 678815679 781949405 967224067 809315125 972568475 234375218 54281998 421487751 420142005 107627131 141886481 175544066 575871943 103714978 856447753 919285591 320517509 481511750 906102435 300207663 926596599 369848568 248234354 515357025 144887016 292719249 751964343 878091084 349001134 79118173 951659559 588540555 996017434 637057844 866673466 931245314 528864174 454042366 694090404 817842931 752034051 333445078 290403276 504672026 37955222 667564967 812611468 717006564 826712503 726576910 366657915 919188962 335829908 178698950 504817345 735017812 161384421 562991150 783015432 540658483 52669155 216541360 675678609 795591865 673401897 762561489 492787443 968570385 524379050 634801357 481382933 820979328 251737358 769115003 18993395 780831085 551075592 194741779 746489862 62731209 410094626 56041680 136890133 801713864 621973402 850323676 488384573 89862243 535264979 34477257 946734014 252339231 287014990 177550230 212244218 181264515 516806366 413761737 264558005 685272596 230568242 381118453 443197725 828533264 743180854 179313764 334206010 338971665 365048386 768445971 750953672 448931781 649308239 826579978 897966445 790944649 889043838 636711733 430943864 887755936 493660384 156869563 562841654 645278520 871488827 704286900 752855991 745078767 868534887 839919336 148279585 941000959 122014365 919322748 192372832 344420793 522152449 424992912 340285167 389473805 348762015 768544937 597833266 786311444 518630142 777601570 547689716 877333553 353174689 971187386 170411352 992609160 200827601 309384557 572809260 208070462 891376394 237221446 722633696 826377390 976861773 274838897 473834108 975784896 144967114 133794494 208338183 839603440 302665271 446257591 939281960 515130953 118702800 149747256 349239026 654208895 683317636 519455910 876945138 795533146 824108599 997752637 812230542 2316132 420461404 231489525 807251041 715561483 300578652 99200913 602156990 23991763 802746387 491928323 845087705 668553009 438169281 436811246 683650161 16572164 148341798 753890795 1169162 573746470 526455849 37078236 265033700 336999345 827379623 552213469 231672789 90451350 909038501 297886594 36549752 963532366 527329131 632518259 378449703 34031567 235860107 909676384 361991672 340885371 593524844 436603535 577097303 932104911 92221862 689655234 476839715 287855930 355467712 551594975 708020409 443390443 429800826 706614107 94026885 264062079 430382320 110589034 846040864 568314163 179423350 64650983 670141102 190709879 633346475 192261472 104165916 880869960 905186394 855490701 98703052 393329000 135761655 753660092 851801400 446542701 175221473 897599583 340976841 730394269 806909065 528176016 115903167 731179617 346107100 859915744 431424469 470004820 627649137 609841287 629533626 44612029 888522519 587440523 409462669 134271956 69449556 646557101 285150454 135168481 345904866 702746179 928165352 714384024 996757187 93035955 740760093 75500085 500879123 857082667 208712320 234555619 260657136 281079617 106084032 336135158 517922397 228543813 677625031 751866229 254879051 248792599 897857401 300973649 137820171 956249430 747239497 391744876 966624762 255263323 252525069 895556220 155536792 483533596 321155262 347787323 617732393 139609218 768777107 285032365 397203040 881714757 835011822 339022425 598941506 40828246 628168605 955726489 87522789 122457392 545854024 190146529 328325518 866805049 673726601 810743002 942144726 797714344 452121052 149321706 350691055 835687031 73377194 698727246 609360396 113379053 624041928 250541323 165976536 654229977 382486365 233585854 363122121 118968300 117059654 746720863 392971033 993558621 632854943 558436688 268794138 686323003 653568940 232952765 274962000 739250526 85373255 339869772 991852462 371839562 451614648 794999886 774128839 22626552 631438846 331654950 242073062 648600344 801488597 596332218 627144071 284399495 529601701 500671159 519680428 251313263 443765547 114693874 159826597 468717938 309094039 758389296 576396601 888650521 824966336 252716101 290500398 132312753 785354794 933731291 861675940 78740378 580010625 903707566 411814921 871491492 978699112 551382820 459947036 223713704 853467390 90959536 634302969 567750450 134278229 353042276 373005934 768487314 345102051 340550803 861944280 324649741 492876504 160536027 709950904 550870497 259813002 131417377 881342665 665069766 909713312 875834496 910071016 597263987 581808706 577167096 578093209 302204309 425559783 791452412 705357300 137395875 686191324 118177032 694777106 994748719 622178877 550218940 542232196 800613737 52155171 651776715 375524445 567424729 305112792 870923477 336280115 490460611 935267808 764919262 661652269 660970280 227228622 89480741 158438746 746432502 411264200 649160789 971421334 250363474 846315998 578412971 366113877 176253230 548370370 293322660 515541270 744703211 50436290 342465383 885745772 803952519 656880087 626971653 840496335 279117797 746271014 991802026 520127277 599863212 615707355 563363799 229557660 586792230 460175422 811953109 168809246 470440993 533864392 772384570 519793508 372960574 715160154 961281808 37931091 316020241 871983075 960158080 73705202 565365442 622214318 627610225 90684519 734077578 531482893 439587668 863558608 730761835 294818698 658567565 55686054 519134967 565633571 446156401 305684224 603165526 951236210 795866332 240282741 179324258 865144998 617024202 914986894 337750580 829898703 750718357 169387176 30599954 649983422 785881255 962236840 454244499 262986953 107071239 183102340 413546661 37000067 623359822 12696272 503957143 868847583 354424127 264355387 471924884 753505440 286422818 956594525 277505034 130868388 410835644 676961714 508173246 215633807 265072428 440579084 630107718 732226806 45704005 477884112 219751017 765099314 783056461 623710138 253553488 139791045 267236092 559214972 947871378 785508690 489353436 21951317 655780233 516283409 483314457 880411781 731502548 154280418 846809433 894758360 448002007 888634058 415720015 632807577 507612678 519631232 515845589 302951499 841012562 676045963 853633303 824714497 506618129 462278623 359705196 584896244 753201579 828266767 987685174 530518223 2746317 882102046 525180459 781030086 524020547 692738348 160431271 427971637 577922133 443999562 806792907 881158502 634294453 164826245 296849187 408874642 966933652 49330775 446891743 91740024 494744682 308886801 954531756 74488008 508516274 34281613 471051541 211573129 829966435 6156612 27026106 476410714 479953495 766461158 184898427 183904505 522098220 230631910 947752537 992339212 961998241 149782396 556183879 150141401 52212010 244482120 977446881 673589185 498537202 638379827 118415470 258338122 831168258 824717423 611457539 398849303 905062881 841665893 815151879 748072476 302043352 210304555 134473455 934644024 603828081 597514582 700728063 492917280 870599433 67968265 906641347 682815548 789510344 378084911 648096104 623081883 603900529 754756982 32618331 649870164 676364063 136143578 806788118 510448469 249212361 871004637 41639684 128422762 634904190 548141317 376805482 831045853 902523514 101360938 42553059 237150569 377033190 169038100 174004914 162550776 54511617 583497544 552626595 850800977 338447906 629291418 652693074 396172102 220746912 843417100 861760114 848183248 437728529 822504131 323262009 861600530 735529393 479081824 542803147 955347508 25058655 73449738 805448964 250414535 952344143 907273385 629707136 777712954 573593187 575263552 175521017 254867625 336913971 727136538 176884432 477449198 895935188 271340735 291331617 504779049 854403776 269881975 986048205 590264968 860068476 719131989 503731783 474485534 864708961 534819050 206023151 470305176 351079012 599855020 796713172 403337014 736332471 747848275 318097387 632817663 458859598 387471212 125448370 77146506 18556055 393195377 113552430 434353468 328475987 490945094 226701274 893051468 59650649 362502955 95495357 394711593 864763513 443127079 760823708 691207455 951771364 814400354 114962671 763459103 821333598 283484721 839197892 527615054 40197784 81438723 677498336 96669321 576636730 676919591 213478393 950964664 37624914 394909024 737964992 610793817 960083667 14481885 261379633 697519803 264147069 533809209 637770551 64311275 766207220 665485255 551682921 34428973 768698886 452426495 859374584 364208495 512533520 441892463 124328978 302854388 707955080 741157631 558606984 462079533 10411453 584096237 518236852 608049767 805395684 199248361 997022390 205762031 670006438 45716395 519859058 484454206 866172209 545793846 219219899 350650867 176589696 609382208 556164655 236524333 655095153 615813202 94850291 778980166 601939229 653183554 799829904 258765315 573279335 536776966 651342937 38717114 342366037 987868590 10201048 822295715 387488393 884804389 202507468 839332211 601565304 96457083 926564817 894569849 616239918 105743718 399775659 42755839 70629394 381614595 236684087 437092285 143610288 349015259 497189700 698249309 997106254 688298965 853214827 627517656 293113189 627509288 7211545 987787970 129557373 695916903 875600581 219670589 464940545 448941565 47278994 727032889 350785454 566019049 340023264 578221278 267890326 384105862 548447192 245840663 611281887 186511536 67877740 876382167 299264376 711188867 68306128 476509791 143044104 849610997 984885441 288202421 606274719 927336271 888696986 416281647 667849961 388088944 884200972 281142268 612199398 378882610 785373229 845601513 755935145 437793119 152099857 511766092 42700627 759378263 131835520 813339185 591496175 820724491 839861253 190202897 628413238 157737235 10826170 192803170 35055502 405789406 439733264 695425233 749273393 231311694 93404958 983347527 685681820 456117664 394484354 456920719 169913638 582723297 336114132 804038930 396417975 437417093 37922182 149808439 431164342 971151780 825051836 95685566 570421056 48262213 537485828 660793162 639716792 17425280 304397737 990526150 498706500 262198008 774072482 883354148 133048963 987763919 544977950 399923111 933680852 749989629 223901873 709993813 435379962 998147295 550340175 604549885 883723388 635156672 971224087 746391842 185240670 412945421 717961772 345056498 348240564 826297171 935232729 919105145 414695068 945605387 67890375 718268447 754413020 435946001 168404187 380129428 302196336 894562564 766515823 497101250 182467361 22126524 262807665 661389493 16580348 876229934 984840669 775403169 483542178 625988554 942754653 828376183 704391399 648049132 523654350 996152448 989415767 656914087 899394902 882798299 877233665 971573475 907884094 113900752 626987556 303650942 81388531 495102848 418600979 493598654 235348034 578969341 387096241 925019521 31322514 90524108 743963995 786660014 491573447 914390630 352382226 787602267 921082208 264724388 311303245 549816766 182814385 949078545 636710782 722765021 906864388 348494697 774479966 703484382 719703879 589676318 774862994 489263875 874048812 251305750 843149780 855050758 429606361 105276313 72212375 441123954 951345988 369466707 609067591 901322202 843121213 175471644 99362016 190799887 44870067 728257331 396982688 150623567 174215687 777416942 537553791 842404939 569793976 275104130 701562818 139549232 519701477 957088621 251790285 973152560 809700668 711338465 756055609 26430575 949263175 55892498 506518370 489402405 84591489 443066491 904028921 552025082 900538609 725285422 202569188 448565250 871278351 210879063 630589269 3012850 859603050 636474103 430737834 301897453 908119504 734482121 908422680 875114182 13464798 648322770 870271866 863540476 574990116 425004628 83805194 487960185 365389906 252685046 811637200 972406987 84854814 235459171 278531383 695488702 123080592 820086547 510538332 400870265 414884688 138427482 495899774 544689808 542553447 392101417 938434504 163987899 379518456 481820082 704458660 916256250 46552006 225064356 342210159 342612622 709248722 186952852 643938970 475429952 403495153 847112620 931754561 268048492 795799210 711258212 38512669 408203070 924505918 570027414 509024937 649323440 138108063 502997747 216111355 675132939 671906294 394573563 978136734 947327388 286722475 721645407 606581384 915820097 825345748 321065726 113992700 372475911 498873854 715315010 257078292 796175897 221299810 394478166 310069989 617037026 707275888 307201751 724242295 203438609 236087868 124873631 942310319 460600115 712927064 510219953 241504908 562231183 742952673 485345526 270148821 78012440 73078042 673760460 839090979 292900534 854600362 125977421 208041756 698441023 585581836 261262693 105506396 298656210 582355131 557595977 261377616 703785681 695596286 658061625 993791143 130407053 626338812 701657896 758106015 936447 618509667 122520872 157890257 481037341 368945925 579137910 549094462 131936719 710296025 219359377 210913522 237932842 165985180 20388091 293240065 598156101 531874664 546902924 837299165 280493546 121381051 829113426 273998491 60655538 206349443 735243386 435648524 567610536 335215393 106726000 174402632 658743589 499961694 147681542 301996047 175697073 936020798 476919557 711958723 428599023 154384627 785110698 438022352 593582754 501916644 396520384 111993582 142209881 815720358 334111806 312540023 145105402 119870628 926551078 349269413 677920966 927732354 34189910 875457782 989955485 280080817 728509674 660681102 760986794 718047238 52916175 501418433 357931257 82316438 782787115 582527864 154788413 332766323 695311736 652780188 225383284 484157522 130509034 769335383 410675172 101267453 645126029 623431089 680366930 410406005 870870121 931785094 901301960 897196098 878160343 965677071 884888778 976041853 485227917 13494558 238442857 232805966 783880912 907514288 224256886 906559100 274767840 440364223 848636077 179443600 901802030 425599309 633195989 883559437 835462209 996159526 332832332 955601353 783658476 309521818 830088418 288935300 851907016 728551593 112980690 56227366 704537158 579414780 428706449 985132400 325044779 891876659 760612260 948825129 720761266 507374449 896490189 915539969 475875852 464087345 808110487 583258514 902018846 145689411 372896028 896281783 937389343 779459508 264804846 793110015 436499507 847175335 450828110 314863579 447035460 385150972 89527755 871597820 359470428 648051779 247949416 646696942 87613235 149905875 86032027 976063742 232065289 33543328 524101914 901508258 73467389 208045347 654531910 789020640 303169872 751071951 507867496 324271446 289887298 30834904 461306866 76066940 353742496 165840233 525874998 106800656 265740287 386321923 567707979 935801612 314495898 992746381 100577133 290755883 772050648 253612835 137417499 182044553 877142530 474312208 85956847 695239176 647430100 606788514 421168885 142731014 571634301 435862206 945655416 769631165 20146982 676482912 924400252 172820036 860580570 460847142 673760892 559698859 422407765 415525722 30713701 652879116 70222207 110600177 679126142 930181832 69923488 42894455 436609072 564732692 999150675 485721323 692374800 774255925 948234591 937687253 338393122 876535788 694921725 990297196 934060026 148699261 549868062 977434453 185469023 612924573 678961738 839042236 264287382 194270027 218407906 592836100 540493047 186237505 467884128 457987779 424864336 122722412 505512043 404342920 957322540 288936120 99970660 532493962 62965215 423290912 617979743 322986645 499502692 673374595 614500933 55601815 596254262 870483259 178188781 2973490 48869818 257028932 995445856 857868141 291077796 690385060 442438903 556020673 619848478 629392545 218794772 59444533 186974630 886358226 74517503 32181902 443374319 520162980 903422419 976203491 695363416 427519843 187616041 806860695 868549206 803553585 255097003 533318061 800351844 808803607 508503995 719930657 704715473 496500023 339302684 371351245 220224861 986616377 28628265 353532903 703583556 683574573 474191080 699991904 25186070 686887941 551442149 472756205 569068507 311816872 679893759 788984046 645638119 313832044 637712347 84706224 673919633 915914714 45216676 60519974 602385657 545036060 683654839 628609438 683034098 647114319 329959434 361094564 675916397 839143225 455157305 55601779 2493347 440645314 842463550 977652600 275909924 293414349 701274438 374972393 767384993 950638371 129443235 166744736 558871344 717148918 370001533 213591264 904832311 186843086 867705367 394877794 318740145 956631061 772662329 697482467 80836300 402242067 455429954 748185113 668861548 504718338 550677800 731683921 159719807 165430639 960999160 246021725 559908071 635331735 459730328 476940160 228595025 760506300 65146938 576369972 118076402 948860061 169434363 991034472 256724928 713186422 415736958 589829118 282781130 946387543 130452121 247293989 98168121 658838865 168102546 359848034 905737029 133552962 545320181 156511490 311056053 925240796 431778253 153471974 711966856 487477089 764754939 6402717 941594484 616644282 316530889 480059841 118391074 866701331 755543942 343385656 548396094 23617497 641132264 515317277 453873553 601731925 541891653 673847009 842130991 943725753 800112457 834278164 293334110 557068791 514378186 615368112 91600148 286645032 734241067 132582595 144682796 579561302 58212491 721799941 354058625 726033874 942204505 155174499 239145656 474964252 362680728 984888294 409340616 564280391 973734200 51033904 661935470 322669342 271982041 180733543 59792537 43908852 351667999 623336986 468299358 682553035 639755972 486642021 476159413 327881136 725208095 567807520 23654439 313632197 165594177 720860027 985021869 660229885 856192916 537351596 164756077 438576588 729613014 60014494 80138644 174508531 919646732 808653106 996367639 89003421 227805378 821064589 630611488 38392114 395433506 886250982 611247125 162947912 341041727 722078673 6497473 377366404 346590966 802072474 782191479 898250830 344314806 878845597 431285472 599247176 588611087 54848075 620827395 840026292 304893186 357445450 228978826 463702865 303396677 376392320 496999741 339538277 629678673 953573700 796186937 740215526 724534435 463476877 588806380 469060231 164099240 230484463 876155202 276382869 20287646 170345186 592996983 587893130 901149907 36924029 640484696 781828302 19435990 343711232 848790925 134716438 658116129 116086317 384450978 337186595 1650644 533639011 476510032 133310138 456008744 506437460 207886121 570424844 714854458 885247321 257562111 850412852 451060376 786863295 972494839 63752603 768199128 987369910 212227562 623297170 683572428 633619399 536933287 949406760 751879141 200567517 21077113 949061143 198721938 936523429 508213558 124791233 284673112 293008150 309405588 197842517 580654139 761486270 883847877 985735362 232408155 815544207 370492306 759938755 947599894 123546524 175282880 718929139 109443271 27057493 335603627 252913276 225623371 899413606 440612311 974811232 241383181 173638895 859453593 664557091 817610114 959954448 412837921 920521742 240686518 43000453 529003178 549569503 593006949 754225357 838764753 606711006 221117715 243587277 16404086 745192894 604633223 463457394 821528191 239647855 625091668 225230478 860379525 880328977 52729393 571791624 932159690 448157411 911308871 746890461 499151373 38247400 977746645 241038267 724996833 40207278 1490304 389954597 265799515 598335076 325831366 620067607 740547853 390740232 586644048 97668582 823159084 453926105 78966497 935062005 799186381 724156837 857384030 4595123 915469998 191091836 599478104 340710669 693614088 148438393 723538965 477099587 7285638 800938494 817068260 700031092 178723732 459819207 700979806 554813726 848042205 924519798 704757151 981581311 520534039 206207801 24591225 599149852 307410931 280232941 964212159 8301135 834889510 318596488 867656667 128246348 748389447 276372181 232489109 2059663 441332414 341343565 956837817 547887016 230808129 560144423 864496262 623437444 509895174 327572471 640286609 983245454 755130959 613177445 998301392 108037142 849731315 361446933 804585893 490854004 116948853 477314988 609024477 298482199 24439162 255956673 192535053 971483181 121688518 576577890 371221967 174020178 335899237 687338871 866055737 697077023 333464223 648993162 440230457 632816394 973858120 335292364 60444343 766909983 457399413 298914 478374637 875064196 77943020 942517916 119507604 957778215 335787610 723923206 474724576 61179385 623643489 624772014 845574466 979924830 78179495 940869096 889247568 663264812 534964574 655146709 340707921 155480890 48313286 408349583 753228429 590977492 857329986 935173198 610813003 549499511 443946793 226908026 593103884 538837762 345171289 519590366 394723881 675641354 382574729 71795326 678797239 858614106 702706300 206124124 817552811 707253299 22113976 294463047 529354153 341873806 60675778 459778186 130953602 35753146 179556534 768776191 578667113 631112957 8056322 10246820 818316884 912112869 347073118 517159887 24682145 560504994 586815340 742632466 564978585 606783000 971802961 993078720 29192219 979231936 328572442 977104511 159688172 449785848 942177891 416414799 162798058 506054706 938884860 419763234 637782139 364429491 83839153 224172670 874669013 326108504 804202556 96334451 761936767 254498442 188272279 497320641 705730458 715706553 408851477 213683207 799974981 127373415 563033789 694214536 158140248 178938167 140905562 43022922 825349435 190101228 875092167 49728159 811252396 478645274 85643404 736105370 915298143 944409411 583213416 287432985 771466201 292988516 842233637 847978908 616879856 791856107 78108182 208874068 11719448 997450163 98739576 783489472 2504229 451523782 681793609 308009691 651539750 37498238 70638642 841862058 940916211 847523436 565303615 30050539 898888719 409842828 497440913 294081593 746321083 651306004 404343421 807184072 370603134 913399461 856897846 202428938 142089459 831159440 59083695 359275016 377762738 638735962 720799442 948383533 338207813 589449066 561149489 513754105 895679906 448516613 54806936 971172400 6239532 599904961 306399696 469672826 665070 594202808 191842100 998616031 531737561 198216402 850607650 27620815 971809200 389895097 956294443 741636313 956138877 617089197 592454321 84535005 581964855 18718783 230340140 390744567 731532506 485824155 468151132 140694761 887078373 107539340 744524104 340807474 980716387 501136763 524604586 445776144 758706001 635133800 892492451 905653192 164230929 97795347 56174047 984906148 729193998 131288043 60285791 192545 827040380 628626707 848072249 122545029 162925887 976721831 827154001 559342840 990353095 310807257 928571658 89979428 128198162 202524078 980603397 970857283 612692922 168248012 444654295 637261776 296610243 696093193 539318870 921927775 101164203 898726670 503386791 335030525 684125214 867469099 724058635 537929621 200717782 108539792 841679674 948934612 48437180 35478936 460314476 771669875 267983683 116958979 419431991 121678953 766432217 557518540 736858473 231636770 335711410 161185846 628333147 868928733 154715660 514239416 597514801 214573047 385867413 722419643 78500211 234330300 208830182 283803785 880392752 42281317 786730844 116155230 72133172 561138019 866250239 284595359 320451465 965899590 535180229 952019458 243161411 58526364 554929508 220625585 852039592 477248031 969002860 621774706 614742951 503412578 147554240 279423529 32791611 466426942 240217783 625693991 521704837 359647432 823532403 144195909 44024001 569350704 133001972 223459835 749476310 915635808 913365361 57302208 497944876 328962456 855257684 868307203 424288065 768356740 41387953 692691491 842774308 685980886 359769552 316878439 296675230 706564402 703082523 734188434 156019991 332078575 651089580 202873581 782691675 775522408 894377386 376376878 764524411 39085021 84216948 647772174 689067386 520023616 982921780 554710864 652816808 301452019 182048051 786915145 652415970 315498003 639099996 799561418 88819055 692625790 230050825 610662204 430128302 439475723 474217673 405245404 499537177 627346923 735124638 349118913 750924999 180937835 822231056 31366778 963173018 32985222 872463857 679288458 638929947 795530817 949216743 608989660 521727046 38092876 918525646 942353621 110278901 272782100 837227112 796202940 632750755 972230129 231141403 68132071 702924599 945020423 674801299 792062545 6284840 853456744 222026820 757039211 187540017 358031228 505379915 618392656 626032109 171679058 638541307 883764631 256480296 975557085 358373624 665399976 916119807 799979026 685369676 978065453 760871476 432518561 331893581 268947894 197130374 367857018 48919370 835723372 282401678 640574252 34327340 490343261 420225899 930756007 506521249 739162633 234166373 721622165 312571612 783134937 265129420 341731952 705647443 984363843 753793377 119568417 502268036 877931554 840771481 509721210 655048810 86621263 952900612 867029006 833803941 193129876 793241056 195960518 666285232 401171627 294527271 549217704 387806172 194761305 463910730 356486855 83608148 84509800 421923917 651278341 553554591 615461898 879596202 707700047 878113144 219735229 876472794 573543566 728716549 853682662 566633655 729007179 810866667 432523829 416144744 292428429 396865096 721739918 815858223 807327663 686412821 889574285 437369478 358406900 635838203 438037857 265857324 255839897 514990616 876302436 365531031 839910841 364110466 730832729 350694586 322472668 597840895 736928576 702862165 689311301 289941562 85345883 968719506 780062291 992544656 156578775 443198997 915457979 411146616 452961071 281786627 196539592 212724275 999767948 698514205 201753919 523138148 803657795 739081404 226975821 713955488 307833556 902585743 113503936 888224071 495749756 53975815 344628026 717743114 270374585 403002895 320597304 289954169 998602518 813160544 166261676 708692052 818025744 751900454 759054896 988648426 27847605 645962621 254613138 172929979 308638266 185617090 248839567 271833472 697338219 733382148 353005861 457690990 635255879 716263629 274330225 133685093 623981033 905049876 662635632 366709219 876360692 380561797 803797676 429499556 189489582 261764690 525968509 28474677 178215666 657057762 171524841 401439716 286863079 651301417 554033106 932378593 320747894 472256689 6461337 922647339 144966006 972404211 339290882 258475508 134783858 560719149 185532862 75776995 694496413 582197664 46833820 898814723 708685538 834111009 285876733 604934200 169817163 303737663 907554261 527326521 120388927 532728060 631155962 527729653 149099015 666371429 320024652 69911823 168971317 895229707 252630525 999629206 319812031 130894909 461539325 957456189 805178965 573976493 649897691 364406940 992233943 814228413 380568804 177456391 253463831 109274894 611399094 706668101 237774984 324526106 209543447 596191548 9486536 642227398 907950880 621089123 760260316 662738630 382690616 717008074 514505329 279763205 159559700 626650132 678563650 67270930 588031601 898038534 12876976 890429281 567484339 579771887 447563251 811616411 141480751 377411679 141471504 378377026 715180367 506367786 450879964 461734761 697224021 905299234 30850432 888378194 149425430 461967093 589148727 184158893 760053175 96998420 204758428 680239182 478599256 519095561 808942744 951079391 712749715 123191937 422580317 511473480 794563026 390083578 434459853 816274736 489024490 736091540 126514223 745338911 800023916 312157151 81036028 612226129 449307242 827686277 964006747 200318490 197086558 776156052 47993463 432285495 289540082 841554066 131951917 513989978 777524022 876578841 200471761 986718318 78825383 949347633 51739455 9294261 275865352 650551146 325582890 329035170 251344652 910527959 933658294 820149638 562506554 83465044 549093635 920877830 731291542 492740847 5927051 547636120 348071097 794275246 595720430 118628848 432534431 932313310 162050939 332410956 604054173 607926120 370129349 531532132 724625901 62682748 522003722 420687358 10842067 651464936 431790381 622412245 311926761 879481373 868478774 551066670 17217791 465733486 331102945 917632555 482291671 5970192 504571280 762632710 963630310 535944400 94232140 804798298 694135564 576151877 109637315 682981916 263916908 886699215 162842669 559185099 734368806 666081286 407378235 885746274 499304628 746323326 829713433 974064373 296800917 872880778 668267317 474343518 844181791 208021743 999453698 717845063 487853003 240904198 87696251 515874341 611356215 85978539 670722913 966086410 931845628 603006256 115407615 664173444 583815288 77466340 183854506 11824867 611171258 563242097 411932243 87602005 455813534 317033211 433931628 351457038 882556474 259107479 672220171 907964865 661441660 911122093 673962252 364604628 129150953 149553389 285244129 541947423 486429789 757437684 806511182 667512407 13709605 896019330 248101214 20050203 575873416 548525470 37009577 221466834 945946766 21284262 53362234 407176191 960986215 624471276 442802202 361686731 367864568 737084460 490120877 65016725 694404238 538819405 191336002 442596624 60052505 23826900 287109221 713550324 128894758 496431577 450773501 419099615 806033766 378930812 278748360 184972412 493086843 476996594 103268835 600635687 868283100 132285239 317445089 539849633 79668862 641257286 272212955 777126484 423811925 853858388 754214127 227080798 570083019 33823965 879534380 330494445 142615993 846055810 520341378 598314828 485358421 894344983 43270503 132049303 123587819 712975336 708313316 450950344 927805272 548448349 230773693 565649491 193427238 620238983 12740500 737582902 46018779 374803994 330436959 162607081 630495471 692399233 172505929 878979275 3120792 698796724 160379910 255088049 779722874 60467783 304800483 977773704 314451862 911410341 301810333 257145304 496625123 171178805 109364394 19480204 115119910 437744733 686475303 181383861 184915895 528802961 439053043 985716270 93254114 430405529 866385047 425551075 423562607 907946265 907683434 547294648 911185068 102641288 817582683 316162235 768380044 352648181 136961269 196622124 234723227 431477206 52250314 576463742 136336208 67828300 599917404 51085047 303616431 419204067 637699042 741800857 117969713 430541006 588640868 396421761 29388412 148600074 296542664 353642730 48504390 508287982 818691902 57853757 109446212 172892265 783152799 425771836 178029956 370521636 896033171 214974646 678583634 86972929 975609571 91451957 765336656 561530198 871895296 326753978 479496175 511351997 755537474 709760233 779697368 827043138 960025783 903782851 417820322 748273982 737543448 767673578 870825032 283488859 35223343 217999477 656465696 964617805 914418834 561791009 37945473 428550383 508432448 445287950 686584772 303759994 726421386 892129428 794930605 400569155 986838237 340788247 305770537 343341585 83520615 695952258 155564886 166996460 91089059 49373460 626761553 60960200 894811320 369422797 441980292 634357425 548565773 657856942 739661628 918571032 705298170 853432349 252749608 846586956 638456764 855115517 335461072 943111135 92384446 66708998 160371643 996432844 154289724 104344878 32449880 479476011 126434251 774456896 407554483 575273422 719359550 532652507 196965691 386949458 365714784 380243357 939893431 874675995 46645270 704526491 436725972 84496970 559109158 513888114 827797375 83612257 12620264 473226751 932953580 106792094 620791415 858895126 911473093 79756683 588239289 574171204 794995611 392585202 652094947 339831542 88899552 215271033 929280363 111732411 967726220 473893433 540739844 382706807 685434209 185283479 993024603 532992377 967582714 481188436 263936083 769118137 800135908 996276147 590898896 412408900 445253364 805907178 703730331 788774815 924991980 412086561 617910165 995436869 980613769 989031908 152972567 738425355 838163666 421257264 763559792 655533835 655184632 565111951 208341662 674904938 473624287 269585969 146314064 550861677 662460636 864647564 704458369 991103443 504950143 597795634 677607797 103043914 328260063 128516956 325532401 846493131 612136558 32723125 176167019 451085520 802852631 539368738 283719735 836096771 250772286 953964346 357215783 388385913 903413983 885076553 753241970 126877614 442987313 14240735 471512490 453923234 604491694 767547393 785902345 802043051 318334844 42689561 905280812 14253202 615665041 771700806 41937170 75555933 191892493 11644030 460505871 621675293 968739090 589745510 365487921 704692990 227339446 467856145 992789445 340778964 62014982 247349773 568687296 170448664 606990025 872460254 313710507 474307644 917212063 459612011 849508671 211483499 163807037 3549212 511131575 546428057 515626614 870770065 481825561 64246771 472232439 521466350 623260674 657657517 844750987 416662597 68034853 531453743 104187689 121524388 283459687 701839517 511049824 948779554 430546443 524182652 386683520 619743505 483217083 269570794 991871520 237693021 474698885 122454966 660188688 925318973 983928682 29283072 174245554 393692721 924553052 976641856 803138461 629184466 59353621 804876752 406076749 956888831 499921896 767803165 869950987 673370540 620934713 662815807 455689895 258831845 192236451 920001433 845030950 829504992 718433334 621576265 307494534 191613715 277860645 649137348 959807306 361446766 680636914 225189940 958912812 357065171 344195806 768230930 563080181 274538997 984023357 581647538 120054978 410800664 353206401 312098203 280143902 906886608 769550788 224787636 595389598 341432942 326191752 168608293 940609737 489189275 291403816 648104718 457324943 166758918 854448566 204120230 824225482 698056483 307148381 628160371 643722478 21546873 135539284 599493922 734555170 856530948 828762939 118789564 386445552 788544350 846757092 585842562 841253922 77713261 337298164 644275716 569732689 642522432 681279372 897865638 733662911 276680850 7243104 597409767 962768254 565140635 685659778 542376656 268571998 730063949 249359993 967951142 447520115 880869568 842359975 556405528 929180627 132351561 87888355 803254491 901144634 978007243 595955707 677893435 71838495 373542647 865896267 988981955 601331421 725400093 664827239 86188057 639267830 485678175 739191503 330225999 127036407 472837516 206287225 150545520 793410840 453498024 953842776 39226281 27102629 300596795 11041558 329875128 498725399 584237958 382628586 103263781 964914186 810972641 399246034 923414014 560608899 348002773 205643297 637567265 358109538 62066558 940361709 904027171 658967099 229317342 102738869 919775343 275403880 811580722 57400926 521744880 77701783 632965488 549475139 431021353 930251387 899314910 461136951 629365922 866596789 421445239 244633167 729737993 939782622 946392577 851232005 987814425 728052868 780999433 160931750 619351771 659831217 280275533 362910195 210426484 274321456 840214876 135874879 902834140 263081153 162379796 545861244 168337557 547298235 175071488 580134669 751708461 556943343 168063990 581618466 719828454 671245523 344685425 966634820 722542184 596672140 763500778 138490400 317596799 877942351 871392336 294310080 482166777 762160888 440193448 587304108 885611873 456531287 279775883 256885844 394708870 351930033 694978519 752863386 245739081 795597287 581841812 752359116 308497380 518369995 727610177 10078591 189036940 798479930 325237514 871417008 126282623 14029948 548293649 939999522 293817040 618965520 206959293 571566589 958357732 844514858 761085620 446680951 381947970 238022164 342749822 22603291 22595309 530527053 889515962 732862742 17714364 148395340 182431828 984676201 289591343 268287556 152160693 979472993 166843756 95601510 380045073 851984154 70646055 461107251 705972329 393659420 603132742 178570869 308048189 578637743 801016236 575559277 890492072 381588092 277998329 662601085 70941986 921753628 738041012 714989073 910327914 389399562 572112441 739340408 549278009 829526598 392646359 546241657 265865870 519480976 526780946 873658038 144441120 899606970 568761055 169522622 286356933 907316411 783888018 815175137 380226553 422002485 662927558 994173455 189418425 273582413 891279357 913436509 973297046 171826237 894888761 530104411 730784904 653948637 530231958 427202948 114747678 281932524 583805340 911066495 403005570 389992066 877213258 816620731 986247588 547652432 497322726 251341648 719022065 58791245 319292845 189130372 176689312 644960708 531414754 816383485 326933978 242680403 343461928 886725116 577369246 17822968 949532574 226247637 697320882 87933750 623628188 284378704 564588946 628937023 153198058 663806138 848512447 584783408 283523390 716051241 603966937 413651244 462886489 633433484 886123627 243308238 722980292 703180259 734383856 546813509 51716872 929741108 840649256 737946850 966761301 614985549 598828570 594013810 148620447 537804466 647762598 170845868 267335696 98145453 799441575 256061922 536271454 62549136 920903132 641639977 489519770 717525267 570301114 543549155 429361695 346515844 690859873 273256159 7394828 274534985 156688928 735407258 679285195 559034133 765448217 431795994 162600668 907516006 407924390 742554264 64466433 900952196 742650426 674551972 52442920 354244599 965791546 857179274 353004999 869942320 193177750 497244932 641679405 44446620 537829388 347348771 743319502 462813611 324243200 767316241 932824490 13820950 466251966 75319386 3770361 618594785 975135170 254271431 331916697 576472246 427536295 482152256 506386373 109037229 45601191 837375888 412555458 453654788 117849306 510588774 167183 409976122 857330312 809000717 525525797 612294516 407250217 655888034 769950355 60945166 854885610 278464456 19443959 880499016 798610192 192881235 297859160 726045707 547412309 482922357 812374236 27614901 610140981 801556996 260616387 207516499 443701591 115303639 461715590 920438144 278280689 589377989 43036895 766974212 55453024 258771365 697781177 192333423 873830861 252205576 416825322 509659084 884797912 558035446 740137029 365215550 289325414 558842060 938378169 758020765 88675076 366724586 31791811 679249697 540454345 365667944 109272926 507953308 46775400 423200737 387527894 420597259 735087962 52031165 67323511 88322950 949352539 38679108 258424934 456552628 577628611 872264735 917875718 649790163 126870120 7895203 408130992 280383864 531562117 268195025 293637859 828281694 126329697 382304005 393406544 973797956 591160495 374546321 479209719 390279850 292980024 921616241 993156683 66348382 424528061 383573321 524308105 484878992 298095287 797291297 562010502 842355566 982098438 90935463 64001544 457918206 388124460 189667099 107957495 282581363 960645599 836235857 254838174 273966523 291287206 525270787 925417219 886317344 236249543 774103820 705057432 942800319 984548165 46211308 187731785 297487399 813952941 63781109 15190501 865119694 473283243 911082363 460615858 427189216 101457026 404563198 37797066 481309020 972020944 277267521 739258559 696838824 818639180 527725548 981776539 515364962 79022453 694322201 485440268 982490325 354026476 791083548 408446983 160094666 76378676 747105292 1009002 479498871 77345921 977168426 308162165 770873553 267702519 340398675 549090375 33018361 586718586 151222442 491138788 17789820 615977830 584790835 273124489 744196439 416297227 361137594 45216500 62507395 117870462 436895434 522768951 166336142 567162019 446609437 656803730 966915053 9143913 600866753 731057415 191464299 789787021 457253316 527438743 755598064 881620286 118238389 322609566 40462310 573379884 199489709 510487465 794447708 863942149 572482487 12980917 269395971 701927349 790426273 695258160 770089952 647540905 182737520 853097616 968551859 159127493 978278372 472734077 446828760 362572216 614182692 611625458 293254620 729246474 892896409 273244997 673368853 59007229 917701684 218231915 309073314 727647702 551153672 325134740 684613406 375366913 501568909 708055442 248257205 681798198 550855593 798459694 35370294 260980112 408844376 212910318 463558503 785974320 224942179 261963892 697054006 334575542 210539452 972390434 700453383 873266822 180556363 754365795 218408338 611973456 239917098 590902864 15903407 211819003 636782792 893179772 437744271 29216614 636437781 670091100 984139958 39304602 232872156 290402943 908065250 90223928 418836156 163153235 118221028 872565928 941177820 721719961 837137710 163121155 138797693 800317978 943042979 177719909 859188768 471215542 561821402 242904745 484267026 365765658 412409257 949949377 628577051 403862576 383777259 589753048 78776081 336219346 158169479 861627015 534382821 508384949 921242279 937094933 839475206 748464581 492736507 604879593 831424427 764367201 279501995 595784806 341682548 741728300 833184452 326994850 452268093 12923179 742516422 371745359 403153551 45646313 817269402 241455474 934348674 851296021 212963737 979090251 114445795 422096823 224826071 358425448 898179579 673898209 802391374 393138882 647078178 225480489 353872435 336029114 767887139 319569104 61470193 451541184 817321875 334921390 243664698 433780541 646961808 907618252 300869376 565952854 710200666 382464304 986698674 545364482 425037245 512762469 914032394 289822401 7547780 211583493 223453935 519352770 512107629 522898297 409502449 530776949 846794434 254258101 162306923 64369337 38352128 432375141 774435611 984483178 597549366 153906258 142599006 465055854 354955014 918584119 750020300 649969722 459801327 753494513 707780159 917209788 151412285 687984625 39890264 803295570 402116797 663167972 579534419 70493619 591284255 369775526 76786636 367626666 725484414 270502974 585056852 421558218 362520858 470415078 823293116 536064489 165525467 907752281 654536721 177941596 997201042 653764661 604313800 106803588 968035592 742563964 910904962 740908674 557836940 32582723 208969984 798757035 553407580 17162646 924483563 608887711 821259213 163643025 648470574 859046045 159788211 76592985 204112351 812532422 321906133 759560817 651525337 439284255 833720508 360645317 710215195 288565989 196338699 381480736 638980123 309624063 239038605 746571053 109268797 914109632 75985935 128125558 606469782 470530994 288595465 916158288 426706105 346135015 105326281 659558264 382528111 65920527 923091486 597823560 632191527 443452277 791276179 213402907 522050599 639653693 653736875 424697493 393676158 921213864 962665584 627008063 864856110 512989079 954818299 512761805 153923373 446286494 896735870 658310335 536930817 178430955 979863620 468443255 655773875 173494391 460853682 824489639 757457056 889597076 256113839 789593374 256618981 773794651 887961655 818774658 169943976 238880482 38110649 436928604 226654491 526715365 916077483 724286460 498469322 315365366 120403170 425835979 492540535 610551681 71271926 931285568 342397264 521804077 778058196 552713099 100209093 698093518 31100032 279902070 104468549 722590265 627966786 156700807 7000726 542093100 247509755 708705779 565268691 317031943 266695558 671484221 498449053 248436618 105049493 452535589 140182515 123399996 293502755 126454304 361952396 193667974 103386989 377809423 63615052 344375371 101516226 102701781 518884848 646892838 980316328 796361028 619782876 734053967 738546637 113064531 214648798 515312353 481516444 502284930 700903588 671955464 837464320 249554500 799209940 551704114 957531055 926438917 429809162 3369221 587728739 1089449 442553811 8368412 830232118 320176394 169272470 193680894 147739761 267467738 156292052 812832163 729606258 169806999 369114965 247726018 175809287 119578792 786193280 847659759 477123601 332252939 143256459 805714064 457917592 813890591 19045534 345876319 298156846 488462604 22846877 236748608 87919437 511048671 58540272 268016297 301284769 275811278 75582916 938485437 6246893 673048329 805104959 857377214 830488548 998214083 365301657 812132464 692521177 963579239 896058248 776147179 300368501 341719919 61307388 233476145 789548258 919577197 818733738 347967544 717280884 911255121 98576738 597319605 299397819 163748520 89087710 483722371 43286111 315554830 733250163 84725080 116553043 50956453 431897718 204245760 186869920 662499349 944364446 161070255 958068515 562365460 994366553 636184677 13440689 423341079 799839692 261715954 698641957 882207420 579750042 42781649 548505900 469079990 33254047 347543529 133124192 454195363 131277148 849474769 231925389 493352845 886423619 953616005 592467876 740085035 697917949 669845190 467879492 858404743 716770112 628398443 208162140 393345800 507815516 930847746 397210529 174258540 627089034 717053943 780969671 80215322 23814377 729228783 749119344 323080856 784603192 31357565 554306415 946599258 662255087 542438869 81057536 158820378 853182110 497924846 430901007 480820484 698962678 776682297 752932224 199366752 969681757 851372908 859439833 61249699 244638320 626276661 222468345 215214210 519120700 731138441 752770003 856548502 58955943 569239932 403325679 177422244 663330634 601789449 842704731 754913113 617304874 79972188 649173995 333307853 237633428 7982733 812987466 573213831 188298104 837595419 198573065 902852782 119924981 55512961 663388761 700720708 898728790 49430287 173548694 692107903 833690799 129388769 304579207 329650576 629699766 884421015 263858614 545553221 845177181 944740295 932645292 397930464 833167411 885716045 586580408 139860180 437246743 339128804 747086608 38541708 396713195 36457444 956594504 208050722 539878194 727588774 814970814 71150441 194609988 336910630 70460308 955929216 487353958 220630870 585423540 415668222 630579996 136242248 174381860 353915990 120872793 658035410 117764396 975370266 226627925 177719338 217829466 858940030 230037506 528941795 600574636 936677781 497754690 252259077 551342468 211608742 942849105 149682899 152999749 942311115 982337721 969308434 643248459 678795122 232575706 328265163 612753293 49871829 180334605 445274324 443143423 419148189 736681361 278371525 971015500 841369987 148238816 49431287 475524904 37277870 93188836 686930695 212300393 376084820 124880275 951327880 367126234 78051725 248251163 654515870 552646619 921108642 951639537 962000693 446156836 628811076 791348365 747372340 881920107 88952226 795131858 657965123 300873324 482771987 310710982 959447995 394518300 114767462 846296952 757693950 552418079 977494151 956851728 939100082 238714504 964610424 323620369 477720154 833850036 153749969 351472985 358405863 520163243 509683928 49481767 709881694 942757595 10083571 67099683 593828774 36421689 361358476 2405877 271684265 31320259 278393286 672737543 896599009 62377231 855601589 422830776 962029268 704694911 168752679 618136774 639133840 655814919 179237244 303898874 850178316 386642544 960300360 659458872 821083276 111004512 374181732 167527926 729830574 715583497 568786309 223884599 835131417 275703931 3834098 387107249 187515107 41476029 641646511 799448637 195553111 681383100 975427287 896041643 955201994 444991410 521274240 64909876 668112271 890863505 187789500 213586461 847564393 945347804 120690607 365364568 555385666 455019393 754012677 573168120 713952401 173675312 835442167 352116722 126841015 839160129 685920012 931860600 600454567 610713305 555932944 963545691 245614320 117429005 20195029 635450050 276980564 605700142 559483789 773106129 23450547 246286187 237928284 8908010 306219206 847206524 602725356 251161456 571269930 723786702 234511963 916822726 177852383 12812428 598664455 61370468 168133576 547608434 796337687 473002837 31714954 623208595 314912469 567046256 913472398 530221512 161103553 870452367 825271945 538830670 304474813 68503220 487542972 343408572 515558910 599450781 126553911 279864724 562293225 652392419 874359398 948893833 146892015 469630933 585773444 10668823 114586184 408641479 1257832 873253925 109365395 388985690 835897229 456256081 96662370 918281039 716015099 473960561 342967277 299716046 137305021 751248819 227649262 396979017 915335383 568462342 586190023 929581785 668413030 746063884 397880440 775963935 617145270 646990597 87214835 461885250 699393668 353846553 297754562 604935088 214435817 594179323 800579779 961469525 282167447 790483133 92334705 136432007 719584646 109678363 969540111 604431463 111959137 29908997 153121796 885207458 188241186 551513496 995811795 201541990 368668357 271840400 112909789 746340765 330547157 343730443 985760016 601942906 817427392 975046649 183858516 177751322 403324041 305906874 871685357 503683905 863670449 392708645 640904124 387425841 567735819 782368513 347716255 580600891 705503352 608461238 50894934 984310891 48893412 976372207 936632899 718565243 208290391 894330558 995594418 22166558 84000677 738991966 907854109 756751296 155035210 692473134 986452893 318211634 876708424 494493579 207807308 74657141 554297936 685306210 662078378 383795989 557595579 244927345 656381784 635129023 906927238 408258758 127886159 530730062 28487015 754549824 970876660 953874558 797482596 12435188 75247656 776129248 747947377 933128520 211113584 551057191 822900273 813978679 540772096 192527019 760523446 756891698 360050314 712393256 597361326 505758814 957775969 904986948 921706585 877479974 315719501 638367118 896101557 149754072 132819584 496414086 946953814 558008462 674329964 335644949 676404892 225939892 606228402 433029617 188802881 88023018 511964574 773933189 764521612 723937850 118179388 474970582 906375218 843253350 456974550 94538917 220429163 978294613 223423415 119134578 36600865 895983506 850290904 64202203 50565728 349401547 240721832 914099125 359343024 359896689 193465630 373303707 616988122 680963491 978958919 790834625 122963427 328311777 302863307 713506549 966505933 110569759 283302393 515104242 471044790 150829759 993145003 766862819 233885467 140228634 442479741 747303133 219241502 256183822 200822041 591528855 700430020 751424956 360099151 673571205 677678310 461054004 561375753 692099336 492182263 380736141 824792393 792608559 553480794 57875 729089849 779170807 410128129 348929651 751464626 674125282 253481043 964036992 640090549 225414896 196728159 357284021 871003891 960826265 167542388 289498986 298095377 808573226 70422180 676183936 544859065 976569511 152841654 809892680 924572598 489846922 748233074 300291969 594642172 599642021 80392082 249556975 249088503 811667986 887229089 583067508 846191206 692544994 776576530 828950334 609413812 345033509 467768581 945220176 780854034 508038156 435902202 851931704 14478789 202017765 670682967 842383781 981479433 536498440 496738526 402710539 279556805 889334218 173163931 6306987 592928609 7228074 952760678 430293012 844038043 572439027 672557868 75515220 746513530 26263208 71986243 770143753 22731129 754701093 339681688 934057152 320706206 826354974 865225035 311985863 652868930 223285302 36160922 475832748 160430457 166507395 710163312 244381865 880252749 143522792 548757609 636581081 522239928 99210067 604876831 637704426 475335869 307672140 716439752 382212844 18869067 96814145 962582930 726194455 216852031 50630089 134273750 597249569 577618193 342451650 685713210 276704719 201068452 669992230 178556403 805195523 863023506 456377474 370289127 741668738 367897391 679676501 196787890 16669310 369145245 20646027 926029477 36597947 868021500 924397667 107894692 158915018 712998666 202544105 855803096 156323664 21103075 388977005 709839502 710989287 271255908 700772580 724904452 641811843 52226306 508226072 208989873 926215780 273754193 923882493 722791066 988020619 551621408 619050969 636865452 857662089 352172536 97217934 29324045 684274868 373521500 356397913 914945460 458711961 123643672 635346514 913535750 223603247 884975240 674555464 635047697 349839 279598221 501821737 842924780 551297934 274654900 946637565 805183558 733196902 772449529 338820493 420403952 957019105 25228556 325092267 753654645 358389228 413473703 87941272 916518449 403755839 369653248 517200294 419702456 535157665 482002401 207950556 706270284 443645353 985405659 470810144 402705923 978992291 701200410 776099191 67390546 756979864 363638311 682505167 589771041 626699276 293769365 755641965 366034049 22504131 489770731 389399301 875819998 936026556 727468950 731015276 173983645 122092241 324519838 736477624 35156863 87171001 36010824 477352210 229113722 833735971 165517841 958186466 762870166 528238906 572746480 504616659 412705967 676436110 592496404 873333422 522589310 52851409 818185727 385453671 716207163 288674167 530266969 173516993 158792310 429107530 111143250 979697785 587082363 486505082 984793433 60162311 701450975 688904551 511276365 452620492 378517161 318046507 413377131 685186988 472018690 381115471 862226958 864344183 818933428 842846822 745665814 65727116 538697930 736043228 932057523 915083336 7082021 789625250 980519251 529598616 291177190 582597064 244341451 897084696 24127370 284800629 211880859 747980381 10842973 194070973 180621360 954296398 815061878 534368516 814894855 292853173 150271737 426897489 882757102 463494967 589804350 715572455 732631397 359982721 358777802 407907399 798487867 614901230 117431453 224164641 866839173 395365136 830874333 933790559 409664338 541362148 537943328 215872927 762603603 457316056 516218439 411120656 29347110 176292759 651909045 122222585 697745310 236448356 728562475 815995778 519532345 883195043 707946265 875247282 103970659 424897103 258842062 643053176 562113279 25921051 915517145 375067596 60740306 456736099 903457312 658257686 211842122 24713621 658162460 525376067 559132654 42892024 654801786 215330955 495698421 897412715 631079224 716154584 928947999 236020882 228061810 862300031 812766636 718686312 11903053 135353425 154577002 56066242 468935401 804912512 827862655 477029643 889385711 115935315 799254261 547457984 617956968 793041578 249001356 871361876 545538859 105108612 913232981 344699250 248213640 967974659 409152060 589098150 554516919 689722270 853386445 294301814 201734443 993133764 680460153 405276645 610510318 180270323 255611741 829490560 444781913 669296005 995886653 104348983 921370384 811811811 648508579 911900211 166805989 793010612 993570519 663895822 307527499 887441863 763582794 276102328 780194136 932081880 592946339 147283164 120909663 392902426 749142428 213122339 872832342 180411696 39954412 28028472 352231219 429560031 902280322 324447923 448403894 254989588 729661513 775271720 937688748 528775643 179101135 309212565 876990159 834197475 604283180 130299945 835149923 98300194 54956999 280180493 72438657 532638499 601219609 950837827 547549176 592316115 722996156 139907131 434465997 905040235 184479096 144503636 558458868 574855304 952868210 801268019 123178107 815838148 169406764 248959855 620446157 823623862 318892999 557076843 371783157 695556085 783569709 451494306 463043297 538985454 628461885 560505019 730058250 369232687 906588168 321452664 188533098 157077283 403315927 124154477 72684283 15259742 163543768 553046277 628181640 301813316 385407892 495441453 929798313 204714921 612810064 165234889 53600974 38060607 68197153 322124262 491830877 399066603 824327075 382295992 128321414 59839832 645729302 123897563 118637531 106753020 361850684 341221333 297533229 107165067 206536106 446841016 286752279 699305963 961135095 837979923 374332604 33049311 360358133 81083027 150932300 736736046 679033086 929047641 997864786 407343468 485783038 219648509 79750170 848649302 738447236 57060906 448836584 749121391 17717395 9448609 886778763 29278197 377038638 594525109 269585394 812441453 81463194 344292370 644160734 629420781 269613561 774845581 773230191 673596321 827724223 805240456 975377213 580266235 180330932 589776005 11483248 768463072 756722060 684980361 568276153 335795787 285952349 855030429 23920253 93112833 391624532 983140979 290153162 620120041 203443826 165949909 241251022 121592963 272494042 626506418 744340037 814005753 938073288 123685336 333135033 381965171 828553358 857882499 651202991 592645324 741880281 608474958 821455920 480240049 499877137 540755575 240158907 758575782 623964524 536015751 608737020 203308368 486746461 983711983 352235569 885954391 299691239 892271679 609244952 473933257 332163079 732322982 446376091 103403317 346278579 187441204 548800696 896865811 690880453 290582610 475712967 328930056 104567544 207792658 68236774 636223030 571607430 770528940 576873627 837173569 834107276 356920130 95072673 643219264 865224924 867579072 945395396 396487071 700777790 963673391 69408746 145213485 657607906 521223464 210058123 375274506 18103906 377219943 335188811 870170222 988195209 845086236 7915033 213635597 456645474 205612715 604332490 3902264 297628140 843584235 80555462 705763262 245324967 65200441 683195559 395756365 536523608 664021099 556158478 560780843 938322201 305964181 540300048 890571651 999043237 104212507 771776008 783548374 918537042 400639527 803905619 977244312 971956909 441131965 589847946 438756339 737788302 552967929 343913604 994307449 787831264 579192119 168162301 931316327 181469826 50052668 410564321 828021123 381379560 801310862 242796598 660432049 163628399 314871639 805005139 53378804 899493509 310904741 884770463 993376405 809500856 16730701 698038310 446384148 38458940 817210028 731544177 851183001 312064184 96824840 755504197 830761478 109513676 970281273 578437298 327325453 299409434 167973908 232444036 323768786 680072994 875846518 383394438 549179298 717138680 74200220 391013749 977909212 306518127 775333528 600260171 454382668 822796050 615400475 277784978 63585152 194586427 497070057 640594175 337332303 372620194 85525528 256341781 560912395 4966316 572407295 462013853 255300489 833875521 709043375 361234595 298110186 729735075 186346754 195636105 102916161 652806390 64465222 785863059 701859059 723682217 571423932 512378156 370742340 888073794 304025120 381560088 468070481 302687193 783491001 663669268 217429519 298440001 417772027 479479129 320509868 458499165 151403090 533601470 642676522 603578470 627020869 312191612 41527761 117094742 675010309 914818733 153983395 666092566 406084204 424608457 675368947 947592393 905998648 113453562 987444959 271268504 440356402 412083732 887437913 286442318 478647674 659835388 314201604 460081157 661379864 423709923 467130714 456531014 935586639 457318151 288282848 199032591 626066471 736963315 458573891 734517415 211011085 201006648 853260209 424004339 961831356 615736551 637592973 995053481 972687109 935651722 501291974 528000698 936991377 148466187 439238962 204199221 37799327 307019501 813687757 927715610 199843343 794439934 504766597 357349177 98009252 369468949 820750947 669965877 562487291 335432626 757117396 468786881 267708650 91082349 444488669 75933981 675831960 22238891 664885942 187273295 355950122 231559996 492229169 245726004 358352710 893940150 283058526 104390405 626236784 576984549 954099839 298181718 651792112 470467188 713871314 651146443 805568964 252520397 563276305 120960209 648720983 790429189 345371095 178843652 691304492 183385459 637583137 566943941 212762184 259847144 349789015 640841375 925679009 927744829 806171416 685928591 775012448 478413354 790308086 620772949 829248309 542528967 140115768 777617849 49374136 216679205 882845172 158817861 794214228 182169964 342645121 479951345 555319806 870369463 207834604 410517675 284328823 860666369 903888644 430492525 763906328 318916464 518898220 784110410 778758914 672108979 790518701 73053046 526295313 734282095 942002056 579716212 4343037 765666020 736733462 359168317 123487424 958763874 834890014 352176952 257128711 188824139 50960262 424137029 359916696 198191306 26197714 599440931 134133199 355355772 272841168 94571867 434822003 872175085 108426808 912021503 849421032 534774766 407678979 77645429 801417423 437255374 608450462 170933197 725024193 432526291 7956644 128524694 844256707 556430166 974545068 487170635 58923832 3112648 837151751 330665997 337561138 444266592 857145523 593049405 124742166 749171039 580116530 315209738 774709768 644648801 633781161 434441252 588703210 419342113 681463280 969827810 360759437 32705160 842743688 75725560 352942224 894272478 778245902 19163922 805605151 246462924 24301549 285843930 109354773 597764961 954114808 535849256 555511699 705596330 141971751 151239495 145941873 205666262 11444206 605534177 18315052 10827705 756989314 812134991 474484005 876899650 941251353 912989866 635442495 994521649 8522959 638245354 905391728 341696533 935496597 734615045 85614802 551794178 418617879 982784121 75778059 953312129 4306927 292924200 250314457 364620999 498958927 294057110 894335855 740006546 56612655 658434057 262741978 965873417 782229237 564711488 429479047 331093004 424061286 589771615 267736355 747770955 660127564 760495665 39407963 319013388 792174858 485469605 964668991 988071062 784549073 451638485 464612497 523878578 744915895 343957613 348633570 195009128 900880288 765205825 317086446 22368876 582842487 137964577 932482856 483809445 30912105 770101241 583277636 378311240 288028606 896189470 613167943 610832413 964976102 417120713 318301291 526120329 114549497 597095535 857293483 527261607 262956502 282955819 223536022 516449811 46218778 317389716 836622510 124661639 591132077 903541082 205890136 57061848 518911000 149638645 949237314 406006847 645712400 619262368 179636889 974087531 216796199 239617721 106851372 577743089 806453048 125682656 741939827 50179467 734936251 750425563 625910910 973842399 809230442 759387963 164260090 220036733 176498394 785538253 899441312 286953730 524958243 694281882 889996619 559420538 615317939 322289706 855687612 368046537 80663446 949019424 329253315 337981218 560342256 675868295 272140880 736686711 340113152 96242193 629943251 402141897 42684270 72982353 476544147 740745101 520004958 614170818 585978714 728598940 931097971 829084890 475922152 74161758 790600479 668008546 373775003 311765241 571827863 70979393 474534603 61575644 588360207 650224611 756641238 700381554 753769730 936191436 420454951 487580439 983939483 742875756 901206981 541510686 80173524 806224328 549684791 930052597 379974508 177919658 155843357 441990056 557982784 887506151 198933174 140360551 239367648 151213225 285324112 48927403 149063403 580538946 570135261 795231911 292865094 468449040 722825255 590421065 433312714 975563349 630021600 885482546 408973041 179288529 197242458 206496743 9624799 858029055 190956424 731823394 242777186 212589041 957002865 257665859 482296340 155461793 314515224 320138265 595010087 303798507 850958761 585337958 259262793 735858252 605425462 989298463 104411210 259042471 923296531 521366506 238633503 631799653 813946247 392905711 6943518 835917820 633020612 539739082 768093175 346892253 344994020 881679781 564188371 428983448 822430915 419298513 96943538 796818994 843996811 405836210 924904372 766794757 469791422 668182544 779187270 721740777 242626383 555365159 785060567 153977193 279533461 187821749 923004018 761299075 619801010 712435550 552682233 973535870 316658867 594883922 424120955 636479872 688698558 362693175 447425081 343095245 631863625 115991673 66895176 892261395 746400485 696341059 170360397 9628225 562931974 846627773 639887149 410786363 746822340 657270768 764705540 183150468 151703029 284413551 73616049 260532127 623984173 191378034 37598470 490369905 285994306 486650371 729014997 811399349 830051799 464841526 161014768 362059898 373306231 355889700 417614637 240997789 401260722 833063969 562620840 176805208 460955304 995078505 687860717 296395025 562571106 716013341 617787648 214812814 35656604 780472509 789605134 384744847 648711795 776225785 458375037 733842474 431768397 427047533 982942795 15789290 989375302 902161839 507176554 22143733 842271495 108594450 974273159 297330659 412922851 546494141 756164799 309113372 141187890 199685260 127496915 114013725 698447377 972164759 56048849 483444253 726648504 906532152 718176286 769960505 511389724 102962238 749197218 771072525 97280340 975693505 323827407 612340718 403228793 365683576 216563049 270468234 971465100 115051695 482324281 313935078 636419587 437195964 641360393 788433253 292761341 558460470 439599793 880943369 214880680 872654926 182567214 589774256 402603163 415949376 510967398 580370717 669609466 830608639 481458831 679280658 733637104 214940083 434137583 776102315 341874484 441227995 38541607 766693142 749004602 991795478 411294266 122664715 291638897 910475026 903951571 500819954 906673957 992219135 844903759 876080686 276563776 655406676 732280292 297651303 357114862 594101109 887462556 870361636 973242549 939483500 40829008 702757303 982588916 498078327 200199535 987188672 615791163 456470035 569213602 519946882 705144640 360453652 534809943 249636197 77113313 87176780 398236284 256244574 646048297 901655600 983611261 385540825 402628268 861664827 372064145 117058959 337934571 869258795 888917353 359951785 985431584 575167160 397635552 683802326 718040174 63155629 825447467 107152079 578282209 302712927 273404493 818598369 202531825 59282510 440286407 506327766 341906738 838163555 307079330 683804923 902457447 248787073 739598232 47538602 689012669 250652608 993095207 876851002 737051657 563915403 531635430 415370290 720238523 806538460 965857886 588407864 729419190 969544146 637070796 784796106 32616976 122276112 432507830 234839479 323101590 42861200 211546214 755056558 205691296 594125357 143256733 68298104 2876725 809542034 125071852 193602229 511787989 741019290 155453067 83601600 138215250 781534065 997598156 291868526 246638641 89818045 256679400 763645967 366292452 203837733 436003478 745513381 909691122 942853255 539522665 311392935 839196738 223785649 313615587 300443311 951754937 86333685 399712683 141103105 910787117 182402287 393812689 956136132 383132564 907417192 771154752 360508051 261195107 662404322 500388850 985694993 461313106 802784685 624231151 25497383 263353633 73339777 464064517 239929507 531474438 670752383 651495135 439754188 598041136 93998570 478602298 18066776 102765289 554163967 349691328 66247226 159081179 235998330 503363157 819151060 452616233 987169185 669360734 730997351 994789910 689620970 929995562 337098357 408800211 961989174 578812435 836857646 131563045 670556971 68247466 423443326 760722401 172999637 246857983 139618369 515061615 4238639 748429912 695662725 171598498 265413093 750724458 183946946 561052969 488240244 555102898 420614362 578695693 275643618 891956647 934968809 314781165 504814070 848693462 368240047 750976942 142845625 710878667 319805417 999380197 15190634 679259162 763538827 623172976 268586378 770244816 43886325 376551813 149546651 234020738 117012428 964270066 311137872 203829069 350486290 648424043 710285544 589147782 40310078 332693612 362138049 331154810 431276759 549952739 120626021 753411850 809431814 481671320 483531038 89705161 10525356 92066970 44073926 411047327 283773284 132428553 905465654 190294165 323947499 300490449 322718188 288749898 703660758 631119546 578833616 337859083 441873710 961156118 13262511 559793494 557657268 618588639 159082743 799415824 842368963 470981430 805990543 180858872 287201389 882438430 38011203 81235955 139084485 307967178 693440904 581653342 502906693 964542380 450999009 676106949 995618000 523764810 383681815 167042566 118631877 408022658 518437487 121359296 486918822 545298134 208446175 443442329 38192773 68973202 826427900 308676279 587342855 170588126 151461720 36069375 885747213 265154694 924502131 356164205 148926654 384824701 601809512 829799399 196380388 447302884 923755278 787202257 548667267 983010373 316306764 86348751 257653495 291756913 582527384 720526174 398474442 186341892 276418664 903816948 480415416 150970199 527014799 926666675 753165251 611908154 962975639 320598489 544051010 310497267 627827939 680397813 931635391 50085861 44313747 511617701 537400936 727979149 82118478 168972139 77231455 213636169 702098687 468793254 835149718 712836130 289645581 313011018 593102049 271444868 337378681 297513994 106295906 109620336 555351487 246471987 718042076 202185251 988410304 46864176 439675885 712463164 901286125 449101917 687081034 696595098 764229701 5724098 909745024 145433465 360653711 74447509 444558911 834314063 418342977 746223365 156108874 654248129 495214146 973897383 178857318 258165062 688462232 148436730 275890762 523341639 652227520 38105944 589583987 465848841 316745298 420726556 435870325 62025845 566740580 41646086 746589049 868352816 584671476 673671057 164323433 720626080 390992182 478694037 955708465 956777950 299322754 8131002 701680851 546689665 187551975 996133139 737251026 259702907 28605332 356078117 392426530 570423335 497399661 358064424 890570189 882951555 246458025 15082775 22250527 583494658 362223219 921021701 763074760 30442919 822679049 647661519 518123162 732199509 814330633 463188386 40911320 330836887 793249630 258808772 979653614 913741379 262262362 801226535 2548216 626982874 713943833 209617827 778950827 663794817 286395620 158951408 677576011 615553125 42377222 324069240 479289211 585569540 737539186 716654471 496049448 848974067 611334842 851409903 546155908 294822071 194370506 102588796 612001662 773846232 891983545 234935585 253926424 51095910 348341324 59241931 471324850 410288190 831209600 287313312 270872349 711434429 129442931 156680384 601153517 668172537 583094793 321375918 910151366 954514295 795104477 547048448 366914022 799180283 831208448 507693276 600281700 329029331 487439755 442328421 282902025 611170549 592526920 780842127 980988085 547411602 175518920 828586180 893657273 911078392 67583239 480319042 233905428 83141340 540802249 527010575 811228102 333356346 199465661 368088463 677410788 786368351 516991768 817292766 322845387 422339625 976334160 900668777 282476091 121992647 821909423 967112703 730851538 581523146 282921807 861516969 789453034 534665831 445220587 342980307 687096531 317515900 334806128 347584866 966766577 152617054 37800009 846197309 853497464 525299223 721507022 279477991 209079452 551193001 190699432 919141475 670641561 54915918 148497963 661133260 669633043 759219933 599759142 324985659 673403536 997910976 844658755 73876424 142827188 499968307 592645702 205771398 169423091 785145740 905768377 757339749 898403698 513743993 69405681 456384197 794274593 345894520 638059923 378331590 818078440 510093180 21872585 42554773 534680263 648517325 350534264 219070613 756938975 403276211 367376428 79970402 90853291 213289875 223316581 987117733 88110076 928002822 438869641 386136181 700639399 442092785 4876674 231805414 327099243 845956714 460968136 817802633 969834275 386276765 560085547 94089153 956929666 525278949 811702198 224926492 253828233 10905725 103536921 607850354 230049782 504278324 165022770 218706779 628943638 951945231 294921092 423761377 375710664 335887952 948812540 584975190 533072335 250158510 115211355 276478139 104247373 49549452 256722132 842506389 440241129 213418997 182157712 318316611 429488250 570033426 130321234 548923991 674829350 980152550 617507415 530225793 821635028 964701097 621695160 129448567 815934426 623203505 881445205 552437969 216334425 818538874 898846359 510005704 80775101 398003933 320854915 372532273 124637368 567808194 777249855 75040382 188199065 834526213 416102357 919369581 651343336 899937319 411802606 678129467 230214896 67387944 846165710 80756296 883471504 942399829 361224061 844843452 4217967 144181309 943727801 235586773 677222661 770502537 965681751 341379812 671665391 851907726 491472949 118149109 727912877 26245275 51115493 940362501 29163810 941314499 453663074 817982919 958271287 10517227 401572258 99404235 647140404 871507438 253810449 869396275 185165448 648343118 891299341 464539665 414552093 684918166 154812034 445802478 452417371 264989126 568007696 866707461 241708738 572958089 430286521 417792920 44656354 989142730 858594443 317081447 702325746 47260047 790135690 507355344 295670613 444082645 953542094 849147586 590898817 330870517 860810206 541384273 592324815 965102521 68573721 937384006 134616416 889370014 884652774 492974845 578994919 602163442 823349196 720018553 948112336 202885688 238410757 565726047 255391800 475398035 670974942 597471231 441419963 616812773 270147619 506430341 455523271 587006653 680212092 833237796 811164890 392946401 613067763 338012192 272375647 619003115 754728558 384449493 130986943 814804721 897657773 851837814 74954333 316736756 589356001 312153441 838006117 787685952 370069487 732550543 514280462 986039635 315171250 638661578 729268008 885796530 578864311 429514061 497759480 574735769 848753326 479292371 870429856 597560754 345205989 225567808 191040195 383093715 549522457 897444207 599946018 920840187 474634941 382093567 731030840 712792527 748552301 901077819 973690806 423066944 916582490 970456273 76083930 378595664 631319669 439593281 319475700 8500652 605099814 839373168 44803341 538792450 392856646 532879501 394996426 948699526 689298719 700087970 203972127 870400244 997930389 200141074 536630403 805925669 847509929 349941178 340797327 595496222 732243470 375813854 734311446 393810505 451057226 448263189 417022164 422480363 413378360 856301711 389481297 388801151 228044279 583042502 219958554 28358889 881702877 527079438 764394021 847899604 663839356 994907899 669181836 950612234 457696002 910668042 387570522 112887144 786598603 711069526 371857645 841402072 941950705 284406616 804158648 164945415 305038839 725394775 473791011 839547355 466868719 887905131 106040926 185876517 463699554 477281591 459190723 349295372 848275376 299157209 924212457 200106951 942125233 178130899 657359812 117345116 509286705 231536975 945166843 112551844 457141250 640799479 34563887 105087688 548800568 389678711 665678630 334246992 687931100 337194230 296659547 745519548 453918758 689207282 531083653 45176544 879027290 293736206 827357526 183442797 68374469 569342874 815641043 508589429 803216699 491695810 909028881 187047461 580865935 545908051 426329227 907052868 521398478 109682621 865274311 698721518 976370398 395297950 255393556 226344058 649778689 704493146 1275127 185570037 112448136 211165683 999994756 545245761 208631435 107277882 925323064 495871914 387619969 741487206 840071612 470193237 179242007 351528063 741983203 623777067 277915571 40395282 964634354 695453201 748929139 951539481 491569891 108428682 815723148 262603244 779058072 743887884 874930588 18339577 585320741 406562425 595589573 238634894 828360022 40501162 765201599 820875637 972982845 882842988 399214020 354432365 994441192 556896066 750182338 77172111 684401255 476974239 177125622 984341189 966637509 358078117 284074399 49244525 477845608 336431075 549699037 593475687 90343769 190816272 714262507 893712591 738874840 279825990 3250584 425514076 840074396 765510388 658656032 759242980 364375229 909647276 474786192 903551268 918922768 224769557 527965372 967999124 823938957 722099446 795177922 87814746 685869556 712166005 588227528 228161343 718123764 367780374 662432577 700626850 450976133 548273564 676949078 879571388 223102118 118314798 3296820 106959316 108037742 22400330 176520113 566126119 561121504 898286194 206345713 683290026 685680690 429683908 546466138 233638742 46839993 368482963 153036091 40932898 392732640 306071392 377350845 991439514 243767703 165306915 801152010 856716128 871186342 316529977 754183257 631516311 899126127 144256268 365280179 735664091 800441835 536256785 304899904 929419567 673647998 455675996 357830477 416467468 252345840 880883651 928367706 478525670 351572589 9387824 304819573 967410581 751192038 82802947 173309591 970518581 32208652 936229746 444001472 197161022 879624270 423786842 831455657 458924776 301693948 678127575 514525877 64290885 872847589 112612514 322668740 339836980 848545972 109405714 400159934 421159694 570549707 839831481 46012818 547818625 165921965 225251434 785270793 926209088 188538736 485508655 406345776 106170303 272488975 902227031 899597739 782823807 957613821 997333236 441477943 778805335 882477030 623345120 738794348 765677116 65536447 783079085 395288798 509461881 519537542 110194666 846541526 5932137 718118619 317832940 942351704 984219613 116855488 540911553 602926803 553128722 669997631 909328392 407805851 707608773 162540876 954208312 654189572 141584038 889047195 210787414 708353107 176667359 772712888 421069960 483677950 711210238 307373094 533818442 929857821 807035775 31853457 885034196 603408870 649625394 105444027 628979777 621455479 880776151 370722866 990120534 593493461 567572117 430987609 64806213 143744007 114525824 877825201 427249931 713140530 975857588 619741421 578965648 523643280 303982006 44225774 432196480 794116179 681022501 736327364 539155938 707644198 203468427 609533755 643915380 449495436 214584010 58329401 710229830 363285269 794750688 528506741 559862569 511125547 575209260 638497399 366707626 486050970 913906599 48339554 614412460 755570795 959001831 582819418 654311271 643309904 170475317 108635787 232279846 758494095 353234431 531619452 63539971 362092349 274546874 935571309 387555350 718889766 666128281 755984703 908241940 129066301 483770012 453641159 20158141 219178795 300301465 305488886 126049352 17430311 129342298 153289765 10985673 450842272 849334487 626630830 574351186 307529935 681117393 489401357 784651746 565211022 695104065 948518117 255553837 37777887 194770612 422047988 468810341 11165907 218789620 161164590 543302340 940174792 19816315 778652574 219441896 327965013 465980822 744303275 822815060 823693774 341902145 399063268 751319325 512839976 577108431 322257917 845239529 333919210 225166417 407075486 574904409 730995458 279316167 391445281 785466684 49782291 670726203 165938449 34200950 531135670 778188211 227997859 176809896 57265560 980375200 522778442 824166413 586247926 87740703 181029458 821607718 125327692 181567018 668857894 691999181 865773868 334245205 114210898 125276593 929360418 51146144 703493644 286097861 125676571 822603472 553585658 357600243 807853793 656947708 866978671 589548200 738026796 549226911 149549678 445915537 238294825 312274982 199891309 231308090 861720957 112835701 323089120 68495292 224353423 982680577 855895701 392306096 371976019 777637852 48905050 931705626 524292226 646000543 771827487 783497831 206922248 918048255 199881570 659884331 651850482 582777815 30704919 579720149 931356737 823845437 999801456 930824681 690333393 38080969 360442970 565676202 12119745 37208630 951237975 70209341 700271985 50993586 641960772 770830263 638094422 918524918 231349107 611779674 184628858 338130081 75059262 61469380 533855338 540186840 425604797 315453155 350811410 938604791 228340932 659966387 858164334 667182382 984940480 141623480 351915521 109336909 618413147 43089286 509635377 323823166 32836438 862336351 326436110 744491536 925172001 516254260 392156987 207271809 693742269 732078670 264080974 514409452 907922483 306888485 824757942 727222071 432503169 408367299 915281835 567021469 507667452 576162291 404846003 473320927 691015785 652303463 341050159 684852226 984589798 712975028 159054023 618245268 451170255 614011718 734265205 792661140 952161586 844854321 589802658 508875798 673049225 216393791 737622912 855804276 264773621 364742678 465215534 964218287 344269170 957263562 631596434 794578063 284625212 547000044 850996763 661267398 697378815 365677471 11061619 698711894 473390937 259746586 126677222 655138153 416934915 616492109 600244701 192794699 412058654 174887496 286349454 58363720 86286946 114290251 604027889 45058402 138598588 199998721 185282992 189732489 986466463 805727851 262374548 143241163 543649984 713350599 949225168 488803734 37809558 622989000 115871566 397047992 866963535 428678514 897986775 512740047 646194921 937378766 638396176 317741305 275983298 655799786 794677320 296647076 484744364 157086400 357956051 894752398 987562814 13721530 915085223 816698049 58506893 533053496 460358178 721462854 355327948 294872111 57601832 573317009 724195321 327585847 915631343 622747023 989286467 213391717 964699912 486550131 817716219 175941523 998698208 467853749 211243769 134605750 654572381 208233142 367528688 641969603 604988381 137715628 232362600 423254707 341494065 499374842 960592602 868867604 565658716 3002496 584635583 596592185 155264399 119981839 973268413 945613561 318893169 680169888 195798529 305666677 308391123 890862532 399903199 496589814 653433173 379022270 172941607 177611966 218458187 775374950 107007706 872218628 277348971 662171994 430466940 710472761 754747039 631713413 80549978 784207284 576121035 799501869 864510214 450154277 387566701 403251566 442761316 174654237 806739201 295553754 41797609 15810041 934492603 889075989 563187270 353082701 887427464 476589164 803416517 565220313 246932645 498597786 21155543 298542841 211977068 35586380 83565946 136982524 315789200 478001084 235081189 366415487 274423843 938882861 484697396 138071108 355049382 265102080 783712758 512127889 817939627 476484184 436674753 726775764 283821074 795151913 327172206 263573415 894612607 179932491 112800690 421565909 17470237 691348774 120889130 262220461 942091802 94884764 464530065 340559276 545339200 283003893 377292536 586165627 560814137 610567251 768387541 745185833 871395750 3413076 118073070 601821863 675858771 884306887 188263167 906881829 918016288 562986868 272786377 301555418 975606637 148692213 831973282 733245760 480065962 891702089 945993950 822203665 907563793 750014561 827351844 712194647 623924635 933067978 74283647 930323361 488054970 441574337 132267884 736130772 101315723 225451733 672632881 866511231 718687558 418472840 459649247 211423493 111237384 490448297 568272756 101687925 852381062 444887906 636264956 141590433 278139165 929390841 466656087 912139828 19871315 46948425 627805070 774463404 234287263 12094104 967374446 771527309 804553599 844836286 701046529 858628287 581933020 791898628 299401218 660867088 740425057 492915769 122871302 336998355 412113542 653010290 173267473 123228269 489208087 527308870 657120545 127644237 703190136 149695459 157741192 4371022 130250788 172865342 486745542 299400360 787603618 573146775 841942505 410671790 853574218 789901271 485443136 379451775 459436841 59725154 490783827 919657763 429567667 89802719 857962308 572409430 996649577 134126092 499265555 429606342 713236223 896258639 239689851 498261458 30713843 410818605 39604350 258360340 226111200 844809333 99364241 385731979 843489500 519890628 583720154 195401747 285005177 591495183 373125225 198343802 356546782 680725013 807394309 357190475 837685068 37922308 783899680 854335449 851205605 488504038 985556032 223498108 567313181 928907324 334044521 506427005 760797161 874428337 117126377 140649430 829389422 813993841 327296587 617994627 843563240 215635122 713877739 953572939 852268484 734723397 845331867 256792574 757822118 962156809 859436353 804968773 327632427 202628812 30030642 56519276 892764907 408938712 175175730 671019295 906480037 243086446 839451921 301108767 565223846 474389970 314201544 769148243 712756850 134075026 480271303 290693345 93886287 153308094 921888236 33618781 779444953 782127319 250288179 762280382 8476840 449796864 840640883 872504148 974132902 687718669 239867961 467386072 853836369 101777819 177982866 704487405 768358856 160648376 7821621 891307985 9635748 846715401 37129363 126487870 165426217 128499199 248040068 333230228 345661953 473629790 608155084 418459499 656005763 492505008 182331750 654581599 733502536 781730278 821095095 900062391 26663028 58041757 19118275 952762709 388677264 64326494 53895787 43299370 604765568 297279829 136175599 792167216 336351302 749442698 673236400 180884861 186011440 435716235 136712514 554967377 705278276 645039774 242386749 951619380 110495303 486531017 146201127 763366576 840003141 972567827 48536655 593162476 656095269 952879488 704326192 840307810 177586824 959262759 720154225 995530396 492224170 750297996 970800828 523205494 735065742 574799585 680648239 510129912 276617337 810773156 794145866 650195765 759679161 508948673 26042530 783349394 858720576 457280959 770675856 548497860 881526690 164734305 805072589 903830713 986327841 89939096 275190180 856254623 518639441 160231957 23066312 582375176 501848844 573757902 379569651 422724000 687895948 581124712 850147085 154391672 128474292 124599463 525776371 763877450 115949392 599536168 110394236 777853515 926680329 414196420 651481743 102635627 693434977 789974455 935115287 713891893 174291628 179341592 854401627 286675598 500618482 806975424 822402704 497513048 222356114 383877192 846200477 665297899 883407960 882879701 696429580 157071849 727168699 219047261 119956815 727383593 38646336 245772809 673862585 508536130 754851612 159442290 331351052 175175605 551631999 842472236 650471736 57417877 588092060 460076300 645770845 652757254 867554960 906108781 834445391 897504248 839709943 232994959 599014956 416873926 551666784 151756128 700841030 870178125 1302494 714272961 923131544 134453511 887412810 392756750 75225906 574450325 852285622 714583706 945785163 948270585 133090791 527705512 119710215 404806811 498702342 512369297 845215650 226532237 491291433 144447096 844201921 638422078 262044685 579080894 183805149 884455583 119149475 156557462 604681312 835455695 903589786 305912672 106014155 261451899 868488629 189332355 921356029 416349554 520515004 673087329 510260983 632512174 657561180 708236253 376386570 588918096 781854634 806258058 555464485 746445542 659402624 842571421 326309576 605264347 646255549 993244011 908040010 943379852 776722883 987110956 395854564 719762893 333576126 956557535 496950707 686525044 746146080 560578012 127782043 741240406 331931052 861132782 988380616 978320150 812863553 613576611 358932358 118618529 146085196 968416284 332985210 829295651 94480665 50095262 551435972 196745145 222774584 945667086 26069725 601708982 661738111 567259204 543095880 674797701 971052520 563080828 186447020 952090928 371392453 29799972 383148192 73609743 259046068 418115451 199810545 520049929 435760962 431077056 946675649 893924977 439947645 757825419 241724805 829029278 816710484 638217113 793319611 515212558 793719905 797026047 261242500 851002468 812414917 205379063 526222017 211486226 260362544 85977269 385345153 466836343 978609388 592660469 517167962 553861740 591189331 132305835 935807388 270363364 966913305 465539430 804653749 941082939 721184533 178641897 804220968 219163646 688087694 844661459 310186352 882763106 636294248 810623090 471539876 776675451 741602270 915904362 402794551 276507476 889780107 5629356 322954537 96043543 870406393 875485536 341528097 154183319 576584454 58433822 470563647 985782560 133533524 135322088 585540143 801160599 788417866 697957172 729230623 687943579 79121316 615554578 22805865 872413195 520203921 898026301 754228676 862984288 108578344 419523489 586702639 899288989 595661225 395691091 202047469 895120154 231660508 165804782 958921115 964181802 691014309 927693419 225191813 712827107 968968757 823826121 596020010 98433927 389183502 684237771 263763356 147009751 441757113 463441192 80331820 91325637 597990725 391113818 657372770 501445204 991937060 88187382 817115795 177516332 925947421 651914202 480352516 931668365 159978939 673148982 542304910 511814817 458573730 848241600 322877383 213985592 807151912 248942332 973768655 689898128 795616592 518130313 778345011 961470066 243125015 658922109 223334960 712610489 202879133 112287529 968761120 397295125 956531506 736858440 758311464 511515381 243173872 526945358 494781188 304179434 617136567 570906213 438526485 439441952 196829810 124938246 300124345 195979002 210499264 194626200 167348738 232584741 699119469 284139485 567831859 241195764 42279984 842298494 731820 358430755 885443844 678860126 641255509 848794564 88902393 473825588 109558871 70923354 537116067 387161969 960702771 97582449 18401935 322994796 535900631 891067485 173478834 768839117 306941114 856064858 976912556 761961491 558148314 769834007 812837332 19006253 890432830 97306671 521440051 549760378 552682347 450002729 588980433 888007437 613318174 812359624 317457161 124591402 692453625 818290087 104068904 765744130 372312987 165964045 933877340 612847364 690930419 47107612 225254087 325381608 199956648 780262457 642938126 481966403 884194020 337210825 557794984 358426105 948284208 801398545 525597923 537085934 184938765 822422555 235239588 61379552 154649114 39155901 586819107 348169863 501051382 224126016 983385488 999647702 822811126 695329171 200202277 364267220 515691850 312960383 740869862 516884329 966666390 940430934 961208342 915723759 439281929 861226078 786866696 328959451 421838745 129290551 351690418 904232409 296962291 62943397 706785656 846796367 657878806 996363982 477620698 432529262 464095000 318145169 855743064 980004687 966871653 562788302 573982120 247485716 980514678 56212542 582857364 827580944 557364943 212736648 400693473 759114580 37584910 308551209 485264136 805485636 48318481 25520142 152062330 634775116 423910752 745838284 381643432 816439924 194823918 364871962 503500683 180085573 482986834 49140826 551300909 245717552 24913046 276817330 484550382 146656400 131573226 563738123 348886745 611074844 23019796 96448205 827601860 619786307 32944180 456754616 10584982 281494931 779462598 644270166 416565021 795683522 396903815 128393447 148703553 291049000 345149116 533152565 525379415 802744892 769163072 524137742 499901368 279721764 205568052 477174704 53180185 793169565 35699778 138589606 428776138 971791260 643931332 788707923 625196668 850098314 740481378 111001620 783047827 200350868 826877968 231669145 283381143 487057763 251410393 621320242 432085020 572449013 516733439 959330355 881132276 99086327 734053575 623357065 76307245 759488166 591199604 438345135 521983370 395582320 225184252 164636350 314033508 591279651 458587908 359716823 9610647 132325667 664783060 488477787 930561437 187091745 115545923 16909263 897522583 99997510 18389488 95724788 636039598 784139193 365245148 627381608 178163288 295254868 713828014 284090746 20789563 114164251 388366925 150575707 976812882 572059407 248810869 457442347 298436510 511604760 205927325 650849652 25536179 323750321 859458834 3745899 706348414 558022121 564343174 29471188 676649577 469684385 787744818 765906349 129457172 557783109 750465405 596129946 770265300 848885609 624932824 329557434 81850017 735965032 949274518 857554473 743658292 124398548 11867021 803389805 212032003 426448002 686569128 78787412 747851071 240153587 582181522 799372938 942862185 968906139 901670351 735780033 555786046 376779522 457464854 49462197 876223719 420378955 47004177 547229565 609279598 112819730 299702838 556449417 191013589 860810685 535729549 232795463 845117607 489417970 862999115 272563750 180914764 129611912 254032477 916258939 397233370 479483702 523941276 785302823 799577767 734443289 246518084 380938185 376331028 230242413 916512007 460199016 98528295 42897243 511101525 359478241 258925024 301365346 838204072 799011361 280897067 267074674 601948826 424185657 691096705 635478020 328750365 768159005 102265183 561047326 95576664 672246541 839246486 82745814 97666490 651905924 496426708 986237687 907985636 53054052 192873857 136763873 297781393 283837687 584580329 316187744 179890969 197257102 523512735 399214955 134789489 493495245 6068016 255823486 739802311 665468171 736661862 111085711 475099318 888247161 339719972 298116812 178664259 84402074 794835094 775550942 555656959 922489476 915402218 135345575 698934776 494966859 480626662 439996715 660672762 591603227 158364460 540414630 394484849 35934365 90390589 959896853 266521005 385875213 910169085 316737553 831249269 715572435 347533287 471792260 666861638 461974241 976845813 631279364 740500507 259597339 805236724 319945704 596576720 429033088 299363343 404906067 309890964 476313055 786018050 718028499 223829004 407283499 534758987 242692650 159628251 812155355 230655766 451359384 152370849 499872093 326191255 118945760 304022947 66637846 934656612 374527962 782820656 159181514 683787891 897396770 193814679 242902584 476549683 579925194 519762794 585706920 557935035 358589860 516563012 340585853 639922018 133487626 152037748 835981468 341093264 775854520 363627989 592030984 769814392 240138870 691154185 623841166 463783541 942283809 466668106 549504951 59247483 774068848 450886802 312421861 486329175 37107328 610922245 24600355 315289299 102599585 67514452 112424681 941176585 510321713 973289677 996678160 404199162 776976854 814639139 428570575 936965249 103324229 610753734 952014484 272963290 283168436 400881417 989993175 533083548 952920792 282147258 493059558 864951305 222874287 475820340 65087448 5745203 865023404 963344959 249046167 442652109 273499805 835404952 136003354 868560926 900365230 243817580 174794506 313681480 575797179 846072137 910538710 151256629 701877650 380632101 812673472 450367533 742514041 173828116 399693538 60934030 672337597 352294139 786471688 163989775 664208569 779049386 61273574 399157006 849231928 332779820 946040578 468936830 605817707 979125808 247133432 838637236 874505699 110147889 66073488 805399801 200840191 758573512 225433990 534943028 264937287 644164484 726380504 373210275 365735969 362000797 112827407 720353930 323051518 847893493 905632724 566700267 700932538 438978718 82565883 842631980 511932919 393535611 102395300 764447521 541185460 293522578 110799159 172148634 527891543 180410216 274378380 43888185 589102869 777808969 393507601 306563061 971282158 165423883 464172097 906908824 259056245 420383503 869421132 27841792 660799277 254583298 413474145 938689116 62611517 159764238 92595986 178027099 330586649 302476260 89410997 696807589 986828388 432189854 411993805 452043992 528673423 736259392 296956429 204503522 728447444 667866496 983548161 781991900 743222988 816018103 662125546 34446732 904632492 560524885 833854173 956146382 972342866 244217372 55440977 643308100 548912088 163620461 521136982 318128454 280893250 18098241 72827046 290404945 312137367 659500677 370895046 17275323 661578674 519590873 906510627 873911674 53823379 61291814 326017733 94328025 958233848 954961753 76270946 762908562 801245831 798315414 282711162 480503079 537734154 989634509 411950566 854798305 102829704 804054045 671768448 346188782 424411409 905412343 859656598 675017995 799290471 69106526 498430210 859321478 949903815 664985559 531926388 261410393 698561410 436543830 186581381 251368956 710575843 183798578 175825759 701376888 98161758 651877255 998202778 795354276 959776966 560385218 294414158 668556573 697520749 545542541 420249746 501315882 65293239 998551126 469410661 750975141 215383279 517672264 390494828 203059361 426421788 329571475 346741729 841931692 246377211 599025857 398245450 507431045 542552968 677597526 649289048 368307293 651254227 462681555 887569728 459806060 907954831 261486125 81295370 224992540 209969488 422021585 926016263 535998782 641282082 138037096 900719358 699776493 943219324 186878453 84341393 31024698 179623017 640751162 769975934 533691681 248879413 415748920 547719030 75142062 280917763 606560847 683659935 356068206 638375201 186744356 95967499 996600436 932045155 186812930 670331492 750401801 579837607 431477488 977270987 174351404 7830429 124990663 591537453 578976357 478769825 501692563 420069711 11838192 607001162 231316456 114947606 213218352 856902552 776850808 744915904 295784962 533158410 817713780 46883728 461343642 278948639 729653070 573125347 859231804 918607130 400525054 446493063 945944660 7292110 334067129 109418724 939974757 675544325 795315062 912289396 779939475 33477296 720536921 556896780 284203530 762091531 167524890 605921362 115649771 478098803 160896504 913579118 126990050 220838138 633389879 223494659 954690354 637902799 797879622 928025013 871033384 962869865 583720425 494968439 546386003 652713792 740954728 509024859 817587536 204370257 338659026 166367482 868251239 625292243 271883485 339597652 856897459 977854559 667610358 93438597 68392377 221382377 735289016 930100269 401185528 389713208 439308269 601210118 508438338 533036047 467401000 422450971 734283409 412580518 134247714 541908275 880971715 615322664 693352463 90914776 651200533 439072884 39323935 914505606 473013174 640331656 733603580 561911450 938836943 434287174 839094908 820186654 193835970 685778142 480369795 403908980 59655283 378216648 104580659 575549310 69442574 269031672 927959421 335332988 160445207 346169486 404252693 835619003 40002991 438579033 266220443 357165320 814518009 105406388 168761617 804110910 712740189 681051380 186984241 750839989 428302540 477685959 865118609 796177397 240672293 200609335 647697867 376853044 114160307 342854463 41301701 407979406 806981959 548423190 618906305 164201948 318488458 89083122 41188380 576387405 738111339 592926223 671303164 647132197 428523389 330942919 885486621 64123444 613423036 787744694 703787062 149780375 763656064 537001884 480193634 357457043 64991523 928629367 566043012 220851771 793043379 64965632 675558710 110074564 967574228 685097022 614434491 28223811 520527049 645240858 923824309 986826340 172091965 680009961 112616100 6950078 172258168 31427727 699117492 174008533 333695161 73741510 332398345 47508034 949441385 779885771 682668016 872173765 920136697 558884386 524930555 200383076 864832997 805232082 701744714 550310819 498109279 921214683 211231666 811203003 559527373 181699122 740798930 732438366 365503358 396287736 199841059 145990224 125545845 585907205 612892914 308324392 162879193 315071225 797964928 108446054 700044657 737013504 665283646 528137889 30180607 467938574 678332876 948859942 75074223 468850055 694706709 229027332 635013787 801679777 884074816 957391408 267191718 769141416 81889049 260007666 420782521 324346752 172957193 306470793 77570378 23971030 614695917 630454000 755830973 293743865 682645213 462933991 834730185 84256300 629072257 464125921 847704366 309558510 925037616 348710195 664405380 672128525 18190258 589220797 660549918 269222043 583721334 617097468 858914382 40918783 138185003 537246348 150707882 551931279 942014417 408345100 934094925 84837708 390287995 960162186 724653191 753403918 255651067 888469039 161837058 933040426 408618322 269817211 86786079 930201773 490117484 905314537 319525102 567226411 47358371 923651979 465872355 709178669 91682935 411776295 150188465 602307899 999947178 953058191 43977459 692297384 958175437 817009668 736713607 836164601 944737543 575268850 578128664 285705670 186905514 860345136 472304817 380024642 76176860 117129999 879908206 378079804 384882451 896237465 839454973 890816275 101415511 622345761 621924691 179600888 599790196 197838539 297345271 54425584 314744570 621407186 273987111 163404862 221884582 945530348 516433404 49259059 320179381 673851770 640168604 845846887 115828633 886330639 415304325 300473080 163012631 808427969 25641984 14544670 723288216 792755855 657718748 471789907 405164796 44824844 570809943 511489365 951208808 511812334 491399766 718132690 408641631 311837554 293793845 222555557 788976461 928398866 343065353 905712633 651886735 856211073 139120631 608861982 188963681 629535618 21126276 945547172 303367621 473558962 586960441 820099462 354166360 964948552 423833185 43151108 957049278 811647269 208223819 58427270 261770602 529039219 481066175 355901332 810044595 132853095 214404274 714923290 749383949 643648707 643092270 253770869 655542481 863730475 218595648 303808837 272707201 496122368 464642714 191969609 883723728 804578604 134818699 30261043 43522674 417526702 227284235 127864291 932895023 885305980 54895919 331834022 703205390 691871163 556946455 598422743 770109190 460866930 174864002 589064037 218353697 167243781 898147945 323052683 838172805 790005556 109988930 528831482 774705700 636871385 704779996 578865363 785900288 202075485 218892272 637416596 744648297 84905664 866795992 761300390 137355035 792164117 107176091 235257472 322603818 972957491 646118384 242212377 354548432 785059636 590981782 73763617 162180621 138965783 154325926 635616434 444168737 192530136 442789636 644196474 63397844 41478587 736713951 789345879 28953755 138249624 170338431 429182621 18562878 25942884 342424928 781647522 45287677 148929753 840884927 143050705 782120739 176266596 274796590 402549400 952357308 832260096 414067380 55717732 209239353 18058344 659554337 182434619 598381606 390446145 735936815 891777981 839904370 421061672 617972600 1050544 482452686 803904197 633242036 675405876 137738180 910703670 215095279 878608750 550112248 32898875 822579597 48789753 263928841 251989236 573536349 536431359 794027503 242978535 146361391 534799469 640898229 371515762 776522611 537965561 150186197 138693435 998522453 655987413 648924168 476367058 394833117 572941943 987067320 29029572 626101051 819483397 699824031 920054799 303460458 340320581 288731793 380301289 592816082 412727450 760977200 127616678 125410885 184563288 331034219 971290612 376255860 381289398 796004706 340066990 516242067 615884885 374540011 958808444 979187276 932277926 748306724 67943867 295109706 445756157 798931026 706433860 722601179 834455265 123502594 843756987 15521665 31045593 144484177 792958040 537223100 295472645 956128561 448232810 259712252 945980077 904038677 856302422 621736835 812186362 493446282 458171782 726709787 545054905 909258801 819073880 608707435 939082231 918538404 525654818 702876247 290510396 539042240 862194621 79467869 666842853 284546867 569384244 580577761 216717820 204140795 457910419 300496442 491416213 887205776 771312438 918294592 766870354 386304414 974946364 46689320 282398050 947309772 801626033 312605104 360922024 312118657 820510177 938667756 175510483 164385823 662808018 507254005 250223270 988001890 39944240 646127961 535912114 25263232 184375351 911208862 1378812 253402634 717997892 260468092 623502156 754131888 503396231 29783257 415032108 681277711 517755961 196235009 951290207 20894560 44304784 479384783 689817912 863875571 593748940 124250329 193300816 852417883 997880687 817197381 994973248 551706384 187075472 821551675 463190841 108265478 949694105 295219823 234322982 292362272 989060099 304575212 397678952 296469731 947244217 346681358 563155965 835399136 639000953 132055361 869552066 854000392 913867693 292280782 542883907 123394208 530655526 139212209 771817873 48743484 105090315 937571890 625109684 332200129 530929438 577991864 459557426 913359623 273804376 333227318 380492992 835944024 16224647 739999004 977206912 345153939 51101882 483422501 515138805 671628243 847550876 35686047 951524909 952882641 794196155 297855321 147053325 343801586 223686085 358829099 41733398 437372895 274267160 447007702 887252389 944068895 900426436 246188817 517526910 677726912 4550472 441132682 945757961 252400936 799926759 231272116 95682851 956245899 12731570 815313669 497496760 944768529 194976629 825577527 809763451 615117443 771858031 465637732 303266778 976824250 901375345 396652077 908941780 899678740 546472754 121529119 186270907 879480122 503025381 574164209 162399679 973878596 345320004 941611600 477995503 810825973 573478711 150450411 667268344 903156390 749337853 291307878 586720025 753071904 348382546 127351228 548768543 435208627 191510569 349152416 948031206 780532017 69731445 274405295 103509619 652589951 794628228 500232863 995851110 94465882 696520579 323461031 259217878 78364867 30221754 350044824 758968474 923873028 669580191 105689476 529439845 856542764 526830276 355059670 218657294 892455514 640832092 999386848 441556519 154212255 282441089 809920767 849355801 165897227 348068928 991660037 507329251 99049992 185839351 428288071 754422374 405474742 874646158 635082412 297239946 507005742 836980042 849609199 846371268 378502971 745039567 396176935 438808444 89186973 739299031 735497569 158545001 898734771 141251806 181707891 754663306 661345767 825239539 106561470 760804223 888425655 884285817 643287717 503260226 749595888 302993493 599386806 668074431 579240400 840472778 115644283 737003944 789807720 788020740 740097211 205774212 563162656 253620406 100690874 67972474 644211330 971266143 335627281 407745346 862513155 977005003 279147731 307520349 756636001 282801760 618658812 382698673 963859321 331724355 387715540 842210439 638337412 870999347 833461251 43115383 378332722 799042439 838949265 694670504 59863067 803100711 103564903 722245057 476559114 367818052 462919140 739165379 103156905 626965302 422225306 713154858 29003792 30018074 925395085 639895837 949526336 268596675 987181274 233550763 643529583 594080185 460920628 784714315 854818634 796896399 32776714 683489653 263832885 424929150 788021457 209075493 880580396 350372001 486200469 570319878 594022238 813864861 515966682 675072085 29568917 438896269 413206087 79201825 646176295 590276028 642879559 513367574 749418318 884963007 53470873 295735984 944604624 288294552 230984913 806690140 463730429 688712508 597128450 696372727 816614944 497944667 102788005 92492706 31286896 425060716 663261006 389264590 164728223 19819571 212827588 223950175 883077124 844454936 859781084 397690015 433157109 153575669 211560515 124788286 393386981 870934885 788869781 105969906 475391717 578415147 579973257 473640210 9282221 7651456 216975971 517059485 998496326 771488900 436124069 928226911 113081957 419951728 904253782 173639572 341633719 254228458 693280743 928993171 69664917 372404178 208861834 928800036 124574965 407622904 817932835 988078828 544763425 484151317 607961520 201858941 19116427 39642679 534497031 874023896 315635500 689716381 715760351 225667885 103242199 659081151 74291412 104622863 504758928 108592582 186809360 91925693 777440276 765501589 556452515 444778591 960617732 36848408 234487052 988924805 134095896 797206721 723662985 997089620 144324831 308039030 59643862 596637757 807720635 374581954 904338918 610684026 858224805 96820329 955310068 978426837 809433339 42790751 919659696 786620995 193933655 601318280 367688822 790534465 245896711 231334321 102544768 465077446 632535618 888678291 962413586 226814427 534069643 664642572 128525838 224209175 287207381 89331622 306068735 688609028 97803594 536093030 265562354 840718024 934143150 192225316 199410651 580580612 357520750 579101968 86397635 578826296 936161204 513079461 383555246 601710330 554196718 220384137 537161100 888722288 346952043 599952670 381591338 875167208 800926223 870090162 290095556 226748819 914733783 740036489 305279289 594566975 326905049 126509169 894125647 958146899 371867649 437287162 736909393 383012529 143869637 143999989 106259521 628984982 374527189 313347780 303886845 823201580 439876276 711263085 35611139 645428834 747667761 402364800 598295012 130666653 958204131 891172968 451956713 568466436 563877565 578070517 322773683 472751144 132135073 221935686 589434104 156971683 685485884 501801122 268903244 530090472 354974470 839102573 781869840 606413777 294318392 3387660 739439355 624154435 752499393 116020780 653739657 32144163 401998582 249711670 744563920 258426408 64763836 972028660 638286940 21955067 224716438 383969703 104467394 343848820 796043341 630095264 29288812 878692238 79651475 507656959 631175863 129732977 707655711 409606640 327869683 450237488 539950305 227481397 756805016 34375763 553288071 769139204 13468266 453004598 596276228 805913165 720415045 175313233 987022643 509683756 983003868 496135620 243237969 529183938 147968036 116745818 923602863 74255976 920056228 746717484 42973509 363243758 204532630 910146103 881074462 377787607 650407965 146316729 661905084 781240101 717996802 906292894 726317573 259658500 675523701 972875314 374542695 549331042 125371530 34314553 395181756 510452458 257052125 586423108 442298463 798900680 182403431 128901591 679296233 83908633 576074198 404589244 28148388 423009470 451888933 389987582 521176885 454618785 611897799 940618739 899947079 45836124 753393662 59527606 762085421 251773985 306280104 250897633 184820816 16892462 100004273 859234705 423727997 366459407 679908279 383121583 191161798 273929402 578560809 117294394 804196847 589363753 502441858 49072234 184549488 29607326 180870586 280878206 213959195 511634563 69175141 536790388 119882294 131687862 231076829 275494406 339928493 768466793 952684340 566362011 595995095 492547777 819366585 564902979 398977295 112709926 353392483 848860228 72511745 548994335 268872960 121667207 415669821 119624349 360405538 488070554 136629856 16037469 598780696 796180323 339946385 297683076 248383384 385241602 54776473 85098657 569777604 864209267 424313220 904640273 163701576 844783908 622229303 964830271 712219083 781731542 366472753 52529225 713691579 227231477 431765783 563503486 568731838 539138269 268248142 531199710 386933977 685578692 401008044 142315632 368772655 594106772 353723431 813028055 151661908 399197013 828386249 116488744 113286162 521451210 292932604 309751304 527784532 918267034 142251553 322045982 5349544 350807382 364730064 910760357 774861199 793888285 629544819 936731714 212283767 245503742 715864514 397992844 427700950 620956051 886183098 152566828 703991560 615016900 12349662 350092949 251224440 700849579 929425276 164994731 286528877 456626724 509979434 289424130 571812107 361560769 996537525 125130233 138762452 315323207 127939894 971658326 416769462 443479031 332179567 882538648 392009494 47586746 644471515 512432036 897738119 144864823 476482243 103937166 317963113 990829803 276813822 824276342 912195484 845734410 162899002 177611797 584944671 680996125 997075464 920650500 404178972 61354406 650691406 993344164 470624617 720981207 588133684 54772352 973320433 590090759 127313914 415988192 503454045 319985681 987628341 58079827 434293665 228836051 511206734 156885389 757590942 482103169 590925748 105966687 323260899 949258070 546268317 299045925 783769509 228778258 815500665 211141525 377913670 861376940 261716758 543597934 817077693 376702659 616781529 133561449 463969276 146333274 204232269 981464388 156305013 91471456 725132856 693974490 652916828 251140838 220988072 250479842 385628592 994205344 646521630 871043025 566318983 223967144 735013413 753426261 227364127 141073018 205437787 384145795 933967735 17186154 225921646 468379709 761462471 216734386 270497734 442342734 198190380 78568497 967645073 146919098 416689787 394040943 89131355 198060809 632486959 461273315 268397247 290834138 236215358 110159933 506443339 675648528 710790242 721833417 525245127 258132348 325755959 249413485 751688811 996048789 680602092 322258912 410239485 209811670 306378605 613577273 252557876 574255037 653685468 546114560 397768062 630594136 54257286 478003899 103625938 925944592 402598231 190624500 850218355 806351148 678185828 238128159 146823993 498425344 972451825 516288414 724474011 864025811 635199962 221309492 562642455 335784491 422574572 288029862 592028992 16901306 99279197 548161089 729605891 5664767 535381648 516136995 109920327 510483646 213615379 672719411 914251321 679795846 398473635 673803602 484327851 846287690 341064558 490992016 257227236 672103563 546500141 387134018 320764176 317782370 747246064 732090835 170659171 699035098 992887171 465380310 756139203 182716984 563435870 340101098 201844363 37027074 564605212 627282634 74979012 276279713 39016410 36345456 222564502 584602721 145799338 13914286 562758520 289689697 722022108 123486029 427678960 990924710 200149250 622628154 788347356 308066347 798947939 726014250 702540929 624326211 51839957 836818449 454708450 65492553 204427330 237578887 49478419 459943770 11306424 539498293 666483090 576094083 44866488 816000467 525834750 615786450 453241461 881751836 467977109 883900963 912678799 188255759 589753574 578100739 966987965 953261126 323258575 568640934 489850546 276088242 977209420 146183260 816054424 749299461 258904246 466107965 758779448 19520643 223910445 403047213 17113697 233588616 140282350 833918986 875716654 57259776 370078697 642041618 969821039 680457703 230122996 23493151 34315821 583617972 998467835 568126533 454396793 209465067 729818997 416206548 304244223 346094791 494883568 59166574 348178445 193068170 163381210 920541731 407274856 82758543 934927770 118164493 737269484 148120953 41367698 897422998 503442672 534461187 534076926 504666578 367896635 492457602 519528275 906932631 127903399 148472921 308913073 313115093 816903573 350621717 313548087 472824243 247155539 535534497 294038464 678337225 835006169 644309512 946322993 862925886 196538635 946622613 376910183 555178094 454056735 269227952 400753998 987941644 456409397 69292583 347460379 537567040 825332045 564511410 406534860 49888226 741945718 778748174 526203322 64144608 900133795 247613452 507120247 902515686 83011509 618159625 314411024 603789818 900923991 857865094 523333402 600230143 694329892 231035552 974153005 163098989 875961617 192429068 157914128 134975453 766776715 11707680 352636650 835594832 494179951 370891276 624651738 412207345 979864156 208200349 876982767 5793671 556406946 670376752 159046974 674321694 775979860 380049412 635808259 631161381 228572611 301694575 38686412 838068518 711093055 590387902 774441109 177850658 568870684 664096764 732610724 222595004 592666502 504694799 570022454 455794008 855428882 728531738 938095587 498589866 630632109 24872983 307736557 831419220 129810897 926800380 891036433 690668982 71236652 291189302 276701559 132350120 137511849 171934526 731231848 392105731 869994977 791330148 210969311 657880015 5050071 728074014 95283774 467631056 826685065 693025576 618133565 698088600 234977074 391962277 429330877 763954082 704140075 28097431 735529660 363074377 649871866 2620967 14979527 861139092 578888285 865490831 165094952 988764822 885450621 20978362 153954728 189209636 334860862 78152952 638387601 558708327 727056352 96923169 875377603 112499198 157384928 111215139 231272778 2318048 76952682 793804208 645198283 832381024 198517299 823273911 890479162 278363190 955662113 859707307 893739018 193929123 240168165 580538696 61047988 911614351 113324304 523588594 73246099 337467213 944052798 520696495 580034004 994431741 502671996 170993539 803070633 601965884 359147055 861908357 645105789 381456148 520103505 81342093 395078825 804619221 66684466 900430216 180025910 748026760 913701664 716434704 373046270 365262661 358336754 751085550 915425404 539312922 798603378 949680689 663115209 957896116 492298629 374950276 964005095 261831638 709273151 462221422 619654099 831344930 745679691 415694896 547830813 893557951 643611609 40984417 264640344 402638968 968196035 359514800 964848897 62800576 819452280 486094894 467612117 365709546 798105480 977709911 726270697 185130050 174362068 985076507 789878492 394994829 726227149 175621313 682675084 874336537 78367966 417076035 186431100 187757829 411795989 799906636 911960358 472704238 446241989 497680613 866038778 573931809 637057978 881168992 548182852 245883459 71781329 210621025 882986082 163225067 99574522 265315160 518211018 628999443 499668995 114859921 919050576 469014241 792603534 713452590 67423516 777410697 992532422 144399661 691886491 373646278 848542152 538656373 820689907 937850429 682536295 879056166 365059072 90257584 192068939 960486520 778993571 77727185 460692148 293524396 342089090 406462453 925024891 516172850 696577983 997943891 851703820 345576398 638476152 826838135 914776550 122815773 857973155 877987557 690051541 995652427 929644309 64506849 871898137 251678601 613277014 354223399 627610929 811884527 516258215 246138864 603442369 656156090 986109478 42175445 468574243 968562737 976844465 925795020 652123438 534257574 441024656 62697437 423596108 101529265 986027620 92642313 1576292 754646949 290968192 458727373 442987402 924077521 784756252 416812937 60991469 873822070 446007461 119205816 157986161 39724718 494994191 604905085 180116354 239279512 220235324 830609286 210406676 280077626 82141836 227519037 663246786 803471134 92189434 890966141 714476705 265150532 650273377 187157577 907017055 217701471 818560394 792458860 944156074 626128753 399828644 397128368 617087212 486833142 501229868 913930772 784614231 374882132 894976846 390810326 318396668 899346797 3842484 14052657 138752711 664360312 316689814 992715011 761415518 751506812 740462410 48968220 792442698 955738073 634029397 511128169 449276096 116246682 271260781 32166167 236495765 684259026 113507086 337812370 7168216 291572507 182295308 408825055 225112783 353568699 207627535 574917474 550111294 599666801 404764938 244729276 124578744 656718751 193858577 77994779 151045408 609457981 195681143 125876852 196052771 553986434 39245724 388615034 109292629 572305640 594876180 661031868 984845084 893336258 826458920 863948037 990308889 386099262 206932110 996057798 583262230 144318703 333675814 289038804 287780375 183680747 980626937 824176641 407842988 598738992 587188582 999086516 61547515 450833739 45411964 618439828 429968262 934445064 202712514 382167502 985489448 900749980 234954561 86460427 622778509 943638986 704221337 131852052 861309655 484496507 352473747 695815372 432785500 316785183 375922545 359255608 555521921 123223616 594055919 248150514 710262091 955042144 338142369 284239876 13161015 361615190 203347020 958100788 858963087 438447821 19981799 35436746 643565782 246839128 38199209 196464069 805127678 187452535 182220034 75563768 341439056 414245517 205723953 360681335 238172118 812186215 943103765 677531124 934089050 73680567 675844478 865157225 677806608 154809565 94872717 123251504 765901528 176286097 503858261 380269580 405637718 35749885 871870632 644876394 739487890 706183340 231751666 92496044 326378356 867992447 53501768 580099106 547520990 850147021 152537606 487721614 612353531 734852640 581655378 551001552 447677776 155448241 499121954 304983310 322827002 381926607 247432390 295206717 375454775 620623344 506966645 214595362 981667067 83564430 679989653 632402442 210929671 986839250 138148673 559965299 695891157 968894885 113743885 566396588 555161349 520303195 413388209 792130034 278599152 629068223 358890686 169489708 62568648 804467127 435113822 904716329 890525047 561551521 873144477 243716191 977626190 410049852 610576310 847307287 738214326 995474629 424677097 26687436 523491547 275393554 939702386 406618019 672503300 730977105 560724848 92304416 596446319 700929679 583658458 824473442 81980231 376363789 380468897 609041928 58496975 701496367 177202149 261345571 253341609 718621870 6698206 308966501 540304964 688404564 578210807 319701627 966068004 408272659 320686809 340541087 531250170 552910812 441906875 341143978 289850072 298116642 193109883 307828463 224278732 573732292 373360429 384569289 982056716 264533944 299022367 406896262 277868048 580737136 986290178 163752468 897442512 719208616 775114067 472942449 533110573 30113790 778678942 415770712 786471833 314313252 238979457 345282616 237679230 503055510 572294433 176593690 82731335 481274737 824177027 224476087 331203449 919020529 67936632 112689534 607427069 275954430 168928194 889854579 777692541 583323457 543320390 936124314 343733747 433325941 965608211 517536843 26814311 723088453 469522252 756655341 168234709 463827473 963601411 816977456 443087178 28451133 747968548 592066118 513324692 934231371 911362077 36221192 872446347 446636638 979869904 347629289 5756153 385038590 755138146 760176074 802109761 12460892 251912356 811575004 777446582 469662349 361647542 934278935 806611307 411931336 844816685 385782663 820167499 295365876 309094495 529343325 766280219 265107604 495997394 238518016 185498727 609577386 91726637 279048754 280028105 715634228 253645954 9824373 922969121 670430811 706523794 257827995 929123459 432575089 414845935 669573020 614199687 755870020 449792214 867108899 65947108 615051681 397504032 510964761 369228433 597698760 847936731 766859942 258314845 196302253 780999509 918467374 191599134 132017239 174281618 301598468 423783878 379515428 388171933 57583971 143571676 416434469 71663085 366231772 593932199 479768045 537278513 447152299 473170244 933324282 820648218 933490334 88241504 376424948 371985145 990491981 82239011 114332263 404476024 169464378 210895693 366538055 165414437 523472313 557915880 267974870 426493288 253597885 440802913 857773040 71524741 307341006 481553242 764567259 380196431 422568031 54998909 658172685 925253205 449816567 931867756 248798782 872379253 792058017 894491252 12308904 778175495 530567070 256220448 479796099 239797083 14859201 554024704 188257364 382321474 963677528 832689749 417973954 174126627 365833837 723939340 157158469 224641109 758909040 293275022 833570032 747715427 724754596 330081328 721024627 746980779 460656866 699097950 471229453 768813518 743872436 493282197 122568563 889113760 218398757 603629221 291807045 335176389 101401272 488675923 780257433 692133963 955726263 929044277 972788189 372374774 594353083 748519249 91494869 358537381 80313288 206096661 995668416 816742077 266471614 804903953 786809139 984195906 504045316 820545629 576263992 642187371 80327609 349073038 320963468 878983406 236247310 586999180 709072850 610415573 316202949 487928623 968531431 910470993 491829450 254457000 116908394 646631642 904882438 73114172 132487504 393980506 227387224 545173713 235599275 315900891 621636556 940197400 430933598 532084000 873914375 848611894 577179408 893876307 654752945 572680512 303832135 466164260 720692853 725507676 955392469 433332540 347032687 153269724 127827559 960584615 359831658 632762617 295727994 444022388 891670977 963870306 296435964 768709128 112545437 770427520 574623627 573694433 502429331 994568300 320333785 399398980 372988313 329296943 878399963 835465348 482800847 295256023 484947081 243179858 923362626 345996395 860327494 269069394 740663745 608020863 807722554 680646477 595490276 816276562 936071021 680344278 677506823 336134700 653483984 640122542 767523587 529037077 645011240 674655457 823399144 586657326 708589166 555417242 146859863 106012694 888531507 449095519 792292357 742186365 831371476 268140439 750085289 180044452 973014346 822322758 381936775 867689676 695687767 274009173 178897720 746186184 748012964 437102525 359346616 69203168 816560821 409785235 763583708 95475075 580038140 66668489 669240961 542399743 148135787 397240013 605669128 469123409 141410978 65323401 547924413 332280536 215716394 345294185 5374855 20733277 524612995 218842914 345656179 23452354 629306911 618982479 169005610 614298539 129769472 260761705 758702596 330271306 542665582 148257515 935260875 598705406 888447008 905750134 189684788 815288017 527614418 976751793 495243324 150130679 775777943 811544779 53390369 439081638 584571768 414050187 83807743 813658452 293243589 622680131 246252627 283787779 141803872 159840653 22584398 67825470 598400543 784795073 727060836 66706382 214226974 787098834 226469776 643967934 822272486 864456187 44652061 187298217 470604892 234835168 741665840 19194234 64802791 167908368 288372872 241518325 972282320 992979535 227650666 479965109 734478358 115583467 876328922 892668617 585240736 513755861 513999319 425687608 27336694 176499161 510908041 758391380 50624980 75441993 577061530 67498451 612548586 370901983 126733510 422905599 353466172 561941427 802339377 500534741 629754486 514415226 165248046 266840503 681372457 327805854 782006969 60891545 747867746 703345968 784392641 127032621 813843464 508045618 711236099 55221221 132148690 656451251 330335056 13009188 475775809 665658230 151177307 597095110 420388328 816517818 75370780 347941950 858985730 623764613 147842108 474865843 923112248 126106843 7516815 777100913 73269881 409062908 711983429 598182817 107766459 318288686 393174884 341110650 467185352 837488629 848589024 402901828 416886600 664835814 270059631 448631819 863293176 473874963 561568318 167480517 16595659 986541103 72718897 626874060 757675716 112584162 304837521 559119760 555792332 421208960 315093009 719215614 265608123 513807487 382364446 709821863 606605345 836899312 116446923 915169601 834379412 434585227 476473552 97953075 24068120 962118607 542666020 728834053 128331427 443243923 366095353 6391964 541153840 984529199 934512059 301069941 239744101 191573501 456772600 527750330 47207220 142921852 601473243 120182533 853358625 543927223 378700989 660122589 152600528 30989427 797638712 221401787 361361497 824022152 66072649 878849818 826622664 233566610 692619399 267324656 4103353 966248489 321222565 219455686 401454516 895173546 515830667 183919904 47781738 841223243 596728752 616966150 146704715 96202826 394595268 143700845 655030364 365446176 641730345 127586210 466661549 996448876 134724575 97376040 993623808 846745038 302696037 424670563 814564519 611463343 661502944 864180236 683997200 305449915 37879537 678275073 904725667 351543075 540538848 744615828 638474532 25669089 217587295 919648513 303214258 23727573 630399832 576696621 968607454 439292626 254197364 91264045 726168399 480412142 326058246 324297384 439254935 589543853 576863470 751046122 269870463 919078952 703544963 330444857 578124909 966934879 928757142 45158030 684210323 482645664 206593508 357518135 734644400 199120089 772933377 34756285 204725366 910626221 586012916 975084484 860111500 674075078 424494560 677351211 796024595 761409033 783975255 500555290 991428239 203797211 914770843 13581438 762136818 470490924 56328236 673765529 935005518 925887347 822712538 571831306 794350939 749517652 179352878 407591523 211621601 786980010 469172284 971069533 95537561 395830275 96481360 613408188 222860330 312897336 423810121 375134387 666181551 686064526 203285488 199807198 564422007 702155585 126338629 417309174 209969704 997271847 739980571 491633536 511251370 43927396 790798822 138513525 974289359 20733831 595017681 293488717 577640897 819215664 805335585 236238418 922185966 739805634 277384880 674290691 589842139 787122065 945243819 86920741 691004702 989399775 29165032 643633664 373619965 868010398 336589417 444639038 931196236 511485620 14856153 47721026 937167364 46154810 607457682 370606816 470560872 588711061 12115406 876277538 434277955 698889887 498283601 364478954 567245663 68488418 272080544 396036732 414247396 617393782 469270074 144040424 83848288 679502328 291699611 143682455 399840251 690674930 733154922 507129525 339522803 44207780 901173145 816255878 353489327 804344300 180680191 919313763 498509857 561208210 137314903 273986252 878201033 514089900 977246012 944621892 888638096 114897389 527478535 769870150 534603482 150380270 221387767 875790423 814604844 451152841 584847710 14169545 204069259 825894304 976775669 38437574 561415165 863935531 71220170 397774286 355757968 428871482 99605646 505004448 426750993 688960833 705013788 1659320 350851557 746234781 329617123 403805025 128569644 859685259 721489176 978900370 31045200 477877285 321937600 867183948 837950625 536994584 668132666 900407675 623466993 842094500 893552629 565888595 837972229 281262208 516325450 155913219 575695370 127641785 420489365 963455011 301538936 895014479 889426815 746484655 835914270 990385701 474374389 893085107 609231764 783307482 30769970 740533794 234789261 236958396 907003113 663802679 852467979 603154610 678406288 9537918 764524670 690159983 838866402 28433587 633990956 891612393 685537246 358766306 430793779 322275994 798468040 810785410 468248168 985673563 139344909 380040858 699173690 923024568 538234443 163428480 639250461 400092819 83498365 599606986 963354019 716263328 464141162 732964455 140961077 49242938 675633794 184359903 241211970 738013379 732872335 530262642 732961092 388894533 189336893 434945361 403445409 933277921 727472147 278669667 80242094 415767953 646288134 136550231 812930168 411319115 513929429 72856899 583135480 379403186 936025602 993829631 855393618 175585796 39159520 304471802 46606015 519290028 759595542 687486862 562238804 85427966 28608870 929859152 11191106 407501550 782272890 962493882 634178468 907570080 356628921 644468783 256392986 557814385 490684657 384500447 595370772 160381424 244841590 52287166 865770435 147775291 449997685 342877986 681189269 862858443 730273817 650790140 61909006 910783423 261894048 701272796 50803908 803622639 530039857 141073932 928378454 805841943 350179194 45138293 834055228 804833422 122945756 55683130 646027225 307453195 306406855 512828253 4343238 76337103 71561130 864485457 151555483 817049646 777646601 365165417 816633923 794368994 778219069 404168282 148289107 203945122 825298779 60051390 102861074 626513239 370931819 976907277 622822906 328035965 654444039 922564907 893387722 332171154 908648747 255246224 552088457 23642132 350840413 502886809 701811942 830040051 632499275 204995936 384101142 516758433 331770069 825540604 535513746 52408601 691180643 221067611 948274943 267649049 836169517 785446729 200005404 609130580 693078881 961139178 207745879 772831498 248069217 401452839 582307996 925569936 720368442 483357476 498861138 563152350 86518548 150535758 485146653 868286419 769504103 149312949 94559920 210440568 255378626 139870194 849574455 406836468 300559548 310774416 368823147 108385777 377698517 970423064 199006221 687201469 468304838 988100280 400320606 217007144 890395544 615984810 156349320 740107504 781305031 305771953 746975435 946865117 460242482 626355493 906659440 139286696 299373973 775080813 431547642 455732882 233712918 976135501 937044903 544678213 666158901 91493778 476786111 521391930 488760328 585142761 302906348 402691624 611086474 459463175 492150478 795381821 780011446 124851922 546564230 514511177 718738019 822780627 886052338 537313330 889561755 31717859 577696989 806902093 739663209 258170355 787492634 30589350 889809891 161096726 725352788 4673585 717653025 400914560 557543674 157850900 952464557 534617065 226950656 278617187 819937663 734440963 54007784 758919098 48228703 801475403 855033993 775906483 422573214 935622952 703355752 657287236 378956872 21663863 925475617 421537382 192777189 375300636 337319221 891816497 455907376 703638784 224619059 442650128 34596354 130792522 522931956 190177477 849917663 104897636 546807305 650490551 858894307 778250213 51724298 901972600 711256446 424974666 26598813 57534547 778211623 180229584 578439182 679341146 615472044 400314791 690965541 627347849 737681344 731671945 929453218 97483707 679596515 705488760 753465195 546914327 567934137 661876722 423346838 612969797 346454941 409054070 848312850 362451504 610536654 943746094 359082817 477528021 409423311 230113593 508801359 38799381 991540822 676004676 304298297 311983625 791097001 649884428 650410875 732863088 868041681 99161754 325377805 783562018 721442383 330244914 250287250 774610522 646972722 88788422 620027219 624320156 363888654 447501230 630476006 432419081 369072166 665962106 908752265 968305206 617447285 511633443 894607337 772946451 786755816 552819948 31874693 976700965 213849279 543447034 581902667 740700927 379358651 364384015 303592897 531997892 85195759 751252626 164178125 98423573 666288941 456440136 311295325 291093662 254121078 996506857 516047849 991213940 198738854 509278160 731967383 662649251 797932838 592943373 880515293 168122402 416939887 576051409 465452387 822202913 620564977 464541967 787175232 991238361 979700980 856134329 729361553 698947214 17773181 754300057 832927999 99748031 644198197 566745291 590836683 531934510 786197035 99393141 816207530 924665984 786209828 802103262 160961170 552725012 160191174 27189545 601731917 859062640 434853921 941974818 136584575 131482478 642699373 440921704 291382732 744928290 756638103 505469665 212678592 715427510 464959670 312281328 750063375 378238719 563943501 609694602 599948319 777610790 439030818 426086377 487755867 133198873 692786225 322966016 397247634 476721424 261302684 737376633 612486280 323325671 913606000 907586692 180948077 631590018 976795260 77758477 439377441 597387052 593461135 78636522 269034243 252132644 60011516 757685130 618473524 962090779 853854462 952184906 825410111 395715396 72172835 828768788 511472994 341348348 764133355 359762966 673658783 780859673 272967877 172072221 666411256 690486734 6452864 290694572 918537420 425534070 834335431 778874776 632642506 608521288 588965622 645704002 275214039 150651423 644472560 148583972 383727479 429448410 592014220 215065311 242078720 328941734 301785748 26571151 584083695 187225093 839535355 389303711 630717370 838663380 223116170 164486318 49882055 101826072 537553646 78296184 919624965 552670439 81550497 96453184 388724424 117960219 694321752 940746305 51773398 919759214 401023981 293129994 789995223 292172643 777135789 400988383 12253201 97322113 717047991 889212594 986807177 10733684 773500898 906591558 521574943 338156246 514439024 325820985 324076989 837498984 538129702 921807471 774070074 107005253 242847667 909587908 72198116 979791814 591767916 629046729 550683748 111471131 467662926 299140441 79575064 410709144 461866846 172013725 404142148 733694125 434775733 727564199 497002963 119244185 971480184 343014957 85590074 762510532 617794181 476686230 48671786 94218590 780897485 758506782 449191418 749548365 506550056 261606270 809780674 917403681 976260853 802214266 314833841 599877068 997425438 895025811 89145529 176007856 263611519 430124871 116552833 660400423 408480205 484842248 666434716 164577966 106058974 829208085 356726665 837382588 659273778 711704071 273051920 991383758 330816187 158411531 378381875 523681029 887113968 415227284 281820512 47771909 34925279 255194161 212482745 410471700 501979976 109797737 744523919 152762145 896393474 163192402 915912204 655082715 400659808 765788744 526232541 117697068 187180763 332009688 585051206 51432218 277036761 967995844 605704372 980907766 83987477 347986247 377868342 819256664 318979831 660477699 858919696 505223010 303495893 234457155 896662855 91730561 826238755 259271809 668826353 902614858 513125307 761977888 929068621 693526340 725867361 838156150 334380104 130791404 761535180 334981908 501842003 412339462 290104679 80811408 300058562 542697689 66565474 404337101 503948303 620168972 612013637 589020612 737040455 660892367 573741474 613522349 451765019 693377981 879874097 16526445 494158862 639980502 801030342 374600608 449042545 513298575 153952671 784013674 425039770 653814091 999582703 297328318 488617668 313177332 540716342 9006273 204235891 160183007 870202538 459821705 975919210 223737256 130400150 649053874 793232876 547093302 329465312 746353334 567986614 360986998 565888714 820241308 259191654 219644842 962496684 790384866 241022597 105891195 536090191 820739334 425385271 765826834 113629921 581461253 272015011 465996519 441532073 129860156 881323521 161839183 387790979 759334308 504496521 207486291 635590563 681336275 694324262 868974873 535106439 86421617 33727349 746733467 945149683 459780573 268308577 646423011 3968618 880723844 23046319 340780379 952584085 6314384 412688590 712966712 327650017 928436625 424630984 238723710 423362559 143142817 432012125 156784109 455087075 639011170 888261063 975829288 639304476 723097776 861386617 714424675 161203739 385944017 123078479 52705345 179971961 439319918 551196359 177365358 391738097 352330665 178304385 252986328 920797820 750384249 904939398 833296108 253032751 693056168 258040551 170259186 6601444 902877475 753670288 610552272 309285369 237571680 33457695 589551783 28200983 903885343 243122458 413240114 794652954 685979702 824064097 106680695 163362641 301399310 168285124 1497814 156169456 165445169 372165429 589429897 121209510 602299665 674211824 222125741 745880602 652021913 963406570 57950693 762512437 836718140 333993305 17713395 10091963 583293133 308049608 70773324 727872748 349671545 436982500 865357349 239770792 839138670 645293854 985307888 234355838 993370236 361074546 67197688 207448761 249166214 800651927 876484618 214724126 121163989 627903759 642879888 834371503 637337422 762153934 195856112 186410668 705968626 620409126 928591571 130704982 515859939 291675586 928938130 947030907 951603433 331468890 353581150 118979130 551774964 134912501 375648271 866055572 227572350 190548290 907990499 668064349 302573449 196084071 991577176 166562820 34242918 818734131 268499659 186646339 534141380 156989295 377430870 684986254 592891785 936127230 18492298 834729697 147667772 130894993 712971813 403241467 717373727 247257861 501518388 138786364 207860467 891848916 787748975 166204553 118867793 708823863 651219948 209376336 258325091 189046866 544915710 743445171 462352886 24769783 414871345 58081721 940917046 920616257 166713642 295422447 562099259 496747336 821929643 507529317 987856665 303365978 52800870 348803542 436037238 740414408 937986421 211885199 227823352 896847979 18713752 529131348 774687110 391108647 289696600 396535088 952037912 322708338 687817868 549436188 798644610 521620232 124092531 443533823 631511133 465537846 5521173 36949580 347945279 649073859 860500862 116511184 221006098 896993587 903686099 416597364 901065577 222582093 222002999 919709614 288350857 112955897 452519312 383703924 679545670 463026180 885420945 375683098 42597825 861387628 697258584 72590477 354538296 474653686 975213321 419704601 240404138 308549142 211634937 130710884 932723061 890265163 336742829 64393420 818808390 252213341 123223476 948377579 267787714 693064661 909851243 774027753 592602225 61820873 70407629 360649067 486847120 997624203 106319721 367365430 438580093 71253857 496078194 682128542 15981720 851716043 811257783 566164632 958351940 514830217 998779247 388308694 4010637 379189079 176053318 904110704 513832726 738259145 634185280 989389387 126339904 197955917 55043556 294225266 500165596 600859314 484728155 546125322 782340087 147158532 449160530 519818548 828735036 543868138 232799737 110819168 548727535 164433134 379596021 387361655 520466436 512923431 896737228 206343198 691017602 924023559 667436339 568464671 518244813 570441747 594170008 541590431 713693846 305568233 585450385 679425898 126462042 129716526 392403604 857872604 120427874 851647637 520662488 337661085 702124187 351670755 398431232 262867144 862744630 823916522 418374067 959282754 401920227 87961855 619729137 231111520 218692834 975236119 980352007 908327893 236001414 941567871 421229871 319321592 725438978 55101413 732640400 241084763 748888362 820536969 924848534 518017764 7584062 196231720 841248120 460421522 908516240 376678491 66908049 572846512 600610908 316870151 18176616 285865382 352897048 453310434 894472155 746922825 57842021 584410749 332749370 169394006 766876848 96334921 555012732 579939477 772101794 834296168 53529751 702309007 28081757 950506365 16926871 182564404 832624281 512618103 352318996 506953982 320177456 564443024 863264733 231831142 692925045 737037921 135563183 600116561 826901516 318690472 287039615 817627986 911512481 822814558 801933775 580007868 57383243 803085017 325429004 237029979 101242651 73872385 771589395 741820725 156847646 220643833 366163012 475865341 534516325 730838937 732920882 63161425 993627758 469926122 626296357 825358016 783972146 315722881 110111835 208245819 486606718 13763930 622987405 522729190 799889627 544754044 123081106 248102889 336379033 5833866 436671452 576438685 881575273 844197353 364966043 797994228 619254437 924768764 973484841 383178013 887628693 728784172 478223792 927300295 72682087 648612934 517808527 9401988 645294200 617909507 63388457 175130171 401181138 579409129 625688151 356553382 825610478 654159358 881442403 629567809 946593387 823360620 765927218 668933307 796754220 302831789 155282944 165417462 726292605 804471691 70277419 625695874 740327570 355399119 929366079 912260215 631445060 548889584 539714715 934381071 356862964 723550880 306446729 414409736 673583308 552965970 223679574 133693786 554882713 363672231 530876764 671131464 190335814 547231535 418583892 873810160 672335047 887639268 766087030 13047417 151281961 504639330 389763006 783697281 520231687 679062001 103535628 587436738 921493579 284216241 873381010 152315760 245779744 196324655 696837843 355398841 481185570 140821010 776752081 287350545 554333208 18887112 977902287 334203463 340209318 554535403 920739597 662059719 671550719 653125151 247183077 193998014 680078980 576161733 723878208 495472089 578740274 687037785 828387192 719371619 743494775 905027764 438978918 571246646 270019225 240420512 102006827 972111038 784776621 513012181 871865858 57042419 666429931 275649945 712736673 785212518 647665956 349684756 77152451 943557722 933231633 216844197 394119239 130344863 863529518 500547307 50877714 38832593 352170626 993165399 277419085 707273106 103247846 290441537 556101688 274984203 82065073 352162298 543039267 186414276 289391240 545085083 254195335 474689665 727766541 565317239 722063603 859596530 437062108 116002022 509479197 695776005 785876632 54879705 921834069 135739781 111700743 680821512 332574891 399237224 17606665 762915395 139174611 219644472 661617835 198608612 544532901 335342660 754605765 460714817 100813343 227308790 32072848 519910133 580131227 557116426 878112342 474363404 318698818 949123167 866253644 484904908 39730943 827664010 904381647 780084672 330202883 194430593 218597605 210865757 510229804 358603614 242759237 409493586 344460856 61357739 262302698 883112383 150841900 957071392 260528001 442256588 63117414 960660043 635716722 765316777 592172317 367071111 385862303 772801877 554255432 927765206 735248669 168454921 256157760 369776955 49341579 190149893 591117663 229743615 201219303 303768285 205390583 458031865 531880642 839080954 744012820 530544465 177854440 22205424 856190569 534669592 402646450 258070483 970672956 901858801 505111406 322833827 878822275 261772811 178620960 846120772 476657011 432222445 586225691 541811769 574840974 499198323 560919032 291136723 351745334 883988360 623318527 251884648 594730942 470360606 700035631 195557891 689828092 85725295 910627889 662327069 853162272 851254674 908753666 132777799 781177253 881931047 624481550 239119158 638009462 614488775 506138672 907180619 663130240 239434999 442821652 761525545 19541108 55205368 367024360 342404140 106901181 150039075 956944733 49157371 312589660 270477997 64538510 833368786 919079201 724010169 275200578 782088733 361525923 397871066 765580135 400366564 279582990 776110140 989571699 641116975 672266342 118915532 731318684 234529157 134865297 439770685 921821388 475489771 206181397 579314148 300980143 83454020 909188109 184337481 495708147 471017697 100435501 379247357 484006395 436156080 76701801 500749227 831283205 354281137 234210195 750926195 919971924 372786742 244187038 111021778 10790271 554688837 572647724 34570425 80604449 319283008 804355077 647090108 423701739 846417130 892623109 912862520 833945044 701794602 780961482 751245833 338382840 285595110 34181082 385832810 522436762 820889425 848256334 729102776 230053213 58119650 471644196 969280437 656920282 251323151 384546656 210085467 159183060 456402983 864731458 766055771 910108963 996538817 682170844 794708869 14943785 105937007 680126008 463613256 39171309 992441234 994815344 730081701 953135414 646517845 353461909 223200901 261746508 690731202 704887668 573237198 352662903 709691695 614793140 575208628 54805879 769700273 763256288 734229530 907928779 280351422 293937529 589404116 562908805 76538073 401966482 306820608 79494430 980739037 494447059 230299110 253026764 380420223 835644329 604895982 293394028 425951615 483506723 219897863 258825153 158632282 962411003 821936538 512278940 196503351 6105894 224991135 422703050 669040765 759344505 622370289 263326493 230409546 364537896 420694678 390126294 200022694 339483251 975149040 1023458 89327041 850387925 379095219 862105519 217862646 207279654 683517342 922634357 888009136 568088880 970641333 918579324 47239955 648745134 44359015 579168680 678891931 357581727 771201493 605824148 962877261 586270158 4751901 187712145 555847922 766032478 293147830 326913748 940384147 535116623 149041375 460376835 26552937 744039812 6649392 849808977 317912901 612021103 730194709 951871222 447130234 125119022 407851095 428319687 787984423 14543280 460089760 938464347 387046219 293416127 11495131 443554615 318982494 41757772 100084840 761244131 511461897 138667184 63609070 222531801 489953305 420194815 33018650 568485798 995109382 845324381 563959533 496871835 76494554 923402130 807587192 281123606 625677942 111293548 205535166 931971621 655615044 659920407 88705574 621240553 707424739 803142016 233388543 8132085 26076025 725221453 621043555 368584330 316366893 529944529 693352904 156077219 292366956 496324040 853521445 935513148 850588884 409185790 641747038 148519838 256074062 59945916 19721665 111571649 501436442 645211657 574273486 154990014 150009978 605157088 203759919 526523542 548134588 423334203 852226312 922776370 606115319 142556812 462348172 408672448 631907499 307405310 217704191 64151780 315927574 125345902 642729037 512438660 635954094 8396483 484205753 373248795 921309417 440253587 587887049 975249740 157794371 681247346 671228566 831717460 603694130 879825857 870987291 413606233 742276493 508033300 673658120 700203071 130449533 154322677 681967376 168835477 438141916 456060914 305808008 502244089 118147221 989766813 420945669 322212290 173588816 349566962 462194737 35169625 185549639 543936474 771565747 581778169 428583182 644011891 189843612 664146791 827283501 922887743 189096314 729139262 784427769 400877334 407324890 674647941 408412875 423268358 192298916 488888399 499594521 459739095 781766946 416039981 405862046 1542793 730347334 785681862 850467074 617543350 645797703 555449832 745982790 604067236 984087077 351721877 647249063 874169718 990324175 150875514 697926589 642639637 399750703 986590082 877183890 463577808 160202893 934956101 583639659 560341336 48401447 739292888 794573711 389872538 550955646 449705866 564588025 663875373 167226298 515448201 782882817 391560398 79481567 580060571 570692285 377523893 772913170 178472595 626327067 538291103 388515288 330311599 692684946 808762799 523464199 720484089 922390936 156402887 663469288 664468117 49799388 137690057 614086990 588827289 334958153 374292854 95412476 677771348 970053830 854836392 249039686 711308786 957193154 684251872 314959988 339319992 563300046 413022957 98766224 746363865 802369799 275557169 915412911 445980110 266702934 452194744 490101301 505126614 238209404 108977891 767014851 231747861 349332968 178685289 563445599 806043417 649776470 169940916 97753096 582365535 941413744 342563863 458229277 577008964 866219967 882150415 869152668 889663548 330011546 480632307 650035823 775182673 466884004 696875176 849245441 976782573 587010989 400326011 379379579 960142202 413925479 527930788 28972774 660419771 603256984 847397519 248182052 579437331 204065981 762021645 127492578 546677936 13884696 926275659 118879598 7193342 602266629 356674344 835802352 935023111 639092202 542613461 730865168 402430823 753650388 227712077 595223393 384308447 944634959 219762416 757703434 58857344 446622135 872287754 934434788 327643057 139011992 498324089 785017737 25638640 957614258 787085353 481928106 433950048 209223954 273160651 168500830 7935406 125820826 700151349 689062885 224617834 577874482 736780393 628808452 294111824 583474285 697984760 500629189 492867986 381130901 625956364 165017680 259758226 793098077 893391245 680261986 998457064 394858389 600923722 369619040 631320901 83022449 598022151 859787114 878625667 640409567 746011324 561422937 97172172 994090533 573200580 660480852 905460710 770328269 45342483 45362902 502014105 659260785 322886313 78320144 333087152 758922905 692588175 23220183 116013873 496070426 364628332 100898296 593951082 727231207 564477972 365972124 635743229 963988841 743568662 815150626 538952577 731318049 887799638 58565566 13226253 168283103 506017247 647004589 949088023 219921266 963532229 403945843 172649541 960381412 611737815 72523046 782478767 698593600 864880316 661354505 219862786 536272332 323472679 919006706 993767257 970438051 376738282 448053508 243745061 145641485 691030644 590613156 364124040 916395364 504017474 261864212 137848948 663797697 441266016 163520609 710108351 1629907 205084785 523588462 17009061 120724191 158317044 226956069 649259090 24865087 162352213 84301909 847401158 988841517 870223873 897359780 181478891 941131222 773827957 467617413 169793060 670036788 830414070 41712004 744041479 443051915 974096159 378332353 248464847 18274127 43912423 499049533 297165685 354276015 826606563 401708573 613303839 167543492 298755052 717773080 517267675 766793228 506902695 783461618 171101846 710054432 248245647 664946427 262078778 133638687 684108540 479827212 167496402 632347079 902523117 563742106 161931094 647010034 157908494 349172377 385424083 411843234 710252501 180477682 797121820 396904681 553841528 519510420 634198950 226869082 877575307 944885884 673317893 542693683 800390433 757685917 482368602 52538720 944194805 799406735 274873911 417510147 979807131 351871866 524346540 602974950 149349699 623118608 34893061 806460670 373649776 957466743 764810606 955936742 865490380 331790135 471076700 434353160 670912790 715904916 159319824 626031819 639696428 494784191 631516521 332916170 784995274 397324181 337311652 523946771 418874238 864705490 362992785 684622405 991383185 623617015 587580156 838793025 610346699 382493024 214309443 979507063 832481444 715593470 720383800 77170551 887117941 400874356 186823869 559096189 654876094 787873477 428231303 59183419 44865825 561531720 120007529 23071733 535217918 915701457 336459873 455143324 421819602 460490030 93491704 755679823 401574204 211912986 212366199 487879380 349613683 743351451 31689618 876612081 225418527 57374096 651084580 971148375 733478169 86870096 836452757 249060653 82441892 960978482 282626204 182200180 973099997 788422702 353507380 459222322 989278769 116479716 723084510 613087776 66393495 301120270 952136046 307408891 764277981 680052067 832217778 359744502 48644962 460972082 913109258 723473091 969753423 372456471 871371427 187709408 15837905 595450348 232327227 30314324 779705272 179934839 483070225 718918403 99519460 716223303 980261312 990860371 386166527 173065780 414497986 354567983 993766382 288672003 405654166 908568778 452316930 857192270 149871425 500638021 550986194 47061806 438426654 102259698 93849251 30193972 106343805 626255656 655425397 281735061 400529306 196796115 23974429 99586326 422267637 458970295 307742509 112326704 424707791 997158895 814792742 146443238 738083412 644867694 822006424 227258792 84568842 687886979 395463619 769877379 296015366 302390495 575069703 552478945 618534787 762096739 987186765 129911872 333752607 82980724 557887499 503623942 450106490 211109101 582047107 374414157 296694749 481850145 735352475 188061140 504424825 268256239 175395390 973126034 109266235 60435232 943851612 536241 140217365 129934238 60921450 743265755 391704141 463042355 924149145 749697509 591815114 502493375 89511105 571189954 908746715 795429569 963237058 711440729 575149126 893063530 59264799 918255650 14483609 439141180 523492805 596301176 819685438 567548402 909711432 792859105 162497788 753524046 768173601 156841548 222073042 843755849 721645834 77158685 595087967 534934178 84373713 396912958 150384504 62054724 344403949 984519044 394442989 166206348 211486340 143236626 306300616 146152852 384300219 555013935 155558869 951807809 543445526 582654057 63647224 802165859 962774235 677752779 722047420 993360816 510004395 550342608 409240962 66933747 158383227 545947285 919187102 862287945 908629769 135566822 833573687 904175687 104601744 745005723 911836251 233343629 733968324 540490277 187989570 98862339 988250669 864133110 356210791 77101043 121904546 862434169 708356755 383431489 993686704 166885151 99064430 682601028 394761330 293133237 992853886 224660823 160987139 441247285 151105970 88666729 349557030 364555688 697521028 633585054 172693295 532168726 833198571 914127596 470205935 435205073 468216894 159370366 840334778 882836419 448213430 98645963 807248526 735488461 403601661 883558624 985884882 755215612 702833490 932679197 165514577 193608527 384922239 13776793 32442805 257369329 821184996 550922133 529679319 158348254 602445538 143826221 14623292 477796512 464838567 545390670 181773494 539290021 237158118 525918282 396885934 976393148 226276930 289877092 95324242 119919728 671209226 348415337 580943481 328532019 586120192 614252811 253726236 41441392 422760716 985578041 878600108 522061399 67090144 238464632 903742600 50525227 806929667 141493494 812245994 199894094 440191385 459079591 366722745 620608306 862816942 528123209 748135470 336393181 608790225 421141974 409570362 569290578 143607801 535275963 324810804 394056333 550134781 454101956 134755748 109264994 590657706 15205391 370166487 430304126 247794623 496608489 963662359 538990567 726382740 829938230 840738443 679804897 43642863 957580281 586757781 198167329 480549520 881386176 59939849 62559568 850511678 995611938 789918856 939727240 412801951 679615313 815412678 500249555 283536345 281006800 246414684 840566546 311826456 664101301 196673793 993420461 758549670 936048822 976047950 416744420 296632566 728983377 644054318 53619681 435909041 195961266 155342715 889394684 434962075 859804011 77830894 835562293 822692590 723387825 419242819 182228138 354927720 829247140 882899535 738863906 445942576 930012227 944888822 979960688 678913868 489092049 495967612 511736973 133155256 570635438 343003611 278939368 194427520 124518902 531283717 267559776 916599611 672871548 836941503 292365933 358616817 733876912 350786174 961605980 16738287 660667588 458304494 376764927 531830013 120886375 502797206 702407719 119144060 48805351 341336559 501467535 699739837 707710602 907981858 647159669 849534508 690517868 937568815 565252577 828109414 833665521 52369584 293284610 444511187 413981215 370641636 166400732 560117425 829809743 194392630 528846080 717421483 59933814 196352249 893977583 552780412 941412592 824375685 378328538 581278341 997258060 325580427 313068061 878105461 187473422 857848005 541896635 12162791 56087656 881223928 949142099 200607309 417417654 215248410 203542809 670518481 104877184 740969833 722066596 613113535 545474901 30996877 11351451 771476559 256846763 964602003 542458322 215508361 376595302 711394282 310381328 279003271 667922155 511030041 704911430 251421398 481003322 518094467 952097182 971114338 882000618 264069256 678757073 61621971 728165269 33740462 285640514 971961134 134325236 401140626 296315479 34729434 421450099 89146602 725550172 244431307 898882740 950769015 600387036 448273114 429253516 916667176 395451389 358382263 401103002 786417419 304462053 325000442 6772927 629163633 492480787 58939385 492359116 705618780 673018234 409785947 862348329 365137190 186119535 683569189 961894860 122146507 232046355 628502753 370543110 139601348 648016993 71915837 981643180 502729204 140050354 94223820 28918547 475015039 410791082 279838119 963755763 37718710 434160085 643784705 208476814 731869643 253847897 745983576 12673499 318958304 631121368 785175288 567451909 237145137 305684254 963069428 264835129 936364003 869544516 402915873 425569478 668090006 390023990 495083091 273734660 296108224 329716922 392627267 245137751 875777023 184554948 950923891 433710872 210371752 152927552 512873660 658375511 257088012 95348446 988675414 31737062 623562387 211846522 252405308 560156975 739724572 793798962 376839472 678503950 367931656 975269713 115447211 263687136 112625375 606255377 793981690 41243945 527695928 41329367 145062960 727469781 285284208 558626292 89357380 97278090 6270692 947403357 560088378 261157810 789247131 329804302 74266905 159271471 12908050 210215096 519470814 979445164 973610745 102541023 562679175 809490837 138916504 519175826 892960093 123776088 17570853 876056798 438284325 870266763 831300150 100753872 706920102 799296786 370732650 168468668 867968440 108497467 260623647 800486627 184158306 748066235 773552013 915785125 369507072 212128405 160142131 108550763 606943590 876143604 706914700 69035620 794315301 854869404 545660281 73911614 27552517 221735691 659644540 393551775 558114528 230656571 624224788 296579991 854083328 671692158 384420758 961024584 197756062 579356940 456790394 68212286 874159245 81583580 444243507 459531139 679448141 603184649 712758076 181466471 620485297 373973186 927318906 321538775 337311522 645627872 774757148 643471133 929958424 672887849 295998585 862653693 672885378 708672239 432595128 354125303 305921195 889981446 525138265 937259361 54724683 290722584 224538798 321077389 896732711 989915021 908623246 950024511 1870500 384252827 259200996 580074299 588434604 447930608 327565182 195550062 622166031 999665602 958834761 237050092 427605663 834963687 372571858 104088665 752719400 34144223 787772779 486894744 205752783 998313862 230659365 487038430 797019803 824656219 675573390 704779052 886363899 109596303 429990965 192406446 442294263 923536873 719457235 680277405 481953792 914009766 195631618 94735764 120590403 267093773 203431807 225195814 461823680 936033769 268880838 541402433 483173061 525684597 193091025 383353566 906798651 730287119 814513493 111428163 910706850 553779197 281397424 392508154 555348587 894490061 950928069 902779332 318821985 472230230 747113528 936871511 706698016 309499007 910683468 13848665 776284579 488987948 873431232 723142630 494523823 312830772 411579570 172531959 563558456 715417468 284347788 846952650 290255542 98612867 804912437 33145207 600922707 586971531 435993546 294592069 77368339 655869377 571129165 132943563 565737462 255983760 504488304 196179311 677696722 955823331 433694292 940642929 603443349 911115906 29012816 508250637 835623940 841533430 734746427 675035147 484915405 512141536 898905477 563510228 490850485 264949598 346479707 291662187 316872474 871420934 259596493 732656605 435186171 276862237 922851799 630723933 64214099 670392716 179055771 104672303 69968278 299064928 329440828 680807480 63610869 865867735 996091093 111741164 927280168 642580484 715618407 464865526 184949332 716117559 738149490 379367779 961959106 255180337 333780573 138223887 43722474 780946299 757447028 455286894 98203541 316883516 54537157 782050815 88759106 85511651 956528280 644724171 273238309 27778531 678094213 959008550 311590233 435737261 175487183 799308507 152345118 185379112 591267686 496614266 891359644 326028593 916566214 815906823 256384637 677716694 288234709 922970688 672542598 662081366 341820819 559895201 740793311 892486321 551055101 571707955 929384893 698425214 169073513 823130936 403369288 913171940 504600384 320616137 972002767 181390593 736417073 5568544 227423969 807371722 801699182 493610341 558442449 457409189 311673557 503223763 237922067 468681289 273742484 674444180 572690707 484789024 785244590 905457702 845053504 704638763 744001353 255721266 858174396 981530005 359398194 370392963 735283073 15685255 32175383 852476895 829803777 344738977 567904369 49023659 941550222 81017943 954189242 767852748 123889156 66593604 251000173 4275586 328364500 592581453 84322291 841390874 363245558 635759206 438812781 649313766 335815931 187552951 308074087 776262387 484331725 30081499 244349367 733090970 758530708 330689001 318472594 505243003 401571162 646331681 599371123 12788344 331253648 535100340 284716027 185063518 635914368 669477470 351652201 479642732 515328976 131433906 686858441 66020804 11485803 867098764 512878093 317312805 517375833 705514512 479738894 939134976 101226656 742931698 138648403 863272760 905009299 617648574 952160700 827858192 927970326 447887478 18251554 855280869 220759563 488569861 677074683 672671030 791237131 878435423 594938372 349203595 141665164 30954386 856701015 3393355 281664043 841630383 470307047 568961177 38250776 533970426 236870448 493740876 926298875 648532288 604206428 754550119 838586340 786714948 44240982 406899170 29623256 863195824 228476863 582403983 95539210 298716035 181387235 911826470 657135153 352662196 867795876 627515014 535163165 872520135 784320083 18569690 78432681 368615977 882074821 259664632 521402896 70137184 892422122 766158319 340471126 30377931 19500513 747873311 527587076 620386348 266808414 895162012 756581002 120573101 23649680 118682172 36670599 306633894 69182220 197144786 971852117 595017503 653303299 989676974 101099541 976077575 302602704 652157221 649667580 971082777 836033084 14959371 627057018 133399578 847842452 718412801 338476996 77915931 946575392 775004298 638677130 775116993 289573703 851573982 945110793 405982564 499835767 660954852 354872338 943036676 923309458 64115640 250385935 561653751 593825236 215745118 262545512 29128893 118185090 221617999 357973509 387781993 190071283 844859999 460682520 314432709 385205272 206644745 651146758 565419907 852036283 782458769 890171090 932776867 715751882 848273578 78960572 652711062 452169622 172184858 335734610 989206676 661804030 67663959 915260100 302049504 996520846 448172955 794085433 272503990 603450153 865334071 728636611 451824912 145560970 183897447 910370878 603151279 773176154 612112483 906037922 913292195 92321511 502674287 297580916 86299175 208050990 588480961 385363824 500676193 147098587 107538691 880673581 518697725 908461043 884004039 965530593 693557524 816281782 902024691 833399426 132761239 547802199 602349124 785118757 545031575 628994658 151331223 1664815 144833884 538773827 44161867 806790515 867437064 464946513 335801324 35602990 687179919 33826110 13390883 552851267 613475086 564579004 830008732 567973419 753437511 652743023 228660537 351547329 981881199 894610370 260264671 774683221 176482006 219210446 742908577 360082802 238066497 840270566 347197195 129310626 531248983 903106222 189309975 156979139 873470813 163341967 639357555 684111601 208202345 358205603 993717006 736584335 706446816 840817630 600956828 769644484 54646514 27508830 858449109 469059136 117041402 29910069 698101233 529021213 109784700 729836151 822098721 676154596 580898711 832955875 606732553 965477543 785372333 82337719 212651136 448312436 928082149 244488397 633662346 769588752 52117649 492004700 50505297 514613728 586810475 890246504 999767923 15479585 26163938 419237873 14582464 302325722 195637843 486145251 892545464 886097120 268377135 132452503 557833908 402802877 447857617 253566489 43678173 336590833 665505380 628291352 932436800 853518506 507494786 782123633 390968681 595030573 90785217 416542392 221238939 44807147 646341965 906455766 618321708 221806754 720544967 779737621 777566298 226515438 466629248 11781388 602091156 134336154 775872514 929809673 863826799 469245106 111986731 132128064 421273430 312617955 728350275 934771956 327668695 588444404 861276418 765839536 250913633 315145298 2032532 287338114 803721687 24933678 350459441 722119315 969506941 682991790 802198270 100556099 811371321 949647728 197769316 815674363 805832496 537621710 437267741 715887795 983747969 169127648 373452077 761887177 530662591 960554101 796515945 970820420 179962842 244898120 398570827 916602784 200594923 672103725 519571040 207380606 133454989 570078067 88818223 656251013 292912155 169263080 487493084 766349190 122855064 142779125 984901388 329644452 406907049 272722943 666613976 853515083 775750094 241681588 463674850 203666594 265700409 250359174 863768990 182049220 125263991 552094792 155040057 74777037 404817528 583516391 688288733 388096040 53942998 875614570 216560186 802040014 172951891 972495155 318815494 134352990 15311561 732686818 363774683 837101957 48034125 288154591 811749194 222396085 687551373 582736289 926069768 377404545 642497182 235234045 291014428 819518325 746838815 859600786 219018156 329767331 877554805 279855138 123944304 260074163 91345246 405294312 335613246 177070766 258118683 180778218 812765025 309695208 757463128 509990056 955254852 217347407 299610460 195978300 304486697 311633833 507927528 209264149 972812504 727615783 303178385 741300160 746018080 246568341 413443821 13620940 42779922 793661619 36536590 679154860 513023879 784001252 453931929 173781561 675155679 922922354 25625119 108970986 605273320 563863750 45363545 210485838 229832336 497524682 186611702 525280961 156939473 172424026 654294465 820044061 568334818 462270279 340293247 660340703 26433529 658926152 6753414 799440322 439154897 362089845 206421916 28486383 262513878 811754157 187042481 899003952 975720083 62248207 318455772 513241260 135393611 401088077 690510204 598108599 141761379 672603143 203061354 358293529 156401976 311189623 605451863 312671255 478159586 708231746 326301107 641395048 693557029 814301072 81772464 193970254 372010394 334245862 606777813 358999499 515117905 75011670 5412327 847941444 209971449 405579780 165525537 555884667 633777512 979226561 333594819 110163920 348204782 793756464 854909456 263943113 321154435 250802503 987772584 818198675 504526080 534569819 31726044 875362533 391042542 164273428 546459159 398225055 867299418 888412189 105213278 291729769 426320548 892960047 629074073 828551698 510344638 699245209 802244180 153891511 311222293 232422048 875922730 671069167 785416324 670906616 847102735 933446924 43530295 29750343 529317223 288903758 826973055 354520827 405685762 988335736 314731426 238090144 575541839 188463627 806830249 646945686 264905268 134555085 436115456 919994487 110687868 431508458 272610181 730584042 716996478 621586311 99349843 186246761 183382596 602783784 873689300 807862207 68664908 411196524 498545713 624085611 470109673 63317059 243854382 574135987 625436153 724302830 530516978 237054031 880703270 68324168 410747634 757125899 507841346 312881893 59918338 599596029 101463474 539211254 656380262 365554042 84876367 161426378 646620180 537981505 886676716 161748563 625640036 752918236 737678296 910652542 298896671 419970632 418630214 659004703 891593498 872347508 359266541 866718209 78195931 795506869 15413143 712604664 679327619 314762878 63381869 588677229 918646348 439497225 597226229 472043395 938753317 836073250 597585427 73090491 972820336 351092991 564102841 740863558 771546146 619140469 338061756 607554755 689463721 566504162 166749774 648030126 16237913 899527079 513681629 294104999 703721438 274854753 411296946 839990102 595417437 732636255 866892216 982615748 337352445 841510371 45002525 803081241 403718187 472796949 211527225 820291344 365765381 362393870 224216227 267630793 692702329 265167284 320218256 340032323 108684099 603848389 183676197 543956 514080457 851719657 316295816 951335239 784774457 378548452 219959719 295765463 771887589 133081935 39473582 882912355 41810311 440678485 410101397 770967871 984637062 327391083 53087206 320352160 416181436 374131351 713666339 491913797 982219283 611689793 203663991 794990265 459376534 222677055 103991967 305098107 9001260 429263543 622378129 742037365 763367707 667919877 956451566 636369549 286428922 504062200 374514432 150308511 738111448 259469837 531245453 533734410 586817047 587939242 717399600 581335764 926247210 525379208 857401543 208208145 74981780 862253981 327552558 226858689 388957907 782580233 668454778 257853363 747766888 939136349 213784392 330102176 209978638 598817968 308059098 732835580 821609515 450531103 920338382 614430049 611927604 530201214 93194469 389173084 924096932 806867543 765338418 678690933 900423354 370396122 789205615 625559088 174807800 870949507 329287983 765560827 573709900 849659106 527629943 228516178 208556623 140256993 147758225 993680765 903888069 289902702 892118428 889336369 875072659 570539473 902183561 558450509 117668169 13939952 524533695 519607610 210780002 609274207 123614035 275971290 305907506 673225598 769804257 221287476 154828581 323633057 878050132 834358816 882083495 569662249 862168129 844841049 166919867 310676671 436905979 665860882 86793809 674493746 374203615 632867995 44618476 51889445 649009547 847355040 944335227 767904999 104285423 388747962 19905169 44869751 636614106 309708787 754339966 179671757 439786193 393605111 484912664 9066400 673585308 975090331 270071411 229403311 765955568 778995470 270255135 841105914 771728697 496313705 509449123 857417734 221207693 874131289 213558151 195831727 432686705 109084724 833116530 801837279 286402228 739357751 314655081 864459989 128020165 56785932 973267465 310087198 775080062 660415517 949496437 77663874 779090370 645952197 970946427 716837312 945878168 299564556 414007252 656450456 990912402 725269006 386108783 804701070 378017586 629936703 945386066 212177380 893375052 835733793 160936952 277629505 162443396 573054569 94156153 803474362 611697924 46024313 192128333 488132736 127376523 444230431 529298722 65235408 278710356 325286755 920043058 620647920 404528984 651270789 494314003 747802693 376721242 388195538 624411662 944757778 148816551 927160310 373891006 442820807 385321743 491138279 598811587 705514067 459446956 102045740 665775747 276696512 512896093 890520105 156363171 601604993 676268391 679626228 720016836 293260410 68703373 554623557 129293610 618128248 353505227 63504847 103260343 977256604 835038473 798755925 219355618 445420093 34525917 154807300 982195125 778282395 837791461 829083661 609429769 501002404 470883474 328799065 29166030 15286623 128383520 322225121 828211441 276448601 848620898 6610987 333918639 805430425 991080140 500691186 842054784 703827258 956957929 601189531 306154991 674256473 405266608 253558280 604562626 805952088 186681441 912336070 473865671 324297386 356821584 996510526 680818539 915708858 429892516 573702714 677668500 314194340 977314619 359389153 393727052 848543544 586599459 437131208 994184389 146427508 604375944 866334865 407931265 802530468 701245882 344888218 7156813 992621354 333665613 992596170 52915118 125020804 223022026 254432788 409052733 588016826 19305892 259224574 856460759 117254167 16770767 487325004 271609026 108286193 846917829 58516976 22792887 358349248 920987124 459395960 550742700 694127736 637595363 283735593 889306400 240073861 127434804 985055577 453435358 964662541 837952830 834853238 107489738 36186331 89704681 847344228 266781433 382850332 162298594 596597092 717036569 7109985 271536204 63239450 43448655 734984784 541338 278725040 641898442 376027727 389587708 732649628 59745499 251742664 2993787 940548369 61551594 426761254 117165874 990945417 457405753 860345261 979059036 332541141 318596011 269118000 455610322 373053836 4905711 48501305 121852941 281073113 523454793 4921649 54797088 906621695 48993299 336439749 230446290 257081595 673328541 777188924 899004555 363908198 77955908 947484953 394320653 938307788 783389083 481094826 28972220 836589439 297390594 76930356 717802454 359352526 210176416 536043881 150427919 446045854 275355377 106030731 567544307 956202857 99112841 338510898 833577673 551551320 724207752 742129661 627537947 113202058 876486967 411756274 16497804 794842195 660034593 58253908 946797219 605076012 722922266 566199539 84996734 462939517 288148182 639057857 958857568 732191692 170103529 638069804 475540191 471034948 713639968 973292066 826760785 225896349 661233065 79514788 395232620 277883270 756899435 574143029 225577349 57262491 692375196 635698700 168471279 350049005 932605518 34852166 376508481 801400570 891136479 920021742 548454283 853779180 885211685 346685363 406581133 127632058 594630685 575832687 882724662 959724083 724516522 774231547 441590258 581682673 946741198 891659637 257962615 677542222 242802885 334613869 547282759 238890620 441203939 934711938 648715533 3455727 692940575 266428745 589077246 671128653 998870239 52047880 338937735 138551031 188063975 770245104 940068320 14754506 413412841 447184411 35240852 223162402 163077486 333557159 425143826 911361235 866548989 224725914 793318253 160774926 275495862 406230843 863302159 573236138 267155947 338159043 424916870 701575479 493708133 918438086 367704497 902588356 466245773 117625857 766361894 404370321 217848961 909193417 969639916 123854770 716419878 997200519 35172999 466613720 495738106 480306482 262802278 941403794 303199993 453889968 98187059 962418911 305268635 718741178 779729112 635421873 314337556 868091186 615139106 510471643 17001226 634593928 140885471 546275661 570246045 534804467 535451896 842898340 507953427 901790090 730128941 241545162 659689652 844562207 871177210 74478385 395212132 349877836 604071447 630276117 645055118 543329510 994200472 279981708 729948450 157874008 12515233 674722870 920445137 444757844 955542763 10896688 510003265 201607517 448186795 70426663 417522290 343369178 566219264 689696015 525947625 741518041 864142201 742366585 662610601 967982493 229946937 336898618 217923329 451444617 819575887 900452310 313587795 966102896 443531172 95466294 781285824 258090487 329804999 747735250 686249641 70959094 696869249 673706295 269306116 714238406 130446690 919512253 562107189 325099274 890801830 15226191 95256944 864535827 727392751 972994583 611853879 786422498 375994159 148165342 391452254 910009877 702521987 800927948 472598414 304726554 119834134 775081055 784583558 975220894 468178481 29537112 201282999 37641525 670761197 503574959 84718055 974839086 559815931 758494383 473927331 911845346 430836853 943452686 367811442 737363622 580381052 718498160 666144671 201785544 959251060 708319082 263515834 474256306 786627556 811971404 230122913 740044789 533717262 804002610 339843127 326351452 7514241 288361371 785281226 882267365 395137451 151107711 128240160 900271046 227684529 161309695 155409014 946258599 663115400 987956594 20567811 873070288 587883137 758347532 203755158 406865833 949943934 708295984 183481491 256426246 832293693 159724871 708643150 399252581 967916739 486242960 105641132 20588592 288652718 201143604 656554129 104991880 183498883 478922016 323751897 533772118 708974312 502473111 671264878 310152597 933738933 898912141 720235467 770156872 788041373 139747112 222217719 894927959 312064094 276189324 838668156 433540142 547330019 335112688 220237123 688352768 519303099 881948010 324812720 917746295 128875059 440148884 711948950 582441615 287658480 968219005 319570530 35751926 734490600 654735444 529692315 982555077 506507207 214717055 122321208 135270662 964335954 367827806 352207778 681638075 716617787 190898621 679238552 138462393 815498572 648078267 354105037 779152833 158692739 748042789 726266242 744688044 577600430 328570344 781000425 979915031 977406676 830697069 56145971 1080608 597237118 630180682 120333387 669312389 944924039 789763906 97224181 673597970 891205328 31723012 482827178 702692507 210117092 668788552 229211525 338357986 468937119 713382589 781454813 40147780 352795242 48003193 521632428 62576185 284444832 985673713 618440854 361423057 174551915 129544626 159807101 627077303 95856091 814295672 343892084 59522006 734641400 641020228 933038166 513414817 691151234 157573801 816325852 337191592 789607156 722417042 776914749 785434671 832103797 419988405 1769403 65222625 81996022 907675271 522089037 297740877 728700087 319579908 205419504 786642583 228284539 89891819 690172057 43246442 814548238 759433967 508968520 13843664 826927598 540264508 216053721 487962731 719717730 481728766 736184745 448883622 237434374 346305613 813171401 533038579 381498264 741540057 214547862 997599542 563329722 278014845 163628269 897220655 846472184 535638598 954221540 558153437 494427695 727304562 608868771 859638600 97334014 181466507 112100208 376225081 877047078 818215711 928519914 847038061 772623948 179133336 415566145 206348463 312662283 572473134 106380766 7674343 660308778 402558777 785204447 996093705 747733963 246079889 698929594 79966127 783040393 340759354 198733685 809798419 746764906 834403374 212870258 910800420 955155967 414741381 86385426 571687552 678827883 835578551 268657207 177285930 275418476 63683223 801199997 977445300 651081762 127754056 424338448 190920174 938324440 635502843 229023289 5567177 928332651 776708219 615873131 643488041 107004661 677259465 600882684 588805531 612029455 68864082 680943423 44031179 953555386 114098672 571516623 638310988 272367393 762911568 199487572 217853204 405371978 201822851 286341372 82805409 507723118 751100782 689282775 296360217 670390998 9238125 307816503 20182608 986224474 680847688 117460572 344678729 816988663 439242590 954150479 556317355 650241188 735143323 237532745 885760119 510492027 891073939 551960591 606418138 808422542 920441019 647381352 114040771 504949123 558599138 377981273 731305665 685546067 199203936 789494422 970898239 390778951 896787494 338416217 771712931 922268419 684673458 942611188 583388867 212972071 112524654 913266198 796975028 503133953 602467499 682379504 483192722 205782427 7578515 430310854 545876237 284853381 297643097 869154727 213139470 123268592 427114003 993428830 910025775 747221652 750786722 537935790 365640489 35244883 113679282 289448493 224534496 621251881 848570391 710444942 872203211 533406712 507805021 137429907 720973078 354545653 240574088 835945076 616187556 591036232 906922782 523801020 523541171 882116559 127685322 108043975 235946460 863669465 983359969 761157990 270264888 264284625 22103094 466334421 25318306 796092607 605825032 266795317 129189438 387568620 210156803 812077070 5983801 428346073 139771458 26883161 250190954 739908880 659423013 115627975 713736679 770820827 695464945 435590159 45719034 256806120 935080383 803502781 872459433 210029378 588523650 198478956 712795165 943843182 483603276 67486846 298235037 935939508 934691918 254685924 269265483 423970725 867867736 462309462 20689744 128145275 61875578 586148118 528590087 288388962 595106875 409717156 343055685 224567004 819676098 550183842 421357992 178752592 936538027 326507488 150290743 794745569 541408277 646795257 38088106 945160005 331187109 828517365 105161062 196515279 728748118 912647032 328270685 825009683 795377301 128034140 554485913 133771998 671454933 807933787 329134649 786285453 294774441 580650767 465608109 367658974 159765966 841180454 179658748 986323661 916535573 670330825 335612641 705665583 619116967 389246217 409757914 161861851 597752831 467701492 890674881 655785947 877364721 38880127 782777078 273232298 796370226 777228052 237181801 77632423 84815616 556784424 216140157 721128276 393066881 700298321 95117303 521700571 355792263 108503071 301423088 57753522 755342436 21744235 461593083 438084167 715801394 995732274 978494475 377963236 180533829 915492393 445363845 581229311 249873781 560656969 956086988 306405647 685309945 947347494 719694045 483730333 287168082 402609945 672914232 850461463 247004627 824581939 205087762 221810869 778720358 568070775 95689603 411038880 371422210 533374704 999651421 965827678 704972066 3752579 855646231 984795243 863028935 643029418 484238790 646791327 726906786 640443397 393383883 713418405 808939201 411844142 209147862 184152510 660648156 437332704 77862493 726451324 840232635 769334826 730988227 790772672 503994265 762547203 396229691 677494487 702693467 698062386 616072207 797388824 460747765 958943164 950972902 476241378 231500893 189022112 864417825 692530956 561724190 783760073 476938015 372990131 60669475 380314006 332640282 597519175 406128987 465254373 523048570 638661381 383320345 222174668 9905879 355983062 972149917 676393079 313013813 344779497 153584569 533777452 895156591 507239557 761098704 155136380 50708864 40926597 273529765 994523497 485588062 790955495 866313822 607922873 436471565 535538251 773569775 18464936 133099632 35081389 721833407 235584502 574007684 174782102 989657648 523911385 103586284 544774717 591643128 806247881 526534477 301442434 443847268 308826189 750185799 806652210 533518064 413597486 175703941 5929153 1028781 147938906 774439505 761289445 863620508 201615908 492634890 981573996 199350571 975890650 479141894 821653831 70632965 353081181 851119212 828795384 761187746 468308543 929983243 247982836 577990101 660497534 236919509 616725665 212838407 649163351 737530791 753688318 110902305 800953047 628997587 418135711 155771910 834313039 920389633 404066645 28093941 984312159 785035233 433218305 758184302 92183618 28923729 871144768 168113266 34681773 652666979 185205459 898368439 455971539 956514272 269980589 487828578 862529718 407854088 568387873 371211845 792968802 61851708 947192333 116471437 263433809 954578914 857179036 508583466 365311391 281628466 537782609 425631700 331699359 885751825 872657551 594683825 434829342 40721295 141549392 178313689 308073778 936832844 3473719 831041547 432014196 771088448 25419044 435353799 46496715 875243528 972473951 379802733 967555634 620707893 457695424 414448442 454219953 624023272 464887655 11130283 215260639 532541479 509548606 813832794 203055143 682130117 563824540 973964167 77990174 874694199 558555514 828775659 564183349 333100094 273356199 1220382 133020335 859352849 907891519 103966503 197853305 725884329 591335808 236053577 967171075 297139209 24588919 860215954 839213301 515764317 770632898 2323541 895902155 1409374 328986900 372017171 129173271 889993291 483684971 876747542 981231361 314337777 913673765 709910131 715208569 359678688 565032551 431282760 100490281 736528405 564051306 996318352 333921291 376321019 807215333 242766167 42641345 195865926 770476343 54349279 873881690 640956419 10228159 64616050 227338198 133293228 544817726 305373118 175537365 323140417 613944012 834076472 495655456 587226041 799059544 807957302 519083459 324191286 836511886 423935707 749168136 574015207 228646323 16311416 538226282 212469183 126141751 477566080 489518876 782905614 335667283 741300089 357500773 400813911 229374475 397419678 330806002 709137640 823574179 19373146 104152801 286038148 77722871 806251827 75808441 785982131 811523153 324181519 799805489 994010433 519023156 651384478 76802001 779795514 254992276 228158506 784128201 168497233 6489999 269604474 679534189 852504193 560192900 621028392 28352122 266763976 658815051 74275885 991954413 424363035 290176454 422140598 210507378 576103234 904679953 817981928 382118779 86313998 712997281 707179522 175949149 722574583 556911085 569683860 727388026 875205684 926464417 707383209 566273344 548634030 223804232 518567283 442080222 118481240 228275382 550430122 149140536 218173937 670180183 745835410 309842236 104255055 759186341 533315599 228641222 436087708 320310122 519299885 11247724 462672270 484885959 745453775 814673077 556311011 844626074 602646978 56971663 788147264 222213513 708402138 662436605 419555230 89312984 168344450 743531069 604502891 267837049 584089213 260412298 874197398 545404958 548440527 864867219 357337329 489395964 268480239 128755169 139639359 956014825 420624349 27361030 72745968 464345758 259474497 195840228 12164946 132794738 409940940 856957552 555083663 490417379 924248301 706618873 252829131 974818473 658031707 146938262 550259406 56697473 783741863 935812496 674049900 235907255 206624590 908517665 507088344 609468017 123298975 161875148 816285874 177519818 420356586 697259416 872948962 392635572 926699940 787806617 48164948 890745402 745247514 3701066 988557080 114867321 526452522 821024840 897067203 748282867 681624131 951356191 256317123 242262676 128972237 41688160 205375868 825166337 16577701 251498007 788050699 815736587 657846279 220152033 915136391 434959557 775779428 251672779 947275807 720563550 868558023 819947851 381873664 432987426 265137082 528044289 797499788 54813522 581094990 29801862 527078774 442708672 296732080 316220589 486465990 115501868 572217552 869835574 16383358 179502259 136697826 418619211 510924626 744906093 130749181 43783068 566670588 797296547 549059643 166183790 622311785 783068154 672053047 649197486 154586111 811389807 67053881 736934451 55292967 128609093 984880845 879666546 285561172 365110773 774460266 345577737 46877466 577051550 430554329 897614975 988635315 360298114 86636097 822413213 824563538 64947907 653228990 542361972 659880534 174521862 100691958 608291447 430643794 934038910 271836581 156263853 569987184 782593040 115442814 883363087 638282828 267782843 386487280 311022408 122658924 763862353 328916311 48983522 319803973 220110858 150366231 312889008 347583171 591541902 786100987 14699962 815334852 961905068 702455538 443912208 890089894 82838166 752912125 300235710 303542964 688471132 728363930 52079729 557667569 395000376 395568685 581353202 961597004 894227344 682664224 389184798 614190771 859022128 902753557 610537644 940784563 522244295 24947724 51438667 405894442 594867157 910511913 887671739 134856824 557176824 292709856 923460071 662819743 361864405 850255983 395880848 922330198 332261402 420657532 892878084 311088334 365743464 156328589 612603777 526198832 661768020 839631186 437882363 962867180 470326497 82051351 886783545 765229518 532584590 318827539 620950162 195750269 765323260 753583702 903792112 596357283 810917088 996210417 594931652 911776360 236791925 57667024 804715654 1225048 605099232 791737124 664920770 161968963 185499047 874293737 334584703 569734538 173485086 586488683 976442921 468478507 243089484 854242093 885413239 882099396 312530846 654568888 146740506 321074370 528512011 184886726 811443777 176773268 37846190 679348298 494845365 720395210 208839909 55936097 174867701 720512082 460509315 722310876 999882336 672034288 253177102 456262186 118392800 299992134 333197435 840074328 666346924 43426611 597106958 413508734 739090584 116791168 276378977 545355165 824952501 494885907 75835829 907302193 200021965 4090570 566138750 416358940 117501751 562031280 568203108 717937039 204739541 931915760 828148877 724309959 894838803 244644063 951368988 865132379 559719518 613400964 88501868 356065692 963312638 926531963 859728025 152991961 760305112 127682650 664037772 339016205 685397100 798734301 321712307 834405389 269429249 880820671 28245490 435820171 365420870 975889012 880039230 426283363 820497858 281488741 447449360 309827520 499815491 339787993 373044280 755450913 744389500 627372201 564766068 948967058 169544019 397695696 253206968 314226961 486949087 113165603 940665991 585439380 461692632 830101486 177356655 502817049 611704649 451893914 40302546 174742286 984393637 417317912 876499279 594571334 457912415 575241969 384005319 522033870 920111212 746371596 665391876 619057777 700446000 368690591 92357602 949747993 834596436 930739832 710932178 851351754 233363614 551073319 177438560 536939665 603998931 476041636 816464615 164299600 32735681 165382011 773760640 295987596 721729483 336280221 771694665 639387577 630601825 364815798 718981518 475197813 959914927 393064502 59716027 284331844 799809877 21261798 963296716 489267582 965518113 960654064 983163343 121655823 414985899 975249530 924363037 456838486 589505335 696173416 270929221 521940659 623483613 400064364 693092372 459951080 795955601 150063100 66706380 77546202 554835825 911840284 696554643 467984048 576338230 357072696 822813632 827048738 701972891 139127096 611781874 566921016 127315077 590807803 682440276 4543645 959186737 975288087 395381727 358739278 65665519 850338624 298497528 752202204 68022565 838823288 684536166 126785630 927502804 140928172 83335723 930003986 585207601 299744966 175313501 350737160 806059736 659137816 192713342 271712997 494343912 215494149 278557862 339299979 823443160 85270078 602991814 994906578 807588436 102208343 607373376 511120918 167579345 584782519 468639957 302726565 930254358 60492823 423137128 501263966 920962536 146348201 334523321 135189328 235350367 413332928 926449558 26297013 266858845 803147032 674095714 145175136 223878166 377507286 318168075 561499975 198333431 464295684 476853657 443289351 534601161 786757551 52736330 406147158 898189541 303578025 991963823 511117718 62664240 213217508 186373204 778928511 790115421 78058087 433132584 368283482 847683928 775217339 273279064 266476246 329100834 570054680 215043494 322370324 833712497 248097862 310464185 471845942 387063876 958107160 59684805 676341712 191856269 788086166 126341718 801859067 848745141 327267308 859586668 156970272 317694513 685349735 644974714 900546321 838698835 624809781 477370238 381380517 895247591 495622030 666200639 691390902 204900985 905535161 500519041 916829731 531810556 139172735 310629751 971321942 136515181 805133932 967107014 422775785 490030377 681741552 419634712 641076202 921986240 452968216 978567159 943394120 666979388 134713135 844963692 599382131 843522971 775565204 913919225 685950445 762373949 21072524 107293153 705063544 16893379 704008050 443775670 443067451 451424081 643803122 644804164 590762991 220598089 52485699 813410135 56369705 823495545 999806974 694028975 775169787 10469230 75059493 403405276 141414554 417054375 21769988 394492857 753554957 864327194 745307870 395535396 382313985 921928182 149049381 988770996 851571169 884866443 469542559 896299779 35837756 678338448 947633689 570850169 596203082 362965453 108553710 365616704 770070103 339511129 67232413 658725648 149801225 929503637 461943829 266954055 766136033 254119668 221218881 197083469 957049040 245467482 280628516 674669019 149553024 921217756 869833021 22086539 130852592 558232111 106613578 869041557 41700343 365346740 353901314 909650188 747667932 605209001 890977801 242615089 713957143 956401955 932378238 13214577 608843155 758953901 113211762 250985798 799739366 305102608 640110025 379904801 708726436 42729946 37591661 816552660 802824470 355784880 737394220 219103150 813012992 400407283 825788578 825040191 722273937 99161453 867562511 575378499 934013956 211202301 926510568 56475877 16175492 401245676 993164812 847456744 687637608 696829387 684753108 564911957 142572885 492609851 624092304 560128940 153335858 882178956 755779168 866201328 380212402 392072513 717351384 899172193 520296239 900907310 326042006 729156018 268331385 499451034 444917236 862002570 307690287 379179904 149734732 907952094 135649689 567216635 499465701 889137572 766873820 430845194 165743041 169843148 824603021 961774005 916017090 216760691 235697811 36769361 658715871 436314000 339892204 177418211 289047222 329832536 325020464 187127302 524022876 219899229 77681982 267039863 517065414 534253767 327372023 571705481 492360301 595312268 28857910 985278141 165155781 500719730 446854079 386985801 837584539 474557173 132399873 376226821 909850589 872625761 778025215 126287044 255363996 482822245 102157562 679684741 681698042 118259827 648111341 946789954 96771217 964062179 410978497 188494322 737314508 38064792 686823099 228583249 781482552 314931421 318721489 127946917 300284710 109722665 133614520 485733200 427340038 610600066 652711318 660770729 121022445 418060050 84601495 77416734 119346825 138386602 935254293 39484321 199347548 6694817 128184209 523363550 849336478 715406518 716342526 343351540 18618658 900246814 721064360 716029161 453226284 838744743 384879493 363985870 276290188 356611320 537049375 778555262 262638472 55679484 551894508 151361442 691783950 119623174 811243934 348568526 493600064 171791239 410721019 268119324 540245198 25988929 814458579 300087562 132209719 897154100 264174666 698738707 735354252 900275878 487933702 985836951 847276827 672485626 898972875 484786529 848096183 244933509 225867685 726299064 465779541 745144907 724056183 251642639 3577135 848637942 887867440 973556828 743743913 718966776 407862014 803271628 800197529 654906893 376674536 238273927 634238907 485950623 15685570 373742503 456283280 401028754 414371748 213322864 728013265 692977464 911194045 654397340 629371963 669430199 254515714 778168293 126818294 50980978 772822463 2548250 344517975 402429531 28378513 454511010 276316373 474147176 746683299 429107165 279329184 69157038 182338397 600441587 648207486 974012519 394100702 914659060 112575626 530126913 908014759 312876047 84273764 245306925 103690908 120862809 644401303 224179407 979720930 750993861 440963800 651746234 143654347 631357083 217106419 187963095 35488791 603185818 875025377 784727759 422493057 436830989 606777655 724505412 252290725 988408597 100568585 365680097 787046656 259646853 172513744 545645950 581706063 132815839 313930560 190948980 370365976 632623715 341440273 618341665 583091745 297644234 987930988 600175498 439376402 31482771 879160793 557155292 207416866 329393781 60319351 477729565 130988503 706706427 245943738 399701787 106490802 207003193 906879425 360839074 617525521 310480148 747664891 878139630 467583393 795822239 494162044 31310486 885308025 573777000 398398145 501384418 426327816 351416562 222609963 423031519 854399619 82524522 837680234 98497049 726550440 538505645 565888712 243175094 923678061 576501756 695563324 21799201 370330193 53750471 8726985 109377243 501634692 604148588 54646424 568247008 292828885 244451140 605945166 120156077 149069922 439658701 943634580 321230203 369719871 771282394 106729880 316627194 341615191 794544495 241580772 824208745 72834286 113976219 259402769 807320350 197600534 227345925 464731139 196098358 784681483 816486060 124837211 484974575 639231905 203216168 546680454 112519835 375083968 75886763 248274029 591915611 947646790 680615132 71347330 531761411 751318863 321368048 717180090 726913518 211052451 782029379 454432576 997573232 431478304 488143436 835185671 354061202 952077875 752847633 68114441 159682219 679354297 676153057 193210596 39851510 656509514 605360993 447189391 517378609 235589029 89610399 154388144 957162974 756661333 354389688 332304165 91605780 358135165 14829070 393289989 386975302 790536819 433594998 395355114 233478712 671092645 466387616 930675594 999163612 569201102 891732543 575173402 310639184 154662784 137218584 901265678 773187517 558969659 693595420 586113165 31799664 447847900 289803271 201785831 318305125 576605185 146534138 738514217 165271075 686853923 519716604 740219303 141685496 699507565 68871345 784642604 156203267 379625984 94224056 157482927 151137260 457515460 751610432 252103954 401372982 855273998 124494189 124268355 663251655 165261803 906341311 807405998 442089819 125821343 702688417 866100852 228311628 889350825 489719111 647438027 257283441 34939759 540223836 508083192 729146355 724969416 840077422 499296125 488719058 300536799 898321619 991245171 320513564 573193152 837389025 147031944 818625862 65560830 880511990 552154219 397908537 990969433 745258223 576326107 950248627 481862161 568335571 291038466 37611113 684341592 307261425 210436217 909756758 88302160 322424877 73662969 146225724 628857218 505767853 83204570 527581454 973724138 171032522 230476920 460534432 38186246 538855841 302899544 118445006 808451979 307409875 300114829 76752744 848766928 424817603 105908896 936125574 635392562 598479891 771708015 677536785 313380864 693851728 528872657 335021065 128529194 122367625 429781089 661900763 167658036 985709135 822334105 357839076 101171132 844982203 768106797 233592495 745511283 567938790 253807858 253804657 328377324 556466358 939274791 804012294 172076616 94524120 756247416 165534238 250675519 977501361 827594559 225698659 738290305 194548057 178607140 985844546 799890953 790066253 817850275 379544022 373973730 385575345 595838666 3720587 523972749 339163733 635366260 537607124 335988269 867661709 662955792 228780963 702917684 361549353 847567465 667471970 948378917 546699612 400616015 256450217 700607357 948147132 640613969 256145994 569373514 980181514 968448382 262037095 27764760 303173424 33915899 203664542 124196927 743322017 968355293 536259235 339147477 545396570 851549172 879113879 418636896 313468237 824347551 587593179 456657189 194673824 517694277 576270732 494898714 439072552 655947182 417315141 241679726 678839603 617308495 589313989 821572582 69448857 245928937 51723122 947491688 39733810 676561324 506840417 3982684 514705978 743307125 200263064 983813040 610262899 590350928 248956427 655639010 657191078 944910798 568383548 50130934 851470624 287715143 943703391 879009813 648670083 115605941 182606300 657463915 353805662 793242055 835376994 8684177 664491409 429029539 536359015 74783405 373251056 188656901 549349496 179199851 459899809 28603755 657956300 583268129 260664782 762667671 510608388 932554194 612666365 859970488 552602677 637328695 254774228 541555887 788794281 964066295 345153122 282524093 417111863 61240016 395648661 929988013 100232922 5600021 449557639 792073013 519715797 148986205 666699152 482606345 757859567 485495288 389462220 166260980 718333605 716172867 979439345 154352299 996943633 744012767 634322565 439601968 519182025 451322628 66308060 807797939 933663688 456815341 243921126 339430358 755757981 691917752 698895594 11443743 930687025 87337304 647666789 100728843 806924169 108071182 253655226 496512025 437204263 925089489 925669195 294039514 217135057 274048404 777102896 781263420 507608971 489882481 654004838 564113509 500904948 116097207 947012038 106099525 188140185 910645232 259412477 605781792 835539493 512638541 801257745 405532226 463129472 624469125 273522594 764152664 648117326 881866400 695107209 313288648 749668330 876192904 711871021 164136666 873636446 540198015 80975951 653055823 657469892 362109676 201681043 344396425 279153197 556641788 384089165 290134965 576491591 99845330 364087677 306326807 643137921 766602446 478007317 858290610 375584224 354935020 431351165 238676380 903560852 867897514 889033465 554034531 483571023 103157931 117915254 735804214 263061012 382768988 172401377 829458713 42064878 647972425 512651538 295789429 174125709 820639863 520263254 749613815 590949400 723245651 349062009 270298928 76137663 827002948 351845317 741535562 493250621 548893277 333299008 956425518 471812928 707855169 577757264 538452464 745058652 539770352 746777384 351474742 359888179 772470896 597762197 44833357 131606082 633324004 627167491 771441542 969791969 189426466 614265088 404457079 7591532 634483857 306707801 742258720 715208601 6674456 589557836 284810253 510555117 955831753 512536336 568228739 157778868 855151616 145025935 460552474 439322524 940388924 192687229 402491612 664815608 265242389 884538621 756846726 123342676 802144530 134589504 873042584 506256884 154340451 230437394 584838104 429608965 554819423 316736202 412325508 854039638 861232962 660630785 570224174 86561048 938266709 163563114 426186517 616416298 947897877 122105199 744816541 551036248 136961542 860036233 498672183 144161862 750324193 708868130 590882766 689120921 391704903 920323872 378541557 437067330 716455539 410699440 9116350 691777215 802457347 626620772 178908903 347233211 616245082 517339198 299939041 9436713 977798340 512198288 468895695 752424631 729433539 518501320 643612064 777576028 888815415 31914831 771867622 532051172 155916180 427634289 292764092 99323826 841886922 766907770 505174259 455667114 511358961 792003994 803333252 477368281 417393453 741277313 870296710 11369471 844849206 857685324 579119976 527420398 97426718 357481403 709042060 704486938 293454497 258783205 141437748 235937431 868569158 965230072 865388931 46500477 868781519 483710414 187313918 546142777 500205382 913320063 762806462 252650905 806589033 867443399 642003317 599922161 328441859 87888010 978126532 803426712 684248599 976800598 801001899 532478701 356493864 436978816 299921413 325725289 5842011 343316231 801463660 150924872 606072363 749541092 53232017 975040390 448280766 957056372 285674841 410997405 693214355 299546881 620008072 637256265 455758941 599716055 381873018 295491474 964390721 100607345 876458867 197193327 193797056 182197649 855025702 955056980 726390209 10896584 621924174 311846548 702591884 209372035 827503921 235799605 527848281 586181225 964534006 448747593 643754915 332237798 409372260 590720845 967150643 886905199 450693071 491907009 956834680 57118282 183016658 857449316 65257269 772521069 939364606 893826402 480279272 153460701 809688204 683036958 969069382 579191875 691663984 371951934 48507153 32690196 184380329 861770205 411126611 371428218 977624593 451924507 691105918 646559280 792966262 292419729 180375693 538347463 564936456 792818742 14325056 297082469 131942907 833225747 555361636 501652083 151873278 312264112 411372296 805751119 27631940 909173891 226054244 232690986 682137248 209063237 556365822 407098960 57305859 417779871 510513975 985970874 353898702 283704934 102921958 638629369 65467507 391247161 979566331 391180021 794382055 800721368 666365098 374616614 408401145 718446792 490464643 51564298 686591482 105120230 59880862 148289731 26711226 784778133 456737545 359977038 255227906 177677538 993447339 161786441 427519796 605283550 403743387 658093973 902727485 697208296 282980400 209201465 193985128 551089390 248929051 750009481 21626679 958238358 558043528 651359273 414652233 976520693 588447017 50158813 28807190 777922830 854175227 690540117 843128263 900188205 420633010 40013708 600547585 320123969 36250810 320916783 494774767 90369065 996558133 831076489 768090672 163618141 835378866 549396215 41911071 557691237 590341751 470061662 710190367 737144748 468854098 796546929 856665421 507217612 54283832 987886805 200274970 907607242 735106176 69783191 664752639 745483549 842281895 782633831 171189612 523625867 262256354 279903966 933355431 104077033 698999095 126833727 471922964 729967049 756317687 327703878 444618713 400357749 265296075 305010947 526432331 235651781 423697681 104491727 175786645 569116857 148746713 248240531 276401498 69478464 609920427 517315162 412688297 419700625 80080692 186203527 422171174 883641127 44888916 982369607 725379564 328704377 522573668 551361270 656931900 897704770 91761272 580093908 576514744 770039768 167631146 424068812 595982971 380852102 186016397 355631799 704668113 919200207 473748905 807606685 180163175 145386651 546705507 868961096 681960830 755719604 832567189 96452351 105395186 648597683 342988166 132369537 858705407 594335834 260641267 103246976 778440172 937838916 508794782 874032282 772290054 313863709 187163576 985222120 965689087 660058953 250873000 565349914 128251809 697228118 806397638 513701243 734298872 854635418 112631092 106784836 794554642 983495223 116577382 972187100 912565708 153736464 368741216 61183190 183439148 722093300 571098321 878200306 498910465 598261638 594645277 11869306 59073297 598986509 175971876 6477161 424163822 183916762 699394832 264278630 783142932 482096214 213497289 147314698 172567767 636784093 272452761 347078890 522745415 434657564 311392759 818863287 260242680 522890945 293851614 418429509 861894839 417813830 731394445 183450389 957672501 511462028 395017682 892147165 187972166 867469920 530985542 686888211 231357641 35121991 456262471 790272645 225509648 842765274 895639740 406170523 221052613 101470499 525031874 305606884 45922485 845035439 538084766 204101292 567231529 665763655 678731128 38287553 507341327 413704380 484607201 712355738 370096289 554018099 655620450 765474365 301251673 543902084 529517194 248977948 281611170 624508179 357277798 968640832 113876234 785275278 881825427 745810790 377844031 824305458 337248824 163714783 704954274 745650852 894345012 307810227 836117992 196928736 165287108 59355325 981974070 736087526 732475151 628056741 763777457 700667097 414342060 715636097 964795822 847668460 820435600 44853835 398227664 950925170 782133388 752613784 396951218 821753004 399325853 516052290 990346634 483769550 629063674 783066871 554915346 726197820 455963789 539818662 376917568 112669679 582057385 13216618 725562852 810008066 650201966 331319667 660893054 468565236 817882862 975394106 565361105 742417976 205520510 523247562 186261399 328709259 160168323 149757835 412024372 272137896 351581246 262083699 445571383 728648819 807774235 556875725 956167352 181636347 590757476 862140508 450711867 226555694 554483415 236351183 594081283 56589197 681355486 462444111 731824959 227169276 662421957 880228917 785930020 44656232 321142509 322230654 468745103 183763934 798704055 100295786 545507038 579354918 56789815 265512998 367253223 238648228 790262098 38954119 815186589 59044013 296723915 621983532 892873770 350327716 768701603 43486097 639275663 640718619 796294291 829055774 702062696 966890768 452058667 28108786 949561698 204023667 170738635 695521035 607002075 331586899 540791766 172828001 246092381 361928789 337503797 558127118 36458788 97528720 949889383 377039096 404734314 393088288 41332372 785514617 148849443 767643066 530791528 771315091 307703912 737889144 845462447 375873369 715675121 526920864 892052983 679162818 402331573 727052460 326458627 557524572 669911822 219261364 596549627 344037984 2749645 56046515 625156543 787479213 370424594 51526917 613259232 4221304 975668982 668017765 889255026 307493658 143395609 409291551 549279082 236116940 787822263 554630667 159150118 24143316 89596215 937378839 662211949 454040539 869392609 33448662 970855108 726470665 524582102 46287686 676010365 327284318 34731503 543779243 708822973 241245885 304728382 42225198 669876885 425604884 295394593 934832532 518640752 659400645 532311470 316761700 301143165 796712225 265764454 543050370 240246648 823962220 90651399 485479935 154314633 234043865 225912533 775492930 515703745 389083333 948737341 243576361 738716999 405789929 293926967 681126305 249412605 529971969 43830605 629465272 833942466 207032976 273727874 33828078 595506262 655344662 42712724 646542614 655593262 382653652 169056285 189602227 305855338 465167017 719350651 839452187 437214038 622973437 929741130 591749477 724151420 880607393 758282230 289676933 111315833 791836265 59749319 197690441 231445297 930615264 734784876 263180302 275102971 655677742 287551781 411520177 607908681 248343709 703905749 181764214 601554537 317819882 732367097 244591742 912228904 357651353 889134973 390906273 366457174 561112691 182426431 29099281 715658697 547854131 147993493 662610286 920409894 316336414 787770132 291460024 575524360 380039533 430325915 598444778 71974114 693974094 281217767 179274480 154012120 131008783 822063823 672331054 56465774 702587699 871908739 626978512 424455613 63621126 20831209 460325886 659730322 948544389 815939137 461513672 426855251 553969408 340565262 593820589 906561326 457119901 680711544 60535755 523131899 397301291 486046486 51365921 242775156 178567749 498547770 582353507 361983305 28897340 747299882 341800711 290585341 994506252 380319091 452773024 673210867 993234536 632769488 430583546 732982154 191072527 618620590 631140941 323253636 388215633 187460771 590800516 183169949 448287187 24510556 704569550 365762500 854070870 13272442 612557668 193759823 875207943 595848274 672453104 922567034 74071270 576392839 743620505 395007786 210548147 578556962 940206090 76072658 682530693 635082316 397039733 512578989 431117347 961377210 703563343 834740124 821685143 937615466 582304762 685492098 492328931 690967874 46020107 571895466 787740138 836349709 105351838 36509649 765909471 818725415 624556607 952642101 577563419 147817565 201666107 881280232 548595661 240296524 551087718 118277529 214267406 578084111 135105526 104262082 676800231 492044912 358227369 361096480 150937880 579944380 880546962 508561813 926191148 449897556 144408000 610619659 400786186 4185607 822016 777092812 709986327 492164477 255471562 641224304 276021678 448704266 896009564 70919941 133752022 425532447 19157031 809707942 343255136 834927972 53311582 866961883 754491305 135449444 722811495 686918978 247455882 107120243 360899411 726759948 517811231 419544847 549294544 955656022 52969368 131359676 761934457 343154388 565106781 926256905 820374356 7037450 153279875 196538578 945307866 342279768 800056738 328076930 106783373 588595948 577765967 328689921 451204731 137769031 34037946 331517877 420753307 922591844 748892989 324601791 263952081 269846336 57441333 591261940 117458167 193054578 79830678 945135963 969370949 336151910 211913869 393545188 723579752 613052580 776540346 22125946 534479960 801446039 522466251 622673012 292205176 643571815 489097502 632898832 997888309 166855544 426935450 886906258 385536676 7831384 916129269 858490524 612333805 820746056 789715829 637740720 608738168 896663065 26241717 437518190 200788394 352318483 612574346 685603707 978100295 842865510 116396930 73324095 886215268 240341468 900444514 823577120 160974640 592726166 597898672 741354489 37350864 940440312 402798096 628473671 653277555 383296074 991792152 101036728 829003047 209578411 550079452 789972705 902363127 816726955 244967104 382771656 305673804 337326244 295103657 856627707 605236544 64627476 657982096 338678501 68941678 638697951 471586045 617919531 210805460 326548128 151911360 168270673 126790109 651058662 437681068 273351988 207883998 652122270 204313142 179457390 501868987 213284266 624143332 426335614 747425708 101773992 674071852 824841826 238844009 53792134 790696094 286586268 267113336 541437242 674619484 206980709 146343524 195357455 272658634 886668401 761189556 178519032 529216419 942362206 479457114 740985185 270085366 850789056 829250271 619043047 524026663 882418248 458530594 921946154 485222164 195940920 784313933 420709265 690429175 889497462 313368030 229725836 733929147 170884559 919478406 736745053 579823087 190129412 192304103 575914403 379543272 850289051 190388361 945635854 33112746 329683662 21086427 242701273 676711637 854092807 435184384 561004988 2532278 367716992 814459301 613094692 475768022 644754438 77807398 8874161 707646231 768811214 663918783 482850023 226562977 648356354 365278724 459950716 795814416 792674924 301323400 469585553 156071675 178750459 112771548 368649578 693294595 851418335 838893093 574079545 99885175 538626260 348652468 670446359 353219740 166976207 991142846 29430349 440504862 869413535 69676307 236767130 354723413 985226706 462660467 896184746 710427703 439542327 560725003 950193703 873665597 454568029 900673432 406021786 6102893 94197729 314086591 809504124 53524881 490975148 936946139 222847829 810818265 705601823 746598324 460297105 489968429 830413791 341368291 654025715 380241630 546631981 931098791 710855138 471433678 275519276 539932227 680077606 321879171 837013789 65084935 768853194 982288492 738497719 639500999 872850333 316859702 428612465 199617023 768034247 744762821 880563453 53814570 700374489 73718485 982375565 135350981 472187013 655313088 286249179 691197726 595455412 868733274 985254105 530181222 831794222 357323024 940177692 520875533 161257786 56909874 55945647 284506664 768546200 604986233 108164356 530678980 97588954 910038677 413273326 720292899 459122204 486504269 52699759 943001337 665940198 141286110 622279474 706478282 332340567 950070907 697417458 388333776 786519786 200500158 676414355 788526049 349309847 530551786 7014790 328110142 792512194 202242360 195302523 907110447 935856316 38220063 182896843 295659347 602500819 305406173 976484421 632991162 705157293 692273996 535177587 292515262 925344558 479159066 854556197 516194167 942001051 819696458 888269015 309255430 941642201 34615457 590879374 111062298 286343327 693705521 461252671 905279057 952248425 783240378 571969089 358640597 967689964 513812890 374884680 502550025 623781943 422456003 804611446 7693212 777868966 754071315 469217349 386526165 517890203 705399985 298356114 710079429 308729372 566339539 804877948 113122305 84799890 636907379 136741345 532625549 684492294 879698636 839892235 442292039 517151780 432635415 308394853 269974040 571871982 582866116 710532509 825519630 551215538 96497196 741957282 522551914 99759711 657041226 216570533 117327283 352916221 198955400 986988954 303076081 46492650 266866734 814592715 352589828 204410535 657584069 339984844 483760050 269537527 760868884 678033880 473855760 922177552 238983180 527917515 962553059 956913688 405704217 959532990 723599029 151894589 795951491 948747695 79551525 819137991 154607631 733617326 668705894 281129567 137068372 497347468 302285568 386501792 433891448 421488632 627990219 508074047 552843360 351106309 454769880 228944149 530799894 254566042 991915670 703564550 940298653 728544697 973150027 860267518 645097969 45385612 723698310 703219605 562112243 67531511 982158870 415870041 90572746 529336819 461937173 173686839 190454672 40612026 985102998 686703926 939788718 546008620 884411492 506494935 942892376 243704076 745441638 701777304 714542981 411114604 491252822 860581982 192310918 990457159 77242832 693902515 463159041 580247532 257140610 342964238 684328437 551424479 681116572 991245847 5322675 911516119 943839454 457010869 265074278 453952414 640175172 962059680 692600425 430941165 410393832 477755495 664573652 259372293 963812643 244531728 778576638 326834558 584346698 523637610 62932910 697179368 313971291 502898417 919481494 3649815 17843509 883698979 554079840 401095943 680945283 428208681 634073273 770403334 121154694 149864753 830443131 289997024 157055330 695614777 993804159 627274770 652119673 243742103 631986993 571431723 263145165 419179560 670633158 145522961 600712211 724002952 966840208 421265254 914532268 408809438 145552125 239092316 404859087 199430999 159947360 55831931 666639979 951774641 643380629 684489483 81338041 95612470 864775003 96954451 537100269 496071836 514400295 856292104 155254685 776060680 484790098 849632009 547670710 565111829 718582902 865900934 597107461 285736934 976182959 232382009 446107278 578286977 828410650 67367067 511131206 879256182 173268366 19338163 327346356 18498872 792419823 206079793 59347333 879727279 420140318 182010744 514211290 391193998 167527601 909839907 617655740 510044848 983348786 741072718 307300551 86296980 360368806 538342312 119046602 137172230 914010496 45363641 420924099 183535890 656854253 177945585 863440026 59731160 196735258 875761389 126887879 983563969 499009888 897688586 323949859 171730723 181625332 316777651 72434590 261473455 548364712 634988161 893616635 697991528 925047177 375735603 151306657 964314513 863104847 198864578 84290945 215309040 232991921 592517639 500291193 120368234 500393668 2082101 738697284 269712194 660181842 427475089 172219720 204771427 978848431 428171219 915194103 449052151 873785294 949990806 481374687 133051006 593563681 840068956 454161268 836463060 329252843 710532768 748634195 532438104 927461355 153927253 202288368 558122259 203959090 357212263 538095233 932435204 949937783 971084732 39963938 314084690 4236121 417507671 828396676 548932372 474925031 771780564 735321019 585611264 506947682 676965103 441755617 775448 71046986 345749933 811389738 11224943 88449304 228531441 988504038 499283381 752984705 319500487 858962145 271592576 990358424 749154079 176107695 109485816 800379211 948865933 334115521 291065259 204879079 965642087 677478230 437587511 114887457 190049209 317867390 119068218 393357836 857360830 258613490 486839036 840414183 488955579 576526208 512859333 673885959 532553808 216227687 877572885 808475927 25661074 969335542 565619003 229833958 436691890 374482212 348427601 420520537 361501556 982975519 731747160 651759375 225458906 914975821 551495374 359039248 293043413 754835593 317500715 976691668 293295558 720578359 133292458 338422687 455429947 101963165 134824451 480060305 936990470 63111659 957948105 570003617 910005270 787666696 124194467 793453225 97228912 758954860 631531282 55916918 858754760 273039747 350251472 848782027 776345471 349001309 452151405 32108812 236342485 733500857 161994765 471092963 526546457 363573357 615239122 175872025 119304156 294903427 650770129 435043959 278801640 782129554 895882018 294649262 845959771 507140516 937918959 326723794 729897172 244674279 290695795 989790716 973774935 694611380 715796559 144757451 528995691 170937125 532114293 304731131 189258812 728955520 999076023 792688417 186837720 819884742 462687073 264282728 713663019 938962519 273962985 394122369 536946865 815833020 728423164 421567262 423788599 395739113 518794552 401291570 488904022 635713241 479028967 918468882 496438534 808129048 246652913 695134825 568272640 548461359 998289787 776553609 688148917 198213196 294702868 394940697 857346870 275624331 222439203 129390511 302339179 228123329 930513090 538825946 171543035 96821121 904152924 956131271 942323460 601530503 264532972 841715745 159001793 809925874 505792276 517105210 914518643 290983618 932611918 886330552 290778694 842851993 633217116 934576932 121651735 478922231 578744181 448211781 768971048 418665606 301743629 716195366 607491313 769404288 806599962 956451574 304804096 808987144 215742297 808314953 11037970 140502667 444588942 151473463 937655528 379549718 123065931 866751412 930770102 423399195 900577909 947472185 736794783 545288097 338321171 9330270 707904680 856457039 146735154 977954186 850142294 545146951 788074726 829605123 842960868 771958848 527424726 132211477 17547985 889063451 664131028 181118541 59760764 462795034 432476838 576050610 247474572 220110693 869855820 61572177 463375661 717679904 552938726 422858247 717289840 252098684 152785978 188837540 114282757 430898774 942523749 967677276 310204664 524239800 915593136 771618627 774286137 766894662 912183554 464503622 481638967 723134672 580769376 413599354 290589488 245758017 555847909 580794068 888668944 160713462 366844819 756461493 189950339 426178962 101753483 237746515 17323628 421605201 855341009 711136490 606222983 528227568 536020407 79262825 914749478 843491272 875433431 531351850 998937625 887509666 961179190 598406288 645730674 346081800 385208637 732438175 638833323 747287151 866508433 621826797 208415717 537560966 535128513 495344799 82170025 404848698 965964992 815006311 165901590 981241068 946780595 475770574 39069157 841781374 169308220 778161101 822869487 97138383 288323644 389295340 779735917 854886610 834030519 648379697 321223912 46704903 58977123 910007618 397472729 53809453 682253062 487303314 450855927 523931510 738818043 833873587 691575054 865114195 407942245 474382944 176101688 61359532 664818279 896285184 996446963 980444977 954202459 740069468 355800144 644783188 535041370 64040321 746219807 37134394 975503646 914167589 53416137 309489391 912019776 560352972 130847759 373776246 300185470 701394853 42066677 349575042 245248864 803363751 228735582 833236219 539781190 20164759 378826434 147936552 853964866 107308004 845935754 70205259 639362117 856523280 871994900 66488252 885732463 122192575 471843284 642177818 63744970 30285727 514734666 429555228 508197344 874895867 466973819 979826737 906439151 634472340 970474909 597794256 707158057 281725584 552871537 326895593 335064652 805506883 986977669 988812893 237636536 947115770 950011804 803025998 436070934 541504304 753765793 721126415 338469754 596715277 518675462 423849620 105733966 744070482 538992437 609355644 964704745 52016689 879353005 190335610 210441459 355020433 414171118 231057036 646834213 61007679 388588151 805045252 748650858 866088109 169502935 717753025 69281945 916219293 794040725 771999178 477281847 71455629 719343959 150332337 692092329 189165971 512967452 312096592 792146046 41938957 637073648 343615581 257707636 840398147 723035574 946222000 199629602 145703072 431858143 564122605 722944583 565491155 508605401 3586045 390109310 560731199 181290254 147580838 254187461 241861311 118310081 503031356 62473447 109839159 237675958 703980379 413695314 124652555 80972486 436944349 757742860 682288530 960704604 816043478 805405189 165584618 505567487 826567236 290000002 63347816 593125280 346575164 834077364 556130722 764511831 915396388 913077773 711035140 196793855 698460392 572177139 625985132 889320174 991066444 143361824 293918989 338241983 376603170 334865543 213515949 918264120 316622352 627263921 441335144 33729793 57178222 357617674 649479792 369040551 675249117 365373621 142772241 999374486 866662665 866372453 124405523 32864448 829958104 472585359 912956590 948750085 417445921 185925501 453693626 174389869 305300542 681459814 770333072 806349716 988510086 666612337 306326054 786833272 459114983 937941545 383003857 497380781 862838900 193889828 370956993 168133334 739243876 315610775 534598962 805844755 505445368 571179333 49185004 884267776 839862684 438214460 861490044 534266233 211336020 480506623 643780088 972542034 900392144 35051962 734194524 127814326 753424113 204037536 518097879 697251908 877727178 638799295 782484035 674789998 725384944 435492684 238659372 126666598 54909301 142362663 82205749 941557334 917975722 939130230 807982399 721089385 871607058 465780143 752231251 313490749 847477385 929787046 164802574 198749413 15378616 638306417 481760767 518023736 781780232 372923469 374564920 281653465 642888207 630648849 918773247 552414525 796897565 750242846 12770321 533057255 834561427 554499659 335521610 500779342 752934603 142547425 255844792 397676924 673783355 167429392 929385817 532836769 865503811 339630923 808012440 893933462 399670975 974180338 301473524 561281850 37950495 476569229 241113415 803260548 903220461 246784503 123476704 410556992 660928014 78691918 28807222 488632066 423512350 286171887 164486888 171984313 736100743 412331442 595810989 977463209 573683417 315925158 65719117 145756239 987160377 566910898 481314790 835237753 95906729 678510196 841182450 616573821 981571053 58856805 429926440 554491180 29539147 23071737 504929404 89027500 130624642 186795594 577837810 659176832 778186065 794053281 256232354 269800675 132726887 487179775 653956814 141993391 551359523 792037467 399072787 297145180 196690888 742149723 392300536 547815560 979675970 873966654 815464899 443715569 290227370 256373048 780422489 87194552 353881792 132436128 222744348 898078587 515947597 39912423 966755296 938530270 504282589 628064090 684218138 955014274 271842458 409103455 917857243 66812758 445765938 851705580 102859672 28923429 665838587 885799166 474367973 6453262 146751788 66516488 104336273 668867879 4529309 709985050 120641368 804998387 56788094 758963578 257402931 326993961 320904605 300654100 580668077 351111816 634184371 117287984 266245322 905421660 163206714 828775905 540558454 943273301 432193043 92420093 513350698 878450381 845617331 594174845 293706598 262903925 436991091 354932634 615479228 438809607 262618319 86137288 151385478 487716635 888403276 786498363 344632645 479400524 939650553 187321086 965663649 876850763 883412457 990500368 204821585 852265106 138364694 195608803 850055385 731204475 500139924 435426239 850486931 471717487 519348295 222863485 199684662 76179684 996516748 250335972 173555168 129385209 322935361 983285480 283641212 645936295 760163470 135864156 436950180 605545600 652621982 151702607 533870195 919097817 809650859 320775711 477989193 985700231 657929571 889241142 32033760 996999702 429069742 105918930 402755033 362046177 93291334 819392675 264731227 91430709 145066588 889736249 866050804 3289594 575948565 947582319 626592498 655278304 500466144 164781294 383498627 447027613 151838998 958046486 541314874 142715561 46202164 87488065 898989165 77079801 981866847 961952717 687706536 712375791 338701679 366309853 156001137 198511557 298871614 931234276 884585751 704879717 820246648 180778716 719046220 953144911 848085228 845059594 362442499 827475347 307977636 884991915 888414189 20609382 401339445 881898826 112486212 386916795 143396320 592536577 397816120 603339911 865202273 806626307 557234241 485525271 392869016 244535726 621082412 716334931 708789350 236931228 170861339 190467460 45509965 39624555 674879086 952758009 349709692 159173952 729765986 434989052 678125913 205954735 906341279 387336060 561235572 839464424 406636384 694373170 150109074 896891289 464692938 145120184 575841636 888898576 114989817 749600823 199620148 327397955 885381292 174119396 146977447 235622111 611067691 27308330 883023555 172932747 785778160 455044762 617879256 232660224 74413104 49667734 918457334 175351427 368166088 152526954 811911524 841209321 119676349 577449749 175577108 498229049 102948464 90320135 141065934 667019758 541102737 891265987 881636285 3979947 229252131 914030892 130249826 666809732 867479495 420668804 111357963 881754245 795762453 503872581 594582685 391229129 466498618 437358987 172020072 167194942 543980596 104013810 704800636 358933848 412785270 375615559 566417327 644010254 377976956 958148490 51890617 217666732 499149031 143640109 472113190 855210603 176036241 959900337 898374723 72492063 6909158 19635385 154557183 639965549 835104646 184237109 715717319 291389278 70878277 4575159 240431128 132115645 163931175 169340514 999754332 424374037 551765183 630486915 915160217 891522376 351462188 445439182 643877267 463791235 336375118 96767996 212909451 869842299 353165468 266753437 88582740 983470376 174361263 452925368 446423559 837701789 68930883 644632935 493175667 862785392 275189649 227490555 495812001 514192318 510183461 647160661 63780669 422615950 206152474 708585058 4859164 23231970 956753336 348726265 813793865 120074632 922921276 457455711 135596057 993152491 120089206 732059480 658643459 127252980 583677520 421743608 661251549 637680169 494179332 863665340 406243064 941266461 430396352 661258904 751401239 844782425 91466744 663668265 532820696 491113665 893809035 461324474 513780635 689561131 310570908 547153477 641876636 572455356 304533101 34276441 786500528 477476790 388595563 477007346 5862531 201391961 512721880 707811406 576580612 155628861 204532370 695027309 245658844 521195121 647975497 543426869 176222574 392263008 181504165 747841285 667565394 89427775 563834378 972076036 961817868 232423681 278725029 292202097 841917292 167716453 924596569 812343800 79921926 272940113 162830577 79265590 242554515 278222027 670056134 32996430 977172545 381711000 3534597 636644956 480458703 130793574 252113122 148942505 632375860 721592207 423863216 41892819 925579220 353423153 717461062 841365160 469482182 456993985 946314899 928661776 367514190 610133022 779734229 51179377 348055034 969892303 261037304 98557483 818922739 879958544 119316906 195533306 968097854 545440902 837202678 687137617 964644281 614760303 694727832 713116734 821764227 405333180 287838302 105894086 640304945 585730815 801531032 948232148 315535793 816636254 660153377 799833015 687376606 552829269 496739962 685355148 740722324 135983160 778361941 888597013 465207494 501128029 619763458 614590079 725221315 642263728 229473376 128149103 514368604 348336373 249829955 721392123 137637914 132726543 526846729 736009237 762618886 273407208 760048991 667086039 708287522 246817041 496555584 433566211 807125336 709297703 153809684 214674850 937251059 139512486 935336254 806859650 774572831 297303798 853337307 41706428 711058783 561148531 486328138 527682141 476523857 374852361 601294698 152440256 852396568 531995975 599011736 476481030 919057659 639422879 528094146 71377617 918072006 479464741 762272367 785190231 298630402 411506419 659500774 489542360 760260414 144735005 927010651 551271498 361434326 969049952 65855114 890801999 843262292 350831056 147168828 158908108 561629908 476918590 82253416 948667117 147378987 612146105 438959105 449556632 624877736 441384659 893896806 886262179 391893991 362751562 88555619 517949654 567372802 481402191 458740548 418057854 807239287 29226573 284658638 694765475 943080882 55380237 979260014 769225292 924645312 978191457 157623249 911658184 668702651 785774145 672609762 578677017 764494269 922998544 417455229 215989715 482207947 672302091 990574191 577497789 138113440 423273455 605678871 996043893 831043379 579760660 19309699 933155087 122260283 163973937 90121979 979267031 588079642 664076643 302414823 62886812 515965006 26198712 455271799 552220964 850236797 882895235 885204106 514393308 723266113 118740791 101847060 410665610 950928562 626124798 383322488 60488632 457146701 566645102 398317074 565262400 361454713 722988276 499683116 360462860 496649083 660440049 143772953 272231114 807849667 580587928 64638604 556870256 27600879 18775894 525771420 890055392 951050670 176122622 312815065 464522870 5051567 684372713 109918889 369357084 197003489 263744512 382468872 389811930 223329193 779078261 590085004 521727690 713207955 473756166 130661483 387800127 315466731 633853246 591296613 211575826 263451003 602890183 589368555 327209946 389321007 12454286 198317717 313907862 54811080 135324430 337872775 501411170 526512866 870127249 865315486 563549766 513098237 516931670 989708153 562184800 25488205 596771566 490415085 501179102 812691614 46342981 961999680 781638564 225110731 944799303 906013070 346612802 220845632 718695723 455632993 508023150 570146411 5483592 818751981 758090617 827568187 262748080 467344622 556117720 775951417 713422019 460204567 718590790 418497481 816240784 812059292 575477118 941714132 37448531 642090904 625263562 199550766 588356558 856359166 596072204 950109457 175721115 983518353 500675505 356906012 391302295 544989439 228542529 700188530 254253088 588100947 912597426 664578011 975891772 189311330 767891219 833277922 58248056 540732425 976168840 758855177 464497636 540404216 268785502 873267287 848817117 242566703 623125846 563322448 819273908 609329674 66077214 974310979 748062632 8691228 363923909 942342088 143117235 737554847 251167363 317123625 245054072 220129525 593936731 617265693 679818831 371434972 28300374 978602031 497543655 807561786 279250263 525502155 273553712 377113119 284733792 954993602 363932351 114214419 317531033 433962991 294987077 630583372 9160456 572636139 436895188 367215755 86797650 2930588 15925417 82556181 153675658 316678677 249513094 399918048 279027951 307058740 908548919 198558274 190060039 334049040 872257347 153978249 892823361 895261905 586896319 819510994 441658271 122024012 207056465 424243568 121071239 218793245 849998863 918487279 561357590 424795670 441485151 533101301 671792867 901844860 276706898 520033823 79666436 906447755 686722494 256067782 820232572 399981070 769045548 228802628 492552254 589222313 513658616 626352643 884633410 655150374 639459665 204065347 178024388 178505452 159871076 568125235 902542199 951699227 588969421 514162280 904815429 570106265 981762693 29699342 482301938 47892157 136855573 396963184 440513614 482120348 134881385 745910155 405569673 148626201 248401925 267358906 828497849 490923434 872170175 476888738 382789420 243792095 120719638 740645832 836843468 72936576 780072777 454299336 262964374 99419446 373101773 288696088 762769664 302427100 309591530 552982435 43536456 333507356 938410734 272284468 766135800 976001022 678021224 572216600 921638006 900166881 947618262 677938807 403427684 379630242 97703707 439719432 269197316 951983136 394041576 459800541 296749322 982178235 375517078 661021943 992944528 833052271 356302946 87547396 151453243 753039320 445390426 736044202 304742257 407362515 752452229 500516728 952445544 417279490 972894576 63439741 705008846 991787527 469777698 256473899 307955016 809933844 548644212 501406631 896403742 151859483 55999629 211579322 793425658 580566843 139196644 66850419 837966090 984105138 218097446 997147847 717543704 308932013 615293891 227620381 209558441 357442695 378102438 663160520 680136273 136735740 217140936 800999535 6491731 938969031 928428848 519411190 498151005 208989665 76946389 286613765 421915555 767571948 841074267 424056269 928717300 208653037 583393534 731410820 463938229 740790912 786304916 400305721 135208470 47628321 740124833 610104636 3058697 361959691 652966923 804974460 7645230 46708959 498328450 221937879 617729840 669331174 442967365 718313326 189034253 254148606 944542411 289235106 399926221 838621746 287858784 930942088 593806254 698360977 54987060 481788748 277895232 466198958 183006753 231627624 538667701 220593501 525497665 886817916 818444747 575908862 60195748 382129539 42155166 799614108 345005741 887969133 880945425 814114987 382513622 509132011 52927521 703975780 514180632 503087997 419614550 621282224 248953786 172366270 739501470 496012864 405873460 608342171 866091889 800241818 636168545 321009421 664631875 63701244 273853913 129401974 973577616 429184632 976506840 795401749 776765627 820279291 590979900 694662541 795025518 320865159 181469141 593686380 277896286 96919365 415437337 235510151 63712643 70396570 466955189 400883584 287305046 561141488 574407473 964289123 952332643 9451729 216058644 504938580 148823615 626554478 72305796 130092565 538648808 814095215 882870683 244841542 186721100 336601094 721361946 870580557 77104468 53221326 633563894 377134805 464677300 350073858 221073163 391004932 474742450 265059641 704471167 151704666 301068027 748215949 418069265 333205924 77647751 703820631 448221556 961189190 7983533 971008272 164027164 125102119 368497837 589058177 704545180 294939947 731260498 318104894 625349937 643987943 284276762 781521736 602134193 734582835 186774885 866148350 982760716 751060601 722789277 113761542 216027616 528856478 928028574 561188265 416535464 649538656 801728328 412857686 452212253 353810884 521587834 876460826 205590512 589894612 490914571 223771711 281739859 399875024 317577180 63079828 103012749 116278855 604671761 442097371 9326384 998348466 255132552 373317065 746202605 984913076 400582332 976046575 917384600 35146495 845145898 955595265 729512271 635644350 855770152 867291575 147148283 825872699 436723561 505783838 386636403 799527111 815677897 806456314 906440835 533121725 587777582 781185639 730401964 549095947 522755584 710064970 64385941 152369907 896042797 45234454 20870787 446881382 150068357 501341693 374894567 547637766 347673989 858376130 895640107 133707198 80042682 501474467 645363668 40076768 488951090 200815790 185051208 68511223 241844183 559751130 942135269 32861122 222466996 662647614 372172536 409171918 929644702 776734693 538378469 379511661 290474095 304118972 209845936 39994001 532118963 50239917 308967835 300878353 887262741 541843627 437141593 962826089 181742589 227249310 174228084 307192810 800803321 70732492 840841810 405687999 998300163 362943828 352171119 912014036 615164400 869167120 851900774 635840307 571570776 612283719 718684861 762574266 162098491 111456570 216105885 151953820 494906195 366087608 733033932 746839830 195934357 791039984 101868967 45304933 667425074 901204670 280265408 36637864 39867302 126113070 678590670 789008628 346355750 759519938 538906976 341722333 267744702 18632584 342705823 225183177 379889031 26382545 17753613 175380281 398813975 608688636 667056681 158950836 771981988 447765124 259933236 288940602 85848019 391454867 969171991 378990059 326491927 457388743 973764528 6184037 157439779 846897326 773197928 383867525 769676975 171327281 22466734 746559711 874370051 129859299 728225113 114892652 367034562 743111456 247653876 21987458 101505230 105357451 49625775 625833222 716723350 56985092 40326932 209113647 442049199 76125367 614331772 527926063 908098162 941580182 489124164 568425479 334982536 572802433 20655840 601814060 550743667 158986248 373391719 561513657 544048531 783444938 851043823 281572190 950809974 547064673 624242867 756080266 266014657 154503278 835112292 911572081 154027464 675915490 994351487 947277746 659231914 793347550 803915004 275964721 214847071 391074517 756106295 636596267 205110056 992371820 626695094 34036873 493480729 642286739 982381215 92171677 519990342 964341473 624657274 501382463 487333858 722203663 888406793 84081825 209474833 377196426 774016780 983672360 379412819 482348482 628781674 285587751 71871070 811869579 456857927 539601696 766520823 744264384 762546489 254054260 267295721 129531543 952984266 255284277 808037377 270728639 873932439 695944 186293307 817442480 366226325 245320629 639256740 422496838 756071499 554494508 445037104 970032728 92861693 817326958 725557308 318263599 825309793 742315224 890016993 781786375 283884886 698633556 43630581 972270059 432881663 433832166 173325253 219166322 219827582 184411762 38434726 730949234 666495969 805157487 1977852 433044790 436661446 396885124 425515071 121285866 220623288 373679182 127764086 779251027 99478205 868007778 740717080 710826808 34886215 578078765 88158913 195827882 901360408 665934745 211402199 160407447 954713692 289664017 696976185 815322687 741364168 625541606 520817550 725286684 150274320 43608289 195219133 224429482 775847361 194457381 124474564 418695257 939847831 690240794 401198429 778152220 922079263 316588967 511765962 438816134 977191050 418840340 16488331 723464900 78869481 716493886 13955461 700637053 910498547 390892135 216426051 654572688 419971379 620734228 251466148 34109703 561984560 680426171 172225468 397150332 777924387 846631100 886637853 345452791 191444597 242130571 430241383 184114191 875437973 372144568 397076740 857702156 421431900 312833342 663670384 782531740 439760360 237590727 77063838 88761675 698757514 139820180 751567903 228014020 634664416 212158217 176176073 301269430 801331414 587800071 139020624 784054408 637763652 224319413 900494784 911755628 983073513 641601168 860774416 734402204 318099523 154698351 728787920 388422383 86001891 254189110 676480549 30257661 987236889 528981204 501173290 612320382 756093455 137725606 729160583 323847249 832762155 998399644 626570385 982766533 560568105 182829635 389271611 703663918 292197818 5276631 682677715 364831561 442294341 939789943 753778575 769778872 981891393 77747438 323862277 414954993 611343167 541354114 779907951 680789059 367406341 384769622 478451491 34704878 484974255 524433470 342407607 239678545 471274491 112867927 829443925 559522411 193343452 35559772 941679054 269990833 981538897 668325034 49253736 837895273 741737889 787355900 854881854 347361386 710667870 713013330 541677583 589838590 723936377 312346089 258442458 513098026 407064225 725733066 990103666 150556862 339856144 725435641 557479410 567065737 374197956 263534206 79994990 995476922 386929192 730608080 886770674 610654359 209585664 542135794 503384341 664246612 139155494 705268472 668984101 240442360 522173289 320739997 806183806 763406258 797511098 529642798 699750969 242480328 675231424 171900289 953611412 441285669 925508560 622508911 669853119 851937931 394989394 996333286 85739711 592482575 317259827 239757750 281474339 55562248 520652415 929550599 973215550 718527583 144794595 110137628 28007485 520002336 11907130 779474956 126211396 601619121 581672866 379650311 255101688 406885470 915100286 679655708 1189768 145408058 512317280 147036736 644669547 1322280 79039624 87699780 519503980 352226363 22474139 381028930 829176137 562968781 296422971 972567635 565733023 348777850 150157421 669173404 217086138 106275727 408812702 230164968 98248003 921879452 50843231 647449410 431200673 769500642 271218886 883285051 511577635 872213494 130294902 712984632 122787389 619438524 819294658 898944736 691798874 148753053 671153463 788231599 281958375 163260673 884033042 507535642 515169930 640651810 669484153 574621767 720596078 168088361 59637409 555427832 724958797 590293686 45808919 876823726 66620743 447106324 227550369 622854430 834307703 566267648 668394937 353848672 755832270 461901477 397307678 587860838 761497023 563390788 441798220 933375817 585256375 234446888 818992935 37304253 890736682 46790916 102245882 150764814 140883777 791137964 365441215 447631101 789955774 14253624 305455138 889639023 456936967 241408923 3685155 568099862 520449178 572537388 346837928 814874392 379057947 582783809 300085169 40903111 805746242 583518508 688274035 355878075 963563527 323226559 540600283 857765250 940391014 393734818 394207193 471535241 849414339 946725073 34835492 563801121 167464747 542234795 302627746 120327958 974074660 259865436 954638192 204536126 489630835 875828932 594723190 533071106 536365612 604743293 493754455 155297451 743865123 132418321 807893178 711660928 266933764 48927682 338700494 676959237 228000233 227971636 871620981 974283310 457234791 252183959 644677811 275539706 895456026 527260590 388684853 606484816 923382112 316966535 566698847 786897315 743749256 291009510 822155248 714582487 18092147 825154936 657977071 765542242 372337142 511753498 727460322 410528458 262111767 349002454 88438261 650017855 455331910 198164491 431426611 178756060 237440465 612893652 502286529 454240770 155154021 972898132 424117954 172863301 175642561 869534775 728856451 121767419 680418425 238070285 528125656 259460473 874304852 460148539 214246991 435716140 143718886 220933289 416470210 64025525 251354491 469676642 459830097 929435605 280579836 415982968 618375198 342515214 837554280 919186301 439847010 136805455 467486167 342493710 166276569 340874813 938590458 544413511 71012980 504539836 489563316 961463317 869496805 459030605 264743490 437375236 889765672 939486156 899456331 262623715 44763663 658986958 961305093 24694709 523887779 537612835 338498671 670999988 234506816 675071464 161745736 56535862 151575501 684698670 853743934 318375209 344920748 256276441 656187192 240777908 460196528 111029471 791545234 172087426 370632587 722877871 959150602 132240931 456847946 395187933 698520123 449741382 665385095 326167430 549980571 371714869 22545436 4997826 938570534 967765840 739131247 748399776 241749045 198097624 937310356 576824655 971563491 664874286 417645740 108837588 956445708 966800388 672400260 947619035 21375495 358464661 386000420 240950818 875219182 480709891 389605055 422429027 419020993 230831198 532748043 70706275 661708331 973751314 442665489 550849577 24065483 915324554 74000806 920798932 272507559 966774037 416998351 552903252 88932288 59088595 483720739 879850143 458735324 142249543 472086959 808551031 703247064 675323046 200510300 678196795 501423731 208528410 508991104 707527177 746152007 85894453 100216372 771580263 542171982 50498280 419809155 94977939 741676788 917149865 599458538 16896074 212154121 685248450 483427963 378750630 183743498 758835548 67162257 497429188 307883080 645678723 923274101 350268753 330513885 331938066 659015737 459928442 186409222 774133134 412480950 126711121 478579698 234233093 954578319 321967650 599038827 602439893 914073141 753002568 220639247 52449385 404788702 975122514 603182524 962250397 570732761 695231397 452894052 163498696 419091497 742729134 571661133 70700174 993172127 582565649 768231233 650264124 550093906 570551228 700079991 49893814 307757887 528745467 932090324 354270540 601973053 528649225 36997421 548564070 374563288 21460311 680128485 833496502 191398246 622403681 581567325 128637350 526924719 547312493 783953900 267538114 744038878 782634603 688803515 960804830 855732300 609946963 163790398 361931983 315261665 97125032 801976305 888992543 329217864 795499604 407122023 706896924 896793741 953980975 390829248 641191416 809042090 630767751 133826010 238443433 23265512 682825172 403487119 926837993 929481025 882361597 462811539 831508503 209078532 605097343 154006723 89800190 529529415 894819183 455235862 822586951 563096317 771815378 320262068 815665088 848011834 192333396 941758642 25894030 403507059 844690171 503093181 180734529 578177976 930133435 741335760 946749388 322033990 606215888 49895600 710872083 84260614 946432890 412389393 649442923 426387997 140090497 185330114 772011010 767616365 326166150 181240032 974240499 819574486 155117929 266423901 12304251 954508267 666352551 910668085 961002796 474566889 95314240 23114914 833081703 872378200 153917222 500445281 565785098 731087744 964190539 561932763 477420626 766450778 511151638 926394504 770682082 466940918 4718954 516728569 171312612 192618829 765222930 151278598 133791299 857086672 442696404 877348038 418670908 116457225 435109879 555732248 93065546 122963949 9345387 426038347 959794226 263467729 480347723 315011674 776965262 25112826 846028889 621906201 542012628 15988046 561904526 873635392 828670522 118968286 584111585 590274748 300125938 106614196 388563338 397149703 545756513 121479613 603570183 992604558 492038142 633131681 777806421 797195813 702044090 884331794 520939471 527283152 281778213 47084470 251809520 585092822 314755854 262028634 924888525 143566947 259924331 497896363 909435284 89074230 329988039 575836607 699861564 404565608 515689802 512836866 527923713 445787626 590425197 115968238 373199008 754962338 527871165 554197568 118324287 563105447 843055998 180867770 303072023 249735644 436674589 626186664 997466124 323172868 38841927 661771373 769052101 572708042 213764487 574706336 868128316 435056906 485738451 704557243 392560547 944755957 235314157 386126937 947062408 236459909 406334559 223413489 669840120 125913314 714676834 727483203 931189911 322794314 73246088 757473022 247658514 804076907 498298295 86498715 392740398 393316062 463540975 66196970 132962253 549503877 656143655 62957719 418088766 876278584 721452552 134522637 881813046 923519482 31760277 188204613 380297082 411678482 36776993 508667485 36797656 444566418 397622677 682820920 879889916 759331676 772393795 377306006 174085607 988198654 243892684 502615092 941269333 798509987 695612137 167402188 944526829 968297148 87484608 934079864 319937800 519581567 625735443 327258738 391620569 466834167 260289521 764372781 718589666 753888476 988440679 163502689 62941910 133759778 910277469 817983592 599880912 120323071 206566809 976202717 879503981 164271980 270767290 20022184 687249305 944836340 206365244 961480238 382648801 67415929 969399317 560169686 220860558 549140131 843295152 174200875 76303622 314405469 928077144 540205589 319783072 528046952 832465782 308683550 711544511 175476116 582993269 600868384 920318956 337238933 82079973 335613192 800488760 484102930 742567220 348189317 104985053 26497969 63565612 460704661 277261395 75009629 742713540 941166938 784927564 152727373 403450013 811567405 482694788 383555943 134117815 361663288 305017741 480815131 776369560 912031853 921690144 711564219 996131912 318273186 593510692 460035116 379768838 75222740 636475671 949760060 698701714 434312861 995766620 747762557 228823288 420381417 353098164 989270692 290397069 753359077 52625931 922874904 756081698 687326585 548578661 257919961 827238886 325895906 847788790 70705023 680866986 296097190 493337509 692812045 786530986 9165431 533889866 967344883 586534910 570361815 706457852 352805483 6270748 465568196 368213059 780550371 780199584 28142269 735377324 157276820 172694133 255059100 81937616 124363865 281305074 377748359 956846811 97553795 938537677 809525467 787167662 899577411 855261372 910149508 7441436 998011476 551564775 855934695 951560034 164434250 317503481 304555792 287976153 506395669 275003879 723271216 917266815 128165752 139234747 321715333 432547639 561848711 198687776 468614289 477172708 843820217 696900668 124807522 648398358 487867472 880786739 24006296 168652506 867347159 142522770 932232589 739115885 592373409 845081714 736578588 863339043 284583946 480259615 375426686 212799578 475163254 478497097 6638577 97537914 832250231 861155751 253846830 569586157 132555143 193979434 886827395 392013647 177373782 855798008 702748817 725129468 968745344 68353126 85493597 788987355 104119691 406575210 911477190 556680101 88396376 355457833 561153077 929072887 197043599 602091374 515005927 314512945 932237525 163190407 602526563 629495594 407123394 502730881 575279682 75806685 581743884 830711483 780517942 542230875 838267259 570037749 925950526 656233692 562557347 381547108 201771391 32612119 620235708 867914482 7517154 189372683 643296090 36654223 612214877 905377838 396511695 187196463 771731960 565610149 316026805 683348755 336154673 833024691 180064345 894613004 471496141 283942350 468322470 93095886 746973793 235793794 446524437 502874112 751072082 288729305 337845426 600572218 107576168 186134825 652594968 25398922 507250853 348647651 912332450 460410268 756557378 823829618 809687317 225688396 465295456 593573000 492781909 339096571 381565331 324129408 844245582 434163320 516432817 943159392 689095256 275824983 41370994 233276175 230281909 824202340 310858398 210674615 610632516 907448471 164678598 780748709 635845693 683297546 466323395 982626685 986449590 429113037 733100502 280817489 929279670 148284802 358228810 464755499 361648361 206222877 379934169 124824908 651039616 310484009 123594963 570385928 229166633 769190226 565325183 986725688 203726198 347899011 625395563 544472030 827610671 357528407 548981241 934618895 593045983 765978746 696868391 782228820 118972516 496049502 812535981 233093931 843929001 586207261 590952570 364809178 820520736 577797324 183345872 909715331 995269592 358068851 376963954 803444074 692292615 392843252 840257287 165293673 119348353 209940468 42352745 992698381 970431691 107918613 394978218 740545693 558755148 317093332 184972660 249860821 87881532 236937986 126788053 849785034 436069736 384647508 252772949 882771224 39813179 64188578 195369216 888427524 670354312 568827577 807878879 160393177 515545053 417284821 621254662 189815772 566921349 761620833 953607125 275107252 78414896 185254010 653390984 547067504 505372913 113643003 188554374 289235849 72463468 295543748 134123367 243263738 486308501 448034003 60823593 89455797 738171459 534860310 604995366 26931030 928416354 835948780 760089227 435099944 123190896 792388464 202315696 892142065 171249274 676267345 684488012 646912002 89362155 320400221 800499464 812741098 212916147 908099417 832435007 380473735 991394812 143098844 522512068 280537713 245330769 948112041 29589809 444345634 60930606 11122315 196663511 452160763 505076711 923413080 505984347 66973817 585942499 443525460 804582209 998462927 585974047 439988314 846350094 219681320 668147872 30321650 918745701 751868534 719506198 100643605 714634664 515298126 854375701 774977919 484807170 338909007 719508055 433518544 645087162 77234189 78253009 320419885 204713366 967342698 752101435 11090994 842150682 765044735 734124597 486349160 192052281 527559340 643218086 441197880 90433836 661938319 26155588 784591360 526753438 600520682 644379576 3599817 301294499 502220790 776934879 827473485 915288302 765576731 914947172 940101986 934419493 643902853 349718147 368369479 832387863 931142629 334903759 45565966 328008080 89968323 116576840 964071567 506095524 199804607 822928029 999253410 348747571 12497924 36085378 421581927 824288782 494680691 188930312 597370984 772841120 113835647 163932371 803092771 977934204 881119745 370298645 419476822 156913260 33296069 632354527 583271229 513675812 832537720 429248686 501969937 643337633 598041407 179732396 249640268 1819386 529040170 123805146 776652810 848612037 179301129 856731851 112058488 604312393 330447796 342140931 716226303 332402498 34145237 866242248 220691206 867380093 173417520 520432303 500985353 445261740 93363631 108045699 217982104 552284842 263936496 781839664 473757204 494575055 354596901 879120173 79579681 17116702 229526395 335224072 651058282 318231386 836711868 434735333 658189331 433021007 577174419 688429808 281624505 397926444 171346589 603800486 877762432 467960380 49804301 494046379 106178074 699921288 701208652 599510437 779848524 60911800 168454353 299455929 608082623 238803571 572325856 820926072 632124480 559434939 356039975 383105688 71563514 408365580 153138182 593198473 367161179 500948042 418426195 256751506 439664488 35859069 480005705 334206508 424622712 666372007 135974237 688555683 356223871 673130228 322215715 641403469 479558006 800758648 418135883 318403955 983904355 660481738 228052293 790224214 474580217 984968396 416268591 399396374 235713397 174791435 63778034 605155611 503752444 677420671 721538330 116761133 968924915 116318298 891680402 158692428 627655971 739840475 847570522 470921543 609167626 686992726 564874064 562939090 341841173 347025203 743299907 91090615 617812697 473465296 687759206 26408690 704890235 32154691 8262896 947423084 543666184 678289106 729597440 853702047 711282501 268872495 806435153 307708254 342097153 798849959 919257076 213395005 94160629 667976930 988322655 354717996 90104443 228094838 54714901 965505925 928168542 374619850 432109761 915925144 895281334 704755409 459143621 941516371 42380788 114392077 9984093 753136679 367481257 145267981 849241289 670027683 721383149 446204526 312524802 745554939 331331950 519809621 994004911 953740432 729371276 204675971 229733783 687770133 510884441 399754561 489862411 415436517 835433528 465847980 122488447 223810458 91463869 121093592 481827500 482607258 64743878 927548169 188868973 658635278 689354895 31822929 596782669 603792294 12229561 469361208 741810024 574904260 606568510 84487474 756718428 480345973 715600786 818046763 309153884 685778235 458551207 40739416 714434701 107504975 537642758 727928068 653991599 949087632 458535246 570692979 771657682 357890458 471326028 76118001 391095194 104272093 524718682 229939499 142706235 621066541 992108543 372205200 795841818 879882296 368754784 656960601 495483308 678477666 120483643 808887207 488072591 789632594 443320638 741573132 822700643 472209609 561391939 984522110 996006387 666985774 109469136 928182114 713229962 331583796 330095119 189469201 502825967 675977340 986864948 951316942 392379969 819689686 508822256 578746302 701782970 546749216 251598613 664214929 21662679 546306643 64698342 848921664 633422313 598615151 568191712 102041263 932354033 668669076 547869668 408746933 818517103 628551438 100584229 137102496 103831105 489483062 547465686 914546544 37613773 609630696 123108076 637408725 594333078 598549321 982150351 500582889 458217729 106934913 863456424 791391918 147151249 461225515 562489278 338710198 823068526 634731847 470262558 497860913 405058629 905164904 22387171 266376373 100062344 455075625 255322542 859440547 490716118 662072348 674185600 547804131 457876033 171648722 696566121 360123094 336849531 824608878 31907963 666830353 748845474 292061402 149922892 273310792 213329674 916836554 580891033 231679621 186605457 216088228 7341212 572878580 14630118 813926543 666106310 995248564 475031744 764108896 113841074 54484661 806964617 408063601 997057912 118505001 178457870 649718687 14431916 494306508 439367608 61100957 232867603 984428686 316726399 834213347 317628038 375271776 286715076 951670313 964387686 66289244 186603722 467218063 132521826 761416698 745516265 862336818 679966254 208000101 170487377 13875755 348007551 868654957 903201990 17864006 792124337 235479811 433613519 718991577 467020995 30695272 14720215 457384534 922617551 444365437 218081803 768025557 312230680 330663312 780426378 658146372 361016042 917897174 133779126 866971102 30741164 655372697 417637447 243264670 406903265 766571749 30482677 556199416 944391969 917081217 529357932 984522909 140050517 646066228 549747475 66116331 85830645 856277651 99365603 82019698 755939899 398547672 49111446 107646426 189257357 882587727 601666377 587139249 706961279 86604281 368666282 605996716 270811466 965899525 246047810 383030517 626355645 949786920 418682221 225584041 646969012 568050733 826753475 682546757 801136901 308227239 11306598 318968115 537586387 763425209 215071033 618653428 213380513 273295811 85230007 640686623 587297328 699757243 403863350 676171162 633071667 291958221 310305892 419835998 687962425 99897427 554307563 61271655 538514893 191623322 761511519 275643744 405235529 435958982 992894501 144743983 301167707 525024859 943808649 810247208 414286087 698572221 886141001 991567738 92018300 327860018 742542534 513972358 978585845 842687325 64527626 474048295 641519037 437325223 34143816 653033728 877156309 604287063 331623978 813486786 544171138 971327786 451838951 427544864 988530809 463090573 957807035 609348716 985391973 986207559 695987026 751203908 206386562 310678561 831485804 913972615 752314594 151891502 127633317 441711745 887890327 20823479 733213697 515179045 288725492 501032226 733932196 672255966 153162001 814682052 33087760 754910656 391402185 381562233 86546079 586860346 381354140 646876860 133431874 819524541 490887947 963182037 311685469 560581781 955436746 632746758 927934744 750124669 992512973 152832379 304392084 124381551 264372966 154913714 537420327 742243842 661169320 576639347 407784323 184714311 761305463 246386098 805897061 945652360 412792992 896794275 180444512 772125132 880249705 371332542 34476210 550543589 171909068 742788341 813324069 311957514 430729020 58378929 332783723 624987136 512234551 891466354 293077586 659668982 268977153 314556185 614995072 16265797 234312093 438955452 810921078 385313217 192077685 995025346 96590023 326432118 373180308 57834334 216661495 828065387 456623518 492846479 300107661 857298107 881125214 638250804 140529657 752602920 761696808 492323748 432970706 562208523 755428147 133257388 36538081 870802166 74011820 285869804 139004660 453599191 782576167 787576305 871130296 599429770 384787211 760252699 465134773 425423685 795255412 571212549 869514350 480754697 992378349 697015392 267620211 445941105 362571983 490208177 727753574 907314293 974121534 395123950 401954460 537728581 827788353 496613745 843317558 207129168 620583114 407469832 457354910 40454893 576200080 801593926 624145670 126671484 560863311 456169733 742116055 604742817 599574586 13189163 352605979 365741363 741387544 298075065 266202453 151064587 653096848 603315100 9735961 448875784 592541164 693812093 290695422 703694711 593271312 309744321 440828248 62497696 391315701 548468099 393536388 670709618 583870110 525353792 119354378 133882792 979204684 571695298 40664524 761275012 283422307 577484310 73822921 859879718 83241613 895555493 391636777 666271576 332717615 772071874 999951349 500992133 603793971 988340244 143776969 222051655 296772790 564887556 983711055 393549155 785249423 5894219 435633787 984656257 566008589 551168222 48880402 430142251 884050196 279584113 806295549 327832258 512674116 509248917 797333492 31915229 829217442 394429397 106230070 597397337 229112673 71782149 982289124 466455976 445377749 301988989 490528215 895615767 146467182 383376947 614009057 704331790 641655016 698086627 315232101 516277481 675811365 139466866 988014139 552034305 525072352 298751544 148782077 273416004 409675283 906809357 608489721 979656939 484098352 431669355 9863314 570347486 248465061 346500399 850522221 469348984 229632133 351155445 940213565 473022028 643497749 727100342 252903404 177866813 344051139 809987707 145163951 86972110 924219054 153842623 313300791 833930838 545290967 905708561 174280688 442113738 524531113 569892519 464685340 293638111 747097178 601349099 628723120 452052370 97561807 572953045 434589929 97188173 924286859 474453157 756889479 246969414 51014968 449068153 846647347 705935507 987590827 474953726 476058503 43961584 751857872 819643947 244735992 779761791 787862289 371083902 964362479 811324102 299328479 250809402 467509896 789942538 886963045 318363099 957426991 266004459 370612181 461144099 475519360 533008519 475420914 531899312 43350993 947159549 492209950 195881039 854256618 102806830 225963916 912006301 72309475 337522430 319929599 533540085 975713687 925207533 338486943 878045418 26706249 414198077 45798872 677456880 427994855 110654079 310319566 83782975 561349994 686997013 524844683 550327257 214771558 138629837 294143054 24435715 391282297 564960720 275673090 89537918 452815143 897371976 972722729 355491812 475409792 40160180 773958165 536817416 72406516 487774747 891800578 454035639 464475869 663030289 67766329 989293395 737424864 462491869 985135828 586710450 895258844 305745694 931120939 703472344 803393440 380210648 918984524 238433626 594057628 876857596 997482850 289029339 432369221 871306919 537978894 986913017 17217016 506339484 209084573 892399463 360978026 475402017 44840547 382247465 547836491 595949520 293138041 405533619 498718797 525888510 739377077 420923654 938018264 132868880 212184561 351793361 541554199 24804842 6973425 180440668 15953145 448577049 544501057 640104889 384046002 717720716 556512409 602161317 268700105 474036281 789651985 703197772 108256531 13563325 148167809 837971846 740606908 230462334 688621554 259275541 418138870 306649914 166311074 715257566 933720336 831169191 530070637 240784007 38901672 225860814 736070476 145541051 704473607 194446245 881679572 269524019 610884989 227710175 796888835 6740897 122539790 355731638 60928594 967662866 217671022 803091661 139396974 96860600 615449474 442829937 787802399 729289642 220963132 351826488 11638991 463269808 563882661 780509519 20798958 311422630 143632700 278736612 945180728 810314572 188579398 812718037 101705218 455640328 360802864 720986322 294313224 662747372 705998949 894338781 54692476 457857598 811679542 377938709 884275990 926907255 581637490 631842342 508670811 609244426 235607115 585577168 207341176 203174929 672599876 128271632 912661816 389949974 933223018 141804833 196404090 726336538 863970890 457489110 810924728 919879179 142850372 831488081 424477905 865665986 366804954 450993666 785913046 522853335 33749203 735189196 717468990 830153909 465568713 876203760 132178646 226639962 483167152 493731585 913873433 815553803 246951083 362989887 553579979 650716820 884579218 414781269 998602382 547106720 49339006 354644878 351910422 211126318 735547556 12725781 269802956 76978025 594322268 802533599 170801857 574786473 211566667 380228899 187611458 364422745 303088760 894323750 575718288 489372493 566058012 841635447 21525726 843876887 876248560 606998469 938432650 413377156 847743723 980483017 235115121 217464968 992807371 550000177 620695526 31838512 926997004 439709487 848626810 206365455 862672672 672821173 614450071 73719377 675908552 947156013 795024131 997789182 816908273 198925514 324551994 531419051 113112844 46288395 127861550 680941806 547688281 579411596 729398083 664435346 376205525 865195582 194223152 905328680 574184374 664534523 330057651 525200567 259795420 436208194 919811313 316252992 641092951 3257750 853689611 857120873 383072635 567255065 846452098 517264732 140618623 99098842 67972375 664903874 269614904 334398513 316385912 225094113 668305668 107035721 774311011 584950547 556688342 886448445 871818051 211190259 970136366 920103671 326247716 82303267 505990073 948322663 721063359 781551734 385855617 318390037 528523576 15313474 665348838 203870127 885997111 457063049 579157819 360007133 11875422 619110736 982127853 120168132 328513073 579083288 805103575 775020447 220465805 526878591 786729350 210250143 792570806 439330434 438893630 709963148 307022409 249622211 922692666 906459283 672726726 61286845 781393878 719270472 807844035 296410510 137582419 945022709 31996467 915795616 181739908 86197062 771983247 92787637 649512535 583988890 846793643 296552903 525527966 380657644 944926190 780556615 106778842 943145505 802525702 904979036 309295782 764869742 530239150 95679816 228256064 410858096 964759887 229665975 741395058 905281370 333015848 458351653 470265555 153605198 405421963 945640674 600968824 506082505 646969228 898028315 745047119 633464568 311956452 218887197 503283536 755122635 842173819 210226276 373193068 406529997 61472188 529108804 483794703 71913273 989845142 674020233 696627162 967356337 493901018 688062176 782107341 29125357 481030839 590285461 568362055 561643201 205289472 392874351 78731914 769848729 907859400 338805774 836877653 650843134 428125552 361859056 344456978 520340570 794110552 760825349 775561438 88021660 161314823 283624664 160464677 883692667 501094497 186758348 839392509 661871820 126798486 831828289 33125485 313762853 303466852 69285409 967463529 896453212 158318833 562730065 523670427 953135237 137791388 446336159 54936176 333964905 148903205 35693429 398274176 597295629 189145363 653220478 831058535 571404991 25208209 818930276 605975295 144376333 124842424 66298042 786066596 67900653 439318914 151546537 175087711 177916596 868371450 569544752 678726973 728941055 824408302 155290919 287600810 909403857 57706009 79287205 797867426 79188006 983091663 631386348 324798421 631370210 160617661 66283580 415154979 655778894 508928087 884581156 524136395 187453003 733796836 98357196 974977467 530121538 957415971 79652007 771806425 690192794 357513228 829607677 43302265 444447282 725057179 382575750 784634236 434777421 758991302 342469587 921194766 381961745 519502657 196311441 545177831 613333526 249121472 117302274 542575511 424696169 510678857 789358076 334473523 462864687 281964907 485925757 463400459 101040337 794241962 663456472 930836409 982850774 807099432 983945995 175250431 930628689 784175980 552346779 448759029 383517391 588729391 30363628 935118121 314426464 593779037 521842420 345043134 878282635 29608331 602570044 523948311 913456179 178929687 865897927 617970635 324724035 553644206 129775619 890870246 465875924 842520017 538269792 3165094 659600033 220690144 126980699 335880819 345025363 845231378 364813938 172222055 583732443 531909223 730104391 615565193 762138789 743072670 324341959 770294176 961807972 531975051 484586168 820950291 730579846 512487676 100341921 539180662 806157566 805826662 968686080 368831274 465512630 501702916 343048525 437544803 951337550 713085334 864827832 71265424 511221300 54102502 517550684 396879601 360835712 402835780 835725888 772115154 863494475 386463210 998390286 829681363 633326915 929693357 674706660 521862041 122105581 185500563 347201466 225584068 492911829 524260158 608532744 839539459 953615 62518598 700313638 671859770 32548667 871478497 24842375 727992733 745847782 474679720 712562905 632837185 3513185 709978129 762945476 188568011 83889304 517898215 381907258 268397755 107354731 565554361 784048275 592759848 889019937 339269996 976742761 881064070 4648286 965912272 410209032 658883177 67537924 343579418 336340188 966967421 750015262 601927437 819849168 128865269 502840470 200257176 388504920 408163102 314745504 285105707 290867745 515728026 495926755 924659275 639688114 329117930 458616708 987100720 305685859 471172245 494967642 640500870 378189181 148970206 779426040 684536416 11632599 468391521 1204262 224984437 755022901 131138304 490378408 283813086 882057573 42503052 673153534 103066636 122558627 120822104 797423983 666159799 996024589 68651960 252299580 973363170 580963274 59490904 699598713 351131097 580996902 435502534 235261735 279862620 954486219 806916908 675356910 143452989 853844275 271660351 200249527 629409872 659237286 38668352 265300335 49380872 212157015 720609488 182216496 274248146 308639367 159560540 210057170 620546249 550805064 127533549 828785768 866369614 449702136 717122603 469052187 194204885 782598549 793025843 934770283 452395462 201515093 534575410 140149167 741811137 958653731 4787564 356265164 421374454 5483715 612015682 595770504 29655084 317773271 913146209 843457625 752762960 766634025 379751626 687862254 983510471 880278440 168163380 665479942 497196918 181751519 604271632 63323086 872950111 536053595 416459818 952030046 332168693 223290790 140499435 621593132 352392805 933316828 132756891 598657424 12154118 702955933 694345256 138420000 769791049 80015799 69982222 97375748 246494770 313104110 15202374 206014530 89320745 493490956 484440526 536357213 240825751 670804692 905635215 257595155 238695042 143222981 592106061 654736197 555642778 308597616 738088730 633407952 381545475 203909967 711803809 409756308 484576113 996847935 228933951 349862844 456478757 191861371 464333739 606716665 792312441 540737642 606003438 744620671 1528722 434936652 186172809 47993804 531575907 627240986 74088650 182924665 708085672 499980186 547771853 629767910 953751346 467488610 895613386 554354417 619744854 177304805 148455442 861155356 691374162 260613437 80694468 956301994 870283206 728129624 930908025 488243452 609305660 56362764 563727695 850984623 470509516 216783116 946683215 468470045 513036845 389787164 78907846 468665677 4629158 146915682 877294570 149062135 742529572 312265472 856970501 88492068 31456878 173717295 731898834 221190041 579829887 747431926 871705725 394276058 572903960 996825385 623008618 44147094 859208959 727586026 716431009 436784533 121095673 509872649 575904356 702580893 247261254 582247288 303297772 99675191 135227269 489952504 927688752 424001096 841666771 18160982 491690245 116178068 397919188 366797358 199332839 29383651 926533227 131725000 884306162 954924688 806251952 770915390 307935504 444951514 858163997 920466773 325424451 484052513 880649343 468392395 92552245 793074891 698310528 632234782 921242975 54209256 955546446 362098012 29990839 536654101 917633104 909529498 249670863 113055637 488993715 95537043 519744067 436028178 270033020 885080943 899300962 226669651 491319120 733879743 270300687 804270583 551277331 643664822 568488833 272816158 241939337 293817879 378844506 982516045 221968477 432704931 273413908 272855497 266232384 263387796 823843024 380547830 588932302 653262562 228730534 202369976 285846992 422862575 169186597 585623911 970960718 253401758 179166975 166011007 878642444 765432040 563444766 598338035 280238966 55472371 408974186 211418824 123141340 958064704 463763153 783157880 316073650 132412067 613139131 468634129 229377242 15410088 912770933 956731482 181788981 540234670 231000776 253637513 834214754 685804718 882167144 580506133 323987821 120727605 437345725 338218695 743824619 962419128 713229792 58605321 914616584 997308945 903810804 893670854 467225877 321264867 950720853 386934063 464104394 858961629 750844887 479391168 351788875 526115032 350772269 176832759 182007902 388607701 531175664 892650460 230446511 57612557 22707077 84849331 630491704 82969635 801331465 47385715 85897589 317732369 183068869 411998404 376891135 208613211 80670948 702069887 701958680 662662423 172475528 383296754 567366796 297534299 718926261 97232309 884485176 220020090 674225375 253685796 495537309 124515946 198164928 4935342 459658194 748753235 259654709 393436050 895377495 493427415 376829287 279735622 651593991 756409146 592256455 61383517 550585547 547631443 592806011 980635644 878013341 393387144 339772197 684631953 41513621 854505872 205253339 681298010 356530450 671893599 147859073 860438824 243573722 361058967 894767452 301648827 159941318 24498814 182295214 886197838 864280759 754070702 481923159 362903588 481002758 944334386 349374346 676478189 986671143 512843099 620472957 10330940 376225276 228598538 667251692 624999291 405293325 205993075 212873704 777045786 834889096 430319131 686094836 700696850 460904457 479158547 866227247 286949307 408501244 156046605 319917558 360297899 43753382 310027549 433621740 909499915 76561410 58886363 325418113 925613876 531721036 402104796 347075523 915113632 515417184 53914158 967889305 987751368 42701176 965777894 322472927 770132205 958834521 62414849 119478628 700439475 61189920 53115608 893600696 225552490 515226585 103243300 633531256 513048629 226730021 181735340 373927105 545971493 890369064 18200557 487692874 724390083 25124365 259711503 681787781 426105252 162121642 646438093 499885634 309794676 946067331 470838588 542315542 224219349 5352104 615486386 892618331 905349656 454358331 219379777 171923636 824072889 332771051 118937271 627184821 255459666 486830453 788409230 335382363 776944968 183907247 779404728 286963855 389888572 524998933 300356583 445763111 478054115 196878526 824911688 898124840 479797904 667425185 116820358 245344787 205295399 757893543 538547298 347474991 876947236 479265736 942944288 811572725 462310187 831100999 971832916 743387206 126518810 299036439 30524556 873335688 438804442 964922790 142809264 406742547 500089375 500588652 162152970 104037877 303013708 947058487 753228950 120869879 205195603 252993680 172711540 803410110 517723989 246338906 454235593 525792457 313147711 302567177 180817419 105311077 471575936 733255510 926622375 644513240 695760018 219739470 78629488 401033991 302453969 700932641 964512803 186427743 525223904 566893305 482570978 481542242 623374465 890706949 605547097 127272185 865347182 163876369 504942978 702528333 707470718 927794378 380463024 753764600 542280742 654148878 530559295 47400990 743502651 549921042 479524904 316597977 482030621 609305336 802253434 553008019 735335127 574810718 506599559 134596280 308494172 81786595 512138336 103700545 832762484 807962815 791299762 940849806 727402003 409431013 582517481 674924407 155561284 809803931 694914993 426373919 35817600 866902537 909052258 477309592 550149002 901562892 772325935 286948475 23039653 66806049 697640917 142451546 76562665 240077527 610831068 521738572 181511779 173320485 927896058 814237730 852158588 463787370 115735819 139476107 873406533 93147183 73920717 595779269 476097107 412452803 5591636 851053993 989295583 509369722 742525290 328731198 392553857 412014092 562463775 606457388 910079325 789413089 533983961 784696800 657130726 950634740 908055724 612028883 895853637 586504450 304073651 31031471 737740502 822050251 242450994 617619345 809463648 614995571 740404669 575481297 900088315 640796535 961257515 2888584 240286104 305329463 612408179 379170227 335264107 725444551 833161312 912606525 745822914 885800028 486365219 465723318 828608494 352837022 693756759 631155169 877140843 910878959 623915130 716574048 102972790 193497111 572082408 667768163 503211459 414751926 272064922 285403689 900706554 313710078 169277789 386048298 298307090 864776857 198869268 264818642 511593928 311102206 59022433 426006432 237911394 72234534 548949928 644875829 470258211 795617075 670508374 133175436 707984742 317678080 698618137 185289005 488131583 114618386 773677059 539829039 899128531 852632726 752408029 800893342 141491473 69893936 782951623 519028160 418275077 418885079 593682250 848525408 585591079 833639581 209508312 639631380 36804584 156141660 771520794 297055062 684377778 840026560 783525597 222005546 830369850 99588631 570971041 20003478 605200956 697740604 669028408 740465303 646914345 194166867 225054101 884315392 691915427 216433950 169185073 441351295 261343425 440056606 615127266 2833439 196887791 525503406 885367636 516750650 866667972 525317367 611430302 574299069 145544695 263285980 460582753 277494819 74427413 101654159 729292480 282745959 801972364 268263849 302097857 779909436 710274758 950282543 635514682 385945908 470527678 782217293 5130383 612687795 548193917 556671117 512904562 904371604 430081924 422124477 100948608 849843142 913650709 307607628 489248622 416891189 593213106 419237329 352601419 265079599 404041780 255876258 70792530 814990832 899814820 779099697 985191166 858689603 717111700 498185568 774273272 605880730 520373653 44186378 51638744 902612559 167757613 355660888 471489575 889427260 301814574 302772067 64190073 43567355 225279028 139898008 54013207 739056797 586617328 799774873 649134939 709212561 100687986 555584857 931325377 255851144 337704349 264945925 110542409 466907909 679989475 20101934 849385501 145618495 711416638 165962114 820695263 536941544 67421675 831646916 197217764 224703723 525548702 217823027 678367361 243960699 145496290 783265439 135686341 86993602 123570344 244249427 511559891 649080342 440862468 622444491 358326515 569717900 265767122 164689180 704155532 255988255 209734242 183928087 454153688 22001855 972245185 375660584 94945640 663151482 769283504 151477946 764814109 738472991 319865656 80539707 714869281 709021031 689451126 782780654 642040653 713005665 227956540 111930774 61517932 332059662 165803361 853836115 211755032 650178677 751937696 904606530 707371124 391237250 135405 389528049 99580705 637116265 497972047 905510943 686452735 554834124 658430144 948590655 121308237 896143399 786376035 312883070 489496918 598070423 362189944 881122658 458827023 658450666 764831229 110768967 888402519 905848275 66277037 832474571 933439727 86671514 930037765 759021727 336881609 903220863 212678436 815905053 591581633 416753429 237255878 250540437 474967501 273387523 575564622 253035457 495141202 287575082 823015801 650426878 619907796 308231651 342919912 652162103 87331160 215917684 769397554 428055149 98228076 699783199 506703664 379536393 171730224 513567146 346830400 795588555 690951512 718237220 792521252 435039327 706073325 942124700 220012329 581752639 178051079 940514108 911013973 884618628 105165408 690064216 340875666 573176364 664478006 18316042 731275255 420522154 843634022 846925014 317490723 74366410 709055519 754786145 798545002 711937015 912976780 770938441 471133334 122954352 190246818 212004576 240656382 361013835 763038322 848694299 672920706 529043416 293916056 327683460 123125239 652154624 812274801 667726787 829317032 542857763 764330182 378429358 578094070 291620299 720374915 351801819 468909105 7841425 245858998 170629423 53707525 944932352 415128782 322962140 986484851 413466813 138621409 517322796 519198407 446539199 788867421 89764051 528528302 682838508 509139456 215508641 992390807 330825549 857772391 663240790 322740891 227006145 280112792 878732097 691340535 629331466 544030092 328794541 854908771 339247314 384678235 238788863 51782144 91974142 274433228 261906310 890156073 450805282 134308590 80258371 475250129 338693930 824853610 49923142 224164016 719349479 653771603 78848899 839559295 424339765 557637147 508358875 404156209 770789142 60432225 994058390 298249119 138335422 894633945 950610738 435778643 939752563 179960771 267094330 346501278 464026880 143654710 909692060 472208680 534355741 391905974 680408030 143289434 47082778 620235950 641510926 198161810 951830536 709896490 662003565 88639533 92600602 225416110 441630896 982857906 583283711 308010201 215793215 120292112 916456010 652016986 893521685 563057980 946194902 89213803 794420930 127928881 955131216 484022354 428269778 340208808 474217323 402044141 412893962 693784088 646885216 544531602 176976688 107683815 148579558 42703452 802226359 175084581 553764154 392743003 258825408 763363259 494657319 345661954 654697466 101737024 771951307 165598196 680790252 375524472 231760280 445453239 92301908 648503155 806979058 940208194 57562129 320744664 699288020 843220650 276255734 460535637 523778437 584540339 899475702 913389326 639662994 352628217 446682143 514787772 497938935 906243054 459867282 664898342 645052883 653490774 577267482 625320850 275161781 743137628 857282364 771046564 942922739 167073585 211931249 908357776 209668101 366570654 169223159 169754163 976048181 798593408 503701466 225303212 867371665 179049745 403345751 436222727 304606812 141209064 305130719 390574787 711819669 599401466 218896542 59200069 229261223 356336203 989346171 234353642 100893681 823624164 992562084 323180100 872521315 725300400 232161898 275158373 525043920 199825697 890064620 83889512 515309394 963923585 727858015 350986583 258585805 172280443 125981223 400463567 309591062 351896444 843355479 308473681 44769857 949217262 268880783 857580979 903918669 212180405 951330705 227217456 924139930 334055642 324891620 938238100 234807459 276993037 131859829 36000498 284398754 879986433 459585509 124671533 761283544 852521931 144657203 535128040 127854524 662371873 926147473 177518730 159447244 443943203 557391576 671159047 112776032 119013517 664966055 498660693 464174191 828763149 447754636 621427864 580838605 392867059 618775090 174612145 51674902 960840829 696200935 214589230 304434124 938952060 515901086 759267150 299403174 589858318 244796305 587937148 563258176 310064765 751895290 855202189 175037791 680397429 239161891 981944704 630833142 723680197 157709901 851027902 432211774 613076290 310906517 3100966 985800354 191390603 28353290 275207258 832757445 33853387 117636007 86734533 371088909 917350030 489864784 814694415 886477617 615933279 614413105 584843281 94083631 469046034 323277552 58124283 504018074 569971215 545379021 424773109 6240465 862736514 45944028 522010242 44847244 408760604 72602581 907265215 717377120 788531514 395171928 440249474 687187253 407948206 330517096 801840363 68869350 278267695 197569537 901321857 887472646 795337096 240206357 72394080 382082978 109284685 467794468 230884565 77807898 934767871 78243316 226204334 384930190 327259481 571307555 638934865 915440634 503361595 196519413 594967998 337635495 443566449 739746182 643607450 911703012 372578252 762684865 171945130 447422161 237572631 167706473 907909858 995285467 534126501 317282296 533774448 514474953 993705634 902926217 113667010 467354126 310417103 80716943 224692676 320542780 11350150 632021369 205059514 440167171 943452720 844565163 519613214 197784928 938094631 766666968 271305289 641464136 499489361 904182441 894739462 966226138 133354853 676226847 29737625 311482423 815155567 872285507 698366535 227619103 296454659 967905104 540157372 753053854 87465280 95542159 528037317 334741717 976992771 364311651 48175935 190727056 536880884 934022636 403978565 825644362 990787150 540570436 689134504 227545728 510563217 252387022 616982437 282618174 797402100 394419392 609971610 333471336 79425508 475234095 668610321 971073599 383035590 126920379 197610155 156531900 455790452 732766299 226835882 309839275 216586529 198981297 882433659 698250141 554102715 593096403 111846408 600171770 815773577 165738882 844795517 323325600 802910508 894006813 497968646 341262440 353232127 139969663 788921587 527963389 76057691 751258399 272172693 577213360 209309697 155277500 683633267 233870570 68312342 452898342 56733711 987634808 155600703 54842951 845196906 407724889 124668031 312543252 629070693 839417318 989257219 579941707 593194653 102594033 475211579 409291320 932286031 52326682 410717038 670628991 803586634 350029468 526285358 399509940 631325050 489211171 372687972 118280796 4984183 190815734 477439068 159535734 764846308 513802442 757582890 471201989 318547427 169990971 278909740 9158603 258139837 673346306 587648244 769149512 767976042 278268968 972565104 576943377 277789101 55130061 761923373 176191648 316450826 910803409 173023892 154165223 124835274 586857374 572335911 745845198 671127480 984064802 281813205 416901870 234357558 417669731 94059443 716564401 948668389 377573374 599618786 502577548 395736702 471496179 414050268 858003472 926708968 824287305 992651445 539084255 567733572 672499276 843550145 459171368 126070457 517550248 778937898 786496077 337817071 242088200 865383357 613656990 59289066 33403539 618827473 534167009 981196848 159029854 765370914 302876336 994483464 749505718 566202558 5529137 161335591 733546241 772952181 676029273 601909491 284716440 564390768 867314369 269848297 459452050 344275942 954361498 364958525 364080377 649266379 837040803 393478355 868802011 147993524 790347718 215427193 523968409 461166865 383907427 381932618 25237630 897984087 763485726 599758722 131998856 164251608 552221758 341100428 124970982 576768290 342234343 4263755 427025100 886855597 679500485 496957120 948849991 899513948 431774759 951407733 717663346 383136469 192143981 100775927 518320368 804193867 720097079 382133400 265275301 4903076 645698372 63406123 352870494 98738089 178380213 346256190 6532005 500969112 734459175 777000222 663421683 445538566 352816684 35111171 981117129 286699136 19043488 614655605 548139843 47207818 115058347 597267259 668910734 715427200 741097403 429746413 634555124 789125853 775315348 11460677 271089325 534701375 217086123 639680592 421963794 263164385 216761821 86108521 131623779 689484072 540280957 997333501 332492154 893937785 62172660 184722953 709864897 524989668 253477363 515766662 321147433 256479496 292041424 365313324 844311311 747818623 112214104 409333779 663045400 258356485 38345029 828258771 123548981 303320353 310481762 372220857 793579259 883440389 966871538 182509625 113457009 602511748 664297679 795814726 873372900 11043951 792401477 976021343 9342684 46458284 232535677 420085646 396073366 549945054 843635591 581037893 967328911 567668100 183887208 167083267 516248704 120928577 283701919 193875256 141935922 494759705 485115501 338535717 132679111 860220415 351140308 234308259 916548699 266336651 431806106 684082110 578792075 761622079 957092404 449614354 31369063 496369352 693478351 188100355 771634460 336287686 720410327 5808098 266184903 221973956 915917073 832918129 134202459 565043466 615196134 247539949 418633389 671951724 237061072 313457140 147704177 37542778 231171423 104992181 370752971 930325118 983259884 545796394 594612150 347636185 893038055 696299830 936424687 586822618 331239109 263533106 770409629 615262819 329302506 884062388 577382487 715730710 875896253 82380314 745501446 614194903 498873993 757261700 162843251 865672906 686990326 941109674 422694788 695273579 663972993 536418777 116172356 397626272 97504700 910636505 43277430 546734151 578216185 360585991 502373668 490328875 875066352 809424618 653222628 79111838 2297910 212301385 914850327 355854124 482053513 598920138 809338012 150490009 285785068 231011363 270035383 952083150 717189482 114127621 776262070 535526996 792981305 446962376 755953993 915266940 465017105 105200796 637597214 882591413 776212547 517178143 98056055 713175223 781091275 659714795 83719188 536815012 57880004 982895453 536460265 304092265 933686675 81768881 890800545 366034293 179854134 720677317 207405795 341632989 263033930 544377989 510938067 479967967 456964561 113539249 386300496 846245252 102097305 194463054 868401072 817642816 747939650 286639455 789962082 802875039 325127498 102584534 252285994 866228828 415673924 754479593 337837163 704106361 678704503 286991106 950098647 456782984 810403196 78660782 291026455 384802703 840981835 362600906 428681516 903301647 741857739 340822469 409295488 704868794 714262048 570313364 675552059 439567246 618422729 482479169 872942355 646133869 842518880 642551412 909101749 85856854 237947690 250432100 893281719 82734162 960980564 657398692 969251973 81863561 507947388 819878181 963526365 777416257 889680761 733257048 622539415 708838292 429537036 696091190 916959882 67095520 817116021 677280238 167259294 225678900 664122963 207111137 337313025 533730360 59341423 860985447 662094606 797283843 719361143 63824518 878409646 672177731 546393697 982137498 603642247 701533246 966476782 828027039 706180007 497991870 638428669 470410873 484101642 197273169 285341193 324691246 342105614 962413161 149887591 348232402 860452758 261700737 222713449 382987406 16688773 313236222 929421404 628717338 433585579 278711586 23639644 213155887 886293237 805915920 319754473 79556961 806389016 169977509 767726285 380468377 767806668 915020885 594144996 330101724 843064650 960476657 821757351 586078713 197303388 806061737 666733080 935356546 140582996 444543592 527494478 742156532 430002564 562531332 708717589 780710465 479090072 268245502 992573569 123955254 113464395 907661443 293269878 170724543 876276969 494220862 539660920 920668644 83632311 175799233 23037935 356122207 977741104 331573166 990559557 104143776 800764926 913061461 928029334 157351026 684337600 178572102 591161681 849203266 145691542 482345847 56202123 717299491 974026655 841257398 838291229 168252604 422910752 541355978 566952426 618356799 46051919 270391495 418910618 211192611 969470011 4889790 196559961 220394506 74599083 923266968 665970600 366996632 873343409 777219724 533085783 323749684 322961254 212730764 910107686 268139747 430338177 723378043 491561177 906803731 419650176 18411093 506968089 815526704 435639344 395902915 860184673 755532085 659641263 949133590 494579156 731633312 486488453 987517489 555283933 599758851 66675538 36349885 674449399 797542168 965811346 385916329 661541904 394167018 725599319 699040717 447151400 693171839 239253914 179291588 792926559 293858178 242949378 674192976 640841844 991096712 983863452 877694225 594281795 604593316 562412232 454256288 268376955 979910842 448233039 856152789 192590186 597221675 498792415 681622799 387773462 282110335 698846742 414125157 837164373 298809393 972110602 602207418 583914121 932380090 697055697 856077747 61572776 641626559 289470938 915566718 196453682 987795329 953953495 549307212 83124406 104774281 972149317 132894923 887231894 277652016 565015052 68910811 700122005 652962755 300820747 571894013 255713175 237260577 347979240 99156902 180529244 668690407 125749293 922693557 160318189 817671882 595609130 645616767 621979987 174265710 113574588 576960970 261772245 587164950 5114593 430091028 122956505 150328875 324378111 779862403 590402235 30861079 109733847 931359800 442537358 843852771 284722658 224590766 125236149 504249117 258900114 470489033 814188378 822802305 489724946 198447530 41840721 380981185 970659134 430811141 907409527 353801168 730317156 495281491 509743619 740428234 200182273 526375919 65384610 730336099 845005279 416375813 267121647 64779970 367676415 49574437 603823509 665834497 631267086 278460938 114275974 133822780 248524109 952379248 302489148 500030851 83439084 985976279 428331097 834620120 10280372 861698780 996309757 199970466 885082023 595405119 423248863 185340538 546548230 123437536 994209495 155561461 461642246 519592365 743569654 396865938 231984857 660683708 962217307 564582448 953392242 125947281 944470431 149090361 934782139 593996610 268685518 710692134 713406146 509531122 689673449 397360945 390514404 545856946 295623345 309278450 546852361 786017577 453354924 587465751 12419999 897078758 684346220 700360020 641449861 11025721 2375821 752110495 815559565 51389957 187584091 700268647 773507000 802898313 434601338 121789360 392818353 59609678 500655266 500204793 313264677 364230857 337645144 788359364 574621306 187866620 21291007 860095997 927419159 996322998 301973283 619597251 554308968 662960029 807451119 294658384 17109932 287243979 604662634 198659187 542988346 404472707 424458188 538975515 380261263 849341377 508562584 226109121 378460250 230440626 707415772 542154861 36921111 289664667 755185482 81639275 510673476 12319293 592472115 380437627 303904944 59891771 651897968 59348990 250085270 742541140 744347775 209352698 620097688 47490763 676602547 900359870 117242884 309867442 836740275 556707628 192155341 420984744 365454068 621982337 807271188 77795451 27826611 763727362 678498501 196854724 666492743 198240211 103108651 526244726 264631113 89193192 551020495 446734041 466587786 327499251 81877840 674176625 811675018 425471094 564183390 955866739 245196112 598989052 139871486 414404859 506328187 986688062 295665447 579241253 223654437 542404582 177275437 915996410 108263159 992168486 137084030 492449433 823682646 420947462 962525865 785934441 789817617 691610861 387079059 508378671 512239662 785287346 123008984 143604460 328207403 294897801 705310853 753453690 423654581 201179709 552568132 213213795 800623655 960949378 558681354 717352796 809741779 743344592 198032994 231762030 558223346 384745737 152140151 785701870 653813449 416115866 119096274 626200440 308086125 102156029 646111873 834824551 205898206 162110065 137501355 535507677 222037329 527858761 962160862 173800195 832152667 355502015 354532581 36079095 412571788 130724719 952146501 689616573 544659790 553709657 693208237 520852591 492773912 927708695 239676179 661589817 542806806 382736144 55009739 589945072 361544399 421901094 451486003 299658008 959633424 385129765 611427197 549441142 35683499 786703193 858895256 515445858 892932495 466943109 544705105 152962611 609419523 916330182 112924302 557108976 180381125 534459045 156365159 158068921 446960971 422680012 450313297 809399224 520838890 11464503 619848363 452516903 68054347 713191233 269122689 319104238 127681873 894268059 276395437 12731398 85803897 199333409 881890276 681656798 22068084 208765103 58561588 724936583 460447777 689917979 604493692 625504379 290855450 441598105 287079659 107173144 828124486 266103820 826783044 160303152 951774762 121553057 871122171 653315071 763742615 487698257 11335620 483253616 331955320 664190793 938425491 449656718 989809566 632128611 401547093 996881957 378644935 208592211 758765205 556266610 339149623 365018320 997565153 954885944 584536762 540104666 891008553 904080359 603340554 479320680 823012708 613357706 126325641 530344099 220682810 514786692 329447539 595101934 417291939 381675338 841110684 526307931 478017569 548814786 978289234 989793804 556083243 633899906 732745015 287663961 536692697 952203655 84987538 377500712 694215203 92515506 692325974 710990777 131054111 624297364 677759944 521519252 533333413 418460500 370628474 423699798 116885778 294709367 565454822 833453167 23009100 287247217 641688195 70560501 758412947 212575002 379654329 37300024 861498039 139775554 364458944 218726646 372345453 808219909 253900292 692006601 635435950 569978399 30157212 914994967 553569145 434929511 436699226 789696739 258501080 576068064 937928570 758607945 113555777 592914095 357677702 213233771 876656612 956650777 701077627 280516050 209994889 335688689 975966714 114159050 10651845 893339803 544527255 740017952 534649648 754418319 482279042 852794615 842061216 736328570 490320851 528992748 879620695 514941811 344593608 433775833 97457111 875815940 302763567 650359932 61637878 23314751 169963491 408387543 295453872 449891816 889398124 121664732 684091939 155554863 389528530 978731677 25601594 848657155 941196823 335684577 928442691 988716564 372357477 175426770 816600839 531788290 847559914 447859897 236015517 517878668 434299734 634156890 260677379 150663429 717539405 762244744 461784303 630575647 277266393 895348360 483324627 572901591 893689805 185453501 60981120 827360602 73293580 59485156 962754949 163578301 924171864 999028026 495415958 269726516 149494983 551765622 625859094 646498960 14741999 491432473 59085326 926629443 613829208 568631712 122765057 877450302 617906956 684860856 412821902 794640702 633329424 157956451 892023668 979624174 822162792 886271170 943769329 609130135 806897567 642905380 845778171 100115931 505618992 38455548 55753771 872940165 630941981 983236383 746819529 23598939 146892861 807286906 73744742 100689536 435958127 210676776 121677892 978169230 407048119 795828488 541259378 678374347 66716326 303921096 581047436 605869953 22795483 745769973 983656782 483856297 359223772 165649258 437960422 791478206 698752207 976278812 796597515 470722787 272131982 936249906 614194590 640986245 638350317 757069502 32333982 936501318 554556894 47894984 876789920 328094505 928528209 717710415 886693477 149236440 527401254 876930631 650127059 909135255 647124881 857165507 529260554 520053089 270936978 448385459 252396394 11652112 349761608 327211741 445541034 826362299 369249048 206800249 266441793 530473670 524904765 206597554 800865174 184834196 900582121 972070663 437811972 918545191 786248199 919525928 854192230 82526777 476639646 401481417 387973380 863062091 766863034 162778252 523850451 172973996 656637260 645282293 833001909 163727085 887040921 253004896 307671958 879569718 74511352 120819267 317344223 436174482 708458000 699416561 709399898 267080558 844366327 184074697 184550904 458989228 661137987 951669681 444406637 677071 966329819 309412530 974023535 60787675 364993387 498757798 689170006 705549046 738823886 112424000 323250703 708139356 101046609 396454805 378412075 458957525 650054467 635202184 523447332 466377075 973662809 614679261 297172560 922333797 392060069 919787730 706479326 770317716 724527014 365837082 368628260 753050707 556071774 424081677 504393964 606825116 997197770 265408036 333975541 816731553 229252927 736373005 669258980 613204061 711195878 899956185 610497425 515802098 462755564 341000935 84739939 432791224 221801143 956213233 27702314 849739293 818539214 387117845 613522279 577696017 140746745 685784346 629845594 948872456 9889222 835458533 858835889 302849866 861847111 569693179 559074166 520704927 971175251 249280939 151030368 283283662 292615812 536673068 663502938 751174274 636897379 387066206 282122357 629045688 739824023 458371951 938865868 355658112 448052608 197544123 365277525 618344454 396510456 764269178 918404108 460083309 481706451 279865652 613799219 13695510 199042837 475001901 81136592 256528241 729542604 45066771 895223139 680536283 992511767 497910097 24872077 987156083 212572908 481204962 657720328 435440482 266152680 447991426 938153861 931870961 893365056 191541044 302711001 922471652 531550764 312233381 40890715 307488588 158389851 681228948 653952406 712513861 267155550 258086885 615386474 342151613 637908759 551700279 97784680 658955417 817562290 81104839 528558718 441167261 818331719 346513185 863654570 11707110 621915514 738895955 669255826 392026861 220782173 652829122 624708680 24953810 79398709 768582229 413796752 33403352 283701250 950095800 69915997 253164501 693515395 142409881 919787893 539391847 597688542 644450551 682191337 750064011 295104681 148796291 997732720 877353797 967595674 27834442 433625014 63426093 29590590 829497508 332801996 618023617 478170054 505466833 332686325 889900964 420965788 887931094 562021914 123788078 162636057 321678596 491867732 358111180 142977821 690234600 410716315 672882394 146856771 520276108 596731821 154593875 745117391 986737724 427512393 236322161 780763190 146760652 340009898 299916713 461094168 50696611 906389894 610027415 653560323 28038691 753729427 429988499 70810546 749673999 736289908 272292582 920458529 621106689 144909551 735323316 605208718 247857210 281329365 530615800 708030240 165127988 736335889 699138033 285955641 833856873 974285601 332127279 736849456 479615895 715755529 393058043 260771428 978530322 998058861 452225160 395058688 760401709 554747409 857692702 279937394 225581131 960075710 609337355 138360479 559631646 226125749 71823419 231623062 820131408 402994970 936165364 763340695 777541401 94358356 312728323 97041281 269798209 393958027 313354972 115154177 681412163 404416411 24430690 13792446 255440734 96147142 919265062 239213643 912797838 869812778 700425908 166045839 834894808 358611807 528291933 738884709 524289688 178679376 716962191 502732984 812224248 130120127 753380653 362396653 767883749 497341270 300646469 963103631 283333917 867630431 569524645 706055165 445864956 660225395 733143963 977094303 821718779 456972626 606025735 510401169 516464210 646220371 255896619 679805973 948567356 292149086 624851519 613176241 836047095 877158270 325759030 41281591 321688755 577004364 175584451 327727422 485939328 493348446 795804263 283112484 985849140 149822034 988057732 650876783 856735759 657481870 705403434 239990980 2486407 615582640 979517988 471135494 843157833 913026109 781621555 227999147 259623400 122494859 972003480 993917670 641452046 576059577 160402391 162988271 946404754 781761113 144192723 567791692 83435598 454807210 677794566 674468091 903789172 323628080 478489674 780334570 53465537 713945573 344314060 804260284 191444019 757295542 197742879 16763043 456796968 483915452 669629802 294017484 880498737 662151496 635919539 703254735 478186792 242506581 335132526 380862282 149897433 185457506 308316792 774414121 851634131 234846490 168381281 490308548 664654437 137548267 684016372 790702672 219701628 802817070 355247277 851799752 558057997 493641663 506019991 315979173 57716801 741157674 867844706 145239862 50285771 887682378 355935272 396199166 401360979 510491723 907900016 752800648 330556729 425032483 44999719 11906659 204944720 422940783 54973182 498135883 164978748 814968611 733601481 696428241 927403720 149634382 428693964 862812678 490430066 866109019 903986183 537958723 354813491 678300368 629629556 893229480 974889163 874678395 993864003 172947482 593415679 526287092 886072477 820715700 901400182 907598003 546306119 527950682 744718768 632780256 364180174 74627237 299814589 436410045 934837673 145262886 625825585 488859198 979526403 284745928 471874767 619555257 654625642 297732977 106007304 900009499 94624628 908295241 476740602 484306204 930735091 593446087 369381980 604315272 74477873 594239980 129203573 444341373 161079006 426125052 979986551 956172799 798330356 847532487 576300176 880862388 612996566 749358555 583735634 849861793 502960163 240107015 193785787 410637794 324094309 73771347 997983128 706564199 231517155 904444263 764707522 958699840 382781786 23593905 103144720 13456404 753023713 815925603 80425505 290472136 352838281 795268231 60543075 666017030 240464 368840722 418436592 486048689 624331312 220448270 197978092 262357662 763576342 159778726 474213378 12891716 236483713 794622290 924101289 840595849 870364249 278422360 3789078 88860700 634843661 562970584 601389162 273346782 548094862 403680853 196972485 281660901 754889313 508907561 914729080 485288213 691151570 335985552 840449125 739136313 501974539 993578938 419852383 430102772 191681876 145333620 641827578 474799851 659290843 161483229 861045952 801942669 495932525 10892252 389247516 705509744 989888071 699944044 184571547 546375695 531406162 960112856 705400577 396754018 975077531 224029979 323970465 541908533 393503052 512073992 875616271 876723128 691476498 382283801 247174125 767555344 53128205 476447585 706634940 472835098 587466197 261026697 165426781 567558775 29973268 347709279 862221310 633302790 697118847 315536704 501759245 540652132 242901597 505079785 403587106 845425516 65614057 324937500 221371013 642332378 453504737 53659275 665351687 185739926 13699190 143590092 329667945 223273363 965484352 178676609 343351748 164602158 367652266 836780485 544389978 550724307 335925359 470912783 264356776 391236841 754314978 14005357 447706767 450793371 517519190 687970327 527512556 355303729 966888437 21537988 393900322 378987770 713118228 884826664 236253494 154468843 179323970 979288079 977002253 318906188 300881118 818178464 820418821 403397244 979355858 39243083 491286625 318719159 162287954 823792681 726193087 917442630 554467723 144514149 549141175 188793077 950030512 307417601 427635982 742564783 801664424 48210434 676110278 226770695 483219147 383720455 498682483 481132278 195338032 878194813 581348712 566883459 269515082 829772752 75334886 437796360 985067649 329023389 780697113 710180572 589807259 593587339 203393426 95616732 730361595 318502019 635142970 104972497 571466632 317565876 85735513 110811196 616739983 191306063 854859497 81435520 454339098 856694062 337125307 329019779 714552934 82636307 71970962 925190046 566972236 3158612 464374876 537113888 988550893 433860575 66132208 541834980 188547050 52495811 425671395 345689534 402911764 404682544 407491821 885264621 131638282 678869856 596464705 267223862 135344825 989227273 949254771 275409828 791348523 868970526 454024808 152811747 917123727 787260752 203423474 883544643 291028660 209674598 292926626 565169378 11807838 30370896 445941728 383930166 275038983 160879383 206884231 912934068 452454430 19595104 165584360 477305745 95239064 332896430 203451033 456102231 203386308 358349629 691283552 103697556 962746093 609236820 228253319 105401270 114046986 663316528 936424637 347694664 878732080 6467120 341133399 882679584 159181518 7093464 524103144 448915951 314288707 707436234 148707169 925729892 822391184 844786585 928039893 345145356 443238472 502599249 422081765 370961462 69707553 217392648 194879922 847820796 656013113 29637226 728563621 481153063 187316335 112641638 744624172 846879995 875524397 750728553 755325720 47833212 847057081 678235378 885089755 518128225 645804108 822602422 528378110 63715040 700988268 978339002 751713737 351025131 971245534 822987970 643098485 499628269 327584803 508229056 170143076 641188665 515088828 855421271 9522762 461690956 815009791 378219855 888965927 222681353 821235461 107296676 626152409 50202518 74462917 663961965 642879016 995304881 85394333 737082753 557898625 611174125 32485480 815211602 503861856 525279568 670029013 125812552 557409820 165010753 211332060 267220140 382646077 308569588 749508865 910704443 901950979 804578027 811868275 472246985 316437198 13271546 868647224 456338211 622319281 388633051 908656809 891940862 409511810 602256592 950987377 689118711 562864909 252998449 155200659 893330551 120368654 796990378 220704560 529664194 669961884 434731401 120236185 65948835 308075906 737314803 60156685 989535558 705324199 725318227 839908136 515558559 179781582 231062586 163822604 734797834 453275005 473045372 339670206 906784560 946324949 540822069 265042590 928643388 757353352 403821626 304663012 224950632 446639608 35882994 648561410 146817013 915891172 150240909 163846429 413717478 142120713 59956064 222910973 160401791 815552053 171724768 422481362 630248133 963281763 244015764 150448386 514922075 675600584 7907098 464163503 622927842 751154989 637994973 289624899 163199390 855215619 102982935 1648783 144969227 211535931 14806028 310320205 87339725 276163206 761488737 778882384 981037805 789645941 682778005 718214372 352013393 847809028 825692718 18397046 59024738 873470268 805586966 280192625 103916651 38024150 440527476 223098556 114688606 444997403 909375729 990567057 429962533 378317147 750368668 607687261 847289932 556525165 572233467 596426987 570616827 572030874 900143456 525892316 118211706 889376359 53805780 650217463 73447417 187611999 780428002 8332343 721337888 757336095 360121175 775226331 899161773 760728666 880181380 427007319 429449899 463327393 269192701 944901024 245750462 789640158 942073138 306635120 366208208 151304812 917230408 609755511 175269705 216770173 899359965 118754919 937359711 168250930 12337274 481897429 396428193 322353196 465178913 508799316 24092789 854789377 630434046 929526093 924771656 21997792 518427641 855415585 25840795 509239190 776022521 436261904 113783842 232771638 484158536 621231625 255029351 447552944 840876071 410929853 893876162 478818601 716227441 828751990 600640321 310560950 991216994 674897921 756062111 969905985 881577601 990540167 532960122 387552599 699371435 394027320 512427908 810807352 115777792 81353595 330879705 962334926 611824141 261313561 4109808 991848040 958367417 469393515 56884565 369159921 455288203 119695168 863535536 301948935 49484321 392566277 101676407 711021193 671874509 434085396 271374213 137837925 130313913 372788956 266381376 278205475 414454124 301482509 659430204 315437384 281585905 410042469 811913568 126121147 437961595 240913977 514954876 305915926 72855095 374428425 728276013 283645920 199744816 571890567 820619946 76348024 999744163 968795851 179397625 424356156 580765005 519632354 823754077 169713712 590309010 615833995 433430772 535054506 695839424 199157469 335694852 764685496 221091683 95487469 941186543 750043479 46909720 2574501 807856356 542408760 197665485 57660562 402847037 64341344 979723176 658201049 143527290 460258522 601004830 407191059 446126994 570421418 248193775 924307306 596158183 580179820 78954983 620773766 246735922 34807310 285210861 410512811 243354527 770371771 164988611 610217979 600254930 321857011 475330847 716173016 501619194 675333424 307553554 230616922 472196849 560065626 837677659 925124680 966877346 110187036 461812686 346682098 929083639 272738443 126930054 636400675 379186773 610830129 575324883 618200735 952764435 126517039 263690893 276954897 365953754 865125136 979886975 540830385 849746035 469515842 401448986 620316563 987123892 289521923 437799525 583359322 952623175 622995795 710881271 97064364 715859190 727480516 383631461 334577929 998473293 275937719 87446798 183199437 519673179 24530889 247971187 4860651 123621017 806557703 931702266 111667496 499570570 299605528 247107303 226196727 386850849 535592896 442739246 607770879 686397285 760105036 466429048 35114571 140056681 839796731 579415502 703223236 53933119 744347306 460616658 665323314 767321749 651028038 709039376 781535510 138548141 59949294 375972669 214195803 776773675 511275314 582740787 619851688 817203573 827011182 367231018 825682294 579307763 106801275 796087167 433299057 183885055 890640391 925361346 283660495 297729851 459922212 865716035 585944568 399076516 654155702 843676694 586451522 353205575 840582328 8297227 288709055 130277500 599335892 786934406 352540237 571972290 871881197 768402338 579737244 957954846 125724760 132582251 678066367 969386699 256201177 104209316 92187701 688455113 377992059 211645043 200133991 999571870 418031395 372478513 91389880 858268382 182977413 230749789 219699907 136336025 656101667 478271309 973987499 642449218 812150450 133245588 176544084 779964724 221876471 543403299 244717345 234005037 491053736 729820242 100121642 236583496 991601918 499873207 388751228 485195677 552890604 696951241 954593002 759640330 820676388 597405433 13323871 551534961 429731057 277914302 576306454 221563949 598602971 616081560 695848282 389152723 170761561 960284575 720789509 131866760 33148285 971062823 907696988 962994118 742748255 772068379 350465217 441382675 972315755 829823733 852040845 715348368 121781082 102449457 470808561 4191375 656686933 521091795 858384472 86431904 942570641 540219464 206012347 238479317 557855008 973823995 462416535 23194955 704428934 930238635 75283508 626963224 726051983 715530460 379297518 126303662 308864859 893608043 245504809 52496861 599558183 908240492 479391888 15942653 540569679 975395651 340584170 101253553 647928902 427561037 837125343 654262187 894722201 479567996 623594337 334286902 763851613 380294893 613058998 348943609 656788546 41811217 924894877 520210578 290620853 49256604 69237613 838427611 191224936 314296435 177052445 1085860 681098292 173051435 281974063 577345521 941054096 408303012 137804990 210672794 142622160 781104524 783939682 705796436 225746478 930449660 729397834 880659685 412057785 950404075 848051141 522293288 876263335 865915803 765451927 121289746 677272150 286327257 879444092 298539953 113066479 597132664 887273951 258826179 60033816 470465991 561484841 111804672 768711414 802850052 947675125 654266414 966104274 32756437 997462312 122955759 583711514 428272804 981437621 445049810 435756166 618993521 6137081 399566561 667981849 272222971 168997408 938264262 599206498 116721259 49911520 247017848 744186172 572730402 770237703 767132179 326899374 523157940 98221905 600023036 119625469 264800377 517978066 111368039 1935120 225458064 407546914 91266493 418916136 87156242 813923003 825794464 752542676 892416280 306077632 538478803 509350156 941286349 614216194 54072006 290629383 501039664 59117334 496928992 57297446 905517652 407030844 867978611 254995818 841598861 725212 35216760 711406522 750683960 591159709 520117173 811705500 811793488 14630067 457070371 618818485 110404933 684202616 193748150 305192416 896382141 103068451 833385190 144454380 390196021 310193216 554795780 941522122 114162302 731390756 929518729 782467739 496127137 346921074 351262404 6807732 200114617 290157470 818569004 395706736 610349580 521122864 731787645 498271310 378676909 252564153 183968675 619234526 840430445 710403995 202491091 207137428 626269362 261224892 474505232 458129623 603489507 437200263 554763108 343587011 363345760 30963235 917055069 921656907 977577132 584514985 120814328 267893368 205681340 882938688 689956389 402748827 912922883 149211741 649288900 704481020 913388139 938345672 567139971 648031199 516134469 105002295 303013562 686633270 571455723 60310183 245988331 779664792 267085439 922756476 864243759 977962639 13831660 644332611 803734690 370527848 889454176 602800875 197882534 709720678 429924976 744073727 718572752 767994228 901122553 861427333 535092146 28083427 853741902 608650407 272301791 824187312 57262176 985997330 643205840 28786954 600200094 994208775 234642292 740634342 850410384 794781561 610478062 153058915 167030687 439046212 156956402 156962842 339407535 349975630 101726715 925775819 786865514 940036541 993253017 331188620 206296592 488010671 797825813 604329731 495863976 992930142 45316379 197248786 71730776 930701976 430612066 511878031 397381898 376343866 283707336 97266797 974269081 323487414 84238241 797298031 412963751 974203407 806456980 53702496 259621576 594510442 94663764 743279681 557113802 853570542 471825346 53076098 877880135 365137523 680367272 955535476 241627811 902064350 644398079 206157095 115848178 859771817 138218766 790983177 225206823 190427701 907945943 458903193 993271672 616888037 583320281 654101311 56804327 558773880 465659447 860302014 347402096 137840558 19412200 900860532 45320653 544394481 439586930 39866922 748505130 127119743 312045562 622192031 553637122 680867464 640261610 584259579 69674770 271028637 520324480 198406717 882827075 948991902 548662720 506949357 863528068 797593127 476782602 334739633 543385671 809438736 950091269 410762232 680639441 969447907 248991190 979118602 721968677 771713246 497042660 699110317 270782715 986075127 871817645 703956414 424003786 32572466 227513891 77972904 959370077 919648239 45010470 348890578 265293198 876415815 457356423 967384111 873593009 297638223 613334277 189073637 297694270 27369355 597273639 404119601 213874129 280904384 250592201 280160276 560631240 351556938 68389029 611602630 130379712 214864320 259001606 556960175 820207229 788429602 296649863 851027237 38117671 375648981 432610299 224257149 132012910 371111986 530225693 175272010 61141100 147724062 214720256 476217875 313486669 910764323 530318286 648951446 499177950 65591527 720463250 20976188 306942699 468379856 980160415 151826253 501092993 293407699 692528772 752094348 632289093 467506757 676978603 622018950 166269881 263362723 270559137 536678008 851932584 14620795 596935006 747858140 98052021 132878794 501761946 179180583 754412327 379990716 716971768 908175916 491605999 861497034 210502995 85860246 210807789 642193156 885180493 355703508 795349967 28867271 324634792 435753702 455893019 131991155 783958097 872701666 804202008 623948530 111985470 746653161 844288821 755189780 21062529 554367279 428021452 83660043 997996922 58261197 898307837 408857126 541135464 65853925 512295084 671409775 679687312 555377554 776345283 868699354 417303240 893185872 610689959 695775640 802500762 153292220 997239789 679098610 485417930 216779748 939555105 929839892 600443329 166027223 290118629 81067254 893957909 180819709 299597294 943292337 602470781 827772104 912175293 680312945 240631954 436386698 238458876 85996715 629385975 812093405 289661437 501430404 682708823 696401131 522398250 482831462 210274027 928897612 522613259 869337666 667373521 51869491 984945513 640692858 549082161 353570320 309302924 456436512 608736833 671563809 712656748 297012271 725964455 850310504 409623675 804230186 897107966 783037060 653078525 356152533 417955996 151766200 175076383 233294463 86782002 324669463 937268338 609918705 938990460 134066800 397949223 78253717 331106336 513031950 107227787 874148934 323808763 410343411 445573863 102317363 741468038 145093011 654837339 542732830 104483 452842949 885298393 610353148 101568009 11482938 232641858 715698773 947770568 838048476 107237906 278910466 736047388 943672304 802300653 567815081 272988795 360367095 795746634 31133681 652422501 260447867 499674202 726893011 658041704 54930831 896649657 625641728 351018120 721459392 119241536 512867959 44766594 966647521 25113555 934663366 312737248 502828328 754867949 341197317 43524066 692462923 15019436 118018026 448370222 415284701 10724785 586520510 692023325 436525424 538018047 850616272 42991093 145837916 700315153 532579661 819704069 808346110 949254147 944470770 436839603 677736222 783584931 183819902 864427439 553000982 150474592 810019231 655194121 44335513 663110700 651657320 922744876 631009101 892333482 426813589 371348485 817433639 246759024 496362999 409177762 534883349 232372821 311282006 442882389 293211403 71441308 780498449 640174562 651904481 246272532 276781458 705449306 669200725 931403332 75736548 45784074 683697563 687501643 330871103 272779306 551065710 836313803 755822119 34918132 778918026 460838122 235246500 448060181 25645127 280559373 718046087 327525266 253396407 826036689 839431934 846406234 636995751 539399569 126014232 375657784 703624113 997234804 393436471 626149470 797558652 778772739 668215521 906689556 298413281 580581954 199961378 558923835 744106706 15158296 136683930 763869644 209496524 962572428 832361077 605879898 99921466 848366830 614614615 116603947 538143092 207694443 331159054 870700738 735757326 955080276 754372374 366175821 277170262 833383188 815980271 190758509 870736643 290616981 13790873 343631314 42612088 359769993 271899327 440458176 799671274 716881817 469839326 819501156 502160665 497784565 124355640 135596419 89290345 252719794 662700929 105781814 506557949 129842554 119381888 576316364 953291585 585259237 996619619 912220642 947481178 985306976 979081941 315100883 330671441 930168833 140082949 736773568 829772342 739209123 144146618 51095587 859075555 669803220 243473759 469859535 936064399 87495744 164040136 659467217 179943321 450747299 512351870 164891593 716708070 362024831 344457112 977723751 324655043 26061317 424618332 131451218 667785385 477765879 584747620 795833939 180775804 594510761 85430068 17359606 677517995 224443524 90318490 129982469 260833140 638631733 201958810 256298225 208693783 814513976 749745197 277866740 698649899 817358786 937336762 193386428 307430620 675760574 882226772 774842298 937851642 222050642 487859314 672780325 960432750 354251796 706522873 478591973 464318298 269922088 873492317 554528002 921117953 163098463 28373560 590931210 360862506 988306804 549534304 812902659 107564282 222455587 357359264 290296657 627933398 517163762 504232513 474304849 184374545 787879843 75747659 697656455 651078515 626061065 606039720 417033802 210378165 307127084 772868761 716589553 184407298 223311336 693335857 469088310 373073392 804684720 912564569 888850076 632504286 355456675 237142055 260823476 728878893 580903440 900593358 870539782 723099033 148552362 207577266 615472173 830637970 846596794 487233347 485565404 353918219 776838545 896412788 573231417 54842927 731821878 163558116 783743415 950377140 421655964 409890396 104124669 785614023 451159854 909432529 276044513 695530437 90753903 52586862 202641860 866334613 415324217 200934867 731642869 32388737 68011598 223957223 685172219 644293683 356815427 631101666 254189947 72358407 969955532 745316689 356769309 900845538 740569798 238749016 350530176 8173325 897392126 603351711 358779083 716871339 688991274 583367341 83650966 523532792 347438244 762903219 458744268 658335459 756783610 495100726 497116509 61427301 977040697 31926075 488228265 575002637 481885511 892295815 957128750 640702030 320435630 463491948 564970115 170471333 622689120 929547294 871299033 2763696 784527266 457997716 167375271 587010453 347988690 404119473 747991487 79343656 170213427 707848547 786424378 92391870 995394761 971954590 592227199 851859461 562534305 987953507 72506614 116814694 540706710 956668749 389238354 557268770 733646293 46847926 898651104 248217110 381545063 905871107 101602015 890692658 447652597 788722686 628992552 883478028 916500068 87195928 860351371 341092662 699076164 946709944 894716649 230962307 415380131 665311007 778509381 190893182 222714182 67361561 534793219 132142627 988547568 971055793 311922803 305545168 808627972 627702671 605637925 609985439 973144054 467552888 978778057 643397767 224630667 541678853 64739289 346423463 177420613 253995337 43200415 93001430 632423276 170167917 699211093 713487509 64438222 780930398 173432042 633032668 320671896 99094277 217481821 567648409 36868185 489779361 765755999 16527696 635016815 630286802 998105084 987187619 864443365 335672425 777160929 400062603 423874036 323732703 885808013 355365992 607218992 44250986 425288474 572950926 40800905 486172283 882269582 19786153 625422730 253825297 374383364 652154399 716843494 374363773 786434098 753913914 145459042 536360653 154517596 74736169 421106534 679900767 706289319 608732671 58123446 750734921 294950954 519226588 195253771 174804833 890874468 531667593 542078345 245335945 266074299 698951337 762309720 733788910 78038425 825268982 808859393 272519806 241489842 589235202 715784405 283539696 228312474 807385272 137699261 998667584 168444118 192155401 700832187 360130810 692139258 828336959 710245314 170155620 688422879 87881555 764328531 758840283 504222760 623720825 935571350 317536715 292388851 918742981 840435332 67844040 946915694 637880755 230824130 227188759 193494340 868762750 800629292 151613011 616832059 695415339 430132924 566943425 418520075 866839482 315746669 269929408 31370594 72899786 87021480 703490507 612574183 558355166 224452391 616692841 55778200 476694756 64922407 432936917 78333430 440734210 530596656 560745147 192999359 353124352 807705633 627911465 855057732 479867016 529670945 413197662 612266859 486423230 823954309 761145812 336664533 758623706 762123291 696337835 669093207 672068611 301615439 284652101 831351933 716979739 279858087 440156348 334422097 999731935 557106509 727018951 818861178 753475334 42759141 177178230 725767710 834053492 997117911 870456728 137680039 937371323 437543125 352986583 175784223 583156581 362929577 342358478 825123990 24181634 759710851 694943827 733545074 826365124 416113748 721811495 998925206 892269750 327376560 279862782 823646540 857405535 189420043 671542699 360121528 59134710 507189485 37825123 213110030 675624015 863409125 861376035 580145878 784825022 842753765 243414284 87003471 239639592 649057078 819674400 342999312 805221079 937081155 905759336 80162094 629971796 473162018 992435370 714715932 265814447 112495288 851207840 118157178 893610012 953575685 298071426 219354679 199854047 573047890 998949617 375918066 385393112 824330179 835123664 389732470 448672494 722198654 798365107 969272735 112866156 802433206 837636296 843331758 654916766 455226023 889718085 726252571 762535643 628713115 832635225 470688709 167467353 986212484 832819146 657593314 467771972 676866553 125081643 608136747 482537431 867119925 259464680 684481870 964566701 500654551 436009153 270239558 732250921 422775117 331121941 143750698 565954089 446695452 412169971 865897904 818108275 110182302 708816082 895772092 346063346 257242759 434212977 638267003 424857301 892909325 867101445 248021634 158672497 48524686 268606448 427368168 695983189 852844817 296411642 733888364 731349999 75805927 836437304 57958603 812130680 309201163 242245214 660169634 297002226 644580568 744389004 218511310 46891561 870851885 988382126 549249265 354905105 644109234 558656980 949603583 63514517 712514735 889918676 679191037 740689975 569845192 227695065 447352991 214337175 30174820 392770702 217256471 706139469 302494134 434979890 715121605 33462764 14209002 392495615 931834474 257423842 69222737 153442350 895185714 154445672 392411364 996155915 83959490 448846513 384692097 371078485 128017295 429384892 125055064 274778056 650610646 597928316 8780617 562206834 431908627 778312741 313680616 927584087 817976209 563269898 784961411 782330734 192437069 68447691 127231960 458976290 31865702 533125194 241022325 528899571 309999947 630613045 830816555 911327599 708350520 690975837 629537270 961738396 612015808 912364855 25433541 529445665 472676084 623662412 879475048 289679195 56864250 339140691 918822592 701276742 439321699 464290244 887919564 372568073 862237290 771310084 690343363 103573023 89275321 922681755 699303104 882552670 70527663 59973264 976652309 254562099 659573495 364157599 521463779 763230834 471481448 6629088 662426014 262667273 649503021 420368571 988150030 795609057 120361462 151236389 677242732 87001880 922074431 408648831 269015784 496463332 233703905 286015402 597340453 861802848 254261 539685854 132856285 507534507 514467394 610884989 882749617 472065329 178134096 107310280 923924908 402503549 584932070 313066454 354064359 555491828 912387143 435904458 956116069 777311255 823353040 59296497 102299654 984696395 744051509 61210622 353376727 703201647 525807087 697475447 913616451 566055932 546573655 177536634 281915996 886762376 332941257 731953611 64254611 103553395 111580332 105833442 88776415 298683094 57740608 346381807 858960425 138517162 705154829 808648631 775006784 827531214 601729790 500546981 410531532 712312461 312001496 235955467 339332808 437735691 243695179 815742139 720390008 277201938 360289797 394067693 502553579 407529759 551032852 42566075 882778913 321983265 827832733 121357531 795219898 825802462 878603014 461827809 163959198 16139479 922759622 242565211 201131067 108302983 652723596 235582505 684573956 745207277 664770547 668656285 542921432 971679510 819629747 327199637 470140496 697131588 662741192 910695124 235093167 886268035 336346041 401430068 424446106 425682755 122746648 276454484 422533666 999330399 797911556 191131820 710934738 364384824 203882250 998127500 510836594 69203817 37524230 906919928 725737316 880062805 450988152 590575717 522322494 943067203 672098072 285023593 779996444 501096347 613742307 642782773 866358023 71087593 105933205 701545075 381121836 854169266 26807422 628333105 119739476 828025192 886015174 596809212 695885538 956222034 214597584 330963317 690253480 461389390 3325116 358005880 36534117 200830024 180030198 699427140 314402653 839045903 534845832 773444512 429583984 676238182 44758801 962676835 882916194 803558186 455279842 135258283 841957003 596870316 889281293 546776522 842679856 674136026 642013400 117948447 646907805 150532521 713503939 777422938 156774648 493271100 317681548 739733621 753883326 355028768 644640677 542748463 297838339 5520209 322215223 284322313 245122938 387749741 37649714 270996398 204532617 818529396 307087021 340270129 821025771 313281539 340444320 130078798 517877620 658650131 782849181 549057029 631866041 419606547 507773275 437308644 789359042 412343095 72137918 868584465 318093421 664937077 108404499 596661583 417482149 764244585 926926722 621306771 953375947 886885341 964039697 129057125 135159614 376889842 680431443 959223388 559401112 432947939 575760426 561751196 974430913 751010936 469797015 515251981 51563733 755174885 853126806 289742537 70387023 517407963 11464277 926476609 540596991 862125576 567966537 258953478 108164313 628152456 631683903 773128923 872791981 363291551 165092099 503302434 474385846 566774267 919167142 180768839 604023263 442443654 240882171 788026479 598562056 703818192 11204272 240616245 774605008 907227923 40844531 579955772 144629112 100416148 308397917 950893414 820108627 512471404 154642626 919416578 121504228 662552998 43318503 765913140 352942081 468073532 521895975 681868719 536152259 235855670 640390670 171525871 545793329 121331106 53454806 737418665 476487518 132239733 641651360 261824951 404152633 528442385 408137759 778062590 940291803 229456731 791935811 618014834 312840906 129403046 286202416 6925412 587424071 996606881 200776517 524965358 891719280 46407847 91399310 3419430 477694943 823987344 237134798 763900347 490931402 443614384 588496502 954075420 838275621 211470972 182799162 851649198 50438028 229353610 162352539 799821960 392271631 819385796 44120667 684598751 520399655 461742119 897906404 327707854 948864003 353133965 117648459 480798740 443041324 648866525 95703755 239102731 387639956 786463752 479834057 652601596 913649545 522219988 290512982 814194340 855659512 652219198 581783092 740904153 840637959 911801594 836588810 536449689 806962126 32316161 754790179 364178917 752787440 131454115 570281805 39589353 179328214 403889348 853024367 237674732 734185577 447739732 444374106 332324612 820102004 198879223 169821944 955152639 81185716 637208165 30101789 80514297 69858298 962256352 526326522 983621057 783253028 607045844 865698951 89471462 96333480 164895245 28053923 397099151 977137516 103865544 201721169 317285739 280981577 880871723 605313407 898021719 184908652 614056455 689454694 783730236 983867802 258401450 626116648 701914493 774373715 143299507 352098769 936730719 919059 422365441 739405700 97740915 482352352 671810832 398951549 748917248 641403419 84439368 755697385 704782475 671535596 103094159 707470329 16289525 15788756 537675016 757293147 446227429 673689886 725364784 172256822 163077640 83941605 788074916 586856628 785516962 705109213 221090740 311636345 424574982 513910975 918716655 730910440 846026071 305572845 372658755 261263233 490555155 57740121 309348347 814334019 662060499 504412602 423675360 62986972 567054942 943673278 797367877 788468393 346268867 75914662 179740984 328775574 47355464 874698848 377887151 166998762 823712454 544723613 724243841 170776573 937232986 384848052 708426010 905241335 270614239 531094732 101869325 602777807 686690209 746812484 525968609 944771294 315520132 803099869 587477298 174975564 404239996 378817178 310336594 714002419 811039673 431010047 119230549 136943894 670312964 32407504 922767755 125497386 874064575 442108658 408023737 469625206 819518797 387968458 130782909 979597280 752073576 324907640 847130483 589980040 512283328 51451761 119358335 301381047 58623425 843354771 610821458 726452338 367554099 208726879 757766718 857974933 278048873 218706310 317684637 696200463 893068280 674862517 655114186 46318938 724426228 957633406 825257073 702700889 834300050 565267728 612111220 672687055 812777837 100888945 970496194 42814046 224251875 808797636 91802403 798176358 649576685 372899191 289541014 606306999 597112155 455074963 333089957 72496061 186372913 560371731 929378382 703416561 283549505 250642786 897118300 3549147 989775404 243342990 584782735 9967703 853540815 625113356 148008128 229496761 91691891 556730234 401598970 85048294 498543696 293223413 694134543 296027690 394301931 663880740 971112511 426863444 782218011 576543314 685460120 826372943 123090142 123699696 514183658 39990165 584313643 638937694 894854703 876378927 184693870 601634175 451343338 737259054 449518731 748601408 464342620 335165386 680206152 143122183 797387598 806018522 536975611 615962190 63482047 159991622 262836481 81643416 550708093 614234488 973850830 671879446 162213740 964334186 870671234 641055644 344377703 906686307 158521274 357289486 507448487 447385494 133458890 678659726 997737833 159837700 502477612 74601373 838891891 983600756 866525320 338703877 594059953 234946068 349122441 646529311 971065396 209091913 53589665 899882479 278566268 172215966 695479370 311051826 745763703 6721398 332505459 959368744 82562649 45085336 206404389 841897693 36782750 660653860 586406591 511243672 975525963 384302307 990701273 872341407 957325320 719819787 516085917 726550612 145917792 511604444 408367236 808785891 860841125 500640880 949568469 600083622 274346297 505624925 702198511 885235860 870119849 660644681 564739402 832909665 882597431 769727589 745771487 617854938 706140379 236734776 742104794 348788799 98574039 790043684 642695907 559575725 571686678 969159592 574337520 299004692 578059273 26283842 847088526 765899636 406575084 856421896 550997821 809629610 390864527 949396909 479995140 956539268 496895561 89371140 321613048 411949769 569387603 509684747 316268756 618177002 648550374 506970509 78624443 398731153 279935712 697664393 373439373 176293729 592643494 511240107 523982472 629907221 486417177 799214809 782639094 918695070 162857900 277427755 584780647 695465452 983305927 855330030 479621155 263828081 139196214 284860055 452613351 418025512 42243618 186449784 958247011 442628086 19273295 988028822 27820007 646383433 524821457 498780326 379416088 419775865 892561550 627998822 722762299 216169699 951884718 757462085 75758735 787287857 883571910 15654377 980116136 874958255 759986328 883298211 408410010 194193868 985188530 640316998 188447292 958444909 60626478 642407435 768104952 960110961 30905559 750116204 964913118 713835479 252167485 700195369 448569974 661159877 575813340 95106010 939879106 508965973 484687672 671158546 335430939 450337188 12649064 105230901 622041335 64213907 951444254 990105131 628698461 256546201 743727883 322180726 157561107 545384852 365281633 417608651 622088369 962581148 95162648 962743600 926101415 870243587 558456498 60081916 827246863 440554692 6633291 936240132 201877317 830617929 678946756 755973079 801447658 56496054 860541952 646438495 602401201 580894197 759411631 345477344 660020525 542935400 58798125 498489772 842392587 172692653 527678925 439339965 823252850 686074968 566925022 19509004 632140708 307838023 66293113 626188276 538943687 615990298 839728835 111616503 530188342 483649847 60084556 924071650 385352366 362478127 724478351 503593184 47982847 411997164 100056605 642350577 604229769 687460273 197317806 435544798 964771521 942134791 98444757 838192532 840484205 182904325 40305777 156142830 339455233 367272012 401372843 841814179 759202068 464867099 139867455 831547231 403875693 473797642 708134337 840663930 787418802 734716404 31921374 400000610 41122678 65222693 268891485 307434940 748741432 273936074 581207978 437260485 528167946 30617358 333866997 719617083 928251013 485010461 343735812 201313821 957812297 783541694 796821211 670560740 688184938 775752354 528096871 105641109 660876777 437565925 504988628 186982319 654464787 685186336 649219101 73530248 879418062 903028660 748137843 105571973 700032862 89305606 730032035 415404038 695239150 699973180 618003811 993295934 437679167 448894666 922063745 167371564 289056877 717221677 992315198 339244215 37067608 339390522 538570726 2008528 18459263 970513982 384220318 632128392 697997958 24890024 151976375 538960883 590308534 803830210 256062238 819507691 234489891 859760296 949377496 259526575 447291200 354029759 204771808 222918723 51759839 417019240 89574657 685296957 992005035 759770192 639299844 190601155 415493883 911858914 286161688 436964312 937508209 215965921 549923567 293769418 455812458 815048400 427304463 396530858 979790407 521769630 340823751 345420195 12417913 897213867 727989005 196323172 423512969 499792222 513584536 153387526 646981111 319502849 32543406 797408680 240652499 909301235 435227570 459780987 968148764 258654049 651618415 572670154 574580595 920841113 999482174 188429982 234723192 411070880 64017911 60610798 389498516 721680170 189625387 991009638 776365487 167474551 479453441 923074464 140701816 178019908 932465612 288713863 484362050 345167793 790401633 275061894 243710816 162725913 204065185 657496230 377776793 703214076 439549140 361157976 86548602 77025342 852846708 928018215 386745116 277395091 443896018 325868597 442649355 477654155 15471798 419970167 594332281 387404258 764409615 469382559 585619792 983101021 399192793 234841606 998840460 773392012 776277935 22238398 250494003 577894091 674141055 692078010 772229706 687112888 280583079 934708841 30563423 905967065 983583801 902645086 79626374 25984740 409345375 359109536 828695511 358690481 644532392 622019942 789810410 160104596 822841983 79429287 752995389 376311159 191627966 365125245 166299972 869443729 243310296 394447825 41202383 774843855 837753397 918145242 743258785 122405117 912233872 991333672 269917124 831860942 95253323 982239959 807453435 65536897 66905308 950783374 765827646 326389210 263754781 574120314 402963516 804882965 725828959 917794458 54557767 10844729 367543550 675834422 101477954 313138155 268781624 554119775 933509339 255102535 68046410 993017467 160451476 892877866 249742691 860212761 902884223 105788322 155474410 147246175 291088933 113351148 498303040 130254322 359182347 962781471 71959812 844793512 145727712 540100208 818783634 59552500 844250408 198417966 443223129 208515316 352332206 679476408 424618021 49660810 68152063 945956191 779494215 494903366 788737186 702751840 31921660 768553601 755387045 998812894 509386045 736639810 160771041 891163520 837640036 579439414 700196237 932180046 873136865 489174594 311461851 531662840 53397646 939263442 597925161 759480452 300194830 886218852 476699455 864425106 718899863 746031543 497448388 469788435 276051706 632145508 488648315 191917638 88686047 699791954 144017093 410352959 359037666 374743457 648859923 995023702 861125942 566596550 265143418 929222512 861568690 943262260 710041802 437807776 934759887 23639220 396194495 800913732 179381314 797832047 443100665 189509858 816720342 828751859 463110259 679138457 657588470 697708593 65227281 6358565 769192420 711415866 172323816 867420425 428679293 891807711 775554310 493623191 436253515 249374321 192264358 358404924 223783437 328696146 512341137 751694173 117908580 682496697 599205258 567894490 332601414 253007953 472060114 319142943 498595887 482299827 880222099 937919103 817196857 656572426 987170527 989364757 206109568 880335107 444138616 332669536 246069816 7558241 855962702 987312614 831255612 386999346 572306585 208225531 788025186 44833120 632434723 991551298 918765506 881857233 696875499 560481385 476563983 651485743 654421272 102802835 206215858 868665001 379338791 201079379 297257031 310193501 293716074 532184079 710054629 213599383 467173923 964602324 733093695 28098771 160272971 75150887 634513568 442144707 644690626 602443421 73622913 360354726 558160449 500340 272270243 579434850 652605426 750176569 412001716 258275360 255221102 919681930 860694940 825674857 125452002 455340840 856335314 678259135 187209812 668624567 102284918 584596447 733798354 555714255 154951213 996439422 268669887 896145136 203611241 735607320 547958024 855861041 499352153 994562537 820449680 145920579 386620568 941245530 266597045 690176232 649106252 186880077 158138474 26471172 891759383 111301721 69625125 701854591 858768472 220782626 644981216 436183566 646787741 728134711 945625567 908954083 700350167 745047611 356828395 833875384 391556302 440950006 186072681 236497671 446237052 710272901 859905833 513037768 815057259 990794661 658501734 22457399 636373719 318916391 919563765 178760495 582762242 187821366 16747473 314055519 906729305 228420051 887929038 883603414 913074307 459125638 587582957 704610630 532182828 654281442 243373295 823878121 882839702 649502229 857130802 733379053 158018121 989301179 720652574 709037606 308137875 515285705 265409782 297358666 624122561 784410414 841464257 304822454 736322739 992338418 737748183 297771242 14740179 815728239 713194671 719801370 604274897 465756808 132157093 961120997 543207903 631810229 549103349 538981234 542906747 523037640 15692666 104433188 919654187 119722958 171018677 369820570 301522387 164806889 631178191 119029452 210711487 595846756 736550630 639032514 275060729 150127816 371532849 800109885 153390705 600693190 28992882 339057857 378994189 768851694 562017642 521288886 303810980 121232200 262561626 56387455 288889931 273650551 14880188 287146959 863041278 980349554 747725229 879066618 905707496 884194995 318457677 557366249 148346596 900240347 860135313 481362435 538147110 624021211 613914172 28063332 378009564 941433290 709346862 812526839 21100389 756686355 921375007 142660407 767935876 437060596 370401585 467007264 378736717 818160683 859260217 284856294 278264853 113746467 256739226 285067370 350780947 158337361 352990769 253667285 883908937 912857991 341807119 603861758 473259449 557194938 409286840 38484152 236563149 619945905 723066681 992521010 289401143 963503680 366698203 619364264 327476084 491495580 534650767 718937897 244149224 984145133 310515506 932770979 660059234 494943669 911465168 382408561 330262680 403241488 839447750 890373898 993905130 601142280 985678655 582072697 553210046 78248222 185614708 924302173 430364621 420397198 998845814 790906449 426953872 7312475 850039755 98980726 218945624 196771603 232423089 262199126 358843336 739790660 766759249 418619379 564173225 837812206 481888534 156631283 1251319 118869376 838802949 413588207 683316766 423625411 192351267 522725632 47585993 784838110 127930995 781438892 748784902 127028367 882772238 720487656 377219988 597138632 571699387 702782711 664338477 499109254 43644675 150607483 413401578 219186557 581789843 896364570 145366031 892264885 147316298 141413018 619180953 897112136 166259133 285047596 245092725 519990559 767290502 423343955 706073608 790326884 20713857 563706871 443050776 214852306 310276128 493008704 390205773 122320147 414864863 562650250 900334343 851419108 325824419 3310987 473319253 285880702 492062925 880707061 103064145 100554222 103166409 174979102 802312923 784569667 406229657 869680413 423756792 651358528 799846616 583707008 296441270 350523592 468736174 31766096 342865770 832381711 445963689 461382790 588608299 850481414 751949744 60387131 900294573 534815549 262578355 586160386 632905464 493415950 792161407 530840671 958966566 692438980 781606823 115608181 972387783 768764156 553045724 43774608 771836226 206525805 21740432 639370148 238219360 739690809 500020810 106415330 474817817 51197146 97499031 397274833 178661031 972615040 272565890 293113158 957569295 262714338 553661457 193605657 146908354 40168121 159734496 202157383 382982379 504151901 887647911 143598968 570069870 711782311 207243928 660906161 607274177 914353557 182923003 585293687 297962587 283472881 366218795 132232201 537218672 115075504 842343797 781758945 144347191 176470764 867833737 669858665 641500304 204672917 254923601 907018488 101103603 341311601 885279261 562918266 836629760 491129356 329324471 163518614 959692586 626435569 875120292 41656920 831044706 482873535 556392714 689935155 918237054 214769196 818076404 973156762 601433701 885507390 574546918 453354911 366775167 716787126 729439662 540196771 846646874 647683474 824732861 26594522 728545578 950942888 187082012 376595436 800405233 625552372 354957240 798397470 44414762 778632326 897834340 611306620 363211214 52965406 821923430 845900037 889322021 215815604 991459085 446039106 349170885 194921516 887367619 834551252 635992494 856653556 459388627 217645668 219556488 701578654 268315297 283106679 906773910 545139538 522080801 283038115 268624355 771789062 93811585 995365242 504545927 257953375 643998953 986998173 414046606 579039963 522640706 417495406 68492959 739917812 120531958 36553218 622994042 286718169 187927991 190685913 438406046 650956226 437929935 115441537 202257594 936099080 631066128 887539569 349366135 812758851 955075934 964764643 847166413 698098915 970541700 714586385 298040031 80862759 521908741 569115375 814707866 841811724 587385069 154522833 7784496 517560466 959456448 885073833 754638238 75282407 916605194 173973949 521428075 835872329 151900338 551674262 300055245 264550502 249364066 762645173 280448226 400123811 799231861 477540830 791950456 17994101 992217420 996791128 363941779 201435737 916473693 832175560 339785921 962534581 371263144 155755660 415950320 258661121 794189788 276092053 199735014 559711158 261386833 939506491 454812241 590507747 275086701 723015262 493347781 723443118 997606343 620482305 939449004 603648241 426873017 886247228 728755517 442544707 800002629 960961052 391627858 591073478 882126646 333863132 553622453 971340373 428957946 279601139 460353473 25590325 497901686 257888559 625525996 799870544 210428393 231107442 642265163 58756016 397752970 891409334 53932147 793731511 242486724 878406047 594498192 719954025 264467797 553777206 984207754 537081726 406581161 477755013 837138318 680747911 303342456 296183083 194427109 160949793 813116018 755423866 356484057 517484447 901785176 911231620 480004348 993990069 722328790 335304619 448694955 727923624 836172879 157499156 650854845 397976510 19359797 928930770 658168265 519271286 205248292 853765953 507639747 76556795 917860710 903673214 56042397 77380369 427876117 478944528 305882099 631446618 189687137 225195880 565117472 920897769 800734292 352674661 65464317 159815197 192814637 547403774 63411478 609102108 537962698 356738508 57465093 266403543 658223959 756470210 684518098 130090421 994605849 20520634 117204760 637604405 347126983 576745617 100219653 468003541 653388020 147875461 427789197 142022814 476514179 648473941 217295464 813287023 203630307 154885730 491737918 928801793 222201854 947113787 608805057 518375378 25045029 60893154 97649542 780513150 24610902 286152878 154109814 62004319 721342308 864171759 211920111 534040783 107966904 864025876 14522107 159936209 399646899 294895697 51749457 145374647 209432111 115890857 877104088 140741218 693840881 51853092 435834940 675540911 290087479 936562910 326128386 98182222 818688547 873680994 494862832 1831287 357460903 431518087 784407337 330099518 642989461 950780032 755492027 836438162 287839775 407666825 947404483 785280742 628820143 155675252 227563452 769622767 116332455 6191948 901473299 801205763 805649940 214203714 795759330 634363681 50726480 188906540 872771688 257510653 672049660 813498082 273920634 299078585 571342286 234519688 736093056 134482871 186662259 603860170 316657753 382728762 207785537 44326540 852961048 183071468 998103254 806265267 389944123 991010858 748666658 226842146 792861584 136143862 19145500 328853288 488915756 142693795 389581511 33176851 512552266 346517526 211588686 277938555 81465002 914624491 319312989 595550187 724638594 891022009 258206364 626997098 991406993 296031927 133166716 822114487 931996278 276216957 658365958 40370864 266836680 806265429 789262840 511017630 953129244 408644638 81064924 531441761 99748478 693816568 143003590 210041294 188277532 838733790 980331689 90869502 804479138 17170477 637278043 989335520 369018342 320750962 94039250 873863497 678942947 767546773 705486251 430105408 918079228 268309702 493606349 48611128 956081485 585711499 756324943 910523256 113341402 301639865 653866699 824653099 136141035 325630525 401653852 730374985 821296602 470503286 269427012 985903354 484386120 514694969 616978241 489323167 647978245 961375904 178117602 446377781 209952871 333084618 914048178 939375911 144948768 348935795 270541764 258752331 752248268 633656991 199185884 146589030 117446712 205088932 90998658 535069257 711193504 242895929 551158462 437838649 658028671 943602037 320574357 649980097 39041408 408978228 878065887 641953678 237772085 179715276 908151354 683884073 629819168 134799054 5882274 579436634 191997358 221664223 870451453 82485838 848904789 686286101 17322813 220590669 740005090 9279434 314437026 816499595 926416790 883014915 947981702 837016088 787246387 47404725 473194039 880940806 866334686 130864523 747468865 129971146 865648363 656180369 606879582 512152262 389529969 89352655 699256929 612748947 305800231 165611209 916900290 269764808 133456765 600417560 876653196 698905671 877503693 373987782 564420535 400396023 14923328 615360847 297501332 983995501 554015411 551959391 866768165 852971796 250587232 931011872 634187679 963985884 17718354 454201625 85845164 582048185 249437139 882933864 104038869 397190036 499838637 44864761 766935957 210367888 883647350 285064150 492403379 510021228 132912671 658581808 14219348 850625439 519701028 806386154 620480431 468586774 746661578 245264660 228993879 507670837 42906465 817702954 844209188 26188018 283873653 664255721 449360068 621427676 172207779 705319979 360727960 793054828 775958694 176139684 804863763 463618211 683993326 533312175 562789193 683206748 989994308 185893416 917849699 869227578 43153809 676143746 293310780 34589757 637833171 443617483 504798784 147208443 570427902 921357075 15879802 478939662 982291581 272612378 34913532 974426206 253686245 939409225 208979434 272258831 981589995 344475507 125712020 110675154 244041095 315503031 271741528 319909601 42696161 266931182 38422110 557608920 384589002 300523435 463562008 353162476 854829198 996046386 241088016 217882866 767057119 167592802 110191303 528823209 365920243 327011953 48446375 392204276 160781171 209784574 919559446 149645850 623729905 912687410 312304338 716654329 342021445 117288010 789369414 472338099 695440374 658982127 424601272 999548776 196047250 388490761 21984899 271462919 624861687 839191678 165017011 538322911 143490774 520355324 807509759 565345142 441078349 604729851 887150011 670168827 869926186 195763406 849439297 403990728 720054040 863915571 663950548 984817774 794717850 866010719 486464420 654951198 103165608 873584112 62896564 662797708 184077038 727904363 16656985 335135917 676218050 321445049 33505210 296850435 627161979 715983919 890543269 743202319 189267233 933133039 109766223 894589501 413117187 993019240 669896703 353598456 837528327 826216289 529634850 525120520 526676586 618625613 739528508 41545562 41521744 786000795 127724455 182910963 454064056 348223740 932905162 928519222 833926755 798581190 682756182 116284431 82551955 61799182 478464566 201169143 736177681 773283855 613676046 801956671 292998584 434059930 123507509 423294128 818870524 25582125 809309937 41262729 537484466 907400913 906008023 521991215 246712847 513937707 5154512 705808924 549050818 945710977 153533853 686044824 920319544 267967011 963644207 709851703 241314353 794691044 315004970 202323975 535470837 789743117 237600905 772849360 232050693 832741581 318676951 416026263 127284120 778925786 95985991 333525450 738569144 691519365 469838714 435036883 299280938 672618841 887998223 472355375 703222241 111630913 728551744 331300603 957471647 415740031 344288526 478455293 226351779 493973452 680754455 57815190 820264105 409340842 63398714 878052421 981612685 718315686 154608483 297587961 937624456 542937682 181423130 283526096 627148153 382006098 661793682 740075683 71369999 41971516 33911283 743103205 202949889 79762516 47941175 546741457 394451413 157451086 125976950 692939466 740711306 567873680 122318932 33784425 699573739 818899973 193748481 686086188 904640087 782171056 172561542 535365035 421204698 353793749 479420905 2902931 265895377 419752718 745860412 122573018 362201614 176485302 747972962 369473460 628087786 265244003 246360338 18706807 656079248 269317136 944967210 206187253 271363982 212821428 511420648 728918292 61822608 111150136 423546584 547574428 145236496 268263681 820769423 87050587 454220824 518052564 682393990 887903309 433039650 217937546 907995896 947877571 301251377 535855795 943044620 964918560 206714564 211239999 378006527 788684467 272325060 571409599 689198032 16278436 864344751 805441564 932349891 912187157 381102117 271504789 414945422 366820225 535556628 706441997 532030078 886387906 633629271 912561365 152537977 441622068 380711516 116509099 17954282 444116429 938170872 17874952 51687888 659026846 772993584 697704696 876877741 835838554 695497787 937768276 798424587 359158843 28315459 563330583 925861324 422021992 721762006 706427431 110456646 514024082 785797361 724945184 712429179 550972743 334690505 408177547 675308992 123912516 24495373 436103439 449678029 281391253 163590329 751771218 648515428 508836682 968750302 107472954 168455675 904060240 364654309 361079378 663777922 434718198 507827303 338541810 311563785 391857868 351298216 276538399 955289048 924739595 380276386 679490727 549156925 484346948 404692965 691799605 395185967 511023261 865477519 696650771 226675906 916408476 119616538 780997083 844336365 464046874 210947497 55477890 905063009 924283323 361406827 361252461 576547087 169593508 349255887 356098515 94661408 812203591 922990750 181399128 375216165 759651351 171630946 281388472 873669410 625883099 1822349 825388268 707370634 507738774 76541053 221230594 398177843 504544416 501753081 104174039 116585624 263916373 471550318 224828517 412944545 559055484 34411728 78237919 553008796 329345523 315922247 956105521 668786593 650206752 518705835 906840033 155866994 679720774 879507156 259256223 313443574 867649598 948787902 884920242 539689241 728244901 297832628 712742082 953438318 6450475 919335137 610196976 554701442 562245400 193488334 579330614 557976137 83872383 705697358 479190275 477129519 973859875 76894519 594840111 170593422 150993673 913773027 873155377 463249900 633589441 983377862 648239875 810386329 429726929 101552777 583485132 965005822 821698837 804529062 455451027 881144556 401154907 529291099 319198008 511228422 890014339 75820968 918897159 537985966 327004175 494053019 613683000 735178713 581234277 647728838 583884300 355716464 752208723 323486255 825472904 14566378 152804481 507177265 74030804 187980576 191358116 218912065 230175766 640781321 430091887 867135201 484152605 491212797 515521909 223750779 820293298 950135773 967450541 392535585 523641989 910677721 533448326 872473500 987068931 322897912 43740039 187463124 244130878 327990593 545241703 612167089 307047396 493574914 591851943 993397593 912472555 134379675 114558773 188004221 903556941 476257591 528583281 434017026 468737768 911796545 78426434 946850446 673809388 389987752 129152573 138090961 166136764 294231378 951021818 628981129 79892565 514531448 845028802 724384666 292362998 474136573 624471593 444635449 539086476 407604909 46770906 707816584 154357095 180726636 373723017 731531592 19717337 488594160 69178680 791263078 766012233 453205604 10490036 985647205 30938537 151850822 45242265 202116384 498323907 438799433 178694084 507809589 342920726 884476628 209436228 177160564 932534559 660551592 661063125 470836630 185654657 48350810 232948276 790920647 529121089 847719401 843217752 394720751 819804907 446166574 652184042 693373794 987511046 140383422 173959379 1794183 319487782 740386586 354015737 564338914 913262776 939678285 442464754 355475600 889376805 712620257 52753398 666290143 461129261 265897108 52898246 998335085 280492312 214931882 900605030 772448502 305408325 527363848 875008544 329873452 719683823 747089889 84742968 561285578 259201771 974363251 808994517 430010556 538798503 411440158 430025950 906402950 929956807 24331879 711707466 411376648 278025504 103690328 563723627 950655194 598571091 841093940 544040735 650570231 300267090 916340952 8607966 317348317 456144772 708496272 239068708 117020307 945064581 602187124 892935463 465782682 924674227 128283969 453904112 983781419 197659557 863204793 368667737 164779962 619209712 402523021 56716370 977926733 131045993 322699053 346907602 805389539 103938755 181451800 901431428 579532691 636040974 407600144 38319273 998362648 354037487 489804097 118531152 789950745 300324953 214780193 555658289 495766566 240741446 508550369 41093231 602293604 747009271 189768144 730180721 502198790 527165146 425856503 464161741 617305453 966146267 184762828 446647455 916467120 580786356 358179469 346427789 834016333 684380958 621204693 32281090 442459742 483590407 860710769 692908729 175766395 857230555 495172243 312638451 580838046 254169778 852037330 369886474 136442948 816438353 413373033 607234327 640510245 241342238 871672921 757874014 994164703 904397094 760232747 982302556 880272111 494559433 199510034 361669802 923380441 110084103 219333484 677421875 277096092 104472323 824902323 478295979 250003219 384140564 846158940 660370617 556135406 893923736 774198130 765830792 211830149 617788235 715771048 973066272 471486279 850484462 483372641 364957036 780135180 195968320 353429631 978723537 230848453 179348544 398583546 795218036 521794273 513506784 907377146 853129826 780895558 607780281 649402025 165008688 202334448 589189144 905666683 577623372 895230148 179005618 140123757 946305270 395403419 963103901 860101245 441797479 614444520 583708068 574406504 548896116 202738223 310699754 537469004 836929764 579917935 670514963 823576245 743269842 574847332 303096550 412348107 946712306 843202976 107226081 883478424 319927801 149729948 249916628 70164695 775829140 905518060 238275054 150966746 638920404 343741633 710873829 349517984 876418711 503481926 215269717 493174060 923669330 852046511 933261447 798778781 159071125 383399024 336894544 421573182 296588765 446601312 235034694 705260811 407876706 196710083 493410554 399368943 508119384 380074269 931773979 589779411 43442639 726754005 590111541 9240312 348562432 513380301 670352069 977350693 689063059 140114013 809481136 766602660 835008405 141179469 12815549 396313185 874795835 844058172 10623547 326314161 109300430 588751105 382533912 721955482 947003968 384740605 15633054 568867227 925905505 264406501 912024511 344674411 754141329 461446639 885071434 539447294 518823475 237859714 440377090 722159288 941614318 880116202 195488559 883975015 928093153 43489503 549329218 758916487 315501714 321178054 809098971 75563350 756922907 17324961 976596852 566550307 412560686 776789878 76667643 276787360 724979941 447434905 924155396 718156424 450414566 333425743 921802488 396853522 700129125 574020591 427026644 997169008 784095448 769205228 291004530 978185877 78605082 78474136 116943276 564976488 532058039 802167417 367272330 663677405 568877042 317748217 956090800 591523627 660382634 41764241 112908116 832544970 660478380 168344051 482107676 337222811 292354443 902490487 805682993 297663515 312605169 944741499 845624967 816863333 776151626 688407277 549703117 670571520 824477796 178747175 566085447 876168423 954126542 733632938 207994434 941418742 353332001 15386520 938257640 293836815 227445650 995838119 459769721 126348318 540898531 135253098 449083388 811026704 466821106 919367709 25403471 488497956 211052775 640990915 933451999 408455320 667957275 935297672 82157524 684886472 972447898 219100788 198583626 269962348 270963701 154345248 633517188 478128865 720672199 384844141 670851268 825207203 161696068 439553590 90924943 781970093 562396588 423881489 868415838 466049307 252301288 970977913 489731095 454978053 464288930 357714717 214840403 233637149 64978716 36361263 624886777 490523704 324311304 407548899 155907891 455865356 667559127 246660451 814013932 835050985 166026751 292245817 119387760 995280296 891227501 97375700 605811212 3935169 927817795 393277694 100601991 555104381 310638916 549434502 45519742 525257153 726406422 661265489 497116410 249814307 696416982 613115674 49591202 802159761 587562963 315137309 502424760 821096409 776207141 45132767 191346259 706004998 172125862 585052312 535166328 71656876 811494480 665817747 849568621 956863081 871467900 694684048 394772548 404403169 396891827 27927991 202898095 279600994 786006640 521185967 750863859 327546610 969751249 470550913 332970915 623903204 740646455 652585713 930806981 476994518 537546310 498082745 190923421 540907240 872695759 490186927 223052175 416943426 990634011 67974450 482414390 61541446 937394727 980863416 313912161 415579890 284293702 659240676 847348118 470614710 888540539 372126316 263928831 379935106 828959693 160695216 338410635 895919605 643662452 672147966 30828009 611364065 776492912 10109940 119013501 821763175 474229171 986754046 625572285 792948766 258159349 293358001 292903701 863113303 386886774 907099691 151354514 109770244 859314220 801920635 766008286 522358259 223279405 243791728 230730243 464971976 168421620 580657894 278593302 379798819 797814262 367132195 910531903 507779991 480867407 615570372 359354802 910399853 642219618 160676833 962188910 90331032 931980302 612326752 606446220 312710465 43021188 914339725 782336667 615965145 959946571 73119010 469743004 157811408 564000968 167162221 468160609 382570723 606001520 601433846 602094304 2488979 161029306 169894590 306623083 162144576 833097387 906569958 891958729 945656200 630747997 694099299 707758282 480468096 118798821 730109331 62220421 510001661 355098016 93971995 42301436 898236067 190991722 964271916 63701236 595336853 608845395 356320483 732152988 880999396 790149589 718097629 133175978 158016372 232274181 878456680 223595109 157015117 738558186 302186943 462700371 466764933 865320442 720941924 841743698 656104529 696041497 411574556 767789147 812122826 721945289 600770957 337939902 805336364 811324926 537323665 755672602 33839519 481744084 386878937 564786515 98414378 28632250 270804722 489106470 18668817 172060595 141097807 872543383 142520675 436250351 778902203 898476563 319231093 305217436 340033890 232083205 351196612 712137182 891622297 910169046 405109992 198414262 297695585 135698248 915022709 638865632 257476763 195544997 985943557 144266917 716601823 771915264 565102706 828780114 266905670 555201052 839771342 449918473 385253873 580195223 286986170 229807501 370325770 849432864 191896563 397945786 534175652 578961300 903589324 466432716 646622398 371005523 474808967 484318140 418404868 900993499 223257575 819876242 582930723 353293010 438237679 8870568 57511881 965277417 70956784 475053840 346831903 404461731 27953023 260774360 431169674 226381921 108767197 630965153 54979322 378508260 137481673 793944067 8838881 992199676 779387639 757991670 803512707 232176941 532100280 36506889 392887411 448634034 341243179 713620245 162259434 874932075 12689760 345082313 630489557 746104598 178812937 679155367 853795116 995297255 418243267 315347079 365013024 214994098 930305476 537747743 568185271 380657461 86053805 564536802 141731670 474247526 317607814 629621882 115624213 158673831 276023108 38597366 132367291 775549869 176831280 372908275 980847975 770682668 525123299 840029831 832559695 550444072 985200981 40912633 762279009 176144873 217096612 773957029 341827846 220197945 159932946 171842206 385779128 833570892 719647547 700563548 343285500 490715713 180015774 356433102 480177846 802449 31321354 875194167 584478505 48991304 99875490 498311826 80365206 863103644 257776721 524349906 967173492 606975241 65556513 178551626 342537063 259227846 827389042 185978367 940439619 787936916 827640995 112210299 941353191 329775797 882671541 591351511 473769010 221528417 340406031 955426754 367067277 198979069 723142575 251936904 212632956 709014058 297681890 141802316 664397147 954040149 559249398 138878369 886486982 709238672 718760649 85459398 679479055 710162631 574921526 755348605 38045772 433605757 967376379 200116959 824083047 73381392 637843614 638361924 204474157 417818607 174054860 291519148 271605508 743954665 751314028 636776346 44458350 272300588 363357317 625873015 75914175 536672328 920118071 742114943 446496345 486085383 837774936 461044774 312882975 743271775 544027635 90010536 412914187 369188533 847157843 739999029 259451348 945845151 798341847 620489979 731277725 802179491 424635326 577799531 644501920 688776491 97345168 36456311 127633645 471051696 828423201 827896492 962732984 908357511 242036650 639674419 934739145 349803145 737780363 427413900 228495680 229291348 866662680 927839007 783347987 349676307 283581144 29760302 833104906 626740281 683078867 630317061 837561457 621237122 448438283 716728436 655552928 343445275 964218311 86300094 725435300 271309525 6608707 330938219 941427984 162177838 210908754 914033447 650853989 504123597 692783285 519151897 699429498 251023168 89909881 292656104 718493945 565345035 62560241 409825587 817367950 119154203 323169755 896831661 343668516 384860985 920133767 664195305 297757098 639243623 765924979 556158084 970894991 48957864 952578205 655507389 560629940 630228710 780150920 794970946 212810454 594202068 393323997 755451037 271463416 560712612 284629471 117464373 990016193 318328424 710720591 344228599 266162971 727560356 708308730 764529621 104730239 302055907 440712073 626794524 771518245 788120606 753489129 637075188 877901560 555770740 377476723 622781565 507765224 947309795 477746191 259722593 598355040 339087224 348569156 424502280 982718381 555167372 489808806 593405710 485011784 480167823 423193881 766924001 918574494 996333577 970019348 613270358 245018433 430858915 191666577 158300983 363951806 611869986 630905830 845152990 958610396 978288212 556287433 6482100 146946066 714595463 780455852 418531298 321624894 936941739 332124451 488306070 237686414 328469688 850247832 550398566 726245026 773951903 526088563 773736324 484698249 377973169 261686920 91301385 260281996 122815621 728633275 653101152 138944187 900406213 387009319 769146339 471682208 565875594 850799484 78755344 747147979 133065685 482000730 431623037 9256107 279934811 327157162 615728009 10925089 795669914 323361453 695082539 441043766 769791818 364972940 745597217 657246996 142851078 996851590 384097574 417213465 667190271 589774224 964802202 737940832 595870352 14329921 590001368 5802818 861539837 617106991 27197216 775084237 184432365 920373782 677554531 900717797 266191146 425162292 686540523 845759066 877160576 303807137 765766850 996636988 187500994 521778784 24099217 379362943 906665383 53100098 124777571 517749672 319975158 733590811 624162004 919186803 532145255 865556204 245800106 726529538 135003432 184045243 300608172 189108186 803855645 358790246 843030231 691494415 439822546 924664493 76577087 644490194 114575098 751989928 920566322 511531472 245874566 368642490 476590723 788228682 18741227 516558754 591956612 838965845 940422799 171889336 158984067 450988281 278064425 621808928 801185573 843363503 151360103 247525402 506158007 521566639 573920042 656483378 747474206 879502973 513432553 450775319 539849281 237758756 541457684 540931074 179618791 993154185 998831649 335666999 370244408 85582371 966026392 957965781 320039611 207977999 119426461 889506126 801359577 198258345 89445778 108014981 2114438 852542742 177513222 589182386 217829473 511606907 492587503 158449846 186357202 414420987 458769336 689584611 904673595 948592659 24833879 223248805 30761270 639645177 286943818 106093909 931377839 250826585 633070149 654154768 965058024 699799002 622223626 211634737 944961870 807815286 784652080 399195484 589205466 168183418 108713426 198895006 225372593 435179557 702041158 504797836 746346353 713104332 524107012 720767141 673030451 405033159 376352908 440447104 989915360 312932945 25755893 848262596 182841439 508491177 275274550 311167017 743180862 146036536 627303932 546648960 316053201 269592173 870163 170995159 876525980 370131204 156877475 834037559 899118115 605764135 252309962 252592346 303411128 749621832 272567714 324584171 472851797 770114476 515789978 854186198 338391344 169167516 479340897 559848887 101478206 419682310 907205135 145835702 633490035 373647056 898902269 700489660 817559272 321543198 705408240 399758573 471192891 217694164 468727858 743581832 744178505 445561294 569130401 914209665 36097508 849220844 872250979 554908521 358779475 561237736 48856056 297162833 59248234 656944197 82548328 180796856 2524138 677130528 457859012 966065716 330948193 801786627 495327952 121228030 903627250 393327202 370608167 834916183 74169643 384145974 266787666 755618791 76453300 584213830 779137465 72872821 962049743 746721295 406089911 248645789 883574579 12738464 439958928 554811950 78064836 746646573 581616975 481686063 102288362 636837421 86329798 280936168 469518466 556657220 46866253 247266453 158131996 793370543 365166221 512425081 374814880 941764501 43918212 844612058 957694424 10701911 784058190 11430939 853722217 164545006 694058088 863928647 465091379 313876054 269826676 788717602 994384907 680299202 608701397 24834488 232193285 769621896 158850108 347325016 467785406 349415700 44607954 783757997 912917286 678966188 167790776 244164889 209244876 754704354 561097425 376712919 568945132 70082093 932817171 902196471 737830897 470992413 305269957 488984014 284432764 359401376 812538328 850379097 690225137 530700780 110436935 127798031 45624743 281125286 984019413 795922055 314377938 687749621 107866476 530069947 229494042 627411779 140728526 95805957 923032285 209953028 980440448 557964334 803428514 309591827 111065025 631381191 368683917 855908162 499662122 948408510 365822728 572898533 896412778 136039978 269999130 126421114 464224619 439061477 70432545 773810211 875985704 793333512 77501986 700236396 63079520 687405347 572158385 651611062 640162333 85187647 198966986 617104142 428846763 893364750 57447960 297032174 655941490 14862380 444090348 172820993 951326645 354046764 980718020 329510592 324030439 774909503 992962593 495474245 739876717 167269225 781303803 779752699 44051098 656255006 893348975 774882531 719666243 383571707 306179662 761056187 736312340 718239275 346167005 43496382 549914208 651912721 158611776 782958685 448995200 17166920 191308413 647824955 152182872 573539620 136179462 623588739 612665078 119154638 901805766 413000727 278485855 175988679 780164327 784024590 533713219 182473061 395474097 782295992 114736087 626940870 884757536 710171802 441807789 488307183 913801181 896785833 510638387 365626248 392121590 762692632 601978313 945677609 56565631 630016744 965159482 21991888 215596152 674458972 550607953 126679572 737781936 634576154 180718596 325709533 336038796 828784277 672602539 126509472 185463741 224480367 660644911 590386564 944243337 169229360 396174537 552344711 608272451 525830586 118342507 357800258 462144577 91363926 898619861 125596701 375137437 283340925 530959707 937777954 780226644 333476690 296042428 857024757 250609415 996400757 797488810 289199622 42383791 509093914 326400772 180201770 889983769 663197312 133631675 250763559 422845798 734365853 199157528 629843576 271781038 745601793 236211958 637967331 793608952 413219441 417936350 17588085 672494525 389428642 129957345 346050309 117802934 96888557 7719447 440606778 484424959 61794004 453894420 737315295 802510159 785324458 725614024 572724344 162138648 335988464 852413369 328123718 988077820 985478637 132108359 514084215 390147197 320703961 603288949 727492592 94042757 144391265 339934451 272243317 150337084 568600671 772822372 177476226 206246829 644236307 545193850 358920694 321613789 644898441 669073113 469364323 913782407 730609916 990584131 621968927 354075893 617502054 523980852 230082694 666123984 649597014 482713581 450861330 615963854 869269518 380397178 214335676 303140476 961931371 649250842 89910 724628749 247354875 494341015 179083195 742180083 501730418 56809008 989844394 59329360 748307445 581810543 832189727 558456017 721467304 899657666 588513476 351646744 167706681 773074145 251656158 662698406 247575600 597467067 29750689 834293185 279158723 964873097 758399402 322202417 187513371 357207909 787203638 720783230 931871022 792792524 720232260 109481016 552986968 813180549 982533535 243773644 920215871 804969440 343315686 130294361 39421140 535433984 65821464 188749706 124762339 719585907 152475568 299948194 43686702 486173728 882154760 193688663 799231454 61337288 274166147 198238462 296582720 831812774 687433716 963114526 129343778 941684847 928974684 105003119 194879605 981934597 473254851 707275271 460241437 253231026 84616460 455924523 495001423 236924847 485849481 241659459 752526171 245055150 219967361 808862648 918833056 313097027 991501022 999469793 280877044 350736049 462667840 521060170 588247283 925865486 677401292 867717926 762717376 29921274 277527289 438847725 442830620 346392717 303036822 589039880 501998445 172306767 393652732 412048508 873291464 426892560 522133575 732477356 846972457 168570534 442900860 632892252 64249441 939012935 136752456 933819130 221554056 271967808 837998303 976722174 340083573 519277710 322705230 574820822 859210321 613955109 770008510 620231777 549454105 805224909 289859226 361390480 439824426 648862875 750032300 272564093 987547588 433076652 186980350 609453743 156142269 516061640 741053642 585310494 796251556 729238940 949328383 384043830 328383800 821951390 922210407 23121007 792260036 429231918 544825880 128779329 656473549 386031483 103164093 383400222 561276425 311151142 588091779 488892636 852631094 638310968 767391310 729730310 582684339 311550380 260803052 250831276 652592894 508192780 680174272 252294753 175994550 270646992 222668884 744278899 894312465 749079296 963120223 2836218 860755513 515509421 552190417 49312358 18559960 164362274 101568111 209344022 468191221 726848487 807666938 903308046 567606935 595082764 928476726 302368025 248248948 657996432 767792167 536066011 532155395 726295584 357182926 861446895 338808509 99794855 387120221 585651652 586084150 710518182 819338393 176554200 818759377 180704527 493725668 759615705 157741164 942365 954801217 168779395 639427990 213384424 118652997 462129687 698730337 876537033 150479299 243530610 764676357 104191040 83549657 94242180 690740875 583386182 90854214 754050349 278843710 655842717 964091247 106433814 289975301 776329369 356698622 702327807 977376409 175814820 346822916 117908851 16527065 461935360 716159032 773877359 524583944 173395939 261612130 498360245 325905597 698109249 194333312 588477562 946448662 676558351 922311158 778010911 308352920 791963888 878910120 907161171 654870861 584637249 347712326 93882256 617550530 97906974 682818237 67234678 378079867 976225371 323902688 414674101 149639856 420278771 575936556 627331731 900569157 754131376 29496355 375401526 343226141 306512490 447515139 570862262 699314639 478423699 463871334 912556818 112617489 793416473 991818436 122731072 698671690 695480275 126515254 914674664 7908072 225212989 893083840 307668135 887388011 764958156 471696940 111210030 892693845 120743802 619772981 525751696 260061343 301529917 654095888 384827112 900595079 587433648 588158198 689340001 693223736 772471298 106947453 735634833 90542328 863684984 625059579 624813451 522024169 933548447 319283581 926604196 803515358 467848288 401129622 768107338 122629301 137893725 884864248 376114601 991906078 537241627 294387239 474124003 849306017 966894054 145893564 763126766 182377473 18996771 105676462 696490384 594731943 178958880 712763742 204664015 193693141 796943507 841553518 40736690 780114590 468229833 751642434 359881036 688111260 65643141 478266592 988495550 627275624 457899558 593463235 201809933 587125382 209244702 346295438 916652056 622100017 20908225 222259919 42623315 578978004 316009496 160513087 80883901 452548186 543302679 274025912 755453405 108214334 359351574 861197572 601077506 805681250 238220932 452362934 834574972 435123073 99216638 296127931 529781311 516928863 186348497 471024268 854408719 7516815 179906219 953522508 90997297 280686189 302508876 161672232 359539555 44530199 246882793 686597644 125522259 530764078 49559862 410057585 963500170 864766717 548295134 440698960 546530176 467767504 953078133 533711111 609878302 371220479 728451696 426355952 990376788 234280857 390369671 848424298 107583055 234239103 97621586 632133337 729737695 354335188 858618745 692516734 762378191 173001113 122700133 964651595 690276439 604286402 455877080 615800458 573288488 423838866 53468794 490506994 180284613 666263685 567463078 571278456 80575279 927197235 210631818 35745285 540790675 586131560 27081971 699728752 385189660 540022156 186509822 551681750 41243684 232980298 542631076 452637983 211987428 580962551 897102065 72282834 917586705 783402992 980549387 308715711 730424502 37715428 264485257 434598608 615394663 591185130 451437787 470405959 142835591 11391253 415679657 128156806 54294247 817934955 119929243 206494166 330603177 346207229 556092853 526577462 309004311 70032874 177351212 512204636 143812474 101060459 107554992 564480970 547834375 287028703 988890467 878358105 934135730 941370472 597137445 992818384 703472124 689046143 403417118 185571681 422155281 298878708 142638166 853595726 29566468 238524931 287760853 348706629 350273610 884930335 313524196 143793026 801282149 21314070 603706096 793974853 576783135 367586570 93389179 920520057 518534779 692442675 654208143 441984592 915531104 147935736 766545858 244118323 991058192 769159894 87304399 67262761 308616997 19023772 253292792 389941637 586796193 798208479 937856285 129260714 690859417 102619952 660834253 199379765 908024839 118305648 858763957 797422368 105662579 128522056 548946397 540532889 291913964 477081891 242322377 830899179 945209903 439317417 221279060 656276668 344624762 165013095 503553836 54563991 981016936 972777547 256339895 425062656 146541126 87286118 705445392 522338180 754984263 286590169 875384970 241835291 97353730 574001276 900186299 236190605 361216888 830574965 689078281 867644300 494979566 847204841 231026474 494111653 197080521 700275845 846994123 597972442 933152278 58157375 76439436 978924538 656698444 71001095 525339918 769651249 859524036 264570860 895029724 76493014 352533175 189963445 254515950 473862379 849182151 236717419 456722633 708864482 823869792 911671237 620793528 314581479 494384668 757208227 583363362 523464837 648554731 592674623 896578040 670809011 257736269 132262488 872964925 794090860 212339776 799092902 136088014 150503329 823954695 475835272 358422308 737238886 416447669 390689741 946347208 114471128 519024622 28789257 528840761 756073491 378296235 929519411 372568654 798665264 616905984 670350731 539661414 788025292 265883137 616980346 409882359 487928176 517975395 823333074 354221467 188320367 806814566 146133753 754934676 578708886 272105 879720060 511079741 912745032 219244934 912672448 314711346 382015956 294423521 983144619 139573058 679653722 74995101 104168868 241942294 909847564 738076294 828454320 768557664 963447259 311635082 186328415 512301634 371180762 892227560 962483680 950138629 990309409 211767478 679358450 255572468 436679235 342489834 400676869 495125368 89184960 168475227 252107861 891025669 157334051 601688418 24434254 428627927 474039525 381218253 772407729 252183168 745485967 40010956 300606041 414291916 593136877 689247709 210570641 183723149 768816826 880409293 790924226 849599303 730788948 304394600 518262963 261537615 200139401 688501410 642465631 36527994 61707251 33337597 834761424 292681006 825521531 261005408 571122796 658713443 481670357 85545233 874148683 69164559 28610706 254283879 248014656 467960512 131143000 535407100 517256297 334264204 276083875 750550206 903651534 135338195 972536731 123724997 466345420 609546361 248949853 597318561 349416432 485985754 595256396 753180949 33551462 515542748 525888483 437011531 661148564 695348498 808519412 61695807 203808605 445371024 700653673 952426469 217319074 931495731 369348393 841207449 600087931 898806754 722361932 148061155 445875419 885321710 182102461 746766951 232826662 999864411 201198642 569887435 114018549 482681584 727169516 795363366 22097585 828715440 521715699 577349310 327915898 213631994 985714495 432359935 912823689 686836602 822127187 685738674 176311157 337582205 257857268 114335493 895558012 104056523 262947470 996996566 456311481 172604213 952300852 747587191 910406985 266295509 142567226 837008650 490234173 383350971 814671156 493838146 951535301 856271231 157249542 965462114 975952977 496927246 365390540 424111570 153746855 412888868 548240528 257282955 295826359 340012992 372558954 144878067 3161691 826833802 598584476 712408247 684688695 333740344 680487928 664085331 230246216 557966695 495984908 912609337 483700480 454421321 659871998 219643417 449174893 250253348 226033112 721616662 612220196 85234687 115242278 35963018 323932146 415336186 856975868 86007985 168165765 104287186 844380526 555635316 793618691 736269513 306872981 54233580 268378397 79759265 665284835 753536457 106809520 535351736 37047325 109219382 312848577 93120046 767433726 728171084 332058543 306333057 756959520 802882371 814036649 512989001 685217188 167417869 429410566 948030797 612779498 595427376 290891490 847762334 978229229 144184730 805331509 511935720 509759876 418011251 637086783 254009322 37882558 104588863 297493926 171373848 550535355 917004107 360359591 619195887 989979114 8823464 854455084 111719283 417332996 524552648 736941254 520809781 764768706 651023217 155778516 581864010 288548540 619451003 979023573 867496102 820921574 821640413 475057889 830862247 489782209 232866175 473558337 520730709 747107044 497410527 572290025 789611581 381836444 465149129 127685237 833380741 479743216 827789571 56915350 634187730 281205617 364339352 107559345 800076847 492170676 875570023 705066324 785320490 621742480 855295053 112860570 248976236 533741846 130020788 784835928 58400513 405045599 273645836 615486128 595586387 250115185 475440192 460162063 174157570 59486722 368169856 870373000 563880055 74181220 268161140 355935480 889605057 562422565 517670572 921156608 377359737 11826416 257431455 822749945 937418466 380207927 807701266 26318370 689419861 49391202 444118658 55074632 815587451 369060000 58421826 431758979 867011054 597405453 54138246 451212263 679009099 106259965 404215538 164053839 523071334 498893315 174741969 8015284 418951383 32918058 189290167 756617424 951039855 83754746 678998272 654522637 672912234 47388164 724200501 207335868 647772327 265854155 477113330 214796906 588882079 416701787 918774427 917607890 242799322 199749832 98144409 196668909 234802257 828123810 587958713 968418850 902218720 62035456 626006640 302089507 427239333 166711211 96095729 531112832 817319815 763620364 107862366 157966044 616812040 453821763 119908745 349094218 588635620 307713866 278094515 447608871 994556600 71399408 615056137 156956203 534904771 520072919 336644220 975358419 426663622 477275953 698741448 569437684 835010 806674329 768637878 569050523 45457580 958358554 164725612 935283020 866335538 437065623 919576831 410867153 214204455 795033213 948710147 276258420 758491706 896241769 818555392 284477503 655967173 956970120 970163392 981755990 967661829 912542092 197718917 628784484 386328130 302669039 997917176 583044811 936469303 230736213 713586420 856960838 405543997 483917404 972793897 483131336 883235294 749300734 73690713 11290885 918816339 227539843 438912461 182297200 557001217 18765002 126588280 478147866 957403366 500610999 258101248 976782098 553423068 427480486 654112055 528372665 351430362 513140634 579734387 274686884 482209159 501072621 940750025 87162312 758541842 928307938 985371662 575314112 128568940 895742625 530389690 137339477 907346074 442502609 857438837 139362145 242952842 343886653 969579331 788071844 732101012 445770867 424148379 313773281 807872201 111252187 639501178 56577944 258990165 679404565 240571329 834199311 186959421 873344772 665240416 575419764 780163699 325705545 912963626 785387558 853636463 940601337 379615672 732343772 637730165 816434031 487070707 964828715 341963458 109926613 132602504 847005685 684971813 636965891 824621900 935470944 212921013 375516389 413562000 352681171 942985106 805559260 32319525 947407068 921287735 876806900 445313320 460398803 941027500 796790045 248752845 580095720 537619614 40726907 174000090 564166924 703795009 346124667 724807651 818852816 45985905 685589289 466843366 899816681 970043942 9077347 154912914 720917253 159804962 792868730 52702971 553381562 269194199 666998983 398558364 135407282 116557330 634277196 64130841 956912057 481307607 40495632 113689151 947933929 414675585 370344640 847648348 582256906 203082303 526826683 188257181 228466669 189545217 998088950 576529540 557968810 449015986 572999255 881600821 510742036 727401919 469705809 194608617 326063930 952081167 486868955 81904194 213801835 379055175 422999416 997722754 349515157 346459271 74525363 68733611 280176594 291383210 900979952 635290878 271752852 965290631 432210977 121754940 461517432 126947021 571563058 912328213 654640581 797063479 898903944 490625163 633505814 810986544 297258103 906532602 718643332 126633911 633649076 874447808 229172154 496776330 688199400 809410872 526523391 330737172 506754212 223806485 174858829 840074984 961699485 727960748 604133037 731603081 596525292 960642645 808339041 851152188 848592621 89648077 203751768 38144259 265042220 906241574 410521647 464794782 904414742 338427016 772285650 698248345 875940808 976488662 878572869 844975016 795207226 794107350 250674053 925260105 216187565 97705142 187186054 328117662 42561929 501584366 672314858 163158243 277201127 51132825 666967102 570966665 392165289 71104363 317730436 681835744 64111426 129079052 270134408 960842357 271933951 176155578 940029009 279556755 793490068 746725728 447355178 817967681 858662830 218625592 726795839 435871280 269484767 342054043 725308263 601146497 696377380 887692378 412428913 154171437 426309692 848178836 905850562 806975849 677469716 191686629 226568877 996839369 597628547 527400340 66401814 428710494 182362374 873513750 37080192 266253772 267812393 770673044 893885 307032618 255030554 819923835 438069680 834164616 665231505 107730108 518090455 432634672 468009500 331539999 634892507 244177083 889242607 451583392 98547684 502978616 456513773 673159102 144861719 933929088 876946571 430433479 491496205 913873887 880743385 54847667 983920171 47882602 700797412 625922366 104014203 235243975 391392246 394052621 3218834 503022297 144787774 151529244 927848331 955338274 338706446 427568906 984459650 391013523 747865593 390082796 530430651 909136960 464905290 26885842 401615958 362022152 302898744 690582880 440983275 551844249 364657682 863170049 401475593 410722175 834476206 536806340 982624918 88056001 750134443 704415083 589774332 395356206 154941232 671988865 422746845 111439301 819909529 733205610 128515249 340107565 17094911 905833163 443376254 505420667 953160996 556174764 612203269 649114571 240483973 772851042 544220099 141558043 913321388 927229544 811928965 629983299 153900366 329790934 514727917 988846529 868998388 256725502 847709854 751762569 639959411 944219695 434605644 108452277 4486972 148600297 423234331 101922 78352974 232311794 277007187 897323018 362754245 351162762 538610553 42824738 480590274 41774780 839056169 437425904 293018092 265115498 706012891 222953710 924634575 80420113 839721580 724490643 371715726 739111710 125390558 546833100 566965292 159330908 488645978 258595970 358888654 433686452 516061682 530326746 342014458 327596751 317724565 682943146 233980623 708362542 329701508 219893357 615947020 635231962 316705255 771963762 443555141 572107129 775515908 832688673 611590690 304463363 18393527 145670099 206105840 589945698 412488822 871098405 203716361 18345151 313328628 663568090 880371131 316250884 288752567 660466616 316775544 982698844 231474057 76305922 314832081 720021399 421967841 969322739 406265085 208750471 651570338 517610978 387842806 927936773 658353895 765259599 949229397 319349554 768996386 915943405 910001690 61582194 131770052 772338933 269425341 778071966 506761471 168107817 121812969 734668575 533528789 261632368 829098722 470127284 476874730 906728638 745073846 605018963 645240747 544563313 768158018 729130419 13308616 458210176 607121325 860399956 459271428 278820539 496260920 49819079 406381472 363502923 802245913 772331385 299122630 824876772 61506556 585046805 608598014 290232800 12421167 608866950 522775877 751257409 79961737 393049411 927945986 853049262 323468509 345092256 628901923 153048501 812368470 459382489 361463551 863773081 197405546 741895754 124278986 383873526 954912246 492910456 448734728 885813679 136948155 725076506 993708928 383030872 466469685 323908561 974888622 537390037 25543605 294247317 60750813 594043803 216868516 534640191 363968754 669074636 878869944 464357273 785224298 964407377 633572034 585732521 18065287 685868958 949390634 113365855 442846089 18661605 339692710 240894811 682662604 992342206 813465897 389978910 860430411 75374865 158365919 178688767 103013089 832433722 486331035 699590279 357840807 401646457 122389471 316091966 516460300 741415785 831636646 156039494 80796431 161276156 789448463 98797843 512785767 432402497 535621571 172275554 822912639 289145172 539705359 317429003 6322432 661773522 499701300 146270396 560576939 54428827 448632555 729683843 40177691 757521977 579336517 491027826 984414195 406431611 761504017 860386221 901650911 24713822 565456648 98682949 590927766 448783772 190335905 587580379 505510085 495551017 775357939 746535016 812146182 799279207 711308994 727049978 738244772 772955360 214897591 33535260 124969556 956256695 404112378 883657257 331669797 475046627 893114486 459166986 750131642 553272239 649971699 511592754 826204016 569609818 606704693 965729730 281321522 304343323 495655457 839113438 779949879 86391912 788849803 683778158 404312181 722387641 516308143 595072762 517055021 236517254 337374619 919013466 476974229 855963609 971182325 797613450 158991850 285836361 505232363 392804019 16548241 471811137 752514368 25969226 768819441 704968625 828450692 40448844 798704257 649620036 315829792 683492711 754636870 983782059 417929619 917992417 407789345 654106657 783061114 237162783 423000642 749817233 962128301 939131164 194090756 422910125 641820241 298394131 50000637 173345790 235871537 771445529 16945853 974603561 874088523 620033705 635041133 8393092 85417998 940740065 710413491 426099218 175094140 93340148 399046365 19189487 247602563 175206379 25404327 205087921 192666357 636491902 924812228 515189524 547053001 809390594 739958750 981831922 425238976 816794232 270484668 21655452 837333269 862289773 104685721 775675824 195929213 358934777 701841907 344546736 264363612 913917817 666224343 952550053 606044071 103446510 689319865 359595668 692181899 874032204 781585806 260006960 696693839 252973973 648575277 432993674 927626840 776093211 417910212 756740857 146309725 180495241 496647783 234126295 155418843 871417064 704393985 561436299 466846961 107096548 143992602 74720220 265460820 164953256 226277159 791249910 875571003 486779596 94862124 14200511 794231243 495661466 118812818 783515288 120340260 441781027 307240372 581038566 305251294 17881671 604500946 420946010 996887433 792010120 875415637 280701404 993234073 71338048 869719776 785401897 332070419 261975432 659726730 152410805 374595614 956373793 367117401 776236128 561232592 276127388 162782032 685373694 168135150 271085779 248211520 625455293 462263039 147664327 191375289 272763900 664480039 830457390 934221597 909077601 731707432 398133409 204588722 926170570 705869794 814279553 353460195 133553138 523831332 497411220 971665975 77909000 425799104 876790937 282183607 798093163 882020596 839679061 538721877 554696023 754865252 404885267 397609639 571735641 864259422 462014707 684670350 644391343 395836608 392199213 307102011 698666879 640048739 978591139 821026250 888689408 388009120 124005888 130542762 426877803 872104291 800195903 671282743 598734740 482910554 848949086 864565890 671097804 109737454 183258523 297197877 783827807 504642014 223383248 413997808 378682645 997657101 207103511 270144211 590172051 888226156 448338587 951337567 912647583 280447623 633720994 697878361 928030060 547856325 971094359 880617786 111680446 631027191 607924803 698916840 866302369 680358900 858910727 424710132 859606589 734278055 59724671 312725309 330519345 388320610 955597007 234649878 481531875 670273222 690741780 921602572 515119767 63435021 318960090 395118906 358763709 771326682 723807258 457905140 405395665 267785739 596186029 33846313 551861189 66471191 275176077 741858997 837100519 162321271 189785951 72059955 539088039 359394998 260515099 92634687 54523764 816275836 57672034 223337366 422964606 358410216 756835619 364420827 488109642 678647509 876625504 682906471 862673836 208050016 438975605 477815378 134766446 263007186 984409434 815144128 865214418 272258420 576916019 19048027 724156569 780539170 884756999 460794517 551755127 225412365 907317987 819720194 811204685 861266224 686027449 104137209 461165114 813700653 865720192 829404319 703816959 808636672 871380966 744929721 751087139 302056329 82762653 488765574 344040447 264465871 952986802 271526272 409127063 980616412 587917832 314667928 293304829 242255037 143450554 966812438 899070527 805830697 574675708 114215261 715886227 264010222 637853608 716776090 101598168 386188958 677038933 26983042 568869870 152163264 309476974 665572024 660279894 207411313 923465259 98558428 197002760 649578510 106076033 361887182 693543689 819078354 55747750 712986124 952266884 986261172 55737571 431050203 11116412 795234426 713235250 73291170 176481369 631840993 807861564 150903191 870045056 569001100 892665416 632781816 258049446 913067734 408394122 122429676 940180044 597476205 758159911 570608242 668878195 746046594 390092755 416730549 779076344 686389398 616109997 685811223 491168962 774632805 935616709 363746811 674701963 242492136 282895539 331461557 659560226 815958149 29031696 78156865 376347188 880775422 601448462 38973181 371353616 451433390 188423113 807266748 68944185 773462149 70453574 191833010 244201980 536626964 887333374 205052640 414735166 742975959 156819564 462028622 781052576 960948476 663099329 770878418 708439474 430915519 202946777 16127171 88438618 265265743 141278146 819732695 130314063 873926785 327496367 709551231 710728481 957066546 21104351 116971047 790320962 947437903 270181333 643800516 657824762 485288220 799749080 514567308 258399012 498364382 597653284 972566 967762315 69691340 739317791 640699553 66453273 497360324 430274839 272333111 32093799 21324093 324106808 952490436 358524187 101284968 751562958 783837356 41806669 768006831 494879639 592848341 120669719 390585105 454524395 408154232 93058398 844740655 785427505 782111234 171753615 831570627 207758049 328885014 11776270 747539942 789454519 685008104 167066019 335108286 115361130 998816652 740359842 656002927 706018574 768241450 250216453 853531812 306376380 410717825 932220680 427571797 338773140 183886392 436708789 973265127 307570101 947590351 275618467 474874088 972591831 826438514 309243228 663105689 968306401 99233293 832630319 331069780 523081437 883965120 256693551 348653539 645525838 314201991 712933979 914847342 586095956 130404827 301452997 661859742 731456419 124210183 995140788 631005927 645671169 999861794 536819754 963767989 329685169 610528839 448004094 285755231 60427701 575010712 726751554 124624922 235966790 614871691 110308525 645832653 57670389 312151010 338517789 637906906 951157526 297266528 854560846 103925025 759483758 21648087 645314579 538609827 667230397 816216834 174157884 281931822 285193066 223477511 984328937 754465952 486205849 636830421 385192726 759593586 560524618 250781428 222128561 588045219 223841040 906126241 641511105 432379368 298091645 101445223 907930213 143774089 367545575 777367047 543815900 303183255 367273240 484532632 681688777 806347450 28580305 501382362 461853446 106018386 802340620 806042924 950456658 708366004 323763581 877202483 855032082 894531374 730567616 387087514 849021565 695485412 138995547 267527584 810983094 155804872 319864424 817552341 604042954 148475104 322516558 550827561 513736819 32200199 873745997 912305460 171261612 274402808 373388099 941356276 451026985 71881358 45990563 949163348 587326587 194785567 808343977 133450221 274878890 180897649 553467530 599617087 843296837 544125792 778023430 889895805 603198729 134305331 580301551 773630959 165436990 387669161 544418447 46351468 559764021 208123656 798783261 447952844 865443974 259542481 107408843 622431933 808377435 561089688 987739319 589746601 538121692 65638006 869732595 271593454 909258276 369395124 214436972 663572789 606338273 875628037 747941628 616538836 186044636 845622947 807804734 377673663 441907232 928728736 233325501 34182383 218921887 657580930 375795820 511038993 226375274 691225333 941714700 145821010 881910728 938829760 758024278 386891298 367293826 859147339 197869620 949180750 695505300 638246523 527729352 907903828 821976388 979377861 417619431 978531944 457132219 234565380 679037659 562589844 674646388 278120557 634665883 617147530 751560926 737874077 590081175 608268561 261976327 511454974 801780904 936829138 306470936 894874370 639518012 936239436 707314631 489312900 857691229 384198782 57651138 549129747 83820965 584361868 237651639 11537137 928272347 224290603 508371151 389473870 484342106 180584586 628936738 737460361 558786928 199158985 628166516 870008050 36319075 256338736 939770215 55005635 480779146 599359293 514679003 158754401 935876686 872925721 725711831 969084860 551567744 607298305 580374526 730826730 638057404 436488895 870688718 774628926 86930390 830934554 376396552 49402899 886453371 131808620 243765285 262683529 606121601 296829800 964265495 271558691 937769395 618157386 346985576 319266938 290976212 944728202 73441417 707380384 176722947 301243512 932978321 602183165 204600316 861493621 595102621 769661302 729353529 273841964 776243660 238883273 21604572 329899788 332347842 909339242 354070129 9773432 696514485 93399997 843214271 734775736 774446033 560212393 845446863 558511870 49120493 276176961 820305114 277354814 487897462 947592631 968918581 495446513 221614005 496520240 897991845 468666384 225835994 681352256 204916871 271244041 300455353 961647118 866199091 626851049 166958733 626165869 11789280 153817556 733337431 596998780 390515270 38229827 958441291 831159984 277357234 189021217 168203499 430690802 679654652 583588012 669418406 830405584 277289602 573776973 60481691 76661658 305711349 790803217 995360924 696969049 813921716 532933038 3373787 923015604 458481182 255409536 542171842 492937847 359335501 350803159 298823806 929761391 670199545 636603303 471746359 733666766 845360271 357549884 680591076 405446610 343694636 673081998 651685006 180383306 251789854 161634760 634782190 716617039 525014241 481699481 776320172 739400561 746813915 595902573 878271560 388662512 437450951 386017679 246884149 500684908 71871367 857675433 923408657 726471381 883215837 39681548 681837054 705383170 399766076 967895198 649185303 491657376 523633324 511199456 593401275 229734149 939545438 441551380 624225039 690072734 280484853 36804255 720410819 138666067 63310843 210810917 328244869 290265480 969457537 570963436 750539715 298336832 309197299 868721558 906523393 806670067 742296994 98743180 642033609 660481917 515355210 583333533 549349119 6940665 559816571 61401446 589134669 676580003 24941585 186873898 29360125 816093240 259743058 882365819 360774249 325106810 736018029 444181618 847338849 633074398 71550312 994006510 996352382 681380778 196257561 133412452 754037679 255359845 858894423 588085578 806091418 148355643 379909399 800252829 984258766 538438460 954987818 520179788 887568474 645297853 928431456 962777751 712529645 466458920 106600711 348602146 281449829 526433274 591752661 64775318 235785332 507809784 840378297 277874588 284342102 566341142 422213464 836333341 274417781 878266343 152041401 486695737 558210835 68355192 795862947 446803388 534871338 42259189 50250006 977107667 311027920 486451031 332418630 417950322 126750311 991287500 383234961 194532731 610950221 723050552 865728394 685434681 582975043 764045667 260513762 326991726 273916590 324331791 881720028 589295743 223621567 430557625 58668933 204877705 685895692 171103362 704906708 31911000 614218584 422223862 588814253 44606147 442344427 631089995 968256958 999241723 578900951 746605130 877546757 370354706 642276225 279852392 969854893 737912105 40716872 569451505 222424383 822563389 727140222 562699785 68450270 441995974 617015950 847772131 269926859 529349595 220462051 365796850 795565952 154183927 386506503 6897362 882498196 114058682 279579986 570210586 81692141 965814093 290774928 634756184 540101638 960967242 169645614 812869395 79550129 859104178 699261459 218585701 951088187 189296097 684000976 310860334 381694700 415575494 950551198 125301010 396343689 760551314 713321969 12739786 464618598 444576832 221758564 424494808 861630838 491764404 79968788 762974932 953261858 448265706 202668752 646944777 173808541 44577606 959599301 227780403 487951793 241733765 506108287 349440207 5112137 642909706 44178081 349480673 694697741 380205397 44270293 603303865 910578563 789160325 989805475 717235967 268772161 528673704 694302611 312656416 9362264 180050298 625991290 755312272 698345152 64455592 673172020 90619740 100347271 758825351 680853593 96485562 562385728 802572551 566439991 61604415 261663034 223131819 965847091 236366802 973737248 212572852 388158932 967203310 686187764 45554060 684722288 962473068 774168308 8196738 962370350 526083608 969248072 318538420 544088542 381407717 570569721 961693077 427689530 567997655 459050181 518439639 551178870 531571013 161123168 742389767 17723889 178167488 528139503 142602346 330869588 822180448 559633193 21197223 493351640 536325507 749653793 951093556 666099886 920860854 720174247 725057803 911980812 17657902 552219588 690260849 823097057 318785973 561943789 650830835 731089345 759064217 259092199 974099308 748049855 536601268 30756625 827553040 940080972 488545908 213282700 910011354 757056408 458557932 364362014 164736680 60808161 233038518 951970230 30226755 302973216 614040800 740582362 823665618 883605061 777543569 826848851 944422932 869554914 640401961 511797497 230844729 143625881 690594312 68362018 930208117 595252426 477960989 589187651 811634382 850562007 477278828 966302451 11732878 510323566 773796958 263371144 18034363 770879368 836724246 97998328 916751640 927063759 94747682 814864590 684921280 251966748 18319001 31916982 28997505 95099209 958473845 573684680 852366102 976264897 446893081 426155803 275887234 156440698 914331135 511175215 920357035 785983311 892599791 473551388 440231857 991181463 609175906 476410132 475147914 103314708 104359743 216514099 963337191 200039348 240520459 861476795 230215529 221012209 711529271 848875890 577843483 116037381 563919046 198370323 504603241 190040560 915506040 44280960 523806197 791161048 762412898 93277593 230653007 535158615 998725153 108529329 185432227 408110499 196962070 840334879 406891880 580367684 778108997 320677216 180206973 804519605 681751422 595484948 516639664 398104244 432507362 182086090 173058951 203890369 543842465 542401301 649801096 828633462 142202530 224397583 903004255 946612300 272120050 433971224 740012147 340932644 271340528 438921253 737839196 265679876 365663859 848209171 219611565 114978392 890573204 721939774 418711976 173867234 723398664 515382713 219147503 814477824 459911386 18937818 24756604 884209038 99025108 538082770 641963525 172256068 909079895 121453268 800057796 698471393 87515530 477720204 187580152 657070772 48781566 132361599 953031956 938028397 570087635 380109142 564270865 931343948 969302508 757799391 30100283 391063147 178661617 251768781 350371945 122330316 659511426 470926044 652723121 211155633 205606650 445051021 559302557 853629422 989483283 74334151 60173122 830708799 995419653 702627474 44226753 502142451 959246942 515703665 145248025 844709417 568630951 171987604 904841616 328042707 144221799 764328064 273688094 205091300 431650655 862786162 95310811 938044033 860472134 457436578 592527947 826565328 221602599 516956465 668507564 444923952 623462144 347046448 759476045 838142585 658451716 332008627 795171749 454999762 512063967 283847221 698067359 229127012 959274055 319617200 428441682 480166307 180092129 631235217 288766716 244381470 80806446 906842958 638752636 709803251 607901832 113795488 846190266 179211801 645331361 248786574 356356933 485955644 796709830 979099110 353654779 319076804 63797480 338329077 16705326 168947131 227153275 794553552 317145402 654778430 857125236 761143236 412448644 953033039 913680319 141994517 837774971 698442996 423811375 966629305 89222581 988717919 667333852 56629845 845414692 919473124 375513973 695454667 798650606 365112300 437622430 757538982 69019811 685177322 880691621 394379711 95340046 797181824 542414090 1636893 865371047 306540749 267564599 705871490 204761083 696467709 673427384 505158896 3500897 474588291 852732081 198546363 298557701 769442645 811403183 708469282 117034076 257376974 39373684 63775856 857995273 784672059 151713067 933847828 274885426 741310047 390509918 363640796 617867599 87876529 408165907 634907691 484531772 896669059 711482567 768167594 279815903 31632848 823204674 67975489 988201373 286895442 358929310 809564775 958270211 782426161 717584006 273150512 987647346 986983051 966767795 191210946 55219538 546286456 488589171 964271533 26350720 124247768 881936192 641484149 949928578 936366165 801305063 75435492 236576688 232680325 116028234 371959297 93407540 123480594 429715352 164494955 998412504 266709169 481762057 891154842 301929370 529196801 329957452 608989521 629025485 139849682 979912394 392694836 622593561 628854883 794249400 367701506 394183611 144725081 24484338 683830325 173405218 190445111 900767328 975075626 477576837 655855846 397815800 158584016 353672667 87050701 193534682 485402701 868471374 685677420 677428759 610955112 760641530 651111337 364701242 162332870 237005333 725109487 672865509 717999129 942584775 101787153 139235431 990179015 317627529 110265828 4418576 371012460 378764153 320007941 937422063 423931098 207537117 74504471 509253556 142568429 483105128 313234339 694928247 559990507 186064418 733443635 902048039 465832453 794683548 623553657 854725319 483622385 765457156 600731663 205227047 37382497 516829177 35445463 534592758 367565796 768395413 651844214 170290109 385937219 651106500 953176870 866346808 454850512 655518903 287453788 620233361 759722353 513094978 165911443 154809756 747892021 490105543 837464001 271333928 402742137 926474856 569723381 306089482 375562729 455374193 853444878 633675888 634051515 275839303 959035931 213215780 239360998 917282216 524127143 471547285 778950039 24251909 636809334 443772655 648078177 548756683 539442086 560817507 434899481 440093713 570549811 59520850 432382690 828450680 836492054 53125741 120754145 17388373 105814477 953782224 640304462 182623299 843347917 465027243 357894315 595065710 777384746 118729147 898931795 257573936 141471517 772703782 565460200 745405018 137943079 138285724 248718520 158929811 899719270 689784543 690796671 553510572 288065015 696941226 148417764 182296738 14957237 746242504 753530561 321903243 449863858 3540778 134410957 25179694 837357996 800110162 757137111 821150984 167102391 217727156 138902597 339474355 198995326 745589441 291959467 842060269 606940032 964167477 971801806 396181213 209090209 667793304 832275992 974336651 543422052 414318581 156417869 575975726 914816475 68071018 923884222 785961595 800138741 635561556 269491499 916807563 832925700 486853632 110209566 392457805 338926741 153789277 469156821 75420249 196414402 330979431 165080994 786080809 965724510 158537230 625750030 834453744 628617333 13905452 294326944 229885082 246512924 126816592 144565939 402084861 822204829 607852712 98521346 825466529 572657445 312404727 795705346 438174548 968246978 103534697 649185134 811737301 280002500 996994498 538421538 903487240 502081143 321183007 544582735 350934619 888020405 624686058 786305293 530083824 736999970 426754018 69823892 128326022 240641543 346812099 504895679 200441534 497493018 213931465 203742519 122706639 582900806 12089095 213542889 92469338 464708640 570364387 836695205 442188963 246144508 56638895 199917339 973209768 977618288 333058423 760234473 194422848 380287299 555401135 292325302 606033176 133612521 928475808 481719897 214913723 925711222 632328387 485725990 54263748 409893398 103740407 818882390 730896664 161585264 300118364 582954675 584387626 428530561 590372781 713054655 907527478 294101268 213206000 316180299 419119771 19343571 989978052 306573228 207059966 543220951 588788899 273227358 701460624 753902628 329592553 349934248 643112210 333482891 144475384 626912193 467295429 672050859 542422384 484574172 720957093 914729362 624035120 212389544 348137873 390745882 542945151 698542417 881932630 315358326 285999563 934439045 205339757 759258881 253762499 628846605 977667304 242120078 149300450 660817193 943176838 304248552 895843421 33099328 244930051 629986228 608093772 805618805 814012484 641172358 262243612 271040731 841002984 823463359 362235071 804749997 849153264 810142511 191009749 645981 566939234 507318079 884341774 92377405 420150176 8517470 36269515 778356207 264555609 994317990 957438401 39380520 6552366 194016718 390515145 421554920 867050941 385109500 131120225 539331174 818854047 662720402 235819642 423744197 482103484 795553832 40530640 235171479 595690107 26504060 704761056 313662347 972327432 382705138 294091474 123870301 856386742 568357663 274860389 566511562 373102528 907409300 969552463 950043668 897623637 857041153 47349076 661518460 702936570 519557819 837615145 335706546 36554341 219707870 127479954 706425881 80509372 148851371 649950220 60500141 908938836 498142091 124577131 979465 868112943 205231146 623456161 787218134 914445127 902532579 40511475 915327598 831296254 122106156 921029580 404320220 758322473 231423763 795437871 265026965 593018056 223412390 853011660 270458076 807561270 32948036 219541684 691491435 452083649 822394286 259204246 360268653 625898252 139006784 508725540 886292807 749650282 529392768 187684748 943034249 537588863 277310596 899370532 178327658 686159428 30693096 424090185 581163436 821612365 955976275 158885042 579064468 233003441 989554733 288950119 975497747 715166274 232398100 914123828 138426440 965029786 388472185 123983405 241592458 560859524 512349927 727346039 60583421 777704045 849542981 513266656 257944901 684419908 195631424 398442391 705931044 276177980 99379034 275059602 181817159 20967222 572356810 535132828 267036833 448378278 139707251 960565174 359728272 984971290 737331726 320814201 534467250 260499618 677347872 282859291 616168591 926060971 512218079 648126866 896405269 160227450 907894808 839722632 976553679 213781442 49796532 884813876 978276592 896827354 21314270 392528763 377419150 859903173 215036000 531542437 560972063 31570290 926623339 284960203 759680010 554976356 41723315 934261057 810291925 829035055 525036434 690332701 784277517 232273231 816339627 919743975 94002902 866901604 983792217 382829392 506403244 237078485 831236599 453508806 687102820 734175069 106886900 484521932 82831566 501182842 449870797 116896025 42709281 560393145 981508760 330308426 640999567 797006223 613806669 205464879 892410327 725608265 90055195 704516800 649525712 531314708 390746696 494498977 489108485 173424343 581235172 823235794 721763713 518426725 501500356 814240694 638184039 585790232 363999381 293688315 225333939 467853477 411467294 151963947 101525495 432908544 731257671 351716337 511936791 153186 258665186 603975131 401553348 693956233 322710366 826093287 325169554 68086549 498512186 716699523 456079229 22571855 205798667 584590850 159894360 849003302 174590316 876168822 967118786 700813451 295891679 524776348 88430564 39148649 551434529 817585029 808178475 152290546 248220441 540996050 216368442 192719726 832164430 906843583 603670390 661872451 845617315 507782422 459822280 267864635 551568798 968084529 572176149 268176453 714745227 126978126 664161755 181655403 710544607 8710592 327120245 448650682 682972300 952227698 727480724 634579888 886364166 776103774 837176933 561088835 757989949 529922621 916285538 999291113 520028717 746222437 888306124 201450387 969985586 624065431 78117906 5638364 561295695 775454331 440108925 235505268 204952735 286743346 431753421 287965468 791046106 772200319 5540082 17745902 999861190 43322885 217412122 763617341 792901452 738101593 382449233 647639013 199524614 972127972 449724069 51957011 962630760 144817090 807892612 301610521 634440810 524785169 718881237 269785483 381200448 895741222 174014594 650925834 993181356 614525990 682614279 79694267 80758433 941414209 994323148 293802024 431204675 233503045 624920044 304489325 430182822 603538107 731651457 37644645 92970926 663302589 199878632 347474865 532684374 678933469 839620913 936303753 813952766 262113256 499121067 626767217 994978909 79003052 355226914 254803668 305262010 428076003 263582089 563063738 556936642 569350527 782042399 380461372 25437027 502059540 645124675 26663221 167201081 553906735 222212926 410035393 957641036 992422338 433920586 232392990 542643980 538120051 281679384 748436156 75493904 348784595 980045152 967826385 355800184 88310227 523505374 68088285 346073798 879405484 416181844 395461688 713592439 768430246 724288605 236198260 822966113 148941401 61205281 124598373 734679847 37373463 276467256 464189028 686011805 124702278 997858214 245959002 865025738 894608571 156021193 291571365 342316701 386624740 266850531 31550410 718848083 428970823 904192081 876201547 739467946 871633251 202736303 585177945 7922392 947794684 128287684 464447083 502985415 59917372 307668527 127133106 641902525 676529829 880613154 869889861 340614697 979970292 148756390 38381992 769780433 786995887 656659525 172875411 5680335 636841370 758710526 739416794 488060577 70512467 537970562 907245653 875313582 151100516 251475684 92469045 27704460 871871521 322056548 26586305 799213578 611977801 108080498 484551911 568460834 719251341 47237556 328240468 853294906 945188080 501654353 827119637 626847759 617507801 435228407 966891631 970763654 195710904 523466305 95205643 243306486 90849295 47312534 420289150 186818666 825650950 16742581 823231079 895678505 463870293 247071108 86753479 901542980 683177255 758388276 121215149 415370443 625954475 954562301 128531093 879657610 42402868 911980510 101781698 397608353 601171992 446677093 589542053 812230176 987002793 844825449 138610211 839466164 620934247 861417037 267796998 326363537 469016447 141062026 989218296 229372275 735909103 366648075 687176081 234499454 618512957 595914667 936691625 445123741 346921974 308828343 849525159 234180840 201382769 137281952 400649672 549940814 887912402 641739248 27035457 834664579 157769230 313098855 670840038 10460058 268618387 794336214 309316051 491424017 630539310 634735578 946174339 807739962 243630857 916982899 61165165 551852993 576471459 374384804 622361792 157605958 383885427 508024393 9792968 317460852 179058095 816230978 827976249 844807412 328588546 984507196 46620443 36088226 542235263 466672068 191536733 711753851 559586559 465356208 946001326 850533892 930512358 879086348 272527203 16066210 371416607 341606026 638340720 507889489 527992799 830955316 369770193 807087298 195378207 919988011 349235879 844254280 504594764 185343646 280542019 68531743 5873292 557815072 739310154 752107743 849819426 883926702 459286778 325611961 248348470 308845281 161502879 745363518 70253075 732280626 902484425 644391420 554974732 591542973 421168648 882747594 609489463 407096648 401670551 239288728 872572169 940507725 408191709 652963368 808271932 839761815 530364358 549355604 291536227 85249673 76537221 34895839 32724568 297163222 579473341 462392091 592510381 555744274 101902216 214593246 518360914 961339708 487070679 597353573 282094618 949645723 425923492 112288460 661471327 98198488 617710131 589290278 506322584 555161034 201242554 428754897 897517238 874129725 945557115 610798004 865547216 670871175 635934347 244214261 434325072 306955865 218686924 615813379 837498690 676922884 820803292 205343568 240054823 385936282 675600922 403706512 224854460 493964474 7237811 980483418 983492146 718459516 741126674 385401931 633128914 162028664 824357916 563592615 478548619 16693496 38781517 269444616 341630656 866066696 655797828 340577658 903671600 370570909 700740864 503200108 86411793 719438386 758709431 536717431 538306948 843375931 470120807 350741180 786069540 207187832 239731101 659744833 517805828 843082898 35956019 809208998 982839775 390590010 382319938 299811020 858503397 850130372 612770682 365993235 717457954 487818504 852485876 525025434 890192192 616701409 273637091 135997013 628780122 899885087 38813474 246022476 221204645 833184075 923792152 734748166 110476623 482872330 849023590 2359194 36026403 951195585 965832318 279458795 431337395 414068544 850295265 889553256 9041207 731484440 641446739 845884199 437614481 812642490 603609527 464440789 730677737 672004994 401077760 647339338 136277075 240095543 617459451 854528236 807324769 824807160 420478754 109862853 870377331 975723066 764700984 469062712 394565045 208652745 960140779 106856770 462219709 28981386 684063707 842412053 601810114 921817082 885556198 391641104 33276362 845634673 918060263 104179199 884880092 560998368 928815716 405128071 544868450 661254480 938984296 512351973 531336830 941248294 454610664 62543587 437898898 750484677 208417044 344132774 123639866 837390639 263125622 435039025 623489851 714849493 173292728 407126929 895068419 679713449 836848680 811224403 164642583 235141927 680165205 508461111 739328845 976448499 24987625 667489394 80131914 369274795 665784281 109662426 309470810 813502290 874778532 116265612 512628805 963639111 110212126 528578970 537079957 162318306 909802524 555737539 574335184 926207581 375904052 392172110 129047769 983249294 145865592 818799933 275167371 31717073 106654292 834980903 133088312 881108007 998290532 440173565 706360579 790666239 246199468 111926954 641552645 662988635 973045920 938142208 504298908 266677540 988543239 191776234 218190282 381170657 890509257 450223176 208149242 119883201 781056514 193936539 388840388 697873021 612833194 301048927 978504860 955615905 439180774 182487685 246134410 582141352 782717426 185727769 222908894 183740693 560126941 424112753 755145943 931493988 929451904 70556040 109193186 821179527 65226136 88196423 624626057 631233015 932578490 59960988 371164943 749813603 413953057 525302765 972096379 853237198 639892196 573719438 515276343 581684400 400865686 85345119 434783116 970248254 135511540 458451445 322020474 822537711 441815776 695366142 360337538 232185495 506292174 295090130 495283447 485925174 127297185 711831178 135890536 68930838 795764523 913092119 382249968 208270521 824807629 160273180 986303664 688001256 342134769 666292479 741932455 628279891 330197318 683650392 185535667 119628571 118643098 712151322 313138271 982899272 295838077 309333090 699331207 186519304 977176722 31913382 95975294 122618954 416743392 635296131 938040688 847465124 102639250 701555937 526926866 59166894 553485726 642698671 693161579 998715248 48035047 650316156 799641570 13767002 129838223 812053662 481344924 550415766 476261864 764384408 698484504 46295962 548437953 971318812 263874586 903742529 212575055 130006785 769604133 370916961 910316193 480804435 393718401 464971928 669484637 540136423 767396805 819803223 481231481 754347161 181839394 929457970 863847404 14244819 202641072 310646151 59849229 579619990 679738619 273925396 21731948 184282655 66843413 993799305 125059243 664972532 115580204 79592089 969672147 749406207 902987065 370954906 630735470 943710965 139897707 480378758 603220967 332308976 544530266 709509618 240270528 517172270 695697114 263148329 247990170 812293441 467609389 916743977 528770824 394117397 752590326 899551632 965585112 321761034 818023419 578159902 55576595 382149133 847824923 285011874 637213430 976710636 437639501 270326786 413916065 893843707 586461318 736572730 731339862 456625905 247216576 862647375 333602727 799557056 911053796 689929945 111393198 969702947 289919646 85069041 911663166 108948453 564875922 23135317 923490539 487088171 249223761 171508398 538037212 141114668 375004345 351620210 379905296 526847311 396720415 535349219 420558737 208853673 808901421 295270389 810672869 459781504 378961599 307203093 29520703 10570330 351489556 413078061 534077586 551019226 927596648 15610602 745887048 5102373 482477205 218130524 848462180 791818439 106475537 682479327 634630658 106095239 445831646 448731009 709008034 694320304 714738709 212449761 870471636 857421656 402380498 498352329 607624289 268532735 529350677 228455255 199742650 746140195 507003100 209862375 512100989 622906296 528646127 536307187 119816545 364524240 602647911 993995615 349711703 165662344 43633379 393059094 123966479 22081469 398215390 915142894 910978886 851135087 408067331 501399537 268839064 34650379 480001866 161691251 192450626 329193978 56721597 26808988 580966023 397043999 176384906 5063117 628471348 559353220 246391396 456124014 207469567 590475415 741569047 978700790 388816041 887720697 497725169 51645296 821008776 370957333 151631466 983996692 119174322 992531060 562435211 525383360 471948718 785766653 597692614 642645827 526100138 981879327 323659873 125110121 254063266 659059132 856217468 503795896 914627324 479047597 352294245 440839889 551435954 133574100 531215852 153715661 25204861 326365332 801335791 943416801 314144513 109606839 210788551 988511865 822320482 30849291 927092791 500101120 26551638 234178145 269328707 999561824 535209145 568110765 696422335 632711635 858089781 960041263 981370091 690873547 225844021 398296604 830888718 14690357 715391828 105587251 160357660 210109553 634516597 303012027 773989249 744104557 606379149 124383231 608486835 797407219 964597756 835804839 220673532 349303832 683088280 128445723 37727285 65461661 240790517 605458939 797216077 249449232 807233339 592617781 131738075 76524476 126787004 303781250 880962846 28144773 35691708 406260406 942488805 409009848 220711770 28905292 802993758 231558635 304298224 712975255 346418338 828675507 989143608 2155097 918722587 501593122 418957620 659668803 515628095 952736163 63422884 697065732 147694829 975858312 21133656 344792564 178224653 124564231 415686018 772927638 99450640 391352314 791766049 227373670 269239064 20120225 365779805 281140032 741669575 546849109 798789578 84160616 78377362 418309772 43802549 54028517 583661920 510660388 39371208 522198572 210494028 479054423 219996739 109230119 483582384 893289189 741257804 659485722 880477128 939718474 313237943 98739940 425543630 151804540 453130397 645891017 395752613 66574317 739819536 79644225 638738689 280790742 735352146 461054686 831099366 165984078 111024146 660426193 990929020 551656984 751909736 105101474 564975908 597136360 661390357 105053609 236238370 284511330 184470674 788817473 251935279 268450427 241739024 798666252 30987868 225996669 196937442 616893997 597335397 226563661 658821250 314441755 164383668 762279299 1917250 979861261 305590511 17029981 794564711 964466454 40027703 862651130 321685463 929424993 346852633 256491652 516369618 685582238 781395994 238254092 242084363 756870642 986115119 760542834 940169529 855156658 131401797 671060873 358950452 208571936 523190493 305929962 819374578 133632324 105237649 982368927 290130653 426159909 494639827 137922189 207890392 644000207 476740731 298286910 110576810 842480629 566892944 184327553 252028889 789626147 595931062 975781314 275627883 700657596 204889907 692381092 397899649 378633224 51382000 600838086 79237670 661435163 967738883 239231932 774301215 279104454 355342236 951634340 467774215 574763945 270933309 428680938 205704273 711291441 700968084 772882137 97080848 721645010 514903314 487468242 919659101 849944775 563716715 177777848 928154895 602012904 78372638 221251033 586414994 149032387 359033634 908312612 320272521 542407584 31143136 857957913 561691550 86177308 312527438 190296617 588668014 268105458 104007033 765161746 51750733 22614850 941795183 476809039 267281903 819340528 911992417 474439368 717020102 683092760 558933927 58866686 80451025 468748100 639796651 480111013 411115311 386318417 212491978 346565566 484387328 181905431 436302068 114211716 598476903 129330825 839780504 66299636 886153479 757768931 901454627 326197887 354811522 936458617 23223054 703650575 716844127 775167892 499530253 33942858 795375684 738381481 227298965 527814512 272594231 797942717 771376290 833613470 615054593 113392904 555309525 456619462 718368413 629659136 759114146 252637145 104898692 87722517 287916194 400442606 368390701 586281373 602088098 299762518 360963570 827592514 312540044 234400056 365025563 353795882 760425843 106559483 844346272 383838871 239628273 59995739 615356425 404278141 466154271 951182974 215139123 696647139 708728917 799288047 583988223 167688196 294789364 653938443 681676883 797785779 791210024 208297648 739748694 451409220 452771693 779506428 166282882 951166127 930207612 951689164 32382425 816510501 94516484 929121167 781182803 872197960 195995844 244943726 347850371 49366214 748581439 499658561 379212038 155469298 179271097 919159539 633450316 218457145 973513393 398316532 311703047 18486074 486830032 953356248 499372346 686878108 792720023 734557832 67351445 747796288 675785137 824256929 203961407 739143318 904875279 643232089 620935114 739057444 143298660 883653530 750637335 774580688 672547371 849981202 708301411 310164040 917400978 805608839 655560807 757148120 989774721 664955020 211629022 369034007 770329146 141819492 550984331 127504983 11577994 783368725 12189484 898242598 798411677 351359302 532168750 193634854 210835324 466767146 951760122 569300680 244631307 195410151 554773424 209822900 733533921 692599088 305573561 851799492 714430929 869588062 538218470 526127741 391015973 325783327 56028801 633866037 621873466 192410935 234873713 530962134 610864932 472605062 864623471 720784724 985422693 636114767 776212815 16897535 383157521 316342653 978610252 567245872 768287312 141317590 346671876 487221445 650389320 352413611 888867978 315437042 866492808 980236684 78463861 496168015 377748675 487062922 810109243 35938037 492188551 145094326 631369593 746927493 621408557 890674428 158465791 468354279 231335980 487600164 203892524 815336251 196054898 186109416 781894885 957313137 567420839 549149761 798141005 449817957 131334957 259531855 867106520 635183063 134847770 319367377 975012340 65322799 180180776 239610588 770239705 58342918 460114684 955723213 162104337 821329618 453568690 853716229 543509238 431032990 318804885 704447878 867028032 893222641 744529130 431228757 129215037 755290449 136272871 334696157 254926829 583753908 650821694 399416249 253068047 777791232 144727164 267849166 653863617 960926118 870050441 16374676 914899488 624926373 267094170 503939603 654658159 85290986 872066823 672358338 778181278 371830868 559220003 200520298 644799840 849930997 842278714 831907231 779452314 791041732 594686080 58711231 954054477 597103334 642062920 274481860 116128665 575513484 664282885 938612642 409762890 793044126 124509366 280744920 775421572 402641842 142658815 559008958 772959331 529654745 621387983 109203601 923558743 385042360 320572439 370547143 621959999 655382366 201080665 658212642 656579648 778855018 732911234 783219654 767017359 161613193 583719704 493762979 541274331 833437664 74328833 438348299 139560544 733164302 58455990 956876232 851004816 554827253 43120772 229581139 706648137 415408745 92738242 74072938 60940434 257074229 283595376 80094589 325303576 750875862 167086525 570386495 544001307 474747760 356484090 242682179 340310027 928713720 905081712 24306046 11643711 554030682 583954853 755451418 939012621 689978235 185721303 156324497 201537457 143342036 284083204 183669254 941124154 76164528 791215631 78850393 504498357 433509623 155852440 67659600 845370551 4693693 886375785 102498798 709341581 758788607 70839066 112382748 749238623 221107005 6439847 869217784 448578914 474689593 387339526 576987515 742694440 29605629 205894921 446057769 776218510 286485990 551580400 477723545 126759744 780715059 175290756 620800096 834222009 516307428 725268796 756908599 81194723 309035971 669402551 998150472 311764345 457385919 255842961 116731672 308975203 312793938 352820552 742999498 134875012 959185638 885043411 491871494 142715727 526283171 188512190 565622773 480097363 144702212 700509296 42523176 44378981 638902071 723408114 35742054 170929292 69035366 467720989 403281687 168245838 755273462 267483603 879665731 169367770 536803090 204319097 149471786 48003185 232892853 642097653 763254987 138240153 807010446 380884683 667171564 165734272 148334483 614423589 122855052 222028402 887460975 414301771 644556520 553001944 73889178 98790783 491382960 588785715 778826733 411521984 681960359 590367147 14342041 472544413 624851868 328776058 529579969 647349225 735477220 517963323 849023647 553608474 996668200 680251742 732253058 831068964 198021255 930577379 72006229 763286008 610642016 295261446 208297643 719693537 923245657 77768018 782605936 916536571 971662062 339575967 595859407 827881854 236367971 287217182 853734973 328783511 201154399 924379855 355287678 354437056 111525198 456093816 229474249 801096431 424773927 401763443 299575702 827505910 143623015 269245815 542972648 491975498 981429709 670425977 375880620 914805394 855509623 479437926 88422529 268556302 494421812 617217857 190083988 397747862 830046807 178769250 201997214 355535717 574117682 113757406 58388477 608877558 391196836 815079593 604117132 965357120 855739421 598061797 440159524 917417973 254310724 440618223 319144714 978951321 732607154 819149341 324241922 195601842 401856306 11362841 813713912 608175424 129820142 111277093 956257703 995632616 400090586 776311019 741362875 554291960 882384845 112413721 101127092 288332913 769904705 59220455 785814969 295179015 214079483 275175308 587628099 773732361 773637474 843371238 350697542 241366868 775603005 640746576 824323523 910914661 7724035 901808818 766678640 905886575 707046780 19825828 969755434 249086130 246501938 205861304 465995884 750729099 943341037 141520470 410164530 240867973 416390420 113698325 540384859 532372821 532716493 485991071 741961276 221315449 392841254 535109058 437192909 917000118 994038724 930404370 281591703 718322893 532743077 496055336 10554007 979166949 754151303 419289537 751217401 353971775 764094114 117043006 911312681 593187894 999011306 109322457 377416995 37811809 600562460 424633938 440973556 173522806 547073270 782379013 237532040 621105971 95884955 246436139 379406009 551248505 70240626 283785314 840290011 559743728 649132045 448503737 826054484 20259949 299290345 467065167 431046926 181030023 807436468 224542456 536189828 585701700 87489057 495578761 701577900 28381225 248773440 608269813 483131045 765166900 581500041 622488653 551640344 771804400 550738451 622489757 884991335 629360236 297250755 950438179 989106289 266946921 472138857 901216636 255338881 509978874 34180879 584233965 619818062 219728016 496261196 188700665 797411482 301983708 417117041 281668530 128426479 797250877 985050591 384625285 705110507 826932414 759283231 817783055 759081622 350087280 659940313 898542034 17704779 511786283 276031655 728898023 443527762 983238846 468799333 713798431 139752422 941815966 641292552 876011631 60801673 965561376 565607189 92208584 330806848 530075236 725142445 634260387 500915685 865467111 870719287 75685927 110715772 594485779 889875831 758388945 954411774 723914160 655444596 533110789 297210345 476563807 206936191 843423806 312694661 164239967 11258462 269086296 498336914 94839576 143200602 901406014 883490792 565191461 106364409 907946636 757243830 241039268 329492949 625814758 970091761 876330683 291360981 10751642 278991849 831208796 562728088 576287368 249649827 231183863 900565333 119233727 599693537 296192630 748510446 893789327 838574289 387269393 823608710 481408107 165744779 578398611 859228765 368601250 951619828 534893841 717263673 799241295 6059833 599907632 178182188 34533839 111351277 206399256 693125436 23046513 666834544 250202465 356622589 185963243 582220249 936184321 480296651 534780408 921341314 554161320 39954232 523390190 411474792 604330389 689415143 131633447 53818552 988254616 825249941 709785939 17916462 255255389 985696131 839821091 106667980 90773273 169130894 796081112 10530636 534725249 674333136 58136277 989484992 79362695 390351868 758346136 91634272 765783356 946506865 783520396 173491495 355249530 867989579 23237667 907532943 325128716 171660150 128560461 490289795 611142761 727414425 46092104 594937776 852329582 148030466 487705915 906389245 462898156 986491696 237765928 242080774 887717709 547819604 738158695 186824773 69283546 855013108 608865983 795491660 109407959 769371016 464187763 865752040 536951981 995854290 331136 361197279 925418484 603175576 846701633 284817506 818561553 429227808 515702439 694029538 201761528 849421412 332774861 944492768 554332044 292799326 31063023 247027893 827470378 721950588 124065084 626115810 73404635 508697597 866133253 315092014 154685488 171856107 615533477 132737340 847522274 222785464 821970305 66094579 885203754 239897882 50090221 908767132 946575720 199164174 900120997 22147924 323258144 410512541 857756908 622337498 85542269 692098891 653852630 849385107 585537659 94296779 458322322 158008837 638963083 674524993 222090252 962124142 76701142 847096721 951908893 956744892 724581854 418962901 884588083 284843238 256527500 162433946 41714078 8181898 456296594 774076575 777511482 61988998 644936437 532074795 466789553 910840360 639821574 984755446 213748320 821533048 528654154 407548257 511349666 79844587 242432802 864447176 614188293 418713284 965039892 180366168 670884911 60174674 45930594 910619892 37690708 281406778 424285270 625326150 708350326 118820577 593257282 623747999 889951639 291121172 53664969 521906717 827347578 408289865 93632040 904973977 992443163 483810945 191356572 396023485 922242337 91995242 380722741 90201480 866600005 692010895 268804186 604085416 425923695 6815499 386654138 117966645 792277562 627149271 294267675 140972990 89008393 984512335 334118855 910109851 690595271 63025086 404694178 913634606 517290140 973217747 983116172 542278429 376834164 859902733 968035436 584381816 138227403 594500493 827209978 930331243 587328956 802740800 599802643 39904875 809628113 777610661 635431769 844547477 19960198 28186633 738558727 310812662 982463597 743492099 19042234 559879659 218689002 412225850 786900779 929711239 66139441 678881972 46960600 736676429 870463198 949001891 666189367 96638210 242195096 513447667 517163107 868218889 700566563 93095989 789911819 372601465 885721814 724840713 325653585 816567868 940148913 413734247 789550623 427000661 40619885 357024263 747753487 683451117 229825961 20397991 133051086 913317111 212091920 631574119 427840036 433976526 546132686 574456044 772882985 511399099 755918160 592723133 878081880 392405221 910574822 377882778 925508818 422521598 978803061 540560939 436953743 335401141 99894705 807265624 918073336 808190580 470689083 232683949 413230864 401541657 747007925 409949407 788807801 62833692 280983220 633835748 44916169 134966100 854221440 51573046 924914192 845288186 282383155 800564548 333977769 141918102 658167736 576680563 693696123 400716054 480956480 140365987 59119281 260817612 248044163 104743711 771122111 685201183 835698134 183048190 448760382 768464607 274660541 584133877 267916692 754927647 179963052 59186617 393002616 445878001 81996387 726955770 961216250 129754400 214978310 601702759 770342274 807870573 392378865 986094478 690829209 810568893 671951257 302624824 303816445 807900335 935940263 884607814 401083992 441240376 943337961 872212093 243331014 995695837 525732902 30144571 424411526 897144849 966700672 6749271 272554396 608779076 192608110 477739733 343190607 113777511 880968637 54449427 757035028 687612034 9191586 591595949 650557107 642521795 745834975 735518765 45869002 56738717 111597687 785223572 7588223 235715469 281382059 478826400 691826427 614374172 137291888 1151850 845072021 800023889 853130146 872289570 150867982 761730846 487865352 318807096 208677918 187171760 473395325 731840492 957351625 829525204 377257167 159198708 96124448 758346548 590476446 691980867 417758186 278303411 896359546 327146229 243841863 425869211 206574910 589405824 959096894 851918333 787261251 404352602 360701782 47994952 615989016 25313753 617797310 451896196 395877237 695117554 560463350 436712091 615439204 802776911 856466653 734768109 397536089 63295703 77489110 139442797 312222131 422880235 979875344 519388130 382223002 460185564 551611158 166006350 800936649 213483327 949177863 75178043 518697507 39378463 804192516 2324525 332427343 939663701 681307641 48306858 610207433 928968668 252736763 63888441 251950264 864432975 328507321 641851282 253785947 593429904 697938693 360622556 145324745 691620915 597542494 35228085 953763030 598843343 733392980 87777551 829770371 237261616 657322150 931058839 192262011 227772326 618147276 928883920 150629292 202383418 352186355 12778332 997147031 292452170 51203993 210478653 497723484 552563171 326121579 671114617 711751996 595491709 82531331 168679182 966173906 369604789 774833071 522399097 412117015 932389386 760278820 83627896 182239057 706717132 345083185 583757474 921210433 844501825 875246432 845833810 246395569 876206537 65499534 191028890 811648511 421408113 858081028 330084455 64004378 524734085 101444009 249684611 96055855 138583299 29800698 80812821 542608151 80245785 291831599 203127919 733645940 4357836 88708709 161076523 505906655 24082961 346048501 150347376 968344032 901670866 192737758 377472066 449929970 592841720 628036309 548408178 702915174 245279203 424674177 466892968 738940434 709593253 76616085 993079850 341084666 502909054 269134262 395028115 415948665 192586610 581387451 721189356 930442965 52294772 707363399 751304573 482787329 740748022 993703882 621521504 203235212 885346406 294056515 751011233 207765004 859515761 991444154 967366479 258025943 656785873 353709854 179463236 115896001 639419050 238414429 490556894 631855536 402359202 168931107 699153999 209734979 339117217 321856963 571182165 381433903 738695601 919104323 40603765 342044524 663205946 886593328 352432644 682143891 963517843 496230064 613403291 206298789 931717428 384836834 891804 258379493 496923386 353274294 309358033 736131607 17621873 65423382 491151778 345790210 295164665 58578288 388969112 374482284 326681951 864614990 62336730 995005494 767657140 584014702 612666469 675407806 100587516 623618270 440913116 904756804 231354994 478687630 432747885 411254434 30164902 52665619 934185489 323685258 962389605 359785479 611699612 592297053 417846699 633616127 494132602 274101646 303729722 902120639 587414495 116767349 465420843 441765455 149821415 115181671 608109425 542929321 404200182 694632493 66507502 214218147 48651159 256878657 785190076 380728055 656485830 517625753 473741781 330644093 334313928 433715974 174404485 864701670 465243392 164868666 363460385 13333858 452998993 692913458 43891514 639838064 482291773 287481046 472335183 836043763 607621701 931429723 639567091 729256297 798520202 121801621 659308452 127103295 340788516 400101821 650464253 496081718 864357809 572215218 583214505 878661730 848378607 189578375 576527489 929380766 810976135 131399902 481343396 762591125 254583286 77222078 701442160 941296133 545144026 651894109 761976707 745471687 224972480 110237743 584939670 796350829 768515501 550052953 191199515 341773709 252571122 127867990 954976816 103491023 703872690 104387457 434204977 555699056 767796437 626133787 277130309 329812740 49010139 626081927 908420870 174522702 128639074 802752687 172662729 455273931 937255008 158251364 827235744 264343934 142283993 529089040 661923256 792635937 892859519 963733183 841958887 940065290 502665179 650034257 167639128 897912865 668293327 621777059 87219670 858447334 610105213 81399351 116425057 973015137 438607801 639781271 770192741 531766460 278851898 744145719 243164136 124729407 104866103 861590256 89208269 946921580 75955254 828870363 996846526 320956908 577164032 479583230 929979726 634845025 824714476 101678086 262519767 831438061 223301651 7066714 911242068 752044049 663636004 960230283 159472507 348988401 147516212 470486712 533153090 566890590 201857831 394050190 221730651 389932083 399115579 720226073 454849313 894815218 120271702 318586328 40457144 769589933 456876844 321669647 552893403 942529679 611923395 460481390 85104752 184226619 553635991 510820658 999329081 527353213 945148764 270118003 490427757 382108981 610353089 375394135 275801922 739742565 144662086 201998816 762836696 775196950 958735986 700922810 162282886 791472634 557504083 756604338 661591860 835661984 118381654 343791045 869210547 387930582 700632596 491094118 201889857 776214048 528342569 56546110 34717737 841420608 38918941 166716785 996889443 439109335 998809750 328834097 541299947 190975997 368661229 981604486 206061111 102950032 946953963 643510803 694066685 131702960 304653391 543782051 49619678 311530789 569665733 181445296 161105125 209857741 330138306 612336869 368683667 231945397 525424962 21005023 641445018 484647220 840530263 556251492 785548035 896779065 54451144 970358706 280180147 379277453 715714542 415148749 530818686 360619987 488430697 559255108 183330201 864314428 654630843 553747333 955952744 285320110 671302384 398197003 45690139 545196669 413749356 84627034 800621486 247992333 697435046 194724177 260655176 445043020 772811189 486310411 130287721 259723935 510721662 288151741 552347467 421776539 308399470 746400264 954978963 157716359 327246238 716405384 293933513 165322925 282893612 339672075 275690365 184028663 108746854 829417963 90381973 74614763 468591885 225180854 26036700 865584523 417062391 516229638 113987409 51037806 783633807 185746428 297221629 228276463 889339672 550931144 929467336 276252714 466513939 820989388 289483137 498208276 403668766 956362807 572340613 521626076 264497044 555401691 700348361 763599195 348472727 717511446 989436513 437278665 543738393 553707420 625753809 361177568 623753114 808590520 24006591 781734198 465123201 752341439 272019229 465390103 291498119 846989166 787018961 508271882 156097124 180591113 46200000 762576911 233746334 46746789 489100937 850403803 814926787 179418182 597914602 417589257 533517993 4965679 711850811 652966942 40283560 13243628 730771943 212183169 901417558 603676238 990305724 296548348 102188141 924760474 830991879 182236237 599629518 255627092 396025085 521952181 256899236 567474396 394376485 433311337 709096545 535926108 563234033 98735848 518122244 905749477 313898029 437562976 668077546 84470370 304711471 277662184 851482488 517559197 424440656 658281847 77351515 583255824 333874416 679719526 474840435 356032437 532877730 700042664 412006971 780062321 14057601 681940847 31955326 497837642 353382036 820629940 983535907 771931978 596670384 971904999 416732246 287005142 579211717 40707038 646027483 771713529 173778956 913216664 151841682 482100312 104409952 177490303 83315985 276220450 741866099 639198209 499216424 762551585 632329889 267353351 219138085 153008648 904095738 819781283 929218031 918279680 86562161 32644433 588360000 794221683 668941094 971680210 611276399 765606459 192751875 210082375 769719823 106638555 373625204 835550834 536846211 838187535 992986880 974865691 743515940 289138790 918084204 447812085 982724553 830515676 708579653 242832468 871388357 449278139 926509598 889998877 630656146 976909709 405480442 513615040 419630768 128999213 988945770 970708760 961865946 158431410 26685808 455498487 10765596 855571945 430637443 391453164 913255417 847759750 595827379 954055412 807267386 113163468 593299849 641518131 323298609 520684488 424556551 27256390 385357656 128609543 935960822 537044355 579781806 411130098 617918730 41864276 583059097 466805913 93776168 773953232 185561958 451264882 662284761 863554702 300706328 957591175 435747235 895320914 844159645 678488986 815350030 593145052 622691730 215843996 647190198 352876778 392697621 238810280 218022979 199860857 491418401 561559245 109623674 305642025 652537720 242842500 710972305 587523374 428392135 45636606 558632946 455612851 990143614 254277814 140504576 828349243 273373676 355364539 31584041 624043063 478080433 566346945 431434574 767427691 424738781 407654894 523818135 973021109 133713348 498369029 322201525 200468106 262789308 476266714 107078784 628161013 502397956 929262703 496595680 115049180 452971406 830339736 735770842 882589967 619048469 950011616 109107782 858632762 408819064 338356399 641920032 962138720 27953524 481376281 295499525 120350675 729465702 628053050 246769167 230108504 315714876 199993395 396119616 431045882 66432378 304958944 7902719 815205067 8799880 953795600 762961163 517609664 184661290 391551464 275550958 665983792 536112441 977112496 894794443 632033781 740147146 922021936 347497594 720144237 590491447 504407183 606355272 662083542 711154850 768423819 93441128 414585381 120607380 917297402 692621931 686662309 608519610 564176916 958798704 379979891 237311123 629879499 6274710 625128578 797517963 795233694 545970114 883127683 904431396 449912000 58042551 238168487 231036482 804552444 543085739 869862833 808310205 235464322 300842271 658278483 943383592 471531926 228686690 890737320 399815367 66327134 580028875 559407474 910491677 474904598 422223097 349167692 111764990 953911892 725739578 2994653 92679368 632978806 461655433 954571203 445332712 140916472 615966233 29240576 81395541 272012711 798468855 885518317 394145884 463331702 539445663 478391076 870982155 159263425 311183162 261925895 426327338 359087388 873942199 749725453 870937123 156949528 539663242 188082030 888993242 454503812 74242652 937495597 207083782 993543932 903955429 646614164 521583166 898931256 420818823 767425024 440326239 539438032 136573272 80386160 785227265 147087200 797350264 318477711 666230961 124072694 360813287 57164082 765264588 920898436 196172790 788306032 293181417 444161582 236912363 569419457 808853774 621907400 438169274 336052558 232013080 429489782 122570385 490720817 778740067 150100176 646782429 500825168 779534750 247043103 856615525 3525908 934627476 213122856 563057690 247739767 846799397 365744350 997806737 8496690 258770213 340223569 720513255 627715691 954379878 346806916 296270172 523798618 61691891 384952598 870908638 890633979 128507447 231286604 35545349 22199608 935724148 180783320 660138438 247602408 135148987 631980128 418444940 329689537 905457565 202683160 994249050 431003229 677712624 724643494 171278028 980042466 330551024 375421890 506157316 127747699 175736805 408151472 164501743 21347721 207691781 921787671 330281758 952834928 240656992 398666571 720899102 917884877 493432794 667807042 963872958 894348231 905622295 371861354 258670343 561979803 886228420 342245825 230125044 313481922 979965268 372907212 831386804 950877159 614752488 701703912 786476259 219679464 502788458 912606387 568802498 942323032 192846267 945663494 518920298 576371600 40046601 604643567 809866075 609496193 190548158 783392609 343952874 484752861 23782713 308893960 703102745 913418408 470877728 73006085 716799983 980926937 782521730 498397519 503388733 451158684 107158975 168998169 673808929 124547272 55343189 809889475 229400706 970185910 376543425 204148814 595320158 928632154 639078590 719897081 552347585 290415910 424186737 992033356 630287099 440051576 507788552 432567173 596147139 471917559 966777182 90291090 660090793 123523725 183834117 221325801 486264273 660161770 982328235 692191473 625922116 967175263 688763767 450359116 432060358 841391162 365556983 991133848 325663066 318240644 146052791 656050556 913167604 638505883 394102555 107226300 837467285 918708941 801845241 277573758 474985346 933187205 376462469 222537273 534503695 985799677 655103702 260673471 643609329 525222976 572648722 285296530 775260655 75330708 41521242 736112922 808939634 565666684 144881978 502188374 46690262 428941117 665635560 31428504 101663789 887666739 908406128 518780331 649904222 938339554 449999992 896079205 403425055 890553242 623587156 784061305 912833835 237233738 517695862 5285059 300985257 684493209 296291634 443130765 955534371 130227081 764815395 215804436 135519604 717392016 375760417 594208221 487026759 311746458 275321046 664970364 601410023 886814938 488483897 503550881 897940589 571923549 978790953 448102813 999076765 266502135 406265962 326865693 206781209 752045726 377302181 296359638 867095748 584724694 70303475 106899467 869876498 821070335 601263315 93232083 761371788 206627104 567951165 756540033 826473968 369224141 874737424 577505628 14883858 167867464 396108290 320080180 57616018 547767449 134588335 954855954 109786392 160192853 682103523 332243638 137147077 282965974 329602831 96883646 481344277 931561153 285769016 696583248 403732122 441147906 899892379 669386936 620907274 782468380 788692056 404230881 761974262 769402033 94576148 52746300 538133547 838473166 75436435 557395773 370525170 974677872 190783740 683385957 622383936 517007876 684805253 543066226 581007197 582417862 939146986 598871372 98919586 402047462 946407446 824019967 249958647 835570250 847838554 900712635 230391310 358437633 594230173 16103730 254117322 486080586 20320026 34890786 269104483 178728522 513631041 244858832 515901609 567271371 247136477 41638798 750362417 478976751 855794959 426535974 708393551 475520084 381142864 619562856 19685711 976612425 680057716 961951798 359087294 500017133 890167699 963272506 161524759 78562642 570918428 553821034 650032556 128334179 97380246 369580967 667525812 857871142 165377928 731442988 171020505 218083510 554537637 543162222 286466638 506699437 489146166 139027091 145898515 930695102 7367604 416719219 570811199 935132008 944915918 453865766 646680753 415942922 50393381 399517054 521720597 219284336 774090270 790777014 569837807 79685879 83574888 837718635 663102787 673776309 681178178 934064640 653925920 258873553 606405590 771478899 179395071 835532199 370989401 572871626 28333324 733015704 309804378 167793929 641232865 708687294 563823555 654697084 82902750 601536022 638753980 812503021 95676693 926441278 625683826 203389477 261507187 948449818 871927053 636783289 549663480 218378997 249328703 924557479 742936827 768310829 381662149 359915098 932544536 181182805 52425886 431729482 190203474 563371542 139453482 579297823 512328670 131448943 30213919 136233666 606735256 344908101 112506026 648041753 785278075 711890443 258037147 190972267 386860980 944419049 11685881 95128159 220700966 806235028 456993417 189342901 27762412 255437633 86970104 146728781 212783397 894824193 609830317 498005828 739607133 143350159 267319543 986412075 568792590 904450926 471708540 380173867 473383981 230849307 304120061 732201238 563554828 43595301 410401553 13641048 109173178 218509718 505510584 416076981 96776049 510213832 961956597 263353190 481706855 121176559 911996167 540369579 666876573 23625075 355975698 880882164 631032749 726197837 145089937 538946256 283769429 382054925 684338040 176240644 625565510 653203313 487829473 627151428 966918952 333405477 190256912 158455946 790296309 215481716 229162536 189631755 977685321 996877905 628493921 491052250 393863956 101577834 982543527 392562627 838003911 228854534 363576036 877026269 895627208 57041959 953685935 191105507 282720054 757965238 512922813 671789407 795495184 368372706 961242387 716942896 767091508 437100624 581273100 84735027 88544352 932214234 201694594 251232654 759704039 346007942 912477085 72544411 531782411 620725941 258545019 728284561 635383738 700900717 653902025 522742184 502339575 224598668 278103289 356465914 749695007 749960063 173191690 369175714 585960718 819612269 795723191 343085818 765401946 746172382 110488642 506360472 709724381 573212409 945408973 827046922 687868298 817119755 891576407 875540463 112920746 608038471 974016783 489736867 236212828 648347415 259794194 495566840 144535240 978486346 53286318 875894868 441183023 330731380 207608915 129591143 21273276 296671769 347169114 758921022 287138084 32433875 585167404 458706473 365635862 366851707 422846786 328224301 202453948 493934775 409450997 324072100 670583512 702165894 772944978 960153068 356361654 468831634 706867396 429303221 992175388 466017458 272070086 200674237 684781349 725481216 98908012 229134433 499003351 598451695 241549557 987352510 329861481 109263989 718367626 667327244 507575436 808367264 339459829 820248692 933165035 970204863 896866971 146813684 723340373 900939179 576780296 91827594 596912558 791967854 957631348 700447490 101382745 982200602 251454500 386171284 877664916 385615011 182865782 762209402 147826834 543746966 151736592 877579028 335737726 84148800 826827708 70841047 344342817 998370155 316977175 76062094 780661370 685313646 364795908 592617632 439675856 136820972 978314147 972738378 321729459 532885356 880645235 883607563 320921856 169544755 879992995 265927742 12418077 798760085 856014920 742750763 277271148 605532774 89457881 507899753 823249066 83378709 543315158 884673047 103369752 731252454 202928805 849102660 677219855 200345916 194358262 817687908 251369253 94793366 774577726 736353479 497312856 909425743 725724615 556904771 235368996 706006167 557003235 470881647 173260136 954390762 859316911 239352414 469420937 167198524 592397812 407872606 83390314 715463424 356299022 663049638 628489450 597888120 182352973 250616466 639932262 280662495 836834149 609863977 775057106 863585497 954735511 206005244 181918750 616064986 146148526 491987387 976257729 392171921 446676162 698761467 170519680 949041817 371104758 194941659 495432052 197937401 766655697 378683070 916509480 820413949 784023537 975883946 538545443 480025718 768378981 114341398 256216491 274406729 473359083 567699435 948258876 707205368 74918590 189700282 875660901 273298139 930417572 979488243 296326085 874926723 183623700 950192186 62342292 833342099 786131663 111621142 72192362 913879068 383964455 346978955 467845525 761607669 90848439 840687536 835527048 929089307 789399365 785461312 923816873 718724254 499424452 533593184 964690404 875668843 812246873 612615492 809229816 114001740 968610668 481943761 85857274 585735593 668221131 619253793 984281110 846053982 248228193 479940600 532822643 242236838 796993571 129339488 912826819 218060418 654864456 682715921 839371396 857151505 908139346 822123668 929563016 493980655 147827455 933009539 189686214 560471729 375089637 470297580 234467384 838076792 249588579 61821895 757997795 735543969 909392785 354330527 780659267 775409646 610221280 579624278 128812889 101537121 445369718 920324242 252096376 48585047 878742906 870026328 8283760 634771155 4690828 575481606 581235805 708567948 593074689 38710147 782496446 815947232 404208768 639155383 486802945 576567061 741362644 273488284 162594421 231114287 792524284 995146267 434765842 321008127 32352476 984144091 50917528 658064581 301313566 75741685 452084128 115057244 159349277 627930906 172752030 131908249 379734664 754876959 140702041 721410796 151416229 878679442 206609186 215002853 259998260 316309258 66787424 101733617 438552724 797384846 422675445 413678664 153652630 906000446 103614386 106256668 959573373 626480142 284803121 600819265 102722934 893397145 191363138 796374934 875835881 950773808 597829910 703686751 261380293 776039877 547960257 167131677 990672390 33229670 866739283 822719453 674664824 876086045 960259727 140525104 196854832 368082425 158045085 556445742 867387177 838663777 537439409 775089590 120269348 645284472 733942872 988910793 884793715 554018595 245688804 82002184 179466746 99727146 565718187 149490392 906363812 369083570 595839236 214076100 916645912 89273570 863361986 654334620 775267713 228922668 445907076 423183457 828136305 489531253 872928374 552390354 261149387 80848804 86325532 561770828 532440467 419606359 582519878 313868307 920354757 214790462 296110994 768975293 796640998 885224262 347640332 486418450 679313184 549643073 455967322 638755465 739517536 214848572 733184861 108417088 214043055 659265377 479018662 932625873 843615170 615513637 714114857 170768255 520649498 363352504 867552919 951157619 634490125 270611533 728859817 484271118 724049694 910425134 588909517 298125664 145507973 766399182 299132456 68101747 131652182 453578940 772192264 893403382 165032320 878874323 507400740 802714051 36122286 669675852 202064571 838855726 572736333 289112983 741673054 628844409 413629903 842594474 153304360 822059354 970919863 909748199 760309690 960745487 19803064 928093432 708843629 656455328 657178566 95096943 781550974 989717273 375816991 243637583 108425051 498532790 746108267 162755567 925173842 836004419 488986671 452207031 747648780 31199388 85990184 515208957 407970424 479201867 300112505 118049165 206099404 295350002 677074591 142030631 637329189 487637706 882648445 352650959 875175060 613649460 233430283 364252365 163759093 483995338 18777301 668198438 690506988 304374526 393552774 527075644 744185481 852084600 404403041 812083827 803375240 218326879 839244738 69427771 880669357 358940529 302660540 958403635 528926821 3498307 508084052 421478739 914121266 255705598 869466588 916551177 933492112 660396648 703114102 127967119 159074042 205021689 393852295 335792464 155441161 294539813 932547520 709854570 827430995 529945567 245779686 771880941 924861552 513594818 967325310 935670380 223635348 454975231 253763593 874880608 514608625 779363579 501776602 115525374 164481937 875466247 780629231 183165949 870434178 247035876 420024340 30971845 233382055 769061837 611757044 670666150 600124538 997977246 206250532 68283344 404978952 266806681 352346131 744944649 165489196 494603545 210747674 923629715 125480572 849584615 84139390 993815565 497855203 461159240 795976681 90605768 876304462 857872339 59638089 281846502 756859315 382550744 697439063 818614801 692615777 739563640 365133157 805769989 480128301 177473801 743114834 874651661 303339191 104760348 178225140 124782497 370972370 127980610 809367379 289614734 532091631 440452777 703196917 642200702 597242954 299659105 148201808 452418291 159208632 573545501 324706565 825853757 120409639 393064692 945356663 981057076 656899097 172683246 469606399 479223552 848916495 477198741 363954337 557757250 307588083 126728081 664325736 488946513 691666401 58586679 56570908 818540431 157335103 549347258 426210770 564352971 742191327 463824709 637591585 742151514 509192766 644554000 843892065 719745619 128032767 413413351 911891198 808015359 460383872 874659372 343468624 502938802 893216981 180028280 726248091 184977970 691035424 376443593 115630432 360049785 794591768 965794978 23902745 672527131 680269098 337111529 781616045 90783451 16499372 392048842 699797816 637285569 99281153 514582369 698384888 394164866 154055604 50456878 592197030 79102831 221459152 981760181 793138504 768837469 104627680 675095388 486562008 251675845 359996180 215572720 549024516 435823806 284600061 30255207 822188193 275256258 438280941 491133179 82258700 725271230 390909475 744209481 964382922 828316521 570478457 58701537 226468278 302678967 719900857 943338229 819695391 82355301 56313367 521935299 659293380 468916139 165795298 191756060 826776065 505670259 904398921 270827196 567596653 324240300 433432478 50445307 441242720 793333537 650525922 981595150 666783205 85654625 797476934 738803930 766342413 506570201 358922213 729836551 220761132 29159905 857669513 17012551 806388049 235784225 688942675 592991396 447171990 456067953 85193304 157622660 616612405 531894248 661793265 703605159 635570799 955777563 654290802 902253811 290206953 553718569 480265285 969619141 742916494 178160632 950747426 664855454 938811086 706908145 875900830 996545273 754604484 527268307 497247806 359491412 355624524 818513988 494627137 954177684 675386743 83987274 878946388 936170295 824890103 350172155 350366541 430898044 409792440 955229861 728622824 153636601 617443100 877929207 31121037 844437035 961150329 521657574 907258000 93512835 289706086 445567592 284451316 119436839 670060662 945329453 313464218 252683156 380164403 777119106 781463441 40113488 866181671 164811737 809803127 542591947 908419134 865398766 765915537 743631408 514725947 276720257 213604262 891309653 95892397 738962739 193878071 977402840 561586762 543417566 894747772 533196541 88017423 745240703 792981359 370074172 112882406 900402417 26006301 424531371 779018265 642700534 116820609 546894214 992809087 620885428 399815316 525385774 9589770 911603402 813155819 574587890 901897713 74605897 424785063 812388771 418551544 313639330 965073734 453417358 62109824 194031078 64798537 402209756 186344134 117783899 744960316 764166429 795030601 997963100 916710254 259808248 493755618 272535220 964852982 720337205 172213808 499128852 87291810 934116686 816674607 461986484 65043872 391721653 51919007 898426230 76420452 172025296 498566518 58533007 783822040 552786740 178915259 895786512 273325693 835916037 612224814 944596697 836906651 859571255 182807047 769127501 733958105 880229017 116607000 852229766 929875662 52507481 388122394 526481542 163645457 27926715 332195163 375670246 967528266 544077045 730009707 560260045 869578633 343734202 832808857 868478809 615939305 46677327 595637437 663561729 879070435 559203524 276196446 220951003 828969812 825949139 687994777 566941882 772578196 48113748 375225595 158472526 729098775 663597323 73777345 81703530 748062378 481810821 891927593 624883879 411305723 767616836 697921064 793075556 846110597 985746566 30759980 798976240 750780507 289706654 19300768 415045818 126196958 585457080 548294499 618810281 972959608 488732608 765500061 958237695 272887768 378270309 604113362 18140699 590987104 851572421 787400534 104328037 401755783 618869795 218319763 474245884 892175746 941866833 18173882 206625936 2487997 737222570 525930346 683181702 993487163 246280110 196121491 672643961 76007884 698389017 41159707 983488270 187620919 619234505 183550133 17116792 858639918 740229706 331497470 469594870 9651948 727659382 13157516 101382004 54591421 379641348 909709832 940409722 576752192 282013302 654289096 835123957 643354410 483849360 798094125 29120232 706672681 611951864 267792863 976166884 311882644 290721007 834228460 480485256 725848202 393274971 690013903 308148501 439821640 81981520 915269500 467314171 578869375 367830947 107665217 574024519 573236709 607196837 847227193 129636017 178624226 455942165 705714221 707000946 854458968 488318678 75440656 329989455 25164736 751894399 913704749 98272946 676159716 913820074 438637154 192551215 296387511 98929817 976102884 424521247 42761690 511323054 344962633 879098552 811267371 396474515 25116988 869021101 366363588 474476393 101947593 321962880 737861830 547043277 475784111 18571066 468603610 21232443 388017319 473206944 33325042 529080753 893882040 413237927 318534824 39126542 411720747 501822416 728447 63623080 882315078 29307381 11531112 63823067 465398425 995127652 426849568 421989832 87653471 756844018 145323803 811083164 962254830 763617998 660115216 704414480 371178877 836843860 793534440 427787558 971401786 907623973 324255861 424130295 759719875 65005482 78843967 832087511 432423777 564901988 273481741 417903430 241265796 301507453 870329444 139335070 7790301 142190050 105749822 925511222 565674510 703500300 966473082 686397044 511706864 183914402 389339838 248192019 920213112 404481978 676393746 326936138 663075856 12536213 453155928 55602328 498460371 23060478 777382511 670396212 496409152 378302785 636601216 9810271 793804917 172549949 410237907 745191823 314627125 621377833 379372745 787667298 954770655 712044632 193517443 140637486 455738512 271948437 784020806 928103195 373796307 265361015 414431001 801516830 384642297 889001599 980684832 610416675 744888704 760602091 215143449 61592784 692900405 298936066 801832538 238892630 844394646 556598593 297334708 997951750 256339442 353215097 64473472 147787120 671159478 909224938 842874887 215356030 903757713 555503127 419159431 615953128 567690384 910791057 741432739 80995269 779732644 683844467 289625001 523117922 884846938 951737212 232816008 495772537 68570017 446466283 393803657 48606029 47169111 452988524 29246764 604023733 374758411 627160153 15441729 229510719 233213801 205980208 838573609 387601199 947484544 905322170 853441732 478052171 966276957 379912271 872391614 969036721 197704512 255878605 565224404 190192434 80219107 643504708 40738273 82556918 344960239 171960207 585987063 511358867 25219453 447090613 319680171 271043487 19047382 332759858 690528764 228931924 711620941 884133237 211968980 849667067 773150297 609269918 768568315 981077023 406155981 840566618 382832271 923266288 970600468 877427850 871040715 25133488 78436401 448706456 895000519 402491088 987334824 705582404 392319103 387159062 563706776 953273387 347812634 399121873 29241648 317938265 46466646 696979329 140418192 45311013 56843781 467690827 869112032 527889176 582425059 859689687 329971765 202088634 54587209 628782290 677657235 821433189 140246082 823245581 179229950 972272380 207088042 916962981 216260021 139026292 234827883 793497181 733642017 106544525 220055001 766908645 2654891 795607339 803454067 783966010 273879041 643921070 92241208 751599366 889419546 889384468 721755370 985826288 276797526 699673037 988689110 284845470 74283988 633571562 665949811 274842891 140505937 810563713 733589936 335422246 139568299 885527289 898871045 232038327 959248127 274721195 990608035 299745287 373607543 366953039 542756965 870073793 283512592 934559954 398321958 98739303 499150583 664956284 828608018 406290510 486649850 275176622 707395534 453337205 247155719 178641771 998159117 127074264 214346294 508406004 243779804 859480685 85959120 27637431 291753477 287811814 705106632 164309638 968977657 741385513 855364475 664656870 820619490 927181316 163707058 562386281 435046650 759415425 625747431 403786628 252277202 44031687 625207663 187415135 555662879 462261093 152482073 209239182 715613022 840899057 898348208 330868868 685625893 213617830 730392520 36009549 764586446 62635893 800949355 724482315 972975130 788039004 566050415 677483936 294043547 796674424 408266075 591630212 30374117 620446683 12481721 410504713 632356670 571226062 620514537 92676031 178336175 584563228 163067621 910304246 649362501 680300985 81698905 152394723 79689056 421089380 920305966 9976076 654863574 363698964 307558485 516242073 587820105 811750833 65592561 985649888 818956207 752588204 833133727 299982017 829630885 237624877 527073398 972093359 253216508 192951007 780845369 935649891 512863494 216048602 176617288 146220294 452300641 217862973 319852358 431070366 521085381 751518990 968468164 929500420 650498176 518743117 804313452 149503013 557357457 937292735 111691944 569935119 787231393 302801750 90534739 71965010 402056539 587648643 643753938 878339704 921789563 266684375 707183220 823856967 763277464 747036022 612281530 218403212 803769395 481992938 974870486 316374003 513960322 709801674 26016521 223374790 79602738 292372810 274143086 91002067 42218972 667857459 544491870 479553020 290146601 295421979 497960417 143322499 186654712 418930190 506237908 85898408 441200651 357088372 102325796 786378442 279587358 352956847 663470556 42742687 21859042 326441767 297641874 267228560 701575018 351446617 805285731 439088120 870202843 429810114 950159221 950127887 290841164 314148776 778772192 744706178 7446748 637716720 300085944 263285650 72091560 818410925 619062719 711557778 343630605 52170627 94281192 33326847 932894927 735587205 420923793 734638144 997436593 835171481 889065945 227715891 593295507 756752493 222638902 853931132 549553948 54368765 709380180 312454632 513490265 124510483 845040350 294507496 435587893 574109761 351253974 366846300 355856976 839521093 935812238 832400795 116612337 463880626 31076388 794978971 45389163 411020828 492201411 555251177 266795491 778827209 512162978 27296028 175283257 828268289 873635757 656239335 244253648 69485606 300928848 742591946 192780941 756677737 924040588 447084948 766998734 23402991 71200347 334711368 658760588 560981544 804750848 528350921 378995500 349320597 232573453 319269302 614095582 927236819 936814323 821009222 333201045 38494260 563671178 981280047 767376590 56555092 952409771 782835677 324993079 251499769 18482933 321222377 244043384 524142137 260664564 154482858 622972710 11898959 72078361 43577941 992662418 133333104 174431859 499631979 102242779 467859671 472678651 753235214 163152515 376045499 833179037 291938694 349733044 559630826 577398580 277841523 242088957 548257610 471637016 906178565 972329733 685637199 186861665 668169394 327004069 463499566 346742905 470636998 924954272 706730775 928902993 222438148 489830910 282436973 402320346 93593745 681904535 334203953 901197501 878405487 577689256 57602629 420643168 865530320 480838150 920788915 776843668 478366380 362705453 388436129 670493036 43726940 695876743 833127195 23169708 676403465 211581851 510654187 439478967 239476707 896668873 441968182 642914490 746701884 873692210 501242525 789282597 19601820 194278380 41467630 821653330 389466787 744483682 632891565 512570108 152513466 494710867 688012425 715229398 52162669 940746235 642742628 315401272 408203352 670179171 182135015 717892691 294825950 276505102 87488133 69206810 451199260 877620061 434101842 853783077 90897776 556608615 465014173 170246932 851003914 157533633 563592740 183267882 187690837 98582408 449310512 200249814 975897105 36233799 926644523 793333830 250443074 665444388 353756144 637564088 388358883 359903144 165354483 757753174 607172266 861147981 818402053 491293118 961016864 447764356 828001437 220370795 634718390 895474542 811400519 468661310 381445231 6084354 675821709 42380577 523680957 630600445 193188502 52029052 365775507 816241966 817707820 405331459 484111430 388248715 490426602 594462535 552109234 395990383 487664293 379696466 435921607 356907351 220731956 674275851 709421793 210718883 180028508 822430386 275712643 174106653 300181408 495262770 614164571 755400490 814909826 819978535 233260141 764291108 809280120 696901539 236486805 331120895 600528059 347456385 20318043 792990936 564974833 862157433 395669353 664620523 201176106 597710739 536496382 608548067 22362063 811263778 208101132 1186085 827780789 30023865 120498183 631717844 4705374 767077804 373468220 375049297 785509447 264684705 409784610 464728845 69111085 851636268 415509062 375760024 991222883 619012278 498602198 427775979 483884171 928104780 404807662 415598330 75069948 491928410 716197621 574476632 691261280 758862080 277261367 38370966 561119027 745960905 671478746 146607755 467227501 945095657 531408013 450701362 649557732 767412359 500636260 697036178 878430201 823054992 53232770 467594105 124126470 521695504 468721309 202462439 276584104 313319135 670251960 909604361 133722158 373717752 249974113 325460828 663482641 239828869 415394445 894537378 896549568 483230273 454625360 202597457 728206460 974223231 198612377 422241881 231579324 734270779 298353876 754558977 227154397 563677066 785460999 538415345 610896627 159934838 421527739 572037045 758137069 425269801 748829576 162629762 727160891 625783115 8797733 466018131 502032989 187127438 726633413 460282650 425226908 991933601 977592388 118810570 387256954 968754694 840059774 963540704 654746489 178040963 217543363 920252329 242240591 539695555 524725703 34019144 461406487 936684956 885733693 27724609 287027544 693671926 874581818 445694421 609539124 16198461 849048022 585130055 152675937 583074037 837927561 979661101 48470671 414890071 888439774 356633561 808706788 203628503 184264077 421733939 249177912 466550067 952717611 776447793 489921896 154445357 462041541 71617543 981290747 179391412 578495705 946319235 90013483 341198448 418328403 75514264 466797087 552272043 722651500 426499194 172600605 285599939 849798912 570894068 867579857 152538634 84852245 589314222 555264452 807627608 603583542 24660050 599665354 609779479 266442855 228982758 213561602 186336935 136199609 500534348 642293174 756144257 539419105 77699129 365417175 208469388 582007839 99197633 484940524 831398522 989456056 823905378 383343259 712897776 658127116 150505908 887706422 121074847 828017656 767790178 126360600 182641611 20114229 642786170 213993549 76021550 111829641 513829953 54647889 65971081 947930822 141154294 968551104 906767449 391174004 758152309 315123820 657590902 547842291 545827852 303524680 70977850 863590936 803212257 982636045 932817584 921750182 191343500 17980953 165596731 409828654 28522983 920557491 761658847 977385323 614816080 773191161 789920106 272337050 947105173 237836251 698007567 980373343 885552686 107921072 388060905 658536611 697869591 406186928 860748141 793410526 365654480 139070533 740865425 651848031 997190210 652510616 492399033 287374457 409639397 855495717 214712160 429515179 10580745 908759035 200748147 12372940 467408899 79894941 145321843 374759276 224442540 977251785 852465502 835258550 724312486 76854518 997287844 277322618 50923912 286590272 675058040 701011092 639627500 273246724 339336189 604398880 541171869 941363566 123521607 479463283 464331324 577160104 679310104 500432109 868864817 930419026 236882004 842154175 239800553 101252547 844382915 377936972 542377863 358910771 255611775 143119373 653892406 502151388 985776727 779943277 719941969 92602068 740679894 582118320 474507061 217006962 829853828 104946029 372683846 36911678 648917428 99021108 243238414 493773019 234051117 411187678 526431113 469554314 840659703 509770676 277378115 419181630 354218149 543141674 113387126 738206173 380232196 225999797 573557599 677566514 145357929 547691969 614778610 451421663 876321884 89533348 52569695 86171072 320696276 181592978 546683776 865495575 507584126 580198447 888797827 692462823 105599989 981148020 80200534 812740279 994234164 392401528 645822606 256583530 19713575 551493940 917782811 52683342 804591442 743538326 729651374 501936090 105188512 93344696 745910237 946525212 920720912 886496009 732305266 93454107 818892248 207531532 134644736 299653386 275722438 228860840 571282780 985450586 992902858 263804179 764266253 279167509 923486739 650080792 76059596 234143755 574556079 838769667 210250001 536211358 375360611 967292552 646287909 940299274 960118742 785908169 404033778 550062355 631416580 833427620 805254748 802774993 19720405 122912492 314851007 529744739 604717187 792066062 218910446 331273862 651394720 957528315 18520888 104289637 90597284 895572228 273768648 382213134 69193273 7234409 972675735 941634455 942818740 919556252 428526949 63868355 359809930 101154314 263751367 276923836 868747681 497260051 170418662 271346934 451900599 52634549 523823258 924431481 624247626 212604829 121720702 318907359 83749071 504386762 215170209 113956009 116351255 112921579 10521236 601648105 539241722 90051320 95219271 65151588 537503826 606822287 77096225 689233582 388830021 469971851 245915589 18856216 428354142 259550863 492341319 73356037 221838796 393787962 869572333 562917856 171889108 488121196 511561127 982501363 275842360 163418661 11816808 641004799 812114086 89708198 248211239 707322358 279625488 378336902 306617588 388311487 106775027 502518047 678652248 457870224 194213987 169859991 911511536 787327227 659731962 138011036 292109516 546566901 672981547 88430130 800243570 725801207 126323206 194042147 264993837 373813169 792864925 30884467 8035759 367062476 47470565 880240970 851833318 743945515 395853591 504961614 103980520 589510429 238720107 416949355 214043814 425486536 45276418 198184257 920599147 327271269 328140614 982780844 392521208 602710118 22755544 766690150 367482433 690817107 234520360 460624800 440877981 577531145 548534040 356039502 694159862 425084933 409942589 181668939 405905053 467366451 260354803 73418568 820985233 869062055 578019911 62987520 661715315 74968979 304124947 65668730 609849629 11392303 51359968 695094666 683787961 477830283 869426987 38789254 631171866 822195820 365584241 542582375 357642087 655728268 670494236 394221270 234950199 866134127 942248614 842799501 527536241 859441776 293252732 653258425 297577944 398018691 158821982 255651234 870219422 665938692 477544504 494872945 186173510 538333762 670643909 942205067 44472421 783847861 731883851 921573970 203946263 245385997 173529313 943229405 336000366 232145365 660856003 504972098 836693881 26166766 283320836 942099697 535060390 130024911 578326717 484401137 283262471 831568175 739887289 708399836 637069801 947920604 757236605 44048354 468475027 856779477 237383761 750515770 331940073 120677161 881443331 941276889 406959483 674630080 835267793 434345617 917459991 827208058 282663500 920915016 396378301 407404666 593340327 618810529 310767648 464994585 427670973 73804267 758053140 695377474 768715248 421470692 24378694 464098128 975932032 839096171 541424525 119827929 642246986 234458993 416650800 408799334 592275734 963482916 146988505 887334745 375945988 110070044 54270329 843749845 294934973 41019836 957900017 435308926 540530187 338418174 928002252 970794347 938914686 172241615 455584880 638938741 724718613 695508694 152477281 624836593 237589558 792854937 534610466 463795652 403903189 287907347 445211935 678279563 850347497 829319754 250138583 858652733 764658048 150946029 509308934 889509692 441855791 147361166 750932806 285055174 868449059 213753575 769363620 213745046 483493295 431028723 560117753 843450677 847391619 154585304 620508317 293690887 473658946 986780856 246646331 510820106 188714552 520174290 636294331 883073358 860215019 626119582 931627277 716279355 68203967 497612837 541135990 456512931 89165821 686173111 957791213 743382520 548174116 146845848 360881630 554960813 829830230 802384321 136639521 175730838 7948968 837730837 258023471 876541508 788757201 305672178 162132234 773229782 261543705 435553298 823975646 449797754 961918408 787757805 299227832 490667376 394139814 718008261 576028717 619240186 313025612 624947578 842997594 402729986 209444156 297337257 131081437 511579071 831417300 892535119 307379641 909355603 103130475 135747187 685939353 389992210 598405091 108845875 543103433 910628044 940199718 866999251 595199518 162124094 346137219 510798970 841129068 239377429 715851421 787705576 987628599 753143275 356126020 268614629 598887396 251777512 433924070 575330558 1215315 785413299 776993533 439700153 758483158 301231683 718268762 833729545 828503381 690327097 669075729 277809816 478542638 303029466 275705982 322597212 863023528 612489953 790135615 456152170 741565631 859364647 802621823 541302079 629717952 390636800 386703384 600575917 242308891 575497029 512707875 410864378 983477734 254598076 870185738 171115326 89506373 248155759 383850134 997275880 391508366 577237859 186271674 636780266 649419507 301677004 638367394 556196283 973892355 546692698 884447370 250540897 125527678 683925543 642855243 179846609 321971506 271570094 492915085 312447833 882189696 330149419 514539315 865255866 116065815 909889135 972799612 32445305 997019991 165106845 527865979 507953272 838221262 564461672 966090499 902547103 273071876 244613993 947708785 552483826 69416807 703790898 601054566 461793975 950551624 332483866 715604211 285800289 150392480 397692018 305164086 603256985 842803091 199050024 893221858 156626335 994385584 120606635 61743649 832579758 837262839 821430421 367807706 826242880 793356182 18188115 905155568 918034961 90910951 756744183 18027474 616759134 88955544 532479198 59978444 232816937 474337606 191407342 909709369 909590088 994064438 303888795 20397280 479389830 385041981 76730601 349424433 858412056 73518266 975016636 785440118 392533712 695479832 287129762 955555775 543162609 774398572 350661867 976651025 467954647 759780428 580932789 877099162 617104732 967339333 227253987 365616201 89328343 546566644 897534693 940297279 909939924 471381456 964432377 885756766 556683841 675003032 279290191 512993513 617500942 17619372 926218942 149725943 506251850 514755903 665888060 656169337 804172605 133882095 822221507 532075431 397204334 579517837 422224517 808415314 915161786 633597636 167483192 903758741 804153860 258796549 878081027 399459224 325183321 473665799 825247215 36446541 100638588 701822693 580767473 133753383 680464070 54748423 719355003 273363983 442309685 41107214 410655869 865633760 198323742 881582376 540425367 153190523 491205703 142007412 563102991 67543761 811061382 881449378 727638074 709371140 321909427 540500243 138375333 432266894 805015659 422267667 144042059 154986603 696757909 766282721 223640734 721056954 340170312 903369768 966915004 913093685 968768192 906673021 79794721 360119417 406157128 889229664 640208589 102660664 275566692 849052087 996620307 354689855 70038049 861404144 996782609 933407524 591971288 173848441 66138265 473313824 355053123 663907428 886496720 842910180 131817883 392746524 513410295 973576707 853461184 185870702 552617670 159606632 181955916 466693339 930555373 888773697 177126450 309849031 679747997 833627980 224921372 581577486 178964341 215989651 317778439 878427202 928205726 44885083 772350966 129229304 49385781 934354072 787018455 30129789 274132955 592329364 648528769 19285602 100569829 72091438 507059980 745253733 481836492 242291968 531114121 252687345 751225559 667725043 543474594 499414216 460392521 383806450 209791012 553876031 840818087 32212127 775611251 17308035 36160254 890874253 96917434 367295139 918246793 508893185 609750595 911619904 655134958 961557530 907151472 215682890 481620736 77750851 454944461 13626029 326173688 75756873 80557761 643529829 287622215 316683255 65588833 13336690 506390478 582332282 344508012 541663314 977597935 44188382 640465336 922885650 389877973 505058244 634088426 601466602 464350160 476380376 579149994 460655227 236681515 425704273 684279979 46482320 295207145 119822234 819307250 596049546 129578387 581440041 371641978 845905708 129898655 118267704 374768182 885608441 252173018 322363061 7834695 17625437 923282823 852018312 79698698 227076516 706650525 704484477 408192314 164699739 805354691 346243408 615919650 854501362 601317679 462725856 509226425 666456986 973406117 599693751 697280957 25822313 311761730 299136244 611292478 53499835 16909371 810659001 11808141 838701437 33454961 173196313 158773257 684042549 77415376 205507486 294952617 256094347 12358129 129805198 215373761 324451726 383985301 374485856 821133599 943925944 853660225 447240964 956553694 808759169 334040026 556170236 89180389 938675900 96718284 248468577 449500060 244010368 98381625 569445819 256278666 730124496 153650473 806592138 441841064 493175685 827904490 849229035 729383497 46205273 242605496 211864968 934540763 723186498 78606082 68960707 469831952 215012418 962079542 999391561 292995778 868118690 74032436 168640726 322300577 999166858 232656472 489975085 170005177 865488558 57175489 143414849 930331558 914469764 442485491 82999663 607537264 694332040 99165244 202732149 116432780 451189752 33636366 211421181 636180633 171875217 546916329 449517404 989962035 339945589 825078608 88327333 396342679 28595941 863148577 778456897 739366671 871163919 642256195 576179457 838538359 159017192 406072357 615497204 643131866 329348561 277074931 735369650 648240726 589504618 347125791 511286917 474731620 792577029 409327022 276983948 46066630 94348762 282502285 847717664 335360737 981037202 598241295 542598721 20754933 143253258 94607498 80054895 642446060 967458133 390750464 840191507 240418435 88806126 705913687 278328550 707401437 719226080 983312784 924606158 853097730 96325567 242867773 131859371 864296685 225055769 115087278 704567878 907148591 599894926 133954905 287197985 212886400 834765195 881043822 949634625 601052158 728361097 393958641 555393650 202003251 852170705 942977384 8222734 339433804 775454416 227018641 724442298 463534311 490539752 741755942 773383815 708213428 990968430 66593066 478164686 732363618 37228508 839620269 316455566 297328503 450651577 30053292 504766850 707167157 623764702 87301053 417539996 482705361 565095310 62838822 465669059 22127545 961965300 488372887 31293336 69112783 471822507 646635325 718209305 830993712 103729935 843874810 892391572 47466388 137189318 410913619 495201028 832149897 392884520 591749630 114270388 367143424 195826202 155859633 562638114 430828016 244634781 256718501 919929961 156990616 391939128 116148826 111948262 522192847 98597907 699137594 148680542 471068421 349392043 541644973 323316751 48977939 32434287 892539796 722580809 859280128 661470620 589527313 429085807 252622708 58010838 559650314 456500023 857115787 158419979 473441360 327708251 777961043 772301544 440076242 376610730 178277924 379871848 291164220 618940718 149258140 179654744 557836592 819983350 551207237 313949496 617824595 761404054 345659392 392223683 978294095 894297080 843947510 500321607 973502611 121495568 518576848 195787407 479395069 718153966 989305289 309624153 931915669 451567998 761042450 437996363 238019588 17319086 799038786 756610079 151192619 846522199 777655102 503483572 949482080 728146420 208117004 737946576 132431940 527320949 465933192 749289404 13727459 244646968 615961691 57439897 48378762 140312315 437171961 980237219 300330831 619171815 258443712 646670955 492624086 937586203 316664884 396387808 5355306 362038101 951438912 6421228 590114861 636699766 124248444 878880166 877264730 658813343 790561869 596665271 870560423 338716127 674079796 266593086 25441061 442640534 917873592 605615439 170019527 2719392 872714799 232299233 113709109 882332736 445786807 587443754 730226141 162337886 809879720 48870895 22452069 517850880 588559901 964807028 413519091 975052827 165320804 162499965 138959422 991951159 656504326 12115444 622732305 600906114 767802486 391799514 533230569 872451197 838794666 829578928 345224529 106476866 661507985 857282529 314879452 19995518 939722038 849123218 515140241 516514764 893743436 794863645 858816092 230668184 509682864 101385543 467505265 787535407 835123574 652915932 451293282 440808496 148009370 200992658 705723877 971725001 813764508 383225784 294652938 26316992 726417305 557608959 370948887 437294295 680607032 595285591 886714380 844425092 180307797 738842981 767989463 346516693 490827413 403499224 982279308 247895255 972189547 646869160 487968745 112910045 285548571 981254159 854985047 799168001 477295846 922113507 785574517 40710891 233218885 33771725 515954212 790330983 482048196 155385939 983074006 409497662 800071206 236591490 765951310 32410722 874462290 651392225 452030762 589823098 399863401 879584687 89358301 458819584 269392363 816951372 698285132 538290385 209086129 200021958 331538537 870778594 290863729 215435244 529224746 676756669 743900130 379344485 8016507 342117565 681285462 724901322 573917818 290696483 516213647 336048492 466713603 366028556 632790929 994681772 303259133 635593390 810016984 145165616 751364227 429178458 587048512 266174850 882035617 592862332 674283361 665728641 893297488 487747154 834399676 207079629 683592857 176828244 700451144 387867619 420984950 438678336 862876653 737650837 896718557 939054142 11979962 652770802 383612860 596284917 460583834 602256733 322685924 546377708 839889184 758737484 61388623 982731375 693613839 243083417 67256732 929467809 798273125 658005762 24206704 954231652 425837264 76522360 937276561 578491396 483847520 788358953 918352017 134042059 240740329 570424723 242751296 120235478 17282576 571892523 48121183 757728515 380678572 306796302 936834197 800550817 465770455 209469383 275904301 81033169 242460809 622732127 612376517 111000893 188197415 907238318 168244426 841574017 736893688 679985849 931284519 471130340 889599773 702074098 327883704 832395518 462712067 548945266 197086425 262973881 91869362 160090849 280669874 943404675 945790922 202026314 393279239 309262654 960438398 905324527 253803298 262509201 751568292 72265004 819962913 433675685 964467917 449786719 676332083 516316099 102861704 684973933 312632480 269032590 997248343 304922139 682391756 633385246 258723514 751196050 994482532 832365708 602030869 914496200 848185998 671533796 438618978 599621956 131993713 953531480 740702958 602239647 206624805 627821035 679694603 91319387 204232655 728843342 173858129 109445052 336453114 542400485 341793285 687192382 559606691 43746492 172764139 386073411 370960931 369385080 585489661 829150695 6665002 853646643 241135859 76059609 783961127 414255685 941997852 387164639 2967384 430844469 478906581 132808734 758256972 399044121 341170653 336468356 141223223 975100206 683722173 100793324 356956263 383860646 947788158 455310149 402418969 125024195 193412562 860744471 91411724 937693527 106441523 239692046 573410521 779076159 537657875 659430617 645166577 268634426 698049820 247466685 712750697 767528334 393648281 858800774 403968402 320057054 533945955 295243372 678486507 684257108 392636353 622148453 479590260 556275944 279373757 849431744 322692690 529275569 65029053 53014818 725490503 740792917 915074507 347223885 95774360 533244044 246185275 250922087 443215634 114830225 883662487 783203063 229183141 467215329 251421792 940858982 40029093 580598106 142506036 148054361 784606030 94370737 922409832 313262069 593742939 218768705 934921991 80104759 204786962 703210497 478363998 983628700 983313910 850206712 251315050 676459210 985956634 782383702 737368590 285847276 814491928 682557497 881712446 624059312 293405758 361918312 696830088 295569529 795650497 130114214 981645346 464168147 385593330 99344810 780847062 513078606 470054318 269113175 603818905 61067318 68475870 520931225 297578822 354278925 324270070 557656664 670451778 894594108 796642562 439712693 444265266 973778368 349728052 55528756 275656525 139292204 43218226 362661553 247555838 522557074 588308357 194932373 713099669 704697340 19116522 884138075 501655505 524081919 657031841 171869946 238489883 390477766 987132825 165204044 332963554 308054825 118039199 763989898 390859715 184023008 366161546 422231850 832934431 125922748 119798865 827255962 500976722 461834403 140830921 392296506 556212557 547315849 833071522 962232466 829502479 552251092 969305359 468966328 889616878 683670210 661432116 416790830 281139933 719047071 326741236 25130135 553469209 748023598 996528695 367522895 192773779 105360286 684584321 700375000 713606663 993312587 95383113 13949943 429675215 136414987 222266699 927539599 954538806 705825934 70600305 708263582 863467881 840553876 809903577 145019071 310513525 587769187 983316287 177142064 82280769 620442168 667178559 373657147 957998957 269409826 136934770 181772969 301429810 396108957 494691629 574966677 657028425 829415156 933419736 786071748 791200477 208935563 750118821 160630214 332469928 466175938 367760174 691233377 529764495 679921458 238821639 850943212 660481199 941896586 160541656 709262985 763147009 60038776 946915330 696445496 966996350 714804278 708696125 420878676 61901521 961259369 545863210 593562564 810726182 522013194 857237749 436161698 983444042 336000762 719079230 712375538 745565197 712494285 589432640 70676897 156153771 204570532 611744978 819277593 557023531 388008015 787557530 222154833 514633299 720599631 283366250 75433463 318165845 89082670 940755884 996337408 288697316 491924868 87462472 434016786 514399455 889674579 215271326 156393191 477745269 921244179 112348793 579133122 571117969 737340250 552448206 676601244 836332796 593804749 795194485 691549978 710479552 387587439 743490091 947049205 632790417 34571163 492114871 560070670 581704261 667666576 677569453 830777454 927390521 904803949 850111586 799146913 623511197 596057888 956084269 644979849 938204286 922999219 255630920 966498267 252490680 86800025 606882293 934216629 538850319 906450690 574024236 169913335 539818045 440149895 118242404 365132612 524761796 365006257 499918404 921865118 809088075 11095452 199802379 5300024 706710620 519501491 710490499 224024792 646094036 176429080 402985584 254852193 88106612 371368252 249055281 528188610 625627684 632755320 798818344 803608956 102943697 666413074 142417979 496152836 51808121 900330857 707516211 271146036 981104329 522955111 335178842 288087112 573879848 128576650 415295375 532592436 870807364 144506160 187950314 645039001 121405058 12206564 989280289 275222548 239180855 983701787 915256878 509530907 898087092 874616275 633285378 863738215 434838758 686741869 795045855 944971470 213027467 100549620 816576628 835323422 454038607 387408552 744995826 468669767 343988502 896698394 207866153 948451100 308624391 184593211 840007408 673638238 218692846 499512352 567844402 909053035 257574395 691010532 674216096 428337292 727556975 741417945 270706829 62580591 805624145 343406259 182349677 542713985 165229345 282746940 3991402 982238893 880349953 470516378 290476784 448964109 263786845 779262614 477941833 260940903 577004220 409978266 125536922 320461598 107595046 388917611 160463675 519602778 833509393 154315478 719669357 576189954 216070987 585988741 967620400 207018575 857592475 926696442 116510106 62649583 369071790 50502067 594101401 680664859 785965687 529118871 23516280 929550574 920306141 834688218 262255964 31641026 67730300 838081908 973896892 419433169 728610738 16867453 163037401 483923936 445387589 600984564 962373406 950158513 615942716 881381553 200697294 461352128 949102539 558044061 136721823 537304450 377577427 100634913 495314408 836397660 237049152 396487870 976131397 503678840 182900925 232960248 516027963 852853238 323911357 170298966 508815550 459324746 823114378 629199554 772438018 583641469 174938899 149527107 418096817 861377384 940881050 474341434 337058007 636246874 596865166 134217434 22310036 595634498 815281666 629363969 490257917 472583329 986178446 795704353 554818417 135850631 716514798 614124571 520326654 300647866 778830361 949940194 658651589 168528755 498949698 543356955 734579154 517538916 122479538 683692842 924405188 197284068 292127504 107457949 262903122 986263155 624150920 896375557 623281654 918460026 524292603 630075503 208762615 814176081 541552746 517037666 372832521 818252835 470527733 511277062 210158548 584402564 365331491 422491651 950292863 879168517 533849789 78056164 564090893 742056718 716070407 667902202 21446356 365518489 263824929 155571498 88487299 907028668 31608532 77148618 561012017 741176512 823916059 693004179 168314427 602487383 362306456 32922130 929497955 522265934 383324010 289465715 63430376 481506534 423021106 88142078 679255350 357541325 881304976 818920474 224811100 783346668 994916079 455199134 43513699 543613149 151219226 496784035 46239481 146101731 293093455 266119419 419395632 685924426 65016966 37761676 245659365 463759545 403107647 73977868 724708705 23204222 382962774 326944627 451745749 295076012 354915744 898689766 871898212 352989579 184964445 610472436 794843363 694985633 488662477 528057524 3620117 264233638 184739719 399119398 792678252 211042644 646388181 503153391 438723630 351877679 516368907 462044967 571856927 900676849 146523441 663721061 752135514 174803955 730150937 831214036 112683747 157318920 765534166 962727754 335581373 463681536 143972844 587457984 783019210 522722875 696660561 835920091 453438097 635908072 447647447 40700780 942781713 292591746 98134753 171981859 615777632 909030903 317989978 960066389 215039912 195123297 46001428 498103109 253757475 762586178 126349206 842248771 42080744 697695682 129907412 733624681 560470123 569978911 200728325 857535900 529099256 435942236 279436701 512395642 18706150 811001044 742632063 234441805 879994073 252573407 755574442 88809793 173383802 349976482 852587537 129175957 289176671 708096704 642560563 300492157 635105719 684598302 520607593 358909335 199286793 585938666 250484078 512733659 576406927 818953769 994004092 171982833 601183435 864921229 407550574 234838702 132042759 879389396 895289260 174820528 27112844 793002039 986451566 183489025 480856074 716865540 445360011 588890799 399166319 4197787 188905337 128542541 405613994 880597920 301420297 670843967 443780872 740134167 581373996 645174858 540351419 902079309 959479046 110374497 401580142 539375735 381377399 287424346 767388694 282678318 680213453 654039449 359221492 273050343 987680742 277832775 70689325 22227965 444114595 775329096 525604448 810243948 61443788 971822485 541714942 276694604 443092720 173818108 181632472 206495205 619065454 709252068 290468144 799552897 926609584 892839802 412965835 776548608 905961875 201807 216586196 827607844 885340886 91416709 15594678 934074650 725279003 646569621 446804632 431075970 198684283 41829008 699403860 76102990 185961127 447780549 325505546 618829555 478248562 946546099 856083505 752770626 570096549 605741780 183416127 516530705 635482856 40488510 814848674 421229725 417724775 444049414 842543360 660943214 508155091 716909447 684238258 302887884 609888965 46463132 483756234 666564031 715470263 875421291 606595123 267830481 406036419 76201802 165433122 823963739 892337552 874775309 250388475 537175738 55025437 133401087 318319171 581709393 902608768 830843814 18802322 42908738 713172540 365158173 644907155 617367821 658609762 916584146 833670749 794624375 379980298 464246792 776989722 839522117 317128277 622420060 844700093 987780775 536844720 458827030 173926856 450251469 217088462 963778165 351583099 735243527 691655476 631572412 324289039 528550712 399361949 722718017 226332428 709561055 66386301 529195612 67298694 212534568 128847011 905380136 450696119 911931274 376342809 626103153 368781018 98445248 259853652 552714082 179650275 622656973 652640873 75857431 180827866 249979268 594191528 384460021 895537506 178457747 744440720 618750510 122144900 204893215 448447690 175272813 665137243 248279079 267410279 903803153 451602915 938494850 111090645 468621790 767996393 719549187 388596240 622539238 888004408 361448115 374056259 744087206 703383422 129464563 217996820 169622503 968240203 137019741 571653355 964455278 475951002 933447617 45845045 710781961 500697327 638413048 705444162 259067811 275192844 280320391 405544929 614541876 3711269 688398092 179211237 100078748 638925226 557704833 748467380 202251580 437533122 618116509 429696586 943225734 537007898 32270822 300011872 841395526 684126345 232340697 119856971 158449170 327809905 407080740 891912685 705114594 225209862 259473686 377715561 831621727 642892725 707577403 174221345 608563086 219775100 443527491 87700170 607867598 510930402 12570666 54977065 380986710 957340471 198426857 499560518 378680962 858729831 518102346 209207107 351042638 16102429 814783670 368814718 672362488 755125191 168558498 151379137 683924815 843798256 682963017 133183907 116231709 324882004 97465871 352915905 309125784 381893140 588080731 9526655 625479548 555117538 724746296 86158377 389715207 485625247 2441855 383496565 526566480 1719979 473170996 67081813 542471993 140923784 377663761 277077070 926258762 501557936 187646200 964693990 346640104 934958345 834759535 853227455 212700067 480139443 916933412 175698276 204501516 261300633 549878751 17011904 627585383 214970346 413464073 11807122 55410207 310909168 454137274 776913592 893154769 221896712 112827388 978281690 562817892 986058128 974031895 979685760 718236169 889863615 82256012 637070207 66814387 143798070 4202572 368671362 894022023 261535630 720124690 832033402 810618436 576795870 491595530 966973099 36210487 893279958 665990103 130660982 512224156 703785826 350710075 757051934 781099395 294602098 627360544 484642478 620180373 498794933 777827622 98842294 400446618 512354797 411495954 46540092 575530212 445274611 397276216 962840547 282464589 613273398 660316949 4449273 456975108 274362234 318502719 122327364 298200529 536909933 471557976 707772068 968798600 350187676 860266405 105150074 161032696 20782437 985082551 555168814 306634723 653129488 179450230 724172877 116022165 757511537 492304528 568437672 237538760 915155829 845331321 214186871 669169687 22313512 149661143 693717485 877022424 28698230 189135202 195167585 205696275 452985669 117922403 194920583 475381344 331915102 453672009 311617522 176162571 486911747 149484319 693556737 916546693 290517917 993148970 39111193 659984340 669686685 44471657 418865128 727642666 986810990 285539404 869558343 926787016 976952953 539644874 661686217 583679347 676796226 877044214 852274872 187022305 737242827 843353199 106384723 68855953 57935421 293378282 950300420 327481367 675423788 705925273 73937187 59512174 632309706 937592229 257627167 522125930 20991534 887300193 201211111 530996875 926867347 231157279 180208875 570103301 205251180 285156046 42988658 120840343 187117850 254662074 180876275 455884111 100795075 132820534 682974304 101142979 895219204 438185743 814661577 356812200 700277009 570622126 604557979 111820266 527585919 199229653 208533596 351147354 90049490 563831437 343587845 601233118 739767576 21667133 417438566 140300076 970712679 918793950 711605059 745510799 74163027 456114077 853886297 523702529 411390201 222116218 100917528 562379705 903166770 297824660 204979890 67665394 291844410 319238859 996178590 542032359 957229827 435389394 303213146 570876751 824808798 827999605 133125339 245156584 486061746 604340341 970180022 769874622 290786632 801824273 519028437 966613616 304246931 543446837 162076218 887741125 862201808 390640218 699938796 937816892 885814859 661097677 441410941 849803193 616236773 433593900 88951404 516995897 714957736 935170359 999850543 824222594 930441768 338566295 636235652 265144425 355437498 179521885 849886336 965221231 711730830 888367317 474070457 975301965 233584610 445331643 146368406 302604786 161874132 835884329 692628327 926821097 812853012 349812293 265761492 111095121 327441489 569816233 798068637 20338507 679255316 733438804 372721171 612163301 743392844 292288752 455728424 822812514 828344476 44522562 634076234 704490469 938037784 881393180 611721720 527082620 240497774 562137662 112126263 317247529 568364080 388406420 879497868 780944077 276769671 304597500 579427992 219154699 575585997 299589194 500484310 691092747 757357168 1489047 390163560 820758830 125010009 449466211 727171278 723859489 327629977 368802513 400118157 965646362 792902380 942387601 864422426 220938050 861892497 536064577 247734934 987603649 124815288 23927052 209252149 682233605 859810946 174402104 636732233 231172926 198778325 951957560 235128126 892701084 299911054 505455618 967763823 151393237 276656631 386739919 276811097 486236447 968807586 465713037 846955827 660961030 289823292 228467657 914249176 404209611 549412369 25347135 111825451 872205491 804321209 392752340 691533387 977981879 534646737 765409767 485253217 859673223 428086679 352780780 154802374 976540841 563861090 633482571 840311994 511175699 42440810 462141130 292303306 431728597 21023347 418677222 549193735 611744862 577659139 193124690 813498198 113775042 940551435 21759191 47879593 776236333 770662854 983934861 596845900 273296018 758146025 480427932 541552052 143678235 14833574 483208853 273947421 562364239 874877972 338209916 733058877 963824075 909490548 733018870 827163504 391568714 830575570 405489881 108465816 48962729 487756015 99257723 838754225 396375130 824464173 697837565 819502898 595833392 459980099 674266416 892498675 621886895 925178157 774116448 259633065 51735010 414876546 251514994 941681032 373636010 102254600 833863469 797635857 287948745 914810506 303757209 17515219 508981089 800586780 346582205 285402209 797946056 489725509 852334803 311678432 578694588 34034405 614993006 35345634 592480936 706799551 785075314 358682343 498637914 675847538 728601958 872317007 502416779 348962169 946361397 205289117 669880490 320864569 315044120 548642139 838517848 894152489 807498236 545942494 149707122 250399996 850078469 446749214 144485228 954173678 250184379 132874549 49970880 636168426 682059214 195303218 880184021 337152995 64833676 428084722 250429740 79441821 831650873 801123 960348406 731737716 821033103 818315455 218057259 114734532 139828391 793815034 928464429 939876153 767127857 168230534 639457717 942238339 186033523 263945544 951492000 691946621 414545344 630294385 201258829 107457925 42170695 512219749 355461991 242093027 16221765 110890676 709758907 270652000 320800420 379071238 529941408 300863228 11196160 493115199 419079791 641998089 945816765 992127277 681847046 160293756 88932938 632382326 609896330 363618294 561096209 853681044 776346901 756922233 939804340 998507526 851286525 589597337 209073141 664641138 350633829 304305994 567361669 664865107 588827630 806819288 682788225 866689170 855307750 362857507 650133442 569816991 473016141 665087379 31081793 959063690 893211921 337010734 599492865 250267067 708845119 768807686 700807143 901786907 639045339 667990826 36481838 224174784 481868645 108024872 917496356 84760315 909737838 531989517 282339538 758232236 312762474 929619871 972182521 88605077 660606779 399787722 423997658 909414592 241922458 868008279 610824167 837484465 5959533 235611073 268060292 623103582 829077779 984138369 908889827 559304304 817180253 656515766 631213874 795753185 228453495 288344406 821318478 807451283 912372943 735582424 974667748 557031078 310788211 746574876 568773683 355023811 976737908 656007412 828281820 275121505 257708763 522500592 886250334 15947769 187193077 568778872 375020298 557850391 960157829 979855727 322781779 403617239 204511128 142443435 511435506 809344950 339557370 412236757 887348232 641201999 100722987 486199044 850180605 771245877 599951704 169276591 741817260 310894667 342178859 575391456 227508176 263939797 940690984 14793904 92533977 357782302 733112148 886130737 910352450 466155216 69715420 383211901 516138454 616413272 15162184 880043210 604693636 870539288 191304480 738203199 771160178 544592791 46787097 807999729 895980950 578766063 631391880 664669061 19671216 855010964 203666412 416577894 877671403 629729310 999320148 578004687 420304281 971686831 365447184 329809804 570818439 778896470 63551058 780790146 834409542 86049402 461963523 948154290 674055962 496588895 20040670 97323625 839072807 1304631 171130580 244605839 482885208 490939991 529817041 315703531 94306416 313238375 473527937 14300297 726271502 125320307 542772951 168965175 4966530 826425273 53444593 863314774 32096454 697295115 883427348 404337340 616572156 693098914 64661555 215976177 359026720 942273877 943552979 443653928 382114954 942875363 218549811 699802760 457422669 855727208 278522339 849479233 177143487 841096585 289008942 669388920 878095142 557673542 641837782 632477590 793247029 913371399 188135285 986887431 971705752 809305736 519404982 102399568 817642475 642124565 335493099 399133109 158033371 97200697 339220879 177024675 498032895 958209646 704099042 450502939 884759885 538265163 459736260 344398954 121312924 141869949 464095955 662723497 822745079 230706601 432313019 873562081 460712334 438149808 595630407 104714027 988548467 277520823 254411687 396120081 460553295 221583598 603485365 641235519 291744358 207806530 678269456 847238456 353687855 986689396 983044323 182144701 316369728 565184216 967981735 993664237 242782792 335990533 99637700 304229619 245452238 275735541 655576680 716133242 831137237 616230705 86903222 342438278 433254587 877858074 597638067 107222663 307167014 405361466 463631551 835302902 675434375 571860114 743868929 197725123 156788526 879067764 930954353 423464578 370321293 718211880 933288776 866822193 854264443 330227598 988145449 943101792 144700669 333856158 754242867 32497790 590044589 859701948 425446310 481811287 710851048 633490090 141198732 89893410 277293817 890746389 611462889 690267799 424960499 134629768 871108806 897046239 285236522 203507749 177744068 687081572 466046010 357022210 236038934 670258861 288445541 768949130 572137029 734107118 172861270 755523203 385890594 615492104 744137200 435366002 887202963 299283181 288073056 979046741 136676357 918192083 324426119 262408329 905827572 16864089 707234388 504454147 822411333 687227954 602907473 892351051 349010827 707318981 931099395 754801228 87025004 667019216 377809267 997754701 29760960 425047567 484525936 851521548 342494607 798130590 532435786 108609614 662551086 862233052 920249072 912858940 625991229 210398522 485079632 999388929 893218015 850943303 476424514 890146740 919598470 258007919 141684883 362567084 480362240 706497059 567990340 340432128 757301994 204733336 687795386 17998041 281066445 590218954 338042338 161911282 211851066 388040829 857184072 11080355 955043200 632793398 804060965 387888093 604608130 236851855 679789639 68460637 173770320 633127898 303415045 426361657 674669839 40801859 227448148 337612081 814997233 562351432 478961898 854661365 426870187 575535078 794388719 121533957 251125703 226100295 544392923 486607954 170535277 742352905 314800973 246503017 524433311 153886204 244556041 612970853 635776863 897942352 936841791 68596076 566498638 15619349 604212817 341191782 83319958 746562429 944739764 635917478 854250884 45645940 6373153 901747250 516984814 166480731 20773376 60809720 804277062 550461600 563523112 955435445 737381295 321181231 186599264 23288601 642758148 796954723 71291996 754443243 742870668 703391280 602792688 492941166 881685757 754572270 331210375 287659953 744208277 430667572 330616138 537020063 687640867 74561589 78277567 632543820 129524999 832648837 488221510 61411443 50407840 305506358 611028960 870199522 980093446 588352067 734745470 672883463 792712389 534716506 873534438 834014893 771206153 460839325 161537874 644630256 520754814 500087515 142029486 155054546 912149930 278951282 177117596 118981906 710721892 485559431 153225004 575335494 311899466 900430801 191045312 817844209 279436680 297714620 137702456 443331927 491549107 347553802 414059056 516597933 843585704 848749595 868949799 612753281 136954500 555640954 250029271 171381376 327971304 558329137 466049388 914841034 756169076 80718029 740627577 842418039 54723233 832828256 710873898 475289587 385838901 186406247 336685549 26637757 611837811 730881673 140160363 770330466 893739238 724053003 586080265 155578987 210260624 502445825 317282780 192121915 711006681 833342199 678537334 888289545 48818606 349693205 112761495 598552706 10727461 98295416 870234034 884426845 195534417 832365852 897836573 382108496 701895521 945236099 443235511 529220557 565065503 435577515 494797839 333657142 309602018 813779482 938253674 177496157 100641361 673894010 576642843 534849717 756183150 787948729 264989965 692914578 244626546 369308742 367478046 309016959 229428830 612523894 128559837 116118481 522328742 969077103 157806438 861196002 622930203 178064716 620034457 850541381 531511049 561706137 462418286 109775784 619574729 937071887 527734230 394686793 39364611 977849953 367306621 78313228 618139646 809394053 245618164 488101680 951998428 20780914 873923335 369849613 594298467 270231492 166502838 378908829 341126364 388161775 847330598 616546585 259861643 281066578 458097470 230907763 777127768 542707073 521045595 288982392 474952242 375760743 788763589 985330895 286171009 659038906 505684671 579659518 448076932 753363020 394603107 387124488 713681363 687882503 16455017 70715924 804292046 433986378 791642465 914031704 826596146 610086026 270591292 127389590 425184183 843975145 282417053 90195319 468366435 588812242 474281819 246913498 149024241 886143555 809666914 846316731 612614858 313194812 336185671 282099212 905185654 468419840 376249828 605430141 257158989 185167546 447526753 854312650 135287853 406616793 731937768 48933188 532660 622299338 475326361 191872569 69011942 202692854 926180176 551531730 58599237 73501176 795362021 95550161 7534289 460919317 471630677 617985593 674307929 270253202 478581056 713552726 900141147 959248856 280855974 724454007 772982530 5678797 244007443 881075573 625985705 433619585 783408977 811886901 238708276 991341217 984908792 883845507 794994126 440593191 325334648 668611060 646617555 553216750 70605471 200338641 118450908 490058518 961261287 886958457 662198309 824073369 993655570 121795558 707405426 495631974 822614202 820329266 183389293 824806816 784191125 585946030 330905355 86932265 657736391 182254446 647634133 606225203 289459932 715461443 888617552 716307265 731782259 206986636 430863922 991380424 981972426 472789215 514624356 542297446 683112064 856177147 330228715 786959494 58664436 96739926 313083767 126938932 264730471 25483599 905197220 766640471 428558834 179208768 552770947 536275908 54410929 477928376 564110410 653677161 130142528 607974348 52473334 322527315 782293309 660133447 814905375 276374377 139948113 398749035 285951539 348842514 126556935 705744451 35826244 556293146 550494493 61611787 599821761 739336320 595323515 207024030 678535110 491816838 472077550 656989369 521204090 216021189 28697608 397890580 444382144 882551454 148384763 758049152 756552122 641073376 805524156 68061262 650699026 451305255 64860069 194118046 404872227 463660411 623605675 301843116 188364857 715298770 347274835 403930081 605693018 882400604 668623064 595970073 508420378 584531174 540559032 671803100 21423307 377293772 109930011 5675603 693859461 832599137 605350849 507733872 371737169 696006388 555063977 54771226 344168440 684719513 261632905 327061675 90108374 120679843 45331988 152174088 640194562 869964031 156934920 711011091 145361510 756228395 363980080 278606291 758114641 619911368 844366888 401338674 207988900 563213258 692414204 365677484 611634825 39613855 587285470 694294169 760565068 135550144 945389336 809296350 469586783 753422672 631797546 256166687 977893444 377169804 988886024 556265350 971973273 62586166 416771698 587092209 840215053 509485788 105385639 586816344 588102184 686872648 565505755 42118728 396223670 787268717 933542919 449878852 25388223 715429314 403978935 476483255 632587611 778567258 605786489 12513744 18897201 594536994 300106010 373769332 991321247 108973370 293569417 903241406 973246686 932433596 771413487 256662746 715667946 647885055 288340265 452644132 776262514 309736242 673833755 747946562 299459346 962664729 897839173 231966203 843029192 185446259 161126218 236089314 307567640 837639882 959846152 928272053 511511408 505114303 56993082 22375269 454948414 233962162 438119298 758137854 256957872 95158590 935403928 514842897 447356602 484822632 907474089 412872969 496326277 847417346 367574543 451607279 793309225 846975132 119360326 717737658 768048834 748240274 315843469 43394896 625627110 894121757 294763935 64280259 366360675 894416952 717219822 560369918 41540887 232270793 887641799 608973352 716563164 558919442 858977384 259793510 186817704 471455313 628568840 459030665 477797505 912363166 652806853 753724164 573245429 836746811 166184275 764937821 457571587 296505817 473543869 55828251 149047701 536677540 308202008 869452630 733749450 463943577 989356765 178297379 427899200 263751996 489470262 948163242 749349972 640701091 614105792 767695293 404813883 463595435 262720002 974673593 119484986 23468665 673231169 286532388 669584138 730747049 170862835 349848739 192794802 822587943 662116856 699077008 498481043 270001918 619856976 951106668 751813862 305804193 526171491 409632020 217068960 273021850 664306663 674497982 697178273 629610892 995656233 450977239 203819050 835994514 924642658 794201347 496577514 627570055 717292212 532399961 63892678 824401684 852061974 347789218 407714900 264447136 52355435 51181823 678349246 491613432 395733834 842772748 616973914 641207689 224011887 229105535 910899632 336909128 221667856 607778499 329853593 306947984 205532970 904214643 376523440 416839727 367377362 702952357 125340915 926554712 561995161 29648148 929279476 437221388 843184374 310812770 52978675 793715906 77459052 610406568 814919864 137227908 741798076 971581516 320503075 477449146 903535770 189704434 853593224 696260018 216522813 327737544 264049767 851015213 193505113 934678260 76637280 749231574 764850900 531388482 692329883 875027486 174974215 935957248 639542542 324444291 937216920 184823224 318694807 732410609 343895684 966295899 347091958 476771819 871487490 953566435 201295534 918340263 891374818 793931803 325751136 988526103 153229203 157564509 577198782 330125297 327507340 438740290 839447833 617348455 779698281 77964044 640944705 758140534 275527546 953272536 707920981 932172635 712704679 349709086 65138574 319198524 434362816 902142765 186048144 456250975 887639974 842923614 848296324 90016556 202261539 551633764 559149222 198996818 936760664 899271266 111025580 202967412 152246827 49808883 819576725 906541019 695498981 736135917 950790416 98466059 26371997 968594004 223367048 896041788 172831250 410869772 902735129 382499625 916837752 833993291 630262269 862142610 387313452 907001796 73839206 719368021 947842611 383994930 546605417 636264194 924648839 17203358 930753574 205646918 441865396 346068988 732924847 819306736 846993760 826790019 881036132 322760424 551122143 538589753 188301504 713174746 613415929 767316908 310049997 715509881 974155285 426985704 882560023 551638359 399077643 585363751 88062659 113933379 725005353 671330844 116703090 640084511 450754826 502629741 996148259 216252649 788647978 1424154 369332677 223151341 259971016 467869060 425443865 292796121 180109111 745125257 255534297 635568064 766502706 968129566 964591277 640836200 455574240 988845691 290005588 189800839 229029213 721820721 502120494 810207399 737358497 514938399 82122900 70807403 984528079 145826643 724708043 749098136 820850641 222999475 241457043 586758952 294186729 911121496 772982418 358721890 502168347 258854300 38268268 452194942 200111323 963311108 878428141 855260877 383633532 990719241 100823462 116288071 329574178 359059975 951886818 428920002 589654850 395056679 156422872 197753225 830042019 867860515 950873986 189713673 236578422 552186380 185813936 455790805 68791135 552744988 103701130 440569799 256105425 878000372 376001246 164460704 599718556 796129886 240956081 354700272 808311068 421546523 655249417 512872548 329191408 910326716 479939573 615373797 614214046 437871051 815014396 120607376 648811170 529286300 965051119 699718440 279963920 247202615 886120366 88860880 657013142 146278625 977889649 707665390 172811891 230597364 795330385 363818781 451712670 97153842 806230938 709810325 810733752 143760575 742965185 262804609 315949501 312842605 724824445 64451973 130045568 125827928 600801151 528045584 349633336 828640259 18580837 183311075 513516023 906958103 735504367 312808556 962493344 136483303 498016804 422815458 291715923 935597682 640655671 282993816 294273390 366562958 471049947 519873624 52417975 928777190 423555426 319305223 664868418 513767675 288653183 228076726 296325722 825634898 792098803 846211276 504780967 610225296 767786092 467523330 318091427 800734929 553177515 713530054 422246873 911783439 646125597 409187242 308164269 796054214 381740587 855010480 814620258 760553282 699215345 17882573 870396111 908062101 898602221 356629884 388628340 283562776 527883452 570350302 747228508 617324030 243129484 815986228 356291737 195363221 316138201 105414433 535818788 380030509 100304872 860167253 855969108 630285687 552231105 466470290 245584007 485871186 402234953 81452441 961897169 863795635 311363688 721914627 244163753 951948784 378758645 679134927 112831817 503103400 290800699 632862274 99127849 603722761 649920457 59175939 441112227 424269071 328723507 889987608 370286239 719939952 492069572 222652667 726878022 929918970 740535269 245696572 361913772 982200105 561415593 768082105 122102950 717112297 348585633 831106246 414803741 986836150 90292989 839292269 487876139 760657701 631364572 460449107 490353236 559037919 310555534 877437423 978578158 5786351 809910109 414218479 287311363 342368571 375555684 574425383 110646485 706171680 851502924 233904326 963273098 960360659 808723117 369728717 697220862 329575168 772532716 190618107 232907795 986745845 225690617 355145277 108158171 576407556 167238938 877095048 80512776 356430856 999465591 150663292 778286982 574498048 484883122 477923451 383567607 245727412 355942879 430328960 833428973 702882676 738173118 374410754 407527008 437945425 750329675 153535597 31576257 915246865 978195351 283401148 873879196 640293143 120811397 903368682 33133997 300518219 616501401 962183354 421319885 832172691 235782230 501458795 51788883 71989710 754144167 432480979 825352544 400140690 85196261 517149954 287896498 860652647 464833153 979610359 773740374 326192277 707631362 671277245 512129951 373692008 820390395 112094876 402308880 288684519 241024428 456438392 773319898 313785809 613744249 158776034 178652408 137556485 378498319 517064301 947731441 126638415 209103068 623548145 350716861 270927567 566145363 136078009 13097647 254949542 312594510 676117016 489846722 499206645 920838856 45917446 476516752 199294718 178216063 637341790 493718220 62490862 872001738 481048329 571036029 33901729 322018714 565079185 884320475 211776457 178366631 100497640 43852264 674855903 392648279 244198989 279197104 817432632 189052788 956426395 339412646 40498072 862327300 247041154 766557368 494428416 250851254 127558271 806582109 448957267 326065994 295455257 458730223 138913082 678045261 189233905 56296099 301869300 781566153 233610759 472933953 694211059 199799469 825003633 294333883 728012647 70200931 639734442 664392344 781463689 442666504 317972133 670633119 27353309 718074981 754407606 86769936 621924746 62780433 488001530 664403423 169920021 960516151 485710147 799970652 928563761 966626329 61478233 787843599 574832149 655562722 603914235 93616559 181902316 865329271 844901501 180739139 889432618 299172970 307013370 153479529 964856631 91043315 502228949 937535199 335832838 292147656 911809997 300111312 227992748 714414547 851478246 183097560 367098573 449715172 437410482 564306578 716682548 211478531 748130127 905891723 94586192 600860390 521750966 68814092 223644285 913494825 853381353 681110173 542587620 838218338 448542694 408579023 259213330 709712577 425085271 983028389 164203510 835903420 409909016 258197859 334823299 431444474 721666817 352569038 634639366 580360112 492466590 641047745 921937550 529407978 378901532 120522831 630877882 172326544 993173080 85454720 248749079 233266550 713841714 224101089 962180258 452109623 91872497 887831638 585767742 624684897 926230556 40514797 453582222 7616909 752743810 420316409 616996059 247015817 315359370 530659624 190032157 753047204 480043758 498104448 715285416 196590991 77604583 206410642 776917728 85574739 375796760 466904363 64728247 363052181 238278439 831341973 909286449 327332709 983880889 849653397 247577013 418756689 87907477 454599541 454262695 741542587 209431040 306731502 957341033 78792882 826214838 621099205 495373420 707935191 501101506 285184936 455754168 422432582 487116991 344750392 761451456 276372134 602048921 481796897 673804042 650844261 958240548 171574903 185545210 92835980 108068747 869721565 399575314 862476082 238483527 305669683 360862423 639043669 556661263 571955244 387030792 238884154 852742269 599486884 74096495 495880060 909795391 14360451 792100240 801677936 351387121 876191373 475707053 556967893 274192390 305365789 319473305 819563056 87653202 235507966 227892221 985810943 632786348 175900973 116778644 822909443 866354100 803251748 854814401 226832322 255901416 154003923 850079345 324535339 607897194 168934061 377129699 334722578 988796257 857424569 959928437 17423907 867163004 62932384 519449324 884347301 542780076 171491771 747326200 348258843 853193131 878146719 233946346 840129570 3737397 700554020 21035640 897833195 977193255 8661173 104548590 335923370 579225240 340592666 139617069 649773765 482318265 966460970 497531589 992523107 997880120 835542159 972316959 815363864 976214018 292663092 533713806 958046929 889873554 949434541 250761082 413247719 434396422 482248462 75768705 579552357 544664432 5716292 752446190 3880903 734814076 635323697 506396041 807559771 216217750 945147229 470876168 685694019 69758288 995031197 337844697 337621387 389974892 584084296 207486236 374770603 944811781 361719767 97011091 283522947 490956706 251262800 274533996 345174280 155198364 310668555 191894318 635855388 328456149 303580798 555938702 252337821 227013130 984143552 632251955 177061840 835370940 873256568 294605331 471997603 574895270 209259295 523132239 578829035 180010428 437116960 367507497 992219351 157685225 508164661 571492250 767588223 487537558 28769421 280995606 734427549 937826144 522314336 917427321 622949393 439033079 202048106 626572955 985031123 745812781 651447807 696818682 20420313 845252548 754001545 688445916 954274599 792411863 646258505 90909804 338454077 291857020 156565093 186697441 703595683 405432697 381960208 210086376 18452491 765963153 596906025 719228979 458266890 877856011 23488143 772224041 265284702 446374062 805967165 499490753 909205321 860794765 901619929 273044275 809716000 688787125 171687133 401399220 579289992 550030246 816762629 210953304 167803620 874294123 132442856 772579508 20428186 416845447 917289597 482409001 184513202 511399049 992994456 125954574 209498362 29838367 473134633 257196149 298225127 44087038 908025374 974370652 657339032 631167884 490417663 179149880 468312369 879092990 124384925 21077140 724224346 577060554 381269569 974188038 622976047 288191568 944481313 958161398 51555594 246389696 940314142 680194664 74046413 351571105 531477596 875238317 133953074 760198187 564728283 207902689 754445850 916476037 754188346 392775 250814204 833973510 82117251 927823048 351095444 64810788 920220078 557537647 484714098 649091159 170390353 971133411 427813758 635307379 741400598 580467716 882911783 647204768 135216612 295205650 690505337 283104373 40838401 876410920 170578115 55911809 632606579 321668260 296883329 763427508 351170505 618265809 654040663 310410717 539572462 951877917 375594719 777421248 675077415 619897673 11455320 174097138 332987030 430618022 703918151 953532633 642552235 790830508 43002232 9379496 689828534 632913919 540022140 673688007 950207389 286652063 157956388 970499051 869135434 54188033 682984364 402989361 615898050 259260622 672042639 126896185 726868414 617384551 203309203 93473821 616253705 717236312 908835324 661415853 306702280 778010794 762495272 566267986 784883151 707671201 877191578 940999010 845140903 133961129 338320821 146475570 51435624 743706242 728779747 164552796 703857622 509399886 576636584 934707746 780746982 541603597 772214878 737762772 166238237 149175172 135020216 65019386 648982434 96286012 872955566 954792050 745794421 179066141 953663329 960453355 191140188 973980985 767769069 60510555 71560449 309845374 985506522 135222500 13598040 678046395 86798536 324830194 464514675 821652049 330027265 743836952 810669199 880417244 117354361 412094564 251101533 224028722 407177575 166333570 14057053 37369772 403497823 243542061 336189292 503440318 144257649 760884678 773868826 990231159 890472059 199441595 810819179 95555344 308848928 413192818 175458289 569359615 112083727 795741774 35809609 346418721 564691166 915195712 848820528 590129386 767286552 887721307 724721548 879198743 88471746 768880444 648187274 755862743 423544521 553964051 232095229 93802449 567565955 726767907 103731978 351510043 442172239 539324083 364209444 624124800 935376772 198101040 71975438 317049953 293715371 50452406 167076197 129249025 712924205 581714746 272971200 906930231 444648112 315798037 256079184 190198902 922834542 95055348 250182451 660116318 513376227 952586909 480464854 613789930 563476438 664972880 218491379 217202466 361617165 595537556 199230265 221842534 393270613 800230897 299527668 384818438 742284509 885904522 993261354 837037900 52015354 905715784 76623498 615774419 612571570 344033028 35752552 257983630 964480700 278795552 37873614 130782442 630169158 809908389 627892862 715844309 139390061 409586526 875001101 599238837 621152782 559392558 206034737 239691384 196510064 242093096 82195379 535031491 361699105 715579781 507337277 871435397 382043585 732515502 822321084 118555747 897127952 161378263 124447948 43306015 135098710 507349078 923662904 326234348 743362965 418104653 153598822 711146337 330472487 978057733 861438526 370360093 724158797 307710544 785003486 519006472 940190268 28850294 148782422 448810914 693868479 601762604 325917589 457129290 420043642 393756253 273859686 300925009 422248185 995009633 838873483 922226658 599032094 842566919 650988468 698747950 189403521 611565729 253996351 285977975 906788195 9339222 419068350 667887904 107284747 823793775 684165712 353026395 845933206 734504447 249899492 606783850 626771553 380839272 181449628 485883195 649662459 390076574 953287642 339190935 435668580 978580994 918183967 751721005 667471777 734981595 164412924 271307891 61742314 108456818 941024476 796088834 535625176 123965828 549058118 234890012 619975357 360769840 875188584 366545511 164549807 448937788 685562578 606996959 565134470 645492273 749456687 321424574 499310357 172283217 904713930 340555814 467323820 308223564 594795531 79768958 749034945 154091955 218016203 847998343 351743501 68781948 179531069 832160571 383086681 906448470 485582173 717320114 314177353 621126211 851483377 471409049 345357515 316439973 700512385 655128504 470853698 213000335 389826543 756488552 962570973 407648853 176152595 475751128 313028417 56719875 67276114 58361685 57032771 465938504 280452545 236897519 594419966 868482858 783250765 787467915 495726237 20448953 809727360 269369356 779310916 488255600 235773964 419432647 595413545 914266475 474789163 999662808 213640593 910463144 317660330 466116586 43303092 2747003 728850605 961720029 548334549 847571587 913283913 720723877 509048382 299424175 242241354 318571614 256755313 3807125 166146628 265521808 887137591 400749154 40543631 128020992 812686104 315019265 276010220 93155168 208912538 44371012 372852124 775051273 271194534 236796957 348632051 46663462 438771286 797368080 183173033 80540323 92694912 89921874 193538507 599951674 365250444 637071104 849609901 116050703 869767636 884450950 873984138 941757590 898246531 434255083 751123898 535152777 727376959 696921024 818416447 348793820 737465854 300226313 468059420 958847547 137966074 564090550 964151404 906249161 538216425 639051812 410957110 79908312 956921683 7280851 463174313 563292625 743680975 54099976 347330435 140549426 356514572 499010846 84762128 125138901 79150521 374639677 965139265 733787330 739978743 910221447 228898937 359539725 93508501 868778578 656290643 777444114 950414640 389802601 42158879 589304871 689642411 396044904 376685553 863147877 278234425 831909478 730165829 744717225 519285423 469630253 36769081 31197025 295069726 434136110 772666884 288683478 451563835 464885445 278059430 641141616 466087729 825849914 508509733 649221370 315930640 632120825 907537535 914881274 33641697 5611407 724200379 516194220 665098893 279311542 692159540 164255584 359193693 811549982 457645695 782710210 836250244 530456869 194765700 359155985 194614064 974828890 336067420 776557895 897189044 297320027 685159283 330270706 248926544 646223392 537876131 132322885 221657653 308475518 380017698 403058516 632665870 462920657 659215325 503916516 446578474 659446894 731659705 496676024 410785029 800619667 823788697 295737500 963789786 547127869 618643582 931397257 64030926 436280603 943727099 494109219 62112930 429442311 940756741 618556684 562446057 304110017 556510132 69544000 513425594 144184390 625591904 456723601 449299407 85281758 558060469 794443156 843069249 412773582 379419821 775551790 454836287 164431322 727017265 576532 9026590 50130572 776623651 152489641 264222272 439916810 987157663 45221543 468564350 174333636 716809697 951137485 527318430 232618388 453712750 180562081 231597354 973924564 191051194 87490329 280249507 46676406 370513707 901403372 981892859 653746052 186252318 80701733 491178700 301100216 681805331 796103167 61506514 372989448 881717251 692857217 583657519 356836049 672181372 445020415 9209359 344392089 805120307 302736953 154146646 503800350 560538856 52783590 720887871 303852714 485780146 532361459 871585810 731588102 76255285 552482241 222724925 819912843 310885935 925198031 749685531 43210198 130468391 175632886 712077588 943545534 172253392 520535060 957194395 43360698 979790494 155814209 786854773 758931050 599486046 840551117 681385612 693974212 886984867 310076384 985597450 454987157 302541079 308320162 350262108 564148694 294479182 461738993 65342888 544596597 336628435 176166795 155503963 229623421 787343730 941835559 233138127 72733871 159522735 197689291 491608030 731968536 681102129 801187359 101939314 454433705 932271310 978024496 181679168 341445419 450131818 151075569 588044811 836404219 971019598 388605870 761804921 720828526 90790291 506787768 921569222 512184259 514856211 553744909 609170854 864715462 191480839 718528485 825063773 376894641 305796884 133777316 18579997 670800099 464581297 439367080 227137409 316956798 855825616 746518472 657628507 408062939 500743950 313413810 263420682 565904516 754168468 25562299 716947474 18061707 692934278 101695487 72354580 247412927 639530119 482421069 92448488 508548177 706459406 830576182 719414476 939544876 55953201 623200044 940053307 866594826 405111439 266717497 67709653 588833757 460440023 357284042 810305192 393045498 203226471 962517801 241662917 169302045 352139180 646054854 584024685 440874941 792132663 169561578 163763397 251434548 189445369 661509496 421267996 769757650 560366395 829496507 299952817 425031296 156584974 63073618 725720579 387691973 942765503 319739713 799351383 919140044 306100813 845152313 95526069 771070807 99300625 28339395 415468187 429764612 223326958 505816884 110811433 22035052 298450238 830458887 129402302 641972503 969231625 69912781 800887346 839395214 277707477 779955539 17111946 100319218 505012726 472950002 47338174 483572862 929280374 973833854 925780957 196403841 810005613 318047136 964181330 809901634 932089715 734089966 148692429 494402974 432442646 929987202 789691079 409383055 979102206 83335092 563597418 66546589 862380284 863751014 754945248 549995482 88034213 974860775 486683910 162393430 631794525 320001191 64018423 271289185 460005765 310990459 232533939 902804162 774502120 954219663 91426237 252793826 653240959 966733478 22314304 964210382 15532753 432000655 18901884 240867981 916716999 801874402 68833607 355858150 713250408 14028902 429356803 942814371 632584450 500639104 647754778 858524464 290363459 919076929 978442526 855175056 837884924 365118624 553038411 990333598 808606347 98834010 661973611 446486934 205107653 395164298 572287699 993732535 272217122 758701309 629246662 211641187 549271382 615115183 166990064 282883893 168478820 259617584 616813645 566037586 879643447 748204505 71218264 639422091 221599179 234900806 648328839 453734676 500253404 249088147 596075866 848012822 30012260 692968794 79160922 153039841 874864448 68465868 924626530 58408654 475756528 686819864 926606400 127626979 934285380 851554529 907716310 71749009 363472880 99576320 947344214 658035908 629194254 787273734 634279570 763635203 821076602 243169006 649832860 998976559 10097756 443495553 147282628 768576546 112251342 934028757 797348759 933797835 432620606 140214872 178942493 950108225 802605582 729636882 575567998 935306053 146062329 282724332 268238829 655194867 819015909 611394779 397777565 399638528 5558407 200922198 71674498 448431382 498546333 341283251 494463355 761258557 701753610 726135956 157928445 306552834 136144083 866719723 630685984 48502938 231411102 186495848 864361232 85003470 736765222 880423042 395881635 350557657 299405603 837710111 613514629 477318880 901201500 566438354 832411819 760909654 194009372 537414366 739997079 615405778 695688846 901969360 740937115 822516253 285297813 423866449 751673027 589206533 162543251 345466623 948510125 362588560 642787269 606981734 244047562 280642981 397530516 145219073 124619823 16872897 202310329 746528825 3362513 576677245 445119711 778055726 790374167 952546058 273296687 648913322 25564685 363953918 550638207 540100575 594314328 607104043 642383951 372178108 805370759 951466160 964943685 899522529 410470427 997011104 655277730 27879382 219915659 113821105 307953910 640241959 205940007 764260144 244824016 929170060 874008000 532488823 666562076 524345275 963843931 311026360 808972919 370076474 112299542 689715461 28202398 768682594 78284442 695790942 886281274 613820200 816350875 316617467 493644949 426434637 983257044 98105843 166616461 703310685 768298363 404781685 335704685 115087674 328162062 825884998 308990065 609913007 746352305 954875719 346299413 185537220 764617499 863722052 415286619 47624004 627557803 556473896 338889560 279232354 582511943 280323000 645111063 524710407 503815576 790839461 656438867 122591717 703618173 434397128 863813913 474623637 513339319 3538772 837048915 54373307 382741663 92946278 579329170 802509113 286350287 158665342 105926364 941855379 807945599 302169389 637957757 386078469 420270086 57861089 716726674 344943636 450308842 476794891 26809740 132608418 690413458 33524835 126447721 21647360 763601528 320688469 534005925 491338101 332966103 932842697 706123473 121318164 947691134 323782197 193063023 7424715 615098922 707187198 295630350 54299695 472070705 804893641 30604347 355234425 291681044 506557100 678567540 12350593 661534000 202701651 297634216 804728349 421372280 243774583 848104541 458918227 364839095 196904055 285410865 249317738 43462949 707285831 605631317 797346443 227411890 146439745 392125023 205053816 465371039 496132164 224742524 361632616 870177858 295334910 91714851 460818005 744180043 17611226 983462821 992683093 52712950 531858978 705963847 44906690 787695117 552105479 121388263 27180772 969700972 742892772 875784654 718902403 13031670 534670141 938901683 898343415 639836454 71588743 269771766 944218135 753749819 82558567 973043488 525777300 23730112 363201306 763511823 730619575 789439822 72810154 548500348 927431145 50360967 319957932 960595897 486762011 424072080 976524960 869959955 670172760 72976521 231460793 258054000 593196408 759322916 504664728 550004422 809339924 293925927 846021609 852871174 811695879 114488977 426276701 165060482 275944390 893841377 372925235 63739080 93710389 184658820 473089370 698559559 496709527 106662425 414129266 98717563 795250968 186568387 509899748 370454516 176422349 150964082 85471432 954110472 8623896 417545809 284061728 497910787 455962262 32640834 422117275 830094387 100813417 249954228 888795210 577179387 258793550 102899097 222343895 788707438 378990910 522851295 615778844 153602359 558025212 820981135 164828834 318976988 975479654 179689638 168566203 748544246 382998836 473906893 939429775 687807689 959212463 217473283 617371382 911687789 518576993 320331089 569240905 538250069 7332776 509667872 445913406 777730877 949893093 896072870 729827191 15150175 330754182 800170542 625412185 327928434 830320327 319529309 671450545 417861520 729795329 167545101 396219979 726068303 423440700 807262504 704766149 716268973 958048910 886495471 114623719 169425622 834202381 258716117 496522774 977818081 692918661 895270753 660017372 504377981 755721163 98116089 574127331 905164308 341998264 81824291 851626816 521222428 229089356 745712012 544091051 834060582 937830465 425058739 74356958 976953295 54425078 302750301 503262611 292888472 684713170 283413316 907981930 798182425 637424815 819456731 608394455 813685559 186124685 578056949 118899490 545786974 51328352 38870762 215185039 776695340 490875109 666913168 957136887 676997486 654459507 363598477 657238975 135346255 480849610 938279211 853223109 282108434 881988458 376390626 456056136 720628186 896282526 399550687 719987310 771681966 215177764 954593488 233964132 101518954 240324914 388735513 959011195 243534793 109632332 612686061 471931302 388033274 891592332 494470346 213480669 447527201 134591194 689273952 373812868 133139411 390962069 634949934 698320243 804937959 920654686 426011055 646517769 41788537 705634620 642988088 509999574 567603915 662895082 667690048 672143368 360998139 67683582 748397926 349538252 417585752 346948185 707823579 124699763 62354776 200760013 293007872 302736191 475867602 519736830 130701541 88255033 363019408 296191608 313130721 451761348 461849366 211861646 652546434 846117812 41607289 26945866 583148127 635926139 738446730 485486592 234820196 569675420 573534757 650631077 117121461 935409831 172188348 12767895 137729082 952675792 472994002 416898447 666292383 442917517 393433929 85690687 54608067 881901861 859134218 578149396 1206793 774718483 963126005 552825368 284669303 388182121 453230658 833753701 100274198 297030187 20760155 624332784 566983720 763160062 469155900 933862285 107790365 724067579 187715660 386838 452576412 903260181 646155597 405971797 330799053 681605184 404539534 634932995 32067954 143271796 961850045 58228604 96002281 57349785 734311577 303870096 451506690 636481035 531346130 552272445 670653760 292481790 625808449 678919029 811958561 952400782 205955701 269188626 871943919 325349995 55816700 149833948 820263829 307175642 238957224 298648807 859730382 186772300 107983558 421798450 159341147 204750458 771126098 320349278 970017104 948415257 427957080 410941897 492677581 480612402 554083735 948037670 996958169 51802534 746004412 289727205 472420886 906260348 573559076 121606063 669048742 291547420 283171937 377452688 17172947 207259097 492082620 615326743 695163306 665771056 587497063 591010751 540844778 858641902 583821088 800167416 775099684 99482101 805021507 803944543 547097642 892677885 698660204 18213164 638868413 534381037 387438751 108828034 810789990 996322372 593402335 972419448 804310513 973532083 155208157 19575322 671771223 651040606 690508001 378680948 862837562 314954316 456756876 199097376 819188199 295729180 976995281 286458367 515145608 632015604 637312511 745821498 880813763 764687506 634920198 534568217 655251738 38948824 233749933 150762179 305164067 154766392 975630319 177736134 3646416 985099478 775538886 944163703 219299171 817516471 908143828 825647365 509299577 17660003 905697353 908981483 408003145 606988640 148023733 490827568 822093556 399560946 601455523 427384378 577883483 466401151 678531511 26928265 31632857 22437622 504509989 17683798 694297936 353124206 511771543 984942380 11455258 490412705 444031464 366851528 720273151 51448008 580043515 295472546 946932776 373651918 785645376 912786682 803239349 174134493 859561284 476634080 8221575 739491302 841011511 793529142 512782470 613245365 347619028 451317526 663219865 659807523 498625675 517435428 842106215 144647893 11797464 975079353 317470254 557083896 830066669 514778232 428719846 241836794 320370155 93516782 171898494 113506718 619868369 774173109 805269684 484148100 365917872 490515265 88923641 439019867 738575750 37050552 766149778 118618388 71775644 24917138 406172021 532445596 739870341 599301274 753592943 895823876 567992417 892397288 484577183 338751506 712577859 990452078 713200304 553083639 502445889 82806974 982864172 768578563 92456592 870098166 895831673 603332422 934955283 558537880 708472591 823033575 203004548 313714880 167847875 255633648 751712570 559436452 626549232 430794324 529921745 830433252 199746131 405285033 316652546 215204216 862721936 489348214 925164696 598730782 86580598 837010212 108118951 988170899 679966128 882546684 75124857 28234211 153817143 115182305 690257735 501798564 218341635 97157276 117691155 352935402 643688659 980582914 360199779 690591123 795912265 270166689 641190053 196189972 901546225 859174096 539950402 293099474 718629378 482558551 86611903 788900878 975931569 641313188 212954890 570370893 856101577 981384087 101481319 753572201 595055902 22923658 401216039 509426728 573620274 440267716 546988318 640472956 424691942 417197350 649085977 767851149 637095492 253973946 965427240 207933983 748521043 86315241 968183793 430759789 250974770 339105071 479718647 763986734 970365070 951992210 90180804 736245794 770710367 689683208 745560957 678546694 914876095 712390025 918998583 930742276 802628561 30073939 439987700 363633649 197081915 870743400 137233793 150966389 866940123 16146544 927975302 70022438 275110089 177668864 302832351 124153891 948530800 151692409 179408398 250331742 103586000 340686537 608736955 138418724 258644136 56195188 308482228 572310565 626503791 913410985 399085206 392683423 664750269 3876554 678567491 806061497 234534452 492364713 4828174 859257091 291062371 246067119 33416777 587649969 722141407 836089450 642740846 322381946 71977368 598778964 756011316 253514112 225853329 887231252 351277363 627779500 883845725 892617607 609742980 127299841 233060553 163239279 833983388 277192381 72884207 792291942 847108215 244093573 985155136 284541673 499181418 838138596 582914738 780726916 378964284 941901683 753704928 280644383 642688501 26402557 158289936 118526713 173480468 614693465 304287188 191344855 672049138 610121841 587218268 259127409 947635987 845878999 801905340 567524113 66542599 489924062 764253938 237990865 327467292 571784724 687855844 684702018 143105245 526349898 924959128 954243322 236453467 118022081 191950546 456949416 398001774 430275581 649772682 285525087 861114489 101565433 693836843 512525171 319521008 98195497 513269783 689043984 280657812 476510392 993203773 166649917 338185294 214588783 296869377 256693170 738841244 375920742 68227276 274313654 130061219 707994149 845143446 999534949 957056268 627439296 212416458 238025055 389491197 696848695 870432003 227812905 803119639 557846318 275077239 380442117 102193907 64745628 383753103 669126570 576851371 867853711 315094287 379586165 492080179 624352386 308442144 820399269 96260343 179751164 423012118 272888808 127334770 950555248 466742531 317258184 811272806 902085263 615034485 283484284 940790444 43657973 101659591 474474773 432332192 24409867 759678931 6631997 579420158 440029143 283695933 52646756 431225688 292152687 559716687 338237530 704905674 46386280 533544434 36451650 836967607 46892239 328611067 260812834 722373815 903771500 634247519 822171683 121142326 298231440 761592710 974434157 231948674 955676747 812026492 42431511 374090945 212714845 159453507 802123103 651851685 669342730 98663972 969288441 47338018 924458949 256737385 483840730 951870178 545457563 443488145 791672883 520064884 797209102 434642083 309582912 788309803 1933833 382594324 168818161 988770497 153677497 569793552 232822851 386173885 948282830 545170053 778225343 900903327 309207529 854681862 399960533 842084128 157980588 35661689 736986025 408703854 670895991 661860836 960891699 665090925 139645587 111059162 49848173 194505615 934738707 943189730 514766463 591181079 380797431 250033968 912914883 605156570 783391734 54846061 615537622 892658064 468884986 162736581 595657756 976822112 91901409 840595101 570736905 11198930 727597773 357704176 591037192 350875099 703101725 970898305 402690995 293448570 386730714 738910461 478226600 908192128 649393073 830739331 103281644 143377221 617180629 919717522 783443021 15466392 695128186 84671915 207714595 87929482 175786186 878151561 172902375 519349980 255916621 616902225 413087922 628145145 187925570 423602824 368171520 912090813 589504302 457107289 618062286 270425397 712257016 901852462 409996068 108050553 499538837 331418708 935541559 522393802 913551928 118277194 690313033 430359998 553278234 535085553 206232733 112746125 148757486 358575932 809793593 912183860 823793659 781850301 470942527 868160160 903082064 569047652 55041674 588085298 940311998 208511416 855275577 915731554 937383285 801573133 687098158 147922852 102593427 745753417 778587534 271645486 48591508 374614059 677760831 377534244 57016941 896066843 584614218 610107683 273166629 805011255 425974090 316653903 901322428 834328992 629070552 325918677 705616136 712329123 448200329 311748353 554182862 286081483 913633287 251400256 460001028 731289922 747232602 224154139 451223501 857335885 816934396 24072277 384959137 91028276 303828958 393434618 650180525 21063109 611241775 804416619 27604765 922947538 896399359 779000750 424114496 950623530 777633997 39339152 894009944 749179300 865249496 952052579 222930902 421645862 790232988 479086794 589445840 440241756 302511118 697123651 3314089 658517517 389269142 678512463 853710337 14240154 8043693 50630063 253789010 935170356 63628704 494798543 204170189 589262135 855102138 227857151 805540954 230994573 171716406 907273446 993467981 612812144 247720377 700653071 300474966 127595436 464884839 685504618 349647381 138042914 265096193 177334604 140801613 114689770 836901784 613358718 122669089 544837679 406320891 7552888 126881514 853704172 852082065 99228410 46205530 163953250 320422788 37662881 210471565 517015643 582396584 124034582 408947270 190718632 143534880 389984541 221651443 573099905 419882881 874659770 286834335 919599967 196596458 659747006 5430833 70113658 466105861 859933473 479915538 110631196 891350651 355711020 766479423 37624837 422361948 427656387 946248824 829565201 180572633 708503522 461493704 72589875 473394195 659862640 395377975 17621867 703347402 76766854 705208161 949916932 59807847 709155207 440492856 748765777 936595985 636743662 235140247 703953580 587540227 602824500 42296383 336059674 865700349 527796550 453245253 353231539 285285069 595851848 172664981 337980801 370179303 96810286 439783836 243165712 790129807 501555528 420317854 426630050 502587732 638675099 333194720 529761961 756694917 21594557 8575039 922259870 702551116 971769623 11429413 885306093 642808467 766726019 469001786 259335645 52683921 564016416 554353758 695259742 817660981 854588693 577428489 88287091 902400872 492710221 330945019 667826232 286284949 357105905 187997233 130282707 604057979 859844854 811494415 151929734 821561494 338784055 235954352 28158997 191299331 194750957 976985334 579374134 219326861 666779473 980887426 839760921 644882824 269137384 869137074 603231326 349909771 324085359 340829802 901684374 465793908 468343466 925519565 778628460 585283775 109977587 941026514 359989896 742452076 115189293 757407279 952821633 891942421 804726984 954923256 749493756 727069097 999057508 233150942 134730296 429375099 259374383 927116043 496978731 833575256 667307319 78374965 117358647 729763829 207807235 473242177 379966396 350958219 717028020 72461643 124686247 988733566 801311826 797637028 820778072 452734873 132785178 577070672 114206976 652698714 561825037 761986904 398688208 46849774 438470589 500076944 642406908 114179155 629539289 689958609 210692811 8667033 69202086 902971803 608915296 999672388 639443342 776001252 232798147 364558632 11283805 913331957 295621964 763759054 461141930 243241889 867041899 127078388 155494585 520819273 131738208 736658647 736778835 85308690 162510609 960092457 643201232 851864856 843085965 711205083 266958608 27778091 246274600 701993547 351278650 472472707 204429935 687121807 909973787 481596794 148824722 263084389 245151500 879303659 303949429 481062749 728763017 29119210 146449443 279680185 795918473 828563494 920461591 327917954 850417585 510776613 624326232 395841802 327724345 347061782 880591311 488536536 508479664 845217320 954978495 860897321 944590624 114539809 733064407 793185499 792251032 626409349 343825991 495513812 185926506 64739792 94721057 467727732 896745295 219367057 866612135 472983338 936586186 121425433 677172781 691123182 18924749 851263001 67723081 756437254 239968491 618565464 250259074 511208700 290813567 5239664 120608066 541615549 817059631 511612823 674579245 774852851 588256976 717300551 942658199 309112354 649959341 98905529 750919602 737352770 838552441 862804195 151840506 393359878 196320715 432194801 159955380 518180764 907809275 478594741 798830715 239021377 75897208 701262727 870689523 880430766 319092663 119181148 459377300 152397852 503285983 551026221 411274086 852111080 986017334 772355207 856194982 775758333 996034071 376749378 440045817 557910777 248795032 423826860 896981445 835804996 734953336 206066709 749544483 499378086 10013025 446012330 487685727 838537521 292977335 811600381 24632877 1259204 46065878 400883534 315294765 377947738 441540569 209558565 467941703 16018995 889172925 761235397 502432255 130874678 404342329 379218705 468955902 145408518 532944305 87593159 895542897 727320546 834569614 906540339 100588064 309675681 724409591 174737385 108413566 6633800 800957716 379512413 611348751 273844508 895773020 592612607 231482085 48538169 559644787 780183874 440541074 384355029 319236073 991288777 377190282 178316900 769969111 201742759 66220210 943896380 28588501 963351426 604013054 326729404 988620286 983431218 458249528 822571042 678286535 816986574 283144873 536756745 4721584 121297712 209275202 78856967 90769194 319611599 153392720 98602915 17061465 745041112 392673550 579662183 477505825 990953171 319751354 302276243 555653084 688242236 416772139 456006959 34176555 610698225 370728309 221491922 547077082 56667983 178878530 80290910 969865575 612468846 531706838 158360923 292825359 948642352 253412836 877871234 525680898 654544439 495685280 237679855 462619583 456516967 160450383 745544263 821527852 449335211 534310240 153148784 933388184 923249609 197843157 311115587 964362993 46059868 219680168 425793584 846832917 607734360 541472390 282013400 378904152 702023509 591893998 263281258 810368505 952538167 832831139 258645837 123296787 665154373 939519441 633147794 442344681 457546449 461960523 430557720 792805708 767224509 269304727 775983764 262088578 552167756 999150571 528592318 58690989 658851447 435854048 718084352 114715498 68701223 229500070 465331261 669001914 497172703 758188620 394023060 56346065 723914712 470048138 543166155 148603273 128190064 773234160 566150588 560046156 882086896 595558967 958731979 469927411 489181994 12461906 96802885 776718189 697851319 412354790 550757029 700004810 174693775 739378114 916088715 322736895 558240795 496941863 622489034 41950419 542929794 970201098 619462201 185279099 444568637 81805817 922552743 405609123 912261095 164948478 972007029 227434475 558634015 810354409 338154780 428661763 314261150 791610719 239375048 483805826 713470627 302211473 805009093 400726742 231874683 349968133 657606326 991087345 710283288 404304776 289456652 570200773 141743874 183727788 272836727 486370443 214203612 963545218 729078343 409145419 668643342 344088708 855964482 86683339 267184061 940829045 662242640 284303643 113242736 473585063 503211045 974863096 792375623 462575556 954774008 908841369 417569499 655134058 696027130 417391190 744278837 842967576 632163713 689347800 849295489 146189896 138634262 518566281 744606784 480734318 554807742 941071254 442734134 503742668 638000503 554571867 832301107 676569331 176887607 308002883 514073574 145359977 295960206 423688221 367084573 438735506 146377367 877224271 618155979 372341496 468109239 33210708 173020318 246761055 596212053 780700331 795071500 411766595 493746837 467313385 599635785 671355573 540903470 907580346 821260684 376669706 784537235 274751720 848297134 726931047 501236984 176246876 613824851 862839109 243445165 452770800 389330735 734088707 977327856 919551027 157601743 876014245 217852243 434644828 286469 21199118 315011106 654530082 811744331 38702187 633173392 520937395 274023558 898035560 331892331 253734237 797269445 476568432 961069832 360374859 537574632 802317283 499927148 935946386 851242464 139301739 136492894 568861102 721745932 577783149 988830223 772654020 862867672 213809062 381211555 757027482 545011974 19871554 460900117 455207528 93693228 770161609 887543062 800247667 146448262 280323675 625530295 339138247 182419594 337453017 567008110 49907162 489300681 433538155 773502918 325108051 511943262 337149103 83044516 465274517 754667666 945863678 174752937 753650947 705924267 489081682 881693788 977187023 519356967 119419131 692634342 735405399 836633285 699497558 295296807 123740342 211305372 789266756 402558081 142352725 344518013 4906639 167172696 931518510 347317704 805529033 765972018 818470836 696974847 870938440 180826886 667137770 264724022 577756236 77828861 992341941 862242182 540806093 913420231 534376286 615367400 751350483 921894724 915216177 976548499 563510175 391233168 119277370 811221442 873996526 316711917 449916446 958690014 240911612 596857916 45301475 358355793 465838114 182512990 331889846 712575414 294880081 450348749 938656945 269568507 70111507 282693696 408415176 857292802 638428650 911100142 974123788 505725467 512533989 281187470 880123166 99213539 600047139 953855556 530803723 678159661 750018696 607644207 794394238 634352270 993546278 855005873 759415031 176662013 248140669 111224399 313553438 917516292 912621161 809061783 204149873 73171512 275005284 903214946 31245793 562543036 561400574 687201588 723589258 933037180 857201285 538133015 193610792 263210693 345429276 560016966 53576832 952303406 42287657 583065006 789715209 405845891 642343289 593450075 464526163 167150294 997983082 696064352 239284275 912311425 695091889 373077980 562200480 112891130 731613593 360656686 851658490 269718542 342626013 60743245 278525143 828432977 911760119 479588023 159829783 341498663 871577034 17333460 180699477 627695443 700258414 433517135 444387228 811077832 207726917 357719833 305285290 967438637 740543776 518999660 298042819 762429915 512742339 261342298 91978557 445270016 12962867 244652418 64370104 574555967 306175050 919037208 142268856 312851825 756562717 301768090 263150514 681231178 429931387 53952424 261333336 280168503 985259991 147301092 695230629 32182243 296997980 224734525 132404547 341471789 941422896 580231264 991164243 414052457 88994359 932853240 879766502 457732421 196934886 108802486 344741947 747337167 335100208 497166059 216150582 710107572 310856480 8469096 581572271 911733074 402389708 805388169 265198117 695838765 624768919 126643671 438105284 680399302 207359321 414543549 704800786 8888960 205377264 113103335 450760455 272009492 596423651 47624154 592825589 928253556 790401754 739040935 810862148 540121723 955390333 469643715 421958603 772581727 481798392 207350742 255514459 650871395 698817659 473509008 57002600 674045695 344513905 528990986 463417418 298412743 957473524 432179254 935803068 771357424 706376946 875975112 223336296 24766651 318241698 906464801 825313853 547665367 264519616 654240862 614305271 485096082 848433633 786937885 547272484 236098865 638422949 976848454 448190318 600633657 651243727 577886352 147200743 480860026 977079839 962235516 811680296 370946365 350149553 238722655 836879014 409178020 452343621 380055538 57379230 915432511 607216272 239148257 200027165 15509825 881119309 227336249 157396524 730729255 294371774 235942381 88886768 466633235 442080216 335047702 294666776 183449934 69838571 183302355 972195240 536045843 160723728 478834760 252020075 10877132 571879786 118454478 88996660 503936044 185600727 557098512 222571089 592134329 317441240 121370794 549334545 444826445 285658965 525651172 759364445 429573665 66223031 972204200 492365557 582331504 860822291 213533506 869325184 921702924 54293921 357669338 51448458 996609095 892444304 715859194 216932833 126571397 258908761 100539961 141677002 888134254 403266553 410421723 452295574 96785093 125759727 816251346 105386007 699478377 977836853 194076737 94839481 531337130 747449333 619829626 634863445 795180018 222349770 91742348 748694884 772043733 982857406 174105933 874054044 576537921 881048459 645785429 151579190 770815307 780823127 651605543 140275456 686077520 217410057 871507794 830020276 751948705 357008335 47887483 425709895 425707358 917551573 370383373 14178061 446879095 772385363 102867773 392715396 971449059 163261086 955442561 34205047 932367387 131178204 385802452 497367435 266455724 590440995 755975477 379706728 443100781 690036561 205289247 757456280 317066941 718858997 557235204 807193222 19659779 395255205 910602120 315766983 370690109 647057581 213519298 25596856 253229709 821529698 905309674 283788735 93075553 748614250 152562576 124543595 881955772 754685041 258106222 994496180 464117155 387360901 305790880 434861605 648093410 889450121 768874220 622261106 169680527 528236285 578342353 344070911 747578991 462160303 272198001 555970920 576976605 900767774 664089134 419031328 438281937 492813563 131629411 20097298 798390365 790896173 472113871 999556040 11423844 263402758 392199731 871581192 237833530 463174594 180230268 226224444 609285102 974454831 475067891 408220149 579714223 584327720 452713049 987060184 817873447 150436366 953690523 40139199 788732997 422659416 322241118 24176861 687891326 379586725 613394418 468720756 713116194 166778310 798299026 630805572 896104942 548710435 658754387 107319704 589505612 586664854 309366012 406570632 2934215 311603459 810770554 393487003 231676111 757737063 691207512 210832557 19019513 602591710 540339371 838665633 461221309 210558320 151146224 848985925 846906214 322102962 3422942 322857424 698606432 881864251 896215437 378033547 330290383 465845382 763844979 55771225 175441559 793348088 35180282 340840817 57203838 685351213 240404558 499932702 948678118 516626373 300778841 666247364 865249102 937593196 896748980 42579423 790903600 433482325 245439272 800562718 590120042 299980084 930056227 757456249 28478751 761209819 984724499 45561337 307480688 183311619 929548877 717475505 769602043 124127873 199499748 61055665 573595890 57880900 784942810 297141981 933212795 148515254 778596898 491793817 486944925 555395084 158180720 106318290 725072446 3423325 132366218 405519381 719021486 726121981 594711248 650099142 332261412 451305340 220750183 106926365 540283973 666079963 144174319 241485581 873058162 563237209 415409317 960170141 134029822 802361568 891263174 758368347 322755866 264327436 496991080 430922255 175069533 694666524 537681426 353101967 138945239 630306574 277276729 929263064 291866045 274360288 632775052 994646837 674317102 403633646 491357583 285421962 74294876 146892740 111898410 847691238 882362848 579504672 529508447 919070276 759670295 605233833 895758507 302371375 964732373 609584807 254445745 919471857 824226293 492836232 68375336 420022778 121899746 110703091 209761070 245834621 793061604 14971742 347437606 912281312 935057756 385024149 52774959 908612758 94977914 163500557 962283630 74778421 723825159 439880551 98623386 749867634 917284265 898066622 365657322 779844260 701770555 827699044 207992024 632900310 117810879 725109209 988480729 457467958 177510543 613101246 310603579 497647268 558806093 962942629 28108608 97239301 701489568 440001425 368631925 626130916 935663899 938698902 750809656 209907545 226857030 706711361 725044370 268531667 58882808 298519527 234400292 320329528 869340451 555806797 656649450 353288244 877733683 573048568 891480188 571560922 555538928 411719236 506748605 317668034 841877901 722741190 172741035 422102150 231226386 417130333 766480190 268010898 63676901 601584017 569847271 66824166 897522040 660612909 821436294 494619515 679872327 799782814 327421724 162783987 749763083 98886244 830710403 433915542 697901400 441853234 435062157 545717072 182078718 964654766 839115975 824735638 116792182 618969758 967751204 459671288 574165221 409172059 745498030 207964934 689150913 948220035 32816787 573276531 474678228 379158293 648104516 211712623 613642963 40701929 957434865 108774007 275873959 842614920 653729691 803302475 931930302 980222481 689800142 295574028 56362793 226768131 917661240 291994418 533685196 70264393 60834567 523609290 992706765 58585595 253135907 601722076 129422884 291157541 594309984 994324792 723318571 554357790 785986825 183928957 892150669 787931878 547555064 816061912 425071309 682555949 565229412 211962358 443237615 766066180 70080947 790220492 42562719 315721771 71974618 456540743 920873519 947668950 968189128 705372258 574083947 354079986 468578973 263228798 244837624 310640408 897959494 786363742 236412610 881158407 776022665 142805991 898976964 595930482 657720781 458458364 295043244 303591671 630881309 60293977 431903859 920421838 514951835 353397270 819231059 991812089 195117842 720979587 80800688 295922017 222242441 535442908 425567446 935784844 230695864 779755156 405658192 949717262 350303636 793071057 748410389 598839114 587246024 935901294 379871800 775945638 216673973 101627769 411614712 307499021 235824724 140753193 856819040 204995199 191725702 261962819 592631792 675670323 599707845 719279636 876632155 38954933 412021416 341166312 555787511 190105615 578833890 878271535 292380840 274334182 712217752 852235927 728393981 593082823 925893280 30093574 811283813 844894189 20523264 437245499 800430359 750786794 657519033 691261742 457132198 675674038 567775787 94997643 333749687 206089216 830043349 145030905 464197525 429003384 872409435 877687855 494367636 755584099 772974757 3177591 186136089 503126001 140217509 32224646 383390405 175584591 436961151 106554024 129410364 174262859 285804544 374925230 863124442 677287113 429819321 198236350 649214977 391470502 364327355 424028087 566893462 933235354 789302503 97473609 206620738 846533903 125150021 946684546 526817903 164511219 375812988 188118053 243334402 227711875 78162053 69327709 575805075 310747634 110135249 921939821 825591325 595977626 828529532 383663388 517715695 214129107 944662749 888051182 699627138 852236351 288530330 930453316 183100505 396789148 161331303 498600089 499109629 371294254 882253156 502405364 937824422 315834074 594360331 94364014 567820489 974935004 227355015 986269322 750326037 949927948 113798811 489409222 411335205 432565195 510871938 80004607 605339943 158606340 327385654 483360288 354859642 470374437 929520217 688865700 390335610 912364633 254713170 442326024 467820960 699151084 355224751 320897521 570387666 696561572 939047294 559621685 963617827 310990633 434619953 363400748 151583406 807660592 115866351 832148679 312022663 655034495 483984765 610178541 415506600 218853168 356998220 51094295 540511987 143657352 857913638 953886805 291701066 784749759 408041573 134420405 991316064 252174904 242965394 541150616 735882866 747518273 228128083 588783982 905720467 744895959 105972726 214236212 108405411 185596259 722200310 53312314 791976151 512811477 24121224 774366535 141968599 476644086 964709715 801924752 910415826 865499860 273898500 108083940 441033561 371673734 141398811 32571921 256439202 574691500 793155280 139672371 898360487 516077465 607362385 225539720 600793031 453152401 925267543 812822943 748293121 227772570 350190902 147043072 890841706 715065883 674639589 634570861 603868076 459979476 660249617 564942696 431951905 13909886 372903049 443732637 976541926 177211096 637053555 344774424 545544347 278986127 472752245 289668427 567752745 284219896 348139307 823858374 624839191 243619865 104106986 632872914 236278618 874587359 239463378 956120516 119657357 701666525 486833824 461658926 295540823 576725921 856814789 252394863 990528488 93701718 867576135 393888773 532597218 250287654 27484435 338563907 399148781 154469047 986560635 162433344 322825589 209686814 77565089 610970662 940935503 535330351 444471181 682633134 618026654 345763165 275444510 53598635 441503948 223359333 860177056 479047215 525744398 888615418 354472620 421345124 357161822 289721159 921876363 424264561 31085620 40573109 526674716 105706770 8543962 66836163 423361715 717288013 162840349 574084463 788440161 703765465 825164138 311322604 91465408 536396808 691855256 371899703 201304909 982714594 936783297 397804123 197269161 134178356 467835686 816776213 663591636 327369374 334056795 878103966 900655820 937903549 592147119 123554035 988450109 357738787 149519054 790569219 780867674 541588998 799517140 102752026 412682934 799190568 321999532 641226108 871108110 992246068 226820409 191796264 635440894 884800104 614588639 105759829 429771810 232561987 626840929 434377579 504607332 61899278 764208406 764385434 747323726 374168951 633459670 309778778 561481674 305018515 410608288 437204065 111982738 134063400 359174577 596069812 323882278 802313492 229600313 970495167 986690010 923680711 182353014 879262884 286836306 419670858 504169117 914168791 732735258 996574323 884329738 784074363 419215482 985724838 799489622 889090746 919718639 318624310 681590724 463976280 100887664 595626812 620957804 542805876 41692308 454885927 588246117 653030716 489563296 965563057 692350143 6309164 349045092 202585542 811323357 335906758 602062975 418102909 69616942 483775160 724720941 744858200 839851380 974483783 864417338 469775969 731411839 644276928 356079649 759798526 13873507 117113334 896119729 241759927 354738405 187448354 231939560 530751668 784935503 528143054 869342241 374112287 456108150 76245409 474593496 537240289 552468372 176228467 139767055 274361244 336873838 316736638 105746476 528451447 703317084 737726016 396141197 978771552 328191810 253543818 632952356 904820000 517319654 739443812 86629947 828204397 517332156 632789824 574615269 49760149 838371451 903027749 238275016 427613688 276787535 812079042 151455114 153454538 896561746 906314094 261063747 865545531 640949584 568678572 374138495 466467039 697700611 218962687 794950407 490713983 260313118 411103082 547894122 627771472 307763648 283863118 727296613 224047214 328650689 642989109 524963946 872884362 785667285 146399429 226651754 557881335 35141086 522364341 317493195 867671189 939981370 888490739 985145772 639621268 261391489 89622651 68119771 159698293 56808173 130922706 159391248 724646033 808334535 709598504 742620534 304196345 390447373 911822663 900672262 698220154 694123116 198030265 482979856 469019775 366173916 717049252 136463871 744587176 25561238 926042691 89479109 688358405 631424884 139640966 535234624 489702799 476978744 808144886 187028408 182036046 280305801 21430455 807157301 459019777 319785163 270290239 74656605 90768245 224577893 300496601 254782760 290135867 790095051 130134308 936940541 353064281 159349516 588777371 804680832 540334834 556739343 452003141 296239 791360464 346053792 5890837 555278411 291267206 600670660 941309706 175343763 120179237 787316693 974895355 224418930 200352961 154704452 11382822 984118746 434801425 563979297 269686967 838340385 925407834 153277772 683459229 327044696 206262276 306330954 585217911 696601494 973919909 314181153 460981053 900320374 570735350 632568706 39868542 706882558 520847784 222015237 465381120 840037763 273949178 369182253 62912290 738433975 685226916 359499896 829753056 693799700 670956857 650501002 545204910 358193305 111857418 284594662 533092374 41233964 663434143 654730088 565526809 286502057 358516683 625441911 242321064 716996290 188654872 17573813 701278415 841242174 381685149 268174929 211926536 492399162 895532139 818424026 152409345 661597048 604885301 271844357 815392887 267474529 797463074 951217415 407371705 506814494 470187988 488789271 258171029 282911525 373022224 773460114 656157692 449866532 659054147 845277831 283376809 821954681 534154878 20323738 699314417 133127285 142651964 362050662 173418275 388117480 431086894 457653286 942603313 742916868 806949293 220359773 974511395 583149204 929215463 695814194 529651759 366373722 417280292 900193976 691700876 142556380 22246490 549325519 935098331 8344112 890292066 446803235 497552111 887083836 434473446 217193809 992002527 773552792 148578445 679717325 347088049 918916119 484644360 291601236 942162675 35298736 757427924 879284422 455628946 124962534 915525899 4960047 679801807 15129792 237365392 994338819 848448940 505577013 997658004 857637381 87407250 61083188 626028391 949632712 217957121 270309998 119739699 143743936 126545400 860981532 421969974 490194417 200688015 207511052 515698387 351228698 472180585 18121164 263284927 827196836 275785696 347645516 691469408 538117815 131508620 62917340 68943938 121161167 797025819 408807359 573809956 353727176 393067394 491491017 324315888 54155453 440598642 340718725 129585644 29666980 371798764 539656330 624766137 366938962 921951850 539939909 833365258 467456426 46798 885473854 769861513 732845476 119552906 524707557 902001718 374062452 706699779 336290213 799754727 646798873 211951612 524994150 710941582 281551829 751134040 308708714 296656779 792523559 60950515 132202708 887658247 875367952 794075049 268005548 241815347 473058704 351583147 847627476 90511588 656543051 462053882 323452614 545424372 906599700 223643621 133291301 146418393 294675370 65075534 129629573 840902513 871334129 421574392 507969179 256453069 307321886 380564152 844273614 397904285 994183373 348601599 259202024 815225096 537586926 930156006 708178891 156870872 120943326 136933208 671171031 129660602 795153364 402309931 645220039 793402063 822405258 791919473 491110596 823229261 921104197 148730235 743966516 976470040 521414413 409870938 509508208 22051547 405625267 918191220 141256278 32042778 412397317 816699901 21717139 871714373 742836675 290187271 887173455 833670599 348641976 392115729 891811158 93948992 355235800 615068259 653104212 379314719 823796141 945720490 493994757 69686463 115433466 655270950 82441233 464295157 621130278 92548726 673041353 7568371 135288205 44237275 229717139 12734829 322775978 247202619 565097354 278124984 973145054 163411922 171665811 591467709 852045267 345590061 150527139 240555879 263160593 187561705 262490383 900659347 957534711 321779141 743765831 529683423 397860972 723939865 792903770 756382049 932528823 661962603 986854157 28448789 812153789 856480473 816017650 934043045 103515993 222096395 216874769 181436151 123437890 573291184 679364036 29029920 96863065 759068023 763182699 132196445 950638687 535730624 697043544 691477903 669398999 124861385 629351972 763766329 4005395 327153453 409511483 893169022 966958833 572084283 977290090 862477075 355622050 553206185 917424446 304590371 346322840 236520818 743202774 658248421 139847805 270644335 103803594 630678851 407072192 61307711 278223438 714007017 769230291 104897091 526709510 13535294 995587938 635076627 275531122 876626635 227439795 635789939 756518743 287312975 394541636 94969371 531843998 676609815 628477239 557779339 9605190 439037995 702362412 306713630 8460905 318644449 364971992 403565804 58828227 490617770 594887586 670637112 731316184 726736027 83686033 600337472 941679350 592307388 74207356 185933693 272856235 81701228 168121937 171906362 61192992 75563958 842479553 909915245 45569524 645512708 524077985 114976688 29754496 815555170 332652544 481138856 366482468 359958604 659552489 139112271 125373273 381141935 731801150 386900895 975753574 609291879 434311952 515089915 657871752 104944898 352773616 729802431 242322154 472111220 308639074 62237697 997208090 305983461 124151382 408622274 682626313 485475010 37241258 441005784 515464898 605993800 11900928 203184677 911383759 458091604 579977302 769383970 741318353 40538579 896801064 737427741 707748706 324860458 438226317 368436583 871951286 603220070 171037077 180666211 469648994 219856853 736975112 697397289 5273761 757705438 330534397 198594530 882203066 373544504 617565707 731374385 493238073 908894500 22248799 926848710 297828773 604499848 377369489 57218908 670601249 213828629 277210808 682954670 342215104 322846526 985704493 131169629 198030419 931975370 925722951 882997970 794377786 279259017 322403977 769606059 532375018 768213759 416336205 369053548 467139632 355431221 375280527 653812409 247742091 858953273 912227202 662465981 346814887 460002638 72755158 888089897 23538229 361390570 73833726 286159026 151061975 827766149 812165511 593191874 690956220 114600525 690121641 226465254 883590876 187919514 204035436 517639619 61148555 572935106 254235014 58970993 985740426 355713933 817530005 989854085 625047585 384518936 272757463 811745457 885290389 48695050 175941964 233976759 148099312 586946656 540316624 391354891 806787420 979801780 336267209 731281 178209849 970415009 899195160 574938654 271283230 458522512 997388047 32964840 10167338 838388413 203676442 339504934 626798939 371689087 100618616 281172958 632390123 632029960 481815154 310537987 462564948 472931010 48441252 864267180 844174315 592305475 734094205 853204991 628392976 25805338 905596017 936475632 123283296 152347002 817313242 352017270 661651039 338807347 326816062 781943255 166554848 549633214 973834468 549838692 271781149 268118024 70494637 421324070 441472715 512197844 323751741 88897999 455729300 218238330 780345292 719296643 480643424 467929394 35588410 876835138 724263117 492339335 331623088 737598313 425719516 973936389 908652406 879175839 444938540 685199122 953578698 598541257 715371435 706776212 332240166 8931603 675725937 702033461 245104852 498857170 169798822 316163885 515305625 153973528 85875498 203823711 775853996 628412070 744599671 567090615 704591652 276125226 199712530 14498007 557597914 678163633 800705233 815513931 381710303 533021364 581585496 931204824 756933318 532471386 468958198 119736570 54087992 505294625 552940312 815423026 132506395 855489943 230140258 179434451 11703511 368162655 592870399 546346629 707218467 84836094 4668751 532198240 956488834 936356713 110274238 804677476 989012007 554498944 393364699 363841088 629440208 119363783 527818011 158552101 74728918 437029019 974828387 396340792 352904048 335182393 621045247 424392706 820826620 547725036 846509295 723634532 930411485 839435482 243083168 24153400 192801860 284961143 773859152 355244909 608650042 76951916 508132704 547769771 179108813 701916847 639389664 994675769 911000082 83654273 303475803 94753686 857992583 620314373 3901699 678935325 291210875 816031692 463233824 359835055 782019702 6548217 238637873 827380133 127694367 689787293 287015835 194545381 922026255 932624452 702224104 313256313 792947341 898512053 273845318 138448017 17868988 71069290 708854695 787428073 840535071 112016339 663538147 828492903 620932234 979831836 772831591 870960207 232906462 665179256 196310516 507979355 495993789 945526128 970631795 56188448 37908640 781433730 506280821 453134596 234804099 487463528 192916887 852192104 352900647 219105594 73884229 8218016 107472552 993257774 332501209 572296759 12429685 872492561 340997859 654306091 451654997 124261355 137944862 384206150 756731565 564616809 784065093 66661442 300536664 430069371 300361870 858914282 851454787 991889547 41371286 181018448 621929604 597567971 27685390 709054094 220527014 762136219 658417871 965579278 947322524 622574484 238691005 994363178 797532891 22367997 279506854 60472088 312596510 938655675 505820283 732971418 680784794 985690511 627767845 508613001 131648911 802251044 774353181 925241752 697604817 298021836 979742605 627162755 239069248 866002347 475006815 342699204 735644655 636207488 176095921 137359821 379925240 314595603 785977719 876908633 810513728 740867971 932677797 506679217 647484875 568490077 476720813 870527063 330878617 608551859 690433903 146890716 70782821 426113568 903900696 77922008 44245308 802074564 281309032 84630620 117259492 988034560 603745124 662852849 59197023 413484646 7039186 972945686 814140969 800387877 459918183 255433337 855079686 430395374 717899343 818975095 191983169 38512769 867886118 262273687 698248891 56899230 253215675 100748475 869848452 54080801 897291133 666255119 671450079 818447653 491547114 902996884 133474421 832560913 826265617 713376377 467599419 288322422 335436035 179382005 122672030 788218413 149062805 423837588 512326110 146372708 417901065 234683399 884467318 749098463 420745743 511396259 309265034 941462291 908418367 656294845 663222550 365248198 64016910 985099273 146142420 698389243 998972372 528449962 211280289 368877674 591547857 874763381 360133630 118429065 499520648 990032564 668025275 765676447 314223113 44768281 306047991 372695198 895666433 80855393 125747788 395251207 322001335 157173566 379316471 356301878 868355149 97496259 587351340 23715660 700875422 127516968 539287580 884300154 1037508 362210938 226061126 199374881 408646978 724705481 862078206 771411474 664255342 970245580 429711590 169046301 972608324 792847908 228160396 674071125 954406218 930880617 409910805 782572674 717626647 702174736 749606877 991916135 623102054 142709703 775927171 121578140 390528770 754731561 63514250 270979855 162753626 784071517 978695323 347867138 468556381 590679551 206012125 592638715 650948223 227045918 69983870 2605058 821483140 517300624 626696098 342419283 417318176 513689204 184360389 974685121 787376599 72229452 233912810 359966474 375492647 22181160 766461734 933350131 62921534 202629609 134775711 214863258 840025268 427035859 214400557 610958799 975465532 636652797 921404168 954440340 984254547 429865660 111454825 243895774 342173472 785582621 464917789 534851421 135825042 797456161 532268343 264873577 354164735 124759841 522367859 244020351 611619891 202721997 520640809 791130204 357774931 727103310 830990907 632578234 833040653 982867549 405849326 925614471 425242479 818646446 304217664 401054201 249347453 671180613 205488758 592071870 515561855 918305685 572228985 294009738 493962485 826415575 663136361 515564323 7062675 521024067 734128293 845454500 90669755 651004376 231360962 249809406 511500769 786130812 63896837 919578565 642740308 51438885 849345555 51981036 773579054 174207826 302477683 916757351 112553233 762222074 945185489 241319039 974015251 853745554 467167708 504551799 166847581 341603984 768667027 956643571 485430867 406410800 442589787 722319517 970609081 856169318 847082726 568973236 187649744 845392736 895684585 624458300 219730257 694349501 831852136 529220800 641791454 782652366 828772370 488840779 935270420 667928387 672991172 46456631 741409724 489833785 911894093 271402064 585705454 472612090 978022226 152571912 725492653 540432323 439337706 739015593 151052886 443991157 983683477 905090030 22631820 821415016 368640013 110019648 456954767 510515752 171502289 957681573 561593450 574296637 557443244 282323669 263017150 739789649 815476099 181351574 737769712 311028447 150398530 638913374 727686181 469621699 992901072 153413450 365423487 558837794 830990195 185896423 202886966 964383208 896125911 444425325 273892920 760143193 592102256 63323634 302444589 565840527 422245317 439735880 618064785 524318722 855558872 629203702 813346843 480572956 513802296 937716126 588546917 285043793 358055496 577545816 950342001 658859158 158301468 874408055 890766037 816473164 76058894 768548208 276683970 381964831 424981234 271202490 170227508 86933735 305575735 61412633 893671188 122424763 81628360 580923868 406696593 502471023 24619124 26061773 293421373 474980084 925503694 109194191 43049194 725934066 954451639 850840797 389026257 141457419 200611423 772872004 704951568 226136874 593015124 998229190 593638844 690785958 56042321 440000900 78050596 590118856 713778451 920146616 529949373 779392441 608687230 359461723 229030337 882003282 125582864 751616178 816603033 330112949 274157324 549537757 414397493 102284213 49214504 223460735 331842009 245797309 605365939 699485669 377902962 857974374 33546534 301021253 33420577 100007662 793211407 582441459 921722519 838799348 780284812 683037591 47475126 239171736 589277558 26688004 941196384 681120899 234892546 957397516 938004426 157915209 953897712 861861691 954319987 280574437 396626167 316596241 164080357 401687486 317074793 17097337 960847058 465175001 390475373 130322337 985143028 515895335 946319651 430317539 511684791 767957522 268616703 587671059 156973220 740805211 4722717 724050613 347483612 14085850 291430214 953969006 221985257 610145928 585108778 223459075 415025374 910254678 741514477 30243015 835767934 617816388 182355087 256804153 514847943 287413972 229065419 759988907 309938773 481133449 438760419 806712780 108553611 148899098 211636499 371041585 699817067 354630641 110085410 88539753 949875865 484658483 910861959 708276820 727833687 538788215 359768423 839747104 670784422 766708683 46085419 12448436 941739736 155803894 239679215 2047971 312145349 292172116 318985384 854984010 42332584 432736622 220092446 756649533 913952860 728140509 268358250 437150061 363755198 869384923 293899126 403817717 234459832 995643221 97272422 33030199 478610230 429957792 170875436 374861838 109106 814507199 694137367 673974194 988395050 499063389 169185606 791760356 484366592 343094537 331985402 96358287 793152505 167979282 704445516 783076553 314699623 714118704 551414527 867315135 962733687 323664228 516283912 334168732 983137214 387453073 30807571 521212478 93828507 510456654 549062958 525816377 295427436 757738284 514482737 713400683 994213112 887408096 171232940 177056939 358342664 822984920 522750592 352398236 434277175 671226132 230536164 959973683 381773657 925414547 849499979 969460866 90130081 315084110 241804173 907183962 70704648 984093851 445081975 518173783 268720831 929556851 133178159 720721998 671820667 953670940 322187452 35294674 35565766 234184951 957492615 432532357 93333714 956862327 289456135 618560862 632883403 165941431 787465014 372043265 71431584 360503902 449723664 293862371 716125905 626234931 771622812 195403172 237711970 191761676 185102920 767521193 496058259 232671153 97715522 861468459 684172693 862479819 44519493 335909200 661029754 486098752 803610899 540069834 798303971 732212428 534939318 332778618 272081269 355157993 411088925 27948482 685364803 765676620 199728518 464472627 422510657 624647705 791034019 583358305 112462305 81207036 244814992 60308365 569999592 890809912 829924503 338062575 830063778 534895330 498240295 54609812 325091563 369058400 143472338 59787686 896424087 150196022 841684480 701812084 71001133 762516272 189291600 360692766 713353452 559364867 112433470 251980931 798009116 480705714 853476115 379629463 800954465 32761998 210699238 488098357 945231448 566082282 835557960 455521795 262356859 608165851 516100907 720668710 282525881 427548224 317459189 289225157 216394187 404127616 248567384 843211813 679963773 494918067 746172085 790393678 703200321 597964620 581513098 861127479 374991688 397611361 425929260 76140359 572407850 696380431 176823028 952125600 115191679 809786106 669010125 432222683 191210764 672080793 404358391 568933165 761569459 561065498 144585195 571966736 636624535 21950797 980883914 364242562 594080753 664861833 207421918 780830131 410722578 70151788 238911256 361069487 42591970 747754036 261783686 748547432 177269324 951030719 27779829 53659362 494844101 252679006 116271696 738594707 233586093 387714776 181755421 222561860 27232551 598040958 110157528 55539668 608407964 646029538 458917980 791036315 601988905 64589953 858018599 891117523 540452335 462045474 747792896 677019729 485669894 839342681 621199951 994463305 440385014 683481732 391225977 762397756 724112841 360353719 297949157 850247286 2725359 388844259 655130322 405163225 870778434 314724810 649545190 720482000 345713720 520116425 164373446 738281156 739805383 38907787 220998787 297624429 998745494 181981434 171943208 924626740 680490803 315836012 604604843 893883307 772747318 532263681 837835284 569490881 526285434 855199214 545566442 85573448 897512016 688930812 274277755 371640683 468125479 721636154 234826965 368084099 743182762 703879055 908137790 426624874 9692592 253488815 832444415 874216663 67003201 905026421 599012979 450401155 331784610 897080713 794238547 247258620 841062322 339016814 156768314 23147223 796470742 676452202 484495422 110347709 738805584 602656647 70086512 256820368 619228744 269585787 502463431 238906227 848081075 51012493 362573352 363459668 652877322 553641847 225502804 141793536 136468309 700804533 20883963 926189610 335542080 322119870 193619040 380010897 590407575 96728955 122666781 321446411 971537501 672643867 923167315 668004696 812375977 846997721 599538279 911855816 88227172 389036204 611608519 360916864 771883364 897023345 492088157 593536147 795950922 510094648 138286506 96705430 420891254 46792438 652545158 242045505 222087506 604328385 283760421 831445137 896496944 606096279 577654046 86339930 327480586 772524088 769813143 846226138 746771639 791982739 775832144 696686808 91140403 19590002 196847541 998055681 405875042 872579283 811384386 824655980 50993957 378591799 455924341 816831778 550401784 282016079 81015715 176300345 243082706 700902008 187631297 367203081 21503982 231685609 84536495 590856990 622605623 930631122 207277663 459324884 684453200 232956733 294206075 407559788 699144253 229054076 910114303 139783619 68107757 230410333 174714110 323346527 987654429 70412694 350041849 4923392 502849178 788290822 661140855 806082061 114502802 541018081 477784939 855220151 857725704 716641421 401638424 77826878 553719872 1780854 452542987 471566780 262565933 721625329 158627122 331636641 381522240 977443861 624550664 56027057 175263765 84754419 120301506 571245308 817225907 234108825 662728914 367413424 638523659 81019386 916281691 98907023 468198225 401174645 41853620 529867552 716557411 6938378 491189424 545282919 359776489 816794127 856816382 964451748 413205885 30265014 146601254 22399372 311347159 918079907 21156917 809405268 366805254 640331207 987694872 754817141 358034460 385994295 105200910 770128697 286321468 473715820 532437527 263536990 746239105 639029796 259799493 105592874 786632989 45633790 447449487 567397419 701594004 363887995 136691212 302959842 958217560 648053054 298168219 864328469 88794187 377838193 215777721 993932572 921912434 13065240 626014690 409095089 444862103 299650913 272386913 756400424 13390600 10418070 182556314 831620118 865929842 100385521 826196185 438391246 274349474 298573927 858923240 767077245 855060249 24007783 869143906 818654325 824229535 403161226 445315212 506279006 604554068 385819044 127640794 855434653 242833148 464741103 987245021 274825910 933442081 357586711 163966974 204569974 938260227 123233591 323629488 750762080 563326891 900948763 457120525 53514184 823369807 516187162 907363072 890026906 747946678 999990305 909984183 633699366 427077672 57869963 522698899 295338083 674445205 618126614 473855893 175180860 723220052 383528476 638200393 603328400 748176232 452986721 949792059 407417242 769115649 115935198 577200961 144143954 407211727 22431313 171861601 143570052 993693762 276716913 156250847 165005899 868076192 87034021 688502929 939308455 402122378 518778602 844200291 785412668 311494543 777434349 812370006 286043241 617615734 298569297 259689890 619580605 500487721 623364488 531902242 552907869 130200343 897310367 17740191 936090571 840061083 682661947 812887933 808885921 430252616 907737996 52031058 914387183 340670612 346954055 74436708 439644480 211256718 985403566 370931327 575403019 218370527 755694062 48606849 813140653 657991832 933485830 338707071 550331679 779797103 608634335 331978866 298964156 937546353 996257490 836519312 81047899 218695486 340355099 42604273 693926533 36618856 109077799 135303917 985237395 518951856 102229807 33462082 465453799 635200172 213614689 766873741 127030355 973221938 465638492 41683346 906863570 654500700 930250711 558018373 786611708 696736778 829619743 386144748 89808433 417459875 74553906 849844140 430328468 662416619 305923163 104594584 103794446 255938801 836729190 517354755 511846852 235739074 119553401 77986072 126336608 572760149 646443301 518541233 35867233 980864696 311180792 283104075 789947836 194633036 412629049 654976534 145197635 188698231 936041623 744881331 987154356 85594799 522553228 496095722 549757659 583529147 857048155 478240302 838330214 340326126 239474710 415431997 17273351 353708521 273272413 179456894 433769228 700941437 199623770 830122303 756345677 30387167 422123408 287572585 961217075 266648525 331847369 216674607 892224671 913462838 779788212 272056572 285445989 975302144 923664885 947347027 338215980 729889160 420028676 562678842 301511359 250769717 127539743 24586456 981570016 586100959 962204789 243783692 291742773 909698281 420963857 952327130 939952461 442446651 930693177 700266531 792036045 682298973 451791753 897167872 148436606 623212565 886047342 343286698 288519507 681271470 730235885 78104437 531566138 625829799 947835416 654396835 613639491 589315810 991566857 636609227 405801378 222651885 791931212 423236010 366894383 190899267 471529456 823631082 896089085 630759230 41788488 300538969 325485299 464806644 10619608 904282755 548365452 604297752 330845797 975029255 189435659 264847908 7828412 281362619 298395040 591767855 961506718 165711828 944815688 554038096 893581881 877317602 332385805 768597343 81566752 461274626 783721147 71592390 877442410 709568832 630202211 304175508 601180313 287911914 673859168 717836533 795709144 456834175 619847269 178189629 979234951 517841146 962373216 884436875 84463733 395621042 233307964 685405728 339839028 168874552 889849104 599457393 851804871 774368218 638160555 32967118 136656579 269767513 662230495 675950659 873830395 864217341 232282735 630021371 26583073 934878318 223272603 404253383 318568750 228369747 543500419 19704330 212258485 489645289 486020774 905271387 409279118 40999669 880621944 748575145 586432822 314945460 928532617 421317212 807253473 501826931 411079190 647014216 68942555 932400127 258689910 326778119 83013939 914543388 904724385 382277994 100073773 530620998 334102803 132555884 658384083 306539629 881220651 385231875 418879615 555510026 984826400 876850616 575818338 418484833 293282546 489090215 947356040 317883093 845373696 742923607 504638923 119110127 881444685 522925494 541293639 220841011 150869583 494903302 79675672 142948207 398394391 64748785 637773324 18550047 357963759 884123181 988878551 434839558 857835475 657920834 422015298 163258003 758480514 284978001 42891837 69874040 254833874 671943559 893174345 51018886 482686826 285234524 951689989 694168201 171619242 628710080 144274942 510906799 778279340 94792948 278347938 955598271 905092575 922414274 309042097 171964153 286209390 590150524 33538072 217348022 820778038 598157732 110285745 171302576 125970067 422942904 432887344 210219512 940779274 322231237 309953468 542612408 303683447 352826323 144318168 750117681 822635527 730110369 498287966 333672201 817414074 604881371 440753245 92269863 342640880 339029846 908640242 713258606 670944332 258646599 890198534 836149047 281826520 763116578 180191135 501264876 532866156 157000643 744762610 252209143 80547695 690344472 730311310 59158430 245776678 532835935 294933539 17903908 287170727 794753332 234002410 439928992 223588878 187685267 367657179 733438081 311592040 259657779 927167730 836052197 476813124 378434212 16359356 797289266 524291374 710542280 607931928 920990830 205133085 28403167 217481653 182766817 670949953 424895752 189144282 763202700 570647221 628079101 684107990 114639709 101408840 404033597 358067336 881816231 181240410 821553567 933477678 487349540 901130734 338231806 825954465 667897057 474029861 559343970 646025774 747392442 531244532 333303806 484795591 327979766 741249084 209885618 92504105 660640945 113211849 471340143 376834596 209125821 712174397 792827510 310122801 988724653 446828143 763314025 826182549 154758761 145199979 691318079 289482962 911439340 457420598 54428376 967289096 616472613 731914447 719582567 906107227 309476167 974013188 452156454 717149116 365021827 211984415 729838222 908510521 834196282 966746335 503357783 303253743 652682065 177988600 676405374 418474789 969764564 764250891 62119618 630543317 782757912 830339887 989054218 693323245 497194034 427003495 325210125 915745240 57553601 696972281 289590396 728908614 291094648 359941003 918500484 936722093 924874354 235964818 151036848 628190117 742249961 58824298 474667934 917194771 113334203 980337358 507035954 698924508 389958455 545525539 651419349 643250964 285651142 840111052 806080607 954340854 222284421 301302014 211845852 876784103 324525807 613571026 804543558 139871754 109960327 724663812 880855440 825096258 913324510 747173501 250646953 405854282 724699507 307514305 327836913 606086292 710472832 915845752 914158879 736941088 412198467 728671266 972335793 619029579 404308863 949250154 698082429 966322104 1842755 200099329 784843058 194186321 576057066 261534971 778674817 385091544 125181441 179336318 169958259 539640522 8500218 990219558 899957695 426148201 158901617 412862360 416890126 530817202 983851932 308629230 940831044 641744130 117690389 916679442 804189317 236914580 557426284 367004063 497422560 111903610 539303148 48115672 470499101 579465000 462756413 332484259 627550733 610655581 799721804 614110855 191320441 579532109 51076891 292553794 715085081 534542814 485980053 574480926 956221008 505168558 565546170 330948697 598284418 220461377 409612024 954024018 697202171 614669810 929426655 237103398 391683030 811150708 258102045 892523357 136151268 537170499 317413770 879002330 39247941 495485214 827018575 955359433 237020811 878261745 715097624 310053223 36157343 924544897 665275162 62835502 852436298 785243818 625965496 948019229 400840561 85392635 726704897 906536418 58826680 653614963 492448522 385855501 741869105 381033141 968790842 669138560 127677536 607872949 103125594 81217354 413875792 344737936 265118018 149473115 981470924 792322449 264956406 289556385 539197813 435501966 892263150 147892936 891209712 851942044 660641770 982349078 836890903 437329247 51067206 651966444 188734452 416676509 267828574 451262377 751941887 743807344 565030714 502944013 43101541 565477708 726612083 980555719 208706710 996015152 661807356 853620152 510801801 60549987 428453703 429176522 606517850 24186561 533922799 179500578 851925390 901383353 634840210 160923663 154709437 115724342 392208664 221887581 7868328 734140352 115448013 454903532 109424212 94165351 479616038 349316777 95129367 494187082 306049453 155086391 139309990 343914552 420599898 953689013 634339684 143580343 586846922 407869683 545120948 186450727 63200293 92477019 911025822 827311594 414668817 678110719 291795265 873340202 853312328 494214892 987599873 285671345 875036644 829039562 592096029 456714889 54723309 619572004 219614217 14933170 704403361 770877083 675877266 71411670 678768476 986260228 988172061 679350111 550719949 983467193 534648905 388809533 89783400 803179359 923929415 937860074 459618575 67499925 257084102 87139871 978981990 257443924 918651133 241757681 386502512 721535251 888024089 446976994 793107236 974840681 795772869 771297440 44806836 360464877 747075647 74679668 51215831 355207221 768668696 162164649 388211049 307020881 941581608 343144989 507316693 768530508 729698165 152774025 186244877 120323452 634476041 954327260 468679642 282524147 915369782 580350784 593173526 961500846 941175818 867821320 551472506 291105474 801419696 993524218 624194174 962824992 802236524 447160580 74361348 881221235 523637957 259184888 799626034 243082530 454027547 63374460 220725319 946922325 548495493 632852288 699118517 321038568 942768329 338362198 524004264 458666488 645787214 392170492 304668536 121044307 431028530 699928344 221938881 353726069 175337823 728967482 291409772 995711509 922163204 190261379 974837902 681909931 573411203 511978935 741007400 188039290 981104753 201787576 962260008 115326948 526828087 653620485 787762097 238988200 540324842 210362950 795308979 147106612 846612620 254339651 640655054 315968463 510102099 424489140 951271826 965162040 688015857 504067653 651686912 240486370 790471308 172307098 279533343 978678183 912205329 72392499 131179750 616270685 503282048 837595600 227947762 944558181 877907136 203127205 425048291 192943748 574319174 528965172 383140764 755780970 805002632 143351434 76638243 698847256 96510066 195491381 594291783 73097450 363661323 404864852 948752840 904699438 317857504 395546877 346375640 899947258 137830425 132358426 325414867 381442063 799710322 934793772 742559263 223979221 191548389 884180553 455614698 466929953 906482961 429289236 291172541 703232749 726067647 116127555 5978091 955905043 182180274 847901301 168490221 984701588 895326036 703206445 49151829 144811366 390596705 921837983 81013878 281198673 462290949 505651497 405856509 336674920 586828487 429964710 669461428 942360105 842943083 504532035 232287120 804207478 389483511 637682389 675172623 779462796 240510098 71098831 195046807 412383453 121144501 870563735 553603887 657790245 303336919 723806132 772125873 86216173 738118773 642499953 971706233 833867688 595620061 671819419 697746217 330098446 279485239 57609998 255518025 86332871 135013080 265457375 643537930 843466871 382154376 843466066 922825305 822676625 278342747 105814691 322406295 982493969 75981006 500231452 499074970 348135671 989988239 961248883 265730419 992529788 95820690 448640308 346865543 308397731 154312149 439335635 329473495 125435852 115064791 621350316 270151097 901489043 75560330 594056126 317879828 203432149 725641750 73768840 718272738 849683359 879821245 279805001 805569867 850788582 988979488 226433317 701100539 841873593 41736763 70664584 690999071 257997773 849527050 544853758 771265189 519980623 542015312 733027287 410009986 27860615 826091681 460032135 343070002 255258066 618260070 86268290 268677967 118684009 877570107 975105099 200395756 762967957 983070970 316962147 234912018 644033053 564857626 445287651 460627704 562205314 561524792 489539449 879816599 23783272 647724437 950477091 99250541 514169865 129774279 631393188 328623401 705089823 205181516 948017465 602939376 564183205 315688526 530796290 677164371 322120183 322395316 547523030 28453547 709868992 177856375 358353460 183914670 425804601 828127462 669753182 250478580 100375912 342917165 376962915 643501836 751288734 362708421 76651097 368582914 384132430 659841064 743134584 11277280 975515032 78050838 259290513 930966841 679710300 560620259 766081588 972351009 474887592 796990667 340239284 528739117 527583150 295160733 312491750 708703460 769005867 973078709 450337981 695160376 802213848 226530906 169578260 59911928 277753303 576554849 19528090 49619989 433844161 587188161 438828410 840965533 285412931 993433942 655132786 472083904 571688100 571684192 244141154 256317204 487455111 398769692 805454330 989209673 515228320 178585148 956660462 264536404 486593868 123226977 250917762 796806727 385012534 454128678 469244508 64462835 269412444 811441613 196547152 807266903 433627108 105021954 573851762 953011748 251786165 80893945 421743521 928205119 137989564 533056293 734516927 369682202 336629807 199623463 960232721 277318191 766875761 167470237 243348657 143485517 509922717 219485546 398426095 898231826 613321125 316699802 688692083 971178863 543671663 476955929 14255883 627815610 527067429 861239907 985278258 814451756 219028162 658303004 908435272 70295707 774694578 5802535 847614697 891566219 704339453 775397533 745305326 151246901 276322209 772756202 103265513 614019515 888195733 338978744 100508239 30712334 234981227 847677556 99951645 576997284 881843029 966573158 136497006 935393659 58271692 192949072 547463429 235153811 932949140 214902740 228480615 586543602 232679942 544196420 368544688 528311017 681405972 801901540 872443934 796588895 190826590 194616715 469542380 654757553 216105443 415149193 182481962 175937837 600338810 803741355 713421923 482239415 989234465 622218493 492268226 227199659 439986059 505723354 819761133 715108448 417959980 194829605 446569929 902792929 579569715 917827959 301778989 573715017 687103504 970624420 741812820 659725028 608264269 519326269 811218965 633480112 441009463 887837030 319209727 923101032 123555530 847940054 970350319 908386819 69211893 334474880 811130157 160903537 877550844 508185186 234595471 955067350 613311406 163716706 443658255 486475450 103268635 401892666 916381612 77939775 75717096 842177295 979609913 235604177 250970602 998263114 635842591 624964646 85012378 950230704 924203636 557246262 498196411 321006172 989676213 810387478 203278992 805845937 393213105 534853163 925389339 859216380 261090704 50694882 997451466 289771920 276832113 989872709 184438975 885886103 12625782 962672449 593593175 590092649 145641242 617217457 414962694 711020759 776269550 85416731 890922128 909280502 482029542 581626565 46203407 781107839 171555902 552720976 539480290 372433960 15219086 846228685 293791383 480309306 195693347 695456930 311165758 869112295 832217074 483108908 691169241 973131398 902370451 136339834 820029758 82533373 862500687 634464616 438611656 780528726 916476975 964552567 355399849 931537861 719413054 737886312 649392309 85321546 642926379 344574083 667185140 533575887 261141542 889556112 176404391 611257828 674011062 372552666 321183825 898755954 584284271 604817799 612165824 719901858 490804380 723330000 954965164 756846834 967295471 351727502 142614668 31089087 724238853 727397596 461136330 346469847 969880383 638990864 505353151 650909257 329302431 869626301 257341075 51374362 256601599 91143022 622163727 970732728 554547004 695062335 147945445 128265608 812110703 767675030 163706388 303684562 983935833 259854574 933605333 823679540 813809442 590125843 669511326 887931252 75237056 124694420 570583113 639936080 162982692 617585556 697948123 96145969 775519034 663834009 861611757 565166509 440093001 511893821 795756251 585187390 871272638 745572787 817312557 396623852 256129562 589738010 373748279 347115554 353830163 916919917 436386885 659001966 99850423 555270550 771292630 836614874 354878251 23938373 627021462 858195910 780028354 53150307 358174801 422934566 5054362 924125931 147666774 588554851 62417568 740374487 135856069 390048455 378349726 484558464 236362477 681294595 498867468 704673521 609977586 532581759 230141346 153474352 412485441 499077715 976478151 427490604 850744244 144507421 454070416 448878101 673483465 704391126 959587524 465915938 562540025 748182833 413770627 325258997 599576348 424231143 352026499 614615339 352120914 206004424 542928905 178122967 568223912 380066077 511272496 297611155 115732310 587602831 254953414 488842585 437129842 687568296 868332488 599281644 249365671 989444539 35098668 40112668 475641415 608135256 188709270 121592745 106964690 133342022 390588833 851105869 59174650 912395539 730446905 536793785 54346181 627133774 406046802 881493683 830034949 754112875 172374505 659463586 915540058 179178659 785271085 795113834 20857903 162699601 871047679 540992962 612196815 126780659 499425974 147219569 406979025 159044253 963285842 470694632 888875491 389935883 409830777 206711262 469637950 759991841 511238497 748003626 912829345 909855922 922679949 617461617 467913192 127693645 468048998 729211505 918695841 211132681 329309314 704166451 694856064 132816676 131707428 71521476 308391063 203410783 397442356 451052343 952988828 462124178 138327970 370996915 920437174 405421865 266452479 788147851 469618262 260969160 995821686 84051255 71513372 393098520 157234827 982482499 42347942 967132519 988016328 249850233 673435761 312026197 931940710 659843398 213387872 338576848 794130516 908184540 858240697 157157392 589281786 980455844 541163521 613213142 144867782 517156227 255438990 779090380 270395845 417055985 840804967 117430830 458356703 892635612 233821160 925318771 407115963 958040591 269527073 858782335 866903504 635735527 711189717 797377281 17743305 891683647 570355748 152702150 805301876 559030258 904373481 454275487 170551495 301026072 931989000 676244500 302165519 869820939 241904543 169994474 472238841 14209774 392005928 503580265 81394662 415547700 516425255 520275498 492782840 222594913 606988382 440341930 998082905 742703202 432490866 230156811 299815883 737171777 445364101 664188009 651350020 814660749 951305002 579226667 34829060 656638660 824807727 592952379 954652503 782715587 91265040 195106702 990989015 587023200 302868134 944767471 359359982 835683814 571147972 162498972 437213365 225866979 779298835 66874708 170987707 249091201 641373821 264689629 402740849 417173767 221045874 467988471 157416391 285551631 601514266 187979539 752698701 979612691 173224943 356437715 509619883 451999750 781560388 583083420 73097721 378418929 395664949 147474973 858493001 819224820 560046428 279999796 315530123 450659672 36970078 155737825 398617360 487258544 992939336 137544695 163051817 948209823 162458870 779048972 159381386 877278309 610442794 78076784 120392838 785754776 609830680 525341715 307687257 374762897 121224967 277573488 836484300 453183481 675318212 28756216 393783463 427974797 197497264 187141818 305357507 253789544 59323422 402006693 176432860 284590846 755664570 975255616 689878417 68945903 568463633 706622728 782743050 196639983 65765746 404815329 203785588 198857905 443208650 395892827 620719536 200413277 7566769 39101936 999107669 447595933 637424226 532337638 258668872 703822374 202601205 349017539 744852155 933327145 560189831 874797918 545109814 779635782 665068251 790119747 791224657 879649462 155255907 121699665 319960959 489675177 484597743 497809057 903340935 1276907 130163101 452354900 10261688 658116841 310489484 136490026 589991252 176393867 134253502 423451928 72649200 221111166 693806113 551615499 96739200 17878682 939887007 497921506 669627037 866258317 676773818 570988996 651843067 696100038 829318863 580830283 782280449 409156537 117344293 599561165 146131324 286186470 64643716 676880666 71575139 117038858 881124846 48252561 673013695 385970690 646679144 116941171 219619538 511687805 79495482 340217696 926031014 808610073 375065433 678960586 726564875 113858182 642767726 893032212 51095065 727049350 820795330 77089795 305523032 835494872 809047052 340206743 586099371 936484444 675587657 463435609 566489131 140030074 721106724 656236636 897264464 43435900 315919510 197892939 177474751 936256789 390681448 223929965 594135331 64144836 568680445 479127824 687746057 242766111 43028748 624530248 503134850 894078933 611125392 917186413 185923236 530546178 746250072 867485472 875763186 780479830 637900865 956380396 785333168 810979371 377182867 765547773 662186385 405699197 506627478 637099207 969040919 412330741 60965687 452540734 315262204 825323137 504518806 44170395 182357991 694143851 51228629 699456243 232885260 63490379 485187548 166704588 903051186 974108434 721146311 517176185 300938014 940401251 650034788 871729575 150185729 790184388 304655692 915521399 137243651 202299242 6999974 104573501 895910857 439159518 514833099 255585001 907227529 581722778 750748904 227450000 190878411 445050623 190588053 938848859 74456216 323388734 180506444 774569497 862097601 612376186 645204555 716521787 129779937 654472951 805091873 184114707 634987517 57073932 766619508 264384227 136065761 452837788 476318992 361325793 758462135 116910024 912886842 976305899 52111054 4098610 595734348 6675686 126315388 243718402 616080834 672385765 371607589 33462243 656309850 905627129 464706504 314789744 282116195 560854185 603892412 606436616 396787233 506901899 499081178 462262126 863562621 734875572 657804959 96843779 817142041 345062047 317533491 409791128 551198960 42028936 679137829 997311974 410548171 214529931 244344109 329223533 450957372 357982552 963125505 560904138 669378230 116198403 46606230 575928059 149116342 74313119 82005239 576157782 527176697 66084099 122883843 466133757 26469533 438807412 516306717 418912497 766461164 326807612 135399038 555085720 695193293 66200217 389591555 174980677 188332695 958893300 507708487 940585398 998517759 629028265 782662645 757934260 931301159 170755867 602909494 395683004 642364221 279642347 242136986 736472288 966520299 355057995 340563403 906840266 998924718 693363826 694493554 307172635 555133942 496754512 585436304 308140032 620202020 133409439 239124698 401382796 362609885 395855780 34456522 515624005 114493417 565938399 553028644 761429918 343320288 472307721 373932821 41719747 235238427 201044869 795754804 587219985 922624332 87349652 433346419 357423306 363287414 413581525 180826032 395026652 607060706 288684782 273160574 239998085 785344988 516954365 977258133 96158826 507253499 605458742 364054953 149507172 917479062 913255795 900134683 4876006 388125919 211124687 554056206 962200370 442433427 711619643 459313216 945190497 348087480 130078892 146014498 32591929 409101346 460216928 514065574 942598420 294042399 864799956 550765762 607808230 542975007 142770516 138821013 758596810 317278096 544152943 120072619 212209110 1511755 268865605 84891532 956079195 462473206 486888270 232180704 250477954 974301599 176442208 464244677 657447208 214789168 281093276 118700834 141840707 889314579 86751034 937252340 879340740 196807255 352692730 257856015 255708962 515383391 241387627 785045339 497390168 429166666 634514748 686229790 716959288 508506565 42354329 57108498 72509712 289071335 309813757 819528681 712514532 575902448 696969000 314374453 178068962 868817863 424356015 498969534 454884785 519793046 669137983 836042231 221450283 587976235 765024523 921480701 367437365 517471819 292992440 311631878 995821291 406633266 691747416 338617046 999487988 432833693 548607732 866766097 116337087 906087720 305869805 807683315 281020675 931388359 651402963 730674644 61024689 735593744 522630008 706949813 224149165 452614689 316050731 29954505 764034232 123338085 861152596 358740832 680151237 893112900 243860874 265429538 961409506 313807583 915318030 375103244 586488989 383142304 920423866 354906741 362458900 450105132 461044128 963715194 542807039 996314123 378176538 85843137 743460607 345433641 218776938 335873118 966378056 120864169 780396900 990844584 788029660 885811362 753653643 197887080 93958165 503674360 413340207 174821162 780560243 964419155 785912677 530119624 661891016 813440810 238813718 48467327 764010106 90520829 851051848 187238200 872614232 571758114 430639955 567222433 198723499 255538297 427884167 792005491 678075369 182160493 196494859 442115923 974477122 763749525 958498709 522739680 275824972 99519869 814154906 148682385 462074266 220878032 651789640 89754099 852761609 701263833 905811023 209710247 989037240 825946758 337268801 806386563 962987917 580172282 931208192 455191659 758577016 816795805 284040429 128499463 966669361 687049501 628243093 974424040 823444659 958110400 73674166 745236747 60838995 620881772 170693467 95456360 776899629 624743926 44330983 743748314 326309391 58388281 708938897 999814386 504643016 803795662 87283793 846354708 296529897 782140868 682715489 540799685 629562536 57150465 90339523 700035787 968917597 267175916 367152606 821323397 880676519 733496460 306148588 335846389 711773727 932931614 537298664 256661808 902013439 310228199 414326589 376677688 812048335 606406519 370514927 630833359 408603080 286790032 533161536 707270574 285305620 817192669 582098377 882308685 676882527 229865172 978336865 231536735 988029686 662928474 9115371 192453145 638165673 735650391 621758572 711694342 909468333 954107805 794631627 468396786 466209806 663833443 255145480 380782280 256871017 775567639 83132205 893479190 704989492 557979196 302991785 580309742 161096399 632177505 908358187 296176184 958921569 640415068 440455679 545269396 577846008 614511605 572732465 924213654 987070730 371042565 500312174 681946353 70551148 959077258 75295374 137653617 579468675 231489301 946190430 935030280 799808359 212417312 191791374 50697462 622578131 314611444 896616439 715048757 944326463 180301702 8020773 223395806 85735887 948560464 303320715 703481287 800203671 956184230 21725092 174072451 404608902 974502018 506501538 610318521 637807579 560189913 753550314 840080799 243356671 266028339 211856176 666677457 776296079 245398653 726669501 541614002 285509468 356183905 930550728 322386599 245382970 600151778 996757276 133573133 376788126 618962145 404887984 890254501 615644758 530923663 867158012 85146668 38479658 364945775 773628370 940828360 593907211 773640133 442792439 982682310 15043755 273915017 310599410 766376685 317906553 762133058 109615280 139255847 341550309 109338639 514412836 550141013 425151185 187292337 631261322 582259227 811142711 382347666 39664616 836283301 677917058 908933880 453819327 636423787 733610208 671169408 645208079 801442811 697271008 735093897 239629623 312665576 746496627 440436063 9382818 536819308 244294665 406877605 499992080 723456343 59280117 635649522 349062846 974207324 731580328 625296993 104463379 317128586 722562500 538118150 736022448 88686961 906766231 38669352 504236840 698688755 67207173 785443190 458809560 720036548 309697493 31833522 622380441 918810083 324554127 162941928 628325310 916291782 325724720 248713353 875248868 898318561 219606877 69111856 109358593 11641719 694433379 557934191 51871203 756973482 61709716 328537741 840183569 404978186 472604872 180150919 888477574 15640633 360755386 407649871 998905613 931035011 269579786 463092836 372628252 78894450 938927237 63199887 635010652 734321508 976589105 454551692 827250572 848351609 583781350 793862325 262337868 353113203 336746481 542924602 206901789 178558286 86107692 583424385 234662510 943416077 178801509 496975730 494847354 199375239 414207031 862915751 15015420 484123240 29110217 641332777 509728374 840416057 872873294 641175793 363994500 212283112 85972837 884706708 464259674 174468085 195946843 493542732 779470208 617311619 947438615 730105361 920160733 337933447 773331644 67243073 962287264 505457873 826514947 110912732 733673017 231199336 27789358 788912711 360069389 656054815 722920850 761474174 203369227 656927271 31697663 190850563 711126089 838045889 694117610 274571717 638477363 621269553 271469897 305441428 423150690 480861073 564334997 286802837 750363873 971759769 523664533 460603812 499631889 58077460 82034740 655592775 46891023 705016054 839984281 723073308 878665264 831815229 649112519 322771267 154510049 151111615 767481663 751128944 707079813 160149591 209923229 671084436 971153180 958024757 410818264 154318124 169407025 110852668 97886757 440172319 398242547 184403261 61795856 106521777 79622242 840281101 680536199 759611378 32882398 548273394 514511589 314338320 540172939 291587822 348318276 19240114 484431359 176363963 578113226 149758494 942116474 811219288 443595325 172292796 379988284 754800388 61143676 811796710 909384176 765101214 620900326 94058254 298769646 149365311 604990811 787354415 532637817 518470970 808769140 586434363 508788162 144676745 425583707 732469545 811805991 336833487 748630360 262395036 994286030 240085543 93217456 831839704 812909568 34084510 652534338 703476942 933141887 459644324 36394101 593057957 400184991 758602267 215694513 921350889 386449497 714943213 935648436 561833973 853993481 78782803 514282627 996119008 641941714 952923795 252916539 903774652 174389704 535293708 743593655 247711537 782733762 863692941 396322934 437653630 245262551 248266181 934163203 577501238 54953281 712326832 242903974 542182341 745934668 233855137 813162172 718525093 585538114 808558972 657028527 216056743 863591249 217637300 640202920 825579444 318773679 361163765 367585063 521777860 481213980 732446532 294447478 776845997 7294870 562407491 738317360 605433038 774912463 648367752 734284262 700031676 398298997 357399929 805877036 702398533 742228402 578289663 485556565 685455224 481996815 588095453 521399243 734545243 140563193 423692219 764130886 293171042 692214018 236867553 823828762 612774418 220744161 321421352 577366306 80438967 108806679 629104941 713512384 376668035 542006764 593115447 392832767 479025234 184502701 512205052 395273119 900242684 374633440 530410089 106688401 355685766 326816609 807595788 979912557 308769350 462577851 797984831 87835091 214466998 253514146 570184313 382039569 299394506 768322969 806374860 241684468 127349954 871195360 301194376 216748335 482688748 578379478 525176635 696796702 384271665 396697856 497281343 410479215 512381399 333480230 952485830 553979316 44575337 330053770 488983715 110847772 705246560 25866828 108171448 357540961 755224882 717124786 977969239 907806288 600335546 315191120 15366813 363090355 955962983 334576539 619546447 342714843 805391008 750407850 759843861 345762661 641124716 911395933 162375028 698429432 478813255 224786075 520819418 806207287 413309978 283239851 594387736 257374951 846191956 515652373 106550611 286440584 76681084 630814069 652477003 220427935 777476091 349576258 432015493 561529684 247294409 913260280 924032683 128518535 236796139 880860832 906803173 541690941 14636987 359771890 880541492 206159691 682012548 880577091 859924989 902053898 276480756 307341125 917505533 259636009 116954144 493659932 194513880 802885242 251127730 790826187 769491955 579828586 12646358 262060316 371803300 778552612 940632955 673099262 769752259 143511717 120442365 239476007 750139219 208786056 876747579 531036988 272221033 358272763 154003168 699289826 957849816 341401192 203232840 494837913 297491483 80780666 27326688 936165791 266071280 423745198 694912740 188252569 469574903 544450726 576769407 356748060 238676097 783455798 648275845 844773457 129495133 535542661 949572818 336222649 57140329 579010655 559109418 778141182 222040901 246064740 459707254 861956908 358438513 272644470 290432109 242888490 576735087 36704686 280206695 582294157 821962903 816187545 982545889 270241373 174634354 379747875 871538105 799814862 602269610 34395319 12122926 905227124 91359400 365186557 106784444 25920846 919663942 921114848 887606855 416771756 479098038 333298116 399100037 106896845 886466539 855635942 838945253 760533654 926366068 844419336 757620430 92285852 370951104 474521856 159940558 70178376 527886423 505367070 645103451 865528064 331947798 478709228 655415132 832965603 132979889 553109040 563539099 205926603 877737827 677834451 143896414 246210015 929943550 666149190 609435218 777606897 333486501 867247961 122959473 736634587 282174080 104025808 437059800 619881150 426060604 582492746 81350803 229358731 296649278 387648262 611332822 512970786 851594565 776593307 660641353 812161982 340179940 345670647 969068697 62409155 116368518 253165018 641412661 254248961 965272616 32222644 217817377 981644087 311454243 518419714 584236040 695815512 171534997 843797575 506959351 28910066 109306318 339091471 504621799 328243202 357345348 511917289 697658029 843084772 954685606 764720292 886203285 929458876 472922976 557612876 876602920 46404067 877588999 429122228 229809420 21207606 744579903 389074478 150729484 374145064 433430722 565655855 61545182 268955487 844795239 489278141 869332084 480191517 866284795 799361098 580470139 43189200 480644873 678357104 740050131 823981424 680696513 830797910 180634558 268527729 274752672 116810358 887291180 657985711 907022417 841436578 97460924 843552248 308468196 459418062 721073207 383777233 117720658 119081112 725213818 74230759 843959890 639118882 952839959 403348441 170796652 747232970 989993345 677029877 854934004 522970913 733155764 580605592 348567734 462323255 907817803 97449319 752213704 826985105 517320009 584629578 997615811 445360637 630969834 914196466 656689130 285354118 21588728 371989715 76846021 80795185 372151916 109931181 582834204 935468866 328846193 398888448 948896860 932454546 255637104 824785510 384277193 955322208 336527400 932056205 868635155 43903289 539194078 518851556 76053468 684103518 259834097 256146892 943244431 484818622 814510512 304749511 561116940 363235571 668406200 812107698 799982733 994458013 690700361 946125842 541359931 830632726 472744980 327406465 500958563 230529998 351633217 169915149 803211340 668771964 487407470 391882322 883292208 68841985 461423089 358100612 889297642 875266884 22079369 718261232 725515325 407901139 674449788 587822508 860853765 266145091 608022851 679650815 298204956 474311373 964071416 210300687 893488282 485392751 715432835 186281106 78302915 808947644 280330365 42838026 737306234 721362364 748112567 332881000 775126691 359010069 974059319 50483570 279289447 623326123 602990076 288326156 443036887 37222157 449440724 964006233 781357447 295237930 16975607 66973983 906623292 245070271 270589280 389260441 736086689 667976987 672762228 756431379 507822127 116407311 868297801 91313369 427392738 327076965 532801029 219415256 694073078 660307911 358359336 880773824 707907012 691000825 266585559 456703085 174061360 560214631 866027311 213337108 326763428 743056507 405042549 149442943 427216621 937067971 403703908 786085096 283731164 938742298 719665173 110637602 361881432 515664998 524559664 607733958 516747302 507587688 560879913 487643446 340668531 14584164 184690528 726234822 516927270 623287159 371523424 479022901 160991470 683692434 432620912 719931285 417262464 810854347 282683707 923139705 121636630 203063546 214173027 127249636 905284000 555627487 401009614 930300544 286401161 473394277 112308825 141857984 612852033 399095390 134743143 77368581 541000220 624010221 861412081 333835087 121467821 127123586 523650410 167430999 156031950 573523419 462650658 709442260 343742980 47540482 719642861 206873369 106927280 536647145 226699186 184656761 868306032 934401722 298915127 8786338 44096973 111963908 323924769 773119575 275735076 824108184 526061571 836901792 586633575 763044658 821126819 302401643 619874799 336125657 634991752 895923910 221049298 709175603 893596706 403615434 919308020 959862292 246891648 657039373 598820100 191549015 795579409 159732020 484682824 440909941 367154061 421430332 721029710 354473847 730646952 341738908 380314016 233628471 262450767 731860040 688225881 205356283 4623806 240207150 583772947 47096525 602510845 163721439 516226842 578531799 4632770 347606358 654394988 588684825 842565349 246284635 344554274 309961681 229726814 553050286 220835016 149823293 291974153 980962730 453517066 696703168 561373418 386074152 326170184 591696251 287441267 369393200 30373157 384223081 95006870 353417089 215856089 184911291 675677807 45019966 170284499 47629953 595953858 199907239 596733123 852289862 232856273 300800445 795871510 765013062 412118607 346943674 333663308 637642361 694047504 179465001 138260239 611988411 631411041 892361517 289404931 844644946 515974620 664943942 352899695 152570254 499233138 256811411 970393051 556588467 371199518 98611425 246888960 814503466 417891230 816120833 487681785 644344887 221471937 309578487 404267404 117164949 864014068 438073610 252845592 763688687 571255644 119117813 253377258 366709882 891858698 374773442 209315609 399744432 683494540 751806680 615895705 795169316 236075431 283454258 612241595 358308179 6155983 469529566 561277264 651368784 809365014 308120324 269062204 940966032 594950071 940255021 365457681 324849072 11785899 678654423 47662366 836391262 190276181 785421326 237576262 564438753 719667732 416700556 507689267 233863242 238366325 342886186 512361880 503184132 8809130 188123219 963313407 37656110 566399178 641798391 629810826 553727723 422448987 232350810 251148493 950138388 556004409 194574966 167367598 496708767 502138963 276389757 421393421 232996311 2216004 759608660 800487336 2340728 198191294 554983424 907650525 974126137 571675814 72280439 570374903 982941835 478214106 56010376 866525714 417313118 635913914 763899065 35092941 23874605 387298051 569337887 526524414 231337672 813437202 310896304 241674146 775356666 162764473 724114437 264956873 678566073 758826708 662809037 934957801 975062531 431432569 550264619 305229723 62576263 829061473 886349239 180706130 443588559 533283611 949059599 454979531 13273716 202602674 177360923 15403497 662385283 683010536 576882566 743483728 349461317 133564627 19494263 117901049 850488034 566486506 123387742 723311485 542994561 894645611 117974611 431330514 950156991 801232619 796414156 271578510 919081936 740275002 68906191 470980807 203345387 983327772 245548554 542105699 110930709 521299115 538040585 717928727 379433583 312244963 895002475 240489099 834122587 693957148 972304445 789712223 76033447 502625354 211657692 172915461 287753085 833547904 752968387 805129774 186661378 51864575 818280666 291986511 726678661 599684351 687597926 676424593 215487891 626517679 46504614 801309269 377601585 70386762 138598902 378551938 553577706 32516431 84317633 681934148 806591264 24587187 432039416 539705269 317450580 21589528 430748643 716150808 361538697 292698201 221206694 441634691 140615369 677965415 784335448 639653263 909581549 271872821 434552668 446395051 213281478 90514106 249163935 756307477 757251880 921286658 686563497 69879084 367332707 273506800 744456120 139818065 299459104 65941730 485607745 235058821 937912197 273244715 331293491 881096167 363135104 319953091 35237609 130339395 836357155 382127824 465480935 230097701 674514496 585643725 928672676 420210764 998190183 208266807 409074385 756354390 819297955 999399284 808585500 807351234 285401183 577818970 460055230 950400115 390856547 722562689 273085550 979681683 614275063 544260213 440295327 865957652 366787758 226372152 821793909 609608241 496891593 964011573 94833598 399027286 895007214 545730528 747432792 405859597 227833189 980472800 139012718 124154458 435169576 739042911 105026026 621889762 825222016 619619286 163388198 881917184 702036663 202180817 339528641 854525152 29729791 492961808 472416397 95617799 948386878 925706105 15159740 919851844 994565903 547359429 840992802 244151524 335686707 935274846 971663507 993448566 122165320 230548263 934181504 156290453 676884808 769526935 508111207 150015208 598708984 347086070 797308122 575769254 821380925 867750763 898790443 453007876 26559195 469225513 851687833 44432455 641314872 283408076 987695563 143772696 920221260 705238910 46579342 834321469 515449448 431100483 994695681 635498941 27072076 344481354 482507326 214817231 493372207 920549257 86198676 540866993 791362355 409360655 914556330 817370601 115237861 740646558 938348313 445120531 622528236 8999379 166586787 207088284 588724423 718817694 401089130 336331711 672153374 604498752 935715842 13752591 894010418 238438907 741350441 154176736 737584257 594123383 320766866 684676180 798521112 381452580 42465903 572351892 645753767 194617465 87171485 20245250 557127105 120768559 770919041 130915076 298207321 94268950 657308928 621532614 81557730 763302605 157167700 351463830 962405315 49718299 282770002 552404949 432989999 469781647 540396815 571849494 701382736 339999431 668000793 713475867 290642901 633163805 823324702 579459657 231515489 672557535 616800973 967712028 97651838 815056858 630094189 208279209 334267957 988628464 689709768 794919889 161264397 798738181 690597639 704056675 217021146 88406128 725315750 321410673 272533698 804968986 99631298 231894259 597491735 554687586 205761812 724423735 857531942 79761178 280197279 718365944 111752376 813794728 696831857 827106094 695751139 414038651 280429407 282474266 916763557 731684641 877257708 338031530 793611307 882188541 372484072 411872986 990231415 762815996 830048965 862576523 233347287 148253654 42941776 525251305 715765280 208221089 817147536 954318754 327898142 287308815 265416776 292760954 267508487 271448416 691408443 237496599 155036871 519018217 429848929 898409983 682530004 531449911 542522744 495618147 161180505 285165919 99435361 967730272 949186159 827919898 894489152 470535948 167199048 871565249 96064877 890998838 271364693 228082948 700531370 581714233 494221157 319691144 750678066 631457600 134411328 719054540 929959520 13563354 411832972 445878268 661285752 933084760 677556626 463432177 279787254 119250583 600074895 559211314 809503859 270130928 576291394 886689749 179733246 493337648 435988671 679562031 792685641 708852768 926618767 643294518 119616100 982089731 882334636 201028948 3943006 42422267 963350668 121497775 922249050 123106646 103686877 896019079 437618202 56222453 8274606 831754470 346438970 191644650 543028118 127908652 375483015 835907947 96749800 577831367 351504143 926514274 594042716 742576940 633406826 250150989 889726231 570364795 686132449 679543126 72888230 41230470 858896149 342398430 209183920 364878817 737887448 4609022 578920309 751391641 868567035 473444156 823422744 771137931 577056985 149177107 941468273 601074322 563096810 161254869 189136800 777307241 441632027 286580639 260848308 695739570 767131609 955861462 350739255 42277641 774067219 536048679 899918125 764349663 958814157 739404790 170553244 813187589 853496817 596684699 60863820 809680388 936906260 796908960 4166730 138624757 689182021 18975345 360946880 555181218 680316611 965932822 517926319 853973624 308038553 849579330 142695811 877043182 649710880 925708525 156185835 733843548 200931396 516455695 481746234 174458449 196992750 311685837 243564052 777901942 538812422 538205351 993471730 594999642 94490455 698671603 156422164 783483418 836499034 68539716 895728487 829932302 332064059 298673789 683981350 689064093 146192699 586747139 191771612 754863096 662768200 498991148 399468078 999582247 886209910 390797421 904590421 354216228 959864600 671346316 425016949 384474216 967516097 906389305 939083972 639890672 964500181 220684264 421202305 956436907 867248715 602387890 525790126 76414429 616405109 537605839 450364123 423658715 373916712 652957743 504234265 617704820 724278224 373399813 373208461 718964715 910064083 407136098 450611731 351343410 727527316 318428237 42409055 26921124 818808948 840677012 229704936 395191554 443473837 882312552 130353702 224537007 837483184 823881517 128353974 77527482 254981006 247153257 112551698 138356324 560637384 92290612 149421708 63061358 370558996 214769026 443731215 134102824 160791300 259586405 504093018 984144968 982714748 628226694 496144419 728806844 827368581 98827889 475597254 842010562 645024205 243057406 638603781 599861113 633632205 29905870 658136493 750402777 792709608 415747679 289362189 232124538 697523717 191428068 868976971 938555750 274657095 80727328 719367809 195177907 833135134 76999976 476016908 659808648 263792419 954152943 111142361 4431677 93855825 900919736 886122655 776345109 281039869 66562266 320390539 268988266 572786533 657316341 299042224 496765119 830405895 325130506 154080615 432878128 382487228 548756194 600986877 427092779 238458223 700531247 207360310 626479020 665718539 451710871 808549858 776101067 828924947 181597904 311941599 858345418 58079662 407757348 43568965 431095097 921658377 880790176 374964121 104678268 588840591 167075221 42108101 190520184 369594137 829650790 53480371 497469618 515167849 571123393 887794173 79518701 421374921 707226949 229233268 299110788 114941302 383795003 605094609 187152505 958633769 145427189 279087824 635767854 905068063 825674159 905161471 753059241 757793919 700664903 300711325 700478146 11457249 830967104 607068683 713071085 879143897 244818653 468119864 642249593 170844941 179867166 316068732 581537552 380464682 130741615 887827646 12848374 438064786 870429287 841312077 789189376 324043987 750746750 416254023 381662037 251118633 791801849 597484712 521184937 825033125 640563665 761118908 225199199 317279433 119576894 323727978 443655894 959274621 99042090 554322034 376221800 933461570 128716601 157095102 193014260 619068604 171422592 177867109 386778885 974948404 533300013 298729132 755702379 212994058 266909272 351350206 898021102 996847951 629189407 281590592 55970395 429981281 678169093 629908711 621331926 653322944 887643557 259057259 489757294 717689401 981430025 644639590 888873863 882301980 861169534 877476342 407221983 909765987 443277673 949494656 261291502 663937000 977135051 96644573 624495302 875715784 740903633 62504580 593940884 87849097 330335648 862960822 73486096 829455294 163664075 911886234 920632424 585001654 489476420 620445424 897106501 43035677 606182141 121795629 229414558 168794616 360402158 71762972 376913097 660267990 80811175 115280319 289475019 277908844 493458734 533083697 932109313 482249422 234890738 530080661 516650485 268987321 443899995 842780262 244048385 956527774 667115049 125852865 539065278 690247458 454454533 797007396 888398524 591763313 525092654 194802485 679895309 81043249 571458526 77968805 48553594 116123585 152436642 442717599 702188468 801419569 612601077 461054089 99394886 843817946 278586356 798598562 634152878 259354735 521969288 225136370 190065400 372937884 598260610 834923938 963880771 223617685 689771696 921403002 112430179 872168053 109215763 983875521 304711588 941999790 778349368 214778994 724321944 559214031 205373088 460647100 916346510 507327212 649061722 763245951 989833357 421180188 162203901 378949037 945877721 861583847 569306123 38691235 635163896 843220044 110552482 285403062 641394108 990050915 411960840 422313880 401974374 256851653 312428844 405085749 442475645 700242050 141086680 480515959 639254306 939301481 678906000 708787942 395001798 408385878 261996121 293163903 332732891 451909714 855799699 88374462 390163381 120214108 891091020 292465274 999368945 849867099 515476972 830710420 128262294 277668860 413894603 689143797 822664749 333811961 919509094 420895483 401800961 973230717 638037960 918780872 229785832 160362670 225696618 675354949 29509831 191102732 893255894 675281130 474676661 214890955 4754529 347144465 345564708 416301353 845451997 140112803 628253612 887507575 235057073 20999176 63092650 74918994 78880202 436139981 268019991 67105172 677205790 192334957 280013577 9637582 654462208 931053500 141301617 654525667 248448263 999363345 98823617 691045411 659898402 757547254 485020502 557955686 209975723 462643105 26510722 718505902 875719275 675713014 870605086 114908112 854999287 739319062 711234270 238812373 639324640 90522331 78233805 685016560 529730608 345919309 612757508 497256984 514220490 797961729 376373534 354320134 162008325 554614983 117467697 396355957 485175403 785610255 919586001 985660673 205720303 964224025 705972361 61385118 477762800 303267723 395063093 175851509 308967596 436299746 257365954 71341426 603944478 952618703 77782089 241713383 159838865 518776568 391876567 831096207 829479850 793962019 472055394 23387321 807116032 685500301 391678221 797627992 914493085 979143313 716666639 146244012 648368927 975620297 387242892 917796388 571378781 313384537 807777895 62869187 755242509 866685716 773166660 710547825 147614962 434295443 347754503 704830919 497967884 86989782 883943691 885004167 193827543 881248322 667158167 53759785 520774340 479076271 297376944 304801328 96386753 632035104 176982270 960768228 31493349 468813720 759206203 264306024 728861705 641792940 235732524 519669954 803797320 136091353 555619004 801583120 910499927 34948655 872616164 672655201 412044075 973253041 127809094 379202579 730609126 603367287 298034494 222456812 253871511 933911410 547381975 581061414 825841974 348227019 37080797 94883429 200159207 302248845 754844871 909263010 328116090 798536011 987816331 169732871 50085768 730012487 391862688 990882322 644561093 623980645 884254290 530970522 799724494 68652699 873381980 364062982 227591486 210517265 347115508 310939726 464349973 462935747 411165797 50115102 861521550 493701838 320332775 128575634 839994125 709805739 35956968 995100349 841277267 341130781 886088558 805738616 636374459 31996072 190355939 681783033 719410901 747173317 385827674 669895377 952751366 127432974 516501486 485278318 550783314 325735846 706540702 458749213 301175436 432737104 904912682 372437350 456018572 878287347 692449573 955210107 630177809 619632377 561320742 553934764 394892495 160124335 468364127 88117267 72167556 514875897 879212665 545649946 339391298 599334063 22391480 883265777 269699423 379306708 714208139 802630516 117316359 943282817 529505604 994012475 296280605 194049915 225741491 243735677 888116502 881541896 270918006 798987804 968199619 947364542 814885041 649838098 540068204 123903782 167391451 331588607 240851847 204063397 957467954 962654189 99918901 977612350 328046532 319255215 261882682 431898038 307672240 849260208 944241339 845601055 906411238 491823727 830267554 616538181 156822976 88414862 310253858 763826144 272418691 489741644 704081481 562407941 649478857 474527785 435753618 312471784 484467550 829132842 613851114 428388220 602480284 838747463 301016777 243301278 484642929 941377651 783416607 598405490 736438127 440392622 470234866 204903964 747911171 77642478 394396979 536669443 46052188 849727740 593137867 297559782 34959286 622876340 342301644 368407563 393000142 919268502 856517387 703512753 255168256 31277063 191106037 365055694 239443105 592040619 135295734 235946992 464219298 559025648 539066780 329526556 131817102 325746861 384003269 536866112 200471436 675727606 684368828 835701945 837100019 85011879 427329474 186168919 695251973 349218436 379888116 66690037 221355639 482827865 254504332 357243646 206821377 985166649 586745755 953015785 29316283 592572199 120981613 522838038 758436376 557419977 13917018 849413845 391159748 434897068 522862581 963535749 964306501 781107051 458853525 692366374 973506185 28760903 733256714 191470206 515454409 693415448 750202928 494361409 723383223 541780158 508553691 374546801 61405989 991221446 805089551 558013299 124336893 84307261 438436599 863480282 436329610 397983862 536555542 410826438 334952398 846749575 814534648 724360218 178447679 164529969 634137902 460337515 340734196 631313452 31817164 639486240 864764420 557341099 265081835 522957649 126567253 934050342 292581026 813358367 996329861 346365292 257882437 50725340 266382255 706173544 769527906 44751327 476703459 533721072 512251041 64281530 569701065 294633833 409358803 714488848 297639060 442822374 576791289 706591528 57326686 865844297 19784295 166059651 592632254 951472430 848557191 243366023 443314462 93989957 689148282 658462004 711757582 637886359 108014616 550351855 296130850 301027839 369447310 986570036 939175943 551775630 878006880 295290829 192490907 277621680 59343480 354070796 18322885 495678031 15036300 280299248 316331439 916093127 553631379 782658299 648245156 720487749 529718289 99551975 948672196 607739589 354067902 390407992 951100954 462581201 635021977 248099219 401885322 804883419 581141725 890839641 150132089 852953201 157523387 235950384 379092976 327162405 954372100 348187351 762855172 719471333 272181698 684030688 774747999 842820192 4421403 616486520 450744352 390773537 908433074 615119827 996392151 681435561 465855305 427331512 774229795 705050298 675947946 313953062 632385228 128762863 826976775 505421002 92016798 452603780 410917852 783386804 601341609 657972733 849654737 127094057 781598513 101759265 873144852 452738212 753554293 504848271 146289174 673565257 464384543 652281858 637641182 846659029 778026680 353746448 747174718 329534413 23010387 594246873 411969794 444623643 842419210 430719227 262521169 512760687 79988221 195742718 923631559 691625133 329778337 503476064 879920205 687260738 564678272 293148324 216829226 736513235 508530746 70273641 790438161 715169811 639914528 812476645 199735581 4327573 259474336 194828364 957812491 981359217 107759458 864485369 441460688 694733948 572311856 167500324 599389339 573720406 232235369 870081436 867666746 596806499 946036303 31586330 109100312 388398405 606499257 633248839 937250289 114635848 482692537 640157669 705857647 779382225 54952340 471619290 482608567 893474715 18567427 867942341 193324324 770950072 783344377 714535306 438226230 695431826 549985556 88375091 778981874 577826169 538142141 710650609 802846633 271934871 517587539 111048602 199247581 515150157 261728451 443113636 495708125 824305122 614724382 567566253 983333398 875184792 804890699 252680125 751456862 591617444 538918200 788072107 829784281 211299026 851681657 745526983 967892667 304159791 292456836 688994027 481501464 519992934 548907941 31082472 563888088 233644786 615559031 902969102 646130316 268749419 257659699 694096377 88476599 72054098 189850563 205379171 441233180 983103775 263958247 55147764 813277713 700142856 179233681 666764976 114975943 815722053 519755896 451898447 975332596 6710509 528644689 299172909 362227171 747357148 122761162 853500372 620999845 850354934 761984720 846035437 367141971 604689533 67669110 422833576 358704336 439996086 220022308 696511789 387991610 298629466 101541101 611433057 893376885 607245532 943771272 569895133 298786983 459185747 84231064 793349361 402131073 712196704 810364171 492920816 46048241 116211862 488986576 19506011 341736067 422460846 934134382 341581762 794339479 813064157 821815284 162789367 176853627 230346196 512804970 674087114 464220702 545047666 804496000 162613111 128664564 978075567 761191481 142706592 600244078 62730853 816051589 83087801 797789416 476924207 454823865 882752561 748686994 527410130 711619206 377465438 841446480 132979318 392020579 333927790 771253318 227176629 409062937 341826326 342570077 443283978 226280877 684046757 609661815 897235853 997527549 282224092 889507215 761996241 47863160 993170436 384289666 79909800 785048603 137197555 435928832 171941132 168593322 219461030 189334518 342343116 607466959 299629138 842576909 133887753 263903356 244453291 150420237 573628568 28330127 249289541 353471038 945584657 94505376 286157014 782149226 735101846 646644545 370485887 384787584 628948292 324983409 2014569 442708048 744250684 21912476 873962109 207988848 819020802 508817787 394363487 814775067 726480771 597702649 307894901 238814666 573466559 334520700 739060133 666913335 622139081 491699144 147906278 102649638 641432158 493029910 343565154 787828464 707605040 211547321 150553568 349123301 855322796 445148601 472390940 796225139 59190580 33421826 530356961 486786655 815469496 786206888 115246126 673180310 647218202 530772169 961192208 663117332 652726549 63030219 560741986 189112791 637564494 251698685 914065580 854759669 166771864 466265390 24117196 193817935 260646694 153164140 653150194 225202326 166110188 665743552 404365859 328248925 463953439 609178400 549002976 100684244 334156688 375440867 35020099 907379834 957016487 766089807 2515378 454282882 209168772 835439031 364321842 813834287 158746857 422994464 872867205 69982966 293883796 306872858 888743256 278277052 35504086 427790277 533933968 726020949 216142281 787319217 121853446 142567827 546259785 757790332 28905206 939223908 790366265 224022221 610871882 293014701 352815719 925222700 236545769 336575112 709727465 159710410 12060958 200583467 38653784 429143322 61739347 871131879 546116129 897461977 618566166 92019400 24408510 863274194 869464616 502814221 928862821 348339250 94349273 534706837 360651004 643834475 313586593 211747121 820901521 447397106 342050162 723887665 559983782 624620547 48279619 866883274 74285022 15169097 165450528 820129698 4198944 724850404 478294997 406285542 437059126 151066796 316196865 379446599 536213613 713658184 525489199 751457426 762413286 922535121 584053820 279174594 496621159 421239907 637787495 953212880 638881787 850679858 264636288 275416146 432197570 166235618 610869605 899283832 84451589 917613932 708917254 410106378 354844459 932230146 129424927 136399852 211623201 736167713 121910053 357517203 14663077 766217846 111616806 118777119 150004890 957881998 538375674 778928514 972183336 761766306 408112395 586298696 697138649 605664554 904561042 572572039 744081917 231114177 617562013 277675289 391812234 230433409 829726592 858074753 597900618 438894543 491700649 660513391 732628352 441540041 210176696 648659975 520817875 958671968 820909230 850189124 167491631 505395353 143426235 606161899 758796193 817326776 570751346 709865358 644275544 154555677 679595865 844267432 21112352 744609883 1257395 120638584 173118692 102669355 265841733 222718280 675243129 640501766 789828275 766899921 863353703 79570338 932583598 917535995 475529228 214833708 953807723 135639771 964242920 862574113 422842236 669890339 169021917 651474429 681974534 217345672 94827625 560866628 752816546 655932128 170142540 464328632 89198000 130373706 822279920 958189664 376245341 790925676 576582846 752656943 123521546 786551390 759456074 716201372 329810070 256421999 705026776 144200075 770236203 453240796 413940269 931588270 229827752 545427664 742062143 6361455 99016005 317264768 773169323 317201143 689268992 935439913 724987145 226960001 118493651 784880061 302834615 762506392 187768973 753439091 3907908 124032575 578659937 423166745 759951440 44054220 929472988 710616623 703140104 206402098 868714829 751463988 59093374 734704927 916582406 960580427 962712731 892703923 252098750 558111834 31130812 491032217 718689841 519949639 514385990 495121441 37963280 244938644 185909796 961044525 950698609 397300875 355387897 693292202 782431862 199230181 252652086 773641905 831777424 886589813 27402621 72858125 5099880 871198939 740990502 642406138 839163104 233540477 525798959 30251346 967446602 18679409 150640315 915665558 561727462 414186600 692393789 262198970 644760663 707580263 915166708 832479289 746880529 598588340 219732329 820013929 816904597 668934038 583275232 984476333 870441405 629258658 157094061 63183385 935786604 20008993 785611876 114877774 436191171 616312502 343158944 325008366 776144541 784490756 561130368 416957709 135506934 332993360 621484225 846670318 785727194 960734300 449309202 262333463 317229075 376282980 942187620 801802450 304838225 995001063 706750723 509523390 795412258 757416791 137568891 266384530 867733586 793293609 841937010 543516337 170007563 895977034 606832065 566248162 448998675 817948071 56290597 988846203 117653167 101018302 912622499 538732256 474398560 750072981 64544280 340384950 285810431 919776780 740363030 926252076 898696907 547644702 676911110 192778423 95060542 357519304 37749055 555035515 847809934 38007823 374988013 180582155 692435254 128407270 363327999 758559822 502002988 593213569 405470468 471734602 957253802 922589804 946846071 403554866 501276942 435003387 556805010 151112359 261691635 889653458 869203662 276892651 761648464 753093059 577549466 862386548 747596455 563394413 182691741 934561180 426543820 996045409 566414111 140839046 664127102 681094664 300224942 762031666 312761076 954326222 266287635 448604561 869776725 300782534 798498350 271005409 880600928 398308376 45781333 875533446 916139563 60213044 751461171 769253576 867230357 982685553 695830361 309679226 805279803 96822797 831591852 555406072 609888925 752180698 459994851 359828256 617838164 836568272 246068434 977245671 569927400 73710405 181504228 141747772 67346478 573837071 404414070 22551866 980813790 266780664 574756814 270405509 487936758 606786237 755035880 341407382 167975178 937509218 535825701 749765723 116046876 770541474 525877880 898428323 786266860 844533536 647446322 887625895 668847569 84763981 342582992 768611563 142952116 703965864 870619665 232345866 513099895 924954496 919052858 494890525 685532880 368821436 714517668 965333056 630654099 690853840 570082284 939948055 384775891 558297994 329356779 382756156 412573316 425448684 797334841 997116454 270999561 54499123 283990634 172999633 566991951 406356841 121017704 646881850 404334364 753817516 137652581 861132508 709972340 810256021 942840883 838933869 587818993 772891040 545787760 795619114 480415331 193163586 309210433 963267175 842054267 339592062 583070385 328559105 335414091 359424181 52978812 146175140 130337040 65538933 932539142 435877591 633634720 659481001 328894205 944199858 34690457 845172947 223726457 26906635 173005386 743279184 151925189 596004079 370521431 939447256 952885200 686715683 837632483 335695078 639527936 688202743 521646165 90905901 607567796 874918574 539663666 337343020 994831688 173770417 695659226 381970775 539675981 964731778 713123739 206490114 512899460 981918742 234814852 28521416 771894875 802411977 35099539 377908356 63462337 227297670 229351305 743725151 22525061 700615909 866595728 439142441 377686813 404075733 341246816 34678788 77691382 190922112 535775677 814083478 455744943 996195618 707283905 846936353 729751336 917995345 466550370 155667742 328285427 384051793 293946460 843510239 476248858 619235962 679177982 117746654 740103329 729217006 660228346 532703602 137798954 102540901 498057378 622024 604822577 987491610 747709291 65107130 729218365 673790579 509624823 898243179 809847955 809972968 769183396 577011406 750395119 294135046 96448551 511389400 882512666 867129418 195063769 569183825 347234245 787996858 385475033 338524132 124320046 18093550 192499491 546154071 639515267 956327078 938873878 533656184 663838741 311514900 746862459 528077600 362923135 997912699 380357081 613699991 266455801 534787352 222102319 272030804 876918099 306857606 214164742 219750898 19177781 795688535 119652379 119059902 819440562 650340881 195725874 52803186 2751042 981140324 873442730 473939608 84967286 396928041 645007045 285313702 261730983 544416725 929248242 551949581 495324501 426161562 256509811 533370399 94083063 97537557 121550510 757055706 807330278 594484312 502337446 31486021 429246871 872458932 515622192 135653573 275165255 407727327 847062903 84957947 595001083 111474396 149328153 69777363 175963413 146642623 758950083 513343009 455367885 611500894 245901608 812004772 783034106 185314680 592623150 792256225 111839881 170954279 844232233 972688431 935228611 658416899 542856885 96356927 479988444 433272095 492798180 916598225 41166758 149352661 933619048 281084587 454177258 822831924 258771580 997067858 721519700 499144484 312958124 77672870 727503425 876894448 710067360 627486709 631002671 973822291 125525107 805008805 191340670 211139247 970051842 664433175 62561954 668959558 173153502 355874864 966930776 351300805 354358726 646353690 758686805 625667178 745200831 904373497 600967176 191024389 97145033 581185893 814244852 961226211 683604135 964172737 830581996 490520325 672999365 473611301 250116216 826933419 544726800 824690915 212335167 963594974 279877178 321355683 623031718 237682444 391386135 662486578 297083952 949237685 111318415 456484409 621002745 327401351 735617767 295746280 176829552 842948428 273429320 307319775 600532413 232493245 913911714 727749027 587249497 178978436 149175842 785602085 111506261 27449380 90876051 526592180 921275527 327373946 325689457 884972075 715503504 276473300 85511947 631831667 307900624 292932323 887903770 135841189 852336298 656367707 16730473 874866949 925060965 14795840 684445656 891126686 408011322 435561973 638727083 237116034 144121615 462069742 742223976 243515315 880973858 737628268 966303792 31741494 983345173 357288240 799325883 288508540 696724322 10619202 770652071 59208629 219311052 819731065 550870076 517010604 722347510 951820990 304883446 604936023 107509966 571074690 483611492 616677943 930799264 198332461 335304112 285085123 963814974 557286243 385680422 245055496 522941675 822709784 813454533 264905678 151058357 465774260 62008405 628980867 732351559 395746837 282951177 816885944 381952162 654110142 942005580 643314276 635751403 68966366 238103563 41690433 19897501 344044942 184346637 451757890 452361664 433531094 640899929 431415642 805948726 973450777 738955183 336867269 65271253 523800972 392495595 511095723 175103913 166204640 281441740 745885380 368423092 552384745 947093394 196072001 144303358 264915572 995379431 16962109 247719899 393424813 517448211 132984581 617629682 828720581 537955324 659000361 237457331 952339878 642110126 191918897 575899312 908503659 231953472 117984607 253738351 149348767 487092692 334778283 50284517 699259278 65190947 320590249 379836027 716968604 233471513 497756518 726457940 680784378 190320506 924001041 880241087 62983219 528360897 569888270 414952307 827078411 380258562 510596825 513685508 763055340 315005159 957080819 88567155 900441745 737615038 327284329 453033128 877488921 867746769 245305275 837495337 164215251 273355339 438733393 986561424 588512227 457689694 248357803 533059061 100140187 775872181 671278757 855186717 737272484 871724536 160298188 375006184 125239575 104065849 42757845 365409364 785483958 340975194 845697182 915740350 619139461 805238893 123680335 260772306 36574525 729760103 420737843 733328637 675121147 432356358 651105876 158920798 445276429 552150360 289043815 606259316 38229808 983996307 62858892 882742655 394068021 47273327 587552443 585165765 220189520 427701841 624092379 500278588 475466072 467772518 618453117 549383652 735875310 926030016 317469194 430819412 524821468 533123087 688394300 93046850 786337046 472312799 963670984 987641541 328127696 181924973 157808957 405503731 545418874 121028384 115239707 128574019 533245936 725629438 526646183 893024141 914670946 326611848 479501566 965406664 615948533 466433600 314279833 421660187 304102859 832330267 152519723 689977667 43477946 414038436 864501306 77959895 524244469 806679242 827520757 285390413 65756386 340608474 980352968 56476357 917297979 826886404 386683001 544597093 208109942 967000729 724635039 337107039 210735084 881472336 190354777 773470383 970048651 715407463 866022119 607554514 797111701 825897120 836384227 474090983 873594773 946821210 258041106 690227241 766144594 428586553 227867280 111737002 554131481 39183007 945659498 14177683 142261062 522973792 689134340 708529073 379076749 376194542 481993696 715574000 835172421 299831778 348526025 691863633 189246838 32024930 905453451 549188132 657536765 797085721 424597147 396728179 940313105 981448470 399829232 744634400 927654119 637178967 421192618 633649119 179583569 184881372 149007002 906865259 956843349 673231583 888507573 439494825 192073562 351668397 937623167 520878121 546119971 321352073 361920082 858910817 961065237 956595823 960248824 330582754 224737618 937735752 18687569 408624545 693021618 268718988 268275443 461043821 664738892 504387285 27001762 68146361 943341445 641719331 162199595 353799780 431580833 363995052 376905025 824672213 445141216 452747272 216624753 244146323 817539627 831873029 37180642 844205927 783003008 439069021 747241908 863234976 76376804 932245696 685913724 496336514 417317140 375894966 817917685 136218621 308423440 63718571 369889156 731963425 145236360 102075903 567486207 538902456 106994370 165033803 839261820 210520388 190402683 498136777 611458461 888433094 766169642 439559277 74408354 557712757 327432521 804900808 403536969 464605798 365651950 424630075 88589198 534344746 847935617 553649319 138436941 450277656 841179376 214131803 425615189 251837630 633574886 708497659 728019053 138744642 861297256 900440763 604688113 605591551 817340818 743470890 829786643 323740815 853903509 80068779 758216511 336927061 461160166 778436851 731612430 885693180 847746952 342458873 645336280 497574482 578380880 750321495 371321968 389595835 199576369 999814062 27462304 137414608 895342934 165441985 175081998 194354644 226655334 869109476 985911651 230751189 837737703 985752078 929709952 655074839 316082002 428842840 187609548 749368460 820274569 495443477 823658829 340868794 215986179 227527377 314120172 926574980 443928564 25963080 474964793 481503518 266335022 137561846 323923323 543620359 848322251 642196369 968972396 319750965 185656656 874647942 171299006 251998657 725930475 226574192 585876171 462367722 723640583 532715146 287101238 238681461 103926566 420930848 396158946 427723091 527249677 247527924 697166866 186622139 300873832 605554360 27965088 36142831 593485118 714721198 164366534 187902350 81530828 812062718 716423813 685095861 135180089 906212857 86527424 14133285 901227544 437878431 887417236 919249937 657660982 263737708 891556612 155245353 671874720 624685987 38165219 542633083 701122894 463837054 801297045 575122963 704141931 211115224 54680644 904160058 188396391 138407763 342358357 272444870 207396606 822077594 181353614 20241047 283474270 844894001 595415188 94628477 380665079 322846905 984297979 509403255 500887246 296186458 649417017 347900142 339430354 736117305 556192004 984458599 226166388 128545937 201531290 758633247 560776612 665972055 429899823 697145926 620017673 130494911 673837829 191833146 332463793 880418462 652522489 24898493 284020556 23973923 470914200 653396689 50488509 442488365 697404638 594909590 342547524 275440045 606951301 861162375 163609469 610012430 861721101 142531703 733448752 297137525 367794283 332905346 572515247 532846983 920509395 522246853 719243012 999008156 963511521 680526681 707730654 550366242 284101374 190459473 310038613 232099453 30897869 773013531 873253026 892057327 396973620 62802048 698642364 273269786 121714350 72456972 444279233 737204938 624844544 682731619 370047948 809263621 785644633 320474639 112256978 802087766 349201236 520372675 79234074 739801884 947069794 936767439 48147412 762566679 262724409 208375978 968354338 136166739 765031141 339828285 626744109 333775715 265865107 970735343 585415257 392473298 941440393 254817305 124309193 342778655 982778169 939684600 786131890 10695204 791820722 972987126 774212428 85643434 234684877 796242968 155912174 229634978 605762585 399805418 773192839 786400090 900546850 476226851 594332679 516243855 83331181 965145606 459239627 237101381 145079867 619040215 194036034 365300448 932393037 172829584 141254754 231016873 574825614 88308035 216945175 455614335 146922442 336982414 640254467 640724005 907572387 17545743 685986592 544033690 517127995 573808560 214886131 998691166 702068414 382828042 503382542 858359052 98105065 759242222 697259976 265922915 350977329 511532774 273476484 965450136 146686104 312017027 3395916 864952512 790065896 202174543 470661575 493636550 347676785 157215185 72998295 996485117 672510644 283384501 433119543 740155005 482603494 67164862 242550609 352734523 929075381 642104194 120077048 649455614 858118449 401005986 412648945 606741794 406997592 375215789 497677597 929222300 662853728 295673301 252939665 736985688 155915578 106009868 433804365 153360749 436183512 91862756 243162684 787643332 824443778 192220389 68388254 592973188 990287306 872411050 954161911 548089701 105825542 391611218 525957634 679276293 13560688 78125011 95655297 232770612 623610086 47462688 23798456 391774718 228461117 72614516 454084610 957254330 344178980 209837884 470231403 334594604 420552169 95599531 533787304 825429129 401691898 974421955 921365748 681403260 923926915 634550198 395347420 432001557 653601979 636609619 180503208 356272344 324707240 632264948 533140916 234590784 921885651 753823543 664938114 792627123 100530134 875088436 751660354 388111167 26084471 632728476 473683263 62264310 389763484 265915239 560249855 834434698 744271458 330810482 835863141 575954091 861441833 895699816 35182731 489957682 650883464 389707102 7296874 583777390 638011795 549543672 419740823 910901646 390030253 470247897 323346119 633954297 729429636 822449751 996140797 53261170 509335123 141129519 688790632 995913111 358955816 501298111 335161623 583397514 647029518 331725377 903996946 543293828 839388452 849027013 15572106 312934353 282014021 439890602 632367323 375982549 455187487 347462266 391328820 151656186 886810629 78495577 940844570 487346300 919502056 535687123 48737950 41407369 819957661 817479936 764393393 490103985 873765908 283134657 622163802 205930082 940492665 419796381 571683623 234624065 660622484 44873760 253783196 617841472 880347611 910296317 217549447 229750111 23041889 121850316 141454359 835403560 876041055 824565450 76543241 672394813 596652307 792974080 677609182 703404510 499238048 884376307 473550582 155992393 371069799 556778033 395590373 246836732 110023649 426668734 439129756 264801027 797509702 385411068 258545026 495266484 476091105 624820151 211917040 27073853 81868267 627221921 708350901 412475513 201140879 968142702 677580193 530981288 127506591 917929747 734744430 15090329 170810757 761561355 113645412 653393131 212107393 912705701 711598069 369392581 624926008 993677644 738521595 616469998 593290118 120571142 198990495 870706207 433327090 526255171 898662698 512823229 184797403 569978480 413308240 805138493 36270742 197097779 76135054 995476835 550704350 858051033 707035699 845252394 621691856 804654273 616721030 967546704 591824581 672888594 737957498 650394527 369406140 289915176 24151044 139154797 934628395 883553556 937115585 824136228 379596618 233020955 643668089 837309005 392548764 599654817 708041488 197762479 90225973 136293499 207065368 460950080 768620755 536922205 635026072 883225835 344608013 356327768 938122764 408405785 882675266 794338683 490731697 624866800 272651628 780096659 682846562 301636227 928660796 715684069 980864386 371718948 155716981 975833852 809316943 456134687 695101834 197595073 611615233 264669862 358431075 20786384 391503494 174023002 140022726 161354087 890639646 282317282 882469273 286748222 607967845 789149269 199408483 31453096 302775357 392566658 186752204 322013665 663649792 622796457 938873641 156424989 227773906 595149847 351141831 696683504 25570491 986673535 625703315 567593138 494619402 688103460 810378707 214434897 919348699 914680342 867464944 689198630 915868377 155354932 634246766 116079153 258296832 868588672 308067873 884524942 504578793 145317371 969012917 484686545 204853616 58599228 972503377 423871581 205236974 892540957 724096152 1761539 666191767 239787955 199978927 569072945 685808428 188268985 166712240 851652113 904453576 53771741 693539091 389870048 665310790 766109294 90118611 587440807 46756031 415836612 429863173 25973193 601378684 384448416 10980291 857626366 803094446 226360861 127875470 354792139 265180035 322576942 233319388 308276549 349613154 162691426 950150545 664985681 588970509 986024146 689270879 19980335 274686676 598483503 569558426 342351320 786415290 2212033 520683246 668898021 765642434 130102175 836336057 514538961 936798431 969780084 194745075 14245836 132833951 275755826 166619334 182001690 280955713 362581123 365929759 704246692 223337464 619139300 823494905 716907571 836372497 793076808 881628339 257964161 351689710 452651423 932587021 966739041 998460172 303002015 49976572 160777113 532455314 677162056 21504176 660909391 918611398 922969286 266384586 7311135 166836976 846012044 252561601 96316934 64422454 424092657 993803901 970994193 384512281 183836390 657407668 607393665 200585163 533547169 190679905 545798713 337695256 373502217 530315919 384189468 715238531 202292079 151461806 163839138 820113036 337135323 675638668 587304734 164332462 883342267 40883114 848545742 636657903 771551311 216069760 61972856 895458346 377714787 27316062 877613555 660975892 317084071 553090912 148665480 140326699 132225739 169697943 105704919 906313944 237087498 807212883 380742078 700203741 951035701 330318882 986361734 195487492 325575559 133632892 1000617 519608295 482243680 651769343 617521119 241491417 979032476 423458735 627544700 89419497 422796857 662559892 213641404 778341362 292598462 286396350 979276454 682299735 766200186 252659395 445667709 594773497 81122769 521839319 722598155 98413739 82632751 854689492 495898546 584460575 582294153 53367463 411494974 366202837 794830698 167562473 140689168 520699441 506405898 578024372 734558655 737342998 989332715 995141793 416129388 623723551 597267040 361153102 92261180 451300607 183101010 205055357 82700731 290076327 716309198 681337929 710071788 388462784 725436972 748881972 323533976 595875248 513315309 288817589 70293174 965354058 860988996 37922816 457656198 628064940 802697205 117886811 119265567 835497338 384728672 113405169 860592876 460850020 736499521 478727584 366000765 987070425 917157571 686894685 7319625 32797978 171560429 394037113 939469675 381712259 264113299 180034660 806401542 723290218 448055790 601373372 288122124 428188699 625255408 124548985 964465446 535976490 756996361 107507436 105955587 509598645 625464566 526854955 611048006 207596713 377436005 431579520 269305780 681529560 282297737 304280624 117186900 218563982 820150761 393156506 753509650 59664446 264023110 940541911 700368700 579723074 144432283 972697991 632882742 958388118 669364125 546616536 757986519 866596474 61344773 415576777 196720905 208223606 255729283 587734581 77463898 99409235 273864776 254705942 411268408 411218397 310677110 323839896 996803809 753307251 607138873 797479571 808041526 900041335 873671963 519995548 585311330 302644733 343860473 480211002 796450893 366879504 273758363 536712059 67429599 111847634 88507646 99987658 107002512 826449676 461692386 849853501 762239074 803904415 823750685 426027467 404653582 693887844 360264625 554759431 801542949 149390378 127024043 262529157 59546696 246171988 858167651 782806839 134406384 210021377 141943481 377454354 611222134 613666512 937021242 114611356 962571548 504217590 101924917 24014022 965403712 810443212 258995128 896053047 622441848 37617640 769624229 440994950 934177773 519720157 802875245 312814546 759007719 120813800 968768408 558623866 889523292 186553311 501205562 951512443 263532282 719194712 275680856 431683627 687831371 756254672 598035470 189523784 303971659 698350083 915733633 701926966 366787487 85235072 148476130 859072586 448795298 102512613 847477669 773930522 227910172 549438070 808786926 212530336 661994375 21158699 96599371 659102507 269034921 775867388 649646974 278272698 338766773 850945356 828722848 473034582 282508279 83097177 763980637 775870627 388503893 957668967 71766050 884205220 661855443 172712598 763882561 244099959 771387855 69944270 312149607 453366211 963839064 122368285 375817274 62933177 322736264 315199012 104785653 911823426 284238737 432914146 409467584 462458656 934681741 132856021 823194130 16827997 284347209 648301345 579560533 296999411 777689279 727250517 685617166 16803795 656160209 527199087 878086356 287548215 586205195 148277498 461174593 36856204 729904588 798945722 490571223 113964667 622083764 30683046 218258305 648783986 210797085 8377783 573207530 971261194 567782075 217685131 41072766 892361005 197448863 465435460 585828390 735434823 760253582 879571950 817764092 94743473 784870709 623205785 103860554 425439449 271376023 709077435 496250864 234575874 169663400 649721609 888943691 588146200 197738281 643840023 276369004 139060119 998387540 79166952 442717160 878069844 914077181 594042018 332488724 577936495 300988247 194902431 345275267 893943771 551543629 30557091 587316225 722708893 395156934 654965251 555433180 114871898 409310494 974049991 905295160 691259751 94255304 174773170 182242539 532906898 627988434 712397218 136738822 282238364 592936085 949869619 783004076 735559486 743777676 739480304 836434686 439368500 701070494 323071955 361098283 271402784 833562260 723121564 51812249 308402688 402311603 819291675 140888583 497988678 39774688 564191901 804187739 280941001 414305841 7690143 246825743 85461914 483254004 816362034 199436417 895950513 378110121 293319480 577112255 497206868 924504478 875014285 781061573 210741835 94220805 274724703 500296797 275331928 627340863 352753955 202594512 62142949 199615581 691654198 815833593 257577713 252248688 517335140 123320105 388011494 983323348 987330101 77378524 276593065 897954101 202325914 550230393 294468514 631771826 676351376 813219910 74194398 257337478 480336698 615161728 648452635 23897758 385363666 130065419 908851641 620081172 888951958 513978505 571068495 70123565 595517389 571187218 954872339 622687297 715906064 241223953 269059564 55403046 763566486 378514302 391344703 603857981 865473331 81865114 549806082 261589259 899993779 510508973 14668279 838201446 478709990 594874712 17527363 962425149 984213397 889094742 770856728 646041018 106450599 660002140 600574107 104107354 943963630 482336562 101774604 663084215 693877288 919516180 720633274 915783228 207878198 646655453 967399475 971816750 813136930 566548340 742998398 236948492 391336482 524831715 999038050 683596825 358759984 223295791 434616091 775121114 842781895 552274279 33351944 981981163 960677938 480235552 485138355 592770432 192785937 250838904 933751903 193306664 762642446 805826136 759191194 234763614 816952867 611224330 40504546 931723804 413455253 533264663 742764294 566800791 186999086 535214776 788337029 776066465 578938069 144205834 294732746 856382601 378070751 927285277 419236061 109740312 935419524 806782129 119829521 841676491 322806949 465018581 839953861 871058790 643477357 582755394 309005536 324485983 653508095 94738339 295262400 793604222 680405364 2283025 39538631 283495489 977662030 499098295 894618733 946036972 127862592 945387434 731198934 391740368 597193838 245741547 652449957 703689222 559567957 985544784 493198638 674022063 849432625 583137812 412972506 689544294 521590666 497551715 265351766 824416033 490722622 496289090 494944739 414708769 322631145 561165406 835611888 786762943 151539841 549285168 6862748 996307315 38125467 518292488 875120002 411317876 117675736 634556538 211256297 770678693 196448396 19005 566597440 53259811 150844200 34293386 478701461 7646385 952732430 686560768 334425133 352001525 103894785 452702705 834197529 962632207 141210034 563956338 922408031 209935769 739335380 994643387 744206359 547312615 302445103 9336389 298958234 273164931 981565243 153860131 799655622 777929814 395264769 669005007 765200097 276837547 759452218 197723148 752146114 514042311 843374454 890332918 844778682 139251971 290515346 349157354 422939033 929355892 857001673 880770988 940968200 233005590 786939723 5858847 217537297 581864864 99643049 244446081 357938323 14354843 235721525 450656815 7652167 3486675 374138356 836965277 861939005 942393561 45642615 362432150 662896432 725634501 655036687 453814245 493412321 818833470 301189067 53562158 884753620 740113681 735074721 236854318 659946016 381502379 142789014 794284516 829546935 243204839 193770177 798085858 852441689 184756568 622515904 186078618 10075264 67080255 435991770 759335931 141985222 603408789 791306987 359221307 112648333 814722587 630208528 385632643 97706081 954168771 905434919 120799681 577779290 60931820 277721635 195252635 58570358 959408971 906489244 848954871 712490247 711359546 907838758 919257397 932560173 511983327 737035862 64705704 75649192 926569118 639943762 439881094 529376829 491864104 176647738 181570594 3226853 87948808 574234138 87450178 804626805 608285904 452436528 204706255 586948530 858628864 643072209 857900058 997142955 716792057 22977064 943675985 787422468 627064001 320826982 411702506 568616594 727677753 895762760 591894537 551848189 623280904 230228062 993975399 360960722 709364484 175797121 68545586 374356933 526399707 523869548 611965595 625421384 797082415 345858599 497128696 151531983 706657201 733644283 189817680 2074411 948806574 195610812 236774497 795370588 378055310 159426058 183516504 689066826 468093687 779585852 837125484 630676803 541779983 867080552 830723493 669491134 968431779 902498745 428423320 758430013 619692797 849123954 328526468 229955418 833806729 419265941 157247966 884671488 944507801 262157447 343462345 503931447 221648761 965236832 424063842 108249777 167456209 789917789 879912063 350501800 617577988 859231389 589677611 599778539 357179592 733429855 47146934 242324245 448128594 352923704 658357775 952241923 361469447 303238268 721873835 963997856 291750914 554440361 583709982 765260045 689874424 834743273 47568253 591008558 175393845 55140011 526244280 548323990 244674982 864797929 234642282 4145483 137987709 481873752 977561579 547488204 198518445 544476180 322386136 573159741 114839239 464712743 637380529 828850123 265142514 726809982 195102906 863215197 95638010 618605741 774280006 61446287 636594994 584012309 979285721 704016181 106241493 906677732 90959687 807893423 468686085 856074374 596281309 602589619 376726299 205134 881768806 581777439 715213216 18324904 142484385 284508003 678081388 643708068 152181406 646679385 868155393 466655186 75587056 262579448 793489248 476893293 635048661 679158527 661964378 991007297 647263472 726931674 545531622 201593723 725139184 290987193 969546899 778169055 402318339 802351324 157554493 37440595 819837477 574458194 100308645 145288148 748290771 100476065 992539024 716825057 52067102 121990945 671638111 333237715 659611125 350107687 917097990 116169118 10090549 493873468 538093083 899778691 745645233 303615804 870869599 791132159 20758432 210996903 977733336 311628850 1697171 508137610 123104436 592097614 579190835 682181988 747561046 880326469 286446644 627400554 432362283 861637461 461838391 243873404 743085270 81400501 579972146 754888646 137502225 517984356 909081378 438417178 21588445 139489556 958092242 354652217 20130857 278480701 585427800 732834818 620575981 704534794 924779482 600244742 401561361 861781434 287515356 910757531 610483435 935714794 932282613 97694987 654757676 53731045 224157578 612055239 113786624 412557791 580873571 584352146 333775634 392800913 325497123 719501449 704892153 176256844 677430585 674434715 219067256 430950753 665679012 259999455 315559991 704881067 209023010 952731736 691884679 33512331 299310209 207524912 467320427 272495758 695715051 894139818 705821105 889991083 507105701 934476580 38402853 960521424 751049394 897210794 996537148 339909314 406715922 287832807 432715880 203940141 494806931 279542242 564442443 195771142 152218657 378366023 400219108 728671868 482074033 223559939 552271813 879246879 219330048 797260720 56455482 954902786 130609522 812817513 735559516 155539540 260065824 174759581 348286613 771337351 263451308 602803388 459993308 403211173 254636330 787350383 354973811 703396166 248771691 621150703 683718228 361379703 222141023 216518134 347852882 780152734 933440018 531372966 525505073 537972321 462701349 664392606 882418653 663441966 393841716 485133203 939859853 567752100 812685663 964546507 50051942 214174507 642496034 148792983 461508150 788170005 859438508 571547342 637393642 856426597 758068117 146836995 880260183 989327134 862357628 292066455 938986172 447083947 416523375 245451356 28555418 381700546 53758878 64922666 936584658 983882572 325889223 516191499 963791641 527904279 838579567 288303859 278799222 99441353 499056399 545550886 232407114 80045945 310128345 287787062 759015054 396616064 843716514 208108048 33612072 932642057 979109027 238493416 362677088 67532068 377030484 891948121 81973559 283992141 779223812 551236675 824180190 80959998 264402191 92967636 166588020 342154708 133573097 111352710 868631450 317802452 419633501 806003288 160624997 719923884 884148713 266058360 74332646 703832745 760653731 210281155 999223975 507035769 456516756 520879588 767585490 682084017 880383621 384965866 124242030 775405660 785860395 43384973 774477087 536562446 792038266 703046699 964911198 500216450 710288911 274137933 771066162 919556509 935146250 605176882 811805358 578145248 278031024 290289454 832121782 835066032 222280773 976935514 313365562 816819283 780453403 490188017 432603820 591936191 814324870 250826758 813149243 147017147 252086317 471732031 291160907 856824812 902325041 252066508 897310241 377773815 321790929 413177836 801142606 872129027 610657032 394121004 318638414 863832503 33185786 333659961 232819174 226112560 497817211 85495494 541918415 343322621 285877988 220457853 26265590 959845777 782613401 208943127 147442777 57617744 387733957 670098523 531377906 80972965 322014673 344963932 729082077 700751491 939449597 71015833 875163575 762990206 454985321 266357898 365330793 215485634 273965566 116266199 973662866 540988450 194090156 324907649 994331814 314713365 653576494 46544590 202246937 446851494 972243862 634244302 259730920 135113574 745271288 205644116 319341780 304195212 167143151 996196415 321431115 484295219 209270892 139032468 52666806 232525972 867415035 866928554 3448354 930778997 649323199 810297278 393276505 705876993 156912116 787384337 647930971 751331162 609441297 268056299 105565802 153859497 381720945 302355854 734510060 536533351 666816812 797754204 242625839 431474354 698693544 590860943 562436216 835920980 870140939 509453430 602056294 726900207 312107755 351357161 684198992 265444516 481785726 276368589 709483014 27818967 822537786 305208984 118266291 580832073 795999589 686732020 249133276 66833141 104926697 897273847 508231034 970009901 127667262 1928864 669945476 503382216 852262610 814510568 60850940 446323996 735985607 289347481 941979342 278586083 491200235 124203438 52946287 484786341 377489732 597143428 27777293 216408292 400790734 860699497 370639446 371604726 699641266 130041900 954607764 539215653 378970051 743933154 933413857 120577383 600874887 769010489 974158556 514381362 660202234 260248301 644085834 941010053 406310317 116865914 418641857 594602927 181191328 587787532 293368427 221994164 431803733 195003446 316920925 504840598 267508756 324128479 470236296 207031208 999569262 566206182 11988650 379274245 670376121 50971736 769898871 531527036 852602941 830860938 806425003 45101521 299891637 941764236 142427588 234068050 627223187 584457303 650045655 102529831 568583241 434270731 387513732 890071554 606546 314543291 394136171 479462506 899352359 120509211 335549275 981685047 871817961 660130018 846822258 89508434 497379898 420788577 507887705 91852892 272371398 761985048 289818564 792675991 608421199 564117215 863132522 230760911 491409516 945573551 463251503 754026640 857806928 341236159 607518451 430189192 679392564 829165471 862117553 44930565 903816306 419153550 775157064 725767832 178330259 810711157 653736736 858394107 926892239 265665967 878258799 752713530 47666511 799100734 286661915 770422198 658236003 405493080 76543991 714961874 224801563 450309833 759536454 455180744 617133111 755787876 714269532 388141223 396816787 95679436 576273990 149838678 320891124 101830950 537672651 471241726 643474589 338288423 626934808 483710713 838230658 579906877 546995448 208970164 295707699 533139897 789297021 999707673 922273924 996381828 714242106 447753068 27377442 137947951 902584910 622984200 811965554 172868677 665832464 355824236 972310748 458779830 790094704 477232032 973453739 628536213 45939352 226429403 627283675 752165603 740246017 858087341 347330844 388312876 776475178 731706267 589228871 43743127 711736291 490726163 42544928 782030138 701742938 467925763 382518139 969764151 212027654 342383989 854342212 746698131 640044790 73957084 679460601 242917545 89391414 193004027 16942189 741710980 121603303 856304294 855391526 405089471 601565176 362284596 705691334 777084282 825498348 306568418 155448517 285490590 176355736 710992240 595540255 683667864 324632244 936500741 795450313 862990076 950657512 141580063 298616610 391866660 270274777 181864721 276440245 106473507 444124685 992923115 6711142 9599974 863610390 887325908 356969146 418719244 180707854 13838156 712936506 2675785 697076562 32622290 953143819 334215793 109722570 397561437 77716016 215207941 69251267 521148848 212645455 430448228 519018970 497180831 819102828 730356748 246339128 637109622 241381375 14662637 399930375 29467718 807398762 620103205 265083979 864631133 105200209 743351915 958770890 221647891 2599515 760917398 203378981 832377597 800285023 561108199 621531193 869890763 403852730 329766447 700373837 370336431 693978116 368064576 887517256 831981262 654613978 730877206 17699877 928541930 969404673 517457749 75714752 90446367 833473280 508952666 256869551 17963558 644979920 995270947 411239704 782233513 676977758 809608911 831691774 184951179 749591121 790864979 945919368 682700253 441878320 826904947 83601696 583002156 3789758 184032025 876918065 262184418 19744212 387884878 526871859 939275067 620257197 83153509 370041996 436482663 772560188 928194436 116540780 906991829 734711975 530310745 588422236 342199525 211450165 490916352 872415272 486813057 114839842 263401420 788499586 391592209 168959782 666120363 528947832 424294352 429756724 457260713 751297450 396882542 901720464 241185743 689487931 717074073 4509488 434288999 409883793 254768730 648225679 812753061 30374608 375378688 415601663 705408051 467945622 845213668 392105002 943872996 278480826 801964331 180767355 361600511 860126637 558681655 190834798 469066555 916950777 640286485 552799145 956458938 952812704 870475321 44634205 892833801 616968698 941055890 529573042 634583277 862831099 18774745 121586978 603979222 981934537 703667697 458317466 223381734 686473806 116220571 493701370 98659379 501768952 166129915 868651142 718044341 256383297 783112498 643923979 266491122 445510966 255129384 335918553 193095751 187837467 908469130 559716045 512497572 566693167 414993766 334628922 755187694 514101438 673019575 656434040 955791672 935939939 972480655 369617785 5277975 388275852 889036562 455933656 763403073 799710490 954677098 946769564 774481080 125071638 572539370 270890148 948751224 558744946 11157905 632749995 288084400 645487294 252611117 818454628 64811991 879663782 836065050 206715351 838566946 216533207 698729985 139441633 413740782 677302017 13976068 370074052 759705020 73956602 185273148 163435593 705904010 723396780 473874043 904743721 778106458 81424949 58628612 929199891 60027642 575621 186932147 912517789 387342951 398639739 519395651 168366252 92588274 67979201 563173571 309891302 100012917 726624903 292510310 214987069 527708542 241237937 506557187 201134238 870179388 104146071 289900535 400881758 77064766 708550389 892185908 778743973 975086050 14747180 127235574 214327380 764572191 28214622 808873929 119016686 256542549 117183466 876355661 180177255 137055049 347511761 665578346 60123698 71128052 568007594 349498681 55528302 731764591 289579560 771249300 599107727 265328548 625355215 579295514 469616989 793717860 710458793 87894209 343833590 97410023 935741987 483716363 204806544 995487446 992632924 80870481 846118067 693665965 268663742 316152091 909237858 780865891 345311750 350978950 327731940 573286355 275666685 731829055 134971542 746753427 655690044 470728858 129581497 333493367 192350469 388023457 431853044 877157705 521194191 567189506 986498965 254000552 526208547 873971856 255539014 760563096 31620175 927833104 784542206 19730591 474098604 129660387 547432819 139765279 506231472 646254919 114182871 933818495 825610808 389841629 10332346 118912730 636023307 409555516 613027277 553596630 330088292 340422492 880373973 814847950 26970322 120685822 526696900 938798230 870203712 55102407 391417119 100739113 935801098 770178860 187123199 546165644 498156151 615213940 958699760 709590821 44820282 182709386 810822634 346007870 856189199 580881965 349219826 910680566 169043203 567956544 515630045 859174186 24715036 268010849 946111433 310753517 742795272 624306641 625556626 410906598 966041592 480856122 351571549 512653310 630481068 698833545 191796823 668957874 798531979 672804832 774938450 110992787 828997360 947261493 77654204 316393154 202712 914030729 973610742 147562805 184753055 474665833 794997019 146667602 420730605 335900605 637803115 218860631 825309459 38785689 185566919 31217726 996210842 16134961 650083781 915212769 202223394 850481376 568303332 394773848 226326929 177155894 508221246 911457665 268626238 445932769 591840620 306958501 653089623 218107262 692603494 430115822 525389277 675318589 338118161 499673676 616207632 627643203 628757037 552622000 17394348 756649776 84881933 299798053 658188760 430221341 754044194 422404374 236077345 325259052 166451658 154838609 301142319 659151263 972890632 659767982 497225297 174330267 694854608 792025630 649893121 400984266 883106561 860683236 289992208 29495234 570605452 164801888 530137202 267794434 355131177 854786937 540174159 803918623 56791822 551021584 267675520 480068007 735835019 932346059 522250925 135828387 757555662 169811518 182710498 155131406 373311602 515106609 538872807 556032137 802138026 785309380 224742348 420337179 46890869 974922396 519809738 338200270 642523099 131960169 594683249 418776643 325607250 473111961 484750245 920522231 896132630 996709440 467058984 468552757 261789510 704842567 428200272 365604170 599003654 944067795 394232285 8091053 439054472 319738824 264447070 540404559 93500565 367679568 125255045 877359344 877085649 782163037 444283621 271050022 198156983 461524701 223430756 919294555 437081323 581058885 254700909 783141172 673955772 215142273 229686369 646398738 994639847 215271987 677533336 112844846 412975275 49730093 239965213 664696612 487184010 545533563 267321345 382233622 938146526 351432033 650599077 747733332 850437119 854806254 610372314 452008920 447802438 291703517 635281812 867724912 119376719 175982331 47595041 389154013 906543775 117822812 817294319 989682775 628410167 68475333 134236590 315608195 528169103 677788128 380394038 670326198 266915212 739182045 362538728 511446106 580106735 439834488 482898884 610095107 277352226 749378051 940275184 420251692 275584779 955257325 296048245 439960594 512538320 53490566 643337336 325746509 273403608 267615036 651697238 187618197 234796261 476259321 277627771 354971542 731552327 834643328 10250801 617202147 28664022 115362097 770191799 656368778 254271827 292211586 747050660 924443294 113868600 450381023 973563107 938108574 913668080 603410667 855827715 445008092 117226543 90552560 623456319 866032208 164018828 877673199 190552028 841836074 598805281 710672760 563579526 349109295 768165597 539984343 950929647 314550436 136659533 836932267 772747406 684766251 146624113 575652535 781480917 904022383 543767603 340260393 599659354 56121123 707213118 150921504 873854530 607757694 190456839 957875188 268093567 268249381 476728279 659396451 675019659 825721074 590789759 375584434 833910354 260950412 795067433 502937689 361508870 576964245 823163506 644194667 53337118 60969878 121285011 738075562 17085234 873239558 587996324 256740930 897889186 579532595 607710234 837117843 158915226 255054483 277259421 214353081 127106434 417087100 149855359 904279883 842146607 277731129 250908145 40629665 763540352 606650516 320509783 6237373 773264437 693192295 473438411 61131163 160104019 991485628 586592275 982355403 905404890 861382197 443803325 912208680 241676873 899465627 359348102 193456809 703488734 675120882 924044936 154697884 890617113 714199915 248480611 292016093 774689291 982657134 661748174 750572996 16966509 746457056 134269177 714713601 480481009 801961795 149761325 195196076 562438618 450120291 197657228 346483763 310112104 440874293 193030173 503732165 783684289 99379539 179937063 384559975 93557970 991505096 548539181 571880573 545194656 455562430 629585611 484348275 112043412 82230834 492294793 969435763 201081353 955159868 177878656 324880343 67658410 407462065 894785086 490809173 870475603 381501866 999268846 277500967 433735475 119744883 574475834 732868949 156902064 383529165 201576477 21069930 53763625 301357169 926840889 700762340 503209319 643134511 115682905 707563673 682046834 266436646 444594995 835292316 26462742 237046611 855069509 109142775 650547031 446046635 93227132 302390544 148947728 230800481 141486494 523692207 362792836 114427963 679789386 770293279 234595951 214954206 950106887 987253645 350900295 109838667 866326876 389350892 443019533 257915142 824200847 343060250 644357341 875137706 226046403 41445865 737959371 373788059 464512910 117406858 908180296 419135541 576853080 132453297 540197720 288168000 316877307 82632887 843820159 174619373 319659627 905654437 134438974 6954809 533270466 290524398 412526600 20170574 170548329 493474919 340163827 987399950 744943508 473697431 786719269 401735147 45586820 607231761 783886149 386939107 511117307 779796185 450695067 556585410 881528122 733802492 780634202 304471791 309797182 996781865 408623215 494899386 759987266 421200028 212424601 424499318 899775083 421187136 784521627 266106779 586151763 382156927 879774998 982670253 846664824 998951318 888130290 29834675 264689148 634476428 481440542 486206146 227657791 325640046 781173070 342279605 463189169 842759167 900581469 412879428 292034340 799793102 562618145 465324037 751963626 431787933 897835219 810229345 88063161 554744031 256956074 893333463 561904510 473263311 576842038 123278132 959917003 520556358 280385148 156468819 296473020 357839243 971102105 77386148 964460699 655501099 945954438 715731868 682851753 386032915 692652813 886375861 683506493 354387748 938402775 32459179 776645398 606358938 608672768 632141858 547857012 447025287 812563599 610119289 412865192 991942474 848015528 96616314 12568372 399752248 133358235 128523896 959660567 966078174 8890403 670927421 635216818 583038202 502655379 247795446 542214447 764760284 954568405 738559593 3735239 941393817 434511420 690773362 191230620 635435318 60867863 682608950 136272140 322247341 217518568 658426376 847734844 719888585 583498328 816533298 241884646 646191306 388510553 758875044 962353637 931186317 499824638 828969006 102304244 455471279 150002464 613293297 919267739 694072225 677322615 558477514 131207391 45812518 472729920 525206241 213481787 513514134 42011702 823503430 915134275 372769233 997752089 837854372 526883086 983000850 905860612 41224535 310649060 700931067 748478688 419090782 303623275 559047117 356606727 949027325 834094910 334672666 192530966 882852749 568304482 956522388 477940455 873805551 674617946 331666802 62101211 474063227 824430951 879163582 708803448 85338644 729958543 272007512 804829886 557880119 439727411 462101073 53100055 446946814 522397466 475996330 19851562 46016988 342402380 760064090 764251726 179024920 495016030 922630791 770591984 887227315 698966411 657378565 205526239 963402677 292726241 394683957 400508476 740376972 877994374 360332644 66352663 761960671 176705568 76148721 965921382 67825926 991970365 955292905 488796294 486685736 1096346 882989085 813330368 792734652 454723291 877389319 511528885 293625951 356150663 309887071 454555002 517252636 828619464 781072699 819243000 137748884 538708854 651538417 182467484 756181316 899794519 430572521 627263838 385179699 283680716 420705346 662836792 201154915 702848811 281509710 244559431 993084200 151602769 647072005 912332830 251560092 189076844 848831100 584690105 578248791 367275307 405222550 561163993 605273454 272515380 158717113 428529130 746957447 519376035 21120377 347812975 642670489 581409601 998586524 265867499 727825620 146603867 524112187 872447257 134632040 293499976 124906270 57991098 497021977 352126438 343654489 279024506 162371803 980145426 768278701 331027360 944920003 226889860 725240941 581903000 824837348 688055016 404279352 742187627 301721616 283227940 380864328 224831354 406721230 566140785 641439332 877789284 155775419 949122863 937251539 975231228 263880130 567564521 193627735 538393937 666418406 298154963 628336242 703410730 254696827 876468483 725874010 479077170 433076755 650399532 400796372 735886884 392984340 339405662 362290351 714104791 689087754 67323203 764665973 579894568 299162813 382893807 120764806 848197278 94918097 75130532 719282490 869308637 785773694 708223492 584508608 174347520 927934070 611128018 734933878 568844829 130768907 478306776 227475561 263763454 774622629 7894711 580547745 991370297 511465370 750416246 395818447 938285229 458148787 24988123 437712232 529725049 326567187 693372487 519830620 964588712 974329229 160921954 295443943 704629381 809511092 966959120 181570052 280980738 362660310 347775806 945886977 388627257 190840057 975681706 812391826 781149264 281824741 580270370 831277069 701960587 294273139 247708062 49289462 423285223 19705743 881606019 644919453 689725883 665646996 733171927 775971057 516548746 874999202 605615331 276108257 553224911 885997640 599505665 198418678 971308253 782654193 520512348 680913894 246495333 74890069 259762181 459514409 968390057 322606132 359336718 249829514 440346471 410171876 7274058 374202550 268550061 391532177 520599539 468245289 101038984 9365868 868388666 543464880 980406244 841122945 770120089 233842213 220663654 464258441 992055042 568237914 761314305 821318460 441733338 343193047 981206207 513849264 366810700 938305578 986302904 548167038 571023531 730676262 850774152 110067478 107500928 650719455 202036781 955593336 931575697 136116232 720488620 64739408 234442334 476225014 988120133 511582029 764314497 437704431 965098806 364353122 826891370 846126336 320179754 53656291 402508257 250657739 619280028 86012572 815780335 63935578 381677214 210398185 230136198 722820996 82000263 881192933 894462927 77552942 28678019 608812567 158508486 582370217 563144573 840193613 258935634 90698379 797166092 472353594 893424296 18535907 790738832 738054451 10636247 904220712 80477191 788292134 869593697 759073871 768902807 114211669 655084756 749022069 394377325 327004548 201968839 155041896 704559935 714665144 667749243 558813490 75340659 370610382 433985765 612536492 652196844 222191232 162922847 264966590 237360178 345865240 953789995 443227595 517713683 29972698 748940747 472514193 126268252 388882468 303094753 653527306 574041959 142974762 429873842 564677791 288205372 362131078 44506217 856194350 855353446 527774573 428140610 375070558 180316678 559338590 86547388 517657869 845497849 397359140 601520375 753859074 212297221 576432527 704076723 151566909 124503468 300645469 426158824 390472279 535356186 465149885 550461105 329391478 522794798 435355971 447894004 316092729 669322109 686870108 671637276 699377473 88190830 981652448 753255041 867363436 269315076 247293198 305820219 166787335 508234686 388122454 66041566 976449796 116322850 90023097 106173667 495435363 86335127 74455347 93318134 129044854 790840056 105979488 907394064 522863016 625469791 717106254 24528025 503451116 963061831 822846508 680360724 835245802 982622254 103411306 794181134 505369546 507540638 103437181 870664329 596479271 977881143 226602882 359014622 937435824 244646045 891661577 997764173 908675486 103726274 209301351 648449255 672796893 812345775 724669876 76593783 465777447 945873964 333646747 18617916 784579764 804252618 441994345 598151576 797673696 467135741 257384653 764739867 503180563 951772748 953721943 735163928 725425581 293724922 762345481 587395875 695831013 994140217 916306332 207957089 49904826 329961927 595949365 213132485 194381615 254028739 330345521 646876118 55002715 207433846 63312014 439538499 922698929 399072023 120825759 439385204 379070594 393521016 25769808 494166737 690899715 859982268 357237813 327018679 591745581 178394695 37029992 291840919 248148277 576844346 399108384 871664057 104321662 614601920 972326565 944284915 451124919 463779587 993994814 161158830 677306758 484177601 589492297 324739683 505673123 854475652 316070308 107352428 921475700 853380034 56014305 440628033 37664011 865431835 237217214 791540969 674526683 850982573 542641966 160687945 376335913 104082671 811338934 60713315 770243394 979382897 300472622 238103493 989197229 543332315 887126108 622544549 342070978 216319854 390179872 121809111 67966984 565083341 877265387 876264268 432484453 215494430 773736632 176280771 71075347 775508959 871793076 642072299 369556867 182489556 560813257 958710797 717481853 168494268 972641852 689416171 10974120 619786783 614879281 182457091 344074512 550055610 632536178 265659383 263076465 277502392 934656503 398922247 575047225 630762706 532676975 981678199 317092462 385457093 127087813 394970683 535667662 972612371 452415969 208820257 224558278 859921037 616761199 981562619 747190754 762692219 184295966 807916998 562358832 847690241 835023066 985842551 457312582 671729472 612411633 965517160 369762732 25309651 669675547 403033505 810658905 914331593 878911083 907698486 775615321 113631289 309296381 539951485 738946306 401494956 839671178 471961480 194311843 255900538 16227762 489870561 481102273 480402288 918673507 371213471 536527057 818215529 608073119 562514736 239393256 297700319 387665210 13477095 385658345 725428308 379709636 218119548 474057359 549707236 181181529 669956978 849920208 8830674 915651261 323369507 372067900 663188557 737179075 259457741 72118099 188622342 9869395 155312125 146568524 14123115 284497630 257310632 164720748 797170421 70440698 101757561 542325516 951571733 980232616 222691474 168299756 199617920 941657555 467076611 879270831 608872919 119863099 250736838 85290156 186711741 68553542 540794398 202119789 182404482 361752010 175192277 169704945 448233671 226814749 51882575 197249562 757286910 525444082 532166338 385558077 697709341 521139422 250884804 310054694 238481150 631594695 369708925 121405606 352517788 806556061 584270601 151027693 353224388 707149884 306766374 614554298 143649769 67367181 4436953 634851415 966013921 548055622 694579380 825893033 76191521 741846398 446858638 372394799 819293205 870584901 767461599 158031192 316063045 180818586 834090482 724197089 569184285 577399871 980279337 852841161 575021423 762010820 4473078 594989979 790567288 229970278 343335160 656946957 388818356 544092536 438752350 412589985 185923738 727743022 566438713 888722509 793672290 300020821 633606630 29722243 836807116 823112329 60698116 385030234 996561476 833026484 394275417 974893844 207170346 721768151 407889169 563943117 622977379 92594245 515699002 363282140 819883811 6540887 913841202 614952893 258612652 710837608 801324791 754172844 369312699 846139316 96164116 941816217 924091125 304165172 933217437 120371022 429589042 685959849 381790441 35969230 210947972 852212766 577315511 205373690 544416874 181781834 183756512 554876210 556261367 943700001 557748269 613757717 717593380 526567402 746618265 413617443 843535279 496465075 946772967 667070047 883561563 664235725 120662459 834627662 773074948 618716772 227801016 12153921 363940605 312271822 793856283 548785240 613091196 621146171 606545650 38145288 580742236 236001900 26133762 863637246 7514226 450685034 733619495 329998348 343605643 145407818 858813327 778844113 322688492 983372963 252501390 166643798 511213879 325422696 993828291 255380877 726707834 809289546 105659490 375284439 798743995 797028886 421539237 742729395 824181936 507287052 880646109 64654314 176224640 517829585 261247392 704318035 409612306 961196565 754922962 518018966 587345752 161851544 276826457 107018210 767787910 242374131 501636873 900011631 696589314 290019215 988484354 865138821 406237572 300830171 881327820 975951985 686202295 62541944 995130003 385089853 530246870 428228278 154348064 415615376 160578668 873250435 967633704 458347728 253914012 911991209 675768565 712264661 475598217 837707496 223543126 747137856 844918967 812663683 958653839 656359362 5138027 576495217 796740534 299664369 823588310 377486383 663678666 411345441 670806229 697157527 983032935 397843421 847511316 785235842 927836370 812749906 473888271 45584813 708934877 286221746 318670149 894674605 901017010 117628279 347023137 101596270 443848838 373091176 250383927 33241745 712926267 649521715 188029869 946001160 44615598 943461441 304034509 680765563 499582132 479484979 559041886 606270531 796068611 533396395 315514060 449551948 90435240 886164674 747426232 206032142 594141124 175473662 838114930 785529213 592817910 586210847 580215961 803263787 452703320 958353571 606128259 590884709 103787593 320685817 342135038 977089379 1327288 35107241 118009294 937266198 983163181 867196285 571801443 782434942 558585065 343895937 842986489 508536908 67820414 415131502 232501983 251764368 602065597 757300920 192736877 419393150 624878170 72774714 415368999 557662226 800400504 115437787 316205839 684515342 752853642 965378780 954179202 83522317 28027536 667089378 501083066 47383050 170015983 729747884 697811602 563874976 661506124 439465027 807578471 899235584 681972235 671367558 250394669 148999921 913447402 766656965 558176218 979769550 723671091 154944067 300412416 275874115 64393120 577300071 220928106 892639594 377743015 916837244 409222601 484804741 58974693 685086328 472867460 139766997 8179840 233507686 380701853 694529747 52996455 780257632 467953111 235131789 521345477 150105673 748189267 487324723 89218387 352248227 569284310 748096217 712503082 869945765 15738164 889069159 166863279 138453179 512495883 996514756 518719176 896529747 619458714 657866502 469387804 534008031 632525109 345546730 544149588 706067324 834780933 442418947 979467184 375098644 837761258 926582154 858115610 251568570 784330734 402702163 133542712 142045636 834030779 555035302 805703570 770259783 229325669 878306711 437560822 990295066 778860556 209504998 60270208 213976630 799491615 960004114 158962445 433032073 884419753 281917361 993505183 173205368 260347105 258230904 43749247 303850687 258512914 509178488 517487936 642581128 320878100 76117400 635842838 300788740 929822235 758008558 30484174 369911818 772683863 65826572 618603833 888757776 551745264 37060656 80963562 34118641 87483415 852712836 669859340 966050620 395747673 549430598 167792824 415767790 257989885 586375737 656415290 85631817 57065849 519606892 864325005 583705729 424229344 45215000 131505 934655064 585091251 207299002 449007785 186410968 246883865 189115138 907496653 113512160 394796315 222458588 961607232 46514743 87388373 569666232 759525492 316033652 612929104 601756713 828207912 459044830 424323392 881088450 444821821 62403392 827196649 573498482 763968960 53962973 670887810 111520066 229214135 280210294 722764757 313077292 353497943 580347228 595645696 80369192 777419388 142005890 826650271 410690431 751038830 513293018 792019887 933142179 558667975 855679774 382068292 740015368 89941051 831849404 122262600 717291218 293304940 26181286 468910743 951334122 858359794 561691766 15934215 916435191 948049862 446696219 253597117 585187546 951351923 591046803 388631881 101305630 701032123 778435912 607323446 71365118 325066034 922686136 349711140 530056458 102100766 209614224 522918351 251955934 358852887 42767057 296495092 160723074 817102869 97439727 537085353 690876570 213106776 528802594 30054253 406295468 172760834 708323307 411998099 891400416 527872647 851525222 70429648 89505090 656899914 142710097 157687922 183719369 365617717 569124418 930829235 389362805 116960548 829961946 116597848 411374296 956311083 807342154 975024126 956297418 357164624 62745627 664770818 193466987 282696756 442185354 707684986 868801248 368479562 693345499 883486149 212471306 855304536 128243728 620123909 467907297 904163017 319347175 490448948 467160777 783439705 315522174 508313043 400164073 801258795 553173273 197068979 944535227 39959180 107153860 410335188 21800779 165437195 394162386 554111684 5195352 199155084 149541807 511299255 59345593 120041811 882808879 918428194 697356581 797160135 115250304 660084614 788773656 379529518 550955734 639885804 856765777 71421855 946442874 492252144 159404920 845466205 579762399 793377700 422028147 861474798 165714837 838882360 312702347 285732966 558915211 429845950 866117097 420038623 419174589 106584147 859907259 780736727 155820295 358134577 31825786 635311431 908493751 426151034 824847948 979393158 752489488 137043200 447893951 415889831 207495098 580685616 399502490 715961253 373064620 400128501 322281520 882509810 285063289 645485919 480506592 609189351 896025025 843978182 149568095 867145445 769274737 970384729 194987498 54737688 214647626 658946814 854310827 770816053 928647850 944052000 244108884 51216770 853142459 200205703 854844514 253291190 871857926 416836387 641549345 708960455 600709714 274759483 809327882 556103151 239680457 851599100 947055903 493945424 295156112 833526296 681640107 399889544 755353233 195125503 221964532 128554051 794684599 560153431 625978182 698956862 789189032 109326740 697545234 14488320 309819501 186322470 961623121 907917577 595698804 530384356 707596170 173009864 947350051 168954874 13633793 980324258 879488237 549801755 582251667 193312311 757944906 617789006 118609223 565022493 295571085 685470681 9844654 851202959 552316399 380386110 733579036 205824961 207788338 129767715 727142490 449295194 251653635 160253199 812575624 783720344 474281345 627592990 583129390 375044717 645961806 538987090 943413771 55984505 30957082 411422499 937077673 381955129 831254089 759599154 900671558 38578912 179418851 183925767 404709465 206479181 549429183 962414542 508659628 462586557 249813272 914324162 520271731 164011770 493657947 713698352 45869635 953544755 812328530 483101834 239748238 491819009 127488958 949163063 838869719 644703930 271115001 580607702 349014239 246892122 299986383 691069323 85306704 463862244 107833505 315779759 802485281 471764106 210506001 228757687 737843573 672754093 136504304 257731066 773631506 274668343 559112141 200222014 983034646 917074231 464108684 853169567 344498986 346166712 324269879 528696047 189363764 133726560 253773960 355587108 50422636 97312208 639712103 172544085 619502044 425983467 369928047 950579678 109197879 708417714 708584921 552380089 760382277 235129240 324753576 194161135 382830340 953653869 317216768 955630165 404380304 362083980 216592291 651157806 596328017 383942836 968465520 749184215 952732676 317322504 301856745 162216438 78731878 496090181 369555340 75358670 736038896 456281455 696666143 300720375 307816375 928614880 890887562 468380994 18355441 156836606 791041777 110403267 671679540 758935514 866840782 352160876 425092025 937636022 361497385 984991962 845694705 718698843 915734666 539404187 237256398 299437941 567628017 641462043 566246313 65472877 146438794 922026200 715970802 399806512 657208917 536788833 687173900 503935613 772294029 520568175 17584135 46682411 372476109 409148800 777622003 283556935 684676603 942136878 894313664 959315976 259879094 745564454 854199968 409205555 635200271 853358278 638579564 298585752 622698464 288947839 934203235 623602083 727091493 733067095 173466630 541513165 491805083 341076694 37354226 867137950 84064425 778929491 28824473 291710489 618519199 20108153 290414257 682810436 815903885 846015426 946252194 8822446 555154013 525474237 710501117 364753886 761879936 107355752 599712912 470385694 566335583 427938996 284619672 557519674 790917303 350960834 93005004 292123704 585181447 462741416 582904056 269614238 263433174 428551264 677422940 59860990 128590136 218278282 282335052 141902393 823304446 368143095 923759142 51360406 57763082 717742633 370999407 796903334 937121877 31407771 164645343 96087118 874286630 255387856 872075758 293596404 115391252 454902005 493753409 275248852 554137213 479885037 531852145 309676524 329918017 195528103 693845327 502258881 282063398 811912296 427335370 443606337 629337043 930008137 417876104 104021170 81970793 501150162 767494914 126998935 877415624 206565725 915021788 8367216 214307563 123200093 938436115 994471056 964204938 30796580 542325260 470154835 658471350 272529717 611389814 667770313 346924642 671087159 405478287 387452123 246257136 96364600 842528669 134753654 43314504 903077387 617584372 947198605 416006515 847289378 616469944 90404819 559254421 643491397 928791456 6919299 421300881 12237031 670321166 790646213 872181565 409361204 170830442 245429523 187437759 190683752 726601804 751309489 53899274 158417572 960964542 341995445 691118208 52667216 673303862 686403159 929592762 766442117 103601339 776991274 352374238 696386418 68586592 630549458 909053487 676947275 223354422 545606397 467536371 596067217 599604315 104604276 259257102 398104145 142155789 696827066 461730078 10658383 428093583 415001645 883127882 633098192 320069774 130776972 873808399 76692379 384136892 283131967 605196969 231121191 343289943 935431116 523102955 268445202 801107890 981237185 834595000 209442669 875055324 856140175 595374444 502847459 397814232 243084725 293386882 332900832 721996356 920089780 769656312 445802910 685925754 283692763 399680624 525795408 104435255 810025052 648130787 249413454 744375555 894785380 691336005 376058753 118542426 785173603 753344071 302894672 134450874 910570452 715497208 310799332 14530603 855923596 847478459 802956521 85445540 203613080 86481274 28181898 703933811 222980932 763085370 736534897 436202232 236274333 494208492 29533041 346862757 274937330 319239187 347809050 728772009 25667772 832669542 34022684 28866018 896426669 720244115 253553239 200162883 211108782 994454767 436933778 36681886 571055699 606045949 622674473 835589103 909309042 74045704 106838731 116713428 375639822 796573173 820783535 742681064 220046461 975658051 736929226 649110397 692514778 815248654 525069848 379283591 289406851 587575448 541169651 570203734 497423072 944872264 506912417 580252882 621987995 171824412 504502230 986088001 512826473 842434133 915810973 742630902 303598773 818370883 100913310 10981125 670072047 451242121 29115608 335218237 90343239 970476577 918876647 705611838 604480475 236939654 360043636 404288906 949044533 7695956 613045515 263039906 626224100 637610255 19464799 209967261 477512996 608941576 142061925 889156052 370211043 326630016 131730828 491763703 852791795 740038718 569090983 780358231 86853695 180418410 767299538 939244788 178965354 481635371 357602243 309259372 166737645 852991002 518553481 836475806 68051223 36256172 478349059 825361342 866179902 977297820 740592341 803848705 674714878 990082305 680602750 937307464 553764652 543331733 139362201 552312278 613813900 693559299 720947217 391200892 310682010 142077840 623801200 640233263 249567995 231225353 817629276 846980086 432779950 533248975 66662216 656214698 250545614 452177677 95854294 46127473 50124327 667145835 975886364 626147927 394658440 726342538 61150548 327585252 376915379 29568032 54167906 269519734 502002107 441000442 399164027 974947483 466996678 676422423 869750748 432416468 722484990 184783898 411588953 13664736 159926803 783867581 651332399 423460710 34074179 512825464 818266478 794604522 293558359 640671495 301219543 570868456 861196093 534116403 347271753 516995125 889205962 181172330 318982785 951532106 156401861 694894010 390504741 841915995 382717186 224093555 269466314 353664628 429745873 685643062 266454610 229491859 602988977 604644474 930674224 403462176 498854150 615399432 799418059 518888519 189779797 105346766 521728456 911220046 28904972 504755892 436493018 942449588 237170986 909855160 64398778 909385449 426192963 839671226 455286664 338816529 107880551 604806733 398908878 672483451 367720511 305020940 474546959 118707529 307784597 286328462 691060625 717011952 329177549 916124919 249605719 381346931 252494559 239139155 466995175 97779274 791596903 331875662 402023623 768321486 988134494 709062618 56987088 454529648 678687076 535719727 576860256 207807966 403442162 761413218 798748260 261996584 133130187 979102299 228197526 223121567 929200905 301670825 864147370 451097569 832558131 58543390 737280779 181661162 595292823 793107644 573385024 638781195 306757345 469110128 513891997 691940781 601814879 802078986 788401466 706748837 135709722 207594213 56826924 344359160 581402204 166044858 685313188 158012928 917106305 374852419 451234874 655076253 303459468 972866881 947475679 628646494 847563374 434598550 90034129 314935565 536618998 503309736 164175943 275752645 165893652 375817848 94083587 360331754 282836790 129575034 647436265 594085938 54143680 461150522 610008464 697073277 510292480 939743569 868198626 633064899 240228004 574552389 874190809 294380290 972039240 772938248 746745788 137740527 531324129 883428719 750624987 649507260 400904117 507701091 176319847 214197062 782891978 900167967 570883610 416160670 647768737 844064275 878066998 477292825 853052973 57069210 807973955 687981199 44505155 163736956 904142548 544383898 167617981 705775485 56546936 12699462 601101360 649303183 347419626 212447959 194158284 11724918 912885036 872426887 971179914 907247052 417238225 225980081 109963840 473479692 25260730 684401729 487773138 376583679 503539238 955219772 288721169 156349752 451459662 772004969 676277821 30379780 531262135 599248125 764934580 301860930 786382232 119673055 624786665 719499561 708548423 590815957 641534036 114049269 775714383 20275343 856471936 159236616 233771018 173267410 328558025 848467998 960750493 62802681 470600077 740149951 61683141 314835131 841697173 625449801 478928872 363619016 924033735 346462504 293989711 100923125 210350689 124654977 386303319 19413194 396085163 402502017 340302906 894294621 979417821 586844597 183728591 569634165 810574669 690646960 971719620 65450950 718517286 260603876 829867264 465828803 394606786 623204065 756376739 796679230 884118079 260474361 411446610 687905761 469690874 382985395 162177448 437268420 765067942 813110997 935711893 318256788 270274238 385760460 840796233 303490996 741992943 759849392 900567557 963557994 951917250 328000540 743614169 582685801 639954572 682423024 201431981 793405299 713950837 237583288 608529188 566358315 754142288 825696181 429757553 788675620 517363176 991874177 334178640 856362048 487232879 244652380 749472672 799897645 632988311 114094797 692637839 922287075 253266184 514973415 411589625 401368168 823340643 643660577 74160844 11603123 758046238 658228673 720306052 650820653 937650652 426706129 628632760 150412951 20222350 745975181 710079318 391380084 278976409 485153068 73983388 916432646 943189858 247494125 848231780 771515323 457350171 593957935 802688211 234534341 919269461 607857549 784171387 270453001 949602364 105563917 776404028 932550514 325605042 235943163 94582280 656575873 713328418 519564559 188281897 591132946 404590698 218610819 729631302 680230986 413537535 279147580 64618136 519352148 820400595 551010102 958555522 940169586 615457193 762423953 988284768 38772321 604277106 860682287 628438163 957039772 82023919 928129840 341846667 510533924 220465493 715356061 300094945 302802254 428387421 813145509 989435958 28023446 615703537 558964709 115863774 908579208 569168352 505827422 421301348 949228421 34485950 540324903 999729530 20493229 301708700 296243885 914748065 472805225 874248438 366344880 257102851 812238494 46023873 229333130 983296430 29893538 136928154 283550104 433029049 897938960 233347208 366311048 221989048 71438939 76311164 615076117 206329570 244683541 654050015 684407889 326920776 947134717 862633566 845540938 54870149 959376593 959540114 578269308 786722873 434105212 564074700 584438689 659622123 300696159 228755816 566222859 438043026 646916141 916241666 875951813 121202095 874850645 933392076 127316533 573320582 195039603 258560973 221098910 220370000 845253381 388843316 290326745 286978946 489392248 823879373 509611948 636620001 963407670 161191247 204569169 451681859 825210221 997424271 311050320 495996327 648805694 755439966 355187809 532608423 769822861 581968928 782017543 185494569 34991523 781405126 677994312 565459948 805727095 429893958 886049891 101482819 526374942 856921305 124731331 467378426 122429116 851200437 447843526 927126178 316666724 302293990 365138205 932877376 17725827 523313373 173328079 322086696 262582520 439179173 571224854 410472059 205996537 903546296 974083058 515643763 683381811 889900112 83266605 770619083 856361956 104911808 199479565 415179469 385018682 83645624 43022920 708251023 917843906 259132102 797297246 937315201 68463575 484564360 561128364 514828357 29156812 929049784 427526894 266912094 133679039 411757011 260841870 971112979 492468786 607297380 695036055 713861930 992165052 6489217 479431855 705985490 941576954 497605921 36988275 105584268 245173235 227444488 877674769 112500271 629702383 129845466 706889384 858230213 375490294 266453383 420872943 160956072 702639430 743237924 631993016 363612065 219080624 619623642 999237784 195756469 531978076 671579714 330529831 568723654 112425908 76814301 259871776 601887722 743531222 753906974 894925627 794614010 113239503 413501879 157364355 33605236 144354856 505119001 180187703 25908519 105465195 34533805 767721510 312269529 858912313 512250803 124325112 320450446 378311081 793434776 69199462 570363408 164322537 847561441 489176987 203130572 33598304 913745724 638819389 664970835 68771690 849496419 702210960 632060030 77766999 190806587 804177244 689195387 809401774 827319545 104929207 971511685 893349672 991344698 592219512 151664080 989187830 352233758 369840991 6022467 223349473 328176871 32882178 873511198 288224016 32734982 513900600 99211860 295210792 711174569 939985874 915337258 897677856 256834486 429670312 326685551 969564231 773425196 169273102 107558874 765938451 557530993 590636119 458092957 62202952 558510647 533169456 996838102 895979053 683823886 297425586 14379241 72594312 714673178 25743916 338014527 215221294 593604277 435924461 310674279 629363283 773195349 129803974 725837035 956236383 461243412 461132138 68000435 37350648 835008916 990664240 610687931 345428705 954942496 758456175 32495060 312120903 134784188 809990298 224956133 703823098 623086734 289070311 132652271 799672951 26457857 192086530 522316823 87926327 735179027 494321951 390241944 367548409 478741613 156540397 649966567 965307801 619026223 129557337 823535129 216691507 833611426 280906261 454602600 253304078 868664422 641685653 527262452 199980793 415039759 868954110 185629206 939098057 829627818 352977905 555985438 78033776 996275568 493634661 619079453 25476351 526599450 361336101 683450857 441387894 840053993 204128656 242820582 963680836 427996817 579679813 308274990 260351751 445486513 142535658 31760931 211220530 648237134 722888388 655859720 88680580 805303983 981953550 912216852 339738665 872271898 104968007 661479274 916150315 739503902 160099601 477928908 434390395 973238646 658827902 627020443 52578711 199732361 998656900 421597349 409687578 977734212 533091499 763655587 657295564 795368235 962147917 451034263 498098228 340778723 650698877 434183482 953326365 735004131 125399831 731507763 313199537 343078969 712344961 278420197 159402605 166062704 965146850 463652577 419942318 951292365 230366567 118289345 468566878 474275690 783126948 341715768 7499937 565388378 412621436 576278961 373289795 934603038 995442508 117244131 865766038 393456496 899346797 830122738 424912113 82347101 333482768 68880866 909550033 370311143 306388477 883426481 173115024 325744997 723848448 310267847 335389394 369888335 893881444 642393689 424096858 147652257 227856828 628651384 810779096 782401121 543777979 341239292 340707289 642980157 192071009 485143804 770082243 33917222 898493930 425961135 931353632 115518543 103380416 657467616 225929521 595779441 826894078 157608493 418355705 936587952 420255402 801956534 333804420 383553252 259671418 969525134 880603318 699139804 634030821 134419418 342346359 960585912 319591045 92904674 36717178 233617269 309960237 677579497 983164932 468345292 793755769 879567580 126390852 864517111 800962800 581336956 453855816 948225541 739539448 18705830 228357751 328619725 483119156 282572352 691964719 488221366 934216064 296083978 985446558 736097767 465759262 683818980 645361665 910510794 279697331 422657249 381167630 763986370 202225213 552774355 15794081 947816806 372512907 662954175 785026089 499334568 697457605 46888442 636878454 89580460 910172394 669662242 738808645 449739746 190474355 815207792 580254479 387090565 26515036 247457914 255969820 84086824 191599637 90025022 604131480 778387126 912020899 426210156 394914004 996357498 875410282 685394386 343097919 969412678 838818098 694701641 282064392 844183194 761354273 610260809 720566978 207375993 826628951 773006202 684633123 614614632 907121759 153694764 718427557 586490890 780783376 381844089 905362909 755895944 797772855 227444730 352000671 764981162 608458648 334476508 457089839 406052229 902338387 593358319 771426979 536110961 567559884 385781844 315488354 533086402 957868583 525083404 355165636 941094111 993958607 474266321 147322940 265928723 487960484 405149713 362919356 998355840 535618364 735530251 405713000 975015685 321476428 232694949 452253659 216953760 674352419 922553886 360503873 601135926 933750375 353865919 734024162 11878776 926277317 204058855 912593815 411732201 803006613 93865397 15115296 198673147 401909182 416870160 589960383 772212022 414033607 558986718 721437012 2348740 690211293 821383316 338686279 667591381 814136074 473884096 847366144 841639449 189591941 470295686 111136721 554383042 514091455 82716733 207250814 728155830 824405119 52698552 470046749 289578 300597155 614380623 656738035 266394763 508362976 666763310 710452098 151986485 96016333 59287707 811753126 8051077 937241936 463382737 576446090 773608817 585037972 502761202 896982646 276952813 186664416 444878175 270251947 131829038 598423668 306681407 324618214 49308943 515153552 491832243 786483054 750146322 262378 881373588 736202039 118423239 295586083 615170553 955711412 457780608 533326137 661420423 873915496 195733510 502707077 884970662 41588461 986180360 30736406 680109524 410021760 824510966 690177112 380337632 338456742 424306034 626326943 483205494 594799852 429689576 616345416 171175302 245387380 880827208 863600866 586626458 862838048 545200148 805855300 151614990 159320678 217940562 149846257 185170739 811478290 193451462 489181641 934263716 625968732 868401979 285559129 591577374 308575635 53300432 341078842 425054731 490621804 635424892 573394871 626443460 337846215 362037288 540871999 262779931 437252661 49702270 714410945 246560981 957728268 982750078 472378830 951115230 620358769 658141632 567250288 511929427 840767221 541971073 817206736 219698503 271999423 695424801 218788994 226505014 271543609 508341529 922163658 811175174 512982888 492564880 465494027 430219134 47545313 452426713 509109681 781414514 274613470 252620630 218754790 27611519 32495602 567507070 210922821 230490682 8227032 368563564 257534919 91687075 659803663 249226481 218392911 59805485 733770302 452457998 277042687 626988950 246961490 954567033 205100418 929147722 940383374 529672197 961442438 843649940 721386472 598769642 512392368 819700473 640050750 378673794 917924253 650226451 341502908 378591794 73086817 518472632 738583165 226440757 389275985 562494980 344960933 188068230 330418216 448508151 28914660 565080466 469667592 665686906 959182356 745763344 284717700 865884635 168790064 106951507 427991969 717952351 172431324 706174589 107586893 890089778 763407114 255105053 435446906 253270228 458295887 543517832 874807542 311743363 115649412 870727343 413957540 671927787 698517047 589493268 710770366 919222447 134906111 338196598 354884979 317862675 950513082 333521221 253765114 901988229 312200627 832415009 26595331 52643909 802645789 114573361 727003929 45022215 459649980 254555028 329690982 365081371 250324334 404491412 106647437 610310067 581955565 821001448 339669243 890564688 208856527 558265367 485032975 838698582 926180294 497748602 588618218 784390592 251811282 479845318 528981285 797648080 812707076 533820624 995022485 158845936 452660010 243492688 676400488 813803272 732338098 386217947 769368242 653771038 737794922 783548632 320921510 602328527 424056843 894617477 972964917 804199752 857181070 121631738 165973283 114648815 171623874 969957620 195398921 179078824 412211028 433985736 731484407 209049684 282193935 769765850 972461380 392340229 983200989 948493810 286401381 589994598 220993720 963970119 539153028 272026796 187410185 124743456 916467377 73757184 799480080 232515165 766995507 971771505 532273984 429660100 942666107 714068533 451957563 964472628 781334533 82445779 940028768 648698070 13004033 721047429 914893606 714427720 374290398 811720230 920900255 872264342 3092770 187245210 768529105 648563163 106997583 217923865 736004410 810357373 261943566 671644773 100487600 106241694 63532863 222715484 575911151 678789042 335393535 620871736 93746530 643706641 931485418 564806013 689890466 878573962 404685955 195893850 35738164 212942133 603487056 821167186 82758410 796310646 513574459 436132403 366700960 512569010 366476758 838292667 904308817 447536074 589266517 439401934 868429891 849221804 776133738 95769981 846450449 919787498 675647368 250836956 606797774 919777954 864897594 446812561 194847392 407982336 661283910 7002618 44941739 462257030 680964250 414026734 873489773 39458108 711162197 527176281 474983071 19071932 28067046 777668889 840921284 543468598 165948101 929707774 396050158 413290543 799589504 847956291 8611165 471245763 114633025 430653602 270578067 484912947 857820552 936010062 815707252 684850449 837866891 260654441 386271403 191072454 968487586 468012378 448655949 529204122 193211816 664563840 869924147 199020194 234958936 385078821 47927358 821091204 548095895 600198489 250432426 672766041 233822242 905664197 117973496 993401662 618463372 496281009 502860487 975053530 298251038 678838384 869546944 901721672 395884524 462519895 977372321 213922068 455945022 464369528 275101166 108206553 487158941 850012844 159524052 44813659 275218449 731337505 770068896 335305328 239034117 194192538 216174805 825259632 898580802 985251801 119977949 395751253 913632953 818233735 737100733 152101507 797529067 546613852 429823672 3184486 585572716 996125920 178732486 393289503 375754635 732765402 570794997 6151280 91052741 25248338 887067060 728630650 688422748 329968100 119517165 530932403 374544604 261101671 557803833 253865703 646011996 367785875 930525562 288691065 139202713 281545526 408560190 950216485 325225676 849623742 207366922 370730242 852074507 569957083 105935404 506080910 78222265 633886 516563925 641730360 835185061 997196683 768957142 130816210 856706523 309309142 558152510 582454483 116446186 740394315 378863555 374944152 64770286 148514605 573931830 960009055 972905910 904666854 337031666 776400990 219760706 213567156 9705422 368556955 194371053 256292322 464616585 267376863 794672534 951317823 144592820 172283545 723520057 810224392 913867762 660261744 116178196 354377146 157150354 706286462 538627057 101129310 418259916 418713083 996235174 152474564 441477642 929437756 595535540 698014947 410227743 160761392 814385623 628309003 149435741 747644356 346225639 795007812 941363946 30373894 109320461 197321068 266790490 670177460 996523636 962501145 393757739 187272279 103116405 648908754 298950264 296247554 587883696 61860378 13381869 960223384 438678058 995661795 771003836 4877767 969757940 830923272 570460512 587139427 953533814 751256653 961512701 329360096 483147674 608447061 357244776 919488620 252711307 946221395 237168509 35248829 76997123 425988795 624944893 172164466 278049656 711849615 345466512 483521639 549395883 70763958 754263800 55135070 355352418 492286809 78082615 685468770 713806741 210352768 80187595 519907845 641034030 982895446 166614065 837579007 651274707 974326713 852115699 20341646 549320021 668059083 984450608 325100116 144377352 354296785 822419643 242621601 70354889 804486987 802320417 921811777 368465860 624138963 210190930 445471993 975560064 757843239 78091766 534355582 75851406 288912820 794164260 73128678 877683532 223036806 779941354 976217584 122348842 173138540 450420831 421404421 445028129 630441915 83376509 735990043 221588605 257826800 567247670 586910233 783586080 208456296 915837052 18146307 827502226 649164083 430512395 155824784 383679945 762423664 4187340 310688094 464613633 283647473 314607071 945571698 562117998 19186367 821867532 555722106 866986857 468626978 581114547 181623700 779775667 839039281 919933003 950068448 613614050 772402113 207227480 744469059 759952632 190077726 455637818 780643107 841814994 431444777 912772135 684927092 589088379 119856001 933737886 400548032 518242841 418095366 61969287 217632232 542962530 743786519 331492964 621603846 230308216 886583211 230439913 913220902 516730493 820404734 431389126 373598437 285952748 263041997 539813266 802413649 775560479 329181712 514085963 268738101 794121098 438472463 502335069 905259244 765933417 858049607 809671568 986541977 152978991 279133521 7964182 473120211 320369573 15410288 523897164 92948071 678687579 533791997 792904080 229146359 952589259 31503285 179642932 383911221 945193390 714359067 755788719 205647288 611149579 368944499 742207648 750866747 666987291 151941760 857362402 843906341 146409854 765071500 620451201 45870903 753430461 29006941 125717438 556179450 198647518 635690523 899472025 307601186 900324438 645412082 565854086 104164155 874335096 377171496 483646808 489584187 423047171 368152075 53209116 385723677 337151686 658538076 847846330 713324397 114526865 279594310 567876262 897245297 810666715 881136773 304645288 97528940 392611098 84186448 65539048 150890938 855914693 669354663 150814244 24465808 883415139 488908479 375483389 45052028 201713271 119030937 560742524 322052412 751954433 328664276 740143558 715794404 670010916 889873265 235121012 635577834 786323856 131583239 961028196 232997684 181547663 133155062 782570857 221729544 951329965 637243590 686176722 530729285 344182257 211351428 267352131 287448504 195138814 877428570 764448289 621356275 42700454 143210645 877308625 32619575 956076818 723626137 367660974 763143749 483184637 376165190 134751383 705513465 289517538 826262938 30755665 572646823 567957478 394015458 880701660 343185043 987198099 9941677 194194063 727985438 745758376 988541512 879806161 335884398 853661712 427129760 449980767 270503155 639857606 90351334 781957601 152408897 82179823 841231640 858480108 510156802 82938931 32472581 888411207 177934436 371942264 710501531 82249863 677102739 609331674 592957534 744144950 114696004 269977898 439936265 193735114 313945801 697226972 445386205 376469199 232158555 883276650 178324194 907723272 494921982 878237272 980608624 862311764 214615288 324284606 114358108 649332886 554318405 515826137 760140889 642794900 914140688 573644277 299592722 475436766 836712988 986185332 436470571 482113156 282519911 601337940 908921952 804430079 760911638 539295603 876602710 118117238 751994161 350905878 825980010 525673574 235420303 926551744 657988434 492019357 759273351 310053318 616996870 780196494 374958 771729409 735750312 696479177 847067897 39946559 152937296 533707916 69833569 129027899 148621999 962936279 194450861 32788834 778110623 521072954 895474180 154590854 141025089 307985106 283839801 488999731 138268063 354467973 922451067 159497025 705209005 956385987 676243095 756984680 58437468 997867506 251463530 728879135 148473404 71596768 112342970 409892003 384344087 506813719 925018199 25676736 85799080 446434870 947577649 635029460 245763061 874187558 521008397 137250304 426911766 562021703 491820755 265892880 198256505 419684625 209863561 529799375 738245284 606311608 294146809 240226846 808525505 581113553 212984644 187174444 327343059 744429299 956858423 331425871 769758282 999496211 224166168 284268742 157691094 373808008 934097988 138074235 132868426 722247237 421761429 371883350 33759542 593860868 491865027 686966452 561246060 730891328 422206197 911914077 728103240 889340822 402842715 251880184 484497817 648835028 631372881 609510000 265897611 304333664 585100560 189362917 949212343 289622007 267435804 619966351 17309897 128818260 201181521 938693587 654763647 97393061 834475914 863027314 356955847 683146677 595946868 391119936 313102946 531318196 140111467 643584123 186530379 46962680 185486055 545693415 136713689 8696573 528291720 957714562 74816427 517228586 747817069 355474341 118002381 742425100 692008190 786425751 55274601 515912525 421614944 420116814 153649601 573115793 588843982 960989895 318103073 141280667 222854244 738244328 589676451 720284059 898642065 380569889 162961515 265160589 492909654 897094502 443586718 155741930 243911471 773129133 16945714 670023690 403207636 999345059 566923565 974844864 138021964 591543221 676937634 740449369 554292378 134819969 18246792 852928557 622392625 20972775 764036929 390632205 976233211 26658753 748011280 307582748 144480008 759398459 592480772 927038496 143307319 564959046 973503771 408932612 53168244 423764859 877076448 278988909 783929634 713671252 405929134 968942430 351750813 552966384 394020444 47212354 662153761 542966599 464425576 507062343 772006303 35853782 188123893 525455321 199113348 253663343 816002012 5699831 575653371 917180516 770881886 539816015 561923978 639279097 883099252 749261038 541856784 515891208 369541765 877350934 177232547 778187492 363936249 624679747 215122210 402282729 798429795 725281699 332616415 846544896 217773581 379212448 435820906 221472678 137209471 450682089 937601973 74773542 297126278 671922638 551372235 622936550 803189107 982475393 512355925 805772928 38392045 26739597 121423897 12752173 280202088 656610076 268341713 367760438 201831751 553436958 227792654 80180742 826037048 223822293 258352346 48225129 921366431 437065155 812353166 412524656 190152827 916119789 835915053 208156881 856503836 510562831 234399304 30611914 974636803 576068361 875732527 91957517 912168099 345474166 128972622 502339973 357321796 304791988 570253013 90134290 983162521 102483850 119107936 821100270 274249666 235548883 781564650 89849045 91685665 219789604 287138396 110867551 649414888 605573386 312813814 368411857 907325966 443002464 980398522 245717890 631370115 339050584 613649334 162797269 9543386 202232054 571762938 385853634 72565686 513881367 462488961 156201065 112272675 228053351 863388309 18143139 7503016 459269820 10127677 83197140 701317292 511453233 972632100 682137599 444103595 182632367 787209231 959820145 476003924 335410578 273004710 883264731 600110327 43578045 549768491 431566713 990853958 499260349 315459543 294506941 114522551 776013495 974811833 94902171 599386082 814710233 190816143 321260073 273009812 903640651 629776268 368096254 349351985 791785026 75092408 251917861 735463938 603349754 403733618 207644387 866711717 73114762 602552415 457916933 868190602 182724226 541452965 651552551 865776441 718132571 868855299 559532094 838239056 102074545 419228203 263165888 195322189 395419167 475467366 787377823 261112157 442512536 77087429 500711152 842282645 618753387 995144226 111878604 347648983 585583096 732925657 917519442 79614778 518246441 437906519 505547016 637288843 804759834 668012637 612969144 29789151 194452159 62922604 654110804 338762232 950183298 741187056 896758457 145823119 670720839 97302051 458469247 123968513 504916533 594183101 93138437 992439359 652876565 150735665 769653798 43516130 708004452 801039495 247928141 680911655 20555687 362268527 238796527 737252194 505508472 459799385 731842956 557994973 920022997 295140493 201402040 776885746 541483692 121449335 128057543 354737520 398121122 454192336 303184638 145889351 395652588 299873090 280075959 561002814 807315984 999686781 469946017 781337727 736998863 234551761 608599975 667218258 202731941 250149217 714644583 976889025 376719139 886608358 625202129 38234906 281334667 557064844 717866515 158468077 118645306 881899259 188092479 812850099 814785294 623270934 13346402 129701394 38965883 485917105 474954770 845232218 185649542 885708929 673852656 216178381 112805478 279402626 275263784 261279718 316901885 63420165 372700693 292566125 929597311 967318276 204838340 218939005 571809667 933008060 94056344 552019242 795714516 470960904 745586461 153437757 73700469 650297590 408434024 730086010 422199864 644592756 358907207 830297099 277196893 216049939 557562505 61857508 760202934 784940830 528157776 23078934 442787610 146570247 70999892 396518316 930236566 858487941 278806968 729493471 762216799 553554851 593698475 630927228 900655928 800455447 274137180 566185750 286124674 336247795 501715144 786608657 4097757 765448092 450749622 948330286 962672127 392069693 958560298 778185715 217565686 196467883 789726969 928634215 540013936 329760739 516177665 709048582 44278694 314684485 632533075 901105000 554078709 78412139 819363833 686447138 57228300 137165161 886230323 756560638 895670085 443201338 659939266 953588778 579239314 679214589 122469711 497118705 546357452 929920530 896498933 875108282 762614618 317400647 6413360 690132142 59414509 541014210 942253749 644370265 80186054 429651695 654199013 911781059 981311120 461421446 172923291 116267157 459109534 589225313 764910269 994037385 683943310 99422381 636966977 146051147 485728786 628532307 962738324 901598884 458842541 392062068 237716779 116640530 282895525 668673719 817998386 271919080 445716140 713751516 113732814 880228113 288324606 669489883 644266006 74174353 648665562 150397525 34774420 113817299 789492659 707935081 819602403 127538309 590333708 554936791 76251402 913831073 943979832 113637272 909345121 280829962 791516492 436307847 977097145 85467883 666083618 267160601 682896888 832519531 367588883 96330557 550699526 506730546 741036413 161504858 184869145 553889109 127757209 348224022 619560965 942426221 294133115 746056184 227971036 378815081 113971244 94519660 621755248 416548379 772315532 888237427 689424917 801595028 740932344 544340140 398257498 83939930 25063399 881479549 808953975 469276124 853610818 487423312 233787124 940446134 940756792 681734717 250297338 317100325 199149136 923830763 782370639 847016918 859945374 409945915 24702254 910766797 578544222 61994958 966383165 518728210 739407502 201540404 84452446 959265389 760918439 185047451 223203063 674531461 605608772 216227827 711630230 494349046 904543262 880208183 925426538 853146105 601648336 64790829 799634932 906879484 391897202 239243346 570593697 945795442 143429379 850508030 671880323 859191153 494627334 964706950 207446903 375505439 67553209 43222229 474709908 593252664 83899200 177926125 636393909 311337510 902998596 178603388 473398493 577253815 331257619 910735839 322167446 532228664 141832519 991216663 543084705 629798960 353855492 754541019 515641535 127162193 489803463 606612784 117541923 272879633 390908471 212385450 465769789 412576593 19687561 785518864 120920382 944428969 953229486 515215333 25990763 757767050 129396324 68384118 806113165 457247003 490299115 449957575 521766550 318388037 14611207 298087698 793527523 997087268 409183867 637500626 100635327 403926684 952763994 274039863 233391354 581773212 991264853 64827093 586114545 844506415 675635296 873246188 931242489 932844820 260372430 369853851 634237466 797381280 620158603 901653732 275662920 26721948 313390629 628641638 811270527 331083603 913718465 578097982 982899070 887931885 928371480 544443734 797201919 100719888 154947232 35241690 333171832 241612719 482109692 879450497 831074007 63876292 710242235 138918202 743486961 695189341 742506075 13364618 931173940 689075762 889740639 791194491 136267003 498619189 231171574 259586296 128168983 142316270 704827381 147281589 383288830 162371896 338445508 730632732 52307716 317721808 224622497 62321184 49208529 411597945 992543244 191040018 674015113 999455268 550258067 389040873 722525252 309744857 222622299 564596028 168631695 964939164 788520726 68931274 493137525 405417662 547622548 267652826 214370078 623358021 83204388 560676845 439116380 306348306 869643976 34219157 385455459 677010113 843271221 707598351 310616716 499062063 197788921 441267721 709185548 560287592 128401195 44603540 663444486 786422006 403658601 180505358 178725602 603224861 828283087 123088887 226683977 799365202 924321026 404945356 155780372 868389152 33610390 505342274 151061239 7217898 15975639 193038626 587347901 930429546 126048196 373071754 745008545 975297706 29772358 320430921 11954089 250506403 943589719 789240959 801991875 179359058 522926320 793843105 653389715 555517415 121959497 805042373 21996701 730287431 969135647 239072527 609027566 859511259 777440436 298226498 121576834 28190041 284299005 615656573 207008245 352040209 792006517 637729445 113467456 655252308 819616211 680023021 167730301 463122420 478063331 565011153 393310660 86162074 192326951 431825476 757885203 606299459 167708022 769435037 23251486 874741530 510409553 543869174 265220631 409877317 282739484 486279948 524532515 442319750 690589302 718772278 224993609 702538613 610097424 924579796 886584308 836911002 244650009 641771209 356236671 933443568 698242717 739526629 341383976 663865990 30544137 426276321 998895367 978228968 777629569 595318603 315526453 826318888 469612293 68691480 768732153 79336632 916187915 665012427 853359890 74127 742580186 921285720 505979692 491496930 928962856 844881984 150893876 478943046 297180068 490186204 187231255 108197680 747376985 161065464 415396880 580272705 401901914 710258502 843280885 436681925 923512062 397275498 168405139 271144553 133638965 519656947 474003388 474169160 890385 515436047 226068327 560163533 573530064 735492443 902159425 536131717 272194073 462610412 919833815 717209956 601464181 90192203 136293157 556166792 349809794 609662199 331874980 216504050 198353316 285184947 142391769 190028704 567983742 62899370 392059479 472364371 496975543 160232465 195542008 447994400 247621331 101680210 393450200 584565449 2634569 79295264 790150570 849117266 44365585 572206706 9937682 161762769 930758962 61770938 171769764 150771748 902067366 626059774 847973437 109979018 911436036 796930340 77582923 922792968 457662791 901764272 741538549 654457160 492964613 824225731 938894051 266322312 549623063 574106920 442174522 21561462 718099045 256588353 209954074 462378596 442389857 166917162 462047732 480347868 825460890 405559229 762540678 321166356 727191346 933414103 312732509 823458087 316241154 435424105 40676293 745361355 925660711 585866189 99711727 711619575 620621328 479477309 837851725 118125710 335292456 347137590 539751962 162156151 977568294 324137197 433953066 577642155 92111051 314954268 395375901 906426362 522747163 440253646 511307930 672728691 112647877 474838558 653432385 939362821 927470553 339221104 65925789 949064660 405656364 558471616 785227715 233364074 2986836 86276138 582384829 329222909 765722002 232460326 752867561 349347163 229185648 490778468 623841167 872471767 701685879 560943942 447717226 691392578 922445576 730674287 192924581 589554743 745667219 100196338 701441071 306642433 972092540 949022116 182192211 558727555 266628421 334219486 469147329 833605278 497197272 813838021 943567602 838357396 588525321 956161654 449706878 82392721 320133604 807140507 129267033 803072931 371665936 673049944 135708333 786013420 204368854 295621428 478892749 494267048 310973572 821396350 920508163 246130902 930825731 179296144 782214538 899959455 619899466 282611293 646536573 185191696 400876996 317448703 57317749 398584588 209665847 544784195 385037436 320686832 870750361 776280107 672687379 294004804 196102539 372353868 702400166 902752561 951735393 220248702 943743740 488343808 334135322 764751902 456804323 788406693 69189597 403101496 684991951 46509049 250637277 899014505 841327483 587955387 25446098 783155002 634419228 643098493 316706715 548412050 956168475 283134088 221082732 623238540 68608107 589215700 498238068 597801384 376924400 967805094 92863708 267855139 805219302 640275984 490367483 416608277 912746950 711464491 974166519 642262121 248770700 933481241 217925641 971486699 632102186 975259642 395354162 797575175 763191487 918650585 256783618 63811932 996171604 36013133 977259379 145515037 917982260 612693349 35234798 169854635 635597917 322982153 554329729 326193190 553243071 667983330 526743118 774714844 544515410 124704352 492386829 615113365 330609122 360615335 30239200 960920378 456961847 103150984 311907883 889463682 76948562 332897382 746363570 749169283 813933212 281083117 633405767 940110014 472950131 722234605 121676509 958031278 138503781 712364914 254634779 449751520 511990199 467170481 437425302 903817645 637882827 177482452 464410605 908345889 57068935 29172555 529093251 59355379 499232192 455415481 601894350 203260384 219974994 646063087 302788314 215396846 910655945 595169071 495796808 637170311 202677250 77255285 271009616 949617572 758449466 556783061 971399328 664008037 122846265 550124464 369231894 733347451 655626837 939032048 675790659 894634926 845377904 212587632 956057463 391058762 115156493 293203575 985943959 544991290 668841417 316866751 162146284 390419889 391857211 375345818 927445824 457766226 993392427 637692472 396788308 866409094 953787232 406781692 878732289 954545967 341367120 379426583 997423284 175981327 529128311 806994496 848593059 248321709 250549467 764931225 729132885 450017414 98784727 848468974 630460877 502954442 359270240 352320740 532423946 976413670 439285039 253550045 618751158 331737291 843746615 899114287 343162292 431033060 377767857 76134461 771141280 444047845 815277953 193188406 144884679 481258841 929212866 312643080 854435945 109382287 580128250 379270591 58882938 684043855 717639850 640034899 172026587 594318423 963327738 751770439 2294743 899186853 278125440 176792884 283683825 841000866 358827827 964207242 841907665 491671513 452744239 851649596 601743829 588522992 192324734 212769069 683351404 287811364 640054547 702908129 377975384 37838821 111851537 677883829 392634091 679539567 554434136 115251192 719202954 621661885 512320020 512020925 787082629 745403857 222395720 245448061 85170529 829987611 285936754 974824805 615129319 575274696 374552780 536500094 66241662 361748707 333744681 270059888 101452791 285061328 502920298 579840580 273395932 837033370 533672041 100045394 616157662 820449831 270557999 521188859 45037306 441816027 884843959 824451998 172381584 716054391 2004709 884927189 631865730 541292456 664598358 848344005 878716665 741350879 210668976 696979047 452107666 55028492 301772641 606029992 461586888 832864139 195057333 433922299 197772833 116697819 948895807 210693297 174711688 723562077 658308773 899653477 277545430 527773478 53565692 652336125 833834255 541871979 916734056 818396028 731251517 567035399 924589600 17592741 480460345 274985354 572498296 275913905 480976680 234876318 323063639 995453028 164898680 115885632 134589164 306999112 911491067 918838218 822933632 965837274 156194570 395908477 924901371 814550524 151031219 165452317 588031594 299329565 534978832 328893693 155366377 420798789 359409218 246378143 524828052 20439451 195109972 991705111 332952565 225855398 462074750 196388722 821370835 394334584 510986858 687908258 823674138 14913667 784521651 192666839 89987312 173256391 215716750 889514056 136134469 768478171 795481705 709736664 69397269 784423892 361286745 901903745 943342568 746117185 118172464 527452933 464444517 174646999 66690922 770055615 362154081 469091604 303963161 538078844 797599803 440047764 33714099 490442113 983975371 662540463 309448244 691115775 968962443 684350045 46366869 345420633 967998251 883971902 652648409 654465329 115717114 275268907 375696693 340406019 29791435 237372067 896474257 366340066 375261749 341266093 765155193 295762375 122392475 845915623 879586421 283550747 560620301 839836324 197103616 785800955 394183820 207137689 396094073 140425185 776842337 938181810 421357667 16260726 226134318 612503183 540257451 335288025 645182816 556813783 635077273 244233894 280311559 726061781 8947671 125565420 930979385 443363209 350903686 440835340 62615234 504088267 92950975 92397957 494938846 524939376 367424867 703475698 520682603 47724957 727945772 486968286 505366365 793013441 412745350 209839921 683979427 695769522 509720915 393082094 390079331 647258563 439809700 216456524 140668240 118019216 196281405 468695926 786807446 549102657 463336465 281648437 990623216 439839284 820073536 382968572 863319985 352046126 812719175 345659690 19456518 338925883 281567359 175365803 121270117 989414247 490845483 337915547 115825656 868549746 901653582 911073304 58260278 57131571 361622385 852501717 270014790 613594521 273134948 461186511 112456301 144745985 827387890 245220581 367680384 231057056 135365098 773220570 249865692 833338517 225119113 3524154 877327332 916161221 701070663 786712803 81542579 864365337 879152002 94847851 70895773 712863740 705165360 684141744 672147478 880352678 416245683 865087889 378513912 349742702 989298911 77866126 594870608 179253452 994714474 372644977 596141470 484629660 399437882 210432187 739390803 204706344 365112014 828718579 227272363 888453784 788544521 640912418 749229178 605209254 685499671 590086741 627055775 544102132 771227838 981737226 899674630 71489346 498833749 855816344 173222188 261401013 978397534 287635209 170038917 535820222 665319313 220993142 915833655 949859245 941305399 561736967 32638145 198284904 643775684 741638933 503260787 288297586 343509199 600671917 188808507 196455000 321079544 971821755 395435774 932379563 642639653 101630600 511844290 915511580 672892229 144259165 875729539 450417972 648736013 124516400 75851047 978541048 68684353 670293304 992461661 483036756 203229901 982671843 763255844 824751261 323726863 256463501 304635401 191474436 328895747 98473808 870919603 18735837 138034944 88891171 406273243 961378850 899652085 433392704 727265075 963552428 317608850 18560823 123167832 133127619 34566148 510292056 238285143 629881037 77055973 994747661 219914043 93008338 193778915 344932751 410530345 833637288 64492114 707891991 43705525 899277193 493483662 928294227 377467694 911571515 550672679 620100169 967412324 598260086 250097225 938383069 940863177 36695038 524480175 411828534 476026205 157271017 459781344 3018783 617840412 632896328 252634321 83096057 998495279 118032525 233767737 755557702 480868144 756686639 776667337 200539985 265159384 741985661 860230791 662600202 692100028 485331648 887522068 754551720 755886277 184065997 85495475 183890139 754840859 971719242 843054329 395395232 739868139 250691035 467294642 821640978 502974388 333411183 444721900 417520525 949356562 298409284 231640052 131609680 209758874 323639311 506267003 142913468 576438423 567713324 967781787 813283493 722056113 933122305 686019412 353003735 60436774 553419046 843841949 148009711 765261470 361159510 514256731 548868746 933905991 346562446 332525236 955497602 418702292 85454840 683656163 59362324 220275095 8573377 499857651 735275748 495707678 213712706 975649094 835173768 749526301 618356096 493444266 742270503 779141349 583125691 940712104 36131726 991657994 564238858 473603125 834042716 693783992 164165015 8276476 287134885 561284157 357493758 211993070 427189551 737256115 603885272 448184919 844073324 12673757 53946520 126452059 706388591 85482321 248459358 407659981 209366353 205592132 496595180 77553297 123473691 724128474 163816239 306352630 752277617 299824655 589663866 919209616 41417954 513520795 411233190 319120227 871286936 104659512 316216913 125085781 378610860 420905345 107042664 336291381 193045432 73932846 221063254 953419074 446098231 854364173 981669819 204778252 491807619 440063403 141226064 435625646 733924256 473759800 192544111 633593970 486857013 234178339 491557533 122969280 292959984 693567065 95235099 349486962 765182766 75415611 225270813 403862008 450437343 741235033 272051205 817379390 923584385 43815363 351266965 933409948 758493274 400500446 757286259 306265576 487862059 624043368 672243895 11852224 613340025 576221560 60249002 707131608 93067844 850668309 335941601 85588705 734972841 628820625 904314038 936244658 769869550 955950127 999674627 124782257 718050371 186162302 540359390 48188943 292865506 269243577 606700400 272165414 528558557 648022089 868865151 60574110 374184918 769877524 395721900 52984806 771576737 571060369 666676541 340201665 806187719 780284541 951060555 916405466 403839981 727948480 71451140 260309079 327530019 554281541 144963862 545570265 901903745 800488160 384975913 959479340 839821436 365454998 45095681 339329215 375718645 337275520 635187648 944143491 937699936 730534754 850341674 71235471 785595440 994379450 850320613 200022147 837602554 154236436 317928270 250683641 651140160 105656183 516101615 682845610 211372664 299055082 364447484 598633443 881420616 361650632 159963355 753311410 190220106 323728688 340206706 146477615 865600249 298216168 988251080 858801445 560820825 226229956 546312212 59907595 250692959 210678741 698895392 617379577 673885321 939771930 168321867 403615666 433682069 666540874 334676202 988312246 352504071 130292847 86533621 325235503 627346299 62586234 4713641 659806406 551004432 664891698 513900791 560536487 899679513 555357043 880311150 724890942 670463834 20878606 985753252 169254979 314859075 937433932 553115581 559706645 749931 252860280 570706078 411245711 944849307 375363283 419327281 29832705 895204211 219323767 514329990 328421440 46833513 236953857 302778190 334950545 954357002 1678521 476219772 134067771 188023469 434355561 610773172 372824132 345408685 538392745 859715920 802066877 238993428 797293750 359626029 613391114 142466905 176369373 132267484 384070033 520491456 268807721 100235089 811451921 468784529 105475298 809778356 166672287 467529893 880265653 723079721 676511277 688869650 942038489 978975610 817498492 850764881 27338062 602562108 615875422 833137923 763336179 133937049 767709091 394349911 213265915 232145217 871373080 474355872 323806740 766081492 194458860 142018183 578939673 398774999 794685694 875606880 230358676 693067163 805234037 844635332 375852963 944754211 919128643 416127416 955383055 555744795 927342850 905682871 659316608 579760575 944088022 220520020 909719481 717498991 583751820 211756722 30609470 13199572 720384764 697082314 146116912 189787726 218699891 740452157 454231976 749988753 868143412 256204158 41321788 397666065 995640313 24476620 820409541 837479815 938309234 702717146 634650945 223479535 484292588 425624479 704187531 604459740 771748731 322454253 624385363 664292876 706728218 944238186 926772489 213894321 688251476 904490348 343243065 867198604 677784220 544206986 999362813 977994267 984524080 783752734 637083168 728698067 613178593 355728972 426988795 35507598 547505426 262819712 102096078 404167057 677889250 138682372 344786692 71190194 510276172 106281163 291476686 612378102 393749281 423821900 43400331 352581327 190442540 323021686 620938656 287403837 10903057 197360226 292712291 552213374 20190990 150195690 756714146 372895301 166325719 258105440 246183406 34201523 772491454 764931160 535476845 708115132 35481970 70054228 765943545 445045232 665578540 449330510 455744480 63400093 660820375 143122992 374813207 735014523 401637784 498511518 658659105 517861332 169209290 192680443 895224646 718101278 643597977 667018735 305965558 795007868 293279617 32146159 496285189 779150406 319112892 720339885 967273366 962950729 916054436 994432599 472998705 747400482 773143401 722712046 677900254 260641457 884342716 193172562 297057810 608294011 511333280 290544892 191278457 55758486 690561440 568886181 212331025 666021328 941302886 656860366 875536955 282062793 991088840 767410466 542614370 371347878 822642821 399176121 293580833 353453572 96745171 648726256 74085516 954249775 4982132 810447872 601909033 451764917 754945659 275175937 123921447 890963498 869778859 621068721 661618553 300177753 322083999 481875429 719038188 813952816 628472053 138609532 580238708 632456334 540943583 670541376 62003660 144504237 818383338 564457713 792694409 384154433 661016027 161574557 199101888 510897780 674055194 731287223 440401730 820925555 204438403 787643166 677494556 627664005 486247881 747864804 855517845 983949618 665861653 637003668 410277315 276314011 380688635 777478685 876426224 215482006 570878753 617424840 280052214 612199877 16600625 458589226 821507911 761897240 595278922 883209330 319885358 791606690 12100748 74441288 50795040 695747511 152651690 32048124 421348938 314946485 896055135 955459997 484456855 849752912 342449513 901995313 511740172 751865515 15698407 699370697 709307072 133966101 440985919 264253810 555803650 256434687 436976498 446246389 526533321 225663513 74104949 331053256 670391847 511827819 816616598 42856310 615373285 137836201 787554754 347218213 963680876 331209228 689577231 261250674 480871844 657470198 188904892 298912503 119054678 273648041 902946988 982561133 454400315 389431163 648858854 736513701 836135542 619400410 681465798 207075189 848660732 475745985 161735928 828418730 730162572 90512415 284609949 589028630 309524064 641958583 98746037 768963101 796574561 363129666 582717403 247945730 949485314 433597758 634481590 813992348 721784823 909241816 652962039 514401356 421043146 571928593 789837648 13451705 627380890 540315672 660394592 687043475 859652174 188361623 509814057 234797579 6683576 719537359 551522024 906543730 211936839 830475127 23090749 702450341 720424286 585360385 992735435 700901152 682705230 509375216 222405766 12224341 167838061 641618104 161997339 149301357 535136422 341420899 396010270 859395797 361683472 740667761 216507182 403678089 70171495 6350573 261403329 626167523 137838585 749430312 939661883 288870190 666337422 194549997 590133196 450997937 468240144 572491611 287806879 488604320 19430486 299071055 210153382 55641010 660191318 429934724 7512430 196766782 23813924 225547715 427866296 148740473 287080262 875935472 270562519 687737330 445225341 64290450 756132469 132998453 342357812 198328857 83853134 282422752 420159568 345596596 985326720 255247569 558966884 334978247 844415642 353125208 75054983 163156848 701058002 75896246 356488851 736642301 932734059 711973484 412085 393531086 151772829 179188181 5018713 274033949 805555251 313928987 289698382 184086369 176142161 291254336 107841051 971859054 933334806 589230278 532924245 393855101 940247802 318584998 976054501 442225294 866656493 748856041 341714805 224151639 510225627 991914074 163570175 116565729 749712615 321497937 32156914 378277000 966765983 837611085 860803277 737122955 186884486 748310291 361475086 351346737 489355241 208358184 662669046 349726064 737899117 388998942 395293187 293564154 971345102 893173696 503958648 142752991 471253032 894720113 837745012 441513762 890340969 805605123 839854672 359146219 141317918 717486413 440080635 381151890 37789332 396021142 113464213 126054074 134231775 284778363 371082305 821462674 507055932 835981645 662463785 474052738 639891286 468022138 212777955 898562902 334413674 485917346 231796323 290639789 319807278 749328506 504106944 299540508 849822998 822519000 85248789 65620904 369503032 282903618 772167664 128129747 279209025 233680767 779958685 251796529 219738922 907420712 907949032 763626625 633587231 811126222 689173656 692991865 7434085 747681242 310871326 659690251 430398272 674712471 538322117 513074430 635633088 638610991 625768116 812796088 451188249 944711510 261357892 864352414 221754834 451573319 369049128 738849067 519322884 268684683 116861080 883885402 784417535 73229381 565708982 368027471 820751411 893766145 2652406 211949340 155486008 880096995 706247455 217699456 561247133 296975097 421698582 371217187 557245405 535789280 448002549 267848660 940100095 605547177 593621261 506128287 58130555 424283176 744108086 942709574 671102488 438098005 56893221 854013538 46226867 280961918 104273747 892600195 923080673 628578715 457305665 10843587 901608259 180797828 474124864 73668886 799449908 70734497 90075792 790210099 763682025 283456379 333901072 182058017 702533284 996946475 653760585 31216037 800040833 70361617 843080547 78185311 736690477 879173615 283269385 433227410 971155866 40027369 146255231 189412195 785231451 552158217 123398252 62942458 543373014 694670056 999351237 306585418 515039970 706994707 266064250 35534799 280733731 23473552 868516459 869267954 10176241 379865431 127497048 793538686 982854246 674336109 654552389 948490682 101720847 404844026 331636354 711916122 953182068 408117926 50708803 349741580 758554437 22739012 330781562 489960582 90654749 375466520 250829367 276741681 19346664 332144481 431640501 422062952 449451262 719314648 793131088 494121826 195621257 211900080 697697064 291034886 760301485 454861251 689357014 933474100 660168306 430400685 332578636 382002384 147626488 820193775 317046140 561786834 48860838 281989898 353704977 385471624 28899218 942562332 361029964 412892448 337897944 228935837 828212370 390764778 630667810 749607359 856849273 447167727 595183058 428018397 990681427 922416190 815880387 496782722 187677341 636968967 483813532 566158905 228427183 646965079 43188035 829361360 435675905 982900927 683936725 107311722 327433229 39708583 846425741 904858956 108383406 110370008 352872549 57374772 879815674 653060512 462297474 314443709 200083180 595569960 559061603 640531751 708957164 305562938 530156688 284269901 358222218 708860468 886785669 577397220 614978566 851135509 692157762 272502337 525633538 579644566 232497373 215761132 610110458 327710815 281717085 650576273 866213603 505040693 87999317 292938037 146942256 835948275 847392555 562220443 334281673 911038607 27850705 350536491 197149790 933510599 848567282 520487055 553289414 788984098 863232123 155712830 174967553 344470332 139835078 165163881 687862727 61553004 926952350 917145817 704686005 974972140 520646012 366417968 456163006 322495116 654882018 140407814 622364303 501913896 573719867 811002449 301834512 331965810 828487202 256915278 851533505 886658073 5418642 196680419 993046301 946495112 556406070 756792456 980721905 814966891 727256911 801803061 545607907 255423941 776897474 40999526 614132196 792108657 647755443 819164500 654922790 433057333 597609083 179064720 394921294 882835321 652137738 164179579 373530973 563058830 256016380 965772109 123117391 366680082 941859196 966327020 680929222 278066499 359759747 918647171 136787043 540951392 189585672 954137185 7544474 863472148 254874364 620186019 643704762 637100339 298546786 170739076 893712428 632647816 493671064 922988081 678865597 442355890 225095027 724492932 351379360 994879395 141964917 116536303 865461000 12714939 975861757 723021858 480452027 174770517 190330263 636574848 325621631 368163496 598005787 463816140 263771094 135819541 780217688 69417496 807486452 721606687 203516267 610649751 667401985 347045519 292711376 889789133 388294945 716171652 34732640 802146782 224159098 92156785 819945778 234238908 365113011 818214336 536972489 44472626 411936502 684228000 986169866 610289697 576716960 711424547 762054916 458006657 241052725 674483821 898314626 74774001 246490737 395496966 605668989 70540875 305077998 807251963 133817716 762776416 180060447 543954242 213634761 805779848 720220321 218925709 281642949 213543409 877791059 957089052 647650650 522623433 371843117 408405323 40570766 70329534 905564261 984747013 333853198 811641126 95485649 95336123 121438340 448237997 116185255 340330086 285218543 52541914 847277927 77618973 338119216 422302166 954953382 146865352 405492079 837432988 166434700 59774700 160682412 15669072 499693551 417857369 668277712 582884260 97063023 153514073 890324191 666426908 451061971 95261768 857795560 420166708 459579219 41090712 372850905 624509743 210507421 438607310 696005901 611098708 992904507 856080465 916732094 533741395 30508316 885503085 261291692 186726106 33960040 661897681 499093141 395089823 344921932 783205393 784853267 369783751 521772308 977381213 457997113 846884542 638546190 22533845 243561275 162951371 201842431 325166441 897232905 226620735 540300204 907609340 507559469 653154937 863213977 524300345 452431198 475775536 679283762 522822579 521399561 143581741 666703136 106503626 262028623 923537524 484477073 227055240 334794406 438483162 196279938 631348199 105298049 411192637 894416514 145474337 294195651 281748177 652537602 838466617 371224079 194819793 416005386 690240670 762429150 340283062 1400945 850950504 55342389 612268447 156403052 100338191 168140366 336355714 242429514 698358109 42502293 984663418 965725984 926574453 963503222 816709056 317812013 455541354 318602282 323528210 318691291 829671294 297516301 492154112 1127649 936663064 179979480 276330113 208656217 491113626 705969495 913527989 308292608 249928085 146606524 650937432 47651239 884153950 500557614 857603622 677536213 443583446 459650062 466383152 655135161 220475622 521217735 756375026 902104594 621844329 905474887 498043176 529626580 781462368 271744075 931852033 316715133 574977777 763832739 810730616 41672957 439349937 857519701 283303450 766862440 22896289 357562841 400652037 426705565 532794530 849375325 125307848 384708729 400191435 326743567 869859715 577455902 87967570 814904129 187309394 418600962 312399733 689720396 849914316 465010703 660501620 780586720 269160268 220052462 704474388 150442816 31757199 190163683 172430721 186767563 112631233 184767244 122352200 320506207 350311060 618639898 678926868 290501006 798422388 717728106 936661049 990744854 404864099 664329356 757766665 485458295 229652444 155517501 738775167 245362969 344752587 680039987 366410046 823015975 288633041 448878045 864959945 478885821 925248043 933989562 607389696 94728633 439709225 836195872 131446017 278416330 383296567 296098017 611615807 371078840 54329245 461869879 703084448 10972497 506238939 351141082 779508263 551539776 581663100 597510548 957282251 15705827 485719848 412138469 987689193 521721466 992943636 209888803 753122317 721024087 357487868 280726320 665813393 431404582 407633474 988904072 899067764 32631243 545264231 671187965 894959287 359660721 551926044 332966870 437996043 246721595 780023945 981551387 879137041 27628681 880483765 740403098 47555896 211055176 380777011 420110949 256533000 606719848 724193946 365719659 725274476 36824772 988025232 825368487 353219807 90813698 507071589 859405718 647695205 344379681 345853139 968297608 224870381 650486132 161573599 702976552 553640681 329166340 278402138 435117634 16393205 41342769 957641230 132167151 733231848 36680138 55957616 850183982 672642779 910314910 370963937 888041321 105273455 672103174 450329455 55562047 644745904 288930157 648812396 548724247 827129167 470538175 56694554 806508424 273571971 42577187 138126241 461315133 370726176 37008926 247559208 843796433 11173763 81171102 811245394 701003107 272249918 30053848 132064021 850027355 356544816 139150181 641526481 45552101 948406220 515132018 894151811 924572935 164968808 709678609 558851004 237624159 10952154 297906049 171669633 873446768 281412601 929110290 231119815 789498966 548083521 550059472 429454908 574701142 801225345 196583520 169666290 168149899 151902444 942402943 568996053 350561634 28934645 724875029 615295143 748298797 634447481 415639035 818419338 634799742 853744727 880396662 272604691 415794648 94942209 956249130 831086038 87078947 207272646 639723110 599441806 848647226 365418274 207211511 708853642 207464565 694266827 964749912 499082056 447193515 463078985 502881234 819186257 596545316 448095979 772072809 574803623 581122238 587920760 272138780 708625673 627441481 185493273 571726525 418654321 752538645 478577502 7460167 856217376 912924805 588227674 887985947 92221811 610451822 506824227 695688242 7041505 776119553 416379437 676478139 582486865 629519148 548104432 65528729 356219578 252052623 756803796 216179896 552620546 924565164 690742349 453319469 896798966 624545639 458227250 793116512 827446348 64779096 367012212 103964506 543078118 626854621 229936712 776555520 226770243 588648350 322305025 878540879 817455502 898734790 112398319 992356848 268023307 970542896 105891335 863483141 920894509 289377836 681017787 911532363 168427912 930992968 627408813 908376754 4592408 237757824 65673230 705244798 596572154 971628018 412891763 457150908 456037261 272174220 237680087 122388901 828870364 669973943 580239474 86300899 633099634 839329649 813992346 528877532 249716360 930240133 882629569 585361105 134843020 900284990 152339473 836725020 465796110 444825222 865677367 288828798 959005791 724724025 624068036 710911262 895458037 846615955 190820741 256784582 447514564 300528601 688178449 480955434 398634967 99927979 318448227 570371748 47950277 196925335 482389821 488607902 244578204 667215427 395865038 88776385 652774202 34700946 45542057 604157323 141308975 747408591 849895745 580984260 752706230 573898672 423409672 960076988 22712358 424092676 960381959 548973505 503282148 647399522 354897229 20996714 873397010 427323069 881788052 671458809 364418186 407731163 464902241 588113971 40555140 829724254 266118811 27216028 135341051 210875194 8945229 79366326 217805296 890810618 174833282 886758341 373911111 989380827 980351549 43863977 231931647 184907935 881179147 449101183 788442903 175137463 754896341 32209118 332504053 220742693 361103854 530912765 869766847 720812948 529902763 495805074 330330372 987529414 911156117 553796659 441968316 394436798 635692394 198010665 31949025 139525743 129125047 94689253 147235722 647342036 37719965 86198422 10467865 210001712 368791533 155678668 621705215 972839492 105453777 927586844 910545155 603330491 249245393 800041603 455262694 551911219 245186128 708189715 830503484 178971992 837792119 624414500 981344874 382920737 303246883 814427075 155248922 395460698 297991638 224027851 961335070 264644679 480967885 123128590 680849445 62399873 822325868 744683705 644823041 943941546 58711032 247003015 859161567 87842123 918057213 797877212 391662782 891095246 750615688 437864090 557286650 709976232 657150533 601385760 24532891 403499090 69352251 786883695 623249973 753171944 795699000 978558912 1216556 684868688 597758420 805871143 258345636 831727815 729578161 105544570 741176790 317319303 883914443 841196294 252449041 19831199 313731983 267807735 504723489 518683176 943918605 74012724 365581372 594784036 715881524 634125297 315229429 697365670 832842130 347833158 412182572 296755412 629345330 88650621 559177948 605882042 926051697 880582754 941544405 141902263 821140422 145808037 712073800 789455961 277976861 858500182 403214681 834721397 134462634 161581688 959123855 382104850 800605626 79361828 168469406 260388411 454835238 363943912 980921747 523370854 794740540 656966338 589396608 180379479 968686229 397345819 279155919 904571269 702983700 716312946 351890873 115998904 885067331 324016637 518230800 602671305 865882305 367776604 99832686 733621970 775531507 199001607 583547781 843670496 841497473 724808760 71574637 53459988 570443056 746692885 486279706 259247309 770781770 879375347 719168301 649557714 303719277 189955090 528369257 467364217 198630191 325362392 579205322 46758044 933118859 994532074 668480067 891871666 636720615 503611833 717424418 774845429 326501521 888754138 749461191 366048274 333239181 404029436 88397645 787039615 539936558 510583884 884959127 210848154 107065961 855674402 509708464 54397970 185368730 625883356 417391590 42375646 429164879 905488778 433645534 62924926 363407266 202086751 415957140 697761618 449543613 88522498 470167756 845860123 511387228 296202273 494649655 368154613 181166803 824846354 865686527 919912378 285185521 120647206 688707440 66618878 759848728 577696174 112649297 379322192 780973327 264938585 160368722 328270300 854776558 411917491 78118524 208013827 121784039 598894571 108640358 746248240 525757941 923017705 298880893 775390425 949138031 81746173 934915803 92645958 692632138 188775462 405012036 994533413 453975412 75520546 967842073 321553542 570082106 567305007 727858538 53933788 821384673 22535330 218317741 718863892 158266145 5205803 239877316 126484284 321326901 533227006 589023999 742291374 575157754 853131063 832372175 286845478 283614261 378046680 588156987 846281711 870559745 430520796 950735705 151480331 546140485 512282269 838379953 593567855 426302266 219516536 929929231 421606868 465291500 261091684 564815719 717503525 26822769 557323713 254798106 455262375 390092238 910700276 140703408 577089281 706336194 330909510 707797442 160276481 245993211 889171518 825323568 378996721 576551666 769496588 335001278 38136102 135723757 720878383 171330908 271213829 319129771 116763076 922868329 28224610 328366930 427615120 93454915 879096712 545583267 46424839 281188297 31087999 247300610 255009549 285069053 903849585 54536403 635796474 341534621 71891274 503437278 815191285 998439020 30134446 714883426 686313855 205889409 316877103 644679388 764927466 398208264 308285605 346151546 168457972 468197368 9081625 29045123 168578746 428691350 281328793 942911789 611266033 784599238 220142745 964045864 154892623 765646546 71947674 642252987 704729100 749914202 238666342 306943405 603382581 938555206 37906629 22363434 283401761 126454008 428230237 183846973 617537099 471901753 989370808 295318399 662827550 665684596 739284006 976202772 584733912 845166296 378701707 485068973 76814072 951023662 229696066 599978424 631004236 193867696 448584940 887207181 323938340 137273413 512031165 638851020 275433172 965616610 435817632 174488170 251087142 255392689 221074682 566399616 772048367 745121114 183461585 174531224 665192701 830458529 282019215 453672307 108967746 901471972 761080738 662716186 268215375 149697029 710615804 380431977 671747859 186219329 784837059 754000047 942232474 209313934 335898736 606672012 59661889 155472272 303157828 572207532 534372545 295625894 733400788 560658145 139001048 72491330 828146240 814236997 811570257 378399460 778922305 408445036 741424341 30544095 531453266 265652098 186710345 624766110 586004593 865817608 712633803 475149477 290529456 804127527 108814135 635769051 317834061 183804253 895584655 249544233 379582321 783124564 12306166 330370250 280732495 826489994 617930969 398724507 651805256 232349949 419070304 7768366 191256749 2197570 906066323 931061638 751279766 615839575 868553871 522817244 49327062 635768679 571219232 90761783 448068007 461718605 36956305 350520646 996126761 366838972 498478110 642120957 562312873 29106742 35455525 795287302 248165122 611197774 692915754 428559292 847901559 624064362 109688371 512254274 315966006 954273547 887850564 362639521 775698554 957365574 917048848 489771304 492337965 808224585 281490832 855387047 365030428 790633654 500033880 161716410 731561625 980204188 630832843 974877267 966027945 114002983 934960804 997250157 537890368 587967152 859914890 604401114 151105567 605529861 79035114 32647710 812108855 829925430 752767708 941111632 233919420 91510725 354125390 134378615 761951394 400040431 420427625 52823796 706945886 666230224 800036211 485132912 524500991 70546170 801592491 575275559 59003208 9931955 651874119 949996670 310202510 139934467 261992917 558946173 857074821 208575987 836502576 818522939 585232399 137784070 790545039 364348058 10417101 214442456 201408012 922950296 272798837 429990029 480778712 321943017 529529958 309483761 222825661 491753091 873253860 182186087 306198323 561709029 403127592 383564272 136435393 467612607 545761910 435481944 833282097 249750428 395359022 631576496 91498823 125344521 666907841 909628828 716013878 543806595 631693716 581066595 668221504 373647538 742331056 395134021 425405700 260140473 287770990 561454451 84912712 572994741 212100573 382927153 617584245 148873977 325969948 561909929 680328796 14794138 473543990 183945778 71102657 786321342 737591881 204624670 733383788 725389678 648396969 590687517 125738930 940227350 359906696 179724803 703971863 835976512 775773076 503885305 200574412 570143292 878408139 563392859 304630913 247623451 893173651 140660183 458813915 605794613 55884032 440472949 929787549 489288361 413237110 251013772 930182221 432821946 295754773 896453052 874200287 129673479 852138570 338038031 753905145 622159768 886484940 873033395 613250745 693581785 85059949 803937545 405006670 414787394 719663564 777957503 279297541 882382715 601155427 922200353 788328903 372092215 669612234 816349597 474818493 667474591 631239276 199841045 140198209 529071602 926519456 602144899 748554756 284778283 410907854 317735778 406098150 652057100 507624692 401356614 666085209 238720679 969969749 360430639 307584766 236832584 68674903 208216865 983495833 380124683 132787934 37300768 130010329 650529515 160246856 327228522 889690674 772748514 606848601 446018045 381455924 804929877 390210732 694890435 655127289 118253420 919744354 88288999 181613338 294229118 277454534 539138315 950941909 959919899 599181330 514421709 626748316 236040448 95195143 693180501 196711798 241698879 998270055 831015241 932963296 415002945 29430149 662632348 128345087 722290218 402513585 714500570 256467604 589742880 803916021 46947931 510578439 690592410 477028899 471477250 56366406 587957463 875080907 30933637 575464020 409788115 441172761 375940310 939453669 155441981 170418066 171884284 736221937 423650754 51413551 23787688 796551027 26356449 649103465 429061238 829094334 813069348 68447726 506817599 1751622 259847430 532162562 352883038 890531859 626697891 593092575 663292527 184257840 640408982 542991444 566174154 124724260 879432901 209384404 389047633 20524537 450848884 20727980 66296366 586378242 299551188 993114449 993925168 355952031 999396340 432046922 262107843 734375897 595976505 306256087 608272651 335423516 111251560 179930774 417552562 960107185 832438342 273857402 817182938 227348242 4302335 933969956 68171824 309492715 883086694 248681098 442082288 242349367 966478076 486798653 834347535 452820354 666518063 131103706 747114690 238158982 701220153 572551803 476604177 32015980 306187626 821058978 704895369 280721832 88650835 487619543 824928096 24691968 775826681 952032090 194482978 75637042 740884438 176309740 225871073 602454305 425888343 199574566 440686296 868704135 133286807 571517813 462229806 381756381 515613721 95677165 89609155 997704019 696404404 74496207 13651176 454039320 894257533 897386981 541026720 660652721 543822146 621658377 403545789 53699679 813875299 825733185 660971569 840492862 472100896 312489310 468295041 212165461 787040169 683121634 344352233 914313024 230531000 975738029 743953689 507055850 454661838 420419421 42999886 359700479 668587205 958689509 675016060 466328708 82820523 128407875 136384057 470855776 794275041 915900270 469609777 630238410 808973637 606364758 471112471 491219479 959592367 417587292 494791012 405642681 4617249 819823235 930117306 777062011 927134063 751255145 130906306 365565436 660495417 797117680 622731707 619022948 608151518 474578287 491712289 921288886 361666026 577661197 748886884 241996269 46353180 818816202 870913315 102306696 615144903 252894066 573231873 999482674 301564844 37878000 866743269 155455159 261815090 380749936 569907514 115944686 788227899 919497822 835491909 687507890 883300146 90313565 376347122 746846536 314233531 928101252 464291341 592394756 314362985 972402950 165070212 503518850 570080220 688351532 105940424 360792054 435066258 440248671 184747860 52271000 46690422 425231301 525487095 527876698 219904743 870811915 818631798 966138189 92409064 685006523 983897431 365568571 392247428 756250649 556478448 626866863 345457558 98405799 334455679 997785089 492326191 372749440 70054107 930483845 231702916 212841765 991219824 327222413 936868109 605314070 621561652 81721789 742105399 273205234 943411629 290501934 295896029 681912171 974809165 485619237 12555241 90177200 162632150 675810002 673278713 571676104 825560018 996643842 386135283 65122902 97621553 126529446 23066613 93886612 226788239 190721144 64171135 220021152 577927692 38408854 415459633 891957321 660524129 423674913 670485422 795691424 392634719 394230175 565917601 661060729 335191541 483163689 913884685 68758656 579498381 937088261 566108095 633991011 785883102 436244957 474771570 473914777 711134511 843132192 687608062 397544368 89670085 202003022 171665539 575250847 291426523 558273384 853247922 850975505 131479231 581276975 717250537 645121269 958519491 603180102 333443637 938775705 218686368 374380743 546276614 365358126 57145235 291257773 91131850 175279439 644002652 144240252 674935067 22298786 734094665 322524501 876145576 109471860 789240676 113454334 251248990 567418797 911529195 61337609 354229614 917300140 262498795 517854538 580982730 524519932 760250375 215371213 626332691 481821322 716974852 915046496 806680921 88417790 576720897 727701060 60589960 3054629 913914022 524449620 483778996 932385032 515996470 974884498 654129796 747702955 937596641 112649111 558863766 138428892 208376381 677534379 884905981 685963761 433995009 767498951 409385602 125502436 501577803 84079691 156926 55403957 516429218 668082819 61447168 354359946 516864810 701000896 645484605 336995584 135117779 880053029 779188428 927493387 770345415 104935945 645571861 11883893 324107088 887490365 817988798 756969924 111760632 659381360 508493681 134786216 400188855 292930680 619154390 706265774 569152759 91787940 31504968 658088490 728309462 145014540 59187601 311588477 222787313 183456636 62358119 247349393 190258823 663243089 460569277 978113462 566950860 716126435 361907996 179488097 419160321 903319204 326488197 359485604 318942990 435718386 273781178 374179806 956424798 214073322 741179226 206418397 262621706 115731701 585727473 510970836 52227334 628264398 471124692 964705480 979123742 236748359 655665273 878164653 25064049 485703268 618229212 78372359 948259357 792445688 577365391 319676369 945320462 171427164 149337827 416822372 228482839 436220868 630551503 585935046 431161217 839805871 833044735 143056076 631872121 234763979 496130319 351375331 934254062 960089515 923950998 536016296 45622113 526289687 881441268 734685315 991309730 777848069 14273371 918427783 432672337 597369511 14803264 844160182 343971443 865802840 982084690 688904274 589243974 968456969 46186773 279871139 892927157 765479178 822299071 90362088 59951947 721369853 519290946 721320277 444521547 463337197 596735506 241292923 660258341 850633567 337801013 623077503 846409044 946194973 989763115 15105292 106610366 49797246 949942598 532113691 934041447 893289570 248644600 910622684 55866915 695263885 84855575 165967333 828918489 321198836 394259882 555270345 904212502 499646356 358894570 424328414 305077636 686087280 366343365 59871527 530583770 929875908 706865201 942156186 595894352 25913803 665412495 648921832 496582838 475362905 240680009 751702948 604834838 788535914 132300533 284291416 2343598 774207550 509778491 493806280 992533140 539258218 334827284 648759755 209004857 234477207 413361487 490772876 9645287 587007517 905312726 37113842 912795302 839695010 720994779 136688236 219011267 966401397 620527692 92915343 880275043 894006727 761961703 900118264 690169166 195934121 253760096 47022001 517341227 738558339 922500813 84153501 86655887 794994699 366941688 342037150 824352727 535487471 701484968 757125879 618044735 960770129 907835564 998614874 941434491 504566974 64602000 992290054 234311772 111566513 679100032 926881613 314136490 972741954 597831725 59264797 549276953 185373601 347239925 626941627 447642035 540158623 464981936 927869803 57927246 855425543 362325024 82636905 151885680 424048215 81722655 541177919 21418465 403262885 702325823 811313148 402238508 159897381 724445859 240124825 294359004 961871819 867600715 198237615 683833192 48569958 588767749 40940267 869488341 370135555 782898960 77370269 995714437 821158842 96475584 999114180 419252495 542081616 278275283 322528996 380943719 202133577 212341080 476829617 992860081 889460771 171033987 229843198 103302740 227770673 530586472 854120415 757171184 840333396 614151927 957627325 263777922 668360102 737727465 659332016 409029394 901467608 156076654 560775500 978748893 745437167 833549614 310452597 213322982 121677153 227277255 436226589 29939421 990788636 693976227 498465373 35954529 317485906 677634765 75004130 162472562 941920677 765757360 881988144 983189813 902616085 609657279 38016838 547479481 545222974 809002379 955529758 849013380 52982172 15809719 375653213 870138195 954505498 459854783 713814721 79989396 243672960 240058060 558934829 692376773 125979181 585534489 155465196 277749460 982617254 344720646 364730577 66666866 186845208 114996839 987015167 188521310 908308772 911683249 881521758 843187745 694312362 903725524 676512276 849668199 244497663 783237120 617589892 626712593 272941059 335941955 389473257 774426471 581496672 298158206 66243916 270359629 544586635 446171941 671043152 359272512 278032160 354552057 197214420 764231660 992460471 56484441 155709136 989605693 548100830 224234570 379653435 536197133 811995336 585173236 874580713 577354714 226761835 907732807 909309890 698975357 698690317 961876541 47265925 505315365 110560654 946979079 772520501 432848543 554610172 266664043 8608330 38313087 860955093 4344833 913246323 935167383 204166178 325779512 49462384 390746824 213514942 165584111 650445641 690939742 771105170 182214711 208690452 152234230 156613231 329493086 476165049 407574385 155152641 81105117 581948826 798084523 338337803 884004690 875203867 154359017 666691035 105192975 412082490 235950395 654004138 695236938 257750671 998674959 606233456 920475617 923960096 796076678 178547958 462379499 860558447 615553942 470857611 401492789 901455036 157153709 546980795 304764544 285374422 171540370 58172382 239519290 817867779 554196920 672900334 233547736 289640425 586772007 441838935 920423795 678458891 385423126 395293106 679592038 572116096 289108154 217812494 265487542 435178747 99496041 975029554 816050682 277058741 48289927 271248635 286143336 71237515 885152905 852916277 644511156 252471854 728127287 713586404 174215516 373624596 761354890 350604024 38251834 233143278 773579719 987612848 501093159 590126517 476075337 715639443 814251130 250088806 984153795 131436660 454161333 718192255 428287430 953065664 340614028 207567622 114873337 420982692 873510401 788193775 982981554 682668229 249937338 464890236 692783955 906878575 379204951 489597606 971325149 535594527 367158924 404452554 551538472 709279300 199032713 622449382 931799033 218961029 962097181 922264512 644542503 502051979 580305622 117901721 663921529 472681847 272870602 144879021 237133834 786939567 788106579 391800817 727258969 34371582 714965384 90032482 992947304 321084329 626753922 826293138 215515274 52360853 969803480 626666833 724568193 361149380 422128250 425416156 426522568 904715271 376359192 508141435 845785453 138790704 529954572 796272102 585111798 478693365 554780653 277161636 610449703 183541122 435789970 283977939 969979872 210384005 374541156 741475404 571462947 972520044 483973457 960935736 819167632 174288973 373931851 759955723 581764347 135726059 447694092 189405551 729388300 712799680 405670014 505775335 823394465 844047889 270926790 121983145 231404600 634757901 780160661 402936026 997120 531473368 696060476 984727937 324262030 356444297 121250691 78346495 616182535 328345505 19199027 442528883 105732570 271153320 119244612 475677219 203466249 54204927 125875149 596088471 138154322 403059488 387997944 491388895 173453545 110457408 830924043 951737896 761356401 648716022 73203695 672180895 62194957 174383152 378290729 107376306 708201843 420726939 954778936 657891775 75694754 490604088 97376850 35902954 628787694 30545870 197912997 81804152 314124287 499759724 5820273 19755457 373590241 498827930 632893262 470327139 197442463 639948606 135635047 780670900 77412912 703853270 78570913 346319249 480973761 531829577 942246838 891988568 476798601 748474310 157788543 191882159 763329954 304167401 9659386 822085978 341713915 177096520 464661643 532587923 525007967 493901074 19861234 987417656 295118938 74739638 776505929 73022662 316084715 614711660 632945033 765896371 475299196 836090696 596713035 930006607 386383716 736871988 752318166 872669978 539418596 530372176 882490437 111576096 7550389 962287579 394251323 269602857 9004348 757469940 933936323 57968359 336504786 770469103 37972940 207605205 763116079 255119591 679974073 27809567 950875044 593203825 219615687 440021286 87225926 74787414 158298377 118496362 679585251 200228391 530273237 689733196 801446019 544397518 421421317 488126861 544668677 331382141 203354224 412355157 966716712 353809171 259147102 699313390 554236958 591025851 872795107 249390559 359264331 898556671 21145400 205366556 917016438 895585518 324471684 812454789 981314276 739074061 233361200 187174482 594853327 590146442 940391024 973614802 484620558 680222671 299029976 119305350 49316309 582535591 879478346 798864198 857492842 998982806 1525884 740155068 864071559 803069997 450532980 968114345 366358243 819509901 501155464 939739543 464790849 658736466 57188524 309409448 133697537 725642247 198663343 749657422 856807639 761014441 331388838 977847908 699473071 859031873 59888276 341053447 796419396 592391150 915165454 346687216 741430225 145522134 613343344 927110962 850111787 940186427 725385011 7071695 738834026 648701218 682124333 44263650 859791974 427149754 551558502 764904142 18074066 787772728 346211053 613459397 445092059 836027524 628260197 529814323 508068588 162761448 906911122 235802339 431337463 54033173 783839505 741374048 84817586 505410529 593529486 103631430 530974024 298506824 927089192 479865214 383733701 688389766 735330815 653795480 482034533 328993593 788793617 600703663 825486846 475873900 999433375 560533991 151368042 661328377 598444579 241020299 781216754 52667475 761272646 933736395 554591794 238202645 903049743 661239777 900047000 107000650 594537298 924405818 625413240 920682050 379025430 864288303 245691589 609322855 195353236 750846134 2414080 853568888 293289282 693114704 968312816 172790957 220880127 39686542 100186460 963708185 145267026 268594212 289725034 444417396 382582312 732686118 90557929 306537698 384508116 482852967 800988379 120600393 751735948 675513920 604152272 974486517 65199936 713558811 225530071 275466231 845409784 59052294 454104016 635329749 229719620 633486599 143896009 711781878 27913138 759924288 265479893 218986450 674371764 148563125 829319964 600796180 863676068 426357602 357593977 60516466 183382043 481298680 272593874 862371800 741973043 510297366 579358925 878492784 271457125 412237218 696970764 53233175 31284903 836354135 7061639 858631650 421558151 417414230 275964383 987132664 125099468 848671066 650268894 758386900 261665913 849056192 964784778 723619184 949918037 742766868 240482599 118715860 498308053 534411474 224152654 308029861 117136933 584194090 168058246 98195701 536324112 424325361 856174921 714746690 31157078 943272570 505376694 109978550 750849838 555212421 862452998 79479655 716238021 844839366 290506993 377012151 109427185 524964245 9105020 456196690 284793918 214603103 499116244 56929090 121469805 857740062 730535101 524348386 646846626 609149565 218916417 97136357 518396824 985883122 711542804 474607078 664075459 884326959 619338348 690914565 507041831 666185516 393861894 650396673 414806111 33229769 780893151 99566205 130800095 476474211 104168668 933156961 5788317 939634271 16910159 601890917 432395473 997876001 675336311 509449185 89992325 216756155 221887678 43944828 149213748 817096420 214484537 269997403 279035443 397203259 118113617 479104720 107536493 105371740 81948858 534480184 860558914 724439505 8148177 359589846 361440122 259696047 372239127 139590592 52230511 186056948 752577142 612371674 418559835 463990711 667516653 494787914 959566515 451219437 222855759 318046096 925282448 68770256 121659271 64675729 283469502 482512019 900512174 808432124 990359537 446264696 214266851 929326189 769458454 767149763 7069320 150930262 32053121 900143694 573381479 759718232 865185187 75606162 382019243 696839610 594170075 532543198 574472204 535388099 711194855 440531897 888071632 233502669 593275463 997937871 914938149 120741579 514905385 796463609 379539524 465945380 684570365 207408163 786646240 929917097 476042053 979838046 637091571 343057193 811478028 646422682 642527881 886353729 457379779 322071701 865141386 180991535 942035785 823497428 721546939 705549116 396305292 960293857 79517084 591547712 778601910 251457814 354478525 163076044 199777377 877386485 247695409 555091105 728725312 89199482 714144712 209068509 132579915 468447388 890555547 657094213 539294645 630741709 530890820 777970837 611576556 808619140 979602062 255173869 326549942 65050373 653767308 223246152 225199932 111370625 888850752 670070382 149398085 475508169 351500514 898524055 766297247 782902822 429677275 348306204 776418433 423381212 37195143 775782915 210205085 26699037 84360167 572468328 463304265 116551408 334835384 811820415 663599280 314042285 931736380 944409697 147440252 973887133 271844302 888727618 616826102 246956225 125847543 747586086 5397133 715665435 701621716 316539675 691879388 921625126 552370297 613699399 324161128 999405716 818703071 378559925 13019465 933815904 393765872 163661761 787791480 855462843 71528952 944069098 213881287 380101657 886794957 843841965 607024587 699564450 527363940 301531875 80580741 869568138 659448901 274777982 665535618 393943702 570860553 227972697 831128939 264456133 3614913 581886907 818490395 348378876 747468652 485144060 497093557 926805760 461035954 493470617 8219942 25538434 448134031 858542523 517805790 91345955 200653592 895377714 368109888 358945817 991681606 659314391 21463407 17281377 847784455 415312890 370905184 795930966 609580932 306949727 580777064 368567049 807478457 344317696 487288325 226416898 333757879 677487542 153835754 920959750 428682013 627082342 320149899 932030020 827397973 634142934 481053383 192231109 724277972 871561241 878449253 458680443 407207536 581005184 374530112 864179214 653093816 112483326 31375229 86808829 616675184 309843340 735359536 957556233 332491868 229227782 318754306 385481405 996050477 698126201 802131384 751757269 517088689 387155440 543239336 107497484 130339280 284224594 866437086 278841354 521401027 415312382 916316030 687527418 867439861 409926367 156899320 10144978 736962127 465740803 995704054 128466807 827066367 237346169 809107636 445344031 743399704 505553539 902394670 899521201 621015233 647094401 378524943 806685562 389310552 537846813 146138218 330781209 381919343 43311685 252783664 861151506 829580738 893555226 898940470 435342355 274844003 590404439 45750182 594338091 968490118 105480373 339404048 36310230 704081451 354973348 172644805 235111610 629670974 245425616 664858582 294152927 888759719 877652232 86110863 225420647 809819354 425208836 915956542 126119269 124520410 482980925 382128008 894083233 289722723 640604916 117491975 486525168 722260240 243397954 440950205 788171347 853304638 1839662 38389151 227391127 316458760 880480039 376352931 314766208 405367943 316900497 709524007 443649189 557959633 89360151 756609955 782129163 474973684 685812515 628137738 640708748 371187111 967199043 83928555 985689169 548882203 267563782 210199439 630575987 386446901 755480482 462689179 972160123 908312961 896181807 42130997 722151747 498173408 314106612 286063095 649714474 517659903 179043957 474096706 75363204 609553075 763153444 79453342 512214873 965188764 818984695 270163820 186895995 641106129 750751810 393252251 944263207 986718362 461581503 656934065 159472578 515941710 829500620 543091603 827788797 539790932 793725896 113326804 909652583 577148730 762094612 826719591 538514172 27187058 94220730 956441569 5603257 298101639 953965084 619167325 241620731 879546916 243876852 505326382 597287560 994135053 477922878 477215404 913496488 374302484 464200635 903106581 2231031 692375015 869978892 437675613 742313829 602919990 239029258 476159928 697037271 374524372 929404079 973625523 317630304 83024767 580894819 540341964 577257357 614100753 589642835 967055869 908935082 575662684 486120869 397417225 752666283 43494248 247028919 612268260 577910210 19884467 201867227 744955338 147354758 555047762 786674598 531388377 989238180 358281777 384664742 320867796 905440824 518811684 528681001 885054648 736051379 510980999 740942950 156886222 310396066 755540625 701310349 294750175 761650666 601036923 535151795 249004264 593504944 637749304 526932721 503751832 733017813 88037481 411480787 93118370 770922827 660886839 424248622 425239947 127855806 41086561 288638443 130175595 984539164 415872905 881383835 856442825 126109981 579808093 198116480 712333099 863535130 807236341 176805641 803162771 30419461 309282253 833552188 788789116 607601283 887761302 484526782 180260484 725405721 869645340 805436993 543692846 519880279 489693213 318212053 668191426 551315337 992469470 892097938 956648863 979777559 89323668 581866019 537213727 272793658 537821463 177506175 737057664 547993758 449116769 877936514 878785945 329502713 749790431 78273153 320631462 829394839 94884562 248519778 677127633 637371598 680380545 518653029 821025919 320873542 348590215 440315891 982508739 749719964 668724025 552829758 459730506 47447106 562887704 703617376 849106075 403539917 266976122 20920701 962371008 603354238 632642282 255482169 448834241 797410160 95184812 284420361 375800575 521529689 701277047 930944765 263853420 821599010 272054818 64666040 43553634 277022202 859744679 159953815 32591915 999507185 325152730 914344612 722894491 104793216 568614100 519821491 22118159 332682864 506912451 578608279 449816745 117233347 67444432 580581300 90333502 965060681 489221080 212181765 276921128 18836769 455048866 879519932 916665360 142226544 243660950 828326425 237730859 943036700 200140579 387195801 561685639 493063798 949990921 796736282 25751829 714809196 512498779 657043078 831369961 33875497 929157566 182015028 126033400 681347093 273804040 705951107 894245114 23673443 404594276 338408595 207797578 821939798 344453038 352750543 584958444 541801333 123386301 922335788 728144102 782675921 634682314 378450294 81348289 693991736 377892663 232265718 676381091 691020886 829626609 910623820 58314021 344796223 920173466 49592988 586293046 280555102 356880853 443869097 835518682 681250887 6386564 339977765 471014217 993364995 776241984 92706308 396861824 857166862 664035692 533511478 849221270 510675656 245618937 214573299 305289724 795099637 900991554 859250057 140118733 645124161 608549846 267804483 325216433 256589362 815578236 689105925 935691536 606095126 904175787 870127391 476316926 903540309 894010087 365126911 207923756 238648952 761491183 261337322 888777726 881422336 456480368 31519581 652991141 172055626 413317733 203929866 250469323 851750637 658761442 176240057 543493230 213719836 266170698 322784232 596515374 12521296 24862434 638711985 868498171 900012334 306311746 83425628 497988799 511268724 827874062 44622544 273431064 109286391 679317811 554250871 260081254 462533016 921528658 50082003 307203904 306608069 172194331 920108040 233181641 235647898 718583706 183620775 830242005 889991336 54436439 938312034 106301582 848092040 1529442 610368076 220348253 434249716 395136093 488117240 906750703 51816365 842762210 315891257 145298768 794077760 283160172 553449361 601830726 353552743 117197311 849710408 950524129 444350823 525813261 383324095 804219835 834580298 898716242 677240877 725380985 749903308 185130243 764600047 992183689 975265614 711009087 894564091 402126187 39238911 409233894 548595660 225860452 781707067 881768119 714578415 759381010 445834180 420129022 339905628 573396105 270650673 327183021 910744658 928336475 649208124 528175660 367728347 760804109 463151450 93623963 618060356 733967370 707013357 786503436 974727987 777956387 92463399 884059742 114460805 801761142 418058385 196848640 770999270 976037409 500976088 505279133 386892127 911121941 121541965 459966369 939787910 36805709 749668096 556498149 762709793 146704534 627418396 230967766 398757994 64695848 218967341 893551415 331555917 930708119 776010528 740502691 343892945 508869256 384710012 867945856 120518451 916864010 566421926 559390286 524132608 594232382 821869177 388320363 308775314 42655126 879100873 824895236 322549109 350027236 838225482 644856439 687143039 657533018 778309249 699786048 347056592 16116644 72419012 733086951 29883888 953950694 990087594 225368517 112969413 756081169 932965952 45363777 427854156 624374086 728225440 327685138 528391747 446759585 953264730 901923733 632898673 561839647 119653851 189154183 326089045 449072777 232920832 514823618 995899981 428327714 806520036 697731732 817274732 985516388 134419619 125723424 261892348 720529651 272907653 44393493 150531301 558232828 288584583 321229033 209435499 37704278 241402651 653547522 698493553 308125400 115116981 272816316 636592247 608343198 705219047 894303855 710599 147533378 312615734 871117075 155240830 422979095 223425095 245663626 884449272 159061719 260750288 646863544 652999711 32743462 34838278 675156005 85175263 757830347 955601244 174009158 235987093 735943828 264576870 209420797 841112783 716018952 636601293 32517611 408713755 393652756 32561305 607323619 132566957 394415268 938540368 438086529 904111037 917346650 966527913 402303578 715290425 394356584 988264990 982714861 56456023 526597680 417012010 652132512 614207167 566312769 698528102 438590832 98621761 959096171 891197506 995959109 998482863 624104979 985669228 713755253 945423267 87451810 640286215 717661959 855970866 258437234 49714906 663038187 476754194 58452627 268971496 736642851 960343601 576122566 779734995 193764312 15832521 973180267 638729012 493644126 100718932 963080410 117542570 564326323 868781015 548550846 239622255 346483520 86178701 414808508 98865498 852002424 533978256 502731149 788212145 811606867 16330901 194152907 898214924 482559846 874203411 695977181 316477317 543864009 833350589 304627508 995962918 975574822 831360315 747175810 121691962 274289054 973654451 467968467 566110542 979024548 392200515 425297474 233773225 583920380 726559973 304323888 466398722 875616181 858303739 302099746 625519375 867481995 891478191 352305754 217292761 916186987 917824571 414902999 452653072 592678045 563891887 995887425 400702033 159185239 87631730 767738256 321550381 318091124 832066302 844959650 99515392 361475761 677009759 437537662 853148480 366073174 565786010 824236369 781934306 748727034 712840989 928862753 25562624 968747905 859882973 702096964 489095797 561363450 757762512 603074091 598248646 769812255 367855782 129624774 371616080 592176348 637604040 285498673 172698391 909861768 889258460 441600999 248080325 877532052 493850818 677950848 621761158 857629012 72735018 420857141 291709191 375489259 545708708 967319159 419696908 401112919 908497829 620878552 894186599 929711963 587473837 170028689 670416712 415439884 240937833 141269092 963818584 604077428 876491374 663424676 867947053 39565670 989783757 347906820 569429046 468441131 792219383 783886868 56749895 650320526 282534597 592062468 936868326 730984087 737421629 915977582 525087865 889316073 608078931 231714728 782097732 25546800 958060979 706188936 332066465 526899137 203204536 217910987 569054417 462566165 140311137 433314220 195476990 134164834 309425091 235544947 548619221 555804357 242200074 458053148 673098147 377839529 695228141 59121427 500935977 565669487 492501947 434238461 248999164 353868648 145296443 741429800 694282186 475592217 655302303 129954285 152285434 253476211 879520225 543769459 735677881 836734460 609894327 261014512 855843522 360888740 896259367 100696922 232207738 716806678 58453508 244980454 993426341 901828867 194001159 956721677 787629242 569002132 136398250 59415070 751794816 981671967 129138727 885098307 921397642 43327858 764275272 329505987 25157400 231747820 172801887 337593621 885173546 882536316 810821630 755938649 390265264 747575762 231687566 786288714 293478519 269741227 519261896 910387430 516528114 582544627 35485805 421275129 82055433 735589511 416092050 664759154 904610494 724523600 968623873 645395952 743114585 782747343 559655592 122494180 861513616 613521935 847780428 218724715 419482817 678163735 686652570 141471327 287839773 571945324 767095514 115220675 566000877 471559712 299253849 424487603 814678290 708034161 626586441 343922435 493073284 760998456 649601835 79306131 705612798 968334187 227782510 543234421 987417427 7547076 112689065 319403259 668506156 461935182 137293576 224322964 506757066 597003165 282057116 149477389 952611152 647555724 241344356 118131462 344868889 780394436 61155888 940635050 530441053 93700428 200289285 165619541 188224745 927063073 398368957 470725152 342234168 677325216 877069448 149933470 787858442 444979061 963134564 524308821 816937085 828430305 646504772 305734830 836378502 39877863 550002167 966445835 750282306 814845122 794517278 375524462 554967393 555641071 402968275 174489439 154032241 645850608 153705437 445765452 402062096 650103081 272569655 793842586 149506411 794169999 322798089 25189384 326852302 763409317 67778055 894394553 729931785 516193222 762545592 849141702 226681485 676700250 219262090 580882446 144636644 639640815 765639517 809689841 228314520 565081790 321372079 265642749 544363384 287089052 558596138 300821753 626761742 862789424 792571417 366099570 526855443 214453200 565493954 492612592 736093345 695576473 263964828 688291704 106447681 153010896 588661740 691451791 12262523 240378869 220254116 513872294 111719007 5215366 498542226 473682001 488210160 995140974 177028022 731898640 662791355 521571088 37297646 844490609 157109887 410813557 231531271 211706178 870000697 388001142 457701076 266043752 175806348 129963371 366386893 829144246 57056392 205880011 216352458 862470639 968188421 362460990 838338574 827932012 80637112 958337008 705188108 216013107 319898360 339500881 648437023 546325131 901778912 535060027 41488842 535195947 107121663 553023211 852439314 240428587 50169309 52377301 145681557 795728877 93654539 59959079 754103115 911591614 619046290 449272228 793297041 72334282 323264712 959592758 479501402 984728881 416186081 27772503 688375477 597695792 412923645 879111236 636657466 305128281 961997265 900226932 475216951 870013488 505090775 898922221 293697801 979848311 960348817 434593174 147182286 104166724 17204800 951875889 755094517 171164990 973507454 310124266 749608197 93275012 685572476 109828035 330644806 828199595 700611466 659359883 809630330 224871915 803965082 434798075 973989761 633932643 705631054 815611335 707620601 383676078 473684844 718144755 415831641 237698306 714567939 595854416 182429515 340904223 959296278 5264648 603694101 104374506 103332315 281247949 473587202 15277636 890040383 825565143 536311591 486929696 891796791 96044973 863129631 597906785 115675505 631332229 443957545 283051698 728240447 685387749 939571954 887262679 474520351 882695984 824557518 413646201 406480970 57956804 156874517 856972709 36957823 225981665 577034061 125872027 401356553 849849530 598631366 733592944 183336796 505215915 917724388 846050341 406057365 949568986 475382710 604860301 599892371 928769608 251500739 141788374 930318032 757436919 43254143 977350330 317959287 738531918 507060731 82387859 703338971 300019631 337090891 75402868 189340462 998798832 155578157 334263830 37608283 468593847 781536373 619209335 554650228 48865385 78210689 710940567 65163943 637672032 211304780 998826677 960455381 476203965 881720216 245348114 569274673 576383140 195958591 43014186 274418565 678050002 759919465 70661536 831365515 362396336 832364902 225728374 612356778 431171997 505728632 751243428 962341842 622652186 550400622 769448717 214618876 164416158 586723444 14089837 72845286 362133981 726791006 32023609 398686503 173690181 744138989 133721655 970494807 394461575 966963726 511418158 355643887 846153955 749086488 284582171 591570698 545360314 656601466 408327108 587770997 780324545 156264585 856707545 646333170 365859110 328871278 591128652 10009584 972544842 430615386 220510417 961449119 241526845 657015508 938371585 438823947 219575678 596985210 212245790 960014733 266517328 18463204 299423092 176920515 340878573 816418033 673135878 98377893 204397650 753439366 765298020 284284031 863468939 674514424 253638919 684065312 581766315 461056205 573415317 566315690 256075502 992490128 986206702 173540409 488925666 723300753 898547016 498376119 928028416 150049683 413591751 844244341 755601154 441624625 473985685 336321264 372848984 885017420 604917629 376763570 325768234 547330305 927902813 546144412 401386515 766813117 59870482 16432338 268513242 831351185 928365747 18069348 138795163 418857102 253215812 59603493 62301572 880103851 503522114 113217039 854979015 442711380 546322603 230479746 212500881 646007678 453213857 191555394 900095017 202213320 329085407 254998039 234415534 462781173 523761689 154664519 950331602 321997649 390116077 870463545 691796701 490621417 558083724 991040167 550035457 296347153 14550383 474352443 421020639 789939692 475091062 149796833 862538101 413789692 242439689 814037550 493997027 205893935 722929555 779108489 710181924 960159399 867964934 675990491 720154570 425841205 938217387 447175553 175535462 218144978 319392607 374965224 77040174 20118468 987447192 773236415 187679953 940814560 884180945 913350164 497616072 491912540 869136167 211659013 580842939 155536523 919894169 7886481 753866846 378459492 972193682 382043317 32443443 910537906 221844681 684495975 543415858 493307904 498657951 184467687 196863018 901906056 307774737 146469588 396651665 293466885 302332490 785862347 554540840 289046602 683532505 91829083 121683663 299312671 71863836 717272644 581658530 631574366 20531927 728472974 773519541 741602150 527906544 568446102 560609466 124389069 451135348 49737152 51907666 841696917 38882081 204364476 977467414 326433963 465979914 72638425 773098427 302961094 414634612 148580644 118139611 20328745 235128004 316672371 306597495 838943409 278745829 107561143 119332598 967390516 80853369 301946303 924470618 36374169 121346332 341713512 577269757 167073722 840646902 577358149 759616653 219878809 11862611 804779479 853934832 773387234 473088145 16398920 777243819 831254852 194151385 506722005 195333257 65298056 800452248 952935876 508713939 924898851 985684090 661101364 879492741 330551546 734536225 232639899 574665557 927576730 726232784 673425053 865900778 521336635 687265570 838963173 993712960 106969622 214492915 626300619 417344530 94657024 51055753 751449694 990144943 641690418 486427733 260081955 670078401 464837496 823810524 167989521 198959998 914323997 634083557 256294777 913898122 894505643 798520777 880884739 126355109 973262360 340396285 256334374 660832058 948619392 610359153 521751868 237419022 68589130 783960318 456539384 885299023 513627468 947970819 627755073 448000319 232336129 894396174 661382870 103649872 248100965 947690944 365926072 610266678 453424706 726870500 601281135 821215164 543148867 138399574 149711559 839163481 662790844 408196719 555657177 855169563 136182017 573862458 905816761 953805767 659590808 907539207 157959370 652761960 484580257 926589211 70099836 553527605 66768955 124331470 518310362 120495003 19011470 101092402 573395584 741630588 279112655 254253616 753118329 889556131 399862676 734158929 375994772 592166257 622386243 215650711 462618372 510936955 106000063 369298528 713982803 156656409 626346496 627500422 174958401 475274717 5196692 843648426 999860299 963575861 121156433 572533658 478830203 709888086 499386587 480009915 607073175 437045461 228128108 817685581 523219281 684137960 518072146 534653616 158244011 704382894 573253418 445311324 89527387 966076042 161180407 781565973 909540775 405508544 301602490 104869221 526890461 197427807 598154793 22239086 30094087 684028263 723185638 937776280 405823914 587972231 797244746 990071482 577204743 766235292 872608968 487229405 190358185 876396945 422752235 380504001 526821547 275212447 192541531 96437651 652919835 80810746 2465268 691325299 127599377 998238688 866160554 674276465 807799766 171193561 982410387 264105698 655716141 320068433 51091873 425937631 974128231 78758534 137703875 848836908 203778403 160868654 956899156 294618300 544572455 203470826 468586103 772413101 134107382 468816567 563237800 475406754 226281876 112690626 655396311 743050013 16418121 859758175 304006578 642710993 787685422 526691770 433991171 515569444 656247429 52795437 388390537 472291197 817229867 933613053 548086285 601439292 234911789 224316266 664189466 78219110 40502445 692253991 982792819 365161181 776402347 64415467 913787224 847188903 100907177 248747627 200603835 377344832 355193047 995820530 108609618 189301559 868373070 511676027 409248776 201731306 54588247 590333202 370273839 370380413 117290939 849313278 244801304 241441801 202646634 784174797 784522866 456726096 839255849 248424585 150616835 758153213 15396001 702592665 449990241 125247939 334835902 717544176 719742041 463217353 423735128 880673396 397491930 869422156 415018388 850278307 590148064 89697063 364597506 69023482 681649912 253242594 648564658 281049544 533276167 293141581 332759999 489262928 601374597 329128895 136715028 541055002 865684322 493744852 436710993 73465562 873355653 999419547 472465223 221948985 716820108 199031052 588874679 185096620 324404402 177664191 422441614 805553697 971343704 142331168 62694579 343013999 456352139 741384264 222290631 387082198 294708855 540525359 201741886 151531150 352752139 390244016 927900909 407508304 113337687 797791469 604898491 298890550 161438732 511620282 190488693 994364790 715025961 537980511 440103420 940355803 533626478 531886400 680392533 646407755 135326426 275301077 280788380 171017733 846466589 136813316 608479028 770566885 383754022 651455290 147091592 78538816 845615302 708746547 149861347 525404880 852236178 699358532 441010706 484748928 756294377 900409278 422842433 860174204 293971139 309329505 668762201 522339979 639354128 800058502 168488074 199164206 972948503 339790430 532014400 645351572 481929567 377360371 517810360 201287841 287401232 342551167 953985506 719486610 729149327 368929414 490133384 16314040 89144188 36326266 423601167 292000013 397393054 936460725 949251281 714108236 147129864 324325640 989093367 950026050 357651452 118014631 39021852 214597737 197992690 672418306 935243820 21071691 391679810 809318876 582443883 476601727 34243098 785974852 419828399 113664289 511396837 238394668 340882236 326421235 20063246 882564322 66883051 897878560 774573000 872347357 851826771 813316067 864241959 700127029 71390347 933473300 433866077 970736184 970132526 216053103 16572455 247107138 704365371 242682184 920376198 527724077 556250653 499878951 178381977 541191085 545845261 133147983 448521595 385942963 970689129 285408545 542716652 934805569 299995902 25901617 763866940 526708209 84040108 557997543 796630743 916907931 319027673 244983462 274530826 846765396 795522790 550199783 823473102 861357071 512573470 928854395 357113955 789468277 591569586 306495354 408639404 248133287 932701483 506409500 184892799 881991800 493039920 227681367 794675207 24635013 957139387 552236429 296570482 832885160 252247763 260485631 622713887 918394283 60528499 482854232 75838997 608714405 113478976 317008986 81056900 950203662 631655245 182689645 506836935 973564975 326667943 178875514 576464414 85828541 119765243 452393125 191960024 717815877 311736481 332803011 781112406 746680037 291632743 72820321 561389315 597955393 746920521 926501251 624161408 828626880 195221529 954864678 598105483 783392016 147038887 883716652 795759038 698912017 438374726 724783580 629551650 879007285 352981020 115409154 865521485 50413203 268540603 650310290 461506606 543436939 65933868 506457666 163649466 763147228 220175130 761148404 447966843 143809330 292939639 365264571 910355324 715750329 110429737 799577396 428843985 180902491 613595276 732873103 142839718 482399975 815549990 570020584 916812880 391007081 398381686 320713711 210640449 347077427 578150224 927739926 322169307 858262484 374495353 514736720 197335582 803184718 406616411 938056769 984091142 225243825 382318952 805461693 859595805 445436856 617747505 281685421 762520090 152196326 646958031 488680425 507512178 316658425 32905090 356819328 178788887 849834203 138986130 990792422 152842651 540695187 722599380 842220866 616034242 792396117 785467409 810613250 276493775 168238724 257604197 27327912 195711353 238271271 81866374 39174477 383828959 569830152 405545286 389566247 117806785 495252440 181010088 248644748 951662624 864882961 502025065 103047897 961939197 446607342 543998392 157213814 578955074 544974045 183015666 684583554 298005321 783840042 970062836 264355502 136425019 422303996 631934449 80514467 348983687 296968245 539836706 774190160 78290418 211459675 664385506 130964160 356701769 344118448 986638777 487087020 528942396 693635474 497711773 915663406 903727994 954461147 754540061 129554215 274961542 323831434 456363597 5252578 156297285 165166713 58343898 593676612 911765031 930669192 684425391 925370777 592207372 731259644 223157531 311663492 17132389 587531290 968324089 605733598 549213074 866097339 494621227 982118276 779223248 722246151 451733644 838741699 842755342 963633793 887947656 513934513 293865349 911391554 806883290 936729429 857012980 648415313 781723230 615136188 16468905 819598301 263592861 29703771 73904890 875312392 365487703 592235983 685944493 950946470 478708895 373093835 429884884 997662849 425900952 412965935 460395935 857040996 267678797 990207355 899268755 482352535 764748673 248734965 65745406 424540038 277134573 865936877 396786031 116886268 164294566 322095629 916896047 269408639 991080936 1708812 458184833 933725948 673250132 637547942 746677793 780759133 224553362 423960497 551764614 837396408 829827219 373333709 445809880 12349706 95528740 687979583 510516917 497657319 985310100 739257183 634483687 28395674 564598696 496028490 721679324 99429717 979626237 558730733 503831093 507486388 501832324 450824451 411607612 291206183 719496236 876771041 118058754 879474105 825519761 182700076 694589350 115578504 276537411 834535941 786918604 496447240 741743065 360381750 582624538 20799122 173799195 856538055 326752760 434332197 124182865 153314312 752924117 890159465 550211125 544851513 696763885 15921089 832590537 369300780 67249988 935842457 259670773 321051697 901577019 513328667 598980778 194579020 246883635 679130292 25815292 708840265 378019625 810053524 452742524 423653446 37747783 214108895 929784364 561873707 412607384 917691674 833261315 99648353 404699257 250420088 645503704 898275924 123973852 203398529 81144320 507993500 830767194 801497479 823222136 425120170 639932563 404531341 668392464 10305687 427127024 235381906 813164285 937776708 362509725 288766090 845538008 752065870 114429307 141621082 467024032 201557508 222966464 38715514 733344656 351840358 376816908 959984561 459975589 801913617 437783279 988572090 718674121 3586663 461316383 354900794 116321103 586681711 271050997 112438540 888520551 235798288 211417176 354980506 464450593 466117640 691026755 919711894 726733283 217561302 630641819 911616627 431788483 162394190 329224545 874093148 157713539 304414289 462260214 753293067 347139617 510562766 769335111 313634511 325751873 980471341 592599197 3346713 674486815 107317993 402879139 891758161 141892575 375309552 548337898 230018151 66164170 21252690 499680621 846496511 308396117 636911716 543868031 603924154 573136284 224775508 265222681 88385159 883419537 650937763 709441536 426952994 312538753 79126488 232757346 377618991 803493190 148887081 664524380 804511226 211758496 721578210 935677403 157203222 48938200 522915220 556619286 457308882 977800194 888895477 966873932 205439147 731277030 215449834 78114207 650012532 75344941 451586344 866875837 235289535 194190329 228723540 966262705 426058894 540297963 893121749 366387515 252837442 34295104 913396874 157840052 649166330 403259483 359548658 279193722 914809183 880101639 338706790 713931296 148121271 681821501 982414166 802699333 277221020 321034035 907303694 618738791 215998136 115535906 947423957 574208746 401767313 807794584 897124498 627427599 747412934 98851269 67120997 488622585 892256922 512001322 716810410 307114065 587433917 770729095 651250544 368524847 657329062 156969477 431071574 182590683 763062560 2099597 980676906 243950091 728304168 141095736 553776562 404817131 889536338 271126772 929339262 390429822 624704683 928839231 908038468 761444710 910006375 934400755 263663896 765004191 597187923 367732797 620440108 623756067 362678736 311934316 37640738 251999814 857978205 498711647 575040569 961294755 494083508 116583409 838002035 796273039 878144771 45785635 642574147 717149436 364088996 246723885 886721176 952287330 269429494 304931924 157609663 765820911 63083151 196178688 215534799 662908244 593639872 9194369 892473800 486160835 714128206 459243053 674307758 751507567 239327012 244298863 523333437 842069226 825774592 308470630 40334895 422457300 226139441 481957908 593504300 603402034 686814107 153241445 97369427 891291756 26247182 345315130 171004431 747285785 872824500 162103870 41651384 152689274 98048864 34498365 526394981 755767304 301773008 285314579 215910619 242110084 773049433 877345510 498631400 924972245 851470384 393635889 560641652 485739264 325015003 411236098 985326986 260183235 582062111 974423442 923502228 223038458 642669624 92117399 485828935 277167721 751561886 813813932 366827564 732157227 459089220 212487920 262240276 837339752 794371675 379048831 721229386 882750945 107295721 193049537 483523602 960460444 221459135 352554823 101035508 22477538 35115989 19665216 529271606 953842143 698753049 805650714 999392081 256650129 162983815 115590664 451552669 494032342 332779783 764082127 733488597 865270323 586309455 226485248 471081653 786308004 617982823 840831486 322398969 501628233 727670438 464275166 464512094 910204320 981742397 729096467 434173819 170390175 127107837 430261079 688875697 642065129 182918013 726090502 844980811 93265937 885903311 71276769 106239706 18836525 833394540 976995693 429332900 710108254 583463171 646237198 441820849 376889305 116277674 124785125 256393495 978455769 930021835 995535547 884046756 788236561 421767795 603562818 534134975 564036034 206428852 215639872 624333893 639020797 751219238 152069703 812086451 349496157 56848064 691258763 119732410 682519281 579827230 119717099 460487650 993421165 81480597 178691748 71381875 280213127 756192327 649014724 672319074 730104994 341876778 753763071 119852767 239171908 134628223 100092020 993327283 667171468 537640515 697162923 58318239 88452203 65727469 95211717 981858087 90526884 316211229 143493974 904529921 40072549 481371773 574812647 963267911 685440232 461709656 979890728 328601953 304236019 925107810 740253503 834700131 995031726 89947292 907469618 626252868 212587185 935451949 573941796 925166184 745858356 406490229 74488288 781769846 89243830 236125518 643325448 380528861 937096661 114296582 928008144 78420604 65873640 291532407 772068303 71640256 459500338 614529145 745969731 443143576 968134104 665526868 483912750 247287380 894594160 367316739 52063387 983064299 467378915 667697613 198684317 787271591 894370903 4335939 330858582 658581285 504338075 749112661 625997996 739624182 24548088 701883375 264664173 440285809 547228660 586408858 892807860 616061479 815206892 253173773 880948813 152596946 114540463 539137502 817096751 112111429 917766099 586293046 765172362 376282968 402392426 103831838 924991434 167250411 859985596 162093429 317304479 901792920 813162545 563388371 948868286 495590376 927897969 308909299 722302135 837498429 295618117 414692545 142509586 733195205 836220480 303879444 49362386 578295780 545597595 879692764 140028617 381520421 325459287 135409229 195041215 797645746 761767359 843237855 278548686 206758516 91811363 21163802 561875851 28168444 735613867 531532003 626558254 406073463 195050263 133130743 13044647 423149212 375256805 519576673 490660815 500146108 421490941 589195750 208288790 390794914 83176840 705934739 55219849 931151651 139010006 869008529 645103163 691116464 888170292 191773543 594244507 572994755 707994147 461925134 786700488 769692996 663686703 852519032 765267857 996899866 37425801 84534912 625829772 88189388 197567364 134942973 321449043 3747219 460331601 58165224 368127169 466917553 744789278 826869363 101314466 142297714 431553373 209315032 269299378 538739186 543638112 829762768 205672725 106801749 620338568 461798008 908946855 465091820 18190520 908936458 946698035 844262966 232656823 656706151 834627345 73759289 29312822 495258099 451736165 542182406 774995489 88238054 596325187 944597556 401930368 78270282 996112440 341219008 269475166 141300296 90852101 17572261 464085812 595891441 384218985 649409427 394746757 450893336 106135002 960545026 645722641 729864574 851011935 874962610 527387632 871890169 394021771 119179964 228470802 122922985 908607805 954584355 878787354 664013410 800485838 533469890 330197823 219995334 728846675 647670450 802944045 367218385 163703646 60300103 933985858 954092429 970852990 866184725 393348993 217088976 732057723 555990895 513326971 850398939 659387356 163123483 637998330 297477329 9685430 74004075 120794140 271468893 840145017 496593548 93410200 394921505 172901424 486025630 562871474 843849554 76528955 723439986 68370375 130606852 581812751 630761836 1165077 948899788 823889178 796977528 760676337 765614650 9518886 440515578 68812013 767641176 766848816 500895402 694229592 33852609 441455873 480770911 795659077 726684024 773677730 593372926 443557800 92255935 239917033 806298909 277102450 568942117 560344583 251946312 561895001 102072200 956809496 808479897 613179673 179932137 663306069 451549834 190260638 473872492 731810508 594768006 56187737 930546972 533601027 435640264 922774516 32469364 574081850 510148189 414666719 417786339 925729330 886256111 992875594 868625323 884504273 872957933 588549413 924242642 698319149 206611637 578575607 550010797 147273106 673730308 717733878 77853848 177184481 602029534 621969616 874467889 344513080 191850462 945753851 165940566 988015435 668172597 321586046 280649201 271229980 991392253 444606809 320826535 122680726 259179744 271809362 253628867 423692142 537589742 470483773 356565453 934309398 472858897 557674044 804176059 215377228 538382666 470322310 729687902 34271815 784845800 518911054 685650026 766258634 521752656 867909758 31710160 401007940 787995474 912530995 523455365 498901354 567085471 119101278 467881998 771510715 142228382 538441963 988704877 272979777 714481086 798415927 795846804 32444071 639409235 859601186 963870832 216680121 788671818 350038757 546482466 249668721 179893178 782928144 545022768 495867796 283157696 734052299 914126612 303205183 213824138 989066721 421201763 70720817 820693596 670886464 636228611 949360296 771676875 886487006 5490201 257915173 192046697 976741717 336507604 40482515 110234577 798239561 747275264 518083181 30874574 314789544 198602766 707991500 918537471 565134018 597153306 824997850 498586141 374023353 337617443 547144623 668572011 240914888 280415160 120202529 151505892 222272020 784025782 126148468 966503477 192766807 126163441 246114279 339915061 700238271 325462038 848090445 701761251 328320901 917788792 314316033 683845366 166102124 120376534 143291494 91319215 857092546 397074275 413373999 876497478 827817182 999007895 2785329 615129835 95611964 516491529 579266765 84269655 745584049 368321700 829353199 858103947 394405392 795595307 764967552 238451710 54678727 990774535 801710758 449570689 848531779 179001295 763464275 120039464 303930191 629298616 723088957 172139988 92168383 150013792 277555710 859200095 903567465 936376258 613295914 30609373 397302573 550373589 496570027 969501371 110258498 825271287 113641985 992335743 584116677 695680694 635470198 43021661 239875346 66803334 518828335 920684208 305827445 802173220 421276256 139558464 177451361 747115669 860204340 360253844 298468047 288929070 310617600 971727723 119635893 677662873 956473180 263329765 727619072 213027561 436260481 617878767 403373004 548815636 794293460 296326652 754079140 45856893 608680133 348982885 776259394 811784655 431991383 485707998 562164097 924213393 662855790 944945526 763587814 627911454 671199268 137185446 962939470 503050702 147409134 724444040 286258499 244883417 972732460 252616386 877612568 338891310 373987400 814605506 959692782 908931327 465682268 871204878 78673438 127918467 90562608 916723108 282810665 685358890 675799716 99883226 835352033 453754444 482234812 200356270 577758816 425858338 434246030 82265516 411897240 975345033 346604513 648282586 123530362 526183184 805995931 138397985 502180481 104851810 456508360 172730237 161388130 365606564 501992263 293689339 18494575 373706301 422773009 184170300 125514411 25837330 678678325 545648108 738511951 920116168 965669641 571248571 869899006 809653097 982455484 557193195 575535471 274222378 291791062 95764380 876515929 952471800 928952691 399668207 683662276 725380732 964578449 116144087 745953719 820215775 57455047 545488424 86746829 913568728 615186432 901666070 753984702 359417061 340496687 312429366 89549238 372882328 57537414 110256890 118507445 21657111 699205004 606029065 856524746 28426394 945141400 149960117 644443495 505587317 729863751 854480074 627191012 401610332 255351881 661291918 454317393 329306316 486527515 81012834 75392172 366025106 287406566 762572289 926962275 146916167 186645116 662521782 805545805 692908363 444519928 116538713 729033522 769438084 864901618 564455102 816535381 326007281 993608126 427543142 64164180 222589712 428888891 145683696 752404256 38312648 172623444 281890805 533783055 700041782 331892793 994366988 749037671 621313712 710891385 314681900 52278760 439902918 729169370 982249519 657033793 482581483 106758512 952311895 661886362 849152744 173482695 430544632 635526158 202238622 885038914 474849209 873902236 204808509 744843517 192998591 889357483 261945872 820483522 817882139 658576294 254659848 334127290 935093419 744651283 657154646 236969075 333200964 518042400 800800381 204464409 611920300 149492994 53995074 404737936 888256322 534115105 326136281 764033009 916729752 662788865 125398867 64567533 504653661 497353678 694428244 557395598 485069819 21575910 746547847 478927145 381461212 629256007 5847041 234716413 463718612 173560927 559562865 24606355 57546383 963252563 228151252 783367397 913627280 395606627 741232396 195680902 397001899 249304105 904987173 599751758 232313923 43706770 72347211 935257698 528947167 445307138 67545593 808535680 707377668 554515724 762321929 781303805 897307977 462661848 802259363 238161180 91268744 603486359 57329155 39101511 966651998 294447812 858629833 196462777 842472595 550545498 702497087 741398200 650588383 884729151 619054257 951219299 294317889 129773764 34366113 427420432 965456945 728958053 66366642 459115907 751623168 818540897 744361588 855896561 288834757 594942868 915532083 291774036 28254015 976847707 128433940 529431091 102046634 595025910 657842204 195072410 209876759 862436196 887252154 216859670 348295181 20411448 635759041 147791382 887818304 577502134 915751924 590881601 561459487 335527524 273043642 179078075 138449325 343561980 913963243 140861482 666379278 930759707 869161224 246767621 698536128 833690195 40150415 331995155 110949907 112616197 325837848 60635967 779392978 824670501 715688554 684074399 264184209 813433143 411857916 662699983 592306453 947090338 662811799 12390045 762729514 648095074 136448218 714879784 526972104 279374313 976748972 819662778 552082895 501623401 162775923 86694226 138864173 73548754 146359486 832447710 374894805 888930112 633512391 810859697 296611293 462037601 116766663 193412876 675125324 939693083 914330922 324063258 672668579 506758307 459937864 515131521 665015412 460095026 174328132 682735494 373385649 339208456 497191708 66723820 870194635 852116483 417430793 612851806 467347468 724570902 292802975 194659117 954069250 788446317 298120268 272532521 94093604 536818815 107055706 918414384 78781269 729189501 48685445 482018157 358526734 18607077 644018494 908416028 305466050 88986242 173047810 93180162 757793469 711388613 347190973 474933506 597810399 582820918 930061388 189907042 643058188 319390809 942709635 174894907 831391121 917081789 696276651 987647441 347598726 527227869 237422583 551144656 346051964 754052144 140941638 409680594 98619597 280784966 812597794 914564151 523540791 890787558 400292258 392089809 646919045 338853208 5580064 18797306 541040125 544158813 110818930 375104372 926893733 149813697 126095231 807866778 267666498 23171925 13043470 640234908 979569176 510626627 678240172 531562350 339418834 747378618 246280152 534592386 879736277 747253519 827350363 907194282 737163289 825871131 214851568 712783594 777089858 156730765 289566248 304232783 901749122 615074839 927182199 693007326 733797291 797190945 961509296 371498770 930207442 150367792 805720789 130556126 797488958 881177529 197740135 945445959 397846494 429841226 828367186 341257326 546439708 595576553 632637915 153739382 145017828 869458572 175007955 623580499 707178314 346074344 955125041 349453969 252381915 721314045 958956175 805312905 961641226 480992884 592092976 988480622 861904453 711311125 930980771 243228100 208604264 25738665 622564831 621996139 542531301 408009245 396296486 886316130 276551098 978341488 122639349 305158883 441566708 541260985 464706926 61379786 896313728 675217678 673261470 309809099 263470273 750075690 965708210 479373449 754461584 160408281 162485875 22198654 901287460 10922294 408618282 87115343 417276771 574972279 889210697 163734043 35284451 773879820 643794636 644292224 554650147 895009172 77030787 84988734 52616298 368148864 803570760 554144682 43167540 97766743 314846966 630763263 489113780 495528611 568861027 360013857 734011209 295224503 661817742 730922352 618933071 623892763 648001617 56175474 389296042 871783995 334171723 49293478 817467270 760739499 403990032 263791590 123520017 198732498 944885804 881561450 942499637 441784165 743388727 832123976 614219687 637902908 91088421 597260385 617551220 979494220 218801945 239463356 952941375 170568587 634920421 611892852 22943268 705549972 952917474 72513294 129942441 591014938 64829078 698437680 302660383 867463757 5360976 4802940 858727885 649351100 914760567 183800355 810469554 934885128 358339080 579946312 620707834 789617772 501402603 180553074 997985662 321456718 772316410 319304870 189641651 364420067 408406525 625866431 52954745 73850775 382285773 869079459 426377558 327656001 543955867 695126383 622995378 324155002 181314702 374848070 935219213 887326777 584045993 73079987 329021973 80765929 579553910 324006072 894923735 624536106 326426029 998611830 667799781 948776366 435846758 281487788 759936534 905604493 668770456 507605268 669479015 365820003 559057815 530011428 618542444 881428855 38950810 719035217 961126145 510554016 657514409 534254566 942704504 809396199 44831249 227936644 584489463 279054445 593601883 663014596 526556170 333579664 687752405 84762537 980110780 46233185 664849533 722803275 93758682 872815851 602648875 781150798 334674956 117834575 537731007 790654518 429391935 307379137 574903081 637795115 175279882 152473611 145828341 614984966 886309762 471321589 534011281 867400101 218521696 293530872 422872948 620954462 405759275 689471358 705145412 480947406 916533221 784544750 595595991 775349065 718158882 446110235 146242893 495527826 836558160 990343667 504475151 781077313 438202605 54553892 973206087 720909357 846574108 985622552 858953773 714875494 674578653 734789994 85665471 936627752 921104049 221590560 5633052 519841580 114715485 56892182 545644772 312723308 828661539 542568198 557270324 65390279 229948518 437939860 682189776 601275232 519361853 360033272 959275389 77461078 248063502 172514274 970548199 561589344 579251011 35100386 289582522 686037048 487684164 458621684 121619993 530687994 833896235 751588936 741249071 190445517 313783272 965690124 400403217 212559070 312095936 942191363 972268570 506058577 681330025 718847535 536885023 33070571 728996101 264308305 188935943 173859956 800109405 38958553 136759490 510500492 466826055 206090119 919766889 122465595 672891630 530978536 841030551 836780144 879517896 473051019 73687287 622941355 448315319 866440263 737951191 266939265 552284418 639837338 499433007 477999254 663329218 101516930 522470429 995163074 740254473 278622396 459410234 487858560 784512354 725526483 645590173 375415674 648847642 364206909 617004704 251186799 252443978 66414985 362627067 527003656 865107464 164088724 418794434 711950387 517069473 927016162 456782626 540681213 722946538 863823088 909381407 337546471 636009586 664932140 555636882 444065358 796229495 659839331 432986184 761080039 411116311 105973393 389572213 930270494 955428187 111979652 144194822 454009058 31690907 661668894 237039337 118589698 530909264 217982976 144119834 33852934 270887709 207864736 397961837 414928972 905325973 519075832 860888960 248169240 965017729 760955253 475963252 792431950 841433019 995188413 259572028 199480582 268841679 335471454 424093734 18326963 354226454 933765225 7862401 49733724 446486281 420378290 409858320 686674462 369985979 754504073 838261782 534304709 115204217 312094444 982182896 140521410 402533786 252547935 214261159 646315483 546162166 368778885 831341783 613700514 214756761 556172505 602178075 925706009 112233880 388612147 818724208 337528082 591020781 858103088 762060987 504957687 236656891 809789897 730147607 499574530 922274770 819498946 852381110 501258974 76971240 739012185 612006669 577660013 71047174 754258527 715257134 402364744 123577803 859419802 694969001 644516344 713815280 511678904 906315910 924409698 523996820 849757525 717829273 824957395 789169330 946255975 721502056 90629274 844890298 705273276 702200789 191045995 548939756 212435242 441602720 225745169 794152207 891537521 108585251 598516362 35459740 534938964 987011695 181310792 353399726 390639913 526207375 690115942 830881380 870069709 910959122 170773272 48109767 170037113 7301594 923164218 527736878 933186754 535334232 504610018 556257787 514808092 903787673 784304255 471238038 47576114 281862805 299641769 564236824 93408298 674780867 296924446 221296912 872112639 823754265 247858482 470325768 365546565 125217857 744106696 840659810 562266149 832687806 938107627 67321053 700050361 177954376 985384351 491586183 292776670 491632131 666136301 827647450 724885287 591585004 448972686 223745424 128344206 493294928 32961715 950880526 944840290 796589141 388709485 963170754 592807810 786029537 543778533 685193385 920654634 251060151 861172157 612513085 150410664 444566274 270372225 205692578 611212231 848188877 193592532 144278515 693635179 610259302 809936886 539371353 562530395 295350133 753441331 891016469 114026817 122988646 655513416 709902248 924203313 819344874 100986989 326423930 211343393 579683772 601145055 823357511 519271874 10059823 88883442 891390246 546574204 830542671 139932521 245854768 693920933 214709389 556111381 200107063 555274006 800082080 664829345 783821844 652535248 270195436 117937618 227507120 552724511 335569508 808269732 379204416 549320797 734989961 810702657 89076498 833025382 351299274 399586988 932223870 227653877 257673587 969478220 556988478 557333593 508486577 945758350 275782404 305206522 497742962 105082335 439760611 801986057 180693303 555556304 962636270 659441926 55765601 240859163 625600758 688764483 327157341 118855155 775992092 296783185 966221411 136726374 896766015 218238103 527593431 786151943 729836072 595582817 609988337 745837722 460124630 765994041 139387739 490978895 254399320 747618749 171028531 173623326 177294836 37526820 786842235 710480511 463136006 18037057 467200989 585149437 666334092 642532646 226808476 775824204 571869437 567341640 746747078 393611745 595901765 802223274 923466601 37689073 249390899 706619319 446503861 426736775 906073323 856593581 838025527 456383154 456125451 649578542 543830954 653182430 468220923 93339820 789106784 457594008 526116126 504644931 164967752 625812588 594171636 167905031 819427337 263556835 337053730 222965215 69421025 317925188 77469845 120827963 7603478 487664030 399903759 803853979 24571933 741564748 808282452 622129583 33345463 53725303 162671326 699260984 715071649 70338039 576242733 92143807 903157830 945198283 482719159 587695482 437820025 466526771 854288901 782494225 472648600 853150262 391743325 140643360 468602212 587710885 648317417 344210330 934604184 187946877 588594852 719084234 89602506 224204970 465288832 923533764 534930403 314745319 78048413 587392081 880166451 450351636 629441305 541748858 846753516 162715475 834524737 165358154 158732009 736152131 347215548 512489155 916564764 407327345 22660999 835701020 265355731 665042064 487701954 195217589 472909446 546916416 770192892 615235429 571908950 121888053 909784277 636052592 298945891 905513890 77901977 708544986 977008264 589346565 333514351 981384550 514267296 727776787 827902737 426351803 867134248 513326830 64590900 907635986 606037775 66950027 963401481 796605623 643469434 763330690 356721386 130075881 933745922 121953208 500539285 672187503 203038189 767092745 904597432 899789917 698653805 774862701 994190577 573718715 467420059 10013577 125093983 236110759 937687199 206020361 672969064 293971441 3324097 151865986 523419752 813589906 419976370 133412822 228774604 519472459 656666976 276157419 57932156 845309551 307218893 583495793 593727410 876678660 788651600 84064730 554211417 489867564 316422622 625192027 912453458 561915038 313654016 957882174 27786880 153494604 839131168 960465505 294411253 649648576 844151700 457111611 535014158 950163677 410963301 574506780 439952925 276266251 201002282 456464198 915611345 903071469 348129841 924498371 500193434 224323265 302494990 633565404 637938551 919681688 28097265 316742386 109216835 181844522 82330223 266617764 263585631 591939396 887728467 322121331 581474278 354060522 81319109 428394430 503421857 868260583 85249087 182813835 160400182 329708321 237070642 372815935 785740660 630678185 37374270 835649199 889643459 381665093 484932508 481047825 258464587 243194901 590428106 660113785 938724041 363285088 56889810 632861633 759159797 827218942 845301813 389850390 416746492 943360598 531519144 530740627 497118541 514787659 342515603 672910720 976963205 511932420 454392758 259753499 696908468 809571723 395030700 800062063 13803541 529576858 726392976 393607909 198213648 442056589 113179612 736967011 334939516 585309239 596146617 3126202 99954252 595543166 209954727 225360599 677496967 551528563 147793118 538562561 943594268 76350919 119613646 66072494 510354708 510331613 391816263 944567340 657342003 326577005 675556423 333947494 560886729 827502325 332855186 116631278 806203390 586517281 744909554 253191642 972316238 421119099 788339085 312076892 44067335 690167169 870440904 472670567 899330179 159439599 746893273 11098413 535515654 635253011 869846626 375179603 361569274 401445627 204717614 572929561 910729232 307809869 431619023 14177845 223235938 29884355 654406892 219228166 555647762 986890322 356139424 382034509 368373973 596222067 188010594 35769522 90909136 402035929 573287956 113996806 631593821 625830814 239405930 601054543 676733919 567724648 827787712 556626940 235986235 159948997 651319645 977821115 615944566 254146478 383558445 395772299 273834133 349860727 561212417 431387047 518484715 90527840 626835642 685533636 549759060 710802626 922013954 601226665 20112202 160128510 33413155 845554590 733341174 397956260 506701872 820295357 557123390 947594975 99398561 276120616 343719953 481516614 316838889 795129236 838890180 992600082 194958793 441796572 995767097 745319947 998913532 400049022 308737633 545327581 467221786 107566092 238696103 681052128 944480747 981586286 582410154 421797670 647706114 710152659 211057286 346409721 388575984 716843906 594123904 714797600 42454291 256863861 95561703 471294119 251696071 491298663 417185092 217124000 223738181 451898825 486623579 185858607 231068498 617992100 301221815 627322573 167401393 863976802 585901734 307441600 730588237 5615084 713755073 856392638 344796922 233611041 617147957 741184488 888349095 185099622 270129718 109470850 285755544 85373478 6944635 771616999 823955973 17469854 183691528 282359455 462854919 149610734 76476087 699638549 375497508 68023979 938257711 299377715 259916851 874953511 476513575 28103511 658210061 555567596 754523191 696961532 533967429 360827288 14427121 501679828 366402752 281669034 298327050 891803317 69832431 404485945 711113285 163413067 881374242 54643780 175876106 9771232 989486923 92968134 462209500 875832274 912134324 55597549 21115813 338739128 489544641 588697058 175512627 834595853 411621840 474345780 225398925 94220244 92189863 429595983 545897441 415066816 588483684 121898879 247407765 462532231 886148265 26245380 207416904 915482692 392622803 992004368 733191646 886374189 695607235 463260006 789486848 451988389 836259724 626978900 549862807 887437997 617796198 89390195 618023292 223746317 925991989 82058721 296398941 955388822 579759077 943405256 986370669 620287491 250733629 372409621 162514229 652552453 126614937 942275218 278090748 179154297 250488392 979149852 480914800 625558418 6821094 532454917 287662950 236536419 666548519 839489280 464576080 159631067 153395051 727876846 197753869 932312567 211120410 555038984 822128155 299309040 67267292 298648207 811673938 607755855 203422842 798708220 745136787 51358623 290953758 426970770 289255161 363268602 562575366 828377153 541870386 100408396 896814585 697349565 200596156 230079837 716516480 825528458 348451889 1336740 741398263 889348664 423424867 979350181 734888201 614149390 150607998 64673885 359110431 229739894 461525928 381173521 714305762 1508439 957955711 330892999 809383890 238688149 305430979 915950322 630644130 199927469 71997110 502725670 261874236 738709612 591673120 70265489 672411488 520905727 800058041 822252918 899443962 935792167 457204864 425011688 264930720 335926250 113436195 5187001 619456216 251836309 830719466 842570776 947222191 728318210 952028547 714525218 329655975 719998784 838507127 38233313 825105176 820461749 159936887 254236503 655261012 165547471 459011098 623474551 385057927 35565744 446709077 941205823 921967068 661138040 51747355 302452015 94043645 905791144 232350508 913608712 914528271 73417696 627489878 20341113 618539053 234489967 11045798 707877109 420515305 544875550 658917449 952635552 714893163 955743724 687279666 776970581 136857329 648737197 113338091 688532826 327412496 249361824 635553567 118112805 288024148 81523005 210935921 831614853 527866364 496136100 27049339 976028756 931186838 610318717 289759247 16078150 852084740 73563160 834925241 585100053 570559097 553692497 328680705 377195249 304645744 207702972 481901862 406375747 558331198 226490024 877478565 969694260 22109883 295438224 55814914 22564299 47105907 298049080 371501837 467241025 951067533 737679697 311728530 140536484 530923461 762751797 981202485 339845755 844151591 535953854 83888133 387270633 621098037 79170024 385142989 103608018 423048992 648278550 565737015 489728229 373442634 92565339 84953168 745062861 217819278 815763977 590024340 49021235 795840088 757068359 471891177 56806599 262450914 212896441 107520269 330338530 875521578 620162655 203642440 116540752 286143713 603387446 717780730 555538523 318312218 744025730 36787144 629780721 424519529 526790877 793230801 787288841 343035762 552035229 283528439 150904366 515549475 64417776 861610777 283938952 796676006 749315851 166362002 369723009 313728601 835463077 710523095 948894952 962443465 363130300 508344790 142864252 980039948 257463953 12554674 30182968 403995053 126126637 153029247 123570510 149252146 516518479 741193646 621934330 505582817 761002043 720515631 469878182 302957204 654678428 680359965 334318691 635854385 63525978 598072829 152420927 697059302 29769223 835926695 577432782 515401184 538850983 357519728 839574101 160218983 149221909 706427314 664505045 198950014 35486763 244743999 63388739 678999010 72080537 631012836 639269084 975025379 800627781 202163058 414595758 943915924 271491217 569110736 782747866 209544889 269200243 409267796 469690158 71079324 353308968 391441732 118621015 668029052 3267048 615569529 429302324 680404722 569070458 498938671 101302799 940981528 152385950 173757248 376712764 782206039 156567407 997097536 290780287 628287863 572430299 563114706 703571549 709084150 211235211 415953930 24309842 458991393 406607146 998867882 689063195 169635146 375553814 770973667 856149814 928571025 802090625 606502223 227423208 90061610 974757685 411824026 421897540 801849905 156679272 72753205 740360381 345024341 417275652 420229590 522600289 521337338 286908288 746080876 986661535 562451449 119717398 187359768 460921960 645418701 614052882 788661687 452412473 28013625 395923228 245588616 763723329 211103006 630757504 971801185 354000047 418799640 616874023 558736391 828424414 463250466 557849370 789364888 522598697 996595023 373325019 928821325 886410023 612341173 402265079 227790858 17561733 847369308 888506701 797161335 83672047 709192201 919983796 148182076 758088720 7753615 288592401 186739998 826864712 215241267 307635142 573731878 565341657 776598910 45977384 317003144 53107313 288356374 974461079 828902328 324584753 197182897 667937248 657360954 787581299 236615344 550731144 186199197 685398555 273659737 379740641 398893789 863179667 711123585 726721780 806116049 714434304 683626481 286839166 406052174 596122518 771407839 637804422 535060913 425933251 359078380 530121358 114606878 781686574 622224677 581462307 808965887 145270669 716067974 974023123 29200190 803569950 622200059 377674491 151113637 308329163 616326370 408576577 467224492 516719617 453114540 606434716 544992243 291933710 429660728 391734050 879631169 487116585 800551314 841669039 363457336 174356634 668783304 274165454 894343752 52070744 257739925 743714170 197674854 148024834 201540790 756803545 572048436 928989921 19841696 211992117 304700739 180003286 788614370 122429614 111591862 279169199 761975975 335756527 721270602 784765198 611237994 180452967 637299576 83242608 591198801 740254644 142750581 818831731 428087784 419665237 283939654 531036584 522653119 236200888 605158708 255024838 387939786 44527040 144520728 884038918 736203550 424807923 716698787 795074678 693587508 848203395 172505667 235902411 346374459 742140593 614388703 415461411 108689256 184453657 457102342 871914960 774019617 813769564 707191457 762019669 784591775 432328231 490501602 613012643 232823969 407736528 607707205 685759 138368914 255926088 458620621 358498124 78007665 147741369 308467503 34417948 906668335 97825195 407265047 865136643 856263100 913775048 126211402 940406519 685521364 103198327 695441354 905997117 133982429 859363605 227988904 487059896 551814864 645249157 823634933 773489396 818162698 524469964 976395421 205231224 804638799 988844355 955956933 626048938 452343095 457250023 164388363 649625846 430943109 221698159 223272255 430198873 845189732 790972640 93069489 369787545 506969429 692218914 948328302 45493061 229170752 484748037 765278366 879670663 230629510 545209925 828396363 757582825 557080132 378101576 232939407 470742077 350623803 331981911 323032583 150531946 576734669 927988817 331582689 486668740 528569983 84872696 518387039 533794846 620703816 629700543 964192704 326142200 383318091 649608480 547063688 85199747 73926276 22699402 468703692 162574543 246380608 53389638 556944264 113683867 296135663 160105109 429312286 66145895 351174166 601375943 388650847 407381675 608868197 617561381 600748480 146646086 593167034 87921447 989243519 749854756 413133294 678061042 799410199 899281905 812081815 971916030 698236371 533550563 487188201 15142481 637382374 451091951 758335333 457259378 898011071 752855587 870968520 79200665 407156895 615894926 280721360 773817005 473829925 716433108 329602983 688329603 493325066 870929777 290549998 744640432 713397196 93157466 723125384 649302666 517100684 542472410 51978136 481917676 318524907 700942536 189440502 129828061 622004500 136734280 864985086 912754657 396802814 636374539 175179892 967230609 913022967 291218650 139103194 317142278 716623227 396178075 640133888 820360667 514207011 336144687 359022743 770694299 865033465 408593190 175983222 802667720 271933107 463108917 449271817 544991919 269261244 990758992 595167572 79319696 192910888 494879161 401322482 451392026 805709293 346611077 438396201 655754454 135561713 576143305 488976686 692625256 653356310 493387085 169678454 162788312 332047625 454323328 951300844 108156898 958225285 734684407 880850749 409561490 663208313 902553431 58345135 497736498 291723539 794076466 958636881 684851931 574395086 718650942 301836973 126008893 964914625 92568096 777247987 540018205 25900828 350389611 157385298 654732606 227582579 971777341 912367983 875620668 135803922 381604056 33670489 572533162 792971650 814164057 973055010 893864027 244373482 777411773 184633828 986401780 741625907 705370490 201392283 971818499 796183176 625800097 85211089 627306568 181305789 862932532 413247088 883489935 466809539 534972010 337490753 33525309 741153142 133487949 876729815 889957653 457084457 303517182 677474223 513175938 894389700 728550211 549078343 554299978 968102236 308706241 529921456 946876667 503714748 735038373 232937452 725360601 860334953 917499845 628025987 834422434 41848713 618669673 605440639 669297586 485365025 108892716 860511973 670821915 333521683 761545872 695919708 568703518 764744505 977867820 389829651 227092864 414866752 464662473 36690939 478640385 838589568 617358384 573616568 999588034 493697935 811289009 662796512 250909007 395883451 795401650 708872848 550158132 122359294 339479690 756277659 112320864 327546511 906170711 624882830 272063250 516189239 478406849 930828892 679486795 734985333 806051556 121608823 898819218 854476862 964299378 234339797 866656673 483756161 980464412 513646154 604984762 202870999 979319677 357244463 795466008 942211136 16824147 709229320 559601759 785957772 764186993 996826014 354063453 538925266 627459739 887594811 696284744 447158499 697907029 311513972 876121989 385532478 485979347 804072917 557804275 236071648 905948184 859809405 495428469 759615110 652477355 813442203 8859096 289447787 464100171 364322464 283982900 649434647 774285033 587093840 917439120 177642499 347440684 526912827 660323570 512161284 242035699 103215652 443836836 306293338 715759549 495855997 111863723 757852670 924085507 854566868 152223594 494660418 728559565 258458242 202868820 91584548 316702 338063977 396897766 363488996 529854486 341490711 802716175 651427607 613703832 136672074 265143217 332354550 351976288 111957831 683650442 515985357 61255682 575546894 969795965 679388108 414986721 752839821 518591645 391154799 76381895 655311470 990534776 969227947 752631627 471685052 948573947 426098392 614321871 343215607 601792147 368450331 307839082 103331610 449775990 514122746 162526158 921586373 420807516 765300798 824015584 788338544 655703882 448511267 804991088 969453566 459456367 626253825 510550232 168443525 550156063 624346251 887298731 179499837 101218765 462903739 100734059 622302563 973075254 242544342 396264053 309172269 962312987 397212460 260444296 6684403 409124249 8654299 536290915 897052842 410215444 914437637 265076187 871355099 779048994 619521630 18177960 948250575 337024277 183591152 570524687 643045953 288459215 41735492 183930495 585239279 916139021 648468234 248555616 773049670 421143881 738852843 908901274 404559318 733166011 266758587 780777003 84689965 278009536 415198010 481549847 870703047 569286428 146393969 298243750 520305582 114696478 715939507 657271309 586412954 745278392 498596298 410671711 397817380 206537066 520800922 614992461 960326693 642658304 113980861 47578230 181031932 41161307 276885149 134557152 597774625 793915759 371279153 624241444 547250506 222988185 639209799 470053115 499588775 102158374 668745755 476071194 220237350 97268246 202836080 379208498 49684827 132612374 211965611 819266682 355816681 758290838 616024143 715299805 183164504 718511992 40230864 350902068 730807724 707472699 666924853 654590542 287537940 917656515 484295967 206897277 669328522 32953424 829211173 929011783 423997187 812979313 256889547 359203790 832090099 475874915 710058044 789629786 502402080 866183308 186761542 352200480 899224517 516213183 105427442 9628915 98846664 450646162 800411975 949701677 225654449 237685061 671775184 588717704 558243807 108528513 715462114 620441945 766157974 225338187 448455927 292598846 260324127 127889127 401297823 272222761 2088110 575246053 348349897 122677629 699301254 310840005 504177370 234755575 518698305 158691185 138735102 795643790 403505087 748861156 306839910 804455912 859911430 954678812 22979015 306593693 646230516 254178516 69129929 331280250 302755392 925070836 515257449 267542517 221626538 939161516 200255940 255765520 729633754 294054964 608846006 521687979 516249695 857774782 917873907 35710562 872956722 199789644 207071946 847622509 740504997 160174060 505188238 330899375 148701439 537567090 907305956 370843682 349256419 241589164 79382872 793182312 931727004 430254214 457910160 812946256 456615016 344552502 779565783 106339814 160162930 388889081 347416488 387675467 184579670 418251106 577322270 784898959 868139660 903739214 598656940 810031137 164576205 353813466 865514291 48173675 937320808 265178888 170033278 893534239 798881806 512584847 310338345 957585208 298232632 546866062 844727953 168951100 54789601 500618411 737815129 124276206 990627712 770709475 363463071 743936307 44747195 911911433 571566807 35136367 746898626 250406499 833478517 253641722 819231845 320150856 206627924 497321988 884703080 331528834 265829894 821535124 101779272 854578151 52014435 914655653 652621043 712330495 603596092 998398175 637716415 37192179 17855246 401183574 326324340 933636886 687725050 722798116 481210160 364201 73012985 831877559 224589679 146210222 72282060 734727532 407961644 693604699 847706943 719105038 579364599 410869724 211881330 428251961 859498727 604635278 190222040 893784687 511537726 122858481 426686041 196640427 887859107 593349350 708747145 255518101 357123704 903740109 707753078 663162004 183592247 397492609 937052170 36599978 214758588 984889241 797390406 265226415 124339723 1615457 167325303 676987692 514251375 355608881 767516102 587658048 415360706 758616003 830122252 133958391 679134788 90968643 424571000 418834570 738832882 441685822 883417244 209506781 14592652 904365971 786355442 895437560 960314518 700794196 497483392 176527869 479015806 387333329 371927239 636669614 289930263 332966471 785844243 645763771 504642059 21803725 374912733 754465673 133539977 202595177 969379837 87524693 189961656 127143636 230068103 482046420 814035355 23765977 943399768 915291452 202920303 471966350 461222584 806849498 352764306 86451769 309607807 206752701 491780486 932629976 224129326 914022914 634336949 766973845 397648089 717590808 926300645 104852026 349342830 349114032 115950603 956153028 998259833 392193397 159884850 54808386 439469276 846262739 417521442 72893168 212053479 692877404 910083175 123156894 166137524 765450312 17648404 259662966 356474832 645151837 901405688 114579506 350246985 68199733 100703892 960954482 328470631 389186182 61516141 402660936 963286900 328943939 901490571 923029345 453573997 694806727 111988387 536798504 521798762 737454430 494433007 431534662 723461234 487572438 645228684 320908470 738658536 326942316 110327591 260963181 725863409 996642733 675789514 634677137 756436742 205994033 708920716 176379308 284073709 182521403 466094505 459474392 279968661 877682011 875631609 400870458 206765737 260786778 469449761 36181083 200131149 619701917 175337881 339920450 866833564 670436164 494233701 533051169 261087674 391541386 173251096 279645990 257817954 376600635 138244902 120272583 215936697 17740249 545273347 116165186 743836525 149661574 242631426 969046241 546951820 597285415 239362149 977300341 622699183 524134440 16516235 923309162 394066216 158689606 19201631 157001453 844324058 585723202 594523921 355145483 526515896 466065407 517609047 866069922 347208180 974926401 901667062 341536929 185118287 424601851 200256996 390455302 365658743 71225615 192756801 480477544 618922043 910617551 180748614 737035166 796847349 473306547 443010444 300533527 678493847 25378137 242567236 336977633 128302282 260805348 638644111 533557980 5965681 234103944 481580166 312803153 482364282 896280086 294138497 583584155 456473560 225801911 139251028 582331521 247646085 923340497 414288652 811424580 669511905 210808492 807942418 649985842 333898674 550784281 656707166 635454023 589690447 962318004 343139749 462811422 585930018 563166919 175960830 45064866 942806995 236594897 715787466 598458938 449144709 223436102 641816672 71458255 243060936 674447689 956649819 585761014 635888814 380129931 622780681 617018540 973020630 856760795 181800989 774831367 135899788 26985780 82674275 47708477 890129325 379514792 284373235 58656810 142151661 822500531 777573038 619482272 946488119 145609825 691442250 205423454 332237695 107879658 832139288 433905798 952728671 224083034 672228219 329006498 661169939 335656604 804450816 887410908 654999367 897907374 530466049 171859528 329264857 733537363 823047051 850535190 539226657 762073065 602292667 928970409 874923521 395698678 505903086 611340513 787255110 575240895 114874440 649075082 921105859 749998892 635039940 635271399 299626350 448574139 614055420 261168768 190316011 344901870 508770084 469187198 349956630 175399067 993462423 644403599 391756039 190640193 124200148 780100553 431867223 65021978 141856726 613397715 137503838 242594936 90296507 162131621 806646878 268907665 600913123 951825789 361198660 59056805 814740603 237196666 869674728 322673176 85329092 195740421 661181509 481713654 614328627 820249759 657498563 327225145 659878604 511412004 288934270 985393125 186266744 498828253 860045158 369761227 24471216 940050365 474589707 848876985 270933456 234256063 892327613 140980050 235476473 552137318 339032944 746237405 595063750 289424978 487223004 936688596 130611494 820857337 349732215 675031374 213631414 478786235 75284646 215027514 402774592 713865392 670517118 788087105 31529411 144740556 887260599 673886785 834756123 633628295 176297962 94206495 21592477 865959021 897356168 213631460 178307324 893125373 370116980 42315910 435911355 628505535 861679144 747257593 374072685 269434683 80616683 9457938 123651080 474414821 548187399 123413000 60870986 692964520 57227759 653895659 582083616 465291740 60454253 369114452 29196908 783670398 354190391 439336343 568012453 259133617 22300895 425171181 25132096 100818265 612608894 684941059 743765016 1320623 176919894 18663774 362789414 616858703 933814075 404963097 892081241 929419749 267671608 263589312 127810312 75974579 545862643 719315404 355794057 557303164 351956216 458574263 299032658 332070136 363856205 350195861 545314626 206245601 132451263 20936763 197662487 902030294 996238259 48078926 169053213 876850866 966044672 438160987 117770883 921302489 934176382 565199145 25780315 650116092 937113396 743692806 305445590 463896976 488158021 553933349 150827296 742257427 882918171 567465882 257295405 465477478 707236268 225530231 697884618 256381769 794417083 820428105 885708932 382295280 839467573 166111028 739698364 786614314 814048429 471374137 196325781 591139820 929217129 341291680 465267324 85552862 838525052 68963785 69238672 734001787 744074252 602660453 346821649 334935080 119492671 957093882 6144896 340037778 951095010 571472412 745607182 896606970 329534725 150521670 951832303 262181342 144133352 478425125 238790017 802658719 894079865 24289590 715191514 554486132 273650640 467060521 700888395 405686100 340403780 344742121 728124219 338566355 506519748 928296385 53535294 535495959 707899476 40548422 576658831 325469369 179304229 930139419 123313614 714252242 90982148 365702896 277153295 804873325 170408313 282210319 523530331 143597624 2153334 897516185 706832782 849443931 133002005 738165535 682442730 753069760 782454187 631588875 443815332 2447070 952344138 173127254 368199249 398366729 502157227 819079021 114446593 161123826 293094328 99200315 370458095 900693647 837251658 280795506 297216068 615103639 762151507 597179856 51575355 345405953 754548587 146228800 932364783 46805312 677868828 158638428 398579716 261841702 953149050 774186746 142537338 345151137 609866586 98858211 134580025 64511434 145919347 317149637 525964041 942190749 652372985 163644169 229549207 261386199 672375766 750065023 27815 442569002 492266145 509547755 378578631 931817426 842021457 975529833 542583037 754740866 667891881 679655210 612945750 260688597 637473480 384086750 122449846 417343693 272342190 227184864 593506909 171066509 897146434 120894889 313696358 728565565 349358538 161402054 20980039 714173251 330056747 267334958 377065935 982455736 419793875 6320098 911557164 974531600 115063698 828479141 578060510 183969629 785972933 35372122 202769418 459569362 9443081 484724955 904191779 305859579 542418060 132316495 48418772 793773903 16345084 116829205 944067905 478667072 393068988 619120736 513655493 842638414 645511539 230341169 916480201 422878758 11851367 92985476 455569670 106031289 473732842 755568663 746305086 394607677 899379897 273732369 332309096 581917199 424913441 510448948 387084251 231813699 282183882 340592818 847481974 103553997 338696218 868935298 845759464 947402740 353032145 49512027 485109085 853869577 962804876 433166352 162343073 912825972 352263895 446232530 468123654 105357868 899753105 316183323 635215913 952460076 287073142 64632650 527704338 884466506 258937427 508362431 136127597 714263564 304430028 458888122 976474744 359213871 169108194 387332967 935016000 6789206 14007747 960845013 605826232 225305468 813953302 712180008 195998272 169341468 382751722 365425330 84387173 734474974 4059351 294094928 477525379 159237893 522218083 187791161 755413753 632730985 333143813 987736605 526509922 475113442 649647568 532603736 687204337 171431274 207864300 41532345 147593256 267234875 626300328 734507517 979575191 637051946 19984056 117426566 888183086 114770670 976550472 691970180 510818509 185674790 491980490 85421974 673168948 239003501 679472241 246532344 563592727 630876876 589733526 892993728 149014002 678276886 166508550 516389808 22328349 480288108 424272690 176735238 611314435 855489448 91877260 834139024 220784884 996437459 798557332 983411491 494267797 271834815 451635508 346886397 855641747 386785247 273373340 849941496 792998826 509897540 239505436 36842546 765293954 300214133 745462355 308566472 748717586 275026417 328386138 855950669 373124004 242105789 219461225 127061182 739547120 632097365 471529568 311204628 700764785 490111227 736546203 321389367 351512 134043967 36739929 985374377 814267208 492675575 91773018 63761097 520428271 363385393 317534478 241761671 173766528 779634768 220908946 760777604 160154921 582219123 745751785 590903130 554281998 653052703 836881854 267288116 677339246 481217938 498875134 477530315 937732631 340912100 822721151 420133233 462958779 89365864 76384133 453458562 443030201 363112952 179814085 283524132 701994482 367552019 148973041 613237340 761922813 214061029 732704596 253385127 450182026 201783017 134597228 242537423 441128424 628462783 286421469 984343891 799238077 499646709 400000811 385902452 995796581 222581879 706695823 215170515 902397171 269477169 746188503 86651677 399525595 541395635 371867152 37995033 250010653 283376202 57339752 755414302 179860593 105555475 474836158 823122478 48323634 100667945 695586552 288160720 83844997 95806614 93775424 702616348 247165786 435217729 362446912 358143836 369410879 912973820 957532737 653963918 783346112 280798161 247232397 370528518 143132746 20820000 829583803 26043626 272329569 762847455 251084364 111856658 821589374 687274028 707279350 621986974 733443821 864770747 312110988 961613339 881234693 763652848 947655516 158822364 509107617 730606867 183738172 357577100 296531600 308689442 781346523 978164623 349563690 727233227 342973935 521938039 948998265 82089396 793597812 603870258 271714688 907523298 113555989 865050814 851487963 326812930 14508421 670716872 896145966 573530763 459585382 949891852 454081899 252991076 85977672 343278715 964126464 212009529 663762901 220142706 645223886 590929339 226190364 204804700 386295087 413374872 862654902 515390727 616109345 704562199 849919738 531535022 371552781 52609700 826520779 192359012 146808359 688279753 294969010 381731458 484116330 994197220 548917349 326396540 283708022 289669176 829797651 808421847 644732391 142192835 978239000 296332893 809778395 871046934 936213043 719189969 860122348 813934072 83274301 597224797 670635716 748825483 627597165 959816281 520853634 607364354 294176006 543256669 716167898 703207773 356107313 783454724 928011870 642158381 434364157 99276257 123556216 431740392 594459940 122246670 813971615 914228679 454347715 374272062 276614863 281167691 226309066 440364858 721997162 802197472 11516290 669039340 705293445 217447429 931230968 354242818 62182527 634049597 394165870 452840024 838563142 382561783 575689481 605561021 103993012 109183242 739888850 726368248 396377147 685555140 950016388 281927317 324375324 230109137 138709279 891998142 764364476 366045874 153848307 496653259 161513795 91346671 705361782 69555828 665008578 3744506 525805854 905893522 893122989 24230992 142005454 912591305 212169877 1807564 385014050 29590811 431586682 204090987 505277737 813335222 742830105 226008537 171376960 788788251 388842364 450042399 610658349 331504620 279326993 309001596 928455550 561884743 543855118 479833263 277592390 476872148 588395946 957611328 918980938 616909712 38398677 311023158 311236030 623627191 520114287 614273936 453458752 836529534 822651241 49153029 347706731 857991220 903630302 723190772 871812853 505907985 299525411 81813220 1710847 515405907 143328337 211899227 513954802 299942549 729993870 980221622 266371904 856755284 278120180 831019044 282743068 365246409 478012305 871885323 443422167 786450365 18918106 987954647 624169714 272798883 942138233 23695399 187688230 419522016 598591638 818818898 180920267 166065901 249060923 765180899 469653988 689932382 706611209 342668171 223865005 424469743 522747280 688362269 50982198 949854030 693147709 306939938 315207547 784351493 549056073 364224919 895458741 465027556 308223215 98541106 729819293 449166263 647030487 657713163 257341782 168128295 392847599 992226941 44034655 300020359 788629127 746522492 128359299 357701198 677242109 676227705 819205205 604236275 398458609 759708601 751178521 378950029 223312888 636092769 174490351 909786964 888486108 184582214 193887027 624127694 785585589 660743146 166055887 851716068 178702520 132731058 293519773 553708733 308088283 631448641 584724326 413005543 50712068 141786626 523238489 794661717 159001276 591091096 954079370 795270657 983000171 639103518 429553391 14922075 462754916 77775463 648317274 223231386 837842305 122520381 83926803 35087315 287179927 745536097 917789605 465585519 436259384 541518110 762584859 706355072 807138585 99815251 748620882 477024187 790474445 465740842 576768386 514987167 599858083 290294009 211581761 451998969 669347637 54663225 567742493 747740098 916301611 795161794 265247342 558694765 873329031 345642694 530491916 943392995 361526495 377861417 322170354 814574929 483933137 387862850 283888590 74175288 403419090 861254826 220806858 589993665 33625101 41229347 662368722 438573341 644645788 14714900 660289728 691066553 798631152 957296603 506165764 872554697 554896725 38818121 312482461 892998945 201661801 840481836 582705905 757120588 797200721 469034469 960596330 146305310 119289644 324540261 796205191 824725778 270039370 588966877 968346581 394818428 682913722 392933994 831989688 328827710 649789862 659934744 982231504 779654793 149385667 43067917 152546717 385523367 74901779 524613433 115468722 903954161 634551467 921956148 476282620 12136294 578686585 485377447 45940035 231309047 919755333 566129941 644188596 173442014 174712590 520390125 638057501 973331029 15903299 807893979 983207487 845805303 570082874 527354023 623533478 556884646 615412380 106403281 132692598 756353884 438432135 442625617 238463117 383001976 606318370 784849052 788661801 509438941 957913729 797249130 155965263 743845229 480342957 275188498 858061027 192221182 310322610 457460282 945196426 243643257 600685559 982310302 304874647 42485036 569641043 390149853 954021201 497743293 97363778 328359573 334531646 783863556 162044935 744965012 861484207 216007172 289936680 96380604 125699692 460695297 598172723 51350557 222820219 860037719 149452311 715629746 689263067 742439318 385828547 778320715 92538487 877833213 546974851 917748710 254012369 752165135 931146754 797091811 595048206 940044624 910013137 240920603 696996077 293798929 702711558 592765159 567331888 284477738 585794076 54669481 857428367 575097620 941189830 262969894 669382715 97703927 616742240 414748902 377092314 829338990 103696969 251116979 933715492 688710236 89245579 677150220 704705082 898772416 103524261 372677064 560135097 274456369 922840950 606156428 336033874 218380611 133480928 335416258 768034937 941203491 868421932 949950403 677969016 802196481 862008918 527147777 966904949 452843984 593330279 480393952 238374874 248336562 760465526 226167963 155005193 27067182 816349439 521427199 870744579 391900415 241473770 809368653 731573156 662084580 344284790 883413779 182738014 698905794 153434360 580735839 874115035 290296332 179084446 48842762 885831234 973289809 838968468 669801682 710849652 914327889 505479585 495819793 471519051 139273289 410036454 117208596 230864644 855637237 415177379 551985505 566321854 481053531 956851181 683599600 239730892 215855378 753348997 202773436 733398794 900719898 432571875 84209865 447846565 163914223 297317761 742505736 549578231 147178831 40732883 921574221 772255505 680462346 524513680 79513624 326166818 106098970 985806178 445104264 253407609 914289151 993490432 912870283 928386425 699009730 279001122 703949024 812642801 560373597 512751845 627289634 243572756 443185469 376300433 323336003 161566549 285393517 90500695 283255114 109796317 230842737 810416886 81805147 35802032 338470614 1717341 723406019 550906225 971466328 161635117 646215890 19337731 141914839 273578016 334311706 549460772 837613825 379603119 591292997 600082543 949167659 449030370 959998260 280749031 810234940 325841139 414496966 355349216 501731806 318317327 648918066 42276203 4420644 953897109 632959597 259721024 695267375 940360636 647610289 488882017 783641349 179009954 246036993 957605342 287364560 408407291 821649319 126623540 372638122 182191605 73397393 381427810 632267665 488187699 817172981 154116620 363703453 974754883 288014595 699127413 276612021 581537220 102817048 134643271 364323047 177303245 638449831 152813035 198564083 829373723 49047846 75976604 247283840 234186900 22427197 744965619 648083749 600404239 55647098 317141019 66815160 184703628 560810151 184714129 472494372 20936836 400208997 445653477 161607031 507912137 76046577 61447961 328894150 153077513 81000738 279407593 783194686 93986389 469285831 702305004 583823475 800091364 446966655 787897777 369741064 532836003 165519181 562584651 561087360 488386428 825420977 946793999 115273066 442872087 479899928 977246321 533928108 900568303 592110297 991327923 630522625 336118114 814338714 360889494 865216380 474338167 378290052 942285169 938750378 837004106 130578750 100274892 942804914 363641199 599016575 357742184 548481816 471872299 970416796 298486756 271514196 863042417 385755276 99982258 484892801 535735242 835682654 97364383 933416541 59935192 276943581 92637814 865649294 319999459 329155412 615909872 940920718 30367430 38607552 847854913 750284035 550765093 203590400 883443190 626408672 189358907 417403980 308179040 785654979 872768360 917208872 600300194 938052780 884955224 86775767 109018651 701037525 490799735 40150798 86206998 595446398 222219601 582957163 611965926 405911899 572435953 475096602 847265493 539616823 855555827 763984283 353764713 764863438 543876832 46133585 662818441 154937272 561357807 485130293 862072003 198309118 626401355 19914609 798427809 967545436 504717905 627301916 237103315 278632466 720107452 754380334 891290358 537668354 19577635 375490560 556749699 774743603 25111968 421649226 942485541 675377283 947172386 815580052 74160833 541863243 353565124 637977331 21167425 342615539 295201525 474426910 461623774 886295772 608456491 155427015 105769183 339275396 31557542 72043439 411506151 897140472 346268723 999248459 495258288 4899455 16137759 515081323 714824061 550083733 241009528 265789647 123365064 225436759 844630224 640507208 406665901 128542043 807917654 336622457 545474195 565790219 703413647 997401168 564459633 464108154 871319055 392431475 510827175 373028132 646165496 958738969 78001184 596694255 829263675 724404653 351742606 592069745 390290425 59286381 956552243 117822991 728570869 129464839 781899095 732301710 525158990 263314493 592441235 989110407 106922571 474217111 713600247 121008863 457669004 625521406 968793437 182957169 780828088 318308423 14348457 10816759 96844415 495309483 20615878 995785575 359923057 703921719 699830313 909821364 230541698 335510399 874058735 651471443 722437538 649506872 167469861 14649053 685793272 568100846 998086574 667285049 422099775 522900053 922275733 146105108 32949750 122351397 578469123 830390011 157009807 668053720 494559423 207608444 679224071 689520411 762690606 461015720 447448742 773367182 839999546 856530962 996341528 509179162 334123467 719944938 35892855 970609157 821104359 586022206 448103470 786524268 566080683 526200470 877032773 29627262 653153686 357110176 120209835 820888162 645845896 818645857 109166076 548191562 414447290 439914635 365858482 554995083 451083306 834236505 512200962 860592554 23973749 374811053 619311875 188076047 695071594 465557632 942030977 481276475 426742370 925295449 599707005 45711113 694502300 932739618 832842216 866946971 678750854 928484767 237735114 749450504 171543587 100524796 888347759 802862999 599687315 993211538 691533824 482170224 155291176 420182215 356346082 139399702 43746272 311022654 35607231 642860474 445099246 61415439 65483727 414809898 44292845 388974825 499575595 377058638 127109460 336783699 946324791 486026784 881472701 100768351 286235866 604974740 674562877 98058032 810808939 835100939 334340547 526806786 179060673 870915025 896969355 277896026 959346791 464305914 981939287 113579304 195461327 398040833 718290927 447291421 53866497 73345414 915692794 558476602 347769692 40416576 182716882 157443323 288059456 503458670 213228962 789411668 88192938 863131343 815993219 299769667 990153958 78391976 12970814 37040785 285381984 999428624 706211934 795086150 735033811 676163799 826519918 594473606 439206784 570337659 992951307 858241660 82597336 524238973 180176709 466043920 538082339 602057705 334622954 300248123 445138541 545564720 562299975 253891266 405026541 25490803 305380579 776791258 724579566 126105515 967815599 825066468 753050290 779426144 644958303 304434428 828079960 769618740 398364066 499879357 223092884 455275777 88180100 80995334 305504904 140594709 985714610 201102501 221790687 488887022 41295945 483875278 612145247 720876702 423795239 928556207 291329925 149259563 182326626 587508249 731170925 320246646 956296735 822468118 5557049 516774843 181239309 109380003 868629402 84720691 884251094 628535537 340684007 420267208 184400609 98999510 478498763 394754810 821361756 238899206 434930484 314954559 510376318 441538904 765870734 891551729 756904211 207197502 40118883 131723975 497987635 767116746 409080859 452685088 814040545 585216156 153591485 583192534 385002112 5292900 808716173 612566834 452839301 369132855 149786612 426341830 552461671 317902362 367310369 542668112 436815987 822571145 429309174 874401349 757193030 110066725 559511150 563134360 79094386 890097658 730768560 261222395 352344285 385783892 512204233 620575437 992831551 84924185 631085026 905212675 565384755 711464229 342503275 397930051 570843730 776030371 31178866 440876919 195316721 86047732 194674688 671207432 124475854 559879556 651190474 266337101 286015581 318164940 596085198 505551926 593783914 666186182 957327138 575295977 4691428 121280074 374745942 375630134 844265711 846427932 207272180 149819921 190677911 793060000 877846693 294004899 903418268 718475254 413614458 440715754 792279603 798070797 562824907 488503482 819648754 632357230 989266262 497485679 555628140 981254978 630691604 134852223 454622775 444776987 572707969 977162042 457452089 142951129 723298497 633861705 12174635 849721675 212264997 206480380 777848359 978583211 654417472 806501284 588481073 157151947 799802508 349240019 19182187 52573432 209215890 897426795 239190965 699297584 537731442 751022726 945210254 251410503 547686318 409987807 650080163 850280215 411179860 990069175 435184277 699060279 240007203 438897686 269779594 16077139 936174875 583714453 261136235 938207545 134522423 128146076 845954550 743831445 644661792 856274593 515656162 337902532 923271763 269926524 797849471 816720571 518552956 417911750 419630157 935302576 357680201 337951575 263538478 308523757 238320138 895032241 61867505 800977765 682847777 234026967 170033618 152827869 43489223 783469958 987382432 173433158 210746604 727262358 19520790 577173041 145913603 932017432 475133905 679313277 117493936 906765607 279960643 683568274 111547872 891601821 806759418 713371956 145342105 818081783 916595510 250213639 193733944 976734293 469440349 11919435 255321144 986268277 106213629 677451985 690610173 195610011 173602631 547524080 306369393 110886335 540966333 273770399 51955207 718738958 191119867 921615361 974607099 665488117 514351848 364529985 212032003 56355824 931752582 791261663 169049253 155778726 681228578 720750372 472824745 892723135 62614433 645244168 933160526 850940928 573471258 565764098 525776954 851108420 583551351 620650680 63277068 472620209 656489808 719904070 884115425 841270902 97110976 946875296 543551225 184316003 681582711 966295010 432049152 218643095 271042952 865180983 111122005 133823670 896454502 103859756 956080589 299560125 405584042 68426673 117911021 801923795 679841559 929504522 148263618 449124661 430253505 318701768 343273413 134718878 18097734 968063674 588794660 499147442 384064806 471837191 584612960 248786793 992449193 70510134 840978811 471971697 729893637 544447716 377174837 546415609 649457311 467999025 227260878 581126087 733622077 758970963 867660324 543601828 145288493 769178021 412480057 933289583 436533849 943354511 471149192 945943229 292835419 266237711 94565 540528419 667076997 33951687 100554559 104785030 271659763 566297777 865505644 424991481 513721840 296334690 39738986 699890611 529333796 837764343 870090570 742100929 175885004 163542874 626972253 398825105 595917754 124624967 600322239 919874862 377200083 173939281 19494710 80492826 715692300 363585918 485026294 182218152 552647276 519703512 709698531 945121915 660873782 177447706 927952703 687995843 803949136 616278959 862791648 681013028 649038008 918063877 258209486 177811320 683973273 298464577 169509010 238290894 579481435 992757832 623883329 608794379 678316543 619794889 981221333 785409190 519769391 815319343 766530650 353741444 610617875 126074760 25954848 86603191 74786840 84496751 128496897 325214676 127021418 445062684 723020740 908309576 52387686 708814029 467444217 135649647 245208153 615794815 736951611 536455335 707168960 764035741 960884474 593757652 358650011 206180955 209319120 328157825 332883704 385838227 757278730 467923474 613265042 293857317 844254526 386789917 736247036 586445281 525758413 867022967 135980158 306467551 617174651 356462356 999400239 470013623 722454892 622385375 117290146 318837825 616379021 460519628 424227972 377850447 214059811 499204363 805582657 294928785 891390376 2285105 265224029 91593281 597756497 623050993 707650680 971192114 617419293 79974934 754958981 721496178 320940171 249873919 927582650 642020837 591727526 282573567 706234293 544856074 359652303 602844620 785764179 525205582 807743269 808737907 590554570 747362129 674086989 845212564 441657401 227218131 140497891 258297243 172704055 598019360 527116096 378450150 150273171 495938563 531988980 366810200 52068014 53576523 854432798 333043482 886228288 649112416 432938928 816563878 716957414 89042915 983292502 251117359 981532992 6373992 899063521 186921502 237145663 808708550 394374330 333569780 708800356 822818480 647912927 673862582 177006190 109563951 600407180 572815108 234102210 900927323 548968150 734061118 144381702 914269684 469706985 572470452 786380401 574949319 117216599 104993335 236243713 393193770 613693491 728404637 804642307 715711014 465081149 819372486 80955187 519808507 299326310 232001910 595365403 905076305 607675883 516339893 319975573 588701526 699113446 587661541 486776090 390350116 635383007 109440617 941353420 26640125 998099569 199878179 810155956 995174139 595213479 938608607 337098136 581831961 906888320 571582206 915373876 170839454 707682287 977904970 252267951 30437798 581902492 776659503 500690345 567956339 686635926 387310138 194429035 135869961 461856434 487882511 910210758 191150159 600991288 319579959 707256280 224311608 351365140 107231244 172086689 944658810 519478926 201219178 954886131 892423772 661052922 421975020 758031486 843475611 704033887 348519396 734013105 255350499 254414600 804182574 118117044 141997813 562842815 468590133 381080645 314997050 528235623 893877531 446044146 856299931 493571821 172731586 415796088 566321880 902692390 547268224 657585025 135726703 549032045 973406803 3671061 285709688 741024365 105753324 363525607 299952227 393079584 8927751 729529136 535913097 625113313 594136904 451280970 436582092 53970914 647092024 236969799 891965894 52074929 747060993 488654219 946598193 868391997 468407549 981790881 743058156 759376172 947757878 83559459 665466477 878295229 853134621 78551488 774239239 933988330 111632120 627182873 195467861 986670865 31529544 99915043 208329914 116384930 390470532 979389910 415538718 639147273 330586052 538910349 401402715 680257053 957262619 403830827 775754607 469744649 839107350 461301861 847166836 235345861 278463879 728401975 529707683 710535555 16872062 508876623 997310458 136635192 943370875 331087208 23218018 120240151 429157418 301732292 620719183 861083662 561079623 624147724 917165625 123880405 863778645 911344578 856364562 563822670 594644044 619459035 356726186 3906646 427925011 614367606 164107332 43429649 349219679 21851284 929259650 90068907 779675956 168708385 813610703 607885496 289671232 878741632 943209546 898373222 502300893 963392990 903802112 617693271 127613536 938116652 44090045 228591297 769965815 345111688 223134567 800917231 46448912 717311210 860119131 284000955 438323035 855097481 877022945 208262380 286860498 88152050 74105704 210610370 301970470 257619308 579879449 370749499 728101361 261539315 373443645 845892679 716881890 103418332 952328021 604448322 773105357 880740546 116334836 756875495 776658563 712846384 126781076 196409473 181814432 821722292 221591691 422462549 439150007 528944260 339331231 648188307 614683784 712752707 596359616 464233486 939108700 400418343 829040779 865101209 394385842 154459810 866595547 797916158 586037954 87950169 145260793 316364781 117638516 152161571 520882841 183524991 483661038 744173100 173469680 227041776 576770244 375403048 353619353 526802675 894623375 584619457 752757792 698871911 235175513 64173539 714970304 989578822 890882365 887008507 175377178 950983099 603156969 80699633 700466495 464364771 638995034 68568619 907455805 401689887 416723039 52985634 211166630 227526533 576020959 200578635 244048939 225981774 684934520 155820357 42469817 132872071 413140512 316442531 312724564 414171648 882669616 995040178 492248971 715890967 671441963 515139635 371841902 244431611 663366027 128748632 520548621 879780184 310657902 754944677 238228641 968510021 577642373 301494820 562704255 57996619 553162231 157872343 886501159 115152919 817626928 486545224 598921335 645335154 100747981 37147493 474923966 245114584 387898358 657882358 197590975 13581062 87271524 122377194 913177623 872895891 347019882 768170400 478406514 712535222 630213132 814728009 679668904 662634184 735338726 409579182 4962922 212155468 390534821 253320287 528172547 666779010 373823150 602754673 101327905 92360789 608964605 733115793 982006300 585450690 968209235 163297846 924065356 768930829 587178743 539422023 667999417 923220289 189569304 49586722 529431421 965972026 334927602 956094228 178712146 926753350 329070203 644285343 642337550 529208859 491662482 273599152 108512029 613355176 269413012 685301129 308389055 987491723 404287171 180543730 810871376 563399560 373324238 273560494 738253107 921667919 579146271 915468109 300366401 561980737 922418785 706628362 187880253 436510080 348100821 526985372 904507946 697417074 762064916 316992829 915639132 159741022 287181323 76161926 829649275 36414083 402436122 813544496 613807295 688065524 819524748 606817408 560081973 15808630 808211093 898324406 103091718 375487540 48039155 367348539 527242173 590075041 968690393 154191490 506442043 995574911 408072312 538575602 11629175 655787229 278199404 195814907 914074634 970277977 260604068 214869263 977211414 370941845 187076609 919660101 369793360 923235212 359635242 548357538 657864058 273958043 95351470 926626216 613665580 807006494 992402839 255443179 112307258 696392545 460087188 344125376 942052729 882402870 357558594 231026694 763237937 24060075 405053766 181898820 217052697 522500848 224206866 998483924 398346461 34508367 154179226 899939938 329091451 88227651 327340820 833509375 471791617 834499093 263999627 786258447 627108956 821654137 728336545 527494805 838053705 977079153 295117691 821855699 990307207 272558081 190645454 449970969 485794232 737692244 713830152 934479713 399079458 291067898 65747686 441811020 341846159 962456764 257037668 584777701 508843910 481909914 35007682 469149764 834339339 30812256 264789836 211321534 856333725 719343438 995694814 647427985 262855698 890970294 707353969 936578358 367581809 446339392 937648163 87536956 512233833 343904390 56370616 745537056 342906009 669977659 664976523 632360893 495244812 997158974 711010156 953420543 69173523 304125314 310479050 139229531 346071419 714736935 90518521 107110089 989557290 69270233 587661906 576444740 780597337 966260199 817523266 74897359 44619182 601608663 629112430 236402771 795625982 316255595 564233190 829271703 226702130 74373442 158283841 337738129 49168677 887075166 909819828 28308254 20313168 166878341 110396996 54598721 199053976 825974248 120176532 815525433 83966941 844159924 549698401 358731736 267098514 860401254 207424246 852359412 415201693 539054376 735852641 180643549 709073344 592185310 45030160 191024310 210921139 46539535 660854847 243612553 181577484 96156690 658496093 906514171 999598855 997372077 301162860 160313180 44839029 659796340 312967724 346168969 697569164 147590769 988348405 822967396 339655252 969754730 424322462 818815219 367193440 951309278 135978904 162067028 979826349 243939290 194132711 687435173 594181167 236686288 144515161 41983644 364650377 278642500 685564948 858502581 679844921 160373051 474756503 932202257 17061221 812615589 94130139 414560415 732564555 937822337 403811304 338906314 725313842 127382787 650227252 538809777 864110294 903840029 772775070 337356969 330406164 356443163 124860329 731027668 146183199 707854853 214618126 788246533 699169661 570751969 872301784 880033781 493007247 919195783 436400376 878854413 496983164 241880354 959893970 323637662 205878577 967530003 642667986 715930996 761639174 808564668 63882075 110699738 977300226 417151550 212226257 590569559 77079216 14543405 327870964 361951249 394160980 814255270 266897871 85408053 326621137 585679361 201941566 77039075 83955210 972683153 84214966 317186286 207061304 105555225 796258488 47426288 849352455 462981933 736249573 477961834 305665696 469389792 131040375 523750250 154402693 290060386 666608428 479377521 33288664 76480173 75523486 246827586 682165903 581367634 308597199 133043511 601521534 608239175 241043946 750107720 245710577 918707371 71043955 652691342 542925963 597052572 297661513 59949999 445247175 187482631 449168497 134415574 455052134 398462265 230295618 884411263 184256920 831007392 399142826 671449139 549374682 213674824 664197452 176314850 952279452 688201337 124971865 633191170 523240471 109215795 976527666 197198011 540565913 773908070 87650446 170123480 167730529 97388480 374928749 191375859 985901077 738904572 505259491 414117428 872357342 121685560 439724772 801848813 179519269 846958702 876262344 176292535 359378387 445662382 101442838 916225623 476786464 835983309 94322700 666283698 147261709 389362507 438530595 871944199 777886591 370642876 936428767 3236450 482559534 406146984 815834005 870793981 288418512 382466174 958717263 456109528 664009391 407216886 872360593 892813532 722076296 832597914 657323535 752888810 743336172 654491465 899338871 926300700 273318599 299560931 247886668 725921680 65349754 421692034 869796264 169731364 150844561 290080864 840924908 966563896 100257957 126144483 296773610 833847562 417304952 322714067 185466800 661486987 625798872 479717625 360004310 49806417 220434778 109152005 426283063 150823249 244243838 922850848 977963792 988364854 949143808 888905232 379757626 601655356 533276363 961143872 630140328 141718209 148758509 545053368 117137110 710962782 297479614 888485116 587097881 941919462 556056929 664992573 649186964 580494086 278387875 316182679 2201645 401012288 997846771 248360981 506580107 735643748 995834594 579257182 915232186 786811253 845331716 416681427 820105355 397815527 631496902 758084956 688157225 59239336 801665754 896514145 516750823 434979667 559463326 67653822 279823157 414082794 475387264 509406873 866268447 424525214 690998835 550346306 633814286 10467012 723458028 805438545 942120168 337792808 383583353 745847822 543383712 202182971 155756370 358027026 952303283 310519224 273079993 707795596 666974683 275216704 549779984 574757771 906163108 337654092 37838931 421550940 773296079 292795505 829451272 406476124 830187263 737387810 844993517 664160468 877286549 868931372 183025051 651010859 350478865 156386002 274872053 833196254 863036473 887310926 934600221 10928729 942726914 798865891 985080211 434870205 181779242 369331306 946474304 551233589 101310490 955004259 746329855 8282920 757445363 483710232 534701435 908783759 132150514 703964973 285532402 526410582 743906972 83950120 173404719 625077176 33738312 16139173 257392732 414546408 595470428 839970604 786156449 43869963 949670624 890071299 542471685 376292295 185183071 786841681 287316736 772231766 379809459 920011398 26136432 740029253 436636923 717552001 373923295 843083572 846236068 824443964 199433437 960663960 379568661 877300145 446288646 133021515 453097286 819547453 775179131 436071230 674139498 545243354 926507155 283766522 89153763 222308572 840702589 923985794 888439669 569990837 838667698 291565392 94114783 786768117 615580763 102694609 125389849 9979454 768709136 186320915 683116500 869183701 475562160 798346038 313693042 158305782 237479547 271702052 895072426 860998655 656635799 245839615 87088117 493628355 469747670 156403593 558066366 507042338 697354744 395728479 747749472 417291851 53035900 210372416 633258787 210239162 52906811 844499679 3206170 164325956 92723838 795196232 755744459 841647225 195516831 88252924 289753090 204878737 63535814 179644719 598100208 40615968 876257557 181589247 159371246 384589941 621956305 113698497 367656705 360715366 866942368 439540324 451643724 643629254 570659243 191116162 702803765 695536321 196609952 770692680 34043982 1980744 604956531 47079326 471460904 336379637 438310577 442009084 251832516 314553997 124281640 332402184 557819833 24136850 693736892 727152463 758293964 650271287 213362445 364898105 175566537 529841701 114286752 109884827 369958407 167576638 691603501 454613798 499204796 140623216 379772859 50333042 63520137 470096632 601938215 567012576 1330031 251632359 467278649 112801857 640477700 497248547 209327591 438418828 664488917 794664627 789361473 268301202 678021347 924202898 712336091 312629955 704081403 922928389 161558020 293333747 34379973 636662719 588860217 617714622 191475910 743648770 241093679 673315223 594118867 513043089 624410176 456294386 498348455 502335449 692058783 499542692 688806118 67495819 522069004 833583816 828365288 914862739 39827527 748012389 802450866 43359013 72724811 428804623 895883084 864483922 59343338 808199808 366118323 438730799 467745654 621835297 209479131 935804287 789984694 796611262 131087107 565829702 57440874 219583452 495066976 210446098 933439601 332775845 288730721 152760182 244917138 347208129 795551854 194799429 471089476 297421934 427790223 716412712 713813806 668310096 353744477 557847088 266365008 492179654 890011643 275967329 593785581 702237065 395535096 311583495 273174980 177468965 17841454 177372884 451417981 779515343 858040773 407865789 852646950 831893419 6036200 123471883 906031538 856025602 955667437 513935807 498398813 192812156 548092775 550079215 987969953 257629265 374537970 404017531 335995546 67064301 264331930 855080426 387597902 894892456 116818460 40174370 126359071 698858723 349636914 531969111 894483575 376454835 867317964 404392829 948027755 903507103 474228719 894841102 443301584 872055321 893093011 692555244 713532352 770086392 751058081 310737809 706126358 337001710 17161393 693288317 145203294 775557112 304536828 714981222 154367704 628841153 717490528 936498817 675405497 274722681 163467121 920543038 503827823 401090596 828201792 623288766 79454980 320177686 463881920 932868341 230814237 50496134 814296672 485471430 219837792 56223456 613112558 588997073 642324571 755120003 177770889 741148431 411268991 566471271 637196227 555253990 160992716 897201406 501416508 206372082 670437581 486437309 380548863 511639500 896904899 133997266 209771785 405812873 313230449 466019232 540314103 826023255 44173242 950405608 578856958 199909683 185155120 240259836 941345697 710165239 579410632 40242241 787902809 362700044 263386749 444030807 764704374 528667248 579232766 311834207 603734279 572147687 859578599 28585332 200940567 757652580 40031375 225919792 764779480 759872658 550742639 516818175 942151095 2885385 643326542 348798930 493711501 198697249 975182776 31191444 995272197 630285458 741948044 231512012 374469829 835093017 243351008 540156361 602653401 136412433 475085385 84913007 67095796 114171290 472540369 435027818 159060282 524814099 656962518 217540900 247451394 353445249 64631652 830574057 676811590 350765933 573607404 495147966 601546652 95259652 127805060 929635815 360453028 141832544 849521565 154346831 879880757 511942781 580918478 375686941 996638693 187524900 559895144 672862267 44382976 63715116 424360155 895909046 202582685 724510324 293568433 147203198 674340059 481517900 638195785 986428222 368539377 577639550 808700825 330098859 383108037 326720748 996264358 806018146 710742361 373704199 777330891 412566728 255747800 827258779 733302201 327500659 402795094 373444842 385407755 895779211 490775361 557523805 662692644 871673306 757608208 199339954 149349590 303272014 730963987 796181247 553126474 672941839 560415043 556179327 162464138 747321975 887672609 195486859 520695742 74340966 295131547 741522545 353641171 49852989 482233942 70472379 921992999 887276776 712089938 221932952 168232209 153580918 828538314 178066600 99705420 21430436 129728076 19081700 401652726 530491630 146992170 583852442 842791086 691773119 584050318 344690611 967138029 168194697 201584119 14553071 165983059 503957513 62035324 547030617 64347875 662402834 65423226 163075123 151988585 481979358 991363185 981004121 382573464 490704351 145997227 949467033 763410142 722975398 800802769 547280103 368487312 846069294 800278842 732013975 421482600 938542528 681506976 528763515 291490178 625328991 370212354 459120306 585963368 869648452 494868536 304903843 756485815 60993485 166785362 626921881 250055824 383453900 374946442 514019977 789728936 226826153 352259212 72702415 966806790 637956403 630026968 172096424 684265898 331086818 515467629 775837809 922405207 626859354 356882430 91948010 567089786 782323630 810844727 827586498 724226150 873799462 715000663 31055112 915170165 398213912 107752718 600647336 571562491 888422103 634261874 345558337 583094747 32494719 9908079 913997366 46075579 469142271 13539240 175087539 26229125 746823800 866538951 520394367 993056912 431120587 99149293 700681475 189644816 980405335 860134858 960077924 160621005 367937635 513996962 773527361 916636254 21242861 399527444 20450243 224572874 108828144 393993016 266237723 39749880 990189444 271781218 558373290 588988416 556899485 649566514 385030741 556123802 358296263 215604316 821731005 750841068 26817790 323892006 845881918 164366429 957052314 90659136 659101266 493725874 632269134 40618313 587606965 340815548 788049148 229914100 387382155 198640396 835904460 39584296 475439969 492446373 152983004 784065144 263483918 829782200 575082464 190619131 436255504 904814090 466204748 399936460 630719472 60241827 785413076 912234544 442265347 471159774 193231597 476591112 262411887 896362364 133217413 418955036 275956556 426926698 389089754 790375232 303455377 834987698 49574100 991874994 727219196 306646388 486464141 139641552 729974489 992338741 718723818 522888800 394809768 683855727 33311484 729265739 814382913 96103840 295308300 769975419 602721572 496378139 637168891 151232295 562344833 641139207 389597275 137358558 526933722 650923476 153069895 64749150 792488969 807881277 639096119 763515197 70459509 757207275 559032806 960225907 408015975 654904367 826825719 311765175 452483431 54585628 800011246 493169197 688744766 663492607 584886491 778002205 97028325 721693854 718946192 440424471 619927008 710939387 912356291 732779829 270172263 775669778 818621649 803292564 452655516 146968104 706737224 198452069 100344695 699938368 749624264 243725110 746025998 694993065 921289183 273371647 442801470 721686980 471670368 874587486 486314227 526373037 342081008 673735096 736628311 512567151 949913101 726411680 59496002 588160415 711184300 894899350 314778606 418128898 875214516 162175911 861597121 184873207 762919731 192587515 69750092 228187539 717536613 329584731 462112295 260191320 423592318 471952532 16435641 741023500 605863198 11086949 697440173 247763701 137890049 948000889 498770019 871418879 153430816 791863699 367558926 372466443 585536389 684619157 466733876 701012395 408925387 252449155 679099894 509879604 745288462 427915952 822531874 239513291 747695885 317990570 575105135 658045513 247221122 251450178 330294466 520944266 481102038 703399755 722649333 312749503 222354831 941151778 213564509 940836370 843848999 940062414 166455054 694671258 802409066 306440654 517921898 377123775 218705791 734022112 827702583 831162067 11136979 315966514 8990442 667951077 315026532 345169955 863341271 671136813 542462971 726405741 995175227 259887456 563690444 315431008 25435507 49919175 138479161 29524720 553820435 832327271 238439392 266945046 414023865 227693934 651398105 953183420 192200426 542653176 641252128 125665836 705692211 692623178 888966020 294585931 465189845 492400380 266945707 18952023 683734663 533348364 763720402 621176405 509332017 968105858 558550112 840309561 578218574 187693771 461545038 113466220 564784699 167793460 117043978 358533708 665786551 710312851 795442201 323667529 188371429 668882329 366049932 902269108 849013004 262409730 385241315 980345647 466689126 391812828 154650459 779991132 384600295 921402789 501824370 463304083 154345520 249494972 308928106 979788678 716907277 318583935 908680926 282261540 704152466 192352162 768563208 599101694 471880727 175771192 159146739 951920777 675396845 497386785 673784706 932215759 279489557 150648919 59248273 729838438 188719826 929930663 868792876 317512540 640582608 222386263 889191306 164182182 336945146 442956212 476204954 987825118 318648532 705998775 989667587 767185820 414085110 651191276 176407056 494946500 910340720 676552727 880488312 44323868 472260847 823192047 116452117 290829681 637795383 822470351 964817166 634230635 451979355 597754868 535971439 542513673 783766024 853520290 610517417 239853866 728638768 148364395 462567196 569016246 959427885 178049398 527493960 267441241 88959707 799398581 128050608 469744272 584103125 727501662 421248715 128186345 478092859 299998374 906471672 94155998 32936784 426570679 440214237 938476031 363495505 188031798 754516927 192584275 30496183 144719282 96250288 225349082 418146605 284055686 556126047 163288503 138246466 654621907 839875519 600849496 745896254 428063560 72393514 986035450 171217103 672045218 972663535 422891444 46837665 538472302 567895629 408860658 907576895 877371892 394089154 47378928 696087670 842872798 167444646 124947170 642256689 868181783 958834029 136983038 484015188 267198955 821679046 399179898 20149997 570328295 870901065 69900950 366789461 912220410 93273903 185421496 464111678 992347542 421833067 612500864 504453655 40422105 660741055 344781561 696630261 793371279 127562956 383211420 311233299 628775361 326498510 777225093 905746981 517002485 757324797 956921175 129385728 714516422 956897568 749069920 665045683 99011140 416294753 303950057 709689875 362298845 954466317 510785491 19210081 69802573 645156014 604383068 981925126 893768150 956310323 445277761 823443865 724692037 912666501 846568970 382505152 975843492 285779131 480982179 503030385 400214814 521172057 860364173 793843188 54415048 27982791 33336405 412366040 676518189 693618942 261120053 936082329 553287126 382845407 733681347 343655944 901525361 91928449 872196927 976823416 162525371 812641620 959887737 162844233 116193081 412776706 137742528 339684963 894171693 702153218 483231204 329519255 460399051 173261640 125298712 782660686 53475389 705190314 225121146 821171526 110365454 850038366 623604913 647553254 967796296 982805384 598311905 119026338 556579074 143997761 95674459 42828312 521767855 288576961 556786953 741827597 790588386 587920752 79608497 354551534 601297837 684507724 662535997 415681434 600318515 603578476 460613371 629891781 822157470 964812607 746819438 61393170 491996074 293488005 171988545 142905392 805618729 680827606 489305532 330636113 551611188 46394386 989728603 180344191 879002667 253946430 882505785 433666386 875866520 93337051 270274062 465291028 948936938 162535519 977766868 607101723 533532553 95483727 865139438 72318066 140896401 960262943 859326711 915134684 470509922 605672699 424586891 540683010 698056520 227293391 898642119 971235493 786050475 287833207 621455793 622498325 815879692 16302640 554526535 375159775 17096329 254391159 955178346 946411007 916182042 410222872 963660128 155906002 699381750 467493845 456930744 31616346 164315274 946099938 42112045 222907550 90115431 896375936 582278785 254794296 597303599 949375978 486403714 830331472 325969413 176287069 638873279 925050387 904658902 623093774 95584466 26354025 290868257 979578215 197681646 371336689 310188975 133764604 540425543 585937562 440538966 259983786 527436839 9256180 215549175 897884052 311672417 223968396 574793751 543066098 697955431 887730210 442579954 913988570 79006366 369555714 118326992 49289643 277399090 938938429 979921282 559642571 551981360 597987579 3876362 900362044 232835243 498704456 579008185 167329623 61379318 973284628 514033894 420363081 655424102 392486053 679252828 124105755 299185464 899460032 95041258 684924799 383231765 255029994 657423104 54038775 174733182 325891121 198827761 276021003 132970775 356248607 152768859 199945307 331769425 384551006 242798737 456175878 801467696 136974707 77067012 681387871 498895880 319816349 850797291 840432455 736899347 828412711 246125568 529607853 965501261 969102382 375325904 948043766 956501007 191873029 912258771 42826967 486957192 254676567 986160841 914409487 446474491 175191546 122110630 186781677 210896109 244995859 379555880 687641898 767276356 463177439 850550499 400241124 206933350 36845318 627558936 10999551 562716467 83978868 957405777 749109977 874337067 941951210 983462316 926069988 945369166 485323556 499477593 64185412 969481934 390072460 480677271 838864582 618918855 105770140 796495022 673956297 647060405 556047810 757296340 153467543 36283362 857594263 71356238 656837110 970484677 67242170 413839600 453082602 508079658 691379830 522001896 439237711 211123230 801654776 528399349 658326666 353574449 214001322 571803769 220747130 145763579 887868380 433121593 747888746 286874900 336390859 548917238 487101793 498253047 813660049 932414073 479302018 281065790 945084630 642051780 806300622 429361290 82540981 79365444 171941635 260209212 635629245 961969305 984056873 896624920 368082709 753503163 584462441 627198318 339530812 680525641 530918837 558067989 3300715 572576992 86035987 456375415 457025647 191430969 146229943 622029912 668774388 854520710 926709669 988729265 39196461 151241479 881386320 422251245 48466407 295375326 801975141 522185454 162328370 536719583 282842849 683739719 187926339 460127850 41803528 357928096 783113688 798006922 708383581 801598620 102012699 632617073 242356507 625387108 506318038 713350339 100467249 367860509 448834740 791863074 923111874 600885320 432133362 749412671 712467659 419081291 173422311 962218476 791867583 513947741 365096530 918229548 219896553 676330550 761109940 954465152 224801772 775835142 798944193 127595007 1073373 45588341 925843919 841821096 906191189 728494845 706562290 158073111 250499020 894490946 959983510 697064455 988714375 794133914 702242513 666531619 874572739 640479187 256224098 312860399 771753211 612232392 495395480 819103876 459528886 822320960 313280875 891704880 204112611 872799632 263093086 52563780 632876215 734545458 574874419 677334949 792730291 449561911 505261486 191598565 731568830 484814537 367174274 884472402 335847743 168974969 689107912 448745406 544032548 405403284 463225728 968017955 654782368 449714524 60874798 754868649 891150083 574062519 665517313 746505578 60580137 260003267 252681530 949609950 555667999 941345400 260498779 240901808 931739780 861324202 375580541 98853720 392150732 536798545 733176484 416838621 493609425 412200692 233140548 851700212 586673159 603131176 707245615 385059185 543068728 146953577 22854074 925007478 679564546 349148677 193844103 744864498 843413530 377573050 763441843 113902531 934921949 304548674 342633017 348002424 900647866 382924466 557586462 184138030 853330106 892302600 856849656 952225502 396632573 109445360 7659274 682179877 941283013 917646327 249958540 627760802 409244659 105965389 243377232 85188623 482537482 931650528 888040315 477758408 999841645 150627754 41647194 108743096 926012074 486839818 167186830 605779282 909498142 15536153 185494705 899673858 376037354 824016208 894433691 980450597 459101270 52463083 84561815 211503046 631220549 514808768 658847138 171717701 194169985 822177691 93594264 469562429 1936452 153329751 136236887 892470742 796217047 591740866 168706919 426213805 537334219 525192723 801642315 52696314 166775458 486372532 868523579 680673116 89164198 475501414 734834108 119765616 147805945 386602199 372735514 684892495 640139972 911787724 393616193 999539806 349719198 646407592 988555801 619515151 180894334 595741940 452588469 840304774 858759055 769533626 625797895 600905743 47681133 709154185 678458535 951339560 481108097 932830553 632216286 411672112 855210273 849070275 602615867 812175992 514878535 785121917 490208942 739792289 460878024 962298500 805191702 648224797 744524888 49124816 689922926 227588414 289314288 519655741 547368359 90423156 786279128 800423037 635756709 509487668 590675443 513877254 652106288 310824808 245223522 120416665 764201921 412062823 216017949 134899902 451650427 526645351 607341081 374556004 167354956 816306431 889630633 638545163 412140307 13574679 727189297 533967733 720038684 784812461 706374067 799468545 62883841 737091611 715224821 846543025 999408321 265937770 48256435 721885828 796661158 432133477 354869798 359521298 503383694 338507823 844428852 624652860 441833047 769936445 302777547 890158818 550374263 553823937 994012514 781942134 339155017 377331985 406101226 886155767 84842532 68023606 837064461 250128072 85875193 883494498 998689327 563800005 602428522 788907068 475586643 917557379 805860738 429605843 402314463 695260230 328176827 588005548 833625573 940538727 802394759 407160619 262827299 775722156 619298081 718113401 209200185 392069671 107508699 961726110 562710462 262578598 694309785 414733425 390924463 959885822 508049837 672707398 414246103 900362191 217588423 599529171 197016083 852985593 956736744 666067245 125644529 73057421 921470808 890461761 150762500 347199115 764285348 644379428 745114738 832976107 258296329 742634170 67679290 872677664 873674992 220932822 119924415 43335995 439959028 41749412 129348663 511671260 393578769 75178042 436372132 701554560 37523144 137876014 247725113 243339801 457963969 768873680 657223646 368381055 725309198 87944411 955568170 636361656 997381213 174512859 683803902 96874068 597225463 963378214 939604271 362593138 560987093 674296845 170241756 893040894 891872317 665864686 645591254 809622616 491447237 836232091 34276247 176853598 26528289 152366892 468674077 11086261 144098612 172418351 710521881 668927250 765727789 794047491 460477238 480813447 382328592 249572810 411520007 704578685 282836109 753945042 978488511 788198801 868968496 321661090 688223474 48098618 340781560 481127837 325758076 345045740 855538752 467198673 491154617 750545566 748919471 87922022 747253580 119779871 535701373 501593567 384016007 376637561 479935592 128516971 71477431 644005623 983467273 38964689 878617289 22790054 955977672 101458179 361827797 158857229 790554372 200811651 466470137 233888637 633305171 446006080 410174622 290612052 552051699 741215392 307068202 168484843 703169249 973906860 994208454 54975161 660438836 570336625 624631563 838647093 172973144 276354847 952044711 540379029 763759634 335986496 656641633 525975256 339554266 486658721 210258178 885324562 475097236 315415516 448691804 414736659 858571987 712584198 440098466 639401842 186190137 644047877 475965304 689948339 465142462 657883358 734423077 339815783 67843364 125987386 9594263 734633819 517154560 659325629 170911765 421235526 578403120 182960671 888165088 122227073 329615675 146822397 942350572 857983290 818593400 456925465 882663698 104585760 893741466 795842057 267253308 47518121 608507843 613917989 214780040 23721171 182191903 523115015 344004464 265636067 41406842 937095508 706615792 696506330 516128571 432948178 64741810 197401022 997119982 844793709 17163197 80176036 809571885 783734073 352583748 534129294 952067400 354432658 326458246 449352862 656254452 991374250 873196942 212092890 401989401 396594907 34436382 718080025 89624305 621183056 464668820 450553613 578141432 85425288 422789518 862207447 399779640 999304038 958152747 398074093 793824703 783866924 535640195 81243320 642034944 798310002 372392571 631109975 558749536 999591353 47517827 644973398 2153552 288572583 860032524 665747143 562991906 909972909 277941596 954566692 498219759 449839536 98614122 227475236 648139306 398615234 477231552 239975410 14264872 942070101 644359109 876617761 996512839 188917255 24017843 871931876 688517565 223710202 269478984 853266222 331666731 284981676 220301885 74255047 913088879 807496077 883675339 344533220 159463611 25298196 51338972 501065914 920742463 834507290 368861616 703138643 207971255 796668654 646381612 486192163 102838048 713470101 197174139 420626601 880325154 594358915 340226039 245579209 557767889 575905718 189913166 309251739 675811397 292649427 768394825 831371221 644732988 132108882 841880704 184361322 897162690 722755044 841050333 523722644 48392748 146382869 275534489 833196803 788836753 552631641 709587431 280577360 417878799 840807626 423361840 238057130 917920667 605774938 726921633 111240078 389789412 774993157 245956019 523961309 747446410 283917435 509131536 78644726 170946381 353459729 805142180 480569637 718535299 481374776 733201530 615004880 792359155 437724162 527359045 362315282 670329429 828297123 275751456 12113127 231722557 62015212 351294925 343553467 873771354 968958516 385569200 739443168 410514724 666290993 243482460 816542016 298089648 578132197 727481774 939094999 126172825 147068044 187171428 293913066 29335316 857799870 4227984 484711580 140655924 446036481 649612516 254360653 392805492 986723928 654155262 446229188 450842211 151226049 2795244 540054081 259161563 612602478 235634228 475974491 415753341 344914800 754828315 83811843 308669116 186573600 883916764 871904774 749603207 851155358 396526487 409034702 665098855 384276487 85279631 57120087 518968793 240905325 995178181 271346919 819910408 819020917 683716661 368984569 736756947 636177017 696595395 958487698 216971029 430436439 647530732 808634338 686369136 947692780 327635395 279768348 511237504 7495920 881576288 102166933 656692713 679466391 117434884 251060539 542775292 614944168 540020122 64953475 992799009 729484293 806842637 833427694 669357260 642723630 41510206 756438579 321320254 575138388 922996993 155826893 155524138 618844093 910043747 434766309 851429301 809124075 785855301 797939727 875337458 300633625 263307987 255007007 233921659 153950413 783756325 888433822 871089272 223465529 852942543 321648806 807368894 558045054 974279477 272678421 111378745 884101123 747461019 866670824 104418765 860910410 369509545 342244704 561252089 18606251 660185657 256141705 623409430 145219973 803954786 716173286 395754654 458607564 592323632 581707600 200158105 955952339 60598630 520054692 365252714 156784075 71393074 157170284 40152754 306883545 865870166 319630712 136729860 164741021 774272258 800529687 403376807 606202416 276449722 978842233 500265992 140823797 802380332 813596075 587617750 498194489 512719345 329120810 393143770 421987396 886208751 754571270 398550336 433138006 847179842 801186208 636618123 399044415 830758935 129236434 526189501 439770713 848196330 427189176 296218123 11740566 368863826 496624329 589311067 29795969 137444862 931046448 747693433 464799741 494028152 678261983 568663128 859338351 586896800 417681035 976247996 724865682 241410480 657079721 834588609 885876912 457327742 53509913 400596763 106045908 558106005 121715469 676603006 776173407 126591309 51910903 187058477 676318695 787884753 164454235 562220870 24957785 156934817 983372569 163777791 27254709 469823071 794580743 164378525 478115818 781488038 539383095 70538697 722255614 762193170 558913829 347946505 693822666 205160989 728918328 815248224 741605624 905816557 420170868 986009206 406881982 978067668 313082007 663570676 672070090 830316675 465872811 27606163 524458987 931953342 827452654 561559492 416446137 27291085 33044250 2943221 473295637 934775 491965586 542708363 47590812 418757140 103023540 873326679 200153841 56364414 797331575 927340870 60536675 517779198 240422067 339119488 396189380 614705818 64284433 162167173 584266717 467159117 326392791 608327088 861290952 608415475 769981094 905353488 190734400 294663692 260568366 575723257 766940410 520261275 482194923 689244076 256754836 330058280 831240817 699828187 719055487 378480878 578361741 797608685 676684910 33378561 863336558 962638947 635721767 752491391 90004968 304287264 709710903 95646069 22957279 560286973 194140524 170325566 241732891 138066804 172059720 769878055 598012809 459763560 4527233 527394789 12720613 748000670 316125474 17420141 282362269 916994067 410833708 732770710 318678169 965313779 243527664 533700823 724325436 767125126 257281565 801168581 226874943 561406165 34311949 105907799 418105703 497371388 694512588 652028944 930623118 569418219 723070214 456040866 611322783 660601299 260446073 4666128 390080020 659875074 494845912 218153794 272479070 214787730 756754527 338746843 411060088 541416802 894329522 453422087 76545941 189425039 546500846 181902704 619000708 281323626 707402787 209041554 801894778 908602917 197755978 796188422 436607601 791011297 904453452 784733233 367931185 595464730 93431257 547030590 377909574 240912027 161195011 834447189 403579459 816700210 231831288 820361745 33577633 780337282 625655028 813279473 997866651 776482868 302408143 168283252 467507371 347890725 678655868 218393418 734876348 216664425 684317999 715135840 532938335 293033093 746278152 418124883 697583656 605848226 661155704 284623930 834410260 101947983 879040085 192411122 4847516 28592796 269731464 523267543 494046802 269546046 388067706 238664757 112373299 39992849 35411026 167311282 845390291 828159081 526014983 301552449 101382623 449538748 873046781 270175984 766716551 941058010 351637796 681428796 359072670 911537317 219550515 216597017 492062473 226833057 475161092 47022997 410981938 226741304 750959921 612841512 518592677 945780999 526022503 139600769 857289105 522600579 903208562 491303737 912651976 260924080 294234841 372873786 944884217 658714220 684545068 736206342 155669278 135970987 520306630 906007665 187330594 440709717 721127317 440394102 826664225 4662581 913414426 385268550 407702559 220044816 561493143 25269856 25675863 196828866 596704718 549917502 980251149 725013124 836622976 525737324 879200141 552331612 683305027 3970662 468403051 106301410 114428427 620694818 795371924 86663757 784697529 159595649 758423074 529436635 70334178 29983065 687704001 694896872 872219322 557837082 846693114 958844961 717897434 939721445 998268840 627681767 726237828 496459800 258972160 901651716 503948326 260942058 104890794 302435642 697164986 259135844 58709624 71672288 558346296 739944697 106340316 376997492 869946177 93666310 690459435 71353299 150214582 923177670 329659153 752629014 42003849 418268163 560009172 338919072 266189958 4678788 731613886 311139453 634942966 678743260 702113186 108588009 152213286 478517192 914983389 958949836 6979661 45876062 652748524 776821692 65383951 140820762 959042276 394946371 808439615 114271533 797316179 393227289 812448834 946138126 969153409 334407277 705856158 916242008 754893317 204168855 458751261 768867827 290187091 258752635 242958335 489784533 372247220 764298357 476276237 519396310 990972414 530516460 960902182 507277920 839956964 467904402 713105287 3424327 437604044 884604062 207646704 10669390 957483513 297211613 173351020 279529354 607492830 542426719 864777388 239645249 696285258 145410606 646489227 557203379 24454411 198187012 289871228 606898514 844077254 418646478 766483785 551497507 868271549 858429777 238518051 99036131 605975094 439085943 12335283 726651888 67861280 40306458 247912908 687591714 844674428 724585452 29439533 25523248 996568731 815139329 310498967 843682456 841111258 411409059 718177077 842427898 36783309 944649452 149290102 645029436 679950487 783070341 968464310 962963544 489763820 167966362 291274691 116174388 417306467 470962414 910144932 508154589 422722322 977061937 712957585 170569243 958763169 375019722 212281341 146564879 107746765 392594253 68766206 608049996 501462883 400094061 537142108 614480681 485704263 869609364 619228809 478310952 170079385 700081940 599297054 382875215 910458486 496721256 837034412 887793316 60026420 884967954 103806276 391033774 732253921 586697639 798668907 40654934 283703503 817303818 180778200 259441341 819205762 357312280 695819563 23602675 742920964 768925029 429897409 431992908 353890190 541328295 695487550 251734052 307912774 32333602 515189550 828100226 553647655 274858478 235162995 372146445 967580998 930549918 396494659 386375509 715804506 606738358 59153084 697771916 57344842 817968171 499818852 186119589 421376581 254823680 847649148 812781602 626348259 454904558 297767932 192891178 234893644 731944723 325883529 723696912 369573429 840001231 181852376 551365294 285868685 420713109 58414637 506209837 547304706 406520288 580711374 779139862 412971537 75872088 271640089 603786033 340898623 136964818 40849916 476211675 895548668 202862845 147071326 135414010 179361365 809889782 395117154 725891004 80764066 386570765 15526030 500235064 79464170 503553595 459846091 860207172 945036118 317516438 287352773 830309445 803057521 383765852 33913618 623692586 513577882 706760816 359039693 324680457 313514063 647838537 54811166 548449723 5912015 808931487 414468303 872576489 822405041 77842469 618237130 715149361 384486008 601839508 209715086 769697488 825552937 296950331 584941546 232285421 891603347 187885406 894413444 550394689 356168111 838131761 18633842 277987241 262143191 821422009 797194018 880403616 605465878 644466343 610849398 234255618 739456161 543294888 347681962 815497109 472960238 50910074 345237536 939280343 676079823 305942245 836206309 740348395 13349828 906493298 719787566 928956184 520779748 222495697 178893321 451404349 557171385 616980837 985559688 735425209 95710715 211949797 172505579 757769242 94586926 48272408 350958842 548529741 267704959 697219170 310229122 684109173 204651386 462820419 77770761 397512532 490761824 468896598 986591468 217952097 95972862 570537371 573255921 329346070 294199636 625321625 200055548 93949016 927789430 889611906 370655175 726320488 786719410 292123875 194519391 911288645 906961770 835459888 43252745 210163952 363555284 248412436 219732635 278132634 963021554 788394693 335040577 255257323 383618958 892655411 743350835 211764528 504551668 682071778 442343680 114635506 960580442 833139914 85196857 623081521 756196148 362736548 89459553 334323237 199579118 734113993 685040427 805269165 786863884 364827256 601596509 884855926 254560310 61451177 321192540 60535241 663776848 778058772 201328075 202661488 349555628 272601352 686127412 480941604 692283224 721483675 843225996 17342607 540448760 910889109 280222878 998451750 194941981 635922949 806070656 523514004 448367016 690411173 427373700 920383510 813887689 547253258 347626550 115031542 471894014 763027092 161056045 569056886 968961468 122432893 944499188 393158496 226046782 27032682 572223851 200710050 702364008 637226708 952514572 180652905 464681115 761115551 806809405 107761645 281047355 599089562 761193693 699923 218181193 263690203 299399619 994558065 542699539 41680998 583427959 282604925 287733223 708553678 431668748 581799991 908105091 285868378 99508826 954330686 478416947 566145923 45926588 873213715 863472536 829796518 412201016 255103191 218324013 968688287 913117728 4479816 568299256 752517113 157115733 425386723 38978297 492732001 814369916 600243971 866058795 81375780 319580380 329319194 662971280 98017780 752890258 269135826 587869380 959068364 441893518 199756482 455166349 52990968 30067621 728568271 223430146 699707197 670620522 146263928 76949751 893909791 52127211 152563720 515646111 447908520 231546479 169755385 767238696 660104174 225431184 16295774 217684676 756786065 390303154 258607504 678810011 362738909 397308582 122757843 618801374 1587935 169613678 742446533 785731861 429298892 696078475 206664796 874446833 351695757 207147025 906183575 547965698 211414099 125477839 922589759 523681435 270869532 221665125 229952249 811126028 990145105 574515172 325426832 176106187 519472769 404155173 740426254 776384248 761389380 515021903 644312294 648824605 187504187 91776695 705487046 90634834 298371229 253080580 396040454 238990183 426888665 865619708 261695798 17424586 662347497 386427507 152687905 820710692 545441190 275042032 21623139 930468754 475936848 540953403 598813594 943966530 693606479 962736721 359574199 449479964 60741101 373832964 225026550 861951495 947837558 87392152 951278399 873815943 50454467 757004475 935251971 487627889 301023425 851289277 82486234 157105664 831918111 461106032 536794953 926252586 671937227 880220069 309381200 474768247 215839480 400600965 555891130 594431572 745117593 255476348 794103492 626097996 134414048 552377734 240165666 76086380 381225668 618166699 41156502 868473738 917770694 836642608 626569932 195104547 695932334 504766345 302912334 202244847 790380391 263611253 151807932 710721583 196801481 370782902 921862442 572902598 837170944 180562904 649931466 148969263 859897408 961802080 574608647 375819263 949430455 74521058 22402693 34784080 783366616 740305344 849428687 594436743 148391767 47578465 842091851 937849618 170686671 151243252 118225665 206273485 236124147 419707943 286699355 563809596 627515552 445025306 973767012 46795679 873357586 360653505 944230777 637735916 694462037 710532202 236906488 656504697 732870703 618409228 638692839 757027541 375823713 707764949 444239764 12594997 283377028 990367606 150125088 772234427 449330480 220670237 252180985 750742167 676632729 509755206 150280843 629349579 391619443 693866693 890262367 850967351 621308581 8065999 250719459 755946207 940951054 244851530 792731822 777274108 16819279 214272425 348918202 902876565 33977676 371373475 268748624 791009200 500368439 201507977 275164947 708085428 749432841 384873729 609092728 386574323 791246095 308469605 271189742 148509854 340424412 309911473 108987134 387162917 287463761 422253437 624204884 244551737 427066214 470316580 409446470 518476793 224354691 244897933 799148932 471375233 882162267 202336318 249588934 294800359 25591217 790841012 879346649 669341903 811871239 439465052 802233289 617863521 437412629 561888780 621524157 77710851 951564909 965509373 131658795 883854757 44526488 976298054 973146305 45367040 32311281 541670194 151525487 723291647 370429200 835061719 308231519 913817645 166688656 375987657 363979592 307713927 591082188 289843153 507481634 620615249 703843820 136122908 539898387 691187082 956749292 9324065 532637685 204609755 506043480 408727967 815483121 498771663 747899292 90363973 358897218 416061339 647057636 887172984 549213425 257995939 942836568 321266798 555216729 346291343 861139664 864792738 35432325 744946071 901783515 248997310 279846128 190043678 242135437 76508216 586578568 902914902 33510117 626964570 283567474 927298798 917468934 7352883 347440389 837074970 204183427 147808229 593297228 510726918 312078144 569083473 176693832 915574268 584265950 815788997 906552478 797640846 672198972 535106008 729449493 219973845 578269490 220476657 829590305 640810453 633999453 223123994 180325166 455680409 698970453 182212115 384135069 658236307 468766391 467165667 720109396 60503303 395173243 963900660 939584103 477690388 220619943 826668390 710667267 256074020 54348675 747719561 988888290 619246587 93407319 195724102 481797159 612430291 830224286 521560254 148659169 680379227 613261608 218721881 524507324 15985982 980368568 134050742 566975189 880334414 359121667 61950987 34438022 320506985 452529129 493542502 256091995 758177094 434066473 809819995 578606315 5006610 373771293 99088891 632249320 298668308 640127957 537145879 959738440 983510055 392046060 317033762 160046500 189520377 52805951 896060273 504385388 30510531 737339070 549601964 819438676 297549798 455029527 66346607 453656787 45931108 399675267 645831267 668003821 734504247 448487298 838383325 930803685 178110018 701496913 933104075 718756075 489534301 526160744 364925984 651890734 821363269 673935206 469606856 471918493 139353233 79087370 893203376 107103484 110723753 267566565 279089232 855236064 51969248 721656545 888538238 186236411 978520169 59045100 954261951 710456762 751701012 728342886 531242847 244618909 709580679 464619190 225171117 390428354 521287512 597718688 235464852 500267977 344354235 559710632 387709040 292803224 713437922 759017590 81043109 271608755 588182214 134220929 199337377 193735720 174220610 571261982 772860915 647988510 528928755 272940290 604851547 267951987 255418311 15313463 466046642 466619306 164191888 404375070 849436565 890278499 20182217 911081266 143224326 842781012 212094373 362793592 911718816 310714444 378166860 485046144 86341629 965229758 176445733 227386032 292081650 587650325 448191076 131545490 671254033 69342877 93192877 190329311 950597118 904867132 787975291 780940561 500173065 259243594 514344692 761682978 407997539 473457784 920233146 140365171 745724097 357320555 717171813 867161537 624402657 350982890 133645815 961596893 862040833 891554925 844198793 843556547 387009295 743024811 620115854 137395288 740821223 174407714 168651822 548780999 481344806 87580276 849353261 918378193 227534275 155188034 529185586 997830429 858629652 680114923 698858577 347880850 608534135 840001223 298692870 324012551 229648682 57026962 102738284 848076538 547213407 384515513 98728338 75080336 301313754 706982233 904838708 490241146 890614860 891238743 732719300 105119945 147912292 378118361 381792415 863535383 733991085 162367528 565230364 152528589 896386151 466587640 511924730 954891227 568182754 452846199 54606219 975170962 646712638 269926382 41582598 586678124 265220667 166707250 732683700 200687707 329329241 673037164 11927797 570480330 911935275 72784122 18458344 566998612 812406634 958246915 884092381 6277936 650955504 889272349 731636100 588462373 92333043 306977399 754580766 70175594 672538917 820047185 848644609 742337387 478420226 957412407 398331423 230901107 128871281 792633608 158914821 15825369 740885508 759670812 962536736 339934585 93688253 739308186 530168637 495983999 505292825 872652335 116726546 617699874 524849892 480823580 661554433 709994982 830390339 148237671 289629498 771120100 229985971 151195046 545046969 747210470 945818553 553687790 25672091 732071899 625976216 912708509 156009199 963279028 93175858 298866241 213865246 257861948 576692575 934058529 522091538 252326355 279111815 564250372 578552465 33153460 166130929 434338369 201507280 339564787 336791605 571184811 702077730 30279408 543652718 667368331 217862421 317983981 85051819 22560897 183462154 574570515 975658082 380883383 398421504 534783493 613421493 454770468 545736633 333170379 618366622 56062754 33972139 776808885 712108381 952634498 241983554 614936314 359915345 632999756 425047307 669456547 630385110 62502219 94723969 981667296 148948084 251827463 999117625 921216133 916225525 636833831 201283937 461248152 10507261 138989801 725189510 721609318 169509638 241641067 432366247 347784044 469338367 550380609 473422719 278403990 604729124 655914335 838521004 370730198 580866782 154814373 927116505 940085231 101166667 540311039 989754263 55554017 93636401 385538680 780007902 573962446 592515669 430005148 237730379 289296917 411219734 226387424 781592953 150574154 876334805 958226516 88650054 727615192 119673532 182634270 120980128 390225554 516477158 201964178 649608192 176911868 294185487 226356152 443858492 497629121 191255998 410919438 944229765 251051704 13043402 303824285 941471070 574003804 604301733 715074861 978091813 455770119 981968978 930452060 795428345 693373068 239099010 999667927 463747972 604032836 16084130 530150661 542942934 578584624 193395660 298519320 20252294 4954044 269608939 83249674 679591183 266360780 446991368 29646438 312814811 880426409 537891944 747340942 524727186 851084004 710295081 772455417 291053254 329695705 313942491 335043788 136519192 113073282 831909775 271749916 976212438 716779896 505787929 314051223 252935723 58203826 186543430 177206329 676604510 882567964 248664596 458424387 330203759 813690105 415165514 676372993 237021895 516934284 366660098 315045689 992250509 286435394 98767218 977668753 762306112 981765767 34667504 808039730 214423398 309961646 743701881 918752921 127342287 257588393 654121743 40959132 221215408 800849023 787418104 246835314 450245940 180398173 353658705 34924949 663651847 318152012 91655180 806938637 694489111 559681263 347366561 874587000 754425211 440054658 616382429 31581206 224722738 37111996 825660371 412878067 513881248 119525887 98051046 113064616 529452148 519561000 371594319 767470212 160694210 193576318 302943335 340959734 694949580 603625651 636178814 16219140 747150575 424617608 2758486 708601644 717840797 680351084 587497089 827102019 835470600 254713149 944761 328882886 910710729 235857045 702564761 337826047 183178371 702303807 793556368 628682797 68024670 570678387 508844395 634550579 265310690 646569163 79600342 904273803 708572306 517920434 161726669 830497863 937372453 663192591 529642848 289717018 165907368 982851614 938521091 79948299 589400489 440790842 966919970 995068467 753285277 964102003 385894413 854970420 983459245 438237889 356721046 346093710 906095989 113827976 488559639 755527885 120136421 299833114 183176432 861890151 465071836 86798210 573785820 176032 710160593 410673913 272845862 670693839 830427083 279495210 928066239 264882831 536430905 997371355 24572396 250694724 329811050 338542102 75737805 285573793 938696103 753932491 778762552 427487110 631124067 997645500 608875661 497500916 746588521 4924729 425655421 231550427 686098910 11572810 210224759 728438264 879255493 79303124 244648258 224986294 726905510 502559976 887212290 653481005 298163185 908183123 992185787 712831797 870281599 927842313 956036018 13259279 58559732 763760861 770779275 715034120 151966224 323888497 857048222 283333710 975730731 612088924 518596157 253606256 841292290 577467110 751363172 182258094 337297795 491578097 87566981 497044113 451536784 744380087 33590634 321480470 277229966 46757576 142221554 633941584 825809969 560261489 366093810 715489748 582501469 480956552 864881943 298530440 303770480 185493036 904825944 328022502 123141754 258240989 27946818 576348973 868420914 815552059 592072051 523891160 980929192 406131205 501681296 670274319 582648605 914787725 268646507 195781511 456458126 779102781 42791544 620736463 842212363 505113316 704840326 446832823 851306598 999595299 925706047 889950208 955974736 398958229 613782362 600462302 84568291 688660565 752397890 452800866 262493521 849434312 562958333 753807596 393710368 291087928 417288861 299448939 271255485 382341410 42007208 999068039 786067505 509877794 665070676 510047878 315670241 279259130 92452914 259226723 506065336 218492001 602704113 50337294 559311942 581310320 89416938 32072120 936344302 809578727 589803097 167936407 709045979 426314189 307445785 208411732 358047228 534185676 246989265 329178913 447331231 500332169 789247352 929197083 74275342 614217723 907627394 806249095 732615361 589962078 881588635 265611807 402946812 802246643 945560025 336925735 317729466 647509669 412920294 785948533 158940861 28234162 653023933 666304497 556831699 32472347 412688171 855159981 915105317 909678905 829055203 784325780 743942255 411765971 627559898 559134246 551249824 40067375 926001140 505920882 333484681 990989640 817569198 288401619 160171406 618496876 566419177 116237496 98833926 376308213 841040704 355421052 475661616 485086490 576171548 615264582 253822154 761021602 313205898 112411657 495561261 508363906 513518564 744181557 922015327 638641737 618289361 777553764 481502110 58975764 859087710 724373250 287395874 167204130 392847215 705891782 602563704 176573886 25964839 980535202 148526808 398910903 379025445 108511495 909721551 743422147 537794313 620286993 499544552 447614564 654616620 511326189 650796774 531754493 399138088 183878034 337536871 757805427 363839233 137155959 99693372 208897163 543417884 532353642 542965120 31685914 286478183 155476931 803646599 360497235 680853343 411847338 443939273 829369067 156248915 811593576 50814564 741283861 613533260 985910358 469508457 393952222 463835893 260660498 446254227 804316845 523498648 8852013 293563713 326502542 870377898 259773720 405754798 580676816 499649395 408129195 249722745 947698371 541623993 841921400 782476553 777085819 414612994 973136881 682535368 394320056 867327891 720904561 289783253 203459664 382868607 953894685 838923421 476677812 295692052 562917194 228089561 799029585 467216771 841173819 160870913 904011485 996549986 926101401 80400865 13216000 352907797 861247400 500032297 980308314 667089403 407238002 26537129 879550981 707644100 701885973 210555785 60440423 404672907 60277275 708828022 147635497 235311713 510443075 121533017 330224884 183453527 880363654 728463646 821124055 921657723 251660694 28597752 343212127 776704159 378198003 490329240 460934518 993329692 157861685 702997761 577600435 67778633 740686609 213106089 931516442 600939856 813104578 996394009 621077769 889032909 398371168 307287836 902440721 863694762 725629821 585393232 84397582 286468027 811713929 707931061 784729809 919752131 108776428 953572386 900535987 564746989 816877365 916693357 328986855 419057639 183840908 966993679 572179720 226177929 484919951 108896922 165349289 223389263 715532948 140084254 330780766 189257763 97125845 824856923 995555071 773320418 862509794 4703360 550419446 731975447 225266072 963622718 163171674 105715482 357641454 772640045 356631350 171757258 633510408 46089562 763478423 724677386 858511304 441860062 370806621 645385516 411552897 201503801 552711728 940897491 761479115 874730637 715225217 67670887 247156027 978955577 569270446 568363232 710565829 224790702 689932603 803619795 154377009 938786687 581718577 153877804 1953953 116795378 770817156 76190941 428409372 132432440 801440992 132205135 354735473 9094204 18087647 895652503 596795455 829289051 293528345 525701168 58649669 748702689 766551750 985337005 870001977 73660256 579969619 258717456 680968786 249250309 814565131 584433199 44849073 769859785 784360922 558487912 78537905 531272280 308978702 726716202 889744990 769258519 383528495 42012891 438293797 354037225 497536483 495290604 708997889 962604906 262999545 241638590 346900501 196718867 661410986 356171055 623337795 538554178 503148861 612943505 324047794 206109001 819403363 380350386 569614453 782834350 184391786 511901044 7980814 616604658 791385698 424055103 17166219 591924578 490763714 797148139 920047935 186058990 669409415 744781074 695578402 744921082 691115459 457668495 259930569 850242715 672528280 54492155 387838454 234229738 944905551 364458645 977979761 939031266 114678861 501104847 377709068 739701217 922756755 91072242 894822746 179535096 542226525 101494282 213850810 286560600 226882667 779424368 938144901 118884430 176484436 852882006 748946464 702367167 49809549 488117996 899417964 694381383 566558399 462597448 120984821 787874137 806391853 84218305 988497089 661612524 362656369 793792432 398228471 65196682 457265923 111059916 246834597 696579772 345946046 266862482 150126222 961396947 452546057 456724123 639646585 885090756 451523171 158264891 87049670 363668095 353686688 199006282 703246466 533133871 1267996 465528658 163616854 893183154 306162192 650781832 140402289 100460461 968206570 357527334 703026345 212654508 184720584 491617235 504143724 587560090 600926229 837006367 901358072 767468027 753932491 145287900 631965093 509918080 293171395 485052330 184652018 576070602 79716926 321800386 118663198 888669732 185320817 494969025 677212827 411930583 7605718 961143136 289096689 563185626 297364533 280388662 160335119 376457914 570247927 827467677 434912508 469621196 548196786 443831363 176939927 669159627 124420745 140476862 316811505 312758991 31868816 436370687 50588282 116203953 944013200 752037246 10820332 999468958 999961051 212674957 92195143 849742677 64788309 895960362 347626228 144723438 297202268 651234326 894409837 52439703 16197452 64721566 665516884 12342243 588958247 8263273 289101204 312210266 160136122 664931214 758270220 822471411 34998061 697115922 497654041 280268452 134347269 253551713 934061854 693170405 706141958 781898575 399757017 404723327 652484960 531016512 406698110 110227087 791489515 813059484 883089670 827740648 949297421 288038535 640425717 11526581 803238098 578407107 943428946 649690126 260606441 403735019 540185908 554097551 881134474 108139935 856002481 948760533 528186633 819995527 159856131 688789979 873545751 60199582 59657080 718388506 601870899 553076541 438653396 548529539 921213069 506435432 165480509 841167030 393133899 586155138 876925809 679107965 407780005 607458150 144020546 433275080 455585309 628432661 912723254 627975843 5422022 962653498 844279503 188590217 515578157 555024494 769779983 389124426 336836268 457659958 27536587 354098137 617936847 946974674 68650457 827836752 604460264 483877411 276073224 757921448 945013936 14803889 900062613 75652616 328608396 865707958 423390511 570067077 657285213 426111455 773286852 118920632 556739779 878630989 252214708 380112888 807902005 926509821 149821060 542458901 416155812 188521541 234385972 502401863 593549671 138348119 559408103 750753306 686592530 790611601 687339242 665591576 2718859 19318473 180731841 929761133 43047410 547888713 566702612 372532550 181497540 991148761 496969995 581321400 273989964 366892916 486940074 503965099 205782334 214334692 965024106 723930598 249639779 631772182 298111506 292516128 603331101 583018744 43635768 64009792 215499155 617892544 677755703 210093162 127126029 985769186 340254691 975859102 142430635 290214924 402614501 75473868 812606314 452075010 287575972 776242946 476993711 947653818 80537988 23328805 375749141 926385632 193976712 44742932 719510815 802620397 758349092 305854050 844405543 829122992 12285764 452816456 756182747 54520996 743337946 176125365 57499556 454520060 643798068 98665083 768787725 320009957 453325428 142900416 779143246 608249252 824153300 380088069 75169106 951749909 486646658 488517327 306916489 989927930 369682370 667821533 173827404 152606550 114068836 906841350 116593226 863192844 641467770 994916696 130860656 533832249 652820209 411051563 714041258 320738705 367703802 84283185 695382467 774791461 18880359 765954438 322195739 65584131 650983670 852275231 604592640 418978674 997775537 479467262 462830146 287956547 641608711 909500713 245506090 617070585 332539127 932734242 381289408 478724300 441233394 356435217 622137985 129478851 977827782 417617982 31935242 287644175 905018496 832086748 4311844 538194496 235654003 754780390 589278664 885153870 22291618 996367987 685078373 960226830 936051425 904211220 961295906 258958092 245446447 245140229 552286446 471142321 9635371 355853506 866835769 360887716 720975079 780415362 387954831 880731372 724413040 177448706 943697197 130851763 79663929 39741583 557379911 507818666 805597961 47771072 669328175 331497060 260768767 483819915 318808336 674448658 949659802 463506214 231389931 259102310 508424129 466560766 185563760 909992094 449942668 719926181 687133978 446915946 860463590 732673795 117355317 476258216 358971944 759329326 830225876 504962010 787720448 939425551 538094262 778157218 415594006 135898510 886423429 276227687 581777056 1132127 48718746 615263199 715233830 22858548 793953848 120527264 105995502 854187526 983185608 629327106 710901514 808457444 55243249 795271701 419755113 421297080 193835868 22321274 562648553 248985628 893871584 432257934 38928218 222482994 459219567 658743153 383544348 103045782 1308241 747023420 939790651 973595297 828375269 122263871 721026600 511519176 410442760 840602764 528935930 272378988 434138144 931411818 138684881 761669600 4801634 448061190 504545781 168686 265148251 872147363 140697799 750624238 498786401 603224321 801439285 585905558 829503443 627631154 82446819 23662609 519524780 554748787 135673491 64720107 841029807 523324484 930852394 560925344 343533600 679389688 457307834 884549751 189325889 691682466 961557399 634127004 957404668 234961884 225506587 831694525 390209332 400346804 510555365 776789860 388982403 39457627 547845553 223930651 125519189 49422637 291192341 616974935 96501150 133397513 292938257 907865601 92593279 779483562 140629073 877375927 910872643 505944620 409919017 818066571 917935850 492614853 550275262 380851245 106609563 587262990 992784043 337472332 739131799 331803592 960742871 319057766 62113206 657301988 633814871 655567973 550036938 756390746 801595452 637681219 836765923 227838234 46085701 914151085 352076960 516252751 663412254 231473662 422238347 172380464 136911513 250505742 1396395 773134943 682932381 487645593 992356164 509301506 31199100 901642720 105057437 704323432 799648741 922992986 239633996 710280326 534961982 594133953 667706985 561924814 250802552 925156055 982156038 141784162 488394370 405644508 671559535 848264751 281867999 40229957 724665914 956753388 429738796 124751504 234492156 322510667 133512052 184962747 637064924 331179905 277139528 958605743 335438482 119688714 779278819 49132071 110353940 148068732 788753550 800278612 754103169 115433707 2034979 745441399 403253677 747795246 587023421 298799015 617315240 230296439 396926574 222060259 710115706 15845022 783029379 13659603 100904795 758007446 781677273 469647610 905930928 56951460 904561386 963774782 126556833 697966335 593164619 826202882 202892202 547492551 261104790 165622793 982235074 242023340 702080391 345325088 806254720 107584574 329135574 780673686 277325472 167548600 430071736 735761020 974182911 955066748 605049239 645339253 191245852 667345897 715038977 377185511 565372138 303425389 690698196 347512265 471417638 611631604 185447703 375573313 771392236 795507874 358510693 997504236 954334053 987488172 944479658 578562761 716784085 822118583 131646297 367812457 829470438 769961820 833218922 717503534 580408285 612658558 472325931 75095083 331665277 353099606 401577571 756872532 60575078 405135623 818723495 241503894 945206498 209688468 503074049 980684568 632345571 737424253 530458913 914332002 741208111 492048598 496135169 161709132 238768930 147981828 714567276 699395335 421064013 715158153 353786010 450181586 267575952 794724696 210164362 125807813 329381509 339903186 693245591 218700785 45862649 529951074 856868157 926246777 580043489 319137138 458717383 668320125 484393575 881738633 472445737 945497985 295623655 244594031 985308729 217796482 796509387 340252199 929536381 961574663 356004890 819592638 642286026 710663125 857446773 764724529 263402610 212733623 895200670 707386506 153459136 952919461 109995970 555094738 306986555 392601 601407384 310003454 438847145 104809932 377052703 729463295 843744237 330384454 98903373 801995338 576365473 164793595 921135160 258062058 421779140 455704089 228904446 719326413 965053970 353131332 692718272 510968385 19106626 781150228 781170935 516268103 654490876 200242989 620838378 437527539 493985680 236201998 25412141 901098332 184792930 528447306 793005655 735211664 146137378 107413733 583852532 64410425 717041950 404804759 948380884 46320786 497725732 14489152 287993395 854500768 668315806 750873857 886600403 541850884 888484472 506743568 823127563 5543843 685143009 113220424 972683947 584662742 617119435 54953950 153922023 741671913 347894142 864218967 159609580 555665060 222403349 309585395 387035083 482665255 704855794 890342368 867147799 299307862 211935403 967266414 629474554 857012269 565637002 457652757 960146954 86168420 799141710 85964639 216791221 627760102 715425829 484199431 348713274 187778467 999617167 382697403 97500624 397051781 550101486 503102913 672938251 705863594 898095831 929443882 519816063 782144145 408153187 878313602 109125439 535365568 119971507 189867374 216154309 238943016 376070604 381159007 326694972 168429074 431213172 730121133 873225693 68012103 611094776 6373211 23264853 367899403 602353855 513530985 908737183 965249906 538715681 727379449 305831416 731019548 481828870 701476228 884019069 969816206 452464067 550465328 218983630 518772074 136669478 559373611 767568350 115949182 447468348 523034914 290885017 260011504 446530085 434982694 634387491 475885431 525325790 117746973 88106727 714924350 987678237 14432514 65560870 669863016 868760147 124428101 706460453 975509705 801205489 845938554 485953209 842999450 871753746 280129358 260626003 881180550 789720618 199438642 273474904 313197945 889101845 451247935 473457400 160445522 546326618 26551650 769388919 82034748 805146715 327036099 70911907 221005648 768616087 890803821 485801170 764165441 578538257 403118004 137871722 224512199 772690134 59279631 490266159 687511941 898821240 911374718 757679230 899873563 218884339 332886292 899854843 493090282 358304660 697580633 944815724 72951454 76216910 259793329 972307283 4685455 705235495 58796679 711312158 5441548 731601605 735702452 247461668 163447778 568359074 633033511 668676353 198168605 464329231 503518398 632867324 127971999 968719943 238987082 263274303 746301472 358296598 415731875 822577573 659409784 902366820 230041542 970658721 763320552 81958039 458952285 424798213 940556706 882659186 228472794 719150711 456100567 376811710 676328371 639130821 258212749 361034099 550833113 825663527 402163638 6140118 445986865 654070190 545262315 526740823 279867686 737018140 273798437 264981957 763865369 287527147 853248598 546782746 629586292 325609023 546349813 739486072 983654745 756421624 39620538 693591387 211969758 35414520 154574099 742817597 528089158 678580325 731097334 580534876 614298953 231451625 883296102 470648724 429281965 259259999 568341166 348781186 283253235 459165738 557266170 80616225 469623013 913121771 49703619 617032974 419207967 583975270 356944127 332773575 764519414 93088454 264825412 485354761 238562593 739189488 418090055 567116405 885542347 206045853 514512172 782552 413858119 791523770 445635841 360181643 523887061 939056894 219571227 478685615 737231694 763045811 265291462 880043637 213261819 569831000 660476233 845707810 449829337 957733304 849315446 740507113 852709241 251361997 263566862 455411762 800984642 565562682 931889004 955784422 913085840 176776000 596757089 576546139 167266617 987434903 600498142 170952066 151509252 865905182 216294697 314247421 488088602 834436053 110629327 68371081 93356636 982316818 377251703 593812458 473326219 941213205 502539989 845752864 61954911 989228117 892284489 388094812 185029060 957070614 662856498 271210051 274355367 933550164 184828348 98852709 138648143 825577030 635492040 274272816 123662956 46600548 28305315 120174075 602268822 875793170 657645173 703406307 533929659 421154210 881487603 643218872 284219971 934335886 579362035 761897505 130777572 498480083 848722335 300889812 821884120 603322213 873027556 912711792 508727132 845222950 209464994 175795179 506038661 459649192 842870793 181791100 492947384 138295808 59507975 978790219 805826982 928444018 489013549 349433733 867758591 791156140 432706322 881410809 101829147 498044950 513206415 439034408 562055530 376406489 868306472 70435214 226380325 34315651 474520312 286995903 885034118 168509665 163966575 585135326 507027359 479617607 318880903 587002409 824743604 74259833 32215476 32735935 814171633 412395207 745767981 548550864 519402661 444677900 78261669 237361618 383903763 536256702 83747089 11743117 691012598 140169072 822099709 346201634 667740744 772289835 349061158 895474524 974507055 272248833 24084774 101065230 414543722 818651111 763558344 202195482 436302936 399607958 878194510 281705232 425884833 456469274 815735092 186946200 420344347 653139704 779459497 984169677 644315423 310898607 832435274 696946431 240711529 885037176 493516614 476565983 550420607 103946927 553750552 631949380 309364274 800283567 746300325 264702882 398745218 199269825 912534640 789997848 545367763 1201845 82534290 452226105 995364919 631504483 271367891 243166833 410505992 471540271 157483390 622878054 108826539 306932204 261413973 174947073 942069020 924975180 752385627 99111308 691678434 563718575 68851147 904674741 189283607 870633949 852763920 381668058 766042736 383389704 508874586 76231795 674506076 371772748 339750694 313797486 259308651 89866695 878969543 462878131 648879397 570518775 359474158 965068802 281294859 394243611 749764452 265311239 290873508 950390970 678389019 128046637 316857459 990429441 675231960 825191122 981679732 147424422 796701973 745684904 374661297 728242096 747076312 745308894 629210578 285707362 757867733 194070234 739706326 642097354 803904222 567454368 213580286 961003178 765456192 290469706 378119639 10451064 270473784 185524574 933834614 269960223 166073654 315677291 847366664 191662190 788506850 8496393 416470861 921376248 575034436 228156897 183846142 730701877 157276656 843269158 59838160 288838318 850252257 77078233 329436483 241120541 438336944 488090007 399516005 639529749 854398476 537686319 285181335 806020957 506228277 317555370 676723587 600662409 429721475 310928654 482878044 99746952 561899800 458151538 903498316 802405309 657272277 933252875 691966133 707292062 834337660 397837163 184513066 855827143 118987524 167095470 154629038 124114251 521202947 665765890 850239618 260236918 978352990 991335737 736031098 332364913 579267263 683769286 578522520 900125347 183312898 309113008 968513293 632931991 627456117 582360404 167870214 117184270 578490841 232238310 333608627 417959458 930954797 91328545 50280589 423162129 583687439 132423606 840068534 646281220 562335912 792413078 173891805 110923015 948450463 611106219 455647357 831028050 956888228 661104210 937713441 201996605 1297290 872951068 377906285 373091854 525277683 775700674 190438966 243059094 549465349 759949629 107288442 209178749 694018391 668141180 38740285 117765453 113477115 706624869 774500718 33083045 564945478 468857713 350090584 335148399 617018977 638246588 697836366 82613190 459377098 765430664 67135720 176690431 405008819 991921457 284107993 691884461 404328744 398918346 725700051 736975307 264081238 351111818 578850928 873054121 355819766 491775869 902722753 758011853 828874964 651674542 607890274 285602600 646422565 632545277 771997228 459894940 92742853 419071059 678669446 220807041 482328953 296184582 172829051 450324431 990040895 163771472 313307481 828938875 42809785 252405839 401524357 162494647 998751612 690613597 489737589 206834115 760523109 459753434 954511017 753489843 824000377 181329127 126872013 591809135 669818651 106313864 921525834 163894970 647718748 369846768 719439426 274438798 817527401 284700415 706915337 609099193 926273546 232734514 32422177 429301800 478308502 73808538 259229176 229882253 303661420 30533760 37511512 937006470 705131564 871527630 90710292 523239911 912077207 536149757 795373963 135333889 436858383 328890716 183091299 735713200 103532444 308005991 360806945 239476908 46408311 369230804 963804673 559594222 335121675 574356993 607915679 925265720 143555804 753429710 170522652 447763293 706347172 278905603 439995828 655119802 24663013 832646152 743966390 489194670 38770917 456440015 384138890 500967834 776907356 551515648 235195578 358733016 364630464 788344688 997996609 450335749 980787431 711563170 241896668 820037098 522361880 695324500 83369322 101100201 750805246 13182236 992563656 48645739 814875596 77886690 197593084 678861505 407794144 858402691 701158242 735026560 346664356 928271861 232295462 890614004 421951119 371884336 136055800 375445812 594711139 118949856 192337490 126544293 179019419 150112498 951754794 373250717 449190254 980608222 440896030 273671667 469501870 498593151 795377427 528480649 696894940 131215839 864555655 938597175 18760414 975817987 16283983 41253578 583448099 538077185 97522840 332102900 28394519 554595250 904489028 307557882 678148115 853944908 663085993 10068366 224806136 874410341 486008978 790956960 475532982 668664390 651256545 981111877 383115647 779631126 300395171 699958432 9118911 817064552 723734306 533803740 953048137 983234272 511475365 990245065 635919750 845312401 587496490 58675675 40160894 156683535 843242421 517477153 716217787 419392352 65408691 127647166 609625272 104778253 733461562 242413332 113901067 776066505 134888320 768183605 863265795 514533831 938674245 616084828 504770946 353558837 285168555 879572116 60464143 112111624 840912014 943430994 902650978 23512682 784604300 842189816 410047324 488226215 283992877 870829330 381480522 460977202 396645963 44761185 720892486 628690233 114816401 63785453 592735008 788622576 530589930 461013704 561940275 704674533 974400852 828340429 525331727 811073318 780992724 428810163 785548993 620057011 422911570 71565258 61253219 245488600 80562388 448931852 254466348 102549955 565368854 413349979 299025354 176935543 750695930 940637177 48560488 683650038 630001455 112189572 133860699 458149279 638729019 620202893 392155307 114923229 145775915 748284636 561245247 735889207 334722444 511418349 622895377 736838720 799623478 380707618 3022105 515088507 949764851 186072078 11358630 321250176 329283961 677772218 247629760 120249809 424188386 106535735 579622013 936518066 149197157 87647787 750790354 900806967 619248451 134955286 134380055 527759071 60442693 446197578 702245313 141349046 772314656 549796970 467446027 621249934 419632652 703565953 587866510 287961055 828686413 104089713 964278002 386501347 49003083 813730749 916693051 875275387 333056281 213698816 759502197 434462404 750976704 415783702 471649629 397223149 310680425 208125802 78589153 754742489 247070322 342395164 271515298 19428658 458891716 399594381 328302262 790238229 182202912 810221483 538320572 720026927 493547831 95874168 248353981 833215856 776267028 178587206 707261293 789013613 646978375 411181413 126780567 162133607 631877156 195591326 123849732 227410833 664456626 5549161 66567089 341627661 410563377 930225528 101761520 157451765 743991691 427395695 684173048 86398807 284997500 759624053 343476631 250977804 723623834 303605870 793248826 266718501 119849535 855089524 561711344 778461211 239903834 85201763 900523330 865590192 688308376 287328734 709387604 649341750 926382419 763589355 175585474 960671326 550358536 677392099 999365116 730170710 846433392 688333460 260544042 302941259 229758909 197039120 265167038 250487136 533671571 7436287 725726614 239474237 346806748 578696540 897314663 940623299 443530674 369568787 31719689 40024644 371954831 673936520 595656272 747412070 319982124 899692436 364845868 175481262 234553843 780580476 464265634 108791077 172939050 995342224 326845689 907638560 355330182 8816380 913672023 190931840 818808058 991067286 1653179 500956073 516282143 854706836 415090147 918717895 591167128 90207104 298501445 923092651 382695308 174702087 447518953 214667374 877973799 935845456 582769374 809977096 594221461 789358601 266628140 386378040 126742282 229964427 807218625 60410355 723615639 409854578 590238964 911136368 833310476 33628990 720592157 927627339 396461419 875683579 660900543 557433695 173803358 316901677 155835056 850208437 754000811 163540586 141223085 15765720 985116439 236382508 291686040 939415225 769967450 11049844 251784796 115543528 853149970 621036710 21944014 218298429 972427924 815907549 487459685 837853526 348455837 373716604 50577145 854806014 477656880 440549657 607716571 421429877 351548613 368868417 595118872 30326626 620234976 467194781 538775579 265035587 847471568 523997599 204768429 817349167 582857891 684241316 720750680 974108354 880693208 819333221 392464075 963603282 275861406 235409548 216293394 974937438 500958423 310120274 657553891 900997858 968806844 788418406 864422097 189633629 999451993 520825178 727402809 614228175 670281028 759602001 441133197 703375204 791357170 208656728 608444867 224847029 469667626 624884426 539097921 695431226 369674045 482877935 366049554 249663587 284519090 848953268 853937054 838658925 816871939 236143707 448352894 763262187 178206051 629323888 214631847 251655186 957284183 584019042 743752969 602399942 483512192 173042258 863258306 633981306 770432763 27110569 151143196 346431653 371345510 406075134 906283757 857152164 830851509 636936763 74126814 375118438 137300587 874817268 289782004 389353365 184498727 447183525 401763688 850007042 98087060 603201581 203547042 614510536 185242069 874673496 501332502 765741248 762750492 94110572 271435273 93588693 642362827 665927585 418539669 158233103 809114052 871269602 787355080 583402496 53993793 941999956 319032015 403439001 403907018 382639938 687922171 128424807 457455101 117335798 736885287 64266681 831135476 300156882 928704214 71212918 817158969 97221946 679548945 809028297 169706217 162021530 743805212 43818495 37773321 523382066 376433867 871208685 276105759 550610727 524632943 454057837 876350247 929822500 935434803 224358036 734426255 776334805 181208165 359833234 869268658 923632879 275713241 869559736 382224856 990342434 30228577 955198336 245237515 557035442 731856665 305899035 509824180 267174436 190939002 490499667 645208117 363790769 603848858 646695253 92186003 539107718 464969554 412117849 23702380 153334182 762740962 869703135 257537626 195391968 482496315 110016791 550394594 637018595 898430311 116134015 458131196 440553829 479890701 500276348 88612745 189915991 367806708 744762295 222200494 355368366 908055628 545535507 310181906 868473022 699569292 537212039 566192564 722142163 504798325 502161020 514960882 355932225 632316996 717792039 463990360 141214022 34031756 877485611 958784524 744265727 115478179 551001263 821738498 151105035 982067531 833058543 755057504 248641021 496635492 916942872 457209417 443554155 314285579 869092748 140547044 654637060 775043692 763354852 567220442 712347118 950997808 808841695 31008534 808302598 398788346 496892239 157995902 833115869 330864620 432282927 578153588 670079121 464629214 270826264 818242312 87089365 386494024 753875005 248636812 225062914 940951701 577107732 683713892 937634351 362855694 408379502 457482826 575058284 823272398 291714250 240362144 246235716 243887715 902146610 526095638 897983567 303045014 351478820 369039564 647317117 374205216 865834557 975839003 163588080 895518663 346581628 327935732 442522228 331946575 467571194 579776340 865665557 824135359 85591123 930499117 550004811 849274033 367027995 962516669 220442035 655092075 732680044 653014322 450299686 808333744 856926144 83890263 453026862 698445163 370012436 997858025 910994180 758726501 684785344 312813956 77317580 713153105 471890420 79441038 309567162 668569966 841685925 712939282 894897327 721364582 589625332 402290230 719372625 494202113 577743567 849703673 595737702 427551156 937458350 97339926 971792485 895702516 301515341 465056741 361847451 62464251 43576454 923017878 139014860 58592334 44446638 230034506 72538773 879960490 977974296 576614292 102728833 226199433 425473549 835909827 103637285 65804710 642062158 577179312 541132121 786366155 115743740 536186498 246986771 881363790 614182540 520409766 604785535 487053077 934290379 465524865 843219949 913655838 996116945 48425254 302498079 279742725 896111704 404174202 192839780 320950175 561647265 905463927 189447315 212870174 619642722 598982364 877842446 818744300 454714533 138082969 845536127 722234126 974779279 872155934 417929032 587346684 381438618 926149384 867549705 361243121 521410362 960926620 943634575 123725737 69184520 462551451 772773535 399784237 912242019 663337734 275144506 136359594 338740126 909024459 235200154 872730508 91675482 436326489 611051521 220342282 605552957 867580610 453709610 620702382 60331031 190869333 62874468 480147318 641517237 449987332 69968660 195472932 174290734 413301859 417039324 355136148 790568766 346816592 681517390 847346480 828109385 226828740 595679341 186443903 220512092 314796740 938010641 692744904 597889083 982772804 542757156 837151792 999678489 925686585 369871168 298360423 538631086 1526548 547954341 522085910 435279902 231019141 582899357 624071005 537542789 27073774 148527580 264815008 237765442 826801564 602360537 901606650 242929766 92259246 95778908 83227894 573829455 644860583 56390821 137851841 14623425 59391594 224779441 146516645 903589687 7826318 735533371 504434042 221739312 838125792 94267231 448756945 878350096 454576737 545476703 977652392 984954560 920397755 949972775 461111696 771566320 78022983 541157893 29962714 906277371 306541117 648079386 600241912 574187603 260205267 834398730 128248293 401076032 731398852 413654398 854138368 962926275 793601454 307429841 938075672 53070325 738820603 129340209 818056348 656771325 881955882 588351783 902821767 641695026 4882513 601663597 708889950 558223668 640083408 493693518 306642277 474087310 197993228 179803815 719348037 937320384 794995399 546427730 878548058 274914240 265843213 273047829 733676060 376498904 2559779 649225595 425891355 387855910 878637050 288380151 436533198 837199478 892865976 420749361 367765959 663611835 115553327 72274488 549112648 281454249 675124288 111253460 810615398 152805776 212027697 505078295 933288992 111293054 229553202 759320544 720111194 689929788 753314965 380511887 447559634 860273647 909376679 351314618 221732460 628461388 452310643 189483539 28266781 1311554 508740613 508088690 592480328 302035819 849415837 639133879 5054227 71940839 474410651 667713956 206919113 446409412 986481728 401876421 494881689 613574046 445225453 724991528 334726886 916293595 857945392 461541400 191528836 579086851 354831998 885355852 771239574 724495428 183401807 730760521 754820820 983694733 443806294 359951234 52911261 746868713 528522497 238507086 769152954 143982068 9903325 943498089 29006813 425129380 814096411 505919192 353804010 858229015 549244894 698415958 28486430 701486474 943697343 939799414 162044807 649401769 228704900 408240627 7603142 447478697 101958402 763616212 348095070 730903202 445966664 717527235 377343709 823705901 969504547 543669200 903288093 115748774 715673409 669559081 420095644 257646687 170138602 945432386 359444742 934954989 705339391 837954210 660601072 14908616 882536744 882071717 465979985 762693836 735375756 908576950 5643169 154241159 586411962 533945010 48932413 948573238 817307505 398546549 923092461 664926837 602612169 156738320 523203512 152342978 311218399 919493206 62089149 465321468 467710573 815253783 549644308 866677947 979980594 436786686 957806954 203921125 181530017 495149099 251445824 281125058 526543274 808518981 806279670 849728324 406269783 710036822 844578538 888581949 622571855 921447154 391371840 541050231 996348767 768580803 970952610 193611854 383257903 254053592 943878318 351070157 226314542 480591586 17666518 974113416 801329727 982289132 782333612 537897380 635197420 876152538 481917547 586819577 409666413 882566607 773537857 837911130 737857465 711438206 482154938 162492893 570439466 883115945 886699345 448862893 220285288 534423440 103160104 697973062 114908341 156269107 411127955 287615518 371726132 250063446 661319909 214249216 124438725 7620455 532214226 835655773 966208674 213639299 363199743 373900048 330289823 927999820 318544785 533500846 83185970 857638929 134182603 956744752 57307068 753537587 757128235 820471285 9126365 304141350 300528319 601641497 882223901 970152820 649131740 546695639 212724469 376897716 248391713 445450896 665806917 562128305 655605784 151556544 218427738 13744947 375209138 577608860 27661495 818148739 399277105 221607045 989607779 818658175 294027991 954617507 268661341 477781733 752989739 961373368 983189018 600064125 146996394 416582974 336905090 835562008 320556663 324468860 807346935 980977980 542728781 340503175 916089315 282643493 342794006 336108203 393821564 803166500 114318466 291583851 268030139 621381578 761292599 574584655 569164330 449452082 859229898 120986153 548472569 212326653 665832998 14066147 123888315 576661587 408284816 497692000 377194992 652453752 349118577 11343543 183580218 205039334 868244317 805110368 510129297 924930032 481017047 58332157 800324281 112622889 914760868 20131822 451193683 239545732 355677779 971734039 498997884 185333859 419873176 952771050 835630639 940337377 869751512 534961864 293051091 714950392 257726144 252018639 418222880 716028855 32351840 381239907 341106891 696752493 16756032 236175885 494435876 894325037 371707396 513417793 558140592 970517332 805095376 237062020 190950755 110786601 458808639 603232222 906802322 961686037 328698804 876065881 278601055 904158188 856115219 53368392 5228752 172153931 896373173 443403791 898935362 743013677 694487351 225542906 965823033 468230703 441491446 761249801 684625990 865932941 177429070 993909797 322343913 844681982 207534706 983259251 339483998 312816757 752302926 719335775 139700 326108078 414712317 297602823 366578479 936098940 960572081 233749697 184384312 450010958 81492072 204343705 8947089 231609167 670700528 224668952 564768674 901176769 3386867 831861577 954885613 238145697 188454671 500500438 916263309 679483336 939880752 492404984 252859143 720649840 169761246 365630623 190905056 478035426 898599900 819450483 851954151 344580679 441164918 291436057 742577770 977622642 645427618 948519363 412351611 149231063 730651384 356862601 724635911 61740749 769493717 116663487 248580309 363374959 171372909 295375212 269333165 921921095 481434294 610015659 394035867 46925860 928924614 563581473 374624149 786577369 513025231 904931369 749545594 707339594 381918230 846068066 358888667 652071559 657400108 983975775 241893590 103239299 265584491 646375734 596648743 829911288 64669102 372766485 635938298 766991272 984117620 385895705 935120220 358018013 180569012 215392645 848884940 910581779 229245547 715169570 355280122 871078147 650325717 895728899 183431697 836205259 471541744 24637823 437668407 141558439 999807262 335564060 828316741 564491084 500726736 306366710 939437831 105119146 434917131 413671048 596032548 538277862 354234746 108595559 622955894 555359221 659216564 362031775 141234413 491853198 237508470 703504134 199372384 41997012 858496314 847419716 488731681 756066371 49549386 467167256 967149210 139748073 266700655 740337876 122735703 743838047 654226102 323113964 858493184 612393131 496834008 339260615 958352620 715005435 483428804 154153319 745130840 656056043 419183275 426004242 775526881 458555127 766190946 740925998 278822471 19396073 461601340 383906126 654090217 354080390 947644158 533064170 284824175 704710738 224008609 220601948 548881118 600193006 868235046 438458368 424054394 985000169 119258758 585802784 244680785 738496642 859692067 671335619 598064461 596648999 438496509 436356446 156910108 137421626 281406704 254993432 719421430 345614986 822633184 38145361 722159729 858373881 360466483 974134502 770827092 258246886 642594046 943200127 330002087 877037627 418080364 936701403 662569611 774960387 866805537 281415531 86022630 139875422 386782416 384067775 262308795 171190811 748108638 37213239 169507914 920778152 922629820 295670422 398756801 795317506 48077003 658169770 859733942 574599970 922833478 584272358 863609430 839025239 506785557 23276356 165888732 904300523 21142734 453535704 925655922 263632638 14589665 945950989 370753907 607976354 837301482 916214566 59031023 778748469 657630291 120195859 506896947 940779271 464879328 185113771 954274161 687175730 370941935 249455265 97608112 298481348 322426915 71766345 308222 103450386 698493873 913836193 22906048 866214992 107508422 729137590 581225948 154766583 424170665 322505379 644781474 874747263 546673102 50588759 816005035 529677293 182101817 30304892 707384670 701211038 604877699 839868215 478390190 476090880 30288427 97566423 490689863 122943569 54568369 456303118 204941433 608027728 602939892 17203455 532111462 990123990 478233409 361751621 283428706 727128294 347472928 728183886 727339086 806805334 170152209 174877959 5987545 964026711 280002791 22632705 13639830 686287762 798209913 11958558 267033672 836785115 140492369 883460100 753585552 963627244 436524997 847234806 330102201 455338095 335191648 582266597 836695809 779877637 459203654 678078213 849758073 548189415 977416514 686337089 803464550 245430615 569576381 165123235 295560855 918881055 53628092 785478683 245609340 310279255 410349958 895002602 883752320 694999644 661081821 822469553 803971725 368147473 943217263 286696321 291386079 638060522 15931823 64424186 547611173 876776994 45257661 62768691 81551778 845319559 86207536 147377590 126287145 433970165 947735779 783265178 207665697 293273738 674290025 165016213 553811438 388796754 387107323 781506390 429141268 373011075 261247838 449996224 893602204 18057179 798778644 718257211 816005982 945136047 843580591 358571617 458491598 630172688 534042917 330852430 956658335 487267709 661110652 877475245 65942058 828402887 448926539 192204259 661434081 713430158 990528448 608482709 505804855 262855389 682886220 844921477 362045506 607438419 78643071 902008747 414270402 158405118 338167673 74928284 2644460 92058032 499278111 529988739 411873410 955699325 295296975 489691337 849907223 160634681 810911984 78823091 659363216 878991003 448381089 859015178 940881596 444075966 171164684 30783184 749763995 469484258 893126289 315008624 537782971 893269178 903845477 595803649 192269239 675188535 851136658 324934478 930084872 817554019 352078182 950642298 798937289 235772467 432424519 547242797 654607014 78618806 841620974 799679466 439676895 277005878 864110136 736440806 161412319 465321365 633760417 170305898 407520559 458952908 456845281 708985084 291577840 753048307 507732267 694343265 976216012 991717260 946239673 373332416 254069362 55932351 237253484 302459256 165321712 554480050 837614351 729954014 343413278 202556565 590416566 807933180 66125725 899489331 22394031 198313864 921935498 52742395 439970942 518979475 292710892 120882703 830885877 989452489 115855342 232912627 399370566 533183456 738011282 788536267 562170582 799704758 951206084 164262957 610220387 758481527 817600454 11089271 385945678 697112885 102284337 468826063 54704893 320863422 235323085 781096389 425164547 402471247 334354677 366053418 562045902 872496448 333329607 125155115 521566885 429001307 479813504 409582304 280809727 359375486 33049204 14140509 706284126 783676785 688652055 3735942 641022605 86249728 61906224 558319538 800657034 573415290 987968275 737790789 441447729 687324063 552272441 962854329 466467851 224958768 924054103 387594203 984573215 355832014 231059025 313188528 127842322 915630435 670411550 417171400 32367292 822405640 684908328 387794410 127098345 117645773 951418518 257337967 347157505 59178284 786756422 416062265 870852261 211687871 667994259 141926535 506601322 256481944 950523760 773679415 835246969 464822982 249812238 283417871 724423633 394632433 27715811 965188942 217286078 157021261 94143947 263231961 485494845 839714755 729345509 465118518 388752138 8455229 352585972 552704346 653030766 212485136 472667817 955042117 379792786 991174788 361414570 838799097 737059835 831376781 453304741 954473211 339581165 507451681 809854201 997651219 247988445 626009802 215295991 288520954 878159905 444393738 856678567 890112407 272831411 999133911 690450619 134375128 235164722 883511673 850176561 917223655 665726020 804354064 172953848 843785296 347509702 17888957 5683153 893270502 38591986 505609382 181129506 61503282 168420167 222592609 804917127 346009011 124870653 927607199 567994042 221825135 420286034 443783956 123396496 464756520 734570961 719140567 416720139 947048804 640181303 552531861 630988797 691759932 373451304 802280899 533486696 24071023 766005528 156326489 534791822 463335167 328387701 652752235 10626643 785875346 350369786 451727931 98189887 191325326 841531139 139041341 634363985 661945622 219044581 327215933 993945850 860239055 201570179 997197888 649654279 791235546 696229504 67493772 994933414 81754209 774381065 268348704 28244377 653934916 994539899 344677774 935923374 26432009 497903479 654046242 360410753 14476440 387459398 471414669 206008701 772086633 798366563 695326259 940084291 123867350 285258444 152281414 7317376 673540687 436844785 273107779 87373424 541726747 42987973 605815285 779412709 447779082 685506341 336724782 979323367 264579460 489133659 140884421 465718152 572698585 911125612 585919247 518724098 377666672 267240658 435629082 910003372 77637739 509618096 355018906 815714710 509033321 225374853 762440428 220516402 923020417 377161165 824797625 915980863 8951447 820639644 261758053 119676939 277127601 782083848 35781232 126566306 950772604 208603737 773728870 199414482 426636069 662445278 715087224 844299130 175615825 722766290 906108329 984954655 867353809 781396924 472677943 174129555 657529657 900825797 270710199 59267930 184687416 100471942 563779681 401088537 557503284 392801712 349678397 378845644 688641579 630479143 826664008 226732289 967863395 263359476 709092111 462650920 8772990 665433424 457498149 779224657 617997388 660317527 813022948 812770636 791475535 687083472 931068024 522609476 571262895 8291099 962327718 934914048 753225493 990687557 607811043 740684625 362967132 696803689 871974203 470902881 559253489 302296792 304158255 335562235 348994214 373775542 970699635 424165197 57511603 586726090 94347173 84385133 388653917 604847708 271669267 911691365 517482682 427058704 532208222 156338157 280817160 80029612 771703602 945308680 201454235 271533140 67153243 988667165 607286115 94835849 5147618 942042521 764732875 227954885 893899151 311766711 862802521 223344748 552780966 166105651 698379037 772290466 241210846 378380745 300921232 943975006 759062251 608642340 284949847 38419032 454167531 579856645 750600779 133862638 719930784 34525169 469536783 544268480 310842472 862713074 969185131 972711656 988450760 662065730 247754831 178214151 987364208 900450428 444126414 395433645 317719159 408107020 100261381 158494935 707946571 9519883 689312826 975679138 531133084 781691645 921249982 856926109 163104203 676662269 552154819 363919180 764251096 138088665 576424208 110509435 232503278 4701785 449120473 104626583 259175104 951659195 837328005 998169331 625201235 438320846 496153512 226379722 38878530 642791742 912607531 189999291 507575013 370962496 363846974 903760041 85156785 566878104 141484019 728175006 849176476 359993796 82375981 170001366 250770628 318485802 54492699 851956197 623690986 597947249 399237394 834221525 262039872 507006253 104364863 228449915 551376511 98526677 152042709 641401633 356926299 455134101 52480978 569199638 802945999 115964848 691676972 553486852 227427127 938530450 175158101 15481685 927131278 267660606 843687804 832868834 914812153 504860971 519401788 459789437 515596030 544956964 592549306 378485413 564865721 10414281 172359342 576885886 908954332 222037861 652809475 986879579 668540343 683789226 562091483 983946881 619999853 297444329 858037379 209558809 843137472 592416924 680030956 740848971 120341565 585099193 571345007 79188372 844666113 751375961 40649742 224316312 158908844 135984860 969440716 107862116 635703048 975506214 623551371 584365585 479913129 211694428 876659876 467516951 753747296 131040877 195015213 613803178 131398639 224968082 229103961 633819473 19774661 272637194 654427843 518263998 626272314 565187446 791600061 887505817 711544293 554885554 531011556 956822209 972612865 698701492 288210169 702591276 135468206 770888231 420215344 686435856 944991338 69778354 903032752 946120725 220583517 843671158 211248558 826101912 430820836 335854615 858243067 955198129 240630461 639992808 747668451 447267757 261385902 854849165 550203975 204309114 785692131 70785940 645926347 780097685 475024698 304587276 83989900 206866260 39582901 172875324 270500713 376436913 961256992 98710811 646061568 613058784 848899199 689138932 601917079 515716614 701594048 120175694 391281454 297181736 414478089 532180524 892189504 538349404 209631141 656748438 542226812 543375556 604352190 470021820 849628862 662870486 154818267 850499303 290038513 212309252 508137606 481724391 672043196 61090542 790131701 738157880 211026333 366593629 536910479 341035543 830505912 501815335 462540707 266358966 508299467 790822475 602287444 343841820 612523792 365727967 463752564 721466046 5527721 711753008 336973797 835488529 105962637 394117510 576561940 316667548 194450404 225564068 10808385 170281898 103801779 488871510 509947200 261078647 440538196 605570337 662196941 142077046 569299053 719471831 351081409 789612762 731769722 6942947 413000024 210215999 61351138 249934428 24502653 627796661 711055721 808366734 154542419 554145739 337186975 147062170 319704363 19992426 672375080 437241773 12262529 670801293 559373211 545823143 935916591 780737925 498666983 593356693 447684287 305613049 102921615 729243113 69885096 280448941 42019010 630151929 770059967 752638785 180052427 560268705 645722524 751747895 473315093 156812453 561266755 131242000 674771093 303394451 286568046 106860683 749328239 141348070 287379011 323556350 492387905 531395999 129270732 802151754 147889586 456587568 704606156 165106942 343729717 585780874 662025323 210849701 579688684 684846958 223621442 71592164 436701569 171989757 692565259 849354587 309079840 246143963 391592087 440069227 759627625 542898617 292128 780316907 47394811 625017245 261873194 863728708 683550397 825685352 743685025 77036311 796746916 528286379 361992542 959673471 701810967 528027870 181179951 818792196 116527956 363259603 624782166 375936773 606890673 107607113 665156155 687001753 531596203 282150513 488333964 799720821 209963576 606724803 844956306 792361625 36373933 823137684 626571627 875831892 329546732 95250645 196428994 121218710 889845802 23600871 454869569 777643015 366203159 257798980 1657580 651053962 133473792 605735265 296448231 285411919 480473821 521572853 892843716 642842291 95686045 766434634 225663601 703616090 593936547 886347507 49495149 24608851 737154763 623667780 942900179 146757307 295812178 130718678 964064587 523362363 339912363 264662106 22536420 857905627 580526575 350906662 526760326 296314502 113543296 235819667 852317355 210636531 193792043 416552857 954226892 162621376 432964801 393835533 463890755 910730344 893409552 196361641 374489738 470762938 241934414 607983246 455342584 162686067 457236980 244961029 977960552 855560572 480132924 882683609 522437502 345910830 823248174 455207319 99131099 152202414 366798343 142775593 22340958 323605103 338360300 311096736 337603473 925259001 751060234 791742446 430011013 30852681 388151637 975285396 819499644 589133057 321144729 355283621 778545350 181778030 272620313 288265326 918773426 820868377 937904484 77560574 207422436 145595648 184561112 296691230 47315105 913316540 521452159 292624829 247044216 102609708 921200710 416467475 212127030 693769116 906008585 589828943 459236363 505929043 820427033 42870796 929728918 419358530 956853712 91347825 837306133 656034656 593490218 184946723 589319065 810370116 141798310 209861285 339139182 846666669 772840376 118313907 858118227 770864025 505170615 468431344 11701538 37028975 25572148 16254758 416771096 203749020 772091473 422571729 4515343 999532735 318420078 532327347 248195829 671499201 394492399 450164891 96910980 785978682 871916372 630210962 173204086 397784187 757991328 295582900 498323180 367563071 729749522 208530889 936778334 173722921 805479808 548929575 152019636 264331868 453304762 373039084 344515385 978730312 535284027 413244454 436390382 661348594 954150968 751025656 44307098 18376213 952274119 532925683 989878638 593174284 402598467 320180684 989087872 408595432 223604959 407934173 937954872 412727440 755815007 44188167 927074436 533134660 898088345 286950578 220192209 410600583 897094320 287874806 109659830 956527141 576555753 26181529 265873988 510001831 118096359 99148808 977108194 899276249 618981120 476200638 93923101 279932881 825178628 626763175 968118025 722826815 91173847 899317508 10181717 606187271 218421910 921371950 552614694 368376042 765220838 95943999 91714238 42241147 87352837 995383899 790083024 225535654 893240948 50069533 4517023 302696643 159513946 557625033 791361060 788367335 491118174 287979648 528804828 308686735 745518599 15696744 496645899 329799909 368754880 411674443 398506973 400730432 984781786 141740943 267097506 958894910 854604521 377538551 986072161 965425257 237027440 297439131 187132513 266144760 987619420 101952850 547632888 894971544 702942136 535336205 738723002 555387774 370935655 479281798 393304894 155446430 820428655 114655370 80743870 653351944 463497245 253157018 542194549 282983122 98630129 254958772 664121101 448462090 86413400 158075539 422281026 691784472 983729135 27343883 253339527 653765715 344654479 476507688 364154607 300253280 828895792 56553631 623292229 303976591 278955399 906617312 703256547 331179126 95400785 428765137 211735834 525527034 93475082 165319749 866036431 953008801 744167734 701830604 557740730 693935866 232105831 699352189 85900745 243011232 857279712 669550821 186087820 736995310 807396365 616577917 457603947 195040710 648732257 750676762 122905835 944865731 598881108 845616179 700756106 877557048 637562417 504585143 164951822 560245139 574312356 216723126 148411512 786157932 984033939 62202403 734429512 677921898 152519097 368294304 866759529 250577593 453678326 974001190 991908082 744454515 317896552 309338127 825231042 202092019 16509516 350445483 417323957 714835569 551366355 777662998 73877742 73942867 861690457 457302698 962212101 827296302 139536090 910298968 609146855 469394685 505647683 565254422 706661539 987046158 132957198 520201890 813995272 606418003 925139839 575289800 146817024 296012400 647607924 704383222 41846277 341915295 126010130 834701282 913233211 48069762 833788595 27183488 897406624 845189890 433478987 872437310 808861908 216247605 755602335 710412503 160042809 474422365 692696819 191987008 6432314 900684747 571417377 146893253 977755550 305212292 712039585 604756789 82327397 135046259 335900178 379830842 513757079 159229894 36892376 647268218 800882872 628800173 151356183 641626961 504621914 831964762 484524484 77071757 133287144 454081368 95238911 574473591 189633205 56295489 10957595 811269946 799024438 751184486 454641480 560007809 280502409 483794877 784595075 13295936 216062187 353984666 887414698 873367941 845202864 761631646 4228682 291755191 560798627 841755032 140008339 32733995 184041806 904020442 231171525 289361193 191630336 958082955 501358111 562825434 480478341 133229179 632850246 262737208 260472881 699576971 671505449 4922038 519395041 55451790 890585723 801654815 796112300 860814860 340707543 436746161 472996596 920484134 173306036 464717307 619481738 69571715 227295801 992113671 239752792 245744469 520250760 398771654 679821261 183769689 496286350 559458809 834402890 60084839 659344281 814410793 459706215 460547879 164999997 94230593 985362893 483053033 346387528 995467655 688408232 5660856 52063682 455288844 746460131 433183298 83739655 780095742 45423449 969529680 356235268 347170328 907832081 959947554 513187366 345367249 546763381 682117404 872789787 978482828 696565413 786218353 50237992 347171543 631148134 171023905 224404864 893926520 732365437 780585368 429320884 447138008 850464493 996845352 271369544 17488416 170222317 555346355 327260394 916855897 15293411 497953970 424446167 29814302 789384280 355618648 513727926 257109177 392735046 460835582 224086398 481936801 373915904 443684609 307249977 694279547 947125629 508269293 191200260 854416005 924210160 501490699 96981355 660961139 26681410 965163156 795753710 62552216 35250272 240014312 379338815 813333122 521848293 789430938 897936431 119774827 931336635 214092168 138970265 786535937 912338345 817289452 426982386 787592863 773830021 999193062 587052336 357701121 361303525 637444494 983109820 916353799 655830779 632882011 108001160 538572536 75587616 124941127 535839118 349425457 30179479 92042915 423501035 867668205 260815336 113682666 969224054 506548049 404182648 974037451 972989441 653641108 714555045 999582537 234627849 831437590 334089873 275780753 704440666 135435398 58985096 104125939 102487684 786348015 596670209 649893289 326476680 550986864 674027794 108888623 491066532 516886001 937405700 608628860 288668839 510930617 873214292 571974353 934160494 84960499 241983604 739338796 613857194 364953629 554332779 977026031 787751776 686221285 305417545 524008471 318410677 911641266 779754416 997470876 729458377 646131933 150973347 811918947 811764213 614251778 184998701 172935090 589933047 817955401 385838654 179432379 71118424 737169176 850503906 414933381 729389352 705177830 987879074 317947341 210151605 357581411 727298914 645322426 277384097 282700301 985238615 866297344 760669135 386307338 951712061 169095808 984077056 263198799 530856891 70052966 131423164 660663963 608471517 920911804 975149398 572173361 572917451 67932332 268040191 747132839 411937225 713473953 455130926 336790471 448079123 187814439 246493807 749908464 777765537 677842592 293893857 708454646 804719811 721423396 885539889 464515879 857618498 816357824 310895757 18365880 280448141 664797196 711513572 243718273 93366094 512180216 181897253 508290702 850724121 202872724 555768433 826703992 935986857 516017539 679106239 476759756 452678801 861877160 894628193 613408742 999105277 481839987 129260251 727150678 531054907 568391216 236704394 602939404 407508674 823068661 957757884 777183678 174456747 931237657 552076143 591899841 597186593 868121869 610643910 582808668 759493491 410422482 198162547 974373023 950924075 775160849 790345418 180808457 459941621 904930279 443851737 800146604 743506699 653822309 112053092 215152242 263102803 812538616 733351447 917533741 540643230 834305108 406753745 988591439 655610724 878451846 214273379 724108279 492032160 185107527 908750862 557358855 405210902 297733419 690266204 625333760 61481365 845617565 679989886 48259162 651361780 704883141 972841774 146254241 384195302 514205330 783485427 68634651 701150674 815782032 828711193 929837507 87745002 535488291 445545933 764415884 472168431 153115067 23722494 115309543 262411347 97250021 38182038 466062990 869789933 170259286 426335702 996318649 712711742 900574160 651216359 914160544 564368996 338784312 652574177 349418034 409055505 459078631 677485479 647257963 757049350 872742200 533332245 801770354 947114110 57052473 812568460 603971544 480719022 167449171 658243632 645086690 403515204 872785201 132803082 141182708 822507856 550541343 354365326 74618791 733215952 330405306 655790218 148504550 359842061 928700782 645999245 461544821 237734220 357018984 904473713 454252481 393699610 182386207 104668830 239265144 545978021 638680690 208154717 10601388 372155146 628032861 156918394 669416201 167840153 6238848 283594412 682985015 512293427 628063517 991118715 381869403 600324403 908495259 632345204 938274914 664611122 44182994 956622180 403727969 254025579 877550072 172751884 271323292 827436675 801027564 797220598 534512559 475044980 166663587 414945089 649986419 713168614 597537344 129654221 7614515 381160749 92451151 482314916 873043130 368835425 415149218 869808292 67477863 628871636 952754649 817072044 940238113 487395031 704375295 636517864 555314952 353083303 983416432 95603566 880597292 849441087 177091476 50910614 939922321 184227350 401201250 719876841 479726626 160463018 935527205 383895799 882531801 213074936 564654551 667227316 323009851 165104337 349757475 423228404 474053962 591738916 975959894 225794522 72816921 773185742 298977837 92330636 939368356 521257636 744594703 526356038 321347877 777276450 330446979 765464038 725674608 315921717 469819655 569673812 703592506 336423142 635608578 500185126 3288196 347538535 171247269 507277874 128868099 798534588 801621513 865830351 616742375 171565518 138210757 315791717 917660580 915766864 971425584 443693520 277909535 67575086 594419848 121664534 718586417 530589592 298937944 917032641 191367146 417401985 26585251 302308957 100874992 378642645 50090286 835256255 74041330 809607580 265923329 838082616 896708009 786788294 634517161 302712918 633289182 490179976 290171635 541188105 465654496 272265968 323916315 788463083 38410782 171326492 816297947 615410890 879330925 113453551 338940734 344619935 355002878 169761140 287595167 285405976 572207681 511556961 474918933 737409253 359555000 171908103 851452886 253571834 812776037 565701712 292678337 654839664 464401058 161347425 47932704 423871389 333539477 819861892 292405788 584536317 953038408 490926628 470002986 681158031 442462906 632550738 112493396 456907827 121136706 982827398 434133533 616987685 936716661 529150661 228769725 205439754 682031994 665813876 616124047 286540184 74198694 883675341 143690831 845396535 443807501 360006400 594617677 702233452 853438791 283382518 820158115 660768118 10778323 458527955 540679870 781053645 126112719 792596690 200908873 705524639 634871729 926526208 514033876 313076202 992894431 403422537 300122127 633568718 607609997 440323840 773158446 490274431 61905788 169667053 30750722 312591705 543568103 355008985 536720586 66634179 676514015 753847570 176146350 478094298 688228078 623160454 503658407 524009659 281545073 692600435 714541934 887389254 992324729 390205944 204051748 538538024 513584465 862089096 953740025 113498981 179258980 360832612 261047625 69909665 226790588 740870944 126769874 162770164 524409696 610195683 501994930 751682378 459613288 763256042 387577969 106178774 380983570 183666014 48183624 372887404 547325087 22526576 359253920 393769741 385851421 961467858 29799056 963498772 233915432 142625962 326553203 848092609 495733667 721944698 411067856 653608055 221291616 399987255 751398662 374271503 928303359 78855041 396728172 554879655 847447984 915814274 74358288 193224119 403170286 536007609 637973290 603485704 316141087 120755713 298523634 630389781 994104936 188455514 602618746 779561741 956300725 108721996 347164480 299362289 963881866 104451589 783928511 883804385 345233936 300346164 617118202 387520932 101807429 961998077 48519579 539635921 710699446 419548672 496013152 616353830 154202104 599307803 688822917 850510874 443093206 434494868 161094964 980893526 668509223 817119473 941883513 969280597 520702214 225097722 105624906 410494721 97585813 852151610 813026706 222922924 926988807 696585925 389532990 366206830 796115800 554599578 868681894 871997788 259172632 416129611 883533287 520973112 530390206 677221184 218426372 746174279 83495303 904727799 996689591 673955353 758368621 900967528 103911663 694179701 149936118 153701900 474927987 750230182 980673208 901726111 836583380 881036575 920205739 87897705 889857132 429527402 663507926 799738482 904441237 322867598 295461700 864523031 954219914 585642816 209665638 119896409 503453860 266441949 590718514 988687029 490932258 57921259 737014705 113419562 944890725 462917388 357021999 368861519 531162530 76549448 60077881 936850964 249872377 886700306 876975240 478007131 786773036 427240920 290559908 45148141 168738025 859262884 391009333 353930813 569751446 370610338 90755041 537298432 44916189 387535066 335373616 31391457 917870744 979979791 166340099 61409602 290816577 430669969 86142498 286062974 729266460 310503222 300000101 49461345 469925409 200359136 339013992 610855854 363041639 295557369 418331791 680351626 208104464 908627669 417486165 955234563 514430006 500738145 338109162 288715037 880403304 651261362 156750321 8818940 99762358 198343873 318897086 607302155 126658028 380355400 2119273 768773976 507077824 393923659 299583615 381362852 843161055 333465281 581004103 203596232 297522337 405790826 611482402 801827032 568146533 250261924 188752535 963781772 947745030 437444254 583361884 234645385 980108406 441527374 764047348 479299448 12702405 968416361 259006917 588382467 297844686 629792652 929616932 325246155 893541531 692699089 237619737 515457850 570524935 130757651 784197169 206049323 978302652 353952633 670249433 420166159 526664879 375490814 691735814 559188389 179146521 527455167 515063830 485289117 737329231 117909022 523519218 810456369 276340468 917908329 338070892 302535264 778808911 961463533 979420815 646680206 126762265 386472138 397643636 64224740 857552382 516986203 946562121 159586673 837871538 917053355 144778159 99193173 65539483 706426594 369568707 199643824 370953538 430131472 540584291 678224102 596503679 971862677 745350139 624424914 936228922 87429918 832447354 995155260 117279610 780170593 807320776 115817223 880452347 166316225 40708957 84149953 1016676 306514713 722463856 673770706 865288114 94802374 240754683 15027839 551093728 400783508 173645781 717634714 244829895 737995591 86228448 472238181 184991892 409630683 955929369 274677147 721328183 742669359 884493756 968662840 540967038 899112095 340783703 432134785 244649621 601089021 798774126 296939563 152258136 90633037 81043142 25598885 627225635 561301714 747553072 364253950 682034438 659048568 600837821 101422984 839555045 38165252 775890082 402064263 583673158 663829024 181581653 286113196 604037400 351962287 108048890 569238529 329975571 233921561 246478476 553710023 400697221 637735495 115503384 143101111 704726561 901777309 360758618 522296866 604906208 525043725 784147052 546812916 704101600 350361028 367461236 813952701 359835018 800647999 287034760 602447414 758551834 425924308 589071544 701862242 84313674 620593751 376158406 308567361 862948307 747675977 578437926 220235808 918053198 288168596 464380986 715894423 18313855 607169303 973651259 505508485 46034490 424827355 289680147 588265282 508482959 356795495 632042971 337310992 590112157 143743395 899259180 615181586 894852683 754041796 913825335 653873221 364149079 469198586 431291648 544437032 921369192 844035872 286983225 729136580 81212471 732639961 19772034 210119273 325481684 138236428 788811154 612351752 481457041 522779222 893785590 115982770 894331955 209728027 444325085 119166718 473624983 843757283 721146788 967546735 82000298 711012985 651552624 331967886 892122603 582069321 120815810 986388638 279487004 423099462 919402627 451601800 303160221 746241968 524011591 260194231 133356369 347654349 843245715 660245176 530184920 151838223 980950084 719384901 432846182 820074923 342175963 809187311 26323849 499498797 288576435 309135060 307858657 363488253 53285585 487103038 733284347 571860843 762741018 570320356 90696750 898024019 832353931 892878772 103280336 810115486 301568338 182767131 882006454 403425206 187787665 233640846 43973475 18187312 732811437 164130685 902883244 832998785 231788374 984185217 298193384 521791205 844971775 406304382 963825814 949844674 585107128 415674711 406426846 888036450 780613276 360503363 820820926 66112616 874714631 903351461 404054123 997620454 364820368 971515002 63496559 315324379 203406591 178106466 201666266 541066796 708161689 950053681 203100021 659098739 853309137 176794690 788628754 32816864 595166951 243066387 153731460 877978588 588836547 431890444 56128317 386332514 950525494 49130167 837732870 522452103 311237226 323461812 624824449 19281580 749863141 809210112 121316226 367920905 895804093 843680161 114230542 24222924 302606626 156428130 814861615 606080959 73548878 589427185 731033764 933124574 151145212 544474681 324188416 945350427 298245792 864396474 162543088 774717692 757302342 337629118 740762091 920134118 434527470 635764644 697860835 981420180 395058466 75844012 112212839 280012233 869600181 244771060 990257145 193442768 813873761 852108839 549311647 560171298 515219453 764687107 300809566 477072775 620811595 704118771 564639376 192773908 570237922 931852703 853623292 308351583 883702809 22038866 262822435 565496577 702171361 51871347 911863246 68905774 657785248 668996578 355727576 868773485 976531943 311812095 386403698 834816102 671315006 702582628 405478483 798538766 252650344 99637924 816594741 254535550 759761550 869853930 702151557 104763780 882505715 377909738 171415030 662478215 116464447 147652707 527235157 794640681 137632418 421826204 808825190 313124225 17837688 732989300 730809795 161394122 349743900 585465675 625616063 460087434 397804439 576775809 191810114 361666175 886375273 146321856 39186672 967915643 791064529 916976046 986531885 847176887 545229478 148674031 684682905 623828954 301665314 83865562 729953945 183833668 673017740 415393271 590351212 758892979 88604250 127751881 729305472 584488575 788663997 903348368 786620446 758147646 453136950 553572929 719878730 786867639 549422056 450615482 444798067 860968921 461136745 554240148 557758650 927940885 411532205 871682282 453803085 952166944 600230913 900171223 399535935 801132981 849392423 90568654 469029876 118818764 911041827 296118896 318528720 941730075 166094814 990492046 893163558 76079994 245624812 974914186 590806442 909686389 70999200 101769399 264061841 707767306 575001407 688367415 63935862 465155550 663531636 136945481 489717405 849197006 795080742 942486282 937328004 254274378 159370040 52237372 597292056 74830659 366089108 567778068 738414051 205156881 358130309 108883183 774579743 737603891 523812287 450060427 287673066 609868644 628230802 953823795 858630735 80121333 20453581 826141315 539828263 106799181 423402556 662144492 985704614 807406874 113475863 826147715 606001272 168005039 217115681 130298776 158359901 170098364 439392097 700155282 499567648 630712748 11692805 67764436 610873756 556071129 431601900 968312923 180180442 755173138 185833345 761131146 428932816 903548130 383131282 175254669 773846531 782976734 324213489 365170203 250811746 584564084 952386984 328349962 722002769 826887053 771677703 32914295 750171079 417041954 409680 130095413 225561779 404911289 399628699 310942799 164991003 887116919 818008861 327246000 665602510 774548441 52081452 545156079 48326816 627405452 730650243 970724798 69099916 608489663 837013618 27806512 754516229 993795833 686635719 114052720 329719237 329399644 729382839 859307645 48737793 807425889 807147927 44507834 978747766 699030864 626466181 411104056 521265547 586364172 521819236 37720905 416943969 718715662 367138304 877167745 962654211 81206647 315352952 380955113 555680526 347830460 682139794 98224168 930420283 567614711 470755491 460244899 874087585 625765825 264977279 431782089 266787041 298647861 133139611 325133033 123420322 556077330 446347078 933846120 904628980 97908015 13528700 799446029 744685783 769549644 142716847 72383504 831315667 918690592 810562221 523409201 889480055 743934413 399942893 440732790 364843158 212224771 93179117 763522634 596486391 828211904 44959974 917324691 485540985 527305242 68595528 593289461 240466879 773329543 167228361 434018991 983073478 59364982 226099030 611996802 161496743 439840602 59668039 583738925 393169102 548738913 723113334 711533558 607212264 178401508 483901320 963953011 673544447 715852359 579503396 732055119 919174432 606952279 5349695 271364955 325173091 700557561 990409620 67654896 41990660 646348747 277984813 703470083 626075142 750583012 514357960 381595004 176540793 413257780 694530140 386604142 354210527 921166233 288502879 594658431 964789773 5622843 705943523 869345834 374690408 194226567 706693823 854633145 884409182 593532356 381900124 353340820 256081396 80124314 559828240 797321551 969995365 940620145 827153802 870376010 843301995 731422518 77629504 855419038 90459481 482579729 110253043 33175358 979643702 823983548 919868217 406959783 749361260 759551903 323142791 235006096 151920557 154590173 774997821 189875725 677056573 456949020 384856358 621247955 86842834 550511409 861379459 940644111 934576609 94113819 733564995 714400364 617920105 361639487 578197522 727028663 825843111 802235426 876791610 819498558 754902021 274377412 975553317 83334862 609170582 159030646 865061099 734547219 371425861 952171535 632071537 442233723 37213805 900418040 964167441 612642128 137299329 535242175 263654915 489990477 416958530 383717535 338922380 421490608 488924671 613597853 62015910 955001765 447016102 590295311 594354438 139736336 729859759 490297693 13610658 343209977 686814639 322441692 771959306 160887606 244970313 562514958 892429189 601224788 561910823 798436949 159633063 838882882 830556041 765215211 205988575 981790049 774255236 612016919 346915918 793399143 576629157 27855700 771880533 491739815 232176531 879671305 496628995 186313761 507843491 92226263 953292738 821663852 965318670 440318014 134768854 843059502 836039676 840466461 553518748 239599167 956621066 271538479 959374786 19745971 372902071 678576317 125308009 52383743 158039582 544853689 236270868 926673686 51674486 936805559 975562575 165004266 108235674 559873335 848935432 900981931 4814626 450045440 525717982 897593505 853164964 755804380 657900683 446383889 60773121 322709600 843120042 934613989 458642184 174573159 729269661 717756282 239232342 742504935 814135834 408206879 440815961 485348641 655398912 74536151 201117855 454706075 58421449 110009567 288199029 566033308 850992841 615249039 68271904 538199638 206678047 276799159 746082107 156561626 989375235 80695022 442996726 147078440 587498788 946753735 123124030 370638780 371681674 972183398 301146504 206238071 278029876 701815969 347428605 814214590 673351301 418206485 845861193 735982168 933416269 476401131 12993387 90838688 472013225 49082894 57668570 209839478 697039099 470742922 236891225 958256125 737283103 66026416 695315759 52090523 666233592 278619227 705328269 664601085 592335031 7025481 453392142 646766943 970162097 455293178 625901872 443644446 96199465 939615845 399075606 29081828 837308701 380540603 395670362 304577652 256104430 428293678 204689513 123201952 402619823 333891201 889098496 495180604 285954894 496214524 175720546 628644080 625935692 4070433 981189393 107968189 954515825 415931759 400068742 224329117 846789477 504339249 588611440 615629010 905373273 435334942 465316583 622311312 420140384 4270049 919689027 120226694 729837693 310888825 228224619 195154042 172087243 390092786 814485748 874598145 117284342 542571536 155353253 520754351 206409897 112308422 232342334 639433893 529285102 260760076 978244043 124052504 831505281 499589823 15921312 346069307 663408118 974199766 476354076 251186489 415688158 40393815 802698994 507304228 967849574 799768167 247130580 92965110 348969759 403406991 7511912 686213541 657062882 112233549 198915669 681545405 769530564 529742266 613832244 911848571 286597212 960695277 491543462 159177088 232724001 779795516 7021667 21978525 830309640 783242071 161351339 956543021 143027057 286634889 240733537 43559669 566452305 424549862 701264706 735534116 444586607 516089738 389120108 891095565 6089278 29651946 187633359 348448483 478830498 329624255 631147382 72841290 134383616 617258674 754338910 154777237 823101083 302643650 165901431 837039047 843210037 384461961 213640359 951000619 682867985 657162284 203187059 341563227 890721184 222075275 29270074 901022362 280348615 987971580 850959881 100614708 522481404 574413334 327449318 840879086 80344728 649270395 177432644 339005261 932090873 126365918 4098678 564163381 436443094 146392620 519285420 79607398 62363040 127978887 824480450 139195970 328749436 905737451 176353270 871904726 551652445 837001907 258857836 97775114 691413458 343912084 169115398 833897719 280755694 590519864 810154356 728481331 386702046 882007588 574679619 185910078 940847959 69546192 22414545 332612069 879038136 286978340 614096466 519693856 824147101 783558086 306389277 504353154 290766622 599841571 534801226 766926860 705732483 58053333 495913737 415621070 813187255 633486981 427589660 206361812 977997361 628667956 270290515 999853561 770329802 500554367 615412179 168022801 777959192 47875778 376105194 868864796 435074490 40426973 340996989 424104154 880098881 586022512 234534328 185673733 457820016 626317282 247202397 932703449 446498840 275438336 292015100 240082565 366295657 568580061 516560572 913916183 608053443 236191955 141232370 903800061 356154674 450209002 459255393 670454914 568981585 435877863 161999364 727309967 957126720 118339441 229390191 425777680 666163646 869929716 266016167 504637905 315713335 914439928 902873482 577398420 325598885 77590089 959961530 696273385 148838595 768439728 814225771 584796044 336619660 248008820 747010047 381789589 738673848 452409760 695758679 370784135 708879711 618861429 75971712 121760561 681839789 68237039 36813049 382789955 284764170 714703365 648552793 110908550 974443351 772201406 861432210 368299559 795813191 580755650 428750606 320842559 970366006 225188130 324466495 854349889 655480787 584019226 293958464 606953274 625119155 156102980 786544330 142266015 358921870 618832017 582218226 949140323 912461599 349657550 31959870 589740689 355972926 34855059 194384936 806532112 878290165 382816557 233561556 769441196 165210150 169575081 471708786 445982407 257162907 323882857 828708363 803103917 659304452 18890424 473091899 499361076 152755688 95247690 596964506 274175343 288650607 345811166 201331147 190035562 500589985 211077802 517743752 887538448 895092167 443918915 857240012 254359097 765291704 24689576 873749431 840740221 805701440 115460975 965547889 879374551 895448115 506682507 934089559 737255523 515365978 966033498 928977731 94269163 97268864 155861470 440291837 908291591 319840168 225802317 268906543 890523630 528712747 24626561 386281848 692249763 62103037 197864204 452624030 840262871 318919719 871310785 929474831 421417039 599313370 348511644 158642361 350897480 962881440 386579044 32845771 440357180 52422756 121144473 660559614 865255132 734369567 892822454 504117990 179032758 519482171 777766794 302124074 129533372 653832229 724048179 673062830 940213273 97494154 236748029 466039252 465964191 353173355 847225681 261052003 558192883 752884550 481085921 701279200 767279518 729997643 528565940 791773822 843891377 686620688 226661878 646145909 864276806 779568103 938079264 379030122 61661904 470430953 957628275 651576841 270223932 28680629 876817023 833943829 635835470 730576694 662968162 596975170 160578203 265523525 108106138 550607065 764761067 241141444 482402439 832202726 927666211 775151993 341830405 43701332 69347319 94175984 257831233 264248271 320174142 512708029 897330048 595555008 3601668 916263044 770402818 260579467 605075104 816724547 173191646 482535505 260853350 106942728 3793621 921779075 972296067 813375336 149702032 432799487 410547950 758011987 698995442 601382633 251175710 112640314 227798949 599246723 841498068 615975740 677836323 949053690 238769084 416778775 210469012 32050660 749357334 953638337 415324483 372766877 245181053 241843137 129661131 402830397 897325541 11143148 838557040 504469172 280333553 116175069 73833199 850429335 594808558 132469521 52823818 455346618 595090583 515651737 271346030 662455925 800006229 384835035 481292939 810307475 10917980 96080716 139330271 159018477 926870116 691931799 741010953 519395719 748315760 830654647 592453969 783377522 656593554 457735668 609630659 740807682 776636460 418559576 915001863 603251854 662523480 840171765 312484344 246195452 526591610 213053800 434825321 898078376 139750532 558154062 574367481 266108531 429313334 599323896 42641675 463993727 971594060 78443567 164695388 981378899 967668877 154773288 894262150 262695156 501636055 740205672 686726709 857277737 577919090 403760196 843856919 859005842 890097857 997203269 306153135 177669485 847823220 366790345 71954747 988257540 889417548 233522931 606473074 695181839 281074294 619437201 524724417 980449848 645673613 977558843 21118740 118494401 766008134 292141256 768104461 983117924 700671078 793883618 249762472 131096659 782102691 614994933 561406481 302143576 382405134 618601376 291638425 438357158 897236686 228640029 184208453 793456517 155466113 380733897 85230510 221046219 751846797 213947349 43274520 462082265 234892307 222147364 666057847 67593738 4595166 926358891 748799718 782366702 249570370 640832475 260057263 364636112 150010509 213134194 122875463 779294586 331105388 716621812 996507001 259724350 5489834 689810852 653850189 390317654 449144984 167352936 795021096 941273590 829131378 686934000 301974635 370140718 217151817 319937877 436797252 764288067 459876769 315745316 866363801 259572961 20952899 531823901 974243656 147027367 79047954 954970598 571498700 132452995 650965021 31749635 474839863 804850072 603586382 849404168 239356466 333813562 924921072 781735715 893886208 61129160 564412180 536654874 183512335 380102600 416666477 470036629 171073780 433345012 476187188 822322391 921870091 579214172 149111635 384038152 691664145 107147644 823215048 449574179 230439313 537998055 109574392 607091799 123757957 353066217 944305877 813890695 443770557 991338152 589846667 976121345 943832163 717739897 548984524 869405120 114108130 591612025 709407597 876031366 664248295 840383467 521042406 11771222 421084088 914186250 816017980 164181098 655092301 217796784 301282600 288534442 530138904 173063858 801711391 317207169 441719459 691345700 836956184 316776077 905929018 536859604 837902382 121849598 3684914 722661061 447762387 236210958 829733735 705695850 379632391 63493225 234981596 880150339 195706748 133015526 535190090 105278260 147637571 210428897 391983395 62255683 384873909 277244647 625727197 522802846 400842901 96581781 383241322 389064698 916130928 425956401 179510755 638828826 653435887 953667189 771085913 617375298 584429145 491839478 480412358 991015139 229225338 627524730 659458496 320562762 287686636 586190580 601951548 744147804 943840828 374459429 724647350 320968062 325957464 236657641 713310129 358540110 191362352 463022840 363914795 194077715 85311559 598172529 482959689 535005590 824450658 264546727 897925092 963180294 144380114 930345141 672051677 759540084 739936395 285752491 322325458 168289990 856459724 268243410 90892541 810832861 379881679 173089763 160156601 436978610 195159242 706397668 345302564 606844997 552162454 195019020 295694797 31343451 931452815 912074963 810642878 661349088 544761851 324872755 541457919 582745429 570633757 512353940 506209998 703519524 82947992 347561935 122907837 514648967 724879624 456449436 96768169 856907453 419600079 731518097 921877653 167331326 210487826 155316398 257251958 133902802 200431948 255428989 914755228 256868836 309825636 977692383 733094665 184273730 361358095 932970983 480091826 38475515 31857764 316483981 816362859 22535245 446185628 385806092 826589814 961731239 749291437 68799285 720540764 133819413 680182991 368590732 960650201 916523455 916688169 958502640 109075272 144371866 157316288 978724109 748042171 763604046 463879997 522026975 903369609 511623124 224430031 458427508 47617810 252649358 440740296 264677044 381224667 604979812 398357258 54090020 132644636 979585326 233512679 396715872 356819566 658291296 438692001 485706280 24883983 480141853 216446268 461057293 812495419 722049409 207827073 11834151 68398774 1933243 513666355 301633044 814366353 496124814 305149530 586107636 285782711 919761540 677073297 277189140 472514494 549665123 559933584 158521554 363189436 153519430 289453702 558835377 9425489 58744218 879870154 798330491 472862780 129959979 753241104 437005244 649474408 86785644 498434830 7178689 703655351 924921920 138105468 72277085 937453246 952408481 763749177 934478182 486536813 221964166 946040147 331020933 742373360 444896078 561286893 78628804 623066970 25328312 453285502 896219684 298800742 200767665 683637062 902561593 248423082 683940252 997678050 930043816 250486497 708849329 472239311 64793622 288027130 411323355 451715051 2655078 753520030 871083687 384295397 124086178 773716341 832309136 769720040 707363370 883017271 149548494 347963696 26196631 869217085 218708441 409347669 806290918 587711121 197630287 568244097 399485003 370363679 843257017 341817721 768926564 529741884 910456319 264430732 472889940 150814699 508499041 820513063 560379237 731174821 914591269 417322048 156179484 929506685 618778247 900362415 23875104 255452489 319999935 170110998 654227980 882710180 259869834 659032681 172372933 586150372 666808756 657323175 286536195 821720954 901124277 889924153 460910508 812956142 485967060 596190837 259466164 762342089 468078638 528377754 212572965 202523758 316114958 256573814 558631135 981234096 525403869 383909088 948337622 372077956 872906590 76991314 780713421 418670662 368113653 188374856 590691267 281618276 992980625 738573991 836817631 986704321 920002950 978061415 387862973 202968181 354473637 112623966 698721930 219871794 696933513 254965969 824913986 689995645 107054129 891584929 621851924 470590822 765361162 586473337 200424450 32931108 311146370 811665419 359484430 139282430 898832274 351388625 810787890 664637567 796677992 768235447 58951519 798392260 464295201 296273673 229770027 920369079 550568693 883038544 704759810 388033498 537492592 159586229 382175430 258211387 884782745 58818705 159693345 71716163 997932666 376586214 516287526 562173094 469823693 943290315 447701582 911385955 266281345 132025272 251268641 394504724 265455028 320028594 193635180 443911445 892355982 370234453 472634234 892252805 619279251 420386813 531789425 763397158 9690720 897366755 679496091 699687264 143229185 329598896 974637084 37837016 722833015 985601747 852030351 717743751 267264057 846001653 985658411 916943579 189002730 482036232 236770723 147681129 274672763 253181225 254653808 295521550 903959750 450027843 936550922 450702746 983608968 46092141 261314706 209453844 9137567 19887676 38406250 397798441 262368732 532858052 524917658 98691758 121687266 118378472 597315431 160426409 350559160 167850200 583286244 980108981 564534857 731680165 817957014 857783941 549923237 424310874 893426706 611303385 999124541 501208029 624874701 183853862 276508883 953973150 288177059 425038872 557910745 513021115 332572048 988201185 639543091 43153539 796220050 646278101 321005754 842799133 630136066 101226640 560846003 244415782 639205196 237276633 912912406 102620393 980658010 713604028 698330460 160305247 729914990 294970800 906478118 572103744 7014065 216569663 424314232 59954007 821708027 254694416 990934797 124658923 956112542 840929538 535023730 935540666 338650018 547231752 713540681 656146557 621263903 269079672 233380979 646493717 927243644 91956948 343970606 898869915 381729279 392054564 925538471 228644071 791631335 408306120 853518727 846567580 548851114 213740564 38512021 470387912 408435315 333614653 164000045 132487670 805614163 37964700 384347856 707152229 166859884 316147219 142922627 156923640 412482529 357053059 878428841 443969921 784863849 758246823 183528076 380020957 212253267 400184478 655532229 556313937 534867761 426268957 628509724 627906202 722587244 948061341 758528377 402239474 204522772 390346418 558490278 8005794 199389975 551930530 570082042 67195957 426284721 223214319 208939490 554920848 363805389 770556650 385365721 76398657 499033893 358748993 473312042 144961496 779333632 547566038 287874749 459356645 40327082 635528657 613528759 903990593 708316242 661305711 783200237 780615846 292818100 395172582 193661459 263936517 530887128 622863258 104131080 483341661 541903193 636823652 762500546 382396765 307952458 542247047 394752256 366059590 358234329 526895582 43710983 805352239 29746244 911264275 724102430 410632014 721630272 345151471 459903596 7589582 5068488 489524412 297007335 819996367 838855373 704496844 490503888 393039417 526585392 216125957 857389475 647096268 688254958 782310901 386461197 584659227 686930120 107404089 290720286 256437539 119510566 87484228 734821737 177273327 447895234 749462690 588085063 861866846 792833638 946540929 643512012 931798319 611772792 333760784 860758538 570191262 101351082 461291252 934606997 441501144 609255528 207559860 832778447 385927281 219795767 86625372 329993718 798834853 890427016 689840850 96834051 369819706 715556811 499386597 454832532 515875469 539540086 940941773 582060649 45477418 144296455 185342059 976471100 27452474 631986161 888180860 628302666 630553484 695292455 2159090 484171878 280363712 503002998 76174062 227043377 267367969 372200461 993800423 446991352 304589035 648603887 638064020 512672032 463346017 993929794 466550817 201770431 385845724 662937250 428873738 273927576 74678209 12348378 289525873 732787608 689001739 626475540 931442750 748644079 596604223 853706461 696197310 870649624 586730595 504553057 162912472 379246437 845625232 679207347 667972426 14801820 82704348 412482339 752880378 939788579 98642959 293336807 963540443 87081249 576277062 906465889 944494853 819366932 982490229 13706003 39016912 726663879 843675217 70177240 630692503 71960095 550817747 67896426 346047012 962067724 466756615 254171239 488672213 950683783 326539776 807562349 903250949 550482884 278065171 414663439 234213320 844692077 998897777 535434690 738595947 628876137 218824640 18768782 387311807 542516627 864636371 750250971 675976235 66604079 60342081 614532602 145156531 638092002 914522514 313568517 382171201 250371595 102310493 606291101 159570694 865071344 69298588 735608386 650880085 624166617 437820358 174828994 403017345 22007019 266197442 145173785 38632978 40580984 790188475 492735565 352705014 933622053 204811835 820862138 133371613 1637610 853324545 34268058 82579073 770497249 6539918 894200098 622312348 672196836 839080365 778557550 182918106 550334515 869145607 702029870 763532405 450845558 9158242 541876206 927278011 395403906 776180548 920976281 500885362 709047275 384334504 503815145 841000666 650880567 663271664 636301457 118153704 479014912 657958839 203865932 80121847 486351317 374299052 191066744 134811765 587728750 17298685 721169934 846416174 10683375 533356729 91333045 95348114 82190113 77758692 440220911 204425803 908237965 875573344 156791441 99141332 745484959 725127930 186205790 57739199 709148179 244368563 311209824 407397072 637241578 873311049 835655735 913535634 490410345 64358883 398275546 574977434 235652337 699540389 913172558 774494464 291312529 264115308 606302497 284208230 163167387 417744829 428115253 100041931 460510688 572609303 857128843 866629532 9368158 483950663 624201305 234097222 784674367 42776655 712354063 415414126 293216633 146560339 35762625 550703657 42223941 207502310 512419692 698379442 357448087 289963348 493490669 757149412 983872636 684834519 129756788 895824660 232781738 562078553 368994086 345925147 367362370 323811803 479217755 612216265 452454603 865658963 738198215 53808133 410741325 602745839 242924045 573879596 771936596 990219023 946803479 317337560 576430889 253536743 19943835 844723471 651455292 487931458 798186522 444053718 710838354 859951975 493837601 74033259 418416961 656831920 315180078 46763280 873350502 458692160 623444941 88243438 347266654 36319539 389431209 798584644 939670192 101066610 675742316 454344089 294983606 895575562 863360685 559984734 494844718 814472264 14943939 418748604 889452961 894612346 870457002 805399136 986963625 164775582 820175635 461400182 675536172 700061657 458588824 810063255 547451785 709928035 531459975 197928465 398890921 155372749 253749274 328446953 697679073 721307293 242973692 926637041 154663922 853559755 120641884 846794379 332263992 211171070 360001778 673393758 790997142 643471981 315788071 448123481 321921555 434137563 590983912 907531592 492437250 485313213 153810381 323453000 959474046 788402961 248237643 565146379 778084751 218369778 973472133 72104800 589589653 953672866 902564091 505301070 504296393 558413508 785102600 84621419 289328340 947089491 142496755 651031613 530998430 420391126 665658147 489992399 721662287 33655259 611482338 515299431 945891438 186876991 61416875 346761186 520581327 521954750 15673041 79857714 503286236 583804627 765647871 830740651 192186770 952636165 802691893 970877496 898455954 525170344 653982612 218849059 936163764 681146730 745467560 538168165 636785718 843348451 349975294 651656116 982794553 493288624 77058960 823563514 449950831 178460992 45489464 134121513 961581700 281473576 241637102 315537784 540021284 817136926 375008008 430674238 624377582 200513133 899234593 438796088 901045298 435943258 267662659 482881830 973465417 265888473 945472085 325438649 5772045 796202520 20667072 353997827 965109454 852145697 338898620 43814214 869379554 233255886 517759661 378255465 652905614 191789978 623672375 321545739 535513400 403420387 592097960 124807847 342543385 882827688 374902163 431478141 125283625 682983363 895664556 18019565 523572727 254243244 422701326 122456423 510030516 86128856 754921128 192811417 528840886 842010264 8098387 747939948 861994793 993138965 306517529 459967729 745673925 441916961 487615352 455525374 176711102 539077462 838252086 136971198 450301434 858474125 283723337 845611260 969374886 89773020 336208586 83086972 682580022 72262081 137439450 585656441 849595557 662784984 999691617 216102711 284356189 673126268 978594788 924974618 844154322 567664872 243108104 493270581 886959340 911547189 506311259 486466399 796362855 247334063 764933323 156531777 977061702 502856805 247843361 456283840 169223786 299855749 491969275 773879807 18172832 916874206 95248345 876106296 572751780 869525375 373191816 638120897 620655182 24203287 290558551 217119026 717066689 858179837 764803974 211050866 256219889 438595973 675895299 35523483 863035094 154780929 66776761 105786114 780151782 206854565 769241234 18502697 142189666 22962351 314087536 654021248 280052782 703840744 599736246 422820907 864640013 390873027 516972804 951359159 658466399 303805829 11899422 190849265 67760901 644148944 325469050 941929700 678117235 743826942 100512481 651965958 299087917 348403340 143611091 499197426 513928943 791842393 803853296 279391036 677375501 7832525 623207327 460882603 476520883 666733902 406416751 466700266 69362686 472785850 645512956 525212971 719866545 167714949 477451063 38972291 629312288 233610757 131509263 65667865 717997352 561280603 755061481 137205026 976040730 210898829 739235171 672167978 278080490 915379668 226342920 696853627 277837703 796407014 908979347 530326684 473311038 350387545 144561764 47998714 643846195 637060404 996142135 944010694 114525586 381633902 86034948 218821238 789775966 287092459 56261657 428640960 703352536 240281069 949216777 32673558 711376923 538755832 605638702 225758502 792262813 934054255 252834388 77361508 74245126 151661577 92491395 21951351 193531737 980028677 9917960 788291544 280246787 101853976 497490427 833329266 672426256 856937766 494012061 393481281 634548755 479737396 835932695 669462600 744622737 220430378 313449862 152113322 113968706 967904095 290313791 697448584 171243253 756307812 137622131 286992101 335474151 826033234 999907916 548995878 188805994 530524689 229876302 837024264 821781405 346237426 660911451 246322516 528586456 277793959 699969752 418344632 540367155 705425691 460103133 39192108 968411421 287295381 208821933 839366913 613729695 973491382 547740028 552328972 944149746 67661917 711538842 829858118 733067475 953592409 988159591 509928021 555730442 311528458 116263751 739816650 162558058 675616192 676838469 331298936 488188160 865599110 730452834 562293788 984204995 26327423 726287256 991195548 981520682 322974107 661863748 642626818 933106507 844702435 756677327 867336072 84746040 925362228 231709945 715553647 693928266 350884888 913650076 647734859 544346422 1211030 957921058 265222559 242682557 68582016 93474282 132411037 18993967 219678157 620384045 948076359 741114569 348921051 77601302 737860867 351414271 386607555 344098557 165236320 724094988 668700895 344837229 797753932 929874474 310613399 435496734 354736620 759952204 775525855 428826538 146673366 631893114 388015922 910495884 937443022 927259476 445313705 452024283 712934883 322359849 452389431 94354298 884520848 315357454 620423582 521833561 923448135 599555307 285554708 806062670 910282114 29745615 449936886 158837871 987035851 298741809 528198988 676752419 322738403 629290919 455411074 129187527 334250702 902011069 669531100 770028391 288653822 566997009 408580938 78303630 651076660 57685697 823780993 21030063 355824723 369588569 474787260 391366516 969711867 579038749 335518586 182244929 658429051 751062867 458371633 133683737 287824735 970286737 417103516 159776232 915256091 435006570 980829374 276925179 62908143 874033054 867065534 624475376 324973809 275514117 9512462 990509947 587884321 637075841 116478193 819959926 40241955 189485501 724349468 633992983 747002929 712941316 498408721 559355533 201878582 14863351 477747965 394953351 985108966 239580774 492578128 568269315 343929538 475586240 727233885 403710809 821775106 58300783 494737454 470379197 70974225 204484757 738905923 32711432 669078858 989070562 865956855 718819598 996277927 8720395 212931250 636007026 823543779 536892029 722309159 398726710 410719608 94020794 134041802 450642348 845051196 853238937 901375028 828529196 369301702 537006872 993258203 736990910 158187455 179208520 938817799 178597145 904464234 301031021 65557158 181581249 326389308 731248985 278086935 706046841 949446073 537243553 644041983 107413957 369595381 359573311 645453406 351954160 330189110 654895711 781181023 577049135 726983520 2939007 690196979 227278765 205882565 641734506 809363700 490053959 870969081 127064482 994856288 274673933 608861423 218343442 312720956 144515496 904126775 223813366 6038862 764540188 678016473 497127277 931767823 760351377 290236007 323797990 220148342 478967534 750170447 894537737 605397844 796862189 782015302 915367328 789878588 351152133 199256105 754036162 508646864 912700612 17308788 112093301 371489279 154911713 372924696 320136420 915818996 832363008 330269108 930136562 391271515 811988100 954490446 885688071 723021525 626827490 588184044 434506654 847508127 566065595 342189064 462388917 177786331 591635624 244889910 929436175 918331088 10273977 289942896 811444876 421975238 116131651 39174147 497518752 18264033 620480086 920298783 142252486 957019550 348373161 91820951 770825253 983820788 557935727 139901298 914637877 487362264 604820958 731296800 662463668 876522756 431366989 955890415 166562162 160039506 648139653 264322345 881117733 929637136 722794081 497873850 322942426 325743567 886052590 839326244 16091105 133647387 863505976 127193452 794640355 238629447 10682346 501358415 684150902 290374594 731742464 843536197 504806457 523799060 672048400 917761755 890006116 205563563 933399089 490862728 154248790 448192035 823983555 91229268 526227291 768481612 654062921 202471234 932986578 843585019 576386903 208671171 625606319 358360243 150373759 505762841 623568743 275547701 573064359 509250057 915498777 589193133 568404867 254575495 840674348 805560203 303263953 693112852 414070407 661232562 46934648 471328630 965886983 623159706 673576351 363160693 733476212 794037866 350710687 909385755 690776834 172628908 237746127 752783691 642162319 477475761 911826203 350863747 883480238 662741402 39683067 579792857 535842962 374673196 382399800 157739478 798475830 949603135 969498627 113100330 743534950 37775870 997030756 787333371 350091387 585658207 861960709 557681761 323712159 893100483 722983810 61198529 394402696 536856579 525987516 54600431 674750522 583295230 309912943 401625987 447040717 944132437 474828941 479039 552816453 641439118 782346340 796554312 593496393 350817298 646041757 759163649 449374964 45322528 627909363 569519822 367444601 642869338 623909170 683427292 1715439 975721085 731790679 541547740 964625484 723551835 992708676 539587317 876544798 757344672 41935283 596804064 774106519 160415161 824509470 981387536 836247043 421811722 211649027 300443685 619189417 32412682 538243904 392578704 270116300 35559778 957065370 490360859 139943539 899216182 524121218 53239949 283541160 382365235 797242333 469029877 780716297 466458732 597830838 391066319 723433417 421928545 246124794 445694758 128869099 512327394 454777977 960219629 497939985 870977750 233729043 193973748 360909216 300766348 213320752 430629204 602000252 749740384 592608067 702624000 26881959 414427367 480810689 664284551 164051791 777056532 698990733 266801485 889487969 710073215 812805069 674468360 356818404 180748184 904700354 252435690 121221115 897277521 941620633 872347040 683180870 646084110 877376067 571902481 274445564 22924022 959030259 949716141 297350898 737403885 901382522 321334553 229145140 575922275 589902106 337421625 791064055 849457705 710091032 46692144 446901714 179590337 509112111 666456932 536778938 871332030 258502110 473658897 60753507 604989572 664684462 358528275 790373536 176120990 211198245 605843846 966181448 45071234 916714153 542083721 132723776 352140774 308186175 540389462 338556029 809713872 509089656 733694949 553744083 668034309 510086817 508387807 219157038 393183177 430111547 277642282 181883619 318587788 647622315 201387932 732738257 144096402 562667648 852964637 967580989 677124055 905916575 229898680 129190660 534728311 254062081 740605626 120056360 418729872 889878931 150687626 525787736 727745270 723389861 666166068 375206896 645118344 974156409 258685788 300527866 2281042 570944395 447460521 145898762 114428551 815467616 849089599 160169097 623007371 220516393 43183576 778147887 420627873 371106288 977605902 257646369 242045112 86108078 248444564 820795048 171173801 491465127 946097285 532890763 916502256 424113378 442868498 904713843 464414017 527353984 220798286 180283675 832448970 705657222 805768463 642919827 500615666 129894105 96227621 549004683 690852839 429372306 600341061 21880880 267357216 915397530 536236957 107639148 889549617 744429336 79952796 184979596 355444797 890493932 192630505 898399106 610763587 742160004 517236642 842988856 977139180 740995490 160374061 936184213 304047105 69562182 713269574 205247919 766585169 910285221 780407366 717329427 453916414 565041599 241841781 110143064 386791645 539201144 69071849 759064395 564198315 255971323 722024729 313099869 86937054 387823820 441628923 129475670 111546231 420497349 31348973 895776164 26551794 994359521 703609287 715791255 753552049 312962138 631865331 969597061 363870986 175684278 450025579 262438707 730244462 712459948 151099670 151011341 15370062 80982189 335190056 682459514 603605320 74010553 899659709 759242759 615278493 916923074 811162570 938207143 334936962 531762729 85778416 433350669 449226131 559466904 204424010 301866602 786680274 862792654 363677918 152187879 901984400 330343067 82761202 751835929 236554606 988683125 803036774 977968798 758335385 552755079 837107962 540971765 923128943 244556022 928517868 683873689 174519753 652257615 869521985 215486004 422039264 697943888 250536057 596958717 936455369 757132422 560630906 600537199 895518565 451066933 534299095 987444461 480019040 579132268 803203759 216039961 615817214 183446784 407995943 647527479 66812974 873958039 796749045 199966721 753889426 109919542 613579750 142490576 243755540 474046156 907792861 806110115 589960789 140659843 949490154 704482418 876368704 793140965 734754689 254575726 570711426 42664873 792588481 416565786 447659650 342128278 541815764 699927127 475689655 605186670 802245710 712570266 605623187 215867153 6318730 112535156 731667558 524621319 537456439 148938603 101819315 376737159 287038674 942136799 836652495 127044803 518321608 495860403 871017440 644055834 76837044 986964958 21172391 997525297 483508673 464121499 727958774 926254465 912179688 151949137 331518239 663609473 541082255 481021918 550908894 458939077 177713068 838430213 448775337 140546046 763238665 6855033 184563934 415949918 568437390 974096876 812470116 35273415 985125200 357946461 490029476 498600267 688558192 658275487 562192454 268422342 487439611 111581050 643713895 133605114 446933715 645081509 319633509 551059331 876540196 388721692 731928850 592314862 416307111 366118749 473225675 502546842 940214779 679103335 88624737 59851118 524648055 763545723 111003861 743149865 808224090 288015126 181014279 62506124 147448174 207232870 612165645 761010589 60840006 957428153 927547523 841553856 256746306 925103464 941947549 197526939 363128867 985113924 731167053 569727469 116332102 522851384 498299760 457356092 17294282 882382456 780214340 469795986 425039440 916124154 353813635 475316912 645873955 423294237 652365729 630598260 379335248 388656431 521709951 365926911 69142604 956400439 892676136 482203970 11248417 903745201 955569255 865756678 984366647 162700948 599252921 892758916 566308630 27562995 200404516 133608477 192030922 798938489 891734445 401336024 770745341 756038452 725790903 596098071 685198 763853706 149055146 897247291 416676702 771003246 511421798 782266649 493995753 835945474 797288494 977583086 152565322 179913310 463747778 755212436 205372236 258779448 895775323 388476814 478971708 29930985 372281990 972470580 672058291 352237036 562325712 753515964 438100924 269567254 201834256 635867590 330185578 671339675 218822455 730801115 248633884 295518994 394678923 85440201 86082458 86787094 616191727 86432810 379627879 764592039 629263670 982999672 953092988 614745355 309331611 129743801 53206531 966178062 663905356 423028343 830470936 224999477 238489753 17767207 726598523 247143221 782548311 195808874 420026236 61051211 815645190 646890054 900640526 861436065 241947999 609720190 180275783 411570359 75423967 617500508 407778950 254369983 168878916 503744588 577134374 885698069 425848240 396221910 919756326 544002152 807293915 34060321 648693646 329157265 610531656 721692129 135749918 817457314 502431837 53907800 664021467 157426123 478311818 307598007 674363609 66376331 637561400 74817273 288719450 461715492 443055141 726267866 326461555 691104529 33846458 524764441 117431336 728892820 51785491 173331889 350955232 196019447 489208636 445109583 376151743 560928135 192784834 690267049 751464239 418738259 525444982 353636170 564430094 578325285 968933794 129952301 950798853 203685331 482824860 908931239 358561293 617003536 116196413 30568025 453686939 434547484 79344943 415893633 893178799 717849330 106252271 470818657 865186168 900818767 621932737 401979819 562266913 595033967 513249999 24778829 972372926 206904520 869005609 156657671 625615725 26754256 540635035 347462946 825406548 997536243 7674468 454913584 645664703 55880747 487654893 58190331 913612094 248616318 58195814 380678310 773969726 852476181 532032454 962174734 234294262 34813944 839744886 823197390 163545031 877691350 528129143 89984905 863793699 89809256 933126042 984347657 182301304 765533428 692273270 226018848 117348803 874019326 262152493 93388934 686356711 68421585 413618980 762701023 977211766 582571531 53462697 810523511 29423183 614663162 152420542 45754293 549086615 989572479 611848088 228752139 722223527 99370130 322893140 663258680 653298383 711349426 893731197 840591894 496487576 90373866 360379123 521030413 541279919 180740635 55277948 454849853 680742173 894741545 594838476 521286603 995764116 477161016 863086880 953768044 840525393 885322882 290039727 650400750 550630613 96638037 730037489 956013793 879365684 369665226 702111850 503065302 355093290 396106566 306168311 801455046 700042393 266253751 987708233 256896028 802777485 955510989 159652847 241436543 849915675 594572733 718923284 217891064 845034236 979281602 189682938 519355150 314741768 205022893 549911476 860732669 196470395 887949405 8975113 942202457 979592267 231133303 796760603 998595962 972126658 916139710 775574405 630436433 530619630 374249937 766531574 325444446 316198683 345708548 171937058 497646401 586710313 603516451 735981090 242703725 873476865 89918093 797913773 916977624 134062858 174257210 690504537 341250666 15957338 969127005 11626223 527273813 48419189 960884744 891115468 696784594 494738919 975866523 629966757 760955965 607079269 921672479 410255208 465584539 924739468 130716658 944353094 819031389 78671400 319324279 360244644 537951227 820028138 681491779 538053893 55352316 494633128 903981783 195845139 170045493 243699287 572588498 610249309 653268829 673193979 548372140 399733706 908237932 171490047 453495982 339566585 942683044 682974514 859026878 777013480 938681814 568396149 877084768 655531572 432080014 562045199 404457429 283282902 427192041 752530966 742093273 227412908 405911732 340819376 416138741 539148984 24977748 320184132 353475913 665099237 865107795 496833951 579116117 571169879 519196866 38380519 646446931 924582796 223516084 355484963 132282361 998859391 44904393 705748674 128390231 637512777 883193870 648789375 713987879 962331257 430947007 592702408 430298487 234398106 973229006 914513198 952123101 258200052 378429313 680867725 771505616 437096849 481326885 441255236 555546492 923175527 687858408 309203825 873949490 579134984 386967390 815535673 583640860 116079898 735656511 503696634 993699204 510667495 271216897 25101979 563199636 653689747 635651876 76891081 78806190 961670007 867502714 728882595 805078708 903347590 940984239 788678728 142730903 564365990 177175059 64676978 978881483 672662496 294774115 416559130 729300437 20937890 648582403 716725674 366313376 634924335 301773834 465392150 215578703 388414278 882953968 249620965 696428283 500834204 601604319 408868746 390570409 281321451 320145248 791420002 347425666 739470208 222756701 119030259 703351323 605145528 153102698 750130450 331119653 927337253 101546478 396235408 510738767 933202436 632181836 1881781 800196806 265861759 76204278 663662451 710237631 189452059 902668670 885773666 544582352 366121159 691850392 319030176 545700406 361655470 298270061 207132847 593891159 760238776 544566202 383803243 954038092 722352494 624432213 853674130 101750702 525094155 756995553 909969184 314823225 970037168 307009073 60012957 999603265 147561548 749824749 222106561 513609358 207999219 211472586 121593701 356028450 444127537 22570612 887721350 76596973 40839353 41088218 890372384 241590283 965855364 475842276 275172442 469429810 456948300 169550682 970610511 340224595 636793835 68975281 992303527 114211389 703893476 37708545 24878313 973347954 168023974 197345452 627390001 847967624 5465546 437829095 618144532 728157538 219357168 116292872 458561925 636739844 821221557 304975755 684646592 936256168 60053588 951476635 292398103 816562860 386546401 800357863 173546137 407082575 558871122 540259653 933645401 81420214 590730120 94756577 122503718 753334494 505837356 120022787 3346371 86385559 938234570 771880303 308743912 80206078 906883138 400773243 666134438 301340772 265966087 392692403 385562534 828023044 105193570 27232121 835378677 323461785 227691475 954969629 734398122 344044607 143835323 567068463 372747374 57738509 402446201 65424415 50523246 36582368 831261808 209230493 244079148 647312206 440478351 14151234 321939221 40015815 371170452 812591051 431637600 190871663 703770847 725348312 574384992 448761233 223384057 994663242 741725662 203315655 755340305 133588330 659671227 540802493 747643859 714588743 698768285 227681560 746540301 913696950 927423550 330378169 772602909 625680739 991269922 644708853 168926768 129603298 76067703 135676988 367335123 107800976 540749139 107717466 49093571 20977977 296446021 928603116 243309903 46804154 736337124 252031980 447241090 156899742 672588373 234221287 962330746 98373283 104559055 442399920 187851351 921472739 174279221 936066463 371465002 580319737 133250204 594588765 455609861 437947043 766174399 615320663 185942185 100905923 786964912 743180502 934228195 695313886 441814660 953173440 384798692 203461154 523835625 706388524 801715144 231512739 954029999 11147860 497861961 122404713 639928764 418491249 659730683 507200455 323749259 932628304 175485110 663313050 718051062 993247873 540262588 263480116 446894527 770123181 145126594 259769235 918095884 184506061 54674779 546691791 311885538 503019360 672311064 940127733 986307514 894237740 604228010 215392993 202451221 850106649 755487152 40266875 164232379 367816563 280940511 67840880 326478143 600048669 611774073 267584996 939406652 502339123 118168926 374843640 386609379 753687470 636596738 496120282 91894994 310704169 934904278 607632154 733661651 540314209 486266798 317917382 415118581 667428131 489523876 847125070 418294574 854482059 352376858 560068462 746064882 864346741 457975905 731060103 68766644 127063872 727899071 587035517 171089559 792848156 871348744 124637090 573806552 823946559 939734817 692874184 95132319 416994230 445655770 268289186 665952301 803879440 224829500 71300110 426204696 716846308 375559201 498822810 823691095 598341801 422840580 29712332 428315092 994586017 564338882 514801092 636055383 352481497 345895177 331750674 689853568 577600465 118189224 273351498 598666132 551512462 152896023 925600241 605354373 750928912 971824425 928250470 773181658 546389487 83697662 598465060 607349913 861848920 3465351 315876103 402850623 313365807 498164373 511547916 104589717 372015467 694899262 422280840 894408173 724223215 476067257 687409618 122221929 976356460 263704684 310178536 648610541 693389047 164600225 50496136 162342348 507874083 190755256 81699051 48667220 708936926 483983478 115088617 929704491 482212906 705134412 61438816 191205960 31507756 660848774 82064737 726657517 365044679 395081351 646228936 552775653 15103863 786310825 558255767 837380996 951207700 113528568 791211302 199712132 363997159 273951889 501182346 54017014 100476767 355906349 422541027 272195053 394057620 137117204 968058911 859992882 210465766 126815466 464482216 516531051 156882338 514840553 581747557 33017282 134617021 468736005 468920363 426456436 599269864 641971526 592357028 810062564 771558927 604907258 710613212 693107098 233052619 112580464 316045655 735781620 596220257 59310271 902370407 918842088 6320238 12261016 606649262 321855030 940722139 319258566 188179493 886908164 559365910 647341128 131089108 544356893 836562284 238354584 374219453 4050473 784549542 550850741 934342376 717568254 272189993 790605287 564368753 578745740 786709859 473863990 720426099 598048684 820924341 719577011 636650451 856927533 840572749 250728651 395681925 441251508 228596574 944456350 888738934 473383221 57946419 474700698 981354016 534302347 411371687 253710121 69618768 830434932 162737347 401845276 143195424 148493182 878050784 854652679 396230500 16653323 527714421 540462417 123854691 799666237 518125297 227860516 677315799 475883182 686440862 923260455 457016945 331293724 458740296 691671164 462463914 581586929 859388530 588546599 20700436 29076059 439999803 379604433 995006128 282647844 969744865 862723676 66752206 401252947 60563242 964046077 18192756 406207465 281944329 402038094 910487927 50871511 648666940 739375740 413850322 270826192 484483554 438065798 729126442 79483729 802063943 683866541 579994549 524561576 553622877 963018480 44563015 217749751 624563311 345408199 412804334 865359153 973817952 127109692 65405811 296414963 529254394 848113709 424603202 92402825 231247406 657921490 704589132 299219746 553657108 726704750 943357239 508559021 694227301 916681511 589134883 615096111 685200673 425151167 432529105 47735671 3474317 773838184 212276079 780477590 819896647 434253034 954234981 100515328 250489446 152754259 78859013 90687489 743920139 822736535 591233254 498707098 527829375 177197313 537590708 199301050 710068103 652620371 169997468 944286623 291408476 570996293 1036917 577281348 530789563 805931191 290570246 405293339 273661449 383015091 826302100 682736318 410153642 124450499 310764538 336587451 525025318 878197421 8551747 491018927 525289003 455915015 592941698 496132899 833148930 897946826 678411981 973690569 926103693 327523111 834518449 374029949 391446405 941391576 344608877 247089627 305818762 722350511 598350975 460836836 894028813 490927620 503196005 714758685 932543479 511172234 138562826 562135854 540309123 685721554 728043382 254282010 650612531 836372293 33645740 893426789 198992043 148114927 121170413 368024127 553594866 778985817 883013605 623914005 855568808 381298364 187917989 770163128 173885724 176332891 462090037 206444739 753136653 4309583 530375863 296384114 932848152 350404764 652190109 186123615 53825022 522083666 892236892 854036610 692709473 696653746 545444893 484791817 94084146 131546613 272690547 418158360 734871144 173574434 987881284 136134390 743087079 291389379 252996800 402808848 774914135 204876585 266569885 155962865 318479522 421253844 878050620 823632974 640873013 543591666 618381622 289131849 405573779 509812802 557537094 238042225 173369705 28149672 130163519 610100058 931126347 427937057 202365960 782962373 661360739 78591990 361219041 782516055 488895857 755556434 350803218 405733129 928193370 772040313 188893407 328330747 142993916 344173378 629718859 512365417 35759179 378283291 929398171 384628642 685998823 540222319 602958207 537326290 16436223 510713331 916661153 101278712 771314596 934192423 332886180 608573526 769898910 611377354 680199235 925361883 696107822 449725743 285380414 36060399 100807718 31406625 989270346 277504378 896945924 382505907 845482531 979218619 354257601 621700457 657845754 900214641 814093028 481809206 939989911 963815986 119508066 805635568 374860246 54428697 801002638 517693725 437397383 145700791 420534481 801719586 617198935 557150055 511213998 38686052 81542271 998749648 79331193 431663667 362858782 94593195 79649808 875936465 613321506 848872087 332073523 102869947 432031037 13764233 787043160 762746554 467367930 937951531 308102727 630809368 309656498 81103267 290988377 437533343 81071235 482130771 148077481 167691176 746003354 74129316 706105244 323622435 593732002 74721324 994348621 669258074 309043369 82674426 278441596 285090559 380308168 452863627 114273445 290774101 463958410 153793708 314881925 994960002 510981490 149789400 830210267 178500389 671692292 234480547 216779644 600361074 897537322 215759382 586761557 339108437 473026183 180683002 985017068 511649880 326880291 668810362 549004377 215132491 938133186 528793392 280993623 799703133 122854642 637150249 120021538 161869582 929951122 140392866 763799331 648241225 508730220 624927415 786656610 851694826 276579879 658510321 740327407 166558169 926821502 862162656 72849020 907017417 621507322 412398295 824679264 659483103 671763047 18120600 337680292 43075861 240303524 952399024 418383766 394724859 369885477 929704919 562992493 545775471 895127726 652468265 406890768 727058637 173518088 817530634 649106191 929152225 911522018 88866984 698251674 322006602 509622864 336805035 760458445 710421083 506026518 979982258 261272721 941925884 939281889 466891987 605901615 254048636 61308418 994116124 108288592 501608289 436523067 654325635 470218411 828239952 315609933 340759070 369956888 807291753 767200090 832793433 529392113 355404831 933252065 39030101 194417851 687108679 896761657 914592575 906490260 660476336 17415123 648073348 7723310 185588222 357785055 711640400 384043779 798566076 831807865 378050746 163796001 587500660 538734821 997475906 584913525 286743803 326983498 947056692 125450166 590130884 423304349 451282728 992560849 500438532 61696795 136504641 859863736 946786806 483101321 293826373 373917540 891476318 823583418 160341845 116541050 835272529 150304480 865274536 540223643 151931593 834302985 394730583 48285284 786592369 98373803 858998137 262111517 241941721 361648098 174181212 670415396 329023376 297207797 446172231 204811851 633937829 892797006 950907731 922001660 304135193 16617096 949392474 268848763 414479210 872261588 566254562 599872986 840077937 216370232 900030955 714486596 135263023 644404718 679104165 206436577 907688093 247446094 287547542 340998168 481061291 537889140 196986666 693763208 431581867 585288613 891231685 77517449 544799711 371443310 903847215 526590319 911826988 341124931 907606036 500465797 120215718 604840891 60042016 658072013 57839155 177941396 199467739 815976485 619914058 675859798 434373443 485394824 630651998 900875274 152007535 807509887 296252600 618583664 903845178 115622664 905148452 366487267 664192346 255439156 377055062 127013544 193949718 672305420 480388193 770460380 515459856 791038940 611813810 418182554 972162264 193791415 235386237 204047627 300303635 880009292 182856612 293215457 543350524 201485650 915935003 499370295 575849110 943642679 969825302 991004465 739712453 49600841 849453147 618233292 355450637 415529031 626381793 787005660 398413429 702062116 360050152 215113767 429423329 880604473 897609985 762227652 61693376 189690298 346367427 250982011 427711218 618265035 860925595 95713661 159080076 652559050 32817774 763201702 185276096 621295941 83627219 217825952 96888687 82821701 72762681 750171899 187866651 853008717 164213033 291837314 116962315 934749117 886487071 432036747 927231523 791911902 639776212 633141245 195517375 436362506 189411204 431224754 819957744 752364969 476941976 407514800 641639719 705300216 645371736 511030857 359792282 164977037 488544078 148243233 470340956 15150829 820486563 606220520 210051843 636858673 450263991 908178821 225179801 154752171 75803317 386317779 43872746 618494357 216454817 519356482 553386252 29070198 495621414 851278637 498876808 990245549 565801858 709891169 313892430 150634097 161633245 618995776 789489559 825820833 537090251 435088634 271669554 140705894 906680624 404824353 532941187 773372790 594286972 258491560 41289027 992847174 694617370 898340398 796815156 907934602 234202049 283874584 942605071 803580918 329939522 973900690 447572347 124861775 458340848 862693337 763000246 933633610 229025777 643641744 655748533 259806022 287770824 400301921 116786739 750707423 738081929 909389860 723108271 72905649 981875216 6298409 41853953 717832207 991071502 791628472 375160011 575313000 688950066 356545384 803718425 977093415 770717119 283491058 767727772 445368248 24810259 264977879 314014345 466240322 980273945 784058553 385304894 294417381 526468869 438714350 690886793 861006681 267782616 73033319 928797771 639037450 665221587 648613891 294202851 92227279 648324983 931048022 326916452 802850024 935202477 408180122 892724190 943551966 182098751 67144332 104938556 580183752 656747366 582521133 462761682 844379891 108090685 72124686 435201119 460197205 998368498 540618727 355503549 999847094 705003525 896271064 946164309 467123378 43681313 253841200 700067761 313221060 969636488 9955546 853317500 654882440 572397152 470499846 813287064 140091494 455478307 340080482 565185934 509710914 669882468 623671825 41953475 551641085 318206024 361852547 499388495 651996265 97312706 790040744 499180966 998147205 683489369 713441658 837481342 305711388 317751198 525695198 77795405 631712121 127438956 56972489 768982076 522589792 503338434 36093932 316225788 833572783 321895429 215086705 660827564 74843106 507642781 521572858 336522220 105259362 689727354 497765338 736936819 254721157 783335663 673338707 301094408 260007933 610854328 21619898 416141574 418909054 283010654 632787049 873951268 670689412 846357162 499332790 793780556 978722178 162378419 893124752 624798230 255686246 979541055 635893028 747959166 584915707 827295974 499779133 951104629 792691566 767635610 613714275 260241649 943431842 272553917 70408903 250133362 916149613 153318676 266124306 292079056 809539233 808324987 939953293 297470748 721062579 279879440 685769875 854563472 903447337 621844770 899204014 886866807 461106721 519719726 382878253 158148244 675565437 127305186 483930999 197991386 564249722 692345279 243116688 522618938 613690181 594756675 715119998 787096858 258851471 747630331 120474854 941441353 11296676 582307723 149028138 126896546 894076943 955231789 786420976 943629841 645401104 613920572 394245524 189358551 728551999 975283940 923740051 121084817 746062149 763846598 379677154 161390200 575475655 660266004 564122398 606678467 374511563 26617209 814441768 554666395 64901363 901611125 93023185 742532775 136527281 472543781 994800031 880518764 745065274 995224155 552282423 444228718 431651642 492270626 90006099 502386622 653254937 526419058 859208187 164806675 4435000 209598026 247494906 198704135 547360602 200455398 982129801 167627026 298094437 989076303 909588286 384069532 471248650 7693613 26797751 592117467 52043004 892416147 842686058 463640243 188720761 255789267 52586946 291302044 879588884 657714050 953199762 134486609 103885516 601312956 734629423 824496407 676982830 524886362 963440848 531910663 631656988 808585302 136934459 13351367 178242729 2484842 402716140 776296841 611466088 607150854 626624007 373015098 531642993 592117741 427690345 192507788 380133882 152671502 445319570 178857072 410595897 559784881 911513203 730551729 932169397 847567220 893225608 745686926 156166632 300370947 95798561 287331650 454056852 262385468 403343833 344658554 701999339 497464689 310956831 459940465 364129161 348831680 988456812 992852097 439686648 970969632 9787341 75666594 11927735 929505717 7065460 241205653 942495217 620416672 600152097 906666247 320707260 817904783 330493675 328979765 846332194 471388466 119002541 461921871 693475988 858589731 935447737 466759107 474284830 458298830 248816065 642535711 866985599 918310218 20905536 327650794 113730573 989835626 810669542 257217726 605106595 751797338 168876688 33040785 211760669 901383391 971804318 23783151 89952552 102351816 426601989 658181505 66333040 64790829 309354476 900467276 290145876 723412464 919577056 546029091 97721493 797479636 843730154 999297352 538527209 365081302 247099025 955777433 406397435 474912411 841132164 303273776 7883219 405631190 632525750 231934144 452798151 479167660 844482554 962234323 787355138 636185241 633285480 291644454 72559179 162569570 159345152 275968205 169525355 149259977 434263780 659045413 897666479 318614125 550734557 434290267 207585606 997536649 734545854 552038754 637114152 597711227 856740256 691543948 65007497 792503853 897926211 839656839 404696121 999369558 899578362 984157497 999807158 410597456 955146614 160710533 828219007 37566206 310117507 145455851 546784792 580944065 386161068 242473760 470841522 310898217 91233294 500493972 601868674 53933082 311020982 980136781 348126468 591504900 659755996 274491947 244822818 487933529 818506854 747529464 372957568 518032526 969986311 113729430 793986854 255568439 969877905 483976261 18126288 855231963 3407348 836710955 55730567 107392893 313698806 928003633 537819660 37573703 289555656 757015652 810192991 923871994 873864885 945903008 358327048 936166143 883634113 493350903 20518575 868206929 453053635 830762995 822261170 941549888 259720122 212316986 858035657 10427587 119567130 606870602 262083843 513103429 762229453 940781181 119584812 94597960 811749917 248225444 705173456 766086097 244898666 821348288 714030262 315931763 491399155 757491218 614664322 235993087 802130634 77092953 432244197 991378065 489457526 700765253 162919772 731810031 217200891 160187805 700470915 70919158 705413474 45935358 225703753 455487237 259195838 15568215 29513542 988001959 490664560 648224490 197386184 751024898 933614473 849733083 707416568 462250111 881350958 120918974 451055759 744899526 168614851 482965887 591159233 57444947 164852855 963076228 976003949 828174377 479443386 694536884 756650729 472198049 963129549 179017136 647498977 865889360 888402651 38183730 505430148 990053380 950302950 713628403 455879345 319428902 699043174 252964958 906133953 160838845 472272964 630243064 400831511 58879329 851745910 741101995 653613828 182825431 219662294 112319744 14207695 912090041 81467293 962637483 26096306 511341841 650581947 128376501 60702138 216803434 529597273 794989575 793069392 644601603 985999258 359386632 83315576 842618008 725246788 87838214 398578650 242910895 63910443 836915188 889300583 752714031 709875925 253591152 305000563 112154697 408364890 688101112 801977273 750198576 549586318 352837354 2197518 865890551 600988763 548620043 472258736 473725738 642785716 760174977 286543151 852636447 765125095 638134071 609520620 67973508 432186665 6998049 526863325 84783647 895066760 246093460 391532171 218638092 948867483 124293248 684165991 504764140 575030135 126931900 821851663 653670603 657376715 955559909 505487889 183935096 823666199 785153522 563076401 699289963 752566605 959068076 342912397 883228948 483619707 734732922 376060481 400918273 56801311 404038891 165641081 615908790 475662916 128741907 399294002 777339886 192026965 322238805 800921141 110762957 182735128 153958349 801584784 650956399 383946272 192052654 915973267 857086847 190088162 591030966 689704604 431608741 745683337 591327160 188663711 507526889 449068403 58532447 122213606 19206613 139812375 446048862 855296011 907404834 795406381 844450928 478461893 870457127 427385798 147639999 630783817 939995154 869330315 937628036 825690142 350361330 292475172 993711332 889379801 734977467 91002616 112493571 60816217 726147919 948305883 385829996 879296122 1231165 398136152 689800408 643562424 673464773 985297364 530306748 252480469 982144214 277453391 623871470 556084228 745819288 961620542 143658112 578066328 807980948 472728965 616450883 928128490 84573022 523042066 168498792 467303497 712024395 738898589 171595711 628881835 273911302 640303481 965455803 605555638 485368862 479086406 957144828 675566621 814657658 253573080 341830323 30895543 977947173 999121486 237758911 968532308 525716283 125516954 272949285 433733193 526734569 213116526 616641854 916666601 957068837 445161955 21463709 61408543 910091450 286945588 352787816 60978745 725551059 562488399 354727114 31938280 827803946 104712624 893385117 462296203 215176849 144696530 904494688 358408500 151477445 971284849 734018970 432862143 787608436 667350125 62620566 883341518 440712123 473349098 193708694 14984633 8598683 875411136 252768195 814149605 212735936 763051310 466289540 640521296 595735385 397511505 546108821 624401973 992003005 58666993 292679905 168700842 882988433 573723909 292758900 547694203 958093903 631611097 795185478 25764447 98927969 708124958 580846055 810238023 355622825 316625925 973210877 555125147 133625608 510021677 632312613 823296364 743694804 163629917 485349781 123980008 959342582 308575542 763618152 770158441 368932347 967667201 118163897 877140590 277256888 73043834 62597239 349251895 177263388 786611035 858364763 274265571 156567396 549453948 765782821 829183847 384701333 72637115 947527075 738366217 34899814 606111768 955429556 154180449 292787869 628352182 388042332 188456338 121087702 234847122 263304474 427189059 249852465 222968837 503196755 390175473 751484291 25519162 724880477 608108663 877010159 606661540 854428049 159739700 376783703 969354525 81260615 356159546 319205802 865194726 5800798 865441215 305811280 870809476 14779354 768498731 980384697 464583586 118356761 469761986 928924246 950380568 721277367 220351227 637405027 449343163 879514182 386819007 549208246 855748656 544140099 962227965 2521343 982763316 458284367 804573640 446373721 575255269 889008882 380433407 106421839 63602641 692033437 100293940 317108057 984854052 865986693 603988674 240910122 501780192 788489234 50512449 341513186 349703279 345191213 764030294 741343259 951722930 392005796 503964664 280546167 311810184 89392915 246115885 238465788 370045993 408770236 118400711 355306860 899215205 179270809 526564501 698048957 772285849 105409744 224423503 642692537 52285926 447952183 810247045 829963693 923005186 987199302 341224119 412569310 988546678 202733949 645002005 504088196 985438164 148683311 132681052 791892945 167176602 508141234 678244799 761398966 703521930 388262232 946092511 685332842 556644642 341541281 485914242 334157853 516972814 322050842 749639835 88573162 169127199 302668209 261498133 76692666 216992919 26319722 449355072 348793987 541581643 629346789 8476260 879073222 592908435 307933021 615156711 741490221 937886443 209098541 201245313 112623259 844158797 69179210 579818308 922582525 238037961 849737968 70739081 850075500 118255172 54803923 153801000 281545942 767565909 304209892 355012837 592790498 984567203 500294145 211946904 696759798 920918167 401767069 778308536 980644264 905269235 130834181 298509452 808408415 626614545 699510102 781035089 1135396 184180168 99294269 824976732 31619441 189001875 426616113 69100993 840739266 219016452 213317858 667221203 366094906 445263645 785440960 486796144 899261408 586334279 475979340 682735049 671072560 414462034 158061674 60278328 104611000 822103911 743288138 825691549 428510876 300651163 823471554 506301463 545893471 513645407 952914214 507515087 47995168 790738360 451378165 86616994 846077013 709863985 486386314 442303179 937971444 309867616 443582128 989065882 220763871 519008775 558927455 256114536 827396732 346240620 926822757 818468858 293828699 106518985 86809018 119282223 448062000 390218995 600269220 535862723 424597825 727242473 115854330 62021027 960902061 882061239 835394231 128160926 132478367 219688331 454736850 184943953 745151676 791772698 106777901 259241792 212834125 681507550 439961067 283175148 896312078 255784172 968168473 739142926 860444039 707812200 118066054 220523035 987114176 182410560 738039121 250293344 46420557 704402700 164646570 990057909 766070815 972771054 346049120 216247927 602907509 299610173 851594687 794908973 206449699 793770057 107512385 212966175 175250460 10379646 210734226 839736848 895065113 752224478 908938360 869884354 295492846 315774859 93333834 260095378 412690558 804271511 888001382 631548969 540426583 360450699 500686824 950548786 346192954 504864055 738031678 287209550 644670469 143197386 633411030 956744397 769158744 781959071 842664308 458755516 454120941 467576127 697306642 4729498 480963322 829363852 115424829 632259398 688754163 21795707 956524518 872707750 439051023 697874776 49098940 986743743 516243367 360323029 478466593 492481973 462613621 789775540 305286956 680909326 16754322 176242999 832125061 836010071 784889897 839662461 417031820 299387635 258721411 909303336 91712924 77906050 103059012 64423534 660397005 792702629 487957240 210592436 438134721 489945311 505656973 835704102 128665263 840354007 494025987 725643781 400083442 355234183 469198365 1107650 969417106 681702854 292306202 743062808 82519909 497485164 71333770 669518173 203535572 522239494 344402319 551137053 835255485 861996363 23832613 773836274 280877739 640965722 899428197 143415693 81933927 940694170 642256653 578737438 272190133 924403967 356212365 133821014 903778044 884397882 225365189 430531988 274306480 332267305 702361717 375375099 316273000 875892335 540022877 637217615 644709786 375109266 981537148 622376937 238700463 497115106 448412712 655503970 27260228 304844645 219840487 461425564 154511533 202685433 268006152 620711359 32810350 127452105 918036256 330954823 416147540 117304119 761570568 11539848 615219576 454760070 791328485 25522065 821938065 208999821 313569508 768508225 376706781 299411645 246773651 5263887 963005739 800809832 727574524 168050338 42802393 87277210 382882739 8048269 647989802 541467118 85791165 871750338 2885306 330404963 545605728 655768821 881085195 493927531 177984312 366654907 101314231 390951996 519230995 152144154 47600778 230211712 128970326 249222438 643408575 633267271 966997178 77931080 212839103 920615277 452344565 379702464 13118279 898348935 874865962 963809309 758073159 769917381 442157075 539199209 481269189 141115121 672382683 607651559 347503690 769002572 224798536 302702662 620405210 524275816 60059404 78885888 365404354 796917753 743232316 376635984 161204870 685719014 837277244 956794334 582232090 304708566 82341711 58999266 984424896 260072505 28008270 922672018 966968710 858430757 968302031 950683803 593460130 710070642 384247562 707083424 235047158 514915898 863706141 892213945 389100017 888471304 133714646 116619852 972152836 402395005 815165501 425019798 741905612 749494100 438842215 886692888 412168273 242598392 162614356 506205129 692005128 404018743 990578691 977661060 614505521 97282755 424202017 119680447 587655456 191295633 588888957 724278031 883875691 618897210 697311579 896159872 120123730 438724891 732462255 78257552 288515695 105296352 933703197 685035991 290101553 521088880 926007113 606735661 830682267 736303997 886153801 331532534 38150361 291974644 859517377 655283134 964824364 854980772 267903395 921229242 477114900 313682551 616751714 353626504 265072441 944337666 247112859 53878576 955468859 657173713 744464150 250819354 98109539 37031810 864489731 147100360 473032848 205874417 569530170 245337278 314425448 224029201 325729367 291652493 354617821 441933977 614688086 872359677 821309277 454250630 717938451 992149497 544450541 362842727 100155899 202396144 578080135 896989253 376128880 179669618 849911933 257277964 186179476 948423353 419526021 73018882 513487706 332422037 300952324 140411690 908356236 225526458 990493262 953845524 328689696 732487008 658388810 354410207 243605621 696531663 26290309 460349517 46766680 642568524 38574713 325887029 472774177 784052618 659429000 98224009 630696616 197774228 308606076 623344881 512849520 674810411 652184674 406997962 186074318 730065079 563153564 268632244 728834463 119139005 569819608 552220980 327296342 84939747 216604177 689047831 24903879 132483494 151974786 573203446 79178261 736798278 937347039 921853113 106788528 562530335 704805356 394285793 860973405 545096687 279727787 308165472 832633619 780784028 33850376 158135117 155972185 742063833 577245866 72439508 500145752 214892259 523184977 983336323 561566521 210523295 318609350 380665723 932770866 754283428 738638821 198415451 252595186 100489517 102411556 884661097 79729297 424257287 414142886 671791984 25425571 551491132 107637015 702309664 848670602 254843281 245079702 303657250 473962391 881343194 311971961 715591811 733233409 535457311 914328 629409558 467780671 858251283 102604294 194586120 695600682 843943899 297229752 425309503 385534882 350352792 828539002 234698305 648229636 687691522 418322213 163232675 427366497 349903056 181695574 345473851 6701287 706086527 623890068 65276096 672346082 221824915 290191101 609426188 578802419 645086703 460878929 58937035 2243726 691599265 606153366 545231192 101711550 578828763 39677309 608604565 449745974 420248692 917953752 249476234 616903035 819353841 599039494 882864435 229105770 128522866 52074683 697068229 242168196 326122727 410235857 450197865 982361273 252817621 967236847 755309226 829847669 883404755 658233048 124024598 894155339 681279363 456485678 15643478 119473375 980317154 814367898 419926513 154681677 562085209 55894922 34972493 17041248 57280808 939413014 21201063 408781484 583871148 588779588 962855383 579875684 988213713 658656637 283421197 636172288 265927086 307536310 424379230 958446678 970596249 600548753 578096095 692313993 932722615 5337868 89375985 87147691 175313058 92628045 771731003 438177406 244652731 56159524 332921224 370882205 471689659 895265221 909382915 150326370 554379577 611719961 250249031 14029533 414484542 99812328 568915914 630943878 899132588 76359911 852158075 829540424 22253674 716977031 519668545 32392197 159076685 561263896 377987347 679305892 849079914 926083298 311135529 246589639 80698737 567857974 901101932 598404054 891757076 983160236 375245047 774810756 348748928 578240965 620443316 474600443 721615091 695501797 878020824 11501103 490839182 321793994 599790033 687314696 882119166 26213967 958946244 133834998 919125378 975938750 286533070 328405860 766158920 679924532 432571766 846965721 126617529 319764170 604600392 906713047 713158282 733668380 733713009 759853874 384618769 38094666 834245170 162118989 436746206 786876722 735570323 740700860 394901464 380699458 759829766 385865861 727448546 935988742 821882918 547442473 446760154 776270987 718470509 321308897 641641469 7854819 757069049 801975742 319398837 256812883 237558389 186448349 80776733 215764945 373677876 241909924 245121406 445027186 626468470 185461186 228636644 605437961 242145212 881149283 606103936 468113985 139319772 706151956 45462521 646620958 136452097 648235390 602565384 270546504 118470422 675262910 108897394 231031980 356462959 575651371 150548039 238395767 201375337 751148904 95477729 98055221 766571494 612743739 301615324 642404600 36669319 239637170 691735991 435011648 835469393 861401131 296531519 258682563 19109254 571404095 527165774 926806795 780014678 147377802 952365325 370619356 408896361 649003480 298818120 814919538 788932850 392245286 170188678 720677228 212112875 539185908 65072232 298499021 182874444 810126444 894253291 521701120 108564526 214251531 825244856 669158834 97712897 153526596 866769196 726503842 499497513 813181802 437344417 159152260 457199025 197449497 22669604 465929961 874259717 518029153 420475987 263243401 824577914 741574083 498281249 802814533 192241874 93373802 482794758 452982410 433187899 711327001 497904510 310778502 175108853 193068326 80112644 771170579 195963880 314037239 604146081 263406143 952285084 488064679 235876347 944341581 205941871 780396153 677700097 588538107 158689895 762061715 563053396 483215396 235164721 216955214 759487661 212833360 46256962 925665986 868858088 48697886 487411108 246385469 768790822 972076722 698108760 541791752 659081084 476446766 532681821 478711888 293403057 587448282 1030471 162636098 655610598 629052652 180130492 245930364 734222636 955351446 700586349 922016516 264521783 521349141 373041984 495827890 123925457 71637312 682581706 180678169 396843141 207494739 297126865 676205751 241555665 934317696 630162612 194336136 959498375 468037737 851027924 691606392 87813839 953954108 383983976 284643077 868255300 831896795 182926603 885628671 973095524 30572021 12571892 608824529 965766584 988042369 655634534 503191933 56612042 100722410 923450703 146819567 270044466 988139087 457898920 859651817 390028694 141714430 844446061 4035261 60643032 987580843 533027212 150157969 523755653 297893113 269555452 426969928 524580269 633614500 698893798 755961550 359336789 412088256 872482685 105604250 145952101 657027514 56846094 224941915 520287819 131414481 663981023 507168568 663188281 502655983 545476055 723548596 714558509 350148786 948209419 962895704 765161259 6952869 879537655 305832261 674572628 121958089 229498687 877842970 429334702 982222484 168241232 709079296 832904095 842186197 458528594 516904801 286811265 319775254 369004766 290622829 925387452 530357887 503424440 33503742 267903780 92600039 922862302 939287372 418408902 925872595 383360961 127832541 632791499 468455490 189522502 448334103 226936544 62264222 87201390 399884922 298442014 958943707 789243294 309580941 182269223 52166470 539579460 74001474 782945472 498153836 180539745 709275600 604433990 212071636 654453529 774887540 475207145 606491477 706204701 964038910 585953931 594072459 365124470 867830892 164264049 404155368 80673645 593058891 101817642 287451997 828689734 220060184 618865378 115693092 1603297 840308878 80121064 64132772 85760495 306156121 140258420 849034125 383739019 865679515 504624413 418166273 106245281 830498954 884507145 390274880 608363175 457358160 791775725 190732236 416541762 55689506 152573236 98165240 456004852 699473143 564780416 122003496 853587611 260916771 229360400 175138941 737792256 503755787 876622440 241536934 109444147 101600986 533564683 204936464 197674119 812196332 700032657 213051810 195458732 660008894 310686716 220811062 671887688 946492765 960527478 321864957 354048398 826863608 395001611 278673714 568036716 939147158 240926695 153406541 364670155 194706454 772966508 122065951 805973438 217889489 146461394 868476553 817983141 656902824 705159477 589127352 618109838 315296379 13002000 714042586 362567720 455000780 178446353 150774403 999118660 447974475 218492223 917640823 736581665 165521440 676724460 798647399 592644419 52926817 272040070 655493969 807774124 531977470 937380029 67885977 608318464 265984217 832056913 412445903 755976999 831548598 192621608 274979611 825261140 338899441 200556850 775334272 168637147 889267912 275826584 868358869 983675920 468126120 674585763 14812246 891578691 682554065 896440182 791458129 502139637 661622512 945212631 477122512 559380908 61417717 592330355 551696025 742331999 559814654 982868231 999596465 387342055 238697044 560017953 316105236 613077583 228390917 702098848 399149179 122453344 213103425 770544667 98044155 683642850 715741603 557890428 107757067 626214377 550407450 969536888 472810459 4189570 421289536 284634186 46691801 699851078 166467353 674973790 883415243 518737384 998293846 158053755 748083610 633894531 53878815 582709372 73517080 589027545 901163983 115653764 300555969 287368642 144420286 235986047 718730898 53448916 287573688 943008637 250980656 456535243 303356388 752484853 361166576 227281289 781946009 743015067 155577301 239851066 897948159 870169449 425220051 831613145 17279437 103882192 732692707 511517480 61955267 785479618 312533342 250081415 370204879 28659841 277478617 211594022 508949360 980417918 557892612 427166817 123639352 772976653 553881916 23393742 512446849 861443502 889890333 346160803 462782353 667878821 321971957 547650343 63945458 600184031 110241694 113387619 527788881 214935584 311398783 12892704 580701140 403402885 351133240 158792631 104753827 311543937 656612734 990064287 374489941 873692 191701700 952867045 277769838 222065555 475247077 242830367 11902725 503083695 795350484 767726473 741926989 35099286 290266236 720903980 708915711 634492533 799956572 767553248 939213746 722736204 513378052 7971820 621436096 101013460 50933842 151225101 691847909 557504450 785186234 211213249 675787435 36354178 36483082 326508853 559726585 960765920 279927645 360501871 932382403 435641260 360910693 203341485 842860699 147522826 524288864 787563583 787307273 66491379 210025057 807444079 415607033 453814794 840242694 717566715 571475472 564008493 901720742 849119312 651576143 896522471 319667500 725697296 75935585 229505983 504641330 778397449 695931325 206247970 83078532 407581306 410559789 837382487 247327035 585512319 443736039 405925419 751928821 353157505 179473331 212469735 505746444 153239183 849721377 19014642 503845183 588245363 549290915 601372615 506999404 753867414 960728484 176714750 726960538 614458209 854537074 234646579 539494167 201665609 9047990 387874318 416522080 335280840 744498610 810657574 38836575 328497680 965586841 930235245 653471301 675216086 70392504 762906558 43996446 567334934 512763242 514847337 290809658 330076065 846580292 560691030 618511305 545194927 73647459 480750874 732708590 235194034 796425450 908797643 878284079 590751285 914602790 583288567 167653122 911109670 543716510 599606079 963554636 996684769 340955748 902704087 306564451 742135478 653554765 925648223 662285168 780289986 871878458 701892 588618219 803085208 180510125 719248290 862927662 161248156 561071047 668997558 306241266 621014656 395656198 326533215 398593109 36946805 339051327 879943328 880812141 16741294 13996029 397964975 52263962 363292693 180098023 919132499 412428886 792534242 480018018 908383760 425874449 681315423 693437156 472409895 960689295 231884912 503968091 616975177 202995128 683184664 347503898 947323396 301160521 589722180 737198328 586106422 64769131 625536521 674239375 476751629 718111788 295586215 119672010 548389648 754940189 188549604 786262946 452176037 562604584 394935798 53154069 118070870 556570285 704014218 431582741 870600320 140536592 185579145 378302621 22585239 308312072 990534467 288076189 425951562 791621623 145946130 571257914 221529289 392894805 563042559 925907103 540093427 665187852 702514170 839859637 363426896 35949550 320657808 304081537 732738052 287062236 780806305 208995546 637857375 187602277 664820252 200247687 162556270 655388442 895964664 724594383 496849286 212013553 738231386 343769373 538443592 276409609 653002912 224363953 410732765 950424199 451008009 350855784 690014107 8016896 205476465 711893470 68726615 883716985 953943750 547859134 154445211 69497634 512701043 66382082 930162008 930629347 998142555 218908674 980784866 834900411 195070090 469866136 948777617 397451840 375154728 966939950 404703766 673715234 649171277 881478419 964028703 376727562 985838762 872565184 377271534 722016641 331871366 346098094 973879051 391319428 799513166 65953098 369271250 999695084 612893000 299555006 554960983 70938416 291878770 382771204 955287931 429546323 913700716 316615428 659659170 643601858 965560722 365180637 155702960 357421629 478045879 396387734 259008776 82509047 143745513 238932729 595496511 335317160 726635262 822655777 476359263 941160311 804363987 169715465 704979117 19887171 943219600 551091420 769407442 182081078 136505606 841741160 165376139 125985726 363947897 43486604 804255702 289035332 629644848 167455951 509494416 608674608 853790379 603019783 329457999 948105239 17006570 218792328 787308447 443174922 96502477 756526012 394037747 70266525 58755672 697123240 588368067 800978916 825035272 730039956 67484955 343003066 480868129 682491970 96274778 520618001 704467329 97166690 991711197 987465241 407417816 525759163 932494670 772271337 35874329 818313348 583324782 158106852 169971951 403054792 315060490 336088330 304945336 355793717 683230429 373420896 762771054 490716446 753006309 333158273 636646804 482658819 161865861 75019500 894801333 199248902 451161602 216902488 775611913 88990741 463678912 339898494 476602043 128553009 903734081 621167025 740967957 784340772 467404250 326773443 368993457 564069098 32138245 781708811 8587874 242311009 238331290 30799523 700971681 189936028 570786091 575536327 682708538 359266066 157970424 340294198 612067390 988890094 175311563 115923290 909529294 758561754 10676396 531839534 952031048 748249224 172502143 834213310 118566211 710554814 420364571 803973461 471874991 279379647 336461496 245094357 540262589 787745722 409878304 680534282 972778925 982573428 213351962 599080518 913263161 591492627 50430239 639065528 567818585 42052955 728304165 684355748 476036930 254543684 438713008 195620664 738842936 711643306 637672931 503130753 992239415 211078861 3525110 600245646 167957920 779062970 950810378 945676868 92588036 548567537 801874554 245406346 373849003 994409808 684863027 579545394 590189892 782248904 33837496 147931867 150907244 523347456 85391836 838570989 134463916 659519557 716109685 569905774 231698685 36324288 916968074 155584163 24255521 283622783 525734590 166187004 169686536 892652878 252911316 820682005 128161990 86395583 78363176 705904355 895880408 897528344 842007525 572827350 635497990 883685898 651386127 711713747 645435168 485892615 321537298 246536428 782635930 719940881 504641499 200371052 330172789 591022167 259431857 283015543 306147765 431452024 733202577 748946163 441808149 32497828 576796451 205710047 437327283 701554803 366788388 419909425 202732939 989192419 896852860 8314161 555533449 221874562 524734971 536407220 230268055 859987901 866468884 472913391 525371660 545127580 329303184 523844247 8792890 923109194 842633182 742996896 706433848 279555805 504072853 385778532 919234918 792264612 455464599 275243307 874933085 765805544 987925528 822489433 110559889 338209433 543973964 309686291 919027898 300725189 988017472 966076389 142135715 902447381 222028747 40443212 105047294 831883068 593476405 817798443 956935209 557796 371876840 826684670 233194966 44303351 574943273 138337055 912109588 612415988 788403485 285453512 126957925 761284218 461961729 153173831 923547270 790232635 369505442 85370885 63587384 565638809 951945153 346509225 833661252 794813959 921701577 40287682 500458925 838487397 109451271 392027250 961206290 778433699 239905388 377620697 322062576 806134151 631099030 108195811 973025533 190001151 566804534 784826189 979204850 466536102 629186360 670696721 13871702 159782717 392900813 338892446 351475496 693072144 29055723 825200068 938919638 141590112 461418285 582114608 423259991 854034920 386809852 127018941 975142734 604660867 73582694 690511483 994872302 578248414 781464169 10420312 822347326 378751845 762494289 35402450 401825937 124697501 93889509 580315559 688027618 736255369 256279403 922585708 201264523 115860944 761511966 591884253 824970607 986678175 677917555 715843217 605503069 66952347 317447903 599056314 64480256 568992994 180525077 362032131 899461208 431870567 984667688 748986488 334369807 823237828 812025839 645138616 191084887 350361449 269184999 995261509 719161290 951154663 274437702 565622614 899256488 693869141 845460422 683392450 159145736 616533270 929973559 697880186 726463060 285849771 783851885 873255497 697027885 568911891 99098286 46137859 357317491 343790287 502542064 204637795 654265295 886687447 236888635 946223098 342092396 779982462 869605186 190817973 947999970 298749971 599130734 438226390 733694821 7802305 763643599 504753393 996923888 291568969 106913097 976949172 969138459 809517704 999382682 30018406 367885904 319109998 716846948 122473412 647542086 100905117 41060420 770214234 694518108 879398722 650721350 932995262 345187618 941082598 287479003 526888608 572912000 276508846 504482592 394989829 906887054 165131900 600444454 577084477 645830984 332085680 514538011 784563408 488636510 352312547 43100513 955576285 343902689 733768185 663069856 921470915 809531876 584838196 408643658 248718715 774387777 352339869 624522220 780181211 478173274 955509554 330618392 237417970 485465347 574020354 156948394 716290402 907005716 528988673 18789480 831446873 372956892 674011162 840388824 350621202 316550832 115242759 280095334 432180602 540762039 417057987 315784884 300032603 990471644 461715038 371355360 963977594 441007355 583576737 164308542 174335084 999473286 175448658 540768111 860382324 802565671 193441794 712026599 8120918 72339867 901184280 952936268 989478903 604527348 735523660 882948850 664968532 264207911 860890446 287616051 644941664 834897118 699851210 647872272 831807286 73837319 697130209 702962479 554784523 171761265 853414290 980568266 218349280 440786770 590789906 586166464 733127887 677600323 634534117 39850481 32410334 29275931 491962321 316587305 370362437 885431851 807173227 519292159 924073081 383132914 346966393 528580950 743719959 137983840 434303659 659884524 641235255 786165389 748386841 224507281 726747495 314502233 383558469 147483705 942888659 60453412 172405523 599706678 608150401 504940272 79105024 243716314 447801919 214723626 327487843 545770930 166720897 122168154 371197394 304292853 723933981 780991624 338510353 795956055 92385261 447413215 515577343 283319522 597137791 280526630 1899288 381224274 941865184 296679586 606840285 157061708 423360368 925290427 675012100 359490217 725783566 654662650 62071753 527513994 590476197 851936584 498101486 632192026 712370893 442527959 613871874 138764288 337256734 646476266 17027718 942472507 956029858 926652354 294416170 53012229 921248739 904676687 514361747 466602113 807451282 597675837 693097331 998363725 612465580 97592917 314641547 498054478 423523103 352996487 616787612 168301953 57430049 313700503 168267795 854722743 674675321 439757434 626102031 336473863 450506590 678065703 626035615 852413412 317907599 717204910 393502120 336189249 777782506 595091476 113117558 449056014 492851681 975842917 458537608 326778621 882486262 213264957 615879782 897284140 835685734 638898242 920170900 599061052 198769989 367682253 92997616 946012515 61885964 956399391 128570375 518790258 417640697 467316025 277837475 279581140 72586587 942091086 906074959 503737251 716740314 224619042 784975679 431041701 559652734 795130355 17498726 726064028 962214140 814933754 45892896 133601502 512533628 406853936 762146449 513761909 78226190 726953944 978138043 451179897 317659775 372041191 748500009 451968856 292472077 232062174 253906801 677736168 522958433 457462070 624746781 859347587 279939900 91540339 861171181 460955201 124630369 116829599 443425484 852874478 572937657 596802946 690443300 31151421 671245251 48384099 968164988 210480778 417109180 556547599 529180595 156969945 263190310 196136063 405660422 708506177 386717423 407186114 282212611 554588935 29919094 240716020 936109944 443296788 355152861 659430787 186777419 459632747 935275998 256922833 104211309 286591494 995813806 821628805 330278576 31668731 914369691 310779425 609685884 477666507 160061265 923680261 916953289 431078031 38776385 221261023 888081335 975025478 659995123 588457469 211978433 619758998 107462306 80222477 395214202 277705928 780460464 90439509 283098263 766615186 63521231 143271565 436909323 477511564 302856742 9020881 861746768 464076386 753609377 254476660 484113055 916553743 548974585 105499615 358719180 860532027 139186905 412014643 16274591 240408724 721522128 799514480 111263393 517356783 485384444 317975132 233605377 185090021 479644339 776370745 982251124 1438839 96818336 982908464 946185666 806807672 900196811 174983068 193247690 552816256 176035979 595295030 519552358 595353406 540711347 77069551 484199120 313678405 408137408 373079298 300411973 419821127 837530717 376005254 626015970 237647073 426289186 289509980 167414268 793911560 620894155 530352154 388404003 122701747 450281052 419151681 268972424 911260531 884168783 399487377 265776034 679956895 442325519 288549619 171775301 857808162 267039908 877626918 175739271 420138186 902386014 241250128 163661194 284991365 677306061 883715575 124049708 342347926 970815651 50586557 668837777 858893564 931479915 533258731 453835144 788036363 807822860 626003156 403871975 928657818 204121010 562113611 984469338 202232283 916736258 330231253 105824761 24109493 114705112 107315964 958691208 757894563 365692856 135587841 381254590 630231231 398402617 247699757 593630412 665422431 278049948 663751359 325168036 38687651 338899505 797554126 299328936 539461691 925667356 877272816 633517542 522781015 933836233 160488157 767057785 185234491 651225273 116749562 956895759 29872921 878091342 985394918 695722820 245210968 9293267 452202674 13141946 797650506 885972958 828206028 865743936 909673324 789948529 109793275 689442282 759576530 371857997 493357313 23263121 13142414 771453515 899487458 773900221 503218531 995918099 805226865 897675375 673568317 48790879 544543241 4266552 44920166 520353455 769378443 248022498 136373696 515434498 714266381 361831552 907343823 468210278 417709100 879030808 661227866 219552671 438786811 992009988 681176527 802436576 33142624 929767037 317865635 29189495 735788080 884574430 607554458 671385205 967699482 909076390 84672213 184324038 660067800 213980007 45990390 944002731 864487107 686733007 8673438 539692650 213034444 90269144 665544048 153928887 404902858 101982047 449845045 571464289 744050803 562165069 634628371 108885302 329706033 283849580 469199953 650833468 57398146 670054243 337309136 25339523 800115783 358573079 368556081 97009425 185181319 966144766 125926443 270829395 116717962 497711486 108345287 286109608 389907335 663428869 883749545 826504523 38857150 461747463 343838157 177977838 946350312 400657517 144944570 904793295 686937399 787288223 667343354 737199897 823201457 456861776 510375313 758175616 208839795 559432330 358537370 442423580 43633178 964625173 301312579 492587201 672652240 901536244 557344620 33770850 314200257 650123884 528335162 310369648 974605037 102141633 445749317 321229559 126714537 513624504 983422025 500213581 555645668 740513253 696346384 185994649 471822325 806390578 772883453 361703200 260844494 591551806 468160273 229211697 504184959 629546974 68922123 866763009 300778612 647556090 585399072 211661951 206050523 532763185 241871125 288824061 167509956 98373117 711544282 583574951 422525042 968211550 692545707 317355220 969208250 317562443 705237118 230868969 792817248 992623951 358797548 86451159 566271715 382575204 526305172 165348103 874611656 761238081 863744105 365364516 411662116 12809028 557671188 669941955 257386851 746172740 949300234 775303375 195012395 589421714 441494689 977979032 504160958 984544592 927911079 322382326 554028784 54656574 841427750 845170106 70715231 468472254 834685963 468324660 499981502 796624229 291067731 381696509 807668915 693143080 60130280 221726779 838400233 862073062 207071338 883927211 781233269 402146980 357528219 351976614 999154592 410637482 897736292 351003588 421499829 803626181 739536576 338175727 737665253 24295509 528492460 947510758 708280136 251998076 822541339 73138982 828304601 7473377 404006221 143094711 610546593 54010170 655687057 116161512 44412266 721772329 546756800 844073998 656804067 165542309 303448725 554110857 165037658 961190215 802711946 837477180 179210039 742525637 326072729 912747674 133766545 827601689 957299054 232525985 204712552 867446631 647518611 867540804 814392639 770669731 282551452 823226451 6984050 129636670 961890176 902049562 896583183 911612873 528590172 682741123 331095121 389437680 316660524 483801169 16390301 970078765 747330309 703427282 702976616 543270860 368229537 967737674 692188655 302816666 236989963 935117015 711300803 239127115 575471645 562334288 439306598 986955645 420694230 448002979 318638524 709769739 160695723 206635624 817034351 216694752 744218596 663106926 86108953 231824764 323016345 994455241 459442897 688150420 493383326 559779898 268870344 14785949 844732892 651367856 941882905 727803801 323771212 620885564 332947164 326310745 128659218 954787896 223100908 367376403 137312176 865540582 352672803 686694783 65702364 478463051 175325073 312548667 922333248 732984187 594921422 124110520 274516588 753551169 894380814 786624566 183489356 575618441 915610191 515751749 89935178 966525148 194417919 808064975 974280715 563421749 759420774 585647649 389174875 22497805 921151506 794373493 349673214 436971476 829548311 397281503 204950004 851092499 525359409 500965740 734541894 224617125 224325327 591348779 356829131 980808293 990184693 878634078 931085399 78187162 359079637 320723753 6581566 948226610 446737334 31203314 22048256 525041529 266930977 719667875 882154346 362984319 789124704 84251871 690834331 692813437 378172068 865145923 14266313 801308839 747194777 754189780 974887316 949109336 235562349 858324679 355692996 432578978 160498920 100401912 451704275 687294808 362783558 280032926 349641382 397089661 378221903 354306594 54508911 258143211 79546047 685125018 977607110 393836275 81496911 335765073 272012256 847204091 494450718 49404990 80039057 946635634 632134956 755909509 299944180 886064772 43099886 858095927 925692539 213369870 489173552 130158813 229563949 115555736 895487298 292406989 252329498 681941938 411262263 476838445 497245244 354500645 686302649 801965643 205468037 305407260 45469574 464388145 243020759 365208051 555984109 477299185 55706337 951699797 400744874 202929770 454756829 371796094 691585646 522377529 38044017 203986248 246101798 602185823 887891476 650699307 740016258 966798504 147855261 260344230 228652281 381169734 931062239 60765812 992761798 988420622 201539828 750266968 49500801 689067858 333356929 643095635 71700398 595098076 860242344 555318958 393933437 26050481 259090944 106096293 415565818 657813826 815891218 81708811 319101448 173641875 10847779 669140528 243288623 969080569 639731201 132111772 234593818 358142476 288771709 98347507 848295431 930855588 225741540 125065273 923824101 333507279 466074572 252981198 801216430 476609790 349927175 672830825 917329543 114641680 289396588 348849556 444665336 336993268 887159719 932174241 377988814 280332176 859901893 9684600 373617936 804196172 185767914 224710747 616449255 386321528 410362373 892340336 402436699 391336677 647152395 411166394 680704597 574277639 86393053 536154395 741185271 450562375 425744207 776492494 42844858 815313979 9880683 416869034 413499925 102980992 308030573 869088306 658754898 862000931 379182326 714475767 417851142 616537666 779153658 196250667 460420660 922233286 553660356 650783291 267964213 729456370 727646848 67020447 273775505 260194079 546845727 319107508 997666816 517242659 874294332 391817516 789547413 60560340 310281742 433383360 574026648 90778545 381897115 511939064 417586238 486832453 233674108 463647202 525912098 462279249 527827918 641539802 195729966 154794956 327638384 268771492 54576933 229220048 208437961 521893869 442189314 593788056 482713853 407352805 475112652 835143569 843828882 790986005 68174319 474519586 954662811 852210677 433174592 733030659 884417095 672631544 579694934 803067375 980005109 437138057 695827793 783635804 135253563 919327127 537844558 189015547 108062852 211166877 533401225 520184912 271876545 276462193 901552007 596079405 321346439 537807055 207621710 692375623 669592078 35379807 756286773 374654964 541667646 710462746 684917823 562505090 251068478 320034254 281546235 707179538 199633343 471824181 895022999 344488867 895196589 101129097 201327096 38675722 110885221 748509814 947776385 149457026 725160420 770809866 92882222 780006647 429166393 853209281 707393370 534827671 486516718 491288289 15837627 708759773 421738170 523622870 847056435 604502618 597228824 368788446 223045396 88408268 907127546 862866859 751869716 400973870 341486120 288259014 230846427 968989001 109726283 339175470 434401341 731413131 736063577 256289507 406280276 336492111 711378818 458169987 598426586 108580430 537446271 301231382 137871730 968155025 40160442 177025182 489347994 134579838 781772311 746051897 145220061 323172136 492508157 332854046 919850026 887407051 679933346 635871281 429172862 962867109 468345675 662285731 981233072 171347436 402602150 360296152 657400659 700952259 665116242 881043216 590231199 240235423 28810216 942614731 940163827 668080449 376198442 709957296 53736132 251668119 974638755 424514911 588629885 94054374 615048971 462788748 756862067 909388866 426819056 415460643 313223861 309392522 487040244 169695490 79394078 394249554 494968329 7082497 863685748 579931005 730777557 747436551 46447060 786811943 774875370 945307132 374792136 331579157 354692187 851365112 645393932 911945188 146806270 84187905 305910754 650910748 991262137 52596860 136867176 820388918 900471349 199903731 302512257 919733502 722652682 317537332 817231921 336186909 276810100 465655664 603215650 396935262 860662396 881699005 502308960 938161249 102945196 799867224 772994638 902223808 518341322 636842083 797703351 45701510 500368880 863888778 823020635 191062862 61688190 498070695 975242363 781616956 981845041 44621204 382270431 841956867 831083876 244871742 619241620 766228525 524594749 602566920 464548890 721920620 510378771 857593734 491360410 866218449 641006152 253476796 801977805 572634071 243728983 558923159 272619381 202784525 15638707 151772778 735262309 843448752 932430573 951168557 491630331 901186654 520116314 476709730 524311675 668576098 3528463 558985021 851859120 96376963 760039783 860397761 518576520 898437049 70672281 947194766 419308372 888886754 803658178 301394586 126033510 78631174 694963631 750482333 237901778 557881668 999047297 761436385 174507971 957390716 755002249 970295885 712498937 966793672 140233490 135037148 633863755 101785622 454060657 673143993 336172908 468041287 764303476 315852359 350742525 995088467 562243763 312166136 907268221 232509308 348843660 669574510 698660605 907742085 729042730 906583570 477521457 872861645 577873815 643831869 468880032 41364665 204939971 398785852 706744888 973955814 470163384 134073904 75683129 287331184 178696133 477138811 262346715 465875177 648696693 64824810 644020630 131970358 142526751 789696979 488245881 611019438 580510970 191739919 925446174 605468904 611670797 820648406 275576739 59914726 319892436 144002913 297086909 889473165 102408646 403887431 241432878 142333515 822082318 616015848 41651643 548167948 521559371 961419069 515225431 10902244 62330446 241369308 813206651 206053944 999775008 549732362 512494869 222259411 165463452 921748563 286911261 690943677 625400146 554475256 205716902 462679671 739858413 270625090 80154741 954369272 18755412 451535921 730191472 730352611 331862305 722583234 719988658 984937515 240734726 21649965 685018198 739233964 524231515 120559805 439024303 478067265 449148591 114656878 267751012 81424954 665780288 762947406 171794008 770385279 516294423 398608489 106090825 822008790 811188120 581804519 967681396 481312181 770985868 270541229 460011930 648675662 366275899 326566336 826395063 35598622 392660635 496594420 218670981 761559821 173922402 462745414 118433551 24546510 314937505 369181972 665386712 611901854 911303559 19029077 673405576 715109561 974929010 322576824 40745516 599844666 28270673 987820829 966754930 490994453 261935920 484664335 756191281 229753413 701768195 921288862 643922969 839434345 515245328 481552563 295968429 876110694 259049805 137820368 640357682 175948269 558371218 177416129 703263678 602855058 896689616 199303168 12179017 796537480 816130153 165700484 118966119 299425927 890078869 96413344 97595994 69255575 178419066 382971058 862290290 742486678 276002622 389238456 921015519 94893897 524346598 692364766 397066971 709080977 261773891 649641905 931992433 994995861 369316464 703918420 736648866 129434017 958600675 677698338 566940989 881394399 237484396 308704999 811522725 320331970 577986135 79449960 813783688 664248691 587022941 614390899 430687887 116339084 646641365 838844604 880856389 524362292 803384704 17352055 347069276 679018394 215130643 992456999 350825972 70123464 53563897 158028370 6178614 678945032 459477223 117209890 439473049 918397019 343639598 454466400 594051061 371738524 206411135 810405466 555823694 188398298 305595916 633484378 203018162 480068838 669680670 445731161 736145072 954273055 829798107 740632268 88813573 170801247 971706913 57627194 754780825 890843461 52080417 302865191 13664760 622252934 983200806 207944483 250644953 669443542 802953359 300095381 523537733 291146182 132683957 712648990 526364768 371186777 677349611 808866337 599330016 43212870 184528784 309342556 308912796 296617628 127232228 370658590 329998160 72624749 807484602 809531385 12611452 953129764 382327571 418250181 104014560 629149273 155159413 658957833 894296479 171855434 539437232 546743063 355121468 20956735 205459585 811101767 456463030 112346637 673777934 234138849 964259126 236378571 886552183 982412566 629044861 139231910 596429669 977922599 559640302 113354437 461899220 64607855 9457364 202421139 948667179 605173430 636232555 64619015 981555213 115497854 22895934 206298238 194924486 121196618 247225085 754462838 420790253 32578594 507464326 59377706 619725269 65232530 247633801 15862603 203438042 902377023 45108154 283620108 414120964 301044248 585552104 228182684 91421580 735972577 555408372 214409815 704582748 157382554 343947249 293156022 667719288 163525025 162809537 515981757 623872168 198785557 341209276 808841141 133689496 225078970 61786263 576105473 932854806 9235608 34506735 671430359 326587909 715635086 482596436 737835143 999942854 804260939 417913794 792401501 611256467 552420025 925081265 739515722 833566449 272246274 847928721 703660018 184829451 253477010 409058478 915071192 563567237 648332107 558475300 73126075 117457954 162609268 352943529 658571180 926823064 985657581 496215009 655206062 85143090 53039395 520932201 447932679 63016383 288085680 951392039 319707679 460257992 315295300 990221701 387900944 591685656 13311962 339938379 112962773 184555708 857691505 353086921 935613435 156982118 349161379 208922681 374668629 378071876 873586459 972088543 824755136 742036150 729688077 853325982 917156348 193848205 439817087 481062075 700874961 43402509 99053633 598964792 534397488 128227100 152715954 101800083 809803996 151063839 417819723 689995835 52565942 821468691 360522006 543005136 188305842 658377982 501677216 964820926 366856721 634011067 76630203 317444163 210540654 964685586 845481287 43015887 731068900 618797824 938369134 565080664 899486202 974627457 403539914 352425235 67177492 889937692 586910626 906759890 28349949 903894137 297476557 925899582 314266395 684790535 898059 963667949 15647181 638091427 974213145 571324604 893920612 794191439 991720520 860483006 777273162 502906361 107637642 673399222 720293329 83624075 571745970 364978685 85867843 276646846 681266633 58729017 908496951 263968573 277672742 490019330 54560454 799174643 246974599 767316610 959456957 301968451 200441425 168400830 462652357 362449596 997838415 66682070 571998306 465695005 122018189 57906295 920984342 336092059 320802857 746027930 124000621 746448947 523826549 109196398 983011819 111331782 326540729 725740743 263940681 449701716 26700183 587362611 547974100 629437873 358614998 426820695 711352859 454237602 100123416 839366875 9611316 927166389 260914545 583667577 99741630 624662550 456599449 918599233 122867270 452652926 399624681 945355588 818185232 657483049 907985002 42483349 295653834 996617473 961543514 814777167 588156808 674225700 21653072 629392844 432581404 904549350 851684059 176123930 207909470 558851722 957979193 927303991 951973340 400675679 31514442 883148356 295098129 236661103 511250014 401449931 755759768 3065257 232304852 412109477 958246480 7034750 319567220 41519712 535369084 653394142 173324484 367760982 906660042 670054787 654938076 287558495 509244830 194128542 136666907 458730162 679823889 737936109 530870377 986157323 837407086 600844388 509166075 738542528 551325566 49369533 788413944 912246240 667310191 202554225 349121598 3740073 655393289 131310443 307360196 751615827 260025120 936235606 71081775 397583460 369929302 880106474 737737129 168828821 744407861 797638213 396448290 378883534 137951380 240233618 698197890 112716706 616598678 505594129 530670553 298632267 952515787 735485669 972239929 896216706 700477953 971185109 428548812 573118638 32558458 236313820 354962474 380125519 573027635 966257138 176844800 63881850 437458246 174117516 615871436 24510918 381278924 99509918 691210759 193679534 289793106 823362213 995139653 2793034 936155036 55817259 574000678 507438723 954837559 389054168 191465719 797708530 807803639 2685826 692676048 647247754 799998639 691920958 300479939 106121104 628568334 138014678 613944000 908841467 200931354 490865312 348542820 776011339 178901475 663140240 176783251 379144551 413303202 387558825 737087784 15003854 779835882 747404626 644406111 644050642 299729984 835239446 577833990 346146843 809409942 114662233 134624116 566863215 75725335 437331956 143909112 649806661 556985563 556748259 945519946 606972188 630520588 340922023 131700165 334532473 61290508 755016476 602148581 679132737 50208261 348965968 268116374 655716316 456326944 597601412 229255880 89663803 920558035 759954396 615081001 980475799 234952191 28613483 321559193 478660000 592887688 245907193 357998880 905913922 61938375 991895931 988215771 644616383 301945618 682967257 14724983 529582341 453289209 745057164 920463925 17341916 246800504 906766570 847709145 912128972 791316676 265265152 284439268 537940801 617774834 820394649 769386292 975274696 487414499 486122730 308998137 637363012 425528881 420029425 135077184 9767739 981175069 452286602 840847842 572838821 333584758 672857718 933189065 928013110 621086691 19102918 658554598 355340068 989583087 695327045 368660910 116966329 547096449 400524900 207850210 216294024 725786916 498463615 640393585 260540213 138127388 250191389 690749017 178006482 308531885 980006089 438675678 511857559 386001756 915606706 18183744 542398851 201029020 397837248 37847031 83230760 933360989 948301963 579258820 668261861 924001911 167621174 489574661 772636068 682285727 399769398 271273593 939530235 259897666 850990349 120411683 910149360 185311605 716079171 515639668 556268011 601459280 206044591 128626006 134698293 194385106 249179975 661025626 939881698 685745936 319974788 839987605 213763354 648088254 964589637 73750918 989466060 27992954 175359088 896180880 557148917 851540961 494187129 294626717 950664927 918018403 572363214 628275407 635054505 264496404 350150987 3729645 764917704 638197287 847951994 950482716 787151080 685864108 70308168 567924440 683219973 85953798 82181586 177163986 90451433 216400963 992905827 467925934 658084802 787304438 812013534 625745711 819024478 524351393 786312253 263275913 924766819 464333046 733163958 812789 694442729 529176092 196481945 36312939 618063336 50244359 544447378 965722099 825535371 199507754 922517891 789370177 545891634 223824334 925590281 661605021 254159279 364730349 799017429 82984984 709340220 220984280 811195880 243996781 574862626 557046418 318640747 604045616 205594633 586348055 106744844 792121897 657710940 46712211 947445693 340891554 536462084 182567536 653832233 86061188 405244226 408899442 613976986 289974785 540570405 870614160 369032833 74161212 314042390 627104288 327720616 245030465 394870646 262155121 840853553 644395707 972248549 32072535 213659052 819535253 850085569 76275219 211019993 644866608 592325571 765579294 709983834 650091916 933388058 980594370 141207618 600988849 790494121 469763252 63818 36612397 995432531 415753197 444623406 427966828 61630408 645926468 828751604 592942625 62261964 114977333 361863748 315199038 754927031 765350300 856409039 222352162 678653912 849181008 631559983 781557167 714299916 753379021 491742924 676881330 959093050 659957368 480429061 860156566 303542966 806789147 473875998 39926191 976087160 170409913 267862587 16548803 829252565 420168907 436800903 774721492 450663092 80522410 705945755 271269744 293291352 982950679 360291169 104171523 52055243 212227396 9469791 402195078 649031727 102453842 517024348 936369838 550179516 306910622 49339861 822319222 218375890 839503522 946000532 854206751 631626231 926633490 615987224 71633097 353661783 679736976 743208053 557592 994342266 999272033 218637231 396494417 345746566 769719428 433719141 3649980 116371424 950458738 894367229 82742898 731028187 182708213 86795701 368608388 457663608 701559277 127109780 193685710 912888615 994435446 272050506 656373432 472631985 188906842 666235811 593453863 678062097 496456031 232373938 702096865 856360372 19302049 953866481 507123070 892859630 699855277 576943309 244722179 206490229 299276544 647067523 249781189 274007691 641258513 691580726 541781952 440085550 901550953 209545173 57620538 385541905 848802801 829008567 667012907 896803382 87507154 563708257 168488786 516242411 180590464 464205479 405828483 605426963 781629829 379112816 798860483 708566651 612364493 332603741 67091042 903623112 86350249 337341724 707642806 84641736 968643789 933303408 538286872 340486422 256795549 209984275 118529047 373943309 838206545 593202125 26684691 307106095 466842962 788626772 530585657 613812304 602897331 986329588 549259647 289133322 593413941 671384670 166946110 932331937 240163848 204152461 556680035 785646896 652018888 733051049 353098620 571407617 272068355 446733795 274583527 549717847 574343415 153252188 593387316 839081863 680095003 85875650 952234767 478376250 512633649 765865358 462872537 640881142 673138277 118103464 501107905 936729316 421393295 710972079 124297431 611489898 147882934 794722515 525847683 628578835 449187257 47197483 655635051 413729016 312136509 884984199 843379372 454295662 118221232 769994746 826817729 115424391 121717356 365829062 455227729 365511656 123584877 831610388 964331796 351080287 198708046 723346709 988139275 96010483 483333839 639198868 749430605 634614306 327908436 104324949 708391244 972078510 685725034 578825204 773769522 659149097 360093526 639490563 996857474 452627157 836955338 682589662 836424312 438751960 753844226 5872262 233804515 349149247 74699408 775578694 420280317 269285125 662423327 220817800 19027318 593240458 983801677 580838953 34267970 323498358 879777924 287291216 782560808 833149437 529932765 954422631 885165920 730518871 366605094 458050305 866679649 338305025 166344709 43649770 603630951 60151552 105810820 478864340 573707504 455690489 272514421 392555784 172191016 47759766 898462393 389422454 534392597 123202448 427939297 736388158 552527256 974864068 799610250 342811612 800461582 110446647 348229465 26373818 300736455 32863847 229758334 395931567 384160049 715384088 327783332 810316841 898961576 264155995 221740377 316235264 862269480 941720954 928436699 681769047 800043839 783549625 979362106 356163124 298180365 658921006 989480120 436095823 205472604 803910266 555118449 592777591 499157896 505103007 232208948 873658891 642473755 318799619 227482499 258987625 279487220 624390935 349438343 551657384 51059291 764246671 60154755 120870021 366222655 195831895 457023145 205195944 279775393 285533097 741587113 54339712 989217880 664265946 628984243 194587342 754486100 418003645 147906711 880871993 909351591 194732098 171012724 940272881 198362322 155718046 975852803 627808047 583181272 976497466 612985465 341032896 683166196 917092605 738647483 507111543 99108933 347541983 873906486 988807588 711742111 340274709 487712324 107029990 426763642 784736277 816951750 497062796 702579864 617008365 188947402 802353990 928131419 917712919 449190963 23697196 121724173 561269319 765156640 280955992 7988444 133188375 282621374 389115292 438655862 237228252 15085941 481736263 817652896 24542939 229696186 318424232 257920601 207365260 291073617 619996705 53742809 465220376 734735749 219585898 400145368 342991501 763975963 493317707 625895957 91786529 908250814 935132477 324922378 637390194 126773326 176636066 861440157 804051767 257854665 87817526 409383155 392258914 781895717 86741802 604490597 598524184 279201016 368835079 658643569 308423720 340634293 529609585 320430599 73820330 264209995 493893616 570537476 826560710 471471969 257889081 781869685 618196147 307244539 407036135 764925748 400614271 103071667 671443774 680388541 435571191 429155923 827322579 744638051 966588493 136084135 449368248 712675388 77130856 155054953 636393946 484043069 298025892 257273169 365880885 988957138 457628522 9632918 735380888 810063558 312622818 524128387 794955837 847887957 801702194 907291325 865121346 197451504 716495735 132368906 870299584 507561437 125921155 92423823 881823052 42078803 26245117 227776783 723492508 2771254 536934019 635290221 591005211 204534524 831600210 308715976 501722597 342488972 95743281 89938297 899783085 988766364 313817555 950435404 813245706 630515703 104780663 358152694 336822344 151462068 147648289 211011220 952504812 917529409 122333150 328238231 208452457 963825318 878907291 489517945 671214130 949674444 877157694 317301831 470548324 829018293 730502652 270247722 730754323 845605877 669914249 574680354 19030853 941276382 953686960 471729096 19688766 863820718 570448931 24302186 671227863 188180938 555991569 536465016 140349539 778668006 122170597 852769679 842219349 989974927 890240934 874125094 909076192 387261735 876235883 737499784 952035085 487150680 938672781 398713834 177719190 403529110 53276336 668590532 894581040 855490610 571929228 539382475 572595441 249803344 887002534 247259647 248816243 838294407 914041546 972905362 181425005 951466588 876103092 85422267 272609826 709827860 501553121 159737675 816067479 82085307 23956748 441777118 755590290 575902714 98427306 331738867 635438025 82588693 664548015 44433525 877012630 640315146 84914587 854635434 60153613 843482155 556320623 636984446 23402175 673189763 217708550 416537301 531180994 461703404 33734799 262317933 723263663 957772981 123922450 283543369 761613251 966550007 515124896 47715049 905717560 864979632 48948187 863705088 933567222 228783412 795946781 528127513 575818530 611339784 340353155 3275122 224189992 452419103 578776620 991916564 382770762 312399162 392942126 95669313 572752472 845191107 216011183 763017138 218956088 542940909 635409243 748315189 843228494 24732985 169698411 271131976 676189434 752527691 730657962 537890189 677991545 109589233 950610115 843117186 973708872 407006466 205744627 953171261 576086099 881579782 265902851 324815311 509313596 120300531 910193719 18642252 112784137 794197544 734580155 384968732 789169344 216982488 605700643 616571691 49514189 325367189 730982109 576705516 287192436 433788637 674872855 933702559 382018573 627225700 858729094 654885763 562732104 918471472 603830651 786315667 301061226 745517333 127496345 651229449 726725536 579717170 636957914 316914783 908177678 201974116 357494989 710045319 171428026 1296672 808248596 812907360 503375031 946950052 222104812 187910000 362240650 710185228 49331192 453458546 20959278 229392096 53983120 217420537 249727125 590510930 853010547 745517024 505829102 891169565 219441111 332515836 462560693 594974568 659434459 539124363 394642030 414044552 44764351 470045432 775796949 227381054 580408343 570441678 534131115 101293214 886858625 771075198 537592119 574122260 465586642 346378212 825571277 819941465 198157089 159138400 469766038 758071792 939936253 589121766 855030810 54362915 870081670 646871324 594419534 882085382 204329731 564242729 753301503 787502337 246536016 430383149 28206910 309210112 691542207 589920936 859929889 246562094 151842909 337476463 978374049 823233031 677384138 583918742 136604439 435835084 493325794 619827770 849005588 497462239 184956891 979860514 901176633 291867153 314874440 613329353 374844739 846313943 546039658 821391106 237080832 391439259 319479586 892048191 78551816 989098267 561474757 918582222 843413668 414282735 823952 789703059 949389905 324324 507437955 902557208 915674610 936133354 167082622 980384343 940966284 436124709 389723612 626896203 161935480 642109622 226084332 107573332 267016028 633570551 757086318 407340088 401520948 114553271 888645072 658911055 357509268 720577127 344334542 866294969 466743628 578537485 239570566 823530926 795692993 888155356 857497031 494421462 965305640 134383682 100277785 40375862 877040036 592559689 538832025 41254568 427038891 21063119 918269827 105768399 51966939 271700275 781648390 494659813 39567732 595585035 860132296 213994929 18632108 715325706 467080572 158411291 394811707 161451505 32624942 13780402 653723170 339585043 854694846 146345463 635128676 615118984 66915070 786800833 434525134 565429219 764077779 60969804 131052766 861537155 499271080 191302081 845652043 249177672 644863218 463454574 374265039 675488850 255162196 912601621 766535985 314231936 13275135 491957888 196715164 496794979 857521977 342633693 293666149 248456985 794782921 982784160 798138260 543551319 289466311 326342805 814792963 74455807 62142536 936659531 282684426 359794643 14787350 834119980 108832726 814564438 835800133 475540943 782926416 251464528 418152957 983785414 376035520 467541742 246982238 386957308 974861423 453485101 46769072 875412103 36843701 306436253 710867454 581741740 618769279 566848670 503808762 894543389 204252688 400795961 647001076 462725096 755916459 67588704 430189119 357335902 683768386 84001160 92247132 363422157 391637160 316305072 699729712 493177630 488803530 131014977 503296647 421195942 510974478 483468532 742288737 88049924 388210408 19645609 903428972 459319076 471839315 693718899 869587840 873184712 168808002 394483320 128552384 912263199 644761393 927614545 634118243 664700133 761502001 439682386 244458303 129707422 543067679 420597072 198047864 221519935 244371931 10860413 609004737 428170576 54469540 240817227 380518116 54432049 534537001 830197402 852197810 669143941 753189140 108180021 689620527 858666091 174925156 658261884 381935866 748478270 658220407 586382550 610310292 417654166 953107005 273716904 885282877 971474004 556512628 833623074 905182664 60986493 272699084 942670416 765459277 766391268 120904319 43607575 149312184 134348575 470912104 141391505 418237042 852705477 390318206 22477287 563753476 528487308 932426523 235811834 69181214 28742273 797596615 478747207 592661083 530263103 750342871 768568655 12096779 148246690 775068316 598816981 275142703 82425812 534226055 282092959 677569553 40187890 500805067 301375635 796823799 405626377 538451443 464286207 715025247 540357092 395184184 84927121 440463142 189109944 334722210 419996953 404174395 909526212 106225160 421475155 112759522 435548845 595217366 238381 141334473 467728369 23069950 501753128 905291967 42980634 893147006 369267981 28810282 511220885 222691698 26979664 125434224 38972290 765078901 588730976 344497459 758682389 15952572 81104800 104662098 877719708 715284891 220145028 354541497 379324713 433585723 920318814 542591047 554821658 123269456 688606869 276223713 63061121 568171680 576551190 192449017 663433954 774315292 794077096 345987060 334505305 950298888 818102970 444142645 178814320 737499439 259561433 551148012 980683070 337993631 407710688 132780930 862721906 580997997 411177775 845687690 779282362 772721087 329053185 818344500 410855894 765037888 95719741 45515959 501046965 905314723 476697923 736481087 385666663 630599185 85798831 479525433 218647745 544018550 660391625 3024722 57977342 133773308 332293226 207509724 902965076 37185804 390724835 587537047 941656068 104514396 820786231 932776416 462616965 968644290 267664664 392432492 125198068 166629685 399533730 123505335 609147334 895428411 575436207 75986003 710007435 137677405 914439177 188624173 721501554 14400925 984800553 332904316 522507159 753817619 147907112 816408137 48115308 304428808 251071651 294403315 452702289 697434892 706327773 555175174 244981145 361930525 847519284 59923038 576851970 962845290 395383690 291320912 419788184 348299980 686318947 577753505 618886585 735114052 982768156 76106059 870411963 625277287 579635900 8872329 836629801 351994190 899312456 415229210 983712639 346896939 292400589 824396481 379214536 740455368 914097401 645820984 234400420 905996570 619726834 319124478 602821898 401215446 849032891 432554139 148903774 345696213 590345345 46933553 436214312 86732661 124347037 973691452 31073835 925406649 637773881 963175667 910043734 596499635 509342103 493184215 695278460 310539395 830943604 839112703 443309232 614016018 177458825 634764196 625810265 571672397 240457919 214583000 327309618 74680641 713246710 36535378 289269201 93235093 916060976 811602168 790561851 262323037 190723729 776690504 474560728 727350488 919292522 907230742 823942104 135225840 793415257 976071374 928782916 862373860 900122147 805757627 953712593 253378049 940636360 783174103 675084711 670425443 718035963 288292619 612340644 740331461 891833216 906712086 826813088 828032330 166121682 186849803 51290703 559316070 819368567 398384684 358924752 959407185 386665835 821658108 603735684 397633132 615499526 494584878 901241284 239045741 185802419 358717205 966465525 789032459 101871662 19810820 337282114 821263327 532269600 733615609 1490486 815414564 193786934 10145359 323606213 696564758 362211298 37744581 650854484 311997062 442961866 317698991 181906440 835480735 961715592 511057630 628489421 702771959 508648414 291361861 401018892 883298531 909738272 727511315 378557510 217055200 807103399 691072960 86206935 431210113 371837463 979653429 68303201 484487496 832041967 805370930 575281749 42442496 75374670 661292037 4972289 618279684 212107145 67728520 243203516 674466328 871281707 573397261 307739731 253147594 541287720 68294158 550978183 751007703 281917941 523990996 651727501 8790517 701038459 573329922 877384364 931785744 22934875 118811233 890465328 392182760 251895068 306294196 978794795 621120014 565088456 349032798 17604979 147324617 208184907 643636137 34014507 468989011 581946715 16526722 711185332 646052449 82978237 185368275 852204457 729307439 24238459 54291703 150033942 789828734 256994221 159188128 190384839 928728395 649572705 517729729 426062294 659697924 471289285 316309540 333662552 429062168 390481489 520012806 627482611 744083154 935718933 349760896 352811770 970919624 428079046 946607043 191823979 842185885 501290909 766587633 725562270 655965284 638879039 598720825 902648002 749509982 460794246 220232260 753303752 756128404 28096398 260541519 532816090 602120038 919346316 482798340 365707428 918634202 733462757 452662913 910191062 187939547 663451252 434910831 938433016 799464201 207145328 297638031 797192896 346704657 653882459 215621140 756203774 897397305 143530489 9568320 370720833 257025294 128454119 132953884 558544778 639047817 497900955 107946740 347301390 496044440 27196337 438676050 431385712 674453405 449753796 889463088 150991453 201141471 752840029 800941709 723374964 905546597 797566415 56984802 389924511 335527921 905832152 187402787 150193775 742560943 9512911 405050544 145895467 228195096 389704725 629074383 151768426 482195169 894193321 18006570 321272136 17975536 647932289 991418824 560366920 224678893 599707829 107970293 659385140 374302950 932001069 312603335 943173961 417486853 981845617 830457387 568700162 612710352 977909631 459280968 500628623 879478650 845292819 241972461 179680850 638360240 999596806 901325310 865762444 571232551 815031565 181275439 389022538 326024882 915360555 331568148 28059036 699546692 669021043 369160532 591827493 916519985 715350943 666681645 680777852 701606442 507614826 659168156 918509414 135810463 942660089 677647130 777770004 236287103 782564687 427576359 802741961 328451468 808408518 424407592 833253669 237679963 590669326 396511295 258401583 779764755 286006126 440471439 446282704 450241315 934712829 895960144 45839755 735179108 390024345 858295319 689770372 212239104 904673826 182218181 650976292 812775989 133327235 220218098 218003682 829339135 714360195 834148028 194425886 431812384 750389468 474359069 422105588 378325352 616173125 553383400 752439060 783740700 804037946 281170738 495060447 413506680 919738116 114039294 275778790 896379401 134359275 948349144 214890788 151695256 389495220 888544993 564010427 154133921 453640206 611098988 120086940 84035703 36197998 263724317 804614645 356222415 78276935 373376253 650163961 236096568 14150332 687956715 380844660 151295427 697535340 916478825 89571931 301063661 704725308 844461089 483795696 487535076 326879943 812937566 962905685 626656826 459400814 157625616 475616013 360387524 194481147 436710838 570318450 131878525 269252492 761586116 983115467 241453886 904618208 593212410 748497214 117665608 34778822 999406372 716073475 15747262 339798490 861913071 380972064 953142378 446287414 369275475 647777859 526335358 181039360 976124507 666033739 283258694 151917138 326281100 144919626 126712076 520975226 281273305 296467756 802055120 297223552 866398282 167909276 12555163 849344049 600413630 422569593 978673796 193403909 474398880 204832376 154027215 863767864 562850354 298058156 970406439 618994209 748889727 506659692 940958842 434390266 179995784 180412043 676446252 186820164 214108085 869490154 195249834 730352560 229253793 653488314 427754992 84708104 612663278 727248903 44752552 18259942 908930935 613023832 923520910 857715076 668040953 123636867 27750795 995147138 51646260 948484924 229550621 380300713 301688924 66189048 628235348 678284224 606923675 94994047 529102646 107949679 850969749 796860226 918864241 804842183 686939834 580513258 305041956 289139902 238228297 919097270 490473419 212105732 255528096 122866071 420335535 537470224 784209400 475607295 260583606 379694306 573366602 331982891 405550445 346647654 530268678 33984589 856856609 537331752 344596673 518328983 987231872 892315648 263434820 225300302 699950083 174349393 670635356 125166969 97834815 809124691 165561494 935784539 623019430 376606932 654680886 284503252 196184676 586246689 945057997 184462620 982106373 978432190 224494742 864332086 615581633 390592122 661793226 458344892 387490813 495765273 664037448 266702860 590624796 272835605 176996934 198398135 644922654 856159543 955697281 504767642 376905826 163168885 984962917 368204017 151814474 131104719 70822937 738394875 605829072 510785169 553116865 362639391 431857778 345542086 821087660 125518831 273824530 945748944 286825778 1621614 602239868 234202286 278229449 78097185 172851258 172253714 318986063 130429265 422304019 40905418 570344594 652989358 463845930 113320399 89846867 748277630 224016033 757644609 541740815 662490625 538273380 562769526 43493173 814188367 703133879 493381200 143919527 844042212 948036580 208017446 429969554 231451931 627442131 153603796 133456152 675827986 105723384 129473661 828010713 763182677 483160761 663416821 786004591 750144132 598599566 224206549 560479433 382840604 488637018 811229014 288400969 811764430 94297426 662719050 873358481 210754583 56040039 538101110 193208482 244810794 624434351 434880848 553247172 686115539 29825409 498939434 139515179 468102508 72683029 795122362 565382713 263475785 65872242 681399257 387759380 689921098 548299302 880797420 360868830 768972767 187215120 677340984 819183936 150087387 342867133 234743225 101284731 523567185 947643811 349023866 485775084 72128548 827510216 433480216 632661799 61099788 201775512 54297518 314850985 928930395 111305616 56248413 939294088 239193345 102585746 118047453 286856790 309535514 33519104 384287080 863025788 128000141 203286906 808474035 312294160 505808285 877659764 658323538 268576193 487176997 852576468 542541391 273291254 237325579 999081991 703315201 779278161 493144060 932193480 49168983 429435633 486847632 140146413 204995474 317447545 640227880 604187034 156310289 955400972 461433202 26877847 100573012 480591598 68508283 824790830 95691239 312522831 763530061 931601987 749102810 653521984 811822169 154000736 86695600 264113623 53000964 176034955 516122932 785324427 162432033 393936316 301604250 255338303 766194251 396191835 373310279 435933583 384327639 642100613 827394180 219501063 418252547 780679474 273312887 733849239 529854548 952114575 121396962 293548450 934560338 495075297 459230355 890929882 958661909 955910427 330499623 434602173 686288054 577643167 62249891 409293957 249653620 277837687 118457884 635362527 290827625 64860405 535453197 148782394 579418900 865545556 295391669 63047581 227864972 330291729 201603653 220999292 626463478 582099586 731607568 214779011 872151173 681702410 419678286 219936421 680582299 872623377 712893037 519071024 342963116 570481620 311907448 803257361 218962542 133782756 547283400 766041980 14371101 14037657 42556765 841086396 512191764 2567848 742758290 954180273 255017071 755711913 473484141 994942057 448439593 121864126 472651880 908264063 209412172 907374574 727043302 153019003 373022530 911119734 724508620 712111900 765410171 930901762 95491126 740766746 702763927 333974271 26276853 52265384 952970272 663793261 564002673 917353973 232839593 215172317 127871150 166097106 572653478 370515877 957800528 472496863 450388116 163253005 282587950 517846225 313522817 826694661 210945210 735038131 45383433 201755629 559199778 411035592 897084448 170360077 579209948 546867451 913654329 567363464 779758424 735538790 54683767 920652137 6653538 86226469 868352685 193337213 628999432 701422714 540991779 507984582 541672211 233493075 699544564 447188785 165972611 343015030 110275130 129203720 120059580 90733610 644310401 735677458 565050509 340786192 176655041 414568994 234568089 299338285 296934509 750693306 839043589 951758185 458940838 864081582 25406326 974933942 170182923 478538447 581052012 714282137 55940368 276919784 743802458 734168245 362371660 83370424 607468915 895828271 720971699 658858457 548037644 880616299 511308559 468196253 254879591 116172059 110745871 654051622 888735111 967004238 311955408 882427978 457779328 771350605 219709018 316723766 933143047 820022156 458484407 233988022 273844644 642094399 326354599 807013152 350577933 691862983 583549815 753718158 463927193 275797671 836470234 935161963 881551199 534847178 769431663 211722192 441743817 98534988 716196117 651054092 198419182 700332321 957289621 835015479 510468722 335815985 376436787 566132840 223998996 79808841 363781227 644095147 55565218 252011593 817541625 97528203 824951545 414725556 601920671 322469431 778703608 492446133 760197087 719796484 377039765 770872093 424717726 714845252 753881554 392490727 131792192 342074731 691619087 238919728 538317606 112600748 472852758 183529311 852204778 49566994 349093206 240657646 366100153 402767568 251632886 264295931 577032738 647352029 959162294 317954053 812279881 32193180 282861993 669659308 983212883 324105647 134594607 543615818 702053663 674803589 451393536 155777241 189997696 295253975 633872851 945569651 337493362 685403113 642171721 758282696 855589171 293149619 312234629 173956919 764141371 656526044 755823678 188405212 408630200 769359476 957398981 422170168 102763406 224633301 44472178 544998294 245540116 600004866 863148215 411964882 396914030 22128417 360008785 92262448 614953284 630508039 375567902 824077980 284839600 807702762 856825093 437719893 77670506 436571929 68690062 120039213 979665943 975985314 35167280 933027058 617657145 656403453 116615741 73498470 16511895 104772892 410324740 309783079 503057623 841973382 601919027 398589329 129141505 819907169 880270318 318345559 254379089 712821828 133437239 14775822 110941902 595837576 824181011 542054119 212987237 661942277 153512680 1846401 476510867 218769348 278015483 495783703 710027320 50767964 859456318 246319851 463725566 623529906 824156184 882432383 157813970 359865635 43932370 247794169 38781140 69821253 558943247 965170536 495324068 698862760 297875003 79178963 17642983 707380796 139820844 548450594 156262279 616703511 105217433 223715904 250806896 141178910 632917392 705600333 502050157 718645803 537302421 374565928 23492749 398967054 432757564 573681037 772692234 531678868 799394242 241798723 807759703 104813929 58206551 100658431 21884397 703273163 388972897 941544856 966030492 171154833 455315776 593936080 955846013 739350446 984841750 936106517 826991415 122119741 571120616 4058291 260095089 405782912 55337781 714399187 514792115 981968541 420110971 349458888 796753635 424474430 149028092 962771812 757712569 518193676 828707686 607726329 484267071 173206083 748852205 709773328 981208173 89208339 19609517 650753056 416490354 743271585 424659146 790098810 731644306 881525481 92731869 148621304 964891282 859253316 847361525 324009351 846155050 267980278 995660417 18767787 846743458 110816242 386957099 881435730 885276391 931434478 373548202 660146697 592076283 778100928 814852748 650689743 477277222 940563687 36529420 705882549 274586212 306019932 62549031 885443794 631582653 161845202 881820570 3704768 546227761 353519581 351876561 970660537 226210228 41695453 712749068 8312052 423636039 79353397 684148592 914840157 846107360 970285780 38776787 735101406 438800579 241879657 438527546 679261047 831010981 35471075 667053143 883258058 213231136 997994693 755129460 609297173 117655657 920382792 99253440 517489328 878988326 964273967 232691099 205106105 392307202 739584672 742719785 576218733 672029970 511237208 424090191 149809114 861423586 472076822 271844414 63280952 923499205 534190936 386915611 129997571 130002957 711868606 756281869 344186680 13616747 162720501 938966254 699889422 781103857 949911827 715944483 188628722 419994180 522018785 644826259 402153712 501305167 615870357 887586707 892136485 818780175 106091642 437355940 829834854 488425641 237343547 547826383 781326850 527535473 804269241 156404777 757823703 719201535 828276349 615361170 126207890 364480281 928996731 620527878 67438505 905538137 285775417 694620139 550254439 473555134 697994285 935921041 756936926 635758766 726534350 371092316 158283399 594862354 582728030 371127709 534436907 471143120 679085680 73826793 922106670 21717090 879886486 451920630 347512829 338724747 949642903 994141129 250989850 508579955 105120456 847226152 185971209 658979476 706131577 706350832 852019521 874317868 992531836 372196077 772724175 849442332 331461156 198635502 574698945 976700508 40795361 549266305 345517339 738938683 997299803 269988644 806767827 638562063 564247588 854273023 561916488 55480124 886005877 868948089 306731491 65006973 523011674 521272792 665114250 645992257 505926222 904464520 684915032 788287658 778948108 379589172 783806837 446093183 855151364 204429292 316693371 615345089 704868651 698120468 332701290 638077281 288228651 237135097 301216081 856969925 521743897 258413983 548817642 183907352 436823698 153143794 300876696 70784641 683831354 628451805 540345180 121850237 465283572 307519949 820595998 621253276 487616420 688480470 459448662 381702379 640596672 211166338 50139346 399375169 734071999 590943109 64023975 883011962 667643221 505810191 745010205 312118223 533519622 593112264 695796890 211608877 142270906 209620783 175504064 792980122 619814801 179354067 415898281 374879447 536286407 571715918 112047003 553441012 135902282 331627628 259209329 334938603 844285944 364966708 662551030 507807911 912865484 958678214 962353243 528775829 552033696 381315670 32096362 872470243 10256491 91903305 144891441 552100396 62563256 734020495 327598386 247384456 578422066 605488360 577195609 687167880 578353451 312436289 816068924 687208602 881047272 157543026 907824968 100444149 330284231 894422168 117158657 42923644 938483003 437836904 81856538 257373674 169335681 226438935 537732808 571896547 831247013 226858832 495512906 966061023 806726146 578757849 627207404 119376974 150212756 582969846 60624992 662639066 710854912 21669599 575332481 668678829 565287960 58996221 780193428 246415889 342067321 982290357 232424400 396235868 234638486 885496076 669347093 285027727 511149812 619607161 928334433 426915424 119601108 818504580 45903562 145516068 318114716 189020305 913497784 977803822 77443610 975041058 167372352 488749252 379114248 650143696 896874220 282689123 261775251 381393854 558287989 111598772 157032039 159534052 860445624 335234901 670690063 670531784 656545042 272375352 581927784 766165922 98399341 334391142 857889219 5281278 315607120 138125337 899195619 883510897 361480942 58412633 517357623 277146685 648756397 58138916 510277667 446396878 525343218 404016111 995745993 806910385 54783582 5039295 752792840 974339059 144541384 646961651 379786201 976410028 566952713 925823700 541633482 294629182 333267950 918830254 730129454 453916781 958418305 682993141 305943253 499429769 46496895 977045581 318326242 976520479 296501982 293169491 157954288 291060614 448702008 812675579 992419525 301019559 985448332 222876991 572946916 215516886 548488328 897345198 452141953 766588557 265182180 100450143 326525945 712037934 487521737 45082889 460777188 103951893 990471200 589880784 588094310 174436443 55409541 701066927 765334527 492281082 948234444 482624646 861622448 251175541 731897462 333581195 770945862 84063739 81946811 442116775 488752604 785708865 700791541 502897543 225971261 508735532 118272451 504811799 792427536 974055781 90750050 1777365 556445004 981018591 35006821 212497568 467760970 599591098 810179030 314458098 61565172 487683003 683594452 620927868 231616147 485199983 873800579 849440340 424649581 388065712 892935217 599770024 182181403 493316859 727912361 510030508 592157992 549780327 944026029 984486628 661607837 282090205 464988232 514633520 470848135 891180669 808366453 760294631 963551155 976922532 998909850 361421227 198956426 154703443 350170334 226811428 784099007 110128352 219249122 752921195 258455341 81990823 567928756 726572201 179163516 21031844 236326262 777389671 550008041 602007900 349047584 315936113 823260753 790346033 548355354 959809998 849285746 180287232 185722409 653895545 549554275 784381874 703956421 609733484 610167288 731912786 558368202 374607627 536193114 690799678 86713621 988529427 244185709 988632714 135547537 725671202 35505419 176897727 996785081 232532896 260527066 362112803 552953583 734729917 732835177 551965941 668440261 537080762 944812292 507149061 527127825 847918899 932832173 437696952 319560205 490105426 9018364 367208799 512113208 386302474 345760379 164363403 235835359 596017276 782929607 707266119 731998268 278524222 150818413 277395453 984552041 483839913 870312949 213276776 417489212 825121592 630039160 859562099 869962034 353902740 787308111 183822848 872561686 474846988 998828461 950792298 759349275 6602425 488986259 668922641 955126705 885717342 457384221 864812102 225002294 175735107 341196566 497428338 500322165 46369273 310028559 872620729 202343909 543116899 940232777 608374869 72909948 958360731 453035966 520032467 456673132 669514468 611113645 555417942 55750947 202638155 134550338 267988552 931959795 568356637 796650595 135502445 426565708 516205474 616422199 137577846 428907100 919533236 537723400 908637324 208271603 947274945 33184850 268645600 916330462 444956990 110572758 766433047 765854698 284494622 419334185 802963772 264760302 209642142 183749758 972591684 669780654 838203216 501768063 253060423 652266132 945599984 451894378 867596605 459327407 679636073 392909725 95755555 642459622 692784828 414810241 956948102 48313828 478874377 978732259 161337191 66083620 547976343 559765542 676122236 992871999 204278055 430205045 662986376 464338583 225759591 590495107 575448591 887585266 236258552 696059787 161380902 999331744 977138394 820602481 868896779 284020603 731468302 525079846 83029300 768461880 511469364 419383942 999769874 57994790 863703592 278145212 526901931 684902842 65865346 64860694 684687601 597124503 635249160 147455645 475698020 274513539 53244570 488197305 176978835 25333510 117784800 847985507 583937868 566087736 776883326 234164139 732952285 884935121 125361932 911858287 366091474 642525668 487584214 322303286 292257612 724850607 763888727 975411160 9138311 902749620 240806890 274819615 411850318 145158449 405618008 345205260 535259170 106974455 111156595 344752572 562174515 76161152 180536454 496923775 309172640 669585801 675936240 349071217 932231333 955528563 124628478 131858981 982788361 841666649 85322048 663886241 421892917 828529818 242644095 284006111 604696984 232743903 95359466 542325286 612172237 365071533 884362728 85271360 658172773 916672500 145112655 516300741 382736793 637698466 963999616 604666179 450662283 836760996 774429364 514167668 878248994 279659447 101835396 35206846 306283303 329906185 30900897 784255469 727447387 438905099 371427080 327922949 2887808 135066759 88161694 253508503 687063563 622632622 173272013 500589912 964079364 618610703 744793807 7101592 153964497 558726863 4956411 925521856 468061115 163455092 776366688 782721782 211339713 871768337 861720199 871758338 982495529 344937980 665407819 410497317 570895388 160930584 284343567 746929922 199373054 585010431 862310481 917897469 246680881 689386006 720016541 830199437 430227695 860874840 359133343 116950585 685386278 736245049 928757570 816293766 550656737 780527854 241774050 577612652 573483891 207082206 967633985 509899529 537869315 297577243 400846090 70544543 458726421 863427373 802214530 785101225 203928942 428667597 685342361 107894040 855621612 385502122 812980281 209098464 544633779 568367163 653182376 380130898 497261696 362524477 512315435 358535366 165915644 932964715 629954899 241642851 139127480 557303462 930509811 427681248 905125861 376073732 164859089 753511190 745854255 838358681 975411518 61862451 591311085 504878560 2766445 7563185 59354134 556228949 913113366 659873355 494625930 744670905 992709115 541722753 153430362 157220468 141301726 458647082 658363069 606073236 210252844 148658754 388305582 227528261 147349741 109829211 711161859 910320764 769571523 286552192 136002017 472989626 935244770 314096600 370069869 81895575 127354893 689730663 776384531 615643806 790152487 13282326 138414421 30419423 410308396 673735471 791568457 273076390 205724949 354499064 234842617 198552430 116952268 467089184 453473481 241405121 387242205 172450880 953452578 716400141 913066031 307954749 484787419 267187740 426240501 3947755 460570024 858077995 924350105 872224727 319215308 854063508 772508443 881039743 381538911 293709227 321270271 681819211 167391699 934254061 827545869 130271535 811999604 814345442 431018835 995328690 100816239 5929014 354088326 382473477 149565174 346077561 10312345 27136385 990274424 425527770 958531553 712227664 348576027 476910924 359405129 124725362 196775890 673517205 223403619 264892855 261256145 445949343 748580907 512771605 791517791 12852818 686049594 268129066 434325447 232544231 301739864 119158421 306049245 483382879 983371699 961668310 852419138 841897011 997083118 40858707 627949949 373265995 367610566 512202565 751988508 187303470 541562177 758156571 58620534 863558689 919804669 863679009 979565742 259230907 846547539 238180803 228521160 887214195 395519570 813948771 347950807 284374091 409890323 448909106 461268887 213305592 5922974 262805047 201449180 332096866 457313964 454224644 88741846 884753761 376752738 792692076 691286444 243215323 161671361 968556625 681161712 67744752 987642914 479492588 596604396 331022140 815772872 294038390 565770686 229451121 76484132 325896510 982919805 75426310 670501241 947931225 619607512 998403491 493218196 217209145 30822928 358757218 615615296 996761981 941939594 100342448 754239429 929397559 683073108 593819232 936804248 32987812 197085301 595098883 984858652 630578128 233750716 55126334 480779615 179658720 214968552 806013717 561746703 306801862 785102027 196807804 995871513 544823970 49255694 750664852 488624474 439478586 684217495 60151752 452782034 960208745 723460492 266448158 315085285 829079746 928791517 714100186 872136563 824986676 130237709 580481671 180953050 316944529 600187163 326797377 712344106 893848814 104483858 330437123 284654853 457308594 41415127 227623887 81566901 860566966 541746665 42824357 112572335 544659830 741476320 61702718 734735459 982544978 107182757 610745073 278351411 288871778 453878398 884492705 617522740 584802555 546303012 823659848 49736959 382575473 821312084 217427458 249717367 72480678 259658987 312620066 255863570 725073009 217366227 690046019 663782667 267312502 449055605 84346125 275061854 31903849 690090445 448149259 57182374 941539395 624037055 113633994 199168884 683283638 160539286 989219971 103007125 869437082 128972391 81122823 213299200 74977975 418065909 72456228 523059986 554404974 498900826 678333788 564182431 243857302 51773645 665365000 731313155 647625339 711664781 969613254 573985847 77948749 362840872 359878314 225168531 735617687 383738103 520963838 612053034 994833641 922466375 27676248 661574034 910526676 992576662 530864479 759223490 319837582 817484745 984612197 774279761 399699889 401347317 441834999 463965070 959662076 412800371 470881065 739084632 503464227 417183846 659070500 166031916 142297546 537194656 652415935 814831917 908396202 57987956 420925141 725961253 259171305 665811895 935664169 592107125 83082696 953925468 453347679 114455746 956550634 396749346 85565359 894430982 697009261 7224766 206956970 163919461 615459198 516433728 505676477 85571004 429176795 943239492 599050723 574921104 641119857 89686796 138112588 39706398 107189559 94820768 947066434 145649144 795452545 249623444 786958490 788683046 16942830 312811414 405197728 742484628 557835361 793376335 214265559 502174966 987698802 774121843 398981239 48169347 142703682 68335443 946237899 561000556 239702065 481038563 653048578 698336349 900244866 573311619 39922873 251808440 612515190 352518445 208285739 293500290 67734102 367511942 570897679 230546007 40944921 350060956 754163964 842608312 208697844 682678625 484723403 300580101 901008970 976522238 546990622 988847916 293293207 943748033 202385890 700373342 196981349 312464274 461452258 636086040 699137491 404090524 270187600 662452559 401556059 729901785 119582843 110287152 908263382 623312437 371556449 509639513 67273289 921913280 477254791 852430597 649349069 523210108 759962641 447156410 992735092 979910902 953076909 587930780 181037188 516984183 365170924 202668906 831158587 578009949 581736777 915833104 581827023 456689318 540242264 212755009 8391770 887722365 705481355 808426729 119933905 381064411 946401924 318214992 498922969 182879201 68689035 544300335 960964000 851596172 492157007 379765718 890299132 484006938 23359062 291064889 383819150 496211960 195938207 317312642 230635924 713800774 261282423 378233761 616859496 818556055 296795832 313337060 849179022 292374637 576128367 962089822 849371643 819200760 590005295 599964354 235627936 169114830 932763032 145020149 749571371 421343744 489262047 652237788 44676910 946349676 286788207 741472788 978315244 865867375 250481407 455297591 631355149 678057324 852603995 972290316 283012112 104321670 695702084 718339831 370562376 808574037 87953069 294592620 665307812 416969398 823418169 177119608 76455590 855546020 136092140 968524983 59361108 963186260 241800059 17520455 582978080 468526766 657026197 445181075 229304171 460695778 619847979 405838394 380032412 995694861 376414767 958266188 819787462 797362512 787850841 659417162 828889241 742407833 608905024 812040204 257927485 827637735 331529764 66469908 888119872 180216696 247386381 302498210 935073950 757579327 640901965 248056371 636590471 922414800 120773426 547732296 699415892 271592858 497947238 602453724 584884492 21572424 678801945 752934142 94839208 771884341 86416753 126244306 599162973 534125936 463523424 552793102 483024421 667584845 280631982 965828229 598050729 525224346 129827836 141139250 722288871 316773368 129186718 956434427 70900293 276029549 308755477 659849811 391922371 279932705 976565173 64830204 354408451 977388192 242574218 332473158 860308351 480833611 881802533 880721824 421103306 936216257 562829794 349745707 967467627 848612167 960183210 39258196 831059838 935150227 19197528 723705872 310703339 652963047 174747605 167242528 604595945 230124633 883833574 256970409 754647442 242458687 186570227 629054667 336660151 174681435 616074731 815973707 949401503 23844589 821387406 694510114 798803559 266493563 442997811 774596686 153069824 794164347 731391091 372633084 494486745 458738211 271793749 852084359 594330689 598592231 138025646 692219968 230996584 237049306 788532306 53990554 980177376 590961238 175853116 197192889 113677470 949488956 2038784 785689603 515210712 48668273 339329004 449784015 985603554 602349418 615517726 348202750 503812514 462986915 209643068 568746307 700443956 940080753 116037243 745703897 381588434 513786625 503291908 65122612 984534080 960349490 351346155 258149641 899058260 439837702 956632549 801005886 215285105 70343487 720669890 27325013 6413145 924736057 656184076 265463120 837727437 726869308 186063591 291567285 877592757 954786723 560658199 777044667 908006446 196926658 907942504 16196648 928616538 947052253 453051264 116339424 61704567 773053007 551817342 946782518 984245753 426973218 259607490 429770588 656165476 575756790 148942117 480997867 538594794 764663545 185629209 646172429 362944992 537853240 266407491 238561992 760993870 138366011 648422422 722198512 612461442 960447213 46139792 819522980 143124237 177652605 992397447 344558736 972894181 417110591 214377619 572632448 492706084 239147421 743292104 747419346 909507365 34769147 616603347 293499605 600871192 778523443 79151306 962680761 842023572 305063862 764073309 171034267 356988133 250855130 813020837 972586127 13508974 71936572 438406085 416259139 853713397 54213363 644250795 329662637 880903601 725479490 453479418 547008938 918312850 328930924 141284685 539924260 23074198 477987372 961139072 519052102 661186645 739566761 151259138 64031377 571704281 503653060 541217394 341372821 651587356 826626547 925084617 659302444 139173886 600226962 784546535 706890090 171129755 182858605 174655708 789852899 140907713 35129438 512402295 813263787 158027642 546174138 614883362 253350369 120560026 449684897 454705139 206332220 815042201 65644733 703837413 422500915 305522062 700001181 628540354 588933616 388500407 177353985 165708597 893081768 742394781 902121841 726659838 306038688 672333005 383332952 131396011 952024481 984215613 713051553 684519338 606578839 791152359 262928505 901511147 714603127 40235528 768053930 966832008 212078964 695324770 990469996 256755629 180899017 18400971 631389498 509128588 983300709 789305028 672984640 66505601 514676959 977322279 196771155 489170224 587059601 763958384 841789126 796691787 660857534 651799686 757879385 305149216 587122891 338457461 62292888 62791227 517142408 670538195 668693835 431072579 182514261 789726743 15719251 354980294 333515242 794023667 229746637 598416527 198739339 665893553 862732793 871878415 547425259 101416769 126689049 306750117 960605735 71009082 794978183 11771493 252871601 442860935 707781863 690307304 271656851 209028902 760735384 326543120 341957126 592025019 846950938 941704450 123072237 869286645 970107100 781923665 537521175 60996300 204007578 528168614 913489003 450949731 302836819 93306568 492466928 843202686 734951665 586265026 897923289 187166088 122718547 908623135 782380744 556341891 847869005 245055978 194904771 669750710 969440280 770897550 849345728 687467101 146999832 619956396 205204466 297831168 512034148 182462428 698596110 681611723 788469550 370056254 235266983 390370872 254390989 56967817 289900523 434494487 437942576 574177462 209199465 980874129 681360077 932124225 234840471 797323584 907735185 757059014 477762081 257005912 412087878 923278879 337679443 885102651 59033002 857455300 102663641 460493388 928336728 525225036 954329469 890930582 337905366 870522344 344745637 56465553 634728184 150345820 414486085 958527783 396496189 110536685 322634193 713577177 88755915 782801986 461835601 519354227 669574132 967028054 993452758 80299991 757053437 211786980 268514473 986451439 579846832 166762184 203670738 433529275 154033445 418792707 349830496 675907264 785124543 114975936 435105916 783450187 631204518 885605765 520432824 23460167 578265150 414525889 92460609 877220124 702644370 292190202 43894375 62941868 167761050 884243434 648796517 240377813 127768849 179764012 825055040 341386232 961598022 912412530 690949686 876030086 760395473 167375513 168845155 129648541 509190513 843973077 650115117 899597150 45744376 976259944 772973244 746483227 394662227 142812512 721493585 253517259 470740348 352502610 696242840 725487880 160934717 755972587 25902920 816217243 187080251 386506672 905806769 278181090 242580316 679667207 662700227 649874667 248812999 190681871 583351321 445501176 832982939 727829531 467654506 807211520 242638354 426131069 972326139 521022447 654259000 717448312 350455816 805838350 985126504 623299393 65190173 507448718 43845887 107080707 946582232 376279744 29750684 277122773 605325676 584655062 828224631 456879217 930573414 511004736 361891855 911048325 852787541 305726299 561199198 414520317 432515515 583526959 814130059 961623383 826455959 112565713 499801054 269436955 654713434 705738735 442581986 233985852 812194158 649930341 54755390 953112962 537238437 106746817 363526312 862056371 149918943 811034059 768517909 250617233 494942912 961066024 422817850 917798108 580164805 186158436 548909496 326998259 727077805 832999770 34349648 771612100 698574762 748372671 252195572 560326821 232442042 692655089 752935702 918313459 821642318 714402809 217234980 397548875 875963912 430881936 895708147 765421540 578723794 617144510 582373596 770708440 305715642 390403409 513747142 243301631 174411284 450282696 265007894 951416389 934247038 502942072 357068272 31349638 248489746 884398368 838548023 438184302 427584657 466068951 617178635 808587920 276963649 252904882 921254082 866143763 586770669 752035437 528576236 512913669 313064101 955757916 154030390 614043175 556856974 953147135 50959212 865206063 860608035 981374002 939061712 979342544 665799111 584057468 67632177 79606456 339364762 604103342 884983032 187734366 893208272 694691431 795085405 118187337 546459602 812274807 665360588 105745357 512349825 973498432 595740557 106582084 596373389 240575945 912515929 681021482 935361214 695113482 764305954 530899425 915581936 545102621 588769718 34313317 166891780 453519992 719939550 452389235 509306190 691221079 573253972 866022324 804173298 408150118 420654404 981584715 101659402 159526369 749381216 151313570 928037428 984444821 758349526 695483517 104073739 51286584 228857787 481525817 616699473 461463692 486240257 245545644 83580338 725497916 436911329 119560908 261709746 674156757 861755238 517594059 706956805 259495763 620507323 4015718 973424605 409389575 762336633 77801542 701246949 616660566 290905916 337650250 621082231 144574057 857710262 419163197 180158924 79123758 23263568 125670676 103140150 294359248 878872805 481543749 468435910 308260957 106586926 924555393 637655718 888380735 784719763 113937306 884129286 595976897 938936776 23312578 441686832 563442798 47508799 76707636 351802351 436780929 1363355 989406903 263819974 704898402 40712390 120158434 489143981 178363201 114860746 194645331 659539163 646935461 77616591 810177825 650628706 943979803 916337525 625968395 224906529 516465758 610730681 446078145 520632406 187629664 159314976 890646601 15396219 318453740 632118607 458331247 131270596 252108227 834892092 636439233 774778732 771052796 464090287 221446017 746400481 43312231 147478062 688564302 685475418 107014846 349258381 120652355 534640712 10928034 222035590 711753692 302479791 928054225 744819325 660867568 683584105 739260642 513560957 818582519 419673808 176564213 532999404 971736090 829492305 926173625 321558377 291145297 940547727 489020456 306042593 409987059 564362384 369375692 170146934 242803812 290733801 875488060 743690580 573532051 468726457 884897855 82216370 717138710 204217996 734220189 257496791 671682423 664073090 174787120 257229817 859506090 774908890 360780372 665719700 144989412 773593186 140015621 251123953 17682526 890069812 277704594 444641475 338396264 890102593 519554136 591837307 798945838 27786088 788421843 463920987 800569534 398242591 842582976 594876849 229854949 404964822 118989643 476070443 598809172 693323087 851451915 815103465 695480190 593868001 1243009 985071474 419512759 651899636 464605133 776322303 702097384 259173109 774991327 700532322 673094287 672101763 761361347 155895191 770619260 494231321 985594555 151435824 813218688 708820846 896533085 550063138 701413061 78496940 349303650 682699362 214680389 915948427 318356832 764523685 248745726 354732720 698262591 670850334 901002493 954292264 957563248 836072534 736627735 929314503 212532059 262662296 668169886 928444221 130342232 14155300 304357104 784586697 935363793 987799042 634545403 397031648 384886677 795603051 43644086 185156025 528755319 908056420 606976207 447000758 7785160 25827704 142787835 226100670 593882931 927510924 338119476 572132565 456890512 398673010 214212353 620255514 574488675 893557033 195705856 944126634 608949381 928032704 205492797 826104674 562967107 761604675 103349729 35274810 291834041 859592477 382965409 761024064 369780860 748419571 903707809 292377629 955256202 982148275 785373782 547787401 237527437 622726714 958251964 698473365 509070047 495658491 335468928 375461468 567863115 556484630 404984441 492398105 446954318 666449298 303484461 677737842 835947035 635870328 266855823 434054366 693952192 350326654 360996509 984801898 554437456 372409409 616928981 651437154 544969276 425219263 111069255 480696783 594190161 400080379 134061752 209228181 129994333 150541165 877555288 613684208 479151255 390063974 858138386 958512308 828378684 264531754 140512384 28452860 271072639 357742942 152117 442855812 543184817 978750570 773514293 761016168 755090649 614584338 839175258 551403337 761350483 524026677 72243811 994272871 945710142 41642550 476730978 89063376 354187941 666597128 219683603 181888936 708484557 468165039 924355002 513401328 506697104 882368582 174568607 71513674 758120133 447775102 378080814 475210277 894816201 469738350 566881079 234288623 932154615 84525150 804977510 35162626 842135791 324133715 24791020 366615455 499998360 638318219 974774061 767052041 206583679 837657934 608054982 882101588 999102686 202986767 251614723 862102088 547874275 668368010 975803616 290370676 233263420 941204365 501435622 797406842 78139460 230490211 116900780 207770197 367001436 582057309 370582700 203598982 647837978 974586039 305789977 702463837 649604845 269824019 508997147 400852973 269332276 605293036 967515305 770473215 328008905 184492711 785493230 852425975 272953386 525697005 644723786 202292443 552468719 954265473 701700796 740418409 933212037 259505318 98846095 448091765 937012377 485039290 874462782 155795684 468920663 186999355 592456341 664095900 279629660 162286336 492589813 378831773 635811974 683441474 412143523 965135140 25461011 617346387 89722732 207838641 618813896 600794887 200451899 956264805 256048730 391990589 622711526 144091078 774288060 675056376 466898454 771041982 532598177 651050478 126731962 753765511 154235626 266635825 895956492 612421152 71613071 354289514 684940356 893923898 301594954 326496081 520713814 802508170 471594543 306866359 136037551 9750781 682297792 305374654 823770943 386267159 260782934 612507520 318087779 944618602 954304131 927452432 250431136 177238499 193746245 918153869 221825670 105587172 340883574 42461802 476907633 364029727 200219303 740868846 395726270 404878384 475577485 238280806 37437745 712035255 48210405 889736680 574609082 326186455 14378562 236500162 103235368 437108110 93022998 977276294 341653843 388691535 964289233 698264182 864977742 156146229 307760749 100523958 322604674 77096629 118075946 735117279 836990391 845953415 232352336 347201198 971297674 389205943 377464621 969317031 833300000 579975693 361803160 678262429 9404165 329581581 359966056 345432961 783502776 749278620 41288528 434755009 633506862 806968463 572025689 90977553 54058931 97507843 718799318 13957421 214380254 62439492 734205957 9971191 707978972 609965096 928506503 398286537 406245102 727552306 871452137 251549178 195134655 84166886 636424579 76015758 378920658 328303940 744061276 623943704 702656496 645852977 431821177 446409105 858670586 467461040 110016174 412321780 559472629 275643981 617012234 134178307 766814023 165086842 206910834 250763999 319891835 131244403 387581012 408513319 384825785 301616759 777396348 2500583 308528382 587631003 884345096 3813959 310575143 258127098 656985458 193177728 11724331 760724613 748432817 836620658 806002460 2620517 6088855 207845170 274815250 172753567 947533357 457379340 647609403 788023304 177205518 843336554 723460856 35005298 990000314 509869993 572642751 813808644 552511313 895960398 487137960 700071584 240044121 706934725 275698587 65087801 112502907 621637491 157541135 879687095 850112244 877461629 818152272 625533828 593481283 820276849 259536620 264021547 577092508 132193088 88693086 968966641 483882971 818101114 597022196 698078985 799343773 685511759 406736112 865075902 975244053 369332619 289731008 125895694 936057687 541337543 144939808 741090122 827103616 971431188 42866077 489230690 826833665 438956318 778705570 450380691 206747432 909010274 236344760 223600572 956838421 419414783 323535118 489138407 904370806 925485299 828203298 336773051 274099787 507447925 492265581 728148924 594649227 947780896 29311181 323637820 389374362 303557580 486667909 839464239 886336792 337116466 28625898 872033441 4429389 563528129 738337137 914516267 339702142 943467919 895447088 251000274 72227385 394719601 990204765 234161421 683495933 78409052 634944473 897764089 309889266 746852476 597398248 270107821 221979287 215544951 39950833 561976036 685459579 110540826 104797612 227071113 559369052 39071294 856105856 342040011 573455458 20210979 937596642 337095339 935941604 793729339 749457523 774974279 959278299 199080344 267326331 445782158 368515151 870194474 462658517 956130072 642744869 420883863 555170909 828904609 197323824 662231409 173566425 747840519 775515650 993542784 378956884 313374661 976206437 85128692 473468819 28501841 636722917 655987257 824489575 132264931 302350646 603395015 680406770 478022254 540673134 20090544 583173293 975290856 471186009 92360567 463785199 241877442 952288874 156780768 616835182 896714932 534736858 411350424 430044945 417511225 383124670 559834715 235372128 622466868 841741811 326442823 832302901 699636293 620093584 9734069 130180227 217628847 33353606 538422892 525079472 882740088 32257694 225437006 380427622 796840340 475492705 227926788 464494312 276618237 135176346 16686071 586666620 644195068 542441156 43257633 518195235 34002415 40297980 19060496 513274926 74054263 495454408 892201980 658047342 638298990 245474283 645270378 694593195 396346161 481073693 368260744 526934774 998904830 400165572 523345306 385225277 7001539 953781145 281373516 546667015 694353194 710613649 201368632 293900112 890696610 11037636 332987246 347526370 670017269 723013617 25230640 215964830 266981126 589288843 305562892 115277770 581750549 412385866 985749976 505873057 154343486 367596388 286659421 175076594 585979312 745584766 465811538 135067720 42722010 834832238 733395626 266935297 930886516 506859600 42815003 462116182 627289633 670085967 344472196 954712815 180293348 807101013 631657270 725905241 17235215 704646192 362888346 938214491 631417952 743357780 524889290 197748335 725381460 477189792 330564549 557769974 705535228 561134254 128683985 797594279 830399488 253993231 397754319 253791534 803523701 915345272 549523090 834763100 715475561 874447104 476521044 306115468 802880340 654039567 150758824 568734793 422349353 587930515 859538681 334016280 372627017 835171214 352977928 260833536 476646539 163945244 965587900 944154378 551295091 802613007 145417035 696068255 614644239 530249206 463796600 609246179 41347117 198336025 527948244 420852481 551834107 806497149 454424897 403885575 675623445 919020317 821432736 125392538 729902574 210576951 170663042 349727151 17862390 156050616 367776610 507608689 619210771 944137335 706519144 367400179 776110943 824887292 333347308 39483969 265929101 493840164 417219398 995051058 467477644 134094825 649144318 793332132 920958317 181780077 59725981 60013080 876354690 776886587 18177678 702459492 931176307 371466164 499840537 935786655 766661428 244253164 543533545 96664046 352706071 302018317 425038670 745533903 586082874 940406909 352887780 328588899 281602316 720862454 408138677 139161071 416475126 17767445 135302763 990182810 331499240 790491521 63223487 615444782 765353446 841389437 616213529 924747298 512526019 462637422 104537269 983518320 208806755 425513605 288600922 241394291 92970541 344495303 539977460 560476124 61922081 504177522 832104224 279345758 979831228 780660467 338024117 722907425 929499221 961469119 541445309 44714703 878089624 872330572 565280093 305754459 772807024 795017969 513615494 484675895 895018350 859606058 705849215 105621564 670364540 875542656 219348128 287278704 269909493 729009742 117079111 728317760 824626696 997307128 620317118 927662679 783467233 648655845 257057786 956468499 884000871 456285800 99888729 724589357 138355541 580269729 4685644 798034831 645609871 971791395 801302952 864030496 912614608 256696058 866546457 14328160 567223606 445353607 284657082 358443582 267344323 186078395 795175784 902801379 665350753 333637047 729855547 958662711 220461484 443275519 427596715 328150825 33168026 530795599 575006052 809643327 980829198 552793673 318690964 384725346 247838198 37874984 617731037 212361451 418155500 581923267 868585634 317044169 413089761 712430413 52060653 186827093 828387201 648143488 897398973 17604352 3825301 518493180 729022740 798470016 522541055 275385609 793972992 241592760 417904987 30347254 469005472 556370721 378076179 879300733 708208441 653568541 164672560 377207102 39602232 8373610 901993105 32053206 481165833 52758345 967963899 515394287 145848397 545898866 695992575 750154698 824159711 938156922 182024369 922982397 331350245 397553805 220213377 117515891 504271419 215438358 402349340 26410036 741183181 62400525 559401091 557527213 808303489 224443568 734364930 197226259 629482948 117336832 834394642 11869332 651369824 86729246 404545531 476871622 555885576 27343061 43850461 687505210 621301918 611309819 36900615 505970766 208085450 494558105 628888481 696689552 498647520 15293083 796564444 9942390 30181261 87063836 570370928 702101899 619508840 337694087 125584590 579724095 721792892 201001387 883451308 863741642 840580147 545124224 240525777 605433591 526410370 672875314 491128759 954696971 514919593 666671096 273296935 658020073 966137670 623460044 991649061 588818278 158633187 25544227 903179901 8678055 60182260 779574009 215304157 431452593 689696584 898865647 836870332 407120708 427495414 873100797 292264762 761132973 606555698 23489883 673368342 44870293 279540168 994062975 38879728 387684684 222381240 253252232 272332704 208350209 771228147 31032670 71908232 184836910 55465021 207038659 108687097 684901778 951019617 423277516 808078486 250619671 710870515 335602937 594001893 976194376 829460833 839378169 304502136 655598689 491099043 47320741 626799098 658721340 61777350 878161788 357780280 999568585 401357935 24354802 596914575 120625117 605713568 453541102 719603239 10897737 916708900 534698606 587247039 592115869 44810496 108610084 549544562 299061883 141131769 188907140 360678931 875157318 525365525 916975438 402729590 848634322 100850195 869655800 130346516 880427315 706629929 606306007 523731046 394112089 260210427 278062356 737254187 14549755 494882259 525274352 946820869 142373913 219105620 207535157 453132958 746413568 833210453 458426915 732739745 551656131 721770669 38082913 680736458 360531358 58889784 746115075 836660627 518523272 599415524 513892976 892070176 841970995 813552307 95467571 24929839 51951238 508950919 676544677 324848677 435925931 692646277 8965346 549463587 600711476 519632232 328236355 598792704 126075206 195759265 832492300 150674625 549351117 274749212 995156100 205468287 811923933 623504469 884945271 599755385 877356045 465645015 591168061 763746668 29671205 29660193 762648510 79026867 221359967 185875883 85316415 633898907 433218256 938076291 126318408 799894380 285332762 313347669 992646224 543213599 621453974 801246921 489223965 287153731 951663667 755279174 64174770 748605344 971089914 404922219 149497479 159267742 324713248 841961940 16991358 532372756 742314974 315377019 802190470 367956594 419305624 270218294 480659277 637269097 677349640 975916859 873239133 574525687 872900435 408681977 653347298 610824539 794501460 79728156 71004102 489298829 797017875 291352417 732968275 842102952 425037896 22066645 764933778 989039769 397138035 484291280 237474186 168587749 877234184 485304713 213758981 760453648 315089171 700404234 398712314 321932507 262634208 755873692 462413307 997204540 996593218 942553554 575799105 913751402 813099681 363376803 682438080 729352920 906747004 964809479 786647347 158086377 18889901 544260190 671473339 32105618 809132975 125585914 756131257 929622154 109464817 210943351 817653486 977628972 84319226 485314877 569644412 317515798 613980927 23423002 553569279 883500241 321180327 194745732 196732398 921560 1992458 603766300 32054940 900162469 315275495 387346068 147682487 421533056 201984688 460755663 265310974 914005397 578724492 706856626 63779350 585700979 556451341 726272959 200582749 872136030 227021587 761276496 746382227 181135726 656988377 202057711 705792525 881673686 815175473 539696716 779447556 495760215 332317005 889893647 892285699 976279308 477264269 636217917 520211801 289519734 904589508 124125078 656753127 322006691 974614733 578528193 275711076 697383138 742652247 937634398 419745893 509512677 551059175 449235364 619501815 737062758 738796567 996394753 123635983 417604346 791204470 816261770 573409797 81363685 905683178 627779535 105329350 19791585 816259092 690934431 693687481 631519625 146755374 644429173 371748938 644485690 368471373 112663037 731793138 132738205 636128556 834517210 285767542 500403969 273438055 218248817 572825228 579715201 291441623 21418998 999317400 248084951 424790093 583072440 761747788 631288705 336505695 143201764 692235197 768747201 978087595 409291643 429754123 917582289 866671862 548099264 83348952 621274400 955173482 753810582 954449406 712523880 234605896 612851949 248245849 890823126 434082340 113796447 312624537 466557360 494746681 263418315 746958059 858626599 201710284 192974576 745494299 767099252 797540083 129039857 521728918 411203830 333083669 948019151 853221291 478152956 328282000 612709250 250095208 432095226 745252506 470700973 81626672 608091538 176758954 70308568 670784635 770854387 498594336 798814890 304484177 20882550 623156936 705516394 870272700 569509696 870026786 354174055 356041336 294685640 129591265 256358009 483459044 688769229 365752561 993204068 121456222 971633829 622897704 74354115 426803999 683017225 602821497 250267873 166848055 166799551 956643421 182757439 304780971 379220701 789615333 244756049 169492720 43995353 355565646 467584456 642979724 611755415 394970782 385406842 179021580 691600400 990884146 895952501 952867890 442324808 3877230 553499087 50484364 912287419 387494311 226822038 798323314 901001275 556528958 736104045 894263614 93934999 934651999 242420717 777708684 423183863 526704890 597898447 566618654 116923675 615326486 101852410 425066649 724671458 645124005 985866673 941204148 756038997 753569024 645282567 711640270 915391094 599386508 630967496 218637149 928359022 139983570 874434486 426422887 531822322 63062992 677910968 335813234 215593816 994544933 373091701 181460663 907946395 295218066 321532610 646213030 896303161 912811647 77721320 63329314 190331278 153849990 951461151 651573249 908828274 980882679 586879217 579393056 923202764 598152078 559058900 102728149 711314851 672928149 599655963 582839115 169939442 362877944 531929290 690580064 955576058 617077742 479306723 618010339 673346533 420980792 137832115 267319931 63967184 430437454 643334621 773111421 494935096 709963226 699328042 5523883 227421774 567445088 949623500 158941351 326436186 352410858 504626728 843265103 250913300 326907719 245879760 872863035 697620058 424586035 345209610 741757621 535306791 378008724 932029472 181714655 660107421 3036180 775644429 577475144 33999987 890539057 319081201 596004200 286516201 537780992 58050675 886056692 926221616 691316116 802576026 486004382 752451533 863928622 965279716 770785413 533332837 647526365 452052821 967795681 873255305 496989684 21713135 470712678 417624162 182900832 432030083 263577903 792450343 415712042 119937890 865959274 258394886 355665466 404359295 863208339 499875058 112046553 852141642 952868637 970711948 771606446 373049066 6272419 135225639 69951017 709543486 933274165 995592981 553048137 613833617 285686923 97993770 867663405 685256218 718243047 319867925 215857845 517480467 524631764 112929653 690378550 969062172 313069223 962563658 705057168 752092390 416516029 773973368 553656651 81225659 428036123 775120482 877410025 963148974 868105772 685107531 823217138 79894678 185038664 816884340 16297952 95856516 439439465 351991731 825792792 534458519 159384046 235941325 31811985 272353172 472482246 902512928 734471163 975656216 137601621 463218068 97740647 415164146 970797763 853278721 993830785 526696325 955897098 373748747 515575040 961192780 507378374 63627531 397472557 513396273 901238132 700674263 726629413 612027633 973698712 890754657 327957314 321675794 108638635 430664962 85407386 70256714 319495947 757750120 754966750 522725051 866956686 498054849 484001630 244943295 934846963 47431631 821547404 42446968 894937159 660757555 701518732 352543273 85433178 51199570 691305076 180768125 274888177 311458174 275281166 353202617 40306925 978297682 897563672 601223806 630735838 411184061 935607391 122307393 281655971 281718741 308075695 856453398 32047249 455110863 361662305 333656006 67691757 776988349 412696599 199555997 785145099 24416277 993932226 479520405 54836678 185964498 660135380 620325354 510278300 800914849 316129783 82154305 989951255 744844168 976413190 284927762 778775345 402256733 771663372 576412828 508860818 831959187 987128680 319915767 85881751 723826626 377155049 735509177 587440128 798304099 13953029 940774831 443489354 443799233 549027488 210422578 558021985 44709288 147422590 210537269 885545380 620884635 200054549 327614982 110677259 656607988 373897123 636923489 150445445 892706393 718252508 510842725 506430113 610779979 724362031 120045541 284320978 996471813 891445280 85158261 809177873 499138973 706879227 400249012 991745607 679572634 433532731 10789933 746995254 432702523 429772419 173630257 418106068 786012674 571912281 82544282 884185308 315710163 126425498 987749895 175262725 591806236 444993235 577872785 648183091 838199562 74989904 506770992 549404352 567948412 851921237 431051842 813218716 225968546 512478834 737922553 416901047 909921977 896234395 576279903 360192730 773030176 319859353 587117914 608515321 674128757 444688108 753727764 710412674 510288119 331731972 261451876 589602425 44623491 890459691 913631971 92454222 771074789 596063182 304982120 359715251 896842578 166048390 658428293 177119591 358177524 808511591 303078093 239531736 648130182 857157549 11042692 354925744 854690314 229711432 97801901 456026292 18189483 942062887 164702827 458798524 146758019 585948986 840908997 626318084 928455299 459292445 181870254 146153810 867238288 223334010 287377503 266576394 982724032 928564198 399691402 506328604 411909642 248062018 210531350 752721474 130248957 750566223 996613255 935902588 689626799 384274587 538159300 855217824 605279971 776280988 312088718 417750061 93382645 796692772 806138599 801053766 879912674 904202523 479229823 472706846 160888973 589378100 705105551 533711267 9991824 192242684 971023308 677281207 919308710 293928033 442273513 290439246 812346222 952157711 786865665 525104075 220583364 66667110 64179212 90168321 72757893 814012615 25321106 290000118 822390770 840606263 423523004 70614296 574849128 829464165 676210512 448072898 72956209 98588233 984506662 315666971 42456628 953124966 754839087 417339312 848329340 781697996 334424819 555612257 110155708 214472067 401732781 750086830 527365931 32817392 274974678 706823144 654071238 215020952 444611760 419320668 884678217 187199963 694302681 727023816 501909572 698074560 865394102 976941175 207037989 680458030 873359634 418275743 964855019 826886829 611394195 293826475 994643301 822213798 999041133 765384834 706544149 605323826 908897505 40605211 399141097 292318221 997116626 765820404 642872632 17042967 179197593 422722216 755355862 988373940 776756453 456725335 74313491 637779865 428348025 826286892 407767782 746034527 656870244 528632856 636360355 999723839 306093291 558129730 543287080 662851983 865422691 615327148 279782302 997793192 926182469 605494858 562581549 165246685 962098450 792131039 713035802 540851353 973983769 673125197 79575354 290998994 628979842 65688306 558837591 69607526 648880807 103288632 385269548 144945676 818288361 913427167 632528243 876903204 615753510 176891846 84699334 459541201 70781810 126686851 74863949 650938543 692632678 650247785 797526219 534974272 173416643 817617951 484938413 735665683 275093516 104275303 973343462 655163983 25640211 492371102 897571051 110950858 571889139 667181661 685661799 751008832 227442237 864345281 365809275 531933547 812244927 544372377 612686824 294922053 276772606 566440518 471536417 626179862 634602340 184416068 787438015 55569887 279770667 634405315 27673628 394265923 382550130 64750888 552386202 7396169 63386801 360514057 257306469 217547522 333985133 937139453 823476884 236267505 768116985 677767720 659021868 137625615 749096952 692438535 656535137 220800798 397858345 723845163 528151610 528115446 419969954 625298765 482498715 453217111 206106644 248163074 321700298 133749642 449522919 129466005 148031844 112946480 43313412 751042701 741922937 396592509 310330072 337463358 885006465 917525291 599786614 400679670 148156930 49774851 282822354 671259868 655745028 351691270 636772209 205374559 447707670 978392823 256550995 721185017 638494765 825391175 584027698 975029387 378860870 183259618 129229380 988830530 278361365 208948779 265074295 457854044 92513427 408593907 50040309 478772586 453563461 820921044 326237772 800724766 945566987 884039166 217213325 548794391 623583817 940383739 572059777 251652344 615906455 229637119 526875345 618183492 830384356 713192236 190864285 157228651 677545236 704911761 654465114 334055551 534071804 384301628 512815279 617302462 658962390 290607124 417146556 627714489 510484205 905528672 301420008 514281997 828896594 301479670 953193493 779280113 297462241 929746991 784370765 42240672 251912641 248516032 567395799 805026898 19874317 644237501 232342107 480983872 822417408 577135127 2413113 108423443 711085803 203413873 749157314 534845101 343917407 270781708 541169206 83262633 208682484 674008983 447459199 748988403 886123438 171792489 901361575 464256429 673082624 581305249 198205753 262142580 190531553 343683746 89043428 14764563 136749547 681122477 848594097 215584655 942676672 900428381 930768820 111949847 157117561 243776897 330958318 539824954 868946115 560899331 942296197 183086226 995213567 300226088 598411552 762576738 305165280 194825284 897935432 759002310 999737900 66623290 847026484 884154499 786755400 732615477 884798725 655630283 669888458 766809596 991184942 185150931 296834691 505114749 177640707 426430912 172081561 564772798 719857242 608348852 658922521 411967254 981245199 999693963 652751019 704505646 276125279 760185109 789277867 216785724 330413710 793812736 720741258 999846860 265040327 178711663 907882566 487142110 414324319 734329465 814936522 348650575 160423102 700789648 472209144 490798979 90550375 930312514 388108103 454048692 769511677 233036674 837424629 6132795 927376998 709306918 706733780 697550849 850362300 368398329 886329897 136930316 323265943 139206555 101579195 12441563 994154587 68629349 299021988 36441231 771440768 932626191 697024651 938951735 110225778 245388569 938867440 356613146 524154166 765523482 30729435 450163914 343616353 314327062 419024143 302521709 719619372 434533794 364181769 684803236 902854385 872004920 986594538 184202827 58439994 411491414 940051134 423441018 978457890 899577428 205056641 992909990 561546021 823363169 921463671 913303252 714112818 661552529 878555056 580967796 223457617 225548378 544614172 685249802 367014540 818520485 217064140 823913053 197351108 944010311 118994364 101676972 428401667 305427147 202963657 108191122 828235881 793454743 653210373 295990787 644620781 94848572 991841931 54227729 40547205 375869190 905754312 917788718 33844780 80051051 505456961 52312673 419936206 208285503 979952436 723147510 165767137 906810252 277316720 183029803 869301643 300601500 405615675 982990081 814624731 359326664 438634996 195339571 366156644 228455394 418503638 568158460 310493402 177672709 757244489 716352338 800137803 731587402 592616316 317108603 607312163 516575399 248255964 201564514 100287300 812024510 663882709 995717946 632914757 108175540 216206179 658864725 388983519 596224283 293878386 266909546 48224684 495953564 738917092 163113292 205106600 455464789 944899221 578870574 470863698 264546284 990047524 375116399 482086435 134557792 274022538 796881442 574385228 635610605 331196250 622001869 847145976 798402862 400817094 537157706 79580264 377559369 465167461 838619886 1048323 395554066 939741496 497653433 701909791 268542043 618802453 643695972 338256888 551837720 984678847 729675973 409433588 527302880 399196619 585305637 397268126 784625569 331608138 476275952 975121056 238790412 281628719 747165208 810848058 141231071 483752113 178534491 942738407 400119834 692305717 439747385 548530994 155382950 476120422 900506874 151701586 797250802 485514677 188625208 863141032 341987092 272572928 208319658 116546476 128757672 613617877 14101438 677251475 335459079 281571078 467337128 506513138 794629446 519530624 742239175 603897980 761694686 819282119 725969332 265631188 770269534 498727884 417359049 89806855 491099749 336460216 262990447 15156887 893259433 137609892 412217774 346711813 825686659 229299180 450670442 241154215 924255157 87439322 731397515 649161219 988918456 192509728 270190419 939982994 183502609 26907563 244648464 267716193 554468384 898594103 520695162 94233652 96998415 234474597 565979630 426717934 506606050 346226800 254479701 561049890 841340108 313232008 554332853 788248005 866179610 982121715 995237564 88345567 700227944 390146361 182859357 538181837 472618806 618248635 318903513 700835932 467339081 605262274 715950115 369670149 215293188 761732155 798090171 384863375 675692247 221311173 369996016 644927437 511352574 384046393 441367679 106634928 406879048 21468451 700467966 127709740 48886483 599252618 263057972 71165401 312845459 282621970 153338482 174707900 516934902 706720144 375525347 820527268 873665882 562309251 881775274 610655552 339002076 550617033 897721706 909479901 967858722 31654413 774394069 20181663 577981557 839440132 351689604 427018894 531972197 723908271 726176197 543251476 179875892 419101820 32045428 399678505 385932671 388305201 559932824 63602430 333979226 151395147 281580351 567541035 147063294 781001020 978609265 167289422 932400783 971561919 100840964 114418830 759350182 893555023 706810327 357119910 280734224 590386200 41848137 386699591 523873023 600097027 115981607 888360804 910070943 80818049 490827505 539867531 184672087 820937926 603292826 357884518 882732345 543688157 50989920 129842426 74285501 325135983 324802232 117894908 510435138 754645211 126202397 312853072 675451836 541435434 556288631 836824197 871128356 38315391 490703065 779844702 773594647 167069201 304355492 736199822 952119485 421106749 606920149 99856018 928990046 76315071 982055559 133490803 435966184 344925747 681008534 108719820 488716015 774998210 246350269 880045701 872529218 183212800 670464085 598689884 376775411 280477775 508940867 781531855 714235832 9098694 462859986 587024314 116240073 316650311 745138224 255377806 792867502 371845674 562387249 958144766 687621462 914256026 916466028 975562664 205639861 609574995 314266472 134398489 24357684 6374093 983230073 680578430 165592989 678493091 742859822 198929367 663605524 884057595 930868021 704749018 887904284 909127926 782934326 315159807 123858294 559966671 788594868 287191700 699866008 368845050 273727740 611366311 344098677 275251902 703429931 189907264 4950597 389027278 949112323 739451658 89410852 371031491 883737984 227360240 729775308 959996663 289694175 395294725 520042926 46421338 809022916 431572113 286766806 101200674 87192468 316795272 864398536 514247343 234301672 107697274 251231330 669199236 196620218 996112829 997354379 99965510 368800664 475012724 750843674 711910316 975878838 547525202 476347689 3459209 631609916 963755086 451858513 122220367 339195920 489903866 772684453 237535635 667764658 473807425 758851178 283559820 166276797 761660270 257814554 32913293 769605940 334924264 578028379 597381118 804802089 423725759 779009722 598889266 370039936 465045476 735873041 760569162 986687013 852821565 99715015 717585688 924437308 311572047 220513385 271011115 27969764 925736112 826749975 110965883 377256816 206671031 340952444 155470227 733049550 256414234 575634613 893314987 84340383 307231228 63341027 512701696 88678896 841458903 579976909 602671504 821951619 727404755 27610037 372983173 278199564 9742030 385798425 459090124 228811299 643455294 630575435 612659505 102022933 564089973 961722436 114391594 323971495 962358838 306636628 621610294 422959242 616595943 595924021 189581947 943373750 164487228 861711811 131955738 668469294 637574496 828098948 931836138 419184477 381877328 361633453 195795947 340525171 30207417 568715681 58146480 33495981 253252 348672613 18304704 599172329 584234669 192607633 149494141 93206108 950011646 358896626 541675189 206585876 196034690 688254167 653601302 513960753 816389454 773775189 688459432 373318063 42754136 216657206 72117345 855683739 461040915 119387304 146271454 367285434 243280024 148273781 107499669 367617280 247709973 117581638 664266925 496576598 274175403 86104641 557895797 942118932 106843838 740586677 682334207 481785474 725538511 860990327 300296296 780903804 37790345 417486699 607896315 538363406 849331392 478742789 327482148 955248825 827456039 911445274 456620370 737457944 229757061 612814556 187812346 924996733 875819839 607664043 882419910 239960888 382420308 561631038 768779262 579525551 638483261 440908068 742525936 400722813 832629463 602575708 745913484 833664516 188089887 919027934 762649912 328436698 480466134 275669360 330728336 842778769 458184751 290838483 775265810 542483673 915806930 786341245 269080440 628392871 234449324 368630140 399257727 616252960 616891207 358342533 337588382 425751780 489073110 678445904 202677225 288039014 244116741 182804119 601412185 587370765 326380808 698625573 183023593 855183734 890538476 328158104 157755673 17930155 576663694 356317851 361279275 283424320 838933216 239489166 150661949 309180730 950947004 334875383 784808449 6150812 87553099 57776855 469820069 814606098 699759069 454925242 751131648 454631074 126461674 644108775 794261890 588112723 973998271 206975549 98094688 626000256 679060098 12761693 971243792 784824373 15970593 504371104 138976016 604659253 786269169 498636747 247962033 754004077 689594439 709564465 542814353 964215079 68558080 514173212 635693062 626662771 18270176 46943674 35434944 576772403 204098731 200722779 701567624 582725153 161923938 384199808 257475410 289399009 299950940 835289383 705154364 696592420 134704012 532777409 323146245 647920395 309436170 119334358 796038489 745025196 43127726 802156838 760745610 267039167 326043948 836447588 729668708 731957151 659989578 768510312 157783263 887787933 131764117 925766467 360801245 372253422 404141779 513553939 892209261 593061127 12534106 805164871 134196092 504260449 957672837 421801199 574324199 239926886 727048848 845572857 164430619 49090088 300409530 109091880 460384835 26433969 144271667 652594412 589375015 181229862 264692050 615061571 951400737 183724480 921774684 498827640 586505716 223587002 283941287 705127076 467753177 709226000 819614978 660956211 193983296 275279111 487074300 937306478 329771182 348048694 239256628 661761972 949795777 130042847 339717995 9874186 690906182 339395511 576740608 834992551 642913705 954913964 711222101 296492429 417936777 668956825 87469993 171996201 245914493 198886419 865252764 239427736 113831 987314596 269217041 13748005 49043025 970030107 475449418 437292012 724945278 643962613 311337351 634059012 154752022 340282326 265746985 370442109 74543722 630950272 147655392 580928664 518152430 996022840 869822419 253996491 356282799 633512051 400936355 604179100 411552931 979972634 409767547 559772663 889433015 209516745 422039214 396783463 934545725 560324589 354484244 854731101 983823157 803098412 7945003 469877585 948471545 16370289 638544319 285587041 843513519 180809873 988622281 715001700 296613456 871564877 472243962 758411931 470145826 186793303 928466967 531309098 247892106 184116072 923504432 964537142 699596761 142399309 53213503 465193547 904551353 496177869 812406726 596938911 904893391 105848464 208906988 238413360 922481950 86052057 396769483 439982656 863097615 390663241 739607299 328570253 42309192 442988243 367940445 228467397 539721251 577998972 506413198 824503879 527788028 703055129 427679038 84446428 628724803 879237999 52765424 153680997 33943812 746850315 324999590 353667478 732154828 178113380 115852609 624701037 926726690 856022378 928488557 799007005 891297921 1066357 675254510 748087945 677785858 203393387 800384236 691969728 375953907 762249664 793121353 570627278 957105544 815669131 147513889 473381982 879100958 505368969 275025301 510493867 661576655 328841682 688568512 611330577 270242749 561897644 545018804 727124372 546036272 223222600 48588087 354586032 971918 225419390 555030569 516427745 611827255 809610723 872811502 721729795 836092759 929049969 210521106 976259359 349375925 423046274 252502566 479470258 754837013 472133555 529490090 713517020 645904203 889074211 176422793 843266763 518768963 62580547 97725866 503125500 213315751 557858603 301647042 787850806 355008902 914120725 72801186 958958434 279273262 790134996 990777775 358304878 688264365 225308751 993361941 741374838 705333468 437673326 588505011 796355444 168516337 61992881 319998653 589978748 493752591 637421446 409070130 999813896 91007962 741088953 969221867 918942454 949190374 420472361 593830937 578303481 124555616 354250355 978725775 264920203 750889349 732617230 692021083 458031074 552287054 919255535 54718716 816683251 179776084 41867056 21955159 291235062 332582624 887505218 173391957 5668388 97354801 746805 419787750 231527456 996923229 175222709 355276664 545625966 523077104 587919204 578336269 478387165 989701906 855103687 761900484 853070396 674674753 162427473 255872826 409159803 104949529 362796802 987732351 501323121 978011854 808250459 400627933 60434684 161994155 113861251 173751940 67154789 833739606 276302472 48960916 153915427 506642737 147498211 824773463 743161057 712413480 584109816 863540583 266742575 319202782 870689415 437592430 40097368 316388907 484277912 759799743 149125257 83646530 815233151 408276540 889924736 388458706 616678117 843567556 998959153 458863885 300474897 36135829 805871600 170224657 91124314 150831369 688672463 409228374 176969140 251673048 381505626 295484764 5096834 54854925 918735952 750593311 273808822 437196701 91723219 877645440 99084392 18746528 539731296 432067015 224329134 174995009 23805728 74951586 659877682 260531057 249511330 489005838 400754158 81698679 195308883 336285300 343014866 543044295 399934258 163686749 216282033 494293716 682369778 677656204 25588284 689955409 701623633 265864680 464245835 921440768 724137913 633150400 511140991 106173411 208705021 352039547 206764186 912229415 466145034 385301714 75520503 313332448 423889392 916203595 704565561 301158490 946752878 670466983 874390414 88027968 799238370 180057860 595602084 61244534 822878476 66223033 366696535 13716337 159661769 219025200 242475926 820737966 172691238 347565952 951647377 861999730 699866155 686075332 84706212 149961092 353348091 828196750 684468944 779564245 990193639 224570168 498948436 131427903 468515387 89138054 530391288 642075568 132369106 879862421 650686353 25571398 855495601 500612605 481753974 995023664 183883554 460597972 349421157 139576430 227419918 465524086 880038910 941690513 867776518 703942339 283239515 198580237 19148141 211157132 405729395 158787124 924771783 638114721 66719397 965264221 191809876 258807582 472426497 88900535 429857362 574810956 618802808 779543121 368827566 660849714 229683384 977397278 805675016 330628882 560277053 904253073 766143222 823818664 836830882 999130144 148082274 33775988 715965638 316059960 82013971 90111904 757140723 945289182 155623527 268349699 381138957 410725881 446930976 164554679 495533621 591098757 802626841 885383726 378604127 655697823 406574335 431215823 194261380 410818789 212131521 397803360 10806511 668631697 173216590 772096873 263341797 183083761 328865446 46256692 920528761 919924319 682700989 372628194 775696244 210770074 159492926 166966517 43910529 175062787 570256643 36758422 598920717 605118711 400062383 787342782 726100649 121147088 278784047 186793484 441316694 661267470 776330570 567191744 872567803 814264086 361710125 303989725 653913107 459810160 683745731 720471213 127910756 600476402 679788238 986170579 552254303 327442875 251549427 960318549 399779461 617810572 313661381 303980360 824206841 434306722 488911378 22000675 17295403 940371604 960775297 344707485 236748153 910193249 3065429 772938750 430526862 523957582 536507927 356141646 411238967 239860021 396290265 46388080 520352924 449782013 942261481 575319461 950759353 939675783 844579942 299893217 934149449 464943330 616773083 386620308 582965708 156779713 187508964 629596878 136735939 430441816 394022346 543089100 452271801 670859257 887648305 662597230 852908077 641912442 723085167 305933808 56519449 537263144 269882334 410159992 13113030 176175763 846080816 13583800 13368071 666121954 212267115 153595429 193566811 239078380 364106035 179404288 749088591 903939323 658516440 139658607 366019085 405933986 689282108 748403141 499718064 797707053 608060448 196745443 899815036 224946115 260941581 174704023 253980618 956803809 320916943 631502834 467888614 215412454 52052819 898949735 23737639 117417565 384716038 116808884 558053641 342040834 638749785 466786590 321753254 810354636 284628032 403223527 199122216 96753070 601850283 25704599 336594926 179918811 114564761 965195950 234710836 562009680 482157209 782266343 130944452 623103264 404587296 988133280 976236186 929377995 208905640 340259884 227961924 793908163 691083284 212283976 984172510 57540401 97204383 879143224 526188340 251221403 291961661 959322616 507723705 200120330 697237195 146537720 299358255 467966084 412594207 896956804 134143587 342951370 904727324 397484792 589442175 892596057 693306354 212821489 731905749 405610879 250127079 222867615 533065829 856072706 907079838 734059398 60736060 118289766 251283635 138800899 504259839 23368837 383838041 481500686 891519997 520898291 668309582 598983079 917137096 858697041 550018874 274365113 671804233 474388076 733794744 918424763 923099921 774550840 499538293 884183964 610001059 155723599 97884672 592040174 661676129 114840377 967734208 857492293 579692095 927937411 964190791 32151071 75695166 769306094 349211159 587978212 992513633 365595967 810057201 488627524 198675532 697807810 623458772 538977489 106256156 144890148 1712529 826712947 608806782 58314263 726199013 596340745 678738170 620201947 958616744 995317163 689291836 41951830 833125742 43630652 972056653 528302056 150939244 740273284 973268997 93823346 523753147 153868533 855690992 28920372 770795716 133669132 560867256 240888879 666927768 944447173 215774868 926398270 559491484 273214365 838471994 24575314 748928129 439210942 997181546 108611744 767313999 420992544 298793096 361908611 637512582 374103099 391764849 960768852 848420957 611146277 116928038 852192970 896115328 113097006 740072426 592539140 293636239 350523855 448876945 289532181 222918051 527280642 152545302 132817006 372471639 327878407 454245312 690144962 682080269 739011288 942842820 835263060 624339750 710842666 123332268 905871922 367515896 128110798 321794695 299981378 206724528 374299200 958519586 47411206 482451774 956454435 822233745 282884711 621249113 281350368 282738105 655628352 51381639 270084329 454910795 319336457 933631672 47442417 593991848 513169872 143233100 925906386 690026387 123973778 148854358 164228610 348717909 821182521 182102487 632928786 136359225 439551067 510115679 399941052 756061959 922050562 185243324 345286753 304282144 279741891 670543701 648442154 920562638 253121978 367917006 380353787 892397539 374450780 445406211 706939545 695951972 798672994 139192677 15454817 773456715 575360443 354149677 302285052 61143014 823825764 454198251 557922377 17846467 58955942 335262653 569918980 702713327 584134213 681144670 468854648 355899918 586604513 128763865 892417398 597426009 372032564 671881527 552096929 834318708 865641789 691511062 404640620 992373613 565520074 390200974 215214183 94971958 548119083 321096086 61164327 915362590 111407519 951182187 24726955 54905946 12091506 807335964 433471861 595670675 938855531 515324304 956993402 831628459 600365862 442291126 902694449 431650871 868510569 556999677 379148684 150458515 724850452 370555590 875031132 289801780 250583798 883203053 9052820 627954533 608958082 301652084 925732628 86708635 118602214 862907156 156072849 179321479 681158045 930688533 29941573 546866543 434340049 102938214 165953602 850939280 378572005 377311344 56906302 904587596 213851547 904135836 259242519 710160280 356881253 653292463 986615469 727591904 495700771 44791957 551762936 194382375 619768229 436261724 988541744 806715500 369694500 828777979 664784080 382579112 107958780 417284005 649927035 360699808 169894251 629339242 142991225 229881388 500610007 548911527 206944134 421129952 326861557 657964270 648860439 614588285 45127091 427140303 99070464 839975796 738893318 760654657 27202265 166735573 249978963 695249865 112045587 607135760 762906750 420129406 363590979 787921471 560485500 771186088 796138446 529357259 489109818 688463388 632615370 557563841 177444680 317235544 121383842 546182163 982124727 482476867 261446034 549064315 584372204 467139633 565112187 765346041 319803222 334744832 325683988 709963960 963115935 476032312 735518976 97524624 158229420 689817000 900395241 507597395 781008583 595843906 625857493 850365070 626570815 763129681 888172759 575343091 845151814 855887965 121822498 306038803 339296973 679348022 721292932 885235676 958208367 252234529 815398589 642773020 96144540 311810389 633430224 282071714 737480173 932078830 126575770 336693134 647597470 891643021 706441447 825842707 806400042 398699923 529854540 551432679 73624919 265658208 989849198 267273393 739867142 447390786 696167008 840850191 980311688 759075088 425906325 303587887 592235563 118738092 241605669 701001561 720667088 109247411 779591855 815559762 183150753 722454744 446666476 513401019 523349308 770383776 861186012 257089577 207262824 12702073 740700212 730853328 60789016 906700112 487558713 894603817 446240561 188864238 180516669 164443322 196125040 346756467 12515669 150170100 750314669 197999986 600824329 789116836 880129435 933402631 906363290 654452918 206640497 430009942 919564422 508016564 3300642 342710871 828763390 847049574 852442564 862156250 774295315 400524898 190438304 855059794 672050415 95495856 906910767 128265914 186769291 934655942 862040421 476008482 324096074 662555465 155679711 952153163 297255405 957861099 626833827 902973753 950037531 785187639 936635911 104818512 269991712 853019603 838680906 401659645 330497564 923025399 129692051 969988991 720072530 742201224 621737082 413277507 666158356 90213078 824371304 304826841 147305617 883712838 613653872 150460359 111283254 627180632 917712790 723456743 608937711 611273755 49980568 124596166 43748744 195502726 497932808 366640832 715537909 916648553 26048417 423016732 992330169 68959111 465501771 909842559 344425951 602549263 139005276 806649657 544287334 629414267 5069699 162171181 333311424 670165047 93823257 20792497 481093599 94042609 896767093 400155018 180715388 792875659 653724375 145679320 157700652 954007382 288271327 870317932 988054643 990875250 320927091 506422352 201936864 150353696 372323815 828231155 472473122 560028854 109470380 479962581 351339541 863404591 188774361 434008833 598318839 841435856 192797460 897526995 836814333 907303939 844321687 159829380 255648064 842494366 595206358 337822241 390801329 983453048 576167536 173853485 921192236 294131726 2376499 672164976 656967933 610696021 720929770 53734514 283241372 444237861 358974739 616366701 137488696 12452492 587373381 583174682 558142192 745606132 254739502 927666161 865649327 710870315 201017392 39867469 643386605 46030731 323776203 407675901 214827257 142929222 715998864 613732066 723955723 879510041 224405607 934744402 44075208 191923958 870522247 7264426 826982365 725021713 113334977 609232208 490514357 134936478 211289564 982746116 192937519 813724081 393964510 365232239 34590970 985779166 555968946 928819491 478098665 829389987 64685953 356349581 580866853 314140921 299250918 208356709 180779140 448032517 156614922 173548735 678043967 392658071 124849797 547265426 10984671 199388951 614476872 543575493 930262651 519249686 776349991 651969544 554754403 799546772 145938683 979222732 27671403 471414898 851674830 840698356 947340486 758839923 506491997 187831499 415482702 219033495 857119641 720961332 825530587 236124615 241589166 166505827 639850631 77662297 864478398 734112337 898843603 584652709 934482104 6049227 39615802 177428899 443198908 345107837 8986076 61418346 118978554 31606008 559689832 783674249 444454217 532961752 131957624 829546783 968629904 397687182 886029590 943049640 403126181 972476146 997202246 414345410 399535098 742990102 445694978 361651555 337366382 121821621 788320472 420991292 855158399 986378120 541211897 669864320 335515927 515417134 245566151 280908926 261246995 654115920 244057628 129799588 259278338 964248288 911685175 758380208 404204935 615402386 695275018 102948355 270653308 768707613 605088868 352543397 217213658 173990630 876370111 367929298 877291953 158467348 443890078 678528620 435206509 705861325 790053284 964391489 46132404 79653482 905802436 229082187 974304279 834884875 575346873 474115052 440796691 88171194 834468467 956262853 186021190 808713185 657587533 636148369 16910660 468095763 951947772 904616915 221570446 151180705 894254751 560250902 620492745 671306293 510515400 621070915 574419212 290616955 569660540 730199416 469197485 135204875 600459785 416152898 216149523 207190774 904992472 286357741 244111719 332456080 735172341 171366351 280873687 720664382 52793135 562051301 176912457 98631295 487498662 387493562 229958544 144430947 499583465 457726576 45640487 496992159 913888479 119570768 491317747 693484037 801813398 295007139 418676208 205320079 202842663 401889713 42963142 356427708 882925674 133944100 659449526 193731960 999521688 705768100 457956895 988827048 837279701 21813607 988717448 62001897 946592589 802654782 43663853 158081819 564671658 428116707 407047093 149734198 791478913 850684803 796018177 531139169 19138750 380020583 718814038 3854046 437240127 936798114 503216070 738739104 89852170 355781680 468934612 732434802 536020555 256932077 344838232 864094989 705223111 156536296 22354304 796969623 145551621 668669750 36054951 630465548 91151919 695497596 205246964 852849917 90372333 739580532 593180480 36544285 323960736 945118429 732267580 756399615 675369818 229991920 136368473 323858516 741636313 739762165 214642532 173645462 135515446 180384165 997389163 937295668 199890086 168951236 356105237 172646219 72113147 112540614 807006762 40198589 616613135 112306004 630641270 275581634 193618358 834611066 872567778 8121676 467087639 493279362 261930718 854408514 930294271 465822350 413813087 120717673 379491148 989252441 739814487 791526978 341625489 964720340 962689025 29069686 243569437 120287778 451560566 417546615 25148491 482103772 463516540 909946608 831393169 759087513 423306308 722479340 875447278 806246650 149416230 593578126 461372714 445541524 945541398 266897576 434604163 39336970 925095037 104794771 26427276 964043722 347397782 737251885 73860434 605132084 693135463 731318096 603772314 762370657 465112204 637629541 631687880 925077639 806155009 107665995 976099015 78865704 382018611 792115095 208753126 348479976 35080039 237382414 611196513 471201223 856123123 904997272 689946197 455685799 696168245 927070087 332773975 474087656 146572155 712969442 149988527 131757507 974913014 51269289 139311117 122648723 963439187 508255336 996981823 829973450 440755814 504195734 397664474 926715371 757392530 402478332 650988306 16103669 547584116 631779391 328148102 206170576 711251918 400293086 54544726 69083263 159995824 517403796 440545891 770197347 830478783 71846287 483216624 667482759 494276748 868425502 81994294 336229785 365857273 760449261 548975530 540387806 936349168 366641450 21165421 950787277 600247293 750626893 687222156 159035398 844200093 536781744 138738285 380073985 531695091 744406171 491177648 121521544 223524768 405576423 938111582 815309511 647258036 689438785 117971834 288453887 631510284 753096416 651483034 976183439 914281039 743669463 20957053 861860515 52675553 902325219 515083661 59885659 481233975 528810632 641334941 714500320 935160661 723295651 711938489 973383061 27936785 565350500 132068188 35437646 996931989 690481630 405538694 116642846 362198618 533558889 647024554 612862969 553381897 32326210 82114177 192021371 29942874 136690797 83108606 722151359 750148757 578469237 948890480 21958514 110912247 956014741 899374696 131015043 486767906 671222960 36790860 712745797 730279940 275342484 194963995 173986281 459431584 606011984 634125740 564602728 117814113 764884678 758516019 662381413 237474979 167611417 649523142 281687849 232373233 890939863 853033004 608635941 187682156 40261254 721173947 802614212 533619475 701897898 538284687 700423849 515133582 325083661 321525967 719077993 843584950 271316212 659270733 287267416 819001674 217662308 352431102 70224318 206104576 289525476 421363788 431030960 155286989 195054117 64242635 546318308 224073731 770316073 802709151 938456119 879418341 851121766 101467338 730860269 366684547 79583505 61104245 876433504 717007813 346018764 558456687 354294552 901597846 510460229 923054163 738868655 476445798 164673863 561137798 951944604 94938851 495079271 39128860 638570779 927439557 175288001 719390070 766440844 767212550 526586131 500875325 577376734 241331916 539875167 247844376 121763813 855919667 430226279 749059917 348819563 70504751 328547430 645980890 935875463 71886185 390189186 296633139 690754869 233837895 708371793 900291944 491245856 598453893 469701505 884123074 225966203 72064533 267455254 529496407 368630456 360009879 678426693 205614848 91491840 38713029 32510316 144861958 3713208 97015610 734889397 359360868 597706173 451638748 314860171 749122958 539560757 398445425 98885695 495227284 320430253 492619329 572392656 572815521 425565410 973226261 549952199 361732490 884711314 97899386 338458389 818624607 520892287 764021447 944417591 243472471 993190753 14240534 975679345 965251925 256845843 1609225 873590926 896711248 230311673 271584167 822210308 417718899 251821961 206100482 501264544 569330937 689166359 242831214 628608681 930156700 584289889 23411280 431882965 202314333 413187471 640598483 804647206 296989194 24227285 128886271 697114650 406294464 656551912 400839149 31142785 98203911 1941867 472244832 986319922 153664797 173114547 152932418 811060531 124341792 372666042 690218336 599998276 313552936 477743886 623382357 100042804 154937243 629710914 126872314 486752703 979552009 161356937 21650959 499716076 960328934 290840694 531115308 400273725 411809073 424263194 588047547 475261139 302272662 969182684 302377922 815627184 425163293 160074543 136945102 956653628 809546390 272068167 284872230 939656965 871090426 150330588 547602205 493063928 923900330 401473963 336248908 102699345 326792848 580363838 594324618 324393376 25835968 651867579 867649358 551771446 979758633 215701225 875152659 68848241 806052057 755491290 742309432 291645419 842352853 268757508 946299940 145622864 805790786 743486172 479028367 511629594 667627927 686034872 540101650 518145188 233538809 46157730 591155521 289778762 504457210 433019777 656770055 284242245 372127516 906339854 35964112 585396834 115001656 722299251 53790990 747609156 991266284 620469123 396804192 817138090 493408229 223836545 585505531 691188635 817618888 567462663 977267669 141493338 926472501 701110178 890467860 344857193 161510351 985299038 876836720 494419775 47633928 166614182 654663932 970759436 49533361 34403229 922109141 36642623 109992655 656466607 360531041 523406689 581786892 607454240 461129211 773138962 228979617 313025515 31854810 229698456 478381209 645629203 106893377 834440493 705132303 552952707 262147621 145148973 571604993 336906851 38789658 715715259 357545369 3322842 507784034 65972419 556137183 305126136 502947872 592165944 930499497 413729853 849992533 840785045 910038739 583914620 129536914 384338890 260192434 964912331 338636954 535548815 517785510 669670557 311631613 905084319 609535363 275942030 736610188 616574375 234384004 148035090 121162751 157855053 380525533 910131113 208474368 133816498 654779654 48260786 769279459 319020134 386134123 632710816 763527282 101588184 61628135 81574646 977392488 329227888 452415715 759942801 535663814 604452309 143025303 951040451 606822531 803948116 9990640 176954128 101805309 582450758 316657303 183886632 20366837 821406901 482391065 492492370 780331664 263730443 88672568 689698566 506114441 698884494 297145812 597448810 539658570 289998905 782676981 533057798 303801570 672503240 930266232 829365000 421781444 598054700 227671874 566259705 613148712 65312960 519685086 676067234 547264081 475964407 230284225 940137431 641383873 960435253 913656268 582266466 858118027 990817536 991946279 140991482 218671741 909777330 827940821 410299313 324106499 900734778 981807177 47735948 640473652 788872034 731513544 749783353 708285007 62426011 198235463 759612708 380951127 828419996 866953452 359378011 575369006 893392688 674127646 446797133 857180413 993329710 849935928 130221576 694193089 582429156 200792759 193728236 320049192 913971833 47880166 249893184 275574808 480456554 873958744 78507197 877230383 963667282 660833066 965498295 773743311 719039126 845875778 562427835 973163651 947351403 765868587 929122547 233864494 283191858 403671652 376556180 928453529 751297184 947306045 830015627 615704917 899999140 953426876 847876697 516566298 917288074 515505962 573675104 316076428 792964203 821384457 60781210 598717152 16977421 826942027 503831183 109894823 521072940 776928148 899375337 896264012 743794215 461940349 930860652 831809077 825963752 69693691 44322085 494869946 390308203 107734084 307634673 929014390 697225373 306405415 651769041 894724346 174821382 457763614 772372052 87450006 267925379 988052637 468733039 903266576 4511642 507263796 107313705 958899835 779149558 544435914 323464526 724925021 235501082 889076568 376458459 332255906 156533441 914408564 73957411 753210357 134980479 367301343 105145355 440428697 1880230 250440253 163634636 442427889 393310089 96322406 862959003 725493766 804977617 709188995 899803636 259041572 322213136 216184742 466140768 610182557 551057629 106001579 604952321 647811222 25582435 689691662 853043611 790111555 367606980 954773642 138589265 695597112 380116894 207986376 202017971 22884126 85694809 610124124 688658751 376909771 797911177 496134128 9457770 891854611 179905667 498212827 725503293 426666002 551740340 420595186 303751375 229483289 107788083 273767696 876177515 645478268 713275003 220577223 463941343 255657761 986306071 921413724 485349936 623537033 200680012 460506435 758101312 506698799 331415922 199844779 322085265 630389098 776810660 980670724 357168761 668126595 481237334 282030249 930539537 405002844 831984649 461219145 302678078 597496870 604144227 4371576 317914790 405364700 937078082 189137853 344997298 927634536 118025851 26436472 959284878 607344442 123087302 198299160 134946017 421870914 670843948 726488939 244500829 319545805 11241025 308054685 139809493 703130338 134788542 354928670 954642847 923537280 42390893 411153368 415105534 178763288 248190240 305892646 989455529 710595987 322159953 626039295 494073076 343882744 457519870 965564396 493406282 918205540 33235769 238087103 266104098 419247331 517965767 137686650 166196785 970284584 290382519 960375177 365498903 290876586 802966023 373895621 960823643 950562894 713233963 70910359 78864694 217873856 287969439 339911128 451194961 317567696 290822883 634260642 45048568 31768181 672054964 972231545 629974624 758120715 5011008 994210473 108309453 889404001 545080304 191890461 605840775 972335875 676101687 227685832 116025921 989107054 814720363 508112697 281925735 175218209 293378773 407811961 19483732 152844029 171847709 675535051 892284988 11406065 101071630 542771234 154880183 777434045 41720463 757356221 287808903 926162216 86717645 862053984 268761305 648807326 327410147 543380204 194899076 554791467 480240131 600452375 107728811 939432457 321953066 810649055 620816424 583978428 553084094 437761737 147936982 530761561 191012627 428711967 774890526 753685879 265361090 48179922 899749898 784003095 24830252 335128273 662856897 547399757 369725156 842685173 692027346 428458205 898307980 655560728 674193823 761776439 721495207 242178722 392882218 531028947 349672714 773573342 89182076 667829460 149104851 673226086 402678045 314434971 823156091 608848799 50011191 512978855 800658917 965370231 131334199 78796090 586512589 761980235 185621893 792826454 148627971 693369980 643926873 954704260 109513440 609443561 94079302 170173569 59627923 389705245 692251277 852531259 722554620 111702864 666134854 503488826 112434574 988201416 766521973 89204647 397444190 443258157 584695300 450187579 739533013 832844644 426689391 839223239 599813013 190913322 393899943 757803319 609065366 85524398 701355672 301221544 576051993 175160128 532889912 41692116 618200769 302850301 799950457 842342563 729149360 983398837 756910849 81152383 790598919 928843281 847845373 938154230 492352303 229613444 552413641 387834021 661330270 516654178 514957606 579332879 297820941 380484408 401545883 775659354 969065698 936695499 657497175 201417315 424283163 589249024 311269776 922538322 164997624 905354518 386812318 907407669 216163137 296845357 511923314 570858507 169692007 290829153 564996008 296363383 170966164 359103421 197383681 99868490 280101069 826713441 640687533 953960510 204752643 426506553 417144344 523617051 134404958 670554183 472380847 598775271 812191086 610801029 615596969 393501171 537994326 951309682 47833129 524196395 284264619 823341188 173848671 531219468 598509424 22595665 160943437 384989023 993528983 772005704 996541714 819784363 193285745 846961099 982619329 224506568 970164326 792454039 555555819 799422619 395861291 30976709 667583094 551826974 913984578 701335831 151273236 313323860 865631386 439331568 68751092 991961808 239119188 371099173 157259281 824830446 462236997 540721312 512556256 617930954 189788267 770192471 163556942 395218246 691551732 645791324 374021055 999124207 515761610 460458007 161951762 928773890 753100898 532159681 1214006 116422097 129083468 844221082 197021453 540087228 377788921 811016645 106772220 234295839 272528050 669581418 306063149 171263178 988910497 173323836 19895704 239225627 589525157 35118444 41405202 558947746 650841788 338710707 114626578 700600626 145534310 968616362 588556036 142385212 605024817 19762556 341022493 300307780 730192117 808145855 276058324 927699598 381914452 883556288 452857299 947202333 13746811 793023245 868000101 418166472 539039050 627683478 845606799 618506278 747461007 693974277 194821661 248926525 263270115 203579395 73855480 400425371 562766521 117544976 219780561 875799861 363221857 398492734 915136474 688467462 640379065 991773549 380179205 188451225 112960662 876795887 572084789 699768153 855235375 496029900 412727228 494050497 284589720 907424192 686094931 967492203 350316899 876184876 835548023 122929382 747982224 292538909 471510972 535038940 251434207 402011189 100135105 654490246 380824394 398978981 189990032 336983933 482230660 461581455 646720265 897163666 87097376 393766674 888290896 352044469 381829214 128253628 664319537 396638501 135703909 820835839 75831751 93759466 126445273 288289417 266534607 500103041 98617382 650350213 287790599 709414740 106124155 562627457 577689003 834592112 764223608 376251698 287136709 114688756 468523395 542234327 21171970 575645694 662175352 127062762 99067634 180254743 193552184 587232499 147471719 906764278 395102046 344093068 879362924 124401834 611866066 313468882 110870673 59979674 447356085 243595066 708570147 314377850 319071475 854179052 698305663 957519231 815827194 644736791 33506746 769821248 653759428 371457642 246631430 574966084 676293276 366757831 994759977 744976211 505560146 436705721 639942793 640666076 599974074 307035671 508331273 216974385 4124793 751136228 544416571 635283038 927928947 649264796 197955078 854071286 695469762 625525047 408603388 353921595 932382620 801028044 158904362 768883680 837082736 750255659 70332181 13967186 595678550 401716793 246162873 123595765 67763471 879847282 995099257 586625714 646954084 762368623 370293635 211564357 275561919 861750116 120803930 307398797 465796100 432334461 81902046 761292970 875604055 4760541 184311455 495943570 624283688 960759347 14116287 750895923 65954067 520496082 722440540 431678461 28452836 43996708 945928983 166926951 971099790 751678554 565466486 634740273 575480496 693113043 405230301 992439918 548220199 538714305 248926459 660084126 670529945 514279518 64875534 575804838 454975658 70143087 731697932 217152924 901687234 54680029 131621185 832177594 624560579 648322843 194955763 708951907 476703227 310558870 827047715 136438463 97989223 354249639 128384964 8220182 257334812 431587894 302035812 786422232 528322270 488855316 414857124 283350230 525143684 349087576 182625292 100196217 433649332 817650281 242035856 627998921 175666396 362895479 791722141 756007662 177285656 184774856 331445397 305447570 542550729 837289599 468653264 143164985 786387182 438032507 526024879 845630891 340507047 700844945 373464306 919213880 82170795 145080980 59744231 40062869 659394109 207302743 939555748 558148077 777837049 516666742 915872264 839894956 976156653 645124895 384379780 951462564 628774646 483180770 797118572 807499697 962283205 830552238 622123309 694078414 167896128 419480047 157767084 150775669 544295561 291721539 409782827 872300962 90421103 83007308 268847375 772170011 712996127 914622908 430633714 102097726 245597013 756988839 166824015 733397110 207735744 641030737 559206639 76024976 595666597 13175725 660638935 706975273 34549315 758455134 980836883 172753554 862323656 833928769 976164876 926948679 338492465 854185222 796401109 832963964 442840030 341807527 96827866 168739805 249151539 567289957 255440585 254617417 359438445 860669216 264400343 354137312 511966705 511690713 364521290 235439810 202447397 574866683 764448952 292813871 660316831 83258140 3301354 89172136 282153558 754338084 758690509 872838727 928037915 491682162 669922135 931187572 94897828 896573509 428076339 953383827 149470530 166118615 172802898 489382 965655082 351884604 389553107 153002260 304616450 120466857 208626982 564550314 183458113 121100737 386282303 247746305 842491756 472700439 604662649 19797782 756219266 861947553 813704943 509895528 328271273 361684974 573247515 752106764 152254253 424388333 81471820 659378315 709068178 332000832 221170506 695734332 33951410 313038741 65823213 723480208 490806565 936974587 493989527 193489912 509505313 360282243 354511965 108463692 825578087 114221553 219569218 792327614 75319787 180916396 882327338 540224723 814268008 627884077 195847005 835717597 771234206 941266133 245324479 604771553 619392578 392129688 140680702 368816012 937794847 28784416 892797749 315045511 62787138 309773918 592675025 514185389 9449096 864325712 400131904 834381269 546422127 677765103 422325152 912254800 59708243 416789309 547694562 473517610 885676929 852030175 19023546 435599796 289381691 840805740 260060065 253417991 65366034 472003294 118280911 959929634 35890616 614224082 632075481 923935000 64538300 812699331 956988266 72444183 670312417 233540838 131052101 578447664 899572385 99404852 171813998 73549632 744838246 683990757 336214250 873157317 134096073 7589048 856061284 155411514 182566983 89671649 229251902 143561241 421782306 436965298 229679657 444123954 940034221 523037257 988203593 840312898 767835319 427908848 827523899 550762107 779455929 190635368 195125733 200748908 353157078 71424271 997697735 524898429 144748898 156304928 179449694 33866600 269873893 69399658 677621179 561185143 251501596 254372035 575202741 575646743 15953390 391772243 297388000 366106280 561974960 94893622 846233467 434694148 894761064 412948849 591800682 205271774 847077659 898232851 111719033 504657063 486157374 538940030 12184329 821695616 320371526 100579479 252914377 820187192 374296367 158890031 910314689 528500284 783366732 11094440 398572733 339649625 936717415 414521959 138227882 851233431 203986926 84527214 63438120 34064009 853434715 667567720 6572941 821608715 998894234 773731103 112860438 207371088 354533860 731942767 739871627 126340209 487415264 300721434 348506360 455347638 782548778 103023679 935925189 581946189 370911652 729392405 183242509 35897878 441640528 355120914 447359474 123178866 966557815 581144302 183969895 510279157 803899688 769077803 204487936 307837136 737066338 623910905 465363162 437178245 882355648 987974207 629991584 376358612 68074886 128632223 876558962 844512523 817787306 742351912 747259006 40500697 315703849 563567208 372581605 858705944 124342082 667959004 556607461 820318550 162960915 370911322 381143287 839465068 201247474 81716296 832735630 886628351 157541124 214543097 93920534 582023245 389119603 804732860 86152754 620285463 157698573 788104187 779778117 246477626 730242241 468671618 935987697 891516902 882532769 433233425 224644439 945969294 829112091 466898401 19316117 855942647 793700700 744811965 482813367 801796879 994652344 765194053 339061820 826310718 49474814 99539309 77348131 511788806 371878912 415497665 102946017 98578527 108268745 970162648 470768017 288400417 108225795 109537886 953284781 714177379 639902047 119982646 92967883 202212970 405294489 782703196 723190047 453226454 927836422 705400196 572660600 181500196 11856840 634779185 501397302 588551754 485488948 851509051 627229163 184177697 936521590 363117726 813531914 437096171 263572947 403275914 54604345 341395744 302102925 725063864 366708838 754030213 340967482 807825034 342712964 56920377 638524525 413128636 853874951 664758919 335538807 251697573 13945185 757416815 251124367 858148800 174509115 91069939 484736896 805430681 792967501 993151611 605859313 748581070 408351151 829170551 951957136 220063703 871277274 43501682 200493532 213489249 405883618 981045319 690457711 640376734 209783116 471068480 327159851 786671357 766288495 804810002 892542521 483016408 789221145 806876555 176622312 167258470 24821141 177612550 402297500 497630848 785867634 914016592 457879149 745779715 148437658 393583320 337325726 923294333 207081310 274978373 251174673 906935156 19926045 642567707 202411092 400052020 487968998 542405492 108378168 944160537 404508210 668181512 409311165 407964113 134883857 597769260 720585767 430834674 258689427 16339804 844444177 129006645 205118585 899402693 43426489 926586639 309193052 156971244 997028476 799274910 20008523 393769515 311947705 483144139 207652944 693838492 332388024 871810603 83528861 825491282 666623766 961732921 285338366 24714915 281483742 416803998 240942535 625491801 66734819 151954071 595911952 812574439 871549232 780088392 573338461 652728970 296180079 321260453 24823296 111146144 750273673 499015789 244088590 17593092 556725853 259989322 193604430 250779897 953878624 345458551 353706901 313835901 998088083 20551215 706262933 277879254 248026779 158874340 302303169 411621013 344993805 945281866 953198198 16564875 138023982 226265368 444270740 544442951 365632299 423943676 501341623 951886919 615514049 955261180 885576543 46447885 879567229 259504997 162485356 381885899 387854809 406631333 627110299 51622741 378165038 759454118 364591337 104181185 656640072 900085126 4582729 190901079 21741529 927565802 988552287 208560136 870244531 392191621 234111325 342161421 397016368 97809938 843770603 391081133 216202618 721022060 208419371 297293056 365327108 667294961 970949965 43213024 956334580 75165440 122219575 390950247 433441963 530687870 21834117 948764995 605815889 328563605 123195908 59130655 7655358 822980417 428003711 412334139 928925995 915873734 664520873 252367338 995776387 234776136 235175832 555282806 993345469 890352836 556732605 564203894 15816483 363267736 919647081 779431977 93400391 767844673 910224054 153014702 986466693 445529192 942802154 724068959 745608017 784921344 328711377 291223279 411270195 563198625 287063470 902167444 337074643 238102992 638898701 202339426 854727703 546981198 981857425 563491594 931253483 167557004 611527806 182172295 288624300 88408573 615398137 920285575 748279418 326097210 492694941 368003517 550496120 743803904 695061594 897746884 396536985 323415275 906894308 728487633 380332186 780217956 370433386 68738827 484226584 873218713 322707331 53128928 200200086 610869042 136258793 558169187 744988514 438311748 762764390 615245773 589435458 813473315 972705189 248078980 897853925 400295783 833659960 589268072 383908683 952308696 802408564 253802044 5194099 735030098 844740748 398012109 368366579 354885766 777087070 800401154 883899640 845008553 233545405 722980416 534371462 941227505 438220822 459376394 469750687 48655299 892184634 796386195 719552180 757752242 561241318 193456725 705629550 961418017 236103601 719380510 46558026 498248928 70556478 322845932 334022844 421644735 152105239 83058254 833387209 389762051 427942994 406005249 450917551 873114526 399293720 698721459 290829150 530686006 604667374 992992553 165702161 319206891 290002607 695019552 867627658 891920104 954548460 815226714 130518795 940742490 933007323 116755051 113735473 498028340 849809416 177774873 400401037 174123075 554464374 763258268 864831555 210506180 721170695 333382906 130715446 316478804 969186217 245077626 778375228 377346088 70132556 810168512 825061776 575121671 448146696 38538702 591926156 551593448 921961085 901040803 877810860 162756183 852753038 888980315 834479626 570277006 960507784 46172934 312411152 666885013 834889039 355108624 204205403 289724470 154799197 653190388 377612301 441572605 716492658 145961062 772886592 185150753 816156352 442911964 620437503 871443012 407788212 788463936 144632228 487196512 871729031 149089003 667424048 975461407 305473802 711194556 987346029 957275090 549758032 463167166 391885305 502523641 267420467 603052524 913846514 858353780 602238213 772343281 412668757 918574758 425169871 99335616 923492058 485604642 793072677 795398505 360197755 270441709 359694568 382502716 870843016 490584269 228327659 337253833 60547003 36475437 905269475 607309149 344147079 167001805 324197600 597699688 759163188 563972496 358260292 493797413 823015573 743671635 342626901 93069538 909654929 508025655 154940970 506526017 336400350 768202239 310059924 340344259 754686439 443375344 576482302 910647558 261559024 714037665 438025191 300748789 494130637 521722726 242049495 724139176 59353774 636901426 826380620 343080894 899635952 815815638 477854971 351750370 627050026 884547121 554631627 203904244 905937783 656771487 841790096 445541392 44024390 865388008 780564152 894725636 583877935 832501038 917430344 80767251 285486324 196262456 19972565 97642525 385299627 541955437 764014569 82817067 317697174 271103930 255974842 993682760 115286260 49041330 648641663 803754800 526945858 246706119 564587277 948944971 62347474 254069510 452083357 628135460 883820262 443701439 981084565 691979235 826848493 68569492 396063178 436718018 641552705 928924461 851573883 686177330 573456655 316294687 577149798 268237183 431090080 570414387 262499407 50397459 501841981 474519483 807754692 60359861 451872713 991498493 598428041 656161089 527950506 139977906 625276041 30587426 267071507 367393776 899599884 399934597 881165038 950312310 987142816 798684353 900113033 517944580 387009523 327908211 873987518 12712814 926584380 192937825 262809596 896933827 119846005 716991753 571284472 632324714 74279212 36767521 435723559 86138570 126718767 434359730 390208624 822077906 900045584 276872698 551857272 201452486 93012712 364113225 232884928 187654877 826971761 168675591 324035282 961005548 340226265 10842002 11054043 76658601 231339730 372289977 190056324 955992255 108770195 200220264 726884221 911470810 244883086 93737243 259008907 887607025 964307005 359180252 879006824 844817830 837122576 858556925 266657412 442233913 868121319 349865819 597620697 765365061 407361666 830863562 828619152 292027212 977656397 727016307 729520471 703352744 792236616 101279962 387984923 131954726 39300134 511553518 290025674 799150236 831134106 146985671 759215183 125236065 730987375 486908259 608259625 416108049 671740671 573249313 616327740 443902813 850736391 496253563 670564501 866556417 547573709 716049339 134405049 743429628 714281368 422292057 142544759 511128646 935097783 47593629 704181074 343353079 35814161 145734582 579631645 57861948 438698954 897129308 657987424 421750350 114438538 372367877 94980983 939433696 843977339 958829945 426315410 955536509 327299927 555333626 300782356 939692388 981918941 60740653 97030808 31799707 319778952 548505723 135610757 399272369 214909630 699464102 486853849 849605987 548680153 172973255 741129450 513948033 841556634 220658249 837899404 283823114 381014223 557463647 755910259 757635886 704588712 604714050 236076086 532593689 960918555 450029650 380842431 694220034 912506317 886871604 443657140 88884674 555504150 190268794 356087273 189660334 324054519 806295858 451952330 194593432 558591324 190397506 926416046 118597506 95709065 904028352 678086394 870257553 370280524 494435413 942414812 699555697 393693646 894063063 661464283 363610937 218379752 257996693 865096525 103006442 908334796 100048993 345977700 144993627 232094846 486481136 697169140 619927910 553680113 433679397 90393569 999864088 559318680 924992974 751902459 746928085 755445156 31971518 429004628 107680705 807857793 74470261 98696402 938497124 249154108 828776701 787399261 177310399 598974091 314089072 703488050 183785067 595056896 167935260 161804761 62921371 186630048 493081001 993994140 784037078 97327714 225981944 693603189 315805817 92517222 939935969 710223728 482532373 829856328 64749587 345696220 758950384 668141875 259181203 877972071 822374736 719235366 139349709 102311713 633380076 266286805 4238372 371166064 22719550 175702664 881763120 680017897 683306422 483015269 657323730 822198184 613208707 986458226 931392773 266277984 180025506 672214034 83396507 551183864 479318760 9683482 693584724 884281687 652940093 225934153 441033406 947470906 185389543 225868262 565285821 339793408 468501383 771492743 85528068 675044999 217834740 657939845 77895958 288057246 967480324 831818936 123359223 116751247 651236537 397426780 664309385 443614698 782478294 411101545 67460057 555978632 926948465 790274028 358815376 120007938 350456029 90007345 286945779 568823303 968102326 467083767 758831060 384055008 571155096 463198295 308293714 208165737 893545831 325358737 18816865 277060571 417572347 886372262 779525725 668115478 732050669 221458967 344375941 319146204 717254373 55588935 448257422 261820740 199178983 111303218 5279818 193411826 142035662 316088907 642116937 809289094 169395968 625753097 881064042 902191402 236064066 30959472 532663 786470892 490190954 113505550 884441170 329999482 203678840 439133804 535290355 514927357 981851819 199395688 831732962 283311259 317695018 960139642 260875114 88517185 514878819 284782882 631344124 909755010 766680521 352482400 226721263 123991751 771430679 954598033 522716792 953979346 652779596 345167323 328356289 952350938 903936978 602584837 689198423 842313008 239207599 371152039 52193680 47064432 324904317 353958239 223128701 382477053 339494863 943718102 865697467 800113055 718737268 547589204 256932699 952324689 241332600 896390074 588135557 123082303 928410873 330579527 423210099 658855055 193715301 740573230 192329749 209325701 967600145 382298474 224763749 770423467 125335633 585013240 261764883 202781670 389526824 488801498 609778533 389533448 800254491 129997081 682222542 896800610 829499555 779409767 742049745 366202392 904718003 232385774 842241688 324834179 178641083 117288783 592489776 451913905 556181018 328427533 131924778 745344109 807177913 346615038 441864157 30902593 403122243 907546772 701718934 891860107 317667820 74021238 348610457 797717018 998858713 405117110 558967444 95401016 491584303 672708852 62363194 351169785 29797857 692709076 264575553 10156085 489994981 854222426 900978004 810860533 912074464 109885116 565002915 491211960 728760966 763504774 142890575 103524864 774002432 454778420 6879377 868705553 742314662 648391542 811671181 340311330 325856396 528128005 646273475 292396288 591329124 620795160 844702071 439614177 399865668 894554459 116213267 81174061 485945509 887663711 873715872 400640168 442071091 177522181 102206869 566911443 113482765 787051667 665905629 352238750 824790956 866581812 286557267 190067279 947639382 354135549 981710696 662998790 355337113 449290764 705219882 974598713 655651312 44461800 661702743 573570562 49852441 440836572 627530302 651122207 734981254 882271572 860361513 718268744 8044048 526697512 663138149 328337843 503666268 111955155 789018313 911399355 889112178 217597517 436165515 864050779 860811757 843699022 25006134 20561757 923596612 142734863 69604735 362632910 385100764 635260692 315432479 147031209 925207431 663312943 327297092 166077608 89313827 883290282 744703035 933425048 84229921 852508945 576826862 140270906 120260631 515049899 554450695 817272802 609447515 796044536 122893791 450200684 394411274 332678322 82245273 281871012 748272901 414487429 847676000 114809203 44490789 613535907 702255523 579110598 408461932 985966180 826696373 480551548 208184652 588376773 25678298 714437189 648673863 255334153 691286496 765123323 210691735 235254405 44183671 199894560 233725234 758472058 529330164 77883572 139903638 354612683 764044189 885752711 748628130 953507628 163679761 971663412 999195587 232193718 115471822 123891766 671909831 922875795 36399260 714794165 55026202 199454832 473087815 34397489 80175125 349438403 907600346 14611672 258789921 28452729 966823677 659318838 908388427 604981470 250212860 637005416 285386077 179911338 580558317 469614928 630863635 886269372 603111482 832203923 979767422 659044931 335415078 264965567 866287604 935541268 235329216 435119566 678577307 627229825 460524348 457990183 436978338 618769480 735025351 308154465 256059761 43941248 793333222 259441784 510419366 809214429 649838795 843466930 427692881 895648057 110317201 913683842 434253634 364657505 637798248 97325263 246512370 770645707 31757436 719271477 260549373 39343938 308144588 204084412 250556940 39004100 267061394 246438650 931693498 653705974 336751628 148948568 31732511 292112464 338626919 851078121 302725217 852987345 266742945 43529760 371019480 83639962 393041519 649244218 301500733 297826170 969357515 770329198 42118050 333798063 612842585 179523405 756001776 274386457 730498225 709831334 140580909 407727403 739266969 730139106 82324420 216948630 311660609 348339619 385727108 890544842 315357688 878982335 161723464 640692197 998683978 751466219 100187758 971969806 96901249 660631379 814424909 327867186 783644978 362661510 543321628 130114499 991835760 197920111 578729202 648628725 562500293 144256223 92716781 353960135 879725710 807553654 903101369 331776710 629875898 438421031 553821892 985891959 76345247 130607941 680079472 667825848 173364982 908676523 832334092 160229514 752043460 915914709 808555952 494864854 759378282 477253112 621948184 240900364 880033950 813652425 495965022 974600640 49424410 8443251 108312373 998901907 721845310 444408606 956627674 528609843 218952250 105455264 252939613 226765700 833370160 196158368 197887409 396358663 626493738 965663358 121870658 96950463 361677442 991364188 104663566 133499586 392440561 421740676 720409950 720906217 279969702 464637693 380485562 718075769 176331617 929100557 642549859 471909247 486022390 663968826 563701246 271540266 241476980 522320057 717663358 774124097 675334584 951166965 195117730 551789137 786660563 168366520 27572562 772774188 481838342 122221541 595096860 305595418 388928112 319558726 411176084 659500909 147876853 615202276 699048592 621455828 607224399 94582229 64108557 920531755 106032213 542015740 355439110 395726091 783636857 242301513 193892767 27275612 3595556 255242341 278764051 479390573 691805805 237371555 481866610 72811438 964276037 270060822 144956050 210683032 469409191 94444114 370560792 815428568 182074862 628321338 13380949 32207884 787520163 525775749 335483674 7743118 362696788 356054622 812751210 275721733 359477030 267969570 345679646 874697835 778654577 257921627 897964672 782849313 977636578 502223249 388735583 921516720 258922894 434155927 837844338 524958763 756198615 184152487 481441191 172521455 134818677 825662064 166993290 678897559 531827205 811604477 95931552 556696167 241026647 31602520 232517777 417463578 887084213 362365600 76643088 230398777 576900705 727571663 386502034 312676109 364165652 567921968 906250973 920062435 106446168 693791915 160879410 959979647 888638603 655771583 152001324 828674644 530902073 329474814 99802102 998582539 621468574 173544084 259397742 638628102 296622580 112504256 583779395 664207734 182608307 456855051 345360333 256130232 665298482 223350785 668934281 28596637 795824931 368158598 189116415 374342052 384576411 232823374 752009578 924180805 432571388 428459185 623129260 176111826 744988080 372881823 120554682 932252843 542657474 153410713 700688768 342236452 500722169 742153807 148824373 531461345 188410303 729470133 363295381 453971704 635349706 296015885 481843081 287215170 731411158 485264097 280197134 641654836 162508131 495236301 121758699 782471647 663582507 14698433 619102213 312335699 605171245 835868855 231898923 689410334 679928168 407386792 281042152 437586639 661490191 942831781 61718903 961931872 76598519 795522929 694030186 756436176 14873477 608495633 573829802 302455296 642652093 745581371 3160945 611487459 835475839 950044339 296045239 252200090 676186065 705655593 849060149 706320831 90935981 316358583 213726537 522002114 229694704 236845548 163142518 919902270 733420784 156310289 704636074 489936275 246037729 361164502 207881191 838551968 37353830 108280165 681133732 327860641 697552016 672623010 890666739 539927733 360760823 832855887 91959803 924805198 392216875 546394550 392040759 115447177 147825974 526427795 620457346 751349164 253117504 508181345 644757844 359156407 37527847 119148994 328904099 477235704 191158734 759253020 384935630 707803 697221285 30891148 427344426 818503789 464624508 634891047 655649571 48150759 846002285 604666131 814373071 942970251 868201570 616931052 901245473 572028720 870981165 765690295 536653139 986864171 92737141 117369458 416043608 678994679 545871658 490057163 847518184 276802697 423277621 144038719 968168968 484531359 11988377 404954953 376326278 107985872 202769122 335339944 211939812 691123139 223740106 423540404 262639800 264693643 565582946 345123075 243820802 111424950 961666987 19247981 594053839 86137758 29984907 756103856 462824734 151174150 44662222 967907080 345736348 422499078 420520681 907533478 662881225 965879152 488041207 440990045 183303173 210424827 556412164 196441775 868091107 121243816 296040043 845189308 782611646 755966910 770707837 886687078 636622940 265204924 596522906 54570792 751595905 164875625 567918522 844921781 927719169 470629635 939003333 373221651 785534223 684705086 576959201 243521273 755230886 30233679 334167026 165834145 796395994 990577706 233049561 760592548 977649634 560810405 316348308 627149518 768679062 525621291 844274864 363917839 183756538 865678244 372510327 745397118 163574394 946905085 749817172 48343829 33029176 748196171 587227214 297384912 974772804 80591923 136679632 171098888 390226374 256176742 515625902 699867743 659034938 501952292 322026770 21309048 73388391 73180730 526902704 771201486 398853522 8831132 7902383 803847785 995439292 982976440 432366739 529663061 451967486 316728926 672925413 887929693 40916014 296796249 217821734 577001851 540454682 411683752 267856195 738339905 859411755 480681071 548588589 416752888 599644221 524019005 759346179 648586961 798617338 718033714 269388849 667021256 48560098 476671645 46535464 896707998 667261503 478386469 325128763 791561308 686482461 714766766 928359153 396716492 779033077 54696941 82382802 240388310 511517688 545956144 908008367 444676026 788934445 614054177 782835449 90998163 309528651 679269724 743705545 686704748 505641558 399443158 656650197 907264775 529319424 303383571 646302991 694880091 522181427 812844496 888500401 589689016 415214542 802960215 699154533 719176104 830484754 826196082 294782735 998851307 705776081 965923587 213871441 254008910 719807595 41553313 753639190 133758501 17545877 474992163 80376492 580458924 238094251 261431480 953138235 160125699 118341245 810597015 568076791 439488147 444836846 197414746 601904555 162337183 554139972 890986136 56748385 701396793 149974488 860959729 914260330 551663101 266488829 644775058 780781996 404564608 753267145 269258579 359685736 895629912 994512219 761374193 575699030 793389483 225686209 815766036 537359302 47446412 447817819 764530702 225954972 246571717 369671337 183908695 759418546 659024116 669015074 464118491 850786868 440680625 624572163 246936630 443386644 145437636 410295489 396839060 756438334 699926586 798128618 137756821 308723546 424697630 622083467 598014861 51034345 640958138 960228727 733656713 478678688 970145767 640067450 893965833 260188373 25201674 917727028 427755150 866401311 477262257 627363309 771582663 269090253 499647079 22681726 590448140 609033520 114149005 233015247 48175815 448729615 702269736 268095892 896709568 247276115 423546540 366267338 940227133 683923515 937827116 813149035 10841775 912810659 98708511 746105511 266525777 848526806 167792019 278871525 168571488 396642188 666877705 900257830 420865814 926635084 700954589 492244307 727206308 607829115 178624119 410689806 457219980 549610095 473913344 738257391 981829509 534053491 485288040 881520666 57328574 144028027 38578782 234616929 76522699 619819389 738795525 372619089 62540803 767588800 983734608 107673429 393582793 788319471 722438355 480018316 391297279 363820907 454510427 178928430 944677590 501882302 882791663 929391378 187327431 100071743 214596353 250486592 514673763 702469971 503762325 114216111 404420515 430010462 750539571 496595322 118016275 947887164 559719553 340722615 332356267 251315281 127910696 980948350 996706449 613858133 203834211 890768663 816165840 990174578 402517967 139534040 729527573 302074806 954791616 421958552 699695137 772947602 984905952 666835651 235810251 166605121 747369862 383637149 964525081 455871424 559587713 331809633 108170218 678353815 415232145 343845111 815586681 543630600 624780275 93763390 515737155 933285030 676196405 988507131 208712258 163885839 831126703 639436740 670407691 605035942 853257021 140823794 448798880 678226602 271825313 628661532 576937562 795320076 366357726 470661675 368698920 242243466 403721678 549728566 267482836 355491355 798375192 26363336 130071820 824434561 604407026 798154271 676999221 546563858 180037648 214307488 17048457 930998112 1188933 446941862 240279327 899377796 299252928 394337877 447454552 630087977 671260659 32483371 275565715 152187991 862182380 430481458 417423721 212939591 510882626 826573267 976335894 188053382 373653028 287687207 337874412 604180138 907595713 477624650 679116219 864143267 660912537 14424911 646240171 193106158 624796286 24326285 121242521 156104161 128061343 249404594 865884658 792359157 704911470 916784342 122406352 97967960 936776310 767352436 290495712 144295916 795531333 974493785 910084394 300467359 330158564 374471233 347497315 2460689 902280447 797307879 292557502 327187078 48731486 746273513 877843403 386224123 851084098 944413606 319293108 488392034 792839878 313078201 7482595 635063811 198338267 597824414 650706467 844798071 340256933 837855602 702827734 812178029 828121959 464614937 189705830 196169960 511214396 522389977 899882965 953849699 289028982 406379043 827025956 593972887 906825977 238380643 572712379 300196684 760386396 307221078 174993053 25396158 310691350 280251817 902514756 760022555 594578756 681438598 487819326 832032200 51719275 239890775 710057562 262489060 189132959 930035554 470348118 85086730 420369805 859674663 202761950 172642332 933193739 998568762 132824043 683037749 232589691 685047206 234127965 447681251 853709565 939413873 380442656 142837542 4208540 837111192 965292666 44352326 943885834 178862300 904677266 148415189 74911135 477417382 198933676 169179970 286853606 605756806 97478659 299800765 915674592 259821808 524110481 484929590 777541290 77139942 812769737 522310351 621572222 80348086 223605692 299829344 69066118 932983639 236490214 290222764 605482694 500472751 24768227 300313353 113392795 745601488 111014727 201937390 695877981 304101951 497730440 688458388 276342694 883572604 995893816 708109313 43981814 42847143 553405744 85723985 882077908 822276883 163541208 954904503 518613265 993206154 896485062 501798606 193963114 169060209 87053573 239726662 132475563 835870711 629896611 442334130 588941450 730085842 899657842 112670642 944924702 80790680 603096954 952805466 525318135 722678513 404303322 671529103 990837503 274639973 62454290 428992 748316490 560081957 377007506 630853776 474042055 467169345 220351473 705350153 678872404 592492635 611203584 842949680 670631515 373462934 562272101 766643670 152200874 558599849 601758123 222911222 585851939 431710198 41717943 605024011 207592860 677696873 851424115 946139914 535696393 503076750 693988695 898504023 100050798 662920446 953353485 333349400 424172636 444985752 204056483 297989405 357096650 825587094 974322490 812222994 722359367 902753539 176057316 419542125 740610094 697305810 635650388 138588508 488849909 404444914 309323086 419175548 898455623 913581830 13199523 304017420 37682375 292432525 218225498 117687384 977441405 545822333 50635479 148051931 244892284 463763936 505544900 778141269 589184105 489344686 512777375 677539336 563515319 257672614 948108256 780643310 9552767 730490063 403657737 568073566 701814778 7654312 737659071 446618478 666274545 70158178 737274421 489061498 918254250 756793864 142226285 170630585 456418484 362327067 223715940 141790543 626560963 669427420 430859513 373528939 615549365 723337995 459522390 714753470 766755539 576941892 950498706 817684296 398845171 475108709 160271639 435427219 953764254 151433981 391506842 841456486 548959274 311849379 604069661 90110562 131082802 315698891 496606781 929185954 648159281 632709601 849153017 504865099 670935243 115783520 409752048 590190939 981188885 463902109 399829725 78241104 161520624 404910821 389963080 581325123 686604461 631323203 716557872 221242689 143262190 567857717 188146028 489188906 459228603 289680672 426215654 958846678 71305252 246696549 199743833 478912806 258416311 522197052 967774162 798899615 872165574 844816390 79681014 695548781 650331579 367899631 958838897 886549179 166446748 376647309 178312907 276134288 708788675 104406308 79792531 380316255 441826925 906770841 234903289 639296728 491981802 564996678 153258150 425024003 542847695 876140035 655736933 229120971 980446867 723721743 849454077 176280841 534984646 294323607 385208158 150927777 791038099 955321575 221321886 366233709 234029381 602996558 634476866 939192389 392086426 759757455 820440742 598778256 124212893 632869613 217664174 977895360 859632843 666411780 978006511 692397235 215088750 607061962 980589654 624813572 584560383 918341771 425740890 207489994 131645766 894248001 949651102 34940891 365877382 879915441 862276186 949817661 893972616 36292516 492774767 537943748 484289945 909271691 254336611 106733752 248219147 393516402 219251172 467417291 711778715 561581876 949217619 161928253 936087226 741580159 345357277 818621994 466155404 547115633 422490558 618923534 713569769 755203636 606371840 526766522 781873441 413747946 342171941 89430849 493608889 169966349 89874434 74590069 89598055 827579075 173933880 27187522 485798825 963286012 939059692 639321390 269674840 66517910 802742725 862471146 270273441 38870578 991462356 378826003 220767169 45511912 723387455 728746197 221826884 235017620 335171552 403174305 779047307 49829828 662700503 391529094 515073956 161388997 944726557 159729786 27677112 833997468 111058963 263609790 473612067 922552642 275757361 344823011 613923118 201285646 769017378 548839032 565603503 313998140 198083275 74762648 691122432 713593819 246626646 244431502 849674591 509336799 649147162 70082397 853338104 922873502 478231988 79366034 963898683 255943280 360856454 433519698 174941357 624768286 113900916 588637663 451969285 740513943 972310846 776350127 478134534 168111269 580790434 897997726 972394083 588116363 471620438 142596426 603163531 143366610 875402115 652085462 335049631 751119436 563915953 31007419 893210288 151575052 920635402 314589293 895417350 974753498 823647263 786199621 606301097 342574243 443798536 713302550 845704783 210890556 934957679 751619282 913861834 561542696 402215620 264697420 369036495 723375283 818980220 211763475 852260276 845865218 853516548 738507070 591671870 575676216 450699726 919528749 90803414 470539032 771108602 703228296 283725789 771699570 236209244 763415916 254098604 645303533 513258005 496977528 814837186 751782692 660673608 854013626 227869300 931859073 644910212 544041801 715350281 851325596 308412484 194450898 203717011 613677191 769425299 653534644 550666462 974782236 754711593 204646354 376888848 475180275 686494410 114964935 267442590 83708038 106179890 786205380 131906416 70308225 132652525 988221458 444970747 208905697 938682488 9455295 201670719 561721568 771737008 40948468 166414810 443710432 698732052 176903624 694267181 346665666 954583360 956058867 447723512 495208144 870782049 167727595 475443630 719455393 252756595 297339628 836855957 931128785 813715056 79339888 610383563 822079512 904555702 156342860 332733224 400636464 596974242 724278653 677132096 255766011 646610954 94428397 681840940 73404163 35629770 897702092 365629173 138007344 887692106 137454084 532783108 636659669 983569372 93389001 977714706 50613295 500407245 588006840 556613416 622232132 671597620 122839965 851209478 590205714 221274952 208412807 318427061 981426632 788212386 425747396 332020287 987526488 379562787 222011835 648806931 857189790 397334632 92643760 443302318 244399549 424049343 887048052 650709998 116578256 341119726 765517443 193153720 284803464 64700041 607792527 292091984 416904064 451651208 568548888 936845867 176595100 181532342 192579865 814267386 538422352 739532290 488551783 517888442 695944831 353917743 550467711 281235841 653334701 887880067 8908480 192078980 186753076 198351625 48890040 957639460 158705915 121648158 547290584 131291989 530950503 852911601 898658758 485234462 686215966 163342522 223939552 885355560 359674619 439533189 587459095 876340874 359796232 782620701 219694050 400653273 331098242 862727369 756899262 93281288 228879419 630803712 856943142 448225915 609466081 57456949 10084626 958590990 987580704 273622487 280839151 33650863 578572731 241639866 241764331 861890676 115033160 625031200 626290076 863250843 467966789 165148279 333325215 159334830 163851068 196236868 821889612 846455399 631385095 562949703 845372225 249370253 79782987 237913830 579673222 703747997 588463411 900618204 952443681 672265850 614623050 633837373 548970616 628743482 404562071 452356861 83836630 185623713 796400361 598933291 763238976 889650171 752196477 945206716 448200963 898442911 599221217 116100610 186386746 594093818 641014896 795520024 524196132 885676558 284547291 556798444 589664218 985413942 307165403 856698211 734150368 727046344 789781510 627082411 418449398 221407270 165918211 414030846 478370263 986236788 279804847 999510565 860242178 494202069 259079818 901571828 540370967 43687272 667040695 267532496 408975377 808534799 688936106 522203790 576701133 28599624 692891937 183978251 884267461 759929585 130104023 398106138 641779329 577380625 727646962 638217497 444059796 716271758 689336155 40635884 636181205 281140443 438906751 545801005 986485961 405950784 52644877 79192552 41306178 104196413 577211568 333658013 742862437 778700567 619091581 69122722 749448589 556210112 912357034 498755392 803617200 688543571 791244201 945637989 896427084 698665358 759438828 59539067 620186959 60732415 281287132 507362673 73217610 649237627 397750890 974433800 726300166 441942225 109369779 57204362 330000722 955728593 123096117 330036298 846827115 68877978 507256759 42543486 849635703 178749191 721164441 335328121 861974411 958116995 527176571 440248327 374575252 219351811 690673133 748040030 481095147 782314658 550491927 353774630 421934172 302718920 950268433 528231971 37259403 190280627 500255693 124118232 45247593 204278006 878172247 246035193 302522140 477343472 81671283 186650846 394455431 278730513 260845373 77844554 559398358 117806245 196422478 756078402 766420455 722840320 334835833 480127919 541761883 274278245 612290451 383442201 633549419 537791853 161028679 979948520 273125444 839734645 549963110 687175124 390240914 916442255 397045461 196712735 222835715 274247340 308382042 484694219 922663538 551823812 6817914 189053855 400904505 175390849 853479822 185457151 13422058 671078935 324358811 688641464 677065022 582773704 166169619 256057077 367595807 360196571 656291776 752812814 312488670 486503557 355422207 392593231 211113873 635072592 771357268 243431937 67003041 339116717 800867528 398901651 204662144 176163946 108450832 815877468 489853482 229831558 607259742 45526184 116479271 686152812 713669449 863090055 40172844 494429597 580679927 124963783 798279200 500887062 937768738 669278716 691479351 792069071 836021071 240173190 165822952 678107946 486289900 852575010 917964691 355621237 684616060 315545712 757854599 548596449 782841603 999423953 579774777 162531472 406377815 574520525 190355723 217861717 861113132 657246933 793792163 57804348 427533131 268236492 816080792 887650091 531782914 596555335 311139582 401615955 80166138 82582711 891721884 639733852 880500580 142533984 275224080 534203350 257142910 703784965 473117782 129125159 79600736 649350622 303857349 462136978 558154171 555798851 382035255 832515565 349989152 757882776 357642923 741547177 360760717 930113731 945360257 283511257 391733650 768480190 141160392 248473304 249924148 942045144 917986652 888274242 635561589 835698033 458569591 835721751 140953980 4839216 511712285 481434919 425313849 149282782 991246229 13096263 909391059 56105389 560602998 926490220 772534892 211257092 712463916 778854411 832009375 896630523 762292815 170294408 201325736 320999335 38559684 200533506 825520842 936871358 439452908 125110502 370837011 571563950 713070697 962739010 636417452 580706758 198749766 278311157 2453802 561306872 787972657 285753114 482394591 322968836 447036077 636631992 896513007 383962049 692157500 190108965 506770031 948966510 291715615 439980605 870781709 287470342 39941417 846090237 860915404 373885007 215601309 468459736 63446016 625170435 705596815 987138573 918131929 180486428 601479963 448322717 959667804 336685331 927982592 695390977 444084153 579154279 15928577 17862748 321115426 386851240 97165680 771474920 599698897 89068526 143771283 68025251 511064921 209859419 344781027 127121920 155818513 729440357 783136108 731253677 550888612 181184362 807994884 375497366 236580855 733928119 412493560 988975585 323365073 311548990 493036741 872620888 605793436 659890496 564366007 115374590 137259186 656196294 206592487 680902863 585989288 871060771 468191536 624674637 133701695 793458258 19912976 969146218 319499544 972833904 365861834 456030894 11430915 906598092 149928537 182513697 7856171 517397270 4417934 154140164 930651394 222269896 428930936 57902865 344873436 888586170 412433103 580729861 674440578 875049329 259287205 460097796 90903395 148244276 575967778 112666444 894811197 316443660 560463769 502671731 711409888 115987859 888506016 907662490 840767697 700705389 115830121 690601738 444740943 813134002 375976240 491205464 740538283 58800979 127848866 34893454 577496995 777641835 283273931 891312867 332075731 768942421 255866711 962091411 24332645 157572881 527747375 799148229 23370092 527459384 740008515 575095574 429519675 341337685 812456101 629684763 127930706 501282181 198372090 309271663 333368427 53785551 864924839 798184860 479729173 579823437 389716239 291304020 686872205 487192840 236980954 352016080 764507034 51046676 874975045 989299115 629503759 56985642 624640370 74986289 883872535 963185967 664310338 163551119 104186895 403763084 945405434 121681013 122240172 774335106 71576366 666506844 514685050 205304333 496424188 724761019 516341435 996930017 439211564 487220122 126297372 640192524 115841271 17259339 393378725 197477602 928588669 476892284 935503360 886544343 9366135 432833337 133603089 516737674 169866073 129792668 490177194 43465102 485177699 308113783 609176878 887265618 667239155 994640509 915164935 506165273 921446821 984095262 178108718 800258291 792501017 610845798 888579612 108487957 745953368 315641320 186765461 165863684 750705899 243956574 818779805 492215385 702877069 557506675 638082807 164271624 393662310 893646751 69566746 985450920 355393251 280816881 525040460 875943991 115525426 312551416 765583662 952323584 839904770 293312986 619891785 425011071 381051341 686406568 264322669 547975582 390018025 325051818 570343737 973523967 919063331 405967109 153032342 446881074 680379420 102951240 80061171 830533367 708330545 281019454 600245462 627998457 710630722 308863600 973772966 866281382 228963526 766333019 705066472 788632576 832044398 614287988 708953071 364049931 682586645 257202497 501943200 790485309 99430397 224128710 481504038 842460348 916864382 704277607 440529238 293229262 315085277 293810480 694932628 890294861 308346302 855925517 254817799 605853072 2645822 48903494 102889882 430436878 91157014 639231497 723204527 881757607 613876601 527164238 564449172 290676080 715361490 46762083 577820791 722176717 937682742 302729319 256153993 148049780 707080084 166894814 533971737 760380836 311805740 28797454 635490159 754698194 62122074 382794606 390088486 115215749 925551111 170217042 634088004 66565110 571772470 804504604 917265771 749298442 432888377 979475864 820889181 654963577 773738340 969504718 489793148 123778046 904523199 457177674 266124334 156559334 296802650 479071541 903863515 959179299 836587604 347578349 177212659 983897497 906893449 756302445 84133196 912937513 490797899 391864412 196426170 501553464 446864859 226102900 199585695 979510691 24143460 554996519 546649400 356823655 453481566 251856796 494200266 785388682 712718851 592349688 221853498 329829944 823277628 327674201 394806823 547393519 331712907 52814767 666567518 575548836 593522167 339160251 117413288 96268186 227110585 548800442 494124369 548601659 959994399 851907057 707004312 704522637 224673940 714907931 959349479 769061722 805949591 149352962 848293064 818335231 63444648 512930253 601736629 837114765 547810808 149322049 173415638 840460638 835743860 249437186 11391904 97178364 465513736 497172378 851105457 605582376 250638822 300912727 738036657 515138012 37290470 599313687 998896572 115973205 449364675 611256381 419166447 377338481 142090959 950586958 392275548 352645289 875000847 268639995 571275596 344586293 346954835 123235326 635355139 991632209 709301893 259131068 297872745 85848230 299824819 112198266 771194049 740445019 373035301 340282958 730022616 458302623 922997557 714773315 693058899 839996770 13783835 195126582 177844906 216572519 896530883 942592824 942187777 592019866 95056335 309518203 693260562 179146437 725206617 185561736 496097116 313060025 218085005 397402537 967727 881531295 986957689 302154321 358170010 521228032 923215222 557061683 884451529 340827215 902655013 672426977 731113416 31385297 446253191 662858461 523174106 176703306 297440041 219971855 36844587 527910591 998290257 770104674 895656023 316282463 119867560 354514733 501957978 713502284 719174586 199269373 831786880 798811830 824103722 326723737 214333801 261288157 374970738 419866406 950237504 996134595 258794314 195978232 588954052 626568269 318797881 790867907 517324413 672995510 40342852 19146061 600091220 35561809 264676747 892044218 301848403 960567383 35468823 23326510 806586158 179692817 190546602 416310754 60054134 613605029 155352789 126708705 90310661 381687055 700225546 668163435 249649997 664962898 844294913 368549742 126894375 399025289 815831770 864489129 788377464 312778297 705057042 203026200 575855844 156219584 712744956 256208795 904393737 431647629 308805350 384911710 509401202 549670409 254795477 739598312 649175276 59826017 880267869 158659590 21937690 148771477 388420265 310515339 599073829 174481174 943328459 504394978 920885412 360960496 431043236 878611414 353273920 128069554 88408027 595625534 970636410 957249285 378332453 815276091 293709572 901936927 201959671 676968426 342049020 113944045 104684118 959149129 520836591 349047927 815086904 162093309 934670452 666907992 63843596 142314336 974527346 589219058 674119724 753400458 353155366 182428137 838343730 343482313 814016674 431234756 670598217 541637300 501321454 69159112 336167427 470643038 586736144 510048878 300204926 262655489 121325363 204838920 838559238 392635768 107323929 611206256 878105527 629145456 222846233 312819462 191161168 978751431 155792709 998494409 680529431 631493984 607829915 343991254 520806739 575255151 879344387 275371682 952492036 728516560 336943786 563801954 267653741 638575744 941590082 422854478 480312380 665042092 363977156 857283349 355214244 225659144 677139328 544878267 425251135 829853412 784865331 8337601 753831751 947994069 305476886 402280320 814384894 806627904 438549168 962684090 765728230 385245441 960419188 861531686 210285974 966547237 675298953 527430062 83850924 395778159 732158829 310292147 87741473 118471130 147762244 597399279 8961344 414998833 168520256 524870580 924575705 561237777 966396628 570103579 591464042 800567807 719925675 908202577 82515045 884979053 330649889 916039286 309524874 672337995 513497895 124710553 400155794 332623551 255847724 871062249 596677267 714583043 463283932 276904991 470473660 603344595 910036107 347346479 268155174 793380837 389850766 615026019 919427667 286731426 224185868 977363630 238818102 864170360 98075939 940422188 423023575 44994931 255023864 847904829 81196576 192499119 79671893 641759138 866148290 985739737 447982048 363428079 509321449 221511446 29831737 51348622 708678341 833364679 835069577 234224672 459341173 192233583 71015491 374819726 444363268 271438089 609047086 617328629 831368718 398334750 439142046 982576376 943036841 698528083 907804032 594332882 985034195 953071282 326510581 592563781 980084358 544141738 21956383 797867394 949936281 995560703 520481926 324538983 326101425 982640083 126665683 721574525 346324357 53333740 681624155 797211296 854558569 326568819 881757792 436467361 564585754 197886611 470157497 735916573 761198798 251642666 332781260 662790192 834892166 754388179 301048870 850366565 192506310 96577306 159543397 825522392 41235368 62404970 131764679 125991287 668107730 220795804 616067351 815696109 268769309 384712858 801496438 282741556 635128417 916799941 955317888 669900538 932706537 31755571 366676530 784534599 996212459 354063979 699002506 675719210 65224591 690302748 451407689 370266236 213667482 505200093 805721109 74163306 678992458 709091046 41806943 667011828 822687422 166881898 913422152 734327281 675514604 168606922 888075180 277121964 973586540 989333064 977118710 754801456 995624134 170704337 247409427 203490492 271040250 937136476 898025163 860791557 710808321 47375583 511092911 554957439 748002447 387051547 195600008 893806275 500472740 609194281 293743964 308018929 405577454 66097507 918237316 965620194 445743977 709061323 298625032 903357441 730721375 957931989 299231650 694837188 560241457 557684202 858874836 89853367 880223242 156126608 298618577 339973410 9642439 116296450 37811040 510001382 933896920 483163654 692728823 351481270 769920525 233316277 714714966 407367320 191099183 918550932 416512354 33784752 37212193 286791184 129310248 693479281 173349867 344313061 360895107 969318501 725426426 567541041 376600036 559471499 228227442 724008949 791815989 655782040 478550484 557332163 10944862 975269408 419789287 460659873 287464593 841970069 189903854 952401375 117940917 313891041 337554445 412374151 7022292 5586375 140419808 424524013 379434875 506512117 883934930 49618827 91548216 117537239 192997378 401377748 487579490 238224445 531060903 596460822 453410586 385336409 943772704 144714625 463045838 717205555 745579117 505845775 493136879 385040890 690478991 971780651 460609673 779478277 992013913 940639505 502646040 335154247 712403732 993345392 969317331 263724508 187526151 572563472 251966312 37765316 852468151 552127822 287423540 54615803 223857870 476202344 861175598 252170737 128457736 290461829 724165050 864462693 672996601 514907055 126895679 250538255 449494772 338550706 673214917 118183046 368093748 313902387 19771571 564268644 774767809 447649015 491865542 837183438 76371588 305458898 938951884 883292455 975371834 520815352 235062813 170080691 493835238 307552096 961745509 344674053 987637074 626320849 203063581 220642528 841667591 561100542 318574164 458489009 838408149 609457363 356244240 153066583 699843149 425878757 425719015 199649023 682360100 29224594 343057470 463201122 747798655 465359218 28449757 398759161 152942781 597303411 224259309 817121267 604188463 566753629 758427294 791005371 864619202 157509081 649862639 348463574 546072485 101670628 708836988 219872195 169906759 837515832 768777781 950475078 833070707 797439455 65939141 331545714 621475182 314773407 390646357 464575051 754755955 923797971 346254169 966189723 168845277 709818452 397058692 837638616 34680323 721485526 115388338 953845915 997976667 472044737 559267832 232992758 735178344 749234341 127758160 739778341 648646738 869361212 500800259 621012186 72359 231010755 872353763 18035921 783262539 202809602 154738762 60299041 935252393 80496905 613046866 745402604 249232010 660128369 215734655 253174703 482909084 71420188 285272313 545865992 97124688 973468635 231136252 993772003 795142256 730496076 189822712 793226879 223248459 133998295 456969228 454277643 868974370 455265802 430831407 971440501 143009922 172016094 353752960 8136932 383294234 330967912 983071928 446131689 250552722 105781881 695922084 827979067 616943658 200693755 368371482 573113726 655127694 787209829 500925509 95843599 723630138 387997120 711893428 60909617 430307217 758785350 122769735 368794906 779108253 864339308 774666444 812374027 113685407 330610894 272285447 955923186 691885825 261907328 715105664 41043761 39281366 362586648 334931294 975187535 846655598 689018428 723265619 83457821 60288896 533452054 631099225 617716965 573992281 527072075 659654114 925925533 41969911 880797468 194302907 680004112 681963110 952198580 250174768 842190609 491269650 516869768 38330430 737739548 452357189 776655560 284608543 873002698 965361190 375651494 668118623 61374029 177127416 91270561 453235069 938429405 282573272 835431963 305603809 97836886 185930981 161236157 644165702 447327838 141675330 46309895 699845197 53098100 27127642 895073425 540504233 767920095 686087733 638132942 197521643 781808179 362229397 88382727 651563652 18759058 368057078 957826574 736667360 498025591 124374185 276219159 210996732 680371896 335365915 647355121 749426605 571686072 356387245 817254510 515560712 761512582 454238073 84716800 357310236 613577504 76290011 561679329 90472154 116986449 266002848 740803749 361051337 761451357 466706177 419204336 664982662 296864315 191722699 262826833 203541379 610024354 657425245 426850116 143145565 612249735 477834386 777899640 785063749 35865041 666043437 626408536 622626566 697097419 645009334 600061457 752110379 289814134 2373263 519791848 132630929 47267721 554278218 887172948 878901634 946113646 23480821 95307111 194293458 277421788 392060945 204689281 890943437 755045751 333257787 406192812 399370544 836704273 62904009 947295346 130308996 216116795 542947263 616906916 825875694 612386005 258313744 555201165 569517375 385756935 767370250 24544321 816781003 908616419 663325194 778036875 147389950 129516926 488384812 968913399 260938214 911208139 510355901 322663422 85687968 950318426 336693766 654474644 661877821 239073937 182795373 305555242 916362312 975692211 572434831 386253853 51797457 416862579 989832158 422718301 998979108 339804162 855066127 451576483 489294958 267764906 148742725 882125302 549385670 824633166 978515000 885502610 179376849 195441000 983709113 67443307 542441361 991273750 14555224 497589224 710009048 934374706 404291240 235252255 331135835 249335751 887112000 127854684 660481272 997222803 484256417 29593577 833651783 443698628 537761186 434555750 702135307 967530593 151220792 911415773 964841543 109493268 684080310 329034603 612150597 894472684 441137583 707704832 454780959 458355355 761757942 325959168 402830736 163620865 255981069 75980948 876080298 689830462 33464875 315685755 389138781 995547798 542608197 964010353 379712493 825830656 709935132 378535757 258304503 757951567 499602415 31730132 948694015 736363966 158414303 127000430 370152870 839298341 547884188 291131029 362029382 10270173 150811974 895317095 642535586 352610372 938779444 227023598 158812442 22437928 33379758 507470323 555322538 746965454 847131294 363133836 674520295 705792205 687052453 541138051 143690965 176085497 464118355 493940151 461367650 462495942 279383847 167800179 911223251 973800036 31040039 103850866 29026776 36618761 158292439 688642753 637729981 489378334 39269338 998976497 936502574 998188588 633286339 209152328 898236377 653223516 242743663 160676960 598566776 680494046 577940459 14384100 392335472 658770580 551633636 989662783 214222227 687075967 662108800 705138100 958585226 957424620 567431063 476676845 99412102 873534499 937858707 836869518 871406822 781433924 449938389 319456399 553957226 278701125 636760897 336497259 602792839 158250035 859711391 80248936 864231149 236162238 3042202 714813036 674124402 49710995 386561830 210486471 147007201 316172403 149158770 7396351 827643643 595754979 922212741 577530127 897860868 765902282 688717103 692882816 510980582 546938764 844520394 626992516 588486629 242649823 907371318 107622685 668693682 830809325 268532484 605396261 84442685 506362221 874083344 548836885 886258625 348167660 342492860 443587057 714550348 789911127 324078869 932702803 632527539 348714338 948253177 121807378 614285255 813317294 235454467 564294999 187005749 384059838 66227122 495977971 544311296 707004141 498029122 742980821 423577178 173873034 857665421 458666397 692325014 796150673 851004727 720910902 336306267 416839615 882326297 971406928 583005425 277890041 49058014 38672605 809399738 841828418 529304842 339309063 933017785 488249566 600919384 773670920 12701858 403808696 302160202 938770671 926800216 129413678 791898330 220287145 714081236 553456869 660966991 880140424 939182410 807726857 535464661 154361156 363892093 911842553 150101607 715743605 863474970 889550359 591142660 237577091 602686353 332244027 407555653 369668948 796873516 259909704 181518888 673710229 103390885 109061754 208140141 196621335 538511276 745295006 763043148 846836940 955853031 82208889 380997580 579848907 610899053 250318774 424458868 488981028 646658345 305024309 419615499 997827045 629841882 174535045 959031666 135558294 645009837 440235357 148279984 317944670 542830031 913665862 290549384 735718575 75030077 360831994 192004505 190882618 81793862 558102473 75507618 573716254 431342200 968558840 244065472 931332764 530864815 3731506 477581638 834752958 707413009 876534561 196949000 738121000 243351358 320391769 859658093 623898021 340814440 69643866 699753996 333667064 641564067 10021300 305759647 611698943 151114864 645747293 661787398 100682314 484943179 836991268 546010696 402790501 118826467 726657588 86833696 114670955 768875975 820960277 483652705 897420080 417102313 684370100 140631682 9137038 801328074 698140753 652967351 190964031 393572465 733119105 370595698 141278252 670360138 149889394 435763286 376700126 911891035 599707353 878849094 867138308 450053609 722925608 848501688 747981751 198058377 286986520 183798235 222897898 784379967 611557912 642870442 816451691 696509839 678889982 950305730 1547339 264569035 105593721 855365764 397572073 327469654 83518810 565571801 418725459 408524223 26019301 542654629 364462708 983452567 860666730 157904685 512667544 842547396 726189177 489360820 258674672 910780679 595884615 100781532 157056649 565590096 131291137 552051629 878002675 447585890 748393344 522210100 784466525 278396763 778744217 191350794 115454597 380899960 309209935 200792228 146805672 518478415 915766428 495243557 336607675 955809234 416657906 195334518 445014638 585587785 924981424 934448999 67275318 544845943 279978702 289296364 768740568 553049295 144308936 312959423 999761631 97793751 689380124 578602284 201905621 702298173 622991553 617880055 837659938 898617659 348730438 619658676 698918198 284872608 586906471 97109648 339887210 697601299 567855096 302591214 356871220 426361762 976082207 155188589 470718575 559971432 993120332 187563894 414259005 664546137 323797904 508009195 455438513 274467944 183370475 344099618 907242757 324182615 243335381 590878849 591439835 56245987 159722684 307461100 84915475 654166148 920636370 49103437 78718858 763774008 591048876 455307649 657072206 377689175 144309479 655250099 183164015 957131284 141672328 668338967 126844814 639744977 965270945 373253959 607623786 715254860 793541072 849702603 518588250 646070820 90626942 469759912 99118166 522032052 812969606 258341898 76189335 803675601 981687053 582852200 324018205 842208912 15135929 126129458 417777098 930447904 819909183 388133227 517545699 906179985 78987270 669392395 808929832 864522196 885148477 450097071 527965624 734310841 497752449 333056500 813687614 3963579 973722339 545321512 223113525 633149986 146459851 468747789 643457854 491112268 99459484 447859927 609374880 792978768 130816396 580482317 181904327 378480423 818767668 521741675 292507415 882776553 816338896 719949055 401774278 788631530 364094147 720668683 189706127 357593249 907693585 199590081 527484302 730375111 636803836 817955672 979135965 357767345 168928488 507860993 634777526 737725490 408904135 842808957 84676717 144054499 371386056 496089830 604429787 569396410 533374582 452166131 345455496 471673590 86678065 779190202 769879413 150257322 796175513 881144960 496126941 422837043 707638670 654571836 129928138 773250837 224663674 735438822 896351563 693089181 383021149 123357851 63045886 511126343 926607588 940936621 823183409 229920102 51541120 189422697 326822038 780409229 56322871 580824697 310264540 935440938 365262285 935967142 233823012 164382256 871109193 248110692 418515738 381539362 796515517 725105252 923656045 153056998 974729677 658160820 891561623 811374937 12457082 517867888 547440733 250109031 801684540 350624193 691345194 672583571 468998898 881592664 828118730 435963479 422984488 816055669 310248337 757471235 954937903 495369867 36838187 299080218 794547256 792470965 91831058 271457237 935810349 729000629 578271081 219594847 457393474 141197223 794070844 709546241 150399367 886876511 145955903 657852372 934100370 136435112 241262403 956170218 140880680 594161358 192044237 370344328 409083858 528272755 642738119 625067842 234409806 214052539 22269196 812046234 689480618 215428011 484095412 507978844 153361668 940508732 853657947 613519530 191321017 133825379 166794419 223803055 296535653 519390123 561737802 523629604 854759519 289972395 314382104 268637520 191118524 207902360 422257765 461387504 258984049 95549284 188471210 102748649 824928930 381394061 257870502 942283386 395195551 263311806 593631096 176977254 311912093 274522872 778251917 364241765 653394505 708792070 12934245 254518743 591299038 281707670 272463176 122933029 407215005 382036185 66236556 875173575 199911255 322935415 926496887 520185057 56779151 257932554 653256067 89547206 1395737 995215023 749493664 956129716 104150444 216889635 53092165 248677470 319972536 964365769 765848791 456553246 133852779 620334815 29679992 299287102 757353099 822199230 185430496 118829785 722381065 624605207 300985441 84157517 847986603 267383640 318353172 266653966 993266640 476640024 178587318 304228111 142753148 533674623 133750394 67898414 623949660 419750603 788721300 725765046 397076373 962139510 225165986 101148339 66739985 501757396 448137232 453606880 475781992 552237442 603677967 508245313 215788864 80290258 625498159 955367795 318035256 496834168 191066619 435323852 620353190 437538258 346265343 324292167 506720495 914212338 382565675 44680281 174348401 30558992 903954632 817569332 258886871 797654555 300003227 24463257 348586503 591442463 775738682 743849183 651805754 782636820 575875948 472070508 980236256 761391546 291114415 257175024 521287924 113515500 508196150 379501582 692856557 740163341 482544963 964936528 662572177 687607081 998083308 243495306 87916507 946261824 232001709 55509054 820748230 81442577 903140485 884622709 980284171 199055172 456660969 113597079 787380881 878040599 518944852 979885310 724961110 348124051 722833427 487930230 33267396 848532349 435612298 38082083 762374211 86881488 980975901 212305521 573754975 420030242 144790488 26381723 498634869 445394033 192903117 733508855 100776770 942811327 489281221 269489510 19549749 241006376 365120993 167935367 556720097 180820283 951005034 123961447 384166497 833865239 425004250 324854210 755725651 606714418 859668982 764720359 684988657 440705935 157649364 450232566 546861321 214277447 388673918 169281162 806490565 283375811 665690285 272444109 786737067 114649120 191287519 317759208 647957297 680598838 247308051 178751357 778796083 223581414 11147869 157019940 853950276 252769132 393545128 761316033 598961185 765638593 135071102 266251075 2615448 268311922 705372820 115735145 423812935 394886890 989655328 876460052 998105784 400440084 653919262 950292589 861056800 443129926 803213216 632290492 497357834 263134208 724542406 518288576 944656543 886563286 166184378 265046193 38113703 925586209 681145648 54812331 806799711 774440267 203796308 129117567 322893782 221577391 249296621 493800869 600998181 786930688 258052942 564338149 885745851 168536266 254867748 443493777 924489491 412835588 243206395 346954284 473432652 127464409 96521331 378663606 730690012 752761729 980004881 516559643 682424579 567721531 181264384 75542992 868948717 726167263 252690123 922353514 554261786 865118061 743369196 468463406 50330783 573220606 391324178 968624449 105389018 649140243 656570938 212957689 912014140 679801733 651473277 244159532 652769151 160459003 288319214 910261425 58958776 891020845 775444657 782159675 972612137 959547801 336034321 46949148 771502832 996904480 172549729 996753597 921403336 104644183 983381954 600719375 715454606 92498404 451599756 171204864 845755228 436034423 255816616 227119098 504755262 450946865 32273193 589881637 370642918 228752365 266838712 813466051 724454818 507196197 516667867 104984622 148992481 549056725 104293578 83240337 118058497 693947451 194858210 989516682 659884031 656393783 583442096 887165117 506612609 438259044 461667359 456650601 74317239 141783903 937040103 359868020 838467634 791764593 26018164 24491219 659715531 3602136 600759602 975938405 380339311 165101317 104696007 65683125 146419294 580002652 519671349 358626746 149739799 362574081 570946374 219128235 120470520 222931042 521265606 240605669 514419475 195167970 990854632 489125561 409173949 721419 283752022 899191451 952814411 17825177 645458278 711501922 980370502 403897597 165309225 463127353 444690135 146745524 625235675 475981723 543142923 52807133 506782903 71926167 30942466 728454614 603544795 98611947 45974388 262428760 36847536 53775018 196030512 836272178 134421269 411826813 572783943 193084975 822526841 794828580 581662723 915160426 197756951 866763105 794238661 128263131 207110620 21739044 718035222 771638158 159390461 294509848 106686904 294310887 416627566 694939073 485999297 119407741 853512534 895415749 23633248 929189657 299058671 136383852 380560681 586705827 106220610 820409986 484953771 931904811 129075416 625007028 997193575 685918214 585416292 346992522 126785361 262336071 336627832 960805239 97604612 97272331 427212055 638182091 328994028 643924826 861905099 789531784 274251543 577016830 840161438 473555390 652106859 76387529 655415343 793318936 867775966 672670451 638843985 590045132 826517992 997811006 805451673 238157337 19721901 932321759 151062956 264147460 952407247 509087370 416206473 685959084 92384632 817447065 691841955 979239820 572384225 428434389 846351871 601346807 591310072 208542119 384791598 318215073 832033308 567032927 914127515 939496780 398521443 436046144 665653217 864327281 628832703 855367499 216528116 925971089 234687993 96633379 843501304 357515438 986285954 78299574 723281571 983938197 715689293 579012897 879558433 191336471 108696847 397022882 736815224 614258430 631506309 559285573 612626121 171597326 26676799 682975369 915609215 36274423 524102111 9454772 840934488 915416842 373486098 861048495 791762293 811448532 294662044 201031911 944749108 802621848 220994906 717012295 980019906 891496363 235231382 325127295 280666676 638864554 125933648 663049660 367005937 254949631 735722416 636632613 596874144 597046255 296005353 902083137 14782894 653746801 757925064 884232322 999717227 264604916 83716274 314477958 18256092 721800532 80868434 618857973 410838204 933060379 120084835 164983351 474790594 481509292 735395097 453417100 191434750 709633008 420540931 59309610 440094310 93736394 30310746 401764465 470168053 943930824 726684524 91728887 204794011 945370003 623125548 319186874 626914981 760763059 988314393 405285540 499513540 468369504 317616133 340311128 448808471 582204104 146471210 282531172 529476949 133273502 194757711 83278929 334542631 38695651 784402632 855539967 507844893 205068129 538035208 222775860 837642808 938978581 220635942 283402966 514829115 22298343 50013542 410093819 575490632 443275239 703200821 274389770 308227289 769858674 301289782 426326888 610591556 904403829 446302980 769113941 568008335 823326288 736756701 261592649 492939725 381147801 390476495 442350384 712855099 63827300 689774235 477420227 271185081 480718138 952458882 831671917 590763143 241959429 4814888 536532003 345317425 602142089 974367348 261795113 764210803 69445953 809231842 331776800 696185496 4362290 330211972 216062186 531803109 10404615 615572983 433927551 220665062 670398928 869711449 598613504 247713567 885011511 319071326 606002240 976501347 213223489 519727007 140363297 547447477 57383799 345049078 214517505 673624787 417772931 255937011 9846039 603007972 466900924 8735056 791447520 535152470 410233110 915826372 818731425 567185383 210149823 778200028 949824691 29904456 264895756 410540354 147127951 383042416 700056649 992508353 81928901 639475553 210966452 36875156 257842391 953591966 901682144 832086895 765446395 268478725 319051005 301192900 312602147 946420145 604794591 591589260 50416833 836147328 696945213 392596003 436799284 731697612 331419269 181598637 206073180 150446259 234315898 875270645 43949832 21353130 368225307 190382563 569785605 147407340 899624168 792150452 431638639 74871327 829895002 714052796 684839977 266601216 982075789 140973983 351723760 354172934 640991254 607189776 153059116 844182310 526571147 454819887 974738205 952050157 153983548 373668289 533646029 650273081 129059971 63267167 828910518 486789680 522692596 343170510 540231691 465132108 843102071 585132845 37628767 643594539 165702725 245503328 862298705 307371882 799590188 415891698 524510604 102244738 366470708 702614755 78988961 273813408 575649480 872050938 199734717 602623047 676508209 829130755 921738006 715516558 55913170 139767762 584180643 656907770 909442898 931545411 309658641 200444019 333819390 203671938 606693900 69080616 810757219 505759548 543316949 929969091 51452074 103093423 68832542 619580367 997474070 798801387 138039828 787531163 701714541 37251024 679214489 322312454 760965105 679318051 818253303 963511095 135835525 868629988 121271127 425717780 592930008 587038996 838841135 131677171 289612353 320956985 582689425 43980263 538866233 89226996 134311267 545426069 236040266 632441125 375220098 244308353 331600631 442055401 492725845 871783212 418516251 583055189 375969493 310589494 130619135 616430568 58081202 262483526 146686758 815881078 699869798 348732102 928803690 961751309 395527284 826719147 896515242 678669143 406261518 264629988 729616424 143982213 818312324 918398930 95378394 786270752 57831511 569629324 686520573 77705796 170188743 632127479 292739643 262482441 92808099 175421495 966545449 874907194 520884133 976093030 717370426 752542265 165024535 487295305 338567491 777873339 632728284 856376391 447013889 743369426 106091447 700612730 624246871 271485095 358201565 603305057 245485794 370640554 590149473 364036781 507495922 503086046 145535334 762523715 431807778 871057376 593596004 86635477 938678072 801401866 631791602 716511658 972589271 681771609 620828821 92560934 869707523 135963329 998743122 379849101 896611013 616304809 849956835 294858618 699427438 337100641 682191402 787626923 754540182 606689952 755964201 42019420 676850525 237106625 192086323 672998963 57517518 486255890 194986451 142231796 912432842 549010497 245608358 619485278 69411779 330523178 371060174 791672573 465792089 990529832 687736986 53745040 529116539 508209000 81934657 875888030 879524711 215818364 742478147 961317632 815454163 632006571 368818458 809601330 352494273 265512424 894687081 367188553 484506770 788911200 92342266 444405602 582435685 384272947 376321210 17454596 852327346 187802444 242696323 317133660 507827479 874294789 499158091 326376659 314876191 364801480 264141321 423344174 198837066 139304214 844273737 657215706 533096942 962473128 556115829 703793109 393840757 385033857 519072732 821316439 608903655 812677879 660316862 728166406 418013569 346842704 980406910 218084319 887334629 101757612 464179204 409325107 390658980 189226044 543172844 990353265 534621869 889783743 9324950 372983059 239163407 110780742 731391329 841521785 284441217 179620698 114475763 371447716 670139521 268856053 414857662 634450496 76840615 745465005 792631499 560179035 181003717 508107045 420537875 639924833 682822821 744570695 75940263 392268160 762548755 421474705 295225831 381103762 756744969 419729116 295839533 708032543 984666776 506309187 285094749 153016992 237655176 629657320 373100573 471589719 961377697 832315068 560328132 596784462 648723599 625129692 594895619 608262067 650327963 247004025 170106677 769464889 36084511 32628519 288669729 953331567 41917618 778439673 766932978 530635317 330184962 550907738 806990065 702418335 529514805 595052746 887481437 272800443 853127610 387934106 541632764 1509964 254768797 928496084 541695365 480161702 990265987 844323349 761017733 886866953 448872421 640022373 739498364 993791975 877360970 877405904 545980068 153396306 648820808 99017146 561289170 608934825 250082746 782280912 471181986 657645431 711972260 521397573 191642318 624887342 533858946 970157404 282399342 798740507 904543942 66667746 558252615 391983007 763087006 674064381 655349459 110460978 411103435 305437565 712282519 110282144 410331693 563711963 212744343 529405150 295116483 135431716 986114662 980100784 820428052 318538829 361024900 888094463 407133701 718570008 971042455 413908240 443580359 324687067 145292265 743181952 913557860 71211499 616221700 23854808 364350356 743042631 191716268 191473319 953723641 383285039 624234194 604508199 598226689 53313001 316590714 99694763 960589448 634196621 563708200 904331357 463551 963594137 841402790 923684785 995558106 159327128 142760498 839961698 875967172 609589118 397822950 276185999 186265016 825929427 857951740 826690298 279934779 172695350 508369476 129540542 476353471 879533646 974935732 314513604 699567515 196123292 972981464 8482451 618764828 701672909 492187853 270393170 124580245 110488985 576211771 179404759 567021492 457982941 165785410 653300986 928466187 782543899 626096589 777407838 647000386 135232248 436835564 319591941 712850330 524837137 570064184 154249340 187158919 276236334 688838819 140443088 440331455 980571177 416493705 830992840 512385974 286743457 130965464 161923681 985720563 210595156 835621661 448351798 869456629 371539285 986723467 249763480 256148106 111282558 332674184 237482760 80877295 695927122 196343938 853491582 884231477 966840274 315064625 528965882 521482458 494179356 596602578 628433355 41643687 200250256 294192680 699668845 579374151 751046907 394655169 796908813 731237474 92121115 165031736 773375389 336305310 909094019 337299206 617474545 168067353 946538921 364935391 249003549 632731115 80184117 296429350 848454766 829640805 341818449 904744155 924870668 205444846 797925003 68815254 962352542 503312295 541806886 658952597 330480643 267865344 379409296 72213970 385547131 360380181 308318411 24208924 454505912 367396448 328502674 675571881 209441159 320726474 503448798 285885611 968882419 9613232 778952127 135711238 509253451 697151631 205077687 373078761 933136945 565180313 766470903 592592825 207193542 722451603 428862124 580090776 602328223 54349082 255826546 834253155 986443480 522253935 328497339 894313069 907900744 767108118 149221381 686608876 904721684 97600389 168868038 241370649 421782612 425732574 692339109 944782167 701362768 438624917 627774505 411584185 734304055 590693695 127862263 219685252 463333098 36635704 892947146 604042814 250748510 311160628 472765617 675617214 457986707 16085728 286050571 285121152 837054552 276967531 254145677 196808910 572448847 708313741 996672336 718021210 379109645 572758717 425769085 385280064 436858877 260205268 186278931 24972887 846064989 136505216 731849490 294342357 282332223 418364319 924380475 541356149 465123446 656248918 640855040 89425047 398138902 330891989 292249428 732209623 550538327 257092328 924195297 241189397 639006366 384077491 8848839 248815088 481135539 777368727 251133976 659591635 702886099 471017455 908544974 804433772 121219645 493331239 30646202 266802465 374998939 668243841 218075920 527171684 289746112 792190988 614689598 152437517 610071241 862987243 379641951 788842986 559270454 864241882 654052792 179989018 249313554 687491133 133896827 584920283 703205940 379967305 733697248 84774138 550876848 722022767 243336886 243363197 48225468 487444280 934125073 340663623 113166501 371875264 457630836 933781331 662636775 175173824 214021875 581432077 504275756 827820349 246954309 763454198 465600075 788618220 965303902 837953576 131225267 789225505 652065078 36280260 769325494 862538329 154223920 864195233 721836543 799141190 438072767 275893678 299259004 529533572 370172171 300079692 574478820 782793151 48321869 966835550 485369902 339875258 302340549 140355750 676691300 657390432 361999131 719534170 856134476 848062722 344226462 175626386 182581218 520920726 101192256 803268992 601857000 782226701 883073437 936055699 717416081 172267448 168850089 312367321 384723846 878322771 206887913 732586890 969844430 529963220 951812964 973748954 327219439 303211979 873507305 317707866 82409660 828919379 817687426 677692998 921880580 994157791 842364524 477101807 294123451 301371682 126297397 623237968 332229479 691023110 171617951 124625502 68471911 165988392 456296316 814933013 315218209 506597756 779213513 962165970 528030647 257634644 798638124 746405714 214166705 954138028 957183817 895729548 396112136 119432614 886391291 226001547 640850999 661182737 654008407 177382149 769474580 37175834 609539575 853817591 894820088 772488935 663529364 398808309 298531110 212688730 563477561 586466290 743930240 980379784 958001841 418105248 295222224 21131207 802284587 494440850 888539172 351287778 39013284 156999406 538974450 2115951 434346673 287534318 483360790 694694376 685390760 189349103 555191241 300360934 613888997 493384874 602037137 535974606 166527781 994334813 798643946 426637913 810016938 181666298 444053402 97513036 324330836 926595618 317969896 681774501 283138557 715527832 537257600 803693557 996222113 165602265 180317316 727510367 574200466 584604922 883952975 865986241 652619530 863694694 862658617 696699907 635923147 552682633 250248884 310231731 533419882 900165450 67214197 385407878 764382785 45985859 901075238 665709350 563755336 85096396 46217317 303184808 191776329 815369593 324987917 545235218 944009985 849981816 249703236 70238704 922172878 550625727 192336867 395448557 342565873 503887246 741691644 903671346 250572111 517392867 364544939 295592230 522931398 207300626 978192990 565537013 591456301 778260261 968017889 214534800 842876852 769221131 531417967 66796575 143842361 52971161 616860421 967589422 253768253 158468558 284157677 303638683 945052781 628422562 120809620 576481562 21766920 32697030 637417478 6261253 33171646 6289343 760926400 114957967 97795591 968850769 359584112 669901783 695361067 588415276 98481680 465912955 987404601 360654581 637358990 117761898 560008295 738871980 763918940 336865717 427854098 296017221 748331423 785408956 75322881 695857556 692192004 970426328 518622253 171320271 868957671 121002868 189678812 916892074 704525732 9248069 740687535 25717184 715050594 147394628 811621629 797218312 228178651 15504117 176849873 532864812 592979127 591819945 455224984 710814945 426233843 94283281 801806615 755586913 413363095 539742730 672695839 822698972 552618285 57627819 375357749 440442384 956434456 453383437 150837439 827478167 16895031 708440824 556088473 182739277 658367842 285137179 392195511 972525575 773864121 255348541 444746429 605890996 272981908 845528427 582452308 236233217 537574587 394623385 642314362 969559630 212282280 754175915 525570130 696839506 292575856 652566265 256899313 304361151 536347541 655179505 422852509 658925317 392843641 978589485 742090905 888086887 470131776 961171996 417984182 359924622 90876827 173729657 545417322 38105756 575845808 884461252 405043174 406952553 612470922 71203146 233177886 939481471 361259035 37171038 879081650 851477518 335860159 642604561 722073786 618839275 234414214 693258300 145482147 499093300 640350972 471953749 702553422 115806108 219227810 147219958 49235594 289167682 710757851 107270097 672293173 901780519 170461581 730882255 992557333 566507353 912080742 116451150 139001840 308663552 814580463 629471040 28708324 497232128 8530271 55285740 430163457 222161823 615933363 455211370 51212522 464741784 906571371 241412129 962777464 52729094 143398900 623463532 960348814 20655357 288228865 755436043 173140127 203567124 848704561 868559943 50745332 603214166 961522049 667004543 643158054 20960359 861148060 333882388 861529587 592831652 307964394 104414676 905553267 230505833 372435308 5373677 608949517 278889883 672881824 514402425 758547595 35600816 732796029 266637131 435057136 712948927 657524190 872394670 799155439 835719697 412167114 62175570 946193008 81251377 213791938 424362408 660696304 742258903 568936692 800776962 511588297 188964854 110609540 520172291 799276175 445750673 325797993 164078947 416041058 934541180 978664019 149110451 368771762 17147084 599263459 320673477 747288536 444362632 940774859 884674429 241433370 768154366 159893634 494631475 788114359 157727939 443890261 164498651 17678030 438498908 315508687 44743985 759943903 95918905 752707428 222560981 774924980 671428397 587301615 130968575 134421310 676601563 776936317 26558865 702230829 289004785 134886956 964504792 806341684 308830634 360193979 66954094 660757920 794465855 656949546 941130237 278240675 785321821 187011684 747635536 647577650 297595180 603894006 48702740 710082767 80672999 709422679 865186054 780210027 200716883 922126863 659511519 232111581 408969052 969605754 469668740 946729210 183677246 936376787 371084821 798057182 29575644 401150885 844377237 412276384 81519281 251191924 755145186 194945003 858039448 948094233 610564194 714126345 503346193 6484958 64492934 580683438 504660897 474790051 900027182 58405283 46231689 30080268 188029995 104965931 544025833 555205206 762015698 570693154 738876561 677890768 793464386 100181021 455827208 913824703 554027053 2606836 467590363 118183730 290934378 781904670 616434431 626513592 131745587 423430267 577810958 857244687 538925449 926369325 749240549 678969845 414007874 577982022 545386572 997943046 7055195 102969030 480751749 716545331 446424100 500784938 922782143 561547911 115695149 40817219 16123483 602505883 108995018 187156533 591557191 590465539 473241655 630702966 804965891 890345761 995075569 105114725 108518791 264862296 648590606 315210108 242614252 117837965 840077922 968835945 478156304 866049829 265939277 548425310 503169782 278813756 903772004 221954368 34568579 297807756 552389857 858964880 241970953 39135448 959765691 613933979 391071958 429002100 785545339 430612008 27879316 139837866 275187442 693397375 827884436 79591026 293371007 216702179 554890005 501764839 377448967 976913252 804321237 157149243 286398507 934315515 411384406 498574720 879404031 882165345 913645580 177733736 349184297 996160643 332089502 282765458 976184428 998978947 822130235 113646742 402381427 475497219 949239873 994623976 650152225 923870585 289370291 318597621 524327636 899540446 673504276 685566300 805481624 137243194 620154527 582731433 415358506 286779249 637018129 176282018 79440647 900618659 154425091 694945052 660190302 62398433 853798271 831390007 611585312 947857412 7284194 348289173 317534623 502627347 4616293 878033528 939712587 217131705 916752321 92907255 888477912 828510849 286871203 821654391 159939053 530777560 954279665 179184695 434344274 869817120 747944108 27711547 66247631 169476241 835081601 183781508 301348075 888234900 488656961 662060587 713494059 920695243 961192796 414078073 270568104 913708351 602488934 774599495 320370071 236202664 878522641 939161166 627419747 771901429 834189849 870948952 815798861 115956277 371121487 66852473 575565747 817450217 477225237 135659735 262665711 614386370 775954194 53253469 683665392 765262498 226248032 516395122 448438679 379212154 452336550 892832641 346317604 505630746 702024199 470924596 871151003 813611803 801112497 496175101 978830043 778216881 178924443 388162116 774501807 601051678 105657412 98374276 9896446 323885238 328956624 827398414 231555662 136014101 581815322 160211711 857225455 238842 357693474 830636066 603422052 294496009 39594709 627427593 204823712 484440950 607042519 285420251 865263311 541050858 632979119 854854418 256608772 241843945 243457417 26982586 556683028 250519726 258176477 266047645 556055606 581941038 864367120 49217532 242156924 596628485 602570081 429168250 420619115 658510296 359016069 478228333 799622763 322088210 427207709 614766144 638658870 489523261 439160872 952625611 634750000 126510726 873525349 781038377 978002667 877432453 256896666 362450870 571672248 306704343 430188772 272562137 989307660 987979413 32647521 1496932 490660364 436665808 539657268 275147603 362934991 206606676 397175116 959612975 729554001 906143584 199856856 607070026 569360192 76663032 820022716 193905772 84309042 355997818 317932312 484348004 874099954 261223361 609986728 675198686 750490630 496025735 798519660 558025623 819836452 131453056 47321975 868155745 693144209 301903819 892835009 699091484 211968860 553017359 196767482 165815941 322732431 850257951 602723743 442140388 759958116 406457388 147940675 983236630 670536598 456302707 877301116 391582410 391070895 110227121 730720817 959276595 105941915 863127757 488257392 422777002 262307589 331598605 348768276 868626680 217534278 13025130 704064038 758014910 595381902 260548289 813761805 959930009 400296799 223684514 888710636 613437869 450666683 828441832 665591238 547291733 284216755 257433892 4758058 682825495 291688215 347310298 400211005 918158632 553311562 845255854 698065030 525055118 920268338 268228156 567289184 289477347 648884786 351078262 472487209 227575488 947540349 376773075 88368512 718727706 487747935 14366142 835571958 479155115 173527832 463014244 533708259 566586633 597286574 68911134 348137629 496868325 49384057 454880544 348027385 516427148 213554731 436417238 952432764 722911701 936732498 945295950 897339946 811757847 186368880 412030258 997013654 633819490 362275488 348709154 534806977 341853815 429057331 554566847 239972402 638342547 625018606 597206119 647332649 915484975 456766287 955764544 976779544 699432877 237929930 709714495 843897096 439118959 854837965 870741717 887193065 402896843 800106061 853060892 555317422 479553785 370214021 586762485 74656465 653015622 608896525 375705132 754482517 499645359 675647078 963469329 801214113 624365678 970184253 331645578 937269032 298142281 972607372 779003750 904279356 28045569 561175383 982546098 305747696 924324423 656923087 679708672 995432160 663240038 659761838 475650661 782033550 931484191 146758464 904475898 191264033 124554415 921252193 204218718 357219222 872352739 964390543 493525473 675567836 556650330 329283643 288619125 872093233 15060683 171291277 631949041 589849488 702022076 63414007 669400724 116079700 371060526 857633096 656998558 893864105 326183751 821289466 191460182 594866779 427461669 889094127 868987930 102269670 161307770 824518880 263073104 395128253 610822623 439076852 837703535 344285833 764036547 875399491 175034146 479671393 51712083 403731760 502738178 553108474 878975723 320947854 11057774 228028726 865162173 601562376 800415644 252141085 391923512 249245656 926204728 802204317 480435435 472002076 379943376 508234699 757503088 873383698 623476716 378438893 102176595 627886821 968531045 917799488 488752716 995091166 86231714 400222045 626131711 642960421 138062619 916473645 783516608 464800663 4327095 149873458 417777975 647333464 738323915 449049461 809778305 425060261 293861750 129300212 356606917 277905116 527145615 655760751 361281476 789907781 950430772 988478402 755833017 474276837 12981237 851311671 984094677 134392191 368371809 698406282 768513787 235285936 228454736 630101485 627950545 37070944 689126502 126369280 246781984 247767345 426599470 258466986 536029721 194132343 207078234 11297169 432668708 922502127 114820692 340009378 585180470 385914503 530555853 503527273 932959884 61898683 327989709 232895958 186750595 956653242 860452116 579542741 265599348 464178222 272484188 825847914 631262949 372292722 311459558 457156748 754183497 691741399 192730573 250230726 762466166 65228167 305221570 985420571 781317765 704831211 411028988 175153718 87715380 60762649 597750165 182550633 345280876 764173544 446730679 233757406 59592044 766962603 123171537 605411689 469727127 677343421 310123322 133201332 315154386 728579523 287652839 593821294 886127583 880299514 763200880 975652613 407701261 672109082 134891929 769934831 118309345 286321862 798907256 829906377 849621793 989576726 569311043 291461764 703774228 126946465 674886544 205774245 725328324 702411527 142064539 183256594 840524760 659338760 298533651 886791124 914953460 272281053 811681059 260088759 89522964 630111441 639409092 726307908 74219022 779840678 416964324 661332223 254292444 700981813 830094929 669869681 927127334 827965120 940631139 434453332 871002969 375887218 289027576 949602122 355461112 802675516 492651959 718318991 688250831 218981214 65483572 104781694 595621711 969470127 89818461 803795827 661886837 842108715 354967843 633452073 957859794 883870936 136612234 802868129 502953992 56539043 651651513 681025032 552609297 860240446 289299415 347763543 157037843 36451755 816014744 208785444 803871612 329375696 456194180 472388991 696678936 528861922 169580521 525898235 432072256 490237446 776721157 852499293 231975006 649413438 440530137 305833464 660555542 986410673 375104442 137155769 82452378 152133305 15658055 577625736 860887775 896723738 882548649 856585836 941879736 751520480 315354249 238767405 328621557 977362037 272911130 81139087 508994245 693045175 589577711 116172234 832620117 640309337 80008650 453289012 573244317 442135280 960229016 368400192 418405987 723029022 213007178 930168514 224137907 584767679 876057542 644459095 57581581 803755229 359382222 558410389 751617679 676269086 418332824 235980438 248156879 258994537 965486813 581390840 295913840 654583399 593239522 44064565 75320123 681362503 235013894 114717630 243667628 957693744 979201111 418945858 623689589 982743304 923056145 227230661 325392645 282186941 136957043 600729488 85522212 80674679 867409406 873266909 732939059 845250702 358546908 122453051 6801852 107863692 724139115 148966768 31081919 884111742 352023847 380101467 247959035 907764195 352642981 296977026 60081147 487111476 877631198 358666529 228965171 304038682 183684283 862170136 81189340 155475712 980946135 522184761 222834138 684604137 838586984 303866345 282567429 189126465 872365706 449923346 756883654 197120516 423231636 690970716 854696894 957362262 572056455 650446536 24537998 443241305 895944444 110972332 34958938 369795122 812126132 508430699 266275660 710381194 596543377 950925111 331320787 94216828 399227676 153026539 395369208 837705172 831187619 430536624 154149583 682836943 368144150 628388188 49066036 378646912 961383884 398745968 881051299 244761377 974023811 460175078 536292830 41629718 496036749 744957005 206715972 691382683 623725531 901145030 644440122 227744649 744233077 42576688 334268036 883583483 499624238 359728041 437727272 876050525 814977773 86055092 620678206 557791184 244551279 673127545 420655001 261227447 853299010 856775467 633548676 839411411 515144477 37049591 428297963 735812415 749018403 163612758 190506401 679880087 247106293 731561358 718912263 469305988 9646089 936699556 612857711 99764659 342719329 693610463 551128288 856067542 20249309 797075344 516939778 894344480 501324777 873704562 71334280 164726572 442769113 438501818 433732902 175342848 742465417 124111070 430998779 819137801 39325992 694220839 976962450 786838525 447221682 441887791 266841207 581494765 895146116 889429802 327482082 433204828 373484419 30608378 165203209 832439938 239562148 831641850 857539230 856992527 235600599 741549085 219038729 383688165 720314769 669763771 748463707 359569869 391363393 347912236 697587712 846174127 524154116 313137296 142891480 840399051 42933357 20249632 506351414 489720352 991792485 764320833 26058707 145180958 455698360 713754599 542982423 538603883 748115543 373778759 344241803 149220629 236702445 98294393 899366128 583154792 408863666 754701201 632490199 404534211 142350766 530775255 830175566 772701582 579062247 634216214 594749566 951688522 712694481 584470412 858964318 815176836 818576694 534087654 918641064 395178529 744212359 67121606 769669028 642170616 437732222 794565022 900586788 493298998 958442347 575683196 80626691 584568955 235029101 580728474 86495938 165782462 708256842 104572707 464256136 348967975 685217966 769832815 820112868 874190959 600812002 971185656 615489682 877864988 251121787 988115374 507374036 24081238 403563739 904134816 797327928 854193791 21294012 815968331 654131857 743236847 873567486 600187743 79062738 950437399 52032641 721340427 349883871 555054907 50910677 364892219 418981558 260948828 461702886 12575468 527935230 379526709 985129999 890002689 773703286 518363570 351518346 754748335 708120375 941312253 899799362 576097355 527333383 40022587 647179592 165534235 802803027 887631435 828181322 140310634 676723407 933421037 294440613 111630906 458514201 330981323 868712828 130625534 652208515 546643211 382062931 458279353 923875503 920110428 681143808 859261923 309544907 302610878 240772951 167160995 375294783 809676406 882910485 913547886 492845973 631503724 382941073 919418772 853095911 784427446 709382839 43299249 528954472 631306865 458791559 602896283 721121841 180422797 389881001 511764005 589567991 984166553 597671464 398006476 284138653 996706701 796157353 2950629 66095027 843469815 528425812 127315349 488370962 657058091 536982872 880233122 912180061 211841968 835047509 441432904 212968510 424569335 177975440 474684288 660160693 723671402 120823330 397418686 394447477 381606834 853709599 774772117 849769278 591151550 430951204 203226523 872740328 581796482 793183285 72384040 219560867 91138822 573921951 138321275 2329180 561443040 356130063 448609990 713098874 646760051 652952059 129194559 402226452 295473324 808241801 135862137 754251245 249211017 791295492 254026617 91460456 122407428 303045841 738163409 867775514 519599441 32333096 360536049 508891989 327813912 414873890 613864833 608514580 257404191 617605011 788443918 61719630 365973671 905270991 322294077 782497513 781781611 491062628 944769595 814165981 127180911 858666962 502351336 850729204 823890896 616368285 797102481 284262758 114898179 756215328 448938970 177416197 658578550 758408908 227950998 243706645 413308149 18522672 767418223 995726178 601683163 584561144 891885576 785735559 426743315 372738784 505986520 89182149 667161805 118568643 408954433 292103671 861384290 893166745 516531045 943487643 255784579 575921404 915371250 226315615 47354828 634039385 385039970 294531879 119256834 769930331 236931263 907271830 235364373 880025376 286375381 197237831 270306660 13529916 95903934 69169296 835634254 171825348 305559714 265524617 743325294 712121198 759726516 940466602 362373924 645081445 655094082 829056664 125933771 415589555 534050017 230051767 966439885 853934744 387983344 92264057 392811730 313742370 306576757 630939085 719513206 92742496 57648460 841492618 98128583 843223887 238038570 454814551 501768515 304730358 67748693 757183397 340477955 228124853 174987902 555545527 777893955 224267678 343494023 2423254 397262524 538476491 693587043 419937899 494254661 176338103 629973942 398184647 464050698 733928923 278270614 312784378 799246237 258116867 804481324 691564596 626795978 169124544 975164659 111633200 48107602 691958033 769612876 635586261 717736711 899887680 273231814 349994547 885823585 921154258 892213851 900104117 318073794 940150257 308888837 810634589 60687538 312368878 373906672 552656112 610686852 580917490 88259748 109133550 241384951 283590781 876795462 486150397 952646590 970648145 784686682 184447921 281358538 559333791 23921965 658070902 401478324 719182014 185348904 954268428 343287848 81009882 141558943 657861230 138170821 204410608 432140412 957675774 705642120 941707235 538360691 443349723 83014399 530586944 854091177 839079496 182721105 782673924 4813856 496911387 317508972 67717679 350228413 255165148 287627543 68911352 46647005 120109157 834537326 496728396 493480315 20388109 717991686 750127597 15429564 37878077 184722649 508336031 677977031 651590099 488128240 716667528 405285882 378783131 736870004 212700287 592245078 668974911 512878304 64783623 134377508 437349039 859776741 272816855 176370057 968965821 813057565 249624458 15797689 259652009 462154850 914512643 809948303 534974526 608085365 831088876 520639780 57936829 554409148 905030505 434630984 535509604 970615390 594844092 375523574 190140694 269240146 196416657 322817609 179401803 624439418 203700822 186306597 250333434 188827913 11688728 716578838 143481111 673843907 747405479 495608597 758173743 289829589 171806250 304178874 970431334 957992755 252016920 968713672 382799387 471536068 333967904 9314173 696315743 358567376 127116031 432157996 791335408 7013030 421873696 731872871 392394822 317073659 25731476 117902863 492065884 166596110 903243355 751614894 830749837 80109115 783682014 299532908 673537062 838221232 511143967 78085650 54709259 432932843 467490098 257609220 987540678 405428118 492938176 708455018 565772644 317681412 173663306 779019546 74400086 894810901 212822778 563999296 461056490 685223805 132089437 791299258 643717824 395457797 43894990 964704764 21613200 916841179 498034168 887849016 419879148 615190621 44504302 841750972 106015989 418005009 670346669 882837425 602637860 870563964 596675837 16181132 804225256 259701648 124681562 200115457 561278350 355089214 970849933 844880289 478190779 449793574 352819357 422317587 99885013 907834938 649872280 329185183 284049510 581450773 316478853 122433690 856020264 884713537 874989957 967834618 39719053 778148014 582939419 667621943 589995958 905121884 213144141 868934515 138591532 46254213 816186909 687966931 969756687 292123464 713727986 874496272 283597273 928840605 822848751 364323171 131724370 972119698 88945144 923155424 473954146 287733777 819148963 128781494 499744913 464164646 243093130 14996455 577817998 800391245 702866684 903555468 10205517 296743838 883972810 354845408 328858983 388988816 158958681 73046574 298238074 599785626 380836173 303693204 539314151 488170512 261863011 468439140 383654809 829574817 7738071 534426478 637264139 527595179 751234932 486069247 628526474 345673959 27738282 801957537 936560985 615079320 714644294 406635091 538824523 614992747 420754473 140301947 139208099 766451124 252959697 579637371 610544716 496945409 132208487 645131234 784010597 74680192 314059519 214374385 467655084 773878592 363373755 798731380 226454538 978166047 335081689 828181162 616792289 836052032 482356934 438781678 53025663 300736901 41373044 755056776 359289813 932125150 412050165 297100710 558020253 643686755 969933751 812599534 855451325 853651768 638233001 879616815 985630227 608962509 81183066 788247010 265044217 679596814 325225143 911996400 290943363 118043642 88339773 29907732 426805112 855193452 259161821 459275088 700767691 274847170 376352062 851772090 693383436 924654449 901618065 649429891 577412162 595339565 958382466 461390398 904223246 934879661 180853917 930632828 721090587 493140540 25204920 720271418 210073621 31891042 866075611 555504302 810464895 113901838 375053388 865034 120709888 710068473 911175657 670045884 714541868 518270018 404236027 22609321 70784382 317538857 425595722 319006221 29441110 802331617 755500642 765551655 982487324 38264344 853165385 382855129 228860359 576970396 870477789 251768969 880019734 573869805 538095018 545590417 551192474 483408233 399002266 966038821 887143167 216184390 88492362 326386378 70845223 966482288 251966215 89113072 227148522 582096183 97397509 310126522 74395155 718079559 643471824 539818340 952289236 745612398 175083814 694842341 396688211 904065099 670249580 832478258 162678765 521673213 611492031 444076447 739383937 813801268 634930164 586359484 75731555 244928405 522195052 912788088 699933905 14680761 430538600 905768907 227081967 258360495 531547975 239955993 9622650 949569060 810557201 446339706 353659021 80543024 921684108 256977982 28745177 53066128 909162188 429210367 838937477 824681549 770383808 403998988 148052704 558270280 229893529 946634921 953637674 788778316 362516508 120635643 195531108 190965766 24175579 537691532 801753468 9428657 938486797 297938746 527185359 338794722 607811847 770960934 258203700 577280915 425637440 600801347 100943058 436843286 847867231 366647421 824208665 171289885 838934728 248015703 545469104 712131005 999981072 993106745 460447783 25111687 96832831 235410575 204869336 883229099 268633772 733312291 626769283 140162803 259504816 586362582 146609908 612553646 428487312 485640671 324295911 392995938 192867022 381243575 236411448 71045088 687581717 424095054 463470785 116873728 759067947 370446892 245287324 419867365 149618619 907412798 452420809 551897879 709213687 275208482 300756578 305216859 370888397 584834645 717168187 506671366 874273979 897021084 37955249 632619351 239829927 517419634 307208221 185126535 904976108 205326485 194954982 268025052 430466444 919719169 992716029 826905496 940348636 335792621 350493306 696713998 7978428 731190385 690917 263710066 401786645 402453394 273971292 941129577 516547337 419850468 182205020 219445028 752475057 710449952 199261124 523836551 399807906 141869437 943273100 535110085 589210410 779585682 856732078 757032638 35832926 766485738 135161749 350358642 956030706 508953689 487619986 35088707 287390893 350263742 856579519 338545780 831934905 128009070 224424138 546314202 979726277 359388970 660000213 812583959 115529662 424628616 487022717 678395573 569842906 144500312 145563426 377303421 972507557 435809314 827064048 477507319 335852082 803955238 608262408 123047417 378447403 308428359 345406089 879938086 186497629 312286412 456317992 511656555 97887865 445484276 633427467 68764542 337433000 456532447 967536425 37180208 369306264 401598501 913969377 809329343 699636179 991321935 862139096 353542564 103707219 148173749 21699384 798898717 573377324 411928880 527576395 196530446 632905163 408137394 902167144 857470910 176642726 699038003 556180580 29301424 415443354 557373581 704480178 996195823 620951614 468885780 783351985 103315647 215703669 122412660 869315982 820247006 666296450 454174890 687416242 261421830 594116796 709833458 295675788 493525887 868278355 241165316 933039544 543160227 630986417 87200856 602077504 736891627 690344285 920757406 396529230 563673936 825467480 829904169 568779503 3297643 508080049 479730234 387622900 603775031 394136593 312505556 318457402 798933479 357743667 858941511 331669879 456134835 639066715 231304303 378406773 755702299 148773517 948627588 959009724 80789542 609840534 411623561 386664997 296753259 133499597 229250228 496249403 98877643 910093938 421279876 111566143 472114909 502003285 273903626 232894071 43398202 788626893 662268624 239495221 11032658 947486081 500762294 217222274 519685090 489181257 763547428 665483285 312721584 839192982 628304451 632161997 809145335 551623316 883552410 941268822 263619288 247356891 763042872 68159569 17497040 929924797 530938119 709615862 278752808 142038258 988790232 338770371 383032963 910657761 608555954 337342393 365372172 597588515 654378118 412274102 709965144 905723514 246235701 706997322 795067354 532846347 233747418 194615501 423186675 295735319 45820799 672901247 970345393 632941566 123734379 786038586 961074804 737706972 907061819 126206684 282322023 704783517 241286804 768390610 352671956 905691137 439405403 641927399 992404043 684722177 646883724 311778747 72148551 788418848 79604460 551163778 858348748 900528040 36642085 368662550 674832174 287869634 350444156 760683734 810365982 933097761 823703195 116207715 850582961 558939226 926044417 749324315 731545714 902623103 196088190 834688078 461462253 778627845 584424725 643793221 88544070 406616327 682575750 923124730 774724281 947152571 834813305 674002704 519208908 334896531 274681492 170382729 824006534 670189813 796194685 391257181 365844834 133700857 963604469 210617711 748132071 3528492 914176297 962386274 264533907 851957578 939608643 606646194 749165928 389486930 687662042 955343633 369817884 330767182 877672503 148714493 710387008 24855096 871205950 770000065 497358870 462643051 747553260 92274478 540970177 953678953 940593286 105608054 450817920 762082794 532093108 561917540 448739895 396945350 942986819 980525861 993669325 235982357 916339332 314761989 171085362 857973978 257266792 17080049 773590108 776622479 398117559 743065066 612599022 501235125 376028459 980822421 21673888 891004280 922073793 196015019 902923985 31578795 640457474 453369870 105683007 958611217 212004441 594705226 672340026 546601634 551532744 515068012 818253505 809406170 433183603 307084305 743860629 40952704 909273358 438676755 843124009 384521841 727428256 672548570 817370964 57809798 848789774 633868451 623834231 524329609 268394361 242614242 616456598 238715077 531536944 6864357 279564902 305249545 616996998 345546109 894661904 351852266 447264831 4057674 952831501 580544932 910818867 212326771 950722494 195235273 731050004 240554510 760787105 128522478 729811642 919667859 468524746 724449062 549818115 928767362 365359686 197007489 492209567 673927623 804878403 337447321 323795149 881176270 968007431 684507516 9243252 777518167 37247350 435153269 697566476 19734987 173658358 676712384 624946816 626702183 170501608 704400272 200110623 755047136 309860140 287523960 915170242 940411150 210326885 256189554 532471350 33656840 598700561 868291666 338185055 545147311 460607444 211244138 918011778 98198598 710417440 54672732 934441057 805422739 739238033 560379641 801972088 113282075 539133961 796735011 995334541 458719764 824707598 36376025 870320089 564150245 724366914 724718555 741156352 636402353 406086034 438488893 264287890 83842082 216248675 682254775 888737354 40751499 610242234 312752695 518994896 827089230 537086920 104816997 311268741 903309081 337004 183203687 434592979 802756093 62600784 736241431 431183300 30666975 309812643 71665406 65852840 623588164 558125345 844559054 13394443 168952195 919546608 886071197 760137604 999338891 742839549 801010876 267547895 921199372 503381561 272345837 48601047 530259770 682754580 429357360 497871898 886198466 374574277 470094459 53966312 866493674 600685873 534347652 614176006 621162430 25632919 731711839 884203022 392183298 471600411 649688828 235038655 941891999 385787945 315623685 537464804 709150014 472758289 51657284 180363927 457475611 165511354 692018167 928877402 780730791 995539313 173297850 511742756 598272217 909355666 338697335 170809399 788382041 925792533 720741299 935527937 259805699 226479180 400237825 800472362 880438968 640792748 529882029 369648045 816305456 700194946 877446254 613713375 705770204 483809956 165212364 601342513 857806192 185462010 512287064 492807895 613881725 969157483 29875950 838876333 654872732 536441058 976090296 769866983 826179570 684071430 543652612 873911156 505670687 424195391 334622985 457502215 805497959 897652002 362397048 654430194 162395097 484872939 764423091 864511084 674537616 587398012 861018595 821302063 794006502 524942939 673576329 724700280 344545517 557244501 834681201 692838006 128757532 737434646 428968644 401408973 284233317 56795290 933728207 413323737 440889096 435315016 575806624 532261600 818574387 48170201 516738605 384734339 432350614 976159210 56995942 183895798 6468776 206799363 347262912 939017232 414368315 738613962 346390235 654995610 864290964 104139234 944102924 288160884 853567315 899970152 133171281 139564612 861352529 140109432 736906530 642195793 653636217 327546264 727106510 606886022 390641948 375225674 979809425 195604509 512365649 872714889 851689426 867689559 156735390 467021392 929655093 327397931 339056582 69340245 124054326 234056370 55590816 831221733 790776571 98332002 773814457 185799784 798439645 587903650 654175790 147133422 203577832 988569603 883735364 215890766 407477542 882083097 622828117 675385936 478086548 764486635 271320208 696184253 518497559 91888775 176477094 939477297 810563201 198879104 771431306 526562826 875849611 768619074 150480588 869684436 653851075 138728505 360520193 37234833 794273695 168784030 552629597 353764374 47880904 584743515 62817173 853050546 635706513 385861751 568385318 911138789 976315023 831674522 672104782 317792715 649102795 905525856 108345713 138395429 875436639 163775790 202985056 120636114 559724757 359634715 577410255 257214671 428557600 666565533 642070249 64836510 919210300 86049994 744359785 85657486 922737059 196522207 471942586 876057066 327788813 833014816 660252230 915066935 327665876 939166461 129396096 116133139 113741221 165115845 880591957 149256160 693528142 318219106 927415187 399959983 200837823 852298027 33410615 646078246 678333524 432278694 289208987 990658243 337234323 921171696 472284444 127960695 702360367 54647467 963025776 658805302 627359681 416286387 130172449 86746406 653840513 24710962 505884206 891029360 333211015 329188536 862564539 39119225 763801194 678239020 452061479 216240742 913160512 365401875 485157510 587521174 706158452 528954725 278118864 740932162 889304196 102917247 168425031 84420534 861538928 60091344 786681747 562704200 847606894 52340310 52778918 299601572 616990577 234378129 339661316 192394554 333887280 859868976 397427664 462939847 482788212 46181655 293295916 746710075 401963105 237573960 725740580 711289441 680365814 16114036 117098761 15273403 444356316 534664325 356236743 3986778 733593436 573083356 640996863 164020401 973134124 22617748 801721055 157400444 55305155 729069783 653880008 907746133 836753475 562024137 911801877 187513933 784940820 381504701 654859067 905327605 153141700 474917385 162301251 809506306 897550480 790641813 995570963 723483433 692801602 995743254 97231322 758500320 403535687 266420147 504215108 100746923 865631306 485121777 481813620 178837166 500139620 838302746 602465649 279723296 195560942 52315694 940514849 428221889 750320455 853948755 610802398 336958933 667339347 52439584 370705704 589741976 351271568 745351620 107934122 840016493 116846033 505684462 735333999 783395250 726906210 852073612 300004882 338153113 778340785 823050836 561289977 385458027 265042073 354423909 422772815 841090959 659656640 743328856 604663425 394172682 717266000 590436932 286123266 557132794 457671215 29105025 926945612 592661656 316542775 819215046 400909542 307849928 861032708 247062217 860103296 53543379 214630929 688246107 478861734 546570810 434656010 841793457 443287101 460404445 365837248 867255755 824784195 830550732 937788191 189590755 622040028 476237238 125121609 473663523 590744146 521877117 290590679 604151479 543005613 85548406 632784540 319746690 623732453 933993711 994954824 958396842 794189849 43518365 818804557 11712333 228259754 353734029 445639675 397910680 380132238 194978499 485089975 429230018 217694837 630901001 142755596 932453084 853043511 497928136 884380420 12401935 562638755 596560495 280190141 678701225 972479470 271951915 544089613 67962959 597204439 384798550 328374156 892294111 40876494 662034622 805767278 272682495 954591906 183048804 662444027 355238347 141658861 423690875 933432150 366068434 264697206 316937827 959391731 377650652 798282956 243192878 96358989 125089282 390850563 434582812 387263113 5453954 705377848 432024363 601596095 75878339 842989004 681523215 701831336 352849651 469434178 615183545 214613745 730067079 922673659 852016676 301748540 766239983 109177473 179419962 889818447 484967340 872089260 280005791 895817445 815415065 22237906 391096689 246611634 91283979 414089947 673689689 39584971 215762718 612619867 785433940 608610929 487526453 489225428 135800097 494703421 684631604 686099161 13562793 462287349 95278216 509158978 779519236 398822952 775267849 509210354 499699680 824363095 791402626 405787836 95510131 548568581 478816608 362635300 546973651 248418902 542207420 504964740 477370071 544806595 316913003 576679241 729727314 881249051 912790485 643468944 11425015 780545973 327829059 903633205 104685037 107225386 277881669 802390681 10053478 738033013 421144609 881843876 812622497 81585954 650549693 325791171 319123803 632221023 189257448 408332260 947666289 709957073 251878615 708434455 989547801 144941056 317905148 232524430 482988601 494433616 197112985 480223890 96532663 771887957 494389719 943204895 672847093 312297893 148084849 51922360 448040387 875345836 674038787 942832421 15617653 456398157 195370576 82296776 613986688 367041417 245122142 114087046 694417225 835227016 657366262 566294709 248574510 765152387 287087692 640236068 55665653 160149519 965954653 202932733 287970625 644360031 408169377 938515397 220671829 859894644 171388598 287701922 638278191 53088883 766273358 71557327 65259324 818634250 662604610 836133319 874812838 614157287 17120159 653192992 568045390 222171731 909963261 763306520 108208199 985123585 29250058 593360105 786499959 462954896 252215712 482486041 107051445 66921590 138253103 237269473 536446232 61781411 771604584 331627119 617577342 466331155 305526281 580931352 278571628 534088201 343816810 402259903 113782788 265727757 578018423 842716957 781336060 228227040 710678135 385938961 714192273 834372064 335608021 65775179 181618747 667384532 108174769 69176603 903998831 686163020 313055209 876906409 842617764 435924737 257983101 177817907 211280969 600125963 261994706 477716019 295280777 142806856 328141719 476562324 551865850 637877036 267388976 290609838 632448784 974747596 930752891 445280934 333721281 419332153 390755670 264349901 124987022 40051960 258651253 529838280 891133894 344194486 735873211 902467021 889600298 23653816 694032007 942088706 367322186 662244878 25845073 892645211 91443349 549749769 336058796 875130923 447651175 990328839 312454828 822805361 217653388 162424619 241193548 963029802 932727643 237677224 461122324 437733646 902485201 330243326 209868893 455119372 831994143 822368838 676904650 810321375 73893348 885658125 669905352 187637935 435790311 480154947 873683323 352275589 445450079 940164800 627341422 462694343 261052249 472570807 487732725 490324158 670146987 738619865 465579049 244879146 434642627 546127253 125370285 595371207 739626095 673035932 287949358 473790162 563375078 905939857 813612954 727323057 672124301 540693569 747818234 675392839 62532792 566561718 893116818 915697897 300774498 163189914 867828984 304612161 878412421 441924239 435729239 430171453 518655257 534540480 383538710 230451432 387266793 355219388 415918899 962446093 597781338 116005032 625061602 500745674 427474964 9311157 21053928 401753808 50176062 221914538 306935251 978350838 965684516 768207761 97234216 893330526 953743931 362788438 940798782 477431409 612205867 460667032 482636706 348195680 3280988 263575434 661686918 375292555 621290348 997677704 365779129 860335132 872187369 783779431 514471735 577208628 897350192 898916563 613448242 741545563 426632917 628272941 326515996 124314371 2040082 584414816 159521865 176834352 412215106 38001485 587632681 535550564 636282622 571009561 463198364 396671369 87554999 67654882 610104474 192644346 951148635 815788908 742737608 722883159 506010913 369879671 59258084 323960640 87641809 46877626 903615410 535171253 792658566 757069824 675260579 963922374 591033407 616713538 913690935 96013534 108572535 866061807 97303133 321426515 366796031 355744780 659023625 50392756 728862961 609149679 546370468 661045085 895007097 676707839 500632624 554378328 828740543 413025270 939507383 142654346 412469701 220753432 346430084 630525209 455529216 169653162 873646222 898538153 980310460 840528247 389197134 997280026 329442965 961675070 900340765 969461849 568844151 492815914 981216980 305101599 384231849 41547876 767880477 908891763 512729354 344752646 400463834 913453325 313690729 921800464 30406539 326979079 14995124 757815525 660964968 437434268 297388643 708999258 81207775 666633445 172606924 779430231 215198596 855826622 461033457 596465807 621026236 753104985 383851502 553644693 664285834 725764020 950605911 264533660 140915644 251289852 208484761 356066912 168982190 434894018 443815457 860887397 595460793 883131341 807554126 984521622 299414796 809870389 966923175 412543638 754165205 852166711 853605873 887405628 784276207 53561806 459135329 894178294 300573836 240081654 642523703 897576080 251445071 232203760 203721839 306292543 261945660 513767330 726812339 567354012 101192634 528626912 791853697 410270616 261598237 913386006 715240912 962877694 686185923 428354216 330224324 28084832 230487557 874931956 650261405 100348188 657742105 939943700 769801342 545302874 565125212 709465751 273096574 148648737 401250407 425410924 113985868 684970319 895496141 816980736 89089443 577085217 864668968 226168842 197064668 759101955 869865366 889364416 590220278 845138296 262328417 370729587 246553761 983510396 97374161 221395301 779851914 71153143 726839756 991986631 931359857 100576684 479118637 280718648 290403663 470059559 538298300 894589178 447572700 704617847 329763304 839521638 166314231 660281184 538422328 79802322 126212997 3677102 499837086 948929795 621447610 380393768 843020754 500057075 377920708 429289252 776141285 184247174 591670171 573488177 636249339 772026100 424674840 109315511 874349821 956668359 319000813 403542288 681867329 870720700 733931546 292043187 986788332 606082869 454296258 888162150 839845596 853743361 945902047 821372583 386119633 766225999 502173840 137306004 178345714 598029729 158496347 627182195 978457350 697155591 512472442 838724181 872333224 627898708 295585613 63791188 803269444 447680285 106293684 479933801 85321885 456878261 146998013 177028244 832768366 904792710 760602891 131543583 827807586 493090998 598605577 59386256 538250085 395131707 884696518 980114437 427901844 171066543 412951249 776924383 381609626 584182873 239973604 255682428 888502213 537379803 627281079 246541506 349119431 627241979 596292956 392444461 837607927 542268215 657705755 35557533 56048447 884752783 522035572 913629567 619340415 435655962 811789321 176950795 738991093 642249055 970069324 90334874 422294752 167105208 953197528 768376082 256361248 382855108 579982135 226504308 153472727 478599367 220886215 563425181 318546675 233774496 745143217 653013122 496750331 703093800 118892521 752954742 292972060 883087819 233236712 915402384 268852358 53068815 419868778 946743904 186193373 707840274 531169223 475858151 872863131 775806357 431494139 726354650 983089380 883502046 913714662 568050121 516628824 308343558 419745424 563402721 667744073 487720622 890025831 285561980 465742881 802115439 403213923 599883450 721868157 989250897 515696951 146384049 916875277 641947474 434338177 695280585 356005011 997028094 721261469 803270273 769119349 169069754 558900038 906812144 109605350 281255636 348530 741357135 922365877 162462228 753723545 375539274 540549628 103835376 858849417 608865026 858953297 538108409 882058284 198651274 519704704 388541175 18268850 280290322 217583402 796926729 53035200 530791894 581794315 540607033 620225671 404387469 947472155 841644331 776191286 13023727 783964949 149670228 287459098 23122055 129241035 244826137 128059620 738768427 759337839 774735795 705000092 132963989 88695732 584266813 34773030 557118095 244689868 687628899 908523895 65220024 303538320 296112573 264058573 378602196 583273483 869938157 288733823 55018965 557108340 274789554 443312006 336092863 994956260 776269764 946029882 476892100 206980780 738016672 292846124 555860204 857107788 62856291 765842401 783153298 492729934 369011140 841993830 924599509 659971071 401138796 801172743 225087836 471526427 115427648 386304378 436771317 481746512 163002669 258874443 608123015 777041384 292203528 256942320 324636133 416192636 174929204 555703727 866407830 995308252 613104579 283339861 950163829 113306497 494382309 667367205 890287073 939153857 119073410 876616118 314262993 461653161 869460864 692205599 531238078 69340077 157759431 752052385 781701710 332585077 84266233 499152416 520799392 562795449 967610100 304280211 799467849 209148849 389274361 40192919 717701567 242129154 214944399 570843314 250640225 635459577 595986591 570994393 466445265 276107676 302562941 389455740 24399326 342142713 510087959 746159590 902004679 401767222 312934562 926492589 49479944 654187630 526278465 715839842 878209301 113466478 708789352 529055915 671642600 918943682 506694248 724285784 966494520 907032070 82842103 44429840 845419893 714050992 238750532 655195681 559735480 591178901 772200653 814291062 740158208 423259720 601173731 288170640 259512179 250444435 776476055 6903226 628694650 81986447 314763308 335559385 461112081 173556895 658861899 955286710 522816958 403031281 305047032 840006905 646577448 879677541 743289888 654663395 187723724 640977811 479641530 56405414 546751873 35268361 593046775 363009360 336712588 598871966 402000238 944173674 854341122 936290850 406643635 537348068 938747110 89407990 189555563 566825161 799100504 201803444 429453723 913016633 122132040 330286900 852673886 577539773 223431073 387675801 761014784 399623250 199686828 768900299 383490087 386798392 194272850 434912743 734618410 424229601 994072785 466217358 546916250 379773115 997112034 799187894 142525662 466803666 654977384 195250199 417553562 549927760 546847347 889239963 825365793 784895768 590103410 356293004 118738712 627768703 529464643 442484702 602296381 143803014 819301878 96770867 806727571 325281243 848099362 74535722 71817547 763808289 439460273 239292251 372210454 415274161 88839438 564240107 679255178 408561688 48116687 135173384 232403407 944525191 680861815 84587254 542506875 258323679 250569300 262795837 246055707 626460776 361720924 867322960 245619780 719228964 218056041 545738606 902765470 491944400 968164798 125415590 398259030 488662507 128095340 29610514 155105763 135819488 657548104 752036656 511772130 631488613 260048050 6868387 124487734 211597759 544566392 349107174 354246905 861483093 717750244 656477566 181850329 909731878 990548315 976796694 843380071 218869803 502642343 100842899 977088401 178575605 946514886 561297305 958748886 300773617 514880053 380248348 279112066 877575722 585169373 258371099 660654301 174523589 868798279 407161606 735903350 204561026 37492809 385373559 284243425 686157764 372395517 768509590 3677104 847155977 151913361 176875693 148460183 603115196 389865322 907343876 850406893 180361123 429721696 617020758 572874557 888802657 915733385 878189317 37956675 363203654 432405056 612077749 393675302 690259468 842706125 823784280 778225792 694662911 323769400 201816025 594072453 321601292 572871874 881998845 638263811 248502561 469743197 113306501 466145239 975913453 281820618 796539320 794582683 382657426 145857726 526958104 790780111 620416547 424170839 756293008 570742719 485039031 401440200 658701938 343318434 541580241 808403260 4492234 912432395 421321944 177651358 471558368 711133085 825868589 788058268 759185752 266887051 127028439 642290676 546097350 843410838 382629927 199230752 375403414 561730079 837742565 318187763 785315664 590341300 912815735 13886764 503896576 825385910 248551384 385907426 730541864 780559108 93102454 110657532 6245434 89030548 121603862 28680437 546316492 750430843 15472633 226616444 798550981 332182773 29696483 206145472 354242381 94224312 990649366 555076645 698384520 959971369 704786659 819419560 431536756 859497539 704580208 7873504 186389368 974413969 860181204 54631064 594210875 653758055 990112332 896379459 871821468 144273030 226067122 374731636 194762531 715402370 202409766 653540878 151876553 649249337 400136111 149041608 574328074 174298726 365526661 512511407 660014647 430227975 46306883 296591523 854187333 95042053 114352879 108780755 427531437 186578286 252693229 901088485 886293041 235622089 379219920 201309405 666700078 263422011 205804923 575798041 483152474 69266927 932923138 650727907 241730982 793366762 924155658 800322924 484778245 999252435 27816133 365831439 949365374 291562931 631173390 494764007 966265279 252617670 513449820 448363155 694218365 394181568 180442979 856697256 690557944 105716743 100200699 337102962 276171470 397231928 387590428 7941373 198741511 339763609 631488954 330688803 275431849 690153964 458059989 600701852 579872753 339310269 569323673 891284162 13122020 580548694 464505154 508412215 310092581 556426280 751385323 268059393 345898089 227805735 529414662 861280712 661826926 913917937 154779099 251713409 675923514 227064983 588498140 848406501 575731696 279009906 443371596 365744473 734111376 846548390 474078313 836634612 574031491 734036070 597246510 643127756 744277469 838424746 194125304 318166385 436056545 920615808 125015356 610506683 344322374 714628537 554962573 93813674 755052614 459996380 972445000 977805567 506710367 775986301 616677647 326409788 942999196 652239271 472054425 108115640 231565391 436429007 470571032 803050543 90650868 452428501 270327760 256268595 731629813 478493409 178900885 999155394 597739687 763545892 656781649 247535545 914483988 596349050 643358459 606117339 943357678 913809698 461777421 473993936 530547269 853548588 29324665 617195215 487854642 264153914 783549233 716613832 216174275 330752906 320288944 412764939 568020395 357565836 918036352 277430812 45187438 249011690 891570217 856225089 169436756 301303259 393164628 83874847 277845810 547069013 149847992 627708284 238867015 760898579 828977590 823609244 52426878 288030342 34886298 503266962 166193968 522798341 248387290 358352923 135574326 534222731 563558921 952768469 584522161 117229522 807080610 122376331 564351202 578134503 675025984 595387365 529418886 640210833 924270446 41047378 553346243 155678594 336570372 678272764 449058156 281949170 103142342 634164643 62260745 576860678 79732926 988659148 154831699 216301505 951142803 689662670 560908034 272117420 498325940 84926375 619813027 6493311 367448769 230304726 175027029 949032833 864191725 462424363 661987305 714471058 277909149 527367308 318061985 373740195 545236316 289854678 507895555 27513419 665192074 488983129 230410066 213339950 983749881 948389243 377335142 482835925 925602972 688779830 783680749 954727656 41006972 67541096 569569885 407201174 679031534 854161473 150079057 309114563 414784014 476230006 601298614 550102981 702003400 247960957 32344831 71882077 211455279 992529955 676770063 153341759 994991335 209150526 113643119 283944049 980659633 694900417 70536404 969131332 931834987 576100244 306284794 460613841 959225388 34215102 591995093 912069316 979860959 923187455 698012818 794075742 732747377 403291483 297804542 54429041 355164393 857806978 595439075 25574389 256322345 65256152 420516548 498612569 48838340 657521177 925168788 54857671 166502500 238100102 758905439 891952016 796082592 908542823 664217462 327387284 651815455 899030378 920568736 348876881 79959851 635074958 763066633 437975891 827639096 346878502 202047282 743503273 917282533 772406985 236668229 363485210 121719991 323703455 587960972 562074716 654999500 379141705 663267360 868967117 681480983 507190798 206942456 770245166 116991935 319022927 955291359 109199758 389219475 339730570 464947915 366004324 468975471 746698734 203342141 840357277 368636078 640872447 243547236 75519931 593480944 789457223 190269460 609182752 563985247 132493028 792432958 787962829 558280043 666515982 565434092 835291611 948620346 343918877 270672630 693326267 455266218 526034930 363043761 162359081 853217192 257170586 796118312 284096768 76955660 146908972 945298293 793335400 694477642 496261284 392490905 232695804 816813606 293872635 302107232 531244037 165386424 521360630 413777914 79698245 698080615 789533693 485876108 192970885 764699524 952420127 24721283 554152197 362143129 655726539 80357334 900787419 149665772 799013743 725135308 461812716 103596476 22003149 155126816 635410524 944452739 388304770 716660867 101050253 976386840 262059017 64449610 103078843 300731301 814761025 6724562 436595559 547042629 906898980 335766593 190742818 45204122 606215685 951083860 910561787 203476851 887060060 271826828 753257362 812679991 573722395 245784524 747726429 577075548 492674465 810876166 542720766 717647021 419782577 304737067 63727635 890270890 319839027 880430975 898866719 995864522 268897146 444208595 719774290 927706219 343790208 134745572 195427910 296426949 769896473 593919037 452415325 485881484 247589135 484863410 186955340 612279133 716622270 907926070 500773498 363935705 166010204 838298254 182628316 971866255 499924945 632029163 70749897 910854815 479173664 805532315 671420205 194572499 898360142 744004109 353385601 405115407 783387925 136928317 901183236 689470879 293315043 754416110 387149190 323059984 971857455 360082373 929802356 452201755 437949130 881300860 310172035 732300454 672013675 682370030 106746910 607053913 596063147 29916534 973033059 150151660 736848614 294923742 282164644 88787688 753516193 933711719 337952497 752906278 796432050 876414029 235432464 43722419 552923733 545128511 505634975 535583726 604674056 528758165 762798040 440742366 680851909 825281143 432857703 928808868 96316514 942610134 417075460 412476304 820047410 89135605 193766014 204689919 86930556 923364649 165282729 950442530 622354787 766896957 167711954 156402734 521552183 207650352 285386118 124942436 473511895 704044119 63760205 501890824 705871691 976887701 981764628 445756190 994011967 450155574 734910090 478004405 718450662 584480934 145445840 919532562 591428520 728280021 101371505 216177266 29363723 796859322 332226327 114274775 359553241 119544200 286003582 476691423 459703898 681658393 710622762 322026472 392928203 925623514 701917903 732615133 938645246 641205248 600754519 702361279 333899137 571234649 625332691 6267350 774693109 679287715 691641321 461808555 304391779 628037484 149581139 397833789 993421236 431578211 568266566 704835217 617911184 198502619 582815183 905593063 611891110 498759317 733294603 749486865 358701089 9438961 646516239 795297685 179847349 290566836 114804575 359450862 934492755 77736503 303150098 403196967 526020371 149013594 122081475 199430784 468306470 774401030 690397033 858971052 535664630 375439030 108288656 82700159 971295513 30289524 484927790 248147296 925291190 465244 184514420 645549168 323861549 35062149 476090146 330357191 923793711 730223181 536034626 415252670 94893195 570333149 867197255 594110303 667975877 507561682 470119188 541520939 471504338 388088304 645587614 293560671 893177607 606380138 411171675 379147500 142503937 352501251 240880299 940419502 494925864 343021297 206179620 882253328 600253603 493443886 381262855 941919689 980735279 798251703 254807066 346052221 703430887 870608925 21271089 925175275 911224322 401185792 555412830 82987174 439795238 269639587 777144531 629530342 826820829 537588458 465874132 657303419 442418174 437278190 350669597 290956452 264947310 825321100 529194293 428261704 666294741 341147759 592587279 762668157 707865249 862183736 812371403 806113884 747067405 415372451 876404427 753072444 146248834 174420579 737928301 673439934 276587860 285237816 674701676 736212288 584509001 419793991 115209206 252288051 234637 993633977 61190922 439354658 619368961 505600311 668550359 861866790 716379538 640538793 786769608 446300497 40163071 284551436 15557774 206890289 246014669 573543906 297957956 818171874 591353092 462854584 991655760 243751823 161204910 765688016 384819987 963811871 352045441 179684087 262520699 96079677 504039346 322002849 791535338 373796442 928400225 634737463 915827909 333463166 273418774 561489293 419419092 161742513 577947021 164330429 668496195 100354476 108085929 893412617 821249034 98597626 227410265 591577730 622383463 15253634 844534421 755669056 522821869 312859585 586406449 818208067 201589212 970689086 773727147 619470194 138479505 498153629 638369942 278532131 279852486 752965361 134314949 613590801 290640328 129195139 154093237 127100365 226959070 722244742 284532431 837510093 675591930 314463544 87955951 543589054 782419956 295675431 369998871 646386217 805512529 394150899 9235250 106320124 715935007 935463340 255905404 182471394 733418593 436157920 609743731 167734262 268526632 297570125 354938256 599656093 864668723 447429837 848666123 916342292 49840696 430652713 600931571 312497102 889823991 569092827 163997753 551516827 386409137 903398670 553327014 861783849 208213890 877162840 346677345 214249133 405502080 6790084 687796203 264208459 598217265 176324721 64779704 332842412 428890341 59607499 484358784 268002970 349827217 595062997 293869800 262880624 9597806 346138735 976726464 679716020 825968901 273524480 98186051 338075356 7816148 717258303 647340422 378991391 576217932 352383824 407773084 32186435 946045294 875049905 941772579 135029216 745059460 767854201 473794803 852740021 552102004 728576993 582636065 43445699 523940792 296727750 116050549 717505044 866031059 88102484 638509242 637514768 374702775 35619247 178900445 382611468 977778282 63805474 293089373 75458339 747285060 997422488 513102436 303840579 913572385 321357964 344828764 279105897 669419806 897488782 334286110 422313939 157587049 294943867 358470320 377106517 804314465 315413435 739952895 974111240 877758170 441793833 814023745 231716759 319960082 320942786 202782761 294850281 296135223 583975806 499029135 109340421 955852062 82856880 581808876 659087003 76663942 248202296 194781228 962330747 807105599 368692327 824572504 814883212 510830542 989611198 564760069 12365028 373280526 179225444 653599364 805055740 242982932 980307583 886141453 174533946 155485311 967142075 412316890 893097989 470075106 164686438 886245804 300569040 777385586 431816348 33230992 755369150 424365742 543969706 457092381 736906778 909275562 638680497 44907760 167077797 183972643 409525888 868782599 187971587 492929388 356423891 22277738 44986578 408144114 771645502 471425712 473397440 313915759 174717225 469985334 63341773 210580955 69676264 49454975 584121425 12525032 896306166 214796271 69996340 96453966 63659188 95757478 362669558 247493048 485517657 679349787 699950000 79597787 902026124 727922338 448060324 915349549 360084208 293106803 862225888 732932612 22464003 32191600 69496626 749159225 949805110 522630900 697226536 262390703 763910365 578808067 975042441 174698550 171112841 352090775 524642412 642176642 954747610 908680148 164427690 106709120 158050357 572618769 309950657 421478030 418142190 736843268 965179251 283516591 473911327 448240428 723325565 9585021 499649500 610765806 175036372 933189991 593094782 619968205 603844938 318339124 354890476 194593247 734547303 959534908 948127958 761089147 853681647 510809944 212721073 537101669 987078264 397363045 199770822 740325801 439281870 501428419 116801133 613292836 551031783 923159716 905632689 775460984 734256674 898683 159866218 752605030 631234766 968688750 364604021 339408241 5106919 902973485 589913344 339118168 327397059 408972497 975599 553674944 759761077 152713848 819137303 226108116 983251059 136265406 652055459 965310132 319298173 242295207 938934 371288374 223731062 529883713 428632260 359027805 876017471 130558097 733274133 875660942 989314006 277443949 289841956 906769382 45074795 732256995 285769914 422961087 899958841 925642286 956793714 722801364 14171957 60830432 401358895 871227660 451810518 336041161 741950121 559667909 641844063 851635866 710838864 823958092 530002436 993688881 853309709 146798948 758000596 66721476 209951865 57751563 548327304 63563539 387180196 914446177 82040009 475418730 69886055 738955165 259764116 449497940 305229938 419505495 557972097 495789189 327246180 279479979 967290456 779399416 914981561 481867007 867768591 246895329 412043137 136660302 733492026 763226503 265838638 623671358 174815392 548496439 937026170 789286627 168635067 65403068 200031967 941594053 667240148 266312198 445055182 657258728 389734069 877618718 733755071 569591406 658856308 938938469 519732950 411738673 407020157 881227130 96666751 868506817 681158895 69489293 731534304 453263932 855962859 671759325 452808969 848825566 621532058 815172191 527454537 237470800 648408481 255837438 182635448 930992667 936875214 886481432 757243840 254241477 414446006 308888123 35892041 857521028 9277553 634542062 309923265 911572585 195315228 324894549 649062628 45932121 278122234 38260355 25193494 442790414 812733494 175523358 215121102 611127448 174960871 375165291 270792120 781560084 148362937 250853765 846376972 390805776 785960547 362350289 787629406 336452658 2042946 854221912 253941804 199945261 973159438 713038512 428980418 944985958 456210319 72227367 495464918 249702942 343763738 301620622 572093229 34840911 853366813 94513736 251011229 538908516 638357502 15244340 533305041 537455176 772547320 223538398 189134808 156257554 52854556 35436248 410932023 4575463 651233261 431471731 533582142 41693359 517273512 94465231 955006515 71276778 553852886 475006700 604263130 933279943 265542864 565212186 423640679 297004232 627942088 28106541 421783645 100101963 623372560 769247652 404237931 930157251 142180908 840690308 837230382 939720053 348847217 874697892 182567087 817121697 836224865 350195253 140311555 49516158 151638550 236404026 164941120 940717456 976221704 395627670 357363261 177294410 847526417 684179539 98069215 379776185 743036361 161754653 71013981 540736603 326697726 193549280 920293307 623122827 484745275 428151905 338154335 368368500 776780991 960460638 653777250 525339070 793110009 744977928 561429306 631689314 884906009 842773259 451887113 570046695 853081525 415916150 747298038 304032959 958096649 845359190 238119210 751128757 975084950 605265039 923357335 582114926 784882189 946421276 457258813 824147160 970535530 587859832 959640552 836571516 810023898 158173261 352284126 564549638 676948098 136317136 360304109 129813699 420403708 454727839 902653775 840750096 361491228 327622497 923116452 510960726 586331874 990285795 957151635 716064251 335533244 892389825 334207796 574747400 908052815 162881339 942988357 766899554 598646244 327922153 103874565 707698410 108973907 838217739 598213373 753413248 284482313 143468381 926212810 199011213 646314121 500825638 641437138 871387864 178416133 738759758 760732618 931809882 3729715 92658076 166425685 662882605 529766430 627335269 990814637 406644106 376376875 463764406 806881789 882924748 345590052 737645715 616649405 227093666 122868153 632410972 957844105 653855719 649611909 856761666 319595670 698383630 912735285 179347545 407101378 534412365 996503771 78133629 28127438 519291129 637467866 312727199 613446428 577881427 20670297 219189231 382896780 421615752 334477801 456107599 721423045 926487231 955589307 491418413 488334837 463688983 873211483 88304569 549301837 686115978 699186689 666152020 797883933 971928092 669480803 646287745 972794503 468681967 529506871 373449635 841477350 240126289 172897545 968702684 48656581 83983361 509578029 443753980 390367461 340004142 977966554 972752609 800881085 246167709 734404449 765155807 399984305 605063678 622465209 505729115 92549471 28671259 674360132 870490434 597449397 214296531 337528484 868172930 653041337 834885688 808631160 63554532 299151571 815604098 322864699 503665331 737638241 436035123 282625369 858790301 955656595 770322938 127498406 270123452 275784829 543885242 772931052 157778112 938086422 379896184 167083200 74322381 879917799 9998636 338718 964927696 557679246 735614853 999496497 609387537 930402037 847516080 730800915 543993796 649049127 850815621 105853512 993207106 345858489 335513927 844505325 767502426 156611551 400259062 753580073 551419650 914886221 959051558 165239635 256967076 961729632 879593798 500694166 546075182 926699935 641828754 786388310 480088938 928153578 140194407 750244822 111246964 770741965 296858558 119775439 322899014 135373410 778371318 885871752 651292298 876053202 906280723 11182387 992843516 603877741 218012057 52763198 199423051 532084704 613316235 636846433 849401157 512609416 365298226 304995958 333715549 30517806 452523900 746189061 506850945 429640929 787537021 209868367 796085626 180026598 776359463 178506785 156873511 782734816 205595803 26412131 847673710 244913986 542947356 333012026 360905997 986077189 401143879 733972203 918503418 861312359 96724064 857852425 198511137 189563317 1009113 969621648 418384117 669831481 437142507 120591365 112685491 768309723 116658260 858172261 548562603 68449794 785353201 150451803 226859777 556273607 905902444 925631115 880710315 360467949 167477540 53297922 175938621 218048502 671851159 485447728 954717725 355834628 113802961 385824062 58551663 142790982 567523872 623217845 133842478 948221151 933595754 848989787 591467760 399354552 189995037 577683454 792621845 716155291 892009267 43959649 833946824 996618018 554626131 414379743 433369005 535462162 624221150 489264034 709626811 159604630 243536408 961836719 339585749 805258291 832917092 93820327 437882493 195092637 925888983 763237075 260698586 12839811 499192016 667390076 741896553 476384731 230802549 397981447 582418329 268336793 991322284 183772700 183944949 956632118 174346889 173476886 603980830 230723904 474936347 124439242 590493279 720906869 326983009 677550532 240601266 298029861 316079139 770838675 867266346 625944016 935329905 35338582 446925537 474460295 782726976 778706110 112753398 284258202 737264094 926514797 433950086 651087 531705831 380049356 194585159 409370659 375168288 775239413 864827206 585360772 220528473 990722346 720848618 349775646 771390115 449679572 812314524 632937326 757911103 916620445 139527465 155239128 977714443 817571599 521017117 514673433 524079056 506417914 924414153 444503233 627114477 337390829 863168328 230112300 243586956 343210697 807227872 398557999 265045041 437462504 112754484 611795613 952191999 535949192 393104515 830562250 409170715 321050380 427687727 155568486 275082413 627716163 891764225 81230281 146435247 81489260 255342837 666512349 824729519 17647120 82912114 131173829 925721614 704379094 582011632 916737385 639209725 829988209 377144053 980498828 414982787 763228410 81882623 975939618 714239738 525128638 491287469 979558409 154592159 259725395 551578088 985316222 486381491 226214509 815614756 215924091 276299311 817326885 681762525 874646461 665459637 214709544 616728489 747780077 979466740 398129681 645093482 134492868 793396571 697138403 154587403 994209776 723754676 505413276 357153823 224851019 675604633 751204656 572744235 387451804 351132707 562290543 194700655 329608533 985996151 691802493 67528861 508138286 391649639 40664478 770185650 845821008 364105848 873021417 350049163 77835926 243690015 386674733 924126476 578317823 683936282 803408211 88021950 322532065 811962796 883831053 993513934 793082535 920422427 52454202 926202978 194031033 414085417 634179158 79146377 439917156 862861624 120820928 336293448 686663303 116960909 283750623 620284791 779083518 397791616 6927024 374878589 455718742 376841901 910563377 357928131 284174307 351075591 438976340 989269317 496683620 54637743 25696779 18044865 121623501 920447320 563484742 462930742 376865269 677510585 877761054 318388656 818597744 250160241 99705407 863046418 305379031 539485538 152770582 393076691 196295081 155063474 824444738 341219745 573544557 475358090 994203564 960548621 760004185 347794364 785179603 684545996 891983497 743755532 235715314 190010896 24478371 784068796 299151440 587331834 543170435 571610876 601836721 377602716 621537792 236172504 483194004 695291406 94307461 165505888 102982883 81901931 210846519 677441229 732650312 600787255 663648221 141499062 562824746 289175956 413003024 123804010 970452846 495278486 612070727 632036038 996092442 725386775 177540762 398990281 599765178 605292138 462608376 972230634 641031693 97316771 552179659 213405352 23181587 178724865 545146470 280117505 771165343 770014723 458387620 525897542 727705452 162889388 446415505 485682837 180935235 231924899 40650464 466547223 191706220 221852368 202434352 346002146 675394608 683848949 712154301 352840801 18486206 709316629 494190997 405419661 807784207 907022723 323223348 141902068 379609437 472451395 838468634 192250383 746984391 642692514 337818378 42868767 383672737 574225352 935431859 623814604 137002565 932113747 127474940 595996455 628841820 792640274 198543813 740158134 179542240 67648448 226567396 779959505 457797741 60708543 437902927 276589133 531804798 397947314 356021984 949734829 133361511 8951630 265957278 193481786 576395424 588681216 62176483 202299536 129102886 864838473 306988022 859606803 535974113 302457632 649440716 243305755 975704488 133436823 994403392 468180348 974966679 631332143 345459429 718082502 962610376 489612095 292704420 406475733 776810014 306523374 253493132 458201580 257185061 476927369 10161503 945013660 898703678 613833918 601384328 986219874 89203179 485303366 541020999 518343907 768580688 305658125 303493957 40470656 283752154 104256378 965487002 702186163 771722179 218309767 222117808 830594413 649744699 206746848 660014009 94238985 577100913 355136771 315609468 94874120 518311966 319427073 704489118 325264966 77979691 302684686 833288066 646984603 62343967 402270048 825171559 809801251 871564019 909132727 41114823 987869204 574087363 170612230 470602972 935686227 612635973 934655607 243869291 628398651 137957021 595644040 244862333 478975053 170403639 983885201 587109630 634386233 453729281 33881214 167789388 156447766 703542010 736068589 552791540 275509360 955271961 356195076 286567381 240123978 518626441 848172430 69473267 112553196 572629230 27012753 885045934 113713824 760999295 952635197 157713444 95691660 553526002 282640080 335178344 769299865 406851813 937445072 737523523 104386197 480997690 369049932 418411273 976021440 52848763 91191184 235479667 11325013 796611884 318095706 462952270 49594121 234462192 824304470 993997017 656579368 536300333 785450154 968407852 914827066 93540085 610744516 874811098 82420490 988710213 471330105 167609436 100852106 887366751 756265719 57698101 913375777 936281415 527030493 572389235 660349284 799889934 603568554 433187055 529613647 370478432 747308070 830168887 258205455 245074053 215098933 647295770 524081775 773704229 420790387 846475665 941261254 45231284 133355199 943854606 324378692 633429518 805320037 412975640 689302364 32637805 561090073 320125273 436932644 311401541 383114118 900305788 846835085 269929765 427028782 607474122 183459190 827475737 921334147 63341745 251227537 939421812 695812999 439619364 738235407 729335912 857458581 4549886 412142782 528031579 292000470 896545619 922515449 815409188 317994860 253471083 182888131 367595919 713371729 199872681 615537581 631542393 378293943 447343020 767775460 209627325 996668499 838883525 950618587 258642149 851719240 982450794 831600815 573484246 587308451 931554949 892970816 99079349 72917602 505005768 969314159 47880020 238450320 713048428 262671337 599999441 84684702 317730363 742875298 523089504 427171529 586321622 491570638 917185778 186048117 566515163 498071402 686867845 951340361 884021424 967532104 926536034 112290766 249088974 221035620 616125101 220556258 214251755 189845999 924433598 150014686 304034896 752188022 321485749 662987313 320744532 545993718 178035999 9965067 535843479 974072368 214376562 829573560 777404634 263530468 36561987 789686832 609884300 369773154 994311772 906023619 965723345 865133452 107070020 589873450 547491371 234768116 3795949 123023616 688474057 387581669 425494339 266780900 1575419 900571320 172119853 218577988 298351532 606115033 533087799 870391884 403834786 687415617 963091555 396598962 65789831 874373097 535728847 289703111 778293190 858101041 603493185 124149499 386232504 414272835 703845594 525873065 575111241 782199496 786210630 694270998 918170088 228740784 403459714 369622349 481838994 341409041 506672048 745805088 64871745 570749570 544538899 9300630 635866426 932995363 560601918 229922206 161108716 380844036 375993663 90571127 321955530 233903399 445432828 886648251 557934617 278995016 459434131 1878816 517181322 915016089 429363399 398804435 469127978 181292743 551072173 765832804 83910764 42301492 748273705 442845588 138701375 515385725 492054884 795890213 58265182 923609409 98865417 461098796 134974122 850913446 423543392 657967746 849097740 821181920 126358249 965088898 793104499 115544091 137876007 323676255 490784420 796240473 974197425 337782592 821452888 984026114 83062099 344996834 535738299 795762133 257522565 175420879 838369328 208152777 901998520 306457156 276231967 464071261 777918029 17008336 451695154 635093661 829295291 65211359 167909413 970720698 274397925 137017343 693625422 222417260 107788528 884253403 640296962 373539417 686102443 795524286 732418335 292821216 321272835 25439583 645372849 543782078 378527682 141379382 851570801 490685088 541872793 873465143 938405347 910442125 844879426 700377523 234655466 959409595 344821832 90323371 431389701 515986352 316719690 723090859 209702545 318881496 194771398 424361585 359457460 548594964 227537903 267841690 871780437 130853704 621301429 275553962 166787061 700045622 413057997 42989619 776703353 553162826 373308099 53933299 162346651 841647212 639188379 556708311 817619353 360436311 572346293 332062673 679869240 323835004 613814582 345631877 717786542 653739665 78373286 958633234 65678678 928464827 468054678 290008907 836679566 75025509 661764844 546197983 706083194 244925709 339731692 342377675 50633309 339934578 938239529 857814596 585965344 419222175 24271764 789676231 19744034 342500135 156992075 949348113 279644325 859913176 815307863 573515918 295644582 512864210 974390573 124912750 273090676 236401260 324894830 442185518 99822957 396981182 832781442 184442365 194518338 656245047 59686571 325715130 930626208 84602543 840430608 66774531 438042982 158968923 864238926 495744811 43409439 298847634 996775080 606742065 776915991 530624566 155033484 940938711 177064791 854861239 879619384 909080724 896232724 885990375 17630494 778984506 655274218 537950589 191877051 283502457 793534721 479590820 230200004 131102938 461508789 26027092 420680007 931045509 592568671 121965477 52337949 343451550 738508400 252004833 249713710 172593724 108047687 860544455 556882148 498779969 213962137 452990452 991532305 284769807 516680048 601558649 790519810 831234975 967173153 134882437 928743438 594101601 343540822 519478950 17868573 300862904 489795296 715624027 928046638 382928374 345152161 503408546 546572647 232585819 965403536 863330958 97825098 379673585 839849118 266464541 789762126 249934361 764840691 52308069 998257135 342460852 676149644 767558082 21679284 434120130 238304443 508881060 456189026 162396516 118445077 421542933 280921247 718811241 873081689 618737226 712763687 892815708 345918233 550994179 357375771 672913266 527437057 858698726 667360193 201271774 393622983 120983550 813053611 505305495 461305787 351721874 578402060 943015875 18563090 248086961 68923460 336555215 939614251 885351834 829984371 248194524 950385898 545755717 898551865 968263882 407501707 662407346 741256709 317912452 662042545 133397136 250289758 862100941 138347093 772225746 166719288 9053180 929685077 169157278 584037195 97246835 831506877 777988580 74334405 990417285 851663097 100525200 774304801 309028223 831448412 907346436 811148026 388104181 435229613 24484464 117549297 611962739 350085927 158239192 737516139 211847411 820068316 79613383 320847956 200391014 910773448 540452110 548688950 587207879 421175776 682920611 615411914 344683275 661588329 120260097 182412613 751697483 40450514 702673264 271242226 260713520 119407779 334581014 651304579 916267161 600372939 760494003 512296879 480394023 760700098 695362516 667989787 446813962 609064486 272672548 641437890 136577762 339536974 42561508 135795188 655593062 59128214 623661042 378818910 690366370 241984215 492541444 813890954 208819 561472285 231490420 99459144 855778613 136928880 982256300 952779800 974508925 400834813 500804760 869718119 156216425 88795482 31685965 380848621 879208097 159156434 514468913 578340204 301520732 554301131 524485370 72533327 359447953 48707446 175539645 681562498 400263693 74116959 365493609 569518290 683543614 96041248 89708980 186839277 522367173 41750588 747214563 270136505 795325576 773960455 331230404 260751234 416459468 559393052 172546332 525624221 268496395 689780934 259802410 635203010 303750072 42449983 840346033 20100224 783036003 825929556 186915808 447402835 181138418 360044206 889766241 770008057 573714406 129776883 644041784 169550999 601440918 501192127 200271835 818481091 404219017 974317176 150372327 742237804 269314984 787850751 178026305 992503845 995783318 560534543 736259224 319031586 896395403 647117154 879792669 618530655 268253871 345987638 330453852 397459103 571693785 905157414 154380885 262903332 298450918 902284660 715285792 8215851 122394278 887577036 596543381 979993380 143490111 277561064 830666725 23051995 627033937 59836460 13033845 917379786 782254280 910779382 25500534 21730314 960673019 163813821 410021401 456167158 965940711 926734346 900512677 80817770 280785376 11301035 873131114 941706852 532094480 159732075 887091724 105864611 709752610 382434699 145388635 723249302 849750936 690983558 362716914 521485094 284590006 568561775 691802981 667726408 500913221 674384709 270311928 440321735 115643134 142702108 180413773 637884446 906341369 660388450 390136975 762422081 704330867 942028081 202787009 462039955 185431024 836166284 956771523 657162753 718876146 715497969 899537755 757398742 779157155 423447084 814730561 990061816 439120504 875284134 895693179 443115622 195287649 187095833 426254814 946696004 422825831 662084472 812789371 567925646 157507215 357209106 722107179 72245962 431688780 277560601 738097167 310689098 660735475 236573270 280701549 659507359 814728637 185903587 176407388 140738454 354873380 767922051 913913132 529116015 377627235 408529968 711251268 252030119 217458575 332656334 586965240 572592224 291007987 588471487 821662404 4213114 680405785 935654594 726576747 689535597 964553196 145703203 933124504 372817551 368932676 392000943 305755027 737202204 9172351 365015161 629557991 963291378 576013105 925782330 594752608 258687849 170981437 709451648 153614337 162534612 617633659 841208880 696049915 892571176 185919636 56862314 330582572 940644173 843082097 267657643 362838622 66377013 226655828 31454942 400630444 959331791 154414786 796836252 15232311 105122335 824988012 605322364 128315840 430729965 79283155 345002631 946965201 605470542 760656537 366289566 13134541 661389643 652904582 655044583 720074535 632681720 468048092 646267651 811312785 544215701 877141963 762011456 669124004 453078415 28722017 809068260 515461192 287367230 408635375 842348638 747594710 765411573 465108956 226728272 542835595 241343688 343890005 683416443 438502542 900612642 208433540 196547589 23058269 673812086 919025096 524401166 100935167 697216762 917789064 429849858 995403431 789373382 74449515 792096024 117359307 99371796 735462610 458424209 64441632 223406768 895061257 883470425 401635221 429555713 931628106 973270627 734302866 362580668 943765451 788273457 40780294 435582754 157772598 57066004 21902532 817658713 446407932 61689207 589607050 370113049 636505344 634585992 945505027 876565987 767825521 475510963 405717314 516228784 603519755 278527762 91545114 333393884 746590289 986568388 461331994 381784303 892395496 991064070 715638222 161861308 697264517 602353184 695979182 612658471 96370708 764644339 42740723 982928898 790572328 68701454 675739461 951321285 54154044 602142314 139203363 897556975 834007507 929630188 594864071 530109652 197496888 324691773 941263574 612073987 35033732 370175611 146035379 213710007 603761520 532154328 33154554 478388219 135550512 331261314 881790059 825470687 641890186 852068953 505674424 238016519 204601616 435985923 503542625 990486582 150510890 72971601 39407148 569875279 803258553 537455794 950241813 172273094 709249949 488775627 334952798 545622206 806667126 621317017 701767811 273777766 805390230 236536229 203940756 407978208 429402494 679034005 346452905 921979965 414624410 698568927 199253270 663629659 180288030 847245647 831619290 103693514 768462702 264927797 969863797 934311893 548291062 186224094 143988056 607608581 82399029 516914075 976835437 261254969 51540419 41297495 471087607 153487161 132229315 469543404 405662276 535156745 93865037 522437012 344877225 225779622 742990121 708710809 740948671 483257499 383036170 93929455 704303830 954074952 711846457 506850350 732901127 454679128 699877442 998200515 694246278 697214980 377510328 628496239 759252999 357509950 397609580 117271197 828163319 759478954 10893024 890057434 279492424 702529134 936932009 720781273 776337324 466208295 823213673 451910813 190078027 122214993 304575310 889293174 423464451 837111877 699340118 854564448 521777435 834760350 238409280 904754701 416109260 95950415 944146399 789689477 729866314 118351034 258391937 465939604 108740100 882435352 215268343 892116916 888317925 560881794 401522784 314563086 942724839 660533278 548476580 70788946 745530645 368741791 115172249 8239660 197190373 871385596 819811752 792451826 937406382 601548267 863436936 414780191 287285850 41265066 173642331 431594167 571731573 10386288 565269189 426404519 812894952 375749874 181988875 396004801 724773543 128631638 509485440 992427531 412275545 525990610 607725412 979952781 713937889 502756321 59402250 900980938 225371410 822874758 516540454 810531105 655094115 480257116 833536727 303329883 837030195 478198781 294617442 265754248 237359860 512308376 213071380 704364021 981007493 172293947 786097753 996824276 124697859 995980151 338124214 530024600 885282955 384264631 728392699 996399334 759602496 201492154 4803296 87837297 724669141 625128922 431930243 72598114 197176966 8420169 654971482 316988917 986374941 153442792 151336156 170532209 516460931 848712071 127837410 15332797 451783031 872064686 930589996 23475014 98455509 720416865 70012356 844230399 117013221 818175513 326385202 130084049 136668164 229012881 884056203 436086071 676499522 700776353 367435891 38915697 83359862 248359713 418127545 253255594 477905515 455046158 230656519 269081885 376172876 435154293 946378004 544226865 515112687 675020879 640580291 362520389 295929208 824135681 904932964 539919184 829497670 30473359 305777074 876438939 725792150 241182602 822916665 542841850 274040303 477404087 81712538 716718924 88487367 689968301 268807176 635990953 784024416 623574201 498076468 593540280 821971195 636027598 985039444 441339279 227237533 970736780 613776314 638214238 398353328 869711610 509853401 794354184 249007569 843941886 214975197 434420958 648846172 32974690 36442419 809224669 370716994 508764457 608837280 638358548 527702494 810454614 202882931 998284727 521343204 758177908 651271123 7926641 660034585 487085818 921425492 510115 24989249 22972677 748179750 328808554 169881868 39536774 343644257 267032712 657818321 676508417 286104723 741775595 335939425 641261247 551985650 513609877 464526412 226544082 772370432 955019153 379356459 488582188 540502738 125629860 90454879 694295700 453592575 392098634 636469691 483247897 389028718 526641036 197741809 435611566 802649260 971120427 630394709 197353365 854285945 14146002 875976698 796316518 908477843 11177494 558196057 677712800 676914641 423727325 748845266 823507149 91126749 315878225 176027617 783712421 680282007 707049322 724311257 961559556 780727628 338206375 176187265 153498279 788346400 124946542 267184109 850557498 433415686 413624786 311055517 814637548 705484693 544262703 572136164 484481653 477831184 270361108 966794277 553837159 10024369 978389643 854625794 972613891 602557265 719407913 296729895 918666563 909293686 598786390 890717386 493990300 577843419 631935277 76555481 489537332 604379379 755985222 88191676 517827385 108977068 100555604 63764134 977180244 933381846 640746356 477887588 612581612 168184616 331527151 667722979 788793773 117833012 403606437 812425530 662624732 808449454 147414996 654660951 285677503 132431162 131986311 398544401 412572594 463167337 129347194 284088189 248479702 685611876 606609659 276261563 616497913 685868785 740425063 650030376 854290043 125685901 619790331 745285853 206255234 618630187 603332165 642566541 161175557 118998118 11974423 704204479 791838909 454634888 522682876 826783798 891285347 864886628 436173030 113474061 855774740 284593195 797481748 52962292 426542749 811047308 459356520 711477411 248303732 676129403 840303703 754762175 320291244 327178897 211616244 350999889 333554945 881702976 48077849 120316579 338960112 603063624 649234623 622899365 790501026 428654207 23957941 952359710 124168092 504401265 747552189 934981893 524244079 860092061 458096366 666305800 165415347 752247894 522139817 497173093 34780740 472706307 94501030 273042826 11286704 479361511 489045142 271649111 88041651 523485287 71428443 830063075 919463858 111787567 288575379 491128676 770402586 33198884 491198337 791949906 878455711 672581483 381771606 116619501 362466446 81001466 971557291 591692145 701186204 22856808 223462895 11842090 794541291 689928476 449485595 388233124 346930801 179025967 556712602 527283811 986366254 342150886 134060804 723962004 74450290 436986622 372127514 601509739 128562356 608591445 730698355 376140229 889561030 683759717 109628911 93849431 523051782 133209395 170217370 320012346 834859111 760211343 481492709 756244810 548477748 395767447 318611014 932490897 877347593 437778229 361940949 388170112 440585672 225469685 520059848 830736239 909865786 8088508 264900089 606009973 632167234 860694669 949652645 911503660 455681899 2306168 730733519 106456776 305737986 156276232 34075808 373312813 624060532 667431390 705530676 796851653 37872818 613314629 513142732 75621429 612779211 342815915 270970608 200924711 690455789 406160062 56213456 573795664 524841448 600873070 6504086 452725426 512272598 115139342 499387744 982452941 473532020 942482539 683962802 490926972 583060451 17842606 710273321 203138053 874084045 484024700 170585452 695860327 663508653 5465885 983798210 133180851 57551352 175537336 84984405 427014985 989570724 127388530 544210109 97523525 89820209 154271869 388997487 344406466 21066059 496690818 325806943 303441417 890023490 551912363 594924473 162269429 226533046 934215702 167659329 114355301 638621485 808500052 431016367 96805703 658550444 768524209 794900503 73090624 717413467 437932345 955870762 490359342 454917678 619426322 888756791 940362699 539379143 46842011 495227924 819966106 991275485 23261416 11262595 8406760 523291897 336670963 37529307 231103543 468028872 300115524 35199543 241329841 708946173 989148489 589758376 858609537 181791901 775227229 299592208 129608008 460659033 933716558 346856828 10040246 817983469 421361482 114219400 530660083 134909830 661776357 519549960 269628290 336647685 280149682 949456437 683172965 274057267 188060885 964915294 242323838 200163746 417966006 165551766 931343839 718011074 816957854 944693255 173152780 660407035 901545560 255423426 477516691 662741288 26534077 950166861 882940739 719089733 861078985 937719054 551397670 495383020 974440735 941268667 579398972 988572304 680182312 419534452 781375937 846462743 251246384 201462426 417336252 464729319 621308442 514250448 826264565 704432641 623409808 371585058 178422474 332330092 501819714 179516174 700332386 216705173 700273772 162735958 238609666 21394662 657447649 227256455 472186909 885006511 982677780 498591470 439157229 794776834 668310320 899738312 272331359 198947533 906481733 259984299 440710174 895005673 299923852 642267808 575597299 715847604 82534823 13604300 547878457 587956134 945167770 774159247 681483455 277990209 239888934 142075461 420344624 572372755 57349268 725139985 146735082 686570323 500995375 278829337 121246656 834192442 922900565 813718806 710762888 462287589 930781659 302749753 643919074 226983022 587079765 254091613 774783505 552224942 42286358 450353900 220453490 180310013 995383820 300861567 91155675 460684014 595538637 562555059 780147374 267975750 869982255 391559472 549144060 77766861 367856562 347964987 347307138 457905864 13037645 254557311 648479263 339048132 455050006 35293931 966518471 278409891 828953109 45155595 802246140 514098654 425470161 579606685 219073333 395000517 557923813 460262578 598197949 211228982 594728880 139982169 175099757 755934725 381599073 416013281 5699273 978129553 609176537 390648668 670158747 553934983 683639918 462817452 328448337 954409951 639462466 693537264 210243280 838375991 303444527 416581791 335302511 259880435 284996266 140040404 87380063 180331910 217754898 833036337 558125994 316164444 937847936 294770688 420565740 131268660 364932895 633491939 408494962 764671381 987481479 656405370 405881785 225982907 817742707 893913 989658837 96856064 253741193 258113377 711357770 97614960 453995098 38951074 465693607 964532942 667732195 240365675 183925961 214777490 222621655 12414672 788981814 188484523 557168180 565910299 982696001 490256043 443372983 69380802 242684360 303149550 47469717 674665467 677712060 107216939 594562203 899905285 609087834 11133232 398167846 692295037 521000798 728686679 199097767 847281086 286487670 550350660 802338123 279588813 9750859 890932482 66496490 737033184 676177377 833022157 331822065 582495872 526507283 976030168 143123596 346435292 857214468 554395538 191101240 435862078 579075771 964784640 465364981 927192483 399825727 734225458 624615045 911716532 857355587 878642028 320025563 882130926 926488517 290955487 242887385 708471087 592844443 121122203 626970315 442294898 942292938 801294429 481205801 183135853 418623150 118781831 661690193 269029981 190995455 594978120 114969401 539322306 129807122 187280585 538149615 542619449 78058253 697815725 166144749 732240128 621360269 7531233 719482163 309526573 285550094 105851908 565434752 841222669 450790622 211761457 163198015 785853912 337387038 659102073 690377127 806925631 429127860 803665092 946204783 32523387 32713251 968282743 232308227 55339975 318206050 606497962 874844615 503727031 67982105 175329999 941137717 538196912 799396090 646808415 621798515 42371595 882948717 756192448 251816364 82760595 792500443 359084341 781842254 786074951 335636292 35738321 812143539 401432654 924075953 589039899 582038474 753010813 225705172 23218520 436811354 647601066 62871110 928302359 149550217 234060560 13995805 351204649 956826866 885728613 855603298 380155136 335570892 648169747 755967446 911268744 818691208 940767971 78595842 532254932 801473193 308579833 36741290 873327123 146983899 564184271 478674766 734864200 555146032 904773472 480865765 638686080 573515026 994178134 904815072 870401590 653379976 948352856 315896724 953074995 80383024 703272966 855954750 920794308 135794332 515685250 26598175 266029741 20416217 204277977 292227975 266601412 865682082 432989061 542265524 58045759 514872941 650513634 994645829 881513413 67720504 584401265 881081333 803680097 336007423 4623389 212318297 361061512 929772226 770545705 344247513 93159840 406349796 614564227 760731799 722525230 201384592 443175188 263378402 142143790 94983503 107038928 354715263 584141267 702934084 302009122 402526733 305034698 761392830 471977620 72873235 26626582 664376972 275271785 652375395 624693553 731963314 306714610 31941362 463715513 944972668 736583903 649227056 926613431 395558479 250511241 19095461 910264722 62798849 423009081 451471739 636207072 405785514 207533928 373189454 784568751 807396383 69384415 112391137 873064431 631461658 389443360 11584129 209527242 252033553 379730640 82970199 432334892 34104366 262712178 247949429 979084299 161970458 281895446 898592794 528391537 729884598 375672836 479077586 891930644 964259647 274992179 437500305 313189693 919975800 915295294 982330852 27638495 55892891 889817268 290143625 535399802 321417776 71740282 655737107 611623542 735152602 85654548 346648530 812091005 813957044 280825118 378320190 27718378 665289523 843896270 992571870 795196976 687571488 251079799 235431865 929848406 538907649 450912508 382734894 127521506 869081643 857344871 108903560 730384534 121823299 992346723 222680640 135017214 588527025 644139366 413486684 64008722 119417422 595937291 273184975 366638106 971130659 793024413 530394657 379205708 864771656 357977469 445409744 502500475 224980191 873083633 377102903 233902314 464830771 854540694 538220836 257807617 179998341 472611129 999759932 65693845 387272597 430387828 599813941 592534985 781758033 248797151 446220180 544246396 398646301 201569169 628188385 208232225 483921371 539566925 429956507 312171664 314453068 682300068 544637095 724327939 783617887 56248853 692773806 314989885 427752459 163836596 865317009 651167331 837384792 874745998 544332702 197347950 80611842 394947657 763654222 746480610 671320268 35083460 926317256 245877143 729949106 322905404 183100891 490316409 911838354 947641597 607420939 874817053 360647083 320914397 956328080 171548210 711498447 785641378 281671047 425735247 266539817 948043856 120419524 193393819 327886760 599721188 522331354 52992154 820265361 405657766 76467927 573730846 119240800 830209489 882143075 363314963 279427897 547390019 742746655 987443384 994580219 15514226 843481485 565462663 135314342 962585151 392677152 432049450 553843254 754088308 435303358 198639929 866446700 508093095 276654825 78804380 220840241 649317598 864213270 651781744 153390549 976556447 826163052 80468807 901721302 620067384 341503968 265221634 156957275 204214158 500955900 888004771 243752399 834423499 837430120 493117307 278833932 20136574 303789398 172379106 672155784 313180645 39565976 673520482 236905341 365959824 741464991 238563226 515245558 160043621 46866127 837574376 901818010 681457628 839629630 248375918 119506694 324506472 594214930 745977717 442846430 400145022 366785949 784107327 403685250 365070474 63652709 865405267 326505285 81156670 812428375 580246595 254689298 429490381 754478680 785040774 156712512 364223474 240991047 914513015 123581376 935060877 966391405 593485216 511155526 399412840 832981029 223763966 660336644 922332285 121180416 94691391 696183215 627960743 545258917 277268513 678214759 890706646 755613692 708496069 450112227 590455795 486163902 11446656 166490288 522391859 585018376 829691441 650336959 693505755 529963831 389779059 63789827 769124810 175176333 887334302 96546245 675784418 824898206 603662339 439093818 161858291 120210703 343267319 554102074 899766701 651045143 258721087 770849337 768858452 204423012 874348266 286075443 438445508 201073087 885733114 715084079 546701351 529653287 646846234 826649839 505588888 152277337 583428341 925520856 804140675 860800886 905418341 876646608 71660380 860634909 690601316 787292474 856148640 704979347 804831240 62174238 427554395 769829916 70037485 620881206 714692067 294759673 180885506 338235458 859793217 395522626 866409113 174323905 362391120 854206018 413645981 615748500 711941884 907226547 64595774 423281345 616209984 606903419 425919696 707372553 333940396 555828484 949070032 364032182 515880360 860118485 707884699 543433862 650140287 963025442 580225745 235854245 887486615 512221668 880973392 361270729 910988004 856765213 275095426 540470452 601022303 66699554 822487764 412984660 639236520 239189820 939033084 381909233 545724207 476632463 168750479 635075094 249539093 665142863 539889328 403558215 657550038 873795806 275765010 757895318 759216362 534161038 70392912 880497203 699054157 520364452 105719364 629240564 737050003 28901231 346777013 625928211 957206675 155435439 381632498 727853208 408948243 846507387 792456394 976860388 368268727 491977384 179086819 587707754 18450861 827322092 338214837 671202556 790935843 424199332 374376120 450204650 419174121 2773910 667635123 999618008 41029580 909600108 887650286 560677552 834765239 780900321 26989566 936350105 347079156 87561121 10961503 550207064 510726445 914519711 453674849 638195224 606671321 858701745 317491128 433740978 260248076 450580567 782004730 920914276 359519336 500275551 370586132 515200563 823699111 640804958 919300874 966640215 129388221 537424425 53642528 837683959 364991272 365430483 769205835 442151419 958730572 686965672 482902406 107418820 102077955 844155552 185449496 590138733 354568088 836323183 346056537 990669623 779558046 479803331 136994356 155194536 944766666 191553233 390682733 836666246 750437167 82041569 218459686 142415818 826613826 714581895 127911156 582289649 588815991 271202162 208879166 404976204 162578793 721761903 746477880 303170583 445707580 853179304 597145516 769842667 130818341 881253229 196236210 387896321 568575685 324083771 982346034 784037113 823191676 228034290 186270609 327839240 126084654 259993631 705748176 872598495 215066367 52853158 296624346 297183544 600159383 671360577 574813473 339090422 733120684 730094516 815730546 992050569 979620519 938534534 95581529 290079105 504887338 709655528 861929598 742745055 330953528 191932042 471756796 395202283 13598320 513118513 602209269 460710062 31890254 988807737 582464212 531479891 478447013 392031496 426354885 666417768 130599501 451630267 441559928 258214566 627315453 598746031 490142575 605766373 593371933 621031003 617797878 921359674 48114260 328727358 547177562 871752298 338236820 692902285 295734022 197929061 76173095 82590337 629183434 741926136 162350637 60498248 159086642 98110121 444493119 583192480 398825601 62559780 926209750 748335983 493041542 546696132 656509267 980424336 527308888 831496502 69560632 439530639 256795704 939128735 951744922 683922661 340412046 691730354 296815141 714457152 245782746 508218119 564851644 1248913 591830689 333077721 840028710 319366835 501639517 374243372 47199029 872062949 59839955 484682663 490023045 403676403 252755166 998952495 619094986 676915133 478059106 570896489 893630266 257691202 805891977 868445704 693842137 385845417 9209494 33190078 62838680 371425067 507712549 733979011 186937075 9079629 278817777 299969050 705307729 370312440 275106209 384906850 377287160 375732484 129329563 836496397 824813079 489499369 169313934 395661731 784975718 988940405 519105782 411330328 789153605 551949321 986883145 441679353 11500543 837794277 604175370 15859852 521562123 443874273 390278104 138073480 430184824 31676011 841843759 273301859 214383099 525005254 719309311 102163745 32143089 230542159 915046253 316020417 27143557 946905171 39650185 695617589 439335636 254742788 4794266 559633770 22144838 151028610 803835743 367269063 78376705 892588624 369764928 886588170 765354093 388764882 920015254 85425544 3397130 518142173 792614437 383709800 179845414 412490384 13013634 942795835 87949391 228408042 374381550 509380879 138220570 641677226 1205627 60257455 528379475 678058972 58200889 496832202 817640468 553216763 231828359 311916218 947236011 401680546 247483441 552615307 810634029 31990499 85854956 266847475 870121757 310459074 42861545 923559352 848304424 487787010 292782127 910870410 299953676 502108685 397715909 747486459 10160080 522898117 453958788 860330300 644359492 722623072 135224318 159537323 144584870 840124170 543374565 822031044 915787001 30737784 744401890 635299296 944434878 932882370 664990449 484850468 579776240 393830831 728568698 286124958 710863338 132873993 924054157 84426689 896306269 471746387 561739606 834076963 688547646 350132355 487175962 139639549 740566525 697781774 125254043 450634610 836030748 887483472 577179817 596615581 333667121 650562785 452810654 624214666 968711032 6527568 362309063 377708135 390294983 455533860 383027820 895817626 797607669 309220635 290489095 730318839 593005821 743735020 408913256 842965564 898041995 868406684 884862711 878415976 66874850 248030262 32215800 262245182 174831447 404327709 230756927 870957310 866652776 852934988 818625956 95377755 306178195 467763870 689340577 56963954 860626289 66469896 319852175 44681282 563720725 156164188 344774865 594809749 617190128 81901995 539342747 940123696 537668292 348753278 837862460 728409306 265879226 757790174 256093054 978790151 672309818 971860492 258437473 97548130 30050665 164158460 303707256 628804659 754149052 177862508 352353365 729708563 505952459 448111168 790427840 386123699 182947255 371010664 680550349 612788681 552986373 170544110 760591661 174208052 553034999 75258272 991891125 168672046 484627105 666999799 116856226 125998339 23177318 442390530 92174021 765406530 126258723 233455154 932791635 537491892 709864027 58558773 532340210 346111050 340004252 588310619 188168084 208935064 527924667 258760317 681702547 362372316 163107672 182125627 618764200 661719092 659469276 667437846 605116125 266947747 561860656 121144739 450386954 605978275 566574136 997350082 17608082 706880828 909385118 104358798 830154485 581167349 134129776 829057679 105389230 163051329 717814270 961384208 889678764 512789570 983289202 597320740 137321270 788259549 659943962 570672431 316533876 750570094 171926823 257407414 771016987 53817900 378687912 788319178 511336643 289055387 452589229 512428325 884640016 22932251 388642852 587822445 718825955 513048688 363135766 648164369 382184911 899457924 169696222 198432856 934724140 102922626 362084629 205859973 542769663 576342530 273086294 8807074 741184241 890606218 581250642 652272932 131509981 385481003 258239781 146955988 279602314 904570029 69819564 608543635 928668903 237647777 670871805 477188393 119376653 537009356 79978911 649193172 953343387 791593501 520144774 26437470 458869058 793017449 476316311 874396376 746577015 768792153 216632281 457836625 208636875 921029960 871696326 391775294 367874190 916725288 361199610 57264392 158504184 54440286 201373626 289662907 512107505 643454574 881787631 464031358 55359654 431388024 307693852 709589111 561916539 85463733 257747009 781674225 524779556 621438734 464474015 835374270 531815754 820900477 377663665 182058566 117673825 509050299 355017213 172207348 422600031 788405028 153881145 772518887 745182061 577441677 129062635 49992225 619326998 892633833 649881355 445534389 395312882 708936907 693806776 384122416 917220670 238786090 22654894 212573355 454258963 898379649 38605877 88174339 567700186 687518613 510613825 693927476 597043600 408538250 495675158 288515784 965120063 175189542 538970665 898352863 580647490 251254964 50892341 942540349 609849639 965417068 765636741 130209329 79126474 779595205 516304020 182162575 496801447 144841005 185290116 353151389 982479321 951778207 182096174 37018637 89064191 794529846 203759232 859977949 504632450 910373219 208969174 210927269 349715951 123646071 554936007 415788340 885338462 174701187 863173864 109803680 552239472 441858041 188709500 707942235 62847297 239398421 237483156 170124813 870598444 53536678 471745943 766605439 345484999 661139712 30994146 807386119 740626809 182570437 846230034 554108870 144940030 545291710 633072359 658666683 940206825 493704814 495898777 337124044 518071704 113038952 604940396 682805526 238633513 73149718 650760597 983508598 829112869 313006538 214662362 421815903 950942996 500341512 459517050 163095312 36858487 748091267 415806611 234531777 383910402 725102083 499199802 366194125 182072073 66575104 196424900 952536420 479586067 921790991 533365204 656853581 709490447 808428344 211054833 486528996 646831871 336154494 322608623 243010365 251096163 458684086 109288037 990558171 414423212 174793723 938859370 271042147 159386393 411768980 634605658 575107868 657274395 34182250 655477650 453285125 911365497 587583384 876668956 724421134 133777830 217377147 716431002 32842259 992149452 497310246 148117555 77267773 734452505 474564476 350143888 104502304 283498466 378610616 763338337 998139625 730151617 665548999 210141826 542698326 200683636 422912644 305157509 419052185 330600393 572100573 723982321 313378917 633504010 574548446 31988106 191442743 420095004 900263997 782668118 766680133 140954034 400615547 201550397 507032960 87173701 422152869 405062904 148764817 242457741 613409712 733689228 322641816 797529312 878033303 927958108 915630546 642191082 813538671 86959889 685783515 621420059 33485205 47105331 254522268 591058645 891123760 863207781 305266282 332506140 657655552 805627072 639002187 978357451 842393972 364691595 882028880 542860065 289733573 395641861 939194850 659022523 120536702 34924993 5445978 306952443 107036896 66235951 179058923 459247019 913090972 865342199 556569 42746512 105550008 563698522 652795344 941774762 331675185 897263742 558038376 700585389 449280531 18375974 720196168 28900637 823793493 87635244 517266047 648269310 520959070 89788334 410937015 354657451 161045450 652169996 60430507 448940096 871070524 188211886 693287084 870852177 516065030 647568011 642794284 964101950 23309079 352664778 319807691 954732008 4175150 760779411 545461809 381022955 393271501 606870678 588193692 338588748 573752631 219902269 181408049 563861593 52171519 769437862 166087073 458837441 988745071 173460435 852232093 351027170 342929368 545517647 287705368 200433680 35722322 491187633 238952399 84160244 87467836 213967393 66726380 901722012 495784893 24486559 437906474 333449477 104151048 539593104 738718731 244736042 386884537 608861736 835912876 312303875 67234522 662642935 454020746 976769370 623956692 328935876 591928011 491277685 404202392 570201410 273351830 366941689 975543656 755357854 582852901 862953841 849272711 982817928 338387236 388773550 463025061 726203793 24535938 384835662 930419041 680863338 657221414 653031489 931151963 877701260 719928610 70297148 865397603 881381996 847466349 704225482 193053588 202074270 910731443 496703055 97476320 850336447 811203096 35478003 408834288 606237957 908320420 58923536 174299435 597738166 724708270 927261921 902366969 134592990 59467166 145726517 834957835 539692948 712197074 390258403 761714835 999418396 38759205 509510444 925782301 361652556 557424153 628993392 703880546 85985587 656315588 467857958 304381074 774211421 24395235 921857304 875834412 340143333 460972200 36119773 168795191 508895639 414637945 356947971 982696275 314892318 181743052 525645859 236532520 252854263 414425166 176868316 671436285 835032124 895352795 615360593 46503119 74329178 602975662 553418355 59634467 677106427 879169844 982515453 72942087 461155135 485251010 615136686 686913642 713612775 865790018 427744902 755374379 266078978 471436696 595006656 233604242 673043440 818002346 29117964 586084379 252487825 445811487 448186133 509588026 92429976 70869822 906840168 763932646 91180084 660887564 862536539 969928447 547726574 913239736 238084615 401102692 533255930 175766310 65459258 413129376 645949040 854853913 833351193 17724594 169615971 609687809 670482358 147050760 320078820 639140571 709782456 181994010 288418990 563820519 564957253 198471368 748392821 703757008 731242878 80730778 582378971 229690383 390338961 51696887 597114166 269839391 806331627 194774485 24627328 141030862 317732851 577223791 531377838 801443902 871618840 719976222 426295668 73269679 573600947 145003404 71116189 331638698 524000153 816391471 549541449 935571685 992719935 962129020 654276503 573888732 328768673 722498439 328460277 780692497 150001844 226343156 696584008 131617176 821297866 868409757 900847609 851275018 987240546 955472215 537375817 700389457 24952092 111326523 884134425 77041403 709198925 591700409 744461416 776123506 32892107 180126005 665780571 619133987 976446335 763097630 920900527 679470317 933455645 415786986 650239056 348215091 435519013 233421766 606460317 748677465 105119773 962875374 254721026 827786168 121423906 786222718 554729295 605851703 455455584 299403327 912084985 775347053 328902765 717762148 775114881 381812894 16947810 553582387 20060801 686041016 803846175 415995310 344179856 238509348 786311689 198471676 7207152 512671234 11003186 423767300 667657011 752383300 649068424 666366730 395109936 9426836 980418193 217452894 52184904 252785924 739201379 941917949 573111733 370408055 100981359 905660581 43949888 265732986 517489383 454972762 124369988 420983787 176948252 653901741 735571316 569641868 366517535 917410309 47479064 791543016 276996970 866588142 78120043 545979423 531850219 375682024 672239498 642061756 255201655 898742172 591879454 791893899 632401506 815626635 553424587 410335071 686805724 541068099 139291369 64514053 34982666 362443540 973878749 298078998 102484647 277611143 417947626 293910549 278891242 225855761 161648483 704435606 913259193 81993720 388047432 994825216 261020081 965127633 973422671 735460504 704627886 558504759 129060620 861819488 284163545 699012132 44326556 122065741 545841144 927291582 298682961 107933531 39826850 158351025 933259614 221071868 604317646 566764748 848552937 377992936 673285063 484111901 936499717 898373915 982834648 156407489 917082549 155857261 740420575 205369014 235967712 775481614 582135458 41477926 989832577 999915961 600625235 487022192 415397812 624114590 802400740 962580655 683606114 65490429 16938964 880601570 549722725 58434231 773504690 276371832 791185703 98430780 755596065 877856736 505249614 931646490 179597421 592876803 393712932 338315262 256636641 313257963 241459668 185009415 92818034 601437933 534750296 135325939 236020584 305196276 993009052 33445685 78139551 785399143 300631405 415042398 529811698 979405798 550729952 487592132 725818177 238056000 440554114 353340496 709094854 814970913 194901375 179846044 400651714 801814251 805094783 294635417 997230490 611944507 53903366 317787197 222260151 91376355 466387117 361632204 203194938 996360142 664296617 690638154 714658838 672753613 948073594 185464408 690419014 831048388 796721615 216264865 839934472 792093888 695134601 304155717 778569723 982714633 873767906 267132498 789325096 101922018 391803017 212601365 294468320 92694297 939175929 902737943 27416447 156517894 509812205 873269071 515834091 905098585 929978526 869125748 98495943 979379762 951274184 98385325 358149139 660346136 147015048 515221586 76948907 167525139 197824339 467902430 752028235 50520656 319452914 883093511 528786755 24566529 543829410 659203346 711639499 965502939 342513517 102917395 582906184 397713942 882763978 842426410 591140091 445752854 185027779 886836934 372639521 402544013 234755274 6278071 591232537 628955093 268283318 336638602 518153788 589501531 296146128 626363748 562560336 411458642 966822824 646921271 776401029 273863415 803682033 425566626 802264841 877584023 42818642 276676768 1743159 661151388 429047145 758003759 900006966 824729475 558150070 429786598 330457486 554372000 871156012 193323359 244892937 281557469 667019086 103125474 145419237 343507272 854391298 934565868 679357031 998356517 377779469 896949458 833152699 690440185 185511811 14378054 899409192 146103314 30569989 171073002 449490112 163720230 484855217 803596119 628976361 913157129 939422946 869879033 193913613 923216499 585275787 394453375 254537257 286386561 893606055 373763107 892415125 718767709 128792822 511785734 982703863 147313198 149287197 848568095 352988203 325047303 492176923 19506630 511616313 35750100 658417040 148005866 665711465 453263369 640301635 231570768 841281974 893425989 356871883 92070675 450371944 706349279 551289545 801235064 236035541 663693316 103607858 307179416 288616685 152292268 863239776 711134403 360028057 329685739 637516956 181039602 930138870 973617709 184912463 844123548 581041034 675950891 678211260 758215209 778818567 271172721 38108113 636465461 453812274 213734941 708247018 531389345 257617148 497713214 299242143 27527584 624442458 595218987 472968804 559945180 384797468 696848941 630526516 462662019 181023416 662600559 292421231 671511563 122914661 894447533 7123890 355709578 778755975 139890291 313252260 577813907 843280925 510411049 600825948 17098021 134942005 682569944 90476235 955041502 829953834 312630547 810139352 656193820 674087879 568576222 539767328 485136145 410975345 336067118 773825746 555476642 214434487 879651763 171116205 960280996 955798509 451787308 376076088 678389457 255992329 459689362 756241539 369107226 230560640 504297235 810677316 736108697 287776686 774876316 647398514 654542494 663870997 497390919 905927076 200306825 597447895 894677703 245634391 869181040 24240527 770103972 150529315 956666679 231922426 149794763 165198633 368007749 548331797 877622170 775547792 195321862 740275580 19959579 59210469 180428612 355513224 705752904 523968919 652580488 733678574 74748794 442136602 692329018 375004807 766401087 957135501 762451255 806325736 557584294 610612420 453354154 525523883 529107607 281076974 275308746 206165188 585628137 196579283 699044162 254702821 258029651 634782196 688727001 768992547 795201927 244625621 501913463 197819653 183339683 338975773 884016241 750596181 967861968 862027228 481303360 605873901 917447509 245659217 655207724 36033592 40926898 20611110 999781592 173712922 480042915 864048705 365477146 596738191 857241582 718174301 455849732 290079118 315534478 3103994 692897765 970849737 444628746 527499946 622442001 120830544 638936933 820389593 232959341 112046120 730821504 921194850 908408828 272238849 321324949 922338783 967731550 322767546 818501885 965263669 738512695 608212407 682609496 163901215 78833739 252059665 497546959 227400393 111439995 586271160 745365377 580285371 528809206 597657789 680650303 43607350 740305890 66034581 342285387 813079333 37643685 700376262 585007913 954740311 466335969 323845054 565573418 989384815 126399783 709428562 498093725 847881923 765259235 146053969 244404662 234823300 664340067 100166998 660462426 509175722 70386368 777293941 731108264 495153614 772125835 51029038 231430635 83450981 221064799 124858181 299192235 23835794 97299907 50658832 671382279 728138231 791026996 213228244 580529419 226936263 621887684 163008019 536040416 830742764 475868187 17278541 177887722 784335826 102736029 699679964 225171460 80461167 75415457 748017070 885220504 621729209 771974544 579204248 667524715 171823116 613031974 731167495 286318178 405818612 811215642 856338308 827348083 805140337 245607139 645051569 205977596 537921099 447597004 703597959 142290270 802007547 675204283 828216217 249910052 857597567 122824313 214198657 872824982 494401340 246868191 781133026 827143497 24342108 369444050 543188689 305444879 569833273 82560529 103658063 878989587 584853916 843095290 484040929 997360848 519054486 94997498 858662260 959566126 846288066 690710478 448053148 342862747 946578889 686336455 735072914 553874863 472189248 89480196 824067493 311147232 522594685 418935523 908759391 203515007 192840033 81568054 212639932 684363774 454729696 892349512 874293967 45627692 977945633 619662698 862764521 324608273 837206824 847026990 370876636 775418282 408641968 496498917 178176967 959246351 375950977 289379672 212091670 477377116 467727179 848367474 987623599 186708461 329658378 695346536 916869854 182959660 883765083 372719092 461862050 734503146 342264322 872001007 188248274 224899037 202452206 626491774 809215458 201121142 425030911 463089215 299928180 729538813 556075081 80787682 94957162 392588708 451296725 780342156 462231560 859074620 250719649 372640233 959713985 547812919 255661794 585016916 213820969 434616592 158748714 578126938 381843218 763927051 616066295 581844033 642132445 130389852 721493276 90720997 431733444 991323385 155279388 859934851 24188344 129196682 383147997 741641282 625024514 238554297 278873806 409604009 384098912 840336762 126790865 568918678 323165349 316050603 127286473 198102440 847480642 97858868 604068453 503284336 151558413 61566033 549287864 160040139 578918148 377523787 825278998 91876299 810968490 899439768 456709123 26990744 78103620 769234735 676750747 754475792 210977010 712154298 601805758 589184684 869024350 340279443 902936822 211299348 274274091 124475639 282298727 770070968 995441880 167154033 145111046 640090032 804955019 432972602 41642707 556696858 331333309 372003086 77676946 498643976 894925830 685840559 660337715 812469511 758331755 306197957 684645919 652861255 443795449 390880677 614016127 708140982 203001615 866632193 104173175 381353680 362609411 686815653 335069631 476305207 832232441 255044664 976653293 660990995 587793343 325557965 757666895 182040527 468034893 315667052 337737760 717932854 900140676 961084854 565187145 713523614 92083209 590746019 341233524 551343249 853781365 406119216 756388484 77135301 4894791 507697999 352840075 482663240 265667628 606939215 831488603 187423666 925598066 632038799 526393576 568557394 655965111 332683296 704873930 88395999 469621207 250105568 207693170 798593085 161624544 19192128 163310620 245372805 260588703 401944476 874265589 574455748 299068206 865508914 373632734 753936716 338088824 156398362 692506828 866498983 738649660 28553079 103368297 870057918 293845667 467778133 576231621 102265936 825556774 671593457 285775604 468958875 866628291 958022902 763517614 644965779 940367724 948240098 549138693 757885221 146792003 841902402 647898417 421533974 289424996 717945950 834518408 806286705 695027802 308766537 904967714 341538906 896192338 116856122 634781755 584581034 68974672 814278103 477700366 753927476 2940164 231264116 106089309 498333282 990406456 954820851 579695935 131528740 23437592 411639024 848636373 572223958 964392005 185853380 258107098 490417132 700042083 445923018 230362921 349863092 418426341 671344988 248954072 228885553 147998307 168685796 530647769 566462959 943629067 294930956 89195526 433495110 526718972 888983836 472465866 280305811 535756513 637108142 269467741 698621745 560174621 352426207 696784667 281987386 573836277 964934389 245731253 972135800 420351067 365130408 86504440 989793293 293351963 226793959 977329332 343345494 497528328 903847934 431660229 798607356 61384785 677126603 40262412 838286823 415421413 960352314 229210221 4678938 552568053 54939472 101766006 275001593 589059347 298868951 599306600 734966287 17926861 375902241 925493263 695617111 498568441 301760228 886541578 312937750 556629397 127654326 981634722 508697548 443575323 155507126 770347375 589330287 31756551 993874768 207667023 4595754 685694644 919394541 599841645 573011 778622001 8579706 787100858 577892509 446125918 836259614 871236766 251265256 23188670 293475352 337294883 706715833 373125933 479418631 951887756 468797656 911265472 275987718 271015167 144367536 565556590 881387545 872560154 872907206 150371992 568848203 643639824 116748303 306162629 276883904 452980253 525459221 6217273 983101386 607698896 132515123 870877311 267112333 675940965 359287523 442482585 971629604 879556159 37744673 995077751 70535696 170905387 31569274 518570848 905290901 795957641 688197756 299105188 183409841 86985411 699737294 676539756 755658859 450374241 179665203 458360142 475269459 393552764 613537232 374874182 841976397 574357227 905984161 475583071 37729892 763671846 196071895 845055432 148255190 822703705 72872738 215883607 273296298 270893006 698943014 658333620 156309144 787976068 49203847 788808182 726738265 500312578 939483064 448136495 915562910 738602015 943901797 183058215 874217012 979230492 560448844 852999036 927164187 1471117 669919250 198556690 244828554 842637085 405416338 150885609 963579076 435627922 352834067 301432571 208084428 410577097 44481469 15078414 445629508 395892134 611375374 749559368 434641584 568188393 699440595 879658749 224265702 906731591 567426858 966800654 587162038 593327267 415856698 588866549 450528048 131642643 835597631 303147174 709179497 20830368 363919392 203477487 151872742 733919031 278628550 862980726 289706965 195398651 409090472 145307817 289815743 910200962 377434803 66109503 390196760 813198729 754103772 939740167 467898282 426172203 547294611 796680851 909942412 616122905 636345636 113434064 9719204 845093050 855661238 929346717 501904346 683793351 248479670 378726434 65298580 212256527 932420895 19990181 919137717 840824951 834383207 113231456 70750194 105500377 643014838 678717225 297732412 476059496 426400862 914205161 582515126 42719224 120814262 438953670 672116951 997914356 462161239 391588267 996627335 484073325 197120242 292553557 720207999 958844453 185142030 496931257 711838432 958053594 112261980 920295554 733901376 544568294 973662394 231898776 762988011 179061055 44186808 904223741 774728652 477514027 305432573 329412408 481020588 25921122 275175403 725412570 311317615 871164883 517132028 988219166 169561795 226247899 921444213 479123950 224843143 237425052 62153092 975865554 890114083 430185523 297365096 762047160 702117007 868832278 102938156 933431805 39396128 204014084 22507484 158099500 293722879 895981251 165341382 555252834 626045342 399035681 724132840 217277213 274016624 435907628 317724363 740966588 597489710 543790141 314739062 750301360 271290084 900914312 83177446 155507606 179499100 802203927 795702479 392290997 315561578 454415248 842544687 842866259 534799863 75245320 808936542 810642648 941900875 60605196 998639670 113963362 144667001 23583105 521238970 802638190 773233242 135613820 798310416 88742965 501033056 224512009 300353883 373128222 585018535 462906400 761226217 686863608 235264914 900356405 507112474 35475705 526714227 536158078 425767466 241875599 24383183 319373462 873540071 82068103 304312320 991288526 845529476 563793779 988479163 830061783 962839981 24308380 247494947 668894276 544315073 589177738 153428931 571714116 443365109 658158513 393819252 996827471 320292633 917751599 989403379 850115832 829304257 166002129 933444439 968922367 618491581 601600308 20942728 96507670 600339656 470123884 262404345 30596822 397807533 873717024 30485503 71355562 340102553 307250900 808764096 750699806 600802604 539698336 202127514 600321882 177119705 358734323 464380792 633678073 851048482 551119041 513004181 442545784 755508670 953885130 253598531 379186536 264404519 354268948 772844793 238266446 282580314 560583488 54391924 136076196 741541159 839488025 48189177 873199699 726243078 275262065 522613659 819529063 531763172 943580616 800598708 602877611 90448163 226171354 950932651 437448386 724409229 773607073 378598738 883912463 258506524 59886899 461331236 958646019 978279271 763684292 254960991 908485587 854057645 867996627 844252113 671324061 630252409 28575213 853241355 376705885 366944191 873460590 793543468 978418597 237536722 610351643 619729787 452323258 337623350 575198932 858971539 942544879 154059650 164377251 427543261 387269211 126544260 308928975 507732354 920909994 977945730 455808822 454117421 441228215 193710517 213323641 306445833 706126856 780298694 740339560 338887253 385679579 216718028 513115051 47536382 172534050 581179655 628820540 754463315 868870944 456519914 504402208 215662916 640007336 493566158 972385729 299872601 114381647 432883619 395846841 541590663 69046583 287228127 584397912 582951959 671446284 832902473 111431038 500141869 16904093 355938704 870518112 65573617 961151717 517564731 798986172 194564283 594812855 584335504 223838256 25670118 221460329 674306984 757791509 338695815 943644326 360960311 362762833 936227478 741368534 296838820 303157359 14299218 35355542 410503815 883878077 963900313 996696093 438246480 898549992 608411416 125079623 359457229 519081704 937353734 627852918 945569798 516724649 141965524 343886049 856439734 156749454 128068452 784047047 193881629 330796269 859173552 937059604 170449454 589385948 794653493 522657531 705073581 540369820 634537582 190862849 123483408 514797690 350582429 131332210 766193738 245976035 825196006 589352242 747784226 69731524 959006157 681760174 614374919 451371291 744729776 50611218 826820447 238782715 427744534 475448074 13839559 37224429 802646507 596341845 458771313 567611821 508478395 371424037 723897429 987499419 281654460 760950783 343113947 49911806 456542612 144856807 934996321 327026595 207067371 753657960 723402811 280463283 508232176 180673703 931500148 680088647 909546380 620325507 332473973 586655868 640891981 804404956 894074502 344944786 930444729 56699185 760352685 954356030 699424118 189674823 149043476 727849640 178741067 61504527 793695820 902913100 895092444 845958005 10408658 587129090 873196171 912828021 350612052 428233406 916504210 38966266 826445950 561787155 461437020 354514491 938718549 58395042 443988458 753855421 824070893 693571956 34405560 314815413 151836540 576783290 632000332 735686155 311629155 578419000 769520295 199901599 457953580 502389425 726914461 703223642 634818564 818325476 60366140 377784411 738237086 223067330 859354588 581951896 676309277 740068581 368738952 685898148 1712038 132675261 342331932 371588180 478216800 716146747 472980287 646997219 129632925 212521675 85969948 450574447 291203917 606760961 392456077 405998406 810294810 866730676 791040008 186277380 980259800 583718504 63806972 937588190 90541510 988231782 959038133 925103293 670472563 824739893 298938613 23399101 102374515 950414446 756003991 526243609 130571551 759487494 622117176 821226282 41600780 668254009 622097120 828123131 623272425 882306814 582217068 7954058 413727888 512079444 853730510 106757994 965139170 227384856 348214910 901552536 383496090 2613475 267408051 636466279 848501088 863584757 71870563 453822597 979177007 189150992 744489932 484431163 269475865 648169348 182565280 188269511 941286825 92042835 502515886 69669243 685267986 643236518 369258848 509116105 482576860 189687602 899021732 663524033 45675484 62504013 923182427 185341493 67156489 164928942 691716684 950247539 409313776 894941341 304385999 328370857 744633030 293801138 140095634 321404397 506513168 475045904 826973376 223858885 430077468 225716273 565097964 308795288 29528501 42509959 710605498 954638026 688913765 304015920 115352548 715491736 741126354 771080743 883993913 429857607 783569760 936301802 191668828 681442824 912084099 980067749 767981461 472825670 26642717 948674691 867346306 241545582 798613598 897233675 601167488 762114104 171162987 509815862 861555683 773716348 804464988 990088129 643880413 655146091 882473366 454721032 401683271 8842081 682318226 439395466 591989262 737805093 402521670 321612700 579461115 611295974 854237311 31832700 791788342 279096841 193993445 587970012 620143425 196748543 756088263 557369960 695111242 158654428 210713324 308991778 214865587 251894542 876204802 441325018 174414562 342881552 494896879 277391549 858873415 934010525 435606644 780127719 946631880 101724410 684911172 849568602 378020624 315829981 988738679 321991127 379405863 411365215 415373657 966949215 827028838 347677764 443854705 30966606 471573776 835729661 141389603 915984046 25778090 380446543 835020043 368897017 972708645 163823631 996295445 602804757 87573443 17433660 274323607 251951500 321599500 105364466 444541473 997334803 522218918 782173712 463630300 143642288 901223130 644974714 848397874 946901137 213905772 391600171 530425056 804172793 222341406 774785849 609765362 48723763 924421266 620614070 648360121 606532350 256082459 920568527 33963370 468629711 211142853 284430186 255807049 208978274 445626613 463713282 684711786 567554756 249224145 380035800 591701631 316266417 232980280 458403473 811338940 772024397 707445810 298917880 322692073 411154963 148123022 417567461 177571798 954143261 25628238 721799185 736725865 914345912 844651232 32188959 692963673 971443773 950354546 381942958 145562613 765754631 472081841 973089894 731320225 483212144 180816862 521159640 611840678 578537764 721987330 696278606 647796434 13120342 92393291 993273710 972299809 560947931 760895122 855710309 99560082 890785227 739651072 154756598 512788445 348885761 831942161 415178593 339819187 78547664 455610540 159359189 558085160 387459488 621575323 151764827 861349509 392718240 925854554 490817450 691680044 754560893 825141791 549349362 902114821 358779006 832768103 904671885 641238457 447448083 873490679 96907379 616447017 386680960 591729749 862882537 145326516 694304439 911527294 718711252 924918386 856638045 214659152 601556020 795053946 338974878 718041563 156534638 191106408 161665775 745369206 265479517 213497952 486400382 968456271 622648377 15487839 632786942 639993714 596013708 343339648 61541579 21550474 579094376 935252533 644964912 847030945 266603830 104117906 841743460 443698709 255527108 628907556 685114116 820600668 619696728 917741193 729878181 354146108 504545304 205669578 990056780 303405141 938953894 626932988 695837048 424609136 476443331 648352116 513479252 606190474 215272508 637940148 356402553 369172688 924100108 14590537 237642616 352756613 390222727 796886759 311531402 223754373 898571494 812565981 841346316 643457175 678015245 588516336 78789924 653372180 948277640 882842186 186603163 172380275 572832966 650302222 76460772 213072708 423300724 714155991 180134005 711523132 372132760 366281432 107427973 588769463 301643521 702763618 210294399 848647204 111809850 565473670 533332276 248693147 487786743 533616322 845146615 324925256 542529816 484603258 180513148 735767146 284947789 629154280 539026220 598481549 739991772 740580455 95083190 344585361 752404571 540799724 226062587 525386295 275731294 526309016 916201506 794204635 797398846 813950519 64378166 274743064 538575888 872511927 930542688 789380621 415450819 402630250 749945655 203936806 82477646 245194467 637258786 67730988 621727482 642772747 860966132 949346408 76409576 621978278 25022230 387649613 618421000 433662665 662527276 432947565 577130380 784655684 619278843 425659396 548577051 925691501 163028002 175930236 217877857 676674904 307677520 866341760 989413686 848367373 877094917 613338925 683070950 3610116 730041057 322639904 498265329 674520747 832350520 152612955 829238481 861609331 961113416 196638889 829557620 14186880 675698537 430375105 989085269 536238827 448420784 690732212 516846810 853220103 834417108 81577070 530693715 718237055 91856945 820581199 109729051 395356739 539400244 359250188 509761132 591468787 566358321 21793794 905206189 280423482 963592572 325588831 295293728 593038587 740430679 933206262 993159170 164467758 736100081 647664153 953428236 413182218 207535503 351584276 506042526 515712765 156174803 183643903 942141960 359573263 223732148 314927219 830363337 986463328 830299594 539944574 488261883 573193782 705953789 284865209 547698405 490591331 560430382 402899788 289077614 226699085 366692553 740669072 62333395 77141907 602989503 211983235 158416225 542168661 466568217 718365518 842745430 578844874 541550004 826017108 49567722 874137974 941908503 196497815 312636009 420386161 500039750 436291413 986349567 230293175 353212247 481899137 516605182 893798737 957914406 781482133 661948843 970432550 737316207 583219724 670469442 725274845 703655154 218056191 196333592 756377081 484477405 308566520 370917683 455880296 707363382 381655951 421573133 820843986 31211528 174149001 557225241 797295206 457385060 799345230 384634116 617575150 936308373 151004363 525214114 254056471 354157651 540192285 649406975 93813499 616464156 181510559 364055377 50934602 313762412 584720836 392580070 739731853 544873206 959096030 933670066 450435395 717337487 495579139 163328466 341529587 610223972 763154392 925616459 336069834 527982975 702010621 330567595 821488804 239238100 195357458 331049614 381955306 789384738 582752916 301047399 988729878 538118775 883311370 584666604 819748986 545179124 898939896 105545555 301331819 270387129 886527864 844981500 623588111 636630614 449724310 176982197 473250071 47412819 928359700 325188941 947382094 263093685 949147383 3255005 621118212 300302386 835209664 388363781 506593265 945766459 888902315 764187849 910355448 557947316 629775850 41475841 47177819 739042991 422215228 773076655 878920776 539701078 405560099 147266471 521491297 887421068 426378372 832289094 631271541 291272691 106359277 21581346 407428707 778900600 215029073 83831423 853586643 971626431 863986712 168989650 314777404 313380744 206698918 641959938 431974242 481836251 430280264 794381927 104369066 809622893 36801355 508184043 219332889 170065589 299487718 251077102 344818251 3967687 81308292 564175244 95602099 128045463 20779888 274369352 710034616 673785089 824682325 751973445 774418137 616744154 444721946 411058367 250891189 124509982 383832790 667068426 829585694 695651504 795251692 668374858 916655739 675392904 295492484 832836742 441375226 407166032 573249199 51288032 384077518 367434902 509589521 361575615 934268825 394865838 102178437 697529132 222718813 20377851 825707205 633983305 227892629 257417293 153945544 529829259 81974545 969973833 685598021 173009804 549688380 161285276 201100083 539856624 967272472 769146264 818724813 168041491 697063119 678601174 742487365 994994080 628599674 278636418 848592909 874276435 300032089 855566728 711140046 22646776 362566892 429440731 806223728 701228363 373094472 51374671 866035047 60586436 226909694 470881910 466426966 134686852 124152925 294295220 765680115 761595453 685498603 394121403 908952223 887189128 208293556 977683282 521967993 965003960 373306690 66440457 875480757 661916870 69059839 701746183 882614667 304786298 574638800 260630926 908905754 522665773 892048197 573117517 550970670 857264012 967032722 559790000 568828146 504785989 121367604 461216441 264878308 813688902 211740190 235701326 108068857 31288682 238153630 988518720 554259412 436226310 72164611 373063525 917188799 35143073 134038474 303938926 715855342 456346163 755649720 436955633 699908586 393316150 724578609 721622801 272729043 344665875 238298536 311667479 843970076 283152800 763252767 210876058 577973531 314041783 721488573 407910549 942970776 414475064 478458461 773549950 414437255 742775997 857776065 123530845 898241343 899800187 137415766 78587429 675217312 826299574 959825366 902676862 504089169 369070507 34541369 874173082 976250147 249308005 936911936 679265493 107218345 430097541 524140294 428708678 151404113 18405526 210871126 583008621 160835793 256631115 154446895 723854102 885720827 638428904 224851513 110437971 801528398 835587938 219941027 41293116 921670838 29944046 815846449 450743250 58407086 885765258 418675260 679755147 343468778 117469806 59201520 285976687 510460626 112501706 631809010 551326982 13565648 535282872 825385943 819035720 271865683 94054037 577799323 753945164 191075965 536381125 442238473 970901855 316723850 477769511 344453441 372813111 571742752 209414909 318907179 744556862 509174023 94138943 735018563 290632108 60404698 429034267 987703597 373737538 34310176 657855684 701109705 247139448 551580425 472258070 997100141 446850808 522862783 176584317 819432588 423515278 4756529 509488924 737417526 467783116 301946439 617527172 443005718 995696117 608596729 726731246 310586191 980256404 23385210 653299800 928417599 806599242 698800216 503951444 455213842 347843426 589688284 618209191 985453754 880325838 961277979 881947833 402886004 706070689 612892994 709101507 118930439 744156986 422669120 12456124 184605582 822399603 166495232 694752180 163834408 693555212 459261469 467304560 217287340 144477156 312285551 894392025 684934369 537611159 407571578 33319325 824321214 678643932 106587271 212724750 301643212 937079072 624438379 151413297 165049544 995913886 522687346 380848225 13114246 189608344 84211698 399872658 260159447 692616300 356454793 594677629 975523195 621847140 764618597 56224586 631638950 918425605 349605410 116868043 532065654 9602140 201718274 882287307 512075691 506017316 206768132 501544881 946585412 895893918 682891053 666812713 335299524 716513805 303153010 856832692 339516039 790567498 491396118 713360858 104859383 762612304 271698208 60982208 9414527 918473225 568143865 169989193 367230420 949445255 875410657 533701186 738349398 278167788 72485842 472132014 918845627 627388873 221367622 334497469 932224217 642421515 422282164 996611202 476772064 141192412 530219665 649698308 32088824 108037198 861179070 333520249 626551830 846359498 660019364 257674560 945516863 516848425 266963837 848381754 467976871 666914670 355147586 921222867 392544588 385581384 284880635 144889359 193871 539456307 28130606 203289075 774557401 834573399 448079960 800581083 466137179 79560373 813261396 32629023 931171025 556463369 516047066 828676452 90837798 321491668 403102988 7920430 126787853 447611162 608644599 648587916 917967012 949373278 676142582 720504309 8065110 985775293 271976937 109634174 871577958 973082006 50063702 175005683 99068052 178734085 812048092 663178660 729073866 113339695 171113952 565989612 874020719 807020457 351421096 211940529 11437566 743075209 682444531 670400098 166496563 580136398 53434636 766509370 764720971 267766794 359218089 51727802 860989111 877704 310319215 462993610 979845077 997312112 386863927 674935866 964919595 997594820 400069958 898675578 78492899 544586130 734567537 876177828 848463241 888272913 306640225 339235972 540941837 794005494 943261358 993240661 658553272 662260407 75755305 997985534 555083188 960035213 895109981 947695671 660189187 891441654 961637077 988091578 356781627 491660281 530070534 550589901 266163961 291754241 544486007 982780057 501762129 671720449 497611658 745816645 936296203 957062603 326827534 545925666 74136640 118694868 34721659 274536654 862443135 962599581 533571116 581927593 950802362 972412231 495532149 987718221 109745164 851330070 315501871 878377412 272162376 771204614 719690711 854539888 842996378 962934729 389882181 623272119 448959877 757042212 681605545 976788075 163352721 460928969 233259994 749614036 285133576 752133949 669149048 725690484 696569346 988944489 486042386 880331650 877232382 884348951 701168546 789196382 292020195 706660904 231227649 515862538 754820470 901049478 816353094 816767336 804777234 926241534 79949194 443111141 746917764 903561519 423784071 934774375 400785333 623269288 63122593 302096796 739843161 902323807 279205099 574812187 303389970 550777136 704602273 927347160 698866208 976621737 918565775 977427622 210914433 385698946 204070579 616329953 777310624 894552438 924957497 988719384 138610875 275681428 708996291 875079641 682881571 967688343 79159957 373390401 852621710 918143757 105617020 114892847 197383088 634277022 197849232 539200898 697249561 728717759 277816419 999477515 647872997 740070927 722729010 805365925 110506559 474943692 244719516 862946321 518029868 604191718 898331009 935940661 775695328 947515919 617438474 703461415 204695335 986093022 71479764 214245890 694892248 741151159 575417198 742600202 343707308 725325816 464889744 612879650 909499432 932631846 572278189 681978015 705906500 889134517 731787769 916949539 809939094 860759693 93292199 106278782 230829507 606237466 364495748 627135002 565979041 982637861 146708032 989047919 420853932 492314141 647847949 856026733 682865628 996391047 222809518 690910625 544310950 583567047 349685138 746110312 838189255 939504363 426725528 542051344 11037301 376560368 911120681 950622590 85625228 696610501 772713754 800958638 682983728 900736205 123968096 637647930 530631303 735826585 796963124 900995196 717080668 879789898 119049349 723898714 694263422 830795892 490226897 938909148 511219745 855296463 773126811 939432238 957755242 996968119 527021463 664606794 694734602 872475426 492630450 669838925 465676472 496829039 580320327 941398243 621184115 980677098 890368835 893504220 871701789 970040638 695031666 984735251 120076403 382856160 810719150 819262303 846088894 926078729 31607261 128055944 360748862 660958113 181695021 823016650 671260932 771878969 865310807 910271709 292646756 353048025 220991269 963823786 565634906 743606386 685638532 718556128 328458845 898661740 89845286 373954262 306848757 739002175 301218234 719150107 84202987 934900637 393139938 464409060 779761348 951968385 523114361 598649426 902949089 955732588 886908589 941872729 256511008 605411152 212533499 776090572 340385656 583656227 673457915 893134417 679016087 990594362 273030444 477852388 120127983 703685716 68430974 983757397 157769938 860620093 601364707 893110904 884489954 979464502 720550214 889095333 843458869 874213937 595438303 765604209 930784239 961423419 978971869 986439657 911357735 954106621 180436309 437332768 158832344 529148640 609766243 928821415 537166852 909763456 645487699 901035310 736641324 750627817 288000837 500101818 422193271 682368448 688732457 697973006 123722151 290532717 801585028 851183002 34941002 934204894 366374393 915586757 904728463 926516253 715591289 904028510 278632087 825609257 438407596 702030705 5195827 530746180 292323480 892618082 747331997 825388502 51811850 426675074 347507974 993919316 373393489 798659997 119965566 678572943 754615603 776059451 359243565 542455251 485600805 963263867 247237930 892939264 790520602 913812310 952043233 958225561 470791936 977575958 622541074 802389303 223372563 899511413 997599882 999296469 839920271 906029838 325325579 777882524 396364224 651384550 427233337 831503143 41780492 889566244 572103491 606988347 781927074 839874330 418286878 967967488 82294461 284443167 718549948 983426791 531784290 665509840 247184653 997825473 238567899 853710883 877351045 966423950 483338257 587838461 690377324 720471605 869550924 979195301 710594980 824414507 849289949 932763781 688385250 792055730 564041623 879082681 324686080 901323729 789076957 952890941 112545983 245897130 334695112 622113811 866974577 896019760 738149865 961349231 472696079 539208872 950236503 950731250 227706190 548436586 506045139 598061473 29182548 703283003 316294649 633980662 722725391 936911358 194817775 749818827 270641256 689908142 434526595 949130999 402892572 562099542 826683332 984681530 578610552 738226106 955091427 976174722 31137987 488304410 724258705 820049343 669465248 995468778 83537349 136324816 181609931 267427395 908157140 963773347 44812330 53751743 727477145 937907456 237669813 874516137 881178115 964367985 52355346 452718782 590347104 598055820 300042107 897646826 200470480 581001184 343854973 586149981 636351139 862229880 569311712 983838210 134648143 525274003 491868311 530318928 819124599 915097285 238727523 717998057 511261457 578162108 204435157 508811277 153101764 643080491 282236399 572043428 169856683 401784583 899927955 915210630 889105672 895717977 686622432 706110727 413176794 727174092 572833509 712020475 221919344 490750067 585128527 658223013 227367405 974078030 895999437 946254619 570914888 724520826 996867372 999383748 849985943 936256897 289613941 402292362 629169412 787301570 29860952 377238542 851432630 895164887 586380246 987146598 33280074 104900100 689671988 755463214 737072249 756141145 971133935 979866386 817594760 993758638 20163177 345772905 307985091 783113122 906252112 978664862 714214831 773708607 355592655 558696440 133210865 176376727 152545685 885129560 872162301 936258241 408287080 855913647 930938505 959554784 204801938 619010854 428028044 996764650 763707236 845826572 580379820 979410170 602391836 694482499 962255528 987828044 465773869 748083717 557125813 964374038 876086611 877753476 942529600 960166192 960435393 984152857 111781684 380267937 763938935 936504878 457315284 768750121 12997850 571223301 84000455 688757522 229931632 337971844 812249718 813941941 921260633 948160338 650862241 935686954 397597681 710010447 507883321 720088603 622891379 879161361 483907916 504346205 66600870 781253381 809004288 941845972 390721603 722395444 258804349 538097278 866404457 902687273 197037154 277504304 519904924 544390568 865303819 896867558 741520532 900168438 725488332 940641068 17211120 350478853 831752650 834141589 765682310 880654562 650988463 854210980 103324088 657698483 263422414 848914602 511694679 936508190 950122810 973605817 930956535 932136938 754243405 852709751 507275660 595155286 811314066 960739992 336808858 668560504 782675991 816828713 532530745 723175822 587045767 834274109 50883591 209454870 535359908 947333823 267918232 816265858 962713539 982721865 707329997 944823668 580714201 994722429 883429898 956808896 23202043 366583804 948159589 991938492 160796015 968941399 676191216 851881273 16758577 373244670 44147125 949267071 334317830 478415675 110437747 339139461 964765495 989812060 996449536 997590796 919538659 942460177 370155164 664163820 752085176 841879244 426777980 985829453 810826410 823310274 67228163 585319999 919778886 980633540 359327406 923967419 874048664 978004317 655556457 762058957 419205112 720949768 160901410 531309807 192388125 617050152 701366567 977719139 637472496 647139566 374713205 862876465 340215132 722919300 806516880 971985724 947389005 982789269 687473051 960871625 599435536 940628489 581706195 886938001 918386719 982625635 230692873 798760119 249362328 270750317 559427048 576287270 32744029 502137552 176444854 608761684 343824712 976209310 406751312 602853613 159233964 422614274 962874972 977742507 727622080 853943491 196524444 317265898 164654122 335533615 888045648 992460636 496515691 965676882 871469307 975761536 175532783 478974404 704848932 955261909 445025539 767967645 409894284 861331983 465887960 770909220 496053790 733042634 508577367 692067752 591244828 630125601 536119279 584203059 395176269 931971693 892984048 948386298 366104643 442354165 672919643 762087047 461704698 518380058 299488347 864447556 743162249 962964140 522301105 697590830 604141082 890141977 621634435 897157328 841175509 895592145 928093874 962952415 529174593 778326057 345112644 722307969 799486635 959570128 936978743 980302504 274368966 768728533 396404764 412712376 877433085 939690211 465452292 491770792 635204182 814284362 977035981 987356227 365518665 860053676 817265379 863570295 24619774 407581891 293062032 687371750 72640412 612128270 35549945 367041644 432037659 921119940 911936922 926102656 68485005 973583969 510965181 633591783 688866814 929434806 995878872 996639443 634906438 684533395 690642170 890594774 51777086 481652417 206940283 941292854 484865219 677738214 781769653 910708762 236359457 934133616 958832090 971296427 828963649 895690285 532496193 803671498 309836786 377768599 778345591 935536484 109918788 323087879 666177602 924662057 814371404 834431567 890992463 984642568 416679269 492125992 781311003 977067633 648859149 656975253 651345359 819053722 343650847 541506801 539914574 798130280 417855882 829945624 108198762 322562864 211110597 926696310 25436327 434516903 109447976 895677259 828558612 855149428 368650828 674258051 411119763 489357044 655481821 786189025 620074487 823849612 867772298 909415650 459715154 728073410 221496171 672521928 820543399 834019471 759461427 871500749 75696238 928531539 38824225 286813978 452022335 617268527 868865604 975492464 371605457 985980379 872979575 960104807 451916997 753011335 64809336 552748231 287844840 714553168 430438115 996859655 551031968 640687425 335375601 466799111 566671264 685502752 829323567 962257512 600106971 662575930 617888280 708438790 744560636 770110721 937675025 974271949 241601365 285074571 904330766 971818358 960768863 996373984 705128210 950039275 422296641 920409319 873278111 885448047 808248864 825948484 290902914 560464422 947850760 992127972 625276954 795622543 756100925 846887302 372399731 621109907 704882973 891174347 787385570 996784593 300007574 325483468 271069523 351731359 20780777 603132199 769426807 961267496 350003423 723316322 832604021 835014086 402244626 740678276 932691844 960538136 357393271 435357119 445605698 871910050 54871973 510303284 699280443 720644636 192496689 508132827 927631480 967213196 655122931 662003970 363591159 880379344 947985981 977713627 386221845 601604445 425368082 714089971 664402349 969523523 118148391 294010403 513116899 881524164 351776918 770590021 957775702 973243951 211804917 236560040 324936793 570828693 222692402 723228231 505638581 579645437 246077415 671350962 834256038 838968647 438199116 482515543 811424010 987329077 52376012 439579049 896881852 965310047 729161678 776265348 826405224 937293059 249299137 916883355 422373024 712626393 587790743 757392264 251676910 913271208 133056131 715854667 89550682 531973375 167901960 752219503 442471024 560288660 515154946 955714567 832279179 934183982 969067330 999256039 330753768 536394815 712572800 796031613 990583518 998362130 388624808 399659117 480770727 619366007 729615856 999981592 813250322 930714460 909972692 982482453 398206054 649646616 568577246 802029966 647405629 662614646 304232175 451019171 269047201 803892493 547914886 829839266 182350243 424833062 618457717 719786059 339882943 789988657 948388546 979010036 175780153 596208293 566346404 921003618 666549167 742829042 560807204 618475615 582449530 725292409 318044386 928357641 121386429 659950066 387678613 825780553 427137515 870549223 526567640 640633942 580039582 890930001 251233075 456576110 597763296 832773401 770388621 982207112 955328885 982149737 3911846 642196508 524599525 738052286 646026174 708253334 149316630 181647152 371517202 909644870 37251965 917074066 112815780 188669455 582646271 840068302 43791024 52049364 366128306 400044077 54368367 436641016 123871638 932558701 907290154 921682411 198717625 205497989 726502442 759165262 663756889 986892796 986379574 990798250 458555422 724865082 162516248 877894575 206155863 893430912 369630301 627707481 618087666 965577951 817778569 937049579 766305379 928195222 70492560 660745818 172709475 292926212 849179046 913695102 243525607 677030206 493817275 744594407 114299266 946800961 551121358 798387734 617133440 623939682 13760785 156775883 882986540 994978873 253599868 889960255 564107710 624006711 341323160 429413662 677789049 884408290 214607386 637441960 805433080 994336089 833626612 885912187 570212329 960788508 126767723 996509031 151705222 380769297 260529073 472885092 636077977 953010363 29531916 453700975 531473035 626580572 898339786 941730506 107663103 914291000 326171005 962732074 698767937 763291678 458742541 702999098 832805699 926286346 136225786 246316786 837323119 960099444 106191283 641783551 888926201 948521530 318451635 836541942 235369559 452392872 484317313 511628066 237586589 548187986 65720002 804942240 331354948 368317060 985721813 988188117 695659845 763853582 652828364 796392185 227380228 349636950 873811342 880091341 798197735 878773092 706043090 948344897 739602070 758414258 805504527 868405532 382844165 948658243 3206734 679707574 930283985 975466414 204703145 699185719 351416216 809869766 306859857 923979239 723104378 836251093 274264315 432053174 926539767 939500856 818563956 826282742 43879340 117978623 387420129 798380845 740480452 826975436 767926502 806164291 322186297 444669572 39748668 883240777 959426447 988778414 680072767 806638199 425334111 433720668 889009085 931353027 601281129 720898100 942001958 979777835 85615733 360691403 199850392 234535968 159813165 842908785 731734082 762003087 829490701 880033060 810970628 973867736 504378137 732318864 929191725 999255336 542586782 771799477 403300883 777526449 423347083 764340718 115902367 743214367 556413222 775201015 362513059 980613961 394538196 423785747 823212917 991855698 683319003 984645699 90304172 559784470 42434246 262205824 492223202 535315002 684187501 815898929 341806133 956199511 515485391 915305954 974518940 981608359 200097875 304127958 700834922 834042982 394217872 760289714 877587641 905324784 508172185 735490235 566349302 666306581 379822758 678409515 566357000 635203932 754840719 921036130 149528425 982628542 125491258 526106127 260697540 531091320 536285833 925729144 772517283 814492855 330691887 963365903 82331444 342914861 605598791 977921572 828781521 995235910 188518838 890971815 233236224 368971089 198067528 453349223 67660698 236459140 268824543 586337395 169167773 195022151 543923642 770583400 530734841 658694196 842627342 855052729 418143864 673427629 646105125 759295983 383712204 838990370 810110440 847316347 51406679 455208049 258172145 860947682 19185445 27034053 75228865 385108664 521475582 554177178 453340926 871253604 310266765 486006865 682673487 998594629 478994993 899598579 244762512 487654644 493331460 605763176 190396711 985107368 874809313 964870742 370613629 825723850 691310173 901789432 546143666 744207054 283013274 670970169 698875959 899682527 432249713 815453131 900302856 905449291 631652164 750195001 929115634 978387078 614996119 756911435 146472842 700370705 762754450 770762995 545587621 695946312 682807154 705870555 219462506 907404788 932512997 970863698 743152336 887551411 481729221 920507114 767405446 953691792 705602742 951210309 951892315 970868339 62398233 320332568 364490990 999147362 223190426 719223872 647717523 751077495 851496712 871106333 419236306 526163932 102149457 913397161 257597584 753372276 660540364 929336855 800369114 873182003 630327179 831904067 25999768 777659851 268152830 877974236 254448016 446725838 148859486 882024651 722266207 762690254 419757371 599386387 886064778 905343242 445705442 471236347 250545659 796492265 851085868 916239169 411716228 699701198 203393617 332159202 663514621 710026291 703966840 705238517 515913117 701240630 69990532 141116788 754080902 933436314 929904459 982811323 899206782 912659259 66302625 795305428 849393486 888242309 112923173 138528144 8385497 852054049 262788517 862093744 292345923 484366804 877308750 965704508 357859415 676434836 233183242 808374110 409040210 631237054 730978737 921191005 634463708 640682683 982729548 997453367 238719780 489590201 251009342 550588171 376299917 858126994 130483887 220215156 678580419 940148572 671548279 880055260 840704889 930346229 518382003 611996036 283141557 555191022 696094299 870111053 590815524 770421598 475218621 817392985 474497668 507503054 633815287 712997462 577987062 652204776 726038719 952970358 466570747 917885757 178894977 813177942 125518519 752334026 840701623 844090784 228622834 233595293 487286837 502025225 106517768 152368551 368975066 409388073 159006775 740987990 679150378 733979332 674194436 700365676 974816819 987120771 516613637 614663802 8045241 633481591 477839573 921960021 375091833 610041964 890727095 905675487 173387646 489903079 498284471 556341383 921661809 961295161 505684543 568935485 339571808 694588934 64376017 357133977 125624297 952709548 57740398 561806623 215669484 984604466 636881486 932486041 402510706 809543043 451162560 780065032 993896971 999263551 484984485 983134532 205512581 983510566 259023552 627809444 585105398 644261421 57038982 132092241 958636311 985762883 581916528 754821017 712755392 793885631 577373395 892948937 77516348 262164823 913528998 981820945 333413364 878590080 819178002 974124271 813981078 868775519 118642114 898228693 512600594 953121408 557627617 632972444 233883789 433820442 505834718 850169939 780714382 949980680 209530263 377074519 971705655 976164792 509610607 961379459 817294421 895655965 2941825 91750857 867962039 880369418 878316182 914667891 350979468 740258405 953286528 993203390 399010047 402236222 5898935 795666556 559320609 848503949 225148157 358304548 912869711 997844720 859366764 930979823 556097182 591603197 227023134 886109257 902557479 906543245 717406770 999426114 425949636 448886738 379946113 595837510 616579488 889637060 461353717 504028351 980171921 980368377 532460 486727010 963889414 998584174 623317411 632269950 89206033 458204053 182299575 234153755 338355328 517606664 16173109 494610874 538823274 735830127 456001349 666507634 833509501 996782104 756294310 985926131 639067020 725428534 501162559 671293478 802780689 812728812 894109423 937507750 566619875 915544234 873706473 888569034 711851007 999606832 25548347 329064767 804863291 949939852 244234519 763469725 596315205 925575815 180962988 432611718 873979941 900315062 796448248 946180578 790364100 828329966 432941297 947624955 986293586 990898537 67191936 252023820 915861449 974040661 962016410 964014584 587602450 606008616 650354182 912324515 963182713 975914249 481537342 608521169 669785938 670709415 705367535 868442113 115726934 928923627 132713362 252067395 581292938 904972811 541127155 682930283 562394106 945136827 540122429 790258225 449901475 519396110 781824999 907126320 406484040 420541050 318357632 972333775 66140835 154537402 653947775 843328407 529265727 793836523 821423566 866928195 73798010 761370073 191857387 519806065 199353613 450978324 625893609 870756590 673533094 734167550 693775821 936558694 175128704 912871851 813855476 958594344 554698599 614186948 763515084 812115770 752211421 886690637 364315004 820292479 781907271 829321659 555268539 887228731 15064882 863809445 319737311 523118816 744560050 774316496 20379107 384296124 992572012 996756884 791070342 858877684 353146590 428304265 62447947 644187441 197119635 406942122 37865157 518788773 678463528 743347513 750274849 855310488 184861683 993287500 184605945 657911072 620895244 774342641 565753323 734750807 425152283 889984465 914269354 917400321 193277349 860477648 708072889 943872223 813560073 995453988 824316923 883556120 32571080 564698736 635649604 904874269 294056944 476512884 522240310 893182034 900857250 911705506 440068402 807188586 436916179 768706308 927443422 993454333 97023337 146869919 338187049 960778344 924924861 965285960 134593533 609049428 264643424 384129192 447843782 502012486 106946320 108418492 38378088 587090174 330575514 921589076 977198550 978282865 158856787 468072107 396851467 750805582 978650282 978968229 946402885 987465614 25502673 149617519 79941871 122952436 264741473 436872549 219080119 998382960 789329871 913184181 905515794 948527400 777922336 932566632 673780716 780311000 547363388 572687554 506525385 984481328 582227697 601444814 400052806 879737676 426719343 585213371 651162089 931574834 734682142 887646167 715437732 947762891 600398156 814238965 674233322 721187379 144925365 832656823 64616774 87822087 868806067 917111029 38739929 464169676 90379993 91809698 797306768 838728424 776066156 806056313 381045794 432003853 584508235 680761754 852990527 898990954 634401051 656544026 217064502 511311823 292152025 456801240 710390785 884380968 127441097 655891139 729321296 957801384 77688261 486478700 92015873 451098596 826706930 868889451 178309691 368501233 867258507 929673302 723693524 932292495 738645600 806361241 430095394 617805970 196337338 230276031 266847444 493612020 694144779 985159377 478270063 540622402 950086595 964937254 688707405 737112949 331714642 840719571 982472254 985015211 747629708 772267154 854592063 979481662 354681051 700565004 702659595 932054053 475637408 541282055 48679809 966199479 106250644 611511826 224864513 860428446 2505325 727705290 861705274 877429258 963102683 963909933 197503562 424598471 442147734 997520115 404593252 923126991 692877204 870260324 635314999 909502957 174690721 851113950 791163166 960057307 255720046 727216610 851594988 928212954 877735998 885285387 556935864 634548113 403444298 955393304 87098754 917290329 881779824 975960883 54415953 556992299 24994730 815132582 869720181 873441693 284877341 370080581 965423698 973453590 691375762 950912151 88091222 755374111 792986645 949239953 478108660 941121630 514748863 646995834 24252734 873085962 866362081 926726133 796476298 819538760 225090368 757531716 895372417 935979232 940761267 961882712 736399895 995072583 649817170 772709933 901841921 959061177 855020863 947670059 857544311 979763272 679387531 889805113 476684029 958900451 617942670 962777184 961621936 984644318 638626964 739164171 712864181 930164661 2253936 129757493 243316162 476851847 622774995 943213220 708097618 954801899 492458763 933273120 656441485 759121091 987266225 998542888 68554032 571329445 103477884 636210691 416038034 501866373 11645786 849431541 309672532 704834019 838083291 876467435 765580597 992031136 92281925 740237860 85749845 281404708 567533822 786280411 242462058 562150988 630401583 890623746 229111323 841225072 842614649 861069590 9819335 451681244 800442894 827815175 455084645 902941577 927999038 970809187 429611511 587619530 268069543 970930376 601324737 672307263 673925353 892199295 733692383 897144525 746348067 872704295 646477490 693329532 688652337 977090521 693855496 828366263 29091982 446314949 913114893 926989888 272255870 717238125 248172698 929578793 837276227 993684076 546513534 781126505 382204157 744875108 659237699 933990576 266645284 517272660 163327820 237305188 25811761 105595014 213365854 874466278 536874302 643212635 165304993 437697176 72849314 403733584 609208917 961306186 702433370 963777403 405590411 911341396 878500091 954558357 732550165 746886365 255752121 684570891 362329599 501380351 551297952 681100892 437210247 836222503 416420671 658943827 677033782 873452299 741812032 866599276 985634315 991177619 594875441 666902177 858939094 917399874 317678803 512852798 304963757 466873717 116268567 497843012 788806235 851698082 34787581 83459876 609579077 951727748 609632426 985125584 374614322 981152488 521580938 525568350 603917384 831748460 702066065 888350440 113403039 218243103 972562355 973902254 186040159 735490582 238479221 953339978 127036842 318834436 283021510 953700968 781094687 788659209 521668819 916400292 443907929 780440924 197105699 384823752 216898287 238115184 245343380 798554583 948375882 979660258 878765920 912977513 123697365 579218568 775982180 965554649 491817217 813932413 286784257 740072531 756398355 964182742 922171919 949272320 846442380 959478851 935161898 982782356 308312674 633402120 177602339 276380245 140022455 302817216 812583581 925034100 599508568 803057595 88932956 664959640 560836371 748110142 399248322 635264031 823037195 917833733 63902987 416577098 966874902 996800174 560549587 924666850 884721758 992516911 569516966 694518470 48065524 128764016 505598368 933356197 456746985 465673124 774610280 885285826 764920113 886201143 837009265 872151090 225740919 471050201 202191843 683935866 800663216 876570546 24922486 963829554 402280919 456444071 211947734 471882825 477793828 950653263 272663074 850860012 200764072 874255923 657268670 980636177 674141874 959438610 658806235 887123471 325699553 683097602 520601637 930746991 642646915 892122838 205907761 718153769 673219872 861252910 869460240 943096122 738044997 824334150 870414720 990858585 863906785 979092895 411885763 691327559 905451555 954698766 525186493 544853164 913506687 995091885 885282033 983884779 407976422 794603829 296150060 423643408 574565617 965300235 720088164 805101395 727253462 776662863 822443922 962379810 807786670 930035966 663428103 902494570 107337086 174403387 362906933 416000585 108655025 534418809 505022441 970733670 950389094 997139599 576876700 712259917 599280943 891111654 428113451 769505227 923396701 995885174 3688555 327700937 489782771 646767137 50098379 462874158 504194401 576696160 92117297 495774714 256332478 727619477 130759196 212288722 809491246 944050551 582150169 863203011 435170688 549964313 921356861 963535003 954695330 978919646 759007869 942673378 158955151 744351314 186319322 290727846 474807931 841702533 459552392 629283357 421412576 756860851 586591806 681199581 260910795 731079193 856569329 994007023 195508112 251317771 817082645 974287305 324772960 659859424 46508707 526810206 613974438 987202710 709831167 721380859 953162794 990447555 750349534 752566672 792058725 854585059 580801628 872006435 380837648 902326333 244448608 935524359 402512286 642423319 478662370 804551362 339729197 807387355 528988905 828606710 198727982 646072681 650991475 820635146 183489002 460788969 81779489 98957835 502660163 807788320 745753985 947960500 917626379 966174284 474345551 922410093 380675052 982268061 825561790 895734267 664736791 672079680 810119539 915527339 119246012 348924655 480369638 610125220 676960980 848046377 594852886 632925246 880856591 983949348 140739114 523103609 334648311 708484587 561900472 715694521 362185771 641414203 767921196 940708287 432324296 450827453 98444135 332745972 139064474 259073052 335825554 544512108 491416848 860791174 267423055 387971127 308115585 775454905 662764787 955767543 305771593 964230645 378683985 928480535 505184899 517338312 595009999 664032035 241493215 631835454 311855406 319470572 119272229 952362382 24180999 512534069 376662974 863529779 979996823 988272105 550611130 644657062 231674624 946434375 484700542 503503788 558233676 815381417 797759149 998081928 65482190 955803417 917232239 987817721 433918606 719778867 482758519 623299006 616940589 648539138 77023939 370375846 471110934 706107053 409706176 590452252 911263361 991309435 271670669 971718166 905670179 976579661 295916615 923592104 545508966 853442269 643590255 781544387 796121491 967057142 439108273 547858920 852160077 961816042 480561322 656201212 147536826 329075776 581837535 685249627 364050812 967201603 833199332 974425054 189517935 652410089 462060660 862639110 382847378 948387442 265489543 979531371 191897677 224124965 146031141 769097869 424334616 941042113 793367592 911409095 555648034 994240299 966203727 966973176 546599815 712989616 744366738 781492914 563633402 766359162 448771945 813280662 39394878 423470835 11326327 608456908 737431814 965027683 296359495 671361423 382851741 532060660 693695099 891888484 60509739 635064395 46323390 696825737 598475989 833916747 616075265 650626230 864143004 957566709 593307587 940065175 595364429 601716418 985982728 986598368 931585114 996816048 86141682 920273041 527402095 833977417 840863636 910178193 497993527 562996580 428320716 773195035 686221889 891399566 792726405 941297729 315291728 388845218 595569437 598025089 52030696 87456026 167182775 210840280 258101309 329324584 678799839 927030510 732714542 884626002 897851201 929887182 437579893 803066508 340909176 755843484 621915265 863379606 494654093 716017137 246956670 432486708 890535732 967380051 322363744 344302147 225940318 508423341 338750211 382985498 728128356 855163593 153998759 921604323 175699773 551662996 537207057 813700151 909188160 911309146 215263519 758699293 101615697 670167792 504031157 569012823 606042640 689018498 275540065 604453722 591088611 733250607 905774117 919573555 390771961 801812618 385907243 939545858 45313250 880425384 793098295 909623375 313656284 934783840 898292381 933551451 332121467 555334529 185554635 645780476 285674101 461682870 936887940 996504576 48561442 732713892 668157045 706837701 323327637 613626593 901997222 958588017 490909244 569834833 841729548 855309137 971525245 999498114 31034424 64946451 616748411 756570837 444933495 779660069 323673947 914032839 820959044 968235873 17820268 248284986 785373483 987482143 211455690 239578818 757082654 990693713 542819998 937840806 482042586 905514090 570642567 762869839 617983452 859171637 862987259 873316717 68865365 490070833 366871674 988031335 251043475 661382481 829003232 931951783 784040424 821380462 296437857 761812807 775865174 952637085 902517799 992195192 463807827 808135723 17953278 239943715 167799626 819352958 676072200 789325002 23310388 975647804 279711734 982404669 247665613 286825498 423897591 885551059 616302476 714667953 136425264 397296325 254821112 587288311 780741525 987212422 888838800 961443978 172738224 205245460 916336399 936700906 216044889 546060133 381706997 844987213 664623433 804067954 523231716 592494684 850767175 867736327 379119736 804049407 725162038 933270025 757197864 973977168 745171767 794074934 209265112 430040510 80987620 467040022 753267308 990557909 731890562 751538006 415775277 580262758 563437054 801421007 926525698 980067250 778854626 923333479 235867539 371035437 110356133 604550197 66694366 867154329 536032409 780265113 919277070 946479476 482606225 551155842 227578763 412294154 383358635 809529756 784307224 926452286 835622128 837085173 842721130 958010010 203647592 315157595 235563625 573642202 165783660 739958441 447305055 869000264 317326327 444002371 631837541 697419723 149158336 418648991 501885436 856515889 971515171 992663775 209886417 696137309 389144957 830415314 60767241 810441482 318612297 393780028 279125011 995234481 87936672 639416510 581951673 720794495 11468626 424552538 646489148 819981014 571948178 709885337 814321443 878672890 238888538 719674792 608185979 887940658 520286340 821029496 888331990 889298761 448229977 973574512 826488007 939477175 324784411 460399623 786441926 963724825 746877457 757773969 191341537 837977654 912190776 920811562 631664541 964958364 130525884 451425239 631147177 866425944 429488179 755818317 900538111 968962785 663326717 951592461 876206329 909049226 695213814 807639537 453355860 890787506 498559423 585809227 519524702 566915652 930389056 994700264 539233836 890994460 673303476 943302701 468090185 751680662 150760021 784899668 750629752 893488006 845061933 908615442 836028811 971918008 454055974 885762915 612582897 950530456 888083097 916355336 948582418 959535873 703163003 755090896 141111811 538610103 520558136 707030678 167028606 204791353 19353957 215504299 976727909 984638790 86469614 530013513 630420607 837607101 357049467 998162320 921878511 957864807 423210993 712800113 128865782 987158406 165197666 734029264 907981738 995019541 356213446 995629190 9114049 549619941 228770013 237597488 31589135 72332022 366773310 824914258 344498941 784203613 815079998 863743365 842083155 990178636 759660206 925802263 912338775 939999801 634087543 822179496 646328847 664071810 249973382 967163339 213495115 239038543 1395369 205414268 958592349 987756458 337204100 615470366 109955096 245047429 882318896 894469514 927514339 948998498 102834830 374467054 939631730 941869200 348874944 361733794 423093119 433860116 883786739 920469864 966763984 996941421 36364221 565831805 447027799 770118828 999262930 999861210 2623513 542518562 436644896 688582289 606718518 838172566 28864671 863874245 507313267 650192992 873490428 916467889 773180589 953567599 818891278 876886841 766001585 787540050 920717389 941895585 719156549 894389176 178793717 751307394 960221379 992175792 316927088 964358247 564577134 987708240 155430060 897976416 721624634 724649095 776139389 951991410 315337191 342282780 116725969 142327461 910824899 921571003 489656101 839395942 757808791 831311521 203534125 620619592 466433870 905115730 758679236 896019047 612580243 782011685 102058833 208279091 145494729 758625439 838954732 980963438 829634588 895831419 490881718 828698553 539711944 678248556 859303471 890783044 618924462 909078721 308213276 738882969 699682656 764997449 95107650 475754859 72620195 783625811 312938395 806350808 285389192 944561347 582720621 666964773 552064504 974738173 162017952 517211041 807580221 952028703 511085993 610533265 195330330 846565143 570840566 998853710 58062149 622526289 164471413 866162105 288810614 664566330 768522733 908698746 44117536 416115093 837019822 936536280 313924063 919745254 375488918 707028347 633694577 783891251 280061445 870705462 54628988 95038642 67027943 769630730 943673129 995742672 644096678 875490795 815081533 855861896 203288426 644570656 267206063 895061483 708262069 765397851 220086703 242553732 304221263 505242645 859453101 957422903 530966615 620703306 105605674 914496155 220918510 567221345 401459404 903745728 613568500 665363684 53906926 751816338 313110626 803779137 719655605 837167618 442185323 698621309 478444914 866516317 96425062 387618202 398253262 559726008 256958994 420113034 473210777 629711469 694251224 957035571 873696877 921092421 550779955 908486631 467891263 756547251 546702902 823748571 640883529 932084868 895690513 897657637 101461871 175039812 758699249 785880937 145254563 973482308 275989783 656046171 687238029 794053845 54736445 905916583 716269456 999781482 997656021 999980981 397354343 479090082 914494816 969448664 845535535 931671089 231583927 500665565 713825200 971368135 551136853 871186232 76829258 441727560 457697411 479979747 299767910 569965969 62590491 83913478 949532362 993622318 108878577 532667731 357271705 836839856 283233686 585466582 162933140 322143567 442554045 545180462 27593388 851785534 5587691 261878138 618450805 961367861 232794152 328363469 895846143 936846916 945488599 959424704 582538914 974821685 661127928 817390748 262858800 847984910 945409798 987776383 869473651 986989049 909203770 933653358 220622248 522109002 136134505 143610644 616655047 913808129 193778002 555565972 766147068 957791185 141921886 571692088 948664096 969399517 862828909 899699133 398528921 519163487 696801320 912826465 102793527 776788647 207787110 849264217 383294769 595887507 83197011 287100565 237663846 985935421 139456678 766043128 677888825 852647014 458062578 939763134 19040199 376077994 512301720 818255888 642863869 969734114 445625880 652106682 481974195 861892620 529556009 743799605 7937786 403214273 795660919 989052522 618057093 849612182 913568740 971619739 849819537 922373766 366556796 616118110 355012990 617972375 705652539 830513357 798915002 963165975 464628745 602459187 239052308 577081263 489772624 668418288 378252297 599829775 140545476 529707406 941627093 954466194 274379178 968507755 550719294 720962227 143985454 229030227 630535605 924439555 828706696 839230624 863305342 899447192 159722051 695492746 886814631 972045490 959635067 961024270 306163852 435063456 184009657 292758861 411065123 824386314 36412073 795485572 297617687 448328231 569553119 623282524 468963537 938601088 679495342 875231321 137489303 364538828 714292946 956744468 922152468 981756654 17426501 120438454 986703393 998688799 197204134 969518380 629849035 967325591 462100328 827967124 732751064 773188085 759271260 858523814 447361911 653706840 3003773 757521009 846765037 930153107 348243631 716353380 120712680 707434193 337019474 430397847 679368011 891352653 204306908 425901119 877389007 891804101 649251506 990198466 538465850 863304919 178789955 568461024 840572709 959131205 44117337 188117192 656665746 725266879 180249703 323194228 684589477 894077857 958691717 995465850 539451326 778882463 34890106 272541224 527811013 691764358 142482666 967836765 484167516 871275640 717674697 790168126 85267467 652197276 779798930 840057307 594975519 809610842 521370898 562901608 634168270 969950551 524306842 700652756 742663139 812763403 101684518 711685374 90494984 228629068 614905067 709747660 801998418 845300114 640366941 961795464 180609262 986580784 434980137 739418580 556455192 898295401 451453544 860834695 663591900 777197858 312979548 492455428 516776399 914648660 543566579 549428148 435662752 677208297 199997257 402780361 807008752 927596798 198006634 625316591 143549168 498119192 80825676 239173608 852271864 972125804 756691549 786433852 685110862 801582105 708260006 763151454 874359369 962134436 306595514 368095664 544594187 953358048 475733202 596763408 252149462 923485824 420681804 907567145 216605663 814444692 37828619 649458575 971142583 989990103 420624092 961975513 729139541 778018251 748150916 962870122 715419350 947467142 814771140 859862411 144561679 673322603 807129426 822670304 289964231 795275862 901759217 973803892 814968728 879307295 914329252 926288164 269912552 605299541 894292625 926151013 134348658 373867704 388775313 731263680 409342344 749435346 332543341 826790960 438953189 936295847 609396963 942623276 693115137 918530534 739255769 997868615 588697548 661259503 996289667 996354617 543972615 876166829 862502023 868013489 444492959 826246670 431930619 646177773 265145967 537941021 603189953 860422633 269544616 330880694 603557903 940114994 311749533 991587674 40677784 432361441 355215832 969145908 912318347 915327727 476705890 858678696 27793002 811470254 52245835 400077505 306895778 547017060 682311336 824081195 988317411 994800131 406098978 824767385 122675754 699585559 998737057 999381260 694510814 877399596 854447014 889383362 806397056 835353048 789562734 866252101 101961385 463529274 354054174 717354464 165408743 713936068 551532343 841491237 384810013 758443900 434799894 963116629 149110320 795313038 450140056 468055990 796990394 819484835 1284980 947338414 874169394 915879030 235948892 494865946 356958841 828192343 146125630 772516291 868364811 995302755 418375114 623280619 415195591 478976836 658882459 931242807 632647005 886603545 722451264 788686465 409722655 648867041 381758016 757125520 527915537 799265648 90103613 433110280 297140170 986409939 268286092 846175139 227464909 519251434 615565117 803795191 366064281 782108890 759289602 908430650 707737696 858130202 303394388 351688523 112931786 185937295 287658476 929268816 684000503 898186569 425702904 768969969 14398340 886431793 848407956 997395707 526068615 928706234 351999219 889670073 888926806 936141171 866133158 928877619 736426954 917887386 226242248 922433856 118645805 192333263 966854899 987986660 300564828 637881075 47006372 841340995 775369646 801357029 915638579 937085789 958747895 986166769 219659620 795180611 182892053 461680969 414075647 838477733 27057461 804806158 270594446 397396009 32497523 514697448 188530732 343617910 169871915 261187648 565478264 707053844 565229742 593406801 933501496 986793514 54960059 679463421 461164063 564922903 565389113 982499029 878299837 897655824 357923517 585094588 349807664 821081495 21766206 91909645 573233686 737528992 919163161 997082302 271034411 971253462 695464135 832691097 501304264 552888499 851849246 946155877 521114411 529832957 957451236 957623889 693740932 710382691 711609291 985800369 143282531 996500944 75865920 162123885 336773856 664212908 387370392 401745967 454091855 739313184 744907492 841328448 750142591 768047564 10580241 609063151 105319069 873899350 750683531 831787554 748487644 924316322 994392739 996508189 566876328 730074104 10500486 728224201 887938444 976887427 299588945 876108894 351513240 951427714 153874622 356229524 829734534 877779915 890974999 903615605 144566492 978052522 852970674 868408527 982183115 989675490 480256222 702730040 274259652 483275234 674731229 874608085 232717251 508627783 12087808 607034662 975594392 998283926 583746868 600676371 170796684 252459998 719389464 777192326 630844482 888157864 614775238 737135547 517777238 701638060 402411354 432528875 994559634 995010861 264670325 625035956 200071360 851907088 79208767 680321546 853325576 887436388 486156576 751098430 925062883 954915321 867684690 908178097 579572731 602376969 844192208 890176629 125023215 787458587 102800058 362008953 732257813 732929871 933451882 995032507 455609919 989878364 380786327 675073507 853423928 867565038 681789852 877739634 441243943 758932405 749026344 944508279 239010741 270099307 669988199 782628833 986849839 995311414 907667052 931699093 305835751 312529541 60806198 436454757 48921924 951626407 894472372 960775689 8565882 242933383 826556262 928869877 743172974 820507055 232095558 535689960 88159836 290651150 905085490 954537126 39156949 506740127 909963151 965660259 246935246 310080897 402610132 421264266 594019374 789016936 619679974 824983720 313073954 438430338 356070048 360720554 867643811 868021575 669364403 699251730 422902047 654260242 696391694 815017809 77911648 569559516 783643656 971657111 187914857 407227680 235056784 712031950 672342419 888909309 894852285 895135763 557735369 742181242 929148364 954224702 309746419 587650717 701331836 905591116 382830348 793326664 378401318 533206599 388158554 977546759 462970182 686574067 503116393 906953330 490727185 906763451 117869173 166328510 891746134 959610326 94575175 938640293 628915114 707827848 86839363 983495015 763570169 963877428 329612918 455658034 154906211 988947337 992283502 998163116 554856856 885302396 362698579 754095669 457625330 630713101 565759806 632918324 120257107 831886045 897364777 991619237 281317361 333763515 547517072 755955188 268736639 959472683 602645651 952817282 534580884 848927696 523167195 583314482 729562179 813630679 615704716 863520484 775422559 869938185 15151971 885322570 314904603 348163304 392801115 544983839 150699910 871143681 150584218 407382291 173335801 957678776 789899145 874387184 697680658 708903910 875830865 943973358 750656845 782675326 724130652 894887347 39001947 759023741 627808275 678257077 363399421 723667777 531361110 756251231 674867967 788198807 556201502 890907072 419711738 881764265 521190324 929209960 34873435 869272227 27132312 493514986 819601664 868948119 890380497 891041947 740729072 974033598 13538374 114905143 390325056 707298094 950249313 971615588 861665233 998410107 7308092 134555031 290963739 690388186 425535080 531943342 514185175 918997644 506712666 648133549 238475315 889123930 691812986 936745820 429688625 753462411 48568706 865398682 629350406 804473390 653670000 686499835 587371411 934569926 950521347 978098640 216044925 443387176 58065936 306167704 843764537 902897113 521842704 906781939 79052838 567497139 353400891 685916039 438737198 861459162 497842666 607099429 23873752 817022523 779711919 996812020 997754715 999045417 264441568 554943636 827137387 958694397 531441574 652442370 711764216 912001260 211750691 849627067 615135491 676544980 149973894 864586814 797121356 997439768 10112714 918850723 904055912 994414466 248163663 894315208 496964285 753240734 204490669 631835898 345508040 436318276 762281953 893676132 602283956 679898713 603782075 725577830 237384837 686685598 9797904 110445222 559890899 978441763 249520393 684192571 962232259 984833663 8499333 521360641 884487368 946682176 313110668 768797535 690851258 972762030 921243800 947624747 959071258 964678267 937557843 994327156 927822999 972771297 676055779 834133833 669646029 807697315 873014405 922010215 220750158 954191231 728976977 883010029 590732013 640845252 653592478 771706659 381240896 687125033 794028843 846063809 290167621 708907430 977385085 998018552 14554011 97672591 840280286 919965017 270923558 782047874 916739958 991518653 633023465 779039865 579744222 725192349 36880447 97759816 955853601 995381976 832918444 862449575 470500319 731892897 738261295 881929370 484717657 938784143 283212525 774971040 668910859 973384647 248204584 500838929 267838352 876807383 400035954 963384686 896213402 930943400 128808915 519550743 392537570 580196734 78088036 645006437 50877527 359204812 393934924 703903790 892795822 904735559 681610758 771993789 976965757 988374798 700844018 741479540 625471321 753484547 120908990 779169832 325911781 436030058 285467280 504424142 369634469 383723790 348939003 715676744 852991053 885814026 825923634 842765679 258244156 807883834 632532321 639204890 559153112 966814290 741217506 771677011 468660147 787460261 641418234 689755979 707064510 862133947 58660324 605841146 681368007 686128917 202911926 750176803 304774059 613656164 116925116 769861605 547535167 596251359 136849138 146952199 430901869 764931895 628432872 792590408 456190037 572714206 448851872 743182894 562340575 741930953 223751693 303686053 352770999 609580924 449610049 759515650 727123087 892581769 264201100 879850263 736315523 980704646 179043975 716609083 762412341 867617889 409810929 994286173 802854184 957994042 370001784 534955607 769835140 802209748 300371358 595885871 384178672 872597261 637647086 893401560 773126295 961410275 990418659 997063702 322348111 843062215 652479294 950290630 662461716 672796678 196269124 646886641 397634474 704613626 217244956 821410160 335338926 348729554 101277874 741438878 822141263 970262556 433657890 520445226 401103910 685495265 665972005 813736613 882509353 887486877 889350706 940601315 956324002 957147431 826138307 950484083 879959639 940138955 294386110 297693777 456058282 875629393 561520428 895674118 269426033 459165859 973937657 985752566 113688593 858241618 941290489 951928682 985280746 999834937 748148388 876135745 756026910 791226390 11608619 614780972 298344196 421531257 748248130 929415363 985234425 998687006 664831930 712621947 227157295 609212451 299963303 512133217 940208003 951556586 606256772 656925518 84616179 164056637 354990882 426658451 756848653 967465512 521871917 726855722 236683764 366832430 484356 904334404 576321523 797795787 461997407 814287223 267696239 856731968 710680192 716358659 798248349 989229548 18721872 976928388 399730997 632913955 878241773 898026958 55171713 184041816 901383719 982427185 110303 163713347 705775897 981481674 862740356 953576324 177827967 223890030 423002381 976007276 960482780 970865424 474856235 636786113 594543949 819652340 290957028 996519747 40859963 858360017 902359425 985789847 831008464 843611599 459747397 650085405 394102327 602333410 364343218 882752559 72033078 125452394 799373267 878391943 761435260 997114323 6141073 416906630 272919756 652729738 544967305 583126978 591544268 679670552 180305203 769276699 908230497 983378554 520233972 866710395 439380410 827002174 146634522 859723072 659833774 704407753 939318637 976826268 506322911 510187361 445049922 647985112 166583210 522591746 889227103 929048003 215300833 825664489 654879772 769231565 221582980 564074536 567510827 893082837 384078196 512088536 456046171 987748001 872243033 997084383 539124409 633082908 545324774 569311746 973631499 975240523 190615982 997069131 356238606 729521013 901913618 985670128 809032261 847488301 56338614 273825798 549039803 601485155 250540697 647985020 407132535 906290737 615540730 992621247 660580024 680048251 383508656 542647319 907943005 953942743 416249773 991399684 566440945 971736647 207549424 403734428 178453439 563528482 654350205 657764984 726878594 856436575 752412285 862372625 7502214 318930968 15168962 346690764 104806569 180208111 341482670 594436604 224894036 992421283 54591784 843227309 746526923 755701626 803480398 834358888 551329649 648358606 328651146 534635669 308664512 562200258 75657960 151925238 593952800 672241605 419212055 719764659 614420635 741769185 763763779 974709205 621455510 821632731 431240077 589428514 929268798 962347549 182044555 945593515 783962513 997291650 183956010 923465867 392670297 767737629 185613730 651778182 615880550 832351550 863973585 915666555 634580766 989031982 136703191 696478031 953874096 969509870 226260996 466247734 990991863 993780084 408276739 971730533 696533357 883138942 224724148 803863616 230693105 786816325 360786793 696207183 123566251 671811288 803769235 855288070 281221550 837267139 827339059 917440840 462964705 560445316 682221420 948202350 761392133 914856277 405649991 541213800 822969940 965935738 974245439 981235556 445353404 861246244 304275529 997684458 281750306 662452236 813662331 967799197 777866539 882865094 182503860 850160425 813495337 906365151 150887478 419778803 602973184 641279976 377439758 959293662 382447797 555311709 45495913 586313575 587422607 928976346 414935452 578168315 215599511 576726190 636321666 884407182 873697852 991436969 356876852 625300165 378683096 943405628 314675002 411490468 596027506 940583705 134424523 610977269 296480617 370348173 964048568 987231606 382290134 816680596 600019665 791550904 423829618 532587160 646693864 813403750 893159795 961792799 935808420 953386498 852524461 948916767 228022362 564750251 180264640 239564880 278568248 403162036 987774419 997661329 452309681 561615736 901772763 919332091 71411020 918316162 877326905 980496792 787541686 999211065 666469833 805540122 499094732 951200483 559714402 752211131 868348897 977940087 339769483 388902547 965092348 976612360 757715631 869153971 62838740 571455830 100443990 141741398 607580152 819247690 65007050 211230811 51141261 641383275 208032046 533974882 105359578 560595020 485115617 554611203 793195345 963206386 833150803 836831116 114061445 287128710 5566956 899224365 461721521 789340097 750314406 981381395 762194741 902430984 289835065 892505509 786002385 916522639 358358988 763631466 757629461 894639774 668597724 709619461 282908865 370422853 783131854 956198375 269010169 717658911 419365565 807453163 836575632 995342173 669718757 820931263 275179590 365153620 394869925 446189019 125523087 920849124 706211860 754534654 963058321 966255189 838063179 905953147 602044218 712271132 445346509 931931034 777596336 909743322 797506806 841146998 656514194 703556802 884718109 920960569 333383143 529971053 161538917 428333818 733413967 859986723 918276060 966320538 68823866 991953003 52552838 390934500 869290973 982572692 753201243 961104743 810726508 857262631 808940634 957376116 738428858 826149024 679219884 888922838 475569357 926347935 632894529 704733066 78108410 763390593 430120141 527327711 414289240 837190450 172522793 938349913 739372809 859002621 277361974 985851909 343831152 633204508 251317745 827301334 963537462 996970127 830441595 968930068 888603873 892963924 166913068 878422689 947085050 991685333 573916473 846162158 491249774 610002829 986351076 998715407 43807372 565368879 763866651 820632399 695172989 962608922 105189007 672210735 400830718 591815350 167377648 702263644 910481319 915049361 825580648 907129662 921543633 925544786 416677255 836539589 966458533 993286552 551521251 862709618 713006885 843952597 725148923 743038103 762375807 814549549 184318281 482250607 689401522 800885167 712324201 903352961 162584601 189961415 606166506 848902171 466158470 914629590 634779070 814554225 485031041 563386333 557376344 926785966 878901154 942020276 183177039 999980574 158037289 989709701 857039078 990750795 556239005 832285680 64711405 367380719 185987713 291456630 497689770 846026616 476895946 748700761 300136183 485922161 18946036 875577614 942596211 998727356 607982400 992134654 137525898 306838386 18175815 519171950 821333124 972956561 998538337 999592937 574812420 642930986 970890749 995168091 373614833 455743887 834979884 938412232 500603164 965340125 80897735 287958257 983809417 998193842 94381898 375876487 292371547 304912909 150102643 813668725 998180756 998891665 54299380 306604732 600704451 954105977 92810100 149927192 367291299 543674420 720590913 899835936 985834381 987093415 296982243 519372741 910096601 916131600 833812063 960885020 153173579 745428100 928191218 991525767 912069328 953791785 860784423 899330707 11320608 603186728 841747973 899186249 644995620 893878887 67611949 424915689 388396285 817173638 380571951 476796809 569421514 921655876 651131454 719981605 952902816 995777908 917122743 955004055 623896615 634016212 746924399 839124134 288142316 764819586 880330448 979200762 501321441 930324003 922379270 944511742 18873892 975663829 266493365 643899986 669077037 798480930 567995105 998427319 299371942 778388148 749987005 824826146 530191657 890988371 50493122 368666625 764073091 877755599 195825653 218874105 471889247 768329780 574380976 758208690 271564744 273833154 294361933 403804979 88661034 929279153 133965914 788108824 57610843 408484728 326244174 738252296 725316693 811391247 92385968 547443568 4033602 491629825 690890859 800085512 564610517 679966333 44267603 511080897 335472847 999466793 128021541 133290164 462243811 677308347 239474327 840660990 694130328 971151870 63431411 320032155 123506903 713960530 628183299 984899305 905329647 958245287 674371022 698941272 489821502 947281763 941185397 987375212 713799831 862607167 315796713 818925435 229062014 479302517 171089060 477087917 695008964 851194043 345042259 371901733 82018519 369732864 846522775 852235929 180266745 675893027 392536427 828094573 90884718 468406585 609231070 765633303 511155315 895763075 896795941 939925031 184767413 552212424 492117309 556585912 178325358 999104136 161429386 241281010 383168677 493248318 542651690 984327823 575410627 828274978 239906262 958507695 48723445 392212260 229896263 885435516 308760727 513366050 561183886 815802368 289764972 935351058 617899155 733733946 362941059 984340691 918548272 991521196 583401366 590233698 169230264 972101849 934796054 940433992 527304479 878414524 48407252 585342174 97545875 710508541 926214465 998206222 172257663 755525342 294217973 772189215 882900214 999339444 946941145 964482596 396476641 930387973 647502604 664790066 751017465 890966416 829605685 978618875 298226767 782828553 164102692 347364195 560888665 928562892 545855733 893637841 66077427 380710865 278410986 515980199 611425728 992700781 641333904 993421454 223455782 317708553 534589280 798710819 531116013 739027308 489860005 503513155 832011078 892017978 685380029 897688213 841930115 943689033 709729848 897412618 219381770 758978344 724193151 796891716 327656240 956959748 74419542 883830981 372824905 626871879 562426073 661004623 745913396 896590469 80021186 145145833 445503198 873231660 124672742 798783241 536778947 589439083 277203041 285946222 430028272 733383738 576934878 607960393 231088867 856488093 829490043 849332132 528487964 859101510 780402956 973263110 167272141 673747316 38618748 470118113 661033915 868228083 405394415 714751034 840421982 989303405 77799245 941095297 393163282 453407255 525636834 537265246 908820911 995632836 306776199 419152256 880276023 992279605 776498509 911330346 416520401 425845467 618702019 765407635 32394246 155319462 145819859 825599299 741949229 893654414 615266803 628190074 587077302 643010494 501332794 582618530 557420506 917045475 533648946 913471765 660489956 854272863 398719812 572190771 116249408 848385985 237162119 429530505 588315090 715805423 865441769 881322034 42604220 389704464 681083026 831362012 123083233 526494432 131373284 426314804 140807955 321133732 784378559 933544554 139038175 139745396 109677708 715740113 265405988 956310413 351883908 941640063 681184015 945571605 490971148 712491973 995739076 998332812 481777341 918697661 264744855 574461823 455407455 567611876 381587650 610726447 704156098 830879878 299588658 743490316 323112421 955281161 196642991 874394742 975672759 995743096 442124185 529008588 326346553 757247456 402250415 439052319 664106906 960697309 216050627 620765599 253835086 714755290 967091963 992641313 272402946 382359384 629377440 718228449 911328667 920437212 541322928 749597821 311189087 381686381 847728255 881227703 54253730 972611148 89086660 414119795 6851708 507914438 279282200 887680689 280404030 491617873 87621517 496544562 334367209 631548735 944609454 950926734 128480672 633082977 50631392 995744360 552597523 997655491 212417249 638280199 214033696 675909213 680379769 944340390 598476838 631640723 387836289 522055506 191397301 400701885 264068999 478288343 86617284 179514470 816404160 870813288 974703105 986100859 120602991 585660889 538308970 694393720 313312352 592759576 724048755 829631015 963825623 972732017 43178804 418566804 840132827 973371644 716512735 913757619 89922465 986718558 714864167 775269692 986388932 998607908 803834702 842154175 350454401 458945873 370430813 942793863 517775411 761926270 653565375 779183605 662705158 962266491 825924962 955846170 847089629 974871362 821420740 868525073 761844718 981994931 46839712 815006425 673394943 739062895 763488690 868823157 26593118 119842452 930209593 945864732 978053617 990174296 148397801 170175920 896813021 911162744 321612720 672022383 398885400 878730254 260871013 616932805 249030368 611185415 816738950 946299213 867393230 996479627 926160199 975650464 827309527 829016068 798522601 872791239 687513557 985662435 467895801 834565280 836885300 872882509 984379874 988471227 441265883 490919534 112121045 631997725 756930395 796524993 778229715 893650059 516739445 538784942 517558254 880857202 192339216 465063306 776380432 798262586 488613380 775675579 569755978 657058154 979433029 992349925 201529095 956784166 302178053 368209729 469845161 820227338 377465933 905761066 215564052 678121929 853860826 866197521 279988433 502718735 532116528 888598539 989397220 994472272 278163890 868169580 524292461 547276630 355913850 597662731 540783186 642442236 777110680 999797118 312268014 960161345 752130230 849389438 13607290 579148278 209215159 970584365 750326946 850846833 588516679 724294276 257008531 795574782 896669099 932414548 820968594 833222135 218640178 634123286 223072439 923289282 817952731 988473973 155154242 764797493 825855290 924081855 410267315 722155939 492579341 690231823 788160137 976041137 821153027 844152710 294463180 702104000 578961144 989930537 480946186 508654026 572602030 916826965 382482753 458248678 332922117 382582599 535902934 541256478 436366050 945716660 942075206 982745695 387953474 626278018 630048508 981938943 34311897 910978828 129611980 187421106 812736666 932650920 577531610 816426997 817722050 853614311 229416957 576877983 206795187 352884011 875681843 997792012 634326266 828930213 636716051 637905744 302051732 360157987 877656513 980303615 826168787 892497903 496404386 641770067 912749033 919975842 954548908 972460427 153375536 670742338 695262278 935733833 699252693 817580779 680713842 797039737 968251159 971561045 454987607 860667030 660434364 841380044 269750345 276983277 917177868 960368718 180175012 837974821 570950917 619898885 992886305 993750269 760833878 936736122 617435913 810185717 579823627 630378693 472453880 529884863 650436304 729811477 626204296 747321003 53849062 405448961 687314669 706679360 199310732 887043350 890613032 927513366 100291592 305874178 613015054 665998107 949020292 986525626 93487816 164052047 120252671 648255786 161799214 627217916 958900090 992871954 853280034 946964129 135221569 459952550 945281858 983567938 576092540 959595992 503719008 954479958 610513641 623920493 336294489 992306743 437110193 652308747 547774932 948915607 102956658 149293338 348948588 529282509 696479356 698469734 441487496 730617244 228741026 458817301 227948982 506471390 907837324 973881236 873445236 984953491 399137409 595098940 237564811 529010885 757283776 849338581 839026085 840625193 467794027 936388133 454579434 685841097 611752710 930487033 6819989 474974540 846804644 939589272 930753623 984017999 447461014 777870074 886581881 967033874 953192977 994451710 231189859 746136900 164680752 910880326 282471439 389776326 18424559 175791000 221203804 899530441 229998997 232678475 228355059 425203651 475135723 698803280 478443923 511926323 487326175 553883740 110892541 854883234 565089665 810116132 749024151 932959591 621429483 677029957 65430199 86244390 644622303 981633096 804511523 921525951 439275043 456687991 762336029 872855348 152289810 943771480 967665154 995249102 559679023 971191836 651010681 666184052 108739862 513783259 765185232 939020459 683335434 961653508 875993616 967608478 733417732 981518137 664512220 734626426 295330111 521665863 244878217 359534874 789130309 804003547 497716502 701301343 296703293 782103265 816947585 878104377 166649307 223293420 630923644 894326025 497579420 868821912 579822157 734539394 612989224 920076421 508249056 591175452 558449957 871767208 638766716 937541352 746778300 955471311 376832115 650937880 641599103 924546531 389206783 550420100 730849433 936286557 673480557 739713165 461570043 602041620 348432644 898301333 256539437 369267324 446366674 933951857 610335972 719441751 792311897 805454882 77064447 202687702 158318613 324106567 357736947 632794541 175530182 362198642 841463750 986842044 800495710 903739025 300973210 620437772 262752244 591701903 819974267 967938405 811686131 839429580 228810335 416005229 157654295 256733938 423809431 530422699 311379895 840927757 235166127 945042737 2225775 88779345 632868536 749165468 73367802 546377924 228762215 687181052 618997330 679652321 21820080 392313525 301078498 637403818 456713792 750362390 711177585 746919812 548576361 855991608 152609483 681319292 411037375 442542952 967556923 972942211 326364160 887350110 957156045 957891494 607811443 792397093 475526769 578495167 658645558 708809383 168373613 859755695 51636759 81801449 44624210 169124005 633778366 853314248 50407697 457692422 53513589 308012467 566952818 592983998 637558822 920836008 307804144 815847511 683922558 904857930 937483748 951839819 337913056 634988643 53634931 974935288 666134935 771927154 916034339 962086051 697174293 755398350 160655231 734213885 530414685 579301120 168259626 824137785 679225889 913155645 74370653 401061762 74348497 927753142 407591641 540234248 744960674 784757446 685540704 860977199 379396834 689539238 922785493 998263250 248331149 752351638 417578517 933827268 303785610 880352692 145330192 599227542 8565687 53518238 733878209 882041254 919407146 983705061 468992701 907585004 645318833 706786679 688053473 701188060 71622221 644869083 341042289 599975320 212458492 329765252 48177168 805139561 44634706 761399320 68058464 697142569 34690047 105994103 765772178 780181028 530706755 823770334 438755794 756882742 92746584 225945878 765783079 781797796 164331180 191743389 995004163 996250724 848714449 962300412 212487565 468783852 83077433 720237745 480576369 783298558 181879682 297607860 427236348 978853332 277270485 504120742 402284406 554838083 877188524 903433789 449924467 945934322 158682878 927785972 624159782 951418801 333700281 764546453 634299529 700088294 804274498 925274812 853258876 954964420 833627479 983425420 471295117 957725633 732019679 876918523 314696529 590098494 830935216 915865165 67216533 143969638 11083919 457850813 153442339 745499951 36080808 400476841 643231266 943902504 53651254 284873001 858311294 872641102 445914346 769534452 726239303 872046745 330833055 801399941 901247778 925865021 85469321 616508191 778698178 865627607 669493951 945349104 691885935 746575123 45776331 925611874 226858818 622192889 657432882 757626043 473820458 496838643 51002002 323947694 921036035 985261305 346923280 980816314 239467460 921954476 93316968 258463035 292076979 486421927 515063413 900811510 928365038 956139498 323513655 549246831 333402942 398515959 964430615 980208485 242109755 505801032 897871057 958993209 604858656 639074012 512029000 927127248 678603956 740657342 278238154 298525028 831758780 850418506 872153110 908780454 941924713 972837459 204990297 209533741 789300740 830757955 348323540 649927825 985160377 994367341 964396045 972981454 501078482 813079997 579614690 628146584 871907998 926123778 165277745 388494559 910020934 993147505 740268138 743123825 471284129 915183135 371998595 511740305 985596274 988167027 704612633 756078714 81991135 351511665 375146204 813962919 92720145 185637322 934517311 951866778 499351004 865096337 70981593 702211511 814942137 966760174 444175973 664468879 65599507 259383936 247447160 375503422 489229626 554334753 523695253 709562536 278444277 428323226 358136795 994335783 210967681 587973367 42597601 994238714 789733871 872745414 987089526 995223596 87388600 123416928 903660646 972651633 848042679 997865400 15927604 581870521 670121382 884156596 639947921 667525447 536608205 549012383 573837726 690896507 456067652 611658629 117201073 538665352 400309063 885556678 231885119 747921727 573276529 716673037 399178289 941596371 51128426 839844833 801280507 872145756 10441053 633644916 281638623 650806029 551967533 702208005 952858671 975071077 331194260 339516968 899459717 987685914 816194432 902984908 557370573 971758564 908536032 914053858 216524052 496918191 893559108 945302295 235455290 286234110 591509778 764380500 443400309 856849497 570415735 588191186 999062443 999290277 113305000 585950959 293883114 385772361 385667217 810795226 749602062 770907275 421109333 972381047 715910639 964103436 672070070 766237850 494385171 706023547 928886752 932145288 917756204 978984152 292574141 824563721 967579433 999316458 709063987 991915985 969519037 970601439 897767342 955518274 869674946 973242690 153703866 330734129 441817785 468136042 157426153 318197138 106647840 897357662 542646647 646156369 365130186 808735210 256818918 997207925 769678580 825769270 745468088 882347490 851799068 998500683 261719953 993657380 219042164 849853534 606685466 969693282 485465881 534875082 32556902 252656101 359764309 815792187 764297620 893160245 449289295 635043912 403232512 484665320 971938431 976366296 923258474 946970542 146714843 454264562 115180924 977507199 759636708 795313754 637063227 818666437 950148049 968618746 22483156 139878976 867015012 944910631 838407764 952181365 26761906 353327564 299922899 686765305 352455755 458878112 477740071 727828622 49611585 578053659 58429828 80315333 347507785 651500253 32129501 748176223 167153241 425282555 336108570 854849704 396372303 969570860 406829014 870977406 150200709 615815756 698066297 972895358 342075826 354532012 472480950 810543049 696048289 957697764 104128290 603070329 831055030 841826120 713435106 834265559 481338979 959770436 650000630 832591173 216054451 762985248 543818075 654981901 924313796 975418900 61711307 122035170 918203091 918322040 36897554 895506022 947768210 977561354 578674748 840774015 751094675 904590934 834605374 978732330 920139963 950056761 718745817 781252320 353107626 476114260 574101604 648838876 89945584 217897561 377204281 501681848 77602524 630621439 460129906 534424387 764288534 935536705 766717534 894674201 347718672 405554553 185711902 187233826 232678826 607901260 749004059 930325640 947901284 994705591 979889245 980871265 682863842 814387512 419730829 799496427 432042599 776444779 217721580 240306957 698158027 700617257 475047286 568719161 405869186 686935636 594861018 622752660 446466668 619922029 771806199 996723359 514228463 795863965 439353840 638246124 53373833 679538092 739133645 971535564 806338089 835018159 966199882 984216054 512651500 917232599 940823820 941573692 726527101 803444762 557211162 757849732 432806311 712455282 385636042 910959020 772529962 933651383 194508334 377938015 757143718 771539881 92783214 812112723 338876104 868020837 123498183 642910328 261766530 506648383 804207609 986287725 239262160 860002458 511707204 741216945 190438163 474511294 149347882 526247708 958800107 992263116 554985774 556066008 440422503 929529540 90359720 351876558 652814531 767820529 332774256 933628178 47267576 964614305 352467738 758348820 64144396 977591561 839526487 849620125 667509298 905447103 511061465 661236580 923802452 985096743 341113905 785854812 449620404 694600163 710483965 861025954 533943762 844999156 782629437 864017910 247491628 828370635 609329197 860044865 523587096 785142695 976485549 996648213 39043244 328289607 596261247 856828622 528746665 985417845 872289959 874552439 406192671 684382453 326294235 997773369 620464874 695315278 418938534 826915517 686208327 695802436 228990308 377151512 320478071 707915251 755937956 973349563 226499594 800127363 610134232 861461493 881965935 934695739 485904637 781885776 346113775 701322865 952723892 989351500 399000759 678171534 803530616 888061077 914530245 968344499 17493347 802535138 676167422 909719406 625457808 689943341 995627126 995854218 840748174 882537135 88198106 729759408 420758891 680357514 338209966 895710450 590092392 625780686 590008657 980056617 921475300 981744261 579154895 973526776 306178830 438895389 337748771 892149262 778234047 953982724 387722646 837192854 619992998 625322622 118200696 650042504 118827498 543001766 315961173 809841124 272241937 617765292 292642381 582153956 165808678 735353814 241750084 392118373 992102103 999974141 809008459 881739204 380725108 450234274 829977257 888919233 771157645 781846676 103116913 538397507 749025399 829811846 771613246 784393393 143066578 660011682 75537876 769484469 236594589 925351783 458351205 656611710 201265285 580966505 428210942 780720914 100244192 763582575 233691243 467875206 237576636 426272622 115055847 479220796 691068547 995252849 971646023 987078183 69202348 356492255 517925175 648380951 661665519 937970420 972378724 996249967 185050930 756382730 91546078 157911240 810078106 814687993 66460740 168189051 882603419 924242549 738807351 910768094 636900933 645211672 435404020 772766142 990994004 995079132 648996540 876765270 336581594 483241967 673825640 929850337 389276581 676984899 453977966 485130486 586454781 824200522 346342999 944933850 682531365 931347988 405571068 663803766 495259410 928253857 261051335 640376673 354801071 673187563 398965294 952155383 142483416 467229517 994969304 998469965 906027397 977993403 22061820 563594530 574746163 627932429 944440557 996202829 838375170 960512988 805326331 932537254 955729272 969635391 664051290 808327076 53144822 416145497 889164607 976405347 528648997 944803246 428038956 973200221 234200144 800148480 512036963 864071044 277335541 929368962 424733318 716987755 713694127 937781046 130538511 233754980 520251712 897427217 416558234 739978675 101115817 117659501 475025362 918667244 760093522 815644641 25342508 677514144 716232669 774212772 185365816 898974328 504347625 580652752 534733494 751933759 525796997 737493970 511245441 813118544 544073828 794765258 298063506 726419318 438018152 970817330 7818258 880343757 625982237 695561535 851182239 894200435 896215825 932194279 947991336 960818989 715339147 727294193 925862726 935782063 936818934 985971630 245376967 404379235 874134272 969484121 172332359 428676826 59611262 297980992 17255402 515447973 143550614 396623926 432901576 472970395 593541701 771650562 973315162 976510310 642045885 968066801 102640228 430228338 90057327 874019341 297092670 338449865 820998770 859268863 638257683 996526121 96017904 582950000 351162186 864268696 835386732 984720608 91221270 720706485 7606170 430290847 577621399 836777866 133956002 645911785 90342983 644525493 587015965 759003480 356024093 958848995 860385399 989784519 257565412 850253688 854712713 981393595 601132118 914510595 725503941 928994112 412525771 973473028 781465122 961645900 845134298 890532584 892557134 984501569 930849138 980205541 155427310 598573041 678233230 895266894 610368990 799500337 886713043 907097806 789827070 791262443 650821063 808999257 851353311 998085179 384776899 650436531 248506922 643734368 396156077 480769073 511671746 932069787 435663324 504294218 487323559 833316472 385338311 540194680 859556653 917915438 957233575 984424286 342715034 934224249 482646475 505448985 8346938 855710477 197052858 394477469 95180904 123007047 654144319 855842297 310429041 441881657 569467914 596571814 753362989 778184638 582286476 847576091 44677766 663326584 31698699 778071982 996673355 999525457 662111519 768109505 63032396 959183475 324102280 583609165 745111003 816976534 902876992 953372669 71967059 546148374 928952180 992385861 628725789 740231787 287792998 379800207 390837729 889207998 277759401 662871410 18149665 81305804 407492993 422710889 845704156 978751769 117538802 422880751 763395388 930905999 137132038 565640365 273053607 397338278 671853479 788355097 113798857 374707254 37907265 579934373 261804007 358519408 583550232 907817690 917765556 967670496 119145635 621740995 530021550 938214914 993129824 993167171 15512721 625387978 890230784 938360096 382128893 860246592 187088333 812791346 185798635 295462761 32499824 524880022 790655738 847584714 556874463 625005308 55052724 148042460 56088775 548404695 952776030 992375262 565304812 642940824 524786940 610638786 880851633 990112351 89551141 594929304 656959748 976096682 318553609 355642395 821786331 972449857 105861854 498593219 403340534 682682396 531824231 744452787 327553263 665488272 37708662 840693516 261061777 775403627 66570913 510062668 235569129 855961688 422048141 743628392 460982603 851282006 529939546 533256481 434748117 675067660 170322829 867236461 865523946 960995957 696137164 699261931 36407370 322825684 30534797 579515448 581413078 631585392 346874641 734346030 853993602 857807272 668337114 698749636 714037644 883489052 311199556 961326152 860288382 981527614 983291515 992389062 155980022 433765478 973717249 994552345 564475655 811082589 460862972 480918019 153842202 913932286 247458456 852371988 557282986 982612897 783128094 846256303 46115954 434894735 934915018 971476684 333350311 422010227 511610502 911426476 276453869 664161812 227815024 519053783 131987031 709685419 956097684 970425789 758317554 825791385 776983367 835202271 381730880 492239825 935092553 942380234 461313857 746801581 408526286 707327124 787751333 956327670 681169897 738090238 721664119 819514075 614804617 670531726 561452954 571926025 104532213 264116800 989881348 990261144 855683892 933870204 632936638 852340389 482768663 865893340 168494106 864499298 628909750 656568295 630913889 741542922 818035119 903269247 211510935 651449149 985910575 997541841 141764453 648213204 764964329 811536101 588349295 741992664 103518959 697720188 185024500 545081503 730813865 984718612 395293767 719308278 623380730 919706058 516251118 734028209 605672857 665751809 438411556 569436595 43562923 312762184 228219925 774530582 116511608 308292514 296652667 743675542 47011974 937463974 441708521 801883796 453515166 675987028 636880973 832263517 720661620 812148751 822625990 893702599 904032595 943699835 977703433 998001646 628608371 767760059 321795083 427235150 380704760 767128202 634755265 784692599 527504024 598050887 561306602 781933582 337416828 622017334 222293209 502611343 418678309 575367581 244898985 334252437 483132243 689730256 899685441 975091056 840426302 874590832 734377704 849687466 511640224 853958359 841010902 938743002 582198866 793083740 255844939 712176052 169900186 500675574 616969655 851173897 449319439 456969311 376510002 738081214 883641726 988682254 264056004 293998452 436692676 709291495 242412588 426071504 323006178 763892298 524857913 658130210 610063272 867996911 723668174 967679785 451367671 860549075 672302506 922631323 811929984 814530576 61015262 314921381 230912186 256127358 758572136 978460849 608371827 701963621 340035248 831984941 285871111 748797998 286680146 639273249 903106098 903130155 726671012 727051074 307367161 623757940 330860164 923326545 152772933 302924488 302925151 568596105 727017886 964534355 696368878 705395535 296254492 435561993 472441129 945910638 114853453 652000324 349967260 746046048 213671746 234559826 89860069 407478180 200980330 810082052 204515101 341782729 235532839 498588083 352373853 615486921 703930533 910700104 373878066 921032549 258768168 783065673 543081321 867460089 595036423 898313053 571354797 878626703 269226018 916555517 554840171 881887981 767961126 796341478 646745757 786812034 641913731 911158104 952041218 969351557 901482275 926203900 856571001 932778617 210102713 785621764 296279126 706286998 875189489 938982205 191385783 908261910 286119752 323184506 867741622 884108444 384234346 738116254 8008672 20481720 170593260 849706809 694232473 766483855 830172503 963290998 634955376 939287339 249346632 628393094 943027422 956711503 597793817 946326109 30019056 112911332 945486701 999142842 638063448 931987441 992257975 996534002 436874092 794251321 852108213 984712520 428735218 744257624 737985691 914610604 475596228 535261807 859817423 960741544 89073524 813248718 404881906 442125066 773346261 876726793 674295640 926525104 135840217 434813720 423182242 963597756 383717368 462277156 445051753 814265991 71615251 606606052 823612824 880130859 577278023 989214756 899468553 953116818 723918375 848446343 247468973 722772410 905962727 918285895 335664586 967285510 513753888 568884705 715624148 814488003 872090317 896614253 146075781 348878267 199006595 341090986 875245431 990036349 996050569 999159904 833760688 850990980 130826802 448663077 216377764 835635719 93465427 536899507 792140427 926634221 899170255 900984180 500556488 694628296 657086524 772887661 571825404 707820299 712286625 717626980 917704897 945018328 338867514 371665451 758694120 929481474 572489875 927012098 829148119 960022709 149190400 735683825 662276178 821562665 689921972 933651067 973403362 990910892 788667144 879049845 109927627 209021280 183434663 449512979 297495307 816363943 135241738 674358132 433859544 596741218 773692822 968424246 160829072 525437288 10571253 167982497 373525910 803983614 553073196 967951749 33872112 485022841 225257274 595932756 740176862 794191166 982062343 994266894 257135727 353816143 399767834 410032602 543098150 725957824 113692345 820647151 839008525 928487407 746362519 926269010 198369680 949430946 411194455 569365787 243366962 251796497 165027591 747027302 277450707 738373365 969576268 989258886 135871768 459099117 21283480 727305607 493988480 926098305 667381286 838058641 251163559 823509362 715534724 777066783 126607067 587502299 748887069 999137064 64554300 976031788 995055458 998957799 753728189 923837380 82490060 195884017 867705085 900086709 859957187 947214958 914572815 958466708 349828840 748533031 243776017 798542452 628556408 703722089 411702190 562620171 837495238 855947582 720968433 724972216 69510753 174656125 22879900 123800902 123072911 546167082 974461556 986529700 267970239 977342782 290827966 963453547 65485419 645110112 576040876 876719716 410865502 425065936 461982945 800130814 556110552 997947506 566438149 776156552 572472222 633784562 135117574 799783764 468803963 557703497 80943282 293007769 899561889 996670980 129397503 376572023 78653242 931054821 643066525 822537220 452918471 955495438 903063688 918271014 46453539 64763157 9812118 947409427 50877246 430856126 653214444 766217192 412328694 416316074 73802732 163914118 489911644 891493632 244059958 252869739 362672635 425187795 216066308 536511905 20350223 344403379 772229079 829438256 329435796 521485491 149658227 911185789 50400976 647703261 290184210 781113613 479332498 838264983 213173974 899012277 25297999 564041998 716542982 721021189 378545685 449881520 409414976 648066065 491985191 856792755 987439 418094243 745325879 754864145 198383238 673187397 341936037 694773938 930291228 973678127 683923940 870035237 864669170 953693924 323053099 961206227 788450884 955096034 188647522 719369449 26348443 710627838 555739691 819925416 306428518 751631131 149165782 255950219 91756691 516855556 485343309 938559619 540015316 644542549 753430403 891283485 874220506 944527673 190554268 812742032 448094496 594254167 839080594 930461018 77958125 968597459 922770511 945421579 640798300 733233566 739207381 980502815 647877639 964006246 202941849 694838926 905821511 977104872 303226847 580575544 581981032 648731138 672822482 778239699 305975462 483240128 78113159 986182354 579350654 739285341 305317247 366489622 491039897 500425514 997172281 999811949 282003564 476016132 627508551 916861166 125665604 833095661 837127766 855799509 415752040 717827146 152022033 608608062 881811513 973076053 325064440 885240221 428559539 920812365 949211438 988783086 660427845 734129803 69667067 685467007 249269909 921968041 125938413 307025579 256666793 751062792 42525631 443237189 270003087 618675109 134833839 370539904 285827079 843507820 846489536 890990636 79442768 898180449 221638498 955051887 618188705 760784761 416809960 483004822 942268254 971254419 807333337 847231341 761107371 952151496 813000573 927422658 600872382 817492657 568986337 648311999 907549343 967494657 20953867 577104747 699334306 700895967 636524281 768841255 559205198 647839037 648746113 769629524 541999391 748718000 732468723 764703119 309436733 977723706 949587369 977314167 834194140 973966628 9102020 351027674 68257318 541269407 317164823 802904869 25835891 943670082 664820509 729976021 544202312 574250087 829763124 895265808 300839632 629294733 251933239 655134010 762106860 909955517 353494555 593481666 568796989 586320386 861090965 868375445 844178080 855528762 452406835 839114597 308190473 980079065 727996249 893016124 812463517 921161205 323809403 457325024 299199736 558987830 312733307 704477940 677867869 706819442 340627988 674348510 900439094 957148016 211584714 339518461 327160593 707047318 28208961 538855368 723676233 770226906 595299625 711692080 257825261 659271266 997538229 997989444 253820648 640313175 795328345 980067089 928741454 971179261 348407795 521752245 17786203 35597711 229881693 533156538 290761271 911369846 422070260 557391956 898856997 995873054 445950976 595490145 554969282 611628727 7921119 701276902 258253181 623056720 193656411 638744676 531183186 673845119 517714432 686954291 273313310 705753101 692817114 857720710 995887735 995948273 125896490 711596955 716023583 814812539 783583834 807592701 206367344 478043263 140627358 152259570 549816173 772911523 53698138 462348040 370234424 996757652 366677829 390382176 933907974 946984242 207870900 864009677 410152716 655983893 22851462 824395638 917907066 941459944 988287504 993837336 501861828 561048841 809714900 869152526 340713215 349070081 832333229 939659542 514688771 892371524 914966073 929889643 935207259 978097560 97318722 480584550 702924847 743326676 424916193 517526821 367261255 574311279 947209755 997867303 866752238 902866440 428834682 807728868 91772112 309050876 373945695 681676383 943472803 992527161 829097992 955692416 455105151 909380067 854294455 984051805 381658660 776777797 113058929 253024833 615846999 903803965 517888300 771042051 393185828 703329214 696380949 887161461 580035685 941332287 561519936 735129601 810405626 830704724 279622565 934631009 356703771 562062071 654176514 959496404 468331948 497145379 681792571 780730270 968416844 993819936 140207067 940003026 577558187 891394496 791363405 962070111 144235991 145559420 99778915 530322364 239985858 386551474 374948002 865963039 84949942 368582390 963655324 999682776 43822798 445697609 479321733 783368782 509673422 526161000 276333108 566477931 962770162 986138337 902339080 954823563 985374845 991874179 37045969 827243768 616507076 814938244 631813620 825140012 457470242 567466849 613261157 956359122 375116839 615638093 143971664 376232545 833234623 918406196 371399447 905695476 115030351 476616895 296574450 554239144 436608988 477541299 912658074 991734728 632629418 693103442 889362571 907562706 803568740 879373646 342468988 842940458 95143257 922982980 49951288 719490571 379301689 582592768 550002852 860468868 500732263 819867254 568065462 778030134 958964581 960767710 95369951 711778906 365573719 429570472 993860418 996253118 703527049 858028237 404303907 842029005 720200898 867165996 512311826 591605141 965700644 968531448 940075476 988359978 697574297 855458763 392035002 487914512 969780176 981231149 848402930 889563361 695763718 938937082 253474274 654652370 642591173 717159599 532167674 628687640 957279120 961138666 296043802 793994323 607838357 896637965 900742944 962803860 239411124 732195820 651741298 991881946 139629560 245255415 495609175 816372520 127904483 536794584 433771178 554590366 898826868 971322426 371719696 544605278 433339508 632035426 47502001 767481165 491728537 803520563 899162256 930557941 440391533 651902284 577503510 995445743 201106755 477541255 42759255 885499121 219844314 975659490 872753955 875136453 857183250 975638532 359057232 627175443 662963800 713424424 58163964 119827366 166623618 858747317 90704147 167437175 584122651 823229145 551041073 798671824 45931653 422047805 712860821 904548601 34058917 579275760 538452348 844150032 879009327 948271042 957795856 973956281 394682194 512241636 257924186 630398734 930869617 963065769 654509357 804284651 589512320 885234162 53047248 846779872 362726226 919363650 363960155 532462524 704520826 991232493 401611680 732570217 358318412 607374530 590399584 819139711 216361214 698359487 436242995 840351280 438841935 715164362 694328027 773024307 664698768 815366561 281656313 718933868 36594687 304755790 405962896 741714851 651499428 688484847 635902638 936003170 555131337 672788914 391713957 727961855 952542533 967019895 547870312 599855839 289155499 603893552 18450248 204507809 993616175 995044055 407399227 917765653 862715054 975996954 91495318 735530192 677444050 882971622 849028444 942366109 653494711 942904058 603134665 665836269 394408855 668727377 770290262 827382080 789905909 805560883 489709446 866699660 545603625 894445077 542319119 698975929 876706347 954601418 417054045 459843202 581910461 802478599 146988015 724364077 821404482 919144032 119769490 716548764 979695700 992537683 509179706 636581232 780495812 992125247 751197287 959097438 53606437 688381918 773411733 921629653 911694696 991602660 4723035 176004315 628770962 646363048 225827379 303852055 668632238 876326706 487997646 728679061 134614266 690837169 944864084 980657305 35006086 384904545 426307413 701534865 478767831 947721514 266504757 323053372 598043704 815697164 986577455 986914293 588991406 864511207 302208751 564567224 438665340 595966683 275086883 377944249 614998467 819955688 963944790 975601461 7536836 897522239 604832369 631559805 992224196 996856882 29491342 947838139 565183849 976368257 853994753 939381429 187329332 206060505 80657830 584782996 962513156 966310590 621969922 847249167 540228530 821802694 729449098 805294619 985547857 992932873 751448163 938845712 746730215 768356222 827296122 894820053 117868985 699380649 804511444 820895638 45912912 325780008 160101801 357068525 737621693 761968386 200633386 424379250 59524341 549346890 104382584 161580891 53869108 86018040 601128050 665349275 48688731 565231322 501956591 765621109 522027203 926949680 657483069 834751602 768288259 928288440 987812505 999767326 790921336 877320223 469264167 513274257 260295070 816386713 291189806 606436970 28683517 611125428 195637311 643484537 90424473 346102342 286049913 604204139 893911715 895893810 872753702 974030912 476758406 485706574 143026370 889984691 75626532 899913282 394668351 532204958 930424024 976056356 542789399 971071391 591336505 861331295 726970928 789078021 226441728 850890865 794003737 908306082 425345458 588443582 589628136 827467840 63181515 488956328 625818108 852910565 250731306 979739143 833167583 935571484 116557092 143207028 563664187 625061036 859618352 867526537 583981988 839984870 600513691 913055753 547435014 854246646 77601087 274305729 607401264 642972317 423837486 436052028 864689987 968717660 517066116 962578499 895912678 905558669 311239739 943384768 156162020 169682094 817720767 982232900 714700624 968684533 675708790 699069931 734766715 908558051 514138840 517840806 117641236 626403808 589697669 732514972 712572545 766472140 853840083 995221257 545708604 629789399 409421942 643023756 897171891 951843781 68542014 384975357 548073988 583242163 696927489 848595786 697630404 896474952 427743737 532888435 975394595 982513896 748041362 930537232 7158509 531820588 363782404 900567020 922675007 923686390 643669601 682163833 584418711 585785065 356119152 948852190 574829268 602888104 844565912 925726331 984297696 993561133 338525476 918370862 865409911 992722725 70072582 751185496 363272046 883944157 485635944 661511156 821518305 890909150 876985505 993542090 612386521 936967016 620045151 928847408 809173007 884546409 976188528 990688779 461809169 464271691 633641569 877283911 375577173 664095076 692653558 971728894 562084064 580229386 214946895 315727666 115210922 739311742 232478011 886100227 297574957 398945698 648110470 818534410 411202121 794890788 895896665 963852869 981328641 989814525 326659424 414803721 740495830 991635558 372926949 982135651 480707626 717492749 601824324 962907372 320042411 572499512 741503231 979556706 807136619 929165340 115702493 322008120 106400218 229707843 236327791 452581882 201897605 210931487 737412775 814871204 634688421 726266169 413838064 572979188 986038804 992023561 969194034 981633358 391196246 992134588 689392230 774627970 822893626 910257864 437102595 451712239 675966558 754570615 494214592 876295491 738200187 816611958 747993049 932144706 505695520 525216484 211545717 488817409 853785886 998696580 262518098 935931263 794675455 959529776 838309805 839668752 484732132 626638147 935628381 987816994 144663078 945587209 19162222 383718029 564431382 866076568 347789895 428276581 113180196 517233455 488629059 616899460 513013990 972725255 63271776 270407779 59953840 483342897 645070392 941448704 219109451 609765469 272283350 435416514 375254294 914963442 794071630 959671409 605788810 763166445 340299188 377369423 812665262 933744269 17058503 570045071 294654143 432062607 784972888 825491184 711327425 989391713 163197344 900112792 849835788 941144244 340937344 994885236 485105398 937000345 811378073 858917958 449077504 661666816 628613105 887210872 98257987 315046008 394991430 991188175 740684262 749026004 87142103 546878696 416328873 927569417 280674214 731642417 63400176 379054753 341378462 511616154 418152063 866744557 361691292 709114708 762767053 854528641 308568009 966803671 820353515 961424183 809307266 880842737 534144727 667268702 361575283 719933796 690216422 979440760 907767918 990845204 493633624 932105648 664297331 845929241 137572452 724367974 832057852 832842817 608805168 798984096 552583950 909755063 192200792 669599909 120483800 298307084 557867302 796025685 694211238 774218980 99976335 534518250 491754341 989587347 34442633 188552533 729891741 950919896 19933098 992024043 852321250 898437226 670769851 875129218 145913044 403957121 61978485 209485485 835107351 973050862 589884432 902530577 440490854 698883193 547040854 968459741 832613237 974898278 60087783 233420084 190402546 209160413 49752604 719561602 989063313 992650710 696711633 992615258 470044036 923266125 810797665 984257827 130963332 853748059 513608165 539898226 768130955 917161731 125830992 235302064 411459223 829383614 339313654 524297002 10763253 114070622 526369102 949159712 425140259 579615123 136167672 524726732 660078476 804775466 427229718 481175590 486378314 809742839 930162343 990826635 262738426 725866725 613856724 634490432 741195347 863748906 347928156 573217246 389864305 929270068 651202136 695857748 204707583 969029752 778514167 787350099 710536315 829942150 166613722 749792511 633857625 735143263 922217991 989300715 758954712 938249560 608542054 914784387 954466937 966508094 907132494 934409443 828518786 991184222 55105160 830205222 460657192 762535527 432968939 581879090 360408189 603385784 312162184 501829729 50244501 445676901 513813022 679818629 257830358 352291786 187750127 678960089 72630417 524712633 752780694 932489502 33703148 472833351 87458094 496615918 868580324 970529445 83132571 242248969 123151586 585391162 776316432 930849466 872376231 892873613 223043379 886350461 713445845 868830092 566102484 603296024 577919735 691171332 28515108 177087039 239778762 485343134 662434488 687821093 236116528 656825756 736339598 906462421 254299844 802485181 649757486 799612066 588905001 882912405 155526950 336454343 71418372 772344941 343371314 779357245 810695251 963513166 144399206 279451164 381434306 560113820 979626328 979834723 781283622 889677205 959631402 968634641 925440817 948341085 612118843 762188950 112111140 859800990 881472398 939522597 747105064 907250677 412661687 999693133 128459233 603882778 673758989 965508055 822217003 918298520 889140441 915513155 276953920 888794705 229567976 585308976 368784868 458007656 341200981 995311080 326586805 338483585 774071101 842581057 896263881 982763076 350332435 855625558 305284916 588684054 643554706 803645520 102227272 261326612 157894986 192471414 114033918 252268672 989307670 999947176 24507468 30470935 829452652 934095529 374000819 402587961 22068402 190699292 333766530 764590912 996020844 997977022 154082730 916832385 775628035 795885973 475397752 879729846 412682995 622039989 714438751 855369974 863116890 953701001 157528629 893176412 183747967 836961174 502894680 703475152 466818486 695767883 719024975 759367097 691636073 788028563 705006523 804499488 663668109 700117714 989609728 999725621 946132050 978211622 919115808 957189987 470231073 752473080 158269209 183183485 373338570 651066016 324446218 702940859 923610081 924980801 706183962 833327583 110814911 816918141 750277215 792090846 125063219 442674584 74561239 292348586 930917660 949606024 702821352 998983699 892566695 915285495 361822807 466152105 167320737 817624533 198529456 854611318 642613122 897587593 91385924 864215167 525807588 880718002 959317015 985619761 683637001 857763163 511388668 920649009 90764791 982631191 14229553 962680453 565963402 914965120 793953708 946529343 285234123 585523035 48201970 642451808 84512931 447342458 124902484 740214413 359551428 439562703 963404382 996499330 727528253 765180749 665502315 672087046 396592729 925952582 980871241 995558580 249116137 293824791 520163861 936336705 645864211 930699035 526334418 992289533 569732353 714988051 802407751 826942154 788022478 925465149 496763190 601240547 620043764 775088512 979265832 984546149 233493743 405436929 712562434 737601146 389466952 627963430 355218365 827485846 519980577 566506587 747640788 992524272 858667107 929273009 43358762 869695317 481206383 519655130 939681499 957203598 965176450 974591967 501358718 585032379 715594189 930730650 443459662 985207530 72799704 256895544 765544231 834756387 607535332 758221598 451226190 981009498 445656106 839899733 848211947 849968314 700316654 758142577 40767906 764886138 749586612 774748962 542932794 711815247 694349251 944937670 598067274 690288939 276967473 687454889 775493710 825133928 329869507 950235656 596833932 868873141 625738228 808365618 944616091 987191497 591466697 967992261 619749526 781406998 456969192 934917623 154818663 273322546 740995931 848132835 534749499 912179453 604795896 644955725 64336878 369049397 985920055 986666311 157027887 735295798 868602012 937753683 304958420 626894035 881347844 920418945 18095047 991442154 978833483 999104019 453057253 983462638 227725926 632775073 44996231 207215687 967530540 989294354 805111523 886425761 209700987 830548531 899103520 910535501 776473780 829324404 980390863 998844265 432662440 890165283 46851032 494509413 520538286 583609308 428259389 917003055 681551450 736397066 19365567 439388875 13598762 423498316 275986694 905270899 452043583 890398961 458412497 641253426 325395652 509883376 652485859 933555977 743502246 746351802 89006862 595932564 722123323 768067992 235785431 561280237 555669336 755456644 966931465 984293489 590683547 961409516 152046399 309782554 679429957 958965408 292155707 323036000 749733903 915752785 772287484 819930448 978077961 981202107 626448670 963914792 48634720 844754466 198520626 243130164 215377958 300445164 209978712 397684480 185261093 482348902 593316042 859579757 544185454 774359957 411798689 657251838 409167281 433098409 693182193 971727383 83255050 920137314 577347994 981001855 957714950 988938315 827712783 837030947 605777265 915287896 111105109 450557219 535569773 896453516 643371854 834901554 884286988 998635108 577485496 861812084 976253232 994166409 558540150 883633914 96984519 561563694 103612330 317295060 166371158 716480236 241272470 692429898 313242952 417787270 524288437 784797975 215002462 347085827 292113111 491608296 406243113 701577318 205140114 532333669 344282683 763663636 781519437 984710921 134970849 660117493 59393680 358814834 962390363 984028368 474294546 922091006 512069995 823923401 957047732 982600722 495013132 677628474 90011226 861225208 434094987 751808941 989235835 992725819 55673086 935884114 295222579 549159868 279440912 307630158 324069751 990572560 294614371 856690163 694414400 917355159 926598559 940523707 501657956 660064175 886449779 946829332 842841759 969087866 283732982 748244408 328126978 602516623 313814703 820848807 642010321 952336251 51024335 581973241 732870491 927970229 327838825 362188445 708412550 961049034 434419488 771906273 516525634 648007090 575512796 584962655 152507529 518185650 775341370 888046322 681407517 831613261 666010799 729919456 454294335 822698299 558015386 944262121 940612736 941970542 99443698 346063680 938617651 998257922 469486700 755717548 162736318 758781010 366106600 522450193 956438187 997669510 465182541 544038646 167168023 564931128 538245548 743866631 777080209 992003711 284063703 859588112 830968655 952136513 874177185 995513034 902881867 927965801 810587458 908980829 239719434 325184108 777925744 834952723 480767356 876371685 706165374 715472810 903803717 977066326 199415337 469266337 276674649 679522373 21168640 550428761 247120884 249085275 628016345 664844349 193721364 799057528 61034882 140516781 558534772 788904225 297908300 949738558 937667550 958092808 489268090 539026111 557391135 883752581 76091049 286974152 510004737 956135041 307899589 433728440 961607337 984476801 14918734 96770592 102243692 558848929 994944901 995370819 617756620 653452227 8481865 388509939 235035907 986804883 886202099 960982178 922066420 970443551 563083936 661216196 357481148 873268284 451777103 709568841 49418488 391063710 407549368 663638290 210421248 374726589 753632733 903529791 169290908 629869387 458499536 775776668 429762710 841834706 280153400 364832324 752847811 835349101 294657635 762495014 486698289 816162011 840685716 891541379 69123722 95797916 528841521 635724308 943761997 983115210 43006237 425381357 748279636 870770217 806531605 957994915 210957986 238354523 560094415 608463988 970408206 979647116 161904699 399453472 739165071 868277191 179703138 532153063 517019894 588350082 349993903 571923798 346405656 916502270 806384797 961394371 169647276 871907356 236998994 655294433 89783060 966297036 609626297 675665111 17245194 691051161 164161680 250810628 783599761 876296193 480841922 560541880 939487197 970711314 813672279 863181389 738860784 871732640 804737620 897785623 701809191 992247343 192170321 193185549 220862277 555604893 451213257 843540109 661107917 932644515 161940996 344336270 222813808 845819965 377799086 555098195 846248508 881819841 303047894 745451322 141814268 994688285 585621039 647013475 139188597 435959532 992982578 998572667 133486983 861787240 219451564 958734709 946970563 981847585 389921774 540131326 585713098 944105963 158210338 932821443 93824721 574875502 353279552 667680581 816308720 916497435 850209728 983673755 478487647 868039419 134435890 337759193 965246233 995450006 199116636 261846991 239299055 812379571 801656601 991132630 25217068 807353578 895271868 968457241 642163883 924369558 406145993 727872082 53119529 178286526 487074787 987673085 345946536 865165154 456945719 586816279 125167786 490615375 224917989 791309485 659246759 734797186 350401590 355734478 930291663 960860312 184852954 310641648 963108900 989773731 17456022 534213407 550758636 851621290 851803562 884191309 764070426 765611207 514660787 547413735 337651739 959211555 411947424 478545156 836639615 951742136 357797384 611230514 388612643 494383578 72976996 145795644 108623650 611352276 76330233 538022601 912987329 945667123 244819863 483791664 779974972 833683082 67400914 937049959 463199076 775381118 321084750 826298128 564197179 580831850 735369191 765233663 472386822 608785326 561913001 797695352 766454660 787320716 14426342 663433178 881904010 885115065 438393554 696516350 234156324 704016718 961199230 974571678 56065623 937706565 692025398 983988471 217508763 770112257 558735221 975586252 664447439 742235944 518914700 633824229 607292044 678263033 680144011 996786945 113741055 442600973 849412056 948870584 60577345 773931174 281025635 439024044 694900597 807094187 337738895 422835228 641975042 820023188 981961974 996775039 901904507 972924831 136769197 379782761 506986966 566692206 888131690 957486341 580865014 785487368 448902814 470307258 887049991 938584813 474542968 766918845 686370612 948828935 697673724 954509120 683763734 979182900 672368142 970760406 423624446 489972721 965242276 995917974 840639189 904044900 600499983 909543626 252057721 323958823 346812167 960578784 262988236 608020485 83736417 832082870 387784978 980916510 811910933 856122958 891651219 909017372 755424624 954244010 737560730 824163961 168916269 494474032 244321929 750337329 264818401 377948834 794776003 835567803 590144759 983364197 48469374 779594880 378274921 723140771 893701310 925811992 558705056 904170371 591388891 883159621 106802432 453131364 183393834 658140128 548521511 814463246 179986367 310982939 782637306 933966957 875378179 910024047 863084831 864391472 631559060 667407760 530622322 715307829 302462601 347424402 439347621 621139421 534928417 620222099 32633077 977519788 213617975 858703944 858770204 959918381 509727816 616711305 188800258 679760902 66321979 883690997 978194881 985013972 622908288 656847737 501300979 707543379 91230659 527858475 798622509 804797296 859126130 899566479 380460294 904376022 891814819 897306014 97611733 326935894 794905779 818282929 924155834 980317071 690506739 787822547 840379225 925078180 867120805 985170436 667773954 807237308 949835526 985883551 743836165 985445771 488608088 512135106 557682294 818924573 593705334 913235606 324822366 792572061 302671197 391927460 28176158 435095595 123279979 605853275 133364239 618384465 266305432 684848120 745241641 790779777 944775383 993244327 849619420 946133010 340416527 728055988 108397733 968721459 312861162 603598436 707750120 835859465 86360957 551817503 614919513 644175184 349733526 879238893 512517480 845259820 892650551 989846373 578875256 896512704 132796200 467057307 187252623 264867365 19067134 104480330 393842316 558852209 381266731 763914074 247914164 736346067 104992294 257282408 840008372 854792943 139091123 501317659 265137281 474737006 507367175 586153828 628864691 857187063 186842682 443530066 72697178 526829382 276143990 954981418 143870800 751229404 889909920 912772189 439500540 462474075 19581813 392458461 107815081 382109492 491350051 645926730 691180196 792362012 770763573 773631793 396818228 720859493 778664664 815274513 297526367 665799165 59557121 384317039 975789678 980294738 997286799 997637664 650179298 993633833 300225139 727133013 776545347 955396130 795622328 870770613 675142241 823101695 719045464 729948074 615600003 652927618 550072424 673986780 630624706 850693583 332921663 405698950 591476766 823547077 332815994 887198623 240262728 593213450 559069667 609819049 942710006 948134819 950617831 982340414 631672993 803987747 449893221 775277057 303117129 505924680 412700925 642782424 225769929 789994213 693152839 953881402 615261157 635745782 277612354 787677402 41824259 771114821 821471932 907396577 994292421 999161903 980178367 995252115 782771442 783872500 991013152 993082912 410801606 500469591 410890810 551130433 703468413 820474077 862737092 933413867 873246636 936334896 178950664 368810795 12328602 564769645 631176457 641349535 253175613 293139103 767919603 948076723 151279901 395316789 833949921 888172361 382669489 388009116 684256992 775465413 26825758 372548479 658674338 878027323 507785645 590382202 701397378 985424432 593269310 779015854 145938325 921628121 464473812 985866016 434402701 977622866 748203841 800335367 753200196 776728583 319972594 630193968 729386906 821718972 272353941 469207336 519509668 910827947 681974968 819241830 200402409 250213561 862626141 975031405 304294553 661839181 536647849 663395743 565570673 934043368 449802486 764164507 739004601 944443002 569324178 756243964 493698014 744457504 841986403 952592807 603258719 924541043 435575010 654379144 92474378 105334980 312830678 946229601 484059937 887194136 220409556 438639629 532993000 801472077 509324775 894188218 724235323 821643744 466526350 546768502 674017026 687045659 902515884 956305184 768781472 867446102 295870118 821916743 902694989 926158926 925548539 945650624 46150171 782378664 572440149 766351379 254576580 927819964 904936853 928520621 856766323 973950095 154016649 682430867 833195092 982185894 574383945 768167947 926279030 937277167 554261987 905698045 700990897 830807934 387915564 427388619 191757791 329774012 706059912 756016465 226790451 668671828 366341173 783429183 446396057 834906208 138366257 977378722 976639671 985076588 402699897 466115489 574144026 957393790 590840927 981609401 957467875 959904606 582997243 588757079 499154953 856491108 915940514 964006960 740910343 904421351 231906797 710920951 928100983 988884570 76103990 268977331 326232200 977377747 303724821 704938688 37566448 608650473 466299070 956490112 33200557 433121858 779383634 845015008 343173902 636132927 799910244 906630053 811479922 877011827 342794506 974736808 912241157 932905533 753669074 899436758 768171385 978686557 797154748 930680118 905629613 986918967 694262457 985578069 169747155 286247219 856125100 984333472 101256785 530260200 460197719 488765538 965822770 970845015 386419504 718259078 580086431 828866257 427613491 477617116 412915266 762394544 285184045 819414460 386156638 834292217 455755979 680368408 910242564 978202036 413782697 719826904 954509295 960680164 445788436 598706655 616194670 911251392 269174685 429259382 51774498 528631894 697214865 914673098 728235391 961257545 404419505 973030291 948450765 976464303 776609966 957791751 499830398 776651177 788896259 829553519 793320252 960158970 10755756 58138687 963591641 978187317 848860300 938863492 32476783 448193400 927486907 995069572 45104356 58036011 24754192 616191067 189171936 202275563 457652927 651690889 81262513 720368392 692702076 964638427 863144567 899130343 363978562 900593036 599700174 895964882 499148696 818568561 820735795 990422521 739528621 871436188 910155402 949211617 309096350 521526874 332329420 890816256 937895127 996884931 263085460 570534764 173971819 521159485 422186225 476193072 762946221 884176645 950588106 977690877 710766695 812801901 626444996 841934193 407814243 690730874 584405798 630351740 753327410 965420197 659715186 774180732 56861136 669057770 815678672 898067541 410368861 549895333 275530606 514216279 291713406 509762295 389791593 602723825 351406429 771300484 244260178 493910207 558126427 667783990 102676683 730912707 586122836 904536679 618148959 880936530 379088475 841007834 881945268 988043098 687824215 957099973 255268083 925425945 158952827 736064294 923942004 989814079 399519482 401673674 947259313 963685206 162844395 701631142 913922990 985727826 260391034 937471472 158390291 515092628 824035844 883544669 74111637 927543011 721135256 727414000 611363667 694587631 518152429 626324994 417880629 621054548 438389511 507450257 124815493 432490317 160290154 752711560 469132784 893587444 837247799 875974745 246144781 406728685 72384374 386361891 14842409 721633382 167367605 706589650 716806854 746064735 693113583 992085358 527204988 879230235 248463961 407827128 901504536 912233575 516823623 877722604 658510669 697724294 371377398 752419927 410578245 808248283 896629853 929528999 275881725 523104502 482670177 706723140 121577046 602523935 788823058 902028772 882205634 899606641 831846259 926633861 659544900 798963407 434980017 927209192 775621328 896806988 581957097 645344761 492587566 576577361 617196226 652265208 980640989 998580935 893384605 987961623 530586525 855443349 192389317 530760583 555966352 576468037 776790623 915643115 477845504 551752971 362179362 576996693 419938310 551898346 61220452 641455600 24049345 341812916 687000402 708667054 874756536 951889895 722220665 851185949 845518186 902091080 918153042 963281853 492886765 827108442 672470052 896031679 280591870 607472085 395259122 417355434 938529255 974002950 888242074 927229407 388238141 900351517 451363520 554710172 756887364 844135067 228258534 704007906 641549503 827569819 871126131 992817158 758085837 873761446 209819704 664532717 177836847 880951438 838977400 851068239 586540979 623835793 165885569 431958106 471052113 743740786 981368247 999395416 445073006 660951340 532419929 755502721 791747610 962291115 565406980 912399140 471657904 558437183 684023602 844608836 828797263 828920619 401156755 484694336 917218144 980474323 868983365 992060578 179310920 708822065 165943857 198863264 307849142 437177273 386998986 396993709 131242959 896932428 410281294 549778213 940673293 952532104 416099937 674059392 899690025 934645220 938812068 996365501 736807948 749138999 189082916 256594093 612122038 749394914 236714899 693460356 630094662 846230562 1258977 487918554 727002572 997799391 891001214 948585440 229125256 397210427 943962701 980591580 391758122 445212817 594877728 789581260 234158926 843953828 400039027 754288502 894705789 998150985 432989307 536724079 952819749 986888478 917425937 976591193 990217901 990667762 807472507 844465183 367473898 734590825 905675152 975696638 342478678 394527217 181030078 230252964 174173032 900965553 51141795 869410778 193092360 675319386 278654421 974772677 23431885 810604244 54408407 257927320 479969657 891099736 310327843 666747865 52088977 791975672 675296805 962065372 662782868 703487009 3177722 662648527 47644027 135601814 748160159 966292713 518662944 824426998 439087118 770186071 542337240 643184188 473618588 997354736 194970921 640838935 950179160 995539193 225987014 539428307 641065093 774121959 193120369 497834171 614858891 896662526 9174288 333317494 86403909 677106360 678315126 856655261 49189820 762706544 764089847 775036155 568532999 746942399 764320270 966201173 213400414 241611787 981965603 985535148 547684687 932980773 690571563 751229802 620810028 688495687 989999444 995027522 192399146 389238351 372038098 394020489 510043900 675589176 865190973 979485717 747308726 938504145 827693438 987718327 911745497 977308011 97655529 432770090 881904755 976264226 87963284 361900551 687301200 711022885 589441870 704391196 102461910 628020660 997386188 998768068 574477929 952506780 195420363 570653151 418920803 997776753 213980492 705427985 612900269 613209751 920934669 993681678 865260487 904938206 874700841 935680421 382897936 711952066 355618612 774965074 465091179 545574395 707367264 722048793 146428471 665312089 368645900 785895229 610259859 754270083 267561605 607962265 925398102 995321989 682734802 760811230 30382855 825109426 979990416 988450923 867832110 989734045 19035471 162702287 727552388 989878387 73874174 300858026 292968552 583995427 859326146 899804874 936241992 974035441 758205072 803713431 392305152 948509965 885025373 997344211 834189891 901436559 81642532 288544763 207112243 271543666 366539294 616640144 924074860 954683373 268608658 450414782 635454105 972178277 743453352 909836600 952673123 995861664 533241063 587663851 783895156 816917317 286068673 693610430 652080328 808632484 549731283 684155844 382443487 899569117 783324523 830625053 275853437 413339621 441829824 912919061 181934898 654690651 804173074 854326199 490405468 975108899 709157536 737367441 22401183 852496077 483263332 983773315 6525005 193756940 881652217 904997671 834443595 836713599 194290496 709379361 416394828 935836512 3196609 713973326 351296884 967450457 116372180 218280609 970952786 971459631 426914294 762168522 902467463 929413962 268747490 809864027 284600890 715966124 847134925 963383744 505747791 560267583 576410612 584141266 760264246 880445793 621398824 824187772 497150028 774377695 696269268 786461300 352227256 569714415 616642439 711595354 466185907 545123378 665454752 937001059 494445054 661993390 463611195 883319275 66075757 828295985 363518107 436082330 289481531 357585296 420875233 853175574 784348200 889136098 573432726 863685051 903982440 947333201 165441942 948127315 819471337 947414254 598457220 860081653 770136205 913900529 453218298 958530160 963223760 980061245 743758905 901239376 409424337 880242985 153441771 678858687 707229671 846864980 686633359 901376088 985096770 999351606 435053979 969717476 743302695 992317891 388352121 657524231 82456690 679482555 908388253 986866704 746262739 926722909 464099569 818487179 310575287 519902539 448294037 655229736 450491145 478386334 355514216 369830965 150530234 188654730 200922197 262722639 669535406 789740784 266863407 721205413 550342509 950744182 391788023 746338234 482443782 975120256 322917822 622252933 258585485 355570361 401845985 790547541 468529199 999491121 946468251 991374385 349150583 373369180 200297881 266237533 98822879 373327110 869543798 902533206 923127332 948139527 880804877 951142997 744694327 982579633 310066525 572238611 884548896 986879770 358954914 944155055 787940975 845055747 435455659 771143386 696437925 966144841 430369175 704392757 191108178 616823373 123346782 333893341 464902721 817918799 967553995 994152329 22488372 478006451 693927370 997751792 818921826 864592989 469018888 549736617 667237803 819680808 756858332 850714104 532025804 948787586 950169320 970675909 805786737 914502942 445078474 987758849 388515806 599576219 71443064 337125107 155058230 695239601 783937324 898472355 821419159 897559093 913884655 945861397 176828937 274656813 439814868 572177273 45119568 501083972 567253787 798946861 609216476 827930140 769726161 908188484 87862589 504249307 142547143 881403020 55436293 402241172 170648493 506805907 519752841 879377390 855379493 959912608 319770905 456753187 390714167 677043161 268110814 739874377 907444352 944405696 419369176 814195543 454136818 823564263 48141651 416243888 630097830 630877629 559918029 628026897 371479250 963939758 813666916 911693056 755048791 761645320 881016108 986178889 473223081 938482389 359780570 751176591 922377260 995750876 131308076 238234726 938915971 973860571 455821092 705940160 900499607 974838576 38760023 767515841 263852754 996413501 906403673 985321155 731711227 935006755 206070046 559177062 117605866 806950153 42749303 932509606 235505065 978516695 264272088 763214063 319935732 619354686 466258312 577402154 329705322 541117338 438701314 925683992 606465494 624212209 464322458 512079713 730875317 979353356 935196583 982685193 794035169 795432190 92796593 760930364 106807170 697938039 92598493 759723773 995033080 995672284 517050378 653855882 810098678 856549699 460414147 642591652 607608876 927742310 996941736 999236322 75779862 898006928 287154246 889726891 30991489 667261824 183877622 689031861 891918668 945242756 40636740 168935879 727867040 957166923 875591432 956650533 864293072 971296059 498255538 566712759 845985045 876507027 648018119 942862640 375702389 889548901 202554031 785092454 997157333 999058731 667874103 920631156 975628730 975708675 534938220 899454877 207675032 661752420 189448621 562030702 77473361 268011127 441714441 824966102 15400271 227047090 420003566 651721182 513888567 837278822 390037523 536126348 667656666 695892237 568160064 887835594 758567662 932191668 295547587 438385744 144480599 360450623 672265793 994186875 402334944 929437244 975265418 986410452 521027568 562588087 263342205 883548973 393436538 622785861 141355534 335661248 437317071 925817396 463644995 521998903 710775955 860583308 673280192 988772829 842257729 895425814 983037064 992020130 430115348 849159731 490237393 742568074 433743478 617920811 459754415 481959512 844234359 945801965 900071205 935010478 319083265 980980479 35658550 674248095 667966347 987025492 366798799 384874992 700823894 911008778 569242621 841693467 412602706 489761821 772979727 876268385 646156129 957903066 504193760 735344338 77812807 579240286 914677911 938267967 93789546 753640441 570183853 891058579 851136450 851449781 29840999 818398918 12021301 384293816 915696219 980432956 2108281 131422486 336467084 837402015 36993179 533498387 814953992 954425408 442635581 594978291 220008597 300353371 677047944 694525819 220536810 327474558 705864666 783718900 229037235 482805720 19994665 977034240 510811110 979988084 409216127 435287165 325145497 622473496 922716503 929763302 132881290 734215980 678211888 929054724 67039422 588206953 31464178 288610800 320929505 932680134 126343246 339289316 680534777 938734474 842148409 891123325 942659740 993140741 212135593 348823170 234635950 733617583 237108193 591773018 633408937 762794441 709982357 719433880 479848644 637003279 652924322 853967736 63300690 901058724 835326796 882818217 860809931 958089709 915480050 995894829 503890311 623737685 510454869 784596123 842513994 857402109 978093220 997237410 992937437 994410610 258520480 710514863 206705584 658818587 293403605 846077629 934553726 939126319 454521856 696561401 327768400 839680669 96999516 237407151 125924148 885752643 348056230 697007513 68490362 795811659 837716217 895097522 396297504 486747976 323054404 592899536 239235089 746417480 272902968 942048337 406840012 416891102 635412094 686299731 4895521 760296126 624647542 965906653 826031323 828867628 949763168 993149186 425945665 801878547 554592443 758314888 386149702 592732572 170933410 275783981 863936029 906098258 7124621 153867854 647905407 991229857 468383208 850921996 634103617 684716597 429332941 945465328 994917624 995498536 88287892 835824964 801482551 891429381 270275461 778831831 296628557 535378282 319796894 367337532 806476782 887005770 646193572 971048299 825946101 840826793 220025609 282835083 813690619 864485942 632434348 956787898 289819996 907022004 287414149 860456536 6002390 250155526 335666559 576285777 530743352 686327114 295086481 788607091 874689454 964404325 65464146 972560002 328545207 771584637 372916802 818953233 426588868 594399702 95174321 621898289 762432708 961867017 232687968 802080500 313941364 666347606 304061573 927305184 987470066 997281901 26934624 756926436 179448684 463452107 450791109 683965205 239556373 364804448 889581033 946618785 24418308 195564236 196564723 729528452 841190905 997883946 854523174 938681017 53524507 107850737 239974348 691672151 817340116 822848463 282861962 735776697 930743981 988766491 44852543 77250677 662704943 897881925 465952476 691935187 339149514 914736790 721110992 724705505 369922900 551882138 422386918 838370728 434512078 553932878 704822965 819309990 303797077 520289255 167568364 387076617 248593581 947719628 2695802 845473540 741441250 911295436 167008858 721477717 175381522 609895685 8986904 964548291 478304831 532728407 594655927 826372044 544085306 888730266 671570256 876100659 772498659 928983520 449488862 826846601 762922712 842220565 481537256 591315753 7508838 498648750 586988405 717513649 383075237 492169579 474532625 859371339 570149031 637227691 777725352 913197392 150840882 379232459 419540264 835246923 33277410 455658880 786758219 812584622 854109074 985124792 834926495 933743195 604480627 887522861 74167660 856041341 355223945 873476345 133296355 951482873 742154120 858894099 181662919 622111740 82496002 662342608 224546132 645825079 916395924 934839418 356320928 634738724 335789252 471984668 246750934 717973594 604240896 716113691 622954687 953086683 450944218 678351948 154263671 670775591 309349017 863414274 959072012 982665564 947026390 964143786 524414738 634190554 918581705 932721332 649289541 786915403 523797928 669106986 987431161 987863595 593946446 683523016 335505235 872369678 717770174 936015883 297312366 774106542 419626465 902154722 699747898 895442402 409511678 491235057 682775728 838041094 277622793 486042604 824970785 950471063 362363236 681049164 766781006 877799566 870858709 930081510 311819251 640918043 814321954 917621262 824991697 908656685 814067082 994814367 369240907 731865535 229082299 425555048 265190393 891546948 206549436 389095812 385597523 482511191 532076246 962851414 518592562 710378257 312915228 334361448 790457194 936335454 903060316 910482889 677287504 701505603 266448241 996228830 389782827 923110152 268417167 673328048 551399444 677771231 282766306 727206191 180441320 261435501 747085580 850731171 658482923 918824237 179948697 787307769 938660764 981568525 421240603 492836902 929286094 953180371 166332181 862647817 642092906 884008617 505367969 761044809 571050770 818349527 824220128 854932590 584097641 909216206 665041200 950777235 399986826 644925874 96746345 677719609 403257084 759704728 386919289 407853258 907175104 921755192 749975882 909768147 639135983 927196651 763948739 784217497 604076842 616165814 734672793 916698715 312138169 844770270 820900456 980414169 623635959 826178825 121986839 689387191 120345152 268603072 426869976 704430148 383743375 506036196 358883129 999762025 65778286 578782418 351393259 875375365 353633927 693554212 837683342 958144979 192742982 964579804 79796234 207854666 77702886 907245938 221322347 510353032 180435797 560176324 272587051 546590724 252523097 854968555 162468314 594691632 741930796 988620543 129829954 977283341 917915646 940837092 885088351 932963581 112958864 733298992 728893907 926027089 834217775 850019584 672283506 886025039 352240372 452813038 407879988 486614008 92384131 450734742 618318097 675764031 367766421 687767181 416908782 677175084 564290213 729824356 86626520 404665336 341696670 906396939 116858190 785727454 83198275 95522869 325719838 354225884 413276905 585024831 734022771 911714585 395658561 848876249 228122246 602757078 874911882 975596155 793906859 972149562 560428313 785107458 149006188 588589366 683302268 841838049 286535721 671213085 632339424 994549071 309121949 950208234 808848458 910312168 855606065 859001197 342893273 743015000 830700142 954990610 790933689 831692649 553937832 906255887 146344025 175819260 638206552 813598075 261670805 966347263 521745887 719391261 162275916 573840566 614827106 736517614 722347888 932542767 323108139 745802219 916078340 972010226 204625591 321181418 221435236 960570681 754377069 889887953 466873832 911321807 231024455 698618295 844844256 981784471 710686396 796537611 670247131 800012368 459287506 626485212 930904234 976693205 123290015 485907308 437797895 438745701 661742826 775144430 739637288 900704716 845484661 866991845 744855738 976579557 611589657 738435395 625789972 975129689 928038278 965959002 813914067 868769124 972915727 996729083 108066382 415756744 657746890 893344768 570538587 868334745 492375927 977850276 903655132 974902424 665622458 839084140 353810124 820497918 981252577 989655891 172607877 640979742 773626983 968677817 921477402 985610051 519348979 950821243 457023320 845523933 775196508 852856595 791979386 898225693 171113463 537662283 665040638 860361830 578082025 823802265 207458719 549994058 956137198 987515977 547954358 674928477 127337710 527647677 545792222 668062997 702889471 714078305 248624292 383635605 617237056 958459623 637738307 881882238 917127038 964752279 317197105 764542783 72938354 180765578 162909671 221580363 934423825 944008522 148079821 974557470 615808347 690248956 878847642 896704405 93561523 160434361 615021625 736257581 378273984 841516041 767772477 861104812 536622110 697676452 73711512 879394921 721823346 944930340 334313936 900759473 613509977 816319714 115976155 359334942 808174827 931801635 532243107 571676384 776412925 875712887 146048253 768514779 982923028 985332380 854646202 942790328 11071766 623700025 589850625 757141736 520890046 924982049 398941198 591124839 730990550 968224161 988171922 992674958 363752358 491745775 198236812 702209462 583918526 584603735 693683620 805677015 823034094 845622184 38144194 816457360 906196389 930409882 17137116 980187428 309071617 715443645 907205402 986468484 650855444 724740862 941541936 993652314 601179560 900909204 724040848 827442988 554352633 696087069 157360805 494198908 867170519 989246523 533177539 983763496 857124638 967033454 614344668 846402802 33358487 618725163 136721020 221215987 139572666 247166708 903706356 967291375 553358484 920377687 720037562 791302395 30626856 71312197 461167996 838143712 529456299 789331920 692228740 746072258 731891568 964156320 222456655 603492042 225112594 277692081 596336913 963448901 909416181 916364278 517614449 689080555 507586222 772451099 356782900 382115814 693858680 866269847 566131499 899659652 118973040 602676617 99644126 367713245 202290558 604003034 135997053 938036791 386320855 485182638 665978283 824040411 772117560 974449092 477009824 554960035 820016104 935094720 286429191 631975551 97405605 237215554 297306489 976742061 52879367 901996503 464160633 566581841 342076213 483354374 185915562 918061105 667373728 694051547 785023701 808580606 705416797 955735178 220526059 861102170 319664269 715552739 221765634 790749494 519039807 911050306 551296390 629923766 347036838 775202967 137866190 582544769 890554778 994793837 220697889 665960351 896196550 980542136 469236340 579501645 639925451 956720247 531606345 640786215 451314425 835126085 574311490 796947729 949407259 951463886 421515992 711104047 502630321 767260225 352448067 566520023 120075652 822080796 498859401 845463760 113861479 934016853 859792369 869109844 790307489 852763849 760159984 952231634 42379670 266514876 755561396 811034367 671240104 972714719 930236183 933601157 727068067 952974602 361980048 577193867 241662056 969700388 459894906 573343792 648282276 798593397 862160425 962745375 144433284 473554643 825890184 841883379 596276916 994824755 502590971 529935415 557789671 605205074 726213267 915387878 977913114 999219655 997654103 998320001 852789919 924173697 432773022 818652206 424848126 953295814 319291858 493310183 926148918 960534599 948703247 980989304 681100469 841056627 246948938 811354330 444907304 592102336 108971257 265059045 237503050 729088047 27964057 623456246 829892084 846517149 149302588 965831525 57303470 68911697 186020489 232882810 596062756 967581421 716379615 989632279 645872666 671483274 253659750 884253376 470877474 826488470 223749673 796542883 420760988 917580964 387014746 417491973 921141063 964808782 459990257 924069249 684679404 970738230 174659151 474719522 46443997 209073245 774068932 865662533 202617994 821104430 194622639 724204393 957015857 982728042 388309777 964109790 183238172 789816973 555935415 564508957 868231284 943397491 593148356 989150491 118661568 489619383 26005268 498122715 525752394 888963467 932871439 933177888 397510063 721656276 491353163 870590285 516158462 666664448 962643154 999030643 758464583 762370861 832341142 970508419 525111822 681826211 861024506 974081118 337008314 635390495 561798511 739577356 594611585 985915243 929241009 936225113 976515894 992249109 231083054 908433964 249502415 693654078 391569795 444891557 546526163 950817394 511847822 936586451 887412837 927638873 815372212 954225208 266556150 330148603 245848652 623974369 890172968 945663024 904543099 957870564 408254689 414929007 923647336 950849267 513159585 685670113 246755503 866196483 616255664 925276504 170542942 726673959 286232484 306321640 340447213 866992441 782522568 936685029 997223000 999993156 142635428 474531926 794196957 823455725 395937355 623180322 754063947 842175500 670837918 972044414 629830441 925930782 161227165 897766983 317957654 452304641 655553749 680813880 459566599 515701608 722206378 836493000 485407011 736059604 873820336 913696415 710035991 793433883 318767559 455044954 2102097 37411169 468359671 966706195 165599673 578072757 826160313 857348082 994392783 999043939 934584505 956468552 982499685 999988186 489728733 631262766 33764943 368005633 826861318 936072124 411929537 553703603 958142136 988661004 355080513 757847757 941441657 957058052 368259287 599138188 604586003 685572584 172741851 976222642 65109393 436789126 755605624 824504395 313870156 897479716 331515854 536661619 303749312 538477258 191521616 912555179 255583011 859754775 634667381 658346080 566672674 844138907 678045605 968301499 42573465 99068053 179966830 263913937 661672156 867594104 239103484 258670148 66301596 646875933 382812402 962991731 370455565 709436638 574467838 625408322 19831780 738778829 107970779 605834411 470696343 479464872 88626050 822753708 929658739 978025104 163136612 428808680 203392801 278574603 963529385 977298623 522327205 990791640 155517668 699396543 532665775 780141517 304566763 970273183 894556393 951908515 473203035 931957569 370118145 969145391 59375455 617239404 301262503 829812955 642285001 871450471 612016764 898225860 243671547 422159996 495084489 647698678 532807401 814663329 51075329 155393593 934838251 988511496 839235167 929580340 997882452 998867866 650320600 995250558 117822164 552204859 201015653 876677207 655932285 832547353 554382755 808630956 298901738 512355352 856819317 971094286 457112215 670150162 811594230 816699331 817230810 877054012 124845425 869182085 706132098 886696769 73611241 707954981 889579628 978134310 951932067 981359914 240356933 843619096 472019574 573644786 644908830 749522505 993359194 999267500 380327216 430703625 77473396 261009117 324024973 783662980 400645500 702780919 962781895 993674913 188717824 755727871 375835995 606064769 469043137 744276923 878185038 953126514 884886730 897931729 2150021 385236731 774799101 777060973 453678894 612376032 922298968 979089364 125376 807309950 500254326 593552886 874505451 897969062 759309247 944018108 236634624 758511936 592372060 877108885 561881779 964792980 400625041 676655046 300642133 663670120 22655828 958221197 560044353 940674429 65063343 841345893 830055794 832889209 926034011 979573465 363283563 999522060 739507383 983810087 217502228 743942480 802567451 827621920 325800461 732283734 934200076 989442040 241632346 954409912 186888995 866036776 195220006 854223305 271515871 566892304 408573451 931547335 731225334 853786013 730601189 990308629 63668578 888696048 444864149 446642852 434874648 635155847 13110904 704611364 912125463 953861817 664726068 698070822 383336129 954518188 977256868 995008097 304541502 867489690 738966403 903384543 59140441 979359882 34403124 397143699 279376477 887675437 528836237 919233843 121863217 700813331 339535186 366733898 426941573 575944245 394815958 686841507 730049787 799508978 219580685 668759727 760600156 761384636 448439974 474873335 907507605 931843780 401967480 975173606 970875499 987665160 562272318 603512943 74385359 599777042 28202479 516429351 522506930 928569270 823146898 851276416 839994302 906417128 590681523 655544230 631914118 911609285 802176111 961124261 779664704 874504410 678632349 746599429 673337194 891537713 224014949 389097633 716018567 716967681 509076665 557660789 78764588 479240360 811730172 815228427 173409470 326737765 792036750 824278298 361247157 882580068 902429985 937466283 92576238 158697868 816630841 916778047 780575238 822361733 117413542 490958902 780031901 806581881 463741810 702630657 450714168 586852322 689485977 905131258 947694744 996714764 853690752 864677323 725642724 959895446 109017658 146949367 230590154 395974030 130771499 864950800 396372954 932403016 220311500 892531559 434573731 949654273 255133511 456598971 369233072 533163289 404947583 946587878 465224067 854837285 378014299 993244949 555915017 932077603 547185900 794433750 457226276 949759447 746887704 795768052 476658369 716356889 217872848 906512753 900708354 958675948 655323066 774325221 324964309 990324283 108232756 542526654 958514306 988774551 827370674 849405464 342728974 871066138 823999905 878252989 924614763 953891006 810229319 928407900 513037331 919987471 769814185 954303571 27909981 652119242 391654205 838691566 993753362 996366360 92458539 588297211 872479925 911888766 772708904 979982587 500688159 893479412 542015930 837382849 923044841 923569732 792421852 902345308 362929082 680078670 871070746 988500447 222222249 992606093 69781010 539103446 95352563 356359020 984168641 995478597 718784756 950775360 18515859 389869176 753314300 836242675 287127489 408261094 961251456 983991040 201325889 343698668 263582589 994976636 217308107 685625882 267178712 751371012 110121414 769587606 640170399 819959760 485527135 610689280 690157956 832427526 670182501 748183089 463983067 965999344 579790912 699815960 433206227 761720939 970073103 999243498 15469403 133979443 243206007 517379320 407190818 808559915 138805085 429734493 393610660 636615433 658628269 877203023 170422480 885820740 200897415 978671162 847271589 988071661 469995407 806535104 41078258 973681955 265403443 498585546 230304976 363871474 775064081 831894524 11092637 346404138 156969523 544713646 530707208 960136193 256807128 585850248 763798108 975556842 677570645 998826898 989577701 990031441 614624438 727652815 763290030 896983200 594842686 764738547 105826482 489618558 121711836 589460258 511256706 626200588 806586881 997681406 550469928 901673141 211849755 526431948 233956900 463653301 956241091 980640283 899629492 938254682 816232856 904418667 412989770 439070253 372750372 728788284 789171825 937565890 520777150 584017611 222813463 833894672 493512059 935549931 672216896 839594708 503430455 824691938 436600935 968932511 344363560 984302522 411885108 438026021 669632680 982080153 339478448 964096228 718212001 927291352 995155240 999996040 281639175 555820416 110356277 994964358 737912899 813304371 128305327 465469519 787527944 982942116 772490794 853265567 668028025 683122315 364708207 649726189 798250976 974854290 847560477 952259360 296154488 526938290 171180452 727200177 237400485 779841320 968174839 990622774 519931842 525891289 311930291 697955901 155984579 161667910 987661300 995039885 257984642 646995599 990286721 991235380 898969023 986000071 214340028 886618327 386218090 526299587 813329363 819022681 227716077 798528304 947615617 971836496 215917357 259836661 957048289 984463275 178193727 901813775 796720076 874535389 882003501 941489828 698825180 937542758 870646117 973161445 296188475 389089198 466397227 777146961 574597084 708146915 904224884 945276158 624684941 903052712 587830447 614750112 481870223 606505637 664429254 687887879 807571201 840138659 345418830 650807210 808358867 929565946 599889235 995193261 766121535 805851513 179080209 811221258 435394571 815255135 581669165 628724600 505613343 735009035 105553228 959259685 524558115 638244397 113628617 576249656 212617438 795834661 967667226 976518285 503993745 687008424 304654702 973645416 646130622 942051108 279960607 643000326 292138057 902879997 816956393 970189219 311992188 703197304 525107 761723625 924737241 969370538 813567384 960269207 906719756 910552127 496783247 527444015 577392073 886833136 131496122 730091393 661945739 831895730 73560306 290208420 942217406 956810346 987149739 988717633 358996719 694733104 115551851 311196294 373406905 530326427 201923328 407801362 643396446 842519587 952596120 992992086 762521022 974856440 115862619 193093282 721004339 943087069 807560421 954188332 748862970 979371534 75091937 897269670 474802659 923014993 12140753 503823409 988166616 992479252 264129623 350385729 932259871 982009432 402181087 486150496 650758913 998729261 923619 665244408 844435414 934329457 998026306 999728779 959354100 986879645 661472487 713032130 161136896 629284800 12499842 797908636 463948774 832397634 273770004 789129360 214058739 793058487 907462468 975910855 754497022 903048917 857317728 869157053 34591565 766842357 170780842 740355755 923224383 987252723 419450068 885732381 757053908 907160882 224726750 396910817 93496909 756181725 963201662 996529718 142791462 242453259 757477035 836762055 554038573 613931090 116436835 247400291 575243626 653081467 543116201 798791036 141903954 377031294 929064862 944226902 702967707 740303782 367344875 706812462 437446720 744923802 739067306 804624479 199874426 567165476 795194908 953223969 911064411 997612892 522068018 674792028 232832939 526072725 463668708 641903492 395436636 738061717 917799892 947969220 901439606 959284141 676450185 716567629 765335930 848739466 209090005 885677013 677246016 725326314 963381590 997185637 466474622 726346501 669297809 808665519 680651918 754996560 446191630 453887373 322974683 974417290 299651968 856795444 309342957 963016491 479265795 662212140 243027070 542308414 845685845 977995101 829317485 877863922 575539207 837200503 897597172 989861323 29734509 478314447 191228950 887982915 674393317 988129962 361019166 458679497 254724536 525225462 417113522 601491827 915093197 964719250 884333224 996424311 250365301 879112571 157610600 579836342 969229693 990070460 339422493 723304139 60632837 117566104 258606902 846294931 139140413 206605389 930773468 984602133 228791022 314361492 879220699 887945122 191858598 593739272 553471217 870067902 422879921 944339554 842522583 846612272 336678044 785964491 993017987 997646858 494204411 506874626 447892941 454252134 952788954 983039029 945272089 981853021 543807514 661443951 225363025 515545222 149238032 889920848 258616983 272282507 546248918 673718929 301454279 842487345 218591122 593112214 542571884 937319638 678738347 838314136 273749796 388726636 509983433 536753964 671717114 764218800 461719295 802490849 165797917 260132634 953892742 959487500 406569688 456453115 593883065 671879101 160040253 271666607 653781222 961600198 73097093 165860950 723043061 999055798 994041121 996327541 966005824 979965743 42208988 798655121 329168350 983067698 551486454 558921541 847997350 851068517 399965346 755066219 524496525 762414719 529592397 835974236 214711048 570362185 705025990 909252662 195173296 783531864 120792538 938038893 1519366 101498637 75277942 656993622 19006154 507328288 519278611 947580933 330657764 883947901 643013995 733312840 454383442 937040214 399290752 704152764 550739787 931801856 331864046 739149429 373318092 909995855 411323355 517111799 319911293 699591373 388154312 935099271 920362323 920973242 993171931 993530083 983339973 984461654 453478586 461198300 936552329 969493626 324195177 342096026 246584608 348234763 509865639 813182558 887381294 962608446 611675740 826926146 409643218 549160454 805532447 896436992 101024373 776170525 865630689 908309506 811948065 889736720 862821307 939756266 714329825 803826509 743417516 794647501 326232180 597436539 506773939 915472776 996543264 997710660 552617370 667157276 66617609 458975966 523898909 553423049 583014951 603102958 26378949 772835079 435995630 882325651 155710689 290208354 29339198 220228225 556815757 615076190 103286895 145122825 748374411 941568949 29658046 822824371 479346540 833800497 876636619 902928723 26935943 995925199 27389739 620512818 188189091 656963868 471432170 898191861 694623498 788833342 97262973 789730074 427008483 830292661 955257626 956701236 170677958 244412552 201527371 800188922 552415386 982944328 823126502 901986345 50784562 278300641 514133154 656332984 696747749 925639082 597628342 967739746 355376452 395725244 399945828 818547054 982066933 995189630 58518872 483013238 825160957 827126793 699494503 797600430 265903999 723620254 677322978 948908975 956327173 971581497 134801292 283245264 815112735 884613044 824828627 978044016 377187741 884828756 193091968 292224930 930213447 932347136 385628073 574712402 616353350 866579821 156974509 337326285 738736366 796815669 332267966 570149123 345755597 354472728 679821501 839967031 476543315 653042749 459440540 710099135 888432716 954083025 951441578 951948750 448957145 495180530 219067902 842391328 535588599 627831426 896373686 982778049 587185774 614092951 685428603 724388086 577770912 925905330 898275652 908935178 699308095 931177728 581618578 639016299 38095470 210978938 992852770 998092768 825777355 899932321 632461331 808528032 589676783 667922413 724596878 892482981 446384709 678830786 81195268 612313866 760010978 820896700 715337846 997127095 203491162 558797903 559743005 587480479 911038506 934720024 574469903 736905400 556452141 676989370 118579970 516131227 307329644 663020097 266655983 273072316 118986555 657057072 455336928 975826883 239997250 372238972 971675300 983132930 708638618 763898816 601115172 618108670 950434560 966025294 716158248 834260076 94609943 978005783 125731390 986845675 201339910 560296128 961322962 974262101 161851902 450030593 913835732 989529305 583535477 956257732 455890696 838880957 871935898 976466920 739610458 743207505 909492499 936328481 929617555 964082172 767306137 781895068 93381225 714632598 800509414 982308070 35973696 514868425 557015327 782164619 553287051 664009921 15501734 942126195 1474919 18365538 268712133 642358340 926932579 932583350 91573004 653497712 363833195 795500587 413147056 636605957 869060604 934264834 760961512 871910155 32674651 316566892 427892164 850700984 767953851 948422920 528975730 565726881 538236326 890359731 363982175 931451929 508705770 583517387 30161074 947827376 549147271 921827477 99940649 610430660 687397997 761832699 757095148 814606318 926671996 964929486 776385180 816090228 399231162 803570756 643493642 970430593 885125466 940393832 70007801 225345360 802240488 907058670 214570847 325064807 246159860 534567434 492552113 975196502 689525654 911483009 643759619 654822032 502921130 993504545 822360976 956736679 773072411 920088843 186294232 214441771 284067154 355794005 21627624 667594031 875553072 953138017 264073766 452032678 374431978 451329853 74280950 242719197 690628697 867264618 644981244 796478224 59936604 305483762 168161920 554061406 537664638 746904226 261196941 937501467 927786750 960048579 627948235 958214929 590869682 620088445 163781010 288358381 783113810 818742293 88921154 629443045 551300378 712764016 154547179 179037583 762356871 833852709 121731996 719451265 290170762 304403681 796268967 950314078 746235133 945346364 720097243 885504850 591687365 943311502 468548248 711569520 67099268 982545056 628598452 749686868 555532047 956370836 553199111 907750036 283939330 400296242 115721725 913655093 308309415 927282000 792183193 932923516 652605898 910225095 913047565 948464181 286344783 770451176 159448997 677455749 504226172 553794931 413304651 967894852 524785286 676431803 240886660 392029548 478841299 657714165 101844745 367968336 186129747 502398245 153045843 897540613 962945074 980155443 152410754 798816634 937482916 997721179 410101370 925549063 162976087 769713516 927416475 940644332 83814130 754196149 983628643 996474396 819991720 894596472 840634845 859753732 171897385 606299074 747230533 924210847 999971160 999991191 165947357 366673435 338514788 498910753 797714181 998693366 100058853 517478871 729921150 988142945 506066363 609181270 126422396 201258483 476490141 794180155 449226141 972705813 621053624 776039880 733743187 825643864 220205676 848572826 882495862 992222640 461040023 984898256 65124488 632472387 486532558 646037165 826594833 834704627 43085152 712790280 953451827 955136247 492280763 588309464 751731041 803357934 414529850 491098660 902953469 927454491 785511721 845225196 427079911 850765862 271963717 941754129 165506339 863556393 281093405 625852626 69895344 281261503 371695868 964871168 899189815 984052679 885932553 971465130 529566427 893363043 388159668 786707841 88788582 994865157 843930035 882998652 138083159 761336712 546970321 988329482 930769360 938849714 879794102 999376940 150090266 342217380 175734783 690941308 623425603 829857067 911352221 993310428 469737096 738501990 322552699 936588290 728227523 941187326 284758968 579611138 317668211 865067042 673549823 715888762 969897928 984342188 184352070 540860323 714382672 774114535 65170639 626442437 598234525 688360198 11435998 705351832 437667166 717789101 863213178 979083386 235020118 898419182 834369857 892417873 872417523 897509106 511718574 758750068 523859470 573487253 176578494 860086116 640823792 711210471 753256501 878375832 610465530 980989372 732009436 994883586 269340433 639294852 628964019 820214941 78823928 843742113 438726324 660652805 921660600 928583470 32466467 817361231 69175790 568848049 402272857 407936362 435323714 724481563 961482128 971240838 294518873 961322292 71957701 156066868 636306149 834264956 297240352 562464047 469450271 812515386 703748747 725412010 835855989 878362032 366086122 928002608 247765603 602132745 351431381 723636213 711135732 987305803 369337342 765900651 480317998 710575231 723170904 918017964 19247369 953833262 343172293 709042303 410548327 663228749 980232026 983416835 167116904 987790759 239635228 421064504 937326576 958843204 977602724 992001518 956259553 983923113 962375744 995733012 196397112 281050116 401692831 498349264 612758000 832639894 277377000 533369280 140000191 144344300 936023871 971011783 665100877 713366479 975656068 993521224 551190429 966158201 649411597 936564345 648827708 815832895 797602847 820668293 683791704 873042775 153412905 224736928 705047281 891979345 960003785 994361742 733756757 992626722 546136350 841175689 788626974 909212850 673849374 928750859 910225023 954209307 271879020 826918439 564759761 828207553 217112892 867522924 348639144 738724720 800735958 827811390 176410300 276134526 91506421 440737732 713087163 750734940 120882246 196452561 311483335 810400179 769327106 986791131 579555066 696749246 112389412 873010118 922893804 985295184 951647060 968764522 794790801 821200099 394924738 690845348 171134073 853639475 53059491 429089776 989437406 995419413 123642970 884576657 780615073 844653469 466213781 582651154 354696583 774867206 206314768 594286586 417573990 509063743 624382650 747383214 174631771 818768635 754248913 852772662 45444437 444011618 929275777 985794869 821686470 876611567 99247829 517922606 549923451 691655034 779735349 904331733 873597016 998190167 646792688 802054702 904411327 922968167 647310635 720284665 28325439 800976199 368048258 453065099 290095693 485964012 175804820 857767931 3113883 136647856 442385925 703267333 585272110 596466964 54681840 729392425 567084166 646607533 994931207 996602196 189735813 730905255 962877050 991938707 502142760 882440614 728556010 854409860 675987129 805864005 32154618 871989949 342995955 446466235 519908846 747278806 892807563 916307218 680271530 842528566 949622694 965220963 822557228 945082596 387461204 723594395 251102439 980072796 571609026 628022703 655515745 928492573 318426739 600008452 837551171 944801772 230817090 899486676 305773539 691537275 295176408 999216631 115539877 863426663 379374539 925400334 924250107 979499485 337296684 439181792 588800505 607900645 294797990 588074569 881874074 979855679 680074641 752562137 707803634 996803513 626100000 918576868 85960033 472832186 206900628 311046799 649731934 809500800 61473352 496863019 391876758 782480329 444764979 661964772 774803666 830653792 318381229 366082392 635773893 924301834 975510173 984491469 273755407 713954765 226906410 373412630 637281454 916611481 20121258 468321673 919246925 972445815 568924067 962024187 279361605 346653170 348526366 484800913 755328939 850654313 425258936 970717075 867447421 987062436 424038682 798940097 120667067 674918602 271680414 540238261 578158930 906700366 171255568 365015329 614454057 745694392 591446483 828625003 74964614 526172288 175826306 195521532 424555605 630572120 142435524 306901494 233483096 501529344 40889064 144133002 375347213 420898309 633608110 945455190 866459432 920549283 328734170 689314192 35411634 790746209 868141500 944347284 634459189 965882011 587112050 613137563 254874647 998754298 652603648 676699744 147676619 851297493 359300482 428470358 933122438 990279051 784954775 958145093 804795479 845995317 606150112 775566167 752348708 988182900 358452799 500378980 121171194 741681885 871391910 924470240 658589103 745762732 948870306 958115481 174917970 483926893 41978304 897607115 869916119 914524884 573441552 610319392 901085390 983544175 689263480 815276147 25486976 305202639 847683037 981272604 15505072 167215527 349652125 700292913 443539534 475478029 919469213 926339289 594964780 672692019 653914214 857755337 921645671 976751860 38436684 881633579 815827009 927619704 820429738 939107037 982569691 994642631 860054633 971202886 451446042 679565489 498520968 499266317 204936016 642325570 901461265 991464218 640792901 899650852 983678608 999052240 653064140 907360479 562405309 838225662 665567026 805329719 614059473 780264801 585086533 695424265 761180263 861083561 59762084 114536137 38619591 750736663 523001336 763965414 400328268 866833579 34148589 311743393 375906960 388596956 938737894 966872711 12903403 883715467 368245001 383885929 591528025 912242511 164791990 346160457 396999514 466694766 298456395 809859048 84860669 340656624 412406420 671289925 603697230 778876390 255278191 371614858 160843594 870972682 293646825 758652777 544736949 812998160 407947235 890051731 682675669 873535307 811964271 838036811 298223050 445581895 762886612 776612671 161218044 432264781 480514882 999562648 168613944 415537239 21437702 120541020 687556715 713315286 847482970 895631084 675768483 714650566 373841700 459179270 113981900 636173402 355562251 636334415 677776633 793802505 809236489 858271488 529447154 660428126 443925054 686891212 53458438 587835587 938476407 956417750 57691102 550540278 733880228 897712542 76060008 771258399 761389056 983784244 684028749 975432296 575805909 934620578 657146021 835185464 763163070 895908505 979108832 984075158 656699486 748189229 390953966 477666745 738086571 917006309 232559635 381869606 748138575 968216009 136646175 270906882 938209887 979258366 681009394 701644378 726683282 742069028 953892461 960088852 970442345 993980756 744551006 766223174 408433699 536235061 379707744 876556662 915172953 973047271 715438664 922695257 388166386 574324944 205331808 854478624 868375751 920236078 41401532 942204906 787588602 936590247 622597319 638468781 704689885 958169856 520166779 818795626 257065619 765447980 774091209 904529590 599603124 636877820 602731401 987171538 959937717 970730315 623568097 655386119 962800533 981481151 405582217 656492210 842850482 978647810 710715112 977692867 597282154 980133990 906483414 916614739 915209672 929329159 764886044 854171182 746181481 941655905 860541255 982564101 960818608 992742991 317217023 359869113 206537509 297164514 254336666 592010275 174245061 322120130 434513562 652091797 388947793 871795282 103570211 431183325 458057895 722663413 860265648 897511138 842786624 872456975 154131370 839396174 96294409 741316068 910676810 988480696 296759376 970861807 386656234 780464430 284225656 454896306 191405575 313506796 601788977 821832118 528932886 736729579 973465717 983550727 812311960 927096486 950075428 967387794 320717928 320871618 451890400 891100640 193714545 300543023 246450879 775603005 376248550 402823400 452465200 583206806 538416818 638499381 290971222 815824816 745079415 889679950 143821654 160360912 163813272 327297276 346002988 461649003 549775734 785685192 302522279 971255195 292125407 647363653 348114211 627242775 268971380 593510010 910626956 978889429 29830859 826947461 624687845 825271894 697579841 863326205 960290659 962244409 145702558 170202814 355671332 454485826 245525367 258633505 573942120 973324793 557912137 996325428 562588331 849717519 601006694 992370986 615770499 875972196 636007539 802073104 751014875 817272581 353840006 702470111 432358471 804645416 787724022 920830051 970592360 977253361 53277552 658471905 608199267 732484339 814131040 922153072 209463278 357441037 856266827 971714203 997049684 998587932 163153016 740877719 139430344 599970451 425990456 921517382 815990024 837501708 949981122 988790825 175397488 897507643 299164187 607072827 50925160 956365270 49380355 970915962 281511219 471265876 943799520 973248684 812011142 899378801 110289622 310935127 917390425 960425717 282555059 925992687 975822914 977465452 934350760 985195329 287143597 901017270 702473308 786998318 282818321 786320719 322036686 721824504 423923705 797629050 246262211 279178870 981026316 998780234 920639102 994561158 101727930 618995980 620378690 842113894 982922253 989623319 290092272 679130234 797160137 819965322 445545727 789668251 341442597 592423774 172295139 479423878 914004780 939728339 924430134 930923015 237871254 468832298 941066382 995891178 832240950 918944541 388437057 485756907 589396475 719573962 415850629 426911965 852148531 900216991 87433090 987040223 258384391 355576105 16863259 544992200 612777066 670870377 71923984 163279270 398662568 939221101 110390606 805021772 383093289 684353087 614644743 618917577 303925857 427986389 350287522 468872204 156706943 232207605 480155491 859659947 510074970 743697299 72406710 584488465 264485115 327314570 42024024 280132727 297153530 931803551 749009478 852830198 546155865 970819082 973084649 991926147 117328961 382868287 189410785 455530078 718114282 932992379 486989441 549319783 20188230 598753842 854863279 937621326 755478712 830549956 897322816 926818610 105233990 307022203 613653485 614877623 580325793 715541782 600514534 626294176 762565670 892297070 964453191 976696288 296600460 946808388 118359439 869523466 250714166 855714699 927933442 961181899 84988723 473854945 965403717 988703752 689954241 740637995 725235155 826459705 889713258 914017289 874940235 889122941 888113541 993987866 571129858 838799200 261863847 769429621 542482635 661990297 537845642 920053904 592591032 693061020 887618424 915465511 794406693 796524563 757892717 912581691 996446419 996460551 59641814 714386191 888700898 897187742 156339366 630374429 491552233 795738544 749309271 932404318 461258969 655289136 521733712 929041364 58309509 65956020 57205015 931939688 680807970 975398174 831253805 900684050 506494581 733877858 200442119 513112795 381141198 557926515 698399471 910216310 871406107 974791590 806692143 941873576 531617827 620068095 737279940 752223778 29399215 710162882 820953467 828842481 627200905 925623266 605465854 997752337 212775889 957779338 744721933 908746943 395381417 565320231 338518832 981871667 71825888 352570238 435904634 458833288 62025133 72070103 789616559 870247617 87232737 384948306 410793483 828494496 1404729 946669174 466496540 825276902 4247595 49510384 982315523 985556371 11206636 833092779 14779450 240575692 472793595 641335049 595678913 808648450 75607339 866085589 495139366 649548170 563046824 744069965 828596415 864465078 54473294 485993053 424172732 570137481 44900906 467812924 610580347 632596133 922250713 942829947 906717206 919464039 667421325 885062347 263601787 826786379 571644166 830547845 903194754 919030009 520746285 525089005 681991284 996386988 397610130 425068765 982837847 990205430 287695869 466301098 492471667 620762909 892538580 923340731 141867632 964844956 216826207 724666138 953972039 972917410 427098869 451325051 523029071 545656602 252152259 853580572 148516923 270504302 301324848 457343269 594870466 818244489 191992250 195714621 517595301 626633379 307932057 995768754 826112549 913798210 83047757 394826729 878813160 977044188 295784233 575266196 641686272 937165277 882628902 895084834 114549442 174702908 401292976 885961285 175322057 188495959 613489030 931657258 977212525 983991007 720658597 991706771 927862600 967239921 773161724 872292853 549678905 923827740 662393651 828224280 265742478 965743800 16550850 914382835 129010200 923005249 456194428 945386992 417912417 678263969 649820410 976079093 459628601 671417909 724777934 999173195 561989141 626183885 774829385 896198760 57389623 592591436 620231471 953273165 681448462 840591180 661474820 734399038 510823871 916141566 59056110 851995949 965314795 996468648 756280959 904493218 699138769 928909674 303288596 419722990 638513302 793707651 600566505 809405185 379465995 973610108 57191388 841507280 150532817 549334318 801088774 906875583 835793091 913973837 869376038 886581904 230357165 802267782 491876617 816207994 1789534 426921370 259782829 776856606 926294910 995062217 462161441 632255489 769187903 906561365 392126211 638876490 972761438 995030998 411744538 618216157 440460123 848086998 947723740 968087848 684471206 918612126 895032257 900751528 552019991 705990889 688976014 714334777 592534853 651350924 738774716 793334572 531907111 770529763 970934313 974864104 434348170 948740315 50119685 998760815 83281155 908954483 942299231 993997562 259822766 607018967 748689624 934519340 266965267 930275862 996184873 998318560 930149058 998164366 496406250 626894187 108971853 566273274 902481030 905364869 60712858 659102580 271724995 720772744 782213049 814319269 737900910 788774124 798357638 806332211 483265087 806497247 836259040 878477399 372910114 957245741 532841095 543845141 837093897 856033479 428371598 873756510 52203555 60590287 571690446 726088408 529756708 923546250 17457060 295263819 81414977 887821785 359604470 699272278 813190099 853907953 143664567 752768857 801604992 999161661 249041722 519578629 649621198 883291337 276951215 845388110 813984435 910394034 942411413 946612656 284882750 548582994 166257155 349500567 902633453 922503050 36394949 669954263 899088840 917210249 515882423 711643597 358270234 807946636 315531594 662483404 608074004 927636144 458006820 663866055 611061754 802462269 798356620 956868518 592385887 718573159 685479670 783828989 967750355 969454262 291487913 664164449 273253299 994130045 340720390 524278790 589676649 871577622 995995311 997513166 956289707 995608410 422254107 943283944 302343625 349728638 515113548 951323442 647077785 716005727 637160524 969403428 25750664 919027122 128783783 470719659 324520711 378541446 29943606 559316529 462990919 485929539 2626254 411383399 232147491 871909575 74833969 363433337 592804047 679290905 555586756 767941236 321430294 970037812 259470460 631565722 579293412 782109417 722777440 929269612 895524902 909951938 315816773 331440493 530874988 587738507 351731874 765479082 295976325 721230051 289895070 680761840 335150682 782346291 441120414 659574370 726257942 779039163 722592432 722731215 273194795 591553748 768118782 964597226 654350359 952854901 893553288 903425767 27674944 759012294 618295222 747947240 435806132 955145893 184746992 696637908 67468163 947004664 186583139 220899763 499209542 622850022 383151227 505729390 176724303 791351773 854284766 894145753 167806494 687952857 462048816 807723814 137664025 720546171 992156104 992689213 622756078 897805934 976837219 988196484 604045477 887265383 766731325 821977245 24726134 704428739 998607366 999276088 220574431 548589579 342764671 762748583 103976842 786283203 188714553 963658281 530144357 600863349 55555552 505748478 361030781 578187060 286931243 299953170 51512384 381361576 790090303 813122127 487412917 982035794 629026626 916324935 585393531 633468975 959999577 980208301 423753331 597275812 29442893 785534793 547266819 989547921 945700115 959598438 190420760 685465997 87750835 378328797 80322766 359564274 120246465 646124875 178456109 367530653 338410893 366180509 43438392 805513291 264057672 885914381 469986138 966723479 549245476 706471989 701805992 959687748 852466867 991904451 199802342 845151442 493566082 910904888 945020650 952146476 321655604 504690974 681964290 765331475 885243879 957651909 354076222 418058806 264603216 766419441 777789758 939624311 594145881 911980410 603029431 701517498 505882774 511282145 555515780 571788306 946659557 981411341 48305557 533335680 556244214 853711407 89325477 94320844 741708898 850265243 995884195 996953509 713092871 726436598 31688995 363752541 412863364 791412511 772420510 971511905 235411965 306660914 356481044 624475244 647290155 891382079 979480596 988951269 497147175 984608972 442613008 678551050 799728315 914021206 608015742 618128563 786783000 916510147 158693530 950777074 399885762 737253332 319074920 756321506 739795096 747328078 833757211 899719507 678627788 957113829 790686312 917296727 368962953 525101498 445976330 772369541 252668095 647531950 83593762 335076891 863502409 923042870 353140628 420671013 390874812 601007062 108283745 136341215 439577010 509609216 147325079 934678769 381750946 392995809 714201658 842984419 796855153 950642371 92331690 820351341 889298264 909716754 784210227 795136954 495309515 966628366 557132705 683717316 814921615 963290214 223458225 549219618 406478109 556680120 895435801 988291829 78881601 236149445 472540821 630182521 338573636 962531288 617045205 847828722 719608474 973932898 626571948 972934980 681340860 739700541 281379930 345043178 907178252 921697312 366105955 617766798 992961230 994899218 491097245 638491205 548047659 584095462 427670851 483678347 334372544 395463941 58033999 369989381 978037224 980756994 865846536 899745787 412027022 715909434 567346764 794691156 680390195 832102542 785476463 984967035 186520321 261781629 259958884 447742412 760412769 950476106 267995820 521386309 767602612 920676713 310918392 533450635 886173082 939146786 840517976 908931592 583339220 745934271 85337037 450284125 48451525 726661383 399478251 816733610 61270907 382485977 554291739 861165726 841644645 880542012 747996590 759309408 646094617 958469461 94724102 129839306 782373385 888955576 346178093 544828100 934124486 998087389 606494936 913463196 836007450 904886941 57432374 969069731 898603695 979597434 633778614 947367326 809643750 937408157 692757044 699361443 189729739 247524879 554620831 872028203 465399082 845161634 49514156 691944070 865031291 901843397 384434884 729799488 406296361 515060344 146208944 448985961 99336731 441595333 969176303 992249041 548041393 744210380 479486194 564081453 841890150 917032765 936131733 936608236 835909406 887479453 594234288 699200482 17358625 833694598 459287069 551913083 716515112 960220877 562812374 854632256 210813626 854969792 33975981 410222268 895319069 925620703 211496147 683118906 446490275 502278706 240174833 740710658 859297176 887418031 653556752 948669928 828207513 881260915 575591216 839144131 802507079 918746340 160259989 171846548 191373958 677938045 815811518 912416496 969657507 986018410 19091714 618644073 592665038 748493759 120565327 150055301 681968488 813291559 55932915 736522310 872983237 976635953 218613117 377423151 916118102 946838366 337853911 487110575 825392996 933397766 337194923 851690550 240827376 758614098 106527987 640749790 704441163 742798803 925184384 961569646 864136593 977994456 563764418 576626465 825722059 953799356 751513083 958970062 652468944 657550853 336684472 840235805 459839564 872860389 468457724 986041768 761354244 969007282 993830556 997691741 447684337 612807595 156855467 304615051 275440535 279937371 69549661 871498459 982994530 984008410 861484688 969870836 807418512 853746241 190033761 796582041 963881671 994565417 956175711 982202078 768289395 840058439 36948709 799844540 842689234 998138071 578360224 742439487 512846433 868477350 951436597 961721234 699615323 726546975 180690974 208640472 184083670 208208129 309759922 615294480 799840702 977900227 547766463 881580527 481925055 768393623 123044092 495807747 760006385 913053744 865444244 997146787 399356393 692713645 556259790 730478357 384216702 888294618 988612594 995223545 887977891 896271817 757660143 892900487 365778541 720309937 16880471 434840071 131180910 832923952 226887350 735647694 969723400 969908247 209385687 455354843 552090903 633993830 489341199 579497576 687323390 739456315 661981699 695391924 900367991 935823908 901565083 929633652 942896445 990522726 948646364 982093317 570185072 954335711 264086396 815937184 141474963 238861472 620576833 632410053 422619867 558519701 935863568 985098086 439024741 789453051 265795765 798561648 739011183 939817795 147457811 760702741 438422031 581311151 207113445 729261986 147402944 482537855 442220638 471902953 638686788 804383036 466673470 701175296 549885488 854773569 770830194 860096909 624373903 856081257 387437729 897758881 131169709 337133323 975624593 994020521 121950035 198971794 305157552 743810164 780868451 790272633 145970961 568814695 70234937 516313335 642794422 817740936 673187272 977584372 774873377 788842386 743314474 890316334 215710454 853333836 649464393 747254538 642084905 668089815 298214927 994717026 271007253 339197287 551674763 704200400 404149183 495819792 458234062 941515192 394129065 724418571 351500324 942111701 69127898 493733865 394856042 720832994 933540694 964460899 817041784 898406750 837019173 838944453 384405220 418763845 127578168 504934268 254563967 796092730 874815644 960707365 562406165 768460874 667711154 745505725 182754270 902300617 49251787 831661513 151907901 192914618 703473811 975339694 211599903 846453703 212345839 294346712 887100126 944909144 278717254 592420103 713075492 764936460 823884627 983848083 780605910 985642456 454584783 824902027 696824566 725926514 518066557 588777259 169305471 511445550 219440461 765372718 181283917 882268742 41032010 61190204 993926064 995185363 675032646 739367881 862628690 995967028 945875765 971125093 456548178 826778500 650104867 962328779 823862961 872926719 417300373 443927199 173385078 901702964 599737529 747861905 543309069 753406114 329203120 449945930 346065805 876024895 621986694 705033808 154204419 779410772 105203777 773501225 826368808 849856222 24292782 941040529 886010595 969160464 712589365 894292900 424610736 997593016 605996743 719250004 879813547 921572055 297142164 419269365 934674153 968986254 793096794 980128210 743953296 980842936 735281020 926810415 577300223 941312638 487039826 703664221 610537481 777471894 752904659 909218001 148257850 460861435 218113025 434950562 972075913 992445723 64256501 948159631 621571406 913983339 397391612 762792238 224590805 603448739 620394025 900293528 794443962 850852595 825645189 984462862 358559525 598376398 654794051 715208315 129095587 449823186 8087918 571588688 757969137 811434383 446251200 659559986 984029856 998330515 198129343 632454728 387027084 542185556 120204340 741429546 569853592 654362594 998737040 999727080 823086059 888664294 153433458 803436246 461822113 477824755 30069693 307557662 244694402 560069292 345982266 969422070 844940202 939362714 617943114 947434396 743721853 970754051 971566929 972485350 802274663 848867415 842215801 931363840 693652480 955705500 259110176 275367471 581029238 813524701 866824369 943264270 430028766 906709411 313685719 977660115 654326103 710718565 435620561 875578971 752063922 861461405 128229695 853125241 486653796 668046168 545244804 607903517 335310953 929640403 863742466 980297683 509431794 892688588 719243390 832965819 772014900 902307177 209414565 308739395 656811466 695618141 174533517 930429604 570456122 953092820 822248281 858692520 240116823 903867155 172981377 497543067 61894501 736919662 194709653 220405959 399875603 789084154 292963745 745268258 369335959 395112703 217336381 462152975 224379027 478445211 890407901 893371873 387034832 441513466 603921198 612221992 453269253 998616557 958695994 983341219 613472840 793304009 292031107 699907279 620883590 674403066 892224031 911071950 485337538 762601053 821506532 925316140 191287782 282073793 606230416 662708928 843796149 993796011 505575089 768444674 572221776 745234031 853520721 941973308 581337262 941788018 957618435 996431093 807278113 829272289 550452245 887538970 110962113 589201693 554417776 996125572 378184889 497873849 840598419 971378250 289122914 846954327 569332687 652417958 674306336 843505327 365348854 943478618 474665964 923433252 697254506 928256392 672700846 996889704 462700006 631134048 64729602 646525554 280571911 687942741 889164798 933987970 21454574 874845447 586510258 896435837 786859526 898747483 504575132 726506705 286710780 635716023 405482203 935656790 642661767 667160064 204182706 907134066 112213841 957867609 493433070 643338126 236811698 386040482 943652618 988647847 468588595 794244471 831336139 940436923 810903477 839636946 545502041 663827386 545943422 871692739 773038394 878618129 953404927 954277953 590697803 802609209 326243406 804143311 35188885 722912683 365508205 784697864 812091928 946138768 448101992 866143321 263927778 513546593 306456030 346618619 640954736 764646305 729360757 786563694 536869297 718102657 334853908 474918945 14756732 823254932 529904121 945565514 938738708 960177634 392640525 853085433 857343208 971423214 445510675 819264865 704018540 922677368 384530657 958936935 822146675 990060137 313362203 920908690 471824571 765822506 660772793 743199075 433669835 433824162 147908783 779416757 632286865 748157476 823576967 981503956 158790442 452916889 537356628 578033701 185837826 502137135 200734365 639649907 129258004 842051205 104624337 652012078 454731848 533291766 404505251 707021075 332269888 497881252 586456213 942418993 670174133 908593430 23465556 780148317 952039012 978680407 206095461 960037486 390861271 716921393 495709016 830317876 229440107 270429945 633990006 774829922 941954566 979755865 31924985 997945690 775249699 964674772 601420812 964482049 257283529 682069162 294932519 631602289 934094366 987179276 383024345 558339395 389503250 749270277 823768147 894082064 212722104 264942291 398759999 414024289 597780455 813677062 513798026 580661916 71385859 183948303 489035733 623896472 802762376 807594879 821612903 915825976 769310970 872095264 811161370 812341825 753164799 909568145 826439376 914179068 37311260 687785409 240978210 439375000 867575598 876928542 880533502 895226562 486999649 823362368 582710477 774805673 525306000 842914575 380263125 634799975 458524601 782978128 515267745 652259255 927686793 989143550 142965234 675697899 977805970 978677896 521251548 960541990 739817923 956281209 301420990 353108205 324797011 926671841 175728435 530741827 310479656 585868746 847956772 925999471 953222347 968370422 244995081 302851462 69637865 227008070 154804237 363054635 92253605 135240969 502953099 609507156 262550669 466661947 234289483 998197193 612968050 805745472 660819372 947633580 757029430 918389147 193013443 926127210 550542654 740037435 864778356 996766351 436921393 513700024 347915228 495444771 763726787 887591043 174678080 915633085 968533008 993570613 753972901 857089097 886646630 902289761 152059882 687286008 731220971 854006171 767226767 933955192 774055997 933087504 606774885 885015570 532552706 973297479 951087326 986582529 661804185 980464124 701092527 787139385 997389868 999318561 662233592 907928972 539000808 937043783 839096910 921974669 823560923 863827894 893380323 993685870 670088625 969929763 197246972 413709051 626307837 909622032 401191798 447032047 55087096 447782184 129892058 436245358 468374529 746555578 306703213 961938872 527960041 718904895 230428921 979450878 633961573 701814216 883570324 972571860 450682419 596392382 837537341 908165382 692435563 746731099 344610282 922914685 829811000 927697855 261878108 388188193 106897773 240403489 492228482 725954338 297771087 647729187 402324989 437785410 867291866 905101009 917082011 963607598 892898562 948182983 497138180 817386597 991426022 998142985 333642460 868913496 513186539 784045938 953233619 991127034 141056556 888553528 286964278 496788090 265019901 964733061 809643852 827999611 61230924 979974904 588654936 675193008 822047276 977685186 846594382 889534879 631798184 749500508 56095634 903390845 450757315 526150482 864750588 998210292 339313623 766608829 509876943 572850679 117205121 872260236 905692433 979058031 207682636 433585025 279546734 629729661 249422582 377665028 624064340 911203938 746829191 801059002 470663967 724678515 526667886 729248593 328031623 842497446 534909428 636379181 964020477 990928525 782420990 962823262 485276144 856552293 40097002 263080990 875774046 931809540 825941451 925037288 341360022 992003721 106985348 315048890 153649590 972076444 286381782 746782185 156518816 708912598 676148787 939249746 978614682 987171599 674944791 890232569 982974198 992950139 812198612 876409323 600227680 607691249 150739800 585907689 17756079 427782124 380265506 542886449 94143996 970542524 766962546 806895374 416751694 540870143 720206663 867722157 281433334 956998845 244681190 363385313 462910220 999501654 561549472 866521829 403611071 648974244 587231967 695549736 381790932 858874205 668360887 831309580 531213152 926427797 600582075 855149047 315614360 942105108 470970151 937763979 840953489 936835747 558253361 841690510 296127557 414821382 996534476 999505636 373365112 532454617 613845815 654120399 203728853 861582319 996896088 998745389 305259035 801877968 767605712 861715278 968337735 983380282 538168723 667169202 129158023 763254783 68041142 584639130 346507342 902438553 29321982 649590215 544911256 982871272 156647559 386760114 525938380 968527765 738020957 823968440 172471918 620949276 913541919 935317472 557136471 685876020 281365903 758101243 305689046 961804731 965514413 984326261 338316186 995429160 284823238 324920241 402166413 717528765 634123997 745931504 114326751 289283738 135428297 319736673 707419102 821922225 910370265 964194631 453293949 803972242 104785903 647862275 730909842 773985030 716266249 822526496 714945884 965477988 657301804 782340345 218397622 830304720 348635433 433621343 605259955 834234673 275728115 654979738 868337690 929382474 608638561 754343983 635540793 825970474 710673875 836670603 946717246 998378721 655020004 933431182 748566009 858397362 379631965 844891343 177115061 255267076 471054633 968118301 777563036 808620674 854707752 923154514 710689462 820728433 657006997 686181694 512150765 718171797 307257886 383068118 519320408 677944634 287014646 398312143 537752745 698075474 986724730 994620328 141915067 529570911 396026115 850064114 527284474 918990212 244657121 804403054 18791716 657066135 90656415 848888012 567252885 991924346 422830894 803296510 234518348 589686087 758537211 931118504 748585031 998455887 679911123 761092077 403965057 816757109 837025292 961133890 350959294 509004046 828814194 853253381 928111331 949091739 612694087 991559513 775164673 993297035 356435667 481115042 159797037 814037298 534392854 859459759 673269259 940541133 885800384 891341098 984623518 993439015 242265752 740770925 375195307 419941771 438159642 693146540 898510083 906593623 817126999 888174134 651719309 777963846 239491503 975827392 872998240 928315155 670056330 791310141 347253503 528603225 728369070 889367839 357970551 518826024 83117323 969712976 442992592 542831890 524399766 776221303 807999071 900493768 678412892 930124596 72138975 686387971 1361969 311702311 728103972 867355642 593184301 865454846 346520793 414306303 607589840 617981275 175334315 560096510 975144296 984755645 301939398 984636341 208685322 674484604 385481820 704501378 628071017 877092716 301125239 545145080 887340810 943554022 266599210 522773401 210444569 618492124 575552928 628726903 548688338 914429753 458592949 831965102 764322997 838940276 721229322 758737472 244788433 313626268 547286975 840726960 25945539 96731728 498495694 962945027 203455302 457612952 145647137 175658955 755970106 948534344 543883604 655035544 607919007 882825840 433972720 581979416 955569856 959560071 281943779 295506427 9954483 682755530 345739223 969966525 551792830 634479180 309908974 623144000 618867855 637370919 550309382 661115047 123980166 989922109 742104499 871786352 72793483 279560853 363769122 487476492 639962593 970834312 874883372 974375758 377165362 847763913 424300891 480765221 404451973 565023745 616602276 809372120 557895360 830749277 169489437 951531865 515763465 851562669 997820666 999108622 265878141 547420698 691708722 849558928 180404157 492772523 383960461 672193936 49266671 424920580 436364720 497629387 738708658 985235534 994585355 996567237 216938464 570599413 506509816 541350408 474424227 952274851 203722488 915622351 229519538 417268245 791569702 954455504 897615156 947258961 968378959 990869468 706040764 718553444 656765984 926219697 519585368 794114025 674491524 676462532 431844208 577157697 936438543 992574103 86959848 570420918 237377449 543575979 965966031 969878974 531981251 996077245 675591359 726633234 366546571 906825088 773575330 803930200 623439298 832059611 9058948 275003154 529414290 684815609 493266990 946346543 884450961 993005498 754076237 824034891 988219202 990202489 147588533 299753560 225083379 506671337 612426180 771536918 174261235 987810087 787946467 890401380 904748041 933869644 327107786 426913798 754900227 970521654 886689060 960720138 281055405 587640766 408677697 851284128 600449304 997875145 491577850 965184394 251897701 987085638 607340353 620582307 732481415 895321184 507677242 517012946 440882029 450322552 570207572 748088736 376264169 701308195 438286659 923665333 247910104 946636790 900863410 902011937 320332425 356629996 944057793 978054750 571278112 831359411 899173521 984832180 241626147 697888428 188636315 612636908 342601769 488671965 163715842 306857961 318064857 916070944 465846188 649145236 358352795 391843208 338874323 737748592 884318828 923359611 886804023 968229204 799605526 918739327 441346824 958214125 645078326 647830462 243210501 946024062 567498553 836546473 977264775 990951660 476357923 570537674 774201382 812402898 598323174 644224344 347196055 757787607 774856932 962790034 336748068 899635880 422471121 563269288 783124157 802540258 817067442 972030374 39668655 872687632 681105899 931951650 520136772 549588664 184899211 228915773 817661350 941099067 538782222 930405255 405851076 914817593 814515720 923650511 879829765 993562824 25975881 466296740 257361335 892222080 134909750 326090096 716416292 851312472 121085003 852592639 456448946 590087632 189626793 992880881 671942367 987557486 807962023 820953654 793833426 988499931 595342624 628364582 908192620 978010374 94853209 154108015 754919367 864437680 419734664 748591775 885592604 946816469 446118253 602648529 983405043 989249336 907395353 974234221 345649604 513575148 260652004 764631511 819299750 950480837 665263985 819268991 230731940 424039169 217067120 268231166 316460849 820344201 249945110 374172751 325148547 708048326 509868106 572916246 155274378 760568473 973281486 999967398 851206206 988359259 988440370 991962863 950201733 950920533 359015757 691869554 317226286 803872230 787017990 852044929 99854945 569850254 637901609 980330615 895563359 989122414 596202283 783455421 521784703 593154633 290916447 340001059 30407396 624260718 109385263 334956008 387556778 892807921 931741037 995854277 328501985 771519811 478555883 586337691 756216193 970836281 348748705 449259719 352818969 788718098 128949097 824639146 922323356 977057482 389325590 869537224 22189281 324144996 466868579 659829318 286535513 891553038 569605486 964480446 744961289 793142167 485471327 911040839 230386918 718848537 843928994 844582351 607088088 757505646 434521286 708849315 711390206 910913664 389239942 962980417 839464092 930380712 310583964 560643053 130229295 746338770 56171537 671396693 632775763 740922254 617426633 800876810 71549298 476128721 41704363 87095898 955350438 959480294 633995158 840919480 660354440 815582209 31126213 469862182 861366961 906378230 504236369 847528321 593923545 970985392 454011118 941936271 47808623 395463359 235612840 742197821 229266717 802118146 511269779 996151882 120572158 782547141 209234339 430418282 480199668 501201646 710179180 824089091 390818858 723470581 74728499 727020047 200042242 673873535 736690873 940112895 771298210 902659493 683238454 905686280 653471154 756186803 152486187 928147883 115695944 985663502 638178573 831728648 739830237 823183595 809132749 859613308 697295022 931617234 986168253 997073402 513108619 907947619 694484159 978677443 345608946 349066523 391417430 499646115 75966377 375758598 426534734 718787621 174887045 863822807 719784295 992338071 440435799 741842640 10626309 267564501 131938969 680210940 415908707 793453511 327849199 706640473 974894099 984995875 10257148 150748193 13342479 605218012 716522120 920351051 400566419 434156854 331220608 357033760 49868360 574097751 708736687 998369198 454891370 850357157 392100532 470782113 104574829 959996796 160776684 683435523 419991382 514790238 874753441 992405121 192587865 195826404 486232486 685418408 623445016 772349406 285950769 296113250 739225898 801928618 164507885 778491356 392089044 935930251 423081997 524038802 472860923 745824086 718003252 932434354 763768141 976526331 736642156 815152127 251454157 315281276 122096331 698412845 437936785 564340057 717158552 799924613 648990685 740064025 139419935 352245503 760144031 985137587 756755266 987600625 291404949 502071730 731533187 997268701 709022126 810691121 503807772 680756721 797760433 874809602 41696625 580591724 883012126 900833070 263214797 530865470 335187453 594083948 218571949 936713767 161735752 816474553 238141365 681014351 652609 66626788 615637865 659590575 152703965 210310033 479557579 958332046 405097896 497556780 836830220 911769597 468863908 531137005 149023514 957381492 846228256 880310146 47167381 603754053 853902012 901298097 821946305 929199936 633720595 888063401 771267641 987620407 66214822 475206877 557326322 637318660 402177413 646588219 416112249 451977857 460944766 481662896 876681674 956216547 774039194 932265631 338857217 604561352 655816574 980803649 292032208 703499255 189372889 369778003 728480479 921725558 111560755 142457160 664736227 702918937 34172066 107275494 585894545 954909935 524354760 640649479 8833733 511843570 699798124 806785653 286283280 620509503 10604027 219926624 579661187 872696567 102313907 924457945 958153790 989759674 90932557 588652634 465497391 693121064 863069550 873263703 794578916 854176682 226435615 672537583 318986859 417088420 95044904 506453651 123141093 146246873 531856874 910415427 116403670 282586487 281483265 387147953 120921496 901501725 113399517 574771635 249569211 870573953 555468912 744124722 735292802 917330159 402750251 415672783 623808383 767129782 669280112 805797626 692203925 873977773 172439165 629999175 221507749 295196103 550391821 666111334 84993935 509398549 313357505 567934530 610085755 907754476 599284024 869035526 871411683 931917931 665643966 911081559 647320722 763175150 636459855 666137140 790930403 990814398 633338973 698794959 833054093 913301818 6570840 998809776 776470016 985171044 261961025 824775478 265871008 905723092 273212286 545878658 797900115 891509340 520307666 700064543 763349256 956189284 647352032 853453992 771382227 941455153 592021942 921770216 133344149 655085322 468934959 949944255 36549160 835477896 402075595 992271689 703331681 968032530 923695950 948091240 494413839 944988323 610736877 865154747 672650803 906099182 456285756 926469137 690157576 837683403 485696967 775559128 32715660 653523042 775247016 836623629 912905754 953422227 821778913 997373285 789890461 991390310 458693035 701823389 252629887 384923394 433048955 929118810 758013480 888764372 99477321 609566038 92120613 585603778 803801308 990836526 511921590 675179999 484611792 806052223 600207539 611514973 693158663 852042922 106805569 153523686 153949435 160132206 933544637 948920269 99280234 344043849 689803628 960123594 141175531 796846754 458002709 614754186 35365426 446706293 541305616 693241173 20205681 707607165 90557075 92680175 63372889 551904444 198849546 777878005 155754708 433021720 827432824 872799899 677689382 933017276 510431465 651233675 590659907 960217381 243034877 542519123 288821299 428202861 796712687 934214868 607617997 616090994 821434062 825076007 184763647 520740518 886936456 980216490 246072100 345332217 867019535 929720077 328148498 608893155 972906240 981008431 242209961 368470025 966026697 986240920 79756539 95425477 857539903 974971029 943640019 967428186 690818535 939279984 815530150 822292502 814468813 853980789 878973142 988095136 545670310 621936033 805179034 814357221 470933710 967038914 509893395 661930467 671378595 750293626 824915939 960187740 521644323 539982381 694129849 888611069 676370612 770373667 697409583 773668120 992892444 997006707 246715481 721003132 37101204 992615972 880270879 966501809 810449600 851527479 150200241 450761998 699153962 850123692 209222947 770603239 23910132 593247403 911154380 979448166 726677080 826869767 984794816 990479562 774979815 778546769 609051418 859014251 974906937 985382068 44551514 111747346 383855288 392385042 202760521 563242657 913023410 943131351 808660826 824412972 241719956 940359066 498228615 794144017 179428143 867021677 849396675 926439139 217881681 827432306 968668267 990175766 578812247 704105163 757698169 908786041 632570104 763943043 888192613 983787088 23492150 715138036 82829833 134663507 234998572 734191856 93463686 925962920 541970987 813985155 116442252 468128937 721229168 929249446 644260448 789770447 190319831 541021935 797538838 920244836 804458903 810976785 665853819 966755311 571719786 787735170 864130257 934018807 583273571 630867765 472125976 998263868 541492293 756807695 268977111 483127522 300368271 721248214 276620983 967837159 210008310 291768922 949419177 964764747 197368177 401487818 159244155 719159445 915398462 952655394 340090189 794713879 792544804 827935569 786674562 930861819 714860222 989892128 252267022 959158664 792904779 864330570 543922286 833024129 529514640 822371706 971290229 988400190 716699739 995065121 176751938 287964532 150386111 850460487 351324971 923678687 993564429 997320593 478130205 614102312 536304866 723265063 80514555 916191430 595632251 725613578 235778989 692895477 22389721 668504957 422041087 560911809 650984117 985433244 860439828 913277285 504315781 599814358 392162904 688640208 68538787 705864230 466883599 643461486 222591249 626340425 916462530 969350997 869997355 888004469 191703584 409444108 776117473 901941211 671253922 721323001 584185451 996039352 462690013 784057258 410788207 683401262 234284834 605670879 749402641 980933358 230969248 975171764 758916239 981374266 182123938 859556457 188340220 682354652 863053881 978106296 228527116 333496219 770051042 901737932 147373900 163191079 292939251 444158451 320276035 704461259 172829293 833340616 84985462 302420873 136736388 232392853 134511460 944231250 60287952 864259883 375765388 827620640 796300861 858295472 64032796 693200950 102218703 491670815 414442942 816766164 136089015 175852336 174495665 994239558 816443382 876200078 863164254 895238890 769243190 855787959 299664947 799039090 776070459 980259438 539074675 844380413 123787604 934533244 66291488 112491619 992471599 997664629 325114775 950259047 87739501 217333721 302286471 307096105 339022091 643335760 772614348 931408433 78650640 521179670 507076005 774805873 783505839 905966300 35057323 282469775 363827249 497963117 729777911 740253986 963550397 979730099 199486200 591062228 333527586 930639270 954379847 980014090 575466188 876274970 681077848 972756425 993238643 993779432 659536129 984977304 870516871 968904579 97880883 684616074 988333314 992421202 924682768 960133438 881044246 948067813 825971321 832766864 130540238 974926175 174664010 976870806 462997569 605191973 101474618 298536127 877631735 986412114 359166433 994885097 857204129 967743152 926009511 934389627 404672614 615495397 655302987 877673413 430202172 723367720 212765604 999028539 215634618 892735983 352901851 938476695 641297553 863932628 381700513 441709649 259049954 292457892 206062547 524262704 956665906 957557032 20784854 91159666 151438576 681589594 938380474 998068883 547091157 871560752 805547344 829779504 22321964 384318759 446374134 708700847 486348249 890779082 912027928 938891472 382314219 901657741 506345096 781174240 801139241 986772438 949465329 973868748 437026338 699616353 863407205 977693008 851661363 944701493 95063156 992829445 198158029 435700693 915698675 997897483 586052792 813769098 179023085 851346646 622404050 632444476 914937463 982620553 309454304 682288900 194762812 974153899 194418711 745970194 768222741 901826064 609940481 799083437 573395593 597395690 659395736 834401060 890736589 905269493 3430149 449572569 517128010 893330996 682114606 995929929 52088270 808502274 49072966 700405077 56646525 588646887 907758823 978103137 255269321 749478993 371993445 739740380 167893047 349100700 683257359 693785359 513508982 756879329 941493037 943084572 821544229 939039588 777945387 948275351 939435288 960597590 917642160 976109731 612643123 965249925 155206665 651382266 665364493 974661265 991145597 997445156 54931290 177585017 702749266 939439245 467270647 577122443 564416074 913163105 494916055 978253868 642504445 650542811 441671220 612152927 60955469 914309506 787758141 885035541 706788972 955137936 996591153 999006649 57949919 862245842 309607352 343691504 627202549 856623316 296325840 524797019 894586900 999578839 129113762 175585309 451967167 931875139 388487003 661589653 927956990 993280265 568076885 983619023 329203960 871283161 20678816 708218151 623310217 749457883 316398639 379637111 152943829 692548466 32754114 634853124 586468580 630297889 446165550 768558011 264207368 383955564 396117500 571491288 942831442 947157166 743684851 904123993 386845826 836913070 741464437 872238069 147861760 657152195 644446645 762125670 388695819 690103003 156641385 299383643 717931041 930464359 840759625 926791380 307716821 837938816 482515750 551052546 209472698 867515079 886448385 972457534 850358172 921994277 742455115 849224747 689334816 955882231 123300747 962195913 440946875 765891822 262354272 548239142 767101450 865318878 96074387 437636753 721066582 928565784 948918794 985393145 349549175 994900931 346713295 470079853 235389703 365100598 356543133 403275134 542503074 686815128 165558172 820279442 114374629 158616477 78206694 769560480 630238259 719569676 516100502 645571985 919223353 945553803 530580848 681031503 39439580 628719159 543137010 966412211 785519957 988932204 839661266 859224286 573720211 745835570 483514837 695148734 833493280 936991284 121163477 507856067 270238775 778513592 51313511 276137207 429073617 733308114 21347160 384638459 801899298 848244297 771585946 958180157 719729152 825980595 207564715 599053466 479991940 712832516 532722663 615454479 215041819 492510264 217266369 899227069 649754823 743847539 91355373 468772423 72923904 160611955 673149881 818354045 139557187 914140760 213188943 528849597 580595877 668221713 539678218 628891100 604036030 743831254 514201268 717469836 614740428 695006025 632768071 859521309 660079771 767570578 531411882 908861989 185507950 870568488 535775731 751107956 659066501 741560286 840195645 980298089 761166236 797951980 420552977 913068246 625293104 845195790 312735951 370743583 418795840 973458423 439208711 945824279 710171434 823621129 708785475 906654157 195297105 302836681 707387387 806056819 623762942 631874701 363674692 949474240 992045898 992248804 310969622 699377400 570726310 938103660 764475174 868243325 270289253 750949703 128646491 295684186 339903935 759809404 274614309 910047777 905135970 970018238 904561395 928074730 691770428 700605355 663227163 901448363 160231124 244600353 850916992 852532883 664130929 907424869 857792634 910500255 544681376 931096902 334865863 880144333 696503376 952015564 299339934 368972571 877451977 998226879 188543732 808193654 725659032 905503249 310831572 490162911 362491311 525321509 512418314 692614953 131592438 875964193 222765074 665422077 407635930 462500932 421834685 784581863 637697386 719855531 246170332 897420149 70182699 946030409 12705519 604936084 78621616 308052673 758564177 791055725 230421163 338264465 14379256 777907010 386762496 388008956 282244476 511194166 77999864 560052128 615051620 848203902 527875861 564052608 664445262 684065832 169782030 958142282 248149391 308245795 722190528 940562088 187457614 593738779 363365013 569093152 404131755 417844384 700497735 738191673 368142042 378647580 959244802 999751162 467139377 715941651 619039163 757046348 412669908 889574657 870758535 901576445 795562161 997057943 714182976 996725399 146729459 623078806 187627488 419052386 455760756 660588754 788893082 910768673 773500076 903434635 231565922 280604396 314884532 439189949 88149898 363005871 85635118 866165924 624721726 897268636 167038273 368102771 648258052 911054092 56553513 712957276 284356312 499422993 111601335 305729979 953096516 993759403 524602360 752394169 7963995 510819526 550080435 990905479 115815946 666325095 272286491 845192863 287104190 641298292 732634115 733252499 145811637 534769474 964431449 997430027 750938033 821562648 293286915 518459047 846010792 942758869 799413765 914792565 489396516 997060364 110918901 453641702 639910806 951990817 525464037 597485465 533697450 739744981 10218477 522017289 442288273 796689152 414432097 892122516 795699412 941784633 866192062 965269875 556058535 854357085 359676240 685239973 946929701 966837514 757197256 780549038 912521344 913632917 331390073 719553990 542780957 637892395 784388080 841888102 250334346 630591198 78104620 782960882 482367252 830678431 554243396 559413230 448471135 496276041 955373719 995317122 534551621 711107156 138977405 332523715 873482314 953241380 662666160 945358574 788495608 917452184 857032615 947827553 537664057 781898881 343670065 401883434 460711506 829646181 849138418 908264821 624703606 907017263 878390566 908055002 928319751 952295467 377877950 541352002 924819281 975518149 918168535 997599729 936154243 969964722 806572792 882093272 763499457 863326164 51877494 146626749 201897618 917912869 225780026 917956187 123958550 700291157 7854649 385353743 904767849 982291529 521081255 978138606 243293416 489799911 755638573 810862989 357811748 901956764 782376712 905580381 757598441 979511351 210796288 768062325 821745649 990584450 65589180 899066813 181959910 934743274 978895375 983710040 385493003 715323833 40705478 618876179 86815148 872111468 912060027 996708758 256962508 940987740 4067367 965769327 652125806 713260423 914332363 962556731 167300752 641436839 388976549 446023917 701735004 934582084 623203291 867014444 559412375 705123204 315476848 968190515 696350273 885919254 960177740 996424561 41063931 864518661 20714734 406802309 880414282 997811410 628350612 649457514 921606835 927262090 873316595 945219084 605627008 893528356 287689967 591983940 332703414 355492595 164578579 169497005 975760925 982730401 670857375 772076792 178798315 737936227 325366870 640801966 494586972 740724131 834162350 953012585 924199029 968344612 813036585 859929363 867369035 885253230 225382984 431922890 297791937 335110585 931360025 996146562 414992890 654682434 769772167 936607071 475300036 871473411 20387641 989521435 757484957 904508505 439925194 948658734 73441424 530948495 552040454 563155290 829126444 862669465 311198366 831256821 916211908 930075184 586449740 605837856 511426811 646399780 270188391 437679040 293892265 881531857 218237107 357240547 334922747 765725368 487084343 866195588 558233130 691022157 395758408 437264253 538361601 787434583 189238986 204234471 489979764 754673852 98102906 250521630 487196721 988921860 338686147 987712116 530225597 900987874 260029389 948016101 428154221 855615774 521087775 873015248 734781987 746840417 601693147 764987571 260189108 592598446 807776607 844877678 580748710 616729642 972243130 986016203 483450138 495004388 536812909 620602016 770524540 860617704 576430422 693440471 736795862 794440337 753758994 873686113 735787265 825902868 323970976 412250336 905659684 962160776 176814788 772569197 104002313 459555420 715483684 861218026 971050830 990934168 980921294 985022881 348789674 544927098 675064355 936892686 470763948 730514449 697490719 993880437 143451953 152615510 468924920 590229469 63934164 323031194 262094762 748941949 29406485 876798197 493977130 940411198 746614190 818367557 767219121 890708155 929197003 996298981 764527238 857424830 341619071 840672540 321405127 409549178 763310489 822734671 823392501 823553831 807260855 969544902 268672151 812493713 875246351 942006791 237149400 727014299 765400998 783975790 468758705 754080179 227791110 426394370 431346053 639450987 248839541 609913981 76630212 101491857 393628632 588578213 548780914 776929219 440668356 710764880 40944620 147619829 857510938 912094165 557594238 817836143 793216800 960315012 360367174 360452202 793230957 982156299 174877390 273804092 541343469 959125913 198734289 275698188 178401678 464146913 37131261 944476384 624053067 729515300 26811269 494348040 146034572 389244346 423296573 667705861 696613105 897771772 602354672 840381505 23121653 802462623 774611060 903061878 841500980 863861373 741877912 771352752 753447027 919917226 948038067 984824839 405475082 791071587 115585203 787760218 775124076 812652370 683359909 836690770 758524754 924443199 128496674 829862948 602917508 875604689 627680760 889575585 815519822 886016224 306322057 919441060 481552327 890259562 438913259 478737255 620287649 718890446 675803604 966561384 428947726 472022029 199608054 778451354 486114883 685638467 207448575 382333878 616202511 782089684 962170320 965582533 397753835 568059044 469051191 709767693 716837042 824104393 141145855 171398886 787997259 871682137 928011470 939408771 755774317 922873532 159218372 809137359 798070651 798577222 303730734 495964779 579446446 900539445 826074522 969424849 908752146 998870739 385999811 601960339 702992974 994888784 486326392 872989251 903043692 969019057 31130042 633050856 693750246 704657055 501120200 944494312 339760778 727102670 583482555 944305038 248588592 555068113 306741257 443146978 704446212 874664301 215351147 220864240 998356749 999982096 261090919 642299858 330160504 795008398 531408258 998587802 901867106 906638718 226389477 656661484 40636467 382790696 395147800 936496184 37462964 528740771 836334647 975536752 676869151 990236895 454906563 725524616 247686039 661119460 236157653 832971275 673220402 727534721 554505616 737023326 608362152 657895428 308603104 716901351 822500901 865202651 949759038 961491272 35070930 246910335 321117942 822287288 258664101 989099394 92675743 565031651 264899314 297111627 757705904 873007595 8723629 808836234 921122543 950134447 338901166 945385215 357361174 445163966 704884868 780234047 98173393 968130476 443528811 536180671 75710111 348875956 188911418 938320658 950386875 962628337 933390393 938131485 32431643 132823341 855759778 923437557 936579342 949077832 191121907 696600975 713609578 989575158 656325073 921282791 488519427 782338698 967500699 994246564 427021259 843300145 856681204 994311495 655411900 797691233 814120055 848825321 496460307 866120624 204607272 219021018 508837253 763006442 64047505 286352842 650708935 792498910 97587698 376925916 579338002 618954456 87300267 902220913 492077216 778140717 523107754 720968943 184101019 930713972 96071103 456895194 744855889 992251328 803012973 985416198 812096234 980942462 115027485 537688315 173056244 922839030 610267818 890315222 147887682 669215108 117014935 803887812 445363734 498067627 293359661 947782709 195453741 581922398 659963705 721461672 140291606 681653023 354465468 719409046 146588447 933045890 105223177 274813456 818891359 930305572 223574853 577096405 449596242 695147456 264009043 468707127 131473564 425554542 293660434 327562318 813187032 902482095 834767705 909214945 92156391 129013179 164897770 295359728 809596079 974340319 887527497 960832151 647525987 865749607 567231532 774283099 909213538 925561035 974101984 997335247 151650339 479168793 223943970 734547272 759354977 913522875 604252338 876604372 633281136 779073503 518374121 749557236 528555738 591041653 57639895 742292711 246752291 804171804 892373014 913161321 65143091 670111041 924863006 931662409 145113247 649000528 259043208 487630598 581020337 746078348 232419664 754972780 985722313 986839748 891240518 905843811 21829627 850240613 427286551 606161139 158198756 528116356 214919594 620424294 546332119 692352997 731903107 907714621 537626100 770011036 882680450 922367105 285782517 566402170 696251697 844578722 900232274 970616751 89148104 570662583 728829544 977904539 633725074 874481019 664271850 830492212 602162246 872751789 209668029 650180000 832533770 978589843 993846261 996861142 922032013 969444035 870976138 940643514 435590390 923001986 227670106 626020645 861846306 894066124 929420464 976988369 931840338 952161498 866916729 908581861 603054931 812428458 20080464 742659758 947773770 983100896 291246082 792141350 769013521 903782998 912655771 967033941 282035978 920761727 680902527 836599968 567604752 669340850 145032118 428275300 345939476 809906160 569122283 664706017 537697439 691735260 76619455 851280399 551393267 626785735 427244579 632447712 736471794 896611380 685689004 795214490 640142254 828590258 110272644 608568164 11585429 592579218 507936805 618004860 766795556 819858953 679316371 861343336 501278435 912297876 475949017 820722593 689045850 718599499 428264246 431709234 193394492 983130754 157623179 928210365 247333094 528347171 696777264 724227572 281141081 405467783 74466675 272367196 317209847 825313673 854096905 893005627 547398325 865102976 314293697 552875204 228671979 994658555 940640237 967718864 255261632 266012150 9103730 688195368 259978450 821643761 27581641 693173160 431535069 588538458 850128689 956903599 578248642 803658289 747094212 780817926 2716421 169898036 177385225 729224884 824104990 827466230 621333478 907071238 14543370 877598874 114801865 144132838 116904248 974142810 207832738 749080437 87250367 453428305 98110344 222645727 861548575 925764315 636409547 658363921 702389790 858187616 887708583 979446368 529402688 645251034 406675225 537432776 547861427 965524305 673010472 673392065 636625692 749720816 251808106 503551874 547496472 712335177 780944861 978847952 753121091 934671342 188699319 770701634 674856678 976159725 862037125 979522092 908579269 971763830 337446877 624967913 584025823 691243938 841256340 897468323 273388706 357006863 988858646 995693800 343880223 992151571 933902536 984315066 346166939 932314893 718894331 848516548 839303865 958314208 401888688 712453262 658049771 969368952 326043111 709490055 638250076 972467157 734496953 769510267 176492030 531613168 969082918 970004617 114614022 435796098 206544124 824625309 297655210 476904394 361109207 818897389 400545285 667408862 288214887 710306686 244203336 335251397 628744643 642724641 829890021 894320656 925327306 958945476 341980181 401047009 325215628 989435641 916658357 980754929 147657924 825484013 854696197 920383307 383018615 544982038 974925144 979823254 994775556 999293764 913765856 955567179 372727854 518546774 178714226 239768235 577705332 871719621 707246676 904801749 661505178 973471840 517839530 732336318 97686387 207250600 148370629 247058684 859300328 948594758 880684770 979437387 723899116 881822343 139070225 269445631 523068937 552361544 968126560 995593689 208227929 985234577 94862923 192948223 873804551 909704884 76532501 820777082 403869385 543973538 271751982 962664189 698454411 811011571 218693934 640454564 180847137 302538111 942519163 956943033 138780005 795816331 974853918 993283679 637790394 825342014 731115794 854255952 835781931 965675121 663492408 940457030 477228251 571146780 782686135 902180914 996231078 998666157 401664081 564571787 828755587 991755237 240846067 466218978 62467657 545192236 111930225 964960607 831985203 838656305 446188402 752734480 672725200 847709301 124600838 502573774 689574208 935509321 423736106 846203730 249775224 669402860 199023891 646502219 708491654 936827878 961258523 961995078 600703424 764462666 241887558 619204373 383260675 693950625 487205714 755368821 413587175 436115500 908198249 976969808 307619030 469792291 864536666 970111641 692356866 811978685 313276752 527634976 151580203 505663198 271840488 425559526 688164634 966544778 399472386 548905422 799805840 807928136 435777614 657501363 853540515 951398895 863584589 884337175 19554913 736752564 600297205 724871357 40524055 649828419 191950316 741054076 15720316 85352743 984970521 988545672 922327923 943074967 787897922 910189632 431751500 752380961 997280481 999125395 183951644 894068486 750146794 999718823 913282716 942137459 328116561 438864088 861567057 899822244 823535368 990035240 890312790 950781460 2702175 148006029 276074255 498262333 383463776 755921197 551246852 619551145 96899156 894772366 303754927 304847955 177323243 926585767 139650219 608089570 587174075 947721961 464898914 886410392 89179029 879753261 839470126 957617596 182842079 757791149 190943781 272185078 668379396 728151359 608708552 895307269 118495461 633030384 810224497 879550060 93403475 932802406 727864996 900184209 916172336 986187511 512114232 577902092 13696585 682095372 171153455 443239944 771140837 885131635 856796713 978713639 711021180 768120025 386040601 938051409 823119299 931803211 180944431 750489798 78574992 175982243 79054726 137210172 308779654 541581868 217077140 511201865 139210890 641784070 630506515 856532149 423785308 953735424 648452218 860419599 860630932 880168748 214530035 978234563 198594880 200027886 984271146 986906777 281727708 905199463 131452394 801108532 304723928 535396880 188661920 765273626 603141766 658877727 819105629 826924645 103958 818088482 672133782 821932960 107280581 779138245 86548849 418912010 463515436 522728933 101205773 184357264 854355272 988055680 750473229 854643114 440297597 775250837 731788060 778990854 814493183 969651460 606805132 947803010 627734772 878716491 966332313 970511259 301084471 702256144 568236722 682500262 153553410 532610296 625026674 721491437 248909672 760355851 331971794 585446356 876054196 995431389 528745675 655594845 7914926 313020913 505730453 907216677 220639305 942640212 331311465 424662851 436549572 611733183 635219440 935334680 222516438 290437706 65111975 702436113 460989414 682979861 944590269 971912675 918302559 985522562 42412757 160137979 843451666 970060035 502149855 854233745 722891273 820733406 41586661 377063343 604711234 877636712 267791649 596863253 89396618 791501801 424513065 935978935 583496794 882295024 767199505 833271111 542925232 790463461 606464191 844840330 562600035 883396417 720675743 783461716 232381525 417260332 290745629 828891524 282659817 415926996 442743675 605420464 178949063 243841895 274129541 721611464 598197162 946286017 655236761 770315831 465430487 682432249 973251040 982520767 296300016 296996085 647989871 695000923 679604909 971249855 660727254 895873267 852916121 915204589 226860657 976200551 351522869 904978783 933505038 963705195 226004858 917442182 845022045 907794558 854205939 986432123 974984069 980400487 225107898 661251723 530318441 892451157 399832969 593522406 432221905 578379111 491459725 915680437 972032078 987004159 368579402 876881167 799085407 890580282 88064080 455850839 274084867 426059431 397706293 649599443 304386699 725981109 16688103 876985583 523501079 537831080 57293316 526687525 151920441 563024102 726159685 911681577 553419480 945915872 927504208 939604053 675011018 678133259 866263137 878409268 208293895 702051751 393954257 566338711 364321075 606052901 666245344 970712509 155290360 580137349 572164392 606713539 888051779 897739094 86709828 236418364 146008488 388539011 870468018 970162891 704505469 994406627 440811001 567161192 426064240 822124560 378171925 553737165 739327615 879159379 649563257 791905158 267348237 438181128 995611919 999617699 246333275 861996896 472760260 922066817 851627413 905636888 106136864 205963790 275701409 785098769 471276947 848946391 218303555 559344905 225960584 253921029 139369042 731692265 975801837 992885543 891680289 909399221 199414953 986061541 803415011 974252261 116026554 756201460 540355395 783398680 252770726 984044145 60900363 96100849 355189965 895090621 802508565 955212161 405780860 480149132 301596422 951251625 79710459 707603778 971746773 977812196 868078187 908908249 54135071 385477686 795544401 980433814 180516482 852803004 589533155 788493234 547621244 802440900 988471781 989137743 689030333 828123765 650168786 659245794 287476602 347068730 136765011 820791666 824183986 835834231 323792096 635183514 401433003 446825163 338970963 724361164 488449736 655268627 25114135 434224864 716365831 915212461 289792668 382679365 836959530 930826491 844134845 914815705 298694062 720960123 295762192 951465546 242667656 863053974 297267234 585189775 57117820 641636644 468900311 542836669 560245183 594167246 122076651 130972307 142133684 723687424 693962467 997138793 948891390 996165818 971714158 990128688 589939302 744405005 774298242 780667800 841313704 933649218 556804875 665636855 823562204 930950493 629728098 901667546 101459858 173585387 612086224 986165683 554874239 867142323 639047354 661964268 409755334 577839210 679793620 843432849 292159325 315623276 730382035 857566937 894426131 990309136 898700167 920722444 85538237 819994719 677433144 851358745 312325808 590807671 30207502 359300718 449075758 924223463 588425864 748488616 803987516 953795204 695289467 777428277 697266068 890897094 74876018 152808030 464218070 795425007 936819854 962841983 415953831 839950427 940852077 946046774 576208604 696863226 562332543 857605048 348697283 596794875 477479051 523350104 853235371 989818609 917834840 944191329 964870869 978726188 302821588 830905126 954308632 981287077 777601183 909522601 602335436 998354408 311589841 668815002 824874611 980477684 523246041 890593862 610993172 640645605 614194804 822942857 143288140 374948528 333180556 587330016 534323500 585874849 544500637 637874130 661435274 784967691 425408112 827232913 734005591 838320675 134176086 836277289 451813269 601573754 536708421 929890854 648149283 952616172 528161484 621594094 975108825 975422717 681665593 856613163 293151328 994969364 336354762 720368686 720481555 916339027 329277991 408910580 297107201 804080328 276350568 354850146 679406153 858899718 454322690 837493805 965616227 998759851 221739546 942547951 49210677 628112223 239119925 276881550 325778058 983953789 25532411 462695852 138757505 818468983 405446027 667394764 5853395 104463125 549118152 934834075 390591015 658093691 204174325 532308131 815068766 846872479 732024993 745813711 707969389 811402164 965885935 989757161 525955771 578397151 387376667 877109464 645167327 833082105 964196134 985897366 367102526 821615396 812712369 934810964 42068528 975687115 694712069 736984283 194105874 286886915 191764620 868385589 84041126 531040802 758040613 783900546 407538060 976578243 317822331 339880157 956845602 975423643 179775436 996430203 44189213 789799155 950728878 958361704 282564031 489845334 607426746 691317774 578783695 923515145 824523392 971952692 243576519 611034389 936703378 952645931 312914332 980599852 832559453 963067897 772459727 964760938 748217851 975965276 314929821 401604281 499305687 844247411 721129713 972888677 10789791 262128028 950540733 950835721 633022093 860171981 284351008 537549141 928100724 979933749 701969080 893775015 329497069 539915521 348663417 904954160 935419130 972310837 839075967 970334710 612479263 821762754 59042786 987796388 232096505 565607436 412654313 830952631 102479188 609808475 88767766 602739514 209841359 372208635 908705596 985877339 158488188 496349192 620784445 742890588 361760165 364896117 498405563 579089041 451617851 600284111 142221912 453096920 740421138 832404008 305973805 921818700 162391674 316147408 677396866 882000694 668867673 746437367 733305896 842309609 582923977 713059038 633239194 749690103 953572302 993644217 38276618 958684849 349598926 656918434 623132236 995265550 352995704 972933229 187191163 461195069 881558106 925382931 375274339 731200755 412815951 581695213 351816800 637360712 150150049 683303935 498193173 693790204 923799200 962845871 585825228 838337518 211960658 239777860 57067350 211020855 978242342 983054947 922751947 976575726 59389712 533975992 523383709 963862387 827310382 922815463 355374998 359257777 43246784 995835082 41450006 76915555 67948841 124269965 431923559 662879197 655105381 961546921 909819369 953168427 84641815 451450951 270902652 860778910 734315866 906166605 378086875 887018057 605168230 720381280 251955465 405781284 13393395 126942986 428262480 877799482 10450333 156034963 952198937 958910586 888757215 889793924 211435342 332103116 454473093 607668309 884302821 938326671 285621608 774810536 777331454 821633067 857507959 893032782 554856912 846659530 785173803 835851882 663233327 863155929 505378879 770592597 254923815 524109714 653329354 873679034 255812578 462849691 534797507 849113713 574562251 721305331 579854676 723998222 311936188 466873019 699951554 721293131 612635454 742372299 52650653 870113977 655911292 920911265 744705399 772678872 424045563 825716222 245823940 879563680 751360333 985520978 130166263 684278719 119233081 691287168 374695835 393483681 86767472 549071035 737655695 814961285 848572139 890795955 658182005 761989374 998218874 998769002 111787205 789081685 278570451 724377305 424729810 554332131 614268399 882313466 245201269 622099167 798730196 821355387 636588124 957378059 841559076 926541579 854931381 976316440 979651373 994895772 769251401 873763792 718892005 766660776 806978297 891941003 295784761 454123053 80426460 535240497 413677563 853173302 429844428 881518062 266106640 696524877 698235768 896507945 624231173 793835566 29801987 425777309 10472799 735405996 306094327 515054657 606263327 996907607 26347888 867182993 849086097 987146098 130615966 563730447 670685221 945431630 885981877 933585690 35070365 279461677 169201159 303210533 54284522 693405995 616135586 942343174 881018048 916566509 714244223 780675809 325604466 700753879 859507287 982566284 394452938 415575747 706753896 708968608 388790846 666650546 298505559 496935425 637998650 827229878 989899990 994161846 44375069 111898154 686277412 692154972 4768075 49965257 233505112 631259033 31091811 907981689 507439313 715134179 911741265 954229998 892755335 988366533 699075757 853905742 743617005 879193721 711920655 717298678 171710206 920761661 36605097 675416756 647950351 776829421 637207833 996721001 567208877 944018715 620281388 784595255 45780372 578944549 310255328 530411658 702443315 927121316 308361098 918901629 303687475 478984151 842163808 907762789 781112044 791021489 136972613 226411081 910124656 951171436 26962851 315515199 289981720 866163797 385741065 892657706 54226678 229604445 698987697 754615181 286175824 937942949 520688359 538432189 260749311 668508146 415736908 600746363 190875945 815291065 398001430 461007422 104186965 885707864 863631397 969513923 803831684 816533495 385661234 533573081 252260183 418043135 708419637 913358126 858723980 980933142 370306333 745384388 467051400 553449983 529651550 989471860 622840902 849233844 472436705 919004724 863133720 943233058 952907450 956965492 140344012 729881652 900044456 903097890 960827511 986011735 297735408 806381758 823373041 981395802 679781997 721143641 823978116 939233859 325332457 585425042 343769327 708425025 195966961 363603054 31120358 954655941 669292093 986630163 516803717 525857154 363725689 573244434 752846224 834594315 44993681 423748000 439575096 852891551 574410540 652466533 961675927 974946900 995638881 997786021 863216602 963779425 42859688 837180633 17862692 911542187 618771126 998237369 270746483 617491587 541934661 816575101 54353941 183360748 252712250 475033871 480515990 673526397 119463408 806639197 759140700 913575353 437442594 801402511 565437408 741108177 260282207 410597707 203743939 729728217 813114299 897510973 453721241 857456447 580061629 824823821 432308465 927287112 968999999 987628332 90162877 645138482 337599542 777113010 463668547 541708478 366453444 831095468 78144947 750853090 894019435 990177906 941045009 998382857 661690742 881248235 199004605 956443095 492425002 693506553 235785107 426513899 713206194 878015587 657024202 690705125 748825171 892326762 476160050 702463197 943053933 958588576 230272557 726760047 690314096 721817464 818162117 938321666 914481463 993045064 966534588 970171133 704210768 809612957 151306572 884825547 642004318 844714942 836477794 848746893 870187550 906582026 570971867 990984127 940199543 979437901 869692326 880844316 605485577 776001552 676811170 686717168 490917426 714099427 433397202 492185983 260830117 985971277 386324064 950026130 424455256 883548079 190478211 665800465 510481180 620091822 901448847 940109531 569513305 985427643 46048463 524198360 956273941 972499995 827283659 935079058 724226252 733738499 308023401 569701133 707433839 770522871 296557731 626105294 662324481 856018126 492981805 842776916 100299376 200373735 77234203 941201168 53606611 385632134 281764213 948523541 43589570 437442632 794401376 853300418 394157417 616942909 943006161 966634132 743466513 760493125 535922478 806909313 104125748 508018848 818602286 950529934 950064729 980494089 210546962 950839050 514486907 785609330 244437247 635533808 13638987 908295455 477835391 689170644 108406382 623749415 523723204 706774934 354099828 473524965 952454662 955592094 665222245 792262777 312204231 890915790 464736466 733485204 756822480 767661521 934319768 956428901 124562105 550275438 567542514 765555807 829277198 861963839 676250854 794269066 199703569 488352496 434681606 701211081 925478356 978469597 562412140 930815855 360277111 754734667 341148247 726728111 697301299 822789088 100678974 146375194 800443310 880020051 127135067 147578401 757626549 922415328 247601592 356869021 663416178 767730282 882105216 897598912 144072751 296957850 92808585 640615345 151967469 984055300 92961278 351117711 139439005 278796747 310231131 792079553 472139390 852419650 610306365 663583369 185405511 528890262 748871462 965633932 382152742 647081263 996826174 999630754 572596377 880193606 668194730 686161580 440293229 819116051 521163772 907750324 643501098 810726147 162246607 519065730 760110105 813226988 947717992 961770306 971240035 978966127 691946152 879187561 794863025 962243041 994495105 999628567 237027220 776480992 149301776 764984464 73804894 130536102 468817949 953237586 726760491 903774216 528286325 611184962 228515450 305609861 750736425 995949800 258959260 830314840 762163284 888150191 782856978 848602818 511421994 831880320 83374308 604482705 448611960 525997764 14425631 762784419 537875493 834081117 254249922 720389966 609326815 902096304 601103087 937557572 382540826 745858797 425832059 978553931 771964603 931516171 484123584 924062285 189218319 736586569 723756686 958696675 300777270 652568510 429306702 752366096 562572592 905388106 200953429 234560957 868012373 917324942 769284122 898136137 37471151 279175073 758041971 785355146 924496051 987466837 845535382 845997166 700163920 806696273 244871464 294857054 455494951 550214688 296945925 695352737 855539820 994141535 635242571 946452842 7701717 352674481 774648950 876495590 592547111 747483845 815217714 964662921 632963044 781402753 823744674 976197128 308359490 514460600 136750020 961228185 808681013 977001425 311755881 830532409 429170538 873526591 756390926 797015303 74321694 506655906 589367161 593818606 880655920 987450289 2224471 602558353 991031468 996005787 601766539 744107450 602020649 675918402 992058207 998697717 994726921 998132693 769688272 991708975 972236183 997364758 34672335 704042826 954104980 977508776 44878716 269346410 47989259 104964745 225725421 701972743 415875945 541281661 118160200 846095024 976781634 993429298 531909926 578279608 983435802 994004863 633773477 867502469 628515558 900698680 619171608 849388469 480690509 861316384 926016393 997464401 14770781 248462093 394757842 679152438 464179098 491985469 781093818 947991578 476114133 549856680 25404748 173459051 45291795 859025821 619329789 865812283 133775033 186418163 283593774 921163179 528617319 591116190 687836424 738244886 602525745 734706110 64523100 480235865 153732231 658440648 665789537 845673122 626106663 666483439 302993233 347892716 837137513 862138380 202169919 287732205 911191120 961543533 880083652 949391743 592108631 844979043 509563320 893473198 552829169 854560033 605054219 822942176 531865996 738396751 629019553 773278478 666885685 876849005 979938471 988448029 790129734 977558337 338001557 719873503 351195043 736119326 51356179 609021558 950343451 957363593 452032634 903577969 353695327 458617535 709912097 880682124 318722223 348625830 643140433 723358448 15853217 806520712 14060771 153169785 744089158 801691668 773258394 972444599 552923762 731221670 85591855 614013948 31849977 602735435 160415640 807055599 494096311 835015292 317460998 427220054 747213664 883931096 776027733 849230964 647813163 657804626 858835280 860051436 366492771 752914345 912896243 974789199 333146462 797981387 855303778 981900444 463713384 847217002 106034196 500055283 739845413 911962802 683611904 815604699 249964040 494694900 712289732 977027026 77286070 905903518 585350758 615117743 522284261 656509592 886292492 998095026 885825126 937675064 689818638 958936663 675559588 890614425 991257110 999787200 210811914 505588953 772348486 988521272 420679614 743668255 978674576 997446753 677916475 948235530 581472837 756867911 736564588 950993830 264948110 284088663 362132663 900684976 221525642 658701786 267617228 857410390 587476943 931489629 674519832 778142759 541367825 941588918 380150534 401520311 998543607 998556635 750743061 759007660 591794840 996998476 434594063 744387813 400653734 742283492 704732937 978754865 282694967 820236984 494123500 582812400 308662935 784080044 238373962 808934301 709028321 996118217 987975813 997340096 832582190 854836028 791280152 922090795 79769961 472554225 631075696 906321234 724233384 818660322 717672728 780917429 953405123 996701456 937276975 946008054 685408277 816518844 361547787 426270199 957419257 977863242 221193164 834952771 386298148 796174514 639465732 846739302 630567962 763765957 47613810 766167360 884085394 966272135 109158612 514482650 147340044 691865329 912700781 935660098 164262349 543637645 196153705 215160502 924398782 960602877 9956950 934413267 219160290 845057273 257251489 460952169 773337740 945413868 813859541 857044711 152229429 370127413 593532491 845308751 724913690 839503714 110222109 142160075 301441563 854024358 730555046 986849384 262436649 281057563 900174155 953744149 957864905 974320413 566216338 621591065 345824112 925838530 500390132 662609839 175312675 513243626 666749338 995502592 509941107 866204506 107340153 649449436 866846400 975168659 245984466 603770443 839547778 959039283 89371983 106539297 84919226 776425611 805006449 932393510 107938170 472262845 926215302 963245641 786477834 809882364 447860668 692775130 749176014 841539729 387314465 607078296 583245619 952393489 25699486 559031248 371140589 646040339 536029414 775691030 911801539 933147723 822429293 849937396 855577363 997688342 140069661 175956430 100079359 506179260 53691029 290529104 712216533 903019952 405291333 987787904 39059482 263543239 892514704 953545960 660140539 994138542 673080291 723859930 883844941 985030341 962024223 978249571 571945704 997878193 392795532 882117694 882888846 995571823 16985083 462631014 929091531 941835915 890655790 917120405 311690011 532422763 536164889 633921960 459234728 697399314 24968512 514500115 942183881 972370708 513851111 586061351 94808223 890530532 660997559 766563560 639666208 961678153 857063284 909283439 527968669 947290053 589175943 624417663 757639214 970844305 443538697 895757938 178375560 497197091 181506258 890573388 91860611 438055568 250785146 790265256 184247697 736822704 506297452 743857737 971180432 981442464 241828636 851953214 798966327 806981565 810328923 817514553 201557634 806914607 202324971 250994599 294030040 422038438 312498406 570252887 340389827 548341769 773552190 893440597 943076789 950269522 457933849 818407259 10864859 170837756 782599036 963844233 309981555 732626991 909749045 963535319 418447968 935971989 66471757 98932259 237312822 527102055 470685994 714826848 264802407 663968340 901532072 923310086 402822537 834343307 792164212 859500294 523456205 611260151 364975844 676213658 231363365 743708936 17219208 613236808 141426423 574654458 439757351 706043004 837742948 915126455 687671033 963980806 359775302 656663208 731448746 911065158 978281175 988681373 869969666 901370078 478614146 888471447 235970466 718487265 611768414 640840635 404635135 789672978 164796677 549294818 625171259 810737290 417136027 746282850 591830115 611285750 883960757 942179651 616955435 691576959 145364975 630512193 848145311 961619544 799205652 801913327 902520766 972446569 29547646 650045785 150634082 314209544 164031487 999043206 598767840 969813559 560647888 690777399 318521940 536970184 730520786 964343519 83035125 845841049 805475360 970179018 113466844 324129545 241542662 658689456 176733771 526076752 724850867 998881148 625769382 748748890 695561875 728527993 293594425 670428730 866772718 883723274 97923517 910776341 218238872 792079136 737528362 765869184 772140533 776282869 328205599 346468523 233421010 403871419 44715199 494352574 812958517 896572122 82573540 828182524 402528710 450453958 843776163 857800013 333493828 809026796 795396756 891359434 726921164 856245371 674981536 882991191 107104823 109287830 378857799 673233653 509298401 607590415 671022470 704154877 536224629 813316152 944642457 985415262 774292023 788957380 760423729 876595545 946006216 979607278 602465920 930844433 243854280 254208937 293470543 397667037 3307717 194240545 344779596 979434418 115047229 489779161 767152991 869885151 76413666 256462947 138219820 563996037 208443665 813758090 332895497 769262662 491383697 999610360 843878927 846716481 130013358 138625176 712690866 734898488 876401061 898083588 464238389 688224698 215792223 303071997 802810817 957745903 545799117 787358841 730045212 958609183 798057439 936813360 918894733 989660011 310752688 851364913 379794816 594123142 173461025 315959044 623589053 826663109 189715373 980886579 406597087 410034861 431710274 663401586 787111557 814224675 742447471 941257642 311857166 807469051 763519194 969237107 229454687 678427440 704265615 848342629 759712669 821272583 927596388 958603047 908961488 924470248 675945149 816737672 935524272 980358385 789039829 866445501 462168390 765467716 510540836 796706990 51820221 219903616 934233909 945015500 51226067 247084673 443280898 778930204 616783026 955542122 137685014 779139258 800145105 889180315 6790804 475438094 963511772 989714012 463649226 911923361 253092671 679292519 338121391 635696164 288445768 799602194 206505794 710903395 491050599 823651160 214714426 720917588 953821623 954456187 712249396 858260441 237830003 594197055 139090570 501914463 488583679 987893169 93208594 456995470 543895074 850884778 521230555 829026545 530737176 699943239 436473321 703013248 143427609 809463109 637979901 959694567 135181508 433310913 861586388 984670562 481685963 652576022 111770572 610317541 819149419 869603579 168925858 623892866 278475938 860066984 839147373 999909513 275928313 969282371 6795519 537813481 224857628 955247452 676264583 919536352 288721689 306350299 70196555 970089440 991212495 996315304 352057947 515409717 692055949 987027144 130425147 340835082 584597362 897446408 783597146 868922647 702160324 827663469 224518064 624340259 939786998 954495394 561246713 683517649 770675980 836338195 217727359 833296519 151534646 311075231 545111213 631363594 875041884 922564602 868361662 897839853 317716442 450515790 626148011 918829045 452247582 690368503 286031643 348506500 150127557 809807711 941130315 980136500 182435068 377294396 638874043 641681322 527017614 612854979 413858361 973983776 315722575 549420025 400181841 459150911 273877994 821500913 190363284 361031397 923574217 966952309 613777408 648805411 567862303 767495468 394754596 530542368 889409261 998124782 38935073 191803010 357486558 961286142 48788318 927855417 977667338 999516151 184690499 287721703 448310745 463098319 350096770 867009319 926482800 935654696 960617630 975748585 634913782 683649305 440657048 769254482 263135708 306517904 288743307 351762947 256575032 800157180 650899878 800755678 434411430 664811763 492354975 884303835 860629605 946607673 64645121 650516921 402275739 431706909 198149367 619001580 111692279 821679013 42610219 163548592 317632984 359220608 672113828 735960842 371256049 833768886 519708141 781657682 706920514 745679578 691237306 843760461 684721718 744350298 342961226 520719153 621308241 831665489 999662871 999995193 494210235 953165423 642961288 975364017 306661821 588638342 8201290 659492588 275526568 710158262 452645816 686777555 819400916 862707988 676921162 964979291 504108330 597618241 126934760 890321687 771857261 881674062 387594258 834007769 88408814 547498593 422489563 583624699 172551135 874355088 789121618 953992375 640409515 926301823 61180739 780146943 302496112 413519771 319773858 349163593 787641044 999490830 664132426 786686720 310416994 986941145 671050292 741569125 359479197 798015235 487856781 993905864 560998677 655567201 925800505 980759285 679748997 799881511 821353371 964338849 101156302 934589380 67624505 421130741 865418740 936037909 833114500 972378754 942430612 974947930 864956226 957166905 309190947 446551040 756208350 916520847 116525900 892222430 764107575 877371848 981835624 988875690 32242258 641759777 145697759 683419722 899224736 914474486 771176762 834145939 648721209 729126867 96643294 548326074 475638592 778507843 396053612 554800608 796809792 805632598 217772412 653943422 78865411 901653928 492761425 847246721 399864943 972497824 855634016 916568929 775711460 800123553 214311612 484954657 984000816 995213929 348910428 957100582 488480830 827894162 538127181 860098811 468675516 848575403 332386084 817391319 962544639 996941036 738704951 828109094 749155867 827176594 140763718 285339549 900253718 910735492 717921792 859644192 135655840 677884937 889929604 921065209 484389099 660011665 592467459 761853162 288791482 677676279 326697855 973735818 366119880 435558801 581107884 886982588 824014127 865536656 967536250 978288753 932939957 979490342 215661252 408020897 729319810 746157541 878000234 944805069 830390266 895839665 657967438 699697677 594543140 870242250 216117169 564637912 354333384 995591543 573554569 624121976 239092619 619250291 585655024 820902002 725247443 937438532 885103699 894274052 832702218 872975614 793569852 968410212 37183375 482135930 362164786 761383771 230247855 698865724 951629874 995412775 408469584 887695475 231792552 693583026 861434932 867900577 796386521 999763165 232281413 623426626 323057507 954296557 653002201 924256936 994087515 994884823 97610726 675968937 870563818 873872859 513496514 729876865 885970347 987747677 375980651 502307844 697151216 779415311 996314944 999238872 715911892 738496046 533356966 569648797 422997162 795638754 6278259 585763179 583486491 910219523 866866298 881446299 856392558 992898527 670515003 757361807 208117059 308471760 1412598 610650496 504552714 844078622 323871275 833875740 84676952 673242599 959050460 991329245 505284962 957037678 330079083 385192016 885673301 913083253 258989729 354204161 923401855 958797048 309695207 458501554 396791820 403902148 664540540 861714027 217789936 264937612 5822856 293353960 195235634 524319815 768188425 874616969 707964984 787211709 562839346 991513946 382547134 555197674 92078980 117672727 299012145 548237025 402360525 761447434 557007138 751566898 443674399 525513639 424542780 728175145 351749632 525717378 227819241 444103727 519966606 564605100 876877392 986764385 677100769 709499259 247655637 972133281 423090214 548572479 308062228 826123566 105452109 748431324 882713038 970148920 908856765 930639340 545850295 752621410 789194585 920712720 571302718 991425415 991409425 998587707 956647851 974594406 514961139 983773487 793756781 905628494 227601496 564779325 402934671 785106166 838213920 997055515 438896342 796724010 900284125 970825991 70245132 566315554 429900808 965003301 236243076 461962092 678997404 999807600 621929182 671185371 148245698 973061881 93782941 298711478 754568416 839475686 727265408 914622343 575518089 770270918 755529159 958423842 456316954 647765903 483258183 741771882 112818773 450486481 528577227 836181857 568581152 833840237 62233519 364638346 638103634 675257391 861260244 915750394 267906077 551521198 960516005 961876798 247830676 303579098 556801055 565936389 61858605 239545475 648008916 921874645 709338611 995495099 283499665 558388907 750743312 985390090 668023217 912063551 179330844 732130145 410072558 754239852 339964586 999363381 15805209 464767917 660266701 674574944 425090643 535640463 76509648 513366569 951573657 982152455 192031389 648151367 176003551 600190015 124429290 268225780 753451868 755494345 404967246 676596688 800746719 861651980 173170426 993601910 158564761 748139377 173497274 451236556 178506715 338742008 793695171 842018002 696531517 871200594 636388090 644565099 898310298 968127529 194630507 279645882 298126446 728443431 554832195 978928540 372036089 737154634 421681109 913285834 856591982 979791369 153818554 179568544 119691338 766580083 795117027 843491175 931958420 961509484 470969205 805638909 933481696 968058058 197467363 848099873 605119601 829617881 632998962 995728503 7723033 704237455 585870196 871324586 939642494 968534669 992613737 999867169 390165389 930105505 868761145 995080656 737510560 947281303 446375528 659174616 342406035 721396074 262410372 737911132 503961175 626872200 265527972 658514440 928074410 946144085 239707589 256727955 847368652 977517487 948012815 990332054 648559607 717137466 297223406 492205371 888782665 993282997 559080304 657397674 46175938 341735248 319109095 632461730 227702862 352100077 494909028 831606878 718787351 833451237 668418934 826428006 64938752 786447510 285157691 445664000 247032649 278654878 973042009 983897634 403791840 799121454 446049865 967085381 287003541 491099176 162144326 390884793 531421826 568618371 488963298 604825103 726233400 812637128 155190878 203632791 299393181 716510237 637809769 835812148 597407249 783276068 893021274 991293845 506801868 979700476 545381684 868010629 583541869 985422762 712407055 742839116 999892989 999991203 905689426 967086053 245043908 856032365 891897001 968741023 553547415 638996660 218407202 982815922 797400353 974515968 280700134 477933783 610309600 977000417 435849446 563541408 403486871 709932549 558539637 630042472 800736954 811991439 803593079 972195338 739723745 808780963 389499601 659834003 27008179 373001281 879526898 941815821 149665476 772911936 322412308 987487658 919639158 920813044 174040916 659460285 885700602 964028898 593861841 689484984 131694949 982847169 621406178 956126385 568333366 893618335 667146276 711115291 680148620 750668111 122372699 589148221 854179615 928453171 485912736 946023009 57423026 797389314 812268691 950978989 236159776 418448470 465873490 491735560 769160239 774603684 156832767 682522173 172960486 357082420 943751540 993852256 638736617 663894965 755131023 940773107 676132059 693118300 250715323 316206374 700083463 813718755 851320733 953094472 725087103 779499577 94714196 777143703 955472803 982907856 821670033 835285284 849887796 992324437 685539159 951749088 604514611 611945017 928153536 928735024 655121017 988256589 106605568 320489563 394792659 919005061 767393638 988834338 519476307 709507034 293677633 460364452 827803234 867419242 959082084 985770940 809216668 836444996 250256359 347255460 925607099 986569506 978633705 998202940 84566839 829076326 531438260 935467580 845610359 888055955 477183547 787091616 65762820 488357685 172860175 984550520 822244606 868672430 996574745 997683461 369441754 501563196 30632038 768060876 845543068 948223510 528610581 937376992 700667469 953962848 589046403 657248942 913214307 929425952 325388515 879754898 517983531 619837577 942714879 981824199 636564190 902375308 294397708 731654834 245693061 458148236 774158567 849350847 770919584 813545867 971847652 999624184 73210295 151864452 835722938 971367673 59931126 843059344 788450847 971884794 941951988 965976932 16230744 122963322 918324306 945384271 328575458 824802981 473455412 596839201 75662210 393498456 710482524 870744186 955426601 968811023 466754146 654601480 754044149 901942850 206606665 409118737 353035024 891438180 92149687 521545274 555112928 593613456 94780815 119259916 347831455 926200906 467801027 762876171 778048332 965452541 174245877 607560245 978457439 997407179 775761629 905900733 946976321 949187499 675589147 921107104 49261602 782212961 75415176 576739213 145068850 894977474 609270926 907418450 215692946 427752700 181814586 418239526 641642400 895517412 573213495 938058383 197602649 660463750 263166895 918349878 378276907 380518017 222592676 899973480 582499725 778149701 664792198 959004938 40961780 577159648 326043357 567362763 26239564 829258282 592489778 607423419 306751981 586998250 28104373 220766084 579062997 973186204 267397044 910817442 367083496 732654960 730459123 848504567 72493024 895460585 156430699 194904200 785566726 958788606 757667510 894293245 88653233 681066139 229202734 259529924 744419272 905277242 115742590 763545073 282659405 659495684 401064929 955471419 264430463 512414086 866133435 870211360 30694350 992647241 76548132 943563900 994194821 995265652 6241171 964781159 106688054 809936898 736839629 842937659 628417538 879761803 284365317 446228985 977471428 993537945 726345628 745176405 4717099 800449984 748861515 848314010 257621926 639240558 882025065 889206939 405914340 540031222 752269231 881407897 721152918 822645954 850678871 995461857 184774200 513930846 366947315 579511972 579568744 802696402 787451635 862926837 751434346 802586418 50746838 843321395 902301176 922169452 127654832 644056955 310986369 800505867 426736778 625533998 846125981 864661162 713797634 788240105 326793482 370905072 129193473 211761654 58424899 757607430 643636457 911138742 214249767 714016400 721498701 903120849 758031354 887405016 415808950 572579450 819509899 997931726 666026225 694534053 622276123 658045963 482170271 753166283 586837660 983101865 844646581 859223338 717401385 763246619 305803439 538690085 539774465 861843384 298559407 709540188 934299764 943149618 959126261 964793515 221710644 418630071 332676100 510471933 397153323 543177411 609766236 861414191 693576123 998319659 809304037 851476451 76444401 83024684 631146970 631576942 380757398 963755933 257988438 450233111 448985273 481893589 139258581 199737104 621116610 644797803 389829453 719171052 307684170 830172262 740923142 865678822 649090705 808078062 588780800 884957684 259750051 914630538 482402235 927700601 386768287 701598338 647857218 711711683 701533401 735411123 442398749 533837051 582410513 795846937 508229711 804672739 518727524 929864756 427235461 688749001 752510271 894156507 949512832 976623894 11066321 402792707 475984173 659427258 101863630 484855270 291955150 899906440 671046362 852718869 296412314 645417041 625456 774556398 323889076 833648918 645215935 827598849 579703962 917873913 393350789 419658270 144494854 385391469 443424014 456722487 111400057 783023367 182944244 433344923 930949303 961907153 196842974 887328639 957445133 965452091 171968456 596723110 550053761 943486796 537151474 811522214 123872671 235598052 476117193 684874326 229536449 408094687 335038865 701191933 455537648 957675600 602668261 684158641 251133208 603263568 286076313 572057271 319124666 335622313 522212375 989188917 352179972 936996720 955532903 992071612 776263592 999335461 59588480 354060867 42878191 841857122 418346731 919686730 357263394 988822531 52655228 115878884 442466848 839673093 948591844 964407547 134178980 259500369 772389967 928861005 577100201 987231311 83451779 769618751 818259360 828607807 961161424 972205334 569414509 816775999 575519429 787511050 107897171 746775288 847906634 933244901 202095117 272410032 16200254 712897108 349810278 834565245 285594349 436111936 440219536 750187112 185424485 586470088 697207455 779109720 46557905 911343361 307537444 867569411 322691502 921318642 855371988 992245048 531605567 537714127 636424178 893546010 887056835 933655157 457576292 491836707 275239656 389720103 391411686 808716066 803415577 819757512 776618986 963524893 149419672 448760591 994588098 997419777 550677448 657241338 662968906 804239198 732911465 957986272 607383465 810300098 857299228 930834925 850915636 915105029 662361943 983562527 850423039 881435968 119133902 738519953 486083366 807384225 315582791 764410142 500238443 545685281 733087858 886174796 747788917 760581799 930016577 982173170 834722880 981192911 232979564 962428835 436167151 757955126 59023035 62015063 681843794 845724031 283714651 961906086 709110163 941771189 884952854 921373451 164625382 183257950 597752836 872973840 746690653 901449978 786009211 880791239 556847038 948168810 690488605 844846026 840580876 880573563 506000504 837426084 894421973 922580141 70419949 602031080 589703133 870097551 233108662 675020639 541091963 912946832 538216154 552441394 931419231 938977549 848461054 886986067 896830487 914807134 188017884 809479285 588834668 774116863 638273474 684753263 234276332 448357784 133719756 743582138 955525689 973164486 397338258 906014758 650042700 673293169 581291983 646106374 820281336 980967025 983952120 994387135 925945567 991451786 865378905 916738593 124957904 133785620 215226984 601294129 605325638 969448826 319425742 854953808 832743653 887464223 890515143 934084575 353922995 861941353 776303898 823077046 962273264 995222557 87186632 923331054 365637396 903960106 238838942 731090550 295897621 725301876 133223441 906353621 168185790 565643922 506506796 970857723 706194172 910066472 599237769 799867323 676710997 732275438 107208997 992199810 144886895 925050414 265444867 647056202 294651216 378972043 426572796 448383994 201390875 210608276 657321325 961063644 993577110 998261706 413314510 932822956 513946904 741832233 972948413 983708421 513423396 919828028 721253896 763840043 892446396 955686637 440249253 585535797 274097011 597023885 759380627 971557809 158581203 772050541 569546535 802466105 719912657 980540660 507201319 692141749 815578019 918017298 796383135 876917988 870409392 893373812 878972807 971340391 344706949 759652504 128666371 978466734 749006970 869201675 124231232 170524893 387576968 619476161 58632907 397006292 449519299 470530404 272167917 999792435 316877144 691965777 369260895 422618122 729912748 784790004 480937728 754282080 338810233 416295993 457262725 499978710 687412239 726701772 744871377 783802535 782873440 801001942 888401877 921143601 599942879 951394141 835942231 987608499 414684554 604087703 662778274 816533059 289365443 506485288 309428453 796310951 839660180 973263351 202928154 784158938 248865720 444007737 42245644 883515131 323897253 864506462 672913879 879253745 368622055 778179579 143711231 494583813 538435634 666377505 826959974 900505277 515674929 515826764 642634207 802247421 451843767 831769333 769367482 917084908 278101447 686464990 41446602 647258409 123355881 642174334 732815968 959267835 814103071 836344573 335492858 551648266 202109 309974939 283366853 848260761 625452115 969802848 675899325 718937338 917989276 921194398 455250647 781133427 291944601 495705536 932683391 939874257 296574996 702401169 365496570 784411929 708618974 785894714 207212162 675411574 704239055 801211743 336773490 801323622 664899671 859617097 121776287 995924982 796288566 864020525 373524168 608509263 66678089 275423767 520462298 892488618 265032946 375378961 971618575 973482470 56072919 243048284 960866253 962341724 978683325 992356949 175253381 864653327 512911453 653840150 588028057 850052691 737926687 782455233 679836324 779374780 847164434 968654798 172808229 416459704 700040024 887178170 859096780 950000069 286356145 315752957 223721416 386001971 628827603 851704598 392499870 792004948 719795659 734811258 51348668 86193981 206575041 632797510 554208084 676452195 215968911 907901564 937255549 985871040 2963999 778651645 815639544 891246816 708113626 866379971 916840139 937147191 394210747 748191399 367641922 620674288 529492077 968723786 569165868 981530011 279604367 472726772 844203644 964537807 166228677 873993248 959267066 995700395 715006214 830392541 367109752 603718729 708939215 828986891 750319604 941894378 895753220 929451812 708366434 741202957 315848611 922768485 914229307 994742944 539069498 639781641 461909631 612476594 667130489 809084871 29887556 595644052 59136992 547786651 356947026 885126196 857032952 978424307 293075600 607285784 564906537 566699423 950983843 974698477 198690623 389346286 501612352 713975218 413790430 711148212 438265267 826456027 663291439 684211370 800185900 932914456 465682698 787139329 676342270 776577880 216410666 803549984 442334456 892620318 79212752 413940884 809304457 888373010 192161327 852875482 568038960 875479076 296622638 561547717 927750691 928332217 194761412 274773384 25632066 167750502 235123331 594920727 958488400 998099923 545639538 681430948 991528398 998564374 916789874 982410990 94680565 310452892 770250695 981379185 942577535 953443129 78236282 109169068 836607487 914219770 646619012 665979394 283997787 461682463 812307798 937285213 169940409 249791831 592369135 676518231 483795604 692413778 62875637 170409897 27413876 482552530 210085510 561678020 571472361 853060269 238271460 958180997 257362246 376627713 677781716 713844974 347989594 685237215 915545856 996313267 468754987 664495299 767193128 981729898 639124263 760599467 256486576 521357540 396782277 738789669 30015411 465907321 528503208 599123134 190434752 330711960 803034945 808294537 804707577 908436950 569375212 708961076 51294092 427494796 221634932 547123615 989502160 998072144 517348602 913685264 884225178 897682206 764646456 783588876 142028082 660387129 924119760 933996636 406310480 864058002 94711919 461146967 988767643 991612750 589905676 658626847 210418382 990464423 779431431 908801348 33677904 162544875 675307048 753416858 178149807 820494201 24551084 729144184 183545107 413824415 692024533 873057306 687079836 922742727 33843770 61190453 358954353 918655115 804447622 944831060 742301870 866211209 454749735 630340898 388660436 737584031 640614923 747176013 136331522 818733769 474485723 727952202 486790561 530983802 35127782 843351614 270591152 566669862 56429365 983110277 458907368 940981786 326270938 929781670 740082461 846420159 945059656 992668802 319071112 917039872 189554749 384448934 461679989 859990407 451887371 686407922 141680310 342498075 214605442 880372387 378496599 553534410 385873059 979906132 877105561 983952243 529905183 876716706 928932021 950459278 189549444 887380379 29350451 326453038 257624644 565588192 508126261 772852189 285488033 821991952 315198605 812098581 783574064 802782420 271442012 959683341 607408888 885688795 977383978 998128538 889218160 905414355 70233113 910113466 215101753 952831161 446522328 867839300 639276249 929183421 258482436 281206619 716954385 725530491 116747289 316040952 5597821 172013167 19250480 844813367 514537176 884364890 319964390 479119210 889321300 996444112 181136650 476640201 987959950 999699321 703770829 864280823 118244051 752065939 933938496 956137178 413601933 558846815 643559826 929517249 82410511 125122637 365610276 368413494 705078405 811716317 790923411 874867382 431783070 869597209 153875775 374850737 815051407 977798741 414177921 415240910 93060995 98150378 227046695 549644223 189288630 308325988 126591415 246799976 329845317 750692646 773913127 826268324 184999182 316568510 78735 568729349 655596016 830655506 852834652 968306852 958769200 991388155 690968294 918338709 73756197 402249234 61015376 924492558 407328824 837248061 523493869 675172888 19708143 935194403 417360886 684230215 582448195 824974512 868739287 993112046 969803825 981251954 792907822 900205048 908032619 952806627 775365362 948503224 174217698 423150721 716682134 950099697 371591761 373546769 973492519 985780694 839071580 922596040 221038918 989716018 303885397 610456242 774427304 828097740 71681923 819729994 523779518 982145788 227923278 644920966 751076528 758450636 19349206 843982086 176067547 453609024 203234973 449170454 865024909 980190899 597951423 628458316 596845775 994156205 702594300 982093449 347035963 601060289 920491730 953966685 420216479 852903083 184974470 228201172 536773575 731640356 376527895 963535883 334871660 953187518 22346097 152000798 34964764 992908168 504062372 666924888 856660075 933165853 766346574 799677529 102436001 310660940 861406496 973885645 993577234 997144044 876226106 965249266 227348494 655753257 651734982 893219549 355306565 522520883 117361879 570905481 499346203 941163654 61311708 343635462 430987511 897669431 305613491 385343878 277119519 780044918 568437533 597514161 925184245 962750569 827085390 954994768 853688108 926736038 67457676 376397381 88732270 426675885 754483147 762769394 306107269 418400746 346363399 520965394 410012996 733791736 163493909 565078940 35602103 191937807 182675345 886788797 970680516 987837933 768357233 912752573 259333837 780146650 61506616 231453338 347144501 347678095 384547639 811751214 313862082 551233419 259137651 963198665 278557754 804683316 435936326 879182389 348431932 980122976 77181948 468203501 976225895 982069162 838105242 967788091 631703042 639798580 876122545 908937617 156841759 712121520 468857163 807272305 315084089 507906103 700558786 819404150 964684435 989532308 299154494 560936583 939606167 945061996 667187905 886279380 480141457 566892676 922372231 971216951 95202041 518301766 616336689 778085778 307359476 557503104 810986635 812841984 491617841 615997643 873208188 938583370 959597586 979496102 100888687 712191739 523036575 840228277 219640662 619243296 64454832 341723674 263220677 368405496 730300828 852717208 268133572 681257735 411189817 867147289 776398540 861494656 265583044 770145159 709325465 963002751 871957574 964718969 471111089 530721590 531550842 851454694 392202126 797301661 730792053 738377697 12285071 653052702 533559122 691959210 487586571 903285475 876149326 898780007 46237957 152730904 18150605 380696137 113197210 717524475 700778750 778798771 682134969 931749451 210252835 378022901 442603566 808831175 494029157 640262732 171401899 583663498 545036648 607574975 881563229 973952219 550927420 640382247 188610434 387117251 134279886 561194959 190463367 330308885 606534943 745625691 468604696 740823891 714844656 849929731 32591446 386034610 196032422 305440666 579517775 625914316 703495844 777121624 246289742 365118314 303514298 650680265 928688326 943079724 420948121 533502519 51504553 660064844 498288557 557521919 646923286 861408688 695179917 729731298 845539803 897420332 573168791 680829748 810656135 986698332 541766552 546283531 464875169 813990717 456423047 747339558 502674311 799955008 501210797 597326650 527220852 653791787 134647102 534381928 582429403 641062637 113387835 278860037 564911627 881656228 569934380 651216072 843020037 884890538 283529110 619317774 535553390 856940251 631182179 668567560 285433281 762642187 157928318 844224034 15458095 631402354 572252670 610173909 740344540 753828894 727660567 795154981 996028214 999561353 183383687 793515611 637750775 939412290 972885903 978421192 730312009 825649106 286409775 644514442 836104568 976810515 371558115 654232495 147699698 607566879 237250603 244331375 648999247 876635155 342597636 610206641 289683124 990442854 413093637 864614404 527040553 989611967 875358298 957671530 477303068 593788047 514047560 900003346 833230501 889065719 232155469 493625877 270033722 700851503 791319210 953680897 744707993 819816646 719244622 815074444 29233967 476834362 785026793 982171039 436505565 801114040 860019396 903707724 66147883 104538578 900596656 937931450 776179559 788607233 689703724 693282785 354560430 733013527 818480005 913544692 869880768 875677008 204086971 582220653 563499876 647856892 66567084 413949382 781427631 891721488 268118544 345912961 603284029 676567070 642970589 839699557 878964627 925001919 768169273 904913137 392576946 750870025 217337779 388283832 647788224 826309770 728492469 869889208 747155271 960060228 257729740 653331567 914862506 923810874 88031210 666653384 290790701 927500945 167282208 622213831 787596484 989395472 139175888 890372020 461955390 763045696 729580246 924523329 784177212 884991494 412195830 691513444 366515624 867667276 403020535 821625814 460987141 887619396 501781311 875468744 791439884 913893997 131246588 800965816 302100352 389302667 220492236 672028533 408510909 595019522 970444466 981824438 551338880 771659327 928080343 983505833 711483376 948723278 262724404 572917569 112426725 850243437 851592467 986850928 986590814 994566284 645959028 920993215 919093100 991851808 972651240 991876099 195496886 495452504 134310440 422878462 605331832 610453278 506658610 609919704 222010032 879574011 249040918 555975606 266875309 398049579 192901514 756812746 85679098 987227798 587830212 625885280 355926839 830670095 430186901 879077765 495094012 966027050 168159842 879947849 584997615 816155881 212424036 807863505 289198632 355169934 587801397 966253573 923360524 958542025 230531983 473119603 566363723 662678465 530357779 925780784 980080756 999743780 828670702 896759628 138506115 769147047 510908907 657997946 712685147 973193751 977153953 979347161 362217543 368446505 586901748 787642100 910996859 937484046 775520488 834081295 274689718 398074093 352057739 786146956 221183948 901189963 868866839 954616826 111955003 888836154 175205208 842934149 839677814 971030858 92971263 553091837 800753602 903210833 246917701 978474579 12005950 859050062 919124404 945774703 943816903 964581590 28908335 981542460 873404227 998673846 235465285 588472826 576769705 706430723 171009874 448725774 746598158 981605281 14309754 429280425 759048195 849507087 720327697 962914240 1793304 748104734 580089063 725719009 602245768 658853574 172705366 558671216 262216691 514087253 289117238 485585799 172121100 345674675 760270624 798940690 516618095 602724532 552991734 851321864 504685673 898809133 300626749 694737191 519863951 840486206 277254135 301531431 119971328 803598965 137400186 316990912 131310487 756514296 506269032 506609959 271330851 926996782 320838602 795594924 877078164 955238946 235402733 840697659 614309164 654144491 370848791 847498399 907329611 961945797 640045401 846666698 66757408 996289052 139951871 282490428 751709246 761561180 572912969 603598298 970415032 982456526 642828561 849903371 278376586 633637137 926630599 997879636 660885879 860633418 466466730 888340458 493676970 784796171 774014287 884995899 396497642 499081384 71468111 869889565 509985501 590033648 552946118 680320928 101436841 997516896 379505858 745528875 279935254 611331445 314541697 382795730 415601628 896114930 270464002 442414757 250535142 751546393 965332136 976407280 681287970 737176956 36948008 198437781 117363786 921762585 3841599 303948717 325566508 952526824 511870263 513376001 892024249 979872322 513938280 964301356 139357141 408005474 381846451 454224515 203457295 648961557 773218182 826491155 562173611 803095135 795583703 815547414 867839607 958346724 588182166 686943602 313873030 910740457 329199918 559959623 697385095 713368846 784975644 817034288 600231421 653853091 765692425 852846534 901379533 958235013 844804005 870202757 832948859 836857320 296813905 611481369 249322369 811404314 413408789 427967309 306483820 717087110 100323458 208751590 47071032 305660712 28178410 543788289 705647391 742401035 151095480 560929264 308015778 493494949 729948461 994131461 572084240 952573349 476810799 770298684 506844692 801596280 9294767 521467371 164869055 388172577 284464735 479686694 340585283 972016866 746105319 823035699 447905475 804757103 541300039 623375834 120891421 435440990 366387845 610197332 994250284 995440235 688581558 970518041 284749125 855591326 243035638 792937104 327812854 579123254 413035205 961157599 614403990 889288351 774811297 881823724 786145570 794659175 219314477 807048397 72167521 102266588 468048619 801718289 490990734 745944347 856985317 967927536 365406097 433521725 520996691 847725392 573559481 748337560 913825465 940943891 127234431 859473290 893574476 976425911 722253431 856279005 261834938 650582340 342099627 545861812 818839337 910497326 622800818 931902750 557009625 781902171 558087221 803518370 520881391 521489239 297008986 372338981 334487886 396959186 533187769 727005419 285685402 382165693 665982764 732136294 804202982 970367552 249580615 650781087 728566174 934570931 931601826 962688272 316117913 618439461 545882089 589213491 90248256 552578771 826385426 927048944 656410946 787636097 243259254 818106308 633878331 819669895 87461839 705566230 904366163 921896844 434207312 776060433 561871032 814277007 296051642 314749060 75090765 536322629 321456789 468352486 771268201 817066145 868682438 889887960 108507145 519694789 141810887 236896056 553492743 737122565 348121778 479083893 962469966 971415129 65298002 787791647 189658900 761702780 797545013 951648296 305717301 889003574 322584842 924778017 182534237 349081002 66465417 916698946 491510804 551165269 311189740 645140971 864104895 998104216 110567228 391721387 997027644 999438850 868035957 892945023 245182356 637300931 434801161 888603512 112039077 214220074 418042621 470205743 820855818 959482038 403860142 471287530 461207369 517565001 7537686 613344822 169835350 776694256 176210435 614943161 106347020 571115859 25563915 809251522 79843728 574155598 456555665 724443841 167750445 374337149 385075751 842245678 617877724 735233922 370774745 901702459 159613378 581715886 133561286 588134810 980507599 986457190 986074583 988014782 247040943 582444737 256657534 958071631 101439962 928608839 271145015 324948742 238805939 671799282 412786816 902320761 993838302 996881590 609950209 845962143 847815346 910937560 134963304 368724680 216059844 741138265 166423712 863343073 37121001 699919540 184460142 786663916 474027506 940872815 790755676 974328075 404157954 795191696 668152949 790063525 906380700 997216301 810236533 914993639 60748786 909907470 604736396 935128044 814033957 891480268 195483261 364134501 46254029 618603136 951315903 998772456 968258745 992160865 490785642 951246958 951297835 967711349 246532606 357916447 533385063 588888958 125650756 859231411 606186080 938774938 413229036 804110645 888992210 913583701 851486855 858877907 294925109 304190368 748444319 891442442 378005690 790816002 441660236 488859060 837975818 855460484 278814960 531280345 218055664 241827015 375333737 396783446 307938407 964925484 745585523 878421761 133260685 923537673 905608112 969181345 636755642 999562838 424119495 879820215 535165180 741884201 406814421 447474771 354410163 900420497 782006537 849905827 531955871 914920285 914949309 943314040 9872353 995689554 514717579 767115894 770493366 922586955 3958691 522521473 860313199 912060185 479561153 975709696 113245650 187230579 897581832 973726919 817110157 904145372 493293683 522843441 807566525 906822598 892690157 938477712 946169503 984126286 136639629 145665898 821221841 980170295 179833395 776582738 701724337 734093594 443900694 651033534 568860727 849568610 94025116 104638034 357817389 570819027 802440879 890484289 766195055 904528429 703172014 811358924 699773234 721823957 296538489 530732101 638685287 663394148 373226339 379618380 806850445 899430528 717743130 834334881 804667812 965920174 854898520 943415091 489083630 845563228 761053807 764084370 200968961 983019948 29009530 516575989 25197608 609157338 34725386 229757478 408917036 491187236 574010400 847782215 368531613 605394919 388295377 963178625 262535882 633001516 794372695 920328115 501200269 580635620 198373573 639281033 74546614 761689273 244035172 244498394 112404366 944883210 868508689 966954378 156532065 928339558 622201401 820777977 789859862 942018391 257456631 260697941 223238327 862138752 273768150 871822187 247150348 784320604 438910830 842963695 664824472 995412490 427934134 594992738 111219036 209717130 332860638 645507215 520931005 984608345 357324621 977227384 767007818 793641120 147275312 484358132 262202763 607713686 176702518 327932049 407260490 868344507 106769774 744208130 44798859 367197127 568291329 955749789 275284037 512761129 630133293 867186841 118266827 625971829 99545825 521038580 647741166 671958273 196697556 973084544 713926607 898242574 243761248 652130098 962749239 983172470 302389101 374976633 65658780 639845266 716576053 716621652 317652986 711915814 126843274 856860174 368223417 854491518 604067871 605450303 479436318 917273702 191854655 360329258 576673337 882480773 232187199 462833065 572920456 754046198 203254390 675282392 525706768 752202361 368935418 549898022 460077759 918119660 60342928 143361601 351375500 410929351 224803430 660715232 894210239 920002795 632630160 763253196 112088135 786231553 614508102 633700796 206743639 468980197 150724681 744606128 230968589 902797576 796681837 799659488 285096893 678807558 963139114 986380543 693471359 966432595 477964364 583149953 645532033 709271188 397994952 552117081 951606617 995396864 50188636 201666932 72358938 775303042 457120027 967502661 410924932 994244807 200816549 212181498 322722150 510184531 17686734 247104434 745972183 802553510 548566570 552965410 75078411 469161128 614620818 696702641 526122812 576064940 94271946 807341928 749854251 932285803 193351771 635343109 602130409 747931703 685487137 946371905 110858808 847575635 750096645 913732175 302473993 476429115 266941451 439963054 839791756 963084621 344608877 630582873 637687005 720814575 808176665 875929971 233383647 362405619 782628484 906503559 849103717 981511292 144059969 700029534 586099777 731382649 134861424 516946673 943695029 994542694 960743075 993536878 235152959 296601964 496548187 927507620 891672809 966004140 582703717 903334063 851049403 970464359 830129456 853930152 89723401 922661469 38960951 486680683 852940170 966163907 659235266 915763988 105591789 230754287 899867250 930922711 337333276 379121189 311186899 538927783 311337245 449095729 688048896 766468473 600316142 641865981 262696642 348465997 636047258 810953501 77051714 676941802 393512290 862465000 948000812 957687886 599004873 617735533 697878171 920302546 978719753 985093374 254340683 338037901 823885026 879382725 484257750 860816478 598252130 712052376 550407896 664285183 186402781 345930789 964348465 994478570 934785858 991559766 53204811 873332263 632124231 650149680 934079745 967228320 397163581 455736106 997420894 997750240 55550586 69374476 603512978 822257419 55187032 159450295 185584678 781422079 409396484 817042372 675288622 758360474 975288875 997568671 736820417 944623720 503720059 707770249 152643906 297230779 180697729 521344953 729591918 945120402 1025083 533858141 527838017 702871641 836681303 970176761 557043543 755106101 616718604 726647055 884683839 942926670 805468596 973436500 679515465 765042700 770722883 936958487 449374351 780319245 741179975 844234057 967676648 968673241 6855605 906333570 566450798 823088423 713700513 804001640 341443372 852039037 940395049 956585268 679729461 940324289 472399497 943152641 366628304 624967367 720339788 835361418 196990885 876379348 589931187 756987827 524215743 900110787 167766427 435466147 394323364 895456801 541413903 928163393 790634731 938364017 131911284 556581010 324682905 487764174 887288015 893637295 219963702 471383714 122512513 309285852 715557825 820475595 751454599 985971212 237094191 607244289 285987752 971645429 880716766 899442429 868273372 891683624 427776664 558806611 427528023 811676077 977636229 988747717 579671643 609311766 881483716 910351503 454253008 732025907 60747132 704182112 576549755 595471318 762517189 955031389 175365137 955181669 640651793 991576667 881103493 944699659 818979781 928313550 881680335 947553265 79544200 417775010 97432194 404184733 892731238 953118081 928924804 963374488 333233926 985849051 730125594 840039550 76584142 432904344 887103452 955552381 674248831 911920955 484567493 593677074 380883404 807075920 637259268 854932859 10741374 225895597 241502448 758246938 769686521 954429563 271468280 308237923 930624930 968208024 224142453 750723999 582808488 597726593 394209532 505469770 67190383 983854564 919768337 937190152 524165620 920077153 554129356 913944534 243724481 941354529 665367091 830304749 117327586 580251477 771755098 906907695 885418939 952167968 65014386 976008852 203569957 490606450 416997227 750194873 979385970 994814983 999453378 999539483 433508470 929174549 684051693 716970318 816874043 918114438 727985459 935307446 173702348 911710402 997766185 998040495 876304168 988595580 139793507 911210286 416640318 586260890 228319182 895154474 277835899 366637942 474021113 727716568 679378567 989724905 289405890 582866398 22119809 681053079 119360001 122068581 266244307 763225084 402961161 654383650 856786238 912449354 904939214 948755859 227836231 582864650 315373307 881806293 852431799 929053435 147220382 230107198 966120395 982877236 816554773 994609921 899021900 941001442 995640036 998721306 832249937 942551293 457701507 787099504 592505815 720648233 264498927 338954210 375976917 619798331 285807551 872601263 164287001 788536199 352273229 788794523 710202510 796598357 42972938 808022192 502807501 569053095 769573330 954442594 80220288 629514752 223579770 948356033 300867268 703490326 527193544 709884561 356075656 882114628 670206542 746575838 718276629 746605043 875908705 883707762 601867806 608259604 44547199 46553453 671091913 989627021 353045953 731223469 792547335 956360991 243020071 853666725 454717114 565534603 738347903 772420173 253123044 289837447 760864947 929108785 39519230 455978423 887676921 890403414 180091805 618652330 857941603 952308092 727773304 867602305 823105806 979444199 803277719 832085274 186092795 651412755 923363662 958387644 596680017 988940392 106022919 482999258 24809505 389378666 563064661 817535949 181479715 655782663 308820941 416127772 648439270 677588930 704137243 807436427 832639496 945789656 708395100 984975319 958436162 982943080 601531017 882190253 85096718 238177606 57942892 80093442 741476322 943713034 609725895 962021438 695951092 804385948 562117829 753505673 206062332 891056881 271912096 860558267 80838248 394038699 735430030 887231944 757747166 778611743 712278878 794498486 297622233 898790174 833110738 976714608 652833957 799622027 252403555 931849925 687679976 833267073 120127687 963850528 959455382 993244606 391192949 996617882 610868293 694533739 686108259 915538820 487505085 844594088 579848436 625355725 151763988 920625368 397465581 845005925 701778938 816169987 987131454 999912222 507683546 869642099 125749163 629458363 135052266 228001854 968572111 984676169 378010424 996079023 386035891 706923755 17277503 730663099 36677107 409569349 356793536 866778410 560091865 993920966 915441151 963176390 224946690 285628778 674525869 896595411 773565294 830561058 679134745 716477534 386890587 981994784 53485794 710784413 813598528 819272935 104215797 356673264 64388793 652835658 355672223 476301428 976452459 982342384 692793999 780897901 46559337 198056832 449663131 750785225 449661745 695710650 888361413 888824567 463449256 875515053 359016903 725530004 282921399 343340525 666312291 689766168 688404314 698467567 721684266 782806344 361848988 517379499 841126207 842860687 943206350 969601487 404948688 514670788 969953329 995836225 286137194 315096415 97041168 956678685 393909426 852272659 917753666 929788468 973176605 984686728 224339099 266596561 82090863 399694234 991156705 995528824 934897824 981942112 614476895 975381891 507076822 530403773 356527319 611830419 122084139 262615522 669971616 680175834 572572981 816244915 312812764 656749673 882396663 944935220 9020946 164890367 426064754 617059060 384278536 731015450 991931625 997118092 614096088 998892997 953287766 994047956 877845958 951835729 935640686 992212223 374763950 729735159 150668724 439469064 86986841 748745240 405523452 964249733 119522710 279195191 108305431 559426586 696125967 793510025 663255980 990872397 241542747 331504764 867779355 986343151 48698987 178563503 724872021 780281346 960086588 975095967 816464123 998601928 684725633 756911892 689057763 769914946 598256564 599793316 960925801 999109600 830404561 981620364 575595642 715657162 69051340 318663336 908620257 948137467 524515879 780127117 304759216 985618641 325082718 395398802 92461219 733296539 152178564 651012613 552100542 667897638 564621895 641677325 291028829 729552914 802173978 990909430 213680944 317926283 675354135 761564895 312284028 843824182 402980809 695177899 526788333 862254909 325532832 521195646 866430652 925013554 652085180 785698267 764592703 787305339 705847835 856110535 598849890 683827409 814192691 896751320 984925141 998434197 913475061 955616442 550287740 922929711 952384049 992422538 344932844 390215073 860713269 992165917 409826901 981601351 417198528 714867720 707763924 800342844 568598776 725342360 473587634 573285922 353004136 848054508 524718163 905576705 326869623 519426474 501993763 968630312 381053955 456060510 635569078 986611138 620127838 917787624 419972833 851743858 951281743 956840172 472408970 717763305 196600772 280041041 437490323 946327787 958639907 970158251 469124532 851340254 151050374 299206010 768901512 814692544 646034120 926265748 958691095 971810163 834449045 965979465 281977746 354947300 61378616 348642838 591381067 732267351 255681710 405706803 830761091 954912232 66158638 103263726 203292664 520471512 106575784 347282026 414640738 511006749 864919471 969367789 920408999 948579709 627043771 913992931 255088700 754949986 685952084 852272259 326861465 878411829 931942234 977580555 916474247 921332607 268087748 626911006 814036938 991670321 431783634 746503292 13037138 847083119 940425315 962872403 197318410 884485539 675459055 795462015 875037668 898066577 825174099 825245864 76827664 494276628 702136435 819713006 205353275 754827657 913544090 957222534 401626323 511223752 620496094 839244553 400755409 907738969 256240230 654618226 204919580 742977669 993896260 996541207 223107142 874005315 855071600 980405043 629278784 748873016 791846218 956288784 642623975 892631909 555624187 992807867 829607705 922828326 677726967 990721700 311615635 742411532 194548969 392994102 730544958 754085353 951449911 991551852 739223230 899672552 539505604 986490966 171175542 657106564 654261221 838663637 307955390 540084638 42282959 574090538 462581036 501756825 656194272 953967537 228789042 611562276 46393544 615718372 615536923 904004599 838120667 914180832 622649214 841186179 566314983 689553698 567824152 647764784 174737742 885840248 3255843 32708997 658397700 829112598 500889617 878736600 626302788 965932299 129519406 962597616 967346677 971814848 150461716 983349940 767836277 786054443 977873631 983091914 545773616 863508476 406894520 790481025 748027670 979066171 299360285 565170891 640592513 735121319 625526246 688827441 207210663 668900420 261693673 855859031 606369648 993728846 295506230 582661800 255825201 584870262 486607165 508594681 384024611 455197296 23539688 795668551 82149953 768544161 14573347 907405648 976541512 995812128 210213683 308637227 613820772 864702970 687911391 910361989 893952434 988913157 36510892 193476753 499402894 529878209 358606394 866452370 230713219 829775826 456411941 728381718 66451177 998111261 465925590 811957837 731300762 928846479 812843178 867221165 682136944 786822132 381793100 523734608 195859417 782532086 644910124 760345921 635650855 670777443 459767633 478453674 104565301 186498696 776866152 934403860 786570096 919367522 506255278 907676103 196608900 232524201 105553878 641492108 45066842 218500533 108516351 347274646 860193894 980115443 324472993 681012049 111305313 164198418 525151418 526900800 489832288 834710386 153768016 740451749 611032029 827821289 339529119 527208130 952032327 971308086 283914142 779991007 677277972 796772030 120643800 988058491 512889912 620815249 59347644 434836024 927256513 963133647 851494799 993488638 800282383 889303589 4688676 350753584 743953683 858576888 211878146 396009037 625605385 904753887 488285411 917245942 110157593 376968166 931432949 975752356 205331918 316585016 95599274 220131714 839236950 952676676 525342045 895840763 24320930 444505124 87975961 682856755 665781929 973688682 896567620 910469536 704758383 938493472 649650590 807689852 523317197 554829212 918403211 930499491 644118979 663277975 41066568 132598566 909780900 962205851 615613368 901795047 556745209 964397947 570975839 620564558 368153376 605036070 451660860 758031026 74076468 444047763 150277151 661460390 380601612 586007524 39506374 484202469 21119120 459958528 860346605 956164988 640766646 748817448 427699828 742656715 92422253 867543513 236014917 443914443 610596132 742351868 503117776 823737717 56034939 266578313 712887972 722095255 932796969 965465260 380039856 780537568 872303876 921382594 957703594 958426365 581214432 799084782 873887966 958320845 587445624 618702653 59348675 839088828 695400216 937671654 567375337 789055660 470807545 721346918 501066537 845465151 62360857 684840463 463817557 711206133 248198813 528181420 970830036 988206166 399011570 677240503 299144785 409824863 335826261 410067410 970466828 982648794 352809013 598150563 309105388 825284140 993809249 996760952 846969721 984157656 607496771 870158534 192680836 901723784 308925277 816920667 277375914 742638670 203901590 630848909 294204887 492336855 920397713 946447455 851257678 920046341 902775249 913583939 651289861 795428217 252115613 357762599 321793360 377998086 689093399 715542112 605122616 666127195 239503396 614775450 762246195 852028482 772911447 971645932 824798162 893542304 690050039 746253852 723868235 772353907 141302072 709266000 118410738 854405084 555987340 837436122 842970887 979309553 817908307 889964855 463250371 738125605 680515836 843597336 447779971 846856458 803379306 980959168 707674529 919389938 653959098 891478370 124225240 807755324 510747557 519300826 399100920 869092110 138430220 489755653 88729479 600031331 397986555 873513036 136638988 926284280 639675934 639773298 403262929 629791370 759930037 829003406 13480751 781988379 692303620 799444027 732132521 822727491 338156420 374362073 145892987 496811115 400707466 678337229 36691956 919100741 746616000 815180842 33277620 54555455 650417428 821242709 482499287 623328465 750071843 809264059 473048562 889986813 649962995 802275489 40941119 813514328 815195663 992900003 893216203 923991028 174872580 784772850 43656087 523889821 148752846 212896857 755305490 992258352 46155556 171813025 848886868 862135453 381215159 907275911 244403423 564522626 116882752 699181450 741212600 904818222 666534005 925048520 159642912 329155463 541373237 866670816 976120140 992588376 700129052 767203494 814013113 849253215 443442161 567583382 596997565 763530670 939330849 959670987 386878663 923686381 52437878 551987411 499884386 620521003 690337074 829824934 524880952 892670954 669321605 934119018 869193457 986142458 51186340 76171894 939624772 982149812 801346344 830100371 877800630 881438061 234339893 974147155 176119806 732447069 773715447 894158651 279080276 842255144 397191618 628637414 65022985 678577565 715691691 889184296 761568293 817338336 122535754 920578900 729390059 981520017 769760612 939048224 457082270 682704786 708666650 728966604 880316032 949143677 322078358 363043737 489835667 570260050 248850033 644606174 897553020 961875989 988166442 994089432 515201557 900348587 465956796 561473783 286949169 296543895 42319407 741755737 818508010 929993206 539145660 962678845 310389760 968571515 8547026 427260167 598276510 832756208 962223004 995574616 774499823 865902966 43941282 135030652 450385615 482285691 91283960 992220108 788267159 888639336 248095742 367111306 670781254 732789487 732841120 748597065 647308543 933760871 373695609 398960245 103118880 375056274 174567014 179578957 854660580 960557599 93628676 433549862 164512735 357964700 103613036 509116944 200610592 614438716 717895972 947565540 975356525 991010740 724332261 815738186 591354067 609158891 153108131 182539662 704599808 778646378 920149945 997155326 419508290 871945067 72005465 91668058 429010870 521662022 161993199 726191525 311414960 670887144 542455921 902638709 372429569 747141294 78051472 183040565 58387175 192879255 523051292 929847096 529227722 785958045 280727251 470238147 202568406 568498751 715562372 998114284 903877405 942887919 125234916 222963727 852694437 856111156 692353335 789056726 180673964 240344230 301008144 849210940 764804477 787582487 832768353 941439421 775252351 977464933 635353921 706128487 313695913 591240874 142646297 553950051 70858489 362802514 404170744 967737312 867356807 890245457 206160209 756662254 293289674 422735146 134439013 795982465 405604741 942833508 831214786 937661430 188757207 220404087 529985041 797109068 471922193 857159022 911662832 928732665 480312255 829827851 80896377 84647460 86305956 661215942 259404348 771412304 272444637 295835032 778653406 881118056 620064140 927730348 612313939 772254292 329843453 377227978 120242384 163498727 505938033 578603824 313538285 531704133 159448759 430050615 293206643 455210952 292081682 589134300 398973146 985904479 872888437 914621717 916352522 976695624 298806621 308145315 745468014 981988338 315519706 402448445 733149881 790245078 504289498 557103083 798048459 897540932 968563166 981654911 388648991 392851236 5536286 435433534 636451317 690816703 731582097 847208764 897421355 912920618 679056307 964386456 562212942 971386295 853974620 961684782 533714586 944084887 770705911 784720373 846562284 910721711 731585117 820168943 819175652 907637981 209133358 849360338 400722844 835320184 983216109 993263047 345090578 943527310 365301570 504931108 998600941 998742370 892618491 980241682 208881975 609869266 99236348 559370950 528181906 577932987 596956357 993886946 525143330 820633843 913444530 943057799 201708898 558578131 481824115 803547909 953668416 981926330 629952425 905418818 456622624 947566942 756069679 764074652 879094279 976520961 583716022 691922505 681986894 911322793 241675721 535239822 102818413 229005127 775802568 931703577 150119336 649711510 603916585 946757402 49624325 118969669 517761996 657079149 62402942 333696334 229718533 443187215 157114602 960126016 210000427 727945454 987145795 999512809 197280788 315669365 912843744 950348191 246353095 308528906 368857253 631575974 858238422 983520338 748856080 932650492 779729898 948048233 100513236 213428717 614098705 874643199 973109750 977827493 534801159 951757750 464106405 987487212 437417888 528654511 644169572 957913749 655497316 899320910 925663004 935219871 751212794 883548219 39779836 935267295 12728448 654697112 653252891 744645654 499267107 724629050 436552018 889182339 632144809 915144566 615006429 970250319 441864617 496225775 55993153 905912162 195043218 540299231 343397857 839815704 307132279 487154029 743475852 877684122 891378430 966395848 72120804 195701206 334830620 450023094 710326015 899062067 571812810 894124384 196384174 509804502 588915749 764364370 571272868 910923919 918573015 976499270 777819746 871226836 789865094 848653560 653140936 918499153 856798579 935252747 196274324 917719090 829053543 995231981 626014923 786153892 182084395 636050195 788391461 895646204 622939025 723212899 601239338 622286567 638304967 974164755 644843930 754135162 727864336 985845286 395707348 534743066 749059157 891648784 844720322 866691650 215696736 261466139 110860222 279560420 780269660 824162260 845044864 951813693 907579820 933262563 855132921 873657319 156653871 637871563 62688588 497815303 787729524 847669975 964463225 997770667 127216433 480477889 56935637 586107367 12152149 809397343 616323853 652136037 667630121 809008544 344274078 387049729 424809064 656174228 706429735 943653686 389118409 829362933 25939039 442592356 265319486 556744354 373406364 676021220 235754203 327338481 257990993 438113867 894344933 969055820 470653301 702957480 220894093 616128096 145440556 663261752 733654625 957524774 325205573 776081978 350885045 874313636 413380590 872420450 168218137 549940308 984297754 986336053 189385348 226976800 796177256 897671851 871746351 956541580 624516484 926261794 720901138 977034418 225586405 480010554 863308303 878244813 209124002 235307971 362065010 987997856 923404951 970974800 950357414 960011390 545181821 721869603 966110247 994597803 897988444 998521397 657028885 937679225 418003888 850066519 110676802 576623306 717680270 753134277 768194257 889216684 70088437 620397865 226956429 705619831 485044535 536925781 440643508 772807186 927675019 991393271 56546726 656457264 77927540 671819804 897769421 931570810 732296286 982153705 625110547 927924951 857319519 903269466 317114258 556371782 676800174 939996322 338870571 375686453 218371427 422836035 963663248 968358174 68429854 759743654 256206948 611628599 563294810 687559146 209329171 632824595 479677233 733798639 158043675 538408457 502416268 879151824 458441224 896771793 770751490 797894555 774487679 978003848 921953754 927246996 445623190 866729319 635460013 865447605 649115880 778241053 851186690 894950768 881600227 941859257 431421911 981104107 810984514 921430642 264618971 829013202 777058411 803422319 598338980 628840623 646783526 831866196 666851978 816950255 493986725 632316361 645530923 802150985 159824359 527092991 608338334 969881685 211439974 501449114 158659023 657429262 726281626 965706923 520652977 763517486 912736408 974775077 780760199 998994086 601119435 867615389 87497828 376610562 192220702 796796474 664225845 987711881 61448200 873872534 386441450 709519421 752978848 965378934 356621258 862435260 761217364 909096516 231072049 599072616 950411462 956575503 410313466 557305979 255669772 689663716 768329044 849757108 221557262 825757858 273642671 324136569 841046839 851816962 148636051 812650069 105586646 500719712 360017944 897526484 89117277 796845715 221079485 380026600 902648457 998408295 921138976 996113062 499906988 500185427 411885073 884011625 675178021 917806708 172224864 204934365 583726197 904825808 351514139 590135966 526017664 812592578 43051097 267099330 637306045 980241358 729583617 973787788 715824486 851470209 347908124 438397923 863736020 914562715 632771276 865630406 277669074 418654175 931416458 954776771 396783529 777828164 436866258 455076528 6852109 375892487 572394040 968770212 413078929 855370160 534346531 667602462 172252534 486901517 144909337 253683911 255508815 973763747 381292217 399271135 957930118 970701601 40534969 560934102 105225208 596631186 284762379 964228711 559446074 860469459 787260163 909477552 635851422 681500190 898090192 922543553 609000892 842703773 361059752 574622776 233960580 408502086 525818316 619667325 682633295 729451402 384593603 721609868 237211625 263303470 278447119 640215828 897706750 927202043 776448657 979086807 972097028 972989178 24744356 968724246 537649756 744632378 793643549 860980710 473149854 582723022 359230566 734927798 35628381 362260107 100157441 782882468 591057095 721257797 456105541 735733713 869309718 886835858 554309910 929834863 556321774 660521196 766315690 887686791 681279185 841183692 853124283 902746101 861877891 865381721 841661549 968123785 235941137 613704511 382134055 747878133 673911913 704084199 163162255 969381413 493053075 929609226 753308533 778960336 621721185 823142994 768142685 812184542 131828095 735047924 162846112 168446344 900447342 940346808 681645237 935533159 852505563 889254159 167470666 626371810 474476081 813837511 954968752 989535165 371131318 764003327 412011965 812196950 608942086 950427095 895436002 979381060 164650466 762647274 571515963 918127341 658557488 773791381 164343564 440608043 880384170 952645523 556895606 728372631 539346257 833201702 26539162 90466924 970492093 977369626 478121425 807274529 109959741 233188045 830307762 830934935 5870933 542799783 671951519 770845423 624433244 781507708 62776351 536600055 469951297 693112413 455173464 828730088 282636638 835214614 183185921 733999082 738372300 878805997 634664673 729785732 143911448 908517907 947014006 976931920 650813249 994672275 943391957 977062865 551547440 936812919 251822309 401480538 708732128 770492005 267369204 949568487 836777468 851446652 346155106 833403150 815246526 976601764 383597400 613693390 639695994 652104461 519824799 584106387 826897858 986874273 749237420 896846881 964487368 996434254 919311330 931864069 46526715 721325100 613574206 832489220 556567784 934825859 447119204 506140025 755733305 775919144 65097517 614941566 386756202 604569160 148886042 215897387 641227523 696541478 268419724 584526856 62945282 853523056 410022769 413802831 363535865 613146125 980155206 991294845 884908372 924289066 549013165 699896841 998528747 998689803 103993688 507898722 872556647 918109340 190460464 576268461 944362865 997702311 863945954 892117202 476030017 611915715 155488602 801413509 418951805 574424394 999642375 999782197 672267922 777940291 786543748 888790320 882218906 947794421 280159651 777220208 937892549 953365449 882114176 970948565 466342982 641392605 832266663 951023811 854072263 917172971 51112594 691325084 955881336 988538530 254686668 756390842 967086955 998413162 918327150 927925318 938162763 988999789 682080140 814618734 105924692 876878906 535276270 751574724 505118268 552856636 979733312 983212083 12808566 229109214 488675357 749027861 492484078 818897319 426952072 657200324 495612431 549923603 268842381 475043772 614652378 894525265 959628328 997738551 323408808 753952485 852238782 941224306 655240871 807807706 510021206 957674105 475454709 841332337 966925838 967963210 272870183 518501956 777044342 800717989 561069550 940656341 258305349 283343386 547342584 769374585 413031142 868482169 604909999 806202391 196784232 937096623 809205632 934063356 686019472 851534668 680918186 813013609 977305566 992858716 530679385 546283246 259537612 758611656 726574566 754719149 893283772 974227308 832282644 842496361 595600296 914877732 971085792 980192214 438930807 693555577 482281134 483324745 940200859 977847906 929873121 982788515 297573578 466428225 678846595 829442210 699399844 853349632 456909808 986819111 322172743 604632132 652395499 755211069 743258395 903651753 955435047 976928342 599372003 878721267 161362365 797200174 152395880 939380804 800059626 952199951 566828939 742175949 629482921 732899998 161863037 290485200 17527206 689631157 353727949 764880646 689759176 939180066 519083440 783019097 51887232 543641620 176995988 957099686 866108375 957171972 458335510 875425406 185248470 237342178 846241562 928009098 204240049 580307769 181117156 641506702 597388635 635500885 278278627 526440784 716155634 718362410 775192813 899125824 800264947 931735507 434506468 707048760 452542445 705987814 270668581 431605780 962988285 974938819 348896188 603123911 478337732 607644126 142597148 653911081 940757078 951656506 784117382 949172189 837096932 969127909 975108154 984641551 305069882 872511260 635377251 752995525 156558274 432738210 129577220 866767583 282455333 422278465 508094716 555786233 271710669 621195268 281205271 493606272 660302119 933269036 833921162 853269829 62532099 770663565 106553316 609647925 857878804 944680223 319463801 687932745 230278707 570041385 187908750 512091255 495005377 568429296 985410759 994848473 712099013 965567259 612513669 685375420 394578707 918494209 980382115 986930431 116229761 565976237 952838377 963873691 116089855 197713113 525355856 791638183 270466596 544456079 6876359 417120638 618421007 823511742 219815647 829320220 982766939 989094094 757637767 829161551 277553987 456167920 648822311 724385571 115004538 978643988 528257382 820409574 412663505 994855849 164553016 904787198 62042071 747585063 48319223 747500353 200965894 403450598 334994544 767366169 24427027 173241821 803215518 853663774 184714002 392526455 690910389 853263878 772632840 973499077 663386144 893863962 147914754 982783622 753325944 820288976 416247326 427996368 553052367 892129302 697570041 960231143 398468837 491781549 437481786 488216702 193381499 471704877 81788674 592191127 612810118 821718363 93561294 157224126 128851357 431107447 589629391 954504264 211969749 315171047 995108235 996674140 227833965 244647638 785178465 853244513 932135196 943556949 359052023 530728993 666212153 695613741 229486402 466415045 137726234 201229033 331114801 341111005 315269182 688323558 948322460 990272971 765590083 816316979 425024816 536820149 640558553 644455678 820440191 852511763 244980185 539565131 527194987 921012424 980884265 994039748 712934015 835036242 865483396 970438063 460628854 990310132 265343999 370930269 435978679 882615998 646659564 649565056 32780770 812339458 364532631 599468740 421594607 553297053 382049777 855510502 938843722 999834438 738410695 781717052 129003193 844145433 829873638 875350943 37210035 580914396 705902158 907558241 423189067 554531131 106683623 137657781 916481875 955957899 913953728 915551892 254167982 734502625 935884557 972306163 812424015 986134084 319890759 682442823 677735226 688645666 740404 316315431 300331147 886790615 636333986 898742012 444353827 565525218 980234498 996761964 793238345 807122250 466703449 730960155 637161428 988094418 988078113 990046083 681635362 955831981 79050217 819595358 955055705 956799951 876328519 883779392 234714838 647930599 362486043 530977372 276774956 725113046 364952173 569460060 714616767 761380456 842297252 940998374 681002133 997879531 294575510 983172086 105638433 496685365 733747234 995915394 358205577 622625455 53736719 516299267 826120370 848128100 181372252 404165412 945586554 976278915 25347076 498999266 462557553 539691540 373687366 860830689 821621674 993256400 266421808 643381779 205251988 455435188 654217967 744383674 121732762 375238964 784162704 903848523 849257419 880240880 804512076 951423997 821629211 821879394 382295323 588185159 140801646 210186223 765359602 943626775 619221536 887217843 805874111 878944292 502478842 863858082 13875589 804651063 527242703 774636842 335029734 527451021 393634684 509257852 112653810 739215614 13455334 201512605 844148402 853584472 439820481 972215599 789662690 827096129 391110251 734036328 585023852 787730421 913070583 916107889 525321507 598144098 58610485 328925451 613918197 669418854 278673388 364794008 580158379 932823157 249496916 607000747 480697532 816082615 736089942 754874644 939343190 953703613 177374737 629274418 794402621 868012780 575763299 983974172 327283240 543942472 885658600 938902838 757581674 959780864 214723683 891826205 215565728 636376595 253091916 592249675 147221530 887245920 346812172 749689553 547400234 916585595 617514585 848051053 194111346 201915548 394173735 795695764 311267765 879810444 294560630 465471947 939296322 958898766 812301886 821638122 482406041 735902145 974167381 993229770 738195752 894729940 214281375 218029912 353731471 706745614 522745843 623555105 964509237 987860773 201343353 472369160 692866852 872904443 62235787 369604527 197048097 973597689 993357898 993502934 366725790 484363937 871930004 909340548 819630777 944035009 54009925 145403975 322830679 977850614 390325169 434432526 427511992 785699015 110621853 439166655 219748957 545976048 281645503 897616766 232684382 427296811 416424055 737327988 264607664 439854072 846063596 933889412 695529059 878649749 854483629 958858640 984060436 991018661 634341644 723123249 732368503 803087237 434185712 656513935 216365422 751343165 777447392 983584454 149634816 161673963 65994195 102034461 288823584 792080677 397377682 566662273 171714388 201597643 322502494 865961974 971569844 996390259 909816992 934109978 170718124 953199369 720072069 830469211 204557560 575283382 591063530 744929506 645057702 711023004 871913724 931624026 908240589 909633889 900474321 941516191 746559856 897123314 956790723 985449111 952919802 992681771 559548621 703325963 951024095 982178673 671304206 742228200 627384326 724357877 912372663 918121284 575265579 612278938 937634218 957156330 487639474 714179511 574106108 903881536 72884504 159555092 123297440 224851111 19814398 596236441 678720881 779140126 144145490 203612758 619958139 878005700 251255038 402319771 136107035 441959329 509819312 897954111 793011932 961030172 591046378 683661911 829586836 975875811 342020412 776755712 420628863 907253078 346970552 485124471 238086713 634771968 719084966 834868912 382045718 949331946 638760103 963910060 214112088 572268284 957372086 970934979 144496218 234157650 165465658 251377544 61493377 141066254 378049345 568713901 658648880 743771198 887540027 977458930 412113395 459715506 251930360 303116068 236354181 723675259 223916788 601911583 188342861 766975072 128693322 187074467 120280781 718190690 655508205 906591759 484022480 933155994 434916372 475158260 799387342 892440581 751270023 822192423 363049093 901051849 133391884 306602120 525339201 655754704 937240100 973898159 796546975 844202583 880276163 881374745 576769722 976557703 365167594 762304555 693601560 780724531 337874711 842665215 222339407 889789100 162348792 269696371 11676238 270579591 284078990 949461612 567296235 834976037 833121742 984415785 970532427 971825878 906038514 949250274 843658966 980827650 845788876 887516742 238128006 307897188 152329419 415978340 169062007 281392511 935623032 992700641 374589275 989552927 196417631 224586135 872687004 968154176 160156004 518860748 365917105 978340140 381884244 939229081 192431062 862032756 505210201 799646022 954352822 968107258 579388888 717983763 39914908 844069753 252689457 422221297 502916789 606091871 80484663 216161077 534734584 817432326 530504429 991782902 889921270 970555827 705722329 960197766 952981582 966531757 38342612 659455765 616072607 716648056 915380067 993347229 432252058 572759484 694567101 879565278 531164534 752943635 863991677 922950268 36598815 796900030 60794192 614866965 540528769 763742583 653117741 911871983 76199410 562944188 810327211 828750636 517880126 723252002 46314745 689535076 764199390 992699506 466313647 967032680 154582998 392899002 202283896 940391603 979983976 992549390 120459833 710519616 151870884 976171974 968748614 976388387 325990022 416203435 918129313 981812632 413888293 935710773 679749363 873510055 183930794 376704390 266957941 966900600 147399056 262836324 281128091 431265520 394029030 865105456 703531191 888562777 977144208 980327455 981167193 995385977 271033292 385891363 148353182 539960027 699240056 833038389 431205981 825525007 292692282 512945358 493081088 749776374 394750405 910819446 185755579 909209805 264517906 605599934 78987914 120009617 614132307 745670007 67981749 605325936 801624862 958866959 872542881 928465544 88246331 681937242 258843979 658734939 918651153 976145567 825130939 951467978 114383633 584543756 803669594 895368748 332697824 865695481 645180927 841782777 863049095 925110950 204566268 434717123 612770979 998004369 364875053 648381638 630260211 787898562 757752378 855608045 274932708 743310078 995299981 997013187 963740242 968851571 173986052 376652946 950320590 951525104 799534126 880472118 128377015 593611971 254758401 517189774 852932023 953170787 359380702 874545134 213016649 884179413 552832890 574460357 366761222 921127823 92231310 146652273 667692967 756199113 363961219 644112920 833988551 924162912 649539425 795731531 648743456 975801880 66871289 922369084 128920560 716659577 395525067 968314513 864712136 921469910 771313490 833846794 153217129 751092479 377155227 841232259 198817267 360791645 853320433 922522495 602125342 796447361 213768510 921336238 378479654 478370226 807353160 866138506 344299570 437321715 727004802 904326917 439766477 704927027 481125985 612660602 378487444 527731024 962910181 966232993 627994971 887772180 890451755 994589913 779469891 785281415 678831129 841555165 138167261 568377516 934195649 965239664 7777933 614944288 473095375 865394584 874784615 925863575 324979953 752621484 534655441 975814403 612527598 885973669 597762412 841833356 397250667 747498539 510684828 609498381 823681048 845651047 13669096 47543593 181038583 819537818 345225291 809727684 273824578 284892996 509708019 564222639 831501218 917286152 758982209 813716096 273192966 569934029 468763810 895189303 268432035 983663019 702928871 703177613 241506644 813751047 779045362 905174592 477198994 677601505 884941342 911022457 671731158 928264889 544189178 776351921 832845509 882078179 659650007 804328117 337491214 732965025 964307796 979384610 862029825 960080343 629939575 633759837 704600253 877714289 803826431 962275876 396909730 546781714 303747480 368899005 940469246 948668093 247682944 389872714 604998861 682751066 216896579 358243237 953943918 966163462 154406962 888259658 429905068 758861167 656831110 765700922 180415276 886799516 719687209 721275547 408383852 647440846 95229601 544392131 834128839 925926986 408197086 718374780 651222545 664073616 309749586 751045400 860901621 930653531 905246533 944832500 294860981 507274150 554107987 565303067 527597153 734332217 534144635 559221392 737908737 986708747 393663522 666647600 636678087 699334631 283717937 428606309 449516355 753911879 218808564 404261380 926779058 994672988 146175781 397537588 73113123 625497584 130161389 288339162 265751100 680995000 165150700 751783385 297765310 304035439 88497805 336681295 297459795 808856193 398825651 902942802 412492650 997298208 565783463 789369273 922483646 969565800 109979942 612498793 61944684 401460271 49760195 622392339 932996086 970226306 268845158 751423227 999109347 999911910 413417637 890541073 430186568 957030998 416856655 905267337 553530620 726223185 867687268 919084456 667127313 997586044 167431170 793147704 293430678 673995838 370382456 890219346 720347018 726340226 103357442 991376991 696504603 902226663 158686285 430186135 941632697 951864821 702548797 732240880 101607409 221209248 827200274 950756209 767354969 936273463 379284999 997462882 215049717 624253427 331039157 636012490 629457555 897012599 48672391 465743024 462635997 579875057 127670701 381641923 833342292 971298633 713702494 994274524 108955143 321909302 627724040 828109574 9030885 261421368 199944606 945590512 175295680 608986302 653890876 948355982 975633959 977901211 510792020 911373874 523228720 575798112 379238386 976035952 519201502 844444771 71209575 84952943 175896225 250319115 77549332 651469325 560474842 938082597 959039717 980237179 784920210 965715650 49212719 643748603 647148355 827739699 666877232 786862514 80726078 579386116 995511257 998655968 590903689 971656045 904541115 971624064 674414922 718660721 140026859 308408441 306603383 347319397 133992709 219922074 141297150 254935061 371277714 519846672 231991336 611346400 803795058 867763195 222610452 822845042 955318113 969285619 59102258 749216747 318609141 703299607 963808550 966732023 993409429 996845906 685250748 756027611 311698038 890243838 42472125 52393000 615130872 961501210 185152062 341356584 322513486 800364326 438249331 652778446 56301525 161081717 842484724 988581275 863532187 898931448 189402784 486668219 547955476 961979648 183325597 311909311 843986305 872718928 512375898 792701877 201753701 860748221 844121412 921886883 275497257 731421258 726189391 819714918 492524913 698610757 515040245 975624528 270888648 617576201 471012028 551227073 666739095 858037593 90551053 500135433 496569010 574296635 423945872 907988765 707512210 765964610 580514744 681752028 187146636 272789469 392717463 786989997 351379530 377483805 394297049 683669123 984324618 987790092 221328925 709109270 288006683 943961189 859981531 882399571 922599450 991481019 190540654 691669682 927456285 993817650 259843989 370392616 157443672 766850591 276514260 317688404 971859798 972563165 507837132 788821286 915613392 924772590 701708996 853058402 30915840 489008294 854355221 862848340 4938414 46734172 825095341 894374125 798615802 999403601 39011501 315775586 436969272 536694079 968391512 981920208 352682528 583066592 939948042 968746031 363964808 762469232 524849533 931860240 717395921 765830946 661008693 720232361 375892668 445103887 627464599 890460117 519897429 832411200 220499908 681482768 778500040 994394584 430395953 878965753 192494846 431758051 227417843 714190197 919743633 966596516 31664317 977979116 659551403 706370744 885594387 945546978 15869799 818035463 518635575 617655414 265574162 482237263 110351376 762383135 68997099 371092164 13559981 809081824 539101849 914674218 105535778 841213966 614856941 961132713 858404333 880885467 594822004 706676739 194060435 660035949 43303000 325534108 973058049 979772479 901442578 991053901 559789247 643382237 78816839 265715438 217080724 877604851 254396237 636108526 155754457 226499437 598924480 786742862 76123336 115959252 182761731 798856938 540200632 883005577 123004632 265937420 993254828 999216840 30626014 659769637 337197801 402873201 902865520 947036723 723887057 863688639 570963862 879842691 383575012 448576676 265081897 728025221 683238638 913231449 91608054 984828259 712675515 914063151 600842624 783207651 394575067 668064401 54859422 107047327 35468560 390845403 53771194 138073035 287570904 437874662 787559046 987524616 346598517 761777996 663883248 765091132 179966356 794026105 321656663 338031706 733926252 893954942 738634594 828045893 931028730 957503102 431983605 635720470 634103494 801636709 118734606 342884191 988286444 988357325 245638395 709648397 215178168 601644152 204948531 603606613 164450849 425352842 836545133 896580639 73080490 822645278 343604692 564138360 611274174 972156430 561715605 897762721 918958701 988373252 89751258 453027014 831602121 839001314 721531340 876607972 179665548 541267591 820003799 956126836 203101235 613898338 990531013 999662830 67157751 337354465 836052488 884512813 700797855 714157714 594052151 945673293 872962815 980102301 181281881 197714822 718691374 837133922 784183168 825221198 242824533 424283088 320538036 527539692 934045118 958390768 663643995 938343077 549125460 667734135 777021126 941094869 556083020 768712800 161646286 721238138 19418427 332364545 112029814 925734447 767608252 923156039 99580659 585212579 201086945 972403224 976349924 981525464 481787318 582084961 883149529 892259178 692547459 901223585 366014018 412107096 879211612 885235225 301581363 439268897 629556618 774956466 375692238 994828522 704729537 740269985 879515727 995459371 101214842 324715713 345164187 440422426 729072752 942715107 75117657 641145154 655043190 949369223 50112967 75228372 792577180 860273995 262345410 815683665 539876678 892783881 855911114 881183796 882292235 985637254 155237611 823220052 818151171 922313599 550044946 661035063 391748777 738675194 261898831 855428984 924354491 960105388 226805928 569313179 766031570 933588578 733463241 871810881 894652992 980428044 480504339 732997471 418151668 780231439 706728720 718240741 895094502 946699324 540383729 765201862 852906461 986243615 133076799 751271665 378175187 439276272 412038863 882069124 208070572 798044329 702261476 828118721 904264698 975792564 367504039 589462251 51270615 328189778 83938128 468348076 351673363 915160084 94126836 919830312 908390429 991590175 776583111 913306679 796678994 832436463 14970066 789698646 834221471 962354723 492421368 845598909 537739943 737227749 702975892 746526045 206282817 756352082 54452906 841727143 565036831 583150977 736688383 932753725 514903297 724889396 652133211 699724323 325658172 909792426 310664510 844352708 392885991 671636294 994112571 998963095 107177106 710576857 834089281 900965476 60370703 874326183 85685419 869321872 377533917 445502822 866294842 975006285 993372168 995058206 903687405 908757852 844207482 991084135 58122758 733496098 591473926 638377476 400185012 498988838 833042234 884403733 325437371 340458377 457421526 580443444 772409393 838453003 880319389 958287007 263534418 339130033 288290533 682642288 184174667 803601229 978596046 989640998 954755239 980798523 129494283 188878078 803547174 931536514 390585540 698812905 738377449 918174573 7375702 936506726 905135785 928832937 362446742 958280059 452171222 746216193 836032301 922039128 191521855 989980110 182553623 357224495 603171272 628528846 522474392 606336498 856119619 866534260 224205703 576292928 183784485 936028406 580544822 590349908 553310764 808093127 598892521 848166057 689402376 880900590 706884226 952786675 62951404 81202765 445531099 494512527 176119775 826728109 390901856 698013245 708313393 835163101 487978308 840353724 507428740 983751544 900889060 916283245 547011541 630081274 88801809 559606097 438409229 787802332 103910713 874437903 866560960 964221909 720954103 798159993 487427203 697413561 466266888 534187460 940150234 971531761 667998215 778999006 112027436 455049386 828163705 832372574 383020048 474596877 242117517 390378766 927038215 935463787 519320796 644176132 933641903 951029628 287102071 979087557 847339309 929887208 16254476 467326913 343963725 823096770 161293475 509690362 532517643 707783169 935373994 936509679 258499777 335183984 9218605 297025862 398634413 592998880 699279668 840430091 903772307 975595495 44669182 971636591 132055244 885685654 143425268 576019223 103331838 462991826 622308727 913514056 368920076 739773714 117553643 448218956 528059542 811640371 944659375 973552295 445920559 575787111 354988613 681682003 492302811 719389372 46250152 250226001 350884989 438383397 714667487 732462078 3072501 543163032 20603965 195367211 281008074 776899709 488674159 883714527 876242416 876896311 453626027 618194972 658892851 677089900 770577477 916020070 228884227 905074271 981742792 987642667 595630304 642315861 330346065 361523789 221955638 349279557 913014604 985915859 992853260 996941551 125166022 670514536 305107721 597809222 950048394 952141720 626737828 837647538 727486447 824938204 900052681 910749898 312564552 566527363 57133234 199898030 105770111 989961411 790335747 884540410 712312776 788353269 376483886 379762981 793353349 899931925 274412987 590593298 786392922 834516399 945004780 972596511 913479177 973412469 692295216 700768661 32238550 801611117 816122022 889429518 426300733 850846131 754812757 871036081 80253646 108443850 715174380 766148921 624701505 975747057 707211281 785134495 216469382 416170062 681923869 767834536 455359214 756525407 421669774 741174466 538888147 645364207 181637609 865019143 663401183 679000978 462423522 721161099 168511174 877570660 35510676 231145095 41604942 362708823 156279419 597641520 268218111 346204998 442134730 856783238 959287354 962114129 684322789 981866853 496603946 991127357 400325229 932349060 159990336 504833891 162144745 694447534 22060021 932259769 656072817 677735706 507385195 775427300 134399917 141266457 731448792 860993060 711303004 809468155 908090975 936492369 725906052 793993778 938778690 977373653 455539090 962166551 441168196 796046545 906955467 950240204 569119109 767569163 968090881 979910637 760302956 835071535 729946602 750963460 276175245 875599420 223583783 722409240 191391066 990277818 649448453 914586218 357137933 660207115 809029575 940850385 506959742 639338916 641300869 776857853 402538107 894635022 57751303 694821218 968909644 974351262 515596247 626785669 577603344 911926430 250112214 721074105 529736079 707204977 72034242 734787898 164210838 355599429 257194806 486999268 891595239 911061248 915719502 992931061 235044456 424745300 114124552 904315779 963443703 995787847 810449686 921626366 202985687 328760809 523065338 601496077 193692538 511660724 694006181 902604653 828374774 963342018 949207940 980789293 631341455 904908865 323658868 371899451 741716063 804878610 496316660 699048357 776163881 895722599 885690623 985381134 275218655 896491699 125810788 503707875 451348051 894088399 130486410 939716417 306623448 349457069 192071194 199763504 324974631 515022497 142813777 260274148 807098971 862123369 400134449 970631539 933629655 937132085 900760912 939536710 131045609 715788694 215658208 394865634 93495416 569270190 238216155 714432858 732740624 850113858 253722466 490462611 977927342 988584266 587071792 883719715 409179265 542433947 306591955 880740061 807999091 951035960 623118105 950700846 948266235 955387480 152348678 798957121 256362659 798873973 693294796 757812043 88560149 630552282 679858611 866872759 79525553 750240691 212247230 346616152 376225222 811810291 502648465 723956339 790093242 854700405 448969645 572300633 690394754 792460909 207806938 325249566 806238442 940996362 684774508 793410053 338513088 449043786 741232177 953964647 471063653 777577712 187879259 844247997 286786614 552925354 870707853 910317462 692201736 797233581 133206159 861803222 363274118 579924228 21021392 39380623 139320194 292811223 9322321 190209978 933558994 946331515 427146240 906457558 410556604 990938364 353467176 667487427 53309185 530711189 613740054 707008696 761412724 820827946 748549174 825983926 771444852 851629362 701634825 751679141 29864868 717370001 552144129 942282327 27325731 980049142 891364868 901080599 990637286 998773550 270164451 900135725 865588622 927299993 41224447 561048009 644923255 746868762 341881741 795255780 774140476 884161121 207620978 966088713 15996337 471834288 454356897 797987786 266720517 529665171 309868957 447926988 887065262 905544870 613658362 959573940 869482888 998381501 422520392 460281795 38411979 441999850 663420660 697128814 701491811 818101818 865184490 981991649 843166209 988936800 650109651 700027604 645630864 917466025 928571028 960353808 659766196 998833155 695701589 787845399 559526602 690259994 743870866 804517431 598340435 625576735 267232864 724887182 305634909 707420039 107975370 877236956 332140534 383333216 206110496 231257605 664788845 769110357 188284911 305398624 100153251 201350978 340271858 347140025 416526668 817670948 641260076 747472448 247515264 932683908 749069896 984388052 125395516 801796973 421799631 911110084 140118033 884951923 454897942 871187914 432471396 819745846 312045784 536796678 143231374 624959653 553792039 599546635 364355172 381269514 185133114 303112980 366647759 559380299 540241301 815475279 705629515 738889788 296351380 776684599 93372933 107178116 646452014 987826536 578912940 969037899 280704744 833115634 883536280 965182376 177450359 435734936 790756220 976940027 112024957 962141742 962737458 984172152 340933748 965176026 594610374 877704939 539815747 625775369 55431416 780572169 493432367 822842004 567134514 781713927 890067532 939059747 352000288 927823728 705702607 791389144 911544640 951603276 541627044 970272663 583717181 970952059 264870443 997595431 197601869 930615934 969649395 987537075 309898458 322096839 534736400 865643915 616313339 766291363 722510352 912676578 166977600 460562978 66228151 169028220 271729299 449507747 724688158 872250762 919442298 974520833 681029092 893734734 827223734 959444731 642779103 653240021 663019747 811902656 604916021 654701941 635738317 907975708 191916921 589086363 513713493 517027231 453181500 494979188 333886688 715562892 459461829 737484432 277016502 711350969 889341939 931649483 763918720 990905838 398100652 934641736 41408787 225688829 850741349 903262295 999401363 999795369 981005732 992241710 214173213 693986203 430717702 842586073 577109976 577892739 214121624 623774776 456949538 589242440 978072928 980418739 190215731 780140025 254189231 464226842 399324809 657603761 342850170 746653516 712711285 852803869 422903375 911552435 639057146 696684848 715999568 984170047 349225641 890249604 976680174 990925207 129910997 324447051 778145241 855534354 553486639 630555117 440115328 821512163 54936340 691061010 153052893 745054881 37960066 152529231 272472196 631782252 107490242 881509235 621442951 887627090 553742969 927602951 96661029 774486151 3013955 298785319 475768808 958582388 770698252 966320016 520748634 990115283 369064283 710502841 548038518 886130236 163442239 846647886 857876329 953972057 856293635 917027033 434201021 734500066 73088117 996131569 634090355 793340512 442067008 514630530 453786311 711887471 818706519 920457521 602891937 799287299 527878700 762447842 732467843 759010801 780958320 926040935 993466931 999351692 29025043 259619932 677884338 849197074 909095598 951198131 185743987 661359626 340967577 911610303 285763618 744798483 402866729 471425722 889947514 928790989 731221705 866027147 356386910 731316249 107889158 739644315 135588608 981017340 244536656 694473415 448277780 844961205 114009717 601014829 875125835 989811606 118246050 896755914 290680831 754462027 663320861 884300108 287592776 819545873 272721845 607239497 375777418 677663099 522646903 723204980 881163339 936839017 311444051 850838123 417783421 977339857 595089182 747209338 820102917 867921326 665873080 966050367 466193719 987478421 593691551 762101122 773568631 816033171 696884250 916057821 489309528 787843759 176490165 232560280 789564627 807554971 226676583 821665662 947062860 951292011 464989771 694005715 443195159 598130129 678183237 824725184 285166143 915004387 101654440 214942129 17998733 69829992 603704630 821881693 438352709 674026231 913157729 958315955 679893115 817369382 918931553 949541847 436600920 815643436 527168093 955819394 976360103 977912869 346745139 579163484 714248785 837907910 907962504 953373312 751668655 994583572 838359639 876291547 182415746 907469585 355276406 942387194 950090712 964328550 515745691 913865530 801332652 962994153 705467489 986730385 620274282 628389867 421026924 669087441 249498659 587426925 768029651 833287386 204385026 786900034 467892595 611098510 716838325 918549578 540576126 786084732 397241270 902465816 666349519 975341540 651455244 744287676 840097347 869961716 786722398 838717578 919791926 944905856 22692619 400516724 88786388 737048557 282028784 458248515 336338996 971773453 262201568 809516082 918577466 988357632 580630571 847073744 611520352 674520463 62964843 208256694 743234147 926486003 36134452 799381904 193196878 953723042 652345838 851082915 135026298 463114806 215865128 543044858 885285233 965466285 841835759 909390440 507979949 878252032 857441778 961796852 731467141 778436958 614913471 838500331 817799723 999139801 717224429 993706459 554921254 617449098 568217653 750882514 762112657 796831825 398314054 735080974 698526852 952380624 471902052 632640266 768053732 871943310 348577105 571100393 637501400 990539231 12178928 843841699 155100732 961215786 158709249 392000364 260687470 893111080 344502042 763854078 499972560 687026316 160921119 763712282 375026587 455605340 951269293 988008980 339758130 748675060 640836449 937680552 14328481 505483363 254838659 503419758 235973506 265426959 432566307 994656353 10122377 813485548 587786556 621643821 31359903 162006291 115917510 605545222 243538986 905954223 164839740 802663433 491745073 751999810 217533729 843760088 259737697 479274110 399623747 776207333 909500001 928036352 166486774 616542741 50916622 841132923 551046800 573248749 69030591 297448436 379698301 836136717 842375826 989940354 337792673 575196012 748719285 925218128 425222833 682844649 159076777 419473983 721534901 864721147 758278900 948252103 768915811 918426941 450498318 642890831 838182846 907846563 922178404 932845155 432313636 574848847 620692498 951707021 804155046 832405804 179929873 817333160 787060300 923970159 115100822 982470438 28405710 938603846 173764322 437545058 57373675 741497544 641031563 914863428 931246696 967841175 468995545 557299149 250546238 834307551 555306278 828720247 758828224 925476038 158277509 558583774 647320466 682555859 490465797 519012049 740184044 887834492 134589883 893605461 873906411 974955722 938484671 943817204 348763306 577389179 918863144 970802693 82984995 949522293 129880504 710984449 353399157 986648114 782729819 955678313 613521296 874555571 878518287 894747542 181354047 247478590 488236856 711109405 544394470 707041927 195637862 290028218 443331554 809371165 249948282 552287052 59082425 461101763 269470737 388556606 972210158 975300737 176312961 588364429 901416137 906010858 844418237 922810341 132626773 779598677 434592863 510300436 104959148 192741823 931347348 933423212 329965330 710335181 509942879 874668801 326132376 545049827 942378164 949508461 680982352 789791372 341907974 629490492 282357208 678695890 866428946 994964357 659314992 937542567 202242710 796665986 748619420 801507980 95354867 670705729 565310302 660811509 505454521 839642421 160134893 423245907 652878959 793975633 619855697 758524167 525214287 585741674 601743847 948656097 43091640 877920412 697456509 859816967 629006127 917072820 45887899 360300868 911280116 940284279 311045937 966442695 958449345 975566460 32488521 980525740 74901785 400955427 623157836 912756346 504136526 924872589 958059665 973331101 771350883 830379710 596793469 994804453 384002939 648715100 782697499 983560262 128898061 548709846 69943412 218654952 495393658 928975808 649270589 889143626 784498399 795011449 281389584 629716706 87416101 543293442 292537292 624713322 638631717 650015388 15372682 453250543 511633 355524922 790349981 926579311 729065164 986174772 123228505 432882814 759645699 895752923 287271441 780276371 472272884 731147643 175437394 625289643 894765721 985345742 656388847 976950205 892973111 970574589 110364274 473379294 578955683 771145494 326667010 905062926 26926524 419749240 949941420 954760147 15893084 908537616 933589452 959244569 65061680 238338761 840761085 939608482 503331793 638417710 131606766 710358416 756729237 993102110 643528492 764313248 928732149 934118215 725307668 755266515 895800952 985790464 812182199 831959743 647506247 860488793 910447846 987289544 717970912 853586472 882240202 905128863 223955856 490045135 5732589 145781669 522247685 865889333 206955916 353169932 478938723 617501524 709348569 821245297 38620021 191407167 323106554 936702770 639083235 944599434 835912741 914877398 373649014 456521958 38546266 803948467 51336645 597568880 606998144 709582503 562139079 973478837 569172357 715408754 909737453 945397651 876664676 957156104 618690256 963924319 154834203 465630028 532133082 908191620 606753900 977664840 100615103 351959410 340045209 794689208 384196242 431694713 989506271 995863400 584316445 955670838 3544026 797136786 649139766 686041571 420578418 601249254 358879725 521730752 36970148 708649870 525669804 636276141 310844038 979952698 676031379 852593377 911726204 919721724 725988775 744680340 885520349 955713472 171117244 924654655 659921085 671294025 344230518 878470778 347873531 672469031 926087302 931119829 873060777 963698044 206921053 746594032 173997268 287603092 172569010 871364400 145549755 960912354 230566866 779859140 373955216 947012519 883682589 923540579 7663192 64479004 306115590 558134624 458406719 857329339 608389301 922037964 47250245 171242873 861699766 896239141 161873669 827858340 784035169 924867185 876805181 891269031 281069979 568076350 537046761 768464310 156641984 424980021 199928144 559710803 481519394 707527435 190697336 443089116 904652417 946428955 646021904 936711395 393460572 691997386 473172813 542898189 90152433 343812089 12309128 107090746 627369783 842798826 23685455 665890612 268299268 965583444 73233349 786698173 155223500 489069933 395360816 470068189 321964405 659900326 1215018 539677837 140705881 565107133 567252990 764677599 254297811 505492831 381365847 451360089 591977488 708462439 3917579 77000224 580027750 863603074 382939001 836423048 609976373 652213635 915244643 926686832 812152639 946480729 760383374 783104880 999803667 999986634 299815788 906956989 855466070 872968243 269786455 644335649 975560066 976027659 637769971 907905402 584389841 946841265 836538315 864291227 349729224 684956639 885958487 936190268 440269373 819715044 905391417 925607465 944702588 973618802 480131398 954009253 563191508 745850437 768094798 784648591 557490348 827003121 389928620 881729194 356616564 635974744 731174848 959689772 372833712 441064167 635783233 936504186 245312374 908080634 31846161 795513116 770019719 928543956 578172310 977210596 148237456 461013321 343558098 654004056 433080640 671020281 70001411 316920571 89925855 303296226 631890436 699657175 100694618 711925378 942476607 954124509 602360777 632658403 354776233 866934288 330673743 998424134 58443253 291791001 628866049 814903966 870679367 956756669 437596375 750989120 173217284 553859035 776398586 793965454 285036061 652390670 173576882 819957748 843317450 913205834 717007673 837647605 188314358 525122753 632983110 685143674 343506460 596467442 820475386 832393647 365229269 733842318 548665634 660179093 938195538 993814570 378399422 557495653 923106126 952189882 107295171 760251250 103674693 744468377 595284857 763691910 56819540 142995031 131929925 923494709 921050801 970149094 423575806 461095056 585025710 887320204 540843166 740175387 878233028 983872684 106253722 112964100 213187274 568242527 664777189 713635908 971872274 993171833 596515417 964539184 474681814 793710655 126830727 232890305 119977624 865359536 554151222 688495987 356199214 572118860 259002600 295173322 470018827 862031843 945757691 971350903 565432843 577547202 819911104 991814849 689532086 702583369 192089665 309308575 828103126 916507872 672823345 681479043 878694738 973258925 851167724 910347308 90270410 925822104 472675717 673092397 776084920 906524359 994627861 995257804 738125237 948993889 42781933 226070020 47100128 558141592 571582428 734300469 253015383 494647558 190472598 971087375 25005529 987328113 675976341 990472488 252983946 360979240 772641868 825340014 140679626 279862412 195408061 870675953 730428021 975760072 18095473 605443418 473019810 482942655 552972381 972100745 670500369 693186965 511945678 984522541 453917037 908500911 870942779 955099358 917953506 991395677 901770699 921384683 390805860 960254848 970908874 988408773 587725880 720844393 893883626 988842722 678649334 986050167 51893793 586869290 251008497 468303187 655869975 948510468 236630685 320213849 144228274 343035174 418454222 426136440 165300039 553593752 158194292 764064966 108670153 713345706 631167636 755216510 768085043 984697738 416187682 627982044 779723237 978403969 882355059 972916147 822870440 857453498 189201412 341758230 69035972 136870694 209430605 873425241 789464078 791376462 915636902 963236259 840150578 844545651 165233257 634314085 295335582 583979662 533987471 535832854 926749168 960457895 773131013 791765684 712571563 766496113 997938075 998223358 254767989 422961063 530506713 569626742 490816581 772808419 967368593 993905596 656803281 976505323 515380425 840035230 302947050 320062726 903616260 949208649 204767326 731739693 360356768 869547534 115716343 665188301 892016845 931485201 896306333 979318167 877843774 950041781 500511023 900215777 183935274 945322889 172603761 801138623 902401530 968831986 309573443 371773184 166684273 914977912 115209881 381464064 125253679 139712491 535640834 754851533 761867478 943103665 471101807 688469466 380381931 850069348 17594425 83191352 322707232 531851163 832900640 897431818 575640296 762514847 629653184 718960594 5375712 286110195 422994365 982553724 684374422 925252123 248455072 784872708 461780275 881327628 818398224 855694575 556642524 843477929 161827998 760551485 945392271 954491512 206384522 927645691 902390661 981321396 877464834 943443699 897845779 988594143 678399122 710684090 769599313 960708669 778657247 994735034 405236172 998533249 890603793 996772439 214546645 447557413 61593913 575925032 149480496 166478358 210933439 706344620 562055635 687780167 274419090 748171436 419521212 852254027 329565340 801378350 785383926 976546615 474965237 822698972 574106993 677853419 225042399 339459290 134377633 248737324 265785793 852467585 205513905 541235561 311474629 379905516 150380605 503740262 54094244 838625141 325636532 509591768 88366465 510615298 283334681 693201930 590261775 838659096 520671583 682719692 88507964 559936135 46882964 61288740 406801580 631971661 251523503 898830720 149772182 704170332 322119988 866201408 963022905 977111123 459012283 792823268 410568738 484819124 815058171 985867918 608855576 870918632 17243379 939100319 805645314 905634439 292475605 932704329 452169554 919952716 247236524 831482679 880107230 986456356 557796643 715952382 941455073 951659792 868252333 903284758 174464657 349091722 612440246 796800884 706888206 768850483 440114623 912483392 164024536 328062325 179352644 548761356 478596937 541548763 447618255 762124060 172357192 945677834 940010724 968134967 420950903 728083533 498955581 762053009 194374668 829516447 901480498 955261604 627523907 712849629 332392268 479978029 91494999 974187148 225445396 984659607 685165308 926574874 602970111 905241837 548365156 942747462 17246726 325680994 14086761 207428472 244565289 685082475 53093113 615893989 699106710 911245577 42099734 440043789 229782372 806447431 166607844 721808455 871341479 922233658 174553739 181051793 394437307 668104342 293155099 870789222 462664059 726833954 124234624 956444577 152441802 791181763 777617825 884175567 577921703 646564641 73515542 788219309 656664924 869708677 539663155 919684294 140167407 811255045 947227327 948070421 556720729 884264809 334734806 713605330 693010123 821369043 222205847 354641873 282156821 766149323 120053591 462385083 400083548 479425501 70721498 938859803 176054126 217602379 3267551 558888803 849710812 869376071 223170605 806720133 861515792 945059248 628534502 751229381 876693160 885532291 494881983 532610006 375837692 618805796 430735666 589037964 319601451 392410396 15716372 640126340 585943175 691626515 582746937 948753755 627762868 966507521 630689025 816786304 851054205 955591227 184807138 592664589 582045370 706261799 767430030 817458139 951704201 985860379 536048079 705153619 882623105 918863407 574511345 825919606 196116470 301638606 143239722 353128399 108983688 824404670 116450769 154235945 122566880 341619871 526039983 848424095 672104977 871135274 7790257 505699295 911118108 939778425 807644852 893848577 808036627 855599470 403616513 627941112 346649009 443745198 350153899 780558478 471004894 823029998 341563572 463022760 160869399 418046715 282897086 534492363 520063008 754595520 426248868 530412842 217406343 514072040 907227588 938598655 149957591 410711744 334960365 538850940 815447563 893610004 455203531 699312458 901083780 931824518 78336683 526549146 706372935 878583630 800856118 952713363 424568730 824717792 474105141 636327670 394613809 873405995 729711982 835777313 909841163 959207836 288812472 917499130 655049158 665095744 859265154 967874357 41469822 166710089 395231380 865400389 464332651 927226244 726178684 974735932 115000758 284298063 340534034 654565650 613859279 811391904 178673293 553327042 705097459 907550584 910689654 977892384 324541569 779523399 179571461 564779030 109148211 273405890 401310870 432943387 208008817 337984111 161181562 436112980 843672545 868569044 339748931 791665861 561486517 675029768 657034522 993153651 778649920 860656241 155163932 460248104 739122896 859139660 386148157 452164664 200060124 899359130 309124521 606440157 545986283 675485639 53783112 207609693 652490342 946805182 486746079 525563022 532581186 583515221 859590416 996042800 122364733 966468544 389454843 969627709 380435052 479061693 237590468 399549014 174903661 540096205 90750921 821076236 382698158 886870399 43164014 891425080 611110741 900977131 200304941 950091576 102482202 682182589 142992648 673362663 409012814 567013408 30255117 134377960 336473148 402944019 232216251 926675693 700056269 952135281 70856084 846831544 195353088 351213456 642643725 782059722 903645338 927845422 901992689 943660706 500665824 548261568 704816574 751639442 588309871 867642278 686029623 716994905 726911106 886648896 45571526 713068637 410086420 930846384 207031791 610190734 851226548 853416908 217402452 717251191 586869811 860131489 65905415 798515141 835519511 852771494 418150179 548013625 267299583 966099753 716556904 993431592 829902470 896957324 987704579 989504385 32531619 974482428 697597287 814203280 534664888 950149175 645099719 915434978 302760990 445646668 369319847 980037490 621831620 738297562 480535837 950908127 365793775 545340845 515439401 551163078 603032638 743629954 993523840 996863030 239060234 858667026 229052464 635747565 834868877 898485064 698438228 898032767 347305234 446865687 958401242 967976528 830566909 883898524 305620723 439142407 989139416 989413125 403430484 557151869 667331470 894652163 904007731 963690365 867536527 936493373 370304412 719920535 37228604 366434956 182598355 869710216 663582334 676240026 434900823 757575679 354659511 667084969 843281466 890011544 487789948 634075649 110318875 824003709 205338125 578697751 708471548 893166199 164995618 561884635 857152321 949568785 344031737 891836105 297276486 532528854 656120761 908840631 313572938 837490741 578598040 824206841 910826308 911313429 718911254 961428548 615424351 804536998 53323226 763845303 468191514 921693331 15386167 769944102 931786749 992252280 208027557 242651181 754174538 809412979 386406928 760247880 850462845 974681693 303228434 874941807 141177777 240884484 550843758 784293362 396399094 639251387 899111133 993230474 512754269 975947031 885208788 947012691 25823898 767458622 942744154 944414039 975419872 999223501 181502939 640141778 431123467 825519691 186524103 478054337 433184057 649458889 308059879 570377552 60762957 282084484 164168827 202685352 637863015 908603942 912315915 946600846 127405606 407836078 731383599 786825677 532307533 571126247 33778330 95652974 995861221 996352354 518715854 881613522 545077965 614962672 742393903 778965370 998942589 999361312 556125963 723930629 480144137 758594240 731815560 868627023 515197512 816665404 442887329 479034931 556625864 653226206 255792514 610173161 810851524 974314105 134867087 378561254 805865412 900408445 305365429 732360333 919461602 968573961 707865159 942269775 580439265 984555585 855075997 981572130 941083328 988272921 628122895 821269853 84352892 587516429 276779649 306145813 263348788 900319226 617446979 663064155 36715895 265402634 394468657 505877801 496650999 942876156 822598177 967476766 381955165 841882497 614672880 766982359 286971441 809937941 556224154 989163633 666209364 729597141 120415316 401595573 226313671 315649541 860640513 890590702 57671144 883602698 332085524 355084561 658238225 663470086 39452789 389543459 744692813 820420491 600224294 804271059 350150959 781801284 68988074 433191652 247072281 440814697 107809263 979086230 815261580 916489402 207901726 438651706 161341152 419342691 567850189 788622717 259331054 602072287 361854364 515209373 706251585 803333258 512370016 912883231 501629593 791315814 617791592 634810063 44349886 606692370 226080935 438853139 512691487 624989902 961830103 978613048 535495009 885081984 972767528 990745224 512278549 752504933 720282663 746827552 143337024 943624901 850327388 925699687 191015646 550920130 949342968 951633662 371615079 590684422 721968034 926265388 61910998 330832006 939691984 999040281 967209697 979560429 560868636 815312693 895610667 989414872 423349670 793828136 669181475 810681409 640464496 995473490 103080071 957432019 184963504 252172247 784951144 797045553 173647839 316983138 581270520 662111682 38842139 828391958 207081515 439387269 712863648 919395906 319911879 417257683 497840376 596594002 175417903 993393884 388588111 510537416 725902104 883206263 882009110 959280782 86623391 493556343 59455 640092552 541525258 767745276 598257730 693785487 712085466 866011947 286130920 342545560 133162665 684459329 61208795 291051436 376949943 684881017 951864227 965296826 186079170 323930412 257140793 890150198 658118307 954375362 766424785 774948000 283853631 896191516 590692185 932671774 61034674 759359813 97596412 648882747 573393001 947524534 370048601 709323106 106288120 767787535 892495956 906004894 919658633 964741432 28265343 354415453 263509879 674213864 31595725 32229849 306250371 752397696 596885701 865328105 184882853 189096264 826691679 841577633 396188233 715672149 150096486 467541212 197611523 448815651 122801528 964641499 192860211 987743501 888306969 908882985 836711332 849997209 893281570 981194194 389932082 656184379 489355714 727409155 103433076 473090595 602183445 983537260 183332926 502128031 188465529 863114188 496841574 996584455 785995963 944300206 710055650 930830238 28936461 954874846 928557218 932944485 989299300 993705177 781207650 842127577 17288269 923492428 932981198 999603717 774264875 808313336 622070773 633490348 885605841 913591296 72992469 250844116 645190956 775963350 132537764 236766484 548207604 588072011 323447347 982106449 916635754 989304846 632258599 969688983 586750416 917175123 212781084 449505467 480010385 812438441 251900146 430000269 471268529 891230182 474448288 654120285 698462771 816570762 21591929 948593813 48665415 351124020 224243527 585649508 588427591 839921659 132817882 919872176 96813616 589750987 716163249 810860761 860999281 961309653 469545235 587388369 195492058 271311613 47210491 154072195 738924069 986265589 158023472 416260571 354235964 748094377 982892759 997111406 124425295 963199866 907920506 995794681 581056537 798621790 693905910 830963039 885033967 981406358 692625663 909183390 618163089 919420409 621879228 795139192 361849724 888174521 730021074 967605106 95596557 263897510 926543457 967388683 292670634 433895905 924203069 943549248 326649853 718459617 737554130 775655529 132876650 933243288 898834771 929605795 977593580 990555663 794539764 852521400 562929606 764677483 390968558 561952292 873335706 874962271 667307754 701706596 422720314 811790703 588402726 972202433 534888571 838962762 227724826 298397256 804459612 834041050 614374526 638259202 626558436 979826671 710267885 769919607 285550829 644386863 556666852 952087396 240476314 928460533 245782417 584658716 974854350 977491668 436177826 700194624 825062215 947280265 303133806 371150201 478493761 491952955 160740079 877793724 704088076 980859357 9591022 678226131 57294526 654750238 512166978 613235543 627127959 710780433 418387343 808602149 819418042 844988098 73075741 602634835 47406978 688757953 733271050 931557017 431526801 462539883 725323944 747112520 744162203 795958311 472243573 861235508 267860275 390212545 555393850 947265880 451088330 632086050 630649501 821246674 601128974 923886950 992324634 993168743 377334786 672083804 660824998 682920727 486305467 516402108 390791598 561827650 177521584 434520168 342937230 848387015 745352717 994248136 299336530 515747188 985413744 990538613 964868665 996475237 20150858 587453113 111867825 808511040 390942342 553368504 490224476 979163374 527687033 650423551 386246525 932662091 360302299 773504345 533736401 910778975 700744949 865183898 494442378 631778974 80025411 104582786 692634877 745675524 564320053 843528485 276875701 589549729 297736466 374010996 29357691 640942176 180541166 913851741 8226753 837390232 92270009 792132247 882568720 930176217 681436968 700790238 161225017 238699277 274596186 637679127 552113017 648289704 579088839 907862922 985190124 999195176 613741588 624686727 979536623 995658968 588929014 837452039 722166413 803854587 416634051 445505395 245662627 504382040 386310682 586815371 994118711 996697191 513127373 656406372 657602633 987378871 517571474 681107541 648031109 737422251 754545134 938883821 777867415 818017007 959647780 959819717 493323573 653037493 441542883 513807463 418701590 747773958 659428082 713935102 368623852 541659200 320791453 340678600 232380954 698669206 248775853 460393935 356918888 480855684 86180892 804600272 492383158 875247458 108574546 939191131 574849215 982669816 284721211 935906631 446206868 651068224 410073121 655106160 649809391 941390740 508653545 824221210 460260020 774038671 405592754 777681090 438324959 508960401 128188141 339524525 614401810 678643231 361126930 548378978 156112199 919267746 981371291 992496554 183871561 525650312 409661439 895142954 160809666 559013551 845361360 938014314 650392114 663586495 120328621 462061435 458235596 935365758 428694809 455592771 442490341 654057796 500083438 599031656 558138331 916069340 287971302 433728877 482455028 594660428 800440342 999766802 547803714 592318889 711913541 728728431 783114099 964183609 778301770 824280921 311229248 901028164 674801891 773497336 206155977 325900347 676691245 964328109 902408059 990715189 126974622 798495174 609382254 960014329 412482576 705619288 258228379 492274499 787487774 976368472 909493342 915293331 124393691 796774028 610274181 718207922 657276501 787810567 862144780 913269867 153912092 541142335 251501376 323983288 82844320 455875218 161149722 381376408 181094937 536127287 719871793 906071231 472581240 640353277 365133586 809045556 324292255 739687975 754690307 827762390 876353734 965677321 401655115 504302828 696931192 875771519 113248696 560927266 872698807 989926106 4245058 990867461 487803390 684164313 393442974 576585496 945281381 980251554 372880447 443872356 713543362 962188099 297598265 889288914 857444014 949345549 345065649 743585033 367594203 669847856 867675776 909961214 702191308 959569330 586737267 640796242 542157696 829560265 977790490 982967291 915995350 997094416 285279612 757902802 700491515 774772996 303094513 343208341 855583476 947985669 744933070 912822550 14591389 648193774 536092731 633677909 449116517 464133141 996422018 997035897 705375993 925765321 226652904 801016054 252422534 304429650 538675196 970173721 856741934 926236531 80696548 587422153 830512719 869861480 487893182 762238866 80136344 433642091 580076162 994535842 465990623 925568172 694025110 771909444 450115059 666150678 441267595 736198595 340356120 684112011 305348507 463956650 472566455 685497841 414414633 726257072 989735632 996460852 485109273 955492089 123045745 385816945 636196193 669626768 356886099 582859418 552260166 975929914 974536354 975726955 809862383 825146874 4751096 604835444 200426423 252739385 758763327 995420650 786522593 988026247 797877639 871168737 628479314 959711236 663686035 850581369 969357430 993250034 790083393 894047791 361312560 930086738 791767423 878817985 746075530 984987122 76631541 722845948 814043357 890979401 231296203 998547809 933506423 977744637 854987608 867733918 91759565 169346470 459766051 970744425 659771525 786747708 30347565 117987821 91849812 172101033 158891476 772088071 954833105 997321844 401820687 876514061 191723145 265609544 700509331 994858806 293315107 576887162 232357695 504990276 360628868 643926425 680909676 819764915 321656563 681958519 579438197 794646362 189947750 497766374 932628862 946178934 737948486 828050099 201214868 734532508 770545472 871422958 269674727 977065056 714356300 840435454 284763778 973391525 605988654 677146635 951415626 967647226 849356350 943283101 481307451 760997745 950376058 973147619 221836712 642112034 352019403 667737397 506728410 736946921 377108944 481636332 454201732 869939111 534929728 833289035 148661462 939883488 966107361 975365715 465503266 507304722 118222658 134295413 173273857 384183381 517437356 765468646 908192156 984911820 81659993 587005961 685195384 744038515 392660645 897242807 870353864 994305116 216135560 693994999 280179366 654110910 746395846 879008725 107555909 990794010 527975370 849684083 730924058 974532797 799267071 974378291 371659452 723452576 327248205 609306820 869002784 887013015 466209059 967307933 889735899 926117693 884000351 918799894 681801663 825350023 976464552 982314926 588410829 998576467 935490595 998880354 370884362 696878480 56707116 839561377 393064325 839714244 99553599 646385342 60540914 757234426 572941675 871294080 180806576 884849286 5982022 795141685 975256622 977415980 522984594 829133928 166074386 801052477 870935079 900990189 376013299 562510406 883072989 957560106 581151701 874880913 847436657 897129408 227049081 294012616 786814033 835225866 231553150 546816335 68978298 370316715 599223226 604091586 500862466 983816245 168084413 335674050 580211519 788053105 505307230 955611762 1865564 72656575 800214924 926574507 680455812 985833695 269837653 494402879 36508299 827989725 454475221 956842032 228485163 525609847 588115647 657278202 908385283 999232881 855619786 930527695 350527852 749544172 405071420 506870705 53300095 894553418 93354698 227686621 111447687 484416829 117100415 913503040 387960240 829109693 652773859 698536535 771379864 998104584 614628252 919426270 109759305 725805094 672782605 694152139 619427607 804125287 319193411 996428492 261930262 859094420 500549295 818518252 316683268 949887532 705523129 953053539 968818259 994292738 473927383 580102777 866139398 913668251 404229044 820214485 854437515 969828342 820292728 963115012 288353020 791972103 153817934 937162835 286003355 999186508 38200732 451878603 659542075 851486141 149217702 641558388 223696234 446785497 134018752 507856874 246982146 646064241 55582544 298296318 14412826 851181624 336866202 574490133 667560108 963570988 75717564 301180902 840371811 899740778 660741719 736086701 726960923 881622334 160859664 652728789 905055235 928489611 192809474 566168498 278706249 427993429 898159494 960908897 991747785 994459844 610273874 891004606 988611980 997675479 812360513 931851032 188880905 446650238 73611565 330604874 115101150 561440116 925262318 978256860 316672584 370180765 560216714 866193694 865929225 946247256 24286 805341543 246711166 853990468 950807682 959996682 218140531 879737790 451277224 636389309 247301456 639103680 208523224 817747517 204799332 208997078 926135902 948569623 803843445 903877002 415280706 688845852 896403959 979950649 337766743 748254195 607410442 912060276 953700258 994776269 201152436 525275462 45118307 937915921 404796516 560152835 282142017 377711001 313772539 758120239 529481399 962058587 419211807 875425996 846231254 986433280 475917254 555758207 535871249 746676138 601781396 744090865 511729351 924360655 536411412 784309262 865841426 928616783 931574037 984046525 423188038 975151824 6367297 274501503 765084614 969696268 958628431 980137840 337340250 477503120 168954177 289773755 441807672 627716423 146883197 296862799 184008751 642919910 500003406 907124619 530113370 895878080 189508022 193311045 939255195 947095306 59658780 207448601 341274209 881583721 26470929 713073633 947492629 967727719 682747184 804125661 793765244 938660097 753987081 984126331 126979918 669161039 591776368 954396550 279264310 422995356 156634322 862533065 361990503 701999361 819892707 847340446 183062372 632640905 20269938 473751870 32579105 183321449 97391041 970609867 249009912 356834816 618621637 931345806 833115291 915476365 469815706 629398087 988422738 993950114 346438911 771881493 764746490 769511518 504675857 630670151 979523285 980865735 582223289 638473474 585309940 631797460 267003522 367546812 520957992 742474643 712262248 772865929 595954758 943624355 836486834 940681057 76994514 767952088 862821252 896931687 669172170 948756732 846763733 969809565 951768410 962906214 869307102 987105551 522000487 527498498 18425328 76076530 309749512 930294736 797336161 894440829 930366091 987940558 329570406 614246607 630824276 742877898 561728001 911852340 944163901 945548377 367102518 472272810 584997697 685643467 105119967 168912484 610636170 623338042 556412334 674979114 335748605 565357987 3951542 277277575 561153085 762477363 413672459 684994603 770866590 999436356 492420846 961153804 556816219 569983260 70492529 969995979 726878321 987368816 757090796 939899317 404041262 881912339 72732667 278118377 277969758 467952675 464084221 716788082 313700847 724608975 424838753 848762155 948735178 982443066 784292275 784689824 6052183 59654373 400065939 708897684 672685744 860712873 404436334 902209809 9592234 559097287 198709678 305875971 781913085 845301048 839891428 947571169 824318356 884827631 210394611 634215105 756306039 950264236 838981272 977360092 543960093 964541459 723258511 746384830 663609666 912235590 29896843 870108160 509947323 909615439 803890144 955683854 967660516 991222489 544311047 807601309 325528988 690678682 65574881 667790241 789512401 975960102 457262048 902389574 952132172 985995767 376101977 792462851 849350068 892169258 282948399 284568934 248354792 893490087 989432815 998208043 841883660 894830029 418052895 509477142 715981267 931999413 47310388 112338262 801468127 806736762 376856446 472583844 500874168 625968618 106317606 879347880 439309079 471932211 277616205 895400318 912415459 954869251 406153270 480364966 921375975 931922371 273899920 861453086 422459403 468998909 41298099 223644316 59401596 533503458 581264475 756325099 883286949 900429398 366658292 692780500 592502252 626805874 200244921 799533920 261541920 513362359 325583398 882078864 557802281 617155746 535331547 786447193 492753436 925378760 427098284 892838028 180558260 909622148 43858438 212975096 491016658 704899113 304974007 387819877 435406423 769763284 670795962 699414934 55314632 950064111 917797670 943094855 458431153 530756235 216544739 572019557 512307434 947200944 751967689 797981728 908632094 986343665 854622058 918424762 419782902 523632045 814344594 939374392 527604035 791346133 355169268 846504470 801859137 905101054 552767193 897961581 943291542 976979805 596644598 985986948 882370848 905782669 229512216 858232910 652242244 708765817 364653706 574054097 766338888 971385945 806316473 889983085 132467582 275344720 946522661 972201780 799870265 963111960 801569167 876980751 631889481 683131303 618788252 898267893 375555437 440700133 846754029 922396116 883341872 907953268 827657677 874082580 283302811 570972873 106067743 786318344 214072982 743385898 319193364 931134970 929991675 966823148 921233986 947926369 183366523 647492804 567757548 918798952 139112988 495847288 173251039 191119176 996627493 997853712 866337116 933962821 641098748 749955623 279852277 554705072 60808889 337176556 808176775 837523998 695486326 762657155 618514052 803727736 297754070 742934836 357494862 579082205 449737318 548492771 563410355 924273064 419084482 861119158 88121120 920936933 998186007 999368253 486796809 505189781 536918705 877837398 519758963 829234212 582768887 979158984 615878461 725743577 401850496 602878024 794742924 985830080 128666023 453323664 407607069 556848676 547986724 852479505 259933673 728189613 669073626 810699730 645332096 970780562 3774237 240368292 542746097 583074438 821536778 991877765 339749031 727853971 637461693 995749134 63887163 758891075 596245454 758816174 460158609 674403591 918312511 953127347 685970258 997849114 839056328 865371090 846154151 894172846 551374057 588007473 926979783 971277067 114952298 674932131 308333438 412660825 141278636 389897658 715200315 994142106 786847936 924122273 613236569 929843201 336242114 382071093 521361101 534863268 760573006 876336125 414952780 818276964 428292118 641997537 766627811 857269549 133436581 746114733 750766278 832913837 113786444 458413051 866366474 920782251 209608690 842098189 514309696 774593438 197987221 529912972 116210697 984317967 532101878 690210041 430826766 501555627 92391925 215210015 562000211 885324486 325064519 962435318 295647788 774956941 938274930 970187175 791795731 895688532 901011988 917531194 75673669 840968681 586001451 832343483 683656863 716668851 524132726 875782106 230171330 361572777 607513982 968131141 405262619 527179601 599306916 602464570 962650698 970620254 30690398 101042712 532747708 870599112 95057671 612944366 390871494 414727347 129967137 677310847 379530515 698554174 975559008 985301579 559868451 807432573 268032528 274631269 98471600 298821891 310978553 893346737 90584919 376616398 169094641 522943264 311197726 648191179 603874039 859477671 597552816 816040816 798797220 872327590 918289370 955752149 949121683 997246272 589018102 997917518 451884787 591111434 338896220 352934234 468228937 831655375 94354261 655331533 696827727 869639461 492615024 909531205 446352494 600912005 119107160 447031001 403900510 731774067 24466558 968573462 646132407 681566384 666935589 810210838 687369546 740436484 222213048 541353868 376861781 778113200 18588248 722462749 149836534 343152951 858751944 965656503 380704235 573314749 631508273 819464898 498377611 770562211 259742854 396350374 267528050 856064128 146981761 271396274 748601368 897575309 270615362 504315963 382501709 810161359 27089494 40955267 655878478 984733862 997049573 998304212 849534525 913344734 82640043 144384935 648860371 676826916 881521448 901799629 534505817 813709708 994836604 995403714 947652560 948982350 538884358 679910936 279378266 861379772 457101555 998963406 17939395 109905136 447681356 739364745 691138385 754754516 767590721 849094362 527829530 571226719 343063418 675482082 807378547 822439696 878113103 990919763 398682580 819646060 954640297 980632328 713865096 984755767 213724115 829690756 686015927 987876911 850149425 966860860 308292642 769291935 130064905 936968825 62802390 251350765 226946589 443485862 770241463 876870976 55877566 986578806 473084079 639206262 910596941 995120511 297417830 711494484 910183535 931054916 537118146 916798594 42902609 472848033 686029581 898246977 165319596 554824612 897732495 989941891 870389838 987740500 176347971 670843725 802746721 835873448 151975428 294918061 129208439 488789336 16039539 231347998 533191983 961461312 150612829 957517749 826784476 891708312 70869148 310828055 624937410 723971453 160485270 386384253 345353836 360879229 805900205 872849535 902593748 971322230 111235424 882336421 895706304 905208107 80755184 995653991 257292171 276633615 891162652 910930495 749929039 905376847 826862404 897838797 770363465 826286440 198980811 336126172 871423019 910871407 611198498 882353299 386764163 883378237 750427985 881275827 597593088 719102967 317827340 756114094 843020365 864295793 5820577 518949457 937510739 975344712 290721708 723766630 650961858 667624264 706956559 971411162 981950548 996562042 194893327 425328040 198441723 789192140 637894522 813432305 675413320 957998140 578620559 829397389 814603501 999481602 525433581 683884207 562460224 772920427 335695545 579699811 162260616 377088094 367346823 949708431 962551269 988401078 58020753 465914974 294710185 298771892 13583377 485029293 706360294 821427153 794514677 981028553 14480767 71107181 366603306 741827085 781874723 981781812 420650154 564255580 140611255 753421032 160275409 415794096 990580955 993674536 912464546 949101348 570526608 803466902 950394926 977714823 577715083 785242980 662967662 915936851 716902537 759483449 639235697 963921397 873277731 912127447 36498269 950022726 177339288 743925973 611196611 819398875 333821311 710206916 878357441 963728430 611202535 652078131 470047589 688386273 14390913 161717280 743991341 779218036 538771594 910739462 317928601 568705882 287503758 840779128 910653509 944534933 634697667 888915296 716406248 898994894 571958411 748254596 184565426 354612989 656986259 735393425 78970179 549817619 386265333 998462872 132643613 401399450 528500807 704595276 38324770 991690222 181010311 249087576 373877393 645972070 611721480 752160293 565731028 752847541 678714557 719157684 450655510 544828186 134005446 604727616 582319874 972995139 11998328 73247613 908962964 928088818 387428173 664100997 880697296 896987300 368915584 887150398 681041147 744367860 331146454 506246527 827786061 891095400 738038309 953424460 97504181 896659491 381770039 403630910 222739123 890747533 482461323 545891572 750946692 829210585 239634766 748702967 875604883 962672285 493734199 653196429 931410180 992033703 177835895 359634765 917317428 927989639 680205710 787801794 872568575 891349698 436698568 459574133 918205136 951197251 780523014 829951163 467436374 827794021 593107616 982245926 562163902 602890177 878640341 909014315 96416747 243594347 485438731 653018523 124678992 283543907 542862692 629854500 964339825 967382867 846774415 959835886 164832108 318130790 634402771 799734969 44376886 289528401 833576666 843617534 690501501 862068113 940482839 987678832 366583797 750308694 162908347 607298281 648525391 726545216 963293143 963502248 613201014 757831073 165118940 282347742 467497799 886831243 459888912 755409047 608038484 875748529 317101841 322398310 423944909 447668285 687083328 828787110 241455570 295476525 91262074 808491043 709838389 847379344 995766784 996338413 908611934 953172669 252249984 728077247 857359479 941476981 604774309 743755891 162634769 278419201 892297305 911643489 25950241 222438588 473194501 960601423 990502206 994195337 499365819 788825772 528832318 979865549 351343698 799857210 409394911 848665721 333503326 333616848 143966583 883816721 648643147 903048494 362418694 687805463 858423609 881257973 613387207 641296022 913169052 916074089 780319200 821324403 740362378 862545855 645474856 824456859 238948401 500564301 168772498 719488449 110047356 809948182 14997347 715131364 676391869 968532357 141114798 560618737 244499424 319351946 411598277 414582295 575450745 934241939 77706249 767460370 265441729 729177747 761875115 775559191 733384283 802177466 636633881 832050177 715887212 964533636 910376347 911981580 382790464 978441652 637898572 785075076 809546325 864854641 467594971 773776557 396544614 404479207 276495651 335583422 966908596 976197927 490781635 504647451 322312984 890132506 493172948 502777164 61001856 583884236 696230658 995560818 623487107 639435702 87142664 632015755 422195208 430371440 904562960 976346187 368373449 752320242 998093295 999627980 756323103 977994183 294392461 983177957 511115616 676478954 216848813 965676166 716757777 755874919 787166842 830597170 510906529 671792455 55888233 224687794 175716929 290711242 570698823 736044068 554467371 578352321 399742486 879024946 922082397 987565659 219256458 877767921 892517486 921973646 367410633 630878011 879362054 959224683 547438430 697739496 724688745 766795138 803022970 834139567 758419566 787456944 304721667 753594154 876446132 880474276 138932543 836069656 351709232 417148899 309931781 694511026 118065668 858288815 634800113 720699316 607960904 625876083 834073731 880229593 987370819 993632587 898482241 929294549 539846845 867544641 430935593 669901572 278725434 336422605 524115875 649562967 113849695 679799447 105052539 827454537 355722565 892260841 912405760 951955614 666580817 946794115 715624628 804109701 652627531 986679463 964843089 995629288 687254595 824368455 600453246 736831799 24275722 476655978 64202755 929003781 103223839 608506467 111230842 263662145 28195106 197874051 358745455 528679582 66578349 663789692 634846614 865091891 694349968 909399514 297561189 414430800 681728954 934621667 279674244 770517585 636353029 933896665 534683080 903553164 371204946 522369513 797605272 940484082 693767673 789552430 384899210 804657688 368259361 614736981 413227654 805072171 354428081 583725551 879063056 999907319 724365886 813685966 654569471 930521905 269206042 740940835 801859940 855521187 587397884 905955579 615899314 984362417 27457279 536507566 958077980 976194429 852154927 866716637 136444852 262608715 188131647 310186495 226366755 548396587 5650183 604399991 192288626 905807734 217844198 541657023 959644926 983168331 326539517 806856208 719792829 781811534 960746990 994380740 564098256 910393306 556338566 692974241 421699009 939759789 369927569 948948912 291158054 671620999 21238494 504922688 707977015 749257292 395922214 911569509 326982456 898226450 407091007 635564503 811427464 972945174 792151033 876988518 558054178 804754671 161520551 830496095 113612781 166880148 220276641 250636352 188115027 211288784 506598792 986947889 423697384 921539459 968175154 983842291 219563821 894872341 440929150 769478018 540245237 695063073 764325983 928509163 708010859 747985063 250763968 432659116 459320000 680203190 727296239 772511797 803132876 947354493 270953574 722706188 698803691 852894816 484783864 653640019 44090586 697719743 815492690 909168152 632775629 652425212 884413941 907279954 620722058 818546062 550290830 552553194 969437036 991293257 760964128 946951471 363193655 467576344 210492760 397671446 119025318 515082150 67385376 565018849 65547769 344007014 460294209 671530092 559273229 725858679 34830311 198913069 49712698 595662064 891674499 996033838 763722957 853684173 310315443 617479458 68517747 390334987 11609713 286705802 904851443 906487334 943820768 981034284 989135832 991477757 627831028 851507494 949918162 988127333 669482593 887644259 356373644 456154858 465669983 630061819 313601809 975995915 355894762 649982473 313214769 403583475 138431443 777026330 419706624 748821098 856714375 964420209 944065014 972160774 775571048 995755311 910558472 934531285 672577975 904216671 708188146 995702946 864558437 960722434 340195287 537320613 425289284 926178888 154138934 193518302 361545316 448998487 846598926 988690911 800349605 872919183 986874561 999963140 748710638 753798394 670891266 793969266 602017392 977916996 216686134 441470520 52798177 816536764 996087148 997225608 119879908 386966313 468920376 826938746 405680594 499539002 613825230 855195878 821625702 958654487 671373410 769795250 632989414 892736645 243957315 685059757 369978198 482120188 163416711 288585101 385522410 910592188 207971798 361477436 624603721 836687344 9274378 693638147 26136006 207677432 554437446 705866896 865836840 932740771 133519208 281574708 331605100 834644792 620731220 850177507 308783760 367419157 734118712 922285071 719513064 897963278 947895350 999648216 842986087 914013438 940791943 957722509 325979548 867122088 90918440 555214876 425138485 627255075 385232328 725610341 163118621 220496966 20536788 825822178 58856360 67657372 989501606 997649956 766920024 872399945 741308051 783593740 579172065 793868667 877011967 946187804 742997048 921918522 483261871 801864743 692825713 697574568 820779726 841361011 404508732 766971213 117042716 785105489 232642384 900931400 457239597 793209776 772131168 880576370 417679101 785753895 366480229 452343741 647133585 825160962 777991015 803949074 272446679 446263664 732357183 903232224 674865983 861775518 787598327 970398892 329493514 937122263 111621988 520914378 679361232 689189165 489129409 897411158 675722480 885109444 813107318 937152977 909867762 928566646 313693592 844722456 814459102 990955440 190955535 800993794 176034163 812151685 458722935 840941037 821606295 945910778 854338998 942954127 800379509 915458689 464188413 567824225 585852885 707266548 234555089 643599486 926733867 932210672 346248041 796530247 796484132 826212445 52533554 344290196 828427474 943912343 529575154 788714329 500067742 639543033 8104919 263699760 281506297 585560373 273589033 401583966 278299600 688761468 689652747 927676594 226017067 963426386 249074727 966963679 322628567 687743515 705843718 793503541 572410723 585087784 88666814 495062479 906620292 914383119 71088136 809794194 134934311 484977392 23740169 947634921 141469756 288431775 944969607 972088855 599235409 779364805 791665763 817441540 375912513 478574271 795226265 912076055 950369350 956492879 986340898 990678959 707100202 915553280 597478720 754774393 160540206 724404580 154481689 660861746 952141344 959879433 380788127 605470347 200012290 226044011 153860819 161383472 231650553 756813392 719281927 997670122 443345229 972737427 622726055 828532837 189392770 699129097 255961274 539605614 681491086 688879406 698296606 946977519 664405566 698312491 26737227 490857410 783092993 941011239 839240038 950021379 649586135 687471166 311356596 403456856 873682259 874065711 784442046 869932079 928011548 936164959 857181206 902839722 528942209 759791745 896165572 915987496 601994225 840606884 357309982 545584646 255693962 343252369 554546971 820461441 574329286 686481573 1827437 340225848 344246092 883060982 848864329 872094505 144190959 948623890 751676225 936891412 228419827 510281180 474860036 871881853 47504613 385486877 73575844 838806497 97700608 119925966 827422579 829909365 272928861 701200797 151249683 176811006 194106032 852954728 960267420 973736102 741626280 759813489 9736286 369282051 174794568 341351033 927670495 964001875 947129859 988495955 339504748 623940607 941340976 952488302 907293482 945980401 659282259 758752046 442484997 645460712 332534964 428561113 155531739 912894821 532904665 805491993 246654352 560813622 94366681 905813676 921195145 948137582 210501092 349244695 958290171 981923170 294483248 478400837 104639879 914141871 754313487 801954281 575357398 960412419 471052423 729679713 558379189 906125134 613556341 984840872 324232287 438712898 57232599 694104700 394119702 968968209 766070317 997477885 835400634 998093498 575395678 895447984 491805815 775401769 648617375 897443444 950673801 968642776 638302195 917799663 435912750 920342099 904261074 909348303 380078670 806058257 288193328 618720712 657828015 776835152 677183600 708817666 179231008 712614891 942351158 995539612 56788199 821374438 577174147 956773403 890345857 951845889 436523638 574528729 390028914 538396098 475847279 641867911 88379718 700199495 480785258 561618683 226266819 806537571 841427169 979711120 743638380 917238093 646025940 674824733 320365827 705202124 798428734 848390804 784415857 874921902 148040236 572470826 623912897 780431736 289788897 614667836 634803117 640543338 288099737 294651226 359193359 553267019 282315387 921209876 418754432 985125779 299769694 398427668 425484362 873539926 689309308 840279824 676783251 913004455 394169561 493586586 970976202 986627143 494734009 927100388 519340986 606428360 4768666 545613354 333385390 536856713 301410630 608544239 153199966 181207366 881483057 909763968 194785474 319502853 594888706 878302781 694175200 849959926 77977477 381665668 433604266 675591916 772562081 792277591 222410632 428207104 766934017 967529066 601504324 797736431 869024980 982860442 380199358 458683078 149673998 893024560 184831820 535931449 144358875 428683256 193979022 282093109 971636959 989071787 803991648 936726370 792495006 879939680 373626371 960814517 592739383 745514266 465996551 810679628 396370908 788387172 512082483 878652933 776259426 967810315 800471900 817861462 546409917 722391869 541570478 775461454 675900820 732747462 774322934 896051008 588602226 828113797 388813945 476007270 981733424 990275633 434708359 901790284 298140562 711654566 491066351 533259499 427725119 576705095 358311552 882272539 522031274 529690927 954986031 969665359 231180988 620854870 497094551 625567061 321883789 661644406 265990934 900575747 661264423 719880884 371460917 752872242 821061590 848572399 676051262 871545157 688521898 752321692 258590326 901193391 792836223 831712328 130740079 629903923 492138857 680560979 609416807 798701552 993194490 993747063 460262000 514525186 685426618 860309019 836554140 846907427 163710968 912762427 308700323 526157015 5588356 499534587 247816678 322935394 55433083 540064277 894858747 990976549 957492719 967338474 172802741 877518312 348827785 705508107 861208750 889333902 47489791 324619668 607691034 726855794 974626976 987123439 576586327 809927773 196382095 331360391 143202167 287318845 974588987 980766771 175017718 483643858 777348455 828539387 561364773 588289826 575169109 648858130 390595058 728414460 930001576 942158132 609332682 999397324 40462757 684168396 307702163 416705569 481086814 634236623 326417755 592835242 759621452 997316856 964144537 979163390 168322427 977796648 297964292 838168878 649330406 807121872 449194004 741113024 115230832 850509478 236413106 870701796 616451580 967740347 59078807 590620971 821151350 866010778 800343265 985378084 390069441 937390836 403465282 712102854 747310389 784228392 358284137 958562975 956454022 993729716 489486061 758876374 275684699 766213078 130719578 539855222 845731683 960789423 652560485 716583431 702936620 725819582 99917080 535115770 201169028 565731005 49265231 959736229 107165744 525213048 461195018 831125734 637635372 873835718 128476232 551697746 150666909 631486198 715157672 927774097 762791646 856500353 163439218 333235937 749488988 833887663 668695699 702773620 270005021 636774397 572414519 839298243 498138213 519022257 99811943 729491499 619648996 889819798 701814876 929235513 558235420 935783356 819597439 993274308 440123338 699790599 509359940 868479438 633356010 684853771 321513643 388533835 395624147 715838096 16936889 419998133 644219280 694589968 977032901 986880510 740586523 873292487 209234635 843373102 123953863 572067187 233348685 331712083 23060740 956273515 215118156 664073788 69601048 819252182 654797893 937367478 885345184 945186758 341147832 360160576 183369175 530261129 185719050 726879570 10392564 883709639 621514310 711819881 423991922 666575587 551692458 796444701 962702348 986852351 684589295 856954214 59577872 581579937 825331250 921441718 329999210 518818618 404602305 440667436 186191401 880066159 217935222 887387086 240083708 531078598 600946300 840705346 975559827 987485221 121048102 879193845 309754711 650053276 201836545 792476179 270527573 279115375 911361024 968384921 726274417 827435702 677396580 716569414 609990878 848755509 631994261 825207676 413329946 570197594 550267696 840384916 792852120 987064136 299190790 629371739 310942927 429708564 151036564 490347616 203490524 658353424 414880288 913934007 557896173 945788582 461996177 574469350 832287926 840024518 278063300 670323762 229510910 804001338 124773280 767078183 996316191 999301879 559059709 674362810 150002670 587990103 714953401 911840636 20668143 848611816 894825325 965648718 829137392 975133362 199216875 763259760 877693279 972529931 583050376 654933764 240864573 621100601 613370902 986538459 527938869 583824977 349341929 576366349 151289441 496519588 666164715 773477610 426251186 731184549 250553129 868442150 594003497 818960089 920817636 995848315 331469942 421517368 950808304 994665976 512219720 973572685 964413679 996120810 740485664 786656641 106805458 506215995 399504670 455990350 504450152 522932049 254506746 843347463 126534979 642545446 974213418 992587616 905260662 963608732 743616154 954717967 392569041 498243215 833790979 867939625 560984032 782362170 770582915 854472505 838661767 906181258 192209824 974441997 594711627 905960262 976995703 980438335 538199700 766321191 639628269 704698786 759948979 764623495 9831572 123316884 381341306 674770730 939059516 988700035 623110353 792940971 403109126 758185215 582545927 789902783 442078006 781583022 942175862 977406846 171295435 963559211 637145476 924474538 550857396 582695204 93131562 385110822 116172286 943442614 371674045 722474932 774772087 912018840 275920129 416568938 247490374 687884778 823042985 977755922 966486974 972703371 526538579 724751626 816786861 854239685 438148860 594068439 375284238 700694145 758210426 825946985 978205849 990556033 16214736 676009566 638820424 933556569 470871188 689106237 431934654 997479091 632579409 899729650 414690127 787987277 382609579 991890167 763557758 802601981 137367241 286896923 828935451 868996646 414283350 863205258 143496103 945450671 989206187 991108809 410726861 431807604 306193394 790264492 535422558 801896402 664933742 977023643 657829088 927236958 502080695 785760234 155403729 998930213 20253692 37823705 600517087 970072504 591459698 787134410 447560820 730698979 493236996 877186757 339853596 522013073 641963889 970870025 787493046 903671412 606393141 760122741 406127171 603140126 798092411 926889006 997715034 999668712 743393036 950534156 370735478 472044790 710886437 848568844 831108662 860953858 501946395 863872748 293739496 310293632 438165803 457771502 868939242 960892704 667254380 965704466 289051679 979673325 390113670 830634664 191447118 773518171 411677540 839474544 999856938 999969292 969424524 994391945 354394342 391419554 231876093 523804711 861217744 871772913 143596156 996646295 500995380 579207585 410694267 790676248 869156109 931049818 862871384 920254228 436752750 877448756 237071221 572727813 696458825 929781827 685974329 841328440 265653625 911846000 387527323 588789154 37779146 530929152 691956052 795103998 599404977 659725999 860475497 866044634 20954944 214387752 364023995 656185012 321592672 919294852 361297609 995471941 756819486 759927118 458562546 919356291 158709607 169438821 925902688 960941545 757710957 965068157 412937543 646513283 291733921 400662540 86457681 559885953 893424332 931763535 806776463 931053723 813591545 885638567 167829979 844685723 594431374 712764515 411323355 727444303 392363652 956820323 582746352 986533920 154084186 677864492 716770686 864359295 958463659 963947756 320257933 682038646 772046400 965831626 966499581 984943941 120375607 646999200 449085502 854368345 352438317 658862084 177386268 840249001 96652222 214486358 169014379 265861022 490107116 825348754 991227096 997432060 128573653 881217779 836113739 878460470 983864593 995312096 178016912 436423522 864137382 900686038 635227866 794634016 692450974 703470326 791569732 942365641 194227077 494960533 877876900 924255110 22101005 185695127 404043013 694051508 314728778 773599655 659159179 662752569 472245319 557615686 426464402 958538311 996148467 998139438 693338410 710314688 74032667 158298971 401790328 472760191 951511049 987983170 439804271 912029708 266492595 922181468 518250776 539700976 913403859 921803761 136119747 761050215 706750857 804794029 813669788 901734700 591836559 761305737 161330756 938100351 469438586 740912908 404814462 864003622 98850108 723215359 737318220 989101253 802208661 822733352 343541630 534727095 926027389 951520472 629596579 720733529 566576418 644409351 418098968 871209556 721174300 783233532 780601844 845029227 559766747 836481939 959196080 990459158 827000246 849377260 107068290 980100943 325723714 499833998 39664597 828636968 901347139 947222649 527719659 849904185 62478723 486227103 866937151 883287193 547695185 847918012 643266120 749029378 797261884 798136618 605947321 769467007 164003341 421454403 92210793 382080731 342326351 672792595 775132557 909496364 281255757 985924584 664095416 832316451 235112894 408403001 351260557 580343722 474764954 554929572 884355638 914074897 821863828 875466070 405399569 588205653 447131477 768048928 885055683 981924741 906739410 960779058 563339476 749958230 198143951 802541012 435457088 991393157 608416778 763384208 856608453 944643868 910772932 925864655 376828376 446508032 273829113 313971578 865850420 971971553 320243424 510731799 164414497 896482516 593962873 700577993 637553093 902136857 52640852 340794782 968571178 992277586 242994159 702444287 256681762 959011813 816088198 946451263 408274615 666999316 979488747 999958703 829949477 878846718 501377537 898254355 947672873 966777017 568395493 823018057 373685797 738220280 384408010 817727844 385771531 624133026 9992215 436607163 817155157 917758679 972756813 991965071 534403091 823584363 560704475 746767896 58729962 213482337 942878009 946083163 435921844 707825572 61252797 165465766 523344441 584258574 923874093 934623001 55536145 433211476 279401018 525170634 700013953 711802657 474178200 627296078 266470348 393632616 491286926 564389684 930513402 972531477 763639030 802796684 501759375 695208086 163916589 237743338 187392620 923076847 980172593 998503100 80712492 941620038 361066757 857679604 667857506 967418465 59609504 816005813 705015424 952996390 453678145 850934926 867266597 900827033 361775036 878867647 942340883 958204614 152110382 517668919 424495656 507834471 936766158 940715948 357873833 359971231 635812822 909678973 72156486 387559040 386409077 619663121 131556166 751446713 857992869 876770873 549587696 971781000 356123440 579064895 473984914 900561216 477674487 905475650 338749804 873430018 88696629 602380479 827367128 854405549 454465190 582365415 814306390 859495594 588643864 955373056 209391473 344148632 186136124 276138435 843365594 972037894 14531314 854405139 150819667 823512628 206502617 691398961 588712874 702622132 804711752 962761150 197347294 898706552 152774412 194268480 644372927 862507166 870738626 946365713 313527650 595643691 233956564 921547436 766752561 939834831 679420474 707322262 649885605 914776083 644171976 770355112 846517587 850569720 336243878 406812523 857186516 919192327 53331538 486309157 321818799 323675146 485023085 928900405 735731640 874249352 577433325 652027196 587155441 664419920 599373012 658749607 417697561 774956197 589357959 707275685 843164210 986213115 247875424 373621710 913204135 937547784 421454102 661587905 386630146 800569471 836456845 872155287 897651617 906013853 720374524 827264003 191304172 639360296 463997473 624258018 86573783 921167692 585159456 693657985 495303804 717526045 594193004 727605924 10742657 178437074 209008761 799801528 895066229 926596647 801801212 807072323 87149461 428886707 95917323 499115108 593773919 817928424 799210911 846658081 475765892 603408094 408922259 928807856 332009739 473664585 639941490 826318099 357877812 773920658 44803216 441588709 167376005 311737750 78782397 883419388 646892835 939936322 114961627 930573721 667807482 921893027 711123870 721605533 851780938 952883149 61174172 974530571 24237032 294817264 823940967 957370687 662905211 800119444 971657737 975886293 730754128 892073597 386399325 682275941 775854584 959726799 8048433 47827519 100246801 998118564 20516569 112624172 975718187 994074455 664817739 994867165 772132486 968079928 93992193 312904347 856089250 915318538 597865034 651341334 160387951 739741295 704031806 914517809 169720104 554889504 758402680 902421281 351962652 493408973 283612801 286883225 706424557 925269494 880515665 958167365 243136083 675700936 141474152 155462407 640873136 994459154 964486320 971468575 490684683 723865102 69156149 260001143 532861040 713411320 817847477 919969704 730276954 980405298 778262735 883443141 59246256 378622529 913709912 969867992 390749780 938848072 586256307 586508410 457086262 842837544 603156451 635899640 786891918 840146503 527959829 818111558 88581396 947639827 789148058 925634785 529851150 730665881 78310892 334143233 205945144 279374110 453427921 494649094 943984033 987342983 950215933 964097151 748426330 959213042 496850325 850752219 849612363 921311011 714028196 943986301 733890748 853274930 855594706 917490987 478704919 536594477 575431687 963485996 829203000 955218896 637311885 875904371 645334592 676510299 570298645 682183180 532609547 655149956 596150200 765022856 707980859 825717627 811766652 846867323 534825325 853052683 917636466 953223557 289755150 382507503 792037367 826445521 726486343 973392420 967836808 969860155 419178898 906922900 112727322 954153206 467724303 974994777 373737144 888873330 549422181 594539133 621827271 912882083 272165909 913003374 817041869 947471425 188993087 735365018 484580369 952283680 87179639 795245413 221991222 388055578 27034077 854021807 747136059 958789349 349160789 447160036 30766499 227970924 375237849 447922111 519491244 895730915 847772428 970649250 428657146 435792841 497521527 535058343 784378602 999350724 382131217 385358742 367253289 838469918 626461918 674202585 406412283 706957580 48636546 929926462 382408040 483096826 506296720 569026067 936201392 973391585 435834729 804131429 103459989 400888991 311955962 549204060 347847301 995627738 782396905 808631039 502078444 960264566 691294235 803746121 395571627 710982341 693820877 896698458 599797734 804880735 980691505 999707329 659020565 873731903 119694892 224651120 109177684 307996309 469381763 857591450 150195825 851759978 725800652 960774192 25739623 571648726 313922423 384909648 406675863 862636884 236080169 849838757 712334891 890605931 561471983 660125305 844686937 934188599 609635169 908609348 50924969 375151214 6715454 571971315 218892477 789416268 548812748 763162385 75942508 914560115 398504481 580761635 818097534 901811634 221783671 885584402 360622325 941440337 591519486 750800246 935277445 969158375 615608389 665583539 690946177 979586460 415063294 549567961 212396672 855516421 88571176 435251371 88914539 371877067 333795764 853123651 20939694 797800567 562313301 858575865 305261612 918680599 562316351 563527623 577366695 684938962 428110569 742472699 695661719 703898858 712525540 871915638 830779786 947843799 224467512 973941465 641334473 651511842 771257495 878435012 709430894 732696094 834773921 886128259 19142475 338723509 693027073 718746665 521450795 752911612 674184809 711653317 137268454 576874426 590181512 897340219 346542048 947311099 718408344 942156594 335002392 611020313 787050875 813387326 285716126 746766217 90117036 737471668 63103588 722072314 419285389 746790921 59145653 363775729 142486836 489607328 602924359 628352723 489199198 579365491 704347075 882399138 741672516 905325075 368236300 841685777 592220905 910046688 583563224 786262183 956708200 977144881 904864677 971960910 946799992 991249990 146144310 600940815 696914897 731080445 236633751 654681556 332489210 499747035 920280230 939948995 225227615 423438367 541399445 887869915 260357229 955411858 585665757 877520699 837673198 911312484 258308339 798317628 862567093 886027737 288762106 531950275 107787010 250269733 475586360 980871128 724219248 789649342 830551652 908005221 289007295 985971978 138918045 777465719 457985033 852671702 381480512 740761142 891587019 952045974 932278741 942968968 151299953 960677280 668401668 988551944 400220674 891073495 162034917 169203474 760252503 813732426 247888842 549794754 429934301 638278314 52778826 727270681 41445297 717618241 382445798 646979008 486640162 527124048 742772755 938864764 170288245 369868323 435393177 813560505 60514741 528182716 595843880 879109583 382367958 741730757 461007290 684882471 243607019 708702054 432688651 993581289 543303944 727002247 662876923 696025642 433355851 475270795 971732713 987788835 572514309 800152329 622918079 940780042 665810497 842414361 305573386 682295159 206663303 858329000 376373606 581018222 439211392 520776658 571319789 800863683 79163159 443394242 454382481 724518410 160929037 605183215 187358184 224774835 773761885 777092505 851578951 944536552 457230389 662626159 942190440 951374624 435576900 988402757 42603434 189297894 878292221 976303626 586125709 601765204 639942386 777814893 442758935 971308039 769927656 978844476 399752164 697609411 837034233 916884791 930725956 972713842 764096998 956440484 123187391 317052335 818142729 868247678 432996168 748071245 194224962 229137380 657239826 685142983 36006335 389521783 380412750 409605121 624951751 815134154 433498537 547511861 279903767 643548195 448156040 828449322 340527365 840714271 184629337 545774832 56367349 680545062 749437642 978004366 411670090 429655132 978372680 997135140 789386762 840487255 623473536 941888670 46073760 331960233 651301962 693578654 887603144 934811254 33297573 276101604 695498191 927385480 452432177 499742098 25882433 784245227 364001466 654412082 43130749 160997921 344464821 613730731 839474792 846885095 560322072 778813579 251451453 739681034 444408161 802204587 314099245 510166852 980804188 985335480 354693582 870101813 338767478 665762743 51462499 279357706 605420021 814803799 936370139 981871205 960429868 979165355 811254327 847057895 570589519 779287689 305944215 350755471 654158783 891903029 477824635 733595961 839215340 964305075 508587746 549007675 569571713 684346540 607793301 624841006 700594135 964069057 514910091 699749669 843643419 883007607 731376954 910066665 828203715 931669126 843745091 937794413 628234730 994186280 994293843 996217833 408171735 720875306 914332224 987896798 80951414 573825443 375079448 852879662 632945228 962362744 587579870 793450805 35260469 668053044 420965351 621214524 8228181 294281961 123694017 143804596 461322824 846965297 857745234 957303132 282160831 622910858 391173699 765828427 460466571 701378205 586038194 780101193 646561710 884688380 549171823 788883568 751134031 986636763 972163558 993823061 833436347 985899307 376062474 867120807 724651976 840795187 803943721 948223100 311894810 650341138 25003791 234698343 78263981 140494621 490433535 515789526 348747193 384676884 164111088 610430557 385937482 940125178 536394696 737167759 294800638 449266126 843857838 921892074 884184876 959382071 455835450 595299019 548956781 943665364 145150956 975949638 697847199 718263874 954856450 957141885 350103643 791213486 437752074 831506207 783381266 891620465 189069332 883899562 153432534 910184021 117950672 996368872 333205287 769188237 628938307 645038117 944300169 970156425 554273599 890982561 210625099 321957616 676481175 803462325 679223763 786134083 54468155 465055035 919398602 957687141 727272621 987619608 943454442 967371278 829918118 963237614 109702955 527370560 49144894 68082376 36383167 37253027 352125922 711481958 969309350 998173228 542106666 850666140 273420435 858542257 559887169 792685121 74380505 454316875 501820023 643812331 515939068 955518434 217626701 839092630 845980329 880569145 328067680 845708498 827988428 930284593 648953377 688943588 692028854 761333000 380740453 648340904 924609199 926278834 344969699 821048191 942316819 970849780 969069208 984259855 616936046 981484363 298594621 805075667 532245988 917121503 278617559 600629758 515154793 677002752 386839514 849925221 747302967 750415137 790250088 954375484 505300917 746013196 955093546 994001729 454191388 954428076 854035623 953280873 824886487 911546144 584403263 732390641 126415851 544404206 973968541 990315690 423979806 456464816 413271845 771337752 707396640 959776648 692278595 840893465 689064038 998158031 825884629 858479720 954835731 966925282 728505904 884139566 756539667 970172298 622095999 882294544 212823126 775745013 354822501 776646071 637629095 737596004 458311743 528444191 266706225 478253846 449233148 613798847 323085422 692203000 138081773 357339577 401665115 485175140 98343617 723003357 777574000 847548490 537014732 959776280 112970406 386484424 648048160 967547783 47845497 707512120 140490354 320494402 698875304 764464386 518074612 901248588 815187876 933879979 650736928 729342000 706055290 963933648 7112892 83581990 356459869 597119264 454449324 589322425 450000079 546618085 593881844 928014361 677538910 951415221 19914379 965007255 440887582 760749641 551165796 967602897 828799489 893200268 753355926 841832964 396131450 779116927 671506405 751025223 992577521 992951178 949545456 973088778 367253289 773968958 92285167 502940696 307702804 676019752 965566849 988943673 596446735 956410959 512311894 782492569 642891778 650150754 688029180 744540123 473969281 859187175 622226841 872958588 263495394 865942586 428248693 611519073 507598847 720830402 277944007 536991288 44946429 270007821 686573553 908461363 918933350 990465552 968366490 972612952 289496258 638893093 439819293 659324739 676311200 943222461 54993360 895991226 168829866 530140723 404115653 889190258 279435815 856118931 603905862 922381142 728508329 932256662 939404615 957354282 253869887 622762830 183102947 346539605 991020159 997924637 856640558 884396437 762162407 923812754 831542245 919927724 889009650 909442204 207457510 368065324 790287600 834391281 69133047 875676799 377440431 841350076 19105727 285204153 495192340 817356079 901544481 957238663 105741358 932519779 566515079 750448921 21026606 82117437 148698152 364823564 617029719 913950644 799817495 964812931 303824132 591199734 701811500 825196744 124931101 746188913 27293062 999955325 674268529 790446403 196815507 951906259 246355347 826053836 484004809 659820144 570469430 580497713 311582357 441309793 396969001 539463273 134013101 393843293 71235853 274335455 205944490 321055198 102584332 260412877 890162644 898734823 190615590 275711731 697969805 845104787 549622629 838587917 806022399 955869968 294192199 744223342 865185668 985736635 382413153 866538307 243215782 906671350 825017774 887368959 776295265 801260923 671279156 824093333 807256339 859657134 625986827 644803091 164638785 523572144 986654204 995348829 208650323 306752742 869649507 894015155 736453862 943270619 757717763 792200818 131901763 139532615 283723509 633602854 422951232 775736147 665080718 705537023 526348719 690946304 909922524 971445144 287432845 856969910 239906565 878097558 683017179 779232942 885150715 887818787 403732239 728238529 982615796 988427292 458506660 673350245 539944209 647379411 8448431 948691420 360477741 687160443 285667205 990776931 461080398 782963415 796238209 939913647 514000849 773126416 169516494 748782167 495430918 717148039 285330041 339095855 422876355 615436503 935825878 939352638 726361573 911339129 73775740 253098991 409097449 654488503 746727198 878413538 265613203 878343410 650024325 676534921 819426243 826994792 588734880 977722459 922255049 930378067 145230243 891782846 90186551 280571162 10054004 218028299 120144700 257470432 821388454 969139988 504386522 521870499 543796855 967311545 902303069 904391566 902804020 944750334 862710275 977700325 494752120 970042251 82704870 182235425 453547228 646147665 791168955 983443025 495307162 901269296 236886507 865054806 84862720 559921503 192000321 640818494 223261960 607800570 289059362 516021583 22173058 790505557 662421363 940556068 210994050 318176088 7388071 744225807 375587020 574618727 851584817 972835578 833462182 881452797 147946153 475601317 355251423 404041060 738879669 843107020 622138000 734134489 610066737 657123754 596783238 669761314 643926699 736185243 42520437 173708741 272221255 969032882 853779052 909416864 575189586 775806303 990132596 998693744 958509442 974006712 205893603 768706179 209397637 675633507 810543553 924353898 794868547 911321226 369794501 611194306 956299642 969983703 444794543 647821710 400540437 474579042 627383417 852595157 683127863 881929443 301263205 894046222 655826077 966120719 918667901 923670792 720569680 979848428 324671589 564699924 822121378 930438516 984882087 999814135 191833949 635436184 585721356 626173368 99360476 509675626 829625645 971187275 18420640 174444898 565884137 696533705 593623827 998071842 515719798 671188198 927716626 996111632 518058807 817633641 290120501 661148231 605383794 816539819 295940874 545723067 661602128 829864146 505364823 756405392 869163307 925631875 77305591 971065137 435052795 696881916 426472206 988919350 405614387 582527434 528578759 573028240 987218718 993178350 967754110 984074998 15506330 99039440 284299814 396053512 643676918 730467125 405289109 450970233 835536541 861386627 380829894 993834663 21473086 374672229 965550358 998638449 177604500 192841463 616328972 646729007 724573639 852031390 595623345 654074987 868196454 977490487 498430891 825215876 403179017 492315899 208566791 816426305 733375625 952009215 254454786 652504001 720197047 969497307 613416246 654531310 359446383 759526236 63095509 186716893 997113776 997481766 902247299 958757456 391773116 942872473 781844579 999898555 719373080 919048078 849093705 934937371 482364997 669210669 454452795 823719073 552385213 655404857 373550308 496543513 313954283 852734452 558913100 840506391 906406506 943761798 634027375 956916152 581871765 990997071 260585656 868402760 439343428 838017627 88480525 287917327 448563411 543640613 830243947 935790094 350322135 521764894 724914249 925808110 789740393 888484207 382160131 787875863 756384456 768898062 552418109 953265370 503399974 550851013 536241870 545490717 833515704 882519147 919430311 939832341 260611797 556840932 803361067 827372910 934921926 944141192 10140948 750467961 63532357 616166247 618865725 910485941 614206333 744203895 508220633 510587515 318976904 547178272 341833359 995951024 620214480 900477327 828890085 975644845 50150263 802936103 896954029 999464480 817243611 908336869 640943532 717994498 151574405 873825851 921512878 994892759 800972663 927549848 92929810 409706555 124971997 631013199 815630024 921064191 448799418 672417107 970681063 986931374 147903909 197046834 296311984 504001294 566315573 670149791 978178886 991198080 379352172 510110466 902164180 969570592 244992818 250158283 182308818 434438632 907447787 914692811 555501347 594463465 170269249 507859523 789069687 859309695 196802997 289601703 124253717 364401656 478994542 675562714 116270080 724889363 725288946 957622073 213998562 243206111 905422898 972822205 304672957 543400954 988888375 991346420 552138945 931788206 172608548 716756582 593217161 802583344 467349388 564353784 293843282 400824684 880707424 943295804 341572627 987908957 681268387 699006289 105094171 157062239 753764613 892010965 854942264 999248915 122680264 836831802 973415315 996209544 870786964 923310989 648340834 915284838 632102566 912000575 443885230 674443820 433825712 677919532 149293584 842554243 891377357 955111403 516291096 835291824 991398509 997259734 63265576 825379081 490284628 722273005 497600035 831039914 742101231 798533497 828466745 924619598 830077851 946662256 543818495 579141091 940668641 988469784 3806776 830335315 951964594 973142553 427646322 475225457 600597781 797569722 465525210 618557815 663216459 794869385 403972228 727814137 415441844 561498225 21441959 359189285 55218611 982679890 288067650 334163973 314082391 419341791 267900823 735460155 395633207 944841313 14769738 305750462 533801548 834239009 825138872 962812776 986008875 995716639 459203875 917202306 949379064 981302060 919257378 985312602 147341563 233849687 896036874 955572464 486728501 727158772 736013187 820848201 63217724 928217405 459955795 560950746 407494318 758640873 816300971 938544120 234984222 401447265 888332591 918515292 758021551 839049333 336858333 767492400 499090121 775340691 70195607 587554732 837654112 940098256 159718940 353818595 724445842 890562426 51423606 443432043 537282904 877271350 511566905 605642881 277557940 284524956 669379482 851062400 632172429 647066607 246762258 433955215 225953408 566531682 91502354 699407863 910018312 943394621 353135852 559487288 368119989 799567689 248445465 834084685 982840233 984144129 584821532 698507274 473562909 888328264 970080159 978671458 625916361 714117199 424754184 778951782 687508091 775495129 132130709 355667224 441242480 929291694 721092226 870780781 112257447 819494466 954221416 978013708 436518483 468424841 384288952 818512034 204789237 549671644 338970417 946946738 267385243 338616244 539205987 646606217 55971580 155726703 15026333 347139474 695609082 744460157 901818917 992082837 83534839 670625743 764880016 799374607 728671388 806763144 605956036 827694903 364178768 947685536 541780723 552411317 848315827 987976052 104710 947378751 927661066 965272836 468014555 496162475 807463562 921208392 273561877 357213858 794885396 967389146 975024976 991823233 284970070 733215282 732087087 856037518 729044882 758418763 548403274 621235819 846785494 948815301 530792859 922504645 66789737 215273206 997967269 999886716 497340834 935113336 834823815 905581437 308430277 396086888 960029827 984789425 855662654 971379707 701563716 924122137 120454124 817647990 217534647 528556136 885547645 932083604 451755114 685435411 525489260 689909655 206950799 215734474 697692446 927904460 795306332 854578741 34117309 473955700 808021847 808184668 940386667 952484993 713654991 814668560 725208192 940980314 587529908 703602959 754811613 903637267 688609636 756715170 430541129 479697417 941591703 948047743 587098238 662263034 566415160 877673690 678618442 840903953 894606401 963586780 457651507 745837920 306889129 582008033 328096996 762858747 833896297 888319202 440017894 596933818 835141191 947703086 86849143 196399090 337250437 338246146 946288218 978869344 289084492 807414843 390530147 954765970 267016997 417112963 75363717 965906830 51934034 941108584 495672840 710462165 932592325 949991140 755778167 771044436 841695249 941505245 855847904 954017315 4195088 711727351 109512257 530589348 852035937 921291106 920646311 925133376 155451732 372241802 670422426 855592607 57208754 566324977 344601391 504146084 715934095 809525970 852481888 966186741 754952597 806072733 294964842 496174510 383309042 609675368 733789199 991654061 71548117 760308793 822794251 951534712 723738981 905134257 797600294 964104822 417223937 515329051 582022128 824326626 833492712 972202390 450098764 935162963 986358150 988995121 932708641 961000879 984506146 989867299 788465107 840443165 975087654 997383911 82993388 198336057 865114968 948331032 357579647 766341870 202365935 673210581 49934820 699097677 529342383 619811980 137838482 724114768 957699418 964889671 81765417 813317169 670794006 825337926 791379319 922434587 16450250 772701144 284700258 597969133 622376498 906260693 705045151 948657559 411540528 498997344 542904310 608450498 800356209 963102675 584017368 656479748 476053314 799242992 254666663 439373191 895248064 903138221 553004888 656307608 409585206 856334630 363649742 614427196 177410284 230566570 777650382 913094026 472575973 845697105 991656823 998373315 407873585 583701911 919092041 973889630 564305923 836715483 192246259 988605994 385683958 986387051 871581822 902473427 36389990 366422863 942007270 987627947 744642058 900073380 975610274 981178719 641249694 994927849 818167051 953514915 702473763 887133770 919761483 950287930 650972223 763430295 849185984 870782512 973860013 982705732 899185065 977664319 517378071 946734766 897576830 911832571 475162954 490917419 603391870 748083666 213809148 720136430 609398917 620397841 723510412 867783000 152217453 507229946 397604815 704299650 756508819 995074636 532403892 993419008 646411881 995000628 169672471 267571844 704732695 793238013 712465629 933421154 437130153 529434996 134448086 379151450 917490661 960940078 262783335 330703177 334054175 490808938 576762688 598872106 765693377 855663148 54958810 575036133 408858274 472780785 842012777 951798128 892811502 907791881 28500992 544425748 616501449 815274436 689415412 920329372 652507864 899111577 309652795 395389055 435760185 643017862 797461970 850861693 303660455 328753461 821932389 953355666 294744590 502565392 717658153 957358338 463886366 479807013 474174621 800061265 459547997 695072213 964398159 968704156 751437028 911766816 575844371 661208669 847902818 919303493 50669777 600401317 945155346 982224448 314812474 766491166 876141103 895717476 575906392 581258720 913387466 997244790 154367431 620694510 75116386 852828637 130858945 683661466 463928818 870077492 210027884 276052508 804096646 973065845 737192615 777095218 829631678 964978176 457702497 657163175 805346163 816625400 533880824 902090387 691011762 754283151 529744956 592542382 67451003 133976184 112591089 769273382 754567671 788651863 837942761 900257995 777587609 911998513 723396087 891107666 693749242 901957508 835659744 842497835 594954838 974017568 100419690 202590915 309162951 423428584 899464416 970377184 130821521 726604002 609835587 994390459 99034260 133424849 431243479 685314998 876015383 992498889 756624573 801535830 187483337 242214993 89486038 93925590 6242396 284114312 896985818 975817186 374389148 381817671 189993002 846096647 412046591 878107731 804542519 989387409 432757143 519040278 801625858 877717684 338279778 726888348 237611522 736923995 617524478 648069389 286299670 724854469 564525735 880122421 140656706 627999228 249318415 720543253 249069601 997360819 805916732 872894084 442617820 637936788 489868881 541865402 654378522 671132908 579390085 616262020 743809736 895894787 632777894 804426754 140969810 463277915 675446250 872186900 844543529 853504174 905629774 942594149 757036130 879705163 273257190 891279019 162208090 640076484 259279562 678547695 902670638 909256052 136952989 445162291 191146096 850794054 388701241 914248508 786019738 854386572 620510136 725957980 771092660 772716463 24887579 720600650 157269157 455356589 486128260 707096935 376584128 804597293 158534070 754485041 518015482 655375573 297831691 874698740 127848881 433392283 202218905 685442408 267727020 708144617 241582764 688009068 88209626 144396614 754426669 874361799 969713298 998110797 508274923 760773102 676686590 960490799 187583244 248056651 694800781 695974371 406607583 570843624 960808478 982528092 845211836 935649162 493763325 691701395 469811623 710161188 423106485 955416247 406128195 498299291 356157332 600778061 883963005 899873514 869502316 954504405 172725498 660823557 972762048 989117694 250314224 956629203 816054692 831223735 501677871 956161407 610213066 839806724 676521003 970966259 677352224 879693426 287327068 372084687 865276095 955063979 867096905 927343424 86772092 165163503 15392281 57214015 18485337 731781390 348060592 809543951 689043278 903065922 808380536 943540782 346763749 845844640 837783153 844722577 503238150 721403684 50666919 513168883 434741641 913650515 94209525 188169325 56370254 326157974 745099956 832034891 539909248 892748536 331564065 644443500 131049650 936036874 159644281 913087416 146956769 196372650 450791858 830150902 360037747 375682296 43388670 772176748 369177308 760821692 458951270 554083531 777788554 956579049 755961297 787059611 313388261 676420558 192826175 753297323 922791421 984906921 254171262 280471481 107113816 216303284 756542150 811097673 494843713 666541189 642980565 901430885 973438358 989382991 145716245 736857106 646470219 837406235 819091193 848884520 289311871 510041410 64819315 725821774 457082448 716528597 702652848 804817580 134804346 919145031 138269404 966006559 817426179 994216922 826156374 861733692 266098917 953839383 399296221 534065873 701491687 957337394 678370342 926643448 402087752 800548604 557805720 666760674 81077428 88490797 651702265 777744993 127123840 366724123 89765483 259941386 105288037 684132842 151991903 879417389 901443933 968192561 543270014 664269147 279656001 683795735 225080545 681236661 472340300 888714490 439515249 708732214 760436280 786354907 678832344 815533434 385090997 471304753 349855477 838512880 204634486 646929811 717776185 797857027 149139338 998886807 911200996 946484809 699178551 867320960 953502674 992293375 944666042 988634590 562298756 861442450 139677452 161444157 250281406 586041251 718368575 828631859 849931490 983198775 804743046 909557355 218582079 468320896 443620365 769165469 470988741 518580333 818279714 946717224 618212721 930579000 662760060 929721470 4306809 153299241 799044827 977265617 59748573 266768698 218632416 756561746 405234864 800252441 289239546 513501631 954083665 996043291 489685517 637539203 347878241 511679405 436670616 523745349 416467903 970856810 241427928 534331383 843149105 916295592 482836796 637792783 126145382 182734509 37366045 996744466 19293988 333808106 883901453 920394792 633903197 968144498 115545034 182693071 986152451 993239594 717271440 889828362 668799172 738675390 946089893 951187458 324317961 769786776 836335447 905110259 1385560 923260015 806733818 842352595 759229753 834721416 692849088 931309342 851514934 874814602 464400768 975032490 996976374 997035068 444034548 948167479 990059956 990926467 257803103 522923256 2701118 521271428 62282972 139751006 389594760 563847311 102608244 680754263 993108995 995098775 187883787 388525527 523406646 597663879 721705049 948497989 908074290 990839458 522951007 853362876 520482948 878212127 846445650 865212256 1870009 57801844 12913721 199324580 802709019 914250234 373295695 720975595 630939989 894292836 110365708 947578068 221473250 307968885 901569939 966857392 230177683 299060007 75466732 248216864 367416735 729237451 922873430 947720951 8183542 322719698 492365319 621215403 482967003 647607977 626917868 701806891 417965139 975175365 411494502 716410763 344567049 606601786 515880296 731802849 912816404 937224636 499187437 580816228 101855315 138355208 34914126 681299004 201310727 844582654 784254087 835212440 405609137 407314500 671335613 698591708 359402782 471779170 890359476 944801355 236619591 782223384 374022158 506465314 79824762 667896394 593815928 841441179 805605133 838184209 151184520 175605708 189968939 421457171 602191762 770639402 975760169 987403186 644081403 982493853 111656665 613536875 570080145 889117625 261308174 647615541 848375632 924163045 21894390 406078333 258501330 457004581 20493789 675094730 970967194 996185520 277457067 635167431 327789741 487500426 864761262 922682817 747815605 965522294 406363284 762805495 184999506 432464298 874440760 955949024 557097420 625163393 539797967 867127202 254596085 614770816 784348638 897592604 352177022 769461195 220975203 712273358 362025405 449178757 844092075 950662003 54198546 305956999 396230330 697865455 371745729 531579090 137195438 787636967 578321879 964196225 491384651 736504170 787701832 932687440 578064606 608939933 905080383 956284697 296489812 529954171 103676654 532757749 733572415 927200442 268223088 872072577 964918667 979229254 978320723 998359309 278435492 463531956 81895986 997108386 142649266 352360661 178759622 488701200 429297392 904481453 636332100 716369508 638394043 905781646 334876818 386801232 399013894 513395995 932717038 957724007 186613487 503828261 476840431 719781234 798920575 859663446 745591192 783910961 171055194 824305283 280259739 366651820 362099792 668424829 919418811 920129430 741378047 841215070 610048751 658301341 740991459 829821616 90510311 813217297 346059669 917875996 813410541 991535563 96751016 396299168 646852020 695708954 26837671 612977549 505781179 699706406 794089083 992403104 789607765 894555980 569507535 616446607 580650563 870943432 138939886 961495067 651240076 658345080 964840363 992139056 383710394 422436482 536536662 916860712 635113003 907166244 305911475 809192540 389533524 997592228 998373224 998941883 988656373 997294268 393086666 877498478 674478211 743041626 152300913 220487270 705270033 792918328 20284025 583667922 458023964 779524388 302510558 771156083 690663086 824369112 607158635 694051677 838124023 963902037 365234562 639314992 242605718 389122652 817689288 829065724 772849997 967650695 231684665 881732431 131681513 932767044 770754767 820260439 22372318 543196629 333643071 556665600 648010235 837966026 185557568 499842973 573379492 862411635 546410559 729890198 298578175 501180563 420332649 658072836 652981145 665875521 253000991 569423176 274376353 357777982 410855899 887445608 742241275 745408815 322013338 449584722 38875247 736603632 32932906 995691581 883341785 926080958 662872431 939911293 86190051 968844855 744264181 950983829 908168696 976864400 14643464 339651880 69128179 603786895 323329437 592707461 959077276 995630150 608031324 693195138 851016889 898365887 123747147 303907218 540821940 859114238 771082958 838857778 648845636 754989784 365242105 463962527 760450940 904537384 30257746 321632328 531949721 793458629 336512911 439070849 373778446 965606576 494609351 747652164 830054456 966306151 631383623 803718057 851957751 906157253 32721439 781985922 25686043 748582552 37779371 476115907 767455357 872761766 333383598 573039878 787976770 920264021 436960109 665284671 352712414 416557179 197915318 284436698 848452385 904149688 478679485 704841599 798818106 879295502 6724461 646779426 154273882 774161726 112210827 975002483 331814549 967557499 151813246 743104824 804781821 805445849 91901571 747270522 43374017 290943848 884118687 985892472 280782299 695724835 187446453 324889330 868183492 965405672 175845412 444863325 118540199 749556898 591783228 762144650 427871721 873132911 352366309 602615866 7887977 703593807 81862256 561105114 10490723 437392225 545120941 776280112 767268448 920265086 887061493 889065162 713914476 765921820 992542888 996950542 692542061 986949710 328067980 833571319 53752836 461066683 909071872 929746676 193696095 918875083 545089983 775247996 748068769 968851315 971900585 990891946 505737362 866725623 285722009 304215123 94590675 324568495 902349188 969700968 390426366 498984986 487441222 949259589 89716247 513575057 562902834 917436706 845481179 940417208 667096391 825753367 675806077 745309394 186684940 995995004 691549227 979496467 140389022 911331812 489826513 525384072 122688512 369540536 608777823 990038037 54902312 820413268 953605181 957729468 520834880 816223346 116837830 444685468 533050772 913796240 631710678 890702117 241713114 674505108 250301863 823475782 631190999 901709557 562931501 776519041 475279151 562561726 352526437 903389318 904752739 933785618 250487419 755402861 131888432 203275678 906225107 946455203 572455662 891951686 999617538 999799120 722757511 860657663 926312978 944451033 377424020 539786044 78730995 89661550 166411707 974787700 994585367 998713454 143021390 915134049 846203058 856060771 263082038 933699223 519913477 918812085 232053316 755305251 375173182 769908086 424255248 691795320 859378623 961938066 309092174 603336458 447125770 840537683 457079294 994420671 86200779 252227458 701510102 985646360 107737428 517836966 32240669 310595284 664283001 853377712 12195216 510783093 680463172 740096802 931089937 967868476 115082209 438673208 179754338 615713465 51935609 157114138 260566522 618867822 116783585 542319423 388699765 564146741 110835208 871884611 226217488 608235787 488190163 762473801 60295403 784914154 274886988 756044027 118424470 609182846 136761837 518945889 709080151 832679309 268021440 682031028 257672722 884662290 541242653 929623499 456713016 948166755 639049616 739771926 644458022 935066431 62663445 499909977 629869528 631281346 570478430 925057290 169797308 996969164 279394434 900349973 617663265 811532868 199229200 290239287 976149260 993658895 393338342 698248809 678240537 987497024 496274078 591256244 821323771 875228498 962745013 965657324 36056684 593511333 990517027 995084461 908216996 960669275 611785447 714056756 349401273 966955478 634894058 778827373 147250386 218567816 708627769 830115183 620085855 699450699 485165416 857014665 446072368 604662135 54263063 772370142 416133186 755838365 83652912 541092562 82108826 627446604 107038533 675751749 654973985 946203298 880797687 963937027 604389249 631327329 573207092 610577863 165213672 566458271 43078573 629220939 333823063 404907028 861206166 877750940 314593669 532074718 624196044 729891652 802497433 814225398 688268733 822869520 767769371 921267624 624026596 981925743 22162796 457563453 828285684 864139465 35845479 492365464 383739532 719134466 956210102 998478552 45824722 229815772 443882708 807775505 33318227 978221947 36056674 330407429 476160096 513497061 731062642 946987089 327356230 341527279 853835367 997854828 931638975 986201776 992845337 996820938 408253881 457994944 667140994 928299314 256245809 323548688 288073741 511218585 156377839 804479979 954096004 971908097 168763237 734185203 21728625 739073298 145418706 584348418 735872716 738650365 107253208 406676813 952184717 966430773 252750319 962009569 864837242 969395460 22676085 641951746 94773135 941207786 390939209 705573649 563925027 936491236 238431985 369613935 505187410 895546039 636586108 856097437 476334678 609925928 349640192 541176323 769346841 956278496 666548504 926070204 484832182 777647039 712585620 850367596 368076637 969238969 68093554 942880370 348448593 791889846 390437617 812922962 884450498 995886145 614642190 825371070 769958406 804917996 939377744 969764150 651740731 656348086 704249313 836999045 989403241 994850576 545704019 821824328 508636537 656674717 477348187 903005669 697765371 807573626 655036524 713162635 258804853 775087403 940323522 948137081 858286394 987135484 167417286 883726878 127806416 837963326 916464541 986861885 366056300 891371471 362242750 560749050 759797870 954379428 732372807 854194044 80906744 683293559 2997083 839342092 672745198 773146780 393656654 404441277 203113826 734449832 279859717 666049148 312427878 800743062 841099409 849962211 299070341 979608018 734283532 830906360 481613589 731614292 33463666 684741406 15508218 865172988 603482473 721398800 261412126 768772644 734252734 891233610 609390317 635768979 575463446 773243721 52724436 950847783 281830636 898802930 828580027 829135533 929172526 955059610 21054868 155939785 505524559 742566600 630931522 633018989 997119192 998682535 741925599 896698028 941432321 974945883 271938420 622649537 909041125 955342903 125568794 579902334 147393266 575894036 34364934 677056124 102204261 360758872 212296455 787776085 259195219 655992876 460624787 938921511 894142082 937358504 976249297 991530717 999720584 999771357 629173867 914970787 284279009 409219478 61443318 759942277 726471291 766771745 218267148 389308710 987080549 998773440 665252857 927735774 554758281 857620980 383572372 799290903 919480851 993994490 632979611 822132747 70390246 432601405 757785722 780723553 494980438 604285201 15377312 373864861 8566634 690388134 739049344 870682912 411674204 687732521 650564092 901020076 377126943 835640444 39719243 986254811 319414751 417548529 98267343 954114552 690508361 891249569 167986597 377156269 129741210 364505741 628207656 641033506 909147056 936403254 380842611 488690935 722690407 950091473 346637070 852702032 150806401 548216109 962672727 985599681 343889542 972340619 652524338 759220826 187000180 372440596 183907441 677620194 375959136 645041702 41903280 81425025 46098499 975446521 961752238 991310586 844365693 855052122 642155718 715031495 639260299 728486806 912371809 991286643 505291276 507586447 37262982 369909136 321099583 593280202 60103188 261420592 957502731 966268869 935565410 966978125 376688617 802127149 543842081 713862366 843489678 861732297 943968063 990748628 917286505 997739162 114667394 470151055 676634298 806372316 809708008 882162734 834724504 878328172 683301971 695003763 972876177 991436051 188373102 579738742 989292912 994074529 784142431 830436432 433745425 833521468 272197604 332003443 533887580 907965914 389039515 727175982 804402455 865572434 195828702 634332852 945763606 997585067 280037174 806570825 704719768 935925150 248831947 289719002 355740818 401576315 817831850 920449170 510333525 793975373 288992005 596842557 797163411 885412494 637309745 745898487 634619306 995007691 174501498 214390958 278403329 354048571 539536965 705777359 995724841 997454202 138943530 275839284 482459036 991636245 805104292 913771891 659141181 899298899 218379057 567869475 214395749 674890306 251887917 990122199 101819767 787270304 464506783 979347679 474109321 550953789 78916152 170964178 961205816 998256501 425113467 519459543 379124875 561544816 337931598 369074147 745261642 775651582 850738060 952068413 464137985 951562423 213415613 580014570 47438174 165276629 447935695 895667799 594412427 744695916 100389788 439612954 352253289 798361656 448872504 532485811 745331145 923755262 65386810 449409018 73453925 824722215 550447286 698758505 186048726 853079005 803968711 989727883 169502894 543392184 655135124 974162702 545837291 751842518 203011018 625972025 704089641 926823538 585390475 687898657 793843694 948334394 64921992 79564152 198207286 685742281 620834949 667059132 115371506 497575914 168306740 607987252 579887806 616973334 798990277 855089588 963152519 969329471 625254009 773614023 616271822 711374797 711969660 766597500 719985304 788310172 35808472 97342650 630973611 632023705 803512907 966157590 256555827 328976937 942484472 969561817 25939599 323596331 86511801 276337286 690945969 966205226 951442886 956875504 122862931 854146755 286194071 726966210 254261285 802048137 978273883 994782390 264521078 982019091 188555250 828543651 203863828 976350346 658946706 827885725 814967648 881791034 302008884 791465560 216646037 240405122 722407042 993560036 136070142 347809982 742294289 800459720 885702952 943022804 837584426 879509953 423417363 594849513 381649349 963396273 573299758 767019496 717019361 900394854 803950702 871727438 71827457 563952773 798015754 876486366 432767896 508868759 766451816 810833556 883474732 903058508 247786283 653049937 886448731 960805716 730937196 947399417 732369118 823993998 888630808 955474098 727382050 903812993 878803863 905335840 821118830 852758939 345005119 672239431 679822264 723820746 396792716 724738247 511554385 520591205 475605845 799504583 434169563 713182621 542153095 621252536 529672619 888187297 295977263 664469359 296357336 356950467 309141285 887308474 595381278 781661554 339691191 641492983 993946206 999436933 816710312 903223359 870783332 918278154 941641735 978336129 973669197 995553640 398337802 646646082 287841311 513721220 813624254 958130468 279522215 608461192 659127022 705541300 839089044 883306232 568172678 581883089 937381503 941553986 61147708 794499410 860476096 882872006 638857531 810722841 805182240 818841729 707264540 929022308 187432459 781927701 587136494 604527735 228059577 977817827 19778057 81138295 94065674 841616315 864885494 886864207 745264394 874731038 284641913 387565002 693189816 913109004 818237364 891288073 328832654 582290094 588507342 831802726 994545664 999445904 758363139 908243024 344208588 676915023 129644459 166877056 84831088 609287445 994822686 999970052 604596705 980080169 808648021 883032302 191143693 751771409 194465424 922133622 890300718 940806804 270666264 959730073 229983730 617842681 982396547 994456923 672547158 765415340 945568952 996304852 999508250 999612001 238794768 674781483 291718914 858839398 128919503 867605309 335242868 394559625 364759040 579318257 500398967 876115929 896374617 983562628 110033431 536534769 389627534 817025407 629471271 862779484 748791459 805941666 532244798 725257750 946437642 955965205 876207278 878619021 207214249 535981867 264360278 496605719 786939229 819784307 629888958 991095238 134552235 480089758 693011093 932188479 971690130 991821128 310019069 350080918 799459531 933691737 374943365 997271529 642326089 988824856 923229252 930385280 224279831 884401466 945191563 970446177 269766903 561300849 865399161 978425264 120554057 938495687 44811643 177167103 916768676 950852958 419882100 688699983 218839706 271481573 656178387 946821888 78410692 385865452 968734234 971096610 491830513 832046117 97934970 832866351 515486112 684538535 920477791 977026447 935058100 974831871 235860484 641249782 332072545 919514157 679241974 899929836 276133982 606029444 528821225 914098109 224904201 273907497 974861903 998949540 973898806 998048973 412480356 759054152 351176524 932351665 517794300 564682808 555499188 874201439 862264242 959602848 639463116 726207274 437526707 945066507 287553841 356457583 126777536 775887585 782331319 843809825 39728674 217644951 47331156 368735285 464586922 793045080 285470696 512827292 320115025 776017964 752025392 837259082 211988021 289728029 729963860 763352466 394077069 649767284 464387287 864100657 71978607 325552534 967438392 989627696 395376671 737788260 347521995 876068829 471619312 483575784 103492779 160655862 407708611 922589164 979612613 983268913 782434870 999205047 642039853 777653306 361582198 934241679 802502065 893335053 636481778 677786837 285602645 401285630 546089969 989862730 8142435 35234538 917545016 977429607 296253748 464704298 686173119 727962599 421017042 558974082 546179993 999150197 971647141 978077844 135553765 502069929 144222408 876017056 914667683 983302611 905423911 993479125 446474536 859426427 170359154 697509503 122574737 629300063 271855051 738452435 682413473 993766867 64909896 359096956 72655056 334935972 510216824 848522414 67805016 178774730 43792822 634183128 341530380 882191603 197593840 303378389 343240986 675930961 476278072 514215034 838601309 892734763 987523122 987720676 713366179 735444637 695516422 722709957 758617875 962749984 586366188 768458233 37272336 594592263 222425699 459267274 463749675 583110545 522815327 880735219 224579344 913545024 451803629 454105980 495006080 988415759 527965652 746251909 19057141 980886883 204303825 755467869 277522851 297074390 160383356 458408839 303068719 541306102 483487379 731837236 928986549 932642362 333052380 848461606 909429879 989738634 745786668 915024229 6504679 46385422 301672142 400163077 127733043 675004343 167363269 653491908 717066493 913286178 310854596 663151512 892789658 909271640 975324920 994389950 661998652 674769123 84035015 775262115 56974322 447469805 322527845 437385297 121173427 542770169 604020570 959668259 370983557 844535680 21966076 488557064 997795132 999684179 141581065 289990157 723807940 964795718 185013097 988209316 184607779 366225964 587085124 613372202 240555174 614104773 14928969 713042926 356450058 976761759 534519087 542031026 572873737 936945592 149349234 295695321 764174113 869909221 305756102 470221701 934365189 956387960 500167981 689389113 392833980 493661017 205966502 217224713 129724289 566987641 458894349 902698086 257033678 269027129 469441319 726650354 97357574 856773371 323517234 361749129 750986320 813759871 128734146 570014227 529219454 699130691 726554925 903202739 839746863 928275964 600194947 755703122 143383468 851557450 810883298 981463064 70321642 145406471 638773247 886233132 204745239 455369176 736038182 746722257 326957955 465473003 241286067 633440609 534395739 650772772 263020546 922965355 814824725 892357230 183155010 413468986 385751348 611366668 597635054 888235571 230956570 503495328 536746076 630041973 344499925 484824300 26672332 177343467 310114808 900460665 879061930 986376428 810172344 851674723 496524622 859568816 693970154 720882788 395581580 852276971 999895237 999956975 374817272 753255994 115739175 718559316 106838859 729697178 468048527 586247160 834063766 915962563 468790465 933077791 352167355 426722451 324182710 497438356 68556872 759971836 946611841 979717449 638507203 674629057 803254459 994559178 710711992 942079564 758339791 919513678 823166318 893749043 476076632 881012628 346871574 584216568 323361268 806106401 87878864 352741750 785083711 814374628 948535195 950344564 344333258 413152155 662178111 744287336 27043852 443598800 705781966 712000411 935439699 997313087 838095560 975077608 607152384 877943305 767745768 769758601 998697920 999939909 75527573 439479526 996089751 997427842 268333932 714587886 949614141 995329764 844821254 884464015 902218670 944390633 145968992 486291453 679363825 681251979 947938353 958678321 209574737 532715135 127473606 365014392 707726846 842963410 213658013 835487044 296020927 401580418 658976776 717195647 759201887 935203774 514892290 609549718 278503256 702160822 807762295 997901169 493259331 959842967 674626893 955527957 419810703 950938613 31089365 77966176 619580972 797478629 85559381 676465871 134179663 672821814 849941921 959656710 800277743 916892761 916190941 931093300 187969034 707775660 603163627 923193853 151307727 635815999 851305095 914014173 397825552 742635505 357005864 469762676 235304765 893157891 201995927 864921501 940163083 968744183 544309770 727893734 410538048 487001730 23542953 204688778 971932844 992286229 544912073 606896915 998784300 999816809 505171388 598293192 461990878 733502085 45566571 204103671 778080164 781287523 120483656 965904773 114803885 357667413 262252019 709303065 860568301 984655478 14627777 467945241 968714410 985013308 373541485 426638526 575532265 586099640 532985889 566014981 986685801 996638471 855394707 911217417 297516506 467403772 127231428 585099739 925886127 984466327 955139196 974320826 69106014 622169032 523528988 830621571 547705257 606787889 578551335 675679515 549685035 661115299 964479099 974541305 198531905 814545072 950043704 983931856 33641859 687308071 449278269 907009346 825578400 905419917 733109845 897954748 782335205 785145550 363199549 467436825 344860553 817021039 6803187 878642116 753788821 946136768 486191640 652502516 714460816 877118018 7870695 288358637 652549688 794396784 18517341 90029110 164118553 252095629 899416265 962129887 870947597 936186936 133005293 575341070 329347798 443825464 78273287 233125104 778981167 941296567 361396200 649537096 591282942 593157165 654699935 995171965 969087380 987488504 106906965 314013786 823695905 908016942 272965661 849010540 845095035 900369675 333335752 518793878 755118470 786933151 860507085 960854636 705239567 765839260 821765499 850775320 438681413 726637606 608932097 720200820 828354443 897254726 892540079 946649098 574333453 761606292 464016949 684594116 495968976 893393804 974694176 986371900 507334794 800134337 716834088 880312857 754985146 828035221 908627887 914110423 139970558 501145070 899348063 980689260 728622288 942551615 684544391 956949213 851078937 852855578 694038691 836433988 836292689 965645140 498436943 827916320 100603976 818471720 639845843 849677361 74848078 806769208 219809963 873079094 709302359 837306544 747795624 985531872 138818908 758497440 446597559 767568046 124798767 598187364 222225972 501430791 792548980 813361335 982222572 993910882 306484060 370663260 264238344 674154433 420690812 915328922 212131797 692445971 474330683 919690526 305602076 659167829 545088534 984890499 112072468 457574065 495290757 847981649 964407111 986056855 179849373 957528092 395837741 785169477 857560515 962590320 938258129 987048103 336317030 711233297 704427794 980809228 30445312 737167619 25296168 419458270 758590096 956038917 166153956 716633344 974841427 985824250 246062832 492639315 743839263 840000335 363793169 722285435 413825385 712417195 412911534 590254034 679358140 781851474 980781519 991810895 513275160 827399006 981617987 998655206 366002792 862975345 528784645 854237274 809463536 929655304 308174180 920348018 379593564 671192922 329136213 674126128 241810680 849139456 169030505 643863046 306669240 353114038 953886057 969482078 200709477 996377463 154630264 624727736 977931503 997330132 406648258 684973333 336674368 743740062 926082364 952612647 252454288 447052552 11062876 98415205 484079010 785450322 161436302 858062030 561568395 570701373 427852045 953767496 746272750 873682461 307394196 522610382 636011275 866502797 879582096 979602192 245524774 686558221 515797233 787849990 271661662 676732758 161971435 309824853 15020795 84704728 669791312 812801162 439321646 557540314 493236910 720268326 607368508 699727114 726373738 831261785 620868197 823619903 886571909 949001800 364956252 458958856 747289706 874364194 551848285 963631853 219663685 990614912 553955346 912028100 184211306 476226744 603836577 857921475 653157563 851024317 735664416 786958952 654858468 983335551 624173514 631354046 619143816 656246361 881255879 990742044 301258506 687422479 549212088 747294155 241030020 809297854 758583299 873741546 173479877 549420502 815457063 918063780 825113126 939598431 674301374 972236633 145768614 372635485 868312179 986026683 242427830 812625610 10265983 567957601 704607713 783757416 245321675 279571754 682240024 792914179 351830352 605876205 691049767 825198729 664095380 754444266 146227694 580957442 711300816 732202229 120806225 767634740 281641523 564038001 550792947 923878898 564197391 879905809 269638896 490762724 350443030 498084067 325927315 934494111 538045713 641603026 956782030 991543218 844911651 993150732 873875626 916679184 695897895 926145487 321522198 970247307 613378019 683236166 252133392 401630419 664347730 765993431 347878292 708483468 232989576 645395952 958413159 961521829 127380334 655805269 371567528 658675154 472485668 512359735 829914779 900421272 365259694 928581527 274905336 557557776 415948753 454178813 601922643 735279533 76911794 439557336 150316748 967272223 505451926 736985941 616814850 771696559 647382912 945322993 253525769 956085677 477596624 986087289 892108167 902828499 197493113 906600002 859530677 887344927 505470181 535861517 378452347 988498418 544778643 578995273 937947643 944159813 217338225 408911240 863261921 977566539 475264105 781296932 511850149 881071849 966068144 976300513 107823158 504668326 48450266 660254652 275745807 810828804 895018203 983506440 133483070 152912010 997513851 999417843 944733850 962512778 62862976 987586563 269995713 615099130 566867669 638909939 600072620 997820646 206185306 267226265 815625998 902651350 553356669 661874715 81898981 986313384 634056727 715942831 460627294 950551174 376346096 752955087 151753934 238427474 413141199 817458830 993984771 995843560 859755538 954868063 402465062 587726716 879354428 916012106 401472166 444095209 981972722 991480846 693762646 809503856 968514055 992587402 972490109 975583123 844589993 935284740 1953915 942111619 425766787 667130645 631503154 784826192 65959247 779331595 872085146 978461095 5531316 179304019 357786726 429381478 480332820 607829968 897274890 931465344 960320452 990217428 338592741 760278069 790681004 801838427 475364124 647214825 664732793 934323294 20903282 164704282 882953025 941567619 477890625 492692845 360295901 438094969 686204940 816520137 494781388 750553440 217449068 808730640 756642191 977620782 869088034 908502833 183921599 628540452 58004725 672399862 902749112 977141990 392422806 854117069 295337185 773622587 905454796 927746648 983963506 993844740 815068981 994716045 722982762 857282847 363990983 901572737 814016131 877768795 678365855 820781648 331899273 894915243 421597188 754441173 394147863 691180929 40977286 238623861 610197673 849189295 783554313 847471867 367964350 423353292 68322139 139245111 575703520 891048784 106519096 236928971 492886069 980376657 893006542 896531242 130211721 969748337 351215602 546515233 984756994 991689826 840175605 868459935 167250229 653971978 491887438 938415564 324318456 491353436 43103361 338758041 5565572 325803463 909446362 922539971 234326193 771936001 188311758 277761152 590299050 980611590 612333459 721087933 752652589 856976350 187842423 733023531 300476437 679446283 731802463 820110488 938548337 952345352 889990882 962789954 227262214 791057898 331144650 595182553 649420793 867254399 825920840 854681496 973329961 976705259 967984458 972880798 186006696 436720969 796314769 817781977 101222854 930546190 655616684 963667600 345981839 928856210 663395648 842788646 513714459 899850760 510361972 634472891 890366136 928180257 446646551 533335901 600052851 709795542 533057103 728514444 758072902 862179947 755082790 906693896 923735439 968593009 135211035 868933753 762627654 999761418 743773726 930326543 966317426 990327109 530521950 575133835 568193710 706717023 631293549 878573665 749393812 858903379 654341475 744413600 38077874 534725874 663533588 836400069 521415169 794909584 104263765 392240579 255247787 615066277 81993027 753811426 275895375 546944548 224673462 614382190 312852521 719720425 901252706 961831230 694738809 906272256 152265754 961070574 760321080 842983357 52733491 340500929 459765853 579336351 302771651 744978929 336722599 489359067 16970119 678410761 528257715 910561173 728038542 941070598 145368790 203047583 47689972 803414467 258761483 983666408 455336631 763164435 300971032 448388611 345890161 676906250 345116727 443335735 665084915 889644125 328612222 849481932 276011822 969741004 603332957 864040142 266877203 410335726 210666582 258970919 799688457 816531579 424160185 648353342 121588107 483008130 429141949 578409021 409744862 444059585 709318239 923807270 189856017 338441065 499155630 628201872 69972002 100367445 333975931 422632917 876573169 998674200 118501671 207137959 903117010 962310518 910349300 939468316 398787059 844606715 823307644 858016953 1320158 866975250 399429009 789413700 874964176 983030207 95540729 206984724 646658648 957394338 341489192 848863383 210976580 884806290 143673395 534227599 999964452 999969657 548207211 985753646 158814324 829470801 456232801 474220122 243625148 428939489 287551246 766380870 560881676 991189272 461913967 878321461 519456926 860906666 307837268 945308687 79834712 642334076 648259049 737209269 222174476 582271703 134520613 329497146 741997948 879469590 286425957 864491289 25090102 385700859 81436034 224216416 706607 855141430 627223704 938831902 624872943 945692808 51113273 941722436 588434412 926115369 372995782 911863956 381619055 600296022 688765860 771048966 232304005 283922633 5021530 617627575 318239477 675623521 68207241 607189249 493406305 790686992 737408157 900680033 538682160 795749221 488154496 702147008 183067976 579961331 80266259 643676655 227873917 804791411 703327769 942662004 684727642 943814841 903813137 957473294 614013580 757853275 86843188 341518661 149449479 237978167 796355548 831419016 191364708 563405494 739088538 953267177 858120427 991758120 175454202 290436808 702766394 900536270 882023620 936180709 165409704 891499086 877711156 922093170 792236209 951471223 744248486 905056162 300557730 416262574 579199728 922495602 778855249 860419824 257557493 929269296 526048812 927559289 826705152 934844705 972142967 976299489 930492210 992154339 444930611 914176037 789333951 973553243 779845092 925294848 780017857 856198197 68654217 199656628 957611373 962411499 398305751 572226013 903598812 986537892 19184925 290592748 106954830 450185741 51827188 236247435 760194564 865408111 534242490 630204689 386336878 473155901 705380585 947320665 147387286 769073913 90478117 520053548 970039438 996245305 530024284 795274566 216491615 841175994 71235394 822328447 711981579 808338160 149534559 497542856 16627308 336127836 345175599 730735642 955761326 994941984 794657570 956824187 989851634 996782694 397087552 431889305 878473179 899718228 212296849 373675015 470173671 986431364 46554809 427974223 919607320 930328181 253036700 409668323 709913399 713218411 146925413 553924867 652646359 802413615 431259157 705409109 560896820 674511704 540746288 637592810 150371234 977003309 641888986 787893366 620398033 960447146 79607423 441319670 783154394 961871227 905519744 947041875 574090952 875317506 881977928 893595177 675956403 958986878 697661851 872190985 204308060 920185459 383273814 414754414 87865094 501792859 974934078 978956319 194293356 460768369 523399146 595510446 859720482 929083239 221846771 726215550 514295301 815635918 242800560 428860304 565997150 626747166 141467617 271609425 777212845 966643321 766828589 959751397 662808477 813774404 860865686 983230112 676261578 753434055 86359045 465119002 147934425 770748524 293463175 689480014 65798285 704854454 697535325 791852339 60447338 445662109 393536266 995408422 996228600 999389680 705222275 784185837 553738210 561148046 676149261 788815783 336548484 965091945 705582672 781886103 230939693 388157944 91752002 551472656 843039332 924993225 897563233 998535482 562822411 611541235 425459159 774523794 804671720 994763477 20459221 697101701 950752369 952488648 760899464 996208197 267290730 412621266 708311148 742875412 846841813 900716258 376324782 620171336 232348420 312260275 569997172 629249866 397175354 798354156 596386564 904266272 539935668 592776502 44225510 783556364 854362006 996151989 116298325 250640749 297629209 553453066 712902248 805738691 443413032 543912502 580750658 938391950 326425203 849817193 499414781 578233569 586108491 676583976 123541532 844673683 698337113 887311845 127951825 879301277 101848929 757462252 780071534 906519113 851223955 931702221 974363881 987116592 699134537 868691059 157974008 990088776 493332528 984849323 710115264 818149397 246582871 413457370 861150837 901345007 491427933 790883285 498793583 658826055 749157226 775208794 34666981 719617916 925035023 928106564 264359631 621367648 308215462 562021095 676572727 738892463 588286638 814501193 254469262 598653505 587681018 800051767 24286700 869048148 463717104 473744534 354861333 506808236 454825972 670849312 890503269 896814885 166047747 911810793 666769988 758472591 130078297 531042448 257387288 259616717 189328264 585414792 386790964 572063257 627892733 862479950 202391715 527321464 623191171 645392628 380220214 457207052 985158969 999218613 176720169 862271030 515319144 817022602 113237327 798444854 248799244 273191203 620417891 788780321 253509050 851287896 174610289 409029061 569276808 734897178 443561456 773149897 422167159 899958907 808026510 919595203 155521488 855714058 172906405 461271306 868399345 984217713 164885677 214299958 338785884 649524569 396497915 545457507 96482337 965215079 877162093 948722258 572432525 900762203 851464596 992239087 271686215 694396828 357266564 713556933 958623543 985058312 18642494 828795916 492327527 953882327 62257134 856003003 576128894 728031261 266057430 411554970 718248445 956585470 114176050 814027444 870177878 877783556 306779817 868045220 828632340 855485668 114882541 547397483 857240414 961105113 284962830 377971132 330921422 460210202 484613775 847897062 182279166 995918148 785799387 908352186 292732640 370868911 606343870 768144991 814352696 863649134 708417822 956981948 768963517 879263461 474900564 573733316 161768159 914963008 379828859 731025286 209481649 290378337 12837281 104289459 196251740 550111185 9933813 112342133 553655620 822040349 911236757 978255827 193280075 455723732 662648149 850044050 768415441 979540808 433960874 438997337 241010723 314244593 454083243 454228468 611768430 925844459 811495784 975373806 143529763 523674368 635799429 691353441 765907265 932281565 972814367 991372413 747659431 881228878 297465396 632423657 474256230 720873248 604939784 624097605 833804452 962741011 732468352 936435410 876907910 923242263 526182002 912135581 871210345 959068958 522646091 628571225 281160201 943977501 988690260 992914293 630313117 969962170 494919572 682945490 796080494 891511019 292490363 305329304 792869836 898562110 437423776 917918657 374796347 961500145 915654219 986517643 13052584 551005224 826287717 834340820 440979044 491398728 316229169 356549538 291798514 628874079 449645409 934287902 306284711 615414378 757509157 939583592 332848355 721826263 35038998 712923868 89162253 438830443 795229753 908192625 822040027 831217098 857615678 966050547 652205664 857340833 407832538 865070629 589744304 860406769 1622777 757316098 609008471 804331056 414237621 675339734 671684750 836960150 755075286 946362741 617442007 619047311 910302227 948212794 660070823 794181549 106588088 505157824 613943304 720687819 2083105 898888747 840742243 921057217 145340250 192624191 421194193 513690511 188932188 863836122 642741837 838789787 505848647 755417971 279110673 679768873 393341772 896981922 444481595 536512202 811047613 893125113 658800426 764412028 671502374 977816593 352560357 605506022 754730387 969275247 618125634 986095609 906834438 920591911 88177759 392204228 856440096 875818665 310060514 895627019 575131532 794192319 812633418 884767595 550530726 749912777 367739195 748838512 617566097 766495366 726548566 970961981 232132351 561838290 166096802 777463912 497007629 529269833 93426083 698697289 993081894 996927989 229744418 486791867 438922804 579083984 798606321 814873574 473228493 844333442 880013742 921357442 617945816 756265500 327207831 669974020 229221701 540212630 776830058 939321847 425845599 662769006 133266512 773686547 463811973 574998823 746248271 948440481 237744141 410249554 33257368 823812090 46769254 329489335 799662702 830395730 539239725 660780127 194090336 842925545 376674868 460461869 355224759 467884085 61901919 534042788 282681648 362216265 338777854 462505143 278828190 956741183 371618988 418662254 556980618 978332059 379624623 673579373 799406248 812242145 352548154 598506039 196963794 509486152 763784738 990681149 444807091 591088895 770873427 941687856 448359801 896552108 514070264 693592927 67415838 619237568 802986007 885532498 32575028 43753300 740463811 852132713 68549699 174108846 832172395 857510763 710230133 818099466 926738933 975694408 413148312 844307904 163517364 756046031 378179343 834267482 509369215 703491579 366939387 887100063 906776686 946167204 176178553 787621181 927040747 954242853 417933882 589110672 752981970 875011121 560733395 792601104 128059409 259946095 166353859 320497277 14672593 881814281 431074704 915285290 591301762 746070744 950921919 977027790 882440087 911510043 256868644 792242786 779778758 936498051 915149269 921020975 759240265 763827763 925920097 991252221 370862492 702413433 14188925 28720088 913590305 952202087 771125867 932797529 58512505 207047763 85598773 263047948 105237985 488036778 973758089 995679566 820190859 905416303 500410397 821438065 380892462 596809727 112084614 559914073 581095727 989308511 361020146 538498398 68218255 736184487 811952970 991173929 52563184 979729485 349542869 940497267 247248210 380388205 527593208 652267190 332301648 404440974 395837315 842725039 545937870 577811359 633806150 766149333 90376365 104579942 46344786 835453306 99069653 290082433 779101574 784517616 621701206 958431512 229975575 584312119 787485767 879813814 374558512 733170045 509745799 554518981 770900568 785497960 322149458 352880386 386156108 667010658 125063454 785152068 600192766 868514033 245735384 274786106 128691421 322319176 151897906 543666255 865941894 996820718 162889614 277891911 912355824 983729298 12642376 200002977 513420895 762009850 869095033 939419790 982876134 983828073 622880723 782122968 692790251 723184773 111724027 488877928 551228222 745347215 651465041 944586168 613042262 819566501 726498667 993549648 201486083 967018178 166287957 496426702 723813316 847265095 629546777 708913636 182684656 582261024 450217559 994091300 808804843 826099154 854240186 975874157 201673935 658628020 591604503 846928856 717559683 865353777 535773550 563572136 170657801 342856705 503329046 945118138 15885939 725356628 395178671 663730180 929949433 972557481 741373717 956816610 202959380 677088055 371294400 477155712 246631732 687500145 894392384 923150739 236255166 587902183 648434226 703031388 241324813 633962514 222284962 593375186 694064531 725797619 814997809 847193659 63951817 302126433 659861564 872216607 747487365 786939844 462674187 947216068 535276299 695199271 427489711 738268204 173968672 951830919 400096272 584257832 269852106 456170431 845518702 870374181 733157193 952334756 346672183 973775108 569488961 912730064 741004857 832636500 955711657 978479834 41786416 493358070 272162093 794931723 69436932 222695046 51546173 468913173 911111514 950494443 169471732 804213955 984794288 990391866 833448235 868203517 914504501 922943910 524155187 961907373 843674592 892376498 556250894 616387909 35640416 484313569 42017385 716585685 458041084 943528860 802539696 957791734 30416828 450689974 235416570 603335701 593413502 668251251 352852621 935766968 819835737 964840192 615697520 829600597 201562061 945016815 221996057 976315098 567008441 813384815 417644646 882660103 440138553 808175885 973756388 975771786 688868554 949375978 512705492 625627330 886697793 923176472 303169094 602596501 978562666 998466868 93667455 526523842 622657046 927405468 922620889 947572380 898012343 966853447 607192467 678021080 132398564 180999023 74532572 675200394 170835216 344395491 586134092 740748084 278331561 723162017 393099472 818771856 373690629 489239927 634934011 645923127 527857957 879141626 422034625 740303496 372667962 804656380 122934661 948886311 387068682 878593710 280917006 292376254 470952877 880912611 939633576 973623556 204729087 722382929 871618999 965932159 252499281 371900934 661651138 925628583 464530732 737852295 982287487 997649141 614591268 895903199 846586058 894102727 966922143 998727568 747532384 899021193 11628558 212893268 690260690 713840451 476993548 596532995 250422289 546766747 701237695 743496164 723692957 903318720 455552945 610995561 272558441 342150572 687878646 944330765 291046589 296671577 908291815 981025780 507895668 850857340 767751590 923567837 172643389 462816492 299374197 729122055 189267021 296444275 42503269 406883931 856503767 922450920 618348376 725713136 363998200 376149433 717601739 912833302 785204010 876388110 500048962 798701227 303054393 773077356 607358171 768213844 455862224 889248775 128530836 525629852 53530667 890776716 849857697 872788909 331735994 561197303 845696320 965269545 793683689 919783283 435500077 956912684 534478809 712193191 269188925 570472479 555254700 585342652 844348929 884030524 709650596 840009099 868453141 965312594 871093448 970607224 363604812 584313201 314306809 430530474 206801266 379349573 521065130 736324633 754543256 810767979 515678765 639061730 164277400 557088537 330386186 645341153 939886141 954631991 420447521 451395510 165214949 507130794 949101087 972019048 509643967 783205835 527415019 890145587 265747865 846648346 306439038 945136917 180867414 453096512 2900360 986856348 847931692 999476422 596981694 950367178 174153951 736466227 348132201 993247694 570922707 694217408 633464948 830446708 437770958 587151552 147629904 191663606 876534094 982740060 508374624 640200498 544478369 853433611 902424141 991089836 445230291 805423084 281231371 706392896 356130987 612658918 662992624 904211414 185464070 444496167 121134368 996292582 98809001 960767641 389361949 694551213 562178299 912179441 853967693 898814679 715380771 812809140 798055167 960736908 35793867 487451569 864763075 999592081 941486907 971275994 209675477 383698680 694871844 945546817 966041017 986738664 244788453 424861727 749408655 862291784 236442400 638477766 113726657 312896612 508172323 643734898 333392026 646542041 70357162 824532262 250573387 512555464 409855337 540331981 691557265 787712604 61863580 376882927 612689814 659345224 28210032 840658174 217483768 700246394 549943163 785679153 581332004 931902801 625163811 886126419 891446464 959789890 279396230 860671657 472543314 677904442 556494366 617616487 128841013 318675641 590523659 976516944 887359310 946067580 711329635 734115692 277726992 383342379 795311327 814396350 720026849 750836142 366436707 687676766 739041208 804954123 411298264 586945353 398042414 475638995 445519796 802686985 738956354 827174932 564792417 729282634 603802786 850357877 101829540 619804608 546739792 913231509 179198039 567299118 731222215 848851317 307167788 984231904 300277693 409219517 359235537 584741965 447579488 573015076 32462833 993434816 586320439 674646174 971514754 997551817 624574935 822471221 523884969 695016432 196003124 599000902 593729100 772636237 299384480 564052089 142119042 705291781 523990438 880973728 804550045 975053810 851233693 929083925 654741739 805135364 160621338 523569168 499351649 810700775 383128278 803413126 542844663 783488849 785973748 922483214 132685252 196283367 303979231 920714286 207325019 421611284 777344330 842037747 388418042 476444562 989736641 994057366 833442902 957211256 305364412 517839533 982846018 987168259 324532871 741721623 255083006 983440595 426428947 650707452 346938230 559497078 472150286 681904702 396748032 437795086 575919571 698659957 416676798 908263590 895744691 909570413 994879221 998572628 681056617 774910779 602598843 948251495 957952034 972171948 759865857 880454273 860601803 906371092 934349856 989251550 760226870 900599301 341229628 542776929 23283560 247964892 422683097 538081015 33712588 608806478 988044408 991089038 338429853 951466348 124965788 196726299 359947601 750594808 117127036 380308623 582531969 953566059 394216553 432928816 489684582 912939266 783680777 838920242 473989490 663669920 626409515 626728232 702641040 869215131 645596478 854848508 188116628 323340489 225807916 364262766 528238891 841850667 433445281 542262940 54323506 222976448 707606374 772237303 900556760 950999495 731828312 829605482 880033023 956123602 864328766 976288790 122652763 965599951 329531186 694483508 481292359 829335516 626565457 729658553 519629610 878827098 885272084 942829170 484787980 712751935 162386999 215460892 538040977 646200287 674723148 951046551 111454403 563079764 352849146 532647406 935243081 935368693 18316579 350042958 787150195 872114529 967793538 999229310 898312952 956054929 213060430 640200205 610707594 719462375 292483301 574337858 312040414 595848778 780106001 812632320 999327103 999847862 921031940 974305891 93636011 222251359 337345766 758284345 386588481 696635368 87295962 184081833 995065272 998507897 559160223 712382860 491810733 982720903 746255034 995895953 576416067 668917996 233187338 254004838 615538429 877246674 545130386 587320303 308739158 527786967 155756079 530647137 342171410 611419182 813613677 852659019 347080915 904882802 75869421 232208866 991975602 999919361 723826845 911088216 401862277 995371940 79323823 399274196 194750218 712152057 176712368 640516217 110151304 425181574 747998060 861768322 291904728 727361010 238044819 865554968 787800490 965270829 59564709 715142888 220716934 805560000 48657878 225965293 665403293 904663011 847349040 980324076 572095175 605450162 274178784 725671405 583142974 726789674 640854506 797121307 106560565 614183642 26235708 471066941 895902331 896693620 816843796 950021769 471862668 645487258 750976495 759323359 925077839 942065421 769294418 989990664 708907418 758489582 72970770 870042961 137604449 985805843 416250915 690831910 936648251 939931041 307383846 654527674 488320020 578925186 44705800 895038406 588472266 649133748 396107620 418247330 934802821 990911286 494278929 648790271 311896852 611382851 290358012 989179340 232115300 593470682 684298522 910388867 549309531 863770451 961621430 984444767 592100764 739174178 255986085 533535898 631643463 852300553 776497706 863906802 844090605 870629219 39097428 763259843 303638054 707492704 784123448 896283074 519481499 697427596 707412141 941263414 434039975 481622426 504833723 535651232 286985247 356618196 628356551 993575640 381897677 616645921 867142655 990166228 93862109 898863228 226820579 329995465 487745330 605207168 784228477 808011794 149576068 940764494 452508342 857605756 386580117 427372844 155456664 480823314 715075756 764842434 288631730 635023901 886627965 991659076 141976453 481782557 477201482 769986848 800940687 913769611 559197006 606768521 292072595 515561432 270270539 314710244 568981796 781736549 25910529 173573695 725566157 959849736 128516340 493176994 31014751 464912786 391820946 735891460 445695668 949294303 388913400 611239489 621796773 699780306 78957819 209217226 596990797 647525095 697710805 969298308 637954218 955347591 512887432 588030827 80009141 262930292 456332178 630471094 959865600 996865525 822100451 838530915 209979646 705710054 96355734 138068809 971525925 996487279 836252362 847463729 389651298 853527579 504439163 847192159 318675634 614047541 102590040 125925802 935705614 959291810 975120471 990656933 293321473 679492080 235716047 815867803 420730490 620188086 166356940 561824585 659233487 824018067 346073875 754785879 60111636 835222285 747416013 893740347 800676415 898146828 84184664 520001216 893419983 958842470 311688356 947496145 687690760 906650885 900145437 921686180 24943828 688407297 807856264 995405026 336411244 362934271 577340437 695900084 268852022 437030274 409118368 628420954 625303031 985666637 311347495 690031963 216940039 775155281 76479016 225308222 97577733 588603164 644886151 804077039 842787966 896399658 166950061 610722629 169418248 909807080 828261275 895203178 259873199 477551320 599657560 822478389 6265187 559886639 296715571 818152514 954362020 954675865 986646705 990193857 391278825 814866437 880820315 974497666 755222802 913018566 163850739 750596871 300194570 410364113 611252321 970083593 920918423 972117604 377262361 451654022 555558613 946500601 978958876 989955880 258043762 806557800 461147747 961050837 771530112 871502075 258105212 902793448 441790154 577947028 304047557 928594833 457729988 836711514 390901859 649964989 771666763 841092724 975660799 985877928 970634614 983050668 401921618 819384985 440333458 983994365 587585423 965289876 554335716 957007740 548929154 604798986 673799267 840914386 537534577 980041042 706701102 933903689 153297503 587601310 453306129 853386459 469670780 675133989 529381225 686338041 85590407 756965778 518319252 906261962 277880040 807500813 898578095 957720620 268162039 878351335 101161071 321065511 40516545 78668039 620757946 777090554 786222030 925785866 615368170 807187043 10990184 211363920 582118462 649257641 141857175 792124260 430088595 530885826 282708941 953135931 836250706 919902343 664690865 771491343 444188883 719730236 718523479 763805065 653365103 949037268 925642143 974406918 499090541 779484056 608293957 875712415 386417212 741786047 350245509 606857583 56615915 966744217 580604558 724321863 919762806 952017830 614573085 793570089 264735238 686065320 273419806 465708261 286349478 517687922 820588493 998367330 380507670 395530309 719539038 834916201 255209982 355783280 663617022 967980441 601228846 641705952 790226911 992140654 494889459 527887153 185215427 670408114 449085788 802401684 164694883 810096876 222578256 748263725 477183454 988723711 142340563 859387398 241856232 940511149 860822946 939370295 368590521 733300606 387854129 797383978 999218763 999863581 953178393 954796610 945112261 954746419 753148322 848671450 948245103 963970407 85748680 726868555 465531971 841645381 14351126 532329069 109021361 668670128 149609858 533594635 115679309 289912194 62256889 135066247 418267371 443615389 444842451 960570254 582257407 768093898 957081851 970278380 337889438 781014270 50962634 476219008 997115255 997839831 735530053 938853773 146149422 947100470 802416559 850076307 389137939 651975393 226195413 835676258 577470962 877615769 829615037 993807493 754788505 797970997 788495689 875504900 268247212 475678286 174591503 703589026 239291951 709598138 942781783 991640995 472921965 731307209 20539497 218984332 333627101 853233219 631275479 960798909 17738869 703017937 288664142 525469765 211179010 430729407 204265486 340079689 541611687 672869430 316511401 496863688 393381077 761532003 541625966 698356138 219546283 500369701 379737909 874253851 336328196 845919094 264388635 715456559 544539685 691755821 493415304 702481733 346861849 479545955 453646298 960685243 70647117 458072107 5299823 993249842 776458655 959893387 715370960 781985315 755230847 968065749 514520632 897369772 687805813 739001242 755099991 843586719 737075156 989824139 154091965 804870018 154653325 396153394 698460798 885258232 126554657 339147011 682259163 964387143 777845117 800906040 201647074 835021431 693965791 893187130 659961294 852087098 35292014 199422201 257120963 374176177 718186340 972672572 876861410 897141402 759425780 869974606 331153405 874055501 861172792 923695668 779675964 910142903 657031819 919104860 873023986 891964852 381814218 876465868 644141375 865139552 462078486 881637845 810119014 950650549 104685601 612890469 249777689 967316776 670210778 973353774 970829544 982322042 146953726 778881780 433308736 780565040 445337262 839679780 901147240 965628873 913868861 973197096 714627060 958484013 394677051 913557163 734982922 757643946 630527881 895329960 262475053 610048204 331163269 369696640 701960388 865283667 685966357 756823635 429324127 998952053 308348711 608461313 493003446 623576645 171469492 773062182 388272388 460341099 83858381 520344041 786836012 983578815 336453978 665323656 494951656 616132597 458804461 850115888 656964604 754316943 891416547 906885551 387483786 490898625 332143175 614782664 14054485 25745862 434182670 912554533 743467956 940940777 589026940 625702599 896747890 904899929 279273055 761280915 344053665 852084478 227313158 394513458 388829961 924350289 129909407 744953275 952259323 971963830 280481844 825218677 339052780 993765056 646561026 908294694 161500389 271896343 381966355 463068289 563599751 585049116 323261203 432844660 13835706 509993191 463123610 717986501 404088525 636314081 809442004 921582416 532649496 971190573 852130041 879895055 631178545 886626453 500680718 822047605 123602827 263186844 511441743 634029519 966803187 992282290 428570267 787818888 615149878 824981775 95521736 706305148 282880915 557445695 990009138 992108276 254498223 949502810 276604191 460424577 511845986 909527456 906651778 914800834 142448536 537070993 641895892 714497255 372466371 412211435 632308857 671701033 67524393 364197135 487673227 504164363 27367476 776137780 728558682 804289601 402685770 897857115 950468462 950907681 473706007 575689029 576748545 601174100 466202048 990380590 968979851 984248102 833425924 915769337 311653895 551982234 489324887 672849726 351543959 364603048 104431423 652043691 918628006 962062185 673516698 973731722 617085367 914585719 40478226 343513822 714018534 763059920 148372817 340417567 158644229 325509583 670375541 839553130 483193942 771684164 243426476 914855470 657850888 738620467 687992461 859562421 539309254 935661477 394949345 903982263 717745241 945382485 758164747 787720761 862574849 968518573 26988601 665097762 194011844 568697876 163924567 327875836 347727588 875441990 358551550 998465503 912901080 929759685 351187478 682352115 697918797 885017242 170805066 631385185 490099538 834617691 396485777 957156862 675992661 706165524 588473987 777340565 33794592 928696918 509067885 636649487 804650476 936166512 894119612 996592134 276110626 761812313 588844282 836881137 723437705 982499229 750935924 832304242 113551376 575585338 924696028 998204367 957221831 988627628 125777302 268354595 312084254 372978822 896237516 988856180 329511439 933526887 702737602 861508863 826179228 866397140 949045238 972482548 495064668 545917418 570011875 886509619 362553076 376754854 406320188 706319378 592795337 913647529 120666393 865072792 80928788 796660332 175507871 602773075 87594109 883361381 740598808 976436267 905513164 965198274 333644826 761690924 342439431 922760089 704810715 849491446 920859365 939958725 234382549 605780083 337815044 808574988 278619579 510548312 633231175 764091445 105521231 674115578 489004252 688608235 687855228 979636651 534885946 628566927 457830132 938982113 926488263 944998413 192277955 569503393 533788951 676328090 125223871 146688204 370472591 423463930 126102048 485130323 500759570 651434849 298367448 967720406 226882644 424159807 108741544 753170979 464592451 972902046 607367195 769518405 587219220 910063622 235666180 988769152 485960118 991090782 451504423 652469059 455807807 811972056 185191401 652330874 681676671 955766914 5140260 495990718 83531290 354337040 564126844 745068533 141619371 446539990 669412678 748393938 826783285 950193460 569410102 826060740 365098044 639693869 731078843 851608469 857219070 893398511 34632920 842065386 609661521 742300074 460745459 885254723 221171938 361163319 669185266 825826928 25203779 497449078 103777098 394154136 665101266 932433546 665500945 736390576 170272660 511522130 787957928 890473486 146787442 782334726 71680266 216262554 141970350 154039831 877490473 957046339 174042081 783492349 404820750 941160464 852394557 942067846 181574102 469691334 155461558 646826503 482812171 715646615 723240197 931384943 230400273 448709235 907946877 939730693 221529999 860931374 832574491 899864700 405998509 730643272 378758915 910958471 894163116 984764373 809610100 970440609 736144231 807465511 530443721 741134202 630988436 931818601 311682062 326849551 278340464 497940419 60812183 626370028 973977470 991633282 359296015 518392951 60628751 533829233 587548048 836058185 867277308 981356191 123715203 811021238 194888835 286806632 133435235 175675971 125115197 219347710 873327710 972277463 292105277 686010568 471049120 612906226 766891073 870702076 943305711 991409605 783306321 827291527 901176710 928711842 485243894 662026822 65108158 716404811 821311319 879316795 901717057 984399846 677885124 767305909 841159394 841295684 133273609 224375561 440768497 613699029 652736868 696006212 741783411 831944408 942130597 965065238 942909895 960421777 977769718 991994032 273014051 320427536 311348109 677293010 862022004 902096057 46974834 738831244 943110268 970374505 789799080 917377448 388006405 900646915 89183413 750835954 616968930 930840015 585280629 868804494 58767366 866796001 168841135 444390584 289746264 483054926 634175459 988180585 556160370 604087466 274304735 966374825 588560779 757038453 297136712 495213047 229966032 780988426 25306815 408506138 475124223 785585571 897966579 965829702 92542939 512161405 611567412 877444717 176110463 598621329 761438645 902816780 969334587 985659338 794493898 962430950 762453237 942488739 640405905 841565722 249727869 688597565 266138782 698359076 992857311 998849356 18382435 672210834 58183776 364076167 550573297 968126362 848262094 881205900 694387559 818542571 686513189 740375795 501340029 809735882 81989037 479191551 209676848 950795511 674325308 962468413 282094812 501844360 890674989 913624872 809479838 992021305 294263480 553903957 545955406 698201234 650272029 914173009 845706816 908623925 520035425 723042047 187838521 253580127 586376116 834609528 616140370 685358744 841431229 993377206 425352183 429108961 526200882 759376835 627298551 799990581 77040304 532442494 900823600 943068844 744784586 893262420 942477882 995550956 391886660 891901450 671414457 754199037 629781929 741554320 37898655 659355947 606700287 824334423 494386384 828049416 866861273 994543977 744423992 913410355 635378746 712352497 395666832 555582095 45769061 72328899 237353794 423302347 509074189 795180345 663326841 944614982 868823546 980619076 84678927 960507368 770984367 893444205 504590193 771132104 168719782 229230418 922223455 955521203 644478165 826972193 637614493 905116553 783913456 865926249 204540472 267514990 445846653 521003241 689876198 758080921 131352989 624828927 62996270 835059846 747073320 891325849 722063801 893718277 365253432 570159519 433107506 560793718 712453293 744350713 493556171 866929327 965407262 970368607 656357141 737607613 943091098 949173607 731861475 950996949 925616950 946142460 843866505 983878727 394277626 918064304 701492904 870122378 434123071 513979384 143497607 540229533 749974603 954033234 253854720 823307239 675990535 972071053 833230618 989542890 804146789 814517175 395519785 767771521 733082531 866195634 640682370 817486129 454689219 552044365 296173571 436620318 273837697 540655101 788551319 996598663 980031763 998972707 292562963 520659877 441135393 897399631 903980520 992135878 855108345 875465304 715116194 825162360 399303555 467964596 907553664 988900660 544370345 966420715 407110473 886508533 231726994 487248093 194842647 537616645 82885929 903401808 323416696 847366574 950372081 953530361 755420174 772680388 755335647 944224780 697548090 928945275 116590455 603116951 738542443 976979291 828341220 878631194 984962420 995900472 888393543 949878656 25847863 635403974 579144876 661540424 921049149 976217508 1926886 330677706 34470546 273908409 508839635 722797111 884744349 956412186 386128835 518922351 619226050 708925115 365569202 981726956 838173319 990051854 643502770 682823970 747575641 941039875 729014769 900430175 285464609 693029403 325623967 705014678 114526843 514903100 573178230 704477610 763259701 865177496 258882622 616501931 420895933 587401422 762880416 894818533 568531404 683261495 334211268 493185409 542508690 926727524 139925345 514474288 835983171 992121646 244643076 881850667 555984663 557629792 120125107 644786565 115624380 352764853 567511205 622337754 54960632 555187427 700511871 948091455 987525919 988103087 672019356 885580817 154241517 991189936 541641853 977182471 174458604 243831450 916814022 991138869 643692098 969676870 68447355 967587878 370709193 966912966 244535998 732899547 303140897 442837748 876345475 923545372 565176965 762307959 247289144 304402410 233895677 760599889 769638030 834769281 685854878 862732399 471166521 915290694 465690453 924087034 671436295 678190476 8217522 186934956 551164559 877370073 997901316 998345352 47141773 700797285 904041638 938535136 514291915 641563032 66162714 620218282 437368020 743299036 172796969 662560512 306009144 688604742 822203556 926804403 395171573 472167032 618589812 865576656 102912332 214776977 615280325 618509804 802459107 865533022 223544244 505504742 116747289 802057869 82066042 987394245 545727903 626113849 923682946 938049776 721725885 778945595 670099809 827478328 370382811 408965674 638844172 778764426 950518631 954985223 888349186 891242648 207646483 347312710 828251466 881160813 406448912 881123197 251159086 980923258 381125974 728184643 990138319 995316835 643884313 945261262 501322087 971656649 321359036 690475227 538749874 677225862 843992734 876155472 840338798 874655100 859911190 874401379 704167718 858264542 619678893 968871261 80907997 326130123 394354300 535746736 954938020 987133479 29053422 45680446 553863737 636875282 888437525 906869031 337966475 796261495 978953186 994447808 246995002 704941690 602585983 783630243 82048422 774746666 819273006 999694041 6242473 904708668 360915222 522383330 25871466 692984317 738996655 871210010 266675633 812610086 267104825 898404390 406565954 454072581 950880401 982355928 133059753 583494830 589164512 745258588 25767583 358270810 486403113 951170483 797472004 958249242 993197667 999441319 360852344 535686883 165320152 996415842 769630771 958500906 641098083 910505598 92052047 982179242 315303827 677380893 123830672 441616970 169349047 444156865 388595678 684342956 18681261 411657887 364528306 945918974 424665562 544861314 693076986 889463997 183526927 986419293 456034635 627068526 340512787 486589628 220601065 487818234 231069301 510505141 860999803 977773794 543181121 605687338 440305883 805464254 357182802 636151957 372452685 923159236 63151354 872520029 824347424 921198208 614701194 898466164 804070083 806237898 299404600 934576408 180451185 411748994 999925145 999925813 82726818 142513587 57640774 367622644 194130047 286303795 895060557 988814517 381181578 800846956 492349681 928322013 142604562 516921007 222952344 537722864 69791955 149826285 458259806 664003257 942928014 976395357 406909007 675852764 631046673 748034858 734703952 941984793 523713843 979477110 519848025 885647833 794067158 807435967 619197678 898182835 326646265 391809942 470746686 626072981 285440169 767728845 955314865 976027723 888123606 975834664 158273434 204668780 64073905 674112211 614515904 744570278 767834493 795021534 763908543 812581072 452349265 728354274 606840101 631340765 690847768 941279026 960077468 999567314 295815858 695162411 355389113 971618167 706937191 740075783 102105085 481510409 902247997 990559579 994093104 995400255 21321616 345515954 383185639 429839853 451227362 882034939 635957745 893340673 108460732 654255168 596906550 837481188 526109929 551091092 930432588 988932897 489339819 735743952 129155620 449845989 315146412 820410608 333079057 942041853 486802986 847569315 177206906 232087969 855444322 865987346 709096929 965111027 220322724 515900901 591095940 890241610 768683541 882532827 594204525 894488277 98669664 992211872 872788340 913562129 166072069 401408028 909797187 963324615 678090753 986431438 989656673 993110039 215988116 737774759 634101646 969583366 38366900 271442896 133475346 722026311 997745795 998814145 171066639 211241443 360564031 961941528 173240391 463141852 989955191 991769598 932438271 952514829 333772093 683066840 325175609 759696732 608367875 643146001 958597984 972639719 60020310 597214368 690912134 753632454 702070645 702711983 98485664 947061627 391269064 498945671 58870887 709313941 991370461 994983269 710683722 865768049 677681978 786800330 111647069 960827817 22997161 927502927 856894408 880121932 909280472 910274783 393452677 658900992 758908857 975875527 658280355 928771133 553187067 793581447 767945272 865930929 494774271 936184481 291640980 556032607 720540471 924263439 668474954 871292694 65368787 302533768 654187139 716830197 14342796 657557780 893015680 958790290 18702599 939317074 314858675 665111985 717345029 830804964 894625848 946690689 756392337 880149363 432034483 682281329 300033717 794535396 144118673 615477969 188424973 256960438 110033341 383632906 789262251 897409646 65328910 865128156 715690516 927525838 31525679 851200350 866674375 892383537 133502275 584246468 208722792 319002357 425374054 999013131 243123902 703262237 24292046 546330992 920376714 975430622 703141057 967574387 137110649 506571299 731874242 865013425 465611674 719470573 225798005 541426630 55439819 711383923 330441479 976864547 372899556 528864671 541817897 682041707 273619711 274157951 110168461 862123270 749674631 960351579 865597857 928945244 710648068 810808794 799872839 972712798 167089557 516237163 626015544 636752970 42455234 414123529 41602390 565720729 34919276 812530488 909322539 945484627 449247761 487962838 847096018 976692811 394869356 901459048 90414849 629022139 425722692 640661193 542659562 976351127 640928375 833258192 777694072 990139732 975976358 984938142 537167572 731827686 984184588 988829905 57654338 391385991 173115244 433790613 334052322 590240763 563463439 604521808 856475908 992686703 672851967 858290546 278084015 900244953 386166887 513590140 664003202 665769096 172986352 854019676 664545642 941430111 993442934 999702935 368341600 448554216 596112921 822645960 592367548 826312267 815988856 945429993 726038982 834064006 279302745 453856191 286596119 720982612 700003669 861613282 352743619 645703812 260036184 455951684 844042012 849974050 756231950 812186273 124908449 949124363 346103144 719256606 712643634 924903484 292176563 961391810 835778980 860289956 111201274 497032934 902585717 987625533 289191076 898121167 999559110 999813574 874712272 981960544 966006294 984465654 925069822 941710258 331461532 370864219 400871177 808217116 141380363 577061888 168472938 291602779 450779771 868571653 729300739 927789894 452667596 637630568 413470758 632601093 5133786 471863014 296067940 706127086 425389462 905348792 984556405 987628156 300588693 356929999 308425015 443184075 148379326 972958678 19172753 700758832 877389291 918720396 21992280 561263017 110203392 995089098 303755788 432183077 946996619 955927829 507650378 839727241 155331957 924961576 936159649 939146623 788234329 858460387 613734574 920512039 312939371 644008495 597155199 638356594 820579477 955795195 599841362 611068476 786024079 827640898 848161088 862710196 530262820 887790260 303744790 466801420 942637508 975769139 946070435 955382984 235510048 682651774 500813539 936641538 686710725 986994029 375200529 538084772 807631754 871437981 186511034 921437599 904995748 926341827 548658788 653392643 20419504 439695430 17893446 889034206 278569355 914213885 182906892 473830179 482277593 611642057 21370178 368246928 735999192 875525719 104878141 809040775 514112844 572216362 655299149 971349469 544345752 810965336 919724026 962430365 828281026 903964043 76873036 431877651 875832877 930501513 82845877 358692409 336475664 540171848 64444748 773169048 399643313 517708207 492165089 742577976 174807779 226230251 564719378 662679721 415278426 552383742 14402286 222305129 429892084 996536669 541098469 831284196 319555723 711195349 314020689 817521093 606670806 699932923 905573781 938834439 158876622 686395922 980602469 992204162 397547014 860809485 843879168 988836762 798178393 874386992 649267803 722128514 22692763 606288109 307965249 970325055 946424830 956959656 629152535 815346920 885786069 939422971 776644982 989827627 613405460 818989660 426990803 804747723 125184608 588588651 309272689 691509704 241375513 884639987 770854852 780300236 985624134 989981422 562381178 796997446 781708893 908025218 971446354 989090558 389610747 903049840 764384961 936323072 233531623 523047137 808502156 875131560 466698176 503838584 389255602 654755850 293349178 865216300 30530661 443569542 985692409 986768411 296859017 657319589 89715896 773471714 777503359 897107211 420789485 679083230 248092989 437659102 774605780 978600832 250566569 499269534 384856797 558422002 900241761 957111123 729795040 999595851 160346777 310437014 965208320 980831092 46236006 486074569 327601264 851760230 545089328 861694302 663344999 855004712 794447234 973537501 420236019 959726484 553235106 967109194 738135831 744430393 716266725 783366229 687462204 765218792 434543257 954521326 66874717 563444239 491816554 673828992 684514322 755855148 674078234 928321250 597214650 602420180 969631754 977880751 997904781 998390327 133972596 635072054 392488519 697088821 78404805 877808810 588568818 961563027 987311894 994302741 172224202 917117860 882645 574881537 277867477 342798377 938852034 968760650 557259190 587529121 155422726 732260973 930298893 984258376 608571236 886124217 750489517 922075668 830351147 891245902 610753325 908708603 344236458 827190428 960121596 971264212 246888706 585039732 165878306 853395079 204761840 754621976 735170986 772560441 936839236 989153355 365247722 694605261 634790021 968979700 337277945 363868747 728748457 884168425 555828939 879386409 4009199 688126198 137783323 657614083 850260508 993880625 929726265 963711382 181776534 386418950 743071423 929797612 924038479 971169380 300013434 595991690 285461145 766675939 91485994 179347504 83844779 643586933 949355114 965013871 200030755 896367217 125120743 162851466 208830953 771215563 469934197 684336854 683472635 809130433 309000022 720665949 351705938 955464537 651188503 940812923 346978392 806759507 964445410 985568670 832095831 850610985 3690175 453580635 175027722 232100292 131157112 933948871 519388500 779503601 208520684 649187901 503845987 701534153 230200087 496743388 777485706 909406603 297254983 666682216 874167411 883022067 963477755 997735379 96061896 500253351 172321524 741101424 266364121 322555746 602382586 676875609 46539326 746047183 75925244 844948133 127399461 666630319 823587308 949089279 789356131 803098183 113001802 870005076 303903188 971570369 909415353 924293105 143234332 459580773 541880227 978403335 847322036 940889188 601009828 998167449 874769506 908176397 56841211 912732907 911526799 922025750 912973654 962585680 14522436 818646730 610801945 681767399 218290485 345777207 924921710 965128730 49787830 964628104 761373434 826116645 966867457 972477202 152944704 528536022 537198195 615674915 342455069 549578099 68548708 466947569 789956773 943121900 750939572 897244891 443439891 932315943 53304037 924405220 607950978 992360967 837655601 911595385 250433419 556658798 152857051 457929983 608882891 745425123 430058054 909213144 117781280 437585402 973865808 994619488 666034791 813002327 127618160 293444054 369660905 498593921 182522701 331639048 122832814 205695443 437899781 976612995 250267908 350774484 455133746 801403790 796843968 876685702 910730715 935502987 885409534 921480265 745097159 944514159 452333479 561581278 61692019 535549209 499869052 710520000 330256801 420832799 554740221 650190990 185223694 316466602 398105803 996405966 583489441 972536666 816630279 978046553 321530900 768207198 873390870 937111806 644979385 684301095 254412245 988367031 882843871 882994220 8776858 928742376 829445839 976184759 577736987 649602882 22934843 262159250 769570803 822044798 230476265 779135143 858396495 922904739 304785712 685576875 415118068 595814164 423221490 869441563 114687218 927131905 94015825 572822187 262858249 725470894 870758072 985024986 252378798 946517203 276380487 672994800 572369523 668672189 698806195 869312003 340149826 724200545 686471529 974569291 220925764 586102242 449887752 640893119 233597456 880325259 813408472 891344373 868319084 963454897 907681955 995894646 589751270 744645424 998584055 999497033 287931763 803354983 278313462 561303176 435737337 992381811 255899503 265497609 383132921 718416816 461786588 688300057 745138710 878538353 623186992 691126855 977224401 978321314 248702061 697183576 287261001 442652002 479048384 561915719 153741483 763079447 776856529 981859248 806076328 952401856 536077993 647017070 95393664 211743683 872096627 935294202 101507037 991302417 288366435 889492970 713517411 997574354 645228261 899534346 448280417 487611396 496503227 908278222 558365920 811600516 945434544 961931104 862702611 931678293 630366745 956828520 868593629 914345325 663565684 709624297 197885306 710059870 508938336 801565541 823235608 928082564 458457991 735254283 472333312 919914733 464162426 698387939 407660517 833850553 274716939 634043973 605834045 732096629 781268383 928484159 877286758 905777666 801604513 828918622 891779103 938538816 419895999 428559258 689693965 981615848 278782969 763239870 959689483 987809213 103963837 335057808 661713925 800518619 936283235 961312062 828249411 944271089 550495846 904490454 32431677 224404981 42277906 856601331 849916807 889186605 282661461 389574827 783309105 999230930 368103988 543218068 949258739 985361979 637599854 814068654 806250817 830052963 561703729 605078777 505433073 840483205 443222605 494290570 949124184 956988297 899464405 947824633 661533453 923354939 659329091 680637687 484666835 646647561 676159719 976955852 323408690 856347662 102743671 707697773 9271021 470349745 942922643 955176887 884742432 968440427 246443368 846269166 781016543 889047024 192197718 439320298 375741358 536189601 867398539 893801228 515118404 537495235 977597710 995948238 302652891 419321214 954314615 956033403 209562212 398583807 216083917 661244651 379510909 422643132 81460930 374164282 834875044 888832438 499779934 585627121 94564466 246075811 832585 289530324 391750529 866093850 902209580 978164168 886557067 987521556 893308979 935248712 618936248 685810233 189041528 627351361 85135886 838494179 265862127 468449559 380118298 425892140 116176225 208939201 252781745 596288012 826281050 977465286 150928616 227998791 595734670 953259977 916686917 928628876 327509542 343760203 354725494 838746930 172521985 314944705 98661286 801685805 829561265 935553405 905788369 982006296 317739835 808885077 656990558 790373579 427436047 612154650 52583733 740465562 778187779 980553379 68192156 667681078 719085888 889953117 30330783 413756315 680724403 902564725 650599530 950864698 794174473 997004089 489269349 782892341 957845405 981579482 411324259 512016024 627003761 851560119 3666194 622073468 74247005 685384151 124465855 297484291 683419889 683592304 162227806 685205973 717905784 764933620 226556284 370061860 113495106 325547002 795910039 820097827 925980052 954886136 293091960 835266542 177200284 590489741 789457569 802135525 768232673 825649931 220934337 309776243 744695313 762837737 48979238 884755271 812180646 907551119 122762657 809646186 422781315 469260927 64771158 794276275 468260354 884039334 496599968 969993054 391347234 391597690 926678473 950152719 623642845 880619171 217306874 244143119 506816368 919058228 122522560 160858790 75589684 186701617 281642402 719804354 585433108 795768090 296769987 420181268 406718379 458202207 950961909 978107780 146510142 810111794 488582141 819174815 888180050 889810388 63039226 453048254 198422943 782395038 642106985 911241643 277344631 730706866 163649043 408405791 587857977 713220283 698441737 834796689 778956377 878674107 99597825 747897323 388879309 964777322 541081303 686577706 985103326 992001046 92222395 508259755 732613545 958894990 618985181 622995301 653734527 890609479 739995645 789868489 827431014 855868396 665498097 810162846 881402644 974740572 558493641 755296692 213309561 813367096 810345427 862901018 657633119 685660655 534483897 713360477 347600551 571947727 225808816 567737983 198256708 558205262 473580126 739632543 692451226 712802032 470477334 943993471 731004269 758084817 172926252 218061195 513756204 685323748 737239313 914802881 176876035 813357383 265446428 793697235 918493937 919464920 607257103 982266504 541086352 748278707 852559516 887559991 838931378 920180213 127257922 819343327 207915340 382095417 767628209 812601088 486225880 920798350 682731251 727328397 19548071 832855464 16176456 808722075 113320757 821141141 49455237 192570220 363407483 586236157 442867534 608883754 282342051 686018690 486866228 998972568 418838994 624024588 642630042 952414905 130293763 437405853 217965543 736036631 612467958 655233561 83585240 901360423 458890496 703637439 896792547 949186687 304489258 567567030 272172308 961728793 282909406 540100681 591940945 756787980 270409216 897865817 145997078 960083426 660928109 755333261 347219965 978411634 322877022 683555733 912825453 931247640 294344185 783982362 116561240 251447732 978284732 979790572 358474100 996042625 406522332 496895491 50376907 103480437 750449536 972275790 803467269 907481440 541595906 548615507 525734875 805521506 541303998 929746324 719522740 949574983 279832975 974770097 695710727 731312283 999800428 999857514 799988286 990743514 87391904 228437840 15444538 644679935 371583953 798327486 898239983 986847995 513121575 657994847 385347167 771709943 753060870 762317316 234834240 364369436 14647783 551683460 254616342 811882283 113439636 504652534 264506938 281399146 599640109 738588003 11767251 340986409 706749206 787388654 451765059 910844258 877574080 932372954 551259038 703341580 67090028 580751062 791104023 825735323 348659090 424409515 489389613 867463975 529780791 842514280 537696328 563300744 344782290 415665009 357222380 880381112 844480973 926673027 262560861 824369761 320703686 732928840 907369396 938665794 249370431 513580549 262418642 717691640 998696181 999759522 651964673 880462012 287409570 800487647 605765817 764901704 687085356 697910678 900850188 983134847 832564420 971398156 412554254 692420038 535095884 750570305 189684745 518345241 918701989 988875366 634938358 984043435 561536083 668290293 189837996 352044556 778553647 988408519 567750930 789759099 787957844 952754377 297834414 604158583 487424434 874548027 731613674 793230478 17951459 420246727 234446637 543386907 72048773 603422781 431109758 996048531 713447307 942742357 424183027 796025514 92433704 873739505 438904770 751823352 50893270 781943974 65167299 452565689 153853831 725698854 241425197 273946164 469378110 617224095 77895344 568630925 170558160 754309126 953669771 958624662 317206346 932194449 360291816 830633601 570603571 961399616 604346206 955256643 200991039 528218200 969352677 991094076 213794129 527880047 32255565 358022721 207509975 424462526 146655670 544415870 810363802 946254092 560316221 718974012 213879807 834921399 941631581 963439533 623055932 845365390 155065245 874556691 140540494 984048964 304622877 693300160 518302443 567415691 481609330 953358774 95823577 223247085 599772639 869762046 163985538 321350805 126605817 799574549 449376069 668234694 494746807 711147290 145780001 695710209 647435165 746756557 946311955 947667419 19562177 572633288 91269542 119040641 964461153 977210482 698207114 983685091 650968337 774163924 813965823 942478611 911428598 951581403 429240351 836967703 759519606 808675801 316986330 386354573 368729975 752190770 132431701 824573821 592425625 799852440 32647233 663641296 669270987 998433706 196655403 558067788 300401206 764335510 993800822 998840306 939992643 956142230 680464354 859054164 462205568 767176705 751796019 898558079 696527426 752348202 404278158 715304013 712519610 823076562 838438823 849564801 934864911 992801609 542591615 857883151 728621797 803563239 18651320 161370029 117562151 821127667 771611182 816525087 839373350 897417498 222585758 319730658 561218269 701263715 275746151 575872135 912097649 985394295 665069686 723407817 509357236 827766689 548388431 692699499 550271498 866337622 405631814 772474897 62577791 409900755 538815682 700952636 29521221 850178094 560376215 705533642 168698341 926307498 792412872 812240615 867085060 892283384 919395948 922278021 210795261 582795048 318945061 578962330 491458426 781580963 971051569 993603141 685210007 893425294 50234018 439133605 208495929 797018139 283074607 597759847 973862565 993620316 797459656 916185435 424339300 643610156 480062731 576994536 68759194 927371404 73897952 528975779 96287040 101316713 240417924 264163476 734676817 968091819 285632621 362857848 869103692 989124782 473695407 623662306 991637169 993392016 239626322 871546847 964878127 994161607 71289179 417213790 774068250 973495569 129844528 752280980 151287065 221315918 294908664 995116711 347465806 601324289 435311991 539031642 889137536 989510360 824838756 927690085 51647592 405262655 980179716 995818336 781893742 991763053 786806229 788966659 108574569 755528165 702955172 840022203 419192866 647136472 326455811 813438661 475883569 742809386 288970287 450891712 387863181 725060510 365529841 455743401 361825260 403557492 995196469 998467288 714937975 843471277 636606822 773046254 876399009 981913441 468919622 796229272 979537055 994560537 905036022 978842913 776104392 891545152 69027987 546977141 677488661 746159538 605319514 741671465 320856236 870653324 461723719 919964562 745939596 812751996 122517177 956363777 308752475 945606214 798216337 825503188 758748767 759839714 952382731 997152137 517727222 811026752 617652931 966353827 925934282 936897444 540918412 712983677 232394941 917121600 758749439 817838420 543330019 933797223 575876474 667202074 183998953 805035860 571983441 576216586 654794680 954237805 769602030 933406056 13337156 791686265 967561710 987036665 350371916 950107291 742104808 912066048 641710358 676162615 230394328 852797843 855865789 871588810 112615778 737931480 964523827 983194202 786397878 996515217 921478697 986725002 269774937 987484813 338614499 541777558 524600409 963552199 640436803 782509786 332134180 824479985 49890389 837582482 577505879 588228122 752699654 899648525 81322687 777678448 208352471 481731838 130917314 827042138 33166007 650070731 537703222 942233732 295963877 637832818 219492230 673743085 697319145 890170664 186418113 492603098 849860187 922081630 652181665 789776423 507844524 904899953 279115052 605068947 140394405 845474414 688581870 945240474 1161604 614430657 971707907 978478206 462338688 637122020 104480320 940613476 55665100 683939992 945722821 991671450 344812415 578535045 344062262 610068344 958709174 975671302 370355305 445247475 256385341 520577753 320975988 683444468 624011766 831272020 508611262 513880582 260059982 644475211 891142819 968775179 710087920 757148676 835356765 981271955 581240052 867041923 770177969 845128176 318934355 584897376 218850114 704274161 181323244 216776674 897745610 955613519 549957419 736692834 667986407 847029309 991233993 999160974 600341725 956333781 187525577 565134967 171500794 997963555 615749561 713548659 254594500 454397170 437011543 589767609 555092639 705662271 929406939 985638829 707854044 912123999 746496076 801924111 338711780 697605266 226739353 819986027 417343363 645042771 72503735 372700800 522822019 964896446 707342212 728020540 318263021 875738409 980087285 992939390 505858435 888478872 350121138 552640340 596867668 619270179 797805130 893462911 232684022 489754143 868548701 946862309 898601318 932025976 804080770 842699443 531829414 757141155 682442013 897005665 614219471 775257400 616779356 878909501 443878861 616934619 411544817 642601868 227711256 594012896 366832713 937559269 924226264 952035434 277240704 969855653 952476355 959422475 563128914 942475605 623600548 745399248 943765106 962929494 316369152 946122684 1671229 364381269 428349707 498247293 381827335 473727348 893354188 940304791 913331131 939850869 395034933 445205582 836663483 915883637 161278378 865690326 556095598 955119809 598835804 722359835 181059818 281915709 814204803 964593178 952627881 995390530 277092303 413407823 545725809 925028531 909723108 928467849 709447901 753773171 30955300 890686715 43739782 903310649 231155895 241513858 325851483 772530698 1083230 668944466 361377545 576969146 400242727 579184570 675486448 871005749 74374314 758429619 951427227 984663511 824163043 832970135 199779787 706992154 424177465 922704757 254062586 288405191 264352668 665871553 665675830 887838720 940410784 967230173 936922998 979148834 824473315 880358408 43824767 370349718 173830675 645848887 508644029 957361040 486316636 832734882 85959310 653046930 962608139 975278260 448260570 460189721 875211042 980953549 188477122 832432768 973021508 996202248 594700509 778419103 475222734 588329451 247147220 817338160 912486473 975287193 16288238 173753675 402675959 726910603 860009175 975723824 697540532 891682186 417695168 731636791 412641370 988901923 265186723 979068698 480655532 915359335 447664277 512574519 185260320 858372154 688821164 832639609 475710908 814264538 194987596 369318574 580232290 908860843 673157146 937581648 649758812 993386158 715154194 898036393 7832025 26753615 655357812 691313093 502601257 533256081 988931863 996776213 973029390 975958708 698035396 773420376 735978128 806148866 412687698 451074637 805190741 976686366 836221843 932059783 474851410 626250647 88286286 587126817 32111620 357974454 700756126 883361950 907180433 969701880 609098428 965598280 416934243 966472992 354587955 830945033 870459969 900730623 411964154 571986508 801303138 808564311 483526488 954922995 597311122 729554646 963131502 973389574 387631047 704941044 152308434 786490711 563798980 705058486 70578811 739919594 630891238 957239778 610457702 621239920 637087710 739166439 843710869 856413379 918019075 973904787 346284635 375726488 595808161 730287177 490461075 748099957 61255669 881176907 99603395 489397516 291295751 299434571 264679600 852571382 681262383 898505918 489938052 802569690 160463235 217879583 847334882 984841576 254025359 500321565 983455163 999609459 872811824 966131683 555013019 993919058 871801409 951816786 119229940 234860435 118327166 831527656 366094630 907757089 917895684 968431906 195787869 352390589 339810977 781265304 271698928 652915824 119486632 238680138 833824531 868736403 178201670 418976327 658534238 703438001 6764041 720510071 815762832 816339218 194247829 311148571 190662775 954064061 839001075 971283267 731000186 839832025 800700283 958808985 21220615 488922421 158635056 278550199 885036177 978207585 631804843 858292342 191655164 864532658 67317242 120658187 167031450 399343426 659395642 741405661 47365289 281352903 285603762 870349212 469310189 733533438 749159024 880846596 992654618 994257054 146885345 385465177 647733270 785640167 723898956 857720173 682025031 964720287 95187430 106123420 93128421 805155845 3050436 303562013 308158896 980032776 923828236 999638956 479568222 744052279 961091288 975720208 768808964 857035612 999419217 999435160 998208868 998883809 123139387 930954713 359128981 949749359 36181397 306635557 765805831 818671679 601954602 855652517 242995255 869687763 542658858 699961951 15330259 27361575 520869344 578934212 876397410 972756261 907135069 955577120 561630411 846367201 956479788 992396366 747671812 914759198 720354734 784566633 192573785 359572296 547981323 870617828 35908461 963917307 591802290 932145534 22678430 594738664 387174773 420687713 137317851 341102163 447243638 761442237 672992456 854059393 75439313 684705854 96911250 99325807 490181225 784704692 712783657 871492177 467211142 691635095 984456731 985813776 253667675 770628884 235496498 297939349 828799193 853646526 27924673 525715691 989818686 997666115 472733124 992246236 746964844 874349207 738263234 758489437 207651456 668254843 681278774 781589256 723163196 734309467 96374658 690390112 490274415 588356479 40019709 318165045 585607508 999290630 669408762 799751909 266460941 619427475 496784950 783777472 735714894 873414870 185589186 450719921 577435041 753900221 862518116 899224110 408889427 913055938 955659729 988773515 800265767 820652643 398610711 405112179 771994477 773732188 229437385 292712382 518956797 615737734 562065253 963249204 206954392 918467156 18211635 196986343 695477736 910891192 583511414 921414887 623483769 746886721 258691633 448595871 940323843 989918869 862552202 983282573 197181118 951633199 832246447 858421126 212511003 837985789 624190865 842673070 514214550 946410046 513925015 547899384 514475958 587769729 250241194 415468265 59774089 830589624 72033149 851057366 819970717 986858947 106605979 677269764 285322990 416826441 146242965 265493427 607269323 618125045 787122472 998594649 897576475 911951929 47742072 286551025 996343160 996642219 152542731 254978911 736891569 950341781 964220265 974170292 636420745 793151316 219806900 737575413 261110136 609108198 171769765 573342148 320574288 902284776 312491038 484980683 319984913 529838841 838918966 940416226 447747726 565549528 872783743 973228426 968678748 986022254 289263812 598346582 364818223 705823436 10440006 454168946 139170403 976994278 19943096 166334321 130333481 221766970 618628610 787477372 579165567 645827127 241782506 252616579 735030231 800239518 139396460 239486532 646691171 785564565 638041328 918229597 409301361 927178641 797707961 918430260 726658079 742429632 899543989 941226900 382594252 384800511 883151388 953677888 363250128 460645790 945644966 966030643 555653689 875992095 909469060 967206416 745359407 826498984 433430184 771712380 252730101 405160173 764428423 881071519 174147381 291791004 52539768 833868636 28039347 46210208 417611872 609240075 426660101 562784002 790346893 811235150 103243832 248446661 571118777 834217151 785693160 884595798 957615641 979162639 297528116 612452878 887633738 994345576 841442301 862800413 201016658 924572489 335674895 480593715 281415056 426882396 878456644 956372433 797307160 889400191 212494208 358036455 834628719 874942937 161765273 268368842 190154753 726354750 687799223 760742915 507265216 846104373 134139611 938631746 335004150 614710297 332884779 915651033 387571497 428746581 418808524 578034179 8162282 994123896 933434602 958164740 95293335 871481207 766000379 890831219 981697616 995973749 374532275 445461882 914119525 954963331 609500168 909439978 49469506 341031264 481250024 528583093 619049350 666614068 871607624 926360563 449355813 964979629 939717253 940855818 403370910 565752084 789830251 828695140 546286277 790791490 595678878 921032530 619522642 716705662 358863184 583294720 33471042 459125257 37562776 647309820 969290567 973271180 902709100 934503290 18907574 573647423 158172781 653928627 933650659 991799200 496378618 869164167 116021239 167697975 898336365 967822116 793863657 897897157 291053673 394213561 992996892 999265669 770711620 943105289 539362972 852711479 138013301 144718529 224902172 444528114 72487691 130045956 56702551 910200795 472332710 531344845 646224680 889892110 293070868 930423826 610086385 834466402 89666932 834249433 894845409 921325107 243851680 427235567 779856158 835818304 511806792 649891667 326529902 336757039 429921440 904984788 397870169 431670375 164179231 367310740 230557450 709251369 114167801 215421934 138730187 622104320 435496678 715063635 975961250 988260861 251072129 593032310 381364191 795521071 898934212 946955624 476094388 786566560 611748159 804912892 485802611 774353007 682875613 774349784 266241775 720414235 866428343 957695138 228387888 291467227 888694208 965561573 564032629 988083716 262946182 636363990 220533744 755293982 441939172 802951137 394056145 916736109 73595478 450234201 536308932 646810656 339265779 786987321 255915233 422774319 902916207 965407185 769423303 869881693 243101626 521172556 900323378 973777414 622931468 691399478 289150173 355015190 268723873 975487522 128454142 740439398 472983484 743769419 471792697 687184567 245072690 608064588 18826462 503237405 319896830 985758339 372090591 479240772 82341016 658528757 874834157 883800958 719317670 720227515 778570760 782260857 393186469 907137186 648815962 960745325 964892277 994005908 27671957 369975434 887351353 897638109 918932723 932797620 725867839 866635094 40931005 73513617 586878569 640200180 722755920 804610462 634348487 681356968 707533785 883770037 73308408 632816980 491988289 892059748 760582051 859610907 972618394 989428743 4731913 844351384 629231334 684210413 391535788 479405449 234054851 765260728 715914217 786677625 191821968 487105580 765937892 901234452 71659682 349430912 189823338 945143502 36701842 300003816 353554761 779381124 901741156 921941909 872287272 937572693 690447809 707296996 937270104 989276945 223154518 458458821 665190006 681920411 398265790 567152490 85066454 529675470 793242374 803929398 725105081 881598206 636263030 798077876 43039325 895720427 366682331 464264959 23952048 775514438 206466691 436175237 546437831 815518723 822952357 849326685 700232452 832584444 94228297 940509157 445756504 989723978 421389025 769451180 496531643 538254994 884763414 955370412 810942731 926854036 816426534 994043123 285153232 961581464 44532836 892280551 448871598 675393622 135719145 873744506 255668342 762464522 876383119 902346097 674717008 863682968 553034499 569853621 492480474 868812441 928451466 944307381 723786112 779871265 768855494 789716448 79840728 781462277 142343493 874706258 654599432 920251238 920067568 995630905 992153159 997270176 255868215 312268632 225275312 420655349 837432136 923996681 96915538 487843348 813258149 940229696 368113412 809846699 604085306 663693383 526784811 728433106 318371144 483416663 284346413 998671561 79454279 845828595 375702035 592793580 516337439 745716604 653634979 986858011 58165849 440653131 997721520 997859193 805725761 864167731 522393768 851217362 854267206 939151194 680271733 968646823 414926475 796283623 161368376 620109052 243669244 932239002 769122298 790425464 935590007 947875909 366224325 699375289 209345117 841067646 35248376 668076665 887209218 961137128 686546010 982940768 247664444 612136104 260132474 836243921 795086546 847559233 830409857 955881380 205582578 233876347 207785117 250869490 547825263 840421298 720591702 892524792 392219274 816316584 485767294 852577685 306128196 949828905 254758586 523128556 724459994 805766488 568820635 986119455 572375282 842991436 668632093 781236820 165339594 462332258 331257690 641059424 556501132 783768621 469554833 532076924 980268053 990521112 133374372 396273745 526056110 725932313 503184095 741131495 661143180 831228605 859808321 900024313 22863293 390800619 870346367 976271314 504793538 506259848 215742196 982411055 763746290 924151089 600642444 762755721 508331275 851074563 918178903 984195205 143339739 858238252 78351284 448860816 109165932 972647468 597949651 629235396 886873687 901131400 171008835 369848697 548094562 900021955 858226068 917225358 828074119 971102309 104925154 563489821 275018456 807992245 500335991 856312197 872305040 917357848 82044179 155842282 417530105 905024383 196836369 492380552 740992504 767404694 463632182 882135146 369537090 751732670 775404267 932634147 456058865 830243091 593698360 712531106 823535601 866333918 356570507 681748928 518895743 654115729 821003955 856174447 130534366 893013447 974385905 982356600 18887014 400752465 878630710 934243774 91489982 105787891 966780900 987104492 328973420 442149607 698850839 957312444 173768744 877105347 933324912 975098699 626101583 995540181 517727290 555768549 54176468 569899405 896180289 954227349 265132044 797925033 924283412 934629951 293499698 437498581 720687140 882155184 504486944 755796392 581351406 734166717 773103693 820931404 43237398 802354301 201264397 917511555 302782920 405740432 798017954 871919470 769532365 959143945 151415160 253887811 175358042 951031801 712110834 958719304 317930700 967544906 408184128 759421182 279797626 900054177 283720586 306107492 76542431 596260918 136979249 905708171 29465894 517729712 520051649 888149248 47074212 516723552 725282264 849644301 325281376 658436598 303717938 839948932 278192175 932912450 366950301 586324699 802595635 918661878 254251569 884347057 592029692 781210279 990651317 991605579 437853433 967498197 166517597 531205311 47066938 595634109 53093831 93027802 690913845 784981015 859944249 919861819 129964317 864862259 849305025 869439226 488532486 866446826 955892547 960086518 950922732 996404788 603555058 901333194 964775454 984098965 610750247 619120662 989696742 992397146 310987421 541704471 770689425 891530163 974612628 975220712 790309606 856962581 173786696 455376603 806020323 814001999 579202849 706651913 340118294 860831739 984402081 985752959 977205747 999195418 899071654 999511695 270156641 283182651 326617203 581342912 578550483 744254500 191841159 987841822 425113863 509577865 839868113 989902708 357478425 716656740 782294626 819498715 183027824 709302109 803789649 912572422 628256530 695187605 245940139 980743155 432528556 527742069 442647374 556570404 587321564 798172158 887639459 964084216 456992060 641821278 645043366 698852379 843586975 910246977 255461408 387959933 820441003 979372393 505028666 552687180 681515420 874430416 30497528 952530174 410606690 557530099 443190066 780241400 442903900 844695870 569999997 893010056 949068175 967192788 837728417 888671055 733668816 890777776 121004907 215784248 289143800 760096524 732827706 875097051 892650165 941303921 383223741 822796284 23018934 77815035 322414791 333447191 604216234 614975331 391515056 530991219 454581108 516065972 599743599 640031064 569374503 983607961 803358034 982866268 673315271 763690331 620601385 949045946 559296282 634443377 737136472 829351892 200406985 903433378 248079900 935939062 678055143 780846648 541943509 552807582 733344465 743830089 142199269 410466831 170272572 464466749 559255491 839293102 206410152 723015635 239825891 478404398 230869809 429475091 396079176 476613392 424442701 793716038 757349932 960174824 737462023 980833023 429131577 660490946 666084155 938568161 589169758 957126547 93696109 271139516 942679856 976044818 752482603 944806754 423439208 504203616 619914417 830222183 556876388 859137545 433547618 484042650 580592931 804751936 931726099 971398991 607588189 648817752 758353013 996962717 878022265 987309026 243184920 350980236 284362135 418111506 504522655 637955707 779245330 967299720 856306379 887800322 673390565 972084018 909931482 948465492 978423305 989520930 189652821 813328399 474717960 531770304 268043315 989846501 71045485 503722431 548723446 934227413 557704422 941264203 138860082 685884000 672851748 769729503 172073606 895929113 339250753 524757097 170413751 171308421 451677609 783437770 149266928 291481561 408368013 505622528 830300209 974202382 669204226 837578335 722976477 790907099 680324710 714258761 711420347 961023276 563239973 712642335 779889778 908636983 392146304 961432805 362491932 532132923 656801512 760708788 234108961 673345501 8486988 85738104 407496821 799802727 515073270 717509197 195216904 329871525 361465126 401095877 317342312 896952299 859577880 944025982 254130243 957261614 726655755 788913042 898233904 907944456 859001957 930012624 518646734 793823476 266705614 369347280 135694963 885046816 792803599 922958038 725622672 979880653 776562029 855520403 903987676 967662952 504903683 968217144 925093306 964066826 407184245 792236276 146613485 626343719 488614710 728995738 812997523 926223867 718826891 941747930 986434440 993444468 457425627 685435144 752272294 866795696 441191704 995179334 350752811 842986897 759858713 922161727 631718444 641191933 34009773 799250742 989978177 994427711 384697888 415457042 311492049 870450176 971592317 992037926 769008271 921392297 160079906 834983306 871726774 999515055 483295479 977146443 936342035 958275309 330329231 662045688 410714452 832613482 987788730 993088259 703108002 904361946 828339513 921425282 808093349 994709470 839482782 943720943 925713316 956062973 286222997 373184907 477245853 739544277 670426490 753610464 71903285 750576823 750325723 883848453 17003791 587339440 127419037 246295149 758022311 941173220 514758207 889370185 311496268 511860859 598568389 931676300 833592258 891316418 471155757 703903538 748597839 752548933 101583150 763365142 961272226 994055547 333191995 643594937 183068278 968024553 25860811 444985057 559529287 665087578 306452447 863633728 937679746 955849680 85589079 991369505 139978021 285697193 836043965 901609347 468424008 714193650 741688086 923147172 229944901 675621816 568401498 837988124 798768869 870221176 493522856 507518934 291286784 559754254 807949304 890599357 886360839 912028942 841745629 986518331 879661851 981955079 767247801 952194400 852052351 882571721 893823460 997657587 356755999 433389671 83550869 659555612 936611218 976274592 476678604 571305164 719563168 934666526 97959649 341417120 572594767 820388513 410222208 707032097 18950744 423032445 948683434 954827467 107137307 513631734 391282696 726140115 13063960 214221613 757753496 774172266 592811481 882458775 673184163 727611170 929158427 982839258 925709361 985567861 800516281 867488779 480328096 904364356 326030638 639317035 699285282 787536291 475439743 486797089 399996755 548749404 977720809 985151476 286060914 693223224 485858918 509721540 550880394 978842438 455724594 969619806 973880153 982411221 203155378 752346283 714071500 963821758 549341376 685864797 123587561 637627747 967074330 989271695 915803081 953794497 280060629 689397165 123423727 557019121 57419805 64984774 469839079 829308825 595274909 647673550 978267009 985848881 392972294 761971745 67440201 820297330 114086363 937004811 930626397 939336604 896099256 997813077 652001815 719981023 500462088 945351544 908392793 978511585 259631735 885766382 628684900 694745127 272976301 559831426 869823999 945599690 280335125 478591311 6462725 282024863 685017436 909904364 830023167 837141502 66393510 318550272 960911234 977402753 961806395 999669878 969707026 992762434 856799148 872446120 529698316 855348976 588804691 918984890 592666075 795055508 215692798 377067379 761286263 875055633 630180305 883930896 188198236 644739711 337542908 691648380 8295233 252143108 646073348 728641447 189432653 944066095 498799501 909140071 249846640 991898503 589008031 824227904 468499078 868534261 801270349 877292722 595155134 779160149 851183042 964231267 656004619 718318327 452101446 508079074 80683989 337349056 907378579 981083252 577634528 647524339 593372895 703282350 701745498 925770274 992335210 994127449 584630341 727283859 79205600 970648347 449295448 697973486 832780460 879980387 381275178 605548685 790787855 965374933 470381473 713057503 125884368 625260932 153267328 755912786 285873515 523362285 344538488 759958804 784890346 817136622 6271566 189055099 997382089 997826214 608241320 696427107 228966374 840811462 29533313 884294808 488423963 644029281 26388951 296622022 331294717 660165987 655683770 893763587 3143306 32058358 878948129 937437208 489737901 772715467 113632377 550598606 236972195 825901033 595255441 955035531 809218775 827930868 938698664 949338276 976879580 984604737 645986603 851857175 960704027 976087796 203720022 569637171 498001697 860650681 451699312 838974455 372533017 717848038 92861732 863938997 695721252 718347355 799612328 871477552 408209451 909987257 49693266 689740636 236392740 271034797 328264243 987638019 573368137 745411121 15723463 730025781 205301415 340975394 779930830 908193930 576800244 971670395 152701647 377907049 372471658 450368494 891246909 954754454 782658029 909168593 510441503 880395483 302247926 601790930 999629103 999814947 391917437 685521461 685665969 804552525 38409071 241509386 276034755 844641911 537577898 618623994 87103099 447180579 212324402 918434665 721506416 749660236 716075266 778416097 476760576 705836121 670143050 882548207 327476834 373261669 661790635 839211568 737151291 786830727 112516732 808350712 136216591 304859423 544704791 605946186 952691230 961890269 434060517 738837883 219495005 372612986 370192281 540207660 812783804 942306818 768129250 848247852 254402561 777982522 899295492 953599415 618236294 861733669 478021925 946085153 663295445 730807949 62182861 671812049 660822356 936506763 777094876 852993986 937699619 942103973 51379826 914529525 382205286 447655095 180586073 898901064 470464173 783552309 316591077 747844556 220978662 837161598 424886293 671173659 31548473 746466503 52018094 487497322 172221979 635911166 372543084 387273731 407018220 953103299 366010 546345424 377529549 533948735 837230181 859959364 399209680 419947374 516728603 831548107 770639681 799790405 738457397 814640833 874556396 944851468 307236538 962062718 638036846 715305443 285628639 841350266 170896116 910594197 992280174 997787439 824310702 989271358 658660771 858234632 29730832 310109890 237821552 360123562 604920499 981349308 377535340 963698299 799171940 930809545 363023917 714683535 784784157 971083029 479563491 740164552 553107566 830837282 594337379 801501642 594714352 769282589 667892189 801619986 963635005 988354865 454306173 469971198 651920925 826862696 612922291 759429460 288429744 612086803 421915258 889409878 522866260 927046311 921225539 942273721 447766555 792283062 818176236 931225288 502857219 734870091 276294053 490706817 319324718 999183026 196180035 385384947 530077111 633119596 137558662 159079250 394265387 746692964 272945100 905346603 513448085 973679505 950022196 957001388 338079137 926220305 297931845 409251399 614058073 700439162 276301901 929057344 940938940 992772226 627628335 886898666 689595003 820276006 175666003 707070480 987613704 990368841 514361468 545203136 102459179 121426468 460335580 715629150 83482170 677436116 766525714 846559525 257119943 958345460 236271725 243528121 481819741 583169249 312744379 366869260 185360459 567466967 190357878 447207395 737763533 885634519 7732626 399195537 724629431 855980656 687941787 932969380 303148293 490307125 631688863 989744573 930998279 981055645 129501749 862358445 564839750 884882543 807485909 866201609 720154637 820512944 191389249 639271903 630327697 849196963 852570615 980420385 854240184 960744100 249371488 555147325 940197875 999594868 579740761 916326013 247071920 414049924 441488490 863863351 735776663 861721484 57797838 401166194 652796224 881085728 473285058 546724088 52383945 684969628 785605303 823439825 811556411 867642091 891545996 896259202 152540396 712291886 129103722 527448248 809149360 879579924 834532287 946543822 667640137 937628140 365958521 771215992 817777372 897343744 197835595 283700876 748125281 862554525 777281395 909921387 236340572 486002008 140957124 760635464 762924312 930741139 536593288 613548394 124699475 997384879 981724748 991647621 279063694 798000719 900658035 938636246 292829367 451669153 294977932 588260783 709107057 970681604 319401646 578459103 40016471 233235939 433599237 983533650 111889799 848857337 155298371 650247666 598471201 913750836 263545752 715733184 839895336 908109140 904228828 957259854 882558613 909952362 978665057 997268713 901630667 942680226 841978860 859215495 837941733 923628461 961641913 992477304 101027348 403643120 921428106 935844819 457033294 997968768 147295944 888569407 455162369 801007915 242178457 589121080 58219346 405090758 212904628 848038329 960271562 973598773 343011087 369411228 444178085 606058204 771706678 925092123 652500308 688281326 200431929 794321660 934104994 950538517 901907552 980745326 697435745 744970396 601641595 670055041 477435651 650036599 348223823 553635138 889436621 941120224 420447046 655711603 848412638 980532878 18807248 460239828 797468848 977927037 285743209 464664310 231919960 614073523 249207014 861814808 788642733 903141677 903394113 995913304 121899510 304794086 1898073 116222945 609388764 643459422 579612243 595719345 99410757 839316585 253966130 656937730 766330042 959572417 244988191 542866632 670280069 920344603 33347013 515020527 1715095 837860327 333266771 392953121 608155903 706549086 59498884 963626800 479062367 934337420 457005101 788438581 433249462 801310619 503023537 522358987 239473184 759310007 877952909 892078536 834319354 850453306 245276456 256924506 483425382 804767719 522040937 599407811 499781553 584711719 113201490 704962500 370483132 704016294 615954781 848914497 738059388 920724296 292971117 385397203 470826128 963850335 911080066 993230258 13497048 718678528 287664799 749960290 75985666 175092518 961726814 979290596 60644714 313101689 840212686 978168355 538338098 997109274 102234904 374096051 211076805 883344777 74386989 930851151 809147962 954432720 472390267 893382832 536899918 743368929 280349395 767341959 848343049 911642743 199735626 374177654 527252880 593457298 900453932 983104651 275634589 701542058 879349293 989242193 25663370 100929109 77649754 230576960 940658169 981379959 155248527 393674539 534247755 863896066 466191194 991181184 608518182 844492876 128526550 725093536 112125438 541513680 544204093 597768874 97334867 664478894 676182718 843919390 178991217 475456423 555785767 976562806 615763867 932348378 680376779 913385112 944148902 961286018 310273015 498955620 330209549 675023557 699062425 921085802 563176260 704296373 933510159 941468018 517874366 790912609 737482786 983395792 769643174 866280048 959884150 999124236 98020253 739101737 333692036 805152640 883482193 895310429 91710235 746492202 838903339 925288858 792800486 960943052 225772200 370059666 367249733 853165594 155287236 827748740 48288238 186731797 995335786 998921063 436153956 526490158 850944918 989462895 218730079 475988654 680091459 749460188 614401244 917877186 847141295 976987470 504072049 929934962 189053371 369119264 278006081 776868233 664042506 688515900 398159145 441361798 343129933 488901317 470461827 486570753 705113329 959715661 986011739 992458337 802076667 993071440 172059635 516349580 595897011 624203607 14761801 146883226 229949132 499964192 809177140 924612193 10072612 19673606 53902028 909013197 323695054 807580114 757210235 769634392 696489885 849937568 79229616 487298235 339840791 705745103 966330822 981480085 832324147 892785171 31678434 547722016 232764742 287831444 609108060 984625686 285204071 753453626 690810193 702346741 636244670 815738627 408259209 978059897 852358121 896462277 40499630 131693033 187246369 882790266 326831787 372907865 794919477 908818326 298009488 386115804 133442649 853820436 162618618 860997277 216953460 936080273 55374326 588660908 594048410 937312520 760153003 888406271 25488524 669615633 320859996 695055185 853910028 966097418 385435202 835984950 956195440 967168867 864316674 996930732 566278613 634347069 73719465 281130160 385956488 722162379 822568624 845234120 296926833 540784369 902156849 988958923 48610800 626881743 328827288 785975573 335730545 724388878 138346499 958125940 25734298 906124878 911322828 976556222 860856339 950200086 810477301 970929171 170041109 981993901 637808337 938485946 479255278 952533399 382653843 914927344 996850041 996988042 176330529 407476596 813585577 958725891 891500094 893683423 949405582 954447640 351821582 790606658 345223845 830058091 601255528 756053962 379514212 819182911 715853145 950291555 200791596 371059812 757712213 892336276 236631667 819164703 211968409 871282606 294925761 786273855 941049498 953158745 252479494 448056474 554559308 878082303 755693746 879649563 961728219 984523950 69408629 564771751 443210488 798655853 593484753 957117943 682749736 683731897 632284960 998407771 180155376 252643494 240976752 339994026 306413274 817631344 329974685 596235561 254986040 333514357 550872136 727149170 231329475 801238257 364850879 686382219 80271300 882911817 258046391 301997521 90557631 448892298 532586767 961565335 87484681 680684034 44787297 696646786 117984256 188376364 954088728 983510086 771457057 944678821 734545072 863843628 559434863 740207277 174546431 685729050 541955561 936827357 879464707 968888139 111559574 754278037 806372359 908743639 874898844 957252716 366536953 923324385 948627285 988130294 497675167 655676303 165493359 904134530 114127528 636666778 254210972 686857676 54522741 176649695 995639682 997103806 96384498 306186189 16785751 242788639 593854404 993147960 684273996 778002807 841755405 951077707 204290440 660098829 684694230 853731911 750211204 920708043 489071122 899750232 551052160 633825985 152105090 555309525 470964750 938915627 448801262 631853301 553654884 841575760 41686423 154105057 21008487 65913343 838907395 938119564 172144468 640336518 706367971 884746581 622407688 764200461 111739993 994950727 632385132 770879289 475790343 665971410 686717364 993852838 894224993 974504480 787827634 804316983 5557469 489236724 125656939 273787347 606380273 653871324 938356990 960132658 744194763 783062942 696292667 700720448 670069949 762863908 176233739 739148945 516105084 640435686 1153913 755682758 163468752 301725035 429749560 545382574 100217150 907421534 696557782 880399639 330100657 646087579 994550106 999024055 511866627 530249529 478245639 511718807 87262240 869009345 718889879 855749972 687095579 905040558 857324085 913153451 787655212 898117369 355009743 549123405 153358057 917723237 733744909 858221483 776070122 944073615 863194663 981046992 300573880 940912261 596341648 861049298 286657459 294181919 89099074 786054504 412889500 574835955 907812429 920961475 569454178 707796153 55198480 182765416 218144551 482336260 284982996 908629349 38190680 592927873 579183238 961613348 822925500 843969164 574227778 597379355 921649783 953388640 180912661 606223515 208407534 683976305 787238361 891719064 181394070 841366611 830590063 978919297 468092704 489059546 855753917 891193609 866143321 987193981 676433724 765696358 297652899 685080262 57410752 382524220 388597814 630878074 619286659 979779575 355316805 576069730 198604910 845550238 469133876 878531221 228069982 905365507 929595356 970302057 206203237 780137065 172338135 223071048 979016312 990578839 637714672 990740309 967279392 976031577 941347651 990232653 944790489 955790749 248907288 983320277 103346653 291099997 142183761 876161038 390637203 690263926 710229702 805541663 310696072 883782371 219531521 818817421 45563347 530227825 103292258 281055801 172371392 668870612 726371011 827375289 832454225 847815965 117006403 638055330 676450236 774128298 216913367 409845664 265358353 603180470 353769655 953847700 799268873 987217645 456528020 758127238 3587155 357919946 695240088 841912408 412269679 726566747 756642051 816388924 867815509 877827893 448076585 560521475 978667586 997776448 55168991 116855083 737168075 918847155 945084681 945898272 714107146 944459440 242666336 286111927 391861643 505905237 224831608 945389873 821596771 868397786 207189446 593915351 91503076 471018751 73598505 451018325 473268206 709162790 400359618 825200591 845537739 953806447 846129571 847421757 899991094 949215101 599678578 714330668 20575470 278661550 183411035 566891677 14377171 709074361 178251367 769513633 881331778 887987327 316973168 709721423 489248227 795703296 473863477 950024584 987896556 992510598 507412136 749391942 120239343 753572734 10809700 155620762 946225599 956727229 751006572 964206869 704326548 786375919 168636934 273423687 961117634 968132926 474805697 948786179 27612820 987912973 583643640 864919181 666371165 942428543 109962312 543914097 551423268 576221328 616733221 821398596 726652325 906597506 460366087 637155168 594505885 984279049 269736395 277615574 814061126 817196346 354610682 367873107 495964959 655271997 790505379 907791074 377664306 826613778 966633887 978482720 593625024 749244203 116621813 428775437 298899291 435356177 560279684 926211527 75412773 894089265 267104845 475790315 619228624 760420688 319458159 483777745 282026916 531257798 981872564 998748014 578350490 834749726 19897888 573279762 844924163 939506901 619845318 785830800 233869066 387317472 352847793 780681806 443839612 980312212 572487436 667893934 726379022 850476229 124043762 679040376 558345032 678620444 330491448 896211687 974048436 995032529 489153707 973321381 952217046 981424618 379140041 777439338 761380670 829442370 773411256 792871838 839489349 881762605 274123515 901813607 889999814 910212570 830266308 850382104 903867760 974135475 883772954 936969347 395468960 806338962 935262486 956091243 616317899 824482122 211274349 506749830 745686124 978114275 45397825 464665165 695016251 765024276 216978872 920847272 312401433 947285021 745891399 930770645 523785546 709362701 472035252 799098399 347117793 519958855 456687288 808357488 267640015 776746016 318342660 644350304 328892266 847217547 221390182 338030652 335666525 917807437 689074201 726019602 523301505 579593476 109885914 368422904 745046189 811156642 913974394 970746110 128555818 293642095 676485514 809409818 664042785 750471730 274666352 719941855 136338780 333673711 866075839 972143885 783227396 904664205 949004762 959660466 54332614 200139392 613255184 652485320 950526113 963528478 246509013 601856414 837449009 843458758 980773850 984626813 715213340 749590727 203847197 696402979 220539714 925261921 167786707 481711203 788436763 875272373 273910538 454108717 846697374 892449158 22810662 953583546 336896190 347200589 377287168 397228378 893545599 916434733 323014377 964810268 642708658 971838376 797837661 800790939 981146870 995704157 152816808 708082673 58170129 228152941 426008625 439499058 666582676 844057670 937479163 968250005 671708276 959262350 145563098 853180128 802000572 833108868 736389886 875466582 806528510 949987251 642859299 762203778 396910706 844987004 792868374 967999112 727990587 928059467 662335162 887640587 636126107 899874691 791236227 796437979 315258748 970631459 415516086 482962091 1248081 994795086 297666922 402431235 200881729 645552350 974058300 991732076 298785216 507058489 920844545 950856155 155077071 721375181 677780866 700711207 977079664 978122165 994250330 994883590 249023123 836203622 388767864 758714072 530675546 972467682 221144424 257124338 571769123 659161548 263865880 659203540 860038906 975006233 298423590 937232979 723331361 972891071 590667068 840183239 446485554 662997163 359533113 935914942 291616767 579404210 944768062 947308020 431222594 852328631 496374517 606514614 247847546 521636358 8521919 107008439 336233334 712793981 882382299 929865604 163468680 751337247 74895834 196436350 473853586 583378546 27246524 223475577 605613922 630748831 346542261 878276643 274584806 855336132 203538474 920110379 671070793 985202682 639361053 810811277 651531908 976551377 543654664 882904370 497044626 519899273 303525251 477993503 859046731 991545374 723128547 732764819 263263777 622102335 357078063 512987251 63495244 671420219 310232113 434611376 268450831 777851993 943379566 972952080 405099923 552872240 278583004 641874369 805356230 875593199 559437686 977649224 375166206 794645482 776223488 946939157 504578201 929781045 548074887 729605558 997664241 999368494 522716312 967014541 949167981 957303640 109683628 841336203 317421675 680611271 110402581 969301225 28194859 428755131 454666771 990934644 391653829 591795447 489433580 546028566 631248409 857244969 742769015 890900362 6333727 707686575 916755939 957915177 113677503 494736182 721964191 896285578 625759650 970087265 375136769 473206672 907571762 991320261 64615874 849722630 564616226 654174353 815253503 816217655 780622846 805132580 106186694 504325184 498830130 680113299 679927218 885576924 272421517 336512061 831625582 967298775 452175514 660806828 450999844 618205609 2019918 862663911 639841648 812318087 391112367 999089811 886304850 993918900 785702723 924908413 618640845 955619641 539979549 782320169 555927409 884343280 898821959 962705681 563689364 849775119 319318285 664904830 513027762 695244552 414112380 433545235 206906572 530623037 521598371 544002401 839289079 906356041 781829097 880846409 531496704 673734137 493524575 997412495 505603104 606136839 383964695 709707710 830800895 929002039 41267552 539947953 824867977 848309706 659678774 804722307 169813970 542990658 834967054 920926338 454869312 531225884 533499970 533789753 115650685 466776849 134669206 555500683 797375040 895278419 467164726 715023105 694008820 708229036 932181211 987012097 844745197 979408775 892146540 902672193 808731485 928457332 951763510 976657406 782117237 909384221 266651623 313302760 895582627 919108439 953004838 953446200 285535122 736777723 759940719 986630896 394657755 734917191 737208203 961348415 761207608 865988354 459712321 692177424 299124802 572571517 414812388 554641950 140808377 398844926 412560818 430804638 594661967 967770191 546894196 810538277 501317990 989735185 30873167 266100998 729093793 830456269 331288087 982370291 90527767 655978663 335388043 581445144 846365782 924493556 768609566 821696993 117085643 826251974 905938654 990989777 957442524 988986393 124978829 139506296 323760643 736744914 708912444 724529096 504365225 583573105 70835652 398303535 758087977 990219703 680598517 871827921 566152244 629169334 753553766 810179997 371219040 949253156 652129214 851755929 913437024 986384519 191999945 900481678 952076679 961016704 478148137 627703916 572693359 914592864 167026730 191185528 81827829 730183239 633374710 726654318 596627872 807839284 613964120 780369843 329426197 438168164 674090028 961840661 132049310 422431028 15823826 16515157 721798289 866012220 857537915 890091919 370835428 843220812 2645837 821116117 851396584 998256399 515933962 929476530 628756417 742452632 811350711 911083512 944348988 946863689 276724012 877952639 606384100 844136699 522139204 731176323 176608690 610486241 924504112 960831463 942434253 975174670 855765590 942968003 718752961 911709261 239457099 927771272 614178664 843015261 373083404 548736747 524144401 591376658 129198855 462902964 885007791 932186189 707916801 763572577 234313803 486153455 208826438 620063910 968230262 990502972 200092715 444840208 822669468 976340506 171736173 552128204 677767382 681480988 573658111 605542270 967947159 996734883 860412029 972248399 145670270 478038312 120358165 861978291 158824357 506623603 651948004 959847984 737446357 792582482 866120892 972063018 884476312 896499722 791753001 878399363 868727139 874856152 976029581 993130253 979781069 998066319 586663965 918994716 931535936 968181566 403250310 552310446 311530009 807041153 618045660 888736760 231936463 244411167 957665831 993534995 532406906 870166760 326703040 885239580 486065536 971844459 35785321 995657489 283046575 796282451 451791808 888996070 996329523 998363611 68117135 294148868 283704484 612990380 72327737 713884149 411030369 552257977 393433799 821718510 945202578 980789300 944337671 979310908 469017942 620747355 178857916 913789249 648070505 812497207 902440016 929470537 710677125 947794043 650406793 968285143 97051550 556379372 656398791 866534626 527179724 822086289 770509034 851762499 87928954 490478182 642410651 688067211 79282196 97423165 911906517 996858125 504665971 510217107 939944253 985215242 726429619 742718019 64896358 890159963 199040686 474814465 411024057 474202925 117309770 793230195 294892134 713609543 600075534 816795544 91826252 138533189 979178330 986449725 389975626 914611561 808513027 821784016 538105841 819730704 182739843 467460791 544633718 948854254 88713302 753225207 682973767 774948450 595971943 666439665 24372158 868070742 376642186 962872119 286589779 433830845 99937318 741797768 134340212 400385289 912818266 971519755 405843728 453495549 23597253 848998817 634863979 857197827 617967523 955080560 982315186 989491312 624631922 948427018 342975572 911450710 688387618 820723167 432432629 907593320 242466281 531147030 223094018 413411590 848884194 961267316 790033609 792880189 343235172 348248683 374638628 476856157 74479059 588617834 756987170 990820510 542871907 544014955 672831001 679982218 822815003 823945152 123950067 438066666 379716768 783812930 435211798 464820787 690646233 965947669 484591489 602184936 856495707 916793670 463496024 470632663 334988755 444999007 220815976 892926765 597914542 819925606 539670523 598556298 398075866 785648943 206636654 721313409 465949315 655905298 291369169 461216910 721681846 756183788 164381646 690993264 668875967 895822677 235760767 868179264 987006681 999773563 888783716 915826370 954962336 969553506 924789479 954572188 598699683 932099897 402019648 523680320 502440901 813235067 867059707 900212711 758558174 956546201 639900752 830315886 300578100 992907360 971636440 972821420 362248949 436237641 463936249 973587294 631651172 957761338 472190574 748569489 639771991 948000956 107757080 195031274 257849147 734206714 667512983 838311915 675462118 933268369 441965983 457689735 868660021 880236634 51288733 915831194 640665444 840233284 814674021 962774025 91411621 940494300 993567498 999602183 671743979 741710267 129594005 456216217 847940484 931367996 170960272 523725570 175809222 894254207 969330653 977893522 459450799 892421226 708248248 912426016 820058117 949361300 640734982 999557689 444720354 548466162 859197776 964455173 474562865 510605589 659938806 891603426 475298797 567409406 863302415 880143051 699046900 957614243 719358453 994974330 975733785 987244004 3185569 794738878 836866942 903430200 906032019 940188173 506307697 880580641 756206599 960242263 287406928 832189815 341527948 753213405 617756549 731292362 270689050 717818561 444014969 840244157 510872411 858241048 76546717 242544449 860229889 999814736 605426045 652019531 381150423 945829803 285731715 678990310 124740945 833683760 367707930 749069332 28998624 895394139 78972280 978469282 490655265 923698803 827576629 946770751 141697643 942236175 19265571 405102396 460520225 954376711 282165718 304221603 978642463 993346461 528767955 924769818 715740263 962669917 974875365 989520550 717817530 838869765 848151918 891428779 727785617 739786565 495754222 626465752 656625304 767638810 350956365 383011490 212946027 941242315 306792528 472896048 59607248 290797109 781539341 948303213 314152303 399078882 347775836 491016098 728399787 884412128 218037445 298704537 985883846 995761187 611528012 900476482 274213383 681859742 271090411 613987817 465690766 610036841 519940904 958733442 593356597 789637629 999054960 999289126 939344555 994996981 550990188 716802802 167037377 537309296 526830475 770583538 803004396 832957702 518292882 933438402 680261773 753996955 823743172 989480063 977265597 992754769 872869266 970904142 270552117 973824877 855827463 944288672 663455756 912632311 236412993 676929380 919900314 954522737 116528222 190640518 45582884 230576089 609583477 633812471 67717864 327970148 373904176 747093540 359235217 654409475 268597363 683082323 552006368 885942637 454308441 738985952 239214978 661039928 84723742 577275487 789039684 979031681 589936127 919615788 806023543 844429963 275782261 417695298 631340861 850899212 779059433 917669312 38093983 556882126 958547441 994156422 820037529 951749971 729280217 926424055 19057051 467560702 360094729 454986961 819310955 905114751 609581307 744157108 825647118 980316109 202403553 240403687 400845715 430767625 398016641 485208349 244586371 458121477 882250794 898428408 885584576 986136129 64690244 767527057 799103986 807377822 244468705 306416178 763155673 993259071 992742692 996685029 154969124 324221807 894443674 906567201 621784719 628934157 952354706 968930413 883365039 946300451 411377625 603665654 503339508 517867876 659478601 682226973 889448632 929378342 218157959 349655658 607509819 968035783 624561545 951635904 368364251 441888819 986380688 991082515 473852790 769949617 37519861 723599495 493310899 706527274 214514024 709255292 639559274 776254069 997280877 998320467 458182393 794113812 84844031 772830090 238261980 886762010 828175609 977247469 93838478 290926148 580545572 918934241 389998633 976783151 307045135 813054642 383211094 657596428 520563461 888298271 816450133 846492343 935936546 945384660 751931540 883276854 191909899 447246815 39390027 783920400 250006327 649932303 714312491 752284158 792131313 907810692 862252744 875975650 408884892 822332695 982991650 991084713 591882467 930797335 143496654 687602257 961582523 969046539 188329903 775483673 785141784 794761071 7466231 999509867 125507474 175704560 664322917 715047178 34018502 243746308 168701284 833884312 738769359 967861423 640608289 868444051 950891864 984088267 123001380 242728105 993775175 994752370 363733429 783814083 291523551 419507983 808168780 900004032 957654544 960846232 601457840 931722654 554415055 847329403 103099422 758059373 339232595 748948024 97709709 619595899 798819569 938344706 441666281 487916948 645882014 654289188 879526817 918993360 823876942 895443236 133419979 961454221 24406189 185158646 18875629 165116505 738474398 836583949 862842106 994551339 861909053 920882345 283458181 976443249 564512739 894574834 964902154 985118451 419153603 634267930 637975119 833731257 809802298 823082740 619208066 622775459 484858487 714385440 338899949 399486396 143883755 646848450 963206439 981428861 340978864 711266556 794451255 997433074 912871086 939140405 242769730 251506282 951966783 994378849 946608399 983071085 94633104 191704775 712322421 741857560 2858920 321281745 388138223 829933236 614928833 716764369 462500959 596501190 549776979 871467633 607993138 845457194 906907342 985332096 849036973 959670657 643550453 994587829 795656090 933852070 953304415 989097307 613455683 791052735 742195649 852584590 377804296 629521658 318954319 787503813 509406329 672352953 185503524 382689066 785783780 915125988 334902087 578888485 588566647 773403298 48843399 365757857 284742774 866830619 246553675 438731914 988026461 996315056 590762189 808627071 809782648 886643071 278779697 602606091 575711925 874982066 108788028 145619139 772860559 798405562 241963280 382876547 25193889 498941311 284504386 928447138 184776439 605707830 550662791 853318610 326832661 665281140 793639306 963424811 506124072 953327920 435106170 657603008 926612413 934581058 767114640 806447676 659400081 853044392 412782420 769590451 285571633 996369095 164381349 477974995 658442727 678655925 962178680 964494181 494093804 944763839 39135324 277803123 331970348 562408201 205691555 445311924 794665374 823725129 766787628 915824684 746066544 965029422 373915541 923040037 433874679 887790360 279677604 642863750 893976279 996386204 935704327 956293450 522179910 529892662 190240972 406811581 17700783 798088163 92559403 331442360 868780209 913289496 307535102 684388264 506044298 677685730 418957271 873725241 696298181 759769155 653935334 931825463 181665474 498043806 35752754 135309817 648230819 695081829 11247762 717045591 186173054 319660782 997277164 999789590 196577013 576762917 271090395 462453868 351391559 612030050 480548640 779402769 946749456 959628479 348633604 482159135 312518218 896532710 978321012 993134003 152669085 423161464 135118294 261750670 721175859 847660321 859973028 996926835 980745202 981414066 633565438 992720770 797041322 946498325 857490985 965165702 689781922 833953199 967596387 993945822 645831953 955968405 957892257 976492078 757998838 873960305 134749846 149711358 125507798 844841559 251940719 356190340 963996840 995043224 125679027 320081978 956262862 986871469 462407751 786389211 385578222 704335941 126858307 723308550 75946658 447229196 48157125 222839295 108798775 335009928 465809219 967625753 328411946 793783956 214265984 733699422 872260876 898601459 120039987 640365117 414358208 607695101 578036149 719505356 572756016 620356974 683362860 946566208 400251567 580301418 275801905 789122870 162367084 454111127 907179027 961109160 864523778 914839536 268148321 675630486 813808732 971104001 32072627 962156268 731763591 816368004 905242046 940682381 598713502 875037237 964714139 986729593 545009670 783241868 742149012 825814676 776157487 788041704 581283670 706905373 764585924 994034371 832422120 988989731 801570145 968299527 215819816 454893120 563838550 686507373 690716995 855821128 893270992 974597162 839411922 855513286 615141416 631000461 236517702 422675952 722509915 964998261 388236915 755350237 628966269 772899538 51896563 205114440 210070427 423017944 813316773 882948602 941482437 971918842 577791907 819263934 68616679 868220598 644559820 856245251 713207815 906356984 759103594 791849072 648682013 783848791 537308716 760491646 444695995 928849186 831934997 969038595 153550268 747698032 258456945 904896416 67494140 765019770 123079930 165104809 454633610 566282891 97796273 971075371 894045803 989797792 443680307 530304377 813302842 975002348 683134338 887563258 485600134 647249211 411900175 656632518 742718704 776358643 535401455 727869881 233171353 929605896 552608196 641885647 303951054 889042607 81728909 838197813 72947130 948609581 212400774 543033153 532014817 955794227 724130652 883111418 961099923 987033493 670232553 943988254 790387776 962805845 310051005 980077174 46835120 653018695 272638505 819017914 541840142 834981584 339703896 971540546 419481204 841010314 926585161 931892510 784081790 869148527 765989876 884352238 855356065 883869180 755030420 807943090 297959076 833656507 418128973 744696557 979349511 983073013 581839424 795900331 868649590 895254237 896680882 921184220 224901603 349099407 871561810 904096774 186541563 928540925 257804371 454846441 252792387 317386757 993005770 997408795 707215680 985935562 211438157 584970071 434841139 516098907 396434593 861952547 541172850 720027514 419526310 522536665 798900844 962354429 837921948 893099773 553646315 907064707 84504764 411981909 513613165 668607050 145631397 145998158 762177391 940271163 967800558 986844586 953104534 998618286 892239567 914735602 105133938 496012977 130935712 424613132 206567056 806148159 888391287 911822388 528224996 573524266 750843897 879776351 752704817 939883690 798576987 857419614 804245459 830649564 441300353 767158499 248384947 390498657 415332609 755242521 4386543 344689370 400624592 631109613 384467319 863336415 396888925 474234870 709632693 764567132 488332899 737938178 372296980 836482594 964849421 982980042 135955610 198943337 395441245 769771239 863686545 963287967 31284095 157372371 636427054 833791846 132644528 805526886 149875285 320739108 661959948 685474929 917667958 944352196 33761446 412101255 225313850 280570768 72137409 981681510 853718115 932739118 125099393 875557168 737806586 787011176 868896627 930510810 422932897 472744633 591409947 968838886 20608783 182942257 643452845 667551124 380545150 907422200 376439064 878741478 518134700 975553797 985244405 998266308 234019331 324930650 328432087 564776908 745434990 993622617 965816514 972536582 951164399 956403758 422411781 535680448 349481034 361414687 703788256 795845777 54786231 772092995 768567830 993966961 293604601 784078985 943695857 971971354 398273837 690374697 467143035 467535588 325781953 830937484 733170509 754977078 928963461 960941834 239207618 846022422 843644113 953616502 898176608 911055061 503568820 918628521 431060702 512309224 657404550 787634396 124827152 207024871 902212556 996384362 131966147 922135334 582920591 672046175 395180944 805488468 672572677 813130431 617465673 713501541 207721210 595639519 572910069 692018530 69172336 766552806 661519040 900917963 347471423 527351796 194365258 234991013 848378338 958620363 408890471 542187587 956304562 993252284 38898059 689094863 474736146 554886648 815921877 908963517 703829321 705308215 830569298 971065909 797974589 873159915 646288346 947514784 745120035 754986952 600678904 939634306 716851509 806024977 416650306 838158828 768287207 863064968 697916370 982245607 914746477 975166764 813281923 829701602 50929281 95056405 589376365 851551070 181912743 973387710 151646059 766876750 843224609 898788288 195010906 638435402 268467937 718688082 81204944 324637862 805998417 905468330 626191839 696835428 316217824 418390745 221868512 906003276 826968725 953566241 55543377 366898795 754781896 894045329 659582892 807620935 662355975 942078325 160047513 459239446 830749631 860868049 902320310 975556141 304802905 560615887 316695945 926682784 489058252 510404006 78371693 543402308 119453181 341851298 333867618 917223980 243218739 254353777 198099268 728262003 384857787 985136890 531449963 620623821 288871057 489656520 285469046 376639150 520848636 714590136 190281435 963037810 234429178 885073314 226997141 667648922 579662680 895672178 895794373 966360083 624691875 947504340 446900286 558881962 599093388 889972889 838158033 859047438 436105425 858420344 628080122 951531361 57303102 834470706 818257547 904191642 689143013 910290863 564556863 710653968 409567662 484072494 244751830 804361437 650873232 778201529 606714163 885696893 261848910 711915755 44655924 228717173 465835177 818509938 53798920 846683269 914218482 955569153 633974541 960922887 448643074 633708244 213935520 692789365 378403254 805363942 907189482 983252720 564343259 916508650 484521050 988244969 381127198 449130942 477620674 626403834 250983892 632139078 862057935 895459583 782245222 871248892 342556065 837203085 540854337 653863031 326084270 893366526 272153527 969717412 6201081 957436576 333343570 888345242 626890036 660370560 311046312 613660787 143663096 357041570 216333071 958671205 27472109 940531073 101574912 568702042 464133092 521476430 579737680 788878599 402707201 741761150 203741952 986919209 940362908 952714256 655232581 968004569 895898685 930482333 822697112 920608629 699975747 767425897 862415993 908582926 112946067 195049195 527878669 887670261 636180240 775189974 36069809 444544634 486827182 508515595 703101023 718271894 461337449 685941298 21557024 552758899 926721111 986759923 451048791 844091360 651931280 761755772 664334445 691078052 771167256 791818669 401617832 466252950 86261365 411692048 517683284 571031983 23126070 233918105 769057889 891885961 692783025 942910491 324052804 330174231 381738812 944019188 287245021 571850119 81613782 850714171 899947996 906141032 220174057 434166598 653582699 958991456 229841877 242228737 840099102 914315485 292173679 564475339 149446558 383740117 709643990 717236694 784518682 916388945 935008554 973527353 945818442 978249105 852462509 991538909 626119172 909631221 565640443 981036361 84045346 255039241 736288685 856812294 533156082 923205999 549347251 871184674 32271710 642197953 578795148 942274297 23434415 433685809 311488443 570163722 181622233 950696832 885289680 962731912 554331886 644902905 7112400 307446172 852309577 887905756 376433257 879803609 254406646 966450664 302717914 368988280 796612078 804139817 276221427 551658471 612560587 699482325 245365323 782037550 636419660 875574396 600947358 984411114 884185678 926072561 506774060 643694122 813447773 891948672 457050558 527469416 203747502 214642165 759951391 866623598 695898743 841951940 456193017 706082654 417053006 599505024 963140232 991693422 300005275 708926259 343307237 735140406 179980966 603043660 569906085 738227322 117484419 477752725 40259623 477087825 273101466 731743534 514544052 879169147 18787838 887960421 863001637 965237105 328113033 924368139 922160134 989944365 410407592 566636681 243785973 270011878 663086219 687828194 243410991 605567797 718141277 833794638 566787511 726087115 824945810 975233077 776742153 975797736 924725052 978163110 916166134 985577927 689664201 694422428 601576530 982152765 359524224 428309614 281703515 841761980 598716786 928955751 748865683 886263827 320281402 987044254 524986103 569322515 237952558 799540281 850747625 971731348 228436289 959906290 13366695 382017830 880900917 925418735 872681048 927010523 657899870 753726652 88064825 254506952 615248763 719010438 776383411 817998730 24685264 507010251 269203542 929482284 814179611 927186979 804633330 877777184 794943120 933591398 230077178 656748306 26725549 947133433 575981506 642429094 827922836 929475940 775799887 912141532 818039328 976802631 604300384 711583163 796023849 936440455 870125080 975814022 251770578 329187896 241834872 255588468 546571585 598229691 61745934 843072195 356003704 941566145 923838517 990034990 538478715 857988267 45007187 979045549 88763717 939495509 413265521 899599253 352543096 408214489 101967834 213350962 733255920 771762423 261389151 264919335 310955011 973298076 164686583 285057285 403797522 697582833 502339595 503503599 450214735 991683783 195951801 974571735 849373245 969516016 265599622 306523053 616558556 891664195 519350833 744544580 454785648 663536390 252369273 634204207 575456383 821564681 444588666 678283761 57920069 479822130 613493436 715671908 738700990 930161788 221997393 379126188 979893919 995088046 347119686 360489629 617329730 899018625 734589610 987655651 425684644 619398042 405554126 845924530 393489624 558366535 918561210 963113384 22642900 853638545 593531615 604761467 648816820 767039604 885613347 907997694 249142077 814358739 549082946 989446842 269697378 924557209 469405813 535976151 270474100 790501240 433556027 733444957 779248283 920226420 347410934 729420614 639149339 781798758 690656419 979439660 77597189 242032561 302879342 930421385 694824278 940454306 434699873 482833499 963625122 998118133 11098370 202135164 218075042 883547805 29563885 779209536 359919699 373200441 837478089 902774272 251538516 695308954 852297604 894086804 851963325 982805106 553613077 979747825 872126087 963140260 618895758 997683461 817573391 932948933 381960470 510642308 528585844 956483180 80319012 997691461 19585618 195051108 427759748 821468520 797736555 999364314 90672397 990383223 682931559 946677930 778227470 906416766 991453190 993106642 40659782 918905370 939689595 997783145 416112360 878392211 786573689 897062078 644961779 851158241 913216940 960876509 1536849 816620541 228101036 390508754 810475944 912167851 812452779 920584737 943257289 950357081 202844548 477845751 306653513 308199418 889378101 970616223 13346064 134529018 171214861 717462091 957072535 981514352 435057639 547953551 468153155 960861141 97079336 258460334 723977454 784179927 10579701 52930552 426913483 614218582 732858208 961343272 261411430 535303204 95712698 329194299 410019942 586464326 309168514 715710071 158399496 628792595 44257160 877073118 545916607 628215131 419228422 661469989 669110785 726665754 104399447 588129881 594126487 854059102 769116776 772485396 581844643 812628413 893734795 914604514 436889723 501541488 250988427 702572807 338165660 640244794 935719338 983836967 890892343 986932314 910747683 942993013 893532560 916514906 142573242 491780612 736536773 991990481 617920554 677316953 175618210 429319825 646922627 650167378 154296499 889245877 854326146 896975825 551465873 699546407 944671824 980221686 33348818 620491206 474931041 554521472 424775259 608001103 511070699 673861343 509817499 899163985 748959648 830271713 657266628 798586601 24154098 864119787 136131800 389204749 541998181 909717221 822851729 923031645 953912447 956804301 150186800 659498549 814378669 864085244 457150395 721726289 921642816 944015198 495785194 521297187 979732873 996925031 712620871 996461396 933443822 979680767 518815352 544871644 439706488 747627810 844073119 899593422 742724769 788551150 691686155 804706767 816988719 826502263 965588984 981251407 444124301 474363923 61978798 407932556 614805961 798090301 875454003 877577392 411785684 775497228 74684359 81415828 372829734 718994073 48127279 162332273 113381888 468768703 463975075 894898515 670728437 820008384 224474002 918960434 754422365 765372524 478559466 865431655 709429874 767899608 401524061 573248811 127823573 687512977 391926165 842779703 70332486 480287350 572668907 605605357 597101672 804454174 319293003 857083148 937807428 947127744 13044277 187126963 908787805 930286851 960180640 986420175 187870187 989157494 573913131 774201824 537419483 644053571 693163635 917361617 304517925 885039690 598984811 640069046 904104463 965311704 964497977 977803321 83198487 662344865 42147656 726798434 190776573 919069793 105511006 613009631 923183050 961810140 575822048 940073542 814136359 935783048 374582653 541783028 788844598 842146455 618378168 718544395 149454314 770693060 982998759 991768435 610266710 891135881 852228471 927235173 825247856 990038883 441713521 503269360 961495859 964621436 311411033 586472858 946145666 952026472 696500389 776904035 968104113 979440652 559219469 990096773 296874118 899966104 362368246 383071715 493310491 968296569 276852113 901663730 371745040 502791240 396520063 473475505 254347651 998158256 427822989 578880400 323871806 435535995 566583604 973422343 39563491 735349966 394502488 425550957 836450787 892336249 440648429 778587495 134416791 637293419 401296095 695082548 238514652 666302515 483721058 774760133 417524284 682593371 358186107 619452716 666937734 913721037 12277745 614884917 117692247 636767806 710892816 820317123 389930986 595988080 441039948 540369554 678829279 841624546 416697063 791765803 187524034 819111417 948215383 986608018 216767196 229698336 359324843 404657526 638116875 951456812 213756179 321515926 340631056 416186455 739606352 887948874 574885393 796569078 104784727 518937794 287416536 330611688 909411895 973473999 805391160 823551734 251772595 617810701 376496685 902812981 810893171 950080620 272918472 793402571 225496025 432713055 999191866 999713050 974261944 990976025 638312672 834499546 708062064 950272643 403051602 456958671 496378084 871980464 627586761 729360399 830512652 850240284 274106979 393522999 87439668 267894252 563721341 957785430 536734062 801267632 62551491 173815643 331194916 636233541 465484772 554768429 552340188 615832158 744399290 796228511 535650128 876348236 7155268 646292355 203706550 987243817 579804679 770223703 134486633 135981029 656370442 983861340 104582558 518942369 227022262 596235385 534589045 943569438 846581985 873103561 87680732 691848046 684419637 846484703 287386570 575890720 931644797 944778789 340988990 867739742 529480785 983631071 454380133 980170508 215775342 776840564 393998132 922596513 369247074 437769713 684970117 692850185 768428965 940851743 98404939 618404934 428932091 793549895 1542130 21041326 698254874 861697361 703513182 874581678 815988532 940960818 454469040 736684031 879010145 951124428 445544879 996043292 576893712 862168105 881485533 902868566 755743607 993421382 655075382 852097568 614705799 859657396 258931512 275163984 621212497 714569322 126651139 665027841 186478475 540108246 686554745 726201345 538131562 625409154 784100354 840116887 701465372 949948016 212367177 499868746 444336168 572378479 2720280 793777774 704389766 985568694 213182458 872018137 133791662 956563094 725750597 941029438 304839841 820805263 709921699 855833122 152950589 673610724 751157678 981005283 856276855 875255590 525310634 963685855 621527805 720746610 321206017 801753513 568199878 694212402 207507344 437893883 443364907 697002430 356372469 533476525 539870158 921974638 576910164 593284062 685815707 898109800 969895365 974701699 241938817 757094137 764429205 789706495 397593856 997126360 592338170 859315090 695854993 918438814 897946871 932334886 78134440 764316263 980219100 982495615 68451103 309888669 890700221 919369146 540781937 988187667 562203732 997350786 477803549 746779581 965605337 983051565 841830580 935001272 554140052 664693781 535954153 888690864 845804214 953697564 256661465 296065511 959288721 983960573 915866756 955094934 673755989 862198189 815596153 959068781 538879974 685719597 146436786 989795403 534857111 895557799 979277081 994179662 97762444 138135056 27322294 384257269 277690629 962799532 181231066 685237966 220954188 295466761 115779882 207064014 339896934 974958495 820992840 971137567 474510530 622925428 242535560 397414178 838066546 877391738 243824257 475541998 420738218 681911117 72865810 225994335 665559876 993805215 552753627 778993623 415162403 730001631 999912567 999993066 883352794 955816948 413592849 662588905 841627137 877875735 86921628 735658675 725004739 754052266 859350408 896562157 320312636 696945225 876709546 922405210 37614419 509529409 781924629 923416987 901547262 910537219 464782160 907223079 213327758 617287487 950282111 964406278 315856092 845983143 650239658 714324743 837524827 921874626 948500703 983344545 412904617 422963132 703326155 756013859 744732129 837210823 152332166 701326335 103565540 346653474 790375897 948741813 972040250 975467324 230355448 584921268 851904501 957451151 960700419 978945672 299454985 365927407 705770677 880703800 458661333 959927169 945487132 981273796 813506275 936047124 802054769 994042641 553635634 925565020 216744516 797689143 74943765 586661805 672538888 846960418 872217602 960431925 70792441 602383077 668446408 717185215 756105032 990587571 415705778 989602954 606910053 905657750 846817393 968546758 727652924 990149881 311313756 810200532 857743701 884677085 181881555 389192125 158863950 388113547 173274105 495852950 603960393 624458444 445041810 862900762 671217023 694501715 531401629 545015618 554006668 590296619 162195241 189704183 677707621 847030937 910486676 983293926 206637226 900571688 357774205 457794620 99926899 306052310 26122221 219933998 92609960 764379315 995839194 996719661 130672344 754768466 101262007 487469414 690266666 741895880 974167622 997827712 632505180 720928866 904366127 928324493 834160220 976183339 522356832 701548592 321581665 979656107 429943296 861557519 364207537 670546929 618489636 968070519 832420082 832862970 471878015 733247490 124280337 356913236 289125783 958836805 447324593 544774693 571706294 764478025 140157091 998298090 146385586 946550837 321266199 614240773 413323085 749538313 944852536 982717287 40877236 421748980 599605763 747031350 577286474 994267218 83046873 675428432 699043566 928255755 334639099 800480771 893433233 908923554 323802368 962481502 356600581 400966507 482170949 717738666 220890255 847665957 742483147 966385878 201043936 720944146 746619034 800281453 712719029 866725467 48878824 979286077 189532762 472963174 89017374 529753936 574876092 869018763 959964689 978455238 173999023 525047904 699866767 717069532 887269303 960318553 634219017 681797651 397422589 627742575 24921755 208144564 2045746 810375813 121996346 585534594 355454726 532486719 747757897 960734226 841704172 989540484 826884329 971756001 271233989 513156870 329523309 426635889 922739277 938985138 537915703 678186615 836629651 991598705 7058858 914299775 44830581 72712660 685742811 704965697 424553459 895252977 73870338 778970832 139482909 606339868 54092420 751741012 823912262 967148737 95007812 559349071 860839132 960264568 738596802 848276267 997904680 999670079 588767274 672595463 400841219 896976638 381227888 478033863 629343418 943180093 847798995 919260238 545617733 648236185 346277913 958846293 21547546 379966923 124584928 937418483 513678072 537843203 747922062 962990124 604996936 921580810 356610467 460964039 435388710 974506696 596061644 961042945 743066682 874408137 923476635 953257826 334543483 529070513 938445635 959436093 77407299 846294182 648264040 860489245 192650746 827214188 4369060 190898597 270110121 702902701 387012512 743461610 257719238 709025940 900562772 980996391 387205357 806155444 96681173 525034543 59533232 389384397 386602103 988599419 805654456 974115109 173539450 388100500 944765067 950041512 384550196 852177275 727148881 731064628 718462029 817105492 397570674 506332802 146151394 511129685 98018536 588097496 560881154 573303154 837271288 980689952 585276081 679398606 960096187 982309738 814856126 841311364 492694696 597190284 386478683 842989243 437593491 811482704 811450016 858170330 856242482 977387511 168791779 512943946 488821977 849409882 189100921 460024894 72716166 331231374 714353929 982373311 197074754 859391789 734523033 964421047 401094026 717097950 980064380 987971839 460849449 877456783 371809662 990117994 107030270 871823025 820095555 964981940 323661382 981074021 452064261 634777418 447995132 746670135 548507028 793737658 831154422 924025677 105885476 681370210 253469907 356850550 32869547 350357645 662830858 716394497 383101921 453254134 206740869 629671097 661249022 869581513 33477559 555221960 164973120 348938188 223803474 499807056 459972730 635309031 289416714 923668304 597930933 727704096 762834368 983803680 104340657 127843836 732092488 747304668 100121788 994610559 239060835 394028691 166121742 284654197 988379075 990276556 74514447 314243806 496446487 808944520 811469037 955334591 970262825 997648467 515414881 998569102 212406075 547196971 694752594 748721235 669358678 904410432 518757900 734050650 347295562 574104063 464997988 883612896 279152669 738930756 965413971 996511780 754363438 925055555 411888699 544035532 246519803 747611432 827071049 892894127 306983325 435885325 528507017 732374564 310208469 946446167 944814478 977858786 529222096 959142484 235995421 795846841 478019419 672768278 503994304 688556747 399974096 877995989 439972360 516474820 697960295 804358193 383325033 903410901 830587434 861104520 562926122 663104218 396236663 403612974 225707492 359372468 684441964 978475435 100350486 259742465 401280156 432800760 965283705 992578348 103402148 177219054 956127602 975538187 64360642 838228316 623345980 687105830 735331403 945376944 363448329 415000920 551155777 717159403 273121000 376773365 928995159 934234323 620661696 718571246 393688116 945006502 685707941 823510125 835712424 899960345 333342676 726280789 899189109 921037491 509102775 867226693 860721470 937463174 788634558 942153188 571510450 805084836 895359250 945821596 245343631 305139166 617605589 935412139 391619064 699162301 409612691 778200951 529549613 744949719 846760526 937991208 883085082 965074278 210975366 591976470 283949864 421333201 367247985 713254547 640128894 900690683 264129619 437240255 328461187 731834872 450094427 543153280 414329202 794577397 964518318 997934149 23076440 516552716 198065779 506934162 300358809 467442547 809282111 918535199 403989505 725379511 138293891 478477743 860528767 999406768 170691272 295653509 893711966 963687318 313243270 337186642 137986194 940784016 873150326 949654932 826962075 931397998 626358152 643551582 515309372 602537589 14390500 20600904 592288846 713219977 731971663 899882175 514552024 909900843 314064093 371582915 595218509 707674704 23391673 811316600 988142150 990275021 371499607 454092582 701147124 987654152 927824325 988168215 548246112 999716350 676761436 958944873 67775419 563595187 311490331 864280416 528057429 589186533 302536981 614452009 596826038 636498014 595853805 886700483 195340091 226638157 675017566 877930109 207889490 208166595 541696866 628933558 790816159 979935275 59102861 439548989 460263938 815136675 336950834 553776983 692074972 956016991 771085427 820356890 942776849 988460353 532849462 792818861 572737481 777891911 909702816 983495161 539061302 665220000 641323629 943168748 307536849 561374512 103199066 245177375 219587174 895905122 879110826 918025556 479119401 694771213 37673218 916232943 811828435 935356577 202674163 391674479 851244018 874781901 350555598 849432059 792306990 917824589 210252237 602836081 84405630 565866131 881466982 954437475 62478762 518109774 235782538 655141988 635458490 694614626 963683320 986333465 403359939 428285317 149502112 950863515 199512091 456856241 454074789 698080606 311440920 502324725 412151523 604228016 256148269 871473099 616451465 654457154 520534141 776029515 701514726 818821224 211588384 792673554 291992218 890839778 770591815 923595206 47542183 743120543 324897912 835575952 609014851 845693436 584681583 797411678 851974895 871801667 602537331 862945213 201584082 785561756 656518136 979375461 361227345 435722408 38556887 528776940 614558590 730561454 237638220 450301255 528028864 766585880 933888900 970635462 827663031 977052989 708861233 739727421 58832604 981775334 377528095 488894414 131724218 146218089 318296056 794076328 67330790 296387553 365984265 839437926 689754917 926275676 105056698 196704752 831337771 894045270 274085206 320406135 269124805 928310510 79139844 466436809 524244916 545460454 309960807 396267377 952195390 960411020 348149865 968120843 972030532 973458568 582190832 923223378 357194576 931756608 646767082 982554218 526209465 891362731 1409582 962225717 993077287 994088395 740544520 972762151 343116981 554372587 742336618 940988854 718575545 835100034 605570101 965487175 328567539 966509532 149061616 510569954 458984791 719026051 435699926 613746045 186037085 857572062 521602805 861341366 255953591 929029651 67596235 344090468 961506008 979205370 292779125 880743415 573439264 788135502 24361519 751708629 112510091 534333265 290470149 668255027 438912329 775545574 120656812 271366475 192533145 881917948 360814011 645848192 714470926 807178867 151796824 516379600 642690261 664205550 652808062 679094046 146841706 879742185 53774686 879925303 123771760 873245671 620162330 826758691 284053725 754550248 712461256 795331915 93123193 927138845 293003447 335541042 235037289 812071798 201224359 486617477 255992530 865114491 537816235 618387817 265146357 302241985 910360601 954020763 568826130 718962720 90382224 532238135 905356969 932433416 16371011 146873040 363229301 475221991 178928834 519412253 581590002 690306051 244848009 555545403 909069100 942595199 544268892 842063713 730863521 865451428 111707838 466610096 828225867 909973402 202373007 408292600 57029944 89541493 539475823 825397683 929286808 939821772 558751802 757610385 887611480 915749116 685790161 727755893 88108474 896948109 26663848 784914605 120803010 954377275 648410802 726229560 707329337 993272564 289280976 747841829 274982691 423478686 809031448 902069502 787980531 935702027 152233004 835831440 386280552 562041891 810107396 995044446 956426500 998495961 558535053 661361024 843848247 962854232 490042048 892158505 557640098 868772514 534203719 583262171 779728570 985662338 455246557 891570777 196200332 595613936 472622236 656557476 171585143 939399464 133095838 667862837 60282906 246251668 648723860 656989260 655861913 810282636 656048318 699002735 386872919 727759939 192072162 991726018 287286105 797647559 190830473 494056141 733184563 925516237 646104966 895599743 964054293 988855850 317755710 871727821 759292786 911408151 231935041 785884008 329598781 884835927 742184403 833106861 49870124 724203889 522872757 816026851 25666227 36332358 64672794 273761147 343346748 604033713 295934305 909091379 749990555 823138158 692219261 922090667 421662093 938726856 772215325 793921453 979137478 983628740 45688425 438677361 756055504 837864576 495865217 635762932 449949300 591117392 783174416 993826750 111988786 846335354 835550012 864234602 569087824 878533011 459300769 617170048 633240890 851102397 21326768 208415490 81346945 93548929 326067682 488420510 659022254 667892455 702780255 994190608 46172776 794375508 296916441 942982740 640672941 801364969 842790668 982570067 433880652 928340429 599421203 715609922 251259807 295898181 887950542 910704231 765000905 830354240 73700053 300497523 331425640 478855042 466140895 649400292 236839904 738638426 858253281 884025481 417645505 835673523 483202577 533972965 670666571 871587378 384107071 477684740 828042252 911870630 91498388 490473131 578935488 966772163 842484038 948458751 185861799 790481829 368934946 486480793 50944154 727245205 755792564 769830825 969225394 979320732 569362162 730116615 59555722 640990127 361119666 625704457 601984015 782367234 28911391 368668948 438315446 444279732 74965148 336592593 131324063 198895688 116528998 334841989 87597877 364546240 469272519 705649974 707668051 938479553 354966881 619989459 177878295 846318151 502752962 646519603 742935519 865203900 358232497 541699014 245417016 282487385 608439053 923430550 392893785 885095222 769004142 902203089 788444124 977347372 419861502 823199160 885510517 919241396 392027419 412108490 451580246 466739967 749796479 781752346 556011266 867560019 474746607 546076445 396605418 511195398 794882321 809318696 489595925 724263577 69575022 872259340 348977261 816091460 538202698 607238934 869533241 915982414 871537657 914774076 322738651 640513242 89986298 387423468 834103001 881061610 695114733 751617224 658785791 976961678 271812340 533192914 416285584 799321848 933132409 978368463 205940278 674163269 452656824 723426011 871621641 959162611 521102676 914301308 871828583 899677279 704334443 792220869 368831160 619368227 764210694 947014460 757167141 957037200 113521040 883668607 905095481 955673990 142068728 700941722 720815094 881847361 249857410 994895533 782192047 795672611 393250998 953259160 752685935 825305415 388827830 705070129 244184570 449788002 29669144 707227969 374265714 632846932 162603881 785422807 84055999 767952670 614398753 730331258 295725197 341797134 596074863 886800323 669206673 836630961 292542276 771801263 714563569 774270413 979222570 995489261 251523402 830681607 809905100 883596448 3701015 467672724 429666592 774897975 26003657 323390885 598814894 884215862 574821050 881471441 619908803 973410145 353778075 659041898 808053740 812933617 883392973 884125748 255742330 261722146 100084313 358200580 933773348 942308766 976619032 997287666 8157951 668310171 65393091 663232909 903566621 965894063 603328171 642617922 997027908 997950337 538512547 787848944 457782712 514052693 94821811 163528427 734751756 861774502 161936648 482906312 13213379 198672231 71450392 492790636 551951210 648939327 195941667 567841870 813762596 960059309 611126575 921023257 26147945 58080803 597641645 991826166 584713819 681655539 924909318 993676266 960391379 991270104 474219401 877150438 156498211 538404967 527251981 575786072 208924325 512267525 828893521 910448801 780125975 993910319 104686104 449273025 374049825 792394187 912398263 927016900 211757912 741878982 781998920 943134751 328205490 530674873 100038236 514802305 779955476 866426757 289768539 598023954 916956939 951113691 393106641 660403724 81248177 870326319 592100794 660468864 98726140 255810817 519388138 578414805 690546055 842386079 4844923 337384504 681219023 989425147 171860416 808562882 431229622 594714073 786095729 938338640 409122952 558476666 179328462 347965965 336596048 366936313 409100351 814500361 714847469 738130427 210017062 803270541 709663562 796196690 884334903 986771126 980991240 981528960 15782955 626766987 109733097 319500418 622239216 846415811 115980718 809982202 596469146 995943701 721462557 889338882 627799827 942249492 33408283 601053368 655702005 686464748 932303560 957697532 602766682 836890675 547627543 639188116 537945496 794694102 358013301 475257526 469210267 541933831 904266404 906918862 726232942 938645386 777203946 921395641 388991958 873927311 661400066 874120122 692537130 998849679 296483802 779443450 525247552 729944675 16324097 175069673 361536261 588504246 339460563 969991214 63374451 712103957 690762055 951732993 441767662 479677133 170088090 414138268 503037584 768010755 99803477 123286140 301635377 785997965 808877082 986100348 825764516 865375204 326267283 454563332 2948078 605828887 946285010 999879741 378615116 744362735 186152820 385222749 417551476 555353778 60480979 260087844 624558518 931879482 707678868 990150859 562073727 984528386 309558508 542193709 32889678 325214560 33723590 169573617 648365155 706924531 691770246 790046695 623096688 983226341 364360151 492919942 565999925 845176683 905942277 972046177 219147363 296591357 403983462 541021398 710824087 965808759 159347917 261647186 149653968 444987807 72422693 756826275 230221814 673313076 447799107 478900276 929623134 994129943 882710582 957652410 682206168 987179734 679098543 835312206 501078929 804722341 92518186 252920965 550886159 717542361 778515144 798214602 468786436 548200438 101479883 861257378 598407756 913897544 900068363 959803017 880737741 951589811 672917695 892928288 800814618 912279574 722010966 781332770 934357647 966024863 551279105 923980895 275467538 486176121 627170325 944558679 413464024 463978732 124286201 829916599 166070421 323756107 553847775 848749694 184332038 295962207 173190359 749527201 802754665 965739559 731847110 739129875 508625443 598801264 68155133 850492493 968784270 987033661 78125160 518218417 194693688 449827000 541652054 883158795 39254989 694257723 478138820 692430138 149548706 702302252 736186083 886061170 636234466 908570448 806006470 944900408 39868329 545986637 827946381 897865925 694767560 720940878 772986579 990757678 370660794 677485652 309413670 908880605 111834217 742090851 112712647 697114350 96951514 276282320 839855376 984324095 260676858 507537404 572170148 691464979 720608400 761431156 815218128 909659986 163931256 179987728 579315773 966178747 982129019 987976903 454041092 802835337 554229751 713179367 362931089 496759611 250947621 300057960 415807524 584794588 57059125 254087424 999706153 999980136 297467845 510717953 51173842 992689552 288255933 382895037 310482249 902076727 16054659 937361469 490434628 722971751 528675950 598751498 200006689 903259281 948372547 968700109 646497629 988836549 40937679 147252366 343873587 848360461 122854834 566525940 424410824 502856183 939947183 978217264 714935909 855096982 937344239 985136213 296714549 929241315 445015108 618202324 966108336 968266369 872775273 922250459 755954206 894807199 42122839 410168211 950022911 979133672 246960283 706793638 430829511 822120351 117473101 643629422 79234441 730818676 48240377 190881859 487434333 807832697 951525998 974171745 774631700 813919587 530857303 945680822 323333451 689012917 259017064 817966529 320779024 332855819 45470948 911566940 764184191 914225338 36766506 520885206 897737799 909026161 209726168 226040495 963357659 973450947 911306002 989283240 875284649 944685854 105321423 460810777 770889945 820471723 993876733 994034196 695491401 697377208 149364669 347027148 199347120 884993045 967526253 997529927 650397428 666125465 928200720 997437847 789029504 993119470 446707820 994004463 550700747 727246330 637628589 788836223 940657699 955600833 340664050 605972132 701621496 873296630 122903504 345106003 991190891 992172116 984417256 992733440 159046069 613835936 310174418 579339586 563389429 793697016 426325190 944962787 655444979 835301693 438334870 863649152 673066287 942355245 353025329 860574764 488798180 635166543 846735933 930981755 774175880 931818497 927207852 984520824 369719114 400890291 67490071 556369144 45425801 607211252 28493381 777715953 10716498 111147332 993723276 998710090 474359127 484037793 388901561 641397210 144707777 377431330 723524024 879413618 620357179 868290839 907910885 972105317 799927503 876636543 889064556 891841112 564817937 741913802 728235517 948247716 484802771 489831595 54630966 727154135 663378850 697388919 354328104 794926204 32209901 683533560 582721151 859390842 928121943 949150315 390118696 670709266 501688272 690369746 658023969 735493878 441312496 558305495 929453133 933179327 765229110 994709244 261471085 449862709 937629887 987099256 878432031 951308485 916103162 928001291 152772454 388929849 939938412 966899422 534541019 766784344 260972590 927183643 983054827 996854415 550778773 760325977 644946858 943495931 556126655 990812510 855413221 914993170 281429894 399155218 394282076 837268995 180759048 458849120 810061485 897505040 185381211 764106975 293567510 468477489 209060890 601480708 919192805 924759183 13314153 839894997 889241693 978426530 868173813 988568320 416805533 522583672 892811273 946018530 920197636 983380443 261826001 360183048 422552664 980708441 698673535 705414614 288994962 995103924 738102558 838666511 903987551 990514724 843039827 864140394 793130503 951370165 113460507 632934995 218242558 776249766 697017895 741273875 648330352 877007297 719596225 808235554 577419591 679936966 603941100 731273536 350157726 703203076 327333884 513584777 56795651 385171629 660147326 897206552 17046219 616633500 798948839 868965157 269458740 788610677 888455238 922078150 503178686 848084432 635378384 645690335 10872512 41168637 173886810 609308803 144823821 585321156 524914362 733628234 904797013 938186312 442191599 874192087 584989025 656053506 289716969 991503600 584678699 662454931 733929742 873867339 652443386 930216757 313482460 429157476 903693373 969789662 125281053 356915201 572612789 724695297 853097981 976335363 707428986 933715695 533983685 687095398 419507632 548404100 442890636 651782835 979655587 989915381 272452479 305840243 692104932 815037294 124636882 461367060 52438571 460899331 770066189 806952447 205675015 352731143 337040080 802415815 833535662 954197598 889979925 931238350 406253436 830970565 201022657 661674967 989222817 999072402 532140345 542457711 502468534 691443243 515614884 647336009 754440162 948702833 497661843 723613378 965012847 977810312 611297507 811729020 965551000 976717513 288156729 514722890 627509693 944456166 763996496 930264067 871547168 944428413 467428349 986898235 926406063 972188150 900716561 974233483 260401872 451306497 930965484 986084895 349954188 897201531 705809860 799234620 671368694 956820163 503456186 765736591 801133849 936882511 160585722 806805360 442489265 880195781 199034505 309100588 872677120 951193979 320221431 991312749 432281686 568880381 242379288 424594222 826756121 918747441 764701010 766540959 320927479 918721132 39328819 932636610 410084882 886497067 947766787 967038232 302997148 873969154 47310657 878140330 61094930 908993706 994662835 996525907 510672783 698165053 468838326 956533946 160484578 291805812 634503281 884296606 427187618 699407930 927224 284327919 792606544 976259804 691473101 755998233 569163242 942656562 152419912 330255341 611386970 883953117 199997756 329054790 560580019 762005319 911983369 950829961 2425337 715432549 230295402 525757227 77005016 673027309 930851465 985886771 125321159 407040893 109856751 290440963 634481310 706748070 259058085 562946470 708044572 809838738 418756054 821030299 362857878 412949814 205357612 585413403 665302666 907512170 821558584 864963224 294699376 339798126 303385681 409544422 383875653 942219977 832179042 965566328 417649395 645937509 323090331 948340434 252346556 370274398 880703906 924378093 757053840 875000813 446679344 850378660 947306724 981752845 87938892 632145240 288108915 946555054 529490799 983045513 899851543 940129646 84991930 230715725 371550499 375894239 396839401 497485871 53125126 159511855 451942230 681293103 295019448 507286942 652309799 935827821 838241969 945274633 77600164 345515379 620689954 795798419 545512431 800287573 563741809 705752890 688041470 762753268 953992931 959025790 979745717 992592487 200768630 347627237 302050468 395125439 201082154 483627031 115694192 264928238 205822107 378761087 228402536 545017650 566281251 626106711 324499179 977067908 122119111 658147833 782247675 844700028 853768933 920302886 654040814 674330511 247279060 294609875 301354313 642761963 108032550 620279715 356385195 384769635 659814078 716815390 929361989 944917944 549680309 719617248 341091697 606725875 256305257 541887357 850452015 918095410 294489803 985490023 726966899 771008750 340180718 387304777 694637667 756319493 934146135 946441741 680197079 920317306 172104152 685238985 122795590 899283888 327845066 767578653 683412685 848447132 946837500 999089204 166806499 559194737 594603124 861503148 980609946 986832292 891388654 911486491 702677610 849097059 907035322 981019516 353008943 557958173 115704155 151275774 842069630 898093967 952935611 963040635 295810225 765527338 907423076 908412376 471183487 653928967 89010906 929135373 274926802 415743588 835505930 933016361 186846985 438008892 371639569 551832355 499037170 624076715 811735522 977332380 393741290 480921118 849308161 879150020 101254350 684018884 276423528 751767214 198833427 956533908 953554173 956496245 364365061 893147863 628721489 765493751 672046645 729801059 671862528 963898440 79228998 750481257 438661827 928248305 339396819 358565572 104375442 479410542 568931121 840891549 960429209 974678032 5326581 648746230 137913179 328399141 344418376 858112455 748848959 929146669 47059946 455768552 529034835 800256217 163623331 497784227 583023096 914754271 694722060 829108913 18530296 642147169 416375112 858738308 971872620 995237544 8303070 682552049 739175759 780777098 253971031 698391543 518206021 658350950 929334168 992786859 192795767 317978294 711037805 773981903 524252362 979875927 608762917 674524161 851574580 977013909 944334585 991761176 717970735 977550344 172212812 921162150 264113933 548922747 134928528 636757825 289976100 805953186 395537780 431711092 421121890 780467590 634570211 966694548 37496581 831194111 447482150 856101208 222299129 231488030 90476187 358095799 934349459 967525501 298582631 484168941 218041620 970998613 20775234 172643871 679819298 998577373 384445545 635029297 459177601 997691345 627686968 990266784 124210797 595443314 84864991 851930322 597662407 713599364 832282039 860634714 484821868 618505209 321758172 976055971 906927983 920534677 966685786 998855610 759833418 899081081 934824256 996437894 364884032 388153915 727395770 817975983 936185794 956095672 299310318 949358361 624851011 743768894 887302871 910722777 594937120 885093860 360707828 793706165 773725693 873117626 981412731 981950857 981968232 988478672 430920674 729310065 784415230 864446076 305786416 904137011 229426720 478780572 634121703 753524811 471585957 995158637 513754324 816445655 539087460 996371919 277466447 337554168 346901997 675495486 940281209 941463248 253698750 849298683 507819058 538243710 288840865 729029666 445972441 482759287 141423569 549603117 834418675 861398341 832157819 973768737 639738188 765804336 502920838 821873474 265952757 701321626 58248204 628606976 679300941 978550143 669336083 931588579 992248765 999805676 915505645 958297461 943097632 991625880 455973793 869044006 254029651 603192385 439769302 585899478 461802904 633589015 394151586 403802514 891809101 915714935 58481817 728897731 373034250 653632439 718248640 892292146 218199797 319314059 133650618 288947559 313664511 477153411 993112058 997296473 238296568 339854557 403821191 746776978 237200788 331968253 325576904 987311286 48905978 64566789 65892377 337591548 693639926 942160607 427296201 896564751 738358080 960520721 593370196 955586901 868611441 991921402 649771812 988825962 718508313 888129541 69205942 277019422 898912677 914667962 351464674 638564875 437599879 980793480 171714638 528168048 360873452 734835746 937731214 989244923 497721799 935865347 487835633 758066438 654420527 877474316 262366910 770243060 613587901 998002902 975871386 991575034 215204282 274562741 340142684 347676346 829452058 842545445 736780366 978986383 730466866 747136601 245333127 702933717 806688022 913991495 895643499 942055961 103592999 963978079 792531616 906860948 246870997 467347214 934263345 934841657 406884653 952628177 636828020 650636831 650432386 790234102 157275693 966328831 45807745 833372883 798317658 944102821 962946507 971062035 238851970 517062377 488038748 701603479 504063327 996724768 805668922 943458845 649332495 984835733 908283092 953205335 646093428 716323994 753007888 825222698 554372216 742568429 117254005 159940852 601022389 847744042 518562457 595680719 663230096 800287129 663893455 865541909 403453784 721725741 240913442 422923790 989885131 998632217 453910402 946621338 844852551 937695699 638799761 707977669 820105544 893087270 465848317 958554874 965468717 996843223 145382395 552528663 742054617 885690927 797858225 854240058 241870023 545462047 440437273 657676325 536279143 894510463 691654240 780748487 485504709 991331653 213566261 805449536 561724730 790775220 654929837 776584289 910196606 944580137 227735867 862665029 549201049 895760942 238312988 557315828 459339447 625249467 370566711 626203984 308837935 413212832 457948369 893675604 162341784 605591744 148671667 996967343 469895367 820375690 215804136 415241032 642509032 749894659 552261877 575141504 261627674 505847542 415708209 628212003 310989324 479040442 360751421 442786423 125731972 896770606 698952004 908389305 752724074 775473222 363323989 836581941 749052716 779173042 897422379 971361913 841088114 884121689 704522245 897504110 223719871 678332821 537166779 608227006 130579918 619953313 516735365 675568361 800343394 874641800 836116347 858040587 819129372 903426260 646021619 894659454 966356030 968287802 932294112 982876923 527430084 663139858 247199945 465154291 495950193 855726610 900604689 926363726 840317592 853375232 346224605 371390223 275000621 770222602 462563786 487462821 416017013 909557981 943662591 996342420 508505975 524882393 511802776 791978270 804521114 927251636 843308008 873827113 479004051 786643715 219336525 825007097 858577714 984678165 334052399 471429407 969677162 973187983 529125933 711138355 843082339 948326950 538131887 573903884 911217054 992900086 187795156 282687672 938299885 989946275 781304096 829608842 613233911 641482115 543261604 810888607 260310144 802701987 711812416 901499259 691651324 844127670 135311009 645989541 28012226 111592991 62194905 978473407 575357036 737843875 30434739 816953754 982760028 993531804 493153469 803887721 649748115 941455086 297422701 590095682 101401815 789308130 5416090 437506243 893497130 914174138 163041947 747360687 214308716 901960428 441184943 626502079 991494472 991984996 763125002 818560474 381644198 899935997 625540556 939254887 508545039 775079177 268357201 961730290 528750057 623529534 27588117 297281476 148979975 426158979 319881715 492446375 960678739 980385852 366465648 524058552 953188304 994515750 28941475 560323122 505953516 864127693 535849703 570718627 738507621 837649368 899556263 962801663 588666848 685304357 911184609 912573355 307461162 901833351 754103761 863147526 474836358 710990326 81039528 224993854 78197785 402188604 436131671 489408201 721264220 844001505 876639722 878498330 945483296 983800287 187562464 622009620 760595392 811278741 144228711 342952116 21838561 739900475 855848403 934770478 856355335 880011201 411774136 664890622 143810047 960629219 881815509 984847807 746971589 845992459 290322607 950262330 767685377 906499640 876857175 961011541 369062325 648813116 607075989 995077713 68836128 392560348 4922375 859672236 422345392 653270875 623667169 811455743 531927998 818663828 126780159 243901028 919808971 933859011 93115101 337380834 141381938 371558373 360622704 904824214 767454690 802417040 570457790 874735279 507176847 604248866 385634740 980595491 502048991 882560821 970850274 976585119 200948940 751811411 642020618 762987876 936808283 961641209 919549141 946337822 346274028 383787249 459451758 485696669 665914044 998505675 638885249 880472308 87970280 988429814 938686558 972661271 497341715 607210821 575774589 835290270 954743700 959304566 269385851 592375899 733197929 835247597 25885520 573338271 810528816 899229750 68998949 957539175 278190074 995853011 208773301 662595134 536779601 550896398 462047870 737247478 497375377 657000707 455553976 724884231 369614444 711759586 11963844 398301424 413979002 761787269 495496756 745643816 842808107 876282932 264112100 693087129 461624874 543146165 846703849 909364679 149669673 158452145 717423060 839096552 125608476 562661899 474495088 897184326 154053319 373060937 54895957 767337900 188756971 384876103 730730447 851858512 494064070 532979738 473455849 803025803 517660422 549643501 707551693 991632671 567542913 781438844 948172710 957229598 29837156 288449169 643430851 890514619 581440118 898249072 598767883 657921902 387671373 978655486 19210152 661454937 173970752 366597654 87066658 320300851 554716629 835769973 125236358 150887028 886987719 892048915 803278624 843853204 879053788 928728806 50961797 51231759 410391668 597621188 56323938 673836289 304296219 837882285 718195676 779476481 583007046 740092027 66537283 410310022 324760735 801884653 205097187 394200376 923027688 964042048 888912999 911878137 840915183 920241529 607716164 743475689 921444955 968955087 819248993 981310473 278268133 660207394 223734449 870553156 207264241 312311617 397748232 899338442 200036594 516234732 254591501 438558265 752386271 959733231 675342608 820337190 174631376 371536025 385774566 722926673 343112889 811213930 691107766 983674169 808592680 886832630 467509574 742325599 522855055 586315729 971390213 983696995 666355290 913187277 887434011 925866006 411600307 955932634 949481089 967400318 626030457 772318870 10079001 682681508 126518773 203539526 586273900 637773513 975829538 997990910 957961702 997034774 797200536 950910869 124687957 638851051 89368402 908960084 651770261 921968228 721914687 804532471 991220032 993377652 312059628 578161912 163813924 771926579 733866507 958248506 441532418 626876679 380228976 644365732 997330806 997986254 748347413 807143982 501070230 654105997 418278650 559323962 466849697 885507121 271638967 875012267 258365613 608479223 543001824 736766195 167490932 955342307 77142058 365882195 701968414 936397156 485371934 679794971 83150533 548004815 570320737 873719863 860313963 946963880 235895300 748674155 207256094 847164503 540627048 726034666 626536292 667075323 382370775 698074512 63902838 360224968 587024396 890073114 37596877 59438820 512744728 838333227 713800996 892082566 338100093 932211861 592976468 852818379 455751001 643511693 632225233 916418383 714684655 964118837 430508251 449129186 636684067 831980175 868249614 926772848 194538291 971710057 235127164 819702240 284060715 420510751 563550078 831467234 425482607 514433503 510981942 854187838 869112809 988451421 865597939 957598802 651009005 805678647 7924149 954758086 99880232 737278325 343968560 823557886 142425313 582273953 395080124 400830082 556439763 652540862 618963379 634349328 78679269 960081966 746064312 807217847 437737557 946807241 106600798 692070916 163919609 663472053 463384739 645036327 349855191 363547782 283501828 401486678 867747899 955838586 385128791 464423938 442718287 609256277 202022322 842389421 529922590 947463088 833011667 935087855 368018008 811348534 931394288 972399479 969990582 976392490 204675589 609964038 308221710 513458007 472438260 656272988 872786667 956020457 893772113 930166293 996941881 999060529 533918160 685425093 831406591 924722874 459379619 509393963 736084139 903210965 39332783 590895959 124710625 431930528 837432031 891216117 314387317 514619225 145427571 734880877 178424557 912433803 936423545 978048939 782426181 930165268 290347179 489392238 283271738 509104281 153924051 860892833 951883902 955823859 636577888 689080656 80680020 267868340 445193656 930675394 664268772 971041294 534175301 756596820 566763275 855866669 382964900 886264015 294645721 876634646 930011861 940010427 665384858 817911775 505770740 789709753 389137675 454892358 29657298 147859094 74907437 817798549 324053851 692362691 943663301 996461940 824951813 986397127 759352942 961515811 588451365 668675057 87147386 591106209 443843408 754120503 265593386 553766408 499584166 719585624 81688688 308628053 870177446 884210775 911664102 929184213 27895018 144801735 189028830 359380097 404377467 670373273 618146454 652561786 552933012 647690527 145989162 502400779 215915150 980468259 236986538 712733681 907837662 941292437 783231771 828664853 591821649 618999695 115648451 404888201 376103504 809798178 628467335 946800235 583098935 680361221 113558256 309429377 226099081 629024324 533476178 569183250 132386772 412818337 803513445 850450796 904043445 940830832 413021533 747891100 283309022 772925522 58996682 993840298 90400740 104080743 281217923 581953123 902359708 937690770 162515868 652577348 641645888 886858822 453025531 586709250 152720826 224286456 657976550 942841304 687109015 741127786 267890044 845080508 789604715 981543264 962166572 976858281 919501768 944068022 483633043 551829761 839114649 886577094 697460016 931563760 424124429 537818728 137461460 916886048 33908413 703156503 622442687 655428900 822467340 830099355 238592987 726986097 567683125 797999993 613446297 835326154 487361785 566390890 492956756 856167911 484598971 564370246 777175345 849106023 218964091 655676633 421442797 774481782 715767415 943894436 482645185 743998477 759572076 858490110 47881611 351414686 886491225 887027838 602218244 891878483 391340904 393801496 170888824 658026162 119139681 197603799 18838970 140319512 925547009 992644935 715494212 744975099 884328512 963980771 239159368 285855825 509096101 600866468 329237805 514215397 521480696 851934627 79118576 154998508 164101656 254031828 621846249 920236816 268639206 679347845 688256635 782112310 17759811 285958660 534321390 732220179 676220317 964119888 263893279 921811093 121704414 366030542 620723278 894376633 673068068 878107139 811007093 954122275 284863224 712107443 905475427 956874222 558948901 793319100 402992919 711847446 534914943 781270265 146760772 788127786 395189718 882261704 973963284 978712151 596100458 863717543 115980583 834559507 651421794 734593004 503470183 897487305 803807611 851170474 826395026 850960068 938083632 950419075 164905886 567247310 394271969 575945643 368088039 742070354 867820519 945861850 504107162 615751441 39422816 750813825 421661855 660296450 554622732 911135165 500772881 784906178 380958394 989096686 373061821 733915475 182223466 746210909 216371735 621589364 601888497 642411137 341186785 402413468 177459630 375562215 793177615 979520009 956091459 969031440 903328922 910433660 264864759 904912033 908583546 928596282 150986755 857289635 907865845 940682185 132985687 902280063 213520798 317508739 870782372 908020983 940190185 964012809 305433750 909346555 113980314 997924570 798673147 927127870 109277968 438363109 91097531 93698775 307671472 655963051 509838216 610703102 352714146 874966448 530515429 731368897 942850607 947932753 701976278 935129861 742608203 901187595 273961429 367242899 334619901 983644535 549891086 700488250 535532634 807206568 585452401 906529060 733808381 982133663 444263462 801855711 433650581 753499172 421190411 879818722 406948452 908719894 952785110 992470863 281572082 430630604 287223312 672328100 216606229 888575305 146771674 911759615 389375383 662980049 790870321 825081889 343176379 516648450 859788966 912406850 133056956 317186628 120798238 285560636 762498653 993902238 450158893 472010034 135106822 253658417 312231890 501023819 146302775 603264645 554836879 611440000 504752718 945273312 249523772 997368876 529085217 600396515 957935974 965953552 262136883 300941962 604692937 881145673 531259429 576221866 472477177 825906779 860760918 920367423 156772582 818056512 615158531 903271632 320713179 983531873 146573693 798491608 586314180 774718981 838253694 998219585 13652313 950164894 688183750 946005800 235842305 651543875 486040185 688198543 691281979 878187953 356435244 493643550 385131209 999776594 175822528 610288198 884215843 896636930 245642578 397231305 677815648 859643300 362886162 486514126 12059533 808773006 417842342 680601751 701178204 956762714 54049711 127882650 637858148 808663512 354046678 528851986 386247678 933480600 692713634 694942588 607358468 705975242 302442646 434363992 794062017 889587021 7371853 200335137 836756410 880651736 627532827 839303044 220180124 412491562 424554646 610706658 811012452 948419108 434533621 617206320 306804135 930623623 890904935 953661454 422989937 515535721 579594045 995083711 937863762 956056402 199249096 546109222 494942517 788872913 64557909 838298252 460303344 532653521 629055021 661174671 241122564 445883562 148134946 870794789 856398778 859614732 889210875 975211703 865564987 924863747 473277410 486225877 950386464 958744485 698157879 768686190 571101717 775577828 342391873 615660397 611128113 748028945 292616607 735133757 420988124 491856102 284062729 559102904 114516692 641309415 174291056 875958467 900901044 966598745 23843789 760706125 312869615 499732584 831524656 856879709 811904483 963127086 665546851 695215603 990165463 999991558 130020492 639295679 223763572 465395357 116411779 140260365 827056471 879707381 646631724 809053592 431762261 581303434 195831148 663956413 223426814 565895039 836835289 854716500 397036773 656827236 674537587 682922930 300711602 966603611 643906481 775589928 254145208 406570211 860724327 926022357 132431359 290023131 96042828 210726757 638787266 690677912 287767141 446637266 743762773 762991412 312662759 580806694 643684640 993668604 674774977 727906022 464125563 881329999 780737933 814372391 447971165 623693030 386206069 660055821 562692794 836832007 116330040 893821347 697281612 810806762 822660864 997896336 286915813 697785327 425272277 859698996 966005098 971958129 201645952 545405662 302639765 759688494 689548838 867071940 688757246 772845897 734780586 811705401 498531408 543025119 55877765 428697568 878572725 878727533 540210470 948307127 323026526 935083281 223431997 834714278 872324698 878940319 143037052 812401419 66604138 988480795 485861399 582294294 882556481 949516993 984390397 991894370 636558587 948428955 537950851 957295863 328722506 784045751 552448910 726687330 908579471 995234780 862652313 871829471 590766871 747155393 677830059 792031484 529185099 717545164 826184370 932085257 770497295 852726665 974098463 994317509 686731322 983955161 55584561 671932675 683747513 832939502 303890359 826148235 570755297 648989768 824126865 873324644 564976444 964147550 638314367 655812024 994773797 998155169 156788761 340307429 543341799 599018235 472973774 976688845 578251037 889318241 106718300 997353070 996465852 999171268 672399923 729191191 931810962 974356555 378932405 958221844 737613566 745367695 873347468 890342603 653869906 943505117 616645797 872758006 585855709 590375105 685935348 935571396 848727423 939972853 523956621 822817045 324447642 610489658 622905013 817244810 781728910 811154642 540242748 707943053 135264494 848186743 946843575 996001548 14012285 51401654 10963561 70804737 726393039 919991498 89016604 169913009 45472122 321179959 499911778 841142885 323331281 604107169 599559589 800699799 69690162 872017261 77826233 735497123 816903754 982451021 312308234 730410888 114445819 905776794 758658528 761797039 782287988 883728707 36936720 676785365 432966079 583135679 643312242 981931505 765188187 847625426 734730369 750199228 99264168 391819404 354252343 943384844 927499565 977335462 205204295 528285957 487528420 681474783 682507679 889708523 523912046 664639803 385196054 514893441 562130349 861324795 167454679 922163615 50549307 841666189 653229123 943256583 308464633 902180809 826598463 840711284 696184054 836833535 798407970 879279489 592925812 777167750 833391821 891469420 834790799 844363340 536146453 720444558 505804890 864379618 240157466 723183531 526017966 636572489 284974743 875155447 512200373 524769342 905342337 959033542 240100453 985727491 620661428 804227667 406387655 610071738 624963194 847972763 152845233 397704660 305261659 783601905 712584894 898763031 666258111 821936385 292159768 993768563 528602850 667715668 82809816 418304274 491989237 997587262 181315646 594446616 76330400 448725121 755945739 895253255 232058705 354341705 706452187 930715611 397658432 459130170 531983289 552193051 357207092 553746828 711278476 736164429 751962821 897314678 373640985 633595266 807981700 894204252 233147949 693357857 157235970 850871460 419326166 595432806 342182091 679302018 403628599 655707420 642371472 894864102 10219880 636772849 482941456 959131120 43043604 355783466 465462963 505890283 901324638 953125295 914509413 944556411 801440622 983696996 440777130 851029201 665462714 796938128 173176758 245754643 972018946 992742062 356979810 692837384 557702483 654587293 948817468 972494782 644204331 976783259 252875145 321465139 372224499 389113442 123903124 955145332 689329289 866023892 322571325 600112303 493463158 749612018 521543519 953725537 705017665 819406541 957663605 988780009 630532895 946546330 963098362 973994855 792288986 912553123 977503522 985003629 10839730 397713236 683204007 845070564 916002081 954086418 438203135 767491567 228999270 247972453 962479548 963161409 293985900 693667426 533549652 986479157 702597140 950208941 289535815 489057729 773390107 852447974 974834480 985230482 278519286 654518412 715314380 823885354 902145001 992781548 396193123 501966637 268289806 311724486 5691510 860697949 985789032 994284511 53814717 82559925 410570774 668826667 558496044 920293016 493359512 542506941 477953479 738119503 634984887 909162564 526232136 889612401 897315500 911024496 803214577 936595196 743827199 766161715 301376403 737013232 619634993 651477583 292839285 688584677 703419874 737616752 29849860 397695597 214659075 607031205 50257929 523492042 974232903 991659520 711781151 983576322 907522293 934021596 998703379 998895330 776356179 978160166 757282888 762080668 462126439 791433317 474317151 722094271 523155639 798652979 900817640 972927543 62273245 178343741 298676250 473450352 24284596 354524989 855525724 892226095 852631933 892249343 881734472 932743996 973438901 974670841 752141481 973597435 910457889 935770537 130326647 839496094 986821287 997872505 796323858 948066847 704567041 744941277 560232538 983545050 249067803 491098911 734467270 922970301 739808432 945134996 886974114 940575886 943284295 993191673 768641217 835489563 798007203 936055612 728655777 977861593 640637496 836626163 982232327 991356303 459226506 517775139 945008150 948184795 127671201 420601686 903944916 975091749 484928073 911819990 800474622 997582255 341117850 853426793 507690266 651786081 286130840 657250683 606647553 710479194 24497002 722295194 944379554 984769694 651384384 803087631 997088340 998608235 777395399 837324137 487771127 944467633 426741732 426759388 815697564 947744432 1615073 511425441 861906837 879988815 710663771 963665160 192915657 319346248 62567564 662712000 500964098 975650334 252186643 761683497 143742638 497554528 75295296 456128532 345379276 899791544 164181743 175427807 140419658 554440442 41321198 830666997 305732648 438300520 950895334 953945080 460167384 564826768 985034316 993006856 386275335 507014223 488328224 567056984 33759563 65061570 135194123 596302081 504112815 926042937 245537011 582723130 995448088 998738549 663290102 999367451 66950535 546910446 307953635 734209341 546124061 612823136 125575727 384604802 236341002 678611441 831389601 850166928 890340613 958090499 285979419 843689025 963711625 982565909 895574901 989862770 245753572 558061269 985760151 990289941 707283191 970124448 284896784 803788481 791838871 914324794 958548409 994771867 898070077 951925792 679942785 843427232 558877832 638637964 201099033 324068633 564396375 682397304 81071183 590354595 115054727 480576107 296954078 449435898 260332022 676279040 507631680 667900163 696504769 988953858 309657765 558758783 546528540 704252159 952114891 959686568 191751131 633635001 589911003 863082867 58892575 891724174 740700195 911454445 87403760 122628307 951591466 993612313 408601371 473259633 608478885 624951478 451982448 618003251 613562906 682573990 740872491 795964593 760312706 794445198 93172957 383248741 566329605 838233861 584115896 894025892 450279197 761723505 451225193 852263852 912657055 994793503 600564546 925546482 439885648 807390183 935852958 946325142 116345625 643017800 697848086 979748065 107018032 982881380 52781987 64210924 717899029 962841918 541755277 745645612 466814692 692664892 531484731 554987790 317059200 349247012 678564235 784914858 606507205 953194223 367408545 651862584 581841749 838783782 926029908 939261999 372643725 649345306 283275871 782275372 996754345 997302411 261066135 818897246 597896239 667353444 198178261 886559400 589159134 986885550 391535451 670523247 27238346 777382030 999137113 999680401 133631182 726436101 543806738 694347250 759789505 876030232 66800068 459957817 648130516 800736435 30872724 479657491 517330556 916702130 667357997 683262023 824548570 934719254 808924198 877587868 33420531 630039770 941644231 992610558 536329608 669358016 816494644 964532154 5163293 595310616 590238746 726236459 761802494 888490014 770441891 858098406 389971663 856538498 819320384 973468293 48044744 655828797 631681984 745049734 513896871 840647004 398519147 847150783 757145624 936882082 16558220 165627635 593192664 996396921 395471058 945800963 117197087 160926466 320887814 403493152 436340963 986745239 612136471 874830074 102645286 279548389 508842777 986406495 201463153 667941510 474369179 933034957 334602459 669346603 928580236 973057176 433643333 576400295 436997374 864495130 446044820 754086862 230127155 711333433 19989135 776896954 196106306 404122892 83023708 948522800 10779596 934757277 2818742 796287077 88903735 995008719 325495723 701521209 271829184 568276733 398812037 902503831 113889522 529953581 165643361 813000871 17250429 370764887 343027866 855650966 645525562 759837048 349213124 448898932 702976905 857013899 782687655 788450984 650662356 894175755 206373342 510729839 567716148 735006020 743429980 748699351 430166573 523104462 571062353 588301687 685414843 865163850 171164765 935258701 20864346 402161365 977019835 984801159 884563303 934549164 999467588 999809536 436780695 687379765 65002925 381867825 682807240 854288067 130882723 386759952 237632741 263514667 559569881 636913926 595962569 600512167 371443696 946848874 321692561 801733844 515280967 579697350 500981534 980585355 561362654 719717233 108050038 299893360 219547929 750751942 417471101 751116720 911984070 963711212 497366908 728215434 213145940 259160423 586302428 842372587 787604892 921597221 681865266 811182165 910723570 926147681 410322910 960782463 990827104 991096552 649867751 960444405 829766643 987448346 83431318 336902756 632402328 808869153 147915091 870563602 414551392 562341249 375158962 638754770 15917874 35521493 569394678 598977967 284763661 893015412 4877211 451422422 57675810 190651428 920955473 966792653 401972199 881021622 912319259 923059049 343952453 396679272 357368580 517449615 584313622 710609207 775492259 920320361 458726708 956455365 322956701 357012802 284643011 948618419 189548868 863765264 891830014 893270827 400013635 400505273 410094034 850985168 173674741 600336885 858487251 949507637 635782392 823834089 22063259 224046619 171186074 416876135 646240827 664485985 323744162 464549095 114615996 407816007 857592375 906362157 910265288 995752407 657104292 913112013 697216532 826447890 386920484 784050275 139772375 259001051 233364284 324720300 249311773 577785573 500017334 968500291 340414238 807634782 904661312 927842317 722023000 889046080 130293594 207530449 574247294 582552427 593022415 840896483 708975594 969687033 810368453 842909234 93292130 325896002 179782323 732079402 768680263 951385592 333679197 544491787 381274572 707142400 142931988 830018376 985762845 997018371 637184453 849704205 40820124 556471304 807068706 984034076 175614361 359553806 755777920 877274311 737621452 765892728 230039064 851747427 36632199 961370031 63398214 941120878 969943872 982975881 743995669 833567774 389111684 738073598 198833459 493787432 421367588 705456048 145294811 352998952 819387002 964385850 435904413 643032872 655560030 945467619 429707548 889224244 672106116 990989574 275396862 568036300 352715962 513514199 349566328 829085048 228079033 879496998 18564803 27124110 53632517 331438464 306990269 892445431 486263139 620093685 502068261 542496970 182942935 212491968 218976001 774459109 169353576 451504442 794272842 892075397 511673687 534935044 951186486 987335779 406538506 648679457 232742522 245525021 196190193 366028844 89809060 992003534 391833978 478263917 778525641 816734025 761217036 995483884 253223402 879982730 780027387 819732709 771160413 780943962 519328312 832977230 376962251 580309569 227708696 987501717 23697053 258203758 105605088 972931599 730201816 989817395 321732862 790139416 408996975 978889221 396369621 841402562 489841805 911272451 593803308 690020590 352191736 883650924 236517717 458252387 51929950 698691088 448126658 920069705 170855993 491255282 840043624 940381131 864475938 898619764 599152263 870830384 657375669 723232345 596504993 922981139 375199685 951923538 867621403 882379265 801301381 848273676 150215554 789341197 343772153 742707708 258556224 932767368 259279079 675161124 569706768 990766640 394363967 551961803 120331020 766078606 596391978 786955855 715706196 980926741 771982013 845972889 212077640 793408862 72867241 245879945 976196517 978317484 242098894 649322786 542615568 631595661 990497692 999662731 12379051 187720024 110363567 625601670 660710638 848076409 494115291 739422495 652013116 790101536 381340814 934188354 403784904 999062336 43783599 453849006 122891011 325489203 7170801 85787864 278430786 298066268 253575544 775472535 413020441 527082976 304518928 363130236 118776857 607668117 564565505 654195522 193794727 855982621 605404472 992918724 664015676 706508597 756739802 874346789 953444948 985911109 521716296 575299313 894726484 944673539 361161346 590381162 555250110 903338829 947819275 981923252 712611108 829138964 83709712 431668588 332151604 499375732 926427231 928305472 323284591 895526813 174614531 949003407 585054043 792758894 285906505 861318885 36799978 634837649 351912723 638108493 769345833 839380721 173336796 760256435 422017252 933840739 567004268 747440290 235909788 397368356 536816144 969886446 535743794 576176069 509116357 539884604 166149958 236644939 154571119 477029813 987628392 988679005 237863638 538200097 618122414 760004006 287915690 476887322 237854330 763390540 282712508 866125501 275412136 762916376 258849516 393319831 758957791 944491352 618613298 914593683 784548804 820863933 688014139 780159519 409706865 411571611 499801278 957450200 563281353 883354575 578967772 630613717 160699632 518843480 926759915 985094414 60909071 526113945 41019328 300843066 26392079 239718594 434001404 611376247 590910344 992976491 313302821 628462850 925423427 972613697 296781649 754708172 444969260 825324124 530767783 878661414 487765888 889540239 263029524 690495400 416707926 788413831 194541698 936961076 595657765 754193015 665965938 752478553 827451157 869473689 280392179 830686188 397263597 695768701 187846423 644206661 838388702 944631894 2613144 30635443 260174037 298154696 350570791 547691998 917151788 962404658 936720439 998352142 949431701 968967041 105798099 492257880 142525012 806569837 100753888 433825460 769800451 840030877 444852702 491172028 868723076 941943384 363752300 648760104 517658032 965687748 620225043 868410250 231741176 773287705 810657037 863034738 357773386 898953508 715434233 930274450 115692916 448068914 214075935 893340291 228357504 686924790 687336238 877301861 379408044 685370846 60588817 511824927 25359900 637776422 113407642 859473618 134606409 826195114 942599282 998514623 805104826 873612295 449352379 886285150 462706105 525736909 716112818 765526995 869963710 870088320 349804791 657956642 345884522 745323816 34806979 479761853 145003436 949192816 775121431 920381467 927813407 969712779 239594906 454074674 584081657 763340852 732028515 809161798 108409279 992244456 201403144 432010374 55324492 626110373 19179935 707336785 15903980 902039791 791216024 900435572 186734695 710537096 946376188 969051840 404544278 803584199 884908652 936732629 194803950 738312778 336538478 408400051 826169710 870022498 571640825 649460832 87690025 791942434 179885707 784846755 312348825 783225079 533793029 785659678 305528368 523444629 960940618 968157713 744279027 947906283 639969250 996659825 428085194 906562023 846026358 943526202 75338519 476288674 603683057 667546008 446621026 482277472 162263311 275521620 826813715 869669007 671338509 747085793 976926233 991679607 711498405 960148488 299025947 730728206 595798959 731962136 986708369 997422965 143562025 675473858 400364619 622515491 887334920 930235345 81084000 467952685 976762752 978239507 266908225 284857703 737071794 899323909 98280255 137151024 470030481 655917692 611197773 700687579 443294921 549848292 945727812 958254508 60787127 510372875 320201752 777738918 210712446 234045625 644307524 844361406 790899002 970255293 388132590 503624936 386804326 413159548 569661773 800587438 222532613 571961367 233979513 517535217 595549173 608936381 686297616 800900342 846001084 966020210 736247551 905689823 89959919 610498168 331014924 676563862 727481252 733870161 820001546 949806309 973124662 978028472 30647122 504449288 332385344 789990638 6010582 179321610 269319669 691129438 725086434 747264680 510742460 570569152 760458438 851674330 696485809 793949921 802474695 838342872 670685342 733499299 482650229 686598426 918873584 995436628 564404399 800977823 29343531 599805214 589141394 613518750 443482752 890848215 872001669 952403339 850529886 891879386 140804405 474958807 911262629 988474088 732843967 905053585 524912365 912270828 382189288 969146145 650006579 857476198 149737193 216651891 199772425 787432374 757783089 937393555 154245898 542693430 647560859 774780955 608388415 840666598 216431203 653718044 680473116 815054959 425551455 470590848 189186355 695038787 890015439 949678285 53627690 304279934 590076586 846058551 624173137 746211450 321771286 840248494 73412272 835570112 842764976 881453610 810563890 874266769 127048303 828289072 380055073 788009875 655404348 832870889 677744433 883962515 294509967 552831230 933828932 948314244 317242711 970024298 616240037 753529231 431608336 914763032 276499972 412553522 587751316 994810770 273257389 598757160 957428910 958700961 309694160 342344837 987599489 995337657 626697651 964528242 725121143 964871502 945718898 979346855 270720958 430506862 407788464 918633782 161648827 937825954 993690417 994106686 190716170 445114040 146412052 503936966 346269207 816986156 780811236 850658568 313141797 572172067 296883698 631745872 157811529 834042604 258420862 497695777 512191937 729788877 136347504 794107050 861797635 896971337 301557558 776881325 904342864 957975202 893571658 928755922 906782606 949973481 819009474 929309118 810558459 944802794 245111064 353559456 434544556 623150148 665751218 751416378 160181834 720200295 510135524 574904270 870159480 940074891 776909356 794492667 801922718 905091841 811271875 973553609 101913236 365970883 290073064 708194576 532146646 850252679 780515420 894762558 434341885 456648539 125789832 518742020 42073292 830836406 578263418 747284376 787036847 915548878 6470661 341472889 690492145 831447054 725330830 978644961 655776038 845017305 379258931 796628550 139279583 607681603 905151510 962133757 884574711 974664063 689280284 971485039 973566278 989888723 544384070 924975771 485292206 794089378 588738168 832650639 73273167 430049457 329302165 938573134 40282722 975850322 557382472 777118859 176289894 225220057 8020240 524307947 660618580 906026881 79233409 199500130 614318348 977097807 541562243 981702547 327363138 424581838 58952271 81161434 618831115 768436656 142728136 745846728 573242383 672893825 352900623 433639565 968933966 973289583 831430292 991701779 291953364 507553903 454351899 665611888 7053733 305520470 488514713 559626414 140615176 837833777 158428239 864891020 611765331 689934669 204217297 413249591 915019503 919119278 276056393 641574390 676151088 971399192 975844304 986185998 367607641 616685652 350171544 497863372 602647855 726161788 398608144 485709286 675385997 879977376 389832456 572548920 93271982 675668446 651434231 991920894 163189603 846260497 597295284 690358730 878438840 911094564 239873795 826770114 50079671 276728224 660161580 768166257 108031402 847229919 31120213 968358460 907041463 916688420 224080592 892435049 374553674 425822540 558848003 737765967 334277835 625528364 647519700 774635462 369891817 774992531 609755586 861970773 158452453 892494945 797401894 870070421 586384729 655567701 779741956 844985405 113068250 998603865 223063626 836292527 939511484 953581633 609285718 959801288 787121841 867938475 521371250 738661698 303176892 993735212 794741591 880992584 524197381 959534181 859366406 906649651 587768251 694103943 110070494 227667232 573664918 804081058 742852929 871766454 633047484 696697816 668256413 791004503 447839039 933566839 906160949 923661856 962475457 974759459 835152375 992358965 262979299 872400583 83487900 399326048 103836984 664353337 98861624 423911987 708459202 974902806 193353868 572624850 929084147 997352102 706341282 750982312 99754874 811618482 76698794 222623581 915241637 925500572 841661217 947548067 567666840 650723443 254162981 917564653 12902807 374409017 832138816 897529040 865814702 915768938 916593988 996995289 974302884 986783403 482268925 560090551 298339676 620024909 592738702 834498364 341071103 522976651 932295057 942017578 946719099 995465556 389056964 783294181 625652295 866676310 156253028 644565666 193716970 993703609 189171520 240147232 671671524 698004174 246722081 263415005 601500508 803830444 595899580 603851947 23620942 896973976 186741418 797566752 879303409 891905745 854563243 879937251 487130546 823856493 397848181 896779850 926513495 971349574 152590593 245926508 136085441 492386710 208027230 777261089 247772218 492724809 958294628 985047843 367082274 446576169 432353358 800770669 386935622 798457607 173027446 668130065 849552693 896344069 579213656 696831489 739211964 984994758 359982489 750304765 514804416 762307285 687004258 784650852 868614525 973457058 622438544 866690316 740384239 752097778 258593516 957224326 736481374 959890765 282642668 468842916 102343965 275268859 826344913 985044040 553157848 643055158 499368891 808186356 501431984 876218544 878286461 975181646 191610173 674803267 691382809 980483784 757572310 778960303 625239921 890123370 246733001 822219870 288973789 935321261 682565445 822725923 254440717 419509285 718907521 836266185 539181320 820726293 100105579 174720476 780771104 841058750 796282521 814656442 84203105 122640166 662195146 809612635 2424758 835855627 866792009 926900793 37880497 271388179 774939094 860784458 529691770 905970490 253813910 743875131 921176734 933818374 249208105 398417197 21282026 953530186 287064873 992102601 792493465 963263179 906930434 993567860 748013660 841092524 620948418 884316556 520746782 543720632 329077479 678984887 902501714 932047763 287049392 384629611 374309726 449504924 118078009 938170163 74645929 954023547 205651509 741708685 951707830 960190891 506634853 859120805 423441437 780091791 102636095 481715410 341331977 791075375 225757896 443520366 525402291 774133494 323303467 410756649 986086553 986599338 55091436 176256609 459091636 545106866 150082459 581595059 831841376 914975766 895463743 930351210 769473039 788845833 293808837 959487514 772660929 846810964 128022998 794275910 308148106 559488444 192647505 887511980 970777659 977211835 188679401 754694356 431746670 810841525 388580883 928639146 128564867 744911609 588518577 798324680 546458187 614864000 640837310 997849310 128116312 715650669 652725374 741972567 950667613 956743923 929813312 954050755 696209310 848911448 363883076 375887779 539060376 847204215 589071295 935285903 286772479 344634969 187736645 927589254 765081379 914232200 788237017 946566711 339225997 769532757 783542967 965344897 171719961 442852350 257376807 319834292 645670564 801446043 844547189 957270458 92353258 386508732 704973124 949936788 822779468 978041385 243746091 560237288 603348065 739552056 623969460 749433941 218290162 799260130 557337243 848942873 390505369 821575322 81377436 816442397 792658242 851963016 266135243 804307936 405545941 761930223 68673448 120297305 199415098 842389864 127065689 163251177 17056143 54180939 498983505 913704376 584112361 895604412 496953017 849575258 738713342 932582101 664503424 804355283 146794574 605169830 310322285 518295577 446967602 915004098 753990822 910847772 575600803 866803671 102867468 947086159 267217871 959872089 554306309 680790321 762695208 860122329 940057812 980398613 38002044 355398444 132173907 499007233 344258631 759891446 382056511 930849048 187171951 751054628 210065383 374784228 806282347 807860581 932503383 940977043 574145753 711904548 222682313 815289500 38016285 211492776 990351204 998130716 363064432 447618577 174291159 229342804 35860679 929826931 222006794 705318861 637009413 880616416 262172347 721787655 557851866 698873048 837148974 878900767 257883226 712479122 789029788 926094354 723296849 964105957 55932227 378140722 815365293 821790870 218059049 823934275 298613026 712439528 319504295 981296292 678470777 881236035 86882116 955861171 557676975 753832094 332837291 522140232 362413494 749435072 962071506 985331844 258070746 291832585 450842447 617300436 574062754 733269444 802563856 980736315 342919767 835142627 651025823 809757919 391877860 938167204 811549222 913939310 98934654 737212917 275964710 707616622 989394540 998764136 708644326 818953261 1691186 339552490 415192855 770990992 266810903 510881066 766096983 890290849 744196222 898275082 354665434 579762235 616037443 834383878 686113787 984887098 618235364 624117075 193448786 400961806 633139174 840531599 21480208 701313660 237945734 996325244 14616010 814588067 386389336 517395890 583169190 598109417 448735229 827960425 61918156 591023249 111850513 865539506 274829709 469167706 367219654 901333975 135708422 959359504 758985029 867366607 746193333 786157618 225481882 502775736 495763564 513025852 240136679 241589555 262435257 483782312 525147050 838470913 387134909 642194239 291202388 934167942 686262682 713854657 879715115 884985165 829430915 969863265 521768611 861408305 229462814 318617619 949542748 984419744 910755139 971714917 713582889 944184932 745857634 819393383 525230298 736448707 382602171 570343504 506693996 930408977 88308435 823775079 754633894 774919766 365344881 641552449 601438596 795780854 426195425 778549333 216162017 709416735 699309245 810611852 527276782 838221980 404624413 417627994 993643253 995509386 871390880 882834883 812796198 832751550 834782189 836668906 280316369 388764884 167786600 522744501 445584795 472755878 172258231 240960640 379733502 779943165 228495113 618130031 825264271 879392073 666322067 827870056 611021268 925375133 960695793 987261174 161014156 325307260 755121851 950545841 74903384 372093936 54240255 813239829 302915951 670006428 392656555 749120577 129321248 709828872 846918805 937709402 345236241 993597634 362795071 827138411 673941964 695827049 738860868 931761691 359247331 838467408 352423490 773279009 449782312 643585007 19372310 731594861 454187416 619278922 546698233 638616904 516887015 786224243 105077868 153553999 681976277 746302086 509106210 592221439 573237422 637530185 184518282 923453990 757033563 772717375 851660759 968761047 625715834 934763816 774285394 883854562 192445246 436892043 625631230 966623877 11994525 800692481 274057012 988855298 252340861 566976093 363371975 934117314 706373858 851460502 571118594 854886433 835288187 927892363 811918037 950402958 608931795 967262550 277450940 894009676 602207233 882216769 769745523 794125000 773759200 960821980 57029107 811846405 5310574 834435528 92029674 929617417 25420774 771484909 679280029 940235855 911985157 951795706 343446253 488035670 675560627 693241400 723947054 724944409 642913300 768429538 591454223 979510862 553981590 603787672 42202260 739659621 229941730 707740893 149921840 559626156 492039302 875189978 415321819 850178298 184916667 274144333 922939902 976235399 870389851 984769281 322592386 685970625 806029945 829422373 157606761 353224544 379117283 511471713 160860990 705584579 895645330 990879482 500241012 602314963 940765767 964611143 8144695 503705289 698851924 907592162 608681485 728654347 720547823 958546475 5233075 971046706 677449989 748268122 331413560 924871089 796454037 879248076 592197902 605349273 77089779 97156663 901223446 948267397 513959947 878473947 75723804 753778473 631832737 820231258 44888143 537665705 615842984 969696143 352174984 569106009 992496948 997727791 474453298 654330982 537741093 592663951 384448069 762567397 83155565 614289205 292885391 467261749 272802671 973127003 810748838 952175156 182187251 434201240 714028426 830406096 203087205 348532664 889200003 950255967 431432710 469404728 882159233 900162424 412200306 634489183 355480320 653939378 47311833 470822753 270909882 880658569 753792059 815968731 312160792 732726345 891975744 990369419 264666934 406297717 822341757 920556302 432168581 676005657 880625796 964128956 730664947 988184931 430456449 532926660 583836642 719079725 211822763 532470496 320402619 759731041 97662615 301115052 465304168 723686045 911953065 948512333 925262261 956939422 93256083 582904819 843871660 857661315 294335085 573610492 743712375 950072427 800866835 867444703 993244340 999660382 991282158 996396307 693353391 792088429 134188017 484876469 390957867 951949971 881516572 900575030 805194359 953690204 329636228 516216939 22376728 456403968 183511577 862462947 401512600 893767904 959604508 993699002 484034480 954314821 356998175 579542980 366129084 899423198 348362699 403489579 115168511 770262443 361082092 726871048 310515080 713610977 354667997 585833051 759853775 917123338 189415588 428328337 82148116 956623150 518785458 994985077 556279044 702809111 228024676 342410827 396373559 891130852 175268526 245935640 40639925 991626685 59404678 866938111 841125537 878367530 76436233 100239856 503344183 970369826 263068171 765084679 868759995 947246827 179951703 852608602 36186020 884262732 15057773 482044533 674670694 680509378 710547321 736545268 335060637 623705064 761926953 928535331 540519173 641229513 150656939 554326188 295229950 460512145 303118171 947957969 157850250 901173181 665218596 889423774 247005942 295597984 467457005 903165394 681067576 904626341 759872812 977364334 484576154 900832736 959672690 978878628 353895761 500700551 522121973 602656626 929263554 978835597 732598272 990574812 554729776 671940412 948210372 979766074 620457470 825839639 755716589 978241116 418008042 799766268 94428444 128804153 748190747 813217468 190670565 653825501 256608713 380648735 245472045 529696000 41795648 362196976 507191442 746823076 448272294 564097151 117848968 779730328 740233697 945526159 715185733 843898129 301254324 666677225 895657656 971663520 365113255 521838885 702145647 803519829 503611170 815174243 364266731 856005765 130557159 712744249 607564083 616636747 560667980 780222258 94180961 611331495 57574001 391315952 911149635 972608447 925567456 983788756 815887279 993464285 418908493 624178738 2602277 193390942 963977063 966039926 191100380 957222313 227383170 756109627 808812089 831967986 978963224 981623719 395894054 782167384 889198055 889857673 164931074 510533413 720226753 780702777 337382009 487240132 691962228 954803699 886309669 942053236 761938547 782717119 171970290 230826668 910757374 995617551 345809301 730533119 8366844 572485707 104207759 630269043 367770073 636162620 973301545 975761709 21388102 870767093 984272178 984722904 312941661 739039203 722856835 852819302 406926982 841287283 768771913 878076931 927455920 959104740 691722969 956150625 752022861 925407933 82100515 519870986 316623442 369095923 355871444 701821743 786656062 929838960 438575284 543853067 58070142 977670420 4326980 183845425 594490989 799163577 546817970 744034318 346017694 849993995 994249095 997963974 354551741 435420868 33073770 959186206 741902702 770030824 594303042 608566037 762557573 853364018 990334715 999789284 491985236 654232010 236660374 357170784 783440179 916648937 98718275 282646692 147340302 248387221 73400459 351434612 996531042 997024868 787039942 869141816 449311548 945939113 439365728 504337971 66392137 951201876 975198272 981408568 738833994 755214299 272311094 783132967 575705407 753839831 203382169 746460858 803066616 966031841 949452903 990058871 105873488 845315249 75127969 512870118 146312299 736490067 685147814 826196664 390462106 781765522 27448983 765422375 64708379 909157265 794865792 992594121 917344424 947174611 161959820 702621495 328967131 977114958 875157163 967519373 552434743 993016174 899812128 907163217 90487023 445824615 779542491 926150338 137220284 951761156 799484888 991432672 245938906 804816437 690555279 748447479 834436414 870086822 496637749 801583338 657870945 824939866 831567209 928745263 555225508 667483187 287192532 760036033 60716739 470431731 740405014 741547816 462598471 891508883 469772260 550608735 743880545 875939237 117921849 286960346 189323188 803310784 299533343 780597870 789882550 887159194 172713298 275927129 206849327 385013846 587414395 974034892 464531630 827711589 617976997 980511802 352971035 953101771 419214574 448985893 297316232 729666732 813409526 832158883 494416083 755807939 5643972 624613337 70496561 493131069 327584408 815957327 825966287 847926168 548075442 721197962 460634270 941909377 529316245 726639978 346649422 979943466 383021302 938547477 99533170 461001871 592963119 756179094 140182900 591985897 427159902 960409869 496331770 981622451 259253696 850265297 816572289 840131646 58831156 332400840 286324187 523018847 602349304 665476145 664495911 796189003 286407859 517953600 851185415 996555509 914451717 994183560 343716965 430585863 635204345 692738014 129203336 568467761 147546534 544646907 947419577 955125977 52244048 115940416 419258597 842909687 768285168 858198459 618943986 645867093 126098080 131879283 197597356 355874869 577117068 728800255 508358794 917903505 11634278 983685007 968574541 981564473 493859192 552607711 995452590 995555976 25394930 92283061 534170649 641906839 181170539 193629104 333599754 972770608 261102348 333483857 682011580 851661823 489873628 881743218 806527182 821225213 828258214 931432978 430014173 489126206 489928208 654492222 149873720 911248975 7617514 958951556 675157629 724045519 383903117 618397427 172669686 753602741 246131115 380921878 308290109 514408446 895975719 946527597 961740787 976801066 17680031 526369007 136485146 920206436 654483132 921220309 800771310 854244317 781886289 812420350 418008192 989727739 686312118 740306277 217202924 362078242 937994901 958400512 113793659 390817345 938773600 976189768 866631612 981824969 627994746 681883389 155179408 293762449 380124396 942559889 590115181 848282315 638138168 903956791 628431498 953781306 999154834 999435650 160523288 429238337 922440911 933272725 300586240 426383839 948433380 951928462 180658153 907415437 658991445 773538775 709437384 776456190 887049915 914190380 67351655 968917360 201262852 694099950 958293052 984914674 784686704 829631366 828335270 858261473 525594415 853847276 887416807 921963925 164553870 628803312 120970462 429409631 75068080 252239453 870396879 871495958 803650169 815898236 629368885 677861950 381341695 636578329 502478739 819405654 848065534 859540044 234144783 689141400 393246661 768986291 614880152 779803115 998271215 999170209 326279353 601323462 768683365 916115486 423168846 792767131 953607087 988408530 141638293 399479610 908871433 941091474 22322217 201571657 160963086 469096557 397496845 723948164 805112976 889966428 8755096 26417840 213371048 935110059 865038144 877372784 997743760 998071999 662769045 924375299 523039630 724838982 629721642 715438756 42070831 865222168 265327639 372391894 606845888 897913272 926576512 934234733 775317196 840518604 833254184 860101679 183189387 739820302 520621866 661704959 992689622 999207346 807206237 843698282 697616557 838896171 232293350 272669785 146226888 507442996 517266300 997933545 116128937 539295366 482125642 998345291 334298857 768514445 55242583 296736187 347209115 556983616 745089011 830952111 952246104 983172809 578942549 938827299 309498380 627818621 801044822 829962955 332168244 603648426 74566611 871620742 187839114 317695657 59134193 123744472 233355788 468414698 547094689 929694832 752883298 776449113 301228387 803172506 51016549 637861904 390484945 897929612 603186304 655857855 757782044 997938943 891513144 908616533 712616179 721367383 285693172 980804453 869316460 895366031 54547811 96594435 280668649 944553176 487854081 982507393 79257476 347253003 319499897 532578870 669767625 855879771 516004798 714139101 177614510 677938296 720457409 912822348 142673785 969099579 899558705 917243375 634798030 705905932 118666811 965318501 575262163 805071143 881384992 928748260 772454012 777936233 256466541 663737489 552619178 861733452 8309421 538759650 365245817 460746816 595132943 825651519 881230002 936458480 639261491 862596378 212584655 284813319 961067075 973511647 827140520 918190814 629265404 682574488 2595658 377710132 287982624 401029149 191076424 592392764 969189059 973487253 88367765 832869250 655187475 998592104 7144043 603525237 296988837 680740841 603599272 771544464 294660145 308929592 297854658 877720818 322259978 567872945 120753046 678170149 481642133 576065102 783058564 995059335 793996471 859918258 682880253 716111338 329452486 367241223 636685149 673148906 308701513 767305052 924973334 950330296 178942406 638363957 489878042 524443785 610082025 757013548 959287201 969780606 945460134 963546564 322936245 874754331 820940051 962324083 287906416 960917823 270481536 551471500 822485198 972464832 775046722 950213697 270222016 641019253 794457865 970980527 2155767 819976715 22078700 745557814 233487090 452512447 427679931 655157939 954153761 997203155 38891608 450489762 601676952 647990919 929316672 987855088 61975178 777032567 654361365 866396642 737460106 773488478 331231443 511566160 834479645 857955625 735864341 849541097 907480310 968046317 442905026 460580074 869995841 969832798 752067640 916003504 94002504 271431575 512610958 769261500 730014975 965532618 347948422 881878310 108528247 449912177 901632092 912039626 534962952 584864830 67653741 898690982 821575369 821993985 277451395 385699246 758851037 901537678 775836388 981319984 40571154 143723001 324055039 327589701 959911559 987798388 935840316 936045916 259291836 463308737 439544546 453881170 708344736 838644850 90767334 709643703 814609177 940383792 620714950 709899786 799523118 811672196 118685237 852343744 103607463 238603040 131150396 198011337 16284503 833844847 781742772 948993227 264159519 467426905 962730708 989465567 645966873 875259620 80721920 921958526 447777018 703381970 442872733 889462076 707455876 932042055 719094347 985636313 465516993 488761101 336740780 729695530 543804421 961518324 700441114 738505454 539402562 832351466 404670004 504497070 576540104 715801842 843095397 967791644 543775467 928309079 812278642 973696136 446286484 446559580 735922826 884837496 407088095 483317506 586468069 657085927 330267252 768615076 5533375 923522050 934015538 999742701 154817096 485224945 361738724 835554248 583160307 902344086 269222071 677915328 92585847 318079560 517159294 557468058 127677366 597534977 756454057 807261594 541966713 932153899 184246370 637264993 670228526 819077789 949233570 953630072 201998642 370807937 312396846 816299403 312537068 918142309 611912596 908440409 800452990 964268566 518145726 574645781 381202220 461358605 83665242 437700602 636592880 886876382 563629772 575176778 403400243 884252297 506382884 824741232 508657559 843053670 981677688 986956648 191624458 741841041 996396317 997745076 470130244 710150917 526787308 970089985 933909991 961971994 526620122 943007156 319471781 467073917 972059837 994857112 373841426 686678280 944137076 989834546 63348595 570499242 36202737 316908056 24603952 284391273 875724775 887115412 388267255 652568272 363937913 526231964 568405274 612052409 858116018 931864498 629159201 913922031 192572076 955721778 864743018 978133919 53591393 101544711 893118459 908673909 104373740 887020261 698813543 799080678 251642041 529685859 743513707 783069459 106549653 330193737 857467089 898981716 140130561 539535580 63189843 716824685 383707721 939468728 587210294 603615881 871011249 911032927 732262725 831544731 888293637 915018509 400340815 404340576 548938517 554638740 896775764 991957571 385245197 719732333 201600977 919229323 64313660 208882284 861392889 890094290 872257170 917190007 263983246 596580619 687256046 736377943 501444009 817421780 303011863 474637064 520564592 797906318 251779644 643818530 406155862 440598559 73541349 166474075 841063033 887153513 678208658 964763538 820794918 880141478 481166279 794797334 225917845 555442265 860658741 909925477 990307295 996319785 55519918 639994340 67511399 679910811 103078442 731304177 149830196 507053625 898100647 928848315 251198990 490759213 536235532 860612827 396281316 573392963 620221481 999559403 633280522 835481458 713995183 742475517 445608413 541311253 795753085 898884741 836690675 896298367 987003776 998778195 62747262 704339032 792475268 927736183 929779776 938986938 663571108 928108533 902073367 925471056 369431019 530007113 128434645 981420128 123283933 989582952 741477749 975610259 286145139 830259166 444758693 783215872 621846619 621906216 176364090 501160963 970332511 972005613 373969077 709626780 313962227 660944544 479590556 661780271 63812322 227502644 761347286 953574346 260478008 671645840 144149416 332492296 397096158 774478023 177964788 358639007 957248173 970212593 167894941 587094111 938714083 949964756 828755009 969873440 600108561 861194485 641174976 752755246 253567400 346339698 338416733 940510282 148994300 360205961 431426543 911513631 997470773 999886621 469316487 870480981 575665224 709644426 201735132 835116877 108649490 557888141 716176784 865734411 632473958 805198994 772123513 865968430 735951959 905041764 429894872 550757680 177264196 291544356 371247700 655682495 179796619 357612201 146342906 931823100 493033307 961072184 767690804 809029274 219428128 615730176 216367629 322507303 761124919 817186367 633376230 688081124 332501561 649530066 677967282 697005971 144692296 211999011 892247854 942087727 774642544 895848164 275715111 822226996 742966147 929049127 234314270 389008643 392224452 568450639 739261392 915980382 369021281 608733912 191647164 440362605 115020952 147796846 569429981 666087927 770921960 779271258 41394676 845496873 855975569 935482847 456633923 504689584 748625289 797213950 836479140 838805859 513202424 944204091 403799196 814506001 346004592 866906353 826769630 891013747 582989052 862855298 529317953 623279926 921496180 975957225 606506703 803462861 829321422 935096811 206392004 215479570 478410234 897042811 860092969 937549836 329758126 664450508 764969637 856269755 367112930 672179674 935656619 940331610 378990617 739309404 698621357 779797643 672358256 997534073 934526874 983381228 891254538 976900035 126551820 797187326 200271470 334311022 518909757 649680710 261602877 840929301 989705803 995249958 509565461 967685274 959338284 961121158 696975617 823239926 613010037 680501286 568407699 908750088 855180474 888147947 961240624 965935838 534465347 602472014 184838386 466881057 418362033 629723552 73271852 620534909 214890657 363396124 839266951 905809151 937442179 985904295 453735249 932995602 874687393 901708528 321738271 416267278 657711070 965836958 740264373 771518974 905195172 907108249 196652192 251727015 834689886 997919105 202016405 698424427 805404194 975326612 767883672 789917245 854669175 936573897 523206315 630577435 73045847 393354045 374391324 738861237 112940821 347643801 783245878 913248076 144272662 442237604 691120164 814958548 733508795 866456379 193382623 896596946 146990263 961463332 540803131 912705221 38777440 263082266 308266030 681705092 451324481 549062595 295786443 492952774 791935356 902741509 449624968 789111939 803658376 812081624 761078548 925001458 400182556 591725481 880532913 960480041 734706845 995108995 999070089 999228923 901919888 926337008 156553087 591577609 796676351 815043986 850444666 871036360 671454049 751649862 932880908 982838680 265250771 913956394 634837666 841384135 463775281 845581546 722184058 879245766 465324868 679316551 797792046 895279293 759236774 894175254 254966697 915120672 233969876 822534185 485288805 707816011 940045077 945460588 213634982 453265202 290802987 969046065 520526660 609338398 368485188 878941090 325857832 967926996 118077968 191486033 585448554 961732071 84464593 886642316 824012381 844823880 325698129 764194159 268500585 985624151 682221599 991246224 439456733 658701268 587608619 976631851 295164913 511523019 839206417 849949505 960593904 974069878 353631924 569896770 950902475 990665631 775040818 817676203 103430813 477540117 190315169 716636201 804640150 888019636 137421279 797291926 706476847 816053739 947765389 998404092 594618794 846906111 674041736 861282261 614071937 768272592 869149507 914138196 904361129 974340774 348665561 471798140 702132522 726085309 967621861 982273152 969804242 996495590 14955289 395572924 840279141 870558338 718588774 725399959 691632081 885117825 629472561 833726187 244077973 482892543 493073365 884375601 438278142 602103363 280630678 283529369 771401988 995052063 430750715 990024931 372931044 825002779 293628483 475948573 1485978 584581083 271088424 851424766 520471664 800428911 744007953 817395372 291528993 430971290 325724675 353544365 689234029 973900422 75925766 94773115 747771996 814683895 354413255 496004445 295865003 699599986 4429618 566582766 546437013 584577239 381017514 626973392 545530238 571923573 32654671 739707764 348682572 563701905 319531797 932661529 326400637 720540781 132763267 584328206 646531440 886737219 87346273 702824249 987955133 990113357 681191838 745631914 891563301 954151241 426361744 854502349 46305367 796476529 640184741 656938377 717003652 881023270 614913285 698277152 956496102 974416800 753815436 829814698 847522356 960040750 3260073 70890757 476843792 513142808 606863906 839230651 251113111 635540845 288951687 506217845 570741955 967878470 37327618 973135260 927430757 969254565 527984822 541337297 757008674 769223093 329871184 511433870 899122829 936132708 532016122 732972089 208276840 426989925 299328265 465014404 175781361 979471142 613013444 768640468 806439072 974417072 682847588 956186925 314600348 753758223 105033105 215644123 627038421 864613185 587686622 781791082 726382221 907630288 607510914 986697817 763660314 816494529 670700249 843803173 66049647 301757014 75859355 760324167 943049530 946589747 203265325 917792936 374126928 435105515 580764076 817311963 583245921 811688325 924787436 982768923 75333760 882028971 119797919 431114308 99815696 292586441 358264022 495156061 514721608 614952058 249741895 690754944 164854340 290025688 601562796 911810606 411437309 692229970 471544066 857449127 954734668 991176587 565735277 817120426 21264371 203544116 823250577 980301218 261558053 556059989 293110117 706033823 368207104 748260440 667534505 714249796 200991172 724395217 352604216 703958873 774114868 977214757 983711923 997890637 499733134 810980252 140224335 391685924 227778431 490861230 795198215 871843634 800585993 892758883 65041922 377474507 986643982 994658114 374100924 807718312 441097751 987040798 619216299 794725928 756972218 962967326 761422458 820912184 40470339 87877278 114356430 283225700 805368219 976435036 577327319 621738062 959546041 982717129 485038736 666035206 556297651 755072155 893761265 969286760 674330579 783607680 606937594 641323995 739172375 836648845 887284353 991673075 17162701 748224226 733722185 891314463 349330653 448344806 354098040 599148797 738136853 876317654 414788910 574071080 290619975 958171161 70916692 851955402 969514639 995397294 667078507 856580300 294103505 506285784 431959588 898052191 23412548 505655105 922214251 952683781 162091600 191294574 625621266 978104551 381089258 572869680 720414537 930507876 938209510 956447019 774800879 823119125 43563603 999857439 568861730 720504175 123590231 959829676 923138542 996410011 822702745 978045659 817176506 928487924 680309436 999291969 512115997 656456295 867705566 968473565 56708388 172749674 929745312 951343951 408447870 781117584 492446632 605283876 568930117 735217267 619644430 913819920 172406742 835330704 584490957 618753389 222788850 481036694 100527946 699694709 48858925 306138445 87598257 453739371 334742025 682954301 252983028 855831580 465948261 964072819 916366910 996063664 206564072 257338729 485311965 587621029 323108937 343306814 793776968 987590835 935866725 986845736 463228023 983135278 779045426 862009693 413884559 794872346 103282417 700549219 386923352 506477200 575722599 910747250 823983594 893871903 504496201 625730688 335373322 946396132 657106318 774355899 776578769 853759431 189900125 626754295 487974430 841300606 677106425 863350063 632840999 912425171 538184861 833651760 153093142 470707497 952235131 973178136 192522914 639389996 724275853 949347657 117460203 672348953 897210638 956245441 193600073 376089073 9802645 615455543 630175765 953045812 20735846 889823896 392037168 759389618 180119629 223962666 510619365 918600570 912339830 976014164 288727235 707827422 334517150 599216402 304390775 352447247 888309438 935704471 428182576 965210730 942233630 953678280 962021707 985460426 73489169 703744563 189741455 980369013 960430958 961739546 383632965 465922048 942917994 948385372 298902231 512899276 458930262 738655226 656586189 711551673 756348522 963677562 886947587 948225527 970291949 984507958 993211598 999077888 380796604 532671120 118868190 342785065 287790922 886101350 253195930 660621946 889696843 971102475 123666796 971687601 511256094 651374085 650500178 833228436 277967033 309432181 320074508 540236550 569027586 617398058 488336518 674926435 856944597 917936459 505464101 622361931 629267172 803274657 110741991 485494687 560822779 711561247 102574442 156610842 653150882 861055426 73333307 896731786 124753374 889273843 934340846 975072700 385649169 430760683 616695346 854070500 164826872 240408549 875537271 887920462 762569465 853748860 661501175 843638151 30917136 204983502 644872360 995158088 804541614 986858322 756420607 817880483 973621967 973636939 478892358 947093189 955638965 991067157 588941710 770917426 182868806 660742545 768894572 975239959 49382865 899524038 515316135 556450841 663622248 908557544 186158692 310385891 556912750 906191073 225712030 430209807 745285850 967698695 855192513 919576636 990920946 997552829 329101056 519544666 640680546 947022446 958745758 964729762 567532798 822850676 368128174 432709560 241286964 978447308 669030975 903132226 104008707 989440952 699291627 777325698 568592388 852023420 10695302 724693053 904208937 958098505 890425055 895510573 285857990 492740966 844598721 999796375 486127314 972547360 732925328 737127331 127932479 745922276 590165560 808814521 876478828 903842506 798343740 975853373 324933424 488953244 642592619 775927173 128914594 674736530 434627670 921095495 737974030 921857901 741742457 744072667 622634354 842543862 870556843 901412140 647329695 907621040 986899894 998431734 372355207 830499486 130128994 951629797 90793816 932303559 651473773 931993586 289527236 637624982 846661850 907409423 507678191 796411242 419958864 791862994 688647476 712483056 475750756 655155155 646727398 859609235 685186237 764755934 479038857 822742726 784855112 794097577 903130864 941996933 634623234 966814082 265946731 935435514 137326209 746091778 433102570 652433291 508344533 897515750 80550758 810572658 969962466 995020985 902208066 972847290 108466657 737521112 262319737 429720130 590703064 810471030 703924971 983840071 285034578 901802767 814001940 867972380 920948922 985769327 512016376 788359714 416734139 721138302 529841973 737286104 466160370 669752903 990599065 999281014 593201981 826988395 120915792 714528739 724700123 816467253 650956921 931108657 429684173 747941427 559728768 641156766 6626035 111595803 605722726 781979238 985017583 986177832 263796142 730890236 36319041 366739196 293391401 309079546 857779961 885066956 817981603 890952692 5217678 317049764 764239510 861958692 656671322 820483177 188593818 738169510 199084216 301307971 904220919 964627174 486855513 895142793 466631512 484600317 116093232 828718063 288675753 423476661 953261763 967272271 687137508 929753099 36471078 456459708 101092745 113238999 346885341 830638450 229039110 881649945 14756904 868123286 813200087 815512371 150909451 806521015 19662869 362479563 70427378 380004105 643358236 698248972 1928613 598697095 730167999 834789083 113260290 762519156 179457279 816339216 781200279 989377977 301246684 790244148 655036256 855191921 752714632 825904468 14198528 431948817 645722208 728947028 944209838 944924170 737291373 924779852 233998911 671856119 282499074 806084298 157010530 743142996 145697597 467907080 846732612 915885469 293375022 881598947 578375247 735646614 13959203 165644042 338219115 913606610 766214016 932747964 15760114 899832204 978410804 999958885 858007884 983657897 352467996 472608921 505653044 933302131 897251570 981897027 967809273 995090283 196525840 205425741 434616714 443576841 757849423 894583599 550019993 712617197 850584305 978157966 340483442 908115392 868703248 940127186 496272859 766532453 747985607 891894364 249498313 377001828 468397562 631127096 313486719 672670044 992281682 999397445 135622069 573750259 638631473 834882384 964591242 997354502 7109443 469200904 755969277 776935614 548873799 734320198 863000539 921529266 132367561 170721750 300014524 860362273 190279685 282081595 18382661 890065829 583758122 922163446 417010452 793628001 207964218 742429372 122774964 940543132 713707382 799915569 175260616 813176493 778298957 896100015 797020384 995309034 555423420 967414756 658146132 983728147 983292949 984286523 42262434 73652566 599879946 775516169 377778212 495620023 518503447 600201264 325897163 333434131 83210148 793006882 441845308 833878344 703158608 823281811 268233684 640763355 552750948 570962932 437394834 738916485 893293602 959816280 92378937 252553718 233420326 934595122 767342964 887899575 852983963 929064313 395650435 768544636 486220358 602061665 332791778 436659778 216632607 310087698 770316 153348392 438529905 562844623 247223007 705011502 342389558 626034661 855940436 982904520 905761102 954802962 26871864 271333009 509611930 666772053 463654751 690331826 194676137 863283663 723853078 872704646 316944656 376751190 621637852 698455295 343249551 702879947 51210847 893906901 361589841 524493817 561427112 759714412 274025551 363275331 726629866 729326964 367280171 920462607 130431313 549184668 182888877 889032725 48251876 902139853 769193760 879256293 22278621 169864553 451966683 565090728 572730840 951551953 196296026 461580174 27207083 355469663 570494004 726615187 963529650 964621753 278158616 757643598 643376567 905299372 292890904 329219566 407220531 474175926 234812393 264291562 748990524 981185088 339340926 959751316 946323962 954755863 439832555 785573308 714119565 831988457 787134429 890232362 112618402 249571299 110687285 988758813 486757209 993894980 207739749 619573356 559540424 729701063 273136432 373134981 413766274 570159612 42272703 879410267 264650607 406313473 736334980 866185197 510747239 567739995 555126057 785761669 653541472 831795552 807700289 862972698 187844484 780680441 575248449 854397209 840623703 903038588 414315543 566098837 150925137 329308790 524754704 634845139 699075959 932186890 988048329 991242865 186237646 701349140 843424122 868009605 400726313 610029852 277664627 377195823 532382558 640470046 363837090 434666525 967128337 985648451 365058809 427461772 469750475 505293630 460331747 931917526 686369132 909933405 706607751 804938912 740448446 900140678 218972541 226979441 391076720 733758679 758720560 908752927 177430719 737954000 401932955 780968942 893012991 970851908 90456002 721858079 197640970 474449923 697386927 927015737 364276888 673201029 939355353 977013600 366274702 402380701 674622362 787906205 119549509 996051610 239128385 958259250 347671629 670340746 466773812 471662698 527963695 631539558 391794936 582362373 409765688 882466387 884976656 970276687 760270333 893735415 118149007 331944467 667891175 967102025 470430028 789908348 419905489 948982779 109061586 533380690 396654572 623147990 821320157 971385395 701714136 965115692 252343631 482542753 98800919 318780496 786040762 961780345 870704980 945680705 597285547 751419465 385338095 485608086 505865615 928597498 649545633 952094428 920455114 990842934 888590953 960425810 535488415 892629532 207651914 851680681 129658929 421555710 84323097 393190434 845958233 908947702 568350423 583314867 197422171 539742076 700251999 824269517 871813175 905464769 963526844 987257456 493029181 573067671 990033329 997142572 915051351 974488376 982024777 986240268 683055671 706418847 939701059 963701011 679511414 775340325 221281243 377081539 378809968 557507568 862951242 976709601 140192733 930227423 946979417 962468809 871488703 891104317 880318269 929622912 590678385 913756063 258753530 609475751 322525723 830746126 730095972 883773713 320607037 533744177 710573041 740397598 529426478 720616403 309009950 537037983 213378359 622371503 817618747 863967274 10920298 356756186 695275288 830921152 395222769 462416245 448087845 929557953 25381404 425215597 971274872 984937695 104814808 934680008 121884915 750569566 880112038 966694073 465051634 935843603 347089260 446038011 95963668 934285071 791479893 842712947 36457688 926474245 645557912 749905771 794450308 843133614 129121710 752794188 18827225 360880550 388775694 587360849 193083373 660433148 725335726 834925499 678678728 833535933 296130058 313273205 878792308 928949053 458370066 793603061 265651913 770505885 839572964 950034463 836794823 967107700 839783435 894165321 227182932 698480355 243011353 924211408 153873915 384073871 542554288 771314958 42043856 644876075 601319375 873208901 4259636 506633052 274026140 815022388 911334270 996499846 685921834 695387450 604932078 861639094 517544812 943756551 100842657 633249847 469254003 783797525 459755296 923465571 843047430 882352319 782143568 848177797 645042147 694544939 63258684 394576714 565985162 614009520 536959642 669316888 7786710 908832825 623441674 649773406 407375817 802022972 795948215 855583977 655691042 780455276 755407226 972008540 652316042 720793870 162047528 827063123 740724397 847189993 502700760 883579449 363998634 688467263 210458230 632684203 629193236 979980191 532084584 563324347 49278130 756546057 771867671 912177711 10603446 456108288 658449799 782323399 873850879 892136479 582348782 987765162 475392923 514389296 308971903 395330550 286835795 708336423 711045809 907900892 623308830 784187291 471355194 501995096 483085811 983054457 994801730 996933833 327459599 904662938 62508688 880555452 144961198 853239047 493149205 803136220 147861895 217711237 760502616 899726647 878312571 885171604 329296036 362866360 694599311 810318434 868994898 911065508 419199424 506789038 831065233 882520086 480862634 981986255 529446997 777250277 771224503 771508876 788704271 984899928 228737248 858583154 966237078 983121130 575898589 696393565 871018687 889214647 762757708 890226518 916527936 993335550 424078852 639854767 9216384 811030279 712614589 996570841 709461975 973577868 241576741 702888803 225033221 447248802 427042502 734281933 963200950 990273768 459407199 618001323 728390244 792990534 424622970 465043868 380780298 492747420 184726761 796281421 346837510 359969177 701346723 857781310 81616117 626866533 143589579 568898442 338541234 666916638 905104713 967025748 344177669 718488033 923300997 931175926 908043997 956611610 800341088 848291468 242493616 833692813 597618427 817361299 209609610 332762541 628649305 700953071 400262360 602309358 220697912 516029973 636879283 715315528 574244276 574261246 327548933 604876999 193927145 666809221 601744342 656398526 819319910 882777603 921573846 987672141 640518146 883732130 242259585 449681104 60966955 669501326 168154679 395066819 82517570 766627685 390965278 638117223 340795699 494199278 39758192 904265786 49279572 155611218 445484790 675756900 62036491 629812799 150045927 894835109 877446339 902641609 163508260 489220199 713484647 768871925 607176141 663020044 915237311 980427489 116097087 576361008 634309629 749959879 93339585 692317195 599439667 953115141 905233227 938523503 246070607 374702928 685879334 844039057 854511037 859228536 996367143 998664032 27697350 72244986 274496862 633783765 545514464 587378802 827684614 906846722 45127740 380530751 964594098 996892350 209896915 817413489 757806853 776599787 854499917 982639202 705937415 760039457 142652367 751761560 696439228 900004386 289318137 916576663 184321291 657234083 324898343 661667271 709211623 853467780 923641500 949618721 507766821 960431224 573430907 863336615 617640029 692931628 91035411 822464777 491032438 737438164 315537907 545327793 667114020 937036614 145105557 645761336 571123130 932680468 392154894 490352330 961336297 970331120 232613289 792671376 94947904 647920432 154493386 331776081 284607267 676456863 383554963 712534994 894291106 975058133 360024347 680027298 890185085 933622292 636594440 662903292 678717317 891554947 925126554 925447575 658186743 786484178 765973738 879631161 183708716 736257795 169024045 301918616 861886240 964430384 939635873 977237640 949471577 997387860 317476647 395996806 447176006 956635752 145921171 708893570 403831455 480882844 927009587 948451395 311297025 639796289 9050490 131979193 837940483 975513245 807485384 989480273 822920552 874380091 246586503 959528845 448925098 628840428 350805017 928074865 148326431 677749028 46293638 816753410 362871977 577052090 862005902 869546499 629073505 962883468 226649723 657807870 480768222 862327677 951311319 952026305 572112741 793603272 80594848 378908430 922218084 952511882 340110739 371381826 444712973 557577129 716237690 735464583 576717984 898623698 369203989 613877354 407413800 672417491 558675918 594825087 918532386 958267714 725874658 979867696 933919440 999478460 279259388 615604939 497312166 924596149 77948039 336361733 284014182 860385382 335798556 849021228 754241605 846158936 837926617 859746272 995356041 997288545 481442075 830452029 800799606 973474146 65517704 82223699 642087913 746313003 893925329 899307770 956909226 974476350 213167865 554574673 371691845 451929674 484819657 591623595 306196470 479613901 445409842 708919433 975732985 990162158 638147883 791251768 788282068 860950176 182088895 865837850 781499178 961307485 518974331 531330262 732559630 783333057 804834086 997802384 61653770 793405157 235427571 751235423 56620150 925402087 590231155 785332272 726140248 867438172 209251332 923266464 607143067 822717427 878519019 881152885 356076157 714305011 615506325 889420106 858271575 886973521 288000644 581185438 152602468 190269426 308669956 688862981 684916334 926322686 83207983 556058002 701703298 765495242 320148797 754908464 660903984 817799412 426411590 611029395 812764430 887212504 350955131 697045383 651735761 869849713 403505159 412165114 883700839 883962850 392462920 827657213 343274697 872982516 903161316 962690861 987342842 996101073 906951756 934387768 950003405 971868092 755447263 868089872 842605590 870304093 314087656 401523928 984196866 987206113 483971070 932242725 993035856 995713299 733694708 932741395 711778354 764049163 712364023 819179476 636356037 930550205 400497552 526925087 611802353 941735127 217238660 386743832 334864330 815055889 601843948 996274391 351599791 523012655 824495608 924205440 112688190 546629784 34313804 250591565 682529452 790306306 480951135 889156192 764036110 883821935 761000814 796792999 697503295 916839323 261974899 476993017 405163780 735831940 344625232 507780577 381802659 419305474 258930844 503486868 119638018 195682507 891410017 936984526 685786315 794300007 792514562 973523492 720005422 979620973 761726026 798338924 786488645 865542783 700360800 769771380 552235241 733387661 500531125 805230905 417747299 978839951 758273132 800543790 466875497 900341472 326245571 729080024 254246200 388890538 365709057 835210179 42677877 955596581 716585976 768238659 352013835 841727690 561597211 785912945 499670859 712231983 910181203 918055412 150727618 742504427 140803483 969075606 409607186 577569137 165510739 823714425 688747478 696559965 760030111 782192290 427150283 538138103 179253705 219133806 967011437 970512414 250638489 740375136 770969538 933735963 334368747 348736841 312965717 987580977 878282263 881687818 470489326 753890590 421611993 979614134 5733059 288536217 583107494 671378797 805548453 923585534 398957364 399595433 724280380 739165853 678723328 776198261 503482844 995053483 286566839 999427088 49169712 552215451 495349138 669732306 424862804 602160417 313461411 349481961 383254032 945435004 666501247 994640316 776201042 874300505 610258366 808195498 708736122 879008170 782476704 980052253 797259638 912483206 872006970 997852134 706130983 726147585 135856728 344237134 22116384 826055482 123470898 962032638 199266994 947676612 581245056 616643193 272834947 805355971 964229564 986169926 233571929 562196073 702617321 847176918 633433645 825386037 658529662 770958112 323511867 988837592 377391685 784686127 537921591 990471917 549227718 797986518 309796254 662890629 838993979 881879797 152375906 871718088 597782828 941732909 189596773 649791332 249479589 824922649 263311756 750465200 570873488 954782529 816752264 966288149 155196366 680466692 740005215 786760970 921547033 978011364 517999332 702104038 496422917 932701758 473531822 613642996 859361190 876816509 109637186 720726728 258976295 660587925 590745294 803456014 190206103 459048430 103108416 372239773 206878034 819191244 14397055 475526924 850542758 873214731 774284071 907839935 19567522 998580222 139725136 411854739 946833464 966252337 355334232 408885473 977977370 981494804 782106654 904875715 667703511 717919292 212995766 418823211 278695210 522505396 899554886 914482490 782137988 814120305 978606507 995557837 404027293 832756549 793633124 957179241 720269262 922579888 293171500 715312795 627046458 671475388 90387570 840816510 639995238 889192727 609906552 979816770 207974708 944247635 523105647 957063046 273591750 524749588 99911885 927886042 787889530 876909672 590780738 938661391 217180910 649573107 883433740 904747849 423433958 766042979 547781098 835907279 133656584 723750573 149993879 532264095 128838583 492447638 80937207 626722548 718166099 861797733 303017169 677687711 306187932 644145133 553960830 956937666 278764024 971143882 819497283 984123502 459274189 830421716 727993575 918622243 812097339 919708343 51730959 656436517 576665211 790578381 979936092 996392319 727996742 894136611 637431642 861023662 511692695 958474760 222203599 961541688 953494517 956363987 306501525 630742860 781655852 851081408 985813571 996153932 269214238 900268613 556728590 981830382 805333954 897607149 916347963 933691099 267378399 760405494 377116033 822860447 746612960 844671024 157443648 908740221 71389264 901900681 526555128 676378986 416722791 757862576 251477348 261924589 700558487 985832826 990935420 997277166 540583777 829925681 953251268 977279618 779839935 940534899 756037016 903918583 149211972 423776235 60099740 141397400 823407469 830964841 181548952 247071062 450847911 799973964 14267466 541556318 782386035 801991438 301795873 909455119 293351675 650528454 989984036 992984386 25230936 109895239 176803148 744121623 490458830 780623882 56875608 232594932 483181580 919729035 760614586 789652650 41004945 233247857 464633010 628848596 838324137 866003961 348944441 934236616 827371347 984938806 270353572 737075581 485620629 877568745 690152014 840137851 160207771 659537776 144452666 861052494 88454489 96565856 53680491 388135076 641329460 894303367 267210140 462106829 895220715 959755250 941044582 968647948 853094616 914701471 727373469 738481246 338525596 813588033 984327990 999165714 952579858 953107539 883990862 968314582 606498055 882246763 942694768 978075124 686088656 749630315 348106762 786910215 208684642 711436698 117827888 721797249 654569446 813527006 280445902 873224384 361485063 934167975 360852924 821345636 474376991 933821273 605237689 783826708 204054415 658554642 492299940 894778803 861096627 867185095 914271353 988710180 917770349 947790506 882879088 907367068 706196277 795328936 710509854 838630100 968156337 999525961 601321096 990230447 294218210 325878267 288710353 940378869 812447377 865435211 704059859 983117495 618965735 657996217 361339567 494074852 456267229 871352432 62632872 783964422 271329975 681299959 941867840 964329001 570204841 642351902 509003575 867211490 811930094 971472194 532023332 915342204 273424404 740833914 250805440 472309705 665432111 794686167 314770647 697900956 953235931 995755568 788075756 960494875 475955445 859832481 105365013 960472326 82450805 447332024 294100068 810796810 628887785 712419898 758089024 890107031 83289050 697528729 966124185 993843678 486175865 792571649 656870217 828388904 828814981 874486986 833151839 911047120 766679454 961711348 388086718 960508378 443746417 592679834 643451933 890887360 674423690 835225542 70801856 77305369 768691457 852767864 283061173 923468218 647390967 806646017 657377991 686321184 35361746 354353961 840402536 852644106 800264536 951539004 377177492 705826636 27866552 654778837 621721437 765220011 657403475 844676230 420164864 434244809 793963976 850120601 453142529 891517649 64713001 380762444 159018501 293155232 842881648 977633373 443020546 918892611 354172001 383625962 307073190 611352539 479590814 687177472 716520215 773518315 828043680 947300381 281647856 929843471 475681475 519338566 451011482 993792500 283726812 964859830 668970262 862168623 718493155 974897468 183106065 842417528 158765118 830120859 671361927 802984081 766883779 792588231 235076325 824634810 712677142 832321978 399769221 912911087 89885118 102842073 708118431 970711989 141280424 710965012 930190739 953917617 718607662 807041194 874859349 958115962 816037811 831825634 663844187 948964657 631073700 749319040 822039939 993756017 896952156 910633249 424794163 472407738 718775693 896262041 459459761 858164207 650802045 966035048 593251549 729333561 504759670 555500837 397230311 500743907 857109415 935171574 425862260 725053362 176600253 901467815 809946720 983882740 465076512 530266461 933370417 985677641 828125823 857665605 810976889 929428284 674368644 818659394 584487522 663476317 95012934 474023062 144038146 511089330 529847785 815649225 927864834 992981332 454762634 602090121 315991837 738277768 314220242 631869226 105435484 365184824 501777657 883168546 607337069 639187261 850985854 966662145 411271971 925797811 814804764 949784058 914818281 922849841 732804224 766864774 468123033 921693780 852354798 939867859 92609693 397718565 803978448 952490504 192415792 246070113 360223529 757720945 194632217 739497291 215167093 244359405 403066688 670510957 204634319 360164516 465191143 859532630 557848163 683144158 181684048 558603928 721430367 800314957 927853252 974480011 931022873 948460261 900499132 919450792 341485751 770134094 106491259 940555715 59703299 592081534 638509948 713899837 768350953 823235043 739930784 799314150 192814491 820811234 901039134 962678564 851880338 966471142 261867181 301070171 648103144 979337560 57033324 965378261 413538876 871732493 841082377 993799975 926629553 936314786 558311670 997919743 567789446 996792356 532090367 757858874 280472356 966609192 69885692 74884517 11818935 479533193 837756366 922341522 246647764 666154658 431878672 855550150 799411214 986867115 322676210 401104899 899526336 918416468 539634807 706631468 955209189 988178391 699342920 699903325 152002931 353813499 205939673 842601763 533766192 638700540 421278684 628533800 413505977 598292266 8157725 488574927 740258897 749594270 263969046 472677326 614886886 697408217 108346980 627235603 919190196 966945505 415585242 475148205 453117058 705757069 114245491 327646612 903749269 940224049 238226040 714632695 892487776 907162154 298001061 327603107 12188233 266772576 39580887 827842979 969655413 970526738 37293857 597963895 534819974 957688486 446329453 869925737 243003940 572722383 748638420 958437643 604093587 928425820 316128772 432393274 870055201 961024454 635832869 961423924 499283359 570340209 574483241 737009304 765192144 769024647 259914185 705575484 156779923 372742281 85151663 929936057 620118015 940204724 258367212 709900023 332898251 587365674 134068332 555879490 662761586 965910020 391459517 639400623 610491100 725922432 301937063 461944389 477776544 994236547 933978137 940839057 995108539 997339703 106770503 953148720 738975550 901241144 387353561 777508268 777177486 811401514 663134486 797637928 707061174 905944042 172667460 700021101 743228747 972020821 26022727 530465336 655792587 899781975 159894078 517352807 547532319 908971183 327684582 396007626 85355539 698184732 628885501 706820258 987165893 987509653 377637419 849357299 878834332 964579379 885270041 928874435 284935533 764707957 888452110 978973157 910820627 962319116 371075099 445807552 510521192 817979013 219075577 257754559 34044219 625999588 738346934 873619835 721875558 758911352 381094778 503593837 926303764 991401417 792920522 955892657 938454956 951306588 783172714 950962665 255327675 989277449 996859793 999649106 434735211 561438548 502962030 600946382 502266965 820804904 256442591 791842110 966239455 983299299 838977540 999627100 963041050 964995923 417290366 439990564 777630715 834072218 194620350 511312526 786806444 988157187 683718364 801374640 352605388 733337078 376001855 639320401 447382594 669330624 496071218 940994843 751613703 992506680 949332838 983150159 677386963 931326130 11308221 130870196 316808155 801683195 681910621 962583662 463670757 939389057 543315365 841963077 618194644 974292223 832236005 992812464 927315336 950282673 296883568 469501300 924686879 977273550 963924187 976716421 9719418 291500871 464292942 967693508 197321202 900226784 44995055 155137177 117534595 355428967 9541494 696946050 795020525 799846469 942862332 968144071 49994955 147369535 543187575 606427634 283119205 309456683 958799928 978056847 777171077 944650289 576728464 682180816 724037724 885426709 615552429 924939484 808259650 908183254 312669556 350383522 866539095 876244046 563305356 934817746 367857949 512455082 899539781 968249028 275872257 311506293 455915560 869695916 514738851 893020372 376124476 836076211 589718214 958189982 314899506 367636301 227953577 445266570 375330813 423258765 712842695 962218008 669359320 791774723 369411083 877297503 891718181 965875374 618850841 636301077 949540353 957164385 868201345 913684822 931972874 957014691 726693218 738677825 328072045 427415045 54599013 829281057 229920709 462975448 647971839 759119067 593398487 774769664 572083942 972688371 313367847 800857554 977940225 982061920 952924979 999709467 199099691 880259997 27615766 534002238 483308923 924717708 712026999 961726202 713527765 731241634 9951636 324856100 369113043 485835734 887260267 911689009 343991797 367199019 209829233 941756204 658031425 979339459 614943200 741724282 134561115 398530890 337509072 844230676 210204302 895367185 829054458 897294776 677446275 759260553 223167564 921753982 442120237 504181007 147657790 162066544 393772377 807306702 59833479 90226763 764816272 873513534 75392241 271234961 901627834 929824703 235770513 782507602 51153704 575288763 87474486 838245917 103385132 238715092 418264401 971973968 983762062 998524069 43838653 136828964 650129099 800569721 626504575 956046510 325187727 666729766 913198061 922797764 747696796 993604035 93100638 132807725 438023352 922444874 330344265 933403355 994322359 998252457 594870532 864029340 572976620 932781414 561341149 749568265 968922744 994578605 985494320 998175070 62922140 305672383 457841962 533492821 452474300 738189755 450505847 558977295 313313984 928352160 862995508 945764147 525808306 554176601 822209512 886912411 175631936 880551413 259804947 527321571 280862157 777942322 890803369 923734797 243932681 827590323 768188357 970934725 731614989 847914037 497297211 808656973 660554506 937882128 908164012 945085902 806539094 947828989 357265627 770558948 231684809 909153064 666274335 891041032 267830931 478440976 976909991 996709915 357517658 461050290 154378456 391405504 629048131 854388604 564312766 613539345 643837958 884337227 164394992 972819552 359689444 555292981 756471131 950866409 842316291 869763212 965784315 978891506 43658043 713597118 143443450 765615803 203733599 310688908 988450848 997113616 512471457 826035738 941145680 954524352 580495735 819234428 683349749 684516765 760294914 796478775 729482724 869007394 735546797 787848986 759067898 826500009 134008951 557914354 974871763 994765930 227210107 856967615 380380257 562557575 788279939 848874289 100161909 250507748 644225278 646393291 79332353 878808641 503488684 679403486 215277584 477181769 598892096 654415388 6526483 487379411 186653049 300742917 516334882 968211655 70093925 354672816 580374175 866152668 99638634 352810528 159115062 161252496 445828769 599731322 827374254 880483283 810481711 968258337 788880101 998559896 777413764 899479115 57536291 952939323 575449817 787304713 303322271 389884984 525009607 781732872 162158817 473384197 857753366 962787713 987929135 990736182 347237546 950435750 436349965 564258159 539701719 865105048 121688813 229083762 779767123 884306012 524983155 715692313 648836973 729876400 743427272 800263370 168469448 241525837 691802060 980281685 41463268 243040455 245737507 365494695 838937374 883367348 253036483 659196763 974257849 987640951 536072035 827698904 790290822 932609132 127379672 932670601 5755708 687332497 25842410 882827293 35984591 665827765 668560456 717024207 754705499 758785501 376312997 954044192 77013912 576840618 851926245 905685169 142251811 373074658 199201396 754149739 405836126 957356369 166809615 508242893 105578653 739943226 142738948 591506165 976838826 980589616 129225880 682272095 663602681 973664717 30558269 208238408 715602420 938967158 859978972 994146679 204033154 819671569 868422388 994024272 883347246 908280683 958792026 967928743 766312013 859839268 917827195 935256082 986754263 988182652 567340905 790262722 183315734 951840902 821827102 837565336 826227410 899355946 132934501 444532540 160434401 744287893 564482469 848396998 901176929 907095703 413097666 547933183 418442069 476092675 724449448 785805500 26285697 127108090 735664585 826493239 576124717 814136966 269817235 880553462 879216254 906543054 34740893 964688476 601687896 863965520 368561614 648125114 975188331 995243053 474553402 647184641 597738159 654561503 451820495 618138419 608558070 793583057 162766177 980945304 633048849 970701959 539791118 897243318 423873081 732461896 858774362 988337559 263819889 929959403 523880597 609379215 506477599 704198507 803003747 964357956 823921996 910838989 467837154 797478077 169007488 719770221 177994857 690355630 232191872 896175172 602592257 944985088 90182922 552659155 73717804 343239931 420398629 848067057 298453153 915765717 982881404 998808177 198789220 210021879 813779242 886441945 788552334 846898988 900054031 959720406 909816751 925319563 603096488 978781917 268156167 574241423 254237589 509251660 566523346 972979077 564279184 983550894 137744435 565126638 178570470 865781030 456344947 571111474 422741624 693208922 393647602 911289624 205716898 300278859 716419632 725983717 668433366 822773816 307555863 796762491 247048565 454431237 206515180 229100353 443100633 641798935 232628243 784984688 355046851 472730715 888957814 997062940 735167742 874154118 290889494 517278110 448142181 819057423 5109892 573021485 877091305 970728122 356224454 825146926 359687604 773811350 68956865 927263776 534422470 560139814 353339168 762711113 254592789 261780887 5894785 647479649 278273790 797424924 953789734 999354899 711702614 836254078 998942597 999473311 403342272 581463250 810098146 836325245 740125531 825475394 758495464 802387453 655266166 818133330 783571832 883205923 893793018 956937066 96014734 730177761 344610402 863515634 551685909 987849144 871963893 973297674 378660858 752873311 754884893 842470640 580128248 947174582 944129373 986666719 62595877 73632662 543549374 900952951 485932266 667193746 672421656 842907982 443120189 734093318 952813422 976885772 782263073 818579029 39814996 412133719 751953632 800220312 454782483 724837202 649780217 774627199 828168826 877037296 46855285 104184245 376380486 982307726 784358842 998202080 413004771 867116977 897273131 993682475 615677532 832076162 194922159 631929262 18678109 899079257 145197850 542813451 716303814 763362075 294063176 480214807 656840558 704808970 76215962 557196040 80833329 169347237 911944631 966304993 988380287 998047909 965455998 986308547 743664404 956828489 512739138 780145081 559351223 603942835 760953770 808553219 354058648 387417286 757280466 867202989 382785470 772034618 593286926 746838885 442618083 866848299 451134235 967774719 510018665 714850063 886041032 961956042 263299661 693706568 976990807 995049951 972874618 983321848 896253278 913755769 873835968 921170489 770852558 855530541 206669053 504803596 70754157 572250269 770713084 981705143 773998524 825797136 742695909 949960797 760044986 927112737 694560359 913869941 164247305 584984950 957249440 993900289 925753343 981435240 796928691 816607489 863050243 973614045 318180460 680825365 531313242 573532461 80568196 370260980 339044842 403490667 45299365 887776738 87334616 644721748 468549028 805947693 529010973 663972259 976366806 983843810 822868483 963893560 295231307 545586252 133512314 211627674 525500437 761984891 22818515 803860512 825547825 951726502 620932526 775717002 678491884 913681088 326938926 714744109 872417206 972344847 763690668 976774236 537310821 651951487 468029245 494551638 209707054 223882784 712740291 997793595 616829174 911530249 837751874 916903483 568464649 884862551 988949309 998870250 269940616 573888860 882169629 974270230 432463242 488486558 476430347 728703479 496546308 991723631 408144759 695357167 432334271 633779547 426880455 853162703 131327318 745736299 694218720 996218391 641588136 916053246 345408581 538811371 121039945 278454186 549108760 663167119 591470776 830873403 726319318 857916231 177109792 997860909 280860842 469970784 303544268 601452684 25856073 730870657 602113793 923485428 896421781 921621651 790862472 833392173 925295342 956489737 59402320 520044193 756818021 756908246 863357398 877407693 925439334 954469205 380640415 415639002 681567953 785395899 166296963 768796360 801238110 837514903 971448314 977145702 505862383 734749325 640317470 945518036 269544075 760021356 227960357 308453299 271126192 718540402 169093663 591106359 576548951 917111931 983004204 985853174 840433726 852988474 443216025 496621590 611670693 710409884 329765445 779132193 810653395 913836725 692518313 723910749 881762428 926154996 364733776 384636923 932504894 978197837 829557743 915120936 535629537 958838332 580584002 761292726 320277309 865367753 904273681 976392454 190424243 914857711 675989129 754611119 600639255 933792099 948067919 995340893 951416141 970017448 693253700 759418503 962014648 976324247 882229244 904215850 284760175 526032026 539198661 653584244 489101102 981170075 850409623 857731288 566755217 684017641 451416713 712893862 112409502 390711643 262231919 531800256 25234310 399229690 449064511 992274054 631514974 863522351 485873837 628696874 108328744 548203707 16379073 866574488 951109001 998830522 603329493 706584719 816297437 870226115 235037065 352200355 34475807 44188627 699757735 959143968 226331807 649066521 893956818 930330013 332249961 526126519 771295525 806927162 57908409 403745589 931662001 932723423 743483866 956423956 322953557 412429666 846563125 976520174 574358710 576626375 779972752 966568257 922345334 952571521 623965949 742170354 527246447 992462212 82753209 261137515 289391796 317943550 24480555 302249284 369910692 681890641 156486916 741046226 190886002 286074342 763396057 895908519 309292680 720963086 656201928 708734758 468901241 668198175 516347671 784964051 654849479 725363995 158906178 590664768 19356475 21154488 258782002 803610432 950078600 969947135 224758847 523450909 145528776 858095349 178762947 672110437 89407877 694611019 920980073 940942431 501466496 598950441 976690322 994895670 983559469 990577863 913892513 948470505 933549275 977041246 965486506 986879677 517082480 956496140 803912275 879782592 46972634 520923033 815113574 999944941 601812904 763628595 522549730 659529750 986771709 997092396 982216905 985537565 173043370 544878382 138955472 670069445 270477579 894925801 200382700 689814381 808049541 882011420 655912331 888018416 287827323 304533688 551072084 941343421 895250442 912795296 767546042 946363259 40156025 89102742 811380455 954550439 475779685 624836335 727335495 797065714 124675813 483124612 779315377 890195470 532866959 614750017 321113242 953134291 601415788 725494483 289864642 913883623 96078702 606386507 254119667 774824414 177221774 903376502 638625314 964853261 490377536 905408965 712755144 819279976 285691812 726258061 373832679 907759790 620797171 695124004 630507529 862658448 136287669 889149056 387793299 637451962 584534067 757280510 610206959 661289663 208428161 761579348 829522086 868970271 525996180 613951652 153621852 666229482 109392818 545255541 992687716 998886388 888545529 952578623 247876096 685946576 709084913 870184534 224726033 389115584 88625011 601429884 441223954 534579884 914248474 955789573 55191149 631644682 807870084 827333726 170869974 250655034 27230189 163899393 28975734 551261659 91815870 154658283 553768781 880217994 534722417 970409873 697070376 793574299 438253792 975189904 121362700 322283037 180361336 481709058 321892963 731504381 615764253 640986404 265714311 429950718 216614033 937783522 912295041 996151568 180421398 397707930 671869724 906996923 857520176 926705239 593822794 957265331 871005606 896063733 294281814 680995431 943207524 954911188 785411274 811885980 973414836 992743906 456716084 460339732 874239738 952501275 881389069 974100459 308719350 993012240 250805816 644446572 520552908 665518437 780374153 790604833 561960004 607396159 440597797 564603876 803494043 949236814 214944546 855906058 872147613 949337679 870339896 992317291 234334296 757274476 220192195 267012481 102950111 774635869 541353306 554295223 371999372 954296198 721456502 934441386 290648115 335979877 298605583 617900061 472182622 861522170 776203245 820393242 907499414 994289837 78749321 846487130 905912362 920670977 259450235 299656425 431751207 627679116 741773887 791737775 156954341 966782568 261761305 357623920 290692795 615706110 793138994 803302585 37248700 348706443 209042641 613795227 372541254 791525584 136805004 373116231 461824325 597640536 992487787 994839118 785216455 841708342 211580306 608733430 62551452 877661138 101576122 273713815 68719034 434767137 920897863 976260002 284651862 312960423 932267330 936545647 799180109 951656554 920160853 999552849 573929856 994826550 929751669 939541348 591767019 798892185 118898036 666714959 529681600 646732340 474752554 834075654 313613528 406810131 205704947 684637385 604700877 694117997 573720469 845575354 114552269 324109048 699550745 779621352 71182860 929556266 920248474 958628319 182822622 930201102 556404017 630783895 533493986 617555669 480069256 692431217 205638076 778627384 534771838 634622729 666258470 682574818 863052590 897290303 286840577 333506901 778095917 898357097 777225071 925557928 116316295 956106407 19513771 716846824 90543633 763412294 509106041 580729082 206186803 811318954 104019266 440350178 957617462 990662684 755887435 793978917 705176050 890721390 577392945 904230287 922169258 937503217 406022468 789416625 196107061 451368663 903503102 931248487 607010410 913447088 559889920 707688899 228149405 835722541 624106346 967263063 680443685 966677637 436504295 794494183 597982692 952173659 95572299 272221076 169356376 868786690 328457360 446998894 781102523 962245569 316628561 723835941 591256165 693821262 134175589 256238812 576347712 893280862 709549292 779452524 521838139 595467174 718318656 841412954 31081921 404508538 902452348 925270538 731299374 768751721 511225063 737997732 992397013 996109939 672580491 891514858 325981476 790988660 969736347 978651041 394116599 889759302 725083275 835860965 327195652 773893732 932383501 977891701 101502702 525812737 246397695 259808407 819839747 831484024 805831727 865013966 978053820 999309112 101243051 121133216 750199093 805623176 128837226 761034074 772508233 926996466 937476132 963388506 628712141 695577805 563999876 971210270 654248527 974054396 295296030 527521945 739399040 991467137 27435053 359169620 272827384 946167379 477332905 873772734 823612083 884211408 332290621 480728060 272846908 409314066 541373619 743514201 578850500 921743339 222874472 513538702 628303701 707824906 404779922 898815444 289543333 561740089 36204865 140597131 662539615 692162049 999778261 999908342 497102564 666595898 26800123 454163790 211144831 555951356 240726165 685389611 979754965 997867079 385025491 895953749 18649435 708203750 793493707 960300303 806586178 949552841 484113145 662129191 775384775 803809503 559803816 827224239 529704771 734751060 258851957 616366762 265443534 564705636 632624610 732198021 374519315 387594786 307755775 998411263 391852238 719303250 367632985 388581769 862735753 934301229 324860246 627586385 597894050 867022523 177341919 514855288 160537049 166330359 789303739 897277433 106459977 297643622 72329928 427250844 395141455 795867718 960447461 990639262 914191090 997826525 553390089 689477175 211729135 224232481 78742092 880940882 493864731 674170910 465691738 678537929 830170012 845927101 550913846 604105004 952390663 969369044 256733816 629335823 66706020 847578098 588265031 772444558 956767262 980830551 944101903 976619128 569446337 992588077 893222487 896819487 107201241 496960283 562756345 626857583 368649689 442191310 228986032 357911033 153759424 932203969 346790123 861895767 514331346 689857145 960428700 967269605 794735289 848801435 53456457 729742116 768472490 927493489 151856625 460447021 566531488 949259108 275918363 985414547 57665588 699909292 69372578 547723552 818230483 846626850 282619952 383434089 79152907 266724774 710232508 885673236 781713556 999897280 681177403 926883833 499161829 746583395 260299262 995301983 21290129 461519619 762576431 829259921 646082123 864438367 496190223 649118839 104073228 696883290 312555983 848638630 754518078 790735530 347550194 686500612 953503131 998739950 746779686 994508081 107536638 955569699 25204478 380338538 246344231 297776504 947217102 998756232 192305204 307149951 409176196 948207096 861805757 999443987 249169293 478612887 361468130 814100390 522484348 830213453 539402400 720603232 327772268 756823507 403172172 461124249 212259600 661770188 694082620 899390872 494361089 588212422 62588000 735081588 744593883 826341575 517711739 741722610 846132125 920602352 603534500 933201015 795410503 808017562 281785206 953027202 385172644 816477797 817091008 967054113 323664835 964307589 985431183 987608869 489555762 921821890 910436163 917290816 111223112 861245252 877490790 891538305 428766965 907088385 432237109 782838439 452198644 674345162 444065100 816891570 653001777 761175882 562021155 562900140 748095873 944088421 154043311 740651310 581860626 880666732 207821973 555345652 585329360 666211102 433238739 972229637 445181545 697220165 464324138 503648782 36218304 45474966 817662357 933765331 213930109 265924007 177159742 489774744 156147198 898836092 471640522 733391711 902260044 942235024 254827020 949099480 686738998 736885386 683092073 780813727 443556681 831723225 106017393 966034641 962583867 989847553 929344697 950274296 496042432 794369068 227297635 517727285 368862468 673904247 120427394 210271197 928752085 953844195 525649679 630257886 190301416 934354859 412343497 473230644 658096610 675007375 459652214 951007094 799853047 888666780 185218329 277939199 922742608 966164185 527890430 992983059 411648883 654104461 26452690 717347616 427191110 474130689 902926664 909161707 823897383 948715186 497619018 944887026 527381283 566951045 122068630 798021107 121883897 301538484 955557844 965082569 862610433 974299153 705322533 854106624 829609793 916011513 218596692 892417045 743498696 745093364 502340325 945061523 107555111 810274308 762917604 864748207 262893550 323576194 986499520 994203560 612757414 728880092 343563527 376518925 367144679 976411750 724668681 902960433 414204277 475095636 63039200 433395813 485656998 893780369 178928405 842637068 429945670 670173197 801348243 844720232 473644464 629279524 93503929 677879080 115511047 709612205 195234386 317814950 241440284 947311229 518298848 699281597 85851869 908511004 388928937 450611959 534211738 784574562 550605490 938307036 670460969 858934178 128460540 704905696 913989536 966104630 117297050 597311100 975979487 993346430 272934609 302335972 221416438 467705505 59767547 383527539 637816839 815422166 370846073 881202080 824528991 842518638 620073422 924962183 66042752 838233729 186523695 906940447 846750134 934542267 958248768 998536380 129059329 665924478 452901779 727702466 727534530 823342748 92148327 869258557 154101089 780435020 257434552 352139107 229240213 509226831 609580442 826751126 199955476 323648996 920432129 982560434 888848506 973664038 609631924 815397822 471451171 906009709 476657870 705682273 54857887 150264637 843137738 884510470 269005981 748357400 991383243 992250989 989137131 996697832 862963824 917216816 909965172 974224117 463530184 492723776 568968073 897324210 983071049 990401514 542340642 918122168 35133511 996429061 52094730 658196654 893719034 970264506 903372153 964108452 224494025 445041038 630378261 930241942 841475332 957571426 566340186 994081212 766890307 872871232 935263327 976448220 948518226 986661795 841687390 908549290 827822162 958260275 564531222 937323456 418015998 655015166 865800409 908922547 353305505 798480852 926679480 935888071 819655656 853399754 374387147 465181774 20545414 504909992 677228349 965968174 659707937 856730198 639590239 973897913 979776591 988405120 283907399 534570563 980390920 999333941 987925817 998076793 778706890 978401391 751417409 773754202 16706105 755827591 360923617 499519883 95893478 578974055 242885629 648691212 875836927 896953731 432141385 994250613 698105637 791180757 828485844 861655761 57244969 436749017 389432171 470896070 115696194 908845023 429829945 769063733 264500515 786880969 113731731 830861458 26926258 219475496 349699326 780126784 611723663 922078786 214482542 388861931 665635861 876197536 498067008 717728406 124831715 614138882 985509382 990432599 250820486 271182925 578870214 896571418 704215390 909622156 504846386 683935993 403358448 644216736 723755165 982483274 43982850 991206018 321049458 587647483 561603290 692926760 851269682 861020295 363726547 409826590 83033662 928540180 400066994 587213147 217189848 338519307 121522569 592967748 213290382 707832739 463229720 846398573 587609817 652880020 169135113 685301299 495151384 963046585 884863772 899843274 856189441 945205973 508426901 860976450 485130027 966624770 415840250 901874657 694250091 975345072 892849270 916227753 80617988 154247520 385045801 507154380 135203728 665573608 192147472 665080287 809730563 885290332 144762881 793078428 679492952 817224333 754660576 883917333 185345621 435008459 638450953 752397140 923252988 997502384 987517047 992814490 584459630 900704371 325563978 490771054 804354484 959718860 227429667 337585303 463115532 520491899 651946522 828200398 860084062 989373029 967347361 999242225 424893983 450396223 863236258 884149747 697216977 910122309 835474794 893264345 654417060 986412438 540805823 918696375 986362917 986519381 745556409 899545163 829146743 975361483 808293159 884588760 128940747 417957354 823273457 947389560 90396087 815316328 252772770 795454011 86050755 384858805 642384654 649755699 662673601 730674760 301260704 509426809 10200334 129066295 539800552 816902072 47167650 827140553 204397772 422765571 953131542 996259146 646823391 727047287 333064286 668312683 951855052 958118336 337112483 848079019 744779333 940288041 57080001 528764425 435395776 818598436 245359507 744121647 47449636 432653600 688427127 867504867 401978967 457327012 815624311 885935195 445623150 522596618 805491025 931314965 169181521 519639279 855736925 920597214 221167566 997323474 257665709 939973962 81090378 326868244 283732926 974201228 264383074 750316600 599644040 989322543 763143240 772693038 485494460 829873323 909275391 948213665 677670066 835226135 226230000 633923444 582022148 709318381 721330425 788874358 993491691 999745220 920752171 952346731 276194390 752277622 975470357 982839956 831783671 967424125 356636728 381426656 421287424 988467248 278605233 470743630 191440071 984263173 565438159 873622817 467266615 502920955 270941047 809722406 358760063 930345647 707612647 788772949 45456065 944497923 744291866 912974939 291930306 884072625 78862629 283325530 174117834 775670144 433700166 539218159 378297074 590792159 998029858 998077106 256063862 700875309 977046008 980869657 766522656 779730588 348615106 773124246 57983567 641080007 228836009 674675185 403121872 680237102 979251687 992817733 334431157 710534925 836396554 989702470 159227379 384729037 858403472 898198303 134422860 629246300 943246858 975949547 388776962 417560653 874277534 904659892 358600211 674963002 985043220 992466085 460974466 836522163 933423953 951622940 791469384 811252617 974392234 997357241 626885675 979364424 134572973 276603713 471765717 477690370 364487539 430840830 223031106 606099132 451985701 970782123 130594053 799442514 527287662 730374962 268535335 817649925 195321791 733531011 19092346 21346035 635059202 690844548 772344276 788833910 719212468 753205987 995443912 999729082 52626094 530832499 79312505 548892196 18196747 53277490 221271641 803345431 996145330 996843000 410878009 454049319 287289510 781810155 3488484 222282272 280603334 737733167 582509449 720687069 455147870 974969667 560564099 755271089 551050261 912046356 452508785 974762295 861989889 965937076 911622365 967408508 863511429 893599915 433974149 670964653 566087047 695761116 518252544 700137015 595361639 792358601 543105598 680015967 835217091 867230566 512142531 722030152 878200245 881554079 825119599 919414866 937014040 973531476 538732011 942196145 638707568 774520215 384398866 436358006 78379355 228033884 285411057 757893772 17357922 533310321 548390702 593680477 414809913 934761941 214695701 692232618 799744419 820743254 768628288 909477393 414985134 868116622 107739195 482326591 273787784 452926761 815742365 891584793 731952664 956311180 690544790 806814336 565490622 761615721 535403753 855517650 310771273 319518375 36026070 522856591 224725074 252906205 174078210 766338087 629218800 883368728 208909400 752273737 429949534 709074072 312856634 660863343 486628334 570106300 675891344 832193210 807480579 865521857 361173220 490905293 72965202 954616273 78822083 740021777 43560587 346373031 100934558 533524219 565759305 626164097 688230302 874431043 771551763 793394102 599395469 660534900 681667258 792085932 572523152 902510145 918435065 923308853 918350372 933508438 456299842 804689122 479651195 510283199 873175477 892250378 988078127 997875584 709273050 829332829 418745371 523626759 992751008 996012153 749839118 875021541 550381489 670070038 195259066 544215827 739666011 797491234 384541575 418820597 753813219 949106408 709979187 895849384 601275993 708475597 935056464 950648214 507874666 626464242 275907945 737303660 365874089 997085113 779946984 982285023 515400101 673637698 138470678 329565430 557414124 668962982 681791570 929203106 772524614 790266531 88364346 205991485 847419209 851191523 959200059 991037867 251218142 300719513 202898862 220906928 356442128 571734394 17676367 823651290 442922716 888002098 298423950 591111816 447796666 931961586 998082647 998615959 720498849 927163660 429323613 441409070 672988768 961578151 777872751 991666063 83843209 273089428 873052643 882426710 186404820 780827513 468695629 877777702 364794089 488223077 23914340 113006564 836605060 986609262 502903969 964706914 540282895 658638925 72349639 598639985 313585640 696300563 500743980 622588907 449053164 758201115 954377522 992095929 94300874 174645413 950179359 976565909 102363934 987123224 679327050 834780025 492962098 690385352 656289142 994969655 46158791 254234020 406288418 586504897 428526759 507610571 53708346 409229316 278982030 505333758 483323455 606100484 346791433 856674722 666734821 781651174 148805064 968798290 443556931 626424991 623831134 688890474 690829122 947577598 506681539 773532236 727691018 961136022 340303981 775984263 864347630 910881044 365111845 516713435 468024351 728312869 360657316 607566029 423619127 994522809 671945584 938141901 975611656 982728179 82745924 105888838 396179755 569844042 370365690 697344668 842864704 917295915 925061156 998595137 203202430 326673688 822991585 914918005 253314499 666573841 795902133 816318784 270734493 841322828 784707956 807081645 835541118 982957143 731207523 910373884 551879614 587889666 289526501 456979486 290752763 715417082 267320548 878633637 740132717 961147025 793084355 839956646 681999075 845654732 171529959 196848219 441412017 936887120 415689344 664771361 544645059 911347618 717790607 974925729 129225302 242064741 499295884 896965630 68538442 469711027 376584637 671779917 830493197 981360879 441540392 978646841 234162165 799494197 478552417 764776931 2689955 469960692 74710436 444013317 6832524 606281503 762869958 917320952 676137053 763228779 190641582 273603193 795892029 941706423 329411360 432857282 501470584 901377870 849731048 887535013 737670418 862007127 846841567 860090676 304850125 949962099 818205703 987024665 559808744 805775943 653103015 962663260 2856319 185217880 774206092 925204650 332763210 333567115 166371443 937768115 663063149 777839615 639629605 878905116 403997994 882064121 442719857 537274904 987360685 996571241 384856707 449249865 930257734 990915966 764049613 999803273 263748680 773775024 967435684 994785117 638074941 924846234 38394048 101959481 174261720 330681976 950745638 968385189 615941873 689526442 23222481 111453538 896956492 917737104 807149922 932561183 534828941 883904844 700822456 837439342 301038008 998293474 387270917 467201781 780917255 983338114 40637199 317742963 216215732 301762649 15575766 903583201 17494308 925610645 337621528 667998961 422881161 904758817 897176117 956208594 193231129 415705688 365105149 584409303 952322037 959565244 781380125 978608108 243576563 716978264 58742155 957163408 999618828 999672665 79550981 335877474 717219452 896871024 910738026 945692215 404006224 816436171 268954794 884390172 202712908 228755105 209358068 812655411 700008724 797567993 977538183 994915953 207054352 770571237 909034136 954770856 593746032 598266011 889468571 991156587 372422350 677294768 858153835 956352247 409011656 880924392 888664816 987837891 390982970 877569094 757303076 803510249 197537164 720143181 172132376 418941414 789300244 948920525 839617994 856705792 937281774 986558732 10541929 371348284 961337616 969849902 340718170 410327739 771910959 781400937 253590661 688293588 33720660 574788292 407379082 527221527 394621577 887796828 721266496 824184516 55349910 79936266 720412095 734947401 141385671 868390067 379360745 423454749 36017778 114748420 172395932 609648607 545757213 922393840 865487159 977704713 492993348 511679609 488191580 615538355 313919512 887913541 12958817 648204674 402032368 879325999 623942474 985622182 562334502 707982639 682763198 743451170 635531257 943697090 901839552 982381604 525421381 970684748 352452579 399524378 64502423 703306327 562954724 985650760 499958230 740226193 873083569 920266930 907532575 965951974 431613363 887929807 344682395 696367568 887942335 890605060 221623410 278319179 536500822 576450387 737910626 760416829 771005628 857516034 375349868 622258950 34615675 522111182 83629571 846476007 734115580 742062761 524822269 869573493 829068457 877588339 552250432 602674657 397937841 963329817 79003400 370345288 938465723 949791449 278413190 447358215 182426049 466394978 841263850 858267257 149779371 257144689 827315135 962126298 573768225 865475053 333223013 402794038 528293755 609018691 575567082 974514242 990481301 996959458 651184992 930207428 253981263 772183449 994857977 998676622 773114211 887291308 279017986 759437296 126544304 956279273 603469834 629659368 722587152 731885557 160956524 906271066 185880975 927682993 491464846 543388944 826577666 928147578 898985306 917208927 912821425 994196851 841418131 969003932 720354366 975046420 896968657 993999668 284269663 640340943 950456601 966139283 113923928 750929951 840553933 859561036 868390705 923766792 318164623 651608302 323505464 327297678 269605203 628125784 110447648 838236760 871349117 941319049 185768885 585780868 45057782 193662976 619079051 684588453 601846236 874525445 736196090 913519011 797978163 893223133 288775938 622212193 919680978 996840002 364383007 783570516 905659306 934387770 798505872 973301818 313621097 624380973 711304081 786378526 168903550 682224336 573091889 747355873 214410675 513309678 596820837 852555927 881329824 891493619 150131315 343950778 680205398 749455403 756415899 915307169 509432282 793995459 539649373 817305586 668092639 921786204 813185154 952888268 700404705 958070813 398278397 940665003 731262588 943868812 326338081 705085685 187624270 609425571 246895087 874649585 373775908 517353037 134098124 764140722 495598836 777468139 502708548 700270702 202821008 782692308 795060570 998519933 942521632 965839460 340049001 715522132 982841563 988652817 642608562 993719393 757917556 905842777 508550138 641866198 272597412 509288613 780077420 818552185 74562182 489221904 294653566 768979250 546371327 877697114 535696726 832814503 531513832 675636258 436181171 834215621 722785995 976528445 103575507 260225508 520706597 976325833 690973849 707361199 650684662 997822002 571407853 845165431 168792603 899474557 642482663 909422632 442459568 507828020 126427739 695475340 144875200 205530010 125456455 792197481 153681267 349901334 609584810 760824736 167101220 266631920 805121926 847725684 684114026 852616686 572196569 877143313 854326209 957523810 85827555 428219156 405122099 672781836 215688371 904589444 580780818 773697237 382109863 975267819 236550202 888276544 242917533 803832102 958730455 963080650 377987230 897169942 566826222 926112235 311177129 774115048 996348504 998530908 627644954 900365797 741362550 953050120 758629946 894095941 745866093 947368466 305900027 585678924 805987053 965126780 923366735 939173071 980856112 989977717 289048708 960137963 921811907 947121096 805088048 931584128 34161625 215304162 90848259 638664136 520639925 591714302 682765030 929436823 549278528 731433662 32458259 692428091 101420211 628235898 236538723 516266972 192339614 657494227 184662839 982286214 446741237 650025436 440328878 829179767 408031862 964324843 399073826 961319383 759714519 821230916 53120216 178964957 266245945 742944677 61142741 404453743 818742555 861769335 672268759 906216815 651010007 807959106 284192356 412683801 719996312 925139836 929956408 983539712 475133143 775506747 653366689 928649467 989979542 991652205 775535356 908887311 675047512 853614065 454423082 920101740 869410180 948477678 553230922 916075688 489515085 818758873 400938520 612931809 803485025 983068951 30341433 199410488 269369510 950779409 251804928 494874334 533520986 804048867 933334807 964384931 278794697 541367291 916302487 925890756 437755725 987025083 140229927 283192695 356835018 813535021 487600590 755437211 15211659 347943987 401997528 636846723 489144802 548372140 429710317 493450560 915685026 973886916 517223465 563693168 954882493 978349786 897932937 963588554 785038927 832949203 197879539 458546337 943099652 954774591 649358188 910699694 273697427 542049736 829159276 985060702 704221764 976228429 945778793 978356563 536348077 895564349 717830927 937218569 165747740 178684995 51134640 778616587 692682779 797247005 293043262 894149282 748459313 950808403 993720221 997748847 333284780 830720264 257362108 738953575 174595161 875387693 246843952 647682766 917303737 953387241 197199769 226663634 678802802 841801452 719557698 789440914 912231475 988921085 822018502 975846572 972277871 987413592 524194005 624803316 158304411 577290392 339501366 522165028 625982779 945275277 979198272 991353996 234536649 402813609 725059855 759991318 394355620 643464750 207242850 479181027 229283373 292702118 283289766 344225915 393580108 405023841 110372206 780326795 883542670 889864016 839007612 873468504 329007240 589384565 964668673 976901981 99357335 162147420 580341155 751602244 566558411 589533601 965042369 996250477 262559771 993206795 211143881 519499880 996059640 998291157 137986737 926055133 931431590 966293618 796972513 804889099 42957705 295804702 746154866 783269260 904959733 967035098 481123942 860964374 225099587 346590163 762667468 937000398 89313035 269035056 595108843 737424653 465216350 714974089 789579974 993992066 655500350 880032537 198802543 787071901 322335104 667607105 905506303 910374837 604529815 949628698 504922949 691802107 432171445 778699479 798173341 922270390 235005892 728100596 593233359 951523037 355560004 419876077 597190253 888687120 120598938 961912247 289811598 346123037 356241854 828570195 962420139 963509341 436053814 534254564 182048923 974111577 32775580 732516880 831022386 896479150 450445761 834559402 28207792 390994352 72820275 578779870 488625238 554587875 672094457 718822121 7731691 606467666 591539412 924267321 924864709 969959956 652419824 833398528 255417113 280013482 783419297 926219964 561046560 638764526 355974606 994925645 352422607 375109363 984988576 992416152 17684862 932779410 40317517 663264202 524618458 803699218 356762999 652630235 402896466 795404732 295538959 738665230 619119928 693096002 206759583 310042983 414226419 688659068 741733357 851313181 598229763 840221545 650430126 981224920 963470909 999734142 767317072 915410089 998604524 999284096 557259238 928293526 180426503 540738631 110644880 279601239 695055554 831559186 295527308 346760544 972418995 985152291 408372732 716005067 94331257 543464515 295992125 426102280 500612384 964057360 472292684 674297643 304677533 801180495 314008535 751260981 650241638 946534217 932835450 937993729 668333118 818853056 814369887 881418682 158915232 267538714 250565697 272140654 106715449 447888297 772163546 792897130 613073264 914457251 175288042 933921362 99350496 613798578 730659218 732286355 871821890 931860204 717558046 940933194 857655691 940482055 989908519 999628370 813725326 854625735 139026930 589652216 606511970 828802566 410350917 918035013 144032747 624722812 426156764 814629423 62691956 509068164 804139721 837986240 674202727 692736494 222410858 935323578 555147951 586760549 461181355 923071137 913297954 931668444 872822830 977468704 369285759 503960206 407073968 638238714 921979056 952568210 590521910 867293571 315616959 777976449 975536918 996342750 834744315 921053559 940641140 958558457 721266943 847125700 242400038 346823443 436931765 707908412 960748330 978708151 990969094 996029489 450556710 585126835 314889005 443705825 257314270 829057303 732636679 733913421 676325852 785732655 635348413 721882567 606219700 806376777 581016183 709862074 105502274 140756689 610777944 946392169 439260765 845527780 359557774 409423637 209842361 403081321 179273237 768857570 214332622 560403365 501305787 801359477 140654783 815392882 440414267 612646490 85329145 440931432 851938856 915360977 819374351 997497684 234811093 742850156 830447903 949502071 872586770 898429186 306744247 595637098 280718435 429506470 434198395 506595290 326407917 439677596 17492862 191609869 195385908 229516386 577376126 699725689 493117369 986550145 68483481 101186785 269921448 681944837 513480507 748926536 590580577 864787704 988201102 998887436 299820827 380271025 689160065 744660258 175343605 439211318 427400614 760925242 435043625 847349527 968842363 997155096 675640445 815652216 388866057 416314053 198259991 378221665 926630444 997646508 128445833 403151973 213398196 308329820 746635076 982217505 200228184 357394313 22456975 663995581 788639235 825147441 864283231 966928728 333318374 861350020 760108955 965333409 93326293 93724019 782443420 965560554 258286829 300652183 454069855 559217410 442512439 446122203 655162949 926590361 920373401 982531659 888277115 894025743 226318805 884085175 122510448 730813460 252546211 997122874 578925953 639952369 129970807 674942802 369293991 629480696 594254105 623927374 620935134 982405168 123068217 274083769 950639048 959668462 945165879 949753478 73048331 721215312 480292171 853695634 354031473 616253685 33795420 276501941 1640214 865582010 499552470 585757657 392681282 531785172 814956562 900180929 175107336 294620961 839414701 984386359 894404107 946366382 102802284 771186751 77549449 757150654 392955069 842402270 433365346 485630321 880241813 945910191 432085274 950697846 553695159 976956497 571554395 667627725 618753978 732090828 615444684 625745700 667140073 906045966 682397065 735143915 230897341 360582066 806527907 981406918 257712623 847358856 86463434 879524066 711019924 822826360 516043466 775872496 668802380 944607732 59893637 645764289 723455868 911306672 275614269 714653301 769703310 850079544 878806820 887185737 889003424 910522026 462956754 561983512 165719963 611360854 854902433 970257642 460330789 649358960 694782243 774104653 385475033 602325073 181277113 975177181 249784306 929549234 768342805 782965860 107938194 763391970 467251251 660063234 653406128 749324418 473693119 826501803 112021116 291268998 545235576 882673878 533382334 613605104 478708325 594000023 685632530 750018002 282050097 481744906 766650816 976242726 275858711 343108090 317391018 723343945 11914899 48770366 944172248 952774524 353533195 400772241 812207676 998410471 596258798 639666431 562616747 575639828 241936430 300085183 557740465 718450482 157042160 928745717 809938605 926095056 479384626 854881472 318482642 726257924 349793744 837659229 407790133 734424382 313911358 625784059 306877749 430165059 10415670 58924376 94633183 208978849 847190967 987167677 906652425 924827026 236017153 610947693 140845552 331790097 202939050 420866512 974785023 990029515 999183971 999704485 349150876 499942464 851297255 916811537 12101439 671983935 929956553 960260213 746157933 857927964 323659995 949833219 964221443 983174111 851573143 901713514 340372741 637049987 828949400 891664048 697776294 707208366 169990669 957324623 583133943 895178424 611969749 965517325 228329913 323942940 593243353 693606775 549582544 835543346 160167902 998930581 723262740 845022233 422390252 428400310 235768671 682414148 850109658 919656999 894242873 941045681 929158382 998176331 311331857 392124187 142277603 616828332 376447909 769758152 725538154 794301867 177956719 949193140 493038878 832057178 763448347 858393013 196621975 469397916 602353967 791366824 410384287 888927184 618645757 961801224 460858805 979364875 672094541 777097665 479954201 974318753 942036123 964954451 766753686 793431778 639600162 735948558 619940684 932811039 1995397 307498643 346187021 475682283 65507810 128311209 415008071 993317301 544320306 768599819 769170302 829221158 106125464 871216345 488120876 833119219 125659199 840310749 559399115 719017626 632679609 675837516 806016196 930394514 400152366 529118831 49948124 951183401 905335211 984997330 36536531 962528730 378883644 815571461 744808381 848646096 608815225 849478798 696686250 954580547 533790919 959966574 948826880 962315646 218680946 615315178 537230799 697142991 889584705 970414771 477422204 735524376 596726471 902214773 462180217 534760319 61850855 658749833 261252207 595940592 567611138 911632485 619822519 788966003 671557278 738721693 17132853 807159388 233445791 301700169 499904504 715894459 983891613 989143945 128245335 965271965 919993309 980108949 467910319 477291986 894893351 906772718 940279820 996270694 983881257 990178320 250368308 741845979 465077027 887219341 353610089 824884550 982361796 990055121 878444301 928202062 745098988 854539916 467382055 810033880 866837708 896679517 925137795 938212026 30413394 829987999 687153334 921295796 520458377 604525476 501561545 919948833 381511968 393941996 780548122 836601268 510873362 945032840 577463990 899845685 656093304 733865004 651337753 937505011 859844092 967997474 875994316 979770766 348718745 548191552 230363925 478860336 244935718 617424629 95845856 675854030 32868774 448174214 423995154 466822082 375434386 503175770 339355434 831285452 970739 258850207 725436762 850652689 124007844 236519654 173276416 712108452 507290341 750988355 533165705 740967147 422841613 488965921 252661614 445725237 783793775 851515149 869098667 993863739 293034621 911865393 28358974 245933898 485631770 834645540 431313735 746914186 43278541 724945595 31872074 446513074 357818844 838712128 488932049 528271089 657149804 888673579 860916660 902244765 78886170 277727926 58851573 368564127 195979807 245405675 213256561 217670542 446134691 808668654 215868123 304007397 836984353 861375358 761049154 986970780 281263462 915628637 773912459 842273484 106495510 672972439 320820240 335970786 124259952 922012862 295546387 994107901 591593832 813523322 648698949 704346502 294828042 722696401 904520391 907839374 651269645 760217760 60353327 220883927 928918090 939954036 174354641 244088690 675352564 854657559 37897881 45192064 205229794 985403478 555695492 665387572 160254637 161704691 465776021 709451296 471741262 846888257 902988973 994398273 343232958 409856051 500194100 649078346 462850595 508038838 451128108 607519613 785629465 796242855 93088291 120303709 450719324 507733688 861413879 933828499 354722836 528610810 90776533 168682083 801890091 884363288 875421444 996542175 304017617 476419418 786187196 936632815 159111157 731568943 172047823 533889128 105998988 833530802 356727656 657661692 162000928 623915992 958689265 980735259 718837215 907528913 176297815 408938620 522289472 642727967 879212924 928659431 102925817 584320685 358415248 455986332 957818323 962436210 400617357 902227791 272855750 601251048 839707820 977101480 373868897 963261702 977695390 996814608 757152725 992146742 59692598 411697667 212204785 525364185 233093341 696612858 895012970 952904936 6478125 563957993 640080027 741383449 637395139 917396422 717668768 740180118 21157923 839877623 632511832 929438583 851286750 903002104 177496208 235981078 331199938 871801450 92555962 289902744 300412813 306513252 702650762 986516670 415553855 982082546 292177306 771508927 954814173 964867846 720837506 775013892 161279494 300757090 461099255 869097943 917983372 959600198 708598929 834178613 813009364 942308683 974390653 987971046 251313819 819312236 704718836 916241959 272566739 465643049 312390409 375924229 942342713 986984402 3843223 919890558 630001104 646199643 745729421 962122816 258453366 539641968 710438935 842007944 994960342 999593367 170473415 774709543 68880836 792284295 849923309 956521159 909748361 999984618 851765658 938638388 993821928 997733791 4812251 423654699 525410770 764007094 880200949 925581971 477827808 776860960 845665178 891711861 352158308 836195515 477107624 739531884 633809005 849027823 105888536 962465086 485008200 513415704 917582160 924481033 37766619 366435832 135186393 814585579 230863283 287753682 153265508 183590064 221719889 383337350 645156015 990008396 642913257 870052223 473790451 985780874 391178200 844675331 31503486 795697529 800988624 830373147 320586902 694969046 421194922 510557489 777642207 781530726 479170287 574583328 25874068 893307217 678151441 770020194 645588049 867007479 327430331 878256165 75042111 870141937 525093419 694848842 316635107 412076834 439323932 783957207 847275692 941273531 765046356 828893390 427129223 549099714 190435318 360843146 935313734 987194359 674855934 994574170 988854741 995149324 876655 367589272 141201660 796836109 31304341 846681546 705056133 870145514 198229718 300504247 117599282 139826135 648974011 815036162 492032514 620353995 7013036 749840093 587181563 632145724 323268376 829740715 582419803 807724158 365501839 429346456 198029137 754694583 704971181 886522456 163542839 760345003 979037464 986977183 151838921 780006691 972946199 981830480 372793493 945607340 574761540 984482095 944252758 974309765 998548981 999975464 504276203 695341231 903878686 936856964 672482256 864930899 466463675 509858148 756576708 823770680 544784903 819129974 234308120 752570623 140179990 692092662 739442449 868543972 225215993 482715367 972439243 976311212 170620162 617961069 800913445 821334613 121306275 673724189 335861435 772267859 990133385 991836820 99421936 814865876 154276623 172825758 470821773 572801764 693894979 970267180 895262614 981459205 487324669 830183294 520228516 980621172 589141935 945153252 817619111 992723174 299790686 394187584 450245444 503218021 602760026 608793407 377459985 666151434 772550092 993155378 502484709 651805968 323000118 962933118 594408940 739898825 884707841 920975450 330754141 340059466 382715694 834548409 577742430 919602177 914608935 935891149 613415913 694011734 587958948 666608593 536312616 561869876 427696852 883985684 992778539 993934020 606659284 900308370 80806282 290715954 121264395 270421414 849236084 925562659 573807505 776818724 544095361 834082764 62178739 340717580 469955182 618758736 41486043 286044612 409885563 668494950 644289620 891442898 212678019 250235483 999159032 999225123 113674504 461152036 545045871 759530121 61251085 173705618 319966273 490771434 514562709 672164834 90565415 486706131 915893787 981600352 992409701 997521383 811247444 949862174 171599689 979810548 521324326 741373976 844749742 945408239 870889458 949196369 111452327 837660255 986770624 986799073 937604573 956222626 472925057 691617559 217497289 893111885 578742552 782904559 741601129 825987700 823745018 984295479 527163792 934917143 188531813 300035570 303692532 367621106 740056248 931483186 169851374 416049563 975429554 989563235 115026955 635653658 634216611 853873567 830415548 876028968 104390123 336257658 639473961 889946632 939072162 991670863 595138645 779681709 713755537 746073312 700286728 925515199 921073597 950877954 729370991 751114686 835612061 887511250 417512699 761170747 31460987 159920388 588590842 803133393 982859730 998538558 350743200 711816791 168068206 359755715 192331201 878405582 700761807 972503786 514595296 859218875 9074010 955282298 881838294 967950689 865377777 948470299 210863473 904087202 152493566 672482088 964705068 969432060 413028101 559420714 747602262 906290790 894031690 935476118 472340856 593600485 786418335 834458035 592376260 685088276 813843938 839421857 367622041 645052669 478841675 755286043 418904871 592593021 692993736 802742537 182676685 345265584 814686140 886066791 23269843 484971742 194517644 810117294 416187701 510927130 341429034 843829054 296843864 988411945 488621304 694293946 774252795 796262419 406164560 979532115 259666979 451550109 700838996 993920496 920722559 995621770 396379456 925761191 819601275 903497638 164097783 448798301 510790047 538726526 366720627 932303752 94056915 635653508 603695788 957921326 636314372 847141511 264844258 307852918 135102418 690803493 720056991 913200511 866370053 918774597 916762687 987068814 607791893 716043206 74758319 993482865 987432034 996321268 364672948 586059500 686224150 776112285 417243390 833245376 250564227 510226134 41414353 346387857 333029628 711759999 926003299 996005119 952287550 966685599 934613728 934983890 519803390 742569957 404844074 509745215 214048484 731156327 629372544 747563982 92082378 105557570 981124312 995580552 874804537 902706876 745920 739743898 690936874 853138315 730026180 998691729 957403497 987823472 94486941 194450140 858533169 929317331 943654104 970942146 702742145 888004560 811985391 965062319 540493125 864248002 32981760 204769703 63072916 373612674 741978296 814781707 247967039 920340839 589144561 896470090 760124188 883079889 375784903 562347025 183502500 616004370 302744033 907790976 613494411 884109823 466928576 720553375 681079018 861475674 48498280 371908124 355112506 799241752 48370090 451941242 657034801 694282423 494457457 818203894 571620624 757668026 522124118 526702409 868066913 972712067 115891930 875846940 608252441 851326831 724771090 903606353 887496689 946854768 521962004 780027229 678337269 846914891 196290529 891439052 893208904 923393265 57044963 246706846 147790782 351690279 814058727 823853572 425114174 784330154 543779817 784838376 116815520 677297200 611042020 921950063 504330444 631587857 829723252 924082461 425826018 905613016 587640214 895255359 160806811 959562067 400106779 867469636 849626369 850118134 138644105 860632539 252513319 653507176 121483354 662310883 830250979 858824648 694727082 990405042 666322562 889405616 733608708 883271313 400076317 496856089 950481087 966745683 231495495 418519237 352430018 966004500 681140133 725658125 957637280 990751872 360628462 375660776 17179419 690818638 434027838 466235345 904244541 937713028 528544542 534799869 956907386 993720781 932288702 941747280 852160786 966699446 673026439 899372284 465223961 478752724 72985570 566006813 787136053 883674389 966034333 968483193 641603679 833736344 913086547 923634554 28594045 777323437 604852382 711280840 352116879 649101144 353171754 797603818 170237901 360658916 97793831 739715751 894312805 898441856 164337909 621338728 778084181 971538001 432513895 739914669 170791155 200366298 494319647 526366427 107682064 326670259 680995077 816530727 296406096 363894922 693589792 988084316 537673883 847241278 8671402 297501048 640573894 920431563 799638819 815581642 227874112 657384263 198743856 678190764 539832956 713126052 176764202 500149044 836096386 904569989 418614435 682017152 811370792 948074416 544778668 974146595 828358912 896006822 603466881 937637021 692444755 836944795 30791449 186539559 347867043 600703822 326369159 697916231 488342913 727832498 530658211 922261674 144622007 480614919 37147097 420097262 480760189 983483760 17917610 231818005 675240624 935668707 929439143 937046197 513172147 954813829 256761186 812934256 887505940 899283473 454551468 928525973 102215229 273431622 67178085 416059778 563787357 685087781 480175609 531575380 650822719 702965138 217369633 779373493 144085166 494023974 96614818 392205292 128258147 291346208 892746858 912377440 669067192 714217419 682591631 934116959 801514423 904654047 53034567 559654435 908036993 908263888 571655251 618522357 376007225 601984865 46723001 431051582 708165793 930720100 234924265 354532095 93673087 917578873 484524550 876376966 421166193 565176217 645378029 839958686 211780902 487025545 479879340 668133089 727182998 788747102 381172447 440462669 152080942 470907098 785120534 974510623 39361696 950171110 161866139 984366069 49694736 437463728 578942324 991530315 695778141 849558669 153098380 215953779 418748 513922164 377230970 747836515 564161206 741887640 214785825 263806603 115211935 918113035 783935039 932580284 84313511 517188292 929131885 966627351 716503256 721724803 131244725 520047889 890750896 954903054 166372351 245928891 623749847 920674534 849330329 885176605 386110473 512818992 959752632 990469499 508193154 595559477 204368908 296102503 742293404 890212745 342640659 545046027 820971512 846126353 249879598 699497033 77216135 747363011 830584342 921432718 64077894 382555469 619894674 937800773 551417150 773416771 394955404 807514129 437630646 535177215 72451050 84917898 944287230 946357055 662658490 821977635 777568778 888054951 82425235 327250680 700168568 775701065 435096704 634062971 647758463 920181042 648725419 730237765 589103047 793645356 714339714 729827734 400773454 843237339 213180909 516341189 834776921 881210129 182290347 183596564 441704311 542951672 520987979 923462264 141287005 742803296 229168119 746580486 326458772 333195728 964159290 968523311 546696531 744137349 14722926 357381969 972778202 995030895 612154607 960475677 465247488 736936067 521675420 997346622 606785001 820500813 784992583 865765981 438108399 478635866 980292456 987954304 255156742 682159050 749619032 935997276 555698883 655364998 865374856 937760475 349534466 764467053 389314563 624240313 746496490 767748024 966537208 970020424 160959831 397273467 836377744 838364729 135867628 633509415 622441132 639935635 858102554 990258510 843251268 973547404 684723347 908917329 344425398 780187362 267327510 786441075 886158874 968899822 728941085 759805827 583624196 912878261 593402205 792057887 315128307 553522228 270938630 773350848 331003380 897752532 629958004 744060311 375997670 580923375 324127367 358883011 190396686 381820261 289690589 637823149 159942492 910741463 679182838 807130086 494928592 551639634 523901112 752473003 692829315 763103238 9668320 350228649 939715670 986568035 204942239 334130083 425512440 475139627 149008426 215299713 639366168 905655596 496820639 822510824 304523475 725158692 207900662 920875775 759078100 933058364 674411498 752416512 239665518 311601147 488937642 489329044 372411356 897824720 426514374 693465697 739473076 947021123 975274210 987475065 955519670 969215821 639934356 983673225 990214514 995107611 716590843 922009720 309411736 487800715 162135050 920281570 220027468 610951432 111530330 818599859 342514757 437185421 660468526 705997729 432701663 722223536 677833060 851729938 407487690 473775687 976882656 997240234 913232385 922591058 7159599 274652619 231953754 468459879 953075890 999296248 589266027 599855324 618289345 658499832 485788162 755582630 217836521 864742806 569321632 999030877 604380340 726374882 324562356 490168901 837326210 843997634 674390186 841682245 470409093 966085979 63236942 580770287 998761018 999877537 763036573 891963573 730516310 946505291 170497166 277589307 877334884 941042168 964089653 971633225 950039013 981800054 202241889 237785242 403171226 458110237 74563161 949275477 299865969 689023670 547216713 683929693 954423670 958529599 972937544 978686160 589301400 707206066 483255590 839932026 215666385 752314515 400780729 424385012 669096944 955408682 365917964 982988663 278845037 867064342 548325606 918603123 672490095 744024454 121761525 192864415 778996721 781789848 494889503 861079910 795637209 872062376 877102804 880754212 818258228 976492556 429769818 616592985 905396552 971333158 48619510 528377298 92296378 896058414 399266775 471028197 762602384 909603675 987391059 993693960 186084736 877298328 361074125 834647549 114329976 340887214 703523579 748501208 72191520 102012890 966597262 994766183 903936035 907664515 226505784 839802594 886115157 946364848 893560070 924627523 893574512 922283818 335838303 526871228 131683789 848360063 50084754 551225382 119626678 947276017 427592042 963794089 396356626 852400305 598956126 944829539 635480284 994428278 818917285 899715985 930592268 978432702 393318307 684320098 570434899 785659026 573434725 906996074 601451119 882535500 857462074 994204757 891332320 931387302 672930279 765464715 726220442 871862276 230347638 886554998 696809469 712609195 411784313 480741239 118735987 142004184 895394257 910347925 936911165 980205777 951353314 956421302 628729196 784440872 237879537 863071566 217055408 943667683 633801487 742091491 803052543 812863560 437921235 651945593 549574584 945667507 22975234 442911113 902607085 934396583 830049091 979830997 973595628 982857720 776624772 926278259 352010049 579623845 618535198 834884085 63356723 808005184 905050878 997413718 231219176 849106296 191570218 981511298 380949126 518597895 2641217 863522142 225074290 848384165 828787890 920818844 690731284 899767176 942400506 962623897 906325256 963259438 941877061 988905853 723709513 758776607 565698560 992054720 736734889 883057446 788820919 995687011 320640548 583171510 385767122 507260738 188089434 592112959 988126465 998996301 402585649 512994432 905253780 923310729 400358316 497590032 238329785 979795178 114469128 227898738 694846132 952823688 572270687 862262669 442669962 486771894 170662651 932363864 714996845 905540202 994734485 999819632 355001071 686148166 401912116 725838694 797023056 946504372 984949783 991327995 515135264 540975804 498114219 738077113 118190056 271380882 922186953 948287447 784624898 842225301 439794594 940865257 445415550 689974768 127990615 935421068 79102739 481659777 49237054 501507928 716984767 808835010 393835734 907697092 740773965 870284522 923897099 937195742 80622512 973430279 608805294 681494354 456551690 539230555 30061974 795288800 328286600 909648094 747997761 895473878 155583311 952560710 619482119 849768048 356846940 695681200 587053736 789895628 212775446 879999157 496729882 802422685 301082519 365156199 697406320 935250607 640788028 913569284 925201841 969950771 779002281 961104569 557989122 613550605 976276485 986346627 420650812 692953733 693885365 988439518 850399645 881286433 745847792 902574565 199183749 990957658 325168304 567070168 408409481 730660895 109783334 673489516 594020933 997815337 9663205 45516557 810937544 866880386 122198318 582135164 341181105 782234394 547805372 970598433 155814637 934196061 497215820 651744670 808849509 997803313 661037499 866402668 644320612 687122222 975425451 976439673 998517316 999751624 730757545 965135028 622579149 907649470 956150005 981786886 899078757 997775275 301367979 821518469 912180934 928403598 570048555 989508051 613810517 913948831 960450475 961140561 104244945 871644746 984368599 997985949 757369358 849430477 724120479 865270956 118729265 714506516 263579893 359666077 361815306 603834640 412774312 850880296 282775580 701887251 659359394 693384613 408955187 953121821 979781588 984479146 923625342 988209931 793769857 931341614 9524443 280196111 791722640 828247556 952243294 963165219 793123112 928934671 545174742 558042775 942628591 992576018 746470183 933611721 693444491 749357779 810932778 837015289 834931233 941924963 71979869 371858450 863662262 942730813 93121435 437420890 346469647 514021236 592646262 804201534 410776831 741126561 346352226 789597112 860584947 998508312 766463303 791313704 559517499 659241710 445160709 563663323 311817067 607769656 897111762 914934013 919693217 943077806 831988405 845463295 869851883 884761983 78004564 131869338 104368029 155754179 518096662 662190279 268635062 431273909 403882645 819711045 225111523 263204841 882386675 982698714 460428174 552275460 861154594 996931398 278538743 786190888 500498406 747663052 113217830 316980784 101902886 130898140 710613842 842664362 292366375 470152845 574807533 997093054 666469958 814508371 427283926 927503357 818608988 918652774 144598679 583886524 598284680 668210379 489081277 656353771 347949766 645509938 102741423 962540416 150339440 501082571 9239320 222796525 328788526 888085331 289510536 388071424 671759949 713922154 877979451 887611439 25626129 723858543 493421337 926524557 412457804 865123794 268834635 545766873 880451393 907531295 446927162 788564193 497880847 807298819 572160541 918355497 470685312 613080005 334643824 967135797 9773561 626375295 618617542 714039623 227830883 521542627 60389422 984614132 147515708 845442581 722030683 874949732 504648 27818780 955070934 990421733 216334473 893312451 542030944 885734216 443855931 987297327 734247678 851742595 795009916 943360144 17609936 61004875 146113652 220095490 245980082 993288010 157906158 331499002 981295957 992018601 312275427 388672846 656009275 801897888 347347013 730254535 842223713 911541233 283450296 459543180 418518720 810999173 169250044 548309308 824037804 859843376 415642100 956491187 714849572 758402916 561385077 687350898 567095231 625000774 244199763 756905625 465256142 955672879 523988252 952297304 127177429 580973292 339790717 615910655 522954165 593669419 227172190 697067906 380429943 550156240 562684308 991648372 634809878 874975584 834079421 911566141 402538869 410318657 481000461 618245866 920672877 974943956 850600874 875934010 767758907 861279864 67215784 817476596 287718907 358905029 432165075 438422381 302670158 735549146 440740137 632779997 524829010 914235752 60222165 691480019 47570277 931348974 511417693 582288248 734862861 975316189 663964229 729376623 848759992 956383825 598353270 678514368 591897919 735461497 80178337 490733723 358641404 787053013 597240415 815058095 785230461 803691655 724685525 975046235 38671372 513085285 914937491 963860665 78368252 594460904 225577836 336621260 983082397 988081120 772031440 891866044 392825017 622310713 105988699 757714366 322346353 988731961 100769689 207993274 199787855 907160214 102589142 801830328 295520069 851833211 818799029 867786366 169065075 711160804 832777002 975126358 531663515 724667895 656700743 795315171 793414671 965384838 121717550 290688712 136509834 137257541 781092298 987935475 942397950 953834301 52060993 488775347 676245112 681181610 744181444 913036158 555517889 591669651 854656027 987661646 232499052 887692624 858047189 977735996 565908566 898118971 264276485 656861026 808315571 939615052 147276732 789760325 915819485 985581993 978363136 984658929 36189957 47553871 973940968 996782774 243984645 655292378 455312690 852486564 615132209 902231651 774375192 814975225 818819302 997862138 526764383 618524668 389853826 650739853 284132957 696077708 963132993 993524646 998429937 998869391 21858989 869016832 568332038 671177983 436631815 842031055 295263706 435025674 369581926 623363358 247141923 423428883 358154586 488582756 601868999 919141424 103859636 667225607 493741245 606811242 171079891 620794605 40589179 133575618 312066664 457255736 506615793 598038303 306254411 711175774 888794924 909322946 362471619 585409538 683164012 893421220 324471336 682321800 151185039 930911957 724890056 734141082 202913858 535659913 502665243 601139442 557240474 953777907 452658113 899011036 266798803 907504239 681814224 956489745 71372165 851543202 702142691 923825453 957366069 957422842 785418578 934599276 592222264 632700481 810086185 866111791 167126204 935018117 814072147 876203856 812122622 945475825 677592709 770525375 293827546 332065288 914728285 962948570 657185039 939488692 365568287 849846204 468906017 689758055 114165978 251114807 774676828 777150811 256643348 560437183 216583134 784463898 558066317 732842505 362360704 381692262 231089198 850563397 43889165 423585544 691630588 875299460 429854787 690520826 573868076 928666514 439352527 446445743 382267983 436422876 328329026 477350713 355237238 951077603 432628425 888588924 1762542 111869356 421317577 632701052 39397239 919706889 159512217 392998625 633001885 793759286 302785712 413629863 450423431 870661045 256554629 821265129 175293411 988761836 979830856 992015467 609767640 642187621 692145965 853447023 320803416 917408955 777460601 991944995 952589986 954995116 161443647 413535293 979902068 996095895 131286275 199506538 720228994 947840080 710464106 825653679 63867407 774405158 308481642 460098102 229233302 544627368 701392679 796364198 202221518 540994370 140269936 451545765 302747357 913175151 729361265 819378403 21332079 254231037 711062817 789289455 135526033 901525772 315300715 822333066 785997865 939182748 550629836 984744377 828300640 909046145 364952918 998186426 343330184 915174893 81343282 286874799 576416325 580846188 265158884 902546926 861814551 872163336 683811605 862095379 288886299 373131006 710781579 784291546 642665127 661011061 31586148 142615243 269512916 779500570 220369610 981213813 869913513 953029101 315621750 559664856 691015909 753563065 973657411 983709523 188588536 756437432 72643894 993922469 212057836 950582940 962214272 980890108 351732449 438047954 389119706 512230079 504155382 644335659 760058789 938862283 853864685 919795811 537851228 563880765 575600999 888422026 228288685 451115842 79128837 300732224 279980497 886864624 2261057 87435260 824433854 889486147 318312890 867079324 2697351 205153701 398017105 630445335 931528796 946662238 778565721 799159931 89580348 306881917 371840552 413223142 658090639 681449647 425703796 846762132 710739194 843882980 922937003 995356365 136364235 619528981 167408098 198364518 73070061 896332992 923601350 963419580 135241883 910290278 771384346 898242176 369158491 492418190 847392411 903712159 830282493 976976919 44453560 556064890 615345726 717214620 620360426 918001062 443260252 991890724 655443076 808098428 197960061 728988752 360899805 838751892 444105508 449713783 382041720 791448946 186269057 431937076 532898759 917938232 176671146 198190249 986129032 995529989 688527548 970353103 75227041 614822042 420463258 617556656 84887729 738993434 964852849 996229157 72758314 75939823 749312547 947256276 662760122 825257557 777349340 832565712 453776132 976964324 8707875 950602879 215502246 646309485 627123524 685311953 729440550 767423778 79392070 514204574 608444427 673735557 597269225 604727730 314188866 585226806 68711785 217775447 871336320 960745941 895955450 952119501 542154277 926531651 873939774 892993138 554171 310357493 731408244 826210747 762100161 869411284 235888531 731883070 277719075 638541520 567076670 621437448 757130821 875079275 602382427 823660698 267667793 418199647 317908299 893562721 482168794 724859900 599869855 935111725 509161800 600630587 915712129 961034796 497193417 675558920 21816311 482823151 991820903 991947970 273450363 817552995 90162584 458213930 227122581 447182342 852179004 917025182 227070721 955600108 625597406 956515039 584370302 986252156 172847925 884712843 892512169 980294153 429996853 852958622 29569621 799141351 668674388 795268014 887697518 971633391 742980785 980246960 382889006 854601987 42708278 670327679 943954284 990509528 241241596 311876956 486882090 979855402 323612732 727145397 850225820 984714963 232182818 251259500 905709035 995552679 670222238 931745703 33708369 364570936 988621346 994526421 585501518 954864685 467066999 470264073 603363430 973235090 680087415 997173203 195922255 338797054 331880797 354731150 693174474 911381664 500298333 544526607 594808840 642799746 113840164 833663816 280464681 338191352 281148551 519356961 344031926 713836693 774160780 957004416 445146046 770783600 229683052 647234314 300419540 322770480 126168706 249436790 239250980 999788416 454175581 566152988 728640064 832493433 514374111 915405962 658091212 960846182 641143797 939230613 436082554 521501489 921295957 935394152 744639275 805243222 927858626 936980174 459473979 747414398 708263832 945559630 457495715 761841091 447213888 717976541 787844172 803969401 72296252 628562554 216343985 877174573 45072135 793472433 375382413 945759096 579268607 708655898 958006458 999426069 664627220 794500086 813415978 816475619 855324689 886968444 914462487 969766006 777925598 973096837 943998804 958864387 933764424 971807804 353446065 737432273 787216102 989866843 973178391 994555142 971287209 972745130 929642506 976214333 797982843 819632891 624873998 750243494 182174636 621102903 562207254 682205381 434766095 482139735 908644671 960675429 349614716 554355853 867563344 897719300 697540635 845666397 624827526 714232371 337897327 784112868 346706939 551942289 298871355 547559318 871611163 992059604 416370316 822257140 306691845 807704717 243203818 448973005 859077656 905935061 722373943 922748408 300680277 554574523 875971621 929508329 478542321 615528867 564899670 761784436 445299362 853386451 670942010 864156230 857765111 914033784 467996539 794975650 848396023 881958628 985165200 991944464 28567650 967464097 969152464 977514129 853207148 961205067 567322568 784967377 557203706 729370496 410317263 619811385 833548566 921227392 705870135 976273783 17309314 477283327 610127054 834436251 572898935 803695049 964873188 973008596 374190218 754050272 796478846 979922411 790670974 969449963 396582338 558963431 931869118 999713177 779202903 886188029 963407819 966620321 58399600 426231153 572960725 869248623 505494041 541367311 761777027 969891855 526544524 543923067 515781768 892021069 995489134 998970549 80936461 441203739 38783689 344367815 132656002 405103413 205544414 835974077 410772892 893083953 173189326 382908469 106777114 184045282 685903012 906452921 688066872 963041063 524059674 702783961 431144043 451441398 527980083 605919153 792391434 891484116 891333712 970279268 627132915 948573827 560717937 680734482 399406271 651738684 340043007 899740566 387129608 702218169 301504737 560462820 316498383 334936039 140951436 918438202 895220706 954448693 542754675 984421043 702136380 743357221 442057361 601514330 256467221 936379274 799571328 901924205 391025440 544725444 614886794 993579354 618282198 797785597 809876621 972394953 56874189 290095032 658317072 749796756 292388051 730710704 931470360 964191578 602496754 799291110 997490320 999058234 885061974 917996104 169719543 731896528 195612248 226124656 45505792 652347578 749329199 930143480 995558757 999675912 906839040 958151149 10557812 11760022 623766877 960223758 858129670 956732491 16258007 17847370 118458021 281913295 113265284 505960820 647403275 892306127 642157772 685710201 809988935 959271750 845003562 995946004 105543332 249540972 145989549 351389281 193603795 484618758 202941313 296532417 975495408 988863521 85705966 744552276 458951048 774874035 902312254 910623420 898747689 903234451 951058620 996063453 163480614 698485469 245960575 520567148 506029370 679657147 370639687 704378271 73316898 817957574 563077831 975627435 551849313 709332328 516036411 722503338 480375985 634939103 422532019 783829725 616016187 677092789 899310163 963807782 513789153 693863788 756888318 848904796 610345497 805190198 74984408 383869857 993234088 999158558 889509897 897829945 557852430 941726018 893271877 931765277 620389563 698230321 423905292 554825076 926486582 964857595 229759753 916094687 327888999 383319717 521557489 550691539 986818801 987349161 152566135 829018527 668707045 789059032 55315714 792137880 297580000 909882805 769517282 847148139 809137371 920014485 652460766 695726270 429407508 896126898 66751579 914280749 32324086 784938700 4738426 684434006 601595836 829653699 307547284 639985207 26132132 996480318 493476820 552315762 25051513 766867291 656267465 868174383 7615554 308534951 700848194 842771547 535723442 789777517 732474754 789213036 719794314 779292381 985071084 994015499 4606161 716505090 620961520 861799147 609578541 985005298 308785330 523212599 611195815 812776726 486508571 812742471 13821228 167484008 42227009 679804266 668773775 808608612 83586524 289316456 506045377 830309566 405246267 542351307 853553398 879859613 996952970 997705520 99794284 908504376 404086467 592328340 259810311 536228825 55305018 172756108 405666794 519266081 536573269 641497025 410615430 655740782 916455284 939333217 748167203 889264239 767802934 930007641 364613758 927621100 170754035 190271158 680289117 889759469 563102614 730286042 412760810 730894475 348763692 734486837 544267010 551411484 654703148 844079686 317732733 991175787 44674992 215400457 61865777 560122897 798399843 929158089 189344613 618497685 282212648 659089038 698944852 889405492 265200124 742501217 147250672 871494242 814514248 909519289 582799889 647354413 917005282 917333270 87873315 233915361 412874796 525257244 717147811 800378600 695018856 731446386 2919629 352718536 181094778 972042900 869583769 889897037 698707762 746090323 823618917 824406959 111108751 682778317 537720060 675101477 276857014 655186398 102230267 233041331 40093380 91176629 467157836 497702701 22647340 284511204 117964212 380514365 83431380 174504384 332294449 584022131 206351135 491771268 614617113 963213302 557784307 799100402 48080740 989247963 184819617 511003666 295797186 544596820 778021824 929981605 842690881 914694944 659890267 966472005 634279453 666863323 155069356 206278923 299306235 431832319 423603017 824104171 63968911 464554283 898291128 961813642 180609591 477469239 433517044 859054711 830664039 985701375 371456199 561152564 558391756 582088577 202619521 626716681 862111576 878614471 65450612 649059196 778793742 898510990 399319170 894692620 357238812 905352873 795090349 834296668 663848616 761557792 194435488 347405589 219515253 442094747 843634572 967642638 357029970 918562151 960293548 965835677 303579551 753712750 221903799 933241600 421096875 674669123 955435974 999734320 197909132 201778308 382313587 477673650 777713721 984474707 276503322 905271007 525927384 721516998 181673275 443899491 588160092 983835125 76037639 325239877 908030567 977239533 966933207 995149280 563701335 751593517 690486247 982670737 809042137 969847232 290752945 809159659 914369415 919077125 86850957 886096136 621651986 869867431 89569757 984112046 110596797 801755185 155130070 337056799 838199872 859844037 298197802 590953249 659433345 670357182 117494502 977327565 86558293 554413068 646512538 792037241 616972605 834387480 294109709 580453847 713010749 848216249 647013900 679548230 606799795 613859029 255195971 340347420 325492963 342944505 106211709 807737244 47133604 885387823 358912101 831081620 678775091 839696017 137331144 246854347 840830623 916211289 813896089 885062289 154618905 470104644 541523766 809559019 722382876 838174322 688449781 697373394 339125822 483210323 348639864 644642380 532843729 708194019 447338638 700556511 77812730 869602536 28224783 348514038 782852663 873085077 314433999 753492350 805861256 927449925 750692332 982671407 250805862 848534637 354425308 571545963 945625350 985495972 854831632 929999241 988870285 996319003 828039619 858325626 937327171 987266098 20044313 373364427 384586695 575521087 491956723 992800429 622099032 859493941 750126058 887890435 323177357 375167737 69486131 675325943 880425470 974429841 615350463 838299913 922003262 936275162 566129929 611999761 454350271 589487101 588564662 929355619 988313650 992608717 597600239 877461135 175153268 353513378 85182286 919722235 552102635 590534802 6260726 185550671 200538547 623591220 700255093 731605173 980990550 995658608 399394217 842659798 139514862 633215921 724504672 800708300 646584378 653484364 234864251 873864969 265902390 398558215 152506025 473861680 856715945 859202610 568543508 683231649 644592639 754417565 978539263 992719724 291353943 343914193 259085039 950958844 455996156 978739583 26764710 179349763 988142261 988993578 753794678 913015363 809351627 978165440 431426937 691732939 594522467 773168905 813570033 840511154 357750919 858392839 978217828 979855363 704727322 792528041 727718153 952974259 258673618 406190344 882302099 973890804 169447276 824483401 733916858 930827983 646271546 959232697 184396216 640042803 521746975 843677088 932029229 992666123 121282451 423295018 442648382 446828910 517512240 652222432 337409030 718695180 597219726 951080386 372205087 945016299 715300904 901105246 484986665 612321878 526670770 777005117 537422846 928687916 973378469 977651969 667515504 867594718 746632566 812894001 885115291 911587419 274064533 478589807 866367497 907627748 926024176 995694606 337012178 949950473 820345197 917995170 276017551 499655418 6617249 59744583 831707225 993465847 106297002 484770973 435431094 485189934 601812684 828817569 535037327 948208896 484951759 893469588 592655131 824294174 220145882 963566816 815426339 892454464 886047177 887104953 192466641 993400726 618523856 941462265 656663280 837867688 595887353 699579180 963638315 964215502 591693885 939322428 168727221 814452643 650872019 817350536 913262916 964910265 456359299 754001291 81519646 246603154 965457553 989250555 257034068 801728934 874770781 911736155 651087850 794981467 323247270 420144265 4320500 815983271 372700337 737335606 167688122 801721893 432979700 732968684 616440331 849176190 2504885 679442399 606995297 701532146 363477344 740029620 763519818 939708306 475486311 592118762 545516628 809409305 866547080 971192771 447675944 991130051 367918635 679922135 632882264 679100253 682906307 990100287 48708090 984998855 617011363 791324854 201497043 594647031 837275422 981845054 260679480 992486976 963196048 976902535 18206875 514948343 57659712 217124934 390921526 587435961 971202063 984139890 827211260 968848902 362592106 831984445 17325398 926564925 127652221 628132446 268058723 441289027 696989174 757438631 87044036 808913439 259933080 954431062 174829512 962848236 585960495 791329531 522685427 851746429 41019497 692545064 482898616 693862342 420341884 440140053 118509441 373801450 25801852 632178203 108980410 974915874 611511668 846752903 44891675 515478268 652057803 787518180 966023862 997026855 315167426 631806660 889441954 996184895 788196855 967842695 740716865 919156462 116587774 514561374 83325041 255897961 275258407 575935332 674403720 863521848 208485417 661113817 385757671 646524087 731673103 873055969 687953812 753471216 753186042 918314724 320322053 883481037 844825251 974076816 509727986 969304753 883923784 980263866 375796154 699314618 619994871 966823463 310786916 344449683 401341102 884821221 419160958 458280288 191451335 191962335 74570653 745313744 256888631 460926340 198103594 689169782 38091685 296190916 787364822 853773284 430183530 915603848 758318265 979191766 37573727 931153453 637209505 845394627 144105160 363352753 204737796 209564023 771016387 964994676 422570720 688018732 774372682 946478674 228303862 889740802 580907132 637865989 637139457 773742080 63009356 387230433 325410785 640724822 576351194 630713403 416006852 483346658 998098067 999026127 916407856 968018960 708390562 911704768 840935904 870879040 227594719 231091940 475601966 813217096 88215147 322245399 901542041 933196605 986572596 996311961 575587081 694604406 325337015 635920254 548188914 614503362 593858470 982426455 37242696 335680701 663112437 885789487 204163242 456476489 935238625 977870500 226225470 990766674 162435863 871198680 691073424 863407662 933937178 968924526 348698641 678996044 75489481 578130160 310147388 604463829 687726093 992541947 6107515 188043065 442702842 587115801 949769951 962683700 996498765 997596025 641238170 853985657 194253060 994013372 116565801 742318333 573204510 900061777 989365510 994585400 422380212 828003598 980425321 981120291 244822441 564482607 456358846 779350557 951165050 990607126 25464900 552091661 627714603 665351447 580728181 599570896 513620328 969731928 26928154 886922249 301829785 644456678 537537336 652357855 689126323 847803777 289902410 460408794 190606867 460892160 149272012 727242429 827242164 951351435 725641397 824324125 72982388 164828310 308334429 443326692 176477285 449167761 836347855 938031036 615780495 929789690 569794969 639678742 897083912 941534944 400580653 775047961 14647086 746892891 618255067 992765352 640598651 974966325 682370711 683234044 629115948 725341144 213296652 301276095 82070167 454260439 731989276 818941926 728295362 911344651 346761935 392050124 731392971 964681131 138923772 849947198 634992996 737834810 741320495 819169463 627815240 685478313 246261367 275126701 482116692 720469610 890567812 966560881 986133374 999258190 143974630 576098059 852588360 868771344 664569669 810859196 127634137 824090546 97760316 788879429 451402322 885105911 511182831 972295162 22224127 171799914 936361112 996826949 69071006 651393398 400204658 401129639 26065523 100141888 178291828 770043195 733580693 955623896 533021575 965555174 549054900 632649486 640972618 688379366 260006944 603101691 24460034 964440388 972254637 974585590 161653463 700415453 635184266 654970521 682415576 960696920 985969939 992613095 806178249 898361416 845173763 889132640 555380897 913265252 216542323 452456632 822717820 909093849 190096570 339309843 421523477 459575109 424800817 731206717 442929931 721001238 346485682 811226398 478145511 699041810 509886798 880200041 741077882 946938829 932317315 950808984 318771191 905583668 816333454 837479855 363597523 624640301 421045004 613522933 325793484 562614962 906957128 949180116 226391092 266600721 578996559 929768585 95189169 653447696 731851917 852458141 527388058 737735861 395310124 902334688 197397493 261089939 913617653 994209597 947757205 972686042 328710517 423208091 8633192 799992400 39036308 324719861 1746805 480458690 9101123 401168377 900227653 913648498 242315991 242328581 276739395 549473516 430839635 875927583 224994085 944012906 287291231 464713297 538014156 538847637 846610355 877610998 661094879 908090911 862566356 901543338 993994793 996347856 495774236 857806085 450510463 481788939 282994187 649189122 660945678 711076944 750667318 822350188 339174691 659116708 287679276 956982525 202956832 455117438 712438910 914605959 127941323 185147583 789147300 895712902 846567830 947045885 508226940 570401157 517315043 937335665 192836983 325921889 957610679 989822596 357973304 533220676 316503657 841626023 338181035 684490655 720806623 995354750 630722981 673334982 342852172 951958285 323250909 377927290 544796041 592772716 654161346 838068141 932226211 943082015 962620734 966097490 494647722 574896681 431357571 552967310 675376406 990081574 247531316 533859916 943056562 965007944 801097493 997453563 642629175 674740238 853684555 856918478 803050108 951735480 418584268 668530983 462252427 557946976 185982989 240752002 59163727 850992084 663615692 949459066 949336101 965364065 439753195 843447319 739166877 742688515 992696695 996909479 541833165 883513692 811400388 817827103 544144742 628657887 656227659 766546810 158969108 519002328 236741466 244320540 619560835 664598126 499151467 993257241 488192383 680138429 353585495 493684886 34718322 840504448 827942961 840053890 176852854 471992438 730932203 964264277 121840559 157823573 344289496 590059512 12073655 636382020 10532370 24464251 421859695 430923400 195590659 591464253 565361701 931642961 91318265 364723393 649695905 950634184 434794323 807292135 544558696 780531611 891171949 908110378 444362265 529969489 87314153 849595894 668519070 745394826 109384664 416090304 614653512 680855219 938085039 965376366 634976262 981028675 181104324 594190752 930602505 985657926 200651293 399513289 544039686 977400000 323974840 638709575 735941747 742576324 469258507 543389727 687114488 935539345 849060586 906205005 536368448 933532987 397170334 618798164 627604744 956279730 261995851 320198320 762035838 986706226 122396417 742851638 291788515 567404174 839119658 920391182 703546613 840129606 178387897 799879618 713761005 878944815 950438801 972353045 883652402 954212551 943745610 992541025 122186007 716705429 86223990 654099310 374444125 430201225 205747903 674746985 827206557 964069750 825892782 889474388 650546660 886281136 455705258 766585035 379837716 884703659 298599834 856442377 359032417 537056547 981837845 987153085 528628589 581253067 481529748 600998824 725223478 860854516 142246333 903589371 159781233 184638877 422381367 536819228 490230436 717000222 653702206 869992427 880256861 880621337 343360945 833410142 101642109 524837817 684381180 993271727 943865166 946931463 353044832 532771981 500131504 656890478 170126176 667265695 524838680 637205817 361353262 613275064 773163856 966489734 852486869 953931703 563871652 779593023 296256978 368551311 64798838 854176091 934913279 985940264 831770287 961085744 840927929 960918393 891660035 962422849 852189207 998048018 957225721 985277782 193109427 543815723 517400298 759212584 41148439 116710639 682402767 783160519 272096363 553322948 841263653 982478538 369831908 575723287 909819185 922819921 426363286 806099407 53974194 574636630 165462273 236176694 366412914 527224180 607971114 639559665 533349718 759172022 407750197 686375087 775301732 792371576 93704660 498984344 143690686 366437126 223299520 398863573 644408579 715551405 819585863 923941282 374461107 385902538 293742551 704773490 37227614 79766828 946672984 967689418 758747725 889341789 237574084 340781103 3600526 500871280 74360188 536793514 420535767 892272376 639956966 660062306 775703979 887408179 418641452 890473606 467925813 645278782 859697834 929876247 159886277 170399531 476677453 640520378 538451673 573992415 392122290 837167402 108937080 982394770 652609947 687431222 596077545 898922517 366634485 387121288 40324538 459807707 497720192 810899828 589413787 941190752 410924783 646826685 341809534 344504965 169199840 501547070 356287306 810334275 768700582 882885686 477677562 734161824 764550502 926246279 327431760 963680816 729920735 899518547 824527671 930113383 387013784 605621094 558852967 986149608 981674060 990017946 699553367 769692018 475474228 700867739 566666146 621498624 773762699 991633749 294888805 657181990 858304503 997331202 87789415 657464222 307148943 959974008 548574760 593305038 700768528 722318159 149867794 605147605 518691758 891104216 800023796 967294070 615262022 665533541 422982738 429520796 607750266 619767813 647327005 945100573 394199873 488534277 45841304 925161325 259258658 261600893 248385170 317789248 726128663 849828563 652466857 747189929 848432630 967991221 876994093 910383409 531742444 936986713 116731811 799264551 993877152 994320926 82503724 489543530 966662727 967436890 630041116 808160039 683939338 737647210 223186831 616216153 833810888 834726758 116391224 832205547 474081544 881067725 69622572 276442115 685529960 686695682 355515678 871692451 565791322 680710297 445786387 944393032 549201174 940661139 26094356 809735949 997833884 998895339 288759943 651872468 606812931 900231371 28133911 58590790 411995831 712698794 205489826 234238308 708464239 770428641 511636219 676145730 551357418 913503727 159555936 972131318 543960889 636285168 577067294 631203911 659314404 802329140 208261302 684013651 10556729 731225735 957190297 987079351 804657999 946115487 873464626 915683253 489631292 706584740 666802834 811381996 841427036 967509775 778347502 844760690 616294017 729236931 985473049 997110010 467643810 518730236 692670268 812007539 689162025 766954335 447613104 489260445 200432250 381515342 407676049 788746758 667087288 816284580 218647956 922697155 863619574 879320770 233961545 631875600 663982724 984722771 710981961 836824585 49678159 766950842 930435361 991939782 178362439 553753614 236134533 824760269 648997001 845231849 288348418 331082103 974559090 977788792 235385674 719645440 394963891 451993490 569912118 849578635 662448883 701273350 814033808 914038402 311704232 621104707 750811947 919569158 773330587 843657810 992034507 994892625 843908926 960702770 227052733 805849488 384306595 803605459 61218466 217114850 121665283 439502414 648671876 782600035 741761164 996936414 691713091 780588234 171014577 527507400 868311835 999969631 475722580 804764885 826291793 929111145 738256797 809634969 95447990 206406139 913349857 977575227 514618536 965771341 776641377 882478323 637580624 673064691 800289487 974120988 385255717 976951691 304543440 812807839 115530992 624895941 847697909 952565893 250290632 531644944 555116737 909236438 204373600 682952599 80577998 774749840 556190537 795667421 102270192 601023614 896940123 900007297 310016973 617936820 885401304 982951788 367567652 482551980 832848764 988574178 611339091 762735391 860892184 924481627 889450325 963922497 929885438 957406822 184586918 845019148 97086966 507758191 71024751 946018701 466801624 690897185 171745566 901591190 543925523 603126647 384572402 523287878 694669534 809910856 310680060 709157323 970899887 986863859 323290136 799258941 708392202 730149298 534591889 790464368 188096957 470598626 516288276 950930321 859541509 976319167 6409516 38541129 57046186 82747327 387695856 745308967 425197927 615274516 624937100 922758370 667096207 840273656 581421086 732939549 206943807 500483530 866486722 928047700 306515000 809470047 369136962 460913177 833237838 866421666 500953805 791116047 749162042 842834584 992491563 992646193 15048329 177071669 630492695 992402046 484314468 587085315 365284994 709697075 925625888 973220949 557993211 964994791 21291876 990887472 595281114 631037346 387415072 565294810 224519467 988040257 519565845 612855125 476998850 522215765 512392696 649342584 883916151 921559560 160342485 596178486 279614472 403334172 403678185 961474022 380468179 845566591 601244564 733495017 102574244 940176374 10723631 168820817 116882768 391330823 325256751 367843132 918547931 947440257 943704652 960438782 985164196 993005394 41484984 151504321 330867974 717788337 247877564 898740346 139902374 280058560 597111452 605973360 547053539 547802082 763382817 931743782 127146758 930648266 542256927 646756794 916637332 922696272 158820071 653416020 312961283 334712462 44199789 539223881 766528286 977124153 934827875 959439665 616943737 651721337 131893551 472341860 45171600 146785005 930973769 962154219 803696519 971987217 988571107 995150935 199817307 394747567 347938826 976222336 311500432 992749848 736067574 998884725 92039995 554606822 926736645 996801198 957376494 973401767 397641627 596865164 488874392 678054885 499245107 754618529 153381528 446213385 583926642 998486483 354114416 561227523 352540779 355935819 272165281 540788128 330381521 350565881 797994880 974239341 614822525 903634605 58546824 610586307 180180220 835941271 722785819 972076522 252475612 880206766 890282297 964773235 592617302 877478108 645894001 793118909 722621940 726230663 340870277 455034728 257098335 450371248 912408074 940802086 927556336 957176962 547239451 962918574 34611973 130189383 343144537 485812090 857753646 952428435 1185837 736620961 133430131 272171476 857044159 993450117 643340916 810737615 226959124 368805536 804425884 915015134 97264673 274743588 283948211 407484006 850804118 901458340 769451243 928677183 716913482 743780080 225688019 517821611 703327038 841755925 397829004 437429015 67348529 543185549 311607107 617768829 202263770 389301675 612488006 788627117 306586857 586772486 190544837 981171713 855412252 887320099 492417650 759879005 546187283 858525698 895708330 903152182 916579499 938319469 77197863 573831241 821071926 983153782 112719845 999456705 711951296 968002919 294540655 311984745 860197712 869592560 704236291 827731715 143405513 368445132 688580979 768210567 910339748 925768789 357024568 719284386 21486515 216537300 800626904 906569150 784895312 878468639 486565854 982894840 830267392 887562888 735760160 987785130 446408925 660079245 586743344 788150681 574164158 965190357 580899680 945305921 279636238 726700486 446460793 729479164 895179243 946493845 838108291 965608044 236450387 939853641 248986194 776945929 296422881 919812550 176005921 458389515 546307408 664396975 49658777 700348687 48146183 997124201 634544148 762071591 782004834 832070912 713224312 769955620 387226316 721869446 720167975 746218348 899185995 979016325 477808826 564919433 713808858 753260706 821212474 890143355 129292279 803308354 640433094 910319389 37759976 63293968 492970157 657842161 589438300 854962608 702382848 819025980 25091121 390451403 606975790 938890657 320653613 937339114 701329778 725634512 923267146 946835402 280978579 723505349 772622950 852562308 500079801 581128541 806056310 857159677 121281112 361774123 358197769 836628918 642289692 843267285 916168609 921431395 608020152 738362733 969839457 970187224 64662834 678636002 120225307 509939168 314151400 340772502 559138467 853994229 957302105 970039562 371894499 535808027 597159501 701137882 672758803 870199414 410606359 518940600 7569846 965612756 941711794 973134010 71910103 849211648 990983809 999572424 455145526 850541637 440352364 841167846 666319486 697192575 265047088 317725263 183409876 213326450 199316019 779925740 878052848 932380308 154640873 763816991 442304425 871729103 481851550 842811838 112233987 479726154 463593845 894032095 424914022 608587447 438719292 991158906 963708466 994941943 348766113 677851531 57688978 778017887 912549876 925532568 223224058 942285853 701666401 864704662 787204689 849741738 474531904 988411443 881747096 908121698 953990317 993168506 62700487 312816947 492561383 571597253 990385349 995278234 123741783 159473694 698051245 991922236 99345838 985323827 158052375 702492130 243742866 629278404 16757027 250849066 354844593 767581068 329730808 738677380 174877200 635403284 701944398 969803371 22951288 142043633 832591448 915510319 489947652 692771204 766391090 940092470 115024455 601870902 330430783 530393887 658827526 896505583 861207580 907291477 342133489 966053446 812046570 990580845 36527760 673791643 265257625 384535134 421651572 554096349 249367647 914482883 457279152 721017447 495109194 962211936 747239730 917233690 143645746 885826177 554786192 874931739 139257051 670290764 8723422 319484466 235984316 942528872 928916890 998266020 501958041 649816905 288232266 368928299 211212574 363042340 339529349 388642495 228677053 930418563 367375048 847412096 803647881 924798791 917757171 918788479 361145575 693325856 338933183 750829613 727502212 869149149 583609790 941403665 887907847 996416312 625346500 925405029 122117177 875489632 891075812 950105635 862504710 921315951 244049991 746881212 416516173 763206216 249338520 741546045 519814290 760844067 449143331 578379664 796042894 986894926 602091639 893759600 6340611 486190614 46332348 73187130 157829082 467281909 383403817 735828658 130953313 806498600 325412492 975803237 608396002 672257718 457432085 832823488 11134128 792810387 601550488 753972907 74928885 519389635 599508298 798637144 670247028 696371646 767513518 915549550 196918394 860456788 621678449 806943932 525456000 691337438 14677793 668596844 707063583 841331600 283238890 376312018 209066797 276632052 492473286 658822092 451798401 857034007 918693333 928279781 921661352 930453525 681862766 788719456 168708427 645758773 760372723 904554437 948719574 984037179 207579724 847495404 852082991 888265893 327145283 600341421 957446229 973132357 900590530 989009600 531202870 674065485 161779307 242443404 889186120 961838193 631334263 916469030 751631940 783667239 201411831 332975892 462077874 528836580 738712813 769778258 235381241 646388881 986514800 992142976 328330812 340817709 812591711 930042764 460627490 468015326 697006772 706416921 360993017 945553594 936750943 943866191 655077203 829714884 55960539 147187822 185254622 766512868 846521181 849739391 392859836 441273943 703746965 847272527 865589559 921208223 87402981 906473073 414774670 683011232 313597792 550219294 375016100 393903624 58743519 996285398 354935456 414017113 192279607 897210695 201352881 490366913 348464660 897404083 38239423 405878857 446269815 625165086 499367218 760507809 364081263 613333275 252862478 900187471 637096423 982773704 431534586 587485323 898426538 995907052 226452728 824444316 484052626 866343080 612309602 738194768 840331609 949946493 825895426 930823104 166842015 976502687 911940118 962328733 240084000 934583979 716042508 993030017 533513563 753489384 710661679 943085354 826179255 843006086 545164482 950551975 128298776 370519944 589005398 965130479 370418028 599781243 907763165 916052036 72036206 598072704 526191315 572824871 487789414 647584068 322782169 616269562 855515795 989709070 771344660 850098131 750452205 849906565 12315728 703714469 617486026 739133862 768226428 808759665 157870334 669862399 570535777 774310501 891756514 903990464 643283672 843777019 538904462 953693181 309824226 959930663 983170228 999092671 426694804 917076240 43374529 588904865 22678876 45188926 210981501 848228680 496703338 784588083 888129156 888880996 163158014 434461080 821819641 998719141 947639678 955816832 457153209 972826825 953554750 989104419 133959662 886723202 189174989 675011283 355694435 513372434 106868925 528494276 73476030 503755355 549368461 560988688 195373012 848466441 676640452 702148650 87754447 493878478 411140923 751991197 206584510 687397271 427536601 904619238 671553731 935162740 278278096 782732928 210282482 985797412 661553981 736977091 554902234 732868645 151103832 886438119 323965327 662105947 663624616 993012579 312764413 895373627 942867381 976151528 122443207 441074642 784871063 935672711 325655564 430087636 728554595 803015294 152648418 457867971 288172436 822255069 571439097 869987230 247375982 298127325 249639125 813419459 199166852 581836955 471262420 578147309 80407991 464321151 548471209 827218169 298469260 583270520 883574566 981529003 429540142 769359381 737441641 977033977 993758083 998544341 885005194 920420064 18795033 979388186 452332441 467203170 462584581 699317281 267371614 406769791 440417236 655192896 499465409 798327502 843847446 893599480 104526313 864178680 37624699 425258008 260025639 745373902 833593019 891351035 852402991 948164968 647456630 760222344 664719359 898269337 6266886 551717738 800327902 891108131 948749948 966475828 813205662 856967632 781021844 941051794 782180229 895442965 22617788 437742637 95858081 868877358 348377278 836090545 838399256 936344164 713482279 784855968 980646451 993927349 464065147 636340019 214457167 676225415 318151916 484441707 530994281 952783828 786875868 827184161 1242345 839878867 117133569 933924874 639932738 919870071 318094754 963107984 165187481 965967778 44178272 363600393 694488810 955307133 763455521 781146844 388219495 717183741 406888760 480982906 22856583 346776459 601154191 781018514 623664101 754175288 322374936 557449435 315845923 937043367 752066944 971464027 150847680 547645261 622006422 792228180 571898831 842433847 411736036 848377648 665720662 949973313 930132702 981393517 836577588 915286282 55305547 406662511 462277921 467116517 376220227 766295614 817738304 914136729 519259524 869445128 400856049 699393912 471149903 689143363 960025633 991739296 969202671 971565007 484175475 757606821 791398719 997540747 115666929 616143529 970069885 993556485 836720281 842325139 610280390 638035313 718265985 836380045 659587603 927693194 108974660 747065609 290897680 678842620 340863946 845986383 958666370 998592421 414786412 463665532 234357586 899023369 580820776 878594080 238685771 667986188 779395237 979184717 994245194 994607966 897299951 972116398 335567691 466688394 798539958 807723725 674166762 704166780 250585321 559061763 594226186 953695476 241049470 754569326 519069323 958220028 686230834 967972620 245594165 455190111 465015627 626010873 514843955 931291440 794681866 977742632 322970541 627081663 414002354 772803914 215133553 394638236 14612401 296081143 833301034 937614820 459447475 657660823 357121863 420919206 133501567 282106436 469170090 490123252 620790540 735622033 71360075 932007335 419631775 978891184 458764573 910957866 693792321 837236457 302351324 448154361 508228972 524763194 169907942 582849141 91071703 174358480 106057606 947649989 882428444 992053153 716599488 881421663 37021687 351390737 852883410 994966746 439584761 697314013 33628961 322217040 306460521 501531430 514631696 601126155 907707628 909563266 288536338 639035868 146384180 614041614 358679247 928016021 363373711 725935375 26115270 771826546 965943600 978976708 485329356 886750358 540461431 668641800 4112846 952541086 226132428 305772272 494396656 655922150 984980145 996277434 969513827 999828989 328059850 652288318 856952933 861044552 70925934 677462120 999627886 999938227 465663160 800960988 213268810 915292873 782864731 920530619 879841550 982235327 794421676 934530415 455134340 998741113 536909057 828217514 357174694 663043212 632027040 898025930 393881084 975316720 343324164 766517574 393769761 561753275 5611352 209120857 338972072 928993191 919145075 979541133 373959836 809082190 626657912 988911281 657110583 868099584 708978024 893201929 292885767 460767579 425978888 879581900 262507419 738630432 990050153 996286940 469251620 473399815 844276778 931854556 290742299 707651135 716150773 750333801 846678995 982532355 630284235 707526177 949469354 988364796 512234642 690681266 561259486 910585455 43065499 271332272 561988492 569211803 604710620 936072732 21737284 121883807 485657799 937560879 358050094 604086424 378452168 861883466 606568488 905434408 49333866 514393178 364044697 551414542 218826584 701989685 82142709 592612201 642441007 696140837 487275623 711880884 800741165 982135732 826613013 943894127 476828894 875257140 593346159 964496564 406620174 960841476 223366958 744019713 885213046 894186422 28874902 335330994 535417329 648610223 535384263 716270731 60686296 534123056 953964713 958552449 483549671 637956562 466652381 645725571 483749100 523758287 572305755 782539828 143173268 437556347 985811679 986418191 5554109 897703837 129065765 505491109 957843355 958295038 51692440 838806339 327223618 716780937 58359853 803877962 921155718 952798651 252832235 750649478 189643388 989047902 846465716 867558778 132805487 875503155 227750764 892738312 907777831 936230553 564760719 596125503 917223144 984074424 898431489 900990123 134716993 786087901 192284150 353876837 872941496 994187713 366993925 729967371 100618499 666256770 380222043 898993357 604113461 851184187 708253271 772186036 779566925 930620230 476407331 687797059 464401868 874240544 366316580 386427759 686819772 737966822 337575083 876342679 255118970 885811368 384504977 836561255 301937651 684791264 797985374 953578494 477935727 534124920 685291673 846704113 65417848 608471554 894266562 917251165 184230473 863743107 319434697 375770436 803584658 979922006 537757942 744840503 751677714 976082128 114147820 417925204 433565405 987666795 256372106 369535087 678744828 684874646 40579531 148602302 689264615 793511310 788363818 907353073 678749471 847699746 761712645 925634011 184412187 860586690 274554620 296291456 416861938 713642940 234870426 470307773 666956019 910230895 895886012 913251049 558372915 707655113 922024532 933949986 614910184 881988935 130290028 169967940 575859418 853517233 944851616 945461963 987665066 988912639 835340987 937026563 733849604 929926520 724456173 864492875 748317130 990076190 308747541 767036119 722704645 875254997 26423567 706518349 343449767 834674190 999298220 999774723 393036273 777852083 72704140 554325306 224371292 225696864 145323886 458201197 567277350 992894603 536061101 780868509 370669903 776058103 509699797 764465254 729798635 849176178 832488973 954241945 452347489 724047420 508432563 509607588 308215368 503445277 584454870 848637966 121170165 781386329 847749877 886350124 189668376 970672355 161363409 439442239 113322857 128120469 206087346 489600940 66592298 402046239 940494041 964413590 825273394 961034948 170649500 290703093 919848803 992851729 240142209 516754269 200052065 277348071 803285528 820651296 412906092 680675335 20716373 928643661 20081234 154484361 584328356 801338512 288541855 530717187 721614100 983013089 992224495 998141803 401272232 635974629 75037616 133681993 593477048 855500842 492468930 681034972 283767540 722823444 175604850 217385242 962862947 989988652 631496567 944733870 484970184 612666037 84409146 770888381 415834940 885935197 75035665 836169482 568346112 862293335 635227446 732258180 280447571 850218331 860329471 988470545 189527324 494097153 432335622 990411234 909653156 986618668 309873999 512706248 714405377 764909583 337749235 618423666 989266294 991435071 532466854 699194942 771055587 867946357 472425776 751088239 850430660 861832389 135871838 169488590 123682097 348516663 540291651 542126466 426760414 629635947 306248251 403523026 67591647 551313086 443658859 641335183 565278116 687524696 389986410 927693866 584289042 984176780 392117422 402198663 749908333 983865634 217821018 995778607 355967078 375173667 544407239 901464160 985571290 986738732 175794259 275895859 514818162 761711280 672673429 780242805 526831301 816181690 160120683 596503741 265907579 588797931 344037776 399085072 457528363 971033158 622025483 990439304 768691220 788569840 821458087 822353132 935648230 964796993 817781211 887606683 714207880 733756003 245793400 386717337 343643614 393149722 651598319 950222643 397050186 504366151 928540020 943214134 384091024 727782220 708756136 817767621 559714153 583220815 97556260 756688066 18417011 387941862 852192796 989102118 484750979 592862606 380812649 664735345 32647645 259102115 528301273 837103312 798283897 815194098 599638347 659879375 123520045 243394808 972134889 998951324 206412779 429835311 992206449 999318344 228898891 700279769 98968706 492858595 297332389 575782727 713576087 970445116 781217558 939768982 218879079 799745210 456410770 566844239 393147154 652493982 152054687 997754412 290370464 990689341 330197874 802156251 409547342 530784164 923366480 989484283 74172169 280411907 177851167 719997289 481350870 995519756 21912565 53717411 692344951 862061488 13571932 777459546 947133582 967066895 873468299 980352584 947855916 969907887 356777163 837219552 559682239 790546591 60560027 803299688 827894706 857101240 789858687 821887544 217538958 913859786 550264886 936547564 435463053 917389497 438496130 640154981 676939223 709881350 26071433 365850262 619804878 906017599 973632293 990512916 864365626 887471615 317477476 877131585 924082730 934236555 515441001 807096251 846317645 853764927 553242807 942674524 40574500 198332288 814129376 849709968 223339908 983344677 654978115 804048349 144884267 930771233 846023999 860208814 451777054 849658988 22748064 252032026 328711446 544177005 253218885 529802725 272204924 282764885 855097121 948796581 107375413 206679239 442212420 465706610 699570768 753314319 768571297 878637363 220402846 389023873 424702787 553812066 653709132 837036056 16074437 963160296 963913432 990632167 71814724 441015909 544988655 898478093 982854306 997937985 246891234 843713076 924029045 988628979 322785603 951275756 5679432 65695535 795264777 926311940 3707532 148727306 815923965 889283440 625908916 786764889 548414930 589320494 277958988 290172477 809857176 926333121 593266919 822736731 151260345 408458114 723709764 754187213 24979902 44591115 824059268 939092180 285813814 742365966 522156318 612244335 165423552 233694555 285597979 439825075 73562614 901680394 197162586 616966554 137327952 401843438 620135386 828146520 283675429 568214660 984109806 991643694 385819361 577332592 101493353 136402704 399385519 931795828 861967295 970460048 267123410 821460795 191871278 619379709 270635538 682755375 480663983 924354288 981906926 995647277 889155262 937666399 239206077 942673881 975823478 996225459 57060093 638510898 589946100 742224585 488617163 641060416 974726806 998875131 125501333 260661752 588817256 962581933 618534448 906640127 406707450 486138121 578316044 832952812 208274250 860886305 834260426 892899528 349891592 776805202 319996072 505218421 760566495 880531861 873646800 889462564 400871000 647635516 346279311 624374873 711128126 734740173 253395472 263182950 182683801 557767724 207235136 536468483 715005210 937031102 678363742 840183340 249074226 662878352 297347906 959200855 578178383 752167727 223198246 248242273 147065524 729207959 842399263 899272231 72105841 94039206 401263615 712881289 612215393 670582469 520108070 825724626 488434022 549116810 485809980 685751125 41984135 179787753 521531233 767950866 999825842 999842898 574345332 961159823 369620815 484472311 348908192 633633332 659832209 926548837 932869693 952370870 48492033 634959679 61646246 73284894 853881257 995929359 328546127 708139764 228179102 873540243 985130800 998645084 343138941 824693585 740005979 765834522 358088332 977937162 60467774 987263159 170198774 661482697 683587052 705245011 221239230 502562719 628443409 853208245 659593422 795587477 408852926 838705835 133686377 753300297 287779763 617576535 915899147 989114997 519548319 875703984 146705454 754401950 168839872 875456326 479478957 556364893 463870559 490122382 10992174 593818422 593576750 893995156 513445403 963429828 572349149 654363605 261969142 285872368 338106602 817427150 399772812 408300571 903069416 938611537 668410453 695241581 117287777 602624220 629083589 772323242 980959441 992570814 856664723 863939780 310083732 342822706 862153830 890497405 110680262 472793070 191669617 332621271 988862742 998291150 481800099 585197311 867177302 980702341 179923427 299688779 930444076 934911685 679189556 769161852 261175472 970899001 914319407 919549150 94279098 407700010 564991654 823012974 249194953 625313224 643019503 718962738 459275356 692444420 980438232 999959939 896567 106720303 164088221 227834460 467918512 755343112 756538419 912950392 667609242 993840562 943022193 993787145 779941849 786444712 960511809 968886954 685108060 740556213 961460161 971313048 426236027 585890642 608997519 705520848 862713555 872746779 576671408 776130943 198130691 846078905 65337812 203638920 455845219 725822261 14168802 851662081 19598258 195489343 682280558 870163712 134037928 799116775 422661656 770236970 884250620 933211628 633549653 784942729 874712825 900380862 170601718 936078232 339947413 688338022 37246835 549859261 898276616 958672316 499565846 969490859 408570013 539524299 709687770 963281318 356070144 459249508 510684167 669305384 125846675 337226219 105364047 137251443 920914691 942381326 296524055 408205564 533928431 574546459 377355184 968961746 61764846 906408263 854284802 992910288 807625933 987555412 233503318 890098035 630521274 805901187 223878103 986788484 673621739 951277344 124354047 640944764 660688566 895841114 4776980 223858335 703450391 728713906 171974652 844310986 355305467 641977896 136076247 529144347 953138026 955784001 355232396 668906079 739750853 825337523 146144523 442339569 970319655 975758631 523450682 958159785 800018678 937413980 368305567 625582892 935877498 971670705 86134209 90013803 257596332 761243977 319850684 713609535 520936877 680966808 856787734 990295153 405291149 579752588 64141503 556123710 980274819 990698101 1700481 665327922 716211099 840442885 822767279 960417638 425363061 462303152 465372207 958209378 164775225 999046594 640803864 937440763 672024031 710839687 23415892 602266443 371291618 384581238 271911201 478076350 898865068 975914942 869064336 870265343 176949462 376056043 191694146 293424288 312756154 804459876 109428747 541281119 354707261 556374308 875848850 910647431 377084159 771591735 256262628 561831762 853849809 963239615 71148768 732151545 893076274 932318957 99679636 226971571 458949204 497681289 502111987 909412215 221138725 331612403 469945156 514142696 903547047 946544288 932274041 963153632 66344122 209706714 66183492 531942758 744753970 983751012 198939980 353511989 858691334 929412400 70999661 981709284 463795796 644204388 111160580 682859754 190681545 848705279 92639162 343977273 773452246 833293045 440742827 769469401 955956287 998044767 13266831 282910084 193874713 225898325 772531993 958453835 15177427 386308738 103476267 986868089 974663331 994659653 194595847 758415007 686349037 738861676 357522945 523237918 362337998 488564305 313525267 416293555 530256489 881434854 832340835 932195337 59999341 360789037 360780032 447297154 208018455 615199270 276689027 398387193 892352536 958064757 70085209 412837503 156591032 784422647 652358783 776000944 57050918 885159366 114488754 165102079 310433282 809000167 670191059 763922338 286097328 841583445 927057154 990858045 618521986 854794510 277279419 915679760 788612326 883849901 871990276 956471206 330848197 986492001 667219183 669776388 968983816 973975759 748575970 789734608 125078727 313888024 571280993 983693521 973175706 991226740 794995291 957743605 166787349 494559186 411991428 748748240 29019978 991658168 284438092 620692469 882281273 923089185 559878771 607920162 728679567 967569954 918234725 923667470 532291304 621263408 200465261 309521320 136071684 673277555 214123868 366033740 919111368 992891082 708116851 877618925 702251754 797607767 257539047 518710673 423302494 741177256 279571874 373335376 86457155 655885693 920971102 943943148 130313444 391835041 52331335 624145689 705804528 779091935 814989815 816603752 72091325 441898932 729200341 929096289 508503143 840812256 482288712 862176169 780197261 810451954 376202473 434795517 504217793 594841102 479602601 802871677 861122866 913848897 686371784 767895925 204133379 958226412 612238582 704706312 805655975 941815144 985877127 988321354 726525731 796097991 739890237 853823259 829510968 875445553 965907402 984459079 339780447 642996158 821514382 877503896 946183979 998891133 555851157 911421290 806602598 940283370 235622429 934742819 388167506 655130293 432895069 443635204 158597989 762465460 183823431 782820069 82209317 820455616 50694087 864310894 171051884 257861912 611600190 993185633 346436016 447932722 348477571 653831506 492248449 900426081 770616987 974276007 253026295 833586434 504782416 710523012 635875941 646295643 212606013 867085278 54662888 568427757 428697990 497202766 275407707 758617116 756912718 800529701 660371660 786387164 45353646 351985892 129796346 239764090 194809914 397432511 883329307 915049403 915159266 968136329 719674096 890026071 797553415 963682381 729673708 745050095 95672658 870669153 626552650 653921756 76576100 624891462 31750896 586822374 229206472 246000865 695674478 792412918 194687174 944623482 604502563 897972750 779333437 993788166 818483559 993213295 929581595 969489627 746195887 932098642 957551885 967636930 378441405 723260202 708308265 912080161 72017399 751614623 586580243 640413144 689161683 877159266 61994885 462792349 866491824 947196276 47178666 331932656 79614803 119850786 821485980 837988334 353126770 659836565 608119982 784176096 301129465 942630577 634936545 701287652 36144456 600272512 852144807 991943944 66440467 653290938 586452220 951908243 856802547 862662249 638207985 930884953 55279178 467856778 765029872 995287609 50102236 127283429 24252560 171334786 972632935 987325238 930136016 951283874 669811435 828496905 875665352 965220268 628860942 661533432 826158528 889677816 123896914 631803641 299062965 933929486 87745400 231656437 259129973 572770368 121763181 508681124 615775041 709738550 229134984 919569217 616307612 963852591 611695698 829406705 818361600 819245878 743644952 759746742 882335916 943682714 840893406 878490269 626540409 834079503 814325547 851386100 738469597 768118082 781959419 927713101 30506046 173003207 255198400 510540160 727719344 907294287 345901189 944273773 593262979 930273787 485911116 919795243 97473377 483541015 122117424 370085853 927204257 998260183 497942901 683627796 54476243 788597854 511105899 963455906 9411483 798427450 162550820 293832632 282010813 514622010 40625971 781315439 504848714 654866836 690517172 906287900 618916505 886085216 291401537 922050583 59056119 663627382 912099268 963768864 975308943 982891944 203415230 274894631 561548399 995528472 655036454 679670169 415718128 426994656 959903105 963314690 805719039 880241338 545589367 870280873 44347635 404600768 689724394 915567854 84414211 239256908 354843050 515983916 53369199 863269719 637903328 938593945 391355236 869969981 783169448 899347798 8074469 496051408 126487098 466090187 495169010 853580035 904199775 946471797 302820730 777547363 285357145 659847934 246542424 746378736 841550588 976843641 101398610 136996499 578371116 854206870 182048487 233083582 748714698 829653067 303253775 349687071 643514418 920484118 734545338 831645893 240778352 843130083 607713634 624444336 133996824 782107448 181922431 829110425 517950631 577848203 325675418 541740133 875194996 947880806 444035788 696234123 946082078 978926540 835808148 978251633 284155493 748771478 985304906 999095538 320407719 566724000 145368841 312586222 516366720 748731553 368282654 530611363 12923295 202118293 569129657 936732955 359877290 601703507 800177448 847240655 219175749 336357867 898966797 964705415 666514808 698103554 776014173 902619770 189955598 716014888 934285210 984425264 269388617 357037683 240197070 581807647 14740031 108385512 611501237 644133170 563478506 766108754 71541923 715602564 796531953 903303741 217235375 440451012 975646664 980571773 760005431 828632638 656345499 836866692 528564769 780935154 989954462 994551890 793547283 861402523 445950272 871380940 25166199 621442127 641078452 981081401 698793833 700029825 935925754 949015823 964894095 969312723 333464927 660830870 886238693 998667783 471826147 835025830 929691045 943591406 853073945 978930759 118964429 204141228 791933843 830546063 328706355 607900123 649139008 807314657 735255109 761537448 936995941 958937365 823455412 947987038 844750949 929719214 227687716 860370373 921991653 959007635 95666871 613111532 266233198 761691308 804336242 976154228 454327627 688461113 743694536 785814242 503468757 675763886 733109662 736518462 706661175 809323207 180274930 478329723 346035151 384793567 230918175 572375419 688524177 997418025 721075112 909264650 725632010 772223691 780112405 790334146 27068242 374137024 589998438 959991898 222262156 979285878 703598037 810239920 73754911 860266669 673264432 707605745 427329732 821209316 650645626 732974508 883610804 956052445 981727851 991900373 799918711 890236762 612223767 655169624 266077522 672447221 577523159 707678107 400290511 411051638 65740610 825879691 942350881 958059822 262148531 901354630 145997182 764523690 14795346 197665675 300739248 575382396 505365991 831386369 118249767 944003430 279278569 300204593 411394160 745516473 603359569 767494081 789346835 821786782 321896909 970118804 155958035 231886973 771099512 966148979 91381736 523567542 744446498 824070725 756898357 805601700 648399162 852169187 107626452 447235495 244099502 291454925 956131006 995467012 610044070 681014605 246049004 972336999 22823520 633141454 235009500 509722636 451084601 725236752 93927218 412621237 425856379 716488851 590698329 745628699 142709687 371933264 774810667 989562063 254776367 871869380 238702332 435223454 838535124 877223937 466311886 748742987 459472947 550610911 473309992 577125418 752537141 764328592 908058383 941616398 367921532 586385067 296074210 603121634 591151504 782464217 24131166 968638893 36243098 839446309 562219998 946912485 357191519 953339943 983036423 997147907 593667789 698732424 883905589 958855591 336849019 755135376 171833975 361983209 980154876 998272879 34843096 821305559 460002738 920471838 360814037 392842836 567748619 667300971 575525348 580833425 633791222 893402151 814145842 922707018 687006394 803391542 429196075 605317664 865000680 907437200 856274644 882124456 850021998 851365808 441558965 768911942 588070336 615444127 862039749 937865158 180265502 388114984 926328550 947464483 834685853 990314001 721729581 862994693 345714397 675048529 376983412 991154965 9272090 552638025 367450815 804160755 621449823 982865095 294010086 568502683 847774860 940803394 627608103 791720530 243123718 533027566 543030807 860543195 227103332 331484639 280551532 940135817 43001789 599295117 280881351 822762920 32163080 596505026 628822551 642554277 317875373 653600337 248541612 916299554 993367484 995865856 506380662 596095628 352239970 403667750 326539178 532830448 938031303 959148608 804680444 904954462 520602943 955526843 433207704 686221455 843675376 906191934 55014766 986283404 209646028 215307264 131055620 340933382 38827746 732665548 81709061 303429096 721510263 755639348 947425739 987328283 799049228 988956165 3951150 446904960 72076290 342815401 174229914 626112374 410948823 609918682 831612287 937585625 984710913 996987257 287143400 391361559 828106650 840934634 293098490 793678443 817695025 971347663 410045562 557476190 56581913 789007750 497926014 636115266 509198152 640716860 946090654 965255151 665503655 759611638 829266236 859690915 5867446 54838901 77925737 113595691 456988237 761340242 246242901 854979366 855245984 980587702 310388074 738314734 856142450 963667057 67193099 204899841 710184170 986233273 362966250 953596594 631826061 730383846 190696600 770177405 643874071 690332998 355093753 570133237 351578646 937906426 271507116 416660223 422192904 446297173 807635207 900723945 894671064 976557216 801977889 884235468 668771218 748648354 82121033 916049976 839651794 911226377 808617240 904835102 638004118 833417075 233755492 598845994 771363007 871492902 436917249 627289500 299262067 644011629 396596901 638562583 344107584 876482136 773286511 789897223 544182991 816094712 436838398 999208093 112526856 207578500 14664661 54989087 126966173 606623725 948556586 958215266 394404035 700932996 237825268 751095968 95359450 532002975 253436373 308119907 825898094 919509763 402567759 816943109 432562137 561732645 177796583 235569791 878820516 990821403 885883315 941275769 713834315 724309017 786400398 887652631 575720996 835458076 991639783 996604908 361266968 613576489 425755440 702787144 958512703 963024069 699555882 869475269 341046485 987920041 890603802 958499199 79052762 628361583 848927489 974377938 554042410 669310047 4566392 769660739 373945870 530594260 218142583 720436146 20189421 960700608 333257705 732050021 152675568 210776649 826305931 929364747 740791013 940404984 173542985 678666560 704992010 793147706 198871793 466493368 628976621 858945390 207964308 610861049 641409206 741095184 118220972 752538859 979439062 996379694 279194771 311955959 161629448 307978617 355199934 777935172 59085270 150219714 72543089 936013334 895531977 919958953 394927598 628422253 140473874 892173837 655597422 673038473 610802408 881572646 960544021 983901823 210120794 872317531 17383007 538831011 680323007 987174231 304896244 560069763 145491947 643672231 300835567 803585752 547186920 950572833 65954292 401984445 279739492 555677917 106258043 307216325 413362348 678498056 471123013 737732525 927570697 981735297 70712219 417131824 701585007 973245331 602429450 952370879 950584779 977829157 933658466 958432538 996914480 996995027 930318716 996865230 697520690 921459386 692969124 843955869 759909728 972971009 488786235 629382360 274715662 912545960 943039095 956295657 79438480 130589293 553890859 941441501 949722975 982244761 522737577 591350356 813453060 994282448 877936131 983708447 936593956 945050290 48798439 846636529 389248069 850883604 767654270 982570634 594715319 737471846 573225523 855179849 621247346 950111466 206873611 916689168 152216545 747175098 175498541 998325950 600588155 902986051 617414893 656436538 527381385 548730711 908037046 960652943 263896147 700277312 649846359 781215577 918186333 936836161 73281401 339692462 283245735 918306949 841620917 865079008 236248360 658383567 355092590 361523648 458943429 984290315 387374820 488426137 972895948 976824102 294078271 450180918 607448801 713094847 422949047 610877123 626495011 887699758 349709550 773000546 547987366 573970910 48925431 724314978 337132127 828061082 120555635 504526283 611496363 667309088 988441945 995747938 306660779 868524843 532086620 560586897 63951857 833766266 256797774 297916208 629559123 858246484 250126467 916465619 25675563 840989805 400285230 557058260 401236202 985493346 893520761 985589017 113585487 593888681 517632527 825938620 659384208 808777415 90645152 173495735 379241734 595269008 395391172 923301311 451378987 899126516 598976919 998301662 790972094 991902510 500791930 632330900 45194119 108171361 303182059 479721375 265047473 649877216 800734523 935834836 479760821 705541287 933633699 964560201 834564052 883593352 366623596 582411554 981056 881734622 216489609 231548873 632360033 826404048 580473926 648815370 128140141 596545420 778031651 801927178 180818232 213279399 524144746 779168752 608147782 814719279 10662167 166492572 770938965 783600033 501884116 873970203 716462878 797240150 462062651 689647923 767478837 987279338 579524870 842448312 631768727 900578132 270404809 893392895 862077277 990678323 402589296 626111579 398634501 910109337 712734895 754388115 915913763 936747713 491090349 601309310 544741082 619885360 606966166 886750861 670391952 877371757 544814565 568721752 857114825 897878180 968653094 970393305 336740564 685877227 197800795 613696173 155365455 440145754 537653212 784693088 694542242 974708956 304034297 515601011 742465775 991973380 2953006 274308867 253761564 758119802 346392803 688191328 441898946 718126650 807226205 907645894 20666259 842948276 538728047 876144989 420850150 803002661 296772557 636088631 898951501 956367583 79472251 205239083 100177311 631093062 22790308 108861093 670868238 785537411 513293589 731282759 219340583 923505233 506535513 536585307 363231387 670583107 750457456 855450962 609671192 944684725 828927158 920824152 597043281 667368083 993197776 996879329 990851136 991646446 706486984 729404908 839731573 992394802 753323524 895625167 587501700 739429180 282516786 398387666 658433585 702968481 844184830 989547989 179346219 447650659 704560576 964850120 512206650 979703365 610506906 939145986 952478578 976290812 518946911 640159964 396825534 505778855 155872773 935159483 75841364 288155610 965145831 970695306 510138555 623116066 274932837 837034910 443827210 694284484 35507257 865630846 259366483 377827387 992526248 994914073 437981011 552623174 713268211 741061420 440136822 964686539 710617993 888865111 704767988 872944195 175311778 585751929 885383940 959145490 188849921 864913568 968071607 992848390 847565752 922219820 549203335 569706429 950327325 954362619 235387708 253289567 891474291 959276589 143810849 435670933 776830361 992235405 25833207 908921285 11506541 288540346 324987340 994104982 382890554 657845570 48847185 938264828 915603919 985920653 994932122 997035131 88856986 253656749 363250987 471703109 151761893 581307582 455547169 551129798 135516504 327934460 544323673 895874592 893815908 974502233 856324087 916627728 481057053 719889001 645032337 977130291 281616320 498909942 824645039 958481682 354883595 485531141 793138979 873376167 404969056 578068926 576856663 726580245 190470406 815146566 139358718 975536364 881778956 931553842 530705572 750421825 873212135 999473836 403416700 555863773 268135000 268589557 117537248 407136960 588507496 654269284 533246843 817317398 386599183 546125388 20000735 506248843 426480623 437983866 3325917 232773828 532403791 993886218 664357729 790554089 945702821 955325844 958525844 964869338 995107779 998542425 738664641 917778581 732644957 804497676 367195095 770522173 177433343 959181845 932493803 942475711 256732318 599143559 303540836 800092886 852692553 924689448 206572126 648439893 158508820 927097486 369316628 679742851 380993584 756630589 739012755 963116214 571256790 947220424 593464299 871267155 149708140 721089168 36676020 701847538 835682484 970717269 49734266 557917144 566345294 916064926 130540080 355708123 441880411 729176175 974166080 998695085 999248721 999307520 423111955 948935502 599688401 758766488 435193734 764866071 240996853 652515003 267059990 542783307 552304468 756030006 797509295 818044081 865092819 960018890 678716003 709537215 25912847 657778832 656268525 840786743 651936164 993112246 735394775 951850757 102789580 640049139 322235782 429110716 826566289 975449941 673093381 893918356 397055000 876239832 866146488 929946522 158277870 280786815 810921975 978596511 852220492 901040165 851384955 913013969 978183237 981872293 276820533 362528186 260871135 856115466 259384349 737835957 482286135 770882634 115073153 722818181 168345819 848746941 570760104 625173476 246404356 266812366 121374453 623236979 212863280 701091860 181618265 745360228 348870907 530969910 839354876 891523592 326865391 587242075 317482841 888850616 89127953 678329022 363555388 670193847 820923919 898338759 193116684 657704015 138777999 398803515 235464471 723165341 609319142 760934859 328798669 877823520 402181903 924750483 210875067 735849081 984998423 993580679 569342353 781346991 175251877 373874141 791651670 884065792 147341572 402828593 877272841 940545898 299956383 472755674 224214265 385642152 707874891 792550404 148996234 345110731 673236721 686293542 229102271 271101164 180870958 457176528 876522553 972762351 101811439 456549649 103869252 959859804 623658727 777050576 823485819 851366633 42548277 204529439 548193518 711447823 138732685 157691425 543963074 740048705 481261688 583968753 744817759 892811481 772522552 951020509 966328165 985199365 6652950 404239154 397441533 865897991 834329701 931184210 806892001 815489914 977092673 987504758 560939830 619384741 946474575 995863090 225552528 598388115 426887724 860269748 412972825 979925634 778790537 937405785 884595436 900063809 807902821 951094338 950682885 963826350 179790271 727982125 317193646 478503993 660478997 742039639 860979650 867475948 58984930 70780260 237213592 685150769 324748334 454162735 143044900 481901764 111226033 499313349 622588710 701731095 470231157 513664704 185041167 505091332 465634384 729108377 553101732 605207808 698668890 941992045 594354790 612490081 823658526 993661540 257754658 600700783 343566283 423343761 737174 642201432 48350930 624448115 818144419 898030529 925174598 985685050 363373161 882788612 521696652 728992911 684657777 851156991 63577464 818057280 349259900 958234213 402730712 558540017 935909435 978989585 261807596 964937873 219253911 410773838 631765749 894194884 78170439 317345505 103293269 148805647 781483311 911140130 913730776 946535009 264949293 279118814 9829784 400658234 500040415 723520259 591876557 917292803 202755496 968439251 256224760 325256734 815103182 973877904 664704185 933356500 316683315 959048984 487039424 597213417 181194665 703231625 509087972 991531618 762663367 892849457 524099975 611026759 21406846 368682267 223591941 870993831 514089769 956336715 939819694 954393250 536432943 965880536 528759900 789947573 796900750 844497057 219604226 509148487 652751295 905957886 714049079 963318982 4479624 398685254 53672309 641423548 821487185 972964799 477104434 870740038 48278917 414470331 942565708 982369092 318036906 529634360 933343129 948806209 585184083 697422167 855105572 966292794 258620053 878547219 106035992 624055910 427008860 555744898 894360824 978817703 810488565 907084029 14728672 234276351 787807512 850629138 118822882 806806675 172994112 247045250 842550054 972973318 964969021 973390743 462302106 639157313 88079921 912534312 157223784 566527712 197443077 806841216 375955216 455706725 852561914 872829776 977051084 977896595 212070720 866254331 535587435 811939911 509398999 903150275 168611117 973637568 17085887 368855987 689668950 871034743 624686585 832490533 943155908 948150368 490554349 571097160 278784097 449742679 507061191 734590379 551043428 738808850 407038873 966305621 923734891 974460343 936005694 982237417 933675358 967634990 362439308 517085291 887939357 969124130 367111118 679113239 169664072 631913738 559486413 765651953 133974280 510095151 759347365 938099000 82767767 682265868 532560713 905912486 854053940 884213440 317352469 433518800 285374430 730051808 386182545 663217000 482162208 731452627 294514955 410257906 231936330 629562515 169323771 873653764 976018158 984316633 211939445 810539462 503393052 747581484 281102056 533340883 101152812 552820801 357473636 690206585 613946887 846561895 674778918 960104847 984399768 990597955 345827362 847715109 973908647 977447252 843471233 935078188 587067031 965420241 45602601 525462320 933799164 950342794 70731004 551328591 588921849 928022347 310942598 622577992 972064313 982107210 15207605 99842026 117992314 477172273 701453517 785199812 282825609 510554839 260906524 746617100 142504324 562100695 694308458 724864752 660683315 954203053 343522825 676306202 975049399 988205904 120478024 534421181 728701285 907625315 264152465 516923862 318442461 527921869 747510559 922143784 30951415 638082441 824338475 941193240 983828048 986172904 644319009 993712886 264000048 413105125 396229565 516259787 164726443 306734166 522565613 883280965 28315852 44641762 913323729 974829465 272563997 652152081 543249769 781321628 575546221 949971572 78061648 194715117 853662773 858471063 606150532 791529330 498184264 839308838 754748930 804114677 459125742 878375285 889754077 974536732 444036298 871454445 83556573 142247058 713088421 932088178 113420296 244119309 170557031 713754698 514403817 757665511 100020588 639595784 154353267 352895804 782083287 858134478 376244136 455426447 832679788 866659192 50234704 518702201 559859010 573712621 228353347 725912717 526362549 801301338 428749788 987743193 205090524 267736196 207991955 552681595 112778243 745005417 308960264 392709274 811745867 910913972 2047864 632212215 170917114 564093975 111822798 695458856 925996919 963653523 117123103 651653986 785369944 844521572 506632433 939915919 242435557 882365805 840760515 972484465 791986235 862714408 284600325 702780049 549628012 679096324 940881908 982042666 414769624 513581553 594468750 973532016 477815137 848981432 576696675 998299461 179401858 333682952 22290519 983270382 256923828 833374746 282081698 632188562 627576456 778663103 860799019 894152494 257769829 879340144 35928870 376990307 778132936 801665884 617607760 719876997 432288658 764976592 948905031 957678128 514869762 685265535 882890005 977827866 124307603 888075507 545962675 604983659 726373227 845044268 218858748 821161781 716197476 746457792 260483749 313952356 117703093 322512467 847407243 930347396 1768733 548711713 878145552 959697177 307370488 829616734 897141796 922860445 566091412 939927105 480350067 501068463 536827837 907194133 912638804 990404387 467067227 674582092 404723260 607329425 666999716 914818436 451903014 777032319 340104563 457280681 61961272 649113042 96998233 260607095 779811831 835534858 152924149 601878283 325165912 828761686 183861628 489086235 535125465 899611336 213689186 593639343 607997170 642432502 560377571 799321375 917720685 930109573 281304895 822916997 153480231 441286133 807080381 848213606 777717190 863397890 214612767 885971247 597900008 721230591 793636863 820490976 820251884 868083283 765009568 814669523 461972710 482453627 534622620 712904844 602798791 795310790 70960379 407979879 194743269 642981327 498834964 688835887 253396900 927522879 252157622 635089288 847411249 903034919 124045577 991060313 784464011 986809442 426792669 444115220 35728755 646810424 847879338 896834621 289429617 545267078 655401678 857958376 741542321 869702731 80187485 951213795 208620381 927640092 301836091 359096308 273370479 725347300 971323299 981128865 324218805 996677405 296434759 359148073 786373179 850880528 620560290 807050944 584967324 877960420 965012433 969842389 295672521 311250767 903217354 911927041 286759777 678936523 836208016 984015568 471763987 543770699 881477938 938869743 527723363 754651845 264874522 521510796 41670990 106665912 762265021 811425310 855962127 907966150 426737279 599469903 342620762 468846362 297270145 612901834 680820115 931019475 521788537 618148825 779888011 983072200 880299521 946314638 929910598 946555382 668904501 755422857 986545344 994860015 111625641 434345804 725007730 948195559 655838089 919993657 143301420 846363912 173473642 381570591 495138411 787376880 23908730 672970946 972233032 995144982 602721717 866773728 845296474 895604971 70572031 548206769 665943362 879140540 283518711 552350223 383006704 538684470 878535078 986585092 269855623 455587177 266671993 682166198 25154306 158656934 597961328 904587112 911001509 973284461 345009664 791090507 710201436 898422295 808500622 848171883 442814104 794964067 293598252 911243157 253400640 659187483 85110457 730252107 539290090 628997897 615764339 863431102 497465887 825079251 376884077 566841347 149260419 199913199 298333330 797172666 190214403 883605600 425079689 687746892 244859048 981476500 637363123 984518080 786020277 947838376 464272831 574066936 252840338 669037986 925517455 993352126 697918962 887002342 730784496 763783436 793793152 960901625 433650966 514331875 290695128 935662877 673724096 792106460 509607724 884522048 907025284 919435293 397115317 687391980 623950842 971190351 16913626 767485896 291495282 930809948 692637867 771277383 302885961 778659435 274797566 747772706 716414246 901458950 498677988 882377569 996701711 999638613 203223785 306499418 656989379 985176229 349737405 484923519 362732516 976593448 12002628 146637130 128031487 811905184 859278036 929674388 476313463 634553519 681894366 893670394 386993007 641779077 330261098 727875935 114840082 901953936 6453608 798485230 472179731 582887611 899021800 963461946 379738936 777259909 640768489 835745224 4184679 244560637 566334006 928767682 791534735 911998401 816638931 950440315 332438843 986820758 694994372 900382543 367510180 931241585 176168967 282551953 514892683 867776515 993450668 995007545 22821835 179847184 46719443 860788415 945727344 996803860 776200181 828857624 523063499 845497284 216436765 696509398 713058731 966441009 250664090 936441164 711074108 738403932 634277448 862107715 649248611 765626733 14835938 321145448 718476140 962082708 150256511 637172606 620073555 639370415 265340440 350076793 703299433 983842677 762880785 954959624 974986273 998138414 85309559 524197471 264205402 573767724 286208921 435965703 482522228 861564961 29050259 401276648 629824477 768551314 92921262 154623465 605087393 977685583 57868766 548378868 66679958 669278092 197006612 706589721 144032915 218382084 894080261 971974623 381876517 699608126 610818374 965655385 897627 209810437 154914500 259060363 156382882 550633569 965233302 981157767 692583365 980196987 451523621 824492984 661386910 804943743 312129539 949529343 473042113 910446409 453017659 887721667 347817148 568810592 130129790 132238753 252456790 767986797 216526324 378779105 489983967 610531790 316837212 959634549 946651115 973899613 449552774 671461874 801104961 992660623 76985859 968973318 907034478 990995050 873317605 959497225 531398914 731117588 469781210 977339446 222780453 817415456 911024162 930383384 992745865 996694407 378607004 890496447 784896472 861951431 923277253 939436437 70393726 922124505 276824368 833055315 125743454 776364326 42328480 265026687 537193274 581039650 76841371 81765108 581964679 940175391 168992531 645345113 469201806 648846684 561628036 736633277 204053652 336706414 791994449 927560711 628364798 663440762 48837482 82644219 959140361 975569787 17608050 466371289 997855875 999414588 942477107 942783454 934117890 936906037 51508049 783142722 314517327 781487118 701058866 875880123 299386239 685117815 765866502 819315553 82880271 185818949 250200718 912952203 557793864 792148219 373720094 574428466 716601638 995516644 310356821 803001262 205186137 980421267 728008497 969317813 906075941 986491712 855559467 866005913 702592963 791204712 556386967 628622364 437606555 747188327 706381736 991532161 474236255 527872707 809548410 968776903 21530831 928572815 772047696 932160215 312149918 686483902 998695250 999156355 348598947 790163281 294454866 865442350 731019989 857791662 293154265 640951730 890409768 902460211 883696203 978528569 951618449 986094457 208524582 396585190 128850706 885033685 554858296 611466451 125776169 526394112 972997485 974833460 592880061 834402233 81752565 833172194 826493166 859539886 147256776 884042337 966555033 991549251 259866594 889605698 867479898 926399928 76588808 275605836 203798671 496440868 72690450 618373336 663961527 981035661 841813030 916162521 636768130 754018853 511568626 688854414 998565043 999250325 47541572 221926477 819917689 859001641 157311404 902896755 833707630 972859349 121847392 633340021 381376180 621316591 700064415 788579131 468168914 570915592 457155608 945566544 652061736 831005965 303367213 318863986 103375358 274373829 320821892 815185218 958337663 958546765 364189271 722186756 679757319 922310689 405579050 745248611 324424189 818624048 434664975 924390886 81271346 836046540 748930958 921461908 583902909 666626760 2300079 383366795 195203533 496694375 384121824 628601428 614702299 941932393 420922335 910257918 65496392 863008397 375919884 527300889 13873964 17007597 65429535 488932947 175013114 874405055 711568748 794404935 971806264 986452254 674874090 698309267 692079956 879618866 287251015 603308498 988049047 994601276 901756800 913485155 941143463 963043858 741060141 877989848 106580597 777567257 736435798 958770436 625435670 847721074 43849499 302312500 473264751 720075581 582657082 943135569 66464772 341753205 190277527 310725638 856476037 955234185 74168400 805440572 514189913 839633224 13608417 480414334 792782137 854756478 225306439 276016488 622096343 872365087 82509346 837819307 374508665 898221340 986580319 995446356 858101791 930241092 683330974 968753559 462656632 703597222 271064556 860538389 33919785 878203359 325725063 653578990 823855507 857295162 265505254 614853665 730853263 963743784 373005828 521327019 169334827 196420701 911876383 951219417 451648174 477945390 941324653 981789125 600558693 822992016 964003985 993990725 632892997 962227770 387335863 666314775 959387422 989458288 22035642 220991692 889524920 941931849 280531619 445974545 870705231 899434333 808293748 858307459 685393546 691025796 792238341 916522768 72762419 289965173 298807267 923175772 526860852 978221962 467037626 809248428 876796128 889170355 612459485 915193767 760507144 797057502 285772172 933997879 567133910 963740314 643623429 793421208 353939888 741956856 651709779 820981848 884421877 970691991 542178512 703513132 545880264 932184679 709198701 709279122 929622468 976496132 620704909 773653614 389389898 615495994 60837484 417082854 749197764 767605713 19429856 784928670 675225698 683564615 670882704 847554221 913689335 997715474 854903067 905112028 502218356 739249607 652767284 906338123 554527319 671138092 98327080 164936572 285266892 444096945 3063718 718443915 206120437 856212204 188826376 757325509 813106700 818130412 309511162 810192436 629967898 755489475 544473682 663100960 141144193 760789767 806022335 885310396 222758610 444392265 127879440 295748282 719617712 830223903 540421715 911046536 352278505 678567527 178286733 510553878 324248634 478826512 752572140 805652981 769998495 990044868 603395951 824660660 125435282 922642396 414314081 541507469 946636524 996288412 733411524 851458205 230345318 390384952 203081490 571383738 544609068 565932748 162381364 788532323 213512811 566875274 991421996 998847196 395933442 484954537 248355855 347026541 120425260 145740422 133973625 410279728 411660315 526225486 458544737 593805200 989200642 989878786 238165028 525626188 187351904 600863816 220828543 500457997 950218243 988064380 707594382 881692961 396219239 785025178 799214439 875973782 12425137 604717538 601100613 625815552 581632255 615441854 950632837 980110192 793446707 849690634 744479352 900030250 200398633 799983536 213098188 877554095 325535427 460015245 112183875 429856415 752143379 884482671 92685938 661115057 427132378 821062567 720333221 922535962 550809954 864793657 41131149 880122233 463248425 663846115 572719834 746718701 231123163 359684825 908456665 971588109 774914011 922691316 189010588 928308948 785274219 838683663 446562275 573159750 984071502 987438456 291154592 676492140 441226012 927686257 196703861 207164894 982074024 998690473 127083982 609190446 376460932 877706395 228500989 313495964 220833369 532192523 899199175 971750904 794495527 986080332 947381586 979860020 388371079 636736442 802683806 861567206 892651143 925210143 308265521 556869497 731167178 820478971 464875006 605150007 395572691 916964848 858834701 931579440 984523212 990657157 700789331 943348849 535941568 608762995 690669587 887386753 227153929 930829070 63763540 284565530 824079200 871191229 731575564 925976496 277993786 743438907 989033844 998642401 904101899 958533877 790819080 869867202 431184676 452730102 773016945 937624818 921869586 923285392 494405118 788684089 477254727 682845415 856168169 955382504 79868447 691244299 869029603 989289253 175549130 267024884 543000356 988755199 997307570 999799441 355702784 399059614 692076537 901015884 156559461 658886070 771476223 829119238 25357325 597593722 777335482 825708074 283337238 789458750 65841863 452733734 709200743 861361787 118977088 649317037 689430031 868920046 960779602 964572724 738138174 870039641 758222033 862028249 108945357 591042961 924136793 961009604 477331817 511721808 289524452 668470501 606279161 652608592 692085898 776618780 488452529 877455134 726856327 771005939 610943587 709800631 674635944 684724832 859874786 983074904 489845281 597915817 530020639 659912816 494680153 705689092 388336226 453144896 362501496 595652427 579482848 827590464 766532230 991533000 69030149 906749701 154195882 622679560 250536945 529114526 354142135 726800292 574519364 699242693 945676006 980312516 186139791 743067348 425417154 516134794 365010199 490486699 617785831 931868564 159383726 847793308 477466932 543922411 540682041 834617810 342901235 605038235 4699765 303663287 733417861 893423466 448415817 786946072 70067172 931826894 756445353 807036944 856913053 932194997 756426513 863909208 987004353 999056313 477482137 747174324 435119106 949880663 35960195 58750805 530138130 732422995 393489791 960051917 859711758 960634172 807646966 867256314 887044711 942889264 26576882 936559235 914991736 964918369 599725091 603449450 183585953 739130467 52107707 312033747 167462892 372201747 259206550 840002738 354882409 479027163 121143775 838880090 492498943 884993697 480420577 494399510 215312572 675025357 703626230 953870722 897623944 921576128 251286084 856053923 980232291 989443206 70614449 263326364 607297363 906987561 46084436 868032065 795122974 945842454 134511228 150821686 196463171 261970192 26561865 689279348 325962850 416326844 231730443 513293936 274103056 659081745 231177276 862029939 562036801 666798808 894147555 913509239 116303447 772769215 587276703 875667246 961214241 988091501 458174040 905801203 100318499 636758304 220052807 687439035 982748299 989265117 103011828 590481133 249852874 894374500 351498771 480892351 126873678 751976303 319169218 884669458 697496737 722011947 624515685 648355099 467756819 601474806 453403605 748356225 614299602 824808676 496427029 666338591 148094941 549656688 886809916 975434278 409565704 500836856 510951641 661176821 567355729 881845844 177881087 192239342 775716636 907157001 794549016 831769928 668625877 830062697 177713250 579972817 943520290 999116254 440041006 685453472 163033506 815878950 841611120 937697135 986349046 996747119 826393545 857962110 891246522 952106717 971417580 981384591 168289445 433527815 669855128 807296654 885463351 887675606 897773702 931855919 48805613 379784625 401233460 540618790 330676839 644301832 637983074 646141361 405994144 966673804 105113922 319428586 477364976 893286503 848476365 996887175 834830949 838176942 306587071 520654243 649193001 653801475 120885724 347703762 945720526 976403417 211633097 709978523 976522596 981957440 991447321 992796471 722107093 835871154 675820967 925683808 159641601 982793879 478118960 540331658 582117527 607594160 516766521 942275428 452154923 877246559 213180367 227246357 255773823 522362159 6144459 989712510 457542569 679292792 479268442 968029808 937796977 981729361 519039853 823196926 352542959 943860465 222587318 272174323 117338906 772365626 176165819 261829118 458589317 841240737 630649873 998504461 892221745 953397942 169177005 439237605 316162826 754711356 728899563 958365460 982935938 994788435 848150118 973178392 169716738 921322686 435439733 616978612 634890031 649075280 872750767 943350463 653941450 984007232 113181174 357193872 616354014 915026878 348220847 733086822 246254014 893961133 263141895 853125165 173213603 996057692 104039188 897774268 994380710 995216489 764152611 977219033 100394070 243380806 592737757 992879214 915564794 992500088 477941893 638769987 591468035 738641692 32233630 750789379 531090621 889452341 602546052 946073231 924493894 947594375 916862518 917838859 137182856 386434604 838457358 879000998 473094535 647396531 327055662 695907556 318395371 712029128 523980134 796288711 728768362 729547553 238949348 308180885 923873106 928679781 347226569 617537529 484584703 575417964 848796934 956120573 846447147 878308285 603854451 978652642 878138865 991547549 541556006 582487201 582650134 619050603 70527515 421701863 793428295 809536870 775563580 788530750 978687787 981708313 407454825 904581149 376472332 480262200 419736013 801496876 803853466 892640488 917386912 989412553 803979680 804491604 781157638 783210601 249914609 527911387 539725729 924945825 596242818 841749628 431480138 623495470 524411251 658610649 59109924 782700290 416618415 907980967 968462580 993558889 885756014 970909202 599461772 623116058 758711354 888257930 315263803 716688840 342050921 472622935 548581836 851577390 544327956 834260202 974514231 990986567 731952387 910137554 426812094 867272342 466728278 982914571 594460890 829754829 841413220 972158795 654986806 701576083 753219876 893650789 217145133 682196606 521534396 751688409 678821484 722110557 421701391 430645668 544450311 931401075 848589236 966539975 908904511 972413923 607405861 790605540 585265063 791954744 114638796 959319317 913132569 976659440 531315245 980091178 871918 521454726 441745338 557613061 818706029 960076792 902156919 961179881 291966651 332043277 290599585 593671829 126778628 138051064 732571963 777634158 616188934 998455217 406364734 936502474 7665085 637706780 881940385 936530597 619862812 665646060 414204977 815802284 765846670 890085724 270849456 671995653 587142486 650655298 48650204 203253706 619860127 784421681 72986652 154448746 958618781 974342380 132376403 591048787 663125352 859698283 213537084 915084882 350366467 843868518 690818331 921926511 146729124 612144804 386655287 896993919 632811284 908333330 17725869 496290444 966975237 984527281 441444077 712555319 909223027 992456576 573519272 863119199 134542983 370121074 868872457 971097310 706234145 875754481 423287718 427939373 858118612 902316388 236382887 999343050 669898486 815484876 311688602 866790665 622112244 941474549 598319690 681501994 263094450 948408884 440172825 813629558 374403056 915389913 320476105 581019082 275306441 659887178 163578355 759978966 760552993 977237723 805547304 915308985 867920565 893945232 774171446 784577374 646209694 749078759 388453924 964153855 660592528 662033800 788548498 915578206 582278990 883252243 533018496 557935446 394135700 583774713 486915518 975055416 831727088 950447745 931719710 959090912 817457459 844370863 982610461 984387624 592414593 625609426 189104699 906154790 83650698 893028023 908754198 920195315 90831618 362159329 960709539 971711608 319211147 722310069 807927211 813974840 113155553 348388079 399617455 779150802 427295121 670791744 427183813 699982386 320647227 518798025 324790895 978436798 767093570 991902155 347339258 726280971 505520972 957045211 459157744 616580378 727913558 732569381 345603662 829859728 100989548 631646205 233439940 641910034 890732252 999870915 481115282 769129971 404197170 575207403 847114827 921742528 322930149 715886660 981561111 983489588 202492838 530071701 430551396 865638783 548438420 714632910 784109709 899005149 544650639 569968273 608422921 741343944 223332123 337322179 736913574 889099926 241387937 662000113 385884619 938374259 64308210 599780702 738709946 989412306 553254234 914155649 358817029 830197236 666253053 945871938 472732735 879030953 175945175 941188406 983377859 995223409 94246021 258567078 521854615 875710389 146351798 464464342 67534721 77838321 411197990 705942309 139871771 950032963 813447106 945542190 723582734 934397839 38102204 274383252 495975381 851312487 780719843 824564480 876390944 912703816 650930619 825716687 795627960 895307595 227827709 383436157 207340873 346193997 579011314 817726451 722600075 864869772 14880650 345856783 691949788 781876843 753685819 821732727 81477510 987898945 733900516 921065164 68164360 824508354 267258672 361559660 346181526 828828194 111414923 799713877 954685095 962674387 163538388 517352463 336430510 446941633 237941380 586071857 295338077 751885542 920641834 992502042 468843293 535249680 77773089 137692341 776846701 837120931 273813761 448742976 369362114 891828727 971920985 984272798 904716487 984986104 104855250 333430181 583503318 968056231 34487908 221952032 382820929 607692998 512558573 768812677 556272219 709935794 473950818 841964792 865954048 976021682 666280477 901438241 674779581 791962056 596395741 637757741 113014892 919228784 273853 409121605 52380767 750639481 907003406 928141546 219757736 327570014 276173164 807056155 807246385 890762365 648411588 766520187 117152966 284054951 866019869 929785186 599360073 671913327 959088052 985842688 25547890 133566741 482986643 674342156 539105793 924512132 830099288 933094217 371848710 601704742 390598423 992048928 503936554 671246626 218775478 626715685 744916759 872531764 143361193 623915249 879512336 928875354 101510655 240120707 372034865 916431083 825530267 864749002 856339069 919859080 624943169 734254088 993158613 995134671 154899708 671331539 294588829 851835758 643844694 802034380 448157239 684084630 433789589 893860465 67030735 953946280 886780068 982905673 537853971 658888536 754501298 820229937 357181663 427947512 77488128 470488651 437960001 770373828 119879021 640031559 531855254 708493271 840612194 954173734 229069926 679710623 72402643 871069831 23105166 111086207 276207046 471699640 673605854 986489253 836321331 974836091 270781122 905972189 151391893 712888438 15038000 885011005 91706982 974555730 386548113 618935388 439099040 487868996 357457079 417407487 144878372 668044653 546909786 775382171 786484465 860713554 671417693 737621908 116953929 184764211 181126297 864383212 186481568 291506214 69738870 382272144 611949812 876277993 835266045 974073428 728243645 997146980 933750653 978464072 370615836 975871881 820349317 933921844 150431203 163307247 959659732 971418099 956966088 999749765 147606293 883735972 871688664 909079701 293087930 630143029 587621241 836331503 354429279 788659365 222571514 463485456 284654364 704912163 882294058 891551770 707601106 988911958 601611733 739123063 545279672 671244848 280492864 386416231 949927960 966158372 140172292 143825576 43874196 983875248 892944400 969084758 503380009 933962893 316631554 920629960 965922549 990117758 905405527 984811981 563122825 909148155 568355822 962754428 341177089 434175904 121853270 583021174 959860567 967159815 706707373 879354593 936762064 984415187 768512303 952632424 486404932 646996850 387496016 401248141 602611512 620346653 324073354 838577796 501817669 703198479 499585095 639558537 702518512 970114340 744233351 765494485 532946601 933400810 937890795 986193494 513241634 879824926 291263202 426830894 493110838 612936707 9908992 605884771 337204930 718529234 104964788 766410965 91167996 739737378 921247376 965120848 173062219 425243945 479807080 981407817 418226338 738084538 156790870 531136493 451064731 561457962 621912347 635904884 883606940 897812471 165839700 198932322 945210515 954557073 197432131 832375542 161759303 382308050 937226265 942817364 858852588 970569377 439334582 973639504 497840926 870597088 520832326 546936637 881461226 935436826 96443879 145135642 439357720 719022726 722219542 914328749 530771596 755462927 143192121 732348524 845363006 984138784 745929858 820795647 804630539 832705867 590022706 834264362 349755445 588515307 691053706 915489080 975057396 977845630 853270281 934644268 729909336 828110411 194042307 531263860 563463535 744265052 806734291 887823225 292807048 992444689 600561735 872841464 885577734 977137162 307408465 310827846 561727084 574780834 533855676 725989639 792416546 923523241 549863339 940749454 481408118 991788191 802131123 977410004 348572317 766749587 512252717 826629770 227008011 793658470 467479492 913848297 959552095 959874477 911825708 931053872 921609419 932932170 289150978 852314049 247097633 749826685 479941221 977957413 382820049 996013332 261668938 799253032 114364287 199783604 35066463 867612696 815562387 918526607 684041626 927226752 558464982 643975480 403297640 814374542 323592039 462901354 554991854 963779579 105777335 841687925 560328879 603172235 382925650 615480197 160991687 803043696 609689710 685305601 733253217 814645274 708228922 943404741 713875684 950125660 54055550 339483581 84277820 624204962 51518357 527022493 38948206 400717009 107937203 279686971 160553325 243073039 916536849 954009218 627664869 737599925 191029275 329036697 979051098 981252031 759799212 890281957 536943811 826561004 47219771 493179181 217528407 636144073 20798291 732615152 430000913 919217295 951185988 998019147 369241860 549933076 816686298 869749599 534431969 610569707 512742764 804989590 476125956 538426098 26721142 179827105 487775735 866020365 47010276 710841948 63192892 406491881 469046063 649658318 164705593 714506302 730777268 938823534 624846445 787316645 817980442 819844493 45237281 331645598 314100139 332097692 933246558 946854621 274773812 743358235 277913538 396105255 372549366 781994332 559704277 772801258 193038945 891981796 124746869 976299793 968737886 983137558 562459308 832394228 477285852 685985283 578732086 740033815 359631790 861989022 373526343 568387815 442348398 470193262 500292802 545488779 703371832 836632594 701924733 735557811 485844001 550655460 764646396 786033487 666174128 780158412 582668073 957660208 665172945 854872791 192368073 392789487 904009200 992715355 361665242 656614110 341877759 344918427 41443018 961012996 155112848 698929001 8085975 309266782 713844843 789763944 583965478 816638501 232420549 411022798 366831669 532724211 866003066 911754857 43463534 644959824 430900387 596975370 783229135 970218685 480450850 824060149 768431130 840339366 669806110 945183381 189729775 220403776 686130437 930113350 991539855 994540014 599959730 775268313 536305124 989474528 85835550 440404504 631098954 761838002 490311493 640468993 772737267 956593570 434894076 612175668 15384519 669773934 459354994 622350760 211056399 928850740 343310953 674646592 408774200 952758348 935757727 955108411 875252866 927127303 763175095 868872813 481235286 665293798 403757920 581154551 457010372 923569069 161736075 719126705 359440479 363375086 414621499 866817209 912583088 968929262 898406750 987981214 503342794 865484755 337342494 838230756 244101660 261989512 141756753 840803327 329836140 607399723 278864279 550353856 505247112 694968017 563974511 678755217 485384648 635602322 94837418 613745953 490965915 557714604 832302444 844047165 233365197 632367488 557096851 974464475 882611855 949181956 127326055 845022378 418384740 585279835 989575993 990694473 24717622 821864763 342360596 386059740 427834675 729426936 602441778 774768393 187583670 533304783 295008439 839217223 963616868 975695693 197628665 557022620 75828380 83775089 343909397 718268011 753199214 781328032 39554410 846015803 783708360 796743957 547487640 978690068 153822264 945772687 153834573 434539472 306399661 799766374 902291775 934054332 369610907 660872555 580183557 683149750 678485341 739286772 116060087 816594373 151216249 694374859 851001878 958935069 94280183 589963789 507918914 777818538 723030613 777377313 318277555 823948353 802124926 803519945 737496041 779508827 177536348 516391434 931481873 964144843 34186928 53846697 491011068 510274605 875222171 981171931 226700841 758534730 620409827 676779018 74137522 339113454 851326990 950932733 138100613 705888595 906452533 907343249 165830941 895642703 288320649 962672204 387792849 748232487 506487534 888918558 610412872 631589332 500304087 941340294 854905647 996169428 882865608 941146271 757013338 869713622 423832570 836793881 142915917 608594558 455266299 554641726 570941408 704510086 456108667 935509342 944731201 965226408 720053465 800762648 217014593 763644563 27247209 297986936 46069634 800993882 171554136 335026445 762001306 850607011 926450665 948762620 540988483 941951147 970466825 991693950 831033644 987447231 21809549 408860712 35872445 769804675 111968461 358582389 926176332 989220931 349252015 482554113 208836063 712012119 847375509 898411854 631860139 873636342 716363671 763884286 337036327 849451064 197988605 784967205 417567881 997683848 927029225 972460378 411238370 903720616 757781163 986149405 17951000 457396002 934980946 996401964 848560697 885862295 959573709 990997677 769757003 940132779 533335095 615111155 536991716 656099270 230854368 655362717 69248789 689128843 204706777 330980083 278340017 503116039 371552401 852540826 578040648 748786463 620488800 694685268 700644743 846238219 821079611 916678657 658527550 939736278 381672305 841491232 344301253 721589335 12195821 17107774 184971682 470133255 715582020 978763052 81205855 547958348 631455810 985916748 92443337 558105824 570920549 858443303 490500548 920590902 230582050 459147056 3201863 324666764 620682680 931030743 979897411 986270378 54104598 845427639 898277572 925439183 568348505 750137573 928197059 961491395 510405473 955834667 42895502 441817340 244037744 451072975 304144965 834160258 268207505 732011382 948966108 982961465 659813688 659972568 588853063 883218817 472551096 907252986 67596701 871498118 8833266 405981619 710891224 850619857 695656852 959790636 382970067 712053083 632391200 763569963 5093627 922313981 267272404 887957410 886557134 989717010 709023208 793260269 250068890 660447167 3498319 948714584 382338366 987502821 220106828 602584050 521469081 752975679 366063431 601545211 365832520 858222981 508139344 704264401 268377128 580670561 855664543 985580393 532881628 914262331 991471562 995061485 867326190 915946179 873500399 906839608 52505342 59292819 459268269 781513569 660022283 690863911 703365756 728060096 297802441 633798845 534207386 700855169 644168630 791389456 399832579 821651422 253511359 596621397 564156212 590404195 613498586 993322026 178102797 813997476 39212864 762917962 466402483 734729261 474966267 837585105 861199325 980704319 193186030 924249317 874909907 939312005 765202969 856066520 72815749 856070214 698733463 830555185 620201960 776294485 95083914 973993591 853855394 876215122 791360111 992538151 864277597 968367173 701910654 853566988 567237548 639106682 571938758 650545391 418772874 825021936 768273602 978167031 1621176 754834241 501137752 631545785 690827200 913988718 390663895 822031248 695781317 864784900 488426393 903374867 536549481 582154077 977347083 991266865 181425441 410622155 828758754 941345964 715458766 974250569 405935184 537700585 255123192 388141035 567189546 588978843 375784540 895460509 456279759 529884493 38262430 910874031 41202932 95096334 305308706 999145522 643040445 985239641 563994374 824369548 526009008 885833132 694660946 975730006 954367741 972682163 372139447 913747837 556638258 648795356 463902014 821050003 913714293 957364316 634139821 804353333 277655560 340109829 564216666 926882160 358572446 764190624 426770199 912761740 297483781 868342676 583442164 866401907 168960366 508791920 283253998 904782273 838234942 964690339 745000543 856116175 68251286 505336061 265632074 723561980 916980529 958963020 88203797 147227822 160815914 387985310 39092678 287950106 759406789 901570384 339253728 690984453 227377440 930422985 925825763 982208327 106165205 448157324 721447370 981913919 439500954 686292503 124082737 557865797 158674958 217495486 121568197 860339099 59125187 468173656 926362682 941435411 452072144 564363139 324448232 943374701 225087692 547277391 225449078 256991847 118895087 349137160 367431369 442245821 252972638 774399443 628113865 636974914 467711553 645149726 718986974 784758370 741644578 829724942 148995493 470109191 725804649 902782864 620587671 731713208 112548972 419050918 204078221 735068621 790083446 808212739 45236729 548405192 189606368 587883731 120589924 401359060 681501100 750761140 479965876 995585539 946428282 973831549 478036852 936080927 994145826 994774602 366183535 983244969 695022867 977427233 605221570 636263176 815217086 825268781 890061297 948337792 85200376 554101240 503263208 863774564 88724882 802398665 707406779 978179389 849901370 967992078 560993561 825081634 917203855 931183195 70561691 518940313 505200260 824637175 507979600 542828346 777569328 796949348 881026835 942938635 208991889 570563296 79928416 186761001 606867220 870359000 664824784 846564616 643643185 821978810 405336312 898722945 222939138 596799166 808681675 959631248 446097146 514314879 316852214 999869547 131761459 495089228 700977520 924631096 144379607 833226490 477206877 569909853 571880151 830286294 394374334 879372606 526969696 552801434 294449655 492153168 76135570 687517544 575102383 716585482 377925445 739394025 651894784 930372746 868179051 922687637 598853937 763254293 652544309 717770272 987453919 991575522 699352745 773913101 622317191 864297207 643952330 766882190 701108897 891433042 934277267 979363713 414454624 591453609 12562886 638625758 135519256 919036633 207931630 309697999 615126638 812312388 505486644 790438169 742881782 872683819 255136231 383442604 429706724 638285358 974042319 999609507 896765212 994965865 218099233 278915748 359395180 624860542 951066621 959541900 500234840 839415741 511857076 976089733 649273980 713265939 517138606 889067285 567013503 931975690 345367582 573985928 402908151 637368654 147449457 642932502 60833908 185541129 684688491 704976427 136566558 774393340 930065950 939037067 647136043 771718625 461276930 684813755 653011005 691294906 300075627 303429706 162623016 276707523 583431708 952077992 806151739 910368129 3298574 789819178 231797984 438281549 468666058 514886788 5736530 19952034 795437374 832467355 990079561 996268955 159461051 831102783 38296744 388115818 235666134 547371985 717466878 969164757 241084311 607442451 35544532 467887468 359041161 943060856 542453736 858810860 925574165 930866894 294563731 781861852 676656296 841233048 741277649 789868448 897534805 930618249 252866434 255745883 979864538 994693983 998838165 999265965 431693911 853385780 258071618 887398314 965421726 985323365 262768306 688544578 480718242 954432754 249224794 597379786 442514349 738160780 470428828 638257334 478965390 584944779 893201309 914976496 298707006 864408874 953856940 956297939 734359754 974579268 649619609 893706345 999807927 999959459 47132211 597305839 860179373 989303118 269941351 320268005 283444433 816324187 443586228 484767790 780042138 853922177 255527159 309858192 418141825 600926536 705237779 950163404 50273813 752083808 768144116 977578768 360128817 742249824 139927468 394800558 509191119 770846634 748834712 910678576 834817881 859711557 551298392 797623091 506779852 937610698 548774547 993396755 486235080 563688573 555691999 881789331 421816126 437059913 219769205 229835364 910965795 921482888 614725248 765509916 571455415 670076985 38096857 911909590 627325157 765020527 32556361 440538380 649840478 782924081 148488780 859471578 156747507 899554308 355293660 762461126 837685875 881148196 384684520 866478515 929530388 930368149 178443678 620772388 823198756 947256417 98893573 606587667 683560975 719364802 53868261 917302519 916300348 976389491 923844492 999515959 878114012 942950075 393035636 720868638 239116484 749716159 106580379 776110434 783200682 905292464 282890516 604496061 114371302 641651528 842208615 973640491 198618758 993756478 353311794 883226714 253667821 597920240 479967341 608618062 220696202 945476240 910139332 962856270 930072883 989087397 823780852 950162791 940426102 948793229 467465956 524620870 395674904 775337787 951385120 973414880 757992171 961988895 800718954 827386970 426308815 802468541 453407316 719634627 615425660 856539086 435169319 947781804 38156216 337968344 701697176 806442511 962862811 973590847 779256438 839265977 911473674 982515434 87963369 493525763 861151352 928190291 104160989 978531939 820240003 888927775 778343519 955355673 885203018 892591027 693505759 963047781 730960318 813999242 418288839 652547731 425447861 944244591 942598721 955980946 182138707 947498405 974943734 999804749 655485443 700449400 46886235 458908759 394699499 533180233 661855278 877938763 396186265 566986668 20392689 519627483 776693459 807579664 423662532 425521513 634349758 747019272 333613531 587491446 729474190 776517660 666853831 954095920 391989825 690862156 600049433 682359319 977582847 996060359 872649110 986760398 540626180 938001735 999107733 999985137 821301190 962273797 314284163 760947859 197786128 807609922 764843768 912879819 766295497 994527534 603898675 619409422 11488001 356435940 971283269 973451469 647167642 842934664 844072323 955322904 633037509 951051936 485367522 791263182 524266545 992517972 631452037 684104325 642610701 745023314 318585272 550363374 644656788 739789427 579420474 873016332 88858140 670004682 558737541 793924660 5761995 124253083 620990296 730086799 501759283 948042530 952714014 977659654 947904853 952490861 589391381 652239781 776188307 998534367 973657228 992142998 819563868 844065357 85013515 533418942 834678644 898973869 682166785 773592574 731140235 943158507 206305033 498521605 266195317 653857729 55968470 604975908 69496112 108689743 946580534 992337170 334954913 460206950 968761326 994489550 395781463 481189372 488297999 667173433 341181496 812453871 940765717 952670006 732270871 924086897 868957366 918152284 7320382 694605669 177438734 380093585 400291069 729795092 776443919 951129922 964648734 972419067 938938526 941876094 387299141 954594466 947196392 985660898 99470727 483182790 835224199 871449510 635786008 823557318 873402412 997981928 979124308 990270905 470018819 540437736 13071008 570169661 694806945 941551601 10086752 402327549 299786924 602773671 519466876 583900860 46470372 491697368 196404239 784866214 492873933 557632019 97323609 910230217 476585098 954624896 251884166 654724114 157544371 443927728 755883083 760191044 458027028 593647765 359647927 905880848 114185279 396415803 661905573 933492821 775230359 857207263 9798456 81070867 878381069 991243849 671208383 903605543 774720474 911300081 197178294 828897465 633428439 907634158 263123224 349129636 530310734 671560113 489120158 504353844 194774873 760977989 800304728 921641431 598986905 790817996 509766363 989831986 736074049 947654037 995281889 995776011 188819145 194649387 476796100 657588660 812847142 874296215 622191650 741235845 851718878 935234257 964356276 987537057 464363533 717203220 300729804 342400108 132637517 712357990 362537354 488475589 418690887 562597102 937784204 962764238 496589543 775695905 553303415 611218991 125756513 617637252 392700899 683179497 111925475 925883609 124575507 131155916 41476877 897211272 2191625 508294639 496792563 716380862 146024550 792462521 838665766 840109400 283985485 620378640 430372723 824143124 558448888 702108508 379289974 519994059 133796472 697347471 30377748 326864879 345742163 789719714 837261836 979137351 710883426 867443187 906864183 978508329 859292463 975747214 675968485 976475455 112441413 618230266 116391242 941689519 859124259 963372747 709475544 873992939 35400076 751512516 952153517 989492229 543723473 915788241 336536314 532371157 239430128 932944309 950377689 953147075 249685021 457388994 925528294 961919548 805898511 824963270 710095886 993197134 952389599 978982118 283044024 332648057 116698785 380123879 456002652 720850105 940087845 988545978 172689037 876485519 63951360 707902732 672545034 715938022 613691165 805885480 905222842 976217831 829479581 999121088 91345265 222000254 912546989 981397311 807906786 989908725 906136762 961798681 119007020 936764551 987780962 989738498 597257768 817022889 493764120 812911301 780447962 929032504 553253304 883443445 81275987 977970456 669792567 884747765 743077254 871674896 424434688 812883317 331527004 562920914 725573385 728772745 907768438 988114072 538743880 820028433 326824473 389935408 405865139 466911269 867455057 875512901 692417993 920909138 706521581 720142030 681498563 706336173 971782854 989937455 621298153 995513727 854020571 922276198 677025827 929794106 559395759 794342846 595062648 864356337 112115870 586013243 559076937 825285796 58475018 777003076 218890038 510411436 456338485 467308424 540007881 644717207 431925929 778061226 849007766 898102619 511495908 764048334 281355695 402766380 32667621 104094390 743410748 887491187 880354374 928249170 950797013 974823242 256585556 653964636 283174533 850353823 340717401 486233426 490383351 842798907 834414037 948015910 87675993 755465807 399659222 783444731 66949240 600673689 353595722 824777665 803561858 857435246 704806286 984931857 521526950 678353197 549989716 946128411 943124894 959545790 240445987 800544121 433004004 491360751 725578451 964144625 628582989 768475610 612190051 966161477 556745146 591488355 281929310 934595568 876968274 912655330 887404474 916435237 895847099 953128648 922474446 944780298 858399292 881139246 662158900 919787163 503810883 828120743 632779150 691566024 512776176 705202710 309438456 935596250 52090376 535651884 306078273 380686407 422197141 895077025 995474775 997170855 369134444 503236922 574896745 876824823 197156928 276069542 965243940 990554533 168195366 994065767 530799350 565398564 199635089 900946816 315973629 731126482 350723054 756422304 266642173 379182043 336235140 558012986 82166960 351791080 956904368 966235656 905021923 946585031 719584517 879423670 182134611 462747206 921700253 926545001 415798005 531688954 213019699 397851085 575439408 808151456 403385816 563862619 758446365 916206130 166061168 226262864 861097466 947860011 88275124 111449250 113082636 869188900 478529068 580125683 69070638 807107160 650496379 846493091 175558316 673101459 275835302 472225189 246827693 922997113 995162344 999953284 108794744 690746715 314622358 452006463 986122619 998966624 738654507 813930129 273782086 645803509 686147771 787996526 111355311 315325427 334923817 413327819 518327341 870456827 790543512 796651662 341524560 384627115 207946932 414983518 346361749 945087377 878903121 952927472 539339779 841137857 688465627 764836342 168290917 963833453 781477416 903198131 469641288 865091881 154283733 307062877 220929389 871524696 748895545 768291824 830008643 999711671 434431553 653237222 631979171 836750883 622584864 852597407 267868580 596451734 677324199 855670310 196152248 285345060 344166227 476783408 948509058 975083480 923500846 934433857 546608791 590964597 16430762 875590492 936936724 945869250 129715394 163246518 685784449 898030583 705658707 999720469 816215278 905916194 607136776 821579737 16288639 546174984 709325488 747262646 349313928 839336106 785396561 908093927 556726275 883160356 310901810 836977739 517009835 561691201 180646678 661278364 446701298 831709997 574989059 593486050 458458334 628224880 193140120 752855465 24513870 586441124 366348565 969821891 367711307 689547816 396096785 572994094 123403581 805643882 740481079 822118226 120466981 782275877 47411875 203079971 407239792 597290857 66661461 266008356 368550671 544032180 786596785 909930093 635885608 792082994 129183703 351971168 34870820 79419918 184066854 464124212 272156431 594633311 657918081 773790944 957604880 972188192 627283134 802126821 686390506 884328616 194386538 565740372 241010084 241939651 809911815 827358280 96306471 398068722 697660884 891987437 358270905 378153074 16302955 789926245 123113557 281376782 219633216 466631139 410555242 977087810 33464714 492832650 232517970 439952452 970632994 982384288 406426808 504977690 510205734 982238474 237933449 684691635 220445933 391497722 945699305 972334804 578844938 959620933 29574936 417435258 327778031 881765709 515205783 657739955 831634470 944335617 2780261 581954455 238761326 921715917 499037911 770557822 443964320 934710600 827288826 894678691 932601843 950715424 513985586 853834025 249716801 771733651 589195161 868425067 812393165 816338173 385566904 474109412 197628223 493612399 811405305 914436062 380348180 818186173 92304232 904018188 682291826 805081148 439912185 798429922 352791086 766949286 483128734 797439373 478770136 653456599 17592820 118577040 273893528 431765725 479765316 716424056 330362202 707085800 343177069 647838014 257932985 492564897 353894024 775998779 230875877 864767922 697734941 861658554 545611367 937318309 596952576 965692718 350392588 405096165 154896897 530128756 193219789 933665089 570766693 723516058 248529815 779984641 397209755 546917652 223726269 306201662 411662796 725116428 381513737 545124985 97814902 591906592 658229793 995719681 962099586 968267558 651382825 925976778 330859445 772897134 609513515 847994498 589014897 770251950 686059654 990489040 184034805 455440774 610320698 678264430 667689575 720896295 252681396 278117329 928273980 976353497 104524034 274683790 226915592 826968695 854502807 897117876 737425998 918073213 603147946 988998261 19825422 733100149 974285831 986673432 403734452 576515103 651377773 655075291 66701185 917755467 644539296 824037244 247224623 912514748 350105826 515266191 792795302 947523672 355889725 730185035 470518544 520465328 36080750 434012575 790306080 940340608 296851763 443544503 362590716 597380886 833151102 992586715 50111122 677843713 817749941 938072194 281705679 663465078 904333492 907851578 671287955 822733554 312371493 395812785 469942988 981284984 13478700 655062931 296275169 909881559 337222960 709566522 949183625 999710447 885026369 956503118 872908145 897259254 538904581 824232633 943787062 997379134 893635033 954731890 778826942 984740044 580363565 722834748 740582727 763243479 41146006 690231804 474543099 874025497 76124428 702333087 449105417 981308273 519398399 782727493 51359049 525525215 380925086 815047296 914417894 971441149 725307123 806018198 388009205 794350882 781130611 898395788 840700245 942983454 429538469 870820326 188839242 793941734 838687091 936759365 725931679 835294275 878004052 940656895 55156980 914033653 802787320 918902049 102626249 312677693 899908136 904068384 615249708 925988013 220857641 532555053 205182480 229340601 720075329 756020949 880531638 958707087 909622962 993965623 223791473 855410263 603578247 869389659 264374012 323799546 803700695 918149858 691247219 906158619 175348443 740588328 778302684 878721150 449937256 708460276 152036068 438366020 194636910 910817234 612581700 943675473 200289750 845428463 296173968 918938290 915481136 923404094 119341672 204342597 287127901 676992295 898675809 903183717 966027221 989277015 908985470 989945598 97293391 337815373 463976996 478207322 781492049 888789208 964076998 973875589 844357148 944700315 262810258 312189505 702667343 817462317 698314329 703387353 301943278 817946387 723529344 946655304 859520126 876741620 106904301 858127435 303129520 873338327 694975579 996674163 112253651 419029023 58752109 243429821 356687950 882396808 737693455 859875768 146356625 819341967 963153521 984183414 420973055 671794909 71483001 791677264 692579350 871039359 869673498 980413817 277148220 791686078 491162213 666966844 682324420 750960596 516403943 638199186 864467643 877412074 945961390 955618858 696826366 925397806 195303108 268011643 575667169 909769798 362954731 478493794 493881818 505835234 497618898 861225655 575130890 903413415 719464225 849351600 157779997 207148278 30197329 974310048 987761805 989248542 485224843 901525719 1909794 321475471 139459054 468113314 814025686 907044110 923593959 947345825 880219281 969958571 581008117 614742524 877295724 903881532 877877007 897209018 353993506 391672130 753225516 763915296 405453233 857390501 502034592 718178898 894468133 952063117 335599345 356851761 975534730 979439475 334477843 689693378 905049567 943813944 970912321 999799671 361356195 567790528 20140290 915843828 482071781 989857082 263399523 370187535 366687625 415638069 145137422 201140050 626197840 980674554 794302674 801859689 536260612 606213431 677524245 734388858 408527379 539255819 616473625 988203886 640835353 787822627 311669420 795925648 785741866 828575525 269347309 702366811 218579129 718548265 216753428 767141020 415518606 489138939 378542923 887486120 534970200 798827498 704561540 878951215 264456288 643689571 633293795 835907132 955723672 978087917 661551720 864763334 809223728 829327953 845052226 942742657 710098367 945157748 156202565 364585130 345217944 422055248 739452077 847644420 183972115 310107088 101062008 661317526 464120373 539638236 524380279 577062716 243885362 771405156 692724506 868483072 385393212 429484503 609625505 904296379 275366926 277471583 744893500 816464896 269406518 928246787 124861704 766238758 709618738 750092206 912724300 979681328 961220410 976945739 156401515 440157421 963322156 967800356 357186893 749841242 730838835 961118325 351178870 935345813 170679536 920163917 409893876 492461731 850951976 942140038 486404440 650502772 888231561 913038570 903871747 926098829 720172837 845280105 6708756 938057801 971167973 990939126 763438908 837630946 914853874 955734915 53578349 428533103 3923692 426145110 951709284 995099933 156885620 929986946 872877824 992750364 889141322 911137341 848345388 933085120 823107149 986891288 331047054 361805660 167223679 994423892 518659112 734293096 529733774 869291837 775824125 976638943 320175967 552754103 454970615 556387134 155194114 177255406 403582619 937980538 423422246 849141053 90702788 685204232 423769603 591208806 748251289 808178287 994765599 999735707 144021384 749344896 217030801 235376475 462070076 539923246 718647015 821076690 929483788 969533064 682862302 934864306 714914543 853172272 165110975 369208814 714295042 950994567 991905353 993156833 963723556 975599070 365797814 470559514 362580755 575948339 61299921 934368572 45197349 742142945 494281763 790576622 845004664 892173939 103648429 618239392 758847442 806685049 259718872 966701018 951233153 964448643 360854619 914348068 262096267 729661232 376273469 959085651 584781353 865130432 596357707 940169876 276976330 919298836 617340215 646229189 152584381 310624214 443740877 691517820 309311959 691714599 750623821 893855426 624381246 781777776 404462626 641335619 578651697 948173735 693594681 843151763 236658943 926808733 419454851 556997499 936235353 957746181 145723434 582749892 224615694 718061743 570099262 969029544 888210498 895575989 508979931 883152099 276425418 826831005 405826638 852246106 287331130 708054068 663479084 829397130 915471214 959406342 410940836 578774027 500432895 629863423 683828616 925293906 428606696 634880365 931527901 974664604 571919838 602137065 191745886 729720793 953694828 973013983 123798914 783989630 251547054 271524985 523984886 664543064 296963440 679762059 318236077 465250417 252467555 644775915 270330162 281318932 193546421 837769732 15605811 635062704 985599985 990271881 628405547 797334668 592567815 998630503 388905293 644045320 123259116 606898001 934153178 963438814 651482076 662995204 68456628 182189107 132028277 201370032 504420253 628031835 970405627 985867288 164814090 397127348 148415494 320520478 787251513 867375812 424580262 650369179 562031894 920550517 170712192 944072928 559213924 563614858 375801831 729837384 606557395 860704241 293825898 645321709 761308404 848271045 970210435 999854763 622815015 990261586 865826625 901943044 268447889 909967104 139306601 281537422 318906761 641993115 490488026 647105060 652203774 708264602 581778544 872030831 612148265 720522121 20064079 192686248 21630424 469728411 366242068 679757808 352585638 485915755 769075228 784950800 898827359 953125039 316553917 874761059 612745190 825413083 870842987 991124292 74878264 257675387 843568465 941782370 63678019 114980470 7153287 140339313 161841619 515993305 582041421 674186892 792504019 864907771 569841030 986823105 415998879 816096041 567094883 793919690 152933730 970832275 816334238 853112394 113198984 719076250 201413901 814695884 820724384 956525773 550672293 905867096 276719156 574006500 650053335 857774500 126953096 133047262 532478640 805225933 395800735 769117081 840727200 995405925 294367170 427175771 291515828 986405076 99643147 592754652 168604094 662232748 657441814 950181544 516876624 575929758 740710376 871453081 97455191 619178648 991019686 993510984 199669580 576509339 503146249 785795573 978083306 992136762 247674381 548023053 53996815 610328693 372664467 656238544 917903565 961766863 589075015 891465270 425026365 600984984 228756406 588914367 17206770 825506206 393137518 938543438 452383916 685357231 600096646 779141136 765074780 988717413 67757781 632791044 740309303 851802205 692970630 881191966 20482881 589917096 618247543 755231716 984695975 988711245 8088110 861925405 756863508 789804222 189949892 401584753 658506594 981902081 391998959 929195163 688502800 726995587 274079426 792793100 519158017 877937256 129181302 451893884 360035492 629265965 361697841 390261538 176713537 327539919 370129655 544953651 503632135 617582599 136308504 662504162 765515160 907563548 948473520 969301468 909285953 939225519 707397373 893694933 613079308 917767508 848187906 977648323 532530457 754619327 370704527 663539144 860449338 960068843 185363733 366154964 300374605 577009477 559142962 623931784 278537951 648474929 860980501 861904681 299106860 695239820 501578239 770725719 71958806 494652435 918669510 944128186 997632040 998965043 549924550 780989517 282531572 681670494 814437500 899011204 171095271 296354546 608190459 990989923 535345488 565575162 533858123 903209921 394683361 686631606 794409920 915276091 865652338 923021363 631418311 764246603 793413774 963527941 969129532 987030438 923265163 999707069 229392081 390879124 979434290 998014775 546546526 905179749 31082858 682583244 425343538 835895965 843460681 951981767 289907029 325905336 907693952 988271633 247450245 477830220 700228596 835434345 237933036 943842496 801400496 863559156 928258697 967133764 518880108 774688486 531077494 546416370 246488075 820481061 720635114 777426998 934163050 956599609 926703375 965069182 591437066 753640291 125232078 857648614 968901268 974930058 658525168 999782850 752148265 899081495 212545411 841226974 473156378 703513424 583718566 896916478 19918823 155513410 589677393 950468930 936929391 995865566 407279295 641487446 287032785 406591481 467696747 529077171 570521672 816989218 251381931 809995692 894674968 919034251 430908600 755809595 703461065 756565193 409181908 595219099 408513300 732398651 412464342 808857999 129584889 787217985 790702422 790722137 699468342 907737692 487829348 503003386 325191743 630203351 147505269 798577171 233793627 959460740 628542524 793912619 729464735 827575618 127378277 306641157 5257496 10432151 373721976 958904656 470035552 924259815 803928956 864264149 805292507 845098427 70645520 621019771 751699270 932992748 537307545 550470006 170144068 598611870 370371416 755464702 828093235 955464829 673257019 838599977 236045549 725682092 880318870 890252720 64594914 581998759 891792999 901419150 878251449 889655390 65084942 347069275 850381125 974449806 339073575 939493810 742055862 912433362 179435580 202819217 754754499 762283985 486303554 916998866 843602358 919386482 748529105 808117169 570132320 940489554 341332427 695901287 623818580 695320494 277705099 988592371 872169688 903393771 642328480 811570016 612727098 960274021 460712273 788798790 398772762 482713877 754393487 964821582 885779470 925209947 768976464 839967744 269168810 921970826 365900345 665157527 323877163 633147912 529385596 806781486 330820535 752597637 366484906 756048275 716958402 815642890 12784095 439163522 580285169 649075120 584325864 958905190 488886981 921605670 549834474 581095914 832198490 898730014 284656624 958579436 201176906 876586628 43512158 266746928 271629563 684749309 207901193 673040570 533730524 569974407 332808910 510111486 594437425 789414758 842414030 876058893 248063669 376568796 142602953 755902371 448653778 806207371 929625161 962101057 119723283 222587827 920244888 966146350 360493799 430031523 853694372 875681427 122509899 747350759 240993948 515035764 369065518 941740002 324614500 796275915 524712961 544870289 485930396 523557985 668188243 745356036 611199921 906873376 462033975 857866881 621703084 894635278 524105149 651585561 18537624 84448618 489935274 524122036 70493375 369268753 999942259 999972938 755355464 808575351 460792745 541909596 27501994 403407345 811150142 825850753 93178290 981506990 864968734 931871700 181545155 900963296 335340983 511063719 23409722 905513110 39968667 241080709 919739801 959298475 555412941 651529846 274957535 413843828 546708753 657068006 505528886 657019047 23671857 73932271 840898345 941761703 393219394 993109449 702458998 736472478 295981749 880767783 590970724 677902244 877128644 960411322 434044086 843278493 58854989 133425673 746285340 848764416 741310842 823850879 957718539 970757154 738904467 951889720 789956731 932622054 799964884 935159919 575490074 903236416 845291128 941829809 256285410 420413857 854449294 859079901 598711708 797045532 152636412 885398735 744702730 917978291 294436985 878698686 222341030 957042544 594708289 718155014 421822433 772923615 972378116 979864234 632574474 988413732 224845346 907357881 220547880 961503897 51557966 815806122 294048963 575710379 436019608 620971719 667084228 996118170 642551284 747328601 415213899 756249319 203125541 591538168 125952262 188081711 531917530 934573563 283082137 608958144 469206294 942912006 898585235 964743687 755477312 758448357 659836653 690349242 901732934 932006017 39690574 747486334 716788705 789246775 597584942 953124742 767420758 828486418 648146596 675731077 744381314 839740666 209785087 869315934 120745068 503348428 779652581 788885271 825377404 846964808 186548444 297272325 51276522 224457094 811956269 983321431 706379823 926146242 826348207 863915854 859103152 919631970 812887147 956605976 174882885 616408434 44284874 47429964 372727931 537439805 859699647 940738362 144793621 345553151 169862216 987448137 59616437 629866645 57753465 520821764 412675882 574735760 219885497 654194399 211371922 865002442 636861173 693516736 188487473 867192750 86851323 144860018 837004781 957487996 376840451 952016509 115715280 490124926 87834366 918965278 447023663 463515149 462221345 947542263 508401655 582500582 214679164 835483529 721381354 859441602 324689875 447847278 969704069 995061902 711451201 943189669 835505980 843649926 874755449 981771377 531951152 585572785 382442057 739923303 944416812 988434700 936890280 980011951 84568614 530438619 915104394 970734788 347373622 676634427 850435620 950775284 517003076 890384024 946423127 983889391 458341267 918040050 609468948 644527251 416654260 829427048 22476470 652313826 215335012 388008996 981453049 988484712 283363977 508929627 645932229 793614204 989514621 997333715 232233968 585172961 56127425 224117532 345438472 651996539 716824629 747321639 130547640 801516283 614916298 715588192 328486211 379165125 534638364 915635617 288048758 481659453 540910275 718731786 135125287 282829333 653445157 690055005 245026016 408667469 347846264 668300569 989680092 996289158 552171311 733882152 84450466 947104599 857738245 976252290 456779060 675170021 46269591 732659730 865105348 929937825 255269237 950958616 748178900 874567405 287262044 947609784 654264212 763781890 8731207 861723647 118337849 134400316 270421512 505923337 552382337 606248240 841967356 876409436 221007882 918630291 878873809 967225996 889724951 940429941 98029210 775007343 183520722 682197441 916048591 983303701 82800094 289712865 707207679 829788587 73645939 813424588 786659271 986501123 694914389 858717955 468694987 712336710 248527156 824309974 254805955 974977395 618945224 893774758 485670961 834255164 429336017 535985119 798940955 900644281 535193336 763097992 875310174 881673898 144764828 201336099 98186753 229732457 291970286 490557419 555146586 859214227 706089376 946984328 992733946 993523815 833315138 996898050 748254722 903027220 315379414 937690413 21201601 941615911 42256632 630264225 512118298 518935469 937989215 997341846 809443631 952530659 427232112 906301446 177259332 893073181 144681953 219732012 416842908 658358969 779752835 971128512 612658899 645340457 687314168 864474212 785349717 867788211 454027906 694742327 433313079 527262268 357337272 984914227 247062817 465071102 4702406 45671837 338666878 670125848 904500328 989474640 866418355 929501653 681199880 687719248 168840700 631723691 413849489 849744414 988035287 992736646 245700278 601055400 824119442 830958099 218686967 329539211 415194141 817365238 115649264 144486827 341609428 552846427 710218218 739792677 891143595 973716115 947896761 953389129 469861374 561797341 95466852 826627892 777952709 988215816 173562600 727076508 349464674 553116270 663590950 904992526 956363240 968658064 794060514 998322662 252235678 975917190 707983852 842930186 998680659 999452931 229487646 340459150 201516959 220656116 615883020 717743339 404829993 807894243 996245821 998309038 34280483 787121395 938098300 996862192 123892745 523357270 130602732 201578862 314567979 484038278 237590359 392439419 77366830 384068472 358824769 806786327 101759291 295346427 833913509 957614022 603126013 864805426 573696286 999293295 13420342 45707047 65705647 911993461 875951586 944429403 103855649 156219886 263468492 659871309 480619224 678881911 146257265 325519468 423585700 544950045 136087602 804634941 60014485 781746611 719782581 982823590 789121019 968235594 886732298 890215910 116795396 677073136 370430309 479660152 534122824 867639882 667577245 679215247 355242387 688997985 89552530 626205082 402791325 996450023 940163417 979944212 712413960 812374072 487587593 720422080 499553814 931820899 660418067 842502352 150315685 860102510 853302455 892485326 599468649 840918274 454034086 478452404 66840945 880494586 774076933 806364779 292922194 726469238 589996316 726316194 549211289 705853983 234239952 623309813 393091925 498109544 10098456 812873547 594828558 925646278 438735563 722977071 283853723 841648907 391229618 660474037 424220984 625746946 829194045 875718946 254982286 957871385 853094782 989113165 982867072 991831612 563808385 993719126 260919219 273755776 579877239 661852223 528190832 795411628 856056515 942371221 135957259 464374679 211023139 662016217 254838848 862930612 130408822 205434873 160362717 892745340 666311338 989640599 612242259 673508340 224280707 669126151 695132351 729414386 903234900 909682339 376445840 895951473 418415357 616851511 842204109 991366471 198266494 807744582 661899527 882211242 533668641 680147717 428457175 842769329 728208554 936642702 607135122 806603019 761571017 887011206 15706951 880082972 14857256 243373262 362969655 788234866 618912865 747743989 192254449 384352457 384438826 970401941 176673266 826822995 384737428 631917878 952480737 987128659 123269489 135405278 112812041 313375019 779956713 959344691 836492865 884536147 711795571 750880698 850253733 898273294 811550644 830011233 688250098 957928289 360928393 547349161 487005588 564020048 928857767 983436185 268112678 550143002 279967432 828355841 215054936 753303432 372432820 646346208 254176302 323020062 790875872 977338422 324618944 957533369 469877157 666777892 64727832 535123935 438980658 731186160 908919574 911793054 263572830 284376831 800111622 910921670 258803700 860162817 325704410 856364656 792008435 892965434 119429917 837200975 114045244 747283861 570643332 692407737 241562297 799648368 588496641 870302845 702626607 736591626 275349864 517646275 21966206 636846080 371611917 788674162 930387046 934997189 450668197 915450253 546793626 712106269 221047230 531426800 242170282 402317333 162202943 378138645 44643490 206481529 348036817 371407303 324307596 800533723 694694549 965644799 125516430 797667919 470307893 930480467 154724049 660565133 193938838 983418502 704060679 767503817 109772581 211598624 23945375 40113373 989420719 996247512 286268507 848781790 315627045 998481096 874288405 925857058 317821664 411957430 320853275 760597963 439081646 677278664 412269372 756655211 358493266 639531341 706964171 897407200 487155813 842830828 895351568 987567143 135020280 929698467 906542099 996498286 259174336 337362479 686054002 993137297 315293567 340491539 194492012 967577739 824798862 960141194 821921130 828297640 63428795 673866551 363721866 439510069 485535085 616555264 373835987 997597267 776400986 851835161 856221781 966104530 88492173 520023214 719527851 782521777 989090326 991735388 580090987 817617782 963661559 989151707 682041355 845899837 434482595 514291567 4889457 582700227 797515357 999600124 387771682 825860180 235436496 506917267 86845468 312135351 698539676 784925359 795009447 835406524 919702536 965438906 822920915 858320030 643881655 982313717 857399805 873337862 533509301 717842772 934080426 963954955 638175190 865056735 360726556 476003246 298880248 473127524 702978587 741436555 270032385 288235430 989784209 996178244 796097770 931824145 399950560 488868582 592616630 995428766 52612180 466413766 369871697 475334895 4746668 949020305 749811553 764021481 833231553 921840857 344240290 823872189 250617753 323645183 329779849 885790522 622079592 691487004 188011141 631622201 347235768 668418363 158620884 684977888 852159289 946602551 647940926 752556513 288770178 791500804 98963492 423784409 675615184 800723590 438826312 745087804 140055386 794230941 990984441 993342011 662625147 880780064 277253947 770167888 373254825 604662973 187107839 444446316 974563791 991471370 638180800 887680428 152926862 792736354 3352663 666874608 599542351 698082386 278332591 808646013 330203921 999696790 373895044 597223303 157228389 377393770 762442268 861019063 446318748 502745564 946216023 973957097 262112397 378522724 785884792 854047808 511577346 714419691 82137336 630682012 686870417 711841299 839416298 914982843 64532906 701163540 272226059 498349964 297995982 617286017 913544966 966237283 202655026 318889531 714198302 882577097 368124204 889683426 938163716 939478525 781333333 926412723 172828777 174202625 108812367 352174702 334676080 809560707 557184561 986747753 831555887 991653095 10741787 71259176 627224065 860845909 306719011 904087994 961121379 981953417 479665496 607474432 41398160 502862714 473366478 690076017 822188872 927213931 599521193 867259787 861946986 982136380 248568153 637381740 843867609 911233795 547210176 985971076 512755158 846869735 872816442 915436840 38613657 955668829 526299724 990753736 166117766 536894239 795054761 916192586 965719685 981045851 341946313 645022693 903400847 966900581 506959073 631116538 73449047 620680448 684733112 886555457 777128257 874652402 258364052 582993628 494380720 688456107 19067374 986511409 974370773 982864413 918684568 931625791 715608018 831370475 694985393 757201754 496605926 507627372 669731272 881129295 865853281 964559914 246473907 596797299 311755177 552624672 13199659 68733644 551808906 725513857 895466949 928526404 456553398 799980998 569229354 690381052 484169765 484811554 761286773 990029195 754558721 810728467 332178750 840845202 589787043 727855487 553291005 940443180 182677387 491222493 946363819 956593313 255835426 381939851 203939678 267427756 875488731 958456588 217450009 618753319 908953013 931896759 135732994 725483856 432047719 893962032 706925972 766678323 406915224 878081986 547747512 646946012 69305545 154842764 250073495 467600479 84499596 605676263 993510425 993515137 908486011 912256141 850292392 887478644 138374037 509608688 364908337 788865763 640520396 955298240 238771683 830105076 337108834 350413197 240631327 459002378 251829837 450731225 548062704 919774192 724872263 806645569 609616357 923343460 905988511 998878022 688821678 714215879 621440565 965464484 42140155 718957741 894022848 916818928 195872822 782236162 840984114 942647204 29886753 495922063 354843909 460532764 930011619 961742599 902158031 960516519 655802008 906999159 321718760 623864401 368019068 418790306 525887344 552196918 569206759 805348768 859668830 886019971 809377632 899462498 410628458 898757253 915154336 997017665 440244608 503907323 265601716 379638200 711556196 711633931 792595196 959764803 496391153 752397622 398502320 925346062 961795457 988169909 960829195 996802831 156115705 470495416 445791168 673696327 957741585 977037302 674970139 899956070 774012036 847375995 785294709 973195666 732248724 978187008 776834082 970602169 990669841 995708694 284872665 547787024 567961644 712431705 149423401 724238707 912822018 947714594 761377730 944243446 295705938 324186717 832131096 985847435 602344143 739825691 525599132 815021466 431155426 501139279 87139173 893145076 358211980 566744016 431582231 685035596 116474533 340498635 301452761 804577306 442956947 484154955 580375679 593065263 240164693 451638065 292594468 419522509 915268415 949465193 203699233 969580957 31924415 504922398 389491651 684814366 214486302 919103526 289216836 411942512 560534415 983942245 298393099 983168082 563029960 752485574 235148144 930267608 320505372 953015047 729666862 852778176 693912872 933251442 203022899 214445385 658512978 733457051 690977818 857709002 595052040 830039215 504299321 933690513 247638514 743658667 801550295 802021580 121743325 674450009 699158961 767504651 233375533 296060608 567807339 939796664 554654300 844763025 490176103 957441766 679892333 847147945 700507896 929105249 903148214 950533024 870791743 980270905 409918748 701715444 410741898 639286562 475261666 913204656 801032802 884875220 813235583 852497189 424043712 586819851 511142676 832155742 4601557 44290147 977924395 983510200 814540371 816333293 164641245 609240141 750931757 997827666 358110141 603198065 328783631 707640370 164781315 422201778 741900040 919936865 897403930 968220015 798110094 821318439 780319939 934996414 393801483 771901338 670832686 968858522 300268651 738416027 24040325 201706954 144305358 777874462 309862905 635209913 514462453 656974015 793905248 958702348 402738785 428011120 581494279 778471334 79244694 319432256 163550516 893865527 268890320 985808321 410347813 899788732 163287286 213739329 365123734 993564750 267707893 830710443 32782077 95727841 39235185 723823723 424267296 986650910 644265491 879383662 86316017 112244973 804352016 895574386 605884886 660483465 563293796 680978507 264270623 409927135 535357242 908684288 566272275 977506227 25102898 836825044 134661523 259870832 953272724 959036612 330585113 944948810 836399127 983185763 4946942 287929135 357648204 588422182 803104637 995975619 833475763 897816150 563240682 668068856 983073667 992871633 480741731 571473483 987015749 989764429 134189597 192685204 168901701 542949814 577596186 857289880 731080192 904410972 967225226 986524738 559211717 661619857 361787485 878080391 772414687 961999907 19375727 984488056 54380332 157317843 466006499 809381765 262047583 877870364 280560245 781828173 144737471 286319243 332814770 468279025 598317083 684882317 69534621 117114929 909706539 930395108 108075900 887065740 538987787 858423931 157446849 318836460 856246388 877591865 27246288 851432737 330860175 835158781 709577499 946543817 101098690 712770730 230697927 783090681 444893105 587374280 99406336 331418999 371136288 650126612 716099478 964786975 202353484 794129795 933888270 949336452 589138371 720429447 73317643 491219488 76259298 954291315 925137326 942818935 455977288 882218352 70565921 250230067 781683949 808012834 826897558 916746441 777204830 950419072 708739139 978287760 144930768 942556755 911844733 955429972 894429239 895096310 244997583 529104452 908381217 987411097 82680814 388529822 630231789 862759953 438101863 935051574 941324379 983708976 782907155 801494374 501009306 973381504 997452802 998134612 703111578 947714664 302888942 340091187 109089721 367483977 30823988 725762327 984989446 998758132 190912072 774155778 994403207 994418677 887593309 929962315 400772982 465788759 408673386 543750337 342481451 895972062 785160372 898913717 29644373 402252664 828795881 882106839 231146921 789177166 378973097 657060750 138884542 714864242 22603128 749877819 142922665 859960419 989403796 997615944 309755113 691473969 380241732 439026080 892231894 905276514 20854430 991552498 905776077 963767012 308450159 894381126 291693506 972668273 769349762 848186133 383868372 534457737 209066737 315322564 964890447 987700431 606428451 743403857 320465222 770973000 103503558 241297665 936200161 943636840 15473264 457205403 306206843 788214517 8776902 426265604 125771871 628896269 637391766 985206233 888817337 892718485 927246862 987676402 791617834 909558023 706249913 884923798 653701315 828093741 649426766 920455233 910540220 960233634 160018417 497850782 773966645 886440193 723385633 838188398 829016973 974580874 872992780 999664786 687411660 901232369 432085075 715621410 902247629 993812168 876974475 935016302 364088840 399722740 743266667 937430062 951558965 972132244 128412738 913444104 999670092 999879892 888792760 940106119 352126321 923471646 161873737 359675093 80513008 578378069 245475176 306083595 698633 766404017 203018719 640838712 472593497 837772508 732186940 915921651 579881838 593642429 620257348 649480148 164977798 515891258 40040994 951131854 751198841 871557043 722939963 977441274 878852256 924384157 450635575 994382512 310064247 863257797 527916041 624682062 444936156 594031361 701543612 947406347 855304721 860170432 320266488 510618280 926150098 983655372 806987730 982520155 846122057 899829082 532480069 691795607 443623092 859153301 503753295 701800290 359419518 746382251 160891728 910770351 126223829 703627312 778260538 783707009 83459141 780745730 339347711 808111247 824895568 855244263 894062557 933553991 126101368 811035753 147744948 876710381 801369698 946544842 720459375 960342623 290142360 954562581 737302846 879939480 686426054 966216691 501784610 572432700 493836650 502229912 64353048 681834167 990533600 997383927 143596841 932110443 781044875 843444730 132924117 709452106 742029840 957699679 185341082 855288090 818612515 834620192 216827452 349821707 30626507 439497769 411867426 900957692 454385777 695866072 54678975 541703987 789664420 897467344 466300996 946689719 350841566 463877324 442882566 746423394 646986348 790159555 61118049 869381192 216374229 756953516 403213397 411557257 636042329 637245904 587175967 693726699 859176559 997222803 760671078 786462777 755859021 934262225 599914601 783360673 559382350 784719149 64009643 456711609 453022336 955861389 37682416 169559457 60351117 777979283 270574554 562428556 845941191 926751217 864916754 917347135 929216380 961312742 107052418 943099658 510063068 822742088 204584773 478234261 575509390 773036378 721592097 985772194 815245516 913983345 995304152 998043148 285083130 662254105 280367286 398350007 151120527 765874111 609278709 808253679 736175563 813863821 229422010 805176090 561595617 736981860 495048716 658194141 863447929 936713950 481043349 885998363 435519190 937455871 438288931 849952306 328071709 673921528 205096073 551799283 538835096 785792610 237573921 552349230 541203192 748958320 907391345 994195591 513721826 647802089 637274751 996479480 524585427 933110631 969388611 973319395 640123454 944152332 299117890 974421768 89827283 777008539 687218308 804132451 45828991 386904281 882959023 941699485 199606367 859488383 983229832 985114976 945930127 969119189 384263792 556920740 779403749 992791405 406429376 988276107 529112439 611470853 275148052 899348370 199024184 568433681 583353275 733015833 687044733 916984342 713766417 800985130 323449566 328941291 988945220 999171307 676018255 705536489 973116393 993051302 156500955 608149801 467078006 663098366 100988484 375575595 644839928 937333688 20878929 848883876 99847814 980356275 296350587 315111069 504999560 857291881 42326848 73307860 856894040 967130447 327768717 543774649 928822665 961491657 836524417 999208368 516125144 996374276 342956382 731194400 490419526 651067451 724323098 938286664 224168188 722169168 420738904 485908750 326374789 612139818 777441555 905989086 216751973 809578003 303770010 389802867 933364661 960934402 997260739 998740850 124610018 810203495 71050744 778841739 840056656 941901640 777099193 966365984 638046822 707582344 99246821 546959022 993545306 996652331 216162710 946514465 523601974 773987288 351351846 533327128 895036279 932238312 626861740 822585621 87492558 498127172 858535891 939193243 338033615 961075454 897617916 968322275 945255146 950605033 775128461 805838244 730885045 731966440 671103516 715081943 92675768 515315938 826041116 990383138 152577886 847143061 751643574 948364335 322575691 377448107 551496312 843414401 667884816 997634362 88938380 888711837 346651328 497287625 103597327 571343729 934760295 971794030 989380593 997358052 965117829 979961432 936014944 945563712 276159195 679867612 555683251 889056980 988057745 998541390 415095555 521320188 1646263 908161357 267148092 665632214 927714194 938034551 914806450 931198639 854941219 877159201 332162277 724199124 411852636 691405898 24521369 242687740 110131435 539426013 383174629 718456186 411070658 541809981 957430917 978818247 799160491 850138258 864885433 968818579 102731566 552534432 683262948 998752660 418319057 844389772 938925166 991603521 356770298 428979846 390281004 394709357 302365113 651972428 30330479 811212941 5802873 539501231 428941675 822990488 146443874 870298293 675283768 924283899 790244367 915504369 136082120 818357508 594569876 713996336 329466036 491853359 177059150 704395765 100486245 257565086 881341247 921306106 403334701 943855359 39739208 686930326 848699123 983663320 301225371 516775914 744726674 843238697 64564409 382948033 67414571 635808264 890407548 959277944 337053537 621949312 773441522 926214012 830719604 936349176 270712932 894021854 976153749 986183318 812918064 943013082 549490862 861186474 458098628 803482012 14961498 582379503 896857683 925232746 930510364 992985938 913632590 991420558 193172448 373470401 880999791 979417861 505169027 512228355 277598931 388184677 870655023 903387010 778363758 797977417 792165265 883496732 31469158 35752028 661885837 729850764 361932798 587162008 899349291 972606619 916978041 986679454 402705803 561277361 769409861 878246829 466754106 669497985 108308037 944346333 448702765 784049392 130718583 779884727 576307231 849342867 658950385 777843337 159551403 669477878 975542723 982262872 402299969 470842164 41020654 530491691 939171046 965247447 450115550 802515375 122114618 967568656 416128769 858136871 765525168 942457732 678540237 831017363 305330215 565706483 782819994 902661168 533045525 845720527 365853220 595075713 1027621 971390585 192253892 644844040 217645170 578924244 259626298 352861084 494105909 788089757 257752324 866112515 382392971 584951324 437085714 897482113 979136888 996441820 490086447 789231387 411756913 761110838 380604692 524945033 614319211 840126880 645157027 791430510 457906920 921138434 935406939 952786128 676164803 723083599 786515115 867169790 131176168 300160243 913158831 994790741 548204447 741210942 950722708 969773596 819157199 926162716 182168226 850759368 892940583 970411503 262877917 712349029 32403912 850999885 358011178 873457136 261840819 618750526 90135774 958249461 380267159 461084242 952842070 966116329 192468638 899084604 104634551 955224146 335228395 910664924 548900859 579549226 19167875 262812945 919966156 940061193 417445304 857756090 408392022 779605116 829816628 838352420 11472458 197339848 181912215 740840291 360186411 725822872 209168458 721200811 185210300 716931503 150624599 695350670 43379123 983943252 884287894 929791436 60219746 903232276 969708825 971892342 536668880 707386589 693856843 827842299 2818861 980299606 649575720 760019500 555485171 612706977 611021666 775853402 377474005 830168027 73479766 997688991 250478620 399979000 714808882 754597353 219434699 723253104 654784906 734853724 558862522 703794107 329006891 779818911 307163588 756126407 859768165 898821728 277186359 655352491 174706573 609440336 231046560 358215881 635820124 745431768 595087564 609829078 477751052 647226832 6729460 730951854 88864104 803353400 791592981 949211222 511980482 792039358 137272732 968053139 654489670 873853420 901273138 973900908 160810229 997049954 588635283 858508584 556018136 783880042 994829794 998624728 924263224 931187859 491467172 839039223 194985643 529054621 136030816 606457255 671220018 897036901 65908254 166193192 899493642 928949813 294729073 655697021 954481816 982822049 453927219 560557774 879175638 952786544 235780236 267087224 138018357 411637352 744652302 791276395 987177976 999014858 205966136 955820862 626950836 742488860 984530266 996229844 990552044 996935296 880051441 980947109 411310845 750432914 678499235 805616250 44405376 706174575 345983584 795408108 575078604 938236863 996996386 997328924 420376469 750134369 451754432 648971256 304842330 884867608 3746768 986300637 619200684 978199098 406930636 500186693 593497215 635825847 109539002 483159124 768289411 894195351 606871132 696741714 444879899 960846060 286134450 561648257 590693440 775678871 300829557 692164855 334885568 768646301 519731256 533121745 703448699 901126278 606401139 631081834 414900626 777249285 538440992 984051302 953500514 958527526 496642248 939731772 708672425 819733852 129844454 247202595 768734540 854034582 496611234 802352673 307791940 978052553 578311133 917966184 170493135 923476046 220408865 630314758 393278151 538794837 570041741 613561298 999496739 999641903 854181627 903222377 419420107 713787598 249224228 392435485 147193361 664862036 308743751 806072375 336246964 476043025 681599656 969807368 652481585 968590869 245182247 415232810 273765027 432856706 573041700 978161723 933235103 960300693 449434087 858428474 442348799 751467757 134260326 986057435 712642833 799245441 159842758 195416423 63583595 747583597 303758208 685019823 136439694 358330508 307695744 727747160 783993905 891598790 365277670 387958614 794279733 835330373 615441361 873722459 917454554 965944654 221159232 736400954 662069345 708252260 734827104 777639256 315090821 775419101 234322025 687963697 171724326 307387956 542593624 622312468 18221438 536319517 877879044 880514584 504193868 759410897 270782819 528854174 347037660 786405316 602470570 620351008 219589 874417062 368757514 504197896 60181808 289603843 864745380 906992726 277106931 855435834 490491224 634485019 527436599 931966556 513089047 695829956 561215696 926522575 676891761 789832480 568783340 623614263 372089841 409452811 493757812 935527080 639992816 898989836 289406539 692776701 13370122 669481641 659507279 766507426 304792160 741989828 540204846 659947245 856305884 860924818 661131592 998193137 865697402 999637932 496852209 837740797 721376038 824358932 2764578 902480398 559235688 728808727 161617158 264060273 192824671 313157165 47569994 842832884 73856383 432736878 479067830 912193022 686206799 921359568 443879098 554946734 178466343 510963943 265033921 369982702 911508465 926625721 582808425 960648506 755162721 877928532 713801487 898642081 617942111 744641674 367897780 807867804 721947675 858175197 598093975 977415547 30106219 816523599 12192389 852701205 895426414 913651273 615209532 990137739 96858675 186275108 484496002 978307856 575877131 793824698 433741196 486315533 276969024 409056738 524460422 977844914 589818730 800856389 193433670 356805523 619620403 896706175 592833470 699047911 731959951 744426995 291795578 318125594 748979888 849156556 951736894 957341105 486672438 912111696 900283924 947118840 27748880 870511422 170594661 947622861 577795860 638246657 334265740 757808500 398277299 986361870 638413911 687829281 156635489 658348991 691080922 961720813 604509564 908631379 786450370 956902094 512693439 852580008 853877985 892373632 378261611 412536415 975942792 987568609 777345131 833087865 512295239 584971121 471570942 513756770 348809031 964245799 345053479 538839671 176947913 252246905 568930398 897878918 244523648 523169763 626794678 950476361 199638055 798843426 52895556 508016277 6216764 242197730 468988967 930411034 478133891 759214059 473716002 581287853 185202165 444830534 822640583 975092604 697594332 907601221 382861724 713716646 990018435 997798393 963842048 996086037 891476575 943559190 323926515 353480348 101908699 823557644 141755421 211226450 794988941 998654077 123647010 962972598 389712741 494053569 869411159 975140727 541266055 714504202 965513446 971141720 506879527 907348237 238368178 450572358 990294304 990405314 895935204 910964235 342959444 543562018 748271224 802278250 703910168 806756493 211672698 641279879 659725403 847135362 990395003 992866257 438070912 496519394 430611172 555720557 138053642 177871297 779489471 830735240 45814178 106539569 537366627 956546331 921887417 968039238 429584487 979349171 111212896 636879945 247276810 363341423 263460119 578687594 671246105 916542186 161434791 407300936 187198203 539875210 222819216 566799060 866566888 958927143 647856055 921850671 100679234 114124806 507156277 524726568 923206399 987620593 327355671 864690723 232924545 303416408 411211774 879148080 724082184 891004738 25963358 981281804 412282675 538042195 8495986 179468889 375296018 922928499 738728537 795795893 168241366 885413528 737218452 843607097 587578815 705925524 166150180 745305886 625864528 713058354 813323964 927589146 875411787 919281802 743686161 749624255 454522251 987768924 474343553 496465407 461031930 516444816 612777195 814836301 821216124 985582239 998304623 999564451 471139574 528067155 634013306 907987937 480298588 913770796 408439994 732072391 361831474 536614166 828358998 970876618 585710003 979912179 529725337 812937893 813033849 979918235 677125859 810185354 842538358 843470013 660800549 990767241 390068560 729444549 186658284 548387398 897229183 965192584 613027177 984006674 441271872 669441228 792805241 978700651 903950132 996804170 961804016 969887408 426099642 753749479 347608780 801493574 981515942 985598398 831816335 903707267 899250311 939853300 747345125 752829188 954316833 999004511 711446005 840706401 252252532 876487054 75507359 847250347 661966547 951039264 657429871 677308040 664304447 828291552 207873588 336313943 972216719 979104937 707077650 717299316 517356086 795391088 439034787 559352189 341615181 814391075 12105126 900450499 213888438 459368028 399754452 696218362 174536271 862519060 515427727 748750777 958858977 963545746 140684870 845770143 819025553 960564562 854411169 867898361 312109137 715110798 221969355 548486793 779910878 959441221 533124054 536736448 928593063 935857834 324023062 696626084 906758022 910567694 306492945 804747244 421373396 860957604 669182802 976272067 635965522 912024779 258398869 531692534 6737220 719715590 925462769 983766697 173337718 605471987 743543513 873909579 847379622 878716703 495908490 826776026 842795974 916797275 270995544 451029659 443225871 916048718 63388649 738527466 14465868 301755827 701783208 808715992 556853993 848928288 928358425 972358695 197124020 311989169 701935842 790885654 368379049 860050654 750860059 791527348 723015474 805377229 325074758 386131430 649559212 892904594 826478755 949509786 267315798 342041561 683579236 845407301 911769800 995237384 205941302 259485888 53032586 609247643 561919356 625092543 474300180 944184190 502850421 762131836 915786783 930760771 287946425 294017932 190566013 492394871 581553115 707961761 519996551 706112347 108058753 801227847 669772733 950587565 875158565 936143978 992058566 995303086 287947695 711729825 573516104 994581454 952411975 966121879 237911068 301647636 163420095 696654015 574122085 671497051 970392969 991924853 153130687 993608115 803246738 887483526 586213569 773644867 469341100 723380261 624530219 851981935 679538459 769257034 149464399 976537548 59563304 841185176 843379427 891059565 900765865 997089043 825383933 844759886 18958120 151129856 474005575 799375764 315986043 994524061 346551133 548141171 288044746 653912191 136586275 833495601 611372146 745727129 298858240 655355721 183125057 958601410 341831984 863344730 372786763 728953577 230229899 691718326 14874756 245717973 837137799 844750826 445228133 669546519 238371883 395184412 285613707 538059036 292332815 679386049 78737992 699494980 793412251 944493681 403216331 448687592 903982819 922268120 593652390 956834101 864241036 978854219 458018868 528127507 198272 165221767 554966452 645234996 541870440 927141355 73232811 337924053 132533918 389767906 107977151 306268019 676562266 811099091 723611814 767309012 889727162 982110136 841528100 971735571 205032260 508059098 284473866 526722479 207124233 220146999 221418775 902219490 856978148 890736367 412691500 439347498 949675571 966353641 324349727 910488802 672413996 971584405 261993463 604593716 846734547 859214010 460923968 927322202 549026789 958155028 648828100 870774515 905632189 922381469 83091225 926082416 428367834 881806697 343518591 578544109 824165591 930010395 321257811 484467987 26049696 236145233 542490722 545295103 560259372 835151648 551019664 622921902 87247121 982785728 389822538 944101440 926137383 946823381 832774693 838955056 880742555 994245754 984262546 988754596 148704940 212254614 455393265 959987509 221521289 632660648 865265104 905983952 4508769 424276184 769498044 916094996 707963372 846870376 584489722 698217120 605002502 689738445 796045175 810628731 971197121 993911379 141383772 581313832 855123692 911879732 531774504 648260524 175002146 481094400 397886385 945453348 299534243 763655908 414764338 710884837 361943096 818501385 67224607 692967938 437698030 919342195 826933026 903270460 663789023 671831777 798506663 901614193 4821388 616496178 587080776 916678553 249737413 457026083 756375932 832601849 672560091 943012179 154729796 936363471 174041237 185399202 833021028 963338725 40404025 102275100 239038224 634498709 90896606 880677440 740549544 914916088 432969587 777001351 965716231 967954626 615052409 741773748 377916292 499402395 442720867 952519273 5670231 347374200 14716435 419601112 645555183 967114908 431875833 911908139 464072166 746536194 597032233 715200796 464945604 606341265 944833735 977026020 285737185 472512943 600568597 721738572 79809947 415349065 276838034 481577537 392660030 507602515 868062546 960052507 378864338 698270393 684046951 843464878 497165940 570954149 650330875 968168734 416350282 435397812 92700710 634424109 111251927 490692116 660192910 998717843 670499461 944408723 43454629 556406556 124514124 944250848 660586342 969374767 977577323 981168275 392396365 829057965 348210572 512149104 725017041 854607274 609655493 659187735 60247347 782838556 952101311 969582296 388374247 857898410 191296112 329686615 345462557 873667904 88822617 309491789 43818128 373357453 940686017 996311616 864932761 956825048 964504242 969896643 872013230 918321972 367973663 845601901 719602189 836982404 932133524 962058372 567060237 960155051 883605789 947726712 314564555 934877500 547248101 835776019 367939590 487567479 811197486 865574891 760369829 902384732 140785274 966594650 873916309 944780678 870115011 919806872 92297333 747692029 479736918 501953991 786312502 968916425 978770044 997670576 609439878 987796807 991475559 999224163 18723716 318748860 900499012 996316136 751305860 782136767 450376478 509627348 61351230 723391812 780093046 998830852 848724204 880412215 589850342 808118912 436408081 544239797 258279754 521773573 552178473 839742391 67550420 388115851 362570304 761383029 842645553 888026305 663305580 975278592 6959706 343251664 655587923 660730684 616049611 866433821 810265055 887345007 991992954 994229866 966963909 990546751 779916424 832764276 926482224 935659968 501180774 505367100 974343765 995838186 314201978 464230854 49875421 371813692 385453153 905423404 828784469 915021447 757455437 820277873 561927926 853649910 454367190 697231083 685717981 900746963 881688230 924334116 531401652 635420767 823513042 879925417 962574218 996668637 891926991 961939343 961454611 970921008 449884094 516495925 538167931 669635026 377243292 892204810 839606855 931297729 927394697 955847620 578618779 611420878 536282664 991865658 124023602 660184283 766051161 973103225 96675541 257992978 70653916 271677212 523059831 939667834 104233083 105582078 708812874 938283803 61338934 194172575 985827045 990670238 14825097 985791201 311766737 809576226 26237864 109123649 251603591 842548797 150458077 710494823 817368675 944725564 631484343 845167269 882329889 955445503 786540174 929072338 623058577 816133143 319472381 575707022 567541839 885403228 215165022 998799950 328714857 829136456 529333217 979071614 765080584 805603336 171153581 752440694 358700109 560504346 522836926 621798121 326724571 735086279 213052046 296418914 766358119 893730954 457609709 811448537 907089575 943029886 439360159 823232245 363162994 618233098 401697769 449776235 440596446 699203686 609039098 686113684 564276475 574766632 622051800 677709039 107424700 929614777 450380732 493681573 80800428 610869999 79978442 121593812 824373809 935405955 10154802 157169514 214749846 467126039 328443346 740874427 351759515 770225476 516794539 769784012 164285849 849584127 668458651 954739043 195461563 985115568 856908553 954934284 387338114 939413594 536076014 561797816 134319948 733982325 169512833 816763400 379661472 708259836 596018751 911398989 327332297 988446597 162977978 822175567 512072418 969573252 711225889 838395409 996034296 997615039 540837601 696802949 832029943 990564630 663676254 860039523 207322041 622548214 400010415 758845355 6441954 10002062 596381047 994164425 399886054 483575815 563291398 732112122 37527559 234964491 802069425 808642064 950839048 976588237 836862306 886793314 580466874 748686171 285394303 679206561 537077811 586487856 242268771 853385859 784006889 988068927 237422269 730245388 807304224 976088420 718261149 744817331 502679486 929059024 52467903 476335035 717934857 950658985 632369619 812468319 790403870 977379948 497265912 614350192 750120008 968619367 366750302 842392416 119604901 265884313 298153270 839111316 875566917 941515236 987835331 996797665 505685215 885321606 279763828 630943043 667387745 753711794 150044400 433934311 776128285 809435449 11185395 64349699 24184650 419151031 617624267 692512709 159365112 212718710 978474366 980954268 89894034 873250381 441144853 733970008 58380822 871316243 30853161 520318555 594449706 617799555 399976254 958520854 40923735 442207978 27860481 604731120 904235341 933483907 293889565 568555096 70475948 759932609 242101260 993472700 338062495 998925950 974190915 987460303 259803067 317608418 354848428 744595702 231474426 326837510 314564782 699501494 384927499 476638600 844726436 978675048 714251831 836657487 351930176 936363737 863655875 929900843 505209658 526636425 977501224 999042301 614541321 630683125 217164209 256280698 143599762 484185559 290539302 580216833 915413388 924328691 57380265 202036474 55344541 113688209 574298677 832530828 550178960 630810363 650657796 931838020 867979466 970856083 323940764 858593328 378874088 772903134 137055740 312802528 779287777 943085843 474042381 912211772 897957875 960966067 103021811 141340584 820224494 979350529 303511661 438923445 467430793 547713442 143787007 315776257 309757345 404850362 652148422 997690000 687285757 761695124 547815752 938217619 883816875 885366031 760282229 946517920 343001520 792018964 782248166 947138213 481514319 879813189 255441439 660240895 695728221 859525783 272425380 727042273 359063863 777331835 36621030 188673261 6958492 860484299 203776226 533153307 612608236 765600758 438672587 936569172 210220626 989160010 236238295 811718947 960947486 974207218 971055399 990771326 242607899 626261371 833574534 962756675 142987937 602076825 285219854 897198629 411432994 450207976 342578076 380020626 914792404 942456142 483266972 965040065 863548394 942777671 818363329 837041681 366797567 632789039 220102604 463249080 592199653 675184114 347242161 440463908 886619218 968840256 6132689 723991086 922117674 996171586 46653966 409246736 300963851 358123625 2389328 204769758 22927932 134864527 9977213 177618658 83576455 382254544 407744425 711325013 382297057 749348629 58742355 928880004 713150114 824685307 449857405 987601869 258116837 784979276 155416644 242617241 530863455 544577171 283406536 997630014 129946081 133277633 465562437 802596474 712213066 791935296 320571638 893558158 991793675 997935656 394219086 846806847 942823495 960343887 753932255 849648830 458256103 767541321 26483126 189506049 59081722 159376691 999359367 999970954 377646489 477250794 6569059 749427031 869586455 932498816 300104899 517243986 58088584 295986610 967828906 997592223 474484802 568615284 643749250 740256091 84463484 555172028 55538687 505099961 503056935 913724506 347250447 848110703 762745628 766022080 260793644 741957519 22014949 22526738 189342721 838437991 64365999 68407630 13077253 474706662 76491211 979092819 151857170 488446697 407530112 695367185 952414399 968298233 531336383 807940322 534652231 880648721 436429438 868127904 390408241 725835331 180371544 315802718 825698307 838806151 293641351 604550875 877393138 945296564 500701722 949047440 733898734 790869363 184046191 983406859 821683953 932960926 210548339 376019087 400187299 782459969 678658069 941483585 750994852 908122907 468509635 717676871 279600515 889806739 230094043 377780489 279900467 360911814 984038343 998686080 603879692 790303523 831857821 997377358 255642543 559501174 189891603 975302248 830265436 931290183 316369600 536791025 428241667 451605776 712226577 878709116 41469856 954189886 693032002 924945973 780030839 817195886 246423888 622250965 76182737 153242924 728435843 971470282 791302907 863708371 41021613 333256103 501280900 667211106 642685435 736736408 653669363 944120072 993881153 994416137 444227539 615134689 537936461 742310248 826158322 992017527 874030462 891554440 257649654 328530327 687388100 881848890 659189678 728533913 883397274 925333705 901639762 998790881 97532469 363006428 551224124 604228698 674274663 721298153 368819473 445172114 671215895 873289821 785193161 901443818 912685644 935504770 492741075 626721567 745362223 958044736 926331994 997239762 506505544 915638501 141777616 636619276 699270620 855245659 933872667 998072897 739356924 781911108 361347426 407718675 468612512 792873877 841282214 962344992 303094668 460499061 610998470 622260979 141978100 638214766 294466250 501599378 218260445 230869165 214512806 954820024 722254105 873147618 850977149 976361968 957314521 995927561 36054307 225524593 290817169 422485109 865632374 958135257 934310157 970828580 317999983 820541333 306117977 795750464 976892472 994994450 559142082 794403992 9107083 545085210 276210916 755222064 371454195 522647272 606980517 738287904 345543429 785077687 766693249 874457201 459284148 984481909 996778884 999887888 984313854 984976259 623103735 993090858 144784337 989121874 687885292 947585478 538544016 688070942 490023611 661155614 370180502 556930643 900279858 934693121 530830485 757645135 452558735 604330477 446960309 956881514 672582833 849682376 150375973 544639180 685588910 723202134 547951959 706596014 896013215 967796105 157043780 414905738 904310055 945897427 801650578 983308801 565130119 752496005 62956496 682926352 542346227 985296464 366549996 909717109 258995515 619601624 146070148 987915921 141277403 688769818 150033794 834479655 731501645 878610445 40545751 337906168 122850481 676882751 668213964 959923169 691790421 699212297 872100990 931721590 113009843 849101901 653913743 848624205 831520500 840365791 582028227 814613054 894165264 923297564 937242204 940562900 134991688 586103876 265442765 590148363 623201531 997158852 659539842 876634198 365062985 445148474 565632155 916842287 921960640 994601772 595817654 755294763 133915585 228056676 550248509 588604509 147456868 754245311 709023627 882021106 495535922 688785947 158673326 765302769 352905965 786457989 459057030 622890064 694795685 941664957 116357191 526068490 903597282 972111028 743042037 910026766 365425570 655111188 315202779 811591237 125717380 150136302 5708692 15022957 134613871 398500999 244803061 778742139 438102063 613899509 752407842 867950496 488662456 643772811 875867912 985411060 847817609 874108141 334733672 706050092 573080272 878169509 564906311 620619681 480044723 531750057 677450094 965991604 361361524 902781590 572941579 910973402 14325282 692172422 114913454 352566355 105086656 945109268 525272979 705567954 700601026 906246308 673301598 726190493 156424095 474322092 947708950 981437007 599772295 632199810 487464724 524438325 352178928 552661530 496470512 671886775 353543884 743721337 130531901 958915167 411662592 950358979 548034968 827663222 526233839 798382615 239024761 982044462 859875018 907941995 607149184 798607772 506083156 513510608 817852583 931964192 139097708 547954729 984737510 992873773 999397291 999934547 570764028 918015791 145686471 649744705 732517536 908927223 228535862 861912023 386335041 885493067 612984417 643751812 932817655 941422975 40528719 611695008 565606255 734761111 128897150 566853638 346321513 416760431 462923443 907224209 664235056 785831953 10725944 870758567 199852446 519589516 639006088 664506029 126598413 855733271 121919472 654882271 630939912 926299304 151864825 993391122 462695367 553327122 430526917 830282180 672145733 795570335 665102065 839753599 381452256 747562127 34319685 604444861 888924045 904394179 158710500 743825772 959745501 977929531 97421044 650923587 44297585 591004823 501407943 945229657 978350101 993533848 498700866 656378920 280490340 289818732 40875130 883644880 540784058 554670131 913652561 994619462 975071482 991266445 147199937 165881411 186370406 694839794 451430420 790315932 67536499 155821771 564646672 731801267 142181510 307782903 221365982 369977184 718424337 740992652 298350823 752749089 318041442 643490106 300386235 945110254 868801287 997558669 193148560 399801820 341897272 853407247 552065490 669930409 546689510 887276582 799806769 876651748 86370284 280799062 895808475 995686636 2753682 931011198 518145090 650236306 939298641 967032065 755122901 922837537 323917055 373878944 450311347 540039828 566541922 655209419 635565643 701787284 258779320 825941647 223306639 818013494 154052599 423275178 947025292 976323106 926447146 940321295 685277898 865673956 804174381 953691072 297312180 634539046 784875148 824414490 472806016 484115297 565066766 681303352 931546458 990714710 362566498 693467703 548837457 972753903 765889668 907430055 191940236 692597052 489927164 786732907 712558436 742859007 537637805 911303846 756501860 787327369 504524658 579848756 821171502 877196730 435189775 808832659 680187411 889845003 715323646 988363499 337829531 714721440 768323721 904048058 147818807 575809020 504881408 732092409 552487275 928420647 410908864 493356346 819291847 922069800 160187059 684698759 588872112 907812636 385010868 575860492 661644299 963850333 944138216 952505072 978850380 991485338 900449188 950459949 214353151 707968905 944325697 991675070 471322719 918267224 816767481 909668837 138301997 417142891 417635931 868534258 32416109 481562416 456734186 914477460 300127701 966802601 649981111 884132587 202757720 536547939 252638615 891786815 585714976 591354459 838585599 863257824 425113095 759739620 365819498 713502015 663092977 748316641 622668963 756757029 177319551 956627789 184330548 582820162 44710428 533264793 839661250 857030823 873659613 999410107 250396924 734019650 973417111 980510431 196647779 721403284 421396636 663853199 574576511 845852812 22683562 616234655 965965632 988180101 911934371 960151153 933982318 939481365 446770014 561235119 987640769 991703452 878867356 992401393 242417128 443318353 945041808 979077870 339152703 501180775 463382786 655547956 696381787 773331516 107145541 736860259 941449099 971217479 5290187 588740645 462023808 706169900 791007445 865571894 587024199 815527240 688198160 863639528 414250902 527192407 297293037 690232353 567413867 776629861 295643102 805092372 261086993 925947924 248684372 819254224 51058152 318478269 196656613 862961581 459298180 469046410 488530592 914839719 652846640 793679059 42945779 616995681 563576206 645055249 621216794 739983405 11406494 815607908 220192003 535418343 264799156 367534131 89943857 908706026 512430858 601898304 292968008 668093687 297089833 810180986 766193561 885519879 366325689 882890347 90690234 854277531 740867045 903135744 324511337 343255356 553277254 693938325 212895317 832134085 167942704 995469727 790656946 910520423 956168966 994887668 849547998 949269306 237998697 351966803 235094936 958998622 668914787 866046456 746278692 817358235 600667634 888501040 779269977 786205804 238074664 844615201 699807 555084855 764838799 846588768 489250522 657936215 363818610 946606600 62210845 598572012 146342818 446214289 924511944 950034809 129943486 823402741 636995806 758918322 52584803 521670158 778766552 844818555 388274194 679518948 106999793 618400242 922444724 925857129 405082031 640700477 370460779 869384532 137291976 461466759 513541999 523833421 687160411 875239916 93280394 285469098 192767521 624111475 235855630 964763839 981429958 993198330 668360542 745781639 768289332 921667216 607188030 806931355 974906061 976459574 355893202 447653999 922676877 984676067 333549712 399949145 47811785 745931539 314633538 425316310 38668980 298821123 648809593 819977181 781531525 904623718 89723907 477820333 314713285 897112938 814025820 903819703 934197188 962448722 949127153 965743686 556666335 713055317 257767026 724778725 844295006 964399556 341680333 470101210 972294769 990294806 119064000 854595757 572986099 815015617 131522684 969431558 458533945 529553014 35751245 326434498 880835644 929661269 857317388 906855356 33388250 908338496 22971281 229996303 463064166 891689116 571250921 577438830 427766586 499315474 554771418 937318224 990242464 990603509 603616522 880624157 621034722 747880612 440556714 889545471 705184462 978065227 216034194 902427540 500892043 501397212 219657934 556186642 59702014 818022427 666197385 877916731 975938542 999647429 771290351 956094499 759213191 873293244 728954447 826263762 60874907 991518641 244315722 287304191 251514216 727240413 696255390 967316079 920252186 951742127 167473949 352352235 131429892 986046438 269481612 329409486 384027149 608851533 281925243 688721439 517025268 902811313 842902645 846163890 380539683 857628136 397552778 665373395 558733061 711184033 410365198 922981001 691957626 954245179 769615035 898196500 703530531 930887847 632027800 995869551 972755389 997055215 390995283 889901310 243932005 331513752 866910938 886958397 194145016 767538796 294813508 876080508 396029037 411026648 186295110 824720278 108979833 339932519 991158444 999575788 835272986 978328073 871888708 967887411 294040508 467823513 435703377 966995008 608506111 684046284 524479239 662571421 158946096 712471040 151120491 479866034 12371359 742219441 496198024 630337270 432121257 742742276 171952476 956814925 399024114 514882596 617995881 634745675 899674445 963307052 856240641 963557361 541804220 831077571 224482559 725498095 84024527 339538580 985785338 985802624 955462500 977768134 517394544 686303786 444770528 999845505 913245649 997846424 639787910 880451045 739304443 844535113 438675340 768033873 512843040 529875084 472303759 620948394 331601603 972728899 19266075 611497930 78427424 128391946 511167182 919685780 248914169 413778442 559970627 968397565 249104370 644115848 896887209 974863273 637185732 802774809 482998012 935334829 177819185 951898060 813705056 982687567 606398009 721530295 82426186 116810552 481701847 625472624 316166914 752935000 90558683 896981093 581877909 594542986 786929754 836611398 884714485 998113715 999252308 999846429 46867945 823003882 934054888 967815847 479873552 730791049 373498311 825468241 415692476 520015725 807959416 994269187 118176365 413756653 446498824 608650132 927078537 932323509 319557255 631081411 837857738 890232514 387520233 764073650 205752094 540598925 481714436 826551023 997951504 998960729 500664003 812634433 548739610 966353388 875946441 907774874 867678871 897978346 294948341 563674971 803035796 880904302 657181360 779715015 454137730 963655857 24956045 629882518 35332608 482068165 871778558 908476371 486574060 731175546 997910027 999245975 955198973 983703631 712672468 815434656 44173827 967814345 58744806 425453315 888811476 890374545 734869462 769932258 70534883 95586936 459395903 788691295 513987529 578605072 792955599 977239390 676134585 728629042 878800149 962214686 666096013 812582362 742875503 914859895 824171167 877658631 270718051 662848983 751388618 803726680 216670336 642003519 587786120 722845925 801252739 854469011 742401612 956445843 31082317 835911417 25566954 740895297 628195175 878432099 139960221 660039476 891003056 979359412 394256754 672320186 575568801 800098317 289042837 875708390 185227803 576301054 138652505 959641710 441950184 570426150 193195314 341487773 472660074 717178344 435952807 922211914 763575140 908795894 365996726 688515755 562098863 674672005 599870372 921384837 316510008 926480921 639250465 793570135 331775310 744307466 140985059 643348630 255146320 320112993 178267846 752935677 106451633 690134950 926106297 982096269 805540706 840035246 515255478 781123928 295209865 507764217 392303820 754948959 194641949 652896615 385160627 784479155 414552437 453075049 223829328 240969615 888869339 943711975 396803244 587907685 742280215 966336078 987781353 988916186 917919449 924729615 647037850 695234055 117104788 777583694 955094342 983486360 256581034 602160993 776461161 874421629 703884499 874358300 74204562 626212792 565961217 754093467 252855900 545775944 238422926 845244541 556828251 947679606 359045567 633729439 457711538 865633563 261985161 683575407 104895307 143497192 959811668 982757692 119017396 197096196 273741962 989156083 88954227 188674400 391452374 541938208 890956877 928803423 881319045 991925470 745316103 812804679 135058047 403526964 723713521 778106163 380508804 787401257 656011726 995925556 646030723 907252619 482955527 851314223 803697761 868152593 720927141 956114226 679142317 799514390 98108074 867141999 259897149 868677775 210572813 429769377 278179810 321542860 469215319 980736629 352842325 822234806 600623589 776435700 972682062 996950258 935825687 937344505 439460679 556011976 54804869 437183594 891836666 901725901 793764350 974714980 351430795 489645823 537895487 996899175 617184588 940825995 983845642 992106176 114973925 658782819 197376030 725864667 588921052 735183086 89849344 531661029 522630303 623839109 123474455 691297370 12619958 227593740 382010284 865799529 927364564 979933214 367760080 602446539 877348641 970060797 966419379 976720317 812191234 943075292 321230958 605358706 84870060 686886633 653970200 677457479 605795402 814258014 33368345 818252250 719756088 819050795 690758976 693542462 216991421 833648601 865790665 960682433 209353050 530252994 553654498 816089299 960494998 997578462 873163120 879092925 491059250 527830718 6355120 999985290 756541348 921347463 404864441 998410111 849699455 915355050 628058709 749123218 326838618 819004465 32415767 842266060 290255396 735487314 77381699 207024361 940566767 993520784 177156654 482258442 537677133 623868389 559315184 629816807 157981800 505072474 783422645 994677243 327036718 386995180 213415834 499724490 776486100 920914162 188150462 463310942 514985294 847947656 267228431 807697369 153247622 691362351 549956995 864566484 56742551 971937872 950230983 968614404 518989601 899537478 553344131 729762112 676635676 789882933 616562875 647340662 50941977 997462620 582370517 930964105 282844309 817019743 632413448 933528086 159692961 534773734 188323958 857126077 10034010 765594389 104533269 917470945 316516164 665662254 824445107 982296816 151701241 478556499 934191962 976202268 164802830 583631670 307435153 600586518 869123422 883067967 582708000 726738582 174770979 875599268 421768295 993638717 950293446 967309520 285548256 588206854 306845637 576470949 655544901 835091820 941084251 956392776 467483141 842729606 629346219 996114310 4925664 372036924 898376585 963626323 909839681 971937200 765506971 949646927 230305845 910630316 71035351 314551785 117031194 177649252 745862725 883449173 200944828 563911322 318800804 838767384 433307408 865760645 987031354 987119659 436274964 617426316 617423260 775360060 199095749 704931891 823373810 891095158 292430209 704849907 645950607 985926677 909752798 963762632 941856401 957082237 572061583 736730810 898296917 965643884 543426657 868791759 829387011 832252829 859470697 905714450 745309320 958292911 772276161 850513657 354800721 841057281 833572734 881258522 904955442 996706611 960063063 965038584 442931301 531618229 264323714 597984563 932505333 957074845 726453102 957780550 516770719 659041462 822369081 869100778 567405735 785357567 18028765 145012660 136611980 692196253 895458876 986011110 516030184 564153132 290457357 813891493 870634291 993714614 863595947 994304267 269778404 623825974 908730387 982218877 532614366 605227564 203170690 777589394 720739107 948793452 63010765 955007969 461171945 786605646 332664875 809570404 523782102 603955755 606711449 853336148 928295034 967185978 318044075 508379754 969968970 990438679 482996592 892824599 698979071 745873212 652405948 792722791 509802461 542942409 29595134 244756433 874695586 946780357 716487553 956706783 220451046 397252515 695030871 956599142 676439131 849576620 150813637 243652484 933183253 973551468 899708197 947589645 256617356 328087850 119780522 427880842 656226415 773485656 225900961 825472782 937679337 941855689 54717236 183096737 957008203 996061096 831851704 943714574 744291303 790668436 66639055 868469212 77324071 407603398 276498922 496067824 471784442 908825103 933291964 970224565 400239806 783499621 805903094 890226352 189977397 775035659 176264161 701036638 674781761 926098841 943399280 996968551 288327638 551343977 940513416 955649457 138507684 208876505 840336835 973340001 55737831 308537257 101882422 664813553 300259904 514747992 502937987 683293898 640463380 920556498 373691338 628865958 651123680 759262604 5092784 214638229 108228926 290112251 3606325 516460767 613036360 711913868 748976475 860946589 626689366 697333615 482415280 906845829 445921858 691339364 116846879 614641337 144065048 753976641 944754487 957038532 815243055 939556966 512488000 761226563 205207066 322779405 771382146 816575967 508689991 811078826 327480962 983951861 392670961 587586525 505733137 979923084 979022795 987216952 856163071 986649973 57845546 352999797 602883464 788182658 509807588 910452852 66588120 192703695 91022753 864176594 654919377 863513862 108454419 320913481 315719221 678143374 253277268 441660573 90361961 866642434 779740464 904138430 486204990 554921313 548429440 588170187 113923163 867707316 545110786 668832620 382832002 764688113 861108212 984980756 571425591 740401776 203314908 237413838 782696440 920315914 998604472 999154438 472675959 542163221 471810071 819425136 887597858 890593912 990168726 992840658 689473543 715682218 233872825 395817281 591774007 838185023 394960104 920421146 788081958 817810260 446028049 899621480 898240936 972031181 564485062 995796061 292066563 769908227 83988587 422336342 463438911 594727478 754314913 857533748 347099553 620660692 500624595 905329998 604155598 623788797 273500676 851748451 282559855 886041114 934927266 943517066 636566042 776083373 588540552 919049177 529487862 990751323 312126333 991552467 308557105 669990002 320395847 919085118 186100211 205823321 988220064 998796679 297389568 808264135 172148927 771240453 399624528 904119414 561614027 959450601 177696660 400357172 997566484 998701958 37233184 547497173 765413172 993937378 479947887 889833163 816193907 905177328 561061008 886367908 915795805 937814364 328472513 556753308 240262664 887450266 781093876 835698767 787544066 832262393 782105420 890330800 948992026 949195898 484245589 502702952 999716729 999863439 979114497 979492735 141056869 326693378 459602687 941470607 492819730 740328291 45185998 483415949 662453974 974424858 694649850 850855427 577596946 823016109 166912323 271575100 313967328 401208310 318209777 550070228 197704106 803311582 797684531 922646210 632625473 976770164 955696113 973049698 799871162 903018000 109103331 751805545 725449607 812068859 747660829 956534465 188153802 468398819 916598109 995749756 748491757 985654120 917745973 923542354 155275084 842713467 97575477 229092641 637473653 809955813 815452463 967580584 99841238 828866823 581057466 720961455 54992368 385906927 539145231 841823338 342968428 429103954 274314267 541956960 761342701 848481683 184223911 214968191 578291542 800507291 79438070 81310718 597488576 927413529 985651048 995338606 145133299 846244058 992670268 997295606 133558546 417590871 764470899 864055469 373666080 636485886 737202663 790970652 360986419 414780163 798556829 942452432 892788430 949351063 315800477 533936268 220116407 398132659 170368513 357429272 930890142 983619670 171682284 840659870 756551969 939031836 750235755 869762280 208438283 607073513 671924270 993444774 668605954 900589142 353478748 848408043 225217793 254855241 341831982 834977466 977155476 990655806 267167401 317129314 453158151 606139893 459731580 657149533 564321276 966605588 992297306 994862775 129658994 522359797 122350627 800631191 256582701 829998311 839719720 934206190 289108725 464147995 973402510 998682065 76205969 854590931 190412270 766963333 902342463 993004497 999661104 999960238 297511687 427101176 330022720 531252263 782703908 978451792 85884397 959339971 175004173 803613596 61327782 407923972 790884830 923766317 642159727 693020731 958411815 981442739 800355996 992956468 637490106 875080065 784845971 896940703 259816135 725784656 642959954 837977779 176474571 523569526 963953882 989970391 124967222 636346601 693533122 988144420 340607604 460824735 364954043 814772256 955975851 974460759 495515536 765082106 949343240 970215994 22866272 183357725 580839639 904493677 114952621 410597209 84979878 840940778 175851058 685606671 149210186 740955471 952666776 997534232 829988357 840999125 802141112 826554368 176594448 600634476 547523418 980746768 687900699 803824410 398300912 657585719 107933565 296079186 377508723 377779767 94886438 307967987 217544749 874066836 492549934 946102198 806657079 956006253 516912351 991171567 852078527 866038860 579006780 778722403 933292588 946158691 239202201 584112794 595119798 741108024 882364689 913515673 722414484 958414242 419453282 583720849 583745898 685756815 126622373 824288820 667683315 929246209 670290331 924342769 145260793 221729310 425961470 429415409 408496584 716611958 388533513 409177206 441311680 956560517 137954916 327377515 697697580 759280923 184637476 555571420 789386667 828689453 167863700 932017652 636785667 771852901 667828230 798728275 681801846 818380323 661624046 818707706 665952216 839765530 358703489 890922180 29511953 641207271 236305664 259268541 328713945 631074412 534535175 732478761 200119118 651408591 528843863 643750343 307716368 744329995 308490516 643165401 255303720 322865852 493852792 725092402 568207591 611725055 14300254 580076058 348777246 644764275 395237110 483347706 847854417 855554056 690894680 754619872 78128851 843938440 508343361 689687556 655093058 769253602 840220239 935157245 648155719 958930974 292093032 474710622 210604870 639983239 132254325 760685819 426957212 619537994 985029100 985520205 185973325 875466989 836674441 924478557 91594790 971258123 671451597 790415362 229868137 800815732 901184837 983868551 869868837 942058029 319732877 322696825 898576779 918774234 581137412 633535332 928212109 943272939 961905985 993202769 893420633 940483066 625024194 786000741 759994048 832815308 459080016 657722739 2128561 792852758 996564938 998394497 73022182 606984537 362287966 514978169 2845216 34180262 637499283 669143337 554355800 663218721 724347702 953930679 763489010 891565792 276458989 410946187 822224374 925637502 662102921 747534744 815265958 860985024 349429355 367833408 785710756 883803742 504351833 575279218 84125602 429946571 327069363 392272074 351897340 968065238 787342639 835091857 318520931 742656545 372481446 382178598 263763056 868585068 933355555 987850408 280112281 426367561 415757660 524892825 589135969 725966180 867202390 893484395 321203877 596904553 689475077 811142661 942249213 965585419 591249167 711699526 965258031 986948182 791729568 948341374 145135898 254902973 762152985 786185526 352597492 935786440 321219992 890888191 216012555 992893409 155381825 534771403 362506723 711384648 548302733 802648062 401649738 994380350 123869158 346385579 609450631 856919188 700775647 774327355 519095648 667689652 28895120 790617366 967909283 982513731 84430771 941101143 617982469 847190605 929967844 931697563 466750460 616053661 910004333 964643480 698498169 743069112 594941570 869590573 513979758 514219189 457961469 937043372 228009366 594089840 520339280 584660619 748235232 915299101 397277011 409210371 263842395 735596938 84041731 219662655 853627219 916366287 870503664 980375428 442711459 451944038 244164342 878043491 215944496 575203798 924763422 998386888 44712943 789171962 396261740 829037581 252381709 492501168 765684250 979139451 822255654 860068997 827146650 839439693 251473228 257314412 76698102 261316497 473043723 571621177 643226263 927889635 335607272 393726812 578953178 584239816 808349789 856001229 412526266 846072983 304570683 711795112 404089536 491599163 194926900 774863750 400569518 700653089 236483453 754298560 239427210 670742578 12235305 172513136 132656463 909719857 427294507 564499666 723997467 949378933 161284040 597513297 624712428 960548929 816377906 884329916 413828212 965101292 428900796 855775792 42232595 803308359 522793728 610651272 987552557 991981017 195859232 248457262 764253151 984676831 562697175 717512820 243241635 698150538 363401443 885906030 51231860 199068017 432512273 811431998 586286589 985506948 350961166 650188924 791429208 996147149 29099452 156801950 126898090 858066322 662859484 748697235 570599041 720778289 503542645 548682212 479111194 966906772 347519360 926771985 254893714 629378382 293266732 402650431 749156734 937949744 833477406 974644679 215804947 396662869 33107189 748352643 880184219 985735246 452165983 884305435 197236318 945886065 140330890 795290198 965650853 979115942 333863135 384976173 304704222 374408799 410965593 956909731 45729432 831533169 810013953 866347935 137004141 855059514 64262851 460871060 238110710 839282045 360095785 702528059 460135487 790579395 800933738 829822471 13613661 163925596 441356850 810394012 654258136 993845590 924049983 999665466 307349597 441897673 53001012 844749791 55858638 245407398 916941481 933638142 870413023 963369098 920391021 979809613 438492744 737506305 414358078 676515035 235390053 396913109 643186769 956914110 759200919 972100189 435065169 871817375 485778884 727625871 413624933 476041547 861107432 921082214 372823578 405784602 278406093 455223242 114193541 718136316 591993374 905377319 728090244 772832350 63069368 938087832 19968626 279614228 104065997 890210098 174815511 629619913 396808416 685702753 721401264 815629453 510950095 615611925 156763221 162643028 547832491 672621797 213684685 714539400 859915071 991599534 580259330 895203429 597798724 663485389 389496945 801424244 684040173 872329046 453550461 864697393 495844677 692186864 996575972 997413210 2977981 844453232 594401252 946135746 111619295 756000219 546165525 996865973 224781998 666787117 67402687 579790490 534592443 594433200 234155251 692429204 701593909 760553837 181591185 616972467 654154824 891997290 437735531 514641853 196371806 248436697 877006701 931143143 361491087 767788251 552269409 888235501 314817654 764402584 450471209 486753625 945737603 980856282 196914861 322006706 20121445 861858941 445258788 518389706 465086211 986849217 452788318 744349799 941973674 988588254 315835020 812799673 312686585 322200205 723643826 947428095 712913493 809567259 869987628 968183327 634644823 796107913 139550657 803188742 641692526 719534905 850626271 976791161 672739448 829873244 951870060 971649866 509176059 996280420 823883725 856189485 265654332 596431458 997311005 999853020 743757471 944964367 436636079 631328758 719925840 846621043 860034357 931655570 21221083 592329793 256471680 344818889 690411819 739287971 94403017 198329032 937507431 947562753 960017446 962886140 587359135 904122855 531474367 896885904 790807043 799594906 531116854 981311461 279410634 472422570 975656199 988365837 975622036 988121139 718883035 816288512 35550742 857483157 124130300 492669911 616434275 792991322 674384278 914784256 520033461 690134794 297230454 964656315 156915485 890106088 942979908 996510695 401804285 884785103 649885197 746087933 45211859 411819552 151230451 389100757 514294864 671186366 159852751 275946253 135074876 517571181 317731411 333039047 988255523 992357518 351938549 897507158 293607494 362654540 174607791 265758893 787399035 812623355 258091809 868508690 673079570 992820518 758943609 905184710 959979421 972542798 41883369 792382516 229076350 569886594 126894471 387481930 336543395 705041379 271783441 374094111 424896663 723475539 355648869 566124283 728584775 737664537 724551575 860814540 514655759 795559108 27113071 227466323 370565115 560961189 520918417 644685320 563523947 841319076 246852927 524578178 549988504 902641417 401198367 628613139 419115198 938092054 934116519 999105315 72570317 827775701 538748175 877253483 848939491 939610282 312628143 619348293 904048293 989203359 287331273 373624258 526344358 811362155 480238149 746404743 959273206 962873331 352349909 643490969 435950487 745216631 389084357 489211273 712296471 779275151 985617873 988813751 661974476 724795446 179063397 268719483 646733133 813111409 913190775 920308435 960219671 997205513 863830169 902452331 494694467 780839260 265604053 766602961 732660210 908187895 310527170 534990801 62087387 604847256 763877201 884082739 941405265 942808537 152549828 529098402 631158753 949234278 684708070 729886641 206466617 641301191 814007686 986690804 214489037 783947049 415461271 684408031 220255771 680752134 902030609 990501381 637613800 809055390 177160143 534389745 456707550 977720287 962870731 981609628 566404772 603811181 884439690 936704972 345478036 474657900 530695064 563327650 14071665 22882590 384424434 757663546 996261886 997712099 426131955 601668964 442819327 504892507 762260373 794095350 741975111 829317488 798075800 841103843 25465504 699772700 706517450 951991232 156953061 464459624 186819987 730735646 974956489 989283723 870141207 913032163 527361628 915556690 674984252 688577240 931754186 989450071 707465116 764698716 277323215 881640759 765348964 893263825 550428085 933349191 279435555 761739786 281480700 799696455 292187897 331387717 423211951 763019059 671816560 965655813 220584208 986368172 513500868 668116483 960432936 984160218 253464559 908418040 722164324 979099203 363290656 842311132 695336188 898834479 316826932 564605082 167711375 862660067 522189523 818895012 607066862 676735333 747021161 791073810 996861864 997093777 421009264 980415153 606170478 980074524 490941177 632733808 649362036 853232840 98681217 314948332 968617842 979215560 434310433 592372596 893563418 913378643 617017727 977600375 20418766 661075437 949936694 979587714 317951413 564309395 988530277 990616096 568417568 585449592 437516038 439174898 353982950 498542663 814232375 906556240 104960906 206189159 876287646 976442159 836311801 976307586 544052177 867238009 415414666 547635833 138016009 226746035 536285293 673074055 880820928 993624812 618907804 922740057 435143320 508501109 709817930 804147182 255238882 596121343 201801256 868056226 126466634 675672646 154770635 324616436 382862271 809863515 741248305 856667864 975205897 979526277 192480526 748420331 64087360 83808653 604441507 937800653 118568463 311271506 424332889 517040052 41507862 216514009 218311052 358721825 385383042 455579841 588076074 683658787 960398134 984478266 170784280 393790564 884959778 980181367 551494091 788410376 754962052 824254192 842601141 862172975 375585804 398003689 119384797 158767359 379677516 907134423 464771085 998132103 168416920 923925941 646154755 686258415 382069908 661905424 976580184 990833581 756437673 968035844 743656907 899022279 426806122 429812271 759432069 896373744 407300527 725726586 319460443 522506010 113805326 392561796 827579620 986568437 960785316 979294461 528984173 794152427 445606835 518563513 624550519 656141254 508731027 973692924 659802843 914289761 503701766 915707994 463530937 817136444 882359404 890596582 861017260 882274966 670605544 694862869 162951769 502197112 471072167 942954032 265491952 651711909 481889704 926038035 424330417 433911085 508871191 987161196 39453419 597602080 729310453 898306888 431978860 439316388 847354837 876955248 343802233 621744388 808523008 956610106 765128251 842425254 568269709 587499668 15232209 601052037 115922398 823738379 558642083 645986284 609329544 875082359 164588323 301693677 103832142 874383832 645383994 919905403 465271901 985289861 90507321 413768685 393740025 983518305 682240712 862137170 100254283 826090526 808940471 863500236 906439241 994296279 119257353 625349499 69442448 623482514 488270265 571681401 13150883 969265989 195435777 745804318 572842815 804752341 846845984 992525577 260064169 583980299 184711987 337350404 731854455 753737444 465893364 844095129 514968910 938516393 3710959 552260592 72622511 336564176 969994095 976255255 386049663 914461198 37567324 981749937 160631664 384436506 647095668 651368231 859871967 886201672 851522864 981432789 939556868 970107446 711701279 888135100 911628867 925648111 450340638 982503998 151688707 207507253 665353250 766054675 245085371 366162053 861664458 989087318 883358565 959748660 781438270 946915133 298768833 886438475 924313126 977697439 719014333 962500247 858420621 936461665 803591461 964695793 607337104 646999480 577905711 769867108 284280906 970604064 767510128 846208855 868187758 918744965 998259204 998902418 707072508 707868035 202819201 694269012 342818501 990176616 72915254 410334641 771591938 971949408 967365288 969782397 300069416 533687757 651574116 757430004 807385951 854219347 528920234 835474291 54817823 774024024 991665037 999919938 574598597 734717549 452051982 475877108 165747583 454515054 59895713 748256214 506061673 534403834 294770626 398516597 554923331 988217538 997719587 999228672 181992630 451834816 925533504 930186575 465707263 490241097 907930804 914611879 589625595 964521346 505792702 791244534 379835759 826438804 71308860 127618629 997465754 998873298 784769767 838135128 767565950 974650962 851602676 921622628 567302218 784718531 175297198 838634020 120264816 174887451 614342862 747877199 497606594 920740194 547025652 814309108 848068601 887046044 531573772 907829305 189048819 484179784 959614031 991603362 268261755 900564139 894190571 972677365 49362585 502080130 57124406 325551492 103461870 396752181 31259226 701568647 56544128 983755654 463171105 610299837 97635568 672596291 609849150 859164279 328040454 536714652 917971045 932391205 453206702 753312292 805406289 979275842 236146989 504030717 68408763 705207626 654283506 779869010 162973850 174842620 151208519 900830595 90407477 352404250 244302748 417161677 413951024 834038097 108161581 726348791 982821864 989927819 334618751 980735884 766442691 932928863 893334593 897171334 712338265 715569698 216256267 605242891 312438585 871741016 886156480 956627282 629002798 839957656 627804923 758422783 20246603 295756612 317439129 342718430 938323010 978012556 863727489 962502100 690896352 813397307 25662475 198925782 8339574 411272703 677798269 687398184 735374364 887285915 779391715 965519016 178392606 395765552 535533277 743191645 889747425 932166987 964624464 980189632 293439574 339511147 647750656 716871331 84251126 794015208 177435451 330200392 935814653 977372463 741078181 849690671 424905907 509663180 23079527 377245182 845450566 983568112 854704885 858296599 174818786 773837938 995544075 997804588 789814774 903090004 124462346 795158757 897576807 955725091 807899050 874780691 253757788 275805751 239793144 925991155 612295099 799381896 768881830 943940399 648265294 784462236 444467000 699073329 11226168 327966245 508054295 942708452 910603396 976448310 778765608 926587291 175820285 814786780 264363407 323379056 382377957 538595775 236202539 875639803 868117856 980909610 658346070 699256658 306532155 616085057 588923826 675335081 240132836 693481269 987337153 991793534 378142845 664975252 307971718 718033042 455053964 617548422 186998782 527376554 205456664 906677887 818494324 881763599 86873023 197278426 444333171 625128757 442115712 631658642 723902805 871095914 782602422 817186616 197792518 248236030 591425711 922946821 120658944 620516816 328585866 714776218 810040096 893382819 454118690 654955424 806962907 933786579 328243664 395591136 158873105 802810925 637130268 972942041 163830141 333639497 497209621 753348306 660833602 809662613 203881929 759564649 296176182 349728190 570698748 575932681 163746976 315348401 931239919 994741954 219129738 370954113 475126854 827702292 160535477 593170474 887833121 971574189 52093230 697716685 67077865 402891253 11140488 25806790 92459221 495776629 44642897 595163588 352420891 438096422 35004895 923992787 649267376 739509921 577355973 999598569 255643047 404024914 179898119 451172691 568537000 716009751 607168268 814604200 941982670 998405023 467610277 508676618 521273301 541784632 493255310 657439800 882826475 889087257 949544862 968756876 444533885 938095535 308216284 747385852 44570250 977780924 304548635 660688899 643455089 782329909 578016764 614154952 257011323 621557431 582428484 966291423 363386307 710288719 990851391 996816310 863491210 870610776 718980295 730936802 814054167 989041286 355737568 914146386 841031583 986187162 485043882 899029149 825854245 906929377 767918692 885848530 397940162 480028110 577309388 592150545 326860252 340485229 25662369 171097154 962251187 979445719 233367525 300306294 179327069 960300203 882211433 943407679 416762230 572299364 458461589 978259598 378870480 754357790 464232829 541380511 814840075 954152875 523432669 528548126 434085934 747450944 467779512 781938638 723455916 758072962 166485040 782412335 128393900 632262179 770239324 996597597 257223128 655804629 124053137 153256427 147099779 626852433 985175601 986354439 649818077 734826293 397637560 660231604 591714697 608225019 496422602 963744508 60192624 438750071 176382128 835018241 419282692 789393445 559274486 736186503 880921729 897009355 303151047 439160746 658354853 714249084 544193056 996227546 73226139 457478695 522154706 717377910 353582065 882625887 349799721 599315438 899794531 985624878 830454224 958489596 689022556 941139399 213039135 792010175 136998459 141093270 704685111 793942142 839704946 839889201 563523776 998493815 462708 718457878 25394223 248284222 666352192 962106109 589692207 911035427 782297899 836300727 107134220 394229822 427948628 671970014 580262395 610878511 400514558 552369449 890697435 972278467 127718682 932293727 577879413 954184574 341325910 908801467 847084921 864711630 730529191 737920611 433450596 994965291 259925256 934149828 956181548 969164219 14667773 80804969 815489684 854506179 56177754 946725456 238549098 432014130 280149166 328199288 400255937 421931141 263788305 992369567 260260403 949539377 943046627 989304157 234828389 737174742 923569132 938528291 587655286 633355217 149467280 735924292 316271480 732787969 965927702 980737843 172749020 481614394 880213874 991320501 451589018 767462604 292621612 346382185 108317067 124756606 940096495 968482683 824460147 876790766 824352762 962059771 534651258 989260081 943296321 944319889 826511219 859849846 337135090 469129567 673887970 869196501 934980742 948767160 815740347 922154971 23989815 536156969 401086246 861308813 978807979 998541969 953597183 967952420 978391753 979698062 286204556 688105119 366897953 529330355 5338451 113694799 779320256 962450656 581827973 732150399 367141847 962275648 621585763 764863188 893433117 996619011 470669229 650127919 967500935 973712447 416697642 639320677 161836850 644114741 788252647 826750717 677524145 958762796 475470838 787643472 117134840 120402966 67577463 603655102 720440527 953058907 389080521 560900093 368083938 842469902 187313603 805705689 795074686 883972962 889868433 959855254 691434121 887094472 100545681 974314897 721881912 967586038 814191646 920974103 578936701 632812782 156189265 499763492 334061370 409144097 161927480 441327719 276485095 988458692 181921343 314324349 103419998 895096805 591125774 880454440 900842449 997971737 26897866 340450173 537893939 819911597 380946989 658070453 469453570 574216444 151773344 410451306 418108225 549937316 35325182 889807677 820141184 851172132 429844693 943993751 201508044 791078665 746619846 920005704 885290124 954940852 530477556 705174849 887826422 971104813 755315519 896591061 158646070 711276244 7581347 374194207 322456379 663134634 210575448 476784605 96809278 279792825 255331642 919040552 765696676 919716669 772857706 877862717 714807135 860721796 312519283 797197477 338270446 386141383 523525800 655447975 585799092 784010845 752432856 899141139 782069698 798707349 170411350 756362327 548006849 617538454 739639782 864076086 844094958 925713424 606184395 886708221 361287338 458865308 750301296 972790985 807080561 971330929 759495923 880094913 299774890 881753921 393018513 538937011 871615210 936933974 360591641 654221759 212985704 693207160 173717551 723891694 155811792 221641072 904249166 989578352 549715210 985419835 503741447 679916468 903104078 994055707 119025965 157745555 842358588 867960328 671752017 749925172 603771518 670837338 734332319 847333546 647718035 993843832 905690607 966398245 268484281 540875697 87390328 250785639 689244691 917225298 635767924 911640630 161604498 755409604 497577862 669792005 630694358 856636034 362102121 705791928 366598534 641632559 113087366 230893077 630821134 690009754 514342985 572641840 200839036 923053209 501491172 524258387 742440551 770237190 70072685 324378054 257892810 995443417 750544515 927910458 848709234 945859898 576397769 895288722 324386819 579376173 193201265 508537791 292242839 724391190 185782780 474011144 126657971 868628914 629328368 711867992 998943161 999375034 164984189 557993551 16282473 389806675 985805918 996518201 462402252 978871061 47010753 517178728 546817689 636387899 652347447 958683059 350673145 514603727 848077712 987550789 216406134 624458214 438673924 993095640 6662137 85546507 920339996 967823423 467897835 851167285 934608773 981927327 952316765 995635494 353324845 619838211 745729347 986707613 360761914 942210663 973210895 986908060 368326484 648976047 82221593 503879397 968829658 981020440 109909121 395667779 959477194 989518232 750919756 758386754 13939727 592102849 270159415 793588548 911926586 951813800 158008784 680778905 717036656 939646308 939817266 954061176 341880670 410358968 482549953 929203482 866252152 978749042 71111719 582996176 968702393 981750616 608214897 803820650 603181997 618031012 633876131 670362452 462740374 938018481 623435083 695114652 824696531 963787750 940931275 968687480 254700812 973960355 535512787 626640134 528861062 535805678 96172938 797027307 512717523 770810835 175532402 886331060 814275119 856076071 921014575 928704848 461810361 573033388 515999393 771464037 504765786 609309488 925812069 938025267 294771100 661317955 667224043 850686347 389226638 600350052 938000472 995530487 324242267 901423569 354967171 944084004 836181972 977459965 411309471 530943571 406405603 818272752 254860147 923099574 860379929 948440852 452474073 862248361 576440199 684149308 759876480 761368735 127325299 600542735 367164494 966727366 680224155 917785675 737223810 766076190 638194359 998566411 713561856 828665359 432236473 819744783 851693866 931145031 769001023 769799611 77320105 206109075 604306107 756631614 601614297 875995068 541336287 614406718 524777639 525013595 435723196 588799393 4345348 297977865 168622329 655946371 306371918 642531863 592720134 946590724 702811193 987355233 818884894 943209127 590786768 962982270 355477135 373102006 173380479 539301323 383631370 829452277 395301954 818872111 335259871 589985969 465728367 780860639 269678494 632968965 213035590 728197941 733644034 854029416 18085953 557351124 855145266 979654626 682432063 733729086 555316898 685621779 786066466 885225436 287642465 889220705 675398411 848249618 307187476 809380882 235864614 470648669 291243407 587911266 207428265 369457956 855174649 996820629 24600417 486631473 367652019 716619614 582957420 640231519 702959606 971670268 562339927 673206124 761170718 951950557 590982414 982196015 943256199 967809038 310340390 832403560 853733681 929139255 292763259 953251469 863018477 966520712 185230584 520088142 398261585 881411589 554161954 703585872 765354656 890193977 639816550 953013818 117181286 582358416 68830634 308787386 752428958 801889620 227263760 579313864 509393933 582504242 707968982 966570991 502308656 933300749 789274095 945008790 454504875 570183134 856911024 977799018 62857078 147119517 203214265 806703162 336388453 695944311 670288367 908106926 793211212 948445294 886027015 944957457 372781857 776728381 93767927 172842315 266894722 452827399 131318932 200111789 105970552 606335674 875829881 981291947 266018629 550203086 443353435 514142277 523172941 919183883 841120188 873799611 460074018 852927174 525543151 596436199 33844818 477816448 166539686 620280369 62962275 917108783 576658676 927637854 924990969 956171991 274177529 804366282 780147658 900004470 176273711 291259809 476606490 758811081 411156027 963585845 418618496 589914527 494852231 571697080 263551872 464886482 637481742 866949776 186002311 261830509 916947536 936848825 337480668 351875544 876871305 977625333 812586291 905442703 238842544 677762666 691141146 952392735 729963915 951926496 111432622 749668858 59403361 224133272 832869360 954114622 444925417 958387047 40534473 943045842 900159894 909851204 843594861 943427203 334911197 747269323 206369556 214932387 469011053 572333136 661317988 680899752 267294993 692990741 873942920 923283174 972622454 997285661 167710808 879502859 588392097 696983172 996077821 998835119 216237421 782509119 200353396 590541879 933617364 971842338 793567917 940153743 524895213 773880468 936729704 964335973 195341347 548552884 845053172 876869886 813412118 988642450 814555451 963483788 982993388 995836041 766378778 947866360 101073097 805203831 965769125 985303797 380522797 630267795 886481606 892981654 943378191 957445472 765902997 892108345 47407245 540248203 480755852 602139330 630031587 956537321 690469560 923342655 275494370 855927375 243678232 384918892 133164 176173731 140650279 248116126 46591390 914109701 950920156 999719059 89131207 280573694 136033642 223094980 272443615 515459484 170413663 651095082 213310552 417494109 623628558 751297238 786265308 807832035 773542395 786418554 954900087 959980069 199088563 813262948 74113836 244629239 548713042 787102876 264375786 816724086 673968639 874640275 361749350 569006899 169458588 427876384 283924542 386610015 222623398 436020325 388961976 594772751 602238541 755390398 310873657 496646589 478046202 734924391 562499303 571830483 168569424 977716765 387035432 881702110 818908370 830844750 183542659 489157214 880166618 915854522 739499909 961607906 735688440 789271800 674798936 735556192 874745733 944030882 824884708 979909261 997598481 999381783 326870699 355861163 208518599 272623827 643157394 921519292 219442954 916899510 283521098 841573809 676086959 953564239 973947686 982348892 349736356 987362446 949408348 985303256 238214544 725840077 696371794 825858892 41140235 292620829 720911518 997699621 623556162 755276235 948970066 977812600 721572624 740138335 914611715 996228102 349110771 849385056 505961947 952933853 856480167 905580675 656513084 712837823 485624302 813802201 56890022 604935182 51808132 829477437 436912259 874085434 248828745 988551848 442561068 838480331 574597954 804268104 763809725 832063278 90946886 878641854 459967649 530337084 670382723 859066415 575573607 710721299 648972929 727856972 484967928 679979100 145693810 967412698 544414518 943816178 235231101 913635881 83067796 446462218 175168005 291609344 492050461 707268507 870352698 962310379 305232642 668186966 541591029 896623847 505366783 859196222 931237136 981717593 724281113 916819864 508209639 593389212 135524167 612814366 621263296 972493054 904839900 992260041 205251215 687163095 572188938 729142235 674860001 807243375 767659716 820447019 189902216 367923055 357581349 762095460 908374372 974114742 705391916 904050487 792601133 815141021 594887886 757196253 365614164 908231434 65238226 199921180 669883448 939974338 433628915 697449794 436789611 554097905 420577897 914525738 49774825 288990541 108528634 838506901 33621695 326728550 269966774 923743988 200630060 866611419 294710762 849171539 299559692 723314480 769013165 925749643 606278881 619863738 400620806 944816546 669752444 855846738 829912048 841348693 358909455 571067985 347614003 499689301 517427159 831512498 729182256 771643255 887180176 920255740 264716046 291021062 827779197 959366403 623707634 630531286 85111232 261558217 160190508 927274433 90204558 717109296 20491094 40713026 700436595 804233075 513674817 518240608 583124727 715983811 410009419 647464098 236884133 534325464 38187668 986609634 2922387 57159512 677064553 726451502 656753067 685719160 115105199 450396140 698831767 746106660 82839711 388169650 528822672 800399776 196418774 780898114 843016171 943859746 26273404 317737544 563007804 919066135 959301341 994553837 235837575 840813732 102275451 524662795 916885686 954430009 149361921 670293745 483708417 936958531 161693415 590788390 23709801 123660280 329297592 834619016 342545262 953105302 223222849 494492811 656704671 721000731 904466270 952055333 935200477 957498916 438335239 860092148 246862430 813618877 954879940 973604667 161707896 797316078 950941917 996655118 227179230 248177168 504341484 835802697 609138709 850091043 975338921 993593611 293616494 893431451 621253585 892880197 814217494 929171647 832078875 857362914 287772039 477008278 585648896 769879848 289116142 349513572 611555062 742360602 196222006 879653642 485055392 620753071 242470739 830088617 271064032 540077948 100042044 873852078 517254730 782321669 373619953 468364565 163424577 709752716 300983993 362363668 148146149 472583219 34318101 230463712 383459602 578037797 515505713 522829850 755999547 762515810 737556745 803831511 964004925 999616640 849625788 909856838 487861355 545869969 970318584 976887954 989062044 991540177 667668028 837733422 827988763 905267505 226264548 227073817 593698193 663043690 183865695 609552268 227470470 779074074 669874122 880460747 319220987 771798172 227932644 844457684 484695521 668986434 247124612 508361373 1065740 517951298 781636841 944010594 241795825 628550465 462495691 583007343 790433397 795927417 173189182 336790217 331359642 847610946 956441663 961412776 367725408 620316624 560544793 783061668 683680490 791212581 918796449 940850365 980689967 980740245 684412799 812656435 926093505 996683842 748621993 885799490 735016833 893969920 331798415 528486498 891151382 943198967 418434700 465358391 142229579 866397060 21772626 132635320 781643918 952929178 217461463 705956362 146737104 483658834 753824288 908262410 416078625 772846240 480458192 831479263 505144358 981088510 57004338 568357722 526349042 947054337 164529183 865296372 700449499 852253466 897300142 980196789 415979015 711567786 637516766 643817389 130860002 378872701 401610474 987461928 749290495 959589734 945253327 952762980 30768297 238798911 668194865 726775697 461175322 683822715 983732066 985768679 822988199 843256330 31589309 818566839 5283263 267294411 639286444 898204746 563764675 991822244 707963107 864716951 305178176 430284603 386791745 977621417 396545538 954571390 490463727 850141137 556910592 617275959 240423893 447326726 188980840 825797635 978884246 995243800 829278779 865339606 386568029 478526244 267987812 281412089 470468901 491122185 739127078 883027074 653748255 946198176 19436265 426354553 13690730 656898043 830865184 928621320 18862709 991293950 938339803 959588607 422856324 611620573 746979473 956639803 387564925 695023419 83955761 810904141 648043492 758695335 125696166 714626774 209964491 974827602 993169248 997960443 673680646 832159457 151912759 581664801 876985208 882519672 343182849 975343069 650210006 924191540 625312180 644147827 494769168 710548811 132041419 853619639 196574403 717677588 569831579 630720644 942261211 974208721 744819202 851181570 776658353 871742994 427046301 601938410 714071042 873498026 723802997 977347926 381866712 798319140 641864762 905070460 353308715 863763741 207317488 487665687 623146442 992476095 816878239 836885151 765163753 914486341 736892868 999296482 644439140 925737576 739715331 807577786 789204339 870151794 322782286 552609586 287113193 513546982 457221748 670667983 64685433 193076094 21080990 68573767 727811339 947466020 120672508 574586288 525439059 615938615 499446360 944274583 962417580 984261231 727392159 875215650 3100005 200457388 894459771 949641391 317807349 776373927 708340176 893422574 126971361 396501608 840579053 979101029 811418353 937118506 314016989 944436932 737709745 857039649 545663692 740953176 27837109 171798537 724545796 735325673 989836814 998795542 682428969 985026978 909426871 917629896 749595745 908201549 761533952 852072409 534086165 536254735 56650778 616982610 191494592 741433053 321192412 884179282 721729738 907773434 942478094 946781516 723211347 962855454 925028822 935007603 641758703 949594271 835952205 945269359 389134703 474158687 792234111 903992354 712071465 907735439 521929805 536544784 400650227 832389030 811552525 830386453 286126935 321184987 421349757 841429595 597321613 864847457 183484923 734461306 81868890 282830567 992134546 992632577 271619919 309580540 572195177 577501128 38357352 708038491 946416212 968827620 787996120 840689992 932516308 942251870 498520567 654982009 738079001 835922407 668102183 748897163 670993947 671009844 558781641 748794365 696420713 973780779 870729123 875750846 932762372 982598191 724083356 951223537 24529936 151753833 931880098 994958804 165400719 310981418 964560381 983709878 475597227 630680726 447745274 720864121 974693320 989459637 186418788 920448524 666142607 771169085 744812801 977441684 504583535 767329074 297829690 913402513 606402271 719339186 918495152 930308635 793969631 929446991 187923420 787018380 862915952 923669408 769594427 772231018 347722101 890267919 683438841 803603432 35174581 425081862 984835775 994092598 242903653 974618029 689454524 904467987 677830062 891281890 294754407 939472532 518415989 919131748 699409147 996061503 743010734 795641074 475877481 948170689 27525368 449793631 162716388 677183288 595197881 950661773 74514396 338775259 930411781 990445959 24466041 195324282 969102605 981066021 421738051 634488178 776191927 879326448 59356612 985554269 164173043 350230818 19593872 857397323 100143039 457837876 709900838 740081139 698870567 830165819 284839974 358355622 369075810 591477445 693028052 696432881 683686983 986765999 474424763 867132440 702593520 939829650 733223999 851431229 8455213 631824005 393975612 743432146 316988990 928930145 415168050 968834038 943778597 981408955 702007888 940752614 382225260 524695689 145685243 996076229 342694579 769756468 698976435 866322737 567533742 991675969 967883738 990643772 895180076 904140174 133977088 811157065 107922984 833044228 267246682 422226128 175685651 545800894 325224759 466775765 775638477 988113576 244076075 335318926 335620658 679632396 852762362 892248967 666372799 888399083 388592833 991190926 649205563 678624852 605172957 958693713 816942685 855818800 605221960 895265346 388963630 523828359 381553503 843596131 20157929 804381325 160534213 984045157 897619964 976761144 371539520 861750144 540247165 787815233 918291153 955521091 670390221 716073784 329559866 552502599 206316796 380294909 23922421 569138582 12107633 180704188 321617463 566498854 812673804 871461998 741314049 886487121 629441730 815300672 98576941 385129006 71114550 380694715 463489695 533330512 354676716 769128267 120822799 240405893 869990516 945476450 644691010 940223049 52954913 192119636 871477254 973402921 858594931 985279897 959828095 980486576 916242404 948150192 624104526 880507653 854488144 990995817 686378210 828781650 330116897 714635809 206997920 326555856 572175712 873456467 485821935 665468268 249285008 527365135 725240573 826392847 444002533 706716392 61158745 972593714 981978991 983054416 488820047 562372186 845652217 954875337 263351210 291972760 372873431 426283300 471964657 717926058 60785356 688587018 321084838 355035260 134182771 830049517 730673957 891328246 19807640 193805247 985316217 989547618 796450192 897113203 767641927 999978803 478918367 682084151 874434746 933684080 819693579 878357306 333227653 855417546 580008012 627426653 819623491 933644507 712319581 744366375 767738121 826466334 350037591 986182614 281836459 745155977 887255099 922085202 652057571 966260920 526279881 610416313 696592090 985682343 626534821 689236127 89583248 658440304 681130643 855976509 115400448 190711141 447251732 944113062 701675543 724416753 449444089 808560599 19954921 714675376 64771770 443433153 417436904 981477129 630101779 824207703 730535278 751112005 579051135 628317800 512612375 569436085 683856008 746043002 148622146 538348777 999866964 999889056 81759301 442437629 109499033 553054622 94714033 984476276 145529194 718852197 602387069 961912639 935107745 999456251 342370330 578119662 41456152 615581728 106317696 755064489 77782390 623423851 648873456 960258984 266203445 544197466 231202474 822901269 650958479 953890122 27465409 83528816 189969697 221970774 709448993 804079293 810381883 909947778 567987461 862743345 370297307 467730294 922427369 961116281 100886071 604727775 271483797 295130268 842050083 862704128 463183111 513826757 975305455 991967280 381069638 504961900 723771136 869636323 279868941 352082877 512914993 856825332 882446124 916585654 201272509 459183547 112675690 806969194 218957774 660844089 214506545 573652306 223891041 704284671 900386040 936293178 156788723 198746089 432447905 697596310 702155938 878522820 33312298 945107713 432444796 526425562 708588617 881425612 428669925 964799507 965926468 987466950 537490507 564626964 304451553 789163163 982279538 992833016 358155884 927996975 311619950 337937290 987374484 990245143 72380522 985991594 781589867 960178305 749125891 938122185 103578480 938454309 575594591 653859814 903869121 909196379 951693849 955928335 887536861 896671126 848545749 974269815 372633441 469325932 608190570 658684920 792137617 875967979 138698920 441871602 151973390 856932021 698783262 753402578 332952615 568067546 836447620 939786157 159299865 378124477 533586055 839961189 823301669 850088605 522035170 784228803 468764015 967624892 65702180 661490477 23980000 700898921 961766254 977256477 179652643 888737450 402887016 849687910 771527612 884467691 79600688 196164858 515759560 600011864 21529069 129549802 787477568 859513432 258806912 373181284 325894565 646171332 635969492 914918687 798796913 815998766 407973782 545868017 715398511 870754790 556647484 819644715 349988672 930250086 762258189 807239673 977338558 978481268 523661460 700970615 381768500 887508559 457827087 792464755 401179738 732660998 9891375 770390057 456017624 620696154 177530411 459671763 742014952 805181922 353945554 451291115 362632225 880620560 152130751 378020600 971702203 976471694 406492946 893812333 859876998 913006917 333430589 476096328 709868421 762191179 535169048 557705390 698084663 777716714 628675811 750305094 590943252 901952014 425877666 783819104 55360590 161389622 848617722 874774942 257887019 311844972 26685282 918705304 340907991 500608595 943284156 953834831 355839738 619254947 157835966 779864953 16606174 361663299 617332378 801287942 778649592 834229345 246278360 393261233 294340652 345907950 855961868 972351927 122839888 196084219 749265907 953081298 274489474 286772592 608404221 847511627 959785090 996690070 840671997 973986565 971373150 980894586 27538666 413393218 510462478 707914639 901344862 926929893 490837358 564166322 166290435 923762457 590603009 653634943 387122084 660350435 696278083 870502759 762942762 881791628 507173098 852545101 630851093 952513286 88457646 839392273 519218667 863438883 335305608 691304126 710767663 957349898 143814528 680484112 212367003 251928392 436331294 872786460 414418862 474012964 26583788 200195228 116393207 612868054 388443892 851137260 787774780 807955085 344816519 520751083 953976983 966264118 307752021 499566846 682522553 925049739 799006788 859027918 436243655 980824343 491260105 979335618 949151082 982085751 655575178 918673683 679787198 753149003 494205848 667357303 875008932 961042771 247517095 483557840 114489265 964711481 5737527 266919669 546772750 648915736 166146137 506750126 381760430 466079199 228900998 954724498 480581265 765685430 972005926 994391878 869658935 922809455 241988915 665026629 202485665 598114170 641695850 825351807 853985918 937864208 847233976 867286031 102742974 191033373 29989672 548618961 729409802 923758464 684615911 928609761 265610712 416319754 108881677 939688291 575118623 901040023 201631966 679155064 596962996 961649065 555871695 869100953 477645605 996191865 17376938 892828856 104421969 565598335 350775129 564808691 622340741 967059301 773755507 959359069 931587063 940752383 513755177 969205755 917297104 926632432 877134678 962487934 965647885 976208511 335168605 381540941 914698993 973702164 475677363 660618755 163195828 874148201 33232542 595599582 757897297 839870984 219500238 385307382 524483145 623560321 455243244 793195888 801523977 929633557 425661173 713316940 94106192 638609850 117594826 217511824 682951924 772533989 70577550 707072595 337351936 669343620 438872053 716580862 986153975 998845843 705127211 821360120 339036585 754790518 486128298 896103812 726290052 968912758 639261845 819118194 341969175 960069676 632786685 744434166 498210743 881103857 352343550 759236511 375342848 563676330 535606329 829098276 811768591 862636561 840966954 852884573 287031678 537988180 150743129 223731409 344406386 726225227 670997636 925447109 235889360 866767384 341186710 721148286 227911257 328511450 657859755 890232386 12973749 979226920 37015599 699821238 942854719 944965346 192116373 297447864 485619289 742524470 873239169 909459778 908369946 990427752 705810171 940643054 1000472 243834274 908305425 967731299 850923697 991510407 757812544 850305461 483162966 815279762 825165134 908963812 722706496 998698764 863257181 973906516 76262957 420699139 623427839 655695171 551809252 562511622 227107166 901506426 103549686 760891340 756871023 779372847 442402335 912627181 384306095 481034615 513058596 679895048 231815337 349205008 415994236 998040657 218917991 223415462 274780975 594788233 961091796 973514129 971784862 973228810 696907295 751362208 837553541 971264711 655092799 680155016 51581800 725422950 401484532 929530828 820131558 896687546 953746593 996964345 972193325 986197463 494240618 859636150 814371799 876787583 294572187 550804070 823314731 902939868 428327774 943218924 37685713 965545812 19115510 540404088 560268645 983038536 785672221 857400279 935620691 994264920 750943557 996281557 35764786 231248544 375404071 392102846 302669598 875023614 189529155 978696859 735658325 846260335 529405660 967392507 276305386 525777598 537090471 740574839 197557227 621293593 225284914 902503813 735379605 915042314 649023622 864721573 287387 892671328 686696883 837234147 35844066 578170673 668822434 918238817 509285646 971373546 920632116 969217259 269802398 603449695 20646385 569006607 986959156 993936031 146122981 429280786 719494482 818409776 918319500 978803995 934433488 994165912 477125856 877149731 259818159 507751121 76806753 779453962 877537981 883371746 631783019 666939280 501540484 840501926 793134432 834054149 896244694 994515071 686158115 887531412 689124705 876202081 966869454 987267948 756028543 913052252 951398658 992947556 560763387 781844031 749668911 951343975 783766500 941085742 61783850 268199819 945636939 996991448 562338153 948659213 103469376 539660980 312006219 846123746 541848680 560947861 560767971 634564691 490092838 864788096 967965892 988995692 934194634 995225943 736784356 892485063 45688485 513835282 400530323 948582011 719012841 986192193 78755335 500416954 267281912 872681180 649157318 968956744 723496670 879494376 566251756 870072452 100972509 244891349 44545963 810037133 437853062 621654312 266819285 493069765 760005546 783946105 383859943 715785284 35791069 97625787 992295427 996057804 355600648 643805068 640682555 962196524 259804426 579564624 371662415 895869223 213509786 227363801 138406755 358051044 496628744 708742062 504051674 686468566 315962108 903004788 837562404 878399991 374637149 925898794 553789424 899456935 514133627 882772753 358192099 491246118 783195868 807080727 834365835 969646329 470410654 619011736 907826216 999657114 554314247 558302851 968375552 971868282 215012178 718162391 325123992 836053492 588949507 917336146 82971944 657563052 209303425 424467471 405983034 419689750 475946581 948262545 518256692 609835329 666360725 672967168 196687249 833108194 893381165 976980523 990772028 995824652 664363544 936281268 24022891 915448310 130437715 565823533 491978962 906758485 167496574 323278997 12927240 131129868 943099281 962230948 134008016 274793511 464688680 720595730 878711888 956969263 873086721 903812669 811087617 859451959 815303383 929862809 809370414 937590410 533965467 839829769 632863304 720246658 72998274 495368197 852530570 855324577 966870334 967560024 144543975 884698335 413896001 498111300 18239233 207046846 528265320 588617073 454592545 606515724 309929238 382456951 965833339 975810845 512120047 693305762 932776659 944145065 873782210 911426547 62607482 650174764 267783497 389784317 458982468 726174339 552516120 691174843 475731613 914746219 327073057 563027567 383821078 424483653 888650262 981204294 790556155 876014435 812107527 937793511 644294508 719118839 117001175 329838919 768415578 886820457 143959893 425779037 28771805 970632634 319445097 495437901 968821121 984883038 735155249 928413602 169668277 650505708 778948080 919565222 711107953 750222027 587611156 885848301 875898600 961323703 165717042 602697050 54964459 531922668 481887283 847567583 879180829 966154926 968233400 976006823 995776396 997563103 192564276 239950813 637394788 986698142 888826114 897052819 966705995 978087915 579127285 606750709 994318901 999842953 455337111 485540120 940656338 941653698 299841122 804425829 509250791 841799731 480599273 974774704 661630534 898885705 227940476 230125484 634782629 756751312 12773744 904124309 27676630 464279600 311526243 931601099 988250791 994654537 485775909 784245567 179360262 462778614 524792127 547994704 745280367 753862954 833128408 944737202 499497745 960372821 373899232 644949071 54860254 775997914 791816327 826245857 742278388 939181783 330595132 703542216 817708088 986654971 564456815 832011967 497540942 587063958 199424945 800171549 761305959 956556162 111003965 447196302 725443863 978318750 998659882 999596324 165767330 914948798 300532177 602534960 770654205 912267862 971660879 972684240 42080048 903556988 582448309 887231969 820081213 873297509 291434851 504448397 793964759 833625379 643319655 797336184 415152149 988176114 44487956 988929685 789499500 812640995 302211107 699940506 450724913 596250539 241477700 742981781 413172758 895029333 125947421 757022411 186810399 336379636 137969869 148868242 629369573 650938634 327188666 800956104 425481092 645161287 800248288 885822541 233559458 317669485 382843833 521193483 427553590 539101307 706955855 984406307 790764894 911715954 579204345 801759539 878315492 972902102 238046187 755561633 819456922 846113378 239036365 681767125 51134870 443606416 94705559 108568754 405664402 840971425 117135934 118603476 956348404 978236183 761567347 985609407 164075130 617752900 505359763 602667659 627672292 763429331 280096824 706414381 537920436 698990132 394503687 479463054 702001716 757509852 647541921 924991435 126833926 721427781 142167853 792542954 578570360 965873060 400164317 703196512 979478441 995725855 318940750 398001220 267673602 385835056 890898845 953152777 675984590 928147417 504372391 699379442 814759288 909419333 773575311 889408580 899953073 990508111 630746167 916423277 391148523 975986733 131537053 636302015 459658869 503596026 441851549 842203228 520728106 909737237 283723834 396410052 763211749 889745856 706056726 887801135 920077517 983073644 697405231 950073884 128712654 629208634 651530031 930834761 53327078 543340626 993674023 997195157 418468438 444563047 87004368 539736088 72906162 591035498 248477666 487458146 60308984 231336417 75164173 822603690 841771718 966296092 369783817 733209111 320567282 826150766 799553283 951311768 758593750 824322853 950426474 981784786 724641403 999846378 493766783 881554278 339358429 935474105 813924315 824665147 762924783 805861840 154447814 941122548 169571929 909672163 342837630 880672375 604536693 678574656 335880385 474584441 579023619 699712772 76753576 654995127 998653183 999209533 139723066 937767058 602544425 784121813 887098011 993111796 577212296 819400050 560333385 671359903 352165793 826524770 151528140 383291869 287609018 443196681 982385105 983081919 462686979 859955549 1764024 444856449 379564059 843776828 855073027 926297956 69419036 226748734 599474784 784381092 453832451 813455791 409412287 427195109 589511021 697594050 873491906 909583541 399289142 749322395 303058425 600074854 483972344 942355554 673391348 689861919 636221343 907496849 635164435 711714681 198633295 830187953 119665821 826197157 380872738 906336306 343679304 558837735 399598379 466178063 245989986 937376388 641506157 722828117 903940108 987663439 852306283 860032000 381417037 397907739 295822350 907458440 15677482 469399107 633213097 973626314 228023113 594397238 274714909 670386338 559213951 642236605 932158491 965005534 822444061 971368135 222694886 391300005 294674565 489646850 612012393 979501978 409999085 902910953 632053808 779435303 118306309 609299737 605283220 991525768 65611534 670504989 903430841 982359908 430393487 808303019 745299982 780429164 105435143 709843476 523472314 888341697 260555405 897889638 851549875 966190439 144131401 716644848 736854581 856407994 315139097 708992721 312327800 650018090 906609094 941978918 93608021 292545052 584885991 817797297 414409090 725172053 35722110 917135243 254020371 435336330 838887119 843373185 569931777 833412947 780462864 830833829 26247821 753193701 922880839 987931122 226390511 346494543 344516444 982221603 418471724 678624417 223409252 355897065 77310297 274516262 158349268 822729702 667003980 814937586 56005072 948828203 534533179 816688853 922152925 941595623 825945321 846227686 424147363 496318395 964730858 980049626 105006794 529646736 117382353 192394124 322833392 780993650 218805917 370856501 375252280 726163794 632918492 843848609 718232616 980379143 61994098 114723897 875482541 901907777 567585018 600537158 278735363 660973825 908975702 945972427 856567347 983571298 310631552 525332408 994919622 998256761 205245998 959348562 774498656 950843464 761440179 939260193 78657832 802923617 426434209 930551652 557593412 661280540 375635 173497975 419326060 521487096 539840023 740127727 740325484 937672193 674714100 970668211 932476797 992402332 919244647 950294514 175411985 564947470 120871282 459974553 863019288 962457379 788270307 920655142 677946323 927480811 423546273 488542491 738861672 896147216 50630475 696503754 962079986 997831578 268844521 571308060 97185179 125441874 638981549 683867316 825891327 869396790 721450672 768016093 820237025 880752125 347506144 666963908 718323397 787102094 481414286 818984870 570500626 673977832 501525840 667713543 41517621 455637724 993593146 998635646 358773755 726871540 206552664 346498715 596611655 981486405 96604302 884985346 483639939 654954267 888911639 908997509 295731072 906568190 733154128 779880778 97421520 238013217 777373351 982865942 473862007 820276590 958656984 987218824 438890389 880698833 580112751 833466712 269331602 699210586 423507774 571125836 403886890 875799972 947289982 951507481 85865980 975627714 243446424 270813984 1740112 111447094 411368921 430438842 415782186 777084700 298801458 305258618 867523278 931651602 251423468 539479756 828062167 844156299 704826912 841625867 24560573 842995917 475312026 597902659 495878135 553958011 391402931 605644453 603969519 918844481 728292728 883473704 467660884 982536072 465937122 699072236 74076663 564836220 74499805 255880083 443575286 652108418 307574969 665235771 934277869 946018508 652978614 706848871 131958097 709659105 847530772 867833328 987063575 999822851 430474043 860565722 311900903 523211775 998788194 999036449 129899894 475979089 676463681 760428597 655921172 865406458 522853440 595878721 7318142 417366632 798653790 975248795 9827000 512471594 786978442 949668500 22520287 147086730 691931809 807886358 21975502 241791052 587684912 686698634 887423874 989239123 36326871 777244576 910896443 911166829 82282654 876028648 58045154 229497543 804621890 994172013 72002842 389814831 11271721 26077750 609299400 824790978 490088880 570822663 267881076 974085612 485758591 500613405 143761582 804618608 129934986 459264577 134974318 436038444 444684666 798605123 540314231 717793778 189761984 262685232 417893641 566388427 346833916 493987195 461642703 583849753 144870768 871077684 461046535 736406417 572626140 646031539 927687093 961204989 648174027 828997587 189929349 629714398 480190764 604366077 790388195 872836882 878561785 974000253 647753626 900949787 137461763 646864626 901755346 947100821 974768044 991231483 304990279 909623652 986284948 994564801 866394822 965611053 923358295 958347408 253293076 728657220 351639341 962941017 937555249 944652222 24448251 293213490 839968055 881525211 105418720 923626555 377252563 617100350 779080580 873635972 200341257 705690297 51512997 143331302 409709878 806333949 73881344 518773212 529980980 981957709 107329927 923016433 128069482 144017141 431241494 588091404 178442817 379105299 424295334 888237736 866801537 916825405 976632569 983172364 157874910 788129970 59983456 676648415 238362677 408186816 43757299 774793963 816633147 972142279 475151928 967465111 219261211 244734866 571874626 794188996 819314707 872485886 134110078 443842343 146353687 271665405 48476200 164130427 473343734 671889588 871752514 946136799 484913114 520910487 780775667 799932168 299088736 875862504 70275765 620159660 375058811 439798330 46431065 418762677 408610067 980117834 608179831 880078369 218783765 555160805 557122365 654583677 944997724 955253517 880019459 971545523 303550519 579892647 95926416 581206650 49294775 154555853 982864703 987569059 478047374 645933512 787086712 967258675 450303116 893788047 347998876 944129345 2177124 540248260 95253211 208394488 354220932 958480313 119079744 522277204 801604875 807102930 740439814 958917746 526878383 569716705 612556148 763603776 150723762 552455633 410455117 510387771 720314449 817382605 727964163 960716831 342125859 989006797 956737987 987070356 846550390 860905476 279090164 696656259 970284771 982955641 639628027 682634535 210166558 550037324 184146089 989025572 140940107 735871500 362637751 917787019 534574367 660752401 271995083 636376006 23165912 109434189 174051941 255532002 475394153 718709521 808603041 876341590 410431245 982126389 263052105 838919884 387307270 402155940 844932121 902139168 475602805 699626136 156245405 882559213 116204785 503749335 856122641 872525496 20063725 350056093 643068056 992198837 965653070 986317071 592969947 733930251 481069732 802856168 928075914 948708386 625302848 805952292 506634196 816590451 657342186 866159904 122397360 287415862 164564108 531218816 894417644 908168260 286645436 454629087 484155050 675115416 391889283 651435299 131081995 519769751 578028464 787014442 329917970 579007951 905724812 926599953 245683643 395125125 699875351 750184694 247281829 638711688 382572805 965367711 572498656 634541146 752707178 775472518 92108462 944903053 447472469 868085118 372412249 939752547 396592503 758845531 620103423 862920571 636903321 693384412 65030997 509641726 208298159 708563753 185474708 503733374 438692462 661132015 245360705 870387531 481008157 778294532 87010508 182649919 99746533 829202696 892241149 942456733 108033515 148657147 1482230 771931015 136051126 406276935 195719650 732597718 859797545 894862338 312825056 817060262 329783456 824044580 709492017 910472934 645543238 871527833 936039839 994941804 929682520 961789044 255609109 519921754 207910005 627479520 985167690 986117748 678986209 703032480 395712651 494487552 286187632 392937899 452279535 749924657 987749403 994252976 304221454 873847418 691488547 786843090 800847059 951977618 318002627 806644243 54077065 980102315 236840112 798589358 569036598 982066133 141841712 573917397 311777663 821778738 689971705 719156957 721475769 858929126 411052945 889003263 853785147 998784991 235484347 900904900 718634690 870835453 250685148 839401008 644110221 800201986 887716934 948126695 5691337 721449806 66504665 954838861 31299018 214375635 16318141 427039841 241519687 442165841 154509585 850949830 887757021 908496807 268278860 998156081 556527016 604710056 95620142 792006146 996290914 999173009 944985202 987213425 508522865 956963476 813199158 863185828 657579264 849706887 114201509 684039961 780348459 825704163 712970876 746948756 547075341 826197255 934760212 951412938 731024792 955139424 491337306 769350721 385640543 948286294 225019455 912422497 86713186 944307723 98055476 866705566 910751865 961218363 338992654 468912426 908314699 934361858 839782932 980024851 181688717 731634620 445468509 460611626 963944874 991173770 159208945 355985542 23898234 381151548 593249741 639360772 756952458 897526516 617305682 682322747 991472303 992934206 491292561 554135907 570857978 998550874 972140375 999290123 509476575 637504785 109498993 362234648 821600014 916323224 891631836 903430813 673360355 951554268 739528783 919764426 521732860 893939278 363641245 641219191 240575910 294218293 384721710 508593070 453881532 939697956 229763755 815487582 959446157 998633452 474145072 827197448 717512826 741067008 241446970 481615211 94395729 884918939 965986686 980685672 494824550 818899381 239674258 444445326 653572798 744610079 253021336 598273524 9101 47195111 712328561 746291579 764047801 880162013 102663583 234124643 837863403 975916763 245282676 879308019 207908714 938937888 673093724 733693767 878868402 918904602 309732128 488536197 786887785 931328163 911989063 936019745 570723220 957493049 722750303 777192980 330779110 455201430 269913982 806020925 596184322 839965287 761019649 878376843 182031230 476543365 415555786 459302695 105509398 286868731 746901116 998303851 276413263 702567829 552365900 559233325 223246681 795001925 557434850 802506086 758342671 766415037 348103371 605739140 65426225 762837207 875860423 962986644 413981698 639090364 512164859 956110177 804380745 865221065 69562374 479892704 231737882 782843525 296029455 894067347 89967918 240675016 227180950 434461746 282196489 832497826 926320240 948729410 978858808 987691319 274811558 685375282 398954730 589815247 799255223 848344941 932105277 940107599 203146327 685489109 900363497 951126601 553864723 834366206 50200703 694100844 524014498 764953599 817566663 905679331 934406349 997906979 266640810 889366380 39056451 511798785 621370974 814214923 966357032 974802903 624245500 828707813 785276076 872719769 392863127 841734299 691910332 960630722 21530261 468756152 293730147 324022381 613362771 929322379 485711177 557442315 260831977 558093171 725655656 866924241 181513812 863820623 544416871 979829685 58918796 202295149 774668235 839414687 78522439 966320599 461782666 711546784 862976274 963204531 178722330 684620755 373071329 439476220 74460593 361870273 367319125 664031899 423153411 644558379 687370001 710095111 181105905 704984276 192623361 807690487 579126305 891189897 745938409 844176690 79217885 608280884 352277349 595720662 972754804 974758047 648672831 899559995 718180409 906211541 331729840 600998122 887893053 979930525 515245641 816775588 249768587 643895496 492800084 814440579 974447055 977265584 605472426 959255793 884070441 955371738 550373809 896604440 7450551 432705626 300983805 493161535 340107881 434721419 232058611 354854822 631955669 706397314 836144633 910823134 324459490 783210311 809892326 915267673 437448529 763279658 427855120 843105126 632304595 789246708 405425586 675848078 167628723 316361991 636622139 714654487 46138564 653049317 68646915 388462958 23314521 640070917 790328168 869224632 146684209 732471943 789385341 974686549 502403767 559501401 861088567 916996020 166253573 184929434 442866124 965921341 40945343 772586857 59874991 92519822 465924577 538421036 665698574 720301421 159113009 298973304 42767152 526791757 238948427 675693167 471997471 804053841 751544224 807401305 743264967 991657415 296117589 426302744 19380809 269731568 863378100 897074058 93452775 949558674 620801629 737528894 962304316 978853990 587644403 776928487 718803707 743866755 990692926 991177102 692092673 983347841 956094334 961435701 648808168 791573500 101067908 935724583 899800695 928966355 769077723 905769798 119846197 367119720 120639128 877805880 377150279 603311841 136893341 657802281 760489660 865730387 879870055 991191315 744404753 844904538 794802185 822609586 296149487 754565582 580093104 781948965 649905440 906650720 457861282 681370713 775610109 938664679 121769408 897452100 156273669 358489432 710626599 983754790 131054725 837662105 453438702 728056336 512597843 558820840 900166524 973978132 279076220 557107470 629821349 653340291 342996043 796334065 955420840 969021634 437624306 575586442 487619593 943369046 5524748 983773975 153325178 839159436 805195677 899321494 793434910 954622491 271192136 762609717 780563925 886877665 533460125 991401577 478224159 501566162 711738804 849862236 515665112 597007251 806507997 892780974 646217310 732697355 566171354 939247251 689204632 950550116 169784297 826247363 595076546 757248699 200178028 613523689 323315190 708810342 873159975 970696295 746806565 846986120 129449429 475705980 690383603 906515024 332130095 983032788 26712000 734174142 18204846 691261683 210232853 446587301 18388556 228424342 194778987 839002444 169620369 748394129 601306690 777738006 749262601 785737223 316963933 826144665 372749649 416919873 246757110 355720300 650168831 803092563 357492140 637152660 537009059 718952253 421265885 569219465 124709029 676736479 259951043 558582296 276519279 729102862 98486346 516589565 31288589 923150526 502416265 512281838 807624361 912303273 680967205 711984030 232465803 858626105 623951833 633177705 855822114 910141273 86836226 229401128 980836587 981022607 734317013 908149414 895635669 942028635 761032790 999354837 34009211 658384827 782182203 897705307 944300175 998566216 545478180 720085069 837111486 968171685 494449179 531632644 272740567 618271759 590519597 651940742 210575058 973281296 328026469 547983565 338929191 388515249 154637006 339256661 137283424 452099282 901228211 993763047 839055495 857860648 765174560 810029714 66146086 910518652 319123305 344918677 401312278 568765523 186915767 545410510 120238299 932143981 120934700 601684001 549403825 634254957 186060111 476035634 48596006 294740848 289730892 634343410 651269948 903556687 600517517 808185652 464508231 468507716 226981563 237296133 776151611 930250173 889352061 998489977 585011676 737655717 255124176 868199697 847525676 924465085 309059981 542037913 475759155 544715096 392834393 844343400 361329022 742161122 248323894 651448411 28883755 471117414 420844949 896378433 825414376 888139610 240394011 739357163 707902822 787304067 549376217 674423351 360916874 932889351 493196888 661453199 59212668 188517078 132487407 404860268 237346475 682207055 679300923 700693377 215686323 468359495 365216223 694820417 31801678 285503105 152997070 254415990 854436616 932806801 470647585 913603540 698685804 805867884 574390670 925693838 320445475 876175536 945520845 957062424 902698899 938382871 800615089 940231840 13219201 193774146 240598700 574595461 749266719 995930703 339320146 958561109 914833092 981008150 879829429 959407864 482534820 578193385 559632753 907875770 602465136 794951055 882883486 951451716 29590786 892659913 154944677 920686460 471517576 961893777 406445510 978890519 233901889 450128008 317260837 364421283 330969034 451374605 326286658 668150854 707649066 761844565 716583770 982359089 177263210 638241797 67035584 683572593 293519948 729089748 197700135 442636983 510125589 873502454 627361231 835093789 874045088 925155252 689085793 931698727 457176573 662140931 624622605 678012214 871978686 878404732 994984932 996992982 57824950 802870291 782500905 842806619 460847806 874355921 959649796 970019840 607560302 872998294 566440222 694995961 988479017 997211770 335771466 994525854 826843078 846701839 661119856 699099095 708813727 983652137 624626852 863805713 873529438 931896263 200121940 920554728 616616218 854759950 968697045 997977953 473569874 636840418 149592898 816745482 826422634 979323070 961385795 967600022 717656396 983725181 781016600 959038207 150434533 177965922 454106335 729101263 623772849 882690654 670587298 863824085 694438499 886826992 542331597 595320793 84581960 235245927 652851387 732550872 656647134 861915400 205145926 858027956 73875336 789211890 242109749 642054788 405056308 839647182 9576161 631623668 770386095 960309323 923890050 967720551 982524147 992245919 176131109 813801614 638159884 978959088 23588465 546752018 675196867 926036845 436385721 440151226 81983122 640873623 554353004 886489250 35234862 418181007 151879871 350360787 440956860 712915831 201207299 790251524 960438292 986786008 711696635 871773336 398585570 977120855 660210757 937793376 357171781 390510699 279850487 728151269 159041835 440128670 52933142 888106015 21321371 746274090 119217827 498102487 82615582 925258494 158376066 415106579 875491258 904279449 304739257 732297001 972134367 983169839 153861846 997222262 973979810 975476939 774882063 995448236 357655057 995757607 286114015 430832416 966778303 995240128 227184119 502601738 464421486 893783310 861799991 896375590 214193125 673950013 488261736 874367362 43031470 512943695 560544315 873395385 355040103 659650689 834287128 994435629 458938273 558802407 172691118 235545194 456420867 770679117 53560521 614744606 163993440 830842346 295364698 865915916 96790451 636348407 764959027 854867443 850348482 891483980 79272492 345584570 989838719 996956124 70433394 341772344 306197892 898479425 682676511 997012102 581218354 963261272 942580655 996671360 179168737 348036849 447464664 564485857 784757357 890803616 272446402 987146178 334511073 517086263 94679232 384694839 863648502 977335088 456447893 577930650 668347825 786988903 419051197 818037950 555317583 859887408 506187560 743544618 270288724 882824198 454957862 722984688 64965337 711904262 89157632 274680239 780346910 998681281 902374572 965025782 63272404 857149913 224965946 386053183 735671114 987315929 634476929 663393559 797747238 990217357 833185223 942895387 449924737 912857078 153084573 463398439 893403816 989625656 888949868 949722697 145725709 386659422 429957533 771747187 519833219 740551363 758955777 940125859 842812033 862521142 647811525 743640529 302257501 435027093 568366579 693727287 226153707 535492453 647976020 780527680 615074756 946710177 984051506 997289098 424693569 825614344 774971401 918854112 344081593 470666435 7862857 381253230 893669602 945383699 751289745 881062557 894747135 904923249 194146190 554629688 512916530 602418879 699886377 880131727 336137287 357475288 812663476 824315553 353714354 937835213 278446102 393360087 202518067 666801537 175788772 354804203 573660403 743402362 38806315 731755726 656003538 787232467 735810258 931524574 434491311 835419195 619912114 729893354 893113989 964604996 635924898 710830176 653922161 713402656 297170062 530577665 891557523 927272494 472454968 966524519 418511473 885344906 182210794 850798159 403159570 750053100 927973103 946526252 842385254 999378782 510996336 719355252 229012824 597462239 785371643 913730585 846950709 934717808 116366098 357236434 792477715 845279092 211927223 989153405 628265584 867098464 212191297 941951239 283200877 629613242 20046352 226181245 961745154 965763616 224440312 473586084 407199559 665085952 165678160 579795852 34916252 240514967 215270568 444747026 125841454 937453252 224964003 381125280 943787445 950294533 303397187 413430251 926886908 993797410 702703132 958620738 671542050 985147208 91949003 326096470 97352079 619182075 601181658 627346562 359415373 767207656 217610240 436559666 974171719 977947580 195188039 752675460 404078301 429176404 457377039 809533482 587064258 942654597 342665797 841069155 364542114 387497775 226738346 866678145 397629842 787131209 712826129 824761527 988248478 998712474 181988263 651350325 821437621 883980286 877847139 878349670 679786180 816839288 451438152 711126663 142111278 811053807 79253507 399727166 309815196 585491134 420784354 535911981 466547817 712861038 539301655 943284364 693877555 960983947 209920211 417516012 666295268 718064983 830082505 867781587 606749757 932712361 681121228 805042663 406138309 433286432 890124993 906583380 127376133 397663436 345493991 827381239 230001535 888202526 147335160 172761489 824095317 939005073 641640887 970673871 325478113 391839162 74019061 834865825 875405930 942735366 94239858 750647238 130243639 394651040 709105550 990277827 408304488 710067756 98292410 221450989 870961925 974287872 239000652 734804324 549193655 728067827 35857185 795959903 547417860 870772086 254114720 466087727 550608461 968674999 813502283 949886567 737582793 767870566 524075578 532445735 596265448 962952922 644182671 708337056 215788027 289284683 592331356 640587762 925496757 986164755 81451179 204281445 696538019 790274981 200651938 744632684 289737724 704641047 973385545 997495577 873258253 989943064 649552578 712393770 465327820 680643320 344050700 504913490 691093306 928909399 18707637 63103930 59588055 511558186 375917849 772061303 709426984 878024780 55226008 522974922 816825372 824553728 111507399 569968272 448766517 929630516 64934925 250496721 532279345 973220562 908442225 963533485 758476317 846091549 626182980 987626799 625964541 674253568 946250738 992605678 615308141 791936659 909233429 997226928 56498127 931964319 41504785 863545581 556851076 764089207 846915076 969079984 342846663 691588176 907384817 952067440 469663066 522868644 575652818 974004123 806797433 819947908 732596306 939715235 249828888 770395990 288755041 543374635 518036412 702665039 576899719 890921782 853372743 954844462 615406049 889262777 832716514 835487753 190216477 704019222 214611739 554240479 744725336 981688806 649490187 971545931 188422149 461824646 360685189 545374932 808036791 930741072 976751731 979774499 952670916 959051412 408645513 487023475 962148692 971151634 352600216 895229909 31272492 178517276 114555232 483786716 793312437 999690073 160086838 186088280 95358955 947250421 996447587 999253405 702317145 737356988 178484938 229336625 713571137 933304028 118809199 255488401 273545101 610530005 9954929 19605038 291957385 968575733 883768557 955650230 208994947 545481210 813987126 942959772 190645260 685337675 159515517 633000688 124049554 957983130 861411963 960675059 890898450 988554367 425878025 780462327 744609872 938245463 880254689 891394176 233799045 381611569 767104698 828302422 623936401 856764998 169124379 554631833 345552104 751847669 237551803 679079008 991252428 992697063 461632744 524523523 394317149 474320678 305745602 708617577 369286491 941525042 925520081 981856198 680290216 955175873 809205498 978668608 501478296 666237263 55678968 550345669 213841324 359314371 602787461 943630555 887310735 968281816 753151857 813532290 210401484 219509032 766622546 879683013 978014498 995649792 329576451 885257233 152483619 870412464 959443913 998653984 334227463 650171679 782427490 890933800 651527538 771515358 811606781 954445042 204887207 224607307 304431689 304577518 738702965 885638388 795928575 840723453 496943537 695978666 459943384 875586544 779965851 810472505 865429985 870098047 897255276 963400274 172820481 454735083 638013340 820387166 524159148 815456762 202311368 767579209 895246155 997987789 595719137 719633185 663977499 773425498 820092218 868059805 239197923 259017300 826358983 953386861 112378771 945871165 840692913 874201671 639031465 986585361 928892715 993174437 847372169 868607503 913656111 991432744 446006367 667337979 52225737 375135840 164943804 782042556 956093165 956771385 974543673 994565054 169079928 371470030 924066933 929171241 757824595 994062311 931656366 963354131 849668559 983674139 657330767 699739519 440797187 578588280 467743088 758453730 207589787 823330832 870731114 935548082 130872082 704603843 877736894 929894108 670004683 962127829 765626669 772446453 44607312 491373302 174367227 366266787 424488945 996960081 70338532 982651669 796524220 882745466 567460191 949812093 220289961 336462611 593406949 757456714 817293252 993358800 892487689 928829283 699847916 805179304 743706115 859382463 938826169 961087735 781681166 881134655 739123301 785530243 404856347 518207939 556765782 561901878 97611523 452045011 968821655 969104915 713313720 770443080 854578133 900229077 386143138 766708744 704679220 875875240 264967440 787746648 224397675 468369364 67072648 311444832 109573526 584700537 264906262 334657370 564138061 655253529 158605911 234352039 138644357 557010952 760053852 956085839 834470822 900340263 595687322 750034574 211761086 243493342 221687867 354788266 866116151 932979767 521891399 603291016 858065317 915758065 212733222 513223959 591549258 737728871 806323968 823260196 77754359 201123569 602562633 824700918 796066126 815258192 761442378 789304657 746852137 828535076 181602421 896676197 363384224 753411643 259482052 589610747 835963689 944066002 910574468 930781141 792790338 833178085 676220998 754500683 369652605 860622207 462798648 474426340 790251382 855990624 712455927 801777154 69952957 719316700 814649246 821608750 211369320 585999861 576681304 715120549 479677166 893669045 235864815 890733585 665979068 834667710 376134466 875059057 742518226 861452302 819004859 855056872 129209446 950441801 849223560 901804090 651021285 998095128 478973559 511566768 563288262 894880507 876023935 959487172 523332670 896310626 15740431 62690396 267256333 300758010 840196427 968712704 694530832 767152085 353909079 414415103 809309231 994625431 548068050 851677799 986565717 992133876 349178682 996658816 998708619 998795574 600591102 782798027 115770345 625464741 506854840 792732454 901733178 920746519 597475194 910110305 544040459 777953430 605020722 999663708 663331248 735865569 912323873 958400025 82615094 340186124 164134226 909717524 780771511 931285772 986425809 999878920 597765037 659172298 412916956 678809713 564028304 579294735 617742111 751537083 865465522 865869226 439747174 776927013 767128003 914867953 349240687 797570039 706657518 812662182 409000259 882852934 987736728 994526191 422925184 955924261 758825600 969304505 228612862 768431251 271093356 322698543 138543191 598540814 469472271 769663330 780109876 859829699 990485462 996424669 757779771 962466637 490565645 975578758 55738952 187346337 58968534 547500234 475408896 554950556 138880140 563258936 296377958 462096260 918390618 955111940 555940444 940938670 668837290 860335293 755152243 846802148 640776442 977239989 102417673 159726240 242550187 689617734 418796694 428697373 246384879 827684633 945788863 960659792 663280271 690680815 462884356 736783944 146665146 684550809 852828160 858422045 630630158 692265133 318351274 639159816 403018631 869303781 41008528 54992159 278379434 299844528 118930834 438189621 580463871 821096863 388997781 718897800 976950796 989440200 207047738 318640608 812915481 975906123 445661383 617443796 229170593 621413198 478328447 771922083 544828950 649408364 846367293 918219298 828719917 866824586 745346146 788692982 962678561 979697301 534407248 838524322 516735454 783396638 232858681 336617627 207013094 563962339 319298620 818561390 917508239 973271772 662458098 941311381 585902846 804600050 791399776 848664111 951667947 969295700 607662693 762936063 261843470 600140019 941832863 943923506 224944090 555829095 608141634 709932250 555092064 726365835 158576358 826804487 258720248 761527490 246846069 820274487 312110925 422455158 796094885 811910785 862233831 862801850 773562719 858670987 565701999 945396348 38247241 839115349 2948976 312552157 706910244 782917683 526481922 835152351 507205440 728945153 831676569 885320118 920173600 956398847 84380895 344713880 593719372 816960751 668955003 722278719 558472961 868677594 215792693 276424787 686336141 874197509 436532613 678877021 956633841 976202399 887930247 941621059 737799328 893283379 771880899 800207169 445998266 547762693 293057812 548468167 813636551 942525784 156757755 897933873 530923859 902008408 624108972 994446696 562314062 788689736 142334539 209434867 742446129 928706191 886978612 908860515 551743845 652386084 789872745 900839987 723297025 756394319 633485722 884206499 93896287 954136799 508940629 917510527 538808381 634094822 946135716 991996363 112542739 505117433 774133657 914535067 640013746 822398355 976697090 980824033 807248702 874154949 509855761 916482472 609828305 851670793 711887906 722164265 632005820 982058640 795745572 958453798 848963629 912601391 922766771 986450349 59504402 247697183 847084053 983471350 852039091 948543682 64349732 911647483 700548748 834975208 324619298 837898422 436301749 805826696 792183779 818962419 832018166 833519991 899981441 925254832 229558656 301388745 261378465 649982502 368405340 369676411 905688597 911532222 423660754 460949785 318931533 836497563 823319545 962234315 507902562 844153909 294057911 958089337 371242551 566998719 45536025 636372081 335591323 709151639 721922787 785036258 5145106 797997383 4335535 621174496 429127498 827945528 277596845 834987771 663362441 929968017 928752992 931267645 904269121 963880113 922630943 948591108 19334535 64161411 899563678 984986079 585477881 651449139 683106967 700720484 695344069 929770945 200830278 378147707 140607021 318899836 752028961 854331974 849558375 896480817 695938001 964271607 512058257 815614670 40690640 52334858 388309647 672441318 602566245 605990138 800401827 950590400 819265266 909831148 951082682 985975550 602598749 615861781 429846011 985207546 262825290 988530502 815041149 957772503 734936303 745961943 967036889 986567314 923636592 954742026 188769090 879620016 351353482 786298061 16514837 387422973 39831722 362858486 966334122 978151633 555674043 975766660 107941220 248481012 372435802 983766668 550525764 999628947 77114801 591248144 516907731 525844106 454013197 491952787 797798953 989421498 777983553 832920354 131455640 892355276 613809926 749628459 366108302 400659520 35715013 230820096 883287671 918476380 773085110 883086157 51922047 867788716 843077271 985545936 84673414 755814100 53079193 116996371 565974330 835153711 15743260 204605927 851169588 959280892 236401871 984430467 79013589 247643177 454494156 534277185 333022057 682257485 305650226 469836094 202035879 633383215 730242711 799583391 830464610 883726375 515833341 719263099 293679514 345090703 895798666 982139216 236894035 826011180 158970783 315319453 548524045 980067780 766233111 897137447 275632296 706954276 784265065 883239582 157164533 560649203 830140897 985310199 111908749 639827293 244445595 876722149 125512326 787212360 556773239 922517001 968824463 987542371 231575985 800260924 363610730 427823377 717052039 866610036 992815439 999241123 584069689 762188423 658890253 735060393 113601659 662574908 958898783 975440421 427089820 796415988 935507127 964192225 188358842 437176228 302303059 705818426 114314226 504579377 714632787 938226629 370961708 771788946 798120685 954075710 783967273 954006804 736877857 976373257 646675008 940661186 894202068 924096523 54843132 741833872 219163852 756031145 946574311 974795053 885938799 924025123 100923522 222801394 459917818 948380068 59763124 984213305 262829539 478670265 232459564 433118705 844612522 933346995 826435091 945451616 988244250 997577862 635072425 733090079 662246292 820433914 322269981 654977665 957769290 957957464 99982715 378536756 168441574 364271788 597496887 799011486 154739392 722996810 240029752 511180260 631502079 879967974 282118771 700654199 792185799 875688009 603576068 794206557 988511715 988891827 265377700 671848653 878931935 961166548 397262831 468852455 258574478 409455065 107194938 789762353 170300595 275765416 541877710 885748352 801042722 863907755 232796566 622552247 972136614 979878184 669508035 835895796 406753548 830016044 373551847 837544737 58551440 251822029 199474341 234101910 590186659 721053727 841246045 977867644 711648221 937164055 789188880 841178598 72149580 301537991 88294908 621179073 350153051 398055295 725945982 962232526 679995516 716854511 514793737 697693939 305956120 764582252 828009473 943795239 516517673 697122875 343960258 638504886 199739909 574050583 346897999 417139962 105386014 770363780 35324059 863262666 470009350 761798464 20966926 805178191 137981790 547171459 904944885 970545885 319320115 915042176 658094884 706460744 62820855 539175371 136455406 788789578 802022772 876661088 195746436 616587440 518173787 555502512 647080567 756605024 851101818 888439167 414122067 950482191 184499645 200789383 228347389 772363994 868198354 975428578 644340653 711359549 964294145 974214250 773457877 862847922 449034641 986466673 476564180 639785159 671217422 941752251 880133468 890749502 706781455 937275772 683195841 831482006 864555002 902319997 738161419 875627837 331599918 918846300 858701266 880051926 460302199 601024572 643436656 956140700 922912279 941706872 677974429 712998365 216535653 500677503 877516154 889922238 67691992 197277241 42359229 615144943 745274456 836691334 79182771 208757561 326347349 457028738 186071378 754160078 302547550 457031787 541955812 930236783 378658451 712885328 335855026 866485031 104726748 201481352 87370660 301453943 342053438 933674250 680253293 932722655 114349231 997011613 855508796 922334054 507912906 858380116 57112277 318780028 302041564 826574365 769414589 806485905 981179863 984408233 133073947 322722651 415810047 556752403 182280285 622232612 952474517 993881999 516298282 763574818 22605342 35422121 109355502 978253391 865215415 908981019 677868655 724533602 729031659 795598406 296391183 394039852 146546307 465285956 707658469 725081599 470329503 759325591 718258310 766707513 442740453 517418304 760048042 839227915 758460936 978656380 708912501 955910182 571671614 953601113 540663961 601305340 253341208 342859962 77333439 359510718 734255032 797462154 958850532 984169682 47740900 722676859 520759633 925628523 506182282 731708182 381436470 948630421 588235438 990991474 14821370 814336456 589095630 726183437 570218959 990119879 26783301 823199541 509857607 645862345 724658649 975876897 749353654 972480164 6746301 260417842 489041513 760807052 390645091 492867854 919533398 945711375 572425579 727379122 145603901 270140269 392480163 688281518 547045933 587678558 471122917 643830363 616499030 726721234 844583204 847658319 256741184 581901404 591814403 668859884 524009768 991306230 17284365 538322045 603145719 751891597 726061822 775783658 244934594 997217936 414193688 807372783 902989327 928597181 27390343 506944358 554773092 906947022 326154035 510897453 981404254 991969994 884897833 977095915 631627652 868219939 345516864 355598130 610293546 885257924 26421962 489671710 109997542 137890185 246486113 552631113 389783137 794716297 40088443 238835209 119838256 884212921 814409165 923311611 20341550 132527580 940060173 994341283 562493527 969528934 716199871 906237244 752063704 931095167 237762985 513966601 69900457 958114051 207748183 401469596 944243711 950863324 206351306 334709902 336056525 738716211 448913656 450415915 312833372 421793564 427306324 898849949 307405158 313613825 123498203 786315069 667465742 997497840 29910957 323608061 91009050 760588202 930257829 964252267 786468231 912215147 127301849 359405613 778810925 897489269 486161571 559597588 662596438 927799540 435830774 917043501 926068120 949156831 109150705 882330231 771917066 901414527 41203328 495158002 449375642 569643079 271562797 704459006 141520089 571820319 844128879 946389867 193685758 756076194 244948228 773045532 576891987 974922395 134937085 838248559 266885988 358358980 590305770 701238360 910216242 917568267 991533980 994252846 314622815 388542253 611754265 645224198 728769742 901007551 998009619 998432578 906459883 958972166 295020671 633604156 143915006 929664004 117105255 423590144 927586671 960919178 200424779 845653845 640382835 840131021 466235674 639191254 360351215 420682739 326753224 811026523 564657657 944685246 592161326 659546680 836001642 882644309 564073793 917684631 942328260 972259779 138946787 862930561 967236146 992474846 135377612 374209036 424277486 887798451 3829364 177978586 137530736 921494874 321973707 821586740 986455585 996013158 849304794 879643331 664513076 913680961 847387294 894087176 922929698 945811745 846815545 945404674 610456077 945527440 24361435 446247057 137335915 681048738 593344282 988742497 518543966 556086614 162724599 281828540 256231873 786891246 377090868 956158083 5783455 239893108 697198422 773836221 968173010 975285108 87826588 135999059 941926341 990222381 39313741 665431136 313153584 571380395 295114999 818494551 720881662 778343102 254935255 259876937 430472917 899279858 465668237 545411959 154257162 397022978 186130 73475229 180626309 923024235 354118365 847563920 675343132 757216212 796162442 843931428 284910947 598999754 953497953 956751784 763224646 838265808 320856540 572166485 931589089 976750970 819542542 929149577 446384127 916105087 771936236 998921488 480276596 955534941 796527995 942109721 396486934 925224367 300461390 320092553 743075103 981146822 335639160 651475675 787962433 982973716 425643983 512706209 421047813 531738928 569462446 967039326 156295334 727859309 252594081 509103408 222949473 272362298 470936312 766628839 875617861 921923784 429895912 819394623 479288983 898796498 885779475 893671046 620206145 878508142 907790834 965657870 94883238 426731187 142042570 620539730 404259792 935242442 749286305 912418442 486136564 629280900 951534864 990712109 251464354 528943989 955823617 971456130 957987573 989931840 737461498 768689979 748030346 792359725 308762489 728820250 195618325 421869780 611304419 703168970 936144573 982525257 597000631 785925671 320884917 378802981 900005645 900884111 588080881 635670337 152236876 416220812 836557223 925984013 276255926 685300457 790225549 948097860 801013656 914236170 556496062 633531992 766775539 870314172 220708574 826807922 920927221 928353342 591923006 855335375 468629942 636539769 895541566 931944792 629032708 709366883 910440622 995935133 375200058 901379885 288682420 589224035 207378478 597734719 397203234 573065154 573102412 974292528 349575662 503558810 769105946 786111477 463981169 489066156 606484508 851707946 303445716 481689828 842591326 934616097 565842499 902507023 761378458 966322501 167718801 465111635 511864930 828566163 968565663 993651962 221221345 548460174 640261529 783302043 244580136 382848975 684901149 722034585 352236153 699543609 336757671 549022377 518979595 741048837 684601654 987841418 394103381 995747818 666696192 886691079 711012632 843680598 750520699 765538805 859091487 920078636 31072711 388206206 440808386 907147025 390878558 463934790 645333155 900955613 754224816 775750761 563304556 947360751 783720184 835390941 820866561 994618723 254886036 689784151 480222233 656156258 28978603 985811895 136223673 855321769 556878087 569691820 949625280 962261317 146437177 179715176 635884126 859839533 942381122 950594676 183174714 501948980 485419293 923636104 508532511 593052824 643671100 864426761 948238091 984723501 893884107 955658391 750700139 953787534 972018830 993802532 693756366 737219759 635684574 658491784 810662724 816027143 16858657 170179779 367932344 594297461 98839405 181991647 943767277 975496372 244493201 801307559 630376872 711159134 675956991 956314588 906635825 937016432 632827711 849579322 903833428 955211862 358259619 603212345 668212079 802345298 637278976 805525608 270478475 332254859 99562267 493008959 66009350 320982086 329648021 418572307 433393523 972119927 474860137 967783083 645995401 857317598 110175894 168246416 351343964 489086491 290523454 511890982 493045325 999546011 322557348 968280267 828988866 855859779 799616274 951267476 596180150 826365540 146583353 770580987 102822825 368891710 786786925 940422443 184784486 604080217 428317515 987667679 494491334 856605001 734162917 910195065 224189007 532203129 705666447 899226019 541415111 585130093 798541314 950505146 570328162 898075874 874389593 998046514 139497758 152677612 776119532 816144884 785798643 891198846 997421265 997982775 860020774 881339865 375725452 873017627 163783652 650874781 674036268 812040107 155009222 328026354 55963751 690751444 762771890 947564284 557812817 623952501 259839678 649592310 622782586 860965069 779039953 855286052 641233842 669078386 566926610 878690965 1312770 473390855 39715666 383899905 672273173 886547614 977501382 983751546 766574319 810237086 3818104 839510825 145340942 479652618 253976975 381834938 50936667 622692836 439063722 951529600 742247638 772969805 73348961 814883792 166829627 653909242 520801369 966924432 352886137 363257063 995227606 995563427 912384350 920141247 329873248 578322092 611238608 757518083 582948543 664797873 780006514 946195800 468304079 503625318 97731967 555676616 921820630 996435065 609142324 844348382 892924486 956812805 675872311 873688367 81670053 371622349 232548846 796532239 662868025 979985134 483939762 665835743 703577371 911379647 39153517 511001633 613326906 648129054 175973904 903312944 283832213 860505631 921006669 990900838 447700203 659069105 539902079 837262608 8768548 335096686 175035079 829740051 128245290 564343126 819732408 848612759 18018109 209602880 767506384 785053965 906168803 968605741 751930019 800163468 217098692 795165617 499735286 962223695 274734048 788724967 924154170 961686939 160341253 186884264 895014609 983894367 584512186 635580388 707115347 815882554 79862659 799080609 212557541 233124891 39424967 417018266 238729001 363079782 458691111 762381255 194356917 379944606 805342390 889326952 656565430 782990323 373736081 969151747 395700303 480478164 10108056 230285136 573276565 790374609 489140315 659223865 489293670 605081357 720682629 783676309 723296368 892539275 133791210 984795137 914092160 956312455 65767335 286472995 929877590 965035039 552648284 611291635 980663243 996998464 759083978 889380446 472254736 931381505 652635103 740326015 828723091 926410500 29182013 852361225 964637333 977360827 619035600 991795126 835870620 983343716 510256301 652846553 778548817 958033521 992064859 997517271 959076325 972307752 168286450 805646450 965817406 994765928 493385171 532193650 101714167 353024342 457353373 740844637 661987709 737569613 708037999 845264895 421710144 981726517 549215597 857544787 524354933 661770571 728597851 881986129 199071145 661950846 632220196 888454863 44703573 360359466 30454333 569123347 240615896 950901439 480650541 590978038 153855608 769916324 767703066 834938526 94258720 725069172 908684846 969602621 639827590 824195830 138853890 713098422 195354581 911866893 718026140 728721048 524851562 833144091 776621828 803316967 31152611 798748397 852055470 865416957 910107557 938038477 778959319 911328373 803522847 981676808 617981971 772888776 24197845 736828679 634118804 782320950 178658888 521825560 214064327 392781783 244798539 779057416 916326359 957377617 684215298 957921508 976859029 997706350 295283747 822651992 96148440 339775082 475860849 712359328 791117624 840088038 159871705 979330289 252169291 856029518 981195024 993070171 231005036 676054411 338157188 494127832 577590565 969261307 292047459 810978125 433018092 460899854 972940789 978415063 710825248 923647350 229395787 329295111 534835014 956562109 432500958 905667431 351358112 632532061 352774544 772217214 937214397 968741517 555177438 740002670 628426856 955560931 692125584 793259298 530643538 746513337 696717395 918914096 322024736 483562849 499052745 852170308 425776705 560458161 990522992 995308645 596318294 669362453 733141991 815061469 642459558 838603073 522131617 943253741 481994 570512659 583360184 832174191 26928306 333766403 98755449 747987169 279036170 980889154 418981480 497368735 132596371 412975404 471239485 815883044 852421896 913184215 894088952 912383143 991026225 995350129 329396296 983430963 33220581 799157078 132115048 781846884 233337164 783462782 666124393 799873935 55410138 618607711 660035951 841953887 435520190 680124888 378852255 872651023 77814075 573351198 801936305 988400321 599876729 798847542 533240505 535407498 766498707 856827695 29336057 834425278 545379292 551577850 910688339 917592059 215441184 263714046 276539297 959367131 119469075 867470597 662469512 719159673 615777224 637418863 897316514 926761480 159434318 163974666 455665121 832041920 236189398 673773226 383769264 986992989 268391349 678466906 314708062 400510655 782599138 849225025 621669538 870346127 41314042 149408253 121874087 286193418 442066937 700589257 508071951 599468416 314953463 320688955 493189946 682532745 434401811 911132611 438738867 977908008 981870628 983011180 71373691 474287826 268087002 586295795 457352538 531069936 295922074 309891789 37129246 343718104 351903650 848964498 566221442 675410968 260760982 747724103 85520815 407660498 792395767 997061189 392617696 698094792 34231843 286366574 640363497 728476366 132031338 396067905 119245182 754115577 271443255 755938208 550719564 825172476 467815798 898904098 211146623 596975397 894206269 935306326 282202861 539696630 874013783 876266478 376408899 941199175 923013153 991473998 109904753 852482499 840676676 948700731 786042491 834616540 560598705 598141817 440497991 684090887 108589324 278185450 799415822 867344660 408245849 543018741 230601609 721774058 879964070 937824670 780214567 784876896 580586240 908547506 460901307 882576239 503378651 708867659 652415338 869652996 789927116 812871073 354977201 675852520 898760349 933453103 512046830 884926448 501725906 795066380 586376243 687738375 277887726 634493644 796060122 802863617 515502231 538264079 874331011 924826123 699703116 981046112 794958814 821287821 54161799 285472559 751276940 774553052 62612378 478139587 31422336 373605471 848771294 857972800 992339609 994371799 97817277 840508394 896743440 928137616 953452433 968835082 639695379 864844567 434534701 975707501 29453888 249958926 937080203 973324832 594650745 850227391 267861389 343281978 87903102 843000764 863654003 915485164 63755082 276781598 902780679 979790708 850814989 931100102 868025245 918272182 266003921 874721138 532814655 685702454 538334038 834626310 677776216 756311215 212984134 504342022 749800479 871558661 141445226 827443748 206817303 754329883 323300131 985401311 793009431 944197305 328730752 516003456 113843896 693732672 546916721 769636232 967502780 975837727 307751009 929991976 216298305 922975970 929018293 970913740 718393684 962573640 608954846 983383119 295626273 326510473 881143220 892564400 689562906 764475895 736072180 819624330 241767291 873080481 995118252 996298247 202253414 649978072 180961876 266155963 248754002 646533578 809658750 837381455 334934654 616396879 990481570 994855543 833040156 919559994 414805273 549588640 79409368 964913563 569838472 797478969 610277252 636796462 960496333 962556806 678502664 970553279 835024667 856119237 24898120 398092242 431315029 781178729 812159925 976598055 645163679 907941384 880755814 928577964 217279936 302246272 997160418 997510476 736068654 748060872 34099364 964571706 689681585 898257163 890283076 892272572 726227259 781953752 712734449 825355256 772638207 924607703 478874751 674620713 197739923 661409125 326613920 631248775 592854741 665049832 431143283 735602338 714768500 871984327 995073162 997871705 16780976 983814299 406628653 805959200 474773989 660757657 329499920 668898177 527500271 665419726 511801844 915036791 136164579 601723256 366286170 483831388 657957512 916423113 373942355 787268592 651173778 973148502 30384325 736745637 661780709 977472142 842807667 943809476 721962792 987864914 457816973 496205980 136421338 457157241 446319418 494685572 890380586 986571692 344305786 603505875 77281410 758523558 558156081 840707599 217547838 533524216 747488158 895480709 260464864 343485736 194691507 216723378 529847341 874106438 450638581 787391416 227041233 536247140 556805519 987852382 781273482 968094797 160118454 545062107 762289802 985500118 636207233 745662185 778673191 840994184 360171775 654258260 105889226 251391815 735065464 928719713 91726622 952025494 313147019 918891907 276709413 551537280 881033948 912410459 183047284 259967405 73426335 230894432 153110155 794408341 887378474 971762435 455984749 924265007 675167447 875717967 372954845 447123802 745435076 917719536 861071605 893518684 162596808 493042213 193337226 956493784 180812522 528375003 28699654 964467333 461417660 860723398 441228454 501253374 909867724 977940635 442964229 444102020 772275543 775637427 351291569 405664202 802435421 880328712 940789978 962215215 482879308 836200334 480577316 672402188 262698189 691934544 71873393 244081926 255547045 825882233 983984163 987816947 807196376 891570219 700829023 802259684 980232291 986936315 76186616 779765748 487492789 569324575 814026151 930864215 82693899 271276538 78968670 448242523 89514462 150617072 73959225 154894879 433430731 836855257 444276719 680691524 497118659 850394556 704599629 769837417 23318757 498937505 889644244 979923962 365514954 549175231 888904260 936398377 800469149 983437388 122895998 395926180 553342985 752018910 75392928 678005438 115495268 246950655 506099784 612524496 828699412 949312486 965215014 984298710 894476093 998181810 842840769 885096867 660994894 763505179 594764110 980544782 438225887 462517878 877548838 901893003 76484106 574758686 545623760 833598548 154297739 627671204 587153322 710382614 181258542 609289465 992227522 998073607 917566708 939477642 216390936 757135777 11295406 201209709 814877653 840616596 290127106 951802590 387428088 640446198 842246412 938706909 934009562 975801284 453819342 563632351 220745278 765277621 219973569 222359293 768521809 846126067 924581766 930106388 424422760 667208004 847337329 958694044 460949711 665925092 278674129 784836222 629456484 884120302 271613793 609694437 218458135 410123180 67345969 153683238 203862273 894888502 283326491 449082555 684813315 711072726 494503111 562754128 76669480 423087457 73533080 625223397 17374672 364607332 939987948 975592105 272990716 322538289 763311455 771726637 567514880 720652581 538565296 730803910 729756064 818498987 643193891 912817802 11967744 754602383 154098836 442973549 52379429 920971895 629375952 716830043 592052281 956586506 294638961 898531227 474140256 971233584 989344939 989702860 75583880 677386763 136492838 232504632 524851210 931410275 675878620 765727966 452468092 739429360 896847372 946246387 202606194 347256319 726922593 833096242 955714386 986258007 453505358 933319051 487231919 942064847 400713798 682650377 690851120 796145977 531747823 733733490 386282314 861260527 487077930 864271444 674098417 862392932 131625144 338750200 887463374 946207649 533445942 608848018 678865715 945390008 965955871 998382480 766232702 817170246 18509951 963011070 577455188 708770267 254691683 770429841 61057900 253936717 68661866 289905232 343433902 602032659 922257087 979959569 600603834 602263442 407682493 963833857 105530121 238531241 467387475 822489160 90869610 198401154 785595535 976677619 859799780 934693281 222014277 447814089 966740011 984763762 328383736 897864992 292719444 698110967 594903712 982928853 469905599 920334390 769527094 784118458 300280551 887769232 392890793 860428408 668582889 778783152 629057123 977492678 104897445 512671670 254484093 492325012 373908743 822274134 910410183 986901210 999690884 999935728 185476774 565064866 193293811 842901814 872082472 897738120 671379618 828854271 40509632 897394563 746530564 794188334 572034813 916950347 865414039 933528578 161523499 573591847 744425909 940569858 458988940 541882141 660929885 767824568 824005041 880330332 590775843 866122540 982361590 992871932 318829044 603322556 202219137 218053847 827636792 860654252 944659653 965481313 19082376 797074605 568249385 699313856 905089717 934981756 309017010 740516032 981081200 984911185 172363202 921992129 382199935 696397590 986988403 995190254 204591120 484555054 495239491 950617412 947816805 994108328 10038101 484824950 960339462 991838273 319715457 490184793 495347131 530152640 215899939 877154766 678926417 936288430 943652624 988492634 68519546 276299946 599423987 611153949 477371140 701210748 826201124 905032468 949359692 958802350 607618594 851823208 302439331 482235841 665592098 848777763 536848183 943409443 939318479 943877624 783235992 855343185 73975154 528529410 935945872 976134345 554805557 580304846 698945963 900585282 175313481 586965776 341238822 476476334 204390140 906711641 291268122 366832945 133420096 644499547 264241902 688113343 257582859 885211266 69559322 331437058 843565237 970905194 504845670 810063384 893194633 979574686 877228837 891061617 207542767 405971077 78934313 742320375 364632347 966350694 791357397 874866484 691668485 774192826 439998947 997190386 807261112 812299269 456256360 480171318 868707192 953627287 162449694 257954194 742392857 959647281 512277813 894407537 770532896 787170382 714368518 971137487 914209235 924965796 511197864 560696593 642798943 940060250 976147197 986606246 110750137 287225176 442026949 452524866 532604145 715622707 421501382 501547701 28477170 811732802 590349451 710902235 710817825 750460676 810656958 894251174 145017249 383903697 77783590 983190411 532847658 896899433 635500030 831653592 505491145 642905425 110852210 902692823 375533713 514366927 178697686 408154539 211099266 883836887 971686149 983739016 313218638 743503399 114032112 602299672 820785393 880030185 760223531 976080621 401916501 660113428 363736295 959589906 798192034 802553953 885574552 950864428 148446749 754199924 136443743 710117902 516937902 921130428 193921188 250360646 920819740 949713433 815791466 970315763 778793173 932046598 830894068 949228579 367158847 884076509 847038056 919861569 688779888 960445861 114717426 738398447 472083409 535113972 486958139 971765047 52148470 188392283 2124000 41104322 947673031 965843027 832145565 852544465 582136790 739444516 547317804 802553132 16380090 102598927 965649666 986816479 127654968 238659575 918953635 953550729 306872687 576813592 826449833 849012203 30460383 78273342 313901832 923258677 742702746 829399235 939868178 994186178 158203149 981590486 872881647 923414590 348648098 673046191 36249764 426875372 433022104 907551197 285829249 419945995 583991019 971688709 236751490 433367358 538592665 825741753 13040534 630626190 711229535 749741865 5119545 401103149 771365133 781885599 743196768 949864799 136302331 579648428 243423563 259060540 33719510 350130976 530444497 744052327 560248790 868004480 201962932 308305584 378761028 392904426 316580046 443343241 378980332 726208816 104607231 261300078 552297440 903895446 533812941 858623039 850134284 949368563 71235036 349001342 348687913 934558436 505064673 587941074 634952744 705427471 341482468 655489494 759982259 960563721 765583230 933394796 876324798 961702131 743629944 826181323 489027317 609031404 388339078 659080322 571101984 850231190 771845958 843805880 921311188 934643685 557482601 794566283 218391547 667874889 543287237 675031451 250170174 580836931 772180021 900427244 48389007 246283227 984682522 987997301 476407979 566348414 748996411 845657049 635427642 785702844 297768565 938328704 446819844 580206666 751723766 895969588 330598403 857049685 841099661 844993848 885128289 904251202 441917653 491859332 864078019 959958915 95115118 604679307 417962972 610490274 967776026 984468050 868503917 918782114 565000057 801644424 348257617 709770415 859610178 920475686 823008612 853594953 316065659 435326385 314034962 889631795 194084800 837415062 443117643 467289913 763313903 980784319 320288254 985287815 280044089 426260095 672557267 851651663 97185765 235091241 958429666 982345530 752677059 838957001 426161802 430765130 684564651 754882989 356049172 799743890 417563033 656476042 494012522 853367684 663371320 983133585 364560327 605957406 991306839 998429514 104356540 409812137 395800027 893958138 25538569 179101243 721161297 825467425 578334491 787022417 643051084 735087041 407933708 661379013 782242475 905611990 495172905 652950746 362804484 693746628 643603731 999020283 951093749 960050829 87154081 585810122 429968163 463175236 603887510 916832948 792700443 971417853 72060355 160725319 772169732 832712761 762224299 839807894 55843882 430999478 701938410 796641893 711262525 750507984 439929584 869341073 713595298 777510090 368243077 845668782 535098078 874413222 472644753 716863749 224109644 515151251 486692482 660222326 581486329 955860311 96306930 187024380 450894491 993505360 255626769 595392261 295600221 494516048 254199668 566800972 362396429 610102326 613977657 756207993 386769877 449700557 572178454 680605964 32411858 350606128 344450623 759095478 905184546 947061308 884798324 992866922 275461155 488894098 647867316 721920376 5199291 927383501 21576079 937498563 98434813 199583496 409605295 622256196 219222216 918283940 8353588 659703728 826920971 889498125 558460736 837324722 636123421 647467404 122366495 860555571 917046299 949847602 567210796 637846272 522949595 992507053 873476071 880624909 782215344 878854570 321250592 869889827 994416258 998857160 291204203 319151607 27479970 306586834 744736912 840081676 655476840 761283128 991590360 994952149 738205910 880896057 903085099 978074437 617536397 968082314 263342791 982898291 166192402 483686509 22505078 470289770 762611769 888191444 462166298 489065967 401211336 693439490 339274149 525440751 662490019 841488452 363073664 388612145 382470528 546360834 371558586 955701077 213122523 607218116 722457753 793120535 380680753 392159231 570186041 906569588 124274716 575064095 738449858 765507466 993665776 999297231 455386263 486695134 772143901 777401824 161026383 737198865 94898156 974812288 891698217 924279107 937110726 996648293 529009928 987773096 285456075 693175162 750069290 753400852 50022547 138012961 793466024 915248553 241058783 264836363 624057047 651413092 209114954 376812687 326333932 924702735 985835889 988066448 832738665 954466049 851832495 922048660 756680611 832795566 600892479 882605276 558033708 942209634 839010828 946111599 732637452 770743298 360251336 563861345 588600550 884236340 485813015 556124298 373012434 893975279 511951583 748025950 307317022 442923263 943228922 965047345 935588748 936536177 696923174 734126650 522709896 618611456 715160878 999391397 424039644 867256675 465175800 791836546 543322240 710453956 706958406 915223163 621521478 640148586 986108743 993410796 766324121 929827168 633971497 869656960 617063273 669514512 399699316 459155925 518522983 764669812 148757384 648739515 699169188 949702541 889513494 980750588 397910755 802649410 239150452 551073093 156356220 869661182 798246286 821314144 137804720 455125658 581740923 942562823 674476505 733597207 959685603 990269033 614785865 755869157 567009204 839316433 291160694 974251252 316127368 950024098 998409303 999427081 72366089 186867603 781255192 876064723 989625561 993846735 288788560 423609852 947409775 948639752 781082450 797654634 601334535 808090278 233920111 332051837 490039453 833315989 452416350 846084897 505543963 996070533 429462506 698172314 750103160 917552611 231553694 418695812 405760706 571053002 244757486 445402414 820073664 829266404 326768818 992107062 289157619 848077570 237237381 709038026 728611206 996069496 293245346 475876701 254466348 827247635 236891985 417971284 830336621 971918192 91776094 615892559 121691716 540107427 439716737 847510394 361763890 921060717 244314741 724864562 179651857 855963719 573449809 619703321 945188482 985210561 970705326 992520558 28051638 357065301 915590787 976773108 257085031 676136752 720326803 802097016 177532145 218346312 546242090 823958752 196583896 575265003 593982447 858826482 261828735 376158763 115631347 844616961 344307069 971832637 737723516 830234753 487831768 928707695 756152051 999193960 806096991 830191053 515526876 618492362 221464300 552636698 150983775 806169891 756351448 876715152 784244034 820843650 135293616 311246086 573208453 962974237 775777765 878613905 317116137 636764410 257234315 295031694 849210547 948118690 614236846 752584212 228567710 690088133 275573628 692404719 225261931 909318220 665492383 828108975 85021752 308812299 34681662 973549446 508253586 615214955 263486457 389166172 701460427 781099025 828888563 958408394 198871090 923488366 280484206 941547747 52294413 671010703 705497607 988865101 425047469 498845766 583515977 930386297 996228645 998187428 824199514 963213142 682666153 745440590 959788203 967965258 35033273 874395121 84056267 941068217 777261025 842548743 204155142 246563770 818629923 963804180 149375702 432160096 765455938 845304914 824162852 984748966 55160625 540282830 191011464 606508936 565320128 681599650 365371787 634584780 751527146 817426327 935840366 994883220 987560397 995291785 915203485 920092262 518885380 955320694 325821503 956430919 137768594 628194970 232700057 594667589 473987000 773040233 175709791 456830480 746823938 790929455 243824922 432824217 367271258 742033759 758332906 921727405 830838116 958288799 472714272 943755658 750274377 825377033 290371419 404694020 470160614 917550006 877865559 934095126 790541003 868233859 972377389 992217629 738410412 876119717 16082340 34803340 971982759 991860549 435359546 969206698 219877234 624399845 612820923 663231435 242063559 530157421 883550290 943034018 41552377 435796831 681929713 711935743 591038423 781375404 382593103 676369839 147272430 171977222 822726741 956756211 985226419 995222769 870064658 901421539 458599860 529710268 80775792 438469188 129427092 164969776 550830206 942508449 366015661 471826860 236613704 343810793 543321971 811845454 9595006 740194897 37996855 466449547 125771700 777663495 88770483 575347206 471543332 898092296 137349013 712219641 958455028 992713408 68562478 435304208 937260422 968659470 873548191 956940694 642658310 685251723 288708375 704197322 810237360 869228012 805383843 847208358 659072178 879581413 304097859 500844221 557554699 983293365 619639651 674213205 420382942 786367655 405973988 597515236 65034460 227623047 430202384 817431681 959104963 980111402 706628274 774519840 66972599 445558707 999112226 999549211 389372388 664288424 308172163 602059903 133494387 706319513 257650995 805163270 575356813 869815201 614704578 968706504 824773115 951225577 211466438 777252578 276591427 650193410 268418218 899823443 137748946 199729416 348088719 960842880 227776139 243732276 541237456 783766948 573730340 666045906 372911279 380728392 400468519 833913881 108171211 944912777 484409927 492463196 595617370 754058742 257778778 341293152 233710714 723445699 698738578 847852545 974768058 996604730 249965838 388572453 46740436 534975744 156435165 604000603 709026406 897404283 485369218 674569451 483201158 987165758 583898793 755242015 760834692 806136881 774568481 817836174 166262858 227411231 641254815 937580035 408424027 427947843 837639383 866115186 720176064 760355468 926338603 937291530 462953858 687592126 845232462 987565212 293196727 610770123 135032913 925081629 896941856 954298659 271259728 663367942 180912256 314417189 209387386 819699885 12355266 475971412 888763753 979318242 292464006 535344648 275044992 899930859 566320188 804472229 591208322 929337159 148281204 705510842 106651695 933808129 404420371 426026993 676423023 806573642 299200134 681212149 539214182 926048037 408132328 784989024 72207007 254082896 670729971 994037713 389491490 763721290 388199945 685995722 141692718 219177838 680514280 738368870 719993097 826332423 691967251 737771723 932768287 979105850 747445824 940853725 386838271 981672190 809206531 907805649 54335609 149589455 768270926 783123946 760819152 780519211 25227973 126283051 386149577 922313052 670563430 754806346 137895267 565435553 685007281 946972947 739332955 850342770 251757033 366495866 945492227 948019807 869780029 972069351 535817674 847603112 708406146 865120778 936965016 992822319 140735919 991559766 520003241 764990318 14730111 281162532 775237316 829473634 614316042 945897474 700144165 917796462 333568545 935647810 393511344 425455297 359332101 557674399 64149661 217162493 137673312 504828193 328927246 829979066 803232916 915625476 156693719 211963157 472166487 749128757 998715265 999810310 367740523 619776762 211527212 914605991 236706255 623370183 928619433 987290612 795264006 869997456 908516962 942661038 619428459 995990386 846048195 908869896 516452374 802999619 628455997 981067947 736565336 963633204 952567392 974234551 911724838 917280203 857046496 905802282 380353732 406504459 278691173 933908155 454114145 502725806 566778835 647050701 103465423 896651741 220695612 844707066 540805273 978492645 691809061 712078509 691362813 927932989 18961788 156237979 646465172 812414940 488631777 659248152 582812339 935535616 642697582 865595578 503875559 782451985 877495775 995702356 794074380 794177129 338579577 977652791 97870617 986920143 937226712 995857346 714444279 757288103 109281488 666446344 316450221 751747593 913925045 947738196 550036255 736385182 891226017 903387358 94468646 252169393 427028499 913851733 537554671 800069049 491839636 911804346 737773477 898883453 439649574 768425124 420836784 459003935 538055171 735636086 420409994 875130771 907088951 921438122 56948566 692177423 248045253 819225425 384974780 426084296 369994584 713792198 844776965 890679298 170808524 512199625 876972125 920223839 658976947 909174783 141185598 400671843 334005198 992267271 277275348 381052983 423874444 745180966 181524401 238764170 670331026 673887309 159662929 517177287 326096604 780329508 336210261 836977177 356098962 449116815 481927941 586180826 794140247 871019920 389745071 625768534 666199104 800534184 530232388 586629874 604897560 744562030 617785175 683163287 13657911 902463855 901473051 984400431 193042062 331161696 986571693 988776289 329299474 563987809 733206326 814496364 1732728 145661265 751600096 873505441 546975231 758668933 334056604 466373640 362257640 962633482 184118327 454805646 676204867 768119174 702978109 845281929 148944504 760923596 605159671 877342789 200491650 506950075 943209335 995364329 352465168 543611940 169280116 894354883 372581261 978035685 207249564 929335515 193539158 235038162 159880382 718339237 40995785 115488455 472276937 631000373 387798398 861324143 58454177 476001840 111042432 891498167 241570151 471157439 824752923 922156863 159152268 297245369 857235454 882931774 267604582 527722182 26671994 894740343 562767274 702008957 182174574 339237163 840173300 995179663 877437231 902164224 713360641 843591037 417140886 447865145 428495123 504006578 417772008 834667059 927989846 980541642 195512593 698391515 33265066 59560754 143921676 659020652 421348874 722858053 466167807 557657113 293922304 365729706 86022402 127936552 583553739 997455700 522743722 539647161 380784570 842057254 86004918 964864567 142634108 949712730 963672469 986583943 224992397 479080830 408874842 815142021 652285101 808353718 206873384 732099335 389722012 700340057 288681546 781496697 290403164 842421057 161617820 550960991 311252876 491028483 376872568 689709124 805902863 898642573 320750175 809489649 27819004 968688881 261235918 504330013 342386541 777910356 997575188 998658369 737576737 920893255 452778428 697594609 789553522 837506602 670594225 702894028 77096915 307124116 141727685 641219943 133149492 316600751 676897284 868821597 163252419 479613677 418605510 741178641 7086914 558580779 65917073 998659150 149110133 214234825 715607794 781768019 376791214 861437022 935586427 960983060 333876976 904773357 988390867 996861030 176477995 890990860 366319546 837998066 819871695 874067500 372217048 591763782 668292583 815918550 268388515 933196100 635938195 955856967 215164356 658022990 492542719 552357265 825514362 900985817 331493685 503090759 766620288 807588745 696975228 861515102 619989006 829982691 201162958 285172430 971300722 997223102 775594928 871206893 792731698 869693144 658251646 937794364 252622607 376612687 901324318 977662913 957041643 971256032 253521295 778765938 99944615 919802454 567690094 760794772 313292503 899752573 185727931 877073241 897966905 991195975 259927620 950252348 333140049 408244361 50494010 52015560 737469772 984013085 130939215 580271185 422724878 955464241 355766629 728129381 432314422 675088434 102115936 435957403 670136321 761583292 740126805 759216680 763490612 861093107 443307454 708026895 527735843 804795409 297684530 702445755 744296904 937820475 326441978 452474091 414346451 799334536 884019865 937373012 744268258 989647219 91090301 750714682 204315878 675588312 895816854 998724157 737959867 910477998 972100616 992783895 104412558 674457085 725107559 853884680 242902473 295075776 887957325 892665614 309680232 401890522 393740519 653233440 385488207 542356579 604202045 916452701 889313991 894068640 394368860 454756371 680776281 933220924 544665793 824893118 161923302 815875941 672209285 761109880 778104621 800959515 134629435 919803250 569960648 915381030 11348669 926419051 600286011 923536722 656557208 682744253 486031696 751902802 290227518 727189574 280226954 419106395 373767786 553758506 387400938 446304178 461490470 718738832 598991777 634201320 345184167 351273326 242633562 592066423 200245251 933179379 512705087 775056522 697037945 868418541 331601260 915696161 233260738 730408218 739809389 940022923 112080901 455977412 334210340 830617626 683688551 775453931 527637989 708858998 572972003 617426858 707827397 944590437 341920047 744420558 217341936 928759287 424011688 920462824 563042989 861397616 618412515 870063547 150330594 293090254 331077612 982837767 881694671 982934950 168607354 867472957 800069050 987022624 174393615 536326576 219855212 564161174 295916710 878254305 188859061 830295810 166151587 530798255 305076248 437835871 801519368 824333462 990215944 998656858 957922734 992005381 964533430 975331581 884389825 931739749 513418218 618949854 604152727 764231810 727868902 840692857 121636533 786567291 723954337 899988420 136684830 997577486 836362676 999200078 245544403 681956354 63326648 476812380 401647797 808282107 921633434 925691567 449666164 807244698 298185955 353851089 240046850 861249139 496805434 654835164 435632378 715211732 767565584 915782009 841171455 956344756 140166854 367389894 435294728 953405567 49831493 576346246 482927070 868923128 617030160 956589444 121916438 946546354 55157130 584956928 256694268 368158487 591440786 971882825 456106545 911983228 418718072 725310665 118062203 622208857 216480038 370669519 92827751 523571964 650205154 918936109 567574368 679775624 199654586 896519020 279451917 569993783 32992614 267615276 989497758 994210174 137000111 252726023 409307230 414375946 171239391 511415066 942323063 981369255 34974715 473316740 630829393 956415155 178498933 649240342 439831082 444210381 994632680 998698218 611461529 785007092 285235351 418824203 177145075 636645033 140164714 149000152 904235404 973857583 800536339 843088569 343259188 648893568 826675155 881962043 335546721 903248042 24754346 442013001 768283963 945728770 902587359 905647826 102334109 686361937 425049619 578340821 999871916 999986647 437817557 716615050 199154390 224013508 742413905 761444919 254947765 628377556 894650828 966309420 815874689 983937870 387521799 941567697 830096162 978642065 538570805 869726306 865515991 958228914 358848593 904689926 548487633 804593105 165803530 191383185 714018620 993942549 814502333 828762450 156618606 909103299 609727243 737740144 16134255 780032687 479678890 920101326 602775114 910744677 59251270 676516583 483830529 829269663 880270035 885324932 280998183 562396787 311859138 529346321 574190375 790977921 906735386 938650686 209171962 463704758 366560961 759940700 713887265 854480712 205118463 653876447 540129433 990757244 209739420 279497463 417489485 669791507 207414030 864666902 826070833 952424100 589384010 656295936 788477753 935644109 940426689 967635997 449630815 540056794 193980191 650013327 961402136 971528232 250617205 310946632 669217337 842637683 747814026 915696334 949800011 976223382 27937541 302517595 373111755 896003036 628433386 657157079 580997088 817469103 36092878 420743166 135415711 258538166 714511941 911057184 61987546 739678980 22703980 157717130 490457405 958207421 987588128 994278507 818324213 889318650 438788375 523362603 449431669 607917041 87312230 769147347 769093446 878853355 256535075 975728957 742886198 827737533 859742381 921549779 244659554 796235874 425605643 503561005 886652108 893493883 706501426 948494028 95045589 634785389 271748726 480213918 103869150 526666719 241469455 254770708 996900314 997684427 985716319 994940868 366369923 851414640 248866811 841318269 373052281 762730978 117172525 427856264 896543062 950874529 805368542 923617399 746183998 780015017 865469505 968966259 590977388 615419032 319168617 347026071 15885603 670972043 890517198 991650221 970152727 989696162 331948233 512616523 518049571 656905206 603770038 823672371 597366147 993022618 113823862 650075023 53677022 91457026 445202902 611059539 264718579 742600607 74865534 145932684 52187881 730359995 357926174 744261622 702413425 781942914 834729378 999093069 818827462 825507565 424152761 668560451 585245823 805583339 766086063 777125079 38312201 122180424 208901734 744385967 431070636 922915988 983079155 997667838 681188303 963363976 974299053 988358240 191020767 197233252 24612513 236966294 707228508 922830732 693870863 772475132 672396781 988371998 918624585 939350230 228356076 978675721 8079030 452006163 866617145 928958024 469195861 685013600 303484195 355937450 167854218 720443421 663674306 750330067 197948290 507127310 133965803 599239049 855011614 864370221 51506182 449962328 291510174 313163427 168929938 199150456 7621470 321450789 75103497 369266110 258273363 536493867 845496835 872887681 216426299 919652397 596865174 748105900 109767674 539161697 380514848 645540019 715952431 742136000 972370863 992933201 680085786 984930233 350251820 420821665 650369154 917432845 305715346 323331328 909800988 961806906 150628347 200466292 841849127 902152161 108726651 714967105 471598477 661846105 719181189 763583056 135300161 621459294 179775742 446310644 618726137 969995241 609878109 661213261 138040571 332180971 371997195 869430704 846520304 931412966 247025789 939989868 656379736 783765052 710319993 766193753 790465441 938612956 646324406 904021357 830054858 913077225 501021817 630702546 124984478 893908404 77141096 936548204 928310870 973039729 603008845 775065754 775760791 988018235 951976310 964067048 763862385 825524809 513051770 896753158 160395835 574827307 565072727 738872540 339929065 638998276 371994950 831228570 95003884 658738621 398255508 470619201 736793322 923986380 366986770 709576408 81872946 555592440 82339462 381300297 485090255 562299189 222132942 597934025 835616639 983560134 885646304 885936571 598872854 836925606 355962598 699816434 920200968 958547811 533439602 888124960 288094748 591522977 764795114 790852216 411966120 579466501 641998246 981235655 273022042 988515929 940332935 964199683 979401638 991390734 464700852 533469836 764914965 789393955 539406232 824987810 424391701 429726137 1279716 660658755 849693331 870497575 761787320 813077187 665396687 826615639 598664965 629125514 857760002 883423072 643152321 921734569 376822391 728783228 886777217 969789783 467316380 499742569 148500496 741265384 143101302 713109053 405654624 982652435 431644978 927375112 898329749 931171096 488062202 951930530 985310001 996014740 489324521 713898200 9674744 281431680 38745719 559180359 552920317 696110829 91573826 196270891 597552667 707774557 913944442 922769959 80524435 247495514 992584024 992635920 209347815 786799601 267929189 361420229 1382825 929119974 370172690 450404946 496466748 763795479 684534461 866597993 497835882 883619356 161903626 748866224 505377264 759592760 546474002 807132841 853415171 969105273 775957526 894235520 345785735 677016767 464661168 550202868 325946546 766125500 625763667 829902120 277243309 682317418 670567948 915577179 942565765 970893648 954145216 981235762 186891423 501902248 211007630 844200434 189768851 815486621 931456372 975499899 492657595 618887775 470714207 933985607 533345422 965863846 632791409 650112491 23227461 941233494 725667732 945104192 52762818 675903053 114877540 324223767 969198530 980000710 15611631 727076450 120122413 326526624 981919943 993102866 679213535 680409616 447052712 714215251 697714747 713321773 666166247 982807639 174685528 490405087 847673440 994159689 734041176 910495537 833564079 870937419 977154486 990673616 496833471 973718047 212007449 267638652 275007969 458273764 442604861 622169486 402688280 770500674 828418371 900688474 83415649 848993380 43603573 978192843 420782133 487613293 524817104 599498329 103294453 230113897 18395046 780275342 319303815 582321740 928189977 941319530 30888140 314936009 82949182 169854862 482409109 722055826 350718742 695199935 65537087 961575271 416625123 820295978 782112820 934822168 621946763 752121575 594585413 952364640 468900273 785162016 685213986 811822143 450532006 461123969 962971739 977802674 202397698 701640526 676168583 949561012 977152110 993492562 933987159 944267504 876025436 916100426 506556306 899623777 303299481 961640190 775945186 836661843 87043106 781359971 131833462 334917436 500717757 802751932 545240309 583775068 5303790 571095839 850252151 888424038 600898036 669317548 183112498 711839475 727082079 918222730 778103229 868148819 298882835 502929631 778614012 906583157 824912059 945599824 762789028 892901425 440119709 497547695 872549836 887965486 826556910 863169194 681165856 823150533 471658728 984633576 588076930 639273535 365738064 586625216 610705574 943674159 817277942 897856148 283249708 867139229 777036454 878642965 651917247 676726126 253829598 874510299 368918397 662593502 777521210 911792033 820351960 861413875 348024557 705453958 852692229 880045928 555593214 629965260 165929825 727463353 653793953 700249777 484210692 568223454 609683023 849474225 892971808 966339612 148428100 884753424 109691019 729295395 374999768 425606662 272720493 985524808 474897795 980589506 391320923 413282700 47585952 268063215 524145386 886349484 131809371 999366778 983429858 985696251 328913102 920847287 855470689 990059395 149619092 659922254 360312464 926224926 785200042 933239112 463244560 779054840 535890882 670733031 979236063 983090537 742166942 866477613 653416872 922344690 599952597 738355951 429967546 833794325 121687988 906909093 64055206 241990708 381542452 620071338 936533742 990572474 302168900 626683009 186044182 524625798 594221317 844881041 281073087 881969711 269276493 434673621 338152370 616483657 324145828 814665399 380010378 662582952 574215677 946756568 178099093 442713824 986620204 992958467 859312109 900732681 683582617 803924750 770911837 861212872 256110739 730718236 229788906 399581609 542265440 805312216 35385891 228914006 362054091 974141468 997441987 997448247 854582947 875962568 891556520 975650669 287505858 740039010 252857194 962368223 758959100 958904821 59022006 683795663 596222947 900858786 375574918 887183384 979850096 981100410 395191530 683636981 913274319 941506156 916577059 954232868 416702060 571273588 890564132 990335935 830610272 968077029 803658425 898929096 317852654 670207770 988170922 991497465 593543704 775881456 990437382 994431835 951548927 965651242 246985621 927703203 737117215 835221766 546235016 886090536 966252374 983343435 945352687 947687256 530104312 792389582 222587301 835475951 113491445 850709055 303870070 849499732 965102952 992819965 423502642 912018372 275042325 762583324 329549934 688380523 366244086 672697790 302693741 901427535 183408616 839933038 961161882 988397648 800685315 962383653 165357538 384756870 584872322 914247936 155637597 258813547 888964550 955256916 723733205 971326752 86154198 191155183 772712665 933521517 721744842 925476757 943477551 970358660 418402721 515236050 312256804 336582876 395726689 986996136 17206808 981943507 407344392 505356132 346542278 583526339 972457038 972525773 623481620 714310471 251334256 992126682 758210500 981600102 700471636 735338722 38160541 345959755 454325401 965565388 134481977 976364192 772316747 806722012 362254936 837748493 973872834 988956299 605473293 661356849 673419595 871436711 880629748 903085430 995003451 996890979 187812433 220560386 488887652 833345382 736780266 990360488 275848498 754551107 229039124 879413570 102976184 603248086 733219194 934437231 64573322 939744464 294180614 984564803 619711315 861543465 454356641 951080601 931742900 969042857 836793289 891843675 805177703 807694093 898130022 922570190 139304092 802906884 388986865 604827814 661278230 840730258 247190132 763634507 869983487 894510169 755163444 962228863 321479814 542032263 868670574 999513622 943476303 975287278 67005565 582720136 516588652 664537868 680893385 729258274 548379565 955190769 562182618 911147844 732931421 847891460 194681306 425105318 431459282 491261480 736288092 920878994 774469407 898532178 119023117 167242951 594611058 678612679 425731381 662470408 618697181 908143120 585596685 972837251 557457203 943666969 522779494 804145393 112331760 486923898 680203667 816875683 359516176 934401197 80695148 161367791 937546593 966718296 480201238 629259298 492426403 845783622 990148626 994493648 830000501 942909434 519908159 807403802 210578995 833791005 427947115 705080861 746543497 806993068 724380705 943156257 277866656 386242025 213773122 548451600 533194005 758219572 991554247 994147339 776133374 995379278 899640576 976602213 972079080 988133854 352190051 811291256 319964600 402325129 289819013 614936895 591869952 811978722 700179159 881600297 359439470 548546167 569860540 862637666 486099263 797586716 368395037 409455388 427507362 813913388 38837108 955679925 214276247 630106010 684517405 784828524 455481841 525702129 275815842 946132902 455188876 758694224 372146702 645337798 737261832 851264928 427055068 579985712 462597865 579378539 345515631 639609675 550951560 615120218 627360507 778199453 868933772 926278948 283129421 967174993 639537259 918505214 324043622 399445918 529428234 881681310 192916117 813448313 572828268 895890440 483190017 575807658 344858620 957356611 128572387 773083182 822451260 882578685 185127576 674786240 548111802 771751914 92118759 187869515 924954652 926232922 882422431 913781059 511779794 626514786 966922493 986175490 19435651 474402043 20219111 956026238 114256474 176633355 570289574 827811224 402897626 717709958 454786570 855498798 617026093 909994342 786368363 925838118 588085289 936770856 743415993 864251134 383980857 781086466 603622217 960304841 383802156 830984246 553400116 606240916 821979937 869776745 350727275 581059343 331892830 757198434 899536324 960332440 786702162 907099526 642681565 794502113 522323884 754078527 274914120 669127088 309399032 599421533 975302990 996432668 22835623 878006480 898752916 936378545 253973088 726053753 956232149 971714424 625746870 760991206 271590994 566368275 481631764 812119778 845247971 851072820 518540907 625223617 469105885 920408158 808645949 924344579 988301629 995045913 117944490 962009252 703940014 960981453 568366402 657753275 542051169 617434506 869770052 916548742 134885645 876068462 800468862 942846321 359775630 606189409 226312607 317184185 119014042 747610695 32098225 893915688 891109800 993111457 177602471 684706718 397993976 470261027 747500753 845532623 542336264 821152267 929387153 975308706 852152081 887034604 25391968 621302863 684277701 943799173 265795769 499341198 382048584 765403429 604829545 758577755 821708809 837069161 859897988 977259035 189178883 288414953 654054843 942372174 969191825 974457052 443704410 827698720 700459920 824271616 536954921 932271334 97897802 579983202 220853006 336584566 401586121 538823939 37999131 454595283 635013966 795039173 595348407 627513724 198819451 983836739 190186742 407332742 953659517 966608111 763423761 789021536 422647667 442228442 834343505 930608527 335347962 531289686 199806583 369088895 193103902 941214383 851078678 863097001 10111296 864196064 120211384 965437941 820625104 835295523 772703085 792658215 983108788 993255888 173012869 273617498 544289237 876219049 530060619 538968350 970625291 992998896 945567851 960189431 473203077 546554503 575481076 996403349 526365836 541469290 831956131 942192415 373182967 833241821 577369714 614877595 970836270 998979260 402436739 756323900 132561930 182817421 98429735 915326152 924058155 947986638 303252561 917051220 73688917 220926338 376133167 637635829 526709215 939407872 91553113 530932177 373793326 384300764 536595258 862456985 296685719 986864113 293781021 364989182 795046347 976424209 460727335 823161611 71115409 715424518 858995177 886946147 752343811 858540535 18808138 341152610 312679211 870081847 182368107 614146481 5312910 739404346 59264802 968165210 265881055 455332744 53240691 291251719 783509598 926798720 142848158 697233683 990966679 996412819 363724647 653783822 235303175 689401615 549796934 648052680 725379286 900243531 8919004 378261941 956290828 990795437 110771986 814900495 289148143 515075309 934500626 977354486 966733843 974394186 132419477 246226385 851727727 931197211 694798973 831534140 592466199 931485789 506600865 761984015 705235528 776907268 421474403 776303765 253170017 424547173 390304685 562848599 797467240 980624339 420721322 518319968 722354263 804338394 642961191 901989581 292004996 788864015 579568212 826470756 536740226 960407121 393593801 785747897 387872224 558380358 511278419 950579806 22049384 422844577 522596460 950475771 818292525 994562770 23620019 350714407 826060656 867685138 675486189 999418560 309876467 608193142 517938233 941464802 516072142 652526387 758414866 904084066 460570371 536506129 914180237 976383897 573647266 955039545 629116170 895418943 394055032 640096356 814995892 905729413 938198846 990941577 593445754 992315201 305194895 410014891 502572013 948720202 407952600 604055620 704261056 921624495 984165653 989483747 17255275 951043927 126110865 318283366 213722751 539788518 66535453 414096161 430377053 855350087 886024134 917774882 524289000 583774010 109647575 625714764 409489067 586004132 725277158 919551169 616220366 706594917 414102760 744863319 864228643 946463499 905361022 945646468 250996602 362076428 862167903 991740698 909005917 964891866 541837527 621010297 603160154 945500304 297739126 805689148 229335321 619545276 256581741 778311798 587905999 831685055 747922203 962927991 836715936 895093390 826446571 867628418 882477329 987116546 15990385 152566007 510452221 818163538 364431900 704362934 561550375 972849684 221077991 887477288 908783381 930508998 806577958 842536801 130639210 294554667 992535 49404936 591833514 897590038 187011037 486447091 576522165 932841236 545014121 612640783 1407689 291718767 320160391 918619452 723671932 924641719 421940692 600663263 696851436 948291771 409957913 589998274 952599589 962883209 224717210 353137546 591321952 602212738 924544077 947570606 337685756 945356570 29496591 590541361 226098656 605782384 478868041 958479478 50505411 311437411 35085971 926556798 36006423 386829215 809659486 983317419 258813329 991270575 125168650 592919063 544178950 988008926 750218336 943235058 940563336 979002440 569544455 663088157 267741542 496569999 652522070 901323197 855375591 871436759 21356960 632424400 586394508 833728641 652862866 670729300 216087977 971322452 600589929 849829216 223402472 607151257 241415161 886984252 561977675 693221447 733661064 890639750 839773529 907394589 496863465 754662079 447202448 565852058 210752354 684601207 96323815 253808404 569230140 824856732 555248046 849720496 603371028 629961685 991468495 993281251 48296898 249218456 831431373 961403444 424785858 577313322 572182732 682991327 617178590 722888678 393487478 650194307 957263002 984592320 322142651 537542783 766867143 891236719 991001380 991172188 961767982 979800126 881170803 964871016 131170743 907383710 327631625 683504753 269481610 518097400 898355489 994277407 277542598 924056301 500442668 960666743 922622025 975288554 251361540 857345417 554552073 794841122 119002043 794965422 948289862 959717965 709595991 885285734 371232699 635239333 394166076 842241732 732811605 844940833 242114247 505190818 455823355 624020565 257978899 963084840 280533183 957897106 839392223 916457023 846624260 983074429 459456154 667849765 520442589 895414485 737471425 845580653 624685207 958556157 889083862 963096310 958077183 986423860 736441804 922826331 674102532 858165317 249507778 952312338 181253051 748482310 556239610 569082088 358708235 974666667 982393208 991299793 688624305 821762645 745981496 871561407 889809774 910847593 17231573 147250572 206887166 438805710 744292761 923375554 63428629 901439917 723435212 783860087 494441311 940799310 316796057 503557909 200022252 470152409 692937820 764646077 832226444 915210544 230390767 498895373 850689220 906813313 171803063 672189413 40738232 662949733 468491709 925010752 710239404 895052339 789627571 965447777 967523803 983358108 119921948 613262495 820196079 873246590 364439476 399378427 328165456 390951586 56770861 183113347 516346381 652277414 29853263 513952003 146045398 963263714 616109844 697739017 267071892 382970745 950068728 999680165 54312117 526870704 358515581 992140256 993542133 997644544 52669478 766130559 232996363 615447443 668357284 737704013 360051674 815885123 713704691 954197854 957255089 989712290 576381935 669971298 117318538 492009727 882425066 894251654 434272228 542992335 492725733 568110336 595309665 830820122 130347210 704057364 881173813 949892859 480219716 663403035 499689421 833996799 509470122 750852595 641509446 673996760 294649033 333475684 257359240 576654766 485450734 949798385 86853170 550486341 938866493 977942073 437068607 873859094 315995313 958626036 152654790 264255985 894766568 925432879 328716259 440921496 447890157 616670150 394315379 504198930 383759019 954674796 412336105 473704413 704943768 948579026 890021685 977596741 277700540 610808408 617195360 804049494 201255703 981650095 151444164 257055791 516414231 955352903 286783692 454221549 682740811 691799371 230459942 688325503 475310690 767487303 100269911 564236547 892095012 919159770 923069179 994491855 752967480 879709519 670854273 952716315 682410604 819974853 666602213 902305599 170427114 260388064 551086814 970073892 544339747 792975562 165885834 923308343 483930600 844659173 967219462 989445313 635400782 674335908 519710324 580839867 176082041 795625948 280212081 283601236 474586085 757214656 570733452 993097892 359832573 803726024 411943954 568806953 750401760 820267352 498241771 723870648 869739841 950782204 61774275 828051774 113400325 353984840 381861645 629679758 484465039 553666567 300254616 649233765 525646301 599037172 943572859 965341746 637940260 843197536 289893871 471155812 435720624 746065809 935078482 981694332 343147095 884887974 434122316 990533779 590762625 908702671 320321019 781151631 343371466 979876967 257272174 722699912 793003211 822756776 898919305 922241952 801615298 868547101 167401509 671556998 362540131 821283401 926601295 971701152 7701505 37863461 642559651 856244280 850610272 991545091 499554326 810568159 552963505 862782184 164314108 252551196 595531080 857761517 237995446 649058547 155469475 349636999 195661082 466922331 461169138 641001801 140929842 668796400 9059910 887379275 230560382 812964130 978509975 996273838 150997139 574047297 431384795 733986513 262646538 529508229 233144088 716655348 805436627 953433917 704062011 938204456 875748849 935941403 183253345 995236213 178656627 637730898 517041401 532446614 854316502 897662316 247593258 328748210 565296485 576539160 567511609 616382711 73848313 667764612 151503116 610359748 825113546 895188529 44635749 968668634 103305889 320271847 437897670 516591753 693258868 817123908 558115718 907971139 27265689 905798299 863411853 891401525 444019782 460404195 367863613 868348402 698677171 990485849 401593848 994636474 303646837 846570265 427911612 729391776 852253651 856038818 96200399 729124011 684708986 793477687 484656553 866518058 630848783 851040740 868663174 984379305 914812941 965113036 880064669 995771101 911634784 944368228 635686499 722487757 896132294 982971837 162656072 998305537 868050916 868788862 512622806 567645403 750805275 902983173 187330853 825765630 424122753 791002771 908765235 915286532 566913561 844661684 782759059 961929528 172465274 183782901 826617543 945069876 738640210 749718799 455000904 823074215 166814834 770586239 336188746 858604152 365383362 491314187 199840435 617559857 845592979 855144501 134880698 256965774 466980220 851720894 469372091 694630826 412082426 608984959 163492450 865050121 353030753 767137521 269458160 650030795 909406576 948056156 310741060 629175129 973776051 999100240 168439199 212732258 567762629 830124249 930569195 956337335 105264169 555185635 751333427 902196974 971776028 971897336 691635758 968208312 129249424 174635607 150360592 797171408 338346404 698024623 852269615 976528759 689577470 805366268 336492717 339343144 625214979 960006900 169745290 204983165 168883112 915759942 804897120 890296354 955535203 957197943 451457471 634044612 429932732 559870497 260254821 593389393 131965261 589276857 708258508 825607163 536906445 980159343 166557850 850668540 526451087 749702795 481162433 573963135 547413421 719214656 843703579 854440701 600821598 646035715 168953704 206516252 436057333 884300738 962432010 986908790 590343218 781543993 328041613 920304171 239555766 444191472 893289492 964466507 680742848 689302146 404498110 896450389 655805538 689453248 667122589 860862258 531125971 586548228 327896118 459126896 759642383 940608763 815062735 955542684 683673885 984971437 287708726 640530510 857913718 921177757 844511530 876547085 508765543 574706712 604659134 641438926 358673306 492127514 727628303 818427649 737027286 739038461 451300548 835184450 360673819 375513005 785605740 925927181 574014184 970528788 185607205 454856708 519246992 818453546 811999463 868652634 781973742 964399709 645775624 969681661 471363103 934451898 72030282 587511927 158924872 436850221 934989224 998309562 780548670 929143736 641469060 720540259 302879518 547835919 742904898 949037572 604369471 909199998 591314093 786124363 183531580 888594179 774642411 827176402 409521602 804343622 796572777 965413443 482457352 832093269 732143275 874929806 495681899 671353167 795447943 834265553 388631091 665720089 119672171 887093747 699464681 706990970 347949999 492608021 848728243 855915107 947666176 984251154 214581703 291187169 436223229 865734898 674629521 786086536 128389515 387964756 800850954 893558941 326375606 567477093 486994978 561832801 622150293 655526044 572727155 673350338 103369718 137066342 762845965 945702368 468810068 878609235 672888245 958951112 104247866 859232109 124011751 505339117 795773651 995528442 580510404 602769605 189525133 505906605 821853620 893368444 349596832 880057566 111803814 161703384 330779857 757180811 977991166 980777163 357236622 402843917 595614153 943206480 459580039 888319399 655655619 673363345 706853147 867962938 113318238 188539965 613656378 940122563 937776379 985187626 201963177 369087504 463634543 982217421 898292448 976139302 414722642 839170619 88376455 851324196 876819905 997457192 182586171 518743788 644399135 658457101 356952922 667969476 830449525 933371437 23687598 406845330 517056562 976219674 125217469 628779593 716992216 877042711 511150532 674860317 385320604 394527368 649932074 867998057 431024815 928971467 802656311 924899385 827537746 999474770 450699848 921139074 501678149 797718101 610380343 710736955 365371674 702887473 72961396 596001826 140941286 367079755 858228118 895815273 665112497 722234987 120267479 876394173 407540036 805761674 721058934 861388265 635838992 814346567 258436765 884285502 578085764 914850351 799083362 936180526 728030600 825323762 50481388 467528474 830607038 863248413 126779481 234335560 155330590 805680267 57279652 207310416 202068421 377358667 853840223 923155311 505316793 860551763 851558325 975560159 547056873 672596106 356876172 359060306 551047958 757283681 9727436 679083260 575750978 918729736 582813958 809434701 570302280 672391259 635203090 890948190 409375949 577194227 985072586 994778003 800239206 811207850 622904224 924825435 785255264 989407692 878811634 897126323 701299064 983809231 927629608 965660741 880165850 986006265 958546977 986059592 949494510 979355462 897208111 916058017 922180026 981115770 990138028 992664504 17091769 149709919 141299558 526931691 610408528 615450241 423438664 631697063 15596653 650582234 773008113 911659310 955946319 968436967 84874623 422849399 515927570 896692839 579457417 617297510 2714700 605310087 33652280 324898002 529713676 638114188 688476808 807015164 153267814 418910473 414550269 940195455 781344419 908999669 469666149 795199979 47049071 316776044 976775138 989555612 668087466 707680705 929885909 988809737 483401379 787839366 21301028 236574139 776912683 800649778 730442751 764698337 760581951 933003601 759917022 871386872 869315192 911224141 180307381 369667092 354324748 761098796 152400085 933535337 986516772 992962944 46804377 955438966 612040698 757302484 960991376 997516271 141247567 840619452 272885705 992999318 619128091 973483534 751856675 980910560 318199057 771299285 888614077 891333159 328690808 727387168 329463704 432617704 881315071 962271823 469825489 704237242 347313776 751885870 601425451 889350873 483193361 718490519 678511283 929158469 175307864 579983099 434506888 989019716 957329332 980820357 250242869 305171026 614941893 794723397 996620872 998679971 673035183 897080222 470970359 878095872 48120989 163038744 428356776 688851165 336880810 794678743 647845039 937891603 921440906 930875521 693026131 799445829 423275714 984902159 924190101 946264438 436421513 577489829 8254992 27333159 529473046 645873872 119695389 566645000 144936177 802479703 46077618 924152941 678505779 887402089 322949142 354304235 20117886 225147082 421675872 902311140 879210835 998187515 314070941 894269340 748492891 979421077 640094461 977682865 194265070 506343772 529340231 577593596 445630169 459767183 877783133 956180623 1463564 908529526 782013477 841983407 425865120 740596187 379826316 547596218 927567270 981635502 724428305 960018721 348895588 650369012 206575607 514522547 927847514 977460620 305573575 478316979 35380072 457387055 483380029 732720409 507647351 797621639 158281246 359863544 400021132 720326521 621997787 929034753 181531357 912339796 447945957 608502069 624538879 890218810 228781257 361741088 468025405 561130173 695767265 821721749 715563179 858790044 190623783 927976467 802038580 917707063 556013074 751810749 281962588 574709241 751686589 813577449 563863091 751006321 355296332 919454702 517391612 853145193 948450425 985243785 102432223 151190417 661398372 887193885 543332759 828134967 627779647 728418682 379205330 882374308 590438329 633919951 680332729 792133584 165577769 703352245 308448717 534434533 707325414 754102771 466915773 777968533 723770850 995209795 641046091 902843348 306162393 507739608 403854364 418556276 621405463 894925875 373982956 967827527 262963317 380863020 636321814 912844268 852786076 911862509 836191834 991738846 41720261 742972179 252546752 922040373 556639484 721902130 913550230 942989897 395238410 543790462 254471814 545096528 229704129 376151439 636082090 980694615 630458369 642609642 891347312 918519358 455436937 976145822 478954158 530197600 146217005 851418041 321551829 491236874 317723435 585749428 307957366 384893014 279954051 632151940 647995320 747148916 870686888 908811441 928230602 950111864 287555100 608948076 844506403 944420961 422394034 792999511 269640952 555024093 301341019 676348486 573175538 857937060 554103372 813444813 559799307 834321344 990781579 999463716 246015200 910736096 767660223 830206633 883788614 898261864 540563632 847782218 362081059 805977071 191112015 302910919 726974167 852920042 452951995 970952818 625889031 683094510 690234697 832348460 718570582 740671179 131711591 611179340 608833960 824332764 985981197 999654640 180503383 290909162 395661172 530184660 679580907 905701204 121334736 984819275 283522083 787673661 795325264 970387244 306090642 609498300 630364582 756078407 414061937 608369104 30109572 412240564 962941845 972264659 313106989 985831823 31916615 786806654 378620993 817283285 532809927 739259936 879043102 899150347 52749454 726976999 647488692 949302006 79277056 202975923 518195238 612597498 467700010 584401001 377060677 417150304 719651263 858905348 961709963 997064324 675672706 861043646 689675569 887620098 198184892 854683245 773438211 884897532 748939726 766748613 296964433 572492289 531566444 787688563 666895642 693086330 794994505 974351563 190687178 351889105 661701358 664693455 792358232 809126817 698540382 943737858 891943298 968862510 8797778 400473737 68493049 756202189 680253860 729082216 174293722 830171075 223661760 906914473 852918077 929899453 691857205 792198190 419506307 629877831 245587120 612565483 129488070 141787059 536149165 994153020 650496303 664453325 27060144 702971580 915953226 919541083 221963525 718331470 815063475 935808085 427506654 558864299 470241082 765223925 774490032 943823426 721506079 960137229 590975442 756140146 809480558 954099375 561103302 714786393 300794577 334089993 752417427 885329232 867333075 885021380 382663721 862537669 53417821 357426049 75899197 441655716 886928632 996141021 399676267 768890484 12304144 795353652 500305592 838827779 431547129 659814579 657109532 950606558 1461281 777683278 109724747 772566619 293576938 977904030 427251519 944947512 717675534 868092765 923710728 966135459 120264182 210018707 558172111 904308133 364259055 472076151 986200394 992436155 717072607 896720478 451032656 868282038 291575191 419736207 725380356 907427938 740308167 894155436 713592502 799339271 971725054 994509965 560187866 840864115 508644652 826454997 174173920 916904498 330245616 679967555 940807544 980892725 324224042 714248117 281888612 915182863 182002858 461623597 861843767 930745883 947775220 960571291 211429681 502316214 23575547 719323544 332830074 758142615 733444259 874675657 531040917 819789886 838938993 914759626 994574752 996527508 546665839 821204305 276680615 764325859 36128941 206568262 305355642 687934252 378539506 917081017 218762891 850915363 795050853 876211971 643695733 708806440 379334248 993588057 19162979 33786385 71944007 748169921 559082717 686657865 157498921 191128090 49376491 245233196 406923856 996912823 499328616 679336448 479046071 492357969 342669786 639491828 195136350 347113487 453816024 522697955 601708948 869416098 922922606 977162730 58098945 986667483 12007987 478595040 750975805 931947894 811151105 901905606 487153059 972882318 830663988 891175767 918341974 964777076 942924226 959578928 971914633 983998112 229575965 941663933 300231240 956890461 173513415 609634179 31312093 727776568 794987191 964232202 659901012 992189275 199345795 568293656 190055470 705934057 332716280 450035756 382774750 472281731 397983895 494645271 675279522 881187617 296222199 672862133 460719583 816296427 409772245 777139531 775146022 866008190 200601343 606009611 623416870 751956989 254461117 469984726 68545743 714224534 498701403 765369298 841639367 930082450 530728602 691894925 601997530 752311955 602524981 704166405 43494916 870928634 863766689 935434514 831294366 933078077 783369997 870760619 486915765 496424718 772694192 797747245 152916123 836537719 721248064 806222321 511696766 831256791 900249946 980645880 755726253 849485579 582441183 681804445 980320264 983072574 68227457 526107006 906937040 925499798 274971674 868258387 690395664 846395998 427916240 898030549 186640958 411557717 766875513 801503718 611751131 693068229 220976014 600031804 727289677 933583736 777905312 992668864 216290408 932508209 11171962 51877179 171465840 837030823 820980261 869068718 104041964 403921332 654701912 667808937 151535170 589160103 372379385 602380106 611993143 734407586 891947126 892216608 493090166 832912488 47491308 746255974 300135416 900092529 97771660 659283045 334552041 638690600 530249751 718206424 93594614 243929167 856645166 877712914 846675749 928704016 317357348 714001499 329629729 864586372 685981925 750301273 347546291 948369496 505873307 605152742 679689232 984102730 875759528 969657510 571088622 760977660 431405031 459900314 500317986 971264222 847450690 900460741 367175120 846247325 82371697 416032923 334612672 466164207 344242091 850696168 84124721 177902900 581783575 791711963 554497688 594438217 434198932 728657106 977085274 983360843 301167316 493171688 243752737 932965426 101174576 596803666 855970123 994253273 493147553 570828898 76405165 928195951 815168912 853977394 282967955 700500567 250236671 535717647 239831818 744022850 409017940 857158429 458611472 675009723 605438482 878628414 154854476 727683942 931470472 990045094 141824275 732371909 145287737 614680377 897025389 929573811 480463008 554757902 537404260 916409618 674481283 874573664 633672911 870646186 944198842 987249792 643985434 954374020 375196093 927487804 868833120 943555224 853184571 930845684 277671691 773525445 568107296 921129612 349723687 658764248 518912188 857994575 311072905 855494995 225619807 932992827 734442683 877012785 735757249 893958298 566710785 861971843 982185792 985330617 681579949 780844255 987172347 996104181 683732914 927892069 388474853 807905832 964298535 999040986 359729564 787004370 802993575 852128188 616979265 813678062 649650553 724936962 688162325 787844554 93187270 97659657 101350445 189869462 798637368 819810469 782390354 976011994 112806329 128875364 263252659 270136937 73558970 812907948 573547802 929519854 498319871 959923476 749779024 831350489 845624701 955546046 777170510 831481982 806009491 818736352 669691708 786025723 640502721 755088643 811808477 992230403 826898123 865873803 294908702 307606313 877396538 886327445 65893359 842701211 260548256 628152516 874226664 912692179 384786559 959321937 164697313 785024580 592470545 886645330 751906072 784666218 462573474 663207033 470779526 479525983 268657683 467684007 760692949 772764999 703715604 750066661 898874217 908938877 856823450 991393441 233501489 570705265 340581511 555768525 854572736 904850222 139783107 638397475 377986629 805528174 164880018 780311298 629082866 982935772 147636127 178378457 756698319 782020751 24445811 787874155 450844219 971298604 579497887 720142231 399233617 947039352 34587560 369974788 26659177 422137164 669823198 888978834 677207460 822914412 564127633 941020577 806343443 997841350 421504362 826108028 873575526 882190100 237645963 541300686 406926382 546497516 174971734 271784460 22232028 545132390 643194237 991360086 741459939 879001837 615955615 822591684 287847202 403112708 16304935 950952963 651247212 669552065 619387042 708753801 961618126 984237968 557389676 805210011 308734677 739354341 409761800 493223400 24170385 717443274 663863009 682466713 538750230 791387187 681028223 952016105 318142023 739838078 282688567 754881642 934544034 956964751 446845256 670484413 798872084 869576761 566533482 705655908 574466630 586840137 426032692 540576717 869852174 928088543 942748585 966896075 518944254 524048305 179083297 791316030 723470832 956191536 136516760 515192220 312524859 800384710 94052109 991041331 497578531 629322390 552531927 927237255 375323952 605694989 177852669 801788788 712448618 962921495 40291089 299949940 141416716 207888543 741303305 781872790 680064822 989753947 238007798 817624966 740779115 756965309 791355661 794797928 71204849 586470971 124237811 881785949 782363660 783464582 596715522 945426885 774489551 812937648 40009572 709273174 580039319 908978763 541285736 819221583 371785523 579108853 822650919 921392764 419328731 757958289 46996935 987655298 967648625 994261824 847844961 897455828 358541808 712742590 595301264 751922523 408832356 725979878 515559342 645532618 84228433 366287137 455272161 482452540 936523481 970050326 483742209 859158918 57236414 258433169 547115153 918364122 31830473 620211940 555175744 584542152 547555525 949283336 83643508 498755961 773641552 856860174 57960300 619135563 739857837 757732651 703593625 711874732 253118727 830688374 950828217 974688169 634260068 733423616 571769193 936979141 313709564 517019887 550040871 585213512 180691139 340201214 962510798 975802648 194945598 736045947 13856508 291920384 438771489 801166856 999238162 999895281 445232672 815648037 50425478 334396601 776908181 802830726 302493436 640674766 30240841 610209448 538621087 828774311 49700810 719198748 387575071 961551443 733177006 847041558 698649408 971581962 637102944 998072028 568542233 666205628 708672529 914174373 102652810 778204914 348572427 620078412 291044940 827723077 455499074 785117801 172114386 917405410 215184756 589561932 306646720 487716562 893689305 950240443 217291066 609340105 974894035 983381090 62177262 573558979 700276489 712260946 178136853 247829518 346726996 920867243 693211162 941225702 371643877 422795461 599283607 690978885 773638498 840592191 613798606 703179225 22689474 176885165 58597508 625036933 906311337 931091392 853809842 891690203 918539166 962691343 897839694 902369124 284119720 966298983 609395863 786935611 885120212 944569620 679991703 785942205 896466706 977356638 779997742 863329506 325880527 684787788 352226299 928071417 939333790 942267474 185247493 821169315 962589371 975476557 794810656 915842384 467679321 999521133 137099681 415467035 221580484 830248596 364033623 869594387 126892935 969412095 459955712 653539334 359212841 880251594 23078172 902030648 58219373 901112391 284539616 408173765 822310567 965363671 668283304 756930201 9036323 85373983 417284055 912731844 937011807 974611978 456008114 963109806 528451284 741167845 560174128 674438825 356989573 646453270 623176158 969990612 298278018 505358863 663389764 922946115 312281876 377723147 533824431 695267683 267783091 717775738 877514355 936504241 627526869 724866588 695107493 951199944 774419034 899208434 782501554 852926880 294941880 858420511 48928839 936246318 542960081 823239293 771996264 935221651 764939849 891643775 53448020 552850129 858348754 952957553 220747202 758809898 685942296 982358500 143143985 851940978 696616037 949582117 441850601 820188760 982701108 997503442 943772212 984142293 898583403 975700335 869735144 911752769 960855047 980120692 397932425 686993404 550228444 793230522 782500365 803831198 663458467 850891370 542278492 847447987 36657776 596858163 323754565 924509789 936683202 984941529 530401363 950654992 604275683 721257418 997538723 999806407 910850057 945445828 794139354 874155805 54027748 313331664 532122698 963912354 269877687 919755329 247494045 823491049 861515581 910138995 574563593 655843205 653558689 826144853 684353477 743499185 908594283 921974145 828769738 870613474 753830270 935053082 174158816 897138657 260736937 525500341 349979473 863547893 714967127 862415895 504356813 644965653 480896789 911731337 981100621 984076949 582370499 599822359 438594366 783987426 707842415 954116568 842121326 941586896 839297637 901269367 533402545 864411363 463810011 833381871 29726249 565037703 44720175 969389791 717073163 768207076 494777496 708560168 429710012 648642360 574993222 782294723 630009534 985428996 521134677 862423219 984265672 996788565 731603164 898588452 617615641 798184650 512235479 734321386 864935439 879336214 441651080 550061502 585847139 850853315 910561465 957691532 672687165 772096139 998270414 999415430 454269055 842681957 529517697 764461755 196835572 634058347 977951882 998350702 810982387 834143859 607317716 944078073 60913384 274047039 97013065 335490566 394375811 691127456 880956147 973632407 567806240 855922944 871674761 945362551 372370797 449655901 28305013 648076373 9351127 219374585 590450060 838319002 809090466 950134295 810558745 927081958 626676093 783718991 843960841 986120476 181063020 243426435 431630323 514389142 392652774 737337675 10860517 21288893 101291242 695147977 968062681 984874819 617879114 739925683 829430657 857001884 103481386 961597076 872879707 885639387 454468090 663890135 570365085 904488120 530537793 653574250 405664683 584712513 695390573 796386058 286600577 412063760 10697576 699473249 823715276 852157261 920216401 977297252 983108105 997045625 995747115 997452269 281190901 869222598 207478678 496822580 202273135 532424674 396673157 823146139 391241952 819088625 948910784 950561971 197006282 414540062 819956816 999719232 227731000 677805500 921029498 964157448 765871938 964095696 279862705 793500245 92882889 771871591 411945129 629078767 80453762 197879084 27308610 649956769 776409917 928390648 744449487 938808608 739419479 963811738 175169270 313777535 69209449 511195826 979172350 997346064 987672722 993742091 845375790 887603243 735164622 997186968 295315364 540683151 59976920 352566056 620720022 959163415 482423961 976664371 622499126 996752128 448784516 987788829 542387370 915506243 116032165 759724910 404308894 607947341 97595195 751722086 526293658 695956113 93133557 444623231 66460278 93544775 105991097 812725931 800855581 856876189 176937437 988343902 987714502 994534314 118044397 698730794 698150500 843353827 334865269 755669320 647793381 843519281 155585442 220130835 582436501 596276118 690510864 806803148 145952778 518767040 60743086 185675724 217339454 769056230 858808390 912842670 63467627 144894128 518633349 966918312 805363400 831905023 969687868 986529906 363892879 837253988 598710161 848796810 75183686 227802760 203288951 955390571 126790737 528587203 934863565 989137073 485492035 796258452 197181505 750957690 812893400 996391831 630981039 731296225 994269729 996024876 397320246 953538041 723642333 805529996 386059339 489725262 310320008 453346321 270873178 511091276 640517500 714559367 707145921 863920452 210141831 266793822 877583437 933993190 379064596 664718103 275069608 929939583 356244604 370325447 146925115 166130111 41816056 762753634 885667323 989159821 338416993 766639761 28771139 942602436 268121664 875747965 388383866 512752428 941465222 975635983 85495238 129358177 491815082 676650380 714525334 741118198 465170894 589521830 376584377 393863318 802819819 904862909 638139597 998979535 627581426 851278200 894182879 920564587 900561064 963816710 33458754 443720190 180739932 683675265 484732033 626134002 537138735 816873171 537180100 994441833 741754973 953518715 528479335 556950821 167542665 631387478 973690190 988389032 924691568 996134037 598639109 789003787 74950358 170896169 879997929 966560005 610483582 832855850 560375201 696307063 570604807 942830885 179642741 437607975 427059026 838714848 353280019 959263513 393072952 879875913 457024831 897527291 478810068 927577024 563254330 811670862 109252554 675393447 953907194 991031626 967009909 989599732 640004778 694702069 992295103 997764053 786872365 928327080 390261151 650074644 127404482 549924696 713804776 771981405 791453220 819439889 947866282 989885977 106452607 413673607 495212646 701743756 985077982 989833693 988414636 989189693 881818781 932780969 18652761 478216067 633861465 658370062 639071338 905319506 909142997 914526786 621252402 839709192 719914182 724543180 99558823 346186885 767374265 923864735 653279421 996680650 824130471 997546703 68042956 395370308 715490214 875607995 556850611 729790976 880593847 943191747 332474019 433695086 179511672 514021875 225306916 465092402 144500500 375942093 412990022 928169246 683668028 952094876 552192333 988717317 684056935 957138493 226665873 426047312 800677024 896297413 246634359 770122025 871318198 996239986 661563935 980351448 136538775 559904118 563611946 920228089 329382312 832161778 124165237 233311344 467757153 645181567 963749754 988096237 171504480 265892523 678722354 773297988 68656562 371390828 176940292 619219121 936790727 968922009 567052954 603595407 751530175 822774420 713261473 955588047 963724145 975552140 890343890 916454401 267673074 427499471 850384231 949309966 857969979 909780801 89616245 426347932 379396238 385904505 29176846 341495361 831899694 921910355 674285474 825194356 276131776 556711123 955597155 974865660 404758084 978032577 995228152 999152690 519847867 905512370 656534705 778548375 61187252 355463570 301924842 976402781 340393037 713640070 873543453 910902333 596696663 816761884 884056742 957337480 165764110 392023203 631982540 772128675 521799449 758890963 232887613 561636523 362342683 821559549 847749710 850577577 42416444 764659087 887680398 942719813 314291556 661781731 261373165 427137937 944692201 954119378 982583699 987178621 168208442 756133773 21340289 69435073 976883391 986331735 504955367 795921472 655262276 996765927 48267840 587295669 332310471 918024974 436783926 992109146 337645844 372648118 114052950 809116573 177544918 324444972 194977608 616254045 803164543 845035559 696389614 884377012 215687502 708915775 572251768 667446429 976244308 981962526 681968519 741914538 379576561 820446194 425558965 987867667 672762585 864940812 515702400 749850063 64601401 719737986 401991619 652056531 708215584 829362906 466716976 719187995 505745671 551954641 125692094 712643032 746045084 904640655 503098565 944456979 457937832 925258841 587519787 934966611 570028891 623357671 662694091 855813859 601316529 871884605 750605967 884933157 931019867 977599028 136257121 659092938 816907009 959548998 77617952 465526194 5186937 864907578 606562093 641099627 508447471 666901781 690951184 726677367 645678355 705276130 773371949 877743426 974671706 993614510 986879656 997174593 577554168 913137926 149776079 756254942 496657556 518734680 639066041 841080960 521981399 526769028 215665513 483914899 101615712 427048871 463337067 463517795 547690537 749402841 53911257 476830170 650448357 720706953 577644062 770175005 915605171 947753994 256065652 857438021 382421590 760823708 583958557 957637825 348581189 554625487 574293400 804256551 229591588 676581086 669291603 908223416 386225708 933705429 921708905 929322079 118016875 573061047 399294705 878715724 949553263 988015920 246656595 547074872 937813931 988382944 641777054 968217813 495149660 636746537 321328409 394816399 520991546 849722907 474837976 566918947 148033875 897574385 312771340 474235652 692788449 890969322 620757867 931507919 839161615 931760373 300246493 412568070 184276089 636068178 290614985 691819947 148777319 632605220 254579409 863806331 941766333 979894413 617508783 999301242 494063106 931377429 410533325 803407468 520884649 885875114 762429384 858228848 965080130 984584205 748562666 915643741 614817093 809807687 879091288 990270847 496994114 765330252 971657816 972970288 477099532 710797439 142527899 190787490 125882256 743318945 298835158 939580499 500485305 669670355 297143271 548806208 475058218 675405241 965884703 981533363 150195183 687175639 807849506 928213392 629212973 898442102 396523743 519931758 307193112 789502094 869863927 874254917 929822361 945671551 182518707 369158267 34281569 726172346 67552253 527868327 603386032 880531419 508321928 764585823 210984997 337535921 107452254 879124494 62226285 310898667 127090721 614890342 764787536 941416927 517056532 696700714 508853748 659467845 135287244 232694769 88209025 780046415 167042949 951516123 252569902 383917171 544596143 941943313 638405677 807791052 655878279 911336516 62616788 452435529 787995796 868147269 421324056 758084112 74703636 651642447 517685195 520989787 550675302 604999949 462796437 827089869 718848965 996813008 507565822 907595039 443972911 658884151 795767215 799129708 381555874 455655942 898022783 964888947 19367074 906436921 212801097 711823500 356655064 456510381 901842841 917196287 685366701 802284552 458056941 875784316 400569305 442659430 891762924 925017770 423608645 626882758 319332038 766316486 449472229 783161206 535196904 612248837 107710911 128854307 632061018 700723463 795129790 813799441 827870750 906476734 266541549 592671695 919158420 921683670 287644116 428196418 55471536 205123279 580160644 965636134 361483849 540865760 110746510 358888596 777026297 934654129 747049526 921687405 815836032 873510546 892797103 910770174 747665495 866558262 53423976 676736752 597492034 749759560 983531074 987287130 505504609 949431461 425509883 888171130 627256098 943830663 45305550 965852633 844441935 949432879 194432106 695647604 508175039 996155078 92742634 958690375 143368160 304655895 997634420 998567839 910553521 940769115 98490922 537818696 526110877 994897723 711991949 843446857 911830428 988768619 889766606 949232602 792898477 972540327 53342148 447776696 565874020 609011235 324936341 969609499 134271086 545084718 603083621 810897806 316068663 664585415 564580894 647009601 436035205 939795143 435113214 484244425 811433100 893151603 648966200 799925886 398569578 402715437 992747752 995535975 107636419 578067903 876944553 977060433 613728425 682791601 988631144 998345476 401816643 825075480 225372618 309778165 781423642 900431809 121844884 818470285 750149440 772356677 942848740 964401767 396443014 639512481 675236139 809885029 115356249 551241012 809688680 883609085 342709778 997480108 905917747 993503872 777832274 897972197 209033469 778288756 414631613 646594052 41207452 447969673 902004036 946020427 262476676 728045516 844054823 888907003 287593271 603273598 43127242 724463292 183826081 314511009 894536128 918671757 600331224 979767740 751337640 967494876 716758656 896244422 199744565 234628991 788830915 796811558 278481013 795693198 73234642 547730017 677471212 887724548 831756913 881014784 78807853 203823553 966417605 993151206 449913768 668906332 143730547 820694644 398958527 755860952 552896112 571958271 491704119 651632283 970176998 981063193 283281383 599753727 557975738 636161455 365546057 374496749 97476599 506928289 216626990 979576535 221384267 707372613 703901136 902104108 616424544 774243386 374019564 980659920 798837863 943157266 561068731 744949627 117416532 708317626 102729406 369658649 381546185 399231336 78139649 525572483 157724326 235898298 379474588 442351697 830477038 858103156 889786837 983721818 741277585 890908194 342682258 516127632 206845515 756775900 975587205 996825850 474147040 543220552 544415107 797198725 181586633 901666814 627123630 909204280 825371067 938985035 338575789 750000655 489676386 930551390 363797128 914176645 264805701 616913025 478496208 708203254 49552780 727681089 865328821 933782319 630953204 800417119 293037997 798147854 579270096 748077787 565865453 880175583 152849081 558616668 12549729 77391661 129699446 384747190 71445593 777220055 983651156 983759497 114453524 916908152 205463950 981125515 22408297 815652166 739371222 743094658 306491819 816286300 775777021 839092288 393439156 420120089 258532156 978946124 289485624 765945547 758153159 979455976 248008500 953499211 779424429 926737618 467779388 488332085 969056057 980402680 696986867 937799845 824354112 998874374 666279147 897122642 846805829 960926905 724933311 750272766 270146109 884118232 944952283 986233253 438108771 622384790 651606540 962355937 675182591 968198208 261406832 711796622 928656249 940425379 548754877 664999662 600376076 873336332 364516322 544045397 654446343 725668791 783502710 910640448 489796175 719686380 940646001 960862733 867761747 931509715 411797867 913292914 278519006 649579746 396822452 642018452 169510692 665850864 73839764 967329007 734398845 984565337 351356714 931619779 449572966 565347591 279857954 637881699 170724746 234555168 382696630 514714392 867940966 921626555 674016580 923893888 247194018 945942499 890053530 947911028 252757729 894812237 329273063 744031975 542785373 723413277 335315069 565516137 782068212 903817420 294251438 983538563 479299837 569705742 681426945 845777221 481635638 763589445 327516100 992167473 677395102 957548151 553190372 835787928 80107684 433951049 536918557 645610851 66272432 203600078 604372748 664886916 731722818 945031326 179985650 507212948 788086869 804581470 542223665 557512012 389115081 799420603 709377719 860689104 11306213 217911861 735222287 823911750 291401085 695852052 981524178 984009448 338642651 892554567 171356191 991220998 634286244 806146907 968628122 994332912 702623148 953396939 537876980 879015326 928490949 930905562 315095753 545595125 111767379 464177378 423650026 995847701 200732073 327556165 276433109 926219586 801421292 983902216 246163303 571849354 237433384 432692366 288674571 544497160 185005284 235969133 245574895 786974407 939405415 969836391 291792054 886915671 895387540 964345979 231122457 250106387 508133829 703138200 735131935 878324633 456470127 947859668 529799600 742996538 268228555 590464508 127892580 436988095 40699237 63333790 206246133 505692355 461037913 665296909 395056347 636695254 872988170 893300687 903103080 978843260 511378838 866992828 200233148 832040205 949372481 963647933 278132713 506994924 538125719 655990566 685582503 868562113 759815510 950184842 992175901 994773914 810979259 895542806 45392567 936424497 963325604 978907484 94498873 596998783 637519551 997619871 569744153 761525681 393462574 997178307 478922517 716484653 458729893 656296887 279901025 915157756 483954210 772042971 72340282 787755403 907916428 954939814 612165513 747931556 413707723 937507371 28197756 110428735 513130232 796498088 963949872 965582216 410714550 787826155 308420780 605462907 517037819 536449652 929399764 971595023 91279935 209572478 904714704 962406367 845439642 871212114 790520311 960742966 68531712 854385375 151450272 642304781 231991365 233575227 959845148 987612966 907627232 929601377 253866165 786508024 688816216 985483366 982213578 985823744 315817362 725810838 267860399 405275356 95075593 743844604 753274309 910873469 48099378 257717249 416053254 689718501 221777238 801129192 701305930 801411427 987857563 998357561 241387732 631792273 501338586 680037757 623199084 908582104 103084775 237953637 408660842 819766217 786895330 918735437 419509394 586976485 528628152 741765619 437749774 533745915 656859489 957581141 183547993 990238446 379883556 727119944 883692588 896962227 877168456 938761955 567731131 895903461 468688926 681068873 36763761 566472818 421961009 635398887 162531004 802178388 909797191 924175153 418771998 567477750 376161485 680806679 446581 25037596 660036872 952538731 695549201 814049577 85534448 235221697 403807544 965274256 157508973 189923104 148110091 671051727 212078301 418524739 9853147 74083316 745021362 759852179 186652339 459126175 376967806 595390247 371720134 701491001 720051375 720469733 472116579 888357369 158455497 900226214 911204226 931604546 837262816 926681458 166293110 370224169 926161144 960453143 782192086 933156356 931557715 950421207 154812803 533254549 25131124 483509006 993338157 996899391 654186721 789629689 625793379 963995882 963224975 982667275 25156409 725290707 26981900 27238352 218021336 514254485 857278333 979923810 571889046 940840571 819088066 949224188 291790375 528065389 207350357 699200949 658259269 960530493 853438850 989033472 158378697 556152991 702977290 927436658 100038365 614194734 502443389 527954707 542177591 698853716 929107312 978422863 528059189 535421910 262268941 332324828 541447719 873900307 472188918 873929370 46655461 555873974 105975840 856781402 188968661 940759439 655166477 851988753 479752953 600173966 406292515 519564279 574232972 758779940 742707644 816102380 612955706 762763124 230449969 892766280 883688835 888251927 694742730 812007853 494802378 670802728 450311135 458983677 684559237 920979355 628655596 975051934 172497248 487759734 16586351 319418334 664614607 954830617 343882095 364936190 23650118 137807426 395758036 465657458 136582176 623918506 981940844 987791794 461465585 654901857 432723287 960578473 24502281 202576696 35029730 275774021 69428857 254384694 428089378 457592233 393535195 461462294 537565532 779389549 338060075 692344813 650930500 940582670 773237326 930128816 404265139 711188504 771574688 860414637 722335124 910895136 954125394 982404933 47446312 709572483 473968640 698117367 466009937 790939882 993698779 995707679 82794758 199801260 964526098 969233600 381726442 630266019 833079382 974760663 893331321 932118712 933912001 973989249 370611201 955046596 629930370 996204797 364835890 761540102 189448874 906419411 658408388 734311323 784470054 959835585 64339712 132855853 530797716 574376440 781208790 871676023 433080768 727276613 935874150 953286003 137716931 803853643 360362536 673566649 114917589 149873954 655432752 923888960 497243244 719842489 200445372 347336113 921937850 941957733 59381494 135655523 616145469 902764584 12343616 337218750 996709654 998391741 411811095 652754628 424176574 902115223 660371906 863770104 112019208 752095609 157371359 224968906 383025315 623559493 376182652 611059930 957530762 967228661 869106444 905953874 221018019 533487436 69019858 301364352 324032890 389858091 298010910 422771451 140267457 426553132 806876252 998430541 225495137 259604606 150699330 957609755 766157954 844844690 548637841 837987201 362214521 562148638 858245587 970453781 302845545 849371852 193943626 885427687 869555457 881329931 309783336 613548822 828530264 862482844 570172942 679172586 944467064 960309192 317493416 999777186 519965084 637575367 730954634 839113645 810148419 894304180 550729667 818577776 918762906 949548257 441556135 556892220 362985576 682861937 120997723 857393734 824016459 876462187 159094359 839972870 834238998 950963566 312431733 463106642 830961299 916511709 611456120 728188011 72063845 481451623 934248667 997792568 509170134 871666181 687591342 846994788 211585765 528020056 473396396 761533320 733186307 870419789 9328201 596960275 750376396 923546621 45526951 514509458 960902825 986951820 885585614 989326779 240841389 511986795 645025801 834288260 926153048 953309888 698549040 700005912 265058206 361913977 198705058 642459241 738598491 836273205 205292109 257320652 65298069 519267774 468057642 926612396 998685433 999062193 602253141 797287939 945384908 953678549 335916994 947549506 341853367 619799983 569198266 681114553 585096134 981661577 687057559 965508907 473267471 816230714 538561938 937345820 356700792 743626342 834572354 869431604 128945269 427080293 114498216 602188206 633242865 920054973 151738688 496925400 771587539 818826172 537882087 815560526 118835615 443785073 371695903 780883961 689913666 765379301 691983685 780620845 114989560 717547031 245136222 373760956 925502213 952536660 144305727 390833802 563795349 866693941 870489081 912663665 709070116 734536614 882606733 898031940 599088951 736305646 790623661 837728377 872673797 941437977 574447488 919312469 131689644 371281603 577247490 601438867 913616677 995103270 662671043 693531727 635287954 912572432 912146005 999324342 437904650 637033904 883661935 959384420 360113654 594282369 990400459 997939915 638889883 779985040 876890306 932750698 433995992 514952039 427167890 813491797 760413181 801463646 721301294 913899049 72815095 317292353 948685588 962280457 570146629 898908706 509711149 770361467 856709600 975702298 659554158 930384471 243660688 694722773 745439043 790627281 849645715 985901717 894709215 983681133 521179966 528570985 680882131 681788008 833827203 975320888 200929311 563226562 381966795 954464188 756897045 948559484 657220199 974493859 598047912 891514087 169710937 650393382 740502015 993785052 824692852 954166302 188696178 284811247 676296402 823361702 254803321 879733466 681974097 854951129 634760207 729244118 308143457 403858621 847081025 911025871 875747001 962623823 444800611 639798335 214541582 425625555 563185670 609478357 729196486 831793312 176534061 933052404 706446700 902005839 199665081 865531270 794911873 967117182 457244693 765918860 316303815 976951804 468307447 905044585 459093715 694854749 453163421 706754760 387024584 656351383 431189351 477096887 365616875 543779605 259341654 519279050 840223670 982794711 100172638 706379766 353701803 866229927 5367347 720933819 125527230 692165156 760791480 956561124 947433819 991933300 378902724 601221898 15019101 450142278 911949948 923958473 734983903 841180320 367567551 936346856 342717503 658211278 552014704 592104502 260543834 378695595 693129858 778432133 358843474 569856211 667367295 686546613 565493299 750310896 893006825 898842646 758950495 893104961 530998744 865236467 107967637 989872355 504116741 666477516 817038607 959751827 508343391 974188047 246844752 577343595 790863259 914469630 997915512 998672531 499394168 630112065 49868747 165539997 185944117 188380577 201636754 371488973 320953083 810600012 977135700 982124293 466365520 673227239 775296620 945376579 142048367 493032219 298641445 620806953 347380845 469288367 58598393 710767053 920874691 982762502 650448677 684962704 99893924 980667512 490506999 784659181 613284474 811143003 724124184 771659476 263609389 328465708 424705060 873543277 835614541 838177070 138929267 520007636 48545201 147263761 857238243 920101998 319132974 665772005 306058212 851385619 200384719 639025351 990691872 991023814 35565494 898305705 430254548 674254494 485545615 533702100 884542164 913938495 115776404 878603227 237208913 973889326 999257249 999749645 729853145 872676382 344820916 448779127 650695814 696320183 925310516 925398048 908603357 941436159 790613416 856979182 577794180 750607566 12032337 275648319 60237224 83888737 751648189 791785800 863421344 943391202 309892902 780912518 835802509 973917471 411042330 779799118 2954779 346524609 176118186 306991763 450106628 944588419 925713345 985642820 998983140 999679850 451951273 683254383 529580009 816823489 236666288 444553144 623907702 759432022 471705664 934943366 506709392 948933197 50545921 287542069 623032471 701242014 642296822 805459584 42524566 161973236 448084814 646914488 797156668 919431613 951592760 980379081 838077490 843478686 25685190 182106989 183202006 909049197 651737942 955459656 477872093 573880521 63878492 983853937 812876235 820972374 508945141 757711644 358368776 994097522 192869175 632336830 782539919 799217365 94694830 632687180 673936622 761104928 85242443 844224976 442612566 762188055 584226595 820853613 932245192 964908712 127811736 915510907 336585166 514787580 154077242 320186765 534401366 648612739 475750215 675508252 471283111 739077548 94325361 590424131 860571978 921125878 419215276 696721586 427283352 662706617 774883140 792507573 699674727 864149779 701546141 812570456 560733295 739804940 683036205 989546969 655867153 820727633 888516007 904414188 13758184 209551610 292070284 707593469 590464013 743483239 66660844 522195938 222712973 662627411 897906593 909807885 415945777 832387159 10297552 328296930 379086206 706506070 546632916 968911403 945206135 973097472 284483825 873603335 679829315 691964711 263621996 723641373 21906631 734622388 380788125 943107214 896001073 970222837 811371923 925437613 595044595 923376854 138231495 452966032 294932059 659566357 78584157 814233879 582998344 977455874 636004477 857743175 851130221 900122187 412747873 802615396 110609203 396939376 846395869 929174207 977260381 992059063 606374413 915577763 865979485 953225578 563636956 713016516 49616145 996015750 471775918 593859011 871189681 882720937 43573647 355036918 720043723 721231476 280909356 414373211 844310993 996154400 181587584 554676985 115273506 641329114 808048740 828896875 271736383 482635600 659824385 819473256 164033690 995092074 604066242 633315706 156794845 493976590 883177966 993165564 888777943 996426867 977754537 980454118 958346432 961260840 801271032 813600768 862065007 917066196 165480217 651078115 496546146 621528908 33561340 635353414 840088253 961431358 531400853 762280595 939618058 989177408 739883242 803135580 803314518 983329564 985330110 989484377 635479270 991430978 738272955 785159254 712261530 975487064 820614183 984946548 200349767 577463426 735388879 884822738 852086275 922949476 335615372 874690463 941712702 957953960 215163926 607209616 199647865 255011710 550501325 772028630 582046350 932715377 899847817 909632307 882130957 944247241 375661009 937514625 634761734 713308865 157509312 269681290 983132979 997980253 205298502 784621955 23622187 607006971 385049300 671137671 956672318 992385112 65724172 355740639 166370363 357631061 442200595 513442848 624606462 785930633 76432983 141582967 764445553 872566636 49126008 918332258 43246914 398274738 674321147 697596077 329470132 359069322 318943120 474920236 17047618 917871847 526581763 918396043 37169447 682123060 560710539 751453340 315517179 706220013 881812868 947645734 833079300 901803613 297885652 530046936 162827086 406101083 927209887 936996877 152976349 634415868 685521595 927998751 535223730 600405525 514750131 691761022 974286495 989597884 217721529 847454060 637312083 938253759 419775026 855007498 600562988 965399834 298374347 585691515 846173879 966028766 637330932 844994950 325328278 497065779 914013738 963639376 127703936 439993757 850988737 923383327 269291589 804410737 311206035 958354561 231667424 279179635 871407205 974090025 990331242 998328770 614656551 828415350 641615820 821784041 696436810 957367033 747635980 989374121 137685800 228995396 594077482 615212988 564140622 824537192 210903488 951214323 605628814 880424228 136402943 535975258 960676884 969352571 874854827 917856892 789564564 914500324 703840418 988759130 682257856 895415988 619952960 741871053 499690517 765338767 234890722 815938110 311668177 365425306 35526882 476591373 192415932 792573095 621635463 678378623 40368954 770117471 667837685 688642929 716456289 887330100 795453917 882234069 722166289 805264738 898403964 901696036 585176507 948091837 91797213 290473233 604732650 761184059 223077143 412291776 304122789 686471246 228992506 293016674 309058556 980226408 571985176 905082326 575544383 710626544 273290333 606161904 627720346 683958411 853806209 899302472 45373299 525500261 992203564 996415603 643105658 732171783 126044602 232021062 151009534 941840503 434841817 865825887 98204908 354665965 207267853 461334917 751426919 902027593 688835870 771939395 884876749 928111086 810706237 996449807 789453628 834565380 606859198 776542513 514794057 551433324 954776958 986832254 671844442 997009165 651705939 955204670 359391965 762301813 135975108 726414968 424913384 928104414 897305165 915726398 814145214 971602245 371043344 542147595 409316959 487209921 763634716 773206256 38439297 543556015 483953857 536950444 440472351 537615606 683239612 732931473 967590241 983345206 100124944 271711101 97027607 306179381 632082846 902762282 185776553 842832407 886283020 944559392 162635706 842828854 524880521 640894486 31344031 201200496 828853464 988738634 872934048 963208717 472273311 494816457 941039494 946218590 773106502 913916608 587831134 679773957 261829581 516716883 958408370 971964717 390258537 555840722 174734499 874007027 363465535 995740880 619882395 941875640 452508290 710888034 390748214 590096510 516818041 897791638 781860536 890972292 902550692 946199691 766651240 821785785 738905191 863565276 564631367 910545777 938648498 971102905 521265502 673837288 827715909 987973420 251276189 603605620 61073399 754243226 381513400 455539704 330200043 659916389 816458094 875743378 871700546 895678607 863936949 952837583 155505692 498998872 542237152 929156067 759523276 984756611 376051301 596958975 818378435 986269569 545024033 849496229 27204355 427394128 254799570 430784116 572395719 784345836 437378822 901641645 500531701 983072505 791727902 825952778 861602169 871778414 481222841 484435500 812017596 853444909 248044714 847094211 876592544 905858470 236243179 860597994 269508630 875516060 126456935 289132943 483490570 597554172 639821260 822619418 186823511 976151275 642261865 710811294 979863641 996148969 346393794 492109912 862407060 969623014 755669349 891995143 98655015 117924303 660545379 991679166 909191238 982173070 46546235 303461042 25233341 394517382 234607393 293397833 691586694 701437131 950020773 990948878 251654399 299502502 633053170 654273494 198746397 469608334 522220834 602585533 254018742 389156599 425651180 900705162 807287287 993113240 820190677 933870821 270627411 863587659 414470753 949466858 772415833 864053993 773449911 906095397 895542377 973632353 495616018 736775313 322918101 437909585 127365321 826146096 329272185 504596695 749980769 784386372 613976751 812872747 775969033 931323112 384636214 590983795 858345034 944022406 245891393 493574860 840258847 878056535 230000256 755852549 48071551 184781394 361257907 800746311 995527106 997537828 223805504 405179831 295123160 322738314 183545334 807325229 2532976 584177238 861245288 994833061 215536395 438648053 827534600 914444129 724724396 767592788 117266149 232937388 369382615 940308143 256344647 819321592 426508364 872806468 230653533 813297634 594378954 709695176 711111326 768726321 802299201 900490785 36174501 445874230 483638133 697874698 709115618 780800181 560597625 783328523 300220689 313370986 464571553 886540636 615531753 770229358 416250996 563630660 472848810 834262659 585083354 981143430 708186893 715601756 612829974 815114955 640494343 941726856 185313396 412545994 323011891 805431730 213962750 756149910 805788751 821677038 946137636 975007599 519980260 605731279 14951485 522276783 312747555 767196019 254401781 662206030 643146893 976866083 379743967 643074794 782480640 844505803 397256380 621925546 258141580 644537849 48261701 115984112 605394708 987785719 854029409 866580111 523641597 838707673 442399860 591486964 108952529 201347611 429372837 506866025 391849784 441052989 156369592 412574581 759765802 967168514 260143644 431944192 720770471 902877590 234303410 247755009 850369190 962899825 124689702 529141697 490350056 886838696 636988700 954382476 665509022 804831325 987394745 998300958 251115274 777608103 670311100 990127670 356317320 668392762 845798172 994223350 293397942 938583236 370913697 944081049 193158863 934029432 525477597 873538333 31628224 174504733 705375337 758085712 580058857 913254424 226335329 989104904 768222715 921563404 461899604 766354621 33843330 551013491 394584947 466841418 567332022 952000061 668758394 972061915 689396028 850815275 635918554 698148073 120602209 149621815 905471578 988078569 692800697 763991159 750404854 769117922 386065001 476953111 358407690 867689978 904129760 978884327 782834453 892880025 635339602 904977206 292156544 483190026 42860792 449455283 452454380 490621836 104557575 525558472 241358288 820323637 12605353 201043047 898291441 959985752 88550991 701569744 542233074 561796746 298478336 962121560 721466101 854265117 357999739 391095060 530214735 993482423 432630371 522716622 879894342 911895296 545321596 604107207 322802544 484106328 13761374 298837750 741892600 747183019 920347909 946659234 269245151 811146130 539429584 588695337 660034081 848818663 440776540 513249805 358152860 549109054 667257002 841167841 935757510 973678967 639183306 979643855 742772818 820185801 6216955 978137173 495461668 847965712 991765930 992540869 487316125 701752549 422961054 744072371 113051016 389946643 186243456 458099646 395869312 858411436 814298681 921652526 23580430 250728464 358060102 781753246 902424136 980711872 732142273 961853818 177323861 753768482 450185770 845170137 723990615 902262015 193183447 730840994 118672567 815798262 946875972 999818066 532960851 588635223 968275520 999006937 490776397 965975705 179765179 692812410 541856457 671334765 412841272 601961710 502318564 797542028 656844329 997319483 629888966 990015416 442553406 457859215 122913769 950519703 698730172 742027624 289639084 956069835 221742628 570437266 36247270 362532608 569880107 670889773 519103067 883163278 759950792 880584509 617773540 849719242 455862305 569785193 616107358 801517944 356056422 612423584 774500015 900364166 606067157 808420823 56152828 123929799 983312336 990245185 56591967 595946558 102715032 887686719 621437823 673773680 564654063 848470642 612551986 622315664 91795553 712057427 216587944 404098199 509528903 943676490 179639821 553436920 86224078 493949523 444117509 571634552 8272415 544082624 11307537 310819806 443492924 977737985 636707035 798605347 188883018 939899076 955238129 963049722 773056644 810108136 529607207 692063930 754284415 767109464 940097657 987372837 131686426 303976561 542154085 709043155 794800615 982701061 455796791 702472171 220629506 418971754 536842923 866926419 354265583 531275936 45585740 306556837 190219825 554471546 784877916 995607666 72567239 575293259 455515021 866646540 384734775 991878538 830380427 959216775 89715683 389584777 93370074 537921998 117646442 354279210 755814962 978744214 483240493 489587021 952635283 997943838 262016980 668133472 501134381 793278630 696286437 917105354 416246723 772312500 676981287 825887830 378511707 765332281 586617001 903697986 77383347 348979201 55891751 963563487 128128730 768188302 261429661 665741092 220917970 902230282 877506698 964808702 217308895 783919705 319345710 490307498 21435322 871544413 871421425 994617625 913789775 939955781 302732306 903282702 369325708 795577756 199249183 645202324 712009320 747644860 680491205 943123679 842002482 871327786 356454370 864324713 226027051 433246489 570050684 935868916 478605436 528336239 146177020 761619274 430084929 535187941 224305738 280714787 143629672 659913975 667061929 694495446 427142147 544276589 842080968 950589755 493239730 849655245 791570778 823786916 492088690 553641695 874636967 943312679 543302493 705210604 421551934 567894084 15283922 580471960 61721066 326224871 399317283 752263002 326084981 652615105 457755155 770247245 578569462 859547972 232562693 253351475 951163364 971444798 152873193 458305542 124033038 383751232 204724841 775212498 151546686 890543825 50557613 417740663 527525724 841689187 811411237 880652979 422957704 712853447 992894019 995981021 689642568 723298550 863230134 983962231 500816173 824059261 79796692 726135451 596300805 931264979 54756680 956991647 657352792 963098339 138789273 242228194 486609912 794541623 670001110 890156843 964612067 989042971 68012835 676004203 739066778 948657198 5343060 417250383 902440953 929757733 802013225 848810387 514690084 758944663 119216374 851772423 956077055 985390389 932567853 973636208 117635218 683116510 215208717 397933460 955635681 964370738 747506843 964302052 609653987 697779398 204106773 622970216 492589738 834617561 516457660 861140062 197924781 772486985 739263173 806174068 581715867 757628509 600125244 740493799 741560853 825072841 453186786 989140209 660505315 788594503 368794093 458007940 973062566 978241009 884560503 926373423 13603226 975445960 206294314 754214440 235773802 855397536 52091828 503680422 105502852 528280321 849666601 967983618 965623250 988316027 143072937 157628600 279205299 788368639 43438148 659200006 481045608 659424818 518923733 915191043 24511098 164427765 808078072 902064271 143031383 854345364 388007642 832412653 282163566 665433606 493493932 862992137 527459157 809794483 336519634 818011777 765188547 847116668 320292128 941530835 354585167 784205497 441577049 504658947 940842597 986244693 933978440 992466042 266099836 876634620 625217619 937197722 184191749 301411170 221054760 242180352 95618106 873160707 138089239 636601376 909532775 924634867 429249907 980832830 874515973 937853425 835674931 996523591 296135454 671787009 168967919 574632441 503921217 847356205 515930469 892571834 923705476 991610452 289332668 296097803 169505777 336444709 301181176 789988932 870550701 898170356 666060493 865612632 741366930 888411161 405715120 476417057 112446524 964502302 597060043 608633820 336152928 909617211 151292433 268102897 215279045 853288098 737034834 907697267 680834164 850784398 589270787 802091617 54016421 183209652 438073637 861670619 840252730 874864561 202595751 727520371 768843726 871109445 293095982 318240419 756292456 990047578 372399008 862400323 230964856 671091370 516859344 704710182 800012518 803189713 924086760 985252966 121776494 215298379 425180589 830030651 565439972 761835736 763750870 952981425 736222832 830330522 465337426 736548746 9539883 40104854 407883360 696728954 749574701 849732160 168001525 878219107 429313134 874768993 978046734 998886677 381301713 902604009 703199077 744462069 390360487 721002758 987562157 990046962 748194117 847059703 241164400 915468690 877090920 994018282 724605541 803413039 771185010 969916430 834062755 970563542 477445635 728603174 324417265 364198528 4827124 578483421 720299887 828527094 271503562 635332789 780746436 892134255 506102358 931118370 600353449 800065900 531193411 757399100 336615454 879979702 698972954 742599449 883829349 933552144 623716473 949953655 766634722 836904340 958573770 978029116 674307495 977608506 425775903 866734940 738365159 984472245 174602937 808595776 449033467 643113206 669758806 815353079 390961074 940495307 32797810 245879405 253103364 763685990 254831288 466541585 329726075 543476529 63861474 536096510 986587022 998933804 947553774 998623242 249029250 903238399 37297558 748337793 52859766 561172529 982249020 985079857 554215065 814104658 435666873 991025202 300236599 931892453 630650423 917052873 293575210 378047709 335655426 735477211 740226566 988325744 935061587 996899147 835186561 933688515 224189397 288719477 366552256 793699316 838883324 943647060 200510810 605309761 328279557 674166132 379956226 772284443 483412984 735591165 94952943 475966663 113393739 213558186 293080096 421892559 450649587 902308586 233778267 368709262 227844912 716675619 133675069 513962420 966087249 983103623 27210188 415979697 506155537 809701952 654614825 782411810 376980790 580981163 824137040 962731791 225222342 457641576 665511923 720328673 33477885 357172078 889782330 946092527 568453651 702917119 412205411 854055997 811994554 863429345 676032758 703795314 275526086 369343821 285067246 386822652 287701380 909940100 115476769 998284917 906949812 931613490 57573362 588876055 988886398 993363084 265460847 417207655 411166901 621618754 673398913 921377550 45745317 525053772 485179724 732249142 232071957 585315353 264404316 445702340 202855349 537098666 60049737 969655208 821403045 978548051 841714794 964174956 871336017 977365239 570397976 987070183 666889595 875680565 234724703 946585546 751145563 928132808 887222244 967798694 319948973 449495876 136368556 204906845 977270029 990715911 566371821 670784429 797861813 990635268 445084680 952331312 745701290 812383290 599505962 869727239 624726531 680900401 918915032 939909079 170165008 834336855 707708800 771573729 939649176 939806962 219305391 269224896 735330707 763346916 807701095 995581702 185965344 719617233 802696708 817846139 536681430 710872489 319809970 384366584 53251829 622548805 845767987 960087640 468699537 528443778 298426091 315469971 628814660 792957683 518058477 774517426 583493933 877992915 142278486 556696935 204980126 362292686 840898562 962531594 363651857 385517328 271242670 762723288 162427318 273402457 637942164 802865662 808054040 925283860 43782292 756550641 401817025 909536816 665701966 918278218 978650589 989664705 165754867 419975306 129123067 678658972 489062001 846941497 728119486 740998444 851577854 985799480 832747412 877450853 305195905 362044892 427953790 991771040 676814709 801647094 526751932 653316032 960385539 966759021 854724860 876560950 858794038 899355218 858091504 897124150 61256706 646907956 848263066 893759435 125830785 711348087 860404593 924355641 462686691 915453273 343043325 505478509 959737509 987254527 559945286 825652719 669008655 907462391 993616450 998078036 62913084 975999223 758085479 891895339 763502719 819340432 777487483 881150749 723865100 987324908 683245084 748563161 75488874 105178003 259440283 379523289 116334518 925002791 783968295 834477453 851784590 973147580 62908423 399793357 107876446 323220106 895224797 920440849 73203506 208696564 368110539 662112380 105646098 532242975 963754037 986720195 509917625 747452862 961003162 971388903 477357291 684326421 236692035 704140481 387515318 635698274 152808473 912241826 581663946 686159659 469497041 726688986 144079942 717604419 969062929 996124879 332465117 874390511 616259013 653283859 443258589 949872560 810349582 821127040 802723159 929654508 690048921 763219652 509401552 567069510 49477483 868669888 629394250 685113881 899641367 908203431 862484527 909454026 649083110 801197160 502099026 937194206 574019275 983230063 479685601 510513558 189338871 462360962 779361490 942013959 422263608 996030948 221192191 780933684 756627894 781865099 668238241 941492218 874958834 923791767 748460793 966653663 18522342 250593252 617155106 752708132 534473780 612344228 263455088 835048267 361692696 497418496 332875665 451179185 503744383 614117131 781570290 919728196 539801316 619426997 565418343 698455644 408238855 671641570 28894586 141195478 296125653 901785472 232969817 325764782 44278904 680251343 211368880 998786452 26914258 964215590 482161779 698310009 399982191 803322599 253301908 635783057 834626820 991989985 772402217 854285659 587589630 597581441 842752328 968691267 661754204 717507202 716671690 905716252 842422541 949613060 20376132 339939597 688790165 709182346 809057967 821153021 758761902 762130145 9697715 610970509 865215588 908953105 94008143 559907800 481016973 972052878 563431057 620975970 561194774 844035839 645922854 657000171 939257012 944607217 312684078 842994563 499314797 695903416 770520395 802570688 158629507 399784381 564412391 790729578 939884317 958541801 927843425 954351114 449576093 876788062 827274978 838680619 270894867 305973505 194461191 949815619 598304376 932707049 509593045 914142214 770086545 847536926 820181266 996017290 187969335 922808883 814869007 898344144 552130258 591279146 206642882 483420186 717509377 926806097 178232062 310041059 517784807 808834241 180949094 876894947 291734351 344391792 567487134 575667998 76741019 347788735 25127984 742145904 680641397 814507328 626866142 779778705 369189621 629886467 362912915 509409408 897053800 915014331 22802119 415797189 640926311 853573031 621129676 664299068 658668224 849271143 334253235 401939173 941392590 970537936 920792934 947823304 313046979 516508706 624911921 939659645 868251544 955910702 68558917 354792049 687868479 697236107 343950535 353600338 414288081 534492210 170345125 846657170 521602160 610051947 50731369 606357619 82735765 416756364 891288605 962392618 275473667 614736449 866977562 922051704 966154379 999798333 115291003 568449705 769511083 849817999 759616753 983867688 746416139 784144260 578549923 930822390 466407721 471028911 831746506 850352784 872287146 884919992 297927002 586365210 412557352 442455506 136131417 611911811 689309397 881144609 117435598 851081778 766763555 951347159 608260316 633380437 416842935 548793738 807666995 836900035 70939091 405730182 983626194 997612029 615987389 926793695 963716748 984352776 973522328 997424465 488443130 816926831 460553889 601140499 288208121 661798892 546685072 812473368 9203989 472567337 445273428 783273466 898232241 986518177 365707283 708113150 320101167 647360198 57274157 404470394 967437900 997369452 397887225 415329295 655533469 693401054 216931192 429247731 821319815 946374221 727878549 775237204 390100508 456824411 350923619 787716313 316048253 857269369 186243479 759386914 716670473 955753880 921630067 952274500 972085317 980824137 695700296 933665133 364246371 518439271 199622621 729516870 79275601 172455903 865824252 960939307 878477297 885179863 251556910 497215445 136979117 577822860 965000034 984238935 496758568 601284265 594584975 767540313 416494368 959278553 139788979 519983308 338289119 688134466 781318615 869243285 743474140 855220599 467154709 653069766 410434599 521162167 446332963 588468308 638106549 863776700 891779993 989934070 205222209 704150458 69632634 125763934 691439236 889779278 571550738 685861598 775452925 865628966 635089855 859389751 503069810 811552083 103256159 329293640 812006060 816653469 390465325 739910995 700788036 784961509 395250789 559453704 222921835 563901511 188409027 267772928 83406624 490468870 200529749 345702829 303840576 841978334 400152636 584342669 59287801 519079121 969745368 976688188 725473690 972970477 396914219 401082804 511812683 799024803 806640772 836728468 673178288 884468937 822169684 875413871 39970567 57332373 9170403 268353608 912073390 971986964 587620795 912097862 86482991 905109295 478706702 598617944 571428831 678306890 286645792 582304636 577960913 831411368 290043867 932668279 226509316 359192092 17931791 721307278 957580526 998551760 272010562 758605223 324057012 636190212 564551395 745011643 711317182 810869470 555213692 783702159 758081553 832043043 512342096 833826534 177319777 924139899 642955425 873255563 497914786 696957982 839303016 969409657 431821386 731569992 147048684 924154987 883786847 912380314 120837281 297407512 557134167 742539446 978528199 995105092 386905162 461974776 365035726 972762555 772115194 786180963 283860384 941163018 975803418 984866995 424427775 463793388 796627248 796721426 945239810 989202009 529244680 929721034 214531459 803127160 745468837 806167017 422662061 847566901 495053691 925410333 251718385 377626919 529016752 691095246 765924098 993670841 991895001 994221892 623994266 695372006 380590377 495755516 692142049 811662055 282476522 592970725 341287885 715042819 484038332 534661532 818150230 847492001 844895122 977769939 73317736 757382217 245770293 766119978 274568757 992589925 363234556 911118870 145398626 965877933 115115930 297395216 447787630 812226743 143698539 750768097 269879365 351530344 450605915 590081742 355259895 826323041 127983180 767484539 812775872 907676984 773626992 963732152 323848185 579210329 740945706 894849726 648404164 667859527 511729276 847977823 19737439 117743496 11569790 350304983 857515366 931964881 459479882 716087159 788410421 879110767 734453020 849123519 76765506 671892848 589662363 649875186 5285637 106132254 56017584 915040827 89064569 695989099 460208629 644050397 287801178 866866226 791089373 877770053 154818049 555131798 394492523 726219057 724277569 923759566 417208344 519420465 306661854 800984636 105294134 650315504 586158759 977188010 405310244 644762945 849906043 885778468 963611588 980299132 815280293 865863862 798305961 921141609 694839755 969411702 803248695 817807060 283575506 786723791 593258281 683644278 236701877 988440416 984390755 994910430 878445563 890593554 875509599 989864119 936377833 973446615 959754042 965794026 140824081 418960548 603327130 791813407 835978802 897955591 758212564 960146053 737420401 886289360 628926750 890324402 159774753 164060031 441793235 693230695 328572596 762978126 317744798 576242192 374456170 831457967 902172095 970707532 989362612 999001441 755798393 820850614 154632088 588087782 124362578 633119278 49295151 898904860 738408993 946517538 63851177 573317698 889022899 960695291 476822675 624106132 394313233 528049454 441244448 608855147 214003731 758657617 400563683 990620630 609710790 725110186 655784038 798205153 579314938 859568390 944102733 953355160 272821501 713748501 204172788 863973707 537913801 566691786 123053283 218426668 507486796 786533590 36149912 852941006 888340340 971306594 448590935 915415408 84552859 574514725 336262031 947817273 933893873 968611235 366975898 390249627 144998179 327694512 209334354 970714830 597940803 794646764 874250439 955557388 452421348 909921252 361702018 431114072 740052429 776474907 206271979 327925781 16335410 446243970 548005567 896051009 590926497 607393995 98180458 793934116 145345649 599919253 621071915 721989420 408307146 482688833 504047150 591567558 385997597 475208138 661621315 754479731 577699021 649674633 152582863 446393167 582247034 826018152 831965337 930258950 826504261 898479667 54964012 376602692 324438129 561610166 523514130 856214289 876824691 884670770 775501557 879363503 938526749 949289995 941582735 981045355 221974003 484314973 789908946 890507413 195893575 682511281 726849631 775899821 735086267 975060662 821586835 877993698 693320406 981905753 932555948 976978636 256563501 340825082 800045509 915668099 402349345 532346526 892056106 967174265 707887310 916019106 972652308 986357391 320815191 458810278 474876309 700105459 21888208 893872766 731933409 876224891 849970356 995645760 778405608 869241788 326251899 545670984 934516573 997309853 453898113 645434693 704651518 969326234 274526961 352649854 913569534 922265139 940729674 984279398 633261097 999301905 403800223 933354760 583953467 609319926 868694828 944985577 938717781 958424635 107059192 766244234 406461331 528671216 507655104 723766601 440931328 554621958 694828559 998729351 101346236 946600731 643161309 928902428 254565286 287595422 202707214 817207462 76080086 792459452 803217222 915264017 20503334 586331300 110768727 151098943 801967313 910569852 146982458 698508179 560779000 653064528 74965639 178528514 404376544 734328282 112954064 294980548 23655110 582578570 627752471 708375807 996811546 998797500 691192866 964492180 250475780 665103441 412730657 699623962 796840554 984322411 275214591 722383967 765277697 868908803 638499718 654563150 647977465 874550373 697762426 866548185 211849932 400574841 405806588 855448617 240509965 937173586 260690774 595263068 949428130 998605163 969663997 970495599 509215208 826410243 782184797 836876874 386457565 935580537 386373626 507660743 976205174 985253861 765050440 943366445 935267507 952769946 613412754 745172893 775153474 969396001 49906313 318198577 570216367 953571909 724642801 821902309 800822700 813548235 101839209 711576517 129377603 481587610 117036577 381660245 884056511 902504236 944689312 946712576 933370355 948838363 241957337 580624811 412610974 852170524 965007278 985064230 363081946 953300355 362598462 624870213 81960119 819198277 669309342 671103650 538089079 961576038 496591747 822541716 481179068 876405324 530801886 603825297 901678874 932230862 801864843 890927353 875328055 932794567 626363784 955142526 368628116 689061098 662643037 979758298 281839040 580128802 768181769 967371862 737064341 798556106 371416600 942904809 659365326 751434188 461110902 564204360 623212583 764335173 368378070 593350541 562216045 913073162 117292124 580205104 913108207 971404314 511882974 608279889 477840563 770784697 835878246 960695199 915690876 937509166 81657007 965748532 790638965 797472300 43001237 694357550 680424366 739022743 733075411 997347884 589788216 645586736 490924871 635596514 762693537 914060227 417951710 890240409 421028263 837010495 363571784 518295948 948798561 950375129 3533842 391561782 669980838 803860095 974719369 983716036 139960791 321300894 16400204 804157142 664671318 753668225 239934491 740112079 681479925 782875699 593158970 826698490 623651579 960861219 932976582 983975281 894882592 907259015 210730296 287279024 476664415 531663359 596314676 970108652 440884607 664502125 979420538 984601830 61826795 783343482 15553614 129266913 954548377 997590447 227987367 351330579 756620387 965659529 712220440 885053712 357287126 694885727 945274104 977195233 910372192 974560447 236545870 795081396 448673407 950752171 775926934 928467696 61797432 911122887 93515388 142382922 952019384 997189122 365832328 613059925 541595653 670328684 815869966 942961054 316357298 823821995 618482069 624838999 354012670 799581638 623579029 771314788 302847251 495546892 911296740 979275361 638045407 733570958 171075488 451726841 555194793 602251291 975761688 994724611 769702526 847427910 705020025 716165856 862743246 992267851 451131872 537665528 663726252 768133494 688837267 792279959 560790147 800013980 522067676 763898483 668411968 786120204 945250881 961106760 403059723 456883561 649256011 672789974 102825468 151248836 154861974 533501138 564794918 930080749 238775513 774064872 615786909 801110209 873681088 938796928 413550632 805063522 778883971 844446338 255621311 541539452 712324380 812753764 851668190 872205543 513646470 963237244 887712739 911260489 247046650 401662426 550466648 852205642 482229695 748107042 726583147 987492225 682544384 943375860 338968058 822016418 830390977 832734151 512006275 920520281 810504178 968589322 719233344 905693823 880213 409520190 906309191 962036326 589120639 668160175 880996118 995646424 647097948 694529374 726046908 742482913 75140332 282812606 18047787 586560853 77534186 816770763 951304684 957224189 537397144 839661368 209734656 635481000 638521927 801190792 359322161 698654210 501359836 641220638 846757751 999904189 311093186 797891020 445176320 597533245 43542921 265069585 125837255 300653262 651376854 842401068 527018818 642083567 988309549 996276134 297761835 679470808 240377370 401083923 126314673 241712356 288290960 461565852 436531010 892437780 700191162 887644798 490152874 989007811 352015355 435798907 266756673 601593054 901552090 974007247 741032081 811620748 292629118 659629244 972503920 985674990 200905052 238289002 928136762 974447107 46544598 117402645 160085615 519004372 866874951 976489210 877149434 907024749 274666146 964051155 579153820 788067441 974797017 976365644 869097842 939667967 619433728 862128796 244678606 659795811 407778907 647231287 255202182 646812770 244004189 278717041 134368487 371679702 978994960 999713542 453752456 584279358 991660896 996860505 7487578 595978692 174136507 534572524 485297108 532340640 311610867 427236876 165724373 240684612 604238086 743141214 735923193 793950029 423463035 655694445 966436831 992813544 731038460 863707153 458865833 562197847 307987619 729374220 969271054 975570653 753176948 838653260 918489977 946498889 780351854 944383546 285034276 821269670 517673104 539851011 356662325 600146158 708333406 882785819 642417506 848758818 374813141 437901480 679444866 843009340 719307765 848777211 126039216 927988826 91239670 648159373 964641245 975956838 287582914 529220912 131204389 963558446 878629928 932371869 859836434 943115358 169638734 724630299 960191894 960505559 920402554 924809485 346745863 763736156 722511404 802904335 942998292 946021827 574723222 827138894 215262360 629787743 285310068 973019749 15297891 930623953 32349184 695866446 950277223 993687493 423095005 845092805 741594582 828020250 646581782 679700429 89280563 992976170 19181003 408978571 202392693 543210616 676164872 819858624 598196940 984784674 26413111 300506964 23363527 72932843 359609039 369024756 20205533 443059057 420617116 584003898 858888393 870451685 769702069 838419324 103073462 491461292 816888095 995498532 945660527 990209737 125201337 373145473 95775630 108477248 103627531 235416816 911155859 989477642 58501191 494047618 183899325 275461488 122629180 407451287 819279716 902785213 979550061 990707105 441900356 998203517 418646579 728505704 507143443 575214469 445332525 825982420 852056936 855167440 330609310 843557950 15100357 850694084 162463158 426960715 449168611 498587258 794948776 994166473 42076428 849556762 547076594 988579073 690712950 790197266 736555870 878456437 466253337 925429790 977653007 980134998 205822933 443001743 372948480 672480081 916482748 944539833 457704472 759510106 243053732 956932208 540432566 545162524 208177385 824921804 950422741 994639858 996027765 999297606 268199834 890476198 670534868 993778468 45501502 970274934 587696756 690365719 576167514 921166952 586810623 830405487 64792851 317891211 145454706 276248589 576511986 584728641 773125696 979056639 593332448 905551649 932939356 944947004 401945396 996374516 391212254 571396799 175671402 719709952 579514874 910489496 124841605 758882925 931295702 991946230 758572997 773096254 844320604 857366961 594187580 612055298 553214591 999953849 643066869 763235808 618005841 638899976 214518300 261452153 473952991 736970932 160166254 323001535 953778970 987451711 26805283 201798390 989315906 998646154 455760472 804638283 824230438 848064305 892648367 987968139 126365472 601514320 675604308 882594253 912164509 922272851 908477809 971520877 268374998 568931726 538624109 947301481 900051984 958285902 151282916 970267382 445478493 914472864 987446004 996378016 963565966 987056440 680097111 912788207 557121326 999173238 403414333 706065006 910776974 912336382 306810753 392778303 722657194 815816002 987854222 999498771 813174481 950903972 239377033 416962407 825775575 888802635 790737592 812305243 897828696 980994843 1365991 756627387 67462648 553714715 199988513 461412120 504274164 695069663 665546742 800689338 478973614 504978679 319295692 637316650 822536707 936925427 497038840 937603976 414966930 655043380 767912744 882314701 45438893 360984776 428968236 784614976 2973983 24517431 678597210 859635239 35961718 313878115 420981701 636118077 618752702 623506522 605898183 913736271 758092326 809007880 936163685 982584660 360381554 699560631 512673914 734496341 735826487 736119416 256019747 573100379 623502060 826633857 567038592 783095585 29508129 455930557 343742002 649656846 290701444 954570492 822203680 898964416 559515106 700567758 226189639 303231440 784403634 879357642 939157458 964101417 222636169 768825617 345810510 879167128 700205839 965438798 136095286 611590147 672855394 852522751 623188740 804588438 960899407 968570889 71504775 243784601 953021824 987699918 449784124 506977037 828345078 862166820 638803365 911133902 569867434 852243244 932787901 958154288 276375495 919273559 748144412 855052318 283792035 775072089 841343814 951389999 499962512 575032124 257237179 259137482 285150156 404607680 590840482 651797554 373928256 800357053 953320623 983684457 265702092 907830614 445600474 684403389 45913714 979352721 17442554 404381524 370249108 678772188 132804395 684007488 910568521 999073340 686049590 811812758 988520264 999672419 187243790 332983237 75943982 203263798 299416882 329724589 427736786 535178714 442099763 821665520 69695336 597111284 182246210 424127442 911598539 977363114 622412872 695857570 255806896 374146399 992073623 998209620 549321567 655756906 640619119 902086745 139700295 656990511 777195755 885520458 916568557 975172099 561721465 650458473 684156809 781561692 814583848 985357295 953588561 967881226 892822196 983276255 370552031 759391832 762963582 801959507 234045709 724758860 312413420 408194442 973541587 982178994 510569534 701922322 283022190 460839963 751474434 931363593 884494530 959883670 165316512 220809914 269332536 552551341 835164991 939127984 887770429 935323638 422957815 802861822 373172869 440384480 353632878 832208565 522183869 972976733 825321596 939629841 878378880 964652689 559417183 594592169 594841907 646026957 611551703 945145919 229747719 525846011 476295866 572975331 864482595 905246623 474599403 652978520 845110506 933526795 228954791 653357134 836365220 845747658 465555046 921689400 621506385 798789241 152872636 339665037 536143435 580422965 848802453 890132086 991977253 999376905 981823793 988541592 949303128 980964759 960234527 973861094 618050273 829938200 416778791 840936253 392620435 874004008 873166728 912665392 584473960 745927133 590984382 600944987 491848366 800897361 418744234 632105170 89750257 496765935 544482789 984837857 244585607 771254454 1036660 432262505 540881121 980005184 413821547 508755768 511607590 683787832 939008534 952800440 872293810 934824546 342165424 712683574 740603080 892010776 686155954 736871323 597365890 703580850 997859873 997875306 450714477 704648160 414557891 457022965 773854505 804335095 224612115 318396847 801468297 950698203 983189243 991040063 415412807 494090922 667817701 904506161 13386823 54254293 71993871 385657825 142983140 796864390 226060583 514948532 585804266 879520411 513732427 922797735 438120112 750979865 725609913 837558758 448921257 797709797 424760153 650375339 583098691 762825598 595097512 753556233 582026122 701330207 79093488 983696304 953282554 986579470 551484743 786132988 590073909 726525339 864781322 881452991 862150192 970327942 292919160 334429993 164110189 772766894 812095638 920614348 389300896 749477618 153508302 199357509 33268201 768579957 356938037 508723872 713032907 930597062 528413331 591173297 523490091 696103971 269787749 347899782 602085294 798254570 44620071 838113448 209681437 498576939 423446223 768864872 279569512 909448841 48917973 662416600 323878270 626399267 228087126 717512018 803622787 914823251 335473872 561003662 84256121 875354232 298695316 673322966 412298135 577480688 204505801 771447679 850592857 955828019 37890558 995074642 981564527 984183285 449902640 787842132 145015698 439488536 850635408 881747609 156787561 828793587 12214999 184272245 666789190 691609099 557004399 887910656 556900334 851443520 855212966 981799988 400152266 745867837 467910295 918342990 853745754 891365005 555810596 882217295 464299844 888720070 5449364 476518875 743254246 786254161 204610246 943674341 399809262 444781159 730495353 992325622 576633406 785347453 200756898 858647947 63375508 778908834 577301120 699785873 186420058 812300908 111921753 691897167 968837576 991290146 832195249 997672968 486642122 997483110 518389940 983418712 311969328 898785370 50364365 303088278 502150759 875075543 306860748 971216021 839292477 999607206 82100029 185651991 790788822 877260894 684323909 877971969 358908198 607906990 402449226 850257699 757884897 964600309 199690061 532033651 910816001 967974123 494370981 935293720 910800602 916410202 540712194 912035160 696614494 855609561 376058855 479921877 783859262 914558996 363060154 537214928 954627501 985260315 301353737 436017971 355215798 569694064 865448394 929735303 283001655 662587589 970372182 992537536 401864069 716606604 572126027 856752163 602241043 800372238 497448540 876666985 990735827 997744834 885370538 964192816 7333244 828819116 983315735 993105265 29850254 218591426 683481184 833500813 7661180 343707438 354811982 449800566 535510882 581653867 709407354 755736588 190775849 992423612 546167585 684570634 741771055 876627736 668689726 898638503 503981367 722764385 433042734 532736206 742046053 974278152 351797602 519967618 376345155 474588909 512932719 738086149 335605513 381385147 908016836 955702169 936055241 986541174 199763247 531413868 123667554 400299549 959986882 965274743 461360935 471757357 104260950 407964772 152578346 704470394 268980409 901214512 37485111 737850856 797218940 828880348 44309036 744758862 572223638 955073080 981130938 999275842 525714540 682229934 453956723 933776308 25380046 770615978 615228600 703574996 689760664 979355622 287534758 605351393 719526905 785663621 744412237 757746462 221598047 792614495 879090868 982211011 778473205 904378102 140657819 862745430 289573968 619239310 948083395 969582020 343399581 745590518 907694507 938674033 415810269 750506246 115080656 978690240 741085164 991963639 919947092 970605742 265585370 550352068 694054020 813603645 985894993 997691886 175024135 855137398 66284756 575452407 704110535 717284720 480515448 687696536 943435834 943591670 508759279 624913981 864671319 933596260 276760450 928493303 914533802 966648292 798521864 808963020 860739866 884498882 81285515 555769757 826593035 999404137 263897561 465958243 756030453 883666490 529994172 633279511 65894487 945962306 873061427 921075480 116119586 482687378 38908878 133522151 124409072 697926852 384131560 945788882 776303864 998882430 86106186 791930764 879490486 933039220 425739322 818870020 763007243 977224466 702351984 806494021 864584676 962387079 77533779 491352358 863725184 959607030 19368105 826734971 955098715 961055107 25425538 897595588 932085123 969296743 731118516 956341926 334691526 669241456 359240944 956349716 776733057 976299237 63363958 525253795 297410893 443611591 554996902 600379572 524543539 859422186 739298992 976164900 611591498 999409978 353964544 425145045 597003105 738227481 830270199 892908149 41004340 643350980 683107443 915804306 205322041 811607000 194029712 760660864 775845474 976499924 728758012 828381875 241039566 733727244 558065018 893089290 649115621 726901244 551723236 719860807 810460769 845520874 758132926 946536355 120204809 364558095 787091763 812393995 847184528 980510329 304182411 488627464 237939857 953326281 246495662 738271490 43009472 693007838 588197162 773037857 494624509 806058925 920067234 952663531 614727120 878446976 646370302 712105827 930256318 988635096 316469211 613702166 105692717 795465509 958421542 970190714 400888336 674347306 389386317 708545829 68262539 95256827 69695202 867793498 94285669 996002492 921307946 921359020 812076056 978500907 283833246 350099527 485465457 764273069 450561461 466699741 57134164 620228116 975697780 991626444 933375047 979335514 825442183 885204155 912126770 922859438 183890774 950524054 900646465 934393050 920137599 939934988 9201016 950466465 547873535 926154635 238035539 637077290 432072027 502683745 81856972 168146825 625411901 824863264 906646613 965677103 451606173 467070921 467004917 984647982 481169738 666942265 317100884 827307250 605734157 880577663 320746890 966509115 180049202 299745219 94741539 744385873 314357318 911410311 896090378 907923946 858586542 974390728 638116196 713635319 838589407 892801788 496927153 641890177 356162043 844077187 36158830 122456618 18181087 791220426 541468633 844909585 150149083 596349789 395492445 476845440 819440701 890975365 62938803 547790963 679120890 726126677 472279238 511483532 839589009 883221881 470174304 742013552 233053779 710691470 708552722 845909588 82084115 87649316 557597800 710356724 187547704 860091258 5192258 479912084 825519247 939869829 827953348 864443001 955257199 999217295 19758054 975469090 863781628 931695919 711730897 863283536 239699576 823609699 471030639 519656038 642321027 841814884 455377755 563382614 704816422 907388368 401226400 651462507 286604692 808781023 307517673 887270663 980786318 984439459 866234501 932556744 128214943 928123237 780283359 848311269 577497528 951018007 848472718 900164865 567394862 789605319 519401681 784443224 245951844 354583653 16226662 994010746 686025122 745673322 161774985 968094717 672447252 997757613 341846461 747644319 373945792 614485476 504261668 923746327 414174325 828916540 343216874 571048051 784201588 968229781 13942705 111052948 144407423 711854223 459638068 914099212 352265399 957154081 824994509 917461838 550297267 630544373 634467668 698758087 871774417 976161973 118837332 942042448 154835773 603068287 595081547 741215229 28669046 30866482 932152431 988017057 87067017 183379922 3684274 722857400 129384951 291040042 285052039 927919552 30721211 815706715 471195753 862246487 520047125 531393886 940178830 952955767 173125254 786343875 311410803 902974162 158882443 842348066 491575392 970244763 441851462 682280335 369955005 551221890 995434253 999068374 972383507 975333855 452873665 824220397 52848994 690088853 52031798 930415470 48860613 348413760 42989829 373247197 524379322 548208006 923800161 973399872 892525272 996511645 398225034 901514086 545159230 719178085 672907219 689649031 667728702 879719647 367581901 790132485 959272840 968011785 656570206 762143040 61811693 682683040 399216578 772904624 209394465 988144819 387780832 453241846 789016118 943813429 752810052 786057213 506275580 622767481 351486738 889962376 28444513 614914124 49611323 222764328 854705993 990529169 9669900 860332576 34182506 291023621 815686825 824363712 586086250 589715742 855919488 882339552 380370247 412437057 703439953 833913204 643190257 939778196 17401434 118700803 894333596 964447477 551097143 693265513 58710262 698301728 184293587 684929051 332628093 606684648 222810312 990783655 870555633 893186022 18910243 549408440 644205578 827899267 594978703 629632116 521350216 853478415 43026954 89831790 308954559 573671054 797638130 924483133 639245945 808214594 395419257 496810705 182090943 844183159 646796164 885042855 888139244 942883763 57751137 673767743 30470158 120397087 57405503 530171025 964873058 986692183 555579649 808061865 728845933 832276974 272551552 889750719 476762469 725688967 869669320 948694194 447375313 460261625 190263977 206376066 966258030 997892567 512728959 759134070 511532969 641479839 397381711 487463379 727315512 819551433 722695330 727381052 1804130 204284412 459862840 553503312 23378830 740356431 649065604 968562514 970579528 983319936 590148697 646169035 323227863 815979588 955528162 961297282 184443217 424650708 829537006 840777905 112214942 757795191 699494047 742892370 93731981 599323597 816539246 898167619 719667706 832070824 492692803 660477214 701128954 769995011 830282281 998300891 732189365 904082339 386023610 471181510 323385046 353543655 206731734 462373810 206940881 448015881 675599418 776565449 621703102 971478473 817373661 964196157 752293927 940125191 839586582 848374758 185108724 908615091 896435120 993445012 521722042 588329519 516655637 774860941 85599780 954693032 521819828 913880957 950239041 971198743 999897616 999979867 90236031 317537808 885441010 990784993 873116760 930324852 290697069 878614528 237568480 349473801 310474236 710157388 879494683 938161517 3346408 705684943 799247537 889199159 793857250 967463769 687157128 752977948 86340503 455970754 164367021 557974764 408117862 648966472 849579634 852013222 850753476 915185775 285273926 573855928 292691824 928065404 117318054 393027692 430837438 836998281 846616297 906627854 647706420 858952233 399623151 775353866 138371579 758568265 477162127 837432824 795853910 973539089 99197243 478703928 151092848 866312821 350315637 869790859 594076572 615186242 477503493 892313371 680835685 719877132 392419053 427222741 121704285 849119351 488106623 592850095 193151508 993982215 13134055 386706704 471087656 668996474 229505714 479642969 248156867 524264843 286292023 649646203 472481669 762792227 879591387 918372979 163124686 467430623 539536819 750007447 137989382 548600704 717086018 820679885 507606152 618144710 360977073 645203905 205007490 923908690 171388487 516614462 952700237 980670731 102577057 197199956 29213154 748635186 895186394 903994404 758478145 853097352 918934661 946622841 946239937 949611628 281571029 507390335 195563095 502744897 794011480 943355166 528497419 696178959 757744212 922154929 440357752 585539406 919025428 962780221 389472367 903313539 995231166 996257975 710547046 757215238 336864627 417119294 6272433 480562711 495015366 987447189 60227313 501907102 325649963 471059248 278721016 988126872 511786069 803876085 609882132 934316321 689278887 907775687 786440545 877323757 407836689 808641985 569332094 978388778 623537411 906958744 189216086 518957953 660478135 663243693 825873095 954945128 866730050 921652077 379176665 943256438 940008142 977377606 10971029 343252405 380520668 385294433 50017423 66084620 723831014 977007702 877171717 920896007 254225382 310321514 566344071 831818128 764079271 837138623 798941219 807224895 574683311 845730267 733109483 869555501 667410737 731634573 268952066 727311603 287586793 854397104 531008606 942341736 440009512 556512100 486471731 911349933 936389318 947556083 644361314 774929575 711395583 783721753 477059033 838934400 83741773 449718310 777293834 880167106 287087635 530876798 924522683 951579033 320156189 450518871 126522042 533765022 802210187 872962143 562576633 895434878 828817366 927695173 745986242 834107082 204937944 363881822 630811473 943075033 299505244 683102587 535667409 558310464 294256060 516623876 157069444 623511669 265325140 999875240 212094988 310639163 217608966 828239530 717234126 784491488 257966289 678365928 548287752 591772233 832306391 879703540 613643992 942203942 139754805 442281587 636921889 697474220 323013630 489473668 928212568 997992002 944814621 958273316 690521778 814342543 621386504 906016109 11951290 669664872 458546210 974272691 182193600 264103196 11596384 651696694 533677886 785960328 457733190 638181092 959037825 986909781 124325131 213249042 307665414 904149155 905921545 996413979 184241709 657134880 876346406 901235152 900684191 972331795 810793577 992425529 851820776 917661656 963871580 994878775 202262669 571482750 46551232 891191925 784824086 888714296 435137986 540739710 465622494 928584937 389838904 862469454 801631676 858762052 218612880 868952196 704373349 900803583 986348526 993425234 88110873 949164056 257412952 840022851 369567533 963513383 463022487 686607173 941490620 992748514 216139144 262058426 435586062 809370649 502858931 750970352 480019428 583061466 179874999 298002551 628542597 830472645 459991199 551706601 516504788 587852209 397595424 532378372 742682466 890952680 328395459 434254697 910369662 970210855 8584814 825677313 786132454 973743224 478746032 765540386 333777115 515351543 60336641 705105311 449538049 608642528 212380062 457949453 813309490 948707786 967399640 992739479 769019140 934046847 862986845 958792811 965276170 974305612 575474008 649112940 806983031 901473679 900846906 970984923 696663059 836471749 338840016 875710369 426904249 775116309 417370774 830958667 373420663 938557777 85234033 734717701 28971506 351341406 705343213 969793522 576053571 761302138 92760728 568780989 124493851 701397506 667733114 835421660 700678452 819011296 706888562 999881515 403535668 771529502 395236442 449261116 358207834 415346570 859518567 879932986 10716372 151372964 123126616 385785144 806593810 947329436 335544815 535943922 826797725 972737011 708198505 858968497 344811705 823637763 916681228 920083850 200733757 436062302 750162746 920302702 572842973 903066859 58043030 539525084 25566009 157078940 467778271 468064099 131557239 193792944 341138302 636586807 16078596 910493643 561494401 638862188 239093876 890503214 953078240 990388764 600401365 843500302 139373471 953063644 517839415 656391611 899767209 936395316 614726486 694988852 860952867 912782590 814629053 961205569 508512641 675863053 286289236 766961950 416356662 958936836 513402701 978607831 516304112 661991438 553404116 871172278 676843631 731151001 979601907 998664420 936197841 994034458 329075467 558406050 448866018 895559532 385308431 938761193 917731888 935198960 547419275 579971381 905442631 927281651 758421251 818296981 130470012 964206407 293394207 961582170 502796606 761283231 304021797 832370777 234147425 554875147 638256048 799031114 861051936 867076744 455478468 549160125 403412385 986080156 202566747 617671249 145854345 963462603 691556875 831577227 130198594 991611113 38046377 172966421 373899267 995844511 15655525 899519560 31079119 791140894 861763059 982065059 410070080 538049606 633059097 746563296 719795868 875827807 596048729 882364259 580075804 996236700 772857354 892280817 621464513 860244618 32497334 325463680 991136738 994560056 118702744 256930468 316925639 508226872 34330794 68058978 549336142 624315350 102841157 855195831 859378661 955352881 827327289 943620984 363861579 500790818 912343472 953214129 541007783 803973979 326437053 710226259 390484380 936396935 436147062 777256844 393833466 826348560 158155914 593997329 648821657 986919375 513756340 727770770 528465014 655297557 893844659 903366373 322694865 412241110 330088472 592620556 611239395 778937512 125523686 370476556 74072575 412992290 244762506 295643228 398993973 632958167 1957895 532940097 147341788 987323658 839187449 949261917 938474373 995779085 139810973 290085709 659547141 735637761 206224155 712651530 401935484 857577096 972562452 994267624 352948916 400750318 428690123 961615186 370124822 663746666 207637151 677783946 801663011 845558259 976094782 981951464 907923520 973008520 278928237 787550813 549865291 944344780 414195932 974613593 296123908 912110187 978437186 996534570 288753399 352399945 262483306 646223881 299327358 395842044 810602990 867717412 589616201 696209934 530348133 926676730 161852050 613209308 336273973 627112684 260378460 355680714 176052224 729722080 147410426 832748789 896613151 934610441 352031062 430226194 827219768 944577683 186287779 881158532 960747054 968692444 803027886 888223881 257432897 651466483 892788493 909566969 356763400 979120976 52059242 476576385 876586516 887951855 877840892 968920200 894475270 904984546 338316880 994304723 478128091 586510024 227004559 402696077 151984562 812978710 822813449 929355571 814217922 886764545 377673743 924764429 337243955 448546589 143909565 793319416 863242023 884030353 938980424 976356228 400971802 456134384 533379627 736944349 590576252 644752490 755358417 838234021 756112802 997184410 228260344 785736147 626491509 729337303 71029812 580002972 205921119 815961546 423372748 967925529 478468379 546687785 865358246 973691676 420661836 534292035 845113900 958618528 247403205 340348790 936381398 960783860 135113569 489404688 612439484 878651756 692475707 940451469 873441995 876112145 596538663 996507920 355802927 803584767 773998595 955112984 251702973 804543714 875926955 888746305 433194056 513008999 97306064 888219050 705675936 745012819 189069007 729066774 641018939 990686305 185811550 625909431 259767341 776564328 677826141 997210743 261092316 896143148 369701148 950680672 467177507 701274080 101322827 828149936 442249430 750789410 626863486 776980027 671292999 763121916 931801511 956176371 205587320 874387131 684834126 900867801 820175738 949894283 347571024 491758391 925696471 981748728 893971507 935383326 191972960 440627095 225736964 386649364 277246941 843717205 251331480 715771473 49695609 348557944 358941192 523040157 222099598 492274997 859771191 898672842 993401785 996008150 449252537 823586025 784536030 985808649 334294353 631223902 391909027 487789215 36073157 296445328 404149866 443285804 353233511 408800585 788553675 804736357 170288322 329918018 925436984 961175810 649423665 923942499 723396164 837620143 818160080 884757833 801511847 957372352 247209686 668872709 575854313 679335008 197399049 574319817 817179 542338429 914487418 932824026 554299056 645615270 597704509 873747697 996741249 997780549 210857923 708104302 19648735 706364439 549983806 903939526 75378937 274969888 371478148 840503641 845155109 941372419 679000309 864585748 595918240 906529456 512905842 734195970 208731398 357443823 279840609 939257719 825967851 853718155 39256836 111902228 266578814 441134216 650801180 915909587 737811424 920449952 779396418 818557374 367309708 920761796 279769975 468107715 20578554 578022178 669913889 916464970 79122103 713247703 690723001 893672519 80994058 594245151 486186281 747264729 938125692 954655216 476528144 559017860 703261632 813913673 94684848 690075079 599659158 794093243 791230174 951965442 107826851 167142554 86911953 428569646 78850266 667434810 758774375 922761183 633712952 912948506 325319987 980678056 268022580 865162389 375232366 428004867 657824324 975020392 705806722 730907437 736595508 918950585 791517518 879915035 330479024 877409766 335807360 823883271 695503909 776326049 343705879 775948428 604994654 719929854 301475027 555497671 306351804 912138214 935713780 966539682 205509211 444590710 734028822 870081777 2942121 145314695 640928308 675473638 570524663 787336274 628793222 630590832 583878258 603082862 713043576 733332093 51475973 194697184 315584106 483293545 185400657 946454159 227926177 316975475 673131922 972827123 588540474 696600143 474632518 872698105 746597380 985591080 510839737 762689172 943592979 959310986 846669774 922848697 308839793 452342224 769294434 886089670 701128143 745182931 261277747 624765512 346397640 553180068 611880246 776461180 712606056 925313671 707725702 761921454 929623155 984849314 69873788 796920995 565841679 958987023 420533513 434486742 706575500 791217915 899996349 935851711 239368247 998130309 797294399 882913681 702506143 873246736 589787429 997616620 224265672 909496639 683300092 859612401 874232869 917459159 437207677 802503074 541980921 999568447 636842992 676344193 207290238 293802078 868315787 973594210 103226056 662097597 704705420 919615431 439186618 930849463 506909007 778990134 84215922 806821896 913065909 991521695 442737799 998305330 176472168 911970708 812386726 917281741 303168142 928610136 102556410 239399935 883248297 914737715 125388037 790045535 781411118 934554174 70124082 425241911 304589053 449837014 794166682 906555553 909661436 963978102 151892211 248211247 707804972 982269357 752357965 805516303 250906700 656537280 106009712 725435201 877512189 931181699 596441724 897791273 882463344 893305157 825166765 955389822 933659667 968429893 733249340 934024106 548669461 774948326 261783643 412081172 903940851 978795528 527801525 952372439 594443401 825683629 509176657 583684235 274101523 326868002 318327816 734520451 818938664 844813381 249176940 333423355 41559238 71740868 528901015 590977592 95704701 493184945 109601378 607187701 207542369 469085965 47553383 737899655 678346682 755857841 599973980 757106097 463098871 962500587 939962834 976899851 250639701 957851385 234205268 787838690 303094387 973043203 138205884 312193814 587330997 948507482 351010806 601942735 606447638 753104808 479717391 713980542 498966239 514191043 264479288 506809232 877962967 930811369 650701281 977983459 374443512 793489797 558933600 628788667 399652305 830883029 658127481 694555648 47882362 740865210 828657456 854280444 199574210 611531402 544472296 925256012 124298198 770372121 646339910 732248838 993649505 997716711 873354289 919331422 144681893 151717241 726631423 735272059 318341149 836400899 871384292 885177254 769998776 964384662 195142728 307923892 154667230 388764459 462702444 921263595 101670281 306751705 257737633 606076291 367265259 897525508 997523068 998826507 675433995 986313484 226355179 401068567 60684354 67572287 927690829 980470081 172704325 190185634 257231585 376681086 297894109 394500244 439874744 692542587 259275342 504737532 19447954 831854639 310095686 461719904 355510084 868593157 375528218 690085018 711057281 725387938 345801055 477204045 157566952 431103677 246000920 762002521 591303528 618656464 937403047 950011051 249159284 401285331 51194591 135296860 613008295 938247872 945311797 972440418 689861699 792501064 302371554 820411547 924677428 984706245 32266069 305295413 891837077 974196998 442285013 810176456 167945902 959771769 417599431 950625264 366800910 411772631 51434241 712813270 188446526 718485062 691721521 998433649 639490850 861213696 931031452 955084956 302925086 756612838 215509139 980877074 310676177 838203404 146761021 458292988 67842404 79458335 22821037 487572988 209598231 236649526 404706685 585940342 141523805 162737922 687605750 920601086 427477762 544448641 539524636 955507136 503130083 953233204 729856971 885901377 830415479 893810296 137424924 875020751 574724140 696530571 818638955 837817984 183455822 774740630 276312618 883814758 839135859 909460196 521956015 524673987 145785748 547002993 987302761 991040947 463045789 693058286 557773462 607834663 262884779 835705024 596117506 921807590 536885625 997367008 886302437 979506834 945589802 991231414 120722533 189180817 68232344 460029027 28922474 458147241 183572911 324675018 553977066 661728376 897229229 935727673 333576769 375871782 215941873 414190562 76633697 440528286 269565612 407989016 23575404 232972536 805204564 925380368 250830492 913469664 428896699 638977954 4704776 380864120 363275670 800436248 614722702 789820173 105784386 690257267 817929644 971450536 37181361 670822925 21489696 525447015 369699603 547268108 585932541 889369399 223439711 353621869 875743254 960659109 848338023 890222478 867107883 924528111 425655896 926663163 531360471 648510373 6601089 302002145 978228799 978647711 357479739 496313574 877492982 878791013 836184480 926132182 228312631 408122160 811455124 907128190 104199204 840882927 275372985 951249961 352485489 734017002 289398730 704574205 463776369 477621081 472449295 549981686 495687524 603663306 268011019 560669358 621674066 831427561 659154429 727632857 528149980 874259819 218855160 970080480 866918197 870968291 168586042 831646243 276816438 932666895 629007916 924913725 909621743 990010103 741869787 769335733 308219076 925184320 731097668 976706176 205506846 619213512 372323395 463686936 468898886 617149337 830824543 915928494 608722788 797404236 145277026 792509495 769673623 820403760 304029311 902994762 701253795 918639089 693482296 860912722 582608089 791461313 490912047 690203791 418665562 701929290 379090384 826410353 125357404 534369848 829704335 830608825 544061039 995889435 739101658 970054706 771629348 843561658 649940009 911967562 795762645 912962401 912653833 920167219 843887165 910490119 455878067 883916263 483395014 714693017 942704431 971081881 442404391 669426062 554348913 606740007 320435465 594088009 338646765 505551735 586762380 598607488 109782466 653941666 680091402 853102249 386606870 685527662 840650706 961010841 519419357 571570153 461838466 900852494 12277682 917164123 744755537 855760707 303429764 990327778 586288877 737047985 425498464 973068971 403670046 887871783 853747460 973422662 701724672 738958119 635191610 864582530 157345409 225039649 813833067 954551279 128693299 911747995 287205903 534256114 401841262 907167177 505527913 845589095 463581890 494542558 966846948 986725120 249900232 270951386 132386174 264352386 47890762 990867116 946499590 976410294 109270489 699074811 691679718 899795590 792767116 971989685 607983127 793680735 143550403 967903624 977820696 992183095 632886909 817104016 45198006 953375361 752310336 976624515 514283171 599806110 855716573 975806605 913185094 917294030 372566043 925220768 673369817 807808174 849327991 977199417 947867338 957643157 675316329 786548445 167918024 171054837 768800445 806973800 987500433 993814093 137193390 880781235 530501520 745764347 339557977 406902923 645849443 822569718 242375410 486653641 312334904 401255062 62824725 968034713 371957342 646275470 231540426 446017077 918337617 940775109 330912080 551776512 79774155 119335801 841998555 917079506 224481874 358705666 511120228 628504963 454641602 774481631 152916975 468516875 581764855 770665958 298255091 777317689 636012865 838119492 196274685 648462935 703045731 862657904 128769003 946523900 517195107 965714423 756274885 841559973 954004722 968986128 125599732 308245730 340191364 540981607 564234806 912266939 784799132 839465555 93258186 695410594 763718621 789759527 350134239 430473439 612663322 720086414 950137219 968560787 18881652 390484256 154690253 598694220 377148205 935712979 694002447 860966918 922638559 961846816 445004250 761817957 331070566 474930860 821078562 873523757 678864469 957340719 24447234 888231216 774243332 779791930 895792777 917117743 313285824 402201584 719587603 880498035 625116823 626505701 701259337 948486132 378529193 554353963 99108781 212033917 586618983 609716984 198752751 583699524 40242818 184455624 544170715 941660556 42943834 320770918 594615382 844010331 940311980 946162849 822820715 853468494 280186174 362731483 667357560 906774380 860908511 886914920 583246370 789414786 322792478 394558303 588285985 944466938 918094158 956707305 515858289 959220874 427258098 433696953 163148251 294066644 837732356 957029774 101022681 743818147 773924550 862917405 794399046 832679420 327364793 771438157 247686044 804043292 136357531 431174097 852512769 913978606 563570499 572092447 879565309 989270425 806877524 844075018 749588997 791652423 574976318 607215972 932703348 965822536 917821399 983666872 897519398 933389400 611015624 850367821 700546643 956081549 196779330 217745179 659148154 842596496 638041024 831715422 350971233 912303360 54041221 991416755 286933596 360113588 367864797 907115691 583673904 678626018 847422992 922891132 97652341 981223340 835676643 873450968 809408183 862665445 989385939 999427507 570768752 980567918 95650960 845169288 874889040 884406289 430434030 698017136 613486833 816165185 288465115 529189279 739128408 784033687 268860405 984287073 776129207 879667671 45616353 796204275 527572536 594642047 855634657 946707631 542882877 870418122 845242280 960835230 24729846 191681702 304772088 911525891 480379802 674236553 281503309 987530806 142963483 900857472 656596084 947013468 191339404 231423981 140619995 383759933 486273491 635670357 162542348 303865018 479464590 813260992 887765080 997170935 588036246 649055889 824527002 908321916 465640392 821844388 341923121 573328222 43242721 585605349 532006721 849248360 134421055 896084390 479722833 665444075 973004679 994952143 188603604 671754211 62784565 902729627 672016772 929740181 409309393 653233893 305083889 571228208 743032919 966455097 260622847 830797469 784926074 880853602 154607056 865116145 427798523 966932404 851095586 889444629 300723345 549224785 571928683 970379665 615896991 698855112 315238080 804222802 305616644 465794026 385097861 982677897 367605555 997837979 234835313 423639102 963380444 964433155 552462825 607474030 441009732 444999693 19946643 848826124 15078529 511888536 196386871 490997209 671999359 829625627 536627946 558796898 930568504 973034288 504235631 806067959 677222346 767696391 895762588 949042570 493232973 540908479 257003935 610703510 694021716 834313097 775485463 858062522 739663705 983744661 951887849 986542280 493551615 848728246 288069176 647088246 98534585 507534762 159250225 775779326 455091663 890906205 882624074 913698340 711799501 980368175 787884797 849771421 288731510 992546592 954486427 983784162 395929699 745963252 761119146 778867399 705458025 979499269 920740111 997964882 619825428 875086085 199342940 211960527 574923370 983654861 849435077 907504796 139292791 908748128 778331841 783815561 89437087 340285299 832424981 949405593 947578564 979632431 166770147 278025763 511134007 935226137 98904125 416338259 606480300 868796725 141470174 663050084 558619582 817939472 125841618 285316278 333763798 443018770 205341283 705197724 50570362 742954296 328068787 722601357 756986117 977880474 301966474 306358571 269233790 910123938 206903170 710905028 557862300 711326109 519234880 906424265 814072138 959781529 562424191 614442493 796826252 924235455 428223942 605704933 157565122 835214105 396362805 456940351 31401899 149343380 848517767 881286157 933917061 997880161 948367393 977758046 8370015 260558482 129828011 765648853 760878670 937010681 831142447 978873033 766455769 861410571 393491526 696566824 409766304 571556415 714306086 946752124 723361530 944214527 722773597 780396185 5141185 205651798 949954295 965381192 174483534 397870679 18970612 726194449 732840316 967181628 349754424 507977552 136567830 151954195 677842652 940841042 642145862 880946266 116055034 686248992 973471873 992118347 493089829 690730840 571457001 578888381 128716242 978300975 628400834 789912406 662482077 732181630 562710967 731108429 735098555 795422219 242231374 366034966 219100485 821647875 382494465 911139828 112301988 332573999 727248619 914668785 964345632 998376449 366176149 478795310 979051942 980626912 892865244 939958975 681388244 862098753 419882272 597178949 645906354 888388951 621677917 983917874 4673870 746550496 114823247 229474587 636988676 762977457 70358476 550983852 226732850 380863762 649269799 969671618 944479626 982650527 586843338 990696036 432275833 697208938 550367668 944798025 38215735 805536260 964376995 981925587 138274034 888083400 288132764 290810144 586315456 842010227 862957011 869852109 211850207 435079221 102733152 238153702 860000959 963209631 470573049 570337866 31472200 396241396 386084177 895315249 128988179 175473868 292676141 477497043 75241401 517831958 32633102 757243624 752728983 771792352 290103807 800842518 464345777 761780362 86098772 823709137 735716056 843552212 604778851 747109701 672990098 929154729 110347838 169595406 520594243 578928296 737895057 821961721 799533426 951766019 173578150 477034665 63171878 706816177 593994420 848195128 665662264 747402692 73125328 947956151 667801092 766707262 665008028 819271323 809635504 914294115 610994352 896125807 167997482 368968310 330506877 616646871 853968534 999515297 82820995 834238182 562081045 961819860 475748088 814374541 228155339 937360081 132471263 938126403 299606530 854730467 867478024 906035636 870123846 942424411 590026353 895180880 251888327 683852255 104202066 682335344 976356359 996123242 916212425 982478939 284538498 625556401 225400118 349346316 559035831 580930860 851386872 888842710 282456936 943105571 596961714 774489623 242171242 780430715 937102781 949224195 758521301 878665564 255242619 666522241 736766477 871456102 489664873 792074099 121929691 627655719 891550882 996725858 645443353 654915154 788842118 915480825 165435573 445701120 515408781 732383012 495016882 932917875 27494321 910043952 496890404 911827661 66175376 921222822 317768153 984075062 50419541 725719534 799088682 874792656 845177766 910536912 868677032 939463213 356038137 679888582 598348858 666243641 751387034 896353745 661781073 830307603 252648054 682936846 308647215 390527791 791871664 849934999 150293733 539480267 994868783 999862730 706792973 740803888 17463871 224593111 96418178 591323881 928413424 942270369 906596448 928205293 37982776 580508030 239524688 355145037 381731837 850133347 576275987 601293857 160227931 735466094 302432294 420847205 168919745 587481176 428089490 712348631 987695917 993839191 704545425 908356429 463638900 766961990 327404604 713154308 539266280 732429503 232053502 754754222 780896919 882857410 965163541 987402999 802649532 805834095 643195806 830693593 367646488 989761213 757177795 866556203 410856820 998322101 600729053 704344709 638538623 806333874 197291248 391980936 789488626 977469278 771871327 787838163 456921496 480836579 906992699 991920925 95811029 889100719 155791608 185940154 983703375 995083111 520310599 913040110 114881152 190737697 610286861 974900635 386334657 654870093 294029702 450854001 835782441 870503221 415438823 738063263 225054972 448487719 8477350 357776022 841055024 891992333 5907494 584698137 874471918 912385657 70275048 345138634 527645981 960526974 386012379 591572108 639492119 737765906 486714696 803807798 763646686 967076136 758523580 764408850 396203310 772576409 762362965 943803484 744348765 942150911 781184010 977524296 226511123 501033798 769989959 960975473 224195653 902421489 427048550 955956697 914455346 999728602 563798515 871019777 236794714 822789300 8719112 355245606 802912742 847647033 72204597 509021490 251260549 482879237 966714284 987522337 503658066 681149945 699418354 941495812 190534452 720790837 843220142 844107021 691806870 957203776 183792409 692345793 845845488 888324473 778426485 953732126 226411866 630513581 633285478 645662762 624814237 988816510 653000800 873847569 428957397 856582089 349144694 821733530 1884202 239525531 559808893 816821393 635583691 838738013 498689760 836398349 23892549 594338045 375562713 955304218 93836783 601545045 496948307 976141526 246445417 387958673 459207116 830377540 503775674 832891772 679480544 715151119 587279031 867210606 557477253 856404977 233916830 816293880 290584934 839103452 107181779 422843019 944599460 974373972 950809948 977313582 675193346 724027484 988245329 993310946 758509689 973937486 544686752 773363126 53726978 543490920 848530552 902300183 797446781 819815921 307671857 522507014 641466671 864398313 256319080 350845618 324366082 497451520 57691997 453281867 798891136 971607270 413107489 700016073 570241472 853337175 793093689 922739313 109579750 166882656 619661129 685601586 508797728 859022614 924519514 980042161 247041855 499710086 228277654 859314772 513906475 981502016 368724192 697926648 646896687 803993573 980949079 993967201 497775978 921484684 844146592 965853857 986668874 987827209 280857544 460594029 879215038 902555526 337098079 773498485 454913914 788412822 158424863 466397924 134685623 157543443 676043240 721448898 369423460 448511988 977529770 997043156 946250118 956211746 601565287 702635525 375850886 954950243 165090940 966321599 765538051 878145101 232591018 372225719 145579899 870927976 757043732 784732938 914490706 971306051 769644278 783072814 262525328 428954337 746636365 806166180 380087461 964117047 29123914 493403369 712122551 972121283 364280708 907458950 989892683 997137811 888676945 912925394 330062770 596857672 216620861 985164935 452196120 684327893 655513641 977414955 785327303 937091467 85936789 605027095 662094765 859203135 402661551 701671489 644489694 877575049 124604953 461394215 813260580 933467704 298532697 381241515 647149913 871978950 580180055 743872906 18906419 944307988 814082649 873225385 526155907 946146740 286653839 586364105 768243008 957390102 888268252 893017407 211233119 781544438 701412418 784327262 384092447 931149501 706226930 767785568 140598586 191186489 490809684 802448719 210004870 298219218 115156388 594467625 343550846 703773653 352852313 392926321 67525193 264068460 395904856 781930324 671218294 996465223 476294901 955004943 641889712 787369133 193093790 439012282 755707745 820230750 627642743 791581958 497074522 833402464 461338572 585330849 718165893 851227565 427960408 565072186 11737455 207635163 59573711 747982587 21358904 948506790 932922958 987774257 253678154 569865503 822635834 888102687 54030498 344896579 775392227 810062523 37953368 633729619 82142207 599336511 688814257 815235247 430376593 432851930 244513978 612568876 534195617 555791130 639354875 649425906 505730841 713233251 135385306 892262034 902759362 971417571 489067191 953178181 206813658 287688479 746870977 854617007 620015858 862277093 18491886 119523389 508751394 574283781 744906619 845359929 395190452 424564902 233190752 780146994 399826969 471775081 651946328 797321346 27067940 343462753 263163552 697995592 816138106 987343141 191637799 257367001 14953263 139705337 38953903 349680607 269567434 401570486 662521703 822257460 12008311 144238642 870012846 917392931 655769651 787943115 146956381 298817159 516411967 697520935 889186302 959786260 226440384 372514504 215232506 569720043 423547857 519666041 275101246 669471369 425730925 896418529 479362705 563463305 699878057 927856097 601092533 860791468 148079152 482753685 395374958 641965434 541178205 943693263 969943127 995454772 672259864 712084112 372205021 438633930 208872115 951915703 469147948 811435592 951883757 996356308 32668139 412001469 817421477 905733125 478942973 749888869 565503275 590282388 806570481 965207009 828933046 997326057 605317721 955731594 473230364 782900673 134842313 618113597 10971812 324268232 870027909 927770925 999708772 999770898 478372597 778577250 101403154 413001022 745599487 883838747 933675434 987989129 951565386 990757102 779140210 963651715 480820804 553614199 614498837 639109592 203549821 541510625 216996083 857952230 910849123 921688456 929939968 982112079 58649528 213139703 880212728 996841502 873234841 907583395 260354827 586629632 401459461 939780075 94933124 436128974 255436553 594297351 359077950 894685507 657488093 812576074 492680437 593350353 875200699 875505973 553540000 835609061 252394112 939551534 669092262 679437257 298466638 604055930 359503886 414052278 178744678 330292612 287519083 927210735 245167962 959738680 868139402 951882443 658399576 775059070 99298111 254866793 607096054 632286459 30217395 391321860 321644337 874189202 48119934 359505765 773814942 904225137 514904506 925412861 973966802 993165706 549984996 790627633 538265677 558875201 280497186 731237696 955331437 986343848 241325257 347922093 574362261 976809180 6933551 835304110 90430883 655249279 697807228 999730571 664578242 878853633 225376015 528182339 346870520 539942360 570379825 983285206 533540667 619837828 77797291 603836530 892417152 969929122 874449343 943638218 858864320 859685589 752189667 780491349 732376374 734769353 956327976 966920932 167136278 696712187 292857564 979310065 268876087 838594777 407756498 444210037 968498780 976070389 928113502 940035150 123293536 259685080 380232278 400477712 566640457 984582639 207254145 543715623 726986414 914137981 320755683 695967929 104359725 448449626 115905201 558478446 915389004 955116511 986463591 992199958 752560049 868828371 519055126 788726734 786279928 899746175 324698175 341945928 789937436 792190039 845752429 915757788 292271114 926640358 102332554 798079455 596648098 902996115 102987189 979260183 598030387 870812580 766426037 909702805 242705936 632814086 894753136 956143024 330801468 707299493 316905128 454632263 18843181 648245327 962363937 995399895 279701999 748231449 565196580 626044541 339628319 641946394 100193113 108398044 506315805 731697463 657159770 802145993 406004112 936567180 99013937 236377158 357136259 803451800 702456571 976122422 322805167 622868929 686674466 838870192 112246 279838579 921124368 971535692 601423438 820281872 40857047 41746635 482639456 722609595 581718885 944166978 953512309 971246353 18206742 297769498 640912063 648729224 439738525 798879848 237401276 314034608 123780058 840859188 553167493 893245775 710033969 844047239 187739420 838216877 470122905 679244691 707807718 708862485 913648787 989609088 978690264 981597652 146970989 770492767 527626510 853593747 243381463 365231445 763055849 806851720 69767823 355408532 264918257 599873115 260534124 734057092 814529854 857481962 808317220 882055083 538067828 792319178 578581247 687789219 19830645 496501751 75093664 432644773 904838733 962021189 892276298 929731755 343670043 804942231 311401377 769812669 900945097 927396150 482737450 911403760 955390316 973115733 369592073 458784627 883714693 924815570 598648489 705601709 179838750 606286550 653180095 827835153 738638738 799786579 958993426 980002231 637928088 678193143 892143245 910413577 472505451 665377462 549439895 600617111 252896825 834755934 572476328 999195319 703285890 949832569 780000495 975522313 66424187 787058493 435164681 827477955 993304929 996711208 827373525 915443153 865988037 884004134 665002859 669630203 469763483 684573096 421992339 682193379 523954397 928809967 791920097 971256514 709001580 860442674 377245781 871314175 600678045 805773046 441177540 664745990 73278081 263355881 931203885 992099438 516745148 673154216 824735083 837003067 461947686 490942603 654898233 762701220 589909272 992120372 960883378 979149463 315472987 957625692 27252932 614334601 163441511 464310946 686035758 880782988 828596176 985341633 595787837 723247002 486774372 612700404 308272725 819251077 485468955 721574349 934419241 945666444 525495787 703230537 517999421 638180513 657293166 715896785 893019376 971842677 442948630 540324944 373169592 887706709 642932877 832260428 84558103 402019458 814997236 982498989 973828964 990013097 848320681 937689698 850938114 925714864 362673041 763694055 473260383 959824585 924162325 996387522 56040514 754064735 908677998 967590102 507422160 857280626 133770389 395383527 47122706 940183813 269607003 486894450 627237751 628871385 975291699 995107594 172400983 688474284 897369703 972225859 916099389 948724137 886033678 997261695 691851077 891976397 836073681 887453371 338433046 671822043 295444653 867904514 926124019 964113296 427512904 708303925 769002042 930470026 396357272 770624929 849590712 861012247 121547166 219103045 80145027 739612952 279139732 912290688 813461106 950943365 605715943 965332861 149495860 541944377 893634689 995629473 731417446 954246049 232469241 706508826 781530702 856388999 815435706 815674056 491324029 618495723 551280571 640013634 680750713 855433523 656822828 907027254 781160377 929349873 659077737 910442658 531208853 954514558 283001736 539824676 718024100 731576375 424662984 697033630 691845348 776012629 905755732 984369432 646075790 768504706 152830506 302841452 815975804 964172275 425936220 755954159 125165483 945240226 250522674 384775056 495932019 972417342 76018362 200465321 953929852 967242950 305145781 887658239 410128421 997647725 454339242 550814873 708440813 811231209 698980128 766478326 34827369 342440505 618315069 906893698 552758056 867958304 865246955 976211177 886642629 981251383 632055769 886750735 201455404 950026859 464431817 554819759 978862037 979356514 999772577 999915064 693799765 947407860 827218914 866180623 649915660 891216672 460181455 814938420 397775473 739091823 358294155 507304292 117464191 547004975 275519492 845358458 667958531 984201428 288673429 719233408 313635831 902674705 351400892 439596786 855121382 957967836 675734872 735740988 152999563 986342359 140912081 313917544 552279901 699581746 565721251 612207374 171370730 896630055 651305680 939012250 716266837 801913677 786447447 898975186 262310880 826703269 229567537 859666984 164461210 934989899 391187025 710636498 273826166 399408439 657016768 810372809 891676940 904709519 924168415 946579764 344383919 597723365 865360528 874009653 471009966 870785622 119632856 609694287 762593008 859543432 645929023 961100919 334532806 364816757 22397939 521550751 190051017 475072882 88710829 924038537 270768917 507916110 108293053 712075113 720342985 981351654 121222098 889648493 80905895 932221357 662150354 799000783 278070802 833403328 746870093 753996268 63809021 228859416 138872834 320960597 221049540 881879084 747955098 891557214 954003589 963819534 127957902 843171423 683538640 876284750 673419401 945116495 627246312 813987876 472677721 716655485 426194391 549255207 247622686 284977943 534987325 806902709 996369169 997674529 176818339 259660415 643577039 686690981 99823721 349418388 186020824 304006661 36438797 908270035 514997443 854081545 167140491 672997618 395618196 426555505 156966620 226203508 755331730 811782161 25645442 544767507 774120839 806977169 799484729 924697275 380583700 663820235 903025561 985755384 824669407 979722408 229747848 903475374 263356400 827484875 999161550 999881397 73804899 314378877 439306549 842910861 240188130 765592736 796119852 858007871 832698358 837284926 968917764 981599987 66610228 505657290 692764588 770362014 919451356 977200565 279072306 768031528 913506743 983258806 107803346 553473208 71964217 546660067 929398127 938283751 279326629 779252044 954558477 986647874 142530307 465773526 889058851 918932514 537018974 849436492 571859537 874010498 923474979 959737617 556401676 716132369 887122394 971957164 395805927 967418523 533652867 853135551 755228447 883251858 992509053 993995792 228207306 724972556 113076020 663183428 202679786 370553492 419183813 759448149 609713709 922429903 117818629 926524351 193961500 438709867 189219524 899666198 357322106 928565955 497024956 896251691 222846169 651437608 29165654 71571598 754042851 815479021 609277664 901853520 708301750 919668278 449322359 978809186 695327132 965177920 244649003 484439549 726325412 733861537 851001395 927385251 991197129 997662960 777744019 846175834 980455418 981590732 655659863 847474168 683838820 823905460 428681139 880202556 532751149 555379501 522205141 567411714 867547961 869208308 411988159 912855278 575964775 769784396 441857105 866862634 182576171 967154103 664639812 696875659 489693289 795354385 995433950 997861772 248704277 902420493 61331905 582560430 732931615 936993751 443523877 750478438 975263096 997360902 115296580 430020317 864960277 889705687 963651005 992758966 380168818 418798835 379160372 590130580 66096956 275238399 245254526 968889156 925111348 941623818 583782618 903810652 623874351 835017748 380836891 838030702 307289287 909785006 278551398 878461244 73900269 176641705 738736972 780988450 353136401 548331791 235699399 476140585 102414188 496209173 517875791 758220198 480733888 621571336 177281337 397806863 211852513 282612293 850086739 965986956 712047216 931174967 562265663 657683846 642278579 743503330 356103887 755025312 201567842 857471974 632967452 996186271 647448339 770891700 475353176 757242211 565049078 773443041 984306488 999000221 948594829 970944570 727750930 922990699 554284819 620723773 66468971 72677107 296159188 963542926 951819598 983706584 710936257 714813897 641561183 946053768 487128860 779683684 436113651 494262354 669650980 885943081 877324567 974566939 567770132 927042860 561007620 649492400 657337179 675243384 450430597 611689311 495887256 583111842 522907049 616227658 75049241 114083527 491966423 827655749 34961869 874996687 520997082 918831797 181017018 768465572 320822886 611900994 369882471 448154694 13406671 955984782 533385095 841765154 632784756 644171438 800608172 906971619 442095236 664359635 136454395 988018742 527740560 862176613 837658650 988974654 530057734 581527565 363059555 655192798 587101549 722405847 656794744 887447627 242576119 427977281 719574493 989102911 628282411 732360494 497753957 720945151 603068400 795108332 295683389 544360345 216679233 791371957 209344045 570891369 243753179 730404998 805675904 917821974 453776427 458016208 394321516 786996803 527049753 663949335 472116211 745986730 179434897 534476641 960781488 980359576 711795311 939717275 770468332 860879305 286037248 923016721 158714009 738943581 778962725 884320174 24393820 906018775 77794982 482456121 589649721 684041931 638068426 889015357 62399575 231785080 37575640 229340104 27643401 386537871 969769949 976070819 197392156 523918109 709630276 728668557 563829606 866584558 830462448 968103072 313790781 569680968 667319146 814417073 303833087 818677056 532349906 562786755 260095755 606552705 991080469 998172150 607370777 645776917 927992351 968772936 576599043 872831760 901266333 928550477 656946608 838824974 505131183 686021177 169236190 283224742 901702260 942850024 315150497 837594923 322781620 459687098 129529677 434555177 973414176 997674772 288039000 333885956 524561150 813413092 584510177 892032540 575623909 582377078 339591707 555983766 366893577 840148305 97477887 685151716 669064183 802317727 284567787 507635782 749193114 922411585 280500720 605813379 741555806 812654008 58604232 647230927 227098396 783616733 147696462 968872881 979082221 983270306 890762384 904215524 472416101 633276888 35188138 253553239 498576570 867049307 43632657 802631839 636788948 895559200 480542700 726270183 544991780 617098185 993529359 994512065 465627488 829960121 608379123 947194518 594771027 876832430 564982163 952534687 347960682 800343972 310160170 338790748 794685733 871987607 657844587 661127725 882866664 978827696 738973903 831857083 712095218 998846058 816735791 864366867 364849656 856613303 949276907 968887118 43558254 648488825 488799251 742211913 457419867 829402955 205733813 745036180 933054175 940130283 913215694 945104165 227241593 993036876 58481530 650926024 723940811 838484120 754231841 944177066 207359071 782763717 337544382 486371033 187526736 328911011 105210264 934827914 65084500 278121735 641933441 758144659 478384545 802906080 599757790 806084942 392218504 763297236 920762486 988857904 862805426 999669947 634157189 635139370 238047972 378222837 250742675 376096414 256945667 972302622 577689588 819238474 457938357 877958939 333428703 791161617 831089911 998664514 819750873 989922469 618120159 670644610 355019118 698905235 424996205 479082131 565518483 893613200 221487842 634445796 991534042 992369779 393239326 637397320 143624405 495055479 396000701 993803930 802848936 879315342 312525483 922688883 514567950 723592076 602021612 687495159 518148756 722678523 904966526 949538805 509069975 615851078 773882481 986510420 338999025 826665478 140444949 803567684 479508327 905428381 653776400 714174372 290940061 826700678 697742026 881142526 16559415 541623472 460115236 621596948 259975504 853196430 177893539 225651096 342968192 812539832 111031388 297685568 239586307 626214279 53602670 714649069 860247276 862186455 973895928 976524891 714917068 921433837 533723419 863369900 774804782 794895431 235849640 377845389 340458530 380456350 307176326 637244067 487074083 934424508 279676756 522000238 476581886 674056855 622498019 647468368 77405360 183417499 416815826 843083578 350338768 956672965 733824854 997471193 706283785 889791267 499266533 536149101 83985871 454217622 861105063 879508380 792175121 909889150 177060092 257101151 189553971 263834752 254944692 508791306 135233904 210097516 850188038 963421011 414487697 458299070 194963664 795436628 258827110 447477452 372328012 430022675 463409494 948028213 680984027 884951452 85510254 363432485 318329600 587289852 802238392 885256897 455831103 758586021 917588352 937714243 621187234 965155572 592160335 602088194 385070059 542720952 582826161 854059917 935916888 953443786 281966538 464398637 497237567 958729365 54628699 421776111 572426640 575361579 240750214 611138561 878201198 893823210 889859660 984702695 102236739 711615771 265884920 440282330 694240529 771759558 93105943 643476304 199929610 748719546 844091812 881719077 496451580 776840291 637980200 771268724 597187753 717424059 241184491 657084254 101479316 960506162 430543449 765358095 286585269 726042567 655405350 914063402 494394969 619767025 160407148 850424651 56762297 231191032 134374887 692946365 130191428 276783318 778915175 815539602 523019329 834617041 114834427 876093402 775057716 887117977 550304155 926498462 867002518 892587983 948775105 955970445 543489153 716884592 803190210 988100661 484380099 500129119 798290640 922917811 28765631 768935348 892507207 953693580 485360972 486711543 651617608 752905556 24977448 762492575 292661972 971986676 159443993 821428013 846951603 946632022 313247091 558160006 794487386 839665345 873391964 941290296 881378775 911042239 114756718 790689794 394593128 959186173 251207603 689654213 386035837 768465309 164282317 506144562 441119843 754433380 413562641 858937994 330013980 617077649 280494092 434853319 429457695 696507466 1385165 866607797 354708648 769005366 309925072 454027044 919601962 940304012 78584034 660506968 156237 198823939 132084012 487717462 766585923 813187875 727567064 785792884 57015851 250040877 88190347 895265902 717190930 743840413 664083151 779571534 194921175 625067076 691092200 935115036 55900474 553721713 272635103 823689981 91105484 233469224 547030612 881612384 499922086 811402195 433809350 632028806 848595993 868415797 566461613 568474943 804250413 967229529 567388423 942283469 673499565 799498671 713625330 794900646 294098705 626317921 248086270 837910809 291305957 531092742 386031508 637042903 169725032 394372928 101327559 790164281 803754194 815468445 845598228 943354403 50077415 87163482 438547396 853467841 346188133 705228457 839498736 929805149 658463292 770566071 283452000 908579166 544009185 718780852 361817846 443033854 318275822 753358112 304145061 868964078 81310042 615669831 717615078 784545433 548037525 607492809 976444289 996749850 818711154 887855243 911167627 990224238 374735920 819336150 700149718 888241901 800016935 897586099 396627317 951402698 140529084 385327935 144053562 461903905 549610740 620925338 461129124 580739320 129394956 908692685 425446105 832354544 414116280 446373306 731744976 958710518 332884212 836271795 67431756 980482751 57463899 183466652 399738252 744127650 792801829 850783361 116282541 516246514 674124959 759351493 984551341 999584808 484138645 505901119 653596749 820997300 636114198 848579303 260707871 787235927 851459692 898911614 696315964 981575308 758441807 927498495 314455562 892548872 863046513 915614395 913619397 922393528 459063112 486247915 77176121 404665300 287640652 479705949 637420553 710267499 837129758 837798510 838811121 999721359 504301696 857299646 275820047 903607504 589040976 824999023 916238674 925767821 964402389 976993612 825284286 968481100 925430064 981034340 597650909 656270887 223676271 231415180 823801958 842851539 441384983 921414522 435802853 652050399 88469679 738369356 989387562 994790543 689380695 954500160 226048983 517100569 872570202 979842431 950097702 978370336 836495919 945103668 643943503 911122049 248015030 537782522 833075210 875561058 664435437 954776884 935492300 993248822 252469557 775605822 283359088 596922730 524090121 849052100 949025416 992736662 667184478 915338664 469380677 899117854 620263416 707039231 835455537 996169052 359421268 510527311 273964545 354205664 576882186 761043617 907097904 962873597 93939162 578691564 249652896 453774518 751283441 752383572 731948500 858898111 199074041 413359021 73699032 965385248 729469252 980014029 335897164 734877800 704662614 790311792 723335173 732622799 969913186 981396551 485102250 709321279 551287788 996686574 158197466 248414080 675091316 760461100 272046605 402361358 122174917 310643176 672144293 900223244 218979368 404415165 737141440 832578090 693819402 951979409 130583858 802755370 431085709 846903638 315073056 703776472 766863703 902037116 757614336 921756112 248128509 431889015 294346747 731437136 532526203 903836779 435124564 710898495 635900453 713162041 131210131 499028118 832993482 893183845 819584335 945115886 588032703 761508231 467488688 546590764 848203858 982393400 224315096 808673373 410354957 966840225 565385767 757364385 884618312 910591052 962200322 986756327 360113224 614646400 551082175 912290274 187779301 984947808 862930323 993050681 747227539 824580343 50411348 618935868 542568802 664755189 45289631 664351928 279090696 883112671 273038809 880754216 316081898 538103915 107412177 300433988 448920718 512906121 858148781 885292108 856150303 928110820 699533587 849499294 24328342 731499205 473641834 509210870 261041506 311886766 405608964 914735714 213982201 267138272 297831417 621730262 779089533 826511227 211482140 397013322 862729635 932777433 820305697 978536383 43458805 314478813 209586386 833044095 370623321 526306543 168002094 654737189 259991588 797002527 414673895 821720422 957458288 959888237 895276565 963871334 578945205 903336164 877567319 929800655 249318420 715128356 651725788 704852192 732389796 864264730 543017467 618841814 18655113 980548834 49127378 296018950 257341515 320516075 134437555 625370365 167551839 955982822 802227932 860336682 959942748 995759946 54545959 307465349 871365342 891444102 893166732 947183572 638432467 987908949 560860656 757107772 205579631 210247683 672223672 894700712 956194435 976080571 888766705 891482845 3446667 670461009 298028952 308529728 331746210 625907096 411624377 552761361 89054872 526007740 662849632 934694554 985629153 988346561 911070222 990523690 504578751 870331401 743098233 855896756 227082601 803312313 738937921 786488816 642829560 871584510 597908951 795592974 288874668 750749636 157710437 536236806 857007556 940858398 357789440 671827215 766074281 868066519 192302756 793850784 730974786 937188280 540604831 989607951 530611187 802187462 432261389 531597758 481628326 570192128 661620906 857192973 844831607 874057012 333431176 823721199 217662311 632556244 975928018 995557274 159950679 631710228 69589702 264464485 128030750 831196006 681291052 967686697 734787383 976020404 436132594 840992211 592119749 670473205 303210696 644656821 923848491 960137647 931931365 946392861 698813648 761831219 269876164 417403710 435634462 555578263 85191300 564139459 767756270 918785375 202895229 660319828 999599111 999893373 696230024 746184338 134876830 832747089 608843629 637344191 289389799 848518122 220717841 840288990 715153296 943236469 700315330 956748392 290715597 782467846 295375301 960327913 839554362 886819499 11853971 964392128 154566348 330403229 403374522 797469544 825348185 961756469 636855588 938569683 391455202 605009148 346232406 627444367 560567944 643410040 275391795 487580473 586221119 837689475 810574319 851206285 531286696 665999733 842594837 873626791 476792125 985718511 242914725 757315498 667904305 957273567 457497944 954906317 970136571 993258039 71745359 439568335 551919423 966388575 666205531 846675756 147525081 697008953 118102625 565678327 986021197 999638933 597152332 871397736 886145411 909921882 68783486 702872652 119640783 823588280 705275717 773246181 205248022 790384706 498181814 978820413 368075156 428408973 891438782 981888242 615456964 905353307 903999551 922632006 533800308 790224219 311050329 343978999 256955158 941939548 17196917 912185883 579128215 629587106 736244293 813210235 637790266 756837838 836052199 959947240 136989967 196552561 682467969 866230044 229740298 425659519 448761333 494107567 661575187 886626819 238364663 402121796 93053493 792983624 757361116 827503371 945573200 974839867 471988056 721281318 784049369 796270305 559938445 853408362 311977051 335334612 949974306 989722029 790576628 979839111 833210642 873091445 447891125 889787698 854910233 911553350 83146921 559789821 58712747 989456838 838552107 860385513 303659864 504962371 515763766 801675882 946481498 966615096 374119344 386248857 4796853 880260521 563524792 922635568 314727245 334041569 216553990 678736573 99500075 422895752 815896507 906434111 472774571 723426717 881540956 986170497 732145406 917282169 414244901 804556111 831321898 877241885 748767760 872151334 442501811 840272706 732168909 879616189 963681266 996816284 580806104 885957327 565793118 872429316 247569570 855108555 809770763 921117856 292798068 559284928 566745498 628742137 646091978 982981777 932157264 936028691 588128120 922762010 255575329 261058326 56849337 934260781 596771342 618688969 551423363 819473609 320955452 494640867 460228322 826427386 881210950 888761688 579370546 637064882 713173944 882766394 374277383 757756369 697926242 725315838 373901319 568069875 585605694 849953184 665704291 784439321 150836883 647860730 753709737 931224225 226935294 596268669 736687187 854152819 51765998 880790758 791249313 896784366 98973219 593009458 591709165 601039851 507391938 611173084 65055697 571076098 687773633 924141660 439164822 657035847 743811809 773251086 343977403 808876319 776804589 983739756 690743288 745808910 924146479 926334709 414598983 535331378 344200280 378444503 653426250 879952876 894177293 953772311 854399521 882372309 550317871 965205361 698530303 861348354 467246830 575029470 872480460 986258017 290527341 820997514 880450398 966627200 616011352 996806468 427905372 609459759 176188451 797881119 735248458 802658932 270000835 635275009 439650414 660990160 276172111 292625073 749452326 947831956 253159534 615566693 495049759 621772143 55513380 350248075 769486415 988778674 875899034 977090494 160351561 742727367 446618140 821237134 342884184 451404133 711057659 911778429 935823339 963778938 19105078 290940874 76218651 562254352 130884245 827562119 641541172 972909867 135376433 889527516 60665894 469685558 436770858 985144618 317858272 749046846 715486961 916953619 807739348 984615408 234168128 830699975 218809654 684488367 302827084 673100275 273773849 707873975 917661671 928909596 566132062 945669662 285168942 502192001 903278195 998871258 861692788 877210662 718869479 851546039 687568582 797514878 789728947 822317265 651387135 758687394 247379872 585932222 902662121 912861969 239477985 919724978 523369993 927333223 162681191 163010313 618861677 792189633 613375547 668643143 795819621 917207525 33654714 405854001 918619898 981231975 663267074 684043632 638839995 656916443 381713363 934668218 932486892 996412872 501552283 511141401 829864571 983256991 883026664 951887881 42591785 206442761 663445449 877620155 578507741 752861056 560052668 691649526 254829538 752771065 774858993 918986392 48676745 699847887 511995492 688938078 891128355 927571544 54655319 725601223 231039509 620877647 945785350 977704793 165144376 819735700 677571519 687304596 261525891 608073817 972109857 996604435 555285995 938253014 66184631 372210643 808088045 940138031 398854405 410617076 173874334 649299184 477009643 655452258 883399771 886928156 6875617 393539301 172100402 251826451 371540185 624529449 508268221 697840643 138005933 876389668 250882041 926147418 443532581 602904264 527610067 815503720 739040381 912953747 941383139 986090359 603786987 877567692 258467263 708784344 7799220 593031598 479097229 631930343 789819528 905499959 797792539 977618383 996246106 999730143 798587595 896705086 317524668 658506942 350319596 898991092 531438760 954103419 332344111 850717087 60886235 364914247 796585842 955562729 755402383 990874447 258589418 293337606 212701265 468195401 551318003 891781304 288099483 311153083 649076440 930495008 593998978 778315372 115722180 796257655 585859827 895191353 957723667 991424211 414626622 552729557 364872838 475035658 717868185 961684947 917759383 996781595 87290889 642000455 92827243 763104594 85593942 832024958 194343637 765181597 820430390 863916982 309345478 692848525 545308246 872846462 458206528 498416890 543200607 773407708 892926887 902668298 356113641 966340026 497886868 566834354 451933979 925713543 424984586 921945020 536971498 996607311 712338710 979716186 978379599 999319816 672806616 723030116 328435779 860109163 63703770 553759173 899563169 973848610 396848716 606354914 554591993 791929475 972280559 988874739 492584491 783805128 301969824 900799741 52473996 958553189 66263210 530971572 197335176 737424000 349475113 357245218 924680216 981741264 176950791 607934161 82357926 363719400 866016720 996612769 805863338 840734948 807428208 807812193 109061933 167740689 606097617 976232309 185616094 494260866 490950054 593905363 245895389 279202105 392364499 847348678 57063802 333778906 635952645 950196708 403842609 455677749 774827968 930278773 311176147 509780970 143255586 977060197 663099334 684522257 503809550 549557155 586219401 843205930 692005743 891425892 240898204 501030619 840067082 958034692 556259319 672981722 324283597 333521463 577618019 943925396 829005966 924025516 174689367 914107604 967049221 971998573 319663352 418436393 481836257 789804343 106028031 292751452 23965571 715821868 168188660 600232728 563437688 899705214 740505593 997353335 865812855 881340714 373884585 443428824 882731333 995418437 598923059 838114665 626101441 943616731 19615344 607807930 815461342 922867487 625830324 902463746 751184618 782009634 576602637 713183496 130453024 640377763 186784143 297668243 903755217 914964798 72256504 825625376 576838742 708967368 420398645 554615970 601569969 916341046 469243189 493050036 401567941 635405745 828053728 862631248 112139623 599882796 431712857 858215939 787500319 791879101 307308393 992618128 929838334 940330370 664254502 723659356 981117029 996361096 268372874 964515450 158152965 801474771 674154813 736003614 144517751 500087810 290719622 333364865 25525309 133522313 292127178 525378830 154418555 825888313 465106317 637631462 501637110 689413780 890317336 931519905 960213781 985254329 849980381 856646815 764339479 983362761 940023468 970364339 580904929 964570371 159560560 397941420 67304412 859581111 411378145 612244790 434937680 602580051 849359472 971416317 277023739 653026209 508248 542020930 274775161 788730660 415621346 788163273 253820761 301037331 564136627 971300971 131741592 707333380 886730359 970388611 87858076 344491998 608822760 990097669 324235691 745947597 875135753 974989922 734779364 764181239 801450583 976403656 921907529 926922674 597459272 728742126 528540729 621087681 844501765 929597204 82895917 134618627 677732816 751880247 858122637 995302311 326357905 895319884 745774421 824420415 227050375 746943242 344856477 995091277 485684513 662983847 639316750 903669598 676161011 877340922 22302559 258865193 395798770 942381850 330375099 579679464 691818674 990892593 705616276 946592465 215694744 225514551 269284449 650326237 261835204 360788826 196323076 388593962 859764857 868349874 52053270 767523871 532065075 670498607 600299693 896248836 991162684 993713458 20034663 823109277 242569857 969512685 784802690 818476356 927053634 985692890 58084179 299922440 843775283 892786152 628740157 964695459 426691283 700222866 161767782 861907838 623245206 653102106 34113925 309347095 698886275 891251137 951208922 954868202 77889384 360531947 678828914 846282599 471714186 886668628 114075493 834439239 511877839 631099475 159939753 277656726 876700686 947414070 925894914 976198384 361956808 647834114 112254001 577045577 748233267 972570259 188529296 817965223 337087052 553739275 970001874 973191460 810414192 853598532 123361417 522686989 920990035 929624119 96712139 556980913 769640141 816155617 399683327 507453414 867942782 879121861 579819219 692004834 145026776 738173438 112088122 693335584 220074912 425603584 682985764 854461801 236659083 950436630 493077146 800011945 176068932 544380470 783811746 850645830 813183196 898856314 564132734 621967720 208704752 750485420 198447886 734077275 534976311 872033786 879313236 891486925 500310070 579034955 618226070 958447123 373334147 964909805 697074409 869380187 401283639 935305523 620437459 850674029 972348409 975003301 665865858 715350113 814562406 972804821 631337761 962899064 659956725 679199719 698028455 771368047 680803464 996692582 433301120 490408393 985639476 999970991 735714298 951427087 519721185 891485710 196467350 418357184 226949897 289862061 701461673 841342699 830820988 945441306 32854521 322933039 503707833 941040663 542093736 909076774 661125570 754729214 352333814 917285228 529157041 633214660 617702695 699727128 293461173 807913202 26867383 695706557 556045091 672520983 617038138 735926249 475050683 833551514 140119547 213570676 322563539 935993376 931240340 970137004 849840986 914992314 179498866 450182881 457445177 968135647 774105944 926948541 795511617 904543622 453214361 762706340 615959739 960517010 695931290 797371349 887879885 988357808 48250161 973720662 199445036 965751423 26015534 326751476 858410054 955052341 382294315 980174233 723345266 810148547 701391681 763381987 624693330 862991763 438665597 736892267 25038831 843110852 74843852 534580284 271619932 957786947 610906160 728161728 941668912 975864641 514156595 735513788 305218191 852741634 861216825 940671844 188958715 312462776 672942309 812069636 196389834 588534410 172197694 938097859 750721029 999740364 667604557 762634110 112419278 600624571 797558340 953965057 211933126 997370039 76194988 649467820 636400421 817709782 152138771 332687930 151721427 276650875 47398298 146667599 859722596 881327082 830485685 944876789 379075684 381407542 515758029 639986133 277372876 879226439 64813096 167282861 490439788 877152688 681927747 991528827 444697169 981962248 471768517 596878935 458016800 870955769 302488366 644916177 610202937 769151004 963674632 974151196 501341211 527150693 58900744 417045567 787482727 809100713 496003492 844799078 413271323 642652431 720661452 807351339 739643076 771880382 934069241 953186130 110305776 630041165 995963849 999862707 804616664 894338543 820324111 882250195 863643442 925254604 819312460 874127849 301029071 732151643 961068952 989244415 466154897 944814887 779056050 936458154 131559205 825469874 40654171 319483525 715124895 772538366 331433063 651611353 500724991 532291985 756941030 787577577 757054844 964235514 227159218 620925987 775831320 778882232 208419589 931799131 925266425 977672834 667392117 982973333 249449898 288102022 52484957 452003658 154220905 648989393 610418811 895972764 970981860 997612822 474555988 775677578 55037203 924080598 42698352 626605477 382509875 914657810 538027792 778540275 120894345 233345879 850326890 859323747 886381313 975180072 633961602 802721120 273008458 962229706 468466414 542583622 910672160 980789081 127845611 919894537 726614410 983275624 927713149 996324723 526581833 893920716 702969720 814662328 753039186 828220089 812653326 897539057 567217690 713915581 906970973 982706794 822243001 958437353 825150330 834466339 952664586 979096394 951251868 991192288 978188791 989655170 463911795 786366353 375368109 387018916 483554314 509562777 924092062 960907032 276226683 895043005 312238297 772565408 151545008 913968393 723004479 976836651 623225923 996454498 718288945 891291566 38986373 400441280 801058039 953010590 385257483 939821195 332277262 865449385 293706632 582209347 646508607 890303397 501922681 861692985 86215763 209959887 643667040 917331142 172343970 582877584 332723953 412823901 905933364 931995677 867090243 975955249 336660598 913390155 909551405 911247242 837849241 999429325 519961356 652032224 406921021 954640044 863856473 901065075 197295840 446817093 270400014 917636900 942450722 944007924 45019249 863185849 407138598 929201931 895308727 896382744 60646036 354646829 268189540 783060853 476050710 910945174 924885490 930788714 155017062 158932759 774224096 965548936 874015222 936257791 170338932 323933518 453528856 756657566 253543750 922635226 355687232 859026935 539317256 766792798 545226061 825612749 990928031 996487591 512390783 915551894 190385154 341298782 754096450 913103343 238562365 404105884 697622550 952475654 329836867 332875535 619392575 798419487 918409074 970849952 301680045 377469751 456459766 980071406 792416333 929854304 880832172 962143011 698539238 834303614 473512737 786435526 481919090 855914487 145935766 906553073 819757282 953972066 89001059 937055490 101006935 772114744 536071378 829653150 216409804 605637531 838462516 932933318 509835322 542911966 813281856 940309436 762775171 866991183 768643993 922658535 924450387 925515146 674029886 973933529 286198636 797585227 659002710 873649581 381932497 410220922 178737943 353883091 879412832 901233806 575625070 716754617 430968587 854111953 852166478 934233652 761512238 797591301 470006694 835120650 859216860 945872742 778881058 840694828 629928061 721178526 984915861 992739240 297355873 998315349 403180599 913472116 874670531 924937729 576416240 934309019 889338445 982342087 895427875 981303964 505705875 969148605 219539709 813124812 422054448 504109553 371872249 921130721 387893859 827370251 144254822 892207218 73388481 526518108 97383743 867491274 68471821 799286054 362625131 503726876 185321570 988773236 769211478 923890834 926806996 990783587 914378611 962749277 339380274 841157058 828453216 871747441 571218197 973968575 499584776 617692530 550011909 616827866 200451949 995677627 150907580 259897504 282044451 579213750 200000381 289350395 264809014 334155673 994186711 995599530 288112290 399418861 962919885 994428941 481062701 605139634 603696890 973467748 879354826 956809335 798211788 802917580 399265880 834834199 824964403 989652349 222758867 896138317 913682875 961303464 251614269 737813624 286193082 471409640 202263483 621491968 81765133 570700741 616086799 769159813 442546970 670709310 590969689 845600047 198340673 290871563 873458620 892885512 934946687 996459281 656218539 958729368 816959848 859777862 259242058 326181807 436048117 635256793 63255274 343969281 794686250 936390989 205949110 681304892 740090020 808242744 264726372 761666894 917620616 943642695 357033966 497666373 918543846 920114888 258719966 406695878 374372182 607498722 872560582 944071201 495629511 714329740 847789974 900088390 151216057 591188091 217415833 819988504 154349080 479734684 131927756 934735831 389679219 866278005 59813988 112880870 645803681 990235483 637949539 964807307 493338218 636529476 23360038 391032012 437057068 681067246 309609424 317180252 566188838 965902912 835056662 905479062 302827254 332470245 809424270 995104084 144312818 890193021 128809200 779881916 940451608 994848792 784495689 792978553 505034362 882358737 556478390 673622928 203784018 339094268 808056057 978902908 780164613 917293594 763942656 868397554 471532867 896615804 252795792 400364038 43713367 996182237 346719886 609443411 161829323 429119797 466148729 614105376 936141905 981013561 579237785 934352607 931652367 949830179 557373811 732418489 926068828 957643867 579168988 581852664 495381243 712432643 169821949 781903445 913878093 993577937 316773232 980774692 675826874 824479308 782560034 965795703 285759198 329658541 353643036 718498149 272057210 949542183 386494830 560813886 305365227 769276610 707733563 711331781 591315403 951074723 77814494 817969773 754474622 998305249 386543066 870770844 850005917 866091557 198027701 545646776 790650837 939556440 637161541 794778867 556124908 576885739 442357376 872817748 404333694 467734802 2019512 40689986 93866478 702976769 598159454 711486246 476746529 999884447 216633289 405114001 738926983 812680653 990042286 995371857 241363614 675310538 955392064 961707177 600033315 802278025 213877145 251034651 535301942 754415850 112672533 765061141 407665867 675697588 46088762 520971403 610545998 632747701 638464310 936952927 615727621 821183631 241953817 911765677 716514922 868119072 23421057 945481901 481012749 878681562 757934408 992324848 172545874 583025056 133413645 510009116 778958569 811488155 413015266 940085250 27027391 269736736 711455577 892716660 353922264 783682085 784507753 985967598 107807124 866992235 95343752 654155297 602050274 838638384 835956144 843195185 748691076 926221363 396576326 397846487 765146052 799836878 459170450 880245540 123241480 428434106 809910823 898137688 209271 71663247 988211118 997694610 265640490 444903140 654777129 874183548 484202265 589286484 275013861 346871376 49840666 213813873 563556479 723171273 259633925 535419163 338664976 694730068 564086033 970221173 153270580 995022997 670625441 998610328 487773461 558355454 457597214 472907358 11813145 141446145 249476384 709573738 162731656 816123003 123108782 839132871 950944505 951461274 276086147 620837432 4640589 635201294 697733545 745919308 193545649 810853352 778629308 874447266 802282229 974336534 195378403 452302873 466679306 608204480 413621941 640900447 473363296 547118279 533256834 841699369 160697382 387368775 74290723 351622423 166179294 428583530 429185932 625934424 156945565 448571591 154164285 740588994 209628183 333387805 719478582 841077501 609154685 706588652 927710764 934169961 738486667 996712163 980133040 995520237 38470351 205193957 222209367 661123344 398377686 865494161 141709694 227915798 834540058 906242741 327703271 392236225 761473941 973494827 460423029 481868082 908840660 959595252 473203456 718162473 287166182 806740339 109360153 162938946 293255175 610909753 274430927 377103755 710250111 715331450 727146372 766218830 95821512 228487467 173551579 893955893 422675301 686071231 806684034 952879040 924210860 999052113 136103008 665467906 462303543 706025575 933200508 984577633 927649619 946320420 554071340 907432124 725606569 772209656 268469145 751527037 321187890 863257623 441965731 786928887 284111999 368986648 757681378 769089631 950458305 977019855 343878607 877724676 779829802 966164495 262195180 791689914 399010891 537445933 516091456 923822799 181818703 515686461 232273641 707092332 749062301 777224325 904129289 998243675 441400839 609892415 30767738 586194461 787875493 930521533 961306061 966329598 383576780 727614487 141824758 166118932 371303581 934900613 408711492 617806465 674553251 927311322 688835783 838782634 917971727 996970150 285152582 846405528 139173790 236290575 764487458 815766591 200092083 908097832 800895888 820322126 909222772 943877939 373588727 681823407 490518489 809819336 188118074 188912257 855852196 913967746 417224707 487945497 566706422 661465636 381797694 829574684 147754836 301547565 973881859 999871543 938922122 975486734 127264524 813371986 386966154 532278932 48370672 305403561 665746021 903434646 199853643 659607770 224368462 761980199 278457780 915401335 418637025 831935202 72112248 590620771 335039053 983215218 614944990 938163054 695371377 879302658 926437602 948507960 760579312 882279942 231031951 806612524 451439927 676252982 122989384 253470063 383383269 626582037 283862001 573772693 819964490 894411436 912559961 927848956 589804100 764490277 274080368 562692064 407234617 578483995 985001622 986016307 234000375 234343899 87532840 189220146 534915644 566710153 133321758 924194262 260061917 771162682 210192802 373500535 85901068 584598575 223877182 240015372 780087189 955735731 63270704 283589387 118680441 911659523 576204933 891287564 425179955 803657143 760619483 912464378 451022571 474588805 458555491 990713851 614483807 859394574 543482847 734794715 588628440 654995818 117436959 518332866 288121663 561702967 40918209 927020851 741264992 866746522 434373597 501148603 465727597 935318921 314147186 484803920 869347724 895179246 887347018 977513579 574136236 830809020 226297901 922006903 33364707 891545237 814215420 829006229 427240739 654198767 659654838 828972794 982824302 995134766 912276341 934555348 518696058 587027517 271350456 335519934 316054127 850482487 528111914 872539500 131144169 983320862 988882116 993937457 887706011 902380808 890795323 938997277 396132287 488934747 360287827 472580148 153954067 523693619 527596640 867942971 418004953 952863989 876795620 896854727 568252603 881430336 643685133 973143331 843053418 942792323 502342865 701347422 316947337 583205117 112278127 346711727 702535444 895388684 741016941 964450680 989175101 992929649 495104644 546571779 545724057 680814287 621417566 948998025 778641431 854598542 138388469 690855866 662405366 686609266 445061677 535332739 659097328 962661403 303005564 666754838 600462105 775466454 405176402 941450261 823957224 825240907 661624395 895544982 993369243 996522433 677866195 774992719 581587284 725663390 492072081 925998183 273475130 274138767 647360334 808496167 872079194 891763861 630889665 807842466 258666145 385612420 47739796 638032853 586760978 969289023 311690211 417378994 674233881 755777574 974279129 974979798 658773286 986246527 658731805 699800834 265337048 840858256 999071338 999687334 194563935 351671248 322710213 338998418 490753051 748400146 627049211 714409194 46861499 262107979 197861405 764646603 711283444 988774483 442063144 490655318 288970691 691467912 414285906 607648231 460077778 754762286 7773492 320053903 487492106 522096339 696396444 713633468 698472906 795487142 715389973 989965363 331905349 755161900 567055201 806525220 127691351 436130048 312575510 671637135 976495433 979061636 971956394 993661754 287998152 356730543 630124680 727009171 829015345 934056873 923191659 945292747 564167027 819178225 974918689 978708619 753997333 806369687 745652955 876985815 898603641 903247472 262611644 617861688 713420015 932799229 366498627 472500092 946079330 982873456 561846175 808349529 264913758 644803194 640095541 643092521 277339636 827835106 915991382 932184617 633834086 754195329 882316882 956997523 979319528 993069107 119542370 697008945 966608820 998561703 308240578 384898320 748221575 800930677 757159686 840641650 943665536 980771875 939529377 986563405 533273705 886349788 302547072 557788301 938760891 979722817 308769233 902118276 517405000 961053806 287913863 723518323 318804126 754311996 426122170 621484709 551578973 721182204 710398296 897665321 521463876 680465828 141754169 370087607 62431436 880686573 649115941 762534075 655119615 867743807 888503232 977333191 125612326 911266716 977620842 983744525 425474948 805675713 492518704 632496519 502638884 584065359 549432941 803121206 403516449 529929590 807187418 946785206 790043779 938445501 412287862 787431653 32719402 300172749 304344724 746670274 140287683 893041042 761018656 982824302 131369187 831776730 725551166 906670615 914045690 916369304 225568216 691464547 255743068 600205507 642363364 933326529 752023295 937122270 290440572 723579818 724253058 814996255 970477511 970810736 520343040 647285940 888094587 971854186 725566227 803724423 969313973 997756865 636462701 791305862 880807518 905635343 934997615 994591056 561423405 911912975 598324054 969826456 628583059 754245045 469811544 798487459 367959068 974505727 672121857 851751195 227777456 746123916 650783844 780658226 692614944 891225601 293941253 598314329 578112549 655958153 322759036 647150840 932045690 950501621 916351662 928119949 351221299 994707844 113192809 917476063 324145238 514377951 332453687 818821933 668664562 900729696 728584311 768338181 920905410 949666677 220110222 739081659 496490786 596809138 388252870 796704928 576656212 972661163 623298096 737009275 326647664 928969972 999740018 999833458 694088850 775910914 886006006 912591708 52825898 170244587 773506914 909093641 190253629 314230286 323108602 954929747 739098448 811392873 372681673 704079465 318535212 965564493 851697640 881922601 336497290 667505570 544901446 837236313 791312993 994297682 146909017 754688600 879426310 927119678 329163181 698803151 376542262 699868564 560560245 985526302 271356524 813164520 745772699 801247220 511013099 594653706 973240769 980116684 439166638 489403519 298294671 707894921 119404846 789390193 576414768 758252987 709435426 809810809 665977510 729713591 583705885 894851746 281500236 840520777 290574183 430462284 671038216 928806669 102199258 890160653 505525930 570469457 52106820 690451707 237726681 642864914 234580264 286931304 122802120 790788344 254351877 727929665 667660092 846522019 606960933 801700468 939138544 963648361 749247232 940650715 670197986 993764308 385619350 924554913 379915357 901081853 475078461 986885156 948737681 980322818 3763422 175677924 262281596 691673321 476948220 794945820 566777556 752556560 203311668 311778778 796761885 906907359 139303439 946743230 585331 387075357 654325647 891903059 368943974 909426964 814826088 899591810 209898758 647544279 307413108 722577856 185194577 259230983 500153022 563358792 111964355 856537306 722170739 825866851 8121991 312631685 804708009 864329344 770633616 786070332 404359905 516031494 367988399 983961966 218162942 386535384 639647534 887113298 287184196 747920235 744835345 912654071 485144482 810996639 134466011 864917871 104833655 118906994 803596155 931271816 365498222 659835752 734008658 988966997 953243694 966382169 260659331 411607308 502493839 961372224 501949988 584287343 132297959 979979425 541848120 984271687 191346358 952687609 516692569 977549043 687873304 812728305 585607405 944402716 799159716 835488298 179403339 987611536 577911724 722028903 506300787 517998180 819818896 823712693 162675673 654859070 707499204 713369796 356542691 749960682 593808001 599649593 624991271 835675984 485008056 854648401 750275018 811186647 158909596 231368414 462384927 502477052 655072676 761148659 172375806 839939473 752414822 864706489 88121608 569696260 118979805 866974499 937052996 999853305 845637074 850957568 827841980 855088001 658831629 674298115 512591300 849399188 750735057 967374918 231841372 648612918 241496891 428513311 868263191 935677727 900796665 992841771 409902433 431179836 357735186 450481675 205147915 353488990 323439193 366790803 295738978 745096755 694636969 830697780 827736266 980639904 852909816 879232465 380799575 428026943 25470445 341722918 168192641 469545667 469975192 738631608 311024351 523469342 72825778 790364773 585064872 933342413 426454620 915941852 533670896 549200891 199863138 473253941 299212350 310314506 932591220 979413552 850332333 981476217 359262318 868522799 182170822 295920324 571529047 948861574 436229959 476660305 434688474 870036969 328623362 507102051 833492540 956984919 308350571 608359081 305343320 851117523 381872855 716623205 89124202 865194917 933610078 953345321 161882421 924059298 188094582 543161421 250837273 957260402 188036094 450503237 868660879 890952799 682382006 937078592 836521074 942148195 307737735 840932274 713424209 863869769 768651307 850421175 189856328 695585240 228579965 373850500 326897969 800960910 982282528 991207977 485440307 742117840 730372105 858775303 285462432 608290786 461074747 790006829 990206043 995099815 340277690 937538307 775380518 957740556 474541546 942882322 295718934 866878520 516116368 921996619 742444830 910766828 937564968 943029948 501423989 801909304 371349798 906211766 788943340 903186246 729022442 803376317 300234035 370883140 75850657 416422457 923804077 943702450 694636547 878079640 509421512 753967887 496992444 586733500 223585357 870051723 80316606 659581643 824644467 878514755 882708639 916098129 365846731 560743847 630683564 958574688 673147325 957684978 505565463 715661418 244124967 379548908 177916008 438136226 276437049 809300510 960907100 977430873 828180698 894431415 200629214 492826762 545914841 938986387 136138548 576987080 67063809 634176194 124364663 733034120 363512515 669296584 8719498 962028379 184098966 786661609 285055852 364454179 324753082 758599450 698071003 882692085 571410457 698229099 436757120 631052184 173106222 897004243 188846686 817058987 996868433 998871681 374733291 546869334 732357813 974246133 453481391 939849076 860310681 998967476 574812488 756498587 378305766 886367265 499032716 985692603 197261652 977570653 924999976 999995221 442126531 501704189 744045529 988998359 299262228 400646887 661947560 705035947 710166575 980530452 727087364 780284481 4861580 618514730 834232016 948754629 523966967 752360592 772273013 819396006 761937593 813094782 949127151 962144100 200083356 751776179 215954738 430237174 702766384 717518232 912886968 927226990 896651104 951744742 612522708 999813919 632167052 995299354 734082556 818018635 128169141 493145308 537819265 725837172 64646935 551817947 58608774 828748077 733710913 764144155 604156944 714909493 630019090 839781181 424668501 601033857 436129942 617029428 551126028 623270413 611458667 685569865 508284446 693954715 705675655 874199692 830934350 916094468 457743914 708289844 626990649 902825206 554646071 998577107 493203603 783089757 342256254 993349035 247549194 801563762 450914082 849873581 612496937 727194591 199082973 532431066 830394516 917277242 911969189 945669105 94316164 793259418 952102718 974073230 167350594 410484394 834287715 973852567 292259732 398017366 487787947 723960282 140184075 401199605 427771643 665569943 89598677 355092003 388792344 730208305 740717768 886886719 366835468 424481864 39746446 190945719 14474595 77254015 978785741 995617667 605046439 852902254 954534187 972161376 707625209 841397607 351069506 723304686 580116028 819256186 582287281 770145115 255646159 728370359 12853959 968261445 832995806 971831198 342337017 591774511 874760676 892714058 862763936 978358475 321843691 456866868 308577803 623966286 812290653 930037769 783583509 936335846 309697274 939765679 81075292 635594417 385246593 388653375 986978175 994378691 824433405 905885194 806378166 846648435 608267532 725226967 428446574 539202434 941256323 995101445 132461267 483775455 607106682 628321325 29980848 939461157 474409108 974178399 251168897 413916432 853747124 903062284 929916451 936237939 114450738 213760604 747647405 870690600 960416337 982563366 836070076 958280073 623947109 750785803 415465082 785574976 286308447 628018543 376230095 853808174 141188926 622624115 512950024 786183860 62734722 798496530 891187566 928051270 463265485 853234045 594631421 677621269 452221351 999811995 980596281 982373150 816830624 988683378 914694278 984727767 151901438 772144541 898381512 959883496 35268096 215433995 26294321 472264875 212444604 282243682 562921281 864875053 700347819 702206641 738979640 805404100 948014453 973970881 590315552 829885261 44889626 70294002 549693071 835485662 783074060 833212952 461432540 602119550 305731665 994525032 135208767 710894282 180367704 200400729 611057091 869649058 738766226 873909890 524341412 803054469 825407103 886603294 252942331 532550185 910119626 990577663 252862747 259857751 894786467 928078791 905416417 983069984 970203667 987591567 186636094 603499677 426823700 897025869 531847120 871434568 864575527 898788648 18666296 54402114 142806339 150259282 615583734 976945414 193005774 611617835 385180531 651430664 253182179 758369823 485897638 695838831 253225891 667338117 362597249 380531628 660586674 682863142 816098709 901332451 682659904 716491971 718775323 813414135 682342571 983863013 567563077 939890660 917492203 989602738 33541846 813887337 623655194 741865076 550681648 584965970 318850775 939281343 659219646 780984420 731169792 823288812 870326070 938231690 105232917 393195653 874385915 944170539 331616709 690778324 259616641 381643755 651832760 780586790 665120646 757242118 17113606 958821987 620232208 770702245 24590293 787218300 181225773 955064615 366706574 494887680 655278848 801580463 518725334 594996017 758655023 890546594 79596546 942136592 894787250 915654709 181285200 298736119 783708989 809780246 680618637 967496038 895226470 952267594 380376719 556684945 587198372 779354694 486508928 546829531 103730016 130411809 620932666 805526368 388156304 410217329 774545650 975731377 706817712 961047790 993200259 995434825 185281838 510093957 776418517 954305514 588434829 758516722 693802471 803294769 16053730 261238566 917565527 941642591 823891135 961431460 694325412 973773847 280281848 603609283 67282150 162682630 756120104 877006316 514211903 870834920 913209577 983663171 634659913 697397647 124744860 665557993 997088182 997563870 830186865 985347819 203842169 865383815 150278930 990373252 93060834 133195856 614698982 971757931 500996721 842771372 631779136 968672409 589853131 851195275 315744561 482270558 10213474 405575529 454671526 731828160 822251833 866172531 285405550 497593960 361410338 607761874 477922138 979373920 63683338 715874466 874766077 917877631 223972754 317219431 455128126 995045656 236959063 801408913 83218250 947998235 580942402 836788802 64710144 288730678 143411374 427734163 291952778 495587649 664666119 981059530 227026882 411002060 663619113 784011648 510440131 681537231 62990170 772404229 208999193 871401758 721377739 924377746 667599451 944371852 324360703 835981923 403397351 953957012 402655641 479023954 42413339 182088607 134971982 923398551 931394363 939459208 494460946 793753790 394065673 967416171 423495854 552156491 742254493 855668387 303914591 530394751 355705285 646616844 380210168 901257998 566091355 771975121 294230167 814719631 493098111 633845393 165132158 707028946 747243145 977152127 173471302 958604353 45027074 875180000 490109474 571962798 44427323 612856929 213194909 586801668 695558596 843563852 523284167 569328582 688466069 896114785 381912099 840539702 772979154 934366384 296954365 404221987 201565882 237876885 709113891 868035071 818725509 882274177 232083493 310872977 685838270 742372371 102956492 479711609 135157380 472895029 66847692 629314584 757038253 950554128 937301241 971015128 224850302 235520234 680756324 882559001 521839193 587276492 532537021 563760208 708051666 842386118 757592169 808200789 421810132 601688149 851208236 943844516 369933323 896650033 646953275 972312224 274590932 850720569 283618765 316412799 729779430 852190494 687694930 919109788 488255906 971398242 651008533 853546185 712312036 828198053 138211799 166620316 763933997 918536430 273160824 380212530 840274349 927177188 513450622 595496007 164163790 724396504 659850952 991515399 867710943 882596418 649953203 887251697 360294623 992483709 341776745 957999056 687970570 814362896 581922966 716971198 531705857 989636599 781926835 839252974 867106500 902050770 113899023 808539222 207049459 307708602 552390461 768150922 904732496 909989797 703760086 914401096 935585889 998325934 581695406 790034630 205311746 483488444 459196525 591196352 71365493 611677810 205465065 469326059 430762022 572943962 646380451 985146157 812684210 851696003 279556479 370660913 372690528 991285145 658633203 755925886 823826472 916015027 318539508 796729651 585227051 667393263 637019490 977433319 666770119 740568606 413931343 827835057 465233479 843933662 28848348 933289251 302205501 326470284 917882671 942833975 382096927 808291289 834910574 999250200 584161266 933577762 126167765 855190187 916083298 987135341 222821876 957573105 544585555 691063627 285893467 648783354 941437901 964155259 794588622 856654307 787254357 846416582 636942116 751787004 155821390 501350077 869115238 993417216 385703827 671641648 577522207 837511615 390535302 906760252 494902960 823855950 608198080 754088030 612288536 976925622 262827807 890421240 882505107 928142075 76121201 504460553 944060087 956181631 937490340 966756557 205249931 485579747 255796880 987329991 716113013 926395226 463053820 680593861 527004516 861549272 394838286 552682400 232860363 723729248 742260662 925245914 646485664 964265691 889745607 912223551 127854959 560183274 366258598 665197769 822464966 847256318 992890120 997230895 457005427 759808494 271664041 320308541 741844955 872100922 665599069 888659352 253646021 879636346 584851741 790790338 171647546 444114085 365467578 610999932 468001236 784706475 757332411 985605101 163505101 410707469 353757113 814060849 903227636 992533416 587463730 873285451 397798836 866036019 923537931 942929730 261322007 911658219 11167982 763630219 137839445 292347168 477023820 536386928 231502157 384493355 372994892 794251994 19555682 401717382 586816049 903391709 234601725 290104169 972482913 975610365 372681173 604677246 317687819 718293228 200013925 226710908 832696750 892399452 42540337 718376571 534405798 778024692 345943945 955572875 921672295 984009694 73591745 352610422 107742031 987171279 139303648 479090788 323263163 502079841 138799940 934213187 323379925 675995855 232530690 710959494 231316801 495956560 724547841 930317387 471440547 822202904 562331785 800378105 335418188 991526313 282178718 529227438 321593770 867123858 751913580 949188389 274307534 276188905 261085750 593114210 670848378 867216670 221083288 815325035 758300756 947328531 746715815 840504311 362435883 472328822 100634267 355792131 378015561 523462015 295232604 503503048 494970034 515318770 851720349 868542429 923890799 973264097 228914859 888047444 653290173 909386811 255044328 586749102 812976209 836893556 6969473 327870217 152978006 244461117 427981893 586715418 774070758 975821390 756098780 765378603 121326398 725980416 381081077 864765017 373606587 643620015 909529613 999653485 563877355 736312713 774724011 886821848 21366027 723790031 679524310 879993155 198120110 346069066 972936571 973504599 621384703 996770729 263293083 403129061 299854215 623310805 904961661 946350065 927848398 953904553 328212439 632164891 810999847 864517551 231294359 436229398 945938147 967322495 744156938 939524774 762809908 925591824 746283290 885322513 478485033 835922114 141452515 334405255 20551509 291625327 459813463 593198366 129995861 926646076 532283516 908525549 430840479 906021615 465304614 674520461 561511861 617924912 556575394 872203715 930698368 983561057 25510996 186120961 447912941 768857952 924132 297456254 582307744 999183242 706676288 968402441 719213807 861944693 975968228 998031039 688745568 954285262 182561348 530996898 305632391 508335876 24241402 911926842 799655414 979697356 544712833 702874919 818876171 829492758 383759904 899891940 217553973 840513985 84194818 757059072 290525866 667901264 705932626 768419208 755388364 955479657 225119626 780774890 519013180 872770943 423976909 745650143 520686519 935676561 600609320 826800338 737747852 854350630 693775195 703178797 372822281 908816892 600739414 809949994 89089266 255717168 31725414 529083379 339935230 655457041 801852414 918371037 196564641 721506900 926506795 960343079 163951621 988494783 222952956 854865890 486042363 592083692 636833429 656269472 913055655 986333849 471069383 501860024 282960275 812205988 130560380 374308875 953968829 996089510 209826831 414981447 242207310 714735366 372291445 620080016 661869486 898495755 475648254 562967889 420460996 958752946 806035607 959708086 129531598 497475619 500853201 726365762 394305413 970593463 326037385 367662967 916099324 948819692 502230031 769165093 472572092 576538644 185814300 768166247 686181950 846357924 708472885 846659008 38876728 424779043 562432472 648758553 123848142 631626948 10587434 952861797 876766799 972904824 406119475 688482349 420973274 562629643 626153186 770941382 139571380 619603956 966586398 968175347 79396104 158225328 972390266 994008056 512113909 920256398 159181 110649686 554776894 931293799 18791488 608057539 388436103 961679902 153735324 754180025 846285801 963058404 130076638 399389386 592356961 976719477 350707910 519595174 498051233 571183220 362323054 991233139 103648845 287164904 758267279 925318239 170887967 301405319 681663977 857983385 963878065 967564559 850386416 905190822 504495846 582890816 606727293 688951475 285884554 343566151 520050126 747634044 674120588 953275048 200302666 766764722 29645484 349681679 125231661 476813716 446122924 726138112 727823196 820024630 769399178 852872501 7914024 600528753 931499438 940445654 524895283 682214148 163495436 355015134 397965495 826323971 283410449 857615406 286131190 893975895 854061109 985975557 34062042 109884641 219240865 397918516 778763029 949126923 544324996 987091522 606858421 731527868 383992180 960772808 809435356 918676593 815178952 824296395 282567652 857664467 940202663 977790054 761170434 895778204 31016950 805428635 748764506 959931666 983072975 986661283 792209492 883476209 650826946 740038610 507967509 664063327 615892658 809269932 775449272 834583075 116350169 643141704 103526555 517639876 363468519 676401830 842686111 918882176 712546830 845512825 754249137 805855188 364551041 548313561 44007598 305608014 309334196 613077306 574904033 930033471 551401598 673030046 315181539 865366283 604256492 721716087 69259934 300564037 602323280 626191477 33250673 492083291 430133205 596991154 104186293 523068437 740294526 848949885 191004691 664913207 148270027 544234734 197991327 384704815 311931485 473848743 946553049 957390466 117134818 230820946 573329682 963101092 589589089 969455259 834122301 966474051 261406959 688003834 17525786 469142141 870843145 958855825 961495961 994437004 182889002 602799159 214372689 270152805 964036219 996582048 52003428 532411780 911329958 945164493 184274244 975079013 775844888 852069507 8687811 548961019 812582876 852741747 363968154 975666411 165826405 648899793 564253672 588016231 835140335 865597901 804314867 926797363 868113824 902694651 546530930 604340007 329043820 575058977 803679116 831597822 953144572 964028531 798235677 809049397 533264332 997440755 253548320 840592289 87134120 592490398 544183670 854527384 941723086 958325205 186005094 812013724 85020953 284146165 982949537 990213808 408388236 472148849 556195959 994840854 384109265 423198271 786951868 950255508 188731817 953277196 355906533 857625992 404513264 947584045 706488355 974118874 770636928 984455375 861149931 951180638 679794930 936138008 142702873 160805533 369824848 764219073 856147494 956810585 748897138 776630648 487130151 918566202 621502446 861767840 430745170 447636256 402008795 717362940 443651279 516438700 917745373 959413816 129952617 440370074 250669035 758466056 699433563 889028739 236487238 785560007 452263803 594448055 519503964 698044298 344136277 539328354 161957504 593071773 165659464 390820749 393445301 530303656 932034594 945478867 630145434 810458186 49728236 168568644 44848831 547925428 176273668 475174928 136939331 512478879 188457552 716547826 585775982 681263697 305966610 462151984 323102497 873116035 91454983 711367089 588071838 665228658 186186315 682945342 624678019 787793892 293962440 876655169 290485704 396995816 962179955 977934679 421006642 534495454 594942440 596955142 516855093 593789906 305117701 630496065 715104903 904691624 261745756 448593738 168668595 213519772 712594775 952147769 688706663 734102696 792660919 793721511 532438962 746231017 327352774 577110295 390637094 782659699 600598714 780142812 583370569 983203282 820324358 828822082 80628551 977112411 836044959 847284587 948321707 949591578 54887801 814436969 260652605 399305629 110725029 840786540 102540435 207266515 106584802 364922562 182129699 586887467 835900087 956641832 865158656 964009553 394050420 646038556 955439294 956224809 663543520 740506851 806854085 996355684 855772928 976636231 657545934 876819983 757811389 921284516 379013606 633931125 795898476 953632534 519539587 740310621 51909742 746181883 74936529 935156708 236580239 414442109 113015445 736848753 2641875 132172012 888431741 945602555 119819450 174149535 631879227 916009358 464671825 584000847 498861736 855128871 999658322 999745985 137708843 949160386 83701368 934868281 121664575 969683635 629983817 634189772 854660090 900947233 825392980 998949557 945820058 985280800 856385778 942710598 807510851 817946687 273247364 470477330 135193062 163818102 528206345 866227268 9052553 999708627 28311608 35991913 526145004 931106639 928505209 936454370 865404834 968161683 478612925 956898237 190458798 213801227 979060780 993352221 256226327 564116400 626757440 852534301 169967857 174272947 410835991 703628683 31124022 716351440 400831611 590327377 538805222 753669176 245476732 492929513 798364164 814266187 295560228 339114381 916210645 992991681 112654475 691924549 150578520 428965681 345293888 398058573 334415219 524923552 451427814 523562140 761538689 876807482 934173341 934677342 197033772 271362196 198186859 206669981 210893380 752060707 522759409 910588532 716456153 716902247 669717954 723158397 952260217 962108412 377734293 434621165 184078003 792372113 66221731 412413164 672193098 699256140 247218227 522725496 603671991 813643664 264089435 807912772 700045858 777948236 517420197 911653219 525120286 559634987 453814936 843607342 30784058 836761486 243156716 717857599 40299841 439685080 974188273 978649892 234914175 446336700 205875486 802335458 803664608 996752741 312890986 821640411 118572073 157129422 137255166 983700786 77081343 700399186 150717299 513355942 495525939 823399185 559492284 813227327 690181921 696829990 545008134 559470989 403169549 605854887 583510385 615669737 348253928 759033586 377611582 930114688 946087093 997960237 115767887 909932453 31831813 485888424 173739901 858630468 593989082 813146007 101841646 192766557 135247158 172664611 72453626 306070100 70075108 656862287 88549033 857791512 532097534 979378939 883412273 989271119 722066674 839018491 962548459 997835631 794592613 986772475 733096066 769240507 629552642 974454068 73008541 759166713 689644328 918071955 248660494 720356506 591808920 896347357 472834502 930344438 33317224 409056049 929930683 962304188 52657275 262329018 615986982 845287645 908391256 943494710 813949029 977639294 230704858 243394132 763517643 848658246 32995184 86534520 676861758 806677030 320854655 791594959 60759169 759408618 315855449 483541370 339785744 861397563 878057365 887122426 503852193 612109873 125731412 946089371 864668779 957465989 877178759 980915044 783654800 796667701 793307716 822940317 192492452 829710882 405364500 611670974 786778481 917902586 270431562 847675836 14559668 577026855 163486957 572041929 308724669 644456963 407499595 959006426 193832071 628438782 997185395 997509162 804306993 853466385 940745058 970540428 222643 476785870 717759061 785330690 943178108 967383710 24667168 914352131 499847147 616036785 297040999 756509063 199297967 993533055 137603822 667789688 674345189 976563373 518196710 533480060 57988122 561477994 745962428 946142605 201614103 759687874 468281041 860418533 584157400 815903423 43321540 212613925 896871821 934244269 597484870 966293835 664625035 698054353 590872034 956029963 816811636 930883713 106035322 863245036 717877557 895953354 306928428 801031337 304900069 852997815 223490872 484748489 965911977 967060916 945179975 972630934 771132212 781757361 975029407 996337989 207944536 799643119 939590834 981165677 241650907 972719818 840540689 997187160 220548334 905303858 485873969 524985061 733751801 876285341 180347643 559577478 885263148 922806861 620059984 825148438 999450144 999886562 480490700 743303119 799816109 903215150 468798671 940931375 222015276 827864937 147026700 380122916 427517204 596573179 392708224 728114857 46704461 926201503 943024693 994563262 462204621 995517762 776877809 908864582 869140830 957786808 594862112 803794174 31927328 898652584 736244312 740081457 191060336 627745062 697983154 909578420 692884922 866355223 524746825 797890658 94375139 788222319 625969214 723313139 203398203 685601956 92051001 501255422 665529300 844995332 511382266 781951247 668401508 979209986 896059267 910940201 543436373 843879420 790266730 863516009 57792530 862354516 424357740 911243810 343494681 742637620 127200023 545262651 886872315 960883102 772228760 793876965 587543469 953210485 301569014 807850430 228814547 930654441 118517887 415261295 277329047 475412797 916004945 967750067 569888810 745011140 102616015 878471506 598931741 786583870 211568214 493140023 544841874 810711783 42075734 297984857 793261366 957013947 304366442 819316127 453033187 497312017 26023009 330574056 445753114 705083379 365460974 794276222 616902443 737120624 676163718 820780028 564222433 601140259 480692962 636128938 751521708 883522679 468133146 488450730 477063833 569004108 720997729 979708218 835277906 922916243 137489764 978222713 246517203 270566758 373472213 531497915 992546562 994267932 160813038 729909916 613910653 729261544 670800000 998483413 244186939 468906841 676276253 975325591 558223668 612980044 370393700 738077909 417370291 972315993 79679232 334256322 738969071 896304135 967802461 973906056 912938073 944056743 126806026 617715727 278640595 543847398 988705229 997735763 191952792 796618641 736431845 821424091 331319486 751619755 85424668 402667313 495219892 885452561 840623321 849523266 565346209 656670815 543563678 715939492 853211867 933493926 404538016 418047797 146244595 614361109 991327279 996393159 840704973 914738832 929360353 978030031 461026974 583879129 624128003 774144555 810000527 903374458 491737738 630247290 314174772 392070758 516182925 614163023 136870935 943774261 625142066 898120916 779178551 880673923 671784184 692446914 754422054 901944864 987998885 989271228 754160814 796395016 823112352 850154235 482399973 619542308 817935575 851133564 828804792 981710560 126009431 917304122 776820679 927144395 59824454 296076996 241772319 266303237 93447233 456992400 997919050 998024160 133181627 234394089 677885424 876923294 30277161 629746456 110622957 409798259 595722634 981601662 781317421 805992888 1888749 619990856 235552790 886138044 829456569 915173019 96320952 149491520 991500809 992091904 641618564 976730857 328883212 635012175 263428857 570469522 255791229 811620307 10157629 807970863 740450634 950205716 723866285 784146073 427779136 933579903 642382074 671827030 958169391 999177957 636013375 934540401 231528141 952424858 651288113 996574933 444200470 856968929 461556593 502193229 483253670 512157499 150338586 319727241 256502484 849437113 917480301 980955863 215676414 289078380 207551173 382106475 264235738 428539290 989803195 998385682 433370557 813096376 243873992 288335804 227175412 380169761 552891420 714773186 346747419 996003577 186705842 469610683 184828243 844589525 334555395 673248151 298425983 391821667 291132507 692524889 486216316 774606858 983174466 991082317 825974973 841032709 923614391 945729028 678877317 899828973 122678490 872212201 426802139 953342200 455683219 925987281 207281243 631812591 882175229 953149444 585260496 954494627 624686286 899391139 888976408 896251516 232869073 625213762 7641834 387091402 683668211 821859269 180727009 384496082 479369582 991645686 897001334 968990047 374603473 697618933 749518147 812761951 660779368 891992506 462590730 902626912 540540668 782789658 822546787 885082507 148237925 895234811 872017182 902031368 49018647 167023027 372068771 854780685 106401974 301452357 491854978 978866409 444607179 987613229 531766651 606011761 825727105 852338626 348404993 392466729 596586065 865534550 469831503 513317380 201557848 986728828 88758905 158832438 280225482 619263783 174205786 524243991 423948368 959861853 898990702 961254789 160244228 711845268 753470249 993054206 206958413 608881496 677381884 983746523 696258450 802502362 471086956 856600163 762612260 767277908 781560048 864164431 54084913 219847493 115357904 429286233 587368401 981578330 80945475 427027862 297916346 574391560 797339872 960831054 521951285 779282089 93324482 712954263 147486072 583483681 401924472 767013696 89014854 128054113 946605417 993839527 419536299 688150456 876765047 892692653 809136466 821506744 86869665 997613606 542612623 670010171 313082996 699958206 388124364 930919823 439732939 629253379 57627316 739034921 37150033 161783902 832923045 928412937 290516294 726309223 179637037 578172512 557569679 708345736 702140982 892401356 355619314 920075825 48131694 60587532 109648153 943751985 398393121 414629825 825174945 884697667 170995925 785383203 467370170 986634521 747285283 809648673 781943692 891739231 772590604 904245421 762166637 933942614 371080527 962853679 241152395 675299231 675485558 719213972 777213653 889714616 400946636 463980536 998693444 999826099 576132098 821899141 509769680 529108882 638616319 752618255 357827676 566744024 741958527 922892496 37120480 773970519 636377709 731912147 128293756 461059757 4649664 606172302 520714282 544307672 834193665 912960094 134862063 351026775 58581354 791676811 415521816 863955897 735377600 802967186 620350147 725009149 995232948 996647214 960028956 980789617 58640772 730368751 834275987 852187076 862357909 943004197 536691042 938161957 201065188 635109004 634704991 767255640 258281159 498420753 419536535 544125123 445141402 618934743 878520249 981687014 792298500 793960912 459299156 894432149 903025404 915715160 459005131 961126607 946948545 967165581 509818204 880159130 411148221 779729527 160982293 460913416 467556949 690539236 416679798 960379834 377153179 394563056 768914201 895560064 758554196 936344341 760227087 993964361 654737315 985421799 496831892 525564216 30014411 202498182 639449064 816411353 432065586 449764704 591798079 642657234 807084 409212472 380629303 915579391 598535605 971741718 116978272 468593631 91744642 345154854 861018729 919190656 826202620 893407639 86680726 115286074 500087607 653329165 864160424 997250752 866993057 999301160 339360997 649220666 879085475 884480612 122426662 570960629 126379257 182096755 627859585 716166380 711862027 779147222 90426285 249226251 288774430 696588298 631963346 883523854 900665503 926591927 582351742 821638220 619799699 805681351 218982205 294378897 768928049 890918296 761546945 785596212 427840782 785426341 265023704 421185862 666154535 985316241 976758259 989971874 714131422 800170031 572835808 649307782 6813082 287637032 194467128 287180913 735792654 766512223 346801794 785243707 363568363 431377771 590330634 594365453 141654111 662471050 794205117 932274320 919323439 999916278 554735800 972057153 241130215 285492641 741691242 922044900 706978583 812637557 328386481 596314827 5892107 868063864 304091227 479536503 591726276 611066068 864247797 922332547 593922160 768183115 902477241 908188776 998408239 999229368 81019273 249086981 807434635 986765270 18486741 808733973 546232680 606507355 701718000 814410209 334446436 952315246 800405045 831944222 568704489 826407164 715831302 745113061 63275361 766092578 900846874 947067094 31734637 633007631 53286569 638559254 323359829 667801798 853398395 922247090 377290398 788489560 776889293 964152812 816610206 889130455 514454319 591136499 425686724 426288670 65508997 662011835 887527869 900133893 873302661 909565076 922488562 991826688 33912607 377602797 553512017 965344249 75399164 825384143 373135212 471125399 135552579 670936772 38508316 592651795 19356539 631731991 216798854 975317956 336364993 823058872 138839808 519700093 755202034 980412298 533891274 877892177 75152708 145140673 156303410 830774540 48623200 341385881 156057102 906805507 365505583 486990934 627198061 928115276 753828942 810844726 632248163 651673125 649289911 805456423 500200172 774617747 325618563 571801698 563399084 754412537 136882231 296595365 751909209 899375281 921062044 992954325 743565047 918454289 95160847 174011361 113032070 721934155 640441282 746353312 366911584 792106072 897785697 975211340 759080136 858449461 586271301 931734722 738745061 794718039 593317411 680513793 844760660 968836107 599646624 607653110 240177634 743196512 65640445 211096505 687634773 707388292 261243031 332730323 177912393 250082734 44492493 435392974 515145568 896120537 291053803 499231915 862173485 867611741 675664495 939885370 400257117 934681976 699807641 962826050 482829688 873044177 531861706 739142094 777919407 850697318 405602706 643719733 147788776 835007301 205984609 257275684 99550176 857880047 876002835 894454467 163590042 916155703 431511752 916038961 112879211 717219114 535884261 967166910 929874143 996836236 246135937 982038380 684146351 729829575 181737579 590223543 49859649 740639901 114975416 350597678 297760430 631676639 973161924 998279218 584921613 977319161 17730491 77270752 475147235 969796060 510691904 928829830 659877470 967257128 689709495 943149699 395447447 957239586 682210828 951110408 132852487 793940287 639440961 943979477 2621621 688603827 554531442 727989211 746476513 913765706 845052496 962733740 291681887 558600681 749529386 951406463 372769400 463519373 449431769 638419358 869836676 983609517 517681680 771367144 711833161 965811430 837101241 892972128 671106198 889241616 257572282 774451770 869206562 942571899 334447035 569998597 833239562 985605479 904163370 977850883 969983967 991389262 966894036 997714624 567118059 606487705 756620258 772836822 96160552 961754489 561379168 709069168 297727052 526371855 41159864 918330039 205601723 948709173 21917019 368946264 606737726 850750726 83482412 841293084 230682838 773558612 601236969 836546886 996652889 999785249 196696698 655600261 673455521 770939448 332867563 578748211 25089278 850574666 692024239 955278258 29304087 680073879 381218658 558899313 932984544 954246026 711412669 723142485 778180131 814871668 986154606 988426955 468520260 876417417 465344290 466834373 73003677 686638293 677504500 958779380 750911744 837649963 291717555 319308382 741234207 945228758 184824691 339686598 767686467 770762481 202078297 541593195 561790898 708955812 244882226 836917095 322566958 619299292 557358391 924444311 501639788 593368517 369960920 587699979 386869131 803713314 263950003 777712065 712715572 807270861 315651510 504189482 716097286 925341368 351473219 550311157 985968398 987556896 943806440 954662389 728938247 769520207 636074004 797600261 922724222 967515252 689073799 760825147 789322975 913305671 404545936 865724077 97718038 103111629 62144963 522173497 144132883 423733132 588228243 633330973 111793627 607619461 862965317 996113597 247709622 375626898 233658821 737518699 500351989 715424608 799176276 926358493 215232506 218960990 593357469 677309047 533558023 733595909 524021362 846006478 975528874 976609635 111867951 930267809 438078091 890816928 350097469 365013201 152862025 927489244 792177148 843395090 87168166 708941785 939113473 995197588 966118195 975527720 860037992 932493866 464277592 489682275 561596702 811334361 911779199 950021692 357045333 422585582 112807288 331627560 537548549 865739270 99398859 477378064 217986759 602601148 592047496 645953649 670959641 720456348 797570389 870251850 502147333 522786619 794122617 888668601 420657456 456827420 113931972 322260486 580327626 820340752 816912224 964438530 311726436 651983575 528765096 756089089 488942145 985804624 64303987 673672784 488773640 557157549 746746985 943840801 696084195 948055948 482917827 569085393 484026530 509613235 394961637 598143998 865266257 946788906 678302658 835858847 255423557 487972253 124720607 895405133 210865723 892086084 423510167 469656784 111631503 547802647 963106873 990782151 434440498 851111389 633060850 881717885 273317816 660507456 41320257 345843210 824419982 984944367 398042876 413917146 787476299 920981292 474757609 936267535 682315225 810677413 737615222 964542829 394886396 655698706 940413030 954675207 9485332 770891393 184897897 286669603 175691095 797873551 518987068 790152190 917347679 927023891 677610777 987769407 630208886 965910109 116808290 325162666 35748588 400557140 215416262 486204223 856984498 857309846 381852005 922706271 837902861 961266310 773865436 872266902 483288231 582370269 414696450 702259038 217043300 410646991 93037958 373871700 418333039 980392094 287887234 372084373 794344486 901158772 822399313 932541834 635875897 783653404 362201886 860630675 555555223 778408957 343357814 714143336 635705684 819690969 979180755 982537384 350382388 609090234 550917655 693691942 964462552 997563983 985816811 993235594 396164013 793158890 83855824 245762934 836365137 914804006 803569905 998937574 23837879 875355900 95674425 384701044 491152545 603904703 135538624 206298779 809636892 940166885 931752275 961918558 724601178 753094421 21129013 107533932 133738444 373058595 541970155 772555842 729781686 756085574 847555138 930549855 3347346 222007837 604251818 938652157 147313488 363475184 864020611 915663588 830857028 897718122 222844437 765461637 305030039 544199604 737779027 805661918 636111989 679996619 644017451 988575652 130379908 181123049 198625772 391705611 769035355 909215251 508527532 644218362 366721235 657880602 338644300 426578594 233385405 870063290 461788135 906860977 771005098 847095277 699951105 897092397 295525466 982101946 311502007 843266333 538485968 865106682 90991850 578659011 380629525 464784656 468131558 475541875 150503179 369744978 125596667 382990727 284767355 823612099 226399511 894117523 157175976 872189922 690247624 933707511 948599617 976934600 88562935 308448473 11334401 667917901 895291688 969003429 390904281 504307193 906308378 918135472 949018184 983675180 54360863 971291603 804035012 980731500 792422287 820168250 807401111 817872437 626325954 840164581 895155044 904340975 442381637 601385088 255737949 350438179 976950771 997776436 201811844 221122803 712563457 786589689 735158882 828505900 945305242 996896739 325156106 977428351 435989232 912860582 953643875 983744913 375928279 691778532 283984408 471476585 620690826 711472668 234947330 567545653 533961031 932531641 113158912 807924764 579292439 993731752 826441984 857555177 2207060 526888164 591681359 607045690 937516055 983007917 458979423 551221144 218533523 773492685 604388763 806331310 929129474 974455831 686815953 732879362 755364373 982147498 121869764 444015451 824409941 953899055 749343382 839851341 756270580 803809595 498337273 737147834 422798166 439255399 134576506 812721243 193279180 200937957 278798928 545537482 142244876 518251190 875531204 896380786 684694412 805396902 655497759 759201506 650749216 758974155 161739155 912157369 508583506 864919987 966490609 981886264 837091781 895183743 489873321 548126844 419933419 682577212 699195157 796911134 477897999 733741110 893784411 917038357 45715119 696828726 76833986 198794252 670201122 981238478 389626346 700507074 635858720 778237741 243669397 249366065 399553257 698072142 383659037 893896454 621572517 695726985 714315700 795756154 72131241 734775695 846812479 885641651 46689120 477033029 854312164 877317993 693103331 988876571 895780470 996988877 523952594 568539222 813309450 976076306 847706296 886970577 192426813 448256140 997665039 999516364 932479824 966221385 402997127 949667984 108234307 464706215 377717966 587468538 327014754 769333873 939732030 966514954 180110599 743995944 233622366 898195941 703015804 824263786 986087398 993301806 587563243 956569061 347864152 849548262 462692911 467515194 932214931 937197289 756407917 954354896 299376608 630451008 347114116 379009716 18089470 596062586 925929813 956226109 710059638 736102771 315471790 836174634 343076606 534475219 592105834 854668958 271554404 573508254 185764223 555557065 209586830 596666162 714068396 848241316 151078903 607505730 444009861 896110155 354575123 403088828 329651925 973004007 627463619 738110865 905442597 941299175 615667165 722976851 237174136 988969516 648004900 837259894 123562788 300688677 577998339 799673736 716851875 742449468 97249054 730773518 160304946 553459860 211324424 405266073 503327147 521965708 665396101 979451066 837529424 972013680 439019623 937472901 708810175 770053446 625750068 682589273 156349607 586938978 209416863 464980695 441330285 789202271 719082058 993381808 878770182 993113032 200390938 324618786 812178188 840995240 191662254 776355293 811132686 831183254 582738141 953595451 150568093 746110845 251648960 363944707 420959082 470899254 576750546 884968868 412698514 550357009 676707994 796122438 720018725 802901910 779832400 827773806 173398697 678927575 174691579 585014799 739660717 869252677 915629422 940721129 997159997 997441685 878732595 981199475 29696338 768876165 970576438 995608735 625011610 924127879 197998598 399429164 123417705 587084413 331946891 474306070 692229497 764850750 4794786 741825855 753754545 876689925 326823521 446581075 275186762 295517163 906320773 941191091 41902104 645461662 700846262 975642885 604969228 929720088 994097272 994603783 440259498 599425852 957321376 965536782 857303035 895170707 396537900 521300012 24278374 319528188 256348566 545938191 112533002 868643873 696328179 697589310 366077995 917138254 255044569 861375385 467672207 765155398 679365944 994996596 423275497 656387591 763725259 870866091 739418089 936139059 898580400 973460107 500599963 926151817 636953727 712835096 839111204 866687426 556125483 921693053 138762224 298393261 341886478 940022239 456792035 484296028 819106765 842331483 397928340 697242794 945568569 990941865 81436738 215410967 157096983 527683006 279642388 449256221 978319735 999860607 935410341 991233162 447504737 699682417 691257471 860358417 127824748 179220582 558980699 810417240 507720942 913687081 480657718 894417343 921194306 950671003 61255721 512920238 942488968 976758665 43552098 97841400 835137126 893114153 618511250 787525881 341801330 774037720 776511396 846532694 85251008 206151392 365388436 914737997 439503106 775761172 580957860 761305022 457787714 662636175 883103004 907220612 135892360 498669162 525819769 667355721 448787189 728915848 258330900 531408293 990990516 997956643 655104909 801536554 234473718 706111595 236707259 582021298 320624018 668251088 395990859 905427362 636007725 753861491 540848184 884148924 741859608 803418071 209087862 228578240 16039108 281752569 614600549 830456485 109775653 694671388 67230223 240367066 550720124 613642394 443871197 968328493 862224694 989419708 871370233 872589508 575751705 617864235 408399307 628453492 584890851 828310879 681976406 756481039 855264224 871855130 627275708 833383836 906696183 937173986 265154250 393723947 372620956 441371220 916212003 982605286 892859495 951277416 702468056 776635759 494142107 756560748 459777038 664393854 160038952 546958117 279608903 287258955 753303109 968469763 559279027 894309322 197615335 959816873 633036868 823075372 516171342 968292082 67956875 659199987 19128995 552087320 90795911 520962029 598681396 814733721 58860027 180653419 460632559 867941944 365225138 626489725 584140317 622157087 950870564 984354283 112341907 486780627 157140238 439455494 967826739 967834942 756352826 801332494 64503407 167788839 848626449 909205873 250929877 643245104 870386140 930555875 518836758 989374326 611865900 774363050 289182187 516727789 832001746 894563140 487891941 711864618 641832209 871707562 634414709 639994824 976395274 981251653 510587316 588264457 619291254 804320642 398322484 596488362 895044795 985696917 589715620 672060612 247982173 478100238 422846345 499749172 968396652 974830758 220894016 221149558 905707066 928187151 547148024 700665179 620380912 703989116 322659892 826564931 64153555 791953424 590131396 697217483 954324241 980815849 56247029 931909922 433947366 686439284 524460793 537813597 389406104 957689641 155497403 344697222 139048911 602502200 998418936 999456450 95134551 904241834 12018908 944345277 35567556 216142016 749824190 882893869 839690395 957575942 150784136 180717812 242649395 963228389 498744702 624338086 117683916 940568755 902199394 926199507 246888074 558539699 290506280 647290689 149062603 313824092 65491791 619114998 258324003 526805310 793109998 935489362 739473094 946756444 311442976 651493617 668441151 731686341 121288430 247659382 172475312 418840006 970875437 994808045 744804490 937216582 147726906 837577008 495521962 939602209 863083869 974728835 143520487 279707432 544570479 806155130 568894535 880658950 742850666 980872449 291638031 329577288 32648428 273682756 655972366 912271609 399585896 813820313 257295998 638971814 333946947 656746698 729987279 770941823 715740760 941329903 855894281 858409619 769312694 862456641 949438291 976717063 234191681 690689555 801462797 941259082 804329046 997594083 1627980 505322579 129816115 463803996 174689671 205145195 408384882 424864104 149521952 535101582 110960587 710227447 58392218 978234014 196481135 970225545 98499210 189580008 574901324 620721866 577422257 768778100 967982573 986402561 652072435 710625263 239248938 622721293 471905189 765110276 473012933 658309958 553966981 854965331 952399798 988273377 402188375 678119754 537857278 947423886 737216157 748491618 178155896 427176520 242656327 591901189 116149317 976154920 809519769 994422376 527919998 813333239 216041833 676987851 600063563 823973287 998555126 999649135 734597752 831701434 615292202 749627801 547380405 702523281 273997786 339839694 303360584 333046843 644292568 905950819 80155878 327272167 188092417 530441383 486542056 985667114 589321857 882214553 118258624 939764816 389403229 747501986 962652282 978717333 738223455 991404501 267163981 610354242 709613459 889141687 337091006 405298728 438218934 509897273 222020010 381256713 230919375 820725810 870390997 911767671 377298306 671780947 688366746 921979819 884838133 969967340 807412942 866061751 736176552 922697091 170074002 245456192 714419272 855668309 152273666 187120148 186271132 508487738 651078031 893395015 570390408 720174294 77667198 968581670 576383550 771452457 707871559 840126950 302285672 573391947 967574527 970127367 265707919 395677241 3315857 962302910 888215369 907857441 845272121 984113789 725251933 867258929 524168763 846706372 313369562 538493600 776505824 952934029 799620207 916055744 804585294 832518937 989887924 997060068 294678754 564447859 869923975 895603369 902394346 919991591 142473790 334375031 698765881 913599982 738573524 777164484 230126880 971684420 113417998 175383195 215710361 540231785 713221300 879052590 999492826 999888417 928538252 951472821 264549043 734525566 650986500 917317642 628442800 673384315 333211007 464135003 488533252 667765612 893193302 993277076 998747032 999427640 496065429 857564710 825503753 826972095 500922346 687931540 105365 724381291 663451393 997126805 748546430 951171176 678567036 877219970 861730529 913516438 735774349 958088738 193471354 278849309 212096774 553712349 823131615 868991602 6290135 527832216 298253701 326963835 845404547 865082776 360027243 642104803 158506779 871719667 325028276 929165270 460008240 873850665 797994826 879162908 585655247 679956248 828796490 909123350 575329743 788508423 989007766 995796869 10128921 752442792 282293060 729018409 579989419 891493404 53785310 929521692 715332243 844620193 635237879 963297314 689406979 779366492 220450363 399698490 800981814 857330807 463208683 988626328 130967525 877812598 115437039 477572019 74220240 533677204 987132514 991580155 416454172 721278797 738394388 982244999 843751468 941588259 205918407 459971365 298625563 337221106 743032604 949259741 662184625 904225093 756065649 936476887 582701085 631405042 787065434 959288306 926907038 981170300 972816529 996066630 977038876 978438846 806173171 832124826 450407030 484222873 371344168 411179441 35745084 517727895 211788173 236412661 92205489 709222309 303248666 440230291 491271852 880908778 104068687 791167116 205013383 901785434 479595933 588308071 774440796 951217783 818241491 923905176 814670729 995948764 834964685 986890951 567995458 823088636 900297165 978218616 636953850 793833617 627633690 979699717 206869893 999193701 101509375 529873752 485918261 639021196 109849130 794708118 118747742 420057625 797792937 996403167 228848943 319507626 108134090 601836939 85647673 777438735 766629626 998547549 497791597 600047515 889694507 977678455 492712464 878567296 812744440 890335705 147382141 915709418 90455967 175489288 595235768 664536199 318140495 791186777 983327732 990448620 476902843 933695825 548393899 947465164 370547786 619726339 795987537 906998087 474213471 814843664 836981813 902636335 152009361 850162004 76571863 443590663 786452575 889604187 247559830 922028428 532559638 690041499 401240867 752494411 513293731 918920871 93756544 839257431 317927846 984877592 85209984 232402827 717243911 921390866 132215201 659380465 420367482 982541843 435234356 654344517 796901182 931068412 112371198 681147763 223246786 703698967 310979416 807825233 215276870 745037721 551018838 810846653 384181554 739218305 240117525 286618037 650277129 674490091 847498153 982330799 494632085 665870475 542560429 626395265 838929125 982142279 74026428 533603710 78519656 670770536 870802224 886382258 94510225 427637641 201100626 912596951 998223612 998560641 49949534 138273695 806391217 932209977 521537334 540491274 284226141 701594319 827393897 872578256 543550235 782484279 853116446 956842490 718050683 844297330 108904895 552766881 731307164 798238274 942025499 993577184 143056233 210209826 348030559 472696764 816823338 902571439 947602042 991729167 969512283 972769373 492399735 990742907 133888529 675544189 221247455 511267901 362506479 912924838 133478149 559214492 733058933 750705547 87586574 211968917 134914131 327957867 732365456 998825250 178916537 511278807 302738670 561034063 972942716 999543027 8250368 219114961 798187617 872422020 795328193 929474704 37247225 902839889 708906048 987912471 449391149 465291416 692516762 928532008 571643698 997376803 195400142 736944224 426379566 784040858 609968230 802300050 549034427 723665644 721521054 802387247 736652288 757593998 609593654 888155024 269147098 809160718 122915782 524416348 996287588 996302251 791627731 905917222 886060069 982146737 642152043 726381778 80245419 620348878 335651655 929923034 541344371 872864497 221894494 525793739 389760154 935371207 979329584 983273532 757500642 945980711 693668218 878264232 329995482 832182283 889651259 996401646 486076684 890497566 159633600 667123618 168002365 172930281 184743965 433084586 574683021 820154586 59206162 760054224 259960807 938205352 755144095 801645274 112783725 465423280 988808686 991528058 624360892 949986158 347819159 351735381 182387937 846365383 395888876 672776038 860097555 918307812 86814965 835972757 827701644 881786073 491452867 790149316 421363848 473107915 284754219 574337033 708717634 958713614 184942596 555358737 805519532 968673010 350408836 965265853 69422767 916091924 654522754 661106675 525732188 654254156 402079414 432816387 253923103 742095090 752532256 857192992 980692457 981519786 76479123 84915994 618693473 886378928 539422751 679291709 346798769 576897985 328092300 453996619 980472544 994911173 960094739 999013072 520904520 972895522 141531696 298378307 147341144 689618403 190502444 803859267 523040661 873589854 377835549 733300551 930353257 949147036 491428859 921445724 299699720 407679926 905168708 988289739 843813230 925356922 417224089 597484561 745819918 814981570 922230642 994848224 868078306 961464977 213056470 671004047 413024949 459650128 673506509 735411579 453217389 918501969 303454323 356700378 742953559 776351225 901044697 977254287 803767187 882817782 750585945 762508021 669372516 797761386 519803696 844393087 439649335 540250316 901879055 924242732 678693489 741123428 200355854 303107522 434912172 822948702 256096695 507284536 306273361 612271146 372823807 814281785 931613118 950842244 159573973 758821568 854507898 976707624 746560736 971019805 658977508 665366196 623374217 849137243 687142738 919702610 575236962 721942279 320725255 539465767 170065835 506640856 406683239 427724801 997946622 999877005 683452240 850306717 629340088 906742018 572830084 772797069 13377730 275699043 348826584 757855412 2370297 462164028 2863184 801576569 963032859 980106711 824570625 965616065 747779909 779378516 676029069 885640259 563859952 717677177 847410688 875405986 507539238 854447765 823243638 946346181 251274492 573788072 775617698 901049083 935306934 979656322 379071028 813643602 568613811 645600910 370206284 491845758 585110923 813543169 424513095 770213486 858721680 936969938 392266038 646495008 451000237 668032056 671929147 961287565 212331720 490729764 674203843 808690473 835866869 860648428 393172606 915486045 352680123 953423489 621100689 878229816 112678812 321621652 888155486 942816575 872630277 905741870 354600655 589617163 204354184 653000055 437787530 700392796 243818441 554048733 60027006 960729640 966330430 976882607 598525088 704218876 197728404 844757891 648838783 825221280 117888620 818831333 239173393 259941338 673221822 893549387 999015801 999650684 488626965 986493082 32927397 147131893 671108605 724082849 508027644 617898960 533221136 728113661 939251843 954243252 229492133 879100418 353819425 994573756 724723963 797439721 87355560 143518188 988749382 991954109 32669565 999205078 503203888 633212393 224683392 275186273 394627988 603240727 915268286 939010280 637418379 708951777 820162019 890115263 228940607 819975569 52552742 693668652 442603142 903121485 874299933 949485142 739089027 874150510 425091249 616253471 375676230 743331352 373783466 674400978 117429979 824002825 734571548 932617427 896371356 913490500 609978612 629794846 85357472 430296923 466919673 970411532 450185494 482300219 529903095 554361383 770393603 978287722 905912211 975731564 437008553 578897570 570831514 611357360 945462444 982859324 68672175 447071246 383271651 801196718 876521393 938776856 906047441 924890236 740173487 908603389 236576492 795650625 776774888 805731375 252603427 306682117 365483574 651185945 742454856 851477285 480561469 820227587 361517950 913066246 757450868 856317079 294958565 694315200 612743954 738757880 498513226 568472232 746887648 761154802 164091705 440917748 831511141 942400163 275217555 990610732 198809013 758633128 510945139 663004151 892995266 968779771 500082292 663117628 597764472 631894054 352507623 951576671 93005536 955280570 263520465 593632682 822221393 970459170 174865561 493597488 636907748 787217003 818452040 839351971 632711454 713950142 502672606 727219690 791151695 839035841 425052620 738040581 582253124 647629285 544004473 558201557 800640634 957574374 822739846 848352341 303754324 508607609 354642516 446132821 5373687 447269164 455692641 743318506 466470773 518728033 457954082 821288284 211390180 854348506 478781077 507870594 448535096 707309382 454236018 740663539 282037372 775524554 7076069 116450840 470000769 815254815 702503303 728969694 96505186 361626713 973864769 983636435 878344751 941454118 19030665 71658394 667912055 863600630 774701206 825404267 339362399 772043793 199566906 988093949 935586221 975845659 45722463 862540844 570446782 629035186 270967863 919032670 9285643 390779411 115798798 980179965 378451224 859551383 861649799 911143045 696536185 983280644 121997852 610740667 225117412 399604729 247301315 677494840 760266517 926845902 406586861 475924667 951875963 959860176 829767168 856296016 30845431 518523840 252016670 791135189 857803830 957781680 36386382 480017826 428651634 643750745 668840276 897206552 8613416 205368810 651267157 800172699 803108517 838129487 409044106 497289967 595479537 918085415 978560002 983808498 891104624 971235701 924044046 958109285 694016968 944310673 740464393 976988575 641581994 780938650 375408112 882840414 444992558 631618018 375752310 477407864 826727598 865169116 652994596 850676839 183003881 726484327 946486142 977136816 438357643 944235797 198322863 259124071 586156561 679991809 846234407 989487779 415065473 646005559 109445726 491556044 528292729 957598407 704452361 747401437 818562747 838526478 258872631 659676343 89174836 415160046 54624425 717929922 126214605 798774052 44452467 259986166 448523227 575581013 521000725 956535826 284042392 480252196 26378190 56359819 349851581 413669321 918495028 980351070 331916372 646881337 451955388 593823289 808055566 952901578 684133365 859365410 495492313 497822223 324214996 856841308 202206618 601863105 266288675 667077557 925970654 927794789 639424623 953680930 401087742 822067358 925759001 950205169 217268312 236045222 550357524 928741089 416932597 706913977 493005325 513735815 298721251 920667262 310839375 972850869 294269439 748931249 530902161 749434242 995757843 998581747 712285843 828961966 408097288 894464892 360324382 898132781 359487407 558219024 350035810 639212120 466408940 929050833 934059110 972255536 97544366 161050476 551997335 741363437 266239175 665609823 825522541 851831089 898792519 952502944 21612529 591391589 787626172 932756983 50805957 728781863 689737006 765691129 266925153 734065738 785820211 882335552 848505387 911263613 149443653 847402380 607399150 871391030 164548123 971430914 529933809 575367753 914090156 954714377 53079632 659304453 359510239 780102046 417656702 897916045 933351888 941284320 823393949 945766778 797548275 829254778 804690734 811462484 92759577 422877367 116197021 935334243 539113494 653467552 413323713 441718202 453442750 919537369 693311476 749153219 124540379 784320803 153190673 425880687 351958061 381234320 572795821 706611485 857641808 940240972 64850531 183864605 917226399 958060064 799109713 880671374 190229288 298707857 248887516 389826754 805983522 932974729 35044211 160570479 141382766 798052542 270445454 949493788 357881314 799118634 307514805 845596675 718409758 815950376 167283076 401545152 47680630 488389391 454631482 867277439 338241701 555866332 964135599 964977154 352624253 555821653 673893631 845202402 697159314 765381613 831689140 851715203 653968573 762050953 715914460 736001317 43480351 499306374 728582567 820405411 345729838 488169473 635342266 964417800 971682334 991209104 150579805 449337763 3488718 727090823 204593620 588572889 726002830 859960725 690846555 986533155 181903929 312212308 54213349 807085116 56531618 510382778 165802298 657592871 487070075 736621160 69769629 613232385 480003963 755381675 52889329 126255230 811682494 980344205 513366108 855111278 677308495 910138115 611205503 880272109 807759903 929039795 945758695 949870677 227339714 687006156 345099505 837756520 619000424 666106650 811388400 996894214 726673148 781914448 113868367 492605538 618610119 798694436 660516901 994728643 55682564 919089568 677651377 862799061 849391922 913396971 150980799 557538014 458615895 822684373 801385346 984615558 212707282 742285372 564937001 726864761 915595696 952917749 424107614 538787551 322033141 503255006 628098650 805854523 974501123 977050990 356647237 454011240 482775876 924998779 654804879 778768607 147471991 844056499 342845202 378804707 882670086 928685794 522121107 908662000 398976341 422729718 641136513 846900811 945711547 990929250 491214922 726840085 34943284 859475630 253520525 494013464 86709034 496390301 131124744 942734736 654337236 737046838 220775879 706070699 700103446 919729746 657065973 842016767 775881980 776452105 578349898 759152186 860430029 941549232 656950537 978306328 787466071 863368674 373962629 918894004 268217752 480243715 425654776 922111271 806970832 888840924 23014277 988666792 451690146 910588481 188299515 301523196 285771163 828596864 895579501 952360257 411172221 878373161 524366047 989509785 158248374 616992381 140526101 415138956 846450959 849198106 757428502 875666707 758823110 781885181 51485476 782802816 339484558 353585645 535176602 771669198 15355278 945805495 367162516 847633812 820244862 952966305 747594455 904853938 467139545 626043686 586250254 972274460 88668664 423877502 84455154 246289574 488655266 611361876 971366102 994781517 215916243 587296832 185087536 686563690 809288768 931751207 814148964 835024057 724918834 810186617 207921814 355999008 258337412 925523049 213338468 568220372 735081165 799133926 858376805 969708519 288947505 342010664 446228747 793662611 100705999 641563819 954970869 955812335 697147555 847824124 130329340 662000524 616056345 800678531 654383265 783657180 125655581 440838006 384096432 541208048 269717554 311149928 128140852 813546220 942918566 997092623 463259010 807667959 195028016 256764167 233477060 304164877 528814586 947382279 106344475 943250738 88098638 102623461 485956274 553374489 131552514 839164986 336540480 919325316 360800520 709044384 112335014 568555814 702926847 719936220 347162192 740490719 301763367 470447500 629386101 964858537 807148149 846906396 580926332 972763232 158789125 685911847 937835798 994795684 779965866 884311950 981964097 995081517 265016910 485421163 617051908 758635084 712916168 869176297 614442287 975303256 34358829 918826137 573774694 809748947 437647229 895132405 72353531 280918241 342215382 484491586 974177284 991627270 212546813 361312604 754681002 981578880 849364404 869783289 188230530 473215716 363442875 536057245 741181652 793037147 790393225 827709073 258455567 988558883 434059066 512494554 283015680 848125421 856395436 883949460 433616708 632969849 567685726 758559290 791600701 842644114 558491786 980923516 790202896 922573829 231715285 404076708 14159282 114342092 809166521 866154731 559794926 619774896 388232499 824827144 795710563 822838383 660437146 809383232 619455152 894550669 151616354 421478160 712685958 736817352 231452544 594748904 400845337 513489583 828662594 959971469 210957913 330633721 291083556 335518359 666665288 907664742 862098576 922078549 680348481 916272727 152397794 815632580 522788543 959675910 401218346 702902143 133053704 755869374 134362857 990325183 581282134 960466910 942223283 990134307 605332002 901106939 223711714 618743704 864187848 917758910 409247454 666783137 543520487 611431084 416981566 901323013 817611879 973071061 804064866 805395373 549062662 667031042 614782045 664744035 994653624 995514753 242582057 859954612 41007882 376843160 692611034 851828969 42844200 511161579 610396663 692512999 617270323 718976295 261435578 605183690 783197096 926645475 395961731 691684123 993071601 997568649 456080257 830726644 680530458 915882408 762672783 878435706 809572798 810088801 743338843 967190674 443356545 461294657 8383238 929326912 54189585 695202914 458000078 585223923 681238324 712950758 144495116 484244445 563381557 639271990 363564951 899937389 898796567 972592767 348207011 436177806 725506331 765429426 70803576 85793885 878170617 906884936 100336399 918604761 916898711 929498262 622988232 641404467 754885195 848849702 601849088 881607406 125306628 921212341 177980926 511129417 704674208 987670667 459840071 468307596 976941940 982981458 744113630 838621807 980953774 989291909 534924881 631884889 597638552 695228376 458419476 787255982 871710047 892063158 484144864 983273051 279226412 607547081 682765824 910430960 349086304 349798008 961290846 984225196 187669787 599754716 688693289 877537787 5040285 951783684 288924403 929337219 525910319 746347318 839557706 863736697 366248033 482589467 168975719 924879829 117726471 907327994 387813148 870927238 299506931 676547762 227521036 688391715 307686145 981953084 267466374 781874250 845918091 957994962 378272426 950915976 611078208 690322899 502421662 522038059 615580591 680567386 267009831 799099672 702451154 716546626 359659032 512681944 378961013 739113621 416473811 419764953 608543498 890963171 111267971 974878379 303710884 984791527 714253668 787638882 758199339 970648558 111320776 363947053 295472011 525531941 368352396 442701406 649217827 857937889 976400490 977553635 528153109 742642560 16774790 508046251 563751964 985647528 472686221 538738315 569851648 639566435 478155355 604833310 819005923 984416071 405391878 876831642 334142041 364222985 680870554 870937273 659370632 733517822 968882003 971651750 401748318 897600731 34050247 63728539 151152049 403334518 792730655 812594406 806678977 957800516 555047306 749708101 219190005 717788574 286630712 563873241 930466629 981220873 334180760 679082522 29279323 406210517 587317859 739791296 907287174 926929443 653653403 785925843 749368982 788295185 464334640 820746494 160675940 355234017 603208366 675215177 490913773 886887810 76770139 149240096 603419370 933820432 56765971 95270642 233287716 383141400 915713861 978534574 808411863 817596299 918216042 989759241 582785314 752767325 396022544 625588400 640692390 797819034 493737576 943667105 426088535 805604428 67737940 195419345 241593834 431892519 204010374 398590032 232991848 441833371 687201056 901234858 370966126 479767099 187315185 695266377 602821883 903165265 947208429 954688860 309220012 344420987 809125607 872510033 392742299 729938972 778470027 993904430 965520383 967873403 407655571 539663796 291233051 741509404 88038376 805751724 690451964 932840823 395854645 721204112 489001650 873832540 64261697 404326838 844936349 867714695 859887236 904395086 541585792 644984368 962455261 980881322 972319065 977704330 352783356 504697513 629744110 854428104 21835009 207206853 794975724 962792780 842855622 901499738 745419395 800109791 727555264 734008097 718154837 875674171 785042732 820156903 364087619 728572544 935346893 942617621 284914776 947961567 975427045 979971898 182672133 231394400 159862604 716271240 147923875 728640110 724690137 991508122 191512149 444281016 8213600 970636381 815702887 896186452 647300949 726843191 982629540 998440784 452870607 681528130 910133834 988352912 202975002 326069906 630854662 899038367 5334984 327355462 819657068 899577264 817759824 993275927 373813745 400600593 142494064 631023811 62429203 171311182 63498401 425961919 966143093 970099957 975366116 994129843 404892602 597332925 599903374 812413201 572948808 738612953 918752479 990122692 896667670 994813297 270712335 876991717 206884936 753807696 727353414 960580294 521300251 995183961 448127427 998769608 775499302 886223570 293295604 645902211 595550968 723661634 504947749 696278960 275371258 639435997 513564899 807901427 591091728 874479723 527215623 867530359 754782254 910013121 610863982 840390931 50938943 266170563 814101115 883625971 920667454 973105144 313054384 956140990 569115537 981127861 83820708 322204721 564873773 916338671 726665165 955583326 984165946 990941989 761706950 867696850 518980002 698504297 645248737 921455971 897296445 905460495 141668345 609679285 219727779 754785127 422338552 784277615 822364973 928148514 910675954 916546988 430410588 553551012 81138372 808520787 479731841 584182077 427944017 436598505 955659713 966200737 842297232 994401627 183369340 510065813 685240217 919596541 591761979 936114686 41852896 173683428 544619696 974052226 12424880 815404557 576218283 737478943 415507129 664198557 125975032 899735243 250713095 270164637 676625090 813000350 37168165 71841415 707358571 895309821 219140113 910108607 303225077 359693770 708135460 984059974 709391165 766654941 331914424 520744011 967993825 998599231 113950654 762328130 816291136 968516725 10402996 302651199 132899550 524533458 511065899 873123747 139866341 914851146 632712967 715675397 191751873 491766419 880238567 928785599 27144418 269424286 205130602 456382612 223980454 505680202 921763110 975923787 931092830 967387168 947114266 961295448 891656794 994496712 919479116 966490936 967152674 989275881 39795454 749051221 363686622 426644893 789589513 910506891 402361715 441228510 346180361 996464786 349907066 833248250 593501840 979382374 852734038 853157165 708610129 858022990 703257491 806384375 43768636 524825855 248072990 671065289 145509659 625240718 560207947 708229179 948054406 985710589 589949166 683718240 229339468 986985303 764859086 966346964 124810623 718132429 352718827 492579159 218622668 888668079 567706467 992573284 559679542 751112858 196677372 978625874 661685340 852972817 457630859 970262993 31082610 117690348 996328085 999992391 782121860 886361983 729455445 833220323 478234428 765502449 996903276 999609196 516778485 987299149 27223389 344551858 166005873 558476996 748009944 754363084 499859377 782393152 294985525 819253300 148538926 616687452 549604144 727683921 441925668 770483772 487187576 754938817 336175469 941713349 476154284 994042388 256973501 730301608 580201204 772091613 986922562 989670543 148813579 433957007 554137640 949689185 977119185 982295916 647540342 771004107 857472155 875487710 516334199 671571761 211239776 614584159 480164734 889471041 226833202 907072213 162728153 611038482 6308886 630685516 220861260 449546395 454942401 993169204 39898144 299674175 296484581 650301842 171188145 524722465 861181505 863612648 520675998 697141121 506318446 664425149 75419508 926449551 248740566 336713295 291672128 535411839 570440639 676355496 70238432 902540741 180110012 626037329 443289443 515482786 418108449 982763328 751271381 759744567 129616939 363191324 95290016 935813371 820841101 972740889 543702907 644216951 36623952 549587992 888816909 921236639 553167097 776718402 553690137 838212703 643961214 887388568 464385362 646755820 135879831 236401934 937852986 963210439 722090000 971274035 463211011 596448431 996191072 998581874 886355200 951526980 214677108 811420411 774767212 969902925 47879207 407299542 285761811 481423680 371716629 659815702 71866951 586647924 158374533 763558543 327775242 364965437 434989977 748643053 402715592 916102536 624678831 739843443 636936713 930015570 503288003 989180045 981641859 987733574 286549986 935360559 925523790 994283946 32210979 65587110 434228846 796704096 109485774 949603918 656043889 748210431 555981459 774136049 23188225 470785448 121843738 150086456 358011301 605946199 816965614 852484459 372335835 868226087 744713246 873446595 142432677 284855752 625590629 934124518 515118133 742720283 882122900 900546205 60219243 824493087 873810517 907955314 557402996 596922934 592246709 863289085 436255740 816664293 834384340 837245185 192412875 716330687 461620583 531305365 754333027 782627698 995520072 998542653 15817179 611077933 317930349 547591839 53517330 595570684 379959643 578078423 102698477 146159983 620801179 903231952 176810006 688162769 363174389 459997639 801450299 866239509 308725291 486089111 84785024 704004354 566497427 741071212 158472577 404366439 510479633 829148240 611959382 945802844 486994565 519899620 364708156 840850703 387492550 504754980 666015479 807366978 249825218 805047584 315085014 910608376 896075394 896405927 372474092 908297312 85118742 715644733 82802475 669441761 212047618 372345612 96231532 252284975 963677060 999199990 901875572 990386285 56960419 670348442 587355672 620264246 27338543 830952794 925776364 967639691 100374941 561313386 600328110 859204929 868263989 870611567 266640607 439564098 732694898 733487614 389461489 637916283 661607324 739923803 212172607 789839613 384714293 969891624 888118336 918588232 441063826 619725458 284694493 907257465 167342956 678495874 217607892 965009800 227182411 344436526 292630420 669631466 297824284 758223699 905264586 997972670 828577508 891234632 790850020 827314050 661982200 933293123 418381681 998080318 25569195 411982741 250643036 881370596 477761321 912693238 265654574 889404629 652431300 994769119 11832196 448600379 707271120 846214565 624991069 970207457 979629132 999716064 265699942 626516829 308187913 373164689 187704465 869123637 937057633 995725051 922619954 950870022 432904726 606806583 379384048 675905859 629697220 857810398 262280009 848038150 866437298 974558802 619878687 698795191 563849157 697340900 506571695 898996703 459796972 491750993 524567323 688517549 609996809 738267555 252342365 509317200 888186706 966035174 614434247 954522226 500961254 581986814 537610792 706685610 293129152 759273076 965421361 973922855 845641210 936038783 339364485 548565615 814465162 991263659 683288804 994469838 173446431 181517941 543340670 575921184 778334599 795406255 286950081 505464774 997476577 997897642 476252669 700686505 731424707 979990223 535451585 793205307 76921488 337785737 93856039 964722359 448423606 718538275 617853130 983392392 194833592 377469532 606779919 779676406 492434162 603053727 588177617 967820051 501472328 799033657 171133031 550099396 215617905 766982576 66342856 455839591 203576560 893594627 72793326 243649218 827838199 844577627 585907002 594200197 792284109 931933986 761854920 885263875 26496901 332753461 341035173 704254667 526251822 566585865 537088663 949078383 960684555 977015858 688661117 968723234 120976741 545466136 145489949 199189624 314079716 837830018 292391211 969203715 50706415 156954712 831289525 878563111 257537506 625412142 27226686 286906511 682172850 699863747 931950320 967115198 918401212 977553517 521338894 606244289 155630783 707550345 269444308 555953062 627053962 947616543 533488765 899891108 76958916 503428329 910285260 958790998 518559135 728235918 336039275 428194567 601055267 999402167 297541568 439323433 982252085 998440566 674593301 799960959 661678218 979851582 223239406 367061808 373619408 728490791 662471257 881785165 351914513 588199120 498176698 982797421 378795032 723855411 644210963 711506981 532521986 577092455 337261163 645724941 79543181 706592757 327083631 768071230 964590094 965602445 224608108 771403893 640315548 703368065 608966861 703466723 491038146 700443944 450890822 988567697 369763470 932762225 241570070 752582502 594232269 767609895 402730349 793367595 736417956 771933825 444315592 895220612 11329307 352298937 694450121 970642843 831231778 917457629 90459279 785858458 690470815 727828190 393952839 455706297 292309825 523555268 121118367 128186709 917695254 951303038 830752738 858108000 660839857 713089800 753781237 991632879 629250357 989265471 273689382 913985861 748365323 924299954 497573037 652729606 277423474 659594254 369363472 486673677 196545866 325045000 293982368 441864248 826503076 941743961 529649211 796249947 49020109 135432525 297770139 788976286 594029095 968563500 233832778 615498879 420503997 890372093 361100206 832672609 300805207 508173331 987477460 993554062 786646240 918626710 536192818 837151305 210411876 984675789 39917338 667965311 647142007 865304766 568398837 853923271 336721600 886002366 501741693 667316966 711516287 756032713 517170753 772470124 229210719 790476488 883647858 923592449 503025914 975923071 379939275 720115937 658984517 708494923 866829472 945785283 924722414 963849288 491602269 987776461 144598057 320710733 16005656 300948925 635131825 775112842 884801522 938926339 558714774 682796599 881476007 928878458 610657497 742478677 433355438 974858155 452334049 995275297 513317045 567773679 946873625 950083582 863609897 896842776 102337493 303450045 440522949 818575166 386315606 676907494 403172916 657347083 490794046 797957266 252794319 639536010 126545304 991339239 620306059 819154416 762328690 969540967 497430503 532241376 433550504 642205958 117179978 818502266 58333628 180887530 469430249 608181861 757170605 885464699 628731917 799960797 935366664 936112516 182632337 491979737 585959825 815191069 123770501 292133213 10501604 182811059 807239700 946328043 543633303 743542723 429400221 496917303 313071655 692591379 928759985 975762980 859838418 925444276 100369635 558835796 605031351 715768594 985472363 995187659 323871425 987560807 137431967 597833774 86439301 692798056 663524497 896478037 561445919 809595769 7435884 936575574 962590471 974821458 820193427 950985449 512849684 864158048 456655326 643106215 73392242 104703561 905736079 950761975 727916393 866503031 674008163 830628206 31282763 175790429 925196958 965395326 876714295 927517156 368828308 768806596 808203411 839562842 380493165 852957167 345259887 755315133 267197929 994967613 593663843 845919800 310739579 395121469 497913952 631419633 522599394 840493913 80832019 821111925 355319886 917370578 779407608 909501854 427760890 795410215 574903712 942910210 222527878 247320918 528981850 589846504 251073055 431675058 16881766 89123516 504571989 687378678 43068350 559570795 177807231 462938156 514426157 806875215 991796272 995228769 147661595 982422394 556348817 959822610 546255222 962459776 266136458 330581608 237905581 774120738 191398151 535496880 936689196 994204733 124328219 214817536 937730601 947362658 854158838 950894292 268270135 766733888 293197779 908215644 51481692 881976499 238169445 532086414 687744345 736539553 581450131 840754108 408612357 792603585 292901836 997641169 349539451 517956374 747757476 834340044 297612752 649937213 539333832 780330054 96753326 481792355 150863212 261305606 330175617 426687067 772208665 926750110 937017954 938806265 932962541 973859503 551494355 702424281 878742663 898875718 832957425 987291183 784891189 927260581 174573346 787382012 786216118 925621296 8153277 687364144 645070047 891990934 749052202 876439454 766018610 848065550 399620265 443847939 643973239 969847117 582564867 793655923 181488748 379303410 690813627 760388155 842317881 895207935 701633541 966287079 254570719 288538776 484510259 597048639 824552886 898008127 180073682 677440169 367236741 390183408 845652420 929964276 930387877 999359303 194610046 532345460 417249333 904751152 516515050 622124910 543791496 945901537 743631836 993433031 195716976 746898331 60857686 564674047 730129029 828815449 444596626 460673951 867495849 962827977 396527316 430479598 496482734 949399593 706685442 904020852 502628534 506823829 130886840 442026343 497750915 681643849 646209644 975383802 487706387 510548257 360435292 944335547 149631380 469511125 578084096 768371681 74723490 159966705 971359582 991838735 36879498 579768467 56008049 371949912 875164898 979037529 706946380 798954176 385819378 861126759 732951684 758756185 724847935 921624524 309160543 842686880 684645506 893957572 313695629 623084737 747472622 999838529 128377283 438749137 711908551 852162265 884813306 985514588 636711135 771352518 161778632 906807303 903469215 924598915 850911769 932243869 793295953 820057087 747414021 979547553 691147712 768373920 654522874 931396210 20790340 584942576 20885030 270706778 814232592 911887243 211111679 637151568 533605886 846700315 206300702 293917996 253125171 839159512 763842975 965929220 619817829 851522150 227518883 820886484 576283103 903985935 98458000 315394615 583988305 965234294 46517139 142661785 622067341 941860005 286589264 380763364 387987112 978962024 463629155 588436370 142579830 223519975 92037987 648194389 682742243 690182747 238123356 297349678 700570852 893954920 144129451 447511567 85006155 753560983 379087157 952944596 236332547 281352617 787412507 877918038 260672391 342919643 579013780 580863088 92049690 754554726 359948806 651503395 667075030 737826664 824909811 843993311 423842468 686630646 322419147 618266566 596792342 974297418 24402882 984886186 678493244 912869702 204480197 369829487 379055231 867785365 267984166 533373056 831572522 985776238 467105306 979508237 743823362 943486145 638679979 689516229 207508904 413130717 484422803 535396086 985669396 999296123 894711109 975299371 569989189 684850436 272491701 463925267 408644345 807102157 604133938 663095482 695221543 937114301 611101954 914151758 257777457 420705067 560129737 651059290 178550036 883980461 76832721 197207031 99026674 128685310 945826558 979597477 580176614 724924217 633847403 945042241 560816284 737753376 119851114 734598427 252274233 685939714 32726187 791420398 230500787 440000708 336368818 483089960 900008661 919666790 502379182 604135710 212074745 437881658 990361209 995779982 719990230 773005758 80075979 682087685 947499536 950979281 371275935 552966429 566773838 950617838 409388184 455363771 748485159 867666326 694041352 722683706 931031638 989097949 31691277 890042217 635302694 982810263 768615228 850113965 118312385 596329724 640472619 789508897 879579997 941805451 347432638 700081703 48048417 783411742 208828736 342179281 44085934 358334507 383055594 547889263 849926001 985239472 319578037 894158439 128739132 156541120 853728485 859523372 369139041 419204105 634942675 783377494 638187478 761955876 98445386 895983337 945299295 995501953 825161190 930134282 536558024 635197145 121726629 340721104 220900117 970851979 776519068 893205774 481038683 663096502 308269179 429470868 216789818 504776346 647006615 928862904 434809798 663389913 820825000 869490948 989111002 997622250 358206692 393445363 767272990 888229261 723195528 780813838 955463952 974874280 207303723 935146502 302937131 360097186 291832745 859820964 34419252 90504857 5293954 618011090 631471538 973679875 957637470 999921685 990809270 991237389 434842115 971706552 192064184 995734106 798195033 831311544 395156200 684338292 789916663 993836248 488245662 743943809 820245554 914741192 252683862 637172615 869661659 956355825 533026629 726915181 977444411 989463534 804498733 821629602 681985791 700237292 134180699 579205898 159360419 458540820 822427871 983249779 261485465 353815529 40107509 435571776 663642814 861123908 446037 159268509 766947964 970189536 420043696 809222333 813203880 957999302 529043251 690947026 873584867 947494780 565462880 629809123 923062974 924770639 883942298 979056879 669962117 720612954 986563161 997534457 722131099 948558861 931194415 943018789 650693618 688828517 479479111 728309245 249215275 453736802 500593096 508006605 392027514 582509079 981326212 992433248 755260448 962798413 915921617 947270705 143901275 825284070 988482625 994197983 195688313 258002531 495018875 891083297 281673285 751548068 281780420 594786485 757794008 975623600 588680550 616173034 141779405 555187018 558534386 579765924 607331370 756979565 544489968 903579632 203815250 621443607 462175642 985113121 121980065 765789153 263865585 662887918 465613580 615669433 828681137 869048083 351380595 785853029 987197452 993479621 527313865 737666421 619998537 739808634 475277286 533429743 638312391 644602421 482332968 605009788 437243887 853349921 120789251 970531947 89080648 374395112 73137336 252832634 491651312 602193357 423630158 904416210 399919429 756348145 552950661 888739892 652222323 767749584 622165779 915050706 909729099 944638469 824215532 974266373 909296248 997476785 431500047 748018118 766671410 954833175 386287970 658647854 411237831 910789888 754068365 822459824 625227140 816175107 671327588 755649932 772646939 977297684 310659673 727874350 320271118 398651979 258401803 384390876 981602986 986903683 967675572 974375504 247355866 550626536 234663329 518945165 861569535 932892392 459321408 759164685 495660389 604755852 889213263 952512453 748200425 791089110 740599677 828531247 444386753 909622088 949681350 989241765 190966717 644880294 591259101 818186705 824290106 832774458 718207140 854284702 193320916 758610647 291331451 907818281 688982537 689945244 138981673 761485222 126029033 460982188 222244022 758413332 29375168 149872913 197470427 577546012 396162070 637105093 969022317 970203248 266022141 830025999 198790686 300274654 43343403 367785371 806428873 948621736 970940843 991081972 756269258 893083790 358839710 960829305 27731481 512782456 480660647 693770549 996568731 997198296 385585985 911909199 514771971 672072706 942996231 947244926 12600073 940252335 73093354 726096716 23662005 720919412 44131303 769802386 964116011 990507364 968462181 975113983 816320711 967410088 159342190 500869136 528877065 956733069 197857347 786429300 626721732 708307002 523594045 892578077 715270351 801827766 268784836 334712341 546746530 713181824 457655455 751321025 40819638 608838382 388511517 399522890 964213760 991180660 104498639 870075113 187870431 727493653 735293086 822475621 130488132 929114302 135203713 413822978 378824511 636160214 220410739 839863210 581863358 634735427 805801256 895943056 643514000 702466627 138698144 328108620 762435296 873429713 914714525 941858199 19615212 710415284 476721944 931352423 131411267 835680671 275908056 438802506 242214197 803786538 527433986 793876073 911060005 934458652 894562908 952687168 934823874 988039068 809989569 997002992 144123049 343238867 463839881 678657857 147091801 529350463 441708645 677023179 349053073 433776419 677530636 892435919 842505077 998486294 998738793 999494877 533256700 858626593 530417930 863003314 647608359 849623960 785996887 806996051 156714355 946274827 567937365 936732715 243811289 873596240 333197175 568284132 903746451 931240814 904175955 911457985 400664903 621084515 416056455 620938298 224189226 625742625 140955181 450282859 455898795 754430903 632696552 879165236 884729531 938799626 763029083 854008413 73179046 518988282 98246980 296431301 999288778 999546684 376829159 854247263 104809 237686580 305821186 626509809 292666924 733428295 98932513 718783906 582755914 752058412 557779365 576537839 699799220 892388741 976774165 978790962 554350299 967735100 721176916 935251053 826980269 869690159 971988323 978028414 817855298 933327935 38507198 740457719 239058289 493637206 866457629 948098989 437380537 754532839 821771669 904199590 447616802 608433451 106751075 328632817 595105631 839970571 373914054 781319156 439094852 972440178 600301636 797745804 222511110 227341728 286871112 727397420 795110584 857862738 361327335 935718603 765723651 886733201 638483898 979693572 995754018 997379008 551951923 558671352 898019773 904182247 144126984 808314616 623958811 661941461 475927795 746093122 428521842 950112084 176549079 347459438 406911874 677824934 865515615 916403951 596713178 939868928 186736287 650494567 413485447 974261281 342522644 786289750 154311070 764221055 802579393 849547909 575286773 610016071 46025052 712017382 368582220 623879285 72949246 256669108 682789143 736821749 601556758 861913542 955971956 977470981 18011059 666640424 51678364 213948407 963638282 965450312 581340289 904298596 892889751 921217204 283104538 759583656 306468601 800394933 944915571 965688937 326888531 372262514 345224991 475855327 929860276 949464615 575490639 993889102 561079081 934278341 329894870 554223875 802510428 961885847 65473158 79970651 97238723 532330314 546901983 918210265 397211558 984449702 220223754 671808088 298245285 507968905 818992070 837297603 558355045 898703380 556564666 765944151 991825631 993515422 343849248 520069548 273279750 429698542 251389921 397702456 787304561 843156089 331135265 606678091 545282241 614913800 590288521 616160363 279964228 464196800 694056306 796277848 149140981 422402783 149116294 868232106 627224364 637203945 401085981 780247362 558054838 598164493 459781191 786074267 930383948 948870541 870346092 898579273 959007509 980728314 115232803 799510016 719601138 941520715 884162380 910557621 969809696 999800861 811605300 831425133 860326006 898199101 802817467 844949902 329618839 516428324 992405528 997607425 914925627 917810199 209053446 613877811 896335687 985151819 856105753 947169963 235988069 937590118 674061814 793894028 188146023 341035481 881779611 913225018 333665671 796584996 570256298 672928289 404057005 899448161 696911619 892738567 450355586 793779362 63976954 979867400 660328342 875597021 944371566 964754852 53424335 550499467 710472649 814140815 397551298 999086329 980339094 999779920 295928919 405582295 481817677 562415607 638856273 832700395 739668782 906221721 813393731 823228710 481030432 498805183 288404757 662231380 642135283 899746486 537753193 977456265 457032638 760553094 273957574 977457323 865646083 909129663 420143518 608602545 106137168 495072444 684188240 746994242 621359603 678721110 764710157 897416617 855789611 886822947 373367977 937342529 766895154 880917282 874128178 942370297 443893565 692894767 139922329 305387323 882998948 883187087 227289343 604689374 510027255 529092541 432394860 767736192 78739448 956651038 377568226 497831798 720944511 762830737 791085770 892074845 604073267 853175560 774006597 889196591 68860796 901918014 367227148 871740299 139132040 240182897 112479820 742309257 663408200 699512614 489617453 520766220 176675008 513199775 87418740 788185949 845126583 895936722 638985850 664543950 781384798 846190638 384029669 869477616 406171381 796006618 90798594 387202563 674651988 686979656 429773931 849403832 751016340 760084871 657114046 981164860 392608146 470404360 536895220 867267700 237120155 916411749 417538311 565540406 944112393 944578700 562022794 769956211 174320184 595970484 515272944 758881854 30344378 492846214 263823596 359369312 880226394 931416774 648497647 720963040 476475057 541806926 265374059 521014192 389598438 503445585 902802562 927414745 27352992 251833416 25957471 929846034 600829828 609348549 342031912 821538358 338699643 525576592 503587663 783189941 717831288 811671455 455040243 857561518 857597993 937061258 289337396 711978182 2017863 195542693 842263977 969786321 206096885 339118211 226043499 981329649 833539412 970214825 597304433 633212078 695344296 953163037 432458662 595540484 963090136 974837224 595720034 887223674 715227183 905679037 38448984 615335783 282905025 896772205 58390675 675881958 922395917 943491671 692351577 920184808 54556757 924817644 26653777 820026821 476094717 825862032 489911726 904546377 379626505 882612151 894902768 899767443 380154218 776665256 975626692 997536717 488711976 910302193 7831353 919456634 309331316 522855461 25718966 269105235 368527091 548464482 80818358 520359827 232530597 755823417 299277873 757179569 214859205 902279250 179681681 277616541 537009199 653986596 862568991 923993750 380827236 431078630 46023766 507604640 103154312 898978734 290121735 743810441 411041548 432699758 765506663 825905735 868824182 902409585 838962878 889016809 743084822 763868810 466252426 604919283 471158407 732836869 954662150 958933881 216032969 790742480 477556944 867048770 341194863 502708090 635584914 824940704 185482250 740962228 456940398 743141583 797225109 853076952 56358179 705855249 606433180 977053439 767450847 894831177 10372535 55352304 564924300 836870807 350715539 352995034 350261294 584317343 691625391 888927790 59991394 153903488 645354563 733726523 855874572 994833756 104918113 205480397 350513621 563571336 241283700 262526251 559910244 615867905 15159890 102002263 353614389 994028497 40175212 597193280 518148648 935287547 298369423 373552563 259939928 713643229 458794231 719546665 925262193 957283303 410402463 715186529 544763021 657469184 903547554 967217183 900813906 975368946 74432544 791741818 473743088 502847440 502874372 655037823 208395068 944999701 594388559 840744895 880923684 907956358 743427302 852210996 853638844 888648076 136576875 977175116 527012628 960736247 203088505 793976338 111430988 402988392 33418134 118829132 90271257 734086228 230923151 335615676 71430446 559938558 340824762 582751507 347766071 833823564 836005452 958918133 168887467 216026575 722778410 945308358 833114717 985057490 685280795 849327635 652252201 713040521 998709599 999918351 355284241 567214858 242938420 318022069 807652223 986787356 790045533 872963308 286343114 831993278 370816556 786516339 446006412 456889108 721623556 884946368 265020092 484694339 127833408 286607720 489573000 922928724 922885230 925114234 322941253 972340575 659878925 951996180 947495671 963081513 920254390 955771901 31297899 524253843 961222086 971084674 248141157 883493027 259533692 342043382 244246213 800120613 147735709 602558903 810172770 917561160 625104308 635186276 601515968 696353187 405898893 570044721 989205875 996802945 616133788 815586090 517549678 834820005 551562904 702746300 639351950 675622812 615390445 755304114 212899095 322470045 228485026 983360648 40529959 656128039 917998423 941110952 446143278 849820545 647424866 839053126 9007520 292197930 204690111 950020352 576204812 641215942 727107742 857228207 933570915 976838683 402674265 616630618 617472450 694141481 322160014 466962626 179631293 196450863 691185049 893567043 861275289 865959306 882927550 890973232 665754829 785072988 414613880 948265163 430949528 776998971 616575064 623424951 667311622 952639224 833627085 881015363 968790773 971336233 526406501 624605302 410631132 426627714 553426434 586676169 750407742 843309892 552477066 974624268 122639224 751007080 132818057 217656498 996486746 996974355 740348638 877905738 927965785 955414862 872414863 981552859 11809389 655539350 474204101 624153124 855240558 855979964 189281672 932681094 385198830 833965114 767043787 969085348 417853275 424443653 655251464 936139643 203320996 929449533 34761964 147675053 54021064 877873522 145968465 333950692 85239291 958127766 440557280 940698222 50184224 954439785 949186793 958759925 991168678 994477071 33802468 924082713 213095209 382203930 131638624 675011146 150182322 943367292 674733532 918625271 790792743 969411781 707513259 724639302 145172103 852616551 31363525 902621958 525483375 597578549 658764696 685668641 117668730 291026057 773930091 971734271 495889020 562405028 54597246 979559231 597782454 891636980 228229943 700729038 804562266 915482404 775508084 813895172 363576761 645159809 329911485 364323487 861828660 925103800 521601078 780544874 997699081 999765671 84780808 756525653 868987548 948753127 642436403 774406451 380776839 871146409 89669145 939821068 956767245 987330342 683169383 904315276 379086884 413714100 573894018 743369922 961682040 993744166 590092308 825182995 980337933 994832298 972797071 977749095 826314390 904028926 527880408 737160054 295637999 961674295 461764267 901177559 747204539 812563837 855642322 893815558 523434041 752002287 61232299 943609299 465631082 499971487 859261631 862967868 504420176 766649006 529339276 801580624 812201639 999912980 171348012 524738382 737132262 949616324 518358873 634685326 405558936 707310118 806815530 876428768 573724781 734369634 196305664 243251200 391641611 646854709 517728666 610516342 958262487 988856286 406783979 469102941 803329362 959226872 447349781 566768625 567662350 859519909 138625363 997935495 312439875 783127526 23897579 110337994 743011373 868933725 741327072 944497181 670432724 926798623 496582233 798447396 249275862 257833574 699948506 997152466 703109957 735936885 802850089 833490805 436804104 765560228 631205110 815302524 18684591 744197195 929485713 962917303 177222566 588592654 529205484 853624214 129373112 683621874 954487082 992302263 563125503 603065112 66677558 364799540 85511637 738333856 436135971 554117822 320015973 404094317 469203476 662101764 82732531 684093239 433603174 905880218 714302130 785509474 104419598 682968650 810159027 841174368 994969403 998027747 472663471 709449162 106544839 461249455 687708567 992249142 731556202 976147578 798224887 846711706 411141684 620789492 681575808 918892538 2282865 729732622 602755492 766197074 538807974 724084848 381473000 383874369 445946840 845951935 597632064 764295926 276522290 685977871 826410367 996095294 487427860 814847978 803275411 890989621 671111011 675878268 566692501 989015399 608228250 771186447 491974280 846464134 85905345 138992526 99368901 976408387 605948070 872245676 898933282 974051827 929198072 983120733 965045551 984561824 488721049 558690889 49982095 113809485 970982320 971461344 263728915 627120072 499559873 627088674 682598651 725740100 207266018 382745229 446842125 515485520 326389055 798823206 59001023 916566366 728313938 942895557 353756227 557900668 747895237 972467642 431142328 899536406 781367969 812305236 305991775 829042532 970279025 986047567 527930708 866874363 62774531 386814161 341944488 585266818 570612783 926722721 648256043 816801265 793457199 989902365 766239494 908974081 186255878 492840329 857596127 909444165 700152698 994350835 725916955 935468449 316738324 362186362 133120124 952888690 756273089 848015416 774983210 959449526 697193676 931005975 898853752 965309150 206886481 368066299 543821170 812788686 910790043 911906501 919975368 925033472 839183493 972538807 595102279 920674365 590331481 795264093 555262754 736986547 279308777 486855896 718281539 804704802 782925326 907081074 854038631 941903920 267185333 831765831 459283061 759632008 990442250 999723582 892156713 968473414 715731372 793883123 816205018 917631842 944603711 986401223 192812089 856698297 738929033 766435057 604274182 766547352 345140284 995084362 703292072 725515737 607651317 832506275 481084960 826422063 86256901 271630128 562232540 640109588 378581431 700363104 359831199 445972944 192797539 880600511 533732070 835636530 685695936 745670441 869635196 895458606 163240964 936441026 279187929 588709031 363508037 647022774 950685148 961291113 381923714 793894785 915536307 999770602 103573878 576112223 529075262 564250661 477061626 731644991 403311697 699508160 379302280 882264347 303069311 571168313 339108288 822367383 568726109 853139001 482775600 517212070 794756474 805679102 878185771 912398906 446549036 515650140 765422912 848743747 977736975 995279902 302191156 455157798 130602235 591208429 589091606 930207359 880902680 918439693 998572858 998750192 484218917 567636419 516525729 793238528 493438140 611736521 320098083 955703319 231389917 301334146 776767661 822706477 750158262 881083001 609721816 738113529 949025525 980891622 966039256 972859990 515000556 639167295 860730416 998476434 310929027 909646900 869200569 872017778 443159960 730073434 597807917 998491074 661101466 933078166 808575428 863269874 280257555 570525444 508857684 986679497 78654784 83131897 953554203 971162997 394474646 609796426 148872746 413999799 956268535 997342767 16064223 371722407 532598640 632451549 812143310 812439099 618630660 651441122 636395054 933138417 761192485 816386440 746476658 977248352 195398057 618045002 979720113 984851749 670367529 757946577 684313645 929171021 629046453 717254851 137790349 755654200 436910005 871106234 648240974 706622093 310220258 740833285 780400808 798438328 444235458 893759444 270364784 944315291 916745989 992218535 693697501 773508408 426544092 888296966 164744364 574932630 421027928 687458349 547986661 937526413 630687289 931845209 116960424 123143238 812702734 858955789 582012356 902700997 52377457 154257324 731351319 876625085 941505185 954751295 799538824 928668430 380767341 918952770 582066619 696180637 533505280 725800890 673023529 785286460 935333021 957610458 96124211 992328437 299099974 568753266 615846757 934251923 986222905 997048017 447532819 467391887 948447326 961170643 473337115 837178309 497468476 842417591 654851032 912909933 938357715 962414875 501951940 802282418 716638906 820926739 668059432 911924230 852213369 969302227 920628763 969045310 685729880 923389048 313510943 907109691 84908040 98803768 993664479 995229486 480977709 926819094 610787016 805252742 27868268 138283668 414475195 904351483 778868910 856060829 14806494 793396929 84235438 563906213 111157668 840561787 732769992 964930654 581047999 679873234 317317883 346193237 296141579 522300229 675842936 956573213 799596865 873368391 86415406 232810587 360609840 767246256 508232559 634180969 608823048 874751461 495840564 819279985 960696600 991637701 812529690 823709285 640215772 644369457 975727212 990428215 86294811 498604878 322136050 962234239 338930735 358199606 7656715 833758844 493779702 768685415 545583533 910006492 244351189 590662296 515754512 817877262 873575280 903367548 820634207 940183979 43175357 955792975 613799176 812232771 813024405 928557076 940382458 991742450 370676507 906691078 701093565 858344320 188946182 221685885 857139491 936674542 768117121 971786427 67002411 544323083 643303529 798812118 120625054 531659856 618521005 775191883 677903046 964923522 137625032 473585202 516845182 883043652 604070830 801502203 292421996 806393109 172857165 390521860 288310763 386106209 402723678 562998980 716200018 775489349 821200890 931903748 938157925 944698181 998378787 999017927 575093112 673160546 352131352 412826905 357951085 662475133 845007518 880295851 866441134 936119415 655166406 864834535 305773609 462752634 325286542 449979256 639712972 643582087 225966045 299244856 471258290 699000672 62896810 512046414 43031083 780869702 407804912 499592832 282292316 533874378 986986541 998265451 633160450 920418081 652061092 666859988 261034381 716685024 823216176 925774714 771610757 960128263 305730866 487462340 880604837 928819300 470608562 479936272 406262271 688404588 210371844 432552590 886169540 968827532 738204640 925850931 313544352 742367577 105886968 770332662 167087656 604706503 889987528 997562398 60574011 240342703 518601429 640674051 781353922 951677190 269306592 777350849 130161142 406753603 565347355 763570589 270635181 641598369 531245857 729685645 555089586 670186963 359693744 745667255 983412966 989009560 440335960 669544481 169871564 926726765 828969783 926583617 932891161 933649877 472084115 489126832 744142680 968693272 656057432 977843586 985979043 990433687 202865275 512179328 351490267 945181079 269219384 413825452 158094828 192023300 510637480 564151838 653758652 653812429 75231293 495569574 912206376 986159610 41105324 754231927 874955822 906362150 41404360 895214920 289396958 726624894 897391106 933635913 793355599 832254785 709384070 867014146 316477380 682446733 80437058 704978090 578870967 639290487 762580979 806391657 316260093 928097768 733081176 926360706 141686615 521498995 588728470 712563510 504494483 909821858 348811618 796035162 685310374 760626881 498533837 578542389 47669477 858867358 929952351 999499480 249700244 774611720 597341215 829791565 660777883 992013295 21275758 489982572 445716190 727020822 380459033 414990260 426641794 978706134 682063980 728098303 12473156 757961587 294872346 357968886 695479729 950360813 23779428 957405383 962334107 969048447 645210185 936282012 177268408 682885370 639682123 909832839 650823653 812798956 566406503 594428979 771821057 878306996 745841275 802162093 653940215 789171619 648842763 728642518 806203473 953978524 470515581 582179826 807405591 952088569 345771704 396368093 706944069 782958289 959158927 967537773 930059846 978123211 908511344 995654220 506173563 721412268 341981829 613357190 630573712 922836440 139656499 390662835 911695652 962786729 324777423 544600296 103586515 556802987 425857066 663970859 912557708 993227702 794268218 830272257 998513511 999273093 284404 546914258 651451088 797113821 384158332 425103918 37763462 229180177 109539878 698427133 451017195 737714692 969699525 971878139 230700270 633729844 653344342 859625948 200679302 232588907 222867482 814309759 977674800 996746887 502571122 903194751 12554752 920780771 985557502 994003509 506149563 906871122 304775790 795996924 745667019 834586752 216458221 896622990 278013614 280678949 624717715 987762758 890262586 961020465 146643916 284135156 932452166 990697475 642471682 805326255 373325083 517431313 872065740 974741473 47074703 829322288 750613447 902057220 16333778 899344159 291871400 739870527 686484543 896416008 502837412 588896224 69901405 888910067 194577828 642455607 319496110 674477780 359978595 755498745 84474742 218983733 309974186 854650575 261982393 274612686 698851565 822883159 615947161 822782811 597551497 687594046 174802127 745120978 43467168 537820397 881809395 913992143 296047776 566455923 868634674 927698178 685621431 785220632 658672092 667822629 776423826 776848855 903735267 922771147 531723344 784367704 569474985 703937770 210399128 559115078 115092777 242591424 89765629 228849575 838610796 957781122 322024996 982583050 554037557 688742247 262842277 586620142 356017341 818824408 696713397 873013506 630734284 983492381 224204564 963257011 99501377 605146157 160156646 344828586 922093848 997193366 816235995 997132089 25735170 394275244 852596970 972771037 965524361 969381160 33140342 613546702 788161847 867030995 490844359 754470886 825892036 837013078 622027450 897249944 910956973 960064847 760974435 995972728 781506027 999955927 953810154 979188945 334864058 895242217 329816710 563563330 893343183 941923616 814750837 946045373 352497018 931052752 106601068 604783455 644185905 973736342 816007034 928444243 496511628 928811893 417427527 966814630 818378223 901828763 388377412 685126115 979349546 990352836 363529023 805157028 15349153 883709734 209463924 507343959 106309175 832170089 137626258 371235845 1668792 237134764 845361927 987882774 882913798 926457345 478198711 993034000 807928415 992436267 759093868 826699205 727231509 769299293 619844065 993031861 411710037 625125501 3993663 947357795 261221555 328392403 900371509 983423866 39463572 513228990 886904219 917662410 381676845 709334646 706967908 935016759 618031901 686445308 38434473 630712218 488778779 782888377 19599241 623234146 787236881 792423886 237577094 382902851 580964728 999843841 659318636 836989165 408598912 662938704 122148555 635019383 335131841 741794959 536639380 783781270 223038141 562559753 973245598 980582672 643676520 894960334 223860013 334650671 532482513 866896965 921921150 943572181 256276068 856827301 969302864 998351992 51714068 95693328 735716480 894395883 992460050 992656640 13712204 96160931 652416993 662802190 853194431 914322493 597646293 882011149 712884790 814543628 221154042 933066236 566631769 762006194 949381514 966670529 639539671 894375798 217994161 837808692 622529251 877503918 828238598 937164076 84353342 340682481 440544841 758840353 812686873 856653746 315836544 773840663 361591276 477136396 331909731 522003180 212289299 415551576 251901197 256225124 912854097 913818686 496395977 980133336 481491641 592617068 885099053 917884342 744251058 925311579 587172483 695320020 101111361 355156267 341125757 466027423 52586749 231594459 21567960 357068633 671716379 977709723 446230281 568288253 810583670 961043233 430213728 859658585 53038904 592673507 537891667 861938190 572860859 894830619 453443003 567578758 292274544 642885111 972500142 979731557 958332107 984045707 479059283 646390172 904584610 957646669 962222497 986958884 950134376 957102234 199144775 410218937 140862564 742094475 29992298 99224559 629229903 958782217 312638095 917857285 766770706 792138630 741812386 771257658 669535692 708291087 321814918 913737388 113892478 429861466 761740311 991490079 806172766 859028209 30947797 494997358 980325233 992163055 10821155 643090005 780832759 792408734 25507310 450987925 717955044 900054107 616965199 786829055 543067942 756957588 387019391 707673660 499374416 511364361 124688717 184091206 920596904 965078221 111677671 869191601 323102058 862948970 287812165 968101170 619524718 674959542 889179167 939923918 812881345 906358299 773097690 802701120 492710993 918531648 117776516 805611661 31732882 558764156 133242542 274556767 647355900 998996231 86317698 309154337 516313982 738508966 334106343 803625100 164435473 682826999 987779609 995378371 39061031 819331074 288809742 396561221 235534874 411110388 880284055 952329101 672388100 808866557 475955339 980819752 232563573 891585314 16017002 863252520 554210699 869270144 181683686 723690043 821660573 929292879 468960285 850886939 398906966 971090344 453673189 979690275 255076145 964175882 29986265 80970648 431372651 856847430 514339698 892954115 325856786 782142180 357138991 704705737 628613927 931863517 609064559 853083898 392326141 485934185 259999158 287302358 126809274 839443912 151096859 787497476 908512958 963102703 633656044 862994249 413586291 774288591 663782505 683038778 255200282 693629497 647637082 858378364 59053295 344589704 608132766 838770362 667435915 936152062 598967899 863850959 535576783 691365762 650588634 683759800 723326372 925294565 609382665 916408226 450330602 851829229 331258422 409109769 658623369 665084802 562881506 837098291 895222244 995463892 736484569 920792445 737728937 822311757 385759618 436457088 977579464 989913570 370968210 933516867 336385403 635523145 605917939 718777862 756797412 824359350 445905503 881383683 182176189 837849530 842080730 902948397 627563444 785895868 833087777 940903279 93675901 779806685 341232104 784729603 80306849 842626434 74742767 457129956 794741955 818420500 996529624 998980382 516878579 725218927 702070242 923639819 480379808 844968459 750922601 817402249 500183202 603693193 345162776 857612894 296998598 297758413 672243715 828107460 462076895 837303878 554261729 870234986 801759549 884877789 972011762 973072051 264106380 487686830 811342365 991064172 460930049 843659433 360037876 712434543 271499894 512743658 51826877 971147485 412652048 861233023 32126344 243776577 254330488 270377310 805619098 819648387 6800072 925640316 164284427 358288081 438851593 557378572 450542175 731431270 539458256 973104476 657182799 928320572 323498587 587653382 779545116 796866459 319232331 510024155 892890406 925772507 205107075 842509219 554757330 922230148 531242410 785048057 990637554 996693373 664982698 804647195 804794493 900174305 975335574 981801687 707479296 821757171 629813291 777624360 419001101 935815705 538552028 734359417 640153894 998823817 581429693 920035685 380372038 405550090 45076791 187277519 311096590 494493045 273242418 297157670 839592898 972573197 572846502 681126614 448774674 725763622 141286137 635037008 867115028 868379671 499575215 948856183 448973197 567796480 761671815 966480977 707391214 740831088 865183385 931313639 765399232 874392636 149345095 977443491 508243603 863457110 935871627 943834151 936790233 977121961 347132814 838450138 587020304 805114276 493310070 533905454 825015465 975757651 195586384 294482534 906807160 953929196 283796540 506639464 344932184 558226720 58511761 574192982 206674161 550631544 812052059 896176502 870371424 961925884 788113156 968985793 682581817 903414299 915641388 955224484 524215449 731285004 400046876 484820390 318336031 609012806 312779098 693368679 409692317 477255546 817007742 905828062 981014304 986409176 752620517 770567890 553526417 873893372 879805152 898907482 477185295 919630325 588322302 921517068 74765230 161180353 821692013 866263955 391778609 713272174 468714960 953282044 190574666 279135894 330132895 941557938 236850883 834261321 369637364 868963788 91185309 848224688 318759773 447885377 809176275 920887279 680687718 742078099 245430261 589326065 784775747 893490921 896871451 992436307 230598527 442519495 398415763 423078016 912968436 946521301 61370931 288115786 748800836 961566862 569667456 803972617 659702900 872602683 485933564 871482774 225786090 336078461 833017940 946998272 711234629 801401534 798066541 876909400 178490091 583611443 368007890 646466177 867634662 970672415 159088530 240912809 288567275 647574497 648644619 868988765 530144853 710252922 197078061 742730766 772958850 935328302 738662512 908684419 521739858 780187812 464041825 636223292 681825727 744556308 981097989 985339680 802387181 969606685 873125934 897792655 172287901 189080618 578924831 828278277 499160154 962041884 111151619 541969911 220070970 703587648 897133796 951387710 180301742 215883566 800604653 899939755 542315208 888246383 823657265 827347203 471145172 682487346 872364755 892005316 422895216 796669929 719851654 940647115 306490682 431340468 560096677 603271232 935804848 951054020 996497619 998233282 781280990 968242197 435188117 861617365 663322371 781361771 336860936 981959001 842826224 872183326 740939359 963437833 209303707 322697428 198613100 961615882 453335810 616652963 477030188 895002161 776108995 937100593 227410787 476057376 837620805 914588827 903115162 923465278 166213816 257475829 908885906 988907961 925807111 992220842 180856098 575940129 151709863 973771083 673430336 886122922 986503793 995048306 260672416 597905846 407195698 755395912 667314907 775910721 318071647 753470569 401666870 733945074 2791868 618071923 456424164 550829451 746568907 921481514 261448729 270804689 515017216 785949632 553323301 665281868 823683736 979571938 14086957 443020354 235693327 988306489 132796651 244039346 305110659 646353727 849103391 941341763 573233543 702119425 159786992 728637418 524532849 813391513 332942068 569491927 170026446 977703813 898921170 986938766 238990305 945225043 703126373 734346143 446043498 570893527 181767486 845648745 88977230 410548822 70180568 373017940 406691410 783568565 500403930 655592362 655842353 735891948 309833168 941877559 671605026 802004031 97185577 279893182 913294361 930718723 465690891 948166753 296479728 995190100 974358966 988451183 369739629 471604532 885339534 929653162 580302330 805187287 480108061 658772213 259324064 375872966 528714907 687211475 673532838 931603796 275721833 958767545 932502423 952266800 457987241 632904398 973489059 975140418 253273872 521035306 560198130 914251024 1162327 971698831 721949130 924421913 169881976 461713665 160350788 750120764 906917227 954545495 851071907 897131987 897776121 909350365 669721690 734424362 290246511 507169572 555574320 690253387 685428461 860391725 521704013 615184798 467504105 546852317 138916555 318664667 907690210 912848634 603181254 848700088 833051317 914353474 670131280 711740323 17602473 327296311 853478621 884743388 659506696 914427623 72006236 130654398 69115728 684877992 559079592 742339568 387987814 961204811 577241584 820942623 509196723 908529430 972886228 972922479 514202914 852445606 421250387 982675684 851196919 992122641 203154986 716696790 785582104 839864133 827226428 982680020 338010742 465925329 817546483 849777859 333191940 629155714 227718614 856380732 938347619 990559077 207068541 424432654 934429876 963854885 444119255 848635698 729137947 748739208 626120059 890097103 3577841 631987010 586357359 693382806 231066788 736951588 295475699 702657001 594811740 793819588 818217005 936021925 917231933 979594643 835942673 948447132 401835927 927018758 401983211 778564946 864954496 961001146 303699343 643558507 237995055 917030518 342990875 779470999 806765801 911596523 226311583 608937752 738000863 927984829 131581307 443246289 143928995 801921619 782311618 865617703 750211061 777496390 80449418 97571280 71556457 496114465 904995420 987105053 947377962 981010339 621433856 638622751 46611701 522794435 557116137 782740858 718548600 986844239 749844888 956714534 333413025 726739446 427895001 459016863 562462707 674023122 250710905 395292035 642943275 701076197 262520514 649470503 379793919 681218469 196351249 564072591 883128833 914769449 876525102 999165688 27527338 330362321 892661378 963256642 764887444 914224527 516403055 685483366 229554651 650138250 622578461 835129797 533603200 546229648 954961667 972466323 553598599 666910160 900446238 919504771 781272761 990818279 524232051 637147614 494549287 516873383 812917818 918804367 374599885 542867806 218069197 975781925 213138449 284725620 864154610 939110082 894599773 978427184 932918551 962363537 426811395 443823949 497069682 881732311 832701119 985526445 396213355 964902661 66259056 181160846 209043957 396607479 114553153 933150234 442801586 543469579 359040093 846647431 286251290 583093322 332993166 808716086 241948161 399798657 768706659 952456259 731107646 880761720 184022047 431932991 443056196 774065720 951480364 995010166 644954276 859168769 761755168 875288959 962615653 964618368 415659602 548817440 202167195 946169126 680376604 764798193 239020342 294118673 659793268 832366912 734830761 854246826 686669871 892661169 381315511 725862856 534971502 672956455 476428389 734507906 621052461 894293979 96314715 580550090 771552913 920090855 299988523 818876424 574542445 622727028 688675867 785271680 275121309 430086481 80031268 805560890 636509923 795983070 559523835 938206908 577523339 771774582 371215834 877272389 619011859 671857609 285129061 552976008 546531774 880552876 774261195 794080867 944695756 964166965 145013192 354220399 458721151 854371833 765050724 934556923 602601925 719542112 582711616 770257194 535218692 990846412 355691832 672669288 97882897 379295414 208077848 572498396 508700147 752289476 954344642 983243512 232292758 322095416 304465259 952665381 696677714 804963354 732383567 842434267 335542322 681601949 618348181 893064758 818757633 868781867 122714205 838917199 367749120 493625857 999747133 999954467 761254875 783816863 421770829 466205653 659946213 788521467 508116736 834708894 732569274 813267170 450179874 453691304 27443593 386290328 554883486 959997176 425892860 794541912 429669631 721317002 446349159 833240819 712022805 788050683 806615662 866053840 410863490 642164098 932153389 957767024 863695791 993470780 833652954 959195938 97676077 607159385 874679858 888137944 217448018 822378916 541076175 641071552 923787697 964223510 803498930 881544307 634243307 711084167 735083127 875938692 262868781 724712184 564790128 656881327 459236153 559380318 92572015 731831505 142404150 338504700 656813687 743265376 309424649 880121638 669341581 903157443 981984559 983219591 780655735 866267374 368464790 634824928 907165310 944170412 326524560 961806831 781838398 848269298 430002390 617355631 824452504 923317938 120335292 727122178 40191902 454071874 195745626 364280908 583520774 607902598 379001784 714683675 392713526 682593012 916620488 944955075 958499613 978655513 961224381 995958919 501420300 940231288 781553724 969719483 330908617 691762715 762201829 885313342 968929318 989726772 358410230 943820984 405895889 801301089 69080074 382832691 814571437 973184408 18930855 708846738 6146436 585340026 97290 109960598 435868378 951214502 295620497 503228267 591546772 786952166 158782659 868192397 929236533 952524729 544593948 801839065 341426091 607107965 831745705 844242702 102037092 491110568 816003831 922606989 868000223 951267833 373001846 794296151 609951001 641594725 961414630 964014233 657658045 699405225 94122598 806638484 577178283 781908927 268916580 604947066 212764141 773889035 352882530 893493890 823542894 918905882 655545896 670761326 113333928 219160593 621547019 644356034 436521985 983764412 343443181 344383646 782063968 879620761 383644787 567840122 998496464 999128437 532711902 882582794 156945475 168789516 873771396 913253967 830336421 845455040 792902639 944151989 383035698 807370986 922177697 923044540 855486170 891026529 800454720 811484019 848410947 889804939 906160952 952535453 355050587 883697478 571723281 872580314 38757493 815752977 237883927 533792700 934741985 945246863 938220860 970336429 387835585 666371660 149035856 918038495 740021409 740666887 727228141 769260328 487785866 859422189 75779376 726980119 228080066 453526304 131033461 202242930 456509172 842764681 170793794 747880340 671188375 902464794 240421827 455198996 215885762 474996259 268582731 562801724 944727154 983810532 963004527 986830455 412199716 939111973 409883624 534619551 893632243 964609683 583041749 863103707 558655962 994227754 354057093 518144743 216764134 540092138 578694283 832992931 892179075 931234026 621225411 776540204 244055512 902693074 396857406 401640231 283052553 892151043 502215151 534234687 508132057 617821998 49164284 169308220 107728105 350756287 539292032 578130336 872916271 900577643 289789387 737834704 365546147 500029818 12292318 467157249 607449765 878846027 39433374 624215120 250229457 642905094 405321978 432366656 134539854 783518726 723552980 769839969 568403030 961395117 690311377 743958503 406193946 711848454 251503786 365730832 58649225 934717141 184876957 245284719 215078262 274204276 491397882 816345969 283235438 874063990 246232383 946097217 38938769 792814080 215698533 490536016 620315060 760884721 934224128 972814224 288490136 485266507 872374278 980395094 863714236 870355376 264589201 880320627 959678250 993101600 67772593 339965235 821215107 884408292 826019207 837242829 309818 801093579 768755265 809339592 343246378 455964152 987562555 995110497 865958645 922858647 743231773 907120070 979354027 983442112 562188999 757111287 837709105 855054548 778607902 862885656 313380105 489957141 204345792 901911015 881033436 989364535 906178994 906624298 655156238 853750663 968803308 997305113 312490748 552608947 179886844 614288115 330347842 431048430 156525693 443752130 147581370 257829290 800290001 938242419 272159021 283725659 137488607 395923535 186347360 354448591 695312141 835274845 2466581 931636581 629584558 725865443 123664786 358618902 801925748 917607606 865099314 919989881 224770059 852621813 564039388 569421354 482990728 537365446 988757867 995251188 932386801 951991480 487051829 799012467 607165892 613273419 609962807 949948969 231167491 908485382 369429611 754777923 89583727 219348275 493205622 984399317 962154231 983826141 766461282 887062759 707012207 873980281 828320123 923885313 738624351 914694815 384095695 436062356 45968727 930786531 541584358 984978697 624489793 971358968 319109421 903572225 943161469 979012227 681339704 835259744 347073464 734171540 442183980 463745640 632289592 745558959 479031112 497748930 609044884 834269069 202718943 784092717 962281553 981890700 478303307 907229736 70636882 309879344 666441931 922783074 761377704 791722553 447457457 799797527 691720374 812352603 492111498 882138744 349506196 773934130 403890685 779987821 191790935 638282426 85671427 509546896 808249645 995659421 582134709 796055276 369726537 402353104 859349282 967142146 46756211 148947501 900922221 948640891 645582431 849825047 619319263 864910682 385707858 836000215 252868707 574365485 397700156 806335368 690244525 731894388 261456974 979729613 878716257 883201255 202326730 367428113 449171692 782508291 228842668 642793946 63492511 922768772 967846324 968950919 312750482 768212752 117770167 527417708 585861385 963328976 948742901 981605937 196159569 763070649 176004018 608260218 383477419 501559620 640845984 674861958 935136850 944821318 276380152 612132877 680832953 954351877 766821106 994035393 346372169 519233902 343062862 379620459 334157224 883277620 908960562 964270904 496291224 749651409 715228862 903703309 603811180 755383411 822819092 897762147 418307341 451879653 544103508 667045520 425851502 674843550 718693624 937725435 501811446 653081051 697362526 921339944 374820314 944049975 313898117 870929624 78675174 90733969 110406465 484282512 786997285 877358289 192976816 750540864 485773393 503687857 609556011 995195717 253169059 792406922 893015195 967643345 349288915 919225354 549010412 641642728 785261841 876286360 204801305 761559558 15339334 266782250 553383131 603463808 717462468 859657100 375106842 729474796 747625695 812244197 421238620 867063874 777475016 780611241 445466357 911902799 467182050 778403493 911284889 997162597 968759128 984125957 125728735 288981479 774048604 867010806 997414000 999567162 648572796 948142978 839473508 926387648 999946853 999966277 129848140 504259743 418405523 497324394 212751155 294233933 756688730 843952918 201860679 372348329 890251719 913358835 198377769 449806915 307327839 953483408 984353952 994054574 825261243 959831286 624894633 672889590 981001857 983824731 654907588 982514294 52950372 396204617 629991431 982500675 178006267 265887682 914206205 915940476 878228490 887546106 571729627 792604284 990930919 992039810 653281021 670336936 427258549 529125564 894583569 969177010 560575627 943796301 156377576 652204795 917334742 945333277 764340198 838542398 601866243 989097482 621945875 646144472 345752345 946315100 14524009 95338243 226902695 366484937 607352654 972075398 405816210 582859463 416276118 683433195 739135044 859851316 547216212 689587153 317032823 638793525 289477389 501853642 776601436 961453697 117007558 470339001 40775090 595635755 914447060 953383707 534856984 710138872 862196699 899880795 438771898 859852561 91979558 817444007 554516185 874053662 899654653 915649909 61174651 850526323 139345443 417014548 433408119 624018602 157530226 526851604 162213651 207605997 785051365 880203917 193033798 587055158 503239105 918130783 519129813 525116215 543613331 902022042 680007848 839833878 45302808 639424660 516448995 650087605 417886 949143646 809508591 932120934 762446251 845339069 806237517 962840624 484532724 910810595 607927450 724196753 479893930 783468707 240151526 534214950 588200162 662437168 958404714 984895693 859871400 969336533 57880014 654138110 624060785 998447927 346006078 944835319 865251942 892999616 911963891 979078139 189483895 342254261 192077586 860376868 532222547 854014266 224882018 922463671 502182222 799640098 218426943 585728759 840924164 924095224 84942952 706021939 549999001 999759844 869641077 907891760 833743637 959847847 272071619 740182549 437826523 828367683 709260087 771927993 109531848 954458097 243288630 588681826 433240181 848253936 100142326 984648660 908350606 919830320 50815501 586484635 760533516 949146170 423955827 731945175 740340716 814940975 94540367 971086674 310290522 729783782 439150590 626079819 470187313 609986688 220256186 310178997 31886022 330459449 467790933 907471358 121913958 468056328 718332264 836901377 645226959 864212374 828270513 862991735 981492981 994744440 671771133 681052745 179028402 673245266 996277496 998560869 734786017 990974717 703877551 976693840 926017161 974855465 708129621 795328861 280188274 759845990 165603942 369903743 946161659 993408957 212979459 904852088 358097593 918022892 543978449 642717677 463721172 787653815 836354633 887939101 439757323 740383097 866842841 987791788 129935338 822381128 614072379 702593791 65998415 967127070 282476487 734224302 233214211 988538744 267739281 997243372 121692384 219841280 937196527 984023383 709327503 883204234 392848969 418545135 329547769 550344119 724401823 760296560 235576841 576967103 709535930 939564742 482714117 769047715 541442997 701578252 16295342 171044367 544277042 985464611 977215269 994436013 447616005 948134848 880577799 994687247 552347303 570281739 905697623 947072591 520806080 728666297 507400892 568063843 456984328 595476687 388345308 959361515 632799853 737927013 181353547 637564548 613712199 834228680 210787276 393595702 524159669 666770361 176885939 263881321 353998134 614745259 984488466 997046174 751275514 845984955 259431253 589835866 462390210 941335767 438315354 476772629 497292776 511622149 534502732 634868049 333182574 511707592 927387502 962844138 792358019 957593214 286011626 804841363 826059096 959691436 859779643 932602582 344124398 514093243 118452305 166681550 834559227 857258609 776589617 776627648 314305051 730880451 150657047 281492958 160341263 367033659 370846078 983916396 776536411 801167332 42064066 433810637 599414110 796690484 560555341 735946830 166147378 714765295 540651521 874247581 189410587 656364243 631814511 766333674 611858016 662602037 970262165 972800333 913738997 923790065 479587458 903151976 670936822 675148298 134481999 745766032 792483231 838879852 573577533 631566883 944192821 994538845 560800553 618192840 993087516 995784975 525050395 861116005 863337701 934942808 139342554 190977215 763164488 840704104 65586499 594426885 417979750 900036482 616379881 881590185 158946032 546129703 133378048 246232243 527314524 699064557 60548969 558084219 34973248 493045076 764422133 849442962 323875425 964851730 276664981 653565935 337012111 982190147 706336273 819469555 596324947 971000483 355769973 783338911 108226213 610483716 160647027 969422825 533554287 986498284 361302070 476155455 563554109 889981839 207021684 782113434 621269338 882799278 361182418 864305500 685685392 732300301 491841253 676848805 581797495 596022894 737331880 885633893 479012899 884398250 456680121 522198767 480532693 616875382 75628956 719542513 307223832 793927468 912310900 994359451 871964120 961210076 809934562 872746275 129982933 969661984 269309872 292963717 503055487 734558441 847951737 916976636 953767608 962245132 107902515 564141349 492837579 942643810 99713550 858893811 570444619 798555810 575612757 829357367 231157539 796767711 581865924 777307745 610872574 989132394 811438496 958924708 189024823 928654846 555176106 723834819 864385406 957308915 956053743 988135567 614922874 648535172 689128476 886202378 842337117 983648952 185827547 359945317 925560646 939397559 277446860 895314459 694240381 964246231 598935362 942797573 920301103 961833631 327316278 624655116 116048910 657685563 5756734 917932366 715022303 771220992 860235377 905974857 645523808 803826412 920641522 990544599 916801277 918220977 636195769 719053936 612364553 784071531 99872171 710856917 896180428 942487209 561931060 592600773 916224283 964772729 104921105 917876429 66361929 677843645 258472813 775585198 8641311 472728767 53297061 736617451 912405012 923742946 574476876 651718230 56946304 203283087 983165760 990516071 35113010 76416368 225628070 795839039 536024403 809438433 284436594 784360945 429754783 575607043 978091064 981592001 302541349 656217710 136833982 854225225 588968874 719503851 453122891 931725659 382189982 613564940 773783735 983516698 175377306 450796990 727897696 900515791 259481051 299964059 157430693 287829582 771383664 790146722 212293590 942540801 51855373 655433728 917970477 991866782 114619257 735236755 616594126 806994160 11111398 18332311 222419894 270964615 464223653 568025500 342279884 893754052 823845598 829589851 113875540 421315487 774519586 873744987 90315008 108616282 993098149 996619969 325330710 604749128 971299416 997880496 102670688 520618865 995561473 996555122 7894701 235475299 295182132 900296438 265950443 595306744 173640041 666152579 346190298 957196913 866207689 961078668 128504712 628144395 42944661 796271915 368659666 590249169 102315601 715310813 837084031 860179213 987739532 993969015 635858788 939336580 142601642 292514562 430262465 979038747 853587057 973657169 45923122 302289033 798748627 976424187 289113490 526046685 486652305 924728292 779390321 803937108 590332634 920015493 6375246 381194107 248599645 835486109 536821553 855208607 78881548 124011864 988708352 997059179 903670234 967878088 98544506 363516334 29040877 270167256 906716050 917143155 876017808 962192197 544751555 963673755 5458015 32486835 331520321 362758056 648427498 809312445 11000536 925392466 115212030 323635076 786945870 924794484 100714250 480442488 208585603 985684329 799397751 847217582 759009456 992472964 978375922 995276412 548602616 872042797 692435675 786106280 769087405 805032058 933570804 949142253 530824059 728167806 840558025 960006246 261195810 753572788 755843075 864842358 803507665 832770612 216549735 796158626 28291167 62889203 406960042 758290007 560072899 848503143 529700205 665479748 507193103 580248994 24228374 514267757 105433781 991338972 639295840 987074147 560071595 746226972 783242941 793356928 564464161 605594934 914543176 918022892 279679364 294639049 402318358 499851557 489221490 549148912 341580979 482586078 540901448 820013847 194698761 489266302 897954000 939011208 269856708 897963655 428781426 878942695 240698882 320767637 996571633 997539499 591665414 603323771 224789204 627545242 791216806 964450689 352890489 931207754 187312382 764269152 57421838 926562442 242106208 641387902 751228458 796574166 192855448 396965511 268943701 999849808 722596035 920519076 600863407 967171260 220067727 301455611 493471521 525026064 872045617 968572033 629937130 784105951 603748564 730145211 332581902 605442004 336089414 980417964 518109934 847376842 264922210 460441885 351509334 487634213 706851384 967863197 67692764 984434299 527095430 787159528 95742640 127671826 691949254 884461156 181436316 612002745 677686666 906816301 410112701 441838204 717749385 829249070 384110308 969775708 852569809 945924155 606245001 915779369 683576789 685441239 116884797 305232042 301444283 566339978 299079433 847297207 771854935 791474459 949853670 989837324 328950856 358149300 537526579 741163768 295996987 768108997 303327361 415757393 117786680 880715945 110045141 959527406 193074368 489918746 497040635 749900366 773436252 966123529 859017208 862951768 773866978 835391383 73563232 789885024 855060705 878906129 642149467 673249416 86537236 523329675 512964306 582737820 539391821 616793770 731513934 955950303 789602406 856429907 798533843 988861226 878440300 985147085 501737354 547894673 117711850 319820823 496840437 809404279 203180033 390128452 511981482 533980357 797970343 836111278 646191381 821515726 782510474 867246291 942999006 958040665 926683494 980039358 978118313 997246504 954182406 988701520 493944320 535732952 166905306 454153980 853279941 926703887 789551559 857365305 852232760 996572703 210940827 679579109 829820984 976384176 550762410 616880081 9912244 784316270 37744840 920654068 98087802 127641641 495708320 770599412 557929278 635083859 870803318 901541825 895662953 958684933 563315424 937588937 668862786 830348132 747488824 768418497 221925049 782565575 151810493 933584407 908836957 912553002 303958932 978973321 783137000 893084294 588288644 777508300 165013793 879101112 246155109 880111570 635753384 666255232 816416498 995370835 331908333 626926424 342721688 831865235 522837748 641844612 57702045 725402090 721971222 770746789 332230051 449616343 364282909 545548650 379850957 436650566 753326516 813242080 659182161 909278903 928401993 963472301 131090661 795119932 185015835 331216841 317303949 798633838 167324746 817044940 550740231 718016748 708906186 948200040 454116217 691843622 785359034 897609349 839823800 996227125 784593159 856949923 381775365 431153713 425320557 756358307 386966832 728683453 125640425 159211871 283004381 498855439 692416912 892227978 129960979 385960543 689394469 822444392 533570371 601666280 63030338 111968978 232001963 412620126 101882990 552680855 605205551 700577289 499057606 566831764 792137950 824818631 91833632 775491058 818860789 990790908 407023058 502478407 553669311 729790190 301594676 474286190 27101422 666165336 317992153 944637155 108443115 388452168 253115306 408264340 622882337 625196109 824260698 935620416 488755522 627772515 549236631 649393623 858907978 896361066 314575940 687659147 841889156 984663402 972680268 984018777 880964514 898162810 23874047 30173228 30574819 838098165 774671671 911033459 372434060 506961192 126561850 313624962 413793588 486088530 191043064 230756428 640631817 698162756 212582906 938428827 800729163 972420564 513871440 651470247 803657165 927647137 146762801 174763346 32042016 114619950 573519850 628867237 568459790 685147157 788585614 837235665 706270136 816353123 220932669 893963583 796028967 814082411 503687912 975679661 340298428 430623017 441117982 885179405 209903299 447234347 600930117 666648582 700421252 830318546 330927977 761861780 714383955 938862547 38678168 537820681 313592161 983160325 640980190 852939510 769660236 867300443 323880376 511556126 261264750 478017378 417582611 935163152 420273444 660453601 499628954 546675923 401819802 502579960 817782536 974261630 82611183 653889453 504094910 745775811 769011764 991696213 943428054 971713401 809026612 833221898 682488893 958290601 252511531 862993705 841139681 854824837 288926798 917804187 274333023 829531528 829687330 977589178 582243562 605004315 547812791 932512386 922412825 939701331 788941640 894734486 899430986 916522347 34258248 665872683 609524624 858966058 593406579 602917353 553930263 625460999 750356177 875112863 590129141 913769383 730610337 807066159 611211093 965100154 682829896 735283054 795740303 828511892 368241348 591390291 784299768 889663614 467555611 529703430 247495568 590290878 729802718 876338482 713489263 751056336 947022242 960498447 284337303 870386152 249664212 794934962 615144358 726455716 858931137 933023275 228900059 850963713 810614725 959637824 586279754 796333879 936496676 963451336 549235434 833060067 51928709 194583512 203117259 797574751 98171227 477670293 388131679 906568855 89228030 504548536 427706508 671142106 501449531 721417804 386794940 940802698 743603030 942353750 897642400 920650991 60926688 953100466 518386839 849538840 392190832 536453801 287428502 652303641 31226163 510975173 912599333 954308951 899022693 966958376 812180679 860849313 72479335 153111113 513872668 701481038 555007800 584683978 899882033 934522242 730222713 735191758 319235017 355281060 866422700 938123372 731317781 836253523 401638186 670599463 794259083 992244820 722598002 953722584 403080353 899403694 2342128 960464151 183138680 994514917 822046563 845744482 256955730 446988949 621848092 923617187 204591589 597736460 844429707 988967121 445109203 470574985 871038280 935034037 567790926 580268402 42987670 96686498 389332501 638047737 883716749 908629970 563725067 585991158 789903660 974278299 542882722 600525203 70753965 780082389 502669467 629643263 371957982 866412356 623567411 891426065 453206731 784905785 376729212 466845842 78884713 727124303 311405666 388016395 70455258 999287301 725446985 948245276 604069809 849004360 699071156 983313040 602028645 607196291 342592604 565340922 956422356 973648482 48542667 426214893 542578436 780686050 990311742 992803300 360156397 840782401 426484690 532235968 49652299 735231449 609019009 983811761 122602363 780946620 385001841 577756448 711958135 833862091 611597103 654270819 739336489 851493671 458684577 931789591 674142188 723349210 645116185 887144078 373618156 491148276 786343793 955535084 179915362 414101828 769903111 879948015 687616281 902860267 872262616 977349467 43503120 936855481 454370194 695632738 885196203 938050707 780558357 908352410 85321197 109018426 615543900 640379272 551135550 954595453 365635596 571738055 855802605 903679583 617257268 966701957 115177497 765726878 43007125 402564261 262863460 686096897 191048386 509204310 237485907 759537642 29763383 984423377 144177871 458104442 423613755 583232531 63167734 442906569 296845125 679509431 448984570 970161635 290633033 852911307 325181438 850427681 500602213 599391389 189075708 389771160 184527539 759802325 790491224 828058459 94633357 847585056 709623041 965977438 584435433 963286044 308647712 887833049 752330877 884939430 474299885 647925068 601751153 832158442 101117061 244236946 145642904 338094756 32073775 322660636 221293579 391229340 839923195 913522115 162228462 844862297 234319270 576512806 954208132 957488558 748699624 986995560 603504448 981306713 614718708 730902608 300355776 970656483 479946247 546256610 148649086 350559464 285660326 437814249 161835720 227576886 909378464 931272493 298487650 828284696 306664364 546022295 53325901 963290590 359225208 840853446 782732401 868441550 605069964 923017888 211723634 430298457 757255167 787044960 923403170 981560499 185211280 875566259 577877771 681691558 741164011 948949842 605446211 695972593 145156458 802177371 811272328 868863098 497779669 659693143 15889843 395005626 844243868 978187262 664384203 891831509 80199790 878454942 701696367 969424447 218529352 546769805 297226239 848995452 466008626 719457461 644080150 983381027 760022125 850675202 564093075 677923679 673873422 924122603 48333765 806587719 961297603 961953003 326682745 517923219 163453614 934205681 72455719 212851599 981471532 987759293 286813339 887337059 609213095 857108208 406321500 790848260 135926612 905978673 658769672 928126228 488313594 555017619 836786010 866828256 385900744 724103364 922844403 978176447 556514415 996487231 239323468 600019742 299938829 395013390 950519905 975871304 850048787 964390003 264218480 294359851 733936308 998632952 361207415 378236881 586374089 824055342 692744243 828113984 884490711 948673667 616307793 759055807 226081885 282428876 930134023 969285838 838056189 863055516 490335536 734535386 500421383 932216919 452091524 822387659 319838748 668914318 635390237 722603386 995477051 995797387 557554803 791140539 46893987 526952059 852294808 927967488 444041162 826994137 903636928 954545252 891644631 907757649 268070222 717258277 106001535 761963245 107535444 771368328 209583463 370969398 768863689 797186709 804600490 992864548 77015258 530861856 364354048 794902517 506717726 728887845 271805282 967514796 387245375 651045065 158243957 907520115 938999211 955630184 736914216 865662534 720567719 974895515 22057818 67399529 203358078 504268715 464059205 883686535 881150584 980868834 788620362 985101305 540158352 817074298 241373815 499510706 108490951 491372017 580753580 846989886 824997453 893851496 53284392 721983982 346443613 989255123 679318995 927608069 847466602 950212981 840937159 936002564 965090578 972226889 976809205 993913921 344404045 977646964 380601380 828790573 43417826 861738157 2288353 393120518 327033663 773267294 59955052 912585503 483477010 576525676 995870101 996699431 134783437 670829462 746852411 943512228 643701350 651660749 614317897 868935241 310642451 775418347 292529651 426260314 786411072 928420433 599837437 959339370 225412434 775688933 277378461 510614008 627840127 857413957 481207736 615529477 921416624 973259455 439811963 507778327 210132328 767920724 874756533 939603717 486119701 612342607 426988333 714662952 404403226 815144658 200705884 698639958 537891345 573655246 541066904 987352394 958939292 980021445 739432792 782714406 923514458 958496730 55057756 336486325 134696565 391022257 76046616 598754261 316368688 851191788 853996507 984715456 474145537 862163826 525677366 729220534 588523732 977889081 339442769 479997387 811796283 945830329 282720375 561026387 480270917 563251854 121609800 464653291 705679209 811207144 695167781 828077634 601137284 700926775 653446296 764589164 453538686 844344459 759099546 979247129 525509081 585722764 294890838 487439955 15996066 454363407 648656841 974427202 370977861 507478807 175649330 441568611 935034546 995043461 681043359 988569563 302486989 737676158 818493933 982391311 676749073 848190619 581852036 894092399 718374579 923789714 261237898 464768190 941962552 971863241 292272702 825851281 400726496 407326518 345766851 395366064 302131335 776329220 738461138 793761959 507304022 592284405 36220023 846183535 87997502 631002951 784187681 866533973 828078747 871725747 841204401 874781786 798652004 864820355 456597144 492555238 85636350 136852053 269021806 308473484 901090099 904776207 790551493 920812812 262329425 727162794 374058069 833157276 391069349 847513752 509063679 778643925 66987350 862314647 806900995 827503820 20244349 369962152 223007404 417205628 486176935 701485870 403030265 677104579 451299216 872758006 47381572 345414407 369285890 526005940 442047869 518558196 520952252 536587667 430166356 722705176 449767075 674467984 922858939 984906126 20789731 976660509 439391026 925043166 777651509 973103009 585592612 995086517 736710024 895008967 968963820 982820034 117281468 540300695 441903608 928130881 416631980 499192613 408233940 966220543 305474473 978899332 253273791 711793430 587586926 605749154 826070531 994158777 431283481 950331598 658032430 911700967 179755088 871533708 219476758 440623823 176440664 944343905 324456195 761143364 147638421 157964002 289177685 812872178 244637601 845157835 815786291 830197156 547519589 664701694 755165169 806226585 685281260 984630642 705453105 790751260 690666947 774560167 945171708 994383157 474626533 792488410 954064769 974527538 438951413 658028872 241086544 883382060 654285153 771480180 564542235 926384530 881079281 915326360 175381305 375320307 681515653 841225028 106149356 410255227 412441064 469460456 681713558 733880314 404454382 499510532 487582312 633132521 887839662 977664398 440269576 881938904 873314287 938115078 544952207 701769732 410068006 625628752 944155565 994566380 795052096 923323422 214118504 234462684 620843611 686639744 898984972 945299078 448099534 638699886 971553599 980061636 9464390 971441021 134623276 668361920 241347703 248856071 232026717 599243787 651269974 946736440 706789462 847988071 250108876 810495449 796788315 828606265 218276215 955346873 455353441 574326662 2185646 995437996 187866543 338045379 240420477 630168628 23415368 109060457 819055421 907709073 906627477 915792234 466531934 522776029 25944120 881591684 249746791 581471532 266550727 328657690 593549553 646410155 554092171 932012407 739533025 887057381 530198091 540852275 91664689 353538978 208723743 926057001 539194809 788217270 486051679 662685316 574503281 925514964 295845171 957273631 589986842 671464435 345547484 904672170 829434402 883311109 27767400 744040073 334987041 419644456 277632510 968021409 568048986 763665138 884006226 999555564 88701858 592772241 698073089 801181828 38713395 803254198 289834679 514010316 462952937 946534073 558749980 579441035 333932105 504516568 80869713 712907138 245293410 838925259 154616594 727773290 787654250 950980751 614087778 915374783 306757216 915197100 543045585 849652033 927576115 974749943 160596938 679361777 192366327 751424296 82960443 664325091 634032613 952145497 835950843 883227501 891688032 993764012 354031453 815887446 450386435 890434011 283646747 835034794 649299761 852931351 599222756 996287662 493523774 652648611 902620778 927510961 287225401 422905021 96662205 293825552 748095196 827571362 647459095 772765329 114246683 374543709 696372063 900522668 677627235 877640617 63234028 173446266 674108776 987263788 696057601 750352961 99038996 267302031 524998062 603102090 114842989 542948736 245911795 874178526 648287467 749730674 16313031 111355352 744648689 941413699 381306857 847700136 204263152 905953839 374189750 448060626 421956541 437345429 51206587 907303426 486681342 512257185 909723382 960246811 33727473 595314357 229057032 499980976 695136408 871741584 656290650 876588315 12940785 447575182 459622365 515305390 365513642 914198242 458095501 643868715 541164528 966433980 157190721 705496830 572604741 690591971 934213841 963914622 176405956 792793650 332956659 355576211 633974323 706966293 970515633 999435496 793536594 983284500 19061235 756864340 163750932 914633136 922921754 965229374 247842640 435596101 258063432 594908073 524489731 937963285 391148380 822593767 441678994 985215329 302563354 600635893 588975175 687652729 672275174 892078456 358103533 455809215 519767184 794786833 24409557 42270002 166704410 593960005 197554503 449538965 309510770 416659540 972020473 973158105 404461093 539290826 302247043 553238606 828828216 951539274 474578122 987141111 517701918 950968116 991031307 998460957 498322482 931311298 975824910 984252485 795636187 928749772 16655275 810575684 221133812 417677757 243234 302140240 111379577 137064386 139416406 280943867 216491764 373659201 976204613 990089005 218932732 321550071 381560350 674446921 897041345 939597770 761096566 990338920 281378878 771338927 158348049 957099410 582296041 789550657 836395993 915070107 658680685 769067591 494836024 933629039 690041307 757837945 363496486 846772115 744753648 764976052 899599491 970677200 45709801 935332857 979330906 987800860 659767673 886937587 558515949 652568709 857677505 949046235 796302067 819597324 189738429 330760010 38474102 428834758 305022836 479381341 137557877 583503714 152197171 962253894 467537978 684180270 665955975 812102761 670655787 722220744 111687543 924511569 119840159 397524068 721064745 816768946 674182370 845142858 659207249 882796463 808121095 810923426 645154987 782753684 930113133 972723545 612979196 738753981 325753800 855662507 365606292 618352087 655215958 863307282 69441367 531513000 26783076 602813276 350219023 668980461 710969773 720903597 245571553 272880534 301021464 710362051 373704917 782008351 597839952 751764054 869217485 988723701 226933660 436925917 107067719 943655353 718651983 957313474 939651483 955167185 539127555 593955779 264534267 779287769 148382168 619522172 398391153 519934272 330955841 814468459 473019936 765771355 346872545 935274838 297174749 450591633 833367745 866590687 539856531 882908731 305626249 539271814 274170394 471836937 811999909 948606432 72460943 583855820 155525095 378860576 168930424 664762231 709520535 934166007 702645686 846308403 254569953 961000845 491651992 631277231 543723880 798581237 911553969 913897708 161567282 948799466 400153909 788879921 509498814 658627436 998599797 999843930 57484272 573098927 848370201 902006055 548641786 649378635 302751160 607484351 118552135 475298823 894115002 914253099 734841814 813147193 680936625 711896447 698272604 819972645 62744939 219476508 102570811 214557186 918449072 981533967 982082574 992956417 167130519 994336218 647556159 895134126 288100240 727290844 379879249 433641138 617389569 890846849 387716704 578316199 461028666 551518173 531959787 856049377 85689543 507742604 994798154 999876888 553702648 934823713 787546354 969849698 273070502 309199552 714042717 764322769 387116844 481735082 991534276 996987089 141211298 462259601 642471550 713246594 189619362 900529875 613320657 680119376 476771939 898013123 619746037 655372448 978294677 989708026 746220263 843995854 858394287 985216190 300503069 991423134 807094568 954016765 959347991 981547336 961185950 998408385 13058893 899744734 358745099 805345426 313544814 945128183 538971512 622118077 257295460 415037687 818043200 863981262 149584542 494230870 193000084 913440176 480475478 612878125 12268719 613503188 195963727 659944005 926394096 942368714 824470863 992939100 936683210 992969251 752049420 815922485 428299933 700635711 532773969 557672134 291454100 374560552 262949546 621330803 262788650 919442810 884603563 982495672 365962446 812343289 501658463 958297360 304201110 993800264 283886968 980312414 121823386 370985067 802104952 943864408 848811589 865238128 921781414 975130469 382987944 821203081 336255093 685127341 163930195 617601951 473969306 831282444 92488406 668429062 381263673 639724069 196386811 267612197 610699329 847640505 974188066 980659659 540801613 945201441 655871946 883592335 486679945 699780924 580018172 669768933 484557921 629451654 901932814 934766880 67894158 412163598 189211231 613669856 846728854 907234418 327920647 908216405 523079983 956669466 94012640 125456347 290079201 693552109 185403654 205464974 459933165 481528547 659937504 892118598 431761191 606851986 423068682 742445908 687014928 936303854 254359270 295785382 957824274 995068626 579066902 876361909 583677788 964180304 433397030 637178555 600564479 670685163 461918495 609391450 552470051 747429812 655066274 958840154 885882531 929501659 801740710 864010054 28169296 113769355 405015274 969900033 158261908 165204741 249543202 454302932 453764937 812060954 62228837 994492790 792838014 881326688 54365966 105093397 310280832 941924780 336645894 566790354 384531272 797784966 654264704 690070980 848979321 866685053 349953302 862455648 329398883 332121191 170096320 871664640 24164683 133702556 215970055 356995529 931256770 974393111 94659204 384451599 758370562 998525171 748259791 989279470 439408057 593988902 190582527 190642978 174490393 506944604 607902991 806215229 750208186 754908185 842826391 911430289 565860156 642253053 165946323 997257073 350612093 980022232 128858386 885745178 970866741 972775354 207748212 944070748 420627388 498208741 742351574 756732488 793917015 971643994 216761288 986385127 827051167 846980603 201640975 299335495 112580468 868663436 596092522 747090999 653537875 803086055 641482841 669157300 53096065 493995434 971787909 981583748 851277439 903534976 959838550 979224515 306777739 553317786 76484477 571853465 900689926 963834303 495792476 888798126 336556321 783930989 636089058 899041876 302010749 437408298 84996853 502855270 162809442 975839362 173453768 596487800 141555983 678641785 486631031 937876679 626804480 749731344 265487238 821933037 520227991 576241547 394941845 398080918 859537603 896012656 147950424 937628417 452615966 643168851 851314244 921051446 482347741 661194131 965704638 965956145 399449900 950296649 502960094 713927590 537791541 755375999 130407388 611940078 881560250 964826276 138548292 813735892 293847076 777599789 967963808 994088960 250146338 397627902 202851605 744095879 932249606 990303944 692583 359404541 634545584 686737506 95215554 395725721 53273145 113008437 399166436 455324377 722035110 838897718 434434374 611242908 209085474 819718943 603479692 950937583 52135460 907596689 255932755 915633593 972865417 981891315 882450226 901317873 18848699 868002512 369997138 902105196 842732236 893189001 773691274 883851526 171741159 202475399 920545697 965069005 641482546 706471389 235422739 851027539 470084361 566564523 925716867 935287061 643252722 791307675 711813050 848150126 415272009 620955454 814122464 852952841 256550174 760020090 295288811 983315074 350362804 957035750 599900065 799034053 90451156 380363741 33299575 715405476 187505929 296576561 795506491 961350531 475042006 959111316 824141356 965804110 976175658 989785145 56700409 204413669 227942595 332660968 916195765 951238572 241124879 573072439 102015600 382741626 464290002 950523983 993575958 998912602 745256615 857954133 888475305 950499924 118455848 742957972 159195318 706748303 742122157 990532558 505571065 812653593 354987968 791927738 680604215 825381545 251074648 983458846 805589642 818751864 306293962 578869350 693698163 772533526 910442063 915131950 107637463 388921906 499885008 533066585 591672851 643586126 386537597 678376005 450121621 845616564 526601035 927166331 370292623 572117357 21488477 180162122 40567832 423636046 746941435 897408645 64329049 361573407 341112316 921075589 28544322 468261989 814666130 864613129 80187765 295662844 747295093 789196148 64130702 120049514 78972051 450253932 853815394 944234589 270766039 852917866 613748098 895883512 928261640 947189550 537832684 653120061 735485735 831114288 477541919 522328694 186784652 653607451 180399846 947597681 976109470 976233346 376522161 469701795 91549124 463154135 227594303 788422889 137022076 602890916 59673801 134432777 61223542 444385972 419617877 673950879 929294655 936651425 387079594 923476400 515152854 902210704 458762855 922634064 150469662 965369453 300121768 467911797 89822357 364738438 919039298 943857947 14251704 554298052 489395995 507083678 879468089 950723638 209849135 646395679 856685330 916320597 736579826 954060504 954315328 992449132 739321389 757518436 518065138 844112221 245541172 444522321 287117111 423076759 189578974 385732152 270836187 630730076 826196351 856872109 147792092 490943803 807221238 827024776 463492784 891526199 975801927 984037838 420936653 902425892 860598764 958337969 270129949 724567766 763918007 787563561 695233013 742980464 18449370 186775341 354477520 425034525 764280810 803578281 492531053 785607046 665661793 721003980 234802934 310740158 777194858 819236046 798258540 980012618 191262685 394882615 615218741 740203160 449218023 725942562 176827089 472467541 675672484 871111968 312031742 566557289 157607861 610976276 982840677 985125201 202485675 641802327 137424507 917027778 698217317 973368456 457882452 860271694 113266120 979731895 905241113 948822503 850579995 855217120 281330080 899031756 868928663 931206203 418019468 637914140 763868193 923120395 496953705 694626062 456295211 609373448 791820568 793186913 952290100 956086348 32937163 466898323 264932856 650893984 231214293 315475983 933074572 947065490 97424741 284652102 940175363 990993358 131553125 771813922 939572029 948674622 734088118 994937113 195828174 707730788 882672458 901276032 423318820 575819259 776693105 841789240 29693920 587252048 282005215 928685443 716046644 812569416 559198915 732134722 739331741 956722278 220314007 477340779 936805824 998814803 477405806 675202102 536096049 567434640 92627503 579437634 183383867 604216068 277912990 699123296 929849229 972551546 997727706 999577592 620673969 664123475 534606026 796031042 615604070 635439437 430957023 963072236 999613282 999624441 225597686 408644225 133215666 737665455 607419956 670826816 238459146 471360001 785851059 983818604 663553749 767473072 801679001 944628761 368631067 591617403 620722409 930813729 129890252 203474865 52553697 642940336 219864697 515570223 130601877 473389769 351718390 636990159 77596650 496503561 281967674 436689420 245844505 713708212 204796120 551440949 653618556 805444247 829576829 876097188 712463127 856511520 882518137 915884795 591444677 961999328 639335316 962610923 457467888 890942498 658398680 776720668 763846348 893998148 489376696 585122762 64998728 248969030 271412649 524905907 688388276 908868246 912656432 941362916 108229801 991277870 325629554 734182774 288481583 696790130 434505637 984542939 452394350 818039505 510167876 916738207 98013910 413257804 452603850 694194335 671082934 832378784 985278797 986235211 654681321 681936420 545194649 968310474 420889107 596163255 582136705 813014918 264714794 607608526 444762278 522673482 342937121 406221368 105801531 941413297 919437307 982476781 117290460 643392343 776270922 804458670 257697762 323587973 396176211 425662822 426454955 835006612 495211153 519788361 522150863 944511442 768386502 800461269 679321491 857648653 743303735 773652746 191914822 360708482 48380198 368606691 585969105 733276357 718307578 933033286 175907336 318010407 469720562 867667783 688326485 837372842 230405105 452793507 678579459 838935728 957197353 965112593 30593628 476360621 823441115 931996083 399117454 614617901 350295969 606981854 290355444 417766359 407826818 555402219 717437934 913697535 640664840 923323412 786157703 828864219 891591477 954712767 317647912 716547683 174165472 532073175 215473865 696389347 838460467 907701367 523087275 990623463 865786000 916222107 530173336 938069545 870311732 987888627 852120898 884089325 28572443 867992557 169646428 196721431 185042437 903681733 792182941 894322228 381281218 612397474 64331319 159824207 592415258 630550850 203008837 848703323 883583299 929508201 987355224 990211945 900104217 924607741 501939438 894644486 891552837 938656925 257409890 848876749 666322447 809650393 453934294 708014367 152700663 629664794 623554990 702069291 463127484 903407991 267642968 421830785 192444058 291644724 612053250 786863504 134502921 605491460 452707561 784011817 684250078 733807373 147297244 734160194 703913089 930752431 921189818 942054984 474794373 636709079 113997505 203594587 247512228 823715255 218652846 611531868 156994440 500780602 478928533 957639393 945017424 963145427 614317508 886051526 894020763 969916519 362059245 898708188 664080778 908548481 534154233 580605495 314124082 956051183 71713166 645145259 307633960 599705134 797189434 803134656 220555990 305773518 564752105 858900766 239322579 720122359 197018985 569411175 493716993 673726501 650973930 654316262 550961789 693873600 814119843 994008839 745996229 899668668 799252001 877798863 990356754 998872953 860440685 985264796 985050668 998898382 949994553 980207131 491402132 806008260 443084569 954746492 929297451 955053295 255204147 378942250 505564265 642438276 996859896 997768874 7470311 966754962 956269042 987073578 565112718 989256806 814287191 916116580 166247004 223511504 452437143 474436303 758624521 898249149 595531819 880694394 78601924 718731796 318035397 424533549 408456035 695206669 561549661 678502299 748553521 962004477 31294256 729846354 320992348 746820417 133427744 243608862 391538500 961404608 972834681 997750377 426906637 743822205 569016532 863684484 817101470 972339989 443388806 762529523 548413044 730589966 432288892 609734632 241844722 275673966 84444655 868960486 119376789 437904898 301294128 379193990 736575726 915578857 687817152 717651822 75915356 358355107 376333416 736216858 785206156 831791641 381722098 524134151 871543967 967600229 477886763 840817240 69271478 743078292 347198871 671540575 477170326 499913767 957484907 957560646 510748899 838211675 33309155 132256464 692071336 906183494 939746067 946694846 229096061 469261332 370041351 776593806 816207226 889423336 790562976 886529951 132823092 989480607 989950899 990329173 791327051 810199268 770114035 950156554 353431637 745443490 362853966 887338643 850799186 876363698 210256170 355636330 823166172 967559384 20792452 966549397 422939493 821103848 681326312 756953934 912586767 926428440 704489738 708106242 873839729 973048306 22042030 546336864 533205666 786605368 345962946 777188289 894344745 963656467 888868590 999160764 368103533 899017748 32008358 988948110 580350969 943578484 819075216 859607049 315813805 738910286 473177569 495512898 577603031 849216775 286055680 559106962 973221040 991747602 706012892 935580239 879951316 944697958 529770628 872171348 441278401 651859266 675733834 869978231 346303156 392773618 165898317 220115429 585522600 759485430 198348803 740015329 673750134 760447465 927017522 935538441 686436056 735597349 351640109 548454188 52891592 319036245 643818225 677412762 583938482 594527383 987699440 991456025 405813094 789617671 66642978 501308064 462269205 637506746 320831000 436270387 692060406 872610017 690741681 786652949 658380914 734952934 394203619 855217643 167792152 886889570 399567403 626924092 829202952 916896445 94251562 224526107 14550800 950056793 823103647 942461949 212440943 376314247 210590095 873009016 274639484 729177163 55101258 61938912 660665376 972799084 506037138 590577849 676083282 676626313 39580270 288887348 625206047 984385413 75681580 964785310 476169248 999864676 366703175 941603102 488078175 507301413 488967386 529921814 979583293 995953783 141915956 515816245 315923640 534400649 578609667 584454202 95956285 298207656 91191637 767375083 420470969 911967438 420597978 479478317 522491539 989256997 539377500 938640253 936026828 969480009 423582898 966891054 712905710 990236747 514431135 840707002 645172493 820707767 489217719 559023387 633093274 842114701 407232976 582341261 925538469 934140940 443252586 617306078 170380911 392391931 560219195 715022324 903861644 967327104 782183162 960569996 936260406 949892865 573145850 831980971 812178044 835745392 693714571 833810413 911065484 930451730 220095722 917262655 807344677 912166984 181408121 532963343 937113339 996983028 163431114 331645363 725831336 982534508 494485828 742598035 801524070 939928681 173479677 470716785 986567547 988707474 45834174 226941439 783616117 797588961 954475442 999531921 583065902 782889650 882194532 952522468 857070379 953668546 897135612 983973623 619554533 790610898 634374006 670831072 111575832 156010302 672970658 946995278 381017233 720207003 530609083 870863113 449974093 556838982 449870355 547051693 93955098 322578503 839991737 862911353 9857635 835515905 752827435 958733668 832974918 911194122 657191509 750635729 129521291 677125279 255401012 757016870 115697462 304364598 810629308 869878835 463668826 876878522 146081108 249241925 436825192 719197993 963910222 985091469 762776461 853979109 424120288 794765658 791730471 998550866 612577441 690812978 927001956 975481910 346937343 542577627 230529659 330873847 137732452 395537764 283649223 932145826 127173433 990899584 932816719 971681264 721852900 774907243 615916648 687177351 680667076 933720292 920166932 941712248 377610884 421944720 89428842 648966742 464092438 648292131 261485199 421492649 458833615 564160975 918749235 942207553 497060697 979646389 909775717 998373309 690263922 777597105 922808628 950056228 744559648 793064526 133242150 350061672 991845419 992324164 65465871 405317353 675188574 756163456 356935535 667851360 149351771 880510598 923483592 964813375 270258005 852993765 713030726 767335853 60101583 444982638 27413938 729017017 925640225 953513482 332263634 530733991 490702128 664592834 388843656 506603317 493831462 709970747 257042448 991298061 423763961 885800857 244707586 539023357 72415101 309395191 952583722 957359124 89024080 763147191 73422871 255707796 669047000 763062230 786459258 929195549 283180386 555939053 719489959 756907621 490573032 676519797 633003966 698782009 949981432 950068689 430902173 668014855 829258837 866334475 329081908 330952054 451170724 756353957 432632909 879073830 395136508 761875408 402482543 568273643 235858822 521008525 696782612 879583907 294686252 832811574 903286636 984069210 597394993 751318731 879608631 977986301 439524285 570940293 621979947 957518373 748097328 860240195 43386537 608051367 132640013 766027803 120954554 465672662 319795992 514097876 652996301 964833266 8726249 708740729 507665148 831833353 649245339 961537670 109733064 669166182 621934246 969166621 965830198 989473483 730126557 839266550 143559317 581176186 693197879 722839936 215506646 461025960 701316716 978732430 817363649 932154350 151927403 202878407 711114920 713420740 624426294 669834800 426808063 640179077 49244313 449617338 283765546 923763806 182770864 387080461 424197279 842289026 906222868 953863609 727831128 860714563 362984790 674103585 814193263 872588650 285700783 874041515 805435518 971476411 996412478 998122015 15133817 662138566 478484647 700054656 237554927 851344483 316349659 852376949 215417914 797101338 415838101 416845418 618899356 918261278 903324705 903852766 760720694 910513368 289499887 648286070 886464870 995373689 440207165 821895155 670391922 814647475 91471132 757044068 967835573 971511514 531183519 808181293 247337881 464592682 861225405 994622146 974111105 997289575 2070766 823293410 534512262 817183506 460257206 702007231 148713199 341485571 332267808 535931346 495621419 504950330 243649910 464749285 487300192 800731964 665679795 955857958 826443044 876335304 799589531 887209046 965985074 990871375 894946151 990395830 558855355 907253436 283650786 967168662 72720908 438012670 638186841 694701492 267549004 297673853 170137477 901547174 458829440 866434764 707877980 716658164 293405118 739822896 84572492 769376906 347068140 882951830 385341454 916985294 616366399 716549824 270075464 504977480 300735309 906432202 477169066 775205084 176922466 567115668 50937575 458617870 352989365 600178678 428817507 803955628 646252687 665316068 31642233 932535696 954911078 975759651 280803964 649833303 651234142 828436075 137812874 793106192 151334547 173992136 545854418 673118984 516874899 555053718 459670109 984231024 580017477 982523097 540468197 736828077 384928158 730098321 500219233 951901263 688936927 983587758 675795612 683575980 266871032 988018238 816781369 983641716 667972576 743267075 677687345 855071270 154919375 940590836 947652632 960328263 597957346 790825902 733287937 752294130 983842430 994567311 281333680 449721444 620471904 814705956 487853392 735944125 171314243 456671682 736799073 907201612 485259813 552887668 777071392 787411951 184128543 952832558 758485217 957795754 913863866 932768294 541133777 746492771 818320839 828535179 878580543 895252677 71211190 93736151 481123522 816107717 547250492 579577070 92260021 849846548 871135558 977782137 464251318 655401561 234793056 430980272 651453735 969198413 853834860 918862878 389014837 759809444 931283003 966174912 102514319 352806849 97463810 419495380 648919720 658349093 966136267 970553973 117275842 606080006 637336821 799035228 729427584 821599871 165468918 336113869 229673167 776559891 351954164 546781260 454347445 646148743 408335816 635582087 472714248 960251761 829797753 973828929 723732197 927806905 233485941 488190154 610453533 812562138 9602991 503127496 360105997 903736125 939811772 987366452 470696325 569741368 448222048 882202184 652662599 749859555 397355587 412116729 627279913 670761105 849333514 986476054 817850253 858903028 873115502 954588500 333244419 795409714 324126096 387254395 30054142 155404496 923594544 933398329 659057166 694970325 175874971 933314344 738865225 752833446 49516564 808548348 959959340 981218063 255544305 434957512 602590813 855326314 83895259 887127113 195270469 327815597 347055895 685956513 489607217 667521873 390743553 537995104 403506272 484404476 123470439 636293947 235275017 817767070 266393806 869912576 10387391 542962046 227952723 234453582 361966940 780314422 32767567 318101350 248471808 425607370 848997186 989784138 244287019 638371232 90029823 559627905 939507055 977159215 598560301 783488736 110761521 709925749 63900463 548116098 272711156 381460826 878365811 925926430 475662550 744044575 498072797 637363532 356243977 872699683 982434702 991289717 490313560 545232114 825496990 905869190 5996268 411344925 946300256 976719385 949847842 997173445 321628774 358647166 456375447 500171595 365862896 779574540 955468404 965143110 232035094 820681221 98446077 792801639 574831466 960109317 430707442 545241540 988435362 995596405 588774488 590470595 127698281 447034446 448542767 671277795 710369821 891590928 260839345 946530830 27569746 868356840 198605251 595170802 660405814 889713290 756198727 756211852 287274508 612472908 837777474 855937198 780050556 913207644 51373346 115034652 369184666 983388084 745734708 894428117 907068838 979843811 852971398 935622445 474113762 900087177 884222722 887459904 529867166 893310887 225128222 382373805 163420301 865590584 792237849 883478086 701326366 867255508 893934336 980655840 79292123 194551214 504998512 814832660 174882549 682442090 891813212 906481025 57342989 636789455 729384696 869911509 976067235 978807206 801584806 982029182 783770796 821783143 43854779 881448298 668982631 754628312 562492580 670915417 134643251 419246428 847198112 940646046 843854418 931764398 622450237 825501140 370009540 807497161 613213998 828564350 767388483 779720566 981971262 992148659 172739336 848914407 595253469 631657098 827672507 981061029 596738834 820990763 327355850 806799376 958347989 996708268 311852196 468725481 505011120 705810738 100737827 439493693 803139825 851836941 605175636 755489130 685959678 788651737 654624558 766528936 542534895 624204238 750297552 767377013 851681450 960771637 733812135 971370634 217059500 930204930 151815973 994989392 17009633 647925048 284913131 888788438 478892232 767371287 430995590 720594324 97322256 633750736 873356637 995407428 700375842 710591221 356137199 544249506 796048499 897925257 230542444 271982707 826740616 840969921 679963851 947168168 908855389 967567117 550186643 696751339 210606996 370311417 884843455 885565014 300826757 967261611 197382030 604480521 389037043 526550765 750855741 850366186 247650383 989031114 449342016 567600983 781134729 987506437 421195341 616815931 237416711 871756919 45304225 441594128 274847553 473086587 427298279 556373878 668526032 897309118 784593769 829377603 860819200 980160709 879726021 917187402 931369848 976587486 943755556 981171682 463515555 999354634 781067816 925988362 709103340 781280873 37851250 725368606 404464658 707137449 874474488 994070240 702817345 940685194 66943462 692277849 297353972 453484009 497761781 829328974 155909564 854519359 852738540 881221535 129798874 629015290 935209136 995737893 37427208 471191389 761574548 880307512 371967084 885032357 832041881 917381398 730898591 764473875 321130311 663319082 105071638 787915926 56719945 462185122 495651589 649239661 292443813 293798093 559752711 757108414 415246208 502104277 31623560 110476533 859479952 957656267 462138803 609571272 464429844 732998834 5734751 892729429 424571515 684680361 838876640 849760957 402593317 689091281 140916909 242061339 933505960 942426216 773843999 805628590 230255601 974050341 322426235 376560371 498741587 539022092 318287316 616708263 773872521 931726737 419889910 801356360 605383098 644277204 172534894 626977085 710382930 936234814 161219481 464665700 356572396 630640224 550026397 974884770 501858579 699608074 22545107 201673759 962103295 970273398 958835717 975208119 692377910 731546819 278635749 993576830 267345953 633968081 965484166 968824828 590750342 888042527 980368902 982759973 883145547 925318710 860612646 915774420 205988329 455676242 939294398 960756506 755133397 824026973 445241822 706822765 442882806 576140624 463458214 619409848 458526919 898070687 206104125 418348072 578320957 907155878 722806190 969009107 762843946 930803802 933266177 994666301 530358265 773300119 926741554 994215930 704046856 756022455 417539697 842014200 650524761 959327793 110796645 167530481 254036601 492568827 921317117 943327876 758605327 774788226 274782307 952508799 554483286 858924381 574645671 764270919 473626972 926800370 380453375 671559443 741872153 853556505 547121129 553089413 242128789 508204863 714569637 785203483 365547621 991857179 411818489 707252851 74138238 877033367 824120597 827131125 303101809 496049385 184706151 288007156 689963982 729354241 539182213 881743044 880051109 911966267 487921727 955305056 117116409 158381683 38846940 670635707 996206964 999208403 907993785 964046639 972664304 981170975 817534738 975576790 315972218 468968069 178705436 269399107 793269555 925689371 785020848 842544510 947476360 979915226 9536182 134345132 187376388 804716245 744142794 767699800 713665884 979174642 174698169 883653374 240738002 516436987 180164105 619588791 268201227 408663381 979064242 999414903 715737118 947434209 175311146 905030712 126572380 254422869 646367792 741711133 325883664 494739623 703561639 945894499 11357472 725117887 625236422 859311499 885126102 991031138 637416904 657455590 447002785 691674304 525849593 805154786 898705312 900343470 404409795 445660663 85175627 938193993 296892880 868913383 646603537 851646880 731740339 868574110 876920851 898403400 800324660 821731034 271576346 715813930 213175463 253162366 183868750 351062127 117306974 635202782 259302043 409822838 608927672 982714558 552858896 640590022 720318537 756437257 852022315 889640570 951937356 959260858 137206323 222701913 306160531 559451384 802182436 916751105 178077992 325275351 766770527 937797097 736931206 995149695 179461816 252082594 747536599 910695635 443777666 632741657 386230051 720676692 514212683 935855604 392779166 552000831 298765588 577764368 244939882 323902374 995867440 996885699 520727297 732336708 927916243 942500141 440121555 871411432 805010850 836417136 894975855 905640656 648219284 662214383 612284346 637152515 74852100 89162622 454104632 741319459 270787128 294986548 399965696 853944614 644948542 810953203 833941252 835313106 243589600 468643214 837576687 955033627 958572579 974052691 773165107 931773677 601300167 649011962 18245040 684512618 490174003 665555645 609321299 806452283 773494766 849653928 115546672 654734012 885794824 955511671 592265282 629647533 53553618 778579760 379134165 948064482 569219158 651531028 236032563 599257451 171647836 504608382 928818220 929506873 214117447 858635928 107369061 455719527 678744124 934174436 760765102 837057382 212517917 778718445 662318351 813831435 462227254 618288242 642001932 978362301 824456478 894197556 832778264 943994420 989005370 994487108 973930846 988211454 666014019 964780008 31289427 691032981 778143466 896021956 187852034 623048294 663006777 878628319 193910655 271292217 95108387 896809899 920235437 987707175 635974885 798182224 772569304 813950537 875563806 965508958 584832094 596046091 756055832 931147448 555339042 573196201 958185645 962285265 791857673 919037661 568892079 932442249 874110631 985535382 169720913 748567242 260696033 321085107 926685807 941217664 511814175 829463183 143401601 970633298 737983328 970039948 53626713 961213841 519135660 977174398 659614710 759223048 148148493 767528073 823175524 900631424 379469251 449647516 437600665 481217353 648783699 972861536 171898704 898239207 120758748 968500989 798252729 870363496 484041538 598630294 325864732 997209440 167744916 867816109 192393655 396884603 202525127 558098943 68988962 619401288 512538320 524859163 36507838 128422315 98640250 367277741 489012120 900496788 986155316 991737653 625914222 693653576 832178655 847544002 942593482 950928677 927227932 984815821 643958228 798936758 740557985 809457195 398504065 773716791 750912572 997419346 356372649 979732279 625479662 899624434 645401707 734789934 184510528 601254275 511844411 759258614 983962255 994444250 21456085 193549249 974377594 980509984 411989156 604070697 519212461 588102764 875349482 886020425 988081515 992258651 918593124 997417925 570653416 743772545 61247421 135782577 395650270 407059368 940640479 983036010 232238563 741918347 596574674 656592387 531441675 698427528 660668617 699184410 488110894 655073015 780968824 959454046 685318121 871942871 858839237 894094252 721430907 868274142 433066070 973611110 696763281 791999697 371661980 988651719 332277704 436513511 849670671 882809246 275641666 896258029 408916926 834445804 473691543 950391413 461339288 648666384 955232789 985680832 708532933 984892372 522748353 536309316 676897753 880808971 171749577 836025419 44390560 722523194 890980274 968429369 523661941 568794192 171564838 943954515 611681135 772635721 3611471 61832351 352333366 952072691 256390652 812130306 460546120 900944253 437598673 629165098 193824907 826630555 770274643 963927583 719489030 737245800 155582542 200336021 214848802 956989847 911082209 968687284 231263255 890387929 176447096 783621611 865438341 912965664 786305250 793949699 730458592 915385930 306642303 526146062 635385890 830405289 49471953 867948709 713919289 882703948 136469869 542940830 822210801 994226511 473097456 505381753 786614340 869768087 922203618 950974861 103808446 401799899 451209276 768870596 499167314 949989949 598163846 642064404 693781670 973166783 150299510 475498370 120164542 289329865 153986181 668737766 51329425 852415438 573147628 803937642 730048823 919790448 265081628 358367264 241716716 438580226 533243263 670850186 314310035 409864709 894738704 942981777 497984366 523649416 537455573 664512304 924597394 954535178 114639912 723764134 894893329 943258682 646765532 836153124 402749715 586931206 540905716 903723107 669305458 794124541 168052862 211458133 45505961 837940585 465056975 783364682 637238689 875127723 103538997 137723204 293621438 939947140 579244953 766288565 361465064 704397079 409427296 425580619 81046156 790987129 538576158 592322383 225068133 830015995 1909730 228671116 541796452 982464902 936823756 953372203 690704332 734337625 687283023 705292689 778826874 935490913 92820757 753744194 833334166 872971547 44151552 362282970 140305181 392290934 389286148 567504242 501868579 937004415 261607672 597401910 369542261 422958766 754049969 836775180 223515305 912526443 501365823 708377642 415685982 871694981 334057101 430034098 745435041 949498472 595622769 823454420 537783911 881172608 755748078 853765589 817954009 938065090 985398024 990782672 266552326 423938224 478118006 853058085 231463997 399979843 407703930 751372082 622543878 960460709 337287539 422028016 999516383 999516794 761786825 897331443 596615917 963523605 881813396 935131630 576289737 960857354 687457402 744636131 793771097 827761087 652186329 760392059 416980392 539071713 998428943 999091783 732473924 809519936 253524068 422795118 67399436 984700717 662128636 746045861 120647526 790934586 273354651 759395300 685438035 963028329 666807379 668462386 263599732 453460345 35488094 197499885 186689127 249332536 615538965 989426667 399541131 998104737 255903656 365512220 318316970 595196970 737145708 794897229 122359653 304556949 640100179 713006790 808599927 929158526 798775843 996361973 430678950 444757818 556411947 875547271 100419277 532180682 563299724 588967447 352257523 483693501 923786527 959680866 97714398 455554280 121801753 180366761 271523565 771096863 684745645 896365903 70733723 692480638 402407932 812988469 825623656 995097711 72243550 79273555 374320733 704986609 911055643 977203621 800210073 813327715 782748724 837020033 749218015 866276346 955051515 984453399 820773420 845775810 935300814 988329374 883375886 921540811 507054332 866271224 612117445 737152282 688771981 983915005 166539750 952409255 382710294 832189159 486168178 994210018 112050617 717604601 564176910 872225271 660126425 741563627 19225128 922072591 894058606 971371804 786688726 962258075 969290441 997784988 917331583 988239368 545264209 821670088 500024541 713261603 272477756 805201835 786696249 814909887 621985146 954881413 707695660 978691814 641321578 952949609 15405222 591799175 993789360 994620457 176086945 611644726 439896370 776812345 286933233 776570586 829090525 870429697 503230821 786229106 454967646 699218300 734792324 822079364 203646506 449012407 482510468 964184660 905079240 941221327 135071410 375593122 745217712 753697859 487790711 501486889 203189498 628081205 866574725 898971080 656455543 927134966 268153557 494017238 957405889 965741999 990807573 993142637 117808986 439665333 693737940 848878188 718324594 950175053 497180335 650304120 218551538 331184311 773201957 815281102 761484721 924539308 504314974 802449895 371781442 882051820 688513662 714111215 552372757 654643359 24408192 849255949 772868493 929968982 803254414 999597076 210588635 219838381 367749575 889099365 699451649 703273265 862115060 929688837 278169803 832571588 961930428 976913554 158579472 704491515 765379310 783643120 295533703 359911082 862616415 932189435 299286903 747122359 869672673 914916268 773217479 785693823 376649078 423224954 732714696 863106940 787564005 987373423 755317479 819187419 41458995 993086074 335055325 385786233 349399622 399813672 984799955 996107327 634393045 855895370 892866603 945540324 101096869 612416179 675254362 762600511 655394524 972498898 811471653 962453219 204760599 409490172 612215035 682221094 40722891 871277329 583679380 995700743 231578118 564591180 270322832 750272871 382446148 863522995 845698236 946040207 727777369 969029558 660691284 748885793 466123246 732063921 122952024 788694810 568467950 742499546 67941334 331338718 827486245 965072294 724820810 884310750 75840646 760788582 828825445 904804670 713367029 976218622 314463500 518447759 90881485 233159256 806010463 998683441 346487825 495812864 634700321 782889822 255997111 893194563 455253796 845673108 222669680 855512987 405736579 696933172 371633164 680660215 755810687 859247356 918722476 977044465 744273174 904943189 724421528 965054009 537972920 725289859 550417530 929306002 502899729 923434814 578023078 651146309 261513318 627677253 189392859 557559408 809045315 963674975 893690541 919673252 992107577 998063983 343264068 811671466 882241397 985662803 231916020 868937472 911527210 980764874 887728028 908741685 658680378 879249411 45550807 458957627 32018608 732023728 941706057 961306892 910312965 992347938 515480894 849107485 383067826 423765672 43658409 73251898 747334301 963451230 196808624 653818461 259760737 324685207 839569672 873436628 763305022 901027119 426002480 644160122 932331006 990119665 48626438 255492006 67415429 338892674 180320549 981315084 307051209 836910500 979734591 987191666 580580903 869122697 890424521 918033895 418176978 562535894 163592642 421834721 398312390 725234530 453733584 907909022 83904431 646456128 705703296 960165870 367233336 754629762 253557378 510581500 918151623 990361158 437652606 903182276 411835000 797928006 694589634 856737905 225311741 701077587 130149797 355472867 718910844 779383594 799794143 998409430 70054697 173674427 440967832 516027425 42712098 86622276 897758389 965518946 318386989 711690656 345100664 701384626 884715874 983719094 229576947 286114386 224439552 606582592 807193749 844697131 475610981 850196573 224788869 724521547 530484661 908074391 98925277 904918136 770438701 975053105 809956871 996210468 892570087 977348679 528388897 996120716 345091878 416185963 387797256 632388183 276811427 807064681 516033461 722512437 776598152 912193548 240429580 337041391 284265500 488188664 489581348 788710779 819897246 992998298 996898626 999943916 849045563 967442627 549913662 937243840 509894433 644767907 173114570 861849608 704054001 883153850 135550859 652260316 492920410 971356790 411732682 537585966 462903414 914565192 917780564 924455950 379165904 890551847 997223300 999801131 416284730 849537868 647091972 928559793 79089030 305465406 940172604 972206480 937677432 976866680 562485942 583532477 940482170 970550581 21397793 327574000 156773793 450557081 829085868 904715218 942543300 970402808 527098324 888526192 214818284 322801799 161963372 300690529 413406366 977694791 783324081 961090866 930745670 973597010 68897939 803293305 198918347 677001516 789724078 864927210 28165305 821781666 348790118 618127703 904430507 963577500 992168965 994847532 635404461 776655267 245880655 872193612 97353309 485150392 173959868 707245595 972186520 982093125 929767169 971897298 800327681 858164215 80707046 909896914 409913436 895641540 975116526 980352246 395086482 668522935 324994377 793968093 741082783 869480119 296545826 951488050 253391186 295026019 674265667 820249366 269793809 695817820 820546792 848165805 510427792 812691469 345445045 829439355 433015200 714829414 958365418 964367392 373463456 811739854 262436431 445718582 293068202 346112727 580597723 950168240 59899836 830581541 170721370 295594278 901190717 962786302 87579658 109652767 202385061 571802741 442433757 755927179 952645268 981046925 899083842 947339860 955546145 982628564 558249081 660881272 436352726 728493363 523560244 691234807 174891086 920309712 502022596 901500457 623303211 711542913 916990196 984527824 727503121 810109661 250416942 988302740 906243724 965284036 802982958 832278536 37074194 907740623 467179880 549690957 611304592 649983856 105957880 635651384 32190908 495555495 200629722 989163293 668350035 738663358 144323199 211343197 692163538 771268814 489505036 491682745 357783690 634802880 305400190 915964652 568226158 697787988 911996069 928206735 693208176 967457002 641557671 907108684 385502634 619263314 509827224 520627545 849413522 935497379 991424111 996583182 130730459 632685260 31003355 102887221 954559231 991384038 12278380 333487668 176444685 326106794 704465551 989093222 18234379 600665525 211849415 785567081 791760638 817983545 583287305 658246369 286142648 890592926 989132858 991350604 356349342 483991833 485872537 828697074 539514646 941216282 340916487 363081827 459389384 595743372 487041141 902994157 575347212 861531539 871249405 915820837 13916411 92453695 190142735 535788914 551644857 613061776 528977568 639017324 506882725 554176269 53896282 654220052 282405845 830801034 622990211 705122241 227669164 359938495 811553569 821977531 373785712 393302319 509060109 680091835 649079810 763889527 322061957 949112187 251061201 505121775 104792639 783174917 376399773 959970620 311847559 676552050 573787013 968651183 695872302 932605381 957501200 972073610 47735239 89869701 170504215 580014680 170465600 869419989 930980095 964694525 815831713 927420681 577433586 822542881 929516531 953540269 500198978 904660394 81909299 240670061 482683411 756617367 220607866 645295199 907853343 977465466 356795107 643920567 227506281 495480709 623176249 900440050 141483877 960819240 841366503 974530508 818866780 941560649 454653756 739919947 956137483 965319622 666908179 877802398 405569166 803834467 213456206 501326841 126242751 927125541 360692928 652541379 827366287 857229882 273696147 771450038 180226711 964441688 816191290 875447085 727225952 979578226 877580766 920345833 178659880 348555839 744390827 835488950 24389962 495933467 953983273 993989663 993216916 994438189 717418935 724462948 807915374 952043258 64852988 856694371 828803125 898143259 475258560 505956008 299524316 778855515 161023226 676608299 616285488 980353998 628592380 662017422 230726508 237390714 913551612 980845879 641553145 961557772 216556206 964550184 865343030 906137883 930794366 941960946 882659802 943077330 476289879 853449569 772953768 963695564 302866750 308213350 317936326 938053122 889796609 943808746 789103672 907958689 317859402 544380621 726546592 915893618 776583590 927299946 279139321 822050448 878018601 898451383 987866960 989476753 860325165 976143509 776544066 838543062 905937857 940822780 835884190 896714354 725224562 787241773 973202730 987171926 849572795 893004648 90640626 909545365 107459237 208400482 997459197 998177450 48967544 926034508 906546332 967776098 13403284 652686343 743899109 885176431 792709491 833015421 283723152 510443170 313247856 906021988 827184137 877295305 88099169 348013860 937761096 947787924 260518194 347091768 579704818 910660389 467433271 643139041 813420444 967148203 745899683 993567640 643765168 806582318 860517356 900825233 949799484 956103687 812496958 982716519 210065122 360059849 636255288 838830471 525952577 797830292 517003113 785000328 958732105 979847132 599960903 709220941 946039276 957015050 520325722 533785700 323588790 918158891 697781737 942998754 342527747 351790530 740615258 933489014 536450763 669087284 246950780 717693977 9925356 599085783 138299085 303214041 770364207 872113820 158783653 452939897 656275550 704609311 854651769 892443612 554710412 935964655 622623341 660821748 504867570 756300979 804154683 962579966 263552311 578778699 565695190 785620627 543556245 912545663 642957587 983643377 670175788 878320492 967547969 983337422 314363573 520037778 807723374 838994466 247806710 718633661 330315729 945567589 849231627 851021540 889516395 996403944 778408683 852011597 402981210 729239905 602431111 709097867 93813144 502410724 721336267 969492499 3170298 490857251 293886513 697841571 201379024 568430777 959512493 964727047 474973974 612027798 76017751 894036895 146196780 799368035 996448040 998045549 125969008 195490705 329516163 485300775 113985157 319050342 98349270 233907424 800340006 972218259 212195773 514806311 92453306 528632066 566772790 735563165 864368819 868567219 13829150 397497113 813661237 879837272 559283574 870298921 462708193 960580044 819393560 951102988 617631509 864324691 981575704 994784927 184506492 346450286 486204406 655461952 267955693 684531683 659592453 831905115 13461362 806689574 207795706 511010995 980322354 999483409 262690916 394663143 629517237 949188011 492649237 655846345 95744451 312630323 205373364 678346970 124149772 798702378 163738423 823802261 771612137 950135337 168816478 621132375 124538426 242034279 728623332 958950476 427200928 874048382 330909874 886836102 739636713 784150610 596791415 749891524 85845134 853866334 945429256 994646291 86224531 531099431 700018544 897915930 113888815 707553612 683889306 947449633 692173649 740230022 285818481 712217442 633352037 822597713 650519654 834339331 944087889 947761468 274113969 477186959 334197366 974859511 266375570 870668462 909528891 972700726 485910843 923689171 434443508 581572229 391205826 872797947 711948768 964027742 282050774 772462725 109627109 564793118 454678069 496156742 751973162 900813481 219166468 273574193 67683076 937254313 320234561 747701359 496178814 769534293 922621948 954585137 410113147 795712639 841072186 978588509 683292305 960528581 170134867 281560096 544156279 737243440 908466226 952307311 979676692 999599206 314539482 854945008 368500221 422606191 327383326 620090936 598949816 705010406 235253277 873292111 168302591 796461660 144065345 758097214 862000251 875815797 161407533 791166279 468524606 977644167 662593931 829723564 600393670 675856305 270315392 580104621 749428562 930278520 53313639 675937564 259446710 351856384 110825735 827069334 141104307 771452401 615622685 790845961 895009895 979841227 473161346 528123237 588268886 690038305 673817631 729445763 596557593 837277978 30531561 395871072 262146283 449281340 732284961 925600583 541649280 906424565 128169311 832717391 126720035 386683839 743973970 847391897 794685535 899897079 54875417 343681215 244549766 715728196 195954040 558831811 567235973 813429984 947264131 985656594 816905569 916367061 871883759 961871080 734959265 807416840 84858615 372931510 527463591 771526521 338614002 432997415 85743952 344966007 974584687 997585933 97169309 245034736 29036705 161027053 842593741 931484849 516121718 972116871 689639890 848453860 546060994 735331893 630126626 807940488 520290512 979841913 621628276 772522666 877669724 976708005 452166940 721577103 267661017 441936711 642487020 721885618 260774375 268242257 642392900 663616269 521292660 775195511 121044401 670888514 969404440 982477930 964786685 976907282 137902942 533566123 38736567 742255513 176786402 276792683 16021641 249979403 224759130 280906629 399760055 415801747 401129778 438976587 443251394 535697369 454411836 736989705 733382885 855980856 217051801 281434898 168110758 947007101 145221885 365870874 694239379 870386219 872011378 887638293 162405301 230741962 77949320 593034363 673154587 688785368 128273989 783175293 549934049 693661803 629301239 768472030 297156357 879006248 89707702 214837016 152924290 600074731 664095668 816278087 378381673 758673191 237046100 799141804 86029011 410519876 330776480 657450718 80335035 175804318 460013413 861326166 781751998 907592807 204878268 307414572 559164940 962565850 271452458 966193199 846467961 987756852 849236841 859423680 603634737 734998058 595159942 752400485 961849485 987267504 372691944 866483811 706811261 819294373 767326871 928284055 56237673 753562172 544137791 562011707 753859273 992123631 12463533 947994253 207728467 378231610 204328111 619681256 607765369 929207109 77562901 806721955 848640348 972507394 858167323 970448171 154879623 239011367 103283568 868112654 909625148 998801900 662119501 787059793 313721372 877649185 6709054 945548243 492296283 934185777 709357621 740398199 155516623 606346312 574076364 583337840 891601344 980508300 124355059 929917148 589236660 877893552 634843923 905164649 575837767 861063835 420993315 618709978 873037937 971675706 538284687 920095361 199480998 700590869 382222277 938636868 867091282 966516670 359431998 369199984 533584340 932439651 78112457 216649087 824361299 851965088 204602455 834046149 898133440 984357069 562095259 668128798 140378198 301534330 686108448 902101567 105031589 553881070 960186944 994607565 50990574 195460025 472194264 743673713 108089439 366181440 594371660 827022135 42444950 936172417 42999142 205729828 915547072 954293818 510294110 898111128 71285813 293406523 226955884 481307878 509740996 839735911 569228924 622981383 342371395 522830395 952801626 958479893 306990279 335520843 506398887 862560806 815367812 828174587 524240083 847511340 461300254 603347783 377080337 778164460 777144212 835784950 835924310 926825307 438159912 911905460 683229534 775637313 921807263 998726640 852210097 937916812 691963135 731378104 649111210 900053930 548119941 816434828 795576103 886380807 779760821 906799947 857620908 998392305 317175061 844441523 167920209 270805185 349066052 795610266 928352936 958464174 285425134 700003882 64744733 631603513 374545581 848118387 160916251 389316849 473871794 562992387 851626309 939766965 195690191 781721652 301681936 802689616 151671073 838248768 145757483 761327111 337522558 777425029 833217933 957247351 826096185 981479548 901969785 936315166 747878548 983661613 421821913 509001247 1017718 662520962 437141566 541309485 888487695 938689658 166798614 838076592 184841176 610679162 90961483 830205065 673175278 828326979 366834681 970543451 914433295 924222060 74335611 804026710 211446534 453633290 247144924 406474799 743769542 782368741 780945915 822037069 829180517 979960224 320546625 705516184 366405856 928809079 207162918 952235996 353817077 580505558 148819487 964161523 391728165 713716662 883987900 996719967 77836159 855399907 604852317 671310763 525538747 641357767 689687406 778567976 846965220 866850102 691412584 774044840 81938995 329926771 391359854 834176069 304718846 500935973 97855041 802723472 241370087 410116218 700749991 924627017 82292995 608920132 980150795 986451292 830677029 978421838 667716230 672012522 108549822 750735425 299416336 806242779 34233316 407355845 987572203 999724500 291579732 445235240 710131409 862925376 887981761 987422422 538321671 723387657 507898443 806894166 507565932 555584607 881380963 978493241 846092258 920502104 137466360 736888027 988450184 990055877 415204104 751996774 932314352 950024687 637778132 897006684 454671188 466865521 86445337 848718376 462086250 554342118 456862940 476977436 815354238 870699480 395746586 784757325 234356054 485005302 691292913 883323902 753309810 873100228 667411223 862228111 661197272 999897020 196655406 931499623 453937137 758482799 50984334 65997917 418938285 900169282 661744783 887127805 823372901 831543341 406273247 573811857 589076103 780207451 568661552 892520695 709884713 750282958 961552149 965852522 229950208 726018556 864279808 969786489 554641320 707670882 838206118 886551910 381995470 532964866 35786385 937073154 9657627 413910224 867798578 952662776 735888115 806505084 136283014 424156841 305533832 756907397 255441136 432064792 226443456 265497288 981588628 996095241 385166628 740409188 649929074 724012927 611465483 959255457 971139802 980644181 509156119 889458963 546060182 730085721 587833138 819386941 513371274 876462302 331890206 902231278 954203015 998205377 534533174 631866083 806436902 980083799 447278691 493540805 218739753 348481547 424974365 945614949 990947103 998845935 472469323 970621525 133896134 895865464 456190729 781212622 869595626 924212833 415470547 942562181 926647988 942423586 929446022 962773506 440747462 708490022 302982950 618074997 623640338 843489161 591002096 631937512 980340348 988317251 31071859 239479073 335207301 912198601 915386206 993005411 292616650 708310411 929854119 972731715 554255159 938029441 991967637 998703473 104730942 257257312 569023731 783826622 266557760 554508025 907327964 934007010 167422653 863025326 327329118 394442922 912182815 994302755 334496517 974391191 594558272 986849347 996248803 997772195 134440635 201785810 862082621 863202138 918171542 993339746 949440942 967256214 83863830 499851857 419251657 999423815 692261551 857723216 664008451 894900607 450469353 972360319 835961009 990202811 180701383 926744844 867051704 984369058 492844390 987884522 691842234 861697723 245185836 640579162 557148445 999745449 740618385 831028175 737496035 839773127 770273003 991771844 519645191 575672614 411090076 874217829 229341780 577224411 740752898 802739882 986965641 993689611 40415810 854107271 942512942 948020648 362171963 577205161 179072201 229771710 388518947 926926977 451578965 837660789 595949940 805610598 708060688 961482317 427880713 566672873 47766248 694884662 538047443 756630657 99691995 976450066 808319814 942076308 784470563 979805996 441595807 510397307 583317531 861227496 788184974 860910702 766307767 986615987 916742459 918710644 669555201 978989048 583261687 952898690 48053528 375950497 514522318 784674546 826659306 879435131 521077271 947885045 563433429 895596801 735060968 748971718 622284228 962426720 112124310 294354505 714454125 845795042 596140674 644785528 659386497 783139058 154745994 935920709 67856191 763060260 554214442 938591365 24277783 337148752 622759103 830526424 556087003 731599553 620397017 847898793 253017069 652581397 603231319 881794683 610796698 765719710 793601641 886022021 754572952 923382066 852741162 977619620 244604763 634619345 994542396 998974713 419618630 859294233 802354316 910631329 558195869 922990876 3128431 829070732 145686927 521142726 520882089 595228952 302185490 348854365 167751771 287656445 42155677 930387419 52574668 253974111 605411106 897336341 755160232 952373775 968126826 971370260 931560378 949219129 212566143 796781639 565770004 846791778 215260801 390793342 863529679 865637463 948593928 953205779 787286068 946971576 336728336 613528718 374901231 527072432 811914569 893912692 447582596 834301517 606328870 959649046 949818668 953759734 964482991 988341561 176679435 957004935 989065081 999601893 753832377 848106011 999687273 999951359 315987680 882419250 442135584 925145856 638907081 990882133 958809920 961823320 611892139 740726270 790337382 897724600 572374901 974856177 584653940 663683425 661682455 902370213 379846568 883816858 362656755 673495804 816317767 926124750 853870477 955832856 312093090 955262463 538239097 839527016 541601828 859975806 222387330 568191937 556954528 891378538 856967008 904585827 977501281 986417773 907972247 948663264 540508689 810778105 490006496 565890168 727556106 863837931 765070564 776771541 911688610 983887463 685176926 811537932 237009424 760458173 418393530 949851058 90172494 258206578 322440926 908257817 102859769 277933343 568264479 926504882 461691487 611372688 203917241 726362373 674851511 843096825 897068886 918127384 284253710 743911550 698682268 997825995 539116146 913600568 950178197 950379762 115796665 666090002 852364299 870754781 27047410 790915029 927328111 962095645 820555364 979622791 449024553 588851917 888158753 925721267 40647939 96845409 732776135 758060109 517625849 829281829 912339304 998102244 649156952 773340350 951301604 957432892 405709129 549977035 683082354 796824159 617193375 815465666 225963432 663164300 66821939 835395458 386567765 799300575 317639109 442692611 966099449 972413756 395482866 500436077 902970820 952998335 830999526 971642139 798610900 861917477 998187701 999135151 771755004 902982420 617784491 823802554 325973533 686598512 273541753 298345672 583690929 850987061 309258698 779325947 918816156 944947807 254767765 465098087 351141991 990709286 800079780 825569212 489340408 938539969 863535748 923709596 822004099 853178757 819003423 881403395 492653955 746859969 249077069 470088997 552094952 875897966 473364843 690000794 706450427 780896027 324175271 852565473 819446559 892761829 594799534 961010211 829468365 947407423 340101504 563300137 465194801 537686237 905926445 922499941 645303647 830482263 495408901 872423080 720357887 894656239 274936482 558424040 441356538 581862433 671263162 692589334 82457609 747597684 841342770 855811274 480226544 526372179 997725860 997809993 815699791 952084121 98553713 474226206 291368193 378602997 751461247 753222372 7792134 488805531 410204041 520805273 150572783 431552396 819232942 951296843 716421820 892144812 765592424 889045886 906190188 910028451 297699714 458083129 903598355 924954132 580074003 602313484 869644154 927999635 314838084 553154401 380533474 948187082 241195417 477164119 247277904 766120491 711599554 856174543 191337163 792228453 146750861 649365806 825721520 972642860 333482285 911347145 485187349 651110015 161279795 211641500 830341052 896409057 692640288 794101508 326071311 342388112 600684815 813585795 272524352 466139773 465069024 723559308 530285471 847156932 393486753 666582034 928410355 932702603 207038422 652171696 517018857 896326159 794854708 955812373 453854781 630501014 442116827 455636193 338689822 875994389 357650009 372504261 803322074 883989031 57473416 630708694 916491199 964386787 996253295 998559306 673739547 822121657 558698671 880551269 523578756 540852385 141993088 303065223 556201481 986183289 699340872 953799334 55187983 833213059 106397993 617881707 190147277 747043936 561723953 752149880 88692606 319175208 692276257 859699416 411334880 816833728 102878090 475333576 219922206 444595960 278026889 458088393 583208505 944972906 309268137 881846231 485820626 539845662 863895401 887498257 824622780 838041929 333211072 497359040 972766522 985109433 56272754 352173485 304184965 570429710 435247737 964476979 791975883 995217990 645100750 680522094 386477019 882944819 82557928 249003538 844258910 876099929 610170034 644692685 88322842 700984189 953362455 983201836 628563202 980326563 897891649 915858850 285160411 749751887 655025481 777250424 497907378 850088079 762662774 823141300 190664796 245544744 153122795 733841396 470713456 804164179 232449204 668903675 415820342 845230841 169132583 618294205 871575372 937158749 880794913 947210595 386313269 599775806 656399567 921439689 312309009 389250739 826285898 918972796 231836316 753453825 284062716 668115009 52419120 358737613 10455047 178309406 279378894 591966255 319604917 619634293 154233445 954302964 310156964 319254437 913913831 989192579 550925067 787840954 184783784 963080428 749340440 967729210 922979812 982118371 586574287 827052330 665150656 718774506 168016071 698997236 886650380 978625842 884640734 955447676 598722059 688131531 182341998 929358134 823963617 977859427 819873477 942946188 920554860 989247267 448379038 515241279 427320766 982558320 705547189 787318031 143658108 893791249 529703494 587997480 400070962 663715353 161288298 557516403 432355463 890910235 505544664 951819400 290612693 992140144 721138002 928322709 916381785 950365294 748067564 842745687 961140825 982130378 207148241 423050849 644390021 958621261 237892542 298081237 181402730 524032771 904123763 966903880 481254396 896985907 622838022 977701538 192852045 435187675 467666540 643420915 218608787 353723313 298969447 438296329 163393803 736735890 931609773 995215322 88638172 731343676 579300946 907775265 680033149 912125885 430551309 485716026 978214115 978299267 782567769 958610186 457771568 481122209 228758873 539342905 170881692 765827443 302123448 956549219 449416643 655628304 579902660 657497132 521423034 642521706 128232291 165640313 324877618 538725348 125058743 543257661 984061996 992799001 849476346 851446920 758973208 767937713 433381396 736621061 817469462 819448762 989781972 997458777 3562755 763387530 71815463 523159689 983528314 992676922 841531465 916053455 39893966 750366842 315662782 968515583 77735445 951505662 509215459 533344198 821545855 923449567 952279768 964662026 984616422 989257947 55033357 651154224 761621964 917922223 322718976 969796529 655819006 667873728 752387036 947663219 200249483 673141684 802555873 943642592 996153929 997514087 917452434 965289937 759524372 951740322 900369825 901428702 634864663 708651668 516265916 545911430 309843229 664024378 812714382 839577062 979240141 996676059 962090941 962448757 969200698 976260705 123113023 654892355 961200842 975013877 175278414 545155841 533152926 694666152 624997259 739473792 464156164 475654684 293638397 832035574 432508228 703383198 700836463 924315452 706260375 852012908 486045007 927728951 697602155 835578139 562038549 957052676 159273375 434467661 992172446 998712715 840686057 935832646 424462490 582302133 583485370 732808191 563031618 645742078 210559954 430386460 531193536 943070199 83046498 728582910 468189568 555308821 272591292 735903800 5943414 719485377 87356127 812862898 317894322 644840007 668367340 710580204 632916722 722080089 945992709 958953499 462681952 916831166 440837618 476129532 60375550 634755170 756825968 805039490 385315815 754938167 763078656 802482693 146174961 184528816 647069888 825657134 949669466 951953229 370925444 773472687 424625747 783666824 913655204 929465042 236571987 578960223 587215352 807334962 776327835 914687730 677546755 796668470 654550385 766946128 482692197 753966568 804285080 816781093 996952875 999416930 687908221 951146063 476804598 837582869 884466644 953175713 803486170 876282371 228766394 479872665 376136200 411205745 438782288 758776599 984689368 993768942 493265617 588943024 535552695 934377112 203819671 685270274 993330760 994843160 822567624 908636812 847542241 858947174 268186578 855654327 382958038 692333919 75030101 202742783 557429969 858755455 260679461 409223442 862003374 951585526 281986298 443139445 913708510 993822938 191422078 514211122 406624570 828763720 632062346 989839247 358809133 922136927 994632493 994982114 122757567 593566692 495693012 528559280 333194248 407992207 691502453 889314652 377848323 862847923 96705708 499275502 641022904 781750344 309397771 550070779 132042798 402801359 447013493 862998085 585282973 615221329 337185204 493712070 189311774 796168548 414934781 692634306 473477842 732997628 597958361 892069208 428515587 852990017 510282910 613199272 627811470 630593120 978083733 995507690 763946453 883202565 323830084 391284740 337859828 411526873 83960215 535288295 510451144 618581873 982337158 989830191 250390470 762398963 749975804 876734936 333069516 627542636 739460162 840474360 20647150 533176562 676982301 712956288 509703565 912717668 938200013 994122186 396030207 523820591 813899420 963799848 813363725 936045011 140699592 249226641 697806450 714292874 862727915 988013721 109100350 581398454 154651420 644971237 545947224 577382327 97806603 918969270 368672507 542267825 624398904 992476133 888173559 914084915 54782416 993392421 817461248 840859919 582778590 687934004 28315555 565912808 119812331 689558741 814012388 879331361 652582173 928945575 343012593 981875948 782853140 856321158 487200478 576958819 539764623 744027376 569992216 595381176 315602895 342868649 528134230 835358209 136922131 215980743 461084706 767981249 574398897 982513132 915034136 977130061 710888144 857045211 275480325 746350185 312514853 785356712 137799793 845781732 111115661 164842358 329868011 643199563 418347996 980845364 623613505 794800721 853004841 899377912 30669335 574976978 905540219 923800933 317607647 498077024 550773387 909173218 269248887 579574632 776693815 787015468 599972830 933471918 976823671 982262934 478162910 540721798 20773255 874212093 687248846 905278847 512277617 590913686 673167431 844061675 236315786 750727500 538293380 732547697 387242078 982878498 281281652 290939580 529097175 622439642 399659672 962662163 320264231 486344375 149275338 356557462 436936547 778527279 22636763 809872699 887000937 893322958 441383062 590819052 161256816 726556944 412727141 909583360 294426212 729125974 432895753 515467336 160716551 907145169 299732810 567288462 650703526 724833340 447353335 807728256 175685216 945924109 588403119 995433931 868709446 918040922 4428284 553077576 872821232 991140000 911388817 991900398 933672315 978387251 105622651 286785368 552236311 971256349 711660367 711958830 463224347 715270978 854129972 867399835 740827069 984920677 54056884 906312763 543774620 861759928 465863714 742352695 196117835 522478559 963837461 977593810 203169018 707243158 698866645 852609541 320157591 756866937 685181758 697459808 716355408 733752244 732326505 758558386 996395299 997230569 458068816 750626260 209769124 303109265 183241083 772250912 996229321 996250003 452854816 624795965 839451437 942993768 29065599 428273631 922548486 923383937 548658169 847902159 613107607 986828787 893149866 962775415 988730258 998542112 971241442 991375963 228062477 458675439 142768120 266450241 673737129 750865823 720900119 854121943 632245603 633362712 179003394 257320816 948678055 949607133 883677040 904055661 907208524 925820836 267069151 802071172 528455565 860872016 581254593 925653733 355901719 615881963 233458578 681122401 627408497 781229894 616903167 724977795 988439276 997552757 622332942 757598824 414419811 559982882 904587273 950998765 900464213 963282939 619846027 751130183 154798330 162154889 388858422 632330119 498591254 616249190 320871608 909578387 27602906 510420450 896902687 907245256 500343373 538649668 877861413 885100871 1883182 70675740 204286380 285499585 369118992 538853446 375087325 647500820 214050500 227183930 193479263 533443696 232056512 508554025 811359816 915531959 622191746 658217178 982539443 997804397 994578169 998365358 432003182 650820404 710481770 876637424 628855308 960171318 150026889 493204097 91027671 741494279 151350994 856309916 615650020 704117285 515984565 854737269 23331454 426420472 79511318 171812632 743805167 923706439 647708332 853537804 573340634 991145194 896985460 995414772 765540423 782881143 773315793 961860614 548123874 720035899 322884741 911154537 5437932 611722003 194901753 562674323 362378548 837435473 441951919 983861472 385025847 816848387 349892461 675447938 236587386 507338968 295182111 937591141 201869180 708352399 351179526 855686548 885345191 985190618 495375355 854808580 204867357 315491333 88337620 862398050 123165417 287211135 987948567 990617129 32405736 155553203 339351614 721121829 768619298 802983727 24017644 309343534 878539009 906315534 338720366 434064434 582167773 701068324 962631935 990695267 130287863 402321603 46096684 481855430 467797962 907872003 99394775 280901479 105480565 949619085 104081516 255331246 913839256 942141015 670199940 707622600 980616657 994077474 127365082 856021054 578802968 584985547 404400708 743333097 94829578 782295106 887641157 922455386 393281972 754384111 381337462 620776587 568015618 652199516 574725232 930317168 802043613 883995047 905863020 997857003 699716387 763733908 796554564 823605772 707772023 961128490 284995353 854041435 768395472 822150388 736766457 949053302 678198986 751459204 214974022 434321413 382146873 692489885 269278494 907918455 188234508 554636097 807649359 868487531 263927458 573028162 830208455 915470726 740772155 997038818 308409009 854642167 80991554 277304427 800735634 880448962 493666273 721423361 358884404 935434880 55889132 381488306 881971229 946582420 683387480 773905710 945956914 958525587 256766334 550247341 344767915 449159424 222806682 759161835 40402093 652339674 545027972 774806149 881477390 982773154 754138704 782436199 574102470 597881971 193241286 497123497 403808228 799182631 649057622 842688201 515315112 768246159 467499644 894557431 126531153 552035388 127481893 841720471 1858123 291632885 789754601 839124235 973421002 996486320 844401718 945049910 35873952 463030878 279186820 294793384 343840627 386799046 690430769 777910509 821760662 886412775 91184351 552338339 502152749 907956869 332356332 827115142 292754008 885748040 398187900 625336808 131378351 464658199 62988015 319144533 853704836 947221698 390751906 789232654 856465683 917512799 375157558 980046643 820613406 944228013 181428564 353300493 991350886 999015098 529891510 813348979 631326483 729055114 302719011 423615663 395219270 940534645 247418262 484231068 598151866 683481169 145570775 537616307 923767516 984752035 149807649 380905849 670147890 736700891 906851363 912523949 967006150 971808719 992157036 992813064 860745204 951104735 192244442 887018444 663856545 917549919 200737195 366189131 528749391 830347494 904066433 954033508 986456897 987300355 528674859 556264966 63568477 950913903 46917073 502493764 87982291 577532315 868624279 932618955 310119694 875764215 804137182 925004237 850179577 859229216 52859467 336170307 269369006 951389069 662779880 876814700 77226566 464388481 140094031 668285591 9955550 676763724 980961350 981287998 112182249 299550229 270057436 574163830 394769222 400066221 284561864 473883943 87599585 387588004 756233610 868019967 616858081 686695126 493327079 825130247 294032309 988748401 758298397 932811212 979758539 982637697 29808598 399499794 934116351 985298551 779959885 950858215 277325258 900856743 601259368 675165225 160818481 843000981 723821822 784740376 221235196 469723029 769012114 974716344 387919119 931686756 555433428 703927563 382282736 896792255 817865055 840637371 601346455 747207437 142235027 645521126 928634767 952280025 756470683 759575525 267095666 410460477 947248509 999334132 972803415 990831139 454046630 825101048 742119767 774265861 899166147 913730999 169066665 877505055 1464190 168533306 254110390 338236712 121315314 440559035 970102677 988128848 30461563 409526993 721658402 964107042 330141113 737263876 929758054 993259392 985896073 996451948 690115810 971704185 881453067 910466323 873886545 904183781 875870160 877803183 317012212 671340381 751198201 875971942 219203781 580118585 590394945 664093544 33523476 682230503 729370823 913916061 825602969 906138451 387051996 475084570 349091666 739319592 953532333 996561151 9343288 236303037 498234340 920470525 684751116 793116033 710015878 892369639 613495539 912158526 859920580 989719232 921664298 932460387 692218176 743194494 402416563 960197641 252671281 931347497 654476939 882245498 389831473 934675622 128999529 593095258 306438193 986800397 209092849 330811543 348440821 370811112 84050573 292835773 937484760 983445642 37103122 370595122 75167587 588076810 665184170 820309595 32412039 514932323 48203780 617166784 962729831 998800751 388814317 776465259 127948396 558017908 795865508 922094344 900234578 937085246 815896792 870266735 352931094 452402908 215038565 789114267 288578463 508470184 511414116 557697780 452108936 974281648 832353749 906281945 683160826 817131563 432540719 486686687 572814297 969113975 953955617 982491984 690282178 820190499 353648936 846869979 704461223 849900860 240114987 594095166 207285149 902878457 683261184 783882486 471802245 826177037 210998172 231646560 64601138 514598183 362440395 707300806 804874350 953622603 110081021 485410542 419394725 703066272 424255989 811240947 675778919 827965099 653301926 938257464 835076439 844359722 969613813 977810431 586507788 855424432 474844738 957011857 704939059 900920281 879247428 909378115 320928406 675309650 775117034 976627929 343502068 949998353 884777115 924178584 817572938 864102234 727064730 837520039 161944774 347890591 849747808 884839012 806027340 895066069 102755079 942309866 134681905 472854918 501271326 682011176 321063253 480657697 349823344 919217459 456036906 509425473 105463789 489627699 783718921 814024127 973763799 996935615 93699811 815700368 521597287 632039742 267857886 917188678 841323566 897669907 294363065 749610185 352344099 677354818 886746339 937341960 418282244 656542482 715275870 907680064 601016476 808250510 800574901 818087452 580581646 902226026 66208630 808367213 871804151 898436903 749396077 958960710 197651879 603365590 650156085 807075644 234628435 397470341 677436838 871797069 417429912 672593078 237021668 859744030 81610983 989346271 977014970 992932750 333925523 796511256 806206393 853109627 638086187 901736469 460241954 657509120 267708184 620253097 900188655 984258025 748248558 938120982 994581646 996147122 826247846 977241769 962438749 980429514 578876938 745275174 770766228 842219306 62238719 258198391 954417910 996467304 199835336 827515637 516511648 629421619 509999193 830097114 910292204 945403312 107026561 174548566 8515456 132464880 11042578 925445533 490875434 640243882 297588145 681299605 956657970 960599339 237878282 772662437 599312079 888873056 323649677 875428096 873143342 932753048 333960347 397058412 891953340 978864389 462360953 462386185 509440326 615592974 14849419 91489314 898659375 930510908 116274134 135735224 40958525 830817575 598083921 699938539 563305491 816905585 292008071 742751713 144383543 540359118 872039000 976766459 2734756 825729192 713110379 788539367 775828791 848129827 113613791 613716614 704652155 707800832 840024507 981957320 883387268 907227306 208304171 966062770 287864375 395473193 705716172 995334259 306909987 977458118 11827817 50922607 793277970 912409597 340554660 630171231 104077331 888366365 892595358 959176191 300191990 926342350 642210495 919153321 430186513 601060074 65431935 339548334 191271886 240423984 821731918 879711488 700516128 801914951 329017716 805242677 14851572 557864053 734606267 761511640 196884103 578590303 885085023 915108042 686611080 789011891 194739351 200358862 980674179 991345231 89070026 724751121 689449947 909915208 304858216 461740129 341849742 897820954 212360685 950407486 863802361 872319454 118341205 533243071 885274742 924488281 839869392 914163695 387390356 625975921 140346566 862229930 438476954 540643661 485487801 670625255 860049641 895794022 571931772 713763269 398289339 446861765 17848260 179316659 144880991 907663526 562453589 583547312 22246357 714914115 290603021 522125777 57761436 371331100 820850880 968248862 232035461 923376308 33112972 619520972 627138202 881589265 47227216 806825054 921492153 977845417 922328782 934518577 7905746 495260443 819964270 994409108 610316492 859872790 61060503 464678319 715573205 972514928 790603216 976753516 188603044 352887838 862574483 887078129 670921173 936542626 509045765 984149050 605848343 937261600 563919623 604407583 384589464 857045958 835473261 866333055 683169554 893473457 761796324 996649158 263493927 753714345 999399813 999702246 879767298 961168991 77852168 666381739 820492402 885321344 646149648 988328059 87466914 608162822 406527985 765807326 449740826 775832626 158106573 730542927 279002511 613039406 219193270 703453404 627313156 988460761 418907536 639623734 728107099 788386577 46211601 581295592 333162509 840994717 171017670 872594449 703782643 719393985 111367758 754895081 794108678 837227937 923314494 923379366 930168627 972535527 264658232 977900038 814145516 864658848 42409758 199537198 537181304 545357898 321644278 944355919 773190088 846614808 829556282 829842486 298512513 952230944 416091288 804867201 826648110 909601600 36877975 293577620 982059830 986042622 493085564 844832956 794612694 894287562 602846273 926713958 772419580 795138945 366626681 961201204 639882577 663529416 355963744 921617389 719137445 952473277 311761286 993252975 241518075 509244458 518213837 900954810 695799919 845602259 59475003 903291143 682645506 980168355 761131769 774369137 997352209 998020527 677973691 912722318 864913225 895558331 951951073 952160117 699633587 749541943 401539276 956946816 579929183 764793532 605941809 715401382 694257453 920158593 239054423 716136455 280904248 593359792 131503389 677908752 807037920 927322375 121764085 499152141 181555663 830214745 553264172 980610386 120529670 521972940 364423911 864887496 196734474 442888698 376259275 773926993 887701271 921452336 164498715 961037844 600679129 638189529 978500081 994183434 892836861 966698976 320987562 998705226 381567918 728082076 354271313 535369240 847211174 856626498 538762384 874791938 946098534 963168950 873244187 934471587 562598112 891503837 438974845 528585340 262335332 953095994 348598278 744786824 258719891 293808882 181558282 853815345 628782995 851925454 835444996 869732625 284887975 834889703 972549477 998300972 422618739 546206577 967197998 976411063 789500707 814911446 756952890 921223346 463347244 644108986 813676718 821242310 368882085 869693491 799091465 954088827 836112110 991343756 980968968 985890162 70078978 210656403 238220944 387176159 51022459 454497637 749206773 921619385 870180898 898446890 817621737 823388397 143383679 233986126 428148385 697381703 115406452 820491468 454527784 854260236 79903792 554690238 712980862 905626717 820623820 875557611 925460816 939755156 974361046 982144567 471317177 823819365 447734949 706905606 183949063 753542267 248791578 860533949 964134476 976739488 838865003 849495378 391121747 536016122 657357550 881478875 886904057 896079100 692164328 896545472 135291054 432619954 40164509 210616222 51807822 615526813 677151691 883884523 844708455 922342076 507381957 911177474 588184334 812717741 690564828 949419090 419868694 645356533 699362792 713508074 99965323 657735604 972864986 986580813 988305120 997435908 97111635 891285916 990066681 992545943 642251859 800601129 140411651 909434620 625492842 809251997 569628978 907738137 313306519 977317513 900092110 901053288 152554940 532574270 329187731 536040575 829488851 995810170 616501045 907512699 909907591 977838628 162595407 914579850 705943981 830455828 949229411 972038941 875617089 897136410 765371174 964653693 619301073 980612851 662350142 783343381 189338651 296859638 417742855 556188431 315828419 329407144 474119209 649768705 900194232 971583142 482181759 819274082 57803272 634471319 761944695 996007078 321230686 521584110 780310863 799868339 288666379 422592266 140480448 627152930 722676933 923015923 397162299 849935541 971241094 977432214 417551425 849539182 749205064 783627152 314880408 508617349 583843326 919073813 612719720 993450864 922740286 933353796 398030258 873434181 328979298 696806669 932838770 962308818 914185208 968558021 215321247 641786457 469595260 652868418 459093220 574679207 56569545 204318450 343706242 448332203 414712148 746085115 61018721 546613011 607979907 712838457 135865029 517986759 378223492 472552607 258725834 323451984 149530512 269906234 489590552 750437746 311995906 673512325 168113043 218802472 90651684 434307231 468773103 625513344 932174373 938075515 164166235 641823104 873475807 973651996 220365667 895104181 906133698 924025795 215043963 216784877 914111917 929184703 23170462 312242786 982194135 992882176 40765711 473395378 982674665 991840063 940914228 998571581 855123989 862444202 830386246 866914603 710035448 974367979 394299647 436987512 994996374 997974027 854020676 916935031 761745027 794103636 588470797 611580848 68726692 787828185 377310057 936675159 791898884 954085728 162553620 309564350 214989223 758533691 158731460 796483258 295135348 753781867 325350082 366476814 513373207 777391812 896955888 941509898 798165412 990096396 465369684 925212741 52542577 559769652 682637315 869617745 107172810 459517741 137573669 275657107 118232762 595039988 18490178 329193388 75141466 411718306 994798681 997507537 960922521 988367103 430239958 849560475 893258692 978522758 900608481 952580737 833307568 878228396 186676244 795343355 378886547 958053718 763044105 998081384 461503763 742075208 919960758 927588247 506399561 646739214 621790466 775453049 825703130 918765429 277701399 669515796 659623460 793818216 161397718 435510775 948566910 971148721 236788863 595168027 178097916 846279533 341720836 603936645 364124511 673615466 232419762 682016902 605781573 615067260 32364377 576734265 614646135 809833724 943630193 983700180 446286063 774616875 81697702 100560117 121051640 310345913 756315445 811960287 123722362 537519857 268403442 276826315 895663927 921143079 950355651 993126130 365456472 920055713 684960822 725479042 154825472 387688487 61263708 952980573 365401996 454194143 187465815 588079138 142518347 890013814 162392484 471124030 711114396 748630770 434456495 715934095 916142402 998279676 448598530 932990431 369569091 847148803 334032784 465366816 11352018 505388190 685437575 978625905 660304628 921471933 248503982 800793870 339790957 579833840 707260692 878416672 926941035 927896536 959015503 975146882 626692626 831743551 626318116 781715998 8942814 685044989 849596901 941663050 129292568 337474185 500997432 624726056 562631841 632908494 666457278 779204975 471398847 755530988 333522187 674935395 697681506 934842064 181291189 927000837 637158366 657161148 312308757 898787578 200105464 699955314 325538048 625079198 99205243 375443968 586593139 739490508 653567373 986320714 72982353 866632947 401834735 592067906 898765293 964318137 432560870 628245818 316767075 669315416 412687588 544225042 53160438 937749833 718436553 822497475 733165217 984883757 371277586 621789141 855021058 922367400 19451005 353793221 763418294 818671051 856859 819556967 499584678 737452819 366449206 644760532 818829071 879176062 244912449 295103756 307235615 860793545 363219191 830940627 683112517 777684777 320642630 670303839 330886833 920460413 131573419 917672195 93412637 995516886 239394383 284147391 389701122 869173884 573190791 617375325 660987032 694131888 15241746 661317714 402578135 884354022 197887480 755642160 421005223 561738352 461047398 944630905 659813970 800167390 130528004 305657638 955097545 959105115 45765236 234215163 231457345 956034603 859646723 870530512 677989010 744018403 69663602 719390909 557374846 804657969 638629067 817108797 609316860 991063416 806784020 861388320 915765929 922607724 631695338 814677559 931800447 938710070 944942541 975805423 650485412 668183094 206962236 695643381 325380643 775308426 364366437 637379346 882276721 982347139 757963618 768235467 694618423 925645704 403020657 951306092 465673951 704321291 209768019 266004259 841310354 902522008 29656548 933122951 674104730 920240494 612857248 930485763 981665474 992526543 140773300 253278260 874414876 918027216 760524403 913809691 714332932 834534247 142647269 660873782 536801721 744119018 933614539 944998695 768117753 968936886 711817963 766774103 410082297 782908274 228432708 882488826 126562665 380081018 974035498 975163440 245251879 495905176 790064048 948946686 85381915 250438111 452590191 656783518 390157182 553084163 958081141 996504001 858724237 932633492 852768508 867789607 151861110 956017459 597273646 701334631 241526973 572438141 781929558 949394982 921479732 926846881 977995611 998059559 52370044 579970722 405462787 721855197 965423538 985416915 461084528 693420908 820812006 828527497 439228408 649922567 151325826 274355734 805129623 861947739 188964057 599274950 746644091 914788009 607112543 777362374 651067185 915209547 751520356 841860333 275868858 565019503 47300459 466740769 562186698 959310938 129565430 716177765 662192892 835277111 700814882 810808649 581721599 628432974 768630504 811368119 217638180 996002260 298563303 666893517 255360344 593402346 617348720 898369049 203095298 550145600 801342217 934039339 278366258 664934416 228118696 253313535 553401262 610836430 454840685 580609817 938515052 965696556 332026010 404043990 997000414 999389436 310115665 640636159 830929178 863891035 697715848 775403313 603895320 860520177 332493162 896784430 946608773 950430461 733762114 917933342 650949803 790674456 686332308 903956864 770201033 887038739 255005413 814976423 835257570 865472233 810532774 988937762 942638670 994741136 153273305 354965996 231298466 245568849 812613568 955893527 254213306 976482228 884872098 957863801 115592097 805844999 521098179 840577676 901532326 969265350 909792306 937252110 5769414 738954126 757139092 844036980 997322117 999472288 439328232 871968327 429073347 921003361 664773241 742261712 992598499 998426336 490409248 747254244 967092369 976342579 865582894 886306193 497730431 890117878 668423301 894630378 36768065 347830486 315347381 711013695 337161101 950069427 370387700 537943087 224942240 709030805 112627755 935348956 325379620 983601340 799018393 967768140 313707048 522788726 15351601 129139551 824701897 838558680 284197324 339326748 79511448 211761347 138556775 833874126 186665744 942630840 610271321 728803337 295472899 991166974 710776290 791599664 884908735 889255545 170110883 683411620 790803428 944422911 232276259 629331533 592975968 689123217 311714922 872880622 283363048 975873779 786420105 834167626 311391146 594854103 52361932 479402682 288711113 668348805 410352900 884716394 73713475 886869220 26037089 110520021 155360675 180514866 426481342 970770051 813313955 893756433 93396091 105790975 134551493 689180801 147254934 583599227 760799180 885426097 502454614 552607363 75373 558256646 185367611 418708629 876820185 889656105 318760136 569005696 446352358 692768593 101806883 920555175 204324743 342151249 60905437 556068019 231092429 731525237 383552183 785030517 668282048 925817107 319911420 696117888 932334061 987570716 22090305 733887018 560451525 881081823 42079047 140362315 307550429 808499412 414973700 889911920 879037132 922868315 434292114 985100404 881572259 957404010 659657920 985750935 526195758 790878490 692868860 737982601 712040974 960834979 790218196 806747803 452158568 596345415 77212598 103133845 905647763 955605768 647112148 976566595 314092614 634822313 642526841 922646846 399570613 886965784 401762823 999573061 653345297 778561189 933869224 955525149 189014232 837307241 709333417 774230564 29253019 153970362 117261310 262256075 299873220 421903060 657837795 666986822 779208232 818684492 840016012 894773799 917432904 996975095 204661232 221552177 210453226 949675245 226994610 498695924 268326667 414387557 218979676 231857410 434335684 845005732 220183038 902438246 640817845 768323286 613520190 615784644 686086119 772153848 610386199 757722007 766591182 815379659 512656881 734311468 858377999 861353833 779203201 826598699 122149711 230172473 862326969 935336269 973536919 979621082 777059554 973359803 187713719 391325549 422271112 611715110 65127848 435009163 467967158 818330589 791789216 889010911 396526201 901208882 93948239 627471353 538900632 676969723 706630219 787579432 419622011 516669400 394362858 849767094 623131611 806480672 317405957 740803768 878481774 934037697 881513017 999994986 954485713 969128383 462690726 727647908 953290260 970750354 310279197 830042002 448028143 507144637 265929218 985831617 896085863 986233794 611700703 777804070 232875107 647252912 581935577 768200870 14453302 673926057 22889529 601076964 947015119 990752824 477509934 884189725 909474803 957225415 470766312 854294635 651686413 884898646 620620718 773083306 904403246 923246548 676127716 957007095 47600786 650713612 146238596 499284586 472373719 910057582 519750450 887772243 830892597 902909803 103138597 754404991 678252000 807270861 428541054 671248404 538426088 864066482 88490396 944659645 592460829 895931020 191872425 279128910 900778964 919027682 57262116 351626984 653547127 669776483 238388929 463411190 440311461 878802850 580695372 686682755 87389478 636710044 315140390 748992530 416585931 991804203 875092656 909634029 720153105 926963512 124576498 235079318 216908307 856775991 729071959 729928591 710500411 997698316 36616225 192252436 768186012 866018349 855986292 981219267 917793973 961305693 39939928 573959925 967743646 992122277 66993486 401295114 535299935 797227558 521139557 931813826 988952479 994918424 445158393 969810114 835076654 937206464 12337455 800539395 299300545 351958001 491478856 614152154 867267299 910512045 938804159 941476726 117855712 910412633 965129262 977673394 627802001 864965315 917515758 944564675 114548905 175628743 788148020 827839175 516490529 983804038 69789944 873161495 445586508 511948341 735453936 741142663 695963868 885585428 121688896 262724768 121585290 940542872 908634493 918577263 850220436 956579486 862962231 886268006 34204392 880370919 750351811 760077235 976347060 989479668 810506508 814964242 605424269 866734707 263560320 757646283 121249084 921370878 438138614 949056948 757934262 817601069 464844515 665475060 382349136 574147876 639826480 765577706 444910090 864172203 186319884 650184812 178456855 795654556 189944123 413469723 886247100 923662944 199838427 855810966 590409431 718942660 488601957 887057638 95925106 602451582 46037572 83689099 712360646 803437435 408798229 997108582 999221907 999583778 441009342 576849578 671734945 989180297 282544649 807300860 961697281 964453763 322879497 331830776 19999710 949633722 313037241 577025016 860697360 866103143 52419028 715494543 782809892 862695423 329853221 645857186 879002307 882160643 943834186 969655028 176058053 416222195 726441400 898601213 317327664 660698702 355156085 698211612 777943318 789841048 957619034 983892082 653675304 925954685 163621280 286192063 178602229 524278011 910993899 955897851 333113749 337598752 411788262 974911776 35026752 600395332 972490251 993049517 61665215 392034991 900608903 935831202 89117510 269474492 413334807 650245670 271775969 388555015 209167845 449907991 832372289 872485755 593821874 771609937 401938242 657892056 431063779 903981410 568928847 950471690 293649207 678818118 170753384 392229329 779951935 797701573 856447903 974795892 834319873 859777622 778952198 838839013 719471213 954906373 305610878 567112887 305547095 588832117 361556683 921865390 785840227 971725823 473463425 668920746 825196807 842468337 803033730 842783572 881149107 976306818 736089030 836012475 52528303 53040651 188576544 646876256 334947129 789033957 533710447 651058876 389108662 574689724 1320403 111905271 601163528 668931145 955301070 972591006 527911462 654772606 392044116 472148102 593943420 683430235 62319803 962975322 12944050 608819101 262718416 483011769 429126636 916888211 717756275 737991632 534555858 587317854 235407087 791423252 125058660 852876453 200622364 480489691 140360982 224068218 480567087 957360928 886251601 950038667 109095397 602949132 338992556 403551779 517670138 781167505 904048328 990607818 884905117 942712629 917939917 969102463 841612096 940346415 903069608 984796769 171200575 847880690 810786971 909183380 612183950 896424551 708696172 911607047 388230551 759032963 506076467 649996879 548936933 716272160 400073465 627030492 19439085 413910881 831394508 866650147 199101263 925519815 236169922 523483504 621403396 657741719 898236108 901019643 165208863 619665967 165106156 571968628 359595068 429759496 612679945 905933600 70227732 546265620 747526681 875950658 784812211 980922679 619323024 723043386 433617605 751551188 848179707 884116420 197886256 747513959 247446277 468445404 234001520 808575175 413385374 551790843 362793400 645613501 628180715 868037145 218103868 673482986 770834453 893402426 54684471 728658888 320377032 446861592 313635520 890401765 333093 681994526 847569017 951203448 122397957 362601379 631500451 954127189 533925211 748355657 701136782 784178843 771068441 918909332 776497800 930940516 358941228 501986673 442658879 639596033 973051892 979768811 990622616 992956725 196133099 990050469 620543861 728951068 782371255 789900652 231230393 381464591 963513805 996745809 389271240 686458798 508511555 965459376 174734841 736288194 399541488 495697513 36431100 538121491 906888370 986141830 540031500 549693038 988134543 990523737 324732849 533769222 450906016 641214856 425737375 905260778 581245422 883772970 942012425 959882414 931892662 988358726 371498424 439964717 340678988 714175516 965289619 971934051 89566822 939474932 648807391 949665311 661283556 903285788 749743694 950990979 921254877 972498236 23105111 471741334 378849006 867668873 147534943 658993451 930430937 993334221 396926772 573338076 801394550 959602290 772078925 915412645 606069076 796684450 800797895 890599034 934615039 989915855 243263940 657598437 752453876 867217566 586043619 645352764 531870122 801442485 142590528 830178163 861520343 975944326 693103773 820704667 376945230 588162763 369659624 422377380 88462219 614496762 349489781 743890930 860425593 914629326 86189075 196988593 902576777 987184427 722642570 895306213 791868545 995884147 315208729 696476741 399669455 885278959 569255594 779130472 540855072 736324894 835591328 863371989 922300774 963545234 693811791 791432573 290555197 384072818 667134762 825305263 11027162 158102809 506400992 789788455 640098858 731278973 65757251 304486933 327351436 777309149 339276850 771942535 126782660 673730228 989934191 991514648 950278556 963768533 542950247 635877002 223649976 992465728 728676385 899294777 633549435 775888354 134511983 305250299 280371217 609509120 14395703 943600401 214439100 275656604 633922298 678121680 851658944 940560333 856125819 939919731 264576540 371656877 983686708 984620926 221554941 251379935 135665595 895001726 877438543 959051181 70585056 289081213 711342146 821209019 620536012 700610144 732526641 887661543 509871742 773168465 935737838 946789508 720824920 899375756 505567626 727164255 484106707 500939242 706235505 942248340 876455890 954893033 144213492 300538640 558610115 670290683 644988501 865510999 679390703 920215115 294850761 463503911 807299994 813467030 365827491 626270298 747843283 800285690 324336915 324450383 219709508 605383329 757222739 936864465 726154739 848729591 806727143 957903861 755542909 829080166 899060839 914228989 855694779 949200070 555165981 838441659 702539012 945656483 424657243 543755975 965079541 969133924 509921644 819442253 320685587 937369824 326976032 758885096 213079958 546779470 787598416 898443244 670957826 896318889 919583238 971803784 725501240 961179823 949403005 981387674 947834164 974015205 652604965 784619637 414420642 747513452 917307187 925252508 43148535 472656206 796932364 833925280 356993698 990495972 383666926 850703022 719688830 812967801 847509480 998399449 148583093 551833790 113034948 380167319 904490632 932368220 916187758 939390376 526209771 940261793 777402512 812714648 670068355 969108229 275173956 313630877 808983335 851083573 736343803 836717014 37311329 948129962 273472525 347481312 895847066 948721638 405834570 642590245 359916327 787544261 108280824 969295111 250657015 925861932 191497465 458406661 605804855 794144957 932824371 963932938 777131616 831409216 496166608 730940938 474647019 945701201 202946944 539402548 233462202 393587532 602761475 975646692 538644393 984670352 726881688 993012641 303874665 965963486 198000557 697997649 320361319 454577886 914930744 942619092 44375488 775967319 134382801 604221389 615925446 655462503 67802477 652132503 697485153 720258945 833440287 897354071 781384574 907636376 383955098 798139371 798380191 912537115 248275831 608931140 797420703 920446906 524794320 988914144 991571165 991654896 978246348 995564221 401267641 682880186 523835270 567935494 229447553 238573252 536277243 794033954 251340051 998667991 742633271 853011933 629911104 878577195 670983653 709023088 124845789 405720709 650214657 830044049 41138814 890588296 716379336 774678239 569101424 698098496 812331795 937073476 337393693 830105089 277110260 644508195 277691605 297713434 491645045 677589598 978767384 992777393 994270657 999967538 453135245 732639335 401221486 455019837 478949475 818227118 538449199 648783529 559123914 876355836 821575176 927850668 412986735 948375061 440876249 583104209 175965209 847301654 521564843 865936078 522103511 794300375 492827456 818975573 103887555 397570846 27286617 783771853 621926954 976075263 719981692 793637859 975067944 980521290 727170238 810773516 749760416 923784464 461929819 769008924 934342728 993411335 971866099 992655861 470634002 571636667 621821730 810953985 466249516 977843349 579455746 679021684 273571597 828295739 814194929 881856578 957284656 985483675 354806614 444267643 739630329 931046409 58747514 415984850 380410547 601919434 71523377 878798704 389335702 622404456 572531921 680370692 683658941 930426431 649401532 710037068 324323378 446291609 537354579 811927053 480830884 662130995 939113436 989208836 321144521 982946012 346735444 674084315 375667362 696980625 923917652 931850303 978361538 987566220 807422144 953454810 585284325 653056486 701094742 918563084 716709214 748499916 706447703 761106639 346429113 671632846 119991071 772085902 487445900 585792815 709083560 981929489 912367679 920682673 625882932 998278624 279481197 553356836 727957535 933061913 674695344 917105773 210306549 940227817 185716950 370172040 138544781 252391120 288657532 886872213 879597261 970523027 947083953 957722527 867926099 977836007 122829165 410741855 823708666 835843229 97639106 185718226 783606000 865288280 77428358 741793700 160341309 532598048 261349615 325239041 276070198 685873479 732757386 885253822 863150272 880512557 395088873 581596952 893030712 988358448 978884570 993842898 480577141 890966376 96200314 152636519 598536215 616620927 533778161 692953837 965459518 984524563 415544529 618152307 637770612 968575086 80831195 736121588 706965391 948199514 191044371 962691862 139406605 566452017 141408879 761162878 619906807 643269203 708216320 933619507 222537722 460749859 246513564 671021158 240028769 890753323 515019614 564824735 577390259 646024494 522752203 748479579 205455965 472677142 138275405 919182530 456654425 473706018 224680798 760955145 103845722 151567589 657156171 936268742 602358575 715763312 871126046 903332537 657879245 696869254 352392975 533570303 850227871 994992778 11761333 976928243 182824961 941915426 741596364 836036660 676200799 762956622 11406698 435314272 33837005 952487702 464594883 505956167 97168109 491203338 228019395 639864512 191058821 634463411 78095539 574206630 166443885 752347441 456207841 494450697 270250594 362061066 700726199 909430774 913564001 918096633 621028525 935341620 383039631 491845625 67316588 264540149 916774301 957945041 389718854 528678784 164335278 354693847 597872873 620338902 878412577 962120989 714727120 991567101 622844282 814172948 822086403 831379919 505614105 539376714 283435755 679934383 851317265 989403643 904942385 978174742 792150042 958069003 672067095 928972078 239897967 889441292 127264724 381088997 878873595 919505330 135484401 493018294 373538602 444537915 640538548 715567906 419126442 500444101 231645051 985470449 682843633 888424478 25317761 238578837 249808817 951904580 43309473 347824725 600304918 782260816 97908970 362838622 651462613 724146670 984365200 990239426 293852034 398238683 61564640 242246117 991982907 998237177 484903450 584926452 209318016 910864863 126361351 926797735 249730086 660649126 753603895 837115413 348226012 914078965 738986235 930002567 176126175 401038932 458696705 471626407 398583340 883559629 287509135 636018254 5672864 382409668 863307982 962196946 178363613 878941764 90248933 452884116 460667931 784970829 760627486 802109980 182061761 228524866 306147218 379826040 31998617 81005712 271058911 757681895 470561548 643652468 918563659 933305524 627608154 653922680 379526602 736379294 419703347 836382557 929352334 989632027 327915712 613266951 198969558 974670360 682044425 735119454 845081526 984360180 383927550 431863987 878973030 937444781 465656779 618007930 445857535 890637557 811828665 828370303 166961371 817270139 804185340 984197587 609801741 877036812 162735002 673043773 72325688 712045395 10154156 177853122 770892228 829507114 713675048 886892303 376795423 620006988 283716182 821956980 115516612 164644878 455376995 793555447 72328558 72531488 138734874 521912340 383399171 473211645 128750147 245220370 607027229 722997548 215422692 484868279 382617641 981382548 324302829 733826908 543876869 614858987 24177369 265712119 759193489 952490884 888673455 893122503 929320701 936614127 94874161 603024550 201640293 411179755 800922239 892471894 164956323 671177261 872116520 964441318 999932327 999981189 343919246 432859668 959440035 971986338 597790229 670430536 306708362 959289910 853400025 947195600 41948532 367914209 693580926 729620026 930721357 945040577 552909731 609932368 862636693 942148795 126695515 557398020 757558177 812532585 699853139 840041156 890772886 909658828 845581835 859037233 466287784 744502183 711601836 821468519 47265755 991812847 14421707 601801401 476918649 540646811 948169474 978993874 976687669 996115495 782021112 947009003 125192712 336475428 98501268 340826061 662635063 715105048 776679294 931438229 270970856 413907438 553640210 898449367 399375673 406241713 219101617 459666943 918191931 973859765 810290008 857581950 670026442 872624383 273288592 697765436 703133517 943709303 10292077 268512564 649999526 840971161 446767218 487442014 681540364 850901027 430527898 479608366 637400126 974084306 607429783 953416648 456443475 830947466 410937256 919138379 738697800 993382842 686470462 991818424 485128544 598856923 251977323 875728413 457377883 952792584 683229154 803556709 874130995 905504470 296820565 311446077 235103609 561869074 992200082 994660690 175930016 602751150 428276784 961940214 252169530 359768468 78126137 212069315 781976359 790021671 961023549 999442401 653934239 944398683 548397924 938446269 243585170 894528490 711660819 939721509 572263725 644898192 788422601 876187355 164951177 278595961 909051482 913785132 590958012 948028196 55741309 775645139 830065018 848355241 270525338 938026618 762820427 770844498 635267804 807186238 286012374 549789896 615456419 734898233 870085720 902646589 206201564 806838885 814731531 898842772 896416372 964937418 164771161 410617524 616876100 965119409 73075664 314975386 705031069 742516933 657606895 901188251 149013911 382955326 713589672 779283122 655158995 728144972 171404914 407193604 889833829 931930478 884915887 982155150 139493403 914492804 291179999 485370465 892864043 964685110 16803608 732983786 471042052 784625780 206831661 646941549 245110081 640806559 634939821 703762632 501899981 604194361 352584360 704465463 484300626 732390789 133000342 835633164 404129175 574148936 701918458 807052634 498059450 525553834 678439547 938310076 161581922 573370625 56105118 374552565 178384906 234228111 337408119 488197481 231020118 765937481 467118124 967421278 59897031 844962725 605400029 762481720 286126523 435110349 761858198 934115752 106246283 498599424 947810035 972269686 711867495 726653978 711015465 868284716 314627767 670011915 520152096 603662949 22019088 968766102 448617445 487549546 946955241 982773617 537026893 540091519 95810401 809206807 798920834 883124415 217988120 654468803 616515836 928226954 575914624 944864120 255801202 784788783 872702108 955948526 781724973 796532462 279609755 913754825 911514543 915478007 318284904 321555602 410137138 987496194 97292405 424989618 256523068 766622569 163821997 670884067 483950414 662846722 109280197 269105965 783059740 869542856 183498284 507698267 849251719 887669070 227657867 859211828 136349763 776856786 764130932 846344120 548206757 799568295 530146332 625161014 366118573 875094931 925775515 949401716 403317070 412071861 423066247 603617025 922084020 965142003 105478558 815973037 204740440 360665264 427282161 679676928 226391476 595720000 587693662 755017987 260503959 519299767 713246204 983930608 201653986 588253596 113621067 995315715 745788192 830127582 379386871 425340448 529121003 766643702 170398398 897791678 350502603 495010557 123291561 430920388 278282358 392511164 829079209 860400665 749495091 943157387 964600303 986783483 134429765 316291554 276457409 930126717 409054106 474512095 711342528 964504554 544747705 937213559 319569731 779348248 723098019 897674733 14390154 524675478 158489309 651609825 489702374 932780806 991129814 999065834 741403689 768306016 336201829 692216737 253451986 479290211 929615210 953309983 137499506 174456775 610241438 780923684 629179240 750613979 429970981 993889350 300043792 619743773 795957568 876151603 330208541 773528700 543716074 757612437 397987415 448671303 394182867 976187666 984866244 996801876 862694477 912817233 213424256 666036977 487960284 570119014 893452196 973378713 427614896 897827959 56472891 216655533 448376584 692177817 268458052 268815141 428376840 961926942 290829764 813159876 64824495 133672434 466397590 968926092 193733507 287729976 18714337 379808411 163389150 551911382 551169609 867464997 696135875 776950942 186964495 717331488 875748300 984380547 31783607 570047105 922379170 924695956 826287392 862131822 474591033 628468277 431773063 847981012 24786319 954517048 798419989 983762459 75066699 865227088 618483333 759325134 956741410 981229391 15447955 798049309 891466437 925452876 429895060 785853101 312936662 387695068 894722359 966725321 861604124 867594677 625524321 699894156 574529574 670798929 798023303 981493796 367924850 802687446 788125277 873123074 700586840 764208048 345019713 895870329 839262722 907890560 226969028 466329667 65540862 985911441 870905723 891410853 523508901 931199634 895446691 991020386 920293556 934722830 949150316 993662235 744925521 837318694 323022350 410141477 936976090 984128455 44554069 367848517 193705198 220992567 49611983 555575300 362178200 366886835 839236700 971768471 386380387 525718744 7687497 613076534 808114171 816018270 623086539 992774229 227082027 362018903 412036448 868278235 54199848 711270049 80862597 260836247 362798826 489007594 784235269 960936907 915482170 984028564 173928516 999686157 576948680 649228559 780602735 939125867 870803995 993080655 169435327 388716741 426177083 577515798 624163903 722924638 514600314 833109426 172526532 715340216 677727611 990091803 980771346 989791002 902206501 940739734 571147614 988972949 909251385 952147037 354392853 401018098 560620865 712811648 166804177 417587111 901042631 975516298 153636463 508224432 153396477 603210376 655688024 777877975 461952973 594396684 344770830 859185542 375642719 886106933 91084502 769276883 67803838 419997083 513860301 600888233 563581839 721949729 967395980 986226842 604183776 892919715 529996679 947621277 760166428 989159753 696062560 924368592 178725224 209991859 735780093 965333595 340770025 978293737 647819691 714825853 146944534 643836820 159177011 794717096 526769628 754059304 313821735 837958764 669497954 714017452 396893325 648560927 106887506 157123551 64021454 255582280 639910066 698224730 402136355 420511894 634776419 820975897 480074904 528224818 262536539 472126228 322895295 841900340 178420556 432747960 411949440 667337264 221653298 727512876 572635112 780488065 398686532 874438046 455724083 853374343 914261423 947328797 817958543 837500996 891505810 951626834 663856199 746018733 950634484 965198449 480991805 519512316 557183116 907027889 311484583 926148184 86768430 131717484 436524946 566224985 433431096 662881890 450026744 962005790 601978096 618183373 38534226 450377690 201994459 824846028 310800183 461020034 642504906 793872571 65586081 457956944 29998020 454150355 88247809 988630036 316652727 839245401 854500980 901754588 368952437 638161900 88639452 581139391 431303125 760518714 809424776 865051735 33490174 585349847 235436000 880632614 585888900 593486163 369490480 847477017 467570187 571094903 733497538 910867819 623241880 777808477 4258072 352078612 890062159 927804487 933922706 996548699 705260149 992165404 444983277 756327188 386720949 875005894 92822308 404002238 266614846 852467324 847432971 890403387 869871677 926768074 519485599 867463066 870535719 892510177 260325161 682079994 563919340 905470527 132369448 761520677 106854143 591930247 366299013 829044097 699825359 895206174 778474433 947408551 107520901 930751412 873643815 960156115 516311548 525131130 581804262 891470387 727066702 904803788 225504905 919246824 158295072 567660340 162570083 827842567 846036431 954679896 916265503 948227313 82139638 471666559 683384204 940947367 722756650 784906452 736156240 864629854 449644115 896752340 404678742 609194805 274151387 597369158 328585702 858514752 639092938 918089859 619425340 834046628 288268507 505380704 855238959 997161554 739236917 793453508 469491782 675702094 523475145 771380908 272668938 671653351 733679621 986140686 983403831 991973234 19945764 580851588 312098059 441708714 238838426 758343700 639986119 987131241 436728219 615332109 449585043 975664684 360991684 756633923 909131099 952682079 287092918 357102859 344582602 913863339 57332983 851855113 301914742 323467841 673083636 990705303 614764293 928531643 618853986 690987333 861277852 866236552 207103954 357845051 121593586 650337210 983746501 996781370 200591457 474133980 177585359 808149201 230900547 351888867 519569821 933103949 312644474 716489494 998929647 998979119 545180025 721851714 784565804 964558439 917538474 929230549 129533065 423939916 320946540 415673583 519575318 606638291 729017944 893195402 752894917 941120560 866502107 971764927 269791472 284960172 354795059 481414356 808029164 947348976 102820037 279857907 724314001 818452332 687296523 695891826 105904449 340222903 573574409 895610161 6104246 453998839 856677091 898882938 343998691 952831893 924652364 995037822 284035038 949995139 967145185 988131148 755674952 838570405 695659337 864657588 798843136 891863417 346201456 529150889 663732573 975184752 845742249 873602189 596522788 779851063 662965214 780520267 842066590 875880409 496131011 528054471 744372325 872082316 101128399 336777310 860502035 924743629 638679377 878218369 832796278 847489846 967985436 984431427 866771087 915193209 259340134 603528893 308370509 950026623 291892149 382671850 965412112 984804601 457368230 558282343 355846604 753396512 854739141 942903378 877979696 961772480 867312251 989366595 573941459 687622727 464559424 834607960 366616032 499175862 197686444 506431326 499758829 563827541 396776528 798031067 412901321 646807734 795625772 963546540 740303228 816953573 180242013 783961201 126937064 724497505 787465285 866015702 148005174 234504233 327278137 797704814 253260840 864821160 33851491 421948890 557783933 962090348 728586538 794107272 292329956 305887421 857596985 926698467 888021314 973611724 866620438 888373792 958120364 996709919 847975516 884302283 191066763 607805123 620516772 834046095 573330270 609078423 602851193 834897341 550971381 707229693 52242053 386112901 30267557 365187853 46921002 444989365 519386701 781977680 192728316 753410407 869228504 890146240 849738872 949944103 897570398 951350367 409067048 437727838 483177599 606360502 659120969 666409473 925711944 971660765 476960826 933228472 57348256 168861883 136369312 381410311 152329142 354670936 737072071 922668032 936375458 940496229 182235325 313857241 703979515 958212862 956021166 993534169 214048837 251546393 330638034 665970283 326137176 475934093 881479623 944966448 793518263 985728592 905913191 948610164 887846870 918300419 862723998 880108932 465305238 899396153 690213378 983664467 927427708 958443309 27504495 740005404 396091309 654644483 430994237 795434222 101400767 790292595 376362823 972859260 813163469 828422034 744856312 861525661 920025973 970402645 842717716 921718583 482135673 702816094 562767007 613988907 303419729 324789181 905797031 983629947 750414539 864472725 240602677 279716718 222314647 719101010 443335518 709264331 235024281 729980003 395178811 556445953 843980578 916898944 76671207 294793852 6848226 688275930 441642581 600872922 645853762 814355569 551541819 713543989 365278416 521830557 391389130 447837858 890591989 997200313 238878044 332381474 702445239 836437527 708188596 768506491 538716626 902274780 430722932 516477253 46249040 679837435 812236749 928865234 703227490 751044070 40359743 389031668 677403855 741640637 251937844 990055480 158295623 670785827 444984647 850930805 997793419 999104875 508708879 994757549 557544256 918321699 792732291 858622162 955674852 975671078 101408931 113446321 512213576 658849606 459467657 917842075 211161684 564689396 621964262 719157075 968826593 993671721 844683227 862781789 809862083 942227268 323220265 996469535 272978992 563897938 297556300 710048875 847449041 967823237 935075027 935865748 635168884 648782720 573453518 697474057 289963222 343881301 128397132 912195836 960254537 968967129 402621187 655811121 795757294 950604393 757137869 977205285 328513591 358278812 355015080 887636876 547749071 767979218 397834077 951541097 728095344 783607860 982941519 994837930 554939526 591359116 336744328 833328167 948871496 966980640 131009958 866959625 818912984 891529196 306512032 538081335 324978319 791425094 784313908 959362951 207366977 843464983 260151594 626914946 955293161 966805191 444265060 472473412 454345727 594811666 239455668 350646542 454270464 988341883 305958528 483665795 23433459 40752216 26391678 338028401 670685656 690579027 765658330 927661718 477129093 896435354 646183530 755831537 432928650 484509480 15382087 763785929 300324379 891925731 198385639 704420588 797894587 855285055 622168946 747976631 353464898 801165445 387860015 824155157 506780379 586624626 167948425 796265243 576008211 619785099 573643813 752599877 23058088 630404627 53287047 445629159 616525468 852590183 926884538 937047585 645904074 867912132 989492119 997625614 800660289 884707130 289124814 645283019 569853145 697089549 861466502 939463136 189380995 679871640 154170730 902988028 50772202 877510269 119677417 484412346 494552045 789052867 91757918 303590497 455650555 523977507 219606567 838822619 70205327 600416906 24430403 364504573 654015349 862719417 56850736 582710048 324465759 446591465 775647555 936130711 319377877 389138932 920429141 953875889 332581087 523310860 372469680 909023765 182491799 944053011 323822876 382549208 956763880 963849754 611755501 732802374 200781874 538421673 720976148 789410219 692648705 752315137 740663336 798898787 964844539 966367342 407754532 718015908 385017447 938988957 670455884 813766044 91071788 769819411 676512535 948701422 218875164 825307794 496666928 506145961 603086527 929666546 97335775 988039679 945139755 972549970 952996280 981923335 837935790 942947027 273420810 998302727 467664067 948152688 193071556 942800505 254285313 571616146 184214246 871682473 498137790 865970541 402561619 955562596 870616370 894421726 391521236 994327049 935867749 970248423 947586962 960394128 7153159 596600391 388985337 750448637 798724224 994707838 353721531 485114218 875215894 915613491 726526975 847581559 819434788 987800701 627205657 783313639 833208716 848355870 889241453 968056371 302873477 540854603 938942145 972037369 207602622 791087216 433746542 618219151 561329986 872592584 922651065 937971923 447273452 617862446 745134255 999480148 722452859 873790144 889868309 942403373 515959044 552442024 865685056 894341679 408888282 422915944 892266743 899613731 194760678 893994707 854034901 924993206 8968375 911050206 324982287 435749155 165860531 820357606 223354469 574183243 655601020 845208746 499436376 606665648 944966409 973327412 379030828 384302567 355582360 440652130 721439858 785520163 402876513 648348909 641552024 871322271 879305990 899389690 670762379 962250184 811363899 884069951 515125403 865701892 906979559 980842311 344448495 597403781 431066836 540231825 153486633 474751960 578919339 881473184 209856367 527110582 874204180 909124866 160174249 231713156 569976486 869982199 206548439 871838075 99098998 217291107 241878714 564233557 288094398 750416969 933226096 986099637 997845928 998461047 911681812 915444791 941088483 980076139 537647119 962608680 288225457 672427622 789753474 912399646 362166650 879535004 208517151 446414987 335726528 572092231 992445179 995801822 53683614 333224993 199721224 646637787 177651557 887600294 361227200 549515153 525777691 910359696 952665108 958838448 40070089 343222144 713093549 906266242 317602464 874768892 173071652 599579114 503997334 534915516 507373983 823889436 858680174 964063406 26108931 463731421 44174983 673573951 907119763 999728325 615877649 777326531 959739381 972637916 443452136 963813964 475246397 595624594 162779607 750385422 926593059 967267078 997540045 998673300 411550039 924448588 515243085 913106064 220052244 587357284 696352633 911255797 120366795 918376709 406100271 647626785 801303632 934356287 998328006 998576590 772106395 836649600 134370563 395423525 334982261 521928930 516852990 820982249 761519448 823518370 766991717 818896011 608951229 657987387 488901144 624036112 52134849 837606102 16945421 654441719 931797309 939171870 578569795 829279611 801154195 906444921 520677981 644280093 584895800 805818483 241857536 523421650 494163950 607214789 646726670 677416270 289848314 654610389 438708915 769472704 80430528 702987325 481717025 530360360 50286148 74326795 566148749 934072223 863399831 971561680 21363148 435820247 240705566 963172579 823529767 938478563 147954869 776215189 272178685 656509665 727049908 739131672 617308725 780739802 592271202 669584734 662215749 797650642 65566617 422074308 36406634 321146086 471818604 506603679 444221681 644530838 897811041 925234632 926153077 969927895 5177543 518647721 440780055 543118625 278259330 303317651 912150367 965624950 948207501 954293246 266432128 671545348 43541950 541558814 892070770 926770815 80673403 267147939 443859157 678354457 938113286 975507542 230024334 507584985 307790875 498429488 430332279 437967122 417750328 897558853 191056410 960147244 453398446 999352898 160115867 561698367 452126841 730331689 592710003 921501379 342265293 580332233 66173949 150788151 59666895 335311379 9228135 296405044 565000984 875362181 974350969 983390589 539052971 657872470 374512719 499867440 422186268 479758527 664084480 685497140 458263197 790709754 645007262 788900376 916709252 930280433 805870417 834093201 842732765 873400820 968873250 971461401 668952661 841986283 926373136 943115563 728446263 991613322 700192333 764825219 162384282 707240048 947776203 979333380 255960906 633633301 665725471 688987800 72772241 97592780 31018990 852691577 403603058 529173639 745665367 826165608 313293635 631174779 188628504 191276291 530949375 955586671 626077380 736871822 98980450 800514782 630780773 769946979 619488750 908936371 622392593 699769782 492419434 642289225 785719350 807975263 543565482 979651808 399156886 722096585 102192345 301283804 4460666 498165826 190049779 585549291 42230949 191807877 550769803 670963257 892569769 990363562 887108495 997391629 230334042 727907390 832199354 981831176 688283726 777708776 565930457 985489772 854143236 993061370 194244520 823373123 309657953 716190794 317720327 832820226 616616676 721489357 37718290 208592166 720226248 825111739 114184089 879457355 85543758 364301743 419253114 458655689 185088194 473067712 409887432 512768583 691111475 756633844 509900320 602425970 666671981 669138070 231559029 775834873 219473411 770301299 382299101 538402594 764839030 984842054 529095578 723728279 178378460 393916745 274307170 905233587 12227672 169381041 961219048 998586480 366287127 456544994 835656633 886435280 410243516 602399837 90216374 470253285 530552805 843225870 3429055 357734203 426020972 439762951 362444599 681527936 707560453 949973647 10160480 106034400 753937580 911665881 927925074 980967604 710148263 840331690 816296092 951180435 567308726 830896451 524749380 762324037 509894826 870752715 547473594 632182373 179745920 558414505 888909993 902287724 598570948 879967317 962443066 978837116 343540830 702749319 675296077 791794540 923392765 985201421 695472444 740625275 660405900 999973283 807034364 911276187 186377994 419342239 10642513 555955303 997358827 997787041 430169296 632760703 616280031 944611547 720990670 908022356 530507312 862953674 363683241 660750042 797266659 895343485 475775101 870944132 833270963 856491420 603632074 801013591 908227497 984795905 772391270 884187052 271810382 498913488 952802781 984889409 654898527 721944671 517019926 758518740 475147497 737681169 302445077 955534682 20443412 419778734 550858712 938729256 233127411 977833248 382001987 897144718 368868230 761939258 139889853 857389508 457027547 883210406 840676312 919880699 621947341 815654247 10415246 575732042 253056948 698182418 519269647 910030603 880888546 882583067 866016012 901258334 24436338 390688839 507337822 825992579 478274351 544489434 341480358 534145552 549011270 830459409 71469930 496497155 941710951 993998245 721961173 784003794 508427669 527257416 574741925 929566532 639572674 658094153 614366579 642467733 877692556 902695310 852878215 924320620 500796740 626470715 754333678 947606162 12205305 853285161 928226684 930745694 502235456 560949926 323559476 436727522 122838920 837951970 491741915 687126377 990470543 993285184 644236243 720073718 360640316 664520226 375297360 775065437 845259264 901982285 389128436 659670494 208916741 597803294 935779811 959098945 812141531 868604869 499146781 813681069 895767117 987790076 648291616 871268545 887905700 929899901 234994213 615010872 204932982 260321269 250372371 353319737 400073269 683279270 551558645 568466071 653633593 670256818 275203758 428193240 351545246 536662252 953902604 964868662 355548911 729845433 10308003 108720876 151011752 522622588 503274923 922473267 887120344 937451569 7961085 174597326 779284198 974567931 589251933 833197563 578274886 728314302 434372982 984405060 469086270 807828101 995484242 996727502 745904706 927172009 19807918 296458183 406253884 557536228 855830634 932962077 297725851 578004249 945231273 994819372 120696162 270550458 307853294 724682364 662071313 995624986 513449574 598844254 951318866 966134355 808211890 999182373 758280193 760369284 256565892 326305422 288788182 695568599 592173923 911880984 29435991 928431811 27817799 235219592 696433003 997785871 424882245 850127575 523148019 705057413 516983021 948053802 160036964 612715954 427895212 926082869 476516908 918962947 47010133 563834385 998321504 999551575 924400294 948375616 322634768 897932318 30685849 93889005 160168894 212492928 409651552 934888235 691089926 799479126 791742985 844092356 801707048 978589010 100146455 676515751 109028090 812880802 35702485 830801723 463874759 860743465 571448056 731704487 654729318 836199147 420443398 825528353 846542893 871656257 881406014 988303612 330346442 515586386 977150422 983032800 343447268 544522276 575614012 608234263 427592085 571412397 562329934 705710205 26084207 169587177 692049295 892612596 39481598 183214860 355800271 384266196 911153552 912841327 658259138 962741580 137404588 723751008 25879432 472930599 864183195 940581116 420056862 912124821 67368284 209234096 41517932 461725474 134985463 505584790 444423038 629899729 352470076 457824915 273876542 440739959 184512665 844228447 856360440 960274057 641202970 736567956 344333194 885325356 192644151 791819809 172495808 850275976 466076208 476435066 120567968 491921161 241708612 686575313 598904549 976715136 685496200 923894873 917486935 994367104 121750034 918068626 305813719 943903730 807370832 950936011 492423139 773336681 691222380 714654779 898467858 920653860 258142327 276473298 504447640 533105545 13772200 594642971 917481465 943248795 818099165 998030361 955545123 983470336 641604365 897069096 356360541 623469136 475742192 830751446 371793939 456706069 693831570 834644202 309361515 826275634 811086077 816502534 815608377 856704579 20332808 836318816 56288022 658859449 827359731 927176462 505560333 541366158 642340815 735647426 210439686 630271240 666411165 861443883 518751431 836290291 879348073 880867837 544084773 896024174 106724311 439706976 269898696 769395259 657456947 920837624 798342500 871278053 66482510 674126026 462621016 703595545 217523433 817245147 489022847 785418529 190834737 795442563 420309564 723322538 933010442 985773313 245058107 933840840 778321277 828895332 249074356 572413217 520100484 940644797 42384460 782398764 821468392 826030063 563496670 655562856 411209670 581309245 139577984 160847112 605098564 861255546 477236718 749442839 179011572 658708960 840769799 901158328 802978936 842157644 618563633 734585843 632592432 778387963 703403873 779717582 539237154 992066559 895538756 896904903 7413016 193820420 416330108 509101203 821933195 856263979 638742269 907349444 664480251 896466701 857918212 972681861 863676532 990641168 122242826 593530862 545729663 549786419 734372063 809421287 856113036 973553193 803354906 895856945 672058532 685162412 449765998 607483353 916377608 940555292 621008865 653911484 109649030 683626349 538891924 943646456 706801496 986808979 47200737 723832056 704860994 899932698 1764097 248509127 355916530 514151988 748235827 819208279 72841266 187204836 714204238 857318978 713436163 850764545 487843139 649016546 530009723 945304842 555993558 912497330 318705005 361390978 459743917 977519085 142409269 434856855 533995928 885046058 491649032 553166692 125025983 154248333 876543123 901730979 561587788 712698764 860490517 998258059 816466332 829507409 507204957 776195404 384815450 517775993 880110204 948433441 716484520 787229167 116633711 574383086 539100717 645229260 180924517 700633422 226630942 552782093 102128858 195975014 884448816 959094743 597755993 704388216 445411022 839964844 75722249 819390646 835922061 836524492 235819838 524191246 234633908 237233576 902356255 972546400 293372809 972918136 18047216 617082483 859297494 975062331 590664680 756495222 545873892 581849187 840491747 880098165 558463612 630428673 504370954 693456011 303816669 850351028 387738390 451436948 556535213 788340659 755341321 786945306 998592508 999253121 92980926 123614577 520576458 908560334 468591 558415654 929428718 992062327 736819373 950067889 275535188 893849106 276137969 474232312 95271595 393479099 330921130 430481209 442267043 736312409 336918617 695095724 44014371 502928133 308966964 903241335 538254019 756018491 514916172 732950114 597855448 982812713 952887789 985265116 108396216 123917463 78652647 961077601 27140048 77819453 282880572 675662431 229414631 808873857 123107617 651446576 951247273 979796161 299397379 829660290 876505261 934775969 679693906 902870550 93309928 291986055 246680636 510410765 462140867 825912156 42788024 186827390 420579037 954844512 809480665 998257931 631358524 759355925 587296509 644712898 760651370 864814863 518381422 531281385 282349158 875047210 865609015 961947835 978218459 995819644 520519187 687579247 597778405 943216294 21502174 827386952 308622159 407127044 640151129 765472232 520077185 855999780 837064397 871744046 498018036 915832150 32076195 635155935 976604075 995312212 884887589 947861112 161153245 579829605 583988686 733723221 645678279 894009465 97844785 403158964 518096998 917098145 126217592 569094728 796256956 859225674 534344747 842819885 87492086 905778596 762740747 875589994 939558526 945506112 96750516 506447738 592821371 946557301 792275468 867537287 779397916 926890208 517102576 833343229 886897206 999209206 875076759 881354572 377347732 525489778 757232398 832009193 943423120 964338927 206366176 230516002 647715756 692362840 412998360 925939621 231363592 704746838 550797538 867652691 96897163 665975889 274061054 898479035 686685495 833700783 96527664 756361363 207318831 603414624 142988326 194766649 60080676 985788308 756559785 905316894 563577068 732859513 453341102 503469992 302905505 949564698 298627384 567654050 291447635 931519449 870213472 948753100 580975086 658033190 620406020 924058217 59831066 973976208 778794767 845768929 206332408 465294364 404893345 449410602 789896910 990692000 739229601 753484484 887602220 972285365 743904111 889633018 109755700 811510822 647279338 972541029 580582071 963324363 968185265 997848506 66630423 887296909 747773389 823318825 593236719 849698016 387510193 390317624 776715954 923331096 987868046 994348425 160843895 954027410 642669278 950224355 392927743 398774424 422020615 991811677 277267952 712644274 53335546 457894772 923015665 970334448 505899608 658343134 734630766 845700275 754307775 776772152 214557079 494780776 131511475 850766727 942170097 985129815 687704674 883659640 808304607 963161066 380360127 472933224 837406856 940844244 756539555 922172230 243859191 810352178 743481528 894529395 151943785 371615838 896934509 963466189 917642621 927297650 21136813 242632576 777220458 841423568 205480172 572934319 985785868 994269726 238402416 255066901 204714297 228652030 789445717 826643710 420858434 960718479 196462541 852624106 443867989 803559102 646496191 649859905 958802134 989914332 681976934 871252341 752803020 859290729 273472323 558865551 869721269 918648046 537950112 786777458 766102916 894619811 345336731 916490027 803618418 892061170 972609948 996313454 733071658 852623474 245189124 996200290 221343967 626277505 928587949 933743852 635602116 761320532 907480936 988468356 188416086 349184305 273194849 452836884 206883424 340625265 768850236 912954341 14663660 327847535 696444451 764869905 724676828 928038613 634240487 954669583 241600677 656173147 551691928 625263041 584162535 900935761 582854335 966677304 751201451 927258579 585586501 735742096 851583448 904202463 601922281 854462487 122022627 472708443 530803540 663368830 967587352 981499771 280608176 698849208 383253731 716478265 964154457 986184588 528265483 749728479 92668838 815202064 731315569 845330885 407178504 604208082 974121091 977578274 831656767 948230302 841227165 956153780 796606713 970367271 131524347 537534521 850260644 905707440 519657227 702910467 338179785 944769884 437615853 941534768 557391507 772637642 414758764 770742563 167180578 200677969 931694101 953142129 749218080 824692878 754680743 983333214 549519864 840196566 8608980 584604435 42011577 832550012 179465472 992983553 913122129 951303436 458260870 930255124 194027853 915151173 288267175 489469987 261697746 809119427 417167263 531581478 674451042 953959186 212167676 460966647 518713302 928360871 766761684 929929982 966179493 984805020 615215070 679464322 685211038 741379757 160178550 434914826 344945037 579616842 658237443 809843685 702111669 944107595 580220054 762743551 879019207 958674331 506155387 840230240 267009518 933955846 951059346 981956507 489690554 997303007 318137089 321546513 494601076 908866237 312508956 985907710 518897135 910576316 366483622 689017268 935995078 982597677 68243527 897298043 976754061 982559973 543627457 761862628 964530181 995289315 255172607 718439061 912930845 964847641 511724225 531914386 684054792 786327624 749308295 948249008 939147386 972787091 606122561 929425578 174856760 212684914 159879067 876806662 185691832 293271770 422695934 909062143 697930183 919039557 935970681 987421556 518697720 975804605 67937911 991578197 210559932 909218822 892709089 995440093 689137910 882082036 534932269 546711646 451682589 843621046 82579548 178542610 538360314 795970164 520100874 547334712 730525280 891683979 400689110 872035468 51602848 328721088 787936166 824490137 51406005 237452904 962233192 970209677 942594149 998468903 470801361 848149401 927387470 976277848 508787771 711098464 343346624 466328440 657015491 782949823 974701665 980991934 507505219 598212738 854618726 947621124 547625578 844946050 655186409 726950864 559317323 916333140 734243399 950559206 946249862 983116778 870204160 958109698 559104474 956326962 192713464 364835771 761277423 893158014 58979020 528984204 791233320 889220598 897318234 937758155 628524370 718600294 427967549 522783403 863648544 968866745 716021719 972286915 894959396 947909056 960616085 998364977 625668772 730171519 100883747 677761086 683342134 962416914 949863606 960828487 112626588 279972615 568174189 682679711 14714479 740426408 925699923 938367423 920194659 997177713 597273963 870459547 214347719 625599889 343157913 636130750 441089286 456098061 702171797 802081469 970058727 976120427 848742419 866238733 852006577 876598586 158531991 627814750 962545664 990788611 427324052 972004928 522362454 695328163 417666483 990484354 621617808 974677121 865660300 996213263 528971703 926923938 868818564 949973693 388365081 693729859 253070678 877434563 153146522 481023325 193380911 202147681 549559809 999246335 265971933 547769259 332291431 844456603 281125211 885517439 570778998 741474956 876336472 948523351 293630551 780963021 125078796 471205112 576488519 741195166 669804895 893669909 175043900 493257327 882595519 883910101 516319397 551237012 454415428 593828051 476877910 798970898 253124623 459956842 822798767 974135612 310131637 401105175 949443515 962689218 390994167 901830548 501480076 606842987 176588758 851050928 861323615 948179145 704988326 960334527 438608653 644742200 421275425 670797641 964133634 994702342 576979200 947398840 327994625 444628258 813131100 993666538 795218323 831432183 65246465 363221585 377304648 618085476 84046414 703756301 556796590 622062793 995285775 996024063 204347770 675317658 224132593 962100522 751273102 855671169 545256302 768751879 37440845 465766282 25775854 645177451 349381959 438696440 116464823 604160773 76006555 638970525 835690581 854009394 278146268 711407296 258595943 792916965 783180300 868773952 906044590 950775253 961028752 962002814 426523436 546204884 42887792 513853170 734581754 942453689 100686161 270767734 992384873 995907862 868249844 874313768 615078847 870594293 453102138 818706918 796868130 854704552 167812252 821746954 749990522 889056830 483430730 765095606 50606555 261229604 203990641 578464498 221189155 823981373 553038870 560364039 753346210 874258091 381772688 833316161 384828759 723747884 199736506 402170581 410484366 563834697 168645163 277548054 345606557 783660550 851897638 892667067 161068372 805783469 134323703 772661710 337586314 686385970 190100962 975382850 671316239 736070144 806180269 896543520 463855928 532896135 419717637 818570587 685213719 718453018 425911925 643156643 343799679 852182605 528276219 628025749 812064863 895867559 953564350 998953204 466048250 772008248 450520518 509900402 121739607 477615544 972596279 989173882 515187130 542576031 951572188 961418663 729571410 882161789 388146780 955718931 955770628 993385981 758753643 824318517 320124277 467133896 973625689 976201940 278743159 918834450 721285345 860421595 104013756 171860215 51921253 213473286 565710684 742831344 67269450 440978948 436791997 592818420 97549532 388192111 159490265 376297050 924074134 970239977 611340131 678994388 555026472 918559306 130606105 368782019 416929156 771684826 957780132 990893910 582414085 831964831 780232972 913773550 550781395 953546250 600963440 967823692 130455318 590601264 364559146 519231049 306976079 401528467 934115032 966534793 787258656 805628058 807396249 979621429 812429258 853481496 520008564 940152526 181063677 976227414 534365329 931208738 455424288 552836060 932067515 967747072 325834650 554331777 116281581 678743832 602543997 897682468 385060448 708031589 567900477 943328820 989352679 996614689 889333891 942487680 333861816 498517413 533657469 849015366 764848453 985963620 876618488 942335821 987293667 995020983 192210076 809416696 786328108 892940987 919515594 968951417 277813749 428028960 424413318 784037130 752609412 931206421 80948984 474776858 597424786 646632134 289103953 346490104 736887914 820700658 239161777 829007773 344684838 606137316 878355774 958590804 876062340 973002837 793094133 871270622 49730442 793101618 316201440 492601508 714190164 717646282 810099365 931701090 20733217 158620125 159634375 743973557 995616656 999303238 911250508 982550463 672102829 943235115 877846551 984234914 717720669 917629171 610661052 810527951 907191837 966839535 589482953 769160731 3654960 751946301 489168177 731308351 155333067 438010322 228700221 234231525 663748939 895220874 394396688 790515490 813903272 833612438 256087212 971632841 572645682 833003583 595453177 721366598 952628834 988475600 264343379 757816019 308717429 873634937 506118277 571832655 817516262 924464900 422694363 508443811 525275125 699579825 917224599 957291093 303468947 784441445 825849972 858116314 28210899 547109215 465278456 513698129 510710695 858061065 774726105 929637885 728421117 789830491 165325929 496832003 938255806 978886979 250857635 268360359 8354521 732656445 512980280 549335054 104043540 397617109 749748715 963512589 720776604 887829549 45871411 370594631 201839275 804918237 292863302 310980518 603669754 632600174 1509165 49950711 757102148 980393997 683214119 771058437 22512812 483224809 830288012 835688313 490029569 877383118 809402145 917418144 731701529 760776907 243237919 739978065 211438384 944088668 724823028 886998032 991535740 998742346 827084992 919242464 973534156 996552271 131133412 287922743 732202784 899362961 249505727 692082557 414390193 688406837 414305463 971366249 867148798 933795458 813443336 981347525 126069707 776496832 556002572 883939171 376313561 615252153 926115374 951733953 296941966 361518152 190078439 877305121 628130113 973755972 667682863 990008699 229390624 397346133 216504639 881402604 237538017 640413190 568169475 955590572 851514274 855266076 742737349 839952948 879494878 895521886 538533693 587592261 32550678 630997560 543996364 872541418 683901842 852397000 239800743 913077606 328956146 464024552 218406762 773198234 469999508 991423095 108366504 698784039 676201380 800604027 778468448 899702041 942116472 968823085 444301516 963110311 713523688 897616528 818134588 825855067 719762793 897042123 309556360 599657582 464428161 557753439 69485929 686917716 386208097 617680323 831639566 865222879 470604235 986520789 419676654 772427560 218132031 438453328 303803804 789908711 461442310 823608459 491117233 861627450 410201441 643846128 833604970 900372588 140985078 263369826 441344377 694940372 381663604 593220657 892294086 904273188 58702984 117102519 578603816 811069347 472237129 794254349 412064968 449166559 533066177 884596050 982943096 993652992 976787794 994865971 113648946 521592773 364575981 891987262 462618171 576290073 225664463 780452767 396216488 678470556 797590472 870124374 473004286 872293773 520043010 666131239 310502648 433901417 925419428 947729239 344145363 952262028 736818626 941751363 165347149 221394650 827499999 953568377 947374531 983104353 194674616 315793374 799969862 914505922 895253798 953459295 924246948 952128139 570348579 595275743 712091360 925114282 574834235 864926194 250331706 732297264 198880794 442286212 826124322 855160828 563353542 840988931 565727861 921833090 43140810 343083094 282993423 868346045 68699844 715384096 664403868 859118877 663620990 765628841 37192166 686066309 531262665 935384167 407570077 417447452 146132921 389142423 429230851 477316656 384382153 765264848 361432301 392725288 43569191 158911794 835623940 922191752 346401602 662280755 243357709 800091900 184429655 295975053 232111791 636189932 747923350 806351097 175797849 950127775 352184974 875552585 680461062 959355337 595025881 885634486 524932987 928886691 708302306 863437849 671587625 858842639 506508437 559964943 329783953 971235167 207169561 965625554 21724049 387753737 468778493 489582349 833958404 991756128 957180823 957515694 373530771 895690731 628341702 723380202 329075127 513192871 815316910 990141946 495196873 522711520 984225751 998749074 371378038 665890305 639262439 695440652 956694468 987345113 777392276 978094682 718249955 793683910 646444905 917029294 747848831 903180943 698516054 698964004 656293654 981977971 680209883 784872829 654152659 756199125 498826699 562780263 4845777 330879809 258586496 595854299 217795614 993154692 275346261 654920663 210613252 619401104 753767228 956510528 724799563 752417135 465953769 864855037 772690217 841821532 918430749 957327281 354554245 713435304 412745867 909752981 811475047 821465140 801075411 911420401 236262334 400006505 676607414 903311478 184974109 883391609 715458872 798228825 979882071 989918276 309591030 503016955 35695923 238722785 80545492 513672974 202183653 923713196 677458313 853432172 137039335 309759242 825145647 829884696 379518777 479788405 352841543 769503156 765388703 904954637 993041619 998121523 81658701 475229806 931196178 984703429 456061187 836966071 92670390 978098117 262578501 758947454 258872142 963877912 376843849 962508063 606239363 752220854 951419122 981262455 669129098 851289868 686377638 905907897 605063739 902449172 223457905 260985297 641332400 823000468 214998467 505072217 453689112 963116385 193025471 374058246 622085188 622523336 862215933 999310945 865868542 897175500 618489377 896104559 995255779 999291621 362399133 804868526 187347361 613148609 876659267 938350311 4859994 991810254 508801506 727793491 873396719 980345945 903536143 912841471 338845845 878048514 900863945 957601307 852449590 915994762 719457780 894171857 884031060 953146955 825977227 854062765 923252061 990299085 385775665 808245854 290283253 517115966 170165434 193026408 545836692 562840112 923039500 938208847 35178388 992852341 521526100 879353229 677750649 754609049 308290 456695753 513875784 665860941 74530819 543870300 54408290 122357163 881694283 965278143 297419687 691391666 178869329 645295907 7307720 488091162 167436210 173396905 253378919 548056555 10386599 474713177 808301132 983417114 92840394 338159098 697104325 967996751 815213750 937036280 413102166 438275491 756690541 784990653 552582284 969083569 515541483 876259917 435895970 921472891 462720639 481291526 586843919 658104865 130661043 680489292 783694204 947537908 255636488 391839129 197399711 687097133 830545348 883705788 3000817 773664493 828388998 928237668 465163131 804746365 831310422 949647781 904264869 916857830 639320879 785718664 618327051 699635068 842450829 928116188 385788355 527217345 856420183 963367407 971740284 975465285 182447489 192038445 740589188 775718298 650332256 653588977 962360821 996351613 389622917 640816330 388849710 774743369 562573653 820712311 2751141 779712190 173405419 905770240 525145151 880575773 571432204 740846399 198120384 847010421 239460318 821716087 308158504 685617367 126619406 790657502 932961657 944747162 79893698 284809073 996188057 999130314 443531927 800221628 510839643 939909525 585538220 606232207 292272772 764782211 469447376 588167076 132889598 888898729 172861382 483250372 531541676 619587801 215615309 514592015 305650632 633833549 510269217 967469141 215166273 238281795 703799383 890873998 808167082 841854958 195195991 859247722 900703965 978770947 365757814 624368639 846043175 998763043 852226622 913823814 821888246 846936907 994683235 998054031 224895872 845226570 884857150 923976188 750740845 856219035 171117171 307315164 101754391 182978461 776697882 969289721 428962559 691040267 269736564 957902350 461493401 747593657 326600957 722548891 860975044 983383419 469678449 861058028 247963196 605825104 266759737 405364509 788719815 789365877 862161105 927801705 849874645 850643496 544023609 806735691 742556647 743447963 467711659 870125943 622110673 854555808 306349330 461855348 754834806 852713050 728382467 818760857 961257856 991262436 507857597 566330698 492365793 815508160 507838037 727325768 166903706 337539008 13880569 48697151 722985450 787143264 183995323 974349217 398844093 407758761 378400232 499731986 682475529 746648667 256960820 826963461 431152102 730386060 378639234 599957477 768929683 917538063 98595769 542694624 471327734 965902239 324648225 360010582 358952579 426269695 592901435 868784953 524312459 690111659 328219127 735231054 523900045 736695290 659157101 689059828 981231883 996421259 523413963 879201749 679583999 780203011 189774344 804479644 337829121 434124384 526303793 966280186 222526333 967853281 203510987 221430940 57590256 671962186 999171902 999863493 965863582 998662096 942230448 970226942 537783658 972611717 412929814 844272457 773722160 974939384 227133559 922728837 80377981 792011369 57932145 748765442 551594900 996254823 366717147 783994719 306715095 504406752 317143752 678197029 234857832 985987625 596188176 843061439 937997519 989381472 532189153 983709967 116729481 904517236 613911018 709748281 173675598 708204179 12411164 26088513 281342042 390814541 805778040 944936297 269319467 569925677 806058327 896682867 509238723 916104283 80225655 892354863 442423642 887598191 276818180 311202032 786129556 832166390 784208338 851897266 912254486 980004067 841324405 921147117 885216226 958206404 591290616 600182335 139031966 289135647 7555604 887286658 761737804 833690883 725839710 951804840 505003665 871414989 68103277 388518622 40483712 369100101 319012234 907454520 357128018 738571152 582395130 586350389 482368253 870014880 727971176 748260223 421647453 595510421 162993857 764406821 781173287 819873879 853490224 876964319 733736300 756553353 737031012 929019253 684144699 716994356 636267002 790011066 168142258 254175955 69176960 911289580 121646225 122114697 514229562 789548509 668247067 893734341 792403750 820445458 389551626 923983592 86374508 139270387 685468456 868387984 115259903 935155469 99353695 840702689 838174052 997599336 847919881 979128977 644987892 834422493 906308699 919250757 28512752 770416714 347403866 401763621 836760847 967312678 350841402 639761314 961950991 963019356 734495000 900733928 583805561 742373373 785182680 959274838 328094351 896128559 163245912 987886976 502485120 722092128 416065077 527610687 566406906 984403108 193373465 584152103 86572822 333756058 999995758 999995872 739431238 789214960 261333035 734295606 322131046 382240773 405674519 752260501 450180726 754359775 637899552 940366241 765881411 850353315 212214222 345170797 241168231 955683055 462366597 882991336 923990754 983045665 56226610 812090377 103556593 467323613 99228263 557860975 152871073 654133048 904088195 933984072 753168919 914018371 194454326 432463861 353940953 393622700 408058033 813849599 172832783 763339263 842632755 962035045 266946667 994340814 300602482 885334704 731226700 742959995 164047336 186194555 187117105 594386624 328225913 738205179 431269010 843287336 346499824 758761323 219554 871087569 758772214 970568943 112209525 193105516 913497909 944389047 382735708 995038726 103025135 709823959 997338723 998774759 486653749 538497751 184191808 573073931 756843468 940201730 730366429 763118775 625275976 645248100 703615260 955958850 136498531 306178904 654414533 839833048 73880230 996981884 409749660 502654603 772055752 797555846 859726412 979451179 14227633 336095833 199922473 989059539 331716247 516107654 564915129 745877905 772124501 926310615 927365022 933443624 450131046 557226735 561671558 723237533 499859413 801224216 818706682 840042334 631115262 983760246 241376098 621797563 276860797 779083352 646629749 702870829 262284984 447417373 777981513 936980650 333422782 382173284 325729993 331684874 215899367 829908544 723545928 889535142 547865533 819129171 617972104 828119162 78433640 610345271 896856137 937065169 308591618 574432633 21662390 609677585 925515618 948375536 460758339 824442601 596260554 937137485 589473316 762275417 839573774 885479987 181788761 612654494 188810880 665049771 793816008 893450114 771912965 986639757 475453886 859043741 278131151 278802757 346393827 424975757 416694967 620999615 315002432 523492722 748550291 980899425 233240727 759912377 44276387 642616468 472475625 724381293 467015751 994027537 9118905 744460242 38098815 48478627 999570654 999933382 268113590 716475575 140503801 536615613 849420992 971767034 665644660 740202793 570255930 636340990 743254136 974746997 612301781 890164325 485968198 949750885 259762543 556212324 988787100 994634284 298079930 324111425 380072677 506144735 603118418 750642690 869791937 996301256 416134431 715886099 64168090 357901009 641427033 759904999 916902606 995584011 948415366 953419645 718022852 949943463 615277496 900472473 858915349 955099988 762632099 968814348 390994713 661510271 396956532 844744640 293928367 456867837 859632891 909560902 450986857 666352822 457294059 608489296 711061167 820651803 705571139 767499231 434309684 666076368 504350981 610494089 200729402 336052006 232422633 577051522 738908637 949200773 42819350 332873108 136605201 862102331 306651986 362077512 746060534 920901008 648264544 875390344 707553203 912366832 838048836 871383039 485969926 675676856 349562852 746993368 98217451 246916314 645541709 786685364 961275172 981692859 425551410 906832347 730174735 756906096 110032631 434139423 125589071 875791182 682045208 717825959 316561444 582535500 507283158 777675018 136192327 807781001 782585047 819592098 661418978 731599056 324964183 837245716 757994301 771042944 603880194 886465533 266933775 563652111 36390059 768398529 961575162 974873588 337421832 769920872 553073478 898749008 295823078 512447466 588025861 784774133 926184404 971574931 134102266 827717418 345203880 762881189 423161742 802024120 845600651 939847153 277211048 432067073 772383361 825932433 856244183 990086769 298612908 343237493 821768838 938303060 906412371 997405535 637459732 748777023 34357319 890297055 615665535 850033946 181911153 290126239 121141628 400090128 480727367 949178602 716166018 838479040 403227694 581003763 582741505 623944423 158474941 676179446 211266700 603563539 678564608 874140230 695083580 953484495 471818277 603221895 239055983 974603323 361013101 997885297 956417192 994010343 28389981 599651713 164611454 777592673 275473374 737710707 371343425 613437370 888666745 986313574 106708106 664350489 951998171 978319499 234682935 431412213 562898088 807287499 198427054 993735924 790966964 904994317 617422081 942727889 995535213 996767178 67112150 605514937 891979769 950166702 423740744 666992035 126016154 411408453 888260571 914719800 120095218 456524772 933189507 942745491 238856338 424443284 194585162 415557535 872288637 929358550 497756453 686798049 8312234 540535180 460087905 562542010 233942000 642762434 941443222 946394278 53985078 56781924 452307240 795627238 737395369 738273597 867829885 995559649 917820339 995105663 448996494 647877172 677752134 823728330 692797411 822578393 886209300 964414371 748386878 882343015 541245897 852782943 891495007 981466866 825371850 839645696 424281660 541851313 622471975 864270284 434027093 976358089 785553471 861265995 24458890 850844017 531960531 890446459 55587663 757828696 436640662 632185036 483199129 911140514 810636058 939827600 785909208 978250876 708713651 890767929 168985988 607803659 694307794 834617702 368262514 940790935 937286012 959073299 910644619 933247908 881852537 910904415 654037971 701757830 869536583 930033034 619633553 844305748 238711430 728557163 683904869 923705811 306660241 405999846 105158869 759533623 127140534 719794680 49461073 457903383 181339327 555767575 865251262 992285184 61672266 583321672 889350835 899716877 136816634 635999905 560711338 635670813 536565278 898044318 733682225 944230866 622574989 806678842 799543701 901444087 796923040 823195375 178195853 625609706 31421794 965078385 567826669 669367157 292938115 472855879 263806989 342415300 340523990 573914989 457575185 459529095 100191286 824920012 851432324 955718652 460001087 639663535 468418317 496998052 727118568 844410454 70936218 916237949 601397680 989567453 257424442 857642091 971437085 977555552 173533660 476146677 402447384 415969500 622509556 798690617 985738452 994063776 684801299 692674967 825664587 969345956 291564916 940646857 132747864 555361082 796729616 798768516 8106413 144534650 135685286 775773928 54472979 937546058 378478849 903927915 836001499 918886935 903074194 922110721 855311219 910877637 186618850 322950492 764765585 891184733 69601233 445312844 958970909 972515648 86059599 142617899 261298486 798425196 798783328 904897515 728888165 859108335 709634653 833705169 922006064 971456485 788288782 884137809 792661667 864978622 589101124 911659381 474998325 724550666 422017109 739798412 159184107 720939533 429487449 958460306 308837704 515988201 486726170 597805968 446319279 801932590 77438190 355751576 958511553 969904582 383607078 386715943 159948859 631593299 91330764 375194407 727669681 951836650 587557356 809794640 545329840 806737417 212712530 320759889 187434029 223931233 293686933 993007278 319149361 359613005 628439049 853512207 688306233 940878294 995874601 997805022 191544659 404163190 250007729 936690659 797656142 873666013 825236077 944920260 606240256 982470806 828262076 828457208 850840340 886098846 351064096 628254850 660449490 727471476 967152135 995135041 896698237 983346007 385958477 422823023 30306006 665626513 148589639 212912057 766568336 985806812 493053871 498624955 932570686 953114693 309684157 956363999 12854363 58555951 251530813 979130582 545586293 941263035 360398082 366702423 209621426 868487805 74960039 89452076 67506362 253570257 150735238 257709126 319301657 664162717 341356196 629009266 345166099 609926563 415639460 905516378 829115427 902961381 514189950 957395556 175700004 610300659 188731208 281088855 827273466 932496614 28889546 238314656 653223766 804691309 31496653 676088208 216447948 830560069 743798719 911935529 101139406 134226518 808204756 998855925 475020826 894029964 679169038 855974644 525207736 742831646 726056068 954328085 81430353 153730912 764251512 786976591 136560778 196524950 366645129 795930619 137484888 181253207 247433439 638148566 618752802 730901046 729209716 864001142 907900596 930001693 279152033 750457215 593611736 719723370 157174907 930043166 186397039 288711355 451486982 520326420 991442392 994795500 954673953 974039953 129291913 630766055 242558149 649991342 617417055 728976719 405198604 684774554 405008751 750558118 151008894 556945613 402076910 644050239 62344999 953601245 225384935 779512037 476268832 573677238 881614569 926570011 995423557 999641905 500823580 539255524 658100224 763743661 523337963 643458518 893700796 978410700 944893452 991835101 721581111 816708192 818670845 895344003 428196026 894403052 327565362 898345212 420948039 668077011 37693599 638256438 111924067 994824952 915130300 921191730 521838514 692332914 338965477 881809129 242460917 570703217 955274735 996894872 925161365 933754331 648694826 976703362 745605265 926041444 487272355 906618174 902460196 929232353 72180786 397103797 378495910 846147361 629541790 911052952 793501597 970473235 677922111 808371124 951900537 962054973 5888694 467874784 961166563 966203829 715043344 844670124 475665974 623373151 351166212 561997758 346013168 578937850 378999713 655914618 946357537 996940869 332437814 697450455 328054377 475659063 269031790 743722500 9257810 631087163 225466346 376618155 429688780 669009224 484219351 884121820 260888857 277018045 244901013 467162506 515649630 930697546 531002432 583520074 666917923 764242781 581733869 861058295 47274214 328506752 907952559 918038497 442266080 787889558 98661094 867222077 718975110 888300728 851755838 947431772 847248712 937414164 845607605 898801740 412572328 941475576 517038315 789004502 458615909 888302540 794245982 842355650 444009423 684243334 354124033 690354162 473008615 615510331 396412224 654433438 592951592 716622903 98678870 321879442 378761467 496413021 276098163 564093731 930623550 995078601 350722921 488095811 630226046 716689081 918515157 920915127 544445553 782634188 695301279 974954848 267765462 903628907 750765355 957987458 440282991 506265203 107045443 738938523 25318438 176103525 434142012 473401542 362734432 605819971 541371185 953467762 981471842 984608601 910836725 930053512 923775732 945713200 562061786 756288471 737908285 986355312 581966433 597043822 379474024 408103755 855542594 874827047 332974192 413348683 48204192 537340725 915872611 995266575 24917765 533130492 156454482 685691934 724431113 867723005 887881805 988362888 444177317 769691860 614987535 681923316 974274283 987350859 31257106 211829896 475790549 762939422 329078322 441746527 994741395 994792410 815128701 957075485 519332856 622508707 56416619 804089780 998582265 998599431 267036177 788280621 421300880 840232191 925847951 944729766 922067805 924996502 194983714 994289969 972679384 982289865 700439171 860681609 228318638 899794959 477558327 775465632 471473950 698162172 168257361 577831979 940187960 995183561 164538446 533562907 792589437 847699620 476908776 884415815 75043909 844265313 856495464 859851762 768018558 903514643 408776167 737202369 935410981 937043691 420992534 542852137 18804878 342605028 669326237 866806797 906421279 967061347 302482912 444638814 41759161 300766782 420865605 950957323 992597708 999671834 549903385 878092106 771334457 782909761 262963066 549540093 589764008 767056234 664953850 883979277 54957934 226786797 542263016 963282987 921262642 969507296 536067427 591837089 460894793 922912818 549305594 856576876 862503202 936358938 467645804 796978499 885471807 990909241 522095990 657830785 855816009 863350517 821360782 947154236 707080290 814535039 110940084 202021047 625990772 769354762 677758815 783814024 473056931 860789701 513534550 909093331 890719044 969534884 452254653 498847990 139249083 691139275 563968033 725685259 757831455 912261209 314673078 727068671 488118107 901080015 579391608 625759406 355257016 549216396 697580869 927717286 821036597 918353712 579883344 878834196 297487433 661275764 675335153 827656938 794462596 829991908 63927977 360217631 530466558 587132612 778234360 885019832 785544131 910301363 575724296 924299951 209033740 521920493 787553432 935627799 770349690 860822184 925415991 967252837 522162636 567578356 813944310 845273760 540571564 554241868 938429106 963614207 190580647 703709751 908802984 953008841 209118869 239236359 680134602 975030041 608852529 679741336 414823832 525473710 644434839 747009468 820426791 970462084 57955581 925760754 122753275 609599625 144438778 353400235 51216204 348907351 828193931 926536720 264409296 746938953 609642817 982812443 596584689 991747467 465078469 678893731 93404368 580765073 11225219 922147597 25572914 36997996 860886392 917787331 705597807 758142124 694241443 788254754 386413254 466483769 252424965 980855423 164886526 468036016 351785538 959980158 196861704 207689476 37477494 820161440 700381091 984787583 820477267 948697627 307175928 681309874 939796402 998110564 42746605 853927572 940650884 983195089 415291905 863331031 517742083 784491649 662926758 749261216 855953644 959694576 903020258 995572800 566062300 745243119 686972504 815741589 592690499 662012251 189054186 298043428 433533495 863441259 410813561 980756635 852730246 917088465 171655267 911247105 409942058 664666627 467162083 623835848 660438092 818856851 346799541 919892888 886114199 906924711 49782702 437090922 535508915 632320802 96421857 354902052 412198943 781361185 232465668 484742805 506586262 662836254 517059247 969830554 998285400 998398201 184280810 996581524 459298612 823320358 953055066 979318116 53979597 939145002 605417673 708865397 238304683 954778200 152942760 959935879 540757076 541960175 71874836 411060193 492695928 595364525 648401559 851160331 279743072 391600089 324292831 629624869 970511817 982486569 484503487 760693730 647501862 680251521 902034912 961633737 753866561 892689982 636996026 994227222 600772424 708735827 152232209 395994257 745680867 834730777 740556269 844373837 818679234 833619927 216524459 427296237 673287288 810723680 252093767 719050215 275022943 357755870 308010530 978027032 747809687 951006417 748660397 915228729 700527239 936507548 63903992 406399798 617589146 733341115 351895882 443584541 427679540 432025502 442464634 488300358 291651979 508415018 30441739 77158439 505481021 590998563 819152445 853247806 847246218 855258687 929558341 996405624 562487987 898753287 863293922 974977723 95692587 434702769 394108472 681180184 702822774 892664357 871960454 973600637 525161650 617743880 830647914 982862824 953248635 968066841 817201007 849882411 627320561 754060358 404881311 501852669 234906067 423868985 388556260 453229100 613182697 911968308 701472526 968683724 909210079 922768683 787000343 934629153 952643088 954705086 600260805 692460664 545536226 700950923 448990059 512866633 257449211 272228703 508670157 788151681 770777951 774781755 801312192 831873499 880567002 941902498 257515698 690784107 810368025 892775832 725274028 875744775 669495036 860838744 314420127 480621441 259553632 503814694 950707090 974647464 184862148 727045214 364919081 742962274 356526082 519487600 812162611 836569919 622483760 926266920 274035183 456326860 802492636 889047047 594729559 947972633 121135394 808205835 323371587 574294838 282695587 678592881 155676370 432145991 168939483 586921053 153293478 756009955 906127677 999250489 16321168 320792145 845962274 935323671 309044034 395159702 426050463 874814788 49124384 504734564 357921255 620945504 526950355 550425127 178302287 957135998 933122980 998042264 600188453 817257616 140066213 308560519 759661475 808142230 259311796 412939456 76511 315103274 951083963 988961281 424568249 512007669 975146765 983077812 260036577 399394261 404305204 988519866 378265677 532838896 275584623 826155031 198556363 397673529 255938870 611328220 924782920 995606690 169988707 286903234 57844784 580732308 845792172 885872977 133372411 222612244 124779744 665533007 499122890 946224888 19635020 172828462 649903454 786793686 201426822 516343111 928499931 972033149 649963297 992042016 240051022 331605842 372058194 440910031 473177563 720710268 599453185 608385864 922673047 942406442 146096671 990329395 642441091 676137495 938499467 983533473 760734877 996305905 228239028 903839106 246408131 719723726 363115938 367476307 15205058 753852000 949638146 962831135 552114197 695586346 380261185 752173067 456325523 849174692 285715516 581962964 258248651 754328774 859380057 970286191 155017378 269088115 718987204 738890235 864551731 951339140 965891985 966482293 480328687 689895466 306832734 642219325 318857902 643094443 590080788 710184122 654792325 857949148 882364488 993307312 735685480 832454740 369780695 786193910 373520357 583079092 568857092 646832764 600832468 718918555 576848350 856304779 470177539 982569040 438894202 864373383 517390011 949583729 579571144 667481854 161244837 604887236 622085232 849906137 157792997 751799192 883733589 910604614 582882051 814525698 980629574 990424933 71263722 317017692 538159804 609418722 108236007 518002525 74041751 116053639 416564818 939427178 909429318 951309960 621423323 940426748 62142615 405265238 14094449 533885724 64961892 887081443 77996654 256650965 257424370 298262270 68419480 700453094 870105936 977719663 914108615 936392651 923329215 944252105 913098533 981295453 169361722 279204706 819311620 974539056 705436331 839533158 208413461 448608730 470492945 750318173 74175173 779711713 361814688 980631377 67083149 266387004 163252528 922810822 153920902 863892768 460113572 972912149 324220885 601888326 651231559 740196135 47444233 866678626 367577506 430905804 274964605 534781698 454030336 674633493 327979284 496204327 495455293 938796985 482747011 831077767 651262623 862379908 925778763 971358182 326826235 714064331 199070992 450233629 480349546 504382081 200140672 714099299 320783318 369448686 302725620 978963483 917062360 944240412 248408203 336173415 635252387 931821409 606656480 978658937 947398778 993960262 399367830 988635161 161918061 922861041 286968634 353989886 32083425 166083879 202451931 649779383 357508649 718262970 827659561 956944531 286106552 913583207 101434791 625170345 159223170 903460602 535723224 828449328 628849899 805028591 322827995 792368921 545020096 678504489 643458706 918380154 54243329 552573181 316268589 724494575 888877197 889742997 140389792 496978040 244268504 529548252 885506440 929224295 667374968 929260596 973743608 986755267 223876108 246304454 744165840 839817710 189011214 943590607 298976129 795528085 620863343 743598977 750132556 848002224 738803661 957695470 367305303 700477452 146015871 272152605 843435814 967119740 720262855 821448193 339722685 554720148 676421513 888580969 499939819 672206867 603365920 621008778 250325144 900084027 555022978 611223247 236816269 238667407 826102256 836221120 929392484 981489841 408004309 788349054 557770863 657749513 613100010 683001481 81676216 846185493 449823211 744906867 7248058 432336758 813829259 883900356 86820619 402854650 705436024 925218070 216528675 743461588 901216663 998203741 922231473 938665856 784335459 963443927 128556887 321333224 849412051 961544309 249118327 333535085 400769185 421729453 707092479 996331178 437211533 715820249 905568438 997076335 903995592 916975089 721430635 910036342 977078646 998492657 333447166 581127234 886277922 959750329 482921868 552988084 504004690 911751495 241017896 693879388 829118774 839165883 752346080 759819066 59927599 624544188 502752444 723519275 265972161 752952658 75299880 333076513 642803924 870369929 296484145 414201323 11065831 501528227 988668236 994770702 993555637 997068871 906842553 932532381 356577654 916964058 207398319 217367816 557677189 576581083 65803388 235487037 615374042 858711715 697820886 760066912 51391428 202252680 740321959 973690108 52085071 665859531 216926801 335034014 305666549 973960556 387527348 813428523 194613157 997569249 86061452 767183029 848531772 990458219 207543479 837498445 89829186 942852882 968267076 997584557 34257616 782937374 834298761 998713013 468537369 583307051 780214411 971945560 148913200 922756984 41297502 834392374 985469327 996563376 983386146 999525347 167193263 548805930 762724584 859829684 107177989 117286810 129332863 568545818 977802782 992088902 414376363 735621598 617674252 674545182 59102916 60540772 793126417 819601288 39306623 519612737 713635219 968879247 187292898 716708968 702591753 855023440 435862732 974987284 635488416 771055671 629443404 813155914 193576090 314137609 823809124 936513081 631809566 746717926 213986078 848112444 780315817 942267654 102178097 615172960 229108235 844946389 508874687 884079094 520315845 550125877 498542764 779048236 581411580 696557134 630654305 661812836 808990746 840589578 922414187 925902999 880531367 989698447 651608150 948965435 925646621 937510740 414739704 819946160 205818873 452379752 494033990 969450035 284247139 730931559 850169792 928096912 379605919 954332859 491551358 538007680 508854538 530026543 374272300 786992920 162844591 692276232 503601947 625256329 4995029 200933388 335849683 452458915 234121105 515107556 254985517 682549826 143294189 493120465 730530383 785997448 591809091 812594901 549379779 934599800 684473899 748922594 276621333 800300192 524392676 995745691 652548547 891882980 469540314 709952042 306688822 492517289 560585122 854084063 83056194 109344810 35505871 528021280 245375411 366684676 163988174 389869206 933377343 978261989 423045355 668568423 704226380 815717297 797795844 850765684 296128306 558105434 632951508 938245956 332041241 944494955 367456773 423559499 120020596 732193988 386848315 674179818 535242225 585840385 88113162 782673469 307629535 462470977 563179210 778526526 655628852 742585281 193708492 884042105 678121242 778446429 148065712 396745851 53074974 454277622 68941885 73019357 729537691 821071759 76801048 729492133 862136517 895885824 139246398 700283605 225757603 969501987 353189759 819733881 550299889 827590990 966741322 990225958 3577621 992096686 116324642 797161608 794708043 980735514 597964941 765232349 460321223 964644002 301045437 460361810 968034171 991955677 418165195 752253868 881773910 918243334 405912339 543622186 200221734 558177739 390586902 625095717 486351611 860035558 99039591 955944947 853273976 912259653 849195146 920714535 142606430 671719557 456891317 540841954 688272595 922352919 910716692 997670356 61521647 121103975 169916831 758956804 274049770 803397537 639124134 670991885 984482264 995102022 21137412 629571975 733765188 933923814 809233864 838102867 802436527 891925884 758883230 951080710 430016318 533162185 742986937 835450712 811707107 870791104 522213050 695572394 325583009 687608172 218797008 285305565 401525424 662020874 332367413 535944727 549582014 802837153 99491520 867583429 102338173 172655735 222183458 912218078 498070380 760646366 344821959 644042907 32437439 435265084 28076746 518419597 414030757 950587099 804931878 945887172 9041648 307483996 410972814 748662685 286797693 970690214 411476313 495462674 41395116 465404895 586090219 732653059 949717627 970436900 581919311 689297731 339174278 605710075 505829918 522354311 848883599 919130735 337666157 487578176 564369722 884095237 736800240 990117249 599994638 645341498 760197246 761404018 411636844 711656258 668221248 721578508 631236716 883406975 500703753 880737212 907088231 958812835 506412212 673957512 297387268 901394022 971049212 999373777 511656077 971452246 852932425 983746323 586359275 598643296 271457566 645709401 175836342 190980932 379727142 916616694 202225958 319695230 191184345 894262802 952817969 960025158 393555695 406532383 165034858 394915369 648248902 931408207 46767233 262619009 529647120 555430819 358701573 511268827 465127235 726520071 39079501 154715277 886129446 949778536 204830284 348794917 992850979 998304413 923247012 959696208 971885821 995086050 877491597 965678268 199759498 697684978 884441053 888793626 957323022 957868099 851430882 995169879 47567533 425560955 111974344 716629578 119396162 305812394 413306778 972344919 615093791 793175703 609357450 971515424 418215801 812774453 706971666 831550903 431654501 795210238 299468138 320403098 994021003 996050317 17443975 375686120 364739207 739529763 172247018 345429413 346947903 631731725 533235615 987972411 184407218 560798870 781871737 931713073 328195348 863593193 496408374 947204174 784013086 840434262 328820297 634399635 703011497 952070103 468771497 876142041 690005820 936345377 318122157 552442354 225035111 509896406 143321633 437855979 247892469 880479311 863508435 877898590 767348199 950865490 727760244 927406899 955769563 988627559 189822578 950689550 200786540 549311001 766601491 835930565 583568286 910278877 961198834 971692442 410043415 938512178 127257791 585737715 876694989 951979772 469927069 820661376 285673443 833271311 452518915 965479756 284234811 427826590 236258540 945365777 10527712 384660754 466588276 467454588 59462572 581678587 683789619 848989327 283932721 568459788 14776342 248879601 926638953 959879229 343448128 685774585 231321226 717299048 304801613 636277504 493653385 877669058 690929259 858276436 528190263 943904699 546100674 729771629 732183417 873424865 692930392 842836369 410513519 613692811 358772640 789335286 620191834 935648027 593574300 792354113 359556470 694482010 960291149 999417642 504458877 592646043 901689298 902301918 102761136 787635901 760080654 814978180 672020386 977923981 982620005 988025598 285453943 906150139 694815188 772975346 286379271 926177089 77950947 362193570 510436679 988775899 626437711 978787995 395120339 857889217 873117831 967538738 31305780 481943708 328358808 579082308 87331979 904289533 560147235 621587328 340588291 440507198 550345412 598493125 365973903 680652394 292136196 342627398 339069192 747789264 408216361 515450471 60555640 450316268 962596004 968643063 112032741 273668234 890480737 991275183 431766980 649589428 897757393 902355832 298215180 414423958 717945009 847102532 906796050 912899929 355398562 500555214 343229733 824233317 616224331 646137376 86717971 689145919 780773828 867192587 400773171 781626608 345850141 898698986 633471835 833925745 420285652 672213001 503568774 812222996 959720514 981949513 367817233 929150354 311905086 720521207 989107545 998786059 788509435 922838831 210864670 363279949 779207404 833716627 612115759 674927282 584720220 891100852 512688154 977210235 594858547 737560327 958410695 992705872 331050224 692920728 239945889 977657260 123468913 205562089 743011614 839505046 288617543 437649430 184948695 428478697 296439847 845923419 291676787 423126596 194609936 348055235 323380574 489120158 515258139 885052785 303890794 661218251 127415594 648358309 903463180 919669778 519314179 874625900 666487785 882906390 399753794 743899889 161170909 487990935 537521601 767993297 101318951 248999927 862282516 937525836 35057833 259741858 693356102 826648317 84877448 243619074 109725703 843003551 773239815 965048229 611143194 640775257 582183374 713640802 877290118 954409072 714958996 954393218 730776039 779964986 142847414 921045366 538857273 767115566 489037762 833997108 504675361 997191436 64642880 541137006 452509162 950565556 880604667 900712085 862062549 918283717 321971415 818591133 253412722 897225605 304121875 892041071 14870124 247411003 262273475 857953219 244622738 526663153 267660205 834611504 515453397 835563990 431071458 460487959 689387828 795628632 659852360 838724708 841843510 955299881 178939218 688582534 118080049 977387416 319623062 589126882 849311829 956196143 823372921 914656966 593415836 971937884 979920688 986761573 241978829 909768766 138331541 266351071 930742048 972463688 57814732 826546377 496794848 499457448 754040439 768886958 794463763 968459154 653227830 781261263 505160591 855569844 95836736 865361501 400411315 785669096 108171110 899701532 940129835 960381668 417597163 645085004 720687286 980663096 719887770 886504834 454146596 661133797 605621903 982617132 747826572 809601338 741006858 866342094 181261330 498423160 460431708 945895150 846521482 940946802 424907392 496712045 148839406 822700705 931539770 956880715 777419310 876732509 681317151 843511682 798901774 976615192 239533523 646455909 542747502 909652670 554848763 589364716 452901895 983814473 364331419 454796458 158379781 405150654 481841408 584570091 83244949 818333847 478903124 528209495 335739318 767728486 719242810 936155430 403249001 677446883 906346906 961132367 722055511 793449310 966671507 998833990 27448625 571408498 454907730 632994614 737742890 834753878 425231825 783989627 432572205 885873790 752092959 872587475 304580484 439623111 784688371 824416640 67155087 794080408 65590644 453257216 803151498 990369462 889002245 892401212 151281327 383656436 62611414 595291488 684030753 963045424 313016790 387782252 973373404 998749456 603219834 859058816 633640376 649482780 944573538 980122338 413407217 843833770 181118172 257332525 862242533 961611214 637205553 702440239 227813736 881889025 118769020 535126785 157715074 390057999 222428256 702220763 21175931 154381473 718602786 861099945 703360499 727625831 409544827 738974737 571030921 697674429 351441105 752846475 828834081 902687478 624568312 765091600 851925486 864651994 659481412 863865453 197836740 868279361 505050223 710382271 842608953 944504820 302906312 697795275 144283030 563777738 357900864 669252142 93977108 366627212 63648620 272244892 737716269 860766494 71922644 783666336 891840492 998783541 490795156 675954608 834199878 861118412 881300161 990989270 885583294 960655382 846213945 931143320 4244425 218761253 445515002 660153354 764280812 792171193 139098523 805475800 528642553 539689177 949782268 994476745 68779613 567345725 951150404 978073807 285893967 324129263 545569049 627208023 996285004 997480862 843654441 925486763 654874711 858239379 855095091 874291368 919698421 958796631 567578556 612831980 190774783 828606345 306251414 578785354 651202793 860565675 623724269 922150196 717348643 954065437 697868094 812595427 803812635 938888460 792501751 802025392 384253940 497837422 930832808 981667209 495570975 855580725 406050832 952782908 394439172 729672857 924984985 985826620 201310919 846193768 37778795 382826994 961567156 973636669 641713975 914650334 938365483 969456938 2973213 603937596 878720013 907348490 988215376 999189786 795394875 922507442 966155856 988253509 931603246 977316963 562913469 768103100 772538403 864642761 170506498 791888347 486661605 765424933 60400339 568109513 97351624 107138570 231881749 547109932 588263312 702438575 949475904 982006916 323693139 700660317 621140167 845285274 294481270 512342882 728788379 785490950 745925951 938619800 882205774 891398365 960777301 979869807 769253803 864741428 390258732 768748599 51187138 842832101 568641075 723380245 733313548 958897721 486460408 755648897 109394988 747115008 317514774 697672457 980387629 987805371 394333682 890290610 313597868 369495497 429455585 563424923 351000057 705698633 269722964 921206666 482613652 964954460 558628545 717209254 137712232 893908879 269938623 324410704 719398175 759728684 801893339 832646212 603601192 917839640 352833342 982628696 325952320 459250850 452454548 602693819 848317491 957409976 63344712 226467878 953591362 972962117 50671180 62699372 329821208 909928832 592901960 861083830 386420626 485725585 170836180 785648941 595123709 747539441 26405473 872297264 318054698 396525143 561626547 782552973 686523290 781546530 296086540 964360013 184563019 442961768 486278576 522505017 267518654 977188618 798023975 959879487 441498223 489172717 393198092 704600626 607652265 869466727 922924832 968938808 808742605 955397245 714114707 813877679 740656253 833341829 690203934 761483587 213397720 297732487 656864351 673324856 229701078 241665402 341710494 358530763 305416065 333939408 298410713 924411949 630801592 988816386 687628699 705251430 293000247 969024262 408464837 588341615 263458929 982985420 682472593 850909380 752877289 803516509 669158968 939430885 602354854 843441476 42800929 761313240 137928223 475708940 719774797 954020951 277834236 798805338 839348485 910575465 350802616 586942174 669682119 753063455 261498545 718561770 126183979 600572462 362319982 489017010 897224202 917406642 738525129 908488518 114236630 470477609 255920696 310047238 582959701 806528977 824745984 958625055 171452833 391985719 272860114 291435916 1774344 219706547 344147443 842502828 326021355 498469726 715742023 795257948 454099302 726393659 82820265 675796976 129306515 472339428 505869684 935349481 547102612 577432120 44665974 520366848 125090682 210529838 94644426 337127172 266786456 964369971 139321989 481190117 277803080 709392262 575368503 815766380 79433086 332170972 415293546 912372391 946653421 951306929 980531832 981606403 266087375 713528722 14972029 645307573 391037344 489774493 127815874 446265182 884221622 944581652 681211704 770169476 212350896 679273103 358301503 798838559 446295708 929103239 216866383 522244088 620939838 838400326 59956825 502924434 226508270 995691454 411266226 663377628 643535587 799352026 438135971 451868616 390478882 931844307 262708647 656327611 755594271 881354203 109949455 394087918 970719954 979592433 177607983 232450767 92304662 849737478 696218485 914081100 174666744 745832693 284500836 693135538 496772251 732255753 303433329 629153852 196132909 844935275 455614920 835579172 137173024 628233462 696574113 868322244 876895119 879784947 739317201 920726880 90443969 337253274 70858440 302669322 133453605 386801424 755613970 826614788 874114165 961268233 767340760 855270929 959455697 989342649 435915325 896379025 791420987 970308517 318307312 330444548 324940541 777150222 394720056 492130165 337163694 994237291 140748469 692797606 351097349 411153805 669956517 763134482 985067044 996539265 949257412 960780686 270584745 760776241 379686007 438791247 890465113 985160543 929728245 962390615 544113754 592972023 742178859 831023171 195627319 893110570 489748166 767906828 958009037 962651370 762777612 882702479 21012564 314406788 850456843 910604625 9638301 145139000 720314004 846293176 815973209 942297021 202443757 792424008 396527886 665244782 837456176 915390628 955919246 976063627 219482215 865055861 704967667 943135603 343448651 554884480 782542391 924014510 904851808 980590310 142856728 943056892 32100020 265083580 272386846 739753861 247052466 811747593 710020600 790583295 99752013 293209677 735208520 896904695 250285669 501280288 152496241 656468747 303465334 404576595 953030585 990943962 322919232 914416265 300544138 579594066 352957567 450240575 406902104 780114293 742168380 958307946 42803852 350715412 488840774 625826828 489712483 788988549 457756335 616668525 162921361 852633077 38586988 431539974 669452481 835705034 853821608 888113967 670292960 995406275 193058550 698753993 434206069 485098716 176124786 587774107 695260338 739764974 136464257 841322159 344495080 861825136 699710394 847525297 335124385 930090765 86208508 629400764 140534898 375949020 427351214 946943677 380034168 872637900 621110032 723531197 696929009 807978543 335558057 744875187 221073137 814761066 572695946 810258569 264596200 606045939 942188031 974014436 845914464 976214494 138491849 458370282 597836513 642618197 793164254 949814428 980880463 997697681 903354788 964364395 775766519 861611919 58358876 487451807 451317697 716214705 309307684 651844176 135017720 963812879 332374761 670078409 245046508 992887141 960930549 983049185 964287665 998976873 366015391 413373115 680327441 964117127 442904452 922762287 200576589 265664707 22575518 198890218 683418827 985064741 838767454 860259975 350667925 518548342 870278867 982553184 469353447 814884432 915825432 937089129 169350621 939597507 582376776 985688716 222832005 381087233 374302526 736756665 175607638 276762401 398782907 510881001 169219647 761949080 901211234 982085372 788410804 826346155 853438346 868816616 522306450 581694877 356859793 740560266 603790287 791679089 817190897 970019952 441743969 755867715 637740917 890236881 915638685 978715663 518335883 844306816 352424563 860283189 12863887 686046797 501265153 872412186 973261339 988242680 458711377 502692625 244815676 967105843 53365042 913504974 347760112 759172301 115919742 171499476 654273341 756917645 497259181 609101198 692515269 808605296 313003249 836890487 120111779 995781399 649989377 652148915 516701713 518052004 236312221 919556294 805866161 849174994 322759056 982638293 866626657 991228341 281303725 783693960 819964691 836101801 573141732 728537928 814192271 949494986 5469261 680974980 864993808 981351197 515974439 743160851 811475362 832536716 339618361 898690671 251262731 391268629 747043667 951704446 299758215 301022225 668174731 712432034 457493116 542174749 482175483 572933464 892960093 911327925 596199695 755289313 363603495 569069325 78280004 833329526 149466218 883480230 969563238 982646925 815818985 830433492 241627456 491336240 814607428 943188283 191276984 255673261 215299830 913034852 574252570 662336395 234700106 779994756 508498456 808423296 953481434 990803153 701320968 896402528 552993778 739495182 37418062 842889912 760985924 789596078 212851461 880460509 278035849 713623825 544201040 556740657 517687015 621587888 796096204 852701479 650515056 914752001 541187364 779928931 586950269 727730180 866364228 906560948 673246234 810800144 404770660 757658371 600057745 983464366 841617998 852036435 478378283 641196372 876323751 976253679 515268683 686857360 580244156 889158514 263395033 297363566 709927854 814541833 945432005 963138427 868721589 917862022 529336809 768318029 935391708 975085585 351826769 485606156 399924919 673287320 393393232 929240623 273829541 900809309 589317019 720718692 509022577 995985627 505340939 565043532 99487871 939417261 313479178 870137748 818248975 975626562 783338420 834968157 516844859 887711928 711957322 920110503 26229734 118010947 987007282 997003819 263920821 914050633 770563980 958987398 83754938 562916309 735600022 947417601 483544376 559359993 242648104 838090033 409153162 419403362 377304917 447979977 565316204 766914846 526164000 825371766 554298367 724460382 722387274 995241307 52134870 513092636 293316338 673078734 961783637 964748641 738715096 892720867 193072243 828331592 869693624 878390097 102333830 392777614 5450606 945333950 171594124 721152538 961100876 964415233 339014985 848423289 392539159 688498992 570056739 929482976 795886262 959931077 174982439 409698930 981819185 986076374 552815579 860691056 29055919 696193108 988493505 997303741 454638536 585744504 772062987 924919584 638683648 669679686 645340242 844650585 737050736 788555259 769745156 918851913 703056714 851274535 916725632 960681502 982928525 993769963 878093598 898176105 711305864 974254997 979624570 996759453 296394131 663707372 664637402 948672161 752532883 937331178 707161511 888131925 984940648 995985817 490490087 902988959 416642679 783059041 673906786 708415385 904922604 953803326 557898610 930703201 841971898 847518750 920257858 940367665 94202333 688529701 757959616 885641524 203103810 948357483 144738433 422035887 654174060 991759947 24057666 331970744 124518742 624514376 405960553 490252879 606609560 645235398 77242564 576763302 380099823 763445785 697661990 919655306 321604042 835434992 247468765 439696314 468854400 591795518 499960140 871249317 912035111 928074047 927174038 986592748 978811891 994685450 412458194 648897313 571610500 991619715 250199799 414352901 12350695 294132345 35121360 266995813 995796240 997910508 627544410 908977485 407176551 492031852 376617793 805602708 118618774 765876559 163860548 817372725 723020738 865597391 412490046 896006079 599147625 715171938 576379468 919572240 688314237 854598482 326501197 740473768 793975052 825094428 181660718 212077465 105077026 519855440 68770715 966438590 895352334 969035429 214515181 455393400 712162897 960985083 21787822 161394564 418596173 823760301 642096145 818361459 995308780 995997749 283102136 559168606 981805793 988840775 252213147 925071336 129316260 378698050 892327666 942911028 400337516 859962989 804291716 925504070 683870197 940096888 45459402 825335438 778255059 892522215 794942481 879402782 71911611 387536295 582458728 774126495 528280067 950430631 123672735 880185461 474593639 903547847 263006575 495671768 631837850 760940181 601381293 710350940 90285123 942377072 647001825 808596382 715655975 963684699 424191382 530775510 129711111 764900292 276589651 470091131 189978444 985065541 631605943 903061754 774693165 834216136 728770805 758211768 311047276 729132125 783212112 835671004 247846862 564833131 991598851 992403207 285594691 550901640 44939268 212163484 113402495 937605798 451683723 980208406 193416777 289493941 922409623 984666398 426254090 914903254 519965917 700013845 377639509 908071703 311950532 486703439 468101615 531646347 707383746 849373780 128628386 866245427 493814813 962517820 960861904 991640781 961688442 992748638 311661499 985490780 274071924 327503583 854470080 863046294 33844333 209049699 412856207 898496342 726623855 850465304 463596605 751840187 301056662 735739123 773632086 941180917 879611302 928299620 680274136 797066071 767251091 799827275 951094358 974548229 238578050 790151177 988465081 991831172 217440964 757621134 78346732 232412401 688384369 705448222 367162321 770567149 254356360 676791942 171144329 924482143 208419630 777449522 340155552 712062848 936121217 998005985 50747890 476308795 826823191 923290634 416580293 937616510 306148162 415669535 248844352 934940678 572807312 766453724 969595709 971105183 973240983 981191650 3365017 269168651 97426087 941902547 261294682 944222131 777065787 984463059 397084261 664417509 7810040 11143302 30721549 108866278 866872621 904569747 188769326 290090703 77844019 384831671 567684895 689111847 938997388 981306093 628026486 951627021 840844545 919058456 675783496 760776967 510747817 805204957 56637070 725750627 636261071 780838335 406513554 740677821 521435826 846979651 146303427 696896104 103522462 588542805 307635711 781549919 446472971 500809870 437782654 508835839 753767315 870373574 10526611 811391991 324687284 426766217 136720138 998482618 348285259 873871639 346491827 428397659 122376013 211786603 429368566 546344296 205397857 843699629 983404271 996491459 614842775 873324200 857058862 939478569 819425553 979177244 429109601 622336624 279733795 589975755 699513610 940825889 237787366 419579198 277468896 662380937 553776233 780274527 140217729 995959286 304426718 920639573 432723831 957915267 262746727 361077526 272667486 781728136 835380110 933748062 994682631 994995613 937382079 995408314 591836436 750226201 391638630 788044071 295656254 861463820 655724639 752093538 689839221 861728138 220364586 686180410 871935670 939900874 555443178 896042843 855134650 870821201 942541338 943191003 699941385 930499121 124740408 558575933 593320173 999438082 476904361 827321458 948794449 957556430 670337402 761230358 3862193 463617066 75350632 637408075 24325841 654304183 886552502 894856689 369784773 535126390 773955379 929954611 592631643 929025761 805026194 883832336 398513778 600483946 982660123 988821449 499848872 799685474 791441055 821588497 722288462 901089357 455986318 743680709 219720972 262602677 407375939 786041675 166005220 751938751 51594068 691663305 210475680 263785826 337390907 929339780 252379716 814207987 202426759 781356319 437791879 520707318 220858273 999636846 841095748 900436580 263566294 540097858 425870685 588866428 417596242 668648021 664992132 722280086 980576343 992930547 521528024 839232882 522790637 838444809 543727554 646931002 687105497 982521084 660546700 997250915 841651142 956052927 468676517 620075854 64917786 716673628 45308040 660821767 530778314 699596139 682428103 787100289 931961822 980853407 24843461 341900431 684509869 766852690 300900204 691414493 183691690 725610700 654492648 981444797 164910308 899935427 501497923 584063484 189408907 409350952 104266474 351761432 390357990 990410437 37345516 421329029 987243988 996326606 173117637 916346123 923748902 994177515 643537106 739947072 369026518 579351100 410295177 438211248 494616543 792304365 499218046 798635937 514458529 633611150 387490973 691080874 119562539 472695946 412772816 478195601 426131626 436791434 995195669 999186064 30663521 860342608 724837827 898166876 258449986 731994159 623321662 911018088 29649312 76672263 854198318 890442832 19946314 821703390 349563325 891451864 85766392 352312751 401325528 626261892 915615162 921530622 336050900 669892030 966223265 994014939 328763209 747317644 340255170 789335417 276548554 954297740 567179558 668663611 989616097 997354291 845947576 979052308 121070800 786389626 823063162 943711065 88489433 702378706 601729541 987627911 113960662 236357044 753371336 937022620 641564138 857274787 985805460 992932792 986156533 999471571 519728705 782162727 754443021 891332870 26693841 638695787 16618573 827080469 462594280 589168843 340713101 912607074 553401843 576303733 561159481 606787445 209180015 556536040 706839973 994300005 634536236 678461427 499054063 820114964 740859553 953329595 338306157 675900326 264019397 665644079 845204433 888918908 324855623 377399745 110512973 239632294 984354033 986456043 348863865 377660742 668141741 893636322 83467411 897041011 794881014 907515968 771033716 846343192 776851396 901173533 926900214 968310459 441470606 666306840 38836682 239862576 989208516 999699970 252589306 488297215 623426607 964675737 912214603 949978128 235855738 859973443 799932612 826808441 373741091 509100495 138376854 204199170 609964498 911620191 679077347 690984199 645702289 938442125 501037337 962231118 237640272 316183358 942809499 945255976 134512979 344153757 499781030 973586459 402042415 917047896 965772888 997311670 396947444 853990632 823136862 957965408 158523025 878316124 398163581 404554422 107035860 312234606 946433113 976170204 981516518 984321879 786032082 882620779 204335641 458234624 170582249 373889520 276445421 348917614 464294798 477374989 681187039 826286974 264783910 268807534 571478957 800657747 450440238 574456066 813424392 873299946 900809677 931698010 82419757 100837359 861285967 921694907 469840253 737299037 507335225 521051388 388030932 431910353 950126331 982453649 446354102 492610853 357259070 414400362 810819886 945459784 265367156 692648204 640655034 769413295 429891567 818102612 130324195 650581573 960648623 965676881 476884230 926011845 123155714 785994114 82852189 664907345 781093417 809453271 934438333 962413800 78929459 512642441 837710306 847438317 300015352 436201477 437355692 716220119 463964572 859854006 306419852 557612980 902953600 969946742 102198705 895566838 986686773 995669713 862310578 997985812 155004055 978102391 981427001 993002111 222059993 538995467 52504920 991716664 824931802 996033121 320570631 912313506 562804114 690396424 210189839 298043088 426576 65631592 38352090 565737100 786012424 895913881 628351153 831536148 226127247 514175788 691477518 823255555 166962213 576728532 475981684 854769976 519038948 573053701 511634232 821923202 909806496 924708718 349260618 531692566 733055447 983328038 870469293 871932517 709914227 779157276 394461087 511123536 748240694 753933078 321893070 829320250 984794608 988164406 965267501 990984809 322988061 551310454 409264021 591553915 887554317 963633819 999798233 999930442 705016819 706419301 890466417 995767178 715791333 837242084 275305115 370643815 572370087 999245490 529531043 780457261 366859027 948680107 203853063 420216447 301838526 844663438 332438737 711000975 819003444 921775266 134696304 136554549 888941629 914624254 282294157 503679699 637938190 687472785 516596820 624502961 761618770 909761425 186243746 621274629 284620911 896155198 853675468 907621615 529829048 634170631 268529711 490338981 309087467 475674872 423704961 562304239 182135964 253692605 908605719 930041065 571923106 944586266 28260660 802428171 604860165 874473537 96455801 908701687 553572062 872329741 988780365 999159716 56013644 337237679 476938008 516972037 624994472 867246096 254484808 596349888 755067991 957567002 171256379 490919470 80444903 500863817 976919270 995693168 326722870 852111096 145273570 179986850 142312280 816580220 408859914 606273613 612650907 833354408 79129387 133313349 750309562 896177472 149729622 613675936 555804339 965923882 993967245 994557245 207736668 210191106 971412328 980718970 397454110 953184963 574773402 611591018 387745491 552781581 346082130 769729757 417873371 551784893 127692869 185320454 682321031 921784486 591291001 619654224 304683691 654080493 837574748 928220380 258305818 889273053 162054900 953601874 481567534 846245770 915477744 975069636 244585391 292098158 568333573 937406345 864790507 948342230 109761110 966925879 656281390 988202159 49764885 759524413 686421517 937833325 977149231 989523104 544762232 682731519 536727242 927410049 748684043 985824091 605874143 857367915 545640895 740616590 708957167 915310842 436668887 889548406 678656421 945723674 248158487 469645651 347869327 831644245 296984602 749513212 26029863 849368052 567707170 649945708 237113197 343181037 217535247 444230715 329235601 503145159 49148944 883327504 624394787 991099896 330013509 809215072 483975366 760138196 552557877 613830164 127794238 539990961 849181396 909225285 922593159 948329904 89253769 859692031 765663865 833961466 651298967 797919058 258515387 551350934 343723769 505949965 987108100 989780074 781676136 925591542 143523622 910924713 868066678 892199725 490183537 905386974 573591517 981627632 240090239 240272640 692249571 697963075 181238346 740891888 956455390 993642148 87750522 443052168 690495112 744589350 76504482 389709674 326544747 747520054 264721213 367902268 640290935 805285362 146161871 629053828 443939811 689425795 674479949 690137126 324498307 805504907 428185234 868272024 615831420 866334960 659988994 797155349 463796681 963356898 10376820 983547533 346694643 975191788 79690046 990945960 674570313 740229525 375152298 593752391 744240435 785356305 426070221 867958219 158343031 530651759 323657246 643525816 100867022 803872592 767631691 822587762 519695971 789788787 519825463 661538526 645166516 908864430 815142172 831869338 698957653 826160008 43460634 209642002 742497075 824246418 999320293 999616298 625625813 675913045 483561457 815213461 846749349 922691314 327269828 676982793 464496774 916562232 223722243 917246675 465688831 732324027 134491701 639202411 416017753 880372893 389461980 645938193 749565963 795131864 377963785 770562795 843887983 942953213 202801171 725209320 376236417 835660456 417938097 434060108 684486466 870011553 75893878 400179079 420069528 481043690 347892925 615959684 482834868 523858343 375860556 781303941 139742446 975532036 344005117 959349624 72114943 142606420 516552575 697537116 930847872 931507163 488847363 701455594 452277116 777521748 485855520 563073688 869876906 989633987 488302178 845460433 596585916 608585696 560149695 806916230 55557796 216391354 416017158 914251213 357748542 541874687 841530624 852802721 783665528 846339409 602998750 736348072 243081564 397722880 424632909 620433629 141210171 289105804 340695690 662334114 81400990 926822864 645362616 933301937 808050826 969540770 103030456 615375873 799637520 937870828 212138208 301697829 330048371 935545821 708095131 845045536 53325794 822105115 633061514 784351857 694418245 917632282 543864365 546035714 270324924 701964697 383901662 713149083 689025740 803685168 380499740 497811477 257954176 401869383 744726999 751507893 735732310 869572001 980624374 983302888 113839760 299298730 322898808 501210602 743687502 815657305 209255043 960207794 688499434 814866826 507810434 877043917 860346653 988378474 236680058 547519035 646594496 702640974 98698011 758194120 213783693 855058743 675367863 804194732 848476844 959075254 64824553 606051695 463058393 710663384 564545071 799358729 868795178 925683313 888534614 929235471 103623550 211222859 199085438 413726998 882216054 970520472 907898170 926058191 716793147 840067175 331573659 977309489 40614909 388992270 137667588 439207863 990079008 996873719 304417134 902214692 519556484 647931273 351297659 744262946 399395369 488985794 637003412 888531502 568207243 597927510 591148640 733338297 573880228 847114111 95480015 356076778 402829017 854862233 490880470 779074631 290289180 459430000 659118204 900182175 703234168 916234190 609677259 868189450 897912430 978557193 210934773 524518616 786260531 929251561 211371737 942211560 193550757 443627654 906245749 967983938 267789157 897774163 690232635 865682276 549671097 554498115 762022830 808070611 958054049 987614204 259516226 752995356 23101638 294194187 94317954 294568427 856898111 997879468 103766158 919231988 941768248 949582494 347279575 418148381 183831940 899948154 692858138 726039523 856774994 862141543 28766873 341135224 942068937 964282557 900072422 915495263 925460554 947552416 212189347 669101432 285350606 492046642 63164417 363970472 451957031 739509745 571345389 621942220 317380994 440195636 312587136 341123048 650297896 924538616 539977966 832066051 719579631 757674650 359827959 541315904 503593353 741234061 880416694 932426116 623193711 683090647 122522266 989410319 908371585 912986042 498685530 772368337 408398849 938778703 844576667 890471077 764845104 776109206 208691196 252811362 29630945 70035563 883290642 959987078 302571722 977285675 620342665 933702564 278377871 969804921 465605346 947169418 939095933 954056945 494296346 950438060 529087493 929898437 758339590 917210863 972852491 976519071 360298955 517796714 263540797 871145180 988030629 999982192 831832164 847639279 441973571 880950764 386296672 452717900 837624598 889250764 417122492 472554813 96254023 982083537 617708813 712493965 467692131 721052451 39360086 418250542 684351770 811306915 889478650 989209807 797184045 807008913 187275379 455633763 945778762 967696169 427323784 611225935 295116438 966382830 910430525 975135578 505057685 728431105 943911500 973193557 447518027 750872869 123707357 979130880 542559250 737690924 758583141 995813844 242780965 718839616 193361718 849876416 817234755 994256759 902174330 963546039 441142370 837444916 84848623 269233302 373430000 736725434 774258879 894037543 748924173 976105250 679454280 895532336 796691731 941964757 993242874 994611221 360988748 799671446 725825293 815500895 711942517 845157745 626997593 912779600 946239141 947748851 743705802 926381525 996952690 998964033 277544498 822163896 345616790 881369774 470077017 500340781 502566618 632689472 479648745 489292407 62269086 749046879 991001957 994700596 33840417 932583573 167484140 716270312 494653595 717837091 737067899 901905676 488057166 965083607 5617699 316653104 99244618 191716992 40216777 393004514 736458946 847534955 755145532 895219619 67014838 285485324 686430987 880408692 690227058 845775275 631666433 710747908 973517019 991681053 484475047 895260493 198479620 449808732 683604583 876270033 837619720 994990980 788074243 979695162 357813791 539605153 473166955 616972454 327145985 824606388 433527333 626573660 737161181 952100421 113484594 849213581 180849562 356235120 105091006 707453820 515240221 830049529 285185559 726657162 171259500 260832478 568928613 792465557 513357032 688452770 297474081 829590633 72451398 936592034 349799156 925138667 252135037 700010237 594358034 939009928 635698300 909143990 461561461 763173012 417101268 973555597 432893010 956827387 88964861 248410427 283430998 645570605 611777457 660554425 710097990 970302905 968420116 976673955 355699084 867399689 625650744 972601233 459134967 990654768 597404588 856433393 901661687 923521085 770413600 810752242 832588769 875115834 694176447 865606170 428961037 835649373 947012173 976957803 21668505 946781378 956476091 958224492 678925658 735671304 7583952 641833228 207526490 343829926 856612766 977883988 371302124 452621813 741182838 858731172 786903714 893911787 771569833 896446442 374317165 798261876 977816534 981918908 95834127 860826142 161748449 276841458 726124872 812035201 166914136 638705910 83349643 356484167 467404604 471022086 585635684 999841922 927977691 967215779 158953295 430754095 276418414 808039046 312759712 577016818 457762056 557280238 120648108 369127009 177253161 703177818 89128011 826311413 607713007 615272299 256444468 546171043 708416771 788071718 712087379 877875991 131122481 252264590 413390303 510823136 496371858 806987662 67815846 967017734 659723513 801751694 525503828 592658781 461858067 867967975 410435139 983284460 504926440 662103261 476806512 895219106 106285011 513288987 995055757 996464408 707587884 960713376 819904499 867356673 696644839 869961203 464838730 719580840 431212801 707308398 796983179 876767515 222055463 426486899 608306679 790805356 270193901 293408837 184299967 918580867 533378862 627000691 295658665 885536216 538790325 943320566 470934058 847132713 574819858 758285985 755549959 998869480 793276443 877034872 69824523 555255265 16248569 908829593 233744284 497010296 674886697 955619528 10786663 701659963 819087510 997921556 664282314 891510647 388709132 904227748 990816984 997920290 676836053 998384414 432738935 554409256 307586474 744506039 304957694 692204189 315597104 393607468 619173152 841367207 83030084 786350643 526460884 540338876 120595587 611525765 989178328 999426078 558891545 755108874 418963721 705298729 77287281 553199739 462841942 648513179 916349065 989319336 799351005 956632947 296047329 365012799 37757501 109473194 239277368 506446979 589207326 590822728 519582770 975866131 821707063 938769953 231761436 965274527 129220826 520279072 516450715 982896666 505603218 999419973 34558540 117621138 509978309 638739702 539862744 594682606 886612939 948683527 658773397 709438886 456945516 823546753 587265748 856123067 368234426 636072220 897712980 944827984 503959166 743184100 272815727 924600195 811593951 930359002 752254574 836495893 317560142 910093541 760815276 779661112 152196048 307209990 510503190 761399323 941581741 955133242 979917977 980552955 446773765 805225842 673251219 856938408 56466921 238288043 244469978 863028822 314448262 645941189 740463858 790951170 69047705 508254477 594508946 785342066 749130770 770243855 661228327 686636402 783307533 897827335 94711058 444236495 30826885 594419371 561694088 587342470 222439391 803523894 780622115 883239170 245852981 576989414 918785726 949292689 292069031 614968774 211125982 627403901 442622738 861126920 502131603 524483268 221375746 569748368 270429973 750649587 591086582 807860832 261781214 387078917 465588912 835366374 138256617 187398237 692195257 918482384 206620901 721675512 943276299 993283392 328726735 685617003 154974223 965612701 958489152 986726138 785679646 892475281 297802636 741173310 825138396 895165471 25184634 582853320 274062980 434085545 473463304 806975001 669162271 990780079 871832756 888374611 674214119 930882376 529955915 890368274 582789077 786630862 814649632 857900046 887064002 938910288 961305315 999860042 703980100 760101448 625662770 989935668 993486599 997818282 828613617 985782728 845725619 944663673 845548749 976369471 155985203 661972821 741293988 978808245 668057358 953891673 39042848 751748478 532779622 860353206 797592854 989134133 957915319 999944593 49755952 691871929 772788801 879827039 484924310 916443116 647323948 967452690 744653738 961405250 187139350 710678915 56528403 666597664 326041262 587721196 850298405 889825069 823135543 917038733 337566119 456875283 609424443 984114125 894099640 912397704 636965125 852707917 448737875 475117610 833649210 923352911 783463897 902868696 390507026 968369792 388527344 826846486 235764767 938545851 406710259 535183233 225847665 844327392 796817079 891110236 493107054 740619596 329746178 601005357 531289900 720804646 634506525 822822815 56784541 99044768 275965409 560827580 568280728 993936640 616020974 654602964 110447701 163238562 894571588 986024977 123196444 745601080 814566250 942255111 169535300 200168525 570448258 715903818 573054591 698146067 6662676 559393851 116983405 579193042 139728184 900568444 674962296 936463348 912082333 929837665 316577752 442875571 375752508 474264577 497784236 695787017 225289851 367612416 530498144 612469395 582197476 951882987 87280461 576686565 684897617 760519616 648591879 904527190 112111821 442835624 724965167 793544820 826198071 879740719 469505437 810501823 504958280 580082939 260725160 800799827 968829635 981598533 687322543 948323915 276562356 721317783 1348979 843896579 892582801 949294473 658835090 914901798 492322603 601620798 905655541 915193646 447165636 654795069 967193769 982650898 362867671 393853631 503797293 952206093 367044307 626738872 65215999 719328412 996805168 996866935 493220367 786308097 708794125 897383751 95109577 751491663 598673557 769666288 707598805 819678604 735876654 805701132 132783575 245064582 310718549 555306671 819340959 844128538 440314353 647020048 196259989 814629343 893935648 988220194 748936367 975146075 920794418 925396067 139210401 356103010 462729701 873990961 216261650 680828069 219237049 970288203 97588951 224547090 657991937 702468573 832335119 984423373 581345229 987783862 666174456 994842388 204993729 858654300 494364982 849452127 362949894 922281265 594464505 916357929 960511656 995024391 928027575 937473609 37676803 627231190 498550573 579847930 258127298 732594391 628343311 693316403 876892804 903078856 386568633 742375853 302767062 317604577 451447624 713189944 432709215 738149137 373573507 532589121 140102622 730162932 408144242 630767912 261252391 772202639 479040477 656028901 464952170 476660751 246661244 365446942 316414037 564785787 93319879 728194457 409388890 730698893 334888127 431549231 208865616 900389462 933704552 971067371 115553607 426780041 912147769 995943990 808630688 990139287 737404452 747688715 82679907 548649259 205694585 986607576 285279071 716121276 640136303 714928061 236002145 546989228 583917919 961692156 61221579 127648241 878269636 996074676 934743822 974080058 374929650 478993715 123276928 613670561 225527156 410603152 927638864 977506934 568722202 996897346 500166869 907342731 422337693 933889948 706256160 727796681 532432139 569344505 803187033 885000521 478281676 545175001 435250448 950684885 701144406 769845736 834166145 857988088 662097501 774953182 829579182 935696456 621389617 772141310 906246765 963267684 168787115 516710981 444636234 943468195 615411562 868675428 83886790 733229066 622678559 753156665 571238800 661277818 102057347 416257002 819489296 875542029 494975725 738681808 442869467 849782883 494531050 526498391 427468710 834479597 853808828 884432928 119020678 727254242 183941569 827613092 505423506 626887293 593597340 685020015 883572196 892731514 758842612 997080004 662354354 839968637 286965765 296848945 31547946 355873633 352176658 994296072 778817091 810787685 912731591 981323115 294571599 404518779 636737507 958926021 293150580 729423451 960822584 976516094 222139079 512547254 297480125 519238287 586315731 941949684 67288551 135441610 850638278 947821775 619008506 751441331 422147195 553568722 608595010 832390927 317949483 517010601 275075772 631504350 952375876 960186504 139182859 210391448 909424378 961110407 613914557 967084645 777103839 878021686 402207707 505109753 767552428 894288351 782215888 859488717 570996177 938827384 21630730 783710392 976590979 995291292 852558996 907431134 733490827 950275644 831868249 925385522 415497649 956562268 723944785 725865670 283702539 569644040 886083372 951168995 391385136 971546411 55232697 280325019 834274776 912985545 540468067 624103154 367257884 593042904 768511738 803313925 140742727 422101630 230784863 657192456 256860359 867182902 684883498 952183044 253324588 869657545 418246424 529137885 593791593 647415340 867934114 981162332 781882541 928823648 965695160 988103605 237373638 563179544 918321754 922784023 174219339 665305146 970370897 977649131 754806150 790013428 86250059 254427023 461038890 740829336 901563907 905437257 713180034 857976423 673475519 803264335 829689261 961394816 863494014 921348792 749625800 785956774 868571988 908904747 178442580 769003286 516499100 949803406 422842434 553843542 733990604 745500934 60824927 929832557 952530638 953359636 843673131 893312433 886398689 893055381 240455233 251098455 947720064 989452386 99267883 536203195 594581945 998351541 168428253 272679408 596528281 907789475 802881152 925079882 107173070 644923082 454842836 947029839 437824500 884972559 706204052 909336098 184735002 765820783 821791609 963840455 243035894 943939987 595295378 720276317 48620639 75321593 915129468 954769059 743624878 796958216 892055827 957135287 473522867 623400401 393862236 981805255 85462711 434319113 58270655 158942422 318721145 894880582 158977368 219721536 314603286 691697037 322885700 935142831 599135113 781180248 944937105 947387669 452408790 955188514 781861182 843180076 407185811 856619982 917579287 960001063 797893811 969799810 911753652 941928317 3150903 895713530 990745530 996280704 597203484 939207946 679902744 999591430 950076152 974374731 126870303 928210708 800473537 982222565 966998794 985039758 503291357 556891532 838280938 896710059 507266568 904294449 429342170 726947642 682044995 876227647 781712562 871162423 347775219 649972257 894589555 923339605 279921176 992107668 965854556 988198303 718966332 913442953 819315478 841492881 294904173 980809337 256845103 853646342 569562779 688553712 287591922 469559915 897294342 957313115 870950989 997499407 658381558 867290193 299649567 706850372 282087707 467921019 467202773 890440975 533252378 788473974 396079215 704869576 907690070 989867735 197840851 348978941 172486679 300092954 646285784 950619795 515494112 614416646 941514969 946939450 676740838 913354651 185345897 796085578 627241102 795671604 431304858 489244274 5781602 729056297 527060124 701932276 6022469 675548418 1843599 458731368 456528456 561844206 475732672 945525362 824285778 988043617 329647496 912452276 349367825 726273541 946172795 947009882 158788581 267900920 417376802 701768907 465597617 932106270 385965845 902695374 148716143 660531074 566296629 834920750 80360284 647723965 289843879 528436292 256888225 550670528 668072074 725761619 756679162 938337198 824541985 880760228 250041737 354586837 777651874 924147843 14614127 102438344 594507703 701175081 700510715 902395432 262331479 856679849 658722760 980754765 30535168 661886622 43654184 677443115 16566635 718329195 18508873 459749640 944074606 998727953 453721400 464530065 118373330 797704393 644831809 716749449 480434040 824755170 575196173 826382600 52744655 279995529 668391720 970397636 897157728 916026151 896857870 954920270 190550309 982205587 250597875 693836928 143353453 341403046 705875491 737414394 923925997 966111656 193291349 617919664 687573199 993143280 850037328 908828686 356052283 734309268 334038192 377022711 546048279 805408261 860635504 972569152 591715469 773017370 477345983 918555882 392361765 677749079 569666154 768777150 456544120 873420040 990758610 998447027 397500628 834817160 685831869 696007217 775716040 874985282 226578325 244597953 160316516 365269313 644660980 712515708 281257636 370783108 301767804 547427744 57014550 678209171 835501687 956133867 623156317 937076410 739595795 828432215 641647852 737697059 126588397 372151258 497312794 874829472 838676615 956680085 911425581 926531592 169588825 501225956 833986631 885182088 698291686 891307243 896742215 985720991 694787207 910025319 914261674 940689576 476008676 926724917 433841268 535173565 609106008 987386194 645088464 653398588 640818960 741866601 430431242 800725188 944281266 973520293 553721295 829594087 60353136 775580652 169296952 694252573 162752617 491201906 356399110 501529118 640244235 997082437 18465578 60731921 518481870 684589197 498242131 719382206 761591305 928296902 747903829 957943297 807208284 985295492 905743409 984725478 50049154 570274650 624500938 844211140 853600135 905126391 96346253 624337305 912554123 981560990 429787060 855268719 773172007 933949477 415038667 961427838 70533171 266095605 588988231 925645575 426312907 956368712 74600954 482996760 956445103 979869956 15910873 991844491 18879890 673444392 718528422 749967922 713729039 736636490 196520204 547602466 999414139 999700796 738883210 856770288 102737129 431849306 456406958 814574143 564736138 929938057 121743848 295584766 541353850 647579979 529915769 566415583 424305151 941063369 255644443 481911425 533134857 612528076 554441138 582212833 551425633 609659282 648226720 807812328 953743983 962289035 357998384 866099740 13008313 557139744 521771140 718531204 89572477 901863408 183344078 955727686 808815989 813860949 510731478 996217045 604609314 787562503 445167424 568926347 617359887 924522930 538196409 914442520 573108046 687605387 931561303 948563909 631013692 936699171 274165706 939368843 559910095 817215010 927842974 966790083 978027925 983000257 717037797 985269600 796325428 804395594 646859356 788419203 886438065 969612288 743920895 753219042 764303195 945821864 575422030 713276402 762726437 863636532 462876522 596704449 948278133 957729537 982860259 986537151 885927633 979980157 688409653 872737039 382556508 566491525 361264151 714935749 91996496 156907106 289922991 655611167 920991608 955478924 484309330 924117955 813048466 963019780 545374416 607366027 208663209 310470878 885352059 996412564 519240512 579632604 926308039 937367569 12504284 354823041 55653477 820309637 170643890 570851530 961613575 986676137 183421412 359296198 243435101 500701130 987985787 999869720 380999716 413407410 433414933 868740593 980369123 983276049 400983255 849987289 520124111 863575219 915477618 993032685 332368611 695940883 280162450 581638500 231012814 827131008 753196942 956522661 283683036 449299240 837988883 970546286 838543684 989799715 245424657 455622014 59724800 936403884 914825054 966803047 478919153 726941634 167735149 991101553 47185233 657899339 905898248 927057335 223950189 828888502 72066937 615347506 120694959 184128083 718278370 777355282 521730337 580972318 48906717 86310837 927462420 981028784 673435678 977854590 864319175 935247294 979252998 979368475 366041267 837667880 651948089 770229942 174248226 388625663 116571481 710838499 82135529 965011502 200223198 452567988 416777333 432746003 718807938 911100946 102136582 341932017 18960189 686810147 116925198 536913976 7514387 206993084 517610383 969429278 455477547 974780875 534525037 535296670 628680586 712920218 849300860 864167537 434096625 635222226 553397371 902972608 858298076 899815619 996748687 997683228 268857468 635654156 265124994 603109855 560764569 900663749 815294022 825663561 756704414 778360636 33956565 69952184 477088150 653097386 413550906 463593400 649756167 777202644 970404585 973432866 629759960 957728626 261655865 731701825 768802350 876391601 102414235 801558959 622573992 672597691 611452768 982291838 591224875 803332217 136798770 468718772 23354836 985861202 971138243 989062557 903699472 961874996 672019979 993468929 247440781 727476138 526630781 599964793 895685732 926185560 192824 102096142 319195913 583561815 825960537 984326368 460436350 621157545 633183496 635699184 402272773 911581214 190428741 651933274 304481453 306358921 129020406 562418364 307821618 383890792 416197522 966570916 923308699 957233320 370591105 966475808 170343318 489291676 930294911 980599925 106087127 433355230 722908930 896009248 490287426 906657895 284194214 775704128 597608582 907389750 181880069 460513065 469501605 946097774 603772597 918526540 724478412 795659138 757582835 980134937 206169313 258140618 661671639 913482750 955788660 969302180 859200455 994772861 917052749 931405534 598515116 631548719 305340750 389786232 749451625 935072358 46759560 761198972 304461652 896451498 776010637 836864700 545153290 930706004 174058330 954231061 529558658 765811940 18849798 700044017 657238547 818905361 827693940 974119808 272924395 808744531 389280093 573679284 661484432 941439515 914341827 924012728 847041938 983525273 379902707 999724322 308455123 650414923 321453808 363743612 965345375 967032439 670462253 949129037 986442499 989606523 150785053 788389593 818044109 962087302 139404346 710466157 344287681 919000211 955664079 982033812 296120502 689790136 496667351 526862658 164369605 710660130 678872929 989400036 185784780 566724651 333868075 658301779 833325733 910094141 678376234 982153256 284199154 910809074 909182660 950552669 721264509 948464665 258050085 320024053 766554522 868956337 210411445 964815348 453778740 950249885 732683566 802418526 82347803 93360402 305653497 985491632 37493902 890161178 583494121 918849108 642288583 924834313 311514229 909224437 97341873 122981536 781099571 881278618 19792405 815753690 300292246 721242432 487759672 936990392 179102973 563580336 66793341 724707299 212372556 380396336 359276050 505573648 182848924 933644438 733889454 862272872 769201155 917241361 497088840 870213871 231689411 617868747 972954819 985581794 954188461 986490766 893909425 953831485 655479333 791712090 776366730 887144224 838133709 870204392 189423252 917460723 307860557 624314816 238349497 382685649 548470998 711927079 480917834 964124594 265358759 379735934 840440268 915741455 569825906 918669612 210820637 940489835 973716425 999948060 285555241 758797102 440627289 852635418 564132357 822970795 89456675 404628468 594110798 665655535 777785923 971432778 458807716 581046175 893663171 905320258 561374211 933156426 562081257 690768392 94884784 173941816 654854840 690628270 577891953 931460941 658745034 896272503 846926895 970121734 489369304 625529379 963575451 975326684 90623502 562791950 956006072 987054919 957004127 977325009 457391418 616832060 392555203 978191759 836097346 987450766 511713022 942851187 569669339 841070102 194983948 306493918 498805606 793833365 555464939 851608175 700984186 883198659 402233603 800169700 962826117 968350537 793703063 980673915 306667574 928779383 539440202 837069735 340684420 949326939 176943521 572785476 513395341 785371931 744512851 816362803 427935590 941741501 640124022 823599876 90854609 350297488 423786119 974953124 761901520 887613121 597211297 908982175 847605670 912539828 528791962 673518842 72730770 480514152 511014491 709307967 426549410 741350354 100691978 822822979 238083988 364024970 200264408 401491920 867880887 976009959 365140807 958440735 304769536 732601066 634863439 762438022 613733876 695529843 222648270 560359623 687138706 863087362 722720269 934023383 391276004 980617577 680002447 866567423 948364330 997419283 348983357 968926130 672656617 835107919 601222377 808467601 592475577 620697099 780301285 947500070 231461963 398775352 450531162 837274417 314799059 563545775 456360752 976632048 804345144 966405537 780460865 914633246 587291868 935824901 533059937 856537827 481381165 999562835 783314816 783774436 100360819 866963900 592376041 952259141 176951606 348687573 662277782 861006318 509504090 614085455 317907163 851966399 373583867 420522236 869889260 893504105 221051181 764833025 824899761 872028109 519578893 931489874 786887471 890188340 228478791 905556503 71251584 666048713 70898841 444309725 101262273 386205928 562222034 710841624 415311601 456840954 481498045 814600842 45005497 440918097 434120117 914498523 341929654 838603682 260105738 599088420 122200270 214372007 741504706 827984233 15089165 577320992 978954301 990704074 834517694 935666957 234287443 608932278 30900644 388835789 13550896 423467259 376474712 700023526 440901423 627612850 671688415 861949516 382248421 851580196 737283095 965687250 463540706 466524366 180395735 595117027 784452412 850583086 327561066 887032316 318929183 542166390 839406408 921768755 484046526 961388564 246730008 707386321 923678400 959307566 686123086 697299474 156633053 799000280 834036832 847714620 974244923 975911420 43931006 67673420 869083464 926250073 399213059 569457300 526092643 728721566 564991208 673680563 210056193 395198053 813486988 953944942 229396851 365773086 591367522 669402700 568401809 755503091 267991994 322363628 746393180 774358564 389875245 403101123 51168000 458039954 289905382 363874879 600815715 709795540 320121464 342729062 321535389 682355494 519579155 649423889 232901695 311105256 238179113 884542950 676304264 774593632 546792909 737454157 100098459 117896860 69213892 253938382 385055344 646226399 893584793 944655795 619894329 691176096 839810865 983231124 710828563 822122304 398129256 839783396 334755723 901303246 70048059 738958992 785825204 989143385 976809279 989755085 187269906 627719752 355617592 510178360 677691784 905562202 456807774 764962382 425560974 461209109 534251575 667821301 549094548 651249615 557724608 873407082 934381433 955585336 21603756 478642201 990071817 994479929 320004191 532500144 506630513 771948347 654571537 856041806 347374746 829578664 943229683 953640921 830418740 970974936 239957725 348725757 144029077 859046069 563060149 795616372 156566394 784602353 821524948 939868155 95096511 449184883 205457377 795768124 405133883 759639598 59621092 590596907 414227126 656895946 490254596 737842647 85209442 663961293 127645552 354146440 98299236 131006825 680317528 730811979 207303996 895209670 413875178 582347899 324402615 930538929 650912034 825633749 890487647 916664507 285697231 992552329 702687999 975720401 32288354 597944616 259264442 578701369 278636722 686771929 823914664 902979088 924830870 946947102 285378355 646336597 293863717 839225038 201263304 691004314 305002511 625292948 322788878 825012795 202930785 601087992 718891924 943194001 5546616 706421488 799185619 919181278 83879603 899788242 823418067 960853519 600220373 615173929 185672058 892915276 916419866 933742257 684017326 952342752 491006388 877343915 378527234 777935458 154662405 744237497 826302493 868712545 110280135 744884274 979480853 990466923 386928191 960766206 935372305 945378780 896597421 967487199 247943616 970664431 527054149 883872132 852401098 967085600 768368927 874562097 696654750 901341558 750238514 954534893 213658270 445412394 998887841 999048754 921303337 985029591 829661500 961030817 677611946 766859634 779684934 908686446 341050459 634744015 858527069 953681458 886637439 965106525 278012614 738775349 770021945 832857059 732320520 948676474 732276329 856404703 85317942 827775624 715213623 722249686 493287438 585189432 813009666 962358218 448938059 863170468 294110616 663342312 554585839 776178577 720273440 872800791 996277893 998350573 545344149 760292169 431068307 458698077 896244024 936003663 949315337 997145057 181998375 854217538 153804022 224115671 207906180 976130907 658796945 932464474 209789997 839801057 235295431 988580228 142674607 149897146 825120481 835126506 536843013 562716774 737665433 904847223 204413924 831340718 357531723 504023476 601565864 900218018 37031320 931526234 435383655 813433219 912092078 947828843 302966826 717545679 605995256 900407091 636281427 864587905 843735887 941651362 200399388 735026559 333948575 516760456 817860429 974288292 765131877 922241168 462526803 532436014 308209598 382729919 378438065 918266656 455739172 828808847 890882553 989646160 797020860 831384934 227815149 438963713 491268719 942437782 849412120 895444142 786048622 898798363 585512547 912520953 727786325 926028397 382982459 415288597 597422264 991397374 267588028 436056188 743205605 825875469 469691694 608208357 12931435 681985720 840298068 923756027 558562729 643548452 517869998 893195933 421318411 740462326 818246268 982567980 687815798 984387767 571076627 972550904 706616662 906747845 569684065 812007222 852835497 891710217 587702463 849072183 24691643 708536753 20803183 310743362 326216495 933939602 275660729 640269880 190132930 846693880 15489004 544321310 473822104 746937448 127235200 312240129 386942851 895697810 118417642 719784703 730273591 867947246 98092669 639722208 629922535 902867597 6359587 348827021 600391040 640949717 814964829 931835644 440848973 765719628 665239734 825338734 269985964 587343736 383608400 796663632 457161323 530101565 589049771 829736934 845598588 936336255 16972480 786884293 586983121 808536451 586340779 656752658 36415224 393796203 424028044 608804047 322650864 655541694 625676844 938234672 661036728 755541286 798022051 895181817 285339494 954480910 980113590 998138877 999734652 999763617 995634276 995691044 904724700 955101280 722036760 828750613 164312387 318643089 221016750 848759588 286536729 792684379 357050567 988731124 586177851 895918702 443689732 908573264 512691463 561550512 846579771 859672740 794046014 885909039 985345647 990786309 261718913 643144460 595533436 825385859 717354977 824998236 598738922 711050117 934417436 963668670 250553788 862450617 770028700 942281546 658111298 912213423 276057847 452768091 385642437 934345659 906029960 971213922 765197895 808518978 550079609 764720048 255988255 415498347 260992237 631282434 373210672 669283530 942322480 976174516 821049654 988644479 864582833 959938558 133547548 176237765 232093114 604005513 344605083 798247286 167305292 648411341 214771930 413126477 731670983 992905453 431933285 450644766 944369116 980485188 505747265 726854665 619348182 620351047 202924077 606467134 55948059 287159595 314245101 413500687 143062494 936904219 784790722 957165632 125005157 847375441 271035368 761896633 747688206 941941387 874754850 962583370 970789764 976667467 355574430 691095440 678656758 731282756 821510550 969047751 189185747 721458969 721428535 975459677 296355279 458019953 775834490 897978820 207959617 413432972 469137971 810374334 429594904 938175762 372756660 471190704 960449932 988548253 435001007 916437936 441026576 599595853 212144329 944840526 692497377 928905461 520455692 666805831 683755962 810617330 84417776 627147111 822105138 877181284 636587236 706803512 101649363 400844557 126618139 907904686 313454201 962712662 444473913 901986074 640555486 658323136 468653247 857690297 827684412 918486765 344432591 484814979 731271949 813318211 201242882 982524400 465474338 475048308 342616972 968377934 989917991 993612761 611937776 714093581 847764825 854651933 174305649 377275746 913935185 943357316 773352844 985187354 923751226 927444000 544706468 982041820 709510141 825915792 365935980 809136496 524642055 724166807 697938454 926867263 383931984 812370714 585027809 932186845 218468114 702414591 17814262 700759435 783954804 850409560 965620056 977574687 538146467 638642385 91113183 888140340 633998144 946978160 31964568 102141245 349200487 969551175 424584075 445859388 166894329 995420847 265628628 714104215 706401340 731809783 661077802 759537626 861753173 915871721 53334596 421391252 740565737 809345685 606056732 982304932 340973029 515173468 302098719 952138696 868823051 995450921 198664358 286929975 89342859 581463486 596264041 842020047 147265110 667079719 192862269 886385698 431091885 976332556 700174107 761293914 26218754 429299699 693257950 892475327 719999820 732756135 688373002 737441355 751315960 945002893 134079905 429565091 206983961 312382447 604918 808572765 25948486 512574645 133854159 575781246 425693968 739238233 703263301 974667497 716472352 897511435 869801435 949316723 899343589 945571393 619146420 655692014 208298817 338555473 339123666 789630204 723381655 962834332 813173444 953461826 477299991 888021090 933288550 947050887 103199586 727923791 917481340 934830844 754835166 856837061 611121480 868007990 782548154 868663980 915016858 941024860 241189168 711633756 30174228 694877061 754853304 881689021 664975253 827670985 208939326 604381337 714996662 860634839 462347554 498024230 682456669 841604827 91325413 565705383 207362330 933576197 455635629 578191075 709764435 921705064 759778446 769182920 479288290 522575724 412321462 589001859 139609146 145238905 452443169 846141833 39915385 647113703 320647413 345963918 911662889 971984357 187647252 299580270 248664149 786137830 291149488 787942132 716257259 925256689 967173360 971994407 404052767 699213092 640973832 699370457 38491978 421153783 624463081 820569364 628255479 740389199 650704570 671539620 792939308 882854864 931746467 937932888 839176051 992118746 409063758 862903548 254385210 956710574 368350011 408438575 274976542 710322206 767088351 817220073 848520911 976756370 678708014 726123691 516644935 926799397 49416616 576233570 681180768 930553253 702424019 828978941 736369543 849090053 337550273 573152008 379407528 542585988 505333338 612780415 247999518 897308136 576372135 665477128 774251307 965028696 630352391 983487365 557447838 947395911 109606489 419117144 515310086 912198040 974238 219833477 88564857 579850055 243827604 452573363 307839924 382245220 478307234 907034433 504294384 654505381 551362734 986102374 190296071 697489345 181840947 787592224 41905931 465951491 154353773 561795305 462842017 543350400 402470456 750049901 148100823 809465121 372947949 450302370 755816499 879840264 331911279 385178105 138861108 140972507 811955766 841625425 108493658 865420239 294180564 315070059 911989483 959951148 492885505 894955244 733449915 766263292 406700601 892217036 803538969 849721631 767199365 817616808 278079691 816484421 953665187 994302608 835071354 842070325 156315940 267078967 16304367 631939997 197186246 568095029 418431955 527295879 208520201 956334423 600911400 989426864 658304788 828583974 271888693 999669805 762161219 955585779 235836990 409196873 859170952 995885418 406374482 700821481 209434029 232441683 496652473 810277271 309047790 581322507 619892061 688143509 69408792 580068332 82363671 555939354 540806254 580985778 399604726 530267736 257363741 803694033 767784627 787253349 460113298 634077991 328598523 396201495 143384998 846122980 70951844 900099410 352898347 661713919 692177523 838789705 417991678 708136872 144222277 333819614 98612301 180465916 684990458 716649891 195781466 491448331 607586697 834523860 377487508 392353285 575075712 665297059 320132185 911829179 119171691 152139842 681065350 758023567 835936525 955947862 299764500 570174475 949448664 988806729 463224152 979141472 562749266 867500960 534820891 657710825 991016053 995624918 728348268 894630963 701083899 933211966 560031591 818885104 87926989 794469555 856670225 880037682 687854312 828955129 524193112 605501401 431176598 578982271 343040754 898476180 974802853 989798686 272916057 840317622 412908986 777820809 941631864 969457015 942712400 951205648 232992396 696231707 739063208 889963466 949023649 956471937 120812697 927690531 976788947 990750625 764370111 935036454 161640565 927417793 641871678 750438202 737298931 887468595 748572201 763218548 539957184 592795983 683098928 995324694 636141057 765112904 447822428 647878789 542768235 661079585 882842527 988000269 531328208 666064107 235642251 329050226 878908145 949500023 80800248 90405372 501178155 992780376 891803184 995427892 372596374 704940443 197541103 437969684 255548323 549787706 14787712 708482378 173743770 257866098 705935736 841535258 527290838 883900562 635798812 641185161 534164407 911525888 383209184 794603191 734168590 740377263 944841145 992293125 71079841 81340715 357806606 386685099 3826629 698774139 799818531 919509316 425707463 793157133 374789030 669463876 243070132 673581807 414648465 638257033 959942713 968720170 957380769 960457618 951386038 997272015 653091107 857487131 896284586 901483626 340114563 777829953 933862888 998837166 883224642 958979464 937912250 995015741 707087964 707729125 279845274 612063970 856420535 856562782 760714951 973118957 830117970 947323617 185744039 947961012 655063167 857986983 201858048 778593677 565228994 848274538 885398444 999093548 906608804 933374451 357028499 766741937 859181091 891408060 849991727 988122086 994480539 996782476 257680480 928003001 565919126 795575549 259285579 687750037 47882548 624977521 439042564 966554838 931292268 976501666 33040768 903237496 692615595 938619055 944519611 997016285 989921432 998963307 762697674 895732876 122562444 390079642 680824609 819559594 152492950 627822089 881903741 890140480 831031021 893778604 344527263 535129809 577725728 613543053 638050104 789330943 648456079 925308337 758759695 788134774 975940295 985088984 951334624 970872708 653901541 657344473 711819013 830727567 632558644 888563543 189039350 600793894 292579223 913895112 435774204 501394714 971001860 995857824 353404119 934983086 726702417 928689367 243182443 249898068 173575599 331255489 264910560 923125884 214797916 513253630 206380971 647919910 254792739 525264438 199348277 437548076 638583918 789167343 319944228 830128628 491739601 686176756 70822683 97500015 897468744 992524349 70051607 468535719 999937231 999982849 761934717 855213945 267878418 826510740 424319105 851932346 773111839 925049667 892075135 982519080 245833038 971108973 716628268 930139800 288901970 662396587 303867944 455279181 477845301 952651737 239713113 881879064 726079638 810971641 710061933 765367631 227018706 473731304 890468797 900240136 948396232 986589854 680304382 859503890 739626095 836855808 422345605 710140875 826713626 831972345 723743719 849998224 834629390 983734169 901729612 906837888 818686339 860660156 906350688 947057316 613127447 765463994 802450003 989336746 300950710 608300532 601792245 859041097 559514177 628800495 936809830 964961717 571063536 589755285 118981340 744643523 720380323 779191165 255117424 517204041 895961163 917353011 189703300 383070406 883605974 939036915 434901172 794311121 660366267 763257875 756891614 841867601 630255466 951356247 555303693 708623978 614093614 849221497 89663807 692150486 974896973 986423825 432161477 777691266 11159614 550362370 896151984 957888022 211872471 228923136 187696819 675927583 784888039 833849998 181690363 237987164 835362592 902902895 637163838 868098877 185946562 187098616 60967069 946439482 454193482 608177306 731559439 902638912 590918124 650431169 179747170 747986960 54241662 997676260 173997670 904485260 573033672 778902143 767237242 907391102 514896548 575060742 577097390 745241387 309609942 904027044 340471812 956996610 603394643 997938367 107882928 754774909 897820880 980055969 393779633 637018722 754980562 852832297 754038068 860703900 598963261 792885552 953759779 990744529 622861776 825823796 294906743 818592663 480369771 886240759 988778565 998274704 652691799 944153548 309888539 441667433 787552763 805163929 84162088 418727910 808528351 894076620 678878261 874661071 403831423 852866322 933012632 935072146 178929547 471471705 206723610 398054671 503677410 788569120 841764361 992434175 556040347 944742489 743043904 877963694 670313271 903386872 239861954 562113715 75083 920083904 452680501 557548823 536623587 649297572 105551188 182847943 685413946 738545823 69766233 400592459 681522652 709723793 201142904 222099843 454876929 526729101 94870763 460757542 370966087 705316763 206084460 506058620 907918206 918477136 600426401 698756764 858839759 920864864 727444625 907871828 404170871 874670468 268842528 465505647 377702515 538952576 83898080 365045705 660567525 725081885 870300951 960351845 236803767 417086577 231553987 713461608 633882976 929829853 941499882 999614620 839703308 897708428 200768891 530897642 411134365 529475644 461777123 741233500 162873043 961468448 295417776 319912277 53611930 225979865 87926079 327087822 772499906 884367692 170559328 983474188 283195599 916445238 110195178 734073673 322310998 830611179 64898554 896794036 658572812 983532475 636686479 844125048 802515982 838896348 663322529 778720396 701248939 952557428 494401666 695101256 733502955 792664025 116659978 742956584 451332458 701292492 473030005 869873068 669284080 924519588 39616832 231568388 274639655 808385315 28222462 125296503 56346509 536146971 354965024 691386014 491916791 562035504 763794132 953341398 102796587 528771755 577488550 890998695 730856816 898687281 211044762 872006657 563016760 595654402 799437499 883321742 114211098 952044821 351560365 552647080 48677196 390011025 890928339 970840385 218175707 968677042 75320412 199101546 401711705 569010543 841442774 961728582 57882196 566165456 340512753 469970892 794302999 890030326 345386556 696667318 91964191 252806237 326991095 749880633 179175083 616190195 670276505 759153976 185761870 626832679 364502707 747630304 612390983 944645406 629928458 892116431 520123993 855481410 149737002 747264002 290179861 333889067 16864377 261605189 600289337 907867489 140089587 721595939 222749982 697319451 581236183 708014472 563502726 847132814 577444155 677654368 636516146 664310135 506053062 782895016 894441781 963308683 936087319 964415655 936250661 957137241 164689974 193978395 723000073 980057470 987775760 994385014 548896107 972560280 953358223 961835446 796997112 946521339 733540144 765554096 341816394 886855582 519346975 778097218 167809765 375552725 893777798 909918677 393103727 475001412 946878893 989461345 572457661 721767173 687870404 799206442 173524756 934842206 333573582 579011104 939640714 952517516 762255596 883791064 973682013 988732259 980480424 991866161 699968278 763470442 827335243 982546773 979735670 991819974 348362921 742926778 949765912 995832947 685518503 699751771 341005383 720653850 742044516 745211060 422886238 996950260 203718616 748463280 781084837 798371932 322218783 956658911 385177579 494740177 116360293 581171167 98172436 622613226 874378714 878659202 843358658 971824733 745415974 820474803 921888167 979179667 835970068 925977297 974938487 980958060 752311826 952836573 15869193 407387627 37456370 751724345 366327422 880844197 101272681 341314780 446891635 537132361 674772432 689460179 391034954 778410886 799050389 937813635 767664820 889994615 621730314 675393560 473542716 936024364 930187016 941667236 69201954 189453828 359102377 462594197 567672200 944157946 334452734 352847000 817564618 971884725 646205533 918442690 707939803 772359470 785725785 899069591 435098762 581909105 55266870 80276062 348359127 525464551 712819746 949411895 5098899 486140498 841230841 844400769 36323424 792485534 20622664 447171270 419748453 431838558 431157219 704074792 194888330 843256351 987331305 989728254 214444772 515245264 344230951 996932741 264231441 794708738 323468503 372104940 756279551 928404441 243496540 317473990 32468218 617111417 249094748 652828740 299142912 609646760 394889516 804814614 535645080 635278364 379778906 933679455 22151793 572793558 165234201 599238435 459355582 599929084 139440148 603021012 717853762 843207572 158138054 681483363 944116334 955070142 669651035 951120485 121679680 138656854 657159111 944460557 90920877 583909140 554870919 988171845 179876543 608606607 85041933 632047611 347445391 626383400 103353177 290359030 388532835 799161729 668246581 870213217 535857030 601272687 285101988 960557816 571564425 871002837 955106898 972277712 653320146 911095937 995706306 996780881 412411461 536166326 615322432 950860404 109116818 845676532 797272406 986510504 195989480 862524436 491349390 557705659 528617307 790636640 871553564 875144228 566333928 659266851 796126648 969430276 544831886 851142032 227898436 285949813 864685833 908995890 299618954 690434368 851756170 982439894 962873373 988940635 925013938 934792156 702343365 768031522 395836837 821554810 45127711 237625243 249091630 461860238 536976868 844699209 586311193 755132203 662642344 925388296 432808658 827625037 665566039 671919646 636363782 986984766 747708378 764270598 492334844 923870921 432380050 801549776 660893493 895275342 325543617 503794757 449470160 684857789 523508067 983577991 751392089 797521146 559025907 569504210 389867790 879734286 557616093 978416915 375827457 758831068 9752378 178319935 449884318 803733154 545946348 813834346 210700642 292545226 377783741 716368275 679833847 913403485 180251538 261275583 106418894 439521145 874384981 913004145 289041900 770961534 516805306 979941685 229202889 664449827 658805185 711179512 791582521 815777036 854146677 961210794 179510802 520793854 394176828 820605471 442869518 801738089 698584547 903846215 59402154 584313042 677013710 861694935 408801215 444415883 256264281 467172698 925788215 985167026 134774443 984282066 241743909 993956741 766574359 798861053 671651226 904142355 727242189 905231133 272482655 656694854 213185976 274176224 695214123 836014369 622922719 649472914 986969284 992805762 254143065 798013559 154593637 734467679 226811320 675754848 289765028 635426070 384577855 937341469 538121261 762501492 16096004 800036455 721297441 729045514 77557749 970063149 480014969 532744775 528279845 635399601 64993519 922645814 586306175 933433735 630899216 667047813 966448377 992003394 182759880 654704890 849072584 985394168 60715213 244259753 76801323 415508247 237073382 917255534 118102170 396507665 111998742 871426152 894258991 937445065 380455234 827604688 82862491 140562356 774796462 999458131 127367714 561068499 826841112 890796048 715298645 722286086 578125597 728582792 274082470 810626364 319675553 341884695 257564937 690627707 231625508 804675309 329651206 369379281 657191182 972684464 150457424 516749073 238591958 753691790 665247184 739061711 206676807 291746013 811183011 868604723 299029560 635319214 548052259 742430591 47718653 278619383 195431807 769482698 339725603 364992949 646402372 928786628 643264160 818641895 680089037 905196599 900451095 984167924 70832270 962396743 245862856 293587189 871650676 916323790 318161146 634859066 459805584 949196079 928024097 962800393 229888927 597771503 496233752 672250215 424669392 761898336 395038214 615560693 20644747 593041313 933484042 994479919 734622272 859650413 579270870 911272817 632848524 726313588 810667047 925501427 135258388 460049445 785188934 879323756 96608653 217124000 313354768 391853838 787078989 876706133 386120189 915195838 592045975 685000331 712697415 976000459 737074376 973690749 799242582 930419508 915655789 973030282 541366681 847348711 754359917 817014669 12896813 133228228 101679959 427088492 741649603 758760055 289406509 423722411 773199200 918637200 391078438 649726623 467555630 838879246 86739062 752311441 490494404 551678157 422950501 935834244 284855646 485671014 941302997 962701491 217931789 440392448 534307667 880009688 794250395 813619034 848516579 956143955 639315397 878357154 899949593 923908289 693247376 841878989 985760645 992019336 615588269 742222526 447804836 576564142 138016382 402349212 602253329 854633971 560267502 953952989 452462061 557849591 733705955 990269590 644893392 934598745 927871334 957831362 384133520 613023226 981362629 991292540 143247330 412364293 447049335 974678816 567990524 788715881 116385365 914413189 547181075 768212418 421898128 883886734 622303695 753516342 196460148 514196544 412117715 716727088 514807160 968104219 661506260 937701824 997967158 999975416 868411651 982980039 511295096 556933351 381589491 912418361 662671894 840831146 837274045 952186014 97201861 805327516 587516523 609378125 753617716 828109409 711722051 906144501 279404828 297335207 232262928 900784077 156678504 960174303 284084619 743824420 494811853 623471988 478755033 846772523 314004567 392551199 856245267 946567601 993815508 994055905 271766516 839650454 287651838 598100084 498367124 777228449 696256088 946433742 455018113 923757068 720558367 903857477 217383367 269127003 296862741 698905866 163833582 524535667 812926953 964793978 605584056 864984913 701711711 824949810 462378662 821330523 128410160 917713943 708414717 978460983 833357281 865533769 844446734 975203767 754153691 866170207 465114038 905535583 688354324 788504936 802049040 814585702 678552923 985724027 724464972 920950478 570058828 864915702 375805762 433874100 627446723 740127987 496378585 709692115 511803748 672453047 268879433 316777374 253114054 861421021 679265207 757301054 994649504 998134200 268227133 357293473 878160676 988000700 651876112 802035660 998085513 998651576 172732628 389694466 783484933 981662726 215761090 309428698 283150940 931192601 722766446 879798043 900443771 946185432 981203179 981843054 92545 772556563 809359637 865039810 197174935 300212570 436135874 991505509 144960284 325635004 490613937 519259477 784238348 907330348 69553897 633144134 683288502 931028307 127185437 323057474 765060774 990442660 5995537 762972761 402760889 852913806 439104501 764238498 323614344 791966746 581011104 802087119 513033081 960532770 658574920 719798166 437940805 649717592 43494712 635122937 125634845 518493676 105377547 438200553 883018874 980740767 987068146 993797430 73131511 678502196 535962051 654733697 689734711 850933873 86059989 877686897 643231314 868183300 326813713 502431297 226968178 624941486 320770610 330305809 82574138 514923704 773090736 827553604 327649303 605230038 451280624 891494623 935945993 981261272 664263530 825864416 555982256 961906530 27194833 271046184 853805052 941702667 288580810 794290702 490401125 548586160 887281910 918126771 347976264 580228217 452795511 722216882 70762675 605751040 807614802 957225850 537350143 556437453 159137416 557819631 995987753 999541411 825190768 922947075 205572914 711255958 545897394 611076605 329046152 821920336 877310051 967833502 572259822 662154313 110914882 260733695 496844445 799476998 212534792 999486730 707044029 913457613 969917963 971014215 511080797 866690240 386447216 417518733 747780822 873307939 316468106 493847276 797525478 830564047 154959205 718743911 450671168 526890314 572429616 991993550 430501453 846409870 246777099 862696295 493999828 544225705 756735612 778312986 249524962 464562575 886811419 888961602 827981114 856136604 458019271 761616377 221805053 896914967 542896588 675873041 730576036 946420950 400927727 729393303 184913313 797854380 523080336 754607262 4454190 889598608 601176088 982226722 881177926 899624562 722054900 768516316 498855415 648902985 343883260 474070752 839999549 874135804 387411766 779044337 327659694 752677403 427288776 944016327 366184893 792270440 625298785 774983613 177099648 545889070 707613066 714724879 127538848 885983750 64916403 177977113 739731205 901268637 646694403 693528585 32179595 662192762 525484419 937366776 313483201 659768865 524284667 818499050 83944743 235387757 841933205 928713877 510588992 878640711 648561762 684432290 279684696 316473784 65690449 395623730 399262231 644686578 690850992 805268744 493218844 623417661 697828735 864272303 900709634 903211555 881093481 963142442 737945729 884332415 124416955 975373773 843273728 915747341 609174610 763620678 549717526 675477067 725033119 816264530 324161415 401270841 665035569 958882447 746345092 917691295 728698752 756056985 385538151 981204024 96421724 340316865 367264142 769736708 430700891 857375854 366479498 482592189 48935928 481681149 327022797 748559438 229481989 996333351 570388205 681921536 562728135 651218250 790480605 948597148 271456484 398526172 853557440 952753078 110205961 755155154 1163048 351833515 176648543 559705582 537555406 566437696 996222625 997150026 878528035 999586874 53164643 813864902 261317123 878539630 453571850 994118826 63226573 474929378 532455709 547478481 444616309 764900584 954734958 995886298 714609148 809811357 3096371 715075837 924863344 963662402 540541580 842408097 593790978 671117140 520379667 768378536 143451160 525570007 274703239 705962049 952967138 977336372 581496456 780752559 356185298 583783312 853181651 856433403 496031314 672892296 551244379 672452806 999246860 999598623 48274967 978259822 624652394 624780320 657449286 940320202 325935539 650951697 279230412 947280581 902706276 993085767 584779226 980918182 150440368 951298675 645891084 934093989 209660449 624409785 948312212 998065492 54026364 783124503 54365705 285900656 597281165 830750528 428784651 986289255 830660885 903205742 470989094 762477918 217766038 529614422 267109291 769036724 731189667 933266866 315601973 670432304 357284083 728879892 988615835 998729670 87280137 894829608 167663681 316514012 272762478 620420062 602360981 656631504 604714245 651748396 41877380 903360801 984279261 999316868 627296335 864729911 986087993 987253480 909443428 943265367 206190645 421146441 164849827 276015826 637327131 898158468 831981785 905777402 645383959 831379354 896837425 975823260 736989376 893659010 297792756 459203011 525953060 577370458 577300297 956030884 688242456 797643678 14114717 122160488 459920432 689617099 561535432 744473390 891679606 948755672 266011418 665608513 109468280 261666023 69696321 190613454 313057801 800712479 201775429 414492290 884267890 931121995 613218678 720303385 876192071 918195804 511521317 580742579 382519127 916490341 857036106 927796951 947778435 969581494 222252707 684966513 426479216 537114611 591152145 791301582 837082211 849806112 475187567 799140711 944492238 983399969 704806739 853927728 57708505 716148408 269102351 874564970 116651924 958869225 49338936 400321224 127779964 155931047 549372585 951101431 351428655 471747256 911322336 961037917 667262098 822267731 871797400 942867128 861596959 899072152 262638643 436764597 371566180 716060179 835188242 955077542 79119857 519745104 165892909 932119846 253971632 506185127 747345619 981528370 243797274 846468777 371583923 758686642 296479313 459622424 1746082 643084742 541340508 549156672 123878546 607662551 377729237 418030777 109238639 711693283 112967270 384582074 585183838 604849763 690280705 769585181 392866942 867468206 500586225 683586642 76956531 107603363 312295542 722800736 203975916 443283887 30121947 801351163 37284247 944385834 391290417 854940185 952288094 966183242 752073597 761057865 791888747 961275929 192635205 730851068 1335604 16896422 888160295 922593411 908816807 916293887 984697192 994474726 359321528 498674872 834544149 890261931 596285245 976354396 521047662 566025826 4294041 311287912 936041573 993436209 121071851 964437513 352577566 793048513 176262912 308235887 642252820 826276597 193722603 490995894 837952882 957424339 856675658 916819443 548464096 776183264 193550957 199273437 350088656 993599829 294515893 894957146 834773147 875469078 866971435 957322067 727673460 919879735 128788480 401630774 267231262 441184419 402093996 994352915 597180306 603038674 946778928 985027203 807425249 910486122 660821474 832930411 529333394 796358040 595416990 840441184 310285960 425977205 110255040 483265749 424453530 525578561 463319148 922732170 736244968 886394319 278075516 344219524 501655799 752316378 597398282 927350883 407535090 601474349 559597560 862755117 535274211 660934980 888186391 955878153 391671186 878161320 455767450 930364529 967991092 973290641 862186520 868530953 837872231 901349553 68635202 726063178 787113472 881698358 803920441 810675792 36757813 616434435 964230897 968909043 198066822 315377254 18928909 169592822 578342880 628868468 267873888 270609074 348669275 629200938 668180512 893004297 607727190 769962152 565891265 727654671 808849462 932120759 577496459 812930542 296131667 465073665 936145486 968558236 839682686 960252723 241644420 790967752 86811766 600121311 967063626 989247120 601613251 628121064 385021501 741157240 74617405 848015125 874074559 889371700 858995780 903870898 320331363 334133027 138125550 446322871 600583040 984107272 792616421 853383710 103611712 587059952 365851827 673048852 744226057 968913554 418914622 781066466 204858884 215052603 269196333 552698211 815940280 847189017 234588323 275054908 280159408 382889072 56583744 118636837 520999305 725561712 975838938 978251000 161872230 171494337 797143543 990692141 94352143 529346723 334494567 908824742 944337180 991240725 49662753 592830019 177027506 273604196 904645045 954612071 835203444 990815333 407959085 441737467 538190160 897679787 877610241 958100115 446581698 800549444 998155967 999372180 716503786 735489817 336603807 891142836 773060647 792235937 872293631 966046732 529026267 664512458 383680856 507964104 278090224 354602669 733795932 856326132 433540263 999217066 11348282 53683971 338811221 919585918 440748884 473935079 725903068 761867385 993165585 996981735 262769902 447538319 924903514 998482849 208590745 506150521 449555849 530253938 837200590 876140505 353749561 903905199 266961182 659630564 481536328 954635261 979161907 994702870 71946405 553953688 146889557 831873889 262571254 960627976 120446102 948557495 383965917 472449417 944582749 999238439 120759847 826313848 302339047 328424186 150073441 793479811 854619061 966520462 204147293 210402172 18054160 146193039 389143168 745405347 257673541 915679668 811219532 891584177 804479229 943675151 543127299 773897059 19151345 569018389 240449659 472418470 183349789 188203267 219208600 509904436 41667424 576157087 9301928 72280807 436154210 966855935 56356982 406065240 59244612 121577475 332865921 476672045 886389447 891560177 768124239 819224546 683721971 954415957 228265566 895590210 859069437 865375038 872847860 956141361 766286819 768632521 632621461 768555192 309336522 472122089 487612127 881285086 739019278 778235125 986117499 995035146 189416574 461378455 161810760 359058987 169555671 515223427 615013872 844495700 568089971 878651013 671286102 792481588 592847608 762357955 610459189 914908701 713352284 789588587 904945478 973710276 823186438 825653104 303714143 501113674 171933683 557574981 658709921 883010303 822129451 986253541 339821860 726241646 548186256 675535722 37825420 89381810 514745210 546479232 221606946 864952986 222449990 961424145 548614260 571496096 424019794 609821557 606358366 833863584 998403602 998454202 865870255 999653759 635813847 949618147 213744589 954919691 450941141 712205309 33779953 838303570 82010014 210981304 173348341 663621917 864802617 903773618 192639820 599919248 857059264 889836066 466308498 824659214 485894390 713113824 959258660 988354233 809168827 816635259 107727970 213502100 738681813 768064752 137689660 295487119 62620617 680062981 268494149 645457378 401563677 807484614 880940780 895572891 104317541 976693970 11043559 826371862 495037783 712695498 594050704 594365344 707295722 748784848 675233296 856202181 858716082 991585943 341021810 577863584 756730025 919047775 362161290 583949254 372263879 995001692 50929546 724488320 884614872 926496921 143238342 883848074 513517298 782859169 119505330 567690365 13321604 875090213 671869409 951638414 264401909 881311790 913682380 992417538 714614602 871279133 665269058 833845648 409092835 467249790 233427577 742583895 953485055 994391472 291650429 439477053 877141070 961083821 405046237 493586692 721499 561133588 838317427 993682615 91898209 214603800 191584462 605800092 486623353 926086780 529928072 729796971 570929797 696764140 459609086 482130186 5121580 355621154 694404154 989189272 549700965 779006638 80923971 631959961 345511197 541536572 100441232 589278989 66636294 847179890 382244059 639319521 924394007 974328018 856353892 878914088 375573340 459354796 417504076 525931726 120755157 513199242 147091992 563019652 469455179 576641848 239553285 951225654 31694276 414170702 513241954 543189651 116770027 407319773 737765219 914110643 146231842 665235163 465155467 568125655 47465490 733455315 673414222 911490076 6710114 45421235 879572510 913505051 331054165 917512904 205902513 498857868 542277591 656294644 943248458 956908382 971073789 991219761 668288782 703949846 238778670 817158471 342485975 379510643 348775107 595650126 264910169 560965583 167140411 711977062 675663946 997091995 75447605 214459267 952459168 953164878 453821812 950980610 952058913 992387795 465325615 824733009 248925908 274865482 83892631 981504461 598223508 861492720 770574824 878413135 365295347 900527750 374381474 771241055 632328649 791112239 228626350 616099428 188742239 238278240 901081081 955518877 9893756 523733617 57724464 542375600 697669418 840437906 1662658 604259975 267253677 633534685 979738357 982429618 972571163 985464777 423743907 975224261 378946427 710196749 715086837 907027704 196308627 888709713 420805269 623281511 864221635 904469108 577982423 721703903 994811328 995550181 453280527 583813182 528509534 821198635 936468909 945556513 506982406 780124828 347307795 605353223 169847038 448634279 911676198 944709437 81032344 611472169 702029245 920478761 442183669 561448220 984917905 990046409 978512921 998309858 997397652 998163320 259763519 261411694 334438212 783740257 593121491 892345231 144999821 692469349 901410086 976761361 971186006 973800572 708472771 802037486 340084125 531634743 883018432 986729341 441048367 574650426 764952010 888407717 947434697 994837228 10871889 317268183 829634053 950637368 793200830 801403600 947641149 998133322 43821618 733383137 149931253 468487613 817675116 894548054 628648089 823853263 64961227 816237315 924826789 991255222 653188665 774470991 250537119 675506720 618635930 643792869 707705094 846521710 343648738 781461084 349436305 799093243 873735890 998684107 366028695 550296590 667547678 738362318 720313881 765365682 911019563 977917758 292691101 482966980 722890307 798302792 398702571 890353340 549965343 634362688 569017275 708638310 664346764 804427465 532815310 906305492 929028337 958956354 290854769 799593180 414429448 600549602 839872472 887060488 889891039 949437815 174532453 445280103 547036427 596151803 496005306 785782096 502221716 961572299 435761610 438735555 404929661 549461124 416793082 762709824 415611347 805899373 446788969 501523598 52487213 144539218 918095283 940096926 160784348 891930179 220842001 362399135 924804519 934178760 917630239 933609787 472792141 742196421 530462306 607503546 274935221 309746724 186005365 919163228 443005554 901694828 440602811 992987763 917189625 976969383 988895433 989356917 442469398 604765152 532519237 628002269 969968473 980943724 132623247 151245802 291023217 420729550 396460378 966408900 493649955 813140678 914930150 970365554 398188532 563601032 229098545 809526055 509326339 706354725 650108147 738654353 245872306 547347118 112361908 267701600 693299674 819965673 22375883 376390929 174754950 942006700 429724747 925961403 147462685 688469505 188721651 367891062 418899575 868197629 167903463 259586281 345375756 535160822 789621740 850528795 809426898 960789978 583509963 607255788 669089514 987233730 126091857 691454935 882503993 977855428 47223132 73881010 283349549 667249785 161975604 875045264 337179838 801773349 388893052 946457088 937427277 970036918 56279268 882091982 354942045 437885033 645397039 943705215 484027256 715726431 196204542 815339765 666583190 973950207 411004011 963912939 226691026 876734234 174287371 456860435 100242530 350801047 556643136 799568777 994294363 994425543 132180479 582407221 618194428 754564667 316051978 444359706 862891269 888783962 561959248 785256779 973692240 983647556 858562780 902968342 739379454 869310106 119422733 926679687 499977197 539152695 222015006 951913294 489205010 506148980 287110390 630578199 443182083 474786444 325259636 605716022 822947496 910712826 479252578 743804363 779696324 853686976 57082821 390106260 376340894 842032092 757221527 913643349 685947984 742477595 499110369 960886484 734001200 984344837 914698982 989134085 101727990 677665893 97298601 541178211 327543020 651371914 714649567 789681121 640158547 992230704 51153969 476484587 701904005 883600358 28439227 55046209 449786907 655758577 431229679 994295894 399749159 612530068 851323603 877447697 987773011 989085713 572598697 963285308 926474149 987324899 943594818 986242974 381526969 403546708 789770500 906529777 410494201 845430777 756444915 985626206 240124230 874972861 690888495 978461580 188092876 530247426 355296719 393170921 473143733 808467446 29880231 976244694 709625788 845372210 557087970 963437729 616164279 791704827 529881805 573096764 626423224 774326783 88698411 963928788 790654994 982850343 365838716 404048290 186946306 646596329 25932072 924420434 736130946 757409650 144443660 914310819 239760927 344757057 348568921 472485687 238907243 988766354 48287346 99588525 629256881 814803052 585349209 974627482 868358224 923105015 696535519 735550191 666604724 794519598 523853096 634485720 226775166 796527750 354077350 616491925 838345060 965663778 48333516 600852630 321724995 890711471 223538249 548014678 513945439 987952612 584020629 929055507 853232934 855099508 931815922 989989620 449634574 840996375 156660229 213985890 767113384 911976972 470680233 591878341 346472159 789324264 943190187 999657600 804635548 913453079 584186260 871504216 837367695 842389587 90020125 200451998 608458724 897019512 974372709 978251915 178503778 821635625 50565987 506819577 774369472 798221322 348480191 811186293 140022541 185929730 145962800 732791233 968519673 988556560 221888566 834961707 407973806 574739044 31920236 785399368 271967125 826410458 977913375 986447964 937742615 975684591 512234522 923724664 458332184 763537143 359140266 574710664 121483297 595271286 92006889 871431210 445557531 552587825 999854502 999890831 186069557 208643181 746649045 811847162 861246621 872689367 717579618 926373139 373487973 395366565 96027548 747499810 282930267 492144537 228893506 433459247 697922441 905727007 316663374 986019083 838000081 874670298 668222234 914699528 840694366 940802287 805853163 929235746 847826843 920378965 77834235 273287248 616673291 623863337 259019481 901122507 508325350 522915159 251549926 822892990 36803311 704838490 633866553 793043375 173243797 622921524 402714185 616480930 534546353 707306760 497375189 823081422 845642966 878071142 434700364 441489136 155492995 562756978 825031962 979181602 169925578 557399728 350146471 661065042 600692848 939913706 474666963 892981856 90876391 527297722 212036141 524830645 708628245 842706456 748042759 967828646 246221928 843665978 726604942 752539526 329261725 345380481 211029621 228349768 765437811 972551054 263503655 365595688 822755712 880463606 733737715 988177413 982045247 990530167 466959911 575680847 397602947 787214134 745988989 974499950 694744774 897883570 376385974 959068392 77047973 364494499 564318583 851109911 665447621 944901769 208823060 526222883 432144283 554889658 330151051 738695488 470250314 724587218 514868053 534870452 461551547 594062735 764968790 963057565 452855226 916712082 360293988 540345530 381524958 575275676 507809077 509025645 121424436 800398380 664658138 822557743 593962875 867510986 869741003 955181175 387197998 410800008 4806023 959912612 76838805 436679772 435806433 856128857 51072934 567512870 775257288 817045467 304859895 713586352 850579844 933453489 545449805 603649277 844442847 894354024 931120704 967086887 904371822 990167011 972380726 994516877 333573344 699563234 287192513 318088633 209308077 338400220 934600588 961050320 413673939 933848141 92944496 736291231 479959783 834643377 90264891 116813492 477105124 769050398 826141266 941609007 371092449 478101939 222618988 329395854 609078197 932102116 997480176 998600483 551642766 626027924 792128292 804808684 903565423 990016555 552292992 801907267 841376975 992902487 419024692 986489538 702641455 728177845 911702801 993128879 816374851 916065142 979508624 989646363 607867192 699864111 999181997 999989345 13264840 315068570 685702305 849718712 355027773 976681904 227711354 507022500 160251408 537171649 349025237 789854541 847673667 869665996 722407111 855750391 275125227 758293161 574518619 651569890 340200902 748446775 655335216 666472915 731386439 974997101 747717397 813727216 610307171 984307285 464303091 741602671 525347715 795828838 538892926 741060602 820062447 954290009 798544916 816592610 291998015 339284110 494310107 690939772 167520690 319192834 800264019 918800276 161467396 907613708 211148225 520788074 570786509 701667286 874023436 926579599 376386046 972360462 608121837 859656613 417372488 476583689 894338370 947892428 662006234 710608473 921765065 942636590 348341728 548693123 368746558 682252128 294129349 421950268 209685885 712358772 855975819 887763516 664906351 690092118 777307839 833664850 513433853 591066445 921448957 973962767 66463589 904340422 529583146 536791385 306396704 865933727 346038850 765692291 113766546 346100305 667327017 955743533 795406031 995541827 29394768 116428075 355120070 952872539 373123127 401182151 335564290 894159656 688957455 709834117 911116458 935006873 385605574 595336808 267450513 949617361 505508674 906682333 492661368 665713439 484971842 724005522 861346422 904429068 953687425 955071873 793357799 807538200 844268455 970074019 297437868 673550316 641231602 981459265 475127406 630119842 164748384 672789822 524156112 766562033 861612663 893778573 680428429 766423553 715987585 878567646 674445835 686678247 969158786 998858279 314055264 475908317 193426740 386355546 999595227 999844309 839332149 932348618 587078625 844308240 879099831 927195241 802469599 892540123 250904530 659522323 114394543 926138641 802804768 923869058 300530368 568802023 495386629 876718952 817810352 907855571 225999714 765423551 866968573 980573769 334401883 597799277 410701646 824011248 338799077 494085444 125609323 913682126 256573475 375113965 278368574 618179902 869859129 893624858 343001732 485731564 279307935 976280699 797759683 944827378 198863983 786483847 169525760 351978507 192070276 934551117 582820476 780848492 954425241 958175010 181136915 369234726 15656452 753277293 688256883 984475232 442206885 519564658 166536569 184991551 719214860 736905616 551436773 912003395 741012194 991937865 163473900 623191807 794874474 811224758 460675495 695867851 101382893 804703110 700410642 956407856 540938317 846080759 872808993 883789744 291515830 633584360 233227692 410377749 52454188 945366501 899750699 978268536 15034239 603967137 254944522 320725685 189254256 833416454 542560792 747632328 732691622 850320023 729235323 936761398 107792533 474559724 524762534 911986534 36786373 578998122 242851035 447553017 171469857 991610586 405469318 937469110 165431340 210774232 509895324 594287879 912146431 914306910 890208454 940220699 537754532 879642283 583623428 968129822 934559049 988847162 592243710 612719006 650997043 688745296 793943303 919051284 892747701 983465845 17652297 257874629 550605990 763832443 740167792 765443354 868230638 883654877 465799310 585561485 662217641 823528468 678029207 697092703 413205752 646200704 577221290 718344383 883399111 918387184 49310379 871682318 179283154 967352361 760937622 874292282 455522941 485448533 623928038 936753452 736476336 739966511 595152489 758397046 600263298 994496229 230102285 739337340 953111212 965921945 194990347 721220446 676400541 940275313 283677802 572448768 993890968 997837239 209160527 705920831 5225627 998148604 290181185 661179386 134751351 370346372 30816045 635013455 292006417 663504275 818016151 884720202 236167227 322978171 838577966 953056664 317787761 830673023 544387482 743083750 691137672 805825715 365472567 606640965 521318181 626106144 607118473 830749913 278557781 392838258 220979162 618232663 779857152 859384904 424296660 638307992 72067278 898761068 582992568 836596171 431151863 616027937 853924334 902562960 249798420 339670951 40905059 191952849 415265210 633462649 974292583 978954407 761523534 994987000 257596361 447555298 211222345 321815575 201752731 444886427 62009697 486789603 313286461 554517721 378437245 938331108 591741322 954080847 305166872 471075047 651562576 840206463 534805417 845841849 968134582 968474191 872453505 982295035 563916494 574181860 377964862 960312296 163502484 677849562 140494184 182691595 851057010 952162257 1677074 310911625 773076210 954498375 852398813 933341332 445527938 889887369 786366584 984572883 321380316 479547579 800588153 966393130 898585616 911627062 523951338 592370574 983225808 984701212 113535111 781090015 930614866 991998547 139354546 735527160 195561115 609361845 528483051 938025161 922060181 924545302 948102995 964995839 110310918 746746182 255963452 996201088 329503395 626705709 198632458 885175192 445146839 852338068 755398382 921288773 320768964 504220469 752579896 857770108 829251297 888747264 665891751 995704982 822005626 849604334 713267249 935112150 440824942 811943137 280013477 792249175 897729967 905244129 763623056 801019087 311274514 921107660 527345522 703875881 607899000 736303216 740809185 940435802 720557506 931240096 542248295 727759216 640172385 852142284 621301621 808858671 481784237 772271899 324930343 353748737 634848376 803542663 569070209 678627870 559914002 641405399 127066098 956162251 216513290 308796964 717680859 817108464 347976852 599304659 248587294 487430714 377168920 435352870 148856527 450821863 228742579 997134185 41680432 185593571 572007028 573180352 255436762 458562990 105546060 462242032 224856640 552009275 140687246 868392611 498261970 797905984 417155885 758661635 254802936 823802955 155407326 491869189 182761337 362992253 94586458 671995512 575028434 690801610 500137390 928687407 782827336 789561665 511350186 788106482 696999080 702099706 788477161 902171262 708597777 788532514 985503893 986267895 710702269 913632196 209251540 448405009 109810335 585275107 679311858 979561586 867329647 919096034 933029582 933125131 899548207 930145808 60915228 582513901 456689904 467566948 883612382 985902944 422997476 884206610 535317982 774332189 393255414 396660984 646358858 657254196 338689930 552471751 697294007 875884992 70272525 836684493 562675670 891234114 823490235 860598323 736647204 880096013 647342206 885812635 677952845 901092139 544013156 954722619 729924105 751625828 173701304 286867334 226238390 760012901 530616871 705257964 216625572 613850207 154817175 312036889 13222756 568184655 867105376 903900687 914347001 973570078 238500159 289462484 335413152 749071900 341094999 695173033 4954842 852125872 719242667 801277749 752125472 808083662 373477166 556684480 638587205 800358647 950537061 971697350 609782525 807121007 459146736 922571869 129730703 277931755 223424539 491616129 959698205 963185300 305169204 681209734 501849486 656202597 137692944 183684920 177736945 746214285 460437081 861980429 584889824 974592999 527204731 902218748 392541137 902938022 441298476 666869321 402401018 658473222 93374120 280955861 783189108 879599479 481993364 904813664 243411300 815661270 722985618 911238611 120423735 126086166 304408222 504892442 113486455 255286774 127571582 453822814 196539849 473768920 575070251 777972108 420905862 573522222 83639893 111916559 188532448 193070526 353792820 976533297 366537107 544566328 51263096 506408206 582006777 866729578 291637226 526768392 675449273 711955568 668200749 874713386 125830282 382681672 22757456 22886545 128904601 140252421 298243804 716696027 921119201 964761409 367848349 729591287 956429208 996366862 581184566 582648254 340012706 360385470 90487519 961700201 600632722 798667935 250112865 477458083 562988600 752414922 115318834 838343639 294082950 557758034 386939796 555370817 169462418 178499577 117608745 486039091 767136474 868844034 583935644 856113740 263671030 295695467 297795301 622196547 350517419 477787580 367901727 464917506 989015429 998383510 629931240 784449263 908657618 940088144 632632996 927385829 232415215 735831424 916955996 968065524 795160414 967940696 646403308 813969470 585009508 891445801 432345949 557217015 896960412 979700721 851421483 938830884 268544343 361634444 593936224 733749630 18304473 307808060 534179393 909042420 699965551 755165997 671614077 868260396 159353565 873368662 556399309 958622577 901625562 920907305 315441113 878184449 221146286 602874771 960689452 971753867 416730744 964742433 49178107 786755487 947209107 962058918 866159658 894466048 295657377 688364954 982940970 987680783 161273415 334556668 494162571 682902170 637790194 892440311 275284752 295838151 991415066 992672026 163770995 419855630 824923826 891730094 565789912 627448658 565703 938475973 721494757 723343282 347979548 878340326 633352014 873782971 443324453 535709000 699011112 828005930 781143877 834742152 650986413 797052163 220465460 894288076 497007596 907526525 710229774 739543958 480136037 977622444 665081458 932408439 808599293 938759937 347479012 800920720 948188706 991595681 213229663 764304821 290250231 757317955 262015721 757967715 554855610 992086223 489524654 719607655 436643608 662381065 797155712 887352034 599539630 635077165 645069815 939213188 347884719 810573863 510470730 872727021 520796674 723260098 278533618 412615024 955578448 999088655 494365933 961189581 794591263 798212795 203053934 220063516 98430155 337039691 392526649 882936922 486600545 536343282 70934835 739929450 225936383 531443581 886744400 918662741 894120400 966817561 970425816 993733338 533716618 549404830 660321808 879808216 398972333 698581725 563555823 901486513 964718155 984217162 94266604 224248728 555395141 758835226 780608346 953834052 870497344 945884698 449699749 603466328 805966962 987852820 93643891 644258302 94949366 956221717 950809137 976476749 822339556 975798038 768439373 805279541 559904853 838749602 270491396 684870994 573305094 703991136 152391568 165622555 118904848 489467890 161154653 836626130 33014590 650486653 444541733 932325117 46489482 649028916 539629435 797567867 431642376 549858673 239976011 765974306 948549083 960990295 491809141 804921866 450388809 482500103 303291379 447113222 584386583 931349890 511613925 846761214 214644027 826889363 423631786 958530405 949634452 987022132 492324626 744569371 797574446 929669460 15065324 550937717 62524200 258047673 143901499 472782079 243804765 967655900 957312256 959659919 903691747 905260679 363999262 908200512 89611182 834855159 67578784 703057945 695583792 744098802 880116687 920896368 469258377 588293474 769210179 992503447 256136227 433721739 473594864 657746607 304938382 441698688 562864651 920129142 828453434 833321525 466794091 910452053 779726303 894787965 433574226 601535516 906918400 909787843 208961053 701003711 338392454 676320817 511682656 935349898 428143589 582625092 29799586 246220874 369158273 902553347 360204429 862118205 214296197 898587732 278374561 953721570 616059077 751379446 432729080 725551509 416978187 661385051 171141883 208004043 682115820 799527393 583650159 803971746 415905957 820654567 704060223 997772723 486692794 724285983 868082212 970015730 812331205 833150916 461066122 838210743 739802503 937630841 72315293 325497629 963465542 988408938 370710113 625474660 962344240 971531552 526611194 628416990 461000519 881726013 544087671 597298608 917787362 926662994 767456210 947125603 636154577 749399882 224267236 259857825 526898448 867010666 134830147 650137620 543515328 738555335 308760546 331902889 232753068 533191612 369014976 958661106 69352001 224602436 713663279 929662042 201012889 572795560 136365477 749887522 855550070 936876706 710312465 873530092 799494882 965643022 561327100 861183114 369163099 533403988 895827050 959310270 943213338 954396521 447654821 600230001 878346992 942127310 748641806 769860882 253144001 707896309 251602435 943074278 567026649 678147188 11977827 289478153 744095223 745439606 622515145 865033079 612425480 981368194 985493357 993576203 301946145 852599262 117354019 829699878 719484985 743487457 5501087 479647048 214968850 710083412 504917183 824419896 73152684 766202256 276451442 789560223 941895187 957134060 816667649 887011452 295711710 883685325 339287685 795161400 846278134 978521549 85739549 909384795 626521436 938176052 577602125 745153180 652367267 776979362 902934172 987831691 877004872 884356438 141203579 822148564 202301838 723465482 306067197 613207623 447066343 984618458 694549100 954221663 230069581 996023388 601324835 932539248 538736927 583652083 669867227 795885910 518882699 900864169 725731155 840079866 34729569 142727796 104359998 116956798 572275843 623633084 116913436 895217830 823103670 857980690 584978468 669837364 343116867 361398036 797257220 951934722 855759058 882896441 551304649 702997065 389318387 397893444 656246002 745822450 911958854 912965115 787919195 977762485 538441702 987046458 663888458 892203889 685349221 999210874 4432891 50747661 728466239 912676853 954713550 978161492 58707789 846699458 267626142 796922842 91501519 681233535 540638302 856068206 524128577 787101352 703294752 799854012 475879246 477826432 122732103 882360915 81767853 861693962 925662822 952096309 119266136 308174540 932386126 984179437 51456256 301199108 451797566 808087628 329084421 664720830 534519935 797179186 681979520 749076425 999827130 999966662 97520317 147481981 235436433 422571700 516644487 696423626 974935886 996099812 646137748 701754724 480543041 819625652 459955869 895271217 218570920 956327697 608544239 733181364 634611782 956044634 351468499 440150794 385480066 753761053 321053851 725184091 307305721 904530076 801872746 916443831 443739208 713327928 264213059 893575054 435001579 992013432 982575282 989944766 436752295 830297013 361782690 519797275 199037370 940039802 908353808 994676007 434051098 943997809 970978003 980151533 914645098 936266453 935607209 979309653 897353105 991674609 465272627 643261987 111463019 141515421 972043663 991983470 789213377 873785036 694052290 801304753 255580983 372787682 282851176 911255602 125402015 283913533 398153184 676098319 268245129 852191394 200152097 300814691 636675853 739594122 137590558 809936826 546484576 651570450 102237026 372746182 615647522 938039845 585905753 962972081 88589296 429399490 475793881 936208898 67046642 634019444 8140334 137196785 341494125 907231978 662041251 916838813 718884829 950348323 905089520 941626278 931120740 956303509 824419673 880877805 521164349 557443167 666170998 910277003 381472551 608566330 22223347 988446639 642196203 891213893 134394010 951653937 679742524 745086418 898241099 957222874 750578081 751920564 844084414 938119529 919765056 951972869 277775067 547358017 206344088 905140423 615053595 799399651 515036409 532489183 965016002 993039802 693552208 772300314 453599916 766589998 667920919 998262008 336292916 703682376 44708811 221231364 561479426 739647908 999450727 999472840 946817693 953602622 578562213 974783933 518729292 788970810 611958189 709101332 413608590 674115519 275648569 901399970 922866885 956505771 739455257 942373764 31114184 129100485 8664381 948607290 139326670 613342881 974893922 988756619 325805634 426913971 270370547 433059934 262265617 816268886 146483763 964121653 793696959 838557183 744267068 900621742 477678318 662665935 53644986 668587179 997896149 999588222 683729923 894985986 265945002 669955618 180348887 566770809 875317686 879088531 943331812 960079674 566567337 997510544 677490504 703691527 957609579 972738249 913248093 926045082 796902152 973213627 42230202 636105576 964685234 971347541 432116108 625495628 10237515 165608198 650979527 710946806 111230645 789821952 317243791 372946459 12609022 972203769 7631989 939986053 872439123 898417366 760282095 942535362 356761057 855081483 362944549 666837743 612414418 930726886 757954050 983530346 685675336 769477492 411369652 415835650 367825910 881393231 699885860 766213029 704690 347258983 966491452 971479399 43916866 248704689 733640078 784739002 464471591 744683038 211427304 603267619 488716436 929626770 782618796 957064737 40378689 241450162 56679475 858970472 990809896 995741504 249685930 895298577 765136901 848857819 492143021 715925075 402667527 768944868 230607316 561176416 566156512 808814984 154314704 933894261 330542273 403732497 643533455 936757134 729498333 859757443 606936909 672123828 695896218 958769584 156638311 918407089 250776180 611978793 205723375 564122707 767432362 804105162 877260006 985178427 204680493 660071825 823772988 852103861 80376426 935328536 499989974 695830038 863616307 965711129 468392159 638048769 452673065 932055471 343770422 773194692 274679869 641792866 337224487 582474238 749987949 925193771 183726273 245458805 67777490 397245971 651476374 901689632 689571047 803355104 378792788 747299706 195405810 771119916 167826149 327436332 225796198 897002648 945781773 970966447 568118614 925124023 736349605 892464085 963868267 970486612 850903310 888030004 382402124 525942984 340164840 924505248 532440069 957186505 803449336 850243841 129112402 735870959 744670012 787485872 469862016 922001300 788648146 820685883 543905558 701922421 884693081 993735101 821094752 981411326 670505693 691860452 300744657 487400938 447096201 865206982 149720930 214360245 395026198 897461125 361231609 847451461 600480491 817051711 496232654 848694416 650164707 952864687 462549063 868842518 151419894 255091230 975089029 990508346 616025005 778598009 340857501 733978517 907953628 943004397 744089696 780709269 456025400 628010261 536811301 713654369 731569861 793212213 845799515 911859313 856901826 887290396 468768577 503618124 974530038 988631790 173721971 515583776 173389116 184980462 566426859 626682185 469151543 776245050 431863845 669682232 896336891 960033846 595232601 668403962 282886239 475628712 903576883 913957162 65277887 386083102 608675458 662587758 69269318 876082772 780160740 907839983 561218622 739241933 600110352 940419834 86363108 534060252 769797127 815509290 605212925 616678021 230449648 683675464 627229752 911136824 284879001 694316864 25290724 851447119 258626576 562527223 173943309 351299329 547594162 793505677 508021218 920693896 817905839 950440624 363373430 728331880 94152305 974378269 666618380 719721591 292818975 558363309 388623891 472160757 294570905 864632012 853487958 971112656 295571255 972521893 271170786 513175264 661536737 881054047 339608247 360818983 554940887 910111167 942540257 971516096 127013575 189260256 61111659 207228769 146180193 243198779 143257030 634115185 338130928 694042212 862987813 881395325 975880717 987928963 316033759 937348804 797158569 799679749 789121513 796036951 149053130 207540076 941993909 954893769 1627525 347896360 94332927 870910563 251051030 721412451 298025009 601830949 316452068 439439553 231008123 619126813 616909034 831028111 460962741 698221049 398867729 555304217 868236154 956720247 423414476 905392974 834264276 994988339 574879590 778394979 548037120 995718191 144987239 829914625 700057069 809892780 993597685 998480730 514553386 874027253 995793541 999358782 308001288 954376022 357879981 451631597 824798860 836678101 357520172 875155964 382897227 418137175 164861377 187190707 496380131 583965137 691395165 752562910 303506100 611771777 706860774 989873156 584767596 827153537 679179256 877816598 405191580 520616666 140998007 471289645 399258827 995472547 912462938 923912159 702861639 838555488 248283158 956802429 417610942 492530573 7425687 680283908 940623660 961114293 813064607 978015765 784268310 922954694 175232964 706043465 313759063 781839781 294531585 627563479 521109822 763724401 369973670 672012024 56043694 913619819 73689735 309123319 286618830 365660597 345642648 647230402 243323794 530535370 257325208 277737695 972133045 995817575 120007072 907185556 786320640 789382314 227807716 316188270 100119933 688615941 245429000 768222141 593300005 718945239 521411170 670382073 504355254 863989612 243973566 682539536 185822312 791768801 123792553 627675224 936465653 988265203 150723450 917093664 927677486 955401451 504566807 813468940 736988544 906179880 883370337 955924140 841640784 854345433 566468182 589887235 105009315 738238981 721121283 909894952 945856366 975631479 592227724 717156684 105689063 305824551 127360360 596787403 94482057 121115921 203527326 415958879 329803567 958860825 150164883 895775380 263934117 356349092 160035424 384173055 283715064 411863568 67362553 406018498 387106398 430653765 597678730 967768326 733455998 734798989 587236671 820206670 649837176 710766571 939484120 993447229 754880329 886089706 493079278 603334083 651168387 859962048 475877796 538854083 571593398 878237469 268749118 312630125 491340704 741021747 473807144 778096770 958514239 999982118 326253875 460869476 184199158 476522452 327758077 843268022 827392219 904507108 67232070 588642280 490329018 990161368 945353520 970312704 266528073 597295822 297258121 361080234 322716263 648953332 78591262 448117899 759119216 873464338 619147491 940163073 510995736 824870923 843835378 983666241 609912290 901400494 660823659 906922433 822427151 830644309 188743288 606618576 74755431 212987519 806334389 932318027 57695062 190455482 296901677 831361230 48497828 679390959 505763050 998587573 872686050 978328459 574967098 826642947 501524588 852400104 267545576 831070069 727634745 886537508 660752659 741387571 916050532 996086498 734996333 772262241 848923026 919080452 835203915 904772774 326822128 330860529 506034861 741037564 146081344 845446918 153460383 484494440 338662610 433410800 814175904 974939595 938311447 996715963 721262673 941883953 410602782 882724621 425162511 489040546 914025604 952379652 427949202 664382227 693437015 979919215 260985789 308938323 907243193 922432507 976153815 987312235 243624202 615388185 749116381 929327022 552043417 655253610 785288892 992391682 74839395 639083276 338727513 905451093 590681753 709068269 925601170 932628132 434730445 826229735 604906049 927874089 905544 889246369 681387686 918187501 644780066 704411989 674206794 833478011 670223940 727347192 215011187 403182343 787429512 997996431 714280802 951989519 872906432 904371746 249021265 759279988 686082549 871043544 757072285 968152802 462121754 922582446 818070971 885435459 662354614 769730748 278843359 954236961 161759953 768273043 23080453 898645946 633162882 719540317 903237386 911972537 197753257 667939436 142344079 499607839 817426631 923348060 330796899 818779088 566387545 765608151 152563410 510188360 849680928 865630329 931455059 998138415 185095518 255145392 820710007 978401185 274259071 943704592 294789096 764016005 383331713 412435309 606693909 703453651 760761247 774021472 969958699 983559357 360526697 930869717 991193724 998115667 144418488 368065348 254058629 898853840 161704915 169588939 789370867 906510255 500619891 588978791 205367380 643888751 40152173 596517829 9672811 751356243 532159644 976154750 815284679 908393058 398711450 638714461 236874284 982024555 380602300 936455765 635006194 915935940 407844138 871930013 607817379 757091876 275300225 776656562 392768883 942714522 179024932 585875349 84224621 681255798 885259213 984289948 734855311 823631765 597981064 663073118 908512005 980988694 960939809 991935006 862828799 864538745 639121039 648398286 991584033 996754740 568564062 719396341 408309787 640466134 678867776 998033010 539623433 938315174 307298912 760260663 325746419 772095433 828357033 965005838 755246429 864146253 417646470 467682537 142322808 850706404 504356790 543371737 643680560 903891956 203841867 550529844 284897946 626928224 805756331 897315231 839874416 886563898 734649322 928579014 768163152 850231105 443097788 817481962 464781821 541704705 7874431 61397310 448379090 814943803 995810979 996538512 832161533 974918230 816486925 831224542 803983276 928194750 788552986 796261088 298350596 400211260 402738046 908237407 997645879 998087261 339845634 652359636 568572467 772891542 430006969 598321025 296931396 510070069 632626424 876952259 940753427 997778947 37213354 286050554 281617606 444378846 756557252 789835158 998029445 999901653 409334457 744435979 608222348 938346783 830826426 957118814 205456166 734799470 592406901 994135435 596950586 676174407 420028510 800024301 698718731 764203218 858534627 948818491 433545195 925248164 840299016 889707328 460326106 801886451 822781620 960105796 891532574 940186642 351893721 930373952 942637270 981450430 737819999 909875660 543297457 654629288 655143161 986558879 195512305 509659136 603385107 727404350 97086287 275953211 282770297 313355165 10930990 540712826 618936835 698926725 386748564 921082859 100096699 105729302 920575683 932501299 270426023 278241404 324666654 832682953 483231493 760215712 77008333 535535140 758457339 789351814 205250029 377570642 297618852 727046539 485900908 762684341 677180386 785650750 87098119 148834165 99454895 975726087 477777135 772594211 818073960 995733713 53835387 684070762 171408293 948461278 288846303 873494412 203832395 866093408 224180073 822204928 812051661 942319683 317900008 609724858 641109850 942113466 975401606 987408185 688495341 973524780 900774294 933940954 945482891 993186534 715244394 732643358 913000175 942613404 304360725 654005989 969090156 977684341 660830138 913611992 493288617 858059796 929142374 944601478 936722002 963588786 731797591 853652614 772910796 860949616 844250236 971558964 878407020 881651528 259889268 754557813 400389384 901789392 88349410 123736854 261005670 519614820 237724494 327559465 208004404 617219300 242284217 811461528 127326305 887998957 616940831 682963962 994634688 998305522 296300634 365474491 294348541 914584106 435845809 667749957 90321270 625435738 364764156 806694127 389534812 787417797 885746354 931636338 777700068 953774059 444347088 575696239 515968743 715019730 975629404 985137571 178645312 936477008 177926907 742314307 407282271 663794979 600492062 896963960 275275150 914381509 525474923 620902016 995915115 998732844 916128929 993703129 817695086 980875183 997684649 998386785 923741958 953380500 537346247 751192938 421688580 718597610 963021084 966775266 224444327 347453036 352251414 924443193 531349272 561709021 131659378 148083528 605301250 942510572 738870216 955175882 217496284 757457023 408416739 434259842 38513904 678674715 23159117 31023589 305596325 350883777 209726437 277862164 792375679 849702688 805301934 838081225 257831903 346370013 783804130 892859793 35148928 658901266 683116341 757612023 704535282 898289022 389047253 636548376 138588319 359921368 715606821 920106693 325151665 828887434 7437865 203582582 428934748 803244853 772532524 817335585 93938992 870549485 213701592 228814165 756892157 959611648 66419815 233242689 112150540 986989077 402646131 688041690 230924099 840157548 621000995 849588837 7591112 999335062 927583159 945906706 801176191 855554500 490894077 959605647 867252198 918709400 575232022 753697773 871911951 898691403 130966139 806167810 153651559 457853236 230927146 690159519 921992640 924179367 599095301 867522469 246416043 388831845 537396636 784873882 681191477 858909522 942602623 989849281 26926364 105471942 306788101 939879491 811766850 965481207 46496553 423520219 751583112 913779774 980157259 981715929 876899345 963911397 155659124 691999478 143026155 292371236 428541691 543544933 209909199 286821332 599052093 701399935 813609742 834066319 731908651 935212544 900687192 990975066 866080328 985945652 959147102 989771820 196814238 899144204 582500350 788702189 492789174 859298147 2101926 447302567 97084089 517600972 744144862 807764441 545727400 861928793 881353653 919741559 860843848 943361701 867256969 871137149 951148773 996946509 740698385 741153835 766126150 893683200 537969213 588999235 523251987 622331459 149120398 287713661 253411064 496130039 826836873 839922835 107649038 574866413 787624540 921878090 640537882 893978136 724667595 853178714 986771401 998716059 516816528 539599349 663467502 688836530 913007286 989538127 183131648 815582920 942870344 945544987 196880682 614259013 300211267 718508840 616911956 949791539 180321492 666444225 45416773 563594538 281419531 822311002 609224912 706969399 820939874 914281512 168771519 403193320 903523421 963595485 217820893 789210385 455030672 765451222 206697416 800183715 565510916 616340729 820570478 952446563 617992501 879596025 517163178 871848953 589616545 642515483 744259031 902318476 692213758 800416508 150485271 262689071 77060338 973717908 734898681 755978224 19141156 652199872 241833564 472261502 911901519 935650041 231443925 567256814 554453470 664941216 84269090 329328636 856305536 986641722 468276883 733878621 708817298 811091219 592426783 931246891 69026827 133451044 574721945 732570752 939524347 978115735 244283679 650590128 898480559 963462420 283935803 918282198 703915041 767865621 524493861 620698651 264988840 818640964 115834579 530128835 80771183 205752488 390503544 765408234 180381874 531714548 99829983 324676711 738365222 906295978 981928984 992823155 472207196 772410240 756273728 784393934 766766623 988852144 575074617 925905247 952694596 970691213 683454931 715359637 292534591 998003191 11357353 253584684 336158095 488942353 369070772 868170581 122475952 257552869 944932134 986332351 522424281 807715195 190856773 868009166 917785445 984473102 628675410 741884374 273388790 406242259 964778688 975944122 366460859 995003169 96372941 201464844 198811553 382233651 328124403 667042127 732204929 871723687 804514940 827753498 413919391 462583843 458779797 564757010 5417697 427889535 419832205 792411458 806886834 956196260 214591502 597116917 404759655 580045316 72651905 488530318 271485580 766865983 608024588 918127500 160360024 769556231 188923919 375309530 400214731 618225582 123236695 922817816 239132890 391866377 248079249 816518586 4249033 640673655 795516355 983527758 33889057 212606566 322268271 955307389 385176911 783695601 277964824 412316061 310844402 832908517 176407382 543638743 890367394 986677736 571368108 856582870 188151328 260488203 907040603 925303949 338515262 865489184 454239098 921428567 929716467 930332434 423973540 986178121 111766730 300617640 69502189 168604557 766468110 822561670 1833793 904082914 81167013 138845932 3934196 245316147 683015407 692487032 727044263 852717304 880900959 998890585 668176528 769180068 242915806 717156939 35251513 539671285 367863354 653227385 179646415 341130534 521441580 873897295 649856948 946294484 625038206 746694173 713202210 874603567 177550168 746204193 523517947 704360972 125636058 904668480 96095679 659991872 651324475 712982705 481769687 712995154 978077603 983032487 782279169 954650375 12259745 542597683 460662679 925651902 865299894 890113896 120681012 136050313 914134184 995851340 816182850 826688047 85801789 86596528 403643938 933787865 319730139 951506987 645510698 887969329 623302241 740002762 625241624 896618725 34543637 702709690 344236905 778414497 31487308 425695363 248624077 956937224 408181964 980362813 921255870 937113881 789879860 933666072 629037074 682179220 321553434 964863676 644946939 771695174 542328494 954840185 724619874 942233434 567903481 701719119 180314313 256036808 141483775 400367894 364625403 386199714 104187917 517983978 494384570 575135075 360675898 895660101 653534416 765340212 992849702 993268493 840803678 976000655 275034430 819294865 683843962 802975699 352635300 444101049 225574123 503184965 300603604 369585557 984508038 996084902 30850443 593608778 813600678 835746501 898780436 933033398 924111616 959484815 362869467 890531915 585421233 821240924 359103659 497656483 784652007 814356926 627094248 896954243 570217728 805000147 866625689 928296588 814307200 969282184 162921052 748944414 236839391 513032007 665355599 720083090 934980498 960497278 140628068 856692207 592171161 938886542 688643975 979783090 595608246 691443107 856026210 977727210 56930065 972147649 110353803 381682185 318718289 820138856 395898721 695976424 453746737 647681859 166852477 728360105 133257215 241987887 375033519 533976267 267963696 828349570 699421754 879086443 234167497 402275167 857831989 919927318 390887539 779762629 211160058 815667323 757504479 819001194 33434243 772235952 111473629 424041797 549064084 608926275 234933495 711573763 101437637 818423801 12461286 715766402 557277404 742942675 730242137 938111654 51719376 881113526 98485009 546544366 330312689 525204325 821599596 952180898 426486035 791347627 379819978 760157975 973221292 997538029 949598126 954476294 387898068 609858775 17929785 600521335 432598763 477331597 153598399 223278091 295284958 575456345 379163937 404268860 951838537 955728853 692276268 707326017 923397464 936371314 962320151 978447990 936152294 989454434 74638113 920498278 59364272 707017435 799196657 920731138 703577496 852296248 854235276 877939027 714741551 779395599 227010717 236340364 476334179 639628093 848469214 888485104 422533203 644958155 380220007 781268493 388615781 870341841 568948162 714698732 940618578 946092397 826727469 952272411 729003547 998188858 985467166 998662674 143779994 710566414 435363104 616304802 802784968 904541487 719746850 910854333 627654865 866392255 880557435 903459778 586509688 810824907 297726624 813340012 888575629 956972427 932678313 965474895 848134017 972211790 711394543 835857421 915731609 967878623 705187549 792696898 704237353 918476931 739689287 967550007 984040516 998280888 153123031 625709284 452595609 784130241 166935088 327142272 495172417 812643891 403651369 423472066 978580864 997318473 833933450 887326442 259956281 307539903 322167219 362452317 136461969 484472872 48642221 98805541 62489841 248600487 960627571 966488035 679608079 780210533 192184805 679600850 483218055 952984433 219656546 338307777 67077888 566667809 309360389 584655379 473018600 789878482 480565821 589961844 273755878 643086868 911624876 940482080 704827559 729499664 668855502 993788194 477317319 904200242 697365655 799589056 297089911 980410636 745372069 870290767 432319341 874697409 571238597 723063104 489429320 497198105 348110285 562866142 739377542 806602589 959280654 971853771 559286440 965117936 134191350 924306163 572223625 689758326 309923699 602969317 282132773 767332785 701635230 968752230 90630140 414458054 594584355 639574714 98126114 299563886 22153706 640544298 130098442 732253266 36924510 600218893 867346179 932593340 991720731 998983932 427860132 441988596 365428545 420050769 631234246 677296467 79643370 732569301 518300237 686277823 272133638 697523658 861314327 969171342 220752741 443885013 673030424 836412206 192246055 344479448 777600129 926828982 433886430 578634680 842127570 906086453 385031102 395241075 508899143 711834763 725106767 972648810 401862879 816831554 538015463 598760158 456877147 895741921 745165247 787235302 632002150 809625584 495274570 666465180 780514375 893150795 974220221 979631418 337485874 444295023 544339636 708572110 205102003 589651360 298952689 852950070 677110275 771710881 398722942 474012200 217818473 961252857 715563389 927713313 839031095 855849441 378722209 460735564 973528761 974387530 656683102 671528042 540497889 977499175 210987280 743136017 356231766 415477279 23742415 582897551 576252333 638419265 709081226 951825941 644912085 954560435 866067956 929859325 493761538 524942487 717911965 960878976 534806709 827944613 569099162 837689401 165799822 395433874 839795339 917191560 492091411 852162608 857679831 967350907 589568641 825761322 984550375 995471572 37111148 677505657 30930779 144174272 735664933 999744936 239852704 940610670 182876123 776995482 837547594 856312248 330898234 673251323 214984596 415908006 437878587 856055240 476760113 506143675 426268600 645550526 99854733 756848686 165013272 327433521 592932257 615162405 946793564 993617369 165794444 667207586 866451155 904752703 106843574 868324930 263075018 779164959 620603426 794317382 609046518 988549566 482394257 820874191 391143544 510958783 981951158 992191445 340931750 970176517 480209346 558453701 30516334 705183193 455763913 508832300 966623446 979908494 610654627 626271455 892686557 971794114 37296276 480533409 780629640 927840052 257349007 899058894 924751973 954570750 899762689 930103447 405895928 679418936 621445967 848657507 33177779 356015909 365963190 936057033 239287441 559926044 677106085 686419207 731303891 753880687 112625408 950709607 454079649 682935122 307148644 573601086 816293425 949215289 441381610 477241838 242144498 934885689 460143949 663686868 992743862 996705864 397534257 798402017 356953437 569673879 652411818 905704300 4652226 772078260 829748379 988601815 634967740 847449296 440282605 674341058 770227578 945478410 67417725 884649258 770620816 843211364 725411951 744559934 935923185 968456002 100871128 932470738 778539209 834343848 408287069 736461058 145182474 976979149 732330733 837347739 318923884 357408513 177300140 759174078 431662815 453910188 291928016 624860410 282759396 363324639 591639002 672689419 600211444 898099832 127564063 839855395 273550345 638465724 712219544 875096789 556664472 685009859 295171575 509219414 574007532 735326044 186033420 250315161 821379403 898134912 840472896 876818731 782488585 856183591 536585305 910061650 111456830 145303173 804474667 868557217 416155469 678896291 478707328 491280609 133802490 755145192 561027812 877146775 283378725 290760194 440438969 853307810 796976555 838313551 181701790 494961360 873193039 983533158 925592779 977677123 234270286 948691802 241514976 747360941 885110209 942264625 237247934 308514101 516551955 961750082 649066347 853341746 87435422 686154777 55142948 186547748 612133073 616654947 988958272 991156185 744334722 925870308 366681852 888195661 762770734 838660131 783316750 898739377 894078786 927471666 234530489 595655338 274803395 287845048 873939165 924243834 526093008 711336954 460295183 491506141 887412868 941393600 139632716 962610239 837611418 908621063 356128956 945876670 359277531 972615266 466017260 512922534 878735594 893635032 979577659 984820056 776851271 888629259 136269334 526612954 373789199 924764674 809546810 941322747 645278394 990379035 755758422 824549499 863282360 888823662 119508705 695399248 115259833 588036278 497006299 582070003 264848722 340570575 175949823 671713857 776978614 947506746 565030132 927379821 137604211 880557352 505116583 900238299 909259127 959870120 619746727 640300769 439659944 528621570 356324679 944563063 411719868 595958190 580594825 743107344 449770023 673604079 798487449 914517141 422606795 897798108 276770528 941741713 993769927 995114733 743490842 971098699 41639527 285516030 393133284 509595199 791549182 937574348 411006826 737471079 345387022 791506698 784344241 897156714 139694953 619305780 159834160 351041535 923363872 945241884 277288510 854798793 452148533 463594271 512686426 956422300 759773439 794109101 687355633 940626480 986462330 996393758 910580086 961881811 464972841 993617119 649854307 689527589 96874401 180983495 639522082 767972797 929054723 987765822 935001808 958301202 714786060 976265407 218021778 856005648 655141276 965039064 395150588 498191464 91668824 237457424 113262866 163710594 88233019 950177581 50356512 180969216 580075189 719638494 995219651 998331881 867871455 997361921 918377938 932032421 387304041 742576675 793082686 828747660 342962286 985222985 672108098 698662336 507448315 842733777 98082299 599565298 558881505 677426907 681922697 782539023 41571461 474649456 733884173 913937017 313744825 790803950 999171808 999755071 148043466 538460927 752411289 875033559 682147802 929205249 393979885 407331673 741135658 852608574 47986244 695335954 880114856 982704669 63126251 852630888 641120969 855833220 802017472 865976490 636240860 954890081 54460543 136625611 883859965 988897958 717538142 855472523 152180155 747148806 733669447 802442134 830356653 968706221 903963900 927366626 608725979 929574039 914077896 938250835 463601562 535684023 698067447 938212231 644436935 921052629 452011598 600330519 267072306 544808067 360801871 396939269 258975695 779428648 622182070 848518438 614198000 628696931 158233146 462696394 900795671 970136218 42075616 883011864 927059718 954818451 286252964 950632088 514441096 994134464 703798199 933642619 67823253 597462579 3641698 514761349 551746579 604116350 531486335 821856080 373373925 951551635 56533496 176944344 334120899 931725617 297891050 783048952 881306825 967806987 413078396 439829505 452953059 484346382 774669881 976309122 298857048 619749919 551433816 965447710 945468072 945822651 453406995 974699289 660029733 890381097 150395091 255169085 990492371 991666183 425668870 661734154 268283978 372112487 385270598 702574589 967168596 974771946 37613256 157024767 232006937 530548123 602665759 953958738 562597719 567230888 194762541 415298584 916128015 925783775 128652184 644243176 866894126 871083207 757657870 761005708 738545806 756995039 33037484 352566663 83979468 267518084 904941167 994584421 900110625 959176444 7215439 706653316 926558719 961376987 304125838 906213721 489259468 859272912 341028917 432675859 356593111 525816324 141508301 579519077 440591150 773673277 871591898 919580520 985547258 989491688 665275926 824772973 461859130 722093963 169192217 532868277 566641788 630114403 99700445 367994843 537237037 681967373 431803058 979588067 119566063 229043946 671490235 833996323 294473082 525816129 20509942 132725428 267181082 435711433 771097810 909487903 120002770 251093544 151397743 758475033 950273203 956452246 595606784 792209531 73905292 944425343 114018117 717738484 733766326 950620623 46257184 726312042 728615772 760935191 256961942 505734869 307732083 880027631 568298258 616133756 929638295 983762939 917356277 918781590 625102477 820689081 685455274 943246863 573556636 872434382 862051486 979610154 302736627 672982439 604416703 917177254 418872044 959097762 318012818 797774601 108407395 777302033 963860565 992208158 760969212 857354368 291752298 757471221 405050028 995568024 628524798 634139176 884411371 966288673 225606452 347305590 559320882 856735883 656289401 803483864 437832368 831882874 377729663 558168474 964149371 991780540 862907734 984707683 710471001 968788801 719207221 725300777 975097953 984520903 841855066 914345471 158702583 435082465 137480969 154368757 567332979 626013571 381292344 445802238 472074023 500257389 667567153 916701282 566425516 793109598 452866923 554898761 723873487 880977403 354733370 416635168 796060651 994028964 807519171 937666899 983777653 994782245 893912733 999142088 996383350 998612284 943004159 957809942 548445 713569099 88654001 210385807 131695032 930138395 986917248 991062734 99663553 259815287 485080507 690793101 128398014 579276232 703534945 843973795 961467019 974805085 934143014 976388440 529998481 638222226 461283299 619581193 970680747 972717005 719802958 836455309 366323012 402149859 191499599 563506352 584056459 943547944 982540110 988643029 876164102 910261002 537989581 880828180 753213965 831303738 601066709 930300698 522730852 795805568 126916236 857240384 856512081 963311404 445435580 543244244 231481224 591540426 211546183 923222470 963841727 976164576 254977291 945177302 379081923 717045079 203909260 547629978 374089368 865649644 146951395 632109360 219383090 281915546 741214776 893936495 797009335 889470524 309620195 676665238 901550262 983107088 193564407 565765756 713483299 757934575 851492580 861695354 97713716 150462787 488914989 670615092 403531464 541462666 134916140 933792236 459163089 604222360 294206810 803803620 198298549 324457911 238153022 428224125 272934308 802961633 430872300 898179294 303101131 848309665 425788977 781626889 701618831 827310760 718751324 900194666 922544963 969506608 925671406 940854529 470316824 581771718 728081270 760173812 548173114 565740226 785254414 790782986 163761652 857958684 124029252 813130644 11704639 341250133 35633540 570415481 940459745 962606147 898648250 952208325 720283377 944230313 976388824 994235449 793539628 813979142 418605487 474743035 788473366 953013892 969020896 983386008 523641651 664859439 129970337 957741958 630837559 907236860 70788828 262394465 125415245 426937094 293947785 338687266 84464544 280271489 242182654 999636636 399529801 473199321 181852932 212159414 591128417 952221716 961227240 999720175 5261157 772913224 108621279 295530659 533406353 572987918 50699101 660653631 342888813 353822576 767374281 908182790 583717833 745313300 361310769 397684882 464307235 712814213 984960860 985075866 609239244 620707520 942517637 992622573 408200740 800755684 842522963 982638521 716966095 773776791 920154736 935671348 551552158 914451379 976853298 978692932 147173064 732292269 358314990 979843347 300328873 585357425 856762822 924864586 458379207 722695365 401782019 919261264 129846901 983267407 213748065 525306439 221963193 916859909 585530840 776457093 535064199 627660579 81725346 157140534 666302858 857233941 444445098 490877265 44952429 757134692 812291323 924852234 291160256 436030413 306591789 959975433 499368052 636179450 971592115 973075956 69762951 478445383 875879984 919985864 434071066 918421483 494495898 938462551 573619709 842192158 573642691 883360277 463160615 653914703 203962965 617248869 319716458 386855890 530002263 821688569 949994392 951643946 465146629 841365079 657817326 855102713 86706886 342990814 276128814 764425480 716932025 847907060 493400184 826958146 635890577 970857928 906202732 987614646 500269543 919977131 21864297 120626366 707686765 984448826 459552387 646533750 735490366 900249842 606978627 981962490 79943068 297046328 846739361 882091756 132527858 194255593 775305337 915542762 187102995 505397992 144193684 515239147 875917428 960594937 617174412 657548230 721905729 804609282 442302286 545849166 379887143 640366452 25294997 961910845 954214658 998883360 853379014 967093509 917841346 989212748 686302869 925258596 688310894 973375741 950245694 982629527 450906220 767280857 280725664 319288863 349843940 358785752 894022462 953463679 962668355 974140665 726710706 886086167 508195747 718165753 674225662 686919941 659971069 672920557 457183084 830401030 845335469 902357026 643276014 643454018 906307408 932935384 381609675 881860910 242502814 286500155 609748445 824262855 869832024 984932980 336217241 654525606 959655952 993969384 646679332 710015371 100900826 844167166 5119804 743755931 621724457 881364106 842255527 920223349 249066059 792723999 34786356 485423640 50635128 510841654 736121886 981081037 68969756 99669935 72046425 794131785 87022018 445971485 221105293 524859957 397444270 717667958 895871019 929952153 804542630 901333023 354916605 938836577 286626045 332031075 678025144 949750333 592644845 689967297 709845797 723853824 215875734 365558491 849346810 849393535 762540084 917196724 536879601 894561808 704466229 918164093 816721153 922643840 664531697 803575434 410823696 758970382 75800463 757014243 674710961 754974859 74023875 312224421 319411407 419500440 601056595 833929241 67629454 593551249 640028164 885294091 53707049 861168938 590410193 682244840 907698781 939943815 837190742 885222543 583949690 682769648 279357838 510134361 423119235 850437397 799034310 940748692 295255193 557907489 263992788 979020193 409586881 916716759 171269900 352963989 524802203 979369318 766508656 864430814 478937067 717188590 471825752 493787123 40465437 220894385 421364348 640184314 440434595 782266136 374581062 758236289 405346464 434370717 802946129 850365552 863365026 922123403 341254415 841949536 870299626 980559034 744475548 785431591 244326760 927222216 959277218 997708683 491205943 847704426 263855724 753112518 132634156 784766899 93861879 558976921 679211713 709530862 89280737 373127951 833143803 940250119 706553271 847613506 475351397 740895255 460105534 630356126 416226990 477211826 650061322 996744824 130861687 926708910 814250953 874414955 950610106 953917197 717554393 809255083 989660747 992935061 863304763 968640633 151401093 440173257 33855891 571464868 710074960 842467899 307479762 461691471 65618010 757011093 357068018 788749433 447256620 713987479 961258995 974413456 673733161 911090897 413741280 924079546 801574134 918890472 476686612 531034141 940455366 971035444 681138783 917963203 676855835 976078057 797225059 880142039 437402703 674405913 475420580 755614849 725926732 991062244 973447419 981225743 688880082 890753265 995295411 996951642 132744723 681144492 17511569 235125929 38639117 284086942 583347565 695226189 664195180 759251773 132742089 161179578 499737511 760521393 969299880 969412397 274599316 425891031 93607105 574175863 673601714 714808345 760088822 901768743 948260240 987980195 757197865 974923207 237957855 535025366 621992585 657916694 327293670 686667864 301557194 886986740 72379374 229122462 5554659 780884345 968523397 994798067 343477221 692853693 430645356 433360447 221521585 325336911 895368790 991739085 132324325 591635139 733294362 915324760 89087284 837974456 69462569 909732437 396272453 655134246 733970422 861670222 949307250 977618948 575264044 686223877 194439111 787835190 585850466 725586657 58351818 804746651 171711367 562048996 189724375 740682194 661969190 970314948 421783058 427984015 647176625 664853244 842320358 926719484 702553367 815944319 103819056 387763686 607183024 724976606 137611731 370042895 105462619 226161915 803487390 991153334 494916899 947075470 795397244 929000411 283446930 967292406 358416013 931691069 522536377 874679779 547270131 657012077 574312588 689392063 281873558 456057046 48832219 135044251 237891057 764358876 44087930 313042111 244006169 529936745 226335415 712324757 938739647 992561905 937362528 974759415 150992459 897592897 623438564 963261869 113902850 196659117 587751984 767684841 772243309 860997632 824546920 843215252 439616323 650603457 129384248 513968915 572410312 884423364 367309307 458815047 835222214 946097254 766836930 960392373 361373511 500365685 410228720 741937373 437941964 745318819 326907975 502431779 471992752 483770339 119445436 683918303 833540513 859030303 737514198 771113260 110301324 798842525 663853866 877608912 609505940 623328669 595945239 893761217 176799480 893943277 640104279 702977199 958206614 983202755 576098168 764594652 82668644 529594471 247797299 804420820 133090907 321097292 923800922 927147295 592064955 662984774 927012424 999452021 800327203 899062083 821739365 907759277 100258725 842167355 22940834 595642074 59460960 892353906 125962562 384096644 787378425 896385347 738452152 877204253 630538207 979849154 115022398 696083587 751757957 830316453 551618991 852418375 15449698 708918097 467142439 669656608 623679781 831886529 660467282 875741016 498388152 625480295 535677464 630906309 861673574 976918308 342838128 644578958 444242148 528167163 58310737 532526033 92501521 540452719 69120121 557168882 684434842 946647614 952159195 982008171 148360642 964891256 529818460 864141822 627715439 668133598 835310730 897515026 490009390 866386509 576164491 784607071 825724102 900197080 136760894 812740948 588229105 990825186 346612528 701480963 492032457 529326761 564386592 972918475 47312117 61073801 326341768 627372416 294112457 416611599 386146344 547252827 42297381 314767413 988003308 994742427 994816197 999837036 867636331 935762566 861306765 900579290 858161730 994157885 93306924 263631364 325454683 994352576 518592863 786765055 867618656 980719118 490065487 720687410 641923225 957558398 928544430 938722959 652692297 779457065 432448021 466569400 213390387 977868108 275802390 696310727 258778834 613051527 318365615 791194046 374321951 826248566 472266446 513956757 444803069 482811910 880403638 975227534 461774909 829451039 858497701 966006014 224515028 374907417 923201626 944118891 842462116 973376571 970005740 982318670 98121070 690956322 45034719 977746543 123336165 348951614 117848835 791379072 561318942 678160194 74329063 974390851 170972827 221204286 889878293 970637124 936701885 973274656 941591095 961101984 623531221 722107375 867992039 987887225 626601741 894561848 127646916 977463602 976227335 992654068 20693431 742481483 459400895 641240976 494455794 733137993 367677091 903959532 384126441 871592975 393273210 991481059 496421027 672258987 371751106 502873527 853456088 885969609 688425525 855535879 507119051 773283277 506623371 828490136 50925340 786096925 610538140 842065512 989775859 993685046 691225990 733563077 698465742 954392146 715367454 858864187 36107963 943860274 356421100 838288551 786811309 976861063 823387709 854045256 330086296 512996615 697197116 879600417 403887131 745515099 335025676 456910150 488758299 597293799 23935825 546385399 563996882 849312139 507655250 903229063 972384154 982108363 89279285 720098620 618127123 826017820 697422906 831193438 862199796 893302580 644612063 852591891 4368920 988017165 445860929 829402860 43258486 890619342 376507041 613859006 434400276 898341800 469671068 865989820 828835827 996651572 299687802 802979862 399465872 489217858 783324223 922196081 846798912 936646166 577029022 726714864 900479950 988240651 959568978 961974804 98540826 543417097 244459688 461089440 889085748 965269669 465847142 772647939 197464755 302578444 300751085 931053379 483893484 737967051 659786623 883972547 585476753 616818183 916982100 983023269 40398750 257913688 860538083 908326875 221301012 533294207 426929487 917529085 359579789 585498715 585551236 966928144 160270549 784767637 783943411 946318851 268880757 986379683 432666758 530771260 91216091 958825129 538873409 720202383 566310001 607232511 680244992 764811747 62559822 954365348 361583787 403309044 708181711 871161828 741748522 926009485 808515985 987462365 799642941 991071881 788227891 837697567 791973899 949189273 474633821 671660068 880845092 896041359 874418688 947687463 907133351 975351792 635589614 835316840 339272404 519695017 126611651 619446691 899070794 956537401 731389113 764934331 828256079 937336996 755952531 997288707 627150981 699812217 28745224 421641301 404475407 686529087 111012998 612731116 530391355 547088031 153867168 233914628 179866589 771871083 34530869 123397550 123268820 248051818 437390912 611040466 6843184 497745978 795270256 886169040 570072216 617090938 820681355 840078635 691213740 889926715 804787392 811902293 905823542 971047458 205497334 553685916 829490936 988315157 57338477 557667379 728023883 859067144 383861335 603699397 825339576 825875238 346820304 989774994 120424321 689046163 346552208 394396761 265583168 679466164 569475596 673006782 884330199 908595402 41281589 686890509 680746106 975676698 662401275 816397051 493223750 950130703 661870805 715114093 424396202 757643860 225778436 672272358 648738392 835199197 704172132 833830048 233245459 611125983 10410667 321441380 618459747 702004992 345201814 986939780 487368321 775433228 174344232 716135221 474029639 883524469 705941374 793059484 688970431 768473857 83606474 471022117 36585245 332509476 333118937 925334807 219873625 637847008 299805293 565302891 439459885 594657606 597969265 603199160 48080105 264554121 552189857 642744545 865444908 904724448 654923336 780846991 720454950 809828543 110384849 633653589 90918251 873160654 595816292 970466492 484370416 955622279 326591076 635410088 509757257 567906019 769530731 842053520 496582533 657034092 909036210 967748005 278366194 904723347 989183672 997717251 730152920 786536336 20969714 71211066 755674883 976045220 400089051 793959811 169740058 697867752 122688582 883469564 169533287 624010340 497114614 797961483 376188213 388610462 701952079 776176945 685276852 932747253 710508057 914024653 548102002 852139866 645352761 875157985 981135920 992474014 935839506 958432813 840961855 875674231 6120073 215512201 367471791 443358945 108140543 662973692 706932271 864744883 890710943 993182377 488195016 552841280 501167550 761539339 532141909 782960500 890582757 931352262 881657093 898476819 190669519 440503517 267603166 785223837 192085137 877517817 326581387 672553653 739063395 848543952 206403933 628756498 775436250 887664471 572758563 853948120 709412583 811984735 280496621 782749684 541049037 670119994 547991731 734954327 134896075 800107886 495521127 856125334 993468364 994492988 532769865 897736191 486718167 984064303 357731077 717133472 970924747 977797022 281876277 863305432 399506313 472620858 499933454 686720923 46897556 556524596 431269293 804421355 724476640 967855071 749670727 933895485 571768327 576009626 488288732 673547576 322871940 709024683 838672428 995268156 421000736 914261453 284845082 793032810 768183869 922556370 642575636 692326563 942118795 962165705 156110217 911146185 48767298 165407668 223621116 508690108 951310109 977178259 371423427 856424690 285287535 573084982 134468391 434339048 158289124 969170554 115875179 892291713 35866841 363320135 167985071 444361944 661148695 672631060 79013909 325240693 738978926 941400116 738866164 917923680 475822268 653869176 991331087 997934870 794007065 926799620 445315674 894979672 338677676 438346784 538683925 666622604 75904420 532094326 847417713 858942549 191887072 498714351 922198655 981291520 824825179 901045567 889094444 951542563 571350172 622224769 22248544 182381384 493203934 591749565 140783742 736440197 864889235 922450184 418562769 540761298 371529412 610663544 944797784 990036738 790125643 876458499 43091483 882758488 201581449 397541486 156917895 380078831 572795746 807005766 724871435 829790430 416091013 778221256 341673976 681393310 93299561 721631272 869065557 891753338 132359486 820683459 71336374 830235328 802531721 885264197 387807724 800005514 211367811 864355116 815749585 903733002 82867119 347924579 69628687 612864339 614104335 921530169 32940498 73636494 440416022 789255335 311139911 464789778 92966397 528205044 156980551 981587928 990033456 996115255 385249792 907144997 271807626 788321216 577151335 847567694 141904950 608142889 394615514 406502325 498869351 786181636 354291333 559019450 509617586 920062350 429835293 835099826 631842656 995504057 319926201 944010239 549222773 581793644 752185431 839037987 592002977 965747397 534857791 816159859 363486920 535144799 468679804 610421110 58522630 762842268 384642835 493757358 724508459 968788592 703905033 977179763 277988159 975957664 548796953 769842791 789654816 884868907 828341921 912856690 860985162 979999438 686627644 892978932 869000872 923846957 264828632 315703762 486154288 968923674 607609207 780847510 827015891 948533779 654054014 787866078 801169641 859271098 980276513 981118414 434158342 468937859 930598238 997928989 451118511 634716668 241752654 332402847 458318415 684638975 842681763 968554504 317612546 630500293 424657387 620064209 934028741 947149539 986348287 987077711 881798670 981615927 719872313 971305447 136212857 238945141 690714736 923819891 263644898 881862496 983229810 986399687 451969122 623382440 310611686 411144299 326133749 338821889 999026481 999350237 173650958 574332861 391474351 689519456 583169418 681142982 770817482 783691799 765447023 875844600 66035732 195840581 701569645 707414730 297344036 383639655 207976165 569250020 96230754 695147975 24939593 757213593 519200226 641260745 358421899 573618536 572939643 603344147 91352163 774588033 4277673 907351857 175225510 795980544 495268881 599377361 278534904 821928243 556981303 963986769 958587508 963166598 180320770 404534405 130253948 197804115 762825834 992661416 936684119 998112375 229028722 577143810 175853360 791637995 482256474 675546675 569010767 631186954 445933430 811220253 490408551 558043352 666949884 903310661 238761927 871152351 395189367 401401496 841525825 933844259 355924992 728348094 141598947 646138486 349040067 764637687 146561719 698029223 481009969 528670899 843362774 940205323 891905392 955405566 752882113 891751439 857376136 885970271 924898239 961538238 934026003 951281419 446908837 737865853 944622479 981504113 823777103 962865128 748153817 886434740 226850872 331995740 846911901 884444217 242922423 893153432 155779773 511601975 521186622 787228588 90195589 398102755 331474021 941853745 214952862 566099361 909775667 955434086 753992137 792219146 696451273 945923830 716939375 976355752 379280717 937380809 933758911 947807447 77152325 186717130 956723553 985553065 486241491 903449495 547821554 735816277 515973914 948012315 122946094 938422476 255958537 870385786 716673872 846931566 703414195 849782490 397521809 923008535 22354960 511777325 43220491 682373266 742598913 863343327 723502246 943489483 560547924 646808694 836143048 994940229 361708722 454471082 477503691 504178473 732070386 733854606 654047545 995520383 639003120 649531864 332686327 976266061 407414754 477612255 884452663 972462230 275719437 369279205 146335540 150501602 580441068 681488303 339190285 713623823 164348604 478594782 310839514 496268149 958823161 965292336 513806462 580008759 466363073 950980321 553459640 608923612 666041753 912596755 816432009 836781088 859751274 953832982 419759133 484969207 905691273 914964211 627843529 668289345 166483957 172427851 835432727 850745069 662545444 786542396 982211230 984645812 762141444 984489816 200753312 230650159 928026532 929310690 256354563 981920501 444919476 608342992 799205219 854055932 489933421 844549201 167941579 843369964 524592011 563822907 755730098 840089378 225941132 717901541 11539145 493367069 150566871 438389103 377797540 454966382 129027087 547835047 366486694 917028318 58462907 871700766 175593860 844575847 114129382 186961197 638957199 679906547 262101514 776809819 693450757 809531248 390937917 975650513 696940763 776923106 367243538 749456726 854050672 974722763 641260943 712514864 441842309 834555508 92536785 749114329 612886472 734842859 842786973 996946882 310626187 603242052 201832063 455814334 223268363 933609332 779782649 787174960 906063265 969479907 211904848 811850703 538249472 545957518 109002860 763899488 109059731 481335686 758906803 987397285 381660179 505968246 613326839 885327619 551223363 853860828 818416487 976210761 3838022 327870160 36344868 430413369 969143852 972585191 123871300 558856035 724242126 860374055 786467161 900450726 364409456 639642665 841075157 905751042 305940404 998565940 878014413 988665232 788546367 952888568 485435884 789819081 212533775 354230585 649666457 671218689 526197082 944383037 57350876 776307631 43568128 523135610 103423508 539886817 795666176 911397869 842623703 968664111 89754383 377811354 693110067 897069236 410882879 575282318 108535474 225656749 504328555 797672159 462406988 912423175 485245821 641275664 952398669 959170621 943863372 969867572 79926456 166868726 475504336 572333695 539230456 736818737 811448948 852710573 977615520 993067322 881931138 887438790 876477337 973249091 643321029 695384525 245204466 433942025 211607613 795905573 944958508 959664806 938795730 975702347 874039787 960857409 225206802 872115762 965745152 973705319 284415413 540873987 424349999 680870860 989994023 990652130 308919373 633564530 187267611 522254580 251004903 625906500 915071174 919137276 795664266 965281192 211908082 272449154 858655932 948932815 53257709 386932047 621374513 667099050 145461722 168711538 19686290 454674376 53806447 259521212 19567750 759140352 787828988 968075508 544694204 769595642 159955262 247656465 317661146 360652739 160581294 779073697 838658295 929324999 947053314 962389814 451476547 623416692 789889109 947517358 905209752 978202750 433359682 679506073 331402471 361941777 13275864 628089438 182198210 507032973 298941358 868432442 519850426 791911484 649498772 672097699 340064791 832514391 565844318 676451011 349484189 739980789 442421045 498162105 161559340 658875959 167969067 618090032 542669355 570133147 347469294 750877151 474266959 616625406 125953646 751050800 601787097 705937254 216125484 312473514 590178206 845195521 781982691 842179954 917192002 974523709 836426206 987851906 772689462 787195762 699423714 836015679 132733074 746077508 216371600 553240445 347314898 622403049 813533167 998830471 374267401 916909208 292766848 836657478 609457700 810816241 732877831 858990326 971019669 997392160 42646742 981264145 230740949 882177944 945753270 989589367 985895435 991514914 156107939 465490111 185552116 534032822 220866313 435366943 12468012 449859008 124593300 796305454 211901309 498431683 379666311 636512787 602102828 672915200 855550535 889978103 252008053 577552556 820139875 843146588 64055364 953746551 647095091 685227783 181400970 994133567 926838553 982473291 266754865 657406629 545563600 598028002 11570213 558551451 600954146 708282509 654580035 830043770 150680188 462701613 275451550 819072236 881312300 961887052 770878879 781716020 125541813 979675266 116524843 454013863 512690667 721094098 408719861 932635194 398567104 849726945 562779762 587417024 442516425 893975970 796443808 998059953 219973016 919090959 42333865 96848996 966256504 983311464 736298170 957735986 873552713 908603322 157605728 216917411 352935997 618566794 572660807 893038018 972338413 999115687 553217050 756595472 538348484 710387033 641837858 686229692 380833305 829460105 65422495 531687401 504687842 795124347 846095411 855754507 505496931 680929193 27518504 233545336 198508958 750078992 690938523 758655721 644675084 917499110 864662847 986590750 175337735 794087600 946347573 979772445 980007990 980754904 162050543 750934051 337022215 780005405 367325160 374668349 938321358 987123727 294452686 963920198 823142930 939700992 839500783 886407243 685678199 888327606 466499451 663611739 30244721 521614285 845507674 948597796 370176472 564061197 687810812 764180167 767980454 951137572 920320327 966023687 437536940 598274438 786753660 982700923 994549298 996354383 738941589 799710068 191266593 993659156 34559981 269558070 521876180 670469836 654675934 699451062 327394854 596312536 964310190 967038933 526497700 657479448 125974905 922821599 167224859 784301740 618947204 712367389 358341069 437945871 9715416 303022378 966305817 983382419 786609543 968312091 300664794 406714873 308596113 790197334 97945823 846111609 547020925 573111020 682819130 924196513 184297008 819459807 474356502 907491896 48203731 343876909 263194492 882544396 311417311 744464401 394091793 715142756 188802383 507791101 279123337 962311263 99250030 201252286 124662385 484103070 554965395 964750011 634834271 660662411 991156195 995709661 335590525 749728636 413128087 842268222 426616406 899588682 494610888 864257689 803639615 989996085 459307266 734830049 209048052 677656399 161037405 750210217 39207605 351403000 505343041 806418101 891127703 898375152 831439536 949889623 241596235 988983857 219454280 458367518 344098131 621291505 879702921 885078989 275667421 680781303 139982207 599118755 535738138 976965006 517300119 608592411 94977151 135925569 918120073 926105451 559760540 967879584 920947388 985366811 998531203 999512496 252908436 816576859 629162129 984068389 238119597 373818581 791703499 878212763 675646358 873837862 243808554 417248651 401285304 971252823 723900667 904547602 498175436 639226014 397810162 940874318 274596813 499617336 155445098 911724480 327403700 801481617 798147716 838619380 489746929 528419705 781561407 933502961 555352345 706589495 557558261 774079803 343223114 575451474 186303484 812194608 262474586 817719485 487156251 503768572 194134334 662091465 266584205 970498729 466155105 898211737 933812858 969373200 648028054 824017326 500210680 673744343 564034048 621213174 516562586 633993902 351090 519290945 216124765 703694763 248055408 571223293 52075362 667345717 142501928 978755017 225922778 572612542 705929498 973366997 645201772 828638028 417119822 830115271 376874124 959528107 511257868 863674647 586103976 609989084 405043632 901203244 415526726 912914373 813006897 953002320 766327563 970526371 103055245 212979679 73466090 244819177 462327038 973797103 415309433 717344123 874441141 964384829 483812638 748805699 249890976 258455239 415274993 541045523 31627376 506906969 836543037 915004807 67371060 224125578 278567255 748594889 22730659 823266252 683564105 725046955 564034906 643860699 4993450 827908214 351290955 480226272 484903584 974682807 920030083 946629928 105166388 600943480 134753726 720540928 565426785 633987343 66292922 901428571 731012294 905167310 104426518 514412339 449172852 712323458 772007773 886310684 387818857 558243171 972607721 993618159 76517291 313516525 833125250 972784671 265243757 772389011 857033280 957461390 289692625 759358265 235209905 953767159 449236341 566801990 253475924 948980235 527348724 621844088 323554895 828919171 871515232 949610354 605882172 696426360 514338649 830878483 616500495 821257354 688655639 864920832 839339386 881984248 704414443 994005507 867592519 994217876 843465309 852126163 419113909 831278791 192041802 334789800 290746975 960514631 526473743 819922277 37134011 507193288 559539189 577779583 271506069 453759816 26329236 415154658 994438777 999487931 93692711 805585896 237571733 601888307 28379715 599348691 951626912 952281878 826409351 971330159 468173034 875856194 641582980 827712915 511019681 859211178 830342071 974705000 352080332 810326397 803022580 920724016 484348417 980694673 868138760 971235642 184834608 529965845 174089291 778196599 358351942 525571107 97014858 739665380 974071592 981176595 871897219 903732611 708688939 850277281 864952610 959047952 397880524 844448230 639660 41826311 649631228 651968650 576460040 748666284 141338210 744096032 911138652 963834342 402346914 645728657 71796340 642105984 531815919 582252752 833344218 943166833 331380301 360164741 70365953 692703176 614675567 927401288 247151573 476290009 225877252 227417625 217630648 381737206 552671457 554346168 270556286 613198285 212110300 980565897 613454524 955079441 801700912 895475260 759847430 957149260 355573600 780690068 381588904 422315191 795360823 945053386 631393352 695308845 676430178 989052350 254788916 725623742 781276913 922967273 142046140 621794533 911122515 976820483 689167768 763194687 247085313 412074376 506393545 753629441 984869494 996852339 10139594 729142570 162697121 481081387 788857617 825395597 715053622 733758610 426629437 841479617 187221409 670662437 12751784 366726527 149633922 740375334 965763074 967025217 23011052 906608255 396197462 591979142 705902268 911479226 701203886 731758381 530445341 923662580 844155277 901336797 393307130 736849823 482980458 576313069 508506710 974321490 316563019 324556312 655772734 691665189 370293667 560321622 183424808 385635280 221366628 348324123 274164934 879166210 722327776 923733810 94669600 103163416 62131260 760967537 676567095 830134304 488952899 924226531 986930367 990083488 161273554 296091505 715485402 874007745 187511977 534494778 640066810 875783425 688376124 910737731 398753223 495358407 313881246 706490214 872690159 969559420 536753106 803565555 674865357 750982658 783524797 861320051 699209081 965680699 346437524 882031530 877971530 919032124 415330927 734927351 573939323 954983885 538996993 739422555 454964753 813866153 925913314 977379622 816401659 820733700 188923403 257467270 412356004 642746026 354448118 478756847 771964032 794443854 436452417 864515039 379436788 839248456 494635452 559502020 446698008 582565626 630082791 951426177 920863152 990037167 659944476 954359891 461158035 553375349 897321410 905444178 328526089 617701379 863909401 911800868 479471652 590018169 417360305 974630859 335596439 915294284 98652059 857452218 735146426 748565258 501861190 878129060 878654954 891348145 893238827 991238875 327438750 784804869 481047363 583689916 610185353 715443245 196971651 370945719 971334902 993812755 520773345 731666546 992141194 999902340 949499431 957133884 741980192 971272874 329943037 372222213 470502245 746085134 860459868 978216863 60391751 483014879 86143925 566250805 231566371 737877704 448494959 752841292 87915136 571595709 606725372 918694297 148129683 239390933 753584998 959968212 35163040 278262807 6269464 912191908 684710080 739013504 920084424 988985663 858762274 918978943 170062355 596771154 209980955 291829098 940577137 944138682 795515585 978128387 373457784 959769079 471256850 892245344 562102935 919426370 362201283 605413486 195542328 609666587 528259155 549290447 318281429 938502970 879245438 973328426 31837962 533735803 101587121 905459262 993956126 996378268 514736994 763917345 769204296 769943369 363897161 676621640 515767387 965910008 582482826 689119817 758494442 846288668 23833432 774582182 429903102 987780688 470403454 987980597 135657120 627171911 152172785 667478568 398808780 730918758 932632329 971978666 493847213 882624933 711811630 715031740 936250472 953062550 574852737 987096961 370446112 836014092 273967402 817797377 30805872 230907707 177544574 898394640 767395981 782617928 374462729 660773070 341928019 801403657 400333821 455195680 173203445 904881074 92167169 922759326 441601403 856601197 436248216 519639442 434112806 784428936 936989631 988201602 801090056 898076429 130023639 752036374 683006849 802539177 584157640 602293653 914340168 924430520 954137973 968025841 983764137 996555775 926805938 932860376 833516937 833667980 148714789 689464157 712745187 771139482 250226807 633244345 844841200 932557147 893422608 963714840 855596940 917119939 983269049 986221881 453365673 959152954 77847465 353433021 307444069 600335145 485235638 498106510 923261496 965626944 701707784 939260243 149924681 674314519 240611990 241897297 565812989 809282728 174480240 992358627 490047559 744830229 518228131 572945144 165650295 892007430 718783692 847691674 91510041 180760672 795344190 936826551 231251005 862936224 28964315 929161120 937897241 984455176 721144722 920789430 83071775 719946435 873930493 891526580 267952021 844095817 584134269 759007259 310783923 812529260 391389858 941824515 812272242 904213028 525526889 962079416 593772318 750419772 733656774 879095241 900641906 921985460 542964736 650770181 976825542 982465533 463404799 650854454 870543519 915021219 449278952 673809947 67442409 888709906 387289859 524930670 431562612 616415862 409413566 449339032 763256582 884251971 356388651 963673252 601085690 697720130 971037576 995901962 378363161 567126832 433909392 902821554 400436562 413469926 387968652 972958351 378652168 611663659 371032202 796985737 498712157 940664356 334187332 482536999 759850770 859670253 814754989 854299250 736657080 837414788 172682232 720198793 729815516 973927337 378110653 580077471 135549123 882916867 267649228 704132843 228536732 695112537 842765161 922029835 93473895 503561048 560927025 769254474 981658202 993362549 205842025 791517176 158333542 173561892 440607761 754189586 628182018 949916011 501182468 990628303 310876235 353632581 316903634 651806523 220537152 366736808 147474904 926356131 161305565 814784005 557982611 729110745 600746583 805920165 275010350 355054162 252376636 749245661 191151849 676711715 177651006 668368370 248425232 519790589 290309995 747284099 634620840 893704759 37213964 706620779 141546580 811251527 435509931 649363456 803463339 838784404 387137024 475882868 386728153 951094299 932293683 961798729 892803684 963012379 709695301 822248852 437685216 987867855 622452227 821224612 680303498 932082620 917453002 992979334 312304412 916623511 455036818 958858171 288629437 548141516 420213628 962045489 402354163 682906231 734251440 980582725 928958064 957606268 215810448 797158109 116955636 730403534 902389649 914928619 598401549 817618523 632906326 963049393 642337099 725096094 754009715 905858330 102730134 302909522 893120171 923390885 955007123 959577367 803295129 875216678 663968016 842546258 277593197 883773734 94459648 120233299 202238170 356372624 372768587 499911722 87338714 927514835 42917467 223336152 469604757 731458634 868663966 981867733 218586283 381029459 172071819 457544539 700809560 946489125 820076742 946184187 631092541 976814476 113754570 694700768 248484733 465641034 299428546 360330777 488422262 748131444 161221347 204541897 327308714 791854109 905267999 953112852 564340033 671163557 612377674 993274840 707204834 919081063 260552500 780169743 488504663 880833857 552295870 991008387 46748858 988166831 309784048 508297164 602928183 615342028 734845846 932872454 857795389 978866746 695621309 884859542 359023070 558127111 423641351 710211234 716533754 959789778 742651185 855695093 369966245 490564131 199337862 546293915 746943841 833070631 658319339 993438804 956101645 993586701 600698100 967646490 126780443 712175547 910750358 930227049 41642921 865451542 895383101 955520833 779623201 853043603 248763415 790475625 505552697 816876340 731210639 796276410 122233148 701912881 215350030 710569524 569934276 897068267 844431706 876840649 762797874 969454711 825227495 891877152 557319361 754714499 749252046 819168589 727084360 765635544 135238024 787589353 556929977 930517722 916415334 971872207 932703589 939447453 973459045 998118764 549081285 601446784 180139358 715435116 739755217 902637303 825076672 859356032 396000219 849285699 843796963 848096497 779193209 807494429 809113118 996647803 810726926 883302485 51772147 622696173 361749612 449694998 95214597 498567206 401720738 809174941 185359070 383634921 250406674 601268373 801673639 998296083 235661579 786221719 386393133 516349263 942315919 992776743 417706515 907827428 165859050 845926319 280780799 306055296 141356053 570954065 496761086 987897305 886618032 909386432 188430446 823998343 571439607 950203232 399502257 506245277 495048771 825677008 651357058 826450189 657170640 788264653 576062323 952123568 421666337 981882217 620063382 688864947 933737925 978840830 4835717 429912784 478003221 993617730 235717158 983114594 173899394 794727379 418709108 741829773 746242946 827552166 263292623 352613098 451044122 702883825 183860022 480406221 300295243 410724621 784618296 985435727 276211313 812771894 303396749 352846473 940206272 979664310 988121181 990746365 534993390 537376002 297378049 357233596 24063254 615539255 891322086 912352818 997504868 999076186 498403537 741512653 969534097 990952019 870084148 926055766 42763742 229645521 599338080 668380822 884922788 966185460 359277710 713798814 782278119 906126388 122783732 134669871 620099768 701148287 264171414 739738037 774821168 968486280 157283987 570615819 123823656 419961040 226260093 363248602 730962348 823831044 75624051 554288983 998366712 998932997 959049450 983153471 561625910 685945351 917770686 982681521 795321215 938565661 831035005 977093022 380501023 981972099 310283359 963836473 485208612 634386537 244096955 451210329 676074323 810576120 625588691 766528324 245593830 248377070 450964906 686014265 234157959 288161351 563843729 982528259 342846161 558605748 503726269 934102489 834047821 906047017 561431794 803966992 189230697 582866323 589592622 696299647 991210947 999206016 802079649 923946380 664505803 898359658 66036545 675158539 332425279 914997545 38972052 410981117 185434098 354848274 221211212 387977286 271939491 323632177 706227854 890948431 613892584 945268751 667776564 954080280 134159594 169414640 290700093 464738312 414273853 601909288 117332162 808925341 943448890 973521438 587551212 591061438 138256249 805036013 469251804 502276162 442732988 916806461 951164526 984599772 791132050 888058511 202290517 309797224 452315626 656582973 672280301 810645827 993654137 995437569 799835321 996643197 397422483 741825517 738053575 740819315 330134063 547575580 964545878 998498951 940228631 975343533 92861456 394608797 566175887 632899441 252259320 956353003 241619157 319867748 196432833 212995130 786995750 978260394 696606486 876988968 843195861 846244133 723403348 900393946 469624244 879006443 426320593 586015077 89809169 484401265 308406763 946455683 952294525 993732580 311304188 690685338 808615539 928736891 289612644 478417699 904325771 930052780 504439421 790920722 340466435 578590362 391250282 720999732 515875193 527641159 926405281 978651665 392978178 420611827 994186015 997100516 610726555 791309107 537387555 643125164 998974820 999704595 430739091 734381121 310994637 572995179 356887914 843640155 210992199 535853349 873069847 957764378 598885360 884286693 306477670 859662925 340796770 799503609 610724928 659856187 964759295 984955761 221536328 329838753 527439179 957021345 810420298 983527206 205667473 332219409 716496661 974860283 467263362 472189668 166179390 648015467 283048689 815707120 510602944 566821188 732930220 779932656 713745575 856662061 345729177 629083921 279756480 742896511 756621959 820627961 713707811 998837157 292633061 321458023 309331499 789893462 230554754 456724494 299149663 396342461 650781970 760619344 398961578 787206387 618380761 873921959 50255301 929793410 441462642 835118457 412588689 584072830 448876018 666097016 105411506 561561614 681549374 821608033 628874511 655494146 230636586 522621234 791804617 980639542 198300146 495931935 445643731 834605929 463278580 944610253 971139008 983677232 929004958 933134893 426618352 715504347 59100107 968676533 605292011 857488463 53508170 169890032 272195903 614823759 608922289 803820242 386582616 951077932 52737064 228637165 334768202 433992211 96702244 423114203 87032004 704859236 635828895 837806000 16636343 503435971 610184416 729965883 947614646 950168633 693298332 732847081 774055335 787113557 586195738 953052242 587522979 694014646 949634470 984967123 565719745 976556359 742380117 880083039 840854176 985251802 811889926 967158272 38110841 674514480 79096109 186328678 652365612 965101277 921999720 922528943 963622013 972564790 527457575 775050346 995063580 995075347 943006201 947249530 821955046 834424971 788264759 853591539 131601196 322260147 722837186 971489609 95468279 812089448 763946762 765144541 697654973 989228506 935103921 939775075 646229556 963255060 276523590 996489504 359216589 864469284 244640421 547685870 841739427 995786076 653919740 656356721 276094580 893095380 965811624 974109020 52613741 700344324 837496163 963826620 765063515 959475760 347488931 633274124 409377953 798901118 293468872 479146571 871068746 875008837 396358561 513341469 783986482 814461545 765552500 831092856 912922242 969823359 488238320 820915854 593460998 694974048 840339956 976503835 38143205 530214135 150437766 286744267 628215520 859341640 763924684 775168727 285878993 466424151 901106939 993972958 325968780 995413165 349568396 610131966 384448992 833808034 749343043 853275555 752946581 927389009 124970700 394272344 850594273 947742450 371984010 785164395 689773682 853543762 430914770 674106710 73635158 823393022 876729605 991898878 858257287 928694079 56822333 826989127 804061918 818335707 912307725 934659421 151399888 540994257 610608545 776696455 369869341 984319028 94743494 852260658 270270651 785683359 802645276 901016647 647729759 984308142 411975820 981156789 873033633 947238317 232342107 459309041 833297691 925669800 493246831 497733666 208761149 829217424 615479482 635627883 174023009 335962215 451256414 862418179 353091327 933173904 858944900 989452622 794865034 897105682 405850675 965558935 151817413 687367415 237382632 998259967 593142411 952326862 396040916 644881301 288524470 454064956 492719597 652822508 255638013 817486112 362071974 585722000 514922349 969471649 270250255 540041537 683297349 690664118 783193448 837058619 154649417 565549559 762986638 993901808 208383277 487488607 45826006 672911556 39173608 562420011 541060673 715486396 230867275 304499836 133611266 826802577 195573299 316437572 598198352 873723435 464153226 687359146 684165455 830894041 750964531 962814154 139945570 436692710 41805591 597531787 920231188 929716082 518713119 921238681 717920995 907221753 787723773 852735621 921551639 985446368 322720528 393861163 903611554 943385808 776845733 876812512 883978717 989791801 600850055 830782597 952775934 953462401 308430767 519428520 374103785 633381333 978688478 990628967 17332976 778163840 584722406 715441566 596976021 627670101 44715984 170761847 190470408 739139737 177065705 505614609 16537800 590985052 823523424 858025128 111978592 129007026 970086476 975647706 439758448 820917339 497137864 990882222 792957089 837149171 712651533 949389240 74935212 164634394 129193430 163943838 527775063 636631835 234943301 992433342 830166492 890068480 373289895 782151620 512576776 557735010 547338128 659773149 402096856 501582616 680394341 777612688 879963625 915335278 532272532 810036152 171197758 759946596 334149066 694475923 308317932 965188325 656377558 868308932 765131686 792092164 276161815 521931672 884814592 972791428 331856858 833415951 488567749 960493674 212315547 301446899 285601825 560393203 807643448 883033094 527428713 704204626 679641577 838405222 240568130 418913706 73839755 503019195 473510462 692343563 580237931 757082550 125124948 794962936 351247321 734668523 164768505 882206304 346059213 954656808 721014816 806373273 654189054 759992344 385980779 600093027 422568156 828765955 196707206 576059721 469183290 857236823 282912485 602093032 274281764 539050394 577020820 608374549 691410799 876631984 984194713 984970634 100000946 279189007 253944984 406387672 179062412 817815095 130181377 384597674 962033910 988848403 450481455 996969855 548625135 799798623 682019005 973441060 65764019 86974991 981365265 997022869 958170351 991217091 482175134 594352691 652571545 653961458 188677388 692219700 688027788 983764088 937497642 988764120 864221828 942385671 852316957 993063352 519902196 761707929 987742064 993042010 682529761 767786668 613910660 881821473 941925307 943934652 29058874 729714827 801571981 811706686 988255950 997991179 838718506 893549238 36318083 793005540 68504492 930242073 968282272 987993848 305890965 385349459 920746276 991156768 899430924 900422278 703134062 791222806 378985549 763711436 961363015 973959872 669193489 934020553 70533356 713547508 572390641 831352954 801584483 954139482 710853054 853815159 2404911 930489092 295868099 563666575 375570430 920941289 496514367 988098930 839823152 947310742 504554328 618944406 185037227 573599222 698427840 777398148 483157092 493024359 729391183 761412030 959583735 975221613 112588289 571946165 613612202 956506831 936251056 973200389 801698468 908931988 706714260 898136832 588579864 879058788 38719743 189598725 759906801 844597273 115422638 738416626 742788852 997242334 452960827 953815120 242414709 527490480 936296568 962720711 373935927 643924501 262498821 953893382 486224780 696052166 242218844 385400334 705610889 843675478 967032647 968816008 490305799 750042486 171281558 651223518 474862147 526648029 69377678 176958342 68513457 306754813 524582979 889796850 410256062 724141510 424898192 835587911 821032114 976975257 559137736 913366846 867825814 977802813 524764632 810179831 502759497 623996830 386663306 905020909 200354679 953676316 218762470 647977567 355553128 372038087 797166591 833617741 590580449 974507342 422187926 765614903 763155937 797664548 714778906 732107656 960842492 999745265 885530822 919953987 105052201 618712426 650281426 816261776 3883529 763405715 74624649 144912686 549001272 805200633 807562820 891089714 454087810 707184873 99034079 954831687 160685249 868005790 717363551 823519390 771321857 893201515 21046157 644985565 11312370 503323448 672634701 930101031 327890708 431991695 482731832 520742127 16820143 122802935 622250974 646503275 367823128 864985331 101045660 428867959 809908390 976791133 571289997 620952571 944488077 965394156 662973893 945893299 624334601 971001295 443558047 760909584 870093650 906688932 378505039 618752227 877540826 979156639 780806986 947720947 477799177 483068460 98695551 152161750 313577461 484188315 523493008 606712486 674305862 907268053 82348908 712403499 662802405 914600294 25667206 410180601 773530814 785371849 195180223 405073929 659407046 795617179 324542163 474546389 322200428 441732914 733133082 882602311 787551218 874255592 96678278 557686944 183086877 812958090 935719586 988564907 199976383 281057768 262870817 728472768 124833627 806360681 480324336 933303072 121406874 832082792 631827471 729369324 470243189 928765366 455769381 783556878 763393580 890848225 203049392 833773850 730534052 828876545 978420473 984537206 69513254 460342661 556862584 948593537 18056545 72026232 200592936 382558198 963191730 977091345 83733165 97278055 1910706 270600543 475765271 627304126 241859429 880641915 246816055 419672643 32030794 444750367 105251628 758190217 377873408 661494134 887636010 914538374 454880181 618433236 374611013 982080811 28665707 551287570 829107527 869620914 966730937 993296753 687972900 998544648 83960466 729838229 84536018 570223491 344973454 557531726 891116931 973815366 558739914 953150984 484824876 877455113 451500878 838571660 353428432 456197386 136331976 567745969 247685053 960646766 469539496 864703926 757834410 765993337 930429668 931715909 29934302 789232395 340725150 818144441 6942820 457720935 894266570 999193905 385097691 761724523 881581345 991249550 345232977 993316864 349426728 571794889 799212323 825319921 54685095 943268660 322147732 949069748 529824440 657962952 714378429 748397769 359640245 801324141 146628540 714335321 24627551 719435564 666879542 881829057 136732550 300045846 579624539 672472302 387246309 680251969 580709701 858845191 963924606 993010550 626976256 886596472 459727656 817439431 68755252 915119548 748501560 930971321 209755035 570856459 959733553 964921615 380816569 705309779 360186638 948834359 363655278 577587127 788015837 837382240 738558110 864761909 319483226 939478340 604915886 887436114 675951999 722306610 103676092 494891717 54045821 633598047 426071043 925766780 94219272 328896651 5408326 700787678 175162157 323198801 453773005 640540375 534679984 538012214 742823905 914998283 915854688 933804839 525162992 623925582 179104955 273426087 503355654 957422342 169142019 567128518 636780564 639602120 989256062 997810044 643846493 913883805 162260298 564085566 948087260 984488860 604243757 794256066 559892286 704359234 49733039 337547335 158220998 940865502 839740994 888271245 211088267 772294462 938546397 995684124 619995595 755835498 779326824 942069311 181734389 837246361 845445655 931644825 671669893 932793833 920936898 925340050 122100170 463446067 735803282 866400800 978269863 994965322 158023884 960541767 959281714 974539342 888980890 917788634 582898572 827801462 388370327 595843807 984350691 990227360 516699939 943096843 549551861 887630584 528525085 533714651 979055206 990726164 948810115 987446710 806553261 887875421 607632656 996984736 374007415 788175724 605056894 955222402 892411843 902183070 616650718 877446659 458709500 478342467 698862741 778578970 379655718 846065926 964377411 967581188 174759578 953344920 763179059 915022101 872348354 887300409 931539476 933555620 752548963 819110364 742965718 801790587 285149843 803498069 764834151 983123821 167278837 305660481 429863064 709718987 208105567 643647842 331509445 516375334 556145185 944113200 917765987 970015040 844998923 999735105 578068120 690111453 654071112 795768217 674090563 692087481 926247812 975624138 806386869 918635166 693250965 941048541 546984771 861717518 677877021 892430015 400332373 597248460 304121291 991867782 23692861 759004215 696380638 715841212 925420476 966518982 907777240 910517532 236044246 523290299 626990373 973523937 940808381 997573753 176814580 177445141 570142269 739876505 9957695 20911035 73295067 771168109 841611382 885157180 479453784 847093055 353854591 685020183 73946372 187818160 397262982 683185398 759413261 762105746 290538058 631254298 767819585 860313740 849969553 874368675 654142356 820815870 160455694 960811694 641749196 740467512 598581957 972789020 862777160 971156151 172200908 681266240 273431989 546620740 213952880 470025579 69811963 544879736 733801998 978107369 271417404 546748288 881578121 915283458 336692352 826860342 942293598 942577818 49321493 357063464 207596256 618248129 882218171 979994857 865123541 940285763 266980172 391869344 44651006 221234048 365637997 781773711 590530448 719025384 191014312 985542085 257646152 440671855 329000948 902084452 202836595 614229076 760549558 943987798 311472503 983669339 716024254 766209606 88179312 647503540 3415147 310286211 776471950 850387887 905590257 953211569 612750742 971094347 982568847 987122236 743077922 868472568 505135952 601791287 560052029 927867906 531088044 582323638 771870256 803784238 830679559 859297887 918385175 934532367 82302923 546422238 254807671 341366641 879999042 910393056 533891478 884120393 264653726 376739730 49993707 488517083 553329648 808712424 771707923 799600740 41688781 540872039 229843341 769092869 514679895 753616040 895735391 950163135 582827420 757753716 872244877 998723543 404877870 413229585 671965238 841573734 204140439 641013803 681794606 714432162 159200848 607045476 998959658 999556378 745665609 746975257 467906683 947880410 840969520 971082752 557183255 788969746 770759624 942253181 1327433 903182338 930792470 960304393 437818805 807452263 240868630 555929135 176434834 820322463 884898556 900993644 741832974 990072252 926699017 957854612 561820748 889225831 745789459 930842459 757566880 874807653 703048397 993848228 2940346 801320325 188171277 271347011 723569954 991744787 733015738 735458556 953705077 982972735 161476678 481356043 8166600 533373741 825786599 877168628 480640314 827133710 764767415 874922166 153239232 698130351 831496307 897683587 942460012 950194306 945236736 955498031 418065210 798998611 622009296 773643202 891842858 954298884 446218275 580061367 986743508 992570938 19172205 482843242 124943912 793115329 909501160 987829585 642715136 907771487 967796576 969150110 366210106 533613345 483317927 931350223 421456477 820864730 915514006 939060027 633054008 852331116 572129761 873945329 801321672 902440962 85691428 275038851 212510711 722912409 804184984 847582211 510964504 868251439 239408669 639435794 340306310 996728487 158925809 529085450 10193476 475310821 404693731 564130318 24639770 689121757 628182811 783149047 857656027 941300011 509138683 878450135 148672584 159655991 169506829 233781040 804077227 977411451 547520501 610313883 500676774 510482634 363894516 973131665 429842897 582735132 519171002 926780065 145556107 805650226 599807221 979012302 128168119 901169732 154925764 646114483 432055173 685369469 730025273 744061954 513527234 885059999 770280981 992298650 647190579 919876667 402036471 638443362 331956837 887405209 283752957 410584210 815394558 923529787 442341558 594024908 509736189 879626428 686685239 854539726 351409252 405197215 920630648 921207292 341991656 384497573 133928882 654336158 556554463 866511991 121790503 745777965 352640876 455325083 431879369 458534253 821205440 902203216 237762927 909613204 574738325 967559572 798775979 812383820 378428600 592238717 23243865 814573905 10193918 827440573 608899736 910848449 92742683 388647367 393635072 552204009 133092818 653721356 512400705 557857011 656648889 729073038 556355017 969090259 139191236 965309217 427665277 823575614 119226951 654945855 534098345 770731733 301650404 792361913 856419889 956711497 737906431 743137901 163647926 994255857 785766 84509944 461365837 624426007 38069336 75288832 719464947 748610485 743914959 768662688 791360879 866040817 829444478 954234677 288266307 582002405 537672414 558693257 733817799 992751287 864877740 888684828 582204950 695407400 170487106 182049882 309207723 801584975 715303215 887575971 596259219 989111804 425603802 508513693 96609355 445290982 615179182 771293804 363674446 597739013 362098671 443106879 634813925 812606095 312130370 599609636 379944283 622542407 431104536 551052277 607514295 745449670 731788964 828587374 819637582 855099739 484894371 690771425 368066120 862342348 273318319 444890809 683225897 911325646 169004101 229717389 215516116 892230449 445650060 892603905 413100628 574199539 795091844 981809168 666702182 759276425 599288459 843578197 262623859 265783105 839839488 904386702 494901018 496088360 160951891 619855888 452457711 506898972 812150910 888667822 426894926 692238614 853177087 892510922 508195492 917690010 146266781 714048531 302724397 700582730 323747903 911869713 330576706 742626270 718872468 779181102 130564019 708876343 118788252 167433777 831717063 958869370 486311691 609559636 167852239 585611161 947869173 997673097 375181960 445556902 375276756 459282782 387946993 799760575 831484055 881034160 503184426 888983680 28672072 140788276 911376244 937390004 789019638 960598517 117376606 856970247 793579784 940738672 441238797 889510327 984266683 999317123 965185436 986701212 216126474 859611504 863134173 988981750 354217046 933153694 811265431 837026627 859526754 935615749 934607228 980964581 327198115 541624499 244048492 308068544 847874479 929036230 570912188 703581885 982498961 990845357 679570127 750240461 900025176 945465823 152115054 395763937 960450380 970943166 318528853 384919416 366086910 803419041 830377905 983497265 322465733 418141969 617427202 741918150 506217729 613976128 215720467 757769003 724267527 842208865 883181891 980206127 274191553 516091580 936862531 955159479 546078211 858822112 982875064 994594715 823592578 932413743 103080933 721162771 473804636 971290315 969198436 988034863 785612202 868076327 51323569 341790472 346428359 638649232 960435123 966519465 189919249 849950203 987043224 991848526 636765523 640711433 770869697 927504371 15193810 448699635 798986065 944158861 570092463 739158509 966389266 984366620 496158253 674431156 632175312 666186615 638076325 926202796 173780637 606049315 801046398 987532599 761204788 963474380 681436430 897185679 848461392 947639917 190870670 263528653 103039552 596876066 896506036 901987786 631443350 874271323 704645253 756590593 331119660 976244974 997139680 997570168 745121795 952253771 120856512 893299843 423343479 959262444 769514918 994656609 515227010 517011049 723707345 766550503 171617883 307574796 253020968 685927583 742335899 804786215 39325702 681519931 715169176 790445626 945605227 962099035 557867611 952245808 416474987 461227449 642200137 896499143 396661422 765978293 282961130 880763249 738204823 979571605 262872568 525949677 25224317 692837270 952878835 963565236 783709980 858370499 679417495 757229720 971885401 977046267 594576765 830912009 330069537 892952084 311189408 508929991 659909858 905775459 934681957 989582746 73738805 842343204 854210399 975352128 800132412 841198459 187686522 867166888 816956211 865617413 231352505 685329695 781806561 922070940 407255506 778687910 883327291 947619510 849649223 935816874 8377841 770126767 651410578 682102116 942410535 997110351 733354876 865460120 672484887 764123813 597667614 721314448 635578232 771164258 961301858 964754509 914226235 981911337 501364071 549172534 230324059 858540510 168779386 476587973 403833919 685002821 194620337 932998051 874040200 914742998 207918630 722282772 956888010 990815598 402113782 659064284 191158206 478350153 911148385 982773733 58327810 982946582 535968009 648200359 452150386 681602650 119039608 564557632 931452934 968062793 786241173 806572412 853186531 906191285 808548791 838165144 859225169 984175735 163806886 624819105 148131732 273422218 178076618 578658567 580049188 834676521 609924149 679773630 433826566 584044381 206152862 824326536 892541139 933201461 514929212 765547961 986258685 991059660 950378766 979748353 910338316 915838209 530819175 883823082 199619162 298630084 844633487 910284227 980022133 998911237 749404685 781018504 921347645 977104190 504281319 922990398 449000906 589381311 659126739 874412328 868588778 984579392 835734855 847444454 249211499 638112315 635323549 703543845 746281322 997531957 206550548 950978183 646433099 937056530 638496656 668203505 613013214 821879612 355560832 645024732 733487085 931090287 206819575 767747309 350086488 878652743 232011238 550869811 496797934 532648052 597257347 996162302 808910867 999339002 488003505 977532381 574602703 641399295 418452321 635246946 664255723 727754317 569895203 838919245 6777682 758505134 6249862 164401255 605062051 716670264 568913873 953629380 77984610 960825332 422206471 778434563 240012071 740816970 795577900 927594188 544066699 820216002 854314476 908375381 335547864 656125089 404463928 486201207 876278455 941932759 811322767 887189621 919155450 962011691 388056157 416870476 839817474 850895469 460146098 966776181 762358594 812572588 211182224 529648526 393223106 840588610 83558081 919649176 59376029 875678139 842679142 993221540 452054428 827510326 668326025 799669552 419198697 982746639 416728085 556658161 294264535 381423685 184968661 556549209 468802553 496235062 305572734 614786685 185990660 853820341 41454188 602630849 358798474 400553837 341530547 388859893 517236063 578403155 127092582 961130670 752787182 941743584 243317955 518755874 871957657 929382293 283797967 989189249 360393469 872779255 700623207 962548381 22571278 33341028 562079281 629606641 359238073 824185266 647649371 959648330 552598922 695774848 413782241 847983125 122418438 625403337 40478801 512548454 763831042 816597446 822333532 876050957 455003000 502435078 425118677 746777443 903172629 963496407 652387827 730942653 857700957 980879040 415287417 667047036 514239770 623768727 934570585 983219832 882439290 920580523 825609745 899346189 552763765 876843173 151271650 756002753 210327506 385906346 686620036 699922343 792311062 976751192 421701245 653373308 644096224 998500757 399710152 874149190 457925679 526686503 805553735 850068405 965249748 971968798 960177586 987036663 170135521 404510984 343677068 991865707 524413170 864257677 981334601 991035937 78516969 199679742 521038180 579436699 430123200 703420953 207146420 271637666 582822858 838681498 976187950 994084428 254958594 322586867 314937947 580413109 641402651 643134707 10684734 966259266 187391606 447059663 328592319 857055462 257350046 603299652 624873794 832384907 581610988 801765715 612995920 710392757 468814044 801908571 443363332 911641394 898194757 954413327 851914314 958457122 380376220 618568867 24673297 141535927 581089104 960422494 74676713 504084088 619134244 695280848 111442699 523632828 623290029 740984694 55912387 796069626 189845256 525343650 201745407 217246617 747166049 932204457 453474933 563170335 117225938 397118222 684377313 925022709 633647966 902673107 215771252 912999989 933882376 991716101 798899847 931255687 654533158 702356125 892201603 981212633 23826164 925417996 455591097 654920681 169595386 191118724 171295835 522679651 337679258 788296175 523833581 819254654 989972985 997921044 134396255 449930701 493334308 734460764 476904366 694004293 568862667 581920122 640034681 907109922 964569932 981982155 483551943 894935561 93864673 161586195 542495775 875663230 826481711 928248248 43323876 987169603 292337540 535779624 198475186 863971387 951069969 990066301 912337125 942213175 202806765 746926189 644632949 672540297 446255338 639416480 444035686 965216011 891486925 900787174 759179147 855546230 869743241 923800599 754937202 779610632 820414426 924247613 102078369 318977079 815783813 979117259 324529771 948511403 360033752 673409565 184711259 640760489 192633135 428649361 732539222 970488378 447031884 945846486 144644083 526629806 867281794 879983027 791068860 837134291 518568096 776916830 332434812 407446531 190540639 575809074 118033989 294225997 284105923 739985353 690785746 812019495 324799725 833454011 72911799 285737662 899248010 980440854 180682684 673097298 85175910 932349203 339868327 492275633 731589896 789582828 185422051 219340764 560171355 894694816 14992291 911742116 122996682 246126253 724309361 892708845 901257726 937002912 302604871 970509171 255240432 312970785 327361324 392623243 417528042 549628458 156085598 402742312 981067267 999267048 878442964 951727419 571407682 622720769 859235962 874248516 306336711 480888145 15768416 593190247 734116448 739780737 220543202 800563104 564529199 649412394 906058884 918738107 21889152 685027381 438831615 625298042 686373271 825842253 642678349 756717134 876001954 926544366 383405228 434958742 682749433 906360563 690291738 725333995 646799647 905057465 793590197 860931527 720151132 901274262 796912353 818212435 72353180 996948399 445849792 763192913 799713994 818998622 854954183 888235253 478234962 571462068 546753916 830006728 414767481 888471897 120943582 730668453 591297408 710112954 930726262 937173145 14962123 77798083 411559436 827192967 669316509 787266386 853822966 896987143 709346116 875920604 312112362 632184501 603898260 792988211 816862150 929851195 384754531 814650269 422875993 718674156 616221273 979573886 196847005 419998554 228916319 978305555 309695140 922534640 473751814 564267537 323456588 781186598 92664284 762142200 431379340 857403167 703895306 943396592 560928058 578471432 284889953 867808963 469576195 850307126 78207189 306391782 315818675 934427894 532445110 801558362 482512166 612402816 986736783 987520231 862810439 926203142 250760790 659418362 663908382 950108234 458368518 945454554 941988567 960650559 555391095 830214046 635195926 848101740 359828555 770626962 866530026 986543460 66211252 193689045 835423110 944902998 187374458 967190958 854978370 918266031 849432133 858851256 790459249 857859254 783394525 855092824 929891596 964320719 698185441 882227487 649837677 682179825 170999623 616700571 130426280 756234292 71959556 809361069 54404837 784636489 417646317 771505565 863995474 884519764 270993787 810669761 951714445 968704542 902559385 958200594 476077149 606466368 296016024 574702314 682285352 914828654 958657695 967025815 430724420 627225618 189930767 358392335 716945940 939807135 416018452 987608796 110366189 596552207 39577959 694292115 99342096 674678079 928422565 941309232 806325760 984703643 770389852 870712860 300913845 722842332 749341223 926518771 975430211 990848105 366778056 850167457 703683125 708953401 285701962 789274170 498449687 882804865 898901123 948765961 37602683 864444020 301871711 840397855 588249340 774023308 278262144 452356856 199864591 934126305 187251488 257777044 249985928 256614131 453318793 950571650 622178454 940738839 90071588 653368709 890371329 955130482 696233967 757915475 470394772 581424010 955346182 963434785 44501967 528079200 27710590 230228786 863766476 890412160 439905341 719172952 104860232 570615392 384726146 623107700 96594431 800272053 748161918 771019652 744406397 810622948 989584528 998810373 347010576 532066839 235533965 297326134 191406186 807750272 588534902 731488008 798518162 912830538 406472765 632074898 805860499 959605987 725930956 889222198 28290420 918750775 126464963 398750185 952361565 970906469 775269694 785388595 98489592 377816755 11997846 337545863 591012562 708555605 732709167 779946533 574409008 843847542 754503289 911106474 410523876 524103318 336608354 768544559 155412193 972335003 790099553 889063722 10694216 48837174 990311771 999556104 10244280 225234923 375668376 390799781 381498757 960238657 519552830 845049748 92740391 774188613 183162237 823690778 332386472 461604515 354556507 828646767 871766963 947991972 55494616 790206639 165069293 917341960 290721956 508844675 362945063 397900165 301048796 322859932 381974743 872745618 942414243 974426031 654497213 757244627 857786347 889490991 550783919 836494970 42180323 911159134 799081187 842544750 261780514 439055496 837989924 903934276 842926420 903448004 42682118 448452492 895600845 983945041 120696357 547026272 183448468 953997408 875550498 999793084 810827548 838159265 444037096 834154139 626204188 632425748 533914601 945448298 681082377 776562733 7480581 458541832 282887885 552489134 257842215 468514490 658654596 767928088 823044251 878798831 983246835 990921905 671042377 931979019 6933282 766321131 158991933 953358440 577657117 661694271 533923983 635158518 629244738 814754318 616016546 983650562 38849198 796149309 776573233 977169937 886760629 960595879 894805531 912677982 107544073 477911116 725756400 933025229 281663302 853971446 108834511 377660717 986849823 994140022 350900005 719348911 675069537 884394387 4178744 477992723 498078714 528683494 52966732 840624345 303024630 333207313 881696579 897836616 6692019 162645087 205164375 764290021 43394077 778986136 882911120 974225478 75813730 893192999 550015278 956540946 803205227 806276675 568967484 868393437 831006211 955762983 468817909 821829080 411796020 999762235 245151932 565132610 992416358 998492190 147913585 292021905 900934591 923356272 87430511 866499473 530286277 603278871 331218568 567942329 957238959 970068270 279363286 629035358 31126686 572226916 902061312 970080508 504960707 513755802 965983644 977245178 889480663 929341346 733529715 916934598 987362754 988688359 690785696 869884155 446292902 517805359 664801667 772743177 834102747 965997010 424347270 647345110 238908739 422809410 247978372 638908022 353123700 829743729 917922117 949332769 678290310 900590129 623736769 741782654 691375767 802194492 438782222 592977703 205020571 420724805 496464152 811877668 302178065 988635384 665718545 828099098 893087481 895261135 690191512 785234046 927099908 966772888 585600174 908366732 668053067 921278064 275836115 955656220 201221545 413330741 504596003 815411688 965450930 986325430 755343047 779974228 174860207 632929239 927861592 961181200 1716275 191655630 736270954 881436766 645324251 662338731 833537122 895668630 916152989 999131202 84258639 796303071 756254383 859443976 180680980 904983866 804815503 863649340 994450165 997684920 244746375 896653983 231640862 280813350 782738999 902532212 612290841 789161183 108051603 921698567 127197989 901555917 896975371 971718022 127013501 775525496 514027773 533657232 42101947 770260042 453374254 644681982 743757344 911028126 412349529 892203175 137869221 372742343 956747350 988302788 469750835 682654324 52598326 641967021 750554783 881045152 665438368 937612012 135973861 627004308 611776109 811173162 406540414 611982638 214328249 913697927 928884595 946888009 271006986 600979239 672242756 852152678 171449131 586671140 216197847 667463522 67460675 157112232 728103789 803431868 488835771 657383170 444281236 684871672 427784187 950284023 930012560 962854302 659022388 752218698 467507872 682074538 185530115 699387261 224027925 649121597 751774713 803108583 824321720 850027286 65995927 782282162 6812830 216162773 402430133 758561971 305478881 940974307 723115219 945867878 172631304 884632759 853746639 854522303 230222359 496799150 323612969 495559559 97897615 880506192 83687601 271243739 212965156 515371785 82415755 903113218 558948399 911148650 974725655 979179987 608347876 694658686 467929578 572175801 506279319 998618071 448545783 824496644 231779477 591472154 655575289 954252905 306274481 506244319 212407747 474174073 325826581 496534128 35769488 399367504 926782264 997379493 6037286 723961358 537031113 841064100 62899894 475082477 532771313 658269098 364021375 548144715 361923546 846470813 993249128 994629639 45299593 451126087 30186904 547982891 748689543 792986548 113994059 188285092 401290710 600380586 22386773 642426419 819099840 909530427 36989206 761156245 578411405 837903933 646547144 855823768 449065775 939953240 385337447 932225888 873827076 891179407 511173767 873927835 846587320 957703324 187515396 450267143 105013457 402219762 763572094 772158135 489980692 623625455 397406744 486033596 794239181 837071402 250366634 482649034 353943557 424542809 758381947 978313076 139762041 290852756 168838823 927086941 258420780 375682751 446414111 581453330 484906278 803015008 715203708 823555864 717301728 872406481 152672486 971484293 123144591 535909012 774838684 861635783 566009738 987507002 556571874 615566305 534045829 990974126 476901373 745209711 883463627 907474154 144097242 713687094 285866660 518823263 318783952 432260846 337844120 954840345 504167790 764186449 566127835 918510748 480537650 795813609 741349291 852311856 852960316 935679456 337358736 716894186 670068818 982672871 416060254 673852280 912841695 943870989 164551304 502334418 560864041 843359192 451486517 866853976 477554778 995168384 196009536 409891356 355975408 611089209 884526499 975650076 477627874 960191212 216828963 546798144 147820800 301214356 928801823 998798402 538881519 996582928 944410038 984499897 368668513 443060228 973776192 983075002 472182519 772132612 388813275 872956341 944877659 950597393 923810495 948942675 482387400 896066502 749003880 909623122 710905770 776261447 427122620 524844025 54122934 193735557 825286281 876480195 605046286 693114460 798730307 983934526 695328367 924402957 822662939 974572562 240112701 262790036 421279348 686763925 79733858 869250743 989572851 991164122 424894008 626007211 783512417 843280991 828089361 887681912 590752943 978367794 916669489 976592463 345806638 966077669 421810383 676610439 307722857 366886858 966916446 981126355 924226668 976529009 291668694 610955870 812885346 835404969 428664027 642067648 666900765 977705387 122571746 201118589 482604018 743210148 450516103 868593198 603614885 726383893 32814351 768253378 779767019 864894213 957821098 987880671 755581643 915242190 966161487 978834098 236185201 735678747 626007741 666787888 216083525 962516838 327861434 515629166 531174695 793428856 169085674 607541666 527226743 529965923 216549003 743841734 208030157 453345040 414121127 468408036 593431819 864932661 122753920 852171952 523348125 617014809 659689632 705986264 681256894 878882599 418894930 789274837 350335247 756173838 310998992 781651353 808707612 864859101 517136332 964804530 150298986 554477876 294200074 872551306 786912255 819664428 483082600 613645669 27680511 915138000 284510118 485636652 743373042 843798253 952026284 989673908 598773883 761872816 630992938 754675893 602308869 752818857 35877409 998524232 56160408 239485006 552340028 868490864 667192689 931002395 722580338 946756955 604882456 817869615 94930706 668070771 764493206 768224071 752906857 977888077 543829858 889474040 54457581 924088579 299604611 936385645 289290897 889424420 534127366 845984676 362532879 724285406 930568934 973887390 745176637 853092876 666187878 957539060 430334585 972296820 129366239 923020299 444688322 942594515 658432596 732407319 195568097 786836872 525237162 695047413 970590964 987448050 530571267 735963040 554786117 812655571 104443145 554180676 719220047 976769061 875263243 991562933 929809341 999853468 687732612 757544301 561943766 989504454 518705043 877472582 549310008 592535924 72136602 266703316 422897024 777302591 772502280 804402599 80971018 576465404 496614484 526609265 696017696 860798622 885038089 955548564 931782758 984695984 166903854 339759190 788259424 806020245 553754488 567573332 560726639 892362101 155314721 931834214 680745943 788293842 588262828 861665918 225105633 741709162 819037007 934734375 378760268 482773270 230241226 582910905 905630788 957878703 595703774 936855465 240838349 910049995 50389608 733548782 587329232 720161522 800650113 852509006 674035172 868567495 221480118 477150582 13894243 676792187 687025677 957023725 729164623 991795383 917010465 932277495 661283164 768440504 561497739 633610720 5224520 279701487 176796500 649668338 774245304 886235299 801908431 901992444 81148330 317509928 864866981 929939447 247336410 706265433 436750486 932382263 305363265 461226036 451258717 830088363 12958095 669124788 79757053 979224366 664989735 682830302 688774286 790193219 373709516 669297431 549204181 736975963 71907427 374861612 281251727 564946826 464323255 548118099 64250123 608479049 444567749 579343895 251284387 469297843 840583717 910916130 299850124 353253335 23732086 527410184 435072705 992801069 560024152 602952836 772456675 840765328 409142602 427549229 734459285 836426276 913911832 955596635 948800486 960317848 276908058 759762571 446174492 835120146 662464447 886179201 202962325 673752565 267496557 603949028 7678460 860300151 330298989 406770476 909686085 918722395 73767749 327455451 916830899 981616195 345223796 577967308 930957258 988078732 342469704 720611066 395860805 714804167 894906550 986485520 228446106 245046318 818646296 920810744 911803867 947152151 313423474 432323950 104928995 829044739 543058354 797132341 815367744 886541125 637343071 808628836 237006073 522387550 457862094 892278482 453412623 779624019 66298323 219101564 610694344 714874658 449965858 462072580 519795907 774584081 524757527 979322058 726332479 886767263 934292843 942827687 866282027 931121254 695420941 840909418 637753320 854489263 673161351 918271813 248997180 261427636 384002358 413337789 962697329 964590192 856883374 857961812 128816361 723121221 176116398 561379114 939972201 957437565 58079528 507948181 308842108 482479436 854084109 913125824 572525245 954858430 435218383 802107563 229585025 662027832 102659846 775844832 615402702 696823948 413396162 894690994 863550995 883639353 687788174 895817023 621745753 955083689 381775426 418406996 100990618 631470715 26328971 836515694 674475379 790798099 464960981 989320315 414317023 802556859 66594723 956899319 259010662 739394397 836619243 911572378 310511080 980952520 865410448 921465806 255009131 762317422 457194814 533714043 374199797 377139164 86988677 793751755 220802350 401472467 531530296 657436284 532727795 953048656 448529415 921965162 693928157 904800735 470731174 668284267 532806902 698411640 99549225 978014527 641801873 754143169 53842275 58306840 654406312 696004896 14941552 104346610 367106678 707270233 871143538 983199077 490077450 596236646 850225588 999237646 968396069 972240108 912422130 979849270 755358419 775450026 884028639 966850246 28705421 42330829 20920943 294003195 799336182 799732488 442002937 472932857 231207871 468307862 372911013 438179955 867072233 960120065 551315809 619257379 973406758 987381636 182936930 235992114 305919309 574633810 761719943 986463591 182830535 400511617 391452768 899043669 767525548 977697634 792379314 891199244 892254102 972855967 250822370 741676124 821539926 961036352 23162651 669387157 705062314 874321815 139206732 666534907 775614360 925753640 350550948 583533010 650347463 923580310 546699371 609490435 227572370 623051323 401612979 427117073 286904122 578449963 779270370 996151202 895241904 928700977 927328514 973880600 260893888 659282738 375875822 480193310 821926170 911023115 215974771 859955176 359308502 814103168 508808740 617374366 405648497 585866193 415925543 917954253 840079190 980925111 127233529 374390501 700316744 880382225 390899652 947880075 335786700 856625567 478385048 547222927 907985383 909762089 348784620 547270242 938173972 968970105 572612616 826030462 865216849 947962621 266160947 820143427 592612875 983833084 690560027 923901286 396142921 555540538 783491806 785676263 343292583 558697353 802952807 832471046 848237258 910233031 121637665 671745765 531764659 754900719 757598276 973993424 509861649 573927716 854784591 898095233 945786671 960301372 827224058 877175988 211932041 882296519 809034640 813807976 249622559 946816304 822051013 856558650 877087495 904769023 571563115 739195813 62670128 542595267 767274042 841865743 320326987 851245441 569614460 676747652 712882575 950175913 629622337 968460273 973870161 986258792 576853321 786414473 705530794 945925701 87706836 802642502 577359977 661731548 38402565 331435329 699048928 780821816 857199574 998075628 184747716 784473212 194241419 905432728 313285095 394255442 374404149 409711531 305970576 945152689 819720754 952791872 812523071 925992129 85036562 247093581 351641985 767214412 387396013 448503974 83122648 789539860 470540926 538623742 237626107 538608644 591745744 979360229 423058004 709482502 458573518 669983103 169066362 522144657 372929857 429327690 60139493 146510290 293765721 955799239 357201977 410660554 487286594 752578165 876520227 978364897 890077907 937831081 976443732 999656987 669062748 777969229 134583121 422634238 207520711 650069152 158415577 661252618 752650563 984978680 370645748 443909345 301957370 339956394 171690650 831487320 430808874 596369090 216388837 333480365 821876295 984530165 184052194 645408410 787138092 817759784 856548487 996960581 714203415 987208608 298995185 328423260 831045712 903036695 987761782 994100466 856192841 970686318 277814881 689241392 58980879 141912839 851952635 897724538 345677754 692172993 813974220 910788276 278900969 424243553 245826075 484535526 589303699 771956523 84503040 177523661 116922836 438418474 542277112 648181996 812542652 893953704 708198299 964771835 306993903 797047887 717036541 924763553 808364624 993104854 419857466 549778137 82639260 987315026 917504418 967115111 183221099 307218030 30373205 649369890 700855301 837342986 579509733 987687948 158100016 330135400 929829119 994726766 557211059 818597512 268549886 300315798 273942736 576907059 367529501 573648228 446662781 903625894 695269766 989858769 529225881 782250919 913102604 997905593 8228124 48066320 107397918 743984531 257038686 884981485 527069568 950752948 638127015 866278292 719104051 828382909 971869779 991129074 798133510 869465665 797848965 832036906 361970261 619028928 660585409 988259268 965049339 992625037 247367126 617609414 781539960 840334183 219224966 312643390 36166497 202957451 483120365 938636765 408381511 679873020 606660628 792055545 421370209 954478207 100413095 243735158 17421190 201594736 513303633 861177634 347556018 638376039 520247203 589491289 667788708 739142452 150773551 845521350 883500856 973829952 39072890 220178147 775033891 879140444 919031672 921599989 920239191 990195964 671656295 835404494 709119990 730008361 705069064 767547842 218079241 804503265 414151331 459309465 21828453 986650880 95651413 637079037 975896814 998418511 691130136 913924573 442817857 803710522 292222052 470573912 40531167 827336222 466198169 811822626 553353118 596272022 691545557 835808686 781083639 911443895 998729975 999000746 112149796 412059452 552892633 755103883 27271626 588524027 879035915 897109963 40122408 43972482 200486422 959343152 92563043 541945851 932621541 976869636 24963805 724544269 426797859 679034247 941795307 944031424 527064855 914095765 778450240 832815159 282559387 553888352 141467656 854969957 242474763 400112031 425975563 740646275 619339909 695631360 869628011 983178459 858091055 904067300 718722938 839330361 63910143 72135864 921142429 974902363 111008407 189981720 672673233 971248410 510860026 589552353 462322853 612469271 486223665 626180424 458920131 486373937 121928672 324372575 304840621 671404150 642418721 887287068 499068680 653596593 438615580 926160348 18023352 72147510 735770143 828906007 961037975 973259371 174821054 399199249 342704205 651990008 300640618 325747479 322230023 999222652 448447354 882542466 980722972 997113020 775352678 902953796 84072694 136359569 352243220 683521171 618673727 735355664 469562512 611194231 784889808 838057347 756992036 975350356 294121721 683811646 169853586 764109025 674476749 909536016 549801417 633302023 113662591 672309071 819152990 993086285 582897035 703461497 914549235 968045232 268366448 912375122 246551956 530762543 588391256 597583688 194025252 795126236 190064103 206434217 538457157 634066145 953330986 975461903 298246673 561813460 653638297 745586430 649427795 708092147 45930739 296743013 685841009 979297276 112472586 554693456 296227491 480719619 105586777 525548420 506030843 521107394 323110098 595892998 487819778 940417557 616771741 833247428 801118161 912612357 338092227 418190105 620794466 824974562 542493312 830939735 764360057 772527999 200730533 858407501 135324029 832093484 482459005 950025243 661338440 946538900 420652046 998144630 137772941 838821848 608812694 791994844 163392618 397448136 699837183 812594802 997349456 997668911 239457843 880373156 514486738 706324412 5391272 137658422 308315906 742046996 777030176 917947786 578344606 624745597 682065147 876311215 100518887 887526993 893479816 904648492 579509258 597374012 749544114 943128867 975776604 983040283 747509722 816369979 106564730 940131138 736754934 740326643 847444350 954393352 662250853 780383913 517268131 986583916 617235956 884022884 19288409 225178495 233471583 725622775 956666493 956944712 880240578 994491926 542486139 803839095 362101862 788392346 2867692 186802040 829877304 922458631 319514241 524561272 560547064 621187288 601490156 768442101 482340354 787969267 179617937 571083033 309787930 625729164 391262523 564932250 356313950 804072058 342404048 911666965 232906014 859645040 508266373 582565396 620706679 623365502 173825337 507483497 439454113 957320661 333856713 837432756 793602172 845297088 185693716 920210483 995742559 998785434 848201809 929217409 994157427 997393534 548199233 773807498 414996907 747103974 801608466 831014162 402071267 497081101 169614926 244732189 266417582 617142868 141742908 611892007 718341145 872756721 64248499 620491711 239363134 245641533 962243238 983154412 801322989 890938189 641767099 894892134 913967601 959119191 639596646 823729840 986619852 992905853 106615540 979985898 801696166 870502059 420824027 941965221 52730074 844996452 591913781 883272200 643024811 745841051 681630472 851155516 309772292 931609194 841804986 961131108 567300710 672377813 182836458 322652909 959454500 980448238 77394658 983036301 80713237 529510592 162193688 426237941 925761229 955570230 530119355 678717455 860455884 862948428 312530666 878177907 830108643 887566898 694540743 998313118 273837122 780457614 727120935 816664865 777430125 785516312 759663071 901229215 828350158 984733179 524241595 725050386 94984318 760393168 907594839 984955674 773866313 990596604 861174131 921779752 276732657 808772925 433703590 665510357 483963849 547594227 726709268 759709733 32450418 476380045 916175775 940459723 422238619 991380478 936672691 952533785 960661538 991721796 884709266 970573718 845954487 848517773 410695642 830241567 569265218 755862707 33412135 523093819 69387962 588874889 711136418 892099217 40210903 89743710 677787766 832775779 969638295 988643144 515204909 730547624 71172566 879599753 202238454 371212289 84817567 128799542 244331008 297832142 783542826 919562366 488601573 776691964 340535556 767738208 410388861 553286289 106104860 947548900 213996485 939985315 4368067 916608725 934976430 955204468 289217065 986942380 594964280 769930591 169174640 719331926 948078274 979624793 675299829 904650916 196321610 615618070 527148374 973161988 570152231 714397467 472277371 713662449 378589012 693423930 174898017 758215612 608610718 723909613 767207130 849761701 10124718 198530390 714840781 958246489 93517295 538339720 66346861 816166091 652691444 937610391 735632191 948935406 762805240 792427488 7201696 155850144 431283817 811209625 665610255 979659075 979805601 985810529 69117344 813770461 878733753 924635740 248028122 829077705 895013070 897983739 390557970 638870180 833841879 941073088 275052237 305489232 900305744 963020004 437276321 958938755 331399774 522618621 425179614 708528655 542535166 698538615 622949525 714471572 563361945 630052238 418047275 714025497 142532126 212473384 40764396 143427400 625048551 699244905 585923320 898959934 933054407 981192761 923833333 977142849 821196276 834599695 675992992 679782116 476684688 604093880 968463090 998278427 823340287 880163054 325545319 582436576 603842785 923354118 783548568 817234007 824796164 872089418 122537869 320526566 302136374 963383764 735438444 787838782 362043334 841946548 193691469 666779858 247162258 601328681 652963177 941612765 740349649 993900832 927862220 938547258 713761719 882819841 457908464 540872235 7969015 744017178 203551034 633002299 88527394 884682618 854717212 999942853 414979524 563909356 438647347 753054764 787200410 791697309 487666883 758831848 298095825 890295461 326380410 680693186 384596227 570894068 217068003 217139057 57540261 969609787 205722244 647733377 780841574 865508446 845095573 936239778 397373368 568429650 843919591 953725452 866630376 932395566 600221439 731048339 759558107 953612472 371039040 496812853 105337863 646659001 938521992 995947182 395872906 886414260 200188085 965446405 386283787 835466083 222574484 942987126 825444756 914465651 248632845 711020333 633857025 696920162 418398586 979090550 540822249 984336876 630769017 833594844 232991380 413161104 569301474 885878810 854371733 926537731 219898602 636274420 116313725 588882563 276417228 874516287 939753543 951208301 334577511 815770407 146669828 840746083 583074306 619558950 55104469 614032591 824036337 938188774 206616196 637174482 752710681 915848302 783703261 904769496 42103952 100878076 281054467 596138861 213747808 444991315 149447903 707751199 478820055 799325866 113594825 482823400 78005689 438237538 505845247 624653086 767693174 916097464 315365164 938713201 395201437 708554938 797474443 977772096 912512825 993837137 320451578 762224030 587615153 944624177 154557363 501493810 827403092 994851072 813148683 827605131 203262891 419701431 169717893 420614921 423067933 432982497 258378424 553599742 281371858 642390284 463352817 763294020 207098559 641105520 751582072 751726178 282326043 819474166 826018337 940628842 251911542 502164338 776465529 954881132 734800418 890284073 412386873 576292523 21911005 972114017 215161086 359573977 424589088 498368973 310475056 874167862 497287941 610108508 625973948 904322379 485851761 865875002 326574346 448089730 234024206 729722343 393109496 871788781 35993608 118371753 546923266 677591195 743906999 791848286 681260388 961365466 868588865 925418669 124739131 652299745 220035245 456546986 621681835 791323275 679824590 905140379 4017459 421287469 400939922 840203542 35992380 959646717 814140364 914603305 360074833 625105579 625740860 996605424 64341340 242578922 349422290 533145669 300073977 980810072 164133884 388948903 625809180 870441966 474060434 701713117 739265963 854811893 403357218 565987773 510334815 523770043 650697404 880724809 999970475 999976343 708030072 802754145 435240355 524899397 521498348 614767106 509722397 828966638 254746720 371525866 451079262 880056810 104110492 324793567 853528298 878119222 230340791 666888479 325689759 946221082 649277132 966312622 531416243 876003823 503794 337604101 884602329 913464113 132032861 626941921 912472771 972866755 886713836 917507217 271965876 927982266 456862890 845420708 503777918 895129256 915491931 983375353 347655550 525447199 231623798 665521231 290665489 313500242 932960797 974652058 434642305 553968981 832286412 886698152 876725905 958746026 966806252 997782937 803822405 867527745 396249078 808902268 196577934 945482688 62095310 301566376 977715152 997255744 162369161 664244034 840978235 885533303 343953360 462376371 839301244 850101335 217717466 798424500 27861669 534455803 200607770 393727816 38484442 310325548 320613122 685188844 839114639 970683153 633711524 676571270 684224679 689441734 189586249 193206781 690319578 899278457 956001874 964689785 233825183 827043528 188390954 744204929 411794190 451557259 774002903 843743820 941929719 947755999 873577397 934599614 717243097 730793868 154469928 997789122 138957282 592139506 601177392 978296276 473047097 875326229 594390364 814965811 429212874 635110271 204481413 600566845 592517848 941011371 496773796 999169233 150482654 269813078 402260581 877416647 507691994 557116172 332117924 485317450 675357577 952373653 675966315 833083189 408988461 474863272 784852903 886507352 503311569 954293291 288658176 419722578 29240523 875643488 261100260 637071824 560575551 712380257 706789278 982554007 138444271 724500527 882135667 986159620 544639881 982225196 826126949 854195589 982910568 988127643 357046255 480202182 532245492 807190551 318527513 441990965 18690027 848424800 692138651 933022548 814144510 969196533 954575100 982405672 955692231 974218525 515594259 548561786 46318634 287919027 47652148 693180297 123837894 943052851 794710739 945911406 248111278 745903026 141058651 727265046 666852095 756276750 574925179 862624922 221391415 267654721 975289208 987459405 204474523 351336454 885165292 926767525 237286536 242401308 819020200 834778057 253816552 819399685 53128951 986451040 861131727 924771957 328165747 939062925 411014654 903740562 98776455 715742266 252949393 726223457 964401550 966773281 365084118 664698623 188445168 752704705 32626729 689839494 334268719 684629788 387569358 394785587 316953398 846095130 849097019 882856956 238014381 335410774 550957701 674434943 280619744 390984593 866221906 981025226 143542935 674628781 320607913 666523477 435973212 474082186 807116910 818002465 601963490 694226748 261966265 265002919 671847041 923005370 711753775 973031943 74643621 323523927 399892872 463723985 786706149 976337217 145570195 748542119 576060463 642377974 15869017 385804204 716490993 761844032 773150441 796578444 32534287 504832739 633261227 791953651 311702458 508103257 360948056 648563038 662476971 696468189 937669394 980352655 454422475 912113871 273642308 415501446 702074876 911001845 796720297 969771162 678209730 914934687 595420911 607778140 768279158 942159907 485631224 852399562 702639011 760001293 612590650 613205950 910756770 986341532 113600727 655822875 340874772 517644344 363376498 890968793 466246426 945653327 975446062 993039250 428927957 520869029 504009760 787495346 388975969 784260331 405827664 927603522 4357525 168215730 492480299 922928974 775114327 843513232 887177392 971898437 173739653 188268724 594747113 672053485 276237930 328786220 659250217 736522279 736153666 901762878 157001620 565088988 90776413 796898174 958194286 984537846 146887974 330466378 492792370 895828471 701614464 738086464 353021961 463795145 672068802 844769017 785443346 852478675 667283577 978348176 130712255 639407798 97231347 394035897 458694369 658674379 719969484 853429241 102459058 565096437 908803268 971576115 116864679 758080957 693458751 836398205 270472066 725868467 372087009 885980028 905598604 949521240 112877556 771293109 855721692 912635008 950657900 968904475 838794129 858972298 274401065 955301862 18573263 850452534 138201898 785768678 11141789 671888426 865171659 991231948 248273408 287701394 96618237 949685262 966025923 978795391 259119927 664328777 642647430 793951652 835648368 903378445 784760272 927580770 401471159 686596302 52200365 321540784 209410616 305377560 177154494 211863981 798364328 999845879 461284440 933115149 48144819 788549911 480712904 741034050 920209001 950330129 988710581 990200589 943458978 947008268 879735388 982487137 42155323 115778874 382890823 703332139 405892948 457031605 783083983 969719912 484809880 565528651 550859860 667059232 364143924 969845069 99469028 390847420 223345520 270664137 314977155 459578808 708551656 920029910 132822931 920207146 194872607 525407805 154764201 256435743 502739394 823962505 182025519 982554625 994025605 997641375 844018707 890445056 994349191 998122937 584709501 823347532 607915496 751176400 480626440 913346512 139878252 887034313 160478132 983178742 292346759 981261216 805830701 918677043 516963373 798085131 54407969 459115570 227850933 896699024 407311393 871028689 887252657 997441843 98277984 178056362 139392361 410296926 758417143 761118828 998496848 999723094 128045728 483415700 772609675 820428039 445638246 725984100 602836614 727902439 611774112 715208739 50054200 418083385 412245879 871964646 467932452 658913305 506161608 746627635 566406457 568432932 720401152 906411005 84950935 664508066 969008054 988054296 524027033 887252721 136322198 999755385 994939626 995181084 964732054 981066359 787290794 951167835 750559759 918979551 870118661 986110793 558752889 788368008 482909304 548814935 621337797 922302545 493507893 676006351 481893213 943045392 731871994 997016842 402564687 706180905 306668302 612963217 954188096 987897253 874719900 987871828 607152801 686841600 839326645 929072158 107461719 650732566 170421248 907703625 165448928 240326422 265050931 678591467 494358485 673032976 990324546 991328795 538238537 803243667 684772365 753433240 779616170 878035585 18503031 166188960 486825165 807985815 230534916 372486654 590959895 963356112 167365664 370248544 997529431 999048392 637907893 786344280 523070117 713776012 251677967 941668259 882187333 925217846 149450424 224471957 35262239 462700238 709470626 835664578 135825695 373754969 991465759 995790793 445265070 804918473 673299059 801929729 160252203 245599121 168309207 932645048 562022507 947759351 77375630 84711748 185219243 828989348 636507755 947053052 494071127 600547465 920545175 973123639 594766283 968793199 22795326 335763586 435510588 660831758 682162513 933087197 503467468 683306613 511287860 747036104 164827456 744197400 704856831 930330499 518002514 855397907 926355847 994547506 356544529 764688674 918764649 958296034 493233416 917910757 647004108 652781455 342487420 603884498 419190676 889982933 152295959 571868195 853012663 858456094 285999236 798679291 134289613 280137432 504070918 758675780 581527423 722483092 88823115 447486143 319183437 840916036 290456103 416145979 93884172 830357798 828459157 960655980 676207658 712650601 46134481 799785342 329105924 759570418 797204979 991699597 752161605 819272923 690787321 846873533 403129987 435906462 880945794 880984417 268452502 355678828 28992211 582570320 164909807 877398183 718381278 905102872 544030849 886801740 623370201 901257785 584914252 600678926 219377674 475194143 385553860 468530094 258967009 587083436 26507647 706165373 472040930 793737420 481032264 833993989 302122057 326858516 326949812 971345058 595113487 608783253 311886267 343667783 522105023 539772339 549140687 830400893 733330561 828690467 252524425 639015557 261544676 433747868 854691372 872640085 915120522 921856508 216510967 312474375 46691430 473818356 826266291 976707811 967939038 976580498 59949022 372001389 833363403 912534333 92713583 222474511 823264047 952155690 811286579 950035776 752369748 974110625 688694764 991723503 115506989 572977265 744576491 873703967 876982872 930579338 308970535 368534032 489386475 503770468 150307045 476303035 253578028 903885889 139361782 362512212 416081724 864046866 307691737 888713651 634590495 744072855 240386851 706822376 969254781 987305889 194196919 879748292 804476058 874745194 261205301 345517777 56620245 352643801 83186234 383790233 255948226 398287379 167170431 318367939 126192744 143158457 962808753 993105904 418212283 687703289 963556896 991471791 596184975 630108481 546998675 990525376 759657502 890337940 86544622 390498417 718840401 954379325 248716329 366321077 622470021 839702660 166588817 826245548 478713405 919065637 66307317 575624198 416454641 797881008 909064985 927207331 755567433 842503528 488164339 872953579 235686654 790093988 965594661 978260678 904187208 972738612 511074310 817159825 537487815 954050750 486217477 547177359 430000586 807454233 472120103 497486192 336157433 760062789 218507511 925885154 553019482 978264509 850919442 994668666 303560133 315344467 413961418 983787710 547453011 666967134 333901019 596525734 26675556 529062419 667651554 807482056 310264411 357577322 520208265 749438633 72129508 407307451 596535330 598965982 560941624 978784541 518172756 588638467 584788075 832224424 75696716 841015081 747213875 946212576 73061000 768625730 443343711 659226615 867902262 976929423 334114197 657557642 819372792 894412626 64470211 462892928 941244513 968526457 678404107 914130582 318521529 356801092 282801784 295781701 223302273 759948163 843308823 981597798 550827693 627977816 970779341 985694107 445334420 948430969 332559877 352724598 962341318 982099201 598559422 839130004 134391731 174840074 432995747 924516221 756936365 821297811 646076084 852296064 762768392 892307429 561691262 564056001 228919224 257927931 736940943 816380110 522863178 606765485 763511058 988691013 139548906 311779422 721448250 976951965 395129171 638959623 898624211 943651399 300335018 719500055 629052826 702119097 936602391 962385669 866918425 943094500 491311226 724257972 184371584 383784215 696725778 827091550 741744916 782767562 394963860 670681270 374264832 434503591 662908449 901388521 329333868 964127615 824388063 909571937 869040908 989366287 5617308 541752613 776990344 906626246 524711153 699592284 242707047 592272624 356817982 914612325 274334845 415236590 87102516 766890852 106577301 769712720 419158300 557537555 976883321 997504225 903163490 903189807 254444755 617322466 210220443 546561302 105154941 939218120 421593635 605674361 987476636 996790185 883643325 902054124 48035590 549203186 126907146 311540643 569152846 717968815 911752136 954075912 176231247 756130217 888205879 928605721 913410526 942833563 162600125 721632090 665548806 980616888 34664226 898239940 508195767 704706377 418949383 823048058 371156679 948373875 402158726 972396881 261587168 603687495 955120241 993212180 413591563 809883914 150092768 327015307 502881313 909320229 134201794 524323200 683389005 694186005 666752097 683489647 131845520 311309022 600541668 842473391 812426681 939068127 631757669 875110386 466287058 921305590 939356344 998718283 608623002 988472233 726654452 855115045 442694075 444320150 937342657 965303446 475404354 570093361 704455790 979865959 799836932 956886718 125034899 775995481 231981399 319627500 42601848 573523119 711231502 887051079 362959588 748713589 846343109 881660714 869336783 975275487 379741576 448771047 873906668 892863133 16195567 688777031 442011568 967994259 309384035 858434409 162043741 818767554 81440519 906119934 794530087 976841230 685908558 846430555 752699739 870831214 995832519 996309955 916704025 962364609 831097930 865073115 681241016 688263808 9356035 235926622 738393352 968609018 630014827 943622920 912849504 959953130 124633512 539776551 447308243 483915152 941230613 957052508 383779917 925402950 602951159 897164535 190982632 525193783 251457411 531264979 811736962 815838074 206786409 826778362 562739268 710485794 22076657 676416499 583154326 935625926 346356269 419772554 782680785 897992561 665089918 671693200 909758797 944465009 749547714 911579899 530931818 780737360 623510104 749053264 443042073 934047320 944623458 983445156 365600882 704253718 464689241 757009687 720679373 722240243 334999060 968748283 589833310 817024521 431560618 745481939 172945162 822293329 760784597 968064674 243465316 320202084 216193708 978320499 452515551 525689016 543608520 874928868 658961118 871603871 713420071 831395976 101499434 955881524 107927712 669731475 840965584 941224874 150315611 750781853 503250434 725402403 919705718 927913930 491640479 612998636 839038188 996047130 390849986 828636505 448519676 776365884 750224413 891335534 751908777 904135573 290729849 489746603 438699908 607443125 509267671 535001816 475254639 862311605 187646221 280004533 569078660 606077135 71075125 744422979 729465915 885609699 234765565 864763677 296135048 929469338 335643383 911211152 560903118 871005696 207680046 618753386 492983562 626921346 674557403 712856180 748607050 995227916 624662610 807461886 393404946 552044788 183395813 938730618 724273397 750446689 533305118 659080777 817548201 867681685 520934813 571510302 569154257 799746090 791307955 954709377 56100266 376858229 606774989 703250523 232771233 542768894 148124031 869083132 170999237 649144336 33596997 527740471 378012708 617839894 301345543 575776608 331448334 391606806 439065552 483033628 899725956 960915679 604692604 676145266 265442622 455421351 282894789 978241767 371858364 494570014 849281435 957105674 470230463 680103310 968982644 990758343 879604117 897274590 213897983 973030661 712174074 910147916 491499373 575070833 834662782 940488695 352403651 751100372 688083888 929639977 631095200 957885856 783017090 995304564 475149292 605222230 688813567 828217499 811151881 858902003 731639150 948840963 787106939 900263364 390232362 525527960 38300664 865170133 456823943 716259918 34360112 254876193 130772128 887218135 703112307 879183283 210350696 863270026 407329289 735412281 922617587 988210092 165167031 634805281 128788909 506430315 484712360 887527038 107840245 577325458 446520308 849059986 784262070 990921132 424695047 430443118 263476582 834744122 335262682 491842929 113117599 816576244 689673249 933484292 926099675 999429132 941117815 974113988 32350562 293609592 177437963 988347001 28780207 814681910 172607904 540825620 936254248 958060689 709753205 854888076 197231252 293228698 459691934 922995882 795867734 800769098 835407559 865027052 325694792 576082817 393896708 697035400 434269936 886790892 498955692 574395905 519099744 903157806 304263308 528308544 157047810 234741272 886786176 932955004 638026913 864448279 176891699 545247978 414918502 648938268 188048909 857547231 980883876 987827654 840629273 891834618 800807500 885128802 267186752 313397217 712060024 930318342 683306458 921579666 946725337 976422443 565747779 881408035 403829481 800903230 615222214 851220984 468170031 754286223 252447814 564141812 147075596 462649172 954295174 963143401 763439510 967612097 557775135 809405202 444005403 525652041 115333208 907910518 56945896 636250131 676283881 730111883 646729306 812570724 757637690 931783880 978978704 981052476 665176159 771791217 608191494 789885289 69666043 815668388 516088713 828782508 693571888 770776221 439989364 731079522 360465225 866711641 758501497 986193330 238832904 307665861 373216292 811693478 757358214 834497146 523474966 816015795 514972694 561293773 846351945 944583520 298296812 815704189 144196755 593205705 786096535 982278541 921627151 981544517 727296371 895007913 573602820 777163119 312660740 778361143 851134623 945768704 873400638 890676625 389687409 579596636 320683357 543658112 387320666 833979429 816727739 910216029 632535596 945474830 38421399 634129549 178113138 457954205 131967689 472980290 246255295 587705707 571665271 768299451 92426649 194102673 70826188 265819393 494285493 942253060 343431456 536077654 153673336 781914672 511377698 751378715 472882264 774523987 461142086 817858875 906499319 986629506 807265807 982730279 628230047 960147370 922143298 973056467 608999722 723158973 290282698 627781342 192871523 820075563 599113212 683740132 264701684 564477026 789833723 819124195 484684769 912038736 572004569 685466473 578177125 846697464 861394825 900772922 864677922 940324100 808849158 952857843 463365663 694677377 444141218 482815754 69410589 231812020 368565933 958741542 986941529 991442735 12633789 629090031 224329751 538889496 432776675 955202084 750594362 787341705 692456027 807113984 265519748 322901309 870835941 898591646 912955321 956297461 363469652 838959440 883925702 893603983 785683809 868900871 514209436 679959578 345931316 582712428 988657404 992773756 364737347 371998788 734828919 926371478 742024619 898289789 550292041 619401111 66979467 459982453 278041884 479088742 809534640 890459869 403343289 721464109 744804204 859824059 775413882 865971099 185975516 813987933 740256239 990474581 670187825 874997971 235022519 643053848 935269874 941862404 800864465 947673682 215486366 599379550 592948042 856159198 110310423 200893823 360817295 912004768 431991561 863752336 814394619 825733970 64978735 800846688 60339541 609251234 373261338 654892445 942813700 966517721 238777544 615324591 254889883 615294812 958932237 970529959 365517612 409541364 744620986 754180242 21704560 993014330 389110623 884519677 475915343 962844161 488144698 961985518 261205492 606030426 607014777 690849025 774535852 975762439 441677356 603030301 33722078 212685076 611943371 878370511 536651530 787325662 372277337 871596350 591160952 746574895 915671094 956379839 443138928 960671845 968308383 989005625 765782904 789197333 204725199 493273480 294863733 831601075 490287226 729253263 658828793 900231927 269835139 354576657 312533972 332168657 398749376 673589708 105897725 138235197 657415825 800745767 419796184 861710016 237473009 283003673 635786126 919167291 447706077 799008818 923782584 924548371 558880174 987533408 357511040 749631509 733857205 782334090 523404132 815827179 446562285 801559253 775054942 850404933 319048143 913554717 809111122 809287761 169854032 468578760 322968658 845684071 88266642 276369193 749189301 865746854 805926737 992028372 768461619 981066019 364431817 394056435 926846050 997724880 15134616 389753330 51292897 249458511 807007123 851976231 492842387 974579156 914138799 920125357 133893456 572134113 946366210 982908195 503464274 686568974 508833259 973579216 466267263 977867169 422225879 810275641 465929866 795145664 164699379 263629763 128942134 767023767 463880843 915931916 144971401 816465792 713902110 840154595 605571746 781312080 350996563 893280064 775303837 849800422 314098779 549487716 935076855 984682337 507131639 647991437 884525101 940062704 970342882 999611066 983105827 999934281 213998946 986167972 980019162 987783551 842301251 915113772 432905519 507747439 988080222 988879247 138519974 196503259 820467847 876334357 271511047 679557275 455519547 582124353 256390473 686498871 461730995 839511850 912918083 917073720 935640613 954450891 159111036 643497026 993319993 998177839 160559766 518643504 575029057 612729260 664512030 708556997 216915050 961629348 365504535 379882576 58482835 154274394 206290187 993854522 354924619 369290014 881132884 884509810 923300542 945859018 887256022 961801098 746472709 922770752 705858683 787452503 285140359 836551833 802511743 882777453 261839805 339355175 758741606 940639942 550586331 552424670 500481340 591633949 972678870 983339788 36994847 46896408 568469217 599588346 384809159 661515151 701922852 807349576 205413138 676225217 727328745 931083094 583059156 709962718 196424196 357225017 934133278 983942515 776769890 788190997 824144628 868962393 356631860 535983555 885976394 977261113 985939218 989338868 695087440 724122700 251424358 629813036 407324791 830928749 95234253 367769928 755147596 884958304 694518024 735114051 586714042 759374740 116498951 893734881 543978508 613589614 765162735 778920885 37203828 312814142 26066143 516523040 624633043 987192207 562489228 706160092 268727813 641997387 833769939 926904626 580631553 867238051 973643622 974786632 504421292 724423094 546224952 585810792 485732521 797776457 830184086 926061646 341263808 426914849 377249646 854291642 844033789 968953354 291826674 541360423 40403832 56854026 645355971 676904702 303581415 928897770 749624832 879597214 123737286 696517832 552127119 885794396 692101752 925050311 623751145 667717522 815399532 953066522 186669297 680708919 676430700 841883683 376053516 795513171 893266813 960085080 91691611 454314587 548121151 848740453 260130321 630087027 952488940 985553029 542962928 869749000 172576797 521125505 162295577 178342121 1841447 891051002 40242680 527715746 930338679 940247075 654317869 662771404 492013237 757621680 376172671 810089627 278776893 457197055 12394555 151100450 985967327 996056194 774441333 883679768 670273203 806459428 306168233 520491833 882697499 938668331 656272150 725992521 644291255 756301643 978578076 982030467 338372609 913216674 531095306 743700034 616452934 782999952 315846199 567386425 370585625 693676413 936753229 978493293 280694747 378503334 14569427 993088806 708652357 905601509 42866842 359168361 666294909 703982982 972203011 978906491 996123333 998302710 440677625 823298121 595635510 640747306 383802533 576221518 677867855 759840694 880272787 996190449 278287835 812213377 55043346 759837209 783447410 869407398 559407650 873815412 846438786 861139392 55344114 697576976 73071000 870194362 404152355 572028255 675971703 957600812 454466556 656263986 129703366 301951029 49673390 284709041 712090746 892674611 150128094 912272198 498999339 564942368 764431794 887323031 51149597 151833684 85552826 317890029 33332317 837788856 453623573 622126532 771249443 913333872 639512095 839724442 156966095 407782680 758944829 777502819 331701666 996827881 197871227 754615854 398640493 640783140 810073380 890481184 158617771 577521519 956406803 976663052 735274666 860605417 59561132 239696980 300450657 734969497 290336343 618469999 429620441 574731623 531455332 660096091 798288830 847953014 166628606 788891863 794219838 950968579 201888428 451630981 612670756 964853063 702120478 849152672 81635419 346710114 177229139 683881384 566590310 950862148 410429389 540700597 316679475 599649604 840974469 993060715 365583386 706140631 234113728 954088786 715009557 930911928 372184448 644640706 776206466 889394373 50414064 477235771 710033865 880228997 443525880 614721056 167175767 253632963 180593752 950683690 487037916 516023457 989632014 997598274 340505866 561119543 951180626 953394065 880172990 906720467 607553510 772513317 692576487 862274005 788083072 819388508 455072792 819192767 565212052 580590091 782995688 819897023 860697438 948280026 520911609 859589694 663317328 879895421 469867201 703038051 131143772 495809850 296424890 390567451 384374313 704700937 497857319 694985927 649981183 691700370 658920615 875632622 239153547 257849091 338259627 743867521 420852227 647839178 230193708 503758343 302003948 451501569 192567656 737825296 729970838 993948407 231171280 998849005 142221309 317422875 749127522 826565034 658500633 867184405 487036717 557374525 407210527 685719174 127080845 667488009 883579614 940652254 896528422 924085023 619655994 969967368 346514794 675305617 91728991 735803398 517432527 830867808 193891770 252341347 199126549 872543857 710034945 885010792 495231419 845439277 25419560 618832389 975693979 990589165 814266374 841929727 127245034 245578459 595072655 926848895 183841125 756718253 383709635 996000297 180601544 713083733 969067123 980287851 25458228 180115038 1734592 720477208 150088596 345481968 219957353 245818688 641458087 910623448 745366010 746996906 880267142 901299101 231580537 941103883 196806576 299877391 831109319 985138720 652946691 819215352 908603264 995279037 143591463 382962450 915801748 962698353 647949371 652450929 58098880 641115381 925988603 941817394 323531684 469671270 367824758 577764617 513431446 789881811 177451483 732302522 914728202 931775908 279788409 927616856 421562062 481647463 415350972 939966653 81440240 343852633 420100759 553312817 306529879 336928878 590642780 924864540 945934134 954322361 752102292 845552322 344351244 916333101 250219202 756959912 488459544 701946866 215924991 542023546 995661786 998914127 437386199 557310497 767915595 845057099 607069352 852859615 811020434 958342333 70445615 834945319 467198956 770685050 513891817 742777460 736022633 747132346 756418231 958547576 631480777 666059664 922109652 957652894 677048892 690309572 326829680 763227002 529996768 810654156 177622490 203672938 538709748 958401986 933826030 993825621 417694826 490838331 347299152 473712729 802028829 949446453 39358759 622388800 343283852 957953147 817933057 981502202 687709688 989162254 62782628 535070222 975696545 987696209 211558906 283132257 789355832 958316200 476560986 773903514 72757543 82353287 470056901 496549895 362641776 995475081 899359977 993549239 808559823 980093202 349841956 980610768 961133546 975098181 964616476 981277204 332229413 913064880 299566842 852871176 480206654 832356706 943140271 959870856 682767480 749268327 310413054 371767054 148498031 749849265 747647140 952952781 780857564 841389176 622455112 954551236 992861160 994297690 473420921 608314774 273343088 395833665 619199845 712397763 771921100 988621289 320810758 471526037 643980324 697863236 509664310 760440189 10164893 179288203 428571618 511819202 196808175 934809679 790576988 895485324 331770135 765712041 851996102 907813891 524061443 861195008 206416342 457766359 214747169 989837938 212394618 543478626 51649963 699413260 178222701 468633282 71633367 375385034 162734126 607637179 968126074 988131522 34214192 511124717 632632331 665586387 694163106 981349849 140166076 344803907 647429463 797384783 783159752 958498425 504164201 841400614 851374072 892680884 542503046 766545988 78967242 742897508 497366375 508725964 963519312 999516517 886395265 932796035 777724769 974315653 254505059 472819881 697829759 921790434 489072164 774921816 610142052 997451371 710469855 934101057 165582266 868232082 25968770 756460694 700185293 984163548 188326965 244662942 599488779 704376088 639275043 715861500 390527541 508475291 935474732 936490727 434817905 774809581 4906079 711085612 334679716 493403178 696773887 780516533 253154379 593422227 579196007 592492909 977779230 992524013 300997575 767123898 474356258 888187466 116071402 220584678 284721797 495863325 621054706 828151651 202601028 374908536 916533905 998310422 367759828 632655401 445194554 484286421 289323515 392235178 483827523 738859741 879612962 953567698 298976741 525236964 97625508 250298496 159816343 913259580 671622353 750821805 553156261 612170882 571890709 914321934 916685129 940714113 241999273 643396462 256755477 677963866 842285889 842415580 145447092 966028832 810152179 898391152 93451071 988921899 778498290 951204252 421974469 945443298 891538927 933784323 540783398 884614417 368394884 435934353 387036569 568348568 576610194 932224337 275022271 960316910 159146239 440496454 60071966 428210493 10579229 391228619 282770022 299837301 999762961 999880519 164365651 939827852 425793169 757688418 842489616 913906032 412663487 745403695 443243746 921550028 124036818 938492898 978593480 980771053 746431662 986115005 926346363 988816559 827185215 917732778 696190212 735092009 809561095 966828374 514728063 804013970 625473091 688211457 569153240 752334119 662599279 977880154 270999103 989218213 950245173 957269334 338546700 803682781 748551362 849636588 537779043 665598021 66393873 595383482 295714197 491453410 291797669 912311479 443674300 502311437 907282119 912350466 744509722 831529444 373689403 499418856 273327011 854344143 876305330 934999903 329511426 997272674 517260063 538716364 653823358 822696587 963023744 977206216 479598984 559937051 387977510 808891159 500099092 813060800 833966943 861722471 753907867 863439227 841459349 930263423 871953876 900586198 558541380 755037868 51654671 366555289 717561361 967789709 436014982 737692137 185393653 427034440 441887897 829008497 28745243 959160701 539837 239578907 63806882 674702068 881148773 997138117 25716093 496516075 226142707 966037406 145628960 572825587 946577739 971995392 440601631 518884570 53902144 717343910 639666991 746366143 460107495 887210446 472260793 938457065 9970826 525478270 765495912 985269466 70538465 247504990 988875038 998390544 904695622 932911463 574927370 779339577 183635081 788926220 208239301 457139082 5089736 687959224 182749470 698923296 2741419 479611291 334444832 769301854 641556079 733084584 877149263 882283881 858050856 890476509 899152773 988469034 159133542 908610961 967274988 972762463 832225904 916399482 990998709 998444546 997251301 999218324 927429247 981206221 486661424 639529000 523950941 535107244 680825325 899800164 657454516 741827092 127689130 145399748 394727329 801104907 466788270 826246474 268717837 286801587 410523208 813506981 810328015 901316114 474733438 909774095 872177239 914410259 148042543 429833907 515169722 548715659 588047387 700105480 194376681 260782424 648502351 686717550 120846973 803436299 856973705 878380755 576772946 616705774 125576027 216939712 535842639 857551967 615504102 776199200 63500704 980121024 985131486 990778263 520006859 945619220 556307148 647089664 568313861 596309399 557490976 591597576 335230473 712239643 102092579 999780356 355052112 515927327 677809747 718058148 846953277 973334186 150222859 321182063 263102916 937476893 758796320 968982386 728756523 938563601 378400276 701418356 959256857 967403854 938627417 969958086 921638435 988047128 545107366 843251434 203613901 632953646 926216016 980592297 489501568 889325623 246792944 438083653 156418831 643804782 647344452 671780825 586937902 839689625 532962795 967820225 971419163 984806544 806973624 905793875 229233786 631256602 672099309 934829963 668376531 785436104 9978561 229645514 875268249 966221073 308607450 785833544 166464029 171462825 381503623 694719689 605148834 885380497 601184492 864385579 744324121 851079522 428817530 930118032 996253181 999223833 994416347 996728539 350776689 739675877 666611853 747255871 889815202 995621411 829364107 867244054 22784532 303528044 467377807 670889482 172364363 691898468 158195780 179305189 824307032 986590614 620350442 814786580 248389506 313672322 137648518 690982655 956712080 997059694 838577999 962143847 487400687 587589810 909640315 912157312 885262801 999973412 886186464 890466596 67892232 163070034 478652187 557847851 453741752 485911732 95226433 882799352 720675075 996831186 650488014 935981138 28806711 253494967 838217526 945085585 423313435 900585358 109963372 261286360 882334085 995850912 313524943 455189228 822308615 879003328 973292528 996364248 529729286 768500966 799543936 994392194 231680615 897783712 182643730 292645741 557686214 883042215 276042688 333505902 585696347 672232347 496908625 559840045 324423013 980380633 419755283 643456382 421451219 845940607 259479076 691741522 3676255 929149812 312574460 433923262 249108108 466235173 518058953 560772963 699130159 766235939 805639251 958749775 571099126 733665880 272095267 448125813 595671889 723918880 683207803 887202265 936833402 981656653 246901254 841964257 640076153 818466003 462955932 609557753 89022584 453600164 642859599 963720667 953182929 977405825 397982725 754705465 922064770 928372537 746552147 982392120 172843975 883230925 935646995 971331617 789061014 800917378 442086670 767858312 36672361 891712428 692874198 851327291 759920207 869362669 216783315 326630158 784384632 908553019 205077824 595728287 375321690 900047376 53343444 920628691 500599603 649313507 725522178 896273185 3732435 646374445 181638213 553627856 347312965 818012326 439650388 531429718 674259401 690231697 544187252 647033211 670648379 891918494 578221056 602119713 423810 803831690 232224720 713961397 659684469 963865533 348170672 593758871 393587183 461930641 891506869 899875920 633867308 794520196 744458487 887196830 483106058 894913692 107554713 316816781 62255816 720812252 704611822 771688059 230236553 497334551 795051615 869375324 444342840 674669087 775098372 795662498 995887319 997857976 328826476 879720350 524808599 839450019 184648379 275675976 181022789 252259522 103144247 444381241 832352412 833009230 262960325 449460095 362553575 847529975 291839664 492618050 586302790 846053998 482011728 715285657 363764003 365972808 130807501 621321274 846592260 891082936 431537281 885933925 4541179 874354269 722110000 767436924 180662038 430722976 859214761 916283111 144093097 540773640 495852524 652837240 959223468 970664349 473847667 757079395 436320536 734925963 528392353 756506146 660848528 696093066 390606971 466042819 127859402 354052302 16982699 843656075 143485429 657836229 100140231 987725362 162327063 252382509 231221973 397912489 902185127 935458035 389962529 985336786 311380422 892030317 84710116 466020697 652297721 991887738 593408453 860258539 928631986 949501747 485181260 967149376 341157098 841427787 119502910 244498184 814835826 867113394 164769277 860693922 68870220 81282641 779395256 989772375 977552588 977673772 559400273 955949325 674688324 869634905 987310350 990785333 610883729 708737027 885487432 934913847 699403603 919693863 416950357 561898148 411952763 538823092 125907986 764018850 771910986 861419653 244954274 351057537 61868081 334738118 870447473 922017715 962592915 999477498 852245351 934917526 332805772 921181891 5891439 553797393 848559843 903767733 653856618 860914726 621256589 950929663 197810666 929801660 506067423 674102790 977813591 987706561 63255236 394035513 84551918 186143419 186716867 908807819 148036924 596869699 414520201 739381737 910361135 966965042 81653090 746517092 833173776 895536805 632740870 838381177 106676377 423489300 153898988 674293786 674531872 862700360 240407460 966500942 776160696 914297089 68095231 396631619 879832822 880056795 377269998 471276677 35035285 578486051 771106020 908090404 43524439 293869301 959489229 970557187 777198082 862502314 374595444 774493078 537587921 823315691 236813330 520056664 87168868 681662231 323407509 866227768 187439316 276244542 100705145 598542270 989463642 994939723 891740220 955843971 457019448 548547265 828788377 946752930 172002025 365225559 331383483 975251037 83770817 785017122 723740233 877024535 420063979 729635124 956846274 976937575 365184978 655551777 575739168 958088070 974366011 978538299 463476499 964219819 827042303 887928461 758936953 767077654 521008497 973918522 66094990 529062471 470114890 613395154 906371847 960157102 859761596 970499598 159307234 817448763 292939895 536605274 480868837 812386145 66493288 967846880 595405468 845613592 689850527 773056299 80021278 780307686 737971739 784501580 712978458 968536089 539849556 559965522 240870407 791144528 362651900 619666410 321170779 387573640 178979362 785808183 358353341 402916553 69128366 702241305 263551932 457602232 166843847 187556550 428951310 854888111 323529978 409838760 763998653 796824359 396358055 441412325 983332567 989719485 600455430 964689153 449758752 908949583 620022148 821486714 277121629 371787001 67308212 608094751 561705529 601072458 219619063 646603045 785351374 801228038 74009583 199270349 136615342 416599815 855538271 919488053 822095511 891620809 872041756 967910255 627032578 658151956 203646942 944342666 320355890 503553514 276587282 370063242 711957298 919614693 350448718 935389290 93021409 121737448 814579087 814723870 613890809 818502364 709112477 774175659 342269020 739586844 982305712 983560482 460911249 958104125 454133786 815617230 683864267 780488021 411452718 543706529 472744809 828378808 143197967 916564862 665718050 778993835 894088355 906948706 925880270 931266138 977317417 996384355 798310071 811621517 799161316 938764395 440733299 712102675 545596270 636924531 948360249 992834854 80715533 698809252 937950314 963163657 247074765 263263124 133147703 296371695 301143218 695718999 651610540 749821185 616805788 745741256 304857206 755661628 242494763 480957136 328641729 905538836 766175239 931201354 409078903 506931107 430463245 478584453 966832780 987013229 674791071 853584415 374983861 798248092 717234375 718868497 981656177 986637438 567368548 774907219 449038934 640249814 960111649 985215642 173571942 182783030 14617483 766962792 609854817 625697264 784786853 855553313 199653489 555793510 494672430 723452622 120405724 710872247 428716123 723818163 357747761 905875993 868853441 899108722 983584438 987754865 747237477 818498325 455810284 590075520 294094967 967345102 242643036 876910525 28933755 437905340 915415359 956059018 968075263 979068485 963784280 981173727 977919634 989329021 158516503 629008584 749247626 939739248 529626564 593744182 390234459 988598551 188645268 951548375 94624711 991990393 999601317 999625059 51975045 786364005 218631995 742829027 436097475 650409232 585031521 713578460 250104440 758750933 935087880 978984826 745169696 932998121 659472316 838934777 531871272 626153748 26390780 197872971 509494356 865617634 111360158 306307046 890184794 985788965 390405856 865337439 431802019 573661126 193596646 472565670 166351132 946123637 870629392 927261846 475015824 834071522 824318808 852397573 890182313 922142138 279161395 655440151 629955301 839876200 805597053 832485781 118797115 158774274 148664839 815161905 182621209 292177421 660867226 724110176 745848619 978508280 893699800 993448730 804666109 912025801 640832610 711234755 395699460 494627290 375260016 983124614 251629262 916759649 722600801 850044010 817993246 837466520 770775420 848416040 665901178 790365444 862390644 943023165 289577500 536019397 864958320 887944040 935697095 961941640 939073472 980460252 277756806 436023742 898451145 941193500 468904706 676803610 76900752 439168287 609188364 778303227 77235778 854056358 342273271 492445453 392902780 589586846 173961319 321473012 879668851 901222195 80532456 146947688 208077366 292316066 44415383 243666150 848777627 932145782 391092814 840118766 530739618 991964143 244801656 898402635 910198838 996249247 599318953 868813915 240725954 579619405 793311542 913399061 612440457 962935954 457232393 706725306 535023228 975531368 423192880 575295130 981616369 983696898 715663782 756906307 81664544 712300740 479899351 523076722 576747924 782177783 636034657 929209252 332288238 900825901 157046674 635688233 608281901 765542709 973024324 986658986 439534563 501694704 281694502 860293642 373061628 611454111 535147690 907957721 80329785 966089667 460119719 624660439 629535334 776130663 616699785 774002613 769926148 907346860 293778645 720248631 867375841 961049243 445965707 847153241 12449026 452844037 74576446 131288959 81818111 142977831 535902902 703498352 502210751 962984725 728412089 844382955 9360870 642333214 216984319 653359314 996716859 997133886 686294395 824391655 105973289 275685469 442949460 531978839 691245493 905879160 709270294 964066083 385894795 877679020 304771026 498386434 231462342 415333365 497929748 612142991 242621819 648907125 1191126 135989666 695282804 821173587 18941012 985642768 33513816 98087390 603150779 675442427 395865020 604284251 436007984 948216069 891806182 975531898 463414107 975328835 52457147 494055139 130974516 550931465 811063733 940767722 671007832 971904766 619896072 890407483 754955623 934419011 636379341 703357844 299027444 535284975 61145173 498208941 311803735 719830170 894085317 905945621 37087476 293035314 524072556 543070833 922926382 968876996 312739896 713103823 865001880 996702975 644457922 841359774 523843856 629082606 724620869 784717283 432251522 631212548 652778222 755518536 585851238 847620451 130561371 256836948 72887255 760051717 864603592 967167817 558670764 710259668 130751289 669585323 841415792 903043597 725916504 992334721 11102761 202965215 841017634 856446749 767556906 846226380 2003239 672274283 843868947 887045331 199274784 647027184 680834363 786174015 462065611 748091591 437122601 925415892 435890625 844410075 571448389 652768906 362137681 619298309 18392278 130804627 34536682 505630455 594302940 988239536 740722325 925593299 604843095 626009688 192194298 782316033 484778806 540155552 820448711 978915601 996348706 998524778 516223020 524294636 985385530 997209357 392405755 621936168 347080285 384378251 990794862 993646692 728563958 959505871 644767861 971163143 133156887 949990030 942143877 991091158 292755517 924494118 546281426 913119488 635026307 701249589 649747515 993087188 942928060 993924779 915224049 946434675 239786440 823975651 629057913 958069418 70068594 453872114 922248214 988708229 359298982 841957842 587846047 830064136 186392630 806145534 984959082 995339404 596375601 842378509 541630191 604043250 302865948 763483077 755214162 794055191 537572745 807707998 143155467 979218251 209685435 779026839 380077650 540765702 607503521 826922267 632715492 926803065 760613147 873694412 288073160 690763541 305286711 450457936 204328259 227910632 201055888 809249757 537295955 940923647 533362678 843033844 54374256 793509146 97346407 260539773 198436171 579366183 608180616 703508607 750364089 852290417 509738435 795267645 846406985 929668690 202092391 405510108 577096450 722380329 53959664 456485550 340160560 693709824 822076032 957444441 211932 629927398 783371650 812165572 577421095 959117808 42223640 557877247 260655534 429193592 703617371 926689099 529403362 722535356 872639200 994739667 283524697 823907486 318938390 879421165 55886898 930566465 949017845 995080231 896696418 958479583 950243733 992128846 535851663 812722247 715125952 921077710 91285560 653843357 688320500 702688151 213965028 295774316 424379633 822895538 72401906 206013821 188107723 248956240 54626737 563958758 484415959 894923670 990808246 995153444 206704868 740303073 771511967 864503645 494730300 900054096 41470806 882942373 746940865 954314834 539170692 991902524 610132312 677685103 272486401 516765372 947635977 949147134 998517046 998696585 800744521 945306324 442518392 915526168 698592673 976852417 466790848 668822411 6937524 210472912 370699596 710763708 482496092 861835548 931494733 959819502 594710672 800820670 362861937 470552729 956177878 982816850 236746301 732349647 348583533 647031970 382882076 692139485 235830640 479305822 321110045 334643244 800293494 971985980 88799170 794829249 781885692 829354478 78067772 244735322 377796394 915763046 451648925 962027540 898456614 992987397 317227075 622776513 170241083 632324218 244442724 865170885 229283929 613224910 602038456 657739506 229421513 736844000 925583615 983251278 522168772 792630596 436328730 826152937 370709101 561472124 356860629 758890822 624510534 670013351 874385574 878424738 14154171 400795402 562115910 853180172 777190548 867849482 617254388 617488988 839226958 929525574 366702067 687828082 894366375 922260308 595914764 700083934 805866996 830625743 775168503 967902227 522054920 882111538 621228364 820152590 842747548 998408273 213180607 252731265 481728149 576700082 119709574 288525262 938606858 996549815 677192715 989202951 259389620 761721167 839179374 966339103 328663796 966761261 238801765 508834182 786898422 885533703 26874188 361224072 536460713 569814682 822504017 959127859 476847383 994011425 423645052 887582679 495646905 940700845 917953653 991855940 310523994 685533161 700494095 859278329 683515277 944388197 820494818 926983519 386659016 753657062 848777059 947003182 314930163 836845836 379351094 567163437 636863614 846145167 459314809 770986687 350065857 468286247 519426117 882372836 795225213 903759354 493136493 946620857 33266741 77299997 773137777 894940281 785340738 932384156 707875575 775872736 280310763 585476827 740100615 929677112 624470495 942616771 194605063 960712921 345760727 940137917 401852792 521543777 103665287 462513398 328373775 568541981 817940720 927533964 901579188 932601513 587747852 707353010 544659699 943674824 843168400 979103028 643067510 811529158 319801263 660639503 767034207 870327134 238097583 755527264 730638373 856129867 77210424 762218269 148018490 283043608 161462910 220578925 927267351 947573995 272003554 484685150 872619309 937786642 579083470 929232782 269205415 916251525 558779921 997235774 434470599 992116175 691408259 946482021 801012917 815566348 683157624 778401774 950987011 996318067 908185973 951228300 722041547 803529852 812466403 970943047 989586003 992775209 169450069 919699196 452517480 652212511 567761857 819516373 981771501 994194161 369364231 468796559 925713085 926286899 968869443 989239411 48368598 716921837 938180231 986097902 743684341 991787340 974826584 985983047 189432741 835596513 286661626 867068902 988317587 997291023 146625357 500900503 23995221 896766092 356450279 779339361 447256889 947010593 472765977 878987183 990705113 994762810 371364646 933438357 855518947 911220075 154120250 373720247 863733821 984313034 385094974 910350525 29969652 323419958 182927253 649747105 818576775 862699046 234864503 292422164 222763576 370905257 521015684 557288810 981733572 999231703 538867558 982278348 599036055 989039702 301605157 561585179 520687779 639661912 970222572 996930929 321018812 648654162 794179742 795420866 755493912 919592694 680061859 835350179 220790977 608840721 461942221 779002514 126922655 327444964 532707536 622759857 687940214 731871312 693019569 708385857 366367408 597017448 727603114 904059528 345431925 439733902 963093117 967759748 627837637 843512730 217815450 586847870 20271638 708761877 162700652 568263563 454318246 644024280 142296588 946126038 419006665 631825971 173933263 471142871 987089529 992302145 142828669 428771465 518518011 698782104 422016065 865876198 171807714 980403615 672173862 953938782 992447444 993498014 69177882 607759502 907071916 952552309 327740481 499141999 189739775 815033548 466475385 687283707 185488114 484686052 332621100 671539482 759322454 801287411 158434593 319461679 265961272 726480505 188711470 632973538 505010759 634384924 443977624 748578656 310569123 391323084 131584350 551563808 687244561 867488340 616242408 692094950 810901192 882085441 474874580 747471305 286751087 838323381 672923606 859007181 902790047 973177748 868127773 997438054 750722497 907210632 332953870 501291429 213007404 269884097 794757826 865766601 459520877 493313708 112797746 861199095 711734200 761519069 255076769 570102370 955956333 987953363 309271012 880523522 190811591 553282178 817131670 936421767 46878794 886545106 120898850 253562233 931450791 971650845 126700088 236121881 742370969 840920695 120842181 941635443 434484158 816779156 204785249 222461152 60236009 691043842 773516288 774511001 207528804 820861630 428284785 699585705 139350004 749896816 721955506 780482961 949686348 987054633 309966959 937111398 656133381 747253114 868612089 875708348 887144080 997475416 659095407 667897182 168292101 578498258 76801452 275936958 701781560 868447595 933944891 947466131 335708204 584143197 843024891 991049625 479820680 757245177 252621275 742841761 868491270 901440236 130240655 517355107 625621042 672131405 361695971 666739901 301357747 981735734 665670253 956745575 720642735 725585792 213226008 660533411 68951235 997683988 541532935 988446140 122565053 604156624 432407826 975081608 268482768 425987356 988635930 990671503 511860260 872278370 156613838 720178343 407768578 460083526 45782719 796448878 26835915 854043193 946715928 987548037 25059684 564831588 694323269 866370790 79405478 963113558 526346914 936588637 684153451 992305420 315926917 541156537 743685199 888785363 920908338 983056873 468225921 524119100 147520734 169731161 742051137 941054206 277324233 538250387 579297740 934172666 162832205 278214800 930491219 947368095 255654999 777298735 471880409 846733942 897207878 906740714 478330738 540273279 69283520 327998865 61833634 826207060 753031869 763529673 610063776 801810327 729506901 773793519 522425350 843095082 735493713 984178855 235257544 344223560 786835855 931184273 154167553 534711069 20857935 550002598 919950508 939916500 634695375 978256744 939395136 966251219 775185932 832696408 307787161 991726836 217952700 820330635 881293107 910582156 445126032 977856608 980340104 998002999 402200783 623480824 50582802 628900265 177237891 804507696 679424923 938702497 476246992 649404363 655611608 970285494 461802071 588864447 707451675 924883216 410921001 581957387 553411924 654283842 446383206 793887584 416408894 785385157 785186761 896303673 988768302 994449397 470496675 530869728 719738629 906270801 203934710 483312822 435273259 998243062 974175740 979041955 796448405 835947903 369269404 599814706 585489836 764609951 875966244 975379841 54848673 309772093 637824106 720961942 660223442 702072545 124706322 244976918 338985814 406899898 51454074 568700986 220849558 758125303 777733021 961333285 204913632 299556914 189183631 354191694 75011210 736001206 429413054 872004729 135951396 859474167 995638196 999251944 383647651 652433810 348042857 824787103 704800852 807008126 229655711 584657790 545081385 877549261 991453377 995548847 617484570 955940657 821620663 854268177 768337309 829963015 776887659 987468679 507551414 510091396 588902142 735884404 568955958 852897046 859369318 898431424 130910843 516716452 970638224 976966871 44588847 320928120 842003223 920882534 403015873 661994211 186517901 470869766 459418196 698427412 832802460 846263490 761449189 884035599 555481456 607064201 304682358 409715095 185534371 729026744 557335077 884971836 921504568 962919960 38163147 499940376 96841942 951749805 358607545 690494494 961722807 988408130 982666411 998228643 304483076 447542048 59726013 833032606 441737372 549359009 324111239 736579851 174836602 812580529 897489247 991675764 890732562 990550936 433359926 576042411 63682942 769976211 283885036 966980388 243813306 581783617 357479277 991628562 167693051 288901019 182073582 848968120 109846935 820859407 176021208 649476012 364164482 436143133 561826895 920638363 407037582 768172914 630384267 820764998 636839479 668962964 439700319 444356140 956186581 970133705 940901764 969998136 210820919 540305092 61498318 847212297 411265870 669563209 819963212 882959030 202185064 724929652 713339873 954539998 339324503 535790366 217528889 900980766 8683663 746102022 679189818 865293962 323650099 668854398 545223963 979430737 846469653 884469276 176641548 498090159 613403261 744115790 980388690 993585314 834391741 964193957 337834624 401897403 304803565 535401634 344444632 740535024 410024271 706897695 664347020 892148840 6453120 430829926 921966177 973176046 214199090 618487208 546556088 720060536 62623643 691728778 868781187 988378008 362967011 966813975 157654126 256224564 264026251 938140795 67542543 801060453 868292814 907357760 7184182 352908486 376718003 684477551 989634011 990704961 521536051 803178124 320202878 678372112 326786604 750495318 944405493 982750975 861043527 982647733 397780842 694528272 533249394 787892735 649982339 930005896 345540182 476651454 677677506 704583589 652206390 904464181 598511808 810276043 315174443 324467664 318311943 474434169 816546803 981973025 389027861 916724932 993493235 997099408 135751154 877750368 360864270 613214340 34670623 74054498 33453262 229254131 289700544 472596087 441621716 845812844 270083358 765370255 574043745 622626494 734594287 843666032 479091923 518019325 803930131 915973825 861182887 894712120 50349996 200051232 217895011 737228375 67865037 237013454 662634433 816100376 419984103 627621346 281728681 879750832 454076268 665530616 565695690 960736677 906393403 939215535 105117106 899682222 430692770 877897003 995802506 998155883 455179327 818871284 913793644 925700933 53727744 520693822 119799056 326765747 398486536 656719027 369222037 602330841 434937640 855019265 325161074 358367101 529625284 697785511 681758159 998212466 626808875 631666734 600507801 639657743 610699409 752321044 791499728 816500671 996954803 999692113 867202549 969191351 760998414 830174383 51317449 139449545 362489653 614807104 235557727 822540613 458224308 861008132 345752029 893879073 848141235 874940764 376042691 926604815 59653866 426197907 470032244 785613054 399299160 736791894 79396231 985501165 935115432 943216376 778123109 948441619 175045709 209333312 514270487 626724987 977757604 982323424 243446102 287779128 728346121 900946620 545576092 604920218 930895997 973381893 370104555 521158893 880419452 965602562 476692222 970406584 321232054 828321258 37845472 844441495 880057487 930661404 289263124 863730715 287559325 986003822 966387813 967174505 862972371 896517205 197549493 243183115 864487739 973856341 217627945 387796196 469345179 965729630 522575902 610040991 736135020 948074090 160631631 545122225 859365176 981380435 715396124 787511293 440472938 960242343 210127533 644455550 934288416 943954070 194966022 337464551 5616190 784751323 667927853 792353051 477311706 866696436 997529756 999326987 119848049 297766328 868547112 991932615 438577176 543525125 865674887 918397476 70059607 199344836 575050621 733115722 783866992 929094737 671211673 738762797 225496758 912060831 413504647 520631733 907407558 961275189 629958122 916245332 57773347 442828308 926065538 980889746 49615632 811202217 486099647 929845948 617464068 758325609 881326694 955917534 288697931 500705842 75374033 148180456 525155855 678891976 217874693 999713723 610285337 971387472 285527250 531765625 3163487 419472355 310490616 596572791 528718084 655131483 316413345 907963896 360508676 562443807 201365883 865063511 59784380 177825910 614724709 824511649 617378098 889457203 739259744 935837285 692660942 942803079 672503150 895634967 52903340 572420118 98235999 748026746 193581179 664068957 417930951 988168739 184787282 441381395 253076339 728574621 563565868 979352383 208244435 867573133 246341807 279441920 100219898 279099459 77651544 613698721 930057780 931293347 518588751 986353235 433599096 917700162 184874571 851043732 807042836 980102887 869872746 886318894 840911413 875644630 244446731 962742385 669676426 726804632 615678124 839581986 18703047 575885528 614178526 626663272 473820920 783644115 962622042 980178189 614716678 845004816 534335932 735492979 303026959 332577635 735607369 891570835 114396735 685922072 881480485 952630035 419399217 972220702 354713146 934478244 875471211 915370459 21868239 418784574 383740183 676499483 390216305 420254185 97411758 317176954 432506845 539227801 831280530 897126702 792856652 915510298 608949914 718952674 828385318 956926106 984455114 995598652 826741494 974182035 673004219 848838581 924005866 958062307 576384203 826570486 652545623 743724605 97875890 429766219 904005206 913039023 930301432 938962940 202132335 467434776 736739481 767462947 296133694 454720190 999444636 999831536 578375506 903741767 215722720 292986436 581681882 670841626 230259063 660589408 557294821 836419640 846554889 866508579 639841309 656241649 169745575 647728212 621871712 863956305 129237256 555543019 351824712 684602004 397868537 751072966 740011496 740184579 373354392 554617610 399686529 529848832 403371301 578804351 780212875 961034360 577652295 845892790 228110347 857524827 440597423 905568183 943444152 981973258 955372068 956168719 671469071 912731565 790789762 857615954 941198706 998391852 515299777 825829951 838706101 881425539 759226017 922794398 767516580 894202613 813486071 958302197 284286940 370417867 956851140 956898482 911934802 934308548 43873699 70937855 478133975 798409532 788126826 884627083 406103807 960447909 83002347 693406044 453420641 566035009 851920395 890042572 426181791 648464128 549959109 695113649 215947395 238624031 510671710 807906998 74793971 433647655 323773132 814016746 842496787 873747384 296699998 527724902 808195707 811922219 348815785 825748454 826097944 932198052 695065891 776064815 104207154 105268715 167517351 946451370 356675502 433186529 732330758 737042589 734820703 972721406 536149976 635135912 1379500 664514036 981092212 988066323 752456968 977750509 209553148 545320700 237571187 679708528 873321651 937709729 294197426 874403082 221250609 745184982 305185805 412750580 852475428 955064321 329058201 730899582 311202118 711110756 804722881 816978619 650231111 789640255 678858597 976308847 770749890 813536803 616721509 858226644 74089276 638690493 7186873 293356551 711273421 983742663 670123410 990233521 739471794 869369807 911779171 966731637 29889621 884799052 150447304 309242726 825888295 869375095 200336865 601774339 837859602 858020321 907320746 950064820 391588019 990919013 824888749 979202706 443480520 531120988 135498398 190934037 799413719 856344039 776578219 942535933 12030032 604099803 768567736 880422122 978724669 986316322 334676933 392222829 194732930 254738392 532752348 552871626 109332266 939577977 491032691 935052751 677781341 976722589 441309337 702585527 290777836 776080169 917563778 994749242 507710048 673569331 352675865 964631137 502638949 791755091 159872425 307079131 323033904 396432057 887188028 973747972 648618374 678371452 970093718 975124660 736913213 977265589 637418547 943453298 827319624 927549300 737929059 945289496 168310837 285807002 889340380 951188401 837436296 842378418 426761360 774356663 811784577 944228509 408858523 772126404 766274308 857534857 765139925 786240267 612490595 839722089 445284947 687219555 510518107 905992943 932547105 964918261 916697563 942290409 75599850 387086767 760555766 926536385 82867697 464445487 684894977 939353113 25831107 700458594 218720312 952764769 37151443 358258191 696285446 935102121 506354648 836893450 240437221 868024983 629833854 706429170 273416605 639562046 819848030 879911672 736284807 806578577 411374566 955724178 552847796 650354667 957571222 981545459 20818912 930872499 491412289 593385611 763034339 797641943 51356126 321154022 804411852 897591700 967620970 999447650 672720907 973932383 755350104 999266297 858579698 938353528 472376561 888877808 903055938 980746304 785390705 834353868 579492407 622662336 227670548 284913510 756242985 991289512 706965224 836496665 147168806 944213436 27303088 177411955 2988172 367597476 575630015 790093044 890718065 930746736 213619825 779852056 15015685 410150556 184451895 345692865 856747063 913835035 96468066 762091543 175338760 525583777 567889654 998104642 655828566 877337784 740087515 834184743 162607820 772512220 730048853 926461168 107061099 205867082 77529737 937225587 438666347 583315451 316824644 817329188 921787748 968034534 240134467 604156947 744473138 997927781 21357234 199216046 81241128 426134449 595881399 856919667 105019127 977710514 85255878 774099764 203713126 856518991 215121970 380130464 89429689 825271609 833111465 926272598 669058441 757050894 569398441 956980243 787712719 850033986 370531430 385389006 721360491 868217863 718558304 775553188 745620646 764849471 853772849 894212370 62500568 751611007 993743828 996359738 211491601 229414516 53223538 543384337 779216122 886809789 753709352 873646206 670325076 825057775 831126752 892676647 37795341 74665839 181033965 785211015 395243280 702618764 72198051 146840245 370286522 738281796 158055688 976580992 407884679 568725301 631380611 896397344 5760450 909102658 405916001 788936867 816820001 961653110 538910848 923362679 219575150 901548256 511951154 944266779 844573464 941052577 713937478 742022740 327288121 840573462 359244336 577313758 65404058 902019830 626681388 652340461 740221651 951598397 238296881 342386112 612720005 874332815 842375057 965122794 780168757 995993462 79930391 830857174 781641220 961557591 761925042 902698191 550476931 905172204 79332549 861520289 198212844 983617784 941690031 950424028 741592116 935985470 163625094 887478028 670912575 953987122 830143436 906737411 556010802 843247143 219076432 741011946 985429692 997162312 689346648 744874244 257275899 756961498 831928228 937595398 747415782 844853399 306694266 885451269 967599221 985381608 380829894 511881040 263542741 532560284 437513539 543649023 721596600 851373337 413827985 473439956 914847974 944494176 839649646 892547452 407671387 832898641 993063742 997501814 22171655 594499288 466179703 989047694 437202287 887808022 196566816 781155229 483351695 805957803 260769355 634479035 949189691 999280456 894122465 959320149 559672637 812898514 503686526 767275081 693012767 737361408 362009516 645938958 154637906 700399843 72427778 670458842 344365433 923143490 692490428 964329782 602752265 967031922 254832229 599332501 994149566 997392416 65244374 260880614 251099697 703605094 582935795 957758906 654271586 720723946 582289633 783223574 153783653 531585696 70446513 85812388 466004686 606665564 649630720 958644929 708985063 896779413 954460715 989561792 939469308 997030616 824910919 847995888 685643342 799254952 693988160 785282527 459581268 512300869 466690874 574758406 207754131 466882549 508819354 517163901 649557999 901922084 435412064 689247673 58615775 206420168 115191421 234608378 493151263 751967391 80708459 555870645 491276345 525651800 612044798 902764377 366320661 941566789 926189735 947344502 7374495 872303463 692023035 693122354 174580333 400766835 748450995 834719567 125876998 183832066 486641827 672979675 278860471 644938816 277072192 703889956 411248391 998705320 845906643 909213785 224052545 877690185 449077569 910358722 917374305 995498995 458646115 884796486 706865537 840886646 36091094 116333463 906221126 910475369 742366007 754983604 364688999 462497734 898963930 915026623 309409801 599103829 384002547 548376341 362115278 587241018 643295439 940476794 277784228 601401276 524410837 573980772 624398295 667764674 326650409 335584099 707531167 925113714 491044731 858830717 143320739 539001665 998478545 998713180 55526693 75676539 578809890 698091046 90386521 358729667 368399248 630963997 966182923 987995098 690516018 778000476 628193466 987509589 992993202 993756628 990223236 994759544 293472865 343256351 593347895 631353656 856581826 960391764 685630479 788764223 239073163 753953942 245699821 348989935 320263145 496577968 780114621 948658118 984108777 987617551 968715440 976528783 442936716 693524286 964171159 986335101 550353452 652970689 490243566 737661616 52498297 609329295 610780046 964655997 303288823 623694521 555129791 897198384 39457115 913635517 174353457 305643128 358063785 970102241 798833501 822485664 112240650 997025012 418014227 766614062 869536830 957903245 651080683 704872334 203177918 572902651 484194095 556314786 138540827 368769482 819333875 896080862 774796145 952078811 932434682 952467478 78349887 420914494 507562066 864931985 587448086 979425629 309479497 814222884 29095467 509262698 90596923 140681179 21964224 836438125 310111124 425778907 152760223 278950659 664064170 806272810 302340821 373310368 292132776 765330131 212070212 293801389 82895761 507144644 385568460 622938853 382885432 630330950 245564149 883710190 216786809 528247190 105040671 657752383 289475120 641523336 143828158 846357661 741330050 748194717 14725194 230151295 446712295 886067313 357649168 675829623 568644224 632772825 987752230 991991512 101462172 868279295 333416975 361530185 947512283 995971061 633271612 981162909 767914485 807011169 990079708 996758143 285948285 728048123 651457422 874578552 716514385 905109876 9258097 377503066 465547954 982047149 293372834 507197792 462226609 997514572 809721641 919469452 732993450 883515779 135210203 751740659 189287193 366760360 65602439 690443312 844073017 916355061 856904805 900856875 85522688 90183580 712383341 750613423 566469380 714629294 224358241 456032579 985332601 990943840 689346868 797865273 478881226 500767799 603393183 876341407 697268610 845727091 92780238 112215205 337214554 942454706 700010704 716315567 329625087 939119206 873086358 935813455 808530817 916014498 721571789 916986125 943866470 967568882 924769501 950522095 683696994 934218267 840703682 865273633 661612357 989922749 746079577 802615665 735257353 920189905 568008689 794919057 25530429 150842732 213216064 470526914 653368075 835261164 158160189 450464320 737509293 739073628 968659581 998483240 94563341 752632243 335020101 630061867 896941022 976585637 846102012 870571872 851124939 871764673 454818945 480874445 302742469 570402457 122839407 412574420 661039778 886215567 405178527 757238315 707317933 756460728 845678958 985494156 859360829 960561736 385821364 456458814 268253752 834193947 624229853 755514937 161636930 607988220 709510049 779540250 949798085 982088951 832304661 970355345 515960865 687991044 890023265 929778557 298610275 459017577 169053639 962130109 520001338 848592055 980865107 996754526 298978383 773383328 527305520 578547862 371494226 568633257 480027176 961952482 718435454 959945471 858949840 927755648 768690474 982864827 911902597 963316724 724644501 969676949 237461546 458985328 413736172 909135721 346644822 609498765 892699993 996510575 878546485 979687359 283561085 409466440 300389593 618002586 126943513 996608859 561962078 904599124 673133403 811542765 829548231 984790516 929090467 991496967 179779239 943945143 609043201 628308011 21852005 594844819 347710684 577551283 483249004 494832314 774870083 880892706 665283555 847080751 715291808 841859082 692489754 899451475 558745719 661886666 442182086 573920258 254378726 409779244 712859106 990128174 620800047 841256315 662359460 874305358 230678874 423254604 336371075 879631386 473838772 956593479 48060033 531822563 553456598 849014739 848653680 899548927 52528304 829793285 223353547 797593964 611014419 814039989 72919541 369037189 452203018 636329021 212355479 253874492 332863361 748555011 47348894 214622906 46972545 292060224 391945446 845388584 652187330 843510564 952465577 984370848 39390466 98204308 920735772 930006999 596065145 653989734 855167404 991430444 541969300 777704572 853797846 935969243 729635138 980597848 417841546 466482544 990252628 993712776 730113169 836313295 290484822 623593553 258156121 628556962 890154785 986414488 601794251 932125265 401827271 999151527 751493473 844819287 750526767 822610192 764099139 915101700 344166513 369911334 989181181 990374279 119568786 737589714 310999525 377078635 668922490 846450648 818340063 874285777 286321511 550729190 202864507 894290440 388607530 606097496 874861235 937041002 844925513 969007630 275581003 948650445 233187896 712181674 437892207 509227912 795871305 798134669 324572291 382513272 305060556 491376677 525062494 566663721 864510203 996942051 779139866 891982276 762352206 984182162 900471774 978423981 413771648 585800737 840667636 937525102 133765962 625555181 117474961 463449120 543646218 558711385 918574497 933379957 818742170 873562816 164007548 205989117 379722216 617644046 797059779 935784945 274859357 760902969 821670369 920524315 530736071 909571815 83176571 886504107 388196734 520782570 427754841 913010988 392234128 951937620 108807291 177567322 916704337 978182468 124476536 252552052 206039980 349513978 969376157 975919319 175491176 322665098 171196129 945241674 505381317 625135595 670311615 978367851 841167683 856171416 517778726 896634967 450029068 671453732 227712932 828244089 203874054 318961644 870969487 886910924 792506571 899872427 5452718 495116850 694531499 736924002 129608890 927254892 4444127 830830004 88011793 118017776 370735193 948381445 533482083 763562216 638969648 767171729 269639384 541155676 689129160 718829164 426677082 799577534 144890097 639636493 581612157 980700553 690872885 986975778 334102742 447792276 766098731 913260444 538669655 978790075 602073257 786528829 632856267 905165056 800385605 967622165 203552758 518880292 801176293 914800035 57488327 794992307 846612503 989485503 422839466 948803528 178140198 742943170 162408521 522233161 844527284 924023972 670365105 935299278 763495072 919633528 70986671 800035726 58805049 647743623 850434336 914613774 246193840 670862681 359807513 577875101 404484397 828444162 950951016 984474109 571769047 754012768 64696620 929276657 237076130 448020728 589298842 602812348 465630459 866535638 419195574 667383698 531388887 598297411 40869015 935595929 886462700 937838066 634944354 736165640 413956115 862305310 120520728 601242359 785401206 917641013 64124450 950913121 249935014 559159313 623492877 966894798 518724668 942237545 33372101 610698666 219462813 886529191 569463948 719691041 622743053 912864407 756790323 834607205 898085059 916233259 198034489 705833299 299695925 588551429 915385906 944973573 749902917 830175936 502038780 655204334 289814776 927406247 377898185 509121983 768134789 949471752 920021548 986015655 565508522 589486108 142784950 965118696 96131753 981605580 773551732 895755927 445165726 672109484 685847505 883338916 108672599 404049678 471808314 938561883 732375281 806344955 68083719 856999323 629356667 714639847 968718599 974624270 56972969 284543091 22193267 724218540 936274845 980521914 78265903 612340248 421990442 570535975 689402226 862059451 640492561 826958756 342985473 895217052 304173933 974058583 507108845 525341047 566218845 631551718 481306547 826960131 459121575 818776469 319352940 654104384 208949089 970002611 633089417 897616665 401542246 643092308 530143924 614044627 573420648 973363921 569152095 690190282 873689757 923405634 739407402 827616370 879648435 956452740 390869117 726828467 2895871 529677287 498509392 556979412 223260928 982068953 730240545 818991657 168451496 895708220 605010906 763072012 329055726 376967582 452212208 548978002 126985645 142243983 829175632 858521315 455794893 992490317 679328576 917827084 310684783 787773319 643858630 806079895 490533428 703366395 517351366 651602982 106273069 684349995 810622531 976455794 647465203 930152075 652524493 884359026 55744908 440794924 676451428 837471776 780128796 928659087 737803302 768800454 245244216 526924321 405177004 744620642 466665268 613896622 704388186 914101647 339501506 474094052 374090471 788912448 676831668 808534003 300131558 436352651 127816307 841055550 648772802 963687766 261002659 280139442 287489765 479629026 818275903 985602450 996601851 999025153 121602317 544622957 565048407 990249278 960042138 992181813 125455356 181548928 782476607 831974664 587184872 812235458 638779515 797025357 296683834 382898385 492517362 705801978 167052203 362375845 177107188 318869108 282626148 736961124 302865440 339736011 81717793 531735480 858495702 928590374 117489394 617287954 817852914 900839175 988045558 995640634 726401114 990317238 635569361 907832792 159922542 250326817 542494239 602407503 915711355 943278608 200740576 719663710 858734522 972132665 153582450 750985139 386985019 677071112 395340842 681502050 748084793 886410941 983253857 995026085 157615866 317802347 45922279 594475676 774817421 855057654 355742624 803151134 326345984 477674497 341263394 785509813 781734097 997520218 137341108 312948310 183507668 495236017 196916692 741599745 953857180 963509767 838136051 955404460 467960781 523439235 234678888 457811278 263665786 430319858 646317065 734516413 250014596 990128792 606528943 721408150 838019703 959738287 586789531 612435342 258799213 670276308 296455049 860885037 910693098 915411902 800318762 863242723 532969038 807930562 569916631 661358666 269691052 903609111 89331955 458684874 936444965 962976021 328133080 516968648 106034247 455216054 877782904 893444375 440687024 821435719 488208091 609988059 943304177 958327093 216696548 319021746 647414624 805846934 33626258 606075351 392493815 934094913 228913220 943396796 770584881 823276290 392424377 674324766 132204295 999369390 412358774 491458370 740993686 808193722 547229519 797826123 597687975 984415187 519751653 833234017 921211304 964069296 779670064 842095782 289865272 706397484 808858613 810447031 208305234 344653007 417973683 531126680 392052174 740070627 456603314 802180100 123029322 663283220 458462880 463140388 929457711 997462497 370659584 412657868 138535592 495278238 522275183 671385441 605448733 642679968 837985377 870634137 269800579 820052651 460502839 521415138 885990386 961238513 843166182 885689431 101882716 806040273 372075913 468475504 4309391 975707132 869790897 933172859 751037663 756191059 934167201 987404823 727770118 925313899 564340785 668362967 925437989 980452503 316373041 781288948 787200996 983491309 118785257 699834365 658518827 959471758 483674292 771448546 309191910 639318454 443597056 770116392 41697767 628876645 809135304 857808586 291428860 846773372 440076945 583625670 206655995 717482678 205019000 522987045 497969038 658941842 957884818 995888821 196141408 200522687 767525524 873074984 946894196 994231909 13372836 256995271 591000773 972530168 388852325 870488636 249148596 854770605 86554673 514150952 639078719 729521354 428748558 905620507 922507635 923583619 81345051 413445771 406684854 915415815 916651439 968999255 687248899 715042916 211597031 498214119 685248578 708566617 621360274 967063287 640705856 970951397 276875498 611066785 938467390 957284738 834044284 834432913 429468809 804351091 541852171 786411573 448891128 480313201 723838880 839790621 609698699 799184737 272979874 920815032 643814641 811077706 991717202 998371259 833260734 924504646 683672709 873629780 4134253 490923062 533309336 689747794 552421481 705407905 688988281 708035893 157395245 191834626 391539139 866645275 345381399 833339232 715669754 786791422 465125473 636806865 430928753 746354673 367109394 610359886 55798084 471899945 594208636 698124408 6473451 859897900 237054965 486431385 867341710 948770092 847170586 857248121 735309096 883666903 107684386 416007557 856096355 997779756 674539050 827294030 913216158 958632703 762591382 961884879 559068459 965670475 708446556 871630642 214026138 419864171 814578768 961413007 815698747 941168047 583586928 659627875 295372439 863988378 329972654 826913405 169356738 825725887 730221196 991568788 313127263 977455390 865222976 965443470 205792500 942074997 478136050 916025405 676101945 945690607 842349670 921098693 289305255 797244027 789999105 966014037 919523207 967471595 795419839 945466915 692521479 963529475 18310579 870850075 884986907 917982725 108813451 429175966 731047852 944381498 536194049 704978550 618113427 826952097 95295019 101878335 426990783 759745215 5568400 195717849 844350873 887775873 120800547 681555222 37815159 234498964 514042245 522748505 922525410 971311684 31364427 865054143 69940936 74979821 159543246 610567977 184889925 621987277 235790758 276158338 279563964 741432368 170604364 221296772 585803987 900995680 868027207 936981269 611175249 680486176 779477526 926567987 811006963 833288719 916475162 981692327 860453400 880445928 25880708 752587624 435857293 799523819 834468677 916339587 764988693 874334911 238498546 312941430 717654411 963423936 104569406 575404172 272585463 506643390 230243293 473809459 444066534 612351456 13436758 550066139 830035597 865126351 898471183 912941867 950440714 988476664 150945400 695689919 108765783 561572287 339467091 547506022 243132460 269754806 134080584 530185403 676797705 972817946 296360881 500795761 906695048 973724827 854986681 877765321 186393562 946925356 715078658 874841107 187710423 327634601 336328510 942334893 170622284 704521590 52767732 678475304 475252500 710005489 818496566 913196908 232365986 468510094 599927633 611111388 646619557 915431883 27434063 390140853 959216737 960460386 575690073 951260669 35595346 566450055 171396749 202083670 10051322 43797501 664119549 997289836 992439703 998862991 589615959 634082213 304516140 921846043 513925008 933889685 939693350 959455792 791558069 982129640 263127367 363836158 512610087 627120103 161060418 831450321 932600133 942668261 907001574 983537109 112834984 504361498 37896239 699409692 171760838 840393192 566450128 612346716 920592113 925969665 180966026 390602676 839979216 882199725 143447459 512797415 577728649 659359678 317002436 980833558 23398340 258758437 306008462 896278988 299130376 889653006 526006006 659382542 920273291 942308017 623402770 694125096 90335681 275057261 110847601 987391262 741544075 868113708 348511456 549618200 544885520 723518152 260172757 527028454 906402605 941526478 522395508 578925438 813361714 833316570 381894249 653704512 71889353 701318484 934643187 984301338 857531788 886186045 381386940 563849152 755295863 811322164 172383021 266276571 717164183 730435075 454402377 483599008 73085971 470035139 509677032 533467172 704826854 785815159 725741457 829456480 115837757 900730733 251652346 508672785 175631114 639347906 890037897 964555804 341006202 725709154 702587502 942242495 210266124 475846111 194968257 504725415 253069154 336945579 366812813 560267407 843402838 900380813 56883597 552482217 879359918 921089341 713808791 737874933 947519850 987654211 360440646 591830413 62474867 410520831 251885144 876998147 861054544 869586902 520574704 925250903 157701018 474189548 207289100 468736260 905431285 977383392 932140656 944773086 125847109 919407419 376947920 600412171 933232486 939311061 745725924 907097525 784784245 885035327 185606801 449384606 41233335 257812906 911597415 974307963 3659206 323882739 974768710 999547443 110671713 277633278 833995817 874831934 328611540 694354960 681001755 725284840 828151077 983923786 555674925 853735374 290182637 646965004 440952008 823796860 15121292 437114818 266109546 458383331 821795732 901116431 624140830 837823276 463399229 797956627 566923410 670960032 912367250 983738092 95008065 692360574 379289221 955727925 570949061 844621932 436820542 807300273 264874879 497159293 365664959 511014980 731198579 899070861 921287044 965253026 233603630 815778404 789462755 993834254 225500313 653699899 219063689 427987544 373184369 386118527 496867355 620715929 300431919 977985616 345599998 568646847 409319344 654084142 474872623 964782878 995733753 997661742 321750972 735020095 964733767 965519296 808508172 855764524 701479216 895214609 933954154 936003687 723462599 957160166 868557631 962700000 233597755 475644584 769344180 902217635 68438556 253443804 240065436 626956763 258787894 792244562 162055474 488243759 234406860 906710868 792943269 921904627 135627746 924427499 676513930 833702203 72050987 864702990 645779099 878141637 519530144 791465763 695167272 733412110 342922551 582356627 674501660 804649694 463465263 965149377 217438026 523769168 8372646 757272380 551648764 949801477 133216615 509403252 897630279 987391699 476393128 836686608 170529784 542241357 294016139 495542177 780239122 989248375 800499693 831437634 15790109 590210008 529717636 549832542 168617037 177859587 686616690 855646626 235506070 797643075 461359802 734868840 7065604 505955983 309135907 703565966 655712203 756712515 687714189 939711984 569189549 617876629 368444023 572162311 393113674 915104167 341072619 543884533 332616743 646305768 48455164 535204839 136198983 452238087 807171920 913805192 507170801 991704167 300140024 529956943 149538568 619166685 524767048 936358429 753562883 773208220 550109215 603508631 276969935 287165376 395681426 571148528 41528929 495091967 2312743 384324354 603794061 763490891 432282575 959977589 38976650 68903329 343074987 419116783 442015643 685249885 749369282 807251250 846043092 906923310 416417003 710528749 332429703 409925668 927679109 997552349 658307294 719843778 237442189 444227636 870701461 910459674 895806860 974406310 63629035 627766848 667571262 767256258 498147960 565537625 494587435 952972138 252842747 759736554 239496664 684106194 240782460 602839676 365311779 399251726 680194086 772274121 860963686 953835323 39113812 307070531 35215628 951515470 489180246 770794106 369035630 726018149 238571712 648102736 780904378 955835454 291504984 874017038 766557950 916916073 892185480 924918512 452042855 701033480 746245613 842978029 65117780 628520462 864207687 969141286 182917189 809898987 69910107 432630986 918774308 950295462 710517093 758281156 653178398 822449235 746826029 980665908 123606772 804432253 249224628 875857660 332725975 784846474 778180492 851562118 402440658 610943233 268090380 616791635 564213456 805993182 639772820 890834009 599850389 848371541 640989198 854172607 121782533 209804708 101322088 121283309 767067995 930165046 867988566 977188842 425653008 897385172 656284564 718754804 777081469 871006788 475210743 965165673 493558107 551230533 446533285 679724450 867258486 876600188 277972920 672019168 383482031 601571023 242292956 787161820 826505268 881803371 504079610 833055664 449366474 887081586 356593054 977955962 503585093 874350135 510859544 885220386 983517473 986833441 789807098 876240406 693300379 958074042 520677323 661661228 7969755 766010706 910090170 969662247 304765340 812810639 530398481 564666816 873794983 944678553 590597570 658207603 978644580 980531872 732785787 874117116 685702803 977199380 10191731 523324958 469419235 756404007 63683758 572738844 917807249 933557883 61147301 192539216 232115228 883094506 730122489 969447933 167369416 309936358 505403091 843458543 738668771 880011922 680935147 940718863 293287937 459518819 854808210 968794469 435874214 605013801 862633765 944037650 314129401 760527158 809904213 893584888 736571090 840850482 874205548 984497127 529865196 822174335 677476629 726057043 342265690 823904692 357835020 551619909 225250140 633770240 475361029 719644319 826203157 859245209 951058169 957096070 186739302 489622320 312484729 936262534 825184845 861767985 490574415 934911398 864868016 910206947 82366145 915164516 458437318 680489453 669218219 742064744 96661979 870972246 470913233 607848731 524805376 916166329 559224143 969514293 475668809 972904154 400513814 510689441 72868725 132091977 316542843 723334158 853030975 961912206 116152242 290620810 917558668 941043178 237721348 849427717 883074153 972237337 948338115 962140236 550765690 889764639 599030884 716084159 270729532 893325368 587313843 691553256 343537419 829956360 509779393 937581063 892451095 915151315 558024261 966710469 595890843 999915688 233379969 659385456 506492000 633705403 828571701 907406514 603969110 809140758 437672807 631001094 792692686 810235514 986386126 988985011 467993247 612206432 138690626 607950860 779104298 996769389 564316961 850938829 950273128 957754912 616554785 829745168 2355131 485654355 606719891 922895690 847535124 978231561 263375402 552655864 944400852 948716325 293404953 664423776 58189551 677888892 478984190 892186705 692976600 778475591 538449926 866420935 687699130 761900956 11716313 591181101 192804626 322376476 344231974 620655202 291622570 473898408 524993169 873525214 795078539 955321055 62634071 601131327 995595829 997445916 552196035 871979101 127935329 780831895 958445031 990050159 896802566 927988140 623028001 631523190 802561942 856110711 330075437 579094465 450342050 725026681 648423871 702204726 40437462 434441598 765869125 911714218 643181190 970121937 731784547 953966737 764889449 806248204 741665231 968260725 449878934 959059689 248737664 774057570 58073690 701341334 650694286 950552982 638765452 947567812 285118700 922010980 124001749 405837917 397831191 931309599 603166603 651950260 736318762 823294241 313268792 968027520 224887693 803667585 305497875 560856285 529488888 846422530 195761040 889385414 551571715 984632313 54524404 569277187 493514470 996283285 794000521 907708039 655388600 776149270 234720480 470523545 204079296 389814535 308461076 622755462 997356558 997994688 617599974 623625524 231255618 448738505 909020413 970691552 276034647 307108726 348696100 585265452 594069916 796412710 306045972 728991572 425908402 761752449 500146022 503116154 426602332 875107624 216722139 647546436 423441241 464904462 438045715 922015989 562845027 958627374 67317070 78242601 892051154 950623873 606744762 662906275 317063564 668066289 399610892 935196257 846562796 865077362 471082029 640430576 647492602 707749662 177359676 510672958 208691950 866155105 815118323 868203942 73887746 915337923 429391666 669833239 94220510 996280942 388266355 960299320 25945696 199616840 375227223 742896154 877108572 952010966 980692952 981187993 571972278 856664119 780820031 925019700 282569582 945529124 108875081 455311545 229552803 237835911 540397167 979592451 369512687 581110176 520397119 641025925 460459988 995381925 253393631 644435334 273380248 280580336 493309579 531160499 533609344 962826310 96963129 952770282 93759975 160181925 620393872 839589306 196186642 874976767 352225057 976360904 543560 113802364 872292647 908663760 128310607 826609297 296276292 897150753 287142262 877964506 708769675 921745223 188280451 230977202 3037229 989197352 88124115 470004499 151534689 669634307 994815319 997919685 780808842 943749043 444169348 627595801 552419858 705982618 797132411 973262922 931664433 993993537 365277190 964751915 887471607 955658992 229385527 712416898 786205459 973632078 268654663 381082427 399459828 638210353 152599744 408072147 282799325 655363059 477868869 967631510 905307280 928610092 61500910 114816744 77593153 878813875 818896462 850384846 496105462 883314506 150638236 685391857 534605017 716845542 328434625 361634134 376335949 845015047 611501736 829724867 122258293 678561926 767439080 825320328 927700659 959514115 271386902 936005156 27703485 378015661 952478634 976152448 991370257 995029795 761132202 831248149 494531587 735539134 624538834 831151017 344859104 866539316 888787447 902195566 644113860 843656291 654312081 892508098 874557267 948526319 591919019 793213508 911611620 987006916 877345186 883622014 599999586 848413181 652510054 803483377 717079474 938943633 345530536 800429494 667204443 966443039 210340255 442099378 419752147 635398949 887276526 974085345 693799259 748667073 762022467 782416644 111739586 731043929 625162733 825785251 7155995 94945421 154534784 338932640 317843210 975427922 144279487 896404689 63901159 637187667 872428247 897258176 123800816 630882729 460390905 513603582 632018942 658997676 584106641 756906729 509983499 850488376 843691509 961542824 852862046 983021790 870212880 919598988 152580635 187197500 955555660 961024148 149936543 692303531 684599756 895005345 645777265 979319145 911199987 969261204 467896053 590422307 70495896 167519255 473569135 778613658 382873173 489119497 202092595 277990700 854736319 988158917 51673094 655512459 517845179 942879605 137373736 998227997 822085740 927196632 203776359 483102753 286797412 509544087 462392773 817109087 784079171 815618936 211231828 579364738 631409181 866090555 39170367 469752503 941950171 987279799 293407143 468359142 451492244 802223196 779431488 928382331 511020952 528054777 375767565 548055921 310732970 576883176 482762333 895980860 962150584 976440375 106467872 528067967 751354206 767172627 263225002 535429802 162131845 479456521 424426356 772694357 222256711 948622606 247494562 796167777 123158620 736507753 8499729 527628032 824314607 887921932 175767044 480363222 382596293 746006587 237165532 912645399 201041893 292917428 104618974 838643893 140990396 552351320 500874397 965595104 772607706 833207177 42327124 934684926 446646833 712489575 167900154 428585253 549441339 884926317 396131378 671087080 218512748 672970086 273896305 904318447 484186080 972264051 157137942 597602161 313452852 818489013 981967254 984947653 39158794 580915360 749661287 981407672 81354134 123345944 179325687 641216061 959091975 973443102 627664837 843504830 365353692 744622318 203416153 705973465 571334396 656871810 484530112 936422654 541157732 711243179 8067951 403582576 71808961 420375450 521272229 764251949 454006031 527691887 861135523 936187295 774745164 940541507 451190896 655234085 588774415 605387194 486362896 540348762 10272283 286559274 838865043 857137070 208123287 643498938 653942413 886716482 967717157 978358303 320338118 452281532 309901144 542424709 394595064 811588707 827410649 949517546 674186446 941656597 61461227 961289522 212053026 446641042 496790358 870792775 143467220 721923340 184901626 242101091 752877879 869745642 359191683 804540555 862415277 962973947 997646697 997868674 955107724 984158141 648817392 808565275 678059820 834274759 582828912 927482521 651263931 717428366 835605256 940020464 605310102 802349165 521692919 549826832 525949500 857171764 576590748 631199872 256338717 411577052 933203554 975683422 421242338 692409699 98917633 578827078 144408719 821302505 398197253 516001188 746403492 815436907 129690150 256497986 647186197 715252384 110469313 692179222 292832807 993085577 525593976 725539452 925273357 934055583 629261497 921171741 664717839 978707952 557602230 863369654 657184577 847114863 689470567 912037669 236489971 528801547 291708865 725209591 974028351 995655326 33938892 56491271 968869768 978793103 164945038 305187375 615328691 848343415 543543229 977830497 964046177 971834345 512842138 946338798 24980956 551025108 969533076 977826698 258183460 789415758 231765898 801370497 86669834 679116580 267444195 440285474 549429385 816191718 548815066 759162893 899062927 962286408 144682462 572695280 721660095 728186147 758211288 917619460 228849160 598801191 846770573 983672083 763088448 802594541 580739028 875749752 716384737 858349129 41578086 687967863 788392232 856013470 916260321 935914270 744183535 928138097 195543926 315241132 725930251 726684842 608648536 980430205 177768218 294548216 982590240 996330270 466094824 893002214 92696491 249631742 806111987 874790327 86673268 375689616 412338212 688609331 555832396 815288568 455211428 652866279 584572552 844858944 892859118 959617445 846910063 995360682 561220004 854827984 747492286 952573012 495873273 910181663 265810038 298559735 962818360 970217955 418645882 739670418 797545829 887175918 46744964 705171099 626324836 953909317 933330922 991156727 16062808 343346900 206027120 375791206 650705190 788083295 953059125 983164747 857446497 874527934 91371596 803222384 830457166 984052683 288391772 450465788 89335766 99915196 19295203 643828706 436195529 754478226 266124105 872455393 668633899 857653407 273435413 824193123 34811447 206751534 334136508 441469257 393146389 777657916 209079810 793255859 982187410 998637522 851820325 926964241 301293763 656120967 8347315 811072268 916025604 967271758 693199376 864297457 589160201 700743853 913209267 993509449 952323491 959977790 681626191 972597572 511347954 968274110 687584108 837571212 227764959 469604497 280799383 934691481 829728441 938564302 429496186 972288211 126682136 751124165 491396146 703522953 219497453 712308878 392418105 603549327 934861352 936853968 490904462 943193627 367743320 406592573 672132217 958194060 998446040 998842746 153899843 251036072 359766232 502958884 191182563 976690234 104035766 853328756 204124032 643286609 883993500 976619026 147029325 788527620 393537447 982873392 841034527 929990403 910795 597149880 909374131 999992243 241308936 769284275 405674346 978785082 449277553 719857998 778813687 988024261 356144455 770209148 589664219 964133053 606809676 678421016 52673924 415516906 441370919 485239629 449683466 976818560 276024340 991800013 566173173 944075973 808360235 921438230 879399224 884881607 925696232 969853916 9176048 960750489 726398281 846768241 205165506 963625976 472891615 576027178 273612539 726963469 720450301 951019185 913024068 914071739 353229054 770459606 898178444 963216473 192988616 356886987 313855463 999083959 952406289 968574738 661057145 769747865 180991074 534266456 624317897 910333800 88895595 416273000 867023681 944370764 896051383 978575180 716849763 860808839 266391691 513243745 211776019 917962739 406074830 772627448 367510586 772153813 616944569 728014184 844107424 847319682 133082084 269935312 404159288 707399295 66198053 913744071 396129490 896494684 140695252 403349731 145675431 180126332 921673427 982449335 955340825 992201151 99688148 674748348 883453478 966121588 527584930 957030712 300063526 881833812 210298732 362736029 115580635 267695773 721071434 726204964 822100698 835066433 295339870 411735464 204811937 766130055 57074967 517346348 759836253 884781701 465888939 950337222 394781126 758668329 726289297 783776884 412662557 988344373 616740407 926009876 524158283 839511533 721151663 862147028 136361840 283671149 38926839 109846756 171537005 801712810 132929681 512934633 31231565 341689229 117882205 668710079 164752583 364340576 863225095 901462501 288983910 596026001 164315127 750324310 460399355 871086193 493193992 937231321 324989069 907715119 36276731 659482227 132278245 346448832 147151411 754474527 469843065 537332084 368360583 831327813 676319157 686910147 302549513 659592978 912905930 914400080 414142480 957329386 188140322 560890643 554525458 810215065 365637672 793907231 896196076 933370278 901290415 913917450 161497345 927575582 8312185 377599405 368556151 806918717 639049631 751193136 29397088 939620768 753889061 886409052 608286112 705903036 325167571 529174703 127787510 382199655 184235846 829670831 227185907 732279914 351154997 809892536 517171683 790600821 163388204 191494851 394350464 927722994 347822082 405896948 439011204 906651259 933065074 944125131 270390505 944996394 117599311 920832406 690122770 719683649 23432632 327092862 818906364 853654899 165676186 362785591 507009481 881624254 328351308 916244765 540920699 783897963 581416109 977896960 679472452 762377699 782100634 868299836 749382113 844462475 140436905 198398265 613197980 718037957 145909339 244123359 305617856 572755555 246555146 412039618 491012214 797680902 436342798 803055285 606754367 919123461 887862756 937167934 982676186 998243581 680667763 867545744 145798894 172352375 94594141 834178075 684143140 708610753 909682348 918848694 406186308 744704288 760148409 942574386 966906331 975085803 420120186 619135798 166518028 938446744 463492926 595182584 237387230 978786825 76931458 254882997 755061684 892005837 848297152 884096074 11487840 175579605 643798696 909346383 716398755 794885020 571961878 938272591 625846818 932587382 76744699 613280421 829143910 852774141 519362747 821013299 451621753 592690542 449493935 543233817 99782620 134510132 785846146 829751526 730285130 884688970 117243493 989294967 922845241 961656460 967180641 970420290 296572114 555785417 27256953 263942390 699700854 739774240 297525951 642878408 506371744 970938548 985733758 991369806 398963035 780706955 285555518 592105900 669848930 884565839 382653552 544976201 154272649 346339179 56289595 833079244 870417725 885491578 148270390 150193128 871826493 996879117 62397183 278402374 826023467 854232543 862008216 938084700 245747873 730588657 437935629 902104680 744327007 866324690 939877522 986495170 489779749 861835140 96130146 657293866 454489693 891369800 362805108 765916942 879271028 979164971 821096747 824228149 714570442 759135705 12871127 990067046 799554062 960954361 570665054 639090364 55416191 539830264 278063779 814890750 969082880 988246719 834799638 976956334 393703107 753750598 308152850 497313534 802393638 841949499 592048728 946393413 662997384 907995454 578426107 600864855 570139723 956660448 165610382 191229013 658786270 900487503 420309013 563557774 144348631 924844917 646469737 895738683 60423973 643393299 165719676 663616795 419220738 455409654 236937309 443405124 302634005 324605029 137861949 793661645 861311885 929578531 265345893 668989252 419346987 580999189 429604056 934016708 479573920 852722030 786761748 903339909 88306194 504604946 239070882 558727269 223077048 561980455 869001436 999270268 79534784 109321347 438096474 873704759 792758914 867758710 463396808 738867983 463372840 532661024 971676064 993165009 351597048 509209529 854851047 953827040 92902163 840100337 815655601 901205984 898780099 938745654 863232828 908542503 720643935 829823508 177676492 738859419 634024413 948416681 843364211 882159411 219609214 963423685 861985963 994756607 518977945 857515474 205326008 207344124 471362882 992169600 179695710 580639820 623356208 865428976 728731588 867469140 344444403 864581157 430521470 567132725 409287699 782039545 984447769 989028505 644122726 854905215 127442727 401458737 198432174 770229975 187871393 520041437 467492736 796267666 30668434 705176388 785787780 854556110 969787458 978795806 631770597 858614172 176041233 782022364 500800651 525478163 346682613 716481116 973663894 993119592 874378601 933414011 839950906 876721066 458878485 871762414 15433684 967843649 8823983 391836391 586892032 832777624 474616208 681104284 914064825 976280476 289139578 741456035 591041477 849487139 91631578 756919473 130140100 667092173 289793362 949297235 822905577 873123328 574587750 595283959 931725660 956480498 677291178 967869963 878717976 990154433 83388751 393891222 375769038 435140401 626868336 745791477 401658025 473616087 320478896 701254347 44369370 645665339 724505840 740856904 357275702 516880357 786099022 833012099 791066303 879272712 677052597 786672999 893059784 955516792 521076602 537617496 436326820 535999411 497867489 677230966 241475132 644948616 501721356 893488860 449702236 605132788 892380942 999294674 673174556 913398916 365616408 478955975 439283554 973363333 663927223 705896874 38947542 738356394 207598764 724344855 195810906 244596813 759472109 909784254 880301864 923950987 410446454 452667872 739295146 858452698 404317166 477444919 888544972 976295375 236366535 324287637 792348618 911544008 780242471 864678988 872394582 925386545 774963359 791375675 825534207 889442339 344784235 444707946 303508491 732496933 275646832 955345460 637718695 735925391 936468423 977333931 683819692 940328886 119446702 722347066 565183202 650284007 833040943 881319527 60018890 215311647 367982768 416941717 642171833 730936203 596676054 885612471 888205905 891523164 275531817 421747548 706458219 954632626 11629654 902651913 912270133 995071895 786411481 812763615 603668666 997079993 265468336 438538028 659896806 834708161 336424683 775373941 732870026 826606374 319543298 856581662 765142117 979684223 737376011 829926512 955660128 970547306 638183332 664488634 410092110 564672664 329345423 575454640 49062067 322036093 137318260 246460769 138607609 400323641 854709530 944444016 562227592 901248690 492994974 842662293 91575201 482520357 899508067 941952820 836496408 884132094 256009789 413694569 294551079 451019663 591397277 908917573 937587297 943151970 861394528 903009504 15588793 179224691 719806882 942627572 441039468 608502614 196343554 564342495 759626904 786585119 496211675 663560331 927203362 945552997 223359059 368641231 803205743 911817971 184287555 583862010 858831682 887057562 299719533 593181162 917611497 977163315 898529529 939096785 154793723 774069366 50286460 125159485 292377647 946682415 681219412 841376129 689575250 780759108 797380924 886372694 117707677 978555431 265331012 579860276 398628632 786646769 426045878 460407764 181192984 421555436 339946057 773445247 444850593 819273774 723192902 951660876 191058641 513517232 242836592 818772088 872623592 915477119 187590759 728655220 579972561 896846386 334902487 875752257 120590120 904751321 206660080 339380193 941379866 978771333 250866756 327969557 581227837 731070816 381754419 984631089 25365072 531722478 717006125 973163371 161774138 233295511 933459640 943191351 120307974 850094510 574508372 980140504 562156185 942129826 901646389 952640069 464485926 708975371 143490959 781884837 827427073 984999297 859149333 898830923 336354339 622782997 978757068 985122289 707631163 739736663 829885284 958213543 518143463 873512080 493323006 729374089 213889320 657057690 296627579 798719251 188075932 742346012 621420546 891068029 39104965 540501999 204467122 922824898 972988622 980791259 623034497 674344305 967838284 979782267 493117038 531290154 163911895 698816519 422136509 985788419 987136443 998916459 987409078 990954466 60790768 235239038 605670437 675637390 451293129 948528142 677452039 828060513 714097410 942782682 762186096 780356908 4190046 219328728 74379046 114140553 886514146 905053794 730815486 981344255 33176622 84560509 470252535 517967886 869473658 930822297 326595002 497985831 297794817 361601739 561012349 941971590 69802868 397479672 696624049 849550236 247441554 599482241 437531631 920029911 129940333 742290391 427278463 723695006 358275738 408814071 669549976 853241229 787242072 910258751 647324153 753585985 490247986 528411141 412436340 753851233 133808612 168204048 303398036 412314276 803362748 829449849 992044320 994266506 238341745 778681877 938993898 966166522 737677729 964996808 748589445 754431292 183050414 701734748 527825451 999863464 266306887 349600312 653780649 777418286 165809549 595060701 139503112 642362376 107973064 424346555 911670053 987820991 283421085 437482610 325170608 910027754 683620442 698965137 955326717 965804613 949704417 986732335 474171450 536855908 322364823 739492247 292662172 661968740 959685288 966445713 382961372 396640010 136890403 981634879 50812005 173838850 419335842 490157827 450205658 930684986 423088738 472585436 910609423 985239267 916536286 975430455 346295291 924248392 162162668 338030124 588141083 936034705 876518072 950799031 634452623 640036581 697684824 739589553 235985105 247549828 107293731 354860255 342889657 471805144 613967225 765605508 124904133 776046076 698608667 929194751 16831174 150405812 211015516 265027811 594797680 878839459 713889152 926158275 813274721 818605983 981705752 992456086 732239463 886318535 549823832 568311394 185647755 735253777 700084802 881124242 896356787 922170655 320551435 431162795 935803237 988177499 672124371 959923774 495277193 968961988 680148184 696872548 964083021 981624126 213222812 534889907 838332575 872944263 230794529 653122214 305230623 890866836 119572081 190778348 235502296 913338776 180576546 868531304 454184361 949210886 345899876 389638532 332648864 364045732 300514814 349401004 114132049 265922697 655478270 876371379 219720384 911250311 72468396 770964180 878808348 919569067 42539324 598628282 722465414 976404203 868907946 870595504 165926982 312083833 680272714 856325314 534713513 633254689 742341080 799200582 680202333 978575047 962118587 989667196 27269600 460150420 611850067 674850119 511531949 545357397 856930956 896111757 79362953 104208858 925853639 944642969 466339679 530363692 902976001 998166754 134587937 480698200 458460049 812796106 956966101 973267041 262378147 750539153 635927684 933062819 663106347 679610640 678927311 693451471 381699105 723088706 898878461 922067359 520363347 713491168 904537717 931551212 706634358 841748364 466738660 642618120 731963543 781381490 875447068 978526221 86454016 903047187 295853879 961928112 401258049 505382777 620080855 859366897 124607629 455368541 115603139 845042544 406143851 864703690 234866725 699839135 769592329 903141996 22539031 527289723 718811704 755048088 224461646 949209329 114463496 376697730 477398964 821510539 433210419 636116633 475518139 914481540 276121420 717030580 886385466 890054720 511142811 791558353 669402372 852810793 101265976 915002256 626699608 943732674 196839209 910428467 731112992 865226032 653495777 712384656 254170487 538506373 292778443 971462412 216367078 444399317 236032041 557292898 558032152 843678759 93032745 904257967 696505752 855930912 410839695 542913121 829195152 994741211 466849947 468805448 700053902 995163674 500698237 916773183 187488320 506933387 132377746 293765587 405393921 876229147 64364488 296004711 729794250 740309934 709778308 821875784 846309532 876408143 602552230 758376537 645225239 771060680 194813317 542955690 181794820 910831839 120039362 472779176 922810900 952787686 918301518 999297947 98421695 631873454 371978869 776473772 130832993 596623057 549155202 642723551 801310399 864028712 830040647 996837911 804083325 890249142 337784351 443379459 796777440 849087967 979755897 994473741 272605756 957500966 74766769 382571681 931834575 961247034 802234793 942180352 37631116 908790453 528641402 601680993 943048489 979350627 391386286 459915689 710939333 726519636 600107277 795096748 642271746 752798600 61543358 603558657 39296648 696191142 723126860 916615834 659054954 734491699 819897061 991493886 157824708 771945364 383437769 859107401 141075169 322098682 250261903 276852340 757627644 921439172 897728991 986385973 340062928 517267872 495156326 910620306 190725045 450871972 125759452 537574177 444732797 888187138 38818577 659905254 842128543 928288809 207701412 957143332 477528966 584995709 870289802 952949662 628751933 919150824 360106093 824239630 684012180 996753100 757371731 830197358 941262658 974348721 725794360 859122656 855360993 952122969 433649399 962342672 222849742 306769295 256438928 374261895 514430392 857663113 786846239 883855148 817141818 998309696 687240227 850320976 430726147 508632137 960307361 993883540 191612327 218716633 683024155 987282130 45572165 376570914 824001213 978475159 673505893 773402084 436361959 669611634 383611876 909397403 758813155 785466576 847859213 903999508 88926535 788915188 847625561 960190901 709644243 884160934 134597398 413949576 725176969 816261372 156109105 776846191 787550388 950656424 500025327 741009283 586483486 920074367 739709774 926581416 849522793 856000015 505246938 732618036 726949161 861061519 540176734 907355927 84936211 145493421 543398661 598676265 412017343 637352051 839090600 889126270 724301663 847443745 707935587 864857481 594037005 902838205 963561440 993660124 822179468 852131069 563012553 910064405 808955066 819749064 844440067 878088197 380120193 739763845 173875714 297545328 267744911 442347719 275360167 577936139 678769673 809091273 275479570 601872216 537300592 936366402 395649500 619657590 324448326 415470550 542847773 735147012 228451676 535791735 759943175 910544463 557769938 597502049 289866930 453812388 799955184 824077107 803401477 857392640 140378727 244145299 31803973 183288917 731888758 813331995 457279315 475497396 484061524 893422882 728252409 797545083 553507920 779867598 984821798 991946363 386659942 457211958 315406690 747397008 614088296 733291057 859355984 899753953 748461753 968127234 91380943 556141853 79379628 931178479 930687390 998399998 952748903 988858934 844838508 848462991 52498511 127688064 864542623 981301370 289485274 783557635 491231815 666470767 378891732 498120093 420574937 481554548 324750749 367521763 37680321 105596758 911321879 915382897 689033182 697910270 693992315 736443174 968696680 972961472 930104817 990897766 979790016 986955539 649320365 657178716 720768687 990197886 785284477 864654052 975898283 986749634 840905571 853986783 632375196 843582901 758489277 850540107 387346132 547143225 203349726 445509867 283427187 444281785 320596655 901559001 613955664 654154779 296536182 979211572 682416413 969529626 432992843 986803778 521092946 670532118 656406558 968689286 585456109 730575355 914030982 949514889 520600909 963365222 475571503 970279343 817450595 899004381 634147134 867357989 347769585 876626298 832431602 873421279 304459570 829226339 968139544 993713741 244154695 763028344 180595853 484202413 583457758 712765998 844047266 890206406 213080390 313249307 708456806 989678159 908004019 983988073 221078486 613856043 653235234 825066649 714141508 832346617 985618735 989050262 516193067 932925363 655988583 754334273 572759443 685356381 928099575 987444215 944610215 946364981 65897025 538705744 211149297 872678878 243187074 582774282 611215630 869644994 840205047 854784962 401577878 412312072 828179640 845657718 246857837 399513151 338298425 788697931 471123272 669678452 276238501 586436332 670195585 858382270 842290427 909997845 989677070 999449252 370887053 609984880 194499461 250325146 256166719 903979217 447757800 563451379 620245659 777134184 622766444 900953899 467578352 701008863 591743387 720033204 29836589 786817643 233544168 961289582 111836129 435509403 88664261 469535673 449446372 455412661 610949710 913574578 578399388 617714225 293594478 853549785 566289392 788856737 726029520 897076886 400148100 883377871 303718359 573902615 46288520 432682032 266095422 952351018 986017238 995378313 461188565 564000308 818239001 908299387 304570439 644887687 812784660 857008886 625965784 682482570 185053412 710315954 602488137 646903060 414908910 632830328 697124606 909427115 537791789 647025771 636024243 705768256 708628850 793064121 986067107 996127669 130093548 934488103 979365332 993480428 220453547 784767729 882023961 889289853 107206220 548994709 553524706 815799365 4371233 451397720 622934859 698458308 752723634 873979785 316810869 604605703 679717187 714700889 502773014 996564409 276118982 566230556 668019007 687602411 333718256 620729922 624402469 858129121 164627870 592074762 524177014 627197100 144845569 584196089 403663521 882303027 447017291 602378463 319049810 504110026 7561881 135162268 38345366 401405261 184629469 970093694 120444056 405048342 444946837 458968214 951085119 969077168 904104339 942349867 168399896 972153746 800620138 839221827 54376811 117425966 205708532 400656156 226640194 304094014 54963698 799415910 211368988 935013999 837191103 847780371 740026421 879322851 881735950 898773094 437189749 838517011 762970552 844358354 20645923 550225919 932116414 937667740 484771051 719509252 818706570 942757323 480707197 968270506 12826919 741001161 349973406 774511903 149977175 570904255 256614059 961209862 830911020 883924695 956964152 980284876 623365554 720181936 87230231 160491779 80011795 136425118 470097851 761315624 292099632 350297616 256777220 601675843 741284881 982312008 211642837 838153982 358405260 656564593 209186684 500983649 959778933 992859340 999878339 999979921 473921503 633317958 338752570 597203885 891918003 994549091 485420410 628613836 557388793 781356250 578946919 713108816 773701523 800022371 773734276 885933769 919136033 998681282 673817341 948834272 422608595 647941517 345733671 536340733 174413088 829628555 269858532 762741379 209763764 843425538 12957319 353574255 937336105 950925838 32629838 386631522 584336964 946976710 986309403 994261590 621505500 892294944 830038300 860397022 223173709 486521368 345049357 623545954 31303983 427735751 249557465 591895542 134051730 306624128 371967170 476363108 170542372 203969650 989611128 997291161 923372829 942036164 46722600 332385181 375844944 449015799 149009963 626020546 487555856 650731680 963454868 967386777 42898798 362829790 461833416 690339556 689207085 984110374 302382887 752463186 649819484 936553960 447249103 713699500 81164774 207770527 933340672 988544538 977955785 989460349 331439740 540540111 141283391 585092925 326245441 804998543 958943200 978949011 607407059 790991820 398113205 946684478 746314506 863162886 293323584 388965152 923411730 945206885 707526174 830559899 963062834 972748679 47151087 506139841 843187266 943586067 426746344 829006520 410249218 679903032 919090749 960948642 116233252 561160665 609976789 946887021 501804501 641586437 614410945 632562657 632221236 773624689 422081649 627658824 446438273 934493909 21117847 610146597 311162234 354434992 989675181 991755355 903072001 946225256 100325648 830101691 961879952 997530807 377563951 932082127 24940851 787481194 178366866 608908383 185209395 463223226 549833927 987074737 536351637 726723031 36757163 115926196 641321648 957936649 693445051 975046561 851976812 854507073 227044969 628784922 101377868 193459672 399090311 968615288 123181903 209163785 841162580 985594544 806141335 984489157 126394939 995727469 672859707 693721290 420783512 683474690 492587661 554928809 499625486 664091264 414617814 542672730 570266401 842033795 919100728 952430302 277432154 778048558 48215299 696638921 325159705 743866462 195046755 937655744 128388038 712207569 472290996 515425256 74796237 740432333 930625862 975157940 344530012 415158290 921009602 995754206 136799529 316730075 557391448 625744972 606387429 888860235 874138276 950807514 534945272 890211681 373029163 579776352 415957864 762085345 985941735 994331111 60853863 186111628 906990874 988777150 10724134 893564881 727941416 951501541 392743251 731095782 243493253 540926864 233914321 998146180 456949477 958138221 34388055 190419988 296662495 903034667 575769039 619117891 430797384 777769272 846883051 858828586 447714214 776546340 800847661 925096974 704723588 999284730 206646055 323727059 306562388 838995223 197394459 793330661 25194507 908455948 553386090 772893019 727242955 861060820 41962252 647589676 928784684 978542867 551707152 956691426 91664904 358295088 447095429 840194213 879673827 895219858 267433388 629560433 873815812 988498439 343845816 917804333 846874828 863727168 387483705 652430530 289229202 373581134 220885027 673512521 39239967 490775409 53599905 964803243 669755211 845990012 83193654 796684761 857639388 889241733 103208851 613140000 770917312 804040251 666150922 894385704 7024042 129804449 406140620 542986711 558272742 760938884 898658655 991217428 225590749 619657172 466726373 663060216 624208108 843050168 639734749 929808724 352079740 681085872 573202860 625162637 800072841 989094310 541018982 665506920 625559565 914959327 620890346 693367072 810124281 883640890 499093432 499362813 803934965 963413137 292401405 634095658 723798322 897465011 566072935 898866284 389888947 528738729 273215807 402430118 488868385 938609681 252455217 663070442 174813364 207529269 169055066 457748031 920113678 951674803 81107536 306279082 381257011 850436646 339349899 890696460 363352276 503696554 340863372 559838400 614805854 669212836 522342331 612462038 975792512 977647099 410114539 471014408 254866573 533109338 763200872 962227196 32126527 829417609 179567861 588090239 59627476 261426050 36258027 662953892 970629059 974991662 433365719 712049764 811884695 845651744 193899347 224605075 454112205 515773599 180457583 216610732 8568203 912753130 84087133 898447746 821014385 894973843 20414713 341259907 401459387 678589766 305632837 557332894 646328583 853411172 817090096 909351549 398910456 848410753 825188487 835059473 522008577 915945204 762500960 991337026 236589932 329939638 17934260 190114998 760921920 818580539 937144250 991010817 92473631 528338449 95288241 592063659 854399220 977099100 401341679 518385116 970157758 995966523 938524382 998665660 594912810 794573502 400707700 719980105 364860378 431358360 694368288 848014661 751541632 899649060 517351967 884161910 105694791 980781741 897191873 917563910 452647298 861631051 889844913 901045058 64654449 341203834 925045284 976427986 254575517 607742130 521830805 553893426 406922230 689576352 136425548 488636678 353336756 676461538 262622322 605280949 146205382 204424921 149056818 607125398 481239169 574065534 119819219 475555743 568338727 723461963 471699544 922159113 691710517 842795937 470061161 839724299 490793826 602659679 602582095 621235526 642686694 696107954 106566643 913504845 870890955 969047390 838339945 956777167 577948489 854890212 452871114 764947951 559170020 914636576 663337013 951307302 143978152 817974074 408019544 687702547 610835015 908085981 784303482 838482746 271927838 877467288 958733516 979030741 713678984 988390837 478467098 509211189 336187768 553447596 181567023 728019373 376905240 674231908 96417094 503264908 396659409 662278818 839114304 916209822 274056548 614570697 859180566 879084582 454380774 871894304 145640008 211170373 340455484 459856094 956758400 976681132 794584664 834859557 867868752 963202470 309871335 386597200 16327810 392513006 833072315 960120328 705069475 988014558 402976511 905253910 494384010 813852837 327744611 499214647 910083990 954862015 251323060 922759177 477355916 960362044 376821064 528845400 716074477 751622234 659240021 816716608 917608512 956692900 844398410 889307241 73550149 185919481 324690995 458209227 549884959 750328607 267674911 628622144 603840037 927051955 725192556 941935385 555385559 614369343 180212745 713090293 197451797 381449896 689705766 821087187 26771694 771250098 110477054 896386735 835730420 884454458 920387617 999434135 682739376 828526563 938371766 983244811 372718433 859798243 287659512 662459421 869298923 961324762 257865284 404972804 493267020 946168712 433436502 682390312 465518848 578157024 109184920 565281504 786581668 808749053 838420690 980278205 927515652 955723420 922435436 940458661 192339934 862580478 362644990 559872554 487707581 919762771 170689482 567019330 762801820 808452017 139681888 437384041 685459246 951410253 948163466 982879728 864773367 976806780 632540935 894708738 642607433 813669360 48023765 425560687 727508302 914600151 600340482 627156951 133908048 482131324 871467623 935614308 576291813 974501128 396596011 537354969 934260907 954921785 561900660 829898570 151791279 476594229 328292293 590982275 539305419 689409545 468023319 642896035 683321081 788750857 811760268 932840847 325253445 615901376 914552737 917666325 596773216 774341387 433265650 718611132 839300913 915891033 45046834 110346334 395864589 636720847 224784843 879593287 609721635 841003378 437083746 548538078 996217396 998210582 902133903 978176724 858574866 974035912 68049925 188957878 514438828 530203027 677662598 981710191 116853724 234632898 955463583 961495184 701685122 888089960 364147360 443542202 310732354 746667795 94914195 899349850 154189921 597971022 739670803 785888459 3231159 579582573 593968319 982614428 753633260 829369496 182598912 625401197 488200114 698130276 448160519 955826273 329188022 392922785 501213828 787243417 673630801 892686187 80565318 902163086 225694920 958161815 87180843 441902134 369322173 841557319 884905247 886734628 921852559 947074360 782200743 879987442 963865010 975602294 756524326 846205194 717358094 893783161 564953919 809397803 914087318 985511063 117655029 922972702 980702820 997381690 709071525 986055520 455734101 911078325 187730374 363660876 200405908 284882372 228544578 484887132 977787170 992561789 223534008 430983147 531585253 608381527 20549457 388466904 392466151 670136758 876739701 990548580 819581171 876590496 772301940 847060147 550890954 691397179 665991501 981008513 392107120 486624555 532025659 881746329 663175599 770093845 558519548 894048105 58388956 301136562 872016312 926214189 60424992 172722196 826625761 857759479 418992145 489673352 848816306 944441867 192770298 795889962 852535941 893600395 262910362 988792229 445522503 956069597 774958452 857376836 95124165 804297157 899959255 958140392 353801305 898535768 331011878 873702279 454789757 749227799 58216386 322656307 455125 71155753 432701567 810785647 600710295 826392941 268746681 471630396 996308628 997702691 416846407 619413785 255733493 850864201 846203021 846500230 112521809 371346449 805599171 826040314 632883730 878101758 111390684 469498186 733037984 804251537 166358634 472477404 869651668 888646645 80320089 383893642 536837843 768905649 335078853 355652075 814517671 882175308 484038639 891523097 375694988 574977871 744323074 757408937 644226166 975253006 916747499 964345091 643544035 817588970 858486979 862286073 33217826 624768271 340321373 853538586 346140548 601199488 334639731 949078275 796249402 889221041 233576586 883307906 271805448 549699000 723440565 817762543 752503282 882885519 784204530 840754542 328241711 389619225 375605539 930463573 281767666 467863095 824035449 916652126 907687146 913744451 779044353 996803708 341536689 756856858 624004779 638533681 926871373 941495929 993296349 994277007 20796093 990322586 748084457 815572905 623658770 963081068 265166161 973822066 10744942 144726377 284911428 834891399 718486535 762989717 619626671 752395634 156914009 619408441 421465076 937016005 772937698 860002952 571194538 852233821 663599371 958947972 864714226 868226832 936563607 996606167 97554512 299211841 46434362 134535680 34053566 727418213 257040300 853947152 939513360 999379641 187451579 849581905 846559892 985259732 610492168 701716987 235723198 499047222 786607507 985686602 239794685 632620044 31297826 811238995 130132732 720745332 85245357 351686196 470728575 960962400 959488204 997379173 736926935 783129134 769005708 904811438 861060015 961174456 579930919 615410673 107055519 624349831 940640318 986023231 540933491 930477262 146691191 564634101 194442307 356535307 124046452 702526064 66904027 459867257 372111961 506366943 466609895 759268730 221605582 431929004 282315195 481617821 439714385 848947710 726590153 860313847 443362467 468410273 913194290 921128314 868109637 917140357 718903191 777268048 267646111 677771875 396398395 604826808 995214808 998971288 312610153 458292260 299718130 474211003 251674412 667325623 507253982 609413918 908729528 951390212 452302816 786172760 149143618 431815262 613024552 860036647 24450400 376326218 834426024 933148231 421937943 617262382 533223365 707981690 943053603 976461987 447187301 718910940 153684349 453391662 990184296 995799702 227848586 263719845 789954040 961288162 983520363 990092009 687761743 732272135 237536888 470730470 655729828 758013206 57784360 257666962 114507117 685520616 879177866 945113364 665058842 694857689 515629325 694453457 876002601 950093176 564782242 742249010 170479351 986397061 698639876 702901666 280866521 938340187 249227471 711549337 4576493 697242337 485258911 571462683 159143674 381079339 657572691 762817158 449392852 545603823 211839058 994759432 493411401 650120182 486024863 774295185 536651825 557450345 474252919 515726470 358901296 511849244 458785555 793293130 163934108 314362103 557440954 644417670 932020576 960688761 514819645 910403388 483038556 532321072 945113666 972528712 915126192 922272151 417851211 466209541 792113273 854734812 492998647 517067389 34189818 348482518 202986454 623893091 432392553 953342467 443313799 922142254 801429938 863968825 487463309 673148056 251355827 618921620 637576423 900045861 760149611 958062902 938476434 990384393 179431638 640433307 669836409 976213785 321998001 681090159 772400629 855449930 535030755 783596069 214185774 930953122 128590541 675208070 817331411 871688854 911055108 946978922 552455546 781940836 434381872 874937581 686234000 702685120 169355053 418448208 370036225 481525669 217557882 382726367 329907942 863042808 568738048 932825572 376269755 657669842 575310336 988149336 253458416 315109687 100185304 828639996 488033476 914263206 562933125 931233425 400468146 962262729 465176904 562667713 870069769 995695200 828036689 856691012 615270898 795382407 401744669 640139211 580863691 754833274 253390290 417898098 14236885 17997292 367396147 679933946 506030753 894322460 728420075 913827019 88811804 661884765 409688216 951451181 184901441 429514644 173402354 945882586 708058647 713682431 361828091 373160942 177129728 498985014 242361849 539709553 873564201 938917061 564223555 570453182 928565432 928929416 971751789 987193567 958114091 974527679 396981375 681278973 552968097 994499370 98406288 482754678 819296387 825280461 127212927 383320420 221814561 833179894 883935547 939770996 586905884 768855027 980218082 992079922 53605102 894956204 722509930 759890724 307725031 574582408 348732208 987602987 556571039 660501225 581655481 997084300 514417133 583580357 57713837 854427762 388628690 977387443 730960051 780157921 451447048 563906953 453129550 565074201 637709485 710780862 243064607 895334528 273393862 804363535 923116201 942969490 492919780 698449364 821814948 925011815 23432061 232191476 646344824 930664707 600416926 628270810 559226792 991776835 587558372 859908834 46409160 54686666 463452146 540448953 284701130 389297903 306673606 781791452 346256543 751109597 436016648 825650714 96332884 742648650 937832050 942686382 622884916 790360833 646730881 684080115 518309947 646015548 122219814 545541237 630009823 702344905 72673186 340730177 516889984 572479523 19821301 525207194 355037066 752714926 816509424 981349072 475060730 943293335 280892772 412441140 604418588 628702569 260474798 535896071 891882238 942337890 751489831 913319958 32727601 335175979 707815583 796866927 233956266 239711000 516083912 867070128 103887565 261305274 714558106 922466080 731014740 735840778 43211096 803778296 40285666 447299718 602737739 806912986 694005454 806682086 823739520 873892586 422882942 723223730 740914729 971105920 918667818 986379007 972923859 986880643 61268619 931920824 749456263 754532073 517673359 857465239 131470959 458245216 545181073 672686284 921013463 972662075 674930105 735679823 201325071 402963064 583640242 722829076 464245001 840433151 998919213 999982364 769562360 986083065 839519894 867390383 610181630 749636053 933681976 987209869 582628836 624672515 347687918 458290820 16496666 527167744 75286943 615895090 774137474 939596388 237178491 620698485 727336136 735361880 666086886 725781793 709682630 798882412 254462224 840173696 715800567 934017715 30786767 607607384 279473690 742272942 11290764 33262919 663940896 957936760 782581314 801544850 969198980 987615659 946519854 950543837 595923957 718883178 202034450 479599090 753835197 845868196 780218587 838228820 866931452 931958594 25681510 69120164 953342199 980802003 236694208 476889242 392148524 732564861 347927922 736774415 149910131 716338508 935479464 968594699 762187443 812448853 667263107 753801352 152410285 251339429 582915982 675745353 470767273 761579292 303662091 375113125 258318629 480750424 999199533 999491430 551300051 718039419 712118559 995835581 374722343 491492778 765628704 817652734 747885957 926609949 296389114 926204015 122544436 633805384 109165101 272194234 317909641 626907182 582669510 843379731 719370184 792120621 351815786 929130840 179561303 532675798 702002990 925428223 370789797 641880473 120589447 585498917 605528380 772687591 412212338 571018184 514124488 977731600 983320713 990629706 861585075 873109304 386052603 446580568 156476517 419719472 392233234 631723553 434726956 805943605 458520060 879195510 307842644 762912628 903293157 947900535 976644290 982737761 577800512 976722805 163033191 605950287 917481087 982300544 171385625 657395665 983085975 991777548 855240093 890644641 586571230 941178035 603923664 925894357 14762320 123282363 917749440 955171720 966952690 980776177 179398610 626011472 877619603 946830257 78926044 569412475 494245161 678894999 562245905 934682172 964240303 971965825 943707695 948155335 197938086 390699685 566201981 600479712 426058514 897847302 28937536 29636139 609856789 997777901 931197489 984922462 115676913 526768809 29234792 383365100 75781919 387541198 317748040 643136442 744169111 900471628 812182389 857002951 575143319 726626628 28196284 818450955 411336545 531665820 797304761 910700986 508618559 995051237 438837864 906905371 110068005 921141477 224985657 858519500 24679153 27010364 883227409 943637493 766536020 955553183 339306372 560250210 616677532 977185508 971352133 975792943 534385287 645842608 460353895 499541063 193056338 696053629 579495667 774103611 435727454 836014516 667136058 701937569 940554100 992858712 803377586 914287202 505944699 618755360 904353974 926305023 376644708 745780817 96400517 812655718 134097481 748993442 189826869 480292606 55522940 671187049 13083540 356926979 791480100 896322777 105203365 720011637 294703261 462560009 455569429 957711278 519424840 987682566 11748595 255018603 159033186 182773576 497143357 859330512 271138598 745494498 449903969 978656058 840226794 953573001 652399275 947067840 538339301 715259500 389920259 487752961 528688156 915229618 870111082 940328867 399698681 623961898 361420476 910831947 736273668 752564113 522968825 791705192 875498472 960890681 273585468 558371333 929695914 938125123 294764697 614322389 829393838 885901954 520346278 670377228 583817224 692583161 230211259 894407103 469197749 653033516 204881315 509410679 298339228 691119631 503534402 978341780 919177537 940573761 60067970 956190014 267270530 907465269 293828383 538714652 389898695 825111544 775872991 886669315 282938505 562741864 526596129 676360089 669892202 749123456 785327089 855499249 391691125 794723951 251893087 251906663 518764704 625440408 732437379 948135461 597306586 938163797 389788655 916869627 299595762 426071194 362995237 678197254 491725561 787407347 669017217 729273710 978018995 996494771 347183636 785145976 642607973 968077313 922003353 976744076 244065700 574121378 615541420 882505908 373262467 399401369 11691273 23638523 720896557 961367020 639480901 856908710 707760082 728987113 257766685 823121456 421861469 845302284 609975312 916470945 530135668 991615021 368411024 681015726 845156737 984857629 387557758 898787538 357602598 468105874 274970504 861018395 110796145 701588866 436666661 849819787 554087910 833683913 163233195 738154425 783789985 977157816 716404893 874602466 118492597 841773786 521760078 686327974 492866032 739507763 640400251 817461041 796576523 888209949 182322205 486572324 69274993 685012941 448920405 887980156 64358500 862290341 225419822 912159060 310723485 472314819 705489859 732176124 459933703 827896477 548672759 880749778 635221263 652095464 312185374 950496218 569240480 679709064 549047539 730858611 994821283 996590243 295313965 755933823 283230745 706959255 96333593 708448327 477079834 698650930 803413887 929353669 231472811 741448612 794001609 794084131 190233859 955147587 905855922 960964091 25234767 148485343 572533473 706384089 588071658 795171647 660386164 890712506 109725032 223421218 628980332 745047160 90877430 175997738 462286936 636524249 34125365 775815705 782774921 820141256 541372797 754242227 637342198 765715408 421172323 428079963 598388146 852452303 216761219 247630171 104854181 730823298 217382955 517545811 600057666 782754669 249016904 399513683 476552910 813367637 283452410 819726586 198642928 658073703 798314959 999220121 469272103 670526850 875578522 979260778 905492340 973315156 391774264 988894266 25221557 280133459 224891157 743133620 705511857 971827224 63988441 674992853 879733405 919248786 262583195 301632682 580058704 861271557 597020159 999404296 550390031 673923865 568907559 686324160 186154742 279354417 923425727 979901582 721927511 776473207 68294533 590788466 906665462 942399876 618255302 718758484 804319817 859904479 475818268 493833696 783329559 986975245 535514435 965619581 63591352 752227881 972910879 991121187 908438791 924967978 445025292 689566054 925269232 961026535 22740464 238054336 414874355 539723520 342969021 481509178 751345876 818340081 394167447 960287538 914279381 962224589 895528424 961813800 392625348 674310039 770003414 982269416 183999684 767604252 197146816 855823050 20243661 177809591 405847766 505265261 834901095 964730638 854396099 926765083 653114720 992208462 812076717 992772981 345177385 759499923 999125982 999130119 491159350 710496776 407456922 865261446 399001611 544882824 996607122 997978853 978574156 995975648 995428014 999580264 37718348 173453697 747465683 825212266 316148591 988996119 302910107 866067124 566247486 829998912 45860817 215321040 819976997 938013903 221481088 801759128 546798212 610845781 198119798 261131371 590676594 685670735 41174970 426018754 956821584 969241296 635982558 827380186 568656281 583659145 682228647 781054386 922161253 982686545 456994018 867485086 895841690 973502807 82004496 125387523 146802770 695489851 352310218 400115383 622867181 782330308 514625659 619471596 716530282 848563785 871446793 937226719 933889286 950601164 854654451 946730826 8647803 719185596 544460939 897891066 577172366 960916055 804654572 857280676 304941654 822274092 731805070 749568649 229546085 710024544 805960131 943953516 375900331 934330487 375687636 638813921 660034086 768697842 29246874 990689782 885109882 948747639 983090047 984679550 969723982 992254240 27039106 221436670 354805237 613261094 461914570 563471865 584053849 809768406 245384835 429955417 208863226 954199370 566385413 580560077 560946491 584182919 875748649 879181981 693768729 883073008 771124902 829498452 912189134 943604012 965504307 993231654 507150011 869465737 605224287 819725082 857029749 962786310 427408679 721966834 985885220 994991323 369311489 985166608 302093700 578446581 774998902 823085673 31896722 594241095 529886534 726647732 726981092 762235751 504266065 787577788 881814465 888014338 781489977 878162369 409142561 522965767 53246891 851888651 899258941 901142569 242879551 611171350 358183330 368159062 321931753 731703820 909880645 964923639 855374822 973760712 465243000 737275135 701315910 863440268 633685863 836680026 219979513 428178760 113322903 792016467 408816618 414265392 226930403 308732133 142630415 223483502 689486127 826712611 761352078 857928725 295442284 557958529 563220508 619152157 976310110 993631842 437665503 597260679 401882498 904889789 662697802 740184109 649100753 689012128 495144723 940378980 312763194 506501570 264388278 762235337 466038039 900253493 195239735 310184684 796162569 974490069 893962739 994204337 81274595 826021499 966745350 983802879 866171560 942156844 876031321 889695178 384173648 812331103 916902058 922609828 293425986 729603776 991593433 999447001 583313041 813700234 65839697 409187735 234865330 654964410 69707385 967961444 396298262 474510278 722605601 832966993 804462741 980862777 334602870 439870288 630143583 978201174 822990214 936023556 453417979 686624239 599543923 614835689 848550759 950228214 552077725 585358913 346355983 638665519 779403235 983746288 492478980 527756815 871916026 898557515 755885817 911565979 316821029 705901775 78003360 645977445 42482478 129646976 254544707 714964909 92413619 313549813 496051914 730304209 234723629 649269119 156975228 967688295 569544182 671201231 147009936 308776267 137017156 967074841 209219701 278564298 53097190 194331097 796291376 944481285 424694988 854289852 648852166 902520504 745041136 870621918 274878081 284490488 144278499 829817015 933431009 990417871 975143498 992412159 347950293 606289461 149008003 989392903 172471375 771848092 504620332 596454422 937266667 980314491 722213116 754094899 84144742 962555228 737244232 787099566 499137785 547782264 139030748 233953083 177314378 985932670 170688682 655185493 609931723 945508905 615924310 640352516 691095123 759687220 458410041 868891259 997498388 999508738 869637664 949292609 904515180 970924260 615839472 774724448 52751411 507019636 13275135 18154607 993568417 996041793 811914107 817748293 174670402 656745790 817252127 960530317 665391666 710060527 760887691 993023869 695659636 782028758 296154137 898280772 846150715 875587507 132258382 390923540 955541750 983798014 885752226 959786702 329378157 727927625 239442874 318238642 71627590 204456134 102651591 809746250 960560382 965240719 445558872 465108949 470679003 514969789 657987475 988634416 440022816 665822717 894905629 998793575 405623634 992784249 276033368 353446848 350377368 895740967 972529958 979581274 754602556 838645467 583678345 688428809 384854908 497677162 987465565 995875726 336112022 806881528 310975460 333370370 550584649 855157249 845429301 947057511 526319126 868691224 511160998 582742301 187627198 728015893 232312893 963492395 440916898 523636077 923708588 967238237 680078069 819106923 671801796 820408256 920555396 991686244 83010091 616003754 939735734 957285004 291327854 427983650 897241464 952323200 761164424 873314043 580109395 585683758 242020384 778077545 126720841 563982148 419643897 536003654 566631184 845372027 821894066 914608525 934223346 963387196 726718315 771489834 939991958 998856732 187358158 946060605 474098165 790412048 771690753 958073658 2294631 15724051 849604071 923378416 456301734 656961635 978374844 993973432 289839348 731927793 829407190 833436421 853204590 945560580 320726295 907437016 168428588 407167662 452067250 835821637 868339584 883695476 755238465 817089897 299213971 310458845 676107971 731301367 416341027 656601739 228875726 805399145 675913285 753854711 926608843 948332741 717807981 985439945 117377729 729078745 107683940 899342950 477824143 707897133 46854083 809077481 392835140 914063738 580561604 582622231 205703082 834005210 44774056 881807374 881105998 984031989 409493846 488890966 943342196 982234978 347535475 988057269 649579071 716152308 637407359 766651369 609548427 613889463 925862242 996898201 811400092 982905530 163296576 251891506 370496733 596293226 444641016 944089175 503971651 640411011 720123280 960532051 792461438 813745776 48777587 531397023 707416893 881121699 241179957 631528805 72462468 517902942 12112697 169443076 542048529 672486125 464812818 893941322 319264815 422547053 253547860 290031854 853875055 979347971 641027992 765447546 754345475 771098212 205996948 300476352 490144983 901978149 67570996 808762124 1681610 765371266 360173514 377702032 58196421 773177905 250831560 549270638 266787380 442189795 904994439 998637947 750546090 779969004 125225942 795165996 863315008 912174688 148286261 326037199 104313969 122843930 166217651 542818584 698185269 911938580 100504354 848555573 856806760 891088171 418179812 431675643 391253571 615197219 745942769 934945736 239169982 587525183 318642089 714277680 721686945 764555871 699204954 888546295 121399024 433699318 969366315 987507670 550741002 755038255 160986108 195773894 474145817 832936045 613162318 659954358 761633197 883947308 758688077 995651339 505768753 874217268 536107868 705293736 403141251 823681241 70108004 254648760 828246637 849866561 481414542 594821846 400591154 405734022 200028144 204549002 618371168 646922105 475778832 666171035 520367854 599109261 658552056 935357162 862101808 905835475 675377667 717766815 83910958 714466350 666937941 926740853 330233952 962410628 234131873 911891900 146013124 162244985 151385655 571017397 80251493 591038439 42609714 803022931 762355506 874960334 624549200 689636672 73270573 617714575 231977269 439437369 483860900 596305025 628941729 737210300 462999502 742622927 347035617 514350293 392681312 650637043 686055565 852594906 542631184 669877915 123660691 868540677 819462920 897753271 354363376 682584074 825944570 845492018 695171472 773287964 418507143 760783895 92181543 124234405 17596344 136270385 273506290 620255972 378668121 664722072 282477710 935424974 274153603 732115425 765978951 878315643 649913907 779848951 653763503 786916219 51166524 84986272 263594576 525292726 440151096 551896955 739387650 942483718 419671917 581091609 381644113 933917803 423236916 949500096 217639674 736957160 391464423 453530339 6856375 57952466 395574381 817245408 561156847 834110818 977808363 995859509 216839847 331489773 512460402 983043668 349025179 655557730 316835752 922000990 827515990 845135937 513456847 928575250 120151233 756729595 411835131 426538270 157059436 526745537 903913752 992085699 175753553 758825663 120836088 701109180 456101820 743282393 61839249 65219922 164889576 681551844 441583670 535894246 580219240 874767202 152968882 202645785 935708236 977738956 498898692 768533912 641592577 642048992 22012788 542433233 455042915 848063248 424023454 728621339 688218167 976085344 984987982 994432734 894208284 954832679 488759617 639526912 543229952 726058324 883722337 938012628 113197088 724714986 486431812 963195075 714377789 980868642 772731609 982992306 716134408 801520446 460355077 525520249 325053011 913638850 855540018 887890159 139661596 702576374 327603073 457876091 730001262 941978872 214222498 717086419 988111093 999964391 816676500 875263783 491612148 759960162 966762113 984001876 503847107 775306837 746417050 917591604 472073672 941569399 200144894 993605937 615859178 688759327 493571747 575868012 438405014 675692890 181906957 828584917 793330345 999619947 592969209 938199511 222721539 923478121 975473791 989703853 456137566 775660435 454174413 558111550 663829486 795659510 704854601 830804001 32124641 893621521 475569976 936364159 120459266 182064709 57620871 718360663 960150213 963035528 726317204 855739404 408478709 532920354 20559401 628441540 973714748 981190660 462817949 887181226 586116451 969097858 302689674 922678528 277327355 588111683 127505232 451023485 400176905 431290614 66072283 640503238 333971077 681249294 369635926 993022715 352738977 634698353 568659223 626278211 75547994 657700341 420750605 686832107 531952187 567383552 192630785 640901620 484125452 773013091 936046748 966679589 349890750 706579998 915481891 964579425 198982939 962257314 93004897 109952491 225812397 899375627 797646115 931098149 737770769 794994706 589743528 735511066 496821164 744374844 72281422 425057458 593556898 955087921 663884366 947661513 878383225 907785951 934841142 948459144 49785101 774061933 981103030 993274673 155983948 330857330 145943816 641358120 699571670 756943422 476261736 804442537 253258675 761658000 488228102 588095703 168594510 759282515 310659087 545826000 205801544 408059822 536224591 754174612 440372475 621046283 850370123 904585368 340791436 567275635 595858847 677418283 23569532 938423134 23126646 173304881 285736340 805765524 931834608 989843327 208573568 960416005 52173151 545857958 662715664 743327494 987874363 998945311 377220921 382170840 171875358 327723455 375870198 593145751 14942811 775641867 908589410 936494116 413097224 981185516 460298998 909663846 774932008 966839132 714387924 959119666 937216686 952964923 286888081 771817161 536626847 773167362 40097112 358212660 211293156 711471995 401287032 688954615 325566935 477760189 282507226 871771038 200564969 665636851 94346945 740038108 125053485 414720853 609806865 709289088 274597372 529001008 189381129 649549845 129203243 353003961 738840060 745346279 996604163 998576844 218991239 347888656 347591935 851445128 568359224 950664063 509146313 915807848 759337486 949786687 161760466 722261883 608749078 670600400 749597224 846952386 560088874 693363135 629050089 757371236 147625456 923341738 943586650 960906674 864195747 885810296 421727509 958895471 995275654 997810967 363718694 815856198 621705141 666911425 220070795 532630356 738168642 798076690 206541454 560168403 273003791 760171729 902932953 908862895 132803033 755016894 662259774 752397421 866715409 989425357 605014157 726383135 533712279 784389754 281748025 654385387 133935138 337012262 267787624 374760580 236430694 739907022 829759352 993896558 125885235 165134688 518429791 956827864 538370080 951855790 102037456 399444206 374850485 610310855 20056728 648792718 626300906 846812585 576778062 995668610 823644556 909861731 370496074 758949128 211745892 973004760 554776745 556091948 711124220 841877214 88582751 816081977 487809657 638627364 26364288 276870235 530410125 679235245 512782420 718523415 166598712 516995372 381877529 960830537 501182494 628802284 34625946 161964965 833142532 875325725 82341692 536184644 797473455 832713542 239189042 420811342 921909690 942547847 117877266 340300952 488606814 976122299 82978540 924732018 19426757 136328728 789530356 939458269 782265947 818190797 182549640 760369929 630326261 898507564 417409960 714321144 188685473 984627881 830981328 989388167 88605185 199146132 794148702 835142459 268388481 339043440 815070566 886273554 686279636 904418921 930271958 941939915 428016877 737795503 543249129 857040037 282204882 939806843 79418659 976777641 404066441 509632075 419238782 632060142 514089886 905181664 861095664 908088951 852580777 935176881 736422363 922325824 75788181 971524323 616744567 941849195 927805107 986258905 389442412 946141553 775685123 818482332 682122906 831169504 619161083 930952437 326049884 844369677 141226439 255586831 595852623 936181444 39929296 780089276 152296388 421127445 437344545 442284257 634845365 725089937 871921126 968826175 967372625 984375888 865111582 987642907 865285198 969265149 241983649 271821326 50250516 999329320 67393513 754578033 821152951 832722084 624810759 707774413 5012489 5252247 322141132 469670073 875615353 984216954 196099975 205176698 523142802 827470180 927837654 988275060 229407943 300481969 85312289 695926549 622690225 651532807 238029768 675366480 974499060 977844246 323231454 651568509 506717379 718727261 836616711 912935643 115622229 391732845 873419094 989970000 20644568 999105166 750211440 990847848 188618922 538381096 938365820 948278492 425894112 427809826 52186298 279268108 308981132 854488297 417109863 475920629 295955363 701575615 733831718 799176681 957616645 972358743 781613451 920825493 508907759 896982689 574682648 697313938 25365949 497127901 38762958 473298069 540003020 738677516 138240799 442940682 581043520 661619556 274447550 829436344 223491943 878874175 212471612 511760013 578634230 794949440 983174589 988213731 6799918 450011836 681357384 984243529 387424292 621038334 631941411 858033395 555709425 789229379 856498318 857772897 167002609 903588471 640919914 769929439 535895303 643252051 154453069 439681858 966055242 968681295 506667771 917877939 310975334 939487558 750321865 901237698 690694992 940591269 657856328 828706763 907802216 936438815 429957670 748568915 211937445 506943020 351822659 506746907 302333197 449349923 626967092 731045207 473398901 597312647 143045995 757117995 260019772 878506421 345361612 632363090 173689182 797370179 772289179 856972801 204836146 457858656 492229655 723708605 656535270 877240679 70671867 786739093 27972841 487120184 614990852 733352263 729289714 984257604 323057932 725912851 672816623 892311653 439990833 976070419 409505513 993147985 561074738 923766356 212924925 447223604 844819605 948078189 574688456 805862092 553565997 884079485 844634331 891945711 706858520 746191519 676008935 809746129 760820654 913161224 377824153 544125105 380317174 518383033 428227573 619071233 418911487 456166497 612844317 900877253 224126749 820592406 462047277 933672694 950040538 985753822 842753724 950833709 584674591 880681203 448043109 609839085 308387879 872074023 738806330 868559305 319099834 804215304 245251497 288852932 893325533 982623479 881823842 978371126 520360550 949592869 36718816 843100267 277716495 803405063 10702226 298250199 964655642 991949405 579352558 731984565 881570593 946775621 990028527 996138149 132954761 815193613 943214521 946526918 993831977 996452651 543250125 857427083 112111739 921928314 476561280 732342564 583236283 834665182 971728376 991529999 258989628 818070135 75501006 286571926 26798761 202452621 606915794 725581543 651528419 832861114 79124137 744074141 10235536 526113974 971032915 974028294 941380896 965335156 921944831 963927581 543952058 927252127 427398690 987673337 839671477 940703040 532619134 564947797 818458529 982633629 116920012 434010707 689556563 961789033 943874742 952381410 625371620 822054222 962610154 998866360 646709437 658988671 988189055 993505136 940525689 987784922 593030158 678812250 223260641 522844170 929736487 996128455 168970082 807837713 793372862 925394135 681583249 880149288 754914808 785464248 525701207 896915196 525057011 589284043 271117579 751100769 360588000 530001745 807084717 905993425 410010087 931002414 93341425 408573180 146175634 713486340 229479205 659274032 661501841 967083381 543152490 773830859 878508816 956180843 715229017 951080971 351557247 899915042 451700211 807864402 17331229 893707186 607637037 889515207 253218777 355319299 147466341 554324290 28575722 962955202 866832839 876792987 742353913 886039716 516235707 811043983 988089638 998588385 5698430 646492513 685004322 813586209 436269733 811407594 428096855 773737077 933476099 954630965 123699888 413202993 491614336 713342552 907211505 957824719 362477858 903043545 408842169 637961199 73470405 145186967 121855787 592109326 327539660 992374613 634303813 844851672 482052067 514298830 171773802 553802877 438384735 748741777 138509511 912878577 699771686 959181645 470358167 727342939 282391660 683270501 115965268 642117562 563939596 768106698 558988526 725973844 874864441 910095125 215338542 484549923 329255687 957721407 834250974 960971543 682527726 814498400 956386851 993280779 820914232 925601653 469443246 517662694 751946121 907451541 607684585 815914063 329533923 610680922 693373007 771709034 548813399 941463133 18547129 108107934 60108999 339814135 102933707 713285636 401359222 408560656 929315159 985138851 292228803 759413221 375530698 928544148 790307104 855968827 274085753 897558284 10193195 269002383 891551832 918668490 521876639 568436276 817132267 998683948 254783803 439573011 490643735 768443409 637489558 788496567 988550141 990617889 721241095 873223130 231906078 667263925 431717615 975977679 843475047 880252282 762790954 952021726 628381764 749627153 828652295 926664343 118694008 548457834 237445746 249235584 359030913 991849389 682925385 892302248 267218756 615596342 664100145 773320301 955924484 968456795 325470192 830215843 321300322 546364711 261716580 272024420 235759261 882532464 575997360 755749892 143921344 952255729 851942916 889008231 20214639 665001739 29292315 611870016 817216923 930393568 719540925 954362279 136178760 326868664 762888826 844160182 816769413 995441608 586052223 954667824 472501615 998838402 770218058 781934828 853007738 967018156 634627431 967603820 107424324 605724357 214027389 861391169 199800789 928828275 788044385 886000826 50980480 909002642 293968838 469196460 313660075 648942626 660372336 952398795 282146220 544702295 936603766 993760615 276835876 407003541 286705532 787063112 477146392 580454880 515642705 891402797 228124275 710383740 190100578 672472677 532014900 953248774 536947902 669023946 537371946 783665044 579504545 687525306 965911648 990141321 146211986 804249381 381528089 697731509 583537900 798680421 183119315 580315628 922623269 948954196 623602612 750209649 910694595 962842231 883763478 994523437 69386413 936246509 304674556 634937757 658501128 665307695 501014239 876346809 210364588 886601217 921873139 993822671 450125998 931990660 517087621 773863925 339006549 373945002 255536779 524329810 774024880 818087325 510228067 832806465 253699720 550193531 894145600 929995199 411455999 791369604 73422909 705630296 745309897 958387319 543277119 560607214 168504394 844754643 956022070 994563390 344056044 827190491 388281415 975062034 910381723 983620006 201166811 359085622 345406267 830069773 436301495 616742757 265488198 438645607 774777931 867386061 36087408 853930938 611134743 889435672 840353824 929577983 430194507 839927471 921396463 994474382 12444063 17389659 545545847 928048643 607640431 680422393 907011169 985558981 703173032 919497600 131482407 535876580 554787488 790752819 945372125 983080348 175564510 431735541 383769796 627226738 320589437 333569502 701503169 937258423 647874035 685252624 147872810 183269866 439395345 977640903 794437672 996059965 261754029 583826105 825022856 832903850 678294213 864624493 561090540 776421760 158539725 713774390 684031146 829312503 227908147 680236313 835179881 844890191 378229993 492387729 682798865 800449686 369714969 591479720 761681352 791198331 868696900 949684671 253681992 615366180 749960071 850166386 451584622 744274954 66132223 427082887 984636304 987517690 988386888 989920024 787493636 999218003 134048206 901353334 981603954 991413463 412262809 625295028 988027700 995222654 571997658 936606684 492560377 980657117 646299476 685245321 616504290 693165338 92451647 679759330 224669948 350160510 413716864 869810996 482720142 970292227 331667778 839901674 138492364 415960986 832664644 935690750 780425065 989463189 521821033 936340098 872620098 908787789 523713809 781219287 65352987 220126055 316265584 580869254 863251184 929571211 483901899 866594457 357381135 754574893 365887865 738748462 476202765 600407408 562206207 782911131 761674052 905375698 436465770 844438083 132090573 552007453 869789489 905392445 425789671 641398065 641266502 786614559 778648112 857577387 745524940 845283693 358536236 930044090 14483686 915914526 691935489 695366522 353196447 744455617 202430157 533398984 599652985 869153882 573289737 728599161 978363808 997733054 432762274 947265489 696837445 822828640 641277197 715091401 248064014 984561966 821884487 987223389 804084068 878288979 103204770 473620634 265698503 406897267 96596974 329626609 388779288 581704090 813931659 872942541 46728134 404599782 882079436 994495487 265571208 735584119 313523260 896174000 264167789 305201896 573284492 722121702 664550815 793633072 15789294 184135956 17139361 255156571 13712276 380862811 862992583 987288309 779616591 851665653 203294158 542508954 610759803 750181104 316884069 484518142 297787672 735863269 824987495 874157915 811546257 920687036 339272688 776978153 742157922 961424037 138939515 340587618 565528999 640913185 302847601 798785124 760656273 785737131 620701264 635229166 969839526 999851912 435154789 523491027 86513991 360797441 719281477 837406492 21780073 519112560 591672274 975589288 405159162 758851557 482832359 556855506 24796901 812156150 849926743 955569014 518603376 538394647 670164879 859681493 158230895 666346131 148130860 860943064 833169416 967475028 525041340 712194696 703728083 870468892 847485646 986921755 426588474 765315478 36395576 123331427 444838377 529190688 683445530 689758568 406730351 420187096 406879161 709788125 446838266 767952391 678402246 969483611 641611971 671337912 238291517 737810865 232468802 365327377 565079348 575563722 646209044 896071681 201543919 249552675 469386221 874847581 888842873 920570419 240218234 795656407 178663276 911236534 175477294 274853894 319706753 745406267 720543292 946774020 444227130 832806782 766064952 866873997 337534026 708778652 563835303 894588914 923711947 947093837 688081563 797458475 18535288 866705481 794273531 876530811 81841058 896509748 920528362 939972785 897685807 989553821 292910389 570948493 172879523 192149684 203349403 514589264 600777411 970093792 430093432 953721476 348441942 607013753 295166388 672026818 139741299 391166416 236494094 943075376 315842335 732428853 70593643 782744378 461325264 897156891 244096324 789436370 60671238 212025952 853231326 856136465 90346316 106431834 733400028 794924057 13370869 977333082 961787868 968243792 531320971 860472698 493521295 562457891 370288262 395098839 352142633 979938926 407773176 449634701 979468131 997307633 758653160 996101762 31321713 258408436 867721285 958572940 569818879 793270030 769061934 982397069 857487440 942030235 652844156 688069802 870748820 937696050 24790036 761972909 540742721 805543608 290482801 979442884 181547452 281831502 835546962 985685874 345758780 871438859 575570331 638802027 684152673 826311986 32244720 63514819 772372268 836703364 24185357 566564428 246275113 361170494 770916969 987094753 975112407 979579004 380386663 439299731 490007931 490183964 992548168 996365386 664356272 862137210 870269525 937851642 655721524 962267700 693562159 847555375 178005511 959872038 572972177 754190590 729147864 886544871 112901052 541664649 584631212 948761864 671801890 739189668 155587698 336687105 285674802 919587661 341857688 755719398 601370348 682704145 732012414 955626395 658541483 762639613 303197901 925533739 334811346 803551740 98790707 107152609 515947369 853267063 599058232 639598743 394226524 808582849 439823928 625867805 425312897 786540190 764047505 813020102 293286454 467527616 783635702 964694437 50996544 646019596 514360507 763202377 820711050 944547012 615308660 761029996 861860969 867194730 678940025 877532646 810731153 981218913 714939173 973895914 285829024 566390256 461363219 889935690 84888965 846849974 580057746 821173440 135521457 309253073 460038773 774391601 859293614 904351385 267513223 860525809 973426512 986452156 310043021 352476908 275046996 631330959 875345863 965683152 18677683 941032108 425495891 909393172 141759427 710224366 240223616 458297032 409998362 604005111 519244158 938746995 635427501 954237690 375914867 542828683 554354217 808205280 644378377 992523910 188941503 278197636 700110145 817405320 231822234 963799033 48502879 184605700 77919214 840720551 893767547 926116013 208472623 766154653 771519934 950673841 315753142 718277801 679977582 811360992 696536343 949558220 411785202 970002672 796592240 817840140 801464066 844734509 695857763 758231268 405493689 851377700 194405612 522374293 848399787 998973666 108467996 415714186 520008090 938733731 85211699 525399715 627351032 774180931 614228227 856947285 124467948 504041533 697642250 697818623 23524821 303629906 974201116 988227527 160239283 203048777 595211175 985625239 386306554 740946608 543428093 883747617 192835606 807566058 623683527 678018645 846749318 948820287 744802320 803554428 34430189 975241399 651827224 728643151 581647406 869436999 858340770 971747393 894049970 971737533 943829791 961517446 941544562 985714652 301212600 948971251 399508339 817234853 265890853 302344676 160250617 292141109 868006088 877850266 512398944 831385957 203312407 756599126 261855905 841570554 822133404 865388149 82940284 272940673 938432593 965465622 346918105 937865623 616971365 843106408 354521124 853871272 43184805 70203840 280000248 469013989 800259320 964292495 653117690 959843291 809742066 885475085 632318543 741004830 156139027 517772076 237170910 913390901 805689266 835640774 923367452 955947502 94745097 656169211 827607650 939848502 289940347 471511806 582531354 789957484 674777449 759382950 465622707 626372402 18569636 595553596 689064904 764572930 235602958 903942588 860944464 866079984 93318901 792484741 595371635 742473938 564810771 829548218 981871521 992334436 417392547 589872646 754469160 823648400 803998363 848749114 169552460 395752156 788799582 998436633 570152871 790286751 133424761 887859261 919787753 974933434 653710984 775003112 517347421 873203345 920614663 971694155 529302475 912325376 193049149 381485322 797184123 942624712 524933376 897020121 868499095 894884359 826446240 926299759 897970839 910344991 503823259 964028355 253134743 624888122 353820373 426323967 131070237 246672200 167072961 391778827 182705467 350709204 269510418 651305389 465257578 617984163 837745418 881824868 746355469 816031764 944828028 957420078 229222249 532559154 222693577 871158952 725907386 888735903 321881536 689116248 273886358 943066710 972008739 985291104 44363139 945082639 531243176 626708434 193000985 587031961 330695969 971154673 223035994 338852992 638061071 845970531 157526664 791554025 756281867 836956534 747793901 935249843 139845754 771140202 82922113 659961587 408506585 865596655 801981404 987701978 864294302 933489602 962588963 982088715 932880024 985508708 964919130 969273229 626111771 692041714 3668131 709641968 236031604 609801598 181532291 545629404 411962476 857043775 894773590 980650939 649110345 881812605 59020335 62299532 441668108 475203368 677103307 796865791 369130933 664136696 968030126 990385512 335967665 552842809 924746588 995201361 86699142 630930652 61941937 158302309 845331635 858987468 737163006 986855944 92131773 173858243 371030058 580301435 179152380 856342022 642415115 706229059 399835264 799947289 497198585 743170006 843612571 884503759 726111817 986550002 953472799 967569513 66935943 997879888 902217709 923783810 290093436 470208075 224204290 962383890 321743057 930111761 176624680 852432646 743586039 937329730 92013761 796075243 27621715 922629352 260220466 549864169 786356724 967776906 915538062 993240870 446704869 697425577 987632581 996808052 864840824 897006604 229583319 515460559 338052339 870382780 239208476 622655375 968706870 969815719 856222043 909150828 92524861 586513111 164793050 462165209 265548286 359895145 574343468 631694527 198166966 773832412 463241738 729340802 626346497 838785952 239836108 942764596 34548324 658513464 370296345 897366077 373456392 537965517 113004133 947941117 223620445 541178958 124323554 979254774 767017603 981370084 929396539 948031089 723060485 800223888 8595885 633615964 174059661 871527164 703255808 908456652 593372142 871611700 43549083 136999762 755462938 989882421 646319765 753967654 411056551 896277437 901741059 963840777 332636293 703283580 640689904 974489862 540620183 740876764 203315955 701337523 246562954 851143812 829296828 944128104 823097449 992579246 619152950 995549622 995096873 996370306 479952149 790548030 739347856 872108656 238597108 808990091 797110560 995991189 189671362 630045911 222219101 273723433 750417533 976376158 934116326 988402608 629608389 996092581 275003156 324638140 724811869 955854626 595299817 985205658 838767702 885287517 317975906 859521089 153218905 906005554 970658683 991319442 187415176 548977025 261867074 957144110 180983242 747732970 517249706 819851425 209121082 812660247 374544493 987621174 723433697 866539610 861252840 933179084 250473615 830777571 102226615 831218360 551465056 715647755 669846893 814859362 260120856 763190988 679374043 733792431 3140409 849072649 744449736 975756457 486359929 925465229 4651291 397789101 139623736 363931434 861428496 938026605 977445011 998409702 309150107 992655798 95983045 111082415 357193019 399338233 30472705 844914893 262573688 365075061 216773749 880554999 671572626 925956056 896182595 896692367 241400278 833694352 2360358 504526737 344561358 530305021 618078164 779266665 184721418 660804109 372260773 870091158 751510661 843974429 277223592 383740428 618311367 698267657 726577168 816234220 31305421 181168851 912891550 945283300 553365882 907241138 121307388 826510783 747605026 872203596 971437223 978338623 445557612 503263773 955180573 961062862 66260337 293720446 468698185 611389087 756593968 947932186 287968496 607561705 768521184 782233884 787264704 883870189 289128252 774290335 286535096 665843821 27809224 116163033 157340541 786230592 402287819 968037324 918216793 951667876 52900505 267752916 488403500 885170862 527014580 567008173 649297389 932606491 522736001 632151561 709247180 928828364 247944820 616527642 720729687 844437897 654519540 709859292 861780999 916478064 638226779 856266171 886464684 954252718 850174709 912975278 879339763 967582313 899873142 945944186 222022650 767145211 484481444 812134934 246543474 492057577 580747443 890351608 615216945 841149885 146347947 435541620 322841508 915881765 582243097 853215509 484493992 995983996 103047867 707988947 563897330 792467219 114425937 131613966 158558549 684281654 672807239 791345117 607225526 674069292 788032014 844571607 638632252 659120791 584005281 897979683 486441302 797695158 588945885 972314489 529200666 687695099 295120066 868265803 814118293 891663078 324738852 951152893 437712589 587031604 299343898 751422542 638449640 715642052 998894607 999660356 148142916 388221874 759104369 809512073 218604411 430207126 982840511 988806577 143277020 650105272 663976994 859577872 767585130 851013562 184768802 190079175 206120301 864641811 439779075 627889351 778016446 991954075 765735389 907899523 457566478 892239326 303041447 515934273 190536201 470755055 663280682 906295633 813044778 889979625 360669397 618610439 551594030 588685168 926061387 936636993 72716836 622742653 321803352 760022584 416304769 602574949 297360544 453249121 440708991 580450571 510428011 969365048 671473545 749231845 13586383 349653409 647142901 918246687 848760411 887331366 885656130 989541320 224668825 764655729 685751652 782996749 719969108 739725307 929160941 975734594 745231152 961543006 374498480 907150758 541074384 908361679 417612421 674912212 807149076 833529198 734099312 796012001 356409933 397172775 602021345 672447989 894211729 910495131 694650207 940997027 568137062 631885683 380431541 788446501 473075461 645413518 438933198 440867734 306617209 727748875 177997290 282102534 716583835 825822656 585506646 885537739 110612329 260630370 731860615 950420143 275948155 586376696 325772334 658355763 561976851 696562999 515704195 860179329 141674286 995825793 33872047 301196083 201966426 277559806 395449663 776865616 718742394 892313769 383524869 629756318 371390443 730703047 550628129 780482992 230426123 827202272 502949163 570375623 58185643 231846359 202677797 908375654 113656446 854301218 691823565 838819160 835108276 957004932 833059897 852467658 215778407 239930310 95912312 589575146 853128703 924983213 842145314 931422520 655647993 849840154 195361175 744659886 855211268 900541752 954215313 967092203 242107488 866349310 44951116 412630106 35186276 682151914 588648977 677565233 180228030 529097279 293672170 926448381 9021006 351571368 712078117 751185979 849229825 951136572 53615526 916032087 122534915 782015128 803779526 820644536 373282577 745906318 458043798 581357510 299723033 751861328 278635005 469785949 832532330 866863262 244752296 446919906 237517066 787836258 343034529 363432896 341006742 927132285 230269810 339684798 357891037 388994643 800797910 935481034 166918817 305293751 205195833 637820921 638829121 781565636 241512886 668717297 891773490 950113346 269329033 879576382 746829180 931614462 389100678 943985829 583685750 851391297 360053658 675008893 77638668 506550950 831647000 863482800 960326735 983436193 509720010 699109831 910435015 923056615 351325982 828719401 690874052 788387684 306920854 983395215 508435194 593566170 136352814 536322139 762337992 923196714 148886622 470899311 852547750 860880859 642980722 923248190 127032302 962645431 497334649 891782662 835726471 869718371 95521260 734058693 378480859 443761115 21224252 738254918 723408589 977585500 271959733 789626676 916438493 970325330 884683805 991505521 313215871 825423369 970421951 986658809 575640264 987701435 917016396 972579211 300864017 909077247 336572062 966172306 175448098 552030173 192012034 515555529 41939498 824552295 120104439 485486384 368342257 861163169 102919186 939817290 136297188 686240015 812455612 847536601 829131234 970849422 835340826 957821544 171478442 730186081 925128548 998728830 223955350 250083355 37670142 474924922 145638494 337357406 457573233 573990458 93775846 734455419 438501703 818139480 887970100 913825852 694934479 744087346 940019541 942908925 153060883 229685210 903651588 913270039 925103292 964225780 685543597 849118899 25548339 331714091 124992852 234643070 511013418 768549846 875003566 998577990 940882061 966826155 186333960 704904502 355297653 413543565 787949809 852651507 659713818 684943698 730569390 868093444 680031507 746244786 752687634 948574592 673476813 738827452 255098164 450430231 14007262 586787633 692161580 762792835 558855586 810562753 188878411 233560522 831641154 881209118 947505906 986437491 831439408 898383947 132382011 562698854 929193458 974064372 367401832 986715673 808849108 911764790 322582207 911163987 183114245 934884707 118535685 996814167 388217953 795533688 620885146 840908383 295652213 300252931 649655068 762112692 876134089 953224386 813028129 871968557 36016057 248007358 625716844 996382684 588991058 991381376 956817830 993471409 700657593 869517526 21215289 397618486 189070651 703107912 902566823 928684436 869429672 957641215 378962259 580186821 825402929 854226436 103080696 370274329 607806465 697304517 411255826 903694461 637440667 827435115 764679809 888091913 353896324 713527498 387841726 439874177 302035876 347998310 26806821 570778177 999822747 999972707 304968382 680735281 192476428 702490967 992720239 993719864 662647980 976588037 305370181 686410516 796586901 906918767 5646727 395496927 223889406 320728586 480377574 567217948 12217606 751436468 938391175 964393579 971323299 974662704 743413500 780546190 783229438 954121244 433962122 857115939 628833486 844884751 68144884 698333080 33714066 221739222 417818176 891659920 488659307 813541368 994187497 996086561 855220472 910813426 505256701 538806736 386307282 925524151 101139596 683339081 251511579 485254935 472748337 664574859 979009727 993041298 280639744 663813359 99575148 510757806 335201966 599373453 846371767 896835810 730995101 877765129 877919731 883212412 448290740 883805624 557354528 840569617 514179433 678287161 20796473 413368349 540071950 599290547 175187221 791250229 535811231 749964442 935610868 941887831 479478923 731283859 879320113 906282133 906469087 982300795 201960264 614769410 31807456 687617808 552362855 572549855 478110855 695211915 559515196 795632627 712656826 790233113 174493677 683879539 445387853 963410903 268545040 321054908 812595542 838724439 166687407 441570752 784368130 940595310 25347812 686886692 863345346 958692068 95966978 203880007 902909944 999204613 142794498 624529629 864452502 920432903 772606517 891834262 360858341 515807215 156215387 945453167 445613666 738046131 915811442 942242677 578242172 649333383 234654601 568288815 369222594 709778564 357392039 751099089 570726239 642988183 168542169 541631414 740850373 796248323 594689285 988976545 259258744 594075465 765998873 790041201 457551483 965681519 823414831 897161332 108106208 935076294 246783300 943377303 900137840 965868377 587515063 881678303 962649588 991425640 991680825 995595788 589349639 836378282 70735084 813127937 708671127 807808704 245991471 829234524 423432868 787805912 926206108 952593770 227919918 720036609 183143275 652391364 162764245 592808121 590425860 961993641 12287270 358644363 318047289 602180029 81649271 952489454 95051952 780578814 939565880 952390788 451642128 612451430 253298848 860203467 825491161 832798637 972897814 984634859 604547840 813472247 196556019 199291164 161764658 893877073 10374841 893268519 423963437 670636006 513184412 971397998 700410118 825229158 504000850 765498478 642269713 777707735 152285613 843629607 231299471 593791763 858163274 914995115 663412872 835445449 134307446 937317135 136016848 751889074 940295353 994508469 70333678 280072127 680656472 698278984 370390587 783198057 643782994 898548884 977140485 991856660 677779925 824048518 171891564 267540259 337712580 525137460 162997267 597786795 489289290 930157985 494959822 931769941 274619195 572984548 2719118 519401526 589627662 736514961 284365891 907832082 951241408 961985462 915136571 917389404 330767509 770499598 749475699 822782628 656071174 686270522 636340970 957294178 364277785 991075574 524516150 543903178 539370020 583914623 283807028 659402077 205581436 995546425 529822113 892118938 552553865 576186941 731845172 899341155 338767033 720374670 459989881 473726416 237319872 888258579 511259299 518380476 802755340 932651072 141661869 774252774 673111706 868275191 510648955 840091186 632859151 854821131 423818499 641480585 887071927 985779352 870263580 887114109 663356112 791129107 511075025 890671014 96440068 876021076 42352450 617609995 707310562 849014569 665626553 871744651 345076193 516956685 13675594 194298523 438138822 449273787 673058663 883811917 342126199 522851502 406067778 473058229 675236571 933420442 292190219 774866561 441823891 461199966 773488681 938663850 486074624 753277178 242569731 675216041 584834095 974461587 765204629 805376829 839914946 860414990 464907143 707204504 530312682 586534715 302399452 776453286 704088366 704195005 660579538 851398389 341771924 966926270 498764188 552408893 230639671 979944678 175092380 975903898 102676064 954442647 999193085 999443170 594438946 787140261 449307364 781645509 129643121 463486325 24686563 514278277 61506932 339669981 57262101 433169870 222821594 762484348 99137789 310036608 250692959 573464397 315972457 993929179 434627632 651147843 970226917 981763796 910033011 918168218 443295071 782436207 377490974 857308340 675113327 992036305 109063926 216939806 107751210 795926236 65075784 394912155 716614556 832684217 628100212 867485024 882390230 918189215 125387366 192323013 512431054 907515596 894436222 955686296 927160832 973221755 782051076 887395350 729604384 863754144 966776720 989337262 962589044 963981660 261707061 293644002 639614733 890025483 867273089 918529385 397701512 898941969 809227966 984611098 344182833 963860647 630692248 901691910 307369070 972709563 913223454 946721429 257224231 266891518 772305124 928544546 752317883 970770517 712816453 957545600 687139856 949446200 405825598 542565682 348516587 736588748 678103094 986070100 331022034 872946837 906207968 916629627 348771124 745414195 363132492 382346837 6382642 201446040 498454867 744381877 564192690 573314652 734802242 755231587 851028569 951802875 588845422 628200992 560224900 730163079 960596978 965174392 851657363 970387899 214694295 630439565 989160613 997840465 240041652 490806005 757371091 848732425 636795263 760869527 839049188 980661201 868402151 906589224 872218232 995159014 269143521 802107102 877457231 926648862 482431824 515601719 879301409 938815509 397270719 441720556 333137453 965376365 315036795 492173413 376110948 426152934 664930568 881467286 199635238 490229620 954294191 963680405 481772028 788951228 267858211 282258175 196166238 602657833 440023723 725203365 960616440 969598781 224401870 753043186 454387945 858401865 669808818 682247768 983169461 989794623 242574104 918901283 25921761 450421548 739383373 990979728 408029207 598138143 673082600 732249703 196436890 526434229 909801517 964142977 306195522 702086740 812372667 837085913 807214851 978089364 92413426 720342455 221573029 464242063 239845971 292640839 53195390 541586707 307245203 857661776 317241429 389282462 339716814 887533779 696776003 905127040 293395920 735258832 971718734 972504166 975841460 978926789 851651191 925183113 210250635 361796169 599154843 731709755 434012033 627282971 813702377 920658857 596834963 914226028 606950101 940254642 617754855 745702641 775724051 831458459 42039941 309779527 551345928 693391675 822962254 947814983 489050967 555243522 789458092 985775132 839263458 920661652 918893127 976301827 381883804 664944816 369534422 735906366 757892287 799048444 689298855 856302981 78504422 675555727 802047718 974315726 836467641 979905242 730916396 789739587 547505606 787368131 632579765 854059797 560775493 595471236 555182672 559017812 921878972 984708753 109303668 856405587 245795697 890978731 152567112 760541578 559566400 823125653 871692393 950712964 290549781 300359378 873564644 985027264 604628465 983391562 701657577 872030204 175345023 839361533 379876117 648977138 263294688 390291960 474007806 974596324 494977008 501201020 965619160 969177002 171446126 890504125 470575737 767968899 509927778 532057776 827576238 841741816 189811078 658726725 669829489 948349863 103031293 569618839 613574067 973394152 13021143 695071312 576511524 897835883 964319515 991123542 60740160 165946987 104502877 570692130 116979187 507573809 142764465 507182453 546096167 674136290 688255344 897256083 629491410 985414791 51639477 790929424 707970934 760820122 727326476 749170235 198580617 344854009 605798124 681844108 318711799 958160027 604775524 676331062 38131262 90503824 251882886 544930595 735798539 830674581 382442022 561171206 421627758 464611632 584949381 952833838 657487167 993276721 555860673 838475460 509549777 590107252 279351500 409891253 85029199 543573142 390628808 421424814 846498275 893258470 618442106 754900314 693291757 836884053 587247926 931915347 625438641 746341751 189627680 199135577 899776549 919396734 471959030 801237408 335223662 646101047 374199162 441452399 316106836 651907971 782247663 784156360 49846978 158617771 466338898 574523987 836932594 897436018 997845423 998808097 272962698 957139173 519840020 742025484 77497207 397603183 967398957 974020103 54859951 590563575 1647864 414620425 554578928 702947888 834928911 879430058 680800788 921108627 465531641 704111709 245648945 990416918 261161646 902484483 874169278 996745980 614865037 985542920 98558641 490049535 79195616 541789252 997192854 997730929 642442760 777561878 564277673 566786335 824635965 998147809 598540274 644269119 146400848 599206068 922439881 993499129 257245261 546656024 931550143 935154674 546680795 614529254 895569185 920990570 833221791 868640228 608221710 686835168 867392423 874004209 376879879 582483401 162031495 800371966 606591436 985950371 125666637 240961567 423712055 660648394 311870297 772482501 261207811 660335856 976250169 979191252 14230633 511541999 362858794 681674556 624864325 976823442 885413090 967790916 805228660 986773011 440967927 843900466 936232716 939433055 282741082 875786337 623284951 783338548 776141346 834355964 218775696 581288278 6173287 634888796 188460150 226274748 151769739 779841693 819688789 934812442 19381357 707345576 420407352 983706048 851541030 983668715 941572375 972335833 700695052 880577122 863741244 909224227 944086267 983609595 409099869 774319166 5839398 282504165 970323449 989278510 506354688 576649630 548955905 666463941 894226956 906250826 779619631 794446100 602886502 636310708 253451568 674980207 476776580 777666113 373623614 609675482 511624729 939574435 201743023 662200773 11455006 322879954 703129186 989971112 648801353 873780249 149821099 504136120 585816674 934863724 356794947 869263818 879209347 991240673 979020070 979299180 747594650 919896316 373004396 419610803 464678319 781579230 908490583 959621685 377023590 991914377 720352392 861432122 655062680 675043802 819651426 954746756 371536573 704116620 73383774 839858895 308668695 432463021 478306793 922081496 778773511 818653398 437994727 688168355 368953286 534461550 306266541 884912328 871323158 882403982 32441389 161002235 555963598 624492423 18945616 592069122 496174051 667934349 316668322 674119257 478182528 872939209 742238961 745457884 69803487 471923877 351996589 808946337 990246858 997261519 295192772 330209998 921510884 934870231 329475779 482142522 31775573 109146904 658133492 775149995 224313449 866946330 156567782 588340787 90387391 931131285 74517227 936241081 545935752 624602637 825630261 930804462 988376711 996835032 933442139 968315390 999191314 999759051 520340322 665802602 71652759 682566267 143685590 621470919 965177393 975155902 99541836 187127776 409007 243304335 955102935 986005230 91433079 623093960 369323070 643340969 334976687 961945780 955012142 982319193 244185870 971887922 985137432 987367437 328825854 698111583 37010076 627698757 605002878 782699619 573326807 725557598 956387092 994299136 985829673 998633375 331185256 430875699 769102604 819953112 190380814 816144982 400974153 484802567 456613886 839708613 177512090 483471842 217814341 579262856 366547868 720336090 691926761 705805487 772268284 985607271 184073088 447379054 566957587 781819953 117769042 398828841 834583267 843932141 944858780 965469835 251450994 665794919 147655148 165574840 644155178 963411773 137736805 479380001 763231153 934955552 207827394 239184807 838196694 866336086 966334382 998369734 117922244 851443983 284495765 317932441 465861550 672925997 219599035 770571655 107425098 397983734 82373288 414455377 775082247 821746357 501783095 754043334 272863969 945117742 812706720 947886964 878800971 998478184 914799356 992856634 729994581 912083709 614725398 840347084 793256319 909727090 393719153 700614838 699877051 728163857 150467711 288179732 638493397 657159677 886827218 946685998 17362118 381571107 259337773 696154177 542987401 673888625 856940609 957560522 149097201 762857735 445018113 639631759 883508928 960617293 529314403 908141775 996030250 998543092 622085145 777746635 407879263 536728778 164306146 449364657 228265373 553241546 462804115 920932579 343274517 476759953 166863923 869591128 492620360 523516908 227978648 235837729 362550582 799914556 95006108 740451294 352606162 986461270 58667740 178713360 840829922 986311173 886601911 948313470 106062400 173125504 44450202 881137377 746038781 846672640 136504363 540109210 961167289 998988212 176945732 459953582 323577682 896651917 346479208 858848561 797462427 923511137 80416117 875242439 491129760 739395183 131012050 350691315 519980361 991153460 351386993 380402931 741606800 766976127 106675118 201540885 422498182 957217041 2378032 246172768 801788843 868190576 291840345 809673316 160356682 846989677 735856782 852939505 712885744 879118981 797132560 915948739 617615975 815201363 519865601 592739655 763744561 918445079 995909909 998976413 648673463 846483288 378658425 568089617 99056866 947737549 784350319 963053926 843849657 993212072 161372797 847124653 704965567 730935737 271543794 382009461 327959423 523130191 186138705 728746936 612069805 926802314 541968207 658542123 164163288 846623795 566636220 642839868 731901660 879782704 328293589 975452710 686464954 730305712 536982819 926060084 267685257 810138796 32844038 403830315 477875108 882689554 982230115 997012451 455285006 760914691 289305530 309619089 147969804 490718580 302119364 909971843 499565607 787622336 612007653 806025317 98532215 288828443 133691272 513439964 605948370 852005014 732519672 804882336 328123481 999054040 951073796 989424404 416384145 528585089 635870817 790606721 73512468 77767422 530311519 859866130 425578797 879476727 279392149 447717511 345871319 735018381 235918957 328764322 177049717 728442865 21340941 842958429 837207709 845278777 596623757 866002203 891766551 994976540 788110217 873765965 74587775 176957132 278494608 721227183 916423523 936967915 826715626 951222239 993504607 996543093 839451118 952057936 514004134 542015821 268312593 362340307 823543320 992047730 649813699 739729689 937000099 969867645 427713255 693734228 182902524 693644500 567083888 889596622 439876004 718521635 528371563 592571092 491109226 936736570 929797412 995495281 852257783 905677432 890116656 942271742 836924698 899945629 170615905 623803559 955990869 996784795 298687663 317647769 610317942 755431414 135300846 251547056 991736099 998567702 436247822 555659192 518921348 685717913 336027152 537074557 681442586 893756352 39960905 801140506 590681667 900446460 503411067 828648156 31126224 858597121 163834560 250502049 326427371 882090583 374955101 411499698 625683657 881322409 570424697 606844545 686990084 942276200 614816846 782676801 208195340 958635222 8493985 742586695 193216260 880128506 39932498 994742528 257079330 680779613 848723494 852794163 479758735 808014783 934863204 975977022 238247269 763855009 443084422 981576547 463945618 890966971 41294918 379326065 601016979 778164901 884789033 913210020 10254598 13633869 674476976 833658946 246268939 550082528 352806848 771802858 960813349 980806750 139795086 722936040 882242147 999191645 318264133 522800103 533458043 844146219 29922275 846072140 399918646 880057211 159592517 929824134 249352308 732866662 831403464 833264060 935836243 959081878 887360575 920786565 316908930 949548054 835393532 933499291 558035259 799398974 246467084 865495054 161593256 237648588 801742888 819740063 585813089 964338279 999594917 999622847 390665620 626501104 353778177 505867977 563960329 764296626 995915 797297929 590346976 637349822 145388137 301857776 273343680 377533122 760373933 845687992 739277797 799299900 692047886 779038556 592055464 802446108 816374253 854955072 492656062 991604285 892481630 953426425 939214195 942328004 538325455 619312237 398405149 407984017 460371146 749047912 566196907 724713765 569936409 654200391 614221057 704458403 692183917 813759543 885779063 916010371 833566648 932816105 281133313 963050738 389196195 510332581 867826829 904795482 929173574 942027349 155435797 974481029 763948445 846760710 78523126 619097429 869801898 908983054 313658140 372532250 12576419 813593930 688289280 972593123 814122002 884272007 47208771 268971411 981798090 990715743 435630170 459104160 643535019 987180998 417414679 610220178 410520260 557944948 891093111 960553541 347059422 756603709 396725777 796006076 867477587 884175280 23798899 781385896 227558877 687228840 923988264 973348869 932868143 967832692 410110991 743258022 956189848 977642374 990757030 992319427 765222568 970109125 157863048 526000193 502439411 910950870 359982758 657263584 955852454 964297036 839827440 950654338 641262254 788364676 518529756 993739590 83730522 950669012 964050598 977545174 138607943 488394341 64223734 617755365 236569382 760362588 685733900 907615097 230893934 307505346 241996679 496493759 3131427 987323638 882263878 894617391 778765176 858524039 943053089 961153882 135537035 506818971 519219701 977968775 698599880 828794235 34816385 602197100 293402559 969978726 545113085 580399837 966745829 970145051 216043798 882798731 504847856 947075344 826071183 949855543 171028420 228462518 483908348 702738719 721984892 858492382 472521358 839685893 153696360 759663189 544958512 963933187 447497129 662942723 553501276 965377595 710080095 774055384 887997955 897786493 692253850 839498100 844993983 869444051 342583792 497472657 886330905 893238252 46019673 221174367 655453205 946981104 94465488 464566025 862129479 922768260 232105220 233617716 620782695 995892939 286211158 872291094 89198435 186906957 691596417 933000845 592429366 767574467 966991695 988498493 871586893 980922461 628593289 748339668 375071819 884634331 722473376 859178395 896709420 999252035 110001068 383745258 932147449 957794741 182694041 553513191 756960062 942493118 834470115 893097147 530637411 970709067 626175904 942955502 582656094 603565880 876128791 985919680 381911727 631333528 542641551 961380420 255684248 512735932 929980328 963624801 44514097 167179913 473544511 790485397 228937715 489349984 921424485 982867786 922193544 969299022 304065817 806231108 567911187 777900268 259478673 813229173 473189043 516837709 544887820 822850965 238775348 677911164 747128618 947752705 646911694 861724325 110754281 512337984 558861729 583435089 420549874 673749865 340128142 531284589 22533142 287233887 353559742 378788247 493384941 694563393 950835668 957301925 319000019 865191678 192524002 639194409 485196467 690120209 414889042 441345820 294201376 701825061 99630856 998970379 503973544 652755603 133701021 755680601 185574649 945522975 390570190 406331389 727797591 802680419 453071891 657355625 47289792 455306508 339278775 993545874 935987673 973295725 183589386 371324709 122606114 458752713 931235748 977599102 527483135 890725441 963165811 995477805 840358783 903457791 53809475 474033752 58742654 334200099 865127460 881930898 913844839 940547505 662870100 857946999 288210098 993126715 59358749 639869531 180749553 942383452 486659198 968317301 217727916 229545345 206347176 739719032 114282976 721063649 932200682 990310439 508855427 593785306 482412990 574110212 172585815 645753229 270673615 388330356 111078379 579844593 97467012 787125628 347266719 883723204 555884456 846048282 593313208 780382270 418168827 653104805 188830472 482310371 753187389 963703711 391044391 676048610 990362076 993268899 158192058 712676426 607670206 909890422 876658461 969860055 192610053 915557304 912661251 990939600 617274365 877596193 978086495 983746385 627540597 814012993 280131520 695640457 470082049 516580303 115699800 273475356 911670137 960843465 465872169 516268507 820988418 943100370 958417598 993920826 724877726 956866569 458815478 592669843 245905885 318368907 466469866 539294629 277940346 897066307 78637597 272641461 838607562 923206977 322018817 870751471 310015043 452589805 304117121 699565969 917353504 956739219 257959100 525736674 690916532 892781650 194144734 240846693 767752867 924365598 145669947 492934072 302023280 914440283 344816165 985229804 465882017 805825961 499175767 868870322 571528885 717399560 406993818 437313540 122709326 424300405 133992495 907665189 933238959 988712431 105278218 858368154 628654391 844005563 213406666 419595626 895442297 953971977 677083309 808410677 431643165 899602074 61094075 799638254 190654872 706191026 496625592 507592703 377249290 868333021 649988142 657004437 461515838 704590098 292136172 761587878 537372661 861875435 98758543 846247927 643992418 913252616 116355876 608608673 414906218 666175850 605601229 765677231 730229857 874454283 398525907 408367082 478828343 742270442 667147728 979154164 437322766 627032193 914008022 949733115 467078596 930753638 272456958 478704751 980707226 997266534 571918722 970936727 810458382 934758314 229524063 674432804 972822248 998098030 829963352 901732562 682166722 956716765 515202150 764934652 940542299 950190196 835037366 964220954 761904682 769613330 799324663 928253916 339237024 652700487 654464757 721292803 933181526 945172973 506058017 611625533 611711736 866079240 604055837 632777399 831832658 863515990 722985175 787444784 979159898 979175333 641772157 643760819 361853753 835981904 663892275 912591805 26877905 997302814 726075729 965451794 356366504 913598727 249067245 460391675 964417298 972968275 918981216 979324783 32069558 867021581 845141603 909084491 914963681 990873989 736255482 977499417 947092316 956386545 851790275 882279530 336670847 488346922 871481641 958892387 924273329 996704161 516198873 545303770 909635044 914322555 649014543 729782563 307599187 776670477 174939575 574879960 236020205 886359800 510659958 756457521 205503255 897333331 462988172 890161608 327332487 351253970 745807528 868531059 432081252 831076077 140991996 411637507 972391662 990981733 687991489 977142356 894856798 991803585 725846140 813479313 757773200 877858475 891292061 897612970 649820267 686038237 557250422 730853061 428715016 528647385 470013241 975856885 432592047 861058202 966411387 971058965 199559724 496374021 434949741 591331688 272119200 376014594 17004266 411993564 705030040 796313597 259776587 456491450 769120801 783972454 507238531 586877305 683192443 989928852 700394664 746888373 285136031 646537414 450382796 745605599 239277332 542735697 672470535 799609152 78190574 198758113 935195036 981888147 624799455 821079556 858943711 898793996 971186696 977391956 419820093 739248678 384103995 535203864 78806801 336925853 162908818 834317553 382838495 527437874 999143831 999249871 423793978 799021079 85797 109764658 445538557 867178489 44834525 754607477 292382603 518266103 163653363 415782657 442409372 673691189 59515140 554066344 868556414 990828006 977679291 997035249 884076025 984233558 180266792 256348619 272012835 793223046 767425487 826476179 213739472 379508044 555753986 691304919 87017564 517853347 754977760 940033482 839154463 857428944 974864635 983914152 515293706 904801336 637875713 863764094 931664601 981837211 617116007 886244975 628646807 965370320 293411389 819963961 148178534 748884560 594823333 728813577 30489269 250441079 692818955 957345857 782871786 849860063 677429940 696119726 978425795 997322423 740257540 742442470 890106042 963061176 896062434 899066510 12421660 126865524 748323667 921459489 632978558 813886986 861449063 914500896 185532151 966216844 92615215 125951108 903064420 989207704 365987244 585463354 172893068 936298635 389026004 766347349 385377177 822188473 735860799 896498641 318813754 892746999 464184458 957839294 40844559 752902108 277030388 596181558 633228831 673665920 287851814 765489313 976481505 993673281 752576548 968565030 421493004 745329747 536260893 973679675 174734464 511632708 172210635 392181452 253980447 908315013 686237964 711594422 360150321 597657651 176122635 376278920 334953716 875717799 463746897 964568866 882858029 928632388 645085933 904387129 561251196 905139968 341422705 729848710 562220691 760281471 598225633 760255911 54663668 698636807 469544178 927994237 825468487 909817675 97655534 283147046 125446431 965361990 414750324 428371068 971505317 973562176 539678764 638375688 834223138 866542916 287425460 684419914 585125321 783637036 822148174 852500614 484879748 609563979 468958560 652443331 267301955 523153865 902055856 962003612 930182854 998141059 572077937 587236814 348800546 942853196 394885772 681763522 639261785 909710271 506839258 515364597 75258682 866262876 299274496 324120276 922867993 999689489 614324465 738158522 848007586 942530213 980620567 986035255 723710881 860050828 216959505 655713255 920419583 998516389 638394867 872217386 805328903 963933017 618909220 672314438 138322526 255585531 487352295 593319092 45703488 256815971 55850151 762720463 968180752 971317758 442445120 750048480 202803596 904344777 990970105 997827145 237846810 513225041 469921461 543460755 77538919 424402881 761140286 973272611 143852868 538561514 462536753 927450280 811470473 842340774 295505892 415194403 154390697 160684388 325505174 354184109 871000377 981176554 244749122 956085123 153017132 296803252 849893712 892664977 389869882 797851549 766532378 981833690 248598833 936736847 953298646 975836930 559219192 855245203 997749194 999937666 167848803 676923335 765298113 897380638 367968166 824559986 705156262 916620954 870055890 929201821 627959248 658708487 284968057 593201663 450659341 691899506 109591429 451990928 172227868 518127929 613066365 994000604 609987437 783993500 197307198 976462301 835125949 894844177 149135115 503477551 64690411 923356656 236258892 294104102 102922143 320647365 33296673 594295416 895765306 904541479 625584562 696976026 17033380 651837510 733843383 830190765 414518775 841989040 874899364 940067550 412544407 943414338 644721279 964730278 404451201 443688437 158525515 225174197 925782252 992160194 210323961 313561769 492046782 909442047 693761171 831878865 323049865 917022649 572101610 905669664 936334738 960592474 960757400 997021624 907510034 915313876 717055283 872673894 40922235 866678473 508662030 745787795 53729995 864388653 837020830 883392481 433145098 972502063 586237696 657272616 349661987 655332155 814029104 852886086 563472416 994722750 163074192 702761925 887620950 996391576 840111584 866910924 884750365 908976930 190395823 335924134 698567648 924317036 52176339 727274948 865910715 878319756 355276412 854638337 337132970 377619979 23781781 354970852 820827321 845122174 311869390 555381685 243962774 781865374 283459464 735454112 103175900 969673754 377349103 429589635 875711408 929654260 797750340 947617106 617393103 925018098 41501390 748259054 99313164 773504947 544445692 560769123 191702142 515834598 779494914 993780169 83010938 821819968 835322177 953921640 677594926 889376803 715308972 858184432 936227173 973066915 521037259 791998993 166561695 645124745 485732036 595082834 987970091 996230578 641251786 867203170 623848817 955335576 30743085 705704761 653848187 748446099 472594246 986525841 91331201 413745709 146570113 836982474 99953160 520755314 704676434 979596288 43737024 476816115 56784081 745187350 167969677 642002854 926220743 996112290 995481903 995773329 484518503 700560476 933526174 986043314 658941063 922995849 494609090 584586717 754196664 865464320 376102972 896573045 497334786 686071448 765083238 976035057 592230439 894824250 812998902 932458312 955746955 989724472 171260466 194035699 520240749 820214362 218521278 880174178 472245942 578090655 777170581 921778482 37844355 653367253 976251068 977518188 363039385 960168566 935055223 998205764 159883689 382310573 706731941 887702980 856051516 856240392 999511355 999610819 107748181 220902049 548777173 801378872 485926356 952393224 496254381 956632166 156675232 560116213 979680465 984009409 246883353 664042260 105202187 818157510 705477006 804488497 803830749 979682647 316049521 770175563 907541463 981582386 399403185 505137406 379311406 725590372 920227304 947484653 237635836 969112938 627441153 640723091 471104071 993905984 303657863 736623213 355946881 725532056 914120508 992915530 169503500 996387550 554224362 916926767 366414076 930809482 150074269 171582805 350758350 683082804 799353939 999649303 464183050 757733344 954640146 987963557 316746852 317101443 969647039 998329756 154556758 922491868 591592259 727263763 668763690 742398519 393769419 724129922 547035572 743019135 716963996 895144887 378700937 983369282 871290526 897028551 43521004 172290942 115819373 242679093 740818077 798060140 384484022 769080688 926058206 996947007 15500004 105833980 182143722 212837992 929276063 963515515 26154663 89111243 525081998 673146446 19940693 907424942 487936212 577006020 692995507 747926054 760925461 929471716 292733792 411291904 243599395 750130300 477643875 748230549 347014777 953008238 381361337 489346092 775944989 788287358 993406115 997771560 226111961 478886430 514048580 943730535 959582285 990840299 763497807 819915263 787746867 835577246 22320851 508344450 549935853 813626075 471764161 527091313 297425663 363939670 759025984 797501922 77156696 171229202 48681099 967101689 780023333 785808274 489362556 624258713 191463545 998102538 51036250 141977764 100059086 193754616 411018522 425446329 452854093 684275851 908975318 973087185 428960823 988088173 536745244 630949717 222896555 870482962 587637745 832523144 74647783 156674602 893529508 983769939 263527711 683575922 337646727 873255486 742048968 864845825 411351520 943746436 808944527 927059279 183500617 273724104 598076622 669525923 55376286 297753279 424517068 882732556 473559052 921087152 899329304 925309665 597243732 955741858 846972205 914065856 387767760 807318936 213581043 790805433 540122694 719910760 657516729 745747927 178675023 954598661 963327601 986969447 10784313 866045462 199697447 576207594 793128999 863398892 832738486 885000588 960839769 964760863 723148520 859708146 554908037 875954778 213403611 662259840 566595328 826103681 978383811 986774554 211223768 968082105 441765508 609322060 536094372 567461163 598843749 838193069 733134576 845538535 832544021 852331579 895546679 965101085 823867410 995963452 68168668 773466517 843275651 845583050 923314254 941786847 163154441 579383388 80978745 122005616 933482703 973867122 248744781 704579417 762498448 845046840 953763284 963353384 23400922 659120954 470843453 914772400 63685820 196716216 865666820 984063782 381700451 987226570 40944764 979603675 602882854 882438799 255924981 604149118 46850120 688937984 888609300 943413656 157512420 216954789 539443860 895866353 517809930 581679930 520586680 700965901 964658614 979071897 687500645 927460599 226808936 918617893 946422543 965503746 987973684 999897064 304775868 631034914 455720360 684782633 827363566 865421254 431529210 755088745 139427965 829058583 905301985 940952700 899226699 989095409 313859367 955211913 814043312 927178191 680756718 999478656 963513952 968746486 694221417 961066014 823094442 962976352 23407983 947192404 27649766 450684315 32294992 751936616 772424599 996002614 383693304 944192388 222947918 812424228 679305972 946509119 393343859 754189466 535666246 727748084 960699993 977188490 966388456 983331558 375937379 377665391 659934628 912968831 154169801 923144925 558329127 604315304 682356648 774486262 532901164 603407974 119229190 901756177 3225502 119417467 453474291 712133529 706254239 805624038 974951740 976256923 106010854 650649735 275525577 297631409 310733630 402924275 271442231 898265785 484933135 758650508 531930905 895948734 616586799 816093978 318120292 484309820 362015462 863707679 399667854 943133719 658877205 730868032 730457613 843551288 780516751 916986437 366781619 703146785 707171324 716236161 443233670 479521240 293714787 668939749 413593878 748251380 45753418 630081863 786458366 929214321 431902997 437639587 783698642 897294144 288731988 340461017 178235598 847352741 91298774 935521168 654903165 983821991 764099169 793338464 492356240 636635215 811499713 829702567 674943636 827478675 154390302 278634462 958663868 979520934 391053755 899105196 59223168 828867704 37074815 821130930 324342169 883603374 589607970 821169392 333932097 484317608 20814052 489241636 233167854 612243586 71570253 960156361 118877567 237921014 610367348 703539004 491031240 661815587 828765037 842079635 334794603 800749068 968198259 976668195 64475610 957097266 228100301 686644691 859119847 861970019 903683750 932736307 362251361 465221536 719239280 822739083 171049734 366873803 939189454 978369624 424387185 804185938 378909783 967848087 827420585 932297053 231819674 567743462 129060625 968254164 554853517 579727996 652976694 766373917 647330547 864159242 910011982 932018252 62056968 648924631 576991370 957463039 378969828 995016631 511106086 740994668 175678552 526672730 235886940 775036783 752659336 867640218 652241016 657259938 28413677 435981446 418157366 638657665 321203549 607160357 572726587 701087152 120413749 988576601 155105818 402501545 767642422 838289183 663698525 790645187 810616090 917006429 110974691 732398821 87966870 502479983 755390999 918124558 585829787 745706311 877342389 882642822 919387011 991346502 319011605 896186250 111177702 302157691 523342077 623420744 941961089 978077568 704216078 891711128 37667055 164536209 147145942 484383946 27278530 309988099 177707783 639769010 608008862 716549959 337735953 828608768 857595532 968671871 727485119 830183307 721531545 743403160 11205768 607964530 558988443 899514508 64196532 268226456 360958651 708828753 522929216 689083072 93968564 676822568 619059444 908751077 427036614 781871530 863503944 928169227 449313300 787005516 961038590 975589539 828176069 964846131 736827970 776715905 667828125 702810651 890085834 994769400 82140180 640016524 387181534 968927270 120994675 376479038 842770704 945951981 479380047 768565753 317738413 360588712 729975661 981060384 88399687 435749264 810520753 828093331 347213829 448697474 708520293 845319491 743513108 746105641 124495139 314006270 348582821 764894893 628184270 945955905 622513199 816495183 802802459 803605031 130882245 177629595 621557490 855788488 987726342 998179042 427177216 835622976 942445358 950100143 228859119 674211532 682864777 852795873 633292455 872306304 657934862 830903314 839629889 970946922 773327911 936183899 131249149 696334751 706671877 896066524 973735204 975809379 297163682 615604518 266176098 409637533 659716456 886644596 200172682 534081097 100902732 432975252 920878946 974464208 825252088 949357776 343842921 553829890 497592313 866568532 385929628 715608913 395132191 878434462 434312907 599105077 362675319 488534428 515009598 995087724 346130289 544243993 990380551 990746105 139695768 937492405 925393055 959933641 314178674 877615975 706044328 951353479 390297586 750996716 31302023 525386360 315207752 391119516 66097347 379796503 373817082 505773277 488068361 505217985 917772132 983231479 862797808 990479447 507841323 628105016 174966984 511114076 110674331 329013446 158767520 477622851 881388046 928983524 538575638 754649699 355092669 827223953 838397299 909336204 668994054 705211371 693373300 851601333 37283614 552333633 954297156 964552228 105223442 525248853 164134744 184047887 774229755 960629714 375991122 922235757 108614033 398320341 970110444 984649949 36231364 703749043 165157071 850726551 518113721 679599143 738995932 899123380 983070008 983315005 660775922 730408291 70148365 352896127 122441304 859488084 655062699 696262266 344420067 994932461 564834324 781355262 54945586 301187240 520626964 838104114 677332401 789443883 83147992 290846847 516482473 565521008 345097675 604344413 997351570 998858735 686543029 940226155 911589110 998324478 546488586 657237544 935306565 993132775 620224374 761713797 765748474 976434924 505226442 590592300 123472920 674036623 47567065 708268014 820975042 916423717 982730028 994989277 704990286 986926079 509823545 813147710 18426322 455968547 327560591 655737056 939956154 981085787 126181686 194016071 714236275 776528348 496399212 742469155 741986527 758182707 267882164 546581006 873035842 937970042 627125232 795753157 404065317 951852188 549799662 651863377 150738996 987717034 951310030 970606847 102891101 642696941 831159133 992952130 771923503 927163025 553934355 935191169 715841372 788328129 839364570 930227938 871542493 988292718 875241276 903812947 224767013 843894802 111150240 210581787 372336283 762116968 387391048 957394170 292453564 891734826 806294650 848734812 898149139 940728326 809145769 890534627 893864645 965113119 910049977 975859411 634012711 903144894 977480038 978019169 353840482 906956815 938690767 979102462 423642373 967969271 155731306 183065307 464436046 997499545 155685412 216709899 517909777 544352347 789161336 977956187 767677936 842599838 463000369 564618426 303671996 571228329 15485270 688483574 413108763 849795083 872785412 922214306 642967175 723411490 507803384 553184838 665618248 952026289 327822011 596514779 782409114 914243966 441276259 922508617 946970393 968366017 217996535 373778364 157808498 256838362 891677150 977170380 171275394 869642802 75609101 386310907 795696434 828789416 600201488 843290487 238522067 261835638 614431141 886271482 91432088 872802742 402951864 681984417 653729268 927034812 695792553 985409549 443844418 998157819 463371840 693616668 335612961 636303476 835262510 963912314 150491010 962775492 818135678 876240416 551146159 708280217 570533830 773868257 654735211 924256708 316590164 410894643 202283371 273010055 840334160 852066877 457999938 784909518 54327318 354543801 801779176 875985113 337162576 344074603 484324589 699284589 136596866 316274195 206643666 785289059 86447642 218587203 635705995 707876730 248163849 279129648 792204708 929287154 645741015 962258547 505399963 930595180 751722671 954021308 901880403 902286405 129772810 939481688 818261338 928119040 725109622 802060052 191752630 632798335 495834670 583802102 904984190 975478317 763955980 829736903 213312772 689496122 733858669 791615905 69239027 832894742 269347430 636396523 878111221 924288173 69003047 847678788 503338972 810337030 232872972 967040500 547774185 614422916 647562967 858239593 860702974 902753041 797416179 935228211 976458062 991879444 502709956 506044543 81695492 801939948 736679108 838937784 15841093 154476353 513579558 906987536 642595636 658765272 641005137 786897649 626096173 717858757 576085967 958707973 417878779 545606678 846292450 984940163 462498395 776276333 995491447 998545192 923656089 958576112 597360153 682102023 926506036 927186501 352582383 582376312 189678374 289532130 5210436 63293841 274949903 648255943 878895291 967217576 134555060 352389002 631560995 792652627 181626724 852334648 875184084 951142968 164485735 771257038 892908118 985182341 686073720 763459385 92171259 760970479 788831466 841087493 663020256 968661050 436328328 924972576 55714077 478765257 450204004 707398809 124743637 419033468 230451919 829645140 345551053 813395254 374201185 380185956 170003971 793028724 411674883 529513181 650404350 991753480 753610683 889602074 265376392 494864474 542761954 705740817 561910203 605854411 135411129 495301038 85786156 461299807 27574661 77081323 481187488 578019199 708875476 903771715 323521255 973466309 596097889 994711411 29735105 838734535 643432372 672059512 532137648 971951445 551429914 766617039 121311435 569988082 267320015 308614226 875460878 943603786 522228673 522968497 363884071 674868189 960117437 985341421 216120146 437839312 546063059 860350191 296234758 498838241 106863140 653636607 253094632 308942444 991465953 997157310 292937533 921908429 299979824 358544562 518219048 682335687 368034660 925313449 255289381 955313987 65458052 714882544 676293759 987165211 671659030 772580503 751536571 870576711 543419803 573543648 339887521 835116954 88450793 956629966 708384227 784329887 968062255 973790915 922871057 980177310 791953176 825687281 763392734 803270067 597078527 991580996 110453843 279229231 537052808 927875355 62936548 521467860 44578092 224435279 554847240 817082209 214466426 225515776 749004521 915376678 691766825 918680431 617449158 836592585 553397806 832217133 43102607 280337527 887501830 974456591 430463744 490471309 554274326 586191062 772255471 877385317 469232527 560677921 94406076 515575707 387426741 894754531 137637586 784176469 108002670 967319910 620311341 662714342 718144306 999251385 367038059 804627818 279289431 391529132 227018134 658904468 47047844 948319920 831677964 880258957 760868706 884703416 388078818 917830186 470296838 762955223 721684092 830994204 902524094 976448222 141367817 880772598 280403587 751944428 994577195 998918729 825213908 937683066 835527106 973265376 410992374 838385616 176867870 383972233 128324059 589272103 469253192 503327285 901978556 960474063 417278344 584672430 764246976 990837540 193530171 776607909 639459637 672006816 948602303 953108469 345702071 618381272 339488879 947485794 309325124 778290344 905858236 915847419 551066335 647436580 256997250 927034024 179531124 685600573 519832991 573123714 630487863 753571225 336856448 880892948 860533634 874715911 793535639 832700388 867110187 992485696 98524934 901211354 46288549 509391862 250455274 499943382 258893252 297607663 873437934 979249123 901206653 966719534 452328450 836140070 685796004 826892544 847536852 882838760 95784250 198036813 231212295 814044835 201247435 521773496 458691201 921680737 452570255 880405900 928057980 939932378 977637757 993773155 355664017 633094621 999380593 999857113 772451187 774602186 493508879 864414559 668923614 962731419 875120253 938982301 793073949 933978986 882950640 918545715 360138981 818051842 624912856 893042924 375831665 707290969 284892746 392348200 732644667 930995309 59077412 966814588 543565701 896889307 892915918 997449261 718277809 759747425 584888912 866936617 53038169 375626213 525767362 736303608 703344137 791883396 295198253 855337474 506377930 843245102 337386783 620774546 269347050 716518847 341239392 466265976 312814391 576119934 504838180 622389607 503952314 561763367 145111227 447151227 82616638 911182034 734211380 879538502 714389327 805734739 586722392 589275520 134352819 977623511 112780517 543426113 619382825 821778797 308864327 656050943 988077507 992321071 707273417 975057462 883509759 885333663 572496184 930412977 664594276 818489476 871162894 882984072 934846265 971813005 736300835 806892312 745023205 886749784 735390116 747410374 353340874 563346040 843591978 855717446 161841329 716737201 175052289 737666196 729815318 746662202 267218276 389139236 44624697 307380673 807509030 854380409 807560391 909658631 284730043 294604611 823222977 990922720 600026273 790773107 475453826 980962610 655672962 959695620 2786115 827699225 630733377 815069360 64350052 960178143 85485449 954687820 753920633 858870923 369850696 630166307 782972076 855298198 844652728 859987300 858253309 967122256 982922611 990006595 429271764 666828714 917982631 938578266 561865508 814539303 54344712 728456813 426078988 831865528 151833390 379347220 168134128 397870880 929741800 933705482 857109430 893829807 416607324 667894810 509643308 621894290 433409864 839826144 418622648 815333875 498458916 680338569 747328152 826382236 603947938 653044799 362347284 374714482 800695281 876621813 742716072 964333088 994102781 997612057 871430503 948540214 805023091 977408287 32960282 329139365 696409873 789891398 499102578 790904557 451871541 954731346 5251846 656723705 570084602 864635237 396662872 664539499 833573564 915421419 344862580 991602216 18398755 293897324 973952735 993183645 156288886 819492817 233147945 922774798 383631231 622093619 157155456 791736867 637954600 949936236 304238650 663187189 300728293 405542406 884073401 907290634 759858804 904505253 807209109 929761306 117010566 881014202 805617032 975683518 861340710 897233911 566764503 898771494 753723675 893885617 864025709 978905729 603813214 780402522 36521703 69478771 526270806 613601018 535732736 655602291 46441218 537120890 593907909 916642822 971779801 975702017 97313180 479541069 225387732 300698646 963515921 969394295 454901823 999819296 174407278 371169351 731003477 869849788 949635191 960112513 915516165 920909350 48356319 286679961 288341874 319575392 248832393 391601224 282689664 832202857 418301329 446771544 344084532 658248311 475236534 703529373 848035501 867011689 511849202 613306233 582675887 830632525 422974108 821209010 471131669 676860439 449370344 734094262 242262624 833817801 881531559 942723757 617100625 728070020 322706191 550731540 525491403 840443067 909973532 916293390 14419325 537697750 10394253 519156395 829272773 900358975 336745495 964168904 67553538 718504390 35883841 801354858 410597417 614409501 177857362 309634640 379101635 450473128 467620699 791469558 651981398 848935771 678173349 799048734 302953130 927034644 609587916 943117796 676898906 926166216 377448579 423318617 343733984 752937463 536906231 960771728 530469633 943174725 711572714 804238902 179380128 337664517 435004620 878322957 304841771 668848512 879676349 949949752 506643068 720069022 181584255 745711994 686424882 841595528 558452447 589987161 795282741 917623753 471200960 993770277 555306433 862944045 871855016 936136435 991607735 993396327 297955322 393685781 531100308 687451727 730364642 920538533 360165732 480986732 776056004 790429339 143007098 192949115 249488858 402140087 861331384 933281652 413318185 442467391 156768921 502754894 606239394 918954260 259045559 620598900 532326417 638686396 821721197 828502928 241038081 777967400 61388984 272991201 174729753 787137029 756241613 924216479 473548170 495751164 469132785 962025764 366474859 446362518 321074853 622544398 994112044 994247034 296363624 445265682 590632423 803019679 270998339 662882212 916308603 941080302 555177596 768477550 307797622 486559910 675813351 855468463 310792842 580306074 999000410 999769764 155583568 357870355 317741177 902917014 961266140 992024755 502465801 663778455 105210971 195443783 853412752 984110826 719801387 993532635 233026418 371166412 932435305 991233876 934569761 991989826 934184592 980172784 223483367 371977271 221226910 240002717 398984654 518554743 387769912 561049227 642429699 739207644 383068554 937080780 788498686 813962007 468711944 865988109 278951147 884623249 643583782 780682205 224710880 966173837 358812355 601388326 40034402 661772111 685518235 698272860 517182571 661634162 682271774 775810026 887768951 910584146 372197587 876197162 793577335 831728181 531212595 534374235 735475200 888956876 399468584 597618422 137643915 275424016 967741285 985279225 586766957 830402458 995950882 998395705 815685091 966586024 61744952 369880859 806842341 813486112 116507653 432043321 386687665 567681157 835397266 863681152 36529650 292307449 756933731 905315474 67488455 371368875 903248637 968264342 504170475 600704497 464323271 679718728 951655869 967856417 674014574 680101313 372659014 992752395 819784585 969371128 507355486 949865236 675554261 793096382 991492621 993916121 567141858 865946519 915370424 937265246 774399830 834330098 597292720 623685416 354117916 875424119 105957921 281347115 1555381 135993479 103498757 836154497 296320595 764891139 890315419 942460976 395305852 825725337 305037976 709425090 9816789 569709114 652488606 872286470 928398376 933567042 215312139 617613467 795748014 866797518 875568020 955250462 977400573 999193266 105984363 260160976 467286453 475137195 418724303 613148749 789020082 923926941 978529031 987814651 221506507 880661841 179874070 907796316 835413163 885948954 347603673 631483092 124139329 435646177 394054779 742174272 890194320 935050223 204505114 744272204 332692965 540542074 269470805 725352430 91066234 411373000 817240598 942566183 695118441 950515227 775098546 944207480 943796322 959100172 785829129 833508229 858584854 981343692 584795217 604301411 939706110 950391027 287119612 437416476 264571868 595389485 809362631 871439223 109806398 358180605 687519248 946764019 692873379 755800216 554761226 956697084 563456441 596435378 867564196 900980378 882721793 997783115 703473124 842541920 458310481 903400153 672218394 783807613 605453055 695397725 882379740 976919110 779501407 829031358 374910147 426632974 590560543 770834185 952089814 977549963 460126345 752971260 164613947 179508842 516685694 683624677 338915 688803871 283644144 684268365 939829545 961311724 893164314 925406299 572031333 816745806 500342079 655163175 574737658 614400699 243689688 638551189 334913605 389786474 725046446 913296326 93482728 786280984 95118481 825639021 760574466 805534475 698499242 968603555 191483381 678090102 84933404 293040556 897196348 929294189 504998915 785694077 777584392 792062840 22353996 596769176 8610997 542182841 585596545 814440794 999579992 999893031 735414100 739605743 3919122 694293205 842328533 973314245 258143389 984327103 306241828 864368773 405175985 861240334 422229733 845877202 198592668 742054179 556972755 849646129 194588954 237584990 996675275 997340928 984741035 988915368 624011445 983320272 759139830 898553319 508730760 524393498 648128543 914078098 524618831 741359012 531747126 735898579 740167600 837104934 519893649 914360301 838185079 983624950 335508083 816574339 982270691 982296103 792981785 929705499 618418177 620576449 478955409 883539434 709096126 878714728 186113789 445215829 740408486 945767056 610208202 989163347 725865064 941875316 259229186 612870072 929465521 955108533 948814821 981706188 637063049 880699849 318304042 643729555 584816070 951916413 654273310 963044801 829102887 914299498 514156367 519202485 673230589 821478863 495664720 579059527 743705224 825493746 238589099 601907569 538248763 662873865 878513786 946045567 114055993 847016177 811880152 976550614 185951236 224538152 882796852 891491745 5661632 357063532 704207668 906267279 648376245 779995714 247439035 524504363 251925849 374500239 886431294 900968461 981604972 988209557 397058836 951643860 430126905 737658788 336728281 507987687 363646494 552048167 365519307 730994874 365660533 912399794 140399686 533764889 674367884 937510638 901042967 929020923 761038031 808377975 291157878 946016495 892640936 933100208 854443398 872808839 928775533 987165257 755161159 762902222 377251861 440897380 835924300 933471252 916861639 985265377 7605969 709147679 11132488 420370813 976274024 999224118 104613989 149349511 477838433 532471409 871894646 874290700 96842485 848411429 662728197 883379093 42029631 189593153 598030744 652416349 627585971 636357583 571510630 867168093 6297593 762923945 788141399 951375912 572528183 745633826 48840111 735219156 670528694 874344095 428764519 876226435 634515313 678385495 699366991 926677107 195288237 771991899 382143808 835900003 175076930 793265762 922886366 998248093 671633322 934629725 877497826 945349776 699524605 955588934 215709739 959904992 158701704 324663964 803632130 940367004 286604155 879203301 134665241 538554192 65967435 245761184 176391263 390775978 820819232 940723434 480489334 982420938 367300185 726985446 355920987 873109603 205918236 826713227 274637294 503151901 131840507 986550546 74134585 540119036 685858314 908805711 495110807 520702391 434681964 602797506 924071508 934286229 268140433 567751508 96958693 123485558 880227541 929245228 287017548 369397434 777104011 799091410 473993813 703060529 590755437 870236383 71741545 656111323 309172391 853257393 840459070 970197374 852578036 951632574 350575433 373002402 482163873 786270256 452909468 961279290 939195215 981231703 475678546 703665017 219401924 520413148 931017581 947196989 599713116 870038225 464955908 558044120 798439716 864705158 172355643 470698411 165251132 990777406 811120989 896882441 137678608 657629179 472847402 873985091 460168824 511902394 639754331 978483932 798926630 928621380 774899315 994767972 132996813 257853925 320477206 652609402 922069552 927912682 696655804 958259245 666573875 890178339 875231357 893654584 785984456 953349769 144634966 814939298 781181240 883846803 659629365 926941023 88129352 216290942 365745924 676056260 856840380 898730369 490527635 952858982 718764994 867735730 744615514 990355121 908213198 947610717 619114872 755553214 917768741 973903783 462856068 576105980 954542882 976924030 139200677 449431127 812042578 845028710 651314520 899470831 129658955 900063437 487784708 980313980 88568168 977417835 408601971 488454869 612225304 819648672 195627258 228918488 775225771 796525643 562222266 642509335 446165352 463345896 170296417 283622673 753006722 806513175 526555242 800913362 106352400 647103428 641766063 645086819 451822470 563827732 620758923 923799420 926910938 934699120 184117266 518540391 485051792 539834571 358945744 396815918 771928388 938749103 605381802 992689135 688056220 933573788 323056246 688356845 860305559 927690131 75399279 501104433 73490645 385009400 166220942 663932221 881929899 959118406 396020907 670826517 156572506 836479037 884133094 977519146 188387450 689811987 174515929 735257156 927393943 979549485 230463237 713029376 193426116 647238179 759403260 797979424 506700887 972142167 639933626 968476576 990442317 997790060 180882707 463615113 728942115 985025313 454224989 578498838 341638800 984812041 109423905 570115771 809636280 909311619 838689708 979481851 823261226 868759130 598463882 798304257 603676286 825222040 296497277 360506771 458584808 704421852 472685428 829753554 987976097 996904460 405568581 469431397 528605599 695728774 514123994 559746201 914770970 956330275 399300283 831178390 96519809 267951586 613072196 975991983 902592319 956078887 730035758 765809351 837539629 903154305 793062207 839517971 479172950 735507883 893197892 932775879 833682913 935582894 669604334 902165065 89030537 867210897 38259019 620135243 689917097 777621102 985029289 993260511 490965196 607176184 942995673 973534279 244388351 897749703 522696153 810009090 926018297 960271568 892793151 979521620 692963560 912098644 548024235 608636205 248178748 327558636 208048956 325831499 584586409 887485117 388098158 626827818 864757974 879260524 33643484 121362750 104455501 483456695 72866172 840391004 741683149 763948983 544724538 577007560 590361540 999870420 259143234 470788244 701395644 799351140 848138912 888925052 630046727 896662856 583556447 601443626 725474014 925021380 926791084 929420842 299527459 533199601 637946839 980560838 951441792 968958085 39543784 476792705 641213193 997169496 699417854 993808000 766361540 868498624 811856482 992811034 468967465 664846964 462015819 950417274 926688475 945175949 135080071 905989653 385943718 698252998 440282491 488798955 354940865 861324259 825339660 869097224 684367098 777261247 549754893 735586328 284150795 519753707 300481208 597273022 51528099 86317227 574435295 717456959 74754404 116926371 813653513 960453354 231405295 767623181 978036702 986617822 11503131 141312050 751375857 959537222 523097297 631806082 41397049 269280173 355247406 721548176 759248380 806833529 302682305 896013781 102742443 934583032 199878162 798013928 4473618 671033683 452077610 508172272 686401384 925079934 815446426 864847940 301475320 877438965 335350403 382327392 817804659 901344811 896309340 900321956 14902444 825305879 367462644 442816022 761564794 783923982 749872237 925481058 480866770 777297418 537677946 932927807 705321384 847925415 610960697 806387696 987240590 992150250 592440864 771699362 209818550 603944047 873596194 985216045 691587708 929306359 628255094 715770747 211301390 714361441 340686327 793103626 327831705 694925226 746008165 903197135 281768909 789815830 545305079 551875145 788980778 824516930 977968929 987673444 186481006 281415355 453817024 821631786 618690571 964941203 193020224 413734898 769404458 807565245 668181968 749942405 449066481 695959339 573313169 900551164 668341755 816865574 988785241 993720524 743580395 780633273 845562981 938737250 755352852 872766554 318052397 566066020 838434140 906086797 349535260 373958278 661566660 804853875 217998519 332835229 440348723 717390540 570149226 926046846 635178022 884347464 221240825 458467925 524616111 638459445 361274606 919050076 450871314 542871692 183744660 892327363 441605332 626801780 888450257 974662079 105226857 763624082 535901200 934543167 198559685 295883465 552001641 877617294 367762187 538806313 585446885 859621793 853374343 961155786 513379313 554869979 233429794 319942913 523337380 599302518 979319229 998016767 372027010 730744986 94249999 205559091 40159422 240085017 616703383 679388507 460596468 758393066 747335407 795111060 899149221 912462094 799611864 819024409 847524972 865376766 736857791 961491688 881837672 894711084 296035874 953877116 767521783 815184459 676178105 731119932 799020919 832559365 771543264 948965715 685467861 834125468 971148979 992211584 723452623 916821049 479213299 568237503 495262882 614639640 364480342 547203922 978271664 994509951 378805869 644558209 772536297 944428463 99935695 545781990 410186017 811056440 280203437 651052717 420700752 938904767 75300098 374520564 391222655 898159579 390558762 972811462 857295225 985830902 165009203 578674360 32434515 583653875 917760309 973232566 171267018 763250010 486292794 875472521 129280789 597969809 96213293 606366201 730064293 950810319 392667247 881331940 776928135 812599066 274455398 385798411 76025439 562723325 61132499 403387424 107374218 164988026 929455619 994255686 249308129 285733983 601454264 637368089 947985656 994775668 522117843 890293090 392722774 439682624 663912335 723697521 133843249 461731684 115555111 937200424 283658062 510554804 620663066 744617835 692816203 910633988 368978744 460338536 279702871 394339660 21185113 860489326 579911309 756256776 564281537 806680662 627194241 640326069 203236758 267877381 298276750 772839338 503966878 859745785 975122021 978980157 463143626 665854245 221975069 485538079 289395512 730767973 550097959 831454442 450697882 775293470 639281882 991549637 580701759 941546222 880538879 986317539 875065476 898198339 784835948 828535987 20869037 180022099 711689944 871978863 451049466 694194899 746917563 748433843 272203010 401469172 308707729 846095071 537208620 974878708 60308142 917317276 398736678 794868285 748559243 773406650 832027798 938894879 353714856 446576356 477936543 643301512 217752839 664076494 199751668 411842449 554679197 677267439 279667730 796760142 549827669 942877408 324789026 432473807 537356001 768734392 271749243 929734058 318767579 432664376 650190548 882269872 402793002 887883049 486175827 650424965 812930536 903215132 406256422 807374385 935220632 998796542 232435397 969718651 432600084 985236803 406636965 853962640 233068997 910913484 228112851 819807695 318668113 450876455 236538033 862905348 557164800 916059207 241242407 523957550 926156429 941601644 543275922 873349939 659672766 948698061 963001815 983663709 506244938 647043011 648776519 990467759 241281182 908104991 402216494 486256450 269655965 903909160 520790000 970584144 931692330 962055988 193725938 624146978 330702584 590942335 495259030 835302824 382879403 777264382 699814990 858070168 195164423 218697433 620298295 954345376 751534008 925293697 183997094 233092403 625097910 968887214 769651345 923281190 722047459 741514402 496856445 898521042 20747715 409342235 585394808 812237653 1806418 9995545 197809692 392635111 176712905 226931448 592419899 960757332 338162866 587426109 528327424 756737582 585655605 683219273 299768636 678004320 471119981 693751683 693999913 727669012 131355243 197725231 771535036 916794695 386337029 888738382 87657085 634226097 647265435 890265958 993406518 994548111 423586529 858597291 177271463 864346928 693092120 989949044 88997919 923694907 258776735 480180116 429284733 642296323 380159984 395531736 420670067 684061363 710547529 996116738 897552445 948756868 463272795 882571353 983459185 987960060 997799467 999211109 931051783 989193653 922124334 964068672 17655193 966454120 931193164 932387292 746353488 777513264 516204480 799857965 261822088 982652974 706572211 977168146 866137363 882322517 573321901 835344436 916423802 975364903 440446625 933032909 844178086 872376684 698700906 745584463 983482576 993820196 404730296 911978293 678716737 815233550 54624558 638535397 384458289 943825347 434175207 972480155 759895682 957513239 153945959 234037232 478080582 773005678 446368374 704170365 491020437 700773468 11257623 415656144 422014432 505962600 634103290 766102808 251020344 761965165 66354922 839458225 186296721 481721068 506971182 568279266 531487614 890526175 652765672 756963455 410524797 956170910 921572274 993747499 453442418 827174166 697285035 735541242 309043072 342787641 832876865 888494432 591693927 818006391 755507391 906376304 155815351 463677327 187737524 464457664 973148191 991245523 56517110 593494636 685253150 929751900 709625848 809179263 775256717 857097396 360924585 393903904 215657847 519380036 669412620 954030217 294620347 479767076 533034409 927289003 958355040 965209038 100880177 808706647 538341076 710189311 532018733 941268267 303292136 846891876 792878955 854069453 411608587 809786162 303198091 875180735 927614890 947860859 121310497 611501191 701995004 842384187 652244994 838846253 67854540 585424672 349623706 904306246 271249285 593938619 873033878 914371564 807204076 948374891 932552333 991011510 762456509 912718930 273898598 607456530 663848938 843954183 389593403 740597791 544975592 612781039 637454585 802686179 184575494 492765477 136724346 992778600 673961745 682242780 300640469 528863461 238762038 817679432 179125772 694844138 321076053 808124696 484269444 703070193 734157740 835979373 472193561 767316048 510053849 975575843 815450945 978361315 641973801 654664095 479566123 520454124 293449462 475439921 893619163 939579899 692665594 981729821 775894148 865122897 479672406 848131413 51204187 138966371 112309974 233081016 812865549 850988285 388853269 485855131 840889321 879856251 354958340 919637459 593899857 728052495 558489965 837098327 966686152 987730114 989748646 999150159 176002739 464287207 23945290 226846251 521136837 547280277 995692387 997473874 284482061 437335471 126181942 676403168 292427515 846985432 684013222 855458245 136147381 672726497 939617460 951248791 717489157 934834555 202188309 938049689 813318517 989300154 929028298 994889384 29204182 534222847 713833091 936126839 154372130 701783516 362781634 974895888 61941037 997186377 782316318 854271629 627546157 919054134 390040404 907566268 209850318 704222890 601790577 755021221 366354610 778148571 311829569 474397452 722986655 904036076 844361753 890890090 798387013 826353241 77208808 986971583 404801448 615172034 419598999 456294090 857263789 957410369 876919630 882414125 819412924 880361164 616985700 984837231 633490914 787060798 389108019 944319004 399577742 984286324 3818535 536258703 9203200 722992767 777104330 857945564 290493018 709124385 457389886 751469504 565201791 873057019 166375529 802813005 985326397 996938592 212564969 469469113 68959013 357293905 311185332 690445034 575627037 629840394 351902052 399784345 64138638 700464292 90737942 864611011 884553954 963354621 156438406 326810167 911688467 963506754 635248533 988085822 259724286 640297252 762735481 809117639 562443253 630819349 932493393 971245606 997877859 997955605 713412756 877654844 691109971 775421764 713284716 738823632 875389661 928881739 311468459 477558564 990777526 997218854 822500367 940513682 67261994 526221248 727222985 933761830 72305694 178121779 786555690 797644532 788893665 937123721 230518447 855423187 367135175 417030245 194049183 269806167 415095715 666583829 21438082 439622882 486288642 541478332 796785696 800696611 514434153 798592092 889069368 901275496 686704464 762311277 375945740 495953062 96699882 566312390 818920661 851033869 705610119 917849788 128883256 913250792 21825369 886877336 286754290 411940109 736845607 884193976 540031011 652416881 465859431 514417282 193777116 685699613 277921834 759406479 187660281 744001625 963416137 981877554 780256909 955062727 937897929 945235359 812758229 920235779 164609364 309013939 895332600 992981850 880402189 974447138 358552895 542082536 606275387 880014719 288907520 406628391 330174182 726706360 855096411 937948653 86122640 723435603 205578628 932389777 503614951 922451989 621851564 713683653 510524529 706649625 973022753 978774186 921743681 998167792 380115106 564991771 360577802 696489423 579707206 708532031 846201555 849299207 804825508 849391305 128337961 783573726 764540215 801817474 483570144 940084955 956690645 965386270 307215869 915119680 982268263 990126091 164823826 680447900 712983618 749570965 850276478 925333296 74473298 942862814 75178269 89574993 684041943 875182715 757171929 856894544 955209587 975925217 606842567 730178194 525640514 941793177 844740032 873890697 292093810 916643682 330422916 753926832 999746076 999944975 292782020 513541186 321966968 576296517 730130751 779862966 194356898 921423716 890699738 976245408 911176404 968530217 376172174 723023738 481278438 846455266 508753598 531795433 926717629 988499510 353658400 696545922 208392413 936214549 421081538 841592666 109659402 597870235 303239094 371631655 334745225 848626995 805869328 981538025 384300314 863495339 820657344 938547673 565438706 940051392 838580142 981924883 257085525 710696006 846869012 983841815 81122195 932980030 855101921 974487527 356897340 791490435 466905231 902469408 562010614 751280310 128478425 684942729 629312877 637581699 395636647 612629701 470760057 517708634 820835994 902839286 202983419 507795993 615255984 894139268 617285582 886404488 317348840 370488042 631876671 852551588 81048503 343275877 158264419 860703298 940405326 958692714 278563415 853924074 25478987 814974763 183793047 570431525 835896071 903045853 10531191 657173895 235553590 649561854 216927013 486630693 178836440 597678521 37855058 951562653 228534678 244729349 479770151 569063088 527311127 533555703 344534450 686060784 246882896 957141609 375286852 897958023 783419877 996041352 268389094 837377810 343296833 549681021 470687232 846098842 182511194 829633278 521469385 636520584 92810979 806595391 922155832 942370066 211944066 983606947 537034192 719538113 975928323 980163078 632474695 680305519 346509543 697334750 166614552 774669830 96115425 288894607 786830052 969043859 231282889 455211444 534272787 763097513 336495251 974778430 125911142 265314988 323082714 397902028 665823138 969398197 769450924 819876923 549817003 918885239 812277631 825234913 230401622 983137487 793476796 960978816 111929374 257582624 379082386 465861808 649697408 934710457 805995199 914674854 782087748 996744024 62799667 400632765 197152185 988323810 709472407 890642188 239649709 783646773 543702274 843239431 412588849 489129900 6859361 483164700 752764939 823947720 312686709 410843711 255907452 600141885 227293818 457344699 747790379 791382935 40348099 716741089 694219986 933063304 313078535 704704073 864310811 907441033 905806106 930939258 586148982 868498814 709372225 939573522 628907562 712725835 141783491 984263535 491646063 888849129 657394784 940778992 65827647 313398851 497540123 736527917 906476566 931183915 278073406 278971472 86425297 853318745 423479686 427034659 700234900 725980379 639008632 865391433 251018469 755306789 715923045 892145831 834682851 934376242 218203161 963981247 917635440 971535996 227522800 473054576 86288571 109646667 454897505 551745208 302012046 367009813 656934275 974212173 420117297 963455258 150017690 661662426 768599787 863165372 795768365 967778530 383656280 791732550 390434083 787706642 334642251 597647589 584718624 801146246 6454384 329283115 517361738 694152257 323977456 648697906 315824716 441681113 483744378 610861377 263083582 457102254 866738514 988245439 645610137 862702777 424358279 752695324 200000611 993082569 652528477 970481904 307301434 847166343 450332040 560733532 410891677 983444202 13018315 499711373 632768150 721293107 887513528 918713265 248701202 774894288 840971627 906288352 709200606 709249856 14758713 701210808 303581614 579263496 383297924 413070672 525286712 638988857 794809508 937406241 680425397 733505006 715378183 830991529 530876365 644752655 115763776 160998634 227438636 701716679 85532979 96576730 151164962 987373605 85026910 940939054 50217754 386873236 602082348 935841245 832401910 987208166 94444547 569190335 546236905 719626719 784877176 800746276 369809340 841999870 214128525 568819017 23555969 500163176 226829691 648367979 494135603 710839662 731054066 926592938 576989489 919453351 276874179 819756065 140145852 886443982 743529226 773830745 594374224 660229519 493352943 749575105 270129354 612161423 451093139 693649088 987160288 990774719 296083393 364256751 105827954 728181364 870104843 949564502 793239472 835866121 383009282 663773246 918266663 932710753 774596847 874910799 311973192 512708869 633657441 858015356 989269860 994566863 969651469 984271335 305841440 820830087 915567376 952065970 778893389 796093390 707008999 916581453 557254212 984128990 924200953 931001730 813119928 895263110 381972564 579603099 844225462 897277925 201162943 503864616 25356800 249195512 644828969 673407256 603807231 764301452 251234703 536195785 902438145 988147162 979993994 984613626 59973241 816712735 655871215 888031600 594248215 853707685 906277283 953905659 838555160 956937566 416430824 702706777 687955630 897463407 735739371 965302491 190040684 271343899 167806517 886705669 937262908 998133851 999293195 999409582 902095299 992574495 671526267 989779363 427835111 949065300 922861221 960934185 280573516 422650559 951969375 963895199 533816068 880848041 666238130 904083210 380118617 710686022 500224210 870975583 283242529 671128582 285403253 847965086 558303836 714097404 489587112 713235296 419446649 808216045 684754033 849816085 827671003 885094695 734738955 829352184 166109123 166471194 952037085 991326464 639448841 679435180 44812747 290694583 886445480 956898919 813954142 818916983 347117834 799161389 198669960 501015176 844087845 942090103 997190028 997243640 48894647 260933486 646585139 770452956 847783147 913601885 654535850 685560417 588751995 775093304 549430513 932923762 868512446 905532610 418160017 920732738 680781920 709644452 681399926 860510166 926478325 963402747 797702543 845268430 385677997 591265839 12703883 608822694 437398166 476944634 819070735 887879954 978786362 997090780 646767693 958153061 250403108 812264273 305122796 951996016 839558299 865138340 115060335 134903740 928268937 938630009 779483314 860825340 847697446 857508059 331560682 495280999 591313405 889172884 413274034 867612810 460164904 964315918 724535530 873342980 826074751 877265935 768588177 871984633 783836511 973545732 861432099 906681020 234146520 728863130 776924131 870255743 53859686 394393271 307192499 743228794 343370060 590843579 475460004 483320549 491418992 868188294 530025684 712945665 572519407 839605512 875558729 954374748 504361104 528563813 272760158 872319671 46411667 290141468 692955915 741851371 584552353 797263943 350536276 410134665 187103939 398720542 784596909 950583338 541987277 974624591 415097779 903693046 489579802 622970522 907809916 984066515 624255823 831969201 168672667 608329923 173322698 320707533 322801352 775972967 4733380 938893532 179832926 532865833 276098725 436848645 979577993 993852514 125987602 336701109 511233093 599451087 439291475 934205713 103966803 681354428 818931910 936509867 522184209 892710084 972298275 975606948 795483470 854386001 641159877 872591554 935446750 960941999 607489558 708743570 116997554 826129414 105670848 808536148 153720495 668270897 297269908 793939429 732958088 887112726 481376428 624868505 532442426 759045620 576530575 888138671 681726904 964512021 513206054 962639347 690900526 992983283 852301383 921848947 733627896 893857668 886016782 954050183 824962982 831325527 954634266 970936081 621297375 869330436 858944752 906241618 86136635 683677814 118742655 396860648 264825547 492076849 607638938 995654254 599483321 712163689 500330630 665148106 361936024 469707148 407150530 932263878 731061095 978147880 404447930 540314891 795232277 906257491 127370374 266876823 192000291 289120048 280513714 592883917 864883624 902222141 133049871 560842794 74308861 332099686 352201429 745640465 439058014 775479023 416977342 737184204 824955762 858056878 698438221 829711463 669303706 940785952 814829791 990052677 851522021 868245541 135485604 755046574 406303817 558354679 688134265 758583056 716302082 909524933 886535759 961576634 695875503 845778634 868567149 917050377 732347572 959587700 259156115 947499481 656396514 916186279 942251074 989222632 417458613 446527262 663302876 909752300 922974906 952830463 196062764 399062918 919862555 978049141 989038059 994854374 177339694 588259661 712957086 901184305 556604812 944079238 993731982 999428451 384254783 997116391 851466066 861777397 660326001 695525450 969193584 987068059 341624421 537754470 333417342 814592205 192286461 974378936 541947394 897858494 45874891 507875108 322303412 675777835 185147261 191812365 708143083 774783977 25629838 321812864 373643411 448422251 368828908 752560553 712068234 941084552 502802368 931034426 790561503 810536039 744497728 832963121 399573420 575909160 877759163 900411141 478892459 803756413 174151172 346008263 850603608 993095286 673462099 703788146 153517373 729829134 935872102 945769581 57245283 969055404 390906998 943441589 525790343 696971083 564283905 928497897 127780591 670469048 588742107 856768633 718753521 926996534 715518795 868541207 405597421 435232846 938289870 950786547 998211319 998805768 680002943 798578787 798019070 910962977 668847837 735184301 726056370 951024405 912903585 924512145 386634874 717045642 1498710 950044798 215141584 570683273 528838693 529383869 558338306 584699168 381303276 454953164 3431310 856964063 724149356 882022248 577853702 943576761 87709576 760746412 665506300 949371220 345020218 634492960 615748658 840552595 330875451 500002659 419473020 952964034 743094403 907790016 130260494 371082124 215605679 338210426 166017254 358962924 390626616 784455131 156566248 534945706 42449942 753892222 588175233 813405623 277104699 388492763 836096746 972505816 430245756 478618263 913012898 962436497 598611767 781863497 581797627 972206783 341680755 367060203 473757709 885738558 360005320 512212919 713779297 745504783 524440273 577648629 252218234 935966857 414573239 609322741 537756312 707647631 358576993 989810905 522001375 603463225 240912404 310832379 265268457 825424097 724237271 852523263 77897246 83017374 47798438 582415931 595470543 768583465 58772640 215617722 382130346 881813738 23863285 167953698 738918687 839626390 44420756 46252174 399559640 848581470 740926043 996646749 691937189 945084961 458808942 609107006 298901235 376902435 504298095 636184470 545442242 629058990 264228324 745237286 409443503 658609140 146030771 170291179 852427808 867635016 760171889 809423829 57068197 624215242 143219459 205635194 658191120 893624631 971950620 998943320 207588638 980212893 221459238 449749623 252017223 733635892 341127385 985150289 453200913 932105047 43975775 810381870 567504266 635123215 51670018 278769197 646461114 746115115 590147470 673261041 358765682 958755220 643559731 899382788 679950215 945974542 552842371 862060886 389323322 667581056 66255118 583183499 518375052 860701314 224408505 267347422 429418540 460351660 516018580 590313019 948087505 968827412 351910231 567197023 341216590 864119953 423895089 978272427 373684401 525354912 62071882 986466226 725067144 913050902 933425501 942768385 709636776 796294872 852929589 956405497 498605047 842913724 592542895 607672295 706785435 921615921 242597738 352867292 827131515 988700557 380800427 925740671 457116090 462515540 470306231 911015040 883666746 990308482 746347393 851705870 292830572 745240499 914580002 922117133 284374732 464817487 740804629 766515862 74459155 347111305 173449791 639702497 834895023 942723820 16262668 732517437 975052583 980983431 870679557 898017065 88572835 611625542 481251776 671789983 141978216 327442809 289835714 472873691 683411682 782640786 409546542 506322571 148733450 310671285 849957628 937533868 38064285 471303022 776332875 781481473 819081844 973713484 877896235 945166953 650292041 955896392 380818739 966084099 232294527 889439472 950906524 978227342 787812352 923802541 229913054 651556124 973797833 998799758 898375843 941329884 983789641 995978970 101574813 765255159 116868895 380543224 996571516 999393561 491672397 700175105 867122826 883547177 66445152 649177533 434365837 558609619 162872115 581225170 740736456 752595385 264569997 376330902 977900086 978805852 14353241 677795775 34679597 194603829 788026270 860750693 400067632 468895692 842363493 889664029 330161053 571488755 719679165 863488164 697592130 812885968 117765697 648051916 22744272 665720359 359626360 753214946 76853345 520846167 21012466 547590817 142496711 316660871 966432188 978482951 743307289 917834834 195746304 392444051 110446230 591793798 234706032 411499873 879647329 970283954 267536600 713128777 327500986 809153053 328433767 343401786 843036034 847483140 669582548 774537188 992210619 997122368 478676255 890547138 787777896 973440331 681073265 869250713 177816800 947369000 6040464 871826600 814666247 840400758 106556189 844219263 985243831 997851328 419674459 506983711 866282187 918071379 490258455 900117753 244253656 328390010 282146957 943059041 647311539 767241305 187664699 493194388 722027257 922677824 206614364 492637448 560339423 568715116 802285256 955058217 19716957 628081294 274563106 706238794 595361529 678472541 874441320 976199113 344296873 462101102 282458635 380071017 590000854 823737344 746010342 778683497 785795252 867950618 183561620 768985338 721135037 798654071 683611088 970583740 815495292 982714866 254065217 790245795 933680067 953421732 281829667 340222619 17855057 998770787 260404720 681699714 489140329 857489870 883015393 900174369 458736520 538161715 335986095 521296566 358404664 579447868 347007774 488984694 988890518 996652361 998421116 999641995 903689432 931552286 378476193 657661564 544580686 894665895 742315184 914905678 206114225 644667778 525077370 996035117 174185404 569140101 685211486 772689500 845808059 854515740 749984337 952872527 151894071 491862728 510076091 656391903 978301592 984458370 945163924 954107165 429768512 702088939 690160569 802118767 752023298 863864860 591205054 860269804 568757215 821505538 433789842 812979307 332778834 355013904 42644790 685991679 694246815 823389249 252745340 818469044 938024016 950102362 534374596 558645876 825026360 963407602 506820773 859109906 704976556 835493058 69382022 907572325 155344392 850818601 139193500 420471638 621495337 690536462 411911782 672412943 87436025 550568287 924784909 994811998 727373305 982404697 709881230 721832524 974817842 990284274 312738960 941816298 953099934 973368194 884623996 976883925 774369449 862697975 597786938 685380025 406078431 816736761 202278240 836988571 370969224 773551065 831486709 940852238 442203365 545181683 62540070 699002710 12130238 430237342 564102178 738377717 988119067 989268729 706758271 998074063 643175588 783397206 836122018 899726095 638077074 737936253 246722786 446975440 131033568 627847510 488308892 791960276 368651563 439407197 983128948 998404032 274092646 492011359 460957008 464962848 70637678 603363904 642967073 904006342 662574228 892940350 707272088 746451605 472290611 819492525 31161709 243331758 643412555 794347708 792172979 902596871 855207503 955532357 413792355 728749024 158905610 490040682 483333478 960536434 550822153 714129445 141201587 975473671 19709475 460412482 179756266 467627034 551995331 686348279 102553301 818236997 585197355 783002557 774677016 904118510 608562057 662030669 259947927 848286808 8135401 534942503 944011893 970777934 113373402 357130899 173026924 833570410 633876258 987199828 949264522 955877649 963933425 981314510 827233931 948853621 366621977 508437575 921342322 925878336 740347910 996793173 694022391 785003335 244563727 742910233 349748525 634707104 187273368 805001543 24022539 948713345 62458296 728476534 2548261 545042906 920925306 947927215 98429315 749922579 296757230 483241732 750062486 978303572 6964430 72745338 819563899 908075405 514075249 549647241 515295233 597178944 383295274 980386147 907272736 956960160 699547681 732159293 972875474 991814294 865050159 920080307 13772712 219807206 981166490 989319328 616926013 643047629 415786426 539450833 812715218 861038453 867987545 988534922 320841417 351455884 128084440 465498431 976432923 992204402 65066159 535783782 31031858 757927967 670339589 977301462 646527150 697114625 553065822 936354857 721650575 725108496 980045804 993208812 691734249 925754223 320354136 654675492 403692486 469338225 381646978 778592999 912677942 931430433 632911463 899211197 787999221 899601927 388574323 748728981 460750169 522870225 581355914 781688238 850988045 884287146 169954604 465942566 620958883 725105402 814710324 953167986 733744448 922541564 698113541 997376755 919038103 962959251 748955024 929071788 382285491 869605673 182958619 714420134 116205167 550925650 949782218 999997702 457577586 600421953 493045365 797021226 104584828 637175879 658070404 798960530 830466324 950313733 595935632 988558307 985805065 996113021 475871550 587626857 393177511 640924392 592962169 671020413 848116426 921366605 659611976 960917178 438766658 486163802 890627911 923405131 930029007 983957773 459694415 468267909 678207595 839847896 307655991 977595111 136941230 164811518 749797124 997831417 409992591 457200749 439719468 959541829 816099223 998039866 795148596 980858538 22862871 787218017 791282339 798708397 669734176 708427932 268833671 520189909 581752903 885927042 731844268 896475673 704169141 804127931 726994146 840487280 214129831 807182930 548584384 781825156 683784939 703030847 571499624 901477869 684999699 944348089 538044100 816936173 715852460 954939016 494310443 596689737 740077924 805402868 17427559 935369716 372689284 735386423 168327148 870719979 97176231 838016669 312255251 923769106 445663928 649530680 774664104 885740993 256288364 480203962 837428360 841419273 764016560 807432067 671036081 727459853 499576921 932019274 114488196 777950787 224487739 583638007 760460316 846581074 325187694 337505410 755445046 972095774 711686651 791169333 967249154 999414767 389437043 520110727 654459337 879686191 136671743 308458505 189003031 850077540 916189241 938072595 664402635 833493074 154612378 842141654 903071580 948046851 682104412 692778155 363677902 525474282 889345552 932647113 416446213 884816534 616884857 829990763 496050508 871165854 867557792 950659616 531696162 951996523 661846773 721618602 510134340 957593201 751167599 820334234 241471858 366904178 91067311 699412590 270982814 910764738 687549140 724100059 411551330 695119042 164594330 416105509 746163111 783887296 353164213 932148611 353393601 672243893 406603395 696112481 944922961 968517304 714702155 998292677 123562455 783967543 487014318 661429849 13957999 182248080 760435875 788791683 474374705 986152923 240365632 309740946 822687737 855146717 204994767 852799647 872140701 910223311 547489069 694442349 594847895 695536095 611815554 936653146 329331868 387052690 825317520 935741445 225964282 963708045 319611930 340251173 321048671 500965060 712585357 839389022 247639065 850583116 567397755 719505132 69554143 589686348 963237519 975188835 666690067 801952232 835659984 860305458 119242924 733015036 29662815 149361858 565256691 775979411 925706810 939096361 246292780 778068545 211988801 816351247 623069142 688667530 571831649 995187581 697909632 955753284 466182422 986742077 546993112 967747884 565927547 617563255 751577499 817492288 69504173 493229945 788257373 944939656 389501061 489883810 666008675 917909503 447927824 924856728 178192322 897950299 608846273 945973348 456659526 479249163 433127707 682505922 284012391 987199017 249844992 372709283 66675796 115169456 723530297 915374430 334338169 960707913 785370613 979063041 37716202 815486393 35992615 147354373 65741090 670821547 860338925 955105026 331992573 925021368 839193794 931441577 596554900 839932597 552812252 733424653 505203222 841549596 443474859 777915039 990287514 999031828 770810151 850437735 469976532 625564911 243173031 902226654 755720442 860258372 106039618 750159273 243646340 286553034 451070039 796177423 353250433 624139198 53639053 686652197 881839998 993268920 685481733 972953705 858828740 983431629 236191529 514050784 915533413 916123489 995021736 998403057 947252768 996797696 589499842 613174691 692479260 828621685 670923884 984506864 28326240 648306652 333111989 474669120 218767451 953061009 470921666 798216417 188068802 828973963 41024170 94185320 343708206 576496782 105735152 845628490 619743664 850947468 815654956 983184822 761467188 936218754 277204971 414742017 772632320 937919965 735826070 900440352 23512466 168788620 586311895 886860511 36683289 458053309 153843583 313226336 440369636 940308257 685281581 729047496 293415500 646119612 482047231 493370141 529548094 970777127 590258774 965193453 924515507 957939679 782749374 799159047 428622609 629995597 956415088 959020512 412723898 663838722 720218424 901235380 655133904 731126530 80074869 269902093 179182310 663501021 293612013 843118693 349743127 684877226 166769574 344563058 45713391 751678872 117669651 478550148 872930694 930941678 461986493 926271423 878339751 890269382 813903174 905308338 716519924 932512953 46653755 965010600 411291474 562006849 193755432 516480853 46811649 969492347 680182046 995807728 811815109 927058754 676081143 688839946 416654294 821826892 778751883 787582183 898880175 900492886 364322000 488742415 939392804 962577465 154636576 770003080 56850785 912389390 139475866 838856182 444969728 729888524 686493125 880568707 127606906 407568895 616260856 872340936 179096915 641605782 237303725 887303418 58143776 526593068 200782154 324217835 392673224 423781455 906062807 936981722 356033265 780094362 565265293 839697821 147775187 927279250 610256867 633704438 972925357 992397911 368320135 646567928 824086101 863448443 754416814 850524689 413321457 849075751 596240291 646833091 58470455 317334439 36548393 165026169 397205683 496906507 808874069 868679000 500230642 617402537 335307353 403934593 669801593 725557084 950316451 975160563 984334476 991677768 643303113 837587166 892086990 992652281 455125352 958655400 829429985 933393336 215299452 429970365 324580267 777702359 196358058 660726992 559611922 886428530 908546669 952560978 691952289 837116579 950273328 976121437 880711214 913851511 916072582 931357386 959848236 967127278 163870805 436231008 565632369 825590329 778338094 920640992 924464712 998084097 93619611 760347404 548211489 653383077 140442183 751211468 781939338 800586224 179027583 545269807 915677206 929650318 886226325 969810875 863508685 934617740 248164479 930125537 681215268 733982729 290607181 689965311 775244408 924982690 209326702 662477831 528249220 873082943 426689337 584541002 423439916 439008519 827154165 941876439 87232033 404459244 920841348 988464752 548038540 725641517 727786285 805090189 902394195 942016084 72176643 970582951 151146688 679990011 183213118 754505276 561132583 618510234 626450741 769836013 141227516 930534890 721620203 969919807 314054434 724761045 807532485 881147846 340004467 552394078 662386110 906890689 828466328 995691037 425565317 721556281 200393248 981314320 548488255 550627750 584467206 878703571 604665166 921699840 36273387 186307601 348793779 373412701 808034332 922887226 87393475 759804194 204288439 754878689 302491906 312537672 259828894 690398011 707474235 785112086 573095691 798287871 202278359 463916449 485174383 922476554 516526638 699702182 604645539 753950781 32211277 298380273 664005778 751022536 538243114 768243553 4056564 491123894 721388985 905937827 19905615 246198729 572102121 896769640 164844922 949292005 249654239 367055505 455906850 800527656 192332816 607515787 687798034 925436460 40008366 86626511 327751397 764067397 586400116 764793803 947559522 947843597 935173809 946580455 38656054 471201843 556914575 563041644 489730858 798235961 147788077 962724958 592480618 823014251 470487564 831810867 741812492 892568234 919494623 987260192 432059177 449548990 979829978 995555034 607161928 779821021 178344427 406445102 512696761 866376489 97801746 754242961 397563200 933936744 388897542 817752664 142321190 565154406 22955295 932577970 928001533 991200735 865645976 932941584 639951420 901601411 391929821 982670712 376143800 832143366 335952813 884627948 986006298 986010830 997712945 997891735 466535214 903536349 195672361 862679859 88638800 986730486 73578166 151732014 779834080 851016882 632938834 893085177 539101509 869560105 550566476 728402693 793948276 821004534 872277736 951548768 708145143 931640117 825257553 913339684 992486997 996208971 626625626 976923091 416179258 747123494 23020809 329933437 966230583 996239196 989556735 992670148 239724216 954855401 323708102 584412265 656390948 908355968 6445060 352283884 552732464 567125231 331617307 363074064 139248134 615234077 11369259 411134538 300981099 702947853 496331044 734243030 935469129 991910105 510647263 959244449 382490781 532206035 557211409 719818734 54236438 136132344 934180996 954325709 777983852 875987157 391441410 826554837 274440336 886484962 157451531 220431365 756398194 916888940 37615018 291139273 399303859 426498389 724536663 725835913 767159648 814552680 229436883 522246613 426708354 934985374 500842371 534738278 964757267 992165545 408145489 932538413 421829856 735303666 169762324 717005191 279475489 802010511 675336217 871289078 636239333 846983080 739911030 918087428 809283787 841435587 768853798 967388208 121584416 262246254 609682018 647100190 77867570 100504026 699917981 798778347 831197908 983877021 337422077 719414639 407552171 518932573 344736645 965644542 79555246 575761356 910827369 982658184 7285695 400192611 32228227 769928397 179383825 529389397 384019004 883529208 137710367 580188924 824614169 888756488 45542275 87208044 7841343 490993993 347287440 783870075 131360651 295835919 205489636 243666767 651674221 666370138 746053850 972922246 721126485 795052054 35490067 460441161 232961576 529166979 685757961 928145423 821929442 975787060 792014356 865502511 90488458 208455003 900622128 957461766 327499034 466910721 34960690 278899495 137690763 169078455 425726574 649727089 764008650 991356992 260869445 382294624 209824164 882351478 836515460 926709320 162033146 291347250 615076222 721925299 542088026 599684243 197749389 438534631 870708558 910950469 230589728 425074800 54956949 160131709 345869082 517814423 15916061 741008555 628573211 912914149 158424882 868498914 678161393 784088472 71160471 403868656 22365804 869182447 587202062 846874703 421682450 623633123 578785626 812459765 511295766 881844830 224022395 409058772 165214945 178386150 689421755 896258719 566558095 901522848 73442599 252244058 28608233 981786329 976025317 997464581 496561901 922752862 195633573 458864765 842998765 939757435 326533701 649006816 930528702 970226890 961592323 974543475 137797358 192193579 654615290 719953798 930412101 970524747 466425597 947721375 768493917 883659760 252058042 618323760 835583884 989250205 439405590 696465605 191327987 555377751 966359207 991381793 740917765 940500295 737466981 753067837 966272147 976470326 473001198 647212017 237088280 409798324 947734869 957824336 537668729 553666363 750673842 966232140 207780325 574210727 481020352 852579739 448265543 465051861 197293802 369409409 404204904 818288641 401017227 979399607 173178226 244632622 681499486 983131193 338816855 873734698 212877608 886094350 872866304 926052652 546082771 557420091 747961119 931100385 131132544 295306825 651944182 658955203 976535838 981643176 548931347 699803641 662790752 731287140 7782064 397604115 40280623 536333025 271504520 654069543 245981943 377832895 652915080 830897938 538041685 564377854 993515056 993941799 274953128 334337539 272692286 452304170 919660224 942627263 929989495 948689375 905284133 948313903 358852488 669073865 832226359 879655252 535014230 876656097 421696367 964862237 435640231 910943680 930731880 947985610 873432951 989395293 431607938 771580071 168765768 192506175 661648441 678593326 854667971 980180582 593819937 988561052 253554364 707284238 713140452 843231780 543143493 559973362 753716170 974570557 19079554 594275051 952418140 995876935 410913991 675776020 208566694 875507587 524230743 589120489 574347923 880367639 39332502 841514657 222466469 526453054 544673363 642715452 831620639 850017338 344921606 607549504 433755295 972738976 372879890 965572848 904024600 954425420 878290322 966682214 489249082 743940567 858185553 984855279 824714990 888362245 449785329 824089716 898362353 926514056 514429062 690778504 174557605 572058882 645808180 678891186 257288896 922451401 27204850 346200879 529548599 641519729 204705284 604718962 879493699 971800607 955240620 993021767 460852994 852451808 447560683 799377930 49447012 301334568 628749185 666584209 236430527 856552948 714295181 867477321 9062932 975537575 210564174 665067925 883067682 958457504 542953991 768252939 858924676 913298890 119560990 398823614 669924647 710779964 706863434 884085456 109333859 809238035 453697819 898497875 952317932 970420344 6857602 49700335 26538956 118850601 128994174 578891747 218032978 536833632 195842287 616026223 94309407 640849395 607606598 764493674 882911395 948429548 102212105 296994026 927341217 987813324 105930887 185516925 974934412 994934482 132522545 183815282 739430083 766935475 785321800 835674782 898310142 916023482 187542747 441475416 939473961 982159917 150267977 557938866 103012665 528243578 522687439 604221385 155544337 427908730 113640630 695719520 650237624 857179852 243299308 745173532 771812001 926479128 387264684 835413892 496798222 498930007 370574607 801145114 511199046 945052173 596660833 786150581 200182608 304771442 865255787 893064026 280077548 802390368 976272385 999427515 694326604 694785735 847674465 975140939 788113445 838392942 242496382 860815583 720618878 743200158 780082796 802375390 492452804 522766114 718800612 790095691 148797791 858497071 604771286 792739417 246093367 540358529 707273920 832795660 930235982 983553949 881809152 947617677 85975800 925422321 596793022 618101333 499771327 975842797 13012181 31283996 129364691 935948901 563680467 827250057 292971995 361175000 153104423 783151427 668820928 920112884 725284084 996467743 698073587 887310146 420547972 869304978 188505609 938074362 707982965 786505287 878380958 927176900 577821727 729662014 873804026 949005311 210297953 926769164 727683553 793986305 658980448 896661882 549672070 988653271 467335690 538226728 412556056 941747122 315053782 936131455 289392936 778449231 263053192 763641254 523569260 609033986 369655157 378700299 326936847 420400891 718348583 899694213 129878433 515185615 305520092 357829411 976729260 987117781 621949687 814319154 88997284 210798725 399002942 741172372 294960048 823359593 375501182 963458217 27177281 202669569 171464758 792854212 987861540 990320570 353820541 504531364 809081413 934023568 828217774 841645379 971438811 999824100 959920755 963158874 703200427 812442678 945055670 948595816 663227424 962261119 96185848 196641913 769634733 867945003 135191402 629126531 566083127 978426845 376401577 667635050 963671193 967145915 109008484 822332003 810295583 820357667 730916339 989247570 577842946 827948626 646562935 682433616 117579138 921350481 561647182 771065848 194566415 977638061 756377952 831893166 293763663 435711938 840167619 915380064 722450009 785628441 285986988 549654283 173773038 551058189 687070098 846096395 303687819 541463157 973456976 983838142 466749172 573072753 20323128 301287512 138508410 493692120 287261072 766824109 572258570 657994853 592685562 918117322 326334658 685099644 196590143 774938174 5731901 219504640 385411648 890813066 896667542 982876911 989575219 992620839 138825975 344231459 207827483 969830044 6701086 69665927 841565759 870443382 4222981 776008637 583793120 899171272 845417010 930946644 505512956 880180468 72481469 400430015 957550244 988119830 565357917 738883532 220153239 295603164 644019644 733897868 954601328 990678150 211853638 812706233 889969565 942362932 770289315 903448892 77562912 274440214 370187947 749164048 81618250 236333070 737930639 908583120 548623885 786890214 563533114 762093827 101859895 452417387 615208655 653631807 818888779 994692107 13240358 310388578 142330797 958991181 291929784 436985013 448177428 696269593 6535138 312557529 574253774 894382484 984815545 999455708 305385794 953817060 727139147 769730867 265185378 922066665 282487902 688021703 786951074 969046244 607232970 621388576 613055762 830842680 875832818 895510903 314688753 709739347 824117627 836730749 69744543 151187114 253252585 781822262 14803048 680517181 519919207 660485830 489664048 996272318 913734930 937698688 600429899 869315656 440901798 587321643 670297196 829360440 690032337 887968427 462284606 861077317 860328749 930118100 224550374 450424854 322309638 872268574 541060422 542663555 546178534 835213411 371690552 733094411 595652074 974376734 481808799 630452724 591594193 685920944 376507564 728879069 199326179 980214028 900972482 976536687 672336649 856721082 237629519 903477561 78508427 458888847 654736653 925145588 188885359 745007556 506836689 571356200 123926918 172549009 317468179 588548956 856264505 988235447 62759070 590752039 265287742 293399354 427446922 883279402 737710528 910766748 680806445 918514596 276458424 821625634 382455058 578127359 391627457 714368778 205112140 599362212 698582829 895919993 102264995 961234939 350338563 773634203 351168902 955885248 202673030 288844801 628652781 988074773 402767593 617017939 402521986 437969439 360138678 384211830 781390368 788358280 464813099 602749472 633531572 898832457 251265133 701116801 887073156 974454911 114268165 719625677 841504587 939184914 250475656 550690114 657409759 851731013 443723013 720165872 866030560 900948410 773278043 795437497 533062263 573865236 249638650 376166454 694766745 919599429 933534218 940341213 904885694 951236811 655411817 890827671 400290788 444860177 758977251 843707237 123092762 227459859 644360730 669029410 248707401 639074444 917513211 945630848 20546376 267707708 193757528 721715619 25939678 106848350 968144745 969181026 685327943 892955816 134511288 936707291 84870976 470822968 240899256 720627762 373722317 888279140 763328132 831158299 578602517 980364331 390417315 651278441 922400940 994666926 795299035 917721016 66318109 316957263 616581958 818157048 365164048 745709472 947360425 984899015 316943585 804758988 65264915 623614882 965263531 966091219 53884869 908671738 750397486 828387976 152703151 924562046 725832363 995927672 626084845 697684578 985533478 988945598 88850988 521301494 909309523 980500235 219283380 231624040 949870813 957131374 411082147 976501362 226933693 755081077 902499840 985769600 324165257 618193677 96026932 879886531 342895730 849645257 577659172 828182803 468077290 938528912 643500010 878050471 575513779 610790413 212858565 617784863 863214252 903669485 917107132 929738012 417417425 896420790 860311960 993119385 102142222 185150521 677380321 951454048 504798728 734526983 377472067 679335831 20932318 402193200 845627753 931471541 24052456 146898156 836230363 886939186 913422233 995181289 527879909 752532569 73915198 943861459 313723250 437933356 703901831 854687666 974025488 976121863 903242395 984067425 200368133 251881079 672200907 895128107 560769972 780585274 896910609 913771509 923601087 935136126 736625378 912503085 972155108 989033649 12866472 276318116 599298591 802131075 666633494 939821567 194282041 978576292 124922396 140131191 2525265 152522369 896498662 898241879 280504238 578079396 433266078 546032645 77359754 331968648 631453568 976935727 528769560 541188224 564267971 586765444 877921879 944335140 317344802 864554472 576312344 602785377 538463517 694782554 602185710 782421523 559468483 783360926 9186758 440877755 478156736 950253959 199817090 497744923 172090839 309636070 358698217 749975256 399534027 942594065 632492260 771788898 38066120 885416501 213887690 697250949 124370943 596543075 168912543 185476490 176123226 310521178 965092581 975891954 458820159 725237237 190919792 671893946 981261962 989081326 408063862 864786834 878690346 890413246 129956088 560731573 873621540 933333882 672305564 737063745 744087897 825991113 132591045 671967046 531227778 927138106 533923772 538617814 890035664 957382157 469196763 830843700 531507467 690701702 49466765 388508044 649531190 835107232 138071538 755318823 129806091 736828231 744258581 814065531 946037703 988251651 19148380 561143939 380563193 974656016 952159164 964649765 700493641 796977462 965410276 998999606 993533841 996888083 642235714 928805173 343050676 824492627 198230850 527010898 546082645 919905376 304407479 685646746 565876138 758826462 966185411 987828854 377175873 491723531 330872926 717751389 339213617 590953136 831837038 912028265 173038964 684803906 504316713 700389875 781701956 921908149 992610822 997786914 674403145 909194796 319318553 673536476 953603210 955610012 332571396 985936220 367492539 443289256 301986692 746706054 281510016 673673745 845819818 967516082 6418785 510252105 408257667 965779458 702025777 809891868 15677174 141403776 496562935 719967090 843183763 855958571 729145975 920115593 994216431 994845117 359969101 391287776 818532676 871433001 175010971 431462427 470881267 663139411 162539828 740438209 940732904 967855047 334454924 427221275 718512370 792619265 796873919 835135346 223124759 709696997 379573981 611588185 101611632 482331776 36661948 745621865 945066960 962427379 87021437 951566277 451719848 482188897 917603308 982619830 733361701 995308027 492063385 654268113 56292791 339017296 303049638 616995284 707922180 800288107 767297569 990935824 610944323 699581348 375227314 762255785 348293180 927777694 991934400 998074463 609669706 657709923 482505538 494654493 219933677 493775574 83407066 647523272 934348995 993638157 427971376 663765962 37938294 887940228 690537900 733642505 170699159 592072927 99704379 183117711 918072931 992315615 281728755 374109487 244356331 539497166 512275260 514545955 563952015 763623349 805176568 896262052 971959289 990838866 345268569 371911596 692863587 719276841 705533710 929951012 72152320 402549798 332643645 745322474 183877524 256373840 886002594 982630817 38932434 444565598 152179797 424841434 397449254 535898631 387731134 518051629 627693593 805873888 501069383 762383443 518994258 747432595 297233059 705464391 566190320 986183062 426349812 446053371 310187014 469244204 26889438 978373783 845339721 858273297 896620177 946967676 136440795 330746234 635571415 772332574 229066574 906270726 649993611 779152207 655211386 854246129 993242581 993978578 755966397 796994930 423779573 644410402 587895063 918768401 156182079 983873950 762684753 907367972 326054218 575218948 743961704 920719070 509989803 939477520 232692472 507497009 968600140 978079539 840162787 875781476 174085598 870047384 273073899 494371541 470375237 714397255 485883797 586568444 453293088 510486717 636866050 833401786 141517820 945752048 940661715 986698126 597821404 874407307 239358830 864523117 820850389 913901714 771342473 915301579 50413944 492222457 283933610 714055299 102557725 593323088 398388151 802073304 55049850 977560529 679418215 903561189 187872920 645608357 234773459 779112477 101410225 916632144 87078718 502525471 665731229 730381843 780635061 886201731 17487880 967860979 733269995 838779922 627164089 677596147 340141291 969891600 812040603 970581820 134413985 228709367 394576839 612887542 19021952 315407530 118221615 935972926 209498002 490796097 287884465 370849252 147537365 765545890 840167352 925475602 881396702 902857441 936151586 965983527 873931954 916752601 89319718 498353611 384612459 854803978 768472444 952211358 168513344 178658519 812421675 979996014 255101414 377878927 298968637 389251226 63530150 302207834 176969797 244272675 395541566 863947076 909128658 943895951 336788065 366357905 802496609 811826846 707291473 878174495 846877566 934808749 269913716 930375444 328273846 560157927 609052943 904263015 992044927 999300246 386783147 471041302 655421014 865081419 493543223 931901232 50907928 436763378 932442663 995092369 998909919 999464107 614873410 728174031 324101896 629601843 946092561 969393598 493076212 850168578 655297259 756265355 726604280 800677097 401909053 662972292 238416647 578992166 287915827 903257678 902516440 982502239 587491374 616069563 473357971 683840256 895454875 933272184 228145970 843443155 305711535 690668685 904137629 945699774 457645774 769205874 129993088 948375864 923264123 931333531 769426862 874502224 602485722 708776165 750962176 887454273 524839644 956924598 101182800 512625908 843172007 925237249 592180070 679876713 520308351 863415760 749275133 803673584 835762734 955313961 199704139 292148602 732897350 961458475 455946860 543680890 106491487 963192327 505487534 945966854 696172290 793064641 984613023 987512819 35829753 365612894 697874743 855161012 813162585 994127022 773859644 906803347 423776524 927354153 306924722 802153903 574854029 926869700 735461304 772012889 702591059 850404501 282596353 435045040 732645627 910074354 775450834 839392089 967771578 969085144 450584585 487769292 389758982 950160479 340892915 955059555 505913147 718102781 894456912 948351531 753503876 866309705 427595568 476444322 49444228 289020714 82775023 373698332 808402009 950414744 690096856 728754619 219791376 847051481 645367690 795387253 653922424 907670409 381155109 517576494 676591527 724487565 762463272 863287727 507397025 953110083 216659077 489109049 766130352 948994373 320741189 668521884 782307533 874967783 822958408 906223992 913773865 946697149 183669536 273020406 467042846 528913476 386631216 755149876 744445597 755401152 872811466 903190529 224826202 556900563 511448142 522682986 312366035 669109985 391037824 779339335 669478960 735284859 400528672 465135282 720319981 733818367 205647048 228478158 311927258 564279897 815329089 871067924 811832456 822647296 626257799 765715383 485838165 832373616 812988902 954365059 746981454 952683491 268103724 788710646 906444354 956005393 210795193 690031868 55324178 886648253 650077273 667002490 437363498 638563611 18099213 228883512 934528078 996048631 149299665 238896884 64779141 425476586 773938608 951750065 763404150 910082419 345881147 573664643 733217406 866468981 171555049 487014672 55200868 93946904 148568641 887308142 624439359 719214191 235921224 768934278 127788716 553613920 666576336 679167829 264459522 829975629 258184749 608866094 624440343 729876233 972267275 978013270 450738882 614496050 559059849 752246251 943468390 998650878 649974103 813219723 822513817 902031332 749371989 921182667 676242994 802437572 653879642 722843377 757432140 856211323 482887370 749876354 205450015 576678600 698685373 901987220 883959731 939811642 433335678 711399775 607545892 784559589 984596762 987349209 231017588 239336721 351448701 493032718 554873599 759274024 171510538 202825889 986838423 990206588 642293458 679447026 24690339 783329815 282314996 674326488 618896893 999922656 204841175 894970895 131380130 634785401 197468858 978216515 679510385 993567867 424739364 694109322 756982665 873834405 132835027 983094053 375772041 735690089 187714292 786458163 709749735 798299402 168793521 598679176 745963406 840875117 140570911 497384461 340508012 894166777 311081602 767506546 829160233 895023743 863756154 892704900 187241236 963399462 946321823 996117695 57180651 545123615 50309096 147449453 307560784 649469322 437414853 787131791 632941810 719163246 90957304 180039126 766311365 848759580 195941965 894980378 528071648 563908951 326331464 509314088 866086964 946076885 140061405 196929532 394769578 840402461 757612287 869189525 663005353 727180100 605102528 655484017 535584923 559121866 774091797 885575594 453943447 890892084 634765440 661043642 635362760 659914797 349158479 974009877 86671666 597523953 762921005 766623074 744403504 785162571 405866828 632771948 812826610 833404694 198859375 795631986 542080261 863164007 913619873 979978404 72860279 825670278 336690967 432812730 100652425 887926144 133328761 199073058 881304887 881861433 210086462 547998739 807113805 915441126 976658614 997162659 635966559 679025304 697082519 828374912 178495741 973694665 178926744 833633116 531943751 991269071 481183126 860756970 602374674 747649591 581568908 920872695 205049371 241728179 117519467 899445211 80102984 899312280 408652152 457382511 306394277 991686785 804599403 847314735 650726416 823290825 900882607 977489642 197379200 275512302 823177142 849055096 157670748 175284999 848266494 856706981 947474944 967455161 291548788 349658430 88896977 196329214 962956771 988413552 435058360 809719236 582056129 992082434 497399993 596946715 147882496 280631287 653991515 889657575 62892604 791835893 40697263 961734584 436911797 737098473 906429669 964731343 170519318 321388474 34279925 957734269 982585735 991356763 797674555 998647711 286129454 553532468 614415188 919457300 946691476 985578535 196774414 973394384 86534325 604812829 552977321 979320496 229794294 975200492 615629239 986931567 975932421 991023474 556837988 692334909 174582716 624072373 488583872 735483450 892773389 927367830 836390939 998345631 591903638 724982116 152087199 885378998 10891555 701158946 519917093 958821906 812031930 826305249 320419161 320432289 900496684 933863187 595862089 620213486 122266232 160660727 657090483 674490678 360583324 818602186 979831513 989133624 152829319 321407970 455538199 558223338 307628770 364200562 994962535 999523635 321612937 337528468 555370150 785148839 727377744 986609881 670261059 934015773 7997293 735136111 670865467 682031609 444228166 580275832 310952533 738494110 306812318 401964592 349257926 733052419 101812681 545916698 875406665 914678924 29695122 538457674 943990269 983079977 365107357 979972124 759717809 778667079 131072975 545060927 27990422 215598554 428818281 670959649 140376988 347305543 933327569 958647906 880340248 946751291 215270697 347447460 997486112 997821144 980212471 982061356 329284458 877679083 455202284 773110253 295161117 526416622 142999364 640885211 205101923 976529979 736532057 981668505 756708543 953468873 132147759 231223111 264572726 931021818 785191155 858569950 640376141 733928723 435162602 943662191 783464562 860792395 846785529 884299285 463421040 507455195 252855661 557027758 105271389 621439974 7339291 462286573 117304742 824734390 196861624 990206024 520987192 909510357 684505663 813347258 881318939 997706212 336883239 599515496 360673042 488958614 462671501 694177115 413380071 612173361 906187825 933501884 739061484 948162082 389182251 616865835 606870672 861756203 571445949 663029132 747845212 832465883 499635240 734614985 407016108 574953128 21096121 189812486 817197048 900003382 212604991 351344999 580863740 951270164 106320360 584136870 903701470 937183446 71872977 293453317 292000779 517364231 565471684 997329643 869387037 931633286 625633782 739033001 654850548 835948463 627298854 835133014 833741092 971316876 50244162 109407215 316550850 508532035 602059622 660419979 431510614 679996114 834077944 868153447 216733686 618857583 383180916 970090951 412757403 774145348 889173869 961099993 96898249 306117337 846386419 870905356 399634349 751672084 68416654 515957831 580121591 735057847 892911295 915068071 470195905 846809768 608065567 869702307 744850621 821665713 921847316 937554538 663122021 898677749 309960791 938362475 519942706 634695789 212308251 690871643 856990430 932796569 821455519 918032255 517140185 861539722 6547011 818901953 279285003 352902101 821369386 823326340 585343605 629056987 736144990 955929032 13928599 394017075 756441471 844583837 943949872 954294440 160992690 856457211 588678718 939364519 604454428 935083766 641419061 945678513 320942327 442496031 176869121 531061487 703210118 706338262 436013344 957178840 89157286 353044203 122324807 856660765 796068632 807457503 896600468 925387748 356677456 773692649 335909759 433934442 228980317 445186203 774722699 906169866 429539341 935397778 924941560 980946537 137270811 487971094 187226612 623820907 590951548 612061068 38298146 922683040 615213592 690172547 424088755 579394289 449675536 454209402 501384542 889822028 157156974 933129444 992859038 996445886 993414461 999803509 516109213 760729905 809373711 850950315 167173653 230880400 316454328 585258277 225764944 805776201 447810011 636959746 748476200 748695234 295316067 844444389 114708728 593513116 814437543 856709434 573838879 691861923 828701692 834582450 234968076 551123406 496092404 859751227 644118917 704624276 475703494 764649937 492045335 872723738 907550090 924165196 806797381 867159367 37545216 335379353 683495746 885953166 211184183 912326280 135982794 550680911 756234225 967154390 84885615 730662011 492975082 565361419 822265714 955724335 169829531 511254717 868759762 978594560 562627785 887715300 91192948 805522232 616640137 736451054 665120339 806373985 688822815 945890833 824599158 831981716 494354418 541757053 435753660 635087417 970060234 979627195 596850563 765204109 492395330 876405303 379416458 436921968 775851736 930886300 198194760 238610683 436250870 909944750 333784080 727252577 484249393 744809024 878096089 947105059 647172089 898437160 198154030 279410995 745517090 817057677 638982667 742118300 587596790 966233046 591339641 924620275 392898772 973009948 141113133 964299122 192525387 983691224 216451340 369973410 992744506 997716210 736210197 975312863 202344194 273673155 658518083 956698780 817318689 918976336 105648869 284743093 539196480 719496448 101423179 862838283 243112302 642242513 904776237 992412328 706580146 847718301 127359029 748512023 829413766 975948457 314828623 635342769 806714497 937510107 335980204 505783479 996672530 999027313 632273725 661664943 927957028 970913292 48828585 839647210 106355445 545720239 147356393 948554605 686051830 833757927 770532301 881624501 122012297 403293313 181974354 339133384 530469782 541634320 862325223 992275131 930394299 957401736 611032601 832183166 384862315 402723641 487168112 720848449 185174891 324299845 379513884 584937939 922599291 926413953 797749571 910767206 562099716 858728322 834037068 984680110 146982741 413396454 421837814 517918526 911434979 998490318 237736532 788823696 919451771 997485358 869784178 998528947 369531672 380540421 983580029 999331830 727612625 845237198 965630442 966011007 170961140 909415373 544667961 885982861 3902919 627151751 861998343 968710004 786788825 790190630 63276736 102391613 323367105 878649344 420411154 443893546 495017067 812974615 69781621 586696596 152295771 887272929 361088032 870696615 168236505 208877303 284465011 627977301 649948018 808600020 387967581 486261904 766250350 830035985 481229314 565711675 553423716 611097911 485738856 718955610 179428594 666944341 77194246 931743704 940888171 984751880 383175132 608007112 676262765 965688620 672985329 754257281 537471531 926571593 886646336 961654926 900267596 997795609 53955320 752860882 32356424 72194196 315903351 324055536 899494135 965873335 405355463 826529853 946703280 980352481 978492125 983461395 58641443 972241762 192063227 612912669 606856291 750551526 845712329 963242476 135917522 537834930 10659723 40333659 158583127 323947388 198660476 653507414 464269817 682309242 498513792 590110510 458617251 681036616 539701514 593329589 189408269 952566316 433154083 966812383 843666398 891314921 961704397 998461072 150041686 966053141 8086952 253307396 505154139 976696329 823537982 964898669 281081107 355855973 789616113 924416964 360236773 805683817 102414543 862657355 338973809 471811557 200570488 391613917 56613090 695621533 595957694 800101704 117621610 145801249 931195486 988612833 990542633 991049871 410656180 763925081 933530558 937415464 789105447 793324917 30839712 397162234 695748625 938072127 331088213 717759469 498254032 698692587 457849970 642657255 258398473 540853831 16359189 49528399 960661076 986809360 651864015 991945109 593970239 721587054 360463518 984624461 175849210 581065702 322461475 492096527 300623327 790746927 428755169 861128048 884977134 941085365 746947782 873210869 12970458 490652945 781128303 783291977 216327784 438082525 344081438 394802904 844493299 981617303 370248091 917816779 19538032 877458367 39190071 210722933 751964649 969965481 890615035 957055944 927477863 991468568 561770320 785752386 630675978 666742220 555466728 760637225 651246419 702272537 586399633 685836283 510566050 711640476 766790122 856732331 607012780 797193655 49401806 802991195 124561738 405651923 914310543 942397724 945243505 992296241 436852594 816173378 807933738 826510839 122866111 885104745 187182173 817476589 597221674 967380744 113598720 303715469 577570912 802463124 474455178 900111922 370403556 715501295 627745657 888590647 572939297 733577826 567368492 570601169 645873097 694846881 713694565 809576845 473698469 727460439 787325953 912102166 609758828 786381631 702044331 832521317 974558163 976041399 743179216 919084458 687054834 957448502 988738741 995999246 747651674 877192393 265234082 742517653 980608301 989563522 484335808 529409467 103970989 951035037 125398718 817284408 759837636 809956856 105933662 996763905 738828160 950525833 649331238 671103570 437667321 541475057 291447438 421853566 617853910 879004468 355721565 443311960 132626618 413289426 569520837 732421002 927921689 936553615 788205903 977771292 152814818 285270424 78890154 809950930 674321321 829236231 567065742 675558529 481736434 529630347 884627923 967058165 26144488 322047593 881552108 886267569 95471977 221664593 193883062 441553555 508813130 818280401 80997294 991472219 940328332 969094297 598093716 910807187 609844447 703700171 506151633 817314503 962674596 996928312 884084043 887058898 717837824 857194235 999520154 999711900 621270093 917455829 727816483 779224863 299447197 994442892 655228577 976340632 479147706 520933836 897095288 912983260 695286377 777932698 217197607 356852129 491852720 597223422 257779619 335787389 94487590 619430789 635162405 754747774 492584987 929696449 560215296 944286362 673989706 838055304 597251739 927212665 772403113 961551542 829939641 888659720 232403796 877822546 421970501 871764505 145619494 176963581 92256282 536757471 301710123 451272500 689283516 749580637 615130604 881178377 267580456 643096659 575826138 653020826 424755733 644624814 431983363 733186511 872678078 922295911 487387927 995963106 363773945 835616705 215337391 237306981 355691863 530036359 287205562 652626724 241657915 789096209 763716751 863619931 829411665 875574299 316980748 650729245 328429615 679644240 126533054 743049351 932961499 957698221 253899443 727208370 854161011 965431437 144416309 411723142 296311283 593955847 61462004 206256002 231915626 410742498 670829645 863957682 694010255 879762444 160160394 760099654 117563623 893289238 159785327 394594697 336879565 660778190 224164561 512847729 68910640 810805231 213938353 743073508 792946040 915378808 7777296 239973402 643816419 707828288 154659666 235645705 131073410 814009692 244594322 422290310 619043245 841750604 600873953 840849876 304783201 854900686 165273693 287275914 633431065 830504037 416668037 696100646 885670307 980407773 216940975 587763163 267829819 311045954 633040291 770773779 492910521 701799429 132806751 905495843 589937671 596938753 858338118 892157861 502171787 818352499 257761251 323047096 975718145 993233649 954469798 992556552 242816079 868603037 500609501 582222199 873279411 961799922 303309929 325510356 644986572 928380525 779409768 983562077 268630834 677300010 235622165 269874430 93940001 388972271 548371578 946235476 115633918 810882730 868459221 906454265 934542895 979689079 224836546 618759815 643891723 883553513 935437170 954373428 528768785 616035868 919189398 947951203 739444317 882235638 735025054 829449448 616237959 810690463 995882260 999124315 826323664 844699601 381443120 820807765 779391116 843746891 420911556 595236848 877337565 930296636 124171974 246971337 741306211 900713403 614213704 624973572 103672171 547669801 513006804 902704414 845081364 959383842 517576393 920196099 802167346 936073436 521026234 936764180 984377172 990277471 340975847 721103827 375232676 414278771 442731435 904783229 402086628 698396573 909189246 940024756 14385251 237701254 705291246 940364406 162637189 498795567 853966398 899044095 877446448 893889534 499751497 606945934 524001240 802892460 517206556 669382487 434016981 600733851 612556614 967624885 774996824 918717746 541416745 837077430 298933954 936182407 68607018 735731897 598860892 711406576 240343831 601032916 999729820 999959909 294950674 551603799 814102005 846435667 9881925 26142654 107122449 313795483 944893420 983280440 731773411 818949069 614884186 956526152 734610906 975608312 504564617 880051813 10969642 748489787 594978551 950954771 183642323 834859486 764538717 772904700 171970173 774130214 554738682 595379744 676318282 982571075 382745099 953623795 506919906 793576216 719167706 883771582 316077346 867435516 361655968 365610516 846058685 970223407 546652879 863783674 775849787 827160944 375991256 658839170 63065754 770436403 292511394 650446040 886057309 964389968 627724105 977459279 17110411 532493415 339490438 444714645 505460760 507750687 438451035 746152268 101271402 931747685 988143933 997924353 744810339 834720798 897621692 956678310 801359068 955756643 502806381 803616197 135915831 394970424 514914421 538295679 694816485 992884250 204573705 708950039 59624014 351539006 107409023 930489028 535047675 731916790 575476941 603445663 680622659 958367904 532193697 675533588 517758353 542016994 377946020 944650741 30850237 830972907 95852894 837440041 855495552 875607186 75138688 668625869 681072271 949122952 497187362 691421126 401743363 507954178 503872411 800596169 487071354 524884789 719176405 981342081 959188728 982743674 946328664 975257944 787631668 940412779 674452923 895953736 83803979 149586447 666989630 984525519 579339414 876781407 227933840 560424661 560553420 585478143 211819081 369039721 704316742 963654566 96715245 820770214 199408061 406374764 736494746 744116077 312348934 600758067 872264376 906245332 222805805 992508335 494144929 654321343 418655327 866428369 547143308 551755802 17710248 696370292 775511890 987075883 510108217 657578133 432041820 998578657 839017725 948354884 874129975 929751732 847136982 897946150 397464340 868984456 88043209 252045834 786891063 814266640 842524287 931625434 249589658 499198210 484311273 939059162 143562986 732160695 521719649 665400757 896421107 914747033 957891801 980486872 411152258 678951414 279631061 661932882 776459934 780780657 157018355 961736490 903131776 962981665 936378454 990895237 173409329 290251017 547358406 925753532 32569322 52721964 80824117 633186542 229504605 570813073 225887429 892521085 998786113 999940374 785615551 929816912 113620470 889123298 937996061 974190415 195860848 392703638 333450418 893321715 382706996 909203429 864576041 947844655 118009338 554295628 531683327 921547573 33438150 739043922 47830738 500537503 13612346 480883804 186723645 937641717 59064404 624459088 448145577 460062779 526644071 834738961 951386140 988204991 417514204 479734096 902089932 938530668 444891351 689523426 895776292 928844289 497050571 724000513 563388302 900690645 25909255 144081340 39494246 744108815 12029085 754390647 55187549 183129590 333207254 832225307 705999501 751597789 203980038 736837889 342328973 611568420 978217576 997039130 629293577 949802237 848488727 940713970 260612577 284456209 34890806 117600052 787223229 970784115 790684332 891367850 604872248 849364072 928459582 949200508 687849835 778676809 596189247 660379769 803048573 942094561 166014411 206659080 711215818 965074170 494570912 977394750 967882280 993165111 200681664 671954078 788226970 865736567 663350633 785660058 908741538 942908330 989433884 995062889 495627265 583172406 808135537 822502931 264409540 795789192 970396435 970530362 692004542 908589835 72541111 863332151 386812049 461630693 738324272 855261403 671115958 831253028 366260203 607685623 897119487 922358121 115219907 683150445 988923016 990966005 234513856 315893475 179713722 509423803 867326797 899235132 616729166 756462668 99483816 865641728 947202473 995055490 273170264 938984676 977853688 999946600 905870045 984755436 163659205 568592924 280873453 592920175 424470221 896122468 248769298 443021560 639250471 910217297 749590865 868756509 742001678 757865445 293855239 497531708 766139362 980440145 365340753 683574895 557426880 792517215 754562568 827187696 956926308 988770666 844110636 922582727 833388841 954277656 131360522 629321839 144473643 980117832 638128556 762761349 501272988 743811915 515464819 726054753 579857601 636858719 312252154 652025180 91995130 260618830 670751450 902810014 711351991 713458039 835357662 952867010 380435341 468424707 234236186 302641672 826929233 934364081 534383415 757472392 680878698 974819430 143157772 981792133 735703817 929766661 293819865 599379997 19238203 513487785 479173468 679032176 210774333 329284285 88596129 538165027 77687441 117503705 480372494 836258026 141795235 917067653 198049469 422311738 865763535 930383389 909735357 913126499 116428764 984850494 512865856 692146154 953339900 972432391 734263890 861256501 859235872 964971911 399733127 594721329 382269488 917135987 628017244 836036840 987095516 997184339 407397329 589397975 416540984 922784399 882007082 973798769 265783716 712282573 839294513 946104878 661500506 810531878 284894110 573145306 262205760 823855208 425623639 599995978 571255852 778793337 906821828 924185935 259345746 688709528 739539510 849105524 723362272 812820488 549778852 714865522 686927214 769478356 593487569 986515932 834639748 958113064 483936804 775937653 938382275 960594711 537783421 660399941 852288086 999972002 955990325 986395293 937106728 975492970 974947229 984643659 278712067 615322136 737605014 925079884 885960432 913451877 899829760 990309946 440057665 848512381 112137013 377200016 864464931 926858629 422113883 653674714 472428138 472584685 996890310 999918678 408544507 578482275 288608029 694691195 729566972 999616517 419980318 665160046 955169005 973503514 179472391 317230640 828021877 893887648 921102921 977741929 490127369 667889971 21951186 123104109 474003488 716569632 200594466 561678996 202483309 935013497 882109920 959147222 852128480 892758466 101412257 740640011 899450917 930553353 883851862 899800064 367797225 687139664 720391313 947053531 475678595 535504398 667339484 893527943 191165592 696257110 931946846 936710204 789436523 941874530 966201783 989089365 430158386 731797655 813046301 994791265 13015042 755441896 339861387 953013502 379027938 872135571 154809877 221392701 878062371 943995942 926634666 965059049 429354176 669207957 815593877 815786523 34176898 637108329 417264702 878805481 673091617 944063806 375773743 731523736 809485934 833854023 999889947 999992583 934986145 993267057 317488936 565241180 620561308 622816996 424113144 596848075 655583047 790197157 707422008 712554133 624105717 839003088 54456162 158537027 974956352 990534586 688837333 892458137 696903701 925867690 108887938 675029751 624076025 741570889 926815196 961347758 395916351 854805745 141380851 654559909 117856575 241029431 868677976 890880567 422605138 662899326 489969069 692636550 506891657 991157791 317365597 656965511 12482460 936960193 389997462 688824674 766740494 824546418 94394529 156373615 438319162 933931626 537111384 588926330 582023914 717344430 394650050 985314849 801366255 815825893 72727159 605356074 628556181 750688604 134060890 445860276 534189821 836765184 498968101 844950610 128466117 606299368 107610128 750568542 184862260 231392080 833673748 861760316 488228120 958568128 466087068 535094689 465772669 690804000 574741953 581850489 731684124 991214510 398895724 989010220 197587955 524648286 46970657 468320085 690799651 973594153 468288852 669495652 996691025 997034136 241334949 335253470 106599720 711783688 466318669 946234873 243298695 805951540 47050956 456590364 230927527 534698286 212790557 489332390 662630766 811767446 674268875 919157789 939747095 954178229 881976461 925740919 373584302 540005045 729485000 995878156 351605936 397282672 910850381 943672967 551309423 633149944 676920019 784056917 569390008 861954903 347201901 572033333 601150575 678734624 633368183 834984376 802882328 864728095 656269731 868999550 702537463 807012894 391754989 822993615 113186817 824653505 415916 606326868 642836098 974559980 731102922 766896411 464166416 844210996 834100316 916354256 979295316 990737481 591902486 902037104 926150066 948911991 110211856 193250623 116535635 421219627 612752898 713178616 454589108 518219936 681771862 689518637 73553877 184287500 413588768 783514963 263767312 498233762 287291299 735277019 644483045 766095985 269997783 843783440 524488666 536109757 152534563 517318456 348945712 450792608 90907994 895934651 505717010 832925508 219169629 763513443 794072964 907517812 614743674 633081659 381456983 653104815 379900842 875130318 322942913 997138408 270451501 395663729 718241539 953007899 284398870 904281339 810941286 877130505 937400994 945440735 543908248 973839441 625887301 981416912 51397548 714943061 264730948 300628882 593560693 999493900 131539783 368237681 107960543 385440446 564605713 834243681 952076770 997605079 191519182 964820812 222448679 268985836 759453137 919696027 900481227 982216036 478893759 702443529 517627320 771221269 790463242 993180046 624692379 685387248 910311329 930913983 628687414 916028882 251515981 562347461 148502032 929287681 538434754 624630397 777837270 899216885 127388834 971876037 639677461 808799606 582242000 734894644 572420354 618169284 892254068 975393039 166448854 309479369 189709046 327005159 955101304 969408447 849579183 967056390 625315377 854499908 164486573 425330934 372847219 969131275 831915746 953846626 736548324 937100198 365980814 756204865 437517964 864010829 152197108 536482698 963146444 993561919 522334552 850148457 263181539 952990810 857121923 962684891 659873344 714121015 846000236 974380387 576379945 722905635 277605421 943429179 307016928 947967549 369882312 539828464 924581779 972559613 740954654 973811110 388043361 403499979 118670708 173658059 722342973 984907338 523309505 773114901 171561855 265066713 498886189 809080127 158915479 931937954 358194294 467043047 904414421 910942139 339399783 808667002 363938208 440116674 688644010 807136163 188233169 316294934 577760334 602900011 848856994 886504668 832904447 898950410 129185586 831721590 143406358 790690497 359623398 850803871 838467011 840038279 162581544 621970126 570878884 663625452 474437560 643079281 312336187 835114945 131100497 644212204 430159876 731208016 246071033 300899074 580637753 754535852 924509794 943956420 552584320 604825880 375797982 988192219 110541728 243789794 347562542 560126578 661138145 996946779 69052514 636047843 560583851 963437336 918128789 969028608 953216121 981449117 185830482 365043526 738147133 998668145 307346243 832374083 211254216 844367823 317894139 823153247 433243396 633521636 150715451 664557923 132091397 339581377 5738552 355500285 225061685 281472443 535386165 984643183 376952443 518880912 79277669 948362196 40678145 824401941 279137400 483476487 601626105 942883284 544672728 574272540 105115121 277152957 920625820 924833672 470964807 935862963 179428194 658501203 623215290 790786926 891790720 895707245 777029121 940013521 466321367 995948379 525654712 902717913 773278388 879796815 303714676 357182905 94787536 637096944 1823937 286240082 74058262 405601416 622282278 648246632 608454077 726030775 692259152 916344480 783531268 895333718 832851837 878171366 398605799 610953372 745293543 826567325 86087604 105749828 449436597 692530771 471049416 570204303 57132737 586174640 568773189 693131066 106959546 283748571 456844247 933060723 586712576 996716842 58016333 245363848 545771425 792062603 763086975 784987088 955163721 967592172 99721343 633860251 408162013 821432826 84943610 623398801 643989168 962451742 119219173 686746742 601793491 776788551 393913402 953833406 834522481 932372309 984612576 985132620 389329128 957360965 119722037 598773019 599255128 668225696 69961189 852886108 868590751 897934320 799809810 931526311 27253281 605890877 978366301 996171587 357570780 920134251 443780523 593828899 329014189 765275291 722027947 947396192 408423555 896100358 40834538 889076438 755105034 826796229 371980500 602240579 10766737 620484269 403177114 573072535 498113357 738164761 627616870 966772594 741303609 975481845 914236976 936471398 983329290 991196451 373723973 905241727 560900912 772139969 953249090 982718347 268733092 769172623 663592373 849274032 140817558 779465874 359982006 521255590 770394417 969309636 804020466 960490551 362178008 882865114 112986524 542121534 434771156 989679607 327232694 608696881 576013790 597481994 336493344 637357087 958200995 975390621 572657760 621606784 23855488 681109193 642136929 741698986 791934455 799209933 663206034 727024814 736335816 998876327 524162670 832127648 814060730 929575399 510361652 818238058 760469728 789619015 937560435 991583894 683912741 814265339 125749766 180774868 854060606 863298315 110348250 678103233 831574970 933652775 724634296 884059610 840619575 883168448 761221315 912908075 458362542 958976321 134167647 952428613 867177253 999470614 825487144 987943848 274731235 303191464 60213178 447245138 938693611 952174727 793019819 813756450 833294950 860715089 311823526 830972371 761156644 993381995 192550883 944611274 151080761 858124118 829428379 956057886 529575 419307431 156033502 574766162 735760443 764151575 689035087 847874384 763419144 936626010 860182656 895594995 540308684 868615362 474864614 857394395 265095186 938486822 979721060 988344026 490064910 674075012 888168668 902270574 109385848 316510059 622451065 943631350 218500629 547823169 492013541 760028470 811238719 874553031 310737420 469769742 608671221 855822542 145542197 283811640 172776643 714966148 939040244 973932845 929018363 934418067 360986664 947613715 380307888 987137345 310608179 897243232 685442459 718246699 39511682 928346597 943977400 947575693 6187758 975058629 897407759 933638884 598372623 838603004 59095884 404414163 201690487 472648322 26802404 990651420 403502963 909980446 656742341 912715092 449665503 639795321 48355933 831129054 403127600 618188869 959617650 987960773 131976052 546582806 146281896 446900061 845357542 864283773 500232635 844786249 272999375 316089097 659618997 966721162 522788491 775209914 244913237 330461854 46320949 427687876 788117230 838312509 915800585 998514620 400675418 786452169 352472568 689202207 456324930 652287490 389214795 496461437 183927528 578247086 716694675 762465697 677396641 863245919 653427517 680626196 300938738 593406188 42637513 782996024 377264341 634924428 443607845 455117530 860473424 902707959 807419936 808653233 926263951 989351304 765041822 841289011 614655105 775465348 991246834 998605672 511606097 727349432 686557570 921231383 263384481 362294954 503154635 961761871 200194140 620768671 185771776 607399238 591096618 958931419 468781859 582311596 481967715 698029547 739341273 959767094 218996364 924677251 784619633 948464949 153509730 370557739 448018103 500193223 19011860 335612334 865360474 942559533 724237445 896585600 427041167 670203954 935474630 954671345 385860766 456195847 79221787 605337079 618940327 992293552 484845253 744130848 97731668 745324488 281283675 748622698 119513456 969852126 411936226 462466597 763676342 966426270 872045011 913505963 943164647 958155503 446741128 719616678 344307037 922121444 904382599 933433174 537596519 703690649 114209832 174115856 40728502 348787692 210991680 932433633 192463100 807381490 955702215 998446756 296608450 498808308 431194501 450983195 343849890 460894753 144995520 204227479 948007391 966097494 681613062 699805985 669940348 729713657 414609726 690678772 412982749 924937273 197587028 272268060 740142736 831400643 282019764 816464762 236466184 712766222 270837593 838676123 620638208 973391893 226640930 671890078 460020053 666850531 341950487 700974933 410685067 600409699 897307693 947372061 233840561 837685077 285388391 393991336 982230205 995746247 251782284 697140146 171761118 654018702 333595109 819969551 322224661 839613594 543052340 767649396 845111319 901757966 639182154 982883666 984526534 999054804 47925796 186617937 779925272 857900923 165767143 247783708 869120049 893912907 536046873 560510697 314787429 847186623 5879559 876600226 26588473 925104098 223574242 849588788 949164571 995048019 269109606 632969175 864647984 884686244 465470837 568432668 335027664 364947968 937771788 999887953 78299979 948169339 581600635 752080071 177383296 409836796 305276145 951305767 26640842 945169459 385812857 781948685 171032751 406017286 618842782 963272174 707524814 908619975 2445775 609257663 258820716 387997413 159751115 508949001 664231404 901342632 987111733 999552108 982843270 991657838 243092379 500774278 638215724 809067687 105299702 911669177 493812424 859750790 190951516 875021022 435385576 889845364 214537680 864315163 62232204 167944345 190222737 746047382 947296809 976338693 913375637 944407585 355454912 934746393 422594257 717806613 585258226 813448380 875143062 913407344 207301571 538480469 794944547 892418757 123162983 435325018 21249378 331643153 964652960 987207521 690882861 869740784 825298839 949909881 946044002 974607954 438620497 455676091 701930662 713086646 260267843 478809994 986463853 996540489 13225215 728820779 866827649 951189139 750497074 897304424 869733547 950152372 274214019 592054586 13794854 60809743 69603698 530901338 912429261 975515740 763360838 908010550 12808227 388377983 311360701 971466430 939970926 949890375 60249095 209844888 907472531 936343066 132487572 450745372 574811354 822084436 939176982 996774200 861620328 973090075 995270908 997940060 414288989 948751050 640463348 919148845 379607220 453150499 757001073 905994556 111842426 490016330 199721877 200626093 144730684 929687987 464003713 970757615 920841653 971171639 892823745 898193054 121010598 844057671 553158239 961041252 48593841 641888390 341519013 650018491 535627062 637157821 778252714 895484363 813340153 889630972 432021924 824039651 987786037 996287895 953285712 978741615 805156738 934629870 835923060 994739749 302872219 354587381 946481188 958341359 458377882 872915387 944243529 975669741 797999132 922938724 905740604 918521973 28719067 406108959 633572708 889206210 651343036 715058802 230500246 557437462 47388147 591311344 679999039 787025110 428642788 724924028 573900781 595283650 446529537 644713723 356501396 866247414 864733785 946947143 362054701 403907364 775979526 994380875 799902380 850690097 206249426 692055915 605830964 921881095 267489669 690509285 417779453 755279013 570457876 828834680 372266943 827411283 711462139 915953664 538004344 842468983 361561112 680789728 514555960 800709626 412302880 500373434 115620678 187944088 177121410 645404444 737388001 834847505 585605600 843916302 631134486 734006110 293453068 650904501 270577451 584206808 848431678 930215177 752781035 904750845 976632164 980393624 830212661 974521706 62246006 337297029 238195126 684021149 86194836 548747263 442000867 924207931 85838838 192807470 717511290 924848704 719839712 923686744 111602536 417656065 972664229 991902346 301551846 310930168 375729038 516875619 670556551 935614742 388721723 982588842 987349648 990321538 747336553 807755691 522878367 911117050 719851396 985195848 10111815 705631267 400002854 734873524 892019861 897058973 892024032 963738496 247224681 928776424 679894771 769415426 134929352 914943041 145548242 643623799 823847994 926115011 278592194 828047289 439629038 640592128 819190978 832634566 447593315 724846390 980091856 985621252 839173783 888921408 525643534 753427716 418898991 487125407 456646935 527077050 400095908 548906358 969859113 986066168 497808024 697949465 866107966 935885092 7655095 230845652 652664131 659880278 994187172 996141807 953483605 964275573 635518839 830767476 416419605 771949942 724134882 761869372 621418314 970219960 961246531 994770396 707125251 719347560 970551247 977234918 188951578 330508607 513619802 815113560 673826913 816478790 216469907 573588251 934669373 961096818 610929874 714608344 214039476 316716284 728045229 985692497 538572223 972113882 582270246 839871826 123838027 929788262 238937694 500012659 16016108 276232884 210663338 897161110 950966192 959000395 488485031 594884066 535323906 724687573 511619051 877527710 618491354 695754155 660119919 951559880 231297074 588648182 149908873 281598344 144130232 413773901 981666555 993104932 911206703 964446102 83661474 474813423 496841080 997675346 452271432 561202416 59045006 484123228 658732121 706548525 815461392 877059396 276616723 957394084 732556299 823323400 812664078 991157931 78595118 996424954 698092389 993044108 594831652 718640959 963212960 980609763 893524762 907717015 87441149 350307508 136644695 626092944 625592308 932316289 642319385 992580362 935992802 943473972 649412148 937461459 234624327 651411330 349298606 362836766 888423735 928302503 671414411 995017205 605646869 697466375 540985157 779356760 518073998 892531203 345572960 717775811 772020516 960859833 459627304 543115084 846392912 991730781 301022794 440792864 866754600 936958055 470862202 796420911 54409425 914978232 402552033 456991344 655265897 913221265 578283911 583121839 912324678 975426464 574454739 736501415 921552938 937821665 494098849 697805294 401017235 862435719 943744357 987225090 404536334 808203585 967277550 989275223 903643329 979272583 47741602 684098148 347334112 845030778 308653186 368357512 481943630 898977064 787958382 828330994 740237138 818082642 310941237 495287638 116454842 304564765 264204378 656195106 197529682 812621516 726380085 783329895 982015842 994922874 138776396 370313167 9496985 261811167 982032854 984731645 23436641 422057137 428600132 528908244 520721105 983143143 54313603 680845464 133787632 979853698 720768355 975665989 209891449 507981817 579282108 597402742 196371104 758564108 502274795 602550546 803837667 928616752 213317063 216283765 703987563 942293497 168790024 675627212 838734832 946992540 637120206 756259701 942874261 983131554 153784260 755100231 134186136 734466763 418630048 733142090 458614704 893984621 699462460 700279488 685871636 758504709 58339588 264737755 352223481 729092837 381362111 433034027 661343280 870710437 142840092 750423011 333669455 875636619 128211690 678543389 661791513 757322864 513800209 831780877 479412379 893334743 959668152 990285863 737116330 837269407 909514134 924674307 941827610 956273541 759576567 919147900 747490906 898660418 119810373 929100131 964060794 974877938 697931433 850392879 176692550 176975819 872100456 922899816 235675727 956821975 345360288 816961280 587407681 742318891 750862118 787009115 215836702 866153583 862405145 920326910 948160956 999612595 54410269 890566207 767965006 888249286 142277711 156832020 175542660 716640755 653175767 981655601 966671506 991490622 124381581 506191171 76956261 778570707 188761657 347867940 551133857 794174846 346746242 822198794 946124556 975646889 196850250 527199470 435840550 918275169 959200463 976662825 462597660 764813412 130517013 662045577 386269064 637021896 98435774 606251911 228766519 496060322 993410487 996762912 293773207 781349162 652517523 676461448 728178778 959761589 497290925 497459349 119019298 372037355 222726257 559333169 823324005 992538905 9519841 378166257 160336951 464492161 494920287 944732272 213791349 371036341 744640717 912935979 690270317 783056580 700200663 984576172 525379318 887621054 156956773 192770113 751331258 776898570 506897926 954692565 242372021 974586665 190496951 195171575 631232873 943065597 986558702 995723413 712407306 724923696 848807607 991429777 359448358 604094555 776852178 942881765 818751882 827616086 903282295 995162373 691580083 782150798 300454818 322157605 388344386 651963982 270280882 581840520 821950938 823974253 145900955 772527269 387534574 446827731 322086713 981475702 968913770 999449077 827983878 994236571 498588401 945538213 89541577 962693760 884998435 996220901 968466501 976604251 373095033 780594095 363857311 371140935 634157659 870106504 427510519 857667659 53849657 973803452 858867328 899093550 328453390 396551924 832295487 907184672 618344965 698576865 404537848 819951733 876292411 934054264 189181403 692575907 187368750 271754389 130109363 960945350 481170599 659574656 444258564 775595260 873561101 903852600 728865547 971044060 64234263 123438119 386759486 427984258 568784590 795742622 23224519 303039037 637442298 743006172 694745963 976107788 226066501 734318116 941155196 957737577 632290155 652474829 661590105 912688915 606379873 627803113 58675900 481738392 965724441 975868277 109758395 284332806 254788213 608948784 714330557 960009832 858387599 882350395 864080049 883085819 140781114 269612243 488127835 501824906 380068413 844703903 172545739 191986804 861659422 889457300 250053879 699645857 648501107 725582639 313784486 733999358 802679638 853360219 363999286 829358159 88000126 616584402 240866396 978128653 140123024 200478534 507810035 583529513 221377829 901780519 168320998 741295975 710022430 971543649 117117029 262569433 653268342 715246775 891419051 975353558 490564064 855146820 702395286 750970414 261344825 615886391 525092328 891084593 519021536 946321300 144276681 267229189 562089332 786623334 374953681 624758264 288940936 497438889 499812202 716993350 258600910 475778094 90415008 617816368 371478622 932318361 976272809 989262029 470191248 922809410 473648931 907118227 179275568 643592445 844080794 907960460 452982302 764433615 91417247 486118632 51591730 63892055 441977188 706836152 96202185 673937149 2318857 556402332 76407356 917480018 868290587 931804842 255262110 907583902 648709996 760506784 632533669 928020366 760602243 896672412 168327396 505976028 134759631 634867392 808024129 915951973 861238984 920223186 649193610 716324479 977293315 994657745 759323135 787234300 932797099 938973334 949227604 965634105 611925560 670822313 136641805 382489262 658691204 705660390 729926838 984950669 784932415 847795166 202445194 765694440 552180994 681239475 266466582 389704788 136311580 277602243 821982654 879720788 268364056 520867628 247159656 728523012 146658677 343478887 900425548 987817684 150709504 705215863 876052847 961582344 320136079 570752866 775929168 996446713 706142829 809733423 941763455 947355753 735757696 852810085 634869311 799530270 762461840 790454180 537032595 771497882 295980146 995166360 320648339 476268334 382443169 600035903 455125194 489008103 527787669 892053294 256214818 306303691 213466073 892846493 111319948 808754494 587574350 624433277 592023075 791864703 268518715 963588507 334726900 827056289 501691615 846680039 277997999 896100479 430763760 480207888 675738050 863951015 554516405 673156888 557250066 731897966 64926420 478540933 712824862 945902482 903783687 966443481 348479923 369284722 229843122 619563664 578055744 602753805 456289453 848638853 705448187 866844470 754105358 932667175 452486182 585714588 562852142 606264262 718929338 951150518 616477179 664532980 626210064 774367417 585869485 921190378 484122375 663392411 346076275 618816113 11609294 459994393 563725230 735956839 954852834 977933009 487205775 746191797 512718483 764658869 492975795 895845011 710228926 873877442 158203245 517752539 54873414 112797423 840857240 862911750 87212668 828950750 613816317 793410248 553356052 563551214 945681416 976285848 140597979 597478307 900458886 915402034 561660425 579611014 410500931 465418564 47339243 148277865 303983390 373534256 914009470 958611340 597905005 837722336 160601557 891564807 482743012 643389324 963862353 977502851 131762682 480652920 236916741 930625741 961842350 962261474 240183260 385823265 958609057 985114584 792054142 924798211 452366817 718353344 558001414 610746532 974694311 993989303 174172266 690069455 402893188 771258857 52438283 104637366 130288063 996380795 617365864 968900893 304350668 501446987 532301287 774101711 105555369 774688909 703611158 877904977 179896045 373516410 484056424 787232390 83667055 891373677 379030663 908393402 458439406 789123755 443714013 533539665 903224241 980499934 549003759 609921112 451378156 987042291 231300960 511653612 622651802 873518394 824360994 848485388 293423403 361226548 821822310 874973321 270204637 870607845 812168734 909783602 577481873 746858284 940206223 985746291 964052909 995040112 990642772 995791494 423571285 691386997 893400543 921576014 937357616 991964687 453277621 696476254 327683326 800443141 490275289 847382633 640693508 868583418 401020376 618269691 763020643 915964705 507511757 952884239 851600698 898205120 280249382 893220914 536631198 590283076 792226832 935797752 457050238 983554134 556628441 771609504 260236174 839903550 690461009 768242813 360891048 543123894 469082330 968797623 395272008 565198115 913535831 993154116 687338283 803097587 528593885 952620808 714961233 725334119 394881125 435078580 139455344 866932718 190675468 323085452 930266628 993606253 363823712 914514358 311188746 702139057 8685799 350571231 752745054 876252218 897720001 918731677 285051624 659519808 632165569 857492172 742151685 928405165 313171470 741504083 876254079 961572865 679875303 962978082 745837413 964727365 31459120 286413481 636731700 830244670 269081578 820898176 314869886 657866926 182305104 926115500 243815410 801039680 5456714 210486481 215131159 696932805 491502319 795151948 949004163 982409296 584754754 855527477 252102656 441815937 256881382 412693622 729689458 741504037 967409892 974692384 32099148 724529816 624886228 941047639 560184352 644355446 975011475 996666782 276428620 842582739 271529181 502492598 681532364 814639191 420379383 550419471 621948504 751243967 644591126 666372861 888685053 965216665 140709848 341889430 103611827 366242229 938445163 942280399 546024725 652591694 132121209 525292799 701649472 993305724 211035995 240906121 902450963 968460384 964994905 988019750 959454642 998431939 836052491 968372141 821394101 949310308 550193528 690847600 381366766 776505476 539666838 741809759 572225763 709310439 234966695 422349009 681194679 801317292 576579760 917083813 638439340 658635958 630480482 941328857 239235866 781083069 80932488 989775849 225614709 897709996 854449217 996178680 526042684 527802097 980849679 988271654 459592155 585662621 597320085 769644510 301917035 611903118 699919814 802098842 952010870 963070167 11674558 803794792 445395823 553406141 371119890 878933347 934408682 963903000 884534986 964778525 958591849 968394259 506816684 662425150 973669702 997427047 961200896 997632635 897861258 941981389 577118238 884184642 324291148 938583252 872986973 896356742 181863949 408125399 939051207 947107419 36854192 64394932 965460569 980776387 16334838 544929220 820329812 905641139 983003760 990169275 866385833 955509125 916101396 995887639 620869138 891879679 587230432 629424391 300251856 596685432 692484954 706826354 9642609 161973487 843002173 919354131 888306857 950391537 841908881 943223252 742390309 840407714 404197109 575556109 836098171 930841875 301693865 486731209 620461025 818853327 635136733 992712362 290312940 747515835 633547711 994179347 161102442 997857811 636881666 818210398 874763142 912886095 730138387 963140072 670186313 921339197 968492118 988254514 812602921 905174866 594640825 968820542 383102619 497450159 298159890 537537024 44579718 158943247 13779683 968509736 11966407 191958795 690045261 843954568 80164832 558223156 160341637 274764008 353227132 456005164 741251764 937398208 23005625 367605489 760292324 814884068 283790811 426802862 390737569 651235906 633442358 833420633 17479849 488355274 456716838 646376048 76580308 662838308 308605784 404186055 33908543 253579652 762253962 943733904 478355641 659149261 246666053 813121611 383772240 400043421 354161017 375798913 337744684 594015945 839461234 919953341 896776943 965641132 820568750 883925772 311410167 682491465 210466119 483522764 91491506 995917140 191115642 515985398 928549146 944293856 54295869 534760730 558157905 967370216 714089104 874386238 631791439 814233450 45286113 859960785 227643699 715814177 148363069 304769413 812385552 919079962 590943086 648947241 870042963 955874697 284093441 607472056 426615349 661236644 37431530 435835261 800307882 827421996 124272021 917374184 932141735 953373190 189698523 226830964 695787254 993658368 134344359 362198323 88830297 951483596 884254727 948985950 697365633 783844145 682795428 684875566 44873192 660209876 812633692 919284479 256470757 280731870 915432333 993413858 246740511 813185105 684426699 763400451 321908431 976136484 869142751 995072657 303630941 665096495 100044224 501505707 14221630 324128025 9575662 954679508 447578015 482571547 324892277 849903956 614453856 705904431 861023865 932239930 799955644 802616385 342085022 713054321 619210213 891590821 294806504 653283345 996160413 996214205 100110813 502217309 740481803 904399919 725713900 908603035 852218988 928440032 459134151 481667213 578273900 835231157 854514780 983019046 761359646 777737574 25281848 814515841 531539934 600202778 664345975 751087440 264898797 762797515 132672255 525642101 329768334 417016767 934416107 967636983 494342445 539863328 847233720 883855221 248492951 436635866 565583274 611552606 521848456 751530592 566571950 986959087 777452115 929489687 719546817 734966178 467606994 786597763 986116913 995834820 308692030 755081837 69148365 370322059 833115629 920590020 921373567 965406498 976072153 984306972 402850321 455398421 948200312 991408609 974681080 994299483 875469150 979901544 353234087 728749973 596840411 844681820 173198625 736223937 734882460 816766223 20154795 478650597 602599927 991239406 442795363 989145387 159156589 683842879 948779001 994572293 895665233 914824849 151209229 846353212 75389064 550216382 154497779 831580143 223380212 518670371 986592699 997621878 870454789 956902865 795399480 952026263 964793376 990431593 41335114 680184448 576557972 684725034 286663745 808365818 785864565 802505567 163560691 914030755 379718868 655451257 761586122 889409147 490822903 777185195 642764134 940576364 271224973 639155562 352576858 364115607 947050697 977382024 488351255 819746872 891093297 948465933 78437394 694004312 144201028 324969662 179261116 204844563 853896352 895201962 224635509 266078488 985788598 995934911 748764289 908250866 614660900 741203764 423178526 546403223 543864828 915209487 116914292 519444334 632114196 685063371 916969552 986275621 865587359 917526497 901039600 944287584 362053914 599355893 507152247 820691159 733695475 901006212 781847961 918336092 427189227 616476983 269238846 750705763 324883320 607827427 954239059 987650203 904802753 960909910 888374806 998058383 835290920 973569694 468265708 965664813 718505354 933595648 635984564 954182846 154620081 898830776 939411247 952053806 731228925 980486130 891950264 952422644 170763467 736953199 975593716 981979542 517963340 531147274 148663296 492628462 149462508 691076762 754281944 936037597 511926293 829116711 52152966 394038762 435473725 723345418 763712023 952816126 928582219 952756706 702338576 993802600 270253380 795463995 371237334 403913552 559067987 786922706 693370219 925408192 56631013 848740733 306718299 817995458 498752708 882191738 965248851 985891004 34189371 792567664 528892890 644859828 436787939 489610767 763799683 889330170 739711399 963465766 971436322 979095632 198628165 271927720 630641326 788726956 594491886 804795584 333365828 995531636 210814284 373561857 798294475 949242019 340088986 604821793 472669591 853087087 380030093 764125779 931008171 981858755 267452843 843459276 584828494 788798024 541525576 884872100 529053111 682836491 884055927 966208436 235348586 383811840 270140603 756995061 542615468 843185160 101605809 284043912 319560970 735993300 839078284 848067203 515888137 689603687 924140684 924649162 877155025 920417813 828762326 850208625 520428998 564030210 932061185 991030464 788815480 922499489 242017019 648518457 208311986 500563566 898460697 946980607 915324881 942294696 327030625 674910218 670626668 714548893 159842420 949685855 157943354 900476010 503037616 620823348 787257543 853263183 141539376 248538846 566322330 898260775 837930605 964787513 750266709 754635214 406130700 736394150 948446485 991658788 256668042 551469387 226389745 401169192 477869438 856900482 95441992 591564319 826169340 856202369 987096631 995788285 875879512 962455503 676023535 755584027 252038378 340314312 266677473 717560680 618176009 726817339 952861282 993725447 206995574 711988087 572531410 976151426 768958192 892043629 838298724 896296742 601708226 883391104 378915022 539649805 499271531 522025179 774315856 833184138 305665531 888056827 242575098 471466195 793784179 915374423 22281292 319840306 751941694 810613271 268462283 292500367 43640688 91653482 821336736 856809551 413277515 748690350 954265824 993728231 435152265 637903602 90564104 768957520 162094728 646648641 642819413 826809648 893507848 998975141 451686141 782357990 864710794 868093020 693145907 851297848 150662849 615423774 879181327 937089766 784245654 974826526 517715629 945248449 225016502 726297633 864146133 919281073 989655353 995663891 637410546 759389112 850532350 949840208 636511265 822332075 434151067 701977548 84272017 368521487 162261114 789153476 587631654 938721174 522017867 943034467 984687962 991574354 577142549 679893172 837191085 889654302 708457370 758851201 650317023 868985784 725717121 803867816 40895927 632158946 902311771 921684138 334196244 980281579 736870949 940498084 251560198 266847684 470209444 961714311 315252538 469690344 570004870 689901805 238586060 627061463 200456971 647166166 215426202 869691299 299724126 991373026 944111494 963644489 62736106 104897065 876332617 879017389 222809235 527069459 864933979 966988199 244078511 260371583 276194921 933334453 378926676 791202534 23813789 764609500 427021486 683145456 661845728 728992606 699720552 766100097 289923070 733567570 179571070 727731381 803823625 878466994 159265260 224569547 843372103 917815332 905621634 994618543 292101458 648772227 977619513 986032160 953250319 957553232 206522090 838182348 245338416 323197809 565661029 868275026 534760275 717315921 818474356 836944221 121342891 408096237 838024019 883769087 52083247 354951177 366277345 793122951 651241532 856887305 240952785 348451448 606434615 934476775 459935092 485483288 59422000 654056637 196838250 966133578 284720541 378792824 578893349 864172860 884738560 974342788 719773665 719926527 272578689 541883370 862202552 916941330 811632842 856570931 367253940 864235757 698497568 783991730 269461337 608335664 310872086 986585489 235190057 504663893 682383918 684963364 842030217 997352529 792452346 977086697 377545531 978653656 744474415 756772221 256953857 454246272 80320184 167498607 408826121 810845593 157719376 998039977 398974920 828271981 286752575 848961261 164993732 216156069 276038743 945712788 112159216 213613183 673225401 907594762 719832302 854242807 490509302 682954542 452425674 710238022 857846830 918083390 352033884 775562364 37501230 879214927 315402066 591437001 637871769 676850843 823722901 991446851 749496843 845432430 601935753 719843544 288046101 916392932 795374161 836095184 686676244 935123944 769783684 837817845 165159098 889855693 486274142 719944037 405637577 748715237 708336416 815478601 2192826 925409039 820247080 921653141 630169153 988668001 430415256 559808530 794456330 942743474 816044059 882457214 793460351 845698511 733091643 752233260 891227791 992553886 732364532 983718850 566569544 664266162 903717244 966660080 928499347 978991836 358979549 600817678 21104335 500724079 577287673 921404147 921183022 954245083 144117915 204957743 2423082 141901175 897005840 919552882 924040942 945486379 577693904 629051366 93282540 522259050 926792001 978698046 850262424 910582026 578741014 934673662 973905797 977793550 69999370 114591207 27655133 264467777 326915122 761774047 664319181 947518299 435124981 598059532 934681490 999516953 594265135 837354559 688242506 938151320 447643026 772425964 146916164 832297225 534634536 730740654 297098254 774486759 771447931 900999269 207676877 796759385 786379577 945230449 492577959 975303213 665857282 918441447 453646567 819456875 755441352 987718131 303409155 527717720 610101864 887722368 61999550 701520596 502872759 964387082 39681257 502191356 376460706 726251299 707990553 803007241 965489827 996057590 842470412 885469217 234406457 485669727 895747838 904587653 86167818 733328186 752846548 803440731 856243970 932380680 889225551 915692683 214647911 646043892 142713062 677815723 743527644 913132036 215393384 459282550 587306015 830584145 254273368 723414774 724591499 857881608 887562706 962102632 681691177 689154298 789448440 871033506 717243254 927701552 954864623 971625384 43800639 974357472 709858800 851260423 327956746 568421279 855606984 967018057 936498948 969662271 382866395 514222054 322111559 769140169 755425293 953116722 50050235 990463450 997426092 997469653 697645596 764053249 650515246 899924388 415141246 845925304 220347623 548210846 407922019 934801259 530209699 736579341 688251568 750067021 171022143 464025531 413029872 902835616 883642852 921841466 919650654 987804157 106535718 816952108 54888853 566016510 969656344 984998479 408073480 599236584 684026828 904185022 359638173 871785861 879044996 942666427 838947567 851237656 534565807 909616005 647448198 938859003 327276115 883637198 430354350 994282058 378749717 540094481 808591280 890492707 839716012 998767932 124296359 602947333 542427907 899219366 822436614 909134510 571257619 790884992 279991177 586831751 693419649 986779164 626984410 769891128 707337239 970147480 108597170 635928201 236547226 408127897 881367566 956532874 225221328 789582622 598702245 954858167 578993819 628832331 449262232 601918601 151994108 585466731 492126006 650431825 267357596 567530446 555351138 621207394 422772258 933160649 737450731 858376694 39239093 500022719 81927868 258736621 28959561 660106937 701163889 810089177 869784765 923958301 161588109 890033745 307674419 712695933 842772245 845577072 210016146 600146324 653216126 956834440 148752943 968327032 856540982 880115605 679386079 732219676 336742267 374318776 130138734 475296249 489726770 737207893 445406522 561183045 450397751 530701173 99732513 260026265 585984533 662621181 568227029 601072574 948947839 998153079 312904167 978807234 60825468 261010802 105020703 202174613 155225318 572734346 866600108 933117992 692117426 919659632 725822780 981911556 99314110 788392319 803263441 826490171 572515233 635445224 648018083 800541957 760695121 828022140 714468214 877112528 862385592 935794999 239701592 834317188 888506950 921538335 492723560 642397747 801007221 931965420 758966103 784438877 127262114 320387692 813936017 980834676 151551338 927646905 375426531 462473933 521665289 925593006 889786911 911837626 379897115 393827944 604384421 952967787 982250197 997373415 166184588 377970440 668868229 988952994 440490602 735910036 267888453 621333871 473411808 905269876 958466216 998983552 884674032 924583739 170587099 732883218 352604802 816960469 846409380 962338839 965422017 984275076 835849227 965827150 719638663 854001653 316691548 570779590 110795661 422405168 68066459 623093676 56869552 790521925 917286525 959644457 917600794 969544517 517617888 752873421 513656073 573885770 462180986 750145289 907850022 975841751 750837681 761541846 171346305 526431588 519973588 533733035 800723347 937714086 728565726 735352587 829161200 886392848 43227085 406606040 581007684 604581794 569362029 842349502 794609894 835849638 410473698 532773648 869087288 975581902 17450323 847868321 841326228 866390835 728463539 809868902 672467431 814903974 959316003 983947971 346246291 586291985 172939139 993697246 947544088 948723819 264398775 808591458 417291652 857347031 790678837 992887062 106963347 481388364 4622294 633888085 913832035 928829556 289242764 575046750 168772494 793076411 883674297 908367027 208756919 538861586 480571484 885554057 680259211 824707333 396487765 748614427 181372007 864003600 103069941 925866670 335724939 781936072 984072358 993030904 340770057 927279123 903927093 934523308 651545749 847259925 470996353 695017189 379288961 687903363 974396409 976377733 420537648 952841873 906181486 916627573 820385019 944694803 34498564 93290294 597907628 708385364 781851234 877864290 283086868 451606609 202122309 942664481 168403685 424171011 728371942 915728013 12350435 900937665 447336337 632145720 298041871 882330590 534982300 739596603 178633259 940189722 358107645 894690359 805530314 845555553 867032790 885948650 745016547 750740567 420576958 661428507 210381613 683450178 546145454 549659137 467615628 669225001 464061402 669746466 17311837 351146341 346972375 437961465 435583351 459529836 752480115 754570175 864247820 878121196 191389716 656474883 424991535 459505999 968273040 978212484 576211260 738741972 373034433 697863310 10947888 769903776 303538523 992835843 850664522 872568318 231041793 873910509 328945381 858649893 432000412 657280159 421711114 809288633 267630299 476750741 42599601 675956323 182032237 774181927 499878083 510341043 569451321 987685998 416868646 585419955 876726604 931338936 962084818 985722261 846317922 846487679 835233847 873123287 924631334 990041628 126828829 260754833 281130075 302248101 978047640 983908398 1428102 822675898 553055969 595704455 86523766 441046580 461559651 845026540 771443115 943282113 620813130 631818780 876664820 933540672 798186721 965007707 248324270 317551664 303764587 671851708 446097394 962460599 984966628 997883663 984656025 986384220 970253241 979538924 426236286 829810179 908469359 950450339 910764954 957991121 356140449 431660571 416539192 478035851 483009329 608208022 695109081 901982569 220842991 530102501 52949095 429247364 246589990 458843971 774324852 825751565 6077179 771744049 883899089 990787702 851825803 853350369 622237934 784831761 640712107 927598191 175525450 394020849 29036782 834860477 82526120 342079649 440840701 913785126 265905826 477132461 199780240 550197759 451634205 522665688 274725630 466334533 419973541 664465030 629423851 643609832 878260676 955663293 551392214 904311546 392580886 866687182 887841379 891077880 345626894 896376080 819413633 953988099 716363350 749185592 950347477 989448163 150036902 973579774 389848636 458578547 658522142 741577240 103212647 185193726 228712216 881964930 445112367 695797642 554935122 815573124 831932723 968758962 646048649 754187536 345956915 882143388 538846250 622275994 567995205 993054548 129526536 324773995 197403647 436070344 380216755 417315568 480947727 506835359 552304765 806576231 948304081 984588846 240351338 847126472 255415163 858672844 196986114 236334984 439235901 653284363 636756526 745364960 743382344 883671527 917491771 928812617 81574612 770278164 804640791 851425017 174733763 855656875 783362689 985709285 876308302 994223717 828640065 923927636 855726106 974370373 679006657 814397904 83441522 790356675 945555195 962405576 575961826 695919890 609901593 827641012 753600889 798628907 442643960 852005773 95934777 425361112 891357655 932954956 686899874 801878490 145968484 185495191 817274395 867058344 596212030 827051567 369101189 789554529 89424104 668750604 257327545 816731790 974177181 995233007 756585033 903083919 39976738 294628937 257202982 449899824 19277317 504207168 133446930 902243456 189749160 694878138 5853983 404653442 47674200 644492894 425563493 993465580 555820244 820333732 935579946 986831577 69411831 314785937 584209370 875437693 732598095 960251415 920975505 946890535 439841210 552866207 852628781 883319997 7056627 714372208 181696063 916372847 378589708 764619018 164037648 490364396 305715031 399967170 310570771 327477594 363698671 525749418 181331780 489166358 153686815 663942848 787255635 968226786 911443990 920594929 556311407 907197857 506986192 810859999 380133176 793205065 184185254 572412718 145662242 983895754 629598011 749997962 722241474 802905545 292091447 388506566 155872643 205687069 73192121 685694668 744088327 973250961 607606904 791005066 300662037 614697090 30757249 936406989 606106843 795711303 948576347 981230841 294442739 798099124 969490310 985634654 984333036 993196610 855681070 876190230 21965401 783325431 55744717 391716536 217313995 853023130 474432904 812507865 557061688 615709477 846929974 877164432 478480160 577049435 732115081 773673018 811198073 965116521 979061291 998293710 11779057 439180699 509263582 660926139 543975722 800678851 309962989 369006369 334179105 989555525 681528151 915632169 109852807 506708773 905206637 961497261 395144209 933010759 781462980 893226465 659832929 815504455 609889075 709149318 140483247 846906832 398376626 864858888 26428364 756461259 649928940 836529162 822183472 831076832 258191689 886754529 406257570 585948109 72539309 513330331 252740337 653877528 389011992 772164840 709842573 928177145 485748829 692794777 695569088 946659577 403761135 756057408 277314994 462653426 140811326 222545915 564029222 835278649 349751182 642027703 198251723 566078969 492699028 820769490 249013688 721005849 973070374 999411550 769277074 862815591 868376160 883186141 365262828 479751460 336800885 860045645 188011442 925034959 111874205 325295298 236118748 486233725 623991916 853983015 466256567 554590313 985331307 997402555 341765896 721393309 443523747 855342057 124842640 340766045 921714622 979044025 789259862 949103500 991871717 998435226 977494396 983561519 454016131 639022864 526662659 598134579 450401744 550628989 480189843 638438946 402186934 875395139 209452055 382221719 271586473 901595092 777275625 879663559 58384174 949948791 86983930 493537856 302326355 912134285 133736693 441082837 715025741 887655634 738235260 975630084 235342917 870581769 638054717 975648383 130533490 896676759 494478750 950651816 327538636 339751836 915453651 933144457 332130560 631634360 134345686 498148273 481696479 595176430 489391158 675365606 105254063 652552223 823811863 993855381 486981724 918109691 21337838 401097666 449777982 908473288 347950956 760466854 228873738 573642814 876556649 927975905 84612452 106552356 123456987 186699332 420312899 527593414 696004342 817820086 94859812 113552787 458728724 733627224 833756863 849913637 9516755 272747582 239931887 735290561 957177100 974187427 293061434 418135444 792372425 798774544 365095725 502007064 932105900 992325304 577211706 925611399 625373375 651893438 559916890 798501116 334621572 462240624 321962820 544892714 933485609 990317458 177984552 506113374 325091644 555464031 723587780 908358857 558379025 681461800 839302671 995317209 965215148 979306886 583847098 599183134 624742142 913795995 139244693 176324179 62089015 949729867 8685463 17255656 577865700 625626610 924816628 948509425 223213837 692629148 979334621 979653623 757235077 966063632 348569824 866225771 750395648 906774891 473062055 892492115 667302760 737880631 631035065 915562056 499842803 527596910 569314453 977342344 626149132 641349941 62919503 841645630 141747134 880488326 954908722 991260594 76219540 686132563 305585515 948638453 206518712 301954667 406290339 736006143 403670655 750920280 466429193 478743626 675196881 721616622 604677867 907215501 333473306 444371811 900118473 985715719 439788929 793780650 256871440 841670939 872272113 910225578 129181452 639600449 14284965 893216004 605238920 739897689 844656802 859109016 553830306 614680846 430615803 864587548 269557292 605508592 9181383 435522036 804123126 861039224 204184259 890902783 637536704 746458145 42472996 506914676 835573684 870713381 793649865 976245276 717678546 935490499 133271430 699878219 932331896 978686997 61238746 826267083 858469775 866439074 725107351 783665604 474515879 670923777 50060453 230709458 758067137 802456859 416570601 667972829 649083769 744416275 516040853 742268965 693270263 897589701 370338084 963103115 514042587 719610632 641695063 824427998 594670889 736407812 35557060 818138350 131501853 458887318 774230476 838434947 113733318 352911402 232752375 633592693 235204415 625951762 281652255 830930304 576214636 966064616 359938218 800605575 55604868 658356438 519117293 866518949 792144528 923111544 591628693 632089184 948878791 991078448 140784777 252336945 15173494 899462009 521612281 959184913 758751521 956997765 191038963 479952360 34044941 463708624 843869727 942834704 619787179 941991910 795364862 847902278 968326906 982312768 51438302 270521595 100431731 260423528 271410121 772799343 344406638 556861568 88747013 189900977 891208567 963171119 910666876 939027588 602928032 699135398 398383800 987446503 751462575 914766291 58605947 314060435 747785036 877524327 974370344 978835233 870018949 997609159 923014761 943555743 557737239 673676886 631491388 938484985 574742525 957502926 548361500 824303410 406024296 830893916 183023317 781638636 874727836 928026624 216086155 748567993 584039597 793478319 347718618 970672783 216248875 627015986 253894894 470655173 549522059 657483766 806718055 962628674 500394019 891237233 587968224 655688119 499924786 520443250 125318691 691562742 328999250 859314960 505078323 642341091 823761992 870207485 921658037 960320575 691772846 697438387 96174476 462515143 73196031 464778074 481835554 857609421 263761496 759840209 397223217 431325631 319126930 676483191 877012771 989298828 366322987 594095639 91487810 683185606 525390801 986330125 727098194 870766719 735092248 955469203 234932447 265321169 92425860 886687099 986560775 994272751 767688956 950125262 589010142 734936572 409173436 558790208 300507117 879326511 416370011 702736992 293736471 465399950 504223364 524821705 883368022 986302087 653210541 739028813 835367629 861267713 494570208 959242610 45480396 450583838 883381299 964919376 926655611 932792095 948224356 999446743 772394330 957946568 102601084 548796752 431126992 899783896 91133223 379634105 410198265 623247450 214282321 913410975 506668409 540098166 380627926 447780392 340333025 884628836 47889177 798332127 775646936 809424065 103842745 708872926 730709598 926843159 90747428 722162684 774611981 815971669 237263818 292113186 825728171 832017454 510269215 514452210 465033659 794195631 534511259 794123750 24685332 248118119 365811519 967637971 45127161 198034005 564376858 633449271 668045867 792322653 241732741 667199975 776654169 921635850 466235781 523750753 183438093 786623129 570590007 576586872 9856488 865301491 232684532 267779614 558473560 914427923 945882403 974466082 291058108 579848497 580976655 841233640 718237344 802389993 782974676 948682266 457349437 595738534 315097672 542573093 605523300 813914005 809100212 842521630 854476956 903669059 645828086 859744095 537988971 592741689 324131500 699551146 302341138 799797160 749537104 885732647 910469002 975490718 353913100 937774875 318764093 415717289 574448687 615923650 206545793 933565436 353983358 620688828 698099681 733167634 253447326 381587223 450535070 498336348 447269178 642876724 934699875 961443033 447494070 680501416 833197502 969040661 654815780 679418598 340875927 739340139 958258581 992940040 33176717 502063745 836490906 967983520 909911240 982941789 488389178 973655676 360719590 905505515 476051049 741534019 514498125 696082072 120810964 470666458 778081748 917443227 750804017 975985871 43917729 774636592 434081984 609315703 564829018 602085350 38846793 261776540 289694561 537500604 346324389 691930205 535707998 759312361 958733822 987628313 905133661 975768170 706491311 857732728 97938272 922050470 644934692 895703269 143303394 753984713 152182805 838268017 431522226 862992652 610257860 971538889 393815400 546799029 523236738 903176289 383374651 387977025 693585028 893786570 915128172 924332196 909809357 932317998 724451856 986410939 601902252 872346205 221119284 794892239 783551147 795219404 894157143 998634381 785814970 790050381 86760576 476922547 306634071 537024982 894980864 980478494 186106000 749470870 108667212 391939891 818098767 851457560 2074643 650738912 932880195 961338741 796754729 831680907 208325109 441611595 397172057 899471944 873781929 940174997 912578699 962533072 578137423 915414404 378139019 595335720 768926185 829488971 422196318 563762673 806109865 870611503 9488007 195210507 218600579 383756130 400462007 739563052 85553383 439299582 124966241 895360239 88205638 916989098 229522334 463530623 286839206 538210722 488153394 841183154 813692489 885069521 760689547 857127399 47228791 842553245 337558575 542186195 421104090 873282945 31942511 487665371 460424371 785042852 281154611 421969233 180612968 661026012 970670095 972028363 256850136 770323801 872595599 979438189 30427525 801082666 100273937 920192963 777975763 804065698 94293109 401569477 366924378 400025235 691039794 816992943 404494018 897273677 47943353 377206683 67406719 689868014 984747325 991349125 865612326 898183960 426917196 470403118 606365604 674118276 917559694 977132570 552623403 743485762 189692214 437077324 614181715 658047342 955011591 975047868 610583299 890001039 590967117 671094107 734793388 897439694 982041072 992801652 81839547 910089964 910080864 988067181 779819377 946168310 449542917 593351542 329328442 773411318 56798865 78941946 258931863 760810644 243033287 958443386 527001274 800531885 231245569 572914990 731857102 908078281 440241548 748087466 772093634 791601007 685227835 986993046 323887848 418925104 785035648 972537792 907152355 953788574 891077077 913564428 572085973 749337458 601039384 694190378 38186841 347375888 268255161 744328459 812030557 905057553 159470359 243366321 971666643 995356389 209883450 400548931 966355073 974956861 463728496 597467837 484254454 561764799 274684067 559615534 625403109 872563235 861874606 973015867 417052661 898212148 677353775 972134972 537486315 860878366 338600387 971443783 861529563 901057526 603423903 998029234 466334329 908801242 422884908 740521376 97164721 437121631 399686261 686833373 68271307 236430018 571831896 592337935 653191489 830894744 905929176 921252431 342533619 605424040 124254920 202132788 709322212 877132369 500393554 792753235 576508620 967997469 689725352 833311926 289504511 811621569 571129520 967349841 116918607 917318881 127980888 280607771 997339044 998375977 988148426 992265493 312732221 955560309 241365064 497328509 846930305 901772270 190059293 341118498 817758105 974267419 507620888 835436538 934592089 981675550 985310491 998593623 595178882 933068867 843991316 962647900 816151539 849609412 53690075 840635437 967092940 981900555 434735022 976249427 133144165 929412943 833766644 948005699 440490912 802112652 168567118 494872106 640113571 888435033 226065654 623469299 530606783 965124728 125350486 487272199 124291433 690907405 515541993 871478039 805822511 987326071 498896222 559876225 861344388 952646826 461068866 796555063 752018859 827070036 487731668 712980824 725361772 863950095 316131351 935643276 283758702 644110423 813026716 911627840 688721192 975538701 220296525 927789049 410095234 944558966 462649653 927784882 395022084 630714422 486159454 580496327 309734855 728539009 738754210 777722336 468311132 521214717 426461145 631505676 462591246 988184713 679451722 948706127 814140063 894632899 95128763 788477063 304088497 766173475 235783930 822453454 337191683 756790041 980324109 990299377 44892237 485170076 592479793 595781301 5950125 321491823 279460514 987552219 927171776 929205574 974858858 992083741 671438162 851315343 97058324 881266177 527168955 936419887 28112626 179017417 705556474 915234082 780089783 872214058 479531984 941827199 183867339 877466282 566937918 757523441 587776996 964963292 19595263 590574345 377931319 685891469 668021726 952548318 902619037 928156418 710451494 851586630 516507711 579951205 464015070 956949561 224574263 303172851 735909950 912768828 548230875 918301336 371652597 659154965 656352733 703439531 47129663 221875293 654185160 881462439 631354832 977127924 671887829 760930313 468650350 601759172 114355717 847467823 145563793 434857051 438507269 599664082 82096072 549283458 440198706 725660322 435345031 711476901 351484103 424614711 193177048 562997514 383874952 536888302 991081246 998548278 341495593 802958646 859683911 867482791 373822252 943797941 571604599 630912992 496363375 720574584 711182717 849708313 956871272 985679964 705939935 944341301 99188984 607884967 567974144 923075837 144511395 290399331 252635614 329817216 730488663 760456828 203268299 739120160 776260531 991280926 452688133 786842547 838591970 857214386 312975258 553524157 79713736 198714539 920421717 982181370 67978220 360286322 264154988 605030381 173362808 548073668 769253866 853912261 59931381 80078351 608156601 646041824 838850604 846778394 191127836 993606167 462568541 887513045 398392478 660318903 599038619 997265275 134878971 326940368 605530060 860267930 289142680 808989172 375316874 517241761 334059251 512840832 714324600 968193116 931482731 967180235 713921370 873038590 72778414 479338325 180884253 259579683 642908050 930978592 969111425 977661177 559488213 910462974 653190341 991783628 737524771 845546769 21573583 436171567 911699085 997819196 297455107 688589375 504316425 678907927 416953008 705006538 142184919 663284550 252043359 850497125 788868741 831019304 919973819 990507910 304767413 959769308 687534650 927947441 855444271 908024823 766325315 909522131 459601086 492397878 190573061 624680760 217814328 956808647 795001337 928355369 801678619 975421575 7211871 60052321 517230179 533914299 890553531 917685292 956722973 980649975 533340254 963034283 939871057 974705346 156017549 296391272 363887160 378054599 747784554 802103477 916918855 989954381 664943518 753384401 662394551 797152698 185890493 942606798 205069076 230425770 749936472 904643206 428572204 972001306 462627922 892731532 31829357 371807615 175061824 387468574 616815256 956124171 362018592 522206344 934163880 949143954 859089640 896012060 267535822 709716137 815708645 851013644 747318109 871944840 734117187 843301439 485748314 912757850 47649188 878656796 36395563 708830458 722564848 906568403 987386528 996665225 700407459 986153125 712853301 895309849 379453273 531240935 599809212 981482061 132014509 548899059 829862360 952920530 432898793 969740594 804685723 879702580 424753411 947517135 616614216 715011167 649975137 832887553 307495592 323101092 541531513 912822321 4762273 364313229 135704359 881207634 314795088 538549978 778520739 975513860 206622611 335469540 407948438 525546427 44874588 626830821 669585314 680332666 602340687 636525445 146072705 327076020 750014568 881596612 626613520 931217158 984595853 998028523 895533152 956721445 559494553 931272767 995136422 997391087 853645782 978918066 608472628 889000428 172674274 535135833 696116454 781614639 309606001 937644580 82638336 568317062 243599932 572150128 21330486 773487024 783093339 909374248 860662202 965692351 624384414 964243124 980667665 983068670 689602743 811405851 144802262 720793448 121649175 270798461 437266759 732776961 167502981 497267942 153437935 712295534 47433020 712755832 924611652 960048980 133121646 308288757 423224277 590510182 487938690 855693571 442606298 795177292 504556045 937793684 856591036 967299423 84681518 767668292 40805525 127005242 130159903 172959585 546175743 766779551 840222267 857119482 94126098 757302752 284343702 961390401 379610863 715752417 774968092 857561382 30437882 486610514 262216478 746056251 748082684 789901474 755312363 927814479 817072630 899104941 732446675 924946087 215806171 701997592 921640846 934895308 747347376 895450402 516241821 982622285 204017453 398780671 39816064 771056075 66210138 552145613 677756976 801017331 398683276 565258844 615111915 618790658 449211555 556333431 98641055 668931723 973075978 982281398 374891825 706573151 803812935 805660764 962667194 990785608 251238424 486874750 3496896 783769917 274331004 414092738 78242298 173934964 916459530 981073657 344671169 844617985 368981986 371392894 822522011 823198482 611492926 876103732 684943979 765027541 601677790 859442124 990188315 999143798 581734522 863288105 782335430 969818662 856525697 936115299 885927013 941309904 281840924 505497939 417944703 910845433 624111823 938224753 512917289 789808548 581846212 887096776 303021010 387856790 205939392 486018217 772887466 852174227 762369802 784662243 342154336 902361106 19283502 937632107 369015304 372128015 994519068 995930686 991846583 996314999 148611362 631888528 498936358 944963350 49743463 629891947 719362858 855852760 894689384 967002878 717155622 862469950 586093024 594477694 744225493 833753265 304867858 626794374 652228599 936041400 139403695 910428573 452217335 610327444 936746500 983371061 660487208 897521876 702717473 722327981 81144206 474894983 867705293 968232810 213264742 257294536 821145759 917629198 116117922 572914281 14473791 262709532 768731632 798880056 490458774 819933733 380623449 790349523 33599094 976767244 18896817 651535673 124101917 416904696 700557602 783434667 135365746 721181124 386193924 619641803 573433168 945263697 327749062 683177177 928024741 934831158 152259824 694494774 685770294 715024545 74664694 190738476 180409121 658239616 252780292 702495462 524407358 607158164 763062012 811317508 583728988 993412089 40842436 335332862 863158454 899853292 766529787 846175605 91766395 208347953 771063402 774516840 940769533 975820230 551218279 820054637 847729705 964084721 625654180 977226518 306974060 362031540 89784551 190564330 706033923 890495410 261420879 633219689 130479752 246466427 459958715 969491172 690339119 744987489 30924480 32096598 262563050 475910134 572423708 723701488 722304279 932789643 785980636 877684726 923039969 924791557 980323833 995180358 2960911 465356542 804078698 815953224 847547586 868703840 661279874 914031210 81601209 595340496 476978422 526157057 96418200 212106154 992689705 992721891 662873634 783296878 359301251 718080450 942066788 973482444 19423533 229133853 514065684 721536343 215840252 293537023 19624738 515910161 969112507 981905552 339074602 468870249 783407552 961621772 877324115 942503748 549885531 876241309 983259447 999560243 115311318 342530629 782869114 833249172 184885774 194695149 586321600 869797912 673734531 962267062 278140918 666267396 939036419 994210456 167418903 385478926 624254403 860687775 105182635 564568593 139181495 255062551 455077142 650002296 967268261 987561235 39564233 217838689 16181043 672808761 90977251 694001848 880259599 931084472 249828774 987226411 808632789 908825379 776425293 824626487 112937448 121609274 619889610 632692251 352715528 793281348 126963069 317331058 439074162 503323176 862180898 956526083 778369173 905660678 57350067 424738981 52489735 406248344 655037658 840787174 21648404 381911930 209872369 828595879 276918556 704515552 59373012 898216438 794609485 881092857 157750370 536344422 46799414 49398514 455361321 703772394 556493812 710508206 190877557 469269838 364359136 709714057 428221128 801682181 853986580 940651716 966743769 978721262 948607772 979872644 880060050 899373463 729916869 985112673 248903561 308840232 343580911 686008255 110776812 498677074 380456093 597104189 74545634 348693308 714964194 941973203 801761331 990301950 420967163 428283648 264906182 369581759 959836532 961351598 667649572 829201641 613251453 718845502 950978779 954720774 752620786 924112047 406722696 626481439 438578618 770929348 422229523 458617386 6659261 394033593 659534317 795125624 553691920 703088949 90670211 217117730 831593146 996850857 913544586 933397947 626217364 943780533 198770842 719575807 883450956 974957755 288367524 944310343 775491196 891572397 543093070 749177480 297087056 465444761 416912245 586796967 589588728 980841087 563264583 629477826 115874593 154599884 289457004 538892172 776054005 940744573 163112844 796383276 902052544 975255839 1204369 200197852 198826462 244677912 406065415 847726809 779362582 823689684 785516796 834727348 925066603 947026584 304245700 335912303 620480197 752626833 320921083 481240064 492623278 842067289 715345341 755463042 226336900 448917911 464222718 980297888 45438198 145359559 684876199 774955960 553576497 957639030 505022537 565446651 203622573 781547366 961557796 997706142 581125167 966210320 337302208 790880884 415514341 476600566 372605071 405293378 2208678 431037416 992936028 999961813 537552812 699526818 142068464 671254000 612954928 791995415 842954534 945037029 608180794 619520928 511636632 976276169 617626153 641106053 595156927 794272704 926096824 932710487 948963297 973897647 441324082 485963036 737399037 932077140 67420314 335004797 744457498 917681092 127816445 397382533 150252851 914820098 623381201 766011024 193550635 894630956 34537685 333549242 685950513 874481002 594480946 617303076 654063864 817592962 608795921 876823933 616597 525349379 594794005 905098824 715265690 924948640 172454411 908571747 773346906 790667643 725295374 854772800 22995464 859898279 38838091 412141406 504294048 874798764 821388059 827413152 748581482 946710434 602378247 832146652 949837764 981096875 694403982 838377474 323962809 450780054 815814938 847284811 920034079 972874858 976114217 989151197 19885670 572747360 206067679 749953108 490230707 907040015 977661629 985389535 890147388 896013031 793128196 998994313 502240225 609771678 172912426 753288294 557162815 763339441 467308157 852052402 411908108 473976337 398616559 537062433 757481298 820296698 534572606 798345325 587199548 931183182 798898439 946345602 760738976 990868928 220596787 327562364 761565625 996451365 996864853 997243126 939598749 948404391 116335199 957668957 297223770 957919107 33786541 379510004 548398446 808297555 808583840 892967259 761197905 960472900 866437308 923145907 349257788 529345647 535027135 932229156 42114778 284888923 205917447 309376657 346903356 782515925 121194454 258124983 385529468 685074363 217006814 781308323 641684566 720888949 421992092 800971446 549330495 806395953 71382989 633441511 805093920 994585990 958663272 972295057 355614884 672330824 988478481 992172297 629532688 668887034 215658432 874546989 657993359 846486862 282185570 364741968 698627606 707472754 637786976 889768433 341725608 938414891 753373068 784669805 556858041 950587768 804817058 949110376 375367025 726785696 139947190 502771674 434370229 845524319 438174686 754423369 94727086 935963825 334156840 425090239 610363133 866373661 691095158 975550866 23818069 590941413 840789709 929830766 282094685 823979114 96966910 857729778 85034583 419358062 377931192 770489117 142175065 404847588 125113728 973530752 610100767 893072178 498498781 572074046 928345852 953303196 928489053 928606775 205483906 827157187 850502240 982223259 125932050 582685235 446816712 589808080 151768490 934075635 856324515 871299756 143716333 352872435 106354018 513357973 764263433 797936774 592654240 781938070 576442374 712109673 156785486 264117528 141107508 898616432 695460954 706615998 202550969 293168217 797872043 948611870 790020397 851344092 563164014 892105445 972603395 976034030 918476670 958635057 443902465 810530585 811315430 837949519 423600849 759063105 513045487 669653295 572890798 743257778 366346610 444097613 14753219 151796219 916575501 975907017 727822502 765681142 227749153 645617724 618355314 872065709 539374256 720454279 998854072 999719502 87902336 951070550 432112616 638680494 911332206 922487067 230231405 757587544 765084848 976740721 572806343 937282255 325652304 574898569 393350083 458192489 714357078 732310907 132444836 491268751 352739633 865106291 839171380 905183726 47813676 369017419 752412324 794081822 42080515 429684598 123136159 286240628 950952890 982039533 885314019 969001210 749616274 993895733 357275897 754832791 485475898 603702139 618984946 961687136 385909368 807525301 168683810 234452285 137359620 984602407 715143200 842031588 678806886 790919807 453613782 891316878 797084086 870027315 380826784 547651041 471199212 520778501 573608317 742132326 393751451 893036928 101227274 873782924 425054988 916536667 884720478 935744240 469369694 900459444 470722250 563575712 359547566 443552757 293721309 457975625 487618310 727235465 968443193 990445952 50853609 145445864 243272761 539145059 902853137 986063763 151446685 488619977 524006245 976734706 637048613 698985958 561019350 808221062 988526388 999453014 374333312 510900112 580614047 702576014 316031411 712525530 922268548 926488558 51786355 227848623 894394668 954175786 703146195 786775691 232517586 972380079 227314315 296390075 933150494 949414576 199863671 672429107 729317218 754669938 478561414 625281269 106593351 276417717 641602446 928835578 549342935 748297520 771565245 801508452 956253405 996566300 535439077 722596918 505048485 596521560 584491481 824529701 775525062 823658168 186239284 931545421 537714267 758707048 36575962 470555402 531748999 804635250 861498131 983928033 950006384 955507977 960242905 973760349 916865092 959470500 875199482 957738302 404381823 891381553 2014673 539703439 232096498 608879968 147225671 266944761 863174281 879671528 750500931 873398682 68629102 576032586 712517584 984185638 182788966 959400892 76716177 310247369 918779004 920817419 824219935 861865816 480057209 873394642 985438087 992712662 922061691 942018458 376258294 875545672 642547487 824615953 472985275 907422606 462443958 691050417 65828449 571461307 464064517 667959668 880205260 957575845 345285252 710008287 538347294 571956035 807962226 840507747 148987064 789208889 385037768 881087290 889478438 909628786 260508820 692513286 439142455 927954721 38358025 116119599 640742205 679517174 514916728 515296324 413835378 646281883 93585376 794173410 796808177 958024438 207421198 653315523 307529302 438514738 207219249 803021098 135658248 170639044 977884681 996891647 450993610 585535546 63399151 483931724 688458600 814370236 648372355 733263182 89317257 159762483 894235267 956155029 429083191 718656569 680179990 855478530 602460949 801287378 54034082 279251306 620984602 654518485 703296035 738528522 89881324 495627478 305468965 317800808 635701280 810674724 903268918 973871942 174168281 768949497 925195489 955383914 33413908 376863026 82183448 396908718 172448503 177735745 659917638 938356541 348631820 741089745 605081576 971134804 118441807 826811243 835635619 929578982 171695650 193751695 340001319 765496771 580692479 934673013 182139701 191887197 9688309 685737102 43892162 293078321 728628682 905348581 552222223 884250032 647623517 781416183 622052291 909426786 467785505 595681877 765521169 836843773 962085746 988776593 70063149 579682612 711149109 899961343 244454744 293547680 761656452 869257463 216805448 822074606 341567770 659991877 226041485 401160179 176113890 912222805 411396731 976787378 400963292 664037146 361019807 471945470 996521883 998983846 179328165 287827026 847603782 965134492 222244192 621480041 169716188 661258071 694034284 922515181 99395549 506014731 11754612 445857152 962866710 988165763 944127735 994563186 12797135 74287718 551832818 887521493 183155626 578960828 346135201 424197194 621098824 731876950 437677875 671868935 466208617 503715250 638964586 928616600 563039357 856681012 922175555 940246875 278061929 557321591 236259972 668145351 416175223 588227680 70574674 392386018 883040541 935589371 9010562 165379500 328398794 579231550 984947979 992745731 99982832 466647329 381388608 696632438 786460600 815501210 119211338 267831696 916958596 925398689 827850310 926145441 716536099 970176440 642745384 731482694 451858414 946264211 732903873 976223303 760090997 997027478 355300664 565561244 178904946 778071569 280810007 443535109 133133128 289446777 918010176 970644321 63446474 356330799 634537578 816770271 226552341 288836603 915631627 950256214 272011737 860759242 116034192 396961173 634867570 740740860 358897656 415165475 696112308 747828134 899024124 900550856 365399383 365424782 722901658 874286260 405450230 770481915 44952093 571299211 540057992 667218222 444241244 841124163 613048739 866478659 462911049 839763495 358849098 549785866 236936700 502896563 240752049 451605451 957382579 989808035 432052014 976904383 564508051 844113956 544551193 610883101 324755990 506499601 581285362 671132428 15569293 753752478 996640828 997220476 101778718 803105198 442283154 879306996 721346775 930051839 433541750 610637647 600795666 957684487 713167916 829590640 772692585 992550566 933162991 947020245 222789799 362298859 39162071 599016807 74526116 767442424 290911 523447230 695262932 895869057 626375997 912587361 40077715 402246634 841587443 941603158 81541347 821085836 422408614 912680604 435141790 750831627 984469131 994233989 144238750 989480785 973964607 994928710 206386791 480424545 757370929 845716919 354183769 990251919 254768577 900938505 435335020 783665786 514071992 673873723 489721016 890369916 721741560 926008246 924277323 951558644 26465865 630530050 693359141 762774022 428724609 432761828 880281269 993283467 357453933 606554111 258846695 675219524 952982038 964550654 188240059 565938734 544729224 697817579 551464659 839088998 673413364 809965395 612876260 890838856 386411216 792278609 882408914 922968529 15828663 697140622 361531420 533233912 520727789 673541154 546397157 667913336 168055412 555507604 982747871 998536288 309362446 994025825 687234743 746661270 769185303 848347364 133266554 836542338 601138720 655800765 676566654 802123166 646491949 696722496 198859256 808567924 580070206 669280317 382697499 709899999 381955146 861086809 79493632 294516489 726683435 915034870 5160332 819917160 298020121 787548146 51934766 281728552 546970877 638582565 547546062 753343477 589983427 822884223 178492445 674481208 886289188 897147646 420400971 975673463 85174065 375441780 397556296 968601242 236961900 769953908 133086031 879121392 716739015 933749562 24408617 552733684 50375744 776472068 924642793 956389138 623193798 866697865 83337309 221343020 703718054 748330793 957057348 986921202 718508835 814762412 812276475 934944310 971873350 983544884 656523112 884488583 304062218 491815504 403039816 555288005 826751259 888762050 807104683 992875713 567007171 940054531 63087800 142981109 144252724 366766830 323458581 376566006 310914881 911302506 871291364 987823840 442212093 817258321 1689968 357990529 232874344 548732827 702636965 785978075 460012057 949006147 692991477 878052401 356121700 552854499 401855134 557087233 850075388 958425130 134719958 612942812 923837170 971940143 115075584 280447822 88639601 482960996 941301709 991914383 193945380 449468799 296430766 393502774 539866360 561773380 333585417 486089416 858935462 955929860 628215248 923970029 799176106 851024524 231769802 428702387 746907692 889898398 766254473 990085350 620865881 806943746 676662224 778776007 72422435 275544783 155094015 569380942 327300614 858130369 813991074 885427931 745578834 976207128 798433703 884051919 655750608 661814940 449689316 699698194 808809788 838784296 154174291 248625989 450294704 914604838 871537198 880452522 949114899 970539336 365606936 707618055 915987576 963443966 349931105 730476976 398356915 426828496 980253864 984114529 175499536 554499949 861047642 968287608 543403499 666887987 263047747 832959920 355251092 671846313 584320748 877341571 580444490 769286454 611172351 909954727 381618562 660698221 40927985 977916953 91194765 616572515 998325961 999637191 134944391 275876112 880927571 978096912 168910579 222314196 82238781 371463224 254770187 488646191 415848520 685619680 563343628 617048527 751791047 900161333 593993997 933151701 615432415 654861399 564121426 872543460 844639205 958779111 70713195 79344697 397424569 965397856 317040582 873552720 902407556 960657663 193223602 645213279 451001630 501868529 608261879 820231729 418112105 615949149 270163937 565861853 77172869 198433103 153551815 354258527 505496592 856881116 640394442 947324564 695242239 757379745 4577488 149546980 348766145 643502163 436625348 492209886 359229137 367402882 216464107 380204415 679937891 875344548 763816940 815333223 108307064 251496084 527821244 758172773 732929037 826671412 149828279 841337736 522212901 776882965 439041107 888945243 722737569 893463347 794711343 989314986 252813074 947025652 841329723 929748411 543589847 878819791 978268200 999581994 367589837 941757282 134275825 982126562 341459966 999243063 895479448 959227245 393042472 974968784 619726444 623325918 61024283 395669160 878884601 902844873 342190932 802750013 252527043 918540600 470943778 715002179 5781348 119724403 274887444 323870146 636635487 784886592 908692815 928338079 642479045 898622243 482445409 993904371 572766386 823899508 761578777 904098060 355387015 915519723 220477426 833273446 894280600 950706305 873417151 942340450 62879471 464321128 257849461 839835354 254830312 624269669 269082350 674415694 206392396 945970333 313852443 560807642 291821168 937095222 844560667 992202159 241188491 979767936 104060902 226469170 760276426 890083220 858433750 939511310 139415239 850768341 834258491 880326883 679722329 801447719 379435131 536891383 266763986 621810493 692618873 834391094 380059245 834634476 856609561 987648465 869973485 933778483 387765815 481302104 819521178 914773889 48465095 334131944 531476231 557526535 947836898 993438124 924704586 955282750 907216760 926338237 388758285 671145371 37782056 157699314 100375509 423238944 623654438 818069320 875775916 982641136 699748017 814314928 297236457 746536521 58714208 928769223 525531840 552386098 698231792 789300021 146939943 568481454 228069874 468289325 305905108 356175621 852718084 892947944 721058994 922933329 419005557 621711381 963668618 979775392 796520879 964929498 721976965 934479512 253332633 794217098 743987534 968457305 158910881 450080348 296308428 951596941 893403649 909108920 726452877 787289962 763464234 914112696 364096806 922837185 484468419 991820936 960355174 982140669 674529714 792172139 209594276 662373258 385379464 435541599 831660446 836348013 817907258 843253180 389210619 548399276 714822468 778796678 368717408 551170638 144902920 594671993 360461400 823173105 768696568 869625206 329289031 747310721 917097255 952409570 203955143 960356634 463153056 831171083 803945679 875460269 956715966 999561492 490201348 901244309 204180230 677975446 765298513 902953907 478919543 762708566 956220941 992924358 721177368 900131027 691710574 963733155 605523402 991358604 623901590 704953088 507989958 688811460 359425590 947838410 882556129 891015202 708755387 903653069 480731737 550767413 181102822 550827150 124013404 946143631 140749967 768531071 825228301 912516059 529070879 942235226 266370331 910066054 680320732 737585797 322955034 402439532 230664148 499126325 854504685 870554717 995011939 996520661 595033550 926070116 621372502 833037988 14649471 398628239 286906697 374507862 587079149 794392825 870766451 999455298 91208377 334224206 558559464 999499352 638309287 824122096 186453532 708394197 8009212 41939820 151885493 402209870 554031672 841392948 727246854 810997766 713719455 928112356 193445355 491848052 909547915 926694196 670379413 970511559 638539364 673712708 796392088 878648423 99296383 806247495 830337309 977352152 993094270 996376457 490609452 823629635 396144732 666271292 283916729 914938453 627712754 791750970 535378381 775542206 679171996 776182289 939767015 944092282 726941381 928526823 285723253 737538953 797191138 909936191 588525992 659716535 28746215 62759447 481752965 961147045 305584249 969222533 98511064 703622115 492686873 582995836 619203830 917725757 670383638 701376662 648366491 873452145 787040703 919693418 656020113 958865237 262212420 649970484 193607738 572439528 76962683 578541185 201879140 588866094 835732114 875645033 344824985 377642113 970839318 988701407 174780315 233274597 34391771 215548760 215687543 353876496 138553084 176377363 53806255 390612130 851200473 990516890 635540334 974013876 118012892 391304337 279696398 597311477 840975274 985270264 275453340 282535339 226497610 989894636 912204864 972338951 576233790 627433536 932361327 979130994 981514529 999970229 674469279 724257440 913984508 935898643 351644804 768132407 856351779 953778093 508902308 716135469 506034763 744621592 549694140 592175349 920596383 922282683 958108789 986419531 259865812 303825982 682672427 779820915 518014903 940295052 858866229 916861083 928802118 971454724 503880809 706910930 523265497 665470766 125944953 535891273 610879070 913081978 408567755 476269793 778585558 867032182 131707732 680895173 334591122 935926324 219027668 554908669 341650345 415344759 763002034 824351490 969327624 971781295 781327764 838094522 529190554 761081282 88236387 957937298 437259236 543977324 858151651 877460156 624824544 931201523 777529333 814629461 385240356 925560403 477984177 540729991 716310394 996502997 246532142 527090356 845420639 869218208 473689407 996363710 694744342 786860851 799155407 838604214 774377657 928296122 231770665 515070131 949058229 949670532 70733094 862309780 669863308 738540302 757078633 780872801 900726618 981767472 208656485 926106359 241022261 681289910 863247390 922444977 65054314 890632305 890456487 950940019 597572893 625557545 529091931 631113625 428171936 699458283 684961094 976858805 151584549 215241035 336057188 951417771 548647955 911630413 795873318 899877904 195515778 360601201 755555799 986401307 184696451 573447305 182115637 867194784 260539421 846965944 953294692 976874033 338663502 836500552 269297708 722655546 159275475 905730095 71363267 127356541 374926710 517708590 815097760 820370201 375676080 626709880 905112921 925137301 812940397 825080049 296700224 632645813 372284929 401808067 942252564 944618746 616156986 941847639 612140945 880579679 673158385 993201788 538585482 875967928 482939851 501012764 304152580 613762267 344211050 705357671 402638955 717599644 301285566 617493298 224829425 241299819 840857616 892691434 915347063 996951289 811736192 983603027 802481591 854812011 59648427 74063445 810985125 909783893 313757307 325514038 665384095 856343460 921472720 983135055 454358350 511719606 529499233 697219003 682846989 837242718 527530520 994602365 938798783 996174927 950587918 975662335 319284306 609721885 244808134 672802551 484340379 729255537 808563656 980617417 101954993 646049531 761197948 976871301 783448562 858913824 965774305 997257869 74953880 148802760 787259827 928483531 102446145 712673172 101505544 984513093 668943915 895999470 812010544 979593689 309073595 998687852 882555638 958206511 84015003 989909963 771516796 952872934 127697532 884503369 376686146 538382825 603086456 844243442 277465884 703557265 284525219 409340820 914371667 970869887 136684816 586835676 519612326 567273115 596889229 966220068 302079600 875685502 684978172 950033896 328970862 998364376 805077383 992692260 943471506 971687267 645233093 794047181 999258174 999337573 308479298 730060674 553545493 681449357 930718033 996253374 966266285 986614942 172576443 804765450 788783983 936840614 848416787 866348822 810009576 921716493 485805167 573185214 782988594 982866469 488208414 582402195 274324088 761372421 915500391 921071732 919465256 950862480 82431423 841414434 633713393 634853250 948443430 991287526 752273318 872650188 154733451 612726109 338927730 626332679 353875000 729846644 710346837 963541649 16676906 103840755 189356640 338212642 804376101 830732682 745500085 981563573 285647292 573427753 763373080 848798261 573436630 967290495 800272172 936240633 35444287 647623777 776796374 970098353 413721198 568019957 18597915 257437614 80757567 631739301 476319729 503938371 595943323 913767095 8533180 871081212 127375600 481868248 182298758 640917510 887912051 933572350 379384530 828539022 348912009 648068878 281125849 432054868 908424605 915778662 179787611 608542083 300598992 540770699 225429390 228246498 292626710 296254165 600210677 745850426 988892932 997437243 309155934 807160012 888175232 904473437 263950944 754242916 120442783 940853980 821628048 950993339 813292924 909225463 87334009 337883428 362957213 687975607 441346275 644947737 645554417 840283136 509115167 893844987 238738468 671912494 660973573 970529018 76209509 352300145 389663602 515325624 372706094 806723189 75466125 316387812 377479572 960528150 895483069 926426958 696882748 871472174 793527778 997071420 680715220 697483664 52921570 574444518 897233021 986192951 482182513 721281358 630952229 880862947 981499027 986131287 390341091 630224618 717516360 850560318 907084585 916471486 220411610 573796646 707932409 824777196 255036051 533078833 225098366 434040608 90700009 285638913 618307198 973219604 910581190 955783893 65496953 664388605 296681883 621127055 306021055 747343781 26757178 148896544 218484546 338984631 237775008 266698701 831089273 862950143 32349668 849127069 584308999 838550524 632118557 907556515 388150255 919350804 647567274 667485828 54266295 650349047 339645678 612571170 845424064 948470559 808924147 831010814 70901300 586279409 557684932 774304858 839614377 997633406 363127327 833009774 79326433 456131825 197293610 512172036 175685430 515688575 648490799 921003377 298450856 847259323 36129417 692652593 566041409 827095359 891244091 940737129 904797948 955672412 727006283 950084594 356688219 562841349 584425225 936093339 351844672 721784661 144651805 270484973 798804854 845538425 858875030 867804396 841654233 972797275 862430161 993675483 872854664 994730693 900333083 906914116 984204100 986756267 267845905 372266167 626489820 991717661 917898679 950300485 957346143 995247815 976035626 994924699 965743707 982677043 27378229 815033591 610876229 968831289 569737569 642659251 64144601 568813300 653227531 782999146 58204827 807104427 597874609 740443361 751114940 851139436 132124808 944108319 125993056 358227206 798912889 861943731 358528714 594952990 504012164 515981622 797881530 800767731 966519734 987077700 118322398 328779718 958024916 996891091 160577722 820487358 136216284 348088973 254019593 475847462 902438457 947898736 157125944 609536272 618619647 701366838 71551471 982324550 142408679 750452085 442084769 915153724 578789153 625277919 570491980 653940871 469324111 879243541 933683584 995966721 413841458 968442594 626605975 789255518 936914353 948178945 604553091 882926130 664888949 803733464 588313389 749026746 25081875 114280704 693490733 739054504 131152568 950855287 153389974 611792939 192835365 347937445 363693276 931147471 310741693 536255253 854417828 980392282 918057865 964538385 694059983 706783780 172223167 916221377 696650625 886930137 218544448 556069134 962896772 968688927 612635292 629528731 512261612 673477527 728747021 871752736 412977431 646385646 307360677 540606170 16621648 354928268 512313996 716856973 662604953 837294967 167226858 181629178 48474801 146874132 39083900 76663601 220563127 685422273 703516458 903506679 943590569 994541763 28637194 633050832 818079823 917972436 199661173 630989464 534991479 582872740 932902024 939579158 211861701 479774775 91730579 704346842 389219618 896335218 954292403 998550875 232106326 284601744 972189434 998692332 156515206 461487607 439368351 450328709 69343376 188250423 751347700 928774154 326487483 628578109 617670530 714146923 986061114 992226830 831735200 873015745 921157968 955170927 671069841 745739789 964724842 986965425 38870392 361549378 234183816 678099831 810449040 970018025 37093161 425491847 394494748 655128718 337796075 793913575 734933350 959453543 106508611 837587635 984976990 996667300 613664509 973849420 492012503 667736546 903771008 981064765 738973589 772514589 294774811 296503124 643373552 973065618 838049368 995500288 707806060 895715566 464582114 720052151 810578929 984664088 313303400 783330296 936669337 999649040 663257601 726362916 705694014 719036166 649857729 723940803 414276305 593915038 736582400 850725381 430132 445657867 579391623 661167462 244110291 746893873 201682624 485978888 809474527 878592386 110495320 561421294 598909374 903537741 532145974 893507282 505574853 555740614 61242390 755618769 334659165 979263639 318763823 399852413 104017659 290850121 246834192 738855512 841501055 843183628 697298866 822184343 193266000 382581301 612799008 710459016 253395797 556166541 520549433 749941045 865268612 928261193 208571781 231262031 353832544 757702232 382981890 446977662 680335782 804852305 872204037 918980782 739003698 925786690 736307963 771661272 513363223 787461169 930169270 991619324 307131217 676106031 832981601 875810490 210189692 822608393 548517274 840171081 448109556 548298083 840491816 887319590 694811262 852603756 504793364 975545154 179711169 340107893 401608840 407068638 980965300 980970541 590225430 887367019 708880972 967749747 602252391 996406240 435942823 638339298 728407563 835030876 254274649 984488384 695633647 969386862 141099925 226583873 869181093 975854500 263490752 408235696 525168977 539056622 34924421 245724540 541417879 759619574 38635656 703455267 730328874 860445566 345232953 782359763 33368585 345883014 29884337 382563276 37329992 216114577 344643907 612687146 63834269 760471782 336135989 952098470 316369189 573872121 259802054 977699718 777034365 940458370 675453045 725152118 724513616 997661603 816618311 827248467 249561836 593109058 7244770 187875279 756227801 778049161 486184578 539859138 53575073 296838048 58590224 519211696 609615438 661300060 458681817 526789264 812254725 818420938 502392222 584742641 686432276 984669673 697356217 838511955 385730157 823951790 362423091 671034612 593373716 994575658 811042114 968241227 350281937 495548391 788837018 807561998 812234511 842347315 454704973 757880552 923343138 976517498 98713754 660305651 970102914 992109738 682807548 729751899 245627347 678420109 463913673 773803956 121960107 256727699 631866293 793206712 927853033 968604738 311795451 929665210 661562037 875279958 364919373 680495450 673129387 871167534 156625871 347591195 802148604 854955087 520237315 756517826 730368284 864517321 76747275 196515770 717706968 916185461 119418826 977866899 749898619 763669276 100328371 506521166 781918194 911918219 601783532 696675139 919812656 942239276 948329983 990700690 445756962 869653740 181630371 582215203 501760759 882655988 649346194 739703233 387951699 615965180 94219382 934165821 467799376 705470762 417377314 872902388 715335732 937600305 629836906 647968618 34884520 626129188 649317358 989758482 666518217 775566566 196801400 709783015 216114111 992607550 866578249 918389622 406792865 832848202 391277636 460019111 11151481 229808097 133627662 506096670 366814311 949681518 209223437 711013040 254722608 709868190 343577745 757455261 194594731 201586658 215888223 664019187 926859058 950297187 594307087 778550703 231752684 540262814 391883781 935584040 971207724 993766385 30209015 479091428 489334300 999415670 884244476 912791780 960922348 977482405 376555881 457007091 111950586 342438466 14498736 153390304 354707143 539993664 497467771 953965205 128334926 372962985 44366379 158421362 896528422 944735913 490475121 895926177 665495002 854325152 816375086 922566956 899586995 930207538 992524083 996497588 181351227 697213610 503512392 661187886 288488535 736433196 381615116 424281853 714841316 768205570 797858011 864385566 858011358 992297629 636076441 685139828 750022614 886713737 691188404 846204781 526649506 698469541 299543267 858303720 595896222 792870531 547311064 734520984 155727992 303333164 666790705 735203417 889863341 955600642 154217986 618864732 791539206 996638990 886119618 887202456 711179079 879509138 583695066 754827931 596069605 985881148 681379884 960953488 235097830 648992309 634396944 969528638 481727423 522368444 886955883 978134960 322577016 916807226 356246188 417961196 311933107 640668553 611734419 917133959 998642602 998894774 425526451 634769037 878345901 944669801 686968564 841301620 337629688 506173122 62389843 420048962 365746006 905837164 949382957 999638295 303618507 520893081 360204287 610682990 489449190 943920746 296161584 801137263 217643273 805015331 306318951 640532442 606920749 822013204 419349924 565031249 789205278 817585600 911560080 934544457 183661433 726933363 772779990 931866945 552477147 565298027 282882495 921276606 303868196 318993325 252322294 446941900 115931700 298714687 32851001 850150807 279448599 458460935 994998569 995092010 657023817 692601804 815487396 883081562 595690743 631610722 593351916 857617791 92681283 629934959 263832082 357579588 621576620 961558815 452711720 970100315 272124213 989087867 295446084 979565857 603195407 957879114 308721687 480130196 924642849 939589792 955290214 968941607 835278747 896538409 330739420 486632932 686361370 788223546 703703436 785468969 73813361 955306941 94627797 760836374 910212158 921008195 582282971 775014963 33462964 795396967 177418900 780735301 402737522 418157014 523316992 946379752 432932086 836050551 676515304 935500332 193021757 732456619 800998840 990263556 370286949 728088479 153266280 478789239 971059179 979428587 486036651 601628693 146758752 928536296 763899423 819172185 325320367 863993401 533530431 971320831 658338109 723111146 266844476 609070830 574886560 888973822 616827975 794514022 845936982 851989273 684440433 992386152 193937969 455681069 671582454 784581055 152719239 333559215 207510201 256741415 916046787 993774876 582426298 947092984 425084819 463370390 819066197 842604428 42644850 578374089 138236317 483688643 87991326 946257256 117863259 710045448 437574016 684075428 296432399 553455334 929633486 980689168 617061723 900755908 423106558 630706191 534355538 947108945 176879871 377798565 641603207 941063127 931652154 963466601 244340047 596263106 673249669 962560398 459660053 730886825 905317842 970998658 329712498 612433766 590997261 614501883 739777952 936206116 608972000 614011708 258603820 332313044 428845181 903363287 405047969 602670186 485094415 757267739 617175107 743145223 785258307 833786526 309515093 395139861 610670599 860208382 541449424 949153865 477585949 929332202 589391098 929415578 603639617 777411624 156491403 186383008 884747638 900917412 201180615 457136029 805168440 986166564 600837528 793051728 912863072 997459412 557681576 919473914 180169834 354477324 763212633 980938191 87317434 160847776 764771791 970371554 745598521 806479690 859380907 886994902 415671765 800633970 899956182 908739991 678660656 913593796 541858582 627976484 561834 274986689 210817018 573140152 846796317 959955006 203582068 961044488 480283647 781399328 624334996 871470691 184953602 329323964 84102270 461888967 543929601 625448628 749019272 986348046 112966320 506329730 997752505 998851339 765114543 941585681 525071298 941521789 836826785 859002177 304424244 716910344 740369438 823456414 365963882 969016236 801955554 937833266 990180307 994297263 967753558 997550807 574525155 876853234 264806892 269286992 711033332 771790730 823209409 884378490 79744857 653510332 773401549 852694546 3727531 357987337 619283625 911902209 174772477 918387038 225577341 928341676 504316072 851057212 562212987 835501832 474767139 702643964 431474179 432789855 154338476 470126573 131359378 681867814 898776870 937521828 779795780 993110445 389937393 928441638 522540936 755471619 542372884 791397027 726841358 914216568 55258271 319395132 332026983 788242918 279095812 435548639 573500560 723864363 871223219 899395423 775017917 974881511 929010943 935063833 832743141 885571027 34791056 319286950 800098617 893342686 304941451 754704006 573922349 988657187 375650783 534658040 649028696 909793656 554886897 927156272 77715302 165650838 892474496 950174813 629879053 768369273 190239845 600573804 490270087 660193429 947190579 951833933 768968238 830857092 38109893 860632642 737898331 835512824 886009952 892460716 268482325 917799057 544320148 710317671 410318972 874537953 272372637 415546649 942461449 976700125 216439764 795885472 438046349 905007293 881177833 908550928 778465264 783731785 967564659 984164977 908165187 909068040 57840675 255333313 267594369 343586604 237554610 894571190 899195013 965188720 147137604 919736508 151654270 618955466 792758345 937615762 31756379 114621885 450833062 880830506 172417282 486543786 448448084 737710704 804808468 887832013 307167449 535319726 177347068 822467446 883266565 925797337 886881591 963641136 593983618 956919082 551270684 568324306 253822001 649228980 261882155 595682364 523278790 736615056 782526037 853286027 44108022 457096540 427526009 987752772 91490342 161807947 938698282 998430099 756508524 858057259 834165518 844123908 430691815 654750751 222051432 884790406 512480231 626306246 815990929 972464149 672422051 764871002 855317371 945786066 288938366 533807373 403255700 697560549 857055775 874141149 917825457 976493501 640072038 783499306 322096385 860492383 997504916 999066087 267645730 554480043 710607806 977800481 504853701 914845398 706958104 833430865 356421564 996481658 107176772 739623491 116335694 766096372 719381565 962561882 53313766 867004520 982711262 999986345 260639115 929725054 494307325 899617940 206322951 325166947 979141118 984397560 438853623 529434192 245085257 442949563 983608469 996034727 320835387 474754821 513641345 789978360 82875208 259728547 820836300 952218617 647496849 906383928 659463077 837501133 203381478 813098156 29604665 49480481 341607351 352340818 134162461 778991617 520129284 847511778 593532 995016401 46343358 219228737 271546699 888824908 745040657 971254769 56496185 461529707 883332792 929898487 171531846 508163575 23250690 811712120 827124958 871689151 733866536 956873404 934708969 956290145 534352806 554248333 70662250 730666785 855631133 876442053 837387359 881642193 739836527 843509636 825300410 880686633 246854796 960120279 204684408 830585491 413836609 788189341 859959181 912824579 69504882 190950405 928927434 934183364 861545724 946499880 588582519 789637197 218209712 869120203 31739533 260010801 500994603 722243502 1008931 960336019 609090732 874322137 637681075 956745383 644378155 822460815 231573762 645099831 213338460 265747469 660935992 905947563 995121909 997368799 227626972 949614983 650284637 968067532 597867146 826055689 555383106 708976994 302231259 434302191 860970604 922482599 173647173 317412574 871894256 927484639 647066354 912465249 26607977 773422544 128724926 538005067 359382289 606539695 53335934 408743126 468183834 852978425 450492468 749579212 622098603 866620291 502063249 938070938 12545611 995140986 442868291 729652038 811981840 863221098 610985530 678865817 212517837 265899690 53769789 322631193 602860898 816124671 245009734 820630888 251385421 369699721 702365612 911281270 903555414 908255023 489219106 885808899 79678670 607109023 754678300 906735250 983950579 992605985 806639244 936300912 771825580 921594321 50814417 374380566 829063603 924203970 891390528 954341054 525632678 528745035 569183244 701649726 194011942 218121276 298056346 421017538 277691730 865851220 844354463 935956379 457061935 882677327 617888844 796491144 444095443 604203141 214089514 250298445 774301057 869409619 91604157 253399673 278805649 723580895 132173019 816580983 532353735 776278015 978472389 988003679 682632708 899257620 296176154 559327566 792363614 894817355 610282775 901505282 751342948 898284759 128190348 179895071 643155133 961370882 365227898 723401128 211189766 709880301 564521797 658394261 298611447 600886663 329678244 834266525 666579926 795495122 490505554 859026054 165205653 687551658 201631469 217280826 104512420 334092155 36471561 619415333 52672423 695523989 378437594 655457310 227162606 290905784 397001630 584186697 359364391 709119290 108311520 981803099 388030904 399895995 303930358 417022503 14820399 111276295 431848829 945964137 840962516 985516964 396469031 728376975 880350764 975786637 691979130 913598052 95756218 877380499 809822058 976268327 29349077 621458782 134720635 150476828 528417160 589199919 532827348 886297649 657573681 832219204 846756262 949006780 104834723 888263122 784950661 924934640 660411862 696187352 461732160 703643298 661536786 705184267 956326912 961380750 866448721 871442892 501495439 554715904 240600138 344012276 471457244 571696221 809669156 852400111 18198852 597996172 727518832 953334527 108948511 237600301 914226291 952399420 797637593 838561850 328693238 629529041 663528819 804268557 640317822 944843376 59214725 960938522 952284699 970955740 653076294 904789775 354846618 481461142 200462441 892347664 177285837 714605858 377245167 712494250 744502566 813611731 811274088 816252502 978831012 999615456 121104168 548843283 901535673 990022001 367079778 542893445 2691861 452517671 991645369 995080219 446997906 515507293 926587424 939998916 941558334 953051512 80958553 646416932 56199151 280057608 730828101 953734005 871723720 913201807 864267232 910379501 811872198 826363714 633615625 765085054 602091066 745223438 412379957 437820285 512141496 792151855 230852533 232642987 284706821 928351483 382768276 838053376 147917241 223454209 794005597 861331678 842472410 949567460 43669470 211819272 177022285 488273989 926425667 955027978 839004406 997165066 628023713 932866035 197343688 747214202 871902917 901345708 518930449 736558894 636749991 931653574 16252229 159100044 617763585 705608437 316377126 768006379 297694882 783987014 505768573 506869296 645411755 798871952 238279193 958679364 674862291 928796309 396057588 666547367 485165557 689241783 73652941 616758793 340255651 389834019 165526592 446183710 832926971 837091347 525930641 625415080 531198639 666325361 601144581 840510201 83631258 758369804 578550304 855181330 734930382 839021391 298958847 667637212 76480173 347626355 167141402 544442598 436353574 835828398 883776165 890905218 620681469 807896708 699759 711336449 986025751 999177505 945791452 967387305 252469885 454435403 359168217 631438838 963889201 995118093 245730922 276355693 145353202 850571075 556844336 742852960 107574363 182654160 487706568 533988286 588877842 920420288 683237934 928861207 282780587 781795247 99317434 707428428 223577739 235924740 36145171 574508291 591572176 971084512 920512484 935588525 42877731 416902954 394868461 547441743 272002075 299600541 546866939 998748151 968035109 988249587 282585277 645037973 724578531 964291859 992319179 993143300 942805340 974899974 338524148 509897855 35311741 299707020 664805422 752047252 495081735 724754985 275445983 424669193 438250259 804119467 245159454 501021794 599461317 642490904 607174843 887454651 109348547 901613907 488461367 838547266 110842148 886290125 704215216 832733397 166509491 538209904 344602844 362462663 297386948 911555042 527561983 553378274 580390983 613860494 105845867 745422944 838067535 991350442 977954486 980082063 235230515 771930948 376968197 597931484 188170718 987553474 207927793 442783991 490104743 853320327 832373757 929524277 253892337 591305267 891147283 902167591 241577329 302321970 939288636 944115563 159588033 374060087 558488078 826651999 551658553 606700183 556248245 670633655 326143129 571351209 294310714 577046220 16590770 987426413 440811968 507582066 779253984 942519335 876304836 976202869 670520460 896272486 457126896 467049268 135988133 232321328 147713527 267555235 583746598 946687622 71615122 202763241 340471983 732699097 115119863 466854706 91351635 298134394 220753188 958447545 527751932 791940847 707538301 982526766 156693106 563979644 937655063 949910210 884627749 907432027 468716589 712318857 235738433 870060321 654117481 942137081 352887215 546465821 186430992 371095304 188636558 308245140 41364064 326123489 1068094 591813693 699967486 989388984 822106574 948828898 129503906 948277272 336429755 701069729 132394100 252861771 370146923 807531039 921156761 922016161 812276138 982352855 833955750 884894744 799100842 873040178 506959383 668034575 195548932 248821329 931767278 965489902 756776934 842010973 206270414 888059441 662731799 990143183 482906678 960643061 713867637 722207925 483583999 759911460 331146923 685257418 464782539 839712110 317413321 573755642 819308378 898757850 48175051 130955878 922482521 963386457 631977665 670821092 37458122 58171288 939154974 968680424 794467479 914323741 863357769 878493209 568730605 858702119 708221902 732815846 350236986 809845571 827205844 944041402 489750747 840361349 994468594 994794946 848924472 903625398 719190440 873551046 511123812 888328658 780846383 797327859 354340502 828690314 151539536 387445766 323027937 456352026 291739151 420731879 252722987 285379353 170867112 909354143 338398513 493462389 248000092 447659652 920605183 975314175 700792600 916337126 429878181 669991660 4819073 596525685 335343471 359256180 614058683 982514999 141050816 392766619 759031080 938436599 319456719 341896136 281836658 541427803 276007648 547047781 405331386 735384056 8066691 746001666 863858308 953968850 212486103 877860754 618746702 811190130 276338086 686386237 186296758 661575713 946563666 964512850 649490084 910513954 500762056 805167753 454122269 642175434 466143255 774028354 780345733 919882807 724127717 801675154 692588194 963244272 356483826 939711351 190559884 685130324 130076943 628209530 926488310 972280284 975388684 977310824 636188121 754758623 500449823 567960870 385189446 866099880 883985914 887271524 31666649 981957387 162499107 653046711 82342439 931054544 541805530 904469725 266604189 514711856 588917442 789881731 634982137 638434271 607331037 924150264 273106188 871670288 321641640 918443917 62118984 592849375 350982130 936791460 482224437 978321812 705317676 817437322 728978792 823985685 453613740 460544048 588117811 830757979 16108175 926035411 589094458 885221227 813706818 860098520 166939617 350964630 539879287 912190785 479898629 987729819 800774452 803837458 530773815 923428648 349639778 807018751 309186711 662718656 704634427 862006091 744422001 839454096 337864448 627226058 679831057 731798471 89014421 239971547 20708064 944148308 474322803 900168831 262520263 569038556 812573010 941800319 942820904 953503120 594169432 605558317 815449138 879702529 356873709 798205385 566563836 683675930 709205234 886701912 212766643 821432085 717172624 753198642 443443873 649717895 413561480 547607374 930913119 974283590 392665332 425208118 606875023 797577330 480656167 865669678 551973162 938134928 12528977 811419359 322212907 446240735 999170831 999950368 940914093 945584364 973772127 978290413 377351394 996971536 705962607 913680185 581817379 622329088 567255984 896757440 163816052 270862428 414125462 635528420 115670164 574493078 23689998 764110901 888936130 925385325 98675472 694913847 791462957 975472330 255848956 908588348 533116102 734839902 715787805 744210975 359413994 363464689 768365261 965976207 68304654 285659109 25307323 370844151 6531013 288689230 44461533 786456834 914431418 949987864 935189676 974045333 577448007 636835259 109846871 387561124 321055680 978668794 849036094 876913336 628614695 673048073 832204287 998967210 201475408 387801535 943120261 946644541 560486416 663537899 291035091 674266389 34342239 888129610 142831056 963336584 293700569 773529261 819759528 973830530 368216230 870815898 379217054 455731348 131187733 917031084 498190741 755593818 284568468 733308227 442354179 524490799 640321836 824669378 565341693 599049416 481720351 939720073 178105190 511043918 631344904 893852843 820557905 837849334 61714402 134616518 678674180 978553123 589057434 610228754 691266055 914670771 617107159 694252780 763809948 972572156 422045326 688031228 432498702 953771346 857999485 956726367 533360243 995628649 449959425 581712223 602738374 900561430 650295699 998103366 433074884 921324466 908015523 956761821 749324674 837101392 847926919 905192153 664090554 899149969 869868737 891816238 968074453 998348181 65314230 342905468 966965925 997323866 624601369 938971152 443111574 594500351 906569466 980859508 744961431 953766775 762493964 863475098 778600255 787702705 815862715 857404460 294230698 511104674 590518062 618836687 999606039 999630168 164277917 466393566 646057141 918507959 767221585 885822951 826980460 869585784 913485994 991271333 264787638 587871853 555243826 867423749 964345096 970350255 793863570 990935371 802155753 921279551 5301866 216330661 965021184 996034493 654007325 654178971 9850954 823770408 94919628 644537144 692476118 876599498 324533827 376153647 122248214 813439438 46871746 52300836 445297039 743821527 330676882 508864865 838035680 913346102 377373498 869529319 761144707 816694913 485419757 879094596 410266790 655112600 246597372 259819756 310513805 987434611 224590073 823518493 146463998 585565748 803644437 863549713 263080885 806710827 997266602 999053461 402357639 860127992 249117142 566530821 688456331 765778133 895718940 992643901 614901736 719062578 269799550 311919302 265465985 795013205 643587990 920049800 424904113 773145767 254700051 614510432 314173239 917108212 475544617 476100154 828830027 891770135 60166938 812787488 260376131 791736379 893584751 987368692 898851979 962694833 232620113 960324398 609324190 920695911 400246643 537495452 773611717 809933773 939449102 974262223 475775002 895910738 352753172 806557294 5381696 283943943 859203678 950928685 119324059 528109797 621119990 972775498 631294708 894244585 453597270 914970410 51779842 905786358 302892090 989107123 762197680 854002948 26318202 223536889 773608040 858828499 502113854 509394907 928818737 993450193 662217666 749705765 844388381 862919507 92197064 202173093 292311310 372581055 462457858 790079121 570401668 867565484 791928882 796452275 776595359 900956089 464551185 813927698 739923831 877527066 520208585 886312364 576136635 786683379 351430682 642378669 156805069 751665563 439099916 972169217 122269521 769291230 969229408 989462430 559676519 715006687 16146464 840085957 309065546 449797372 248544611 340975299 27055581 705617261 215834127 435969777 681083797 811815419 449434630 625298539 922209407 943079131 840564675 891587871 772653877 992253198 883114332 957961391 844672904 932623603 673774908 927242771 103492203 538956230 222134859 708953581 293726441 904656558 289558974 945391406 538728291 552792128 439057192 733935008 276972779 536552766 456439602 537992303 314079767 809712946 18973396 559625677 864097298 898704836 111947436 695946133 419457950 672011811 186052323 569340796 788434036 941398081 779199907 968865493 32081058 708029734 811286015 987847545 620889257 907005485 180128135 683062175 686200811 756798277 116961316 168553955 615142253 983967833 959406584 974987803 163875546 236609307 723297476 987208275 707718744 919756846 936675828 946519324 989283895 991356586 883241436 950421314 892447428 911203049 836311106 918733297 46489972 530407804 545937280 615227515 43861707 574993694 309880802 574459509 58212827 871140696 8972405 780216093 194286664 283734583 942222917 964439055 501601152 796119007 649410993 904996730 522725900 884316620 322020673 600640013 596669594 957164866 506279109 952413992 639640552 908435865 659859553 886686150 135362144 276103972 527300750 738313026 130346457 544927883 226825509 411059303 972640610 975250930 459762491 887045160 809837192 810042186 449984946 511567710 266512665 933510157 640200081 805767538 884754691 928255226 988772448 989852122 323015455 965944596 586142283 929657000 113412381 779018815 640527026 783619053 490529439 866368884 331907544 333905142 140521860 568649022 892338187 911934354 803251337 881796325 843050618 981163924 340262504 671166054 320532384 432475758 815917488 980908514 965775616 978280263 825451345 913062426 541323515 719688600 956522406 989740071 565864085 892324348 753871218 819301846 190291478 553332370 231303401 789508372 70284453 727632243 934441362 948143316 869950158 885051634 218154952 724164033 882724807 920014039 95956433 730463178 390409652 419911213 406476262 665654172 494053196 567731486 883861182 963539382 332987931 649402833 450481756 877084078 556750651 704442639 615288962 706525827 112892637 876100656 842143052 960658009 162895833 480825866 942356652 981547275 855378116 968182028 100244615 765566169 368158798 411386271 3457546 38945695 816981385 913270824 82624345 682569490 908764465 937188450 635504985 736554839 253715899 796150299 127555556 924800308 515797751 852679184 817686377 827156285 228683710 921474493 505562219 946073526 484204450 859165459 951863815 971906264 827275668 934305917 156149705 731089669 138855978 564968417 602688896 806705958 398501698 929921589 15013820 29118824 832142295 953321464 894902348 902042256 699711671 840902305 767631613 997334115 443520501 588450840 352308488 976380561 301011585 676922220 583867189 896262131 951971421 988479009 449286068 624724522 427478581 806487135 58976992 803765600 580841318 999864685 645652813 927934997 903075183 946639001 254710029 464222076 985870658 988633339 169223461 359486945 874975496 878550588 117434557 151924283 851238830 937133797 951548378 955999193 125554621 840622942 224350976 988144846 364379689 712783326 747772889 785362085 442353518 878884903 600485074 785036299 835948726 900350090 944725372 953830875 827639964 909248244 131255246 218499936 151730486 467127741 327330559 931017344 441862467 623929356 877288616 966745587 32185386 894342862 184821348 483377746 53373952 935201368 105636675 283498551 474297610 740028947 681240176 883305390 219758329 739918031 4802415 39032900 109427637 621197614 680865523 802409648 652203441 654697327 426234244 718778077 929666468 964681489 33886246 73335672 502557393 799536156 524587082 919232330 46564072 266242133 532638658 745950509 436589344 652121830 342260822 451233153 166211399 836175071 858262659 871718096 556544639 955316347 790328682 909415044 25069094 566143881 309705104 442903086 734674176 856473743 405100234 614518479 731668659 995874687 473244766 866823917 976741001 981455508 716730416 726626496 642079250 941072527 596145017 872941790 454702529 745169561 653999562 965493929 410676054 662124624 240822928 460203702 866451931 948155452 181203247 270274774 4405402 224934265 938921767 981388987 516800884 942228578 522600403 586449476 881893918 971965266 908516449 984638070 257054064 835013707 988969241 992239975 531490824 737522032 241512183 882673577 192576855 649665761 488418958 777713692 530803653 544950207 506003898 999585743 794635989 915621276 693320303 924181539 804091698 809449395 436429271 455634767 229888043 298194890 489681869 520057298 851290623 981041788 318268655 492675164 231348691 503988196 49758041 920046022 322662630 362631631 375606717 981959692 167658483 574688180 11041901 564094669 394181687 833396439 995830856 996972951 770052630 886499108 370095738 539650018 355694977 913609238 762674281 831405142 833513600 847015246 94088792 903952225 814501130 888238951 835635111 994877763 825347455 918178832 220686996 288041808 787756723 996309744 131011751 837066141 412334521 774604209 240931421 355085972 100266821 451729845 236784872 412599124 152555128 923063645 601789742 795959465 611530972 996414159 534003825 586896177 796466747 903884590 910061358 942384687 43171711 956125139 776198142 789937333 603616903 870610832 509503624 694153364 901551667 932523784 456818151 886109859 685547578 957312763 92768519 244537218 41056010 396410861 343858089 475439883 67570818 733425100 692055138 827413375 482101208 856307518 427287535 868727018 691604765 975891156 912151218 987080664 381677666 703167615 705444638 886322863 607965665 904503482 503036205 999572482 805597510 967618262 585379246 852680242 674151266 808290383 201946197 754402485 604607475 731649424 8573815 319445875 265845435 528449341 146302707 528782754 753581670 906068866 933592343 971538459 30240779 148751550 701368321 887589502 48938526 462604283 248022490 570789159 702699587 879882424 250596673 686425593 775154357 862086385 68198281 512493971 32910540 233175553 709487507 958225987 116605625 563970850 305765584 986661181 481174474 634792765 55628780 281159297 907667933 985050502 583152723 995322174 114660319 645003881 56050892 474681412 576843121 693681645 710012181 944508826 745119476 962355232 417340566 687656811 158836869 510596923 291936645 331661684 727456697 987263639 494170868 921065695 847625598 897770266 931206361 986483100 532751670 558710294 169603039 657998662 860968057 880533029 355803176 750983810 156341656 561592586 893336199 969114927 392326251 939519640 842812915 926734678 645627548 880415176 974023551 992868428 286260739 363661476 907614577 942873222 929974384 965508635 956286788 968265172 839859945 932992169 597284710 851770839 331100182 828838201 677106697 686585235 245825416 623695751 885281464 949743653 627646111 778461596 73203648 313274020 653835576 817599880 517924268 935086704 425752916 896826716 325511360 437561270 111498771 378550683 278424060 765962596 12926146 696902078 689573441 731304751 739576196 893189344 217784184 373537525 308360000 915811250 681689704 901965604 249862822 411403399 641755304 739331660 841247885 925289722 186643125 649664930 939763250 985884241 49125516 596981960 31851354 982772799 535807944 613096733 215127229 913203019 903581221 960041250 721276723 754234618 881307895 908154573 280555889 856056478 425425437 920884606 415675276 515471938 898307501 927403963 85747269 620168076 74182583 166432485 74748504 786913648 896874169 912574558 586525043 939511542 586496656 817924255 821748171 987949718 119141986 280072066 576459921 964316566 519248172 924538383 51200194 461274931 12304799 834036537 606810568 659079878 588850496 964769349 667007046 941315185 480885572 574826770 349890353 469469190 372157573 588880067 965189415 990745112 540755114 950922860 395264729 636844186 667149864 699423789 124269049 942656421 44351105 850726882 909248045 927182763 892655314 897774614 176881126 364133114 14635166 931569984 693636575 715418909 518439785 625257530 684414084 881659917 335899421 423775554 279110378 421715063 982003820 993792324 269804993 486491003 320337846 655295929 604698948 876761762 787825809 860774736 944556740 977174805 904356139 942655631 428769831 575959490 137596306 291881430 249239484 983509556 493075269 896478740 647816623 884808475 907908823 951101496 140416372 650376591 900329789 957404296 261425734 264348609 998610792 998791212 720182382 974982756 488369595 767168937 806838591 864715359 273070161 898388224 552455965 929133979 529713359 950868556 952847066 998949703 477881118 548312455 106658894 722881480 594715763 786245178 830662864 878473454 676697273 849874824 654125090 848575817 888565803 894010029 645271573 925709245 83051299 234484528 470301164 970301613 488722323 733594911 471706257 921799077 146654709 200927950 435064987 460464774 799054296 853214354 458466231 479169528 605705129 781101505 727404532 738790767 389723021 713436656 40274231 450374695 780392159 819004693 1999638 892675670 51039647 475358651 49117058 79029315 681860889 933624549 707039286 947803244 857964861 919803569 718634595 970319329 8269844 695050297 928853590 937411853 604016968 864249458 210349340 691961768 866879600 919754271 367731311 771186074 801768632 922912846 151101956 931106779 189666317 966825389 896322016 963419499 309493708 631076315 653786792 909098072 55126184 378792597 142485221 341263377 496100613 765794044 146967883 606936803 332085876 770817643 966909607 982664117 890740398 968416441 873824606 965572765 471755128 633552012 55806994 629214939 989346003 990666482 50126385 450358924 653224771 798337021 25828847 470241330 655780299 822272837 933487610 940480586 498166865 850148843 796633486 829853632 715123107 918966560 102411661 132792852 850247427 887015284 87186379 104307991 934264227 966683503 647250424 776059589 720728837 787686207 592148160 721190087 223162453 839338817 706667457 898487733 992309276 996488673 558578353 974290585 458212263 678096533 185581267 852373982 615392834 741213512 456862291 818957917 534047394 916634011 716789209 928819984 36889494 539680092 72304064 579230888 524171485 945102389 250557049 848296235 977268456 989546920 1112873 422281874 78927288 153622475 882466582 996579472 368974972 749056319 115765735 122753063 335652205 392401915 830956378 990831297 891847532 922542428 943105343 983132287 458748896 618929169 828873218 863647643 792548888 947010823 411364196 696388073 621771845 628767168 544149590 824723761 121506124 477582334 810301276 870684496 321060971 771322650 150418920 200079426 861741620 999036248 211254790 488798723 963557417 980964488 135500634 567904306 58197662 923472077 755900412 813998423 39326483 384528841 774691681 827432950 667115419 852515954 378896260 683014462 953183345 963463479 46703769 613012169 158576820 384381111 930432804 937062471 687140451 879859610 782295165 802250105 491950066 853605454 972768901 976765109 127668438 727822899 551107523 786411567 188988506 442294382 748150780 921657543 69818506 595423544 518547053 653614338 468950457 479192115 169565390 486662924 231299568 771555508 278740729 711333393 676092434 991722677 496988439 712886899 436382634 945416555 853503063 895845612 75661740 420398571 556373885 773007062 971896997 998168155 622215509 780554716 746711300 810089175 97673436 733900041 315193029 345134885 952376398 984934153 28781025 577468831 235696374 987237875 646827118 723352422 543835834 657123512 936078931 988726206 631602873 912722068 309259058 363660642 765804013 825356818 441667949 748538937 915084253 963850301 599008894 982496947 477902806 525343408 497117929 663774664 663272841 977406583 630000194 744514213 765239643 865874688 708721235 842973435 535543809 837462365 637819640 866772053 144634793 570660540 543428906 689660368 814423807 863597001 712956396 801312084 410118981 590599954 471252368 890014320 978530763 984736929 568818407 958752523 606186341 854142846 902307241 989247574 252124720 270284890 321985097 898303587 381160073 909918534 485807888 920498593 435255966 487962003 602930552 924509138 525965271 938399777 61186015 433426505 687739039 859402660 525889512 694996556 496023942 499913701 229258755 699002780 634455726 989701757 374053329 566825290 110987323 837124047 19993683 190146664 435977938 759422525 664793324 968651292 522058641 694652773 661291092 948187503 466210883 555648362 5723776 110127080 442551593 728329487 354605651 858904332 224457210 747314239 121565790 199211694 842034048 958310576 785764891 868763543 439404092 626544838 912873037 948138101 404188321 818843974 766034262 923552789 181539608 187940186 922808418 973638037 267622106 563670734 503780041 698830451 820055664 923422369 224884861 603190188 725614774 836266912 843192069 874554390 61952015 455922142 129506585 984992046 517044285 727220137 112335185 532580521 163564602 326679926 250163429 914606820 346389405 565157802 704592676 862554198 963342476 997347412 362740160 396956233 868321487 883479331 670368331 689884936 299757125 874566419 760948665 978302358 67418804 399465837 99159158 369693845 93180898 575977555 90071742 468511756 469651504 695459564 902553003 919301833 673892087 719252084 34929155 972828388 72832493 553174168 345520935 551122698 226547778 869588539 493124592 824288344 473171650 939151078 362291111 813377778 34334084 756227980 262707386 615480669 234080553 424898080 32354199 438759062 995642813 999228480 707907968 962594371 849820924 940437803 923108866 926422267 397051030 496723220 204057946 861082977 356064714 772040009 274695075 553929972 84634256 586784144 652167342 706650132 294614006 712475514 63554420 285827105 450946699 702356251 461171 460451604 889664926 940456831 957569362 991162930 708674570 798009388 175490030 941863380 811789421 959792382 657615953 889317695 685891183 946801665 785706406 947475438 91313733 360116355 876623269 879463288 757962722 798920905 929175777 953717663 886717273 951726892 379458112 746152450 939311594 968141890 940845536 961619617 175066705 208227961 655079108 750743341 200100250 228807377 845041735 908984020 609759909 895947521 25467961 335240748 232922984 559239973 225033796 908274296 796131975 852854464 549331542 862022087 128298 747659674 429393005 576745018 207386522 585008387 830629326 939928804 364186613 839385191 710684049 995493694 361517679 429334981 583188332 743088132 958186027 973698863 467756165 629701875 204233763 750474050 197046692 735911093 522590770 629745486 235875382 849857538 986012743 994775953 567217280 986034471 764032215 897910967 362271475 390882643 417791026 872429581 58320690 550936170 890107769 940792668 905670479 915732727 569019224 743438817 449942209 848291226 650696942 734156656 81903981 622710787 922268074 932447655 941441211 964208708 220853711 817615649 904820182 934438796 822351476 824969040 490861835 587602455 432112216 822396431 486110193 615761051 11881221 15220717 643642631 686767963 359699617 958372166 987480021 994308698 141864622 806555576 254611123 274823004 493318818 861933947 685886878 880237699 266904335 722668159 161141689 217178693 486252977 923172923 616429778 908574256 488535353 998681496 802999867 980620314 915315739 935298624 12972197 684806037 800073674 894755513 160770244 938828837 73423735 397084870 289811305 448771494 968979721 998482380 119216867 714741215 361175532 584193003 686055777 871245318 375458308 837290629 713740512 799270292 870310741 987477956 108069427 843784810 580511600 676232691 248425215 406747835 504404342 586135685 108972033 829873184 520307567 787355142 754265759 923894097 974765977 976602890 334423265 635323939 816530255 997285750 32702172 250208768 834438071 859326356 931302972 992066892 10617171 361918206 911186634 921729352 321514390 883495609 391257473 874602250 193495083 951926549 659191797 849837756 786993232 972080860 740186581 971170725 674810398 737612694 33123735 616900938 407997441 736116279 666802406 996565158 296808271 593094250 382335036 575911274 897815092 954629500 93247198 158449561 628604461 701051334 781539846 785926693 156802191 946333212 110716494 598845021 742114719 994860420 960177081 990919235 240473029 899995923 231615643 536598186 731638851 935789748 987446788 996353853 386909697 591484873 373860304 853405501 143068356 560608268 793115395 901179974 135322584 514092927 982646518 993626712 353013322 812240424 702133437 943931114 619101889 890080861 89975623 236908427 382304681 713281489 979883294 982294926 568366155 859197326 713892209 963414985 321001966 389467392 333956234 740134010 764993618 982096974 90869425 639055201 997867794 998736466 24008770 857367460 75624834 476025868 151688864 977739109 867090505 994499713 679950540 889109580 285652153 933107292 182118591 845430258 623187822 949180952 383906924 713528733 439269061 596981061 984674155 988153768 724610 281474850 597131690 785478095 948262895 962631723 838080822 944499051 669818994 837397301 428513968 686605417 107418205 761742293 39398134 68927604 373128353 664026044 331619345 629044311 38126016 831127605 404317473 495434853 91005275 873763904 16707597 437444976 19818653 277568231 929428156 999678890 739839303 758024052 566180035 950875506 98978261 574865668 523643399 586593572 167240956 398601613 529609529 752445861 464411349 884329170 630106003 775717688 252607174 348913259 324374884 397421953 638340627 698663929 83955003 656166201 524325767 706053803 829169680 829255376 101446230 269845083 898720909 910299251 799151178 981020880 742880024 812592928 236853723 533910184 413764763 588377252 955888378 975328222 995751608 998784561 546136644 705614761 103280523 438516658 914466688 919712131 527522406 595380888 569009241 701685970 697004052 906934628 663511127 912607491 875250622 918987002 942721441 949923745 233774935 364526814 788826493 953607600 91510517 655547981 967954387 983118617 650896445 746216126 771285818 954927096 240562782 597069841 909160974 919016510 794621598 850059920 490254140 669856023 489756965 949927263 151509971 765117760 174217041 813128733 555248098 995243607 762042613 865362790 844015755 875139286 234861174 889171666 661545712 680815789 575707473 985394526 3415180 222432020 587349696 698237071 451298168 575312396 238060017 587844678 813486280 988203094 708236310 727985593 758459913 792825533 495560610 647878987 839370560 986909931 464869307 970444024 613451154 698924315 279351806 648998918 879588015 903400458 892304659 971519875 947747150 999928547 98743697 334668518 449339781 959657658 194773135 298042448 972449453 978003434 718576933 724990991 344102965 398426326 282585013 623118067 241401739 513370364 181538670 648991297 521683435 854760024 7596040 750833802 543876138 951099181 74074242 483562511 647998050 674338085 588809536 743752766 393724088 571425743 914554476 923571430 224422589 816403742 209578842 640002212 244579389 782336496 956463124 978626101 454540464 737900011 869361453 944774857 671885081 726864740 116100460 628004779 993530070 996696504 835464091 918507230 55801604 147099301 972381978 972942587 370085976 758309123 703209105 797770134 798880773 959946093 666855753 870781349 392904487 605855403 961173727 977454264 321370537 436744528 783585027 986759710 814579128 834324196 466475233 540946651 757470272 868349324 67348131 715135454 408582128 546797782 809201041 988056246 674936922 764212720 751067888 812919536 704326622 854414076 343683358 618091663 239350108 300017430 410864409 722833780 516793169 918235824 56136820 346593501 547159988 658187259 79793360 504628275 129623943 313425386 180975111 693442325 133622405 343398603 148298043 602074108 676994863 755786998 222061125 968995670 535559079 729917744 208542772 964151087 466490691 817999526 925346616 985335691 53624595 478697815 707745971 947841114 52360560 327033748 839282808 930986468 25917919 975643759 809214440 992700594 541689744 622673170 349227085 509193473 724975010 979672855 205076062 718833490 833511842 945278294 19945541 311515818 95313794 303313847 836265349 938004052 185357414 212567128 489298913 552900793 310999386 935677719 567971621 865308118 498741161 925622784 872753039 933517507 324544659 439451005 293112122 954135765 193684110 608480228 443373245 875931464 622363182 805671165 326380950 721728128 109272348 368909317 570212449 858541037 283864208 738749060 429754918 706557731 851385125 864306991 943736836 983855098 59531598 330905884 522974 213255999 728497407 805049464 901538968 959381693 548091278 769323916 642839455 957508747 801727731 879749234 230700456 787745774 833544237 979521640 724561510 951786652 828007034 882135001 783194590 811412140 402253398 675617560 741419572 979291493 625169802 811809213 103802813 983655512 588121407 639856878 710187551 930637324 708635637 939756734 274470118 486820540 48281215 870961279 649874911 929295354 169972944 872351198 426831790 541174967 114520540 190272473 723779938 824123921 208529355 622002099 485186497 880774083 943885533 957071300 343789012 670876002 350234938 885512667 374265553 792646884 701361876 780104210 64642567 480440313 801264055 892289524 112804947 364934973 55468322 118044151 45014459 645857775 315606951 318851795 841807999 859646972 659190631 985769200 276596213 590671550 828663996 846438688 982982079 994990659 843401486 982006129 113654008 500457880 990279858 996802427 859227356 889756388 690187299 775977742 666267578 907000189 686844399 715827371 286830191 480931155 946457488 957141888 702443473 849978337 344776966 818051405 535409204 898606740 908020808 999978930 437599774 699689258 668844150 709697279 314845139 371189563 661696264 712979272 991174105 999069610 393138812 886973553 301439039 829781838 694494794 848502020 376008009 764006710 775800557 859699208 729914104 843445634 103038329 114673199 361207039 672772361 261833452 652024047 214252163 684820218 189004220 206567028 899215905 939167598 876024806 969237465 67825959 297182199 49712304 645290354 344883543 971725913 839581824 957548525 665872438 971050694 174751158 826011274 887186987 941854745 842373019 915132686 293427694 958913278 947933520 968993947 269014548 392093352 525937438 649247702 904764999 948947162 591827769 615379849 476087923 477081811 414590139 737924388 747608531 924004694 603664424 787863643 600838976 896459093 477562459 499688679 318422242 508954193 522263816 760849504 90680393 953336483 511527784 687741617 594451984 766326302 311652989 577402107 915414422 948273240 127723890 507595341 987114509 995987284 835431845 939547314 179492139 668253212 652392428 682510541 997349942 998805956 219934748 951370128 98307184 454173550 275471492 793742389 177133362 463880918 279552328 341389009 316096486 417586952 358365717 521688339 172802054 742786047 392348790 601247880 81522843 600152035 532835363 636786537 122716516 480906866 518720456 937934884 187003419 338013218 444425398 523259162 874270607 922391226 72216466 86646768 856190288 913918157 112374163 541125598 229698786 560436783 844203787 909942975 707777549 964580693 983247404 996493538 120758184 496090771 301846398 453440933 173607189 390029497 601687939 850164043 39222834 343162713 90213734 781477834 59654912 830907430 629779487 635391745 573790738 681125091 565148843 982424885 439071679 625579083 554727841 621135982 407054326 464220742 790807327 902165406 714269355 933993302 94098518 901397594 621008678 989507522 942040660 948187512 904178706 946869136 827995700 990910299 768135451 998425529 845599654 857171831 931403073 947875047 240575319 627163901 402717198 409948798 797588246 878556549 470318330 992961904 164997236 930698282 874126400 935099800 521218558 549119966 853211729 922562866 125342448 539036395 464638595 974369795 527783670 711705558 73376421 399021273 317161449 557942087 962621574 989441169 822839672 906849376 472000034 611504370 341666101 624836633 872375468 918333195 248479135 635007612 666967110 814554877 75982794 316553745 121892550 157540277 572952610 753029125 507215191 556739877 462624965 922754580 953923028 994595466 461177513 467357328 967725011 993060307 586127060 639810245 247828314 383721984 406201706 442211644 944256954 955944985 629617714 801194768 855914279 918367334 542929541 610235878 873343953 997736850 27227663 729144533 564613846 794637446 169162216 338648550 412073225 851290684 263198025 947996643 14579586 461285332 651876832 876609370 238442924 261887002 369051119 685707356 968204116 977697985 510953811 866087385 963083145 990881712 908828532 948358841 657706797 665839259 130929169 547934027 466520176 527209635 669054495 964894970 870966680 947762763 56474498 410106112 622719587 665124192 237438746 646679217 601972259 855863856 180079623 872145429 785950234 896920221 106576489 120729567 818916218 965612994 445877547 459091388 749480464 945418824 467437742 631284658 685310815 941904545 38078195 774633250 206440953 695696965 768562489 988655145 399176999 509336419 707531609 876004244 427327773 827371060 832877954 881429670 515034027 763315360 277958381 807256105 831981548 894710228 285141283 815953419 202571075 345132531 268343215 432484063 657411474 953851317 653397636 768791635 934577283 970721539 314970191 803452609 720542193 990526617 439239673 678759132 314269473 398938234 436716536 776189971 342408551 558517114 974219001 975206496 731468876 815138197 87026343 610923034 304088932 534685042 557758663 731391640 846024171 898910437 681814563 977589898 508036143 614934276 602229047 630274048 1567160 251263073 393161569 399153196 851667416 921313392 401414335 437682854 860263259 995927187 869053887 940457037 607526017 731017146 796109830 849205721 809478391 927334847 332688309 415752809 525532497 598367679 724353375 764478523 363524428 631298768 664928052 759285735 279578513 907084392 758853747 994504140 447519826 472860470 484695214 635198514 62219236 317611017 661388183 944224164 769462336 969247887 647007201 827432618 168693286 643651457 209482082 696282221 728015401 948759561 611237092 782536728 428368160 445297453 902029499 974002967 212422202 300500429 607181337 835923810 631398916 822781932 31267162 750835743 596157333 707748136 56396950 470403161 699409758 725838056 869019245 975742171 929756641 978740361 875650144 900178648 424508465 430465886 476796626 996131309 825945759 876202063 307834858 738543039 321348833 439985574 528736381 729023511 782874815 991466143 990272099 999580542 360521869 872946961 840678450 975487164 383469118 562810050 89044611 437323892 718380110 861993275 822913614 941419266 705933966 929582274 974072929 990579205 226285763 992303829 713727399 975249889 776246451 947071126 888740499 890520673 301377907 488770302 675598825 974918420 783954675 828044398 186068951 486805490 240300782 793241325 863689651 874864182 235244247 694617680 123187869 944672865 443169499 913232893 32166417 808845188 477923139 942175382 850869969 922474390 726606613 874148102 883773439 920332177 980639489 992883927 561561771 674640290 185909928 415900431 947275298 988244766 661548216 997175855 901161428 972379002 982029148 997759544 258712193 638177988 390164091 470656325 867969452 981440837 226809489 861601072 10004524 532254090 959521645 980750394 848872914 901901640 756739240 908751406 824175045 993501151 744340409 988185956 236554856 283882797 175524109 641224109 910949864 991821330 142300351 213698871 442011132 764050826 80652537 936135653 558515344 609905440 642689026 920971990 694789696 834776866 188931237 690668893 241908987 786641959 316825479 769243288 120602074 915844059 203572075 957324518 773036360 895873896 819137640 880678019 217724174 984380685 161694727 289504722 433929420 636015110 16490876 837987402 529655243 986887286 16306576 599008873 93109143 684945945 187704791 353403762 289792066 717992447 710520976 799051692 283607357 547641430 881991376 945556327 499566174 572949013 143526459 656467490 454682837 497833711 179871183 770488517 951997910 955095168 389317510 947125101 815312564 875253350 813341747 889958055 288835147 883357774 231526625 550007857 7468592 653765017 542805803 548604249 857472220 923434359 917870250 991669699 187792104 510072154 916139861 924025273 350703655 654730602 829869315 907788931 875822432 969455250 548173017 579280361 841192244 971275188 822534826 929506311 300730011 666083807 608409131 621081451 701117744 850728084 43555233 187739262 873713259 905820029 747692631 773764335 333433034 666658523 307286940 575215324 23727905 595410831 758206687 991346977 21093855 39106506 105388166 757072088 22865106 208137709 521208652 656175081 599594059 784763749 619803042 952747350 824008922 984640702 905736335 947151086 576086523 931972775 909692234 979641098 496448019 579660375 942930109 954918092 857907367 874069546 619201641 728569310 576522911 709215495 736953881 822592169 172574978 501880513 956121371 990462403 538024665 651856092 465448196 904011455 565534395 940090859 959944000 993991662 352355588 451223279 154915788 359689062 868032003 985570105 134433913 945922735 145757064 319635539 630233420 927290977 77612732 111198797 776652704 910925442 726804996 730637340 157127481 769013464 474600325 789311684 712677803 857802989 823446516 961245810 264484890 689676074 567813828 581269295 639956273 732274224 907397093 999519973 703637671 886025481 882698877 936659826 321664623 689332618 685657863 958131345 900944753 921778753 602156748 831408245 81797662 477879741 364319997 667119456 398038611 845016427 222342101 935509391 380625765 463789345 273685160 540221469 402254966 437057934 47793 778491518 755852922 899739300 344937028 956469413 107727346 235019893 810599530 900974299 799679324 991317624 824230385 838426922 100711127 911610933 438798587 656382289 609133098 761039105 635769380 934224148 630299439 884062842 426635235 764066249 332010980 557507584 991299750 998848548 771072005 834211653 361674317 484704166 790779619 960403618 328678575 659046179 878982208 893130104 427555933 577897520 741504560 872744221 818512154 917758694 79492480 330588972 271611868 432954584 423389522 475915135 134530491 343502409 763204016 988762747 677140728 888930219 820761399 983877566 795619015 812656562 683176126 863542161 559408241 976546361 874264237 914294101 512767051 985155507 578861285 768489045 354756894 439090826 47470539 634279659 228512570 640776653 801886305 957926682 430079372 541785089 262648949 392932978 550085268 629490636 957542655 985766511 167698030 800743093 220386264 404511800 894131517 954170047 858329145 885690831 841946844 896302837 373230997 568254146 105925358 279938024 955485930 972722647 209226419 523597811 416607656 633735075 941280091 989189358 335967729 720617907 484832380 704047848 760551823 928448317 131829745 601623981 952446899 968351376 966474871 973214641 993920794 998093227 561766581 577078495 179771226 548674797 64059731 737833314 662760663 840866772 186436170 716663301 167115663 756907560 864882934 911595570 622634503 856012608 713522150 891575838 950447022 966565552 225102497 432346408 126206280 362954685 686189114 803144788 644796345 818184110 851384052 917274198 504648095 513773271 872050882 975622855 751827079 879584545 630426600 815007687 883295542 961966685 979606887 993118148 577399497 783983758 613204066 719738635 863678828 960446672 562364469 605677228 805696611 811996545 712750451 803051628 406953537 770487049 431459679 805569550 379962093 587167646 665843138 875091370 614335028 665425454 159409567 306619856 567757357 991337343 637378021 790252216 426701803 921559024 862852900 918947286 865587991 994280124 547278932 748686927 785832792 891586830 371442464 886493653 241720086 982446193 443101855 737815697 881318394 952285425 164096154 751872819 721995150 801274890 18400428 528428733 58704018 420985921 296432805 871774332 103156835 309471976 277622545 786580258 846734321 901710345 277358253 560963994 981556929 997710072 80991451 425076712 944143945 951768354 402509587 856905087 50785135 117462812 179156914 340659981 905258909 941332280 221577373 557259346 920712108 979307562 490165756 698166235 458749586 714859990 99686124 713145986 693996260 836363666 68711528 536152799 469744237 928440511 815624486 921265272 66091293 781175043 184922992 442126888 430243743 532844266 554477359 840843047 219283092 889979578 351805125 887291314 326235449 855456520 613509202 750747489 813878741 822994632 775793880 891044908 212569908 852252021 747913237 770523974 698509114 832323604 272401401 323756895 462556583 715091860 572525166 697809423 52563945 490478132 810165082 853558406 270444035 304276895 821286958 977545038 877959107 953645273 775185549 846370898 255212106 379013274 957460050 959682774 805777035 999225810 637446039 950337648 404522943 499918098 599724049 685058618 106939753 829300168 529680203 541862159 846490231 856083330 900300859 957132555 713732014 981221113 174871959 178476463 623797910 740978105 892030943 931023850 681679662 785632778 10744414 905060871 308777879 593120098 771181047 925290537 291201468 429640595 41232561 747714097 885349070 905033978 533662476 836884133 695998114 708287946 680321605 881000649 498162971 797204196 898222220 942865873 852413654 856148880 42270198 61591389 82797731 793321927 169086722 555923682 567949166 937777264 108316755 528168733 173020804 720965631 115556598 569247157 121006995 390646912 266685281 373581140 611167511 779647252 290116216 913552955 104041140 332439790 429364626 441958935 224131337 605096900 459931385 787759065 942903538 966317218 266279490 955653055 840177909 952513864 161736641 567110123 333342238 769189405 303220707 647350227 620661126 887144071 944733689 982727215 493016491 812860623 829486799 945923961 350183445 365230212 654903445 880897136 671668292 923235190 211344241 426196030 214464405 267461198 921463658 942238839 541761732 900339944 441884457 732592235 71586579 740015018 811161969 940428068 847293620 870851939 252203365 678495958 141666120 819654824 442895295 774692522 397601732 477113829 769250900 940230546 326791023 429403940 378940423 455579266 685947565 769874057 323961546 505236142 655059069 832578926 795640697 910764995 941650704 944898830 663918313 786146691 202786480 414966758 757422634 771024269 696948157 703051178 522748372 566020126 754701649 922698999 954543807 969101688 857207831 875071034 987328696 992387898 831231274 951583164 946923478 968371992 22962429 154850129 948639074 999450161 226579751 438328307 387159024 974249672 174355683 790497184 445723808 777795116 974312941 974452068 816421158 910224713 942596316 990756129 350028073 815363168 253095045 640227733 48669826 294100233 827489459 891916245 440122360 641776135 175505765 288557855 582564613 879958703 832821446 990988648 911706104 923765846 433634489 636972998 380994665 517530824 552621728 730111290 747968411 990076630 628887419 997930678 89103015 694215001 214445516 775328764 605113373 974637475 125265787 628719391 646478685 795463883 484300657 891083122 672369026 939152871 800772834 832808915 926101884 989094762 133128341 446618091 940147674 967003549 677808049 712957463 440388362 544644351 481756725 775661986 385792737 920905015 401732278 751093044 772006705 797247682 954370874 962991530 45466457 160412598 932151485 968520423 438237797 549424613 393625195 404448856 841604806 938613218 18027110 970979547 197471129 310869363 220781382 833464708 277040202 477935779 324087872 349213253 874669477 966122063 773150343 834920966 18780553 258614274 57834520 392240807 190274402 887760465 149784927 898184315 430696738 864328221 294287848 469699750 95165709 257466819 691699750 990446628 464201464 538813897 818483282 893654195 741446334 898758873 15667897 166445809 412024968 553880203 827281281 958675705 701925799 907303867 575323433 708311777 751872775 837252746 457182674 850746465 817867671 961850225 67977684 168258697 892513675 934916221 830195800 865398444 355414770 946201896 390955125 903323581 594203353 830293666 783185469 791690974 609322814 617487356 173926472 911016570 159037962 323641244 604019411 894084649 25346210 917669740 29021585 260404044 526766820 598803295 736764718 754554812 405630529 705353412 193986634 743800116 633426820 748771160 315809324 595436179 991887070 995916293 257062530 755654056 761667023 789866527 527565227 810223257 983466671 988878769 806303256 940861283 478081106 653698819 71181597 822696775 944363367 959851500 248053398 250705781 841463513 867316731 370409685 879783798 11010316 973985809 24087620 258785354 401553922 955761543 977937810 979725016 408333114 844009764 67121816 788303645 34779280 242088908 115283757 263947701 126940116 518522213 778237345 842085936 886957492 973278712 684249111 965527499 256120073 873767494 916495400 958759033 219642592 450737478 578062199 965826644 104271665 393629896 749496753 909936205 885252151 925936205 345994809 684448131 670645219 898797513 80752001 112996859 155206066 505868228 677887635 869220427 983609355 993965403 616579772 854108050 62219140 655300754 67038974 206354548 419382431 694772561 98195989 847736253 819697277 933516278 176245735 353653833 820689619 905552512 413910532 779553537 109686209 164759423 389698925 569697656 254015564 897093142 960754954 998809628 566262016 647962329 145152476 704844323 41530064 180950688 848312580 957952145 347126658 891530966 633245061 695785986 142492061 175092833 591547308 739879381 463234538 942131272 640684725 792047368 891793001 992546510 555866170 853029623 399255753 771955960 761500624 770396653 163053486 463236321 537657406 841475467 323940119 744713817 630974347 783793520 42674275 405532053 44028621 492929756 958093899 974445070 23141484 887096870 238375167 564233777 286196209 831395192 349050944 905063004 785501614 936330410 877413027 895408698 945536107 961795101 567976693 756691306 159065160 834239185 285955697 370794248 953097138 956200688 635175785 881116349 653129271 710108636 36143798 974640386 127491610 917717542 357686009 569382947 563925917 701689368 861888255 911092200 344658086 362137033 13153986 14072357 910335841 999749008 733836481 754127711 603562592 814681242 244711579 505781431 831296661 884168212 78539113 917034048 870461057 940608744 194795848 370392267 547004370 878341925 873408054 994510324 425002251 543315324 33396941 235254873 249040621 497858659 579225796 913310148 373497653 546241453 537918666 822181365 181712390 449414735 446680976 618972566 825396492 906781370 448542169 743767958 836514697 932739583 466095405 609453234 669823691 845116642 313818657 743847951 538227509 743668209 115853990 318983131 865065365 896847177 422060273 500888278 385535801 411039889 138952215 849222367 829146855 991823978 98568776 118758672 729242583 858091029 868196042 958236794 932984241 981117505 880245891 924659484 596654082 870573793 421125772 909935084 433924367 641097892 439554637 629521586 540283897 704286083 311335931 717324328 968545820 990100095 888805868 926572484 3961235 701114256 546321877 908584853 304482539 982939189 967616778 999718578 357152349 951718034 324860827 763156550 348163853 820283488 385393593 808906296 355812376 446938215 864891144 979141322 3209076 422335103 321165004 849946397 864900254 873905070 483974482 968120032 264156741 808846748 408281894 640736963 674822974 839451549 271304432 462041114 585078533 688286923 446916864 868501405 323731812 478841858 594456022 701313576 407051801 766144500 308365444 315625489 210173494 726086979 654122559 993464198 673879248 694334500 580758644 590350091 88506072 698362214 495316945 609298742 515427346 829357555 390591647 591001363 393990502 726745181 18740769 317254975 118199998 143344069 890225904 939980475 834865599 929805834 225635755 446545334 141736303 485613533 517784486 650781874 945993810 993518398 566511488 617203072 779149646 973688106 742750624 951368219 928306675 987496883 648300906 899882056 676537622 763696421 287070569 851363667 550468482 883228359 510294705 903878478 419595128 959914526 830995889 850034150 240863078 249703104 878312782 930915855 980994583 990625657 643122731 660139275 257006635 735978837 641531438 965414884 81338271 496434787 914584755 948679397 542310006 679132094 677891196 751113308 382816574 640214497 25351840 752431036 104858325 132384835 783017060 999627541 532113593 607238413 362736847 432103717 449089044 525157356 931169224 983859624 856943971 859391849 942277635 989722194 957327316 974684943 920410196 942714456 113557527 382345743 192656800 663262639 701457794 963634462 526859368 776172740 996616811 999005766 649203263 672722428 265143206 379808451 539687945 867761538 82125932 763512113 830104414 875243491 625944825 955116474 462569034 585982406 368274442 514024019 129653751 242165370 951771093 965514935 349217194 588862466 968470423 972397744 769412216 976844472 212991564 306870286 947492570 971381378 473713110 621669966 753607854 783479181 289082259 617539033 108443610 311366655 923586860 983033702 116789400 354892930 896501789 968285008 762846873 895748266 34015392 839965543 921180626 928765005 815264673 936007238 511452708 962071806 163972286 671760381 634883781 915692728 949559908 975035160 769267090 775397718 620805961 716622440 245223393 488904599 920510213 952536536 430986846 886973231 425595312 551242360 506962349 560155042 412483022 585861373 676400978 918463730 45317373 151716842 841726838 896392842 898142346 981537395 60270617 502145714 732745941 829810845 50380269 856370716 236050307 382344493 759562566 781895054 983550337 991820153 983224879 990892573 350185325 856891226 868305508 883882953 28305906 955276051 828068233 865179544 985844286 993604739 239744814 508391590 843661265 860379235 28893988 174478222 24499009 490498208 24856365 42278040 751708859 804570749 543509351 617108368 569061329 820909288 585315119 866904885 399320674 777937805 271754047 444292600 379950487 856924662 805094407 861742802 190306852 486288008 533324841 892338379 919427935 955237554 700166527 969219704 128832293 540090401 967990640 971982682 918345693 945090234 123043520 680196114 924206438 941714772 989225993 990917682 14322659 638108243 680555505 788553677 437435042 917463074 337521649 867813748 39227031 667291062 106657521 720574887 5049327 959510819 99375090 341046474 168565362 891652536 449953432 744145685 599641055 960325741 184354199 989788141 670357365 732065277 946179832 974794887 655094139 676592902 134825624 253025939 308212312 638036075 490868953 904156196 334948468 983542933 174951069 483672144 417196019 661597885 208757143 602995190 984029596 986011454 827669666 950527457 383661785 551597273 66565026 528298348 71545976 503684460 501640676 709802219 987451275 990753307 530067708 626375647 347029920 657695354 164540989 697425707 388066392 630127885 242703144 785411072 363467139 403222387 183301124 591786191 478914630 816436155 971217709 998090203 311625688 975822563 156290053 442945157 242696926 902834194 240600360 643117595 219921664 531046999 306335224 908359080 776202941 803994069 661778462 802800221 273616225 757402302 831834392 995598118 325885235 764212200 100544868 488464137 269885776 914191610 795489548 924150795 823714491 982154486 167236018 170545231 474907046 806569178 936911926 991502278 349036926 748258259 463487436 588153039 862463498 973648932 647255898 814673030 151464737 829793231 754808652 897734737 869478392 885122739 754339796 862031959 881251009 973484021 342667299 415598966 211082068 917495665 43007320 502735069 872218942 963180575 505598470 878855978 684890580 947361609 112251219 138387621 940688971 959562728 443200963 794533903 758896499 978629399 268235138 275715546 786230999 900972218 895037302 997124789 675105922 742999423 264760725 552946647 867312157 905510100 444701 376016102 688047617 811366995 750153333 794148076 369455206 784215804 489421983 893397916 290729317 619650714 32375704 49073520 461267040 827607915 277424137 798348785 37606184 747570054 3267283 571241355 64096687 534390384 659342219 714901301 159849382 868919615 780960773 899666626 576285779 883715494 411661968 777362025 975099935 983444721 494199144 885827545 230702511 853981086 521903434 675592668 339777745 840226318 652178183 983856845 824915434 996356872 44907953 538207400 207950772 661256491 817055574 821030277 240186303 766763208 364836724 808018639 926592384 973079343 362741042 496136333 380917985 493790476 482590438 588331231 488312321 657682130 175816033 776722690 221212002 750977708 368296604 775213882 783951896 971128562 779445966 835247533 183210341 229657274 468879740 868635926 673102450 900529071 897483420 975538805 228310820 842732579 27512994 58844118 323053676 648986240 95355908 859128597 400254393 839935446 116103477 555550711 202956352 652956054 841647888 990539056 872564924 967369290 305069582 900036129 118911256 808518813 13917172 394387442 199846982 616043707 568756241 699027765 637726685 712063693 696630722 818669018 665237038 802755622 428723760 850449721 929418903 966439529 216372866 485561962 828784679 866230193 101137158 929112321 774289213 897505547 648109997 681543075 444980121 978080828 914178839 947507940 652760795 881058430 7515606 196435432 24299985 251604302 653239466 959502544 898190680 898702515 854129489 982395144 266863044 325212510 638455645 735667215 88604096 983246073 531923435 703569600 933345694 977767333 271511326 976783570 10073757 642868148 195949667 788444243 540663870 821960706 414344870 430141585 381245883 753853225 103727222 463144134 473013757 787727531 275859880 637199353 46087884 359863231 652384926 850590356 641226042 833949029 841410754 933340123 555549896 626710941 472530878 675740667 7434169 410914903 120280536 667949479 542643622 994071395 101946537 820567610 690205748 859027335 181155676 386689426 242910910 741821737 435727984 638443197 775824781 967261405 227792234 916564141 41470480 604905012 36649110 409304537 93505770 140749807 96964299 607970261 663296225 716200012 747047662 986690317 647839149 795877571 715992685 875015050 522024023 717646433 420863058 641948893 453793117 690047204 32023297 817040154 376108121 885116170 375838265 860843466 170753351 297630821 459894155 979757488 118359991 719923038 500750059 792987776 788109432 927482532 614557738 649825486 370048398 860217558 447989275 665680335 373497308 484104331 465339268 728124852 691467119 769744746 103728158 461523267 114630021 144292321 786219602 907373998 439168581 510055676 520194138 900305073 139371013 190020667 98223861 276540411 121797559 389448699 594855113 622640707 48716189 383364490 695823646 751856764 198425231 638682605 809858289 840380381 985849464 989169731 844860323 887182041 585561690 661608399 800500096 824454438 195335347 211196694 765058295 775373997 113409303 142866767 986809057 988895764 196659731 885642845 873756314 943619607 489045084 718525241 580912413 641304549 375082003 464091571 141412909 205880917 899200945 912837926 991987118 993663190 180971033 362660203 769781096 961434986 786225052 795068807 433529470 947295834 12438259 583125903 431945647 941782135 279422147 897730770 606302969 638457899 956841578 963394525 228481582 405290729 234676873 637790953 697023606 882941909 320823624 880814282 652818157 785601089 740897141 768745497 118570767 698265971 550947824 634159132 513372750 587338073 491335233 502885256 335981650 984714364 315088376 935995880 431358762 459491680 712071210 918845052 127334480 139795798 648686066 953965653 857668851 863326349 776196635 788318377 871883387 897814604 824206620 944352824 673787604 868115356 276512158 747302985 285270915 890050377 53178993 111391432 730006343 913669800 304160710 828482664 640977860 941749797 752770750 889491999 870538843 966868778 536530230 594762992 291900857 496687630 889564575 909821437 327548211 434533471 920840182 966856720 995159930 999113739 196284953 537766466 27048954 294733480 213201932 374759754 958667675 969387692 128064394 219405074 544992011 829507790 931878279 971578840 760553560 795389424 201538951 804043786 490605789 889423931 563445802 726172562 696052546 801916253 921566720 972393198 27326648 573463027 178948561 532428504 873241020 898696616 362347988 410493884 503242525 639838392 99833052 242940918 81368349 381577973 827958219 876048766 834540296 892297988 581864322 588636451 416608971 460194810 583218492 631380070 583540231 908652195 87002207 768627117 59086876 874103628 45027663 301263674 807782207 921429771 459650929 556007656 933634387 983285181 543794109 803540284 441499860 751814674 617218572 755319767 614244812 624257433 579956109 606404006 287085088 835504228 858434207 961152094 474065771 687640486 664279266 669747286 351706698 408655604 511965368 854266776 989566704 995206903 287963187 892146745 623959788 793237870 640325406 875977017 759799221 788401408 860376127 886715363 427880903 562840347 975500805 991860794 199328906 699666246 307380655 789153842 321878501 380573557 520782034 801731962 858379652 869081299 424302991 602875281 254429337 915894518 870797305 962420348 328033239 778651908 560648306 980600626 15153981 666710618 753368502 995558408 835479874 880700795 866660782 887008193 901886600 979843897 520057992 567741572 955794184 976736872 395385742 605700275 203080220 721654995 895024222 923210137 236216840 887742117 450727876 746828140 235753039 933084557 356888168 429123689 698990820 987791275 491945596 909925295 379720632 726314682 976374934 977457220 717785684 865829321 722592494 935771796 906986607 954559399 32157431 687079678 491636201 630541900 141211617 757445240 456337694 759903401 691023848 935557806 346613390 656357902 623975133 898613727 920054582 974367633 421298791 788812369 179331398 945557353 233610758 803937633 14355331 731960698 770613350 833531620 192059278 674559398 734064243 913434526 846689303 901789302 777116691 806755805 235127078 264088681 805218314 864915366 419692700 595923113 40268440 291801010 870910036 883894568 856511222 880408680 502889347 531522883 443628736 892307773 897612837 924271563 982073905 988819692 735860141 953357335 905987355 924458080 401078154 890862052 153467284 366892012 701611973 710420207 846951229 939944620 356191778 444275592 581662910 987182400 897548350 965088204 324034288 574326017 363618444 427072402 108855298 673457336 599199774 601897287 144720613 594159184 366426044 993469619 125224689 556293463 687621002 745872855 199508687 980512144 86976287 87603126 800565654 811020510 627854891 711831387 770538936 826603032 383868460 924740560 707677280 718028155 612293748 769800526 907008317 967542591 272925031 927638771 380039503 562124308 851482854 851747040 62704554 267788479 259683795 405678869 215141882 245764739 830711474 927817883 351973800 825322558 822456465 858730344 913753009 979307889 430376404 880994198 57044954 807353336 650747717 854394830 342363771 641898799 94958665 929125513 193451336 960809861 260250458 446442337 102832805 772611726 629102763 739230502 798992940 825449921 497085719 954781509 450282311 498059869 179164074 619638064 671428072 837912896 563549912 788014204 204264875 870590243 588545129 766036868 661249211 912412927 972468716 972836096 759003789 909371482 972957373 975983413 767946917 946734555 525528042 697380547 336069405 427476103 408145619 741221655 406278299 668134964 672097079 856659164 962755366 997880487 556106375 574731100 486945783 584055377 837831543 986117912 903008959 936284416 227225467 441756475 764240882 789304638 225574199 709855704 58804085 121670031 537988161 626152729 196730225 568236694 700890870 775605014 367193203 655974225 171970305 523828826 59707122 978223452 509816256 565383870 175243368 753855768 615117012 652253638 925394058 928311693 769504660 880899018 345540852 704837440 321023433 594889576 569717161 615262260 885008378 974206335 340936652 991413546 397253637 763872217 368319996 849363381 874410040 893175669 413074374 820318345 136506086 759075413 992855188 994740378 404471850 926983015 159329940 219177457 473735740 784597111 477756425 889314963 446965589 617474800 947696462 968822993 926522289 973593300 839433411 936440420 40732973 129714168 127431615 400554501 123383440 295606688 668335808 989360974 980993696 996679226 53898939 845057999 187566678 578984682 915919297 992809150 880173262 979171696 203973284 459064020 260105185 940534015 112647440 867871053 346935892 757013278 405167661 482520370 282504785 432493914 946809054 997823248 566546535 984025697 131128826 787339205 732413208 935795445 425276228 710627977 697436720 704361080 620192904 803425599 511264936 950180351 10132696 695832828 609796605 921868691 975768447 991271821 678560630 990604117 389821390 842432353 541100360 888148170 587586559 896297329 970729328 983828376 357900295 839217055 12647823 637699553 340857784 466294452 600028722 785365937 995648914 997342960 566207191 660278589 916770257 940345479 712659517 906151814 639538203 798731332 414570906 464852926 645864260 697897791 286516328 415701644 720647044 933475367 574730611 773912753 66012917 441722415 942622704 950463999 239077466 340109757 795536854 991464024 882408482 960478485 892742240 974430791 3738810 548025237 801467402 941169818 412419884 540619567 938395142 951602421 398640999 458946075 977941788 996944176 157608339 280708671 197117034 992579806 696755914 961294865 356493225 705818633 824367638 872871922 497645544 752885666 409437489 933008635 224563316 931780972 53475432 121941501 676271216 689377978 655281066 806667957 153512426 894230127 341335722 345773396 209516903 551576170 62607070 554958806 475106722 493758863 786960058 822982010 940797436 953637974 495046527 532416667 367329287 944868118 721163370 896621757 910427846 980505370 65225234 895717551 516086397 654141702 456554511 519830093 946914593 955963968 581794872 793685634 188116583 408142935 944483579 981114345 354630379 712483517 767605582 907153451 180324623 687180353 667171824 978602399 156737888 664838801 491881630 778835432 296524973 932976575 740817090 876747475 377317176 388670707 690565630 695145058 316224345 824222778 518247179 550256532 416728018 733112374 657308470 799171577 29305144 216864818 598635654 651208592 651907695 822085807 407686675 832478368 194737236 885952025 149486948 464779554 807599350 928648360 760117906 907337183 100632336 150674676 933407459 970642401 24472998 27532685 902082235 922068434 523311028 681328216 523814370 998530558 94660001 518961886 308019319 315671661 108267986 124967935 305140272 923410772 340846087 548371845 319887552 528923454 678474291 972305214 988680102 991179989 359213293 668974270 2782902 792006824 683027266 721756582 276301646 872296092 442642243 684949269 6262939 933918124 241512394 420832297 96579671 296221114 934762656 988717135 179417146 733811311 858821227 983683994 33971524 424231460 658723468 903037524 181905901 355896681 807239914 946576074 319844475 500758444 997066533 998408053 993114775 996569991 426471508 658705530 750950896 829517163 294823188 594433325 109927779 287539523 250709519 870561253 821471417 931868972 778034019 872519341 272350855 634767136 708451960 741939947 325026890 977697462 326921224 527667484 617272001 722665658 641545176 865810891 425100077 762636143 643155610 874425979 439735646 746108494 175753833 391553482 330136193 984570910 261884185 656544529 144915806 334943317 983288468 987120785 329262384 803634405 598486550 776305431 244486303 830487042 739395648 933265066 340957418 364609512 888397563 953731711 545777494 932331556 906141414 984885907 253213012 512930661 192456688 776425446 228238019 594466941 617958049 727904693 305372504 413837567 559686262 791900543 632892452 737255333 440073783 750343691 920701403 991062816 594363063 740127365 359182937 901554566 691541587 695406912 954030413 968676941 421671930 659668167 609026933 772554252 381943559 968231115 788609859 925732825 87221767 489701155 909173479 992537483 181092661 596879361 373038629 623232312 698558028 840023040 133232491 646935411 46085195 132214768 898807391 966162304 905742512 991113135 516314807 766461600 869178677 933942205 563590918 595472792 822842624 854660087 323394083 629340211 695807988 816995468 737605474 943446909 51021429 574831596 555920598 920975618 171692841 567312996 864814323 972307720 864182345 942975535 462297711 734708015 472947792 930122895 236226188 681747185 301110812 432441720 156693541 474609600 324940393 456872253 974577079 994177545 319330947 600010027 198974054 532585896 182195678 671948813 677339457 928302641 608479828 990263315 2551717 801413923 645416730 824536027 813679622 876004324 442045054 726497264 366131505 909739881 652166631 729163425 854682250 936512155 389522622 832829145 21119211 505994165 904462002 998390432 406550763 660589352 45861 429485266 312672523 633815309 139632363 553245092 769118634 851023342 762992743 886755279 88311673 962681343 923132999 961789989 284869656 611486049 301955170 690447179 672714258 873566097 358240112 454610625 150215035 892675797 359455631 433559540 726145009 728073354 884792592 948512654 250685555 675920811 603352520 772353813 474023137 599983421 549573637 619939884 384606577 603231674 83725984 715139675 623180964 993104890 750226252 899972166 574285751 664072567 658471038 953946247 897933329 914194350 873276433 886515087 720847188 745430448 919583723 972554405 19920289 375959082 686032016 744366425 33595833 930787643 617416543 807442496 74504842 599087261 552386805 587775982 923356151 964985654 432604226 917822859 704690229 778082342 674638841 684214983 752698167 756524574 904715254 996602834 65676561 485061832 610206286 636697888 326257968 810329227 119016098 542327308 789926358 978441939 234480798 740597247 568833711 808182691 232746021 333342261 293568376 742614061 705716480 886292401 834026972 976123201 628670247 685158093 887890865 950657105 483707463 767751547 409604696 558257434 712685210 771991740 844867436 906686813 504785119 657355021 62810614 129791632 416444378 682939644 811181421 922976112 71886195 771221776 865104247 884495663 64383559 888583939 566081399 986705102 845240321 895188495 601424191 917214892 827287549 944539647 664468360 679960408 216277671 847078313 138083700 424871144 248464167 453743876 379083336 991234716 950300981 965676145 702229993 909544346 637630931 734476555 481179939 932975553 281884203 960603312 234938157 276068164 297179244 462226171 479510957 682919568 995540510 999204003 267148886 894468697 320011736 942422251 469873199 774629096 659793666 665046526 54490846 373794568 376972386 590878217 211081993 706528025 271067418 990876163 924228018 986682779 252965293 853148894 395209726 550487801 376761179 514928121 880658681 919254710 157207079 758934269 521285948 597281885 827149360 911225624 549000940 970041411 731801932 956674642 471408909 942472518 455789981 794996345 336539519 836294295 633162953 966489642 47173001 944992314 3640183 199426138 50002512 63240400 664591449 860028579 531761134 908292360 424369882 954103659 608869232 683533247 999515473 999708804 604888457 691199339 570090538 858455555 866142837 996859715 566010442 740758563 257029335 571083525 8932935 715257459 929776762 964434396 458052937 692480061 1159652 576300195 77312523 469697528 99798536 646235074 328394863 459749236 710453154 769631523 123655137 706854650 990929371 994144894 267410290 696821467 622603533 639260907 472756781 809005405 414775078 991986508 400244573 794960122 632242107 814786093 372722767 930839754 804403266 817949579 578071951 810179728 854946514 988454924 452852548 651925189 433103026 707502166 29783817 73031569 293580768 336118106 990715291 998067959 614780975 690685127 293991300 695118978 384756521 426464871 452283204 718154693 482220705 776188288 880579433 928778030 528938973 686601348 328667278 635512476 149742236 365020565 669703142 743664495 39510384 55825808 352479619 415432286 428081612 752053393 801102131 842529403 960157650 984844845 887275140 891474828 302885883 598674637 854179567 928208309 861622528 978063077 498200395 532489800 647479774 743518086 86933256 533927541 4644696 155149440 477685193 696472545 588861545 771580113 914185061 941111309 76194682 128084425 421610504 755943907 152968747 761936013 350875093 418846870 717097699 746737290 449278385 715956865 847671091 900110490 560406092 981630897 827389846 857748311 998420844 999707744 864703648 996991946 970613617 999461967 533356695 537140854 428686474 651477180 179771872 295302131 238437959 935314285 205456550 296706136 623773122 891256707 421064336 436158543 978313224 990291679 733637892 858853932 708072349 982255640 731213511 900634681 991658484 996833005 103961999 274222804 231995874 885978157 135392342 698273622 598760778 671104987 964421448 998825550 739102722 773373032 895463173 967423844 894124643 921236020 323835152 764168927 293134921 927480887 336539464 974796236 843895141 907216866 539172416 672019095 268752041 493021456 455159836 820001679 678635784 812092378 948389513 969282510 938609251 949962204 942793239 984123553 681326405 842613812 840063146 896722935 704046827 875101450 668719127 710004855 450285111 677221630 630630545 914790474 952655126 972508761 833095782 874002428 733373129 846578938 5402772 794352253 326353826 744059747 505678282 763932471 355823346 830448692 669549725 973990686 750596971 770263731 126116868 378073227 457420706 605828501 287341675 548217362 767614167 914985186 574286408 896053295 652957182 728909921 944808539 951628342 794676259 916055762 719859271 956349079 698735028 745072822 83618119 470863681 300584205 932688143 141063911 355504044 924385261 963224072 89960209 457703631 498309578 598654194 663467180 851789800 761780025 930362257 460990696 834449315 756744031 765182964 222187301 701449120 534868563 652150979 639435832 916333897 928743628 957984169 52329719 507733631 116168509 582586980 315509548 608617839 502960865 623245232 874510702 985056604 554901798 938841995 601256744 746752408 918589842 950734967 993521787 999592379 573865019 702286862 887403687 909998602 56979304 472589765 599353518 792113262 724511743 906832604 290155520 941019523 865671728 892588568 803997515 995765044 271629757 609662458 676238048 828076744 746527504 866982852 208426690 989771695 305236811 887085387 971033742 982335996 482812539 769051503 251958596 491643806 373273788 479533365 930664094 942103393 765593570 832618374 64767070 367001345 987294173 999131440 634142094 849109415 2980014 132828634 25604030 774928268 328555668 779190110 37182695 402170687 757596828 811938588 437506649 440024136 898159669 930319169 324592043 462251177 848868507 913171296 348918445 596372298 648856087 912561438 411507490 709471933 987396126 993834443 987030361 999747677 221015148 499365849 780753861 955975252 166741944 191544025 58649835 917489688 758390965 817031971 43866682 80737782 894604267 907091131 513943251 599115152 772557187 961639648 684317278 780468609 761423429 900521622 224218071 455000619 474103097 534991703 32053348 386658048 458691583 725486571 400815212 903424491 830468178 945301475 130874095 720137360 321553198 647321406 235185055 568019072 194328871 921594435 443594701 833572118 746662354 919563686 397535433 947968467 164470096 303796645 254823019 350597334 978504484 996691777 900957178 928524738 882295784 919320050 125629580 510867703 551089041 611457625 376266970 405153259 657845675 792734864 596359879 700043727 742622781 929355905 439309735 462440244 805666279 926794019 283534218 426721044 803825222 866420005 754600349 774182246 452080545 868085579 856808777 936680648 933681482 989104496 423695080 475232329 194774984 415890431 601120891 603106265 371171134 448454141 435821162 880384716 600645522 778979196 182366739 921674258 840635944 942450270 637543948 788258964 816967896 998451630 921247774 997986684 568788488 601477740 699359850 973283040 621260591 878645560 543384015 682042186 272536730 534920203 356591698 747906121 326247697 732052892 367321508 715569146 944948444 966694550 908962281 954015628 397719905 477514779 342324827 358355570 641895706 825646085 66883347 200215202 332794759 863469072 851125310 859310933 629999027 873300131 489657577 960790847 412133059 635882421 713520467 844979464 903047968 923942055 578122610 947455560 332699941 819235823 200229567 522927911 19200068 398797198 637787118 708030462 737266702 977648487 810764425 834519876 586238657 954598831 391969209 762742035 620489991 708220139 582111897 978584113 650678104 734802059 880268513 913727144 240396813 987044813 276621407 737942835 534169562 687485371 522146168 570023628 480491069 883176483 667277444 691907766 268541192 555806550 468713583 928747692 1825567 723858162 805852180 964873578 51694584 197727762 543975571 956362486 391075162 553172055 446329798 950603964 638867320 737081153 190279007 505394901 337914590 339142953 954886497 956127305 307575472 408558930 638728600 733976999 450329615 900936093 930929804 961503765 384687560 502542490 294263167 385759093 660103367 781869422 787022333 958812477 190536136 643290604 931471673 947198157 478311570 937646453 982754577 986918965 808742694 855835668 53558231 279986855 534418193 677672131 889349790 908164965 154550578 579065061 239300686 942103291 370698170 589525399 965274826 972485512 959023509 995756426 370961800 813380317 568373505 864934081 246390719 449764819 325124109 581599862 788993653 942962642 451622129 674226461 674872427 946024599 394410134 841486449 435863834 482245838 701323768 753468144 489382976 980549836 530133028 979173099 35148199 813428731 447708277 572971527 700433987 883004214 965619755 989638864 582043111 987317538 136155611 368020767 754859020 987829063 483435977 965855757 95281398 153890569 964707015 981406707 971992382 986944658 283705403 433953566 254325260 762777862 601123112 775676618 384585373 767332779 752465442 809499405 899244326 905168484 977874249 982609373 963056442 980156981 528509725 708443586 809928662 822459102 459214051 886469105 619186523 935167903 131892981 959182951 585801996 711264921 550759931 601798321 770714674 798131197 111445970 812115350 41661020 371203711 911040230 926072066 603518864 680565864 711789983 989924455 494097403 720970506 995333993 996269828 423275247 761215954 401205327 474801605 287217544 895206766 730313290 823542102 992371371 996277138 600369135 851792906 680029693 707449023 447056164 533167756 746446520 865685604 184922864 661315001 792400223 932802216 778469313 982569389 258267426 939732196 804851782 935592719 948469067 986183143 43228560 655990913 976082301 986830831 190874899 362278970 645994760 741883802 902833 993787281 521110992 822364781 159671784 763719070 593133180 607673103 327323546 743290537 66023360 374089031 416381021 808880267 946592724 962066385 805329755 921729223 410392325 527209113 516836195 527560193 867344293 880181363 408588467 733644993 646698609 737911538 305279657 545956217 684713865 702167019 717432339 750726526 999111617 999594167 452886732 764647713 138697554 737652808 31743390 651641397 697873862 933943670 846948482 906960250 217103469 345059363 370335799 805224652 889823222 959552655 381788408 517444801 637226921 989712502 915545724 918495086 48597187 997253822 939660617 999197930 139748448 223095084 93434679 899567112 822411949 852085343 804924278 967543485 866250438 959075680 278002307 366900810 808203852 859368619 754302600 941739910 275281166 643411167 281377386 388032986 295313129 587152813 574509812 893884005 371590612 568651848 97525781 175118268 102689399 901305575 631338833 830970157 997871257 998605604 998317840 999775467 791302533 867322458 745806445 753711346 718079103 872885946 776453547 831272466 659170401 835867634 827744107 969751739 140987862 817697082 180454963 539474667 98026115 280766776 660649452 989372617 601664700 866029064 767600859 968203983 82938011 614103389 650589445 859963529 550892896 822546370 604089465 943369661 535763567 831527228 403806362 428878051 991306975 991625470 572290817 589371846 158758323 444598289 526837102 840447479 839394623 966814909 483393473 549526428 550134174 841212752 623332051 707179649 819042982 937376412 217069409 982356479 33844818 452321110 297732458 654212922 81923732 254198851 35568171 256864473 838119663 977122936 630795812 642557005 788275154 955490279 83909453 686950009 642136398 707632295 958245260 962214574 855618640 955056561 245464614 452069527 240975592 314007017 684375648 925568633 51419642 754521844 391396196 922880688 866741999 956388683 320598668 812694194 751878258 999410985 102434716 931642262 240024544 763057237 334418315 804667759 649082712 796480624 64636414 257353177 362034224 472894458 241805593 250582305 185140838 468165384 48559375 102062177 912815113 973510298 76073267 581155689 694630463 845226241 467391625 500227847 793700047 912156304 627250074 790031232 837041335 884961798 657308821 886686090 721769353 929498683 427800817 480903260 618990030 882412957 476507528 852658887 370707926 447892352 980841842 986119891 445871113 743398976 528192318 718217538 600061591 761554931 122011689 431069851 906078667 977346974 519012134 696964632 808652434 978162296 628045369 939820984 308910755 944307968 189172975 404526590 485349873 728159751 36721157 963274520 712485211 957136878 190243875 596174680 239894381 497414047 856909311 967337240 455543182 615388991 139891291 918154886 177314936 538211683 920650279 978750868 792895699 827090320 197510495 795154719 821247766 821471695 14857147 499649566 496415599 963717366 502736924 738582369 519777810 596045687 842753970 867652617 371539644 822335565 500746742 614795252 424316508 755267968 193887887 548341549 340414147 555842824 793121284 904653259 30579097 262423973 454872483 672677634 209300876 262705463 533657996 551095664 232056430 599388803 844778752 865042311 615108289 735498708 371980359 652825816 676740900 740645983 620231464 649197388 236522225 909186411 609783706 778422806 759776460 927030026 971498607 989665564 341701532 868319775 976302954 998946450 86410979 441173790 265998572 356282750 430688539 523442997 537469380 910328442 460538621 720735078 511312833 857344564 867636628 890460773 971609217 990594598 791996215 938751084 718451383 991939902 965113621 984037994 691189901 743412764 4026185 514959106 226138843 876310106 308059242 506650310 126096741 352334192 774023082 909218219 125865855 934899236 245517205 494500919 646558462 764432985 310241442 710463866 843382950 923419412 508638658 587913339 277924374 543918202 192610013 547011061 658936613 968519761 874242109 915474649 384761457 985848259 761791961 926349259 252707435 974935626 904852358 956296277 176136191 594887677 275677311 968987225 421607040 950385273 472920656 642040521 87638836 501393236 410140252 733206175 725781143 995278337 475459413 941829813 608456044 981404899 562398416 806402991 494103237 574186858 808130082 906596104 956639841 965208389 819944567 859298923 77581472 735090066 141485868 694032138 553938162 836059439 317747987 871058855 685854174 809880027 196824955 234162535 51066564 339594311 300283711 663420545 866571892 945273799 762997805 951900835 340346440 672063895 454372554 822248077 110139572 439265686 673408440 680573151 336397276 442865099 534140827 888159776 522154149 944139382 936560396 972811363 490064859 563334054 650092583 908409203 590311028 985603900 670343492 828887942 897204015 965357856 598365233 900626709 926444768 955892905 867880225 949057721 343307580 867140893 116743567 570352765 283354035 983265155 449468658 590821514 239345448 486137311 52113180 680842793 620447298 976930744 816900728 858214757 120575995 408364628 942559567 961687130 67263964 134910367 374054944 828688566 545237331 841398713 239950259 733174179 401195618 574953421 404019753 778825641 783446892 980967625 790030665 873460670 977975306 994499093 649455702 871199731 135543710 888385587 108152132 524309996 950713429 996383350 114513053 744283657 721803841 735737902 873005883 935599858 657077670 916555312 590910481 732434648 552317584 743092029 292610898 792687986 516577066 825334413 303706908 730042615 544150899 664196872 13376159 607969537 975122733 990429326 257362255 516867619 352517723 612387389 756039283 958030637 103167856 202775053 614539237 774539422 926942450 958169473 878725209 889501641 205615754 826806059 825931691 982114417 574759689 934255576 258705867 961367755 904358200 916394938 315200976 910186168 416227947 459009194 167417678 222531695 241962221 504303044 230611503 261704016 716050656 752503848 339588003 558777027 791509797 984001343 390680236 807356010 698204120 794214543 115027017 315658513 573518776 998669460 714477678 803606441 517282641 681315212 886680858 925445818 919835697 920873638 60359105 549644187 867710021 930720252 952973831 956545436 524911469 573677259 553010590 999522351 754713037 756773202 533581269 989945555 75635170 508013663 320078413 615547000 890856506 999863216 526652896 938654696 185066115 466661953 705987442 755181958 208504953 269910394 960903024 973651783 101450108 985381809 239533847 751035449 194027205 553005877 188766128 389174355 539813945 592682967 197525078 840915962 757709343 758888801 513329369 891480407 751337973 963548575 179387688 709098527 322579208 380120103 113204716 137306181 796725394 902566628 610581652 633891301 614512814 713363829 25919260 416270240 490628659 913137131 915159193 972467923 997791365 998145723 642031185 825122001 650496367 705270143 101270708 233771044 546899798 652959433 644994674 817046673 76652972 403479036 47941523 271510339 195836707 669475555 26226384 701354436 872243627 944539455 305962190 841644131 691442599 793110826 342097453 649237516 249956188 741202663 744456183 983912058 131073678 655838883 421882984 873987496 258441088 861215522 923431940 993896438 571334658 751154132 972258958 992945301 412414891 905162785 41099577 212377179 180051318 609802517 356725239 889412244 665293370 739692924 405544698 715553214 905207514 991692682 803841493 896795083 2116539 91219235 750551902 824477425 693596426 835077959 30392163 428066636 165181833 924265940 461662964 468032522 456349340 544743669 50505201 544454513 421605017 709510430 169221775 566265877 639991444 665248888 70673732 973588464 863850211 891236011 285315234 713135560 473136300 902645178 202546045 819021224 475933922 837311189 723023147 960355482 854291679 894372747 298679711 835202509 727044246 789505346 123347980 833636120 112583681 527466619 599243644 696960313 447624309 900706160 255441508 991762401 788535851 834133361 78876090 871457287 44688919 212940116 114933917 710278354 459123867 528198596 234382888 424006177 286688569 495803337 842112584 976342743 351548242 578321188 876978993 937533367 498335242 988724930 636795734 753772587 344185688 966464476 836752339 916839322 938206521 975717486 615445247 830304067 667079271 857155412 509960955 871835706 815433091 955580797 661027718 940228637 295128181 860178463 766864342 796679341 344216850 889846723 854593933 997318259 710973539 767022642 183970509 383518569 429353662 909315046 611154722 960403830 367470597 938588455 582186110 761533302 622022847 735622965 695964970 982999181 45803012 973369146 317772390 697211134 109746948 722332992 448201448 600587531 640759304 891793484 512318917 665413669 16105883 842312908 721358000 974603672 861684782 934288795 913007049 947982850 657965251 738122953 987474218 997078092 707684208 762952830 372134541 666429433 628265887 926904589 613725617 683523157 800516119 844259228 843172238 976897712 658196167 786573126 394601649 395208589 300498640 666657325 256701003 922476876 764542887 830044574 609346102 666508365 671403158 938161458 772073671 937682225 909115860 932301433 284828191 873671104 594690745 983927454 504781705 601111670 904363637 922487492 465874532 640747701 360665872 428790689 799872247 928841155 276535927 568802558 193655779 585216324 265604866 951663511 612336539 699061011 838797168 935503927 887454855 975456434 173350131 379031393 756852922 908845421 259390237 652997065 80178646 278717917 536219807 699248729 762026717 901191037 222379176 560078026 503955480 632840832 704281247 780662732 599712572 853120191 949979045 972900983 21251570 820015834 180093337 229461044 55834837 666666797 284428781 963267871 297232380 572594574 823885644 836165775 388449131 403793528 620752850 699677356 694044204 815654889 681192247 969673161 308842399 957777014 109576857 449741589 627864956 801335012 598322299 634969703 323479166 369801616 87587230 323702846 125860842 714850682 938613175 960474839 208975391 286956288 19968032 669379489 872392256 879824019 891556184 931930210 355449578 520693820 409973484 443486313 831863130 841436971 244602442 258923314 991123514 994242213 132176257 605975030 459747900 667987057 227736536 833980137 98585108 632926723 424739288 776089784 557228306 691898749 838082368 870114408 612247086 984337153 21137179 881207865 182658921 920585950 920648984 936981337 864079568 934394905 734663905 907719211 317824732 330429833 262839655 625144915 880687396 995855440 14358872 329175888 56742524 143041801 792319724 865217216 3708348 294087276 465915097 985028863 335493483 889306171 931763861 999632428 214198904 587692216 22236581 391637812 613639930 908764619 210234267 503789029 941551469 995762599 56472114 344943996 154023653 355377307 94687819 434228129 541556993 795706918 691351089 785611578 573014084 609550373 591254247 979337669 823095127 917384780 341979644 448861867 691825183 783182752 587502138 946433086 937380736 982354761 445169234 786906172 752883629 873084701 412153487 825479140 575929950 684280298 718101173 972592761 301508386 860551239 881478624 906985356 928525944 980684414 214769213 461397813 747076619 912305335 261572373 593548951 634926376 846720142 336489646 797599948 502256303 645763391 729996273 844365439 280109466 903394183 100234549 631757124 354943117 626572013 982093188 989058603 823847987 919808100 187963587 822631340 322308350 762716767 457050186 571419956 252225345 504477273 757479494 765542385 35629413 971049120 430584479 837602328 298849010 985335331 426787590 884935897 758646279 981862787 291311582 804543732 849900040 854259312 426199380 898705439 93991595 157105865 287615747 629020351 150736443 247517707 706152106 844772212 633077192 709521943 883887767 971663023 691610557 974686826 341734839 922742515 113746151 275924133 176122499 854762812 839572965 977128459 296156550 667713445 665728238 973931439 972671240 986236022 262757552 426476060 349767390 697291641 861723881 983554027 248724764 650185064 558199243 749015807 872988548 884430258 630930324 683292177 340498416 911674451 547450602 722882738 998418917 999293388 356814591 757328724 933792240 990989006 524097884 984896792 13170387 324393650 267225053 927749499 598100877 879172228 826815923 973294686 682662795 708270727 744246390 757247159 250665370 530147342 244544094 771270650 419440190 765518251 17456560 113124675 634675732 726575382 260229214 958935049 936032613 951645637 179195171 213010584 25693766 691623144 349324868 360184555 351636420 998619812 27976334 153791190 855290535 878080392 171618154 472689363 889205140 938135945 113550612 133663844 997698643 999335341 838482793 976472623 144836858 810272219 727849347 916219571 101062975 885135006 306384734 604591100 926858659 967115151 451764301 990886672 365102933 953260928 302503445 373785534 520313962 694433406 914397473 980739454 687141369 777274732 438596137 548832202 221722278 491964536 324835024 912167010 195484055 607455355 101582129 648833085 332236446 967526103 293896118 342398570 492836555 713964223 642400594 699759799 761034973 916099222 479465046 579853689 642910339 931220008 655132049 951574196 435641730 527499338 353564524 377477446 112456260 346216693 549844310 844959746 16753365 289254441 515258806 818359483 5375842 113144770 539272988 897368900 622310728 803592401 946301644 981105988 922257174 925825002 846033233 910602299 238408853 424583374 222147287 479854171 499722562 919946859 71127767 877274358 437487380 954138587 468936873 943153227 729003636 946649252 834873318 929451351 346191072 831358051 125564087 375649050 776362046 876182767 794740904 804296951 925844590 947680880 978568747 997041894 26649739 936322631 594503504 781427993 526973395 668512016 779562652 912358506 165630287 786206509 355083848 451348227 170832672 601386952 394706236 969488591 982004245 997930977 749609846 918430181 784298839 968279422 273236190 877537155 380682349 727778198 695907385 960592661 335959034 816818037 540270586 670873747 609926082 653665676 696349131 707716966 439123650 831096046 523056685 759745481 857420957 880025857 393972954 795174961 931543568 970544512 155251105 368982539 61541555 129438438 112865476 483823579 528726007 674219221 601410793 978417468 798888566 862882848 82438027 725232090 75412039 991248885 601907143 743135709 354319011 870871172 769657272 908733746 452727004 560653070 867019339 882199727 840674990 994552734 518242803 969172758 161289967 933908316 102339839 855337914 233869328 839213922 839061712 898904345 863867800 930606668 54628938 577955480 852970163 874618981 243315805 709862215 639051860 729325700 179854309 776820705 510805644 666051191 193121402 333151654 147138494 396385846 522611427 845802018 616314729 807450804 221868435 296078772 23495275 402996308 736786780 923183324 186008692 798935151 772836359 909645346 484469113 588784347 792128431 800288093 735570654 758243186 467107698 585140507 906746503 935675417 470173817 641262705 849532416 862204182 492323233 505664456 955233073 968308586 963868175 971933795 16876815 68109831 964482718 995227580 626204566 746893806 881535491 977868494 596383054 924429539 781775363 869618313 533685898 638372913 204302441 424172671 889747161 929570837 681279334 813638935 332365650 664130239 244481525 794888968 589796848 603564373 768096112 844265856 852142709 899332569 251785024 945954885 822381521 851591907 375120880 692776583 515454009 520601179 473109762 549180373 71599178 867887682 334647657 571937545 27568099 839112307 834705311 860143109 96502241 126891515 935155309 949642974 935734527 965491222 515580995 706485663 418216423 703576170 837545788 839479372 402285556 453636157 649094839 711360877 405281304 927582164 519727638 814307891 636852281 730050200 575673695 956394445 12541593 904045876 365232435 408843828 200931114 540812371 664750140 958891633 101530486 969421464 154083394 731194335 589325878 925064400 352761067 644301569 711047267 950698849 374441382 789064345 549793320 966419180 668946721 674897722 320080040 915734926 301657508 633795439 493833492 965455312 423693971 657434928 176738833 788525741 586281664 666830190 376340418 377357500 648197668 901883382 249862212 690110225 191767874 990678687 965846614 986195829 855836734 874229400 531793330 925453474 237431469 463934913 774726358 965499153 632192670 982287235 444423930 789477456 854307396 973071792 47534037 348962512 655759468 821324131 251215317 894080982 109748399 713086112 896394077 949680242 65352793 382591225 399851436 898201598 253549824 630618683 237686138 375969293 497928278 629913702 525338014 859929975 232834156 807469680 833308098 950590887 70208966 436150864 188775168 795041283 417217225 521220729 806812656 819618373 519891541 656225488 386501926 510001303 392655668 632571726 384056470 701596315 525933082 748122409 285152032 381378123 167847045 886826554 626271487 972506307 739813290 928388014 883310048 962392603 79077326 497645467 514699896 639389539 93904481 249669464 265972306 617446370 938443706 993107049 479513576 800068957 368356741 567400286 852249291 993755927 920535634 970335711 915902908 989986691 403345971 503256252 670885159 793486803 736159892 874532063 434184919 875458446 305708934 762777459 500198373 525737524 95717186 664637086 543211473 562051424 635234315 947773923 108215179 590513678 190901784 570477464 919505389 974498049 625797521 753344535 98530786 219925186 684381310 921079461 245383462 509439096 526753664 562014352 582218006 966941422 247603302 998063284 60271176 292309618 350649056 948373726 32921512 802608391 971181824 988898650 580287079 756068343 404117723 950462601 90869171 628612630 705862182 868500451 943873061 967655201 749711460 938641759 821948303 919734255 232799831 851457043 509917533 989742909 723873057 988633009 721904085 801595760 113327516 672659865 261510238 294911235 231599292 477855310 112394203 895759411 726386681 944347963 252107840 673723514 752768941 849883978 152352149 873363716 430535941 691655284 870465960 935124993 570648266 706409686 403240106 685786368 795242912 967118193 151716692 915827552 361369795 751755477 203000448 945800252 667775276 690343001 191154415 666731629 12100157 161410104 104404324 247855559 620833462 727413443 60581090 109480052 843016246 882507303 714671141 994078866 537349520 834277018 422989451 529628418 383557747 814165876 895294717 927431984 639464639 889954225 559453075 673242172 835059365 927121440 454129870 959668126 880416209 978647548 196288953 536936934 368131966 770351129 626175596 761355817 523094580 899126173 690169561 849160926 626618300 875077710 603967864 854705063 337098880 405232937 581456096 704321593 578047303 859256338 663030279 791707701 400752737 874565457 936763239 988214302 35231852 480685838 111291024 427268781 190200206 297740682 221468710 539777812 174348634 782883718 444779376 541181768 785402787 785711751 907150421 952272560 632713035 678379309 475410968 816885249 126435890 753412533 687078669 689326163 268245664 385136137 576571402 903526503 732566922 743710014 465090522 936645489 831934961 976418841 969351293 987036344 750468843 894695019 174475936 705391873 522472017 679319995 607995857 976098495 8166216 593344298 134779418 720427831 158610661 673890140 301838635 341831421 923244282 999461083 345672842 744219758 198495585 994647728 976244476 993688209 810566757 996968520 927251519 972776484 990262975 994730626 192581210 336930802 591497809 601970037 619160788 742139494 853076545 865500902 120109048 232496661 694672796 711691747 700287271 819116805 487841746 502465568 148213261 806294560 828813599 956716101 588422031 811498054 494503498 665358376 74462272 718731920 66709150 364546865 325610774 690800669 973601247 984430001 669749584 968577521 99046320 828713249 701022588 803541512 516693469 547268310 102404606 251487961 217527243 801535684 854347685 971684685 898666476 976762456 268293683 735130023 956137032 980371469 485658933 618177303 900855375 970449793 868906308 929753106 125272611 420274055 264374976 740489892 777557752 938857535 126088064 917682771 327088959 474684752 360985760 675760474 702536833 920847160 53729897 386653134 243044389 250302582 498024118 870691899 213290005 348356006 46354513 456332991 100287011 856044219 109642833 639797271 91557324 164197208 52940327 472134358 778292660 860234578 177231762 852409252 349822678 721220071 837634515 892218927 372502151 385789343 815222512 950307890 138900275 968031856 968783120 977309665 121994958 947029238 537662263 661347975 238637917 714984083 609234825 620606118 150895621 859498778 993760526 998604857 370430667 827938745 63797886 417740751 432641613 621726567 241582228 329418092 182472673 385120558 561986490 621708916 194414803 896321307 457647746 974856113 851901055 916179692 623268389 749518092 350245359 841615275 403052105 624485220 77293028 126403957 736919536 813337421 67735633 194186916 777566087 961694540 264236093 314626109 970643269 990626266 477645559 902095564 401736513 994426471 702530321 962465661 401847660 864671228 638242073 994796560 887041827 953385354 618254293 969913133 633534427 751649764 643719152 781035963 588635447 711823422 87281933 991308982 407584247 445421154 108399814 838618314 147703593 299854970 552609775 993268916 438824385 523117215 52488050 423045014 181510432 516605132 943689139 947207192 412699441 541226339 825387827 905044014 218791625 477372502 240914882 527923030 323777020 727194706 716354970 913662970 142006354 700957712 272544418 600323970 277198339 348626282 596390001 857249895 69806 675008207 317835216 738461762 617238751 833914350 891903195 968268855 60755239 817142065 727008266 904575332 631719848 649365221 824074128 908995767 577790674 950979556 229929609 988115655 811977649 954076801 717316816 895874846 337040631 539412479 242489709 586846664 861363009 938537882 232566861 629519228 226556597 460327093 239692899 276082192 616699171 852225094 883766641 950445958 336146407 490927785 101141598 339911173 305023612 626231981 511443972 878592863 564325407 827192478 17101512 635853755 536334685 908198604 936849969 966324711 676780761 965075900 671650149 846203029 131456891 545638726 260580213 579502810 874728588 999248361 800969711 907380543 386574653 776970244 274441628 854482153 960337134 969574634 977504731 986425995 745744047 760284247 44307008 697538714 954195163 976448157 908689977 960317812 755831301 914051892 218868969 940658612 950724782 976106516 907325834 926392499 942606108 956911266 658650140 705950003 112638741 462648469 736943953 811084528 422984183 432699650 366599322 835760926 263659729 416041970 650900275 752801704 212074572 218695967 35563653 967405400 938958781 985367688 371402990 758715450 710419339 858498868 616876912 894676572 889740178 964947520 664563438 990177374 728180361 960082583 915921993 940338168 315470107 709312875 868887905 942541264 895011278 895092423 646963598 977044842 604247546 794696950 458126234 675815705 131765422 274245008 706533847 892398266 244004511 557452105 968303527 999536046 309239165 441098833 562514490 678234262 547224005 745873616 341800867 374900591 902373760 958550847 318846422 711131901 255486929 437183073 103624121 433563341 720834433 905214033 446199914 594488979 865935652 894289727 597179132 681445934 549786901 707623472 782900025 795145955 95626053 134895182 124469719 402114639 321052694 611853930 231521037 947272739 567750906 581688376 535333520 734818705 745497760 791859479 780281187 987347083 455784206 978606490 37035144 752981400 863065167 921613344 939514327 973432555 549639423 751831524 210574255 454679428 233031525 890682746 414875857 696353779 693310699 887910140 612626322 836604890 665005929 869625906 85985671 816426560 514019822 779072598 699109931 815548163 935389080 984679048 93360111 766053568 966836196 976429067 107289366 489024023 911400131 987741521 962124651 991076591 367240349 569630572 933589609 947167054 591776124 705506451 800745122 872869337 822726711 824388162 470778997 887324549 8532116 503515264 490271123 507896787 191335882 746907768 344311659 662789264 627718570 655736351 331871801 484307655 128873304 688614697 728251557 841316396 306465307 995715888 803806874 858979621 262441615 315907919 637322618 708373765 555046694 606169777 511281733 697939058 197219347 530396283 388589365 668067821 523740440 559927469 219436789 442943342 451684531 703484652 400740470 903308150 418894177 892488932 75860433 180379184 479510707 817954781 262015885 787905770 60012991 390686407 491206519 509670820 141544777 994865276 376327565 931059723 733149321 854208081 868902982 947140553 807756174 865465188 391134126 874708094 496808311 967465684 320816696 957590107 345260195 687847357 665786 790073402 413454615 810951423 819086221 986345622 895319197 958306798 616078137 730947894 722217015 799418855 61691441 453430998 271124419 332264658 669486651 765039650 757036795 818788915 662276292 749630197 930857017 999572213 851612292 971035988 404434577 491558876 365656356 911060519 653761474 764493202 723816473 841042520 811510059 910211782 311582136 763158358 12736799 599136255 487069598 972994646 513502343 795236204 416446383 673711885 317911700 654059287 983839210 992381924 99289502 439046913 874169531 973362070 70626581 131393615 28821016 653452260 246379316 533869122 448097376 788118363 283404927 967001109 296613811 394054620 65914272 370121582 143790996 557578735 834716465 838246465 607371133 978347579 794202591 882483900 451498551 650161644 64983046 174906500 269031249 351605490 870832695 871342915 430315983 555515895 226612092 258196964 688049552 744347034 877401870 995502280 857644395 992939448 94971934 539192572 7611055 167508408 407864586 958538649 80298363 864681979 808596154 835914377 219682375 913079545 799930444 804711545 762221182 877962882 984142911 998490927 744265650 906548622 779079652 835553651 741049705 977442011 953224764 967971303 802989565 970284672 141138363 850657451 906733918 945258494 696936800 814478929 189750099 982195452 195987224 963411942 94601419 167922857 884094750 988065878 514889275 832266710 517871683 837624165 317017485 465832455 73811036 300794336 40687007 50984682 401190796 950965707 386401529 948284642 597846019 605345241 226690896 406008189 519782740 526939241 14353144 150763848 809558699 913182374 84809159 85025819 56612817 624537438 584346165 752924068 651342508 848253455 541441747 788363361 539316065 864984568 107682256 721474227 679942951 881834476 357402330 834745013 698810125 869517428 989094013 993856036 516433240 703445468 680067788 786072412 93647663 487506070 245083439 956862261 748010415 996212993 759655621 927089301 687051708 775607509 386444628 829672245 635096777 976987626 448885567 701614894 815686840 943229930 861497348 877424783 575942201 742376150 864358866 974287639 394632466 629058094 257661129 475598163 926535104 987101420 548546469 810772655 27888050 538323362 759174392 937598847 473919055 519842765 695225083 764196482 400216983 951848812 787194004 982541558 745306571 856459018 84818829 415682385 762747764 847707073 487618669 665152416 27694773 778141842 760251073 786130005 962281975 966112593 911120239 982257553 490958381 913460651 972550963 992854199 379773939 432191360 721153982 876630038 403322676 719603126 514966847 527280030 112600066 405513775 286613429 481619709 558473347 624678763 938555774 964849601 781685622 809303943 484887866 855146763 950159357 990912967 491632327 735236470 972577494 989803007 779161246 794951103 871104106 935133595 931251610 991112353 136778943 677613094 801843798 910424478 957848343 998987547 193668895 531279985 232140206 853199791 705360791 838551416 346797864 666273343 355363408 429626213 669482738 765214822 39458902 445262562 782701354 894141722 31516135 38143118 723102232 762264888 563947246 997902947 749454612 790363601 858662944 892174505 584318626 921652742 109694428 304218269 749428881 949985904 175016653 650438004 729390501 938368849 750805272 836745720 953781707 959525764 28038655 791788485 161043375 724161978 507827684 828204308 187259142 742128504 6874699 795236162 722751122 823402858 968877169 974610591 966332152 969602928 7006946 118780518 330196332 562528655 506420769 551085752 197679409 453009019 746643750 988087878 464898200 558141620 286900276 358255245 345805794 841332461 851870628 891398745 203713533 795331525 475144039 643610498 923964025 936556085 698251899 891497137 262964314 593452147 139003214 408088066 349006585 722229012 167873518 688187558 931905678 958445679 593834766 967957156 592947956 715770214 369617394 422582048 306795814 678566019 295757255 464473858 827310328 856495978 499980141 750629602 466638844 599375601 840908044 873919837 469627991 989773066 854568155 992316090 102523704 698917582 184573993 209445627 514377508 709892845 466392276 963650593 808737140 813969422 403088507 451876513 236583621 904236713 507007439 813032616 970931357 971464939 773929468 896305411 652571610 919944376 512216034 781110889 40473978 674090529 234193858 688770530 694743136 726869872 517940717 604620846 75372498 335391406 978349751 987794046 313504813 848042940 675788718 994937268 750940914 910646767 368884373 977776934 147020944 799463445 527515327 604650038 469244211 623277339 927418567 929361416 472969488 958766914 656195025 758843087 321126378 986714092 523160188 815415940 197368649 248935589 801462317 902461608 617078768 856242789 770385146 929824977 51263892 721274853 470298211 903347142 926346782 948268675 336865209 402342556 231646116 959547845 827854837 847427804 178257967 921311607 805052654 812807652 766981263 869111054 792287997 896297695 407131309 512560474 72263337 416464619 904615858 923744946 294408467 467914182 818734928 825739475 723692397 965547246 216856823 410716940 72724100 317122402 623150943 758923162 200624506 967032279 815277983 987239775 721582708 923153356 416968795 886724169 730444861 961286751 261728586 328663154 578474349 993578244 27825958 194640973 770038817 815804487 251075878 691888786 632012890 664102885 455162934 719086197 545768065 567802501 103593237 890170917 277227352 545399930 716862758 865736457 705543658 710960754 101104306 697287390 896802709 921405715 257450349 878588663 343757155 685038254 145050936 952458070 714620383 862338707 7802844 270452530 653668392 706030718 67668488 133764489 705083319 915418245 82566136 750990386 317563915 398097835 320312894 995826710 648387177 729560573 393065698 734339570 667396667 701255438 420376628 921255494 241265585 736063490 761045874 794732586 208023060 526662281 152262907 292821233 110084651 760401790 594122966 776221828 437462260 748258131 845071433 997157885 66033918 332206347 967233402 974490487 467248883 609543966 632199566 907792411 974349366 979538451 222141473 556130876 764914182 778891424 330387746 849642062 79812073 458558000 677652901 884929835 273692343 698296658 406721519 765354861 305246065 630709466 846538480 981504634 793058622 902579694 956698961 983418550 794543810 892944610 769885153 876027913 464320 475132225 719145223 791056088 103662425 259623195 892592232 907427907 937255244 996941271 43043039 903321876 715602489 924794737 837525537 983539380 500585190 922741989 419521851 563148521 341447357 454773431 656963560 831297805 873497037 977147999 543898896 836429167 773399037 882783148 389891643 562790031 580304720 642412547 582041568 873048322 269819810 394271984 136204536 393549527 392342289 466245654 8401671 644880570 204007235 922546776 297132664 898941705 934575316 987094009 568133081 912238846 630222238 943253891 618647609 747218187 920817153 949430201 508738378 699407983 273396582 345166533 987175165 995204447 809550036 843291752 781213341 836286777 161712069 506033058 805604360 926574369 481224859 515035248 437067341 776970211 842562915 870665278 914187310 947074189 622379939 740081713 482244510 501426393 93042048 976670312 245484759 704121112 586882603 785409740 984098468 998800216 320780522 881244654 384143006 560470194 499156663 813074845 746891177 921124621 801672670 885028672 165454978 337975609 814981008 902031936 591823486 778703298 341741745 838685085 467674695 755404492 701571561 748873933 877151153 893041930 953001898 956331708 283867886 958317778 686590820 785323877 491806388 881126323 312007978 853857619 538048292 889878963 528201424 847389588 912964449 921402290 689945105 863987167 617160274 977621438 550185315 792256269 770903607 890830288 804809629 850582362 485085927 986611200 844941161 967926494 85984919 319639862 389379847 926436790 405929775 628532657 293279428 818620131 616189958 848340483 901333086 967497376 551140905 944036526 973535196 990774510 641929381 985434871 349238821 989440529 872365638 937987231 896421144 940946424 778629038 872262742 985263636 992290131 756416603 765759297 430874229 501844092 604576793 760552138 628593589 889525687 289448601 355843784 483826711 574528046 575248115 798821474 348400868 783222550 392425379 771429196 640871156 813760490 879195673 903153727 494101708 568223055 369329197 473147554 587515457 784036153 797059652 843496450 324338679 941224740 784625830 935905869 785718700 850253612 619404574 866487647 767403219 864502624 401247790 659273090 953934711 963333732 25701186 154640059 470301237 901364582 818122666 888342708 660176735 671165072 231676533 436197656 515254518 636488261 831966293 880352423 484030172 956786711 679578059 865255336 961590107 965241148 229984424 448169841 924655950 951079639 686475219 875287539 957583421 988287821 894446563 928984924 893380295 934698230 854154993 970146204 478529731 562313280 330970524 887751073 557866941 756571909 450505498 963436401 45044189 649271012 604721746 890692077 112768368 738720364 670437409 854014382 904375141 946157714 115298576 424800583 697171650 735818080 32712483 857768087 724970544 802804186 135652152 421133798 168122471 407420242 970196152 995768950 510933211 886742449 330089929 601594143 428357855 831313760 528499339 538458701 445533703 942314430 423192603 741197909 425362509 717935277 635570155 790445720 237026182 284845623 662261096 745976390 896401978 922152759 130516425 673061058 386040347 459560528 161655244 377521875 408301786 822477364 43481382 766066237 423855024 678317691 32835716 844896772 204503527 724283106 69205514 413818674 356135863 608807746 509428666 544408017 307052251 523494693 353761946 358513262 15441368 43479755 260399842 685712580 647497022 753676015 492262266 502016200 283027314 692536769 651742168 773946270 310489387 678797898 193814223 544051929 613805840 617067499 250200213 798274732 884780658 894628132 700348986 759777610 673113337 720983429 460796152 800439721 522965234 637587259 497496024 789993154 619656725 867861251 931805353 965941053 469832093 921798424 789292924 851753859 110453679 982286895 188839591 991483786 945597883 983920089 91543174 577820356 985235051 991468641 259553000 381986614 204202955 612951594 770854805 916190730 772024625 924473160 40159117 344220858 716098517 862062048 29849807 710883750 225510222 884737348 60302398 955569994 870944043 969038026 188966477 445912131 360700241 530751537 621535449 826610591 855217383 895859202 78194763 933732145 28166718 297020203 509433366 663262907 613975956 989131101 658131921 860027890 575365657 868796634 519006691 548894171 808026746 895350732 390202321 423933280 997788472 998448294 664543145 848108645 438883733 932368308 94557206 567292860 328020147 822204237 786105960 794499638 514778653 738457835 436435564 941798968 202941039 519259572 91549153 364608281 245710750 334912231 200355694 393792159 546007025 646373160 199191921 810528525 461106947 704744162 712868782 966179918 745687658 892437476 550138138 882259300 152685887 715419459 550430411 799844640 525311502 602722894 880677628 902240819 742312444 767651461 280470969 629291961 503892369 763330655 830085394 851840136 896987706 977395470 468916258 622858453 575780298 992113347 484465494 889851500 270585010 599987344 304417987 406065134 412030982 873534949 628265645 689390928 326974358 590943017 217571671 238270168 577662706 827185760 971457233 987602666 697065355 698047660 721161697 727318714 789138027 823711553 485454307 932065782 582169196 734774743 974694866 991809342 963624484 969658406 957551966 974363866 223758258 397161217 535627503 688776423 806218162 837264995 604402967 926153972 910555580 936834184 876735969 911834748 198737631 371520211 568625489 684388421 144218158 961723878 595036316 918088101 41499702 307879570 534782939 964137130 398877622 413056655 20724981 850469627 146807776 448825928 758982549 932842471 379687687 774389072 104842800 914733704 304370586 764499426 432611682 789393235 425449009 519102987 404865577 698183634 593766122 949553686 461196417 811199657 694508328 835717285 922299677 960209546 178916391 907742667 97839629 604174667 575714462 655055230 838348875 871639858 888327309 927927281 325897186 440758041 467622169 471498550 1801240 809375987 523355959 661111791 849410817 950397913 217518225 628158522 699494335 747705600 72149988 624386112 885387498 938539892 566187608 572372264 163771940 535192434 231604600 451797454 603835817 725778220 848100339 943946114 260293728 409029902 11177965 149440818 716501534 933409050 601568261 905958185 926908904 927666499 416092309 594174950 448201752 926661445 528856946 997259746 839001156 906512661 799949055 986576159 917143362 964405937 434805735 689993146 198657802 219343703 517313694 795024009 774860378 897297026 538115783 945052429 196369566 342261754 214051638 470997684 17443267 144736997 297118878 568985123 415731174 984113508 182216139 954351293 991524386 995235962 594402341 914995001 298074300 398128023 315132484 975122145 146679232 553519919 223591061 997307348 783488355 848568965 971728762 993193470 26781063 436930188 41728083 58131598 936762244 992289016 32520753 638683659 966514528 998834872 168627145 998013999 102948396 181162233 666203947 681317634 414423407 867425320 611773250 839189908 21060952 378676118 683239017 856862866 750766665 956659552 410921168 942167430 204245448 223784994 490790786 626593869 525449663 633872064 149976010 719739331 646668384 988312972 342465070 403750165 477956555 685395295 995230066 996371917 3283436 445419437 147137590 895868793 902835473 938618242 937011815 979005166 344292110 495774667 418986228 814578805 851268055 954081651 668614495 836517687 833887234 876540258 688365514 997948046 942959825 950211434 453968092 690012356 14664691 399053404 575938729 627686759 403496618 414927409 644018474 705980792 311734556 664307942 558598498 679139167 472334846 554827779 816550939 909385543 275336295 785473083 154721818 244435499 362995182 943862727 358658454 392243478 931261669 983079306 869528974 970282837 164927501 755931809 983891773 986507784 210186855 259409380 348195411 658975339 612479597 798708105 224650736 252440612 702911133 824816326 601996378 609998665 205219263 569616916 12988602 489421449 379299625 442606223 242502984 368487259 779902101 893144869 874455833 951282490 756017565 894461120 957253238 995497958 718820458 839261291 234044421 963582930 46668142 419530450 454313879 769054369 591261713 926549398 395909618 971656854 491682252 679554029 175567426 851487573 179353911 581066985 145008218 418824437 449778358 977915160 357498768 597962216 117774203 131738415 548928051 792237385 282452632 624215432 220159411 573430229 160829972 688868855 698619084 846105694 479283806 854011235 568809329 792444138 308588275 771300943 84225699 349400600 202942500 603261687 206266489 354265831 522886609 833429063 222749856 530270195 877108731 949449063 126368644 465698304 89829376 616859362 282685428 897198264 317555026 374729335 585699967 866871978 256019190 460511172 782884833 946276981 22594380 316448689 588301339 682292641 999875601 999944021 436604033 714130653 572765350 589786957 705816065 821397398 921249387 997024962 887849381 992820780 558987997 834890319 519609004 820724078 104312800 658044224 21320504 498006097 771230059 989412044 319757021 690028256 54678718 77519049 963592685 968754249 602537971 792629899 888106719 923236529 835283341 915478593 282339765 782478510 918236871 952190595 108676591 988670799 344827063 780536052 596844999 912920129 305756161 387802767 806700250 841423169 566785680 999323584 332899151 946032640 227732423 251548878 414924757 880815943 430357241 965870224 301288026 552836523 96783739 111802537 567088016 631841911 79613472 642653319 752463000 886708394 168519927 477060403 635815782 956949218 972465203 977131946 960454336 985732222 808388933 943304871 912372261 952369147 232647421 548529873 53708926 486444073 380122111 431159772 221360597 802010824 725008847 826900917 680241859 935607064 864895768 920429162 678935597 710237649 667444045 717999562 927106763 984985323 82696618 990743785 20923050 675584064 206446754 639672548 174140633 991836894 530052274 633164564 64260501 338330716 420570374 919004058 5989622 263446661 93785904 794703741 316171806 427341462 484032841 716880380 731695587 988874970 821534567 936732285 134431989 863220317 731082601 858592267 446353265 698025235 768447059 771070850 571921187 845076998 457817833 784847858 880952941 946855576 244024060 888060374 244775323 685202850 173476310 334781261 599171736 925257213 498705569 594423792 254662916 710848658 249082947 492762082 543863724 917636493 351388297 573117653 517976463 912164707 129792380 784294927 363208956 522703939 803542014 913609431 70618428 96990352 482543513 708776908 35955720 958148652 805827971 842338646 225445346 518252703 102230548 359565295 850969972 957504127 87659304 324066013 696313273 762757835 860337630 958322301 390126130 969292408 676211304 922201110 478291118 591248843 360630388 946750922 475324756 700047249 372788708 567323139 409909400 579160489 334653098 635133123 620056053 766172138 528960089 783295760 23295667 359738024 444860024 464233424 718076362 928679792 939324640 988608746 761113016 791093493 339605175 517942272 36852478 980078771 112522475 785157030 887801873 948928094 766395217 820334260 838235868 990440058 868477988 874604999 320409921 333853980 367613907 694052972 595834832 881033610 676011094 700498433 143010794 281885160 987466769 995088781 563141657 861676453 759374847 876126060 790007741 850344089 765963765 872754649 251738819 724086892 839141018 900220971 748548009 797524660 617626668 920862887 433338779 521239145 104238827 826106344 778212919 980660329 999369990 999898475 569973294 718520815 690712509 715258511 325348693 910097792 272598015 534217882 6057540 460175706 833048757 901669189 345196525 781839768 136800733 784577276 441957563 601155011 807725566 863936981 807238410 918510023 907921168 970954505 26387119 206737588 536159965 931547865 351838850 617160014 715777498 754763570 625171208 705670173 212342853 861754524 258424646 502673039 150429589 531368313 637054209 869845562 474955492 513242604 890498158 986300051 609534161 778335629 232980018 645166520 997522430 998145881 709407322 887760202 134498032 283742271 390395336 886501839 542356633 697863096 254461757 329151896 823752009 843349374 741603720 893115711 286343293 313254866 843842421 872733742 807173574 847573497 338711284 650588261 110452651 144779258 866627114 877043210 609528132 732031147 658663980 793167602 167104810 367458406 154780737 244466743 308106027 784964374 439965699 495731045 838710786 864214906 266713050 479629897 920149634 961704688 480426599 561706851 533092930 674747964 804499797 807173808 142057008 307597753 611799361 691626150 209551891 246002523 152992882 391950197 470657668 626167409 530532653 742201836 450790791 480844444 230868510 735924920 464459782 465352606 747382082 931454377 768438157 874942874 672479249 886349418 681825849 932489914 91552892 977150739 535591343 936121303 329201740 525309077 873047585 891001229 265832183 558046602 999136889 999212407 756074968 756463171 386620268 969939293 330961785 645858113 829671937 997231799 615111835 818217724 463944664 628889262 289433281 453972662 546816532 602591418 627541982 836237332 792569881 989348437 377288795 397109309 450609603 485513196 728042506 787793227 101537033 215646952 956060232 967095499 87313785 404050890 168894837 632655208 12926777 491296886 389163419 501664696 340369142 350871919 741154707 825660019 446856146 746073160 891454153 940186300 194228961 217031942 128364861 344811781 768549289 913259846 128665268 175756535 764411734 885785738 157251742 632506738 148580577 633548095 281114983 991697483 437619773 875813667 56804692 173008608 204215129 782447126 39558553 309474492 183644917 560178858 662228223 998534785 748419484 858032374 532516483 762548904 809630810 980102855 783988201 872700175 31538480 362399549 809126858 966917886 187166716 724827203 944628664 972523584 972008652 999216142 71827954 666803078 877285867 985346083 834232625 906651209 980651834 983565332 17718976 322694089 895856223 927365670 665748232 863533139 568803264 874864013 668041304 780708217 777028324 969658795 310767181 599641193 895226664 983967875 530079531 893849004 287753231 757546120 42493994 258171596 833189240 932243488 205263463 918211431 405182423 618271633 891445652 983241036 872070911 996790454 748662777 792439292 694821405 704646985 294368821 601286173 380439309 806959254 149184954 459638548 685047247 845085515 174231206 564406821 161231619 587952175 256017882 473223483 605391200 856286372 279585425 957005058 392568946 792396333 131695089 663109046 126827402 288081147 123322098 268408365 633726875 841859088 279416560 950188926 115076117 735911921 836377605 894306863 902967276 990078095 616380715 647695276 319355744 933088955 209256949 812011401 101555438 800613137 959411044 990536263 688152791 758487370 95482738 556352183 811223426 817167691 238192578 775295740 595676211 799059168 750326530 885346108 940571354 951045423 967887982 985143995 387693398 853675961 424010873 740804648 889111688 942723361 586792276 709581708 137778728 420912444 283565868 315668873 405106107 505653969 377214296 523810032 863245010 869549740 867561024 947555458 292229051 357409972 135171004 405316025 825946681 974964059 485888405 965374720 316147606 710490523 88951324 674480596 730932278 924808380 724986050 816342688 727289965 747046090 532447437 624375203 324497040 712272430 834665785 979653877 279797229 867083926 837848518 903610603 675202063 761439224 102200197 375887566 616333576 755353310 513996941 589808819 505172078 709866923 209043049 989852281 739521751 989652319 353041788 606091091 73780477 963692527 443017561 972351545 969712259 999388344 722098556 905845855 617754124 724891159 342797520 600657329 623817543 753808043 476226071 488177819 598706664 785571423 624053932 632173233 351907209 609041524 386139188 484193361 630082245 822064204 292094762 616038872 269365040 931566104 483165997 549397401 662866345 830766823 68700369 244572422 308319600 671689078 920632020 972084262 787341495 892142806 710995899 723989743 123024257 886289658 738062150 906701387 135999861 731916754 917623762 985067224 606327340 961884320 821042230 871783961 162479569 384795773 570853043 981474309 51405561 319194679 531493505 703552911 51845588 730057482 419151467 586406648 991591575 992071043 237737833 848459089 832947609 952356623 885274805 899789757 794044110 795745085 3314622 47079141 128029825 797864954 376691418 458874470 549933496 629386150 928854845 979913435 342547187 944003208 211425637 478946606 84992175 403558022 876993827 983145236 590156834 673334304 136092570 481876182 696935775 896850722 154991503 904412590 295832189 541507633 569467626 729210680 925956410 971236804 527281305 837432376 564025070 915998233 775878532 800823666 262891241 606580879 932727358 976779188 416054439 417513179 392010869 522389621 154646834 381561037 272132362 713223455 437383863 480025508 705412240 830280415 464978113 879514807 129481837 316148898 847946886 901658834 751704859 843919408 511020690 963499797 484928302 579172837 81075559 148653068 754724126 956129425 859230735 952416996 728745399 927520602 952962345 954461654 651710081 919598892 209841671 445534726 298069747 550264226 572443761 834529599 477181670 989748058 587497862 698812109 61689979 718237524 780643576 976467487 472945283 737375205 876264242 930401398 185689373 358987140 794602102 931839136 785131451 863499048 276379825 450668238 762914306 787520156 960512060 972115751 189750785 975039192 922045522 951191995 40806608 238581210 795659715 950471848 799147758 853038610 235068487 839170918 913454509 975268582 886629355 894920605 102269777 779561714 141203912 467049942 960812011 968975700 212515859 285755136 354297710 586422658 288958376 594948503 347043994 969789164 612884713 796650344 764927317 846973388 294755134 448075260 338569975 842304753 269320395 330647380 717576143 814071692 836749791 839564905 100919157 910293061 63182432 102855519 818530725 993533130 454654363 926438578 395652079 976899034 497867213 958810292 112947325 536062690 275428246 603016969 592277086 919332119 873193538 992487334 373374892 604915828 748460721 803624468 937728628 983707132 413060153 627840266 834501636 856333655 853459978 974834604 916645001 956186237 728248223 734113008 486429674 487224961 96705679 105064515 158659094 612933009 122035424 812574049 916221897 995668496 831746737 949963990 933999901 999751474 677689559 694475694 267735798 623766840 270154520 546846821 846359242 889572437 814969061 939906583 575562286 588125514 746803207 823898477 196602194 359129603 297009711 663515292 32334528 987482906 585038274 719466626 949129379 983997274 637020904 894652446 547507669 787215179 550379202 744360033 61367182 785496674 783004703 888668174 401398715 959466382 246476976 373205127 74096302 81625339 947211147 994116180 51660370 386788058 338756977 374841701 775419365 795051918 573103879 613459028 753669330 788178294 471896259 533780218 390720452 558296550 305501336 936972651 637804640 803997482 945563625 981581912 965634714 984774272 353089230 421671783 848705389 877786484 489843901 512976092 928040783 970571556 253876733 987926012 891923032 967924107 197965232 662518396 177882768 849930860 820464474 852343219 159823839 951702646 506104518 863239855 685032329 807154415 633154508 738006454 890464382 916183857 147589429 904276567 116455309 367529584 561193949 985655790 547395395 711332255 933050328 966439203 193706510 744599606 576112360 839265912 7638324 769621325 499220072 776377759 235363907 958422584 721098334 996498026 430662586 833110243 384184257 787782654 74926555 483523488 865817229 892446087 563962800 758898227 671321882 886250782 935171078 986864693 585448499 966444691 89686129 298557097 240065778 946972576 804992198 810066962 152782592 295539666 279739492 936310779 822717429 964361250 465819950 693010439 13583354 477478103 479946836 852294877 603394289 969730757 376310581 593136992 482115632 771630926 142783117 276190870 692943451 694121461 543814930 908261172 976429154 986787513 970518531 998447265 974944436 985372518 525236803 754930433 323772035 999277012 918543279 934926578 568928880 620920514 157061811 290153612 953204765 962803604 179888392 403997957 318013199 540673908 606046066 634306363 871784872 906960479 307119075 498138138 840595970 920666903 599398269 758409668 45590945 362578228 498682951 843408610 223099050 741479193 460431330 621189278 361567139 457833240 387580517 522607107 440713426 546408947 851733216 926144332 636553022 899087945 747320851 860728241 379233417 736369875 83687874 571106029 975173896 976324362 287389871 548039023 247811109 481866694 761585028 877658164 304629558 495791991 443699648 809298310 90310070 143705700 347610486 428138981 31168473 184186421 681734556 727866889 154359491 323242532 674099419 769488716 612189943 613328283 803745660 835212086 191348374 918055319 743062352 987751474 999478624 999948466 270266085 640028849 855044030 929445875 703651305 977155258 855025341 931886620 984659678 993221612 473578281 742046507 390700361 459811506 414037510 566697815 407148241 584846164 171255977 776410932 568066365 998415048 401558544 435140547 11745240 137603285 519529256 681843055 61742813 453427853 10576365 202624137 226267431 906913101 361397441 906520777 884813885 936947631 558585656 954517417 359699799 467279707 293184813 687893980 13655052 119048810 903095178 912626097 872857257 994839102 21750067 575389533 914518508 942124351 902906760 986466960 307194395 316142177 547089392 957213199 347462427 922034627 191058380 712027464 373701410 910112472 787267011 852962096 142736085 231741436 412164446 506438539 942526983 989127151 944976260 972090156 764472811 804487765 39965836 116432748 24275258 326086529 422593060 780138323 344339854 655717426 616446644 739961130 686392433 839641898 159802328 783363555 538167256 558136230 599513249 614900034 200190714 691669920 413717583 591644048 805638399 870414493 290750631 400886190 292013842 329540437 774107496 972121807 351011125 830013318 72688893 780312140 509647891 945684027 667394661 843285615 86673799 860144789 868718863 912132199 853860789 989507447 749685284 965360615 436243683 725904178 888219202 909329516 262070926 637435621 444691499 539850524 181298602 683735429 201596454 344484399 769897373 828045474 369238819 585561714 962289530 972239960 716021508 784783232 172942357 704300590 140909810 548386084 964830276 978880964 877285860 944675297 903029247 936831388 421452427 792961862 249385731 283878584 611687318 679727042 522816462 942225831 419346233 515475003 649958150 979432250 664710606 900235894 184792362 499433551 482836137 668706105 449540061 617524418 762186371 997071899 235947331 709570214 596809120 612146534 428658359 982800823 285577443 463646829 691822410 957215677 990649148 992246058 958499069 961608894 144688810 795032162 587061439 963050574 84060249 547873844 446582065 694516510 736021791 779416933 249190123 532816280 403863981 988173817 660937471 993664670 67039587 512856564 997678484 997719420 765476006 922041801 386341988 603199353 627758998 888500616 769131260 784667862 311741801 375175674 172003603 383110568 291896441 486186668 802225047 813575499 407350038 433433003 575677999 663681140 647493774 803101060 657862806 664334493 14019386 73668007 445749298 510532924 4688540 990617120 630913866 885985232 101826643 653955735 925894326 976450137 16578300 223747640 666066072 832569387 323766181 828754623 969307465 983989746 52349768 298369516 685818832 721985073 14491668 405707493 82785099 744915845 901094527 931745392 275388488 322357980 585793949 735295156 468209391 776565539 618537409 930454456 164272704 312936387 618043190 946148773 485553037 745547641 221821181 916045703 902415851 945207783 12139138 121669589 246145347 756548434 629956036 823933131 516340496 545058786 411967598 780599197 318176768 766792648 668984099 722318028 516270458 952717943 344575722 445256793 256149912 885042410 991631270 996443961 951763452 997283540 944452155 981987076 29587535 482479614 278691148 774673059 977830800 988144917 781303346 825154772 97677276 634502565 204317642 966515379 410666943 963787512 627642482 815852012 751256473 901891765 672985260 853206356 797875084 840428060 328224136 436529361 574484901 836714204 662108645 880622738 104729904 488529248 386412912 819829123 588768989 628338751 909791857 934705345 534632695 597449225 469871835 752249288 622414770 694658405 181980656 756082534 362454001 744560334 256891376 434419995 852018302 926106724 1427806 568905567 357358890 609386323 698185793 725416725 612864201 713996825 947533233 977848104 105620162 121983272 974486748 986423511 50130309 455953242 163270473 655987560 972964981 999868716 505206294 831650641 802229624 848252440 347678288 445823529 880547429 925650974 638649624 829467077 563299996 649651769 406650065 815661158 726647074 825431064 106021938 267959487 469051162 891758669 481692971 592568524 644076421 936016811 916000073 923975012 80075394 926694008 626733854 702792348 640229851 692125533 58469473 265236681 939403188 992231163 164924022 906331044 107278694 791152131 329664351 656319811 765666634 906709327 472340230 506517628 311535019 409223324 48430102 693133459 849705305 949330620 498810081 728836990 201750723 909862351 882105630 991442098 607964258 724891961 140826445 255411561 493804412 607628790 246844050 893696055 694531900 718551221 273744042 768824409 63288382 735507919 384863236 477618380 788089256 900472720 203932790 905075443 967497991 987824994 149071696 189698832 7246635 122864439 154842744 165133273 484091859 608708241 885753749 991507604 923241264 934667981 685629568 979702443 308025594 498398871 201120172 893243777 576555989 927893252 419442861 936582622 170139217 386643284 785907502 948998910 338145128 479634925 300159475 531134243 994229573 996562759 482434099 736336981 318453932 929106638 669629547 995221632 577679222 911072519 846541799 930856782 206653084 896259128 448012633 584905581 372764475 677587462 838763208 942700872 794192781 985804671 907062496 977367216 452170817 704897275 328239588 813837255 980989184 984827683 93823171 236822662 213601281 335470782 938088208 993779610 972080993 998098266 646268341 672454892 732659014 733323984 467158142 511335665 64466700 449163210 311153292 587721593 150874119 926249289 658812220 859950081 440646759 574981978 743799995 946040798 537875862 540745484 427866113 662641973 439337002 661300241 374179157 488036487 383012821 513681189 130451144 940259186 396088833 731639814 810327906 860546279 572291110 611289983 823533231 893089504 848778089 860943887 230150570 413013710 930408896 974961449 705423850 947749137 713343067 910152921 895213267 929437147 714683219 747531237 163026958 489468298 362911316 988804447 955310590 984475743 462838564 671606558 378438162 510709887 678074397 816659421 925447489 961032808 803696532 923813028 773952325 992622540 182659172 308569644 276374260 671710806 439585268 856675161 49480560 690198610 747583230 871106924 76258587 305609826 778391421 800585255 646908498 750746999 617410424 706386746 193654953 397931360 900635140 928520497 632347529 782010223 287728522 505740253 877826583 884017534 782437570 801135473 640942924 840759958 918065500 950426282 914917563 935881812 391891177 519689126 157348785 259007248 234995047 265906090 298393530 348882446 977459152 991881570 885716284 998776633 990110763 990174034 124378935 559623048 709270357 957282408 724488999 733821181 668708246 972265218 24462998 921588167 504344326 748720815 942430218 989441296 735559966 762769017 893951033 923486940 935458857 990789263 375449807 574573662 184193127 497134704 414864842 956073916 71730288 943643925 464011669 887945140 533527328 739618635 946248444 998612654 697080181 929280360 212339445 841490449 253764908 780151698 949417648 977178642 185796777 218214554 710817631 991949796 673563054 876751610 151886349 161286776 544423118 749351129 627835736 918876534 432051717 470345794 11124509 948721042 188500413 283643764 713729850 999884785 298522492 868920483 798371781 959054600 456076008 861066171 270771326 669553611 945364730 994679524 21217834 702435128 815157396 858081015 108732720 462192872 137865052 159703356 453886167 663480673 673231270 778477871 790464007 988155505 847832220 874907699 171712924 654676537 553242562 680764556 451196514 893951719 360949226 713704210 962959785 966413268 949817332 999550599 804958638 924218648 988714463 989982315 178123045 452371234 930996085 972412822 734653514 952451522 575425065 779567513 257642344 782333555 596523844 687309791 565009616 958163791 959037033 989770932 105580554 118136150 976204355 997597635 807622818 920962641 795143580 859621438 311095292 496040852 570549660 654492560 610942875 861501298 248731027 856618332 987244780 989913138 374206485 616790021 634859657 751444594 493243559 657472036 434963060 711494935 146163863 599831669 425902000 606020903 550571373 895043553 299398855 356365153 598185350 757213706 932826353 978468468 991174570 998245277 828771933 882124491 164389588 894894497 962172709 975759403 786719813 935372638 598718477 969694136 923739936 982846261 618000845 808134387 169507421 376996762 57762770 618012592 873277537 876003536 141657119 543968318 636996705 843302322 517284081 772712642 4676318 323648736 330990298 569534706 101533683 702051226 452552886 524060545 291413910 626628975 253663047 873798967 321093827 994521254 88566915 384169413 970526834 996719705 46561901 837234723 282131584 935024395 246969627 433419729 395708561 660189594 634321063 657517813 295975133 361712683 903026060 959988258 403982620 600874248 970000718 985925747 798911897 879762255 31878517 554297734 89266538 757529017 294389565 875293479 507141230 572590353 868083201 929212792 533772005 799268236 481105844 667187625 552130246 754875431 636499979 896969169 305636582 391246135 473409234 788502811 40335974 620008417 468582575 622397653 939982146 945371794 355281843 975910863 413417724 667850754 818895423 879777176 293177026 324011059 214309324 958791302 896865652 937400256 838921199 995536285 672388623 904070189 673663488 812464271 851689540 893164041 420447678 571091778 522321205 738924087 832922508 877989463 304020161 757796901 684382 15988388 499560417 980942178 294188892 357491874 786324245 934132883 506712541 571364717 151575240 523102035 987512911 990864974 900964085 924232164 172836432 692722935 379803065 718363104 280983129 429951658 233519336 475157406 917312615 994672256 710934033 806717341 576627001 859612642 340955548 416989934 156772861 934823216 205502428 796748841 281987299 528524441 956709665 988144755 978437887 979736719 353183655 432771176 282163030 597986097 132012418 762389642 814613448 915381162 575536 768347048 351770778 442292355 583103520 891504514 987181285 992416853 601595014 877377378 183731345 659585868 65894499 420342077 928083444 928311162 680242727 717736156 289621404 718062747 474071650 930124413 224931485 351939960 22233508 636287204 616218467 987966439 628690507 762324927 545274069 800668989 187831236 374680499 685245735 845793115 3107833 76681231 131450826 953439475 130802353 169384212 781613278 813648673 887419105 922358795 123088723 816303002 25877382 703774791 842639200 962391142 897674867 943511266 955698885 996996077 597384963 954063875 416536042 524603561 198573155 831589504 87241766 285106641 608753499 743254041 551062370 830241262 486437700 861538375 597154556 917139248 373705117 392679138 68932225 773631263 465949276 512550819 725295695 902653294 262233308 594357294 301584026 998638867 322958485 908529390 976500394 987394358 742176942 920057559 131004411 818064577 61598497 355476676 655487125 969541227 819670457 829489540 628148053 785557479 203906266 667460196 391799971 744543310 75950579 310893445 678625312 855281391 684231130 844147967 901470574 945814809 427162525 846906307 333295744 368449387 445308508 578346194 3470462 160635737 979476507 986679343 833797834 898882128 400566117 753287649 219367955 667997861 87718861 655704479 514906358 686701170 211891780 808930466 17699855 46310952 937808353 942966639 810206249 986046477 880646363 906031118 181069750 927302310 733811072 767740248 409474017 833959152 101557513 819968694 318669031 511605020 191718494 329921888 326776606 441518418 869584054 953273758 347199565 862280774 346329837 374686542 608187774 794084399 855777807 871165771 352546894 787289846 911809904 990774869 401437452 510085455 345709772 933811665 20842629 268837210 985805689 992739679 443475624 607552633 581652716 585961409 604163722 668501684 564559759 949491749 232143979 522179685 337167742 438214441 37321013 626432372 272339839 621458684 179200110 448292416 820082407 974981632 745829598 788115230 12731779 851492142 816549802 829137502 78901621 812730582 367058250 548174663 863252885 962843655 130823766 839690968 526506729 937039392 274136885 352938994 793686140 910745716 354297427 966198447 633394588 753573633 253391262 498699334 421470349 541586141 267273892 448028936 601092968 959035528 111834708 843494767 143359921 534583344 171840961 698359491 379013152 629032758 952225373 989752615 49996832 138655159 640763145 840716964 728555799 753827258 153979948 294069683 430773622 480430723 934180397 955031860 818308483 864638879 114294898 770916147 589997204 740281383 721054274 901795167 952151387 986170796 207326430 539644229 344918705 984816755 229442273 558903877 462679218 962468490 746061081 853969509 442140121 710824807 658304191 751935602 610371437 673744315 995993692 997446937 915959078 970455562 113875306 378687662 690305629 854487150 646756426 710632561 214968529 465166088 280739790 438813304 781585237 815827804 404026240 829393388 729956128 905401018 546019849 879668381 335873173 549789090 370524056 459616766 250222028 826303075 225081270 481429462 98888913 344473161 601220269 808131173 830973169 935320469 58921488 233849214 658598792 789568183 159484043 910093801 983549543 998874579 850580983 863619709 649719368 963579487 133033179 822965774 288154149 526146127 216519324 301251497 997600189 999218629 834180617 897841044 66509793 559485954 187394630 896366968 148261976 386063336 155667139 715162000 27724533 574898923 579545381 881786407 242873750 264505483 896444346 988425833 160699839 996287308 653166294 773859913 946811147 999505002 754543355 786522449 196910359 429654388 325813165 632749825 872268611 889771839 458755119 635369334 577454769 888864799 637863427 872136057 197591844 211256459 381954642 499259423 177238204 474942966 781532008 969794233 787533172 909645978 411288672 612543979 775531426 779989705 34857875 82637092 687407952 729496085 488477454 693277004 867222105 878104924 434991866 630177711 41910636 780423767 579534412 741863313 183457062 727345595 46877860 877441442 199954465 478910850 944095372 983845406 545422660 665704675 400143026 598125527 567083768 977948845 879335085 988845541 371374605 391297907 1346765 234344258 743694932 935952230 148161673 499033942 342182115 742448628 690439274 979052455 904919993 937160207 480104207 903106032 295295172 861718127 754678813 961240308 222551418 803461135 714489575 921325951 25234451 35406901 912161135 999333874 427526370 501884364 416809073 485713299 430957014 788911165 206533948 825701174 212585606 807517780 849757771 973526907 533565917 920552443 36223019 714342344 732015844 813613318 795533104 908817253 798862868 991115486 333659309 687288867 179717167 832731413 233203197 361140887 983159299 989477816 9716428 599227018 755374014 928299285 152445076 829794634 354693749 987017160 947369692 958874140 28134165 482836442 516062053 613173699 51486171 714671244 450987303 660370256 51264057 440314943 518826144 585878027 329954705 437570866 469057622 588106906 448875183 584833132 471673221 631495766 60780555 152640122 43991244 515271333 20166596 312373927 586054635 969488421 923973614 985301528 275942898 608113395 642925686 873851749 371752361 596801838 489047469 559551788 479749149 612789217 70379281 437350840 627539771 829388700 978325379 981284881 664912706 753920940 74889693 95335263 19226632 106650292 446922748 554655225 569600889 658272510 156684982 868914693 577020411 984401063 622816213 645320538 279996595 991110720 586323937 865538432 495047609 929261895 57900531 85554993 777427364 880922006 918040313 978029583 829486872 912828066 260245301 330723574 311586040 757867810 536702608 676248114 183430811 957284626 237005974 414511820 974645785 986782616 127247832 345866380 595828136 964335551 333648842 721623285 597531721 772266756 781370731 970212820 403455477 776354920 185275403 821032200 861990300 994893351 20353901 461980407 949322441 965441131 148961473 167238830 142408704 181794660 289133695 641456719 430042452 899979006 302020563 741016943 814681405 938097016 686337913 737534514 703031209 749656548 442837933 599111274 208080708 340694277 917909649 987960765 938389086 957623837 868365752 882362612 288491263 446977026 747506294 789038796 374696802 999694428 586088655 687018866 724751704 886001777 784776842 993952933 495010121 861193274 542165098 834395776 460184406 938901887 28942393 422209910 65579453 886513912 347149832 595929625 260687333 632783660 544915752 852550574 117981894 151696356 526216183 732214581 977248949 983361864 590638541 602405444 59296464 860848415 523781129 605047598 531798931 622682314 527121816 950642312 289122990 359762675 523708664 809817722 132181474 730979431 241887594 976558395 272527591 744369510 241317495 580236271 807925782 822445704 642116430 916314879 553106515 676608122 567524717 921497623 738694575 826202117 212149807 577459809 659369417 872844918 840984101 980659275 507823602 604160430 472746134 579955922 291604976 627632926 4602343 259544624 287174545 447194683 210283749 691852528 369527176 699063709 302498703 727132009 326521285 363992823 130373538 650959177 12095744 915767514 750954437 790624655 359017643 700417363 361057376 752693847 810699227 829838620 590813188 699055547 24240553 72679097 670464672 922648779 327707886 588162127 20559664 589322878 876375234 971445395 517026507 581138092 90620740 495867276 359341587 845188907 918276784 974621811 653421609 891690779 795763737 923145805 775531468 794660710 648953228 837554514 650718123 711182818 83814050 734702768 480586820 955736116 733929764 751247822 368574117 543603196 305357076 571316420 421460097 573144737 277835688 801545166 621065657 744346167 451960353 857178259 57543517 589073571 469836725 601632695 563769139 858067896 763438666 975094597 336465339 847148042 131330625 940644743 729702888 910097918 860729934 951405986 829788756 892524802 680129944 772317463 159922436 884363883 534240781 715555235 996146461 996212220 922166325 925542648 884861823 962733682 751047003 915426332 933040921 996297039 47458880 199532122 593120064 991507453 380966268 449419048 903407480 915339117 213652780 328397303 975705625 992030223 538842269 837238803 276176120 883992219 184038162 904515409 552416769 613754692 743408843 906312379 201421944 860847161 471013553 934316234 644553771 711331536 857778769 884628773 814078802 921184515 34019643 318893689 201276622 257286297 375737854 813198049 974541804 994239162 123279514 846889533 288842127 646833423 470485968 792199461 185713697 254688684 132542247 727558546 62585271 987438909 254316807 375761348 312368469 517937218 953800640 983555573 358325486 854778451 182782972 469413827 349077393 771542547 675433456 951425245 212219552 791117894 178867874 236582665 729508484 822355930 732763212 825808346 839410435 897909648 697055317 767474340 908248987 950575459 116008358 830055247 804466348 839785646 829059253 957430545 907062110 983732718 364071445 409281922 262601592 825187306 893356295 954706949 356264738 626096027 757156730 881281948 73105764 186383360 283842687 645284095 723071393 751267008 75030342 507478051 638540240 789896949 735932926 852192425 909611496 935737971 82132517 680530648 399873549 592675506 405796018 906263294 202574833 761988175 460572678 670096351 251967988 676677473 362223452 773542979 644625755 742073154 221739187 590883173 45096721 410652341 855418381 945748674 211779858 263655915 618425554 916962776 715518983 749923254 360401432 722087300 571436356 896677444 592999148 666360338 461988150 855844770 87490742 751194912 503312719 926828743 390290918 684916566 749650755 765153441 414924816 501748900 157539936 684340725 412217142 537955687 77930416 971817667 909857944 965489876 388583931 803901546 821484623 899709894 618698635 756521666 183685031 242186368 907438309 913289333 565499656 587111978 259454141 385908446 704425238 958096111 394284888 741902781 256731303 982335353 897499263 999242395 123341849 262685970 210433056 928206466 227185950 655096375 880066702 900040364 300979163 303359761 388244616 653919547 73213249 586225154 223287687 936284556 217953438 330352822 205975179 420181953 280653505 527891244 180501148 805127756 548591938 674993271 455430145 707193713 374939075 504057939 486442667 795396669 112575511 488791188 892270698 898015996 171058966 779910814 764473738 810606864 811989742 891595501 435018233 457620329 311396929 760646779 818995735 941922244 287552544 417674057 730962116 774677992 391926105 894304583 420326590 436814788 707648822 999974651 965304157 982674927 316503017 340329700 866338595 945663342 240492245 663676867 329894328 408354479 34839861 546986574 980366249 989442053 80285482 367477108 160281535 674295829 466343623 698400118 210833779 844348890 433137104 606514267 937903867 968483293 838374235 995876561 687881624 863209697 359120778 765544283 779409151 943174414 669953506 789497465 733174090 890822755 72412870 489300228 865090025 934310951 856017727 893761711 147154766 411924906 598604758 801936842 790293756 815991367 474616787 678993002 673755588 917684807 24312298 551710497 517408121 630245685 207977205 236474713 820850166 910458143 964218118 978620983 512608637 997426945 850602232 862623238 373697628 721922499 240997160 377300639 289153311 560051373 249694450 336946423 380690241 408851373 926228656 977638479 987881640 997842990 364665501 571314162 503711712 962503547 588279462 789432266 546117714 640925555 82634845 860173446 129169482 443219472 427652658 651308362 867491735 905482520 592137438 987665823 360973672 492077439 425747321 991877941 664058663 734452422 640963982 933363016 504761056 888402186 74334629 968543603 48712362 933984197 768074433 815348018 744049345 787686250 668737621 848793250 24268747 73415453 92825024 491088778 898921177 972370388 246316374 388726641 372936288 617195509 268175412 832678819 691617930 890677005 548350199 720559937 291794377 696860749 582408108 858118627 632026026 719615424 725895829 910875136 409041098 890407637 389309166 970384439 499810704 787660115 26281773 448354978 999379194 999474061 699113080 958775940 888955064 976563952 570473373 711084533 645627301 726423688 26123773 919408181 849422271 979208080 314676856 726285550 995532446 996134455 779056377 821032196 801163528 860846397 91229844 488932149 211401518 371642769 917618426 926787879 614585280 624508246 672085412 771036155 517047683 927146242 772120465 984806130 35691957 426975643 283121271 447203001 243015269 622312375 259167925 850944691 289292955 353626045 215127293 764510505 193968031 972685023 323778584 964473449 930743585 949692852 823287932 957117070 655321177 898855592 739361258 875180027 290263611 839437717 804420018 953316917 649820708 837641602 961654304 965292935 39218798 387338051 90167468 375112573 34019437 485654811 796818404 932462795 415888948 709208557 749379560 819818874 738345462 901413917 751497172 897099042 484561285 809515298 833457189 991540540 726001885 753170708 448134998 874658265 493210158 821950973 817040085 846582386 915628145 999239793 124234827 744741180 686725540 878222855 797886016 866353588 332966606 547270087 504364102 617844583 709414747 762922059 395246329 883204570 585967526 651825964 456908635 499699235 172510906 187702655 971661096 972285895 31346421 800829177 617937853 963119609 194431845 964234579 58721179 982847192 803024062 883189383 980820988 982118897 177157839 783011739 872059222 947613126 296970931 515710945 895593546 945089420 836658432 989755343 318393550 971331354 96760128 153814865 908500017 969657864 20629192 584028720 502935141 608996395 964050866 976207433 792446601 842354471 568433349 743013366 54830398 806201013 499091651 984502633 353892181 843165321 546976360 865805548 844832784 959817720 323300336 675054137 250218899 708984889 867827734 973224319 534712076 841011865 755005153 970716914 899381921 946189899 231807542 827674989 951650967 962225048 666196923 819081077 65153287 663898400 183194457 840486769 307489762 733104856 763585744 987449700 228971135 632571040 313458369 937821519 29182796 782725399 86025304 619771973 836966700 925791965 582094376 992814931 69126763 710240969 37459045 912313564 209317755 820479469 296294070 422262133 909269970 959764745 376706827 853823965 159199361 285727678 101604802 690421868 137343427 375910437 109594778 708055795 657283628 893525669 897879398 971753603 838377666 998500859 799904118 804553451 562652060 637419940 400172780 827047897 94088180 205316997 765167200 971292763 285404343 616325167 483907455 666951542 687160182 776642724 302850166 586660129 74806289 757021787 631155847 914187877 877657140 882646491 311423174 567184544 668083764 837443332 633441329 691737349 975229631 996415226 243327663 822667605 38747149 537187749 792854616 805814875 529517757 739029045 355907733 578999432 128804128 154931585 444472912 471450290 352627543 750515998 152040392 322794221 788531979 902940576 218982323 383944536 492070267 943271760 831871785 961836375 931776376 950105488 826513647 828058191 808568099 904276182 694905163 756471955 437476380 552693675 583041856 960690227 752916545 910611063 1809915 730774614 994428341 997081516 343992969 912405164 745310611 966068517 506946589 616697657 551929960 911546946 556254783 588708722 770535128 915478308 507690384 683365871 31191229 134314553 521575561 979861876 701248720 831404478 364372255 757511530 795827190 907388001 769081337 886013331 100609067 893710631 653127623 862373834 486254275 612758652 304281959 752232986 814231731 823931971 840196350 958770751 132451134 522660599 314116059 895912649 422727247 651618517 500504798 707871457 83050458 298414204 469854104 829697500 742248281 943544396 914145347 989629566 617845617 821985941 100038067 556033737 426201362 928143100 502701088 836875160 268556474 508916595 170056451 371436911 883110826 896284137 883807085 972478458 499821230 787803360 710448550 868948382 677880361 960134376 297418626 467556710 63030244 945057770 922247210 984815627 950081596 958793682 265243712 907927048 602435886 687911747 747161542 954039399 701453361 998797619 815938212 841996672 38978637 306686279 742969241 811789963 147370999 891140270 848326383 921997876 839660462 940604351 210903717 936274585 983187668 995917373 591084324 827646334 382575422 726908528 445643401 676203057 731765984 747483527 682112437 712525599 644441297 783260509 873021544 912344283 557886319 879639232 963970636 984047392 865788879 865880710 143271152 573011882 534953252 929826485 603322245 788033410 253578932 953089167 566944610 783704998 898288242 933242407 113204948 744860295 39781994 319269365 885845140 983014563 553058062 663345656 729751982 888185965 281385987 991027027 252814816 656397068 145135590 206615039 866281064 959114362 533807680 967283415 819292077 908031041 222151498 817760785 619117033 920280923 128845620 611564572 579661036 724520155 398436450 585718088 113449126 826753526 884216998 898996991 233745341 261280379 651705832 712315103 501883083 859203116 586984976 823086237 936135162 937637971 480080991 688397016 120580110 445527763 125011845 664559458 682830893 968491140 862612439 996724266 450775707 992227987 420684249 691479253 697933486 901753735 287868959 555940721 480697126 997206997 488273839 636231766 585040641 750121250 633370908 907058465 963056923 966708173 896266491 921574258 895577468 965665369 819502060 883916858 850272136 959620693 400081480 774786903 112571011 880383724 49536533 576679700 798020386 932323196 452466031 713731498 201602995 212145053 423595995 870550241 589849802 844507384 100436990 894565627 948511971 992299251 525686399 714545572 676507785 993241665 409348967 484346219 393044963 945087696 128024118 586572501 671010225 922178417 771680737 881257736 11424319 386333618 516555673 596415290 66487096 927877500 509731782 566703249 364413630 746952159 480230964 879833383 434083784 631804014 189673247 850611713 895967322 901244622 848318301 922846131 599596305 870358397 10242780 667832436 383996018 839111293 832831588 997489929 603359995 681379413 461450967 571286473 613283194 973030033 645470240 929828391 354351615 406625403 21310750 635795716 785615336 956762994 96658670 247970810 898987624 909924956 241143312 874837570 857901375 915294936 905366734 958464732 402152441 649041649 999299375 999680112 191248448 921408364 341991660 605747161 561954930 707420878 359532392 828032898 374494747 644139558 214229006 865902885 727782246 929284942 778831335 977553721 26965198 129605742 528947764 809442247 826581720 983454190 780609823 814064167 977695393 986603959 701905691 955204729 933924455 947400074 624347047 707989060 111269371 642257263 827140652 954161826 879762323 880935087 285268063 604946117 697987895 810064095 548153984 843987468 68743983 646310875 474327170 825726720 516013120 995044126 982813489 999735566 389378010 636070372 272225292 434087258 874561350 904720102 502316675 504395336 45796824 353362622 296388842 491750315 29600127 211661086 204475429 785900009 842872913 981275992 990783568 998949409 25999446 847599072 914035103 941406108 211277640 738343628 168649942 221805112 638515264 844369609 165087964 469289308 631902431 773971974 263073452 649621752 208029231 852051457 941563858 992601052 563219114 799272020 696105610 862031129 317173873 388963848 612629032 745845551 470322370 650808009 200619746 327464440 506496342 611622778 398530171 623292856 234852417 811468192 850801245 900362072 223392501 299304636 530001504 604645799 553632192 981487708 144718577 780749766 797626433 827524246 782716147 794699431 995183406 999636847 532057341 862542105 948370736 970250133 834063086 995180451 419403598 703046756 979511636 991073838 82845999 699073156 680888707 940774819 639229490 775328009 967140459 978894768 939347510 980050044 20695362 202289036 448010681 483331983 24564413 913909301 291011799 637822005 899703233 995801667 866142393 905477463 280835326 667726151 824801231 914391579 462885509 991221893 948011336 952837127 692316077 962254939 775853691 823646620 564860020 580830108 187065807 853036328 38055660 672052075 778273543 780970733 675705695 679609814 576436119 685045427 751108636 913452841 615618449 678538429 52934127 819710668 194366907 346626794 723819998 944735824 891275203 908028821 467716409 588855765 17147289 781752983 863068590 970148532 537594793 681966041 499591673 568431779 111339586 502298838 422209972 992179919 615316471 675844703 779398865 836049977 198037073 924223005 443780314 461759211 856628585 888877053 906583734 974261189 193722829 323297727 281465093 929144860 13122965 692283497 70123991 684689759 730872657 797284666 549428613 563880817 632505827 734264133 280196119 350894129 300355731 455368163 702574073 974748779 109599881 183443727 122116570 276800625 820893117 947052845 159249651 695202473 564366227 750828830 442037331 592392586 728942227 781665314 865205014 988768187 709114181 955938355 460203479 546074545 986350914 999028275 935672305 987721691 558774570 775441530 962159472 993731327 903318972 976269076 384285083 995450021 616829166 913988687 201036212 669146561 193119235 237127174 241048324 463464008 692785338 730727707 600451558 886411170 38084671 664847498 364653911 451823870 367798825 425383698 657204131 852068030 531570948 542438106 292249595 715218085 476108758 599074760 203774305 410416709 491074954 579156641 656891466 861708521 16387413 906813544 709271939 897959591 856571069 927857600 61915238 556945087 358111863 603863462 888372171 977039687 336762830 755619983 13376585 812880830 278541440 888022919 676908917 897966525 135442112 844619205 364367043 413520939 400244014 539992461 678309257 852777428 75909667 183934804 418820878 636117174 745152821 754101681 469258546 518198484 9770162 524555792 775203571 819483895 359895288 680569364 108157174 530737199 289707767 340750475 621904183 715512106 122809976 548604321 877373747 942528078 971048828 987878949 128643062 496017033 413401727 527813887 435464253 721866763 395165188 730116554 60634537 856710677 950629608 990774415 17426505 245612778 17886487 738465513 34022858 714457804 243640217 412829331 61032838 363767046 170569258 876819344 63045673 479930319 306547057 518944558 899482995 937026935 4978665 957688777 267876561 459071587 413219047 480347243 924178184 957112947 248907505 760639149 920864489 992022445 420331060 523707220 359922222 640974238 445239704 982880949 563845483 784410439 345294242 364320350 167965825 603484500 775904957 918998701 23585422 904913028 999051018 999750770 386637165 733303228 672194912 740566096 884589061 954070341 273900525 421741729 193622068 770214087 703227260 859108158 210003526 931613637 628659764 918139066 486982908 770809626 980056053 991103015 151226218 938869998 47131836 860462956 970707492 975418561 879502696 939808027 225194881 596546299 738135773 815973683 894103011 996726004 541591838 684672740 630827493 855894967 411866757 773987778 935562349 997148038 897349961 940143853 87026458 208970995 323134665 350275881 682561536 795283021 272760386 772872136 941674552 978055119 578560355 882557801 829340238 939557740 29756610 845765822 848656160 941076027 113639230 738047865 94553028 973137106 340429871 469177262 706883322 916369874 510131246 711436922 387306194 670174379 117996798 391080657 90134160 757140902 390940642 578978296 830319825 912077738 279573327 871317198 267166581 659112533 228348034 637786627 20673206 248036705 485118741 552392940 572784068 722608789 208970499 816572712 47121467 816032838 190912165 758520284 753934121 781042903 682688159 757166715 329239999 906330937 342522971 504891917 790252696 980926024 134855336 589120708 711204339 760707971 957035069 970599977 762683903 810126973 534470335 864109913 855791986 870315332 386715929 441057660 911070550 993204480 628881919 710691575 302557151 873200282 47631105 970904042 361097108 447763491 766914845 948251361 903945218 986736757 903144423 974834050 734786505 944210859 60443690 813684092 96668253 976654048 596362456 780690753 617335416 797274131 476651859 941820866 983279096 983360780 596132386 716309265 314572167 453579561 23013722 224751733 905299886 957113839 758279030 772196988 110607941 503330239 556510669 795855444 770746260 824500491 177784766 705766430 717292871 865853307 322946905 935382497 388876406 927118877 987442379 988701795 966038296 970937275 378714799 822717649 108977383 860292480 418228612 918894614 467249910 960512911 546580126 979754446 114505449 796117889 809913854 938562406 748103959 819446065 170679123 470511439 668328491 700962834 63487145 529854940 358347933 377111190 816743988 884005033 735655009 849473546 839124389 867245532 327216542 954811662 801172256 932934413 630106369 990649567 362149699 890730814 613071471 893705449 702560448 706266650 109506365 805272979 134745523 234307675 16628555 416736881 83763021 694427836 753241372 943578458 210380636 938263403 810442428 848194990 366148743 603564337 651751229 817161252 466369761 935176564 853106130 898853958 785994977 827205322 844606758 921060531 226191001 511250467 761513360 806347979 481112362 833068218 702656652 917615962 736955695 903353629 615164824 637480178 528180127 725364758 975109685 978273867 371866756 801505588 168811352 539439543 484501706 984459188 360836953 818753180 816571963 957534288 266516113 603005494 176301010 527744510 661882878 922120537 109539826 891892199 236144965 766261618 544140751 799459689 700523982 726721145 756056636 874247661 108908481 609369369 349571195 448274400 84494538 143805591 558892312 772210167 554063354 957213270 400762672 746722661 783157869 971640034 741489180 749146212 655276766 802219250 292065088 640509356 515959625 791826978 198750706 951143290 735781567 810528897 604141443 950824739 736195110 953484855 181752570 728737468 174306771 670723751 816259206 863559660 556068280 682248586 573738372 618717993 869626272 876963678 155911871 415964481 348895784 799501123 743492817 899147603 861263687 906742850 473751307 683756334 187224221 728039375 202913022 519089221 621784684 762599121 163018907 463485962 348191146 787337784 278217079 889071103 864646834 980845680 986455552 992934765 456031932 620478945 696244616 918740059 733930613 897844606 304439289 654950730 999583181 999739501 702231505 945621944 330362051 966253680 266850343 787868564 540932898 940825347 885227623 959879468 280152359 572956249 467034248 675802579 104572858 593893023 845721891 862716402 882238977 914379811 590562889 702585404 621776538 746672630 491636586 551373770 158276476 885576472 770133958 805045315 263855461 859040088 81082869 95089377 724360421 977402473 419927766 494513048 516996182 916565762 183361465 508678951 323954869 813802228 855863204 907621944 496269150 648642260 607650695 847810485 186398787 544404348 163769879 886775438 907714728 977496884 8007721 705061052 309705437 823632789 429843928 524139531 760445419 856053859 231114016 509651531 54299037 386645200 351662420 461262515 962874922 971367434 445556845 506412149 311317683 755622669 993971000 998808918 22662286 542679727 64589328 569687303 848879239 971208018 981714989 996995603 79341905 765881147 589835625 701141826 374355019 883594465 271593106 529987150 920204760 930067436 228601282 623340750 863835532 913950817 904455567 963296611 630929542 840269391 639539461 836663751 373907079 969053796 14934614 130652692 544202182 882274832 247389859 552913094 974216402 975929652 913990591 919144204 160043617 582594103 815225459 913906861 483892399 805517015 232909100 770592475 296085571 663864576 150328393 917784074 674473308 778669845 88476029 922093447 735766805 786174923 694437516 789019940 664771951 898682812 614146028 973241826 466263629 879039373 754061771 969699132 339378992 951667274 206014065 413009293 465037639 529172612 433733050 676514464 32325590 898485494 159429552 603183569 213520249 372449870 638547407 920730023 346754391 362468188 256134621 593921493 59581828 465281568 740153249 882061214 186895454 862141551 450354294 984386375 379819312 959477285 909682654 920738207 950971520 958945880 431603043 448546277 956828242 959906564 160859203 956444996 39127082 115244744 71189374 945289339 464538066 794797789 658365669 686000220 434190323 811370773 433087830 592500596 706471568 931956287 562194751 612858462 597129926 913375956 470381779 991587352 40574211 524491961 528348617 660146038 794400066 808805821 522719682 860812244 28228959 406674819 474802930 521608089 94054233 831640955 394329143 700775032 578898285 695019611 359818362 362682324 249685097 387355258 226210310 971349084 358054444 703723595 787112132 936827112 896640964 977356569 918673173 951545343 529493279 590193560 624897245 899744892 757099335 911494356 457895619 658969575 287294680 854231862 974600004 996197646 212780627 332515616 371297181 917550030 352722853 552646817 590782149 833890409 412773436 855325417 422110379 996703051 947435786 952826688 364279364 860498983 809124084 988395494 324467856 905214720 412306902 769952396 315749615 487994334 249843380 299238776 319431945 749849486 491503029 727169934 711897263 869687161 883026057 944345245 919158276 987834939 142282672 530362181 537579079 882161492 434549779 857680370 168430145 432259781 920289483 961248051 736597817 774327984 898039009 942466979 830455988 890154481 498983872 776490427 201241831 547867609 854091152 902699617 767230757 778284244 568641405 668210906 635057581 819813304 297852454 941697298 518558371 720582527 939253364 987268741 427803935 691870726 555894381 913558617 957650493 974901798 260423227 339159224 949703576 996826361 632735194 689968269 673003664 771751149 543540733 556447899 689645045 949560270 942879473 988164329 16824752 810582765 261920904 450568752 673564810 969557591 143085429 634683964 616240119 782315801 571251577 786580261 148900585 341183584 185551845 567555949 929282275 954184961 467576825 865140095 241966313 271465968 701283417 955235413 563716842 980042981 670968869 780359730 799064938 800676244 28112715 887907670 813808767 994354063 751200587 981020232 966039631 994315768 14524007 184559555 940188049 953305436 447313322 838552476 313084766 613235902 132531702 138925184 274013066 945960712 45953646 74482063 486887768 711817145 260884979 554079947 471959476 635904582 557340591 898196137 432939972 441651883 20455094 879202699 547761077 922527795 157844741 591288925 150093301 519544800 711793448 869122015 229143382 324850439 5210736 769627785 955431586 975053863 650698120 920072258 770109856 927287237 334627701 888085988 520135263 665226298 504398371 874244914 209758538 584067833 11187517 700080982 628497234 769494286 719236875 959373681 189177091 767641133 106470388 666982428 984789068 990343813 493724608 919943719 498679081 864116463 300266114 686116062 641178976 962859524 966276102 993868004 366091999 373036422 206516476 424640167 792362203 989219515 991981961 999936452 720178521 944774185 750900700 967610774 315402637 779228340 445421274 467928566 769272079 886061521 76371093 861317912 838813578 889378313 155434904 960003524 597667485 755483049 53638947 125648519 766519648 968109927 91174609 343203737 920503648 994679646 98821613 210634546 583849531 822259010 912147364 920359862 38177279 369353575 634274821 956414693 810452043 944459013 116939782 152371689 206016212 924118231 546410324 972568705 343176896 958783740 416187981 857447667 902581363 924784955 219884443 821573129 328473640 619322415 313443615 593407243 697881661 923283272 736898509 950137723 757581066 848740204 104495235 936159012 693602322 897533565 983993901 999076035 795053357 906652207 186824184 306124286 664226814 867620419 40090748 430123329 575027721 603110484 369206990 783302362 722203895 732425558 839008871 873290764 74316425 730441201 3802167 393643674 84959334 640386706 819294501 897102111 708609702 814710601 828366841 999244714 624343071 890821037 403464912 458850814 446556426 822929657 130796624 525331722 683780674 982954135 349775588 730156780 214227879 753123436 992392598 998689191 633468520 693307729 164640960 185844013 897567731 929008909 764293853 837672718 558146003 986818271 445399348 613564354 815390627 910593001 251897034 371149484 426592541 504192088 606172888 692244163 227376810 655172427 10441400 127109074 729267459 918546805 307779298 938026257 166109589 558367093 464985705 930911989 612117145 824290989 862756623 916681780 872602549 965359560 971173288 975309951 99748205 248140255 779552610 983868037 596849433 714509486 874078171 893500777 155825218 461466241 491323639 910537654 23328266 273806891 115089203 970946112 76975038 342135674 502992737 808967855 930772998 933131195 412023244 542827999 524646463 891176121 819143872 974222658 496251262 875466008 94408408 344571990 807412650 938072567 718294936 813360942 689102557 952834879 94776998 777314135 18667686 151655504 116341661 637242774 270052048 934953257 895460750 948738045 970999359 974434620 335157163 599629615 68271857 679216922 918966067 973708848 446616439 868358270 23080203 378321667 903124132 981104923 124574314 817976951 733680415 994367123 100160802 724897396 168097488 180608939 419119980 958976463 475665673 819245066 253451507 877409743 309389467 456419509 12233233 220891648 968337130 986518880 281523332 538699921 677709381 987327444 876417226 882686491 872791698 948936767 868012451 970181511 8021556 973877649 403236383 628501697 146587529 994935002 569973178 720167561 667089961 853424059 386886860 509494029 430262670 622217805 748803265 774405966 5927897 883963797 112521730 522011405 914043462 927033778 274463954 898085147 728551021 836586591 659931449 823112436 942149544 944936624 612249317 805910479 789268236 920913498 714435544 847205567 849457651 879558091 28553399 459871748 536546315 827558739 584536170 777813394 684597211 842084725 735738820 751328855 41452490 949723756 461081363 581028598 525824073 810002006 591779684 818679723 330305863 745482232 52608912 726775956 299710362 988485046 713673959 795560951 236468577 428851844 864532317 893127092 711065566 992201206 460872491 573264944 106066841 193492709 55521535 960299218 151743051 990039513 400072010 466445318 108070368 592352035 772549181 935034256 379521568 900283276 878613087 986075204 687022081 951952327 449622061 548331272 664181998 960974549 919558864 987310158 950389930 997437538 404141173 479760181 695206819 870881473 462860204 608772892 968129050 970960943 484064485 712054333 403007586 907021538 987529605 995385483 871618554 938535082 736566410 749198917 558365814 637358976 247063887 626227576 3270298 472077188 257854538 854651599 177537190 727009882 92999043 724413197 53336580 847109742 613668579 753013610 541761037 999215085 491326451 688305799 939128185 995779738 456296161 510437939 30375689 291353916 564450500 873124468 136810976 373038501 634132054 887284120 175712434 892958353 50296350 868363924 800697941 850459614 955549299 958804712 152747515 917578755 176929758 753667300 647790586 703965072 852725885 984438044 77663489 789185225 536765572 933393169 790535934 807584349 858467242 956399590 542082545 744387515 624095499 931972101 983574680 996170165 456478558 633858116 61969159 502124755 248129897 419801379 52424478 264957471 46570181 626011254 694548106 703331656 214718599 422585655 833644225 957377400 778200204 930669105 422965964 484831188 836731295 847266988 151588780 283487216 645868867 869129376 593391936 682648522 459975716 670816874 116708181 508653008 775312457 985842473 104799779 200284701 287874784 980683087 71020328 590379136 993990685 994646052 104099532 245555375 305416360 868107872 395333852 426857202 218171545 792093648 342508985 609842501 676973127 877973266 571614985 769697329 500905543 586522143 92621180 640097338 248131423 860483673 748862658 851521378 879815363 905541838 796189302 925582568 688182571 806115224 371197752 877782896 275436762 917035071 940766756 943688190 989268800 991716304 362351008 497333009 989285840 991114489 251875394 952750891 626117962 631981802 244252585 530462105 457348859 757488624 921529205 983175227 239520469 721425942 596326904 944607370 517482661 944690167 626246795 807480119 901730332 959463502 60804981 291110785 663954795 949751328 954805657 992196503 600975916 695197260 593747134 938416882 601670626 981522790 473417178 537316211 921449698 972876173 533499978 735330552 281530641 860279545 720432173 785674996 206258838 833739280 519042544 772530299 872405603 924704655 775382061 847441265 236223476 988173453 507565765 719928498 234930894 657537934 183314199 312313593 328054556 582192470 499187395 737221551 882807501 987641271 658591580 947848409 99974774 633939535 513727632 556909882 208889197 801207147 964719129 984320380 205474135 427480700 638664077 996278721 911119913 958765814 935122910 959711097 611478028 615756993 394377265 652342859 101948456 680337143 594994427 889546859 508450847 580830180 960245588 976753458 668190629 803247715 566986797 775480246 835996439 886390221 943190784 958005645 213373852 661963335 90643370 465885434 254152801 387543375 65139011 576040689 506696339 624751205 580313995 710065985 804713677 852030944 418346410 993563121 436243977 703911045 576435183 889165190 482175943 942055291 995517298 996228598 351807604 529013558 382376386 996584693 608421270 998679574 286203502 785054738 250916525 920224787 161963791 788251500 369657054 865924247 769500535 836049544 405954772 646775339 273850400 392169177 969933770 972174902 700516966 784363434 801556140 882724629 937923881 991226497 68093930 673034701 256126377 877735836 24886427 763449242 589963546 805973000 67415259 911676964 72112634 354246276 253360442 414791128 703681646 957249966 672607840 718656782 393457190 898584817 828942000 948074450 883714151 975222126 42836438 202715887 16925128 87573624 415250524 537913300 332104903 695367748 888197921 977671413 713167915 896454713 690170233 886481768 521730226 605750861 67907057 152148913 151024956 480135471 748494056 798751033 749029294 872102797 888450530 983364701 130902661 892601925 882619474 922370651 422614896 635456055 472538235 943172751 525658147 738570128 291587359 885117924 935849713 986196381 901519385 947601622 777241757 915742574 511538386 518451430 224096280 516241323 598006945 839622305 630275086 925359910 957183945 966191960 947161454 969470126 132088254 266858784 482074338 615846426 603076447 786111116 256011259 286508098 492581168 933876993 225925464 569894558 373411463 700354524 459915346 507228641 782277418 969901246 28404055 908094580 276156651 374502878 229776717 444762622 320402239 508082447 50097026 526918135 992749014 993473498 689375749 971907537 728129806 763946158 873781366 918355445 511235061 576617860 998552355 999659404 464531272 871858987 431171781 680108079 358649487 873828589 643359057 679819180 373516324 990494598 88341504 692712990 675421171 785248627 271466400 336551458 102708956 451411150 129192259 553776309 501005144 804893081 585210365 751697152 600801076 740601419 722580400 801521524 882529075 897053247 728694109 739649838 357904674 702422174 931552930 988658535 124810172 968466806 390664528 559103825 741809628 818593118 611450342 675994127 759046894 791219225 258929623 949357789 165451603 761066003 374990214 909162393 357328166 533290806 407140998 876653209 203299503 570806120 392882014 641389186 274715413 991757341 930042494 940808337 168754160 470797850 280647815 412863979 541597199 868014751 643427636 920339798 67759547 956647841 912182422 920280459 605573206 901866783 635447742 732065552 914903743 978252940 817362782 998826560 526741645 855963000 727760792 749604059 210266647 802865391 239497790 635814270 57383842 321838200 190876984 270807471 229214649 560949306 425344398 941674901 168413943 765050187 374913635 474884888 982252912 983498419 134038136 517196629 915540007 916841294 577777338 720448493 921576016 928685645 968083557 995916795 952621520 965139603 983506252 996845811 406466266 861337752 382900097 621016467 502812310 573270008 143897665 313466319 387610595 808114843 336625433 925217067 322061103 398506087 994624891 999994220 458797279 479967890 637076386 652012151 889452334 979817766 249989134 308286818 817884229 855245425 536488688 666172328 704148583 900917107 221534654 344487398 463271858 645515785 661357858 718054838 149567180 280951956 907534951 996414519 677951983 760379639 330871313 348062796 804332887 822761042 104579804 927678192 95549386 776203540 606269973 709185743 140938989 666835215 891587813 975665593 209005642 467382975 513394877 876626048 978805277 996343410 49900049 261966705 592901556 610272447 627498941 635441534 390170487 512062989 365254131 834221658 998044883 998555003 954559751 996488689 525696060 919201892 873352360 974139498 195268137 868608200 11678234 864465290 633137222 883023357 689303808 924768546 255664430 756826515 732914653 746572950 289726529 806904800 526849169 917210642 3023988 288885806 75314102 313816235 687769236 810744722 337001356 400416878 7161853 469861222 216850967 886874110 211656367 643771567 392193737 599500035 934409562 989483729 151511280 784476471 601461160 960168335 966155787 970877423 191722709 195304110 977930268 994894942 833286429 866176254 468266167 989947241 252495884 942169242 915727761 930826800 407568445 418886986 47099738 228705532 252447683 467404591 10184420 486270756 530037231 985460111 566680893 869993579 761084158 827993820 343607841 598772126 767985599 968613763 225825982 482832005 228676738 262311852 490294888 872968864 994412098 999925610 807217550 903851118 18898779 718373766 615975856 998772015 715720929 991765424 716320412 989099242 364419369 550055218 518076623 560817335 448188806 665070946 423275711 572568109 546729610 662326368 530942540 816513434 571853321 938550600 505444708 686329995 224675059 967152530 930183508 958705154 794226482 980969877 519238537 878263228 401107729 572482728 387059909 904975114 396681327 808977741 598857545 906649286 295194984 843726919 575917337 865447662 244694498 391021730 403406363 904716274 540030947 780740539 390753427 956436072 727845527 814217312 516298151 822918564 622463076 764954978 158112013 279278131 751225774 859944634 434978949 846484351 282487287 741566520 272622075 397326312 921338182 950889128 185468955 262505680 960519817 990286803 127039741 353871466 964701619 965910212 787590270 810651187 213900746 941434655 242632970 346989240 625316363 753089473 930897171 949611679 372315991 961967475 729515806 905922296 621758202 737939483 769875439 845277642 719658631 758503106 274958706 424900729 511997357 924662203 313862376 528842395 851285918 880111095 366857456 923716035 281831051 853074767 314335231 932204974 103727591 814634368 492516289 634681432 262445648 889983197 61803374 701698448 911112715 944130012 528597361 997150351 421568525 949431995 979917192 994670601 342391586 468589627 914530155 996169316 262642073 566004023 697002982 994811333 882015274 959174384 66436382 459259235 592174229 947029274 50118815 648840873 627306663 657108301 681332592 915510005 99307447 814891644 534391286 931764719 158947555 445655573 484030553 908948130 744249344 793576355 236148027 519513770 101701968 257959703 645116655 683901434 503521750 668563203 992723390 994892396 281185649 389608832 994737024 997452398 205743259 819180995 372947792 970581638 323442040 659209155 467221075 678690463 731100798 896692964 700555854 727043044 369260136 975245335 912510014 997766702 218452205 237412292 720866642 963771839 148922746 300690573 626249367 687467878 449528934 766253982 97225391 155224058 571310119 972095716 358031522 701486642 960777560 998817939 579639237 721113740 377117648 474534217 544214474 591377870 731500311 784549891 513663951 697695983 437246592 990147050 736087061 936754659 263352271 827625761 368845503 584937431 546747442 804377862 124447947 847669856 528214042 928628621 842942541 941500832 140115586 736011149 46662499 590521578 209461508 576486823 256288898 557543623 369303211 667018836 780517285 896993435 459545030 963448860 444429782 665927876 472198280 538051707 527204389 653707443 595851822 703086107 480049285 801328795 862053176 898850737 436394818 747625305 153350820 359506954 817326602 948276453 394434736 937339390 458575040 745990437 151445104 966764800 347257154 717945799 982040164 986993278 783676788 957891625 477877629 513434522 872948826 920972492 113639936 562489795 38684784 282887642 525606179 554657149 389348921 602914520 354888320 953573272 885775302 958103355 890717768 930139188 444650018 731413720 49067893 153234473 859754945 981294899 975552027 978981052 66564356 329147679 902708837 993563727 878337357 937851352 424171748 805012434 477412189 872310961 970704268 972601636 480583907 935498181 237812325 737124857 286506609 675688771 303824047 916385263 691480931 927982289 350799583 456591111 868366037 989665096 136724335 686652299 765619981 902180588 204197876 664586874 20776358 873446742 494256451 686185942 693579462 948159529 344480679 928871424 769255228 793148271 462579425 974851180 475229764 733636864 713969133 775898635 506138174 893927223 498389623 505794566 687992648 825762861 866272093 970766476 230832354 262910575 612800602 848267519 232962694 811843114 617750807 898483076 835165075 863046024 329245597 889985601 272917367 972006983 261284901 898308045 689177633 831653818 784063511 995079063 59248215 752711915 490843368 929950334 940766373 969734719 407435288 908693340 6426476 921587269 341316213 941842186 325352453 563061196 203762331 825422565 102791651 962517562 501888818 796015431 394870012 862085131 118687651 899174010 293920925 736666055 89793038 351056403 824902329 883419471 302756196 632232567 474831272 915812246 114169619 626787719 592580859 869240387 921286470 926275203 416084166 809882291 629862992 667719323 673633451 992440108 935437277 991363988 122224386 993854610 644429396 831769267 572395401 658627472 734384039 848599800 769669767 977579647 13375013 593622365 283751885 924389841 1692589 542713040 589881543 829490243 797284619 914749255 191949997 757345305 182721754 576080686 16696412 243771017 849428567 927463446 765947076 989735044 980662178 995806251 208566657 954228387 619238190 759041976 156083794 740937225 204206434 527410685 411122564 841453194 309526016 579478323 443017618 566332921 640691381 876538297 929458286 946735721 673956749 822193002 497945083 751743323 399815713 489981969 62149692 753704211 70822688 747509166 797299281 803942259 182312801 983818953 464508745 980054021 201081140 448874238 524758710 892945443 665092442 928373754 861466973 999910398 313955233 918411255 206355979 559787631 60817428 201368034 936408265 980510069 53884656 109844568 940318600 973377679 16356795 54860557 607432683 864898147 202114873 636810909 868267218 953922468 323721811 394817951 333298778 908882819 660727387 960005652 94785213 989382653 742307319 873990908 472000755 825682543 237383378 665631648 276742725 780930968 493879145 952380157 310421837 329165679 299741136 673480949 478577648 914513400 523788452 553705558 581564607 946477761 250868685 373845445 931863129 937780304 209006906 316909785 934222021 988793963 437501093 651263465 770443633 904404396 132296550 253145595 354098954 763107148 257606092 509951316 675730034 978591712 110945090 848985718 127915494 791964506 753052014 789834680 711101992 931018258 119893230 899449427 289453097 552568562 137473503 727764164 272513561 460784001 574368550 603819817 373830629 739344837 157763697 301336435 90190749 375213109 578886114 974259778 252287414 617755216 755554210 994905175 219428136 230443065 145402178 321723594 953535781 982547321 694599088 753050607 429449593 657140310 40787504 587797646 142255926 445056000 701866108 964709660 573299674 918699632 577346846 764435642 146174371 154754639 631013069 753573172 987216626 998410550 78864594 601959902 808874810 866077337 13568330 591452527 552216939 952743265 725025401 977020313 92410650 139244840 392966318 746735464 319980937 821305100 233779876 508058546 967016072 999878320 160288637 248225501 569810449 826031412 482491210 749067330 922651147 947884918 725309761 970118653 559448544 635763223 215400524 807099629 671662455 690414364 773110718 910933961 498096978 769895610 481705000 832223841 352078034 427257527 594928312 757438450 283589863 946493566 678347201 835105791 771430932 791766083 412681075 713940582 412669431 690283648 100092235 962208162 685668521 928351925 706330623 714794792 530923388 647071696 216042521 449339659 443442473 581099263 261654500 419660245 112246056 733572270 336504381 589574897 373706365 722747034 762653780 975144720 280308650 459318648 130260321 940695142 568158910 787784785 969604410 977931527 9435211 46452647 26607203 625613849 926792167 985837095 915380919 950401452 459389987 827167651 664796443 872774469 863268468 883453985 857696515 871784927 962126694 994166266 148588050 957698916 343355724 579835513 398247052 862388538 319256050 872002691 158292998 641322807 218434164 573129719 211531691 666449897 616809713 709512780 574784345 918947214 162315451 199057338 856200361 915642905 562099939 830763074 913577223 968264010 192350141 547973614 571732394 814015370 25687794 181187439 619802792 904373815 6648143 70149316 484097599 532783435 352300849 828379120 544906731 766442597 730443486 841159000 490920660 787220655 993731168 995593574 914089786 936332781 870707224 948747084 197112917 525522970 793764971 978858281 539491053 885279100 306825429 746197143 851751626 883630926 889493532 962426957 958768930 965253438 647191913 912081092 444435444 564621803 312723135 509063992 970819319 990499146 493941117 631724053 275289535 903106314 999345958 999890663 663137009 844905166 492143067 992963788 995852106 999208216 252564023 887113131 34128667 697053757 296447506 603048502 789305433 861357131 465534623 674503968 746148580 863987742 620489630 867554210 11009345 26971153 699389903 864843299 530570834 811985408 332524384 554207755 745748292 822854119 789873915 818289022 371213958 711827424 824932871 979421141 294505341 603030184 190443757 733409527 952782430 963730649 961904523 962411003 498584416 950860400 44624601 923956256 295387399 509220178 733948381 999147814 244274402 944939053 521518938 695200815 688018268 803200803 960619638 985043511 738684346 751784651 532202962 968419071 8580939 688359673 503059222 539539597 602471795 899214408 501875910 981235744 411094252 698360679 981716405 997430958 944064715 979890587 349762126 704697451 391405960 802533677 721270005 802179902 9441159 142106161 723753627 834949140 549948595 758350193 76092081 786964049 156186128 477886415 736798432 950027896 117637922 725051594 584047318 926711164 15696935 624938418 863607255 990565440 949340928 972657155 276703943 983033578 230435693 910501728 474984774 550761137 298441043 432840084 744809774 846753273 592637106 982149258 996196698 997715964 449622314 587112493 383701908 889450132 14886883 284973392 193960629 272450095 179647031 770409050 526025715 593117601 811236483 815447644 711729670 997382731 445984457 894724150 269788227 456387719 952340588 957285583 356003472 650200251 699068722 736521021 836637038 908000211 960098222 977205354 883199426 932650866 255006531 258408824 940196098 953855089 322390729 762390948 716104235 884653815 85467045 995680344 856114894 870162450 211465798 504524207 91728767 263444218 204879066 645143328 227417769 566483695 51894690 475243230 491811073 598119303 789627455 813684461 174804691 840121231 443826435 465793549 464792235 766227907 676370931 933634330 347858781 885613830 757503686 760594779 174954726 475175765 20332983 488706579 406972346 808781126 31634338 791025395 788250292 959237084 921587460 932110801 314680657 960510247 128816950 163735325 824742090 953558194 116863181 232283496 397792909 966194781 557230341 926079079 294725105 404150957 33190892 289000476 506461294 637282698 600162850 832911415 647344414 877121770 426104160 726597589 827487614 966663430 630854734 964316149 931050604 934483644 394951595 945934537 66253855 577072838 311966355 329668682 176705803 451696443 412777672 823682077 196824726 679895831 102493875 362388759 683908621 821489571 879115091 912767530 965624258 973449874 639476846 969660350 562038997 811458711 756329087 895887351 951045602 959640641 997924117 999547071 416158189 486063871 981498616 995090112 520830363 862961580 414893502 546421614 33588017 480580607 490394201 580682427 257079194 750897986 158734709 400010150 771240410 964766415 640879318 859546380 538300092 884884866 5811037 573612078 433262916 524499436 510770788 520721883 601103310 773101671 5038830 318314152 167377048 911657938 711275518 879944825 132556951 616983969 515430353 994741471 614159010 795592458 458727939 994965635 827474815 936404630 731880995 884675593 733473208 770656891 680583628 888458430 259847564 837379595 204537917 220894522 49275526 380286154 918997774 968066808 447566566 691041889 76024147 82456104 770154750 997321497 694144294 776171659 519265510 897612845 184728135 544082564 797862011 962367907 732744648 777940452 747431839 797188653 145032825 311438141 87134463 471650697 874951436 902500659 159972044 603900205 831278816 979508615 663458423 767510969 227867169 370312800 410070503 595139700 955229404 988904846 766502435 887301354 248274718 910110483 335694097 958313941 832200258 840406285 459636382 948252202 751791555 860123122 826703583 958693206 507373052 893663819 2051245 207381131 524111389 731834038 470113393 672552958 46976864 781962747 302309071 786587838 855113749 870458413 835735535 902350014 697469267 864445687 361393135 528911090 756375561 798610763 306093651 834210957 602886449 911947269 727468135 859102835 73436344 822669225 980041731 993234968 936847319 985285152 615471997 826752350 583153772 753446019 522017235 828904386 952259993 954421908 924759664 996224354 853468270 972230600 315855584 593760478 350822318 958475332 264041095 449839472 325620545 541637565 971851529 976304457 724681820 894581315 140550302 165715875 567104365 994624571 342787760 818769009 797020573 948822586 375823139 681458024 771194170 841859231 57250584 359990361 393052013 918438198 52927254 319758721 143120176 362589998 470475115 547119939 321226595 710173702 982628044 990234871 668785127 773782261 437668917 977319487 109645557 509254229 535824270 848153904 561314243 670488300 888182179 924193555 220690890 467456500 44678418 169567380 247681181 568574752 53621731 507148753 901608870 915424622 188354434 241645489 167890003 694823454 569433476 775624932 274706972 423019526 495151272 877141646 97892355 277595026 929110906 929197137 669224816 764203319 136398722 793263141 928171657 989979453 670465669 908011849 830719268 988023921 134433913 664567725 411361439 642829719 453134144 966059134 783446337 806327643 206437597 369903593 893348343 984911333 24218075 473587653 942489560 957104871 984692657 988203221 66340743 760243727 78612889 685915029 955682312 974083819 243622382 609591793 176949715 395276425 915773814 923880928 471320487 896933781 107799961 568097405 381628250 637245315 180513297 300311496 806691822 993227566 845367373 867551276 921594236 996602939 551833141 819277550 516646142 982578244 205306162 606517331 790679764 848271442 911030798 945357268 118062746 284406512 94381152 595880676 448596970 664951975 729606728 851744116 284257160 743552277 735555003 927446700 800605046 845685436 107593903 392479257 45754131 765414018 843419656 860272055 521450963 650243442 749403675 938858471 741617263 986803252 473859021 497162665 766015059 998031221 3408854 296402757 997753662 998522031 493295325 733781270 46227758 912813761 427391866 897805783 367069842 390013109 231575880 915099725 773396977 860294723 263333289 601296679 670728800 741424030 993635614 995047522 472117080 849561752 398727628 671996655 189719638 487515375 721989770 897001009 515789739 810388299 343232815 846585964 39354444 691127894 762499430 909906562 129775989 381230920 774578880 949632174 117549583 902826302 935318945 971535437 284528828 571031372 10752420 265966569 413612190 787953278 208896732 302272024 943248774 947403027 721891573 976930616 629305827 915953453 842952201 986791823 506751802 685419479 786814180 894879861 836297126 844623533 351066830 669125407 932731396 969751820 237452161 295791662 597151947 621432758 28292678 255581879 80520094 556875978 615342464 759543257 91379632 402098391 469432902 829471031 298146344 592874041 266330083 288851055 56683441 553527881 81726755 104403825 469969526 652221003 895587049 984093870 650370408 781783803 800164794 868588632 609043394 808116433 793868335 842624587 512490021 936633695 703388938 758067413 801414413 917191189 930742609 945731150 114090737 948611979 345314674 862224802 883359780 950320980 691544365 781829223 513464389 728716773 142199683 831753473 361070572 836739326 661842932 787519054 442155830 849010128 508223385 780190047 486549946 663725645 736644248 909213444 907917780 983968986 519410309 669750416 439355526 844106440 839865035 891855536 566042477 961620042 941386143 999147987 612494639 898312518 948891462 983970268 536225756 614262631 712718366 760070697 72455680 846068273 398290171 858729071 683820498 772052625 52730967 270405336 82396942 141451480 828289753 912675597 849393227 942513139 228022278 941586584 160898961 630420713 95507871 996595238 694608592 873460343 563756203 637823683 788515759 802360114 23568234 294480146 120550634 584550761 175687547 813997363 123871935 911745785 379835754 469933408 511737578 649362457 585049473 917588817 930670106 944299081 205771001 380638271 337327285 519766138 968649557 985257869 827421928 890226883 743953721 869855496 930239238 947025387 829658562 944115118 976131590 997322322 890681736 970650848 565946589 606963711 643110824 753337329 539327826 993261518 733184441 734106761 863236748 931408887 55236118 111622884 568115348 814016370 254656197 499097683 659708975 731396557 838927387 878152954 312705840 710417502 956768755 964979040 792750527 894431314 60190177 355407361 63583432 536172097 428422350 684672907 819037923 959760679 767405789 829399532 548850417 831109959 466840923 725920280 320685787 397909211 61329513 500578837 923415046 998430365 681507265 782701375 917798832 922009538 206507378 444492587 808870430 808954629 892946687 929422853 799709151 834386718 516443193 992333826 883321467 939302988 145489765 923054918 153412367 974520288 227739106 625782147 312249890 992840684 942195609 953811225 448566823 597362358 758744401 955360546 405735879 758327450 844807686 871163642 765679073 997125886 695799453 868670091 87080526 878231121 290743813 909477750 773297119 851062071 196683188 538688787 70343657 652376933 63812868 178801158 902851640 945659111 419939357 523194138 887464951 958447590 952481120 996723929 895043833 991060567 668511475 957273766 113858374 941346068 49018448 742403376 685458782 738329250 722346959 910571965 901651314 954837402 760483438 856253218 168912947 191931349 683057167 710385746 689698267 984466668 364411254 923219293 914172196 981625705 342620087 580601919 424760087 719007349 69784343 625147899 771720143 827442113 519507048 693769931 350128157 884737077 24122411 458522272 603161113 697768131 207258495 885491600 822705276 978279999 647825843 715495897 599521584 806472367 344783427 530188802 30420583 448930566 651502404 666918613 197253323 255795214 756518324 865839873 297174948 490361228 125949280 152126577 650519781 925107614 312679784 373182404 93983727 394138896 602528181 773352782 75478472 551052271 561102622 770227076 130531806 565491633 952525029 973362561 135031866 164735271 556515563 903723146 682659711 774943801 802065903 898738541 299508672 545235885 973942731 996489953 211242568 381912946 913832360 931647251 818800245 919542072 512102288 739885546 410335801 835493133 662366879 702101095 58508508 994190849 174413286 521799051 536776348 936807431 4112324 670925292 861420655 884773278 297723291 687037324 278737238 750956219 396362327 631343225 156557029 960380329 740747707 771156500 387231645 487526561 878454062 975327748 845185469 943785244 119467365 172928639 568559443 865507031 921291451 967063333 133806826 473266936 843290945 981207915 655807455 736105569 774318339 882189495 807701096 898127931 107552375 153432571 733117171 796886666 284764254 289599137 80532498 207658984 410142820 649998978 582937611 839016763 388537458 758075228 832187059 837620371 587234058 795727308 186537185 639352247 703877117 713260663 147293702 685789040 131421456 959472487 262678770 961430990 242199515 970145656 925286425 932794311 871590824 903168904 176509668 361414864 878093216 878662732 133251460 438526089 125207660 540488151 304477552 591126670 185568781 711617777 900310745 923331153 881922815 917914154 244161711 910362845 494308349 887989001 482288099 581029464 16837324 272251592 247773473 381642082 887097519 984848165 477493810 713518550 903115402 984462385 387215589 550895525 9233615 662237384 93569095 794908666 119689064 864323466 339674707 499845365 706035712 866479465 917276771 949834033 135740350 290832605 193552317 693796790 909261402 957398704 125150079 153393973 567410892 673443067 381568590 794441278 679116085 986412798 905578418 997726596 586371329 632576863 458687429 513275480 999727293 999833785 65054698 320802703 355674384 418973535 315127568 809919350 461852536 686653215 725304580 735554961 310944614 597069285 998142776 999385615 928685402 970577726 587360733 930093850 244460383 279491786 646790088 840403759 642278569 720410882 643016139 757551427 626805109 672538174 509640002 790253426 52131762 927373430 794603141 953316664 181038528 394974423 133640808 326678035 584815163 966268141 905537435 942417657 165380389 669220502 71711294 158391477 763908888 856590434 961175913 973325519 582275433 822778068 694610946 892969924 909861243 971956134 224768344 958928589 383266404 432162189 309522048 860492956 476013999 584740955 739773274 870721467 226364579 260684044 155942296 838140848 196378832 476750237 366418458 626144225 609447220 674574203 367980243 464564557 459919434 613337790 772008072 985820219 751576159 846227832 681883939 932883695 16968327 489769630 215351604 819502874 805966558 852044888 784751310 818321213 215382242 875548939 592323633 766112341 542680934 612780298 468397788 836795926 396017262 757246550 972887326 999550569 59717233 407677466 754402957 993340742 355800227 601270922 315493028 549116756 200650442 491236082 11213655 935944253 600549840 953085746 468462516 807615524 821528806 908286534 639211272 967171729 486732408 883610267 673194086 716244400 37310497 798211514 73346274 469228265 357606980 483397003 719392972 876924519 923845969 959513467 571762461 754245658 424254954 774092105 343480522 879918042 25978240 559727674 947199944 957456336 483582908 953578041 800782151 879781407 66224 34150622 130854233 309503406 134423867 863047597 345874204 600297071 525192456 923651893 177626604 448383635 108441752 384264050 948235009 959563298 904396418 910650282 917240449 935679113 933308406 961338082 958678347 979942197 879255977 987960964 133063139 778474968 791048029 796747491 935535108 966238142 179963791 229399592 884621525 932000237 188267193 853306038 846376238 989373838 88798830 199209309 582339514 662262741 906336311 920178703 256996180 832247833 826071839 826538602 748304696 818304502 662080251 920407055 603431000 630000710 873400548 949595236 423326279 429777680 137394568 590975409 825859854 908604686 638731424 731301513 465981445 957685388 100070267 339978032 209383433 833439865 638336211 746745264 692378897 706852595 29306219 586317670 459321945 844856529 944257483 998503423 585252778 594969373 770961505 888046044 807520264 947848892 130268721 400490208 609921954 736047416 355624228 649289634 213627219 777238508 840270823 965166277 992201025 995726279 425526919 675375805 210249970 747497274 243382826 455311020 906976212 958166233 75653829 415530754 306202496 853495618 515258947 975747849 465353839 781078726 888566641 911069883 267420055 444071014 561504257 622543173 297789153 781924246 402330880 538209285 384806072 732417325 323263536 599389139 821966331 975458390 920611887 996968607 315952832 510117013 34488532 576714032 407145272 749964982 734197822 758535489 941559743 986646368 405695190 418337366 762524701 988975602 433293842 938691799 828085265 891245656 304871702 881330090 126186360 858689177 684456160 881058585 592931232 941181473 814470076 856567211 773183123 879747474 49150737 856378314 749646467 881747793 128943831 195758562 369854740 749780971 669918496 694387102 30310511 692740313 892935043 961599306 853685546 875160797 37033944 924668084 415257126 695812736 112967860 443022194 498755408 597876541 930742402 952181715 999945521 999969057 419910761 698530105 612157336 969700536 832523517 875906976 523028317 624013095 189095051 460387220 650789388 659396673 117112030 603462051 525974154 678428018 216852192 495509404 635179894 946071143 834959836 908361915 800827896 984031131 336586030 770974150 885521282 938651530 421423674 500053375 736062357 802805820 924950576 994871666 977059127 988170616 116009784 220004438 246548787 636374899 252952848 426164045 856128507 914425647 303318108 671089876 10867462 541960953 409786006 516596929 238448739 551517223 567113887 782689333 710371126 907932121 296291096 879978251 295124463 717629167 561264570 951781363 953289507 958829620 747437363 950806777 371859026 627821229 542768620 713006344 480486402 649472288 731572342 822451477 453572672 768257134 724526271 755136119 772798049 843386728 57584908 730310281 298153943 572843990 376414379 522024016 344767141 388219362 493100256 533492777 117971555 187365461 60859483 896017139 720790018 967557120 565242478 864113722 401616707 665832882 74306537 105720627 710399252 777692464 218664330 473331863 285263090 941359635 864086762 999376562 886870532 945601026 7010637 361503306 322131546 956899004 696701616 914373751 894258556 895300095 4302382 404018052 421559336 765419329 910795959 919488070 171195590 798383626 833792473 981763885 108821593 478459586 6557020 643487824 110972248 679853653 967572529 991616646 372548114 752239117 334371370 772905265 427337292 851755529 930377853 934848847 95189645 97630735 317117575 536822973 134914447 410687703 405084094 642041275 85555956 550585685 181160842 327256249 818046188 820775135 382573136 549106049 223155686 513244955 347314228 901370881 640550885 912153333 676654522 853063026 668164483 905436932 147110271 964015662 788580875 947284043 242445122 937785528 255535621 934652684 977720844 996252680 267700153 407453329 138861189 801438882 308272517 485355467 24777116 338550449 478436671 881329364 870411466 963116206 619482799 663834133 853984305 908796707 550370303 961116160 953347255 991153524 45415352 413896645 150936654 334623491 468741408 713684889 302535122 366433000 12104190 904976857 329307691 449311187 704058934 945801120 584820614 912748447 496061047 765588453 199620482 701096473 210015336 497656375 47191875 986415741 712466078 921390563 6082904 913064286 222181749 584233262 432979510 700991406 182758354 524134304 765047571 941319046 984282798 989107778 902752268 972369570 257431639 307365135 687838333 732933900 180970115 788366576 811500569 930577228 911659564 923349922 174723590 473627485 780034320 888154060 295758183 860894115 146770389 880033800 512763940 868855371 894404601 983030160 795504362 856098297 283635973 722233465 444985085 713449519 150615423 950405467 511004754 591139814 399482610 498528699 511379669 667369549 648047279 931292294 89666383 588746152 470214241 572130205 912583146 983251102 86728222 564535271 192535925 610423493 517501775 961223666 33169910 568028777 960833630 965216366 298079762 423691913 971174527 993858151 397251918 868409297 345296214 457280965 175617635 274152696 715024023 883680299 769773251 929682797 449888563 810982168 891299539 981379326 34562546 695043595 932555133 989543356 643767154 897613552 947327947 965468227 682740064 988346994 694246711 809717893 970421103 991041623 243644087 357611322 198847037 422541999 371910797 437172118 428791237 659704134 466293421 817039922 840190223 994561899 745247939 960804265 724563527 792990382 329911574 825497242 6767855 717764097 169599788 998197140 272201219 627393544 377150511 868333590 819030491 940895494 602831405 781738847 500663833 506617016 540588648 628228861 557767863 573714270 311636526 380039550 276734132 652133513 221585190 641209190 131304503 921134650 42135850 329902880 642353233 738709181 640252733 682781857 521759652 867438671 765692534 771246004 837711939 964875139 426910592 631785134 881978134 984112187 278102050 912355034 355823806 891089379 591492934 992577768 756343 400755884 370943763 932026941 280488457 464674344 173413581 979247352 875331783 951193770 490618006 786106116 66180862 402649152 262119908 946125407 733967531 895534081 829452776 911746606 654400652 959318852 361172160 460447084 820064253 895394698 599922008 961901415 45315432 722220291 683818282 797612449 432646058 994958602 616523860 638768360 303634672 601432630 933294258 953742934 652411946 904561793 825776301 835583252 334622114 768887886 564407480 838268078 38201903 449176216 569121430 672076832 113392617 918386014 16815482 405961356 898943629 899446463 615051306 939575958 835919613 975547431 69995878 228001131 110481172 923150792 268849295 755059008 971444006 972957548 519116663 694203151 168158362 634355879 923844097 979995844 166297271 856346669 413431937 943644886 691881352 814277609 128305349 530880449 141847770 876800532 91715249 906820216 505942064 525485510 364372577 473303462 176660745 935892043 248774318 907082037 91714434 959847299 921538610 973615434 686405852 781109876 562143756 913630363 216712073 812821247 750544505 876660709 867931504 981777474 974966811 979959023 625006096 901340474 636863146 763964266 728865156 826555758 858598390 960695120 605085842 978747003 164537379 346635590 279741 705091563 520668576 775241545 764591080 867241693 846298185 995539924 975695590 983661873 162549240 317604075 205970106 484835579 694307890 721615581 101149387 590558829 490081151 780863124 952367720 994124463 134905849 987676690 885879964 906001255 17002190 591428415 89765337 920601300 485978859 961727830 862105030 968090642 381686570 886640210 673990576 896181824 973147963 991425500 699152568 979043146 649752263 802638238 488737081 518927887 375279744 613380001 200723713 715509877 23690529 314381058 914805016 981860265 657081330 861083287 439244262 670558521 345886617 610502679 38052191 155645537 583731214 873697787 152212166 327439939 325348081 435999379 640473799 772148637 65424025 243573894 95353658 948197573 623706194 958894188 366666573 543406914 44870434 436009695 59818888 378204195 864034388 951314790 659706499 800846476 375083184 772182225 174979472 441315632 545594945 892597770 470975840 563961804 219957759 605736408 943037246 981443453 275776906 973685811 479338178 891725012 4006718 459806288 855912158 873713932 694563534 815998399 550234081 888287859 908440311 935817665 624521414 928626108 732724223 857036118 15412917 939222231 498422658 548665228 105134650 792208034 975616880 991255019 235061756 376258807 984518094 996563931 802452303 872772287 601703421 859329376 304894507 794039901 835687290 942852940 516891319 660219573 618691530 739552934 231353977 459718938 763778667 832681822 542020445 754793096 39835912 916481233 919409386 973395836 621829191 719632403 213093432 294074933 260187476 619204217 200074485 801508922 462399486 835246416 21075271 992821121 284798462 430415661 5438964 544755015 270786043 681971632 529830135 757350050 301453982 570558504 521915382 715738475 475922806 809609515 440072492 612220548 417731644 710091040 97166572 757874177 257832368 321380170 15713379 527929362 323495275 637940494 235084566 390980117 222900771 284444825 257405478 698071924 427976570 874567347 603649776 755593138 385940494 742402495 710892816 765830142 243601213 880466628 417390251 530483857 806615702 867467897 535341216 912068743 395265774 567877503 892537676 901211269 222328866 519562022 339192372 835254583 780679686 787648135 901020020 972366911 370131436 632164026 28114430 730214213 86008744 481226027 645893559 904782096 117691567 637534281 849342075 941236515 543198789 828508951 966514303 974538143 937829954 959002132 559709863 658486807 313714833 544657139 646656467 999660022 122846791 764657401 125123232 200035468 581286141 705906733 63905814 465272512 937185621 957358826 927371350 986907029 432559729 502024908 593268410 618959066 713680774 868834057 842491804 858500489 672352362 923545214 666019544 770784695 173752615 656389619 312890991 520054260 813557223 843883521 370701829 819177284 338067189 806249797 306335004 515279161 182512868 801997833 923546533 957221255 230377586 813437888 480051620 704447156 174227802 346300733 997182469 999132008 829707276 907402481 271368452 941387133 560024005 868605824 121939695 872539668 2613286 79581434 235007937 719971099 147927838 157644690 699450239 881242402 294761766 440267325 897582498 929566617 790788598 836639020 423029369 911341216 705183379 818764137 460603777 963306504 841371370 981669344 448919384 519604635 677425511 696107218 747663756 916901585 611138786 680052729 114463532 761071683 925375376 966490069 213665532 640209169 887256784 942356281 209737361 224144838 155345473 297783941 360331080 533213315 660932420 995956498 627353682 822417552 712418260 794863970 604790581 708225136 92984626 432908558 170068461 218705626 943188331 996294988 819399831 853893080 85183301 343206592 973666826 981036939 187781035 284932515 207484592 283854195 656214627 880907580 143968818 748875415 802946027 863422498 994316665 996910627 569385159 585661246 144135875 753511842 420541066 952564387 513814056 986979039 825219310 976284959 730168212 748759113 706688605 970528874 897005879 954605292 641175567 797071865 419346997 779324152 599053164 987811876 446361 942453852 541980283 667504846 489156693 851445504 362374720 669597948 84287787 987348441 394522116 963818689 257293479 794737878 844398550 965203883 362164054 432053941 72648586 238273247 830076022 933045462 681659351 911254499 933892171 971903980 320123406 636529176 893412104 990403256 221311180 991646106 644998459 756214411 822487217 876026809 887126797 957240395 63947632 629267906 729988883 914291309 379606511 638992736 565316282 831791640 357938800 722948479 35439676 746972134 345561144 808878642 330498542 672208504 667545598 925002277 666262472 796792797 698561148 816947510 29997930 263836451 823112691 986620949 21526783 105232568 209084792 367273873 286197636 715166355 967830286 990619945 68035710 785666990 868628558 900323572 71196728 694736284 445907415 562836059 149765929 561164145 648460371 715268434 140353705 240887653 683238061 775166721 515554751 683108829 238955977 491193048 591120479 726548615 213668602 690180484 268224520 416174933 119946104 753827045 613476683 909237540 105708902 549482981 966613623 994308855 557642325 866009747 14997353 660298969 942948409 972690861 509630219 850331544 40937964 154183347 872541373 938784280 478823969 829688823 782446466 804682237 159210971 474396446 247476524 826206729 509100917 574005488 76093195 544406417 943657936 944052575 489875081 715754056 415974451 994001368 414055106 493753650 728364616 793702909 540075281 986293617 154226441 407152043 157861321 324285402 77577065 909690676 803716700 958204080 216200396 347978079 455236287 982650309 422521252 842889753 147324615 890097232 931801536 961935665 613003683 721642779 468064028 920023730 366450429 793132700 666974732 825525606 971873594 994588369 369906228 523327605 989882343 995858092 541082396 795032393 815328113 996050206 475098867 725122270 984245204 988408517 867753356 921822235 315304940 423720166 790432673 865306336 700018991 922687146 181857356 864248777 355074336 673311220 372689025 834713991 56220253 973846347 41716481 449752449 152745517 434961370 455347263 716516044 57927386 928900863 417228602 904761448 688583302 899421579 720017134 929896877 356497143 435986671 395937131 949891257 530338587 655150990 646706277 862425983 513039304 910740638 486093868 904661574 515153700 904602001 481534229 690158893 536592215 669177878 166253618 194527284 198961706 408776280 232533259 685046280 100823163 801336363 275684019 591782006 507028342 856016884 1098344 337703358 392791864 706302047 533468135 963236757 225116023 235740507 909127017 946558745 805684403 953172517 485878823 507047432 579126523 926783971 256460267 309500957 342151894 861675863 766807913 866794253 604058385 859058132 825585531 845814064 490139283 770446054 965630902 985183053 4692415 863018758 72107216 415608637 339373748 869643519 464088160 906456647 49443971 162943902 338368008 602691684 880018380 972430650 913691672 959675918 396777667 900423435 850325157 960001366 342805608 544925914 680739071 849230006 104907547 548660042 668231876 926669469 682102902 875953293 824145476 846127799 429816850 951271206 616362679 800555369 578213640 849589905 145269973 726905056 637140600 731561987 305950043 390050901 689827807 733140748 70761988 290797061 471464171 837190058 114072910 626083838 268356495 703394961 317971044 990672467 260055092 524860232 692205735 996240454 336984005 375607062 684649673 876671705 118386729 851837796 542808330 860076251 283515968 651087479 561218509 791976941 724618307 737945728 551054769 576547339 973466555 986516435 538670551 708704886 994093724 996548265 50302423 604293738 338650179 625786953 201694696 288979311 39893117 434340321 316279271 535125803 432504411 600261609 550878289 620898763 401030599 586168311 998638404 999514064 967459035 970983131 612567486 947511371 887145242 914170439 263927976 530930251 733032247 748846124 769691068 872246713 224550344 576317768 797946592 903275963 588704781 639098190 320525181 986236551 616237806 950514708 348694159 943852667 596143643 663412214 617893816 650094692 68723250 865175855 994117586 997860748 948031136 981591387 227465982 362866463 929519635 985614615 124044282 373789293 38819776 559666496 811424727 923841770 408316825 712633617 983408946 997688430 378786141 636348937 561880182 809872687 133619937 718084526 616195218 970422528 933723931 999271733 874285519 924497588 550491996 703234834 416950672 931348191 358992220 672501612 243776110 799516911 270157325 697063755 772937732 916823693 492896347 639007966 450672544 471663648 575287336 964396973 260189505 981772459 27284326 412586668 555952165 703918525 865975249 978399894 174237073 422671442 814891901 887704610 180413988 385059042 286054197 558080151 942742668 972389621 153605446 856172807 362338996 879779417 977334559 999181783 827489773 950804788 465236606 472267995 122116540 604058263 1519759 344018466 907879839 927671499 440488782 855404038 602105245 753944848 21433335 520392479 52686248 317594180 66708784 79193787 127088579 496164372 477126250 933187921 529894221 914230641 317403963 553495149 29359527 463633563 708445272 923369772 339239332 741273391 845155082 910445660 873444644 874590893 314454251 654165912 144241253 449507972 619635715 744227408 924339689 987041585 959993261 965021826 121266342 713768693 974882524 994793545 117085415 670886119 28576428 259593143 781269463 885754904 5683674 368574534 456677763 627995508 711019506 858337520 618530702 727924937 450090631 709201302 146665310 327009435 110515878 366439868 661018652 958301560 672254777 759054535 110417412 886533041 916409235 960582793 878436114 981960820 2922481 178098804 15755700 948764422 444369063 846971208 806413886 884982282 391602152 792050880 381836503 577332999 579080862 882068769 5970604 559055947 978030927 983594908 668814638 894387828 954994447 983912622 635655730 639146947 157187410 762499542 891019354 945663205 662829862 830686911 911577906 967617294 76681206 398292843 701060511 745687103 872064318 889307367 124603749 466299450 365597607 930319940 98441783 734128050 406975897 641503815 501164594 788493933 630785834 694292431 748764598 772962998 413107305 474711316 962543496 983924953 967391936 979303209 442380057 895276647 73265505 978853812 168051307 237605597 116576164 181635122 626171958 665504291 231922251 884556598 948251073 998124340 133831131 632401406 93072767 290341688 905447708 965566266 111909376 506712760 793117600 983902764 448277973 727435198 951568155 994898239 53817765 179652314 506558701 822766222 737574165 906055349 790490844 979616640 897583635 925600414 825275472 932918833 501106623 799566160 914016261 917371970 946537487 958229125 517525304 816610828 572620955 622590896 426963195 694546539 731679523 861786450 78659878 278700814 758087145 766024912 697792281 711691192 388543331 897901983 34782680 111432498 606762747 619817170 205759040 421124725 631459611 709839851 198491447 958315896 79339741 377112215 460918951 976697870 460863782 469775168 367727457 546463225 883027318 914707625 647912647 814931160 769961435 946749545 437374142 531811869 902065619 923528695 731184870 736856910 948190169 990012203 425349926 995637077 543733567 908062200 467771830 962461589 90359878 975572896 331566433 615828153 714215057 721179539 108415285 302370288 18228562 487107915 543578348 888041601 776663571 801134311 578678509 628433141 421063702 899735940 521300636 690637527 829565188 929041348 524268105 648447947 313385867 768504954 749215090 752666997 731328279 735977346 747763771 895992516 85540714 984991697 546559136 819095824 681466650 833559078 819749666 824250202 271804965 450751051 619158682 986806879 352237807 933114053 932405151 988142618 318715341 937343850 722339586 750927444 127303337 766403611 326836797 963626385 746207132 965386797 197586148 511790972 595035625 831842785 194998225 743201880 494912514 670992375 713521967 838874870 609988269 817716351 346791474 467056300 415925703 828051513 48360862 123680378 478006355 967605648 675614962 749894762 319176531 568504789 482286724 892116314 965985299 978209899 914237610 915714970 414711177 940311517 347008455 535492850 223342964 444488153 835700900 890992844 456973805 918685294 961140287 992414046 670484888 709402292 547808832 845154002 494945854 536238566 196415048 572193862 120360857 307455626 569604877 589256136 99305078 744655014 660917548 987583978 999215357 999733885 848459721 955655244 330260275 778493981 820245315 992009657 601797719 650541971 991272075 994736929 502823737 517540613 212287541 645886923 85837098 670809908 224783036 939552250 432480459 549202494 159388820 746823976 703137704 728378487 858419587 879960812 414333439 732116298 729099430 911447261 664891573 917961210 580576687 944883122 323025571 331880549 686154136 797436464 594116812 832683419 490938177 561837482 298027992 729449241 859555800 956766344 845857539 865681108 12957890 566449355 446469114 866406669 237943069 741111507 691064642 709717753 69802634 735253600 818562580 824923785 878436507 965846521 817343928 885628890 949578617 973415181 981900447 983197170 840870249 842559841 514557344 817466765 784719104 787421231 808113857 987681096 760897247 995007116 471240197 793362938 539012146 556289363 380006871 677654233 71635456 737174263 566519772 586058177 958417374 983000733 381596178 943610251 305898781 852580658 428005784 473548480 541037281 589365529 758457457 864257214 65667808 176028136 978220506 982578626 34814102 452227286 718526307 794891774 419353007 914546932 685389552 814296196 164323240 615899510 794780618 969321696 804013743 889607323 302779047 850012844 462317899 590757369 723476214 910530981 633770589 828452616 637553789 792564020 327724945 522973594 829107090 852937300 734467247 920874484 558545964 993056333 38227779 135940700 255089532 900554741 433503993 622723674 709651634 944987108 644929531 882516004 540286720 556976073 656493643 731479705 82462584 941433477 864427685 914629668 366666930 449220784 728372527 894209817 808578497 839725736 760263604 837218845 262834788 547505061 652384456 969687372 182061299 317059161 163476047 381432168 360950404 832688682 808547847 991176625 374860607 389970814 340375028 871437113 622758847 980736099 26544484 455805005 663553839 883950265 175763143 610773316 580592108 684598778 463802047 520604754 262888972 700066488 679777254 807396490 338314089 612548967 967515022 980821682 256214516 426268078 937012506 984899077 682222303 962334683 369610516 827760555 874569869 937097885 572541351 708180879 894705389 961195904 109327984 374663813 756764741 948971106 227049235 608176112 444702029 862954663 209985623 213475003 743223170 750846004 847663711 950419205 126689775 160552772 522641585 639574585 219833026 588054695 938535452 979608812 222277656 919609205 584461411 687684585 634857118 667555127 562970735 902188358 342203144 617085438 421838773 638460210 869944837 916198448 825239663 941557642 816245287 905158766 713008263 844062837 658560294 985431691 608506156 681298593 75235603 809974137 472999923 770085794 885390921 953756253 900171425 958824750 364218666 754215860 456418073 823617716 253865241 928881647 835770282 953419310 260752989 271260360 960770593 969754108 213479374 828582449 746838073 976550059 676262554 881135279 530769613 759921152 301815512 786284418 975160958 984037098 897199532 969986825 988966101 999644163 751966464 880927691 178551888 640750937 948768538 970599325 819732176 926354012 596705192 902645451 353589463 868938625 138233303 923170956 58001006 527234936 482540528 788682273 668947589 851404770 203940718 423340145 561514041 745254325 814058494 933323452 427057194 595530785 970904178 971490817 716374884 968276602 65121570 805494878 503310548 643230596 284567072 916433607 773331420 959051184 398149741 626711586 623308598 760475111 858086962 885799553 615103211 712749896 165514411 281720125 228942720 348012311 451580175 487311560 800741305 906266984 569105740 695935086 559836701 793013135 134956432 385076481 401511597 961520366 843910169 998718586 323484547 877616380 510808178 588799327 116215180 688119102 62173422 914992963 35407200 482192729 786616097 803082755 819130531 883616262 175011678 511128774 116915454 587511680 627103668 728422690 84552683 95554266 738289200 971952265 886463329 984202196 928563029 996716701 480976316 598482915 449480940 629458590 986940859 988829151 97988467 198648241 457912040 674991991 15749133 34361034 137270736 890046631 362846661 654768550 282138509 817384351 233693144 307888513 627425727 995860491 236654280 837010286 945998044 998004580 777399121 842227125 587656095 657394377 18015118 134953372 147975088 980286421 518873355 848765598 490490590 533237998 225995308 970644719 660794273 966308995 4872782 52372748 796114402 854739718 676169395 916082595 754605900 983625050 881767665 886537194 82662725 171525778 220328820 391923371 800275148 944097156 493067237 600828200 468717931 713723308 188308283 345320071 398400825 628308836 256170524 538844107 288189541 736398964 688441992 843632868 190696169 988840800 809289613 956189339 284756242 966593058 412804351 790385161 17646365 184693123 296728844 428514839 978740825 998400401 205834128 349063306 101530879 790096619 906960115 933325418 507615148 573034067 213217203 292671590 145372879 778723042 150600039 248727127 172427436 677033778 937056001 969431033 655189923 867080380 651545766 962703109 432519673 606063919 792882875 966578550 717457052 880008463 761505833 793242746 672586435 928407526 338663194 899915545 452630206 575782253 737345457 844596866 563128995 896034898 226455675 503522098 766004163 963322625 538030920 841985879 660617853 966383167 455154985 651926975 893252394 914900049 535174123 694110123 741854036 755807552 486689584 590338968 862698274 923750445 169353650 556712731 459372572 920917876 98022850 660799246 719220888 790391278 202410840 768155093 408530434 954996659 507870739 951748465 135620351 916323246 384901749 667172173 31310478 607023919 291396811 633324424 556100917 567984894 395545389 413425229 823675038 899504148 52992504 477970958 281965194 889511034 190331627 681781439 754684325 885499447 249679697 485521082 635758656 879568056 606486028 646702672 978172680 984348144 727636388 776353003 641844594 732929274 309186741 417403912 667460016 681546500 747513321 996099196 292436209 639556158 10186671 581973951 878733073 881962288 732590949 984341398 904537448 971593605 882217463 996279397 58458158 150506400 12464948 471983982 168416578 397673797 681760162 886171612 120063661 522685261 465401050 729567201 444432288 756963138 858613838 862627558 664602658 928032405 925687008 951505238 54800823 767362349 584722634 949603664 25604925 581101769 512401893 679060107 25656355 258067759 502603799 739860258 583209934 769017572 773560044 885629696 818635022 990254800 514704589 655096524 785808749 998432536 59223523 207484360 779723087 960580861 846563264 962239625 183476870 286371407 520604340 913675382 85373002 150792322 411137296 501032687 970356206 997867665 712835444 960911110 958908127 977787511 716949507 930751295 550903301 883809192 402025902 952147347 892803924 907661896 567579542 787015285 314434242 852853815 94229775 663923836 349756369 535427972 972661289 988882411 734635015 991977258 297559869 386562687 937701036 969315867 607318993 982418878 179302053 329493828 75476280 307095873 586732364 630096860 361821238 467523378 889515095 978478928 725655916 950419293 344968082 450877619 568750547 836485304 579938996 692488586 616577464 857237118 948524744 988501372 511093541 542056520 893928449 962275463 25371593 257790840 111757682 600986283 793819662 956125715 964887635 986905061 699054063 715160739 232838560 930934918 946450991 963846083 556136413 629288181 784011741 861372839 27547758 534035075 831906692 912876592 455077672 903171462 673241467 752885189 464354339 497418472 35669943 268230274 587308617 805086398 914569275 996719975 628283297 893042229 284559214 744451774 356217055 691264879 527312258 941152434 872213141 890230749 481303210 689851816 461631089 482399268 106005231 636117383 394524395 716256412 330649057 832083541 571634961 693560090 455283436 559860977 820157268 944395627 372039037 491026712 632786461 836946305 689311581 918758609 222443992 309143734 521095066 949766519 138512568 256807068 868961955 920167841 157966007 207381252 184192695 568299676 594424763 715095721 945654483 955525643 389255880 442551574 848378486 986466393 198124296 288558283 116569475 315028629 847201626 918988745 454604317 851962042 243515658 535783724 120960702 582536990 73537923 178558463 807451620 910495612 404163870 506325967 804193672 869277342 583165833 952040930 180770464 686104628 937367889 949676155 882743475 916704159 675476861 879878859 238649772 746548337 715606950 815991287 210361871 295467113 871761733 934503720 619283005 968917082 80290773 101508890 348124519 669955851 450190015 822480293 734475837 995413154 573003529 797265055 184165171 681380429 592548539 935828338 833218261 986058584 106937555 297360990 466257559 558585922 678239342 972730031 429311322 967975315 775007590 985058940 696528548 768543658 359319392 425077275 554896848 722144081 616178470 702872163 522680751 649678069 982265401 983784773 889369611 991822462 73580649 817026337 670659826 785649992 728086464 728909788 4927413 726059560 787431305 962116700 542034290 672681750 82865132 707957253 739050032 744134176 425712755 847767289 1749944 614575658 821408334 908185273 721727957 907592265 870747935 949872091 230210534 544074058 477879128 586699546 249861101 638324803 983085373 986320079 382181387 646054646 142909946 296337551 204768581 564290784 850206330 909354624 282542284 840027003 436296408 577131578 589283630 856490659 501013832 721640711 328748757 468292149 377938628 764141102 705631695 713385533 540675995 857093127 165951480 851916520 748493309 984835456 378228318 964709102 572733327 815502224 843539519 961526618 507799397 592156171 943709374 949382035 463005300 843979207 18801843 55349266 126117797 537276378 953982590 958883263 634908791 690076838 118464242 383018360 65872615 566700222 74177556 115873646 687143294 817094455 324132681 665398422 594193176 674715972 47423190 434999022 890261194 916680640 810634056 922667620 271148667 292860619 44513605 132025350 968003121 969225811 648697725 831647097 81387434 508792764 755483792 956571816 891431533 919977118 434795733 662152761 119405462 283249818 573563881 823918147 202448468 637081860 217740395 466691548 182617917 659248623 716131571 875513252 339580786 463414705 720982260 753237727 962989285 993899733 489206113 990303750 224897238 943491054 218505419 280230677 648637418 648911165 639832185 898173620 45803619 957377459 988461866 992725898 466398773 758057412 798356349 830515952 741018681 772775364 522122060 708911013 150524414 638807149 604539857 906031914 938284097 975642405 573146371 848364014 788658501 980499258 705316821 893815365 107026631 154134415 56034485 521385969 643569581 819454851 88845705 748086541 475104423 753802393 930476669 944336421 303042148 575496813 230246763 897183924 336888397 994666571 121392576 625535531 571625007 704550915 356753909 893013836 347896564 509429452 62245183 463972224 937021136 970170823 402341174 820841192 147841590 539877265 386671773 522102651 403550254 468071239 884641413 887749928 482437917 744346080 70149967 873480022 896977209 904471199 423222272 796064931 680960785 962572525 505053544 995114882 605858004 966609937 512204037 561362500 289603661 856583916 904661789 904804397 279297167 293283738 960148720 972099092 32787368 540932901 294784666 495486948 620818317 761152265 108720227 907254180 25184748 957458070 924458868 977720735 630884910 754219511 941532157 951122377 764737595 956341184 697545277 834724066 734248847 895791528 595604533 810973206 335343069 654443801 131064029 762666329 354345051 765785937 658770596 985190284 35909462 437352256 965590373 967582523 789099388 843019915 182322951 535392886 936162857 963710879 302245703 879725951 442542918 667263576 854320947 856662107 220999984 242213779 35689196 706169840 837481366 842844547 709369539 795573977 38635589 390031934 550201118 599326580 953258422 990159511 998273689 999598038 441840190 617522106 882653504 927372065 742775075 953884541 318038410 616647427 476759348 633100914 897294364 987532235 777334304 898426120 548990088 646664197 360973372 502735070 133348988 143994284 997714587 998636102 396293885 912736343 861614266 970204056 365315169 671304468 909405658 929683557 423569332 679187813 697692213 774606616 158944130 618634416 147427288 971884441 350326224 469329458 683061584 764892404 110960499 179978539 939277467 961909883 780154497 785143986 416552497 838906006 433880960 632145696 226250184 597855557 497678712 657797054 117154538 869456862 148228769 756030999 673329949 946693467 229613684 256165955 473135257 779728336 235867403 505093224 997900879 998122849 107518335 483559334 423372877 879939152 885395748 946925359 25326037 734471360 729776442 973582732 47314013 866222271 255503042 577678341 683537000 838910965 638433028 853130466 957873181 986513080 554521451 605370329 469419315 663011720 343522247 569818273 511597563 614558186 93827594 283092089 426572871 810822328 66469393 440399721 971204836 975751136 912035505 968025402 465914743 741486105 731429793 845670589 695640922 927222733 474784925 884438063 275826957 436534314 833663236 849658294 631680930 976633884 34097408 897434129 144152425 169378119 801369172 972142259 935241819 981402000 388335275 771424652 357361645 910159600 176531484 349851831 623854678 780602210 223319894 767058679 722198576 802616812 534983055 655056896 175123539 886372085 470045001 973122779 169798952 858922682 852783338 941044709 206398968 275439710 102047563 315138842 423620338 467555361 933019781 994983186 950013162 968697518 753855178 953435438 898760004 950508928 735136729 789358178 6770644 100780590 859509967 936810479 998615961 999800708 866592210 940964106 582061923 990018696 649658254 748428569 519101440 664022110 740511359 809498861 588684239 809287902 23597338 905746686 964926079 973647850 547630214 630018870 140195161 955024652 566422561 873055176 89802675 361259422 826603361 849953608 507485008 525309048 644390849 984000093 168663901 773195540 768171692 938118900 669393677 861787999 115849715 162476451 834898416 999693572 556556713 831007537 520544165 920264852 43169949 341494676 336788243 676879336 133263157 549712994 688349409 743491374 579197457 842602056 545602103 960037330 884357050 902173439 112531671 615303597 417574974 575890383 809431705 836422756 493670740 923534388 841523002 971195874 423835426 570186209 446638642 610931081 583295031 844808395 795974931 841739867 885778951 948187628 452243443 550301164 526799068 764465775 597182258 730782147 380838756 686088900 462761598 927722059 207988822 941036248 749101227 874159092 878145214 974458600 51113157 761108879 588876425 650369567 546712426 631603718 658596675 979849813 72568013 956001259 497621232 921858088 230805178 252714661 999722091 999733168 410675554 818257788 970927939 992209761 873131556 937317488 640043407 913586390 594817047 861556176 326283428 753233006 241872065 914761799 494517412 612416903 692754885 898251013 731448950 834696319 439083256 896918612 681052970 953244085 545813275 668897735 453211810 710113886 309010278 923489456 5358951 262983576 119166490 516783509 105101681 221177525 727281829 986669377 294419543 327812267 377316241 675611559 587241010 966300175 315168755 875423915 378182043 747589447 600573394 850874513 77863160 161317175 962047818 993818594 854056136 908800184 903557686 959831453 304214277 696113366 290819528 409172642 969481860 971546597 841282678 936681702 982315819 983037865 283053817 708391357 104711482 331116449 118280445 123015405 441157305 547674860 350086158 568567607 473165832 978316736 689872168 828339184 290992179 824983668 571391893 767140975 403402843 680004363 189532375 411781244 894244599 972290329 624028529 753243904 243158984 474559371 463481881 623819708 827282195 991674024 288361604 780508625 486121790 841196413 448449025 595334915 914387235 922274984 805887298 967886716 212117759 546506690 100069360 507339089 361879072 599937538 906479795 952429243 797663576 894971251 23825915 194969119 724855620 898680845 178914853 928476847 331587660 645786220 434141606 536969490 110675858 518516120 148262470 581401081 78318868 598149535 435698684 524568467 480910822 638805981 558436652 735069412 216333044 822113886 104729792 120237698 378405960 605416211 940635872 945942365 332112140 985813345 76669114 942289766 832591400 986719744 74207486 95723802 670345029 756846793 642638285 805139508 718809106 828659587 666200941 950760081 681475937 981702419 250556179 916114091 76243767 640068247 230851648 472615557 826210423 917536884 76052075 767681273 996552034 999840372 631146536 995256501 246942854 767873631 445282501 677953706 423768285 562807412 688978081 917999033 428228434 881092361 293868887 309167648 555413100 748768916 332523549 670814563 610187691 714775818 747604372 948099249 582388446 966040098 648541376 768273680 134447665 233817968 754742445 978083306 622585695 872694033 736227070 952235112 275598189 541543376 136011088 823226798 449126542 891542425 128250563 728988148 152186351 259287159 159592270 980311641 565568532 966290549 476494436 592306364 219095738 625949746 225845371 283666632 618395169 945904720 491056469 575608590 489842115 518326794 953973826 998953262 813722176 835019454 59136376 822433008 66486731 755505467 388284856 532593825 676212479 784401762 454872274 602091480 727924288 749531310 287350065 295439955 221067220 514467555 11130494 743789871 479618156 943228238 85546508 211597992 96922380 896079033 328667486 607457566 257097222 292935816 370777580 697507288 601832561 823297058 655197898 710981611 57309825 381364520 846413989 847048573 291301462 607384732 246159770 515418817 710989918 730887123 168818728 441860513 957259115 970754833 354757346 641995422 204864711 294190401 471603992 693266093 993682529 994490003 183124167 565482221 509781948 862576506 921337648 976679715 731946967 936144995 721960808 797836653 842347111 876993085 677061408 865273738 251779502 503283326 747152169 751093701 447372031 841386393 121735647 365595415 505003538 680637921 744032551 751729316 697729946 946018549 941235600 988615812 52662935 154894819 735004414 809694703 296848795 436612038 382631793 775663666 864333050 865152631 273789998 883273111 29075597 977072321 750915315 931030619 24657992 644746254 290093464 898061726 525458368 760261136 782288179 867774471 98849803 337626517 522454203 773142696 65223817 434056227 855778920 958903373 839755884 971584512 645012402 861381860 486577953 881508628 696589639 714476993 138431883 265742185 989593933 994016752 990953492 992107615 814051919 827372068 295594862 876840490 941915992 985509698 12233229 975824549 401251734 976780948 645739679 677591710 853036566 883722404 837426812 902553644 417325788 906122024 906794722 953631092 178794717 966503527 241503840 634614346 528504307 988564909 827278956 854203833 85687351 830207808 180435932 716428310 59278883 117362844 905395480 976078777 759617910 978253577 670978776 786314851 424439574 497412839 789584741 834804346 46829867 89620173 340855508 449721862 626863718 914842027 866768645 929070606 553253580 818735317 714759426 861917205 290702687 855150332 718419847 995475169 801167873 829936144 819008932 890134144 71632517 392282848 854010251 981406053 599162851 671121430 222084862 731574125 478422395 891588566 919796980 964641592 442996313 497689852 301595492 562217501 329979848 548102754 617860857 643456396 575591299 941432343 898814713 996175243 228055187 869518269 470509963 714938439 184327842 765220403 662367169 855167454 187814853 701300136 937763582 955692361 635907187 746821341 40883583 925061258 642731098 887432177 155633559 692907393 642652340 674764082 290204593 920613357 323059588 591027261 653224782 910283456 918839845 973817314 728271583 987223189 5692180 709414756 402824757 725049188 411734073 679703917 830126428 990212067 321039511 807072897 721735755 946348197 153008748 248824936 862529348 980198333 125610186 614242961 747469666 793268126 940453313 990334549 880756460 983225008 951769715 956856686 512962039 752156625 888204713 924232985 173196081 686838613 466865500 587218373 483714462 599122836 891200110 922433111 655854041 973314056 733660768 920276258 267177234 336896571 244985190 397272462 962917297 970903895 325932468 620879112 686895459 838910374 528554179 786201679 790763629 845510185 817534742 824139572 109819814 631901477 202976267 460812526 482267753 674201287 717852104 893324695 418919139 958213272 107429138 966019637 350252451 436720741 43461901 411514958 419772428 923485782 251041596 754422210 930652277 962475788 582948512 924088085 923949585 932922521 214278684 426631705 394049113 872215203 864149108 905833102 542417548 889186926 846101275 896265890 230537047 648468618 368342073 503379023 385545264 772473865 71449512 412366120 517854800 819725850 798977214 810255072 976615201 981986300 493635435 785943350 90875309 678880319 493347759 827284141 898591941 906324076 508127978 976949167 482105163 485309457 454251085 975367019 250547081 824414776 328070894 404148561 540006494 575520483 901577403 983681571 878039493 971767751 369584589 955467774 271713386 802981909 621275508 813094236 337805497 701508558 172427018 629537216 640421957 895521660 815975007 852019552 77209945 352511884 659972324 955314533 52464104 368283323 333160021 412096365 618439908 746891942 284253548 655048822 401809112 858387307 201448242 664330041 246338941 441165835 54675955 452770170 594683323 711775609 890352309 964433297 48168389 671470216 988012039 998759927 428161253 822534389 443291290 587599271 475596921 490820944 1783006 970001799 715998966 926334115 546465788 949219629 564808032 603364503 409152904 981798067 485120388 785051583 850092767 962928354 310320184 445887413 740217638 884268382 925675779 931462670 283652622 620547715 270209391 958478039 915745143 990484132 519038168 968027424 392402760 515815115 756613301 770889907 911599532 921107035 341431030 402701509 351450080 508910371 343771053 497778105 729104017 815220924 935762545 987760466 808429656 983980374 997318768 998543679 79696698 557063166 765256998 969780720 845233877 854297364 650274253 853577840 486388996 860625980 992421839 992781390 440682446 642922150 839997123 934359663 942410485 979269233 677345506 990031940 476156853 801579822 591750869 616238232 169973632 768692030 725034754 923267230 423867903 499995877 542452893 718558678 994575678 997895315 805022686 888206503 853163946 991079328 475796376 969406603 502486053 644438225 36946994 500790833 784832740 872516612 802171314 829485506 861913080 905071105 247789195 322688525 290813507 974394398 351206682 677043363 682494772 985399544 923368505 995212545 900597787 967237529 600058499 960079772 757270008 832000916 413542958 915042236 824735718 947486479 738475184 858060256 124797887 493081896 68066269 789355130 904070086 952815220 772514997 826082138 452455239 599731678 844986735 917064695 674748312 724480407 696150079 953717019 900394447 918189242 647834571 831718623 248232050 812052235 73415904 314030409 961111501 977027930 411070362 605311492 275834600 451641312 139078269 502960034 400698168 466950715 639280909 934704725 794797274 830852417 519567812 757424196 666831982 968541621 143310127 891524918 431124399 829100358 203656080 573270404 212718033 611230388 808926508 959067525 39035655 841093701 497601854 814489624 162842844 499670092 197389927 421011896 758804364 768885238 658965817 787525333 409531085 424145817 581067660 833786025 823061579 982651879 498942969 600471246 4479998 73810008 810389522 881560492 499986074 611710097 177903503 603827901 298627420 610232063 73811728 633421424 968001954 993698215 887218065 948668724 99284800 420671330 165239688 874931070 364061740 787649569 768560695 910016867 847259028 853317622 917009850 993562948 934862576 937225084 298508169 798953146 100414531 242961488 391610576 796841053 89433291 356082529 946889186 999813578 850819528 963023307 12408410 524404464 122944483 381660420 247670933 400690352 992054731 997741926 491121755 560870240 327712124 579405145 750497323 915550054 51858390 229975592 345338664 646820694 148443510 976748805 411604323 429935775 701978636 772233645 388677855 902689625 635760851 882983838 58316498 428816619 276304275 916541244 339433887 651610880 700640223 770664439 108594707 161458104 586481119 901948832 417722148 645550638 138382426 911955041 32718264 670847507 712976110 815650954 184094631 759150270 238683615 392146640 597750534 602710733 777921897 894535712 247639462 745957800 255930204 476814750 614351873 859631800 601472189 806297476 648588465 771656541 252232112 317876001 806422325 825734170 491768308 572032687 392494243 432253864 360855820 381013512 76237231 411363425 436369756 467901159 968101790 987500991 864273465 931288433 557352389 908755998 37752044 489270655 447827818 589348241 759461981 932655752 929837037 956522217 766069152 871212411 965233763 973625529 916312855 998227765 987253981 998334969 968938412 989858850 440881627 846675134 817631358 947490200 911340166 945816044 910117385 979742221 995077807 997122624 218133445 521320832 51411809 99705835 5718647 399219937 653556722 953953078 572640095 690952820 686301661 865947989 232473962 990668606 948943685 985811104 168569393 580786517 140185931 148451013 463753739 665114132 854793420 929961947 747938131 789060635 32369156 247935310 674933194 846397147 369977046 758763405 472734200 574045479 31500199 741416419 89886355 521363605 302004409 596177261 333127440 843261955 90441602 690530386 676572427 928997581 558207219 661156072 830847052 971814874 34177383 757858361 208460972 316294860 194896507 315903586 808548211 927119348 872784283 894387647 517178198 963085954 309059472 511448629 321221340 948531697 298334513 358645133 547164484 596837340 125044286 273527288 560704870 947779008 460608859 566677451 570908251 606545047 557223784 889180543 288949253 633363481 209006779 378805526 967936189 976325405 634824136 941158705 80697592 718299905 9708625 36571647 363188811 866332274 356196964 739910190 950995162 953201559 698359211 776895138 279837533 993862946 275985857 968090720 993427723 998897814 82842066 808367445 477364158 692697417 225571782 687774927 395952243 878151283 289016659 634820391 812973538 860595720 535606543 970298093 555359957 570151446 687619930 884393588 792325546 908070489 989978015 998021541 798731809 902106515 804555405 946364881 497123602 875400887 710896997 850932848 330369363 565394671 415294029 622649385 484110084 590750431 949476979 969782814 169038485 774105073 898044872 931302980 585852676 861429325 496053067 538994434 91370104 692510212 707127818 800557234 321392569 505910116 464295098 673660897 624324742 896874837 925750256 948540760 620848129 631773653 601574507 641881347 927245234 945770523 168704176 724796714 200330980 371459265 360862862 526392316 625679917 859540153 140535923 845868345 840114666 978170317 37888867 859159253 900596109 947872858 864032655 929898947 31336915 85188427 840057654 924402092 638499175 827278352 364545506 806269252 232034686 996184032 563996693 635723631 200988437 689424193 755079662 922278785 604290341 812036522 879073630 911118720 931184975 948151545 964871014 993188997 922794209 939077717 374464149 673677437 820582427 840821467 327787942 578181678 268884129 534910329 284848365 593303642 232197013 744867556 220124978 630423457 494181702 819053664 951137764 989218547 295396839 852330952 304991725 811918586 794657645 926302572 772838118 914178248 414943914 640995544 44568794 575254127 741017785 903009852 591647532 596921682 968797059 981577108 513277790 671858977 971157070 998343364 469812200 962156858 135716209 562077071 735168106 763092886 812417888 852107808 103648406 691718452 701174432 820671526 977967588 994608736 15915189 313199092 160112784 334063529 509323023 940007775 965430091 984883826 132540402 515036732 497665201 539691167 978163094 983049059 298824083 946375807 469930331 571275901 533027361 729480036 652805895 878185484 916890656 981357871 837953361 954594466 735030909 893347906 553840095 783987840 94177703 987683642 166691891 900408214 643536413 744741693 484604608 908403833 999435994 999997713 768988117 880990319 852058295 962361365 972377042 976122378 908873849 935105424 493549685 869741774 525861342 656200460 506058655 769509545 194621708 244449759 932987926 970150290 678769244 832962241 554506118 849156812 830107772 930026032 196270284 359314226 782068455 845283044 378620630 963412739 98422722 885228635 746028038 969865616 696299196 712573086 444998834 989876930 370264415 556727212 713991328 725097194 403171602 876267745 206089928 731465706 983162743 984914565 514013480 928076426 455067241 499050066 605696985 866652193 309095970 786048980 817323519 941452759 605807135 817206148 546205631 607271365 499015489 905859026 738644252 991555638 973155829 981623710 871318857 917102088 859141250 951113335 321321801 582819629 937072630 959220569 871409332 886398732 431328902 583825988 685415859 923457828 692002016 791619567 299947602 396836593 863779816 939793337 485994249 652275872 256857437 691501486 215003833 712314726 111886237 411308504 863430148 927551652 185951881 336133434 536290292 973070329 396974579 634406902 196324456 654860389 294586119 685758594 5426536 252793249 337988807 434395281 108912673 320721707 647999424 847649093 3898736 466376067 750076441 839228766 853062316 866262940 796650115 834421798 841284324 882066724 580721650 980862927 539653481 736657501 735387797 911605571 656280182 902680225 49203530 825181648 667401825 798647960 952357510 993096995 51010468 593522814 417003817 822077030 708759508 743397817 807107340 846579355 531306382 960935056 328734024 467401430 233129768 554779346 748937737 960091996 656505214 927943713 364365251 449983667 219217310 517634527 237560426 508140369 542183682 975147920 451299752 838276213 854560732 936000713 901394456 986107723 698798444 851031519 425473238 587996072 793092907 947391648 175405897 475617592 982220707 991605530 120962875 939671167 599549312 849507658 489254780 898590487 706544969 791813639 866903881 887729745 439294740 581050269 987472011 995545142 13736287 197921549 404890924 731433241 697596286 765383580 64378576 740700178 122474426 815594192 296740435 744609572 468547863 966410782 537462512 636757209 456498671 504680666 947211774 973100898 198821286 859513265 667359071 879011875 159378722 269206380 630661909 655585843 263003764 265317158 910834499 941098297 739645710 774198129 525794258 637970538 962239808 975160514 451736406 720199532 593029391 613737181 487030500 955422564 4449591 645804475 750010953 818962788 187566300 227542034 35707557 944957402 144550632 622280193 908340448 974424534 441788767 545391469 746447085 895682698 519577787 728797900 552365564 986499111 621872744 681622469 803885432 885459238 247935585 958584788 332860723 894471511 897982329 968142048 328779649 628535439 185200490 976242664 202710631 836779423 808583360 863140691 180498993 551821016 464938978 750530793 798691049 975137071 126940058 942724151 774505859 916505573 399475601 986914546 132094497 903346886 443888197 930370508 706248063 740643651 641197545 914047454 754830766 763134387 766472998 822522312 137880324 198081175 29288358 506610468 811749520 931462265 129853313 406198594 493514413 757540664 341520503 706589095 540236837 629086101 80160037 92312794 513307935 813811703 209705734 314270467 74403183 840152784 743087014 755096529 345881271 614014103 531787212 663543471 636997254 769894766 344024218 716688586 147235349 514333796 765823256 901538265 763758230 984870531 392689302 681450670 448138114 999147522 277179271 459049381 874257845 974143142 587885937 721332706 182009155 395576026 724600671 966530214 867740970 922760328 724533886 795014686 437993290 471409180 655638030 915904481 575378374 878456711 402256978 769618670 141755219 611583508 662729709 676621027 442953496 794019822 710670976 779706405 327575862 741247792 939565597 978158725 645761488 901855257 30131150 395708830 544698808 823870290 398502806 410744905 910334768 960301912 573309211 679997631 453538895 955967308 637570373 854743140 208112179 952348044 562744797 652318393 810209889 940393437 537337441 847620036 908833593 960700986 63774271 77892009 594346923 694979606 112578322 319506110 343482690 755839853 406206739 665421336 640310211 662662824 747830170 970770741 121442042 173257992 816741665 854475047 761205270 973449001 126883623 237919736 754024341 943625297 697095868 808717277 813711749 897004026 652824592 785558709 120086127 604235804 601321908 857540469 779284147 992086243 698859044 844539310 328224310 664949148 341197356 484052806 511361217 791736716 861293831 911268751 53975012 989852551 32106311 245096604 742101320 856685672 203645134 238330642 357137695 937329892 872009113 910389338 874325768 939432635 838638110 982086486 149050780 437715352 929363726 949028315 67667611 860013172 694386949 899780924 456014038 745228119 302374494 650899121 171432769 267058137 948911643 965055335 260350095 737389473 148334071 769275577 521047664 605099484 945241735 997266797 642227979 807372726 422716979 714171793 168672459 417468081 36927699 842851390 726890710 756362649 996038271 996567316 18501662 377885076 414006546 704950263 110908924 905793953 725383563 770703598 208399791 360091525 576334703 583795388 695423359 795358499 988410661 995402668 190857203 940093038 350265353 696746356 630543404 775712816 220852584 975417022 93289287 394759170 643066223 683668467 94908220 320493564 21938162 92267289 159997238 542155156 581582504 849492117 98599589 627723322 943445232 972093159 441289688 515081158 21640514 288274624 669697790 843279707 748778248 981299345 414850802 938668456 816307008 850570641 683676907 972411626 728932385 830538078 576080865 744607706 140579221 754694160 994497300 997760843 535911028 974447840 507108153 632829048 713281480 858313524 156495357 579716791 440413468 657742570 384076665 963927760 696887703 981604769 139318241 332264289 362727164 410104063 626483281 717041519 971180845 994528458 89081394 935754840 817146656 933156909 798332512 991428750 820719225 873416349 338737899 479864660 919175549 940826326 775451523 960588002 768021169 920999890 494363720 767500281 528489115 950451896 71011264 419567779 178402093 404685185 352327843 876939399 734376637 813620658 711203995 743731044 966827405 990499591 215374772 712439643 94573418 937469290 180168875 322154942 599438474 989878281 290958560 512268146 764455777 796461866 101343996 351434732 972957183 975993017 77188247 823936430 102717570 638050155 878573752 942599182 172625426 427338886 345132377 922247445 126092529 361524359 188495374 482374520 987262249 988482310 722303847 941200030 864734139 874654404 687294422 801346545 461942831 779904796 824961834 891475113 163997056 990836474 937326860 943634936 231025358 647008929 61798527 696208357 922049894 999751829 900297305 921562791 30890471 370334706 781159633 846189093 221989902 994374431 114419113 877085359 643973828 947524492 795712495 847218184 953462545 982735733 12456369 224610277 737372475 861055928 535871756 774388248 694649726 906145887 76103332 686478589 432681933 675520428 457994724 710400379 859417662 912867031 717037810 986777187 842816887 968971390 793060074 861398785 142355876 288540144 229763089 554492060 174900230 745761631 821743799 978242146 458308266 878840397 38122299 953262777 731015286 947656295 129834170 382310706 534312213 718419874 536921190 595942453 445608563 651764498 859517830 889546579 899422313 994428928 864275177 982560048 489373249 511706088 528114497 763708046 426952449 614991388 357064350 437269575 153511772 345885867 164333482 170804685 439998143 805270672 196125342 748152739 619137784 854461836 12887351 346859364 550489941 727364950 663023189 872372867 686152696 949140270 114323693 630780658 59221197 862925386 900748291 913756769 44405535 770418153 960950089 999895055 854692616 924158168 995637896 998902376 60960939 415895222 104461500 670274996 661538448 775879903 368314377 795533497 9689684 70858083 636139632 835306868 758944972 825376253 25090780 432442223 18673179 321283466 868359907 962162649 958733697 967201668 720739846 789973889 731294819 768853659 138645378 403805664 405439970 989551273 97622298 163439069 124971892 894382916 596332987 891333091 864671034 911465355 26618128 577036477 100643298 551209832 196113788 704986544 978699627 989787402 564230353 969850765 819835938 969876286 394682006 397727242 258460871 534179883 714761888 832025313 671335725 904471467 973775244 979615991 161894377 652403152 407144592 456651511 291517262 890550182 893008103 966965272 915785693 985824958 397128849 986121005 922513572 933849880 632071755 667937069 381232586 628911951 507622029 585235534 995699712 996535112 835688341 892953208 911236035 949258498 393673915 897071421 947582585 978600493 691993495 816559817 693524598 961704832 144844882 178861381 708473531 966673440 854870770 898308483 840696064 978519878 14110664 297548521 958317603 962811665 912612093 940361934 483696855 655645232 735995931 991873678 92674872 748245699 818592017 899377822 673351236 774006274 435290564 713368069 17363779 860556331 62838285 522571841 469640365 696366414 630648241 669940839 793659646 921148041 456203367 488360534 747868649 888863441 569064160 636264831 434459924 931834325 922309993 938812333 453067084 889349874 718735834 995434495 398240477 489738037 496501702 627220588 108180 309047147 765566271 851849086 513718447 961776864 616245900 771792143 431975740 610371844 67694162 587516460 420910401 533505256 985300651 994940077 918321030 951715337 519799122 696330159 714787851 804489958 327354881 657768690 11853891 364370291 396828573 753589639 496668272 658434391 509649175 681491712 975393639 979641524 632134256 778819635 55849373 296960053 858629027 917111748 656959979 704320875 292064379 955661779 257831648 692970048 540355434 978837398 796126057 853628866 542720779 903270789 626536650 920442949 569138362 916677944 782120829 962376552 951094235 986841426 121719945 447892210 315886443 593161462 569515406 709519716 126280609 937472474 100227220 600268077 948880820 978869689 308311750 694793099 809430339 995755403 635332878 973058241 200182423 255093249 160966367 193292532 76116705 409514383 863579187 864277324 19652950 740241716 935993047 984459610 676363743 967652800 557034917 594248015 874411269 958182343 64542324 473378850 746444395 902455519 777656675 907585646 247264620 325214804 223272399 501219746 109852928 419092819 178987887 857089139 67758705 70679948 951012887 986623879 489548687 714666232 641809950 790723352 521615139 752623742 175776118 454125144 679146757 976379321 742177591 867886889 185379723 407165672 313115763 764172069 330855362 795829262 361492155 483543773 527896382 667241331 720375855 880625999 495234135 689311474 156935941 281455466 827069153 831164288 741717889 757774013 156018528 786627430 671938871 797934299 956779357 965712187 324145537 706987632 365894376 608171098 834416285 896532833 175766760 220869784 401731078 882120135 289889105 503248498 739763446 819109741 713250262 848850526 531845455 639099217 731428607 916957231 875973931 918896223 740192007 947850863 433630099 587198314 882910380 899995026 63784419 968382450 408445431 917552015 160265372 890674595 71281944 976145781 745157492 873371812 759539254 948219791 565813241 878958537 717107651 960433990 19651069 341518195 298177017 978193101 133767842 253217638 240536557 329182496 79395847 553654001 988491589 996843036 291219948 364020413 893747072 986710920 188208833 692985179 939574198 960485869 279227384 924460958 362025483 569599082 557879106 581190094 711476459 820118205 799275068 944432088 183399540 716831275 403637990 454636227 40562824 592703754 218380226 983537440 385355691 639501183 53330067 479290336 330144895 907340863 123260717 677916675 562337218 978502466 587972188 641706537 989460291 996756592 301311663 383894336 268886315 313475944 959285876 993925666 648963879 691409714 317472116 359794784 167746422 218151188 851713645 993336218 676994390 979444513 371665777 938073285 525585683 604445366 542295804 901862800 451890410 917317084 494613327 715554365 320933277 815835943 273990220 600615775 903688184 961752282 822409121 972059902 858828990 932770717 43691401 568423477 692732016 974018639 100235835 130686715 694365913 937770115 796826571 868136895 859787612 944547624 598376528 725564271 449983509 910683706 522098397 857145920 436382564 723181745 763730810 803657570 823890375 999428885 484537313 495027517 633854286 818482713 814258901 974308592 888907382 933017920 532144102 775199380 594730325 928563568 748171898 892144399 742097957 781607137 781464098 825487052 877296009 959506221 582151171 746247626 767538078 817209211 575477786 655466463 493491233 636975681 147918391 710789625 52968959 672479333 472068345 812807824 744020180 837974214 230681267 304209821 509815661 950165966 204981697 733993774 418216863 941116551 519345896 968428510 638158379 714487785 829457401 867561090 647818177 737285196 531005380 983779792 355098873 867579924 571836331 616216125 135069449 437866081 880156055 917297782 112945139 443386899 478825112 687924876 2949501 857930555 639198457 801895952 265922921 981563367 445971759 776488822 574497909 954964791 222446536 250820265 708668872 919602534 156084029 219587197 377915641 464150912 291312047 746674553 586879180 896652892 380346314 849461671 482301559 996351634 5030551 690293462 602837570 838407176 675784379 688857017 15572846 834942677 348860321 662216140 431600937 644666236 80886326 833241864 988493980 990116175 534860942 938599881 484057374 786310649 394801667 722618514 351272083 687178508 813183244 999233371 405825465 700041697 597205856 938776481 231792952 565376244 161137188 379829755 988443619 997481997 68134308 821386324 545386584 777361753 766793629 969475747 915841109 948407037 41941006 132252355 308665323 922052058 137973461 389390596 190299776 817560899 668989782 879810426 740965755 771711869 614875824 787033748 154186811 502194629 295220207 527930709 207632860 974250889 97058248 496745608 914796006 968802979 481851822 975189359 497408341 527501265 298023069 531367419 588052558 790641713 160736581 469039460 362832669 863008343 880829903 924416021 594504011 759284083 492613319 768805413 591320851 637070981 345506304 926962532 749585945 927289687 925548304 990126156 804948748 961758485 785133621 911373855 871889511 894195950 796024892 973038212 217867195 933767556 726230999 883279674 525093158 696218795 718382662 991297503 4349464 807398892 819815383 933093535 817096332 890080885 131376630 232347219 501027272 986952507 598908882 720012379 141231599 177699355 487648014 546535187 897298928 937059194 342396664 787941010 361521388 998804022 309652857 767312231 704363981 975142568 257939330 757947800 131707492 497920231 867233564 902645103 28581618 47607577 850449825 915556843 270625919 328490730 931156539 967510649 761491818 996953473 713115882 771576522 103439113 539980619 151494566 173600254 119732275 305934741 939408411 978552713 898099201 999435686 31341721 562786956 739206305 834282484 607401265 670516487 130128666 998926788 390612259 772581285 433694736 471658590 643908761 951174936 342034877 353783681 463576011 761830968 749873334 892847196 930705531 989487062 623466671 985587309 494482896 961820194 447005676 637253573 228111426 763207047 663501736 850154752 905862096 910035975 127772043 384734841 956776607 961876657 781518619 834871839 160997704 790030632 734246305 956787659 860361058 924147333 624850779 682359871 958000547 970972551 629076552 802747681 940767040 944948380 702186409 927077246 898707024 917729704 66693826 532349001 4331455 192430495 307720892 680902970 496070492 594219966 682391853 990204496 795520920 831998986 739771708 843017588 917555865 921351855 543960075 729246619 556825803 602323010 411937463 889562861 286667544 887511757 182485260 716497436 170961704 808386545 460507173 677960766 436763885 451755761 701607568 923482831 680238096 706023824 833452587 956303659 92568150 505976350 748828447 810354397 991430593 994287432 629963442 870608954 191126685 428885246 749112294 752946650 366949838 412195090 998049565 998461298 858348425 998910432 381739977 475226712 215190987 430842291 673602621 857228167 91210921 872633278 690266971 982909574 130747290 368153207 631561665 745104159 964713356 972676591 840416623 891858685 221010865 887349710 120324146 463439575 13672531 316116185 649773390 818006289 735994807 994962842 243570485 635638803 542638842 741567038 46225500 485055290 18034682 545379090 789360725 879779891 757006385 866264207 823557629 956570533 147991559 833137169 52160408 368675579 737036404 915688869 238562428 478298716 952693366 954001925 588957427 961403992 870327826 880645237 289662340 853827736 931311618 956505834 348542921 961499350 608941253 893389893 438294082 475362560 986106431 988323189 445628889 667841430 534162496 873846775 707668544 822079853 862022440 993592954 325156844 906359333 345594651 878323271 339878614 590434486 225878125 977213968 877453708 990515552 72934685 694471851 223805290 605089404 701308688 767220095 765358807 900274464 858551779 866364531 937783481 999412701 768511574 865791079 56128299 853999613 880629698 940325035 213978810 789254975 748195838 955939010 303736340 625702776 696251890 881692791 911600571 933831048 741315677 994627840 726797654 728968138 632665351 899731045 660369635 762099025 744308613 793574686 885389868 947726800 291950886 368957108 269688527 323291160 533399571 835259142 298757131 759997587 604853620 995031293 536922300 786447953 548327217 696712297 837995042 906300850 204140583 271840326 507429909 793595115 776189798 940624385 660737453 926057266 131582721 910558797 289693026 593070628 94972755 751214860 479362176 960729892 506569898 632447330 571151135 974308057 974628833 985175295 265433232 273861543 164002080 446948350 633066696 791958361 30228189 93847430 521599504 717296946 683057410 882214953 434983253 536638185 704038073 807044047 583754205 787609725 327085854 411846561 134935017 475901764 273271260 406809299 32271485 318615373 990638062 991543124 503517977 704879541 416924352 581689473 371714771 935916291 798793137 954196198 366216953 854639401 153844978 664917429 308912537 793034697 583970561 791432588 803917747 904661926 38718656 403476574 45806711 132845248 840090193 866451392 270956830 648205925 108996578 857255107 725251196 856281838 320331132 620894598 780691632 966065414 884928986 948737834 832746767 896309363 199971188 635427479 460934432 816931517 634697987 734200465 48602530 347829298 439060861 899128987 147854540 914930408 679174640 964177763 99455238 428694150 636529655 845121404 729586674 780964790 886275832 974521262 954735409 984537734 711235798 769113601 59518377 539632347 4298537 992345734 207305517 443043409 93749954 284627249 338073894 705701420 583206890 635708627 658505759 667060864 495010699 653056727 354293066 596974882 547669396 791008677 311871991 984985844 851018059 972381498 613959336 939951748 727622333 912855317 768954165 785999301 892467195 921952453 636734733 747133339 266875609 928098507 398825291 464901212 714804793 778735915 505895182 844662260 397715950 472102322 195306977 773852149 669449820 760218526 761645864 824804977 528039976 668001058 243974432 698656135 190900491 598973469 89667809 978693456 541897651 871643923 950652191 967261634 331541682 873573380 146329150 635094192 331125761 555635787 2023474 232657828 813933741 955249949 444766214 980933049 867511737 939116762 823046564 871478400 422536793 802806962 12918956 787633230 882870607 885143167 163033414 482548463 757173683 988700008 582142308 627223410 784462774 788388520 708346301 773570316 969844620 992700894 578841830 870306655 40163065 77899608 320135351 577250433 613050309 714207325 803095045 826979347 160155684 825939752 141519219 151428887 781294849 840700739 381185827 541072879 509943212 659176497 117871167 317133766 15047680 771729698 639465205 654278049 577773407 927985274 612943472 632853007 884905195 953909989 879939116 972720277 779950520 888906164 532557016 597964297 104074736 794723756 445497949 665167050 277613079 728380468 371774909 509904260 254247938 734693030 33374663 825856366 246066581 284018864 130713686 697212951 480882404 551116200 699954663 926440233 82529457 211107257 310549899 740921394 806989171 835263082 677336843 708362441 552763719 751541720 112328646 877513336 925572116 931329415 864117782 910911233 560886563 713616947 159404609 938219896 430964253 922349518 28802257 201708337 613295029 982964983 293131072 682043916 319359639 396813788 406546484 873627907 830493525 993558462 115825455 228020245 65492316 636708467 853712922 861455537 423574357 602924256 424192131 453339564 657357250 775275195 713277040 723553887 648658131 848064211 510501313 897145881 406675030 698705371 173177756 567859017 849922035 993697334 424423527 994483003 651742343 746698676 96115164 545737657 492075084 555834502 903686252 916599512 461462897 505039520 581265760 795588839 702970807 853328999 226599875 845466698 812110920 904710293 777083057 828521338 539769448 984080778 198057488 463310361 303591977 595844644 973783514 993875539 392651890 990122624 269650314 585865374 494026535 838021971 219463248 279401398 417630905 919949519 401372451 808262018 655873403 994341475 433384103 881298936 996683354 997337178 811387801 928547654 667133785 775764460 451352489 599771236 642070103 741843586 645002972 860644746 437162939 724577144 484654535 987732093 1026959 662652934 971948897 974597157 787461573 838760956 93933916 492260377 163732845 391096903 99584756 595211249 161190553 287369521 889961177 890633973 165751248 477799760 120303636 580166340 851042822 902045190 268605653 353864989 303038530 439861116 680094070 928590948 250433910 572596132 507851625 548853688 855305587 877190289 98967411 498166044 601749216 796580462 166619888 282548715 430721644 540911425 68249112 342241290 855629205 969809882 608296749 697311253 504079281 568318510 597851387 778448533 111457569 716372856 202686950 371832415 909008231 943791045 17575077 761985577 243102898 680236685 716899190 771596477 864345033 874117430 904220867 946287400 872354549 903767784 548718925 837313234 741630134 869716543 837596414 891218563 499138501 784913908 980093110 994581394 147120909 161927441 136755828 882735257 602717354 698159129 927771144 928497741 350136793 678915442 765423496 871636587 412281565 588707766 630651303 722547874 144954604 923638922 62324473 767686103 763905531 930869761 871136002 899438750 674675550 712460385 975592561 988230728 354189396 814967906 578875839 903471739 220852722 777270061 755756848 938202660 589145231 773897740 473861296 513966346 754363570 947816936 931951307 950178994 594754824 998814377 230563631 545363957 768993332 773542478 900683536 942397196 564362421 742618500 189785554 769332691 841076449 861842573 782807001 982553975 262328992 857459897 751613019 818766356 592644301 908189806 566265542 903167366 869194425 944677625 950025554 957675328 727094093 845755968 593426940 725211205 30153759 199040284 779318240 934900178 987050568 992303479 952531565 995024858 298649761 912607510 936403203 939385157 605452761 992563299 76933482 485579694 449539924 571438431 984388922 988890032 329407708 558075542 489098389 770320181 122927701 418713229 914795169 932043653 358715301 594474544 347138707 713133654 334898154 769513078 685409863 943000354 865538389 958492609 430950157 780765973 732163554 804602057 62955304 405091514 583636096 656849604 98248909 976025967 508892558 926613253 6595472 556840752 497411883 943516957 691030096 999317973 617703422 676240711 5048877 788178935 247984459 494877894 149667425 308673145 713672359 796630669 174120771 332691432 587248611 910078119 938677101 942540817 830531266 900887537 52094061 474699164 963725721 999123428 403307578 576675490 275676269 456813649 718789680 746240332 189613717 691664144 99649578 619062649 694420823 780088874 936421175 981474319 124079251 231482815 521148874 904749814 315603366 953967986 717917692 787257594 703403464 930716303 983600646 991502291 403712245 599510216 845572764 954849036 314302041 877536898 454211292 866706992 343412903 799053022 834425305 910963220 466490437 672083448 330042004 546921146 501534797 662518495 846207105 928771959 120199645 515946541 356351276 466992388 728224371 863004022 998940527 999130099 740725872 913842133 401094723 953785517 807385733 834777618 810389674 986350145 409664120 445882576 687784675 785923295 259381305 322310195 810450751 903456885 503383643 991414149 398150228 675683743 192164519 538993798 808182816 941591127 53001021 162461833 448023147 846306311 332853079 701913572 13522305 465536232 434705396 694639054 116866792 139304722 474605352 479660318 31515809 995347957 532093753 949707168 330627876 521066363 91247348 120535998 864715688 948804451 703334640 739568770 494384747 881915748 232390625 818759896 12034865 408458056 93558089 788101769 702581074 737107892 165673470 452458225 472948515 824490210 704210442 998843276 768617476 981241426 591584785 957133149 291747926 496986274 982899415 995865570 469081819 582682770 269967580 499719901 903311215 969335357 52827926 697498971 118559458 364715405 783484028 914616206 720522570 757642895 600563522 630382123 411404190 976937386 867632486 879888278 533754477 716425263 948168739 950026664 578462249 726782411 989788473 996760312 875601697 912547051 814486412 865946290 389488864 481504248 293101958 310717845 991569643 998986326 646383194 917617782 138409215 151376259 59162304 330538181 741595500 954416160 191788136 839284463 732777346 811323070 518152587 604908049 79307822 613813047 180780101 464907570 832306417 953427711 90161487 686084698 590705009 701295170 177857132 744659181 709391241 856535119 386261323 495469641 291598161 365137161 203302740 684799779 996161395 998296418 718213730 848354011 441317102 522098373 792964444 976108709 872359349 884631708 854873123 875578210 868288614 918929940 201314264 625147292 335750376 933172997 889581345 919785184 632335455 769921002 327126096 560185571 298833518 394549639 845904961 965476668 78121700 970847317 566296217 922495477 289201449 480907841 946976596 969207830 673160194 867553476 749928852 928919009 115191200 322420146 559988733 744045468 155927355 386512532 717079018 892467365 788752460 986206357 309456871 706746925 998695509 999003072 103159873 656235478 898000950 995892610 790511649 859628286 476126632 861450354 504073863 614904012 807191755 852365127 964800518 973931018 741153036 786410737 240176562 428852986 648184799 926059081 494812350 628277974 546176376 812013993 108999600 577748979 871236560 911786807 460084330 654510547 679481259 925938688 911338709 960351985 377283219 382107203 871085540 980430784 144163883 871083479 612056010 753754553 586987154 891316948 443249876 727173031 68947176 253839394 385851996 989513623 640608604 760106181 667276507 789581401 199345024 387375608 298374124 420210962 295672724 482065656 522722598 835476825 262165459 376896165 285569561 493396093 97192600 488046508 538307742 687916765 324874309 719619981 836637357 904610130 58525373 82083802 28488700 376490620 558309113 850266037 50468598 198922128 850612543 938453033 326241536 602276220 183806771 743347936 542184161 881016524 270756420 378832670 391417749 857372523 476690903 627249131 178379419 192382762 222936707 624955016 357151255 536835271 258014629 367578997 24793221 430031701 327087539 700759952 619981417 764218107 834494815 971274541 649577165 756843713 662330902 991172191 224047175 408664313 16879725 925396820 356157190 839818363 98909584 765188421 290247922 494458422 603006307 732638347 455915100 843824999 760163142 888451442 646900305 753828284 199599775 409297008 609419554 892411625 121460740 455934111 745875952 870891388 512351580 669156057 575162258 749064079 742758704 775633554 100099121 879266356 948095120 978492776 54465466 555136398 632957406 712469227 726228853 770251199 71860330 944464179 79659323 763817685 721437446 756622475 188667155 530580869 223736834 884565334 667911879 892652913 225629552 622951931 436122943 490066783 305168213 522299363 835014931 854626331 624777824 646161580 102140874 565935706 996448423 998424853 307028197 569827414 484133872 733811659 803997522 999429165 537309660 894287850 493215829 687992730 240961606 955151465 797529196 907405359 359315540 699145280 687429350 909362416 803999194 942140599 339105762 381901670 635583899 802869388 304754474 594376973 451748148 533634207 79013060 738639105 170401993 996554708 607937668 645286745 607657098 882327169 646292269 833809375 398775543 885046366 328757478 818890681 158798824 887582752 714296947 755564817 682903092 694636370 710285016 814402487 869058047 946119692 650587820 955276106 651158681 928747762 163850784 341022370 311626314 419142266 158364731 555358282 679576281 740151619 961533337 983214582 214711361 517745195 138453248 778366959 247390432 817430536 253819717 959627752 31552870 995505868 618160188 748230792 855803996 931923580 223756929 530437398 962605512 977358019 145549841 785041462 620420800 791924396 176551317 576847659 575687394 672561591 328854137 462060494 585879241 849631349 62063061 243389342 656831711 981232159 548855838 974934395 148094346 886887248 949538591 994500873 517583018 605329965 980514472 994061829 45452867 659458378 661258661 810087646 737428890 879836139 268375675 275039811 877066140 911427879 721657748 899137113 355716721 830110892 980189598 988381480 223909132 614084079 344995749 529572390 344809215 853257651 347724271 703073979 16404210 986256205 833081226 950954716 726252487 909862440 81324636 962436949 603428278 754721109 664370754 994580965 506510623 785942102 595553516 984024798 819894164 884967311 821852275 841331481 59165006 740030123 183168714 656768531 986905878 987376015 720307847 755929787 619844665 658755141 9912471 122530337 584030847 602694508 689048326 892826123 96766093 835813746 12409380 864986804 940105051 974287433 207414069 900441009 4325446 961485930 313184194 873186469 845220602 865474322 147508972 799036766 440603645 521237531 513296453 647555499 543489407 878990423 870754475 939961543 472858995 787650304 286469421 843361119 156044677 590083731 615968187 901360186 942180430 942378335 683817003 980483384 811018035 817445329 686235164 769207271 760671085 793221046 258449503 348610643 955711518 957765457 753786163 851556443 959103284 971891308 529475648 723025280 364772923 990172234 734227501 777100585 16332051 788259796 82108955 537088883 38068271 723475557 558280932 976644410 391290801 900573176 223480152 775702951 357740950 410081716 331855598 548546316 596345709 971795605 692315737 869668512 974986783 993413741 157879724 891151882 137280795 463620119 170735012 234998994 111275279 743749385 428654664 754628448 882566379 926389864 426617426 691814581 432203243 854404869 515187843 681437519 605783281 827168193 227723826 641104691 751680366 878635941 283572334 485716459 953385147 991454460 310990730 654726224 945714760 984444887 47588551 271704312 175591534 853583336 918996094 932559883 780537485 878667489 495520835 735917927 880088370 968904723 635529294 852447024 710460637 955321706 701817545 949661809 203860509 405720819 652379501 663998519 759141728 946272985 731232962 738408812 930152301 961775661 837483154 944184135 662202540 869965995 510717063 642342013 798703797 937293146 292796560 446249459 291776695 368583377 873104520 890648982 480877166 568048452 861657621 916913598 375570370 775583670 183928187 553281461 780777571 863636148 147004004 168666398 608265154 955203371 187279506 798448197 480390230 671312031 844971227 881331740 575035939 731168677 374171122 565002753 257133930 357747057 98649451 877894604 671993618 902101378 147567226 312546905 194331606 553313616 54815385 930209758 891092611 984219956 156517594 817317256 110577124 680034067 97909587 112261036 203036458 289838007 135006411 487563689 320287139 675566408 182796541 239734299 447045402 598924436 340751664 849580468 114774289 757200129 228921427 921537732 412122272 491077934 975348096 990198740 591407580 856844592 703964473 972521926 854612619 896482382 669670300 853027083 359212147 494025985 234169425 545050816 149397150 774864313 581973880 764569198 917208277 956964122 437798505 962707880 913451946 937515784 368353333 692118813 559984906 818512237 286634913 909177221 411249732 671099779 189821547 909502602 456027792 495226281 239220807 647064121 585477309 762541507 599031628 948151592 405895658 444071868 270878263 915740525 793900146 980615305 96452711 384164697 977390796 997465820 920315719 973651886 968354543 986223127 43655239 542030957 424515107 844678871 437466104 604429042 44074263 202877639 279782470 357315095 975566778 982664328 375330931 457599004 956736444 970768603 890640191 969902943 676108180 788641227 18133620 840466127 747759766 904689283 599722605 750912196 234810593 601409440 261379655 975948330 531519153 883157329 402174105 780360082 915720395 987836927 232120011 570914394 979674190 986805731 40351105 964680803 84771060 536761195 59225982 784089332 743283137 811629193 130130054 560706317 976705156 985879931 398357369 731828596 799804681 965684182 288016173 898262806 822784367 914210919 213633028 831654630 787428730 985169994 500020915 850606973 294650601 654893471 66616185 106391647 909983563 976297698 993414699 997326652 336057611 927266944 789421450 830529332 136571525 916034132 987215140 988947695 967815926 987082258 125103953 839801048 206747257 554655041 105527379 155369054 947996155 993208789 571496885 579363274 131109758 717169978 515465187 658403650 657159684 829168892 29170207 91345630 657438690 677404903 685545626 826889299 113443268 848708846 578200936 614340422 908596589 987033009 552179819 815823329 138250216 656364123 328964675 578003191 855866517 898782404 576798088 613663660 972057469 976699263 717830471 731678285 362107464 707928284 696374120 703230112 732830444 938765384 645852370 946110693 909590897 976182973 633685446 742765902 309587906 813323852 796344241 937386419 932320432 986982486 98827011 319149214 285091155 734346746 456159869 779879337 48066008 310278818 144925651 228807899 841240480 902018245 492171214 727739789 294313561 971988662 735427496 814157133 62519692 775604091 569983932 942403265 93300785 729363437 780134792 835895599 763028081 824657383 50139991 674629897 473074153 859923737 930717797 970638684 209536818 999056684 137750925 462718698 545383622 641004037 525381020 960281309 398571568 736483152 391920054 612390576 593327594 602797301 125878553 336404659 643861112 827137405 688503600 764032034 943433561 959827127 150248483 563676047 358354347 940016843 139639326 320761602 738076903 778820022 473166193 499001241 622643316 938645188 938112372 951064066 729504015 956313116 475053967 615815845 361933773 989912220 169087337 519491349 174463724 738851433 90701734 762005696 506335384 566942695 117740487 697657601 504914214 573726904 117531824 409801632 808422272 812169867 553855989 761548405 625476577 900037745 884596854 934360038 536566887 977605704 639849336 932115045 741029562 884797292 779907975 897492080 991067142 996371404 592754634 908080669 940420303 956628650 932568554 973483787 881256037 887931827 606128027 853634056 799370450 946324371 11010805 533602400 924077462 958378561 130179956 565387920 962115799 963819874 71942864 594981533 519765951 834461011 507674032 690761258 111159268 588848955 948798184 991596207 403740646 891880872 521411405 615952540 354716903 635544434 661150597 663466028 199434028 400976201 508265519 918753004 880609004 886794712 593633248 932321015 840584809 937339589 409562614 864701434 338557840 378346778 377658736 917746121 528449729 890773704 468731313 874276226 366697200 372079942 198361820 766900539 141658794 716330069 348560940 361131543 485250576 748870874 521713257 718940524 990621415 993882684 792963901 901978040 792530666 894219671 285850190 949327862 970927401 973515589 751634803 996777233 270459954 896378717 229846486 686191234 432948325 706107325 289804964 993858309 620156500 740536357 186602398 355756013 123418792 124655548 765370569 858009859 303724392 553464160 678796718 961082191 426409797 919114238 55495269 991025302 994321014 995127150 51548297 616974885 263941492 293099732 566879022 634898589 30678604 271243036 190047776 437239890 921433658 970819619 689053165 986133054 845897699 984193577 742317543 845504806 177923334 824382958 752559205 917115105 599590567 780325067 873227283 984027912 245782378 684841373 172625487 276615291 869477857 960926351 22175898 347954242 43151212 410796144 676310540 883345518 428509330 516446755 724678335 897850131 114456319 189067750 718639252 975041079 610624398 796777368 619121886 835968082 439195233 874882551 209284112 634652487 942851405 946345885 296583058 816508841 768086007 867823381 295929386 623727573 570824000 655940103 5303352 262562137 363880167 744343978 983594205 995170514 41269069 194636408 113719333 461503029 84517178 735484340 20555573 478579132 366079893 997752958 70202744 412811156 60328005 645098111 80725712 906505839 318011233 913060742 599299057 796822714 971935727 978293280 763742226 954801134 953832019 999735910 182200729 519235989 355543477 970239714 813961478 863225014 999727220 999914456 615040421 887230604 759122151 862987180 353401447 565090076 552256275 913014622 421097984 573277596 653650218 847547017 741249312 764558007 234115791 623758009 798051667 888648186 583443662 868147282 441653911 931819395 60038651 76221260 694116491 749671616 731979818 932814560 93930561 228574008 62968674 187746563 478499193 649983561 952527106 955995672 154882268 723721148 186037294 679287739 987461807 997587422 54775306 505890270 452173840 480772477 100353828 300402543 146340187 935270943 114790773 115255088 254474878 334467395 303444674 491632924 940288002 957174908 532455387 964581094 876905264 929976476 760774914 927145748 370163604 767859022 882410113 989170302 264753885 828472216 432622208 725966858 907372562 988258213 761933579 834115610 550949088 662090234 763232004 884461373 535720084 832040837 551570323 656223717 170978717 318365770 923231481 931456226 49752940 412798893 673086193 966611696 552861648 680895980 211263253 601267908 343270361 838243767 584949081 900857539 834674513 908278003 860004375 869766171 873639487 997043371 290334481 298027758 806204464 917474293 23473196 603987988 90060132 146246043 484358123 951999007 973580684 981753970 310156446 721374502 736138554 798878994 997943399 998373703 827444753 842296696 303277532 441415147 346686264 896021809 790356182 937278180 802908910 867111265 86336031 496965280 744539464 924271489 576443832 788729132 989991623 995320333 945947195 982269149 784283322 833475832 413413383 755903147 817376387 984967688 764333381 865416509 609298608 994419357 127037747 858554442 598708664 819444867 146365292 712228391 229910174 576643110 700810103 963461898 753337775 996155491 119302780 123583474 22094547 380265004 684680805 835934409 387049166 670924777 398148188 564169827 777143511 963581250 376009807 873816874 338553505 607423313 688864855 698553339 585730313 647359480 946151493 975034912 229646452 469888455 555994904 620522231 191731542 799679996 399383904 692569092 471421912 761344883 265988106 529487805 180752573 183771842 847660959 954364487 213280063 727939642 645942768 686058250 355743017 827826868 236777677 532418414 804545473 865112796 555335527 959886299 369796825 401303938 450956994 784349290 290887918 695804970 76813204 511733183 204663183 318036330 907800640 965977415 90134021 376075570 680373341 996549565 106932461 191427902 307419328 978060524 822847990 921233889 233227614 909853334 474909701 558838670 762167693 942055988 634337680 818910048 104826219 110054574 786663859 829271041 555112795 815524772 792923749 925750401 779528146 908417609 938455771 969681217 92673726 964890667 302118398 832389392 53484600 995082994 808523988 945442134 805200727 962655512 423766783 627929940 120811632 785624718 128054835 935207088 632393624 759600656 941712642 970926486 353176082 370791408 943441049 984311093 291235975 574646159 805941735 854389770 430655059 550025933 211673834 685244116 898863793 960660876 732132188 812589741 84994725 590566240 830704627 864696249 302633777 562848032 678633025 715317543 843345060 987717332 997614236 999991520 42469005 759427532 981032553 987346554 811790603 915884178 130308585 539134000 728536555 886914074 411727159 575318428 794481114 816563916 568490127 738262921 771411558 876256327 510459334 668833989 347364976 449971701 685655428 775986985 353119670 523659932 415707883 794646046 38671285 319090569 255983895 600621131 548325073 903865356 731292782 759879267 437061994 783617918 235120935 768615114 707620959 798709574 948178700 975645100 130172891 592115419 963025094 979476313 990778625 992844164 659738206 804134784 588772299 815170994 406966286 731383603 109772666 235259928 15736708 926442124 618827830 784295741 808450268 852219130 854488818 906498504 159686739 728382131 883158926 931687170 280202113 833310063 950988841 978657298 44601691 50623083 665853603 727095161 247420475 602835668 215959280 632738883 517971568 582075166 353868722 747547373 856173894 860654685 594172381 920785881 156136363 770187203 16905781 21349248 209606520 622409722 377548732 740921147 699297826 709839048 706637667 969405197 366427186 622876262 223422382 372927845 665068420 715806356 139977174 781904889 429911338 649428664 452452924 857203968 196819356 494739406 998232946 999789734 361353584 711339593 475300670 710107970 724394874 768321431 354248427 435479231 418329926 881553616 321914447 932482396 43937595 493991345 218143827 456126460 944687047 991930078 645599542 971361246 360373441 925554433 766178002 809530079 111049022 776139153 573459820 849749108 743397729 808408999 14437803 122242957 580125808 671933766 794378168 857014491 996488663 997173898 299658513 883725545 570566580 988764566 41305577 137399421 879965182 890864523 321234776 859848641 247278435 968923537 745317652 912761156 74294843 199920166 866386493 981082691 110341572 582014455 691670439 760035170 202064015 849181794 473665188 633859093 167486659 590127979 853020358 988277320 516085934 808220170 388652678 415269017 855523564 862543960 511154768 573976763 514968480 815368228 503496240 761186946 11702741 298639396 435380950 986754804 408695617 937761738 540796275 571076702 337696907 592255648 640562972 900981214 74670711 187404897 381366445 691992414 537877518 802391477 316555499 548638892 169983374 460437585 17262630 341931955 69661958 302484145 125471459 581546122 648649854 651967255 832412148 984992138 412272946 470149373 601583339 834939671 338179829 657158429 857831354 886210789 490129629 665718963 818019062 841309024 263644304 556792583 79548239 341744534 56647440 623113297 367611697 386438752 453648342 537317565 979672752 999746906 329868442 953428071 23836680 754881738 65557775 942246884 515477194 559596499 514210955 945647955 972992913 988417967 945238676 962987423 54983373 105382793 118367913 451890337 52034048 88771076 657921740 975546868 636007806 914395072 21658377 152981381 359728347 747301644 538009671 844600102 25873421 931725750 97032249 740659839 154117557 547911581 953261570 964483766 663547473 726046410 449515950 643337895 618911950 637872998 438868736 815577318 728855407 871902512 258806022 943002653 968490143 982804795 765968063 809277451 472625010 811559202 345946736 690395022 485449942 658834626 799679492 943307905 360653452 616759237 873498628 876322305 799255476 851593187 300221457 652563237 939573002 970125452 87880116 382248792 102740944 986563282 592808777 634585984 862786413 928065092 191157163 570657793 215849738 330786355 191593638 570609457 488704388 992732072 513360054 643801547 423064678 918821717 189010600 618510797 696191679 696632587 572058476 611633057 959324515 965024531 278672719 350602445 996846023 997850689 433300865 663634378 539534537 599974009 701244654 766701126 266332429 272580467 596344199 743076927 695125470 786973523 123532239 618955832 586704736 966340856 428046093 847422703 934640929 937338657 905254188 924138880 567121332 688712548 335451587 361845247 808072951 924214112 262076841 279004425 82325528 489191602 753036879 974277470 955089466 982520822 350174287 759728396 686876578 959894575 994506241 997318096 120587322 706023773 220428580 220512935 82626150 957676497 613506204 775514162 213684446 704597574 20981132 735687440 113761148 715143579 682815341 797575396 50299097 289858048 373906942 979225872 542054144 621140097 24625094 809629007 493507848 625537683 700606619 810612505 197054287 729282892 70186363 911471782 825125585 922708032 258251786 731228988 262188507 740676609 156588135 247954333 806978904 915558925 823673412 879061364 342475038 402833990 262819337 349266792 839012318 905569762 870232739 921203322 34554435 819820861 978071875 982769268 829648372 976081429 949929893 959505872 88701676 208011232 254446358 450983342 905669936 994856869 373769206 869898265 471926435 726204559 509335382 511690379 606598480 841478378 834556773 979655984 456330929 767031319 859674239 916568194 322341351 550734415 333440069 412740360 180974616 751232241 29671015 110131666 881337804 976735043 593296764 805426825 477705268 744462052 185196628 352499322 323718777 436703164 406734430 829594312 673108453 779715427 914458815 962497224 999179854 999907896 73582200 648372783 574929730 864232266 456942822 953599756 951039323 954522847 226067303 741940996 576662748 847800123 806569613 996216958 406980498 752068312 958134806 993400418 272015725 990739877 793227577 904417792 11854561 16003891 758833333 944837484 926238918 937331316 646176636 999061844 776399812 903739712 438672479 603466241 503727142 527362644 668889525 929876664 650210780 782875213 950411383 970188300 160840609 188789332 451899743 658274512 163424850 694413908 25381154 531076093 507965157 742894014 491913456 769252249 467970929 833184313 423222182 773903093 450501224 538019178 872492619 892890355 950920282 981041952 181543530 276829350 120205533 428373121 895698564 948618151 82052991 650942268 651161546 702227691 869710512 904688046 819065367 819898416 76830909 789030752 810383187 857949525 509158163 752533457 535816031 776302334 265540154 498906229 924201177 997535716 197034959 244575792 848146624 992001202 724065618 933643964 942268895 946348038 682273366 818664767 956988932 970006011 418212239 782270638 333906030 999904846 875528287 930279375 977826285 981863535 983644944 995479124 116966928 312784166 224170828 640976709 446718560 885100563 635568827 711311164 960316052 961813995 807292081 825553932 78388746 630861030 682505801 750189594 561741843 737696352 21681471 307066288 887207774 922051413 162317505 439187557 30555407 394195667 183279185 837127925 542121255 808861205 726728237 742823267 612512932 973795843 828752512 925848285 349307557 822106182 912575633 981106558 748807372 769041214 827139134 997733873 372812676 488189635 47264151 618939724 868062474 915707114 788165336 829510709 121152627 483557776 147513908 418825066 653717820 976883198 103804224 399756188 254701785 735004150 32281703 47361151 171361097 604205580 301068986 432620868 289554129 913852320 744895330 984209304 197108018 457756012 340650296 852523121 921168134 987721334 169226823 310114807 277072155 709449026 85883693 831572377 10865137 318722686 31643539 605391498 47874484 711139865 85928151 518854509 616258134 986719758 161591771 189909016 777485917 947290363 831431724 919098038 28881505 486836349 822858076 844924497 295069718 561661865 199968048 343829511 389974692 527908334 666624918 685609768 585588291 839870860 205326185 846352614 886570216 900815165 650612778 796929718 597745725 944001581 698288254 782970600 871930749 883232498 939327425 982295672 744782532 821923943 859424215 931820569 16356765 185036575 750398733 969201940 24486724 655282965 637159912 845379212 790742611 806274334 955501655 996287366 471610835 680243325 158522136 714888960 590401166 833273978 453263718 476744295 727188997 935808110 225404037 774570657 195843031 756051764 447079665 523553492 507953733 673400989 692004016 835715794 456406577 716846722 452914755 730986154 345538520 368920506 813760143 926987523 2252323 826977974 74737835 134765771 986889808 989946577 745064765 972534486 449784798 478966743 791339597 882549205 847864259 888300988 220256965 845581698 475830289 907726214 435291653 671476854 413558855 917049304 549146916 918056624 993866212 997807115 258323599 320814402 765253628 888757799 803023444 903830057 779635597 876000961 8514411 266594594 538198420 647786785 648755690 704539970 183960060 773911272 641379002 941105141 744838089 988110928 528369699 952470757 180559961 944484467 371614485 960282607 237959513 982658636 338256477 832668335 825058638 905591398 248926284 949979722 490522180 781240524 873152386 875315431 37758765 138913029 409887652 927032177 541898928 634116830 394471093 881187668 368087083 437794630 760000324 927726887 761280261 925290497 954577702 989865061 446540666 953654627 362399741 737181967 733323682 836291220 948181277 965879641 798331250 874343666 346982276 445217271 286679054 484456931 355573113 374788204 284126176 513795447 62486678 180434843 935966853 985306640 261311531 517166545 671822955 786768657 862892576 999472345 810808361 977518895 233646914 702621840 399930781 553299744 912849970 974022003 281636980 462104220 862373716 919944657 428675199 955073289 284114928 633144695 351301720 932780885 536538928 758323908 175897122 641880135 376220471 996686702 418268678 580038786 688529148 994143844 283558451 470261948 178502053 640138937 827675023 984101622 454589211 617681595 655809692 808327380 550831724 688088809 436256119 761979110 585817400 782547150 96697663 823498700 734320539 871710475 121675131 406334587 405823295 486711464 553024543 590770657 151635956 891216110 583891775 670378494 510819385 741758382 483581610 962234967 722563228 733569979 604359270 659858350 918782173 989676019 911088444 956852677 495012597 855576895 732861574 773462797 159758001 769395086 496013846 696073597 169636013 362015069 952558549 960447929 343772129 655684698 554521839 575109986 38782207 930192214 794825208 868950178 999557636 999649756 419409619 901347206 781508476 865768561 633668653 802946311 820137972 965254072 518456373 572270892 644471004 877522716 637075810 876651702 847412217 908717046 196159800 225485995 838732030 924323026 8143185 916127751 879517464 889401524 432051888 904118280 503027827 552696343 985476090 988691392 600074333 923855655 373330520 548902232 665169517 996681412 358870000 673491290 490059003 769780487 832019082 901476881 486883348 953667923 899908772 922276835 244554125 393585127 176208233 470659526 269649200 273222336 189319953 978004893 79492047 462999920 557278600 649913828 745396696 851554728 272710515 947610934 29080873 795448217 259737092 502284201 322379946 881520966 594841133 876551578 146228922 240478776 31003993 625244107 644957829 945185068 365641556 479864839 655783671 715085112 431505196 779887834 773081814 994179591 4750806 907141753 12762840 556214885 100692456 552332033 551025687 672690218 800107660 855480819 996749830 998344533 897877811 966810404 898725611 915512983 32156292 834176812 579262906 802478038 143558702 453611437 319236289 712893683 191519308 385463749 352516454 494279142 14766761 412950376 703574873 722007269 363538862 544270276 777749745 994831769 577983418 867448693 956961612 971463555 21100237 763207233 194363978 386553165 680800049 682064420 19243205 816846765 380941447 632372150 648832612 696099168 830886280 947076551 279409517 835516568 662984908 704171078 874866910 947010647 982789166 991436155 258717673 873175852 90835723 209866348 391808674 852310413 516720196 654398118 984624202 993121893 229381719 581149280 675763755 913549052 55418073 231462796 186448734 672235667 119351335 173065708 132920036 817136587 177748482 187067464 621333753 995036489 225115387 840879386 99062775 112485618 318807674 391593945 743568425 749069396 154789996 489724760 497392272 770458233 460125958 593220810 622578546 992088759 427995810 903408322 460052611 868226343 184196674 355891685 636671827 885538788 59261069 417882419 282269974 421287788 802609942 806566454 130711256 443198467 221129891 448703030 883609840 986922199 211299272 292739678 948206495 964969603 492343203 608592411 654423595 667175227 705882512 771329458 929814510 948742951 117403847 726125362 631967328 912296157 545790482 839812523 256249859 655010930 339095783 350995796 260077274 519529959 250543252 673525266 651260005 817849166 584398775 995511174 28076281 807396036 364575744 643851250 740440074 993444463 969491165 994046941 999033631 999235397 110356220 184579425 555368791 746638907 406932155 869114837 625178859 735459381 970154812 998459928 772966851 875668272 578352514 658444110 99319580 606212368 804863035 873102758 791431974 835067171 324204693 610049653 112231679 675627290 325081057 535457963 961472621 989771210 914878889 985010708 873862863 961888022 160459054 611497128 981951916 992312141 275061259 537243389 504791837 931415669 368613842 441051226 496532416 956336898 878443583 921952098 425451003 658562731 144648533 763225718 323956609 814972523 291625236 697246575 946684027 999283009 749963443 992940577 922300091 982663040 127855345 990826233 708138788 834718546 199386067 679150563 591042613 793639417 506664066 637744032 792610652 894982901 382568748 491712095 879286359 986910612 594577270 769124227 157668398 754508688 164200259 940802622 546631538 893234683 513242057 949590741 936920807 995910508 637881032 844157144 820930370 929935825 423555829 720848946 177200928 980345507 515136492 720123184 298243804 725048234 544936687 852884261 586357569 895776316 271886687 799977639 678913760 719878834 102241594 429044654 345582091 928233612 533978234 698225123 359458145 457782411 797592447 878583362 647886014 807042458 882772750 931654843 389893047 652539933 558429501 922502383 912088324 998194518 681749823 991523678 602403279 694722423 797701164 869608073 846451274 873665029 808119438 953924536 157630226 752896160 503252701 678367959 706877293 788844600 333408346 361204756 247882388 341923346 704582000 862671892 486704044 931999562 5809331 197873145 168874088 494065770 792505010 819051641 568737777 801082585 345036784 430496047 182584717 708789801 970015094 993068625 133407609 912566488 296523277 499898816 21710347 41699047 678097064 766479302 69472858 797337980 402760838 469175821 509355801 751619885 315467463 624806748 990483149 993371731 606578505 984362017 385707161 921036809 859668693 902742609 928426343 987622241 277117218 753124865 909895075 963817594 637403928 927793080 673599725 793446601 62957631 861647594 459664789 956702131 55403236 354067904 437629976 711574023 879183357 988150252 157017168 212399025 526765630 943155440 512565620 686072391 630433529 669859937 9242854 776637510 936724905 998334158 906794082 981503642 60202586 497842237 469565091 999460157 820503457 936736477 372008279 466556906 356600974 452455933 443888541 869918335 724411203 777307421 613015447 774815473 461771044 759525757 565131505 943224526 258535487 781109755 948748999 962296300 717623265 797557964 584063009 786190176 708555313 744980157 657074607 831008719 106854793 546881467 585100677 994655640 577827596 820116547 996142696 999659521 367071999 714881710 600804033 806908018 658929997 891025612 735535029 858431487 437065612 987980950 157652970 341398280 703194895 932842875 567562035 680422335 340109211 663170432 106476361 913019008 484876067 508232888 337156622 668553056 468296151 476488602 310593046 501047338 345123535 980995914 91208148 876144270 288798644 555892774 197037867 912139476 948379448 991537841 437571032 700893881 604125126 928439132 407733473 993968564 253275498 414775015 132405252 463728840 179095066 883511068 993981721 996667597 364831761 377329932 341315601 643497464 42285707 56687255 988115876 996233496 989951423 990100238 937063639 981545279 550366130 919529502 516646503 852655088 631779202 670186851 71720203 336390218 955571178 982785523 398501666 830128933 955978672 989231470 136941376 564994096 676485565 889684869 61626446 749317821 636489101 868909615 680474344 808111050 879893701 922837929 236562127 888804949 510544912 599304264 449347719 961632104 151223196 334313541 999497377 999781657 584284154 765307574 853841546 978040652 650543065 959702980 755081690 840495791 770606095 994664028 16395128 155296828 173638225 653279405 41093329 480261673 188715993 954472988 209715110 700579163 1298592 630120350 734917201 812827907 200356790 937352039 704591358 730428312 43617901 53798282 897033081 915721591 315122116 713700504 469921882 621978677 341367442 399308847 423033810 720948501 189073339 846772739 985457189 996944566 336885648 350512944 278632564 372155144 775720055 886403640 627324631 986400960 810934648 936413026 933147308 994060743 476560511 857729759 62440984 158411152 649210772 934787911 741894279 835047655 940629268 994263395 651889663 783236727 417373106 881673398 981630612 997019145 954632043 999197433 148103985 301558635 657291509 919096555 301839889 937639585 718178215 745539140 299473666 672231163 130205937 581663756 374497416 515024652 988831965 990333366 332966202 965394351 430806792 945031997 490768942 659072437 830590456 957442837 513142390 960562682 788960231 861673834 260649390 285246138 372197340 892442332 871704516 930212630 970714761 990324940 919485192 991778946 762630264 779487816 965171048 992123409 491566486 827974880 117172654 644870203 350805262 803544208 364537958 604175879 888489780 957006847 553085634 595825800 127585197 337809329 764827544 969330950 141007331 200867140 532670568 984688140 659571631 921966601 934233763 995042051 800184078 923782739 331113216 463835349 836425496 871043027 935148202 937006863 478580901 837473009 566318429 853729571 355437326 512963615 450632848 829663791 666141904 725150872 256969857 883725668 718586597 731697438 988869785 995649223 732815031 898009350 219389184 493269549 819447598 998503094 12036240 418477592 898152479 919274362 686022809 821910714 768940048 863675115 545445144 883247056 997390072 998655784 235676240 925856903 49622103 962346688 990473906 996369689 249170372 365011298 357306018 480514258 18581509 534899803 588563803 968608468 965510355 987282290 306316069 396895856 510949898 859308303 934280568 966462252 684560982 822997281 296312745 310203131 657064275 867676769 396929654 730590258 654831466 699004535 885740611 929795831 480795982 639124531 839492048 950279246 68066127 290018070 279127267 965111962 35609790 723771284 800848011 802696745 665001539 936814487 657270024 974683392 921048381 984455307 991716838 999422240 426611431 607761808 356269969 396239131 629258966 831596346 16547101 712893010 100300731 908245394 756587334 888119852 261956137 855476098 797110030 882501572 982477601 985566188 356425249 924912376 643921375 825053801 916840813 916846519 561185245 996303394 964021660 984803148 641540910 941801310 634932205 726388892 933295354 975484939 640926575 845186126 482810342 704721129 288584885 905228609 315064833 865704256 173201981 459913448 946604787 995489743 980915013 988833774 579189352 605441422 557878985 997132364 643467877 965357754 951160080 980719682 362974952 698432651 981991974 993201213 257450264 521690173 836770404 902108826 102099802 609303026 270109881 479050888 848690047 925176800 922673154 939033577 881662388 934377564 249635802 367407822 331956418 372503603 625967067 959296787 197081099 956568834 279135813 581197812 932595369 946762798 561737292 705227489 213037013 415488605 434125879 776679717 479591607 511032368 693240945 761616323 656097429 789257869 38128290 899548774 665285143 743537126 963494115 992061573 95277068 531599472 157697231 674912771 44805585 581785207 348427488 799316326 436281806 572459985 445395965 590225776 366843084 627805929 345961724 726712912 922683592 952661371 116908970 221614216 528723646 623678690 282358188 527449683 404427869 673883628 788031737 883884632 495714835 536125584 187265401 230971332 937400635 939854812 186742422 980901954 247229204 529546514 401295908 420736385 709038007 950323444 332594315 664883616 341932526 434805278 263465636 837237446 735130859 992851714 757079743 870874284 916759781 965165481 545989724 814026475 137554906 750363529 741862029 773566045 777791067 984474732 125597164 141609759 477063879 830530745 151596574 397008869 795992703 828562663 417900335 443021203 712172595 963074374 246889077 557075911 912396863 966217201 884794430 906933784 307687526 823051706 855704526 983099262 405803254 796729914 472817287 789018631 888499434 928861481 6304001 126095087 495391156 599388914 198988647 249943538 969800496 994652265 83215963 732101599 3369671 141354941 744781744 783999486 85702143 489519459 348805418 455386378 593665165 849743307 648607879 889699759 433727196 943167296 840036158 851844105 899605039 982769961 1871609 406508390 957681046 981853802 156532076 671869873 403609347 572965877 614592123 826664499 905108046 905152836 890766960 927828499 551348423 613613855 377937099 640253163 126204370 515406090 914271357 920741503 726957622 941761524 341313053 963727254 372470389 992185415 835777362 898980617 97324702 345034685 336519158 810772392 953245053 959027741 631179353 886110850 343631254 554237632 199012926 723986408 581058932 868401479 732448915 913709762 325767369 837441872 633456564 938202623 391973910 920679507 86664786 575436249 806641224 816062570 263410807 773969950 532288664 966305970 191837815 764413976 241447072 370800279 558357572 634805943 211821624 877190986 613092356 675912297 428127943 895860048 976643995 981181100 183774861 445376247 279828336 330839899 356525541 428747222 851464891 945964730 254148420 418307600 853521608 958794054 851489071 903208826 378154826 459982761 230807845 326085515 349941262 350402517 929278256 999824988 506276533 817180956 250916144 645222657 920975395 990191401 88371603 546159279 486627026 610715148 799737480 804076812 745013068 959560504 274554885 315890710 809977169 841474932 238789548 954188682 811602623 942043992 785234567 961102262 997906742 999395236 546234213 736996619 783387614 950637843 944979941 994246315 418552564 630739927 88784856 457133178 322913801 423399590 731861227 935969849 575297435 695705011 317843723 901349879 836595692 872016915 949061051 978040373 682562401 811084726 738150056 920796772 572860172 609672169 844222452 892037898 143178879 998256348 579481164 749787005 501558326 840772790 936802366 950726962 894450039 991845810 889208791 956776442 168093759 624240193 676928647 816592454 357242227 759226828 4905641 721940841 49831799 676483118 991515093 995937762 368788773 871986343 684974518 938806788 824545881 951756337 826619448 939822441 301933777 925250523 302356191 704141259 134755780 806738632 241128512 638201955 161698126 784720712 50500083 186978900 475900684 523287984 352861681 963055948 965149600 997316133 830783985 996497370 145501885 387540241 113919743 529449739 698842840 803348776 457212385 685280389 56550602 367913780 69702197 926632556 248967636 813680811 634480159 925682983 173037888 363783445 167389195 730069325 792520645 825410721 874747640 976119343 653009316 948326098 20872931 21493748 194352293 211644335 151284189 180571525 519419147 640227055 83413036 245363312 935128190 940684830 625102104 795407982 674599404 811792957 684526872 845815031 377836484 563824078 657233510 756479998 979168983 999236120 759675248 934914861 232768839 595631294 426680617 830465705 913170389 947542629 299126939 323300114 195699474 545206291 272857200 731594216 55009103 507575108 451822236 723694583 58182060 824366775 768552215 978128060 186267108 874127430 934889246 983720916 306819199 907099424 822916238 897356935 76346848 168940099 695123977 739323198 37137339 356203064 508491370 878810722 487608839 544797912 44466052 716484653 425355205 438942484 37797628 702033322 841291364 867159007 323665823 557823884 442034010 648459202 168669024 528784374 24131946 528275682 60393320 503788116 595375314 751221840 954879843 999981267 138639015 482332404 329577368 674192863 304429005 782358941 105699895 444263309 565207366 823129728 503146428 645091822 448071669 734266447 666288471 837767982 237883247 632277628 923937579 930950702 662735550 997436177 799021601 836410107 21184229 780085959 544111719 925926072 784735477 879549198 484824137 506855668 747382593 782143334 243520917 718916626 271189751 420393263 675700681 819201858 903391132 950176851 947296182 957521257 160242925 223140554 770076582 959244840 133860230 908266568 574989301 853935549 622283161 699465823 340566449 675423351 616361599 641747582 691731567 851680427 273949109 354608080 138488253 505722380 757211294 924862626 783997836 915026149 709871709 780795181 894052364 922669397 611504478 948733641 671840625 942829171 651512941 820857974 858656183 880549916 118197668 803986875 126266649 373903697 23319333 271477573 176744761 820857944 829496114 974753208 806463232 949666549 983410032 989759720 648307827 688690880 733866550 869310859 360219483 871936239 119854143 127441447 178982372 647962195 280081373 360751540 707607589 868647114 850325776 889540270 664095399 919436751 706801549 750247079 439029695 775032679 375183369 614604892 575768047 593306470 763152590 934533722 551461531 567906038 201017733 851725276 536225906 898969098 209434780 548345215 423314460 835393870 208968289 218782054 443805809 876410653 631327523 676233506 572634417 792287242 277212337 804292274 584853565 833433176 802975469 829935864 319867646 456511907 507736767 604323215 720864875 969068638 148985275 414872223 972849233 997254489 536684232 666910089 131673150 844549207 533143195 943225794 982094437 983205433 816812802 954482849 772547509 819438161 175743696 338308848 506808579 640738973 552810905 609485122 73650875 852290709 202534686 504875746 212709377 731739361 695190750 782001047 748346455 831100064 162899873 623342276 295457437 645155778 235125131 815859798 640693346 980396027 395004069 552384340 478075355 592951722 240198961 952844735 93065535 266508688 808044485 861895181 973206354 988573784 875958230 995851053 617546249 966308631 397106952 629249156 565762622 957388646 291574678 312648100 320136741 843570180 204096639 977277060 487571241 866771184 493152501 957080159 979135494 992475160 762445302 861450989 438265383 727338138 592762321 718100346 776278492 878300280 107987597 835361574 759953260 784522494 418384278 960316017 826991728 966451109 167668381 221012938 20726375 307078441 751473157 891647110 959420165 974032698 46842970 112581077 886214819 970942664 287235588 344948400 143602029 517336146 519538650 687171011 561054121 913194750 384990835 863245200 837969461 985716792 904490266 905521468 365442065 912408366 251797763 991544922 817668862 844319558 461846245 994793453 767018545 830108218 704561880 886720359 607288348 778991504 645638472 877060263 12248701 235822218 567740449 578050545 681419397 692150199 783585278 865262274 722229355 962372438 770869911 803389028 421468285 638060243 894218513 957555815 214466159 552338810 847466080 873149493 532015521 995850399 47643790 604225354 344380713 485461344 352379735 981289823 399099549 621317522 526908169 767077199 377949332 668494028 248067751 827862417 263855856 301495158 971315726 980112808 558724153 654590103 509896360 728487644 35659498 753354459 592550316 941811117 707656399 725792134 952485484 993580351 902735723 962404189 767614547 873089888 693262914 775490764 599113170 805352145 98121234 731656298 830128987 846531067 317117585 689332188 675520246 696021471 383370413 962632433 6723069 654777158 802369759 847628348 279272101 852774541 824035927 940690949 115950897 813187495 64134310 581758155 157737578 745383182 256355075 271347799 709409435 756600438 435779413 636038100 815766460 949979243 256241276 809345254 539997728 619095728 605306422 980077193 309642286 524374962 694178499 785943009 371115692 543171810 574980795 681072659 721424585 724637976 207997168 388675854 853809932 921382801 965008028 987930248 305205048 734272930 425382749 902578955 63553500 795018937 77888423 852347861 32360684 468715696 784342515 892109714 855675667 908034424 894763402 947468259 471349686 918568044 403551074 829755546 817481208 884775555 986236800 996091606 316887981 947279206 310131801 647231487 560169655 978285118 183754822 484213304 222136479 777518200 164149347 758762737 299092887 912378209 424586926 594673998 709389815 820744222 15483356 886034628 432541672 966614719 368155380 547092132 954326733 991539652 631594340 767303221 429697874 994725808 808992060 831627855 349600536 915404223 226580904 939593766 86010430 871334191 813527054 949609059 286568840 992616575 606867011 722852255 359848220 876124072 528945106 800630769 288698981 651882676 11889145 695319815 622771872 699410921 15083140 676986408 694479373 765689921 453690678 676457102 301396774 821701265 910311195 990930725 342769328 996954952 519055184 611220941 439262759 592531790 624723540 724305103 710022283 826810197 161249640 224805040 609564644 770497565 472972122 687804846 11272610 24740969 895762771 901995723 769360840 862791229 646546258 719939093 141236045 496051578 146635979 765489582 961945295 996770997 319207862 500736120 194792153 919057330 869805503 975155518 283582854 804294474 817117905 881428305 585027141 606765496 512296156 592803887 435756493 796883273 452166821 741504278 212379167 715519415 464436788 586657672 28530394 510295649 78773673 538516910 66774259 355821198 379486774 902782656 524379439 671325854 692017432 993049393 630574015 838104068 860720558 888165096 150675958 448194184 683828322 868919484 533328173 612244729 369348702 383359092 9685158 18259720 995162137 996409530 425624407 949425731 428639829 726954173 137827570 757712128 388695168 566195423 326689878 535780704 744798984 924652113 944210710 971890064 531472075 587267733 236608427 998151307 486812455 883614940 813183426 880554454 713083958 796720293 230401673 800300510 905251723 928711708 150803001 346037563 265105210 328432873 873786760 948453204 720932024 793880117 516012137 673125611 368714186 969374954 574381377 835193100 352003559 971704185 617557172 941000595 726065382 775948027 811046974 910700000 727468476 754562505 605468573 756777489 390181487 785696324 778245653 852715191 475834125 962338423 743184201 909925021 415943045 603049638 967390551 982382783 675449428 918844621 856441717 987828369 544824044 568012104 859599558 865192718 318170221 876103442 920145585 969587914 830308562 916084810 12160529 127453978 235256470 918665151 777309138 929663947 699230664 909303028 943885149 992240384 612453141 852726289 132750449 331671338 882376124 986038465 151830309 761000638 148644585 617040586 968583069 972667544 65359667 652311058 901557317 940416154 329567218 768194596 735107165 859272893 528579010 853362131 56037950 175670919 9366471 633942492 929545669 957332577 941627905 974300696 799653400 883684711 932109530 939743825 382613506 980432593 822865573 943304895 499656822 986189719 368791475 417116380 162589344 952843329 813170820 870889982 577876571 665585619 785355956 965059442 935522160 946927007 387448544 606914256 214283533 342796258 756505757 761976406 319953520 790829463 613073622 987005602 591455840 675534907 763194775 817272081 75622718 828380955 20786424 935002814 336026090 934147518 394442014 621452293 745866979 999423630 625726829 888609182 980272053 993465269 298444674 673880492 278670180 714706191 969112134 997742474 439900314 623614117 662260615 977461064 593995078 973906037 748136034 889569219 887478362 976260915 267852956 580780842 164114785 509964794 866885216 989603909 845465768 872536412 605320105 963911367 758965843 840555958 848840883 899491884 164818985 650081426 64872098 539214284 985669199 995270655 668074206 740351887 451306600 474574389 392370494 530658785 508756355 569271290 74115436 625367188 380917521 865960799 155877568 915090062 984625780 988965934 235630754 690903925 627684089 631548796 715868028 833490562 744987746 958634548 897578442 926317526 418636659 427126489 728724810 839307066 386097381 595223689 51255631 346045293 802442910 913698777 480642592 534728220 968362870 981257253 707246392 723762783 868201641 954234048 401451355 616108103 913010614 964817959 564316501 566541073 319187543 902429916 985161600 995279965 813364286 840590583 52435749 502608853 510324061 692900601 146092186 859717596 881864427 956974431 639154153 820588666 3523762 73035181 102242433 411723115 428001694 752408930 27006029 889741029 735236708 745894654 249114299 660746042 200640574 544495780 266336243 543299997 525080184 866080452 801136744 861982703 751889293 931238895 635541069 635992570 588944137 950081358 940205054 947358539 927453347 933149463 163736330 359244463 135567067 899468020 33433795 251984759 9424728 29872576 424080438 923098745 372316418 809631780 407495306 514276215 409705769 902801939 889108622 933421334 674619129 925115421 879758221 880749171 414075514 741220612 276410749 705014025 901254525 996099756 401884535 979292846 86205130 832223705 211265437 852772851 994621871 997453712 231196972 750041066 627362424 718172558 116787765 338947111 973055659 977730661 115165078 657126029 985200620 999674979 177312257 225292078 464090097 871550590 362274529 530106471 225457894 368916245 563132801 782947263 471385642 632855473 871140986 899140260 283119875 609980904 710609950 928389386 41098398 687804779 693032923 849786136 604735965 664529588 104219729 279706114 335310466 451408979 491558260 678273695 186192025 619746079 457282854 777717418 347542598 784731467 199911762 414233153 876440484 973323620 553031151 783356460 415049723 452286470 528721926 659673758 706725388 934566126 379547389 776454455 648198645 829553831 48971679 526900701 890620466 969338495 695924576 893629120 693838328 758124564 127208686 369916744 161574280 509657083 19829137 712700353 357940607 981614329 828097577 863395924 361121588 386213977 981565423 999177457 147663217 728640468 842241567 878924076 838323366 974875857 777328931 810975223 588668686 887099591 882322002 901869777 914083075 915092092 8631109 689496620 527587907 732989500 49900226 469229394 191365881 871530050 184701863 243737385 778157909 900993786 716110431 806553827 835360771 849358526 530223320 947859098 889574811 997669252 854319453 897661625 483890318 773534481 390815275 987320904 594889723 813458163 375041478 594642252 348270978 564694433 407250260 447613806 961612563 971027267 476198620 932875037 294819281 718298056 224935863 576048097 724902237 850551928 218608770 558358897 308271173 586602362 840184446 962405520 65200089 303243494 733456849 826125643 498967113 841606609 449688075 700429837 2099786 609609740 445038139 794712080 504324321 516530568 655729143 855105980 423695286 604167383 92745760 124384018 772841503 924870439 717858497 825470839 914720227 944755829 54209429 815792892 876477527 978849863 905585234 992189987 287128741 380677091 680168267 719773476 862820630 939111541 367989954 562142916 308886505 403301749 158014054 966678938 546468257 644068548 627282350 804667996 397485029 646111113 355603031 655240737 73515567 410508485 769250420 771660289 792734181 924208084 13506588 946019574 668340442 832687769 141543741 742400339 977532636 980174518 838892188 878594230 957593771 973620795 581836216 936545169 677867474 883994745 649870133 880065042 988949837 991115784 889544413 961614675 685811483 761056667 177289683 717770025 553691189 808674653 808293455 939421927 485413530 700123728 278228273 791793833 32624607 212668609 877611020 917266094 285120807 461197688 193320272 601577364 561179936 784797405 696950472 862368973 61651343 654837623 320101118 768612364 449461160 811493292 472412872 712114104 536823158 863873435 276101696 888167068 410071400 981878393 729549120 995054994 73003436 332196225 564530552 650885816 32986059 727499060 734981848 827299288 227486483 341952278 84349913 872971035 830649001 916464977 59596677 694826342 763780360 952522355 86503410 861004419 544413841 929069733 190137586 716961265 842651089 884459304 422827773 880132408 76250068 171419546 147292186 942786488 557793706 718135598 605836174 888135394 394669830 754367663 437599609 496327869 834065965 916401924 787450422 859379444 617149725 746839468 434835198 512363836 603094434 859068414 641438049 980203332 902703406 960505990 730191531 906756843 567300132 863841373 890551986 927446332 917719412 997960794 156148694 253352965 421991409 893672555 5978075 429342514 85571144 896293613 334051865 960591257 118722324 673672915 585840476 605768556 527451397 777922332 8186481 838818186 717251897 984468632 15602973 726665756 532557127 558617556 563117667 942522100 986241846 997959627 181757785 856605137 146828750 881489530 224108173 758680601 837527950 886765028 28378969 180566279 730501052 946928001 560579652 620446084 689876690 784610847 913520655 994503549 535454574 822413153 982215585 990244583 96895264 499253260 705542772 930495364 898936222 965450940 835367875 993320767 856595030 902360950 418097040 684988449 640163418 943158615 577340606 957507677 599282286 724494299 613985499 978586693 723865912 782938231 992934742 996159243 79506219 982108658 167636761 928431922 103693733 858545918 973777260 999812073 165378709 174239620 381833876 396285017 654451389 914318838 57432843 561734079 137686737 283783302 439654474 865241681 122559742 133852255 35890562 652047378 296594825 704251935 881613713 905135243 78369581 387965981 382676899 446460294 837138369 939538119 285960907 444615241 166935579 236266681 661636826 893389994 12646117 846119463 630858236 794629959 998962523 999775263 684074736 762291906 278006257 353823202 633989605 949001233 800580859 844947246 420509484 597302386 941545976 972746352 658681251 970969303 378252184 540635122 439411002 964335976 64099442 623647551 971771757 983854462 162746118 299727425 629630779 843572579 690028151 757143056 731647861 815891520 910896420 929699299 487985889 917831093 633314040 856289492 995976871 998953389 807154274 888341443 95306238 145762602 859474270 910041753 488599728 493771075 594612108 935980482 609697866 886362793 883198441 961528649 711888482 960779643 330904426 428676756 192360641 832287574 636014752 640614052 194270957 892316877 285148829 814996947 348770211 420825324 666154816 750758738 992522252 992580360 886110870 999597190 989556198 999904864 424120550 660118886 459877537 471702121 654295526 922933825 202313498 973866476 826730974 858963664 435625951 743849982 6485207 187781962 229541091 693529592 167187474 278244716 481113844 933819843 91022312 424746461 664819698 828818038 162786873 662981297 400477527 931419042 450676178 617267105 680863608 753517914 723155492 766824984 956169394 959128603 742451899 931463565 798223092 891924505 13272439 620032188 755261558 996688236 534595598 616737256 33744922 725882510 769140986 898857010 334415725 837752036 573338179 819359533 859629280 954858742 751089946 975711075 482696527 873460603 250343616 461904863 333119697 946606131 735704383 887650153 373385039 842632403 831527751 923076338 304055380 336616650 229375435 283726541 450130364 763485118 39154171 269918955 24926189 482505191 475682477 648255599 168997487 502602356 882269892 897235985 919758067 935779704 995906832 998894111 493498453 909444600 302967090 807890785 739377899 757581824 155631782 678333650 252638719 836513826 118963517 159615191 574110287 865680482 60998022 639268393 726027316 804597131 248810200 995155932 991874518 998203287 617748563 668381079 146056338 383006986 403611293 563323353 488599211 799154968 726453319 784621302 808756047 954890921 580906041 639428491 489045837 760076609 535513075 867569302 207957546 346322745 711760525 831582849 617296929 841589587 199481696 952948214 219933082 232631907 806173716 933855141 894546978 936385160 11240819 602665566 474456778 488166625 509448660 847064968 780770105 850885772 779967653 970676158 237491478 670024512 69567010 234770708 76369850 676997987 270751802 456301544 558576438 836022307 664249474 877052776 464011055 819070253 86948795 950017730 241457905 841050197 910105603 960905947 411417176 759156136 586326993 871470217 340782015 981022168 269718350 843048258 472152642 808335483 58831444 168284879 406329961 476206835 227581325 850111871 911814706 927120023 723885984 859421110 571312238 647020879 797401574 971910314 558253630 849118909 936230904 966204756 212616419 436038927 141568407 401657803 942660019 961394971 499352868 942548311 783152437 863271522 621367680 823598505 938504018 952685783 431879343 639204884 373432304 913232661 218286562 237085789 355148756 968142384 952645654 971201687 462028237 668343326 615664768 727112492 357213845 986720481 595917844 951138798 707709794 876283020 165124477 848198856 64638992 707846954 737713049 815335446 214561168 828432502 957356779 998286104 112081561 674402758 199224132 508664415 311088278 965048874 908607803 965586281 750040413 904081487 276329955 952420757 453655433 982141415 395390608 748607433 799082373 911882558 481160562 804281856 613810455 874362367 7541354 531733636 101208462 267994178 479836546 976518221 726869414 914044750 373055384 619163404 907355106 982817843 281423739 926296652 83061777 734276434 544347277 825084925 374412665 693829080 442366709 755827097 942831890 948194273 744522692 778147994 534245854 956674963 523745505 629323925 472805683 561615533 317550692 629663568 919172046 920809987 887232728 958016922 814824792 970841236 596475375 805306371 96621794 111843526 533022012 637259717 239174051 494955960 991171787 992827780 415566572 774034573 901869372 960055714 722607793 738508784 252827798 976148000 520175746 943443906 631957337 992102602 217459448 217773612 595065399 619462039 542300605 830012086 676791754 711939586 670934362 784937827 557824609 818813515 766801007 932327436 58151291 210198838 699680582 962068917 691676569 908321310 532214877 774324457 745807694 758357306 66210367 621699141 92312297 613151491 765026699 812398624 664802240 970077470 953060152 978294345 754611173 917131428 661766692 916379298 463595836 882840644 877688997 922885973 356809439 695154566 907854536 979903105 283751715 610694981 89867352 557257110 362947092 869706922 898702504 915313050 840321900 930851066 617248169 959370947 134814959 887527920 757385811 863081183 609068371 681097929 212982186 707674665 744381710 826799742 698584241 764750062 511274013 640687267 401169983 562220290 887163858 913212634 335851447 404738872 764788545 779342358 393904968 998072622 540182528 851974486 772662807 774390912 862474071 989590384 543566032 622685270 733001784 917391834 792116992 860948253 693555374 886307043 137224627 891752258 511713601 538777791 138439500 914947507 514163383 924661893 379258955 819585766 785091585 970550827 56348018 971056807 387852488 752154406 421607797 776421256 256840377 886751137 539955120 601435989 590801848 794111959 92657413 228529798 256854141 944801770 415951662 480511328 892078327 990784220 311778384 432062829 413483341 895391441 47166908 886168969 546324843 653731697 857879738 867160573 985209013 988950747 868115300 975596400 722312520 848283476 142498706 705294341 641581193 667541087 191493137 940950884 533693827 600311739 261253849 446111615 114323789 790771331 471172002 783421926 28485612 544563036 698590938 773327262 585040651 805036489 381101504 865209246 871196227 894756297 805848842 833098379 481381885 549527823 865118508 908755313 685921806 996691911 178436201 879874794 654531211 708641084 574493539 827610794 802011677 868748755 117596310 855547281 848005184 913927585 295390692 644272098 274641004 281017553 543240437 574799616 110584068 139560801 742261302 955012251 378804412 459902165 783692708 965642456 77358577 963647093 950657059 958309075 217686836 432675565 224798164 444545259 15292187 765463852 934483825 995160327 72585194 907016750 542470747 873870844 636944955 881091617 335676466 843301053 496865311 810186412 519193276 878236203 515282326 818149029 591688110 954474245 792163593 908241417 284054424 433255837 38918903 527560201 44271094 222851975 170351812 335065482 5901779 396140366 578149896 774167380 880864024 930277320 955934086 978182516 699083793 979877693 506079107 676072871 790058522 898019129 862388666 865696021 914012430 972491998 81651723 160380693 434430189 665885027 132954736 247680021 899716087 992898795 716056266 982774411 426300702 458533745 34910758 113551780 279084688 572349901 965243453 992513004 602282781 724869110 525092200 620928325 630179576 724261829 214303087 313512176 52084924 368831518 259162371 696688139 880531326 960952625 629631538 728414079 748299681 785656140 538136333 902469261 552310664 875896667 135119705 324507172 406749369 411429050 610653751 720790416 9609771 317990392 695401458 893097300 657251634 779969537 623486570 985376704 799488385 924513846 894897379 952625393 665833208 684440822 683124901 705773743 475483068 867991697 278404393 707972587 60682642 908351159 138410748 255316489 494882723 591853462 867859209 947693314 870736238 941000791 360972239 409359723 300815578 397370110 261848790 352909252 481583394 779276146 310909683 831611474 678014022 882976404 744506320 770218010 689585398 876277576 709352598 836444477 332967141 970720437 328999537 571244784 497024379 672384700 203127508 915841392 796927709 871038029 79384673 577816907 146697578 624490262 341568703 658628541 504559043 613296875 696180335 717799560 620709478 662319275 233875010 239157056 581338377 769417063 276487894 449650218 593395572 827915982 912761712 949028208 586276753 631045020 661785730 927090663 246909616 761390172 801093987 895040420 513929158 898858983 501823773 521393344 156846581 998296503 497380542 686483212 414958767 760991548 192581664 555782953 976912227 992458692 51044890 257095911 377695149 830455504 642814421 882130530 124317866 143012448 303231438 424901335 499294036 589254741 768082778 829199074 49935861 950905170 815170844 966685934 189599120 832981123 845285147 945327219 463480523 603233384 209161948 294542330 811642917 935990201 869809335 949936995 461488329 485603498 953890179 961090858 674858321 842404721 128887725 285961263 622559453 919613875 302116898 362404346 761941659 851034359 127405548 417194212 315844852 872658305 502168017 809261576 471384806 756855592 674891930 912590340 797127606 843997393 348433177 910474830 350854893 468994498 258844209 946750458 97859944 133103879 126318495 820807797 732990567 847970526 716252672 766627154 994026470 999360329 957016668 965710255 419396399 423208275 343202401 654180551 446390442 692475794 817137126 860440937 717071279 843597407 698182511 889952380 72296339 332631694 927250191 953765900 952079775 993088984 777481704 915298350 270414159 682098419 893372968 956260004 769832652 780307657 909393191 985520611 499446522 946454135 356591182 937154176 865932340 884024437 829868027 837247158 19515116 405354954 797387175 871582304 308137836 861141383 119982762 991261102 252239342 472076858 762422236 954784290 49905720 706571253 453253295 562189639 177281176 910668893 824353389 943979050 558342982 568422148 968288008 989537025 84368707 488571724 860225805 918463203 805655690 968951443 211961654 526634661 637206931 859867356 54316656 472750877 419060486 534355984 622387572 638638795 33277185 390705156 19418955 740986389 281575205 953319902 697947943 756955286 548540550 565239302 41612770 159626139 669937293 810786512 926829319 984053148 796051617 902290469 766260181 969808432 920282455 953045101 669898568 821830139 512943869 869369355 161824212 584954140 250637207 561235461 786775230 791659342 697719928 840470683 606883176 911759662 775936587 793261417 358765706 965993657 513556478 955437254 158844988 342141178 18746793 601935109 275274261 475979377 947445743 960880178 185797885 586654023 315657499 815232605 772474870 971223004 996813992 998966166 272685505 322969560 124550895 707928241 800894935 954183004 246859255 956874625 359213331 895661183 596144243 942967648 637884012 996091825 731048523 929737116 515885584 961752744 154434184 876616958 400473042 849087356 864062784 996493773 127857326 481247607 968486946 999820756 743214017 841502005 189165039 552118018 116049312 756848122 947457989 990854393 651950101 757310928 919137002 983786549 673846715 813831287 531813026 614821827 433976620 533656830 164238272 387289651 984940371 994139898 676047493 838904803 340707488 345677256 154538682 163810215 263202204 554118465 361251408 900075311 649045344 907615722 409008335 508356385 525434519 616666245 876031150 995951658 842903134 942322380 987514062 998114413 836289890 975166322 379958982 862658039 281332489 370224549 853895630 977007039 203811812 779513535 735379670 854712365 398907573 557102737 607458559 909093131 923947369 952687972 507401475 876087538 387872360 569347253 712745250 771232416 119235120 592325177 793661377 845402551 673899923 997764202 482835404 708841573 789412792 806575372 566885457 873593221 338993669 352393208 368153380 471221309 243220110 819389963 246197270 414835550 938268248 981075844 268740327 278972963 184206061 717333104 712239629 827104681 254895297 956374370 733663539 763298307 180661601 973845725 618540549 904425613 893628940 998917815 359372743 793093361 44239974 897222128 600913296 819009747 139355346 513552964 692005152 874563024 204923758 682141709 373711007 908447842 350823741 708537249 20408788 870224791 363641241 779513744 347397317 953027189 48019824 297183816 220901132 328882485 186144986 675188292 64369077 256350958 964773480 994519252 134873254 479087584 797107075 998925742 170662405 846391989 787170563 942411118 926443952 995169765 428407180 624717246 878813723 977317810 808973334 891379009 521629060 802029047 491699274 728273022 185864959 215729656 848262744 948878180 589854073 781931284 986662732 997261021 914949354 988929805 513211204 674032210 398417114 400482633 370103588 806482881 500323318 902639065 103426957 324180946 908435326 963577030 392986382 591298021 534211643 821533670 152052304 467124782 761880510 983970756 520458714 786794342 385546155 400506721 164741261 800891097 853143593 872346031 195942655 444928800 581699921 600802592 482479994 585621884 143564996 532302032 683522917 907512324 881764484 901428369 108801783 482979755 769370138 904137475 813295741 953498090 957799031 975640140 14543231 917078680 602413370 928093793 184065724 751822573 906899636 955552884 797493982 979200557 769089604 789489549 162793410 190058328 147711194 559188196 907473672 982744319 356164320 718550930 835240446 879647586 873157027 917462485 472412341 967407404 713022296 966748204 537938096 593032382 719283554 851335308 761768551 961793767 839581952 859210336 145262857 547058094 489307316 553449469 653952513 710488508 914184812 982319850 862346158 985985864 183128172 676566691 550338484 934579961 794624296 914923269 789336343 801431375 869906425 999156472 639566454 688163840 471834327 797065143 345394757 472610302 468913596 656135957 129512386 714794328 800469954 924405001 141650890 275543758 233609426 708900874 672531283 718621865 84004948 997335398 876440720 930350856 583775043 620368422 893472001 901623654 678430256 948042079 723630892 998908157 120860445 805207081 842068841 972328467 636797952 688961643 449414250 911288690 309656969 807856495 587688653 883053925 111555720 232436462 544672397 617575363 428945909 569667324 990089934 992924226 304828454 731603611 233111603 708895770 578899221 717985080 441803364 458202439 334791770 359168450 469674607 710094439 381031173 760921044 527738492 670460760 869817620 959209825 431331224 928460242 670719318 956530130 481058483 594541376 282310615 928606134 496337797 625906186 564155973 610888538 12989388 381323287 728562152 954402781 856994668 901303502 826157813 952704791 448518725 857108154 765845071 817782086 151605774 923357103 312453484 538107485 180917628 191258790 275404277 467505899 338012286 576447722 556568058 637974972 723809031 732752176 839799592 873006046 612772770 747371031 382891148 691998899 844533506 939820922 135447434 263464416 895857813 914363710 315894474 446077548 903437125 964794862 167288502 231313028 489241876 759150953 735911266 804802243 711594642 932647857 232904071 388575123 246121159 680016902 468244629 864066185 158810341 876786037 375003454 534541728 16036693 926992769 153245856 636816201 881771931 954729695 797849402 885835451 658867199 911911394 116970779 185516884 942808563 998622431 737286193 965370408 152431342 669568554 937152700 996061122 873391623 976194934 916500191 998995620 188074549 299309904 708379745 756671763 860114287 946260770 459845171 646777045 646361261 992439798 739370422 992000598 723203983 958825517 854717553 883961718 578306146 707528662 607109168 836857830 336260044 397586411 517226452 788718807 28244516 874322106 821232756 822999141 736144690 947887014 958638702 976543637 587166029 898644554 211451104 650302341 862320341 925737880 705160099 799905352 656968789 754458312 404526512 655597034 180310491 444664337 59270501 472842064 818528560 972910974 497460802 831836751 824600129 954845125 816253295 970892617 282643645 593569444 472180516 927042884 265013929 433012492 909493082 988588028 13530043 629796351 840641925 915177783 307083739 901527455 907163283 980568954 234292870 412320988 863684910 931393499 302747009 642018716 706577694 909672841 348341621 410632752 737457896 854145432 269789868 665778319 8887828 298568892 210440637 603666649 685404832 839317100 387390020 479663593 269081021 299306916 567558009 726587934 63466164 529520322 103843247 752830166 808975018 924427267 119761219 996813312 649205765 714942789 683997213 908234728 37868538 744663086 897993594 955524587 321982231 455369813 387119224 912831983 488594618 574725938 876034595 897600268 400562954 683325832 830614233 875054020 607476071 810740630 532792774 904283550 247638807 602364511 585982742 935500967 500312270 661463348 177028112 374028418 603658473 733478231 351447065 601410949 495168201 563580911 797937079 971665721 648793062 864654193 642487065 931473455 948078586 991142646 571341010 851676882 26428104 448882369 558288828 856888904 260789126 318532495 70262577 921110890 267050271 399865666 8683253 433330859 886286345 977571126 733884180 744692890 603461452 862466439 955622745 989697061 945894357 953426030 983919414 986429311 313430457 649809413 602984669 777809862 653511652 937839171 473805338 581862948 759657812 790420235 99631099 986167069 363318650 453055853 426433508 748940794 586461461 606458864 244804470 555289247 351949421 868098766 932372123 963436192 107755641 352825089 602645727 951880794 817951286 862070201 784447302 959511511 196656810 902683997 961084366 977352305 57521198 255520584 602320839 921263935 877378639 960709429 421599003 909360869 974531079 999239416 809641503 850991344 421469716 967029250 155225120 553951827 102560533 360125867 307956587 484958448 654025354 822277314 862323813 995869390 667882390 691569913 447762848 708948298 1653734 3244105 726870937 783352062 769388087 912021351 726010563 831653522 985125782 996524287 929262608 953658703 160279050 779333112 736522405 807832088 472771278 806392738 969018321 992434406 164078384 657279407 230867302 481326145 63653598 972215834 438926045 503150086 497065068 628464048 523576970 677076217 650523492 719202595 312030698 612578602 147467085 151431229 986220861 988719610 932799687 975540779 920125719 945531077 84980580 964667474 993904875 995393495 955849924 962529501 221447295 251494645 309974843 758415403 429350274 565332060 657752277 925726186 156147722 772487236 369065572 680592790 62030973 996897393 473885674 642268432 431509701 690147102 814170894 913894114 909570232 927925990 210122990 396054848 227029699 563103922 138775587 545182141 380512721 615967406 261659218 460453796 289720839 347324540 807373812 991537912 894704836 958577593 128707088 689925634 563684371 901917524 356501543 503302615 870819804 995969151 439275088 576576429 29266562 682595109 624944399 771445451 904986423 977555739 70363001 557296742 549447117 917859726 369592235 522245148 622344974 899414986 621142734 823744015 320184849 616856444 836261863 974319557 531576481 978816910 410232084 929919456 90427017 431295466 845223747 992553767 339564777 781343661 182161494 568631874 481372298 661110913 697899154 822680042 68050821 134671821 583314106 655761592 22336781 664868576 992440291 993824413 822269830 890699789 656438589 880418713 615976527 750070654 992265962 992792485 991155593 993610749 655234504 832496890 309667918 645025309 621358460 917861043 690495787 897316374 446852374 573306017 44325722 382824516 685909538 866516637 32373232 104388245 221190703 591661890 862536905 939689874 468905210 489055590 812558849 858059037 2597164 509908980 885470312 990442528 776847661 859998732 329628281 620248927 230519401 675330146 371282821 984282436 658054010 989580866 20577558 896835373 333989488 406196775 193116583 777503054 647359586 803347018 789380218 911288261 789487448 925581101 241972061 742564520 871022738 916518724 625000021 629831375 810097538 868364362 632018873 799634547 108859474 569997925 387834537 476646788 614821688 916888217 291431389 913062576 565313006 600461875 229176175 555405394 529325559 965912132 327839861 620432802 86032376 146343522 636674570 827009534 449314609 930698021 129817653 452201472 520794775 915124194 396837490 905979611 848816009 965256615 131618949 534570115 580582147 945031535 800021955 891374918 545007722 980113502 509292241 893706562 589103515 673055539 622155267 824207415 420028405 425531660 907767642 922053632 49586621 210797198 620430749 737755810 75161120 927528818 924293076 973381115 702682191 809513206 443966136 919669422 301040215 409861076 469363689 696016128 103315626 260360349 199499050 363817111 465850557 983092442 1900927 875660936 379755286 534440651 621928169 958026065 839740070 998666613 304792012 548625893 855609583 869508191 279553403 906121593 631910254 829410932 203732303 960134777 793346346 943666765 559333316 860226905 264750240 761025362 26973328 620763848 104696089 795993678 100170357 719920879 176956666 635582947 322737347 710209483 966088365 982450308 926323641 964433371 646186904 975940228 523359815 911613176 49538305 958145498 625414447 863890599 493640516 983898575 351747479 545548485 565506313 738913398 638645932 985195426 337699021 443148009 766033322 907248642 761650560 860304537 864067975 899766038 209513914 469319656 484878931 835613207 658512546 718397186 756477992 984239855 94994780 204727619 169239250 315357108 896995598 991788813 990336010 993748739 606558496 799065138 69861956 931170802 826093554 968576897 310078723 722014386 681622892 948112343 213619252 925414399 658430054 939956278 543192634 579732518 119989891 259766898 899043020 971454633 474094851 870710088 56663276 946446774 888975884 991433415 56487756 254411664 669155944 829743434 142355847 991151993 743560110 790205018 315570474 532302011 315113826 909837928 511422909 545529986 424688587 548451886 706292940 985274816 830690777 996958525 905132984 956752902 639611520 743164853 515608810 936030333 857394220 894658887 803905070 918827088 558467484 880316571 231795968 782812050 803226478 843361260 259402903 391899033 801266749 836022681 4955783 267864536 598351965 971488679 381726863 956518227 519702747 936804027 124079647 253065276 690707660 825519439 312215082 512488465 505251162 521321650 484535899 817007862 233262869 536043167 763794746 990439703 9746327 570614307 458089494 731469406 613238057 802192223 222526699 355927577 743798170 757005128 415879144 883726741 414995663 985374481 995965512 998472674 907511913 949251611 592127057 648839084 215795172 884164732 631141615 667040640 609019145 806311716 332611928 958305366 66616359 411542307 620652191 866095611 67806278 585864128 411945054 729782487 972449280 990494390 887306861 990982291 810500675 840154434 690083473 815804311 922656617 956273218 157697868 716033389 167876425 957818871 382034835 489183026 764166388 935056253 451746615 509479223 939216116 970537605 333512167 998633680 861712587 932393356 262460026 586402113 789092002 874933751 333442086 448869137 706391238 725980886 432867211 819072333 207121703 860791190 384805908 679388188 61719152 832348561 136910061 665903032 82576018 648869743 237817908 945724100 54329424 635821709 220725111 957701528 616942237 940656962 698662233 766052844 391198812 986722590 665590109 950564592 471636254 670765249 320962821 536300483 376715837 591630780 36333877 130025669 800097008 805780881 179836887 380712002 245097220 963069651 853529675 957558468 114614514 589130478 95524049 623125134 996600791 999535981 605757581 845719852 589011946 772398615 212549150 262282155 493583501 655709279 693998395 796494969 26296784 819833224 226027118 613772762 616280162 770424125 997579402 998513769 31116098 433816992 728578122 963263598 469433698 684268781 492029697 931894281 415064493 840900366 553458940 774642028 174166745 653231100 342116486 886067143 881125467 971505069 917807960 992285943 519173786 642754077 883377193 921888869 72712543 533727545 321115583 466394426 850900875 977915220 456414730 558100324 715911770 724747362 887743110 996270877 96074505 733816764 65804370 517692340 174656100 514062757 179899791 767397077 224363738 644183951 505990016 563307215 202882905 212167944 32650541 366088011 595063726 809478227 689383601 762387675 707098245 927767603 480154085 488664076 123375531 841826019 784570224 844870358 749709174 981916236 810663959 830334707 324653137 814239045 885234152 970243104 222185162 428587500 397205156 881743785 336378161 869772331 102446810 132679616 574242947 960908490 837872143 918550458 241223267 265351099 626736295 781751798 191259183 855120321 49051618 153956283 103260591 452138596 295182349 535810570 11591911 305075685 407465685 685982579 509503406 965810835 320929345 617070166 979532329 997000258 697084926 726777563 164276858 720268102 198626223 965156633 884127188 906956133 106594810 635727970 816600759 899057292 569223858 975342773 561591873 853154429 279700366 418546999 986029493 996401402 772097942 936525407 757133277 783461553 697620268 962205764 613444669 689634395 594566361 976323552 623853879 991877366 820527977 867506086 530168962 817372850 648843293 699184117 288232823 993861767 300197443 541526181 959590958 997599664 391872636 637459519 487322595 903204150 302600829 381566688 709096803 900092663 425432507 752096715 680898582 920191592 347437241 451967570 17107555 397534347 852377388 873935510 780247418 845123141 107822633 481773327 916757649 932210843 480604073 863329216 824505743 852421255 529197701 944062060 881436942 931693694 902730650 940802559 353936221 937862862 766201256 840326953 751561262 768412719 32836850 40312478 752806663 863940748 30130025 243472743 652685309 724050929 277210658 815327435 315756952 431981756 945878340 988599045 609140326 855687031 483296109 842303794 335732291 579842420 447638213 466925755 113370168 975832289 281232965 769912863 130413198 534987305 14245495 150259441 785605604 837685944 779473663 956857222 386566887 737461494 940199117 958913926 81308106 157499214 901513859 934123604 817081623 864648796 989872613 999522227 47358273 704076939 704946233 760930670 596265878 762021959 945859796 967472414 774322436 839188248 16030113 205589583 209545127 803903236 996901767 997720720 631233294 727907942 16499817 964315807 32323673 718461783 882896597 887895959 281009536 487145740 7691927 921934388 796389312 874380251 521980460 784371912 93640146 243907757 888662803 985271107 877348517 992664530 760862574 957858122 842517709 986139679 329566673 532983569 736713612 996339994 488032052 888456571 478962169 850853643 145569363 534434514 935452908 972345703 750148630 968485431 365348781 837058281 613223838 865051797 725849490 957569226 415210066 493683242 498719314 746006290 552872466 617484396 394050828 665548492 17840033 570192118 847074242 993856193 855540356 875369381 68935621 389953386 275082446 408340532 896352285 933550675 393298496 728357678 502480933 592581057 969682556 999807822 88705051 753046911 882544779 931172331 647281413 718432882 563673214 881988164 601281473 843691820 269612597 562501076 559744487 575226539 230442153 767640356 254664554 867015797 222291172 673722966 365932829 674749029 917830348 976647997 352351951 926844018 874718577 970798468 318797574 895481722 931112536 934331673 375687450 825733951 952147971 970099643 123563176 329521252 698878576 772979227 184815469 683925373 411349619 936865936 115489920 393925566 674820009 878012912 609376210 842309737 649884371 855512240 392827916 802038052 875385524 929362430 240133507 528256326 828289855 836976074 128577354 326318247 959108022 968018554 287175190 410255374 472263498 774512691 38318782 771901801 378621088 751758178 934837731 950763208 632599949 825189440 890336638 971805116 817867506 915497100 936899345 997758526 891044926 959142184 807890448 916552132 74631939 109639066 915371002 944852642 918605764 950975957 875666172 967261542 761826955 792208880 509413211 899998596 319237225 991693339 333887921 865510301 231032729 285788961 262793987 366538939 512543033 950900350 191348157 973824491 124242287 541851839 280795625 663506945 464043674 696024147 396685706 790588215 486209225 781895368 152501049 662045942 44028532 809032086 92130560 676429206 637221587 647549323 736854478 855949242 432594363 808940807 550001979 659737225 206242759 880548363 888931038 917433117 232213979 744024741 108811143 148421212 612667910 694856787 170473139 212979056 683458534 813341773 163442612 810917352 760905556 864644090 429464649 475409238 671252583 963968094 821069300 893785457 499746152 632230808 444141021 793375067 432893914 579654504 7851367 255571296 367212376 444158208 221049454 527935553 738037563 910798230 454044484 681190909 130411560 549946083 925645636 945990689 185827252 930679615 511260908 728717133 552512256 690570380 808949993 991739564 267999877 728008043 121573653 496694614 350515891 974143459 343442926 373882892 317230371 412933286 105648956 800729966 404208570 757747413 489979242 539029176 117506245 544214228 285274273 831150891 226182402 918825977 793535048 823220134 797262857 815261308 145697003 837870509 643772351 668379389 525072556 779267772 951324804 958445439 131174709 526987587 237898396 296675757 940098885 980108472 274470791 451126849 531403465 841399949 670389792 728682215 700507286 759780508 260586961 369753074 650216853 933260664 648008275 870136796 580838733 875952320 750654269 800859556 533679216 658644848 5320912 467652292 954500871 990950488 90745669 468433062 804408479 895714250 972717733 974176414 802733305 819755730 481142952 773835393 545422414 805098160 152545964 478610024 369808041 610243961 749773262 843507389 88290734 239575869 594235917 978913772 505476201 853029128 20506287 395511504 986607994 986928722 899198745 908731605 240525479 448407040 693280589 713248138 249352855 454098082 533484038 998238930 257325683 412705826 262521078 975986480 440395517 651943090 998947715 999805820 782919255 963847297 908906258 927342127 443066386 767267701 770151137 793603629 138959404 719704646 590995605 949656882 55038963 485643759 562267760 679470279 234461325 965479180 203394158 839783561 431716578 989084929 625845459 875393360 666620931 876826771 295700022 914758370 330695445 623928887 608965139 674649005 693155022 888248874 628955594 981154271 105442616 294966025 256141515 829527545 166200690 221757163 53796532 221037874 713427720 955152721 675891664 885211712 465825133 670320698 172444746 803901420 263984833 608270998 214641146 431693221 52447038 717271873 873454645 904794723 368078636 985838818 959683922 960760832 62183718 444020525 400460199 752356619 619544696 924847862 535315809 630815124 166599289 794719365 779014451 781982626 519099386 951032354 518734525 771653365 588030313 796523652 876355991 990031031 291505993 516305361 741847308 991065844 468466590 948635703 649555600 791059377 743795307 765176284 481653223 495862914 95023472 247246575 887390092 949719769 261042166 802231526 416507867 467398110 607149957 962985139 916927183 990665916 379818941 918975298 265835928 691737323 46283486 245756136 980206647 982182137 619978386 775374646 451056772 965138027 132683089 881620200 551092657 613300992 124819661 562881642 511591257 692976795 513645135 876024350 457813940 801993651 626370736 873101103 525712139 610358709 641108992 755795672 390038568 576778990 819759111 907539683 915356682 999245681 270529435 434594890 460545137 742080988 396716000 648682303 796566515 949385764 87999487 726270287 686513798 730670119 470148353 698725459 697056883 852492741 818051086 865016634 86620680 277876545 887906739 947634929 151701364 745858247 761372658 848337202 929108861 953247122 909319246 972529837 975019787 998129846 71597724 660354089 15939221 373735493 575801394 977441716 202102322 671297250 333761801 574701590 521713420 684854069 588608325 752964463 790143473 826771104 407396824 789701599 585203253 924651698 503422196 537558680 771497370 887782927 246924501 597914415 997596968 999786298 913663126 938525683 487675790 996310768 548033336 742745665 323318262 815894919 277160067 703018185 304853437 333381322 443493902 752510168 876148320 907843234 376461239 769698610 481612009 984546697 552910310 739688755 66120313 460954569 29877194 415715246 310579311 955350405 382194768 985711017 319522739 935812136 587418699 718962195 636968135 718899619 975622874 994334076 384905565 435278115 780934063 832892495 674659093 813072478 20533975 886812046 411010152 875616032 628230106 868920094 765795561 970996368 370956911 542669151 23891956 222819203 243304240 703169215 259965771 556334981 558891706 650920564 510110546 906366281 757238237 933662003 789439969 808503124 3334436 947838636 400824914 656096374 661836871 954266489 47636292 463902798 198259298 602761265 112802931 513680767 70251637 629642058 167216261 416522553 198769326 229578415 224257754 301419894 244889095 972428866 568300993 937131154 181508500 946184095 37327977 365686028 678388569 730976266 103116529 449878353 854950441 963614323 80193120 116271147 800341421 897677652 216590451 433093068 309716248 620466073 889057980 973690544 173753912 695362052 896267802 926633197 199522760 821268331 915754466 964013512 743696853 788108527 832773227 882227070 345654154 437949825 774190100 890121955 437450631 956608556 129467712 765271326 439151607 945061601 959253384 994461876 283824408 506580728 355258506 914111394 325668507 739995034 384926920 794369528 168271024 955891898 422166695 484172874 557350280 823861922 364514614 753958375 634718861 867188917 575924624 744216301 406437640 540651014 992089109 994361587 735993285 963461708 499635746 699675884 583808182 617341067 396258232 615475892 151557465 714028786 749899104 883981083 458364628 710411867 482118122 926170429 468926094 605825438 636905323 725443313 594702494 990666088 956258313 978430867 888982702 892310717 393235370 598192941 507233310 659059813 847790504 951132194 746278605 940144437 893627031 948169846 912330603 917749182 328190666 490110036 276159876 671264742 781211248 825899597 852578793 947525537 203724265 641355626 212509718 308795351 77482366 542213690 891428555 950835802 118195988 375082951 693191731 886499567 155819480 188694125 983292935 989853768 788838841 816978577 634285977 661647125 395915351 588793143 26542227 274044014 397216695 439773333 448624763 648804004 579171530 990767737 579040914 623547596 738931356 808334513 526363203 835619934 178112093 914392605 481368111 588826869 663001866 783570151 745031328 920077336 120777568 143436777 773278248 808985203 637760806 724502452 699206554 834560294 771932226 807486550 408580118 475148144 993023405 994598341 798304537 818684952 729734409 933096045 479416462 686077535 284355108 672780267 887553689 966269225 488736286 835554520 755602403 999582769 295713356 723406062 857261823 960751241 905005154 989181931 164355630 616316679 177523148 674778591 797837696 932291818 432737665 704230967 881485789 998914242 348256158 735197057 196414477 953154349 101788204 243536456 325278284 552878141 389853101 524199407 880132406 968579576 732666586 961497293 990754553 990785996 838002584 892719299 796270663 985845545 730610662 916775760 581243243 901852988 236577685 796191711 194417624 887177246 470064876 650457697 425304034 705042694 866053555 941341969 471827095 620718548 618391253 707696859 290022642 921945830 28984402 641720566 29405758 354776987 662942114 962781655 607160644 650975083 286521534 289508225 817714607 910420757 38912685 306379137 511903233 893184568 56213369 282136961 481650851 646198343 534609287 794932919 992362651 999516825 28980119 430651458 845939045 987022150 807123071 909518966 44818573 280369254 444952029 571847183 446437528 561294858 543694237 766163269 20412657 66127835 675088833 908703677 836975612 929936571 148126015 741553052 936006794 999899081 423306479 604969835 634059141 878651956 43329880 243763574 690306638 786916928 490251174 710396758 560166466 634074061 577574764 918157031 218451448 928161523 307875445 696893691 908272287 946066239 127700074 795599928 27354635 111154253 807553810 852855713 447415748 872103113 36739882 336479488 234968893 367371198 222623350 969228786 358349709 786246138 188714124 482909397 252922696 436916077 804734946 845640881 440819809 770394666 701345584 763239779 7944353 333118880 274350027 910288692 519342043 772046231 384032763 748378582 514261414 661571118 733987044 954845176 278986221 529161471 295491559 645321008 117794994 291738322 556002963 760941050 122515304 285532983 480802002 576985369 165379824 845040386 32566785 602916588 627748720 714032924 169006292 814178707 429476532 459565590 313182183 931657351 766604400 939465850 548374625 984313059 957703558 991976706 521487070 800837195 120217970 549642934 469962027 745944935 907332123 930093154 44542245 820390695 263312012 712602407 359435579 881883072 233191338 551991726 745790930 821498038 15117605 276095880 630343459 739268164 984514319 992042629 774807880 879192503 431650664 563566081 915494922 950353009 44289323 331605764 70254579 270985374 387857512 698034273 511691519 711623729 467393673 682353465 342412717 477992768 241646748 957944622 279925861 685154969 301762808 648384348 900192551 948984946 773684041 924023958 328860213 621444547 326090616 943433026 210504315 276025583 467132051 473039365 272935857 276366613 919383447 996485140 372426094 650817661 596716472 827292725 93478722 928484561 881216869 955669059 505463475 961650652 220352991 342322157 93780113 108529190 735372030 935039794 476686760 699169301 377044548 628064358 968419392 978509411 430982726 453980589 849735532 926368460 835762447 971438925 306777974 328001403 370503882 377214333 317489441 386104473 246300171 680201782 836942421 894410676 338586816 889407329 634867660 725255092 86271104 251738694 859049139 889281016 651015261 662722022 267056235 930704791 345205238 993636297 780409382 927234464 850305608 861533119 689243938 961588910 146211833 702852517 776042900 824757878 704433331 756508116 126036093 778179844 173336862 951786789 590833270 839730274 98221312 129021722 672932128 795020215 847459399 973629123 925813776 996297099 881974819 962327958 827531880 879417773 658831357 939575062 835649562 836676717 325022657 824437507 924266906 932930906 758573835 893617430 59257565 812337848 367437070 369698589 638180845 652522211 430307137 449886519 386232414 516157424 154498424 541741403 771651460 857101055 536576424 715160453 63825512 755838581 668486011 840650326 643072656 763653203 957441171 974235499 741724496 987443451 465330293 767148915 343252341 367214775 821391903 893909080 713181281 845632010 473632670 913878488 331637951 716116046 332085414 839992936 381215282 758243067 691829438 882835408 671846347 953975898 209229210 803586233 372603782 962142110 579328938 784648826 958689900 962419927 690066111 731370233 490076172 842032503 40528912 946699680 684187723 854928595 463048669 479858615 835778736 960059798 223431638 890777033 480931620 846124095 140833551 503793519 965468742 995128988 739077622 783271356 511106291 878060784 764704834 964639383 799240337 981669221 529288956 816067592 890175908 898417691 432836389 546947542 169716282 629132026 675559412 845086142 718564701 882523243 574946292 742583801 377434276 404305908 751840114 902835889 464432289 769904102 997411276 999638118 412409014 458861389 687566319 703170757 417251934 770351752 644241502 772088242 248708770 328137629 733989895 816127370 217932432 648913526 166388808 522071034 520088317 743422951 143199615 391623310 30160993 646325446 357508531 840778937 594030166 800299965 892242782 952281948 230049897 471723606 238386428 306069405 926440668 971880302 67833904 934014551 17177064 215276281 967442512 969490422 663350275 819078070 342466859 352986090 271571647 925223597 232550977 748821566 431503690 598894093 586393637 674530100 765554177 777542360 834648222 917333970 927940031 988095422 608018462 956311103 262275458 696195036 948126714 983385526 812947908 905783411 817281911 901282344 960162786 981959838 712162719 989598580 281955772 939941235 206435626 981171558 441997548 553874839 578600304 856833220 997562432 998289411 556716766 666533102 407766653 910496064 30537497 393887646 414142742 697815458 270415812 374714195 34313956 898639096 534876597 727333479 195554602 953480911 460284398 863338037 709658583 798842121 335965472 695296703 505156950 603529643 40151786 272279342 778861477 906484757 331545863 483066134 160887303 610323029 336209203 368939414 36705922 904914452 743964487 934622630 849456311 903363275 449805345 533092598 77795651 532210691 20969168 72206767 283963999 754501246 619148066 705782506 999185751 999449828 837052511 979429137 917834572 920146525 682124130 910926075 731259249 995311270 558829543 814796990 853787133 958822082 144044870 644214168 316183222 658305451 736353512 986795444 158205092 283656125 454273221 750583697 432209403 782177046 330699736 358879323 162186710 414745355 77782948 637107000 991863181 996195299 196275621 778749602 880961215 898778482 87858388 143655157 683946587 712379480 479541981 662823677 979196843 997979398 389995998 579685714 865848593 993956389 937095768 965667841 674330039 915056127 621692575 906503930 888569912 957804207 787058159 810718792 986361259 988400755 557166155 688372629 293594061 299799059 401723900 754416190 136193361 344868284 146276403 595729947 988178210 994821362 672486360 735649810 702318140 843522240 282345881 395647861 929372302 949189542 841398407 882594459 912106977 995291222 450027955 763836744 399872567 633939434 218254659 272822598 76755536 380576780 912833332 977676612 249670005 382100196 355273151 397201787 803051582 823930493 403704998 421145712 124071723 898612676 131809517 375818338 945009707 994697975 124725247 564993264 174443668 589739622 882833162 939947800 960937891 990715871 741492222 989146195 182884330 999656835 365585510 866731918 102815409 588972348 174154798 605554680 348201408 736261555 179467557 892836846 64969373 813330608 937431317 985009858 68148682 610266079 626621118 984891043 532284732 989233156 675251317 750698054 298109136 919973253 323602177 741067506 119099828 713582511 75713010 701208054 123602312 553975580 830036998 911091972 955741457 977779371 124999055 892633972 897131874 926606736 503242860 873763675 358579296 934385507 857058608 857626339 977402228 990278407 154167428 604384151 754980178 768790687 179443119 295480570 578497722 878986829 173076947 373915513 602651577 976687870 192911339 278333523 413201815 572331439 429158022 875675318 772607682 970387932 723397820 810294594 699415912 753802176 220979897 473331578 853374604 962059718 448871725 612617719 930326928 954806474 242050174 270447833 871330934 971179853 676389409 786270451 531847455 650237629 180100691 575096960 868928034 931260958 24816884 719565749 938885634 958242051 972239474 980495539 420084533 762783345 965319133 975275216 66443496 573412251 308730318 737696221 841171725 941543949 651649949 963008986 153866242 264485499 722443156 950421210 694094665 778806278 760749316 853155289 751866713 807517509 204608372 296523863 220381061 924209473 375629642 994778168 725015459 858788430 614854047 756371591 382337132 540009923 728278131 992934535 948482470 964778371 170499735 366865985 774666658 819623795 680317200 855478551 6600937 842951161 338379052 404120295 418048510 910523832 745257800 750742457 65724217 774071308 531012526 675547233 661294219 902905277 8950961 257186938 990106183 996363692 538519360 998260905 441044269 555621641 210393941 502116845 4161913 820382097 382034176 396997937 748343370 885739021 64459546 587034472 326675761 441277296 764629129 915570646 688646090 843944264 747053770 926027621 99714226 972210370 371034300 587581078 345087153 971435303 605764156 606831817 699524496 965997234 928285414 966764040 571876853 869095738 390886602 612134288 963570101 987057225 528093942 682939790 373413480 741795677 721430714 968236067 796939273 992843889 845712131 872808973 341792218 673929390 750362504 872776753 648352424 776492887 135988392 193063336 891179941 933317317 496761647 712021554 957072118 967713128 450171767 958604781 472433719 559605535 131486613 634439950 642796474 837667625 701708541 882415852 540231258 994579160 898519200 991043347 908965572 932391581 704988809 758697235 114080661 864382413 266333714 405317871 562171317 807864219 907189037 925645113 631010444 830869540 852608500 918634407 466321965 863963560 781816351 968606759 435349745 873537856 359930930 575972086 428684857 935781543 806959316 972652096 348173470 513789517 686942909 736495604 742864681 958604809 208269393 612828752 262752306 770593965 275822437 309560052 246954491 310664539 321354763 366830623 754712250 845257419 578530280 629129604 987890998 994754151 711827693 918090767 648656345 787665098 906034240 931496652 173966345 677050413 672413383 800063339 435526713 760665399 635541469 808782884 606374669 834173237 620477077 913221737 912636933 946388102 946210956 976445370 559142359 920789784 563458366 697796224 675936496 898202245 914067078 929753665 104090755 772148104 112090476 217803254 293362790 926090851 763704151 982118660 77891686 864848472 345154904 846912794 220355825 865203202 813658686 823518988 193788206 462490962 767134376 918486719 104604312 437063374 313633256 382851569 563813685 570885772 569253599 718345126 42569870 803282246 939969567 956089864 493042344 814057518 461378088 925994192 233959078 543254049 611830889 932840837 444105602 752066045 393802129 739363267 38426269 653582182 890890430 994991027 206508131 959886138 782262382 911090252 144909798 748354963 825108950 985301568 431048938 546664565 735213765 737172791 814521336 926777188 764859556 950992123 657213360 964831121 887085691 933836896 992768254 994626232 494735569 621924983 25655764 521667567 609341538 823455758 736284232 835685495 434915375 711220870 612856975 655124140 326431328 918908739 107973990 557246630 485584212 984777440 741624799 952692820 887956439 990113923 964835564 975489139 503308248 995416594 258726629 419166833 615669121 795822557 795785041 836283936 247878061 743012694 100514359 594279122 839776587 931413137 868720113 951154482 74385757 993253374 9223716 856526821 807288435 947785214 409478833 645378404 532493243 633159419 756583816 943637364 35648657 448879176 80402308 961255597 249986371 880327103 687772665 778495976 180831069 918961506 349503949 700114111 302019030 410078563 356445600 672812331 859100073 882122841 106538084 621174636 502862749 554933143 513411343 604703589 786564507 878852108 697290592 976402617 66981759 652609140 463277945 606911295 297408993 868164017 64793097 819601229 13781681 78493474 333011831 603438145 476720684 631573390 551362008 700964480 452399651 485642938 894666091 920768597 45091348 216446765 567963543 657944229 525720024 656892233 610814213 721578505 394288227 745431132 976138462 987208678 971261013 975223587 430895913 587731658 902164955 944902482 431087030 516948095 875067831 890111502 525922486 668006441 517537743 873776493 429039328 746093828 963506171 989861803 323224355 943646407 434013868 459918137 853621543 929688011 693801986 793051883 494977094 682069423 248776631 656377598 926922810 961348428 932132273 937878586 755619403 930187124 199375571 535300157 133770449 561444332 940780259 958919004 984847335 993180928 158353276 718636122 61293193 268865277 930603923 945100304 471888924 728166146 439076072 951804926 26982235 325855676 550117973 969764361 882514631 968812205 270394605 683240812 968016642 982679505 361897587 784273260 548385195 822709800 414478555 991597458 71279641 456554607 353654056 951193157 968490274 980551112 477925981 653112862 33467886 807811972 875787309 935995354 321509390 482038520 10724752 616507318 604504210 637095462 579234202 850754050 229434838 335722948 41665181 996490229 232941803 920017955 480569884 585771952 943079714 989351911 322324503 437779382 393525175 707864216 626952000 927170323 61263118 825279104 733427820 907910762 99873240 393348911 385258572 951077837 341689221 391351816 263256765 413490624 79114143 959327402 796102262 870859281 583640423 931957939 360827474 469835389 712002880 921691245 869230720 930979002 359223619 500759469 800690216 814108150 745990181 955484222 830243763 981977778 377184623 571617768 501913974 857028063 90284079 383579175 861646225 911156684 996830242 999611336 300243061 754835457 416888925 817694679 379244511 896320151 916555531 998169724 946830147 947152974 640824978 643739908 107071050 910146920 821411042 933193533 219056736 709186734 366264256 606999035 710281742 855848108 622378187 959843232 848601667 973114627 305563621 522233576 63864671 411274837 521933793 674114452 276822202 371350046 485120466 502855805 275115555 677825469 434699282 729307047 916269466 952291328 142603158 798500141 268754533 822824534 876716684 943346702 784235166 891324902 322850597 746716229 782507056 975250205 53529061 332043391 871012478 916670773 686095046 945570079 632812055 871900244 749078814 847396308 38241860 752195552 953647157 994772496 86960790 457775582 282261584 828893914 76709382 609299843 465327025 572532722 799976744 976526405 996769189 997106690 109287444 384488644 101829574 458236007 301123981 320727676 669731932 938701157 27474516 65816782 431626132 927055424 652277117 670128931 428799830 565205197 877014318 954721016 539347274 937877168 38033008 272499836 36268017 175764449 911242951 980756970 167782296 926821280 329798937 543399878 27602744 260147726 703772976 837519319 349199696 400034940 673567553 841334780 614744259 620897093 423947754 574931730 710121335 731326972 847770925 934243219 448204687 939369543 78854010 579065446 651975742 660195763 629017292 826466023 20748281 963104648 538217912 874835648 126113657 306354388 505372100 752081623 749072615 772528773 159798980 792616819 520993278 952230101 590802901 754587520 60677820 741682886 429802512 924237351 352596490 673390764 8415462 446239417 211046699 756381301 896434869 933263457 272084359 765440227 748988774 753986574 995525370 996418233 881627130 937616315 758537826 957224613 550784645 569320982 795104966 899430555 381317330 648264965 832318508 915963751 368999582 606084791 970921620 998036618 539846780 768326085 583012106 913278320 457387888 842622422 747671486 835048316 232423902 578983561 424111966 848212294 573584546 605118042 787909939 976933967 800686632 989708858 563681522 999811592 332524827 502898643 509280138 882751225 167554388 205526269 70003413 505208224 113387721 943769800 426135067 675699121 75611120 632653315 999083767 999106019 541962501 681486021 854942370 889598970 284875268 610527077 395975376 719501306 517178971 632470994 445324046 746755148 82475985 613835875 908952178 960979578 594637154 951415898 332378886 712659414 360802807 625706683 735263862 796193543 15465060 744277225 639706541 669865172 493081060 736534222 996614801 998863974 899409095 913300748 813788998 919889300 518101269 977873246 325497113 761303567 382394141 691625036 210582887 426683053 540419989 802542766 490148552 505178557 743646417 848140395 4086736 449896058 446738986 969524683 596275359 864169799 413626432 958975980 706450711 839927637 130107934 823183288 57237479 775884614 292651899 690420673 157568366 437129717 680883800 730154394 542162562 654950184 879364702 969822388 855932592 948501280 921922761 948236509 458373595 945978168 262181888 535875542 795167233 966608455 710284388 839883461 684368110 962151809 711440672 841160848 175591097 918951271 838145012 931014013 791725926 845679719 628081827 814130578 568771124 998797154 309396092 884704577 366159731 705471816 201266901 287560832 341198507 947056452 602476414 912467682 73827211 897789930 70631355 511716742 42551430 795961522 344236375 602346663 224675613 827523034 298724008 872575280 288754571 717408279 701191638 927128538 909146223 974858592 675533944 943722330 21492067 679551484 721226622 789403453 424807995 531647797 575252909 624766866 126834874 636793450 146075586 318016767 929238665 959857845 984361020 998935345 228129009 509093016 400770575 434438892 722085660 747922913 216824410 486600866 670002633 751143447 511799620 897196104 82946046 265308153 277493106 363566520 301451108 776807444 91718054 595561682 475700 11234597 484660603 491688973 942112926 953875903 755871061 767339453 986315826 993134083 881453038 934477928 513453956 929401556 948784571 990471644 981177536 995701108 941978878 969353800 379771767 636391062 930692911 954518442 908235399 937067883 249968854 284112288 161431645 725583668 307377941 860627215 974613518 992254480 664010733 820386940 481285809 526220398 821059115 826769510 153172798 660215920 944281984 965666342 839985811 931382948 844936456 853109425 811165664 974616315 856822353 907564104 101433740 431190609 771730468 976541864 785806271 798835853 48842354 291553552 120679960 571231067 167042379 504507539 508836602 533104252 535421808 730134931 846590447 903597085 918567850 990513102 531305521 837281418 158933515 567903578 672979386 998414534 623026280 714414098 48661545 695609636 641120643 891783326 814066780 857698777 977568973 997482544 85935385 342810900 550473480 930813994 989211585 994042870 21788332 590708107 664034777 999784818 836624861 863398196 761606322 822002341 33597670 336353174 687187365 698160627 250910771 408930904 836364656 880179022 597797984 826064380 227116904 829384450 745963719 970978641 404086291 487001557 801447905 948054351 268190933 627674209 977569629 992723011 721922060 916887741 22589103 999464817 33650633 843336397 167404673 821881401 484716307 791955335 213165108 438336789 783844291 916119757 298526883 444552480 282825619 471847633 383827432 790793885 196215081 981233646 863143609 906348504 860180502 888812946 495796927 904953720 301065297 403135545 68568363 682616117 859873405 955183300 109602782 771176449 217782613 549457511 126065277 949492661 959235946 964821071 571245353 598869187 461043621 977379923 168775068 652250157 27192040 610113734 848656070 919854380 78464211 669115072 916320981 990434720 466591657 755737024 24736682 383052954 391176784 744170737 538584885 879854210 247616323 401526937 223049568 466116916 492112926 736800196 69295444 314321937 226764995 804448364 173581616 432192031 307016552 837080319 56175980 339186497 909074166 957828066 897713601 925299452 590741308 623197461 836499651 950097681 119690080 350881875 628856846 672968841 30334453 526297079 479139311 781788307 331152362 543575683 645347762 678136268 729003254 790496779 363738526 424450815 166960952 837215802 9338084 216884952 972225265 972930859 814012762 864266151 429692909 893920079 66913291 154606488 189724535 195937392 587749751 658356411 732018968 755121359 444936567 473742710 316157573 606003450 30284873 289324793 140199921 215572851 82273045 150433993 801827059 808303752 164852278 996417088 141181918 447737847 88056777 680971150 46862349 784946693 98437327 612995224 281227787 824849934 880018739 990665918 47601752 274287782 342147153 536306234 284618439 855122573 10350313 949458046 700242317 720561683 181268293 548201441 326804937 890388941 402222792 885271906 595276331 902662032 650258854 870825209 395057859 502074783 189820561 239652344 283819747 333681319 357670390 421866595 525982363 967861936 402397440 798157837 774564033 836698906 91989904 503225256 552959169 923180496 26150886 214763511 78626176 865588216 530502579 532899000 412089809 692262836 717276049 726741129 778526805 912148819 362641473 397406495 940235552 990754729 120922747 305651250 468465378 879498202 453789472 523520574 341695619 928104691 513125258 613330403 934163522 999564703 284225005 581140899 872586965 888381511 458108144 596533466 692889918 817324735 892759249 926715767 972706329 978718201 972221404 997096043 788053071 982817324 856866953 963029551 481030516 970109730 897038632 941611826 99367530 921071893 679152449 991736364 324978156 868427684 345663109 614636175 90644130 965964230 360453173 691004612 794930587 946033313 500827543 851224349 585724465 647740488 44833039 266503474 645166523 987730207 444025329 564500933 651077266 704775113 747260660 922758844 290304960 697793151 564376394 870517270 286309580 656918025 653617578 765955571 893159684 970664200 754535649 932582725 817703361 879135157 125532210 538946721 474309808 551407032 340300764 940458683 347238968 625848113 184847731 677167468 694488134 923540535 198900110 754248625 866517076 937596767 823782066 887703091 262650919 867841443 502831956 655860528 301620227 373393940 81619912 919167903 564357675 800203140 324929109 469021440 605552265 914570592 713011226 913867617 619579061 787726198 322685136 977683730 788779305 822301415 461942423 891939173 522819340 841678592 689359587 697199519 803316099 965490361 826846897 945263481 198364796 387681299 819148219 928359009 826666781 847315767 384932351 418419547 156124795 347115054 296559004 949827640 686032105 786069075 797335372 804766424 118567608 866941692 641621779 895084071 78737950 406681913 238273600 481980667 897857319 952623061 48475484 705081027 884726314 971427085 911794582 924131838 101227376 514789413 87750788 147803916 920293049 938069518 896935682 909052043 779627169 991910054 755665566 901454400 410191486 530646889 661720192 766314129 555038565 887730852 863585774 974117682 636121232 928346836 702890007 904209336 333222619 667703976 198336437 704476468 558988415 612715501 911673650 917730692 188329827 527242118 352636136 354359239 881812833 916854624 446855626 721284855 675799271 960160012 115518080 831492943 524135693 723800272 676887687 952443843 186807592 354576225 730227893 823908610 84990774 950326616 776947360 933829368 813262247 832457213 399589806 592407777 781393862 902845573 890579262 945623685 196739058 738897081 944547518 971643079 514854083 599875602 71656563 923064032 624782009 638043965 625413212 873779688 249886293 294457255 524097294 921151727 444367639 451438557 687614221 911145621 840959149 910039069 102516994 707451336 285934244 377924902 555434747 746647652 338386023 370374693 872402831 970927737 805168926 915185963 272836723 643571080 815161381 965103446 743839780 897518451 906675446 937962259 285802299 502734705 639554211 859489041 413956428 732976781 275762178 307353764 172640208 495307707 236049096 613598164 979320412 983880455 525146705 674962755 803772591 978503108 155552147 171369478 905565258 942277771 999065362 999481062 228450842 348103339 404652604 840365470 518780289 833349652 971097544 993186394 208379129 828685891 841453963 861212662 906231788 907756249 975172241 998259818 714639113 741277829 763064106 771124385 920161174 950759658 532914702 868565389 484722886 830728535 382102194 466524532 609532645 822572060 361246361 703385696 572999705 893586972 945748234 982468717 666668830 720710242 53345400 835139774 966471726 993401297 233284025 730060458 655694219 864341768 105825171 946090832 715744636 897872126 233261879 715911168 850198328 871194104 325965487 455786072 392797022 861222856 887101262 970776842 162418497 717110194 577606332 579183793 975397702 984398833 123940586 873174958 62174673 390778363 618095653 624518409 277220792 639073090 744100781 882766268 367826199 563055021 810760301 950756529 103561957 812247625 586167345 709164689 191591460 601058097 437723474 784448885 891724241 936745445 236170434 733753733 167788926 824957184 153134030 899931976 695382008 916628926 339186360 948013227 87280475 234886361 99619166 936188951 674550670 898235805 680352831 961603409 923462769 997104290 627084791 997457363 723394139 990903613 538414784 580406543 770634343 991288313 202429061 358316343 817014527 905648969 12707755 311240784 107631236 839985672 538906873 869912523 373508820 536746173 945836829 961574547 139363839 176570287 987267492 999957657 754602247 919697581 538172170 607227767 524228246 582088307 198064814 884832077 118067894 162423195 538169734 973655098 815084320 953846435 288876945 756239341 254467196 716814010 503488821 916733790 813921956 978007270 899307113 981820191 741825980 892566933 973901567 988378403 996795230 999326646 73167423 364956726 341504926 884657146 707750093 739626145 334607757 551907514 355903623 543359729 571199019 894440646 589426797 715194154 805780123 870124756 400114759 928070403 124016054 651410662 923659747 970038905 821995098 829257395 979627899 986414794 205532837 808266697 742416267 807251857 9302481 165375186 856784183 914791520 487985321 939087871 160720391 284885026 205939425 575452690 625466648 641383598 456404243 703629824 551697272 783996487 779674992 884380266 477086419 847913863 546034274 666912487 218419969 299827314 531666525 972606200 326270457 749000036 881799320 979830634 787832412 871193354 258860044 266842669 434222239 819026419 894701084 992440628 969464827 977738598 145004923 707622746 665795217 793216209 929780522 974870545 90458599 842140584 293838094 430646310 766419756 977126880 284652330 365276771 440702880 505061810 862804898 926448907 44007893 759724184 90286524 160513834 193424698 704095650 940286623 955545723 285488593 914279326 175608015 551661981 902128976 906999525 672497663 899091451 74784611 422810916 619378239 831125010 431587384 717843722 753460786 843455134 619312665 815279040 340445182 827738017 985239117 999192116 159091372 406520677 348620048 425262899 883007734 996208609 787360650 861662690 728534458 785452650 895792524 983982110 897027775 989833645 4973126 45305605 3857585 574150757 280535683 287220784 452396689 739198493 36813345 507870714 421890903 808106758 552494244 771061333 278750128 334193245 82111941 904518249 337298350 482696893 617344810 710917187 469148771 785696032 236909009 742235834 983731767 997496605 463666364 981380038 979759791 995439154 778299922 794792249 739670286 797005859 466618837 722991100 427544050 795801389 784037605 905779996 274352814 377594788 364939270 474688270 599187185 890944635 998573088 999555120 522461638 607115086 197028490 273730236 455026592 863012631 819746872 947989747 8675808 358139579 195549305 255482275 685234317 968482606 11994661 632269622 783302421 947039939 641483768 735379834 340271196 417034816 715325561 820531274 196594604 797521643 356766746 899137519 443214281 804145427 401834201 715367372 690286392 798574928 70518403 937797508 526860526 862709141 331033593 800606359 585455426 994171911 101595511 188799120 802186907 949312152 189406049 808440231 630087364 816683737 168920406 707824593 513198605 524107764 744451181 881291012 735552877 917455289 596327043 822951788 339909852 520613533 707836392 850501077 449645176 470505168 311117921 609304605 64042115 766896504 739157911 998677405 499018051 629972464 543739881 576026793 542332583 864826257 528258166 833864185 753857930 774786353 121212375 583426214 172068660 395285730 244222334 995362510 992463450 996760703 749129754 921970578 407105677 748517485 840548734 981404375 290249173 613771701 959314197 961433173 106492862 918417695 468579596 915512726 608410159 932850709 503211794 724567996 657401554 846785332 348587503 987880622 177967645 971347518 666204493 790849384 992188251 996063224 239336298 353125165 3725142 708607030 725132994 983733225 175730925 588013713 938464427 978768803 683464459 944655706 365132439 826554542 670655196 682304882 658693446 923079642 263879179 383483375 18534635 950358694 331109666 643052287 643469633 870327973 927093495 955084286 796003311 877041968 265397111 734725991 757501014 950216765 761352315 809236192 17413355 177859713 87569748 472186411 327653935 455728635 779516452 835072361 822294665 957972721 54482005 772965936 505825778 554720399 265514913 710062383 498061257 980677789 146498618 765399824 436296032 488836262 172010837 973979479 763403965 861356277 258798222 367399501 980068210 994140226 858353043 990336461 540007387 911712380 352000383 709237260 714721659 942610914 684395818 997549661 308233438 999258483 687926804 779359374 380380269 974749856 16972495 791630799 656483589 763901340 824842116 873916048 156559695 844513503 389690887 656952161 321669745 442528800 299559607 812365402 989070511 994323715 642744386 650800817 176573828 720733249 955651625 957078251 934180797 972694755 458369880 809750496 70472539 335196249 673142801 895141050 448513432 925817543 618600261 627021467 245543363 347401921 774840190 778676311 600912543 964090094 785438211 914641373 25330597 689642913 376062532 948255161 257053691 273373065 171895029 805374844 7754642 204609215 664490852 778998858 836169513 975540953 809133495 915828873 194592100 506643175 299028798 537319370 730722425 881611017 129105688 638193459 511431510 601228333 764412349 843521043 173259792 804616920 330730857 833781065 770640982 945945205 851355623 922756132 395713414 845526071 943973515 958456939 726612468 859856097 610307425 852754673 751651424 876529136 843983644 920043708 184332291 823735761 78581436 714389250 291570010 802917998 384105081 412908214 350476871 524273704 995041779 996239851 113029821 593080465 57354442 492879243 535066264 801144639 987075028 989936484 413483948 794466993 601066917 855889396 939808510 965463266 753887104 963160677 500994354 784876511 451764907 523328133 432325687 900241039 525845211 835993209 697027774 958011833 673611100 955955689 130702267 892184612 310122708 777713520 892148678 947678081 994349024 997462692 635791040 960832362 857020780 906082945 441180131 566622556 755987840 998002738 270100402 903944910 402081206 700892414 771659319 967414312 395821032 746055902 231181584 566867066 89794786 128209996 392741785 502460956 46352688 952593430 590812049 849889092 657171495 990421790 533562981 898917856 808944006 964981841 564740322 762948808 637947306 638143156 492428401 509592169 32814534 305879960 432770072 580272474 563279807 901020727 294221632 689929139 934786492 939093594 716319191 821352261 743404572 900599509 149006393 937846677 454260898 836439389 74751612 300700046 531906831 886278451 775896914 902596496 667912833 979263111 260348894 774345158 41929840 463167058 202282834 493021926 279785846 942417690 922511028 954365076 78938097 787036059 878599264 882416705 170004931 879790118 421263691 712901845 830759912 936603777 522239860 677398244 109427286 349997691 219937997 994864822 857686367 924436935 438511105 519456954 27227605 346097858 856137605 867514062 988902702 993421831 505385260 831098659 902729322 996988679 304628721 496660211 287253757 788808554 622963850 926235068 572381834 703930577 651737069 761650656 721532736 915760351 736975207 891557533 21800451 632115528 524812742 825539541 900727700 921269346 887293624 927988378 170511144 925989735 949551108 972824509 758302768 971886656 692153095 821799800 130577835 235024766 890339143 954423206 984338137 991385204 11646720 465368424 875879438 959313419 849380763 851278713 405125461 422322222 314269467 961439348 376867468 921056975 972177587 975101694 956910347 980920905 497495745 815987588 110079658 757961106 133600905 406398249 187194522 509581514 233511761 405582652 505974878 722082791 269437282 690621546 356193870 553660600 522431031 683035330 88095034 739620994 174769505 917851881 659651640 713866759 757641627 792343087 852519335 956343849 212132844 339507379 236016858 503303848 821409424 913807932 967084050 991577983 303780 753168982 901610750 952545805 40542066 856098711 289490169 321943353 88859675 917216201 837226004 856069262 481455849 642642761 37552160 93351981 377080695 546363958 436506205 805600883 309743414 924824857 354026176 574020315 467474205 897532679 662796780 988108703 145877686 793867157 640585069 920655611 406327833 545466612 38575676 466440645 309828636 899908997 259188077 318932344 871451553 896410386 272330380 584266861 180053041 650115035 392105929 910835561 285213023 413191544 449155463 914880671 861663570 987591262 830788601 904853990 271252520 821543142 346766821 695610526 355452089 423558598 818720360 859152029 906732360 944245018 484529149 829497449 676254481 971014900 2615195 202473683 797226983 996032112 742115261 877151927 456099130 469283461 579124015 785741571 964090385 973582721 173963988 349492382 746704514 782165749 963514546 992418890 366646615 829965194 664852046 920235579 16059681 80724353 424381761 920103306 547551662 848494082 740737151 913013063 818413893 972254011 760034763 861408870 637078261 851810922 397835703 627231559 901490301 980892392 915149274 917591266 502343006 780515890 231673867 520284957 739401706 817136686 410206634 676679263 514045302 878011579 257978922 599333843 569324364 712367806 272850412 477533327 22556537 911513359 831781630 895084202 7837172 501833783 107213057 445491237 352394712 823183681 515952849 802040054 255282504 455863820 651451824 861811965 43805221 279212484 923368584 992263787 318976408 353591721 411760935 725292626 120502591 844426393 400204207 527718267 802326857 962666325 108428095 919165727 855156059 892439375 269250848 461548674 75445466 368411259 925634196 976123377 751430803 778687521 530783180 735839656 245773712 658716587 390910280 490836843 917929347 952807017 975449327 976340716 402200168 753912486 141586026 882890922 739476950 861748538 397672897 785968178 366942909 721933817 203341592 994443523 511995517 915722230 445447026 935919015 825589163 920420969 202301214 652828959 145288036 758811896 994944040 995397228 139300620 427897658 308435983 626625740 201822696 427969034 534138175 941381333 823369758 916418453 834439746 953571842 45141189 915198450 762446786 896524006 455378288 886127880 244555250 598852236 894430482 944541416 386539285 454263471 120974762 358392720 410884755 935873477 995938629 997781365 523294011 961117896 963341366 988892784 108924361 349760113 5723725 826146145 257577017 532377937 218830898 571070129 847708351 967449533 653129921 798487556 369976303 857884171 701596824 750368252 94454789 781634594 747581370 760572577 395983710 921433002 526386322 906390945 931440077 964755095 706103742 756718027 18041206 989908417 581013295 650592777 450496547 719508719 892271411 925533934 696062666 946482609 375091225 669261542 324721195 873269760 625827616 813050759 722488539 977338587 109571823 203809236 13363589 661119537 862020384 872412717 293439533 342912227 602990346 774070767 697669230 844470572 99595134 921229068 677401253 707808357 198735260 609070410 728870424 894956755 164370078 763529528 570531526 893938103 373202924 762285830 400137159 667156579 68380504 531515189 698704070 821461133 526958527 706682751 587750262 878371707 502187532 936159873 670739478 837951053 940486104 948087105 191977354 709974268 97517433 865164413 409160830 823584135 732304165 826808840 47408476 591641267 761986011 801357660 612143652 677128687 708035087 924733072 581850148 584550226 650468767 735127574 196926343 401300755 24486395 249173942 942167339 995582602 821603744 951925770 861969648 936848890 548807932 554943017 652326177 757298541 199591866 605015765 639002555 848290146 790027333 894715048 856565940 887545584 755048591 811902634 441675202 781558645 29368483 132472114 809836228 861033795 673578277 871349473 576983977 664131901 117508863 225583983 909537397 929945621 346105740 386656524 243972905 588389082 621854129 661110659 932826942 948468922 723248118 870342746 33964078 488516627 342499847 683635302 550546845 847303767 976896246 980223657 389273795 458567175 656498207 844738506 19667558 740739104 322305759 606402765 265362762 952878745 149620788 463348525 537840892 801713955 769739478 811628627 375398488 534790713 904180632 986819649 870757441 970528465 432040671 770012970 417929023 852336525 447690605 497564248 607491932 958566048 236766308 522659532 720217405 867746151 443875112 783807606 25592958 227859994 334665507 846911864 174212653 295727985 1084672 257425248 814115505 849273043 88654309 528153265 21001654 281377932 783517972 843765017 360298938 401298455 687698846 811158092 760412242 904583718 77103781 757068684 712631703 932459279 826376388 952660299 340129775 674199234 694552377 783639745 725438947 875406070 535851297 770398683 735190717 758615157 460951336 586026888 49808803 419058195 316057647 380724079 26739761 925124352 493827365 863770054 541362354 723872136 547073561 735116901 72914707 730339651 374695181 556968427 147629918 230330956 284732236 572297690 994228736 998905675 409707275 526524143 378418611 972304212 5352941 461350606 368469713 638883584 623456882 897736567 540858154 999715985 365299822 649020489 338001902 880765469 350646783 467591977 834152410 905642906 604535617 906790508 120003100 495396945 860626862 939495283 793615704 953549580 252714247 715634875 854158439 922556387 94878695 368214735 473930627 852198494 346810020 429751817 337084374 558098417 144739985 910823109 115549034 657207768 736751623 836082387 338218466 882230667 18968711 385316643 502049428 948471851 375470210 563214883 541143755 961740532 750798616 944219405 162095098 839671093 788910755 911801746 787150003 914860404 362846173 386059820 481027203 988624408 764401588 905573324 604297773 985671417 515314158 848394289 828668609 864745926 84256722 816270007 282462004 717573024 808139416 970379095 748167869 762064844 259294351 615306492 870645556 916054281 10494828 258110168 569010104 698669821 257554640 851926919 534363769 876727174 227867359 372405059 202037757 962653023 11812133 21933820 662717644 814315671 420366977 661053532 554924704 774613786 115998479 299295831 892355925 953363991 851637547 886030821 525161948 533395516 805551685 949510655 780878800 873667212 738590307 962298215 61153162 154224789 96024295 283169309 249309347 544817512 931492807 938617009 368453212 607476878 602290171 740121863 735291327 970874172 359178089 425903783 96210719 665531578 258378100 982900479 929044906 955711326 712515661 931973495 79983407 807083654 212532508 286297576 698878261 822305261 125751371 881466880 332489539 936179181 388990277 916426392 908151003 945311536 659802080 935119301 310287305 522192170 332019525 837973578 765677661 781202103 279627496 415052255 579986813 847182450 889613871 928496554 182267765 517805245 986080562 991435901 626769104 864417013 494301968 686842234 856899640 907985131 217156672 255546757 589976056 975331618 58534306 971364896 113660779 886061231 416446833 969786800 159170640 756959101 498866269 875168406 364389431 594592401 305481026 758888995 84509712 331346607 638023263 803216742 806880164 978450686 306784784 604388267 511607546 682289030 946739573 988032430 52887223 360900006 949292498 979746004 85250742 339907759 914936392 955035285 281301049 345538885 921935488 933381846 761016623 820236791 579330461 804074205 506045012 956753041 517203066 894536562 514747419 825980767 812359170 880891117 700892170 802586669 811106017 972061082 524790509 825294548 812926621 878632884 861500923 903492958 582532933 818539854 951737478 964555818 977239060 988989665 941596923 975515822 119055144 460887840 115183637 150519897 648996857 759813661 181063118 695154563 662242234 859751615 367235093 770861038 487445151 681297609 514903604 628303213 293943619 960013535 60824096 303299481 656550593 990768163 815237771 880819923 995317877 995844094 860619069 912320619 261284570 923142872 959790138 984205908 879986818 922468716 25838165 335075160 857409331 889613061 40806599 421647402 878383150 988773918 423238781 939437771 612957866 873716779 309633694 706379092 558496205 732702462 21649447 44741262 430143078 845429689 289399181 868605704 103754467 643155801 662885852 992355936 27299267 457564760 15423165 413878604 756145320 940639346 960009668 983308186 528356424 734789448 196466256 476286229 593191757 703140858 688200141 988639128 350840793 527856955 649882189 975764625 165309482 898994116 261083937 580662430 239001808 590875354 399742592 648888591 85545216 979366273 155584978 437126226 20989138 825641383 825456490 961096164 26084451 339017231 830268643 892898875 400066715 951023628 792172482 979623397 192793319 949063436 878447388 944712448 366596933 444871487 497367213 562503385 534838011 946752726 11250453 922761648 645448685 734667277 307194748 539739665 486921419 901669525 214906179 310733794 780959055 864233756 307773514 465767037 582356183 682927903 48431404 871095475 385295345 501283173 821269043 943416576 426274824 644724893 458109485 997268353 49245545 491116327 481092566 626832134 280346362 321193494 29670468 895792360 522526163 566270286 291161883 853016726 218615344 610013148 684341933 870552063 902253133 999197010 895248549 976203941 539983148 737705135 824189580 973452073 510243619 660292175 667082861 905064104 458437667 831263562 261662970 760914863 528872165 649643579 715701141 859529311 267665214 373418787 189881200 870146180 379532929 827750554 341425224 781556555 208306680 795487459 979163273 997626938 292653563 342364107 164309508 290190964 27502659 384953276 153347527 617749014 813906389 906929893 156216192 613129886 807518612 926448007 528204387 973612065 810676025 897565937 301633332 564344736 619170236 709671924 678949914 696243018 754312608 778968428 79483686 998089758 130473425 177911811 91982181 475502945 963594466 966372766 207414097 487324166 155350147 812474805 319333961 967969334 55392701 392193145 724009216 920210000 447965894 687573701 127287400 507658482 511953544 913086248 904554382 982076458 642498172 798238790 262492223 621345997 40238748 701273428 899700208 940471164 811431668 815840850 933504646 938908179 150289871 759102810 443611393 830526398 823485833 920220215 569498825 780867822 337921545 485122865 103640039 537329117 301834225 803074014 381089615 968166902 72635213 165412266 535249461 606327920 414315730 633726963 887385327 936522183 476769459 830861135 602736856 902119218 963561735 989540281 559190158 640559770 982074192 988317024 952017187 980716637 128896837 137684025 124052299 588012078 752251127 755495842 822636438 994988777 515330763 618822308 59780103 855330345 740933370 944886780 628185129 959736639 876407154 980996954 726935124 888608392 248863950 671908704 709408540 977522778 705159805 724160497 999745170 999951860 164428436 584209148 603044168 901645087 714165869 966530963 198935720 438581881 176777061 714837832 367654523 876788994 278994414 364449759 455926758 789333593 978707385 978871690 252882419 520458373 338671146 939571102 571749236 746948857 743967796 784981608 303493627 735587169 479347530 645906275 934261742 975569253 307745762 353270181 979833489 993263403 961500213 985578508 80037313 927370134 967859554 993651004 513141754 518023389 908555893 977121152 719297104 965412745 995552957 995708371 116536822 820953470 20281520 604761755 854448229 890262630 56244880 844185932 920256088 927422408 856337447 897847796 603896815 899846016 901960949 929352421 781452519 835477034 183914760 579404492 281932463 516008888 644610856 939258034 346833726 667314647 36918026 168677892 751124302 924891666 566472782 798130014 610168389 620059877 59259889 993288339 906193081 990144369 704856336 708546977 11220847 770978547 441305938 490451416 250554784 847196888 31560291 557494278 768446833 852301473 660372214 719194210 97640160 897788116 889181166 990279870 469525503 689386185 168377482 394975646 184311083 923285868 716360124 973745805 658795574 990676817 498589479 819212120 681667398 965968856 423079894 726051227 108083348 120010156 267642659 316555843 413621522 440868468 365167071 581985474 92478279 324767435 95722469 990930859 225501308 767132310 214145380 654640404 560701275 586441191 319372257 832776422 89248351 203961800 670115443 855001409 44871646 401072617 682802358 970778274 571672736 835874009 324616879 400001471 78158427 767615006 912940189 986814297 136636896 665462115 44329521 329144341 67699081 471424333 237244023 999337873 18460872 478263757 285451928 802104557 412584530 914522558 109695205 381536245 993511553 995021262 502347560 840475763 54799442 752913282 194354472 300043396 617880786 958343327 925405497 996644187 866885310 999144555 369407801 691814444 34205475 774527755 491712676 815816951 852093524 908398157 985338487 998695002 534505698 682684929 658057138 860798747 323358421 974393312 677337872 908535690 49065096 463808025 487268734 547029110 359052547 463421556 798609000 956921328 793935234 945380178 598203946 893433659 670630582 810196170 201380323 703044374 134155758 628426578 313039784 839885408 719236141 887239859 679239703 916334195 441729076 564119312 174991137 623090208 234764173 629465625 428616258 429081106 604564903 862300129 955596163 988451020 90364497 496995463 47246835 461198350 403378015 751590887 345434145 393087593 929443066 951471500 142631011 702506277 603858896 831958829 762352592 852702635 280496995 679316408 816207268 820911334 814499283 819341550 467463050 645291581 197515360 279480226 72808618 669192935 758392016 845118227 305478486 475134812 994161841 994843443 626573831 910799929 793587460 864215955 438656446 615384219 374554615 804836762 277556941 520740281 760297439 877153431 653442267 731875418 383977819 846837191 470399852 746457955 875946061 951643423 891661104 896091379 899970703 989690286 196601042 516738499 331919758 943120875 33858931 560125474 211762459 915349742 708472084 846037918 725914628 767032149 550395523 703492828 245569743 914829408 716839015 863919235 149927595 372119218 311569375 995786162 542153950 863671006 937622184 940558815 815369988 848118661 965722246 976218854 808434019 983118900 633862382 657115550 772280828 914486656 778801891 850804877 178622660 848368494 561343390 926239790 588365185 980649971 816991681 906977475 480262878 655370267 905391493 924616435 671380777 702425714 648604435 895233243 530142979 753955496 251813045 675566465 644365341 970552938 773059030 900449508 224375396 813001616 319055735 705888894 160261480 829572934 340148445 632480951 867563283 895328265 809489649 955164501 109557397 427494223 246429017 968274985 608386383 812407163 62199654 520746310 655972119 966020306 779545817 909518259 538360102 621314535 848088032 938308876 219378211 356246707 420571978 544591474 599908620 730760290 97303039 559103897 14093329 187379805 419348121 992211273 64275515 943346878 463804938 588085535 738718392 757558024 548981149 924185768 657262208 873826865 446457053 812583809 208885908 256257899 17026786 220571540 32896270 227382098 641550983 909359640 522471478 886765036 430381188 851943798 362598337 400553920 508784834 802606300 88906421 252808835 824843613 944429124 664905319 983844038 891308434 950015414 736796932 826670923 766891152 971289623 94409619 822541937 792720395 809030161 615298789 903866847 998436157 999177527 276783642 895366724 690195971 977305120 552971026 871185844 553183876 617807035 415560964 442251185 594126692 898833653 379230840 417843222 954214433 991579306 467930308 750513550 465340470 875801284 368207021 912559825 166277581 937492774 312574916 924916123 224434562 805923773 460286035 469255235 810408335 958004112 661604454 848095228 209048845 444986175 402728332 967440500 354732790 519673189 669421877 724226793 555710431 859853113 263855294 666841351 141632772 200660328 754750011 941558045 742613643 745549128 521648528 557698863 670566402 859689300 106401744 524441276 552497711 926419433 852737996 901739660 675592794 919005104 924541904 998761724 695030863 941209422 197262414 700370620 897066453 956311685 192057521 826700092 724413994 987506540 435929274 606097743 265457499 627992533 954168567 967294196 686729488 863181590 44435440 290648545 470299693 765232896 314375976 754996450 900381259 939116977 428821545 467392525 797215099 919733966 688234690 954890761 869400704 897701016 153655616 430399536 734525763 743391168 697175537 712662591 574671209 602070860 406703706 711146908 675451369 840077070 43353410 785598221 746082758 786132732 487956199 903506412 348759735 613131022 599649538 811133025 58774822 787192559 845181568 931791672 399028770 946501361 536724015 981615278 531164967 600759257 46343357 228744224 926263474 957672242 18706905 895010952 408570179 537417862 379682089 778839565 828161401 984806970 952057624 976355561 724841459 915746832 115590086 697517947 799526627 861116089 846957968 891595477 914790444 955795415 337462159 841291537 951092022 970269413 883740651 916980239 144988479 542164878 576692227 849067395 796176752 852600512 326409675 452441819 498048497 775055812 98571524 961182454 173819696 262022083 372493449 779958236 662398202 683165058 871953731 942996769 815346969 983101137 817119363 932076305 589941780 988203197 22389908 304349882 408779535 565637071 81787718 755108932 875540897 985871066 26210934 885177116 638338357 949889428 627780305 909998300 381516562 519415340 709089498 781627395 15723264 264019918 460137320 539966467 832347219 980279176 398130793 455534147 523794285 952809825 32540000 609106318 197719594 546467073 564360098 996193865 895095740 927106067 815691424 933198694 750632281 987319782 426044899 625166277 578840046 593438682 706517283 826940332 132808712 292650604 74621380 616491268 315586555 573578199 411910700 711473858 508597993 760841997 546202090 934963668 68447966 545240261 445487752 934793197 79747596 278963007 190731704 819976833 866168810 922274799 983308849 993250412 919187589 946566908 341892845 954664043 516200557 598656537 62489034 566607161 193916360 883857405 761037239 799191699 437912407 720792961 82557977 111990529 98006114 99101928 990822288 998772900 25269869 775947682 36969683 656117693 148032159 579398503 585542267 763317904 836394407 947459863 860796814 863670557 772292568 985608178 657533556 838864630 459551105 464046464 383675746 457389326 840757777 843602149 271010849 552325297 413889607 468725697 679398094 864278316 503427002 971003389 469462023 838550784 239867319 930108615 635010691 906306856 515833845 853196467 536149085 736108316 17688039 351218305 790635941 912710363 800839499 841950576 957910248 972465121 806934399 988767443 395952188 850822913 8623560 758935015 61654808 336418261 193731062 886198446 744069316 809645446 638088483 798057292 636136551 796056795 766188442 971390742 733087875 909476077 874065717 957520921 892660617 999823507 49967930 390956732 507263887 874817621 471064211 595479149 675723327 848767488 933572351 964937403 308654462 560486931 460868767 750066604 731911080 777387765 525222147 819180613 591285240 731678793 111817939 223139378 27905514 315941080 621242299 712074659 500943556 926129561 303869401 887915885 28114321 514962784 977551610 989977288 32477328 356407078 698265958 782786691 75930602 251132456 120491249 649195422 413009779 625004463 67331398 224848822 193081232 969684068 832964853 921058337 274611137 829443551 184858926 317876818 573678762 856657402 62746233 141171103 605757899 887581488 615542955 756500203 58757362 673329114 808636144 847900921 784190122 944913839 905355793 912550698 754634439 830824240 481583351 579975208 872754817 910696099 835100200 840026735 218426847 932536182 58524517 810826491 613522703 929498864 926192738 934740118 517904080 761958507 23551241 282588310 822134351 961113047 518576639 814458706 192103045 751506278 73141738 528790421 224471149 732151808 267836410 822552579 218462586 609131828 292549648 417729563 600249403 933273534 826506545 894146678 176650188 863003237 177520655 598939600 813210518 972314322 671882838 994956725 943410631 943444877 567075519 626010853 453825509 815864859 945524735 990033394 165167393 860888114 598241862 765724576 464008962 545297492 794558865 959154883 545971201 939656371 421605332 866101577 931367521 962314177 224627924 824578947 206174272 567903057 746378489 928723460 840577528 986467219 295754649 619960657 54252311 104895203 593228561 660061683 563409882 583807749 643259039 930070302 838858015 862244665 330361678 949506584 885579355 953882883 25294054 315985734 70816675 157536582 204855005 647808308 388547364 933757085 413517218 936804000 116563758 301227093 223048023 442661154 69479816 400420234 350516431 847290751 635868191 754989354 916277719 949475497 694092988 781184317 173281050 848629417 229157602 390415044 211876132 796569365 997776684 998808828 199760282 983924363 20109364 627995196 340342063 900383043 788329885 959906857 934889631 966235632 502308525 826654779 233702303 680075463 702225261 865064958 334096364 937056123 115720298 940364764 602109421 732401389 74256130 490214959 435412850 864858014 207467915 420833977 992265637 995932947 560247016 726655691 2662415 524909702 457784381 880466087 235504478 240097103 905764700 998349590 970872478 990121432 221619275 496411498 538670526 884763236 132035271 665329467 822527341 863238676 802271510 956600715 822669764 929548815 893075236 983935273 240476312 299541848 971319165 983095892 168746567 315218068 8066918 375213193 110292431 162785125 527853957 867750612 886481938 989005609 140192232 443388010 511570520 798089571 318067799 710317843 737926127 893691268 675997094 836915889 286612693 670677280 262773330 722016955 415003884 900468887 695085229 850233494 492901463 961629875 936925933 980139407 546466234 819695140 904791118 972575255 104081542 454115229 859072619 939172987 777885613 971290436 223387676 868107985 444134188 546660759 797224811 922176436 69022843 714413585 896652256 898811819 642390336 844967327 83926507 261708652 681144156 847302212 836580812 848294241 686147964 707054529 540697339 934953669 241330115 818837320 348819917 826734223 199773883 802915825 123938609 202906761 302126895 451678141 149583674 615599424 233658834 549135060 361285177 788973129 829401022 987222557 373678823 459962241 138221615 872867706 915011701 979933561 159935126 723225784 863611074 935813131 796678769 858414694 643504024 930003333 853648009 931596659 271374250 530263347 680740805 767351387 388708594 750779071 419935435 717550461 156702480 692104080 80497309 81320498 996954927 999403008 343817269 377480613 244856064 336312155 81460873 544603334 626329835 725280536 601630954 956579384 415960337 741538889 871886690 889333385 971475677 980986686 781802437 898891218 563099957 631084449 960960366 987779682 993175831 997279996 715051590 777355937 327041204 840578662 359577686 615881893 432391583 895904314 484908903 845545715 698365064 883068219 265057356 621141599 995191297 997767809 423940316 882028276 377415716 958449968 986412633 990556089 428980476 537730515 847492602 976091010 836359468 893370470 593713529 612152024 683069338 731228379 494725043 652817265 863327824 988971106 501850772 678464077 234524769 640635761 195977039 827430999 958107685 971776466 477509420 995056359 827660081 974634771 169146628 900765316 22464518 865822773 679616603 911269209 308222016 599965996 157395007 272062139 625082332 735425705 913130695 932850167 980785963 994862835 134544514 846280090 939471338 996064460 973661210 979558121 409392172 470835366 742809274 948890432 892462309 910160107 158957352 288372272 329717288 350163022 310063728 778181760 168330810 218352841 181776709 670464261 770302157 914740322 178706724 822129076 806967293 828381079 955362265 972998351 83352 554487828 464461021 754583607 789630129 947192656 467301191 939864669 601120696 818740782 844526436 899077132 124063873 830067129 736093626 935680106 267952857 951953715 698084722 834776456 988650091 997908834 758242432 985405782 970197418 980701001 538550475 554194448 884090843 893406283 720761831 882363226 45248424 768395263 580499312 787784068 815027336 920524911 733758954 877558838 913774222 976729203 82986393 363083744 46717700 64330568 438813474 951681766 967168581 996470842 148904878 605836041 482066044 849714231 41115592 873294972 241147835 775128541 970371081 970684335 781843865 929495343 367465858 381923828 379580350 682016683 766089138 778369730 595198266 773415261 630333383 780510365 455644055 624617876 563988384 896244256 523464046 570349054 280041659 612574261 53287354 448410458 32538121 318815960 397429457 616798451 137989835 393789340 934459870 938154082 931524332 941166180 379902237 484390314 912083040 999591800 614615171 764817095 334187620 660406904 159751188 465752602 46051444 172154237 558986730 643996281 15910158 223728576 780013589 888066683 958562223 991899271 903902475 936793179 405110710 430864473 540093649 692779404 839372027 978876265 142557885 180809724 767074047 886233675 227239022 765507131 504322909 916934745 241346019 248579677 17734809 400678496 8168285 394741451 805348446 847966751 603650831 936473409 842115438 979818922 558832154 812130249 584140352 939516522 6750289 146411256 441072430 628022117 484363022 609395358 986707516 993644327 603622312 963866649 426421234 797606022 90121181 947916169 340637189 449086072 872350815 998266797 817327526 952387581 622636779 821820261 123792334 511292595 14474146 510616301 951405525 954269645 326738658 607460190 879859286 933896363 916875297 964247043 201991196 462528428 600784062 786127626 3796807 551885379 324188684 848426672 377785697 843410276 743714481 937728648 930573282 997482627 90344535 201458729 753955299 867466302 487961516 850021081 97759982 976548024 952742057 953822271 771507654 789721363 343979890 817897659 722365650 782777268 584884934 994888543 454846058 745593910 651941343 865977818 254858310 985437620 626303015 766385188 9912775 467597041 109119480 861080009 645281348 734379018 3224428 964145379 533562391 595047878 257427502 510496362 303154173 535804650 891599592 979391753 683277823 797567977 485774365 595852768 452290113 801096899 774542896 912153354 761986440 868346969 341850585 943304235 858857644 881751526 462385942 671980799 930101859 993879972 150238 458409043 721231984 766159215 546636482 863269564 469267075 963989959 537415979 623249599 300989820 734902025 544199436 736145981 688977185 770067228 719973581 908831859 829902923 960238915 152939311 716738354 537217595 552346159 568039177 863512923 595082923 806895462 490190935 718659363 908043252 943714690 761857177 975054785 295983269 776370031 762881875 891861133 711888002 964408352 657808613 671222782 248831536 722911414 613671839 796490847 935734631 973315564 170842317 346074636 247916328 551407401 308330843 830774969 420258564 661606638 267072864 359995255 187028096 658286777 476805318 804082353 905512168 975288452 72786441 893620047 600888754 664320887 813272847 870222854 899140069 941085967 32398593 881323828 599306505 605033715 558107021 706419800 382939362 486698999 305687052 919621964 135457650 783587242 342395753 510133853 284186446 447775500 534772154 993115957 648505584 937524272 569260850 963442594 208010954 213757239 661872849 985921904 437764022 656659225 47642739 363718309 662576971 877218077 879067521 896968296 232960866 421734063 588675545 653113105 91731275 481784163 981928954 990200047 893358016 945410866 810236983 909089082 295459042 540708702 339046775 437559032 995581653 999822871 969743118 978233021 520985608 893427759 488632475 967068023 976045711 985263872 645293735 761022186 228168388 316596426 713221756 757476225 758503252 795019635 542104573 815080529 489531285 508995451 432515257 902969821 213411295 959111454 684392979 698977046 287485779 306748843 689621660 927905071 194888201 346648166 658976029 659801610 452322181 909167980 374713387 557350504 559088926 620358446 690370228 982222927 991777853 999259179 188856721 237434771 342539855 705896238 788424213 801522732 642940266 924258508 784516013 964584324 719869188 833629432 199400023 382191151 36230484 942741593 802957356 904253872 437070643 723258252 212340534 262733527 829394078 945042648 484221354 893731748 373903222 655474505 61863024 482629234 521299843 840989784 846426543 938139867 967856449 999084483 151221899 983910058 875300930 962824115 599262804 658538265 667577787 900269876 912271042 942535156 400319926 868940379 197867332 362654115 851255546 892875022 664543873 722311542 38271672 933281634 479787484 886064107 477239412 874642922 919572673 990328326 770673338 880303027 52621163 746552999 511092996 883102062 127297962 185146508 913778042 993125810 403696021 574146937 717211747 978338837 950729979 997337110 69542787 723896594 28397234 989753075 491581946 635661261 186540654 824307998 523673459 631129118 585310549 749547429 926942225 987091883 366512076 467066116 605753017 730209449 888373372 996537247 403748006 997133955 484844626 935261837 943917282 974485284 525932321 874655954 204836186 654227872 32557884 875257568 300255430 302598986 356077909 896514252 681246256 709731323 175896708 613452483 427756918 513500727 686693792 781434114 806885113 930328577 556393359 923910754 280909039 499510264 721354850 733086689 615337383 924124135 44743080 997590007 304952645 787625212 359162699 603579661 534988977 909126114 359008796 820592889 664845319 675948433 45116297 525192921 80573922 756883732 184424704 621338703 577714466 591212012 381685629 957773074 79484976 915795350 632210514 794520015 504811316 779658399 51165349 717344195 829441664 880571232 822252821 928986157 555760561 646567218 254537215 304981743 446712984 857407824 84819499 150706926 856594642 885192003 44275638 247447015 420531048 641988330 441337504 928231899 577738484 900137242 138559271 408244298 53764573 469218504 630577172 945845328 598056714 681242250 553031083 641581467 669018624 740482637 951132014 970265336 10367360 240815454 255503142 264274574 768104456 942411498 61505935 402591351 875650109 968523716 155975528 165272792 201273416 248957331 668807533 686966866 712833962 901558740 549059872 792205171 807871731 828427010 684582476 881679417 472626046 906737590 17849833 438390669 490971133 751925436 45740823 833759514 950242327 985797190 143343176 667823585 766704557 850214462 990709278 992664347 223436719 238890684 494752854 550890092 520724178 672156469 813727350 896688173 550444019 980843393 797746696 917266086 845858467 986163628 977536183 987728351 307250986 351660282 163485619 435669352 638476081 979468783 470812864 810806004 593361395 760434499 19690983 545331172 283990745 826750013 710788161 810642857 689649018 757698030 575110076 671769821 662039142 844163130 111555204 640393028 231781763 720960179 192077752 855332818 999915800 999931239 372624524 683812439 601569855 787356146 635090761 838462708 617558236 868776151 741091147 872158521 20780184 510840691 952497614 988917214 102602407 195038045 913172634 944923204 4716014 694926518 228061530 724807352 608790607 877752510 697069796 730740090 55587047 170194789 194072025 428221381 835237573 964842476 337083964 748559351 843545272 872463306 709948366 785669136 505044733 844629973 346124285 773717840 484341776 915329983 147423659 288372819 787323453 962424447 292156174 932733707 514496494 789825162 977338845 994071865 769121730 854404828 675635874 897328856 439700421 531289390 484300556 816665144 37450855 906024868 557148370 736256482 986251190 997671570 182295662 900443468 189485468 957564585 63191514 779130802 354624942 652260225 363910774 750624729 717197042 945538267 687705339 986330479 498671594 912285392 509950406 719809554 809872090 939520202 203846859 945275661 277814692 859975831 550951104 851633827 184229043 854008597 723954467 949855038 390013212 459554060 189746251 985006380 538304428 689604141 651960240 829991424 743466331 841804367 832260792 913820666 144007466 618554552 429807955 930723515 221135180 995954228 906492053 973311176 7758725 713403491 557345562 693328179 293851616 432345079 280208187 575284510 64746354 77832542 835983616 926083924 319879541 681600184 113213758 683488562 101032527 367074719 653596169 855101867 810728415 957959551 736393059 981486899 341152626 598904329 214453878 486053409 190515264 451766578 349912439 525089357 691852745 707566527 411062729 457283699 439812131 788606783 839933344 880197484 229587796 320515283 382419748 921134133 410262854 606857008 937800904 976366323 146094933 651946845 682927478 797290344 929411042 984754190 640807057 884426563 708830260 794950737 991784159 998940891 880818909 966340565 279853396 389494073 764088098 881783924 809729897 965025644 997460372 999570447 720386596 901162524 29218102 709649401 279484230 355862362 878868371 889068612 335878959 346014799 269377474 685839696 590934344 845020077 547015481 915531369 378151644 583899890 309706687 613934833 243295130 414415910 93037269 185305893 709183749 727580330 313773941 502389421 921506408 927801977 970394448 998186347 746676638 773718574 131846233 576664442 483244471 791751411 84732578 148982016 184833292 682727607 375316713 682151021 424448980 432264438 520201384 781275842 156050398 838301089 752682953 827951073 463563234 906365900 84211349 823968467 579824341 823517930 412610708 946956540 436102481 654311172 652677582 870459529 360590569 519766937 201572198 361997087 788427495 911031991 712171108 971482853 886397443 948269096 548112573 597746693 88839249 784181947 511170076 582896527 734511419 895583326 504031697 755303454 24603785 217954385 847504107 878530932 494535226 716670344 23205940 885240315 998600910 998870009 944740433 984030419 262585563 821071631 19063261 709474337 514761955 731521011 882009294 968707748 456954393 834499622 19636221 541170597 126501478 219700761 105227938 152429421 465768803 468914520 504139059 576155430 199272050 940435103 747588380 895628123 905526443 971370820 870604267 915915211 576928940 707556124 885138047 896528286 864693446 893874728 83597963 566088650 114428721 794291444 82273108 203563446 67835818 725544730 467071395 701787478 687724061 985724983 666026532 951657229 51394853 136283175 897226278 982236932 86007176 143495372 179725776 635206086 684460385 747976198 217993073 349472211 946560562 993205433 840603403 986778776 565227746 711332038 622092346 709364164 747051305 817662282 550741953 941768488 530838101 995208357 33139516 879806213 802233939 873373713 126785475 182165619 488094476 833907643 877306796 992933295 142953444 316673914 947807109 953792708 781902365 895898527 533193135 629830711 542111528 897668146 16687030 699178005 136198831 921681268 176153884 833233064 386625401 612568940 820002574 892749362 973286561 994676221 389993269 818494832 51031096 359363744 455818020 681704743 119177064 402168224 223841154 859813662 484502850 523215125 951630564 985457095 797752739 855334184 869660205 880178145 958635648 986911840 295425486 311397694 748121677 789787497 894552024 922066531 85153777 912829156 688942648 854214617 394459963 865694179 136981454 724246149 187825743 641422850 26329275 299375546 860489468 981016348 715488579 777767040 564642869 970426026 512672428 763837786 433973500 806817849 848524760 920344546 169373962 242664927 302848981 412600251 466760344 625419495 357769154 641235327 855655338 934400153 740982277 869818255 463117914 793807372 249333339 553952720 64013986 324182481 229311697 468769115 238194576 241572847 310645285 566194589 874982926 988277763 376094868 381531930 941521766 963683808 321806465 599093614 424427632 926083033 967167733 969812514 601033380 620235317 57600134 875314706 776126178 815100885 226340092 566819815 749548504 821582198 672919208 827753683 681422820 898712536 545319080 901705318 788710064 834003531 279793920 624749419 133225545 709591919 841234002 959745854 363752144 394828042 360422543 902566738 297809079 760369272 874712368 947181735 292718879 848740261 32399021 277931640 639875665 944206622 478197810 790258847 85827177 842257440 345559678 350714554 80490658 566856714 529908496 815626476 993225574 996751787 524436161 959978138 102717149 461667405 277578979 489228217 104306607 735858154 131420090 684406128 915292915 944577297 655375519 776433166 660738505 663143236 832521267 973845426 494915878 998159979 792035465 918422791 650578511 929716052 819830668 899797736 111443858 565188579 167561276 915818795 133409228 696297113 765229185 987747728 198552366 774059066 24866290 522979740 562144858 855007555 423195679 949445435 469688522 489448133 657150174 675353550 917314158 970337073 615877319 989164118 950895760 962760339 273235718 882588348 136718738 326003849 306163159 468675052 48627442 638191390 233386643 313763119 737801723 991558264 332264264 992891716 592473264 976181702 219685320 637563867 518359651 543455504 924856457 981439175 534686059 976085674 887343282 888351109 311601959 329596770 472807909 561044223 723830042 850855203 508850331 848417966 235217781 836199982 821172816 900072779 254870823 507676878 299405549 510375951 599569963 932695469 179547354 536270137 235847683 641559619 396354010 816839319 736711616 873633765 162024705 377497425 197423453 448074687 108585013 481824403 525504778 931044773 381140107 521562472 937552355 962551943 229441021 925171440 800450839 915314122 378031495 740431706 362319654 897210413 756682633 955655561 688689447 691924095 113802516 383584507 184894824 859524232 540370799 953091603 419553431 478048255 824364572 917477596 196682048 838962873 587838013 988715102 65219951 466034448 932117483 995286314 678749429 766124656 746227982 749075928 422693928 655475079 450310101 676201984 898220044 930073888 103276902 617046099 388610740 591147289 944732105 988930118 721853407 793401891 43409970 516719638 265104177 774984186 635465842 980620359 132207457 961548916 57022096 351679604 136027517 507540302 564895625 869984027 341293645 938216038 269407208 344296958 480195821 776015486 633968892 911505365 438621975 823192643 392171552 410059742 142016124 199747949 835177797 884056036 777387045 830679192 422417554 944309123 158596349 893253418 734859051 932979493 926439152 937507680 894503750 929223761 120114227 847893291 223208407 263616088 963225285 967561269 884397756 971493121 342001174 817834179 161807226 166218571 211951791 542795774 712719068 796680066 207796994 697746440 230918470 262987880 856576879 999582020 861711960 880849720 681018395 860040189 239884377 692679083 7244735 964512275 748755085 834665217 160362092 810836348 601717341 637724544 463338906 758270017 402557895 918432889 724569985 997023774 801640715 906568633 521311457 752337194 397992581 579451288 328232549 721564194 589563581 732177032 568730973 571208151 918555134 988155872 605599915 963070897 973289102 983223127 896237491 965270839 300117280 412974690 489930410 584819632 223723300 993295561 122886729 823026535 366422616 650694636 394964341 559832695 299634210 585441390 606051752 684730612 231997731 818913402 559453173 616926636 420962688 693038450 314331956 419360388 708696159 791807460 166516249 635841664 255551118 565274102 876417432 915690982 344904419 372440147 217849002 627024917 397840943 463052363 43489384 964004582 82735424 757369575 905231285 916638390 739328681 918593346 218221185 828970508 436325005 632386516 4984859 422584449 610224899 956267179 209080829 977491165 272430901 705755649 964987974 967469465 91000622 661471509 131460116 570750877 4557442 924077409 704890098 741671567 135360120 622490872 33654323 697252478 513025095 987162244 827353370 862201029 695988195 950092527 154504723 560672691 597358992 645247749 766293374 781417615 692167474 697001636 743880400 877381146 290054225 693226068 593577129 633522872 319080520 479049002 879406191 920555595 897275687 932351486 878400337 942647188 942022668 999122775 312689134 809977625 100483936 847278823 400253229 907408589 300784459 790140993 687413594 795658631 146786115 564562567 50018478 616422983 21138371 785490886 576844422 922023215 158128979 325394276 43396230 362456045 689837145 839480472 773492644 860493820 606482013 742982302 583946196 684466272 924226503 992728589 418853269 772271115 986081687 989851425 127631843 690354631 89785185 835264994 525224650 752565346 34109019 260217757 348969395 540588593 975315349 983275057 768103649 992870393 206615571 251003265 468899628 811904769 6499531 807228493 664400579 848344481 556945448 668317119 156179499 320638613 343962684 533910904 671755791 973870950 496467466 594482716 678729354 733645550 50213717 886863549 365222927 788493009 843175996 854324061 893923229 986081613 924309082 929142519 26079718 972438055 992323009 997513960 624210160 705345237 226026019 448504810 729781672 873557018 927413886 932705787 261758206 974154763 454658633 568475217 60885207 517986925 281152282 359518911 416509240 514415668 406887841 654216730 968413348 976926248 227347276 995309212 228649516 887669196 590828398 852511909 57946112 120016847 2740776 417355012 993009281 999661637 94560873 995368149 793968566 971956271 461076651 478354378 13024005 693227273 473786324 855237442 396103209 867880859 108790467 162424293 479653606 563266387 518914297 528155542 915804262 925633097 830833499 836152364 414998629 901101022 38086449 827221880 41379103 664248128 738351149 786917340 96355848 151534996 762012969 831112947 60836254 558656191 744271428 876456664 745879181 952396540 954444411 957940570 766636696 882602905 23515040 239794859 269713895 461462027 17256179 666176399 12981899 27376433 223557557 876556177 451316611 760459873 927872886 989624429 133582380 603808035 731278366 765605532 75016396 650576723 536445070 613130529 332711434 552804953 642378615 937202411 985255818 987310402 451213033 527700598 677961579 898548392 188767416 319270563 304832414 732826922 624905899 878741352 925163171 949636840 493275879 574118909 756363344 837735395 586233359 924253298 262911738 786870284 159610869 162663911 128767027 857517591 701600728 711006675 78631585 522229345 540011830 762122490 322271052 643244348 954819186 995302987 660758929 982997828 708742814 975476546 453802969 578859075 752800905 762080115 152292901 904436602 578343621 719781494 566322164 615477536 107511073 340157532 175745454 639702767 265940503 547139841 598002598 867395118 472029000 622945679 204713083 910575952 195800717 920129117 306613295 925012691 354303185 917365139 948762198 995008103 654174203 883707658 166379373 168704027 229935237 477883494 108015019 362872496 572713766 583309429 83680769 225511255 222521165 824357076 524248725 964086385 304499149 447355128 480102562 606551586 186565944 885619511 494594864 926661865 430000141 956111458 982820931 988921258 921375310 951258531 644184286 725954526 147105318 266313675 613251117 849804605 782270566 923840413 145989531 159781011 762199538 953376398 454047928 557690140 53819887 617985195 854361786 917638563 818523072 999173036 728484389 953844722 52856923 318397110 528389194 872240563 641609401 999139840 350175172 789120176 723057150 943001645 883584528 970540476 790499332 822902614 615690348 750615884 249788264 870685468 221948851 924568269 658060981 936425586 672337050 820242806 997533861 999657076 904551464 996749345 321415006 826799722 941762823 988895142 998580097 999743001 698400517 949078225 348908797 978573108 911477050 982365372 51610671 450514245 898086345 941973040 155808710 444369235 705952157 777707124 543130469 617389062 822133814 901918448 224858617 265942773 28873535 355281099 639784728 712610287 977553466 982373684 612541010 757342051 476135907 846017588 665960392 671819616 289432140 371471932 518230045 999971205 179544016 264227963 842251928 909418668 453084033 504567430 763435973 962723081 500364469 759417971 992892913 999355679 67662580 200009643 676527831 868366046 751890469 854836299 465136258 940031292 813664850 924277056 957980012 964025162 154374785 758194450 656131930 899892319 998479820 999546373 123587225 894126439 269745222 495975898 109674736 422573529 276126446 928695205 968333959 976404841 890930576 923353059 507543461 808159976 281850837 312284479 921662975 959179353 991255975 997278978 14938553 72871691 620531226 960936610 479929921 635781389 93969415 529381349 813210889 853199629 792571711 983758199 140408722 994901261 293192045 841876561 903691021 978451642 62468638 362935563 313495620 361395545 577230356 589961493 916254694 982286078 347365904 851074475 560084199 841594931 546246906 862903703 835784183 840384258 668859297 890070734 631515921 767454514 758908813 994866218 699351961 969152026 188606351 394003968 147970447 513420019 313828469 669172350 371833675 495440171 139147691 689239585 432683263 684170168 191566765 751412570 818263673 964088871 520760047 876044343 648330551 895392600 110391355 858682386 380592098 419270608 344347996 861713478 234808345 434834849 562275447 828151188 502363283 705604183 145277564 515773201 711253644 863089228 232031737 380993521 804426691 942075789 61659508 718044544 942476435 996575492 773033104 865422112 225608823 749923607 674397270 959857686 257557915 657650607 799378380 915198338 934746127 981805229 955186730 977820198 223733368 584961912 411887199 668501349 188675424 605760708 292905629 926868316 453668661 461601947 537525358 577616094 385816395 698745102 534155577 615308411 972147605 984781641 957667646 958706047 706191149 986121327 271476478 471982053 75802188 153507342 138499990 227105978 712872718 922429216 238135714 715560093 75417731 518263369 32483227 869293840 244676448 881572935 532002071 806983104 220317878 885251240 537820901 565299117 238710028 591441935 944447295 977852121 67452233 644246274 122332780 601164084 794574642 981653974 701227274 732639266 359220121 961737676 82009434 688447028 59243582 799027181 98783093 459554915 477964697 882729251 146540594 431440430 271850484 538096671 288869634 650819024 941245773 948718085 561400871 786436095 568875368 670142186 926139204 959660701 542718670 644036270 97407247 890715030 112127680 227584697 560411635 824214322 186047390 857962164 635334954 884141956 139587249 489495209 369988233 662176777 15127463 76103955 167193802 919216082 297845517 596232843 80498025 608637096 604594714 899616971 196387489 709977347 231862306 513574045 663988207 928860719 562079251 869977556 137860495 672779570 229369987 628699644 151307228 196985491 726055153 857371347 455708400 945445960 999539622 999543044 488758939 649848602 407936948 852730046 583347154 588320727 175625665 899620564 721739715 748092488 957453400 992619125 701004093 857075336 786982792 949340230 231269768 526921870 265312361 818774158 758682432 877846866 445408259 657700685 969695334 996615572 253081548 256511480 827783017 985344508 599142014 948490274 45953388 562625155 680548583 780918164 743135806 785486359 686689653 713691200 17880372 464866031 871456088 934106153 876030077 880786005 11069568 883587281 842348501 922783209 1181400 322202378 211437736 243484142 175189867 309868554 525124881 820551944 968676597 996989740 551297698 665841381 693429974 914662694 94145866 610730041 654979989 656751384 810024521 865889036 23432624 677883732 746504516 937880006 71502533 827822745 405007650 726951539 314801889 707307654 545808043 605484604 575971064 839544445 765082064 875167700 223055622 587962799 465247950 804085115 583533996 799331159 848041293 899869819 714548584 990264109 790016963 993801590 578086333 922029783 225329393 694169155 192800857 389199559 48648089 258506161 20004281 165543562 708700421 786671854 713423043 877318648 950651408 957725820 477481530 995213982 149798942 728200277 498966930 788984387 166460709 230257015 431565472 670615714 451982759 793116347 68564861 172864239 329705981 939945137 783365541 838005502 696864798 728194935 886946954 902364056 190637524 702886045 928638454 982794996 963265967 972229219 593432107 709699750 772749479 915469443 539283662 995969481 113518370 663075898 546181340 822917055 946615098 969882842 917937422 955849724 512602547 837904524 318255442 342435433 369184181 622461923 747200272 979888360 82056240 935466016 155497580 495208315 590542277 725878927 846228536 878458699 520699088 741111540 116557455 412614464 901332829 989282598 656819986 710100205 704332521 937307549 355845281 411375450 359045324 866292797 862523050 889106386 798563368 893593699 196813014 573993935 317059407 528659415 147334404 163360481 668055501 990583042 526110470 834803279 581876758 931963266 647517938 910773427 67213948 915352519 910827935 936746574 782016810 935699245 297216811 600316859 54443532 659851787 34697827 618201840 312614092 378282009 68446005 264547251 306607341 484458353 512964116 733875123 4467087 802439923 457283495 495285759 827388202 932710761 806845929 911434656 819128794 997412472 632042928 987169205 634294800 738340400 35045900 258139886 13601646 327748691 204203407 260085412 766922191 830132752 517614515 581044438 508298380 593985877 454968555 888463837 675932559 940429335 980743923 996330593 707961912 812955341 595458605 793792440 46642312 347782133 724170200 725359252 976574482 984490833 472350566 500915644 832051198 949012202 47372906 358404034 575711990 870916054 578784223 656844672 9379189 318271581 938952321 983967564 373448899 487984195 189264479 988953426 745616644 982558641 881629770 977028672 577358076 998240112 564241335 574409453 455513961 692565514 428911449 598353071 776250462 928714215 593292316 845223322 242480838 712162688 571405316 696364254 486909836 634136506 246915792 860276902 369282807 579587180 996658553 997132983 345559714 588659765 203638220 683815884 338126548 605627983 426174160 581846522 239948281 927841153 388899901 659327917 64097911 409452424 149284385 580561787 666086092 762455327 844141753 955950743 322541279 656521546 570270994 780587796 35672869 767149868 155481739 299931306 366425549 818111358 806059640 810839215 520673247 570983948 43201379 515307526 119930428 416160619 743422167 753120178 625510832 916193245 343334801 521752885 609959254 688309070 669485697 774919587 667880369 685566795 119030262 555206945 548173044 612686668 892964832 905396200 98102337 470553873 248968044 865374499 584316173 675407275 593240429 884257677 639368918 779204116 278600868 903879690 553009414 588801693 720374265 762821304 157093419 896735487 805229821 882737529 353998851 515026505 786955344 978496802 470004193 663359822 282936399 748423706 342255000 770964770 322016907 768039028 985886784 995837349 777236667 872967895 17940628 45582464 812768937 947244430 708714776 759333379 587565751 956951393 154002389 278106701 102916394 648992841 84192570 377208078 684706094 727746198 611312240 710943994 778658776 965223316 22539218 821136358 605696596 800305101 476705201 957919605 44297100 628869399 619982053 777376917 162551427 891494642 750932540 768899467 387074366 908039818 297362917 733528147 210392084 553862591 810105480 926927245 209726847 522432098 453330485 640137030 98843844 523673127 553048907 739391064 248442236 787354603 926165034 970870498 192383442 473415985 194976915 663498048 33081186 619362462 690546641 998518633 982680701 989997397 298144483 495563258 848586401 940773606 695305808 901220022 599758121 731446845 24656973 919696818 776566166 913551729 379854648 450590304 188078174 740849980 62330408 413840170 926670669 997848026 379118979 462732924 821219391 930084858 722446215 848087824 420465041 537360113 209492150 349842748 356633792 588654739 327053791 907852648 401466701 430377525 919455529 945106850 744924911 917789614 745722194 844805518 420347375 724110189 19590877 284407947 707107696 985776524 945427480 987339290 675001839 765737110 89874620 685164599 59723256 734470032 933878059 940768919 786574178 813071314 726880121 850199569 197671226 741624383 374307005 470485391 394953312 512329815 541956857 912407226 895301795 947373250 24117700 264767377 627530977 749028783 713585169 850582858 432282700 761317918 142287223 600614191 9688038 635925557 49472919 191549047 870904451 886474115 681546749 700210001 699788863 939653099 200071928 971756984 716467035 934870315 264457909 462862996 355272621 380051514 826835961 905714102 958779339 967430380 506222973 874577396 513005903 925179326 870482375 930551423 550977834 757395495 861687585 952970727 7802468 862390939 62652434 782431700 20477870 500649476 540714603 918962487 966034500 982823374 563031073 747566489 470093053 841518082 771581801 950483018 972447956 973927115 607271579 868790050 57278188 272211500 737773114 812912139 665663354 745098922 901717829 983278724 613524696 957248431 425108022 855779309 648416559 694595351 208269164 505395357 396583381 930187181 423929707 649869136 291031021 652019859 712566230 722472688 713695548 765811375 208106400 946176689 732909913 843346404 426270676 990472342 279933901 511041798 563324863 601836026 355058379 997905657 453758017 847601025 658977434 842420775 577233013 913452628 69768487 217758058 701588156 814666678 147626296 891081499 408484322 642744520 49202413 370588980 620691337 964033068 332270506 485435684 744302306 766703055 678656988 737757057 64642219 487910260 594240103 943527223 495018230 639418510 766299956 903106268 628752806 877686360 695928093 997398706 626014777 676925831 612932366 883069137 177171209 976170571 836976329 949271891 676046752 852788708 910840318 951013498 757047783 962315335 436130727 597827660 419969823 932438075 859737138 868527696 474162478 906322531 39314889 957510281 179460965 745835197 320189799 915693975 397860530 632153314 228888020 823464774 367102643 457328390 254242312 656255600 841652255 920870053 187372361 864072253 458178635 698977764 770195838 940147593 325025689 925295922 5768257 180200470 255352427 516953238 280559760 557712457 800266725 879185129 635039810 730956993 623098011 640045648 624398183 689660303 230439743 921259942 295463724 471433027 868659066 998706211 458081145 491180898 491170696 793391095 808406664 922252995 724516871 990719026 588643646 616755858 749362136 882241282 379608048 545968821 533612213 865036862 416210177 961948898 943661480 986145022 223394629 911193249 61025750 946287058 88858288 842090158 651707540 899600076 496404655 823659127 9851674 610649363 957412520 988729843 663641922 692443180 193215465 287366493 494437420 564222481 956706907 984448364 790103007 904516318 870686457 966898636 36863181 584414133 956074048 994504858 888938318 911072559 202575951 245728311 884294294 906013436 836579968 944473671 784424051 869390204 915142364 932879360 917676048 957916931 486642554 695680255 921793842 946196571 106554355 420367296 641237619 841196773 38297301 529578428 548005766 998260297 48483035 636844885 650863544 936965059 730147282 943213869 775112909 831951613 399873200 991462078 988838151 994551626 143007577 222544341 833005361 992583141 480945498 920590355 280409650 910735922 663111372 879207925 152431006 585742655 208643548 240859849 424642665 554406430 677909800 965887554 323470959 369617097 794732141 804073847 108438949 793475986 635013980 899419265 535793817 627357158 619349116 872256017 155014600 641756079 323384850 658071330 225067400 258114292 403585900 711275794 696092378 727536046 691781243 939296290 79699864 738616502 967277675 991913655 674631000 810645339 50821295 805490580 655768819 900596957 665110843 793399897 712920732 812373510 208835189 661113347 390208826 860667165 922328910 958665945 379773555 681076145 936010120 949202119 149210786 567172711 177993968 348633987 344819645 856963151 265634000 358890085 701392478 860409857 969083562 972088331 133074577 318414461 476153524 502433421 588445661 721266774 582719036 812185542 894933398 939139312 548984544 964689659 501790764 621034139 956004348 972955581 49071894 393833056 75257310 833124660 503722739 788040293 390878693 781001947 688358137 918972789 424689753 912273218 978331671 979260805 695174325 726813967 364537960 605187579 607009463 732215930 81647672 156408467 644958131 660978279 378762351 538280102 352929506 558234130 757003359 959316554 651759292 688235774 561543389 743765277 158938987 389705992 606719546 764573297 506526073 627987758 895824714 915230953 668351227 942191672 935983520 979392332 96249194 945652148 10234622 358441403 839353176 862565383 662617750 678773588 28941018 890240019 243359963 632941390 989107999 989787755 479346511 622965680 276403422 453354856 601048005 720524313 537016891 754742958 270228026 995775680 353038711 378195497 496720594 797022592 474715514 483070437 849802158 906280114 826831246 846799577 84927619 170419575 409398503 489274692 545005212 817415648 705816188 848478942 696412483 702292436 387178585 701903876 723683756 875995576 712511163 992054225 665515436 733970686 81171607 481257202 644623846 875527077 68732475 750509448 390891020 604952894 656694496 789803922 526908471 645024517 307087539 398453987 312389499 539107123 62641173 632566508 107541281 144419788 78398512 186540486 343788372 905197135 503973037 550039765 529911871 989067819 102904686 834882683 36927551 551282842 539786690 752516624 754540774 803339255 411399513 642980682 263399568 320782276 226865478 464361838 454261748 836297869 944979596 964570873 664277287 864885303 714534452 812400669 821734025 977573448 402917262 613196095 224832652 591996348 533594708 661126252 302546784 381339070 263679323 352441531 196976354 452634904 957331129 986836417 961332250 973795053 769954362 969679953 790766540 809785985 156202730 866857225 858480743 926817689 940826415 990229413 431784002 761364213 247174684 848594630 919001282 977884567 149006169 430525152 185598182 227871011 875139573 990110936 626656440 650751669 148377384 995662390 605172735 754328444 567637785 632422446 367518816 980103628 541613012 774327081 14987248 851477110 691701052 702472548 76528508 554767235 110132201 957389329 128576541 678945462 965028524 965075311 359972691 970139906 261687667 903433010 539428357 829864928 211634491 520724594 292120137 661510683 220551166 466101244 397946585 877468848 307540242 877914670 327844417 521813622 989026626 999446720 786961258 897581998 348653708 974427467 645280384 815529281 334697538 494869412 100986504 991605107 664543398 731026742 170743550 886084184 859744336 974320020 598080476 984222210 163423090 213602536 306726514 357281219 509178029 909422262 473668547 719587481 473487460 669685518 787019475 979941177 752170260 833345862 387377683 614118661 937524151 969353575 337580167 611029940 408697837 729441759 494906631 983583014 587808271 595903127 326810304 593634566 663989391 920851934 678342427 692132208 620071359 804133960 131736004 511467147 254358744 868510228 649934202 899584991 51910451 758924586 506393991 521824276 338800933 980830649 241275983 763202801 181676127 622932175 797122070 985721951 220922616 811215294 527000884 732630974 890703034 933474116 8679625 815114759 881154190 915703997 480109402 902228191 852903095 968133615 611318148 625942962 136730998 902197499 926885249 942640957 119433391 397277112 590409079 729060480 527890772 594282170 834468465 931317304 833921409 983300719 936422968 940204686 145256049 513882487 986649477 998015419 915740410 934316647 214138880 401440830 69007946 861232989 62500536 621571077 328164539 756389680 555360987 605565238 189386145 577831418 584807655 806481048 713968247 816513756 280827916 648994139 806053638 976497281 39329561 806712593 31435881 899167852 201384364 202124041 404556374 777745419 593531755 766171425 623352693 782010665 42300063 730541593 678255362 828029986 813107462 886550044 515292981 606358090 829451989 918428134 43507723 287761167 892782655 907276678 712370058 956930489 97536221 752274034 10886907 82188756 647575656 950573163 53851253 987660810 979242474 993137542 800696540 967919386 782768143 956156751 415819805 849726716 723253805 743889384 22691463 735470751 867637506 955313011 531367152 854264931 311154027 535127147 249864343 921861273 11300707 378461777 783623254 990044450 324356440 741265306 251682875 257912627 526216041 745524390 753216110 906838923 913919887 956722894 902447020 914694950 38259850 213710131 622163990 737361156 314240244 626439649 128138918 568940464 611263154 686471550 259056712 428754485 801799411 818281607 564066523 802222080 796577233 948101171 454351786 880193436 198098259 284919088 565569988 605458304 157242091 967348709 874307702 981408561 537505946 609789324 386826665 485738561 190058478 371571664 744958884 752508411 188337249 875179444 875710649 963262993 128773124 171600972 466732472 868544152 237772675 574374223 816654161 872574006 103447912 852397243 87025981 574020535 326865419 635447008 599127719 996433700 500924734 743390429 325874987 956200382 291485961 549829951 733624632 860597455 209674693 430469614 202601022 248618465 494961680 749546631 460046993 460098881 237315288 454853540 947654524 985848731 519188093 528910155 838818079 890666830 669483733 806517689 897530792 900064952 868395550 908739605 453011332 660885130 322457746 747256562 429547407 704043584 710110092 909537117 586369176 947258071 372981543 495401118 218971949 309046033 589042671 590542293 745779519 777662537 377753142 817264185 469954031 625887288 653713189 997917001 962588242 995958357 382725379 617217188 844952116 917848169 323686475 856064979 275422394 869469374 709013755 875023643 504910137 597413791 585162047 892611043 770249175 816245554 190004288 754604286 980323230 980819787 680884683 846219283 932092818 942342448 305157504 998919577 441182907 739516436 597948433 931031634 279455007 867544157 862951064 871222746 327939906 868764984 119936415 849076628 635353961 694261345 97035857 346091810 410739225 699838834 209758999 828455378 734824617 969891899 720535770 838851604 935360789 971649107 549588189 639584846 797995166 798531194 831309930 887797284 298900418 370689099 990383023 996876064 572351634 702129163 529121287 788023017 545171568 845593822 725462834 827553261 188337931 874116245 747935282 926160084 927838258 978429430 729526258 953720541 863721354 940999635 733579588 793183112 914033730 936003237 705739213 923737919 568244395 675428936 236733249 830447857 152221039 206461816 916091172 933373337 711689886 824453366 631252208 644207277 121683407 276620614 279952588 810629683 123736316 502494908 524038106 544561051 210697274 545787311 193228648 507626855 854606451 894164320 936573291 990074337 228111624 245004523 221719200 234710374 59516235 216160243 521061575 895467741 603143361 625199390 796120292 941000461 617479304 807580089 484119725 910046834 694879848 726923905 101439818 906623045 225677651 799210588 821158902 868645178 71700244 997306384 567611296 826982260 49192844 125252265 350963201 424557265 476227980 955300362 254825717 949157617 625573157 830167381 356891268 837304654 418611554 569246218 757350635 856142095 306990526 395942078 177300949 957810379 536060278 661052222 766467143 775940345 359566888 359585005 318017657 676065883 555892163 805743386 789354252 881933604 758426623 857186795 21540780 686694475 662677749 860849509 851256651 930807661 699228139 849256021 242429721 379023988 511712662 614292412 925695426 962297094 20129882 879217621 667840702 998058798 96806619 748594842 597959008 635128810 784621227 885360840 99324168 170854787 41354472 271688406 939389690 984146583 848901546 974416446 512098022 833240013 106720055 540735836 882341800 990827721 992655922 994609125 906087225 980726524 987877596 998948704 964468209 981077247 393981273 957586011 163211582 301711285 676916755 840666218 151552738 777478810 951130524 990192095 784738718 791716784 8741858 918011335 238399298 250089726 436323184 871212364 584780885 673869601 224124530 598597296 288204690 311749757 172792227 362051152 580330700 973839616 264379973 517963775 232313973 413296765 90479048 402742705 698434121 951172526 148973199 690402479 939945380 967928243 720406073 813636626 319592669 954457246 80928272 141415242 45881423 66707513 778165919 977443684 409970078 996764632 422038215 867757416 638471389 971271166 952948512 995269935 366886966 431660311 958464347 991530764 417815873 753432917 708784127 932332017 1405015 416036857 523757246 856999504 789315995 973437927 461222575 813905907 743412099 813262863 385465991 836477451 394639828 974659801 852147167 928122846 814748685 961386060 555489258 781685059 761197568 792886417 716216085 963893475 920950163 969376573 745747588 991660573 272288031 504900691 592835906 736599336 226874997 395637365 94194747 938067385 718517716 720952176 98353169 625066834 618445203 752897406 345952586 875508275 872479184 921813144 281676435 629073373 849472996 896735537 609573816 945079493 57662875 650452652 160839254 895717899 251935261 709673393 872787392 898127706 416695548 643962591 651461453 704367736 497586646 540696583 492702119 888432106 297182166 934492753 259732662 855088094 827460848 979803943 667976550 690042994 112660413 544673002 924425612 978135383 763144474 813124885 849439910 925254901 152199527 796412360 826331813 946681001 664224216 848186020 572720561 638116108 26087486 529241116 609813426 615606835 281729518 330825189 550961570 811686205 437806456 974347479 160338553 289679040 657269450 761653753 407916359 540838876 59852005 688921879 682578379 983527281 101925813 275708756 454909320 895906977 207751593 468909434 116852913 203179290 736287084 951898152 254215855 380310564 915460735 923536890 421400498 853700513 572151485 909477956 454490929 849271427 47715469 713959930 340718741 953141740 620069759 931617092 400922319 466825332 936802661 951728564 569323478 833460935 527538632 550184790 757833925 963339986 884083874 918161370 967694217 978878574 436034469 478532314 502173976 787269264 857576920 988061501 158496730 584516426 258586072 873264523 419280575 764152744 871773463 968347031 133936152 355009513 426897847 990903716 420828360 597819571 95628603 662021447 148236327 156325112 946671584 957706493 200339345 794214597 883694512 925463781 467555353 609876942 467468547 986555165 886755361 905424793 363558533 468654734 759045932 977692267 132679142 878692723 18975319 699776927 41067741 385841999 569220794 849101129 71696975 692878268 473952799 944651816 492343603 881518724 110547096 889365817 843865579 874407182 876862267 925215423 984859843 990155272 39383833 439671527 390713441 517949014 485286161 728397076 649950301 933113006 68342478 890176466 667083241 896592361 723968041 853059485 298685062 365537003 8268231 253726738 407281544 577951813 262554553 739013216 206051152 441383891 118350539 452279984 683638488 999732733 589104646 795341797 944234458 949696496 562232761 640833832 351194021 582860201 91193334 769313962 739627626 838966046 266625408 537710666 195799676 997558341 982212024 991465614 611264298 785234462 582499241 593313829 807548284 836520216 439931637 713708180 905820142 983751014 231579563 939524987 934418550 974282877 946148488 983681065 127810044 940121356 204571437 964628699 387238991 796055743 865199226 873873867 205839036 760277489 813735496 994951729 911760402 969093070 136515029 435465778 957885643 968486921 106371614 650460776 889152008 928965548 957788241 963156170 694314197 886454112 212949677 669432707 932360002 934616026 626517776 892027830 899024357 998046800 773253983 885656713 71966628 87247002 648205914 957363191 795962442 962461222 360987457 623596963 759007422 941002044 48638995 477681815 945208648 978944581 178885774 398744701 645391276 814182810 697968201 958013964 3108963 760611834 835808693 899932935 197283369 565260571 432408429 718733475 522176265 815714397 251556571 689590517 266818675 904875425 737978039 978994639 905971740 989114630 602009512 838293855 948510821 998925194 887495827 905776011 606475338 824981939 386109392 493724485 155016041 976332445 290810183 826855221 317140588 753455853 661437697 893497029 749951756 999659009 885749869 901229032 416738164 427729930 764788522 997401873 749177621 763785376 45901162 99175076 487544964 697473624 158530801 852445033 485121215 734872150 459741275 719075131 895226339 912481069 676396512 890439369 726790818 793473657 599306982 631248459 227815355 593642985 857804679 960273086 932926052 966990133 776291969 902076725 885254644 973796326 777459532 920651108 231164987 999489227 698122790 980742485 534747852 661632455 43479918 274627143 853797739 943311033 838112300 963562651 168064594 962113896 608523507 642882906 988978013 999925569 960258918 968819919 575823152 870675122 669188022 981562444 336856068 340292096 912905364 967619614 492455460 614893138 676960331 878786390 360356278 387442730 471240723 489591982 373406538 515872000 312770783 759941928 101986116 963546756 454590874 997516931 136699142 479261261 725998337 881202923 549176862 766845074 992371017 999358408 875878418 955407576 527364200 608905869 804984095 923305714 81492083 245466073 857994235 900573694 917412071 993353882 583348161 958360444 681071265 921784104 198697390 262907724 736826313 867350199 530066717 624214519 154286228 729765348 877585940 899423342 523319648 752003516 493194397 841991572 354642008 871915693 945687203 987440734 20598562 529516470 923342101 926062910 44232507 569711910 618671778 810109674 38699201 278366058 674747127 880429310 532081834 756622443 905938154 940485646 728441474 929402613 948068479 969182217 778512587 863303226 633901386 694315601 45864907 714810451 438484472 467225041 454220913 512753660 400742927 503960893 82952073 185305333 575561864 604878685 351004759 392131931 941162200 953100098 108642075 762159212 351990336 469689088 467583984 844490791 276963136 894019787 885591163 922323130 867202470 925555904 754945891 817124112 363479886 854515741 27990336 297997570 175155766 246232401 616982298 993214849 178179747 864133455 213987623 487616048 164983275 739900684 348508487 482731418 710405703 924532592 682227518 914726418 962770419 982874358 923798800 981112092 149275156 448810210 314767882 331252620 425718417 815113251 667113906 856164814 85286336 423141097 74193486 575857425 662041336 956110021 757837321 957204277 618929266 638500830 764947614 922273999 955997216 987869270 268326797 347324395 188069827 466200035 742413141 761525803 514981982 904813700 423110082 953274340 960457968 971315503 619955762 730183979 623358899 920520600 800521158 893252212 143753967 452798186 364816685 491347166 927378436 935511545 657753937 802461577 499886542 798907140 834129856 896435057 425408880 698325385 642691342 670849588 234511668 858463765 868321456 885625395 987328713 992550767 359113379 554057984 852444041 996515651 103221063 359033664 883830853 910520916 608794166 936191164 94611044 385977548 242718827 707719594 183815060 602506428 193046265 378513226 271815734 971705918 312872588 566744874 572120182 798263598 538384452 875284832 238029540 891616683 675441066 843795315 674103255 965860905 147130324 369780674 288076862 436714923 946203186 949683029 684621283 792998389 875620082 958242746 98207374 329779993 766617788 916686887 724741837 838362547 626078112 641011110 134376491 776713905 421678335 629241471 690224338 837939032 722285497 891721194 801083353 977716890 786384850 811946094 76391622 112789023 841420491 881970884 49805290 123126338 342040065 807640293 184187850 429815916 147672581 926270315 514717712 616724848 839897651 950410231 786686033 812891563 6427352 257383922 597100654 821101139 82534962 804821825 630119462 869426942 886925508 898205462 638769719 991644915 627262759 708482670 223160128 661036354 3901117 17513929 507435142 834269359 439270461 859200513 555034892 944262123 292161950 581514243 906403678 918033207 754172966 985092016 285259276 773014326 109678299 933570080 482525144 589858892 265185286 866584807 71473542 290939474 443971699 709227583 504918511 561732274 692644111 957132096 22545803 478573159 996872207 998059412 204735095 994098331 420254081 584220804 958188976 976279194 403573721 583817555 376934962 963422742 917456060 948728723 766623066 801402789 152519305 575087762 960452211 990747091 347816043 713543772 728409219 902848584 43426092 230531952 334567134 486951835 371861022 598169513 684846833 889645593 101533543 862725054 518294157 951666505 976745834 999315206 203356186 317789882 605465724 867826753 418814154 642949404 691407315 764215288 471394405 486257462 254903026 622675185 72252452 302424879 229473052 706880620 574003263 636486839 532603638 720316879 749801933 888850828 371954101 423903555 869963075 939135663 148335896 470846345 491272783 582071936 282271806 325447180 942682534 988465886 227551338 767015383 614509235 668641035 64597838 78840513 733998940 803821231 307849731 850275344 964520787 978361724 753234184 851400817 892355044 955557737 371430048 927979701 712333969 892702736 340976463 446306520 691714568 885076753 690569388 770415619 750553173 898667023 96332535 763193237 930632312 937447413 404431421 910825785 966646663 970601998 408231475 987091480 989236309 994661141 545588054 815275862 926176254 981535700 659172966 842664787 366043244 476522091 536183060 777990942 810024073 829672895 50119764 261792763 924903201 941516678 89133165 977214471 495782466 518916414 686688296 944937718 633131309 779245683 829153039 927994181 143394455 593533918 940998920 976747934 766643974 827345761 977204486 980485886 144798909 154788318 905645839 932770127 615686424 952285019 497058031 713601033 471736375 950786775 388491587 441475526 776017946 966788134 904676681 999779063 219089417 445704359 347495402 989596492 260527977 309628340 409740840 899530978 91829294 880877541 939396088 957693774 234374585 392037238 698038549 951977351 959811532 968583392 27338577 675815865 139803357 871826947 785742261 896566858 50990117 279997295 660498083 892459046 110018563 899810216 144223786 658237785 92398049 702758618 483542539 962760362 977860880 990895909 736715980 876522710 223932010 962952669 42459858 770947353 867092994 969816623 100834561 522928582 771722009 889696960 269841011 511865543 752292012 991308651 782093971 998894767 672806420 828486737 641058748 700186820 64918133 751754979 143844200 430981483 652797482 967939810 392608811 485162793 715629172 858356613 123914004 829968370 507890027 862238191 538268902 763274378 771772350 936215633 249503552 529655056 866750443 914422655 187034690 616113910 670457251 804200812 727441266 978483067 241469626 660634920 972053625 976951129 354336649 553957939 397528415 700301333 618780677 961436386 661236493 768625437 744005670 909727269 688494205 770131279 300747393 557124160 863011480 900315963 518660510 893503942 268281157 961723544 769367221 883100928 67817905 311938801 633214882 906987635 75668327 852081134 912772747 958165840 860635038 987617368 999354581 999872250 327045961 732458275 284071445 565234426 698329631 773078713 946386575 965778442 648635510 789286002 602483904 918847538 348079794 624040033 324236978 664387725 366380066 704804036 234521566 304338542 814473502 930684660 803491406 899310487 800861001 962655358 957183711 995767632 416598093 644291446 186827831 608147885 98652974 292683484 535220199 775019667 964372232 985931382 125553903 623422338 190149083 377596946 629914375 705304013 99996317 122552156 958523459 985859498 967994767 979996190 554211368 756501645 68827839 107988783 375361792 848056787 999642134 999817768 439205509 784105002 833473316 973873838 493398673 843475198 689709386 932622356 756338921 894290683 549876068 950669570 192932465 339234258 868571890 948111909 644467406 805253781 456335911 686342207 77796373 122507114 567203184 674758813 576659678 910216269 767978870 963523727 147277981 656074070 591547284 946288667 104161775 353177686 550134825 754783916 207989295 331301989 788589316 841463556 243910768 340019240 367908081 826692168 12379680 570080571 435617757 870797819 807032228 858266580 451429166 526196373 881027938 885519224 794634421 914330301 882497389 911841243 733897214 798372940 440557412 614353544 656763260 901538286 556847054 722602003 763030252 822895215 881128250 942953222 960711159 991361325 776441513 816515471 638806786 773255862 116679308 272981007 431779878 858484071 663836121 680393163 907010875 998458499 460205726 645506567 937453770 957485042 898160330 955472199 919942352 946754086 386545758 790524701 777645801 833761115 971779105 975815555 852374717 881243426 939598309 976237656 154178112 500588728 970409179 985678437 648704634 931901285 62910264 225708072 365253753 971742076 626835277 636250810 273156988 784035428 736466766 921522912 614288340 972349102 694408656 941764051 209472069 236514763 651770861 972118627 820207194 991058155 292759972 638739314 33091163 263361429 577113044 879526389 332948837 355619669 124694260 943568779 627149734 807903078 172308898 708399006 705695565 938802670 140186433 764545663 648753497 796908977 229142292 570481038 203570759 258480885 26054180 980636298 26742881 650231089 40979584 826845090 126392563 805967321 356604850 839540657 708654768 721167313 609402452 983077200 972638691 994831502 419313360 714225287 668588639 907585242 292707118 913822754 986645441 987380890 357631780 510841021 377841906 737848788 526624957 630046750 938181617 982762982 427132620 428425537 496647418 663751533 791630880 887003077 274108331 828125295 222447818 532032249 347799101 755522781 171307625 788399562 461101842 858443418 111892606 649126600 783201946 981824658 801456074 804672352 716052834 898827979 775849206 810413404 441961665 907704690 867900467 923195005 519328307 695414135 489710479 635401254 592469542 748233986 170565062 444017801 273767623 920648925 226528533 321754113 4679677 169237529 906405271 933582027 45674010 934603200 506028915 931017084 888644742 913727283 22931262 290263497 776011646 996948539 199284755 711034935 571816068 906399389 886217323 894410155 146854706 456159112 758196353 809902459 411968825 760670934 425668416 776515960 54649852 573970143 109070467 871988536 885596052 903233290 636425575 970551929 16822957 552729323 932473563 939992956 428091057 718506358 971599379 979998449 934077142 968074542 946875571 972007391 150318587 391117026 419252592 474424051 837859675 860901601 606140545 663740491 30007020 97997653 146252862 961278745 930499752 996688903 160469647 287508135 183792423 462837553 772307817 902629722 34246757 732976579 93857644 437121259 110889934 210284135 437828900 959780928 182964969 976131916 399567027 792005985 76931742 369049747 649267035 910977646 550257551 591261916 229206442 963590238 200105624 320816121 315743785 463803008 138018982 544154176 501670533 853009592 852467036 982748197 919093552 956133200 122370035 577587276 242331376 917591286 824336320 919068097 959847702 996289716 697575334 833596506 893239522 969325210 571619339 879647825 381171971 397749379 621268730 936104350 308816183 480475529 789622886 824880768 665686901 665928598 88049665 853666762 268444373 892001016 273653340 801910636 395312288 689934908 162204136 616540801 368626821 991127915 848801896 917832907 398833303 645709968 659344547 958067718 429199071 920585368 394461008 607956298 682976700 753657468 22739073 679631835 30208749 607708306 201083509 805742566 633434434 998088710 13346251 358731694 542713677 699425447 362428831 988402966 390396598 697182188 528478038 559584456 169257128 824820276 113850955 755451926 517134064 983797982 515822463 697766587 829182682 848064931 284108982 575382306 429392344 811596180 106483094 330942632 570220347 782843350 28227835 704223735 416959976 755343868 160598850 529501140 496604306 989667474 912144727 973424926 665205708 860094470 695760279 844588224 604709824 675566773 387625399 975397699 751660303 775452427 599484969 826099883 114594603 951817341 828506084 924623682 953086924 986220314 82288566 530390309 880347456 922752729 528264057 627112611 856942787 983643683 649150047 774041461 380617800 686617922 190813472 692004387 145169503 994912007 757490424 994865557 242706192 876283201 907265319 916402819 255828770 904632481 662477901 921475094 737588586 830031880 862024223 925905083 195120292 252362302 692865882 780537383 378392208 903460446 906311520 935604418 9867001 639409523 689033641 712720823 732448019 770778958 185166826 194897590 901720899 949234059 173807189 217415625 48596374 185125790 736260322 772342065 337490101 775936912 169310785 255258435 836515739 888494527 779657011 844238056 12535595 870068941 599558843 936689087 469018548 883217279 262466720 455272222 405492378 897531746 375783067 671474834 522776841 619988495 465793022 881208874 907307638 911886569 199815433 529828927 742973964 976247258 866457958 931537914 419768315 579068825 729660748 896219938 561743746 663963919 603564881 934635131 510239575 956540967 718988837 805767331 994024788 996064834 719109990 728565824 312711515 415283916 952517373 995353576 890904068 982582795 397999855 701221384 676036514 806091156 638012730 881444493 36052905 198542276 608763014 910019965 888459212 916051599 689067123 985758739 825127217 881418550 704302712 875938624 935363966 939922413 744304115 800157624 767915013 977398987 971231763 983198031 755951881 904499924 838377842 981495928 148504194 300385322 812942475 818391411 750109091 786111801 570952810 868140471 653940323 981735337 985438557 995268722 713466108 902767160 449929444 840979576 78919636 91574068 451850505 594464131 274862636 537196293 920500967 962619376 836231192 961829149 768552783 783464036 588843311 864558234 670248350 925700914 563979818 958305772 398577608 968514211 320345664 418291000 525992223 884109319 423368928 963492102 328429598 638199766 991818832 996569567 862516031 933717079 122254392 732875950 19672983 251453797 435012847 965288690 999430806 999565931 381223445 634979292 788878462 849592077 79615068 439325557 985734644 993704594 778260594 850401239 290462258 370641241 418271162 514042900 723372901 754798670 998485960 999029033 679210492 687092933 652515137 892998691 690672749 884248032 252013073 838118480 517655999 808708180 582490605 646503746 204828238 942102472 903933912 939193382 528102623 742060665 738385959 888804543 839225327 970057705 217798170 218972688 92748871 890115494 620505538 752812997 776967168 959700870 687988847 883184784 536134500 568456582 200273130 937398114 177044156 337265201 104163456 434039999 931986624 960009017 449859290 759391317 62835966 589106354 864839696 967035375 697320840 727786292 70563785 849997272 814950995 996901180 542492898 962047157 296995216 760059981 398816181 845111909 742034554 783568588 985999886 992788766 601794382 628136976 144909667 797452213 799763782 858077400 485735201 799666025 733506777 797854868 721653817 856833967 73255924 557104893 213697544 457368711 255847621 884203495 886993002 964166799 833210607 840638576 433165784 617177816 215158368 577361800 59220037 300842566 880671687 978657208 924389888 989100479 87198775 481023129 594359901 841404828 902460724 932390710 339292998 596377582 772102841 997928042 468890097 469757274 717253944 971945775 428747613 439896570 591495234 606436648 808667597 845097824 16702801 957456104 523739181 531606956 860751719 870713827 247730857 735935684 460654917 544692601 690499535 828416361 6973399 479649580 823273744 914761546 258673810 460424892 898699029 987260820 49128413 905886180 304118062 404301900 512397363 908291423 578097199 998959993 699096158 988047124 161168216 374126827 34934133 338593853 548783727 986345124 221082712 323732091 222720685 953387181 441203650 690731234 615891036 719182368 27857196 167090289 61906638 250592568 847059482 994385056 689214671 950493542 957601301 973917355 591990566 648738086 466322147 475965955 967883535 995860443 153614322 931007634 948736979 954843572 530093718 550852519 681780373 820965099 999828759 999854388 665497035 686394444 709788893 835232352 664243172 926367019 158544540 236840947 435563370 863187286 324834032 904382903 764980500 798210767 896637954 955145000 119474170 127433501 756840710 848938538 513225283 775741352 379525438 425759320 46353691 210256848 206113860 905582103 527079972 673911695 111895860 518953846 756419397 842977577 401166475 644384388 616507235 888064476 204393773 665569419 551454189 552712432 916279344 979550165 302403016 869260936 499760899 781908367 55449139 165055785 336797837 738919533 675435164 934064724 910305862 924807581 836042752 937059195 424822576 841766961 967922136 982458586 601295776 844043059 957410515 963711976 802155785 950458267 85014973 171821521 872253229 980434715 282373737 479386893 525505650 791087142 541423476 691565000 519364904 744174251 427359742 636654337 213184252 569999221 879392416 915887787 485663181 673712791 570084566 856724853 632654330 741949240 279127380 936235619 991810151 997361079 49250050 513466860 149674697 377987971 394569089 748008364 107407537 738709882 157212827 731619203 571048067 988413823 738426054 803889768 846906668 868122300 305627827 786614520 442951643 444836427 802727101 806538968 183675875 917338924 517314741 781990713 735924829 806283700 272373013 516132589 487090728 676873603 351391325 782951451 506472112 582293804 24350100 736679921 446451037 809387606 824547687 901551915 313587129 459946407 139734830 519302561 57661957 860080717 843883958 914798282 787567407 832148042 634598169 652682848 491125808 639531437 367793797 660279863 703530332 875148055 347073347 849144545 719296100 849386396 61027833 490470670 111898489 790677199 942453849 997623027 833436758 889582109 311439737 571646582 354671567 928778810 708339079 739943556 598629162 816678194 446460998 458671031 317906860 395586601 466627624 572303181 812599319 886495880 24316908 789665763 428400939 812798180 668548222 942002635 257568327 848934855 419154790 503498500 507593013 714132916 902055017 996265669 785320790 956944841 456122447 560414068 10066076 461016827 123407904 175160542 574293255 768594849 800824843 903720520 459158950 560520006 129764843 583078328 414723476 548568674 895190303 905996088 402978254 501453101 880021268 894451883 997099685 998385880 121100873 877192173 795909891 844724783 924751855 987326713 876566675 880877045 434591705 520474371 225279225 385646563 507870350 942013347 367468157 562098937 643632000 872259069 84004569 179121358 807117682 866160730 791704392 908897617 173131988 296576738 823182356 834174043 667693343 969567616 410051544 559720459 700461954 787208377 661176494 941758909 696543110 841594492 390016043 621095659 739185222 915258327 53895271 600455608 767483887 823653332 349408059 512025837 990158999 995838661 68450986 479839783 622362635 832173162 710389593 965719021 905762339 994231533 704933420 866771484 694474374 958821759 849690478 889579363 97902168 436995419 545060683 999817917 59530459 504422463 738864389 873479066 255904478 374049398 529521492 995197366 580941912 863098391 74870275 651920350 153264262 621472613 62251060 318494230 848163623 930591013 963155519 984488051 575836530 641091757 231240987 797444475 358435733 730282837 750379802 939844364 293026055 597132913 313823047 745699813 528471371 698408789 989561198 993281258 805732459 957228357 298440058 769482170 748777394 896395259 51432641 277167219 498482725 754467851 779980588 926620643 590781551 941639601 422041634 920509233 130022401 862097949 696401089 735560434 499549455 703338767 562730615 786537236 945877726 966298590 305195305 590092784 726419558 753199936 710680955 888147796 42350718 716174117 140499816 664579585 788802068 922626505 740824883 869181077 345070451 526673663 799581522 870968098 965964342 996660119 131126642 721455663 985859108 994312371 25103881 627703150 73679057 835252143 946850022 952429725 566529407 808927126 218695146 270772701 307161464 838479537 594580543 963934010 867793269 959132404 503846674 844946026 77789483 929568193 81037834 732443350 481922808 923506664 764995990 980668655 973897878 985523446 433624588 566211178 273415827 335110789 319853008 972838080 735910420 760819570 451688146 785974087 726255385 949794362 519647485 837549725 256951189 844312781 48239342 530896157 359072765 405914498 721128868 994905416 472853629 803783122 621371349 829260337 342941522 890037701 146356077 325141124 608747595 923134210 554301320 781645454 293357674 579099775 643665570 850474066 927887393 983493309 326144095 603291266 817298076 902094635 639858515 999336192 314142341 929366671 541779154 666728279 990007651 996135825 816234252 960167198 68296207 653821632 30904140 879634124 392769722 555896703 506890228 515083576 923847177 996726329 815249431 960707755 666667104 866852599 394596330 397160972 95646274 397561725 232958246 298582987 219336297 545075888 201219042 272024026 572805917 705490829 742124707 955153396 454748821 699403658 827035908 837170202 277389940 926525891 438034827 843097113 310213066 348428783 271598080 580143682 317761734 572779095 476215261 530782623 41066304 813588028 152058819 335469046 138620582 349556425 376281272 928778060 412943088 734011958 184289146 245394331 775560448 954056899 345381385 933433455 648458616 840320899 423541694 547628657 982488627 993267974 995995264 997576498 996970655 998330023 611551781 848837441 255870186 513291820 247457149 959488271 240792738 886084637 215642522 613537510 125145299 378958693 548903128 575035580 170127797 471679607 773747741 951946148 566137076 633119994 614781455 987958165 127646475 218386847 942170829 943698608 876315898 923591067 613461802 787278158 460990636 589092432 122126201 655339673 801506675 882797341 622037356 688178987 931820908 939523797 290854403 522733532 316926762 329829548 622998841 692143077 863126942 975932026 921640340 959351634 431371591 520156372 48250568 754358143 920916802 921636564 389002257 655000186 633781816 797854895 377694373 663147455 36165739 881136662 446536545 987157590 946849384 963771813 521790609 577001741 76245320 791546228 223131796 510219324 272531810 777667725 700890052 789594176 153983973 344328498 947392515 973544511 900758207 919176357 872349851 970737400 992587778 995054253 82242663 216940602 121063755 807417497 825690748 836293975 658268313 888096852 95691724 541142563 556140631 807942649 520822187 960382368 172822979 682855447 159436606 697393186 114082302 273213732 742512473 827393527 785770833 928545480 111868047 292196161 685454221 741035524 250436840 784866984 24710552 844337305 287209131 941855244 973173015 985801809 903659105 950239624 682416043 914787254 875179217 905736289 310072163 508266082 622029537 813640461 737089321 834245895 391499709 667152446 117458232 643060415 491389749 794083895 474501346 941557526 350603787 464778834 401566850 942898680 933098922 953607174 316577969 468597078 365323301 601780066 23376525 489519104 346112881 517047450 102172028 701841651 300639093 696112256 568083540 635594923 695258077 816698142 241233591 352567870 999730240 999853155 807542199 897592584 56486335 876239586 809091311 957692670 180729672 411868269 824455277 825813675 507932522 874264833 67946162 350903616 361194402 953531055 585762348 693340471 995216401 997001579 840636792 991470403 909609180 916781255 590189522 767539901 891254518 978139871 297013368 851102259 365184264 483944795 116288508 826787806 34721724 953833743 491303057 803330407 974688727 984755137 551971340 676338024 31393571 264042170 681550273 868652128 394441547 987983499 156399325 480685506 616761784 831444330 364137244 747635565 35777479 812345695 989583458 995525693 325869034 671412148 270335356 607612473 893971714 964113991 22316518 323386983 817371061 988920550 303316356 691189635 341615909 517452277 979116962 998174011 108157934 326804500 287437958 463509643 397721195 793034506 347260393 597888374 422680885 472452522 931356509 997722608 920989385 958522550 838474368 925076640 460779517 930079686 863641142 883636583 950679271 990265593 208311278 259761132 730533981 769232016 480854023 610587423 730337174 947179974 610837567 764887987 56965407 171966131 455548864 867492397 556611553 936643243 519666842 807661345 550936434 678190181 135637119 218217246 536310619 553057452 901666308 916420777 389616240 725913964 713824318 778599771 239813679 435244982 789419282 982696752 513312553 560682147 414648168 604868616 339345875 870903373 496100492 947695490 90558083 933838116 214745816 797935216 607994339 729318923 574785820 578775487 676214347 689435621 312968167 313568190 661220124 784755022 92184017 471015612 616462818 738931656 292457876 980562754 166615642 462089351 100543966 776780453 607712462 632680551 381554038 674002448 992147494 996624252 120265380 667026912 531420312 570116134 587800962 964029366 473329468 884357805 528013506 766324479 143226254 499801994 243845376 332819640 923224472 986073229 73194044 969070974 37372090 127637301 895237593 940005470 151716992 240046625 763773045 910722774 121261545 425964708 344369499 999498348 160878880 247878527 660554994 702992747 324027767 873389120 586819960 938315096 477382739 762107797 425679139 779736452 666825184 935951294 10163231 399983597 469607058 574793600 246499016 809800901 585295434 871701967 950077292 968775399 171129023 974479374 599714 128240164 36064315 788278784 732957762 999442510 636669577 806448833 509093705 724326542 483834014 717032003 68664870 507080174 348416393 910210253 101917360 942726418 857345396 876015833 907576761 960804960 600698125 629324451 502869249 903482957 560682259 970298358 145781603 718176657 254620369 636542206 755972705 917556408 92841011 930656161 825989342 973468649 656405366 766717341 859875891 914544884 992298174 997990552 281546963 615714693 246950624 764672781 565501833 629692582 758681389 814948162 824337030 951866335 176484488 550320803 957964658 987646877 470476972 808533448 39718578 444135209 452510091 712782846 766290584 803726570 532899894 772519932 817315237 970028789 592094340 856243134 648951990 820710844 854741047 931780239 105910130 762742849 428699589 476714230 189575668 300605735 954639304 988673583 229798285 238919939 775814637 874971665 477259032 520797950 28045816 809783597 36875550 856021067 652295146 940356760 122090420 868209721 33880046 592075916 314081400 767253247 869828497 880594565 413340633 931478661 46053514 438406242 991558525 999883440 311729030 776825144 888836551 941860373 331651477 856982107 745604590 787101310 656572471 938199195 435697332 986922079 285332381 855657373 761915408 836860960 333070846 423616409 317291117 877930420 778786059 994460834 372702978 428268226 704881837 811062613 13512592 70459286 527135933 845146560 876372693 897074136 320761505 546819607 396207104 876283859 773605785 782839972 481040076 559377283 154199131 922226402 268195955 417863736 974438642 999674594 107363925 696960637 607049883 959808325 215802222 462390689 647576065 900412564 260356673 604514247 829549268 964067100 921671991 963547720 293403180 710451635 928510308 970991504 514279781 709982364 505007516 785599352 22621111 442904951 800938859 854211208 839842686 985178586 303559658 363602409 680130508 748188042 35561539 679095467 253899249 986344873 535555991 538865311 366831670 638351800 487549557 683480489 861068201 983286537 403153486 562412478 264579980 777061969 749183971 877992790 412251961 688461687 982453869 993946747 991845494 993805622 853145386 963979491 566436633 842530276 878990277 947360929 581569161 894814973 972136414 973738445 633666482 736101535 928702857 962582775 15004135 291068887 716880360 743132442 844948124 902553901 91480475 247116577 237477757 386165543 956771771 996198647 191131958 774073766 366011553 510606336 497706660 539708025 530547445 855617401 299658845 683468386 558319731 941876698 570242170 641190477 678676757 712856645 288653658 976939513 615150956 766206951 376594313 554570872 728159344 800941735 458197471 603925559 684674537 717515845 957956538 981113880 965228382 976154083 419771247 676192461 793679710 844968113 886440792 915878221 568201490 773653807 233112900 359824396 8324802 47392496 717665110 940914463 692845344 809457468 305919800 998312410 325581642 586100191 879023903 964693520 509807724 911865042 139008263 324890660 916123526 949067147 447516211 685688738 784326772 899385810 385909687 966595296 66810474 127419927 112093204 941021238 639324399 819015161 812258338 850601722 329533369 608051852 441123953 675692487 660721363 919162052 145873132 592557310 629404878 853172305 822697737 835802421 108804495 625644353 201878156 862189325 815028511 880301096 23274682 624953590 935494958 964662427 767730279 957141250 972241752 985507522 53307179 855390351 514375161 923972550 154306821 429055170 564693342 650292423 84429272 336387832 443529574 460512656 409227377 633106385 958971973 968223743 769359367 808754829 521627656 855233726 724420493 751336262 317363535 859341994 984977951 997931000 28830253 331188974 707450342 860593161 408424476 920972976 584739433 961299408 710738454 774142959 207446968 251512499 582432353 644534018 390525697 733651324 219035805 437140354 966944190 998109434 592040106 880422479 276190179 792805464 980969593 982729042 394710093 942845007 927142528 945443284 443079174 668397804 389735192 627523452 617726670 674721363 429844472 972902888 738264894 946494993 983757252 998086202 371108193 684863499 684109014 696345395 895827830 981432170 69184297 979553017 350763748 666799565 234991032 648110357 923593475 960706832 391162122 654273885 517338050 973815921 543965728 616905707 685823689 999183341 588167833 954429119 586193458 994090094 439840239 948420523 288767968 877816241 826497980 913681486 99424446 331333872 411794687 780003643 613902703 881559797 936716656 947246995 794226086 840579151 615541263 635239853 509223243 715928193 310714531 395999472 629448848 679781240 112307086 857231127 304328269 931225818 216685613 764335244 671349805 903090038 587913237 920016887 761546739 803297594 160148482 333843152 42160247 427927320 203378479 635369568 252629287 916430425 975544737 978839490 420147858 681393751 505588735 749459038 900327697 953812529 925123108 941075429 789661468 923627236 873878793 998282182 640528550 968836794 370325692 520624930 326800603 389341690 657892558 935474658 29181201 580850121 18100638 917330174 891546054 985051265 285238087 371229870 762861611 885879737 802054772 948052444 911604652 955524687 586044152 729085022 891687565 963211011 197091671 312655899 566787085 584958689 507312628 602289942 333043404 842876314 807192703 861022345 681470685 801186780 664465233 957096290 202640554 291664467 868753021 887461147 669531883 738370442 323027614 939032957 789129068 960342544 995923707 998531382 498308811 655525436 172422285 696670461 563109818 873737668 527292096 599341921 875487892 883514164 120867449 908580909 828049035 915058998 793247677 970666955 674120528 694320828 949668407 964913351 465127505 576827781 542197807 890075068 321856112 803111731 872498245 939363855 281765997 754350250 533129049 649131672 470093155 910672338 248009194 839303534 31146880 652189551 593534226 743163545 105719879 979004921 894675562 925999408 20742662 465318631 149201528 909199132 410356262 728358922 759666302 799294477 764708977 947622343 281241400 499744602 172616066 238793163 587338134 749918377 925105215 981517832 691547328 802036645 645433440 800692904 1987742 330769179 511268951 943852979 409229626 429594320 958833256 983692692 171435491 697113497 899516747 965381596 912296307 949148287 179990455 805273801 177030201 404725204 126922593 231650028 241662766 365322223 965455986 973622377 448176344 877759392 756754325 812350247 973915123 996236640 205693067 440024522 567499563 704759222 55471807 930851271 274206120 283722191 573833038 581281331 783594855 856789069 666374679 831354131 84369648 629295046 52573235 971607937 578369083 783021808 974485589 980852862 207334770 408605293 524803095 836592468 531547181 560950916 873883216 903883617 489283615 937637043 42065558 96048666 161467813 250434581 797085624 801805921 361498027 814619499 847272331 936141515 337612163 563894760 271547655 406688721 324807605 860129981 778457686 958881834 795790984 931814195 131004270 663783614 49248867 952717564 381229912 783685431 792448904 821719576 816023029 972377276 105291282 992296235 979684995 988826458 420320444 613838592 229475875 474799837 117983657 192054185 647042481 681026313 436908259 477303022 835902913 887038526 910449294 944080111 480198688 817057767 563281409 750883036 532043166 977964662 195839711 629853508 680132590 854891262 78487004 596353186 682709731 897297506 44483134 795130145 226184384 274731303 398059137 887906293 117523399 210191878 162417998 586177339 456499169 823712776 566565984 798485934 373021752 677973113 680419241 765768605 743922570 874701445 486017130 556883878 859567351 981248964 495638131 945186889 603674729 667143088 177056764 814100009 11441806 247343063 315869304 348560648 815061976 919309492 851876946 938704652 926935917 939573606 336032862 863542868 181132711 627409859 301490738 759259639 659693801 940997960 845089114 946146481 875638671 880763250 756170579 884007975 3408892 60643994 428582280 804353253 815058316 965262511 12158086 297305570 979694042 980881193 646366543 678150199 728297809 963302890 301683243 604629955 323110408 331515176 195886426 532725781 778110862 868756945 203193587 866622281 723810959 757129275 822273023 848697723 529237630 952934480 84075170 164352300 296682220 372494813 837295287 844846215 424826540 914986235 363195799 621757321 766589631 777974958 405441702 552657577 686410670 989604161 329787023 777452470 938839911 973223553 670930022 902885831 464069170 670712926 571222792 923631624 171239352 283443968 235502669 775737729 691273267 787578996 988404331 993822629 912141637 979889839 919128187 995348776 629716102 854294615 427760821 826326724 147857946 990160337 112640128 762531097 71975973 852545177 617196505 993704534 442113775 552916163 99639686 539528876 797501086 991457133 873915344 903673335 956306887 965684224 907505897 940799399 716504657 742754490 250026178 661293158 902481015 931595981 48353114 364392231 92064543 267269345 327923857 599854689 36967578 574210232 492552478 868320237 835914386 903177387 246651069 615114536 173438254 428438428 783808882 973404803 218074984 679639063 190419392 854782724 942510231 952816725 327618360 377430367 671282263 779800977 134475712 693769770 35304751 747786412 314282255 782852948 507291797 633133398 441286663 502389963 991623408 993480099 12406167 792298506 110021432 458872162 65211584 673083706 376225695 793132440 815655808 933234498 931186149 946437981 640520177 718282146 84828602 923577584 560617805 848986917 692486687 883383539 447104613 559871435 738121128 805097619 299239483 827178254 500352391 854682839 66204927 887094568 354524971 832320070 307432211 638565651 184086945 964252968 317661156 971501674 991615898 996576405 305085190 794932991 983418758 984835282 255498671 490818572 93644743 416316160 582409481 902028340 196968133 391286271 910393993 986210222 145243405 955929511 316813926 449410005 801551800 997136236 755407041 868062862 736221084 777388577 247045180 283415356 108105815 975516271 97540902 712519505 747193327 873105991 923129261 962545135 20106024 827183409 948491978 972560547 353230818 994350990 437331787 725546225 494010082 731075269 564806306 884122113 916837929 924594890 159093984 716937995 347699390 472263450 111201508 672544356 709150846 827148463 618167443 826463218 441945699 454944158 465594094 645490689 358748845 871870394 388600759 853632912 312628866 877805576 539107202 639264465 138461008 511456377 137755706 830537612 255883335 447710784 898908935 903818852 395409295 480317467 269148065 711537841 656824324 962790862 916557052 966298193 201156384 734620186 68895846 557792525 894874376 985178274 544295240 709095200 569248423 904606679 757516465 779551041 962994959 977339706 210505859 628561516 11750730 321649532 116585667 559502512 692475705 966773528 722076018 762554126 914582156 974059362 715050535 967262933 664250879 969719865 245149318 842219268 697370393 917454639 435585386 639485415 555697659 831837679 59719071 367367593 572776593 706188019 788450628 844191682 504358750 799499703 116498969 672329186 88742543 245746876 399236835 961539513 909493759 913322755 340202148 384424597 798296112 945079208 692269341 698420953 970748791 985798902 997131809 997197027 636186247 930259191 487674848 625910047 381279512 686745725 881271241 893011671 646724202 655780231 928022376 997941338 83534803 343900799 622627498 792503889 660536924 834098774 994824376 999620177 965521970 994831765 78295509 751952214 489277426 947208419 786955059 967791535 685743578 856923274 403112687 746185893 708780292 844289112 924565718 949984253 591379998 780540602 128083797 906105460 959357428 999046855 779672881 886221554 33933968 969088072 548297081 717304480 827913564 894750133 677557834 791718225 55118973 772926274 575532 147223521 942117053 987973835 510444528 861847454 925315410 933089015 142769081 737066560 259390664 644263275 628355906 967090655 138434295 712547474 617219090 812295159 830225628 934878454 152357309 750984665 897671844 917935528 38509750 97395467 445848566 558137492 726962987 897921527 29354205 431176961 452898724 724450502 420620289 720725863 742311980 859411255 706869681 717209616 158813318 994162197 889297631 942607101 654885235 958070258 538563372 714149566 77309130 973212201 414220434 506359401 913149354 996237725 788807963 880877530 890495960 947580863 264262832 851737655 64332306 661883989 319519864 412555929 208168587 338893999 817585831 994287679 628221836 943522213 99540240 619809840 303772467 991635145 115288270 875462243 782869805 942803346 730543668 735579076 103039394 805057649 213999315 216502666 388096900 642216797 918898655 982994777 403859123 777283375 656676914 802901856 642069311 761270811 72953561 668929197 983590567 985998082 400644818 786860567 786370645 978342282 570519467 591483048 781587780 855341900 203221017 430256345 332447792 403979634 576880988 706781718 570179322 687064989 403068588 771246843 553418762 736129107 424588591 991290891 241565713 282285388 417162817 999621204 945070719 950559512 407790304 473863027 610164376 749692493 172066524 476129854 960983785 993879161 562731454 730945207 542837183 890165177 202904490 894973944 236637240 871922886 807223475 975956222 112439834 360269613 792405987 859347306 459020989 480399359 635399415 691191875 270521456 352173402 808198424 878358627 826679326 904343673 715208785 736772912 872910249 892965202 912821938 941808269 509373879 920721606 817185743 965279490 811797617 986582375 573090841 977093760 17153493 49264412 650343334 878934357 440000730 966482776 526490826 974519081 848805090 921961799 149085826 713492205 677341819 760471326 438565123 945979003 807130811 984349372 917854115 996836155 5897526 253068979 268649204 921122823 652616323 925492088 868271181 993756448 805689310 925326905 908775556 983811189 811159780 862506055 51990224 297838753 64000788 503905721 60882668 213148239 589049546 617300469 744666187 753081168 963255194 976482804 25773665 238304938 242834833 565121440 668290157 837903930 358616941 565344241 884024449 977729686 679331491 937991118 673552718 811512670 520785114 592034856 829219493 947642887 89286592 345532868 92435788 555294441 54628030 593706554 394535515 502017277 786646608 964626701 470015286 834493448 110183470 261134649 449660243 805934365 630131372 748630497 671738031 866164460 886122264 915212005 153727298 920052723 967414960 970980504 772371368 837712130 479501358 886953609 994810700 995939771 117058739 513773928 352502323 508685452 252056833 539261082 376819564 527213373 353217944 693645267 573029083 770916116 493839036 537597262 849184233 899868571 948649598 977305134 219213135 931765656 887744141 970431973 425752496 524615123 743416559 817190429 974063147 995935797 38389254 705535805 23238754 699084499 315610369 844406460 679308394 984599974 858701151 964008457 47813607 945912389 298096015 959536933 824116145 936853430 509140616 909618231 677088020 828589027 971844411 981985975 76094138 963800575 926565169 983992155 974474160 995876886 736226714 745643282 665231340 958414904 427757643 595908888 908383438 988082073 361889308 844271674 504652311 614484103 152577948 918511616 293553618 636772431 381002743 771426022 796062309 884569341 424716925 590122400 544576589 823635767 137101237 336612067 908589725 911467185 542080823 601217352 141676583 385127712 234005741 557760392 194905719 274170188 227913347 441802881 972221230 999436515 857067076 989289532 57725254 995871714 498540585 767126593 997211362 997683202 15244064 677110069 725358823 955288528 421107071 646859851 76192991 973459015 117039576 892954073 285985963 947348717 681852713 786665740 966870934 969630691 580183870 722370852 833409912 998460225 610993306 727219259 555919444 565614584 776385101 892013119 161084931 389045161 247140141 869831245 793819915 804035125 243049829 752490838 68204245 198900726 398486581 742787350 958457401 971990110 661874647 678205123 420253790 930144914 580161822 713278939 830033744 984914444 245678104 246620429 867167321 912906011 970297089 999679576 860525733 896616308 563124241 731978188 599457516 810225671 798037615 985875714 312435297 625861101 445123982 511478998 844582391 985066761 204831017 484917085 194251949 720889584 135965024 935734673 596363470 634115703 215239445 878611572 410305476 985556886 318797890 438235833 411036771 739977964 647780710 960973378 708494446 746829885 25970755 814866868 756549976 854914698 822955596 913797506 186370039 501504177 884995934 962096528 29495017 258032261 145281706 239457278 803803702 819871919 938616337 950516682 71728827 975480643 699953575 803304510 775193389 782675863 799637140 981557367 367927876 390974724 791392229 803233309 844297622 995935790 588687838 803068449 670672370 845881873 532462459 794695596 137140602 181049735 421332226 556234698 110595698 682396873 973915343 977470370 731569645 745264934 218602993 888703565 625538543 891114818 895642699 990625480 742361429 818154470 384901592 858048469 348762544 946217865 570014026 902223350 894599750 985704094 736157294 891897049 551438967 771798538 864407580 875986838 995161724 998184626 183528490 190624347 54741670 788147330 494920866 685349608 8933570 461287840 422028458 836806444 607331209 939071976 497338195 686628902 574230182 639469224 998425542 998715130 204145788 992451685 314372311 801871772 698484907 786101579 690854331 862081762 696944027 875911114 28231171 473537517 367991111 916045277 188601283 607599202 531892609 751453169 315390860 419468729 485441007 689185472 102939835 355865390 452978112 923856564 394842612 984870592 846312344 978633875 675236143 740852117 918793430 951221258 587695621 747897090 978384304 997543472 856017173 878109149 86179470 98645022 660050253 863522445 427931840 658823513 627802466 849704415 431695002 905741096 218484166 795382263 894538301 913166906 162281565 439145499 582824664 833182489 51720316 274590589 315987635 365910027 409492060 652072546 746919650 989661745 655144833 806136833 909907084 927845974 975924250 998166584 794473472 956119846 274222774 637748683 990984683 996308765 864565276 994367831 698817800 917085911 532606467 961511797 255717821 637445601 289113771 386257525 38350741 804860520 799872691 980379753 55297505 138389204 690116166 820757984 278416134 767177355 640234982 811584234 395824859 550331228 6018163 28663852 469015360 698681389 101214037 991143135 810624090 930056103 436545202 725020908 937228147 947209941 379090327 448204718 65353447 353699918 66011040 943793793 32350933 219018183 856119825 933829062 271425872 455879152 526639888 762753480 624656161 933781810 287767446 407677315 988195779 994036839 947919396 963437143 484963402 604641656 124944504 750035502 767783672 954451045 703999048 812623795 848776233 962788939 326624133 725007343 714449853 821926816 156041661 849321268 676831692 976222665 171808970 823863593 851342408 916731005 213824460 531908209 177215130 673693875 473370529 644127265 802308349 954488481 734270312 897864487 836714066 987173919 518347489 702606161 73468036 858712345 671233413 782529121 262393475 532026582 646506739 780287802 533289988 998427752 218650543 475782142 707911466 923004966 679103348 945776132 990041039 995667226 178037761 538247705 188560839 585055582 223057154 928810394 439908087 679570415 386444363 954972980 425339962 759743247 837396522 927952016 215935136 936876038 630150483 722160890 542323892 924617074 335060007 401794747 684018270 809268488 275779200 455577233 826984072 855444497 690815119 726736146 795930046 984357309 395120270 401707325 50565744 976477504 905845955 988847151 647524446 862581344 98467449 131851670 882352056 884481681 273169606 531415446 976091244 999531740 803165711 871448185 396729383 961961255 669967917 820190220 548961675 810267432 369055170 719089234 668355950 942627580 347224991 944915293 646674471 984709683 103073672 425994603 744657913 818299982 105040274 265902023 623551761 944402534 490856645 607128846 950128016 978573245 640491530 856217612 309478300 795473893 749490089 882934017 554746698 864194057 170112092 562421813 149781256 726449128 618835987 689760383 342384158 589967883 291374272 957000453 297454815 316673225 644241024 722819149 776081617 893789976 585018355 716605064 478338419 625349155 595714890 788628977 730082340 768178459 700452362 964084815 685488199 737120440 866352431 939464824 978728175 981429491 680348941 747579715 907149670 979418927 839476901 968876812 437497786 913706855 714717228 756988753 183334029 695272998 214498750 750894410 479897405 989299742 841054011 866669373 24549047 462661426 438402569 715475933 931715098 998236665 140565369 710477649 907245066 920672498 912976072 929525327 244121820 391820751 777243750 831310439 150237939 502662316 342303769 885604390 302706013 783386200 622774913 896349095 329643670 339606721 182502358 386083958 608601725 752814127 689749067 906075807 101819427 827089047 208412974 829576810 239486783 921518359 899955301 987045776 776636043 980953464 31302288 520763641 368126235 536245975 124541450 754728985 347841316 922945455 657368150 877289842 852367034 930640206 735796399 786304691 854596443 909685670 420716295 605253799 621383457 983389763 441094250 531694448 576719526 798312390 614168187 782987570 924251433 930135135 992669535 998163960 186700025 418671861 631864546 714396464 215819100 433118623 965077420 978637810 578872299 907169357 96411604 404370120 607194822 986190908 612134475 752513048 516969265 871241275 148080200 614091491 760291526 821421334 877888473 945888741 551455653 769207052 960231508 968850914 374063723 462862847 337194522 652135532 482792663 900954109 29857056 527538017 459484590 897082430 245064957 718966774 400531947 690087183 583241997 777445433 486497 429610979 546773428 665934549 202467381 852075689 629033764 729881740 894528413 901742256 277342933 967273833 740655426 948154050 925658596 970721083 286347830 973009913 781378479 938681572 352708558 444716377 739802412 860998343 678958333 912869518 963508991 973003445 430419829 837412804 641196987 808371288 975581469 985837994 903870949 958124216 325766455 696478623 521366794 624632046 202553131 438319566 820600589 839219059 19666519 89307821 376345301 796454797 708949602 860049651 128298034 376849764 956787889 981830460 787817953 928954472 128658054 763846882 91762093 322164450 975276984 996511981 15860816 344344262 130664400 191940743 245762357 982447900 32312800 325725959 546929898 750252461 978368628 992218371 156189706 341363734 421090157 643170211 490053764 906069874 339830276 804397773 42393785 569151927 991323988 998695802 522788754 555940534 947425851 980545204 46852637 155235899 984545201 999264458 460866556 958300896 390221436 439188724 865572008 919155699 239600036 903049645 561374999 926858059 613439104 967362438 968412444 975864821 888386050 965226798 909338311 958078723 710702652 891934421 801383476 847590161 879791596 962106253 931472089 967747904 744181058 801045948 215953230 501040087 460528849 919670296 675328906 804893895 574200490 731731698 682506608 987229620 349448269 482440410 557540219 587696279 521071813 773536540 222943608 396412532 829861820 946154306 684991872 704561278 166535966 899608265 79289204 769910174 876098132 960149598 719974095 766524000 456975788 961578557 522174859 980779571 723863979 753605648 460964792 774684391 814548366 911920775 938399089 959865732 316465292 537628293 262932321 751569528 884170356 940173019 940413519 945575597 666476216 771608395 345202324 915531505 299544103 629814283 289264184 341605912 74392950 990325483 82355139 404519373 693733915 716395531 427981722 485608087 426024373 964845483 926972558 941164458 314690682 787556483 62081149 142291919 508855794 935596551 875188685 980503992 885556168 900524947 16052999 605504728 284262397 451530317 338789810 427848308 676802299 976998295 307944571 456907490 354238884 864764051 532891423 641062928 446635320 805456408 638142499 809969114 607718077 855391733 965666072 997055581 18146684 374000514 343221573 758938787 196675117 199361073 160976468 355438812 923751970 947922822 484762476 518278260 859020685 958563682 896981472 915821085 58657581 786641264 24267871 866354901 5077544 372464831 279051637 835863486 791903983 956361487 101582741 891059570 557361195 928828597 227105760 619316386 601233540 630824115 322491270 576992295 453614401 713629125 582355671 659940048 622376559 792047952 564984155 900035932 650391586 898971957 101558617 441848530 812747687 821806018 769801253 771964278 221559483 485645553 639377437 927157940 125958518 162624947 30601029 436736026 282837190 653177454 712230813 916084836 499342381 954693756 619559865 711046161 951187821 995937675 454849080 874474729 315349391 723476889 20542542 60359290 644495286 670424509 749756381 852880194 395214158 751811690 845940464 953903341 662052138 709276353 459251257 886064902 795856015 872719813 309495979 407261669 302751273 694838655 169466750 350702368 893776491 911713080 255083578 626518831 546532645 729476689 482321749 660907710 307825541 985128774 100304104 589468920 537560045 567105796 786136688 812012367 732789041 981619276 284887795 573832088 653320639 984768241 257434566 325135168 395077719 991992657 52989309 819320578 746610627 993169435 92519448 749829349 482715348 849298372 728405804 936359689 914904227 918708660 136422131 949351685 857015665 943753586 147910940 253882151 252577774 438877107 296012614 625666436 542119528 946836562 184118647 446725315 725689382 901319679 318045129 644624753 580875337 798313029 199440564 613157591 484224415 997518126 851714239 933486673 286743778 627470412 714906015 906422283 429526025 437315761 651370885 768038743 124961813 694323101 164480718 821024543 859612761 937524196 765167942 950020332 772522683 968621569 387760997 532351226 336670621 977654329 905606952 984908183 523147357 873673065 834245648 971417496 646074193 841468319 678563790 911794640 914987474 959760020 47287985 734965514 843154679 854690961 356346717 908087473 262433059 628638499 184646740 984710188 95577413 504829340 517941917 890965889 451412865 667090126 343082319 366671598 539269037 722867326 962910305 978222574 164030322 194438920 884120118 999280560 557376643 890492255 665566483 859447812 977870363 986627214 785517609 996425272 366747909 991291667 465601791 985123350 68102272 965641230 102440120 602919307 487664558 527863373 617231363 755076221 704852789 773800878 132977706 841943180 403001277 425459160 748365462 773816793 166327030 317568506 884610007 934768353 599986254 999559136 620609859 712394499 8346279 206663933 804784348 838679728 334806063 930567173 362835900 639988992 129059265 694728003 785138294 999984703 780173469 788567752 530750158 869437918 164703815 942825671 271896235 441605381 738886161 836003767 862199203 908932453 491398255 987865908 524945709 738418569 35123669 630194549 777321707 992614911 241666119 686939702 983220034 988753734 763487659 987816357 43124415 253176706 218336786 868649011 187436750 976591170 822596976 833526724 429544431 734109778 267874528 469599618 765352452 791654555 756895480 935246076 13487490 813246514 79839171 978229223 428894758 830887922 554098775 769554810 129829255 708610986 64388667 214363607 739244025 806093699 21675632 888871330 818773474 877455597 33977418 392613522 490638688 506617429 740083025 884701929 269719654 917666641 942001461 972761662 526598674 580879214 784842235 869665680 817843251 932439734 449488927 807687087 212135762 588564896 357427122 901976907 774196073 813322248 189300163 647820385 152810547 161779401 725953853 982179797 538537820 719373054 19513670 813338611 356999488 643812228 568458790 656264866 912989428 932137102 551459400 552369269 803335819 918048761 261662307 786997304 888026649 980576361 486858044 557521940 410596399 496035803 761561962 810258928 60812144 840409143 212520599 229209018 201343257 357790235 591278583 736135864 663682012 672778417 332243953 481836160 250293682 829518118 688553377 981873008 769829443 999506058 865555463 981198441 822541837 846634530 280779034 862780268 251554868 335936925 667479428 689794650 287863461 613984970 972851132 984800772 599838935 887348719 658807967 787419111 572309412 909574830 668003574 991541873 365070865 827991615 201595145 864000278 558414874 581355814 986123611 997638355 760876933 920167322 835593803 835840923 658743189 926835634 80597902 373520661 745666019 950026922 649826031 804046785 743586082 889780240 98443520 666312298 633856550 814890682 856119084 945911032 95516605 662056034 636345926 768284798 812660727 834719517 473944894 787317381 737447129 889183547 906577324 981401419 953190291 961690857 468382486 673372940 852110400 925407293 513054301 588917381 470852338 758319956 616598787 746315980 148737895 258236413 746724779 862145187 742550231 963164038 809837078 855086872 953256526 973710216 6304194 465159054 208991685 801476299 509755919 829495430 347345536 869686679 717602077 824995263 393294254 503240725 797207684 833844081 190701355 671183535 736925203 893380637 742361751 996313805 953743242 979264821 698929851 993280416 337306064 690203143 906142925 997059358 455157304 822053871 857046243 921679206 356126742 571306164 11918188 835692988 532667957 749861162 257378842 468959914 405717069 730345029 864230052 972150781 162919339 389972096 340362154 440283633 79409041 101789930 494088326 725585000 634841056 862758587 391912544 442145428 220628147 614062324 182691606 526728056 225826134 431167122 366477365 990054452 766331782 984756681 227951922 745935419 799076788 870314904 942068886 972947293 10553068 441806425 690360788 973827777 808716115 830771399 140915042 585138563 654878818 895041849 297135623 402714410 827327412 934818655 835502147 867670670 545480734 908903005 605413792 689117483 163678828 903674726 490369917 887009791 488005875 949515996 722308373 844952057 700823819 947109440 446668823 789785010 807217169 886676043 88042450 931075567 840803431 876721519 300231892 652164712 821359998 983303244 29576261 463999062 337221003 904577894 536580972 679392908 577815394 968439418 129107324 263640865 922507145 970265133 232385221 956444957 81653236 646975251 457035619 638452130 331189349 413926308 484954266 989684672 546817314 970381978 401407320 760997868 987488510 990896607 397181954 988641659 263542944 337635806 151176477 879188694 141848691 371886227 29040516 989138957 748000218 755084329 282088082 309941247 803939951 910483851 293734999 490006598 277258811 542113973 370690523 607427315 38706337 781493275 786100777 796096642 995268331 996109566 617093167 903270795 9635981 894263156 868218606 977466695 672532785 960724206 606983169 728355675 201086768 689242939 387958903 565422283 546848711 959538149 226919093 814600167 169494960 621068168 543806692 943683352 793413500 864119235 910583888 983320262 811201981 899488326 655375639 721371540 99760102 278871752 507724657 684954811 491665551 678368376 651013628 913827815 795892326 970298338 187997615 329441589 584863936 609860840 818391496 847401870 438530684 550745871 436953788 780382949 113007933 489134133 944338579 994461270 367324486 437042529 362648065 537427766 292015213 429912329 877591320 896707779 76747700 199025819 178359564 376665919 149610035 829870284 694650320 766690476 662513574 745592708 823632810 936792593 864344963 989624963 30404488 196750056 68169280 419414925 271985963 586503482 494699877 549131418 642692833 889949227 818496702 854026275 618403789 863525776 914185137 948921335 760545523 811255619 898445223 992405120 925164691 998269347 275566114 653443328 907804321 992674169 444151564 869973408 191888928 808741357 832805299 921538213 803097555 840251936 345674232 957536010 48739175 651509088 595131068 964816319 996610581 999134787 679083881 829597971 313551523 520925931 443829795 931799834 166223844 498269800 1535041 794776730 747638587 821744929 538388482 735233360 170557812 563600932 589142886 978869380 629563996 884853329 815948246 934422518 891345842 942599460 65824114 491711406 483419712 948621599 955553668 980795576 967638725 982359273 688073410 980709760 639540219 922037230 580120448 631916166 141930584 208324865 8027641 607336291 608731442 718768759 204392660 778986380 539173850 932175729 130489989 300486196 192033079 289590500 323746505 359313726 901698851 920580107 537152006 813658954 555098571 705524198 651480688 783421629 581751629 858958029 9822170 187810744 875411231 955315904 369412021 814933416 241346289 304486023 339028026 487866978 18879412 119801797 322274706 610124267 659925917 691545799 31590517 887151186 491207921 814142685 372981641 835913782 586396095 906956943 35425201 247950594 575412637 733648177 487727720 671768130 789573221 866501686 165351514 458831665 252286072 566689308 564120868 674334315 792476397 906864475 603474431 852694002 546260629 955356454 673551912 802519018 878236395 919329870 729780474 850361260 423356987 987729862 633459952 666304426 120254862 729057971 654205534 710197445 851519499 939904197 158922640 922721730 601269123 827528967 661234427 764633051 446295986 504837492 846601453 990807762 286018318 435020288 94888853 537218152 284893623 786369594 901391554 934636512 205026497 628394882 168553678 975803779 170640242 765958121 664703047 972268414 160119921 565750726 422547695 777758493 537406321 846777777 524330158 747207403 199499847 660041472 697685402 772742491 380591858 764183466 173982285 647858801 651152252 991332010 889521081 903013276 468327361 660660778 582567473 863715624 231956235 939826921 520175429 525711106 918214151 998081243 788643870 849692020 382182870 820172473 244114304 904525551 397011691 988164016 819755460 872908686 284828223 593622061 230855792 372445189 940136039 963877458 51546728 83857746 246666593 908935693 559851033 923012943 939277564 975117863 823082308 917654204 273999926 444026526 771457857 918064518 196661350 422568733 336336764 682615540 400874648 798221599 951211952 960846072 756990617 894435601 842686682 886873833 306504658 353583272 109166205 949885508 792511847 964384965 627258365 701405752 495376654 760127352 573070511 887124572 27856723 102505962 943448792 981393763 2006869 196960795 727155954 921060004 541818568 817503471 706585974 833641980 713244491 853873410 673712088 916631384 270718270 612662449 642288043 761004073 588387452 895447109 266030596 434321760 595047378 932180934 69742063 815814660 8877657 720462258 975987291 976174123 518594714 725136596 397283503 821323765 775756794 841343152 29628760 41181276 890268877 926343208 326465193 585556652 218529178 799018296 796383380 808803732 141605975 188062156 52410846 693389329 490530816 643222479 160453574 444506882 712009687 841032230 508003421 940800296 783574224 971000913 908883744 975005077 790268865 955894057 833538158 995999654 835877399 947122494 460959119 590337892 8000906 609102276 241188758 942213584 61023006 453516679 226680719 771235903 656994494 881875253 370664262 986675661 171207224 201745977 748502682 968570612 788437726 792546360 194243705 576347887 653920604 842359889 156651823 525111952 517922021 739078225 971617016 975323768 135784610 402497667 369489077 923443533 580115767 679174994 861439053 905881357 603887330 641018386 34140132 190129466 152020023 947357461 494736357 711160189 779540527 933360075 89480240 112005907 7744783 474464401 706345495 734794731 113407948 348562033 665218538 776357916 913917399 920449972 888255820 974513618 268198241 738754529 64631238 617620947 192240387 557167925 815875550 917631032 588735999 893931935 221198771 919962763 49043688 319314818 306761926 615866036 186513047 750002636 235310038 354360415 642527692 837679942 222799232 930564157 269026535 904840053 20819262 296741669 828234494 950301976 765816947 903667157 377691012 981498124 51741487 763988358 301271011 611824792 956484047 972497809 825984558 833910299 633796293 939610515 833308484 844365929 165698546 605919670 433676947 745125516 542350067 635746721 688571697 762386744 935245910 951597212 985912889 987219559 984961675 985049739 936170904 947280611 925832759 989512569 787441605 917311462 564993116 660029061 372626458 919943733 52566892 193497228 780820344 915877606 822478487 840437535 440228610 596146239 118123071 385479126 157222051 727677317 571247653 843789094 93117397 442945370 483409615 532277745 456260487 885587911 251056660 316090560 749840521 992287541 516464606 518359047 362676093 730375219 874658623 971431802 242803025 885264169 523129814 929829574 219465905 358060957 591159373 708577310 620536572 678387141 770565092 780263494 593016363 918400332 499870181 962647736 603017430 723313320 225457734 766089009 447927470 960457343 346617900 513870933 960544542 968160882 762151879 838581600 918846139 938629315 654504700 672424066 312877984 990089884 940413722 999594333 226826128 900221468 944174777 986119551 924287374 995041070 278309054 973166954 165953502 408482471 648096034 738129363 690491871 955771378 285090862 586384222 223749101 258857819 353565412 682038988 266232304 534321962 67155444 244038077 744221928 770228798 855306336 955726400 293479213 464436664 148506718 491442264 45808067 952974494 490805653 873273245 327470613 905677550 141385061 717915549 860572291 880523865 718177562 933347197 888195201 921708935 277727543 323662161 918459801 990673634 873987397 912479196 996609902 999976187 6550800 604277842 736565524 739484852 397769491 519457224 931646021 935065318 271957871 926712294 720171913 997267372 716816762 923090237 273260256 621619775 71168620 116221161 766084047 906734752 207994028 967790598 621237179 666216617 570079022 868169291 126422344 440390712 65101225 327719048 834828631 846738672 297333714 717438709 29410874 348802885 103162350 672520882 988814782 992011554 355002969 782049605 581696716 845207384 28580170 309573569 885788634 997167736 995637097 995741396 811487892 948340998 895278076 945256108 762614624 909513609 678678316 772633720 584459663 691622572 846066618 972655022 516401899 686834151 198762483 265640570 35407200 476409214 924191584 955247725 791260965 841956797 243037664 588728578 232440212 542480535 674290974 676579059 811543161 886415214 89107892 878412949 261528993 986834790 410256306 902461472 11967575 873302406 335686904 656211638 7348135 709602109 959972876 962947703 67447440 417307240 217889435 660778428 486160994 782787433 606782317 677103968 14933588 272646484 862187120 978354715 919727042 993704803 863532835 946338048 888350207 948543656 555882527 782329462 611235880 768238465 34135888 287462127 717079435 900497350 156402745 164572597 320063993 853761017 826094563 994344850 838613987 867306338 628049792 835917716 901777675 951985040 798047201 835815423 628684343 845826834 472673540 506579831 617396355 850918279 969246281 994724157 510568188 812219004 484534328 509093393 546778158 721995657 965114157 977888408 46745095 176186559 801148719 990529370 161609189 452180720 849486284 932433049 333114375 855149893 924805024 955641571 434664100 477915619 765544293 811227940 462454073 923810471 82263985 401990120 846415960 904578141 664927396 838497879 749200124 763880284 500948569 858698786 828623521 835655701 610234379 819208060 116116497 524471747 915426244 987371511 452748650 707847740 33556279 499638828 49960035 574571572 926683857 949950705 224478350 629655561 879748614 900562944 894385657 944118656 254860130 573811220 604345110 643285117 342928710 802333383 362363679 447657692 17920905 739789462 3828414 824786732 525021072 775356636 948808107 992364556 678945127 999972664 357867669 400204207 57724888 337618504 630287106 779735966 499981627 920379649 640254577 929401743 273407555 341011537 192006800 906846098 589120857 840420889 136391342 645766327 989898705 999740440 244647992 972797894 776227676 985621853 285561864 297991576 342441187 460326993 546124457 590758937 944563318 948782921 889930755 958636146 279710293 670736217 383528216 755633028 408284187 914679632 501747425 709702905 52180782 60753809 554735627 651294499 489826080 763331917 537594651 814737398 742822308 816695574 782651540 909940807 935963440 948227691 570908436 853120079 564818643 669528817 373123177 629593444 23942598 566762137 347413686 798947694 123920095 529188337 945670396 967144735 863906446 920925885 378413198 842720854 415041288 423129627 534862990 580678469 75711627 665213337 390217381 880047034 849141159 944560458 376531281 692623627 198839437 220099410 19244815 800724808 437536795 685182183 156842377 827802374 622207391 740967181 976667110 978276894 787427991 797906417 415572512 724163452 764949465 902221136 55804824 771741751 337785668 660606843 54487442 359097618 6957934 261131671 485883403 521978590 367369884 535902601 506241253 599167524 246057725 848198378 779106662 844206043 522401722 925351455 198527980 254133037 405470174 451206800 824876275 920149261 441180119 607932136 113895073 873518492 400261432 584280763 399528504 708138332 587204219 776518800 27007790 293797987 166506139 348863805 582355816 799110907 786050280 958446456 900633514 941379796 256818115 616950690 782076396 993744668 366050900 942664178 351213549 709116297 768808547 785578845 35287820 426105696 847723577 855936310 848315576 984304750 132825464 998945120 418735207 576682846 830923869 865136436 306274547 513092355 745680876 862295513 134690610 457747018 229745690 545002960 464198841 505333407 383241562 568536138 434630350 956604051 798539481 998036831 178783418 445502229 213498156 815703473 701156997 873111939 891563211 957200830 973424478 986127596 687376265 867096845 116619077 929293714 136098704 446476572 589007976 802152184 986085773 998971485 624793789 849184997 331286244 715599757 572160703 809422999 131508612 599002689 248762140 306468468 521813696 947780806 427313253 824459086 186688639 308688339 663852735 868563896 526599852 578545158 612216922 952527906 585384449 905917136 141727720 453882006 755923814 820798943 334799459 727372567 321982526 614434436 858716444 926346662 451415164 506465430 900478628 967009809 212040417 581609031 215018290 948653832 391295226 824326429 190799559 382855428 805486140 974375440 205977543 950931316 240968955 550026874 95253083 139652039 698380509 907172642 841118758 954734017 808770836 961860730 400007580 528834494 765718578 850812919 208483467 771334135 883598122 937667382 473565955 801358556 165097028 970392947 683464633 907581906 863884271 951047746 460129058 833354713 777694868 830202691 468089787 616179115 577551085 940531505 158145130 796369783 875264707 882449718 450296328 505958853 836736600 912120554 841425701 845111659 826861630 982837405 839390410 962703100 480663031 525895580 778588000 936004651 797673385 865797453 689203672 795913297 22048435 195147491 57468293 661918909 91483295 744113146 781088062 954928140 24009388 841155107 609888755 945603841 393926297 814473186 443108476 872545214 86742676 512605466 213239234 345531080 171661298 174450480 615777006 884242539 521277591 871933023 572503140 971310089 981777726 986412968 703354688 869162569 388743443 491109933 296052092 633106548 468442626 981680927 403801193 797425251 488838308 752198401 917049667 934796010 284069900 603245205 911481544 984159124 278942245 944190847 926439660 935789360 145665015 942083429 787683054 847293482 663430126 835768224 355410739 605538787 512619611 930134516 768478456 856643806 805436360 972549330 307664463 481270673 770389745 983402305 905644548 908484954 89888423 358609331 836399731 842763186 611979613 775202276 767155540 836047340 843528231 949173547 691274649 696440877 207362015 243214827 887274170 988916272 192862820 955535155 801604125 887100313 3432354 925373927 833211082 874827255 190710355 998777494 330546470 423574781 405031692 838383616 332059221 449326440 473336773 795814656 688338828 870896284 272234679 862392520 138962697 604864307 571737582 892186654 802590095 928098809 263402190 658960721 621808349 911417405 398228735 842184724 357751487 688321583 738518224 958475107 758857020 855543780 795090802 929839223 589534316 861691706 511029206 813972115 285823751 990308849 996268999 997576673 664779690 823332853 491436930 908771144 527457691 977155340 633467686 923114685 567116265 886152353 241166254 940339914 754832073 855937071 623869313 691244706 284198091 314039252 733990151 977649796 229430570 364280358 525711695 943996065 794406843 897081191 292589458 303725881 786910943 855014071 718270191 958181867 994491180 997337287 358833219 410315961 770448312 773087006 112888110 775885559 456368854 663309734 408079409 661089520 816446233 843717449 610601764 670479724 18639809 836302846 904647723 912107566 814171679 949806238 956307184 963059193 299644511 636416848 112495718 433495180 506602679 671419457 141043606 703120311 74593286 415780012 785908193 955561454 766588119 806393619 746478900 847927201 676425915 694144975 769094352 828260395 220871050 341884674 74067012 836941027 606565032 891910191 776519194 879975631 511558791 667997204 223719750 289279298 16751148 876352841 99293250 673243990 365479745 920353963 653752848 677606947 527709094 758772558 9422090 753427472 694872732 899162310 524569345 896711536 33361093 639721172 112967574 645341281 559102422 944212621 106734618 302041726 642423028 879503559 780125859 987953375 133958701 609021912 395470426 546833818 554188313 629653315 840242768 901201619 507231609 718175848 771421841 902870837 144855927 612042001 910829270 999104005 512735513 801452674 539326462 924545866 511315869 886572127 376487684 844067374 567052111 825201868 168318545 946449043 931395747 984000363 41588784 999586550 704956403 923962629 502844646 849055861 18816285 627679450 297617797 613231034 457155187 509435434 718157756 882843232 418802936 835065845 799669746 973035172 788907395 880392279 876689114 996708032 676435308 876016985 869858718 993466704 649592355 802537988 898913021 995297631 692867943 718353001 114544019 477995174 1230178 284964283 812577395 898437121 705643274 935452797 9415540 965531804 470038820 852810289 91011928 308910353 157520531 170246012 77672236 922700050 255706285 791740405 577107929 912664889 755100902 984073302 797939635 822389432 411507268 699690829 375790429 992118084 251054804 284167202 987188729 993532828 922057494 929220070 971587526 999228954 52071818 512825261 324947976 622150731 794052561 966250878 824247272 931482524 759567131 799241713 749342690 956081031 600437398 790865836 454444261 709916282 424356853 714822698 609059170 694783578 831362474 865493490 173884497 472112887 786537437 882843221 922772617 999751223 285917699 932996415 203230293 827320011 993406943 999117206 693658009 990107810 556459417 722058289 706982599 788759997 62202086 385835062 174538124 886434576 218589841 662317171 20281166 338983787 707308334 740694969 430018469 767961213 719027141 907009002 888371675 923091009 123180397 351112828 842744419 960031207 32716138 483554142 630035017 682183504 839747658 931403917 52175186 671694629 643158206 981365291 234800412 607591496 583571837 821427046 556260516 912841351 894855950 906559553 322160262 911444900 131805609 793782692 237915528 644212104 690388570 792084284 315227175 553390495 422784276 569325932 263132270 377212147 884814020 916721324 972943104 979928737 776921169 969375350 975499960 981106640 12943907 53282530 98425409 569190526 250115468 510263758 178859722 591944465 659728553 753303405 272755602 425752429 274525928 295975121 572970228 805558214 890332096 970289515 970528290 989740408 513221177 850606121 469549452 985235876 371382595 652632161 424646080 792430480 789145321 963885928 865837237 919506696 795020742 862278984 320715616 936385258 598357441 740164163 44204197 563850176 778591730 832237405 105529784 631745024 40405328 425230791 501643312 982398198 264737654 348323775 801578895 837433379 65804051 859026757 321182640 341925028 381507026 721675707 916392089 967776099 506043631 751174151 208922412 661838866 368201049 993849523 925232278 959424300 197465568 562696420 62933150 485787512 388862224 671599525 47727392 569935020 887463801 991345687 801640482 981261302 69941159 790910147 261144049 662284879 576502742 806871293 593114651 857605458 666339359 681397357 796970713 944167708 902748108 992035444 704261735 884210122 804411983 896463399 793534278 891582182 2251082 522281380 824629682 935571533 671972826 880181165 657783677 660681028 850032006 911519976 577476714 710863371 376158585 617311645 193928882 473594506 260102690 820884884 103333678 444896039 813424198 880117741 466265378 733856287 63605261 791372235 911771246 920973763 732304526 958534231 364354400 629125930 633457737 865126904 111956233 153749376 794948661 962897774 366903537 859036908 85221693 517583274 112630713 396343508 953801974 998418882 236984407 311575923 876081286 889796831 463552884 638417807 929158630 989359612 648348063 916214039 231743917 859043171 295524284 601388852 746201045 757447040 787779322 926737520 22459501 789905555 925159833 977302387 12208456 616586916 971377587 983017941 727031143 752397295 321955790 425732422 22444996 160454134 26335058 292742636 248028257 455015096 840946582 976689927 247790260 805256567 951410649 992802145 124791355 587091195 438734582 896082487 780599051 924972118 462743075 668357989 943823433 961257843 817954187 961099458 386452640 492662316 246146671 353032019 732113815 836968497 833112003 985204209 390392263 810000639 705688595 769273339 187415986 843124558 427077136 627545961 825400855 906329647 794889811 932717644 122441774 320130463 496860831 874428220 942738434 962875849 593006762 712268146 446167245 652885245 844369207 983891410 536371866 571368795 250443364 671338076 277131192 284516435 521051530 968602431 242821358 703272923 132667996 709536838 201306572 895336552 507717339 630308439 431671523 901155931 9771753 652894595 531829180 900870006 496655978 702739153 817679623 928012926 498215762 813682459 136205494 319445183 216860365 275530436 467418915 821525634 685899253 852848258 947149437 982987602 422604765 968342952 901748360 927176126 696530796 796920178 888674424 979312693 811313592 927988695 655549254 921661181 841419463 918847031 43151356 136077348 364713943 867047981 476131671 844784090 79519408 733551416 724987638 862904665 461138004 537907117 803879179 910228990 531147085 532969093 244967118 970913854 727414466 833455224 822506471 926044935 600508371 690626851 293348470 645204170 97440662 271431799 908055981 976742885 606572521 917399981 819100106 892368371 182137470 886920255 983657300 996960408 431038282 747315029 33737486 873206372 541313197 597441096 950997080 958355311 304092092 561593397 329493987 483578385 63715935 749112555 149423305 386840483 307058090 563542957 399182534 581332052 706638608 985771996 556633133 937755881 237104407 779879451 712456761 918770151 542082637 976057761 761061730 844608251 152467340 596561514 818793494 954293513 109132863 603179284 886923343 960184310 367379116 388919166 50584358 284952460 17001598 123928529 591754236 997930947 366631210 679531793 421553012 456352603 492403024 716228071 749249076 819516844 887647943 977870305 106010409 405871756 600072835 915324451 73483469 594153896 367875591 891444673 735735069 954689666 984416245 999505841 502409077 533389760 644723387 944654152 878637808 969554798 711753999 763874380 57069016 853011771 750954709 947413278 16866705 323604553 549110221 823792887 866707054 957271806 242863850 278537552 686201339 756659538 599547465 710374034 734147500 840944854 615447368 628900096 211681554 848615872 839812435 915185289 833532707 840556059 350638301 778814312 618299708 938886574 490806919 988660271 565140975 795481533 367644449 875968565 898726419 924635190 454430235 538072663 44503956 558810205 107863904 904661070 717830916 738695398 813386844 917830443 41816474 882151681 398962598 511952014 684687120 719124564 243436505 963572323 187872264 881995788 743819805 980707740 914684151 933765085 924445381 954046247 477586187 573958408 659579767 833297897 981424948 981537079 785631057 855234549 396192057 622199343 290633143 645420234 899304074 913971125 313047692 437363401 967292087 986632363 831089183 966126674 396488583 787600675 411018798 604816014 994189753 999582535 106241051 164012547 957036355 989201677 588064441 983091391 433570538 703708114 893430376 991280846 553006184 570627420 473590189 705549586 541264660 620680308 677784514 806549761 346121089 618613709 534829861 932119765 751123999 875963619 673860365 944102959 98569858 778976582 871782712 875504613 165313976 992387918 85034019 161337124 400968854 503328824 998024545 999282837 691746881 891160624 329954771 497382435 273886419 796011562 935440355 980085995 702617242 908785826 30716858 519344541 279763294 705762969 459715307 560627983 754191636 806738454 603948817 833397293 650947106 919917421 679666207 828965638 765629138 798707236 34407358 680595572 518471326 902617106 301206073 499810430 962768738 981928257 710708254 910445736 700923902 954893264 767208271 838179251 222702617 282196448 781635748 841359652 762839338 908381279 405027084 815429094 764952224 849772364 365848894 945587188 461359172 632927077 357406090 555673093 307743336 826578715 413933014 629599452 843977805 868329489 521495166 543352714 181851529 313158773 265408703 745246120 229177748 724725391 963570348 984168022 4185161 629766981 455854922 765453454 142010127 905192932 901949444 924760465 593999500 664116447 661025178 702560526 86555351 568171523 929677925 959124014 672029247 913984410 415691000 739171683 952609086 974341387 793873937 928405175 228641530 300689816 225206012 674204823 280312124 858077677 768817523 907934585 17845960 826684387 182011005 751032699 87967464 871552585 825979546 960617087 432972229 809734324 148460815 562866329 390324549 596377606 746058114 781063247 156871810 714088426 308315484 790041986 509576267 807842638 539794277 765978974 134514311 363814492 514402464 579048908 494750722 766892712 673172116 903776636 516338826 951084161 406274526 984025150 439388110 649638016 822739544 952296048 754307470 790523176 435776372 954205589 540084489 842843881 66788458 130335140 193629121 414730991 630148512 665091392 865977180 972869092 104143745 924408718 713342849 856254829 645860822 753602479 142953791 800052098 726818923 999236876 353740014 972861714 512465004 795657049 929970668 976608853 430443254 489195942 661380172 744488736 747691046 854949346 391904241 889927317 931911147 986913196 429709917 915904639 896929185 916244284 152991248 821817662 339895430 695217843 644035143 980965907 133840522 946636494 923680828 927951369 659141337 882798700 840579500 852708335 763430072 939620909 751663111 794768992 893213322 971701908 799327549 951564797 231956303 645567453 906086746 994140417 274843881 712967559 821093127 859902660 590227365 952692842 836121588 970461730 855277478 885444468 49787359 170541544 898904661 944083261 223158692 257632261 415211062 944726435 768574718 812834777 42505491 710891859 280813370 521818217 763087887 963066357 968064506 973149756 461477851 953910726 379051651 905355543 389495475 516032167 625112909 921250073 29143317 438253926 746428681 984708136 266489169 401615762 316675166 466758575 966601148 993606619 768703777 793259092 333407069 621275643 845209569 871115590 520010870 724658311 73381989 938777596 750236994 857569581 585068158 949577004 529981228 826818765 602385506 812260105 796202981 972549565 788902671 852651742 545725843 990173809 257570140 453474215 367529271 578259148 104980630 627948320 65168875 603241572 237199123 696667928 490554650 805957185 829852350 875598588 595432713 726039725 829232928 978815715 918382189 987746304 460066661 487962287 546184581 609621202 737678770 885896318 164305739 627025054 771431616 836959949 278633519 405651505 713054602 832321561 887562028 950420870 86329132 523858347 290966525 811863389 408438075 890438612 37404629 719674107 132178799 336637482 751278791 903671620 505447844 554018708 168390280 461443675 225302973 330447374 754164019 764203101 179587729 808287351 50561840 206388580 452564538 676903063 284550374 373980634 533997981 614273493 449189270 527281009 698799369 817507369 431220238 529632017 477086737 578828743 744014793 922300951 76633245 622260461 861365501 942949374 269283314 648627554 709385451 891877960 189262481 966845173 757592292 768711886 163205396 489226268 632598816 737690913 384932060 527131882 77101748 77335649 314655115 504121227 173077466 982238497 628609177 719543088 871675324 896527853 164006442 527990802 481168770 736656525 164924052 217430038 355830274 924794059 721171628 922550832 639369493 742463032 692949003 993676192 176711530 952034630 482624077 667787735 443099486 533193187 740901108 954571228 262422585 573588927 949568201 967169643 171078195 993367139 147570131 320534273 623998847 783619474 692375991 935200316 310130130 630310464 333352648 843260639 519704147 763343150 636935779 893187369 489079921 507511807 727525490 759960009 441809034 994096857 163122976 352481629 97118845 664714053 726259379 884924339 941838975 992061952 905909748 947198032 663360779 994362734 276916634 806030372 379968060 492264761 722396507 961718331 422368144 631569412 812559181 859164299 899233778 901630679 480340425 886749771 826155048 967466502 380989818 792959568 950485409 990967314 494500692 661889704 580489870 937236178 926888848 976097967 648826536 859156702 444974215 729784807 454851198 700701259 112997352 771538405 193166122 788132305 943506908 946171255 838200821 848007577 829714812 830157301 987692282 990408489 669373475 882321893 973759946 984717160 500336663 513782075 529995315 843051999 703190968 936118382 631547610 739983308 105690760 600893070 465185781 552436164 751567381 871376728 60242052 954118781 392233391 444350418 280996578 453656781 376664611 789753722 691988085 989691036 529957910 746572839 8662801 197471146 353334082 619071992 787307596 840627098 647288085 928483677 991467565 997065379 487050131 581604812 941478086 993514667 159974444 283072516 657534633 956033162 577953004 711432799 695573345 882365698 845623524 864019384 826793163 976960424 412878355 731918604 504004721 847103676 239473071 299780987 600347524 780249654 323510537 819956882 561922758 822009897 189335678 786814196 899672784 945667024 194137596 290327634 413458281 522583253 187105911 975475763 46115080 501935652 776102433 925667540 309557742 846806261 872315402 897416014 466863934 864301362 618888711 692532413 316534329 672171755 418785865 446507999 492446903 505479476 243957023 568482367 717071834 995531136 157375920 425879052 723115488 947897949 464208221 757343610 305730140 413254045 992769193 999958469 493712528 884121972 182302480 383474901 53590531 325558635 667435769 821410847 78317293 357792198 705710592 902077762 457104602 627803854 545401864 853648208 530596646 708648399 197830499 797314591 213148213 817654785 965672137 998036939 243107906 503209366 284856835 809025170 786601165 791768277 604445270 644699643 43902473 126685343 458200934 732596944 623628565 911443718 423296835 577153925 997869681 997917734 984388811 990680129 253727517 510287667 333809573 629162032 100271691 899574368 406838488 710485756 610917102 643895700 277517471 661480483 570434285 727635276 686522899 880654184 136871780 974867775 561132525 705186123 267271824 852534617 21126056 675010914 535929162 648623810 913843325 950654795 286544985 729482972 31611336 394943921 258510878 867424674 323955727 604282067 83889887 206513250 609540818 947968679 91715249 820223790 873041357 896753291 390147505 736910722 618240811 815646152 990231699 993199112 141193052 954853294 95897815 792543255 701338685 881706643 212689175 643515679 694772547 830173481 936674477 957663873 266095816 448044696 546841949 976621201 297330969 752213771 385928086 709145349 891761424 952430944 961992103 994590387 118782522 836707812 169357523 775188318 706468614 870892861 830056054 858172000 189515851 196982786 385758260 527532188 333128746 442303155 330471202 881655157 905086105 969518957 666711491 706426118 212797526 414819493 585281376 992840275 940350697 941117904 846143189 971260534 994094634 996225293 752347462 924603091 798515544 825665674 200288962 759311718 768653632 862118225 97053545 600261131 100955336 699601011 622864032 909728452 220874832 934272901 800931607 941242246 90206307 348348876 219159161 741218907 405131778 759649045 678539344 863132308 678866804 774469196 78596368 718093062 956489425 997800865 575932159 589260487 399553386 962267418 330424613 932802768 801556387 995880217 248932797 364627341 491259078 580124745 167687026 446427004 70877803 395197147 561203913 841599994 221500844 995712238 494992867 554344463 288158503 518837041 247114617 330024289 122679759 424515187 870603620 980309940 871659704 948594805 353067961 664605568 187133101 789328057 693027621 916473801 98747314 986810627 591950931 626216176 523610731 979557369 971787123 986784809 774325218 832551500 168499107 834147109 438982183 600607319 278343348 874286235 154569025 711345046 919417245 995105539 672209654 963271340 503545440 821209895 600348620 907271430 295516596 491202671 234198451 420728803 536331141 859062857 976322784 986932751 207685910 252800217 854881855 937834738 920048983 923893920 234261490 650185688 358834656 808527720 492914011 597116259 901489376 961888089 315135950 516954440 310198664 823241602 992876525 998079512 716356525 895344734 455960578 991225213 127017939 958747781 962930613 989273719 685464804 770113451 582950158 746844187 660109686 850738926 780906194 961713806 374291604 788025461 377489122 475806614 473215881 585860098 147937086 620381293 65915762 740159208 574837012 925334482 554345610 944889138 282870395 694413754 854041413 885619932 261392827 670206221 963563373 991766131 776506069 876602069 125423313 298399690 184259654 403214198 70151079 932129891 640782408 833074222 440189212 671750676 400382622 774924562 648190163 860255847 897682990 996864940 442209095 659983061 691018330 784431734 352241966 714166987 237406087 423419603 748320164 886229794 391235722 470176060 502425512 591035934 998868399 999188746 941318598 963265907 853725057 895907908 200516192 425748101 893741360 978589637 427018929 567850997 458696526 597348305 169794633 790465797 54947047 548850920 763497897 825194539 76613802 674898650 802257948 907114716 697460280 700113602 606258479 849153804 997668197 998455563 747358148 820042514 508374011 723008827 610508982 810355664 347129004 824333184 300593467 573444983 307362796 658394662 514738311 779228179 392482779 668945015 915198212 971462099 510013612 726697967 985110652 995175331 795934048 984914955 708340550 871122772 709995537 969973360 408940662 998150357 571911357 800689781 863563004 869761996 519110603 955600880 101455523 172736715 585214472 680144348 202476309 904101235 916542199 979575679 860174228 887758501 797888265 845908436 185074539 871000938 197258963 631992681 828269228 978552623 687586691 969841063 442372053 613500240 255434821 339624309 1836592 605009253 324555442 972938316 662318316 720681677 775685033 809506490 181475705 204941988 232944449 955555627 301592187 841511229 374474466 728842746 434699697 839952081 148798612 894408403 921825453 957836774 378806143 529542500 960459467 996766402 168996452 175365029 761354881 908972809 699016176 964454519 866277597 886629642 181494970 935566358 928500846 949793984 215439743 580037056 144769732 620584382 20755170 651986563 84184971 751353801 616508273 882751071 594311312 636077858 165389193 596417672 708082691 839674543 629537808 889578371 952009408 999238964 547715764 962774662 275803809 323336780 852680743 927219811 786181663 932642968 224731280 368642680 129701538 375345753 389132428 455326307 146061860 217041067 98480699 689750286 90871076 803412511 307728626 539235109 512215623 832999791 241420304 778575368 736982942 764800234 446377524 826090521 161895687 993095191 808005714 812594767 375490969 476902594 236527622 459976968 801993213 831147487 621826657 779379664 593863102 969844192 870321488 993618279 943004293 944852585 605510531 694897682 335030156 523000741 258044672 409759449 657766946 710800204 505779763 796151917 986292957 988129057 811203958 822512764 739780711 908807607 304163943 628829784 467218324 955583010 903255085 997714377 127990331 976080321 878150035 917021955 529311889 766309379 198707070 429404764 585764990 681218603 562244120 791348233 880445907 911090834 354156386 823534974 132487828 313523299 301110483 815383058 495235674 596815505 699129961 732593780 860952084 879128398 602724380 838965362 388763156 633385518 343745249 691311964 295314485 854066173 476108876 694373609 64978632 996221346 727873036 950859878 358988035 517557143 772145035 783168297 549648658 932671210 145058488 474261244 26174752 340364872 245854566 709063953 226089457 531752172 635683838 718354429 158736809 361760198 968004724 988175453 670481235 988767694 334236082 712137565 307214978 399827445 99606234 645068903 191703844 380329542 319047635 489397595 635042884 747710676 198686907 407846497 269389292 980275435 85858784 709414693 619283383 922985118 393530963 631810842 959606679 976056321 848224181 866196378 295208494 363757716 383340982 966348741 213835142 219474952 393657053 788144852 904255308 987569411 70019784 900057534 371659035 894984380 953301573 981461719 789947141 885764796 854456317 968359511 90704005 906912775 870023975 915091792 269805061 800368600 930152764 943582577 482495533 654884190 310388449 498203838 343345039 580898487 274828038 282272752 142015917 572912396 338077172 378130151 52399917 210123838 181204599 996655930 461488507 855920551 728438088 765694171 122782238 461896254 195710557 972349969 408521678 933463423 336498642 497358666 616152688 826799725 576853242 893171708 164609573 889370351 651714771 828432211 379215125 912599314 280218839 861373121 711296396 736737678 22244003 401844936 383298659 857789854 234763486 527381624 928864450 963582632 189349199 404070158 349338637 543331250 491698930 732773051 70633318 680540541 459734550 904012776 984162103 994676944 877976465 941716842 778298072 872874518 379787585 677262070 381947623 592210120 17043733 604145183 919057109 932241385 606767208 784568522 945366169 963885080 712876919 730041632 847094866 956019224 524148952 756576593 263945765 426988687 343652820 616410648 175837930 760765605 840312632 880897136 331319187 533514983 897901256 963399100 385032241 503545258 684700179 759954672 779799309 803366773 543961534 717133117 596547694 704743734 459596109 668866523 718914695 801669094 835242099 886821950 101633111 952018906 176781217 712216145 971448689 973504306 523241539 880730572 770866119 873092823 23534797 627989877 521924897 786170360 547419218 842867753 909234391 927995823 245234260 722000601 766085321 778667954 636533542 821334996 640719862 749194726 767348880 918697230 530279441 997701556 837450686 994506831 675404675 843427964 444664516 812319073 490066650 973079290 760013311 832090064 39764697 667449357 837536275 924870685 801272653 920479944 706104762 887677539 317095344 902500245 73231233 536516849 888728020 990775755 430960571 672438477 472791839 652948865 881529907 967418645 906969296 908367973 821478188 827387526 205766154 925030260 94908553 512231070 295492436 861317682 617564919 953796692 239166037 848891582 182077738 986966584 271836329 789576943 791717140 933587175 103227216 201210943 453561778 893906637 183023791 331774028 521002224 987811066 187875475 253091727 640691286 821355980 366107784 713555648 534859804 929327618 304693658 604276416 617529071 679605046 619109547 726991996 986132049 989779981 428648149 638007307 963540466 998562040 246533297 907897516 555502728 676986097 858791172 934459034 495918433 500435900 428222896 865113276 176604304 909027236 862488816 891061541 474389488 546231658 159833366 900419433 515658826 536279247 346889016 786413429 818173446 908355929 604952009 819364326 574940280 824658544 7350664 843413951 548685226 662884151 985023542 993999314 915004813 980304567 150942313 664804653 353065813 440971336 450999677 636165429 160229496 212570229 911611893 975145747 903698973 912306856 118441410 731522312 774619069 802235384 356370265 373386951 6714459 365765352 541802188 625088595 443860470 916708442 408851593 808574994 61374365 76734724 537170679 905316332 428284 519640792 609000544 669748333 146202608 216898260 348448172 706222093 409263949 446344732 593196165 822411076 633536824 996490917 588599914 678566262 123673770 404087031 579797841 704502855 654289471 879407347 943623107 973369252 530715426 879338014 142639093 280843123 276092222 602614343 127203875 610700919 12193387 580835413 96913220 473047767 788949236 902031796 91940981 899181801 598872337 798457415 423545107 848713079 60123865 840425190 694959125 901119037 527428220 531677347 606883017 856978076 473102579 915685215 823130344 898112345 113844428 366009225 963620980 983357568 377352010 397719793 843856568 953544032 575043965 749326374 884421636 900341228 7349166 231432469 418178700 421061523 840366701 963585942 431938740 770873222 296893721 390747656 293863223 531052884 480478211 532539176 433091753 877003141 460334045 615867489 940435238 997077590 118682367 494802052 615429929 630962835 33851432 934646470 486469422 988808233 427929349 922669453 822645236 994137617 518529307 572564271 732090490 986280338 546886466 667027400 603703534 632417887 402724548 696220596 623628150 874129247 812588792 988955081 663485443 798552626 657604281 922823951 934755137 985867149 773197416 880769982 244643456 749811913 677552658 693024351 368904581 561099333 392230023 962882260 545515670 683128139 330664802 724086533 319402823 866207932 541664782 723136699 104032003 794772263 66345239 375380171 93936943 526610644 250764467 811717539 625471286 969489758 455268089 799072291 82370550 987202431 565401476 641401384 752925079 955654018 6138527 52232326 94825288 820413769 22086183 474190962 492630103 907961881 76388695 400960023 266033938 823997375 136978983 951652177 358882431 884791768 91712777 308781170 341337623 707097961 479948166 629723606 782212871 971663563 177427394 239645695 691926138 827056296 918498099 990951701 287368316 290704327 835116488 841930251 3238538 17589337 957663661 959668766 318649275 810674130 652410087 967410771 192261940 333977732 111175666 637420391 332902798 378137220 151744235 747200854 122187687 708136681 192653328 387646166 483743661 839014238 234249091 749033087 29245675 671203535 797805663 981748105 840889529 866793044 60052206 946785733 453486049 727234866 642675169 659782700 863907980 978771129 313060868 635342215 359528321 368889620 50856110 470570176 684515959 981048113 108350201 755637943 798493826 959545928 802283343 902346969 531290157 607082058 572998642 678922385 583200670 737735048 81450537 942793929 669591587 868143710 90712259 321945712 843134690 880880843 925305047 997654255 949164687 994938592 152088736 347493849 822739014 834454194 146350756 664458945 596967912 634224876 46906943 976293461 154904561 231751581 395764482 963910533 919032551 989589709 62537141 282685294 920835792 991357951 347265001 826280143 700357427 767973969 443686578 658939950 536879742 897983021 31356603 782224784 251837509 327468729 513981730 530732723 943901470 946879459 371954826 767639088 315188090 368132486 512957382 915421535 20600289 429108281 183593744 972396744 755507922 821022180 715616793 784853428 998459880 999373170 391560192 522400347 736454081 801392111 916269514 961898793 144142771 596258207 73033651 501488362 675526124 689431404 365981144 430258320 573595317 792466702 617664174 668851041 444734663 475747366 197335879 535397504 175941558 745968905 534843672 896143211 171382339 651399476 968935480 984657371 642073482 853209015 827585607 964095538 933758189 947991585 175309736 766908796 645635205 820352040 241472293 608039727 223248713 796522431 387009580 652422281 49805035 631351096 66310555 973431130 570166773 640871745 20738076 495736179 711662453 933983820 572095132 842550686 949770968 969622394 757083712 917993221 330068810 558224276 296860963 815413546 809194556 993572249 491974329 983849033 142965310 662766891 366264332 516177305 842189738 846009459 981662122 987783008 132517594 876225983 599886209 841499450 749446430 860848340 732332866 952022592 292702011 885528735 996510415 998832821 107238574 789757888 286575030 879331255 768368797 787680269 340302484 368885473 295709813 942513358 628767072 780926337 875062146 876699525 319366992 662941595 673515528 916808452 417389656 730519402 1710063 86536149 257451803 627484217 372423406 958264390 70100673 703556098 214043387 999917294 274046238 438700730 190298154 746632423 482638700 628950514 539542676 886146382 199327286 436563661 462395459 496084726 114252784 242949450 739424022 837692391 319631919 971312107 980856695 984761208 385368731 557657175 710655877 901672112 126611275 371080506 646372968 921716716 759824543 851149670 131023152 415939608 648855992 732231350 600761520 735155664 647200371 801311235 645374783 729712860 37121494 454669221 613689263 884069141 161473691 177406053 341269558 868236079 798735364 804876326 613876563 937104893 708108777 759225851 185690306 365909041 830272868 866241244 145067759 885222187 277866841 522849692 735032564 837751860 657286007 884537727 173216106 676345195 133744043 532225053 293923325 791754836 319036123 350676526 104756542 484306864 918218701 992469177 543949913 682140342 669528468 889795935 854407666 952123210 421043842 926786223 38819644 323290128 389137776 492406332 655130656 975867931 567835183 626653873 867945875 967749180 21113124 197286905 192480175 623505276 960593134 975152240 895213855 917382900 537622581 647560179 460419097 742052815 933327968 945321707 58351127 988130095 389431379 566353342 758893333 815737600 800623459 957484507 3745778 515313321 462281585 612683664 652081070 690869565 572001798 733734089 630971487 948475933 371843052 970848790 682402154 940987985 166289508 818064465 254947929 742716236 219820311 523459463 588109354 792368667 686055337 919348420 314183970 683200271 717778743 961727326 268363861 498266674 939033616 999288503 325244991 886957672 559262347 943167187 471510278 633617490 772203385 850718011 86754101 947825075 885312121 967278013 617330944 814123278 598502813 744755028 211619273 447314271 456898442 878817620 119795312 171027380 650017940 658121026 226901730 556217352 682062507 713234350 127623652 501823844 81254618 295783380 288234453 634769163 289957526 437039923 219422413 291048232 9856779 808547382 230912048 679910485 830095389 979682998 889707395 918603591 15524810 307488175 600043055 909796325 663770363 910785189 279025052 920994890 986857435 991773113 854869063 915613730 795118886 934843200 309915678 585692422 572663869 998673912 613580593 778120226 75507063 783336024 694660714 913645534 881157451 912992387 109952158 194331177 45761837 69515534 744294419 793127018 998679180 999382937 580994332 626303237 276497458 360032645 848623048 917956038 781911672 974284632 490868733 902734432 652733628 761600649 213113057 936769213 773972064 908379384 239636411 460896771 863060207 960357642 697672516 997216995 226814907 572638889 329972485 704658960 41869636 526372240 712541065 900850140 819739733 973116804 800357509 911717129 442399584 626565935 669329804 820452770 775012068 847782910 784808419 959160414 850930294 856284982 68463453 613797088 163626978 191969568 22699304 36292897 316043381 747884896 351017418 431707890 793662781 815709767 827982813 857456591 292043734 533269182 687250560 893708377 998056575 998242241 46345739 80790334 761566536 955020061 340000991 987064811 639034820 857314039 307957183 468806309 38100018 388850609 957088345 994535143 932735474 983487828 592499362 857464268 415190685 605071407 173184361 223351289 167386885 767931917 617328133 796910101 304175270 894670251 865026546 994901858 939278044 947692477 566213001 798737084 182554266 377206404 451120709 929614975 659088423 773986774 837585411 920173874 826692536 866310582 927927111 969822128 93848950 713710205 108139701 670381449 759555915 801100493 99855808 638538918 215801784 905324449 916121616 934684442 41479470 806342757 319821479 561111234 777474920 883447724 80439076 256593139 438223302 582571543 482650765 790114136 778139 346735695 958556666 996342246 89952343 168329322 141356638 245494716 386990810 992056415 326293832 993925094 609327528 963800303 885747256 929505017 366368192 954077500 296610812 559469241 869744367 904528631 169907858 386501726 199692107 809812383 922097310 952704511 240676626 457880163 145273108 668356648 212915631 714351691 799668170 967308267 267592994 539522025 946031985 977833649 286925233 970454105 675987451 985301016 250003867 345392304 589022241 641865682 365910418 573331282 905734623 987054131 944434751 978171239 60688254 154455676 886543267 995640982 677664429 780595307 204983082 620698786 542440724 989921783 915864742 944307419 429289216 459775950 557763532 628643389 683561277 908948842 870012839 973757037 949888739 978514087 5466026 555469591 495855655 562130969 759688695 814830487 508285354 748680206 660136740 916357116 872013486 949461777 477404569 662486181 570438225 947035370 632581341 647311001 201290924 383746357 648650815 861215279 720381966 827175693 225942325 655766998 11145349 19948655 507068794 969849262 679531675 893417793 557731702 761681351 194545374 967805694 510846764 716419292 39033888 974577607 890827793 932375168 321983157 789620672 653645296 905092292 205292756 771778645 848650709 889634347 467923628 571045839 138994539 851525933 649119551 735574875 710782310 792290115 255466657 909085300 39082351 173689607 681212793 907150058 933572929 965999303 762626787 798652435 329241713 768944345 738215411 911473980 136450342 419335664 119295340 427385637 267948622 283356232 934200141 969999545 700194657 801496501 943661561 998781414 171374841 617482152 706428895 915885555 626350837 688393590 111594004 152150025 479654299 780601294 593147187 984211743 35735618 496988098 551313518 939101734 540026191 657041567 364066978 632888456 958600292 962549066 765690194 844539747 257943377 788839617 744862431 983577752 342713302 749604666 880490806 923166755 625489199 933096916 105636082 783798610 324381663 920455013 961589767 964045133 630338275 781318285 287125988 794878356 893008626 978571694 297167602 868573127 498389659 827508386 437394462 692997823 470729279 612732154 548954414 852666505 867563228 893272496 428339213 457273570 724969726 911388189 317277684 440363971 675862685 975593405 47849824 323896707 364626975 666013668 930029193 948157152 238390814 276928226 931484847 958535185 451356039 868029900 656624816 704306381 807293103 847340984 894690512 943045243 229960587 733847936 939200437 979854346 426905862 982317373 616985794 911963531 835449512 874757174 235181319 801052493 45753160 904275651 556480066 675310445 429600479 472549696 390587581 684729169 184425709 722445577 536569869 610661455 389165803 487325568 296035503 530511334 216411110 334592365 597023382 898003386 290723591 966200767 762644673 785562176 989460425 996511351 377583009 389711266 492559382 799444765 407937574 562006549 443941634 921669205 383165469 999505086 601106283 936557478 792956084 811862006 72366916 336449602 826861581 870034067 988780937 995820587 220380194 316815937 332138370 539499551 367385347 733903820 516689279 851954142 353959109 736118642 577685635 826204318 486095638 869776199 839784444 903431907 362004743 710391553 474768885 596118386 837842872 880741342 272107459 531440965 684579225 885635587 947456690 969552483 351332417 974521029 517026247 677367341 589207254 731641490 568693508 977294760 838432605 840039756 931490769 949164731 704273828 760538047 843885529 880051287 197765944 975606254 12517199 558905298 336960941 806034476 650154412 917535478 978874438 993203077 741568577 971568363 638435055 895696471 4903319 891869177 71407895 972417836 600684556 876534155 549279207 762834578 581777829 671718888 640768895 960896425 626153349 677798721 87282956 526028912 235520762 683563063 860607462 970553600 290351062 736129800 995376514 998020668 734462303 754678665 219256180 951616561 46678736 166452471 676123593 677159491 782769965 876879344 764379969 913787058 750121885 892157368 927626529 940149145 324487182 949387972 914657796 965384654 325403179 469834195 594511310 608668922 967543589 978734125 530426028 959104431 923610171 966258469 690386082 835449678 720089492 754616820 810708270 962454620 242529520 775855911 322483293 936354474 342678285 556835106 421534804 830430911 936830248 988541109 620024094 824438485 393516923 406163223 358953261 969079109 736225842 843308731 255855981 987747704 976262233 982594072 512114400 729564114 367666816 905857067 170715623 186090863 760055545 792544590 109781396 124747305 166736087 309921428 313130058 916361119 404828370 759955416 57310715 71321373 383011910 553794571 834094587 977703618 640235797 737652665 92519570 184357278 806538095 929291936 55106194 904761819 128054340 261598188 71240131 507363217 742216276 756242689 991348549 993241257 848498266 982464629 723558249 802743029 777778471 862666894 204594781 815508784 312709285 325837453 614554295 899412771 447021929 866897289 999862956 999912656 51670620 197312211 770996246 874663209 708683436 925609890 911596088 994560032 790769935 943345099 626520480 950628122 984245542 988521965 526100638 839352639 849542701 933136720 165654510 922935194 301429297 681091436 41797358 189144715 314007958 457895246 837236292 886364804 677250939 866042765 993550941 997643756 746403612 799635672 727116892 794882858 771777395 856417188 559567549 858894661 190554530 328024931 951757655 957540748 787439863 822211179 599872267 618396380 307726673 315049880 253142828 432700181 839580447 945441925 115187977 448715349 558086874 939254159 282984190 775366435 145307462 207248770 964277174 984177517 981844829 995274891 594931404 614608881 712841192 948634689 863915129 986254979 988490845 996216311 390703991 857960250 49952652 673706728 942042293 990660334 950882294 966774623 198880920 888008981 487118429 541083780 229204103 338724460 192028526 294605835 808117067 868040923 520019101 960678223 32819112 851918221 787208701 802917261 760278760 832790352 514678229 803516293 68122649 953146800 443531795 502112790 768185226 812249598 125336941 868670544 203435163 281456833 257697501 657504579 634299555 663004937 598523188 651940439 972491947 980734302 869816895 921524654 440947325 825667996 998994833 999234257 119727493 341363546 451607484 536947509 509950584 914343672 289765324 350986446 849242496 941535564 875355978 917873310 797985812 995425842 413914803 729425567 939028622 988170502 724838349 850419628 964435183 983120617 505952388 585072225 752296221 770153655 284651537 905333700 556476274 826639512 671218531 913965569 321394848 583191409 631305336 856248505 304058590 800440046 220382634 439174573 62128858 660229649 806396094 913066191 192183924 410246055 555739060 947507457 633857964 881640254 556006398 857310905 320164965 471699833 374057246 480235864 579846359 951337269 735771839 987118219 91873714 977802827 337345999 495233697 275307157 533283214 146643307 163145788 647635621 839633241 763413909 810742739 112845408 546388382 72289576 515754146 676043151 941926458 559319133 661765531 296512873 651851142 992658106 992967738 164726756 470096263 186232212 722506311 238008932 307605531 318082563 456469841 842134792 843455789 111402918 193247489 580148085 686189495 722679273 960191570 967534341 993259519 299731843 381656334 175253586 844038586 591734118 823948127 631106936 874862740 551541339 668392536 938693686 948447810 827797581 996063699 650541364 722242670 267522943 339485833 331781559 918883173 992945480 993765771 880776488 954781376 257374134 688647595 69879619 621068215 570476471 999458560 374322534 859459447 526266336 838184620 268527545 274580551 782501057 821833945 228548655 497848630 234467487 399596254 960258379 977744427 720241191 742184888 729147078 914420801 143135879 816036282 622160452 854997365 186710434 247298706 309391971 545979944 669234134 822402193 47966053 961980073 520299814 868550321 717210182 811069798 738038647 945386640 341357878 384187214 232518329 730195002 728455647 744726326 508181531 559048711 286102254 354318118 715245831 740082388 843450525 981384710 548844364 625181850 789859211 973544159 8983484 238101556 164396880 825612677 980594230 991819953 247380794 445425559 307692156 594739589 581049454 843330266 26736374 60718694 687331218 696928521 820481545 914020547 503976791 576217503 956309419 962883114 22641611 853220810 395323659 399097120 303486690 325177760 361592699 845559852 141726489 984280112 432479431 438044883 362704601 734262727 849247492 977882396 608327928 883435124 793923436 933724212 71758130 899363267 568509364 749313136 739351364 832596235 320151929 408399293 294856038 626065749 950424411 975171068 100342808 706788513 301378952 336150522 912379958 975359172 314966778 603915134 833919409 954887744 854536391 856691377 150908073 659042186 996347161 999483226 986456628 991311292 913023244 963140826 803634962 949654197 157928719 669041463 682055086 687016607 849677033 888612933 207888027 219193620 329686755 819064563 119154039 825466809 378535434 758715782 338983223 464927523 158738334 559987261 831196967 994241124 54211328 894149233 62405860 674610480 125476684 314447272 784950742 846022259 236722567 458708124 132810226 426381397 786000913 994853026 522944372 889648376 804373176 975846845 199929354 655694448 723085214 989741334 12035305 892816962 478543270 589331403 937899925 940213725 391032253 874900858 586306973 787432409 723359602 990117473 955323817 965073508 62184997 512914492 913401804 971824638 130657194 977706227 723411347 914475180 818246499 920003537 368175446 645648929 869992367 974632880 339884609 612623277 341331310 403384717 553137700 587278961 696962550 950380059 82007619 675035414 9404895 223172320 159270970 638805418 784837426 843882306 863153096 870085384 958821524 999491474 206678739 899637985 450053252 704032869 844861651 906559422 830362434 892686850 871732297 876271023 183503905 575836205 511476664 925425469 798378161 935778147 246224532 650869602 647196167 968654608 99650903 136667671 461434625 761831376 647309834 852020220 23443862 244881009 942817071 996406911 434619629 440625279 257325256 984729954 115462215 709004005 575096866 579219621 420294784 934424307 881796157 985166415 308804867 840053391 653854865 669702555 468897927 534251929 685528828 756969433 764877870 959693147 244058501 969521532 29977424 257265012 112896430 955163048 713571423 981912051 794899905 808808403 830183113 969063337 291957958 712641477 25315032 43394873 632592751 974293156 702123717 707317835 365279996 377483607 278611919 696676980 939252944 980411148 709370811 970369710 701469079 946079052 974334550 984116687 900443933 912062710 869545910 919037106 546608811 943232748 286457481 814158234 626653009 665340095 609405321 832404645 939753605 946605047 926327052 962607966 242999938 580872454 245927395 547425938 789667646 814035916 383819507 828709571 279833706 897207776 921462881 941435350 471460972 658691958 684202016 734382747 547707785 747083083 618577124 918812542 155248976 296273834 941649128 981679547 119625330 971203564 834053950 991431788 844873531 912494277 761755543 794883267 511887384 631630969 441871036 795039438 205158188 746512140 308036600 472386690 709754611 956530494 351130622 991468837 374277946 802523457 366082242 474557045 349417083 450486991 457455146 856805842 816915278 918628542 834060668 865880073 683831903 837694273 612180679 693609943 727575236 782206776 108194026 896380143 327394673 385200699 289048431 806556133 402977091 852421979 762312675 996960195 695119122 696846740 623513174 947320817 859853543 887988120 68951167 117320541 23682103 907814315 479581797 906540092 177411505 293812190 918170242 995104245 605178672 800736982 342722629 601107174 465405823 906236061 224817752 945964824 871773646 896614064 799435623 920311017 68921102 885882310 675985573 871932294 789825409 910118706 249910990 305496856 602330300 958582753 842644253 965794540 335010312 711557970 54908727 89949424 619197124 676396540 133485388 801456282 593278857 960585550 972692189 973067073 651317479 784315950 714121316 782500390 765733971 889286256 174708898 196920797 430195463 919535435 380076907 816457909 915778976 937536110 538889061 996474962 632602322 645356054 338675644 717793389 634104602 694959064 199902856 906407310 775384037 878742350 567347636 979713068 429955801 841485495 40716078 224704345 612683178 864778843 281006767 413899961 730868472 792179787 188448343 969953336 214304501 324769202 554791044 664464379 419169966 913893043 505701083 741389715 970747973 986597257 994265468 998104662 529227525 847546430 930397908 994082673 909426768 971800444 516249096 850669440 619784227 817967483 323050398 519575356 451894711 633658866 428101488 508344374 396744007 979604794 311683724 352108644 238737843 873973202 776564820 890429920 693428331 843370621 292601870 347009972 945693097 959791264 42966113 247753862 61574039 915962333 460381147 564596645 85705698 903613457 637005877 691110543 332031860 943517025 515649100 786605270 328243158 734838447 262193817 432473488 971101107 982547035 368556642 890230094 39627709 957083064 201217033 503813015 969334544 988336274 239827693 878856662 917832653 943579770 568814913 636572508 491050986 491302924 975748905 986114382 233889861 888120185 38643081 211144533 291467971 684670121 644535735 782113417 24273085 939952721 855434798 885834104 711677130 861064775 387471119 804535779 775221504 862935648 884444727 970911336 284581872 386875263 756138210 801007229 771993806 820433651 780831207 970257806 691235108 698108234 911639622 994629596 655453710 833390281 11612478 544908602 985492033 986508587 251829476 905400912 57746026 471887729 500662252 536879311 997898744 998329487 868519951 950578414 901728109 962051344 18795632 33549644 671831543 860004252 822951821 859346071 884893770 991204019 125953073 971953555 799453375 994868724 734063279 799221227 36717158 500655591 900882380 963028280 819948764 851826033 862427885 988269619 481540826 700218561 67622551 420561150 636343074 924226492 253558109 509138757 977158645 981469976 974294767 991705835 269059629 557896684 64635590 117755555 855097081 997256654 443345045 485320447 699654372 974203926 880910039 922481294 254331446 657097308 783887447 980202831 9280138 619664169 316204069 777822255 728654310 752944811 360628583 617818491 111578886 945891028 302046890 620165999 787770367 861627604 847123252 898619726 745706261 859631919 429587675 717834988 942371055 998596247 76612806 248593037 45471504 91802035 607304753 875190331 384088661 924938580 995846317 996185614 134713610 277255067 548091169 643748723 740724677 755890753 611733584 780611847 802565863 916963943 458702568 465188661 844956890 950173739 662985507 710660703 908342681 924768517 172860747 260042825 13383210 518576763 479423221 678828256 683334745 692676385 463808987 718932432 665622869 870247853 874234363 916900913 469352901 770765480 163405412 389991808 6468207 238932478 481952586 985211652 917563623 978700257 557277087 957603474 461145744 943004605 425855758 707562711 918481946 960810949 816543214 866245662 974631426 987226364 148782572 960211998 349018874 569063259 779043110 961760825 38383925 850549010 214940518 861022305 488368352 819921994 222788592 295846697 968890827 997341624 850563066 896823405 365474588 606078226 284211487 996416330 838892993 954588996 396321330 870274820 147927347 710153132 297846963 777940273 405606143 813291341 638614611 724250521 504669917 684462576 905498941 971752096 930744272 975505360 836432704 952745137 524305677 944023712 83645780 790630866 356346161 808897514 227961939 798687649 38334351 748880726 515108603 697249649 263756001 643651824 732111020 976265995 687054125 706808200 263348542 421692530 913625721 972694696 265584061 558895084 440318599 661063850 683238213 943977893 848803877 981711604 644613176 732659023 322748268 721788635 788037810 815078830 821402153 980203828 594798456 611408015 754679596 771331436 622038852 874836127 945418295 951548444 414894407 549507731 617560323 672878378 555536678 806079761 600154224 644013024 754417931 769400022 240869815 985367683 919051691 944975197 236714502 984929697 222803077 656498639 800421185 960471441 649334862 770672180 413581019 623800920 362695428 758198725 357273757 358437543 91012569 92997915 355818081 866152004 89829656 122451437 505158280 928908401 139104271 550374655 475534946 735372313 643313826 957941906 794686145 848828334 740814108 930583070 201569010 489815468 735792460 941989660 31327921 968030421 679005282 870160321 938537844 947944992 356065327 928486367 74618219 158010968 919438778 963962396 882982740 883119606 633043510 749267901 905080174 917886168 980740793 999989513 208355538 849036406 838967961 900469315 807680245 818725269 455869449 839348999 22754855 94362341 152364923 178812047 594759918 729541943 735384745 938424542 116972624 165867910 901948864 991438235 610109164 817113785 205719256 827126602 228348665 735827232 938162841 975133784 400877148 430886726 383483061 921155429 249541911 310208803 170611857 499372861 552110672 749484173 87653869 737910282 451412889 739882903 217567089 839489397 965460867 972935121 960640449 986361972 34692869 166477573 521842152 603415985 129329322 824434190 591515482 665321258 372207681 454571229 269477527 719267099 118643703 727399483 272245729 616768694 340953365 777952541 761662258 767505688 199478370 773476086 666980067 937974507 516273408 534459738 543504574 550399662 463593289 778357228 346001305 623428926 590625200 983393425 421166505 926337462 204558409 852614708 311757335 442388115 337695975 399425773 903564526 929576540 155596998 987309138 956817956 973703708 455178662 971426842 999337903 999609977 247567693 661332206 92431343 610488295 300359580 574855555 601026217 628330991 297292718 975516735 387881422 825625916 273975471 447603151 502418568 963613952 826778770 841150685 810112034 862041996 933613210 958313181 263831020 388068245 975734074 990884022 292683981 515254102 778378400 913878620 27881988 819636187 628382200 896429350 833145407 991893071 838532797 905871891 25243441 637937452 797619924 856526469 75535969 753641095 712508124 961519830 943154147 970412023 658521354 914503426 956418256 975388109 341069816 567390546 674919238 754275046 814075918 922503341 539329596 946656343 677839076 866596345 845124 68784274 120710091 360655527 874106210 946576200 395087962 474440213 299900154 587346536 312838727 580892697 60649395 679606194 508517169 607668249 139380258 179607088 676937431 864754169 574011654 860037662 209868481 318310582 998451792 998505352 876292768 952862819 417819873 882325055 25189657 897618928 96435039 301908600 737183833 987099028 710635173 819024846 542605539 554600829 81611784 90684405 738493345 781842426 306280196 616796697 464048536 663711868 549103775 779910280 847261628 950815162 713731362 805054929 933120941 990410771 716042730 799401269 930224354 962762182 784589055 961609148 694612061 926983153 783194542 898237480 247912879 809274094 762964244 997255991 281925340 635046322 966211867 978822502 56799583 665401439 680875244 723715104 109630104 762040668 541683056 823206510 618134770 879044930 938328306 995784218 114676029 774660885 892862928 940879723 480729878 922845481 776894539 785526827 978321986 988233391 692698510 879923460 853696397 916148013 698448584 936317921 174033224 879455843 79485343 329205031 611850546 744980866 58808597 245700630 888883515 916714938 805537067 981952977 616978641 817926966 797332179 871636770 902115716 981136407 661614586 850237411 398400251 538790294 442099714 643889089 357864437 497842958 912986938 930081842 894448823 947691784 899463737 999251867 660398287 749712172 330120020 798251472 969601086 969802329 347638996 978671381 85223734 626343676 470080603 500230029 636547413 792820559 688079417 688467208 501573062 804048347 662943055 879704741 212679956 639604830 221716849 464080722 940743068 963940156 233393162 758449373 837554089 840701300 503864577 843803230 236228703 337914548 894177653 894899841 190020640 691699204 669984625 817555643 836043019 986407258 290556311 872569973 773485274 920251893 921217348 933619777 623029017 735216677 773252003 930969515 863703388 901826551 392977464 825825027 9402033 504577790 18145805 391952576 107958142 802777231 909225480 959160416 128644563 429180768 629750842 659698331 286104137 738665441 188324424 259178352 662558164 812497632 355940600 460144554 405170065 955805419 859662102 940049295 112218881 513111094 137796080 378616678 886922697 940587424 959152312 962399454 299862292 878934492 374484921 851191496 129494362 307406924 570113934 633809779 832101191 909156820 404957527 565110009 178667180 386321283 609934245 988367137 705892455 893230625 593709239 845359983 257296728 954717675 982680169 989282342 670238532 900836494 509345921 809714386 859038405 995374250 131036091 447284303 415946484 590824219 753349877 963596605 810193817 896073267 145906983 546730501 259916661 874151325 93454568 304856583 739783599 973023632 434201168 797234334 201849498 500410414 836394578 900987620 5552021 789934555 87676425 137862067 252711932 989710726 268528005 905623070 901986267 903704667 630492175 881870756 183526052 903519681 173200875 834111020 343339696 446542914 34373260 800076632 85661838 796599724 478000069 611876468 138806750 570253542 377609259 877823934 810694219 859920811 339680747 799036824 807127860 891535190 225272501 822877904 302243159 948217468 263428352 288536307 510824504 603268617 669384874 824256213 10545381 818630582 662741621 852341413 515129030 571206579 885086840 915109352 310142564 698273002 874283628 937837429 6934128 676063745 970073981 970523965 444950821 960636891 810262505 937921939 974502367 992790014 950989749 978473425 690420180 865355141 448321882 547270305 230604526 491880562 329390189 641446058 247345353 457506242 308688062 373954305 990049742 998911924 816485756 938993074 583122460 887857957 310535785 504920685 906535362 916193744 58818931 412910737 224065556 325324057 429426436 690043427 274564988 998077972 239972602 800901221 767093454 786162619 165658106 277887920 460238682 974907763 618178385 856465042 309442425 399213988 345267246 700406103 418657909 908603000 966216088 975594535 92373209 336242390 307673977 574238608 298077715 800389981 617966937 971352808 218723029 910243684 611780668 989702430 192445053 615532751 303541452 654225143 964519624 970015911 734631185 963641883 288734449 875650686 352993601 718987134 486816779 860698613 552950772 770994397 214960153 424365939 891106054 956881192 832549118 849237471 677192935 890249982 939377338 976417300 857858045 872639168 404257029 690043983 377573233 724654320 929658331 991830544 69688477 804648860 951429200 966159649 309197805 736281706 647209312 983260901 905359446 958513003 135244735 748381079 915583425 960181162 49736202 714328330 569182958 823153277 19668741 45906990 852753559 966176651 327887498 895327008 35475462 363521594 381291589 785565586 141808526 417716737 762229959 818770160 688031645 881581276 847426756 968556475 846158742 862299772 846178780 978431589 762795793 899367644 26367129 975968074 931596309 994612982 227411247 631202011 352568719 960642613 7807923 77538810 920515212 929437840 265640211 620358160 471675312 980581495 61571082 721859353 769663583 870696541 629612025 976803090 464005865 701657374 159407223 647263372 110969941 207246598 438210657 471620763 720179671 735907268 202970707 921881380 661211464 732479519 448242408 877264699 947756028 955788651 751228251 986928497 866467600 930457228 170932453 483965578 465734665 610788746 890900615 925696593 291224140 561031866 669901463 861783236 871158523 955304685 41240697 108648625 649807387 763603189 616835732 821658226 434845059 921747427 399397704 529938873 653842946 996800779 138587957 191925948 120541885 511873661 192150389 750515477 615031535 646499463 61826058 339097399 653342745 747977043 435616936 803046719 290732241 340037921 174984803 431130408 988398593 993361992 194568333 569287029 490416809 823929529 512933940 899086785 313856446 699935386 458115754 799713977 772756400 833656407 940256096 983923489 888164687 980220057 57319030 122100855 493268260 754282187 193913180 597245124 210065899 292796945 516033377 540202142 305423756 501419417 927695107 931436612 498665781 970546372 189444806 656217615 479990016 618889095 661789370 721609278 628149271 858397168 776391045 777726324 135577979 936944767 641438857 886147152 626817399 818001315 359931158 728814883 497934760 680215626 663959166 816965812 938381875 952998534 927955361 971185794 687259369 924241011 824267435 900934365 63274369 517608965 894659909 955392062 611962228 809580246 986228228 987508804 290735378 928504823 175824039 710886032 876883861 942641155 867451987 988881172 301079735 607750444 925778667 957076818 104345087 998810625 871147169 897885195 211100428 917974040 49459156 885375616 291720015 739773950 519259532 708751770 729232089 822456472 602480354 973310253 483312430 965644350 750651986 879339329 800403489 995715893 651209003 855853796 417461881 867447103 393818140 508083428 909432525 927131933 892264973 943059911 626630458 767305806 126308110 639579066 588235520 697790828 560678361 894207869 635524195 656500137 821770585 946490697 545765222 759583059 525688937 996473850 667760923 989215941 963397417 983630598 443224658 862507635 956743837 998796417 530266008 893162689 96358132 816310039 265141548 274877602 645627601 878260335 190761370 255221077 115246668 891865655 428563171 991071768 403031892 656948719 140799904 953494088 186273881 300767411 823475453 993559910 110183636 746766226 299541624 577511190 328653452 706692144 671185053 895584224 201658670 525451402 659873379 809460708 673438775 755605654 643416526 657595935 13234110 188501189 885805776 888378031 396124182 472073666 809328408 939671838 562719243 563507901 753757259 917505043 796469624 850825094 188411191 819030205 258931744 897419732 938021292 956072652 122748357 456434060 327740154 806691611 474353132 675659430 236845146 837051892 770772074 837491419 286496895 691281046 692301129 958433449 215540969 971832292 797490767 951297984 500829632 900142700 858180551 955122197 484972501 733450488 819019394 904213141 724689354 877254905 126433311 636768690 808212036 856075690 361466217 729191290 832032572 881324091 240429404 602338799 368803202 606342530 530977316 648093346 686395854 860917843 551231676 692844860 275094377 464326178 153438391 553907207 631743828 993859548 987087882 999107426 15497199 518833805 523284099 765130547 907833874 999152617 469606682 877407174 698875867 904628111 865401313 931511211 784509080 858175864 517633183 840713430 90844076 529262135 672838183 890618674 713899872 958317338 87651356 412967269 131635825 867935399 933659941 981309466 998582396 998686862 281081032 318991507 736497828 893681651 877658940 896818336 291604794 849245613 605791935 753651715 846889997 994321437 531422638 558849202 593226845 599172776 260948891 880611049 673894770 864764396 980771247 987532558 817059450 922122510 281553241 997374169 207938982 515210550 814390390 930953049 137685243 807884931 645658244 740092955 642407368 950617924 973257952 996208725 227087700 575812447 74691117 968491506 860911363 955479534 11308854 756827861 388638443 792335343 611699010 665382017 523202269 948532883 565728889 947028320 266615106 895358692 230486238 489308228 854522415 915822233 991038135 994378902 287439543 389061842 242063853 338656335 202813383 654761454 586668452 980092371 795727013 982145356 274271496 393025687 811201858 821369430 793394790 996347019 866216005 973031675 104044933 427077200 595521407 656981637 171784527 374279388 583791962 734417295 414719980 699865691 374618571 765970924 980870693 992113618 462507270 467095174 393549859 506891544 79115497 256909803 497424512 632510635 329030610 626275262 121648502 729010175 289684516 332719238 277997749 867018797 593309244 720886632 9824262 215169601 205742251 387552901 165674815 873525292 668754617 852332328 841747265 901649988 799141189 977603842 660071633 971186838 969773641 975465000 161356508 873394430 463767137 631787612 470820381 667498161 762557253 885390413 295693582 890200614 189398430 720206287 374729101 825337709 764368525 836037651 119296488 994758974 238570424 253637740 446246531 515643060 370718752 730441801 267508222 465090385 574024375 763768126 870453002 873965958 663210917 704630392 657011944 686066667 891803507 894103295 213917431 493406847 483841208 523183072 511809733 752917081 165104221 866126434 855112695 993834752 926095260 994349145 933664984 966904705 453017099 988908820 535556606 796471007 813815027 905547434 670810102 675241562 157769506 778624084 578173179 815099428 937357828 942518946 925433319 994765683 347505158 705616904 867467755 872411570 899195612 941005245 882886172 986298303 918905337 927922417 248821954 411074443 351329742 517277668 12853668 622334974 165578150 962906656 708288800 855049855 487489725 622650936 920827044 985550941 395894301 960610755 407169853 983652415 805645662 976926067 640297249 658060114 662867816 867530731 685433386 699820284 670886759 944599020 627262082 944150367 747738707 985504880 683033024 744801846 482077273 514658056 902757448 968360656 866488653 942974849 196026130 937853268 4220769 904564005 664967286 710611839 237201551 903569419 733496292 825766537 891140814 966953757 142564353 820361908 889121406 928826695 122686473 839976564 63096676 271345812 97064888 503883880 248148703 937829750 960148990 970519525 815255137 939915365 402261316 907260387 110697083 158277145 115343667 569385378 195044694 396649805 92609358 850136403 604485198 954166888 538284868 897352300 828149064 928886963 738184647 930775532 271142588 290124213 806872818 855926725 184216417 594676194 851779986 933547043 448649125 686220469 592782353 646343258 494252167 525681163 572466005 717251440 980187099 999744824 431440334 740024044 59901795 568605234 56357816 183094590 905972411 932147071 137865692 749354703 112137109 782972867 862194698 910907942 897620543 914774706 599377993 910235910 824379454 872723960 49441679 466909673 189203105 541659461 308642623 503810665 604149099 702390640 495070371 647585850 435551848 951172928 820383503 937043567 134090161 812969815 487492876 670504015 416711999 719344895 132424094 963638650 148537208 344967135 355765032 599852695 288997747 848983684 367555843 989512973 210781739 443706092 873684606 953911411 47289860 129522094 457369232 494035373 744044442 878052452 376206232 830968969 518698289 978834950 905397118 914681775 932822654 992518288 521763396 661457478 610045549 876642716 24496373 549385242 628159450 918071953 328477425 710992137 332679291 856967337 462503024 750328767 135385828 181380299 958101052 974044824 641254637 815073873 670976908 725993106 39528837 415363665 22710937 295564961 787269452 890906761 56050793 473544269 445050878 497658400 564282073 690424078 8504374 159218115 372881311 715596536 11302904 625879649 220375406 986864412 22846797 64264153 450152391 454693300 544462057 636482956 624914723 836347832 427573138 590381862 393114618 613999189 412975922 818358087 242505632 983995322 790000685 965834420 768538127 905652191 425072460 619683297 558903321 777455088 509174421 583550614 26078651 939949756 184897722 421792167 678306450 977626427 559290455 825789687 610154959 769006931 294730162 505009514 889255318 998478421 612462238 924528688 647221947 794164174 525343540 706697283 784233589 819206732 609798760 907547431 936609483 938440749 717775941 889219227 97166472 807561706 913483594 918072898 223747087 940136090 665444928 744213385 488379837 776008201 711816257 758979024 849406171 870658967 546292684 854437585 400471346 997558014 545783805 723491996 473336219 653140513 997832293 998065108 856227027 978886234 830651342 944635656 841812437 965477201 51989430 398090528 753192591 848028574 325089427 601501845 114699161 313662187 854352370 955757956 490376263 919043781 977033762 990711214 390746094 936720122 335913732 561988711 445646775 571679621 418994136 423411202 142000495 343970400 93200528 456805242 319995268 759946800 580547732 954014009 187526772 779281091 158059347 832338303 441122470 528566591 317325176 868188721 768521215 888124518 342239695 976883853 13351477 193222701 105525535 448408691 25871232 223402411 618892242 995261919 211685844 548209484 989429466 999209130 983667349 985676231 114123462 399165735 283178747 392830866 797286229 890314924 285592518 426839356 847885599 978958276 40099842 237634478 732234459 900641534 159682048 710504480 967073299 978162710 993917799 995658589 724510974 816926389 460657340 520113778 820104654 847815486 775369580 848562738 785299981 802040973 461557565 913897598 794760043 962197207 681327588 691062381 583814287 776134161 581453343 782124982 398151231 695780840 292083088 617647195 596763254 764468274 608245918 781701391 498332335 649045581 199466910 574575634 398738206 926694058 210848447 707242715 448829383 533862031 453003994 597429067 899702426 906569492 592622465 786154364 533535494 748966418 944178395 962375818 532635733 807258719 236596293 840822625 952950144 989737466 196829870 851588733 834343547 964242874 833335732 920346212 60698766 667711366 867746826 941276968 275120886 506378876 111438755 795766676 263726858 314471340 78272095 629289502 56977803 896966236 504944707 511641794 484482229 662872270 587482483 673909906 181021468 502781296 554395930 745334506 913568520 932525626 585422160 671500065 496046468 911054963 153878353 920593636 2884804 957243103 449547302 600706987 286429406 992174474 957150910 990539313 249985438 895135131 459204436 832191146 324120912 780443702 920423238 985258568 358707420 930259162 780377736 978697164 412927429 627479381 188721390 443674815 174460679 852488664 809806049 902106932 638083857 726950973 152019663 754010657 693087696 802565215 552557014 884981259 615802320 827580600 98867947 323938149 513646034 662410329 255167734 448576633 386541734 618545784 616271691 640510142 888731630 991197604 889805660 938937053 604912453 817578501 170786902 771226704 401306804 489552725 514733685 533897820 706015852 802586349 260076224 428841177 661924696 705341431 652855692 871575886 834182863 876076811 561613442 607898308 339302769 877889039 97841128 550075028 844540853 935108578 454505280 993080045 657711878 875505116 489008943 500416084 666180723 966056067 641038617 869617096 734268640 970810919 654763251 744005060 972352443 982446826 40372707 363275218 70010310 918447711 875361152 908261467 860220529 938690781 578037129 954825690 611717887 884565012 924989928 964631038 421406690 740937600 37869236 348738589 819162251 876899353 172697553 869039761 745541315 747612246 425628104 948518621 687387418 763975752 300486772 938678268 918381471 928660478 751403936 951212837 170320321 661793034 114834141 869380729 366764502 497994001 388814825 508046684 191196485 745909872 990298969 993490007 739023130 988219107 582889800 705735381 914458678 963388498 650134718 835835436 109647617 684952815 815370306 884642859 452715802 773527451 72627350 691559162 51292409 246197156 941744543 975904228 399496993 959455992 965377012 967824212 669551655 806591709 344221633 696262384 296713484 901208310 931020390 972362842 443696292 950899552 801882049 963641269 669949849 703525701 466102120 822320892 760188855 798575270 499363551 590717124 875411235 898286848 979209782 991097387 903932880 973987034 127057341 635475846 147993392 538844582 432195729 614468885 769201144 812591961 853102364 939573613 499103215 870625837 659412487 889353087 41048372 534088902 327886975 462330869 514792994 964552526 723742903 907296315 54332795 893329493 685864339 942266789 355833135 653408908 106183632 887883640 896863700 909061633 623604478 702187424 532975331 862396946 176914856 736380317 406132542 636192008 848296884 957834078 543299756 638316312 928459247 959350117 273814033 482136913 311573194 647260010 900807450 984798936 991516380 999158115 448444161 943097250 912560758 948643270 579099160 787936156 578233422 609340511 412423247 421823746 428922139 821009524 256632328 583572470 705677150 813069927 265253515 603781159 548635908 977607074 4163499 408943786 666782358 853151056 270070762 410611031 498059369 824128557 113302936 467743897 214171283 749834703 432608945 569058463 978319404 995413513 375263139 886643915 236806699 407549164 780793685 810439059 770128191 878279922 521997691 950781981 422471096 712669299 607972624 867777350 58172384 96641979 147134074 275142742 156440240 259847821 626597448 846927305 940389452 958229272 860809675 868363024 234118607 880821485 546683056 761372815 297726369 866911768 927685642 954911442 120361214 813582971 876778601 889389216 334868212 731114324 599516873 931554527 756687124 956453877 106799407 130018736 265333000 306248722 760132951 818749198 310929320 797215689 939521494 969416561 531716577 724442725 101671867 642182883 912071159 920931355 876443179 914401352 841732811 950837798 370115902 734385116 195286933 863161694 810262481 847146290 375210247 422721570 51552341 559390324 695259486 756153076 441214847 860842498 163278937 392985778 512197826 854602404 927587825 950203751 246730983 945876469 683800600 721209901 364192389 926901187 180918757 985226561 418421838 738368719 808479103 847771091 593336419 806270319 174408161 975583501 835709490 910042037 58692783 191889601 804863651 891856223 984947953 988280415 379935472 805311604 187041365 878168729 234006255 237540585 357733324 503876270 312847767 374061538 487739267 926124774 251055882 602072057 488176330 513807484 942033204 986183549 79487472 606308209 913410096 994488115 613481695 779956257 386023340 914256880 987410335 988479223 339866493 348239084 961980300 973039282 204022272 929721874 648854470 864748540 837184018 991154460 734575672 962327092 71492312 541281741 191864825 869978420 508758872 509063677 3592223 905828313 165912754 690473505 855683339 946750077 916628631 954526119 462760844 685516759 17481568 470263348 111950095 294280066 985263282 988573918 827526652 991104817 401357214 786092094 323582053 631275001 790559301 924094501 583154210 921462050 22630717 596673844 236056612 878674885 269386936 830701781 167804344 758487128 841812947 972114127 971911465 983787273 982224416 983723790 544658553 646122514 918867108 936000570 591243857 914404770 741885382 901291556 838268301 856139794 758366873 859968793 383157635 955659711 170185194 496032804 445066015 883375864 47899617 851831981 600683181 738686284 542449942 920342937 938661527 942842844 664551107 971633882 214865675 542380540 27237822 471873159 304925033 656888902 417874910 735284166 267853515 332058875 768298207 905901939 318437654 969752237 776228883 981853419 845411998 926203320 367268550 431747464 458604405 712414182 925474123 950602408 958890947 961846898 706093093 786666234 589962227 908651519 150346912 735736844 739442069 828267694 922445175 988875580 413295332 899883664 55655854 914772363 368364983 629384013 598996779 600481606 893043209 989314561 944457865 978975522 313733020 775122638 663972538 989273276 432234251 741175440 340785248 739205266 710988936 988152021 211230288 803422409 417123990 492841553 328973090 830211414 357200645 744593557 566959045 816022296 257116018 481715518 218600889 827544500 216076094 545600510 557295331 950205797 300921096 418451375 914371715 970484107 42269967 323206912 147939004 389737756 404135867 466810536 869971427 945005924 120833615 589592212 994276482 997485145 893933671 917461820 246495816 939068472 168755734 183443378 814546864 820040785 469282807 817040421 174994286 807346709 532941200 856092819 707089654 725444849 891235463 909150472 31587772 266292953 638622086 768144746 698312401 965107216 786218279 941932324 476004334 989539878 250447758 656298210 532479821 867907833 851573090 920373387 612480478 779395550 825190757 994331043 336563666 642243528 659810185 884431409 523773914 852845086 513575612 876453202 459484016 952764755 803821502 985359137 202803106 493883120 69069434 388275983 250885661 897285014 662910566 889869701 426832845 619455710 441685098 891518062 100807206 367294871 596817774 685545086 394262946 909418995 454642104 715686783 318468861 633230005 508113061 968734355 906185826 939049491 191231766 916869323 916279342 958183938 637150172 638968678 332700570 880023147 212072317 950359537 859948666 884760811 258136299 601990501 690859296 755795440 706548122 892966741 484553827 600830554 630599166 724166280 145621840 659994977 361574950 769297201 629098744 889875725 111636561 766501853 376391464 728161737 353455611 820646158 881272191 913185351 641515463 690817309 418279921 847233236 523819026 526059970 745969167 894278327 526768283 931365907 124337542 179467125 722343132 995530871 453752508 734151967 195205509 507744428 996451231 998564852 993369737 994833551 971331591 976600039 124957254 511629230 66605085 577963294 26521235 433729048 335293252 350191680 581812881 709655435 993716089 997636280 655149532 913415287 341780693 435604229 419356973 659597162 401802571 515351375 33786381 376810956 744409048 931776848 981506399 991740288 11686295 79369754 893268372 923439337 318475563 637517911 734418029 752914775 925690960 947519350 358124975 886270366 419941875 910304283 958874908 962903532 104549019 848712870 713302860 831247036 248409558 646478150 334410935 432289463 961699103 991531632 829490033 995020504 2537415 815142621 812793267 970329537 319799546 667698963 98424905 633270483 524276901 625945879 370900272 539862561 707211398 709107941 780916644 978465195 951239782 960824687 818508806 943286402 482450474 549332258 598825562 950872565 882038229 930807254 348445878 687946743 164503160 801731310 663424651 946864773 477684908 796592294 162732039 808041704 882456053 961075891 134392102 528047012 331519462 354249185 487048243 588563950 881339818 948326140 203577645 956696523 260269012 374652254 366521383 928441854 624553710 698369339 552765860 830817248 619202608 843841037 246311034 312901075 914057995 990917308 368867742 914127754 804746729 955535256 332007643 579772250 114524837 726440678 905673851 912239734 267153929 953363898 132337967 142983856 891523316 957228938 324803178 445681104 243945277 366395900 178463353 772485914 204427383 772554264 560619450 881160286 769151193 990557983 949226359 990225866 477276457 661959100 54605885 216307411 854574906 882305449 493281162 983664526 834984160 943888073 278313383 294652628 799778121 935382424 377210304 791085561 222118600 649605806 614931185 763987349 870357309 894234768 751623314 932648630 64268938 196884072 646677587 901726728 221815772 511747318 122384321 588641918 506777405 572438004 439364603 676591750 54225682 250312317 431364189 698462613 937940657 995898661 867553038 904416010 135015411 973467435 36817470 924776126 525979951 530351886 890441255 938506274 361452416 924646617 871978324 936433541 327894836 438401388 638784918 893363869 477138974 556796175 364173734 431064232 767761942 837695224 133277585 980823496 620777854 767012696 838260432 906559384 100388246 128073844 249524623 687268315 620543091 853486092 469284030 732575242 593455662 638932152 929574859 990256292 106534193 837335342 903549731 945552856 771718093 791960064 527691000 842055120 814858148 839421616 437351939 732553795 434833692 564311436 565288649 788303403 53083953 141710445 870700506 946589879 692747710 887559196 303833352 762223073 772691302 838633207 50490226 831199807 341206864 673215786 275333042 644972971 883513473 980119821 144244391 671740028 199732840 244016933 570473390 727739820 577053326 755004037 510049063 583590956 696492920 802125721 531341362 914733958 907125193 989044385 157905725 709345950 560832685 963289998 71510541 930262613 37298312 715091546 230010869 464707542 933946851 944325644 322123981 748983577 19122253 154844780 676438958 990993133 69585383 311718583 564337611 935130438 865669647 974465070 73890261 341908337 607506548 957177870 17465933 256365426 543601173 997010146 591417377 854561025 98969814 658424702 775915376 859454168 20404787 580967787 608011569 962661152 303316611 797142325 65776325 864480566 889751737 911441916 818483896 937356152 586382665 870336647 81598424 717265489 35234638 565624869 717782781 910564478 732203348 894271449 142545205 187602950 597336708 621659102 27484876 191755752 581834368 617194484 103455836 192750335 8140389 44688392 858428138 955312983 782304500 924538620 916808873 996512272 335055830 949381041 941137667 942004023 695393037 835781568 734156269 778824162 703814612 873806610 478654717 796496433 879335578 980377799 261217451 546286763 405905976 684078457 293628624 539220128 124911328 888801522 126551577 631553402 174205583 900394398 624276324 658484578 494973003 899434547 36982303 791054358 329528753 565066338 435561909 766306316 360057845 510387069 466495679 665365879 977348342 992249454 661288979 746140277 282318980 996775669 449592266 778440277 853051045 855046916 790673817 885292197 115515681 475388462 573576521 819776509 286566343 570962486 163613849 175306306 311626831 541988533 681299376 691729235 583809363 947756289 905797700 981533408 231470064 705269239 930755911 996409162 600589239 776429689 482359781 870133459 69447834 237623714 217522530 754788906 752466368 859020142 395033183 961762706 365304945 710223573 74079930 112566548 156196305 414562789 127124300 991711104 10707400 734639269 776064099 930959595 822052717 855788732 653202718 824264933 615820565 659935395 704643064 860602029 127477214 934593156 661499779 784936027 702899147 957688423 699632470 990757508 945213982 982458534 93562407 906442244 479332808 841757154 268484922 538936382 607872106 987147168 43037032 759763101 42253175 280540344 875517793 970776005 510145101 659479990 66101715 462265112 598149687 805353740 475795020 537833574 617194668 708516744 318769313 873009767 138663779 560848818 342559508 530071198 45473165 634717338 575795721 985874049 864000818 896920776 999611243 999884364 967674024 987534558 20707752 746388932 644865481 845748356 246637946 536303091 70078947 447580638 649104942 781185876 312129239 556654817 231516274 249773993 481996270 498284757 357159188 749817094 364062691 470446027 199386330 401738701 740195963 930387152 911195533 985645729 768530176 865988963 824747085 946052697 869328071 976058866 177274512 414354019 262625660 598859588 901446757 960329670 38317970 986959491 980018178 995105847 214793402 509768531 13343815 403567130 893646152 922923899 232195360 265815365 792220423 953196928 749285412 917031051 406570165 738034529 675088315 767942810 366504598 671706252 273471957 770391933 451469594 593431152 380820434 518605101 291709143 703320771 89665257 634287990 329503194 867463755 547075090 950954371 353006982 479379757 780316751 931474663 423496793 571580228 787270097 918070411 205579717 716583269 180785347 846767887 315864746 633366596 739643996 908310974 484934564 677472928 178127455 784712250 266770389 813531239 359083922 544902841 199991138 282319677 7525296 574038498 756003462 901713763 751702987 812821080 555177649 719725090 318752815 487961346 897386471 949143908 303687546 913306577 559996958 965918781 21882053 764979922 404112512 656223202 910057345 930093822 362583459 432674759 196927730 508318087 931711588 958819031 308411827 385457222 146978737 898104192 686030837 690750940 281301867 309838674 399581949 734886911 881839701 946471400 557114264 906374472 742752718 865971874 18563360 575399329 136243348 659892374 411430650 864717451 571679479 882345615 224587335 361055886 427290156 472772805 109766455 132673261 277615567 910391534 678150348 788454784 562377115 706355616 358127597 492967469 166265150 904663799 508718589 763578076 389384739 568462041 989815972 999617068 647308292 890824237 595767776 743143382 263464934 497914588 790464944 999841096 611511420 821979089 898451852 957272565 112575354 866035040 804878594 941902716 533026381 788574783 981748452 999507434 302144921 553269179 72253869 280073935 333604994 756578836 837652074 865105977 120187133 129456018 229628196 908890338 703511264 921820385 696785360 940507805 778873171 811111983 120769726 433401550 117548686 598495455 199950279 425768554 939123918 968959610 155955495 159589643 558682347 868434268 786829754 875059716 120479223 642415907 146747413 312167071 37903157 289822462 27603793 627380580 224265086 375949431 49134092 125567273 958610722 997750265 830948302 953873702 583959137 752659535 535388586 626829386 815734859 939731634 252478889 610504368 126557277 592442063 715278612 949651596 477363928 909601614 616341339 893328746 695298307 870910971 752885889 864396631 135402915 772061855 990812157 993677577 598778469 710561633 954809896 968086494 100235522 668343915 18344975 270275892 869790261 921740939 526303398 629211989 415091428 588807554 174869981 831017228 367165994 616982250 502940987 834705377 75981370 852783200 321223961 600986521 84976538 912310060 432662857 915379970 507846376 696798240 725321485 777322767 296358276 829677035 251325197 906394234 322629215 921361384 844840068 919563204 915178814 981194423 857811994 898695592 212428264 669308918 788640875 845409155 900861232 917200077 293045855 495936543 58255415 447934230 990766159 993546487 832203976 988415133 497345082 772271402 33613581 532392316 945486529 965566295 604964288 798389595 674379281 702572833 426937235 961991259 878453061 911770064 897109754 913774988 111814451 123906918 420268595 749537782 490591396 540730717 288111612 294706162 149772546 201715102 208057370 794044368 610694825 808219400 17680051 412171126 566022417 600183544 979862749 983360080 606829222 796799734 273596462 944477262 169604108 287799931 778249702 983385771 358308385 448746690 862760382 940005884 984865071 990889194 281888213 645872205 481061965 593008526 457099078 960371337 46374956 976136797 137067968 234450645 860844217 943248260 123706260 592534839 734464511 848526549 696062038 986598070 996552100 997737081 561565360 632729030 354939587 913296425 784344590 927534945 894783327 999607639 305745635 848356399 927529418 976066952 190786848 941752046 454589677 638296809 682157461 722426095 631385827 806498065 129251540 209389429 440903080 485369021 694372493 695957956 977902813 995503485 717362307 844513212 890112987 975958978 290650197 759146427 27343418 522724949 41546394 984898877 464802816 482452930 594150670 694826032 139406581 713238120 330411772 631835768 622001384 646088528 531828368 892599254 453157167 697269075 780079928 876181806 36780337 565179399 512568471 780483979 807427335 844976727 250239937 473291900 695535846 930352673 114904809 620537061 665229239 719556357 138424325 883203209 565880305 778705526 225961725 547223457 35866024 62627989 437599091 783977766 442042762 850084534 612903934 770858107 454040017 599833713 376451233 619195758 945387842 979871196 94549480 533294244 549664247 791203393 391106752 775990370 713321284 821172280 512198729 886813070 433973535 663429704 973500277 975311839 514926784 799867055 438088193 472792326 715892443 755661715 235589795 238577053 943539128 989807789 922980234 941201582 521650673 976593357 624275378 849750938 804870685 882935966 144132251 633110697 839682157 939086703 59217592 254708739 641008337 711061779 408426057 468336247 660712215 845642711 939134817 951604567 850657125 964957768 454348718 465394905 800201798 803260082 923844611 952254647 352698027 430797932 448435634 686882503 796690725 995518883 275326385 817785285 563938584 936831087 947782987 949777576 588126751 857008343 103397455 515788334 633827545 783758132 917258001 932017088 365887918 382021582 428865637 599845518 417155096 647409561 506418636 697977715 288957124 904843860 883703730 977804653 682450931 718251995 312071109 925340849 192293652 341443393 993454499 996721068 574968500 615921904 281370353 373981489 569114327 688043362 546377752 973026822 384676795 515019845 453264299 907612896 978381728 989358769 47596921 176910338 647954819 768923666 374470342 740595890 357362162 901024729 543182068 818414622 412704999 668612435 542004753 649479289 436172291 746510380 693286518 776601149 415388476 836472584 629534014 690434832 976059725 980967810 500778598 958938939 497951939 741513883 674597964 893783873 171136991 976039962 717681952 866415030 490874125 895418379 638104809 783571384 671450642 849727102 400838240 597626301 832472805 895398282 700858489 787860751 952549805 983264024 703387961 998621880 108702715 967192900 388974150 419463912 310172597 864082372 221170088 848340301 45467440 528023791 213719032 796778846 107275165 263037612 2996721 544254629 127481343 452127304 895675531 899155294 7686993 509829282 207217750 245011661 184572716 235296809 957197308 993493339 550278387 932091578 74326364 596038380 627265548 836954592 269482370 357885109 648068600 935597491 836159850 965977819 281651812 975599589 549671925 586171177 626147958 694625329 656255532 978317493 814173762 978000245 790625372 800317127 494832055 762955546 357731393 393296502 738107664 946377759 871242571 878295714 886911197 895971621 715359782 988149771 806685123 825500350 104059344 660325797 84794897 334541430 467393705 916136641 272672743 871620589 172856228 481304390 98689330 759361870 185680470 769926277 947680360 958550432 968551985 987905667 687593966 809175904 892225208 937102553 634924139 645633428 962019654 984463835 402498103 907422947 262692185 408438429 573342808 660077764 172777956 509713581 102626484 480362867 110873557 598944908 405594909 980797482 782513503 940573127 150590703 853954532 393562534 756868063 655745285 846043551 711889342 875089012 946411195 967679939 532594816 823466492 421105975 741420749 290179938 427480940 909016566 978274064 870037383 872327266 450382391 766885997 323230392 880098970 405388066 900594046 128915854 877062023 650139196 935658770 159870448 832162086 678874169 988098716 151515402 941902450 351226155 967700423 142958166 229185076 811743596 812740714 116526540 623147072 709548773 969793023 882563914 908733211 484844523 807304746 375613416 742126132 331288396 938116938 810244343 925093450 159422805 574626532 36549928 82739928 118203353 676636211 599419257 958319468 624644736 869659830 504932515 581852157 672602724 852665138 913379565 990596139 306142667 929338280 216170942 277380768 965744137 996868793 777370775 928482723 956495853 988973450 410551014 813644636 514448673 811949250 778745637 817101074 444593003 541832052 665711221 985506771 35379148 249424120 353536192 805325406 407330460 901199809 317827317 505917950 811288320 843401228 317936947 966125566 142063015 410249437 755809479 761399494 26343775 286198607 628824986 885465557 886679816 901339657 604602798 646939950 945498823 946062336 913860688 938134268 550095893 973188657 77249813 531807634 721208317 758150862 605748355 912491463 467966831 899205664 287907694 642267822 900050506 933051613 633588103 861390445 686236406 769416810 291968189 300134184 128651590 170163832 936655274 999594818 440413006 624902523 473816893 859636453 306638781 424787089 383975118 827149584 428227036 525230497 971218885 971883185 324033411 844087063 69692143 653757524 923090461 991233698 948269728 959922350 252299373 469789481 460691324 598992309 819022277 909483570 545889305 999466313 160396762 833792085 407456022 464293186 198239441 964876402 373416664 502119504 302957194 683755918 851486080 909230831 331042394 459045563 839928648 979970445 515321327 936987133 594360171 649229675 30024548 487869623 781165153 864621486 947511204 964911078 489813444 859046195 523531893 787157730 750267266 832427998 184380262 802377088 138978412 809477867 102635433 616172815 666648633 918577187 317819778 509163453 334781074 469239409 991163756 995118185 981845578 999199077 118936339 500902524 375262128 961505319 134667013 405563106 361659890 598543629 659169268 826564199 192240168 633630238 275980439 794846586 508242263 770203056 180084197 997242877 155451616 360451093 1876947 760582651 748250545 783403863 321470020 991738582 109758053 447174035 267635782 855331835 410117299 440102250 681225604 723347932 408635354 652428367 12369671 822058421 244080043 602642614 452110827 582709870 425015080 913730059 540890111 575690170 52639774 802610856 589522717 743859964 75389776 205843063 113918455 709968924 544978153 950775779 768188092 951748760 944768191 988992894 625519425 649153899 350547773 792191067 843529431 992495994 22283699 809858394 362287341 925381104 199569248 421144929 133804676 728289686 42370343 657306044 988454447 988985382 818033537 825821340 958211947 969183937 721106292 842242729 378786660 401091659 78433673 564112849 256696516 553143047 967094877 986906724 203342586 742487012 415941658 608297018 901503205 967211582 611239172 852468553 230666067 898058011 843750310 943990077 893884624 984078051 927641498 957702870 77505378 330134408 879687481 890623086 921010356 924014418 114864296 141487884 260597403 436860764 283429467 536197618 945885246 989516530 389353229 638306213 963290457 991600756 561763451 641607406 99118814 242407844 266739412 651022163 906381411 966301904 928159558 935826955 363552958 826764606 742034311 904957594 993229125 995125797 103011693 492866641 159105704 381221894 548744093 574042743 64838366 768452419 121124766 959625695 580543456 975675840 265370765 604037648 464034926 769719836 51570713 400155422 492865064 840360199 861354701 910064420 828082698 989572703 692819440 910478099 789967610 877310455 544489289 700780713 127284165 358678032 301537147 841444931 408839781 439242566 891852956 961296441 835616048 892421576 155226406 353020007 523694666 761247091 226168899 851841369 438514400 988524226 92000599 394805924 901932975 987941795 359204729 614642082 752132726 852645982 137546916 153260068 471752711 905005520 267273114 668918311 322673056 452222118 203737274 358918133 95891459 513293618 408071868 755029692 69789961 481905447 493828007 744534874 935919878 960793228 66417027 757210468 979193219 995524722 456512423 974193425 169714130 445372413 365192972 869930989 562313460 595690112 180057637 921098148 792511591 808505945 248261584 396263296 893314288 909813667 456868701 787502290 41358584 51925327 466472071 990896442 195403679 413559981 755207493 942544449 59651142 565198736 709765884 948065492 704272308 899303363 678178645 972255888 451462235 775823714 14438050 975669455 285047065 745417170 423726484 608144270 185898961 467358737 31174848 771600841 381883405 941276473 867369886 869734377 485464049 609292259 105738888 161797659 270793879 487132355 998432125 999038543 351727847 520699804 837700295 878946152 116510250 759014893 913147427 948099004 600629125 729002508 770177713 870258316 909841475 953089987 409793313 938271972 54555842 617601081 391705512 993508772 438915191 938539261 565150349 911900895 181448694 919335016 573740480 899577772 122697808 238575854 191413875 642561386 845100885 904944119 940640767 956557340 791336703 860813001 687691039 919149942 590522350 843604084 272816190 687111799 166849790 643321924 6878786 8724688 353031221 509696966 568525485 872147592 474111693 848701149 800967887 912117117 790865057 901025133 363456940 403761745 8419459 24215190 659957416 883007978 649733454 769173444 667084252 827694526 940830674 950778076 64178164 951851217 492977380 552814616 151009821 722539327 377886452 785896513 644524045 691931660 553930546 768763444 741267073 936012240 380480779 713794549 506321346 831621346 941085057 984963959 677025618 906515650 423269580 818895897 616962741 925360839 760779644 877810570 416609308 602382897 343628749 421478038 547818788 786675838 867951129 911339873 712803182 885706909 576831199 792139313 336348700 852670485 381760090 836578177 680895048 889043033 175007735 552561933 93377821 644598649 58021236 722358365 757269105 872853463 442804766 852271778 376774836 668348843 199276461 739806602 476473293 539238892 474995390 824752808 876073880 931151563 587219374 697482361 58787788 315065979 284277951 291827571 471040945 871968961 596014526 621047142 694330721 939499146 112876041 687133072 740512698 957467796 891820220 935072445 2998215 581762787 442752360 455374260 341244453 803764636 117263188 142257677 515612423 925038191 184896686 235390677 921500945 941106851 681548200 765171144 986369508 997605516 356523274 406516917 957602296 972772973 226221668 273133831 609032018 929104483 660493511 785225110 469245195 545988441 8228599 510846926 835114544 929882594 220834363 549147637 843810121 848759583 306971663 708818275 650815618 917205402 527120463 550566556 754535550 941800299 588874273 723987078 666729126 911594091 156118937 841593916 8362146 759724305 185932051 555003997 306053262 799543807 921238117 996914204 430135859 941491106 96025125 526108784 454388565 927428201 79786226 259988812 324231583 435802187 220051968 830281334 65950265 778764265 993254334 999460853 68050164 747309175 544294080 819837248 120897964 541461641 496683679 855155536 327056362 882127026 42131939 983778335 262827031 598950764 821694227 987104308 124893507 155780351 266892157 370850975 308050349 927336099 511555235 861279550 607758792 760674807 991239574 994466732 411769153 807389142 667867735 992884654 75299887 889235863 632319348 926631580 951161895 963578348 39382442 747355846 366528918 632345350 362589767 881595858 96912570 560657985 221464134 733668701 939523420 993447538 741158055 971884337 413109283 462140191 258552774 772798199 234552392 376323962 122154968 333720977 403436078 799043624 776144374 888342384 542227413 874293314 403975520 454625091 228645560 866050204 567774212 776189482 998475968 998752005 238805364 873393099 879165683 932712063 327422293 909218858 130082008 301846816 147870820 785901326 560245335 836986818 272590367 753415134 528570444 980360960 976000733 991010015 446953427 530535249 452421670 847457507 292753127 744555111 769116164 842230322 968179296 973286965 376267932 712321143 291312626 677587475 836616867 871221094 678841808 760046736 587063848 671591983 227277764 493163770 812233821 909852316 602381691 840018514 950623723 998703210 495264959 780822011 67169432 579257158 955738697 978930555 977305395 986301460 843897576 923956441 168520491 317701303 899351484 923951054 996462268 996994222 217396507 995427246 365161345 377375036 560168731 900725355 322130418 455260706 941485428 955300300 716147047 999462832 391879120 591258365 326545624 850141089 484871669 745164236 686313505 749337686 445014334 699115713 598455683 871172391 557285811 705993663 128979425 261319913 786348114 851433396 732601186 847302944 588300833 863610821 254063026 784252973 71553208 864582041 746180134 997099323 216975465 801687323 578705505 751507697 413513148 477863901 142601564 604234433 298441997 574855745 491926060 525641165 287202132 599177858 990077677 992867212 680938294 835363372 329916271 736149991 329146376 618915059 145213406 402310443 931909306 940283097 158869161 160540601 212158613 456399854 592431186 927105987 297232002 298225101 852623865 933129943 840656776 931056219 276141219 667758675 462214321 689281061 310516602 779776383 953372053 971218815 608881910 837586405 434538137 840408474 391555045 655359043 84299146 795845629 20100220 495687189 1836475 219552616 966152928 974108157 715779153 964236793 575865201 965036777 936571875 942735818 858187552 892503377 446788117 862432536 207306357 457512625 973641001 979434385 855866572 893892569 590224352 898660839 913764065 919687369 880634286 907004672 746850172 960780839 113449260 738726011 340769000 727448939 709045309 821613103 301554703 349824249 52788787 888054549 462369509 584227809 837565690 990254765 796606199 817099836 68092310 817340015 280602421 767105832 140693561 861162062 269601701 905239609 84221837 258537325 340996990 818352405 283183949 627312528 336170835 680070522 12800828 415309064 708259565 985628146 733345290 790653344 691195261 952190736 424520068 977578986 360194631 390988504 259616961 329068565 399107053 592193267 856225441 891691457 527327473 864994302 133513642 579402788 573992177 834953441 814981062 997236441 660034786 991585875 64316452 193074703 564189959 942616874 377310029 576899284 193222469 906969910 177963946 355407695 966118965 983254356 42758782 887860824 338502788 764315596 209691511 863794569 195704728 995630372 119461724 679942597 710393803 871138885 311288927 323879424 594872246 695104469 872209357 992257938 843522202 928357359 503695394 823470894 876845556 919125231 903662376 984362323 141811419 908861502 546719626 615398289 34227635 477022007 457921708 992424504 875507239 962876341 246182834 955751858 128839357 510348950 525593275 656917243 299334889 387772072 85714688 277294478 940833007 949916280 987618813 998490776 54410378 659399830 473003297 503034352 878521007 950373395 919073124 969185053 657608056 767360736 983017695 995351057 780378900 867831822 198767151 561561824 342107165 934529521 370320825 986946233 662558469 689034887 199008920 887308738 171721274 231844589 293623632 997762893 686714171 856148752 867255029 949306488 940565422 970289770 760481058 877346946 518725600 983273292 671018729 673055529 935844111 994161515 254158724 746867704 830150821 904745890 804425729 996631175 717175980 886207055 661306259 721938202 181757716 502767455 22177331 830320911 309369929 639543957 403669602 582529186 785819445 850416231 786730097 820753600 426669202 931902511 856359612 989584762 490658759 539409516 444538791 446660284 464705425 684012528 363166102 965516841 597924298 794831071 274579807 913064615 557252234 795862021 315925792 937683396 169274278 930349442 639819287 975114478 325151701 483282809 696704437 754523409 3098661 341686677 406027912 452855725 675933690 749594642 864882707 911566403 668429972 688254524 942573727 955387768 572712983 615041254 146042445 220774326 44815607 252224701 962219651 973986321 709930224 769577084 613316223 836247013 541981980 567808744 463830928 753994964 128996179 181495332 687647437 785423828 546759397 587872809 779170716 989512153 109046424 354709820 283637852 529719710 262735982 658971057 4464388 167081216 489668789 720456091 96306908 455156936 176052185 439201637 245095866 764793127 838125895 882519795 748451592 837072908 872230712 986917669 871368163 962254422 734840969 829308655 532128931 788276912 368693027 443342298 228705581 765422741 888272119 931234050 966791681 995801143 382652169 914745051 418887882 484984352 260224475 603335946 779967045 871913227 141630387 737267848 752832251 890196149 491027795 786966935 892533250 897460634 122344797 657013907 679781780 776893783 844086298 873227313 222697894 398034793 178517444 685021060 342864511 793986065 380292722 947774654 655090460 722523533 235149336 979524664 865511001 930511544 734060855 787895671 390167932 567368649 576327036 770750135 418431468 678415989 440879103 859788276 861456997 931260240 310688186 319831125 772996349 880663054 63848275 662128284 740863030 864991462 201619268 599317086 919283845 953940009 888853800 961208173 241977994 244909430 638232648 848270887 531963616 871100377 380221845 756097827 468420548 528969605 988302515 997228524 618634156 643635465 936524019 991775775 548280625 955854743 167308050 822572869 307085306 788130033 174758680 422713661 864833087 959974430 199535130 832682132 79758675 933513425 31411123 966585656 924144989 993535764 882601084 997873291 729056213 837090249 9399372 565138999 552050694 612261980 109906628 699135769 212202725 686723854 333199467 398896910 998402267 998426809 824775103 904585747 781900192 820034640 57851879 337091571 987372027 992688693 344176061 695420876 822936947 867709698 989740671 993061991 420172242 697565746 498743709 688948103 343924261 578987721 63450123 346974980 671084300 748141134 311292098 625743091 404360515 944117504 208474522 904967371 946898037 958331342 709656518 811627228 87344185 903796505 646772469 930249530 895259559 945941387 469596152 814395321 229560671 295288808 136605313 684193789 899057278 900148709 781964507 889693442 849352473 871675693 744663118 933484743 253743380 968347376 66452580 846339455 390890584 591470949 421242531 823672458 354164036 492868411 815934966 922304312 137541577 979051662 431740232 819789859 839294863 902433517 828218857 930736603 101394417 769648935 646296708 683168084 571851351 704502723 488514123 771707525 410769353 659395585 126490844 674511717 742830836 958088176 776251709 816365853 442371379 927300611 175543245 280729330 657523344 945937640 292812592 670264081 941138407 971345019 325302107 893672895 251137504 373309456 223393142 820642661 99822670 806097429 989391534 993789102 726928414 968110135 823232509 999649012 848131911 890457195 54658023 290947085 578096884 733126789 748495205 992858387 397414420 482992561 511982856 540481121 773214910 930936292 780016590 822762998 223477032 797970097 146082595 236231153 756592636 996626739 132096551 336069752 140286101 642783959 244000895 847345171 430325745 565833151 289685699 522394884 557323988 683048771 288946718 348865749 660591524 823057632 34755504 494082788 832993926 981317317 66094078 998480397 521991889 709825997 8821740 397601875 83350049 835807421 157852986 683470390 941670732 974568521 735979087 905502545 943404474 948322373 748931789 855927379 206658800 340713066 301559202 451518993 196855651 583067858 8793999 359388438 605958908 935989767 804522942 980551642 26438122 595031525 584633841 769776659 506830222 749103443 423806185 887687876 543145209 622605046 993724685 994878692 631179684 848481651 848139921 967469882 896464685 915275166 86224637 280141208 330993925 999367858 183178055 983869602 761605368 826998186 484587889 496617654 257506847 406330309 701806341 738042698 469927465 995304696 748565097 873833818 307753275 921316977 270483970 801162093 479591887 794952582 980974953 987954674 497292687 726754698 902572854 909909929 875945215 959805287 868272997 869342617 97167795 188133491 537765541 611309288 577849729 732432457 538604499 858280592 10952638 292868795 443492139 571229883 865663157 899686399 12306599 794338347 61543287 668315575 943337408 960986417 485881645 730105648 620272942 657674096 483331235 512521712 655615977 755946154 265693818 284243338 722397911 958198396 663667391 971239430 307717686 788912417 426334075 522437604 588879717 607450936 375305088 596521135 106439756 433027770 804914780 822013222 137638424 352833188 102036708 750303369 282527549 406152041 572206972 880390484 389782439 536534058 393386758 669785629 258575687 735732403 113817834 180702928 742368386 984258793 981156730 983971525 61064242 76887988 225694064 691953598 88318824 467405429 161937423 727398945 429798692 920398506 552341803 900039497 646193192 688962038 615149293 987805086 948666458 970672974 800793138 936333569 686032183 826827275 237982980 374057534 901619184 956456771 296018399 749736693 772825448 896499958 256357482 595761533 297433948 370250717 682889651 812474800 18291578 853013631 146614883 422303645 955701214 959619008 298622709 929863958 797281585 885664055 850635661 911278057 275801586 447323795 511353585 830568672 909493211 918340407 239186836 433569033 389601056 601060673 224538456 909804388 838470403 930585621 518745716 912199801 675152654 855234789 373920024 501243498 173216069 359734445 709504408 978897074 510567629 759507317 299707555 381956501 271021557 700160065 372632439 857949638 598416067 640247773 742846864 746153395 62423841 601167830 17431557 906409021 363413255 903118096 216575922 393344928 25475899 342984866 109900959 401353875 391733958 973830152 276240992 843373831 352305319 670781149 201345624 205998597 470298257 632241025 994006617 998258823 941608203 962398538 144020146 524706562 91515616 795699128 221840157 366095332 387681022 897232069 425488005 587226353 974796330 992993239 597301237 722264236 228226157 634970488 468445739 853490627 204429320 572379017 646687763 857918181 793207445 800908612 860398643 957226852 919200291 935403444 613818751 817314810 719145637 748917723 667860230 705534860 792348445 879357352 18821969 46907748 256089944 738839529 294877153 501110133 604443666 986828114 259237455 527571512 762089334 786394913 927143383 929947615 38616134 696847660 631037574 656649937 481437197 737388543 850024356 929318694 248324305 561172306 57919347 990067072 509228549 555401059 163460330 782737746 471097818 986972059 241019679 868638199 861910513 996329617 468883037 914476456 782070824 934075938 640336896 734211671 405065827 902936153 628620808 787226633 348280951 472670105 183187153 238860370 794451005 828770403 672995091 763545080 898544397 991575152 534263058 911992032 239200720 242327856 265075861 879808233 977230564 980423686 484906412 931060106 304381046 410061845 142148875 467475335 346381167 437256330 235630672 913907261 986261323 988201682 506592598 794726044 893835207 911378573 646882666 848709240 515952429 758511842 609756939 761060468 395283721 840664637 645923805 789198194 449714800 521903007 261708561 446917471 978734097 984275054 482459548 906625945 732213985 954729888 269217449 279562152 137191906 224706626 212531905 533135520 409610594 441094706 930508500 956386105 712980692 782234536 781619962 959762618 168764790 254443557 687501711 740463764 969700191 974609711 14429009 646094800 340508828 869689925 543340385 688221276 671862450 825304906 942689928 970707291 101164364 210528485 701090227 915479007 943937897 998247598 201013075 261554487 129772723 265611345 243746881 601351114 5589997 903793116 478674374 698580722 123732575 228132582 71232521 914728985 968793680 985891293 404397016 411126646 932563630 959322265 640404443 824897207 301830226 928420878 235749095 863041135 771984391 778156898 827005790 981625709 562312057 899905007 659964343 997342146 736355555 877098562 360689116 408943269 914165352 944135471 345494679 871869057 629494212 768195678 94134976 748493649 125166313 804990386 839114545 932853688 63985992 548735506 637190910 989773435 519892702 673699981 538919773 777171317 543849515 677009207 633931226 999351956 829825034 838513172 997665112 998524217 87812928 299201456 391918555 700874330 26407043 99866543 509675361 606190717 81075223 603571520 76176764 952707077 430517822 938087059 640455227 706004914 999167353 999795416 806304506 891693019 124521731 938029760 873640663 901683571 95808655 229047014 180534140 657358638 784068902 867720210 243499131 847747972 533825034 834826991 67585241 943185562 730260668 847300621 154937733 303909049 668834314 760959173 520945599 851675935 125859079 703666804 193195871 371602289 546111771 809690053 278362344 627353322 302622151 399328364 77007760 165070892 767681095 898230565 610578679 891202481 767282342 958233368 861790864 867059490 984358074 990392165 349056880 432886561 104030024 749269888 406572924 557529250 713496095 721702344 981450247 998613539 101789344 543446031 361802771 374154111 394662026 864455859 201598402 630925819 693014903 722572145 66766765 581765777 655270121 967256988 753743251 929775772 457116376 602240851 199425594 326238327 845747502 956164059 857258636 958095478 429807987 758256791 355460561 500158605 334871568 497528846 675444879 735155543 451161711 469493620 505096572 659348485 739946303 792505145 133118269 171515117 523570791 538402178 356573079 842376005 71371282 261343554 635980120 910971192 841167602 929716520 585910070 694085921 920658242 936611706 877292193 980615685 306783066 714434567 969184763 995705902 552882315 895589153 202778288 809103511 399735696 723521412 189641889 690613701 796187143 938676425 368117763 400147403 621081191 699532026 804544148 828174767 612639657 635465098 897841951 986878702 372262947 494631673 108261564 761478471 713165396 915926016 796197535 923791999 762916842 887571662 866462898 900919688 242118200 322474673 910727357 971003867 602608901 824905710 229268528 833551777 714711453 927209118 212401084 940257420 944737571 969483263 789150061 816833531 801612560 952100030 378565362 710034713 808301143 927268062 844769237 943371970 917960232 972677428 931940373 934283043 297112067 772387412 93325563 940201637 620585970 693992580 573420314 930954066 449532639 497610292 866426107 881525397 404968569 978846638 705537875 997464854 960619743 964596997 243488508 370527285 625567910 902218306 810847997 901899491 818626875 978198105 800361411 878219906 526302915 768137348 30523930 361906453 752283383 923403357 441141342 918484820 306688175 491458012 577301408 633451948 218227260 910700943 236822896 973487113 527799361 633416632 196652066 396742403 746737414 910083054 600025552 921286501 361539547 522973095 553694120 723182066 685767784 947709771 206862296 657260324 506990263 693950439 697855488 829168371 131883531 521612318 547143258 761321882 81346800 367579699 159919842 582420373 555151445 948047257 203617469 246548611 426835757 991953502 468739545 761556370 798112594 858212048 414538101 556260446 439604262 477790038 663938812 825951194 410585412 862500608 87220483 851352474 733446666 932630992 888520196 909188289 566808879 662230575 413910581 739774307 291757196 770132676 178736886 596377305 111756508 725530445 535074667 724234314 380418797 810301761 370254310 805587028 112909396 278494970 89550351 978850614 974702941 996780650 535051776 756729540 389318738 575178566 62077901 580146467 359520127 901209738 352830136 564474406 285225439 961324512 434292518 914245673 27862484 557882305 639442206 796065287 196843268 241762618 733418813 853147892 896659522 938713938 293277758 513115664 84020793 318824678 375396222 432719789 494853137 653507457 591888044 769931713 141937436 864649503 29074249 58812851 412990848 704688967 269970359 909332477 308192565 535621069 426424132 971004626 256016354 613280325 111788196 712779979 922623993 971593229 858427422 994518357 550848920 651908770 178756898 548002287 365811659 849772213 712104063 845417567 303374180 965896972 405935998 879464620 106655533 219290387 617981614 903314449 679743947 831865734 38752928 720530356 688563471 825467666 285074277 302913554 63372545 347173414 79618876 761163966 548438314 975422826 876235158 904968936 874064569 978839947 854949840 950419989 503774412 908123649 207068569 688312992 688579926 896129632 387063496 824439427 18864702 239731688 243402486 346294319 346843453 791091695 55806680 139174328 338710009 699484753 594811410 718720237 696205357 953903198 909195414 954604316 765965831 966107723 339640731 498653917 84693273 969071855 331056859 524005443 203270430 994409748 974733749 975698668 108740513 768230345 652212513 800772759 901569064 981134081 410422666 511936639 519748030 853636235 396024290 569419751 459281814 943944113 140186528 648927205 876330615 901033803 636673939 911798863 124344085 998386462 21645849 448685154 143343102 748776155 281700302 377648265 166057768 452364918 862657769 939651389 100705807 884654289 359588869 722879422 900624527 948867855 301257892 891404853 760500251 963079044 318282995 506156634 707310383 804123057 282835557 732709630 904303845 982277252 994198391 997887451 377093353 808588229 172991545 623384334 381478702 433005937 680394152 718265931 636328293 986392307 779160390 919964159 814422919 938459927 85242272 946199239 299853060 641286218 225307340 699433367 645610063 780209589 815772528 937692659 258816183 353722424 206299604 551679022 513086329 712854958 755661901 905408734 957419592 994356962 934748306 981179870 988471498 988617050 837831353 866922167 289401100 961936203 127972520 633185484 333708811 767390177 608457209 777004037 897019097 927218714 753118801 876475097 638816269 963785325 943326278 972912723 522073149 747953253 980900866 994482669 839638532 940862167 85143556 574056797 266346300 979790908 603908835 936231792 656078370 700411468 856211675 925048133 94115827 317024368 67447155 805218225 146772729 993356749 547987541 984060173 613463920 641383346 280328224 828293484 227054181 309815269 992480939 998765146 672213040 779226789 541311505 761709220 127226037 249048500 735000434 740166552 881165664 986887972 322581887 872014045 830987457 906309615 148226659 493313250 496952306 791051238 397960853 434528601 326972171 919138082 673199398 809748904 4987014 512443209 31096406 635179646 271098462 935647797 847631344 886831327 325409999 845777355 172864792 321155092 399761240 489012547 776505585 883738847 15533029 497226066 990365092 993011030 749267597 877809987 43455925 890275022 668410458 686299197 491574840 834169539 32139476 887314109 857312491 915127920 953133895 982385005 842218442 959628663 759172848 774163952 316775089 329308440 858418210 963269842 829029089 909053886 103897784 406710561 855059489 884167885 283309297 790483946 418037041 626750927 972606635 999472815 502322071 851929447 392203026 647534891 562855353 837503380 817289551 899020082 39384128 816554413 418230450 700067163 826613215 863252777 621351453 995887059 647163706 721912905 190458785 440894137 521082454 844469539 897952952 973438005 551455792 983585920 539191690 844977305 454810303 751860052 985984739 986192386 602219772 714836989 669851287 784656434 556703053 705372364 343241760 438536056 639726580 772894876 242469825 531508260 49111848 112809637 283775717 728519707 199590681 283009535 656016616 767513214 195443613 866218750 562577677 795032523 109956995 198801499 44656592 71628714 376344792 598400515 191514750 553921699 635388671 784560511 872280501 969264468 182518698 640105703 207902324 235123948 801461433 959094839 189899305 827016880 349243806 504324542 862976134 924428532 185932302 627748541 113813826 710404154 630785861 919861293 926678962 951043089 669563320 785039127 419716701 482941826 641705030 754267877 448496773 938495259 884340153 903147509 861726835 911845678 582024052 758163278 586114915 799508324 785931323 902024711 855997663 879212505 273559310 771197466 452405892 998591920 589572962 656473309 593493453 725318336 662686745 814469659 886389315 899729536 956984242 977298649 803875850 893160355 779496518 938001498 524350677 917034556 872104886 920144157 715251364 827178447 992735136 993750902 423416041 599704689 560464862 782515369 964459728 967485587 523900801 989583466 35543865 783605751 794727215 907550607 406888184 943189910 482584171 952633179 815776965 971908103 783987406 883767243 683586382 869084572 404732145 778945396 911383161 925419973 380378843 555055738 346563903 896159748 787450228 995304525 50161445 92213073 384022592 940662946 76052138 79440367 945721360 980724245 278474353 781420843 632772980 969368231 39899937 707544898 932836106 955382431 250412537 479571203 959908182 993141099 878513344 996605622 142982645 336194897 445489466 912963283 887917088 912135883 92461011 707462538 317266342 761304168 132725307 846789588 108200840 707887366 734636580 951425300 281336298 943835376 253624541 741430958 856663575 922175140 844234528 863718951 235960034 848817271 747888021 891268456 740777481 768274626 968931906 999656938 938083629 952921123 238814260 979353337 16563364 110644478 614281258 978548976 510668280 690102291 592263369 889970314 637926068 922565651 208291191 901292792 313904309 396585618 345623691 495950573 923227347 995791961 17966508 910748504 199406216 539811413 931288276 982050654 902891273 911833565 228485712 961895317 925088486 978900508 650650435 982328874 525383199 713619498 591858417 834153880 638361516 828103430 444233826 867344085 90567461 177834315 835559116 846649990 693786839 864435772 830971655 846335230 483319891 571970403 298952796 552664983 449652619 680860830 967974860 984132181 788461494 974223969 618319034 778355107 574460564 643219614 538295413 906589890 31671170 144946636 410242767 946939297 861507975 975559750 582062219 758540727 937824923 941305189 11362247 861887373 102283327 527298149 233562664 624912452 509893372 531638539 975119181 980506324 203051287 592047641 243910090 283612888 250007217 610249289 406427529 960067932 868271260 994010354 690332028 995027378 159893658 909856907 8835747 243558270 964720938 994221754 763604581 898235760 913396868 926015553 128839740 552750269 612275462 642256294 550859159 723561621 209844319 693366769 213496817 986633957 900587562 928516681 32639948 534775671 654161226 802022923 663229952 842814977 177195393 480664847 977579516 998982925 909455206 983023414 387149471 913946355 396186384 421657178 406151003 738562554 608437481 728914828 343369113 803059970 173244118 254148950 317876318 389090899 883381758 929694580 704969078 887189618 750284987 788893804 217329675 381046786 464231823 862576363 427490624 469921483 283653561 822534619 547701636 738398663 96749374 383779769 771471746 798934779 141930786 179979320 105139175 381300961 651467452 974875148 919706571 991751565 596847880 975339678 60150034 807592651 661613053 756865813 143269182 996057584 702467395 907195661 19546748 239950351 866872605 964884410 149785737 593774955 862044506 915446671 651759396 655642576 89952048 372840364 162014872 914995956 482763357 672312995 163650903 830880775 802135071 956553572 982063098 988814382 148418855 468509864 138622443 291631240 236692171 858077654 498946677 779038665 220283935 421757588 138391430 424740979 6911303 449028744 964231837 975718231 581968311 863589384 628203545 886422954 432942076 482743004 237689502 335916005 325427799 540103750 578643822 633003526 973118378 976837233 831127580 955210971 472581538 601406134 62526994 170506131 80955155 306209923 111184176 760874804 393569929 693224577 15807440 88067458 722736930 951905809 97856079 664699261 802319653 849752975 804388156 955496905 973018153 977291345 667692573 686773481 285502092 694400386 721710887 945901431 749259024 885703343 882419920 967618201 903953785 924411958 508128706 567272449 182745532 453591843 662470353 895889532 826898809 978022117 315180271 870099358 865547182 946932519 78345477 967072792 695511766 796411009 105489679 197276726 67082384 894463177 950294252 973855119 372880923 834871418 924411489 934551838 445843089 972028582 423017245 744886805 371363247 707641969 6444007 467007616 937787333 967413827 518736014 619890503 475620250 832191383 836024305 879884275 876172857 960935739 386342844 845809759 870139737 878000106 114026320 876223922 920810569 961810488 449675407 489568627 721376326 768365913 236245965 476561551 148612773 466673932 537556665 949202835 937022369 967416687 15303796 336499273 60529929 807088890 565588050 899135248 708032548 926938101 624469377 849313581 405534717 589710705 724794399 967479069 825304445 905530018 35543485 275020175 551782304 831830164 872864615 910630360 343195310 434830213 16657887 89511252 790557925 816182443 91897185 871231060 680321399 895725707 4753034 157669562 163852228 300094465 184601432 219528166 7441584 844165602 116689613 645481517 70408340 122013135 588930862 725980406 540391938 696591697 799665517 979612931 115566982 801357649 162680698 915254856 315610736 625869337 787131166 892019899 945032613 970028267 375753695 606459036 715421607 948699727 378128623 689791334 489214275 649902753 367648194 493123004 202453126 695632193 421595776 696882350 668518550 888504087 157970888 372669882 24407210 640138848 252246882 255923729 421768759 430181392 391878794 863246115 430076286 817541866 181908259 417958745 49276641 168623973 816230734 995433447 848545949 869826866 594516606 897219356 211569065 942798912 867664701 900548093 130320068 339015037 966884754 984101204 753171893 773842033 932303991 998066646 203008701 667194271 759469105 763177690 994034902 997514762 765734353 954088225 133938372 544821189 631264617 818978134 718378272 957191491 194037066 220149496 644307381 826543746 28516356 945053044 536533374 586788267 996202419 998755634 639654912 668366242 992880537 999018388 469122329 914051974 863618853 883274029 291870231 336241484 4849144 288247160 184988470 902423561 983877079 999759631 418677564 614792004 842028261 918748113 270108650 961732397 602873253 805641040 626161049 944733899 311182228 874710948 501075761 589971825 904919766 987096852 529745320 540412277 816688928 978422006 896522919 991122613 207163630 517857600 260795348 453100607 959181969 960327278 447613482 521496895 112074948 765760564 504701689 750166003 423926924 930611580 284333554 731840442 470270803 637146997 650638813 824346707 658701517 837483769 180173274 409950174 15107208 96900480 265168850 456625518 343850224 590423712 111433078 782822322 873882855 990670449 661338479 813245795 473274157 504980620 696850091 747123087 424064423 565476884 651748111 913027499 767578918 857964668 234739911 340900271 881710994 949776155 242464673 485762199 909179316 967494934 105126113 515235243 170716390 520309893 850254268 969523189 622192009 799038085 260647959 811254897 615050223 688802351 704980581 917172613 713427336 962509430 435031628 770474051 408331064 526899386 812467965 858618614 317623686 736201216 131284674 752050807 243534244 755057199 463176149 533676409 799899991 901391351 214986807 444816772 854996805 864408458 142761158 349858655 639277819 653236986 677151786 952112121 130459201 654215911 878091509 980048755 562532275 989563432 451538485 911489190 532106212 983923064 925175472 941171018 160872435 847684998 976927994 980157564 11798434 814501415 705032407 879229456 159779811 681462384 178947486 830674605 168140588 496818450 518898639 859994899 875249807 965552395 988214608 988751838 814138011 872404396 495823643 725307691 202720696 447577531 210793283 564677151 894081928 934696491 615083328 940268718 737800855 834000295 283730927 980626783 249880076 627921089 268788652 714788367 570216662 971488103 353267001 867647263 553572528 873477728 700450303 954097408 154724919 598913585 416476781 762251722 20361099 451778938 152659631 904135773 970488809 979873052 348196457 892251970 707916183 807604906 51242857 921514266 653054908 892653049 124609213 229884810 174225707 595542476 89093055 782508575 579811975 775842935 952333985 968337966 773256561 987327754 408017943 488498259 829114832 884518580 677801051 976748042 414062888 576546386 515474989 833510846 844357060 863940313 795504174 951025301 989113250 995379884 126006397 366833773 112742831 913352926 501658380 669606590 27956281 912933163 993158223 996223747 423564263 913512321 167282659 503635590 194583161 200461528 887012835 951034258 719375555 739535825 694319394 783465405 771235971 900457769 998794414 999142618 856174594 860677256 711103953 734906595 156749945 531923951 6691297 58443471 10514890 801805813 587580033 994223043 29525655 497378778 215860108 699664920 795340841 823458862 290818548 653189615 512869488 761711093 723414527 804545336 454429026 734751812 395149852 615548187 492088948 652012182 295709779 974533128 735685808 880502761 697269960 711201893 625077310 732155585 3832678 547388256 886087994 986411064 744374287 993943389 892818927 953274812 748369238 897792179 659919513 906180540 282608985 812166127 975252467 999479781 597178367 765705970 476603853 935216669 659541328 766002585 961136147 982567869 838874588 885966294 215635427 691263549 923733192 983246851 561739063 852222994 536595388 790532522 612601204 835582154 858992692 997939213 997832574 998921552 348143681 722837566 630994550 753190625 167227592 664558417 950893332 952709089 36974765 157865694 573098249 945945401 299401449 990851678 353462684 781378771 892387871 995805541 72806200 988818758 563377096 990435635 664988303 721391779 328729864 871630276 452255315 714285970 815438090 941751339 46702117 82987770 298080821 941768859 166958681 224809435 498426859 804000083 764752228 810167342 975638335 983632617 849275244 930998421 179740339 665424144 94703168 150507116 310520920 345730714 387339514 699334411 130853309 718786481 38627930 437164194 377300881 850572344 992063505 996483898 686725409 983464965 396883550 485437112 107610905 258843794 258315889 883632952 173515575 211262083 662334402 764219912 281620806 594859866 753975218 786488329 819212661 985070377 491123319 653145640 202488170 984212821 840940418 896386128 536202183 966142001 880937698 940695050 429543559 992989370 92036647 760464389 856499904 942238456 492085592 555156218 145714665 152897014 941390687 978627330 779939795 911653279 699889191 826969601 548134203 887386635 729261863 751200527 625884145 709158489 66069038 71700196 35429072 637018754 561873379 712236490 528965629 892972462 561864401 761718574 618618125 963578721 921765348 972929261 73338404 872286260 692139870 855756715 876856472 877959420 706864828 802435213 733991254 916652717 136315958 734888699 40402628 203100220 663163403 736367138 240849429 304309032 493181619 904647770 861899309 965117391 160659441 851319389 22345737 775991171 933184818 937837240 906605142 935120436 342405058 367961416 868050777 916930617 706889815 798199229 309260385 670374271 96803104 164961926 445223007 563914636 294864481 985143368 325305538 942279314 993623823 994378314 433232985 619673796 154272830 766465639 59896355 794578517 126721657 237903807 507082266 848623125 924177114 981204122 123109266 862563108 606707221 838020005 109644072 401822895 199577787 550592351 108389643 136575351 212031879 602821839 378345809 951859814 71921111 990415981 507690890 756502243 367332694 533628929 793296154 807541962 944910150 966348329 422790885 863109219 229610288 309351354 13508952 153168940 298913620 769182354 569533906 851865306 707555343 823048287 350370512 751146608 804507794 855023774 697449010 946082814 838620595 967546704 527241239 823426558 90760769 523025828 178015631 496747942 68983970 803637220 80884986 149675668 829450166 955161981 397223998 763423910 526898310 968871568 323571057 957261437 467377114 789732633 709003364 999666719 738260582 961128001 219736976 936656172 672346429 846970027 486862540 591174245 105532239 123669230 810609289 894973480 943598220 995030377 44926668 764183460 605612851 875368469 278639447 282641678 117668001 474976840 435508714 768212606 456353938 570552771 931454385 943435160 617439987 757119834 577543037 846354709 220382208 467822360 56300052 527076734 697500194 859623747 832836615 854824360 930475165 991487192 200261768 354430369 486964921 824503085 965409342 980994961 160622713 439037367 969813499 973561691 581686864 986014456 896175584 918873108 590227931 838728332 506152629 672290760 155060411 207523766 245103318 635219892 226151136 663859318 24301391 800251153 212993761 271759147 227278078 415290779 905178578 913154693 374871784 824128318 956818266 983304149 591752264 921232633 16433128 195534920 157844298 212287448 575893463 734791054 477312304 605741767 790746423 810000238 585159276 948989741 579243649 654179134 746940197 912602742 309110342 684326834 1938453 166709700 36520078 330778994 146079200 407845369 134315568 619010457 980540047 998253170 319140365 579894693 280648257 535210617 776934670 937739567 138905015 363388754 867971432 941294326 652545987 830429680 504971787 884128721 276602846 803983080 78360564 244810760 426298359 909750130 628401506 922619316 640101005 707597714 452165143 529874955 772733105 924686076 659822314 760586189 33604725 552132869 448994568 529994502 522014931 973211086 300352721 346208041 274258965 661269532 93710644 149573086 499951543 671135618 986926204 994238360 641309000 753195854 272085832 914818349 551290290 878027609 865574538 916512079 153243345 440734544 218674275 906223021 127759827 558678136 308703511 562772376 54138157 188054999 305701742 486927728 337262409 838117804 184672048 910066002 319551121 783926069 817128848 970492125 236203072 784466043 435928348 983145677 709180739 748574180 82155423 323892303 735945012 743797677 453611249 505057203 661010035 937171748 801117578 829354949 211554534 570915371 327149662 570476157 863685659 947364673 291152305 391706246 275812796 858715288 321815589 495304817 269476347 621189147 783701704 969625543 492007091 636724822 246672744 863208785 736802967 803714404 296333117 843026707 327616947 386255931 564277371 861779537 151031639 510421125 515544921 671849792 709961107 863924032 684286498 981273280 414010997 771634869 830168435 849809314 530095744 740374687 586092269 775001647 22021573 897594529 220943426 494467797 342230131 650687995 837655208 847681933 384582910 531504462 350416706 495921687 322004770 891124470 549223805 827985561 398799054 937850141 995134778 998222971 46500916 77105921 4337135 76625994 378580995 746735003 835587474 842645196 511161808 845917515 132257107 864354988 602895589 999512030 648959127 919521061 85735709 568848015 776885893 778168208 338452280 976614804 724016400 935531163 272120569 465823224 616591915 651875639 328393811 914340617 723574283 945821131 306958940 388875414 498779297 888510107 797943890 839503310 300986451 481354345 971896578 999200314 738367565 739494877 771360808 887309759 367677051 730718059 720337327 895683354 818856947 819417160 550484667 833211882 710380976 749379238 341659042 872497325 372376515 418237997 498784272 759379317 918688569 957826236 434395001 804590944 83763128 978215866 683975307 816376779 698166327 868920981 951824649 982357971 709141609 767580557 235974083 499291070 521552873 867124550 315408655 748604814 498098234 766619579 62796816 431643968 629463644 780991503 660248261 797806461 899072780 910047380 560530322 973840353 853760193 877378128 265675849 308194960 229174397 293915878 193442617 997396861 645518278 699589061 840235711 982225871 625285693 881475938 664080505 935000625 409566676 856064425 380743523 897775943 516582420 806462884 818372333 888268212 79007283 326772562 204250543 300000161 223768233 424801352 313396031 990979022 439062814 726905507 813941892 979755830 606470624 834947895 823347407 929757930 601301862 919333300 523432495 850834538 21387684 372395815 747110978 903657761 448689811 857961503 139376398 253066928 377341245 953681369 779656744 937708394 439147925 446376965 522409358 831285438 292355864 468429723 994845488 996330949 770983878 995677304 747317664 764795588 529336086 679732112 942994921 974042367 591621202 932915478 274938612 724654311 482877604 866330519 316872014 460157331 981755745 997488231 638221936 709677041 19098005 444649068 575217752 597202476 279616262 814296402 531163283 858504757 11751048 760848494 419666901 874639176 870844278 882762225 96960912 124772189 18710251 131639046 996162541 996566744 804874853 948517737 604142845 763173915 931244732 939955547 22077295 599694519 319978275 460525864 604517461 739169641 289758528 578335539 194214516 903125048 362213872 758075834 41448860 691658351 934175143 937206019 55692320 544151129 60172243 732070326 978237200 985141179 519593651 731113934 462892842 666859944 593014251 909558267 333510089 560775780 931324796 988903925 860738416 988153388 305079518 367347493 173171343 306798681 560341395 890675941 80886263 112831147 344946624 811985274 329257089 504270125 232286448 966887362 410293958 853493326 544078520 958832976 659710457 783144857 960285048 961560557 124958140 899456011 373951590 382539319 175822829 181926891 443629792 837144226 213122486 654475776 360105259 469195734 584461525 807258687 953123071 997420895 803547555 906249686 111316643 944993600 429258075 678924968 142595609 828272648 981767543 996868478 352657278 444726730 980072662 997976440 481315861 771241676 545093108 697618497 725028149 797190213 20532478 168510217 890112060 931130931 606029633 753786844 985845375 996312013 895576783 934558198 963035767 966041882 895379222 976215660 414326711 764900804 614606112 659192842 686220357 788462427 340715405 581427904 946336687 965728130 657648693 878328480 347058055 664503509 399061955 688344806 797317849 915555629 280866357 288563066 865926154 912761900 585685593 640749780 606752228 859970452 354239614 460487996 507052788 689132812 931052882 941825248 655216399 676301165 560476479 665329622 723536743 803869129 121025686 597148669 778109323 786399645 308909152 375400276 69365829 579217623 247257687 589808210 175679929 748710230 791955800 932623236 859356289 986311635 855324931 916498376 978407664 994672958 397923670 980328657 939891701 956212248 154945369 392083837 319787748 725325404 177279574 641368062 104666327 803300606 359888931 905797365 880541459 896751917 926924104 936585484 876022556 955696225 950485108 957695806 670422562 836714512 337705191 842989044 832439891 949997738 544445043 805431902 127780750 637024698 914306998 957191039 817020884 992509451 162030198 452345399 590107548 711470957 875465261 997107325 699313940 890502639 610134269 977184190 982383247 999690992 69820721 677884178 651466568 781190118 537996689 752434268 546287865 733426734 439291907 665549691 664190126 889396869 540119339 932907822 877315969 895056650 110848650 271268667 823587579 887243085 292632046 828131701 596833065 684331668 341009916 950004544 867269808 972925643 150688007 813001185 410752919 779584226 632148190 806970970 677701812 903426328 153752982 192904869 282319733 839159903 256267374 835518993 267814929 619518578 753580765 860562759 403820346 580791717 696486945 803228971 536658911 877068613 928733723 981079987 925573282 949388200 294256128 804564729 826049696 921318106 30745017 299816473 222745886 417008681 678391144 827058554 278581265 758397570 355611233 543542904 652919975 769110542 736692186 960535542 167057477 472910040 865442344 917842798 573397074 751929249 506007468 714256029 315629587 519536069 312305756 467283664 869226674 979647049 906726399 938293265 631425453 710017423 258376208 966023571 348041890 978732388 639299627 937773469 63805552 757913981 311273040 531902401 840590337 958450476 321790610 834694282 179711323 203640747 416359563 636888948 968053070 999748574 33602635 569871532 442986020 605797494 925267135 937742696 112703933 858400416 697375353 870437791 981861421 997299722 345609287 617150399 604435202 649574066 757784396 946423388 995663467 996803358 531047481 574914324 273002060 533310717 79172998 773243614 66266148 880119002 389198375 714876775 569876914 636781383 876584900 979858273 264872381 843938122 592214305 699627714 714264476 941834544 443394162 728181923 509400569 764204592 814157084 990096375 422778707 481436280 867383372 871738919 14924678 706041514 891707146 998835125 368504032 462076538 347034393 993151318 269874771 669424530 720315763 850676291 9994170 471533048 708598793 825309363 69672285 255511668 703252315 855228353 346453552 434908166 562524834 890425686 121167771 496961940 745768452 969491789 852638818 970233715 534023344 846429941 747421862 979420611 840087391 929700660 657251971 847520353 404995381 679669035 918139069 943159337 4047388 483168521 345561597 849854775 527838544 875824386 981474565 994790524 329484926 893554858 504729047 920137662 85016748 949602143 458664459 909342963 810623916 999037547 927102742 979918392 486020995 530253827 535405976 973836665 862288055 964110909 814765674 889780487 296088061 517103384 618627604 829340591 23293811 846555459 920255630 940852495 922520504 962209990 597744351 889502480 386552589 668917259 214762747 906156142 900200456 983770206 954352496 976481732 839999439 961488472 148311847 513876151 69251289 847465809 698031013 719012790 578090031 918363425 911950311 957715866 734555533 949723422 406373473 416442719 67338811 662356120 198754209 261553370 566245 627346889 312055200 370848904 806214140 911058380 790023580 842538016 442817981 666200934 304151710 382911102 152851036 512648335 917980395 940650440 243790717 455745360 126884649 904763692 544735016 790949377 496707617 981260697 646608004 817842479 398860259 802778345 548392395 779782837 692785364 905839772 963001807 980425090 235444343 459658321 997230480 998781644 44534946 691291321 132787380 139613731 839526691 979920599 640982620 860561165 658903483 781305859 445283077 630310047 804308641 807698729 967788489 971577133 961902278 977148583 785534393 884720588 328082692 584424680 639713207 860709122 645473827 787510184 672971802 983073760 943243868 994092989 130435791 581220449 165467902 664934746 193663309 648844604 986873824 990295728 918220066 973118070 432481588 453403208 615715857 662343987 717507973 817913934 158476219 875822489 164193976 676319871 607814042 968208254 173838913 562652838 25072884 45404602 350961320 352528963 728930848 882300345 435074077 787909136 70356551 665200491 940110235 941437729 977168397 990677954 440382009 957353824 780449170 960685829 140857872 462240808 373369330 629176274 228525863 577174203 940921471 996346485 629456263 977786841 608747828 907017788 629702931 737193760 755716076 971725941 676412135 678929668 776025303 818452924 223128365 485200602 468583311 931246891 438672989 629420490 840803961 972619700 475053792 777175084 790840783 844445645 529967150 615098571 96990908 552018128 951652619 991717297 353060767 723972924 891357967 949764005 40184621 566939121 14221795 967674755 393528989 907517720 227590621 229277571 171086237 698336920 857489680 861209497 785728878 817645807 881020706 911172336 972215073 975557481 126988856 489198550 458105475 860942908 167282208 412066437 772945817 815057290 509229135 904012998 494781688 552974821 746288733 783267173 799526798 941278815 87651675 370612243 152796052 513906877 295451021 309118448 378618292 623020931 686138138 806548147 50642216 111928828 335626219 811765242 473253415 761019892 640055184 647645528 709067409 755333809 841356570 906019359 520479082 558597053 339856684 817675742 810672944 849327816 624626168 690163425 611346338 738148663 71514171 324636675 887798404 991018632 855061859 927287393 120211046 531727131 123833919 870606344 960891475 974712268 461978217 485952436 523880252 774557188 824534419 856265273 430902521 737986209 212896306 466649430 413444076 830943726 373849858 537781891 927772245 954374670 472783669 857961962 811035570 920445892 566352947 985163211 987981905 988626825 592592257 793780515 390166610 735832486 906293308 945665812 211657630 704766986 392113158 421964812 183259625 510058729 494569402 722120777 354687549 904675771 352155659 763775992 338919781 502610311 764812101 818005874 561370005 935405929 802828657 832693660 61689597 569800152 27296215 576009730 42647060 880257998 238889023 500684854 589202319 602233106 395136518 822924926 176658500 442875253 262533418 883125971 827128984 925166223 547456382 784504840 679388217 777972781 738497586 843806690 1143942 726388695 611729658 832348441 188420198 967450156 167140912 636147388 471247178 980293333 998063607 999975315 128120160 644163848 65770200 72879000 383302447 721380399 537736078 905003245 32519129 677825652 296377807 344305000 156361369 584350129 749133824 916247292 134513368 885983954 422828007 731945688 675814442 841578651 560134056 960859040 578469539 678266471 799085883 990415215 657189182 748893044 693175887 964411801 484345001 690441249 55715785 354742577 18906276 975553753 752732431 784947877 700625834 840164715 412768387 806998579 435527983 951199666 881373613 959468880 591691421 762878511 395499318 575124007 783573355 818202570 398848318 501296520 803085746 964599310 412394125 804726274 638224568 806607030 240495513 571506313 500434722 597797507 422013189 618305375 905630723 981050479 906670029 978098712 911434460 963668586 915637388 961851924 218107296 711570544 405550053 961078508 832356590 963064983 936234284 952406104 582817578 602936468 788899672 825437094 779504844 797577685 778269809 822357402 91023641 537781515 157830377 538072942 510638692 558869853 334517772 660333166 511871690 828697699 360532015 596585681 971165821 995019791 939096028 943706349 453693976 916053161 255951984 928236888 447275752 469540808 118404679 314065085 995535758 996105104 111147940 548059849 493419133 847963453 425853919 966044869 148769007 700021925 623639769 795317271 143205067 278756278 289485154 874692832 343437716 730371434 662056103 701506784 603364721 906475235 783971406 873761483 79521558 260534803 918745462 948674481 226245043 410647686 161379428 752147286 590420381 837760904 133495185 583904403 62221057 643255051 398214551 484039938 42238444 502757132 113066386 183901483 560187093 794368418 484045054 523648884 549190742 840479720 37955479 848223996 800873951 977875472 693312628 997969296 612786178 701759669 202242220 631339411 252306771 564301031 954275390 995420797 881431140 937967802 759606336 933091554 357965933 903829393 599358449 725345266 955909315 971921585 815627204 865550038 932368026 953111081 651687993 669023945 54987182 836696448 65264798 323474988 85340036 850286988 248072915 382810191 701977883 856811136 194724514 732467140 906680959 936768758 44421646 437241894 229746635 534140865 652746746 722953916 220646487 549102727 622814651 851618684 603987429 616778645 861801786 996627685 258428167 777369235 185920659 292707879 778090463 925614341 757202931 909909524 971540188 972167200 526590382 708044059 823173242 839383707 563910225 592368190 548417987 974416543 505622617 968183466 904259163 993057384 660398618 991855489 452725292 650241059 477490717 965234551 313096137 427534538 226462544 651523243 148238074 157867536 493448571 908331688 638125700 952235073 487513401 495537507 379067093 684411072 210498459 902825989 507011861 820887346 223787130 728112894 803249289 959289849 516570506 527143909 515418713 814065931 883373180 927118966 256031201 784971227 74088493 467270643 872808087 982463595 829465426 892883787 432673688 765071090 302167052 833314345 883880541 985211093 396291490 531636628 838464228 998906214 6181853 698145715 881710710 941145274 443895406 681963461 69253029 750148597 982723678 985750589 587570873 839771540 769023656 844408126 740262893 762294703 257477820 449891714 393296033 742866330 937271183 990408261 774743330 979218227 571196635 777037652 658094848 788069376 678414102 690890077 655005636 843598774 212291312 215466599 713605677 855548630 256356564 572076749 300213186 301730210 613465324 993899392 741154992 981410041 718214671 950026891 818133879 954959600 780563903 893210030 976734597 976761880 409540027 831357720 145045108 926798387 856333019 868499947 706142306 707592831 2533582 473817275 476721216 995075642 669195382 743690680 201425966 767320723 730196551 933560011 731540807 746361001 783757786 900784623 99268826 475037035 716611892 978614678 848093424 968168426 194930609 879666885 568589793 822096368 401081279 858019434 410143984 883916236 286436336 679731095 212110701 661559667 551869340 965028634 768232854 906541375 789404482 801502717 420076136 684261908 897788390 899554094 620054885 722596705 289356170 769863787 395219295 746359679 273491954 869344701 255261183 989323688 39972824 292081839 727757943 918383684 714947428 954527909 944861224 958949901 651572323 715852267 241902981 313815981 560090467 903154617 434809571 948059945 737861769 969263572 282157466 811405827 801465552 992064232 340694249 522260800 427438762 764374840 766512554 915023422 213523365 540173775 447186014 808706427 745861079 956474845 763543059 995002902 487509622 666952660 60586044 616928255 210884384 299565026 721919943 901748924 748596833 927556033 666719403 809809288 568386027 741516673 856239260 917239393 605292469 738255315 483721277 768593080 429969134 722487740 862918201 921923244 831965743 992712281 907055990 910229954 859997531 869432228 553468554 889248850 851168873 950601172 364692195 713562129 339684401 692249977 858132764 924827089 311388605 909635070 58314337 898120786 93883861 933123792 38066976 178265427 792285943 899677876 171922449 442343215 599644098 841558141 636982514 733408459 533915601 928421000 269908339 484862310 67837091 587423844 909651691 982788182 330907773 657364730 242501545 605597724 269769222 299567444 926995882 955104533 35316329 127413699 881673172 943573929 959998235 965597937 363935577 911778533 685253516 760316131 454850008 524465356 688018876 898963343 32489808 165379485 763037623 865466243 26938167 210076512 850737411 891183327 695283290 891314590 674168168 815708071 436886277 832507271 876240145 960035247 357832961 465747666 838956200 989604153 622234460 652178004 903874960 957373210 470055814 533728003 842034529 853915912 130166750 699394406 395296296 403609226 259295236 392761481 474328464 563049533 202602442 400593501 53547612 220300945 63078562 894857482 442605815 858226530 782250660 792752490 238935365 918597386 145923648 285151038 455903735 514023344 220458643 321915733 823382232 969684336 54387828 101208611 307524064 895420223 706277217 850578738 404665016 675855220 68507510 645300590 138198444 164331184 720397406 791284651 331631542 445016314 75236680 460733228 175853566 592555727 147984094 526231405 561599213 943343038 229222526 436792961 700358654 855100977 997224272 999919737 546517389 661290756 656002983 939804236 188428767 547597136 788441922 930757989 894358361 980437277 728751548 938369824 14205386 602648534 605099022 686382644 476494435 511336490 856100520 875000799 448204110 864466874 880467325 891291288 211047705 716113431 538444649 688768000 781547530 892329674 68328439 350684350 148393072 634803095 324377490 979715927 547890877 751909537 465062560 686045714 832769878 920024388 115148076 203560315 45306984 802357890 553084659 564800313 383112043 441072953 609793107 844363443 788953245 923387406 29626571 176265993 534641903 796375669 663926824 942374732 305628559 313484284 569445655 963395926 448230899 513987103 639953888 952457788 692806063 998795060 721261893 729575490 692941033 820514927 815441504 934216972 40520107 659241638 749035898 846045564 336716658 723576739 459726162 870154613 859291923 872363535 168539114 666488438 312088934 610186642 278363516 916557817 159153452 951017683 556857663 804289441 549431747 601438532 867774980 972678115 161516879 484432066 343044148 645670414 772896422 927902121 441270614 964729436 222788558 665250340 95462980 243572315 598401649 716531675 25683512 793840110 702727573 863848939 71288825 488020031 279791548 962273397 129230573 187648986 701503107 713009608 125102412 899891293 564326794 955864245 680958779 930100537 997803002 997909904 796398361 974322612 552119692 580158951 153375026 875252210 71639056 366579978 331750069 705708676 852971192 854733665 413002634 501905793 322299321 831259210 959299553 969601537 621518927 947698901 60623664 263548493 208497005 472594350 376289080 460562063 144493726 698610000 608345912 773787434 78794445 354158817 108035443 481176993 319546564 924519618 843524273 952846143 370566315 652412440 101138645 752721281 300704018 416328792 795558590 958786813 146592858 997510314 820788865 924557473 745104741 898756957 152061974 465802018 690658653 895926091 985414146 992916274 858608389 933849696 925703904 962157292 218593416 273492989 632090187 638168875 699075638 798271183 272221581 475236169 784151134 959065969 367897841 935001344 243258867 502026907 5300762 412049059 814263079 979383641 585050542 634561587 331423735 616158822 902560168 933363837 104686200 433216135 396486509 483010418 340940060 919399145 529218932 820449463 619286712 895883534 473441328 975863633 865365035 966877629 732696766 782945644 247331305 713422850 846236658 975692385 626849591 901252261 205430028 557971448 649717618 721714093 367581327 378666669 827405628 962947338 432621595 832025834 259296504 345981569 713507902 996354623 862499567 941811060 125028333 645755123 698605674 848273770 176526275 534288222 140893099 669243869 956933060 957286482 728225616 776672512 661347769 791968245 45616632 985566026 779846153 845368296 60584933 61665916 861036309 956604188 895747993 941101769 226643918 930830676 541277488 956117295 614703646 659767749 849474043 925700964 84524041 308412661 979214621 989485672 546626381 566962895 153478463 491537928 552476585 683608114 276570037 878815243 419948187 724880221 964856291 989520048 377679748 534311396 999506494 999869550 468381269 642421426 86483440 540319866 941739754 971822385 655945119 863574698 29080672 939288078 674305950 871363990 439125279 770469067 344087256 978778666 497012494 563088647 287692921 856618531 769830607 972388833 468730193 768337535 880580833 948099748 65642241 163706481 892159399 976975814 94260026 434814481 244519831 674155345 797441837 883192476 420217967 945527264 737358256 985173476 507920627 864361820 330215510 503433096 865432737 945837214 726015319 970611438 126850841 157705065 302992983 402081219 236357747 344306393 89527897 450945683 407747954 497383955 521580613 537040713 603666128 754048731 662288879 885385490 561813535 823817829 431491152 633253181 363020369 981966826 343510032 579171864 930526022 981103594 865301043 908218237 242243686 524003197 191915265 361552600 402703749 547066767 401471880 490215999 755355613 966268996 122987885 426031008 877649721 998664659 366157572 520843218 23673342 33080938 6680745 154632231 455199526 745642858 969802484 995236712 900283146 976958741 565205256 720197344 589454098 893819006 537433166 760066822 790357685 990965211 937040180 946882477 951081574 956498853 780600129 882087736 451122026 602180166 459320825 694466024 751640842 914938980 498344684 818450712 564305089 927723302 64843883 841356620 978048614 980919143 77312935 362535592 635307759 849849273 743253679 906017879 714376804 844852614 560223142 615396879 325610091 382758383 579887594 919516661 861925091 875774183 938709705 943545865 174203266 686546098 170326710 193170090 426719479 893835567 125927256 336033252 603465846 625641443 483194557 813002002 486534057 565039976 400531389 707052372 359473238 435251571 982263527 987888811 108086201 868781375 541030957 616923489 202620510 238765307 484251165 685130362 166428839 487429214 161457391 829858446 535258414 992049285 874606046 900856061 601390904 975035957 324289990 908964540 84037206 854955130 273302842 562516392 549520045 607116134 882577060 889933788 378276087 505514358 122638504 163165041 487636568 532565333 670533739 694983711 221691883 305190018 101300101 923299120 132092496 336353325 913750155 971942485 276619771 629936251 741442724 828915930 379973211 532350029 254468792 531314854 396556134 876889324 928518963 944818170 604493775 869160121 146372397 638236224 189987698 222416132 647090724 666366212 433399541 942961472 767763004 801024130 783150617 819665216 24552975 709157150 154468213 709873050 829743428 976406898 162877447 836255639 667415057 697528528 576256245 881525199 423869456 919782229 31402920 645003279 193745458 653501005 404967999 763134735 702822683 719044955 298523756 875489886 226912873 815047006 967688182 988474329 286438781 706243573 164851183 832451701 575354787 981661586 254724094 832729742 158972658 204209995 298176040 748305244 75623536 637347421 38859191 145071271 110815813 710164305 794069554 825908815 790873928 967878447 629836995 663573081 126004857 924318522 567835420 728044978 36875153 852741241 159997351 685421307 221293711 959751405 94716218 219442208 661951587 747274869 917910142 968360266 989572458 992136698 463983985 599532042 445341433 994067343 897456141 991700949 538335292 765555399 850314747 949505754 689690195 911429457 156508037 982270897 419348242 726564897 427243123 496670928 929900308 979680182 867105831 878666781 133237188 851122394 133699799 186243873 543214425 723449704 395651064 887625923 280255118 726416332 671027785 695309438 912791580 976131946 846385910 993692725 75782300 954958294 443322454 727530597 790311556 954665885 16016908 788573039 146853810 224481855 378728911 677420976 343765660 680255658 640739946 650394146 791251310 834754929 746382226 957259354 55941117 369150987 84347909 943475429 352268046 471882743 543280356 928345357 956650140 964309514 592941918 779891607 964707606 975211845 805677039 996638147 237489198 608073667 935333301 998336103 871899615 908575427 536529320 869083746 280047186 399696333 344517100 454070633 622990521 792959489 349316087 602808351 663963203 939461916 584477480 759697327 412397815 681582847 587207337 810059560 349516428 944926038 309241261 550146136 964289080 991229928 401379590 998526460 635691540 904481662 630298791 813082840 500630320 882373169 941281886 999069152 610701281 693642831 22927419 835410398 34642314 551983511 563654806 625412895 550447747 743337972 793877636 929775020 833262611 899510661 38707980 955456851 766151969 930450751 343022881 417397400 989651242 998141878 936875217 983008646 174274296 734528861 501624771 997274337 561521725 994201884 640442924 875443949 987272262 999831059 949747754 978025865 594256817 767136564 524202482 939582461 584192058 820044735 126868069 790833929 178645496 349325650 408326569 458198498 514376597 537066510 711638163 953071658 443626985 739216085 483081755 857651408 287492804 524390212 816322270 885010871 452866315 625107957 690303052 884228245 850889864 857863578 838405110 994565586 491501454 978444217 933554635 977741558 278478907 740058277 171448012 473638442 679658504 721697902 740185315 784130166 371232899 991795295 133904274 882288620 516135130 841724255 827638725 849511011 977967900 992986190 915081243 963663826 391870546 640035144 452978416 898095558 576856641 582690330 782896802 971097637 14290186 815477263 48124134 391387536 24390896 281214710 512091677 738700801 152885292 860891693 590726368 742399625 481334675 994937242 413478887 979306200 516504438 804685149 984618257 996889996 644694041 930842390 132184884 175900515 763303082 814995038 227192828 637793763 705910868 879010580 212655093 887912837 456882834 921526617 977249623 991448921 487214652 911177754 989079538 992454768 62101583 876170613 166262966 391448086 691489889 816594876 128943510 444739850 323216062 613982527 84710231 272610203 233121078 959339902 593830747 862054130 712891549 712936254 644222269 803263153 709525871 998568813 537756649 836441886 885923759 966706072 304490317 376621391 199308261 429319267 63747127 209569527 99839496 581295030 507486575 559051313 252343715 799908770 849037835 985581183 331764472 948357830 714878617 897184175 480696367 556923819 1903307 389249637 660290849 849859251 675933345 913848993 126803231 197962488 807043607 882972500 89387656 397796636 634267618 754829914 526753743 684025246 654978674 948822094 115844252 201991495 57523468 499422920 564781651 888016606 273647272 944466323 965489829 970783740 360797492 536101343 736581790 854854150 807420681 938180861 276643147 651191028 549784717 695830572 362118916 429197138 516602577 862674196 968264180 996634808 293457694 334519855 371068654 859200436 519862293 579621277 108864115 479763115 522018842 768664476 739500915 865028655 398920283 438081964 609152290 646784176 653018365 710576726 417705882 974787865 315038121 520953918 129772579 388299812 415894152 788054694 705744144 873312958 707237920 789561454 995334905 999964770 77102309 185242419 278206534 601738355 651473044 831201746 211651951 723060694 442697881 691932066 276891338 845014490 348781044 670670152 889676436 993425470 824558391 932196372 563927306 716605277 474160396 615398612 452704303 681149232 367901667 964964537 164934014 462100676 669893029 980826695 573484924 846444501 859895604 955245634 183784042 843813686 955697581 963592709 319148225 928827056 905857581 942702064 349296155 568501546 729864476 730472622 356475710 766052601 268244276 947107927 699170063 985746743 54373109 101001837 114525705 604439619 912483451 927027732 620505100 754405040 40262445 850096160 476219431 820390268 133508109 429153014 367030535 669862565 455680875 461550018 786562430 979845202 686274692 968506789 339338476 434709416 144981006 428240685 740583748 777216708 184130314 825135752 857484892 914875454 674373167 822274954 751978555 890027286 228067296 364274127 510154576 749133999 86441539 388190487 660636658 699857282 23825517 830882228 249138791 516650978 71782559 806364029 788601390 937659857 882563933 936571543 223801490 451091999 417048246 986198248 535786539 957963009 480037030 831981647 208281218 716155708 24517573 452887967 599701617 865630750 681584957 704218958 990300628 998622257 806707061 936685628 321084138 454649017 175305138 948502100 937759064 979786099 625369735 654041275 672518274 733520025 223431897 755804192 501392653 740229392 215110422 952079600 133104939 925275957 411088498 473885908 153118439 191005879 2711587 941103776 661037987 956804928 622171623 627285977 595784225 832926915 764068468 822585568 554053075 977680711 392681095 887709670 668508456 939695959 951114176 982449180 104123639 984089445 306898010 905730871 801116818 907169314 599367758 836284992 827240944 948519219 997176940 999391888 244625162 575045310 359197135 617537347 223452778 532697784 584290269 929036509 922082967 993287081 968058770 978365814 137773956 803874872 26458368 602676245 573760891 730373030 333882724 616442256 424637319 604335646 840458622 879443233 32265106 416459829 846789977 911037033 19979748 226588465 343965038 639644093 64409753 958626806 644463938 933475508 838359765 961703296 944116268 979975296 592653063 886631205 385879935 405548641 773826139 774141017 641243722 697635408 813732816 970915665 76369158 720217249 438761671 894380948 684199603 911643611 346575275 785133636 355416462 991725602 697559091 926171414 642920973 662956899 58175738 233718260 546569046 746424895 195321241 523965640 620814587 792017890 45680731 194162410 569081286 980421920 206750553 463170599 17458034 45196472 703788425 723541959 260600533 417652192 578604344 757590507 370491589 424286146 466700593 892764865 68686646 973692684 785102802 798988422 988198784 991001769 256276410 826940681 595362029 994228055 358838676 545203640 501213531 655456639 703871704 920193399 589096585 868162518 273230395 492212944 140849051 152941730 682902415 878386180 488575405 854887661 563211757 869713560 985543115 985614565 527687909 816094111 697713038 987231487 373054473 434134331 604297339 719948691 69441221 358331412 583803375 583824940 586685774 639525844 351432149 841932198 538239174 589772824 923001599 953723893 770216588 847823607 245374529 431930269 732257049 780893306 252626197 404456147 449605196 857719847 114738379 305220954 418604969 926134016 374700567 540255236 599276539 984606767 626615147 727120521 218919566 824840565 290218490 495525067 779320536 869862557 581616908 653164894 67739613 270300351 585032461 844349547 852919136 930096720 720314748 910028906 292501666 599023143 631462707 768990929 219947844 813788381 305745377 606896021 686523907 791855733 625434856 626877430 419262974 689167803 195945991 346737080 303539664 443514916 49283853 412297884 378893193 886060444 153519123 188260601 693364719 958204479 494335160 548422098 516658896 729547397 229273362 241990737 473971428 631238185 279532199 600612830 737751927 860896038 726689540 972364199 719192377 940913891 188338994 264810429 288575858 403131666 461249090 827218063 667976812 734393080 799305617 825896199 762704261 815384742 774842543 779019927 574989191 637399006 481356574 948986790 516609940 992011059 164465931 357875819 988131713 996342290 577690086 859286391 188381638 462775003 408572371 594574604 838780637 967682714 317491381 719093365 709215764 892031203 610330972 776495734 572633026 803358962 548442139 991711707 190750538 225753316 751562884 784779616 673497955 901484468 549038566 604398482 672858885 803123108 497278328 949299681 902776420 964466305 785004917 805374883 806171569 830115090 660191832 884566275 220641456 687708138 138649508 549151528 4244236 781361668 254012280 723967633 620161555 931697571 105935851 847654447 559970477 871160423 621129433 776744877 796716917 884177175 199925155 869882715 485426178 831126852 56595339 849326433 199951859 431316885 703746360 879032764 362629976 547516785 491677986 919058908 618949077 835384383 768127120 978044264 430193044 547916134 253518538 568351417 470591744 827589803 93157527 400555954 863281106 870427373 275309106 658156244 297128179 510963460 309421118 778605526 410365646 491546414 602173978 623790436 310956295 466969926 770199046 853340428 128410001 772008237 930884468 971173942 983110009 983656543 55564812 489064042 437207367 863558529 874671031 928653009 996220500 998660602 781799133 998452990 717838093 755751879 163314960 814250365 492917938 989267332 320522462 387770800 234397279 859890831 520044878 851434780 779377381 811094758 929771304 967357049 533379357 639064302 562783924 686805623 457403928 935473898 265190551 786422008 142899959 400750090 861262991 966103700 259338863 390496076 952004572 964611506 111195003 114553854 785142011 887015517 683884516 961066978 479369491 956166655 448026918 506026846 125370841 174771532 479290805 656279753 911771687 992597107 534202854 928220932 18776447 363158172 939134909 991559546 584426436 727337209 26159870 939364245 46466175 60939650 818087470 925527342 796966895 811762169 760670301 880724567 956603190 962448303 762467360 950401581 696495867 927633721 291524143 662892183 613147340 779549756 505458985 728908658 799762145 881270183 706539935 862373055 14966104 138991182 829639581 908944918 606115011 853847809 380871859 499414886 747289824 898554657 202165131 729611141 630856548 862040491 787209984 925401831 320447482 631366481 314895680 430823140 402384171 843085690 258438548 371776103 166480958 597006228 688227219 934687508 924031732 991381134 28818330 235802528 932402782 938666215 99597218 574650141 735703421 957517418 354480159 590336948 429777375 440600056 118523758 530859484 191122467 447354631 759015993 798069153 590725238 655623044 801303466 826115453 344762455 588100830 418128004 474720301 294752434 943478822 682787079 900810839 121211167 350844009 420445910 497739549 107878703 798923677 304664585 773752539 908193488 910067394 447713619 708866380 67074950 496395643 447521911 734250557 261647884 574457051 939196038 992528060 430989911 983659963 428124759 591951883 873879216 972689079 868711134 971193756 369572133 942508687 342894555 496086677 824129368 916292867 697984295 910294959 876783549 955331707 535975582 651188804 147170621 535618698 933403832 942130580 638848609 684554165 366654025 860966860 782864294 963421951 298187520 577438946 433516975 793458685 437796841 718009624 80202240 611163087 913664455 979077536 862292419 888187397 369871203 978149640 461161666 633633224 445053908 965955915 936452033 943693705 811805460 930567513 302042791 992034850 245662260 311641187 892392062 959230673 529129828 767391960 927684553 988667856 746271303 899460911 806939141 900825881 230390601 755658888 133475123 277853150 823221552 933056428 641538118 733876432 883849748 894372507 496248152 953685190 438606929 905515512 774875701 873049151 774683519 852372625 609119085 769022115 104053176 437935612 587124602 645954189 692303610 845260880 997355906 999625688 27253697 295241002 201283637 241870033 67089499 110260664 328345278 602141975 507458484 607856567 179704869 783223813 893522427 922938393 577783806 607591012 181560102 465428653 665990763 716176445 338943775 610018647 509873393 808250713 320663794 577753228 263400031 926323664 123301345 930223980 643884034 921899570 673220585 891139635 988307149 996912979 969449179 990164647 43998649 832886866 143374452 469137432 181577029 643528850 875415618 895986052 381304313 507345949 345625277 515711517 530327857 730562453 52547678 94335979 924800887 989501969 219926170 933942914 71793065 481867125 428023332 787861250 823891994 994522805 284244666 680968773 610354258 891410326 241223707 690240680 16966072 56951510 598318753 945235467 339471272 603507211 914092384 963076906 998125762 998687193 276187706 296283111 18368113 656475341 615934417 633071645 387050277 787770888 408136464 681147708 978328096 988619595 803809053 920885674 437202538 711262267 828051857 992349217 339434197 544346758 898807611 902479207 619530468 735956239 67863872 823892959 13112405 236713438 756028022 974218298 106510185 329996287 151065661 246214872 7997642 321425640 950824256 960360953 769787632 880439655 264715104 708223484 736578031 866251050 915665518 952529043 990614909 990911721 625461262 708152389 972749577 999813202 661323475 774324912 639769320 797856632 154935753 473806849 335190468 746831229 821526064 971872193 127772840 806190458 369106853 808286039 992463874 994280853 658512665 662016953 854712299 981726481 527971553 631891686 7131451 647840221 965712666 985091598 675028689 863243083 427985813 896871085 836514296 942125430 509141209 808503581 423541531 574764522 67658138 614012335 699566815 963739197 966446096 995313183 383447774 919879744 510601317 602557231 447893626 539131852 6038016 735318577 919298527 938737001 772574044 857051119 29876449 169797782 982482568 986293322 805330701 876502667 270203472 834760375 370187596 621572086 747759129 751155164 68895502 111163123 133685429 704834649 469943411 890387632 807902685 990011231 8755333 44771046 760814883 805994463 757941179 963290298 963173047 999409196 436904567 442493067 904443069 953939349 292375563 440243619 621494252 710918206 895012459 985162513 964298445 990808377 329848253 470490214 397482130 614318776 979768208 995505280 708046128 921169955 835534740 952046902 702046237 761855677 497932025 884851908 349370159 875944962 66967234 408969733 787998286 993802513 169906792 235148500 118886343 483849661 81220203 153809552 667645684 981616179 441961031 885799204 979264418 991055904 478472351 591536395 314324380 886718162 405428171 607439520 803281241 823885158 979224902 982222007 290663122 405396002 706785517 931000168 688822152 888924037 367598230 401593611 891027838 957995405 727168318 738327449 437869752 478046645 992751619 995125895 154418572 233322853 214147402 301771356 872498597 938820915 454638351 756260953 632314145 786208889 346887240 722275260 883540549 884451750 450649773 942443715 784168036 874471043 471842213 809714283 784659965 870020703 261099636 653465011 652378796 664760537 352925522 394698359 179339183 526510713 631276782 927306947 961813120 968283462 697351842 841823488 969691274 999971937 145376081 708179360 622561605 801372581 709229958 821436633 754112504 894710405 305017731 339175494 982330368 988953040 569749859 678906812 202586429 398654879 174632069 818922107 703197629 781221929 156025660 827454003 148072548 644647606 368872022 905452442 407483508 649838180 375117531 602519637 746814456 815524799 195482884 911667757 377734882 734122682 127879925 515801336 225034519 653852262 839142794 974012009 467457560 832090595 106606408 544591027 139819006 585309131 149133400 958520223 952106552 953503706 754436153 988770180 563570520 750031636 575997261 636649002 124971107 702154022 829531015 989305187 721197157 893604850 94377369 538273255 921969519 922532443 915842069 955070876 822674172 860176474 404546656 757931134 677294026 730847478 872131042 909057372 465527179 633581348 508230709 748337840 309518158 627493164 479985140 667219664 973412654 981782063 405212079 521572799 443406639 485230002 618378443 691323278 626799013 952305999 356178939 503798307 723587028 752786884 907117890 940359924 25949516 830831810 575283544 685633445 739103916 899530400 19896872 411071061 321221780 998780139 232952134 431585399 885309674 969024284 536126670 739628745 178573116 507629048 979441533 992762906 880683262 976748365 169747055 851968550 407767750 840613397 758352583 770641778 573194288 941636097 965364483 970450547 769077296 835727517 665340156 882614100 179435974 640080874 105995643 502221278 591013381 902663413 153726284 902014094 827252019 894247807 321114538 646860683 836134478 903120697 499919048 531182592 271908103 297844414 103910024 380113587 431617443 559958236 321764444 746294315 51739659 314499498 780453485 895766989 623589367 716515130 202187497 991384340 759390108 914327153 477574213 570125899 724828986 962188215 764943025 969519806 823872305 854563208 635327014 773954629 802659688 880616746 720866579 968563201 388193836 676595825 152678238 844543141 764149166 809337527 565449905 612744097 493918105 821290437 332151666 574643889 272150269 314545167 877238700 923707148 234239094 620775342 132710792 255862353 442720403 542272538 975195621 984190105 519227667 775953609 39396656 969584267 975447317 990453852 262639373 269258304 917930394 999757303 436429359 580340593 952917523 969522958 670498358 928015072 294032819 825160729 939199052 945614395 74893029 173875913 876120048 908335973 282602065 902466442 293150081 777608415 340911457 601086157 148891240 462290555 249449734 788364332 242497043 692148865 994698486 995717440 472885099 660320929 562208782 654396421 973418162 985258167 323143710 892847056 411417174 513562245 120558847 737118956 837732942 999571839 632432211 957283654 667874370 675454400 385740 672204540 670910325 912997225 905627552 916436984 280810931 979453031 839060892 889838845 579359061 720138394 490375930 636827209 163647117 779285304 665097026 688503823 440386993 774707386 163642259 674202986 365454698 616105279 127201065 735346258 854334334 973991599 50488091 749167873 320062406 748180129 442953285 487697801 656386742 918284262 344284578 624779578 374373142 640386054 121939127 899369998 300340445 618431687 200048325 605486815 590105626 657020497 851549878 975499252 543650944 872853963 799655163 845511640 730440512 740395692 205287034 949096584 567301089 869283220 290627982 330113538 891592508 913012421 656723451 781786246 524546999 842408504 355601447 627766390 646979420 741513394 907369930 987183721 738082829 741978949 58429741 200250103 729159614 969459350 420508394 596760287 162886605 748875907 296402528 603388467 228453756 856414884 537900254 935617620 753408936 816901544 758790732 787476191 816946128 951143799 138259630 470561785 865945478 980769350 400258923 965269433 395323589 417490381 395079316 517846182 441354034 877270193 32816159 274842776 483170468 506332830 348902095 998332425 309927607 994121877 734188191 777215567 362498751 930406122 483759488 614510133 346835642 841724572 760283793 843875964 54560646 949161801 600428760 860343325 674319331 675259729 376935353 913206768 374828554 749418169 854318507 957026719 81450682 523391636 947626790 961439964 804209317 804522770 744725923 903797237 537776491 614647318 789094742 936742477 391400455 905867603 814293602 992209333 477456379 527407590 882111874 974492204 603387026 950243533 315985010 941687866 43424417 54588722 612636018 685048279 628625881 753089462 266351931 955490941 116493814 671071089 255735514 605088812 679639950 826408231 483708589 871302068 477770275 883800293 312787387 315731582 878393952 918744836 6663387 767442275 48245171 382987835 236572271 822912810 826265774 980243252 508558897 673130569 578467777 619469446 328681760 419773086 607431670 981238297 803312813 881358526 159839189 911296079 674006294 770316767 74164102 533836959 884575663 935127264 902548883 975152120 796953216 880690551 298610538 969446060 180595259 557449402 855176080 864434162 186573430 232335449 553823835 553831786 441144289 849417934 864301567 987704693 47469643 848157805 566843877 936175027 305017295 787820739 243268465 912822213 955382595 974172390 696150278 848735409 867112320 885136663 457382227 540592290 583050488 777208717 706987219 759866923 17287902 476063096 130293716 582285384 919861510 950972604 480821164 738180159 223484306 824480783 25934661 342522231 820491762 938106055 932547390 938780146 808423401 948215235 430432308 834322661 127122308 850819392 605568486 659294844 532252669 633036979 472436573 794598947 184648013 794649703 847471184 921917996 316950263 389381111 465757317 567033696 279476382 849151164 600100880 978166937 531525668 903530816 664114150 873184586 376757228 486819519 821965339 843290723 573025072 993534154 316613255 456920667 989848473 996173740 546355341 600973159 759326971 893896888 53768050 293181988 829155359 888556872 474370746 955205691 692031971 840214790 856424871 976348551 961196097 964308432 674567379 719336592 990975347 998445946 37466991 104480973 564780762 972150753 212103785 478772945 692511910 694933497 94722855 559635849 355109319 656599614 639758272 696378721 762165024 987123260 850835796 877550786 130529625 970962476 511490579 894678799 64811875 380131790 707412489 761513625 422427175 551408498 266865773 393164966 910216157 947982403 94423650 348799671 358465144 430725987 438190303 982839622 404266291 988120261 236752288 971191393 30629084 224791589 218220517 734880095 739186164 868073505 907624413 987666826 357613493 404728057 150081581 689874339 95283369 935107499 353340848 664407518 142813275 461602789 104371590 879619698 994546572 998613629 752289598 876884806 306907429 504507826 945780506 996010727 984003837 996684157 326309962 721391796 817695455 902664988 685178034 704290371 304113274 466210382 309106393 923999471 979794413 987060848 751276802 884418274 934833128 959251455 76390307 291697770 346310737 735416756 850686707 935938850 320646667 327835515 136398633 166276640 306628623 610837985 938311681 967534611 494755563 603785687 734954104 896825138 40223113 745063046 221538119 931193856 918078849 941037023 416638213 633763707 91237290 885744400 572966810 785048093 159386899 762671751 38335865 108204050 484984256 964882462 42518696 961100901 624797745 688220803 265324061 543362752 870481984 953323472 735200674 934057661 649669671 743108367 214351306 557305632 341468110 657350251 121489126 627690459 495277065 667145604 90214596 982152660 475010079 496853081 303869408 511434279 618081383 864075423 807647360 854045765 138973068 678814079 876754756 908556375 232708404 337532827 868134083 951343751 307876928 481608373 618645794 627276233 251321756 336347991 825828734 953473068 343596115 931146062 3904621 901202885 497341609 639967635 923543425 994016027 796927963 851188602 672716513 816148183 28960338 393324642 55955939 872349673 355661690 870048354 401138564 635393927 728956001 805764379 76427062 750720117 184441418 581611434 595519983 823608291 624183655 671290973 979102124 985608775 314352736 405787508 242266400 960284434 698211066 763563787 880393144 937537272 715624351 808361823 534774673 541922863 21117252 187035363 18638888 685558812 912405149 970478904 62170234 875915479 295644472 448443519 991803947 998954601 655864243 819244082 106438407 483219536 862177698 980571879 228347149 756010920 942837960 992538027 787816540 901091910 563380233 795262783 346964478 457085761 19474755 461706325 178387097 500983703 834069890 887560341 411938124 983244988 618381653 967430277 397544632 786798519 860576298 907139823 72527681 709047427 727148518 941086634 47609646 463480900 935496576 946701240 761833402 936211383 467143163 881420085 671350711 710884379 468959387 658044266 971361487 980036085 773632615 958059759 375171709 607249042 953468560 959096025 579181759 762133981 59658634 704280470 639532954 718162310 256609519 609647318 633542327 812001312 996635517 999785933 225465506 403197726 125696720 569422662 913304668 953317616 376742260 672195279 884365430 919891640 969939699 995183258 942410607 944298282 431143795 758020756 476087682 744132418 194392139 222410519 506759140 838929889 127672632 754175790 667765836 683876638 49347650 689858669 196177343 924643220 629522482 861358263 120616480 961232489 855067910 876678153 887793233 950376900 419454889 999246016 839046890 988829572 536119722 852610481 161141416 462791080 793247754 887357339 907953731 924371240 769591707 780659815 265989575 826765815 424416436 594688677 165160781 327725151 994178806 999820535 650403101 745299579 796841981 929460501 61337412 66042618 205014549 854337279 457877113 594061778 896837003 987095130 918383122 967626232 488623011 925521257 721069549 823986685 872425802 946981497 554252840 981078555 189911666 802289290 451558720 726056773 261332481 892141813 456987775 545610975 88022778 303220713 472053526 870924062 849946549 987733492 220645246 381997849 131123940 738604637 135667793 434830521 230282117 997746587 729571542 899432084 80787168 497644191 891290639 913902144 53267772 735392014 907028939 998449677 665525427 825875228 701949141 972499364 216807817 297657541 344812906 947566560 878119578 915835327 500684969 679914496 680754628 702873408 125187598 244332919 109816682 516646836 707696839 948991382 349252945 732537111 518056151 715900555 651772157 659587268 265982995 549287046 67550933 430544648 982944816 986367075 33909445 940285029 684019520 860851300 486135311 965563697 869494963 900823478 634005388 791695215 446878769 750423312 770158866 794440936 277114874 806150803 735838197 739459871 602119769 818112692 647354058 664795785 893016361 921475962 412281627 579416814 558884485 973224896 254840773 909004810 993998158 996622935 49033580 166581888 766917189 966740291 835907361 966534908 228655756 446473518 288529067 765020609 386970658 665778265 191479349 560018511 5990565 146132000 73592552 796559863 815257628 976305019 39437587 422361410 151535697 965099926 594963054 899654821 584145610 650866173 639626122 765424221 85592801 590763046 47013952 423945307 293163337 329290161 366366510 741159240 404998244 913824440 82885329 244724912 66617092 181215920 755357437 755812933 442984387 857790907 296290327 506288031 817011596 901275227 582451618 869810245 111813030 329253462 469594045 522816860 368315971 568701214 796951154 917592786 90212739 226050386 596865293 865777695 495133513 815483479 992617270 993905085 903058932 909650505 718373279 900822318 930298373 983732857 782804038 981852426 167458245 450135689 646364329 835225475 519385695 685771016 376906098 451648171 565839242 680769765 754538396 857091295 854280060 998195390 3921875 550288476 468359486 729048884 714011310 788147320 671672566 933150230 745479736 950495956 396519160 704780411 809588054 918610943 666099150 958369220 939838839 995218840 983855822 995945157 808256603 836367577 448822130 777895993 881874201 965157426 677133227 689640772 36478039 619997994 393362002 464239339 833869449 862127428 87225602 641103464 174255215 330397586 263265941 697815435 616122286 661135758 675220860 812276500 227500710 523115340 904034920 905526614 245662913 565359673 867220215 956261282 222823965 938897747 338718926 887324893 830321374 888795430 736089213 980135686 821640798 999824566 815356409 912946648 506939781 706402482 893324729 928857301 617836843 896238295 367023483 787042081 335814122 836614601 33193567 264987097 533365444 904921788 398876244 718527907 153114884 488493573 539557557 708913809 738422531 932357252 295514235 995149945 561717780 665522998 492167625 518863037 828344974 837173976 251514778 361029123 172239875 586202861 148261477 171801472 120714488 345324960 922924782 933518832 304886975 353446478 314772535 414047793 957597505 959473942 528748667 643887056 152580302 311125532 878962264 887721141 113156422 670441113 356000881 632526384 236266942 866153194 476247685 898601480 245186598 570321533 464574180 870159346 532607215 902892699 199779658 460238585 80442040 458472655 141269415 339299809 930833758 982197956 39592845 410929403 913830662 993612374 404349624 726642679 995228014 999841882 554634086 934642879 156452490 369639862 602689156 645598215 666758340 808242566 551563961 956346013 786991281 798815157 458578724 925673941 513715682 715694534 605834227 993538096 483351888 844408796 352960064 902048577 550829650 649718617 454703599 630362220 350371797 976474798 179107362 830841356 794468983 857267020 415580950 465389280 345894730 378903495 327386449 902908544 80339258 688415482 509098980 934226655 395451833 623041557 679105479 783209206 666936634 781529798 505424210 709033133 922169 614191393 275584953 771195105 644925367 770693998 521906422 857047660 183293555 238452403 772696360 970992134 392537209 940884428 115714159 572362877 954458410 976488916 951011162 967869760 811422156 970366958 727514490 762266039 117285012 474108708 798726133 965921330 140803078 171831853 322390419 331246689 925249512 948684589 323805861 826534234 678161429 848901744 278747555 894386491 14102963 357193386 913189100 986151419 902924961 945641663 231580171 761816271 193488981 457786316 551113493 887498115 570668452 807126707 713802839 790616306 455074037 905044716 409524997 575576876 875185390 902881581 758473605 890081864 448402846 472039046 583157995 591752146 805517053 832371982 24766481 783601363 269656668 436577558 502846350 590678250 244254696 454889359 269178647 987689892 226316457 962541853 715987081 729053871 704000958 791066727 990624051 994069880 426247222 720180751 53551094 822450130 872695254 965423043 768841208 859289283 563560407 639273721 870318113 981062453 776200892 945858269 588205145 765292006 370484751 507979957 120348482 127275363 919768799 936376609 157076399 692264166 835101356 933074260 948929373 984855387 143132272 389211402 739870360 865688220 948531429 957059927 608375998 968944531 613546772 969000896 513578104 644590971 135764662 866020323 751092443 913628069 715026996 852643864 703536714 727876309 775089980 996106683 513727998 891959695 820783294 931906405 409289558 540968383 252315140 801368420 619282917 620610544 240605832 573735269 735244500 768812724 705756473 799989465 26832571 573812585 749394802 981238146 401843341 420295522 635340775 949390964 966531553 977791103 380174742 509747962 217699950 836112367 925102980 964484925 676186494 986198901 137614968 179541691 765224038 976041963 629326239 844413773 587720812 801904089 843914170 896900636 272023730 753218370 363214996 923484701 169930268 419401005 893782506 899369800 736748695 954804722 775911916 909020778 294670392 983909921 467960927 720413304 448784501 564057869 148106804 852388523 897267135 954910606 513255314 933913674 113036658 463173447 540911561 715323117 5528852 310014409 313483159 664605796 364234520 546605107 371345038 942432543 882187171 970275141 741368755 741942769 578067227 707721485 234996596 408669244 93193102 143167302 456582531 707925103 868031871 974049807 858493986 920487275 399453931 537802449 272842430 493616206 853111878 986670549 470461983 894232186 865724751 876207039 894514940 981603569 602347321 752282347 141706822 796466487 667529782 941215022 547351310 963490362 324282143 872295495 458656857 630333952 683381565 759649023 436807626 737905898 556374262 757447329 198406269 266494320 573551185 868522684 662159236 930869704 588455324 744026209 274502581 443290124 39719981 209995383 367774135 913729414 241255647 442389171 413361605 844819412 738871538 781297111 681037895 807088178 457943200 912044328 28685984 464862285 998634510 998831605 901217401 935434714 841427283 844581675 432287216 869958644 822677010 834176958 22622001 82350078 147204690 780949485 465914347 736722616 731906484 886663378 57192537 453256021 567979969 793996656 81333044 969029941 422572408 933379172 571057449 746919805 68826473 199567479 409584451 570788676 243354301 250587803 554370858 799127841 482604235 547943464 383898345 934223500 785299213 939461292 914190023 954710064 184282470 312541892 745190730 754504105 516376099 652872168 343268770 792456023 42308590 134655738 717378871 930637024 866297257 872066900 203471324 769760514 96590535 341212774 243421862 601133331 2283458 768659876 396856352 733169897 765546570 933722250 92530311 637578247 534810154 615086390 989488219 994980704 384854951 405981286 838920316 957749487 896442161 950878056 626565304 848519161 846264796 898843005 665953255 756505011 563203327 635583745 334408996 588780023 670746535 781905601 735766758 960975991 346688360 444943144 97515056 644953961 828148626 894503626 619917910 981081261 905062631 958853326 332311814 763800276 973623461 990188219 451625508 723103321 152528657 563357219 5345501 765244640 779726726 869374109 139890468 618525118 184497409 280942475 305179081 684365373 207100347 237445122 864809191 956751112 373657652 686554957 147305512 329025613 353659831 675434375 250529744 497657485 199042167 937900572 619675460 696290992 669295233 740218308 765871601 975411012 757501928 792316116 524280557 958775426 752211699 926559484 823585286 933502063 2552559 577771238 673398757 954587113 75496343 556031207 779055805 796956638 46847212 345267203 490606654 551750539 343116036 471061286 697682681 915333859 697782510 875474818 878683870 926000767 753799647 841719919 800576087 972061128 585663146 847389189 770201064 873626543 91732197 121415234 27306432 181103398 328626837 993419063 874239284 959436564 858718225 878675330 802228430 997170175 30161889 55337148 960238527 989102700 240420205 791801918 328773046 473644267 121495403 314193439 324306433 747846469 746348808 769783797 481178393 501162120 502459830 628927052 955704771 997937714 751162138 877640801 238741253 913263103 159075069 190461243 561530551 864202203 927878972 983429083 149321467 921401183 840150888 909972185 817037498 861354644 632232486 632334053 332192509 681824079 312435181 588392731 943425437 961995635 44573405 961903742 420364528 449307491 409887011 804521979 136129500 443380242 385985652 606274728 367908383 838653163 609009785 917041294 216682844 349911422 946474212 985629443 548617949 985609937 193869411 615881358 556351315 613828768 227089660 669434850 336303730 366087153 467622343 539078070 148134553 468830652 568233581 661431868 380667943 480335355 643206252 872206817 918633910 962172222 433580276 546348382 425744379 907200283 292181832 965756008 988880263 990707894 160978211 842065815 151590838 845395016 185328576 305548968 25733292 464327878 702803230 730297245 243790301 415036026 158580121 717957876 756446271 918233901 930240876 980836141 303280787 859856702 150775986 985256994 214027912 751067810 287409352 895602866 97134349 160266692 999777393 999864502 613280093 913608075 471409755 927189963 12204798 894243186 927772014 945725651 15988968 163004149 802127909 915122929 658514734 855906144 626436710 815872801 921673636 949315614 225257909 880611993 548849597 808624526 833740645 858900967 88559143 100751026 519583214 998555305 139146394 745000241 678695109 974662872 642206324 867233702 796845969 843263981 422958460 630692255 728183231 749885238 664150148 864336887 174834975 380324539 842763258 942599807 320915140 969556153 709961633 798893464 582188621 735378615 5146837 20700276 299193424 743578490 853612667 902044021 377391328 467716088 665117556 749655556 410401528 470547011 674862901 967834590 229411977 402748164 657425515 968782896 207288853 960847524 597491926 777563043 855278808 979216415 179785341 467126439 473668317 825503398 825799748 844129450 916699410 992317102 661250069 886471861 344269722 406183591 948871135 952945561 975657733 979053183 902958802 928831672 829129413 913402502 397683059 979739359 849565277 857663504 761987091 964659314 296141075 982241592 365225221 752322521 211128427 503140248 361380085 371212437 592615930 786768354 552367139 900937759 361734700 435350154 281544140 595468391 327317356 427983270 470507728 836637794 168222321 407985330 952525263 985517601 402601297 756031948 350525726 520578454 32183019 668864582 832168371 840614240 723010885 873990618 461934992 803540740 112378354 196096842 735920339 839001143 936937984 993061451 264815605 725794978 849531082 918966275 491722051 858999886 601238474 682809233 953107841 968573844 267971359 474109703 631298961 957223502 930318708 950340870 295552471 935318347 446946055 546994400 64767992 544484310 762114058 965750617 263752000 953958745 579786761 672808794 666395579 728067351 780298521 829697056 143243655 646094833 916527853 977253055 974453943 978842597 716508441 759286095 508367704 961166703 664345717 885072564 992146847 997747645 961848879 981116054 314442748 416080258 869651209 892926132 111500996 924303408 710545536 804186050 60741482 560798386 963420724 998180236 398933969 698303592 32671053 254754568 970241186 972171234 586253608 922837559 122504584 734719336 464108371 983190760 510806228 635578984 802992924 873641266 741475805 762765364 733686166 852828820 571417051 664901583 149146895 492049711 288049768 517374361 379953156 590607491 130307142 521695808 946611819 978230291 724010341 740656096 643557947 717197232 200805678 542058530 967686467 980251676 816463766 869500503 29826830 949259838 633123517 785145966 48233704 489869468 951415164 967863999 124177411 944050115 249049507 664306821 82024949 207584874 502297075 584209781 3255112 371055110 322610459 644373243 547432069 989621339 903342473 969765543 703055350 918690897 546672356 605468829 457319894 730674162 268293502 454655913 765363143 978324597 654585589 987467076 834951263 875474799 349177259 791310688 34821303 308639923 673747878 678954459 936403579 984704354 840324579 955572301 244620502 781248217 423030884 794095494 695810141 806811601 180565543 545495966 961899659 975067401 386947117 663267391 836715198 991396978 154280545 756920204 905559032 918226353 132719033 455375554 570666599 963130948 469560263 641398837 313652473 460487122 88535736 704244424 99748118 585108720 801863319 901729465 354485319 465638798 453634076 465287527 420556503 645694523 571520776 732186264 300936463 806714952 117286548 709949500 78923838 399833933 464068219 477374059 914300748 941858135 633287347 943177116 157124776 510504897 860177385 937932307 324363645 797131814 150808260 974288564 986701961 999439837 440933014 769757123 301916001 546475999 543220167 619418540 842651428 857738240 480826070 595469586 181754229 638388881 693834183 743247772 834487407 969974468 225980802 471877958 569882300 678665603 132384608 510332085 278964642 760376244 995835585 998547054 935014572 990812271 639682632 664396799 800997792 817661482 585276098 720257133 252755712 484835647 873610573 893506386 275066754 656074455 593427069 768424804 362956534 840732243 95067314 536167467 859543382 927208105 649766979 883505253 339028484 726965036 164121265 168048866 51650084 937015076 361148227 540026319 452618085 608634920 953754670 986704105 361703008 845400716 379012224 752770618 207170604 777144192 731467316 885260931 762596127 977435882 542042640 709969564 231601562 531057058 983124439 993191880 578238771 586768759 124945365 997346672 737806928 779167932 866910678 957255657 896421226 910251054 361839397 625729882 215508139 919049100 8147466 836212623 378762641 552980108 327028907 557138616 605614804 955177997 217999431 366233303 798364890 841388637 337098136 505842205 614152851 738765209 987018142 991468368 133032661 870675729 195348412 485471323 393020293 715401018 82583718 448958978 13178715 248702261 987273990 990006700 149631309 500503939 300278619 451634453 12421339 783867988 469507841 646971541 856794999 909023086 758162290 787499550 668217256 677820616 253602418 308179098 811796234 970186478 289567867 663974879 21042952 108413161 232864453 528074729 904854422 950282931 453600494 459906120 157421141 676245573 797183566 829403274 817169863 838405708 169757968 242440893 613853463 872932302 518202039 580211105 595366663 863056326 533003815 938715657 372563182 479201553 523940232 606696822 603669749 726616201 657196167 820710831 452234672 751450425 497114446 893164390 570850723 743124150 288958026 320217465 57801476 916189266 643403571 914221760 588297350 942698552 25026549 657530398 687714452 985689064 127406067 522922199 433068080 665560384 488680222 645347428 467949818 800521093 863948148 877094156 101788115 771157999 896755919 954198910 860928640 865949079 616863040 982484207 727801165 744480541 667686212 886465151 598216982 928763426 49549684 917198977 272147919 439450315 378818963 451627207 34283796 995910147 891761331 925107138 804417964 892330791 325752128 617349202 932165242 973664442 535836426 973692309 709770615 937416716 251421200 783569607 426639052 907985628 461629614 465213908 838822560 918406952 683560739 753319955 207803152 815653088 328303845 596476535 381593994 593730238 566883584 727874326 798308118 819593093 711230638 851304775 98305346 661636190 978120599 991475634 134034550 632494903 466002779 739922738 439132606 850700264 330946699 526094330 425252666 589667478 9386226 121757204 585643558 899038304 380294714 422456823 781343258 798102293 7803893 988212696 825605193 941001748 852888539 929387492 708536143 844867866 686678027 909387266 515847550 753447175 696596269 963687915 395710222 558618240 196855515 248572683 729822035 885548214 806439424 929248548 86182559 699682401 535886314 903745265 386981034 910264360 259024839 579990578 3917524 776969402 738134118 943244082 442652906 683098213 94683062 254325226 461902952 717863663 486319479 517952941 209266435 819223294 930037052 984289281 882339459 967497409 85385290 878573831 24941631 234532912 882499825 890557589 817224728 948272272 977942263 982896471 153061987 316783718 655428787 703097966 393376609 417560015 895295295 977082814 54554605 400945261 410115295 578895712 92801926 851195106 282304978 878303319 500878118 533136052 288304238 429214568 295920909 371050627 552319090 648862062 808389924 940706940 57838725 316510964 620192270 893043738 186438186 614126224 753750891 771762855 471665438 517506439 375839746 417583874 864513209 944315468 660680247 910977148 706046388 756194022 433648561 926957761 689928169 920584412 801261094 908307293 77700017 726061461 746608449 894757818 61319628 79559468 471019331 773187307 615237334 675534896 901005881 938911462 679628170 883738953 962341482 973149445 297132447 810955200 550228422 891248827 763509645 965695423 559116458 931352556 515881147 736827793 863803729 866275927 886337335 899954850 500933312 624889577 530394288 621591377 658418084 801856779 133475240 156100376 529466809 681772263 627481237 905348666 895199248 934954878 294443601 643691857 575779380 961256424 613714498 751115356 38201061 868682689 722293120 862331771 809014548 853782012 709791152 838795770 675525220 790210367 221713266 991902249 274642228 377970377 546092465 654792505 912258251 974074802 808031749 858964720 67155286 920583132 179208515 437081313 844404174 930278769 292057195 784330666 819598638 974430400 488223466 653585335 755892334 949551458 444710048 960817080 948163348 994476401 14909269 306906946 651209132 883589716 53980388 890273221 507588561 857127599 738650537 812977665 399483011 913290939 580092642 907859773 100778194 386073194 70033538 392010869 325890148 560019655 30684558 925636055 109340606 737224690 22322417 266074564 115917802 850141709 18318610 156808119 137311334 491164222 41403894 200901781 349206191 427832746 965671980 989710548 182788810 349826755 703763992 720735072 83502291 596075983 786829473 987828809 834936825 994188148 754163183 755110349 44806582 749027400 887490304 961488730 69451129 639952198 736169200 990449336 343617780 512219530 746939285 953724513 476207301 948393035 859124276 873137118 164823446 249908837 300031223 353019149 37911035 295811233 671962749 914154657 426631489 877322073 644363405 672600194 144303294 638324598 445750795 449615194 612111109 679561398 989691336 990576054 230642111 324759235 97295358 488177293 746259229 888812334 129538919 922983845 900675209 926387294 529485853 766156732 681414662 890775674 190865026 507354434 849631118 937450180 247050925 667810606 560215523 812963160 854956222 938399069 552356529 891970972 922997 231308223 466770644 942078997 686590200 989671781 675499429 914037384 136834277 185467006 336114328 793777331 98786631 614000033 780127186 997500122 173880470 716367210 898843105 968481825 335466499 800916712 262371959 623954313 444415895 493886548 185249264 742049103 494224518 834095605 108441275 772577646 73337859 841297084 754798595 973998196 995793835 997586819 806439146 807182643 348411644 522200977 150434636 571416437 600538162 839664090 735578343 810300674 382591913 458823042 191096758 982383001 545001985 984266014 639001014 718010468 720625764 961453238 114890351 759144567 895250012 955274456 988907548 992634584 120188172 173429075 43171456 643983697 8420931 245419480 127011433 135014933 472806681 514628579 94162510 507935386 853369399 886007210 538179941 955225832 834629500 903838487 663431919 966848388 389398654 947574610 623764273 705323647 626812349 725294199 11880058 939665952 121541238 174046942 619936900 639483285 736295000 965020101 187737472 325561310 705693383 962745344 601184429 643866394 553009027 619976799 916090346 962157440 600561051 676561616 329326987 862213728 200914902 881293845 48128460 89904140 476618398 538623488 497970282 640565277 18078250 18788057 656264283 659894579 285042844 943999082 152341313 869127002 704594649 913041752 126555331 544426831 916881293 938412581 951988679 968215689 292869241 691308923 804583422 945176376 33606134 82412754 66551089 400463015 508126133 749348065 244727653 313048845 59586407 65438578 818743573 893893767 27431487 409767625 379113215 410630855 409672148 634149890 392124341 678230352 245487859 996211585 678979337 947935924 459674707 548618498 738158245 889135234 151281358 738982089 393424039 745424578 184146705 344708547 822009819 822918992 584182877 761501100 783583929 874419825 124714604 960890420 611500516 942287728 901471805 947146238 189180512 381507161 995657018 997988138 301096709 611582271 189218244 803529372 993114638 997327830 587610559 655610253 951911350 988608709 151233532 931832993 485493715 740189078 596434816 795869225 946319145 987520634 367669883 855848266 412901524 853867749 13783125 129750496 231258928 749408539 589232291 945832315 978108953 992077429 5165190 623120733 765260491 818067860 336253543 863963002 90460034 352515952 255367815 257369102 235218484 347679116 752601568 941933071 930472556 935498810 534756035 759281568 370184660 479522943 18639870 46589444 390691484 698812872 599050431 958360626 828890977 948713160 111643117 367560108 924837279 929894534 648685482 845084559 76002766 181810225 647902049 752141473 53256791 992453118 686204609 941381787 531677817 949106984 653262193 820442119 218943665 568625270 729023272 757223551 615779604 783273542 519430449 882847994 203845131 601965402 683912889 858618281 393361638 663002921 617052508 742155862 966671447 977110438 42956014 837786675 297812963 730705783 501012566 591348244 837518853 872200578 632654752 986094205 985446522 987934601 708109394 802293963 374538150 979383688 337366272 568497165 989241934 989371018 94235754 899529397 415233338 418131548 33332721 825564204 352258333 665695741 869289819 950702567 504975200 565327496 649242848 807934922 997868702 998975256 78269985 424699180 85999796 721284560 22340075 697223184 800407659 960302217 510069951 701933759 123791487 974526639 173289273 290977205 150833405 943972768 600015248 820562533 235783770 882946104 542891324 940223516 763221145 930001205 227450895 913379122 124839310 688427595 2282797 545954741 62815083 92169929 973992230 987185999 719004044 824264755 779659968 873974347 223540064 995606887 147420934 860267172 736274021 944085860 959432911 975709531 970211998 992509244 921364234 973846059 741529642 999941723 546510044 746907345 160552165 396166237 593978446 752494620 674789621 679240839 474591520 550795115 569362063 758529203 666059877 949708349 956203541 984617508 606530982 774470249 439587007 917196019 919041622 978459716 117574495 895777819 356788115 497028563 144895754 393598529 174466165 559921202 308963183 823020323 796004986 941325451 758070621 983775597 742293312 959970442 397754679 578191194 466997688 964081177 176774301 617082367 805118818 911502451 684806662 918215232 772386322 900509003 165287271 198365594 887117889 981793870 631343564 932680723 70987832 853247099 971334954 989049507 271821508 467627434 515255433 713124928 999815071 999984264 72106739 99607938 308378273 322972030 614134254 668882028 772200293 976371104 178185037 306242592 114854083 237964254 150351632 785237216 695242986 731925308 890352511 898150866 458486342 728775319 197965482 426114943 381898894 725745944 365075225 921630189 473281516 826900698 862986581 923434130 449560630 607043661 317784945 938123751 184232636 627859366 651327146 681914574 72456213 238707303 464671233 820918216 830643246 908281108 891246544 897724247 261791319 596644677 378911549 487593463 701295894 994870383 680605234 953179035 780614533 786347181 765692816 877715461 945528170 959304076 730260806 876912537 802602487 841256645 982962927 984567298 396450265 795638422 679094486 718622457 343569481 722552571 136107795 948370502 214233482 705229609 669382332 759652016 101467854 647311303 156809620 670478211 93662233 390164738 836201734 957695799 101648580 442488398 978175118 998339536 386708788 408918250 887747864 964153098 638263127 855990052 178333733 834686326 367691003 641486422 149757432 546223125 446985690 632765906 289435891 502929225 224210376 373156543 269641028 888515616 17732940 115531199 219384737 883242198 201737908 937419212 237407310 742279902 899727565 909050802 562777176 998384730 947186057 968103041 883366124 932565192 326722386 374564153 898927446 902841632 335202290 444074883 931029000 997959960 406830748 944077380 617561478 788179890 650542546 905010244 24154045 279630801 478694077 493926967 522428648 989770932 901584413 912311804 177239587 204472903 883594116 930332155 709890879 932533972 637495430 898954279 357861476 393886571 697594690 697694980 683435048 963574935 76828745 647890800 59973500 74297022 321469633 343090618 84242369 668569980 976906999 998389166 68994514 591288847 960209711 967148382 346765874 413427152 822850300 843661613 950747 460827133 16345276 883422252 637012316 695541056 686740132 857729957 225309947 717957869 370880684 958265500 426848410 933332274 45449313 280948699 123119737 218881285 29597833 314916045 875612224 911957327 770237757 793528851 586024154 716469815 585447418 791733736 163559638 993121844 484575651 551297740 852324838 996791753 410652235 613459014 593996239 887598268 192965772 375198423 55561490 157479536 146102387 193396719 12363885 111234395 105949256 139996889 169509833 300501633 824988389 969400971 996450568 998744081 903618814 947518719 801723653 874366126 628067955 948597438 681024070 843190254 137790140 770396546 707196521 926837537 264962663 398783859 881638402 987474620 834968677 975803306 573702643 792813597 194584178 951700415 793745283 992003250 867964036 906480420 280446727 443593116 467228861 924094527 136904224 933989121 861067458 916700282 205584443 723267430 93529377 501622506 978370828 997054883 193256942 735830853 916673001 972041607 816370787 914092193 468334264 850934447 760226318 776214863 620459511 806217095 850991258 969317913 759000651 798907957 381074067 454954417 66907761 326671431 697379720 802045937 203469981 975743553 947079070 951664514 677112551 682329898 866715607 997012231 341502666 812460444 957973740 972289414 976287441 992827156 207599478 761760761 178495341 488556614 546296202 575808167 955924452 970687004 19612981 111806016 29086218 879756392 504210879 542418402 822699955 867234919 181692171 489589264 712577451 935312179 394861821 765301970 761231429 892873461 903695712 928611148 767690036 936649675 130484650 422995929 964010142 984005354 175201008 436022655 658358787 707844484 930086198 944073015 431775353 986525809 44151079 854738476 624378870 797833473 853120138 856528028 538455044 831340153 747022712 765029341 126189515 215633833 555148595 843325881 175606765 534821822 612760737 707069224 706331713 778072650 873711324 997242698 379811823 531292885 42815416 833472455 596141502 720553263 471455374 866611805 433775302 887890416 971065912 979597076 93468032 960806530 347435827 483133400 134109481 205877391 620083730 708397789 180616819 390062017 104175587 351949838 493277513 546449969 613544207 938764839 62249100 305526131 132494728 879942978 988076716 988138125 866046686 931194075 748698278 808398219 391911651 896565352 895787551 899953975 640727129 863526540 158528902 522099394 892995320 901057320 815324453 986783019 340811948 619876239 185850733 304498796 390016624 546157534 439694015 549543754 663870313 933696165 744657303 766671612 63924661 940906591 41214649 573749630 743445787 995323109 341339933 520333662 498639344 858914980 165538257 856260950 957785119 961406421 765418876 984971917 489271063 644046231 514763703 870887471 836125316 885019464 64567441 315244535 756776884 757222352 131313467 358539348 977814891 984369022 323388703 848098016 462959862 823287784 86417175 490807552 417484548 461200480 22787653 594210136 384464086 952677733 344939749 663154893 586009992 661157439 585607458 787289984 525559067 842937441 589021553 687094470 159643159 906943621 908853188 910698706 545794423 842481063 246905960 697753832 229118703 362567424 643524864 745363977 490531083 491128231 728460789 732201863 893794435 946971358 760287555 873119406 144809492 295676647 74807249 95145257 416467962 915361128 820187638 950187136 61730623 308169447 566275240 818181082 345557875 419897698 878730839 983443684 883055278 973413705 359028377 521295301 302065184 437581385 100610276 128108527 683986372 809436067 288796321 409761259 787565365 824297020 921071932 926983495 315128826 917829240 115229097 822272183 22690095 260536972 187531005 662755371 861404465 980124811 949823599 981174565 293181593 937201468 866169629 951802616 31885679 910602557 260516108 982714409 413802630 907953664 294380395 881342140 235907076 969988950 142496294 192735094 126823948 468407692 607550863 957431829 332973779 415913509 808697230 997637095 748763736 921945714 372251946 546226399 372445795 793015900 416921497 770697788 675567929 897276149 772572396 969699574 825427814 834705066 720570819 763237972 294384440 573688793 74557623 295693529 773287881 860083573 166172546 495780375 498811102 779224037 20382270 892015441 485426366 918679735 421710264 718659060 667064575 925994412 225601993 255331089 591068614 672185793 531492904 948233086 958316313 988903702 141773522 827112829 550499721 964530100 883100252 900398287 822902932 863388951 888367527 979956786 133969772 745499901 527340738 685832016 141952308 339115874 390737793 738169668 857980238 961323235 863987108 986878151 633616822 726885634 578394241 634539293 429972715 519136164 817712008 925023760 340715827 939582244 382411348 523735359 5377046 126883068 930852098 954874705 151482841 543582072 957117968 962626718 865569759 865992808 838381584 951938743 723098679 949846542 816126562 877168679 53893209 827312114 568082946 954441177 226054673 400950636 525408571 871088388 985870140 988143383 664833712 920590430 761346228 842615819 15602800 738800490 506130045 757881869 564294381 907353600 634336757 638937716 205650660 783595440 630455429 939670305 602578997 794572043 444311115 632553399 828796926 915830962 970764606 979923622 655628265 690324904 254783132 821167872 388528980 412693368 84113981 732462602 523303903 799917043 557613928 611060054 774605697 944609842 674635267 796370050 122293854 610706997 539926614 554499556 937896006 993838901 780814041 869397652 741875576 861708330 84946382 465497048 757131991 765502832 995784520 998534737 401600535 413779511 795511921 914185771 593270265 865219156 273026815 312539884 271038514 341421828 239547929 279259120 442926194 965011818 362274866 485510934 280746809 887394180 505623409 895204689 405434209 786507006 503918796 572334830 583985886 587222488 609582262 992553378 175293371 368679917 564104044 776135229 878959214 978632471 965403099 986842972 33290981 445914941 626016980 944911848 998644159 999104760 873843907 926603726 642740593 784498631 168981738 975811504 923149217 940276955 101111092 278562866 930667265 997941028 127324430 927632270 277085806 411560068 212718658 503180968 586974553 921381364 532346476 978976104 978642814 983646147 723333013 806336982 102727796 642509451 698241052 952553737 226602399 519452036 666271388 790780288 285230146 825881448 44140923 473600290 722657694 828831465 179321977 730869789 553785336 746210629 10867381 368219513 93278050 277490149 597306733 964939196 978854155 984770795 207759948 856974065 836021402 965543626 160001107 932832548 630804290 780843199 748499287 816849209 426483423 877438958 347598386 687435474 468398628 875385763 933154633 998092880 926464230 998557655 162494797 318111952 8189723 339011661 648022951 920573877 375240490 398601163 912998913 940089713 461899924 521998846 321252473 464502983 719650981 993275359 357772409 502374402 393186967 619394659 395302701 975935544 905134899 913511556 132108292 902532835 884609189 987324405 114403098 261752674 909716062 922780733 437046741 658348640 895517297 929207773 24961104 948283649 184898936 359716054 790639375 871222329 288585906 929658810 778885878 815079302 469764935 543199976 340358917 994168026 312421630 347824418 891409390 956851747 545110395 545915122 985843573 997712135 728875888 979451300 614874853 737858900 562100113 681322921 565986618 823973238 617711792 817321303 519207018 883693867 90954649 311945490 416309108 755508441 132263112 462561132 710845519 961071460 751026140 822145803 212039220 882804032 236124590 573385332 480449320 664808971 473602231 646470242 699672874 818495138 319178695 645851923 527736562 648700004 114807972 424598288 664874965 983343537 51156447 253003734 330618169 996972014 281356555 828138943 206442884 667914087 196880547 728030705 962259021 965694998 739605931 798044367 198298305 570120610 618296245 740755623 685744886 723450830 418677325 742010180 792777136 934858384 538855186 751219259 470026834 828646513 896967441 993332776 923227974 966471374 547869788 661070712 308589949 370143475 607975236 634836625 582846895 821335912 380602530 970234728 404103364 881536494 667462720 811794120 314392098 543509646 7796643 921706608 757275095 957675373 313389365 630515246 129146342 500773686 226425090 503480613 297983596 689978238 935556695 943007790 674487258 734236038 583538375 758689564 12309927 519765650 281078175 621694177 178867661 944832190 351272308 490172224 269741063 280927923 830500484 860358747 19251251 197658134 985514714 991089997 368540445 395377818 133697441 230735492 786644567 847860434 824368851 878985242 863541470 885062667 378930343 584875437 358411706 474858505 674703930 942891028 714179340 838286704 308553457 863172237 662648105 759823712 824529579 888959327 167244663 496896810 443032488 960590066 780732741 927413871 252873282 637518288 492785381 774421504 221636769 809193284 439261336 615942358 661538948 720679196 797005973 811485201 710495468 820796068 40386987 798907353 544804097 722210826 408476886 508213220 372113814 564404358 240616691 564108830 534541135 727710841 364206096 932321320 696898317 824898412 995658748 999537505 21843118 923655349 271160062 341220217 511570945 878187740 342747417 815491150 301245306 987270743 495181275 945103966 503119685 702635938 591733247 789294600 315415066 737639475 552952611 931777581 873912993 943848953 854137441 927287040 609804310 631234404 798843320 952946466 367053542 391033502 452665138 836795516 74998265 763121949 412412070 526776909 100181734 195977910 250354950 578420624 878740441 958560412 603488560 687011035 590029577 639333122 612393536 946207332 644342575 677855420 756146370 757090611 431642943 694748528 264626578 398404393 547727135 731717114 424740089 720938698 872590852 976912289 564467624 859313106 451197720 462788218 348357507 876815503 464702898 517273699 227196968 946650350 559221338 905824154 75832642 448772675 754080578 913470224 108071608 284961538 250759134 814477586 975877511 993461697 469734095 859952427 790986653 958631969 991759921 996220218 483727239 770071623 548879670 760593513 718384611 945664409 147341801 327915014 200040052 806258714 394091092 520757729 172746168 611467413 960441815 998957474 689388137 972869975 721615199 732546649 287723628 626224286 794977974 861585156 195686130 417515513 549991545 737937548 198500067 266114210 903104716 967976097 617510628 980768431 495201886 872173929 564793661 610895050 352648139 627139043 56377192 616369931 856096812 946210088 364610055 411370973 651541844 928052912 836001534 950507603 547797964 612361948 136666513 869521710 459200469 483017868 839814613 944684898 802867560 965486597 876590575 967641563 762110152 833350440 409143412 598362257 725455104 807250933 26112342 104490080 622562218 826054988 130229743 203274002 157259879 341828208 773515641 863984348 682775466 935071609 672751731 912457128 935555195 966399970 463600103 762906973 249508970 649700505 574337857 949547692 345150000 842033699 152292972 399252388 570213968 824107172 132952525 925928102 330758580 990822991 842320007 948207988 301867125 538212034 294615206 777122459 367168090 452815467 559520992 701961908 240650891 848680970 703338290 766745365 667300331 762272634 450478071 524333963 95202956 668175534 130996434 216625342 808351314 915013094 895451454 928456104 536661515 583111894 453931128 887203694 482417126 845303419 739037481 836770268 79816667 610416770 343668965 774952723 813682462 874176661 695219456 705572002 618055745 985398564 143275906 968509723 59161596 505940924 874837351 992668410 945280689 981476094 669084514 838541669 578395642 864435107 748187599 939360823 966737592 974873206 403318993 926253551 764765658 813060904 920316856 979745999 327661639 763365944 942524408 995805608 737804145 965530782 64464115 228514519 965431300 972908639 12490607 920510577 606144089 841087883 456926267 623436796 572996114 637830867 990572691 997479040 296029032 569250278 81966318 831450447 133729427 361846460 167503402 276384391 279037721 406117819 449859536 787629059 587865714 696943318 992757014 998762237 249231161 361937781 548136217 699179965 464790341 548357359 316095585 897637828 321846617 603898226 897456026 925227083 457663922 826362885 614075284 873893705 481089327 892351444 619359552 810196912 385097643 833428267 53329082 133026566 545683507 836469636 309657358 913633458 92098883 503554070 117148644 406842513 348968976 930553241 936566202 996429440 926172967 992236604 498257732 645027103 752305621 880550047 410570284 770861208 171754752 438771221 435600284 709503161 957174625 968432658 376129567 885891448 995831608 999906474 213093220 984742835 358474506 623062075 704881973 880200137 685124322 698208741 762389686 986454576 838306552 913486162 999302243 999389115 433794716 532538542 915271320 943604838 965567216 991839929 463634360 675041675 678017127 758374180 85262725 216931935 915466435 986428840 64085964 211056688 27609523 348489243 374245013 714115993 301672571 448129321 34738420 995286530 454750392 946061209 753931500 800298929 884369133 984731271 684070788 980828948 552401599 691566421 316233042 546839128 338994855 377275028 928856759 993192017 755634887 922488797 684212172 895884261 147427920 195361101 764462715 778498517 920633982 988149840 994521343 997354593 106429931 881964363 714634858 947408507 464998718 559081460 179112394 948150475 937384380 938729168 372429595 624296859 803811696 816383601 193637256 600534783 26776020 167839046 326608922 759326367 356701667 357609688 85291748 358813873 332251786 711163440 748159061 985360383 784062467 992154969 177263420 927217575 900486451 910853431 84204310 208328263 128275192 414578253 661599202 846457978 333669285 940038355 927982010 942237901 281809327 384632207 196482836 400184422 114883610 894594303 975015699 977410216 4444216 160913031 91683209 491131882 376214910 405376052 713107587 857145851 266954697 522562658 511996544 903876606 202062688 498464173 169724147 294705644 67374886 691906647 764371773 839435482 693279793 796723328 579819076 816618514 526203522 589590616 275216248 318056268 673595579 847096194 909212964 948874912 100608099 722042387 181251593 858323593 700353289 792506865 151943716 152334536 105449388 536796117 946355624 967486936 416680170 958891737 253579223 596622707 820353488 979262082 329002381 665256858 479676700 520725572 714708292 745195938 876300592 920358838 254633320 357015827 67809271 680953678 482242442 837663556 607852301 710265759 750276411 769387595 269510663 451688221 405608407 779860120 623537506 872655645 299775861 759326636 494700668 798398798 26287522 852285147 639762404 651579209 864641397 998889875 296798481 620084798 160507654 434708880 452132899 765601300 235022713 579044923 532102961 833917221 645929872 723433770 313138754 994387251 540628666 551586897 860074375 919966850 941513158 979377581 327218472 547817527 702205949 881077009 437660256 507254371 924699687 980465152 740315988 815721466 243305767 420240936 154662296 523819140 727026022 805922212 625728039 798991846 151332 284881098 938761310 994270989 329973913 686960852 538383126 566286428 833033924 872540856 318400355 955988249 193450374 692996347 229892145 470584439 662088722 734589092 465642455 975665178 542481772 953816626 704575791 836944929 91017173 790248152 26097075 907718711 357123841 391807247 160250443 344404297 68536441 687910531 362308145 968880829 357030927 614157803 176763036 259529902 367387368 641307361 264919470 314177131 967000419 994453105 443217499 642543043 24500538 807529310 255283143 675459879 881237513 897259645 826674896 860390612 262283791 517430897 44036128 83568754 762235850 827291345 971377845 996386323 402760404 696049366 822156949 825628870 959803213 981059561 241351642 789273557 873712927 947537384 397603829 895096993 476458779 730487077 961353972 978846082 230452406 479671536 222165707 951680972 297973062 355933816 448168920 873416906 820839062 945126236 801619420 915534908 424886592 457207665 709573635 763145896 508049856 824095019 655050957 695488802 584045542 602817186 511525619 612669839 424069274 573068581 10473399 982719972 137925596 845302778 415699454 472120796 627261133 938405112 94408083 562726743 513853621 806201786 110999911 141888448 698071198 960176734 869003419 973834358 676150656 884864396 748406619 951376282 455024118 909703297 522722853 823288703 379451636 452448383 811498730 973264004 871064340 871081125 906572082 978238016 474467985 983321952 731381281 860640774 732604577 790090196 521689374 553221886 935252214 978707462 142393111 604510115 625479498 667149692 334877557 939207181 164281583 635774143 683694806 885290537 863116571 898922575 603294622 655273150 953520523 970853844 935797831 952603385 528647536 622530928 633050344 773440207 714852758 765473806 74169778 190028442 785473777 908192670 653519725 956050935 911119366 991344156 537197570 607443442 89365918 443777064 953655145 997061830 477048151 820928625 941545834 982147235 745819785 996731469 9626284 977654364 666726975 667023525 901038794 951542979 741805790 971658802 478065514 970070204 376844179 377894183 967217286 982974206 86037506 576568309 929424910 943391329 770298164 949170321 342592032 981561384 561742158 903098450 432807960 911395413 325341135 782874341 200414578 598955684 379968838 475134899 285156198 818456988 893656426 990798041 322634087 382469438 57100142 830776708 997327629 998444011 153556662 988534027 378900361 591978846 642278368 971424979 208466695 861839749 9169998 442081719 578145940 812115575 36629266 991219532 234915872 841696776 710125189 959974121 739255006 751258525 283516081 481292960 21892591 941562534 627929561 687725524 965439804 993132259 193978878 543966188 732902957 989221807 245280376 490240501 584175160 630426201 752069848 808151421 707903797 861216067 844653597 850678747 280458909 799515169 45740974 244498874 213147539 683811436 53627592 102727802 808765186 850927641 996344670 998298502 202738298 453417998 846063510 883680916 20384158 841470736 97631519 259285986 756714406 838870885 137920758 781254395 228820595 922463119 326068407 629569547 107581003 887647701 722956189 918048792 987983303 995025249 451717500 480391152 845881717 888918593 93438247 721757642 721131055 728581381 422710092 960480781 18780417 286175751 340375401 518367796 370579050 621331591 472363752 631538020 92947581 191177322 223168695 646971071 609490716 676207717 105698979 573974334 600808656 902353061 685662493 748615772 210454747 637055974 206564190 220317095 554155990 962999368 708505367 712070758 303860141 864718061 531515037 558682985 223879997 780398267 896686129 977979826 727804510 855528065 353471768 637820244 581248735 674805296 205500781 740687738 450460750 969453707 459850001 942140818 193814954 639151986 991553620 993079254 966076073 978355345 497476751 511198160 312034011 667489876 893233357 901313166 437205715 696328870 33464862 684668626 650908681 759729532 731530814 889518808 239631021 689659798 802342271 830559878 439479705 966778319 735507198 821870626 135920336 928898788 702596705 943317945 224106370 717388034 16788878 858647350 100304168 707619766 943409542 947507331 536650547 770084703 98861352 995781560 344917046 695378887 660343989 849172483 246098333 621787672 622649633 986476916 491054801 724419547 649695779 712284323 496937181 645822846 976145871 991248251 143362995 847773852 891137469 934020073 585649413 734945338 526352092 764461909 698030061 728955537 197527378 305607090 47400407 938828456 435842897 442168042 589267643 826056970 513332435 633079497 222245849 485669894 534376945 968806927 126961931 378870005 309884788 373601917 991827912 999202872 637353626 986709392 1165602 533378995 251304525 510566912 404385502 646897447 802190827 956818300 366226879 563547083 602582102 618185110 603283130 993965525 927509580 998323161 292464725 580164657 6838342 921630350 797431046 826199919 458365834 501701683 308085800 640426032 590145684 708873142 386308501 869027705 331196511 801352535 748981075 812766056 774717740 933705759 197617676 865034910 325687857 576753838 717577271 740932626 753598586 795840682 294338499 404191475 470169005 685110350 163946830 942177033 669655049 767362152 714788997 970747557 757296406 780274869 484096832 534263335 52303699 843910404 120363043 334119459 580762612 723043648 671658302 778436639 249512876 322890355 373738289 488741652 617838009 756344970 542660827 948200378 946283722 964478479 84356517 789416093 551800956 667249541 673925702 907881083 424994590 572043195 224488219 328211171 213494323 305558207 17205054 884310859 31308963 661742036 949425177 971506254 314602629 816663229 565431781 989247842 649702876 681208485 390724971 429147100 772261941 891539396 847190984 907695176 385637546 931865247 858409939 909307864 729483781 827289301 605040024 889449109 612836396 683317479 795150122 986583092 836155832 903085274 742701080 874698529 764419447 964779904 56362936 356255499 400501368 838477440 376196403 506005864 19279216 112020649 839358966 922577369 486839990 591472949 523393911 762238269 839689121 938077864 20439625 407971877 939244353 982321771 364780843 724549567 200427473 355605904 672417555 971755479 405914531 927586292 651136836 675559316 446409877 994504427 364127987 481129055 581779854 995813933 98425299 559040885 605667785 752716854 629106105 747284815 569697321 926346298 199190457 783100770 228652190 314684900 270786612 786993614 595533617 970370210 131074337 723260493 503182446 955568584 339433555 910191784 454624681 868831781 167846790 864652948 737919467 941808190 543245001 843165955 446365445 728023913 468799852 607745596 564182308 887607488 41824861 344371515 456916706 695313451 928092911 933097178 763435375 813126243 218813414 812379165 972357765 988985818 296309223 693438125 881239152 955453336 504901583 793783727 13740170 437379972 627548623 768703501 320193489 497827728 628646555 968396232 876846019 922186884 872048918 873747545 212128867 628406280 807652525 933537588 728736948 773710205 971301077 984519400 672896963 719934292 841265822 979713053 713322879 980460463 11522057 427992913 287718776 699734244 836138261 867804215 29580253 940685611 73390148 851775976 753049521 862687148 2454114 461802001 228812556 805970833 902694305 998162106 548165654 754990835 600608133 777316144 113033390 738482670 254946931 336930682 236192857 477117562 345215323 418644891 771545780 782941575 257446102 858939068 189754570 397892410 55056289 349784827 270341375 538101074 884133095 933975063 631307449 820901905 107236029 269909086 757556994 801365133 40196421 316988614 555179833 700937506 622240368 987586939 340180589 819961299 452717111 736084689 97445785 950259378 93212809 259084555 398679172 635521839 895847729 986013700 493983703 892138856 975062124 984121591 230348042 671116299 497712937 648759380 16319647 177913192 888514837 965204607 445246500 524378514 462162863 712166643 94899265 795783656 212787854 990544372 776692562 959617425 783833242 990328938 659680742 962769017 260516844 401120680 886074390 915917027 245543622 594769759 144709228 673801174 500393622 652038580 70497226 153474384 462581707 559208691 306026929 325230214 536236641 732366082 238280174 947055401 954526797 965362957 336245323 339860460 829390941 978248737 130366669 773209785 304969143 895196356 42817840 939707594 999893475 999913846 475562363 782766259 670507687 877299635 869004371 870961084 758721530 932501884 621348095 940090334 509519850 795158455 904476714 938950867 303103963 818477759 485721675 551272364 545349087 898321147 61823743 284391070 126932385 816922493 960158974 992819290 584277664 865517503 102851625 341860160 382394664 545554700 819379702 986964937 885647323 938008391 312515414 777204765 88037329 311430636 828863071 987234218 135452649 719955000 702512892 745219016 200592 637181045 348586012 869891480 198823341 651071916 280646117 716026477 997948947 998645545 269841680 665813369 69998157 786765446 618965567 721931829 774535173 831218736 22273160 655557372 381574176 615338577 432635333 864339261 417928426 556777019 736307476 903592694 579346360 763412546 59275747 696632882 363755167 960108921 732976860 995836440 450000485 683970001 393455497 559263544 942222344 976553129 585172714 795078105 892324135 902777362 882678745 968488656 669857525 999073848 345483469 661262272 151776790 918938345 576752597 682514610 944232568 996455959 888844922 957306371 515004481 870930433 843109805 936476344 940777907 973380431 317374481 962793938 273135981 773278626 427725095 674762380 672518037 854972864 18691738 551505523 818067081 916830834 181948326 720757324 387698634 924446985 181551106 889304812 504013942 640827256 56949096 400717821 801757327 835251104 798950638 968635914 305327678 804500231 456064928 986563015 438404212 681253281 149573838 312487371 838661154 854340182 662021439 784054327 597462504 836837098 900034166 946109043 211824112 663572276 490921202 561365683 469168565 716703781 388310526 980872179 845947168 953200821 454897376 997443189 465364051 599165740 38453124 355975339 666342381 965460402 742308075 789915356 773339517 906164645 209863658 533880604 242634447 793851622 488260076 891518474 278103103 777870565 268799721 422193175 302907172 960460970 238232635 693617226 778465692 836616562 96011815 499532775 853427721 936003937 241530535 507914275 860449136 985168330 509415580 554577151 419501175 503002868 491072504 622589180 2545998 226663697 939703691 982420537 608499928 712907625 519342145 716404306 770175413 797965871 285289516 388203563 973389910 982301523 332464707 551165504 788831201 903261960 831975522 917504601 454512267 644880165 180180085 321722074 813480223 991972590 727705522 809147904 165056017 167396600 122448045 796317732 28937526 370754174 583157611 930079554 747765074 931592834 610264121 869217258 75121591 863890617 684085101 778523581 89883775 949623153 630220657 642519953 574093462 899118648 424381017 916065042 95210181 117187382 584456973 706137534 611141305 733174399 277350938 999289171 720830784 831833769 76372955 435901964 803820385 832843498 675748690 970168199 701283613 782520996 995171516 999622996 139688263 778145005 908039451 910898867 174442661 612744674 232705293 518157615 306053021 585894558 499863735 937439959 465077185 487715653 678733233 947117954 558469688 857085720 36619437 799942196 835327338 974840295 12497295 674707541 587319471 822961179 551735954 778816836 132147551 419180978 984385742 996772922 943466401 975126213 511339509 595846934 140304310 708241977 856816919 938839190 680881102 699503317 320257151 342555481 651799862 677957229 862093372 931355262 730444030 991211712 502707514 659080888 180535505 413023001 208889428 898881789 186446143 831664452 224595303 731927002 989358865 991663869 880669144 906421149 887831003 938417782 224324197 396214628 858293913 940080213 951673145 970655924 356235818 732624688 605106682 625174346 60440656 507273965 489321005 689287152 194269404 406401942 439610436 733842957 550337740 736677329 112695373 257912603 770035088 824860160 146441298 874240486 175828520 336738598 88328007 895165935 615079582 624387535 893619273 926530506 377366816 437707287 9228332 500022889 696977012 850076395 158725968 313078024 802466984 859885666 149702801 742022230 843123669 995220234 644940809 828856672 335172953 681851006 461450759 749032185 411640873 643829773 357609595 507529557 184621866 588516643 734770475 959764415 417955142 821380980 418373481 625429986 983689332 988220819 845618268 978046308 27028622 110433338 561998168 810716610 585807910 779917445 952747932 972134099 320276873 908938702 556429470 632270095 4441946 733337831 868399538 926219332 478713113 913934221 564333409 991590161 390382528 948731141 616675781 936813129 841472050 884969051 450402054 611596553 34188342 785070216 82437691 110102458 173384469 229519284 417616375 420861934 91880595 505846805 948753604 996168012 589572266 922352175 60826924 352281366 920717585 953921726 585274595 677417020 758153823 891174219 361479439 596067186 212991472 388223962 863075742 923399988 843822913 942256652 582615161 998701619 398023615 543467684 449963421 615127891 872008026 953609155 346597437 922787618 747623750 771082477 895524425 974866061 279722584 297938994 796645863 901915572 202200251 544805638 705514528 751101597 905331857 973054465 184768945 612507517 248846888 467003565 397884596 636127269 2091194 875752912 126923270 499844948 855630292 889005024 642265964 797461988 281715836 699815662 736394862 989402479 256497935 780990774 241364653 635042702 959824454 978263567 475574297 574150812 971647474 998288400 894253024 905479733 80503240 238860033 641690136 951858524 271226899 894583737 782553173 908805292 872257750 917367310 331413650 672086783 738246146 893402964 829452898 920932408 961901328 965094352 381247121 933902387 275405430 780806554 347052445 882438446 746802092 806033921 908789054 956063080 680653036 698723895 34587045 767265979 684124834 967980378 490669268 827435659 789059143 790376654 651220921 926784060 407014371 929902369 666591115 808847953 138491623 739888070 766934151 937832864 192381428 985319227 574116057 775099377 23623932 469927177 362198716 883754991 273240221 442924039 886519085 891695144 492560640 768857698 529421888 687970148 961111288 992517604 565690829 673840423 674696757 677797595 694338452 748890366 314768853 742458850 426422010 906840561 203819278 389104242 892354340 908100929 919169635 957879079 380863205 745470629 484783930 703901625 705657071 799755521 589138572 738038314 286693670 651883166 932098921 949385972 450065691 502935728 230636083 961480890 724170110 758902688 887999523 907475601 645130219 828202523 746216558 835428528 910039654 956721470 726401899 867918932 500148523 530928385 820751949 829238674 132415684 663454316 774295566 882911916 319338704 888814603 922033956 938285323 217921378 389417635 419256875 480051173 360772912 680596271 917660822 952666759 865179484 878816663 125269939 613533799 231098525 982826026 714718045 723414882 81441218 574713415 862862452 961843188 195728081 457392476 168760674 801900365 237372329 265679715 10693560 296874482 169695929 543883959 134827467 835779523 936866184 948148340 822899028 979226801 387687286 554623624 732178155 991286237 988853653 997484225 319983945 520702097 30601071 534303510 807109053 916668582 861495747 906033017 893739015 947694295 623350762 955893219 801317079 941763491 672241009 721707192 934363640 938557646 348914725 930323977 767571069 825628185 601405413 990853610 646789747 929699992 421759750 949253336 783281905 923482160 374379683 604785181 378915429 676260666 204532949 756037203 548389162 697179402 93201777 944963460 811859854 869817021 300669954 588062667 197964661 887923179 758493763 987864317 656035899 939816157 389197619 800275095 270693008 530545122 851965054 961917504 818434350 877621487 627989461 968796944 704060843 940993459 144435879 216387133 101597717 162923922 755850194 936553440 768319624 829028702 799576337 936440609 255392415 522548270 574357308 958423229 313364972 719943312 622995177 711108862 768285405 900443812 621476216 881020388 95969261 520238067 613729830 734003340 391342534 681939775 234778622 863145562 297179101 656528920 49859677 329987181 565079585 667599790 197053099 197814778 769885828 804737843 435881404 828839925 849909323 999125545 408173404 669341704 513720762 753669090 471342932 694888785 629473646 687414157 337217312 452318973 267240193 294161482 277290385 315730802 428885709 986789663 91798081 241387347 291675258 414065396 930912676 973567520 353242329 754464329 439307497 714139888 710862275 877160621 860588402 962957598 68553620 265912971 846668205 847545962 895170908 966595635 794004475 912863503 184376049 951090179 457008260 521633428 203068610 454711751 492130894 616050925 590376964 952666697 809882846 954742075 797252276 805828267 52329292 970281341 419037533 842085332 8726050 697619065 721395094 842812831 13301399 879343002 231480001 356029658 748966902 879150179 215287840 274638532 922739696 946999349 506006568 813562873 864431470 960788700 439017243 920466173 725561878 810008250 979882927 984960661 153069850 946375150 171014772 702671543 333077445 976131990 740383773 941306469 502039937 810047176 647821859 841656919 865753536 984488906 359230387 399991230 59418194 652966358 189805005 842655589 797362577 847771029 804237983 979750758 672855784 748483169 989505851 997957425 41779592 847644237 703336152 711215333 231452662 981568442 433975790 768359442 367713614 708762784 551972832 751516999 65098197 748626667 556213239 955749122 317275768 476043445 117943215 137575488 223180268 866663272 525208602 744175655 814891986 987025256 185817504 270716904 473213114 974135608 984858683 988239216 502096752 845477034 516620284 949781024 339163524 644826889 947824677 990937466 172483125 741652045 271031243 821830512 58959961 484387844 442193980 917605592 496513335 734080509 517197882 520346676 298718129 362139351 435271270 604294951 174614493 405199334 329469571 821893101 418511255 949269133 911570950 954971944 257936709 994026678 554255892 602488395 648565788 836115424 197932055 483728967 400939739 835928256 586875157 783408437 449434479 491692240 459596932 578790503 388866236 667548582 464340454 806707947 492764789 778503695 546325540 757108468 517588467 812872985 842629755 936233015 976232420 992058725 855525716 855665474 123687716 634191244 90941004 268566049 849795893 946823434 176655719 464297466 317663317 484717809 347543549 840538778 480512730 824657156 232032116 806055204 240558290 706405823 306879939 904306097 62349553 817684333 812614647 869345581 695140269 869447959 604313446 803275580 44911633 707960288 770107576 941707048 731939752 769698398 994636557 994966066 277227517 689158332 68720198 177380826 748329626 785271547 801207388 844036766 803751429 925969586 26201544 122512906 781102808 902407881 29676756 439825404 89747542 858953222 267013017 820922052 272388244 420045563 212373801 251926172 864469 198522423 77146372 406082524 675374364 959130337 194806194 314654712 163645756 929265048 837621899 975451333 132243912 493881826 785173574 828784081 625385609 762689024 426122170 780853804 704748040 862903179 969076680 996396547 202277723 855579701 251859685 605500329 15236130 374674851 975156129 999698547 234004457 760202566 226497430 620323060 108728847 923538340 205290568 761759530 540438871 608659643 930729541 996567020 223076964 697734474 405179895 882487382 252792652 372574539 803737675 934157781 679669162 691997950 341404313 365180754 699000712 839390189 349854713 636995229 46427460 671343039 817750339 944572297 18256140 257922768 460922280 464459417 631672865 891505881 677984399 906978839 218303189 991200823 530105093 769824360 63792535 838858178 422446261 958326201 985710081 997542643 744684672 865705270 179575288 515266897 502155144 557310582 835591042 905245776 369756910 833338534 935926709 968362975 398790810 874223945 329490312 453632871 651932120 718214793 119735999 423123621 171894041 866882620 80956286 253968508 355834900 497551247 167174819 939560456 205088840 777983004 200641603 561856566 838868883 990740866 613438090 801635208 873673952 968603151 170486721 246759516 767674392 892090688 389535723 844271008 792130699 927542169 822136193 833690827 541152195 821204111 519763418 660531101 943387984 987634002 781981231 844815720 380724403 390841508 591142103 794473922 743421073 796387173 535577743 835541436 97821391 302462115 111450682 385177202 457551535 743576341 164101473 353311647 42031985 927773249 815740656 885792432 838269648 934869126 452473786 634730726 374825910 770148537 756637026 905211047 429062877 600284409 767797883 854736501 423395779 635206671 418173926 456198902 20064021 761640780 387900183 948514600 890669852 993697149 188516942 358960619 420571589 898432809 715443003 969651664 826476332 885614248 508780532 545817598 163564036 752777155 487067459 978115689 860594369 988111134 294681186 344861542 703188248 923039052 57026334 431040452 155311942 723347399 781878824 850803499 451762489 982166277 115001391 747418312 17566476 568923037 532362091 657598306 951133420 991177717 658987064 662451979 933343041 986850371 305756336 487185003 325857057 943629900 918720646 967847348 211678432 887983271 298385751 854746078 971470334 976032164 595847290 814686266 288572393 445820195 965676237 970761979 605354796 803471390 33803742 69557598 501728515 761272913 455052562 511797201 30673171 464224068 47937554 731918057 703367987 819847948 173239042 693096354 620349957 664047651 564603580 699107575 601180796 901818978 655294247 777251907 905708338 908626546 50593446 460889621 110532066 939477387 704839896 944864364 405698438 438914954 830152757 867702863 582222771 632439592 200709624 733978352 280243498 488768735 939087526 973042696 749514179 837136883 714710788 940008454 710034821 882805459 692976780 904088936 431562966 796222197 424829015 465218558 827027284 921720527 714769310 717997636 652548402 660836649 574812445 913929025 499948518 920041556 31205745 737932814 381720860 631715446 63315325 604097084 586755106 669707260 494600442 583926082 98072103 821378392 270557484 453499913 918577521 918589885 627734797 697978665 8147175 659733350 439182483 890530684 239223108 490595242 405702901 845299299 198643798 238694306 850961606 852008404 374785059 960921824 736746297 993540297 295873965 348177121 247150857 745108937 815260173 861146057 969096779 974421740 333894278 543486872 992554214 997596440 839215353 997591072 907497971 908585390 873438581 956667518 750053971 915007253 382041207 683357578 885281568 902787429 880697358 996010756 445475721 498065198 628711735 711142025 980905941 982628957 893099751 951069549 178878774 748671154 688336578 950142267 583589347 717806194 499359800 531628915 281254474 785526218 563587772 994901110 695983862 732452394 909582729 974056760 305642221 886863122 739243171 889386888 324638420 441897693 868101516 945225724 332271679 893214886 185761233 773334970 813077995 824214034 860358237 947854365 827995401 932936212 775662029 776912388 765070260 765996791 390375053 662957776 541967278 751275150 891521417 904558969 326829727 968145387 419852985 657606400 336252775 620931101 339564147 760375430 963100245 991611990 823493532 880472917 692453969 985978601 843022283 918066169 715088811 808047295 303812231 929620467 418898261 886925093 89374627 333824869 592649422 997539721 246449573 594208038 489785293 610999947 337768028 526206267 972886923 984527238 959772318 995155387 241022584 324798030 817280492 987997066 95411144 978484366 509949102 658753062 383877482 415234070 501963209 556004778 924389152 939279656 890196828 928099261 696530926 811513935 792463953 960168505 550639729 874060076 654089894 964512936 590703672 686812740 32234194 494378551 973642740 992320636 449931212 880143422 682767292 920389466 208300932 735232711 53218102 575373387 140248301 567375089 849682670 962801070 207331777 730136081 428644066 870987785 506463621 806702327 790857112 938340633 693269016 954169143 539321606 908340552 423289450 892227498 462823085 918675901 832801740 945194139 214664593 834261065 982540135 989158397 984858858 989978040 292996399 592877288 412431894 749855346 503994821 983593150 345891917 361090469 486396443 835286834 844979904 847741330 667774857 975235593 355039320 914728260 430798360 955791373 501284640 616378977 156993448 360211634 621887901 733588047 508107309 934700614 496024842 635513306 962713827 986741748 214160851 437984683 755805355 786500579 323970218 355120786 447864391 508789094 411889318 415416369 711391592 884396477 536431146 878849316 745524613 759459169 239790431 707183998 987902536 989068380 303452751 785497479 63498266 931730791 589653903 757695576 693051206 958522421 307924972 639151597 137276610 383157651 304403999 779120471 390815596 555684511 34478124 677669009 559444991 596242201 570086575 606780084 297819539 791106876 238692426 546746967 702354461 961037493 232448430 978262637 249830326 313830009 229236768 517378662 176895390 836389992 360608010 956765788 256374417 323382550 311239591 655515314 8610675 709307898 809579312 848558272 99350459 655924697 281878697 603475653 782901695 807142931 287224096 509267767 861239473 867041263 358574352 972388644 557553832 935700118 538905042 803410966 875142383 899114317 132660111 539370702 716272950 824660408 235538426 938529870 337792724 908152704 787147363 917938233 464111967 753144733 869638527 979146746 427640149 560034067 349847021 439318012 112690551 548256426 26725113 202112616 399531564 468242287 911566821 994198473 87764584 835087958 540643338 852202915 386219723 457197883 589635493 647031603 634185193 698749609 228007317 488281405 866884204 956221739 705406478 924791991 63817732 937657251 102701818 225214300 846901994 944223767 413897983 767122945 170883259 440034933 933715667 955838355 833232865 928990556 530976397 926956863 732789641 778495561 540507603 610873578 248823552 289310765 451568411 539190685 832693062 929367419 715181303 808599086 124473061 389397600 413589661 737739373 639076692 982212922 980787975 990982875 864780397 969654363 672998696 838907223 379839689 634674212 503414096 602658049 959536838 959665434 449959702 702524202 464345768 838653083 392303972 730011574 779382220 956862461 465742907 981113973 149294763 679198809 852222183 976775889 487151137 653233719 539361498 825224818 407476602 770389664 30178112 566347737 307615219 817076223 750853428 944779947 56950662 801397167 194695409 359813202 62675988 709045813 779081246 854814771 851794986 956666283 578529091 944962931 850307792 958771062 867623833 946872453 266016343 753880115 290557758 508590833 348540388 352490844 717023751 756717391 86348968 694507662 496021404 866019647 777214400 791705426 702335095 986409908 717496098 919172507 97295357 741585795 739177860 828688332 173913962 426053764 701021414 765433625 834409253 978680693 391986642 970181212 661165700 925544273 971037430 992087485 664855723 923887636 145893986 382369760 357524199 379957122 780954395 821101796 986581985 989186551 591788241 766188590 418670180 586995766 268461021 431040375 129850801 627292814 287240577 619547008 410621789 440649283 979060771 980227015 290806467 492580786 146068076 445888530 450326659 519364458 63672266 733530997 393853568 941611447 737174159 858594500 422900777 509551077 41490612 987339390 503872545 972098718 952783127 982880789 772216483 846137916 72296710 573657160 836248899 996935240 703192229 985934859 251406241 535296016 268685755 838751972 139986468 468650527 60757617 895885204 882840015 892078107 890811112 924540513 160194457 676737447 794343504 800448957 676898453 753808138 247255666 507738258 500944029 973458758 152138964 304870896 456891317 572796999 432906964 912295903 889836255 941536606 5987904 705998299 226170948 724674762 109735285 389230883 412938634 935464696 673834689 769574063 762969984 818122709 635067265 785593984 131709199 454095623 518429983 545484513 528447425 785222182 553246370 840247527 160021695 503170265 669721456 987803535 93064604 279367836 692925601 965921237 176247161 354956693 378631618 516269922 268599944 643309724 371536614 814483298 393111890 446027244 119343433 804313624 980512558 981175185 348112809 944254744 270321127 821676446 957835539 973690687 315877409 786392318 452553187 576371947 161744912 695667460 402373633 680442177 192270126 887594750 584998869 658209969 696533318 863736066 955787899 975376576 549679907 597022863 808612318 947581705 341680597 472619169 414533545 627995979 522607222 746821085 932549047 945255960 370690428 600288260 577732659 829572937 831264077 915070373 800474167 933153156 411489397 522368045 921270110 952907755 882658612 934523706 4522126 857089527 427472506 833643513 863293018 895395263 658519914 919228408 167416161 581671504 31345133 223445358 878320126 975237644 439180558 792477417 212575061 740675500 828298768 844983011 437137012 889353707 500176858 972281989 22175731 242480557 85029491 661917277 705266459 814745929 387589813 456888601 872488520 930429587 779141053 823377054 413618147 506006758 131803221 923535950 98581239 896457001 156979529 816950618 599571357 793082702 600687170 690723455 414776216 853950471 338392690 616405718 992018884 997305091 592696502 731211752 797729740 931579550 831060782 921517116 729853358 740862569 215418688 717047697 117418193 184081269 73590872 497731240 256438761 263399405 849262516 955876518 466174553 978887156 220762829 274079783 296877525 852465307 700631276 705669275 970465881 995749909 717404784 754373098 587232583 851416075 177490301 633665318 234433449 567369500 492388717 579644617 514879016 840651088 768074437 956288039 702942623 727963354 985312385 997698783 319244262 591281343 941506777 953360590 249143192 286199674 157494976 296425669 444279252 753879429 853102531 875242924 225060111 366813527 397672359 503928474 859776988 919945650 812688035 930955250 229035277 375444515 740128604 934587811 624900308 650625070 541933294 542474650 599338226 767763974 208508970 352752385 811204091 983024925 837587118 876516114 216249936 983042992 260903196 984863896 981570726 988408718 240285764 397255893 742291455 911651669 579147906 948659026 695397499 754667276 57458286 847679586 364721797 370237249 737890782 981043471 608584807 873645755 215941694 855072083 326393189 747316928 468867942 863177780 107352493 974939302 476747624 831126447 460991120 589325229 926151022 990700930 745427568 932915501 769831936 916818567 590213220 875495762 64200587 660521413 148134757 988218075 31890661 111233177 511965089 704116335 210655951 480847448 988752855 994140881 581557582 883680195 437790208 897367915 139083535 182415469 1576847 455572188 226947360 759534965 832147742 869059975 221899078 584742470 353407959 366069182 476751732 954122995 520183683 576646323 633404000 940249235 457694454 552360539 62844890 396274894 412780297 481793070 561018529 575052675 522158825 592571482 919993893 938868712 755201285 759896363 579294751 697781737 183558901 951988392 688256505 739253315 421857249 710730221 716987780 902505892 696703691 873723280 951620325 975809231 970003170 981173894 252715148 906144622 57393044 901524155 601728375 999927545 50290844 830794383 672380937 700716802 65027091 698470094 637693811 742312771 216258270 384492873 577101246 616128121 151521091 186058128 88925118 306355500 122750458 498560052 477006003 975741629 514989532 804199709 327463058 561539335 74212686 574069664 546190744 665746049 189929105 349865745 393622813 883324542 658889061 994508642 797752581 990497459 714899908 898468660 465473650 672700688 686683758 721691012 330009572 548736318 62605117 812534655 555504512 908681465 981216792 994427835 594557637 873720237 510083788 914072489 643969723 687253855 309828606 826719609 945173503 959335765 128743528 436353873 511577946 909680493 690314626 739396981 256244369 456601465 165580718 676362864 721706911 841732448 835608240 905307010 192367190 266223629 751419747 861528384 911502432 998723157 296755742 841175923 960451187 983751146 511762365 751815785 698270555 801354660 477229687 710818188 254852377 690014848 228804019 972860375 508662946 794665665 687742843 699678458 711732620 969240826 464035645 605891088 494750414 535814358 2769387 369375244 283585208 875673422 667724784 759414449 678730385 750092330 371661879 913700415 152876734 815766818 712801125 923629698 863081834 898989666 438736761 444435850 632860849 959454084 221882862 300306157 806050261 988228887 846389238 885833109 320493369 458787627 274471055 526219223 672104489 798130099 698221609 703175244 313444983 338977064 428132238 800166091 263204927 844498859 913957590 977313472 697912325 949437272 330401512 600937472 515836897 858671436 160250037 517720008 185589816 913506680 605007411 930379570 152398612 757556265 845228686 856902287 14324483 189411736 727089376 732516576 965486842 986321031 615840459 702514513 841692501 848082456 916086826 987260571 152008170 158732001 583851986 947577959 447626846 497053312 468037929 802926650 298890392 394407257 24897830 927283847 390831683 770660825 365438839 868206709 790372616 797414521 793523332 802800437 664553987 668430451 665450819 752645126 256964059 613820482 606093904 837193111 887920275 994855760 261272605 830654248 901617861 924584486 314561674 847463274 958089872 983747838 161360147 177355910 68997657 648597089 651715061 774492956 439648506 440780979 271909791 821848263 61498862 75108495 81177624 676414114 50273199 404956951 910070050 970380031 664233991 811506387 360778337 575040251 795970276 823061645 356447209 554155491 662454434 930162819 875397771 984033128 529307621 681226318 792418159 920224055 655702992 996650952 574700964 933599930 784472972 813793977 694890460 877233172 141669753 478572329 391353102 883483367 462229269 671420839 635051852 707460804 150142563 274255527 209406028 664805869 171275114 851442166 331210595 750563807 12206325 658964241 718313269 846051267 194341641 535930649 209736234 324017183 225479722 520312696 575783292 978776430 263667278 872214693 4834091 761923521 75915059 881454178 417126909 803361734 162886390 774397290 78655133 151953113 803318831 900639613 785948987 826008583 679790174 926336095 63569198 477406906 668524034 795025119 604600247 771863394 387943988 395563470 474785938 996594817 492648901 553199878 833410723 952179127 661483963 926037952 576762569 793186279 960709292 991519868 259179640 723590808 273098803 838884514 743222424 769998366 702685486 766516506 319893012 657138773 916741978 970159782 462502660 749891288 410502259 551928133 297234144 405565522 256121904 322522166 117840537 426436906 255648523 312773883 443452309 544102966 833643230 987080324 504478117 973507267 319581619 882579201 13533718 887774449 107093763 147403582 901689413 913558317 522885401 620008079 270449579 708444214 342240086 581617360 688847453 802340226 322467667 869513360 231900573 647723475 225582679 479924600 954271810 982022829 940672164 944418253 106135220 699226922 941978987 962768174 519774043 891086775 530116289 720108276 981835758 991215938 214830264 349853286 319366491 330060726 937437139 943858761 656039946 999767189 194790018 750353614 19019772 868064632 291852000 627470905 707062516 848069642 518898013 933914363 714465562 848759843 589133069 613491072 942248764 978209119 656612434 695035084 103346194 203363600 950133917 962570318 59907721 316621263 172468272 983798032 87737905 369442257 390423956 910704487 595494047 879479521 625478128 806250308 293976021 401467450 202525908 254979436 461947578 923518190 776522235 959914459 657840636 861578734 956013106 965169741 665406338 958628539 68495516 724075302 946581425 990652619 910800553 943257237 383113950 720182004 5530266 389004481 963466533 989635384 855342326 967398419 705272662 731877530 943567239 971128451 595682017 625617754 340703079 782587744 801155336 839109812 337559246 622299748 532220000 917013206 290944201 498223622 130789506 427277078 493330223 642632881 961655093 972022591 464064029 693650096 37169769 907290222 705902978 821605093 543909482 921067457 452127562 464398571 33718564 766754752 423797105 755957527 993731648 994231336 187459826 548635127 518673243 897987392 900393422 998071070 944425014 951872808 865319184 966670470 987166184 994123678 334360958 575736256 83713215 525074145 496288626 507225361 763302003 992470251 65121983 487913828 229725517 748275389 132353852 472485472 235974346 238415778 721000536 948060346 192979243 197952008 985107443 992826268 897378768 947254296 315966434 661459994 207731734 410280918 993779600 994242552 106123992 348594737 171633932 410785592 759660463 973550507 535558065 812108270 639679078 761843948 642809990 896462625 986721541 987226706 421281976 489913732 92690060 316258035 447034557 848641051 717756015 840530526 840914889 901544161 475080961 854423906 1759788 610085148 876292775 915772525 894225958 997580844 559944253 651707593 659410654 860891117 618362217 693327728 866955917 934867383 232045285 691779795 833484549 964141223 520204447 953130894 625229079 663318266 562982226 979713198 347860359 613951687 519804594 667336162 243429457 493412344 926629841 988202551 342594348 379369379 174170024 464274700 453244140 578947066 885956459 967918493 51645191 944969297 367631276 878733873 271042763 949341603 244834780 753427472 194474407 614608338 322448355 893109764 72741373 839761281 114575995 995112816 314927658 596503631 663245997 912350668 216431174 263198708 786060670 909204874 934325164 991473023 3282445 704792857 285989812 641373187 770421450 816818854 125959851 897689359 583876917 626570905 149847090 251492588 329657543 887322641 184756277 932722658 285893795 531297924 998104944 999826086 98664367 467958692 209083259 347912560 946312975 957107370 91255704 641687145 686517182 851119483 933716762 985116496 554151272 663158504 40665627 600263969 836881696 862647252 610570908 732657311 231314412 421524801 820460921 891383018 137430246 708374581 746533897 794592611 369073329 672378487 246556765 632252190 800266285 878348239 778647769 905281162 666299462 850612180 55515694 501326470 388478551 823235250 97986434 152688393 344177890 828352832 195897749 507220860 377794314 492269113 179458814 548458254 876025974 963272257 962675792 972663828 731214352 981192369 22642186 640631829 239836881 545682781 278724074 825727943 366610041 902622900 294922086 336469102 994566512 995465194 969695738 979303402 824342527 894682963 290593132 299947699 183444231 395343871 120892544 564665370 609519641 782628292 909855805 980888901 425315930 710432648 676279467 839314229 358703284 570262145 553323422 646243647 526354813 851336057 327675504 917935620 525399893 994802543 478243104 740615620 745454046 893916222 170909639 561510883 298609733 583925069 898536021 908875367 607250613 791919522 470463083 626746697 450938962 842362825 401865591 941126426 637226500 823033569 803495828 993041592 486718513 634261115 300548608 954644787 837805544 914649117 405091400 939213248 795070690 965745392 86306091 899394726 677589492 742061669 292778326 724475112 412780000 425482985 942947856 949626112 99984336 230289701 911010024 919555032 920104883 956033746 610566122 961905479 952656738 997588692 410612231 707730585 490955702 825054374 100991776 774145350 132398217 421343147 949305331 987811659 420928894 951080453 942554881 976060807 65965221 80023368 976055121 987040647 550369235 709543909 169882292 190728703 59745967 550212706 206382523 784562495 94880395 308998743 769819255 924787724 980950113 985635061 566396541 625218610 342269891 604534779 406624038 528035535 263758939 915186813 393660238 661718076 888327322 975326473 918792309 978947231 116224617 417804758 830255698 984243567 744214307 838344106 96096 567023015 751392267 903410206 733285253 827237605 645651441 824334518 13602968 906189931 35638656 935417642 328478096 720744564 895578166 963004107 515982112 659377652 203398741 764026729 727849743 926199112 125369514 612769198 987548033 996274802 217267049 687472359 802633910 894254330 526551671 836928744 849658212 954057768 934540136 994343320 696144720 833733436 124594896 986928963 156882534 809662877 153861245 650685713 183275032 481355315 336163054 602520125 598567705 606444753 110767887 191632087 633841531 827817295 916744878 987187552 116488823 774887927 654168097 802280696 385845317 809572434 11554996 174074890 106670600 513929291 118389247 317403277 432697188 831124524 24210057 670931260 44880110 912490214 606221736 660635874 966074312 988717260 836151259 867291901 217582597 945336221 133833815 471760340 86560178 894769496 251590803 596578229 125443462 606937470 770326453 850756379 448521996 960326792 454847093 923406743 402623985 472859838 650363170 916572459 268647760 346936599 595062866 636419997 270944487 841375095 511490818 605372979 187159578 831664952 339999724 429462844 662725206 755987457 793789738 975255241 435443921 788269142 662142901 925477688 183970812 764391495 485259710 898330837 18963316 896132591 344054425 801255030 93947647 541798891 596479188 640390566 1497679 880754548 964543379 988206910 119097844 967609890 592220444 901971220 725138229 885389930 750847811 810939848 776453897 878221255 962392828 962723629 819351364 838376500 461209919 956854375 266698261 681318484 428722266 562773966 370535671 993011445 280661263 790669642 176740979 829444510 53259572 141631861 861336187 863509500 73090850 997429741 497065890 572618036 569429839 602234055 254004818 804125813 988835545 998537790 269236129 687109999 625860157 879340100 174049991 281446579 847790959 983273001 130808696 923483503 785833904 875008936 906802757 932114086 780985347 839210538 409253691 902007065 679086660 744971382 428225422 651572896 361428819 898551858 465200297 672907231 855779502 865078545 46785861 708285846 964970930 996582130 766986614 792952442 219302692 288938528 412223733 500255470 636806122 701590996 717368262 987126460 217577260 630828797 69669189 791759051 403425770 568350802 465307803 910016910 389123553 895808955 704047287 769113527 354707292 889496279 181173371 500141492 150382096 854354284 152895402 944060088 81725706 889636534 603158927 933003403 812871111 920722325 257311685 532584717 245959975 699925232 962591262 991331697 675599245 877969281 519753346 933507355 626921718 914781853 452552708 870086990 626243828 927478755 758258124 772905951 310907809 993645377 804041567 895939827 863837229 881864595 321030908 904104414 861128176 946239908 372863538 913638148 211653204 967443231 941455701 972289008 9535151 434796962 41279027 660394664 225018059 492707811 64924574 770514925 538686362 949564666 457028133 639621043 822079956 863520146 509918760 621677692 124830479 907469776 995833273 995883940 854973475 882654354 222670750 429258517 529630165 940464391 288065130 988622131 395189891 737561290 199439110 973480319 375831293 478425677 642971687 789155270 280822176 392016314 796918859 963156799 171265835 997481011 847734308 902992668 275029685 615270515 39814439 466808343 10202048 427936796 324187552 625764203 720131801 809891909 553772576 879674735 598559897 640279621 763854606 941932546 695633487 861107643 557349525 926276843 392153646 824974535 981100172 991544824 259530401 654015904 709041137 856759708 129133258 511870099 872036532 943547343 233858555 705616236 167264281 541242485 975179426 978023732 779656343 893238401 852429153 983683785 693871059 912025618 39548618 574036967 908996242 934469326 66817424 931330206 277032988 925294177 987262459 995665173 889755999 899934633 564130006 734213804 173649709 233927012 739561776 993728717 701011731 944522164 278279248 730067406 568433022 721344849 406666313 957868674 400498137 640662374 448753995 657861667 513146893 811734586 439020173 743376478 495593460 820251298 72587539 630825586 931594093 960183611 397593817 621186124 617293507 720302231 897185646 994496541 261207139 417623990 404173436 832180244 347550381 407421015 361263036 959798746 410174947 624238928 21124931 850207175 770254768 779490401 493528054 685908798 898480588 979950390 546444962 589961394 60689708 645604674 637793166 946548692 589088401 679216516 797321561 883774542 234226341 424131712 850991753 962995153 38711825 371883126 913960896 927762507 98233815 854034914 25304364 109083664 256255064 487001804 541526437 985271480 175593173 659767229 553551415 681524568 815727167 850488163 112047719 794588954 104014934 892040718 679673693 775780390 786097043 806139559 794709132 796945834 367364758 777817319 833863388 910275146 156977659 228855564 982505823 994705464 766365143 920247246 535809429 985595475 733559161 780731282 938774726 992436295 510077353 575469015 941724002 993489692 186516952 452487781 205698232 397288969 320677027 475990691 683530975 776453561 341378676 617768765 995071669 997562911 569631114 615014655 325023909 603783474 787799397 847306781 185201249 466171421 268615075 456519715 80595474 279882387 201722682 790116455 910958938 990321599 756522270 868698084 820277150 857202420 820698147 993680047 235324265 986455856 394572340 938583378 869470060 882485755 910235048 985153415 315287734 646859638 679318539 919555550 936979366 951653297 321221457 362727496 385311064 843598625 459357809 893487157 380853573 857842560 246978249 591502577 202171675 835290102 815846050 925880316 83811581 224759614 290348238 477109303 29259553 226089023 346093365 975672583 124991852 848456197 402015652 700373059 280041617 911515205 493218771 983759014 669148675 894930947 691175811 878588535 331486316 705345576 241437122 790950161 531432405 543284985 422810513 800462876 531691040 716900886 233650462 504468429 553663138 644988878 476513228 518189235 609581633 839046874 500107189 806473503 934305203 975546765 197714702 921811424 848296715 940604842 897941877 915260685 421389573 929077664 20975443 263921749 501752434 882228070 816532978 818060200 280480678 774114406 100002606 625718626 187161614 433137180 191323262 643745844 614833587 910485439 895985705 944141570 464431729 512234975 98802409 389447639 89186882 247419444 428229376 945360605 798823412 801734793 325127796 954445884 309371318 740581603 744944658 989355339 971823124 995033813 422895872 883024681 60019268 846193358 420687317 881939734 314886436 685592699 386119562 546591867 958167896 973977683 716966271 786249346 22488233 780708945 397313772 950117470 910280514 946745661 908763570 987702177 875231108 938764191 594344759 770819498 341624178 511698488 930301060 990503646 822222646 902872786 978774389 997918550 157959579 704464831 385852835 399215657 162682691 617950456 360080771 396748954 612886199 661444740 773651966 826939838 785005751 954118593 478244735 925702830 184028207 507532250 247862243 496145421 696041097 798959225 201580948 824903259 458060571 940573807 536867411 550392515 724718270 730250623 259120955 362419348 147803281 897488672 772806858 962266194 687002890 884603331 751909356 825555455 19170807 528674517 934053467 961970723 156599390 279570751 391668766 440720822 396436101 678032392 628158610 749151624 387118693 479840848 570628079 947036272 433300364 504974444 733423655 756889955 987165556 999930660 461992976 533606213 481684039 967587691 319066031 727420388 682178496 685494093 498777111 905221071 166919042 689135969 718396694 903132884 900167069 955355948 825439530 829941139 698152952 729995107 256229271 517267832 287547668 464324459 74999296 470648096 866470767 935980059 780933626 996871261 703755748 863234998 106025060 387981323 254470402 603616731 371942929 742004247 704104857 978336232 803082454 865076578 997536439 998099107 972152445 985807987 392766921 572006087 903908277 997529654 53167099 281406342 924060477 926508190 594775117 780739984 159834510 713378348 906013871 953480697 23279271 580097162 970236705 981632953 438588370 989579716 805626395 853678570 211355088 797641456 67726487 847656785 229801468 241820264 857005120 892448690 421578517 879354852 479359915 676450106 71498798 723736516 442166347 660203508 574823000 858475037 575984600 746536933 789244779 961933834 272755780 599614530 137201604 387066743 210525188 412186529 521454611 525761620 200036229 717024413 830057465 975879886 279751568 899057724 182578865 937570216 57749207 317891791 611569008 998422951 847028952 924087554 805239898 863779122 606959816 796243285 893514958 927339871 835438763 915229060 654709507 797795956 60911226 817601347 776533325 940841464 576624329 865930158 551683969 855714535 112421797 633209426 103393082 871646663 930290908 995703660 912232750 947072242 937285941 966888975 232833758 961665267 786168193 814592853 210521689 418571557 809665427 812273041 173863929 282312994 790367086 798572517 744752159 951140077 710319527 935930185 26013164 470811424 50782876 97815726 585819428 671925292 365935256 652130617 910793920 922563787 379882146 622874707 121677775 292286471 875685391 885390212 898839381 951817975 243084326 733992190 19343399 453271331 342288875 694714071 37514480 601093064 862123474 882957871 446735002 998191765 659747207 944477447 856031127 938821559 753186346 893550076 94656519 541170642 798717146 991212219 68791177 237457512 818066602 825969994 649810976 924509581 831353059 913179844 830680056 834588431 963063932 985900429 331285857 357945795 941765743 964793766 382889023 720130834 144589351 364325694 314306127 760436009 662404881 772415578 560698082 577490604 623167162 790991221 852870131 893245696 181083469 714048800 459879257 579219965 778617081 816418398 1539923 221229049 48151596 525106404 638457042 924026533 592856114 720815154 7645812 16582099 659176528 683769236 259484727 308241588 499308676 613759774 507016433 842823411 504922523 744616255 197384265 532437136 433715102 662098838 801447309 872369950 103804726 104713032 646406017 905079814 354032176 871668873 217162691 882393004 695453351 924842667 714692217 890630644 448947115 502720066 686662785 714663179 251057873 981060846 459875230 645149159 691625756 708790307 367867441 528953327 337799740 732116202 303386677 862469472 246944197 355900194 58824146 420381892 443724393 871220892 725137654 832838402 730308481 767930042 131221133 146013990 682208207 817867793 651411619 665539809 311699335 722447223 966978015 996296527 827457487 985194219 720321705 739368252 623092079 692086804 414991727 609525972 813741819 965899172 63107988 771197162 550559689 595299500 958741989 991911777 539752460 809546948 855063909 920895451 118575772 216523875 614927046 731245758 391219476 633431694 915328909 957984251 69357343 488773402 932744752 934079851 277012172 405061822 494622106 871186236 914112012 974622493 303689140 789226891 572731993 825948329 585874831 910557821 537651566 742491303 61446241 619721572 106132433 836847050 810396814 922107514 352934354 603329515 434591302 548071509 424485270 605296683 178495150 852521410 545479754 890955572 164684488 639343211 870996170 959580486 569493799 627039756 250295497 446326573 689545037 954518659 264178674 266398292 618033247 688141070 125853759 839690326 803630618 949741513 906458657 984665704 549834723 875916827 471396012 976029841 892036691 978455551 889415499 916695660 975824977 992357060 762173305 840235265 284848550 887720012 618547920 738384152 146216364 630579101 424705097 708732984 576538111 644601986 618203508 892861151 196487627 849958239 132537212 217698173 779799120 951272222 218131804 820925925 747466680 975898875 380991183 900937218 368097155 654955489 774184570 960682000 542679280 929517260 33213703 234279423 486138926 796136129 717275527 909455161 389798621 792644505 652443415 768981514 258531839 660344543 386902198 594451325 84012519 589134352 341363225 952007139 613907805 970481439 671636242 861189270 932284088 973732953 850535927 954752588 440962179 991851319 993660173 994007549 846137503 891546052 494629791 895151090 451519378 725503465 33727852 124882388 855260838 973730539 137796991 571277094 672101614 767378479 825771459 946981900 516838581 926236510 668725212 685801516 257356312 324560442 402201336 466789425 173237400 248263625 77523489 122539215 23370566 411860575 112147627 134345250 670247214 749606760 714338594 748614625 246362198 599671311 721757408 751581727 602547805 761974311 549029712 924527579 187669977 232483161 357506050 877231133 550774528 636224917 202887233 585146106 484533600 923227216 660623403 869658983 684391218 865826210 593000162 639377760 733743793 967140079 934676812 960899903 913884073 945348732 377560206 594587436 188067901 655459151 750635103 791309425 784879094 930449678 79021418 922968398 261904942 715167774 205315030 518979234 142862443 318680235 361352579 777933649 812700921 902329366 118996577 491465560 454158236 556665539 21486592 815478873 305558293 613012398 105774575 889338143 230136202 764499870 952785685 982925715 617675714 885397299 831241360 911329269 410826291 807564963 403644054 593441959 945454541 966018749 327868630 431576974 418678260 518265981 717245175 925056115 837972418 845473971 721799273 785789901 522254770 715045042 463043315 469575710 581822546 710228342 791540763 794176179 378184489 563964970 230383677 989833725 345425591 809716428 549724883 981992829 297463449 933690831 645952710 764363989 419131009 831921101 60010395 514260526 14489431 895826995 962094386 965824389 17122790 334359382 501183914 849078294 329860595 948032744 891553397 995177313 233996765 813665205 949388493 955539127 508170828 787752143 124871397 756893685 501609267 502871363 492077793 774843031 716132072 733155213 184930308 865782064 779126541 809275189 160432644 956871975 522519122 589378518 971911745 980656934 154063608 731208007 858450641 955248516 388850122 388877332 297350172 998204395 970163305 972896676 745442257 912252875 203748198 637285605 200070263 925181817 148017612 182516178 150573242 668547120 52413268 237992587 785926050 866624244 297621705 908293008 694567118 903946030 563708094 689235593 668882109 879627515 294300369 794714969 973246786 987196490 878862715 969936193 626276884 940824505 164493119 510644076 108012751 327579529 560913569 806367273 294835474 722729234 959754532 959806415 976970789 983073126 173262848 370212299 38535198 477910277 599106922 699107471 333325862 570979731 603860396 742566240 149818834 239907371 85436027 886439654 716604187 897592082 411255717 810683010 59510646 246309771 72927505 687884144 125314100 516625989 25930520 355553799 222684798 874727249 944637716 951870546 696794557 776432238 356487945 681335011 201280258 846434211 434581426 801977351 492271221 915837068 266108233 377245215 11353782 88558572 191116086 974118077 678000650 926498198 716349152 765310758 540033492 689496600 699336344 833752067 452794093 804592191 659460783 808956914 252400812 383607873 589159318 706408967 588983209 944888166 277485000 513435801 68265202 688286360 478876982 874700794 731997107 911902551 874853155 922358539 222190998 743153797 248824412 945657560 432862437 546909349 317432296 629313346 517345928 715350461 421428125 695671897 433329211 834070830 157655004 972162393 951139278 955083883 794137204 923346852 514991817 563314344 673155159 738633624 558757082 719480726 734581212 962386130 834601868 961000270 749263174 816606701 55388243 705930608 703897144 809006873 868887812 869115071 595438206 793595280 578377752 647586425 12191132 243874533 483462717 707485747 760286908 790362702 754269756 783672810 670782215 969905389 749147134 804532417 488582257 997377205 760471285 864505603 986186813 998776729 932941505 988784920 788910748 845095412 952854963 999258355 356325512 892806102 841059429 959285628 936186266 968065970 554655746 877174244 774589519 906592146 778258761 790142385 729145019 898573089 67751289 731393820 250590160 411114312 45411312 161307129 882362670 990375868 363738814 869441735 26992453 751028673 299969026 654050757 218875065 694405945 18417349 927165049 229903983 673502681 229693250 438165928 468603533 937934734 890365440 899767086 99853167 227960969 295628552 751103480 403511670 603126030 403720264 590212482 841214912 965975776 145932648 623736895 589043880 850912235 128242148 228605855 244723388 695377036 444722321 795249547 46944019 415689541 614919751 801412886 548770220 622610826 445002903 907785065 669626361 820412213 469487736 850648615 484487399 490203366 374521301 441609608 862458639 996697846 311080551 926729355 604134793 859810881 845367656 855808405 50150004 297279191 20815323 315563514 545873002 635269727 464534885 752149704 558645256 666590970 622111394 653092728 136334833 495085073 435273999 471065621 292280063 858242003 38460008 644690703 27863264 309314069 268508368 474196075 646741085 815529498 750429646 964676901 662292588 837799411 229309418 926528370 104728788 957080502 363021500 956745146 231527828 333639529 557827665 751251783 463518102 879417832 141837977 497531975 349851180 566746607 921769301 973015297 649763216 957660092 67453291 521804441 497039142 745142662 947859209 973725454 116555382 568916897 348100394 964604112 741516602 874468006 841467720 927721274 515748572 911940585 351028081 362441611 700437549 970757667 237241697 666217519 439107868 950187383 801138383 850392047 12813208 335217697 556424486 955519587 639307097 784155475 375023751 914507835 664184298 666798119 93529890 612260743 38658946 160109802 263308969 514818922 591575219 622796178 44106894 792679699 560299878 753154673 912619842 932581773 606763945 628299389 117769723 950803504 541985741 991314356 378164850 694369092 450272131 628682777 547312001 894500471 402888801 901592976 293327339 402687173 278781449 508804475 920558156 940672676 294624565 527168587 643782561 956666857 288153411 832351883 304011792 425273955 672270954 908638147 189994599 311989145 284695713 752328810 393992075 401833541 208575940 698480624 404857216 447362700 56193820 580430897 986315826 992033440 738404293 947458908 277921417 832997710 740108732 806049653 756273192 811773541 275266354 554531283 73128195 497357447 560457276 770737103 633020296 681020641 586014222 941723062 445236764 494751212 286812146 420549287 975567605 992488313 573431232 901243390 520245571 812964477 496510641 566797092 277632693 494140846 237884411 907694030 262740857 550254192 418153681 819002520 699106866 878489536 63215026 737842509 480846600 484848369 960366791 980172663 5825511 299514406 945565241 991656230 71157005 323626263 812121753 974591792 145932579 575458189 198872162 909033933 92509595 218422810 790787482 995924417 874819867 899983480 694619123 919416247 899726859 934879937 985013916 998843588 274940754 579626340 655340614 746015502 813582679 840876115 721296913 810713443 648792830 888748341 940634838 952961416 931734350 987735020 320954855 614805306 327054189 944302437 59728741 834977502 620274847 730962375 189317367 469228263 612341997 740802085 133767621 383093331 62654198 221126279 978911960 989226024 885914875 964215488 31696246 158401725 342241145 366479328 403496410 419802060 878823722 943369979 866187188 911972432 384703119 646037456 587634529 829625996 577318184 700821660 380894288 384540240 477481950 838821261 72792444 574305872 294905522 732667004 330537877 575088933 296839724 858076197 23101993 125940007 1668900 776649036 249436809 762423483 675960926 945658497 849324262 878689938 201533260 403539972 509003946 718614474 655839000 928631926 818711392 844848509 440048119 652720957 63718558 644694438 663378327 783671433 26120385 143591074 910071712 932018722 653394045 785851407 27910509 708160161 201393625 853350840 184155183 689179569 554956206 784082649 514828798 715375043 93468260 392567636 100136257 960562284 431996276 706899746 870701209 899747873 580569287 840008891 828967490 846383897 98512926 697771469 8985737 394114735 103145679 215998084 262960766 725478907 124847139 183530219 359202685 471703288 325698994 756421404 634381334 873799151 756470275 808166885 778763393 929182411 186345910 701186678 288425336 931823611 762509423 986207326 927145177 988497697 826422260 888819924 20521094 806924058 182642238 808044801 110641264 329730693 77813320 342095889 674093119 953008757 778087863 979544433 588586494 888605486 151801331 859391847 550580563 554823675 613344739 766039423 914121463 918022050 191340867 443708324 318453671 877990661 986331609 991207946 48348333 607999450 330209927 496244286 280026531 586245067 788575052 841516270 938300273 989109574 976177473 987147739 924217625 974694958 194716945 408527111 37281678 88208964 507766046 878068025 545390242 936979076 493231728 715289812 76150561 672911391 711597935 940731864 752152064 957971464 990723653 992811020 766405768 988474386 883173572 914356854 718962774 950084895 39833281 336079454 142852432 465255245 805469694 905205553 605645145 797808100 66317238 870920192 490824748 780244832 498043421 557113795 941817606 942563984 681142575 726210184 256662195 356403614 151726439 595727747 360833460 997401669 55758360 416224301 62609622 834781375 8221854 367351293 830191564 957907741 452449698 682075995 318580014 575636453 4897828 634540929 989319453 996021947 619593960 833293238 141969463 925031773 211661988 692350800 282740114 452745378 801683352 832550688 171134237 562746841 421568794 955158688 427245052 990322945 100196033 356961945 907004879 952758033 278574769 439691706 437876991 551831008 689859251 878330268 425845210 551369213 920507955 937301104 535745227 818772487 949054902 992986551 193160845 646748627 467665015 962575667 292344191 582201170 526645471 829586554 198952322 325550824 14732853 855204834 90487930 266169465 813713859 850577333 357969125 884269627 30242891 701602784 973038426 989394816 371003794 589005495 142694158 670278405 782582581 887290541 106283849 219743777 165461956 269131084 48384171 178741220 683063512 759464616 139232189 280839076 749693701 905112146 145941086 692583881 79321786 378340205 688577294 722982064 767568109 996929576 790740159 915581498 158950741 420952027 602735310 756984965 914751431 967794144 374963406 413133199 493124757 801396808 123618956 921089303 721082181 883257246 196860670 445342943 716456863 725639916 874055585 944526019 167946217 813721517 272250381 650030018 821504999 980121398 581298888 768400483 256682348 997678589 474342011 526431048 163017379 742823990 35364392 71499139 479664653 683340167 188792864 193041779 532331778 566331564 639967223 678007026 59855057 391718461 200784397 726720124 242204703 964849473 852019931 981253984 376921699 869090810 229666534 619669819 954419576 977748314 666931460 907873414 100583291 806660367 420366064 763695670 312008035 683279106 627485126 691296073 763264323 861032658 501825484 871344566 276123305 588807125 360380111 390848401 357441236 458541942 71124567 178796144 930481301 936820128 151529405 492310971 824428462 949145539 154934007 730869519 69226956 978236638 199521781 649798781 48671708 317877270 301745624 763093016 192314818 698342536 856933074 874544946 493829747 794452547 491480697 824189628 657366374 891653014 650406170 798641646 312383112 581105126 583734175 979841267 306699358 441098858 581170200 685867976 992759821 996141086 428089915 828990686 324803653 686821773 923381644 979980601 872101711 932552192 892376602 932645533 868287578 883360210 481918886 515611505 201970918 787660800 578324498 959353774 978522428 982197072 228178970 606324308 627354737 913682325 396117791 999983242 689581647 707794922 806098943 914334255 639354352 648303864 76130622 337149672 923290380 971889987 142234435 554332009 15872058 806518906 468667194 911723278 834267833 863713508 202819282 901309042 525553935 705847885 773652796 908443100 38733678 122517051 957666479 964324863 141511707 659740329 445577359 872293221 470387422 845523763 415924610 665991149 647615969 913109640 48780665 931497236 86986947 377500882 541582007 997735511 684454837 967351672 659730272 887266049 630331639 660654657 768405088 935346753 743268509 892026541 305365768 594582544 310171973 782486342 687983476 763137229 414106343 908652274 607350182 833099764 14795868 348292638 843461397 897233455 106437785 945685606 169977432 742872269 565488733 765924126 755222638 860915928 609454345 741289513 353851704 694776302 744458997 824137550 30950658 556186181 100620690 226838981 948324094 968199724 394166690 617441451 137015422 317698431 890656948 924269536 283552275 331583838 129148069 961368029 996389308 997671918 446241139 546536237 537231465 956684268 328801846 416029002 975994443 977594619 270709987 721968227 108952456 255273988 740478114 898087735 817732421 932194890 894039668 974484175 807187578 929728524 84425329 997832711 179645045 475885247 363603013 565089602 862280877 929677732 573856093 604890417 496554380 959142567 825496630 996291758 350941793 793158302 188951016 681883056 950106575 951304044 712381435 756971155 326705507 486522554 652876173 873586771 560773864 882989392 602861895 603800123 971869865 988718971 775382898 961897662 492456243 598519983 964802908 993860472 336106071 663579997 972217543 981120111 874992640 906714935 921283988 925337551 901479059 938058594 504120062 685361577 715108669 937986480 363375925 699193536 844486348 983289560 849176496 984246168 444056809 810367404 919577929 940052898 932229127 958948402 75559842 686391976 810757489 872191937 474723014 858381595 965058197 975004918 143907491 998533688 273038815 988340389 927149588 943868579 643163627 860068951 113820922 542634956 204482138 987247085 29359991 745616278 632494208 753165914 307542083 530634931 635866348 784791576 726707657 796187893 402286486 789393475 167536687 184466465 797068760 820587481 380659249 609386913 892261421 932914077 844455338 877299179 585313719 737770122 170246715 770218183 13913429 492722565 801954771 965989850 359343350 939640831 859710495 937706879 22615786 484067863 32052534 365089569 374058793 799140977 749703914 947773155 210882555 616576162 172482051 939806610 469319939 995086988 836172827 905926431 721144530 742877982 784635363 915869192 972790887 993780036 674014495 765961708 667482176 696329588 344885744 797660083 622329085 851757181 806648667 982402660 721580792 932496799 881167552 902569517 439026438 645042540 923309459 944038920 274454871 761929050 992046915 996563962 339668859 999215051 347488907 406586652 734397343 816023768 68797817 223163905 89183931 141766330 474484271 852639795 183298535 322430285 608598680 801776858 963667798 972028269 514582541 732035494 313026286 723554916 58811204 185775198 867833703 941399683 879545542 965764226 387439938 424301754 840424343 902093665 194404499 558903000 53425312 516546756 513638669 729705874 751334518 973042453 404384764 718169068 625602266 714993611 546461542 548624421 502941628 707987204 483975966 974868255 152185876 530138429 203316766 959687418 206821651 982860184 884591800 888694103 415952626 752499939 613703453 713174528 481851720 836677180 688655084 960568211 89735363 758048403 422966940 711120687 98983391 730918097 615639586 728579964 527142879 630186812 2663329 632184206 45625991 850421069 880807414 958574907 958099284 965739887 28419181 876379110 617261935 640193943 569466005 754900722 295259650 426356671 647411353 938609637 795572515 809273905 548449394 645794924 814835379 855244467 833628727 925943433 361121112 433257889 68059378 573059332 75128748 246243067 412417166 949559568 616162944 667821568 70528497 551048857 571472712 594941770 432025318 738286001 679193201 758043788 581545512 624962918 310281149 782426342 601344561 740147580 556110409 906731102 864956497 898121964 545885230 872886830 732308244 926015470 559745034 839207746 985472173 999103224 87877865 370406722 549397063 703968520 823766203 862402448 764787588 780177926 314535767 441129702 549060351 847028073 528665698 701201554 757516119 846425860 299446107 478028157 245466290 694330164 686484225 991231348 301963714 886524528 274635280 565502697 954461205 995467349 757537041 853013490 164286113 866160661 453184049 472823942 547555748 593406171 454850840 543108971 568845603 962025361 668130433 716216540 906908323 940361392 115748373 204203382 119376109 391297022 830262568 857823813 476772737 676145834 696854807 970510892 35864704 104934549 490168777 773757314 633200703 907412764 488552663 535680284 242451981 790637315 323618502 947620562 503311520 519961866 694436365 954933995 627700401 648107207 632857916 659568882 415011154 866336468 303351059 340329426 132638297 711869811 430756297 644347960 788397270 890100430 597969262 819869143 544352614 682735399 393145327 750248687 718659927 746936970 11085575 818631394 62477373 242940818 211775507 866970911 586523329 746624011 828490858 896213113 751583143 928123784 814587612 911962915 437828534 701378472 419321096 625984455 946196861 959158925 929612792 967609465 544302923 929482618 53449338 142796787 79246251 913857443 911740363 970263299 139960456 422651114 778760544 808889241 284084581 742654148 535101984 857858437 251189550 529816606 563065960 783284671 56385999 729667489 710228769 742970373 761394563 987279206 275273609 992626982 605794359 972419491 811680161 878354594 852231332 868617224 970151313 977719670 869855358 941117176 932670453 972197852 257307433 523217075 467945847 949175688 942833668 964432895 441131005 563347868 213743675 802632010 964747385 998579033 481014716 495715029 169240486 632292070 531609999 848240087 487019871 831519647 602480283 866116052 514986122 527541065 506893223 605464435 257328352 594950129 717137342 967175117 633775817 955089787 413921574 807850199 941763416 965223832 609615873 680943647 16147992 250012100 606903514 713851494 335478618 396369419 48720900 864417679 167336472 395815861 156354117 178889934 33175469 303935464 417852336 692762767 543872254 928110995 965270017 990939254 918412445 946143795 756520446 989372190 201349827 704522814 963020736 974733112 206464479 884324247 282815307 796757937 386343175 621142758 489307573 963669370 543390805 991629346 84521314 988342946 82435507 134502554 611540175 734391841 166170163 727013109 424222049 739642407 607657159 989077382 651674991 651772488 641280560 951286869 967332378 992575320 282430653 839068355 291567842 558952562 355338795 769798410 825163591 967627663 773332401 996403556 638050608 770204918 531846272 614636867 72623145 598700944 473797883 720635810 870139210 991533615 161630443 495864497 758227956 993941602 357510225 393540866 365034646 837145622 888715944 978223779 742484167 981857819 996209678 996455237 455236019 650836905 823502107 890404535 858348445 907888165 631874400 856140175 172341315 368377607 669720659 727595652 791668585 806740110 565518996 988556976 733514512 936995631 831315400 933513904 619285598 832245371 996530469 999455969 916367349 981842380 94512618 303663381 150363357 404497851 645686607 730650098 793530146 796842405 480287531 883293022 846461391 888787971 720559828 829981879 20588525 778688736 686115671 822266174 885223746 994059624 149241016 928524348 734442765 816201114 728372315 746657052 446042145 575382510 985108136 989493955 562911102 748475128 312836893 431742783 882629211 967140544 808693749 976258225 364346067 372704984 777042879 800317713 579823918 945508256 309645988 493824228 626637756 970362915 121659939 994734322 480145285 758449793 852517806 980129693 189517649 341820525 537199692 817222798 266077785 585066255 4018596 593120448 682005873 798411524 906160749 992830642 314327716 531444522 652063638 694911251 510654103 644563232 1462777 95631311 485583628 779123098 320141970 568360096 344761534 795974095 552938697 823379059 515870827 854250614 793679303 796200257 605514090 923456769 635214371 805204523 204890026 764653035 482569250 674072245 438840518 884037774 771044707 788254709 661938847 968019519 339203369 369195231 992361789 997857308 474136818 538426038 750510728 956080422 217540826 448048836 350386219 462865785 749585049 985358472 368348831 419758423 199107749 237573264 194444215 569046239 950072908 966026467 2152680 56817232 155252855 562809345 450258886 635941867 532928212 775646149 287013649 990700919 694840343 922023739 315708823 540964135 428131654 779021917 594536927 976068802 943528270 969083664 695556464 848847627 809570663 912385794 670738334 848681436 244859698 797059633 762248021 826455544 277908425 566393413 190093401 665462535 517348226 684826025 515874222 688305780 964990662 997127420 896278432 977024139 824777552 894971806 393643437 696575015 429960175 621400571 174672613 396688818 785311022 862593179 917041103 988738695 855605170 901844642 309433175 374050864 409497233 903534274 254392943 762505705 343721104 727736291 676219996 714848600 379308860 422039122 385051597 695269210 217001863 960904093 387697339 398939464 994639902 995951791 918957977 961677572 996682780 999841416 969024380 984785056 621021706 796807173 591296833 917262171 845011603 910674645 876187124 880802873 381316740 581933893 895640401 974768090 742861715 902171314 251532675 660341127 29595385 929674005 368454654 376410388 921707574 996315987 930153466 938765570 459975987 717909717 202324368 246411246 737683356 938263613 583863289 876363513 94244961 669923578 866669903 912268519 215424938 455996180 405890053 703152859 734315702 825105000 714594127 955703720 435127920 918029598 198483435 373789992 845054215 980810982 746902051 953695116 392910297 641816395 165424827 298242286 777751828 884236424 121398483 478418747 611443614 831438315 616591244 723457832 538602852 912210529 508911787 701174543 701369472 755414393 432060906 452003673 129519158 456318885 825206243 881304996 34192356 461170255 153534277 997503917 480889765 616543302 997642055 999913029 736996913 830657455 360467350 475417454 621511015 664935256 482071853 488202153 480627450 572158164 427739864 841877142 81110846 189579186 391977399 563018660 622892816 940401769 612095410 700015496 634913446 643825764 381264088 837750498 347955908 508160791 480052053 850478519 917722811 988015580 94983645 407693863 344512083 967339207 881589909 966921404 542541483 830942580 641030260 715271930 11213982 301418900 172031996 619790836 222239990 683997737 403174113 962013317 564915652 786575906 161539249 639519184 653432859 831169675 226881793 937916599 298524598 948979373 405331467 453821712 492540971 629241562 374492216 376450879 202753384 701480284 578001549 622697693 580934024 874473862 817862383 877412111 183722892 859096354 239312490 521413190 859882556 946210275 87158448 331309786 420709597 452166909 195394616 664984274 118179490 941187948 955892976 996231097 369522658 375556661 49754403 918015151 593708522 990910346 157210147 565806324 446883461 726074038 118059414 171868033 924654614 974048611 767866952 939102697 990625047 998286776 568891380 927308833 46534989 526871593 40478603 454024925 482471760 974497642 693286277 823899927 938035238 969663426 782205555 892281361 156491133 709455506 281628490 601524780 676073446 974582345 844429947 993178042 534143604 694673912 377740510 589644130 301854248 743542871 619146304 711189267 737299882 776583230 103391917 363923606 107459882 415670237 209088752 325082711 54407482 367542214 440029827 506737875 178314412 343092679 701258140 912979138 660104326 873982145 302662258 537705634 969363100 974178278 229997129 604943824 738477320 921622825 880045474 902316090 609638445 690012049 962164914 965957869 853971907 955631291 316474672 392146017 728994891 894216989 334644827 738576521 532274383 535661363 651069469 724601014 832598134 898623413 135799619 893312273 646423217 703483347 714861510 765804520 935947139 998783109 354194460 993687092 892857770 933251686 507435393 986679466 950519404 992620304 209773674 896495848 43106918 868859222 886365907 910947907 534067098 923116651 180544096 696002489 511048351 963692907 18848051 279870422 706947161 920764800 905103350 910607415 389664235 741215022 265536996 697840541 11931424 499937640 751109633 908661879 256847161 676378221 140572498 519261957 120796886 501189281 915457403 929119198 931366493 931369881 483400196 759704152 664158460 761813186 228957799 502637850 212493547 993748415 700586891 773325798 637226318 743260809 268980947 805591560 620953074 990589116 684092434 774227184 656903290 946265011 649854210 852628165 651513354 725956553 933407478 956383506 896556730 971806539 963667428 981719154 153242603 772781298 736211233 954404397 728100244 967683127 400339194 876869738 877028546 952221395 299125532 584394057 343020497 955444102 994041077 994078958 950583474 950778459 273995908 956258838 183473003 550115585 906414217 979435743 872277084 990687750 921639937 958729497 32504830 135030078 64251893 637671024 765647095 767918430 333690460 884782263 404390636 584465040 671737388 702869619 301742181 857234362 776109874 948373194 954574237 994321978 940667516 954803351 419261307 581802256 946124505 961133548 698179342 751678421 472694924 748489297 816333473 873031432 967466039 996570178 376309610 945525516 868297464 951785257 692383287 932557950 205367007 529763407 467991159 468844028 463042618 816146722 492362019 561928940 823526778 956221485 440760022 449852609 254897441 570723694 574910046 966074948 999626199 999724496 375426951 566439475 476100950 966317209 258696688 270635651 933129096 961349169 808155711 923400267 525970165 663330774 320650574 889692143 944276570 962591222 166160726 632691244 880960816 964072535 865405871 966840233 665139974 851948253 113914889 437451565 684264572 805845887 202321451 878049076 692186124 944753629 756330194 927846198 103739911 897675419 913168040 992464943 208572649 921175517 426090390 536024261 710209325 817046251 848493274 949677331 982660267 989583358 76077347 596205862 430075432 550873139 369935664 992117096 64406248 604615620 671701895 867118987 159654826 180059304 306717568 941690491 225717541 520121689 655736192 833785343 72620052 598282389 454305309 857766405 406150213 745887416 98223619 238776929 892098903 929179699 25473067 930227047 300160679 679068275 720379498 827365004 190423853 457262389 463338976 638768437 555330533 883374798 694267350 902876787 912079501 935905486 496238949 679092672 625741995 626568571 367425956 519225163 510318277 713038542 925143647 939162418 128826590 146360611 545872139 932602551 3200924 535158036 70232416 603583660 247207673 628975877 143538091 876698144 316345605 662858046 507117583 820991665 345621768 405771760 428731580 565616151 24656859 860808390 65626670 472552057 114867065 598560845 134811503 639763760 565763268 588354297 717955975 839744654 767442174 920762551 614311819 683360760 763892280 799008495 258566446 424969511 807498819 936702871 69410296 893186056 215727167 735317163 322258371 450990193 85373544 213150166 834546383 985201585 785136697 816375592 268394105 413987547 161827519 349589072 678682606 959940903 583617019 688427579 606269450 930462904 894196433 968101824 555219853 717840161 381912414 819420496 112359929 675131690 800202398 936559626 361296891 379506667 791016072 944830882 636766445 719278920 560727483 560880133 722287246 757775717 625000992 677970657 497911687 532296391 692600194 923924647 429092492 439346161 47256477 317398759 681867981 727730067 366236369 764576502 107885144 791638667 39009870 341784602 891438612 985933776 211424327 721748572 546928367 550087004 425070682 569450969 546138713 831877605 63111213 200051077 784378067 821343060 452332170 498776133 768629520 789190463 816200060 862531098 271219497 754040222 816528942 877475679 608047629 674305973 569534319 997214714 547248178 672529520 462039028 977589829 75101708 686110859 96304382 993639330 669553016 676273890 505560194 833830822 316330672 846518279 752170664 815944525 958174108 995204023 596711806 644315475 417406364 872651309 628774993 705707734 573223007 981941691 518643480 785956437 785420741 950435881 754234191 899257887 292205054 899530760 200936304 426663982 409595940 469397092 935971184 952462510 111654630 740785527 703365163 779843894 929627679 955627809 475848981 621307868 879289185 904685662 104471389 567255987 621033507 931323396 496024466 732025974 653808143 802142632 150760412 541416862 679141834 864444208 619895823 698485152 961640015 990874908 805775877 844446437 442684178 676029770 27312030 29307274 348719660 606691675 861025384 902470264 460095666 570665663 450787542 885532919 697762156 979045803 502707573 579691431 896418350 941687522 415280566 580955802 387881006 620197514 291245533 841623396 649299484 922265304 1985087 189406213 362320041 885337504 354976523 656950570 30855472 118603986 338090705 482988074 220972603 437082642 763732760 971487729 484482690 981149197 82162359 652306499 637573833 686486326 474862092 662012805 414116497 618893445 584221290 970361360 348896549 988723053 979232752 999181563 770791355 901031511 433369312 574616171 950857272 993971844 423953063 536256017 777724584 780085323 457656946 650309399 758703350 833138638 769246677 971445377 709750018 769303886 279802166 585499175 277513774 658098845 313219072 610789077 462324305 793723504 429038098 686677518 955188863 984351004 306260686 921239806 529804625 879743459 109970498 338498261 515343219 868966538 32253917 783611634 595578113 911846407 22419625 783267889 360092942 529356164 342345094 869475589 953281708 991264143 635485719 769358294 245785343 394710164 20841166 897939108 779688036 889826266 762802621 881381155 824235957 877753720 474998727 988461446 401819329 439904262 824928769 914460787 53632586 230480386 609614239 812839361 771605742 991965995 338299630 510017901 413620377 953587462 660454233 811844790 412265147 596538845 922074174 933425369 466033610 894268534 643807637 811814947 251797641 695412321 263597348 330930745 382829044 496209149 174385616 437241896 353122545 902312937 221602140 321895545 196211027 457486652 812675476 844384690 415797828 873206223 895627298 930456553 804391843 984784659 947381675 996017051 246886256 760882785 927720918 953305914 929153722 945204549 207579408 956135629 76436503 247975686 259563591 849942642 15507889 876833340 368088590 778972343 528012866 994749408 770567829 849503377 476838157 744677782 185360365 594441165 586944264 996635559 959184022 984615777 27769155 947190819 749438664 979302703 168634329 236424822 42388179 817401951 453007420 541551183 495417769 636049399 942546457 965940548 764276521 992470628 268018725 834336640 925180555 942958486 445132474 646375140 178550551 240991616 854840523 948246673 915757718 923022354 640879241 809336790 811798400 920847287 619317329 932048684 299195772 581524678 417923531 895057991 963634967 977602132 195203185 320596165 23664968 874726052 316543095 943798640 114752003 151831460 969826049 996469355 601011161 929810198 807413984 982070268 182329580 774511742 198854762 689039338 779517226 855319935 619163619 898808276 744922737 751442177 649015667 658630157 945134198 996137565 739905403 782509166 474895297 480346625 804726530 954512976 915463146 973984660 486116518 538369269 872202829 939856807 259910643 970268291 14008237 408309313 96953932 315209155 371767233 384140943 100902668 374286045 656532935 884056715 452563307 885724236 574896489 697270409 883743318 977281875 660060072 708947815 467835336 747500635 193532312 327014281 55080840 680169863 9236560 827959220 411325578 717877741 68712875 647482078 705478919 978885529 80074973 977330296 597985851 638338322 182268334 312317417 68864851 96138159 382685853 605588979 646982017 986511880 790421404 931346323 182426646 269064052 530304865 604936487 193685623 577686457 237304756 938679576 888184362 916670809 919924791 937268306 662551981 794704310 795707275 832821862 416446329 717309515 683361532 951458247 238920431 417069970 872829201 950492451 486293098 782336132 31392362 251679953 488360026 831592826 132941952 223187130 141480172 264717652 929696338 992747731 162426151 787979641 430389157 675911354 916534356 989644240 865304991 923102471 445848270 995434145 353571560 611038046 361512764 574347092 186680839 677458500 763947751 943115695 207813600 601789428 715939312 856163697 929879657 979237929 449706121 671231270 1142655 196533376 638752425 994497255 185769228 430580738 701462636 895709163 262603590 904986209 825861091 865362596 633054253 651735312 238873397 763845571 50383778 748602915 604796888 744467847 519646550 756365086 897683084 900180378 870201317 947948238 138515035 626642406 575995222 844905626 928384487 998407516 552068262 965946663 226801886 563300956 159381008 906567960 145664295 436453241 9610515 702679075 981025698 993142167 2221842 773154841 570974944 643589026 791393591 974251246 561080837 799944217 674313617 951391454 114041810 294389626 360383703 632747167 232435399 496033648 979148436 981576152 145036465 618453741 693669345 736668478 433526030 662736797 743165783 901851357 28934878 556020264 797279711 842137883 593159917 736904730 319458795 391700558 476183080 516547008 585558305 994209221 730112252 850438097 385320871 920681229 572768639 602529927 164964295 237765237 835113362 973026024 396717330 580704914 764939940 817977830 484122924 902876517 820722872 988448134 414411393 627300016 553681693 700322902 763654703 802967495 377603105 728662450 553320430 707199548 423364603 505572060 882430149 990962205 388956698 940705710 373523496 402915217 599297747 748443634 448721899 643466022 195893665 812814041 983359815 993634502 655058606 761973145 732783355 890801113 639895974 757229283 571756657 592246131 513457732 935620075 714018890 790470570 981070582 988293668 948377938 968328036 73378818 975176525 80284081 252650812 691470587 729776890 497438043 717585812 560103660 636258942 583912515 993626066 427007277 720777937 256676142 340932648 965738995 994078792 638370492 696614182 58747875 366265178 978729275 999914395 812997185 950901500 926751309 973267942 393959846 417265320 875264548 997965903 480491069 537539594 880309170 990314790 234841809 822814922 699874949 725462427 994285165 996479839 981219986 993385553 738095180 796299791 274753342 972894600 196880287 649448265 472524560 532692685 722880425 899723341 692661744 889014012 776038793 952206863 944363585 998490298 604967735 919331357 534246267 761741980 638390331 905369103 321639600 339188872 590056614 881832494 245107501 902307288 36213868 413055183 621931102 953078767 872385204 970536184 95544220 289754539 846847045 854742672 463146115 692049752 565343471 647310124 847088350 896395361 748818632 852702217 203737984 963067439 390584634 730636105 484843914 707074595 914694986 930320593 242729442 468637169 247322308 777874453 840595430 989381722 951346526 967828840 825972190 920297662 851616312 950998224 632909001 705077146 956484071 972777470 845824577 932114037 502349021 657995120 251619994 729494997 222803310 518320194 272074391 681201900 867917154 959027971 665570060 946133168 799551581 989006945 524511111 591483967 740171728 818357053 462166083 529645856 234804280 941347462 13445712 843749972 846497667 923249945 970062235 982252928 52795089 165378213 673608292 716737516 493232281 944700531 286046808 747390191 748592177 915679126 721383862 737057112 501345161 708067206 284062481 470333442 451653282 719915640 221375400 897385644 865235897 920373176 181690746 264310588 603732480 747249250 816082895 902112840 346017835 644366501 45504616 513130699 441884132 954222042 192559823 954151063 614533174 871970086 744944987 878643994 905063418 964474603 943128855 988695280 828484008 992818233 237579077 860139951 304174168 581387009 479463774 705902165 362244991 405946461 65964824 320367591 710609284 932513141 315594471 986277788 872240616 903313871 710428710 797154285 808687695 871946570 876706833 918911388 479584680 786530407 508082350 682331885 425039679 858624776 625602097 732082625 577523118 891389385 9631342 920749162 22193998 986060750 709345655 854536385 765635590 811048940 948746922 966667255 126069575 527082570 831534940 878846458 430076055 542623565 211107526 842963898 661737466 757011901 20312456 760731365 236074367 311684248 805910381 845508599 582903685 647934331 180039956 835745994 308617765 871081281 127596047 374074787 902460550 916866460 393538350 425394793 175488255 462020447 411185637 516160650 868613510 944716292 490275919 736238125 546090798 595819345 520862980 709127757 460204619 525391492 938206901 961106930 442035255 603120302 670986405 788786282 951854708 993276880 49219275 430382371 843997399 934148803 997637576 998741050 429199505 749979902 663618161 846090723 665764909 831908147 269642696 540423275 788553404 825384920 837355381 860976225 953190996 955304024 339931131 663365834 4018764 188781106 455000194 649226096 96117223 159155860 145040289 156679807 38322996 204422359 967263044 999132081 645798262 730789219 911227123 935507282 581272087 673345873 895809671 931574070 87382424 492254171 227853868 857608046 495487044 613947796 130161457 837575697 365406210 473420093 532881257 597217467 259489099 900075129 311909515 785854933 247324123 250453086 101475065 406671982 404470668 955988817 260035075 786607285 65522442 885122179 713363676 920445011 260728843 656370840 63506592 743796859 322890083 975277978 667844016 828125704 259624968 322758210 674897019 862744661 138790980 195778832 229406744 434711729 811711722 827882268 277941307 472332505 1028734 119283113 146982435 687592999 488848486 838999058 931204064 962795687 962127080 989436082 603744533 961934575 218585087 678983008 899503052 927316996 722877086 839576035 587665643 654181696 24798720 327585393 942107646 969584219 180477435 778475496 256807833 475021692 568745310 675666388 115728817 141078075 700187899 936638712 915525774 997480532 79059176 93323281 270587588 403927753 720506270 831584568 535590635 742681408 511424524 619397862 854170332 923784233 203300157 811557946 718046578 912395991 423428967 735681152 782765026 853107504 499446377 546965826 644969881 746421242 963512331 973977927 983597515 995098097 365963383 586747638 145840664 213192758 55709553 166299684 826593286 873843564 933023186 987500702 351947035 426430268 206531658 870621861 903134687 957425821 805077211 901877981 439409235 733521239 147404758 408444100 720234204 873629724 510689114 648469067 469771523 902328351 232896392 318857060 597037178 954947026 891184375 899957374 120193970 273619129 414432794 765414878 649459950 903726343 438646692 744175493 384788689 946123781 317301166 321390251 320945781 712553792 387028474 815139594 906639057 973758297 453764511 491092080 50232906 151215996 817765561 929833007 308153063 337763134 901588986 962533812 701482265 800063800 584163262 758941044 159751858 779550411 921833451 991785660 804062819 953524745 262419659 265690536 521253336 857722786 440783392 985608703 791764032 817952239 247586742 588320278 815795890 895561610 926060764 930852420 724596915 965921675 648451628 877641157 256239049 563576950 203552181 814033747 768345242 901829757 783128370 876212612 61067943 209219034 688400110 910477288 524600221 899308206 357871713 486829985 49287793 531763826 649907987 668484488 297797625 810954155 365202199 391069760 877945598 932901374 119644708 679599929 245104637 921150065 109592141 148474090 539829451 927490059 267365147 915704658 880250847 920529407 63954397 174968947 301271804 942080906 44043685 479547227 498243055 786873119 569555007 571538282 276645096 919829744 326924173 839755327 98922774 396797800 646826686 982140542 905693288 927443894 777182644 792735651 309375337 851442950 325336288 496363036 420242005 584679669 790710380 804724422 784092792 928475068 534923975 689055902 436506703 568534770 36875760 430214750 460185281 491777870 227213005 808897739 884379874 995921404 731694629 893918662 620500182 681690694 841023763 940259452 60980889 871350653 239000923 454832812 768063841 879385940 606056987 897048502 635479583 745803198 305283914 856790231 65048660 157671948 304098569 431275812 223765956 986582974 788998721 821279370 119624706 656113244 256342590 573151996 177459529 637759483 712272821 897176075 361819850 936934078 944041509 953710363 953334371 995932345 670356500 695403421 402874599 856084703 199199796 420649017 383899974 493233894 554479498 920722670 385415903 563705992 993345726 995327313 515005135 861538831 95577957 418379140 408055812 688400270 997278135 998891690 270106161 430749336 79985995 990818546 67697127 608374853 454086163 681035519 72979260 354462971 689362448 976866359 379564021 445111557 710350249 810630896 835832737 899060222 85103345 470960518 924582946 973652766 879373541 992186903 506510876 516404788 405393744 862311926 316648733 684756958 300108539 644355669 594892057 971062849 521752944 568010161 352993479 965102945 442361892 607378746 373249834 677923994 391476957 923779442 695368361 872233152 612403236 700211333 28248853 230720795 44071102 297482654 14516963 358984477 901676349 934267392 844531262 956566723 652805522 916318081 495669436 766246167 812229358 954549738 926439477 965497977 820565542 827721202 588256851 713292712 887075697 975038988 950835216 978224451 991389057 992032102 318221625 885362565 814513325 920145710 807104472 948632297 256313498 955619336 327902585 882498282 155510884 991359894 661641447 761619347 107051987 137055320 718784485 760808110 960819350 967712778 406598908 776554307 495754198 682932595 162221760 544855226 327794334 472791013 871076086 895810461 414973526 422878793 601909134 647123863 737800518 890244717 820386837 929910910 933396673 980550700 902605436 994500406 532804281 935446367 731063674 798171167 602873338 638775130 664833092 957980261 667963253 867189696 950673337 986405613 352438579 784510966 289265265 674523480 727587975 812337869 709930231 977889201 921643006 992789013 215408413 281192235 843297319 846434121 970279217 992009559 628818279 708071287 720083390 817295141 813143766 955923450 811906202 944049740 118865762 605824676 733026995 762213997 124311088 964239447 846242477 918631009 893891999 983298283 445960065 621121701 552011119 737759428 696908911 844168844 23023804 715474030 72224916 601836347 641110989 691717703 506111395 978703418 522955544 579881407 533723591 899308435 628527506 944597574 820002676 877842617 978283292 989258715 828227217 838738093 229616010 778043287 641092738 958594314 997325124 997569051 892034598 986280627 531481420 784490044 89481123 930147187 901581331 973865569 985493737 998053365 388640025 930266462 969074374 998785461 547746390 565343597 530907512 980356348 598096246 824416065 117234058 476253314 568100718 886056898 290379171 474053816 87939515 91845769 255159233 901075361 643531466 924745717 247510280 741721084 982402293 984975510 754322305 938348074 205504476 263865183 901687282 906462300 640307137 920667212 177906129 687926179 916362629 939563727 565233162 589299235 437372704 897301557 83772917 580394867 762809259 983085454 413196487 448450880 827854244 936176332 649753007 852911706 15664537 819145160 135854399 661170229 672412901 781455977 915797720 972321452 429922182 686922474 170092643 295598187 797969988 801678692 208260036 784957241 221177264 839079088 817325763 912217573 346254772 885617982 5160162 117931560 93435375 922259524 414123883 721274358 321612057 474965185 34943850 629043611 10363343 844018910 420016840 539122528 987010945 992796975 367314043 606859536 802967278 973813589 545214577 787192560 277239468 438822769 742142077 949449303 906350620 922276319 598778418 918833932 348443743 393948376 469207859 703057022 379944441 399818328 414915128 917750115 353344064 971092693 597919586 936132953 369536856 415259982 977504522 980455607 974101481 980425152 970577505 984371913 29860988 971974976 906656046 925007155 824572019 866916653 890149706 954815991 486124967 792420968 886268146 941145623 31033006 661656491 212928993 290084109 187305529 466881303 98867322 453037332 786620886 871191926 561445312 621193727 199133798 804213408 920161155 940463659 105515115 563599403 540665967 924714586 803258635 941283577 284275865 782432270 431480942 570088358 181594618 325008813 682525783 944520120 415609801 688770003 872408514 884514830 266612028 562321424 321639398 546134549 7680949 762833544 563465230 901453702 592651889 604988738 333160084 422924897 470056913 989681198 553339881 587311125 583321177 874483221 685806865 948077472 197180833 959219761 225840020 911172546 982227576 997405190 868554846 910030700 606205654 715784124 49896244 119306923 754012489 869054501 329033130 646288854 340724517 829325620 671953248 989773348 57724422 677475534 787427306 882536367 962264839 999987599 113564687 581300881 831406022 956685595 496361691 841776819 519328347 862377831 336418098 904219132 475312492 888031446 49155978 201081552 577257475 844944947 927467189 982173106 431190395 610131741 8433095 949447849 454359298 567278181 67534128 275499907 613880426 692454202 213543690 327904724 731469794 761426166 498334110 644869047 163078712 483903923 570241066 683344459 729351748 750616187 96653891 424100036 253132309 598900927 296717724 799488689 96599596 163848270 796801273 845207228 17980082 809430397 273628824 345455742 110617694 269792373 473947853 753662092 263365739 611113836 168427850 829027467 203249947 409280970 275432218 853402616 644822353 729042352 552515364 632665534 762860831 921843340 749912239 849249422 441910985 869132594 736562451 867676886 821492615 972100300 85015586 646334847 309251764 869258031 623068017 861717413 330388813 540860975 242606311 271386927 320014515 328032816 280542590 453152849 879992365 976038676 769209569 803405820 163125613 762705879 982803162 997085477 74960422 717318923 322725252 694957700 531408888 961545869 836602390 875490594 878496244 895266761 395906939 791843718 474839483 553201825 308232268 992840004 386193805 415098693 527160004 723238007 859837214 980908212 20633029 557787900 604868753 886447647 503593950 992131257 535880525 892318713 934539821 952417036 307618486 638297240 309168274 768714453 519480262 699214558 873155927 925050491 564578925 877273311 388304740 951492449 268598053 573040441 254129421 982513910 394690841 428845219 577799293 784556098 473096362 932940488 287846814 768646094 531056970 796732831 51175764 899717609 345509961 413750985 371661851 511738838 831775321 847543501 148323285 677940723 646368112 683066805 183679054 362965472 876127193 934266122 428042051 771699938 367386445 933466469 602104418 672410762 742295199 889597555 225682435 900391561 405786939 657014635 153961973 700323658 53282341 660253117 653986232 689679041 214945693 612910733 390917188 439575043 373594050 919727570 482688819 485262733 315353403 740997524 24106288 259788498 22123759 732904749 57086063 702372012 872982805 981107418 948265475 979161628 197376769 343509640 390298727 550416641 508558832 587342779 849424174 953000255 326954826 468695571 881571347 940931883 112555562 434346894 563809518 598213646 797114882 824867215 408584839 409960304 525940869 852496411 691940688 933319802 438464620 542385904 849854908 859939752 1299265 245733248 844760208 984811146 87247674 879169167 721169541 815773195 300980898 847861259 267478165 772987423 117913360 171588512 904105669 935300841 827826235 852460955 717799761 842338276 94193977 819160033 197488870 727089618 18733323 64998322 703407608 872531562 65585015 460184542 784708128 846022502 492195821 671763882 822212788 858830511 821383455 955007276 242489597 795531055 581615029 704634832 625742990 785981883 395455724 400949203 316493873 415993249 489289366 922104830 25933461 883674324 664593732 795569066 851260231 967861675 2343164 513839302 56633307 421588357 332532336 511910516 131344843 527062567 364866015 530643279 770171003 800118866 973289314 998590937 32840458 945515359 459324855 835035903 477906336 884939663 10524030 318866170 694819634 763181936 196028345 355572688 410201074 446345707 587747416 866948319 28573725 255415547 957655902 974293432 670162694 846891462 581805623 718516143 269802550 535982715 569555012 946282915 262367981 410428222 722623481 861938302 916098868 942655735 587602215 728931194 933140446 998065203 875714975 923475805 954337513 955966122 111508349 932783756 986573787 999527380 664409297 688046697 522929230 705991248 351027372 835208344 78013423 889204936 579618131 854377626 415940881 987235296 443254645 716951658 420474704 892650182 77967469 265896334 269589468 316993104 153007113 803070336 260331014 647145446 620222465 756474746 447769 458755249 501503341 708167224 951523284 963463633 840859591 963032715 618023247 799831018 664056023 873234766 72601867 73980545 452098347 646900648 354808018 850633859 766739124 910982324 679024347 855622446 827717111 934974093 204862588 897689750 475051677 825659744 230817034 406367506 882493805 891314450 14661936 401824807 571483500 623183480 218525840 947721974 358607152 564212609 543083413 840416443 420599433 965408576 230939796 567697293 55274840 861393815 559756222 653810796 823719309 873699594 356415142 937506404 11978633 217925091 574070336 685365800 558888957 759750740 303997696 381321353 840439692 884856468 236981843 870977603 859332888 967139762 739446696 957387701 724699232 875174802 466644125 849461211 220509358 226059913 380113965 442248448 338265370 648465415 70455383 784143421 392719322 594061813 25183659 775969875 71459202 680424164 697791083 963714614 316035173 507417872 310029293 345118020 152420398 632807297 116079013 446768502 689702809 774098836 587415407 998996685 168373510 619811042 953704069 980920107 880801018 899953258 145030502 686655311 280650414 671030497 796194238 971605899 545112040 917763707 907212018 954637585 220605012 753513492 499951173 843866359 352447623 787820701 708009177 769998886 572366243 671853597 163671226 848734429 604473247 958900681 557716518 802186436 460377385 732395880 529870052 687181202 344041110 470276892 598467222 854052513 987723694 992899746 355623974 575660442 556493978 841758482 314228654 786377306 766375010 812016685 53924413 399779797 891320638 985897109 811030438 885485967 393047581 852989430 511772289 689692921 573192320 793169046 707280709 843373137 898306853 924323033 746306039 924447781 904465267 970263319 51351215 835233362 327817398 483707600 673214247 809194994 355263856 715749852 736094134 824539172 673752865 904044507 67736994 190281541 17359446 885709168 143407246 238755152 125011597 225544319 127732953 701272937 259663638 400177278 369531160 674846687 638162098 956230638 559950810 610236913 436050445 974159484 603830807 957064484 817773290 889477959 676528323 865060854 149244153 898251015 730834051 820165640 902806810 975066168 643103346 719399584 133650565 141851166 449657762 667979925 376665266 743655918 696625810 712377251 386170790 715428013 757421854 940433711 70845357 904165384 541541976 756095924 878610040 902142002 382464074 616464019 590942013 841355822 776674773 803221928 355877668 862134984 623133218 667041173 359453518 912730613 708069587 993397254 887555644 955526198 498097080 613307471 522573267 673131729 921492440 941985014 236081833 703175556 544551353 580369163 919279220 938124141 504081703 804253979 691019386 812868214 536000451 905517935 936512438 964043413 281630126 952928412 63923136 527123700 309969151 604617018 488151163 543131263 271523179 363078986 43680272 193886045 447834394 906663641 391426629 939107859 18987449 156588786 601152713 686567936 571397276 737348542 816876155 883991274 725569019 885920447 390268044 973190461 273237939 967827382 318391015 724372358 239088239 708668934 492239139 906743745 423440780 562911134 975535970 991283913 827995736 939945266 697329821 773111216 252784905 697673846 696981494 784018908 654952048 690320190 268403869 957463220 366600040 877312241 993793609 995524918 829309900 901382495 604438574 932225806 29611271 490229826 852508007 991593227 733196252 961099181 972816576 999677141 500314379 597269570 35870711 226316322 169170662 918891743 747799814 763341772 197982976 847857361 607939549 990163370 463813910 569156878 905039657 986922624 129734135 914574069 933523487 942003005 316143456 521135024 251175463 375713373 781222850 952209662 260533366 466548605 942543385 981177840 598038561 738628691 314913234 561060693 83570435 168842019 13714098 556730268 175362479 263248446 299463109 952496133 854240101 876483058 67226718 498569742 910265288 929902678 186561763 346360065 67340179 795850426 910726160 921362112 501243234 648218353 58595027 495679447 568762240 974970403 632765368 886555079 767397359 924347918 830334969 887325824 185237314 781257291 761029944 766885299 785851559 961073058 328774936 403421484 328254401 859034025 942786948 990345249 167733798 930907197 35711427 89216754 890496470 908752410 972971684 975728942 238750698 762987518 826929477 855559911 748856634 852531205 533031167 906538637 678929612 960112244 879294216 973810652 369198946 486602216 730570878 874505968 511505148 823523979 746706580 777587389 686109929 761813412 206604239 534443483 944295348 960699581 564470706 760355033 358365672 592998614 635823288 805894177 947715913 987399292 76647059 999622526 188451160 803711895 436375885 532550288 366125294 739091397 679351394 818231406 344555026 601695090 114682708 742949138 726424168 984524842 571489682 603396913 64098906 970839899 988156281 992699015 76480520 355212371 542197979 698661498 460624986 979781270 180965053 183520423 642529923 664641635 407904888 673188766 696819270 697077300 814861550 998421273 348737403 996922883 703800974 796674220 261188584 381712365 14834860 106901720 971962530 999499481 736017199 926277118 43440423 719391704 261567611 812535419 775345139 781498013 67979186 606046878 47035305 88657933 299307283 785560372 799804376 908019126 577558047 721250045 760932933 810323979 279586889 570028768 297782663 498836981 269677046 456335543 638594700 850336291 99344842 799125883 337583128 648939984 744239167 879973727 537543099 722889823 73440933 619287729 915053318 953777475 53664559 165584299 789549956 894056384 343934950 917518131 720885235 853051583 234467685 803880900 942586035 998852192 188630334 383846794 118909116 934415131 147964574 204488490 510204147 720121205 35952511 159422342 888851251 898689562 536898641 866772419 709353530 846074784 591674133 835387328 354524803 566788164 573106345 662032481 59155701 523187027 421628683 581909757 374956481 592776927 548209434 584851061 564941885 649290774 268246989 495174526 679646089 891038082 364864950 467153304 569760700 839677650 618059074 778902605 605814841 614741319 637429654 699371430 898427418 951741389 487475372 789897537 319949193 326322447 524412018 743307414 739458032 802881905 37613485 146092531 878739728 991273118 954837830 977522991 621377423 652485513 565546769 742548968 246840861 330159419 12442471 79668425 166627874 313830850 105650030 901412799 149325720 743459765 922469641 982205641 908400609 967714395 988997502 992315321 836027880 921044866 381195544 639061163 779948607 842964422 354923350 359141278 537955582 816733527 681709366 882029798 913922178 990902187 234089664 409582341 521662609 883585868 194229457 561635148 774571045 782857203 762614571 884206658 119696505 327809226 687335974 780966666 957451492 990551331 59729236 163234910 144618680 964169748 578872961 943683920 479948624 513388603 605306329 641539562 15483189 509419141 938072068 990043300 739565735 928379450 863142480 912428217 900446094 944272282 918646822 998390745 168076287 783360132 947233512 979871241 220290229 338012417 585060853 713048529 222258306 952960315 607704575 839414234 591914214 696149698 93197507 383259216 700503947 923710036 429989264 724737691 5900006 101464798 136349907 847226856 749480889 808067441 956750147 979279757 740593217 981410505 727241188 910645233 412894369 842975915 363006874 369132190 948303094 970588868 334442761 849430112 681319990 892176399 774772529 820931805 993554125 999080632 563913865 985740026 192833346 523955911 745531888 994708630 561085048 632137610 927915282 946551503 399953753 466799948 898239239 942107943 624946479 825090448 311045714 628737558 760754729 890919583 554695322 767226281 964773426 991717181 203544790 872433302 492016088 811988861 658216756 912815103 831447045 874099215 456953799 854877957 637807735 812256391 778390069 897428634 103125196 112679831 430549416 468787316 273954295 931206451 426872535 829577744 263272698 520887403 566582035 881139988 206782781 816207403 8279054 256671710 749375951 969081714 597523624 991600487 281029519 391054043 381597344 993715887 951849163 989144144 737978734 751314803 859771568 875678139 77857745 781553384 812517240 842674689 766492096 942303931 710619032 809410937 813044773 934359106 849665397 957790161 962198471 974131918 89595200 216189133 205187708 441232277 289292998 556480856 367428491 448502468 780948078 918224680 112018376 467255088 895024147 988443540 268725239 628593267 278368559 394770372 688231271 993830429 875388555 881279566 844280783 846999214 934736221 947939283 293032508 416344419 892856780 919206662 756255345 967280329 84164414 806048901 987497184 998488578 429316838 951469607 288832257 916752197 452607672 749453349 289713960 935807151 803257622 958440509 631347801 791515880 623739512 913001470 295151044 753266796 762065064 822536576 31773391 193837662 734489560 832580856 901717151 943924584 318308127 884705560 231537887 833235599 213967803 668921826 222202681 395630412 349088713 990891899 52843 426442757 271707697 837018189 88921214 617380741 502391043 662870925 392118637 690643375 559057720 953197207 99346333 620990594 922339814 956533652 252952383 334233308 5946688 715477974 333360943 945268964 139622371 287126935 278237282 646992257 81015987 431836385 440480257 554838853 438070635 666463333 767508303 896790458 615970572 876967608 355705500 839166073 98551043 764290631 601913279 802951821 160760084 716697267 666756368 966961902 89449201 794690364 382564367 872648475 697305160 965857831 765950426 855680671 14025877 743171283 216872715 763881526 786033866 799269440 843882597 929719238 617959534 914109578 587896372 642356934 254029695 728570888 715753606 805690340 702814106 841324431 115059800 750210654 652140685 953175285 738948150 993648812 122421010 639579295 310436294 813461316 924483607 981778023 198271476 589244322 207890803 475220836 887190700 907332951 144530211 370174434 484353219 605828571 948733192 974110341 66843156 993890830 575055969 764817204 560806571 588572434 737208963 754272195 568434817 955159759 982768352 992933073 939363965 974560834 420290791 671259253 335272587 683350247 715501698 841716142 761054582 825438132 63742644 903572611 929712335 944769067 814640278 822805681 645389860 990978087 862684440 989053186 833411487 917046536 817015004 844617615 351361853 662008585 969643842 994447951 956857106 966447586 196486772 364385889 114066106 758851695 12862084 898833295 394224526 854901459 704109089 813938605 507878212 651199293 263202207 348879980 704422707 740759245 265556944 454745638 409771566 547787060 483833337 622895655 258204576 303804489 675518645 905843942 393892104 505388241 595278607 638315110 142539719 763449281 557520669 947144465 804633287 958978870 115378809 799768960 208918133 600764466 273281737 970815814 233904001 542541743 590502359 661371596 290073345 701156635 98727708 551407233 32548423 239900180 347495689 791009355 984416295 985171665 176555618 576119747 479085894 643152609 605703179 759287499 917525090 939856116 907986226 970561623 814474862 834636470 512270649 733416000 753403218 876559495 319523971 411972787 758502091 841129166 835239297 836049387 471524278 743918408 269266632 733687582 574801014 724311373 737055820 796356068 411900056 814238726 691053764 805335106 197180598 956909220 117253793 947491685 689376568 776862121 492581677 927797334 952802294 965625819 857866435 884188392 422330902 657175280 479326873 986922510 616499428 648034110 242474246 884879586 743002491 862280271 691665041 719006022 30401875 531189747 860811366 894416786 756069773 955468245 792011693 949194557 267316832 687750910 332707530 354596246 655496777 672340745 863095065 904235101 196832818 919305457 660229250 891337053 416108379 493298997 808322320 823168785 326798791 795579205 440989952 824440695 242363885 508822233 269615408 276037938 315348609 531018932 808476264 895502970 361641926 719178209 485724090 594510919 517482115 765770765 364234327 632599188 949620636 970404214 255817844 943503753 210842498 533220725 143103212 512411465 295013982 659871731 629997199 982648927 339239435 526394748 291059844 916496896 498603929 883417301 181107162 735240452 810544067 988351853 682574591 741847053 712718679 884552736 621916888 880452096 594372761 948870435 58025506 825716098 373106687 760925355 550807941 968264511 233097964 507765038 64808652 441397259 251677549 339343254 155575957 374277347 763247983 974501396 479077411 972755136 927685681 951132588 141864037 859393196 298908434 583223545 390334536 507865751 503042904 645717016 233018422 685094122 658047037 847595822 210711573 283242713 368399315 946930601 372211048 896122029 568218433 809148214 544622759 791921017 208275496 622180265 947504242 980043850 511748233 633181808 137281472 886460186 540346887 582099833 436539624 988545035 875184635 936146230 126707167 348580321 82464453 636756097 758044049 841318408 297974237 980535618 979952268 993170327 935895552 998611530 354194603 485613312 533741268 819867105 747118619 952092562 805115719 998613822 910443567 963156925 240424731 604553464 874027265 961583612 20966546 167052336 66371532 670318713 783897220 889534363 517447377 811757203 497066478 985613316 856773141 994662918 156081833 805193585 158743392 604627378 668939567 840790489 882927254 954116065 257913493 359557654 607501333 821567545 894855266 936901825 313939080 907828108 1658473 83442856 15926673 239175482 868812763 998988323 496458081 733057518 660666461 830639879 479596474 807485849 169114590 315498569 319188659 534752140 248263016 774116176 228425705 834447897 578084775 812821015 447064400 715447345 741082580 766874551 881265079 983307889 440118757 561732655 591271856 867384346 566447478 865695310 833399286 899618453 420139442 971686393 101464162 700365165 997584063 999457735 950403680 951561376 61726034 695686605 208004460 759387648 326713772 607045102 393023452 873964008 18358879 702465442 780575403 797058291 711440406 976005770 827713808 853592277 837982379 891064109 862725001 870924801 120596599 390739609 403835949 924611509 378055777 679399658 71074003 866979522 317448201 746508420 149909985 562844382 38108866 695616470 509706936 876325631 298281341 663039345 34776421 60709405 54698853 897506194 501594772 586183118 21789885 715064366 373020485 495389314 348718666 558695268 216458193 942947344 266725022 826912960 716732939 799988709 629921785 873247279 286913066 418560334 973774257 978855611 524007663 612286599 706677997 721128421 29099277 616729003 470185079 491717146 937844298 964982636 491682566 549430043 955736220 972094877 149717629 369521602 964062098 970879406 438125270 920012617 74306807 803080615 840250035 940920823 121909968 280862292 75183879 137514338 675216202 931328357 315559798 841392907 936378613 978210160 650364058 979464345 740989806 894176534 914601635 936379790 512497519 569614267 115489657 552039035 503145353 908285700 145456936 411775172 630560057 857622372 187583645 323845173 261954815 501326491 477347933 559988934 6954514 675580904 417906345 704982062 458830000 464496928 310287548 322605665 125665544 586626321 207474731 896083926 631904232 648606629 470331305 868264964 426875986 679867153 188999193 196524783 985513611 993074774 240210138 952301869 181170703 809171622 178337585 771346685 993142340 999328431 97717015 432166918 143863502 721872738 574230183 584969039 726656985 913143071 798233139 975005634 276509168 522251102 726438016 969199203 207630706 253972746 655981820 713025085 513165381 519628952 596461743 641748468 931061815 998712191 45299194 297531076 413610314 649635679 6098000 785326409 552276856 782079286 61525082 635377437 844056661 945831697 958472979 982453304 653893334 677909370 278945600 723592553 451364354 814909201 559680346 979954329 845795253 887474866 849360401 934154922 461165404 707132692 254817798 963352677 900770993 934995408 683781666 747305161 392967600 396213167 936322962 954701218 524303587 846161075 288301408 904770563 388187548 884217974 236160870 811205511 623165896 703339545 152148681 691235169 261132148 422585203 355046119 614022001 927450099 933722548 461234202 562945892 579835200 957279829 656524977 926971047 206784481 394145724 693472983 742683906 528929449 849173314 595599972 984397258 222874873 766186828 109576359 824421090 777162836 879624236 313816478 979581491 963482355 973578684 407826085 457627671 317710379 490438249 89556176 110825003 594823324 808061037 683166543 974133945 735007639 987767029 724896139 894657827 497837456 857489494 200421474 335224276 893380647 930941045 235856257 538368114 518208814 983221065 609153240 916878241 146327570 833397901 88863966 177818751 274715932 888464049 82901685 416252006 330000484 974751106 61290249 326980992 184625412 586604707 576108925 589185901 739761528 742072226 105662700 796212646 307385808 468308761 386675127 896005279 859422273 924746660 134959648 914348969 918185555 958054046 471115247 821479910 564231505 731689063 400179900 585658645 777811141 982382859 566740446 672210363 835320963 887684565 149047900 898895558 943594665 954811609 392912493 606132155 495102947 650465794 70159769 400482984 921481717 989212635 725408290 883247640 26704894 48075450 895216655 993076147 33655340 329736524 149804614 831180147 438489043 770002914 836464118 958777382 279806101 408778897 541018762 628281848 438487597 573593740 911738883 950159343 110422218 493394816 261435491 338244013 646368074 725127947 717568276 965097445 39816145 710605416 589703804 675398261 621706883 904583288 27506883 190512250 796471991 857036515 117410674 217819523 342596008 777001168 544714372 902644226 789078338 835909207 108856562 993558296 339038245 545694801 821214008 854843553 126399821 162143962 321256281 756066428 869557802 967565955 385929236 418614862 715259076 849448825 64260713 717309268 247320734 248136670 52686072 131324583 181444605 313652592 656289609 885130390 630265905 931730982 17650129 671316546 14274697 667614379 392866951 689114156 280304268 715777769 259969967 485703895 268837015 443890119 877111320 966117174 462263618 495022514 386039638 927745803 347749529 776863796 399175708 403236174 400471319 971099548 419895797 610809552 51991394 61253632 265973878 416588840 417608623 420958768 59233140 567906229 821905413 990355435 350504376 972870773 984408085 995698864 108418322 914246464 355963123 826051000 301589746 415313080 717061889 974868006 187804241 757692802 27644527 254074670 779200936 792010344 515003603 939266571 978529894 985153463 603284212 838087020 183349197 193043060 230717234 504426230 868898559 940498664 137697151 272090271 726070940 845671401 525657314 726615842 317038095 454178012 67352301 928872070 649088357 700197497 161200781 412368709 148492090 221713859 606400547 781261696 601377400 946285478 324846343 949317755 767263021 816050339 893055464 949935446 664753025 834114006 45551103 508184026 215176257 956172547 935912883 974046232 698413431 970227481 340262235 381569764 347764610 611611076 649067161 828914916 263198403 761399033 665528815 700973283 278081773 866838136 508970700 966711119 571088375 823788887 91092562 122740854 821678652 904460092 465063222 728428193 516688343 857668372 374573416 535286144 965899304 997574445 873603175 911835200 205208482 581785969 216415861 288754333 661748224 957349624 37998895 71737361 131797795 238798061 601582682 723799217 532916178 985003306 125480997 176526158 85912362 266305223 229729296 464761820 715677413 976491247 170628370 539901746 329928215 751631009 653753461 940194768 290648196 879418283 888068275 911429806 980654864 985667929 234758030 733177346 683965195 817053329 900866680 912796058 19253522 391278105 595303380 660124204 243869198 664144631 17280787 777318168 829987170 963789239 774833142 902484798 351333805 480557297 370662664 716811292 804662558 834438653 236609374 642890754 539094339 625965240 592235103 805376646 635316046 938523872 199766691 314182972 418392603 476498286 226970502 950973185 840099367 896790474 550236695 745033128 134131013 962323769 105122669 605112276 649295627 710433234 46913402 346213341 480057804 699626577 30692864 715515862 892343729 908335076 859826687 982073101 290097689 733813448 115889019 305163538 653700899 748185043 788915640 806715384 673018426 877252042 728197828 901105295 488133522 493048141 363716988 449171711 303690975 885859258 121751994 661310506 550572613 868907228 239164316 871992042 808334155 956123614 915948112 919491434 775315049 862383362 469099268 847923687 259929993 567691758 313743808 749727669 917234010 958981538 137437302 588297116 218799867 718501928 422198221 554066098 439049808 509630481 529375187 896180918 528173676 750390270 854057732 990690806 879681130 915982642 653394356 925496180 680673255 686330167 650024755 908987606 926250180 969441787 322038052 501733492 813762717 822121235 188597197 834970402 261608921 899233037 77628295 361722300 799689624 835394336 225193218 427418515 275923716 530950792 438052125 761077942 705924045 800710915 616197058 925628398 633009339 788288231 570539486 796824449 342187591 785421372 901976386 981271308 23628783 332137152 684720533 807693924 189168473 944327138 131775928 245848105 821447796 903423349 609948121 936333566 849581731 906560439 192335023 973193176 628791506 760834401 88720995 366902808 101608869 642393799 986383100 997836450 91728534 384878295 747582165 963936457 763527754 787032515 261950751 905542393 410814092 859499623 594303536 651031838 35565205 311683670 210434149 577772334 825601110 904768396 933753282 998142407 269987610 274337072 228056460 920233351 843044887 970972983 286745767 375871236 407597509 697484865 928353980 982142160 952045714 960399606 262154969 521087941 488518052 611434252 254109488 990609707 127971241 788398547 630446989 695368576 183520559 785803206 61341858 754190023 168576799 326027063 334178096 465532445 55083529 265197160 554246008 854585134 987628943 995100908 766479790 780266940 381550693 496093990 143021361 931001572 753867108 787845906 596082512 832327779 185639033 961926266 827411579 956888970 306316763 339403772 576952522 697534635 970374891 982844606 385731048 636363389 109066635 737638383 659047712 669106030 724776949 971770395 971328190 976578870 434776420 632119936 313239193 445308561 46658508 455802198 221059852 311861412 228380085 664980016 230341249 524699907 197932865 248404548 285931356 395651079 786358857 859502509 933335108 954049433 92259684 204680072 548805827 811801612 241990356 270445381 279317225 703589588 210123280 760584095 347242568 820980578 719887594 958847381 595166805 684740707 125135457 465583745 915247220 957772408 736622721 807352929 960329524 971957084 171339908 772095740 370622219 921068866 530442744 915071408 253318154 519872029 739474082 937295837 563102492 795140571 299903727 343783272 967142305 982233135 701328971 856889043 756845931 860196478 165336107 344655900 610797808 931742345 833010645 939405919 979372672 989461403 637943864 848356519 605356188 822055586 174255216 460067396 33766082 594325640 23837544 629050826 874363045 881695558 133333414 406767561 247956811 436977805 913627685 944947227 613224428 703637644 990964948 991783978 828468781 943257578 125895537 685488085 600121246 842910205 985066165 989926859 640682108 892636821 873234160 998276923 286712138 509005966 945547757 981809956 986959186 993210324 726345206 755870724 981241980 991985457 922924545 986214171 296091741 875310329 132085608 978554562 382818851 759015955 299980032 909568759 954532151 991301736 988780567 994635927 894247107 936494989 249248926 615784748 980940733 982827805 309144293 777576450 466631540 733118936 991556190 992380310 108043552 474825912 433342244 658829569 477421038 905561378 58963714 723128101 739549344 974756911 391213962 406647915 371814336 409453604 307941874 769329774 817248320 859266160 585999899 678787331 454632307 777684503 970722601 977937835 996547395 997731462 554421216 808360198 898925424 979179658 168431043 672921553 490759257 965181289 708083917 757940069 716420529 976515276 198357099 246958960 483091771 513978210 942216643 994041161 24659738 838463939 991343725 991476271 282302609 506041252 844018906 938556498 100272913 190447215 806737517 971150629 900809938 919956155 795877544 867915099 646214673 658121330 487629714 742162670 767524246 828676299 312310175 523633694 648693407 930941930 888645055 952899803 888832445 899145979 565097237 596703646 252299749 817149216 233755372 431735848 393173380 778228716 375574595 633671903 491878426 633997184 348423848 895774494 518640769 563982967 381117877 874461508 624118873 761843523 597569163 878828985 538144318 886452208 10131406 672324816 52623415 954858830 684967072 749324912 427264070 920122240 224121550 694519686 119036051 419810391 270885873 595924013 496302637 919798250 266275358 500080233 848281559 987050829 611465774 950467969 621649478 698663947 163388488 505035615 308377483 966979342 352929090 910302683 240080454 606676510 440899834 791099180 19241334 815139851 404118839 643268758 238493791 586226864 881612856 882471783 826384171 956166648 68512594 887831875 416491336 871614768 189213725 908329735 654295662 838846664 689589814 812758863 698947831 719491297 487193830 814257405 427126181 995218658 238259540 718705302 741450066 858818535 514141246 999432514 953591259 982276521 516514760 848625311 409277667 772774374 379136766 598034860 950064973 955985136 370901069 436435615 933725444 949130913 183005708 243166314 615388488 939411705 397772839 796501402 171199313 262310575 440221580 523692223 786192074 811984592 125335139 241449135 659315322 909232300 381562171 729193419 874542306 887720714 734268566 884871455 195987398 644502948 63404290 908428408 659370882 921727751 972789826 993485055 56311258 84452568 673272028 675952307 462649500 933338105 663336339 967627456 890566085 899228686 913730189 985576589 219616037 593879268 141404925 270349440 260087961 622691809 4869217 323214569 19390378 318198942 790700512 831675508 510262037 648282157 203743139 899396007 678384811 791724659 27275227 700076090 737176857 813117329 977412571 987278012 815861240 957485726 794867026 850551831 54944307 748843458 769171502 783555684 587181151 765970050 616364697 939506256 403702140 919180296 36631265 118803372 28001722 846438656 53512047 380117493 111927116 390917607 595453151 598245195 802634576 805304806 152808395 239816203 170446333 989768384 777195516 888015838 491118589 602020108 735445714 813808172 270880872 956307712 287336123 917486909 82124277 793203795 559104514 805026886 208362554 649814751 875319882 987257849 456267834 646631672 510119256 942690677 499592572 720446780 424250826 822478787 903630821 919486722 92099786 980123159 87797053 768461795 550283127 682210075 171502498 328161430 181386429 253019337 797101150 846728228 814704210 867049207 712521568 864834228 447216912 490290105 592430571 703581273 849355579 923255828 768426189 917004423 38845808 897751713 694435292 736014326 862453917 870817598 903048614 983020688 40503789 157661604 864442050 977905488 933180845 993790026 157735320 255828741 590405206 634212350 681592659 708312087 464758502 733194922 734980866 983095093 869304719 915848991 618085770 823497531 764565303 982700024 148608384 177949607 426075322 830946037 324888848 800813579 860124894 906104909 139760790 625137206 416085662 856211241 231778015 941302414 87342622 176601924 676667835 697386695 498329366 845841160 169071469 368838032 982509244 991126033 167031284 953399530 843008537 902521426 901116420 962166734 810874812 906230342 652191644 695030315 826345932 952394354 802822157 998907669 362018975 847759676 390014186 537014731 239417515 520198607 862257842 879202713 388946298 529589243 352036930 478834769 937475788 945635949 949882104 970763097 535088016 617088750 858393134 937118423 448513294 941538556 487996259 602543274 159446319 173580203 441019220 751852163 214938915 561047109 972652747 986064335 266720305 703433735 15633632 982586464 594577204 946346395 249912123 989675959 409111461 601421229 254796934 614436596 760422131 904529628 519469252 712717464 323093248 900924843 850613094 915968260 857711639 913323565 132280083 578971071 955905028 969859150 575112656 796943506 560390976 921213717 725822524 788766181 927855937 992686420 846674271 949333043 45846310 122022293 362208968 402242563 687710455 895249702 686817798 993518855 592518919 865069522 938246585 941253118 526233713 864948783 498906164 756379523 307900553 667203173 25240111 482467366 883658811 887236805 1298055 761787217 648694641 687845422 875827123 958242603 313605501 712501859 792470634 969188932 272158237 743753789 588552638 956483641 946741965 984554803 699718551 876891206 252024773 795303729 781466553 781516530 161197795 878337628 971818986 981273928 926528274 965789060 763719752 983450608 779323029 917752456 415776595 732684810 960050667 967213333 244717196 332582656 247260485 399362462 334783605 942277307 962967067 993984370 82519231 501138462 696447632 771184015 996800577 997055901 581883814 890879207 862818164 883448348 628447848 862615229 49866778 144706121 158166353 592545650 49828086 456499136 729273767 919216025 769721096 845885405 404186983 731285056 726712043 873815569 315522680 590477512 118538641 534152255 148121494 427751487 153230917 969870528 269347712 279760391 637494278 862839798 794085360 859069706 754338317 924732158 938907725 981751770 753141219 903097424 659491646 787526422 531435893 832626890 558907271 913270350 831908250 959105888 20234138 455934707 325930267 715996461 301721473 353556339 433093875 480197340 133822522 661422260 2470461 454338076 653662832 655187958 906632164 997975122 787772456 873298186 258510902 626235511 229588603 502762925 456910126 712799830 62459368 505814806 110457297 289126017 710226443 820362415 658680659 701152303 963141011 986811731 834729222 996067153 396109216 827795628 38460227 337244602 212861257 500609204 212149968 877318890 535633154 858043070 27131242 721224533 441817770 518224475 952254016 987385355 989774329 994647017 970811869 999189760 924615567 987371329 254300182 657326178 63744833 314274395 410342532 631291277 162732088 371993751 456745240 946173524 813282389 974586571 131056666 335479468 918195348 971970759 348185353 814478517 496133630 737694097 480776418 985666383 907013032 956075412 907550261 999123160 197389949 711373975 32171771 231161814 589854215 981159847 229486023 479024928 717073044 779565694 941172981 961610577 423999553 763940308 405970945 583857171 565894329 704011312 200531071 555687242 931978717 986635470 280572120 533830791 360696866 710273169 505939369 679775357 1966178 746650282 863990466 916333688 64696617 155303221 175866027 704872484 946386607 991606657 827288887 857068018 255998442 534524488 587308657 991719750 67265695 812216687 225258673 627482929 849271461 893443795 29425230 97557427 420949158 482048121 645970758 706209124 495133816 519724601 272656143 378497188 921975543 982854280 906145473 953355855 670883596 941381322 387822427 767920148 470234577 473102327 909920726 965618916 16049612 724892659 865466120 939792088 90927811 252826163 979901843 985667534 304976860 485585249 837178568 972949873 424816753 905362729 57854760 814891927 582677788 757443051 520172944 671025803 370717271 467239482 219045588 385343828 990911685 996455474 620209973 864066376 250565126 810691680 273646999 409350550 64651132 855682558 366117797 406140257 246203570 408002995 611132687 625222215 499519628 620222099 376675450 839983713 612544685 829177150 88669393 703279926 651778906 661672345 289912358 591333515 646858500 931372751 467162642 887274232 123633800 615563479 978765034 992496806 489300881 702235078 109391661 749323714 813259146 820579331 236224830 691939636 492654860 687952180 452637508 832833401 469443087 663981530 857476846 980375998 487085199 627321836 605041260 853052005 814539885 973302148 136060485 361768571 874041996 877243565 977697524 978069836 14151835 453309117 757763590 867915512 990603155 996786613 126852587 530304000 247825964 499088317 984841122 988877387 164102894 647397044 816879681 824055094 468419760 808823457 114910095 902596310 220670561 896801615 463832048 467409818 133587202 733366491 558365818 878197877 801613628 925998537 360883277 855785053 364229984 891825922 771029267 822400746 43701965 418960672 442969400 525714005 522340693 776524012 486542082 493416588 162807044 397381431 763562160 947504412 326920424 954343531 625781744 988097208 13062229 196646774 379892986 489759175 926248783 967518445 219762834 953513888 437511365 812915272 581434053 716953583 161195098 656700733 548408313 564150004 799485464 980040208 368628334 749249440 817323848 824087247 569849179 773426092 150358434 336192837 434845014 952778525 906929545 982545513 790547683 824605246 819426829 834860256 559368462 646157575 9448380 503638985 12393832 26682351 623389127 710747658 145033514 223607544 232052204 495061015 508445414 882151606 866504781 945118544 729122846 813168796 963793965 972071649 406522616 682857370 615431590 653755378 95539740 782557524 901040139 969884311 502073138 667961599 370055178 796276341 73529967 528843184 617997797 837921295 240709823 689355835 748970677 985243290 443076415 514609793 227563525 243447920 513448451 752139514 323348718 541940584 469625712 656253577 713193241 768654295 871340055 968060412 889404824 947198014 955212706 959508057 276876033 509011748 944542671 962746425 165375890 785253555 619275960 726732488 524521146 912849931 321069835 433357622 13583105 138446951 901611453 905246402 939770302 984407229 414736380 439411605 629954665 872729323 931010110 992943754 295290724 745195204 190388037 410653757 584493370 843374945 82260628 530629882 832649962 944832661 139972633 434858971 886957668 979026370 770855910 958375171 594225611 936055572 716917327 990629576 6001073 440670218 841599498 931018280 975561958 994315223 533829841 599680891 78108556 863642588 182871845 366327533 356777457 746810729 981842359 990986074 500674142 779599906 241185763 417005785 379034608 596962162 366663452 517288844 266137258 414811785 923178380 975942176 774477238 917449633 719962968 843028909 333405824 686431516 645205518 647779213 327316618 852611153 707060022 912286868 201339793 464830496 845546568 912973847 893751038 900644259 213830189 760593533 736491566 925696246 833556829 850060451 784148259 966125674 68335130 890203924 560161230 638692213 542550262 820076019 745920595 957149761 584193294 915388635 292204160 883270732 35548520 814732215 151305106 293653481 309383843 514162070 683854365 928891208 936657671 985833060 997209257 998677248 603573958 787709100 240478949 463375140 256288641 955919849 78741657 211692801 743033363 981320396 783280762 866207876 179055670 538448435 861664326 926425781 614304272 851012173 284025743 855494880 952240349 966177682 991380991 994256636 163796044 982496177 386838128 429297414 294826331 800145957 165232637 977539677 883498143 949935561 88392276 984338696 267265678 718937280 252272934 344999002 392232958 706591299 726530020 903349660 816974582 902107474 262702 21431964 254804709 396652781 635746588 737168980 437902681 955215340 39230088 412304687 60213601 804945200 966673807 973577334 420665111 708634870 12031577 214055522 228554465 441186893 330628783 590071805 744416595 817671038 382498844 680198575 824266271 846665879 385053785 458357066 148511648 534062326 266680841 556308358 580004211 861690186 82272391 449775407 965854682 982105344 196013748 358202129 411498829 637287677 915733929 957064774 207160287 664494166 665479459 767981638 608809160 679976802 173065901 350526865 309950950 520228300 292574866 675820694 802795218 918005498 721576420 763977481 26280155 108295497 8268848 672167871 597157848 617163423 868996485 880932928 83051542 522453051 348515509 959025442 206632180 675267140 3333015 251213167 372980294 748052905 911410965 967667655 683158951 989398560 349052657 730165243 592590918 738355616 433344605 757373431 874638874 907798394 988409175 991054276 568946772 837268418 766069793 779965188 757441096 779286944 706769196 871843699 468207631 500268599 218218483 982434454 588117612 843416573 886135758 905060200 333641980 929669047 263012743 756204295 890898072 931718620 742513238 933237508 699392355 796495130 821891958 993672605 992638367 994211410 660998176 709409366 26674592 889660037 974053219 993709803 857151385 889231270 747949443 835558717 513238333 848044018 562696869 819452980 959712460 979846122 692946291 830269989 183893739 549210355 156657081 876244734 34377718 122133881 934056622 985167145 11967441 191152630 319974994 393642385 468323018 905511517 244681101 794323919 14341298 234595431 184140195 376270553 563541962 887160841 967905603 968752096 105189248 561692087 566734433 790517065 485475350 907998993 8261137 720521187 657610643 819946839 284819513 877330014 334895966 697114111 391449358 397539496 883603442 987445477 420629172 542329101 487665461 750325618 271987048 976133677 186931387 647977976 979754168 998808488 623616690 994949433 245377273 454113005 451120508 527117901 800865620 981369653 178551389 617034216 933666899 935933018 311136482 613197237 790643721 837453509 733216553 805993354 394419368 765685157 567911302 571391873 761777488 863441079 109062675 544497271 483995988 696578274 152275499 333622040 667069754 930415225 726859952 863288764 754546968 926280764 668127465 952705217 548647884 688069011 998976599 999568954 998120941 999939770 208093582 988483951 328157077 763564565 354552449 970882655 63489359 889488417 247061217 736364886 996083578 998332084 293495027 664052347 309265124 795610295 308159600 941770022 88691122 291409412 404672690 829614036 822451007 930132450 488505768 995063260 95434599 594641725 39559391 347403300 496735548 852063646 691299100 723013192 399130775 849706657 306515763 500329353 330424020 502221859 565660384 745914810 679763524 875918834 425005660 896791419 563954163 966287968 162815636 705009741 970679781 986436207 763989637 996643264 405822015 617985355 772391632 858672395 419575620 922556336 658551595 711840236 113645324 710482308 739555544 938994427 656761542 813606058 380805512 859635144 638438232 843364556 880519492 915999313 916828101 925022598 459356839 820294637 160637416 407304802 883550522 974370955 275109761 844311589 888166345 960898665 193972614 738811729 719259363 936853813 965599066 977579282 988873614 998803000 433701017 698229023 500719000 643875599 771772710 956933219 11130449 240372701 766790580 993001141 821048527 904848819 63821070 121860092 998931814 999695836 79970623 713540061 525643801 984159766 844172525 914773079 899430358 916836439 863118074 963653553 945890715 953750595 885717647 981449602 935700448 990645871 255856171 528393244 649647114 665153830 12383611 428213083 225348647 724247609 191119068 639122444 583087645 637395656 529678668 940696679 567931705 868698502 528168811 951031046 805521825 924683843 144224003 764123932 160017379 633817680 115306291 256980431 917930145 999220790 3655985 816488800 361371535 567572949 435735532 779012803 453653944 604107574 874208730 972113740 316579112 563996482 787440709 919522573 290976267 517546293 46775301 504038172 521518445 821358691 2236183 558583603 549228419 895399759 718090085 974636764 893724242 969685526 576892438 792795790 74421164 496487497 376572471 705642619 35329445 899887587 901915400 904745003 254373016 684319247 68304514 154403311 523086275 547496551 462648309 812400937 975331581 989725848 277169135 524205076 943015632 998736314 493960983 705060839 26567798 799961084 343797735 818324887 987240285 988484616 379856775 535743577 867508421 878065168 184459760 783181727 10922095 871355662 994810222 998286064 395298971 468608208 115679877 766788421 404501678 972047557 402347543 643194493 173874153 864014971 851858852 942126636 708389667 940068332 360364629 367164157 806095087 915084430 741875966 972065882 418396434 655103039 310692948 463173215 788640550 911482677 43726884 46518748 971135316 998110616 456397507 989268766 952267980 988094819 971192414 979034306 251387675 761356896 441405810 696136530 788571898 905002363 807659462 837910157 638227241 718159451 208500908 540946316 901855279 974374400 705554958 740365441 584953341 881336716 168409681 681966585 242215026 669263565 532661171 908886382 699671695 864048908 501273501 613748885 196174838 534579958 467146815 897782015 134492925 302392947 621691638 649279381 618482668 880882169 983548358 988141674 446903629 554691746 646606060 721930996 397691064 608800805 182171296 934427890 689299060 973492814 369926802 864990106 619848415 781139363 791286448 973625229 326327972 638290747 890365160 982592583 378562351 560795356 314177422 918165837 191654450 221830347 371745615 836433695 539343756 578161638 152716703 531310682 283167250 748414242 505450800 786187481 533400360 907118874 14528678 727514734 163498055 906670873 491486014 581198445 663380728 669520949 952312158 979328556 136782382 218373946 624850908 853365594 149229598 754558881 98132670 766844517 698539526 798618006 367391228 874232140 516617744 689445291 954902720 986550965 952195832 999960148 283349206 987989484 883092874 937415399 988354229 991645238 761515693 826759909 408082275 482726650 851023470 868149907 508262890 891049127 771250236 994506925 114898472 650226798 425842623 686106477 791812842 852028975 662511760 868418516 279586280 972450069 613712946 926176349 339641293 441578530 670698953 739092695 367704047 689623536 446379253 831199645 819153637 956712983 520203555 596559378 573854102 768721031 971409898 978439774 240727017 272054911 834721163 947621059 486881372 927768371 866964732 983297104 905027932 960339844 406589941 990396350 723096588 963051448 735045437 789991143 802723142 928737303 816074186 976606077 341217492 804725047 568932083 842467553 886769132 953061697 572146997 839118592 280229049 343344063 804155920 817516131 568517107 604616253 556866686 686471030 243377808 950316407 494445108 629549632 907080053 909475564 847883151 906738020 559521874 622909628 265176299 363650757 880538769 942945926 266388430 959954365 238099568 637043478 656255328 702969751 286876744 973038521 803428818 809503473 899894520 980273836 691437147 903247510 556979984 860023799 365574842 602476518 953401692 958632228 899563477 934572001 61337753 827208706 103351781 856464043 44987829 215045800 907954206 920972460 360232747 679651741 626536958 794853292 318841423 622312820 875381794 878551727 773326497 858006944 806073141 833620131 362254442 556895486 556188037 640194176 299660973 762500322 918066850 958092076 875437080 987902246 793594895 794637119 766061260 897451456 838274999 857673400 157424373 289054377 294084771 889300071 72903746 568903036 909928213 986492081 213112936 526423396 99727743 387514884 161898713 819503809 63843536 128050692 45308165 345341308 343884967 853932876 676008192 786008587 419857202 573185095 289454831 667267526 472422137 735582600 712112790 833744231 299671418 349207043 308734461 395382156 638475006 725263220 875014806 930704790 576120778 766382010 318146468 341416548 442191154 818289140 494474511 684906243 243703439 331706572 529130060 594478119 139672442 547701909 308740482 876818127 481596100 758050012 683012957 808152800 368332861 562398543 969360508 974456919 514139711 696469642 565263155 720360977 201232499 729874646 199271570 271472476 591640453 714525689 942223206 961335509 762431726 894628383 984762150 986456917 394157140 570661532 7683565 719588582 120614128 742441513 413622606 492410266 716313143 792268027 296398178 334022543 364687991 542272262 682181419 710602432 957427757 957879253 596746087 626256978 616340976 735322627 886288786 917196677 569746786 629290236 315586802 561738796 486314457 652113276 106776608 368704196 495347124 825663031 813232627 907455470 685539327 883619662 845075967 976773627 494588561 791217058 672646043 812648684 81270999 223693538 837714641 846800763 604009058 822126488 361915350 653100438 236767704 678234074 771783345 929545343 63951293 372494748 114899177 282930406 64488773 156857217 143162829 471076031 161677713 825316008 981479748 991968493 116851537 267171314 544488231 757762313 188640080 406329071 335199324 831882958 348600468 569352574 649328264 921293918 204603211 838479383 183586953 738868345 460893154 894939757 96646306 473836056 277793263 389362523 82772103 587324049 651898535 800957288 827180325 864272699 212270760 469194451 488382935 620178847 811150821 928011073 982741474 998603235 361778915 581352780 174103144 282815311 737901404 851863340 141391152 927676498 65185303 704134943 475441656 504091000 230819558 819410666 714711541 924775713 473302368 802934379 769818132 971803912 856382674 920091315 347611351 985590150 489107460 578070173 450207597 504013296 911822965 964738933 809261474 889197350 511315390 956160919 76709860 590731826 434476795 934586662 856389882 949327732 157660597 408519155 23253071 141580677 204909844 430334940 720927799 723742228 529294987 937569330 388021166 696783299 216826667 428605082 384574811 515231608 853119996 891587621 664986714 914568719 687413530 869571126 679218888 972346466 240208437 928401994 642893027 971919015 6876343 224706091 584701333 996586377 354065135 376311409 857922315 949701386 598639334 875924939 127208688 432171095 547477599 586202143 617002 673868118 266416784 494960985 500160500 618667977 685996778 734035521 209974094 523165699 740071454 980153527 287039203 301207059 596589925 933174200 613927354 805987560 83949008 552043122 980698927 990610862 827367661 830348978 488421496 660112403 854676349 908567881 130818373 668149738 854733622 957996755 857767749 965209351 832854478 933071396 554892533 961812893 457708055 619290608 745458233 918795879 709016089 797896972 567815227 889211608 134437858 734276187 548487458 608408889 694856990 709328157 324630619 739708594 191534860 593356924 27888684 177641256 995399336 996377648 392428154 917743078 810814473 962848286 902863528 933381585 484902236 585542942 139238335 681382839 808798865 974944744 147311497 703786110 258363142 612490425 63414989 817857298 324480532 915531003 678040144 816072578 425491942 807958585 25442492 153604905 237308724 621344440 958201105 985609103 937588325 941111226 63371103 586535595 193281560 234538058 781073679 925496588 699737039 775424860 749071573 870253438 409303149 580315928 550080426 792284954 410342431 497108982 641923174 849774695 11001213 936827869 336824332 936948929 19216997 925751551 955180225 970646869 224640370 919844404 451079015 588079045 469444292 796228667 347345047 477872601 295315300 483882508 886498744 985858831 995055530 997514074 816009824 966555217 164401866 237499049 295750137 700954163 432088257 975529224 401058141 415021427 251990201 977744117 428055996 628418363 406029355 588085151 106577028 662855849 839859626 889950728 817501414 862676646 44287073 864457117 885743840 997120443 425962505 652312669 872628301 882488311 199101611 670809254 198326426 341014052 107951050 274263388 38116478 683208625 970658963 986165242 655783163 831521148 491895704 810388616 931896549 997662916 642366378 779442171 902206681 926488822 316405998 568269316 493666632 499005553 730547415 761417687 337107239 636376658 997184751 999912129 672250053 834993232 863683203 872157624 140665784 617962855 921634015 943640147 927667402 998522461 584850548 872302099 477899921 606959556 444200675 699002186 567189292 678544194 102473324 758136028 467231009 629986767 685941068 861682456 93461509 686183903 503054810 970095668 445656581 852884668 404992380 775702632 589670362 834995961 950920625 979330733 42568026 207645537 540385060 687869451 715469356 977236105 640790456 873470735 55894186 141947063 387450407 432814479 23864239 820050391 601087805 838383850 481334540 780623373 324279458 368963983 777857081 881067408 205596614 750732330 336350669 444467636 619908498 925518256 124253661 382023317 169871404 775256211 393842941 595206743 377812306 587336460 614472479 968218550 729015105 806699031 85208963 469905111 763221710 838777690 958647188 991833164 265283055 855034292 341950372 877195889 946997536 961227975 171234252 898597444 133069542 377138749 506123198 978276015 320907395 526776586 300992639 954608852 780915299 862704241 96210780 565810852 865654529 940999274 248928783 629886095 819000653 966117104 985157444 997877605 884728187 935647359 849916141 942540019 164155353 200076556 260689238 717691671 997426957 998870781 678173863 996664225 399132187 918036443 804781397 906004515 147508120 329127581 87088001 622303743 316200845 882100039 645943121 660037721 752555927 789993737 645315788 994366303 778166718 912569824 268356620 346382016 563646356 810608150 113021965 163789029 286698953 593880673 466641397 658522407 548363582 560372196 5168512 670020262 110086749 134843705 911753249 944580976 964631187 971865116 59603928 566596001 952022772 997017975 962336462 973673371 427606770 434906220 664548835 938506012 326410577 760557700 331619815 729769322 657125234 908021084 942584572 962393645 318226262 645236151 366694637 983765485 655664309 700856750 501227390 765329808 605593846 903454284 737815575 811303811 628763523 746520792 888805946 980971600 744437366 802010077 343634822 882157497 649431386 882905903 61343613 178163183 387361764 772500826 974171000 991736112 837621268 970273981 807117261 955170186 551450162 931887985 892305166 895684412 253395472 713192389 656920407 950608666 383595221 533856679 67765528 554849056 178756645 907080362 545324320 626574971 875591270 881536246 600169387 765692875 835579795 996286011 933695240 972548426 168036474 543807105 791901543 996126586 39741551 725253534 222998077 271939472 604045143 766580273 591600985 806655597 149970820 322395006 53707497 245296769 729436918 893084198 238519940 344858366 541343698 635925306 872424725 997500328 241539383 756904279 743139907 848911436 730763220 760494358 534459110 958210135 898468829 995407164 77063186 736030894 531165233 946899716 555351776 706369924 297147422 340337759 340441980 586036349 135069663 169829743 527485916 716464304 483883547 928520642 833171453 930952209 314733351 748221174 243235219 598559582 820646559 912029647 457273325 679794853 265258748 450503241 196487863 905299680 423427172 664137324 755483162 903694379 187245600 529916030 837812455 884192506 345173072 574720836 377134457 628382397 631312721 825677206 631483674 844590480 622361961 812673517 606457267 614403630 637764144 968403080 245208233 671765395 743002832 952825178 772978316 783093119 606101654 800877211 527217738 869833416 167541198 847003149 930077593 947528115 20013012 483966767 184802227 296681501 580281718 708643717 540901779 769225226 664167166 991537371 73966697 453437831 114401496 792888610 198452448 474452212 583970212 755076405 349661591 888359269 826145280 999813258 670347984 869367133 744079412 979731848 672057847 829234252 805938766 969254263 873809192 974243511 697170733 839848463 588680673 829111305 256664178 626188431 834274534 995843004 56303020 637121202 638882714 985108686 632048630 745156428 528064048 917259699 728708453 734327620 701079724 933921124 219365606 558053139 99221351 370778680 373154247 480574196 250954791 669372520 880196385 935817402 146939838 217450553 89548144 803330705 534242879 693162844 547787406 770104614 288229421 316636433 322208775 955798445 757669953 984927992 493203836 942306469 66096632 311088265 310972344 942287307 22130029 700679534 934168866 940687490 399911284 852514405 129775129 151159845 757426908 810368106 789951502 907455705 690847674 985853188 435371216 961668008 803367876 984055337 530870582 999875526 574032053 918925039 545732877 870683435 979051492 979458554 841133867 850465321 246490958 585610709 569802800 785485410 271439970 696346245 442718380 768769812 497892576 511074146 662981876 750542163 859247919 866180246 23775603 395685736 923778171 971308564 750458256 853598161 83329660 632399190 991973684 995100364 945709121 974061274 832760071 867398466 224734469 779523713 452488581 814613514 58195398 301051694 554865284 939868895 502024080 931540291 709375214 762997694 74686107 177175119 300232557 600285406 131434492 838835017 762820135 854018575 234633943 708448313 419601349 550117602 407825787 831124828 207836132 573094196 335317410 439991177 201663088 737385232 724489561 922224712 743628551 953676503 512167639 638999944 979835196 983907131 810821251 938206132 68419018 770137169 118700068 837206241 546523949 613323216 815429095 905802435 404217353 848599018 647627132 660996091 131950456 970523549 54612869 681561431 908495208 971749649 57549003 414713010 106945894 267175002 114184389 587712539 331175298 489873915 203886473 426429798 324951669 556594111 137776182 817734500 882446984 990022053 809498491 822877632 541331597 594667396 483470968 859220751 292997783 893526380 459956753 878437355 368466067 978829512 301017882 815266188 849692296 943570086 250009934 303628251 154960956 339181193 735100458 798419457 71525183 123064439 550474496 641765801 111835267 930347087 445590969 870957605 557925588 850319390 202532548 439806513 178073823 699701263 852084019 999046631 611375160 947010421 645039378 765689551 12749121 97526265 73944680 590160184 656753896 940884232 636499911 682505315 468561960 901178493 409698233 719387788 259887793 490243455 307804368 791084789 252272051 821934299 923428692 946056804 905042630 933191671 218380446 274291446 871535342 966873996 148504555 967514729 917283134 949942064 823151349 832649407 289871914 852361076 572607273 808210373 236091512 943316500 282324243 775002793 411895251 969395909 360905734 551579044 740874211 788000164 491120263 930799047 711818835 768774062 913477096 958821401 42424997 380257586 15574974 170916974 966780879 985092849 758395128 910528591 814363686 915603476 510864226 987357299 71019351 211792316 455397316 675748449 327105540 988798215 631742889 674136421 922224593 989458649 31056421 842857007 733227283 828651953 111780610 261276337 133647680 488709432 381499759 569602954 605489497 707780810 284359936 875832295 547284734 795330744 923903926 973613058 66648137 537158966 330248025 450322061 885346550 963986190 895263095 935513238 701917985 735828861 230857821 562996197 438893029 754671586 573438001 961935395 751226807 931499562 455634184 805509070 838956819 847194924 462068540 808136132 690605404 799388073 554443290 951558057 996837830 997422377 730250364 937485630 738741956 875559390 660151391 766838262 106155243 184452267 356651425 860367839 639191167 666746702 142454376 246338903 644815388 809128807 833189972 857428386 821704732 939546644 328886572 524084699 224821258 861498494 587389643 938496758 859694342 993889892 580404392 723395575 293408231 982042772 417320432 860548687 978790314 979653524 125194411 143163599 6191526 908518515 522670297 681124808 979365760 998946263 630747118 750089593 898747693 965560598 783268995 973414374 813106913 932551253 372997839 580405591 476476874 840654659 527594081 823121463 579096606 729518521 552675178 850548447 235931183 282828617 760491784 890006325 999344076 999561503 892146573 908037397 135337700 516686767 423513243 879024782 48708365 179171536 731482355 801759258 756009803 975182151 71931094 777303706 301170454 864480552 853787776 988870870 118302911 127124274 475692717 781194085 895902029 904624702 346303711 696189069 133780270 463339351 989488550 989653601 905673699 988123929 870676932 899522681 508558025 590334440 697134867 827979748 50437039 486771714 481008956 502017148 469243693 908943428 649504655 715986542 370870840 984656857 73124756 152953291 769562655 956574311 571119331 931438944 791534122 940579902 29499489 270019198 171392596 773031400 520119031 547592178 923576177 996339502 904045483 998586021 334966762 570919849 169092751 461305677 196492004 815919644 818860920 927941044 784326362 835333950 125340921 637376679 568112592 946737301 110006656 558410087 86466316 711602535 60605820 473384714 755149989 931219952 390583096 955787255 98470690 399942234 499172939 784026884 807778913 929552255 248392240 593736368 57457734 182972632 500045505 710672914 433506112 635659495 516913027 737003879 347677446 552589647 663997973 938927808 527406483 722721880 313696075 694684134 666185406 995800427 203624483 794770290 796723321 867504983 600474118 775028307 254688030 596092382 94058185 240996730 185039816 406212583 363788349 705732325 198588057 262652606 221698212 379382526 46383300 364787917 221236238 333638416 852215190 962579636 292217028 836145528 417018597 987966181 654826928 994069217 274179827 759948789 174531715 209512525 386286049 863925932 930987773 963552474 348324678 861641113 548569442 978541705 531374422 604528762 209880129 397445213 46817944 97447309 604836120 612421223 139987062 348992682 668770517 852961751 131097755 848627591 432601626 624900928 212884232 283551177 438604298 915481266 798720515 863154937 315341081 871199053 259126057 742358577 992718077 998157513 391895489 901389627 597432617 721691473 505372256 900903304 575040944 935884438 70792808 479979537 286462059 898293448 908915176 926656729 185973183 249079095 188238646 507527089 418078937 505538411 191704332 862106087 827249649 951188720 374833367 666265846 40310281 422984465 658928392 751806033 570982036 770637131 920135430 979295229 304751135 555701107 301675038 440138854 205099557 909581645 214741012 300174618 694952870 750872009 666700459 995460247 218701038 342591852 342244793 531038577 429602736 862019364 634584316 813888733 869514001 892561644 224367460 250711121 608065878 660514459 106356450 816207574 689785923 812870878 263197826 477066738 404261232 990266403 777072424 834886072 966241973 979451657 690467390 938684862 942241680 980913015 191416447 755483949 314034058 788882318 39945699 990693940 710869334 890934960 814452428 847401592 929880426 992402575 791674552 945723631 723546073 761443312 231153592 464968146 975042523 978220824 59977325 431360549 74390589 440553578 562551524 655539641 771091096 798312678 727855325 925444798 357768089 870561587 112212047 161858329 370469378 465931114 6868003 793304622 762270776 842695183 226370664 346623841 20260092 486718261 200579873 788570456 948620847 960065634 653486292 955731736 564495834 788524411 905553562 914600374 281873086 381981595 654591145 821366343 748396311 965628496 879520474 995315256 784620504 845888788 112261319 717483294 179740954 383205732 543501029 651759856 246404225 434244710 802717539 833085783 35468133 473927588 837567507 959446023 551496081 668642994 464632781 794308233 593934772 656954312 841590323 847014774 535689026 651957681 227130149 991805993 328625359 478841583 554154735 771177150 764895031 958313329 935504589 984423381 645872977 651407892 350860844 399202141 317515936 660874691 107234988 564448926 638240463 947252045 460514675 849256285 851880899 949165850 931769496 982251166 264524015 980907000 500538604 776184813 742427244 914312236 639999470 897035675 750071492 951558623 987652849 991580387 955721166 985527199 304286389 550660242 125525037 941953137 692398338 831740590 894040215 903206487 562983060 736349789 486436881 538559189 107172505 967798897 855303959 912710070 112509853 634380450 693524031 962936902 835837233 907163269 177250758 447680680 682460190 905499355 274151230 301853950 169483140 730042853 838838914 901861256 418902451 666587389 560666571 687499333 619421475 990252920 304647744 872299860 696401242 873913200 429933809 517365852 155221355 542442402 706860196 784401584 523426664 721993380 592515442 613117323 282899142 914118273 581778018 713998804 343968132 577419993 402021981 777667665 830859979 930544602 971305569 974657874 459959683 560587666 193936030 247191966 520238905 738954075 498599440 920898900 244277025 267419333 492727967 724650605 445795293 722544841 67098514 541948082 853179893 992182822 574815408 766057748 203712211 208371087 893539421 929424450 250000744 467890845 126527877 334719475 473668279 899414876 86770880 875425691 550543223 925874977 298677720 540968644 835286669 914859862 348653611 599754611 919287306 951945407 259315334 764577520 162063132 916725677 576925304 905116798 824470016 842573902 112572329 285448731 910455257 921695297 20063229 670924215 161477035 369780318 705183076 800318553 301102674 456444378 803801281 834561834 989316514 999033438 129939874 259206609 6760181 111300780 14895906 31872591 996911376 997469935 771929334 818007770 706431055 796758303 538286468 558446748 457668515 757220954 516564651 742585558 29236145 740599173 554125099 915931241 228660452 435160518 625119699 974213818 987663162 998288364 131197294 783665739 727822361 765703435 208412275 594648492 798065583 994088763 431165773 794828417 708807506 877425430 87180211 830253203 619608757 800288826 152843715 506244380 65973453 77383711 381108934 743654796 464344390 773399625 55442580 760855662 855173349 924247270 58089675 219605066 904528718 905116484 272419601 546864875 775866705 927101528 523536763 961384968 599089363 783539849 130283136 705400214 913215822 972088892 522663509 554217477 278142283 457004603 968539886 996212335 683683283 728538844 30083511 374902627 284935114 433154482 608656423 655334079 617465550 651075144 354642082 788575331 350298443 931668542 169463984 480978424 954214273 957764603 251100698 793597387 810006252 899033375 567816370 822107075 843649743 915875077 975116073 985087090 177507186 190817315 582069291 822356577 616941638 800943151 32722889 132082755 524076292 829718856 77493786 826441543 446212249 729310046 449448110 748529024 658784816 684940017 929554712 929685959 238826163 853927534 555055713 966532514 212139580 305786067 19864111 886528336 44046233 876828402 611299971 942771768 135946621 980607649 494966009 729809672 250725930 956881499 207932616 567415976 597163200 821600390 156699536 386161276 182217136 591392274 329080402 681848492 819220892 994260096 111720015 869720597 234044774 741157592 490931824 644682934 715328766 945414806 696035420 759160267 344925666 874232243 306028595 344667128 332200985 701278061 204146862 568788188 62321384 830515060 796175164 843658167 949756208 959025560 673081587 998899750 773334624 997092712 797125152 902460542 727393555 781353291 653437355 917227018 499631209 635289226 170542685 530578862 330841223 415811589 895904711 989414926 574066802 653072969 257884854 523781856 311629596 569871816 549372486 821833631 553579470 699368257 413918988 458246982 724478927 855475458 756535586 788388272 679025778 858927746 960037980 978395343 215010394 642243939 505028304 790268340 726982302 980260435 422382532 644987108 437556224 945181029 649409513 949497775 334150642 752520780 661589408 949788170 968585933 972888021 45891590 875409912 4169070 485439807 174888108 529910003 549604351 995521203 778236335 835115381 447840105 658666813 866136498 958831189 479619762 931315158 404776299 736290043 952487071 997003865 51305577 932781561 597247926 713258896 727794773 965760452 732509976 887498380 131373938 432695511 754795976 931647098 334462587 529973590 172222917 688140776 85544057 977535689 469862145 853103729 369618456 925185840 164407684 493435555 494263914 917110704 215843823 617249158 478655597 822669884 142592805 283203067 367896649 696482711 728758246 980080232 638820691 851236180 524044650 529949275 951391474 983250545 495928658 691892908 528558727 568197404 33345039 726616815 142983195 931925097 378388053 553414572 574130947 985433429 637594599 848364061 907828107 949058475 615747716 835469055 2385328 749851329 183495658 525894647 215925537 550535383 854500165 970828426 712153200 894975085 239042692 509595713 646463080 667708856 653874806 734447149 521608996 768468672 376247434 915590944 16505497 224327828 825712137 939060521 417945445 959202080 79049865 277844351 995753807 996980358 678857524 881784276 587434822 923935748 144116084 921557240 237472883 990964485 352088250 407829619 316880590 586023116 933242582 989359889 442080500 640491921 367655737 849778505 730213620 952060757 598292414 753506113 621441905 810168975 124706849 851456000 107175770 633351630 807290860 842611932 730381412 755550431 653973314 963109893 219292058 263189680 497975494 813380944 34258320 195178491 871959022 992913138 154694307 627582304 323516670 684941303 505486796 918565858 59134865 140406659 287970487 743745861 316574646 463826910 815613191 848251627 241568772 607736671 341642633 759929039 906440421 919921757 719626662 839139587 85874862 623739164 118875192 747671499 309771666 535565072 723808056 930878089 357284960 537331951 423916797 427508271 655778725 947995404 414701191 479016322 755698280 965216613 815853012 978256891 384996824 593390081 812382111 952681906 45252020 816531833 614261131 817550726 97845513 275740869 336749818 739645592 621763942 835130123 982993937 983182302 149426190 436446839 542215133 792539695 113549176 344776527 74398572 254455969 114527180 489647966 945029246 979175819 607112906 868862503 405299434 819964125 755174367 878747954 110374541 874377989 935190543 952790443 621110128 883265646 808908956 957238018 768603474 956283917 923154386 963023852 13833294 889681889 841952870 865113498 565534648 608801515 312926417 316979337 557119603 590371275 670394238 771636451 34899641 460361729 697963875 705785448 805063575 967766976 107641807 762922261 513274738 900570212 522420042 784438907 781531059 905315886 944001366 944433877 519482326 671349254 380555338 638431159 292706267 879538481 242986162 904287094 659677054 813743582 224924962 871721934 955330641 974083475 993924563 994116027 214996635 785044742 907707089 996736684 447738118 838047614 854084159 998413741 703736524 787301782 889992590 965775107 301445722 975936379 172802614 433210098 314557773 423446612 728869296 740142168 930323658 931941872 940944360 993254776 85536950 360801464 8907464 919590470 741055701 907034664 301225748 731570156 576713257 991408717 252672115 268180585 204115572 390096791 385421634 882691402 657617556 955888409 398699989 531764002 559880693 771369283 462261357 559782882 559446157 577419730 477540691 541031803 492490095 955106327 675276675 800527903 279298854 609548737 261435973 758545856 492096414 796446207 566294595 627306158 672905162 886124822 479844748 537082918 507203842 933686404 185484883 263695555 314326468 889015345 305609353 930045836 591359545 751830985 465268192 723809993 959554483 979222200 249063112 891472175 393024570 854252924 322449135 696749656 406628767 753981357 323408596 995556418 233261267 565611624 708407397 872194799 143739366 886498736 890597526 902933924 988782109 997531084 5093597 545448725 562319491 782082361 360888757 799672186 417307935 857061579 675104011 694698812 130648713 926175721 294779064 406660955 78714049 686350956 120146633 766423810 615765693 843800060 269758209 928047042 981031806 993823411 792831155 931625353 894004343 940916388 338943072 986112265 621560589 678126698 15683522 760552124 880059496 978068738 635346001 881487852 897832435 925097605 390870761 419194484 87494725 132330294 458106493 610560852 528802686 866367276 54379642 636232533 959948236 969598507 980871177 990786500 111194460 970818648 559700153 751839580 286332134 985360275 714273256 742564934 14688165 377379786 240041080 812549978 593106661 949529141 769962884 837428939 179637316 340317927 957593118 981185751 404866772 738846762 367752322 941313630 837221804 952406337 437795918 444408704 668212849 916105930 485914987 774146184 402657933 992267081 613838623 958017179 362109557 936030821 151865978 606573575 5727438 17363861 552997528 840961942 5977247 467551703 600238734 877092860 840238672 944678920 22258903 997347309 113201597 925137049 964632180 983947283 680061090 899761532 131555181 186801136 754394758 754698073 446741755 968328094 269608993 981328065 746670256 974451126 295150656 833936792 373580260 869055001 330433339 498633732 492123221 758011201 668033684 949481965 169956946 520856741 679514440 944400103 33403901 586127182 439405920 632021490 70334465 966483748 283909265 588866916 141259582 410218393 553500109 980668602 816139308 995220147 681009572 835066330 526089592 927907742 541710333 644029502 355909364 461414479 292941384 622734208 442206917 641545148 727094393 840545244 343367989 928707819 841530710 955926156 89855961 432946016 945429403 987901518 347186488 348656178 632891074 987135254 700944914 857250396 361429910 692858328 722894784 956780507 720020803 938824308 17555886 413986842 437039697 513440006 581428868 825929478 495320117 504229843 265871696 951177197 778343003 830809407 234303373 997201345 477709892 820415987 902700141 986261157 371129833 681293316 926323350 929079211 959187593 993262498 186449889 965033115 916870379 981714264 745436823 995206041 241977738 740087035 720306316 785065443 129664880 967320823 588471220 597878470 212353052 654662763 682378397 723637508 436068479 785688431 839553471 944082072 260996921 414449161 76845657 872796348 162125817 834242928 429060569 438213417 794438760 924448854 951021509 953065226 629210613 895626457 933605759 983016381 844542458 986089058 879040988 895425978 544400187 631936505 141720510 860322340 153136821 239794290 139174169 419537337 569283303 748944294 918167041 953815378 684002551 825690555 330812012 594001556 360815605 719855746 216255914 274095066 482255852 948247514 730843065 846790955 316436109 713330938 388895361 731154177 352092040 362896500 954259509 982663699 627180015 825557577 122342319 154040580 225371076 594544578 741700605 981708387 195048525 720051330 330778732 391232444 145887182 860185438 921070487 948355175 634237852 896724003 139565044 580488037 502239144 752129361 157295520 550925420 379361487 416198474 914102926 938842167 767897224 847999379 439585384 471102802 685723456 913011739 540824760 808797218 244808179 356797167 413255122 692588142 924518778 932642371 438148592 534131235 96859132 858947765 894375265 965413568 944950576 974756491 800497469 902574914 167581393 236453868 214081669 744516917 540965256 582279275 114651180 493998890 428856217 498449866 272928465 742845842 875900152 915790385 48544586 173864278 264713864 991993652 468862327 577581527 809510817 903271177 46249793 703664121 565422056 787192153 437090636 676014847 448845113 882419810 253966866 323782895 902630294 983523229 574910538 660863272 220202095 481507578 980721637 996009769 127494072 337678650 519012474 959732831 434952536 961108261 306698346 388255559 770948180 869747460 543125119 577307340 363174804 605628746 904816366 925964953 939104871 976557501 746573456 959733472 398503442 706972283 139799128 813648449 256788953 547709149 132851926 846217251 849738422 955045401 126098745 413782296 108425419 962582108 902089477 952282679 791556747 794651430 652099567 688095779 957557152 982537302 718924109 780658359 507087699 962800233 835323760 911232250 10531617 829771691 146000836 256356580 400859301 771704816 562989549 744113570 303409898 324542620 786167097 950774205 621688650 810602949 749932876 972026217 334036540 494954318 614249126 851195887 544352383 870401608 573345577 870934201 6397984 998090134 316407284 639288529 435149896 808742724 56876536 428578507 852052825 854454590 36437133 972930958 827033257 958882894 384966405 509463192 239323104 423411453 258846115 262020666 459692308 561590461 950701650 978551751 93861310 652268035 776556970 843757708 474195183 604393581 61591281 865651561 406242148 675882080 67219711 293699884 792399793 983163975 858128530 860673422 441826130 711536571 185016066 264283887 781828486 825171389 474366042 599330004 934186587 983832991 672094795 858931339 504362637 880801421 102537244 444033384 538636394 713973812 53955057 840550861 913390564 926055648 211940360 488584880 891498207 930636302 308032477 942724953 405048052 416618736 716200407 829010974 234003630 744729549 356534927 617612796 941466507 945408445 883350549 938733218 907938036 934122665 186024807 448221762 23899701 341127987 97186949 664238187 190142331 352382975 695103270 928575146 226818024 521769216 518695271 971504487 186128503 584748029 638752688 714203522 821978636 986096492 324151099 577900526 522522253 805879971 362961725 876136817 114309308 903654674 474062383 538852542 643647236 715402135 432238215 759601739 975709861 985045601 768421805 948096580 131610104 163802080 542717920 803990156 687731426 853730695 777514517 949398594 634269512 675605665 454475122 646627711 266146637 874304649 458653593 913657668 968995964 991098207 213579148 371900832 731218457 771418748 785472311 804310740 788601271 828802488 262496612 477551410 465562998 674786313 10171548 711498777 563279788 713678374 304624972 683574595 204350529 793840389 391152024 834710435 129415313 208695833 73521980 216103377 510668102 874527089 88119507 115679697 869498387 919875787 507367246 602315296 924792612 974878989 940507127 942760257 934634737 974411140 126761184 275359336 232081958 923399760 43233535 492482037 646508034 715712662 254683691 710997163 620051722 917561243 596080811 755528631 260919299 943323605 712860370 741826237 393931552 979546101 647737607 690314392 724490152 729339581 24220585 850536509 577560822 830575759 277857583 515405448 502556343 569780983 879960746 996040261 283895986 372046665 397737830 437776460 271396230 766282343 42350604 710812623 35108355 386567496 315222702 852282672 434701346 874284152 413409420 837511209 622151014 850968674 130768146 938824503 356768565 983119894 501924339 607170256 389527966 967212639 552834072 672914810 685799087 884137256 55354541 523100557 763871537 865292653 482182003 857247929 871975645 966300112 87371861 613532379 748542570 754964568 687849598 882406705 67213346 957952623 666384892 891779178 428132771 747250743 268910970 568002200 769593020 968482730 592757400 970943992 388667149 972269369 294011772 586017702 364739389 955251771 959068031 984049220 46010931 242830054 810936155 966072668 64654129 989765246 204531589 535612787 690318839 951962999 543504460 913688902 723998641 814799344 387776982 555319477 518601246 701838551 544260615 654036791 760756669 926460663 983138660 995629812 504688789 811721156 732855354 897621199 549214893 616663529 775255585 939814948 250693427 255165592 942364801 959878587 399317449 530585426 808749130 909362674 552714230 910281628 30876392 989678313 787474633 982939610 812545311 885529262 76814336 88126176 855444469 900488098 402968342 670310142 816227996 993974441 327208624 886536401 106937055 791091730 6492358 168474564 877924480 955056905 819522005 882822936 103853398 516866969 3067434 203096258 385817718 792699682 273163528 525414190 46378988 958384792 481974739 771878284 686699278 793455493 812621197 866219060 663718160 943817093 475221613 688396942 76192128 190340050 603229972 816635856 232288732 378662194 511282041 620387519 239931657 876934692 852879297 916433127 62609569 656033943 932416226 956979974 885254928 980855586 789393963 821688880 596006778 628467287 586814831 672590919 14059998 109406738 429526513 465323596 326554472 401816810 198398818 662314088 842054548 872065583 981183028 986286920 532002210 822166823 27761702 68444228 624040320 643357597 144982938 751700224 143066261 382376962 977375640 985362205 771532083 851803445 191857017 728609076 305262358 801566790 546663029 866561619 772010149 987744748 278298635 812692639 409989196 866354585 464930884 511568855 630707855 679970184 806408308 815831984 985210160 986328627 969358571 996950913 964283558 995999657 610782584 614276101 697963072 893117937 839090289 961960782 258537486 620936433 14318349 750604794 950744545 951761478 546569484 806069611 807096110 961399493 505735534 950257707 126626114 144177115 964375 812530712 519257952 940673145 525984114 783329737 429104751 442698893 861882434 937129394 712828073 864450923 125294167 203988603 817409134 924396593 329672910 609998902 533440611 643559188 266088894 304902695 268999033 740144108 200391454 358714646 818057008 831154936 384363036 739722497 47424291 495043575 590361847 867459851 198209982 423736592 565817605 847716923 343555616 748514202 706464753 886152766 583247579 954019438 410044014 834259494 86588334 491576565 955593495 972761339 291749777 639547562 566300515 907288544 197673283 504822022 378747744 521645373 524076466 696066859 218357430 773908622 457096269 940808834 286870348 812645669 476363348 843174996 112287817 722368557 907410050 915836953 856820885 995561092 913650721 938043174 447371487 845195255 474345680 765450966 327549583 732488107 517240842 551641069 38195401 968170932 981497650 998167712 778695946 916281027 16172689 48365340 284546934 350219403 788149508 979403950 323806438 389447725 541084221 615578226 904324309 944309238 999574629 999863956 906572055 923153629 644779028 734579932 44815095 836775095 191184246 851630201 279161635 412332947 447073151 510391393 279550484 827899429 896965769 921234394 791115303 958291505 995018825 995187747 503339559 720428516 404591274 594153422 970508976 992714379 548551754 728760760 137365919 162802330 552567722 732121473 75789288 989068667 293170127 456550558 228503073 694271306 853371793 937804873 254931231 512317306 130699096 728620021 86757568 160103171 732959616 853705030 701957629 920006100 567369142 945231017 957675349 999509016 942097841 963737204 393009237 801157092 993383025 993760018 713378769 749712883 435089831 759398409 702627447 988944971 930116048 975468302 359241072 955139514 53250580 429307629 777597057 985155078 733194185 966164078 141203810 451678677 438248922 850438460 208758545 810362525 839971043 886433684 408913757 721798569 725967674 868827108 379772733 512848785 955843849 990538987 922176525 961002464 545264640 966922902 911679424 981842851 436271449 521109808 349503047 628409558 946956655 974638719 605513097 990911904 898715723 937894267 385467254 798024866 404111052 872294280 825423597 968569538 642678890 774383108 545959142 722115800 866243163 907538572 506135334 531145881 702940024 947451918 85187015 148880777 556575086 601253008 89504181 552176715 820444791 913114128 950212320 995339109 855486325 997077636 315575029 774441916 628401473 960378495 36158849 139483033 223203156 267988711 969914418 999687877 41961484 724211464 210619252 893205092 117768903 556180120 994312691 997159179 624289210 687619470 641756943 685975442 341071907 997653234 492105839 598213612 941191075 952737723 913816170 989615994 56738094 351822849 519238614 622336700 871110228 985931036 118132082 472685028 976281986 992161206 271601534 456846355 652079381 695733255 988061376 988136422 81172666 382798498 343701365 363828332 485755523 740653704 570153686 916920204 580938848 919840600 646647575 676164159 259566644 813163080 338955830 737771501 795110144 919129167 152251965 830306328 492813222 921775312 642622920 666114479 141500519 681727666 297217014 471075846 579288042 683253206 908945381 919872195 20158661 864167685 619748860 662328945 508768734 980707651 251723530 805290704 325589827 969814579 319241896 443047811 890974813 955424108 171905394 733420750 276313445 883286614 649110939 950604353 378896862 446326760 160201188 530804608 937859142 953962868 630110049 818875135 100495757 785304771 835144580 905732998 657537305 860312383 356793325 631756270 196769016 420231539 171389980 241399286 473839067 994060087 998333625 999068959 390519602 767798073 721938433 834760060 798042445 919194160 276652197 601090728 580914859 741881186 891301836 939823267 376115891 430660701 614129278 679629327 849245216 928911325 128666815 308654870 805476709 925236256 588482212 929666106 477842871 875262390 777027880 961066344 639228988 777474187 211211192 745744699 407185853 626769690 992389476 995347590 491826671 895302356 290686057 529825216 415539594 502283774 235933562 243973544 215992362 789306745 593714643 912237253 882294480 917920588 670650191 715213093 168954801 706611368 30644615 914825525 876177507 968754536 916788045 917313403 634009876 920582665 176058984 570578135 283880943 293288051 784330743 870532384 865978306 906185739 844907265 947345327 368059142 408435679 750340961 963493905 59959399 322428511 88581261 166253766 856769039 891202451 381536941 573682288 856122908 911547022 312686385 962153279 148371282 242310039 747572110 959213784 999288462 999811289 700530591 777332810 184407401 794322199 923420073 970409537 952000928 952723850 931102988 995921108 339726091 671153108 405303840 878521077 857287555 915054909 21019638 381620201 858783622 971874298 166357338 800565997 327962682 602336571 964037683 980958239 124699926 834536284 28252133 491275002 942010365 953676193 688142820 736064423 873545132 927196889 600719252 690754715 827315774 904363471 592401441 710766932 320484698 811993450 413528265 460662717 55650714 729070530 814770961 984073964 177666331 750317352 883577752 933788143 558736593 983211247 778403994 881319449 645343155 871794456 204609139 646619081 433705354 682169650 649811491 833759755 142624689 392219421 777544992 781050627 139531267 891115787 282818231 508932106 535372567 718281503 386655987 900722462 40967498 863843068 630438842 996674538 702474037 925083741 545696768 554704990 207168464 955964166 895411770 914888634 726334927 928758658 695816690 706533163 120723957 610828721 76204281 241622894 908798865 921021722 159965540 818758116 649264375 972890374 510780406 551421792 195231918 448586976 499232513 988975328 377960781 926779496 701820081 787900290 104353624 538273692 982048511 989688270 168518920 650605576 604871711 620187657 963498400 988806230 771992246 904265036 141307124 236908527 523009425 672489507 775339166 989787682 214321431 331453893 373474583 377999068 940458772 941796314 174125911 353763770 492360615 712885716 531213542 978241738 903908505 956282844 484029290 951996540 807056840 892208622 508000847 748634141 305706272 656759670 651946683 765587753 353632171 510855677 254101298 956107085 803031419 810181020 858872899 958641799 33114306 692759710 293676641 304569133 677977236 684650220 303318114 344315467 183715571 311929839 771087072 906361384 286175884 739379642 91603930 904375948 63945681 138572439 776896534 971203051 357032986 783977013 196900863 511349735 443317791 860994885 878318241 920900116 731340202 960901253 441753498 552489949 484611305 820719635 31904648 312025149 636832751 685954633 120848669 364813660 392211979 438967108 324895774 925360816 374937461 496072172 405159842 607955005 656517807 932229139 992127670 995187698 605614176 638833505 120859219 856134403 395854775 412887765 817121901 931326734 397197801 490572098 924667382 974742841 128912950 580237543 872569202 919875056 808461091 858802622 590688900 903244496 723257585 763643434 864552701 884012406 194371606 363668347 201921921 607782223 40206944 737499120 645854896 953781556 681385289 786359069 165722013 187462010 240239927 683247393 33668845 153303777 482312526 514680500 266598106 586708735 354304724 367682649 469767173 935034534 521906126 556888603 407146933 496219759 272809274 282725384 505582676 575017614 575091214 876359986 958998625 967176800 966985320 970817751 29742149 634925248 60140520 728654868 254303636 577659099 690306350 979208500 143034819 865342787 209368241 495178595 459245399 930284769 791986756 932195594 669414585 959748652 284944255 869312925 611137317 839008493 585509216 910120059 549700530 917666036 829145924 868670784 644603380 814120296 488864379 509065982 726379647 831399952 519824887 959395512 512657015 901419635 8854374 46859991 14156489 512275054 893434193 975541280 976802168 985092776 162938162 184021115 430341217 905236712 948502559 991864745 245738033 455998540 48355339 584166528 337899415 389234805 125799139 983750545 391775946 655149402 799473772 806018711 146138778 243586992 896679590 969359848 100457298 442670163 688363465 894498591 429887144 886594636 190758941 192655126 794841310 834399693 51263271 815531575 427630179 659329102 786676599 858389231 861535653 965550425 479150413 528918987 704316964 766857868 518553898 628034021 396113272 707419015 826222224 850924364 7691451 660944627 237789364 754260004 503227007 993318935 393523392 736403574 919084898 950082856 270494748 836124996 790487854 821505254 317925998 900975254 513505293 720922499 448803263 571966749 758960764 966032991 895661999 943125642 949710449 974825207 418584354 664660436 46172308 884414409 389898284 510834633 147028130 467991301 904137623 947054193 910960878 987555263 915385897 915775328 210548033 791519090 140458028 872057808 758454876 940780771 984713559 990628729 681712941 826177978 961066204 963260598 176700204 279195925 916446673 940472851 472007842 755381901 587249727 692268601 958261202 973491716 287435717 835860386 354428755 533725439 135939239 573757974 496397105 892274609 325921258 842250611 844749570 991710949 414843253 531210925 550727038 877870510 629588274 825416878 689048703 839339598 708111904 747306110 556485102 718400586 806806340 809245628 204937383 787313258 116991218 719640606 43423434 297069943 909851252 912863299 169648400 569766097 188372582 346665066 286845796 567794820 865399886 909426831 445509632 535765944 751244310 874131518 628966351 981829861 126215644 788751408 594976403 773476013 745174542 773411459 904922203 905371967 749243737 762933955 957379721 998360830 275967455 934579416 644133503 922061323 998840926 999312319 488008363 944443430 792900987 908808479 679063938 703069712 279880822 768819218 161673283 653358941 388422568 533504433 5281960 607364464 199100434 932206651 961031111 977332352 15322188 189866886 185316355 881761430 730591044 895424315 134146658 232988857 183544442 930202979 141301026 264187761 419506426 469601160 960446997 977125354 341275321 593412020 923228449 944134524 791489414 950861816 609994961 975658220 792695899 936228338 841420136 902352415 101959413 557764406 136877411 325561341 133143970 972027716 331632944 796996913 812836746 843619994 612936255 888869872 225851304 524982943 779555459 904955419 480686572 914619999 869011486 928559556 915873825 927461878 777389553 982177316 688469838 740603446 310259105 704664061 235179217 309034336 59481381 689192938 578979349 863698803 5435581 552125615 439435094 982780210 392172308 889353422 3794908 546252553 260390272 309039468 126392295 929192950 629394560 896592972 488433791 688264983 941558148 965642233 110440081 786798171 779634279 895216172 64481266 117669376 551380794 826449346 121616531 596139167 163783336 621442811 573395823 975251558 283175064 409393951 961889752 965963022 659388026 825244668 476167426 673007395 899015920 926136859 642274213 662654137 666511913 805298984 285119244 897496749 225751531 639777443 674745102 984429015 925441273 965440995 427288300 932610249 579351048 996301974 778360179 955171089 644845372 727055738 891270877 930808548 1952119 410433217 739259735 898852809 691353240 879957682 762097538 999665656 397979916 905970240 522721184 696899975 719980898 901273506 821926021 999259652 954354719 976544033 632646386 840355788 753972253 908244402 270165291 731671091 156779562 454828614 591158187 909195209 500943709 544011863 117616154 332687750 89456107 233618722 432729058 563399414 920718999 962699171 993393172 996045902 60139337 493000590 748839852 812969935 803411020 887789978 494327309 848427542 629176352 922586733 755641938 816625735 128667142 676749439 358728491 397686537 35208013 334714457 980356014 994646912 781466842 856113178 476535943 912542665 610844694 821723730 974020419 992276878 193471009 591319731 73536907 400598390 568187811 689496668 63630938 296366405 881036382 951083168 969655701 987340323 787515829 813001421 446369689 460554178 838211723 909398382 506738033 579226156 524721045 618367690 954889657 986646789 337065425 731373992 549115219 826463467 233756496 793181017 339246460 987090843 444154610 560378106 708601676 863926149 245054550 860383517 461109263 590912685 626187332 958300987 128319118 696848198 606051743 716702997 767075450 803857639 262571115 859802362 971342771 984798784 457237402 471714740 216474596 543235992 822870038 952393827 470605812 855470687 427351375 597422472 163262802 852394090 439613878 768364287 77370565 713525130 726759584 766236448 122754191 999649259 932781520 960193652 224749507 302792415 3878594 455847795 575299404 632052258 724748320 868483769 307669890 489005682 817108484 886483901 436724814 473684766 862204400 945536926 195245691 721809724 898295043 996045123 785890292 871200218 962992005 966450312 704785371 905635597 43265857 519979624 481598652 931309960 509194 441832080 219503126 793106854 515031153 619422478 964257685 989594601 16612891 435070744 258289971 651099213 278604704 290677519 388088320 662410694 601397058 956450079 59772326 754738595 89055030 386253537 135911309 795255847 139359123 900447643 833711178 859375674 140601513 880506745 287105901 673633806 813238563 956434443 960917934 978338848 219376738 435826852 133679864 241005507 763158676 899540900 345382299 990556932 958335681 959272245 431318050 968141470 265973148 879770660 484017411 980528042 3365257 919422037 224081258 727533572 87618916 443656337 502108325 894650195 425773326 525910601 279808803 938763862 937527323 991731086 780442648 858350097 268946329 585457184 552353075 825351792 234432679 261071965 597304134 672162799 991351542 992155790 803376102 982202935 473544931 500855785 617111528 774239950 781501777 965823975 473732644 875761916 957118466 970874436 692732010 946835044 524115561 650165934 833974199 943312552 737521719 743434581 312596343 994360333 394906772 447021702 564521202 850761088 212530449 371690888 696729356 974299324 73693035 889536424 544976527 927857743 950787515 990605896 518733361 736499444 89827001 829197691 653151862 794213506 81268658 613296103 644506251 687848509 854467733 869628093 828301137 875229815 791947913 871142506 76775634 542554519 151802933 796586436 968683731 978872276 593197492 836731999 325892519 652189826 502236350 628727916 899374365 947727523 872533213 908894821 185174294 398763097 651063797 668162671 200733939 569169822 567006019 728487285 978636371 992267455 369169450 469986248 946887232 951095831 122913945 646296550 415388957 926631217 244315087 548327435 497677839 682065851 311812870 807096394 665108685 675750141 299101245 655287258 290268612 890072281 769233465 794506496 51554659 893596503 996131001 996207472 292627565 820614882 158917889 736905402 879693717 960846566 846354792 948944453 966222425 998229934 818681225 902757218 545629632 657803382 1029883 122316021 539812777 809111375 185709540 436114859 35070215 161381394 162094465 752995640 726018494 810986433 518791722 551621421 987387949 987773523 6421237 540657031 981088153 996016200 7164844 378478335 777281721 829119303 5008956 492648402 581075802 657002108 913394344 918471095 292842471 990567640 865152086 880500074 771984835 865643653 484299736 962372286 696885795 802975682 663913914 773032606 854365892 871944705 889556613 958415253 156229178 583471259 598213344 624939812 305834643 412116263 990002982 993223933 761117674 798299625 396852086 602216838 778351421 817508703 840844418 945948472 466810894 526332778 736178580 832225965 252521291 545337223 594563345 605622288 292611228 410397418 62770111 761309989 932298719 941321986 486990883 731961905 916677885 998137124 320200630 805590422 92808650 472199274 89194908 578642801 939059537 989360418 643552809 989460005 111350538 670727088 650521080 959380824 133004095 209538667 260643604 729933347 634467571 914574564 207036119 864629061 629685171 914580957 927326882 979002869 831358972 900167520 832829665 908299107 601295594 960936054 345165891 485555454 374344087 988422307 86413299 349565389 557815042 641355226 106390675 389326011 678028130 763744465 861885746 957293071 922734939 979620917 169697201 654376209 871556552 938829373 151940372 415991248 323449981 823907391 414982387 891307911 400928525 408636096 187204621 532759421 778609144 823623750 680457630 780929805 928384755 960047262 195773961 448360803 128439251 204387353 563560649 827229781 579202696 633550392 793749848 881004633 915270429 942587423 343291739 945499030 831406602 884733439 882032476 996230152 608948602 735259252 425932429 561169282 742034554 757222148 305032908 488294711 744886439 920037466 988978078 997068565 659831142 800328288 532418409 934202051 183703059 941393328 609998930 771644906 263915381 606497167 316264105 380751477 881246466 945613668 196942631 312003411 675782056 829800264 84185673 881574062 25940763 551870567 806582937 927262750 936145196 976497255 64314040 468260041 879138718 940924063 320411787 668661569 553651515 771515716 313970444 837305044 502420590 619069689 718737455 900390735 811471762 850659209 324684098 697578741 488318088 567090142 612840825 742781036 728022521 941467870 858842300 864164305 669879456 867695233 139594292 182529770 91800781 957666581 616535394 912773217 505639149 812259327 986791517 995635018 546641269 789616435 953228175 981543065 664690938 961937635 61934268 411238033 73407135 301329447 246321429 821863146 477404431 987392146 601481462 764798560 996976572 999811830 379447404 714550251 529393781 641238650 562437703 996116573 552698076 589697104 184749048 881279863 820167410 875873299 778114904 841382789 325757317 637087736 844687696 970694677 269086206 966643379 335958727 606965289 117319178 741238875 34753578 57657443 419496891 693737807 512420094 919782089 517687125 701318571 113215830 919992286 631910447 857388038 497352896 942831817 836496449 946239065 883106936 960396741 556107702 568346529 597319370 982170493 408276530 468333465 897545437 971758729 879246624 954391206 990466142 993608929 941382362 981432795 621087096 902992252 925360260 986235277 47881860 793154835 186122222 965758776 126779283 801470635 949029904 962427642 892372875 935830847 942975037 990930131 909015608 986622585 15368478 19956428 357980261 799037387 596423714 946430008 254768122 621015785 767048364 895003499 263739863 779172397 342396788 497011405 882380835 944917959 206791302 903345388 277731015 398695686 184417554 646321637 714907550 925843582 518217771 592153570 312488942 670851155 186927906 779523368 396655272 781506704 472827722 532646437 434849229 877675695 253879011 948917287 728598129 816880713 997797741 998964711 672263301 701753189 466090774 668708816 499752600 897513869 280311370 688344581 353379200 733808869 759702572 987389417 708728803 977721651 86394388 777590920 211745972 937511327 699608737 901428492 522214124 534146805 386561829 651256309 674751503 832303201 596620120 786892027 221541740 833096921 722071248 983962351 127046859 410742120 432050734 627159337 597183386 826453605 820281046 904047837 691896741 774868270 811541481 890034542 45565462 100928999 485126786 871122024 356395868 375402402 18547105 726859224 214009251 574387119 780290456 923158750 393186391 744478015 73956911 858051307 590607818 996538825 684235038 716359710 797861767 841580526 47148109 711918292 946830992 966808988 381533007 563597595 239984912 561153321 189360865 813786673 850047934 873986415 361279675 816351386 703551575 890559092 541271531 611538298 787160482 940924628 757004484 780492911 239994259 717897375 251127438 620599382 326352779 775262238 904977856 979251638 582563336 840670614 277855936 734845163 58681467 693962140 783425175 922079003 389534925 601578300 139644914 468097153 150698032 454950866 523949233 889007684 411845807 789705318 4435596 674980475 246362579 501547276 165588646 590551337 262927787 623554986 75803336 929744980 723650324 843594852 831826967 885776079 117732268 187130794 802835079 994686786 204155579 400946919 873650509 943852371 284983120 995199197 280018650 767263011 647226675 906989102 930848545 961207697 429851063 595476786 773308212 870714632 187239736 330103209 85518648 330382418 556871209 842188316 557832105 831959346 94756195 441557784 761631905 821839014 551105915 812847534 131095757 333608123 356946728 466101481 948842097 986659869 943759794 960872934 414547439 488811848 6456351 707832732 396841409 400237935 933180941 934689710 152670597 227653616 373010849 698433173 134309580 169232089 235625039 873272330 600090374 719650822 310237208 364817462 822963211 927574239 197620425 806475950 104392086 637935542 546520969 650846336 652809193 734665448 740365864 741855710 129823287 782957318 906135972 968658133 385712652 394161839 464311475 585513634 74946828 549124902 791457072 845668102 71731892 635615648 669902255 907956354 307831765 958217050 774417262 903735028 786770005 960473069 645896365 893615606 173747555 178773270 175777200 586318730 607795563 645700113 364943273 516806997 600529624 820088367 147032606 360720238 523270106 954212875 956954847 981514905 432121659 451726267 849851042 857426045 488874765 677468235 611398099 703090547 36570058 637075253 935582519 983158865 121499204 711546640 888184863 969973372 314735960 361209169 341426085 969991539 671784404 730643385 687043974 700407213 347488649 414816016 932460134 961825882 210304989 432444891 762711581 932620379 615543512 728937486 169612847 625765130 745752234 797740905 66932681 517476454 246420703 701659125 907295081 998878096 261695480 681494318 141182349 278950672 562753172 637172038 631201580 828929034 582340420 709484871 54804224 666238009 585601528 760417030 91701779 885369716 692139551 804183602 263150056 763890050 368114588 653516854 695563307 871529827 828229743 929224203 405089429 740082356 674662634 684269279 357453428 660953100 823016739 901348042 90901130 688431076 848593182 943318746 557539201 977885248 665627083 974239116 835935431 842346869 750247081 831475767 546198302 630517636 353605350 705708064 281691333 676277291 607611518 674725106 139028625 455479169 436775172 899812228 288271699 759847509 853332235 903546023 739738913 796687410 345482651 511960317 158992194 760375226 269516325 563445152 693709037 703679763 284253802 815532973 551827947 802688732 22649671 774178920 839149377 931428227 716258240 793899260 997768072 998157965 257430006 991075917 549899181 861485818 6817194 657939563 4005650 255738234 713544642 806120170 278582174 580033467 921243573 924509911 433023997 812098900 221738730 245396409 922337878 981250146 342385760 406390856 349285564 798253215 815256661 836430379 741869998 965956502 399671028 823926218 764098776 892048330 963293754 981181894 299927549 655260697 979370403 999864765 769424941 822679226 900061296 903238083 402360481 792626143 523425076 985651115 408598977 576562601 422897994 719705338 844108220 948841121 920824644 997561034 864399793 918668562 382498010 713400633 414060551 614586281 14548256 761397684 293535837 666073214 1473499 621054361 210965029 460968234 222549750 351801714 682246538 885633971 538129118 595075206 33218010 80078266 492551741 612223213 782971386 906743920 912091610 949324198 835450863 918448380 179367942 288667609 202128560 307467070 809103525 908607455 825294239 850914841 376050368 555925279 214841114 723821516 513948746 677675118 903793916 906272712 565204720 921392725 698768273 787276801 103119238 392876233 200758356 907798704 705393768 784770818 100128180 648150688 92206812 616979609 897666029 939911315 974237551 975224563 708950275 862306989 693503020 994209684 777088650 864710110 171352444 917960484 539768814 873002863 370552462 401390990 614453762 711959273 794293199 890574040 665506637 893850601 869308637 928238991 655945226 786720590 829998030 830629748 626513411 789413243 138718315 643585797 843622453 913339425 407595783 734745252 714840141 717207011 798686326 921450607 545777717 817496808 951711508 995207267 754367346 770632146 329693027 629937143 221653059 915169464 247177898 912276505 528683101 872641296 982805422 995702958 685139131 753507273 429017047 464626952 740413558 848556154 185321392 657775588 993875174 996284272 766521466 794044875 536040899 961965012 694845959 816311754 599812991 909148532 194648662 311756291 447432264 811044828 316218146 531279323 299948864 606754818 245277823 365559100 981475933 999242800 387499987 424341142 878388407 903100498 27891585 90840446 193902318 775638938 128958663 137932489 617017577 742032812 71278861 877553189 652926055 900592369 637425743 840432937 933835932 999320794 357252905 514448499 283266935 695390935 588364015 609915053 909186360 975115438 808531187 857484873 908704697 953983593 126182099 936150208 530696870 951441028 761859768 900787496 293373064 844024098 457523712 817689029 155910797 718603423 976513262 986578110 362632355 911496513 882585506 963490393 260729690 329248668 363238985 540980587 198031706 917414517 997878548 998798933 977998233 982664774 860681613 942522862 378539710 864348562 548010362 857493196 24019912 656318877 825015001 942687770 615144729 629569941 368069252 832293646 850806809 871147453 52892392 186867698 628488728 941227373 239165717 930324258 93199395 564509782 382290697 425234913 461652173 572142823 12026234 570538090 452814448 484644076 510355678 824312829 145030723 192929085 26842928 724486696 151087417 576846245 713524546 767929617 575762486 682131147 84047809 819011240 555081406 621304919 212695080 746653728 78015338 514802104 3639238 59883269 41861818 906031119 932699142 984720646 602754676 602884573 782150613 847604366 712791783 758947951 876343587 977692889 830404062 882150584 618413296 629786766 201487740 345110148 318397213 333947980 687601429 979331661 889414363 905357807 358889179 935745209 744237298 784506876 990181748 991985765 243571627 980485658 136379752 516423827 615498001 912791819 277334388 969745553 272073297 959767747 950809963 985119273 664964420 803217745 522736064 642995261 318826209 812982862 620816581 629124836 114749769 490930458 187652820 956501037 723482767 881831043 636166440 990341999 159125304 965338106 641912287 751006757 80275520 853094150 273747111 511847628 87603676 542105077 912022309 952770529 941065631 989412984 314936234 404365087 195273017 867312259 882285540 927356633 528038723 981730396 93672631 449689728 112407329 112969622 555026106 944921407 209655654 790076102 259700332 934605739 680756364 970257734 958598809 963148669 764585044 919625779 924627182 950435911 975589678 994981119 605178580 657088018 32897018 674602443 447578441 690265586 947335535 957643782 581106127 988858503 482607227 748187009 354241411 541856947 30250408 706146255 317623723 473734906 842017636 929996998 8047863 130271127 990784894 995581644 808082337 904000789 783412073 982515380 25788193 420822045 252817916 659660946 682698863 699084479 92695662 395616009 308006819 770204268 4901715 322763831 577031246 952508424 645464056 898469894 958035219 976804791 315607031 471226004 140996702 607902105 551463515 684514016 370176093 918389353 180266284 406975938 503172534 727426524 68542155 753804116 923539064 932574833 372579414 676693244 46391705 390856820 205534451 652299677 685601010 780169308 477898871 772439311 165209192 970782816 184367761 256683812 696188477 904363828 269432225 817728051 717268105 815231317 554124168 938618880 1819847 484231477 534036011 598439336 9742729 571705171 280632169 510390937 780988296 978274152 62457929 420091798 510247045 962505427 544423809 631102154 561941305 989276027 988924545 994863431 512985518 847266367 652043274 978575713 387312263 612552739 865902513 952933993 568775053 588635709 490542483 510815342 140370196 717574338 479901482 790091490 858746418 937227796 775271070 785055190 756372623 764834696 697407231 950964918 749259945 904504340 156827983 616084671 152258080 741934823 515006819 702017536 385124871 919466133 660100753 716393361 730563031 987028717 999686941 999861474 854203596 925073196 264290536 983693343 452155230 631844498 247945334 795488083 252701541 759001398 672211286 691495673 245238550 623506509 417522934 492825419 470432871 635891677 524326813 690199731 58694052 366532434 895876527 992374329 503533877 908143913 610922231 967938464 120661267 600421989 68201908 931655884 241438396 976849143 517996868 691803052 549746835 700902481 86485846 373832054 56765909 918495092 320823644 950428142 378240317 549517731 273551397 971288383 822422302 838186689 370071828 872336231 70376503 960239640 490906779 847189906 672327460 829357994 155347118 280274617 630145191 863976731 379857974 394747211 393917038 876273523 263668503 481851325 478637768 932553881 552604957 560819301 181150826 318382798 462427312 728434247 539739282 799603421 819653479 967833023 97336031 972502099 494944084 741118319 975745886 979026292 279644895 400583565 787846711 809111762 532089505 970409127 128620215 498096672 656439725 862553390 131172486 374810614 343049244 429873082 705333492 906502880 933578961 937538267 362100726 795593029 916049458 974968188 515623225 575611854 474710066 495229916 976607044 979092159 480660943 741583042 546492313 595314042 280899725 301083489 590464538 862549216 977193898 988584077 590760958 822030952 230570648 661259176 388851131 893170178 71072158 650593348 393354620 803916949 251735277 531198250 541072018 953751309 289365431 767248436 561874303 667258776 701288622 720319632 333992391 987774822 358100676 992657776 855523721 979483670 513151725 671064697 190184657 201592559 247959281 927820596 729866355 734084233 777639329 972830162 381781579 667772071 490173508 961172324 662943628 709099131 35133372 464038922 169604299 550245773 956001942 998327970 408473758 753502755 36813014 491518509 623436485 710914904 785801418 823748708 336206844 725501079 97255708 616764250 707429191 814925891 110566670 387331955 759535235 776308704 75322971 160735603 204059602 497597227 867734148 955155043 344285863 927321497 133863693 932902493 613320904 730528432 178233716 414575721 598649158 682717745 674831080 982890919 991160508 995131184 382785503 702933201 150149724 985294696 270826633 317722152 15637142 705570004 921628637 969631037 909272983 931805924 739851610 919184353 104250272 929637183 790585625 900774323 322575645 837270784 599901610 783009538 864316125 897049775 708475092 954864350 613278176 639844897 505296573 597223358 88032826 373497840 456029344 990804417 116682346 935460825 276142884 599841743 206979818 389820614 550355437 747934970 595758132 669085277 53171306 829449574 557567269 950499209 782791085 885403008 691638850 704917878 335513033 702983688 794468155 957942264 85992560 912206426 11638838 728034383 220045834 879016518 770902307 895205409 814538367 934920861 441042576 484939135 20741455 229320159 832116262 998263587 857008179 861240769 979523518 992207249 563321127 979898710 82610404 804180086 600515178 763192143 391832198 992372869 355941791 933998248 421887322 425241396 915301755 991067479 166130721 227297108 358774214 904296811 796776713 799311987 988492031 999464363 643691733 911176630 61812229 165670268 994628199 995616873 489022636 963083020 132151688 833495503 739355129 782233484 142712420 761536484 651104560 708914158 622686175 675457612 491523466 752467994 457543403 875669262 985362208 991578470 230612574 542854489 430801399 786106032 774008358 894306359 106528063 172133649 628984661 727580560 588008471 865314083 253813105 632847985 754264466 915884270 702013853 944802166 492036344 581487861 52011540 797362630 322378069 928882457 766332227 905766003 192489844 485940654 349275288 391092490 147273249 354036636 393256291 982060372 759827278 933001682 301532557 755110811 417800382 928771122 660274830 750773522 366030402 667794358 805288753 971725324 426398623 835687662 210820524 951139492 32929892 404798220 847593135 943160606 262755670 589349560 515864492 549222202 627186680 731778624 139535007 207863896 718083161 719141805 700926439 932212032 617566601 710774167 243850044 581950786 231328415 585273969 747885951 748529922 457269937 485602213 122520137 868331385 235193647 756998627 230264724 873951259 132282263 671071235 370872455 412187992 998868621 999635892 800016960 826630942 918745305 950467607 207276474 389906760 728715876 852666489 638408037 848829332 999738875 999952243 148840551 550729263 48536779 56789160 145933577 789891009 233903649 456036640 974196001 997948508 441161105 900973723 961209681 984716433 416052500 778731165 560416982 872509575 242952265 521675703 755819067 830526683 308661119 589044553 160549728 769015804 181850631 846752346 579485386 883553452 590519000 982054882 658014629 762659686 336659229 381314900 591232920 969862276 644498792 678208656 619259665 811618420 780723687 817091466 71087210 150700282 982733117 982928373 438192402 942251813 835391031 863511447 386400888 750636585 524131457 836135959 278356783 875668401 771554582 983264241 848145476 893665376 718308259 975832888 396355227 884739569 331811181 608755149 367804659 886766323 130708337 891004536 908659906 998645036 367494004 563531312 923832364 989089199 355117711 692544405 677008651 877345863 889480574 919443102 958113404 982260923 848056118 996940915 791403715 979129690 71410351 557201478 450937940 722827949 890064793 956183225 861624406 968017837 998538915 998882980 731682773 916379920 688713571 738417378 316102636 601547010 25755119 889774629 369857101 937619995 866875202 909480425 738912664 759924646 255297264 922576458 906471699 957099309 547100958 921240563 155647301 784865064 630506976 733131547 795360750 878217011 91238776 703075615 171670520 795056821 916141098 999451297 706227511 997584887 218932369 683890892 652773900 762780988 913336286 991174086 889346548 978189685 550493834 947747179 386709181 920621731 376826670 955590853 66588948 406085292 182683376 360314069 464787297 726110120 870599506 969559494 217809418 768212113 455468463 697222922 162518409 714692204 24243260 215052231 287699307 611775012 828175064 860196519 74921839 964832364 261259735 999184239 477635426 777332573 828108356 905785626 291281165 482264861 199984461 813591899 572050392 691112131 882268489 889787580 811461084 845692213 187494713 418624469 757276235 847534778 465297301 494713064 252801436 952634518 114408082 435004748 168649837 380231566 634172608 735512282 129936741 759025119 596287844 927630452 481113147 533486082 149372108 943411534 251247381 282307645 24733842 377403916 815827169 925852026 424845521 772886850 761594592 985496925 699621252 883726060 269279387 968147289 730702093 987170809 645301393 848002297 925708500 977139569 511260217 760709259 457227324 604281099 603719341 825607377 326404911 724221829 597876819 889882415 741809839 782942522 471702637 849964575 537365736 873623533 689346003 715301162 611783582 845352304 831313085 836399337 787204310 802829499 923365556 960290995 556045602 594073794 296062072 366948229 564628251 664731095 605533935 811729103 479769261 604421079 509002462 580587615 120455198 750144669 808395900 901323089 947305148 992612921 485262350 941628587 594034042 722283805 854490814 948069441 510972728 886611795 733431084 934024962 745639792 899200956 362480849 924966497 625931801 648140300 210347683 595953392 807837518 983531407 561274926 750178295 73090820 561641482 699048437 912330251 292117556 501216712 499366919 561759567 117784631 980525372 917939619 930440630 274379894 446635998 250124654 429742430 243997700 601408050 311204245 327702277 734605797 827321897 724534458 824559966 939226210 947261003 720949598 972243677 336951708 494544229 879753879 996534490 887478927 963788163 282751171 894057116 635869356 749720992 876756051 976004387 352173755 476113777 437060442 752593365 588730033 779456008 397953150 863283501 741443398 802892498 917345981 962312097 542000127 813459842 283403292 827262196 201114251 561673511 834429926 944280564 687527498 964172406 113812626 863814699 878878607 881062206 245650080 286385852 389498025 711963004 743676612 969206300 459917566 677002530 814802736 923539142 274027128 865759023 362916331 567022358 507719118 981964407 971283187 980145153 399444243 789304065 265554489 867335498 578495885 732347790 100197119 943304189 724935412 820707183 36873212 861349137 512458362 638451854 149939072 370256891 550777770 944819314 621062529 968092383 194068907 207309093 754482339 978505735 832821326 928566377 400440226 872463453 421004680 927236415 860632318 957297412 419224173 756741173 792582651 869607814 427903494 704283809 756598382 928823231 145893753 155133304 762475492 799409843 30693433 664611951 431816489 804460719 779678885 838603591 775257651 797275278 134176053 805859207 5747387 505578507 175026177 636237846 302950162 981837476 471054731 953881473 675431652 798640706 819189623 900584527 38726199 496613295 377183649 557932350 222694057 761248549 260958781 956419947 775535660 924104001 255404982 926840389 231291961 923736357 219630882 423339904 937147431 995873057 595971246 920672705 977744397 999086733 277701539 957867279 376798477 475877579 385095330 543549426 558318753 803636571 674247822 867848944 50812341 799310139 674120278 806850128 195118965 877368946 930908837 942452135 861315604 933372173 437022112 738984080 608637975 769714379 859423434 863134119 400807028 962264158 980112714 988474982 365034970 902120482 831211202 881895294 441191831 774982237 721543811 874625250 299309237 320401136 616025214 796984759 116515727 994106292 458879535 833254171 801938449 920357840 363558990 677858301 121548677 992285404 690520083 762702785 434642408 502656978 999186491 999763574 142895548 226044511 353873435 701082040 134455117 736982394 509722415 785906348 509630814 951507850 131143820 701381616 622412057 962295841 113249249 186303860 902662767 920054777 572707596 696277532 42830783 429012022 181984915 300023827 637464589 717381075 166553117 339406014 389551913 744785702 106342595 643654840 452115329 690096607 917727806 963836049 506650187 586753762 379689661 454006670 927123798 971117187 971333223 987519532 453087771 706595193 786259205 847944098 907119080 995132724 534387537 871595797 959035694 992301005 586751583 792987189 615521545 993378196 647989195 872876709 427821081 845956575 866301735 977285697 131627402 561655997 518752766 541048540 68178756 327939245 616607850 834173708 710992725 711469783 474986854 752782198 32048236 577946999 448663095 595853640 943644364 953676552 730657486 922245144 260916655 355089495 929219474 938119678 170261490 522767374 620588175 805678837 331994648 561218589 915117105 981770851 551543732 664078062 682256070 915819365 69246741 311971400 337642037 369419467 383534039 529020183 561104696 656596311 533823219 790168768 90131061 364856189 644014445 865051586 391461714 575770919 575484451 818723336 886604113 894676903 312683446 896930736 760482572 822033363 728699016 892121580 244225131 869999488 726231637 951930146 715371656 927460209 184840924 217744552 531925598 879172288 657217181 987390398 147094187 155947995 330002221 520834817 11908918 973105661 11942748 899494951 386525584 687293377 368291788 622241855 35165943 83660708 310006456 971883343 445165261 977433965 639419422 710356312 695931465 956480134 876697775 904143338 959826743 997738472 817878877 860746098 401703680 487558186 63060088 299014891 435232634 954033021 266827187 343802735 824607199 829904389 629059386 772301073 304677554 762408043 980199217 990891394 727620630 786355077 950846615 969809717 848227775 967665051 841270270 996923577 411071452 504981876 197796547 379315055 456838986 899708699 421157435 673706392 26001895 688200899 548526855 973647207 52669659 759770286 748851500 975521701 173417288 276940097 607801401 970906771 373257310 437707439 849062280 851638839 888862219 914754879 639803368 993259218 680444540 698849627 106729836 314345938 736210580 923452916 105495250 381043550 55101957 678268828 198081155 923734775 943467088 973876935 39753756 714803936 988765956 991177280 611450417 814814292 489239396 677836138 168913534 512604948 643360307 698364206 504236623 716453050 911589203 991050729 315583228 973145940 5861228 15523184 797519350 922318449 87929767 345650657 741329617 907389617 607048039 927657660 245633141 680418999 744547492 996953495 502570917 935170021 371659248 421807524 385646162 982412547 723405002 886096860 245967215 643357301 661177435 986212936 907984050 974632824 268274774 718555011 59182048 781607934 221657861 779328582 58317702 344778963 460011812 518705709 84592559 587553872 44516403 663976923 230695327 996478468 945539339 976830774 594505059 744830375 989409138 998783430 854027517 921610553 793759286 952091239 754132171 790900476 600048419 625937968 891232935 982421274 933245579 946754747 143611476 337784899 799403762 948670985 499885801 851157907 355872374 888587237 303768035 670893949 885053473 956774663 151560715 233515125 524428605 840694783 679188609 716169969 637432941 987948146 742372093 823514992 90619117 714166331 104703815 213177532 717015629 774093941 165786587 436831179 786274661 919444248 928533697 979106319 29403503 236875283 676667136 888175565 487274569 578525159 153882686 600255516 104418761 348173109 978520343 981157194 867950964 967116482 883683155 989742100 579721553 933542146 867596247 883971045 164782953 939980440 569018995 772593720 883649370 985243935 973511320 997029478 986745259 994275557 297821636 715656045 321143743 976463821 610276465 754171817 182635981 777058453 854522532 892367294 75638870 399801208 74728869 262402001 104891074 478644698 807674892 808641406 589289064 971406898 949351863 994415092 982599267 990167178 595968234 770631778 23590182 850314220 518865288 730988725 531925605 968609229 185325822 498383042 491847126 871233170 160319769 847569262 449757536 875461577 998979480 999027319 400903982 766445099 846264519 865966126 630443144 731744221 449964177 863967983 577783026 912920333 503481302 565381650 652294101 963512872 373721009 911848198 144148364 775135804 38864718 117713896 950201827 971730534 191892018 472943974 322340364 920517853 435690550 740642864 635986614 636322346 670682737 841901264 684541419 899249970 886820948 995096272 397172904 928952343 623293404 941593387 883624175 936821431 268790406 690253469 354368961 509734800 449677370 995347316 886856534 911810732 528473033 612725415 928306894 934860395 995791231 996694850 19820074 417546852 349380597 422903859 913212162 978416853 992686520 994429310 984248624 993546385 437486225 879648962 52941259 110432309 117687100 931121058 208928734 257961415 923180371 983431457 325254804 938692129 732763395 767178970 756091845 861871382 55640300 855220134 508697909 657837346 811725123 935678493 708035124 930179717 693367873 812193336 993164532 998753721 230615466 796489300 605671635 811855137 3353953 254962134 898347059 926871596 921711233 942620349 580961280 917523022 961244285 986078304 286043196 953144604 886366413 962489666 329219961 994315898 389230146 752038056 861984119 914725369 95765303 656747346 114384487 209461628 600722121 623258481 833553979 847735020 144256052 619462029 122165942 601678624 88135381 450329826 834331887 991721503 359059362 609351923 936149422 945257940 81182118 225521304 111803289 302236242 445457159 853319224 728191804 805618120 297445993 853356300 552096130 594503471 469436938 895841822 746605144 955573178 687982330 762071903 600683012 925203083 633913808 655570571 744806681 911448228 462261934 603005890 330214354 752980160 110180155 556937414 96393482 649208493 937256394 941073864 318136273 675919780 481708945 588257787 363017427 817690085 194176914 429751039 337846939 618546229 576556623 719211477 246496331 699823727 869963289 914862873 42566859 984193321 360270485 722750709 901048656 902594833 117730226 940732767 583683088 848549153 919381651 926107103 726750981 989436250 140253808 681417687 636105751 760005392 16337423 427691835 940111134 978813764 919041392 953084484 652816099 719940052 954226925 979520529 754860721 931527841 21806978 29966347 828869285 858108778 345701928 618333663 134723546 450761714 256031578 773570779 562598364 827461602 246870346 256426158 243084568 552375362 144907844 365846092 252547599 749036181 130593798 909525416 120558422 853466524 993553491 997526642 739403676 830815842 675992867 751049998 301579128 822063089 806385551 867178230 205357928 478909342 211044354 869315285 189648218 359792505 125184642 436859696 110406062 966668838 195746801 711790880 464504959 940967565 735853967 889894365 617092132 793566232 178006062 394528182 992127657 999677752 323640287 463136851 995298421 999450367 939138611 987615676 228245785 571247557 461684363 872832870 218092769 762340336 368394048 698243506 410664869 692671666 399745081 854775683 89196411 690274829 206245499 898269802 130898687 599906472 777726672 788264161 782392493 862656583 591500129 741036517 861705410 884386672 750238528 985728879 249138888 490898534 827871604 926687878 110457594 461183325 247749436 690659141 472413956 614070363 754350302 974837056 354569457 738617541 317237966 833116451 336552759 898760931 406211189 510264513 9473807 114044963 468245040 582483947 389323565 786204115 593913307 865910353 949857870 955920350 805141865 883300650 155344917 776592691 22824321 323968268 158952817 926401075 466677894 707008688 783517308 840880540 541419803 884901651 80564219 983039645 305918361 616847123 631033386 728632988 942833116 975798105 282590692 580940681 846484379 847073993 364701837 946342138 933300817 993550742 520568881 884175496 219446177 580801056 643509065 983932307 804842021 844803501 274223747 778831306 560624412 905416774 701049026 776568160 164827446 209770205 184611595 360064950 107934790 742418997 8148025 806604849 818378723 852582757 442314019 854472930 828321677 982836125 959699195 966893165 274197768 374528009 386897397 781683091 621871274 786046892 234023929 373736678 469607084 541402109 84693187 505934288 233884609 385776612 158549801 973258345 432347153 646319533 73523428 802787898 790760910 896614741 682054549 880687884 893500804 895718370 654543522 971404962 878342845 880181810 943777430 962628887 746187587 895324307 928267200 995192686 485344214 662002837 793573947 831850040 123121915 672876843 994013481 995191208 850059461 883886548 324172874 720085196 92077625 869216330 333643920 945651814 371199693 618242617 42726959 536758778 43002541 294850456 662551224 830482699 124908465 834956657 241129256 639475353 842646983 943986775 263553249 315841782 876382531 880433382 873144045 881031915 332144312 418107046 84156471 106797094 130533132 355997832 302087158 674660172 272640398 853606409 524231128 998297453 104289758 644081165 499816047 986820756 888670223 919127437 990690675 994994463 208405780 282712938 562385678 709155461 537085371 669966287 228425008 647033129 977322608 984734461 971079975 991415826 7810648 447902961 109935976 551557926 431883550 669552941 283452490 618145650 505547167 533371024 717960026 756084653 132764139 565681774 821586402 932589546 66327553 509057351 661611206 762245514 174724426 768335221 98875470 765834277 174614361 558907656 434574600 503362178 546002570 706577444 175757394 467224409 776322476 979368427 279932124 505499982 156424829 811515486 938446694 961591059 419978352 502820239 352226313 930416678 71632637 811204913 229478932 745803815 472820764 926163135 735856046 985442207 428909871 761521479 758779904 791790855 63398013 351867177 799461046 893215775 231755766 984754948 766649642 840483258 837789524 850844875 228984659 386226631 31790271 590730240 67670728 266982977 507477048 596901257 808428683 855327563 980424128 984146007 209199002 877526506 873105880 901892056 234829083 992750677 885853268 955370441 416189587 771045856 445882931 590949090 447262611 658729296 727840061 802109248 226511741 821123802 139520539 945055121 994001210 999026306 27569236 345335860 963906016 998327105 641598858 989303914 765267893 852566704 505668213 929844431 332631506 987515737 522191208 827291908 243695220 575857030 408712554 875125574 436680277 839092859 333179567 518704456 467710170 865478331 842045031 925372490 878689421 976927006 369885178 731751695 276844468 523723172 256048961 550647616 526371729 879100507 9928148 953218968 276344222 556115674 524346096 723614905 761970738 850879659 725679024 847544422 120503583 914798726 986306673 994287226 958737406 987543196 616118325 663099242 360320044 630946376 268605348 713025303 676585067 766841621 631189420 794474078 977796174 996599080 529819483 648245572 325534636 944144143 413500165 524190136 645754300 926831625 525819405 738909088 760487027 967055794 751807968 930748154 910870592 956912326 253747020 960654315 499391996 686211053 399437011 599271825 960271267 994902424 215804362 730935629 317416686 793612199 618418017 769644929 180860429 864650097 362435812 640715059 869190476 946899666 848754952 927669759 730020930 894173809 708793704 741533996 894018255 900785021 959816083 973143299 200872014 852002462 16183809 636855775 685755224 690534070 861508636 982428758 787817700 795201841 837344779 975401151 349597403 881501974 30482856 569236480 656002375 682796897 24342219 751652202 100872116 389697373 105294862 168720855 241283235 988832741 453662577 856212438 807776354 911669339 351513192 757799126 306495297 596556991 332374923 797771844 550606812 605484173 868798853 898605413 672356937 946417349 351723276 507706591 847974486 905616398 79298435 882707542 480124116 613672384 455687796 669235110 720223450 890293284 198101122 693652693 391345426 433074231 541476703 844829487 847415576 977008684 748935797 900786044 395329302 702413494 38199053 278304461 12114534 663262853 460359930 920309721 157504036 766752633 948501039 966048748 675882115 767625722 634568355 955426384 70869871 958131893 783462325 790487897 832682250 930401646 3784330 682557579 494644076 543358116 377484177 441073551 194134242 204131135 60341744 233082009 501562257 718386261 463876971 579387337 669538847 721749997 327066573 984901040 446872646 730647135 398511950 757614024 812108255 961839596 558611274 705070784 481353506 702372213 206113306 685532107 208143476 450549635 950655463 971844909 258998951 707988127 366742245 831145591 541833054 796382824 718270512 757619976 504679722 643098370 681173887 889215115 168527364 782303579 448220021 733102548 436796622 530627275 490381496 888210866 9402089 409835254 388469105 829480936 312894121 510588681 355610125 648061393 734990291 847214924 957961667 982648996 945424195 995635593 728206731 739623274 396641736 873095028 174601871 678881613 840005877 854061913 252590846 853335873 608853099 807382457 26320123 673640361 319939941 631964542 8180367 345844787 757609629 957742319 558891295 983569433 789061 447265207 394929245 692314312 511943773 756064470 370075219 908101322 255068855 920567438 466092527 492976457 62721781 220550357 295002348 341624625 678809681 742313314 712355016 844640849 366054346 600687533 41532700 791222591 985788495 987735267 270426742 620770430 289446555 979133424 470917628 836890634 318286434 760526838 2595873 760793927 197817343 200148338 199215410 573082491 603770911 617413768 771160323 884624028 468921232 854125114 947514995 994459095 428554151 455956643 425202082 507138168 56610237 122242124 187019025 914960632 897392148 949838424 603216585 836797135 254974251 543922313 321458436 695323487 663655656 809981689 830847323 894017728 76289669 598245277 991543577 996894745 230851040 300006997 98519845 274193768 499074895 750033443 716196733 851870989 773779039 930183655 658725335 692705726 800490764 882206408 987425010 989656973 281677569 581466904 748700749 810154986 574336990 691200838 83233636 995832592 392309507 865717935 547919112 812514791 676039362 728842793 615803352 979071514 778653547 974440569 492101612 977425103 13661143 790658240 287496173 968602020 329871146 883594064 57103192 171797174 490169409 532561898 547103288 679581834 225087736 575834993 419311203 827265383 184337222 218379871 694616319 740727115 125540390 250267839 151643529 241217477 151599385 376278979 4208295 739905349 171305511 996027751 132320971 866758841 972424235 983645841 424585513 917880468 374662797 433655280 808119172 950343914 352640218 725250939 901377855 947640104 83697367 783387256 116013477 589259939 479494975 523368529 444505295 805488236 212067656 856926655 434592131 689660073 209919920 466014631 135331013 198016418 815317627 925346659 177772023 606750991 169165274 662912713 981101963 981165901 171885720 383581671 961898423 994192149 787214266 940335886 885343750 997166671 127873398 378115604 965031079 986513106 896588942 909923925 200529666 613475932 643417205 791848853 760571624 858923467 879290698 992228454 378336448 879969821 324104098 819609818 944246878 987075648 472981827 740891587 288646457 860028575 710588778 940378555 378440199 587298976 364615138 709684101 767467494 779610881 339728361 909365494 263323441 275078015 366099778 872701045 177895691 813488582 931952752 947971484 366905542 947530462 268481570 309617465 765298505 909416385 462273525 711276124 274477275 940918876 687574216 977423825 847095510 864427973 398234154 467967907 302686086 649068945 483421855 842310284 10569679 735478323 992626646 995979435 489809149 677314846 403251040 455862154 551936857 725090466 205116546 631584468 196963291 584466278 716969360 919428346 125534860 558534467 847648792 889613845 388160994 400650734 317408531 580992197 945883891 962042706 165816324 789171784 434798657 484231862 467537109 790578343 762014521 911830683 538652167 968803797 316791739 389508986 649123409 701453439 246157290 958422103 868602129 975498994 383548001 694819454 787191236 918350065 620399278 735153216 444527783 916869509 134324072 831122015 432214080 469864944 306307131 443969894 453696456 614095666 592817220 813746667 383473177 592583332 497600989 995748305 434875383 600938397 260630468 761424565 329578041 832081232 682459574 970575207 254872240 633421851 882184368 931571403 603810393 974166064 37219067 813303281 270640094 958274661 926966824 953749317 507706082 923711264 743017614 896666016 362937836 946193842 929766494 986899766 653388390 718472513 739775347 950168721 707324402 969742813 157840432 819481707 296238872 415905836 633241074 718767774 87555892 838088987 892130024 892306833 152988142 937358166 798394046 877992159 246826791 875127587 378294874 695590806 957088358 984556212 187856534 775601000 130573379 166833051 130553616 438896505 856421277 899636507 637100829 894726466 277536193 847196505 105442677 652487509 276383512 638462501 338576057 755014874 363959731 657794994 508531984 710167743 201289335 473802223 656451440 964375983 729156846 995113772 477701986 529739508 599801921 665885073 689435497 701000952 239482847 748116491 530810539 872889331 282811779 445384901 832108893 840731459 357049122 662353662 227458556 364372336 779909556 810415539 407009887 995030834 479676945 645554529 962664885 984369208 773661667 797341102 296358648 478301092 47796056 208121109 321538750 542382798 516401352 711075270 877744670 929336050 175648351 359347958 16322297 494199968 201129302 591186664 160957347 958671323 866056203 945581661 294211740 826002970 860434725 988621441 879757095 969256761 875004457 999294714 317538469 980117494 622244202 925227740 117423246 751478995 568733030 719252961 754685328 757371925 683321782 720950844 418846919 484244777 600404212 952599186 616545858 718398656 899989760 918221789 115453379 656568676 672764540 704270696 658663856 827025072 564377711 974289229 408966416 895984666 48496467 236952066 6031788 999997220 188203798 808365280 944705886 945454101 537066097 580655037 163834208 839902723 119786862 824678240 510171558 839589417 470209154 643580181 655176129 868438043 384520307 491993789 755257352 855183879 519132504 627706374 408577031 447629083 784171258 866643258 750531669 846961559 788910775 852178116 240157830 683906490 286144548 810745223 370111144 669490827 114115936 915301192 566534251 749404876 384324473 401510066 662058984 662301519 871335849 999494465 803364383 831415044 35447453 109152836 359026591 921590581 733199061 745662677 377687976 783258922 482166608 818811037 562941646 725756864 179259188 231899894 190510217 207434271 625644662 832863684 399821388 962129096 756103429 845271779 545835985 981760648 659173606 788521685 366165828 874818018 246636888 952864546 758999390 916052907 504078907 839630945 790341259 876056967 134148894 414147343 275146330 701471333 128524007 802489371 444395096 994572738 498332460 506874303 274486834 444351945 987412157 990429782 774174779 932120881 894033722 973943751 180464941 437848102 758399979 944510039 720758160 776319075 886833158 926600676 925274945 981018945 807710415 993331803 758104080 987111010 63499327 744417153 418853929 778667762 6833304 311995591 202184594 480190224 264890193 912246349 835453088 893313791 781337683 933676581 925456407 950812915 492125636 873265646 994221321 995293120 111062586 340526754 81057896 879598955 13826341 484137816 137070887 253094835 179615173 526953952 382883872 685616885 115755445 861917509 411496851 597298394 251462436 548879134 621920083 802367434 946645447 965102365 264545112 906035758 882227983 944385791 679012312 979782040 185510893 522931150 398818926 500915967 879506817 894764872 741195368 930497692 325565808 617658969 951247818 980176026 88828307 552211743 550265860 984500003 155881447 463369084 746278692 912507059 229731082 331843111 66268898 210745333 574476456 577572866 506766987 696653478 135060263 746167060 372827483 778514049 349738555 358206706 117201305 601009872 235860072 525712057 739398788 842657895 992887502 996648615 297507844 966518561 975068455 977660151 855822214 878249208 825748240 903896740 388417943 717691483 560572160 794058137 440406225 645346518 928534982 985805981 60253230 761403205 309757522 661480360 819984663 914285494 527010176 756314280 373239947 815719062 640412576 745305580 690500728 711341516 685255953 910859284 383456398 726927211 436100100 976208186 213438063 298042726 304500487 557596478 684450995 798931660 346225850 837136116 198660918 793887599 667531311 970429064 621651099 999934707 31539864 914674962 333302327 504500930 848249016 860683992 849202008 940084828 527401179 832946778 618260503 805440662 524445026 775562102 10474299 929698710 68333438 866783360 442631262 460834470 46192375 772846724 847863478 908860169 278500077 770715883 878084473 991024003 738236753 777632092 177096178 984603922 370124449 556754887 920046442 986107835 260121419 310719788 58328731 318553760 418752157 805754348 508159519 896918601 73848280 863072336 646523699 971796800 826544630 866445484 245440667 839351955 939994423 996984452 951361099 966383657 213250888 724432921 219228044 237759262 296468197 556013171 47845493 235460472 420502950 556248297 831681215 913334821 506348870 660396608 34178880 726612728 619805367 818211502 213861033 858644141 33705939 967534262 677923624 771653669 993246213 998852830 750516103 793043474 337184749 733344425 980916637 991993607 462760290 500820948 187357427 356889607 366446612 810941605 813477467 855395559 905408923 917759004 433301661 624486638 961140254 983566828 64316330 796927133 203191968 373202580 666285564 720215459 502559972 602769664 925797238 999567773 548056918 714475695 302196197 910938733 690758019 960327137 568371399 964487800 304971564 693201703 370654441 691878559 272857460 472990143 807604835 995178129 891841045 987982816 314574495 445170492 517271294 626768957 736210408 953952506 820897667 950750638 961764087 993846444 277398083 463456275 301435903 675722455 220186304 303073370 617204924 698105487 38930487 713452813 404368030 573575289 701807801 810877951 474543240 664249589 632752462 927298956 487566785 560922510 101368371 897408652 127574959 178915315 130077787 363625114 554685635 933729515 637706046 783161066 413466612 473985326 307046876 332269176 682814653 926974085 679458492 738011508 937660738 998754462 650190335 829945065 134027389 736869619 210236221 990178630 400830102 519969281 901487135 929649024 283837324 864381673 392215536 408973092 122796316 462227753 58834270 179164154 430272877 457020236 253789578 277357513 913639646 973930091 983422914 988576849 507917557 995519985 625661309 708907719 293640591 788760857 691153914 802555117 54832866 380936443 164944678 338320183 428740115 636619278 594681966 948285794 707788611 953513635 390478768 608212090 433032883 887743443 774154618 799576031 882680439 943231182 771538200 851944764 563265464 968312199 748095204 797539394 47062847 906428563 724371446 756107659 837601482 864807440 254778819 416726091 339278465 520683927 547593569 775636589 869431956 953287086 65909453 179894522 594889876 813097397 806240577 889403151 645814273 663309710 438658714 658276497 948278797 955908550 892184356 924320353 533405845 793689010 604710117 741582389 780240060 905354638 568397759 653396759 929318253 965194532 714455358 721663986 211213713 996728304 577632059 974494707 552215405 552872699 698724429 936635835 895745131 988455961 227117324 572749534 150871354 213876568 486091500 817980402 23303564 332153904 997285726 997540367 797799000 900677579 392228440 783596172 553761582 789077151 501964122 827116373 191405485 581307547 564758516 639422254 840674258 872900574 235538046 341318988 514157769 773055854 535419564 944657501 271885416 940366928 880423980 949638579 196630833 564398947 300835286 791049161 485717059 495946708 232800782 354331248 889086934 946901088 95883510 334234090 817092180 847653302 713601820 814801367 375573104 888822015 388615652 579537740 781713371 891683371 591891529 852003942 780450810 944490039 222959933 458924048 890113956 930212920 712428558 983971752 691578467 930798583 251512525 814835478 488474956 600035883 869524061 986072876 979354354 986792699 953457710 977565783 647621399 738855993 81100916 355066006 602029007 648379292 878141615 946568336 742292573 825401182 247825443 596450689 867745914 970529714 133971304 477369522 555495162 932059919 6078830 281520260 10808668 726668890 645454973 999194361 922025169 947135227 239816889 241161981 283168456 600815376 499532460 843915458 110415726 676856052 100989733 469092496 268735486 622655400 904923108 990999278 522942470 602805369 166164469 334427739 671236203 823383193 409078203 647787831 186132374 942109214 136091721 307084566 389109555 917773755 500114137 946980129 239200213 726835182 929082193 960664653 408012459 635683461 106213014 675081760 347588406 717135612 600433074 790428481 116005538 394215661 547944977 746898611 331516601 915873068 52089129 961976702 930856020 988386557 83930382 805900696 630913353 710143177 443925751 526811644 789562606 864645205 987317046 993766702 641259668 897188888 766685913 818739499 168112290 582054574 364184701 381708212 249573574 690668352 967904611 984933895 517381222 751252367 225769409 412878692 380314908 407506665 85058911 666961641 286578790 520806012 97382763 473502313 524659719 663604195 50850770 119853251 274898702 690842052 133599216 690484518 303117078 363104269 397105382 734674911 115862478 761484129 612963729 986338639 125663562 855804393 833455674 838470568 103366784 487194266 659923618 843384804 586411682 820627038 946332655 995834908 883851196 946602357 945192936 960854288 148881638 323701723 783605421 975436424 907762143 940255318 793578386 805893367 857143539 954324906 741519449 761244355 474204884 621929004 287263096 887529269 511549148 546528799 358533999 579987174 293716749 616163355 217203358 723653172 563360720 894792653 425979508 586427485 301491276 867500127 787992304 977508657 756561368 876367692 850226370 891436405 44578570 66965440 170372637 994618342 428269715 652671167 349099780 989484978 738454675 808795032 205284016 636939641 683880343 758028913 603648180 847888111 596403108 920470272 814800399 860421172 653121137 864145897 17101876 188415126 581265649 889337399 973510834 999944982 394200064 565365997 684933912 734325717 232258379 646906943 928013719 931497632 298877037 359133062 339612465 361968840 559962505 744168196 34831316 689650372 510385335 752633375 100886564 756833039 481892861 549912740 496540194 633240761 373485663 816865068 536861575 832051883 2300667 588367570 552520382 580384247 837242455 908642533 682549395 751886558 988488550 990707340 70753452 954004109 520650799 799526099 161995784 537616670 696299106 749876830 723394104 858082180 264475695 322369730 754589569 824492176 792228387 994958349 964513985 993086694 382763349 490385874 688847235 962017999 848005977 943803636 991267748 998996986 885380841 935444652 841613117 954656587 277269684 861947227 801749914 940919005 242892839 259790542 355821797 820931137 708854764 881930661 647868287 924490526 622176840 818684869 886827497 907270969 511176467 764197958 340545456 402282044 537638363 613332526 922780210 956648718 998072688 998919199 857710703 951664814 761537262 799123765 95549596 860015979 143287766 673579645 658158580 925638846 636802714 855777323 181277097 876832904 11007119 202299149 717821501 813904704 451405398 654849872 736137888 748990078 599406518 694713612 104451710 129352818 905127574 909591602 94350139 422247858 996826121 999133125 754354619 900176242 408463234 710827831 281026766 370405475 399288351 924355713 14852200 244490544 636250580 671129462 920471970 936723696 976273208 989548876 682352753 708747741 706096627 729898711 826634580 886498594 424975224 517972337 741290448 866875326 715559812 961658170 459198068 569301882 694749194 763693088 401757897 913075351 232460951 829985510 42806034 388169569 117110109 203655236 976036248 994206281 877023810 909768935 209274968 462544145 597210834 865120714 700658528 892875196 389279903 769372242 623986887 697886336 560546939 572824963 526096970 677847028 202014045 952528356 244378273 756897185 536523715 588909668 84962156 85709432 338964832 600656154 35527622 251133286 153478298 852467196 432984917 946164532 150425777 294026584 795850105 876357567 897948484 916882759 161801990 207263321 873771806 897212404 135535270 735475406 375943644 819937816 49643725 201042541 570109695 915275401 494359182 559920819 670620858 816817539 195725917 781030181 216000088 550855246 196391418 546571222 631304303 637478445 668807616 751920872 646481831 910761180 618027163 829424477 557858437 584770257 315850581 486636846 521365221 586855479 108640040 366854067 226069345 596513533 503618075 989821047 6970245 959255143 921007850 997549600 654428759 964850341 216463988 237089724 828764159 935630455 531073734 740308384 497940277 619301014 895943396 944370684 118456303 368616770 378415370 845489542 105510926 359253579 652070323 980761612 684843331 878833550 953569008 964930439 64668899 933040357 652355331 955290926 924168035 950464580 596839167 885514540 580120296 989507282 721132205 761750776 851381856 978677150 433904319 598356648 312891410 787056185 747426657 834499096 13683761 601311143 402082236 928511007 395777601 891368280 754678186 926068229 595041098 925480598 562826270 683714020 392817469 890366819 499424871 660515061 598418830 976944817 590409109 813704146 36350615 837152834 406166839 886042657 287288831 627802111 992106220 998947240 821445735 962920335 180818279 837689750 414471743 422934297 657025923 908199205 601482110 705621192 533575284 637513057 95145869 508113010 919432837 946842156 52011370 702583462 199233646 409726743 52136995 147782761 463399469 755192200 242505695 588338139 739541601 774561234 776018639 969197749 871349897 958533603 193134673 217330896 890990143 892398681 350226956 993580856 469701457 853345339 601969354 920721203 986233317 993904631 356188912 374686150 704596290 847282331 616390177 672543045 480420993 561185082 728089465 858578386 742257173 870938191 723347027 956490209 354602357 519764233 282704312 770972372 325360808 792269256 652634746 697241384 764119431 943649754 270858565 752985152 246580528 330204019 767509559 800318138 12478434 494284715 939924310 952648291 729195832 951796566 334563929 958897061 720189966 916699721 356631056 849918834 159759383 250469077 644893420 894700000 822512552 898144072 917332744 976633335 416778457 982827234 351387336 837560935 905029484 971204236 413177710 954832575 234378014 486071780 482076871 754548850 389174831 751489145 750966593 942941307 331480965 662066370 584514101 786291331 128293675 594562339 476725480 662163900 894904335 908452571 659190681 974050085 842848540 929988341 40912563 92936333 37979803 53459942 371932623 413019183 243083908 338697171 568816177 875740882 529121257 936408195 332096258 391474332 218509316 572475324 591112172 782567041 148560565 435987490 752683487 860562812 818826049 819550174 609898287 651028772 77310760 115815098 239875443 612378141 598647277 754712270 292330651 583450961 209128562 248566141 404451909 620960414 378871569 412613331 219830349 308741191 442695645 554430746 28493110 284876438 784064402 871133505 964365288 993758293 103934952 655651278 303266562 388013722 47404952 900621799 704840249 946184271 86530330 833848397 395891454 801872205 583259390 866706241 200366744 975937888 58518144 467973187 495934974 795503710 442674974 643484924 983618244 995656613 354762730 837536467 668546613 975152604 467982893 682593092 774413451 883943347 589606707 915614784 525148203 887490108 726516335 828653500 150064495 630248263 496352617 517629221 958061467 985718475 181774521 884942024 339426877 527946216 412578295 585228739 792124873 907974480 188073362 662192663 779421527 967090209 866609961 998419602 427982664 715085322 358091060 844722005 47786494 64394882 942897069 983045817 454250409 616204180 489759341 773043718 214368377 825445730 443965577 861870854 672002248 694720753 153738688 438007941 946963901 952872994 472316520 934832291 80134778 563081218 905699102 910790655 980326667 999501209 597582318 628136578 676242016 907548109 727142429 991177518 814911183 893454509 731681211 810291764 704272781 914858979 828415662 855810385 720634359 896329852 641964402 922680436 976277975 976948350 115652060 476652215 978148226 991237705 882088242 977559036 280036574 956299004 158308664 839655012 731099278 970420925 889472648 900922852 433175292 831702936 704660765 988980556 975386117 976820232 632770646 960638963 107456345 789468036 799807746 823429235 963478264 986390550 590373374 797395545 644807428 795877915 738810502 991898669 710854822 852804815 143713415 577648839 124341416 853096236 223058095 849269056 415665687 884436325 64218504 629415541 219411360 386015807 565213536 622218632 897401179 960702805 835420712 863776000 747615109 805553730 403407305 596141148 727665562 798166542 588423857 815391781 140467943 393941922 892976094 997473379 78033227 893469954 45622612 581841434 610458158 739327263 780501433 907745226 310338484 412523175 849142772 850887038 703804706 840568436 242215203 505637239 570006739 712473893 666751978 732404466 997766260 999817167 113013557 671069379 856631974 976789183 799846626 830539679 334346942 661642573 542616551 787992308 381327731 588847205 340645928 361941470 237781007 622854907 44268904 244284975 485627393 811467561 440615458 812420399 9572833 365407279 620771171 634230739 644373454 713192543 706647919 990614315 587725946 595425453 330326744 665623056 866085982 964135703 636124013 716972342 996456873 996692531 219071987 559849266 339982076 368134666 357871305 735293792 417748601 791145880 951800384 978837020 579756317 938223585 440987495 866799764 639687691 933521959 914793837 931251137 19346854 364890235 951577601 994567806 83952502 938326216 577997054 721252320 970510915 989807500 232597436 516298973 197396842 691371254 603953760 969284263 241890591 580828503 893223249 946218655 912577164 925905275 528626864 820300136 309619929 714935693 508691411 618356811 485391426 637573611 561156371 595243348 236096808 547405652 731203507 895365237 228705611 996719003 865480134 898435117 487468189 952241167 376679608 716686811 936812325 969190430 838570790 984774621 902250804 938716902 818469689 921348767 695975630 877744876 391594385 982503294 931442671 946810836 565127079 724380314 193247721 456491929 529658068 627998318 36357305 573632970 259998905 746628575 487166200 778487653 431092657 806719963 436259507 588145598 465969420 489462004 913807190 980852864 559565968 874164453 793197853 819376887 494408966 763281714 413037085 812825828 865195482 907151238 949641828 959245261 322334037 823718472 231070463 735616691 600902648 924852796 644893542 998540123 406510186 945259210 566535756 838468125 247354529 409197336 155304480 422020255 378771065 713628962 628798937 815720741 28603136 472616582 51552139 272149407 835852649 884895906 971743802 989078205 244680089 252852091 186455593 240888105 786324742 811880238 334622655 627351849 701587125 913957020 237218915 250886406 960899315 963590052 713667570 963373129 196700364 786345267 152996905 561701740 225820068 641513938 462280362 712945218 429558479 910393594 201666953 698908224 542423953 781882721 615114508 724415635 105630775 720099537 763407870 859158517 46665419 792730331 833768192 876884189 650258436 952669293 500076108 991712040 133446773 265352535 624149192 710021603 418974895 436250935 713570796 809714016 771708051 959359199 943650476 984339689 164567588 630670026 945020019 953210923 702752061 965501889 610320830 936364163 731675255 775703405 417162576 528666125 525626709 718927617 759714538 797208300 677829130 840007055 899714927 945157785 755715099 794916261 895951595 956952544 483539307 962223593 706666661 755534418 729178969 828284572 118577547 316411847 22593203 344359494 726140767 995723079 575716703 699013925 935472443 955107887 32653716 451163463 531480964 605030586 487266331 718291561 274157037 863235642 784204286 816116033 780845097 855137806 647953711 788749028 394249400 909010246 491496067 524858173 959003327 978948895 134589246 587556468 854377882 984777293 504929809 591974935 152116795 793485861 734611672 873096218 719315121 780587743 304371005 452315503 115923922 946351867 679631255 949608484 577366211 799173798 220558245 957455958 280126638 408617812 994151292 994970303 261447298 307321540 707181094 879414891 790290071 829652303 296339423 562873832 208012696 707091858 992217898 998701699 824496699 988024475 505869086 710991778 823006517 919645126 767454521 941051220 311557769 508264376 449651955 563107653 117457988 921538749 294620269 995244916 352928701 588204374 672806196 995148556 952722778 963852457 255100569 792106197 433445792 859322937 639701042 885805848 69928075 238893928 654386689 892702165 950568615 977475550 687178482 908878212 238285873 271317923 533512273 799385684 989725511 997887821 174049262 598748848 776893851 880905765 74501919 992124464 893398905 912385536 262580288 509033145 558328166 953217555 654850931 814461445 990153015 994535823 163526168 845260470 461642627 941030801 58336666 334564416 790749745 798213857 820399919 942497903 449110094 507647717 591970777 746475058 711189684 834944604 323531104 986539912 74252377 496381942 551010376 876471149 195635826 605495559 72559100 366628108 355057449 590562032 140026060 571321957 617350997 806312635 388278881 942710647 272120427 383651417 986197181 989339944 122738872 387730534 886663452 958280633 16246642 127578184 649099275 962124221 221841381 227764900 186945772 373525920 14310802 34677774 254872658 397552975 404996871 653710919 694881403 769004649 38444677 960330802 14059868 731864924 571366238 944396554 244148901 798187624 285311023 727345451 639007061 828391799 604196064 787480482 6121100 20766595 326364845 411167114 792073206 944995955 505973931 976825536 844017938 984409938 480403022 636146904 17425912 566638210 62450112 873851594 796393259 904044835 315104712 646032210 504206969 635017634 693123691 855340898 344981384 700886136 805444712 976092988 959370442 993329483 752231447 892626004 175417551 870424618 184998596 502182486 55072186 358423216 99693145 978995108 148398494 810556076 181115954 484964494 785008164 900430409 933044338 988894686 91387969 177908099 607708985 655770436 709378232 771599069 98038938 601329435 392022456 501581856 878277097 969221050 880002676 882319413 296985844 502735246 791988414 868105215 136147759 980580683 215450949 951854179 978208 849550694 27817306 743640562 234240222 318113505 780406099 782933501 96713617 365432313 786226237 857840003 906398156 909001497 824581461 853784499 922324589 977506848 93869063 585718242 595217175 999460436 394157883 920854464 270842813 708961469 703057418 897515330 802930497 910620924 559802159 872051693 921232140 962717875 53108589 145079557 266874414 725446621 139759438 162550731 857670668 996757662 669322744 846128741 547682515 585265273 200650544 938414979 937628749 940898016 158986663 462452960 77233276 980716339 675452209 908266508 218714103 549714710 463013037 674297025 372429971 746885020 108153154 319762359 731990693 734142462 492265274 670293572 236552017 739362739 517915453 573754005 172163939 792322012 974778836 984771368 191759808 332009329 282623652 540510491 671888980 866109951 857362928 914574115 908349771 978195325 633115525 892044353 435099873 784939513 982085265 985750987 952534207 955892044 503417244 870531930 567140026 602842698 577360923 587604564 663018390 795489359 921805259 923268782 814650411 871072881 158631914 897443605 156344067 649567083 297291040 999298002 402010847 625315294 803069241 952433488 841741190 907866339 329605303 696471836 278650641 836742590 918926648 925799710 731664873 751238250 93856732 714856747 441285999 564659400 497020618 846686996 209979428 776601697 655640041 760281595 713191522 726885749 170954083 467375100 588158943 788565271 142342786 714878445 872999601 903085079 849864271 915966634 640103035 674076188 309785476 967410266 805059062 933156785 722458002 811115679 675817028 910574762 760557841 892891761 793609131 897963069 589691270 763664552 534457062 928858333 408061777 416724972 71353817 255521790 141342298 300143982 697430710 920954477 705297087 836965750 127119227 599424706 912931040 983629567 433406026 888298732 831000508 997033630 361379620 937852154 370936129 445430273 141533388 599089493 626515171 824933464 341770864 564159552 228346891 566796292 404192430 789392703 510304712 643072615 869412060 907986036 600501883 655241464 881213002 957979854 496206770 758673976 671408019 685119507 265272470 519430506 431422014 521314773 502167008 546018800 321543938 717828196 825661496 915801182 772315150 876646350 330278468 563912610 741311592 797435140 913410462 954261853 263380770 406105633 854631156 995650126 295420948 526641027 938242481 940882492 633512848 952998140 445693794 507832154 584149100 737611546 210765717 530314428 545620120 654758974 400673941 714021226 618220025 997155840 454499036 667467389 624846790 653752946 118572738 532521359 85542515 516937992 846823450 919926112 68782109 842089838 263157478 542856277 995206973 995843664 853178745 905236588 520873386 899836491 140277257 370191877 417485930 772192922 931308937 982456535 827085458 960803780 827792875 846195885 552580780 899037945 185596874 431965356 79058228 358514031 282778939 481371636 407511772 965994556 641376751 683383479 300876265 390603474 107593038 677904540 940947210 963773982 972939098 997619072 179144295 452603398 104975113 673264790 921603834 978761096 502407740 818933126 749264678 861596595 501074835 558187382 244644969 699640745 889866961 998596786 48312681 643191038 228258670 386416389 259128857 760812602 615205165 695815450 725033800 783017804 332337552 958199686 203478019 559998214 406746710 556216388 289340366 398440546 98720063 670084843 540272490 817718106 864953150 985301621 158456781 678060977 573226021 862171913 442816165 699573784 673237397 898502812 305695644 647917116 221612948 923674779 394537310 734276691 535585099 667450540 557088939 822590065 389031651 764577797 316214905 386527620 850409638 922677791 928493722 945421758 99506273 596086217 760096856 768957271 118841435 444881414 311475347 859074082 737288932 990481481 268020161 868203569 589912659 946308732 816038633 969281418 769434015 844159205 767685208 972727191 122930178 365290490 887823464 947066004 573434133 756739438 616337794 877111379 713109429 941731754 122923323 455098609 27225257 508725802 992480672 995126553 911332057 951007117 296434074 439068632 630669305 668715458 564631389 820481325 614389639 663263967 341192038 939628324 71055869 570587252 405765688 812177118 712890892 885469781 325803237 357492425 64031163 301851672 109132243 313904235 721088506 798305655 209742313 353849250 311319028 995183742 218607857 766348739 809214641 884068789 654056062 853328932 635098777 708496295 736577975 757991798 727193605 988438670 939416857 940819531 750002631 825049736 280715048 590565166 459224509 981849227 78063844 955615610 857800615 953187396 940250573 949018272 683470192 791116563 559187404 562405415 542329973 888253678 68862594 919700473 237606042 857468231 333958363 405367750 308420647 729634031 839742912 942037437 140030975 279619572 984863632 997123829 236882794 784469152 623674345 667737655 382271282 387636986 641145176 983008710 141662804 602180963 968060863 995439328 123058670 304462643 133901575 490618659 995486437 999374118 236229755 655593769 71141534 282149789 308160910 821478802 657050826 939392476 462211254 783355475 335899321 925410140 455755801 513079984 918223108 920274440 8582750 153850906 297791978 704922838 184094683 720443558 604314209 648487777 411733979 951483810 891862631 900794671 484507640 957913891 2723237 249669312 570644948 917721889 311355204 437397932 746434231 857881081 651586582 654809132 157104405 846312404 306025960 452975308 210996068 873691475 471068069 920688586 450004911 856452635 67940212 191314461 16356084 954900143 207845434 624831656 495851547 846121400 407622534 556059257 929245923 959466698 87793832 176547701 411239840 909950861 378929469 523644907 990748339 995425021 848496782 957350745 862890330 946947512 423903539 766211483 6814975 460846206 510628641 554441601 379073356 671502570 17274789 572473106 997622783 999127800 3377378 388195169 938285548 945804168 240929283 393159892 126141191 799278099 133023486 662092169 375214804 767131042 971078470 981485685 727323394 807253439 449679887 776978675 494778635 994514883 584405369 664062591 620377194 846257013 572667041 613370370 913409533 941151959 976049206 978733660 438152090 688283023 839812749 852801005 222069775 486695504 499108552 786805672 303478526 746302707 979211928 995024948 178930875 854074728 277723007 457800534 679631476 995834406 58647393 269341405 540229228 710321459 243049032 579034030 889368290 987998810 124316973 524658421 640440631 676030274 269271393 625418772 782304384 798497341 783687282 897958862 311594023 774209196 722374334 981958459 149120156 509153363 282895386 694504757 361245295 499890840 457050561 830012805 371540346 937530740 100874155 814647503 119784982 959984195 544192399 787642260 818222043 891559153 504135806 668394191 994225927 999602797 839359543 897251298 75203137 995389681 241032216 745020237 902423684 987798573 196694835 738630952 56589858 786268912 780803489 903232982 365385092 493783892 457277313 835076715 888700130 946019059 585115062 743914461 817730442 836732617 49898407 633349504 107157844 790582611 779283335 830046338 132753002 772199278 118870887 302307010 464315481 993670856 619504446 947426025 913034257 955058201 111211598 222174047 873633104 940191671 208787416 395251451 191188427 687510479 965236990 984559955 431480451 778820700 639246624 876388855 280552147 729782691 290035222 795761522 209994312 364521896 875845605 951368825 969552101 975571911 554706167 567266928 234455023 431091591 321663179 521771568 536078016 848274134 127898085 318483659 471270068 947999873 577693941 597687528 730599397 793128296 80480416 793225921 700057531 796815581 591778092 757322926 628796810 752570564 484826252 611343504 148251789 253138198 562781818 778390985 603165756 703025362 243336684 550539119 434872993 909070986 444198037 631766737 365889740 933995527 771002181 835922513 577095491 636220752 166360996 628657615 947925080 992484705 228729194 543475878 339635241 618972765 678056403 690050954 490681186 727091937 368683614 622312454 713269715 946699091 406797974 901757933 633466865 692321909 368559154 799036315 235162310 842612618 360882257 989044792 502435250 773984896 145492662 889470554 97264575 638211618 340928025 798414782 824554455 965169553 545620151 696118572 862102792 993957155 639750615 723053242 109446230 648199229 624087618 767888093 316678137 390007670 71452421 371388122 256906924 383038894 360987168 681440518 725299146 727856665 445045256 546511594 19086544 689622353 31436619 312910175 783244673 797476487 268108589 544586033 816685575 863743311 982020618 982025350 983960229 996325756 381900200 974891812 720461238 806435487 337477423 717262329 245751141 831465727 293630859 937522289 525811264 956886585 249880162 970824751 697092462 972193677 822715934 835493111 968757345 972214739 53016091 314882938 933662907 938908743 957834002 990856235 32245314 108620938 784954509 812025420 335521795 921346383 200455452 573753680 50457266 421700913 774139692 963014041 335667253 396860091 110521310 263232393 149329904 582990930 850726643 920373789 809273852 960996610 868938197 891989355 347666488 651648160 523050486 733196171 355959653 907030173 723565832 916371954 763120934 982389495 743986680 916690055 393443342 462218230 360468299 930946305 185905855 204764077 713677592 744513361 942567746 997963347 252405304 776804001 243401828 762109583 388553882 958974384 383332380 627422512 627725087 685083040 160483791 500356760 699381875 907637166 559746045 967260792 563058186 933587636 196204580 455470843 485395494 866891751 673882052 812792310 575152766 822273335 732334480 854816796 524369548 713731533 217272972 724385699 111294312 432602484 644309880 933049958 645647003 667302357 608938778 674364846 508806154 712742660 789059269 920092045 589041211 987960925 561751486 784063515 326326771 915374677 959972544 970923338 650771642 688685221 158927929 911625998 24512538 652127599 208166415 616187193 878415046 940122911 184339981 200754831 526483460 922628042 483529004 719831181 952347928 954686436 445824523 915676958 280711235 331841532 121139554 708816088 196576374 381183556 775573236 842291390 853177023 887932329 547553910 854840969 84940761 625540737 30536161 397033886 462636364 577918270 557258007 585316429 782600803 799768373 4017419 892422582 467731864 588124919 645577167 822355960 67779071 347602950 9506354 255751818 872810476 892821026 299426477 337531164 533237244 877817319 655502537 851756247 31959888 842039995 804237691 950935757 71681930 809503502 625451798 722583140 396698596 549064232 528473832 529292458 543808954 725784933 715664018 924887486 810109996 810242031 349548147 486522993 325871224 568542824 64318412 370065898 443507934 716728784 584792049 729004432 781218879 843037533 794029092 966891685 845796002 975991172 100408296 921910039 235713580 926037053 740204565 837582232 671258241 892702841 69465784 576677320 685163971 789075639 923894388 947507800 956094231 960249505 835412287 957397964 650013082 922491426 604414617 697724558 20658758 190955301 295206189 738303181 553871341 923042733 188948434 472041129 937521621 985541198 794217997 794830236 460383363 791653538 32246432 580822261 14887323 662555394 751172030 891965535 813942375 999955487 640224332 935284890 99449678 766903673 839428631 945537557 128782423 406920077 199762631 783583074 886274667 968070831 973628742 994031955 444394404 639107542 803439926 980944643 33589726 216588046 699274643 928463640 670710163 688560303 907807096 984631076 911825169 923416533 657162581 927783358 368159007 503159266 660870809 793842570 128526127 167993982 128986253 922764937 818251523 913023946 813898985 881920403 812393196 931592339 645210772 651226878 691893211 993276337 365150699 846651922 278541536 393358909 130243455 915476463 708864853 866005872 214535683 280151442 583806552 597844706 708828028 840874658 435817057 755118601 348046154 552845390 715228673 799974886 280871527 309652580 338150928 697657934 804430860 815090698 176168286 188534097 411246077 601417284 559120205 661174759 676357532 754777791 715770923 786903241 182838967 805161051 843156856 934477303 631705848 716906654 157733534 334443294 116551790 476129943 635852519 841089931 776622818 986771028 486547093 996686641 483989422 820922739 504997601 625415832 389059287 940484318 129569037 302650706 993741591 999163679 651462381 752821146 652082614 964978526 902793250 996431703 769522781 853953818 47753539 821747022 892370111 916836134 130049216 891895345 76155836 752170099 333029938 404225739 155233336 662118021 452305861 923291931 828386393 861486708 753027808 862295447 446149139 841684469 716547323 855602365 279302552 461579761 574504920 708544117 519009266 628527501 603467082 701830545 486490552 710429152 965722642 974966269 487421420 757103308 148834405 888270798 934926713 957282904 185796464 926732668 942877124 950907043 221180226 374450100 606627433 897726761 99673154 832826620 265611923 492000800 44916967 535393278 662019510 904825373 844781768 990910885 753364869 860387956 851311253 918790569 976436056 980921357 507212312 532485879 488362708 537997795 196023029 662841597 414953233 490157319 510674812 544518688 492176262 782363707 627234833 951131692 283420005 813681256 677620765 990142721 240835856 996962222 402860074 478624941 996329860 996669734 464923683 618955833 267085571 333971548 646516183 842901755 559464518 700539787 267696825 836785249 641822376 834631671 519541945 623444631 381198354 669896025 741941123 955638056 801898138 979667085 519327287 632297668 227002480 663246680 324701522 885740379 234179187 609131431 614473494 825623866 35577795 659280246 442044646 757411089 403437348 681411611 478438667 904544507 749814232 923202430 536243549 663811187 772970017 922134586 380679184 940842784 280088703 717633485 353499652 735370496 266463878 933228439 358032659 878806541 909004562 975043500 65850987 743248407 471582408 505098057 24467139 497638020 269766653 901546236 190158122 603550623 263311387 522498856 572938846 599445371 9505228 988153911 660624350 883991981 314676148 978464422 89170809 243918919 349905686 464883854 606372772 664625608 973687601 979316123 826732690 953453453 947535780 957045148 267396667 895338921 984455724 987950265 259142281 709520381 680846343 851099600 929546831 964231238 402705911 685237433 169144869 366825415 63830450 810784311 810527275 989994196 80311735 616820691 454730360 806383462 15587155 998242038 432615783 562294558 604705941 777762334 583592689 721729344 908044034 943907878 166995077 788948459 860780491 943573085 573212450 639722262 851887693 876873943 925939612 970513146 438544369 798767654 389778110 464949709 524390920 530899114 117908357 591858314 923358712 943060399 58816476 458422548 994860312 998211906 231015286 513139667 696873928 750276041 511294237 901185297 306718715 569209073 426264000 847845040 505293634 866086360 284542327 752820224 992937479 997142475 582337656 612239957 473642136 759992107 364354462 905457279 889742241 904374934 103954939 926898278 94107303 548703499 444779004 685347268 773995593 825238157 189262728 875648728 77734443 810175838 524640451 737291588 637699809 940058931 172878525 464451771 55786322 347317977 375876205 395745946 163473292 840896806 697572454 719439631 928720317 940999389 166420873 479392028 784516260 947663118 403127070 685053635 946561054 977415770 874920182 991768760 370226283 618358801 790501102 951637229 404323917 494336631 512200422 936639717 808476979 823768949 53723272 98896382 570983222 847907804 747806071 792298699 121139927 764414926 137058228 237020888 768235603 943018758 491922690 714265586 942147393 955817891 130941052 555385277 610338032 784512477 428875960 637120421 436346699 544512963 124154182 720677093 989483654 996261885 40030945 601303581 847381574 937531639 681337899 722002688 437547107 727253760 283881137 538408953 635878702 899427816 773170740 850291799 645229154 919628181 770099922 780545758 214510281 245297385 537001005 781191907 532582007 981356563 661631170 941095441 343860461 374265713 214727645 582198185 502038086 868464815 828007114 861111769 929519118 984406405 12071042 872893669 508636471 618894613 825849094 847782866 97173647 611209553 815567973 894851972 595615083 849147533 936337619 951046069 309231553 515678381 474600478 884673513 877771093 927861941 967534462 984942558 172568727 675205835 837550397 914490978 788276085 990585086 215681423 907865053 881946018 985246340 249176555 331517290 603131699 632295275 819954334 992676442 287484180 728056379 721373904 905045587 974109390 983726423 138876961 747661072 375567644 557503521 924384787 989312231 86545427 780930738 478746335 918581572 673919683 802190443 310267626 522516167 617212024 804310749 480662989 862064505 482511429 807302357 573625492 917347741 287141685 717593114 516874918 673675826 561074118 645277578 855404965 932138134 297162526 890232883 564572519 752832953 142795975 198779708 148320376 188262677 417443322 748386829 486590601 712939276 198082362 208371973 666984227 773992438 313128067 594282289 55211943 138583044 696675650 736348154 328410871 784940005 58588965 927820348 506052475 598508716 745816071 883194268 759067870 783068713 715986025 859134399 881059047 902985772 15355937 60440935 716781851 910308928 851350687 871350051 304229370 812007371 504938106 783542464 213064906 277532658 535970331 720642866 322827274 753944047 945205413 959529053 268352327 898134971 946630832 951408471 542903668 907291427 984609543 989894704 671692210 692606956 235071977 646423528 216792706 331270057 74078611 141690762 106575417 491899885 384880320 680363894 194657348 666017087 410711038 875033032 649432410 662561966 197234221 970711130 87069091 492580457 480027665 749659853 650245741 986994978 90197196 674001662 263849373 770378619 116808079 706412676 487720123 497970638 69509398 973047938 500269499 933657127 807426569 886413049 45839657 820080601 254383517 813140143 304368974 401079626 368952762 527416743 406910958 921814584 426759588 873689551 392189816 466481645 678913736 700145152 429765124 930442888 777845898 918939748 257699610 671172518 359192607 399878177 125903456 330880845 10675483 163488674 193208896 551309700 934291861 947387942 239415394 666762782 679087965 679489294 44789451 44943356 533561101 655656038 365133474 448480847 70305295 900295262 513754844 850390004 552525659 706656018 377608812 472686379 938420701 975542346 438278675 880770185 754413105 937750496 215305387 729101543 716588304 852652740 581967441 689441158 96717844 653142624 862528670 979181452 911135350 998318656 319771643 731373335 762732630 942280816 161566636 639559452 512524164 832901889 478593851 703732197 604026407 753685749 808430518 976105464 806148576 916164332 882394520 905303829 640696219 716607699 154621512 797510527 941996393 966414344 401046435 949025449 298169358 472926755 57557280 324493634 917098662 953073882 98191516 226127669 711720514 987800663 749641999 882161286 3928561 521994091 876464363 944462865 428979399 534572269 750480156 897772229 937605466 970572065 959136154 973003750 315101409 744558653 523330950 961629811 390091447 711837416 76768235 487032509 519155225 947874040 751152656 824487425 16283574 680304379 752375837 861291607 384597453 386975966 722893493 981202109 399777290 410469160 607178282 992828980 91129444 387085702 194892176 582115121 793489801 966580474 327689317 672099818 13123361 742890392 57776026 525008897 238237706 721782535 162009128 691360162 426638755 472379240 872369601 919118399 846211784 990004972 866600565 984677513 392274030 748137111 82204065 344110502 383133114 994505812 830015809 988929435 315831058 527099868 67709771 586090831 814997057 850778289 390542218 545439267 501870635 629166156 373150347 762251774 524040875 805774404 640935448 873504676 171336511 387530029 969013041 997783338 634133086 751372324 813133961 902477544 280158273 439239075 63668912 906938182 68248166 256102678 768208670 835726590 999366526 999942312 916219258 970067340 674509091 928009548 279896643 881585101 863158826 946295335 851136529 906656107 925069093 959337419 779956333 780845620 534864240 632680585 303840442 359263905 486987637 964452261 39869438 181676211 268809804 592802763 269960345 791139913 657886669 783877370 383989910 623142562 300121978 503461356 877992215 911244588 281125585 868140165 601247660 999414553 613961825 686750167 266317770 359229087 507977922 782310875 177818940 341417822 779651373 837302679 572853853 580915741 347864535 874329570 382146569 640008640 125573133 553887191 934199246 957638551 695362436 883931059 159662913 829473838 93202385 170221909 97215197 247980031 301818958 731740686 335610196 721198712 171700373 503780404 944092382 990859968 490985559 510842188 925849178 937158731 562586722 894639868 312996348 809852109 98696575 772444942 905032441 928410148 880927294 927142112 700573477 845086819 27217559 222331216 175865895 248798995 785555163 909671064 63658155 250155132 335587844 698330792 297692670 554297668 242420710 805632121 45527380 524813501 612787211 919585847 568384758 864591588 176575934 319096359 373642186 675713381 31879287 300923497 831012336 955657858 367725892 434364024 996814219 996882178 650776808 663156373 753328921 926784989 886372221 930488014 614598265 823287406 357501014 572393580 742925628 912380497 489812000 795286504 234760194 491210247 970043954 976676455 792167298 856339294 729973553 778864720 986634069 987897802 747627590 933808856 65984859 474513186 866427060 884880532 924779340 926619054 892788651 945807799 961938786 973458785 642608111 761052020 255092533 885204045 615318200 734927092 955901201 981934363 356153996 771528033 13300696 280361920 522717009 546455126 941706240 966757281 895623231 923355939 571746506 661096236 418367917 823337570 593516751 811801410 16258599 285034923 836912751 918201425 550295512 852019667 913120754 970430279 917492405 933621482 533865816 859983988 713761212 744445870 30855200 416010937 590823893 990707747 116821043 949071231 66116485 973046040 102025168 188388563 764073538 793275209 408002241 776491924 540067021 789953161 541421912 940411384 823491204 890199992 486480255 885637996 561638772 828777326 279530824 484191385 343773432 633469830 466231769 781504928 340009436 371906926 95883213 676230870 956299337 960992235 483517186 882266010 528820989 839552093 937643768 942450823 394992536 418375277 70307257 997298009 973386679 993070644 450080265 796647898 549002793 715195781 791764130 954076187 489948692 925566337 860521148 955149895 962015378 987877436 856789960 952548493 278994533 545933409 355208163 736782400 820548767 978705914 742598449 791485420 574512441 786462944 220507873 291279927 138538474 860288554 358538009 758312646 309394426 941818951 311612665 831952343 130770945 705854886 654851153 937540907 408727151 503438065 813872696 958095956 821791182 864713415 960416736 984326552 341421215 697076819 272642911 534454431 717930081 991944992 730374809 943734746 431223783 822396407 185925105 243042839 421927574 593679205 45768423 874400158 903419914 949373178 23881767 842904769 205532874 745968406 632339226 688215784 30255450 586512639 79645478 838283083 517624314 691009671 612353923 832765729 443848253 631046336 846734125 901813359 239046666 343357234 37018911 781096144 396184210 485143368 172119086 542032916 905281449 925982553 614347913 665880568 362864764 862597488 472941352 492209612 301340545 916961869 98449344 383801932 800549490 890307880 250348655 634320350 231714808 540845809 63977893 147480749 755594912 828489584 630421438 858905679 436673467 888626104 111380196 246814400 215299851 452785613 201185232 649305087 126174869 879744124 834333569 921393114 836021812 976724958 721943096 839701235 59883119 532220241 941766621 948710652 793012613 878004407 577145868 673765530 302700790 418492644 755104841 922758001 232121100 804434727 654941560 850836309 80357278 744249748 615965946 616605047 68564375 102319928 230280108 896792014 408547612 776933927 258636118 392100989 551808640 655539972 887643337 943193948 97143158 161205289 792957602 914728104 121303015 576031865 603661924 983884228 490060797 652556108 74960779 132999001 311536300 948595382 635323181 662554661 736796397 943231634 874791004 921993266 602675812 617195754 975573607 976121495 296223980 355292734 804712120 935247141 920148256 984881602 448722473 984756475 954930611 973278434 256211561 685567824 179354673 234914303 222799088 927732910 481777112 983133469 369871095 739897919 431825099 552886374 305689472 454679425 427308729 810488518 831547505 942427389 217593806 615854796 224270028 653482972 581532925 823552335 52886518 563675690 672031740 862557928 962273503 982207445 761282348 786900861 667232302 940224844 277681240 740985246 750093050 850742416 300819889 633023423 529433756 790854017 705021062 900253906 820164250 844985096 762071964 968012061 447770594 672713591 555100472 984684986 324037364 887598718 880095402 900923124 909745934 936500755 844513020 954837294 189213778 255423409 933101659 942236138 3039230 852031806 917250951 991372179 312256129 468668996 114892699 197981726 13078302 536220478 3820005 212984179 309147430 392581940 481942772 592408562 461878552 956545569 300626968 940101446 7644033 407330324 804469132 813532194 706912796 959719026 490618494 663021113 333402074 679677862 345330422 961438847 17707414 986120987 202726206 484493286 368434557 849304339 904709745 915933977 25329119 731811397 28300943 606668911 983640209 995051772 888287879 940006441 496912922 661517879 132510777 395806968 383913077 495047581 100640556 141432244 444618454 540577579 351763753 705373790 141914801 480467812 750399749 878285609 934024208 972780099 24003421 441842964 141557268 717987892 301076518 586305063 208090002 775636377 910461688 924459672 445655676 904268283 371210826 550806396 328403493 703300474 43117653 592215861 693247813 715220366 492166263 582055865 180337139 666572983 107070988 215857425 793629433 981060043 555726908 714462263 107596376 202164780 573901180 959818519 332091433 346733252 1113779 566509846 661861022 794904566 80299862 325942440 374829504 450221745 607517161 721626814 931020792 940272923 103909649 853609556 200360817 716064104 456548681 667774746 159690075 563199480 142586212 562896499 945979253 991818889 254775983 465427905 943036933 975389296 981986404 995078360 206912378 984426207 464261652 835879474 655343056 844510451 569703118 679508604 806759141 893423070 268238126 539478345 686229136 768985284 546767675 895689758 923246114 944657372 388764013 511727454 226020535 871109749 828723338 941233435 268010287 983029403 143120400 444145787 599534677 837370776 215476639 426049440 228979864 542692303 877343504 879556425 838574107 913807902 473588124 988584084 507503067 635531459 760297618 934888382 489436856 578986554 760377415 904011885 626747845 756860590 85718091 673653224 834991456 981559342 337723031 517973148 843612676 977365804 808988772 978742793 372135410 540360065 979568956 987796224 190611973 486640385 53767730 558013352 41569167 618198229 855618666 870610187 840909311 843491346 707514233 902194774 306357303 311477893 813097657 924621131 948347742 948368547 647634471 941992585 826881642 990754847 579682821 717425650 260936957 283316648 79693859 378423582 552959393 794803303 185687943 748412347 95904795 840122043 64374021 946820908 667996252 713269638 25338264 223050533 368863099 507250126 658377718 801346934 478123009 931856059 331201729 492204861 394308687 872935385 587090612 810511574 684116065 850467233 308322587 824308503 411708632 531836844 337651520 428712875 895035297 951947299 247599746 803110970 202687541 474419032 856077259 952974296 568117309 583093160 606608921 927435672 90625240 377321147 261732309 985444483 496332464 631490856 847499278 952487153 983875803 988329957 982049200 993218836 474191556 588414356 489164748 721103747 375646271 478982820 174045626 771851687 156685218 894508645 55435567 932539158 102281545 943047279 123982522 581283121 230771406 815997956 627580393 899416045 49602118 275632595 336881147 365155528 132943054 743596680 616415631 705901798 529789614 558236422 587639192 840788228 279734588 311439666 987500113 991468914 969396943 969742487 268430760 342465318 670915107 943162495 741672979 826925990 828280227 979839043 304588474 868503546 784937569 995363659 960270752 971671913 769497865 815671977 880570401 989004338 891742445 992554736 951748422 970872724 782045513 966736307 649857269 895752746 302153925 462860990 775850151 811314657 350914821 622112297 908684132 996559342 128270497 305986499 514142760 856220190 422895597 578161939 702195298 844277517 118726853 141965924 153654045 275646490 696358451 757122402 41025904 636807051 244296936 292435252 897860340 955728234 777405078 861942548 422450388 688428675 439567546 886021393 23741712 866631496 684164290 766471638 694233957 942083550 597221932 831530742 951862713 972000689 146713957 823109309 532495280 587494234 220421100 601988107 370647414 884919106 324304956 918621335 957070088 973596929 653028403 901934141 291380197 873278684 706116802 879305197 869749468 924074473 51884122 953805827 512861117 834927026 715361502 837587503 702920497 795029528 191707416 615758829 215399524 815594487 771415857 872977976 465646866 991861224 421137431 923120328 445379058 868583342 949154108 953605123 668723113 954853098 680723693 682524903 327584698 581195673 700693907 794556659 422418735 563247012 993891496 996486285 530457824 750533063 276717154 753012679 897618159 946830891 225963185 533951874 928889091 931210458 461404844 664708151 913415846 968055065 320386495 774747812 256917674 679539499 591365244 961070778 572744373 768810814 264311354 424944125 95013694 515883372 184111908 610676694 469667070 777178326 874489637 929699186 756303975 953191279 624492200 959338875 424220422 615964969 273043457 948572326 733134602 805869829 717298530 736081924 742514328 844331348 359885054 659115454 753437402 772845673 611618036 929771188 94180794 956908962 918219118 938864070 61328170 976881381 880935831 918692559 227475700 859225178 246235292 441984131 658737633 840417863 826777187 891449066 941003291 943272092 804681789 874096142 969922897 975227128 350488689 915938450 204044119 856394383 996496515 999553048 184301380 694302760 688699287 821158111 468592511 723004696 244570992 968079639 827137891 861519359 632135404 736155326 629316169 889697451 481044570 611750697 466643955 624110868 599070356 610825272 277031608 720428498 479423094 917426694 428985513 938807590 641828226 865726723 596115479 887132766 604251802 770044559 134285512 520120285 586609180 713900944 120935577 130916011 79176596 851086818 539236186 650236405 953774870 993449693 264626801 403769292 811221320 998038245 474495725 609125379 154517821 707773073 898856996 993621210 941520336 973765688 673283273 777567113 442268627 644838775 792976760 880959224 771126059 861893356 540836557 771407522 493867633 888605704 654125932 879433834 916446572 975156828 932191970 950153402 304186116 934805009 114365335 139204259 656864624 799214078 694912418 879754228 529411043 640605604 924964824 980298272 815531183 923749245 657160378 692013319 224543636 295108512 593015721 755659525 227024027 267807994 410801338 488227307 231730692 979953559 19945558 945583899 442366677 711991624 816684845 890939689 943481871 984243974 304211211 346029989 971753350 992057217 725730253 900746546 730762934 763445446 909306633 939258185 462369349 524777717 153417864 797886487 215808075 622389125 770474122 951060310 2971721 617400005 923835606 958715604 348270535 414731029 749140234 899554375 574765627 784203354 889326354 908365558 558747881 827768761 650240985 964999118 809427940 874041730 863078811 873258212 971723269 983392037 318250264 930546964 882092012 978653449 360634868 816975708 974497027 974629540 120519817 273401061 543535049 643956882 806221672 893070069 187759908 934020113 685703352 722592799 357323071 508364504 942049297 962191854 981702515 992463958 376254296 717251661 688209824 961807641 622758714 793514336 763652931 883748366 821052397 826665133 403405280 538864787 456900848 793501081 107590962 401680047 778426925 966604775 848185243 862901085 202010189 724344263 560703665 757220263 177962793 264664556 757619991 941221998 337546349 473515209 281059297 480105334 535630329 897799965 132110502 661528301 796240701 849778232 186624134 908425209 123227330 492119126 575434571 646084064 978905415 994318696 550663990 710323083 622564740 625862643 993198032 995166424 22283665 317960262 775018545 952496943 631364161 905267749 269886753 787018722 546741533 814278005 805392609 811203294 423598596 610871711 266689068 744678671 591424808 858341582 172124140 271056454 382322591 821593706 952248580 997063547 784921269 786867003 882696874 925033979 252136725 959217319 363236160 963792696 108163270 908161547 713604497 865682317 954293817 965255463 482959244 930473981 257519657 343179347 472065754 972401680 113549920 781691382 886404909 962237981 527598730 673602100 847025606 929712496 390534202 956531500 432530838 529893663 236394990 459241710 203154424 227093143 858510259 999906658 845934308 858697968 843259883 916770026 708425462 984244832 732399282 744934948 600388333 725506694 356019162 686645962 169667592 685381954 539585038 545118739 214242231 923510621 840213258 933304250 570489362 796342373 967732034 997493633 125405430 789132842 579654459 920998880 939937507 986359959 470783505 925436625 553191794 782748073 533180018 706977954 82001108 374608629 578496134 746843712 166079982 382526468 447880905 958826081 180219523 691819242 705694430 965183673 911453488 949084091 543270911 793640027 536257454 922305673 822983930 839189652 62108394 152991322 107204623 543051047 679003303 951787114 134175140 523716023 225030781 896819886 532013428 745948923 223074331 669674242 980757894 987255205 493892484 545719675 929377444 973101437 869262570 948187959 139390759 959559373 800735383 806818484 493522783 912413093 330824075 537186978 742940222 758044019 9157155 448063719 926110757 957750422 889919906 957432984 749997606 883302856 351286920 918486901 981788605 989691336 34529131 393487786 707577569 986677425 721552420 886150113 741823483 969501410 313082513 602557818 443506255 818011251 980993134 988314956 768023325 864116405 529322047 689635028 384495652 626865500 740351668 808271439 575001280 754394641 598814200 699831534 839035760 891962612 76315450 533505108 354375421 491498951 494442606 703712340 348312076 946044355 119966857 477033865 915436108 978203038 754474301 755417971 18518675 783385095 552621881 718769193 86040600 937890884 326344942 426749939 192021006 631918589 332504837 784278010 944460295 996142759 152881000 812157250 308744854 922143094 520351574 735235888 328721247 506594687 988145484 992541214 943282454 967654955 447537155 517275794 884218547 993752954 851455752 896953903 269646794 963103598 580138406 598486318 338448415 368783239 170633051 438597226 994333395 999762872 564161215 681066168 470628061 891256662 474199363 851150292 372538586 916379153 506967829 571227803 129465532 369762471 881966779 892028382 145429244 714197918 60402619 586568063 47499214 967084039 310179154 421287934 842788733 925906977 932153370 972305945 229780555 741164083 468403252 496852236 772007318 779766112 486381514 638088736 425242478 903595820 429226098 955746224 868711700 986889954 315142699 393860415 638553845 777868726 52100423 318372133 970289465 976930537 971777329 980326115 518653081 722340872 78738463 295065798 831295195 989650496 170252686 677977651 717475719 985919645 967959321 988902222 125669565 841897006 133525978 777778367 259885295 671785885 369367228 978658189 307007021 984014874 853032564 935572342 52510224 521105358 674550268 785245900 607214551 917037804 530867124 930433529 972895816 999974782 133816190 470053345 433300703 900109276 561086906 642560076 747266775 999172886 55232022 215084503 309766430 920337693 28797179 520634003 115231794 400484401 324812242 501089677 830924859 859555280 130039617 716650727 35044388 301559847 121949849 458814207 141214084 490843489 437618167 856674060 227328768 237236655 579317082 702761305 922699311 995674464 357858789 818759875 445358173 463601003 74214025 837302799 935616058 983907736 492458628 839455502 914195878 942937719 578071478 615317279 222833191 982323549 823180095 930316696 150295982 619163173 546169051 564231433 327528174 468097324 821705492 829731307 409616593 966861513 987626841 988675786 469697753 712362479 600993328 629817734 262518342 920512951 751819894 769412401 33084778 524229470 234121178 409383205 806174124 962139552 440492067 577951647 68934667 197957251 792658551 867262675 483312100 753202206 718939813 879577900 666131769 798104941 643939422 723124477 34034219 39840656 598178500 877748101 990340935 990420281 539195100 706978876 221500067 611480656 866337225 949122488 407943729 859760337 10155496 955235995 86553382 196359001 814953785 824449002 135957888 213675024 242347182 310618096 511388971 875707407 541777315 869811529 626919417 936048191 364092358 437505717 740838056 858932228 289994113 864433258 682819808 883320902 190408705 272399134 333610414 900593967 20159968 69281265 359491602 809514136 532067836 802401790 928968857 980065554 191262371 960807302 505908114 772422508 616869341 678561576 696637976 948518292 257398022 942278218 364349369 597686949 42851620 230664502 991943436 992789959 721198753 928103154 436981532 861997187 520719570 980371871 111546789 502371890 771877573 780891328 280477159 937191102 415867415 645085658 822301482 970974554 581840910 676934222 806455046 917090115 715301771 991131659 76255125 929746435 226561102 984662807 885283951 982961169 310777932 785846234 224847967 988755632 365968267 402474503 614411192 810429081 229259901 921722982 975205122 979227557 934637808 988261986 13074128 285373319 705236301 849843831 544224345 625707139 7864121 13342685 189313710 425431043 114731104 359302495 557115199 784912766 689613167 759298163 936163562 981244396 511546836 877036457 314644943 653840836 748624528 915072411 264660257 356432613 750691986 786594639 707057054 880901455 687299454 907303896 610939206 788350416 762867691 939475912 601483809 913939455 155858216 667476783 343331545 468738934 287144286 406995637 424818348 498856746 574519834 750407650 103309461 435677287 881078595 953769917 6195809 532236071 537604326 934032984 487649608 653282316 874635903 970933948 187021446 710228502 902552255 941791098 583511269 908923927 898545938 979037751 387508974 412305557 976486762 991429682 573261879 794929600 480885946 921885723 39604745 798985696 611703927 698161251 292303537 349926566 6871206 493607888 954897159 993937094 877235041 965440167 75944444 118634585 882388530 913966751 661329115 872344543 474551275 582022279 362604080 867795144 209169396 402525950 383178818 923236392 502342668 853461642 857872859 917980037 982589812 989236485 759544983 991935420 976939469 995435698 459240601 710685426 702322075 892272175 25213366 840614030 197282005 760203181 548073898 796997741 216510359 806990287 137769742 766307114 941568828 989480487 524977970 748716116 29289397 560603141 559195212 664321474 554416621 669257563 8650595 682442236 635557300 667914559 213418643 947072860 363911355 539939148 879618025 915646422 26871040 530326313 448670890 774607346 847864399 916067698 625421279 789227608 781462506 803697727 86661108 777285140 883399137 985080407 601046798 679514266 847323422 856300423 962944259 976556529 152303738 839414807 38533266 467630319 389677877 590754307 22809568 291983896 209343258 796913841 263394822 369422198 829254510 931872865 525703142 612173011 79236522 283966548 512757626 832786173 739918670 949037942 672072023 845701850 961484601 979995804 218039450 942251093 526623724 571086044 835588582 993496796 605356719 862758009 303481167 891092929 916903360 987869349 300918080 435801205 416329776 620929592 577045282 618575326 105194925 172734575 44608384 588568859 706996767 933250369 303082790 461797374 464989411 901497661 967070093 982976483 356734567 818069180 714255960 741227984 214237493 888961390 54815819 175678459 241580904 499039502 612653553 827421693 581703105 698966186 159860950 305494796 261389276 627547349 711041539 775534453 415937199 625866376 541402558 886664978 178439867 996973964 92531841 811149329 275433844 972481840 720885301 973450357 393777007 679828517 997921028 998319605 483562298 830525915 695068828 701283256 270791756 320961663 426738016 751724587 170525605 816779326 850965121 990691047 561044556 684302777 222308075 277229202 632468559 997664397 628152278 753179253 284021633 493676654 575375280 992561199 78370696 656200248 46982920 707051330 575372878 625934672 245822430 381776159 441296085 507628961 811191073 836521934 866811157 994153187 745987907 907287148 140628 174203074 848778900 911016598 86452815 678423323 74291640 930107780 36894517 675895842 573432445 972887075 960136653 993473790 268399014 931209094 56498746 491231051 372423722 389406216 218068065 907180469 437814160 844316941 929724582 934935882 143193647 415148895 607952914 963029584 262177261 424906995 401967796 576694814 344777694 916733473 569391718 722890081 123406321 485811391 275851560 964607146 893002506 961567664 3454800 594375186 891607055 965404314 867116230 956316815 263839397 570983251 493593166 804169789 269972017 613880827 518425590 843042916 64506317 432186574 809279551 810556263 82152498 86918761 514325238 850341519 362228656 365103009 585817474 731116711 711981197 737457032 902992262 923107748 853044955 996900571 155559825 211750605 850387803 905726934 10540794 185075891 410741506 740282685 608392794 872295254 440571594 913762501 749048817 991311860 783635406 826164212 280495811 835613364 110476875 963990844 682276451 812608547 1059979 780357554 698495860 838980075 614509886 688505326 540127377 789899248 155546629 556228370 524936428 672543627 98353705 974825298 538907165 591949474 659220645 708724701 642958099 876492226 454972791 839508832 766132861 872096254 117031360 733897867 814376458 978156571 298730929 925079002 256459887 563438221 142982763 982440721 724901408 972479835 77470580 117362435 270696011 516497662 926934814 988501508 464152510 780809872 163277910 826331473 559158418 636090000 784068421 918331135 964018624 973506433 765257798 859354231 579252709 909414446 366579517 599444302 725091551 929270277 690919387 958237306 131552818 879723977 72287372 384921305 851691297 863226586 235021165 524357557 337056619 771994747 407740386 866153371 944058188 974344916 482749357 968306313 961680233 993321341 679764313 714076921 495263700 808190392 402915335 754406202 559785056 605422146 591961443 625361301 12828511 591226144 382235522 884336377 766980405 774408154 777286863 930166374 398779140 922803081 858316001 931541328 388491177 624112599 661981357 949472362 948629865 963523492 398375391 474297941 6489127 607046309 571106627 950388283 509435702 665886817 323279263 815922029 929100856 974929971 440839306 742493531 334486374 383572420 482205131 935456171 778899391 993761260 775974088 817129558 333202084 640876717 161483646 682084649 361553987 712538003 407732942 467716285 951776389 959133034 230297166 778631464 686012460 840385203 139715713 647013849 466966276 606688784 638098414 955438214 550714307 681495302 800974831 938768759 344195989 533090641 608777858 697693293 266049463 382501790 642178359 761480863 679914840 756635035 556133700 694085456 271537217 668077228 772480271 884803155 563470514 763475579 367909764 844203799 420216881 864792406 16798273 830500641 163380711 838559095 714917630 894131501 469266247 738812349 941261053 957300618 815624716 817424401 326863680 944633631 936372519 950960263 456749966 884585131 897231404 907620614 329187509 454254523 820046826 820407350 864737221 936268002 901095486 935996286 912227757 957588132 597654195 728553704 450241723 560325352 306942727 504184987 490545443 602591017 773430359 872772019 365302297 413171251 731869322 906386061 494356302 865251777 330047874 491934107 55686085 206181133 277263107 875863111 347150298 363417711 113768788 450770372 317704777 993237265 21385830 612759544 552575470 933136319 843252590 861625154 801910310 973455110 469009427 477359824 360256925 615516717 697589413 806582842 276233046 719792202 901223080 999144641 383292107 649743958 984725218 984851965 180710339 314553729 913314849 988501698 23466266 696001175 928161533 997021288 34746578 827223066 157515625 225222529 742576294 785665906 456842483 680244148 53830233 737383918 796234545 899700389 845897435 937890979 90844477 212826973 967441995 982189643 12693638 639165145 512580811 783894630 461108979 828839797 127007203 374242775 498682223 623399744 268781411 365206512 410189764 772167253 883524300 960371975 437495488 919019702 82301774 978682309 469594366 784241381 245548363 307617946 561147645 652540975 397031506 668670738 204184303 909006231 380414470 722660023 892124643 954797135 419254871 492762270 586886981 673616726 173984686 249760017 637988809 673006781 900164320 915100645 251682882 901267436 788213293 854183218 500625039 581377028 425576693 532182356 678061875 764559948 895980622 911741581 280636672 459406385 293357303 980386423 793163121 944010667 687051430 870575705 788250061 835245527 546972783 859593269 685231445 705581599 321035940 363576313 505700570 558117456 330541338 423762923 11713625 382190453 432305043 607066846 441011138 586670563 958752397 983735320 627603999 630909734 258850535 277902491 38987587 370386409 936251803 988886978 671000703 684431376 706677174 876755753 440209847 982497324 281300638 555936008 682476259 774610308 838542960 878085844 70337767 382769086 689628699 872785378 539554941 775424428 700086681 803926373 763288657 767725136 264183881 318078331 638513653 954052406 601838616 689046953 986906665 987828595 152826443 210369795 467974225 831468779 985551566 991032525 7369478 167673253 146914081 816671628 912847539 939364284 345720178 430287894 213496785 988311043 279077907 574541053 315185285 347358472 990048023 999209112 281330581 391139693 871581828 988447118 31291099 162362426 609465308 825250744 955275882 988810417 691297605 759007870 163669544 182463040 404110893 462374059 988515729 995721637 841416291 871628071 466961735 695352047 415577036 938217416 903386013 905760528 459180340 734518210 73212115 715158949 343021893 686045742 638161354 743123956 384547636 919799361 667814306 728598737 453269705 967629917 539031531 968889829 86610705 162662633 882373647 922763827 824924295 877021255 557004469 758305914 64187355 203792026 337885491 390945124 781748368 924387573 425895847 853461340 54346657 349650898 703195953 737488030 2629096 861308108 459531697 531275264 812951496 837856569 313473035 969941284 168590875 422578081 961981481 967080961 676675403 793537543 842488001 863905640 73253073 487808300 685042036 813659822 213444239 329456925 592816364 881458254 357627228 365907466 77160891 327315310 821426372 864373671 456991657 929568823 707435470 761688337 828940548 858791467 466875458 580311958 816789863 964527673 144748228 750996870 236898690 783480602 51983222 802850390 588557630 714693374 420175765 862780670 79239217 155727819 411723876 495452581 849514272 943285795 869144532 890954570 619614654 697314848 832682810 898798159 897694346 905266647 23906353 637296787 325815897 401263426 326638236 467447367 146204319 176469149 382975458 502370212 60387489 724656674 949717841 954123786 462564684 717087509 286706096 984746478 211568524 852661938 229402225 986369877 309540438 310270126 134555681 607685976 385107744 526783848 316135677 401392729 559030816 801850237 112153986 742213951 651877627 690222234 12344234 180044787 391278183 610021867 894292536 926021584 586149828 856070645 411789948 517760376 808699401 938640471 968946220 978210230 679294204 890799323 994551430 995176802 867636283 899432837 181935557 314826372 732495430 945117475 405838303 446585658 963599832 985368990 860971312 961728303 634859904 704529661 915281299 987089478 328584254 675863603 621565426 952522913 750713790 956232367 675929988 972350051 543940595 870827213 789805997 792845849 611716365 641639702 104088249 575797566 839245795 886998815 226671309 669815937 752447949 870174915 254111817 461851555 807277332 958631801 982228515 991573668 346336902 661271946 412479885 854174536 310084345 675457985 770640459 776215946 602704978 938773179 757378838 770642057 593406346 855122235 586594636 913572458 181637200 719749396 564480257 647522252 86404088 390221792 549713573 587185002 545854576 729296988 819508503 973333675 541866120 876570740 576541902 951224927 514925259 531048494 657019143 773582713 947359847 952873692 14559196 806833344 817867426 912508235 604469628 735836885 759511667 878345897 156592830 175255060 559653658 972660880 789713770 916736273 876001887 945809040 29279535 586014013 142410335 348526538 175756680 520358949 26122413 404035010 700401763 829732929 937916550 967725540 868139383 927847762 68285893 348739055 105762076 929342933 762786229 825110625 297659605 442799482 790083028 929865614 226100542 768068611 801427053 883306871 101983975 557116661 38649845 163364973 540443117 910704618 552492156 968542416 655268815 727625571 333683448 381404367 794948927 919540438 21345692 992705503 870843519 926898821 592233243 619685999 7937658 134780849 756469056 767062850 726443579 757289244 8869423 481022136 213842547 814451377 157767633 228728043 255172148 285486873 847654861 964685415 737286849 737423293 973151701 999494448 629639133 986413857 583625840 810897194 818634040 957283732 825331500 835429614 89835160 744332243 328921703 469535592 725546840 859566225 322389537 364895248 192916969 533640168 145653558 866963569 524601485 830961140 66442520 942101300 719887109 878127181 487715739 986700782 260224054 626311424 59293086 743012072 469829967 713936168 755809726 793899293 723923051 735110001 169402308 642803226 434089332 581285375 22260499 653132370 136891686 973167354 810733822 865056795 656813511 948260273 973454506 985364289 111624716 218151338 945181321 959029360 144213759 824669344 547847741 737216591 974022734 977884563 788939122 865756353 165961116 805050790 923578430 946245532 463614023 954065220 612191296 780245244 628575611 656984848 571946552 895351204 436611039 516137400 214392773 973580840 153863712 748684554 940988516 981274609 956942382 981772286 848627605 923720233 649006937 651232819 44126303 859239327 941759668 996380161 79725406 741336948 745586004 861396788 87860091 488013176 958750432 974953787 720739351 850255638 740286261 819290066 209389920 884695333 328227265 837389055 292225924 963578833 773872923 938726296 134050539 948418071 358007873 739454269 161287810 702062307 148208596 796917540 668881038 738091825 258128695 620122112 151106161 395533854 752867379 989901204 442189161 486080745 213869500 849351713 656824888 817127405 651762462 804416140 743160506 797541707 120864785 702084817 812121764 871086249 661292122 787638751 898349023 994518955 863910136 981023065 326208654 990572250 703984231 707619765 51666275 839684624 483741059 998109647 772097624 811180061 551770236 586688582 50076074 956469776 281724663 951867892 162313776 630623694 145360021 556247834 808124983 954915386 233618488 879527579 3790357 192381543 972116359 999185092 917276517 933782703 742146200 977941885 290488434 488055039 673973082 882914969 955689956 987910991 273867397 817868609 966076414 970543037 945248430 977877807 4855607 26790835 365852667 712455864 648458936 974228473 94642352 575098726 346618830 556176569 784467223 907232673 641618122 949868270 512051847 727092655 440520252 915821827 63761522 496093198 134608425 855684328 711320826 949820722 589285307 952067807 159131233 563132226 402097857 439480293 102003542 346044559 974495127 987227866 857733385 905102731 751886621 873408455 499989059 691100239 969348339 997249348 147347698 679178172 482483931 948146839 161535380 673672117 995682796 998197384 653268616 745510857 161066415 477927818 374101169 461934612 276765726 389782150 522243617 833651979 304565016 639379326 303581818 494430054 790081935 884849878 327598787 607050619 736250946 815801972 952898633 971437825 454976263 526954194 271417747 404557921 153274363 222171159 918406967 982978665 104497475 964468810 959000418 986785053 992392966 999363349 138745654 377043636 999645052 999764750 970689272 987922608 353768549 589932701 542376533 940783781 399624151 532866122 896600332 904542082 909503520 996816798 890607469 984561588 23463280 936933704 478864861 972813384 836116092 847574642 343270356 806029044 133392997 229316541 69655531 504417315 921426173 936388305 225054140 591479353 743681104 867157674 76805918 850014838 717915601 922468778 600020494 825691941 892936574 905442039 923441053 988941395 932076142 973251171 861894136 866039285 702496084 952463553 47693241 309468295 103716054 136960641 943402941 949978464 897405398 978917776 910227945 935963647 393506759 675782559 180314517 360634963 754491898 776168963 540856084 763910183 419604468 548418780 654422589 726274762 468539815 585464556 739234465 941056108 479352391 968320692 493620502 520540880 955398379 975844862 833389219 897572830 685129869 806716055 990359844 998946433 330866362 362949482 41747171 389462484 961830758 963031097 49073863 913699234 555975288 841437219 839654369 968579215 213782143 393439127 772178806 875086570 314364042 505911881 405931751 799850442 853456130 969582949 558553131 660018553 946949261 982153016 205603660 651897911 234488457 980591069 885005233 886689145 30528201 930641935 733724701 924453335 987742837 994109143 958120501 975767410 349790911 427538856 980007907 995049351 183052944 495433661 75168276 412866502 874208167 889432477 77674945 680063616 564100271 910078196 787862171 822973370 148682792 876026766 327746888 651984197 454913461 765227312 265135225 801496560 581271760 828068847 899433944 931037871 119115384 406501650 630509444 673712627 928305747 940224337 201002226 484406550 643066517 939682470 255770259 713730523 249896832 478521254 500654326 518428792 468885765 820830430 294811783 921052144 274649766 297264199 656513861 882400278 372427242 551312278 299671494 795831191 422134314 429260517 426666079 544538424 193004718 470442999 699585407 707705906 339387705 604476780 573714261 855068856 79350381 657169265 76782389 346609460 489629273 785053103 513975995 913934414 227683014 934366089 296475881 406211718 567773721 773565324 780752083 956751568 345016120 816601183 174809726 832912410 839881048 885584400 595932209 736278710 238963004 886968871 145569067 798091920 925451919 928986750 249970688 255709707 89401088 516189301 891251116 984062884 262139456 811406866 396742223 406398142 62896690 751323502 60695655 881510182 870995959 873793518 239808631 904618013 801242558 928690846 422656384 866138947 257123088 959070014 557780224 631699515 606638392 851425166 197728129 233137360 945760180 956446030 358305861 930502952 93142043 715997869 553803868 805730671 911986477 977542123 671431449 812010951 44024042 275106614 712926076 736772742 695363451 900541025 615100587 660261982 412991730 802973832 202630460 627581732 694501400 773919540 570556867 771920966 195826629 893640823 95235553 594868515 913582326 920022357 253142660 467438082 431882402 977158657 537235819 960298880 87459951 460507663 436235552 497504870 451815066 567930804 900789502 996338579 994449949 999495338 911825660 998591197 741797230 759874661 906827012 907830314 50356007 333057025 206360135 422157085 462069409 745127380 153105500 782323243 329478562 438435424 536479108 974030439 859279809 999926726 308860124 363467827 258673771 709538320 299022072 915515369 238636079 327315832 891487758 945934103 108531508 629223207 793761888 997660699 110790391 362184461 648909302 892946409 122700390 693683743 363504387 869895637 670806156 927551352 117105742 940462966 933148556 951861120 371219650 870486081 445207061 530511344 847616757 959179065 716129283 973924584 196073173 837384872 499037499 728994898 440137488 766911212 764511848 994163098 625768459 826905468 585878930 957225292 565198272 760068320 941268441 974495427 660530792 951259815 476245168 877536810 542569266 967659679 247330435 426310080 379008064 847305551 584728039 794931361 660335591 684675525 459598725 972383096 179293642 695903710 433692566 624169328 23629554 270410411 179773074 920745121 216708133 793212828 255330060 857402406 520269973 707545050 923902581 941152171 301626138 777888274 610046779 987605158 25277386 433317998 851258833 890508706 680018345 931605254 19404664 611657616 226594371 720671319 634623989 644795846 695340512 720897282 754413702 762914212 405264540 825615521 340652662 407665091 793069518 990027619 167502979 214442849 534605060 696155006 461859776 623513411 548223141 773420221 643920396 731250215 308080027 797921335 156366426 918728096 37967498 778470346 766823197 803366233 372408053 467100263 674214607 767239392 651661718 885928320 138141115 555299326 811707435 951831573 244940048 639991767 168716206 930323677 786801342 862582516 447281500 723196094 607559815 793824890 50762858 797618794 912486630 987977251 48977217 822071362 891840295 997241845 233728663 582490179 974858423 983806725 110825418 993710697 801380150 958996103 506834266 942441329 645245038 782831628 456147856 463294672 267792447 813473833 388732046 611127686 154020409 926490598 606728706 682252512 118272175 360137001 768691465 824137685 779631686 858856948 340595105 406836400 394056255 447252404 531521112 839382706 487636800 961014857 691125546 778778647 79273045 683942447 135064692 364293044 105175328 675956007 619510681 999431726 958423307 967248270 89361304 208046385 863231997 966378415 778227795 953710216 970022274 975101920 60072193 491043554 721432495 856525059 989567358 989956000 719379823 810981344 514929184 880826688 234844193 459593285 37010047 625734178 619925842 947421388 596924654 810757554 205985840 656139905 701875271 999666305 409152510 763458544 746554002 857180033 239498482 696092487 774244338 969822593 285263587 632697348 148136106 425772391 383302274 430700345 423251793 726213518 808429635 951699187 791882788 907540945 138000158 921194043 438822418 475656345 462920727 557945837 985774078 992949162 487896795 828930356 328176785 661373385 991113796 998228003 697693172 747665919 995697488 997824582 556444374 969982056 73984486 560281281 408843900 751318466 940491017 976868532 215315218 251698877 429475942 726845098 421998790 965446731 169400254 407307387 868716806 883876683 644251455 844608546 11367054 36688498 258578687 441641353 912528080 960687854 389261215 781154577 883395760 992352861 449996294 996646726 39610033 289025503 399677657 913407362 204032423 529131520 700925739 795019764 607575532 989661093 845327040 967467571 590581361 952525079 748865430 810142913 730747200 918392139 199108552 657482486 845111280 963579502 993807674 994250333 121801067 662220369 604924008 635201467 13564526 952645832 214714983 962494061 326756142 482071611 768048715 983731351 554082062 672505627 169509469 353996741 478466455 949193449 471852422 836000567 421216099 950374875 76388948 678019218 936400856 963264440 221009753 571289044 686273763 766696523 980896899 997350736 589303048 962181333 16186348 914232620 557401107 727421774 125543811 742274762 668420167 914105538 723335149 920871583 950150744 990072927 713325913 975825148 392050871 590251624 402218226 615686658 231951350 556384636 560175325 731648813 995459330 997411307 151749899 207624691 116748947 515159313 451760564 959971579 959067799 972476556 479394128 847753241 702232587 825521633 932119713 981467570 17215333 521450335 219241903 767646172 240204422 614000170 45824879 939356296 133048277 431740410 81465487 617100695 19130298 776015143 373208842 702135701 56071051 507957689 650610473 861356735 72263048 639579681 35816614 289773420 336741222 398972231 499875327 583489196 617064352 993996238 816517032 994010714 773869704 839204273 910347174 966102521 769094663 855654872 935873117 998410284 785202300 968802207 253121224 889154340 403308391 706715716 85856896 953594301 297082408 515591376 61439723 80481987 819705735 916611910 913343910 976837535 9366481 477014051 737740433 860340999 502442643 583216135 246340437 816041869 900803688 962187285 898858061 943717973 101663276 199720514 942959612 981228887 860575381 923216130 733382805 793362828 205421305 956325937 641380813 917721961 431574007 588797270 27647099 312385029 524549464 984270422 386145979 829534116 372110081 619564557 340136219 747055064 421139295 462231458 636580153 863273221 574613448 999763911 86253521 545879470 491748448 492064280 573506921 990468299 60212413 762066767 301412691 623866250 107547347 212179893 889063881 988024842 604839803 664409610 363000966 470532692 195778388 462826199 383386492 601475478 856784560 905692974 72086867 750733166 937126989 987663619 993015503 993941824 85283995 845262936 554379667 726046425 166480092 604244215 902332763 926323902 493791585 704921006 569987922 765754593 356989782 850306246 309803121 900739274 220384973 337574109 9773623 193750501 185663483 701476958 531553967 577749344 239626835 468539302 474464077 934105336 801579641 808747194 739930558 846123966 321632288 958314382 63099559 522369643 248197157 652568285 322864059 849947543 851034945 961116572 326819841 467883698 931983415 997714398 747243380 782317279 337242824 748122775 138501283 175583282 25810060 111784825 717880998 926454904 155350792 552768480 641059345 918567959 655151848 968230001 19327143 472921749 736649674 971479484 78892125 378061237 787812155 900209830 371015660 907034626 413696614 495928842 59493201 272764158 208139520 750360032 76404285 345570059 866582666 952267771 73280971 208674178 190627387 663998374 151029591 401579183 662264586 827376133 932626473 972535927 340857549 435879481 517068082 816104448 501954972 835344314 839789627 903682301 448224756 476060928 261829391 457976686 235094676 299304736 899202411 899665275 824837430 835181001 788530173 891396317 934393453 969570861 501129964 645704441 148962205 672285452 671262254 829369860 122851643 382471629 633321655 982501330 868752701 874684271 319323537 715062661 465386585 530482162 10806632 440452357 19258668 994207824 26457748 607266729 31340401 575630879 153799137 181973860 92762233 727615274 637017594 985326473 990361876 991467294 957559021 961689135 507759867 874498928 716703425 917667743 421817723 678636064 146392401 634267965 267018355 397224843 216102342 896932499 222293400 641337892 375682973 581497825 836558020 969440476 523950613 639567542 338239702 709610837 94753159 342579897 965372330 985974412 465626457 679280195 102669476 695396861 791533274 906109098 377773793 764668464 602352334 683572589 387395330 731170620 290101442 771382532 304176330 843618494 505618194 866860714 740414643 974352335 408662672 664998674 733621422 913783295 648798814 851993393 59594577 240009471 243084334 718938077 698628 132732931 520131980 552223645 790972926 991097281 89038793 977696200 732649140 865709252 805953873 852131817 263113417 996597284 460174576 831182067 406831409 774686069 43739952 793203626 223388142 580068980 284579759 407044316 517658369 587496877 77658263 603144253 700436621 777649301 471791211 619616975 255712354 557443649 226788282 896442947 288502493 372015636 549203302 621654939 460391334 798648642 884161491 922937768 702171328 837065805 203199522 229025099 640094475 882187008 340333050 873830154 547398431 875093876 160715158 471783571 812032762 935273099 999726663 999808582 993334391 996660493 458460921 729613970 701609970 808461775 633011231 947773104 981497910 984824703 843348218 895534382 967117108 970819946 643322040 724609680 312725715 945678464 290517441 428079326 886339178 900410936 365220460 699119885 698512753 995680847 722806390 789214664 405912012 606717746 554702919 921099776 447832153 486573788 766043344 922193886 270142330 642280982 227006081 442391487 487304556 979902162 977274102 999966572 864256642 988156953 429039634 503798831 592710305 647943690 427854857 727269046 104507613 984781988 534128064 838306271 49032676 351948446 783544069 794344356 132670335 616173618 700668332 761268011 775232024 955828891 807269679 921472636 985993389 998902014 431964826 601411663 107186434 868539828 786910265 930179730 691888494 945724912 63437848 394339455 634585488 991756239 397150378 588981600 579127071 884165909 624430995 786970218 349266687 939312716 281405624 440266390 98709681 773519151 981957322 996265058 737376374 862058524 42371907 244802906 317396331 822850674 884607493 994938733 993588280 999998551 589289141 915014724 600904528 957202542 481701067 983897223 259179018 536876398 20986372 621470636 411310881 457018037 72223090 651016452 741188920 850799817 191198197 732969248 291622550 319307106 524059585 684840405 101495830 515827695 824731917 940345252 686442488 700243645 926984858 992520277 401233495 531785676 155963077 603120937 24516345 30182463 816377249 979919336 764914535 988629546 946601786 959744769 116848502 828039467 578543794 600569813 204643012 258737413 578483999 831455087 656734376 947178910 694932511 777680996 139236340 948697611 899840838 948644554 995030311 995979965 774280342 866033404 137860335 985055280 633050351 807403566 778059703 906558511 173242598 861369765 583093709 939898879 891989734 998502000 59347182 309013300 765532164 837162825 232678749 710728198 29801732 358922682 993380227 996777970 810921508 894493382 379286375 465602510 939493911 996278387 67992519 193795769 316511736 619664812 82450564 506099257 44819418 436071625 328233739 887855204 589968412 599119755 581499697 760157606 382243246 954755029 596772176 999214615 202510131 220396592 424270027 814508190 511375598 810714054 292909830 870428417 819734509 953730005 116695614 236915183 864005310 969322897 354063455 374102677 681595779 762465196 778870346 843430730 674973412 955320452 466251364 541674466 352130567 399486270 726336405 785196143 99447645 915542600 915138976 967963391 341726788 726825554 520441125 591386523 705265687 803026495 556616260 701080497 9713351 776486545 741372120 804118666 620047101 799522372 615320639 979962220 272813288 312513224 911091223 936759112 635473955 923227356 850385687 963420901 365574980 776899922 730104991 837941503 421290135 424174704 738304111 808145242 361346159 679980294 563754270 619626938 18900748 793934450 985587936 990315202 340165597 349591947 326297484 922404262 814065569 990524015 407948197 534709082 617870639 742079133 201409033 222904536 803965341 870232842 888583504 988577496 443498551 756249068 887921009 975733766 483500365 849731561 602415799 633113643 849025228 963960306 917046873 938729201 744065892 937342676 61467915 700029297 705907469 946239230 278418973 812598625 554976211 893640307 641250810 785385217 810600531 814953396 298620663 394767503 17477925 552701772 485314059 851888633 744743328 922670654 632828759 715049920 893024246 946688196 685583309 813747539 795984314 973427802 213151687 456455874 450008475 613502833 112203190 312461811 287108814 991954420 293499289 351862323 712355612 745026496 762295676 997201335 307955582 401167128 351218894 680518586 425909315 890598523 758265108 847676317 417033159 970993220 994365107 995870691 209088331 422238343 977927684 992299062 521428591 964127137 185603754 211426660 226476979 347570283 499600908 527072774 749790415 865953000 124644040 301476803 963797592 971116598 635507223 843093659 705350969 885194300 982424060 989438356 234939239 563665961 752093201 769460510 924059870 925317762 416649628 618707032 566366360 639239176 110891085 169199408 601957563 909698386 987846864 992176293 152803387 573844953 687026946 928931663 736499118 911656454 93091502 844321776 895173688 921678413 292549695 794210772 188585309 686183466 649201435 773399854 38081352 148310953 791754388 836651863 447147250 527327344 138149520 265273120 62572064 569726765 127598126 719734900 841768189 992336898 961025898 980659372 17291496 313250912 926493438 937941794 510897454 950801900 616251015 956400121 810593083 878164122 277589874 510103433 609082912 641065291 150339790 444048094 746630639 820694260 317778359 902011455 960096056 987084391 638753043 845027869 504166061 942854734 301465588 774058601 813281683 990249150 803563907 837627824 556984364 560313836 663645191 851849910 361469698 533186547 160570018 941698041 760314640 927694491 362615209 871908579 85009795 869480248 34620008 900471968 791568157 957144934 646801410 774040688 474867951 514072424 473374660 736794911 48546645 929087013 860834112 990965251 700497601 980508885 978377618 989333761 25412486 209554512 887529736 938790179 323985722 703291122 383651571 734907465 97081546 221489954 945138350 975143330 461939371 604677526 79147062 616220677 329590066 616405581 756294092 952734965 233764158 603462581 23206431 366187642 379051466 605621256 814772893 883858320 625860209 846098831 164559037 425677904 311512666 667258437 704108845 840106693 302789785 992118503 929348398 994706961 842876651 892562213 966551766 992834572 672218845 932266694 463371371 600146673 412250834 831607977 453368922 649535838 451585960 500038333 376816005 435872900 988590962 998192994 429329044 919274814 182673914 673771486 882337726 984328240 930385957 988941937 179582998 898179753 603466542 659254824 186859842 523281996 649405610 754550811 35481441 991009547 801567857 874252764 157879744 468553416 708285492 817980462 744500814 788347521 834395152 855090306 329015629 452514947 223225446 298252009 662228545 945621267 57431437 465990194 171125528 840468869 101573123 728759695 676597604 982710899 636960953 996983177 383320946 452834865 804238483 807843117 402221790 577457988 891832807 957263654 339189922 574902652 88503026 209795436 271668620 469448170 414764839 474934334 395177298 643524353 230703443 932881640 928400049 992072266 986164696 990144739 840610716 882015112 479811172 941328285 703884713 883254974 716372237 785001256 650199179 963595157 957935388 965042658 491390385 687779879 430633497 985052364 842832524 959260610 910841420 977055237 528997946 962974693 520495811 743868776 2873798 265246554 587467979 606439115 219988138 675408855 207925732 434261603 632350347 945906682 184235808 928118505 511323914 584423408 920554619 963008776 573642261 961185157 16191973 515586983 899529272 921061189 543352691 586149978 919477454 977769720 183772621 845032410 110084894 972414026 77589776 762656386 635963078 663497786 617940985 667535380 846126221 876303249 818454232 944633978 294797693 553353655 180460086 437929527 486665495 570768984 285897197 315360209 221545069 860825465 221534256 244097796 587951422 825388397 282674257 672475636 589140574 892645955 372492023 710630833 691987071 983279078 16177375 408202139 654144331 674018195 823088611 825745876 241212522 382314426 215786668 872446366 594504459 957439949 968430025 999339662 490495875 820462652 453657782 660717644 236167102 677108821 252950489 892008287 210978454 946791618 841344879 846030618 861923210 926730957 436700343 744086186 83898600 238921384 71093184 822650927 931312129 959461242 435369145 847278368 861882417 887825050 791792898 990998996 713917777 915805814 861338147 960504374 154201669 273687856 852235401 909491021 746354645 870885326 567907660 734594859 286081410 440521497 407243397 423770536 786854196 898499338 238669570 949538634 378009375 751194011 388887476 439272725 701538341 835504375 979854427 988011478 721662229 883949363 417731761 719833510 679232696 943132578 688855518 741045792 817474689 855291415 885917070 925498318 735708409 922137154 557700719 786762619 483202220 717843375 92011010 425961738 186284621 270175342 53719708 443676723 669502446 888690410 998570115 999040259 198087247 506991802 329386695 619897028 557513380 909542510 47130687 161646857 269785232 934583386 183344927 896470740 340024691 760049856 598415379 777053915 580325178 865504657 794395568 809161700 685862727 864279729 63589996 377928160 522628304 572963129 89665777 187160458 158090989 686841321 859622449 870955339 294304845 342436226 745829716 800040175 574364603 579830484 813841558 977782873 407524393 823619501 834032549 899014548 332726669 799246765 777854319 896165493 370610035 807747240 556730826 656297130 178750778 491499675 634544080 656679403 395406202 811277604 226115721 933376338 568462553 978935562 226162381 484154124 386520728 475676265 348620935 538750336 503176085 930872820 295417897 667009107 266003361 511538079 378517063 804062649 685484665 727150272 710579953 772031006 259472312 774393001 893091874 941523124 286452172 884700576 231099992 573617635 244274514 612139142 637962888 694640565 761383883 814492266 796624340 914683601 312605031 693583467 982479651 999983061 67177119 608708633 484503531 773903409 747979500 829457453 130675534 269471241 737600168 818729426 990005614 999723812 940810602 989844627 861736844 907890037 159578731 379430001 63884902 366149539 436977802 542923703 198251429 770728283 653225735 977375608 21128054 431987940 83925376 177675865 466908290 603567835 381153161 784779225 542087939 843139426 357054685 490462729 493351529 498758047 2856943 10572260 941624167 990904935 416311206 471542635 660212011 669045089 683574728 725344514 300329293 717135049 215540813 555019924 982791143 983191745 614412807 695247626 401533795 526395264 842386790 860300035 1481979 108528405 762192514 823426978 197255707 346325304 887363379 889622984 13774739 945670659 630374162 819713726 85057150 864246201 178184101 588072561 348037560 485262661 339201318 663144258 937339253 961286554 375557093 447365821 844590227 875338438 352390911 748850225 372551404 686879489 904003891 965145685 32822869 740152543 577720425 578637450 26133925 533540607 278536448 537793068 720559262 920806940 384122578 614073162 253148037 723951526 86199415 334760461 337319339 578322300 704021654 882400065 621353290 844102030 332560583 844757017 176232204 669285206 240820197 730209615 537977077 725150529 425077908 702636250 987390629 999463734 438464078 622970956 30029250 551536248 285881407 618600532 894787163 896610817 259851330 960643636 888333192 974635205 152230864 475259339 445274968 801486811 462017689 607627890 202350571 692043701 177453936 387517871 258310365 684549108 656047483 793985491 411509860 496743554 910223806 912056223 416980748 612765060 229155944 255483352 68424158 685414065 757612633 913529761 472422837 991897362 955169743 974416505 624267355 736119677 882793208 994118395 323612864 738968847 780852154 993126417 776492834 986776526 811737900 849035907 310905789 857044817 899795402 913903064 194035649 922799059 416966861 476841707 163351342 863905845 880164447 994155527 589532020 791649687 929543357 978514301 875980241 906433925 850802056 939066247 649514602 851538692 420262030 454197225 454830058 916977079 257046927 832881692 388864557 927563920 866247811 870707211 281654189 829633858 668029355 695751998 207260215 733817817 686289477 996820175 569818762 652552044 919262419 962435930 899769069 990910640 974815612 985005433 229267234 843602538 361142644 887387927 288892216 377680664 909102138 969676235 917063048 994474696 58808112 941041011 33021113 895680321 697420174 841864283 194633340 735229965 314016078 429696507 633825149 712318978 416895608 593422068 18288441 976197752 876673793 917495225 527540508 920367298 219484007 997568152 858685462 906765114 967815160 987621273 754566874 862143915 385359 59382317 859808292 916417035 993896676 995641748 553081174 639684289 423112414 424171463 916209075 971869336 860174275 943635314 531433093 548057611 698917329 904329725 339072772 666870987 744704111 812193564 4056410 986642845 842414322 934058116 381195557 593399070 413911077 530473077 256619335 824121643 741063508 969143818 238023303 511250978 48335245 826941758 467293951 892102626 32568852 279962668 829005518 873556943 857211588 976517211 684488018 758210918 40696347 222379371 187831529 896617654 893791908 916342434 511474850 537754137 527220062 624680796 934949646 964699670 635204021 718450479 15248660 423426911 773556148 918437041 222382927 895915150 976638564 981624130 770893131 964518832 656103081 715547960 893062017 900161400 496215176 739403126 775623196 942022496 47859441 212452116 612282445 790160017 14568030 126810347 112704530 119290814 460518826 911015314 550842616 620261041 516707578 710404235 294351747 382605618 755214186 895900163 225924070 959652211 115320806 707842950 930578734 972411266 854124646 971010650 503021795 973754284 898766481 918367688 240036731 338371158 452806405 630619583 695819961 776467337 869486072 872645576 727892921 944659636 965274006 973622918 105586988 267433419 304546243 760664434 708678911 751662859 234811441 362766699 213283773 537770203 614971593 618171037 839195583 925321185 910256869 950847153 704613245 859052393 969455394 997155901 413334183 549645352 248292616 395551040 205119873 807346127 139101063 164911911 14646695 192100066 687495972 955485814 379758090 620554742 370398278 525871288 424608697 454210021 57551507 172571739 829631809 902457885 62818138 255930777 985038796 995584225 409094580 724502322 373951567 403370164 309551992 597145477 552974447 789179852 575093210 923234158 684575534 942917615 818124533 828444857 298920242 596053584 226442657 845020726 801014164 876602372 26241653 308010691 595516283 798719362 479172083 754721631 104617037 678919709 328515170 888688996 28556521 589914274 743260086 992527951 156583568 522462429 698202154 796331492 484337573 652456813 13159713 658837393 195157162 747419152 16260380 818152083 133304409 275802970 587112498 806095896 294698391 937781283 595599696 785093508 725917083 841258497 135274697 428801579 887217541 941606566 286977873 632042600 739817030 762272998 636906821 903770605 674211275 675499311 168334790 876986368 524034207 539651463 371681546 592754795 718802300 992581046 633410472 783730520 208289410 513435743 642099241 820508217 649952164 810530210 619813211 663944048 586783634 878440062 11661863 189399315 219653725 730165513 298186783 730587565 232675629 773397040 751085666 893245803 906825135 978481707 88118690 714289615 117135807 757022084 599179065 770517059 159966981 246991806 712166254 863100602 299050680 569757895 800930359 803865294 998904694 999147572 588218149 970657519 648519258 683088551 675179734 791304678 391469340 947642792 723775091 854136191 678425739 972805426 981694479 986913548 119925628 811344671 706127389 777597296 852600947 859582059 873910140 948261050 474109391 572127998 806634526 825439410 773644819 922039673 284133926 549375873 864494416 945962656 507524075 737580598 220957447 931936715 460791847 461535017 382865558 972187194 67583223 454604155 936013978 946604643 384450001 851536011 276450230 942703829 571362822 895618427 732205121 820725762 943662880 966749826 863103503 935233821 545853463 800320273 243187997 247268035 328771268 967531159 314168062 918738775 367500926 437649643 241746610 999018070 905340381 929217939 332361220 469002621 524473682 807882835 322014840 994360172 331469944 493641555 479079978 723022265 892939627 994802949 821030704 888537362 126403250 878725320 804899348 846477440 967903372 999955852 69747720 948177433 965088606 984405850 584297733 874089703 588740759 959016376 465895451 643473719 212028491 782102503 433052560 492540505 385965737 404863360 67054949 225342116 994616164 994783732 999252864 999676351 477222188 799690923 689570031 718931638 469905646 530656126 65492742 576251445 356782590 852069261 931688225 959394843 312350230 808680667 372552524 817786556 552957118 741742112 965211021 974432384 269312476 989787440 1192715 609773007 216958554 816045881 433359051 819830516 604340976 767938341 389097011 439005184 259680118 285063559 765475428 917436097 939602710 960797621 778173012 851121463 624911271 847400310 874030050 893645955 998667335 999293967 161786453 464003369 963247481 972088775 454786796 881382312 363789349 867901189 163612289 611259102 446647476 731889085 434472297 943549161 127695029 952300046 855952515 871893430 24833279 703227764 532408116 578987092 483899463 989905759 605447842 881040508 870652429 963905942 279080287 420478790 851681317 952870301 59063507 129974828 932188361 986467432 861623908 898392661 727403324 823449020 797825580 976361470 719973582 896146536 510733878 856171121 127200440 569466021 810924086 970219671 912302314 998398344 356956744 841760568 226792900 734969405 994667761 995809753 423272565 457939957 783508583 804469128 599156342 901327467 474209622 546374451 300349334 965552876 522892218 659942271 566073500 600095928 216651327 514468642 711528264 983013994 317313848 685908692 507434091 697940122 585394614 667385665 664046226 930833090 168812382 236015285 888164604 974079509 228225939 386410479 677547845 815216187 240472502 374708217 166354975 749564150 203755390 281148431 800713333 933050983 819146335 939351618 939444709 974702534 765231042 766332756 923777522 989825893 288189147 677929307 393103196 809454908 192536061 717446129 374167018 956007486 96966637 771788120 44362145 93221033 100814075 731762673 68152065 537719136 761077404 967269890 707272243 872953527 619654281 828199619 463426795 600107252 108255995 115099460 476707863 508675325 529644272 708656625 114384184 731603496 640331650 828912630 759603082 929203153 131212086 323796540 772115090 910221503 435643970 850332651 590719521 739641074 401620892 726266257 357163147 855060354 67702026 67829483 222950914 953903446 409443356 549340840 929789111 978630241 327572972 778031672 683140796 685787557 548057632 871415053 934636778 977518033 407902539 516596389 449144957 995312712 88483617 589005979 112116369 468820353 177763748 384021732 410782018 859218548 534877599 828666540 725438886 804124907 57549803 229457523 803990197 878554316 796777529 868482707 893433144 905786716 858401748 886458898 378453866 876190198 274220772 606956249 914984016 997330141 258054676 463029989 954796056 965343528 75713864 225034926 792837154 943823423 28635430 111708518 18830681 449852399 879931844 995065479 305594374 324266928 722424748 992473591 809811625 992877975 252767272 457433313 738374301 870715124 575084517 916341011 27580343 935034707 215311597 332364629 134695570 709562682 277402344 933192198 190962114 346054231 652431808 873192240 865502562 904914793 944232682 962505254 409371285 518519558 205947514 906953201 27775121 251464953 892481427 958715580 675746436 945482548 101602648 601089548 402476738 823683886 456439017 877814164 642963558 815054101 17678711 268911616 599519966 775921611 44489377 817545780 177841312 288659704 210578150 980808122 160951657 688576385 464917137 716603188 388994271 578936318 641372190 942138639 483061694 671223018 485813536 510716168 942635885 958099682 716728166 961771443 537529470 625575638 288726050 931230264 885314408 939118694 179558759 948727296 195446268 476420500 795112244 977400332 150026318 913674702 380731390 705668858 93232506 724590624 940279917 984651841 828772731 926318718 257530491 555193240 445639193 518385493 770046605 933287599 49330382 439040542 636579281 764967251 405317717 628072467 674455533 910786914 234243251 448343567 394062732 489379497 618918781 751998370 144314235 855565546 784641528 850504029 782267799 963034518 280502641 730805432 183322829 577533175 292336302 855169108 982957416 991701579 3265820 659539311 890084879 941202614 735972245 775919278 715130459 867327661 76254268 150950216 202025329 360157233 256356288 269952776 664685072 892059848 969965793 981202621 86472247 203411701 271583456 805692847 148487853 635742278 587420361 755218705 704646226 746278255 339051079 686201961 140021917 696091064 254088689 444253155 567516269 618723962 551373573 653722836 378814412 711752567 882186555 884800771 192048846 836510852 150863220 287109182 772894457 827328256 402708310 894342513 636751026 893264656 399334436 480276427 995780041 999803527 59632849 363564370 153080422 233637655 871049666 931991043 948940179 991538792 732175149 778057492 756018486 924242532 694140101 827800757 208994157 573340068 49097813 151778236 212358507 796901482 294206019 496079468 231240011 730035369 477737023 847177557 673268212 764661638 243507237 493801976 578999778 873657470 91075128 239088866 475195214 920174611 375465575 956124125 154268831 352124625 668054420 866060389 348050156 532188663 665389687 775406353 3592290 183583926 645752176 765814504 269306639 464819416 645393266 965155615 269220664 279730172 95515103 194150788 301415887 315786618 827466584 988658713 252608281 443137329 765732932 852233492 916148045 967968026 881616256 892074235 23820353 226682269 310702422 395735773 893108524 925320473 532647901 789259422 891972107 996639561 398370354 680454124 490903426 796331119 534444196 554317188 352369893 641498291 191184288 408050131 638056180 659687842 565729711 933175019 520637569 631419869 438616438 984451772 902342831 935775928 540524815 996116765 364422297 502952019 555301787 960853206 869331968 948193095 284615742 589523579 716289234 979197236 419461490 782881554 603082164 895269901 173213415 995632977 64315769 289798808 55014517 465027514 810782825 848240621 498318322 529607749 704754737 812472951 798931497 856248477 523975711 706923625 995570983 996779247 254473686 891283890 710874900 846606412 996347222 999012122 451780503 566416015 599239474 820997108 737650355 947095639 922536084 970536519 144690119 947274664 477602595 790813206 297580047 875393896 339058929 548823562 364481279 384571750 891931108 898773661 871169690 892177054 154966779 529635685 30130277 476457928 823943969 913372657 79820295 942424311 552635218 955587734 660529691 981936568 867367025 924092060 444085927 952039984 225230774 447151828 398679407 863300959 445740596 605845608 661426243 973768346 699222939 816136529 376543025 678814774 996126385 997943881 649896867 799111285 510544587 944286079 313900079 585995882 50274574 393204245 295668571 505160163 375671056 892547531 209244619 727858942 814614449 993962188 742375035 859377784 689939967 808192376 249897695 548067916 679230374 803504287 769658091 953005991 288998242 751510761 385218783 885574015 496623514 696596553 116408605 124302143 894753608 944822399 671812926 725018500 909510471 927133545 637204777 714572115 649262861 749668111 499817820 835034010 621098635 794323887 143102052 521262637 329253565 465549184 881377364 963221659 670401180 840985698 128790138 399492230 101022117 998362692 857826891 958808272 93605330 744705636 105789473 562945530 216237135 687373330 810744341 811901696 361446090 612791518 886139941 959434462 304266439 999279443 367283120 631523649 891772174 937646764 580986043 897424497 151085511 682708607 769096063 819516824 919388203 978089267 479841445 747292203 357618639 778859811 972298850 993035131 278951151 515135760 662789277 895382710 959277517 975155334 733448708 941296316 557743418 876953144 108561567 986096018 228075882 459781284 202649561 528657599 547190586 891324293 599664823 844571952 570643269 894607634 580394588 750277901 766836372 790383854 625404715 943612104 846286656 989860195 219123414 642004730 322037411 386989069 580570441 854907411 18270307 437516471 720840437 968319687 602263498 669945778 955611912 984827295 311985172 889410580 323397645 529110954 697235392 896377073 720296033 793586062 226379578 587269734 57041877 307262913 720652103 937246165 233373299 818483905 319056687 538960354 928481470 940587490 271911930 809813714 138300958 512434694 709410193 754994614 2289663 378051075 434408744 811931733 823482178 876952924 46013152 887929398 956414887 983399166 96341455 253445221 866585773 991285671 49691814 152745395 641299823 752583377 283118882 655291053 323101007 890180766 550519045 647621374 781425552 782830609 912006771 925382158 719229773 993990944 592229293 857164321 160278200 617462942 771807777 834596502 312159281 456348622 432778818 894080792 520763026 599166453 56464056 189507313 655537935 741171836 581804931 902763213 97861787 255827993 721214156 771584226 564737578 816171612 732438850 752231306 919686644 997410473 617838657 643876749 303650276 711810611 247128235 967577442 399513163 852853614 400355771 971673506 444041315 514924029 548705838 705839997 741478980 957122286 930218488 992352196 415776512 499636396 608661104 872115902 437504625 789121197 570254203 990035322 820193035 980628287 859074458 944318845 927451983 982937262 956314750 990891555 863017212 905564753 869844041 888746382 382987834 731327643 185983559 797715230 788327486 863624876 879603934 885367614 17975387 983634279 306940856 534539443 191464391 520764154 877823535 907610294 193625138 570177874 851753124 884292829 432336510 815015469 68326770 381280011 736385543 769403936 200275041 838221028 291338834 737070844 127647188 133798070 233994101 677867152 425819266 708384126 456983218 705845621 143159738 394348305 74564250 606184771 99799810 534654736 844040586 952729320 29442254 794604602 6320935 920639421 163590319 237015346 140358807 586536306 484973435 970558436 543296344 675338038 293458435 491235987 830312077 963077772 943360369 995913551 715581014 915074642 318914333 392549826 260772922 578950921 398671020 735103444 875420494 890911674 231597923 927431618 314745868 666483156 212221060 284482928 56397123 69299649 721288330 916656849 210232819 309495991 307251796 626923069 111455358 230051446 9420772 470798419 704649391 766975743 272462397 892164771 485864009 640347234 467729175 696023039 260770475 864565540 101116921 116591264 890793716 953864242 161337702 405911768 20037461 593089054 245084851 848847136 729223242 931023906 568321725 585024660 925136436 952230796 277335239 774395076 140613968 790657570 338112628 419270441 755370061 896594260 300687114 811464989 61279197 778421829 177404086 296072850 18073191 952412609 446721789 614001448 99379230 357395138 439303857 843409128 778042626 907034023 545592908 662808624 883574735 983771813 791858766 919444415 198017057 844224966 171981571 292874462 70428650 620973042 791309185 899423517 495317342 823298638 475134162 762545916 408998593 954651197 643476794 910499321 700039614 739572308 77625852 943714557 384469823 731243888 977903517 997894269 991884423 998265807 199695030 419009537 926537944 930465221 633864822 690623509 889784298 925591964 172990736 235576948 951891275 963746763 463633852 750523233 742081678 907465274 479793310 888703383 348449881 989153445 510382809 806854062 63513481 337665699 72978494 106596598 462651518 543768979 139708812 822059242 825831116 993899020 977086619 997613748 9244287 411225280 249595540 396630193 215036748 799284149 635297885 975192125 380925182 857736655 247376393 417129529 859657571 915917069 766057898 807265821 904536346 954202973 31640067 386692765 924606615 961342999 774483133 864442559 864855264 942326774 2822741 347500875 810327734 862552831 862545928 944490308 387389509 466327498 260063999 669732579 530239258 746309999 709297893 887382470 611193024 830834155 259766177 905161778 56996942 308791202 469489730 894935733 404430658 736331643 136847167 896085340 264895103 423267905 803422934 983972895 227720669 228476900 117372325 198823493 785607738 879794328 5483469 293938683 665280461 845216817 371123771 613519303 156187428 823539136 254247407 976462740 394118462 786463378 65491758 205346257 787055043 810257935 924607159 980071643 155457346 981075308 660816394 899411890 499932332 766091584 47519453 76501882 387034503 610844120 676835774 957931538 244487081 811757944 325535627 889665571 625515281 715372591 753757480 778395596 773235714 969380727 138643978 464484342 176769271 688668650 300595550 603286192 797016073 900079407 778760334 960415725 719352044 903154956 516927285 737543181 336607969 577102352 986321055 998030237 34850088 716254718 91442767 784186324 599846219 738439271 487392878 699683300 641255726 997730179 633408905 736491202 477532867 497947957 797083159 937021342 894959875 999135179 254872001 517434255 225154882 797440090 621816667 851099191 467065003 494470434 904457009 978381608 518072565 793900597 103642321 556008663 688597769 834328131 437649951 815068470 920675474 952134106 338198303 502139269 330017656 929920835 771305750 920801433 125333916 502834421 972042183 986475960 150276154 327906149 517534542 702625422 470366414 640261852 495979714 823820655 174087219 839830491 790826624 882529321 289169543 909753900 686862402 881161571 597620655 740678006 666298077 914198308 425203568 555222645 179438338 659706337 416211252 925368126 988250355 996400574 525952699 924387522 219975124 930378113 560575648 968934402 643468778 903237744 386632543 861985563 386148177 959439488 627353063 859996545 639673453 800954762 402219496 502805163 886806224 966058358 185215167 515893047 729529166 927870334 348096612 760164978 389434241 619596279 655056076 784392282 423561874 989209637 644650344 799499089 322166742 749488359 482664069 861027351 826817172 934147769 784804267 893061685 572391803 938631440 907152855 999718858 846533428 931294832 454987909 520432408 216403805 219498228 674471175 747477029 38688004 591979286 126669722 515074284 502275840 800420875 431189131 647892309 390013481 415529681 67639598 300386559 619343363 754341353 385691796 416339133 501058044 729186173 275971447 895799399 194519268 806317309 116854977 524750808 645341355 809617355 94471090 232259629 190655191 311223009 659609765 836004952 162220190 989598669 172841030 205424120 807024187 996481484 194662658 965774926 718111403 747662868 432490652 883283706 182124544 597999894 501631717 579274844 32192454 144162354 815276638 997251783 709587146 917993543 668140962 679393772 665974899 869892819 550177821 604096367 396607549 995284458 892666892 975660963 677381457 919719210 192973703 264299732 391118047 561821695 892085616 953274306 60617857 442017210 747889483 962830763 54582343 917924171 19593850 127282735 971215803 995641279 679033785 743403844 997270148 999135282 828520786 840469855 120392103 121028732 788913395 884003729 198937195 978822480 616536033 951074833 961222811 968133367 343801275 639779528 617374150 863960074 160298527 505772846 559681827 868059485 354025974 533049256 555928954 804771073 782877256 863350721 671332204 926084071 8839522 510147987 848982003 947145277 544384106 617575141 472644331 804903034 473070698 693624917 163091641 939393973 428831319 509835316 668140676 742253893 874726088 887058077 447165859 709177465 2767995 854280449 472257575 734114396 999159493 999734907 110303671 271577973 562365636 640551628 878236612 880697556 377865026 442764082 794827764 927312839 281333161 646086924 298833826 824067606 786477793 944390532 136434050 231915669 619215068 795567032 373484604 602075981 915665317 947109655 35000838 425827494 534730072 668968002 633402633 945613413 186074397 558431090 531853312 905270704 964715594 997929852 325217722 551398520 465880085 760424170 495779980 672860981 455762045 503341537 505493928 851451724 51803109 831583042 587158814 735828139 842037659 934492281 912752764 970408269 494756431 713648468 273956428 600673896 435052149 749935701 561815486 949671583 746586812 872303354 360226854 525538829 460003863 913191746 636558185 999597488 193694346 480355258 887658231 978207322 651307958 730604820 999661541 999778689 344132768 803166081 194218489 709448874 559295136 813924068 670401625 845450872 431545272 712409544 283177907 498479162 493942859 912479502 114366483 319011518 707907720 728727910 75163799 340127728 638370436 874810177 280657428 393629507 302027638 911813302 548325611 953015192 430444389 767170328 950006419 974360547 538445757 714316746 126528051 731372673 792120232 890141635 433839054 536894886 931996654 984925637 873500954 895860293 25970963 995230443 544807499 628237848 333952417 334841768 692330009 743674550 456909779 570166901 104497886 987478619 688492683 915322658 150613390 670120858 991716944 999652688 359818309 721620965 272911163 797321468 428900983 829649681 234257887 696836230 771536623 862103719 959630533 986185290 417199183 547446877 289957593 556176278 996644326 997153349 501932557 590650504 918923992 988633885 679183556 978639411 858432009 969294913 691437994 824166584 912126055 940742393 895842223 929172649 796507467 917552218 12019577 671697689 846807104 872563673 739514787 970679703 473798852 515157757 110903177 299688409 635275902 923176489 454303578 918381819 593012477 968070310 336658944 487822717 777122508 929343466 150348050 746157698 838097348 881402534 628042927 693379145 25704599 190146396 857855879 981232119 759361526 968549418 810697734 968839697 134834571 345935363 653200789 969174108 407485198 823850917 647489488 950237441 193399125 667288877 725734989 735969620 208278716 541920040 582057877 782324989 845203230 936409007 971404205 980443281 80929875 177051929 578505893 604846717 37448362 55269283 520590327 833194029 159493202 884034468 78329571 609981768 37226072 981562244 375709960 735469969 270526786 425993609 765347209 924667018 34209182 940174963 30026079 101854074 272476485 771594615 195079837 357388796 313325559 620270496 197484110 854896545 289961238 491326121 860470463 897028926 400449638 798302890 723792000 973874511 913173267 921377217 858328255 983971324 687945361 814455253 934217021 960024527 672662286 730110082 806878775 851222478 437077154 775603293 215116325 968181084 966235885 971190837 486791061 926723423 824185556 938217011 552806676 763820328 776816936 930405689 529043650 995130255 712851673 983393165 547285977 873766159 657338886 693845960 653962608 830675722 1703553 973349007 961814820 972464134 361707827 993157854 157644371 508194829 76719615 188361889 44932556 732763965 321517550 612317516 340620506 456676784 123432478 319754206 391242754 439154244 598202565 642429678 174856797 991898706 951303922 996105951 487785676 546794423 223310540 569330087 188764546 232613519 971105503 978346867 64914302 625219262 975371567 983971074 766913006 868525607 831980734 834000891 983713535 992714493 305129823 583362194 392309612 683935571 838795809 979612659 168737650 464206617 897559633 981285484 764466498 962237174 463544378 943841483 635489056 955551316 305235162 809380108 578238268 674203920 689596726 942610260 454108012 716105790 215330854 956460687 912173363 965081358 32310391 673621624 85954402 317335414 851577958 947864783 941816156 983781983 651432882 942389315 203784569 404791243 187246675 910005465 663980530 673995289 859217712 913011541 898396439 976336390 490479896 752848888 906545057 956321252 255462924 836215862 586112382 750518930 622268192 709620090 39774054 872567693 944759262 996782551 522503258 764457621 387483393 786395775 297073552 641514454 514656382 977817619 926591604 987591904 267987485 951911934 513638542 844305146 46335261 440069102 397948730 557550046 196181869 353607137 371601396 421392016 754184836 933300800 447953679 950225643 526165689 724334842 914738872 979217940 283641004 640556485 344484707 600072368 31996218 583329629 976308683 988028854 914246654 918774598 849256817 875741065 145437069 518352707 464138484 910729420 780456295 848717533 1231634 671926996 53178349 898286211 353299084 588636835 173560478 700106239 141662321 722786574 683448090 732183292 262034761 599375856 637581466 983698279 624626737 642524215 697492860 947020439 188189556 440457035 636732184 783571747 816416527 972508142 165377817 259383532 935497485 951125921 227402502 261485969 44202775 468405202 723127819 956224021 280974506 344423057 302935967 458223104 445378307 462104716 357044750 544701628 191181064 779097926 608328187 755421465 846365864 918617982 151055245 275321323 402843488 723462744 931330420 969094141 157703501 898754694 368371877 915060055 589456425 623042792 626818105 816707190 397399484 893995926 524608257 596661458 788655866 792389801 615294462 811043565 163553050 502679493 914067977 981003742 805594255 835426657 686203705 783430214 46569027 327419968 672379718 708818935 580764322 915540280 211213224 927435334 67740541 834022106 310317222 442035031 632974364 727525451 207594967 779872618 412577186 711608118 118111022 681150572 855791433 981814806 16582903 568549515 867294889 956787406 947804835 994481623 273013844 593725350 789945873 875547845 916905502 964785634 752673354 870244974 956255778 960156664 13849794 486636853 829551271 985097523 560458580 871737227 263471412 736287329 424130670 599170576 946056312 964481903 400033321 767376334 435103605 981053944 485414896 773951684 893763185 972040623 712591436 998840665 269853599 948297641 13684431 725842582 107988484 184785121 997321668 998857407 653380428 868468086 419471444 753248319 554851484 966579014 324215304 433338205 267470438 653628268 434097108 493647508 785486098 878416488 846320679 962995712 263581719 384476422 7921396 20614908 742485295 790720064 500092039 982236709 924864483 971704877 235062650 992331281 959399288 997620026 229220758 589954946 111611321 889553828 696601268 948499686 963682126 990760897 360110120 792738521 531422540 616566074 558508035 734715346 992237934 998791795 921245155 963537729 482805975 750772648 447863887 850494802 487750694 600668493 519229388 602514628 883287605 955901042 114720755 597583185 373412819 771629693 176451048 262517540 317584417 967699236 709696494 885149056 841027601 875252560 2481858 607417145 38320866 855407983 646701385 852067462 714428987 875394189 495460408 627994367 912690009 966370315 262377140 896562411 452636500 470735211 588009095 792655717 949640178 964638308 791338261 986291529 27306909 864487184 850313534 967985762 924614334 948853654 733848511 786035046 409657401 447122470 517404334 676139371 259863935 602397684 553373152 927857916 849598719 897072177 527736352 721831430 196195475 923759269 232782928 738717942 444879162 850770816 287495929 311056285 599912964 880100138 400719419 734167656 851179891 950335514 908164870 942980160 995695517 999813436 139059182 534310806 253809415 696662641 488035756 591993882 445705545 780992746 367485765 521009863 457091609 590763381 612648412 776798748 737969052 927335704 918988460 974427022 938043776 999438992 884366472 888741147 171096620 823614754 42403336 723176259 84712927 654687954 992253399 992355071 744464111 881482417 945884395 967293140 911020992 916579626 46467165 62093817 672756183 969530788 790825254 990507382 714894301 936418270 213828367 805268325 38259024 374133997 838535523 876899296 214545286 925467005 207481166 293723855 883513427 981022862 331274681 651010733 453757524 932185614 358844424 958635883 79230954 989472089 995476371 995964155 852434701 880550989 331399789 364730942 784113571 785997224 798384999 832392490 671507085 965198300 863640491 897760789 670250356 909165281 833881430 837777621 437000810 529282887 353646660 422344106 176392041 393193284 198147519 740378144 283003630 902333072 590941388 870516070 992473153 998861195 26239125 179551854 377186264 840694942 193466452 662180648 449551793 701908554 914509339 967911828 591552657 690630893 157601046 342102244 350829834 929592045 497003682 975922507 450619297 889596076 824416487 913453440 850313651 961045587 236737891 639672449 74837867 198140128 782022350 898208971 465450892 512196600 402265761 802489994 970981458 997304595 59592969 718954817 956244617 998660107 697742758 906073365 512681087 548337709 108298053 397551219 930650167 947388456 715233097 863391895 163274494 931630001 311667355 925151419 754805356 856359521 356135410 549728434 914124614 929078948 436720055 466349235 279556010 542725021 216421293 637350490 381888430 466120699 378326421 971720106 924694060 965803217 905493792 959409300 183995118 537146154 379189551 997157097 617043388 635931034 435512956 550900486 851384419 882845818 440111606 497978402 833324114 907036576 375942089 450198628 13210623 956954428 577761559 799395352 562043031 727145246 844110141 917068988 280472591 958412657 258505895 704007647 819296293 941829957 400703250 592794933 264066524 699103536 246243908 743594914 401477790 803632413 244861972 771718765 277138571 786825897 149297254 244897438 135248702 522387609 471868490 615057618 437084765 724990179 298342411 595005821 365261647 452326320 719531449 843870498 69868209 239541761 346504732 945310875 689766851 884951257 811676424 969477440 734053781 901923457 777531591 922431049 339110094 624998985 458761515 897672586 164868746 665903628 474771239 993755067 426606891 799745017 804350368 979616836 785977979 842565430 98154865 581502130 550955391 578179096 721156346 863070106 811197115 906615136 377873531 687677962 406978781 474358608 260392754 408586073 855558598 869149390 685003499 767549921 782661933 919512115 361996001 387460796 664226591 703210924 148324090 254384114 130841230 205985359 572066857 803940519 927679289 981233475 924321090 926811137 98661962 951351690 147406144 359474415 752617300 812817204 943668405 967654349 821283931 892656548 675149667 879836939 660432223 721363685 173549432 381331725 735532802 931151016 348842757 908118687 823645725 894063778 491088159 722672109 103447143 396168177 63936350 164086463 891560974 949158421 374161523 808485798 276703621 361967567 329503508 609833820 736954080 884365957 104553247 752862220 510821755 664219338 855266266 930023966 523948163 781832416 135345961 858758578 70921130 870433449 70790286 206455989 624897246 973734048 56707854 777744580 465580454 928534972 474778189 965081768 107655202 876714602 21678593 652218687 431769825 753982713 263760503 304843385 681805624 684524325 698257213 968974857 281477851 785793611 710016782 911553720 874924153 903682348 226415465 331334096 901292183 916012278 2492577 267999421 572463725 945014059 846740884 884607452 366698294 586670478 259583017 331376516 616411179 619040896 536698701 934358979 122959378 854202256 944187640 946897326 728252736 854616020 566948167 974725842 67833571 588897319 950250524 964105199 669120996 806167246 838696237 923052230 174893000 237299795 2744855 897282525 648257092 831379374 703143745 955837480 476964771 478220619 291745645 478811526 426905052 503496226 264864168 918296080 268461593 479282741 788121080 790057438 843555121 876103028 2077925 728404697 227139947 756470609 576433763 601479471 277462253 327851520 66058711 744820569 576898842 815029645 571123227 657850886 632902024 709465413 200757185 935723209 860095685 986774586 483032139 564638372 283632282 671344298 482058637 659958313 362888693 955208110 499091882 516393057 345745847 984874678 164528744 839614858 594032979 949965361 793021118 913525288 564911451 937626197 558702441 841591550 69594206 983018472 644577548 723738937 486458892 800711058 263441746 873111914 277627231 601608957 737353235 791483116 249965621 626880272 468106339 551324936 521721583 682279429 818469430 841830982 246896328 360854253 575909688 960506831 268758260 475890360 619976609 984907382 636819368 792149780 318185686 753073371 804814137 862217568 159229553 327035517 529435350 705998335 712367085 882714807 338344132 796374943 65542433 284637851 527351817 941815274 970782870 987032509 762845988 901815782 289399988 456531497 768355021 996357933 180725274 513328007 970122042 994438043 175275544 364891043 162333108 686393499 131487165 491082334 188982682 274259720 583339600 799560356 262326568 899134862 71714508 173942054 462349987 608293067 426186984 671552869 525554968 897999854 600361140 772956606 720442960 977821851 617802976 960893718 479472626 820905306 659196806 896311021 82241379 900332668 255762717 520726796 765318302 782269266 167106438 414458298 786010204 948983706 306221051 478606987 911359489 937947616 95799911 646172298 347468200 974191184 547806796 773252371 323432453 640373709 45707987 139346777 199450925 862511740 743846925 858655536 392825188 869362426 161767928 970265230 396572539 578744561 851699238 980817905 878125757 956189459 356691203 861141325 651558620 898473291 102067909 429197001 254214661 584213651 160750716 345797509 812014911 902812175 581640748 968708845 253244594 837551906 95521204 789631765 413158373 708373465 64159898 586490034 270769651 729010125 533924886 775509142 641158442 862436529 457019552 781519418 807464584 954517919 553965765 879777227 813949673 969640800 231918610 352270245 724859166 761336907 176858765 727120503 110622270 502939159 242051596 674824034 458562302 872465353 566774910 655986489 87157059 502798138 718813186 800719413 863058092 910958679 608380555 977029527 410276066 871035488 536141994 602537004 398591796 679584777 158271252 305945061 811304763 908211913 401397145 518893847 848757712 943904909 841074950 882924037 287924736 303573495 473685549 766290641 863225075 984574235 31014038 117162362 966387259 970725607 906725321 921588439 753173193 825715915 251003854 504452937 394357547 520293959 197568390 526221537 94558244 671114196 749597251 881043370 936171927 965685055 806089899 862948586 246094117 409534644 501110787 773711337 715363505 978156287 412128601 525297043 98657169 397929355 851894659 935884266 359419022 495480699 648202775 763796444 535277388 556068187 824887781 967534293 610732063 853486947 385046562 446526596 893340652 909073975 384656630 793231242 785667095 974327586 726926026 900629900 612045209 612081550 906442380 948447517 816063314 866194152 202243783 572068386 455283590 785537185 903244401 903413319 721869782 822725266 27656570 209445650 262573003 320537173 246233770 674789355 586823626 749736396 650104698 782348762 640341277 910768162 372578726 928302626 115003678 743634863 390948253 930041959 55285167 774076621 556221217 667038191 489843711 863726292 595442555 909643973 648616153 692965950 9536577 476699231 491744205 814624775 645051403 967763118 579872052 898125553 456361527 748998876 340033576 494286148 617531550 933127850 211099397 687833131 431578312 603511692 279237876 372549560 292133969 658249352 898772379 952763575 155784611 560416300 958226258 958433990 337250499 638390183 124448941 730200711 449818748 946731488 834408016 933249472 972171501 984069046 128986694 999361271 209353333 546780510 232655742 326236471 497684335 978066482 9185363 492292649 832153310 948809366 505062188 529301041 147270118 669680357 287957417 432673423 443921053 834028547 642616741 770615690 472477400 651128206 158749743 468822585 528325738 595116189 284271885 605777935 164873723 328824223 570714595 898133153 451526759 686819252 540388066 863105602 656735902 965642128 853749603 927144252 75816128 827781502 657258566 726095141 275320543 664562151 486116496 646656153 178928735 530918196 968705394 987436649 442407945 698961194 184564953 789581402 371695192 577038154 917493658 936686775 764282022 831203703 514513400 780918904 787716667 833001706 983747863 987082716 313162134 790905474 509031216 568794153 895944276 961987784 331700708 704689536 193713937 538446568 662703618 798644958 780088130 844854386 159404900 444944905 318943102 502922877 969594775 988582116 127446390 552727692 428020995 492061969 176409600 607318994 270025842 980783092 673820730 965749221 867427575 898841254 283688756 532709595 798513047 858104568 208910793 831706991 724614962 984331887 545011466 940354020 200002004 688526314 650327945 877801634 182679000 941271035 484408535 563341893 336462293 707489128 677279596 862605159 308668086 908632958 630212990 691513902 264448422 304307947 909097136 921178158 717428871 821561495 950190530 970896607 331463703 387312945 577697098 962907150 831295618 895311651 643393079 888063379 119354898 989864211 292821594 510034834 107973785 959058064 729897584 921373136 97341440 174303191 212515110 617183881 563866382 582185798 266613869 596490134 19256045 72399766 326613480 597635439 352045308 889928513 309775272 485561229 839654239 861719905 734211260 984667429 424916606 544679514 569398507 777135217 695234171 823542876 965833521 975801765 21237789 845648385 770038973 770950654 989025993 992487224 851994933 913061036 659768142 996415201 999356631 999728593 920021038 930275546 285617872 967038756 955148695 998554402 566120941 661969778 754124593 827120427 391782449 516672849 816387472 937750169 196601777 521397225 231650786 464814577 274187666 436374062 132088014 632100831 648698573 689994688 11835861 980871972 437222730 464654926 248123837 655758708 893039534 955394247 535438634 922053459 61295284 608707901 117034477 822471541 619517759 628180177 569155480 638050703 291275730 638491415 634200030 703423979 151293631 488709895 627204832 660339112 452799398 910202048 24425350 691386961 608495632 713267680 803589230 878429191 393888655 459945425 993337749 997804584 511489949 668377764 270640620 357166285 696040676 816586780 447218955 571346392 615636723 792160838 893903513 951503301 640862328 830333598 636200912 887249063 221635708 969440447 464737907 560217730 903567563 969109643 140184682 935000415 560227962 650560784 366799994 867978038 222197085 471755056 624282851 719073968 318411935 374762411 204884942 356079333 462966865 597582048 35895599 625717994 803767385 877627262 929822095 942056934 860631107 960212173 800600254 863440490 917002444 956185643 34448941 208204105 986757833 991522156 887895568 941028871 115292591 888530864 576301039 713732875 288669430 640770612 250087615 982382451 616679937 892455151 684302630 726475955 657222876 932176435 400829889 817303412 3182237 785025543 494924929 668329901 463788682 751526007 430728721 626646416 502744806 703686590 938440822 971450992 928666833 970449908 145897877 960250341 714003469 949746328 199061444 556549401 662595507 758019380 377634430 488771561 579121864 651981841 762381838 961671738 577945512 727564974 859075724 987724156 348465960 686992114 460757686 530884434 912717680 976661046 672267530 895348742 907032836 907294313 750847777 948909558 570033968 765391573 911886083 987049788 979033434 988859997 186332353 967354821 698814251 913902594 383120310 386806912 430603226 478308007 65888577 922185732 137946838 901129127 220184095 901349095 925125667 975147388 114716507 214989460 844571064 926347957 572819356 717650863 511686198 997690585 310065673 892480195 25348792 77856107 664089054 758312443 599176987 886938105 569313010 819678075 74296030 765644989 774048726 973674368 529675444 727327972 580358052 912283856 431685077 766833957 887726392 941402073 102674618 597690533 337780483 503789308 721334398 896533735 363410617 603726527 111042410 353934352 279539754 975689382 667234841 930009720 328733960 899916520 666036809 811273501 592045742 724695968 208784679 318746213 945444363 978276250 643222040 831185790 458769986 927508880 214927793 627256080 783929138 974357947 948184976 992462911 785677607 876253440 539481566 735649964 10463254 261932486 680948099 732543089 520780816 881416339 882622577 972988482 340105966 712218347 584685913 704273555 687120882 871913343 289615090 892423882 235953360 364212195 302530810 535165248 616140316 635571643 770644985 848708352 349998934 983287447 211541096 764869512 403539073 518970219 273488253 624632683 767817432 770856152 395557004 966080360 515592059 617862169 335039342 935544614 561272884 624703841 439726097 836899363 720857016 751841073 433231129 919499901 581460643 898634282 2657787 343950268 467740046 478139955 434115348 601668734 299075589 556720647 436949293 898160244 553861209 611133509 567173811 618995470 129626844 743160176 430188381 783232663 716163190 796454471 28618371 973571284 362611677 646418298 646893560 838258809 600289549 702036455 431586733 948104573 586002277 836965389 956968759 972610525 777741736 978272197 162730803 861060956 367640787 984920367 806122836 872715595 755640210 900914390 674962179 810312589 299502504 704657171 768677120 839035332 392546452 464626119 389909188 668661329 969516910 988693270 181311932 656831084 27221586 939765358 788379699 806998497 154301000 916250489 347215296 595979880 664155337 749572417 670831503 997422882 582559419 702674981 505718559 729511552 797838154 831088936 906350494 945509156 123002622 336394708 972563513 994131527 978761145 986527222 592776232 667176345 878792302 930653774 737260179 987866163 424412641 493396643 538166303 646321750 708808732 850315035 231889723 576298080 19369921 804379605 465065949 952009309 432692546 577124465 128287314 261776225 739587702 919738016 382049576 779738393 845082786 846918711 123544153 450500686 44070399 255995318 788620987 977010463 448221290 940405138 846787185 910819540 423230278 877205508 625157992 639098821 903825678 999864197 911078291 981677293 900991421 991300371 460809991 770488389 906161701 935829267 831846822 884950434 674378493 927732946 361385848 595916168 878288121 991020160 546182828 877836484 364386007 926316202 349983410 849407716 557386130 935411573 284508160 510501990 394331754 678276645 864983452 937629100 588061534 695850462 852526283 929825286 440848007 886991726 42819503 827264853 692233581 813643310 532718955 954527346 252140316 505927504 142162980 225434446 102167548 629423694 242049064 524519138 814285818 989395370 337009744 701091887 122692161 334519226 715239172 792985122 569842337 683680682 923618331 947457629 905948419 994353860 650400458 978219444 597080095 782809436 57116491 155259830 554756718 589638137 378998587 648859431 169108454 426540976 702893620 922537574 263228360 399294042 236117538 648514747 926434510 999240167 805506459 947663601 510257407 625114819 19242749 168215307 631523348 894764360 164513016 260311286 568473178 786217535 994821763 997806745 679471094 810984049 478790153 761772147 351737641 378477035 722594103 911979699 287295772 579838312 192718591 451977030 809789601 902423935 662639124 782183423 378249069 915337387 319994513 524395441 938733651 959089689 630710708 759255100 409477315 415967567 424114366 667806838 830874424 933275300 50436953 91184491 270928374 524413873 693521018 973489179 352859501 444474134 212788773 688328150 187051610 541034038 492243636 858801538 998051777 999082560 486097004 756495131 545925172 792012472 92006840 779265487 21210030 996457668 724245129 989883519 805114321 939692169 188506999 312782686 923118543 947570977 550546385 959126033 896741509 944340521 492565777 664720862 101693376 958634487 565177916 908432007 533489948 621649814 699389245 971058470 227784313 228585291 839271632 974747280 887568315 974483100 206296401 538991436 692417857 870369721 234526807 586484976 648479811 948686359 742151404 797512633 148031853 504579430 885142259 919947479 363663064 518006650 108970545 761135493 245179994 945964614 804001724 828203089 528216468 712837083 889138191 928251217 272145838 523736014 686037866 792173176 736991520 812271264 369752571 699977660 211730009 412898714 278417069 771791283 112995471 738025758 968823429 984118889 52877321 193672212 530216196 797992959 503007879 807595107 789290498 954047120 13006691 390978612 388530107 406564249 214342375 976208751 624887029 652637158 955382507 964656719 742646169 891796741 390650570 439751851 454013323 900719819 943074317 991766939 178682777 182979480 273484237 469561201 154859722 345607674 155929350 157204797 561617788 927968830 305171804 644512721 458174098 476277759 166847901 899419193 104731880 192488679 796194393 804434496 529167587 571718669 652477701 715390449 334131918 703985292 959051692 989627469 32661594 663974989 468068079 916213142 352885594 439260688 924791912 941265489 424336620 982692009 201865741 997691002 948452806 985768231 759695724 893618487 745765438 837953330 403873907 769514196 296060751 541942164 173771324 898584386 192108043 951325279 475337991 817266755 993482793 996277649 189268030 584659592 594654781 757176500 933068985 985280679 233949520 322623736 848223852 978554897 794537720 844795766 386045960 669132628 856483033 879518836 812375355 963500315 245100847 700271088 241268709 704610014 579674308 750127588 133509755 517784802 871669186 884677485 543920255 767315912 730049001 966468133 31918545 881757975 146828336 174933820 478934489 518512856 364323449 857441900 690912451 955862231 464328128 597158682 811244853 872049165 999937633 999957043 200576481 554285195 895563206 902499795 55357467 644002382 393934532 785952967 418760362 591291424 52084699 115339454 403512290 607249649 393676043 762419978 405524397 878077559 232979337 829648319 368002218 886302895 397852162 999989617 675929396 704401033 184585102 669124879 749445118 949340877 237292631 361664890 732943293 910070464 438794883 723587137 518807263 546523565 759300734 902018618 778437657 896046476 832516023 923745563 773314715 986316740 299286265 373272810 298602658 511603615 998319572 998847976 245034280 539741570 655930534 960190198 613680352 894744645 231892948 604416026 845527686 960321923 519342622 686828493 55864757 493455163 584564667 763169635 71093247 587063746 66347336 170039576 802052505 952008482 973327965 975334789 370504028 660764776 645894471 705537984 430376496 837006772 783049673 895615866 121400637 655740888 1574308 717070363 572712163 676857209 823210308 860097857 29387493 795547509 815945939 837870441 776470627 971941651 181746120 940177101 935845231 970610505 113293858 340197063 323343133 381808390 790250763 864066745 346967365 854315107 740742325 787707711 714839973 757530729 87705837 990151867 125272396 380991329 346776670 485848797 589091656 800954436 518537478 933183256 618654906 873306369 747703519 970648773 348206220 605463606 502277716 933869812 50504677 111958214 151665851 640202505 364983459 567280650 392599797 395326341 822730055 958945613 121319056 582279224 412863839 685033922 742466532 918615103 47569148 122082955 431660269 882025330 398096224 560453705 476117928 479737757 153525953 437631300 779526397 952765998 261771914 610464567 381924452 497855611 500270012 870104636 357073696 983998880 857057858 997742606 134599295 593333242 708824542 857517191 826656375 842174019 850453158 919705010 345551276 784746937 666145342 774491877 801725665 810701546 276315197 388458547 678903243 866558605 850094469 910893257 174602278 978094893 852166996 940371891 199342228 378405220 578204162 984375231 781276814 916503992 807935729 967053675 332823839 733050496 897245505 937592484 922557975 938791819 691883861 883238212 394641632 887742747 489849131 865944597 169209293 784961779 32574645 964512112 563579190 854103161 445050786 884631744 428690391 463880100 120609340 215426942 964762119 966027015 846792440 963142696 602954484 610241196 143384956 437580460 72888684 818837041 210435436 525244900 755878976 758545224 546670865 927853337 907621936 963007419 87534024 237627540 180806645 844501714 831346284 899174107 289797847 800933347 703679710 711784430 971408680 983221087 637075679 683199218 973270548 984135903 332992687 418863532 30226947 896664102 570009220 655942096 436220726 735744654 748171595 992716798 533198137 815843902 786739944 931330718 747574527 905327325 926571491 993864520 207046260 809902969 571466548 947734929 3127721 460346770 840381338 975980229 867965896 882103772 478241765 685391185 144073642 412924892 231893298 314077121 401863885 542626684 265540442 771012471 37532262 772223146 376479526 734649534 905866820 966968769 184969869 230035816 261475772 433705226 179574921 910213081 979394787 980366993 879387359 998997105 657996308 868395728 225909991 481722636 750849779 762736270 230039950 234857614 901547083 959796473 983051174 988116609 680434719 815315116 838573651 889127637 37787762 551302540 898589175 918632898 760263796 816946106 462580894 919033247 900914805 952909776 318483271 431363590 319330715 512611717 296696323 661779342 460779762 917521399 900272229 979846863 832709009 842883157 259262425 966092542 756865319 982725480 950672397 973192602 325727040 967952606 301409928 438865417 642451382 808673508 770349626 843245641 395405018 933108962 838479479 941678676 820759682 944583983 153780244 405522152 444409777 876561344 823507006 832418570 732055769 796890049 347772171 839713371 986678717 994111877 31608333 136416834 961269795 987349970 143048416 696128918 72264316 516659667 359421544 768098720 968372433 990167759 911892147 989294843 962027285 969928637 529447268 938491953 4875680 140043788 16535871 926803674 810172512 864194621 901238163 907626824 987698228 990844675 841756453 975157306 930276241 956907236 489931306 997810511 403243798 594807968 153727903 808885416 195341639 627699591 311117916 470903812 572455236 659858774 825355839 885438836 216206714 780870697 424675135 582690153 462607263 541732810 228106314 544404156 892623315 908753599 808615242 996220996 83340594 367976055 14850488 699816968 939635554 993541516 110418620 962430309 623834027 765146751 632422391 990780689 676365463 803594294 917620618 998242593 186204224 558226785 871859226 984550449 278162408 374404608 331247017 803844332 597773852 774924844 966670288 997002800 918035546 947464909 811893953 945930251 878178577 983300925 864223449 885176188 353543553 713075070 217254165 314325410 181971488 244354036 302208021 415167344 492253426 603101231 33270060 607217823 803155404 810191579 78096419 425007517 757148789 804740431 665849819 806923111 116275748 837630430 740213286 899707275 418303222 960019303 152671037 844188697 193826238 964930314 109842404 112467856 44310219 237781774 337800697 381506383 363503958 955598654 133258775 739610936 354913274 871415138 631182066 934982678 165365183 623475377 573891670 706755233 517468389 764981011 354335030 546974265 53282239 866977472 80562671 468557848 987412640 988332989 721239355 915323661 116630604 989010264 904396662 961066731 547641555 614350078 767675850 811380588 182422249 586004239 114637673 374557484 642885955 799595115 270285223 842101160 74798226 375362710 716897108 868153554 886858725 888298912 578626871 686245255 641032715 851345515 277236985 399773197 94963122 170040974 570114129 877204174 446665388 561153043 975175850 999651590 911718095 982230251 239657885 684577048 287008525 495621431 271866049 549010269 557108562 602074545 377975418 750234385 539387389 732185094 153585836 268404703 290384583 920029477 410212364 643870751 258798949 309549217 16753757 363259772 46029465 173059949 37172104 469741691 743993611 831357734 100166597 753193554 233837344 292986303 872177035 895132343 33941482 263762894 153524250 315765539 179318280 516264123 337206462 994233832 300619377 839070524 939514170 951766854 341718807 699691597 214181933 224596355 163886443 962807018 284022734 734230992 752236431 897279716 350759167 713006515 842857833 968576565 239853148 852636118 653295636 936507898 611216385 626582241 350634773 968800871 526699196 634198526 503252428 861228343 121027401 869679907 493911734 666157676 501829009 810428550 628576325 683822592 560196430 705186037 312440588 459852737 624723761 788193336 191293288 661994539 56450908 120352635 147820251 924007877 871066507 991399343 992497760 994537738 438785548 951599935 668609967 756509074 644163526 787301149 86351394 684697790 662848521 951816599 627708179 783552382 963561110 991468646 783728364 934486693 73050198 332058822 325942005 984003294 932808238 977893589 869936377 881073848 320673513 392817218 546106079 885157526 952855525 987369232 17092763 727565936 554805100 948145551 178511133 673611385 367025582 442504530 744832341 814043901 89695403 217240545 223737799 385915077 200199075 657233095 889792881 921519035 5932062 916514363 426490606 459765407 269722937 913215971 389402803 444589710 606971954 929977671 924350718 990676711 47719822 366448734 121441095 572788593 69448966 133658951 404534375 623870367 408714763 818164111 958131222 998586104 981774993 991565528 312255786 849180967 917714296 940679145 321255826 427289120 663570778 834043313 785074771 876176281 246729785 280305749 766956035 972547147 613104799 735769910 556947711 904031725 919409500 956483284 595022759 631046759 621737361 945104798 100045602 240478104 851864221 930989356 919110412 954405416 143622563 271126636 682384428 993304006 697144964 810845868 499131486 534214948 507180690 573347687 558571482 657447359 918022073 923251871 651529751 718655058 76134521 716441612 810520682 863822855 862264186 876227141 595530790 602989457 172273362 972158115 28221451 138076903 423179628 772851183 636658820 655071585 940274532 984477021 972850056 988724393 692418320 883042107 722570722 742611786 591825910 652407814 316028993 929714983 411023387 582952213 157686339 828882562 182277286 888347005 154513506 185767234 756841476 759850778 450890459 904252898 440586271 909529910 864386971 958249964 585112622 998176160 457145029 550043807 64613709 830583963 76054155 519486121 902882775 949078971 657510643 679354463 829620459 830178820 696592072 986324431 422562059 930328757 134071898 330298609 230487817 330248548 655393960 767623074 388370026 696487630 40080187 872937939 343198147 956265801 155435522 472087118 737302775 913069708 278522990 936217389 176620454 826918605 117225220 563818761 155334526 812711259 739975776 960744711 801522822 863138882 984498958 995980597 467625634 725673004 893398905 917379899 374163546 464304669 96491928 870573066 648697272 894769699 478340194 654264989 137789758 653491444 532357254 925513837 315998832 799466883 467810215 527187624 301268812 795000168 583935454 989705986 274327469 342360692 598839749 687687957 596691563 788220233 896492194 956096669 269912508 881465028 656900279 970855994 30034460 349168434 106065694 106212211 984949520 995776221 73729305 910614018 725632695 743541956 222200326 813042064 265510853 435448164 148909229 862625995 90817699 884999977 374815156 460032647 35090310 531829535 448648897 468557414 165828843 842916690 123775617 997317709 713931095 901312260 856295078 983670402 843472865 887892838 943209506 984603717 58770511 877664615 803940387 978031980 689287431 869916010 185304188 645717314 674874000 839868988 826195813 971171960 596641958 792981428 227275499 830294935 622281418 842311780 209601036 331571095 519686995 833997594 930510734 998012110 300878941 545276994 903792118 965208425 700265724 726872764 601282731 746590049 104379798 175087604 959128690 993198569 42497088 802156578 628042743 647516141 6302484 206638121 61894788 390819094 725666755 900613178 622063184 973044036 833229170 920972888 971113334 988856235 703285051 937638968 988493359 991631059 954348205 956996524 964805012 985272881 700850197 709939135 745172572 888720921 994173683 994702555 405228438 512799616 924592018 950606781 6336852 35971190 988157264 994638595 806810123 830398494 822255471 853200303 129002543 529448255 544101735 915200685 932479272 946887779 450336101 828725477 238356830 424249648 282748097 870763430 225295292 670345096 860976408 979499379 942266852 973576480 440322154 499878536 310050351 576036118 406867216 913220486 756703066 931903732 142619802 492403783 725255541 885834423 224822270 426717454 849674103 989295626 147863981 477925871 282528097 906982086 52475693 885873436 401185827 743756471 798334218 831264306 308511300 442599767 903586014 931394761 153166338 373994993 599588158 617008122 304713306 882711713 317028548 612365279 301635917 392858913 943640545 980903360 268762199 820670087 550249572 883195345 728138366 825638344 528441185 799317937 262955900 376874140 346031713 418153870 905833287 947399796 247528548 811020134 11229334 117448578 975714288 976136536 785699965 911581316 190728050 436018536 633473811 872863239 924017876 948797745 220682180 429729801 612412142 774498574 358658534 766170588 745672818 767943659 378192632 493247500 169215660 691444687 580432308 880122253 318575995 661191092 294515315 632101682 51248223 681958609 815799441 967030261 521021585 729537917 363091127 906833643 949251024 968880072 760541376 925186882 751018130 988830621 336818039 896546154 338009076 574120081 292142530 910400639 763860222 834691704 197144962 235817097 778271091 947697684 642127009 692849321 209930654 812696061 812153929 829940503 883935855 897620981 681319285 933658091 369926080 832392754 639939853 964523446 556700003 890842962 634034188 855001848 440631930 638682657 807130752 862212755 872318718 952381567 628356980 817727845 550402509 838488858 254606428 310853496 921398251 964172627 35315687 851436998 220150831 423495765 88884469 789358933 932427866 950499733 928500748 977556287 215053235 627536036 221612012 515456367 185146534 614133388 771141708 928721495 977142446 978104996 644040267 883288222 75724478 255127146 187708303 524151319 115523360 831776903 828330734 883047882 796802485 922523624 142178652 744989721 118290883 660118121 412938417 784594885 285695257 748568541 99864147 290402440 784221646 897988132 207948297 577175913 957793323 959608354 647510197 770776091 112401137 195659043 13194837 742174176 382158823 972581312 874095987 973906977 812769943 964762614 806853447 973563978 285148909 915920758 324909767 915526879 304183963 603145425 980733009 984352627 316892764 600348940 238909935 763217161 137103258 343329706 986063913 999623846 619235952 681381479 141257830 617908084 47073474 928771771 686291819 840190340 659957525 750208559 564190390 670814515 110927667 305259148 434460353 877079994 117048275 825118788 333039659 900960161 578137030 809163606 434686398 910119867 993706911 999187378 433370943 914404799 117459075 775324468 267901458 292553553 46393806 273810134 700446054 724470485 812445592 878155261 950844529 992731009 139926660 161493542 910725640 985842250 626450049 738178295 141319924 142642846 270391016 566908909 869146534 883247212 114400810 317524820 199737483 524728033 262594066 270483225 179666239 298837112 28276818 825927073 779735402 913705351 648806028 916172327 739485610 768256129 377701979 914697815 182121247 783643795 253103532 588607651 705618348 795121364 317196289 686378322 382372954 632251052 268454886 416850737 168149476 736079412 12161760 354955401 470075254 845139469 570114081 765108371 875841055 977143677 880609376 946593084 72033911 625792726 913067720 980436950 105035561 159891972 360956804 517870099 295069191 636690927 311905090 786357264 798452775 820210794 572804597 769197218 389157798 510097210 450051604 747273956 818979325 909828806 252771424 777333807 54643817 603203888 885806902 970443941 590812390 983194033 803467326 880473480 235402140 287723014 217327133 760822391 701214615 922520768 478970980 775246871 464198159 663841561 668689997 860265373 458744873 704614478 656064814 916545397 715571509 818863257 164454272 521410794 654842674 760390371 69621671 259403247 42345127 280779091 991052750 993483547 347960902 369752438 815366512 896321738 366322264 814619051 434515553 900212645 729468574 984670526 781552814 950013222 850037525 898909345 324413837 820822661 354013913 418526191 919410097 981654809 331618523 385938333 822635597 951393847 166781900 719491412 722897362 750343274 608496245 631027763 290149577 316935123 674296208 978064170 245727191 801363387 56430272 931622852 329129154 510343635 131474734 329428558 458068139 591555044 141542032 419681344 953486260 982727515 883773002 889533688 742394476 947136843 410787107 718229888 135704959 200251110 111856446 468780785 766024894 793231929 387016066 887728559 494765317 786620369 703260851 937047427 496725334 743533469 215338118 724107034 387697137 508000511 20541411 658088222 190063886 804133056 783303045 999829189 113759017 986130186 669501899 694431913 737094163 899571232 655226973 664111762 4217875 627550020 896971184 982870176 173262461 477236883 911919810 918403918 527668558 677502725 220389634 300786240 634642127 914938778 662489575 720665761 410438731 548563405 263192716 799640494 822811002 937027564 415123908 460203455 815560641 927480456 715338251 876527773 210500673 460574463 118948535 642513938 424327259 885183443 350765903 388512477 155215971 781759877 496592581 719479410 696827949 871504932 694595092 962556581 238402011 457626767 614874758 745633303 538599274 903221047 821869150 947965937 825720855 906654478 679133293 989575335 606627740 982579694 911763243 941228513 312259241 615162373 549218466 882670502 740201058 998519489 655410124 946061207 760842997 900437545 758804871 880673006 484466088 780424506 428706215 677034776 912571908 992704921 97828581 981572191 65310134 564970186 23122670 203579705 175636007 764626880 830489116 847898725 44063413 102638809 590960922 966299589 33653859 562643380 977043363 998854548 696454379 959104201 386427591 831829500 293537305 789792729 422686406 563983208 494181185 794912220 53868399 835297506 79677833 689251264 581242032 705820279 789033308 804424066 999959599 999968275 389390679 750928892 614085819 622758606 977099116 996823819 709524156 758696670 649149076 800963446 254238214 399407431 262903473 499505429 362406432 588696723 303082343 402473659 578100881 663553620 371131991 969973995 16990338 902214376 395477981 752018509 137260351 190890531 660868098 832980662 957762669 978452938 734965271 773814416 935867547 962782315 866422137 941956265 5648472 628638838 370290438 527898952 965514036 981403705 900851884 944206454 167138303 867304031 311175636 657054042 191770736 804311195 44618392 592523089 783239364 939481465 703735288 893795646 529680255 938708205 930221495 936595057 25340957 327902727 66260600 785426520 800232652 832669497 894904558 983176634 53588835 106641570 861355186 882920605 391023918 727102038 528262492 940643627 684111839 797979732 345821256 817319079 341299325 696063588 973848593 980295993 92450832 944410068 602075718 720661861 62016829 354868237 87181156 761156172 916261984 963930371 675059160 860914807 439248233 536427682 838134666 911635070 639055623 719713454 847417599 873026763 528424596 603936654 597563301 755401625 345055337 809475396 487092353 848072154 354520358 919128802 854228651 925078265 640926197 857218385 117436545 346074523 23718401 340749804 968457790 984093976 391759366 546897155 845351124 868832956 540905564 853599011 428366787 924284294 409706275 559661067 608410974 625273544 553351190 985189550 810779943 834210812 370632921 419603816 482682743 788378276 632079510 668171740 259929660 860488890 632011038 954132594 890751564 916834216 914879845 992976133 671850057 834781034 688907717 837230046 835533515 848911686 255839932 979160819 48635314 424658176 294961026 875974159 385904786 653750423 225793280 629877482 411300263 648756769 150252070 911544309 40695261 98808584 556270885 741996316 655136126 749745342 760638221 950481693 942784541 949034432 648620171 858715458 716340986 994710167 109920643 526780044 857522475 938123652 879977943 946457277 213854219 637522706 775054418 821515888 542981110 719804799 323097049 493931619 31260616 37949070 450492365 907702273 62904020 944357307 263602237 937787388 404313595 996143270 600306952 866241665 379740065 950922018 325348305 401460562 611784803 731788063 882941921 965291983 281486780 648705186 793062937 862560548 702485463 796410514 256011257 897468459 214167715 676817391 602528249 947413455 921440381 943435173 443114069 898099825 800340387 855960879 372817749 745145106 228947508 924891933 718200795 846831430 413991402 809639913 510138161 668293743 689797329 871658150 945191140 946569475 192197063 436562014 728322885 937715112 6559942 830234137 798599704 982159560 890964354 957028814 103025525 236213652 441514653 670601127 670227072 859208853 439586100 850373553 694737751 771195900 196701564 321882612 237964741 281031222 597992608 780250473 945172520 955389519 814393781 980778877 202762296 557744977 199960595 492938671 787171239 853599599 150005608 551523397 474169418 481086893 498475822 775380982 286899659 616950252 281801121 868003433 519798287 810429757 607537277 951583445 271200078 439488902 788731048 987956439 351228137 427095661 348692803 779876670 270140205 973879077 735781340 904615758 142007522 871661911 997595392 997652376 627975183 920713486 942249047 973909074 617433422 819995506 221142627 746701275 595358764 646964504 558877429 562570260 21089295 972297001 45765110 400440624 153096195 383973389 581752902 640894356 710978520 714911588 742803448 918203156 147291164 512497152 839665791 999536225 225284383 395372339 77883602 493715870 734501341 989851585 851194438 947565084 693116820 696575508 281311502 788012899 274296922 874293943 388267040 831732148 151627757 979727229 620520084 828408038 623938280 786208968 113781428 303804967 747249549 901217934 324164223 876537329 388484232 644959927 638962361 744061982 368284777 565754992 684691954 767168392 366343767 518982320 540746463 890391880 113475359 373261658 732074964 884465064 863542395 948891006 217965128 528291072 39803988 450589201 830285584 932568183 8278299 12978283 830919203 943227943 724941402 964861931 605824348 701921120 172424173 793899345 912409726 973781757 613787659 882230090 309758995 705995231 25131635 533243192 130352749 928723906 592599457 764500417 758410864 863051405 650477964 723783198 221827470 817537478 691482305 883187642 391313696 393539583 741234875 956370147 557250528 768653664 809428894 820261850 639602296 971516590 897846094 902668357 677712191 751651232 480674451 994428014 529511857 625156005 786937823 900651415 402760152 678119664 175644174 976795888 857804197 954960021 145745185 662530595 623191748 679742268 246377249 711663986 175750192 576176858 502274770 616820580 603402481 830333033 64889417 909821404 581714796 615964367 409989512 654507176 370193096 929997331 17466304 274666817 271865419 295113802 38942809 661547230 36307050 693663295 424210091 676682367 369532385 722511142 928598032 959200958 279391113 337453335 931707349 957935866 352115472 437013200 139288263 754485963 673698455 785714642 370710143 749725316 178715756 768780829 597910077 689160863 263354956 461027394 201044483 834651204 564849238 872674285 205562110 240546398 113559102 155445279 600782528 643882994 263374335 401226505 419073388 633732676 108199193 644420355 156285674 402640094 917249406 965559964 65243087 437211143 55004478 266286763 510226492 720691747 325457647 989206311 551743668 563674517 714905631 968563336 454826044 862213512 688089133 974182343 364946734 665926304 976299350 992627047 605862539 935347773 446139009 455777701 729704874 841685527 16692447 826837087 917000239 951848018 39306620 762074925 243194815 327241886 434341459 517717014 777511749 886651462 345475675 988467131 225297140 865605096 619846510 906008991 668470146 960943072 736171690 797686771 210280596 344145752 542328484 761078688 261111522 879553640 887643938 914843156 124104613 248339193 97141895 228068628 400782917 804203607 855362908 903285009 272272420 530196032 498496400 826751026 115952675 603530399 248189211 749530916 933030032 955537654 852568274 854347289 182902488 361259987 891935837 930932762 719133859 762151780 19328354 202379350 911186298 993345356 561113676 990572905 642596955 690989481 928638935 931687494 457424592 486642806 833584743 906512893 591960127 944538541 817992047 866576871 663898353 742836187 242993349 984946223 629444774 865723636 633439855 839396375 347416052 361446198 402411022 723327924 213739593 943438664 204090280 651718359 483563309 793675726 667163488 992172988 960711593 981511992 404734831 924722069 715920207 948253664 974464115 990321161 774875771 879663978 520138772 937400844 63428864 614235376 627152561 829219696 844766473 893293462 463240471 944661643 465070711 684346719 655505324 962321937 762981482 800316949 136508608 413411864 397138870 810238386 704565806 874134517 971135556 975952505 216951035 942490944 95310032 715072965 997222720 997998952 913727903 981605810 334136892 567036279 507986627 534740280 248183226 787056032 177625506 483333968 744798353 955853020 657181673 860374735 703436449 923267787 588910127 836978108 633074958 993059979 390590796 758816252 331898752 625861160 726495438 837109964 662913690 936540818 393944513 765029395 23719805 179761836 978549679 984725484 509370939 911031550 262530532 832084264 380332171 389660121 520726404 603563449 584979224 968052097 896394234 942564711 218447104 284979044 226773939 442846031 73271505 560739588 227990903 441744748 443571592 756901166 928222949 939957985 48411915 902425522 516223775 779749490 284565400 633523119 350693856 462503248 344271715 670210812 275219150 538529273 23167124 433218163 74443013 282099801 451024703 600129932 754355005 894763722 181629228 821958864 36516355 725552078 189905337 548063064 465641734 844200012 992427530 996582502 611395831 714674805 608972134 942176998 832452151 888333346 777716470 957214626 715664227 976617477 127902160 819653631 318525436 450431746 426633117 798863506 401082184 599808069 27142607 93038208 682875592 888876650 399832590 733386495 809119026 920412405 314689637 814274218 395819058 590906248 20505705 734223578 706081007 918030349 805703639 867852989 237651559 348435806 880818525 984031201 81993701 280213752 460973054 579144234 77434240 930988546 145819640 585716217 249433811 535443653 288719578 561593210 847521921 883053096 990091824 995660184 406113159 487156027 140285691 306834018 285778576 492397097 362923498 630866245 414277213 756909596 707529969 857650037 438818377 983318168 113964720 855631563 120011831 634493999 420183620 725473150 456739203 781190770 554549186 858595925 555632232 721921662 361330864 548465160 193099559 404528870 693267747 763802000 680243623 765093452 208400464 853594900 210785142 551973938 507020999 905298503 634247923 982556852 270904942 968862169 763213332 946276332 703961250 995918405 148431478 261969539 312792019 615673287 245611897 774808112 550584251 627596846 215646720 610080450 809662220 851529210 98379522 644958014 403886115 926585252 735065911 744191290 307852871 505897298 759434194 780528952 715761023 872457410 896430453 938268248 127473517 302900995 967859310 991202878 759186753 892015809 651422638 901528002 253273620 775374755 996083800 996651516 707973977 836979364 193043754 683174406 776079843 898883358 20103116 217174581 639897104 823484041 376988626 731803238 14879305 749222500 923270997 947389956 601092057 692144298 172948995 982345003 720536525 956077737 67943034 928236505 605711827 880436963 719646810 874458496 462069057 964248121 538133452 660653612 689965763 769859201 952526823 961097673 143272875 577465556 421207271 945231746 483626359 859110810 501656859 848185927 214046030 587122064 6185396 120915650 140307859 841070404 719016805 954705332 367445239 559740179 877179859 888441355 137429580 606321198 609681082 810065263 878512099 915504707 171622776 915822877 398202470 562664925 609611702 995348305 773231641 924944744 895276567 991456204 388866515 833079327 164962345 298292525 433403426 718598247 274048003 738521147 299603540 932507356 541452566 921614601 56425010 251446182 830934499 876096469 283784490 735887007 178350297 322802619 141442662 616585718 721120710 930224384 645200119 650173587 981642903 988011807 866789788 922211199 87200001 801992632 28849715 884217206 56932484 421051402 718263970 929259260 161263583 378750399 496475583 602587438 237510760 259783610 764813907 970953985 593979677 921164749 331322876 801660995 84753771 159301230 768801488 804399040 348139617 840991216 48448850 768024650 295961750 869268854 429057249 718906881 826461791 930899863 8364649 386528251 221242891 527394752 68883289 837715213 852023934 877854107 327790962 433520638 435640998 556155453 553207220 757548740 14259093 370116618 160120143 288157868 633397160 649002253 585132540 772932109 613887005 739322133 980337208 995056180 473043178 758477406 434258993 893603873 346762939 582320457 490965444 723282768 692699911 809696689 99343772 751815771 227058611 303602436 559849532 970954191 310373255 644632956 189765095 340234904 279624026 588779080 273442108 978613035 264671342 665055253 3327258 35134976 454523034 908078277 574451097 903168302 875289853 985922210 533707117 632932769 11495628 635321208 238444173 773866956 878864289 980375891 428410773 449850400 452579710 612346412 697388163 715394624 355525055 415444244 800389732 942562564 774563177 864547301 790168802 992847543 975045781 996705413 298288142 339646623 148640988 741767566 839034939 844905898 542182359 707497859 123942531 880040013 701158311 869618786 50329012 97186203 890102945 903420610 873173545 971944447 882328990 912369097 338049193 449172829 936858656 991381076 891520692 948240242 976964498 999700274 420996591 893639049 593910136 793441711 145612405 963634279 673210377 769597926 132128882 800860156 446889441 716720192 154573777 955200727 233567326 812172741 276657101 542393776 619118173 758379226 307435143 675837856 415400030 433572015 507225138 609207484 4230552 699907661 760536257 921019253 310452401 632380768 946178241 999312463 445836538 546973942 752440434 774993370 552782417 935438950 917647119 968932967 234110054 917138336 794028163 836572610 999108414 999402150 239254765 352449844 749212109 965904165 53821925 606948253 12328095 306077041 293064524 935380725 406501550 977790854 44341043 813798289 268854597 407613960 112557445 862638496 647141376 734188091 163209312 752975030 215231445 286406349 26149424 207643179 896397231 998654638 228046028 771945311 504766828 991805124 770682746 964549218 854273060 878977952 800950498 884083781 114248112 329508392 674327826 840943800 379508325 621075502 534708069 768372680 508278796 676215990 476439314 826736388 46111885 214446163 684449219 865068173 220597728 221449789 193029346 641776317 11133824 831661776 83071162 390182516 616155894 951030506 871136185 890751048 570580212 765348699 813645311 989572333 298328536 466996051 140334269 794688768 22855010 291641538 438025003 721411287 82292041 882360074 365992003 593376900 904451282 969138175 624211150 865918281 848551189 911573403 211957531 345450261 963649523 997033080 989023848 997857125 816060396 975726013 732889066 827786276 358754403 593310410 313479903 779526504 814778856 880899882 649999261 760114748 161177011 749419887 166473919 612307534 574779046 922950293 714813116 901865636 300704936 574299515 309540342 320856564 425937249 616319738 580537634 888729904 498122805 923441849 756905423 869765106 894814389 929642428 861630566 985143043 586367917 812135703 960125360 975169932 301243232 573599517 534902312 667836995 494316950 651426457 705080942 965024213 990568432 995380793 274204406 760412312 124785716 997370918 425906120 838189268 256227662 849995012 178117056 760857145 904784624 992495073 297919992 734096086 118352188 747033030 225584961 725746427 902685894 928608989 822602816 989423151 845330987 886678746 940470467 953733647 822411167 937082749 500711525 528843567 108330937 574004752 753056224 807200571 302706432 344121956 3361941 115759957 795667667 968720680 382629080 692674935 673003636 776458046 808565535 839528431 729800389 838083718 415096261 600729985 264164658 839653481 564038178 630304131 661532020 994689019 692805009 919130917 90110441 493672389 205592656 889415097 152853580 433096808 289349525 442492604 261553639 885300196 662042568 995103502 230679990 311479623 745666580 853695406 915712708 933646144 218223556 880459097 134114013 505446471 73351143 569966945 469174968 853370675 736856817 797382692 698425269 833286378 136284787 673345449 319910598 632990152 701954206 838615180 531557292 697064865 332584038 616034858 4383517 835105431 626809358 964412624 654507145 879765925 430811984 624427823 146445070 829152794 368216327 803171285 479288748 914442966 787280862 981921658 711146367 851537878 311195522 733180275 369866817 754846987 997997778 998390146 405194807 417531448 480371737 563792712 257012822 283588179 932226748 987450883 837320342 873807569 221938324 349862390 974459115 975467608 49528552 640395550 586495432 612543726 555900657 886095001 655787378 719537433 871020625 872458681 544245432 950789578 571136709 575482996 570198822 571264620 637613199 934451458 881207729 943070858 387064532 947470356 769913785 788922896 263351080 327483352 363521104 510435144 769526968 790886517 195425002 464505940 768060521 855741023 632504197 639500098 715913766 919498734 669463598 692661996 872456519 881856593 428699349 755529659 802142349 929005566 314459842 549956184 127435931 175087448 196273860 602499350 727073000 740658189 329159702 611991981 281607187 390542807 10573919 782746888 483987989 494339231 516156238 674641337 917281659 994377568 296776283 362473810 61496939 660396939 521244111 720889987 99997995 805397963 264327584 317453428 81938751 852732212 76679208 324320623 547012691 842630069 473155198 697353668 165153441 342476522 913024193 978773441 397066971 861946061 762684184 828505946 467061270 725887434 272471945 626679686 525696091 599557350 738087581 854428258 569647884 784591781 583568651 769958280 872528902 978453580 573476727 605128647 979338002 996481124 187107430 654730959 919600778 986953255 299654563 968907693 330327600 843716410 603462927 770539304 194358486 392851672 500941634 971748143 261515558 380984608 724804732 918933429 258969424 953848077 780240785 863491367 627542112 711070791 688480487 863243232 837011648 878024904 3676095 561621768 185243927 878890543 151966783 532734927 539974256 860901846 699993211 847929260 269742045 403305609 986939835 988495805 798835128 830761137 429797037 495511182 504306911 968213858 817703770 820282416 643329728 874826435 772049984 989545736 737035858 830969506 346745495 922105592 142867194 679914779 709609825 744550282 772723889 983751403 407548099 826800342 748318050 779450278 48797517 853208987 222398878 225036586 124489630 889694525 805394101 939873498 287089150 359307244 468955847 710596961 156316190 188824568 92615980 117342148 286074276 550319369 203228771 313102945 236024813 765265630 590143694 675775720 378488294 766523451 526444869 833369660 175265565 953709124 64936663 288274154 339266526 916374877 812251241 933117613 721616825 792311478 919913710 940633839 805248261 950602695 929402716 971245320 788460567 912194286 791779020 816356946 113154156 767090782 286935565 771532363 807992479 995264665 783268974 799006643 596141518 711485154 854154679 891467323 652163186 739028577 90408867 819587150 450827258 458195580 88283530 896488067 757483712 850579837 713892357 775852605 14569289 52785765 779289477 885680446 353734725 906286756 959181959 996498568 48392747 237726746 616318652 701035456 500678086 527374953 683541724 944603259 937455269 998668152 441087841 554977052 715045955 915120084 589326415 774321697 75245238 297011972 956594274 976767368 517510302 921137132 844854495 966982925 589424385 862054609 585666248 703589569 935088288 977723307 437592927 846678619 958780823 962202498 174701007 873898013 120445103 778436298 650652157 844609069 975102483 988676345 128902980 467240331 720826659 939330353 380017097 639774213 783090387 885644633 337214627 613727446 231468329 781046364 623999598 931278413 984994838 998304704 11929932 563466336 381177190 853366707 199496445 587055555 490857953 568126607 427997673 700966614 154733609 231794322 136059002 911711595 390553137 603869572 32445435 941648251 787821388 896751911 19490278 358803725 81910946 763715586 51738486 436293548 293835869 554914175 580567938 960987289 497681556 626020538 922231860 954774126 432332851 501873769 535884974 788026705 369855984 733918619 64760315 717278185 983657523 991147059 671699393 730667322 311346484 481004358 280747735 598328973 264480512 782797671 535745876 949180461 29558695 932151867 318751101 323082300 496600491 855200092 157894001 723537587 903478431 922728473 841129425 875328567 330354922 541505959 274157490 428322589 111501424 213898284 379734157 962620030 500133713 630284580 197481284 625718917 1020299 626904098 551132833 660083332 572586089 867009767 48407469 288398722 68046362 956120722 459388533 715002864 907832276 982063596 394186928 578467639 173413926 189646768 799236379 956250554 305711271 394551714 857960121 995936501 29911754 966420880 842179823 967961431 39394311 711241675 156303507 270916396 465455709 885491314 169551873 827484765 987068895 996143452 577085013 999319354 435868634 772751008 346881964 883413474 768532385 821443460 937427460 941772051 107726041 643546439 106228353 517626680 152549328 955929385 875625526 899649764 718681754 799719225 117294364 386591010 215857337 544949475 837495722 995052106 969978392 986106423 337232509 476589532 290462070 688824007 683774073 765656576 20611216 611809438 763872887 941557332 893378365 993601385 324776112 429144379 981102197 983412228 124221989 480720734 192163445 346460095 430322202 583514926 333331503 348309812 558734616 820108133 304497915 363003942 936208738 960903372 277933436 353472127 772565449 891482645 953972821 989500392 452976406 566800334 527076138 780876137 556457853 935134213 961322794 981075659 297082141 639297161 718898628 812471210 155017634 857174734 270074848 678768404 473319812 615239185 540873895 599234134 622432921 776976962 587177070 650356906 175133720 234982878 516098767 575596631 43387864 555099451 494736931 525648456 942951870 952818646 216190226 877335446 218440411 621867686 270343258 705360004 554662997 719331424 886445634 973209901 998449282 998910430 855685084 965816554 814582525 913962539 775703080 944087822 392432846 857649234 850899383 911989303 810497502 874675927 741256533 813587452 508140790 743298062 532138053 712237346 813343385 924250715 227931028 831729467 12431400 383498293 692409103 952438211 335147889 926897237 875525061 982577090 279526886 827939133 387636985 695658532 119532875 750444727 902337571 961589699 708867016 726163085 747562116 952013968 267128643 413858778 561226418 970120706 550723065 660569591 930053399 977188751 703727590 970493316 845679111 972271543 155652659 312961259 367638844 579372651 820594860 914417192 541074434 669993155 168822577 403555361 839665562 883387774 512011567 650726564 648364551 782332998 215065123 943390551 521037641 804390211 270303744 408577067 686954157 936245660 223048974 238717993 512051110 603859142 622109002 920042555 342138508 787736433 464948088 877543702 7634791 941077705 153149467 337838058 476708913 673200242 430411913 632612414 591625232 994050880 661863965 848770546 908368329 912470453 40257622 466389717 481791056 855512341 613323656 649981809 769593399 922432388 819164948 860847281 326240914 919694855 959719340 990044022 191777909 590795866 422424242 998708860 274817139 955380912 705094867 992848593 468780536 679065294 400281129 985091437 943647506 976209391 664443348 923048292 213836846 701746794 191584856 832919431 198501071 699988435 488317316 815775534 145514521 723915175 267955420 971899514 343204043 772770963 90301377 822047374 130940936 283048141 875912495 994935147 527897037 699238754 496227598 750668941 304558017 832468116 835643328 859565023 557130193 693872316 630074370 640789708 47341534 976003187 473890443 721199372 224347487 468675401 883137800 913074159 230763231 463934100 207215423 489159696 921464154 975335189 557369658 574270436 245602430 770273323 943841226 952656515 224412855 810520934 436920488 500436131 157302770 920582992 24557697 275339823 5931813 833423200 970181596 982533375 297726259 585247412 484772330 837119015 52432441 545964572 9840795 12668568 787817275 895240028 561921395 594042601 293490870 724326398 653084660 955053774 221766795 405016624 401665633 871081886 543215367 894384646 921511115 948835377 682005476 722143845 823469656 963077351 166686657 257606325 947790772 977010744 170759128 363015242 454862389 986269894 924318836 992717546 798343011 875764210 441360498 469603374 345466275 364823542 217369171 310529885 406992516 691503226 273924650 871630591 61075128 741663476 198614243 690998321 309578726 645010611 745067939 919694073 63047851 86350032 786443790 804815154 875386904 890467578 698138742 730128272 54720291 557766024 109476342 139607141 845184546 931913585 292643033 844894889 797168832 920917181 948444012 963272246 827541784 838569418 78073258 288315215 270775098 418638943 886874842 891899517 953316502 991546556 125388459 725132912 614279774 820975910 805642606 881724777 268349148 500933087 839559741 855078681 168600710 593197385 213811477 626486223 524539620 957021896 350237246 378334118 454568324 782118232 930610438 950581034 778331697 902089751 169187549 385886379 581379279 581666595 891442235 986546429 439126139 676298790 67356678 899661456 402985579 640777127 4458197 521404809 149052531 847309000 693081376 753448782 689844933 958068896 428597336 576474239 753705462 999108123 172203250 323912668 239802893 370452400 815924017 844359841 423721686 457281671 807816750 880818065 802705551 838069132 394491407 636278173 936163990 999348711 999094825 999837777 114645108 149652110 24088130 419225189 433040765 557831775 183935978 383580896 489886035 615577047 966529092 986583386 43214228 472753147 314411367 613674458 412276532 699192942 258465949 920672088 915626325 918259192 328141378 883082057 590762846 927258558 822837860 866064268 666386699 739612566 212241164 921405438 877485230 948923331 433257797 896181323 318533802 741018987 62672478 530579689 426722916 517378851 407321417 652808211 226108809 372811189 596771347 905121796 351130194 644252780 810672284 985271399 37013023 253611848 666904265 893566212 281775886 569478503 79169532 819300230 587693814 940175611 641695627 728878016 68194129 299943931 4492603 283891450 738535462 963962705 24988821 555770281 43488128 463453041 744579835 780032963 795429120 822931656 126654018 777597985 645875635 769622302 826794770 850347260 916497609 991964171 646006480 821555159 406043146 924496704 766710226 943225964 413472188 519541226 701118830 863415218 176641821 895656925 902073481 914463979 827485764 911763602 950444741 970414916 175419629 191245097 636388910 747675375 684126201 973194961 365432712 910770178 860343747 960412553 417190955 952488706 106322132 126585504 743326180 777896695 602840627 618916388 370030488 646832752 768754941 954969490 12652983 559907862 324099599 869969595 652330538 710410933 815445141 911034962 351814644 454763137 868747715 923856534 730939538 805568901 148736907 652751108 158731945 786868412 708889226 775164675 375483632 443077082 840661488 888806571 187249909 971050813 941131867 984248307 158494389 184155544 383572710 611208184 910657509 960651918 601913389 602906716 790915128 799212086 301573035 446463713 138916787 726785945 195763836 514760216 227046131 902357775 673393895 801144035 674104198 996599871 123907433 836422867 135438947 632494435 562228190 613543758 69317938 426241429 923054900 989439331 16828704 109018938 745281709 836198801 298633475 492846715 517096433 785570618 983609685 990338545 969023917 975637841 670624540 770910187 994985703 998031976 675515029 874348884 197250716 246171095 330744604 697777914 768641875 841795963 242822972 895136202 75937997 156837956 117037598 584149578 946243633 957674847 262979187 919901536 568134639 664188436 185535517 655648711 222375932 495807517 355053915 408030261 441449502 971714522 268995743 442285848 720801106 862674179 852109118 871312016 100414442 162631957 268580013 491819619 114437730 304811468 816408048 833089308 695379624 883167079 273914611 666931656 260086127 771071945 925907453 990227060 142323475 759226678 483088217 675321078 83111853 827295890 105245441 361117454 486920490 584614933 25618056 191837879 326315534 929084539 879159639 893715771 727381664 772124292 838132451 907315571 896588979 897293187 546730030 873969296 268677495 819952083 663720216 766236655 648016793 902131527 291115030 846837713 183849792 943667684 796345736 911625991 569581952 999848444 792989038 904846438 132378405 484204477 641885185 899492457 44936405 374491528 741464210 900702995 605530308 915022898 396291660 752059283 617083981 649828756 212661877 563474443 603703749 853003367 385111189 487568870 997783158 999820315 509239025 906633538 311228309 700306111 660568602 786410466 403131811 707669082 423220248 427584600 202427083 731779272 50102410 176053871 775572251 787221346 32689885 585911205 123578063 747869305 479558087 878707263 973182764 994014361 758947389 818047804 216348832 713414305 63463532 768338707 917915508 983068597 445750516 561442151 211412182 327368153 374869263 606924919 839440209 928062196 633552273 755782608 116199468 718495020 914986962 944985187 148833841 806554054 145482757 613026786 281330970 642886990 839111352 905249363 237412657 595698787 64350847 968420628 649160399 808744764 443246087 564728588 313117487 729382883 998105321 999665900 662789308 743743830 710892831 875234174 92627673 235987051 314126544 649825863 934541495 978792051 930505424 951779431 527182179 660899010 594937843 986364760 288651541 398370310 774379504 797808055 391921814 838118809 266847261 877213257 74880825 144012837 721973270 949565544 814534558 824191000 708495526 825806810 790532883 875814351 546748091 622138881 641370677 885266937 767510703 889138723 685658108 707724301 25505507 500299095 297140860 306400869 704618135 721662292 555162710 622045281 695598117 700636979 895178564 901988218 928869130 987943890 103610545 674486911 760888365 931108965 553904394 562436347 827069701 918258039 604727767 877416728 354217569 599644313 431351058 611133946 325045245 670118331 518074794 524135254 761420428 929270526 433871991 535383587 441109225 531042055 972567553 973832048 974459485 982578411 961822950 964506292 301495324 734276051 213353009 466839734 11977113 295985618 597134485 938608711 110143653 211272402 467504760 570037547 859574688 881201672 817682390 892821927 470036309 672393240 80552387 375961318 236371862 615579045 973070053 990953565 138819911 194360698 713486655 738649573 878356060 974904772 882526220 921309497 326078386 739832099 704286464 888012117 293167951 337028365 271146668 989582898 579698815 932662088 667191110 896971920 354201559 523708544 337462317 927517246 996011624 999809215 342007498 821005508 186911396 479995750 365160047 571421822 512475258 951571543 293516311 300104734 465779613 948588480 335780380 699367353 814099455 921497937 723550512 801364305 323441380 498913702 481203633 638234273 610616205 846513523 299635286 799086654 699941253 971830101 999101354 999108339 538532379 973816808 910705003 930733769 37739583 973089556 803740708 822651670 701535030 766833938 684058988 775324569 988459319 988739899 802736200 942374141 165644590 863562159 680815141 903946944 26529109 682029204 808460195 952374732 91239944 468287161 32255470 430435918 150298495 228472349 124347169 207452447 216423648 871026396 276340235 838929179 186546557 315939894 907860199 921813555 987697842 990213462 244582213 761746596 308827231 792174569 863950522 909828697 824620192 849261554 776977133 960634272 672525787 677330216 1885725 814200158 92509368 660391496 756328774 875522135 596021612 833359377 763255014 867881052 301571597 419795589 425858668 449861758 221991723 706135699 677611123 737322694 89199511 685365407 32513507 452865635 216050459 489032278 949694816 975125632 272742497 500613773 634413673 657893270 417096735 836612570 567620763 760836001 665617519 955118676 710346618 854345566 498711304 585483843 452898070 959004644 176158515 451271861 75648577 827647049 544522672 955148835 261669036 857676001 9093843 592648429 204108219 534002555 751823780 964970873 60904195 144830234 187571294 261306474 797174685 815914644 976929774 999701243 748940838 826987989 347888529 698318866 912157844 991404684 144451183 713112576 783550272 836058076 231223163 611645182 193281354 722226877 565178824 888291816 173129502 486956921 111391160 463673525 662357264 885944363 105518484 800402317 782921725 995486072 272110183 588962047 266326381 677115645 685086067 691676934 197374648 287354303 90515264 864131953 827355464 918401464 59541500 971705452 365007671 540189702 183512223 275234763 136212283 920122219 589398741 976837179 393380270 528165872 792820201 899072019 326678528 905811649 35579613 740575493 342057552 734694371 159647021 644722878 803029441 899187584 65985235 570023283 382314376 500480552 108569014 377982376 900608491 913472396 15835117 544607714 27652763 493385580 83717389 961512505 835636515 868628711 631372110 881348949 407323785 906605695 448223002 607116950 122698505 709976721 52462903 343019405 783055766 954020695 310156625 539952227 693710849 863443733 390540696 504645055 481311113 744409097 136408219 642524832 619523873 665798288 147907745 710816412 13506880 591253099 493288788 899024287 781612987 889154727 29105932 719690436 201207863 338616085 641307357 853665447 665266479 986419036 379350972 984639674 232100514 901528346 234869300 751497278 331151490 789353599 303397593 404031416 520118863 748559254 694141808 990060477 429276944 946057184 428654178 799087723 394125712 524745519 639223599 655158247 728693623 805034228 594513487 786770820 941565445 992181245 599858901 777053791 149287939 150124444 598654513 841237974 882717928 985740939 571900435 616376188 915658634 996088049 864347400 978335185 254939422 443906900 858272473 954516399 190581027 873388284 889213639 962283477 181898809 401267317 449398983 861808284 32935087 104764878 205993286 318872905 829791505 897988859 754770870 849183272 533470203 927978635 841118112 985267224 984356592 987202332 924681440 950512905 353246346 440146618 282348748 865434640 752462710 830233309 532124950 618552247 960321272 968193033 868178198 903665426 319485587 872300185 723010843 737995798 249964221 739461358 830845374 982542138 224334969 410408498 205257337 229691082 583238900 940729160 377997796 409069726 398319225 678568682 37677747 922896378 677104706 790354312 905650553 942842608 795416340 966818072 650677781 849982667 41123160 498574381 896588561 965290541 594832020 938143854 312044005 852574084 239912760 464319603 395525551 554669186 363804729 848936032 595209123 713809967 715258784 914194187 856437620 961633202 721547597 885754689 399122187 884463283 994740326 997772801 472373670 818807536 108859104 389228878 887128918 979290934 453310275 878832788 380540744 644571254 281104622 422631128 897001394 918055541 151382203 290116414 276428894 408265605 812799037 943106917 312944301 497983809 446244674 490908209 293362113 336381062 263957280 689418583 72107180 785908999 165552736 688449810 431239751 847043997 121281889 642896226 2143578 503361036 550846593 997860743 549558755 758725047 262383156 821675533 6334481 641579384 366999810 830272388 211892151 548830521 881077505 953332737 61881554 510928267 838134666 853648589 406373242 442479192 20806799 640947658 125767031 615358104 566213153 647641247 84133081 756795862 10791902 26036433 217683952 436220068 355067013 915619294 954923500 979591797 939663189 986320353 213287295 405689251 452959365 963406196 609003682 878811621 530733048 668143870 902781184 984092782 7298075 536132685 602071991 802842345 561563363 875221302 791714729 856145345 482384210 507402686 85480254 308293761 83856691 353292323 517725165 669163980 440400401 755244576 193166077 260265035 62006010 863948682 187445017 565334384 215345798 668677524 136716319 201981642 716191403 862153237 553220875 687427547 670754829 932808398 281247211 965170198 596588135 729021003 629488034 800625554 252670667 325058017 612061002 924324742 315222486 956886689 234898702 303984058 667977076 868157437 821682089 837981438 603977157 775721461 493413152 589207869 900410591 903173419 86806172 723026536 102271175 428323624 349457187 673701072 42058934 145939057 413090574 935690760 650393240 874559920 763287186 911482042 157268125 658747283 914938085 956973715 559818864 571423171 976082927 983197301 366187018 534719300 604414691 637145864 132186190 777305682 943601374 944793980 395387904 943252542 171760251 315364850 599048596 860395438 320267545 330900300 237874610 438219709 963265535 963601667 549450374 793147760 148316190 559919402 227326700 357186577 553270427 921509798 130396495 672369086 386966462 882598084 466581771 746024064 554089228 628458669 579318326 655052857 446980858 497079429 385888896 622843271 785161453 868639193 280160833 638224914 27160034 457742575 752777986 830654036 281715497 509478238 942059620 980803159 326565104 664989324 493825921 768060817 938437071 962815495 405259376 759058087 7526432 227748905 491021422 514044241 57899720 234050771 289055484 576468324 762944637 887642937 803736244 894063679 695839624 988011310 54196001 753132718 941723879 950408632 702148702 873223174 770986744 811243724 604106431 885849208 823434644 842131678 868013780 926027744 613308566 824154434 38687906 495252098 241312376 643722160 95813270 379397407 970443000 980265831 186271734 256438662 912027039 981465601 97954349 328550690 385315461 712451590 94943917 466633066 395125627 604665079 987672880 990989615 831278746 965852605 230893850 857089282 125359502 452027532 655805255 893203474 64668234 845247273 246014026 765398998 667960227 723736790 575003585 843770285 637691499 678663645 614140499 679807769 270906021 306871666 275088680 562845590 592997626 911748235 797754709 957109541 260480083 565014362 792456099 803762198 893834035 909246277 122843756 939201985 557573010 800229505 138639433 989453792 403207800 888739508 762870569 872229866 507659923 514427047 388710668 430779950 394533616 921310359 971288570 975904729 645133408 969531027 571051605 975522309 585296494 708196078 665221524 669959280 98710304 728246818 49616941 877376642 456837143 749077452 928024304 972710883 210480223 875568600 308716880 775766821 659817666 804599877 159588616 828896790 529455958 551062173 746827910 752769344 771825862 817324639 238352705 269871347 684947581 902584899 187322983 521517401 661653429 827221069 196228695 531872806 965918657 994759224 613834887 995824896 718271262 759012096 165154342 659195778 560339351 632359924 554157234 973762647 217466207 951676539 448249874 718359625 252425737 859998211 739598674 861487002 24937610 310361728 594659607 860211530 436872015 580244611 710846654 817981509 71809554 554789601 755659269 903262342 719005372 736594867 544712368 822069726 631358077 708511890 914547199 977673426 39737195 902735334 391898834 705869758 580107420 703534480 683122070 757665797 688857732 790357758 48680282 116730308 134324256 657333554 751579614 867275422 118894089 423714627 882252996 916821147 495461406 653773204 544681134 881553762 780840650 865969976 923096320 990404579 281644 439188689 874068121 880269477 354694172 517850066 840613042 990268944 606365974 830856035 227820662 811857852 878223447 880970626 50519701 66293575 679932377 968465482 966378234 997018338 259435690 556802223 751997139 964918645 357611713 491837539 459886419 857911318 223686604 331002395 861857861 918690021 477981025 838937069 201706663 511898464 146800322 848472190 571220901 989981964 884959211 945122014 423203007 730414390 739107960 934248635 33488660 566001398 321156019 532096311 845574394 893789591 626878498 759289304 488614383 579070483 70773281 972599815 294300827 413796699 455975098 965572996 875662103 983851458 662426279 857361740 674499510 787838470 416643282 598090066 242247998 696005543 40025028 915091508 276796596 772092596 669254263 738408630 869032136 963095260 752477938 982595346 215564962 545808097 603855208 847150247 575854236 639686856 517445497 744400144 20700634 930116697 117952327 747879207 366384222 453664127 379248856 418477326 390207176 950649905 60235939 669540423 513078319 559566477 656530207 846612623 708356170 717662516 318401434 421101912 995195229 996150438 861581601 880492306 257078088 969301397 119876407 842126609 799011548 937481320 17920739 58165705 700388099 744384987 252514145 284904260 282396182 383993001 442868607 875105570 408603736 737610860 248074315 723010164 312015951 942911700 58425068 527915390 581919442 703251816 554730815 718829883 315837974 957988398 912321255 979319690 510069944 542768583 939986078 968762036 185780561 888067590 285464081 843884836 492350361 931219208 997082954 999328439 37633052 104541141 333707038 425267602 873790853 918978717 776763558 828111026 93393643 627936947 120320547 734084667 803591643 892518281 474410525 596414281 375614201 613903224 908016464 965517127 783922007 830821912 623693346 707464215 351310151 821774428 725613847 910787772 408235668 896593161 548904465 981677708 51302580 91615317 864180601 951688284 437988587 555329127 696252286 950312634 781670224 993990717 284427980 848067370 605106826 789284497 294366922 800795689 140774389 984857756 756734944 842411094 216331678 828902123 119387579 803089930 303131173 593810225 483838607 788292954 117078418 724316931 655409438 667702080 528817930 981770912 510850847 597248272 576558328 641588197 383904120 551041938 862588392 897365678 543049892 682786677 10831842 999719666 68587593 468060396 508775723 531957885 174959933 675345873 510189000 527654563 897065609 962198638 653755086 903436675 958301577 963029147 367043354 448162357 220265433 810359513 990687583 993868649 464169220 703676444 313957712 340154984 511200184 625799400 752635523 979770601 202143007 700317910 855175421 949467773 297423874 419653586 150065142 217462675 739868489 886677795 236893586 458315315 391603097 878340501 429981891 775147523 399792217 450976948 289388932 732894412 267216562 883741888 55975229 498072814 619959887 783777711 393194597 943775803 382500605 817948812 281846253 589685555 958018794 966137954 676058563 840368155 408074462 515745937 611779409 995679571 565368714 770710710 852512102 939329439 864057311 994627636 527196494 937997703 890660131 953241423 239736923 414352625 342962220 683759947 658294592 759856177 717753029 813842232 124726664 184851877 206558262 960333875 849848271 946522333 110165396 522365008 183947332 382868825 162158294 584287496 258670379 271539841 187017393 503375254 391535306 793196371 589512847 978911433 371020986 551350104 24960959 470723978 476257669 805649970 307377670 307459194 62461437 127109354 844109027 913349660 197680171 520603363 390977920 512052196 615780708 704482487 709985032 741368621 13860186 554029432 940023351 995904855 206332422 211603560 320341794 613215417 850623028 955809873 779830038 813742787 377947031 489166478 877471251 935950517 834952071 889721124 899349069 946162577 52131596 986678868 221467582 495292798 799268993 916766443 719498507 944378779 905435853 931809902 343951710 492450801 129891632 417934263 68232775 93182083 126697670 582768986 847458216 866719617 868154886 918595152 686879300 725982918 691874126 821304251 717359525 970973381 923208041 973113969 145863839 828429632 912191532 961397483 167161813 174833630 995878567 997894251 482960378 599021329 985616430 994159313 229071486 241238678 887450820 931622762 41575410 206935184 720392368 977574442 48287634 959281502 172567354 431442296 471699644 844610774 450225594 632841002 878029433 943616136 143259852 888918691 227030876 749530206 847739804 926589387 797778951 849740511 971893696 989122828 34690939 560238749 731183777 805603562 668582043 790904183 233072945 350307448 793647874 951664303 993371350 994997100 777576147 984981102 922243138 939504199 506663638 868610220 230473022 686603270 108015382 851618667 401192029 622826733 993266842 997579950 761024872 899217450 56324857 166005123 780165197 961215340 460225640 703282782 763109943 968761005 860168316 862478692 218601532 221503652 687750657 710028403 511774551 983816323 926177924 934295529 610721108 639002838 958252647 981043917 909097172 986477172 312161799 469872333 28719251 255508974 179007817 297742621 106215688 722988183 707891793 894471479 476186016 812912910 707431923 859936913 295102169 957072765 524324548 705070502 516313364 828246910 394594841 925939988 998234516 999638195 134856165 230444818 679785868 779010519 815474918 991310836 390830504 974478964 571304487 949967240 189174521 742073815 549460084 992782422 159295332 993178842 957083975 959046306 3723268 188689986 896456124 902246742 842521070 860446558 695585081 761076724 287153130 305833387 803502696 965050338 559658134 649413662 412679724 741563403 745333201 803403005 743484644 870376125 755481335 782052692 703552103 862840917 980755660 981351975 357263588 990816231 812210448 815614405 70384581 246247166 818098345 943078118 846326336 850202255 490621886 921693230 570233981 706373980 977266771 987511516 38245455 84454620 308549998 817569281 843713111 895287531 583642033 879131482 435874293 879669467 442861479 705375481 225539305 849794484 564555489 962805125 653571216 780642356 623507663 706294720 863285963 878009844 986595703 999715323 161153017 877724113 55660335 419039007 120612222 484198986 89601620 800707800 874076696 998030383 817802986 942272925 628064603 988352760 938973031 957500646 728888557 763351889 972787741 982918354 840459882 862884149 592792357 642844714 702938621 757991841 634081312 931541142 82828016 357669190 690731419 924591624 579266206 785538695 440246231 920667772 421017002 603894672 962498307 983609742 691952751 952564289 223816319 863353385 985408095 996554229 24798031 924378856 771496213 920970579 595228211 605901303 18826517 319278114 929739219 937482086 332864565 796227149 369681173 486744502 454985040 501225024 712876764 717833138 7035938 226089256 969503180 996058508 175442420 398092084 397755523 539059510 701476108 725350479 806462300 963717880 940841596 957732116 141513577 218605099 778335295 824030014 299356280 495787934 920838661 930435697 391259460 435355795 163842965 374934468 918568101 993681858 574191712 911084105 982976089 986916124 439327988 979861288 110088015 701021024 633697553 763595333 286347546 513906276 951422431 986685641 602510944 825351173 975030514 977834016 911875470 932777366 567395216 902087933 492993763 689617150 9266759 818305331 881975102 977381016 636345330 769715942 554326191 750649761 777612861 870307098 94961996 702052485 184824214 217250325 692571947 849612122 60049978 491370867 955739027 962745089 746833082 782159043 461094904 679071255 27865267 220519447 375806046 823650949 867383558 877840806 646290243 714680960 468993361 616534299 855670466 878620669 96321573 414947712 279100338 693558742 870692536 994331936 145578744 980038674 548131447 881033286 102801584 117254044 667040298 756433701 497728887 684678504 189323305 195294900 616252305 851581774 317880124 645681172 683293260 892866540 161003011 402405942 135363172 153411321 552326618 727016217 521669966 627270123 35218513 580432172 485609592 627723663 191102167 211256158 713672349 779505938 624657024 869774334 696134442 917019012 954963007 980119062 728445006 971914088 616035663 884721393 830854317 968775962 816117358 883404830 544986619 597134062 772604555 809877733 116003832 920639072 230154015 800125294 701222728 851400327 920009128 946989035 620888995 685901039 992687568 999846623 619676080 993584317 402265628 649089526 384229636 840872497 102494167 832459128 899552297 979385902 431041658 551264434 171425666 526008761 296264287 886561786 174059060 606078313 45313393 455926619 381775529 953429226 934121092 962462504 747948683 795768961 547988025 904227148 224263406 902748796 814025636 856698767 390152325 815802552 520754030 663745178 354054040 823372036 960608225 967180272 959528459 992965643 473070648 594874990 791437045 995313678 724489123 791257230 352408136 451818246 210004032 659215999 465006560 942471226 633095637 912132211 573845668 827182323 209642134 481115176 495527516 800019092 952254195 974526869 739133966 904022343 604971033 607415540 369956365 826533578 864351524 977186057 64265988 267894788 224533844 873372982 896605106 996914015 257752018 426147207 449373059 679610297 160406444 651121835 585218762 953486617 885080102 979657333 831916000 947350482 439546883 900353498 723872113 972069188 512557285 822139819 907708001 974778151 838623503 904965913 514113438 745727787 386574327 504974723 862273812 939519366 539497968 741718211 64950132 715838933 442730891 901501936 137714391 666187117 46525059 563196425 395152990 839026149 64989580 853696991 360945538 936046882 950734872 984173390 242070228 741843569 868110977 950531863 550092655 837143312 947530463 999861492 429497207 485859095 93231892 986005712 612124065 956435491 332791805 336494587 747310483 804156147 84937187 902635116 757600802 960828996 89456806 720042701 249708428 869613513 457904634 781106209 399126132 902182147 734966132 957452266 461350735 509614427 142260832 702692694 960980822 970122553 404854707 424858245 709098215 974952219 595054698 742366959 112568280 122213265 80811485 101388569 600201037 952000819 394834906 771199786 615816703 763198761 132446316 343004792 24782495 616229072 688327076 799908570 700299564 859428416 460550581 595450768 527704919 936622436 651278502 983260052 683085391 984755041 414842885 600033601 522407780 667468070 623742546 772472732 784784601 883249453 695680342 926544204 932815361 956723901 4367227 330197818 81499501 378381389 815550545 984998983 434932128 820100816 15268051 193705718 896939742 964863322 137747159 518035453 349943473 356884385 85642322 842907434 966263141 981318561 495090375 946101484 511618374 512618485 758998536 856868841 867644381 955244519 748297238 803915897 819431671 936965089 968309547 984817930 901089959 987191894 187038701 224018288 862927510 904053752 230448995 601367530 336223165 701392720 931978772 974169379 646724014 773567271 109536926 325000345 667380172 984953171 803203560 863349037 253718161 334121979 473995253 858469807 988773784 989733429 22247660 511955692 125040201 236406841 840042465 925692000 11256409 585521150 662240624 833754623 800432693 905428346 442712041 981133910 201787024 452793252 18449615 279320131 278943269 574661077 987819264 999461202 553940077 749070860 878542768 881757475 503549642 732575952 288638409 863150550 969525294 972131679 72637619 841023556 459526830 845975267 819911011 934212583 483758857 485083668 658653065 775109298 676432858 870251306 452310257 862668296 920890421 924230512 281883683 390365235 21263704 364987360 796910409 986609131 303853499 790961147 25248945 284301144 212062900 790556551 276992035 965019469 80497863 975988251 114188790 530205299 926848822 973689196 674766584 759323392 144733043 505751194 304696570 330356098 827936742 970385734 866232670 900127373 334848028 786213105 669333325 780027783 933372872 999298673 443173890 994157452 620911146 870360642 490790306 677361901 443552572 482669711 68382821 414218550 380875106 934081085 995134945 998872596 994437150 999619924 114203856 431658124 783369118 893255564 881249960 913321647 503915031 846816728 218855707 934389586 373472401 472478870 334783918 569456541 526922953 723962931 195801215 674165287 406315752 917895504 903971349 921164184 39062821 672305524 753895782 935428643 288617109 453809036 918433559 989290349 619897223 940572214 349342406 604797334 660290709 832182972 306398164 703400157 883643432 985719266 768398696 952125299 331109451 856838987 696755440 852269452 766933100 768741716 731831078 936084039 993723659 998179506 34480254 161330168 590869981 890864684 927662150 978632590 920752595 966506727 498204812 635483051 409590249 714307946 101187481 690543631 263193408 832699430 743831504 969811735 234841012 724426878 939688701 950558217 746124434 995927652 318554894 671257169 309909775 567337095 650332428 660025687 370559735 608937627 193442880 945218117 335034638 682654324 853898709 992546929 113620612 170208529 925400955 988434456 101528304 310870467 824370118 865872533 171479698 252881012 38940269 964095464 599934803 620008086 739868532 991565642 60704453 573036151 221982170 355972133 321298886 790548869 68191344 604596945 935514705 957968347 709187658 722316711 801128653 975294817 480728776 802077435 290500898 495572864 926291827 998497525 15180446 541949967 365234111 445096535 733662196 930219961 532537783 724794412 279350974 412290133 737291934 859864695 832154625 887315758 702777984 995181348 913463126 937020420 773234145 774172926 927058990 992620584 448968524 552029030 304890925 371704765 115279687 284060925 800068566 907418877 138098235 618519733 921119163 987859749 758612299 996892919 220081509 986397234 164013649 929853851 473362051 503668521 250890356 510915889 50595070 639903169 762559580 849072503 132075628 360989873 814941311 971682652 818701677 880695864 884633395 930831066 348304000 894713060 874311798 983260930 929854292 949147017 879752925 898985763 119417597 857003356 401031607 611579082 381119727 814962204 217209377 864206980 887968407 897776797 894469239 971631879 469579339 786540206 506888666 586820097 600430896 781133181 319584494 551206205 607298118 795389537 524087281 694972856 384875378 389306283 407021125 979872059 329216499 686931722 448158774 616506052 344122635 697295382 665312879 747659939 976140444 979435282 343897104 704385191 314563868 611163098 406543665 911880834 221937302 454619892 508671732 847033434 597383963 637274511 812893278 942851918 911432393 933808640 392522796 831773601 766242170 799369653 706702210 962386439 930058115 942973093 813455874 986904682 135462876 573117356 354571307 373860770 172424680 548044167 870700909 944481903 119592219 341072614 881343305 882406317 643902404 953103120 350166404 910063066 6106694 591935681 92891697 127125551 86316502 556582442 823582498 878053435 238294304 499300052 563523153 604663674 436485484 707340239 800014768 801178367 880590342 949727207 931250543 933895071 420665436 539193070 875646059 957003400 154861199 764280167 279583158 696187692 519804838 679447319 882673113 961719994 208400392 872523859 685603675 970636894 504585866 520091905 603944675 835663716 476710775 614498622 88323049 800245190 281988939 981191191 668450030 931624761 641003674 840718791 892528688 892934013 415631191 957757509 353235916 999870578 709785779 743571568 597024763 809365887 706411197 819080831 566790083 882384412 10422394 521335925 711434174 969511817 773312470 947332494 894248259 971273288 464884486 786356829 235508648 698352334 367309422 887129094 512160378 529851820 712491823 749124701 39244389 437895244 435220534 536058173 201899335 804277448 724167530 936629491 624668227 904949312 752843096 847804153 247880259 763002100 85478448 550212788 151578389 752051845 627050951 893782922 284097468 580240397 314358438 932116615 755073633 926087730 637025284 717100153 616613724 866848258 182992797 504725903 642345921 694156962 639007427 777755129 507478621 936717138 948764625 953611015 828548634 946817853 272134637 758403499 200674682 791030967 596063409 842532693 205886067 749456396 888219458 892316904 350298851 761481370 422330976 978307090 924027608 961344744 194934567 902504100 380719620 497256210 892157397 987585031 522351856 730658369 269616457 904844532 438509987 983839244 716122058 823215944 483225970 738882719 275049655 396555634 623226017 787671425 600553847 808178356 727204030 748144671 88361348 297752362 249623500 436622339 959328432 974597440 831529378 851409764 926832889 946036491 735008554 747694052 716536606 881866061 460979853 637343915 724030934 942466522 102215789 682248977 891969544 969078409 937665753 997995964 915999190 973490580 229518336 889414548 791404311 998349266 663709934 698234627 193427076 296280207 866282152 973849681 732920325 964439208 947371188 948777382 554104039 661541474 396158163 792039456 981503357 985631702 993650987 998887034 582000659 647696998 653230629 767653170 432958868 676216064 295673301 545237939 507155069 942202122 27210596 179055530 88812256 299502668 572229108 952648960 387097841 833488927 559446222 876178967 107569918 901065536 586997345 667585721 329205666 932226067 76168355 771243008 61431600 718954692 326502755 604061537 703485511 831050391 303300579 622909311 593790929 946911028 37277519 379580021 93293087 154520810 98468284 795009986 217431923 270405940 59594685 840048236 4219667 7918795 773599407 929294626 729150993 742006992 995686975 997143679 246680135 612178936 932514992 999863565 968659962 974112111 686001822 930186288 122383511 779297528 641082817 714648089 86996748 210284896 368809961 538360560 464781291 960572850 95113262 506828103 459517487 560976383 158025046 161090529 162339890 971090574 906519148 994758134 928851783 995768866 244949142 978507925 843971688 874168078 462687759 801849319 765586201 895528011 186729701 943022720 399400628 818015262 519030112 571398840 553721597 728923932 459451 655169249 600889640 740003618 455866868 853395496 145952535 462051595 807469431 922459418 655598842 756474680 489699904 819337514 201285588 289184426 289851838 873005304 927115738 931043880 805298383 958949754 267310694 685479224 751853712 803191688 993457886 998784565 541195249 800265503 185834656 728766335 644004208 701757814 363767698 692545166 503294411 717148879 936741123 963471294 778033397 884651947 124515321 241117116 154220257 608494472 703695569 871107344 642111362 695756656 206337520 396424295 334734899 340864787 703666422 935904626 538089482 966699894 252570634 658713988 2394301 430677809 88210154 845605159 12491560 761357617 568887727 777526915 436122927 655729806 950446459 987225987 18510293 859289667 896798372 995876042 114569256 673545611 194171839 985089277 590067395 916274664 639402428 843156432 72877518 689736457 528091781 529613747 235036829 852543433 472160955 478044142 199070944 211596454 333568555 736448171 974641763 975169713 797177669 889878206 678281590 962100705 41912700 703991638 914125718 922941205 243694619 641729101 821523165 890893347 846929983 979737173 616712626 806022723 755502825 934093671 806641394 866082379 182758114 890740177 140246180 979674076 343752686 594015388 464520878 859345682 198231350 622367229 474879832 891551952 607569590 633824093 760287052 934953284 1202971 493127138 696483812 868937355 490390724 779971271 847976678 980531255 77112588 400294760 138836888 418346753 608240289 935292191 701448712 977010570 53336733 893632780 335346451 632511902 833281716 950435585 818469115 871044739 828205871 995029038 306174151 728972126 400713881 831795604 686168429 702310020 895443954 914420271 759904688 981546422 169218618 900180358 677480007 760910352 587090113 879262142 361227283 949191809 928370297 933469644 241376334 484796412 787876950 923364015 631281367 856673627 748308152 969428137 570528721 912949437 920471639 985156721 375676638 597233884 228405121 283214937 912715674 915289476 802997753 811182157 594301978 708961832 718361958 753762689 880746570 933397677 937404758 941694728 478380702 532929358 651819546 958109654 366225427 448369851 601758483 655189764 945018076 961006846 468551104 887723900 426337870 514295349 600035180 667521541 415277815 753267746 659643307 722978960 274851141 430357716 419030370 638137866 676155484 677460724 751584296 879875252 708614889 937609089 492225565 980477718 833982465 961401266 651704114 905802247 105138721 752999607 613104697 734073212 236743695 457926135 914603207 989476912 774863949 797694645 930228264 991347473 53305578 307784744 534025541 957630106 512556543 679193794 974926644 993926378 116880492 980069642 430188196 757004006 258645764 738157502 364602116 721239622 387021329 609599897 878770917 903978614 337590049 539047091 632642897 731373956 671826223 753089360 230129724 657631008 79282302 663717015 403920307 600802475 832414437 901748182 330502687 451857785 472668519 776841435 827016284 832466255 521097 839139634 884519048 938845836 981071793 989529111 853713355 915273699 349469100 985397760 782544189 902807701 304508100 624209831 437917275 523822875 376163091 590576188 855524459 941772341 5344892 58421205 176425630 279746630 811047288 864541530 413729789 496810966 505026704 560638667 25498412 580080266 321102656 898586349 447230606 533283053 402499065 474350363 51541444 657505655 757177261 836144137 936513833 942925503 330328270 914971832 936715128 965928466 661101820 830146017 138451863 416404541 584476273 823972134 332831857 638078164 523257389 936407153 731783245 758155634 925017217 975570101 56762587 292161354 555420572 731309187 476647029 822735640 234507185 842713899 615472587 628741308 256631652 553796843 600699657 643603678 53170091 692801025 264314691 690715868 453380442 508453190 37010868 970597508 914316889 989560418 250558022 764491871 899886986 927037003 813686487 833166526 681484456 687606741 78387778 602826109 546874908 733479028 450418487 649306915 867945202 958444975 191473709 399620277 842732872 879141327 611741216 982154921 515549604 524638416 881423407 953630558 869438794 957464942 517676847 738131597 955253030 964263869 441519080 754634040 883988055 966211816 854373617 945390509 396910446 610272334 217158084 868135085 521741931 806530847 174862964 196399846 630735398 713835075 3422786 182072732 995820074 997789927 875713044 973159138 53970486 662297568 924207271 990994287 825465746 877190306 231517982 311277355 184357894 771195146 539511790 650297317 44218599 326339736 602535869 750595260 102855637 785369800 109195614 500147831 757274500 807397228 203327986 736394406 820519840 974225645 924232792 978095173 194715662 294822628 710492439 819865652 47696982 864500611 215815279 579531262 105399867 475655324 157987497 496809889 931956597 951760376 239583821 783023170 734938551 850439963 734232090 773336609 208587311 230772817 724896046 870395520 890513044 987099781 556478488 958258649 372669154 426229153 668382727 724806813 832987152 897855068 881469574 892013514 417488621 951358710 114564335 500677059 22831320 483539418 617776418 751883874 32315465 975202139 459229779 725296208 459396898 778691482 911876242 923082470 131692176 296794830 435070394 862173567 40047045 592886825 692439233 993526681 921416233 930436167 418228 388025537 100262338 643788479 765578678 888296830 178388223 453386680 584319331 884679625 983981878 990209021 339201408 487936996 775858927 828963296 475494044 687301108 959709060 987859688 473041775 693492641 966105423 983911499 301462644 537617821 923943554 993131019 269495457 670551668 351854069 483908952 174686076 300127822 968317361 979170799 435378895 855463335 588303519 776047069 123173787 761831306 331126535 948894020 733667169 889752828 728534716 923636845 613847070 762565801 88004694 216367908 820387837 944029954 669524419 677407309 186064584 220452164 484989239 900984633 99166997 385303529 34922991 594584872 614086639 801392091 482817345 638440156 523621638 762148685 332242299 506511706 828269204 923835068 619296462 775695586 947494138 949634169 694437767 891808525 400508334 468308143 324745045 338348265 602964679 673469128 976877533 984521861 995339023 998475037 287821887 551300398 350681054 514472200 511333334 965198519 530299622 967248939 500142927 755550840 14974287 598123758 304811256 493073791 543154774 779331740 938714709 966486578 747216013 775340380 966050579 985578377 288792116 557726200 880992140 976997282 732107027 927352169 891198378 965832486 859877745 874385057 95124421 601081298 656551221 906687442 821108134 978310595 68766320 283700498 785262775 978804506 642587788 982072648 995813791 996163222 488221700 524885361 648415630 771239050 426715669 790961404 225229635 502901318 407826146 857059769 230709865 444472939 983023198 987758141 269752868 802130634 616173936 884485480 145401832 571179056 814023173 841339481 148404054 470631971 402541326 717600714 657498462 676365818 283660 776255658 412691505 451210655 416625409 641698998 616646179 896133710 93755825 893045253 703983577 732180407 953726975 965352339 309124743 958027957 826333844 871996341 684100085 915452016 970645881 987383590 372777739 817078757 855693536 868160808 711928598 985103042 199939379 213907563 520680562 962132375 360232626 406030409 564713461 773355490 779768913 892851964 904628291 909669664 626907434 956931302 119112681 719221101 314771179 929221496 146032025 620828572 4134638 408746938 681025653 804404449 34009089 342254326 509534691 822576089 197457046 573230269 324595038 386692077 252615739 610273876 930925382 937438101 104812356 173097691 462695951 497060339 132815162 878441447 885676862 979241331 267146629 376148173 537819886 743961470 556769223 995789803 737943039 845240254 552205285 878396616 368657308 418920525 707475023 989595298 87947790 371096443 62210416 671609190 886833207 933904232 51236377 576134536 103751079 991710136 911642711 917876403 442502633 582011742 548540869 769222017 874650183 928829182 928318296 949614494 794498162 960062859 734410362 961873660 824705449 958113737 888161069 949232145 813482831 984755433 651352281 994542407 460837061 799963500 435504323 922895871 906425845 936471153 274067461 598720965 268509169 930989592 945513882 986506634 764393784 906305771 772946384 865600774 677037527 988487616 508648496 772395542 523865088 592036467 777800384 866655801 897606720 974274791 264650004 529129487 13034801 809387971 626231732 710535484 716021802 847039200 37162138 384159653 893416888 938929785 423478266 903412052 654256223 693633182 506272252 906252986 288358431 389157335 409915488 495639197 14017217 428470832 927666151 960023453 184784154 354320264 577477046 830050293 420077067 497195801 800757978 817086871 785505093 894246532 924228640 951388361 25505904 120749045 24265824 206046640 197352805 679216756 878948202 954935068 935058413 984783377 757508224 775061201 707213475 880048911 774632190 824774955 53355335 907382996 304960303 848784704 669202156 885848261 818084504 918331671 246542043 279623099 572843914 812055425 512732130 603090934 403432331 710317642 559145342 955700112 702086170 863903489 8391520 180053870 468386938 787478899 647790978 781813212 909561249 920888519 324615168 922089984 554738063 904044522 647752603 832994746 685957040 761357194 759740794 893165167 433216639 973796963 151620631 824207071 376140213 549678921 895046627 991852605 335444014 891873696 805598825 970636994 647694132 820710745 265571758 389142188 668187718 717436776 770771147 966548537 268030094 535117311 837866625 990337585 595637961 626642663 656015082 940981169 970007216 976699754 892872486 998513528 165582605 815952023 882255101 906696213 594028834 868451587 660011249 730314746 629425341 922715389 571032133 687939661 172467285 844342576 465403232 965264810 949067044 979066579 836053459 965038812 34020940 178169087 95600363 924484243 997882515 999817486 556512825 921107891 410753841 465625950 817600773 841779832 163094217 991320526 168849184 240927161 232433687 459828084 536405228 631526044 658369137 945344462 246942489 680189528 518725684 554778825 850393901 925165196 846639831 983870774 81484461 511486754 572470208 742466898 369731939 815316044 325903081 853041728 96846950 439861730 103894545 983829476 351502013 874528336 400618547 802192067 324745347 923432284 463132448 471826419 850696591 920450458 184116272 444506301 596861546 620030827 596331373 838886390 194237004 477231719 371310507 565790557 785146047 955283428 443522730 476580221 62039433 407717396 616793370 643635495 852080881 875439896 165791046 398397743 664062543 797445781 355649317 848156233 380875585 569466629 476957 684067091 353771343 674861703 271304464 300194180 133644773 743316849 992643405 997472179 896695812 996183625 918418054 961803502 499497048 569973709 144395632 663629756 396834816 780364427 671207015 806941745 127435858 921404541 673585013 750365947 402033101 404473564 554767908 896298093 281166772 885886563 653854132 982034494 858413798 973731049 209830513 659187732 307176973 754674788 796578718 934047412 787373844 790436433 658620603 883214569 159840363 749949480 810443928 873161204 817564284 969829528 321812717 703028582 343128187 961587478 770008767 853650667 641404199 906257925 533196930 741638373 807262623 928727675 890845253 961101573 343259791 961966487 702350805 894063665 948355388 994287472 849364354 931825275 521802830 804563511 385839460 935481566 863532107 973811528 828789443 944376843 447057214 523500520 336879602 355724923 447143216 783711163 790501652 859067423 284509691 553443407 833496125 926097534 806296164 841993715 495691291 712278100 118594877 904908192 145304142 450320523 858932151 898608590 898905950 923745072 578333395 658714728 999741449 999909076 67327225 446979958 607710482 857770380 305051255 594126971 819013815 901474862 97202484 720088814 664639410 687058368 462382340 691931828 586346589 637457480 381242438 500562607 901943980 968171170 265707253 424201824 739208031 820557595 463890254 714404420 869477147 936124521 126948345 136181798 104488423 109009037 870623347 966626984 189458829 203305461 818698287 846054563 310267849 535156532 534514117 799053606 853463877 896379152 871478740 950391066 39156797 594363073 613397277 730029963 889114984 961437768 210127843 341323404 675653301 943944307 72126582 187883371 51169994 924702676 223900729 790239605 388599423 789957256 20953435 23418650 323079315 434879220 333606060 675855139 480712666 694455024 306519927 991875027 223066209 543210680 888995840 921714479 613416737 840532220 747191130 910985340 189632512 554251677 198752530 552285998 831373596 843884720 442388804 793253338 453369834 906778107 457628961 493193899 277320892 542562109 351703608 489313027 873622630 985737301 691041594 893447581 941860942 999702806 364949877 578183269 805033004 887818613 679571523 932315377 974807205 981493801 78397474 936717261 910233597 982043124 506517999 761975052 2948427 874736865 53070124 448900980 844499422 850756623 105849200 916605309 944667728 986309198 702843889 941213753 456358121 770470972 322756146 931097198 201946721 443349736 36802268 311023496 410442258 455868463 452184391 858524792 749044126 941729020 20215543 914428774 646533892 719590978 660470858 881188154 835929106 864573552 955847117 975538767 120869107 451706922 299379405 842746840 20033246 216510066 830647063 992181856 395583554 967460439 486177477 589951219 914935156 997831240 746202872 781771811 282420895 298864308 150517711 970193140 672737225 917073226 586965348 630119982 382222747 812350240 179094062 932318460 333444472 596462164 242755409 905716438 253474977 441856480 616952513 860418629 57258030 807726347 22337034 566787977 398047517 516549782 268336802 668620132 532118070 990414820 62334047 521019615 261427831 326135961 872062304 966758163 489244905 637015692 862586963 885701665 834824930 869760255 396418201 960600193 494890570 707133749 977540949 984081157 820914483 852428875 25181789 243298337 18414982 33802876 59891727 211312584 697454757 986694164 118873554 233400027 128805713 304642089 609901664 957332427 450527849 629425303 133807909 786814458 134617786 182404493 264534871 554852853 747393094 891002210 728841423 737989969 261034204 334091700 755296121 755583563 195764635 806175162 288829768 373924918 589079246 861576856 634876856 998164384 415161931 556438169 911317439 943121230 130350452 257644935 25379881 152586853 919370796 924648486 169517205 673341893 899298159 971427729 442406955 706259619 490399062 870340253 982911837 982989904 707039385 824859676 822390856 958677047 797565034 994862069 915786229 992373221 468707396 572054832 81339458 832106753 455632936 595375190 963516188 968831828 364559057 484532750 499099032 539041213 501065036 889973226 858762240 929901708 849051262 915439644 65266586 700030914 580188550 784368862 256658135 596785875 67706626 637272069 257332428 986929107 776997938 924476441 498377991 499378603 547550720 760272894 519201023 597380463 183227538 602386250 219912805 434107007 966153637 989235551 601740372 895602012 887198920 952601714 547290764 929222127 862457672 891732973 663918139 862084791 102612969 799953326 915961855 940239882 421343261 863721290 538051308 936734257 237739081 457426504 926908144 975911765 221963763 352881068 625483726 971809817 958166762 986994029 409756284 646526819 325014002 496288869 207204837 949615803 580560778 968509220 768502052 889657875 988884360 991731412 756018346 964393369 268829577 876951970 628326700 760522106 61688514 212496469 535342150 924030419 145101243 846188658 554692107 776454971 550001982 932322106 449999212 795088741 450222931 968042355 255666112 735835965 405968982 411545998 804040938 933984863 217296409 723457218 701658845 722784983 818837155 832057453 368101448 772763446 741306797 824844832 337146710 437227965 47543331 77526809 469824992 728298885 136400592 944208866 606299005 664540223 27352793 181426962 532895367 658765381 980691493 985808009 486034107 938776128 65385902 857831428 391984358 737064159 82501004 400406449 558802756 762980413 272880785 557054228 174872021 741646512 112855304 461337104 765646567 772075212 221391295 810801198 959108003 959122432 834897411 888138452 563890400 719056097 593782505 614365165 923938672 990021954 942470504 997606937 63859510 873744538 956115054 998350377 263816131 555974262 137679685 856226679 776938581 959556605 530798698 925826925 49831757 816784610 422142987 783786469 628665389 791955306 983924715 987815406 527181610 969633797 264171748 614846537 251276640 792553600 139673021 661747452 861716656 960780251 22436296 797207149 848634411 914457031 879150182 892963966 726007655 730583339 154401275 631678203 898601597 934699161 263428914 905954142 272092336 639424759 825968609 902921978 844511423 975180221 596215240 629604463 846654166 905249989 731633706 934377289 487259327 580172023 253489536 783879356 945185210 992213993 301174555 724964414 421266747 596953150 263915950 797580286 473540386 548305156 776191605 788506370 791357906 846667708 861298071 873388459 474396540 961905474 774171998 932190564 425046116 643970204 600140351 981260857 524267150 528623152 224935152 361571951 113219581 129792912 573587983 712010185 608219466 904943453 630926716 760834757 30500869 230692844 670968596 718417339 646642093 863457987 164282654 845691202 274078060 584735392 924612308 997618376 6709063 288549439 659874153 748002452 611166115 789440994 690085663 758477059 862330302 970254743 869901226 954793680 386176069 894985106 47827937 370707041 552866220 798051177 340149376 684761849 980032873 995091531 765196635 849816066 861566990 970381813 804198091 854437399 294296112 725193557 440141685 934351261 291228721 387839451 333855052 735183430 896201643 901310600 243132561 470566021 372628539 856554439 739813269 947623296 266107962 839353245 878258017 925052992 662492674 742435828 523587763 960813801 907113405 910684277 696564684 825084622 856432282 856460254 849947415 885256940 929378463 947954817 668282670 932482570 473910916 883380356 407305760 665393129 815122297 940244030 390990742 708749912 793192913 840957515 305497585 861975657 910029833 931006210 13386755 575228640 205909588 591641120 946954206 970475966 736904535 876454988 685690533 708079239 659696444 751773208 210616324 278636329 629515095 993079449 54183021 298361872 476840974 819316305 208934122 444854725 730584619 976448384 924445134 987938505 139615458 457059681 884172537 985256625 780492256 871958136 592518380 982260115 251077755 940869330 266397539 875538688 140486094 849513924 974550515 978752317 471744122 920654764 805045776 973943639 853433821 923916595 77881188 876468778 493678068 863717915 656317153 901625840 285958994 526225095 250402231 963558761 164925573 750581293 295186775 488292815 471714089 481033958 417580234 554237710 954449237 964169908 619925561 764977571 427174333 551572439 544095477 791739691 498034028 751992253 41406238 832748931 226603918 296238789 7971402 313393364 189938746 833169959 674292294 810681928 797427124 947312536 703691865 732798582 990036123 994951211 763566849 884549580 128930374 263526603 648976272 868294144 543912519 961006723 235044182 685913826 872832444 983331572 301666233 845852951 941737739 988265432 848336783 934420331 905709262 950782698 707224586 711832777 816787275 892443915 370500183 993786661 499365581 677018374 778855557 976345098 771990729 878454501 292425828 718205225 771051935 774173563 425395152 727638402 750037429 837325582 668484010 936636117 500226681 704531997 516331227 935431268 274250472 987397268 381507298 681013927 872490263 976422647 997135418 998553999 324574747 480746626 150240020 817321226 671155139 961132863 162875724 440511606 769924012 914421361 30547746 310842062 696575741 883020946 554085682 758466336 175615632 738931918 117801770 540631144 805155299 990122254 426053842 529460508 598317651 708926706 827429430 947095641 275781190 680277777 97899812 591632017 11480335 788417424 761396584 836094257 898688055 978998593 512732985 573654168 430045063 702857866 642046350 989169502 922903743 977122528 687003118 815312864 295683335 588354891 104334472 521609634 386760614 755573175 23190469 819113786 678585990 885953295 890387750 951195267 560830725 714622560 55723937 350229333 464001090 707804863 307854764 469950970 63670574 766213644 437530142 494730946 451966982 678178511 727733558 801596029 393479949 969716502 972373616 990293115 413115149 610099621 231477662 816434028 289536767 923406578 314744723 484340485 722558265 846203634 84809573 654409854 384444320 443659596 525638769 658864509 820480626 977431772 695779193 962490171 638615 288238262 318568619 693339464 309078345 774885007 648865130 966762861 456040492 974935518 922266835 983396811 754965827 899068185 879278434 992436403 755138296 830389923 196315414 767734410 745059000 762061511 272262909 487753157 993013503 993517027 734869763 882669701 49071961 985366745 525910011 926025096 389147916 880450448 908675135 913397721 594632648 698664937 801089407 931788117 99981943 178827179 971010926 999877200 690637680 986956646 679265914 832911339 100681825 777753346 411438256 552066333 100865680 814635660 696405735 930324296 521284329 793279669 932847667 997300565 307414145 750072473 822805207 842375315 446041455 535722729 832636926 873613295 221314535 725198520 720290504 801529311 296239258 470617524 945779132 977726483 101150950 756820479 191786519 652676627 988093444 995818226 189897827 329804411 595126759 915557239 458481520 881154117 218831563 319913170 459769233 909745062 30041355 93137992 232693373 448832915 865954763 948517184 169843281 849532845 629544455 943683484 473673790 908024711 725979260 781961657 894645228 934947309 148861209 914877327 79314971 282277691 516901271 996093285 211752576 936061598 935158180 975376835 118594428 206086597 644564317 915259257 464807711 477104586 846986751 899174242 959318888 991409377 312593303 386419519 600637586 956099059 962443781 972751825 217439426 635785902 798477799 929693642 821085779 911436834 875022939 930705730 72035607 881277853 322381102 898698349 983806682 988199511 418293542 473349777 293254119 612501037 469274261 822334871 7971628 409841507 847967868 903796350 341677542 423930142 207850470 854147211 860076517 973767374 977370699 991779730 107533494 831394757 170095267 700077503 804824389 862781937 196231512 253808576 932624063 989654627 357779333 541593420 533538345 906493955 898358932 937930502 32121592 166690888 797762626 827114030 454584034 470886035 875824809 952209306 541678280 693512811 710439402 847730693 154707355 233636664 127318682 637958889 549108680 706726907 707286154 723408445 109444980 868638768 503088813 661704443 32659351 647740513 715983225 916835219 405584966 532677473 64093595 144909913 287283873 545481538 354871881 893580839 534287701 844027145 953050432 973282107 82528178 814575393 360532586 938110580 816158258 985282306 532378897 589179205 338011515 400663687 448046158 931391654 146293478 311815310 785972120 877425801 938666615 999072038 211447661 619939016 422343237 602213203 773518276 887944870 415866155 492813067 660590719 945625191 769220290 800168581 677037109 800389296 561420435 622830404 55202892 314963893 806418093 892598955 211577249 690435466 349236314 596632721 960145007 977398231 990308171 997572567 987892039 990170748 768215327 868991290 710599759 886724371 792784732 980048255 675432167 861387655 222669909 749602492 737756 256333474 206082771 500626696 797513825 840045214 744666681 808536332 432707836 587000906 315297154 587140591 639354632 953393170 454441026 695921606 468692520 489184208 640914527 810462497 257569755 684941193 917729000 928674626 347521985 989650522 259022429 513282831 889070704 988581282 698012649 846680390 716510875 887848275 2918439 75922409 949788262 981010101 17082042 406862607 591664839 935309629 415453336 694710257 334684032 596611871 965021163 979991808 622774066 706557587 887207448 913847507 214065689 486494308 279621259 454349514 799543519 972493935 47925896 817398895 991355499 997101952 126573525 929105274 43779987 857040935 512114589 581941060 773290650 937135767 44203962 189790257 178486664 595818752 557810435 908781136 86502094 406036462 756857015 955250129 378843196 632730743 417490301 902056399 519357121 611392548 935269926 973731276 442459512 982050363 21684863 620510666 736309559 929772034 846758876 974406968 594015128 596674133 796160316 814504962 860622830 947216618 955025689 976481423 112258854 387835809 911904953 920600873 772211168 876260502 80191920 983125914 899049901 957626909 973590782 981775330 179127060 573168109 272361702 893152421 117139801 414661483 693083174 870064958 846559583 921379837 755498373 768727005 969053401 973645615 339490266 672765417 550572041 551525195 518966839 583326757 263286756 984120293 590480200 611711957 939794083 953410321 579095656 726640319 176888633 318317611 748276239 799504797 618393836 915298259 512946890 766435117 476370303 821833808 618870746 869796745 735616807 934687492 935087632 940647307 928846420 967027577 881790588 953569018 572898839 769907970 346885071 892025649 432182822 652955070 421515678 688719967 344081592 824397729 962269811 987843607 584552065 938570339 320805850 412336719 164626942 814372146 211483062 651394015 632771464 677996743 406566459 544164766 351606877 995724545 326697000 834879911 537682750 564979163 56616756 398323089 451377433 990435972 126198834 510020085 142571461 915065514 539238602 990458584 378530155 966796606 662600402 672042778 983557693 999140334 139430414 295348605 103683930 807854896 952361765 982915121 28208462 252886831 958660069 991164367 358244821 601074220 966806989 969873139 305191962 848826964 561889700 811731769 466174687 995547925 758315852 798075173 799381057 855344940 3832683 746519041 512212908 571178149 538024112 621394100 583063146 950592579 21420991 44308268 326226170 573035020 550474178 943559683 622350062 911739068 345959463 688250646 723196052 968498010 709275303 769750204 991540513 992100721 491194003 842280786 604944814 674758781 698893101 937234323 942247996 949063529 418415718 530477381 446962478 912899593 581991329 917290472 415359307 516801501 189999833 441370365 619011462 987471595 688047695 821734062 960973657 973020522 829398048 878147781 391746101 943950795 372632687 378793044 76704727 557015748 395919527 564130166 579795903 760713509 970767336 972007886 172359203 898903775 229675801 430848567 45122299 541094237 335177744 979224715 440298310 977771581 602516248 686458915 975635478 991523413 21299337 676758188 114659514 392588373 577287443 935478937 412974943 467528677 411674179 436822165 60065516 503449780 463029420 696708995 883777891 977444113 363604884 903384120 499865165 909621587 387787010 540042432 546369220 757036638 627229467 724705961 744379351 833262070 674942699 898006766 296860381 402649254 350476911 993980353 614991503 670645474 996638828 996941373 586934919 763738323 825072421 920180145 318117955 794059872 289847449 448027352 759613931 958448336 938962197 961892018 367497282 589991410 676441138 949743626 60773754 799347099 592383274 611396161 253553149 773965074 581891829 610107646 97271670 353337097 331198501 664405163 161723457 887893971 952521926 961852854 424752782 959822317 625584660 735920004 146785431 204730505 62288260 211083875 509109636 590441775 755902374 879830414 857007001 994534202 781231838 903884248 826355981 828916254 279361444 748248565 184378771 702225673 169565499 451664985 701587238 993284258 491622072 524690213 747944035 757430465 384433923 996033157 448502080 995728172 376623914 735173368 859210664 924773385 153615130 162133871 998013354 998351051 199001102 646620690 632222642 722736206 396972761 694558267 809777099 818327456 552025372 845521936 310064565 704629470 597281652 880364928 390174660 628154233 211698348 602902286 275322688 323684662 359156665 452948219 215401824 748506326 513195847 664244773 600739512 893569084 9263907 820750611 813895343 937758314 534949258 548023720 544876965 711860970 12996824 384097069 601837966 977455492 282255724 879024240 460772815 522340651 68160185 535501098 983364509 988005326 50408536 680286599 118526574 986185936 360593672 695602382 922419377 922789074 208940025 240815545 75211003 197916371 628845538 669649063 821017894 979594434 100870429 963405659 494356414 730587137 768979889 983037260 795852332 895553456 199600390 483264063 863252852 980096631 778951019 800735609 624726158 980046356 336955315 587802304 491988132 684763993 299523736 631949992 575138823 586814116 944331841 989321677 684171791 906706389 325377753 371679147 76685923 617053036 316092783 470296002 517633190 739839931 353955386 833466181 812513796 842566624 656645772 794653601 951441617 962048945 806725822 910467658 787159016 806481806 908851822 977004154 141654767 142528297 241425666 636130484 596985263 598996358 384920292 413727541 396528455 680734391 214048114 671578527 851411071 961154961 638472641 861665074 90236047 864143065 30016517 336073453 984920795 989173403 904357622 961241630 169585200 399850768 22601202 610120189 969101526 973067357 666265452 738407789 414151862 505905480 766437614 952940587 918438184 956346574 703386035 814279065 919241762 978279815 806884831 880009634 199405132 449877217 991187332 992616213 348024809 763909456 454654082 804256884 688103804 793662788 995297892 998574794 368146131 920393688 994113444 998476661 755622330 759212991 687391910 845580082 178870282 660163798 698438863 857426427 855135139 918915576 605850898 640454864 543637081 923564481 825440459 940888345 565730343 791318043 707621939 832832112 93678747 865970618 501965908 741040243 742164966 900042031 612363121 926469132 74166186 625265160 72824093 247700387 127544983 780327028 19683498 848232790 494147679 774933823 864541201 902154948 650251327 841174349 858915390 963826613 592169933 678132683 643454458 768462274 18978969 373185116 643460371 843157948 216633465 239515314 643681195 901883649 504520684 944635861 205319728 795423102 287680076 669116756 160099212 549212630 380658206 920982331 315499779 943484598 489963958 770200189 462236249 754134308 614160545 679545962 648300106 916635676 523891740 613695484 54020081 358126194 602321566 951651716 444914945 654602766 210900412 919042920 5782972 960205462 112044291 123505746 528311143 605228367 983658887 994664750 713773086 809065419 799109885 838592214 524693778 649192801 732748823 798475470 130098005 870931807 531199745 534519153 597827274 785763098 776737627 806156391 125221551 215852995 26992317 78901383 168333221 314924140 406345231 840754007 821804099 872111907 702662158 871595251 902946235 923305665 139264233 194984399 655260352 914067091 80763780 953602658 190382739 872625882 767427676 963005657 876337693 961567652 916618714 971375583 64406030 815860677 220256097 789128370 348824704 519646837 168411534 459832435 56280007 57588779 399123057 778863588 387658201 988027178 616004965 864452215 992976537 994818056 934252540 969974376 991797234 996487368 269641922 978271887 7017075 270239660 116843616 915489200 513339461 883055874 121596757 429099124 32583880 311589720 174164780 960011582 228061209 273412112 67071731 547093637 768050069 784692978 663474834 955448825 780957322 813363610 673251731 798276433 838881 644797631 479567670 817368010 191374786 590690673 20497797 851649015 763239883 981446874 311688844 722555173 619299203 949190790 329209906 980176017 751274108 792639668 448042411 594774224 188800126 834632466 735270700 755598299 68651988 481460341 12500427 755833903 475382068 541134135 991254607 998925044 827129064 831779649 823901539 988289521 421061519 507956187 662751017 971617126 427160191 998915804 271439687 987104833 101851445 966281955 778512761 976047197 210004013 903618027 297703670 465466538 971565878 989885433 930537890 999836748 160541355 450667087 82106346 367242441 942690789 981417869 661095717 762924274 92125729 821987518 873411894 895059168 441137951 765673428 480086712 759153395 521722386 684224092 771858798 805355168 706493675 983371490 772830917 813479240 549586264 860023011 377384894 642908066 492821408 869224403 353651863 638204377 616395904 780778235 645678138 995527125 931526551 968793184 50826077 858360911 75415626 962354015 336519334 417622934 610687415 844983813 544903717 954754718 134675034 866519488 70052688 562479659 137440999 569263148 677917605 837963351 707417089 934656228 406536120 962649109 994542630 995496349 262410256 840092403 228486886 775069713 307860759 785570881 115621976 372854260 754873923 972835187 604594614 619213537 319985380 878449138 444969785 463154341 133644603 549802683 288505529 584021869 691877746 693571529 650701967 914650494 160983516 407698066 540435432 587010732 971712571 971801933 831715582 895100258 808770165 863964226 584476458 860683514 480375559 635500019 81519409 712041896 709332644 766378943 546340953 960055614 174269069 380904438 645502365 830320619 38453695 887902644 256462540 684092050 856371718 891462361 707063217 988496112 695038962 934334931 350796411 754241757 914289591 977813985 967528591 978458915 581586282 670121337 126387315 610453078 383050411 521365566 468471451 987264134 491800954 967499365 859102459 977691432 812011138 906726213 520700567 947483587 5650214 877957971 860435063 867216059 334661143 882133961 43898356 738724906 909377318 956942475 1437094 623945061 973527081 997973967 288826995 887435533 926154598 974153891 981560390 984271211 340292868 636132406 383043946 795631017 180203899 506190675 931872846 937079136 210421507 368100755 95551296 596906240 475127552 698343255 991428533 994360791 707508806 878805560 584084315 685428183 824649469 983527530 204846975 289069849 232882576 353366984 821519621 838745478 483428656 765896053 938461919 991582057 324776464 690844319 444247006 672342059 301012911 608065250 18561041 130269317 658846836 957253196 357268664 787858132 666889628 702564789 457934374 735789731 244722455 482249668 525207158 667273086 694257481 756664063 235327641 560615198 674933019 771300715 575669593 592874733 41104834 442855469 904148898 930584710 220479832 581508223 766723668 864132303 800974505 948234436 784125969 994887384 420976002 709921129 453395714 707027178 549895536 851483534 643418243 791192694 921964000 959778436 17385601 745713119 264284865 875784021 818467083 949904187 293459602 411850699 1893076 973131396 336168812 639027153 781446158 862448156 223721777 386394919 91540882 957285768 854812151 884148269 592215573 756897664 224542166 621333734 903677162 994163541 472997532 542231460 21339762 602704483 23268975 854148450 278893144 464880520 673694350 898913868 401951072 409051227 887984310 990978056 916761075 993185977 264010619 405527657 31635334 934741795 251675554 809823948 857101724 979908146 530808097 569936661 597967064 971496526 156458465 343725459 398112141 689927136 620578782 984702636 665354304 942913743 143959107 752536280 420018258 799572018 297414868 723187071 964956250 985138517 109056737 854107566 988244633 995226424 618389296 930746356 128141647 480335547 63474826 692911000 864835478 921396558 4519135 234727239 502624604 664437292 82567119 261571696 272476982 648141629 534031183 885409984 204561062 292554487 400139276 966711417 661605218 908140467 627814915 640173020 509563869 582668672 999585545 999838012 713421142 763411683 262452289 509189758 377372589 972744122 909205866 935516434 985741493 988563813 633159841 905646384 433767611 996179791 857363857 996241477 289318029 951861577 361481953 782792428 208699608 664733709 636859956 684580953 938020843 962881995 361404188 514374269 811033545 832798426 480800235 580705490 682056172 870188910 480920340 719391531 128653749 378011340 66187537 881862285 857079341 984777936 218168227 274003726 894428974 900537142 73576674 580601220 680730984 910486599 71724844 848758704 866060685 897049547 434569913 509757115 502966658 916368779 657794599 915097913 565912023 852565752 509918055 648877156 23666273 506011964 687331165 988709224 814200162 833510165 461344624 964608980 42680238 925618149 194383784 910866294 761470486 981611022 827594788 881656522 31469305 630498719 586913479 805465172 725544834 929159189 729221530 802519840 321043097 722477869 470815570 842970936 675638189 847239156 594235244 769127321 536803354 804335139 356308615 885466230 898450598 986080589 856574963 897103220 224034100 348198090 890515365 914905532 415030077 678139449 794315032 811387318 854232698 937987840 279778661 838398156 89460908 454739160 495498808 589517206 107385472 733786452 510637129 786700583 886123452 977889369 150765786 244820730 554382178 894052440 987708006 994717981 895241970 911251196 492723337 808468793 622668779 633825764 159695581 783324459 775268653 811124091 654164904 943116304 410877243 729220217 227271966 580387763 296926660 673361885 366126006 812586561 169045095 728741389 711385391 752614502 355459627 930161427 616125291 674848385 879198974 913699290 878118577 900727526 653439860 762397193 918635843 974901003 481801697 971934682 451364834 877648021 16248907 479988614 70621397 685908668 197357052 912584090 763513187 926151331 169325016 876859734 836821736 948004020 456417274 704004319 880887151 881257921 600830572 712689292 129698951 370631619 398100889 548781390 231341148 367604069 271268612 398699319 330174855 746721887 389211961 445594789 66902428 559418854 885564043 925781089 939632732 946802722 113404331 267560937 367138380 884168796 48444841 836547446 914254406 963546604 483563458 802000000 299025384 867001575 472368106 905386507 530088032 596816421 988251804 988789025 961737171 992481598 995932641 996864377 701190409 840201684 157480265 832324621 687449670 843956946 587957093 994255286 487113490 825231775 287993165 723019743 425210501 532812485 449717628 777559779 726787101 926188076 16364751 581382277 581440890 858882000 917271696 997927586 304590833 833213185 201398369 613964839 772572797 982023874 49418087 81765179 198454066 347444219 101187272 777370053 516196935 992643437 929659108 988687779 841719518 958206839 76602962 749657412 815079726 956426066 365273372 665765922 266467342 568115338 579873766 799107721 495533922 787063387 581046684 823139505 1035759 510584895 263826805 287373349 7744162 789782276 850494467 860297156 315181486 401321180 157273263 593458101 844759953 899904364 316526522 448367145 328861335 498994437 135056916 333568993 498532681 715101286 421139228 452819790 143230628 176047565 133639433 928483157 630059019 730917082 616080540 878311959 29484229 155530150 645469943 964613877 894964770 941774951 330680948 756701473 330260121 818449035 213948659 983684045 476213447 679493657 339628824 830955650 708483848 981664372 461397520 561858087 535353341 750807609 44373315 192315840 11037057 227124890 236174248 714756760 459735743 589950084 55296371 243943151 680419886 935429449 411126552 991148004 45958877 696706232 328854096 740408981 553979562 955024190 96629329 930140270 297363066 779933397 49705883 229636247 796800167 984777367 787200249 925231685 504295953 641413206 637936909 888391336 894335497 957561539 328396979 999530484 135778923 266739544 223181587 438305106 846235485 879870783 949592017 991175535 402911751 869885461 935402067 939285859 568734878 776081800 559743463 594841127 421105479 963728287 104612238 218818123 231916899 576970306 491995777 789253116 529988612 926890727 652314022 896565043 724630126 928193866 616093239 663358434 283099930 286242207 281006534 962819957 232991248 683068175 179781965 545658119 609542549 643136517 967185781 994385931 872259729 950666320 594773723 732494563 110164310 743749754 628881526 865083303 397425912 926993302 339474224 345925236 43241723 293132117 491418651 740334497 259702746 335901598 704092509 991046675 329791428 356517440 519893219 521880677 727844899 874515258 756732330 963510339 720304746 795175247 178941938 570665098 927533431 937996953 930666544 971159722 988832252 995665420 496923259 543937335 344396991 390589994 711467262 792754218 488107018 638092425 760548421 937034875 412602427 973946344 251991634 441307624 515131882 611978598 318530400 470722853 858415506 939835418 753574066 842541067 621582855 855626582 816221853 838212113 154120227 229414538 534540920 940533534 239170148 519865007 420438930 990273677 227557691 899293472 196502837 399543386 709159010 733895704 960737470 961262996 136579613 654306243 499757992 959989280 652066140 714040315 52334684 169972993 335045079 576206648 837297315 945578285 610002531 862092364 691894896 939348253 26367380 992434657 296334075 315860342 353879996 829875912 903488045 905115276 271899187 332357911 210813259 320322207 624819056 712677737 948114283 962291164 478173939 789935806 656263448 919933540 952609851 974126904 173457639 841509983 442801583 645875692 989279785 999910811 575767185 960125606 255213352 901238547 877707610 958652466 344207875 957571488 548567482 948126782 501754960 545363942 256877729 388482297 67627832 302245262 506842386 535759251 205837204 946395754 374129877 559889560 874193652 887329569 381157496 626087115 453406448 661802496 782558012 871378191 928809518 956558214 345396928 417948103 387480325 756365301 262059132 585458590 687475106 985018673 974212475 977372335 653910805 932596661 585271268 794822535 609076445 810317708 725352355 970349604 595637259 868068112 128579892 641332702 751246456 923300106 337500639 660329627 863401649 896285344 651893085 698904180 195305461 423133478 84442534 122231389 990527803 995311364 657781279 720242456 318247578 519840645 190343467 414489246 14684218 292582896 817428934 938484272 783223025 900334740 452090261 876479324 95665014 296698311 535017537 564463999 62532721 773346882 80000958 929672335 524133072 835566551 573134055 603841845 548475581 884621796 455903481 813914074 320719475 443735340 16468008 478395019 828931392 964007426 917809807 972770739 933094341 957980979 789675944 828111299 45703282 853261564 421846771 980817082 268832040 542088530 361578525 648857311 924158303 952201638 962795886 991370432 399889863 769310855 799040054 891369267 936606287 990961079 477459067 944690921 520311538 778768166 858761671 909532741 143088132 337630093 726480441 898192342 800276701 948411123 590932529 783209961 775655429 782729738 506980897 741559140 216083985 701443206 681940768 858280465 804323510 888817180 820524113 934827437 913170685 999962665 561508854 781835607 365814755 585288757 803894500 939702657 575501006 849899809 696538454 888529121 346593308 909384842 981885698 984246485 44263849 210741926 549157417 836687998 390484365 950584118 48693476 914864127 56961782 521706730 611016 191426812 410576599 456221803 342362824 599004475 987871661 998143313 733438199 882612812 847964632 969017464 646021267 898482191 193325240 438545522 899640851 914277874 529759516 858726672 769626955 927898701 642996733 684092753 629078126 749722042 7224845 353159775 684865025 716063016 86952999 327516026 560984347 804289138 493551446 710016473 671889346 797817548 614698138 752904507 314182348 483150826 704217967 955888330 558643527 943116748 322674092 626987605 507218785 744282021 921805846 967768762 547954396 939457161 404256256 502808890 903580935 960256441 120648752 652149426 140762938 359005580 978181510 981984859 19268668 140548946 954307348 966873682 15822293 106323924 460467361 617503862 417785207 827774433 406640179 480432879 935172699 945194357 187768619 679531550 486887658 899461514 884724986 901245913 607437291 957912725 822519083 832530193 277685554 605761228 555349446 754341585 58387544 546525195 826367947 917639918 632584461 766915830 772737343 787130385 249946590 615624216 491475284 823064738 396500131 941653642 787501015 827602493 867800437 975414893 69990781 172286315 949002779 983187418 711305783 877193589 116543228 449135681 770156467 949217171 204672606 420422552 903574627 996484734 702112069 983388267 168736594 727204908 935970055 999122275 928188316 954508114 179814660 978278567 97972230 859370554 594925577 868551624 965607071 967787960 510129656 708582720 386227863 734042316 836070058 837532492 431476887 633032155 962328741 989647754 665177680 920556936 242544003 856975103 88690843 635233905 538420667 896724500 623050393 769972647 73863584 899893533 542845821 921220772 642587279 918030459 886557960 904167980 143163599 916356963 369140979 915972724 580295417 974406744 690118894 822629960 677650819 920916469 471494949 621121616 979714802 981477768 1574789 929748901 473087450 737332639 576770936 785387825 885477607 936943593 754350584 890856554 145272932 797795382 617625108 680829747 709940369 778424523 205667137 645148463 533329225 580735372 406130145 957780105 176089092 816169725 715502032 763082424 406944538 926434953 657747025 671716025 323166018 421074064 678829308 866074581 676214696 860060684 972922885 979073236 785561494 909039526 158302815 422619838 311249715 500096852 322640040 983922973 935907667 997779149 591971466 994398274 365743680 656347320 102907317 151447388 727033235 755005500 712089899 887448375 527277854 592929760 860005632 953303574 432603295 617706496 970504700 973004143 122106770 590210376 644789625 968451713 323249763 384442763 953737679 986365790 429982653 463632159 587686047 769517447 182648563 641354168 744910478 958922788 392890941 602358825 230644084 595867505 870631900 884511469 113241046 986580722 713669241 767290966 906888480 923528284 293990019 738716674 212608213 285402128 854568342 919788452 762194197 858387860 919511203 964614036 572970310 961062786 987649321 989694757 712346470 802648169 163301521 276651677 440137590 606719801 173627436 573055714 698134666 743276660 481200816 747387714 882638829 958446839 182510995 443439099 737092753 774819989 805710200 859689165 392017837 433186436 147048627 152503155 881694705 979718585 66561118 935278967 619749534 851714434 300467807 653492010 36160528 242535324 948831092 959782772 9132635 118208454 225802674 776465033 636591941 985053528 353944474 514081366 364519059 758442422 733377194 773965202 905814343 963587268 1437834 214651017 112564598 873995019 294978439 958722038 40305244 645839616 148323463 671698762 979079241 993161520 4722803 149591157 292505417 403533081 400667893 722340576 731141651 794786920 454218951 755913302 865615388 954418545 898299969 950346066 800960467 927613893 220546823 900432592 93186714 697685911 37294860 406398081 486105481 920869099 943603998 993612033 236869617 370097823 2887696 909320162 781574498 901265150 771156395 948457939 428253145 727242847 91864338 258913632 112478589 845558722 678114937 923233442 32814813 901708395 412874481 540470125 936406946 993758511 919542410 937035913 487112152 829547673 479555746 596437224 244162041 673465922 353141720 418624390 405378752 924983551 309239094 355798847 589275185 776329070 154721921 247606330 905464004 909632597 343574259 551686214 11296688 741167496 935060998 987410349 192909879 664154466 118787077 536314332 315376649 772392058 16518951 696337512 456484194 647684700 646808584 716857865 793246594 909813836 320182534 488616821 809607421 996423265 520590759 991298551 849959104 884083682 960445928 992019348 473306634 872926094 613291119 652985242 328435355 664763622 892517903 918537977 651469243 863428726 157899590 519495147 435072755 904306845 513801148 529908077 345672267 462970849 964704071 967563368 490754651 966070697 813176779 879755808 742016259 915715311 407091532 942222573 206960326 372270666 816028612 908512830 477374066 795808288 637021816 706772926 976067494 996437385 110910199 463305516 188749996 718085487 844364656 945406666 655976157 912864355 908016850 962226816 721768384 852103440 429745658 852361863 946100120 955623291 174276964 791967256 777302582 941349469 991670523 996910273 22067495 163903793 760775465 844528977 332834680 609649341 872764499 938699168 494302373 854047082 474796469 736192147 773513403 986780106 689238380 726211028 264466998 319917491 635726362 685826782 52208602 130131064 148090859 205352891 381689432 556223811 581473848 650675439 941879107 968353043 905912050 946110174 935980794 970712017 305119657 679351851 439481565 470282542 222960476 295774160 22066042 551673564 745389186 868470605 567852187 985279905 326026838 343140077 407705427 844939459 371558154 752728201 222522213 379759429 805252948 949135060 478198468 950373683 990152507 997233604 101491917 613592756 124292612 379890784 335879610 597583050 264053423 600106733 182082977 856434001 449828099 977114116 123885595 652558776 90078243 417172739 788841881 795869747 943417457 987664518 903341731 950533665 247668561 306209654 923146217 978531201 7174181 392586269 912355703 981372029 458576088 744855421 675783619 853769575 85498961 906202160 121200007 268412879 456334314 556154931 285348283 793090630 291310117 740906480 611738653 942473446 909641014 937389030 824338899 836536216 199299111 914986749 592839586 613045624 952226662 991864017 268432709 575022295 298451258 397069716 980278245 980360896 674229525 775982330 180303853 591687237 720582307 769042275 531073820 756149213 325305757 649722002 805983507 988767417 741567441 968398922 493487072 868735903 532591124 927814120 901909508 957423541 426474340 728155093 721077617 819691430 794482851 871951937 318733603 809850255 66437857 737291256 424648728 959033123 183439042 494126807 184957434 490895090 829909513 915231306 129555383 604274570 286763098 679881937 155733874 338170734 811175119 895769213 274330098 686159567 721102206 902746601 253228484 581696460 863879858 994493690 175213625 739232947 610981169 928112397 820709292 945288290 55130400 323469108 828507608 924897990 960047078 988903632 580653776 708220509 386565738 464716306 94294024 125608746 998421207 998785224 295039322 512450041 469032670 842969164 827446535 902677976 687577395 964646633 508875080 540609616 194984691 567609470 350166144 757905311 606416756 921014055 675996062 736909820 850687442 877161715 903925489 952313217 441886797 569970670 415130966 775519410 847991155 853988448 940981327 960331895 391786971 736115513 719909580 926271859 364002282 759781565 576714580 633431762 987664144 993395094 706250000 813790321 327107130 529342097 230065089 404159774 534639812 697973538 366225675 837615624 925398530 988984912 838287366 925446463 507508441 684503009 562625024 977198644 981720208 995819252 558607263 930510272 133615437 178214377 743461423 797728621 198414540 506552738 226146964 429641450 920257059 959513218 881063690 944896455 280085483 770936060 705136633 858497397 332317011 632458052 957681958 999652052 355108548 773675043 704184770 716878057 270662220 799073833 724167756 792537274 307088834 699964919 486509044 700502920 122342610 228950083 812623379 887045982 254348811 347102910 945662928 961683190 510703601 865834318 458969904 672576617 430789575 969461978 723517452 872823480 255300582 595879774 402826738 977918476 819139450 985519291 383817015 667513589 345535073 619614701 45319475 529944138 743280863 840958874 937624017 975139693 265798132 723777089 718362722 869330374 333728066 544356354 328775202 370572136 455201765 483883654 394845656 607951871 516019609 802312409 692978640 846159194 548596963 708604720 888594719 938022000 446321275 939127768 757566000 963332598 504249801 885988803 522386134 919973591 775733970 827881082 279597971 741119833 564332782 839112906 181023053 751596212 515612321 971258363 825212686 957317444 150152013 748567526 387609395 693589499 677609615 974590088 390532550 544552462 864620793 962358135 606057878 813104698 54770661 103505526 181321250 317227075 15041212 78697565 774847869 952252100 151798977 184352380 635484298 889797363 797512032 933279044 930769232 951901031 691751815 738461934 321540548 567409298 861723522 985662414 317441026 726835008 292735658 442527837 278634031 739333943 146996197 355703099 973908158 996852609 412830713 700795987 646890293 901447669 870138142 994656390 686124196 934114742 652938166 886176281 281861223 982945495 791934188 867211226 326673343 552701014 920106979 921868298 67378921 726724706 677254543 866805984 708975867 828955825 341083027 503886816 477559020 669253209 371691658 936274845 725657235 756438763 970397222 996093952 893388196 904926280 683142470 771400515 268339860 403358620 801746369 843844560 801081657 993795206 822001874 835198419 566073282 621666281 344208614 713208312 898829004 990207938 183196194 709763190 796358234 818383044 430628954 478770991 328810305 884434215 646313812 673145972 462036468 799125227 633465963 729449392 129230314 861617592 741315020 952813796 903651925 943455282 749733613 863390090 361296192 939967806 802289496 953170139 20712681 793659253 852355303 977713945 839967697 843017550 457181483 936934807 661456855 769869341 41892272 223175441 167972957 250064588 734482979 803738306 285102867 490659385 531325280 934813003 530547584 948415116 828423252 931439363 661029355 894495615 873468500 938304386 214792428 521141840 539695408 827173039 558656393 864815682 444645791 503944601 820563624 861524585 655412429 989530693 779861962 980429404 19400010 256803146 414825055 961582238 473400361 558588846 460164180 732411081 401760943 449210073 674999751 835432479 904090786 967130796 985973672 990023336 529228275 702955251 626858245 848038283 65447044 779888867 300038585 693305137 982206900 987966628 273518622 847263682 673264312 924214540 311364892 801589291 908485233 913042159 672032950 736017281 136899124 794685251 576194912 804981965 938180912 961023551 786021576 836294304 706491772 856538019 927797546 943016944 78598222 343851847 157496378 672024648 767353266 963488970 919674256 965408705 825219538 834918437 188551754 428004973 528111312 545008950 14185192 137168401 280701302 893679835 61893677 885758093 355002885 786830556 707675388 983445107 350162411 628525606 959823351 959955506 975121622 990528716 830958757 925840024 410612798 584313642 496767288 657822217 475937658 809899904 606589927 678518615 307559575 805202061 16204030 670962289 473975649 880202892 428246189 429550759 935529793 998235125 660399001 702435990 438269174 666411206 805996493 995041215 694399752 957540518 699095991 994512580 85824918 997750417 195606799 384059679 947749425 986926984 306020559 385370847 331591958 359056144 269896508 500927726 999570888 999855323 555486361 765783865 932749309 934284226 373181807 389085496 768526605 853446849 520072935 923526414 193915514 351793459 968067885 994016134 658654767 901066191 37106812 792423823 720327711 937323390 940435029 978694923 136898819 398177921 991812115 999696934 915801732 945555889 240395603 243058045 605184493 860480832 844225737 880067123 92890701 459793424 540500635 785235741 908570221 973499915 792796390 862268063 966109507 968889478 623404929 690042516 430795806 662557984 480888835 868473348 464120584 895404303 582496660 825627133 62499757 915257165 931348639 969770416 540290152 816652686 596994633 606684598 584170859 807891673 797434928 978987114 181548800 463148157 370941869 580280651 706891740 959287336 814358184 937978747 708616141 826636542 274082211 344968749 159450121 722199947 175978158 496438727 339685648 502469526 868763624 938003166 461562405 612194066 333608582 876533917 33527849 666015943 738106229 757505458 95667453 110627839 718787833 726889701 116455925 703910580 608387949 756718375 341426778 682766666 135434730 505634208 240899219 968250855 962735363 983726915 227238414 677897382 722976010 890467757 180819650 919649092 275052447 536736816 169890070 888982626 111731660 274753744 529062369 981612765 478385297 528166370 939522216 994304759 207733799 716478399 582836333 753675112 641353940 881031947 154873809 205403132 139685783 775709992 193973468 269386151 391089094 939119352 131667625 734096070 912614773 960179518 709821060 838020803 114852042 149951183 906304737 963802852 562162899 775027814 171270795 869657206 277253273 645593601 748983856 831232710 27455504 477265552 125331571 482542819 645084301 748199765 715805879 892764826 86924872 468546192 916912962 935245444 290003849 804589313 250767739 471477416 82557348 709430143 112355401 892508206 156764182 563101536 891579363 945846643 824798681 998100595 625752794 927254635 461583710 919390279 199475100 623197219 533047617 856826182 562103376 774753229 460320334 517911154 149261198 623745961 485441655 692235081 999049018 999832280 847028174 875603132 623137089 749329316 79023245 866598105 298448052 488442753 280322681 403584701 664366803 976232005 667763328 692444791 925097718 942085387 9615986 488286440 533913464 931291686 905994398 914378748 210752812 607036353 674350503 731913656 253487604 747774204 147385962 370853876 328182514 936925710 434390400 908071761 660948705 850189372 197985377 475630650 96774999 183060552 449535324 537338474 471283353 756842256 511990908 769317984 847265817 878094930 763381 443559015 370623087 847577214 183660504 999966150 474510675 663763976 387218798 516412313 508803841 630066626 404396177 682435288 886477700 911530909 875424631 959953164 435357797 618139210 52634715 818156779 127515038 171914905 24842146 487205924 857947824 975133115 341480088 627500181 492374629 622794923 977959698 983810167 530630079 536558418 328880714 533446002 446604962 846778164 387185886 996567973 297364601 369152793 235572595 480758272 793113845 824595041 873020187 958004981 189680780 870202242 797208919 827059452 578885322 789770255 848870095 940982192 888197199 922943176 272738354 944130810 914812130 924454445 119787310 198663137 603646122 642222195 853705584 927734734 956972767 989784826 682540396 881804144 59491903 786153808 959097764 963055415 144536912 636821083 723400354 745295748 923087021 997313407 463047373 647285994 178763619 806740832 531044579 783570111 547776530 725502853 108835284 419578871 952920593 979458693 435891626 622105002 465897578 828762961 289620460 667031728 148530848 653903700 104288504 399832921 907036978 978050855 453997494 754904291 718534079 833553402 949892025 966550325 225343459 943822184 596586915 717895851 856334383 978967242 757238837 758815054 4633908 349171859 293744995 722314433 441628444 632892197 608801074 788709987 298454821 473881881 999308436 999698282 827273864 924729826 304924078 429381600 83977349 990550660 626666948 844975087 577502791 827545244 160778230 303842947 404575196 557464514 33638049 589449956 113847246 706114590 700121705 951857554 272939079 778689166 932293962 965163435 678313043 964290187 823556883 996125349 70691610 720197994 289628179 643446176 420879970 876121164 574817474 676649641 585486883 834892229 338157090 547029667 655930364 877293157 783125482 997355695 538657342 990041704 46528193 75511300 400561361 774717083 751331175 971417097 682484593 806297701 395977580 643750030 529563481 556066934 314027825 945334968 395822646 680707729 148820639 620189825 182280652 939431136 239040925 344462368 893706466 951420047 759304687 898683879 195626352 368867246 772402053 883633350 280604404 541277911 740234617 805427998 387722314 981169250 525994786 821609495 430432553 786537361 719768124 886960784 477173133 728352454 909055839 970930845 807634735 848146267 240779641 413007857 107108833 342498524 445500630 489542407 23365402 311243361 1822761 828709345 632229276 738079998 929401989 999359575 829045234 983200801 602160079 765995831 75479328 515223291 672867080 711457516 954593239 998971177 970190363 980512185 623472186 924307671 681437566 935736182 566183448 624302197 986329036 989089485 803928983 961405367 479855305 640933206 981088567 999607586 961088746 974329171 343228053 649453487 58580128 188478957 784683166 920774562 396654592 422512529 759997048 969459726 353498184 939884655 551271332 910701194 860223313 939130339 683386999 757638973 777998585 824017765 727322073 892971858 335784683 865804554 880274665 957947873 372205590 680213288 106205083 491379727 706779750 837829737 556914693 782834255 110868514 386432226 754167347 828247055 433658132 936700883 708064696 905756565 866674635 990967625 404292285 759994534 828052980 902013628 746603525 885111897 259620933 896070300 985372616 998531250 962799731 971972952 606157659 660221750 109259962 218540802 1286437 485245959 966999986 999674355 676335558 892548843 36257267 321734693 718855369 953232812 394493545 885471674 289660774 397838446 384356840 525587685 546579387 580000031 707884519 913961743 356029957 573103916 591137690 687108191 641765756 681034798 525657192 804065478 907801494 953961084 670589773 862051968 144589217 801776340 51581465 312900983 417293930 906876954 94500685 946910228 299386996 349062668 877603929 945394117 349313652 578621406 624890335 995186313 267043775 731469438 210693917 253994972 767790015 915689899 613726824 924509815 861800314 975246023 447279064 774514507 901486897 932765453 510708682 762635821 980090842 999345910 279174350 913181624 932954831 936276574 919532378 959889987 756523785 999407768 472948642 730428832 350078446 952566799 296579712 424718962 135177651 683451600 405045157 576678864 418176989 448719648 34202277 929943499 931940500 978228011 198885877 567709745 937143891 974195160 964483965 990394114 706847453 729665974 447843889 916950205 898036686 926428333 913338755 914414179 917857035 961407236 970391933 993556223 435301651 654604951 516751692 784330733 667340593 879086627 93266543 526751179 980148236 996242651 414745808 590770259 879262198 959282573 544290377 788798902 350802758 704349552 95113692 865838043 654686328 969928957 832440448 912336349 612177632 784369481 17699439 131995740 871792092 969345873 140261040 423292585 913934333 934561142 794624045 825426758 789432025 838400827 649588221 759283277 201918419 735398958 161475795 177633042 108413678 157617960 638992678 768852285 885670068 913533727 428513286 446050432 390237497 534390759 190210821 608117250 932710553 959354077 543614754 799114147 380124799 436570573 414394666 735766615 906123474 989529022 282667471 831396330 121214441 140609657 718635080 727110216 421174685 703225467 783688975 831195555 231476672 619239895 869740655 926631388 97226623 502985446 546600582 972838388 584127946 899474982 191184881 853683103 667881766 970977824 812628687 953349546 86622495 681811426 175946677 784965879 266171141 553951603 899449500 901006116 426606672 921619913 622008431 677929074 125759463 785913804 439420081 621510887 645559054 826936196 41768794 100906254 303666660 462985717 460898253 729082385 977225861 983557284 565503189 860928709 875324710 981488353 15761084 425325387 561467813 837069299 473913788 547616691 313419393 922182784 47830737 344155379 527787999 644374592 484456702 787945501 631460488 661312571 124816355 438309857 766339770 848042252 265101263 933468411 196748633 649678551 678441739 774945213 714267136 913773520 422339685 753947988 396437177 819804896 31569476 704620687 865169952 977594506 420030786 485707469 693163954 969455072 997823631 999578554 551751370 883614921 336524327 663065606 803616264 947576638 823835926 936457282 494963712 739404089 4896077 293837321 5608056 540224078 23299015 225752859 645664192 713996788 403917405 834735223 279717336 577065117 135260627 687728384 863688090 893262057 162961833 997857853 835229630 944788905 355094550 521416577 354314490 543569106 543866633 887442021 746323673 945823048 391142110 862234463 623526525 646329264 662810159 790580273 959286127 999212245 785988550 964977067 464019678 638986543 546940693 777711661 763915416 784713676 669719755 851946493 434296629 707921948 738364134 959644626 197259370 338171211 238201637 528469242 253447667 809498046 255523508 629206339 760726777 887559560 237175909 519354712 630811778 857717832 169854348 966850756 713699609 750043001 699089477 894272348 952337401 970006641 418510937 976312197 173852519 622006433 564539719 830839637 899366137 992088660 760100163 813428924 724728299 793042794 534181548 741195358 525650506 964560560 948659353 967701292 249461854 258088784 810929042 942832350 46741 230062010 883592366 946214082 369801298 412839855 623820804 768112701 219062372 605095283 784711199 809768908 568417202 582210063 477702680 667340396 235859452 840945451 176339934 435725537 426750599 470322670 463129528 691456119 625931950 935883908 565093880 946972881 526739186 985360755 176062047 838505819 933032053 982752306 411047059 888900376 260889388 978038227 724118956 827157343 859554607 931989638 126548037 230831040 325747101 432772375 711381800 901103081 188932087 393565227 852985697 904413685 24121093 160106964 844584398 882131308 766484884 815277975 379534683 867470856 583050825 650282312 35995150 385161256 849690616 910517638 29941212 988258415 556425966 916429376 8260487 618908578 206626546 728625072 960907878 991795788 999559293 999820330 194852326 521752759 223297782 269876635 534551611 554127073 345284138 514373480 919561514 956973731 779571182 904625574 689256728 689814520 729816402 906848647 821576564 905320777 688488504 981350360 155776383 950433570 641056625 917824320 224225351 385570240 312928707 549419586 436427247 667511084 524074433 682999112 625434750 893380135 285788867 680906005 756661107 890111542 470329127 746609199 395554097 782753154 205301439 299929775 406437540 791711788 483832520 831072405 420017800 455991491 175423231 446250478 193235895 254161694 940367505 987582580 504970536 963377596 587219403 784832150 551954170 662339091 508085307 688840202 620233795 881009820 433165208 758537193 411021334 415767893 290818991 978345645 954801699 971096659 165169372 761939301 775905312 901997803 117423051 142629160 554154838 607820711 218206468 516657056 219035225 859480718 248133065 722153805 798692421 958323570 423426145 791174474 63625217 565747222 260150817 985580307 277855476 374583924 539069242 871340922 193202924 567015472 721217412 871074874 753632545 801822478 781505812 956200954 698982045 813200563 847627386 854816628 3875181 53151177 854859891 993314813 273040360 441675514 482627250 802781735 382490762 583888228 82416949 968163363 519552010 793458035 751677503 805333286 868142843 915436296 708966245 798368244 418982358 492202274 67178665 216449633 227548401 953385986 691869843 876598554 102795452 589054310 695395415 835220417 176533803 266731109 529223865 964503373 765548244 985195958 897595808 914677484 444591414 848156375 189390603 982359463 551392278 898214392 578046254 893848028 37443841 861798328 755871315 950784701 559457158 757501232 43684577 464619609 989011047 999330869 637078955 666889764 746498468 754344725 443851184 491994155 87709532 394121045 132801526 994030563 510195985 865710371 666045679 844854304 68403468 202509409 157595095 333946477 333637277 675444851 627855292 973667873 738793786 994419322 142787976 823741624 138807127 983099544 844931206 930898377 5234013 56010352 726564933 821054742 634904817 679223465 234259827 729118154 447174886 781584033 683892657 954592807 33622039 778389590 548457969 983983966 476493684 805329341 714085502 914519188 932825899 983626537 911513667 995683987 956248087 966127990 294781730 664845694 541813922 835381433 819751367 941984962 510586451 988741140 419032372 965128003 338540597 545472323 864461289 960072684 670622243 757944597 264535626 373710705 255889565 435257623 401504004 806108698 937223528 954789576 647424158 740568394 891144330 934231133 265116260 759230303 410625064 830591986 102143208 389078638 837568555 966324761 109184564 801754439 11467624 440851800 736624107 826782850 487460645 674812038 873482349 912289202 334677049 767069809 49164891 627668294 337215798 943442445 918753062 967451857 854040419 889338739 435378398 520780887 456316114 730649990 579995256 809984726 377895743 949236735 252704370 798551387 8626965 95818618 294225752 625715488 871754052 979176550 291757829 686579031 200989318 765419066 355433418 867057239 676694164 714269621 292109487 690471435 339602576 969580571 174242284 285723130 123926858 849379218 908005549 947267611 100445837 649821030 855012481 877894329 806691830 817190577 518634792 987541277 479738691 620387777 331684554 608016057 543280976 911887625 887571820 929382558 253211658 371854295 521264523 995511167 210824346 560904231 434257330 934928116 737932120 963099934 352548393 615432627 939014788 981842646 654734102 983943936 806019675 867078297 336591371 522729169 443281567 516984447 880078880 936056345 923706059 923953181 529850759 678354232 736222252 977334006 888015430 970248125 978377587 991703245 171132419 889371757 250047441 504614730 519907169 719892927 795035683 978083394 518902992 689799642 887144876 921646055 829924843 867634889 826720876 837270341 629503083 643046353 769753399 853103597 617831413 939552140 341406622 730246737 542790691 801061824 367151865 835469000 26724549 62305710 911664537 973594572 31314781 687778799 268066437 994407284 728353659 948687485 622590981 699433966 705889619 714108109 782716733 989324780 892491558 959435326 207005096 851064360 129493312 547017409 572695101 802327825 233238397 705329928 563210613 804003046 966569330 989589646 150630413 515807868 958922251 961191111 8751959 382356148 598116566 835689706 410302735 802216166 721848308 874870698 962282883 974320543 441778789 759236367 781479757 962242563 382295510 868257392 84071839 583602228 606348037 695186683 30114191 474603363 667276158 690609803 411147953 779434275 317217976 853236134 774988677 981848987 454184827 831517916 234932547 538298893 639120678 945539251 915699539 943645573 674741392 847831496 466729548 614511480 603474511 612005609 229323272 369809767 734101510 837601068 83502755 450837416 839062156 993954774 454684373 588570503 147494723 609406598 174016219 698579492 382090579 843736107 459278804 653837660 472688228 710980996 211476781 440062128 236013397 870920789 491026018 813461624 911238830 930741233 66887376 88998452 713519727 718455709 548005944 826988668 627028312 853795374 550900776 727597762 123014326 160191418 699365299 829317845 73225574 763924187 926308004 939318923 281187060 767773794 183548744 327525171 515163898 858258452 635632451 802988936 139794729 860022073 804226525 978634852 915297156 945198035 757382346 859124017 538134075 835505245 225589883 876272758 207488822 817289120 617665204 883540307 867194481 916033864 870967415 885158232 896870014 988505154 688497016 821303909 747955585 856948703 78880576 117046658 367209916 950895258 13706686 97215032 876290361 958832263 323058369 723103675 864285976 903707554 748159393 790937393 392526049 443824695 821625137 888601027 944286229 978891166 341469457 800450925 269851112 345532221 911595595 927692744 340540086 468215927 769225449 826598031 287372405 844324542 373078833 965912364 930376175 938228590 392598477 556753254 333968651 504605427 153727269 545241127 312762113 887310260 561033250 671269222 354376265 652744348 187107346 998193523 888866805 984310410 206582649 575846663 686394590 872706703 334139039 671220660 527678519 589117065 489335388 769940796 43539543 836597435 922630882 943490240 785811212 786546179 395715194 695822196 360975225 449518538 997310252 998563349 529464663 649830401 235906398 689842922 404214707 743791659 818215216 948645813 334751893 335757971 378141787 550289479 500635733 799495862 494585134 837580790 262916911 946116828 92400941 788877049 591783874 664292497 873155397 896386687 652736079 858700682 310747630 700743297 14978218 938775197 510289273 529683485 259541785 692102978 972326542 998008093 761406268 874696454 963373682 989042837 877672524 980122474 582136496 697534630 546178319 674957908 179482075 642957122 404876700 625731098 246743137 435786353 544239743 633416981 884670078 939108590 431664335 845857681 501522349 866158253 670801810 805730014 797031777 928032718 483568735 768683568 627756552 700060066 408681234 759098897 247640361 536436914 488637493 562871337 297882466 372940520 34515986 883866449 595286426 656733086 774452571 842155398 682656915 962691741 336816049 996048956 93320194 858308983 673494865 922024384 961944865 982416613 698590013 894829865 807423833 826453734 230873750 576637882 819500552 934323812 398205607 643383366 360990659 823630193 303587558 760629577 193072296 953329986 285744994 540175757 258867889 760059066 344515782 651265476 290208810 812635220 99128005 544031830 535234199 998587670 661822172 938590024 358618139 745705308 582444596 694569609 830041244 955145279 53406045 314876529 313396946 733590292 20999453 721480860 994304625 999214570 377563821 554441401 751670933 835097158 978807908 992717805 381040962 976362285 854112493 992580527 956558507 960002005 792058183 958240320 766490019 947326742 659572122 917269969 385544673 535159328 474048231 774314695 708589118 959774508 116663621 879562875 394913260 445412747 142833655 622335255 700151969 784685818 63130440 505714720 772965000 773741970 552643449 956171244 90971237 711235801 505651573 772664391 892231799 952723588 881091328 970785241 433020349 990586256 58826701 999439444 949281651 953780117 149158569 791531227 433380642 911732994 246551891 463270692 227961494 332455895 879381682 897491155 512432179 812477173 478578865 968017215 987081319 991159657 226269641 466869612 957902565 980802319 848214620 950186037 395700106 893536118 949261649 957753917 185559665 526038927 870774036 987085840 879578633 910820426 982715507 984728577 187048829 684393654 83208 397287359 539926251 792105890 982849253 997690158 157887320 280559225 188466992 724542646 282123544 589104819 741562081 981295486 364984246 864714258 87915024 414697135 668717612 943078359 184705976 369181415 637148617 797305589 619797920 646257499 477045026 893511774 620582139 901294552 815017749 852991201 60445611 171904121 626430689 864823595 716045066 749436931 524152052 768407755 351973270 744337741 709023929 709844667 150128495 884966553 804936485 990427192 529119169 945536820 133646965 289118323 564220763 718778711 126895136 564351512 856603368 902272169 672267305 733184086 98658887 613205126 443229032 680722861 149875282 863871157 197060137 418220928 562763224 926768459 374536844 769701043 466760463 974055419 157078075 263586205 51640840 245557471 853165031 883363347 413217464 944343989 581995300 661154952 331211258 438653101 523499516 885207421 842836622 949355280 167419276 663746978 766351255 990536277 34220854 107045323 772844537 811540959 15739258 975427404 13114541 463222641 939038687 950790342 902552844 965117949 936537780 973034648 780530560 996252974 702003957 807506986 898012137 967382547 933599677 940669701 746575170 786355067 320599675 667101301 637765907 649253122 665985081 964674140 741463264 865406338 343260327 613897479 458791455 466789408 560532026 845950250 520401240 579081037 299732451 424035019 128845654 833617445 892744339 894016736 701987197 768051148 483026245 884923298 844777602 987879312 679304991 890664337 721790057 864236532 799220866 982203352 73916095 510076492 876893879 917964971 921767732 956376541 196963354 857529480 446494653 757524258 989747192 994091444 880107691 985831164 942084363 978461160 78505425 800444542 600397300 878569027 640051282 971504585 927860789 999074683 544961675 701278589 979137935 983521181 29451454 449646204 901432071 970033308 76006912 356273996 490779379 500506164 394300191 946488283 642521838 982026649 299185142 826781285 529513817 602732057 700771759 905272903 835055632 915514407 768495498 913071103 668984684 910000669 424890291 466556237 832055948 879862888 139416467 905071446 823112499 998400338 467078445 904422937 387595222 981793144 785199916 805614060 31178121 199122335 329625685 847009415 425192074 696975446 43861291 98650140 280217234 891080885 68226346 217253803 695152615 999330843 643577395 778386606 384178317 628316494 40504062 143583820 114444145 603225994 105957368 845537746 629040104 976453267 743025123 921095972 858701789 915884564 814163258 927689967 681897775 883715443 416430803 822103697 595215123 608701581 705609849 729828943 337970152 824729523 759385335 790468904 678625314 792365716 335309106 463606794 54144701 606447478 129602317 643079275 361927857 548638435 305874640 599057303 849197449 881992419 567867237 969767762 575923453 761532734 983578975 994111230 991114863 998914003 738763949 773593378 968265694 985614349 759092256 890557218 564737553 848526428 637347115 796902250 569073512 763954962 611766740 832480692 962746363 964696442 443835856 478465816 524839926 735707096 395994007 642859113 919475819 999723085 948029574 958950872 62261963 716887151 746931796 907085071 296351387 578861447 239570373 361690896 467087287 778335699 273349305 763921854 93751909 506196436 63720391 688446297 732557604 894556679 823805347 962491948 51870892 871899823 305469382 501685075 681697559 814312824 248051929 477606941 487066917 658961226 959248696 990638316 527233341 937435822 35311733 796355406 592278745 747383654 43290267 724434962 658975302 834414159 165026874 745044836 729041927 938258501 491961653 887926270 584297337 614867342 694025417 877824283 412936046 939775202 220145578 711934915 808776535 899677063 119040695 467961596 899501749 905416394 592920031 706274909 203969407 273716976 422942345 528836899 15410280 99901934 245688322 963604376 725989683 915167113 487911356 691436929 188110031 525010579 873300081 931927683 275862113 823894328 890706220 953186982 159485638 649637427 115198374 698406376 292144797 501691601 130022153 352721645 295722980 637839680 222324035 942641931 425491480 874999178 103530362 957154449 414595506 828606364 854823066 982375020 331132723 752383377 113328825 205083554 967175584 993390927 590282531 982526952 948747877 990122166 242194917 434110842 691776462 977257958 799989919 896724494 978714485 993805909 363684954 903462754 517323233 623272801 343364837 744674519 231856715 421636751 487809753 609703831 114781205 254590701 13791470 213549420 752133583 923778774 330416973 738655530 622102793 850338842 484489990 728165553 585526236 615549582 302045865 486605467 377654796 826881582 278207967 716788478 229897724 653574750 829944814 972777849 966025471 996531124 961054179 962088773 513484877 617213151 842968665 889352702 459398629 657703997 321282207 699435336 876544073 978118495 452079740 561248684 3239631 75290017 775055704 887172742 731609028 988576126 171966558 652692726 175271913 280608582 625531745 844546772 130526973 155584865 416631390 963191801 569218493 766729811 273182034 821252376 774811364 818158247 688166729 851833688 924457093 948002447 886629638 997336700 823026491 885617670 892270650 939917259 838116592 994030417 708632058 760401811 804923357 937814773 893391938 999517224 147717771 609613024 847260959 851940760 476520060 903727994 777657885 838829140 769717373 932584518 448315716 985001261 545189158 709567098 418009553 996075556 950554902 958801865 804892862 972410924 538573580 560425387 320411785 657362226 63795385 968381476 121868189 769489730 640778628 890372544 42361219 713391874 388942572 743008899 934538906 989281685 461507018 779823858 108548092 308287432 387060637 427846793 952303607 976142093 639605969 940994258 553699639 752553661 636528319 674229420 570269398 713526645 941381530 963416235 304446323 334467508 611915131 923586405 635557531 978396271 572417915 992578804 796150180 962207364 956210408 976496142 807258299 838131020 672665527 745367400 513096198 785347547 364361087 483736079 83982780 997267663 268776756 841639105 821813364 841697544 643623321 875937839 934723447 977880434 58205799 924385752 862473740 988482961 346173651 423902917 609522414 731539247 759275250 905082547 233847723 710770586 508225202 726259488 187798006 547319068 311214559 808650989 681978631 698268654 855028920 929755225 66319794 945147920 22536681 628922821 755152539 879987554 693055097 749113794 572691235 682332995 468616531 475725665 510627845 925713048 373893364 482610132 986318533 990113871 752829490 880968172 523258021 593851455 240566049 534824902 547881379 737635963 470894007 713259832 118865648 388802308 973351541 994794203 369891451 413755639 892287061 896376812 851017615 874619094 977185914 982525724 275801946 537112595 752206691 890222235 601246671 612634921 365864136 953637982 862155135 996346357 579538528 680508999 459594991 995311745 605122677 707316402 324388057 793013902 633395780 684249373 244824304 346595271 515652198 965220683 538578077 639508127 147273059 507351710 526639030 864602493 425078566 643591184 980613133 986782465 425578880 432855063 844506988 857628234 500876963 938445358 510618952 754690870 970431 202267951 346932869 428715429 304168821 999624033 964090339 995758677 627748338 731477257 571213353 887611187 874503556 962298727 354700716 423712788 620583514 806593201 862540542 906164013 210702160 324271132 203426979 596069949 234785334 876844759 604539188 863971330 707553688 962628315 157420407 391859941 820927258 967353024 897726050 932537824 232717462 374218547 107052257 214872154 2277413 987051892 779330567 879964003 762025315 924898280 736283858 762282964 169851347 344963771 201387973 947731642 128934306 348459574 281668182 615553312 432051881 784360449 62309472 677888047 91940728 211395633 660099057 676845355 213682660 932468921 78882872 253938622 790167948 983292099 498659735 759664524 106923448 665839734 982554421 992536460 949861072 997707667 445282303 950607794 735518306 866246608 220426001 273294260 844431365 994032529 635192371 767253345 254141315 470730665 696690318 964588707 969274550 976501725 35492313 999817820 948687500 965997111 717365755 994597055 588814416 981479597 459783358 603439066 743855438 805300760 542329997 989585841 287169578 859988447 150499171 305248942 443229609 884059613 983380391 999739742 438534597 795798853 789379330 821342808 381449882 437378739 191611718 522853783 396025986 642141657 245982064 380030486 835505043 876398808 571432356 645910506 835983031 851648018 791544715 946446140 369776879 637836503 112842951 362432410 815036884 904797464 160788435 244225792 192842499 274918072 367678026 386987835 426649813 800726490 168815506 582105653 290925508 601270184 868913950 949362727 668357036 878267734 669645866 831061684 798775344 907963895 379692946 896692886 106964785 312227151 593080169 747720540 116085963 466063391 162871188 172931786 914947023 934311292 143233948 728770435 198519789 730340549 823139864 919561710 482571437 728553966 255318725 480189311 53096660 986513122 992862953 999277535 770422212 961521388 891778255 957617348 48200104 882113378 125796930 154863969 405585405 708783467 773691244 937927122 684464915 993628158 199144574 490421887 664212610 766315678 173855934 460264663 677751913 996897675 470258174 865454684 717549058 837627311 973249206 980909902 558782284 717047743 616339364 851766392 43572363 145325259 673492520 674492228 602968242 616324800 233605006 261104589 159916610 625365817 964821995 970768207 618132278 822057856 67790805 638093933 260063207 682783515 395141590 906060896 826976099 926887562 948033019 987442405 454936129 897107255 25806885 809037158 30486815 915303093 325415241 668396778 677673225 868177953 634657495 964322332 404661630 425636715 426587408 427677342 827346841 889776151 180594016 619771627 542214535 884495840 254764347 371995118 275165325 312411422 173589163 371006735 566431003 908692036 959885403 999463677 73805572 406336416 647749595 911028956 822741834 833222409 567760252 935608263 631104196 770938307 481552258 694565201 709881215 728142432 224869524 882627096 852204300 985765193 126997422 224243804 378562909 965940171 300057027 913855883 689491745 967377446 777111864 874096865 336291856 609735590 870039531 905116656 467379516 863013201 503165146 988492649 36505055 157863053 101042037 795400475 367113048 526432727 910331694 951331050 582696167 714497644 237778804 775319229 349166289 829155879 921516808 947959662 385281631 593492942 575811498 618518586 64729737 934568582 983200032 983641983 126046780 643943050 607015865 897197247 238347670 694465564 204766061 677328829 62406053 939393620 989474252 992912204 510568715 911386848 657590032 783043123 409115001 451613537 203340796 947284191 559668342 916089981 997450940 999569661 481988589 828980335 192043468 958623096 967736648 999601715 816432333 897766474 416513896 635093830 640380314 856853913 272132467 475812868 34549295 575012279 306564549 454616180 824502378 897154914 533483658 767439991 327824048 841765463 841362563 868436685 554021815 999771819 589923196 987675822 610508827 692310818 416646061 742427719 962218726 976322744 916629191 940136617 479032470 567265394 511818415 757734266 101532475 205842076 936276615 980494910 300088113 956322728 851134045 935770624 940676706 944450164 88585828 850745690 341101700 529649469 617838409 642263586 283658502 935982323 88604963 975029255 811681012 900177216 517146225 677731330 778091635 837347246 120857481 759538514 140269328 828439306 16609195 827435507 311389558 383990885 780525903 993681412 288184940 916562634 972714073 984731892 166873997 349905720 679717879 820200905 964697921 976656699 109491218 558881796 916109720 935466396 231862306 679795823 124335436 748350477 812723650 816822646 726213755 960945283 696951687 746486476 395461066 741082859 51094453 354053046 661782107 907651993 421236622 575119937 553722345 675914760 825604560 950653311 126568046 630490199 287375128 306835722 262468751 684687938 625400331 908185092 720584119 887339047 405698661 505783816 815474083 817320887 391381166 793921405 375928521 759476150 310319258 775749213 893641048 904636129 907162250 952618590 228473581 840126282 796945843 930269473 20377969 594451504 442869842 667701007 156763785 788395470 484029400 560898069 631009692 760630953 190383979 367208633 12060424 713046788 525671386 763643487 268675927 845812049 293096094 660288012 164806969 750955866 817898923 833011781 549918907 710061791 74106380 258147497 269837456 903605593 595152657 836874187 89554935 802671467 976102532 994817637 416632666 530321526 276907725 300364481 63879012 670831773 960101513 980676032 879338466 982291001 354175696 886728190 578097185 657979027 472610736 649607219 952277886 971404783 85033837 227172950 625989002 814651268 314679165 679218127 532534100 710895728 535023224 674801941 701517052 884135643 688166008 955419510 309611480 758967319 490261206 677973956 704775057 929837709 991017757 995452583 818692810 949514991 245629952 600478486 529524162 839142666 622331888 720790598 621259057 669696513 683731371 850539406 34536541 715585664 421887381 797809672 719362640 958266847 100656254 781855678 87157179 244751100 49308224 691375927 534831227 628644512 882371912 942478741 53117828 608251735 600174425 708653728 480054008 835056634 271820512 603038741 738704070 824374160 547741187 974486516 984565591 997290310 860391972 994648338 376086826 708272978 230722378 245415504 406367783 593856064 846612309 952953571 33856248 621445230 428312570 947875487 871747199 938422821 604032163 687410130 700059665 972474569 614649910 667911825 348950310 473835654 134775076 224809033 982921480 984721862 690661632 930704265 422171230 657865198 331228893 956119201 486650070 552825041 810841833 822539050 875108992 943837917 663025756 991401835 371119264 530556974 514838590 747673766 92101917 690147223 215714054 321150564 279168421 582985130 452835782 958046305 714004837 945523545 490538655 640899951 494673276 529480355 475608837 928553227 694176000 801542831 939531991 982038680 986771336 989828164 758266929 869559995 705666988 933054405 974142195 975026576 980873815 986102735 277893977 779675841 372824249 962143660 836994775 964748322 414776488 516743783 801054129 890059771 592840176 668271754 976491684 991116679 219580908 693853532 521614128 903637121 448677531 582540769 856330026 884451618 274085177 828516665 891389956 927285619 497992267 701975825 280523403 339205361 132714593 314187419 933242851 985486625 866615529 876345396 9501885 791745692 556263621 767203044 299857413 648740652 33196436 81544037 849983623 986676961 615830949 634447906 408297802 636999399 431259633 563439713 898299895 947033021 830553853 997993894 622349484 627818345 128482032 862146027 142549444 471914726 408610583 631213064 240006256 368159596 800754250 985625369 877500606 911696484 457343623 978064838 979662337 980334170 817312687 917294634 554401658 766471496 939166304 989175909 41749551 752886256 415341416 535078234 510924469 746983650 363161326 584818721 77256757 939729622 197976164 612575758 939254983 951423809 840909992 854954577 4584585 548505342 843175050 997070808 13745663 89109165 115451988 514702156 435173962 564706158 959879400 971981843 165189148 928341516 87510960 767773882 815092080 857234422 862924175 863117504 884512393 974238190 405518864 558421506 731036950 931870476 86047055 514534719 221871621 623738354 871352286 999691280 674025115 875649504 488206164 850960775 325567146 543987343 679095708 682939188 225825259 242235532 668690270 756239901 225128032 687520140 240983062 409690819 231004569 529800879 48839111 451289778 176120367 316223006 592143349 739769131 811857449 847932061 428813464 507756832 495907297 909554430 610393679 792980498 38411299 143241190 59638969 109739176 326731269 740077428 72417987 712976777 491333485 889955625 36603193 883578986 54930489 77973826 442568037 776784898 756724459 816431728 324689096 493640903 918805698 970768779 635902372 672988942 815674595 877294947 943996468 966297439 902916839 965639127 28643916 840083607 779105962 938108830 460111047 700239563 491977485 930887317 500451834 721780626 302874007 792493204 309881014 518890052 908947208 994120409 833745974 949038027 775251379 927171311 496760289 519113065 687403585 890919604 761201329 959263672 9872253 242591680 842925902 977265148 151435250 201876941 156195155 622165153 853025070 992892379 965162339 990773953 869176848 901151202 34190187 820649503 400242209 520296345 646854974 745999428 429760531 785683797 494630482 742856716 527615102 972948576 116356459 485005006 137162888 189911782 413539896 691512655 982571601 983536423 782395144 808829873 229384760 986962770 640633629 733805692 950731008 981449379 70864622 380464763 193715653 201802307 354349564 377538396 903429937 991138206 802497896 892934135 895254711 987674924 788869263 951835552 642852257 839894256 704530845 737474600 109235347 363707614 283075888 854723425 921461910 991442984 271592533 984645719 177792874 826215439 729655079 909335167 27218557 905555371 442124499 900404972 968161617 988982308 774809658 968747603 586878096 777146650 750397449 915967253 165657025 586084688 488400284 538337782 225770411 997119954 743519679 851447496 424577834 718959656 296777469 703883057 729966663 811368845 264049845 885225902 719221709 911658786 332791190 716552490 101309051 228112365 965961991 986697860 135990221 440814468 582955024 645902504 522053269 982150299 709190088 995695471 996292804 996460840 131737321 435456528 728785151 882655799 299992999 685406597 929997478 956496410 621893621 941415360 296190508 447244086 756939392 969755923 343051001 434597848 839706850 842672875 58401324 951445219 779084260 897246663 589282117 679971699 81745709 392219838 843488061 993500754 944225016 971486130 356775995 599740944 457254349 914829242 534209643 964988921 160195282 272712983 241733992 953969967 109242724 332966979 753043240 874177931 999969845 999977034 256349803 852947782 514707163 985521294 137069975 498518108 529888054 542136159 442824385 489611567 647148454 896496709 954984311 973033680 372839830 699037878 93430753 860692341 163581846 866485841 909949460 966635491 732948319 922370774 141340605 273354573 538669221 828596707 602309607 627641183 175411761 902750279 286462780 379236506 642870259 995664249 427173588 592297648 651514302 945251788 504419843 822542450 116201069 415530974 866292857 876331034 262268526 903197231 805351944 956780794 181762459 227842176 878165473 947369260 162590699 611894289 612051523 997630897 8697236 362327084 109507393 256579283 328910347 406830610 880215427 973568041 313347331 621910280 790791890 804672728 619751351 902721653 10483266 255092903 162513156 477039973 859536155 886295216 37871841 866988364 377947023 822818931 875225762 875383184 359985560 533081021 590437666 943096297 185964986 574409777 300103614 797577893 672375745 742051268 863791483 999910804 469116356 620712735 85629325 734171121 19210974 965423940 524279210 776294019 940671837 983753683 108504404 281533220 233691048 881047132 437215232 680586824 882252749 993992931 738111568 915763565 15192749 41479576 281014117 813594043 722222912 766586208 577750141 773948690 485099378 649699609 217808325 631101753 405607902 531002333 922632075 995636736 2013152 993061878 37306364 601931305 414922785 819859087 46695535 981673483 474703801 694675103 759915836 988589820 631701167 911444856 863169637 881123523 316031457 965158539 306343626 842458801 221003779 556825010 884745591 969668204 441580792 475127212 83345958 567698150 549913181 879022375 269026277 677855799 434913050 873595299 615728192 912356237 126062402 869818896 12242438 266994583 685124398 883448723 222153438 812585638 50626894 174860108 503534658 723915739 102216006 115284302 122671034 440011858 187682814 523865598 958572360 993073595 267401228 732346124 325995117 900771874 452863631 722371490 859174816 962541596 866492794 922979934 272195439 876235874 224148947 303500165 879327204 949223994 666566187 760110661 840831243 974111036 87150796 722147713 525696086 997487371 191840447 219655212 661284011 830270807 629365877 686118103 421240721 885714149 965536963 983318137 108017430 301193653 836892790 983947836 660880618 919797486 57708063 676291973 223419777 254436337 18134302 664144506 995147451 999439981 48518337 705932060 859629378 891613038 789745821 851939386 626463204 916922406 100114833 129214256 862655745 994233210 794644013 902334595 217993302 327894440 87065775 233543771 848952695 899580277 103698292 441301556 496825170 733728223 676441190 950328839 98852701 648436256 167232139 815868432 855782511 941938610 160824371 189309319 993548802 998969140 691136583 935283553 486719556 784401875 524013485 910720436 291966858 304159809 551095767 911903400 182607902 645801612 368103322 448304701 426989403 911158229 930801679 931518973 998250875 999833194 411291815 839361293 519414736 618157462 588961015 678594573 911414792 963291409 117841183 311430176 241368279 525017842 758780226 817167652 115931870 482727853 265441468 948485215 649796959 967302460 978312902 980352688 351484817 699520720 428432837 480288372 528351008 707802394 327119892 652498316 398312322 806041848 885512717 915722206 343104261 571460598 401244795 404472610 729797342 969321745 623658876 623909065 473826930 880612512 533198873 752551091 888843053 982933925 619356166 671903560 219800426 758401676 86276621 396391136 437269044 478951220 537619261 776377887 547416964 844077100 492062324 795571866 688309036 922751846 687921788 881002714 305329078 900002113 763812379 808201374 310594728 488501403 300942440 794880964 903514880 931816528 159219878 501713979 404789535 895522280 793304090 996252225 540867469 711056356 228941740 603890413 478401408 923840477 733961859 895323333 887538797 988000212 376939166 664952222 41867624 999089285 452065792 692174666 851852290 894949873 516284040 670487582 869690511 980787232 227646096 306729190 907095211 954095293 297168983 541336099 803484471 870933764 917337551 984482708 804728190 902848823 652398549 884997720 363153771 940636112 314957666 789710525 473753656 535139000 310517914 830134357 519171162 911560776 592300454 738790728 194872679 431513144 916981762 999698046 724660802 915181261 408126908 740300648 417988686 504071672 393956102 534792123 562397342 660662431 535789523 554331260 408094636 748224722 356520678 565220497 497772650 710698714 519755595 852414821 33718065 337036068 245149686 363523207 761339972 819436115 714391172 750997220 315268479 377163959 86396392 302813667 248465324 673125919 425309845 437938995 770301607 986574518 708803115 970335060 945843224 974398909 350373685 397162139 465727976 515561302 55906733 866824807 163050774 920561444 28286575 392374810 87789485 901305121 825137896 972414754 183413158 956481654 406137609 710171906 300112009 932071588 958519387 994157602 946289572 952227478 669172365 925151575 975424879 975427851 522296599 911015163 674752022 954466855 44285985 399489143 871687950 984894985 532142615 894616712 933771391 939177697 197450052 730195219 958245680 963625383 741166634 784501409 728606363 807125945 916454553 921090396 101749520 666356173 22968219 579335539 52485799 362747849 274637735 328860530 499508235 564501281 374738550 634801698 703288237 837296016 568697088 630943133 585253860 704289822 54468064 430872196 640740042 843863999 246223350 660412385 754048299 850808086 783014125 939529488 236997634 380866621 957350347 979753079 337087172 843430597 511918975 800712349 147086488 548960130 548029597 967983168 188106603 202426593 866360649 955657206 419953857 448690915 289951873 610031471 937532672 977051925 828406662 836084507 776415104 866252579 358132114 773252450 118518426 132501280 322371292 785583269 426314510 775739877 325479056 709204957 294107040 371524303 773091905 785283413 549623342 927225969 89764246 640453954 837968486 859081823 919373339 977533537 820601149 950741304 557504661 977890315 931259164 943238349 393987661 561324831 149944541 620337570 703386840 857476219 601992436 907408554 404232215 742311224 996670790 999030671 604389277 870049704 375230048 684407451 141338972 499017602 292478095 827596304 759923394 839179204 159323292 798502147 833539785 889940672 644857332 768201463 444194929 954136146 774799032 830845365 190882903 861478538 594807677 605066868 191578168 740798943 23370894 44483471 928976627 933851132 464245571 578130524 646219721 980465021 79665055 489643321 971959801 991287479 413301584 828986189 74498812 101131018 555476810 648677716 645923339 999819661 552563255 917284971 794500561 837709684 233826168 593982106 925738005 947276792 123924587 488263585 803519247 867707709 27202324 820642527 731376450 892127087 769021970 784416564 38385605 363332619 540319681 900897340 226494221 745529629 389280083 585315562 630877555 786655209 454321628 616976450 723359916 958910644 439882453 653018682 487042982 881216122 387085198 869090663 253409091 528020534 131660831 771264090 620434748 770413163 293564264 759694653 406698902 548376358 433613762 925771091 281164063 509986646 298548881 881496219 243280565 466449722 739670357 951831233 395186425 524468488 87835799 732925917 211546961 246780835 720155787 836959833 788229939 797745787 628426207 743144267 321106211 656369899 163076030 675869183 427709104 836191164 686990404 807725849 406868479 595557564 188894283 835256495 856126855 926149428 833555496 879269224 680148027 759392037 382047682 927086451 112459294 353069429 651352624 774706148 250118610 984018771 816766051 974798364 605652588 772411408 159489440 413386602 741760484 983021604 896673924 964577161 192871081 778727657 659113776 894013888 528524436 662657923 456787880 640634540 517229080 947187086 768143205 917330929 609067928 978065820 253848421 433027034 622530854 825497763 293105908 968808777 400868619 457878867 255343913 579043387 604374078 772193521 957147548 980118748 354208677 804210718 523022153 808425998 664997279 830706398 463642020 678383207 963979040 997578125 653521833 704168871 400249173 838054185 155348744 557936771 29010596 579826109 977660690 996423560 718535927 896692872 658934656 943870309 148961799 755655081 398926037 653587407 660759103 727824546 991919939 996368318 871141584 964233627 953694220 978782605 756820509 842688571 421613885 446758687 49575415 951798502 947027943 951038593 336209041 683954630 508456539 567667166 27979046 85336736 605405531 766759490 126364717 448348838 449106677 473614094 504446195 554570172 114031296 901890405 873119614 992218848 951627700 980577757 436200144 622960771 875137422 909636726 246837250 522997550 416073103 698126106 848806950 911782740 138749828 668700022 271261284 900525965 71793197 964387924 987044747 998305395 585630586 726221889 991951053 999077808 56729663 989855400 942559309 991295155 432429125 831123045 563114078 631205331 684756796 748123451 962635404 972949961 277568093 529730056 546031622 788024987 373206536 827967073 993065239 998793655 858994636 899559222 405533898 647974883 742734566 876248106 18277013 498670586 961954550 977034674 49352548 228709569 187934227 807403956 137843482 362260941 123038437 410356635 932045582 951897266 96473980 274664586 673588468 819461992 240147945 264000315 659645144 770715606 214869761 807563365 785166689 816671403 763751090 911016660 657895216 779336361 873013762 967155349 871210707 967885791 768111544 988128413 785427594 999146407 674748219 922311067 842648051 896109484 929277254 960403204 955068245 959809999 638464606 807104949 762242012 899694945 412396881 866334446 427159721 816644869 581401693 974741476 747188932 956204042 871896103 986483248 772669777 938378571 45855646 813046693 87845898 991168419 71271789 326472987 201284450 257619111 557653995 854098280 230124242 833048552 105732700 791165576 498851172 776925264 647149117 797677496 21290255 425756445 427211756 534946260 585298676 804728740 791538329 805123771 45740541 830890457 831196308 843445237 492368518 562127611 999405804 999551022 868606134 878060611 101336991 845839567 621167717 847307275 243874014 358564615 511059821 595880068 787447643 940761702 912887569 933999642 341520405 531153199 804216237 884136325 613181674 699383978 782391341 998298740 549192028 906364038 960514788 963007163 54433643 381805258 40360411 989642821 745385666 904643668 273869774 317803757 832055587 914955132 661155425 661247714 288404613 989671692 147754626 341211665 234389664 483900366 699940237 775804160 758639132 967553199 455232885 997224529 235241392 309928310 823819499 921210278 427151526 619346911 323971936 917362450 590660560 682782806 428300387 933286403 458080679 750207514 334772299 604957042 450342424 788493025 997892498 998602158 904575364 946320839 990517882 997662594 167467310 323276493 486600192 637509632 476079497 574335585 824663403 839380106 911284995 953241519 690349590 909655271 919314916 967403115 893554319 990511615 547333848 692854648 148141196 723111548 666345193 818228310 818351945 934368953 380645368 677216878 741768405 800849047 251356282 566485141 151587182 553021735 151835867 914014967 423290082 866967094 121970297 513103195 123189189 907022042 133314487 401301964 948420173 987615889 564351013 593154360 17070342 249670323 125424842 499439722 210238498 294526478 591095789 693308006 503410917 626760842 261165073 859036502 764251562 968458390 168171718 555280960 638871394 760737770 126302274 975018530 838691163 935498381 800839040 953855413 444711164 711146960 184377246 934522360 564809189 954876429 586519408 631758330 814467877 952010614 35919981 36297585 949318970 955389901 939263994 945458175 840327635 983409480 776201169 971366395 107623757 717348090 35450648 956281433 221199300 855147607 96236720 787438645 181521704 303313977 160753781 387482173 235124470 568535306 910455513 940523632 623038038 737162158 382403799 476926413 149996977 153916026 940923541 943884662 167012895 714475506 831754139 975029445 859877306 965725352 392010631 957606135 576980100 959060042 327630254 799680095 592711438 655241094 658162860 680248549 460416849 827313287 529654486 786569394 650645382 984798701 865773003 964596825 908645022 911512969 229674677 540423743 255478291 929548995 639345506 984500199 390850427 915770282 999917138 999934049 562205049 800094280 687580523 727759985 88315754 512160421 697654614 924843725 320919148 895503069 981264923 982857269 338549495 778284051 485302290 655880926 514488941 559896972 28411481 471783913 517980330 894292576 174048582 812982831 285625798 618745547 509132431 519963595 168608240 545141668 363878765 885369035 453468756 585861238 50078239 780858785 590007414 886972524 255557697 337782471 449399267 521023646 300259903 334191297 215502526 580273150 290191228 296914789 371506401 633961871 775863972 895944490 335098182 510621049 361406456 970890019 314214771 740949091 792339088 923298486 554082474 689753856 12383665 859889684 767942647 939251925 452575323 949310475 75792168 629435290 530772520 626342107 403181628 832015948 39508995 656805925 352486830 828637150 993635938 994752897 127514585 670130956 342239652 602383101 914236538 973065224 494593259 881661446 101944402 319800573 103353491 254621741 650820734 903485305 620204049 732512938 815793580 978457033 57157449 494685820 620011109 921675034 498018384 729919475 501854031 696095363 869435111 951596581 912651439 983682412 434085966 717550771 442409364 541759118 491412724 723744730 25842139 104835060 367213364 434560787 455635277 481969297 672480869 747349110 566883497 927472956 188840029 953086767 507682751 621104138 97942524 860132839 282554784 545158585 913301823 982636077 687797663 857101302 536300960 793898969 554819108 824022460 694235962 716593800 966969008 969028996 791659118 997775564 105571754 730026914 415154950 827191073 179278652 404201876 473946527 728876716 211479748 885871745 330758535 391788432 692591383 820487024 201349735 215038226 866505381 883465468 38403072 440625094 224571345 349297215 597580844 707917313 304127558 479764849 144249810 942667152 24954322 537086225 728922282 967962012 453556062 724858815 163400576 645891425 919876638 961464794 626382863 937564454 909755411 976272839 707639850 835694254 590566157 847619716 590311150 662396141 851563220 870138309 895825009 902796621 168070610 850551317 958703000 973720110 330009531 982361154 829813744 892261013 932621933 973977648 733746584 906328150 243966861 785207165 590370035 886773554 949925156 985736241 679821775 796530971 653642916 916006522 712179378 748183305 672871947 821559452 275626744 958071367 28563980 231452186 579279554 837517350 618946375 957837287 166787589 664265439 997828561 998317864 876036829 904091921 1897017 806745703 351200712 632644197 680511960 827150176 131105747 457023083 947023633 959467002 97371769 485703082 729574990 841918231 2680171 539004219 952730015 969591618 653374604 975691867 75743987 971231425 354215877 581801594 720702587 728095162 251765657 405874831 788352834 963030828 938765584 998144602 974498367 989881426 757344512 764270813 998730700 998752575 673696280 712095393 560128076 644143737 93074813 185232699 307599465 313725227 183668195 338136431 274170949 661817359 202653647 397566743 588357645 819291602 162025129 917198428 243691462 690959026 265349732 759397479 292597142 509029721 42346416 650736500 842568116 999000559 282158320 826060161 687324041 694261755 779890313 877906353 39354308 914359884 842483821 845787931 837935606 954673166 296793717 771652882 456837095 928275610 894107143 941271648 786279448 962974191 35806835 735069947 71761266 859621697 913587768 929172281 484750468 556822125 2244308 695008028 65702271 920036494 776222806 862852697 776859423 844239509 517366077 782172743 430847074 645222670 779268769 871277551 129693005 210995147 712440272 946520525 592935464 787143668 834927344 955819766 924703680 985918068 168481080 892865999 849083382 973520223 415320334 899730219 410494137 414143516 662475874 839220406 383512236 557551036 499056624 550675255 399689814 996608099 255082935 499650321 497665478 695668620 248812839 833330714 995428452 996999617 202158468 328210074 630973084 986081360 530868971 949444721 261255730 929765179 604764879 817670867 623438259 754643071 439447325 678034526 822489234 908548252 782577324 852855847 844007946 888377575 732634580 752684904 508355916 731805913 262027368 714284005 324816985 504596268 329042478 826662310 869461144 903012369 963055410 999900818 532049840 953912565 94231525 434704305 843873901 891846867 367390902 524570204 880346640 903108079 767592265 785620965 330919028 699540260 653542176 741300453 529850912 932769503 739453143 836326006 772060710 855485498 251865771 437582581 208479187 976420172 470495833 937926609 886295842 910290754 625898046 940401515 761667307 909887604 975786341 994995981 461196589 490321111 644220947 954041488 917415943 919425681 767025605 775168326 389365788 771251151 379911986 600589770 442191846 491701355 171680986 971917462 528041504 964585078 919410840 972031410 677064073 771487987 426254598 690006022 647457936 805507419 602396927 945501624 321814853 900203421 88121679 470696909 653567368 922061053 991098799 999428559 670541592 918576266 346174009 438641467 987828358 997515015 684913261 959943000 942150586 954073009 585073891 800316439 189780713 772700227 503560467 685461485 86093187 387527492 860461657 898668780 904148883 980146145 177997877 328681284 677277142 828619915 68288788 355363689 511029617 693549410 440734980 467699843 401388425 648140967 716519719 787531427 903832702 975409326 740849655 791959038 621234793 972739487 89280362 478605850 406041946 787323148 948644464 972479839 798683852 855823674 87045853 839701000 462110837 887716401 8432110 731618214 13341813 747845571 329084045 708225715 631489186 880776888 145422071 557428777 751690964 811152761 906684427 922540905 505581339 731423945 4220259 466701841 960283449 978858662 99457149 626842557 164117386 471444943 253565822 785690339 806442657 867496859 284094402 872062719 711330789 738160770 540869826 842114884 447870011 727556180 305282437 971078398 977924719 998651069 531455192 698694857 124077804 732185742 138684863 962988420 573423098 960487516 688372129 949368518 781211700 847676223 293623439 865103233 919450321 974758159 26546858 627908160 112135562 563310083 990250044 995605534 395983987 778161687 960917578 974784336 873910414 876097153 847535075 932074127 557574339 571240046 837244994 854791483 750102161 785570654 131946563 172333285 33413797 204393658 125969891 544406580 15073383 510365255 453511192 561566730 77153362 431481154 331966681 616441338 955856440 994530012 462461 712370505 101195060 850334027 823595907 865905697 532894795 889576962 959349717 982798708 531191935 785251079 933028850 965177181 873362123 926483633 337460686 473171494 797463211 918753082 385982219 842188195 99110065 767130844 370538037 715616063 886731059 932740445 323402305 543757897 278253033 904316217 148847064 220227830 291866247 505643897 210284298 369173718 186442841 392815175 424438929 981755286 839126828 900548633 206166120 375987964 870100931 940874787 203153828 251594961 461899819 900950455 963862870 983694396 206652074 288847440 10310584 82871916 458121987 938715049 210124067 815846569 334906878 568731741 348576572 733733172 142085374 766925213 882552543 982605528 29978403 918128839 930639332 982985103 533444743 983360932 85385206 448477090 735454937 957398253 101295864 145229665 365969552 793373471 831481795 945828977 385002834 518158435 835997195 915546826 9715567 929422155 327117060 805315373 853594223 910009206 259679355 274653554 140764986 758927259 585554399 847421571 947427626 957131308 984936352 987704958 647407181 942565626 307588717 577393034 602263177 623833157 457458873 820068710 921457654 942229587 517919208 578299416 408357790 564247111 198371550 862891035 96382452 444422056 358863966 457149842 674517599 918762831 627099084 929939959 601978438 847847341 340227444 447451292 624071945 682694065 897052238 924994707 561215270 727758582 225817013 612157333 356201499 687258026 123604837 140537801 896556891 930122808 533534441 997242576 739149417 866724508 325582373 828470186 911994993 913510850 643952768 974716947 515632636 681546290 361186259 781299324 758104088 832795658 98704358 680398348 502222375 992554957 328862013 862312536 881537634 915444015 77130221 272941939 476187156 979785203 659167061 703705158 127450942 175286526 285100973 525990623 7889462 661125501 261190693 960824835 159731866 711608524 226632905 931086399 284113838 540958787 95568767 704077928 974225413 984063349 217606099 821778185 326471799 705982534 175487628 199716548 910859914 981920810 494300797 583359368 983459368 991505794 155556186 605114892 52263408 318317656 362586659 805768983 371840546 839761931 895593551 937011614 402761007 797378773 679569239 782981565 220596825 605879170 494088994 498943325 719726760 932630247 684488967 935838004 527673896 585892278 513111911 524793914 467742549 816334081 37065248 236549741 314960780 478737851 625823642 810638504 132850240 238686081 889252494 958278612 750284388 923981437 833731199 902425201 810560147 887251802 837443975 996265764 591872614 599994010 330810087 997276748 318753334 685285113 620953325 624324209 617075752 638073452 199216500 688461411 712676947 833417988 945029873 970663417 331102733 484033206 749265383 789104874 562013343 766083446 253882197 948293664 88821878 631087478 47782412 576618851 530010679 836087004 270572024 500171461 783494743 872935182 176955288 502999746 966786929 993904123 243968970 914962766 246810074 467629934 715664131 897232567 388603710 979337220 187802747 716601189 556426809 598093267 283601649 880069775 958727851 989061724 488213423 820086341 92268464 625857010 93317018 139821036 935078656 957545707 332791804 593365926 298185000 369339619 475003401 476494788 654507012 978335249 464032169 788151126 807345555 989219849 193273144 405148871 334263515 526058472 242401923 435443678 888281982 984106962 773449385 997466069 372917569 504737180 542934517 825113100 603138930 752388488 187078075 983994545 578393165 928572976 195957495 381176494 882282807 925359891 210908425 274663587 398788464 596819822 186792587 349340943 306446755 851324475 399317008 667900859 150047663 850955484 402153406 450977503 490256393 624466293 67692924 541519873 705285963 845551065 600975151 896113936 880812395 884943048 123515355 579386232 582322745 976980995 742411782 970678968 831259105 941747685 110800327 218911100 624534890 920176946 365186988 578853317 568473956 583403182 474823044 808215049 508667358 736853361 811468863 912109315 466175784 969268468 367772778 781148999 771412154 893437906 273349528 694245342 962898621 982908478 656509269 697903249 579876237 730005452 704247317 724595847 245657407 644696279 565344929 977341014 852176776 942754305 399451522 411915477 680764750 819011991 314476462 968831632 914160168 992302015 95254559 177977366 923983074 930902770 340202472 371377451 507658585 920922744 815271273 916339310 782775602 935070542 831348289 997403403 752608602 820472044 862010623 899551643 53377666 355222534 962698278 979702930 467965723 721843074 13504042 728869893 839518755 976747653 746359581 906475053 809549672 975618280 822988756 875628989 320871851 850707563 410453227 868575700 650314252 977623257 85614270 992034661 106625074 187066159 60029059 901900554 30732917 393251109 924447082 997109887 444412825 475834688 56251594 959181626 187788906 861245387 623771900 778003969 901013371 924005454 292590562 533134369 294949166 498857311 249549393 472944350 682464383 737722972 810338267 869953885 821043758 835980901 838067522 839060974 352612206 734552844 214941454 434610922 589791265 649506982 78618627 491654038 220821918 637541000 228696133 765485581 312440888 479265806 80502529 423323502 36020517 628368366 456022988 936299420 850166527 957461104 115889268 383127431 145959108 597371698 984411592 995398362 10203386 544230757 532168015 640504359 714475033 761426429 560993128 855117666 191752597 234252844 436788020 601890404 317028495 328030938 824735757 845881592 816060625 904579138 637181149 741741545 413605277 929020672 794192436 889907368 538503280 722745927 817799426 923815052 228524173 774343295 632935738 897010706 512151011 678675971 507825299 999964057 979384678 979427953 58227627 112202914 976811722 998609486 83541468 765252065 226801637 525035167 187596444 789189659 678612422 921375722 666564882 873373123 160171410 500629484 977493186 993960867 488841677 845152211 548408522 776799501 284282265 747613165 738199000 739702948 453520868 459856220 532769333 605682630 251777764 451258784 7147246 766628519 253398801 535052842 819971121 963084771 381007567 648182934 483463637 942785215 590867151 601614844 39342198 488698592 586316083 855140154 225316878 226259251 918230931 952848729 57212126 666992359 153942011 978769607 741145640 980361527 833172679 873090440 83283193 684884771 576813849 588227489 946364606 990308689 895804635 969934860 91962864 895952818 59129649 475077318 234660962 335583054 157454323 530369986 560292638 895613993 870012752 919420562 781017414 884911662 995168958 997842997 503023047 890361433 699698984 747481105 384503333 843139835 475325162 795244969 587261165 779367982 5154223 680922934 360033263 846435526 99476390 800082786 537441248 824681436 12344219 683654868 287323333 440966007 298103716 446784636 741195368 908636284 789139423 953378933 958493108 975745915 957256315 998494633 762249134 808592245 163161590 771192224 750897230 947257700 743221249 851716762 720391050 784106500 714665552 988662842 484517781 897349502 468651290 651666510 239808254 595145157 658102406 759906714 91061050 213942742 948457641 975188732 321933948 452775140 554681776 804545610 250299119 336168687 262476503 952544885 937660984 939160781 777218961 807174109 30488701 330566559 697067841 843753260 92080786 165337049 22999903 846889871 797451143 860855654 698159717 823927739 488549844 515694925 799418320 928116620 917377942 992075311 902783619 931396205 180129427 380195323 794443252 986414765 846359438 866198871 670954291 732948168 547342664 578501712 57216289 561033123 303256509 974032671 535608633 844178768 474619246 840674962 958576600 980624744 182434350 927176265 960220865 974756336 789437301 846786465 196133083 368925215 981906280 994399534 337400577 669660260 366441568 891398601 978137133 997838130 624885309 699707244 692093396 699750513 871487894 893086983 581002591 751920339 366305979 962104471 615627790 892783041 244616705 876110888 774816358 779675294 915682262 999830570 947568244 997662978 850532308 882652434 594169597 717749215 392780889 656379998 156011764 690461098 794437335 916126958 947216326 955377299 127414832 997765058 844809242 857795441 985969535 989380968 399098419 811479134 212905596 993426422 616440976 690855012 807423214 988266693 710106590 964505976 299838361 862269340 11845531 19934734 977418541 982013026 73078389 293007403 457733933 880640777 996463793 997514637 113357513 470400907 676587171 803934918 782953332 792741952 484715768 534023234 372000119 807060218 454237744 992535034 759789744 953699229 333450325 618765370 818631721 909313363 614781210 956345228 491209000 938485628 98912215 221911721 558792193 989058340 222113813 459265312 113600983 691664968 783464804 821767057 243971952 669619334 557976675 652030583 484973853 563578840 544401093 814441950 921632301 996643501 328142991 738730482 341116847 464476509 44278410 902768030 209578373 679865908 32399948 908478969 962051877 990047480 244541473 587623529 435764722 605109972 19860968 698460371 298271327 370962472 855374992 966220712 280604639 548887252 75386466 372523223 911523278 954564606 121537705 480914596 543210796 869409240 235262456 799105574 64078168 334139236 855344114 996732129 332523302 356844180 909075377 918251712 212532190 393078792 960449672 994028960 967240431 968263781 493964872 753773063 745316999 989399677 378264170 671154951 445564220 896892988 57480256 940248409 572047318 781172725 682183760 978151350 533458585 750329150 275069908 655916610 462606861 722627054 389964308 452052015 853002449 932637816 127085276 457950716 539499582 779120335 922620449 934255272 568396761 942737958 864204604 896916624 184452163 780127207 744640417 995362556 26781949 143105677 128263784 483686862 752246259 857453058 687542293 970314507 671209126 895032032 976866688 992068648 505500801 889343759 203649948 297809169 300684654 315153792 776476884 794462775 828227501 844440694 440520760 730363259 241745061 463186470 266028589 792006588 1162226 551583527 350588782 673659855 359939187 408130888 402081073 791664864 968441433 970248154 987905538 991252052 463834705 531206001 979516661 986831662 110782377 600042516 883258323 903407099 955008707 990471158 494190156 884318533 373203989 886443123 296208035 515005234 210001316 617402752 131803145 223686032 869093712 960372805 189824051 841618255 836890672 974651887 243101318 569227649 3955260 894380076 59219086 254120173 140671085 805228472 831259654 904227438 334808582 866596985 353482730 827342117 541245703 737529752 462832701 757759121 656252397 935290511 236536881 942865876 238635095 804915904 971094983 971835627 280980053 653611588 315890186 352679292 399613500 417860975 885748619 941855033 748534747 902933181 863917953 908095109 432004413 911142832 780730106 845492959 334890122 670724549 458611887 988474470 961781200 976545167 257246706 580869360 611750307 780990332 908013034 976317714 435789420 772070785 209289083 533912308 135975241 849605697 990529540 995889319 540067460 724743969 80589376 424654417 100440204 137703263 934555642 993590973 750938570 859861702 392547841 669771772 218457817 437531756 36330617 739632254 451365932 880286067 76240873 365795244 250586030 471762209 814391572 824704632 493744713 900924909 614841466 835785060 318764225 750344574 977214727 989080180 978073488 998066878 177299672 889562813 52523253 296597556 745155465 923606197 953259211 990713480 34928478 531409846 362908727 835101960 715175904 949896115 313929213 958923446 502383720 624800025 286581599 384979725 391188584 636425501 310078481 906742610 43678510 265094334 590519645 781062377 208895179 762745216 378518153 419750285 397024338 713111475 683160042 957639819 218631967 420684854 901931052 955507086 860210709 923457730 968260521 976806453 719050415 807078484 640349058 677659056 825269835 962794079 134410929 191104624 378768389 678000420 115974758 638420643 412841120 823197778 867634265 977374231 998340949 999041236 512394765 919610653 415510869 728852484 479739703 841384034 86428804 805320991 513950843 520313434 262784160 493761118 840132921 887798479 710276231 752569854 566385659 688316826 216111706 318942081 310191887 357912322 630163592 779121874 820971478 916796635 647711361 678698410 577675275 906869765 806699729 881514422 851307510 851538348 201980 774544422 420580880 626388225 37597912 536180957 633081807 779677268 693355453 905188793 469989392 847638749 232916460 576431663 206396573 570897352 63176431 65539049 468477223 529738777 351388176 911022890 144650818 589683486 726599021 970329040 533402517 635736217 345594128 772371713 309865192 683765713 58740344 79203478 722252786 845361847 207201748 213321797 834325372 949463422 766933875 894082520 273234728 481364808 269176812 477655487 779340786 951445766 543726006 851962083 944958870 964883012 379601592 727660181 709612372 727424893 578767984 664932389 6495942 355882248 807297884 951339326 321798130 711019100 483608674 762331123 168882238 215323721 446457911 909492010 320007649 907997765 814189537 971439246 526174176 964309016 93170874 544988624 563870647 746307656 618609790 864167666 728291086 804034408 714416817 978466901 646756072 718492215 984252635 988749909 739939924 881135867 516163312 835372122 551549883 579904390 611493240 896078096 658532258 968907796 900914464 993336958 188359286 563521540 52398164 639786958 193511775 726532585 498813902 924972844 824023135 960697897 522750118 540879630 526936408 589626231 675542175 935370447 219380913 490513831 64108906 832336979 697634457 740255988 224764008 418356732 625038571 928584449 38684141 300170742 20815709 795985331 127208310 773397349 17135281 583633737 918981986 981368240 564938406 771554274 589349430 863795457 297067865 646039055 964652366 993673420 798762402 912216294 913818548 942582499 769292190 833868603 730128993 733854123 464063957 883785285 872109973 984395408 202294954 287390103 478371231 866914358 747254642 754876681 550215142 897777361 53670287 768403924 23703272 555091702 783622897 809518798 714967412 838190871 271272593 529814131 221456374 707314510 268143354 758474750 69225643 556806719 634504534 870312655 726906183 740096838 570966704 815555845 914314042 914488922 785073532 801134415 363713098 974924747 128514371 765891118 543149876 809476328 142332845 973825237 25587215 889062584 530095608 827744325 618563652 984118565 366458295 612679374 141649674 784956462 415232406 717462066 814832346 897258623 873866716 878558587 245466294 412564092 697616116 772415677 695986929 984522094 364753766 543392757 343871744 564691283 648987414 877808623 145125165 161224286 570745944 758202821 4665745 277749596 337745930 642929180 805665984 965984242 219797391 474823417 487926151 645268913 859657099 911047912 274961540 918866690 217305468 288008080 68449036 300155302 755621690 778738110 297989520 800318443 30036279 369876864 167736823 306998430 742186356 898169887 628192707 722551105 54041926 211514282 311689943 748271733 341872218 491515746 360462837 642753467 761786652 966893716 892908478 941346963 77219831 488757712 510577221 578242431 100337538 860487122 842734611 844965190 748616387 973043789 578847459 949766338 663492650 990103234 193645073 571891176 316156786 339103576 585376506 966194072 749928919 908624438 460114858 595996407 140132158 322048569 544275219 763594337 348656897 738525845 304366303 650076936 610160252 709585733 494337916 663718078 316313422 765567419 481173070 914369352 156420132 274740863 171726842 991632539 413943918 954497914 714141392 932789874 707351499 996747810 845181410 978400620 166325073 434794971 198341023 832423733 420602743 495441041 67024562 958315981 484953857 897196260 802192162 926600421 129581105 766885191 146995183 664953393 283171802 393652695 946081834 974593624 94040798 504526176 376704246 715752778 982627514 990661345 603479804 667912868 862941913 963556483 205134614 330767892 710556619 996236810 159427664 453516795 714708039 927447358 36392323 894070214 246852833 818710828 369560995 806638178 966229343 992425372 511250422 818822551 355242313 842337589 935652681 975871499 749604243 870413043 887283323 910027949 873728434 966166635 794150086 843969769 316105640 710465902 809176508 916957429 730153067 949488017 732546882 986672687 291472640 826051899 17324084 727561149 879357627 999374863 66840961 835130525 603945010 995681800 674351344 868137219 612191915 702522863 335163704 396611590 408803453 698978976 864246104 937008481 122682351 297156577 822033735 970026996 717033388 736515894 954185243 982674036 243739486 659211825 936494560 992503973 565628849 948063023 785854682 903519593 512455668 602784879 776531116 873491360 616321846 747773082 583983994 956059804 756914873 783180354 861547696 945900883 109547163 838558517 12028397 174819351 699870797 766762487 550279392 775979956 269557940 615091897 150739226 763918877 554386694 646314931 113488609 606119603 910647617 975361622 242301495 673442506 73153886 903267459 286567626 507875703 180320390 896195612 53719388 856915213 832749624 977026872 436071611 484898187 13132985 960578026 773669020 783127045 666660151 956432298 732822500 827656802 536932167 745095140 162933475 175758893 112052398 833101748 881095937 958055340 775805831 937918882 23257370 71489793 333275768 389515737 51837283 744155736 911569701 932357351 585372687 616731218 60142941 151420818 679474882 919073254 841647814 919121566 251063062 845370722 30241514 419074825 652920346 999836209 132162798 382075253 295496403 773146847 460133380 551255752 271033468 725269460 741196204 789447786 429125922 492289228 329621231 397153053 133522912 606901342 745753689 870848785 959247591 971626783 244282806 796768487 792539418 861426970 240190817 977829052 935759454 992681679 612734272 862551144 648180449 955188359 153935468 844743895 81155706 568401323 629086780 789370409 473150611 513017619 731891329 945705371 424439455 592175759 872316458 987856658 177677324 537750948 879783006 948211050 397491796 473034981 166098374 868487639 620402135 735671237 711066220 849118909 98039420 225662602 767875824 965891979 932309761 995847171 638515118 686391053 678536415 851145789 552717008 932987571 540978273 882038064 718106179 733979621 133420226 634639318 430004848 828903039 607947767 658914269 577875550 838669590 677828419 934910017 481254385 966668953 773917331 798725215 927933736 975980756 528891528 540192556 897076476 996628746 900218106 975975787 703717274 817953704 364019887 557830545 868529558 980262106 908680547 930145522 296003097 769373411 679509181 716890950 632594231 953153086 902046800 924113404 969563074 970024463 981011692 997693726 444809932 547806704 390430543 445203847 320580485 345548781 128021952 708419506 940541482 971801460 197205618 998941995 472295564 927351261 676721921 818268975 628316102 690263551 390429362 443868078 906032705 955593523 402417962 752821339 419367667 788104666 281990701 684454023 176879268 425649904 536047098 550172097 137812933 821672781 492035366 715992887 112593557 280330864 855907722 972293257 999843271 999953446 563348995 971018417 722196574 976184393 26253142 935523890 576336845 981506655 152730714 743472727 655664524 808812414 683231563 932334311 23836948 632964853 594816356 643522286 295063141 934682725 881738162 977406319 736946530 852441346 912960043 955928748 492142821 496634277 570647174 994637218 395719216 685194304 315103781 909444400 788891071 993443315 889616320 929411576 803761036 956259635 535126760 962785986 766717444 829032954 237874495 613431556 639739664 915889347 276326909 859312755 628024509 986547746 983149871 993988258 982358822 990632053 621900144 655077678 329757500 988154398 987872861 997957956 79022921 761000092 924903581 939059052 774554391 863646539 522308346 540687898 631629003 794380146 69949703 657793706 825411839 942689951 452714865 882281043 811441650 833591222 10510140 388564376 651611940 749843352 580806557 695933456 613458049 928373889 351186984 783045341 503045781 960651205 532544565 614340930 794096145 818080014 223322360 944657667 12598851 478757235 675583003 732226228 887453260 940954667 17965456 887827969 207578272 952430067 330008647 886858253 407782853 613817375 32694384 380787035 182206436 613382563 389587097 544232287 465240073 929321691 750880388 840327936 870859867 936441419 800193687 973670566 281631984 510727069 527500756 645561007 113950860 220006074 44553676 76495237 122501220 665108585 197195197 552923360 615000537 817237151 679291702 960827118 425118188 603828779 70969844 518676554 48583687 703723126 191615526 515527408 13747488 598326733 374413747 757136171 330061391 647593782 12343016 76191890 391311437 749690353 159071927 546006142 955111735 979057519 587566645 947416752 32120454 65808177 421442324 726850275 553279511 838224720 164683646 324652597 360807426 909735393 884025546 916913759 596937411 837655754 581103567 949551093 630615936 786152771 170081986 450679198 107764438 986746572 466319817 678501644 872576803 956210480 393969501 753463234 78371531 852553321 471218801 697706571 788488273 944955377 138199961 345873789 273008617 674221123 449123589 482966542 344612109 743791495 817685335 919828121 437047751 785294127 648288763 948974695 542549973 870057682 528224219 703947799 350070026 674314380 373659959 843613508 314837900 779943215 840521165 946176517 393904236 554247090 566380043 678674228 442871653 920311730 196971687 758732993 153685209 640443749 286121488 757973330 329357431 545193658 969069890 981504025 507843962 590541253 407191664 420063212 686392998 692738525 711825521 947104107 419936016 714661645 814064895 926721391 104089085 360369212 729472118 785067565 928606591 935963150 113858013 455250324 463293826 534220721 128620415 547486454 683926645 697582933 839229626 955355404 246096569 988259300 671197453 876293907 270689208 673162219 877156912 915700044 722154066 996515866 722383700 991719332 833143815 834227172 139803830 574593749 513798711 678925051 996739857 999693665 146407924 261971851 251320492 724273434 26092132 418799585 566121414 784099892 236680366 366982499 603822946 885150041 390068933 862520018 331704101 711690511 548887980 765060220 760385754 800566389 491548189 914807436 744987865 849381505 921674948 934139200 467704301 982808386 561485542 897348236 649013304 995827607 908134357 920738908 423061369 670511656 214612172 336655726 275518253 724021348 382155773 959516020 377577955 525318980 477258235 663364792 497803985 595624920 822366075 917072000 746762689 884733116 932893537 983013869 753270149 820237224 579336943 944257085 798579873 849168752 802852454 833362757 668667654 900509312 473231942 870878512 393158057 612016118 9336482 203898391 383104072 797806960 102168369 871163731 917640255 994388987 639126827 642873104 771950172 962670180 872969464 921756749 956527914 970441367 943986673 964513555 173269155 515007427 502195113 689770891 65645744 734375917 269700164 958602095 201432386 765325563 494550932 600600553 625404483 809621552 390912956 426770257 648987814 834418037 705171128 934425050 269560449 991453661 313364320 529564904 256952261 889038804 105710701 571605323 806935700 910487154 980532084 996536246 288972898 693211793 322647349 998511094 948270996 997171626 85061051 91255713 2076185 547966653 465365617 614656087 749568786 778569416 583275120 737797543 454855717 492634121 908248059 965400787 436911340 621437529 27268981 238761327 282902411 426409918 750337929 855769290 616427194 977821053 676791482 767758434 655948390 752866441 320114874 811061396 435393842 591227449 231314303 519849817 140788576 300126842 44169518 801040334 290878385 800306618 149507164 673166628 250558904 465851013 36296490 698965252 386593513 599083841 499055902 748070302 121799610 970632742 208743428 392240564 228926223 698402741 297531520 703260467 599201765 995873991 703124624 762339999 652447552 691555876 442647158 743922705 966356993 993708447 915476851 939934950 406848492 747919823 97448578 191405319 190556932 529098971 859698622 932226134 640082370 643265354 62658822 380842920 813078720 902725518 784079701 802666988 320001831 471156233 939878708 964451620 790878512 837519030 151389226 903796086 423838680 806346214 973249216 976006498 180265494 550158318 306013875 595617634 992483505 998619216 943711791 975427629 165542719 298327811 827333807 888370365 198331983 473336052 160012986 364176427 572535447 838226455 606596380 820167553 887779862 940796516 24938966 131613716 70708711 371520526 255675195 705405576 898388968 975464674 874918760 950841891 942762087 987074712 44208539 355866978 212226931 591749754 159343888 888779234 779271214 849125599 535322389 929271747 860066169 953398047 912841805 922730000 223128872 676572954 948300245 985747245 752743144 855439513 251735058 995200006 537292967 983203868 742367302 891876193 852086503 980002678 158305252 996479913 734446064 988615873 411879237 663181172 15117350 225580153 981989284 992390837 303557993 831407177 885831527 951569423 353208334 513303860 708905154 977095502 395908961 399341853 679209912 985521095 786804670 822356517 544668761 588500397 540276170 970426171 252994362 570912385 213076580 798075865 96033728 128594047 968305118 973555954 501331467 539676014 587423284 869972033 901993851 970155730 191990353 729153002 303203476 549768393 416784600 943035529 483055673 896794399 806600410 927607384 46246676 446123759 896362713 909645328 214876031 557984089 5419151 321916674 572276009 735970135 639935635 792032179 187598384 228709566 137569380 617044042 226643076 439000514 974646646 990434988 744344573 940778338 471418678 811800576 236965499 370289340 460950766 990257514 815070083 990409936 283800652 676897795 751206953 757861177 883575395 962472043 217454341 529909996 189488267 424892381 738853937 838127313 610545535 919358902 198695619 561337877 68623106 921983929 751087331 841473423 850860099 870322535 779850640 831072270 992175477 999037067 640151633 721309318 346085164 473021908 487105683 664712333 396444801 815908335 309570091 621119659 180980519 570877959 40304400 220450814 902282740 971896310 158716533 334471555 371273228 400733382 617235790 988920608 61167743 73473318 275219905 444126612 893866618 920127864 750952059 946507277 45734127 115207819 911278501 949764332 184257386 431980786 777240568 787290855 571043806 989355681 824397156 876732024 609497735 686632285 312140159 844413407 818639483 818774581 793805169 999489271 927391408 942171478 79627482 176762950 165181780 678295753 117489394 143409754 458570378 756276016 315414247 461786063 5786419 258890159 784562934 857260579 306399008 629408043 793625680 862218032 203340101 517851079 187590264 889621262 688209172 990722157 776656953 920206511 185251189 967281451 967189774 990064308 663392986 813779413 110225242 286220845 848714024 957368527 520390382 522943863 961847294 993128394 783198233 814058804 883358832 911052929 424378594 972466614 225613482 493717580 815193806 854972623 505404582 807025276 110604947 650656176 382740867 523919447 744183001 901530170 40234840 231672460 240047905 260368343 980740044 992939442 478712923 815128859 856173446 930041832 534532087 595057119 316839643 833322059 140107773 482005941 96426941 207083949 590875620 764574160 414288925 449611851 306999843 490191574 94422671 429621394 16029346 513384532 317401229 608666136 970816065 979164924 257050266 431232451 352090729 771210125 112186728 274968137 876394976 966288080 156222043 961168079 988392573 992368879 901080519 920759431 749688110 842373067 822816295 972149825 575488945 909552458 888613467 944974323 997777129 999985342 999008265 999619910 398604585 447674748 327512360 900881565 82733747 167323362 62486444 255812028 973016950 995694855 741954208 992397284 70130365 246105425 738322909 926860913 63969998 854789560 214307440 272680192 598200073 758847414 386181968 900582761 894513575 944003202 797426086 950993531 966562098 978736252 458809183 920365130 738492231 844967589 652337270 667487816 694464145 714681156 477913636 971613070 990014385 993169006 949852173 958222109 561535258 729701618 33187931 265611771 314990405 880952161 774338571 895018643 107096067 283410281 420257628 502864056 821799348 936901652 557721023 756006535 640170137 729026762 911129330 925810914 774092574 990388095 164747010 469628467 500505876 696770124 844311521 952476278 44571919 190223061 479322691 905175799 71218291 230053858 200753830 708703024 740878185 932928881 270566326 352831661 422981210 555076447 16452307 958578795 282765162 719464331 619700318 729468311 177644885 882361204 848872199 880739463 662172887 840101529 452322517 944952057 276696210 532221283 98280639 420347172 607451974 701141392 299959727 636239141 220472332 591701315 209143311 383702121 654106780 824267291 51229121 513221474 67457879 190365912 105729843 776354077 901037333 970183245 317545543 389754129 48092544 401220857 493623089 623830738 664730403 920415358 282556478 926313706 564706599 881371072 368474443 674166944 520221736 560365367 889667337 995768585 139039399 307835498 353947356 937794238 798255344 848435097 511081822 541204237 447955835 658814878 546743555 665395267 204886927 371197794 937093880 985507073 664285116 899326593 134243082 648413090 94775650 249173799 367483739 615114790 410571120 605497727 499883227 536674947 520831578 639290734 386814009 980158283 124681366 322326756 155708402 877306581 403811029 737096015 983971268 991803129 209772193 879499378 255854532 913287822 892117363 981666270 851252388 998033894 141162918 372386094 370636447 379575016 423431875 775040667 212706620 342912493 935544657 942257418 294501234 768498111 49899772 268202037 131070481 349941065 552624718 768545926 128579206 414925792 243182093 708522103 453341919 516791604 126857324 800679559 227275320 595690830 723573663 827082772 877640235 966993299 809386063 809935787 391996470 673066312 322015685 841941450 528670694 856817357 499244887 893499176 765634089 862241790 314423685 941958891 881570579 985971448 153089258 837787207 376933934 733150451 904092579 907640545 851195750 988020504 953869950 957077270 766783011 826546284 822853471 930402749 994343663 995516717 361207273 594577508 582676535 936291809 434774763 727953908 686719872 699686807 276700355 428781749 199142557 632746606 399021237 520751575 697939955 820767521 742417674 805392374 666942988 757634087 858526023 924035093 930020667 944144610 148998265 483778324 532769266 701782757 261205471 398580654 859177394 926869475 286326441 484494034 418148995 610585581 737352037 905542657 727650235 873064929 953428419 982076760 303497020 962426458 318016609 583947154 16679058 154690546 101548793 606535167 67074456 105128773 290877694 373279140 876869017 922740767 704371483 953140227 605747661 762439429 807912908 842759369 942035930 994583597 120027344 759554801 808764358 826692592 648084386 918093368 645093387 725463070 144709342 888629272 315839849 695891088 851261217 954735473 385333721 660399092 79199267 368676294 495148481 653403996 973816263 992700679 941044182 976546277 921647950 976160455 761929135 983079265 860396903 905650765 307616484 970491978 4086141 589087250 127698206 840361195 350266162 786694240 642785092 808664155 786191110 932992642 974965550 990097704 996780920 997386164 548163984 988453067 49689136 809105603 644133833 715644966 625477018 757131266 777827977 965853060 20619098 52742860 377183082 479088432 559883544 702378988 363428202 369774660 740602131 757189198 30906467 186371594 504785880 701748124 180152947 593500822 277177283 468812487 179534021 827739346 375887435 934132948 279942140 325126784 990741175 990949158 789290696 858476830 184051531 633891975 553839669 998686381 139195916 473937007 884638911 948180634 624385291 714764282 531080217 942570240 5772737 493587173 607221514 913450635 465391156 751131164 973709122 994024727 910083768 943537349 587996001 781444229 271221108 443131470 967979407 990299493 313512549 686936749 580915028 740123964 48048209 495013609 204395448 873170176 940401947 948855168 268421671 556173704 728256042 982006619 24497649 303734516 28335606 231473748 514382192 672500110 304575616 521676991 216997223 378561892 107751319 589665175 23660954 338703169 823335573 882822185 552108918 707589930 586384763 645476961 935930772 994403656 633480732 934401893 533548511 907022428 928409634 957405626 882444658 885156699 943471800 945021225 985389529 990661667 135695726 577801943 585577250 822579790 253764159 527064652 283261965 483874323 125889719 754746241 630162431 899660353 85728360 597260024 721001197 772100220 847664294 888292624 232318405 539925636 160661807 386859578 449418579 945692160 987065821 994161276 910715604 928182016 212378446 874610064 765705360 820922126 225385587 968981346 689854699 921562244 802646479 919343092 862349310 973896919 421784059 751539673 882884818 906994661 923366920 961516337 922247183 931816394 343894228 567925733 572703904 953058145 476005051 776720824 877274543 911362939 529753929 773455383 456472522 655436980 968843127 995772967 806492525 959075351 931800488 988679820 630795297 821808479 292937480 969421649 675139307 886721365 531792077 616636257 12683595 197253223 325843608 959210202 447311226 694245673 499890714 676924063 373922478 813673506 638512996 937019807 722056938 840538343 720407593 940776286 940828947 976572933 269850507 315309777 772683659 899371467 420626560 803031881 13380217 77835545 558952597 681182948 729364100 972854790 87191720 632771046 986037950 995759117 737459618 875960287 180272327 481832993 129757394 283738017 312728175 955212653 150731408 570833901 989420048 993000641 359975101 573871078 639841659 964800660 353008225 821883073 838428112 996658412 951743684 980235160 383940070 660120798 254623253 439715025 783332724 863172303 290735512 421058419 457982993 734054426 800738841 851404730 734367049 873264873 755988875 990124023 732214222 852579084 819036849 902861593 801112370 980837699 18157057 678582551 742227921 834077715 18499376 634103128 265416138 446434435 710537783 849512951 615139567 912251180 44238284 341427823 584315958 822443037 683560650 989038284 818569520 865273803 263053715 907941612 52153069 811350109 614076517 850778478 387354593 476922519 583195056 784396041 562222560 824425585 515046942 718099484 759336740 993911950 464970956 738423261 206705304 290169248 109844340 207278007 745891220 968410557 598873531 860748547 977106330 999997735 352839639 693552511 731302282 922297347 616942993 696221243 912600224 943213269 241367078 721981291 736642027 928395804 845946931 981564940 263633096 873364835 148400165 818285944 440617600 529134091 44109175 464789425 910987404 933179801 155799692 297299482 772649219 877127408 776214657 955043888 263642877 733555585 381810534 623965767 502542898 968450439 624828627 847132386 802451623 862549138 179682515 544055394 787165779 893364297 886535789 919014450 673302039 817294436 447840864 870570948 235789033 542754316 671513125 953991626 454488339 943140623 253977125 359889419 408875649 745724105 583478650 829939662 327672632 382322488 614492752 805684160 764101078 898530772 903093004 990102727 955817402 998068893 271917750 827332703 959838054 980149646 539706363 945209977 286608853 755340196 66326702 517796726 25028724 954373465 259949434 540942341 2170201 378398028 587061551 940922327 685841491 705873045 663609651 980680086 916024608 918990430 335652348 958449551 921771518 921800886 148561194 324245861 93298654 597069707 898647041 974889043 834527871 915692592 730480003 929091879 58742953 445830701 615233204 785186387 380979657 634677033 673322229 707067327 147554842 813367950 103371951 582773276 324559720 971597292 402556919 803800607 726613582 766070711 554334708 939503402 553793279 912867199 65393129 599719980 356459140 809740148 853940669 932717100 644657544 945852994 725778001 749660561 783186731 798557826 591705519 595827412 110212324 446679696 875995913 947050695 99979589 926028437 478824991 919835837 922134470 988799627 193721177 588752633 979242502 988010409 535881088 820263625 581456810 885520405 318225986 691505513 472583681 612689055 675906121 848228159 659875496 760209521 765864326 916712126 212592070 743092894 656842616 954909205 276992096 467447859 50292884 91808446 392518511 511651869 442675544 962416199 843853952 889477049 56406460 806418404 594935636 902711411 490975076 546870751 738034149 781075976 127655005 932858467 334742665 505304876 140037825 920907976 932354823 991667266 854122780 998877983 309057426 397767634 625086704 907282981 765595435 890184274 559439907 681745694 217737269 242923673 7808079 66323742 101712039 208064409 362625658 706993952 493234252 596572297 210963132 783059880 89759104 370166650 43038674 761827647 330447602 450194993 146378267 417321076 194410238 734835161 892062531 953593532 889240045 980621682 440854362 944976676 303018400 963012137 631679227 831252662 236156213 713145940 15758302 282486244 628428750 791394893 722433646 781840649 267072443 343029201 136779413 907769796 223348166 826128833 919843050 928401405 794045308 900206724 414464137 420940839 493870224 807412681 774678901 941872431 762236362 994612833 7567116 346145064 456901927 865460736 412909912 687317353 498279942 802982602 876492253 915127367 701273224 878102762 449906656 570615974 910523912 994222306 511974016 657488116 46466889 174147729 803370302 993403908 250273685 982701058 415078615 603328915 393635768 656914708 357317328 873411952 119469746 738684584 184655401 700254355 41622058 958897263 950182971 989505297 982242090 999000304 953212638 958281724 574841085 594349708 44298947 906185570 705902358 905593945 921991348 980650037 749859216 756157678 332813566 426757095 927931325 938055015 39529091 518564139 875066713 899165845 596642942 708463746 989457942 994249291 899318440 930109103 757260061 779555798 830372421 882271247 454325386 741744022 708898036 860872056 55371764 992278689 945660591 946120603 100440305 248200708 943469160 992852116 585034844 898313335 687134876 885897241 122347523 389456671 836488992 908201160 772684478 927581535 357298661 997872320 157529060 661988057 448036972 999567406 4140927 657427725 888882336 967864027 626417309 737414496 743551063 958027475 450924474 638825444 236365970 700772208 787243389 877662854 940364977 954747407 587296401 660465033 140992549 308487140 459049301 934832768 624546852 807581158 330579433 942144086 988682216 990510753 449808247 559065981 763090260 971206085 839338420 964628811 456777614 773835615 178398122 369746368 75302553 621999444 651813714 725120395 885787894 993002405 835669694 907809525 163255848 347690715 338626811 781808942 78472451 638222756 425118354 508670504 711046888 907721360 865818326 935782736 906274899 962412857 735227212 922645594 109308323 985492725 14602927 134093492 654986490 678265124 127876727 381584045 599536697 840414137 140735086 320714152 400611291 496291029 475505800 836572559 561824792 637073868 92672079 516453177 27903518 985393203 566966425 935846038 770471116 869596987 381356038 768831791 828731731 841244990 217251007 893762882 75361119 845838924 918861325 981889905 235021448 901696617 125859428 183847107 374139065 666976731 937558879 958479174 597312062 978558115 785423431 985192085 724307577 863070340 887258102 963463788 314492140 584655382 341143269 975441784 992525645 992940657 12260280 940441507 883813774 954177825 227394290 429228486 175172308 674213903 679524199 746730998 664744443 934231238 738585222 760177594 118094664 178244399 298938892 801670850 219038521 637715749 881731048 982064725 291143502 805492988 693444255 788538274 829900713 994241126 779445042 861312568 831411044 863625590 371581920 525586903 576107935 794653006 174140383 787167418 93103389 230754488 351283595 751136995 204521840 481409755 406161528 714382683 703332124 721233454 892113318 921922036 335044306 778241255 540102810 989537151 431955825 501255196 540656009 619252393 19357329 634273890 845876839 903078529 151842417 859193952 35244757 147580411 968585482 971203678 38232488 570305946 128590908 731171917 285651207 811652875 524645970 594183209 268422483 909324554 162264835 577580822 542480098 730114956 933992520 943041532 243112281 491370465 445168849 698226501 93518740 756777535 213496768 847898081 809279480 894369084 84680834 146082123 105033763 837281490 505598833 517408564 879139698 886859582 545953688 973941419 977391112 996766856 436447478 539068044 273556534 989058138 495648645 678855219 882081708 990989553 72169435 98910026 76116021 395928799 671515155 888812135 735741995 859804206 912082879 925562926 447094041 687646901 257770916 751450668 322121070 402243184 293407177 301492378 241891807 780080720 101842382 354855611 859187243 904146822 979283722 998617055 27520812 528259881 309738002 872887681 472133780 850224667 97499321 455591117 317857553 337371137 147416246 322686744 416415240 954432851 514862616 727173709 582171147 806437201 104480892 984918065 743275856 875284733 868853404 934409063 864528017 878385333 611458069 909357249 167535749 731071296 174229332 333028797 70747982 583641419 708920694 721341269 824019078 951885489 950721587 989468061 466133718 664492673 350118708 419357699 489163399 649940664 836692387 847058673 278779027 387094469 109202148 951648368 835949460 939420658 298056255 672523504 40697594 684447237 23638132 938174603 95614409 786109469 170220079 454588329 735992304 887103763 499093499 872748034 939683037 981535321 681958186 691682815 950811911 975169605 620590124 679107710 322929059 751115703 315165723 438522375 486067029 534244108 51406880 129286204 492022556 641936328 242888495 858322564 681237779 794842274 985044749 985439746 918840535 975106887 131733902 978622047 15545910 792173936 77768642 313112824 842948458 966655908 21259737 687661277 131834126 874309012 82512876 207259451 943475092 977693829 465225977 772302258 408388580 677892529 189486573 353453162 979970394 980100696 948377536 964263139 369048181 483561918 881355364 934778725 691176298 952197040 157714536 758067162 111085576 980827794 439723306 505521529 406983968 721740213 363353619 419021526 839602332 967481964 370020412 519268876 369600016 657845841 260830914 799913416 799334859 974740654 155724051 529606883 868002782 974020194 219491496 783621688 673881777 720998892 648746455 924752726 367336264 671388703 545400913 948538642 775262726 839053038 130494178 564540169 508283819 617716538 95473091 717869563 782501527 892991121 343221978 374288961 936067582 963865273 128343431 388194802 407741373 575032780 155652876 967558964 267097245 843584320 736713732 955319084 683742748 710370580 972976116 998027624 984354067 997672134 913138329 982470680 442761536 659509753 258471770 508747903 699113000 744918594 251539516 647189394 421292831 707975567 153313133 816899996 960613639 997113214 508351168 771690095 467508394 609087437 256063013 882497304 115433474 624906546 73023476 363588776 716004764 812943693 263851434 818326387 436887357 580953724 2562179 764362342 953563573 988342933 450830201 787288791 712680186 964354621 437409245 539818109 176791440 595480567 396365160 664155869 876147044 964874523 158065230 857324376 717246751 866750518 378721735 440364428 122736406 490944102 979651768 998512310 328039790 650096463 387060343 731795489 525748050 701748327 139641460 148936022 894752773 986198070 889513080 965578608 294573433 702400434 720084801 853942813 509267563 946181224 569921257 628262874 138286174 602403059 403603392 415856163 104453231 167197486 950200568 996353926 701500951 796309403 901275196 995862979 691094903 941571019 169760311 924062135 841914528 887767894 735374299 951157326 725345906 737823275 781823921 924779338 238867488 641663170 597027438 985647393 96404788 740936136 233413713 964512284 208008219 566138712 612600440 903698713 470358157 914135386 508107733 763299943 838743021 869160195 800042739 976167426 538934216 558471891 268369540 656769941 143720805 371814311 158014971 968003690 512464338 788285836 96182856 808972040 71735126 353595152 405664216 959054620 196352438 652974538 990565975 991083526 977062212 985772208 438725630 844059847 771614685 905734470 641327762 941256946 363606425 997853222 158015143 820590283 783014961 904471740 835030178 895826279 12658955 462988644 687714811 998416535 707467037 985632737 164066503 319296648 413054787 928691030 792877572 995158011 508271808 952550070 796789252 814553467 784464392 842682982 745521899 948868470 308864250 668339767 645770485 957358104 207351136 737692580 666293259 850310563 303099887 907876640 956029390 984334946 262361254 655972716 704522955 968780364 625692396 752306894 200661619 204413876 721107430 932982851 667830446 786916978 168609441 660204384 303440613 722790636 167919354 872844955 44380175 795772501 763467862 989556593 610262611 685308382 955460874 997218802 610938788 970555791 169020061 540248798 635430410 741402132 335331951 608729771 525667095 740067162 238199086 967072018 356321261 800982946 388834750 906276892 205210641 641548690 397606362 471790398 168843827 667373852 64333084 966821591 520221591 948388597 618393975 727142680 314937860 662192936 685177494 896805472 314641264 444948580 546170793 733239514 213014369 632459945 855485791 921465019 615310500 847589004 132583179 471240040 249563530 797217021 302101741 335166791 727355815 905161317 242130601 712098911 872135155 944054586 143891809 168317503 593471714 596829213 451481935 474452924 235184260 628512846 663774851 997333197 281948442 709847276 278959946 730123185 484234785 611896697 890664941 997212676 774116410 911906992 708199944 956100350 671289219 780839637 566893924 872115686 56445658 834655363 762073734 940546272 747083035 959783564 268070941 450978925 30423200 835669633 714865520 787618487 544786594 634186791 589914500 940922456 306113303 894874728 218784425 552721795 301944220 325618705 195083658 784427369 564813274 953871712 976746364 995320613 491570108 763730907 819855098 940479693 705229043 801356773 209825600 715051942 209759184 573860069 520874479 980745705 560117401 999213072 619368288 769027609 705707717 998170905 946223623 968332702 813039525 970830590 773855856 829830249 952882207 989982981 990418716 997731931 30651623 158886375 1125132 432633143 834282306 902728166 808175288 985132233 149663818 250366789 536077780 908196489 531170791 734089101 217274937 661582173 86010829 969930719 929316474 981713486 128202276 160211110 902783416 938663788 720248163 843616374 937364669 950572001 392462443 680786633 665807981 782126657 328658492 479548302 356999353 440469360 566857101 999552053 909018485 990078670 663914717 692480773 639749657 956163401 455211530 481982149 402186290 582409690 16462547 472914385 574769277 675289341 826036135 942922833 604802765 830344478 990423696 993504519 521920735 867076370 675094221 881472645 186708073 762744149 798235546 977142788 218991259 613948151 631443702 950983903 33133038 510926114 129534438 916477965 831622624 971872840 164980176 236540778 16668529 112344577 119682096 738414335 705142236 889170789 284098264 892171946 626879110 966140905 992898051 997212844 958547556 959721944 907251969 953420369 553210487 566050731 38472702 244906973 783810328 892318927 783952288 950147112 638509103 640828966 274888177 456944808 753253654 821145677 199035605 343181828 831625240 871855676 246071340 346663432 684052344 942918795 420783727 877583935 768947579 781339727 462722670 496565366 644958982 685701929 852471074 988743528 488684353 825823240 6176686 717984796 370539946 957571347 38588966 886216250 81207775 745977632 846317884 943888948 24942459 716483268 665607584 921769156 14518988 179196380 955662858 996964062 565722898 717344220 395751936 631002256 148443392 972983450 697201563 991404483 485890295 530918334 155619867 212823628 629178187 919765611 254294486 538958078 949140119 973073173 19613180 751101366 888189057 978615770 918951029 990815485 18407155 878893283 794811456 961478303 322688187 897358703 782885318 955972375 858405586 920227921 896113028 999825156 206122835 353150086 329594668 893871861 472078967 558403646 369908456 729444497 305622384 721811345 944193624 981059236 796205647 861012607 356828337 801037244 319428103 897987722 995185856 999960987 863964170 973855651 63234497 353352091 974110736 991187767 798524143 879633733 541679093 947279627 373543906 498491581 149850780 368986148 731099283 895127596 169003211 494038801 465327481 903379777 687704534 866230784 90454216 466242513 939968680 978427613 948116554 949421537 502432989 872032598 518201175 692683482 866141281 906872201 922538732 954770475 638133836 698381236 633109430 675439002 478715873 852876219 128158758 180950841 541152940 617914501 73112306 844401314 949616718 953918561 71890439 735781628 922659644 932755890 313138 798364641 467645289 508188581 510593491 917673878 207034118 332699821 351101731 951134540 363542946 924784648 16373976 450544716 290117801 433760711 623046413 691850204 940398607 952846775 797900315 974161949 620988882 653920006 810990092 888001866 764768904 969546999 949634961 958345366 228428993 242985995 416564651 501963692 735419614 780244815 668836148 975829461 940404279 973818039 465155540 586474566 67903678 670140299 598118463 753051841 842315225 995566618 955813109 979563071 212902351 703581268 959416068 991028608 48046493 973700460 930123491 970954017 147876555 704160324 152312138 282500172 992989663 999152826 560434792 673722565 812440987 833896341 219492952 252556480 6375329 175606397 965921765 968068416 204048716 960127343 870777974 915017121 67372645 106572472 388803305 636777288 506681990 951780249 697883070 702783632 227843955 901514601 785673044 790358998 964248816 987316045 770578245 993340143 987382848 998470283 926851016 978632350 342255850 744288829 439535968 674785455 344218572 727486027 199847474 826813306 755640111 887688385 510279024 571401991 770555548 978897071 398172622 401520864 897527067 897641354 336629204 339143216 209216685 972557988 965103776 982599167 479722488 849227652 407739359 975580436 422218382 915784240 526708018 554315939 494803633 794377134 248793558 395906284 355420697 690111998 941240201 959211347 372743219 605543359 954882447 986039753 402505653 415780976 971945133 974145310 692176638 789544076 701505800 918094007 289418874 626402731 423553508 563041191 776234132 812025810 694438572 832449127 560806679 886330472 942881826 962713995 462579311 717964597 305743164 955931804 931472471 968747560 239287861 302253314 882253855 937702003 977814715 995655293 588781549 754306898 307268060 506668640 133134391 480297749 497603894 720865882 392363227 750212260 826686445 844965442 838308233 954973672 527745225 759857897 681797820 774200692 455278201 921232984 613741022 892871594 216349093 458798386 600439421 902555335 393566663 734919344 31728231 136336294 202392787 316982294 414019116 787845585 946710569 967394898 569762671 755866405 381128253 785263497 583467005 632226703 411473119 419942278 859391051 965891873 525802380 872609784 366550090 866237512 771884157 787710133 964266757 989381097 761590437 949593675 38091861 865614812 324693431 556614711 522480680 625985914 777581291 828052717 275967186 600535649 594898937 760191434 16411057 133634968 380663690 481139848 601362509 749981888 416584175 824811103 24176513 613065676 50637758 980161733 381085669 810789959 412890235 837349745 136465902 672971179 441501612 626528157 869817908 917866596 272006349 996011797 334023304 788444655 702369502 883414615 813660833 971740423 841901899 981592560 818429335 841695208 756136258 772023437 225711754 478772061 781439602 893143381 575400273 703663729 488066280 961586614 474044325 940061611 811727217 813599448 275663558 279234307 192359575 624580764 869394822 978324535 348328565 916924236 80030296 290638921 735751173 859591380 842052114 906229411 54873521 158617131 693884535 745420176 734242599 736488192 749721872 836206668 691862527 886860517 238971796 622081981 47359056 57941364 789448421 976261666 95155074 322042171 267099958 585948491 448312496 530015088 932406795 948693971 13949896 615654759 436147472 862968224 810120493 942173745 141985201 932725684 190129907 977954717 455912337 864582826 399288556 513472522 996037290 999511751 474050390 945608856 401202180 530885463 782476366 916492280 724946227 736309927 322983367 592090395 808057734 881152118 807966788 949804506 666111810 716394688 822072710 913698303 500797524 728391078 695833959 902260932 457834357 799899575 26777087 823736703 486048484 894737455 153721558 561371470 542795837 898022731 480624930 726906976 75592221 763973682 908064823 942782136 5604027 634438198 113138922 839311613 41218598 596527630 646684124 667229287 93262630 819085751 53229026 365955054 965249343 979794523 22498862 55844083 128057239 350352193 894503114 962710690 256752180 935130322 131956402 934543722 455843919 474932563 992602211 996402612 910385485 981068457 292966683 629248948 906714269 974470590 804259867 884562415 621340567 648676009 705939293 847783488 524075731 953267320 161521020 249080635 476039034 590510809 102988078 609367620 679801372 927889338 665569298 806587126 659668895 767766136 965265123 973385442 143321852 995446592 691908104 794821600 915998672 959463962 274888620 970323144 520045758 536472480 320186149 703834100 893203256 993623210 538113128 904913796 122785571 672647549 146731900 985610530 497950859 955937579 290212916 337687885 266426033 269500467 704299793 842618396 759541761 919060574 742553750 916648055 827504004 836204464 110397419 694373748 665254380 947328245 736995807 743854615 263502922 889938481 71890906 842473348 385299484 425997277 470583638 820236334 964915835 989477955 681052335 974093657 430943947 903075011 344173027 417312714 549955124 732382626 279929179 899574564 113735454 180508921 206208891 460549602 883562833 885219279 2175265 736414308 213850379 478568472 445218003 864179037 705853265 941407432 345042606 810966226 269168803 363860109 870260419 910740287 248069242 668109004 910382541 926555522 491164102 642289030 420354582 945754523 71849626 113696061 305960157 786167662 345441775 732588345 388809557 925358681 671109774 848402912 426687105 665052066 768877602 770604206 876244459 921274184 122414813 414869651 229108526 328665266 913394977 966211027 142454992 711191418 457375317 920923295 724957265 858651520 939547246 964945594 822690707 890963392 245620167 616015476 992112130 995483273 452454940 695398316 525263997 884188574 363331772 909807497 449831336 488934988 788235277 948011309 618361321 852066730 983232991 999776051 440191896 591210070 528955505 780683313 628332271 816488650 526723561 576937767 989418749 996756295 350529466 571860587 655830814 833590855 79959663 121260896 823695919 948838693 508040864 894622984 456067622 817048015 128776179 972062892 722421436 851091802 67993369 351992284 719702064 873531824 118241311 829995850 510145507 787138888 618783067 841690454 990048709 998176564 91446915 688524927 673817068 927496706 977600037 999781183 828006567 859648345 695510185 781201587 39821439 260833204 179255565 352857019 770950568 774549171 428054232 698054599 629632019 660243207 763346452 905976977 804495571 939326112 156282539 204070027 541827970 604015145 970397019 987411598 137700906 823279955 158032081 174249796 196638790 738856359 433132266 506059948 491277826 967145405 769534099 975978227 692737555 956491049 13946630 179055526 314150425 414506211 482107572 943989669 207644263 793379389 953053475 970173541 769641699 839488741 410414220 682010675 859312569 939322491 790436898 908421042 333763676 612020696 88598365 283316090 689094134 862148812 704244406 775274000 860824260 933119789 926157832 955003077 392032683 441496185 109081160 969702840 816470218 831953056 161920036 431498611 484478791 585534829 537853057 880902779 284068917 351004481 579105961 630385261 167801436 407368334 592219542 932367008 940047072 987414701 898375300 933972058 920182036 976984086 379479743 656931186 131563917 504257735 532804372 632766377 297356018 610448440 659874022 781354412 435067773 750202473 703444457 931981904 882156555 936308341 995893478 999179596 876888299 946048465 372878111 618932043 687188841 943548644 918275489 956399034 501440616 839156289 547378616 708557876 154065557 888124162 866016401 913244367 114277077 744778729 477675971 903367131 424217789 900864731 648051342 845549306 383544893 763593359 337712355 831222281 746459226 765803890 328807451 980977309 839399077 874470051 145141428 839368524 851101483 885598427 740653859 872797161 599040374 886722259 414649493 879334187 374682471 830706074 615255685 907078871 164304188 282314698 609699404 855132400 612802219 945922248 37848336 605413180 391391118 495688664 456385592 634965745 998612401 999784215 999550216 999926647 502095981 814185808 844261557 875258559 51143632 141856533 330887674 823298785 938785562 991272735 124855832 989027018 61321780 350464585 79201839 957363907 260997569 358148966 783134409 909330302 643816093 967909871 72999644 797072190 925263608 967119948 286529466 535488524 351581773 965837624 965844054 966410457 586562351 873021639 562275708 936881601 730261712 867590359 845281136 993008707 283427758 862111312 183106911 874757907 196511460 230072011 950322228 966270739 745254369 772621928 585725881 985108387 121230460 774966960 848567789 888715571 167977804 928542219 232092023 634416658 584088586 650088496 794602718 947726921 348784017 362049624 319380020 878946291 233783903 655736770 672674624 864487258 1257659 528153824 897481869 960408339 810664890 828808249 796197014 938436508 866458024 939064776 228309205 976637240 886359806 917233067 679140681 861192455 349991901 780893335 682732760 953424904 614913084 878918496 787106905 929084216 222291040 530398045 141121930 386021423 899357707 915224581 917349403 969471157 998941230 999175312 369561977 405133285 610553312 838300459 440856035 961598845 929985413 951061087 938817768 984142298 634151702 954374785 795890634 874775926 800554672 923539165 902860815 948233429 37841551 403288140 82372312 165991941 725485348 929571922 412347857 523080972 386785140 785595213 600373883 846227745 526180231 860878716 970664923 984059234 767122502 882886827 986844904 993757307 50627710 903628663 958591398 983640499 493370310 617717408 275999715 636910813 652259118 954300783 686325572 786423069 59574646 681953451 62584510 609691626 165477645 962732005 209490317 750623502 702831919 763330712 366144091 516701153 467600731 712068027 933263266 945004278 255696618 339312271 709706023 719775642 55270558 371765629 354596813 630167685 532556567 969757088 630843885 887778950 839738249 959370226 466913561 626984654 527184613 761781191 50865737 755398165 872907287 969526342 80175163 817153810 585358412 986541340 144887038 266921098 471979309 806562706 75315099 113194894 728348456 964652114 230648832 881859754 4524936 662424041 429036543 656678957 74012248 863421497 927520915 964742039 9289997 42129379 895296430 930167741 736810093 969058659 497497821 726064702 225433114 908562304 167737358 428761958 241423906 816889360 507175443 915096813 237387072 840269847 907085486 986366501 458830991 570367596 251008715 936092087 60977431 257032880 229096628 313938224 611299723 987531157 838088480 949285888 634529738 848560246 871413995 902627722 887209249 995869743 166254940 730822684 518661394 893521436 150478381 277816909 842217148 885637355 294532880 935124343 252213413 277381599 411881230 636042872 992232404 997060073 336376866 613449769 302197355 614402943 210584853 590187521 619052722 941678918 912159875 945457125 797058696 815124694 281810991 757787251 723075159 883171855 447856715 635116842 963993086 974445549 254579923 732468837 37089057 846144782 523931160 611762792 669357323 901593570 507946598 585619426 904173813 967600448 423964171 790295589 572459355 908027386 27062929 641504743 588068838 844684827 26948742 992640819 407163633 474387494 715976415 894569473 723599781 972624951 197983093 630225368 908499938 947976840 45254962 453723023 796097735 924612270 932432826 944412659 98536546 250011314 249851794 532335879 5000023 67944201 962984728 992361382 615010685 680161621 710258786 913934385 288524374 970634289 41129760 150079444 123188769 175983273 375022023 411231814 338101323 648592807 609046230 968772214 547561108 743113368 562162742 797140517 781435428 887507953 790304921 825221902 676468409 944781016 241845356 656584615 742906945 850245571 456724026 972674729 414659875 938480472 969134330 991342668 556072685 574239936 916738023 947936913 601377236 779601604 167401484 315544935 671692164 911349300 122176463 540119340 638148214 884038713 611100642 873582151 591417820 833010302 264487593 642646462 714988674 784474157 461058637 789295601 352869282 379389379 773222854 966041754 347955953 916202847 146476988 547727382 485732954 949968753 180689784 280192110 178191834 773219635 541525861 925907654 586188776 951921906 317964383 751044705 378171127 540774737 243163352 885835661 492339614 808177233 136157425 427392035 713482011 720679001 731645784 786664657 884926425 904727498 443223446 986168494 128616953 636853486 404952947 483439289 107372463 213915608 773493415 981410251 394621880 984480527 133607210 914293553 479616520 512122011 87725966 717897837 802163144 917641381 296483885 599659375 693418157 888663732 447909886 662449993 219514816 431027342 572013943 711168556 997281227 999229886 224631266 500178218 575872627 995771926 258819762 910442736 512030689 555120136 632272336 749881021 88607174 612348112 545117769 767812610 713849055 901690863 103566580 844381399 837319556 894248776 709524684 975246623 645309003 738855663 454080095 623937826 942269193 991054820 147942958 714584087 951962988 977033596 567356692 995809652 303741157 495632333 646345055 793287790 171420760 958690266 131880903 875143459 445158587 989207614 410569403 734505177 224356357 818685915 335179979 661375207 681510005 905157663 801729655 867699879 198983609 728142092 282570031 621333755 333089319 500851776 119360657 919844859 547989503 794310592 466158550 623545737 956212931 971871436 766218377 889308758 353796004 974629403 623541537 915645448 837881797 961023147 71450426 823981786 998757908 999564417 279986471 812424921 143297361 825480204 75794174 435016585 880074622 922287703 436928505 799234838 652465954 763662861 7442376 426594298 314642752 836228105 353506145 797067201 220690161 712700073 33494393 338639579 994120686 997167625 322992558 535413125 34984850 718370368 105933818 297457999 702892424 834039470 859576832 980330182 450563912 512347815 202918265 755191966 686464505 780327903 205560978 988483774 864415285 998439847 614952984 690122492 141281595 540962347 89595430 774193589 329003432 554895949 320069902 732236141 250162044 661995477 506334946 945412537 576893653 752784001 709000979 965712612 97097447 765965012 791761979 996583955 533198974 684874852 949264510 998413032 710697193 854668102 359364668 746881129 984954920 992693591 114278335 535248728 613369436 665354959 401980395 963862572 871632711 923170454 119870638 150006388 242860874 670767832 313125130 826407245 544343530 780787026 541844273 778313695 612343294 978591472 638494892 978791913 661149171 695344553 710678108 982902328 711698438 886057565 219408716 358948464 413018086 943659613 817876804 926853594 530271103 800293961 162188008 829276248 54913157 464285804 356468606 399192648 485878583 848753422 266382123 481106807 1114410 734250240 948772026 955482368 626579042 945384451 43328459 663168731 919122624 967064737 341319920 442029141 860566296 885460250 91399 142857475 203239575 570173096 750367112 908456451 493398559 745013586 277703116 448737254 229808845 527541520 343061945 357099377 616696835 673552162 887118557 966235537 314432417 828787539 620688372 822951167 737229312 900657961 236533872 306139135 641515821 725633937 932801628 942578327 906573776 983322943 655521399 740544280 952756906 963621857 137076132 190023619 766388 178426105 436297871 931548715 860627226 939126312 566880886 762953784 83487109 518397043 504522584 869300389 424456380 538314259 975909118 990010294 383595641 828664310 216480577 728301121 188683332 462128517 591878158 742860659 616458307 906124166 502368973 775664695 257347469 905473831 999820998 999968400 860198141 979064351 763538098 927013605 437423411 821680911 228533876 527369422 327350087 552634381 432239569 528847294 480582004 799113811 812149517 863199851 753340622 799317958 436309576 832883852 131952327 308733781 729887212 974787581 764312050 799136891 711782710 894404009 944264556 996295314 153566605 265079859 530676062 573421210 763408577 938961342 264057642 704396148 656112356 926049703 278166829 934166474 76918463 829508360 262820441 985209961 335770713 930199765 202853149 426556496 632269831 880857510 308328594 698779319 487652586 777560632 746650051 989500848 672488005 895190479 884850491 948763862 160652817 420880714 939950850 999263306 432493629 714161204 470980159 947888630 847706564 885657149 590673551 603193325 273469637 405414609 287876986 974698152 198047200 287337574 798025710 965826068 371624853 786645359 849070008 997488232 465866964 595375643 854525764 994644849 873299872 977756478 695387736 779517097 961649580 989170954 101063203 996368902 77783500 810098083 650166346 651346938 367385310 708217059 583752560 809865831 632273425 671326120 882386781 997793610 781111521 903604735 972446167 991421643 955290173 977792605 81573493 141444156 964278299 980788249 838096725 839606405 728193914 949887005 237557228 803338800 749818794 928142611 998295963 998551713 975391370 988408655 74409303 300396088 656157504 904299298 480766276 823386176 904261569 913062656 237315627 753893718 167120069 382930225 114328881 380093522 689533735 819611356 873222457 886395871 628675423 707602479 98902404 337110268 654809316 991848645 77884723 381155286 401174005 487346619 79357023 885929114 682452515 758549263 4891247 520404725 133893563 712940302 459364878 981652688 155072072 311543263 464452078 761541159 299923624 668087287 883016983 956604662 414113480 836456167 698071232 770827026 879715591 966298019 273472531 893915265 403924472 982633628 188429322 840945749 544773323 803271950 605945285 915376387 446155283 633084129 243879957 795927574 104565613 736170987 193673332 803481557 768290612 876225941 231308969 903840580 366253700 408977665 935175603 992740722 64641366 805604610 308268134 583606782 776804353 995430848 410548260 806626303 211427296 702954222 178318129 899094161 960956060 964190104 458284528 878814193 117688977 920491650 667688997 839077814 866795510 880581513 870680002 955845356 766512618 826938527 433206601 577524281 578433596 929007059 240249632 728833924 636830210 694705569 161540012 816868782 447878102 938093050 728694643 889062486 309264840 760115584 377813338 806550678 713807151 922033419 440755135 847543760 164375954 320014444 313290884 736928278 601277602 815549315 12205476 204188231 193031292 404507403 208686894 688615433 838661956 965196895 322944715 330176875 491117116 774792761 979689944 981268162 916282877 976414318 192799511 717284420 111177387 459470963 601074893 755508159 888083662 973607812 368246989 867974424 930957674 950790549 761681406 926319519 205137375 738940472 467798241 925356083 627468328 912670004 240498538 952964525 529246514 947577700 478065226 944894979 728221467 976138037 524545697 633533636 266792699 933226322 393561776 592755713 659380727 875341666 990089850 994341882 284098100 739129957 307347513 688550270 621803535 929224339 297222182 703169696 399372452 559747733 973237364 973416477 316272890 514876726 300691407 572154524 973593024 993382599 334156019 599940846 769617021 865214510 713283780 760553670 450007802 869334126 920767416 945550375 478864500 950634005 567381071 739097032 350504687 562599758 796689532 880262856 543112382 711792671 956736262 983843668 482349413 916116659 943759431 973322720 775183188 860955628 236626064 259886894 37452774 525444760 695999407 847731428 812517807 923359705 235501115 714638678 764376432 998191721 168710424 304316709 631312696 868342821 985627178 989159663 42246885 103048958 51325683 959575846 203209369 864789701 823755676 925734926 849970956 892342443 369272422 459681288 583112389 885621812 611143345 977943962 275186646 635660679 61149960 279586167 925939679 931252983 290226625 592952257 520355654 772223232 15532025 325840682 900889462 970496895 719654834 864742925 703411209 768924607 274605446 610153629 737319018 943142659 728605314 738971468 214620172 510434533 860924747 862382212 511161412 703979274 962626824 976453327 511948756 559003026 163264039 680404186 637816606 827964941 42831870 774878083 886284168 994744666 427262265 596115626 34536285 548492539 561925090 818413787 671445282 918273849 207961788 526653728 792441012 997034189 487040183 734281182 125871417 353586583 470974828 865981664 829869810 895601883 424952059 890855686 893939822 930084446 365258973 374689601 692346209 699039396 505602651 920969061 289165053 340449878 58680463 528186237 706712183 917455102 453862286 476959424 158965021 825855299 861008999 979722439 229915316 606808308 681183897 784416308 808147696 949237542 797779857 802447134 984148721 993698359 516683388 693365251 332099000 725302618 226559354 320682400 282968505 713752866 552753932 816142146 367431338 908600692 836222575 980045582 608800059 756650238 578167643 851730724 755799456 888605919 24833195 773144807 392259893 820347042 509702040 722656969 82779010 273885684 559514307 973523332 392027624 626900417 880660618 893776552 543196123 648865681 644346488 856546944 518689000 868922189 612862725 823099490 39429692 445439068 98832064 234254155 906653790 941941575 379219361 490449975 437504956 704030987 164078303 468004976 825678808 990096463 721014634 921643053 65017381 755387975 726866388 820075419 358211951 671754300 682090954 959838942 811704145 833682104 784850159 823075630 267095842 427696311 652119761 727673106 690311979 844697673 168492730 587703656 353878642 792179393 143664457 539595265 941048875 942580161 438810023 814884235 582639500 991389760 514037473 549472261 615870987 815168128 776142038 869249162 289014963 417306269 396070271 942847844 641327151 652808649 355183803 670055617 280881671 674791550 870531860 983778190 829315517 993227130 490923133 570624331 817587531 854983360 169165034 700386294 844123872 889149825 623279021 995675975 160936669 310228117 214901271 368368808 822283262 963468509 185860234 205990397 73293456 558332958 306757228 798380206 18895003 635152427 968568054 977298275 677942186 770029183 369065832 608640287 360848245 678623451 289669667 294447778 636178774 965520408 460491937 881576676 314151653 947576216 575055378 906538874 852101522 980825368 616841447 642413281 181743569 478523965 596340506 939699005 742505918 807960781 433017277 612397480 602628912 672208543 770583647 917788892 463309218 526801640 415494282 538689990 731243681 747473462 255903890 843729317 153454274 833511125 329694345 921256251 572758459 694011685 367911994 740799514 512620460 933125128 600042463 837369442 410351764 977397346 628110381 983375510 730494362 824996181 96654475 735009439 290560365 867872217 906208136 966506578 742292165 993454333 587224144 813946414 30599416 967611375 734021217 972109593 242352552 415939060 925561775 962298264 984146346 985705170 880497772 912569499 570772372 792300116 305586025 821987040 935663996 967863589 827920081 997008645 146753697 835635023 48117376 893188649 139740682 916783715 354202434 448589071 89196637 320964502 818037978 959889950 692264000 974326845 531597184 929032336 334513609 665621769 376414865 764231542 712047931 942346084 892215890 902687700 405656933 591083178 300169404 534347109 664268869 908818181 395658869 487760303 366569654 977670794 79130145 711186556 755745191 912529158 889077838 901406239 282588745 544843002 723625730 752755614 860997015 918436885 288680950 465027253 345012560 685831788 54203053 708661594 995177916 999204772 304884792 591416335 472076856 491424633 413175046 940433160 409759403 427569172 917422890 985859273 846116503 863097996 191851189 591409385 634888191 982682921 316461552 353376561 335914169 762001615 611615585 920235860 929996405 990097709 627497781 666480443 908518976 995172715 376293790 854316694 995202195 998573326 457862785 946484464 188752929 198079102 720460879 996268475 767307281 858008076 765939556 875576486 125739428 220388636 383271217 474483039 236584130 738628997 996411393 997735522 413641221 640083426 60805800 858324947 921806893 986869046 57337334 116321083 602627589 760812808 578508854 614810091 996891413 999964090 276423026 582518354 357780986 381264390 649699185 668364094 106060519 522228799 448840873 540307082 556620752 730691618 867862498 921413793 281040154 725444772 913416353 969357388 3529431 763197896 208970203 470900982 577951538 614898842 70782218 668834807 23064437 312747744 910402750 916893799 917819054 984340789 721421818 727888703 696769805 997419123 580634534 893095757 522679221 726979726 76175745 931782514 519337797 608669380 655319782 860988631 659594033 959084671 539094964 836443112 463641675 767569994 839458526 946655912 423373460 604816559 945959879 964411228 346896387 688686513 506768717 757239019 979080208 995605817 325860759 677592041 114082434 401344407 606205882 911568612 173209946 876512436 929339806 947117897 521097115 616817508 627879168 646855081 143134832 624136167 508788352 935040502 878985002 937560313 178552033 481178906 310428017 544120457 728334741 832053163 18019638 926832143 711177632 869814170 897054249 963317483 753881440 948183188 946524002 974158435 68281171 716832378 364436125 735154107 149017269 394075294 556104979 811614669 914466443 976607283 583740491 849881107 137241744 942368469 461436620 986471810 417436573 801894708 130210418 408862843 864971508 888356909 109854077 428766528 805648790 928918033 990692711 993532788 664624028 969211889 692527894 913740880 800839929 848520920 480695605 779044257 303326408 900805263 420413596 917329785 178903872 491229978 163781028 412714700 801018412 989036595 381702234 708949489 114731431 375101276 505957973 638915270 603730735 876896660 888776315 961935284 141412893 210404668 171350861 670789046 815550870 827214543 340213839 585972145 753246014 793072914 417416870 614474083 996989763 997169504 309592071 541449838 151166886 302230586 466709780 840636444 946835571 976568958 362944295 683741397 438747214 812555162 694340153 863348005 318584716 931645695 54281858 916551085 484537199 620632661 188915578 772812317 624087561 968091431 722168828 868090288 579231954 871254956 307184196 735004163 927706322 935775238 833945014 915645241 267925721 887460334 472584993 812177836 736133396 740098333 365739765 921364988 337504083 439354292 355932188 932939770 459885666 996590885 707456018 768991524 150506004 982416418 589110678 666238054 385934346 650874279 469134470 980476355 388689870 512674808 395707033 735337047 913511641 952319988 580158025 747421652 412071302 913852488 57726505 546896206 563477922 716949505 438143520 541220376 808022598 980867750 917765313 959798463 873005735 977218191 51530870 462182752 284358144 564611998 907033984 957769195 939875766 959304032 379930544 419321986 224953749 450225133 236989194 916109147 698201923 825769557 354104844 450135957 140729041 658618904 921912859 942962580 511250311 703400378 422670624 742912918 893103077 917117583 593239179 774482916 10604408 617503587 614927693 941368998 631473102 678588291 58036802 281109472 703443321 814993924 734285614 751126619 831201344 908492934 83011623 495451997 607499222 850207288 674097916 876957657 808736650 871632757 582710946 970134426 239110019 294925780 288795878 508227869 103484117 208349599 399032990 647128904 728403088 930657469 728300590 813948860 591093259 971923365 554385142 780302313 126183967 289664906 65985430 271298457 93006463 750786823 997578636 999619710 182280876 956718274 453146472 655056138 645596554 753647056 606803251 930432328 895264860 992979105 872663006 922304252 427007590 767750363 135633178 965356599 445559941 990047756 474626798 972349092 449576393 643822931 446554697 693478570 169826809 382601967 978924256 989579930 885427884 890118189 411059955 520633091 667316816 732897680 471610708 774027991 412287073 445186618 849735102 968725392 27278639 675812099 393384657 923116439 137378005 454383487 534079644 982514338 225208582 533803278 394840446 872133358 623890091 755081267 38277478 648135398 187768051 552792671 92621565 556076766 744712993 782859316 724162997 849040950 22111749 947641199 217407036 863169518 923302816 994649508 736023079 794085719 58796714 826814067 304089007 379491313 611743962 701691788 492978717 608261778 276151512 364407968 160956396 954856846 971377622 987949404 345600572 853240037 382876871 804617235 37053407 644686900 577256913 651996918 516409036 849784468 564064096 644645913 277790438 544358117 647072236 833714949 19022216 173938071 569534009 657600338 88134201 196749900 527200053 586089386 382325513 485299253 438204701 791347680 904269277 905365602 888558126 915117722 871131129 980672856 281375970 691055931 678782525 727276887 861884353 935598473 240562887 717516745 228789699 619303540 963372460 965564777 355149209 703105611 862463345 889480432 86686653 902220845 32327114 849901257 980223559 997828149 370185418 995155814 950082621 998232501 268305380 551349483 440554578 965380704 573960014 783317808 835293724 981675429 908693306 986546093 391828196 744506587 806741538 813456639 878376530 914377325 675239193 700745125 323690845 399558602 688084840 801823058 792612871 884420647 989038306 997127737 289287631 593181938 221191322 347578824 531452900 896090678 718640955 719911716 43309581 765291212 19623191 541439649 760649385 762818497 456703423 624038282 845766721 943780028 506884200 811784406 153605485 824663775 150709674 258740540 104764528 701602678 97616345 587274889 738403452 942853985 563951946 660880688 416719074 616290978 125845491 584635859 729113788 846171840 52420334 520603753 121222128 361468778 609129577 768845742 415778337 925283490 19061454 675319545 855979483 971543215 717849098 975346122 218680469 809308886 368482168 958917493 210634221 777430806 327268408 406715204 241257617 846462909 258866806 490095641 111183745 282833342 47655423 430615604 839842255 971679779 260805820 887584505 300258159 972603769 726294024 885399215 504185801 825812438 703187590 900339586 484577880 559632239 619409106 764460396 306835275 637713536 521560005 992066511 134545419 972942393 952757465 992420571 420804279 478271256 970048774 972045476 748362528 830529180 699681023 826348859 869522614 903316280 444667076 739356165 28817243 413419789 157741658 587428554 911683276 934477456 993612220 995485284 189990814 726537467 461902951 595912412 66726307 205586996 179648671 795901616 379915752 876496140 856027891 906006171 541103981 554732873 173451091 637035037 15073799 720153693 494669432 676188690 764775311 941777588 564024842 815470352 734097346 764749905 650170684 871483654 368256189 601698002 266255064 450328288 327991780 659442312 188890602 906174209 471213754 687883575 211338834 719300432 969867808 973395196 901655841 936006365 337143114 731122576 613186005 986545422 854624077 957575493 467156493 623811572 604572689 820862599 795990943 887637431 104632508 664080165 429107313 656315524 889315798 928099186 91028343 820960581 640107194 685814634 511921401 896414799 366776222 497123343 918008726 959244370 42941873 190507515 995531966 998860547 838719841 923201185 873063736 977070544 660119610 757707348 370673990 952573762 862678338 993413789 704611189 892744121 861338644 891968464 901959360 975569168 585929321 748951867 136696072 567988758 202624196 923952957 305596052 751081392 155122286 368183137 295914335 355524308 656268551 968701611 508819868 636051752 897508288 897583844 267096103 714998626 300792512 762858558 826111531 894888218 79485002 988106862 412137826 940677718 489318861 784057650 35383721 945667026 207922065 562407209 170709186 658863154 780241286 954421195 782052407 817554320 181053736 409591542 572446206 862339856 481934762 614928169 448626185 506914290 922123312 925485707 70464131 483293466 77061022 965671782 940751728 941918756 988556677 999191057 636244563 688766796 344194351 564099967 6078754 851908207 48771628 726221721 769245623 850456725 733301584 816687298 272373896 997250464 538906824 591078836 991874245 997090221 990474459 993006352 629910370 812243980 889366640 891946390 49405305 331870877 643763944 716872998 311838205 581984329 621434109 906650207 450677918 512195184 980963887 989108743 732176122 780510343 124455944 174401467 637484144 687608208 349815952 438872540 105289310 666336159 987662070 992816759 998293847 998487979 322005550 324431745 516642598 844626204 526682574 628699130 478728451 955537296 758278932 930182251 378192926 768935671 112161055 491759615 463843591 520596992 704533504 807125859 817741405 836395813 447348714 946253378 25177830 85321594 693476556 714756579 584824199 971371163 970253647 996568380 762277435 799092488 793537413 832576513 468095971 486722085 510018455 778226590 279026035 960546812 958684580 972671281 776078945 806743053 379410441 760610167 35086736 810189340 111969419 469718249 933446000 996641891 876063877 905270477 844659570 968365240 593720819 712180178 796126307 937345801 902403518 950640782 85273054 605935399 716519726 832689284 472561063 542871373 668381870 742947486 591374174 992604217 677946001 795169853 348080442 883262037 48399608 273320895 284063466 799825964 404062722 775204314 847003880 853479249 734162666 949386072 134360029 258924981 73555242 678179866 185261583 364062250 511813282 684536202 253867287 508779412 794209557 884199643 832822280 932023416 325023032 387438993 12585813 952232930 549821685 701334812 156790440 224876089 302880556 452397208 645568067 696737697 552441314 951686416 747144661 908823087 229704794 910405239 84629375 713121884 284135539 734449309 357488997 377508773 182917972 982307503 458841186 679770340 13475615 258539500 408135569 745369525 369125912 778655229 191688536 201351081 214451094 350383588 297036381 530583529 977176458 994482646 267610360 635072213 439578611 824817809 435870068 610245559 147754104 910329422 682176956 703359605 150446172 415408799 430095062 894782705 812526978 967572353 328630761 674948424 311434814 365760735 548094204 872162618 178861603 806426841 558199545 872174130 483010768 834092740 249788160 962042060 144442843 240334496 436438465 821350717 549304294 990169413 310906397 455332823 792193018 820656314 747157195 833933619 656291290 740868737 145156182 245325500 605767677 735126236 929052592 987045995 313329379 390875836 677863432 980598617 601342464 850581295 59068617 934813803 825283110 850672155 435051503 452801957 990640908 999490541 651785936 689836470 674657468 864802055 225212572 710241761 583327812 750323972 221832708 738441435 268521041 617151400 599462233 895854711 600390248 888202477 78536380 181154218 588517763 663407269 743989782 974527127 830498647 957859334 640099788 670579199 956198728 979286252 847985167 901066439 701484311 846032864 182207620 816133934 661668028 845868977 282128623 929986110 495310136 976057418 563555288 987389875 879130848 903193752 775718343 969818518 860091583 909478345 911177172 929220736 171907929 541145618 919543564 994136216 693774694 797416295 237533972 431269167 741627753 791268556 890058715 953065022 644532333 815832345 306747182 993375572 450506988 858788095 626120498 939111272 725389004 922243875 242323731 817098576 439676146 447450820 46851395 222981966 26693526 814227248 665625350 947279934 338178903 938586188 389205229 495642842 572289777 733262155 608120045 710122178 525313467 639986745 473794661 974683731 740412795 927100737 909641389 967154105 248921767 386121479 573330451 886281957 725754444 937645395 635218755 968198098 688410981 948619934 248977658 839020560 279663296 611453029 961890767 964865387 771477089 899190638 345269516 638119899 539113174 957136460 423802509 674249395 376459052 855758713 438474273 948183443 685756209 883506287 55213578 948245503 399992968 646640958 214620546 459308100 788289985 867217456 46579201 852994883 865378155 928179109 635367452 809170212 128397714 354456547 812094119 952102787 127504364 259301974 753071736 753587140 518866999 572154667 262225923 660227173 248934389 899417022 189674983 655104324 749780838 856440700 713857685 816910527 847549306 905036537 841081361 978271943 411551948 518670590 594078801 940746242 197780098 210997576 816067495 990268553 368989533 707415916 672778051 841415974 528726893 935153825 663951989 984212338 242473744 870814022 305758691 344824921 315115206 962669795 931670019 954541696 588361989 864911028 890735267 976956434 659954049 782189058 576596650 696608992 630625068 947381061 656478183 877765148 928997901 961264090 974007212 983611272 411829266 733740953 390392696 713862893 341055634 568838017 980489730 990626749 260264789 436845602 566866256 840382805 847699969 947941545 994999744 995864717 132155744 684292047 5437995 581408727 243303224 253337367 470128151 777320481 658434506 666059302 822882681 926198975 772780984 853787039 370834302 641330916 210328872 765442212 143371701 376068637 890655396 960871009 922408185 947396941 530498849 587413393 4801305 721458859 241622292 316680871 267470467 526237068 947121556 988431657 756911890 925753387 443459911 924736345 47997140 77496278 656541318 838302409 775849495 885376791 992309706 997461956 209688745 557570270 797928979 807778041 981512014 983495523 384780065 905432242 642426532 881711605 120231888 322890017 509764672 776302602 663082316 718018619 230243275 813083642 785929073 951890995 315512454 597591272 981553049 983776385 390635898 503679643 171696466 249183953 65320185 707973807 218968968 799818522 710750735 928125961 96011698 162467428 359663900 912154865 914495021 941545179 358794257 615526147 566154622 699746996 269038354 979669370 755072147 966842927 430708061 748530117 223877010 468915321 171352022 270891235 474133263 516946542 867908011 888553508 494196624 679930151 212715727 246123561 473092248 769780046 285218051 402202071 252644277 635671951 804961725 868868544 250462821 792837484 312011466 483738450 40027745 459981305 534788135 698873985 893183252 907636999 563467582 695898644 421021121 600590104 548902568 563727892 781537085 853013392 460016007 492009872 111892291 893891668 57305790 376831242 67557833 596864822 776216837 856647532 562044925 928766902 375412332 727006539 185050889 962813749 141758491 450239972 596637375 885669640 881690879 901426884 602873900 915115932 108219891 756762071 202867488 499137899 803822447 950808128 363527816 425571461 38653436 207815292 731304517 817097098 391173325 688202925 629235531 925455052 621394226 846782769 503728442 893041143 565427812 711371722 208415390 995213697 12653795 847175997 139221875 568662730 104541895 697252829 381374856 777966995 431873557 733799448 313930394 696968525 233776544 457803774 632616548 879898022 695709818 822603395 232496214 879107966 727936013 782840722 938224604 940817846 151004706 545450267 896740913 946697898 904687203 966542622 811081080 989441032 525224439 726431562 27082099 337206143 306275597 976717848 714111810 880149462 121290429 221438401 400308028 797234923 830926161 945342666 339402514 909895916 811039459 856667376 64682716 980983328 361042107 664261616 142807353 534758451 567514277 783256391 47401627 890464135 160136404 375303957 56015992 847815811 999898606 999971883 496076711 844251103 118150597 151060995 506809799 518628649 700946610 937858286 889612814 954874015 16755771 238973973 262027344 636739780 446971764 663307971 220606844 280195181 403947299 467230729 554345953 746111194 28372669 411409736 707234102 737422447 339744651 496793482 867116186 869764139 327116496 881262041 766782291 858604971 211024117 715227348 191236136 344379749 825089633 850384087 201986345 964976491 980135913 993866640 890098565 981875974 965258105 976034470 187500582 436713954 115422959 586354956 824425964 978277381 456124160 751955533 440144211 759079714 608337696 686229734 541829558 586528862 37958279 95765509 415589977 434882418 699552498 902098413 724206025 988516876 370788950 707107662 518297264 932003926 352549187 961372344 181849252 210878803 451295694 880354549 122339235 555883725 454323565 642081678 706051490 830365750 228893375 519791472 473964575 866284490 530322229 661774093 434062065 572033388 381005672 555427442 738004727 788583463 395999025 666165208 113241758 371416263 253507713 545095959 425818975 702692278 271173348 534014986 9479450 720461056 218274077 694019152 633970583 717877176 159338047 429515298 872490221 983099313 720541419 816555481 30851539 138942176 187994042 825013891 312267861 451954947 214607441 766378566 327264656 484789735 921031949 964051983 270200978 398540350 543926620 553419309 876314972 953987966 340342451 635855987 629897629 912268923 663097801 683394807 119233163 566566260 610926683 687438741 572081 386105947 549762122 847535231 306712281 973571499 356969420 495748416 103522822 568575847 869519414 900381497 911930846 991313867 257690804 832651825 750784204 983687185 224984993 307914092 38927128 79252487 604545224 613469243 542116620 721556763 407559238 441534129 816505068 930822279 205576517 958909665 116394618 269627850 896282376 959510136 215189328 240399994 724295692 949184045 399655246 717959067 215705529 276464152 620327085 902571192 74890178 467325855 924717935 963273468 918665895 922018079 528917763 650921033 322791528 537937238 295855495 432633431 379301106 837572296 704854662 853669235 253376394 455402246 474176050 847374863 195920731 930180677 922519870 993003825 124579334 518596782 990355259 997903170 561165397 806068324 779124590 789216181 496622519 513644480 508763301 547689685 658257935 672696653 891848414 959146658 550471933 900905255 801770036 981260388 460440738 502441375 348691571 617310461 155744569 862636521 519333808 851467825 623617744 857072576 210955657 692027019 574673920 831868503 421052735 666594343 242338286 985619622 506004078 793419851 908979734 960067243 927725868 979755503 495697356 508820207 872520079 909248852 440112006 917924858 8322249 450365849 969546487 994847597 306161491 921119470 686158547 878814601 826256406 965611409 690900004 914126756 754108356 881797247 34727463 542527980 801436987 983311666 144823445 673886783 945368825 960149968 69244471 124292255 126399042 359629951 339307870 423464515 493796287 777711289 517786435 742475822 805891713 837706827 967595166 984473473 275991834 929349460 894523805 906681518 517627350 819222405 302627202 730794444 354101178 693692762 747167600 967333445 819659861 851570900 731493225 950508922 935825181 964439679 332860942 586282280 484069752 495764239 912536267 940725889 325469695 877397310 434829058 785603483 697493109 876772784 849194622 945083469 996357780 996634122 69175106 672644892 683447988 698383751 740389193 889282944 946540425 972625760 943761447 977991860 294818237 703038607 731727924 847558917 554193884 601095468 263174211 482414720 960313946 976489735 91524062 652885977 941117952 979104658 347014879 540462898 108031176 426035066 371168875 724395190 832180284 947401427 5824237 788973629 444578963 580350303 870409673 956372914 150381832 462797089 341962243 789964256 776551107 926252037 817744562 870688181 484131858 605073086 477711213 592218118 310831292 975688339 706246970 795157766 336328526 419224518 729142220 771151945 765628062 927228658 410794353 682628822 986147321 989397941 678236001 785262638 413465603 774020824 782700505 961575132 149729939 682194400 896403659 985560177 312811409 553544997 806196822 995607228 442743590 445922513 931261395 951025437 268252031 804799793 797780836 858313827 632795751 936097310 645844645 796214679 314166553 361550762 22084086 951050884 912249808 921756721 117718154 343457192 33362603 976657963 9900271 605926688 633304497 772977530 908014090 947285659 485878649 986558047 263612202 783534389 15231769 676962987 423894802 854906795 651882082 989244003 519575974 818487592 618359231 823154380 514620065 985566278 900582598 986119013 127231154 329067597 940680934 976460096 980357596 995657772 600562887 632921135 678784150 879667221 148159728 640072048 785978765 814735291 240968812 725460987 558144824 784184904 886091112 921465493 349551314 840032124 587665064 893228868 38975691 100799586 997167120 999524940 364697039 452078440 72173932 583304989 886828683 955764095 519633195 528706063 528078825 879237717 118667325 523293735 535206822 611488238 39564413 385443525 368287122 443065463 966641709 973307194 87726939 446109256 673280871 760985640 389779377 810672024 329524584 495599302 200300298 411761290 983844839 983890097 238466617 989764058 111965545 240076433 342940909 828677080 150820354 927461334 489990784 998950633 428171662 753842357 924303256 946586367 352754690 998502258 147492912 166520114 564828152 710657288 228674185 900613412 210181897 692565769 820692426 944946927 532508888 748091402 636149227 901348301 625837820 930080889 192628190 802619860 342206074 450335027 255672549 812383034 580074086 886048290 558909018 569671119 411988689 430150749 656965818 993057943 633419381 634868708 676650169 922822293 833648721 970604663 122506 868528527 603594576 980414180 805004358 953283975 478332893 675792872 11288248 334124382 686863084 700577310 39652265 598556170 61455349 960480142 745481129 992184609 118449193 936277934 647234691 927368408 486532141 776923552 67987559 456649009 102736246 727228952 558471421 716808465 332278260 357465531 433175417 910550712 694602178 735115568 891177518 972243985 863744302 941592932 36311945 592037607 388951001 993713744 591750273 937475922 373586439 486137856 259576053 696952526 637075620 885615559 636572003 712340913 654537839 971464098 60136332 156211015 871402948 878223903 620895519 750706188 572351563 657288630 275083358 315863050 761659296 946720288 788681528 854335290 223674589 627968760 217571549 495666428 399453308 817593869 988861672 990912635 566170458 689104249 562113151 624427875 239340529 409417348 430462019 709603940 292260934 372614874 408829231 487317709 107105565 236359928 534229169 710814348 961481196 995897576 20466486 312741641 669131318 684957075 905148579 994648905 508530923 575247509 148254463 688324121 178646276 881098957 435734472 963106342 339846033 416340089 516285092 778348309 893059079 948529562 852645228 883932814 840804859 891109093 882852979 929691487 69524431 760881624 766017804 936513089 744618505 789670628 411882794 815093715 85599591 881851526 778431756 981952420 651235593 913962620 249697305 419052305 249459689 937671170 563358180 849502582 669751918 895983470 175899029 898223017 397782852 667225467 16019174 445680956 793992898 968329406 798526963 922479283 748124928 804822061 405893301 907943543 569597450 714070455 399842741 644330015 899756586 979014521 302711835 457649059 494967439 592929853 357069812 738311163 873907856 944624620 717236461 786809272 96406544 707896669 596756917 884179188 483110525 967692977 345182364 941619219 319852683 801259657 127170807 532949441 607807184 973575133 962639347 984479848 578543453 625206898 583903004 992016752 863779117 928871029 458442210 543567064 92954716 177461184 444821656 490288157 486738908 811487440 122944610 595652426 100639363 192920175 671601610 864085315 91162948 666484733 61888147 795152942 790220950 875558682 930521418 979844748 402801844 531293630 78771406 598292974 455295136 600549316 599614580 852334214 129401096 868929047 290253627 406131916 141640538 204475477 899891532 968072905 26007838 535808533 434857758 623118966 213962908 809775896 122592493 867749759 978801076 993221245 179661892 254694569 240883054 457111596 675743158 995644539 966868217 981279027 78002771 716236053 108886727 690054712 434907949 903043453 130279594 185892557 41052335 44440237 717508892 938473248 135713188 840651358 544955469 591997236 246320607 305686114 435650040 973849020 492621336 843805000 760759005 880600086 992807061 999673286 543962432 864460877 759340209 847227784 308049505 851583954 421791375 476368177 160831730 198758689 158261516 337579679 386598113 527634696 112056863 249083119 212152496 252227889 607828460 920435023 899137880 963248110 47979915 164259962 7991247 771880625 856890293 887689114 990648659 996186523 168073115 424381962 157945320 719133053 869717085 935292749 893723004 911011749 679381192 714589539 795212131 989585066 913014155 920177164 51830500 341604965 237627242 728866571 79775906 874943688 650786457 966612905 844322824 991031591 29542434 904221361 375889937 990660077 699154826 945946619 632186370 936883888 938641996 991991900 615014070 899665710 495872100 704366237 936836231 940638431 159857892 837503183 941741638 959070584 709693908 999769146 783089786 908281036 545150935 992355500 254096917 657400763 342481591 789254106 638095878 874759102 692260578 878035504 631963661 662116812 678586919 976676754 97517394 804427831 112115560 491519679 491593066 957758067 528956542 773903101 308040352 697973882 34320819 471008998 827797967 941127025 388847719 679989548 656491712 704392237 914156653 987348988 415842054 777236521 110246949 462595108 84316818 448089361 699854141 900670877 573743805 658399500 145463483 149978991 466875188 874103315 522049239 660725142 508607243 946662634 104942404 478820000 228613429 790078716 785969546 806539583 255199345 762010359 590589543 778550364 612661055 870035127 488837938 533398909 63987344 409936461 455455703 770471362 717138900 765413536 27778267 309231234 786576615 999577714 119050570 692497280 146455095 678959378 818307049 967747022 702981492 928747587 619591373 699355724 657294090 717587958 742711877 816244663 740667599 842997907 63087875 424625922 468454028 859628932 639157977 911768767 553127709 748668813 960613249 967986286 613143531 812347376 319582705 501466266 116091932 900548294 229247078 803756581 614415330 878122622 742190025 786863788 901795491 927070811 699760279 837889985 540789713 852562658 387234733 843370552 832832415 930004428 648373936 779919377 570802244 939693557 755510094 938895130 512704762 786990434 832309166 943367588 215959600 469983777 498088749 609014249 81276351 665159109 528916949 901492950 671527760 952459323 906605282 908097981 71806036 310001981 146260454 359790450 331889651 779147369 97377347 674808094 956531041 974923776 17150914 850628396 341331299 925292771 171730349 899148291 639432830 838763277 461063250 929910022 805612955 833863253 174563719 720807719 238476397 772706134 534386242 961611013 167443098 715996020 733758792 828280055 468914887 914400051 279650131 466855978 271020163 341703190 373347496 643891849 649832657 835363832 231496444 331541664 119687862 239355325 587829895 983574437 267844872 730698374 733274567 854524812 380743282 861596620 203228112 363320221 754581473 915892680 916954062 967400721 241742944 645349394 612247725 938381868 364706564 427240895 733620760 805955580 574452494 977902208 995535567 998506712 485882211 532499841 935372844 973551607 466938928 592077624 988737368 993587867 796864179 804364453 138455685 661083374 515854705 562312869 178906077 520256380 651626979 855829919 377280626 863305786 897531832 990753487 666157702 976033834 947645933 951207904 379873147 855339978 449042429 834469925 941455557 956359646 369159202 960202773 292744588 415308522 173196990 730040938 632851481 768402840 92397264 667872030 830542304 996034802 777290364 918172872 912222915 996987210 805061799 828958373 617279893 789029303 557075308 907502309 687987840 709986264 88125484 452112459 132923340 353755717 940247923 975444546 173608635 293592761 290306137 592863248 632833916 943354951 196857166 926716115 833517837 852662045 615830297 619483391 992575618 992635882 363310988 776391335 266637519 954501959 392948548 755401793 846167969 909001704 169400730 302143437 791487489 919034717 906441455 954407199 55768677 469135367 914709184 939105377 443134118 460892193 475585696 699051006 3920025 776796173 964009217 967149381 170769027 696476949 671804597 949722631 117776547 286677560 804716218 888711655 232709556 462462791 919744684 962821314 621130756 874989433 189912399 252956854 717309110 878339125 637546601 843019188 719371261 729530010 907108508 960701949 864439025 925240986 211449714 831543685 85582411 241914512 509306124 749350936 371374433 518870772 812702725 915395773 175538204 426171338 127627956 232970966 966280901 990270856 115116759 424813142 176723348 946405872 406210231 473978841 369757819 431094929 18064275 235895463 975332779 992418433 638105947 662957181 180203468 300781655 562481536 611514085 137181722 901577333 490945364 985260933 19610668 240870880 442280411 656672413 334262739 561622936 515975760 933144902 613328668 875046018 599138784 918675927 29499009 592691353 700692955 968575746 798964158 917906044 99364622 148920124 936207580 999895280 209744025 706787170 577305536 822251118 507402725 512645099 33817572 126231407 483822416 816983385 752528321 859255712 183015587 899479733 497821027 720849181 948747964 964570392 25454283 957526708 954684661 991160735 205303839 230219919 825899864 888384284 622733518 773353726 948391515 982245223 324658111 654151539 639535716 658349391 800690838 802472691 686660073 933980630 264866479 435712463 234733751 904303545 918173455 964159093 464421128 577115395 488431116 840520391 115727178 526228062 870607853 984001464 981965279 987612431 645965575 648103642 519968313 597437187 903005130 951559091 52509360 786275007 328790158 956275936 87967587 519300998 65606923 673850467 626072338 851366356 30251028 141061489 550359724 772088422 323857897 727714320 555751659 828765528 660310974 736614752 260176599 525462765 108351196 863174446 584353046 608056780 625366704 762399600 20776893 869294556 247059464 980727085 414407893 957443028 285316994 974890915 793193423 994566167 649625420 874565380 197698079 278022678 369166935 931860780 103454082 934503284 22500848 955766451 995577683 995947895 529840927 895831913 517005007 772848214 538860610 709632983 594520834 689084117 259373209 795876993 648754092 730832539 846371218 898254617 79981625 347867722 443573396 594326860 519872516 697870415 235151876 288540034 418453299 961305718 654677995 777110029 70502975 594093624 739506966 952486876 863785185 907689556 542637237 816072531 685684528 925013687 293842001 611034063 97814711 403809996 676217421 996442075 143758219 846589359 153483214 768379183 880809860 965789104 854977012 900950683 83762492 649513273 945860564 976674222 415768356 957331282 644737429 819615815 497622543 776214690 20581300 561535353 39052543 342154701 750721498 770898212 178848269 706575651 565152529 732110094 498350027 752052200 310944194 646675110 441945410 600427790 313063404 629218951 816360146 992431157 462293228 651796266 834055479 910949656 567875031 912595967 788484186 967839946 557566691 594061211 780536669 993545228 889776739 990621483 271720137 961910204 611467734 717114606 754130601 782409690 810642569 964402093 539266019 762396033 194466953 750431960 714609691 984099522 409806475 894348160 702955127 772732154 910436047 963661634 256311103 588795195 184612446 570679006 12393027 18324048 651231594 998523161 650494192 829361018 921286132 979456181 767309989 961091977 600596297 638380709 625089589 829903007 813010905 998651459 647652692 814569270 20736635 905505609 184995321 569492862 735081634 775431553 544175225 945408932 620452058 868232796 152647704 525411734 273145591 495596747 583158768 653593793 220071523 658081414 346084736 534162301 559457670 774519377 52014243 250880617 482452858 877325167 982325463 993895657 872835499 955606564 535271938 915035926 54566181 933610918 627338510 868406776 460586662 912250836 730507767 941365086 457944233 976175027 959336943 993869467 365772923 618963267 187749342 536309410 114508484 206988779 2695828 157479846 616235797 981807838 914288296 968192668 482417962 992287394 330335733 838232918 957528575 994161601 188995057 539445645 189695421 464722267 699403329 868912913 166645555 246976500 749720754 901336963 101657897 761644504 405190480 738466835 254401192 948941440 374006238 710742823 137282964 902769167 828441840 946818481 192555857 797170667 888345540 973761091 593888748 788084257 534872634 544582561 973178455 988527454 280345466 618693010 496954802 670897149 733335977 870162941 672056341 696657343 358266255 670284547 929784767 969101997 606979679 655563269 624331450 636166429 877785982 952197086 804335330 997429565 98965529 895398686 427190476 893415316 136464372 769302004 429095498 652268722 662046405 987217509 21888033 309633750 961035505 976293163 545746899 871628012 93100036 566825300 918370185 931165338 242971227 764592619 73912774 666853406 946409864 963846832 311800093 647196725 862969660 932147617 702600977 922487319 643865272 778724350 663900322 897281295 462645911 779261519 983003174 990806852 125672183 298389453 578637609 615110969 830553428 928453214 100971959 323151788 51874151 600351605 524509584 896914600 418335374 802665245 174987853 354837287 34907244 601736563 162008866 316224495 631681875 847728096 490131553 971750115 54156024 345136915 354939971 508772061 937286331 955615576 589916784 877312086 143947052 482281369 761715398 795920760 356640249 739928324 594205157 650946743 640257925 782582641 835033503 851935192 672400895 945205384 880952397 885015376 776887599 820123621 521875479 728619935 12450270 57773495 611113537 888197599 32020709 59497349 191557701 689231092 210193013 340290738 639552752 959433279 349726098 920461406 653445477 957176941 933924235 954022911 959541107 965812233 286495837 643029168 297491178 927372527 196767603 619309294 729709086 814282705 144703693 924142933 242568366 553833286 883677391 942388240 748080302 760175702 526984925 877813013 152477007 362705680 124945221 889231622 744703003 819686191 880332474 945303355 116975779 456880354 887270925 934967075 108908853 342735963 453266943 979953852 634934738 862130710 77428426 485066619 538215230 965836533 595156185 999768380 703306556 910944856 235986966 591239018 889635245 892915463 597876579 753529129 826290527 977066497 968937482 979581802 684434829 910433850 608268954 731256916 229642705 294623333 62968351 84311310 794239491 832314187 724651030 932623859 783686991 905431367 236426924 457897665 305873310 592112685 887376762 991518064 986696685 999995933 222868540 470426582 479159079 686315918 620420978 935100574 64483190 432163573 358739761 366175139 609125966 630815185 437896669 808546254 884831792 967222374 921772485 982872881 824316086 848604994 899877814 954422760 447845782 613816277 830442273 961330237 310263240 472411175 261480308 302853522 737280756 908589045 913523011 950658391 992934031 995945711 981561056 985936389 290467185 648303655 137213713 726850997 831826805 950141342 394474655 463439144 611854917 793644322 129183456 439793466 265247861 924724502 59017641 579521012 781936913 955283127 844307918 927324820 101910743 906969665 308475538 945404048 68564009 627089631 666678943 741873642 676801691 820449532 700388091 766440759 160477684 871013470 585393081 678622952 128160129 773266420 351444915 887081586 504673560 709176117 632319203 749951875 881944726 887093058 219030671 340243349 363096940 579112145 377002642 773764616 636175524 749188871 412220729 491348432 708785531 875000535 714881423 838966260 744808624 823614765 150086421 484872228 59597318 474207955 85510061 937549833 193179371 770068705 794960582 844223399 889270713 922942072 931288343 939986635 318269644 664305053 963732486 992195184 780701024 819837514 697135020 855664679 588239260 731351668 919867815 993915224 79891991 482813928 728336378 766573351 1318111 603443261 472491094 686790015 600903812 757025189 372888734 869652501 843781942 933856277 89470547 646406815 439965890 981817116 147605760 749123679 285636620 614106796 220211939 458661716 241979112 841123410 539072454 574141877 883261595 927904405 788677282 977558569 779521413 882917236 339909195 412535635 474913224 632345544 860672145 943826342 156058305 873659580 639120830 656740510 465054128 881305424 494264388 922184214 904058642 939337605 652326103 780849309 147827279 893582591 26852884 888562121 63122613 532003917 298556313 761478360 697497450 929911962 754928968 957563089 322195651 688121266 805567060 970382869 111760726 955163005 414613182 771912491 158549611 463708489 913815191 915211935 613884863 670199078 320552307 971736362 144161128 769830087 649698668 883649852 790123896 853326080 203508667 384932413 351515411 929566681 966796109 993811297 792856311 819531060 981226887 992918088 824250139 962213499 738200576 881802990 100490985 436565191 301536714 802740766 967249571 970383253 848924786 910004955 704790988 752424695 318001328 464601785 546734839 634818493 759684382 869891542 137818050 304450502 204602679 659831056 738926918 974314256 788477575 972140572 454449832 678133019 224893935 397149790 461994005 978938838 68405086 387410419 557669126 865201293 114957628 736676790 843717683 995168644 185930831 762487244 875026995 884362662 635269334 652687320 132589045 471800809 636633107 833840525 312194506 940029335 803533284 961168627 331556841 453278024 40645868 192467534 562482613 700004490 712773068 944204885 118326582 343964158 980074404 988048421 790462538 968552137 3505494 880029653 766594890 900601042 490804946 673024469 915357306 941865677 487056309 998425614 564883724 933993712 768202962 994803988 93345020 404954373 208498492 796410956 125667991 955886488 519279799 670126034 218903791 779750907 12271045 677248656 927241643 957101456 678212106 752900904 364654530 612947063 75641278 324792457 694827349 753161060 501605141 869316170 415508230 801349132 607650741 904685394 543882006 549402919 873089160 888628243 611750909 945539262 790744324 845573635 3308284 278390148 202283354 394104912 394467355 660517931 834994974 944567360 797600993 807627892 126125159 671202179 816156624 887168797 702754329 864959213 612668203 829381763 403696765 764947954 712674373 948467860 528485301 854098584 968262086 991856174 152633230 924523448 122907514 995766850 889864463 967121622 568832009 739848687 191616339 351427398 146336660 699588395 943580819 978882461 516140686 916732756 688253204 708989124 363321175 744135967 589636626 845882330 724307262 775816919 476556398 944795837 985268305 990387286 590885858 814231426 385411866 831480539 748366520 940227645 395945632 807134093 919975772 965025808 347708495 620873988 792402087 839890788 576760964 785828716 752427173 809271273 907935826 959015677 653962386 693175077 605822695 637784110 33680072 422560167 820788291 943969215 924100 361729564 539053210 729732656 406956056 480820656 270481689 419114603 615018705 951724714 52397874 625765946 911610250 979236819 407734687 610163881 103090244 215810416 642511223 973807244 960477464 964072899 787467672 923227103 868660575 929212091 615616851 759206858 318796319 439695935 445373794 771519226 373510574 909540092 93504761 773333864 638622844 678458003 459737078 866789050 122117930 946407953 27525582 404177079 855678728 988409100 420106370 468186056 933542893 965732113 658729441 937573184 422628824 701250352 883963059 973010299 993594033 998753826 88627721 570824423 69886522 563410884 453272941 675128640 315783192 485809434 385903648 589808668 482969853 923462629 285062518 615879349 936028045 986643955 716412672 759166931 731621404 979237620 438333474 468004720 289687183 637123391 264733744 778810852 928699138 942324305 787001447 810332921 979232849 986830235 113976616 649092007 147874136 450647683 23322763 62067206 331145117 902342494 952218448 960985220 433279688 905646519 92295565 660104403 76520050 675639125 970858664 989951567 837031408 988245407 299665779 851164868 697560597 964354852 662654350 681394618 463274462 933684131 539048597 560719325 82794226 956694185 494532088 755410565 650443070 847883862 281518743 695493901 387952698 998779831 949879360 996788775 922298118 966929415 372391526 467988733 446104149 735934548 849175700 998977943 372618431 802025763 640910332 769515882 208060026 922609968 118081225 230431963 435971190 492864820 86832503 690490605 884961994 912364814 83318642 251305751 846910800 992879747 786567093 942973610 927125770 987048075 339547620 767836309 65069008 773809952 111819418 368187883 90632224 780803432 203020973 216977611 635934641 836856846 864948943 887403094 688487575 906351457 764436132 833372601 771967605 848950962 743643351 827282821 601299487 978446059 862587734 970223204 362976470 946969477 230077034 834730468 517150265 880245734 956236665 963992658 830667807 972454612 481223791 802134100 177116769 801617121 283618006 861398340 136798027 377401811 321499328 523664127 648098459 996512789 370583635 736967106 332105493 720884104 725462575 937057181 69472033 771408799 561964928 682991049 361071896 514015020 998456282 999134594 870320520 888870443 218423493 636346447 588333166 952115559 398917693 560943639 371914925 990741130 592754033 656822463 488564460 908038638 388033993 800433406 537959867 834360994 767580038 840122227 219387962 284199636 563039910 794592557 806298836 854323996 301350760 876570545 584595005 861536950 94367053 591758581 792265107 990928134 250157034 809677912 296910154 464191043 292305665 494993969 601908081 755995232 452493780 665762319 844575189 974786302 242697216 761714041 954892079 999843770 654053350 935023541 299482326 585559448 510981837 919932479 462811196 606554541 498759931 691866399 651474048 745443517 463691771 480580452 486129844 502665339 979409785 990185265 852685027 902458473 555256781 987360583 328865825 902402367 569034845 574172956 775726771 936089782 466344325 805153552 306388449 957084811 234472041 442877907 58958577 184594224 690558308 701954665 872442983 901509689 939566299 981525329 399428154 612251471 280933464 932312993 753175264 976988785 491952652 563843428 283846120 783685399 249803454 568403233 19321774 587346901 396272755 872163498 138411819 761161477 230310304 492175701 519704638 718286060 546303593 587756413 617523331 914652813 357542132 726673888 684261001 983955137 675133155 794624782 919907110 941692321 177613351 720292628 195573230 684307679 330563201 706365123 660619332 914987579 652578548 961499715 866891325 947778507 95760426 161256383 575182677 849017893 494094912 874737907 890680055 939613121 601773602 691793913 962067015 964747574 693639888 757912465 684688788 801077988 333637626 866930690 455026669 628009550 740830438 914121088 169826181 824771174 907032611 982717482 970602692 988140930 778619440 798696357 947035671 993639430 901754186 961589817 856329796 951792646 304325832 947667924 355047732 511973560 252151301 365628769 363739903 942720605 516372770 962869699 851549116 952493824 688694728 850759001 196657247 287441264 374604512 877402819 669604793 775188354 940928063 958605577 369733530 651799140 748318005 846790913 67634766 122900773 616859633 860367959 283925048 415242596 481019363 568084555 320747206 517118393 759098800 927398901 45799331 164607249 187837829 934866148 817630556 971702915 459490168 565283755 920446204 971667701 114148348 325760576 530019343 789087856 250844489 852722211 624599071 725226752 458566972 816214630 321289405 905810320 839501857 942004059 352622560 631436332 328208701 994086563 809527450 922615178 54578390 825088437 72056013 367732485 840717296 977799343 35375855 351616214 694547967 732963082 81431179 231427462 418501675 465291345 721520403 843620243 781740383 897807916 355774147 532034874 81736221 956133628 207028437 882765306 364018008 711892655 988629907 994702430 890737326 930042158 68785916 667233875 347363247 816851864 228854198 720740552 84569454 705872523 856857272 938545544 732091608 968690947 161655423 447565157 918834509 936902983 685653857 712338765 381163772 651337973 764677553 995183764 208522922 380846676 728798515 850324382 434009073 557235194 125487252 696972821 510295396 984462755 872491418 943773695 637862420 897190303 242307279 843583238 781461903 904086573 81039096 949732428 109167298 565465811 702815710 717877506 890021275 993311802 591833737 904207051 731784169 964177151 261649758 539051192 937628296 994329289 25967985 171450724 245997285 582825470 596774524 602524448 628501694 850237572 102952005 377498548 734065817 784787549 731404418 952108455 817053251 913024603 446227223 645670626 383754963 567471777 34610143 860911254 600002374 647360333 99739447 443045589 499942186 550801268 746641569 997516496 87505636 962927349 925512624 965017105 919040080 948160128 308129063 545989712 226880265 265069390 952089707 988115480 483776393 980165534 333291261 368973598 25463739 232237578 305891041 748989189 591367059 948125748 894244926 914120462 255281940 778623491 519779163 724950130 856953781 945893312 653270140 761586457 78207166 573059042 24674140 767251065 679295587 978596007 269195592 583364661 466105684 815375885 122028075 540638357 19242131 609800643 926826607 931029477 858140162 942820842 35320148 940401425 518856999 973170611 198124224 955008567 163359331 637485662 937832551 958567511 187675195 769455579 54863316 366656512 242306821 909300966 582208633 946189335 29346643 668363068 343590348 902997961 156784985 720499962 814977652 891051328 808150224 944336593 910120460 919497682 793310217 901234085 771240940 817099747 732597057 979021088 475250576 995917926 145431512 561101869 643953352 891881763 547650208 925002620 968418913 990038806 542989325 727690229 792470576 876418696 293503944 581258694 586245970 871198397 138653417 805968892 418936193 775735850 774907156 970794271 683067122 823949873 916734322 963963143 397285689 602254089 816263755 968268623 745051094 851739287 983255195 999622629 879325622 939214553 716184885 745001515 74154784 189194898 223081364 327760536 879519609 908393248 565967954 996352646 205159917 942094478 90105681 157971749 92005545 616011467 275085804 804477268 350784850 888326829 25763318 896911389 877779708 880780444 830397340 906229094 494211119 624324061 596105627 685063989 568938901 891870466 865003011 949873693 443009823 814691203 941322361 947761089 822063390 898051622 195112224 566238839 510021216 645563800 352924584 633272918 61579816 185044369 525493978 614018173 447701676 793415250 246949181 964404492 447794200 718904656 773507830 869171095 113956092 591489012 921853518 956235779 210222602 939883522 877301591 949503358 681410319 804386369 181000973 236235983 500217889 838706143 633495521 955018939 506119862 947496429 871327781 953612146 644877500 798605107 738036421 873415402 360007925 719686165 438323473 594544184 471792859 602257819 481421279 897980595 253890823 445113359 748367403 917075945 628189023 841911764 540354249 826058617 977570042 995184608 660739731 701512608 743821728 791112869 885189320 896323015 533504754 846163656 171165517 187840221 707935391 928353418 346561641 939080169 502233147 588924359 281126119 669799305 902878866 968864754 135384659 477724874 949142773 954347704 750843756 769869671 866562663 918223707 618523229 853998715 614090737 946855693 964130302 973279916 433547386 729955843 510740833 917872976 482323798 670166032 222345198 379315388 956983813 966554434 525073022 708093773 618997170 932935533 157643917 229805921 500472687 941724947 299459259 330369535 545989790 718040105 560186746 679114905 319435422 399276202 95068325 264487423 97175390 779393061 671356925 789904281 968472535 994218950 748109960 889726396 602313602 836177748 791706870 966414394 730016180 804295805 136201008 642289529 834248705 872268441 886313956 963572639 571504970 576368614 133120065 511152342 119951475 949032367 681808834 943671029 531937435 941766663 19795103 414003278 90454687 131691179 388166563 543860523 862256137 941939948 355436871 568570038 818381297 870602084 8572141 96565286 580937715 677177760 929633299 970157414 34318048 801337010 993793854 995530117 673507030 975754989 370365377 839490287 565726042 843071970 669123674 759034836 581419913 968888219 680711956 755795264 396058960 853327386 305233326 525832094 963678439 979435422 790684932 929470901 860339573 983831619 139734101 165571048 737148610 928953109 583310426 936393542 264364838 373520017 239687084 816107143 51281403 671557494 765513654 904703654 974971838 993108359 75203347 384823508 80053054 690200101 384210590 601883299 372726783 814889820 600066 427952439 447254470 756492487 609993768 792778263 539659532 756646831 590925412 881127357 815686617 899326991 656111320 882479213 593335510 723181393 908940374 997449593 799442430 947553545 38632709 477966556 291904961 375008954 236136268 662132921 667719812 668102935 758648472 969090326 44820291 301508447 213708814 628513694 58137830 509996630 122204681 865572867 570369545 617774111 384335165 612414200 59085351 224063887 267451774 653493446 86534704 158740252 449263284 988631935 239844192 321425997 755154263 970428493 765018302 874407277 512727692 836735484 378736544 743868415 194565637 657049674 512610264 620876402 249853118 561832567 478313134 660560139 466060148 759156716 758419390 915220576 838423309 855287605 391525960 480008317 288996908 438890684 392095123 670768380 722609919 764656220 93284467 618559745 517078488 658876839 945797459 977227469 163172774 658301110 375349816 586429467 254018139 446431244 913797847 945465826 412259391 552680415 416279186 797114699 212036519 535039057 79893616 298131262 707435443 938801260 319049812 781403279 48061300 831761941 639191713 915807574 939456488 956038610 643599729 974708376 801949734 923442593 211890750 244298790 594074709 862113923 988263299 998985761 318901579 397341465 139127814 740812782 405295113 952867310 100965633 114138345 395473495 838275349 480969852 951724274 202795476 254323801 143675611 680027128 609346620 804781656 899341598 966845526 145858909 990742160 106066941 461320373 243056476 692117626 514367057 771993337 24592356 911600487 48746024 835461437 85116129 199267221 729609630 926771956 379234849 488099018 133467980 513037995 241854059 321721937 132957033 279249152 868443275 905200069 249485498 531033636 855633684 964881995 773068371 796841965 119292570 566337635 95647910 435768119 259893652 648868700 43789493 641401652 637609315 709762940 422766801 889897431 328296843 436586329 978401846 982311798 948697568 977797725 898757272 922959354 553770409 770800023 66471858 461299433 474647520 570598971 11175011 506528644 226828041 876050710 906282838 975066019 31346512 506270382 64611965 94509268 291945995 512605426 141472457 769290237 308448335 623632371 78326512 143979990 237858021 330373793 895941572 965677756 98175746 724437936 902867245 982228095 203419327 492104051 349719603 457453391 566972111 759986764 476362255 538349168 968455013 982955477 694403953 704163025 916771148 954329201 114526464 278168798 160806380 360469522 328866062 490451677 765089429 858930986 184760399 908815749 500806219 848434917 130661834 135631389 135809469 469045943 773086879 874764860 413638035 536134452 335507211 874190270 35522889 278148194 50278162 741534644 908320718 927190665 344000017 871886002 635435056 896772317 518703973 596182772 662683653 953441052 658799379 768661264 342648684 875039791 402541217 546221119 919237895 996749757 543853333 933797793 758696132 988496024 558841149 957412771 775970544 877684838 142230244 442615711 838353187 968890834 918824361 954607680 67142738 513036920 12885557 19524590 515547372 561437092 155418972 879300846 898261233 932734261 631035570 961214782 589888623 766913366 529983351 884380956 26519862 564078825 178072233 918991022 521198941 759384934 888231351 938298042 641749172 699144938 522575675 947119468 889532870 889985330 696820091 714659502 18475310 482163541 25630049 672634131 150906409 564886256 965891529 987610988 834692775 961882359 918471780 989997184 596213644 757085463 940988739 950056271 807564927 867932005 132807713 653521637 39632867 392965464 267841879 750821156 625151162 935433186 206006042 702831972 733287274 785150468 915711219 951926770 571144934 690018035 103555422 902375873 575696914 635432567 246320614 998263304 901460211 977146204 524985699 886421800 188506372 946360476 144254187 872522443 838858681 884647335 577066288 627714439 691790507 757797350 575361683 623221672 280452006 563824653 86704756 220537652 946251803 959024159 727101543 884630031 469402490 512120725 674524906 759858218 636538266 647627126 395927480 527836175 309959117 562844616 237529993 358839576 576357435 811352880 899389998 975376064 539830303 777975737 550803225 563351549 664352210 859246903 594470385 866617802 732702580 881839144 38004349 652528381 21633308 262746655 612000530 721526266 811562900 897587444 611679961 918435820 379802890 638961400 542134259 974819449 149985740 882791379 985215068 998334283 842462885 846054609 11681638 325414213 911883345 950843967 280410849 406670282 250838267 993204314 599380584 965158453 605228121 675642849 478985606 708875000 371348819 380860323 52451512 136567246 84391954 584405587 903745094 985215984 923031509 982784025 653632713 987302292 236668163 835110263 658365545 979676078 581327908 695798755 493056200 884956600 900923968 958439289 116710803 155303891 717804837 823464425 606152047 658111305 762488322 800830310 434230372 675926413 884013117 992647938 339671295 993229302 854295907 954083997 428320061 532404518 955938400 996716443 127407922 945462991 983345492 985663654 866934339 883993570 603119165 621034205 386468086 649258185 85741879 638611450 359418362 744926670 498050456 764911100 18663899 870399883 195353962 859814800 311046056 615810194 823306620 902109033 844617016 945420297 427883965 494560371 228489245 491617397 120710755 245301658 333021012 781173454 99915100 288955693 997985452 999933435 253029367 997589759 728684560 779842496 375884033 787764165 46616415 145796877 965216370 999479380 873210549 981864272 113834283 622915869 632487127 673555378 135725310 419678612 784238053 834148085 406105565 585636096 930722895 969645187 947213016 983891458 313636973 428007363 860980410 881849273 832395124 905942851 727647577 765862648 647656538 874848127 889959921 906507997 839531786 862116433 253638817 342603387 204171421 648936702 729731720 935801208 929813774 940056483 467368448 661167077 857259293 920789824 454548109 900087756 805321480 890993123 212412560 579339067 907388477 934280409 487765923 772769167 148755656 592153801 815680655 948583116 64766215 648214005 698742433 819949384 379717524 558033664 520632663 841366323 145799685 382462470 881503183 896743090 59485671 748886034 375558468 767578403 500951828 719026611 988685673 996302058 371548491 692879438 297506683 916200431 727400060 749737335 781413944 967625941 133043460 139477299 739773424 843341152 256923424 322748516 922930109 927464587 886945434 980574930 836606576 843474312 888793873 984157426 149612015 372124548 521630929 646493136 873353925 922053584 256343441 832408976 892965882 911676557 406578282 967347492 157576127 323182614 145521895 384994047 169886613 402534291 239215979 921430450 539583373 799889842 22901745 354868609 228852457 665718684 539365585 993696757 138962623 517826498 825807202 848197860 750794855 873821615 234085739 250756943 664486869 922920415 324472054 356092020 229506465 479706317 660146478 934057274 881866022 937638962 729577767 958494617 826934599 862072571 130489007 804905593 751798202 901040999 810523806 947920897 146314655 204281124 641254077 870546914 581846340 709554684 213134670 415822535 197236736 529896572 234610118 805276251 648129860 991627973 424955082 928455779 94568282 667092742 911169518 965517032 316616584 951945018 704602253 710232849 475656165 984053528 730864718 851840190 18121814 883129059 660738247 719773421 916253822 963226174 766621523 952421380 46835168 646930717 535148747 873709613 675636692 729210182 714797964 768504000 119036034 966903425 732209826 759429611 709583705 987030357 657948902 839826337 598924364 886726279 210039090 726113146 103355297 701786788 88110072 334820895 994170868 996629114 669547820 966270854 475839564 882925405 451746113 824565431 724657999 979537767 450722343 974579504 406811923 595424274 235510541 435341091 432894813 580712058 949711623 990001590 886508827 894744234 392570529 921839347 782691468 886670334 222580154 280526526 156450691 874742216 9733434 653201458 575663639 838790695 583918975 986454106 553827506 984774523 508236 563873129 782310411 831264764 44460585 792472065 204625763 656569523 646784888 829831128 125746748 689797422 802319482 958602042 342391483 532656302 855284360 954269874 743662540 862287105 88628748 182694284 176189171 994770620 257172701 317734808 598709498 916022885 610993745 861223405 458552684 820058282 330358571 755631284 579112466 978568341 187530337 496486336 323605613 488104331 416868452 984999042 930589693 955180274 160333190 692115443 859715958 911899634 152604795 819505017 704174819 844422210 180647407 296258833 320222452 779665265 83319458 823049070 387125771 809327893 279583686 783080601 197337768 432126558 119874907 856997283 189594104 998467163 988303261 994337159 320654308 518907522 540755133 780801466 120458567 377024902 473738746 693474373 307026341 627583474 947971799 948545799 35672203 989094488 175398997 991646763 876460218 909918225 962400997 986539435 565747513 734021420 742027529 825314391 765994411 864672122 996575556 999871796 339737072 410831709 20850179 149615666 488244067 863813566 245582407 310129376 845134953 942064500 805927030 934184637 346258530 412709740 723117250 786317090 743173698 824221271 450565981 730130008 470471019 965227641 808577127 926943643 641687063 746914087 139989313 578385193 43684034 172101643 215506666 523518320 701879085 791478630 447492813 865930256 890063690 901148035 239415873 494491805 667602433 780350403 596886455 903700246 878475456 991784148 133991142 868566699 860351777 908880705 79977478 96593208 386420193 500291689 849874902 879940042 615187091 706384236 220982883 707100840 58078793 308768270 492701204 549805434 708181872 774428840 722396583 883580162 514551548 690000629 202799332 661365792 138972293 595569581 601041011 686564769 654524368 836223646 612853746 721629070 975773233 987805319 46876877 923176546 363974714 885981614 625570978 875728930 499257302 784692661 708903566 934813963 737768667 932482073 140130956 705257837 545788575 592901623 678382265 928841023 365185262 604633859 196667635 362498375 186174177 594251541 781331835 973845364 676103380 778456830 258196670 798853953 655377666 754319254 699700064 754175264 943531679 948392335 756324882 831765728 61314999 553644913 351707426 643766314 736108522 814425376 923129836 930772854 765298146 835425898 633823090 766652459 998501811 999293779 780316231 810722747 572304115 610508622 856562277 913943293 112141210 834404987 221304156 222485593 830459725 946003986 553463605 646818084 401796424 456449673 780752602 793748749 161935250 427468847 940371650 997019602 348607736 821206648 457739684 808368387 98786758 322955832 955427136 987804333 293650080 379928224 364205228 563015806 767305678 861122707 733536147 945554950 675196465 899401685 592599611 927191847 321510288 787378056 934767736 941040489 175583623 938293097 883500056 965717236 375927465 609077259 381253318 835906659 147731056 899826029 99872270 850658294 386967350 859474305 321860588 790919509 365480634 978169409 746750149 960414140 25175209 93218331 748447151 999597173 100975396 588072460 539845074 788457802 268300799 526000038 606270392 722122547 795057089 879970285 472124576 725533078 467950754 509063952 628485004 735532912 288945311 638122644 684820110 718264651 821007947 922109708 30494402 541788579 465699756 824391351 988632313 992107498 677821823 928062195 730093294 815762816 907298937 960793948 153674023 885952880 696065181 943746480 909767636 944314084 949251414 972434114 412927688 566906616 468070454 625360794 474756495 948742411 242984427 738802160 181057058 320748734 684325350 940574311 10325261 172645361 395609288 652192345 347771487 959456164 380550389 681288276 907133513 991368205 414244636 422790557 50939800 860382117 771747659 906869880 703032802 823413928 867829820 998245896 270279737 588669438 510936495 517539577 372718106 404695276 395205685 665107534 729521131 896832147 609546484 849631816 724270120 927279025 837432336 987622248 99369642 222183602 915478604 981775996 541051420 657697551 670611668 978196277 486415199 596807972 259732833 405078698 450902715 850330846 422409716 521737328 687187302 760829362 180581081 454716272 874060276 886573128 822608414 862102705 41638430 870756763 390289770 739887084 890281504 893077669 731919364 989912746 337508151 440447200 869252133 904043293 125914913 895458240 990845273 999934005 880146780 926584815 915312609 963980512 806699602 945423054 801723381 812519442 390285071 619643614 435844238 941637954 75218828 317304100 425360889 913781379 525819751 540912842 243091086 548431489 884579216 983003189 402924087 710159222 946577909 973245774 175368781 805656523 5358774 713483052 140933199 708030074 43723581 973033850 543640298 755853405 527369135 532585996 193965706 253167660 677572341 996863852 606832790 846685164 212528174 945125558 324546995 419078384 597532475 875169449 894299583 958939678 351848377 352771989 459827719 581434682 448685988 993817996 279992002 995308723 13159060 409521497 238710283 338155583 997237845 997348977 520049089 556460173 952728807 958937042 806242313 982816110 844153551 853211480 769972262 784440005 58414404 629948561 552741989 766128487 294738074 387478298 158014833 859859926 445084384 619788667 309345845 807874562 101526218 660003346 766177444 880068050 491223430 690922610 51583448 451846262 706306983 740409666 536286449 726509803 995596139 999002030 801817267 920263418 282523364 385907669 875241898 997585208 447541767 726397691 827693365 923890597 388233293 948523726 131292329 398573313 277041423 541548289 570835543 963690765 864231793 918262079 635016901 799274626 415964224 796985360 352631524 461557489 93248899 385430360 596753671 702290678 953375036 955813071 652279616 820578909 842622482 997731096 529839622 641927296 141803276 916196004 669017878 823719438 656367344 746167810 685298348 732896632 663359699 953665599 670443345 816677680 872225578 985174584 961374201 968280722 220716503 830458566 324721656 794680981 570431136 947620327 66835389 566109655 403211110 995824426 345975733 814678411 880621312 942798150 784383032 856180824 107310808 130726269 310595153 582162196 803825521 983489047 165179038 696645886 713300914 791337376 205187591 923436694 984799551 997246645 485758423 989533509 123285257 640248139 309861143 464853363 409763169 855089121 603409152 735580477 94013737 287906833 446208641 830037205 937495910 955253930 776114853 849294590 588340686 952050576 398909793 741520295 725491269 735483283 789447903 945122303 844661702 969661043 21777581 714192350 599673080 633354183 402273022 991280538 839635111 851156351 829160737 885008062 315186124 883004409 613927615 687537344 439161266 848754033 773095850 842567697 157566621 388610112 598236483 880937799 583865485 992049062 243941633 973193260 567542190 718993256 725942812 936282685 267410507 318289897 338461030 539484239 883973576 915068561 902654134 989270786 129377378 498899077 245610123 539347664 814856477 823346690 860080314 910039996 598328425 689210789 228038807 519391236 82763973 139407871 394183594 591738116 251729658 273132700 390639926 917413196 622683409 783818439 293047190 714700211 228243209 651145525 660963444 760595314 504277986 932776238 935671288 974854282 422314679 777430072 878510891 941465224 343699159 926692306 863348493 887716421 423059265 955823489 204166191 378733281 827740428 953186425 752545864 782678365 827004882 846388453 235327784 278219138 26317491 120346194 78065003 805087304 267419595 279814028 74103994 629561355 484405128 807106667 607113433 748858561 585151355 722365982 872165471 907170063 829474181 934076349 67353531 776519487 556694696 888456272 492198493 594196746 204193914 404407263 358667898 592460575 801984217 901499445 965675076 968776388 241064281 771620408 998273424 999787621 325526538 454940169 267695501 908051683 177407034 967029542 271900099 370801089 695676847 889720963 555536160 712378251 389393679 844286506 791977292 832284140 971699258 986105231 459097406 545425050 295962587 307134408 811772678 834864306 632373763 669779640 67784505 501617413 858513442 947168921 682136687 773100844 516508640 596698838 577545537 762884191 240129935 954059623 731656017 948641567 339516614 695703027 818203719 923859869 314139734 968637982 651665770 884585408 511448020 731770719 679377725 827849056 34120117 75644279 111618476 762134391 386004753 743118373 545575242 818211288 455037916 858696433 281278115 812024660 290814018 496825192 380627573 805384858 715085 601805289 308916172 806837981 757738043 880630060 437093953 444827423 424439950 606414793 866581153 905469914 578039056 926644885 686444544 837870702 400860081 646586987 487055237 760738748 95425101 385050154 941734562 977843658 848753061 912988162 713152091 742264718 412943471 974494307 426023941 973806347 258047720 642640996 254984635 484849903 197842221 285908077 676189666 960040891 582746000 615432185 956401230 968088113 405764112 915065388 51662141 389519162 948809746 973059843 708465580 917112133 708446536 808079769 503004015 644759888 163947266 668186262 89435663 143402397 220217440 679645067 332167800 766968466 30948718 636806203 178885691 403282584 678036110 704441349 399974044 842131446 370555797 384481221 891603820 966527051 155764434 663433188 666228081 841609076 735021563 876164359 207872850 798146958 298527028 850155727 646224896 963515914 660655149 975147203 597069437 872691089 388503787 519924271 851101744 881158556 113574639 975677252 829609001 976350515 65838739 679699512 717900873 942913295 918627496 960536107 609247976 856962949 562875360 705740964 677948236 778056886 106724941 666883787 449130531 901908897 265526050 356402661 459564555 474227193 614687899 801540152 309987383 625306492 467953533 987826855 838383763 937579856 75354341 669917102 468073628 677760325 974757733 982813243 162797990 486087754 627573633 997640006 277732479 713925994 804136825 968447072 352465060 940072962 752344117 851304207 584395337 744036163 433905997 465064677 577354704 628484979 177823687 838427955 719267478 815934026 130960968 942827717 42704388 728578253 217361479 839239121 255897464 489572688 281170697 918029048 137497872 911185944 768136757 836247982 702676158 862978009 81380343 909737832 382289604 399924972 336018138 493274565 116579586 221305011 198420839 401633965 85695581 257774149 31985509 948412549 471386491 939429259 231830763 334735877 951364483 970588191 370917768 584978382 99441832 848466570 53087123 748481351 180769239 687343775 440928386 600867291 828237980 941878817 33770886 662847407 220803304 988027209 911688634 980999829 111860326 332568253 408928332 968028448 598093307 884800624 668993222 966088637 833418970 921406699 22593894 266826059 870799331 919661673 959692380 988396555 795416119 943962999 861830400 899572551 20567544 407130327 192076221 640436745 245483411 344852753 489179454 914295828 365024214 559058653 8201870 445586915 798710084 978117833 101028473 479218609 550409552 657872075 802046662 995799255 721924623 882610793 281499275 617263024 75776752 853054957 190611127 207229891 943524280 987876395 769240678 865088145 253046230 290655610 310894913 991148162 121538608 204233513 42570325 401040044 521650778 712691254 503221720 754382114 448730291 700192951 118851333 325432752 525912823 982518231 862662856 926942703 294103638 654886935 721438915 920684807 268970605 713820157 907427914 960669026 825058337 965288293 523309166 853507349 788216977 926876942 825257907 855502000 602820174 940116785 322643564 705915765 700297862 818417863 867753372 883977984 420940258 719636798 324373475 606530574 537480749 687903778 327733204 983377181 649015122 694424327 385223244 769083676 448407073 788695413 340341113 549029772 533490644 838573269 360167891 931795477 897669445 960335915 403135640 522053590 239843685 631238525 350325198 605282942 378157766 918770970 556877571 686373948 940437254 988471450 782787385 972645019 544872437 548592561 849919529 991593232 147777231 782737119 474159902 523715382 387255940 998542384 711374666 948768745 812416037 979567092 357236991 491870786 541830737 913651412 357951526 941158366 3210740 426209363 292130366 338821437 663102722 856976646 627451713 853620844 611623183 646295667 676750660 780300176 875797343 976433018 208288484 999618327 603402277 649961424 659010180 925496609 88626114 932111880 770638738 959037485 808430681 872755377 399768084 615648735 219008794 590199922 823035570 895361977 324257281 940016362 24731563 551284634 332032886 667853293 728509259 938212237 78534448 891625800 287953289 322095434 649692514 872062205 811278809 867940359 689950660 924088285 124932423 438503331 346001988 406048818 398655404 736808526 501911046 564220584 769880040 916328389 427174308 797458163 98084056 481465518 86621396 613301627 576234692 993248614 575878537 665803766 816856344 986678130 714000410 901925096 730282873 840816077 330242087 973231523 841525936 864244650 333246210 786826949 532339092 998682040 846929726 873166739 914354760 963231968 161199966 711173389 891949662 925901504 281796959 411781170 206929054 577381411 969704195 984762388 794994282 947890534 52771884 804368894 138181518 771117316 284815880 412269308 694710874 755674492 730695673 894378425 536580175 891359465 648158641 724221956 262067876 916038328 803383249 857274268 420125125 972641842 415539026 616544496 976075010 979929760 464791894 770770610 744412598 841960452 370206812 924288654 508706952 757294353 608119985 738910266 552930751 731990113 931799557 985793158 717838641 933396407 770440531 776050353 686271790 814818814 59587684 288173931 543103470 678228138 76649576 838967444 434337067 991687714 579838706 784981207 256895618 737005126 663733499 861222813 800272654 832751617 649356240 775095955 958002689 980372945 493936269 634349341 872234289 920758422 505337418 832507398 147731205 280790324 690122551 926258002 608669012 826384561 395662148 398341060 6636720 50389059 105267502 842624363 441198968 695302945 924449633 977389118 119914939 209331421 136065225 523436407 525917328 812667810 279279015 590584453 128411604 163508998 23922677 158822061 839024455 914129254 289433451 729924017 935103742 964710364 665630049 723894824 173676264 325023723 490635762 943773551 358178744 816198930 962878515 969518994 750934531 919742955 516608835 649847436 795097061 924925610 661914680 877946552 296183147 451334700 794467792 795386533 108999667 942158165 12131171 335055519 563199067 645150961 622089933 745243579 635502981 814486234 468454389 702443160 789223561 956600676 583360524 998910549 382947362 780576654 725020798 778170640 776941370 929314322 219225504 447441776 394686870 822165728 801687033 861588525 85386632 459149824 934345649 984865881 835461825 928833015 930621955 961213431 766287791 968165570 388986341 637060081 309942306 718090175 937176867 954497719 659601926 765967926 548430872 998874631 601943280 864308970 553973039 670366564 183784223 758587120 241140440 418315908 861788614 870225929 220232088 614225218 213025619 423941582 429605761 707481252 650901441 791694897 352350768 773950837 845756181 925426311 631432192 679409851 709306981 918544370 881487591 939859391 993878030 999645067 50654069 799812689 907978174 935573942 410292172 794240680 673916922 704046328 399832965 773724188 483154328 543429643 614616505 992657080 35761525 694887605 85560403 297033444 135691422 145251634 94870612 289110929 122207028 452064981 469459100 945326989 523854264 811241415 351689668 584229406 152280843 735523003 997922989 998555547 362858806 405459848 998711728 999404727 120499046 534036936 984525852 987188949 860783205 950456587 282651941 574954988 562494380 828305557 684969784 961909271 46678108 62262746 27196317 874164188 307354262 819301514 503036214 866497943 94192668 641133755 994912834 998714510 964018757 973017290 865930510 915509915 270019104 509539886 65424558 356770648 701353726 764446974 475275812 788225539 448920112 742001120 360178950 466829672 990634637 996787822 905284432 970834018 498325184 890475726 610890288 896155825 359605230 852684341 976451676 980612619 956440189 959644719 982327228 992073664 742599681 890339499 436344874 475549769 484065394 890166883 321383565 551688971 576985636 831433136 965949999 993568882 102678406 815120478 89402792 771056096 955290171 997406818 364829160 805057097 81624191 89249515 287177515 510178515 949678304 958690490 558236446 726166252 911285102 976082511 691538223 773082377 263225236 940150695 741122047 841549528 848595299 877446291 337470916 631412439 101326481 936266767 187954157 828332111 771366227 975693021 128450517 510887518 853815088 882035201 546618989 926519310 718633587 736181388 676153055 681104738 671186836 737170715 970259046 988055223 320597073 855580051 33560405 858578520 896891148 944458855 672582089 747535636 126978578 411871907 834409436 933837290 407151823 460587709 827003124 938806447 294372127 438411960 250340493 417276282 598722612 648716927 408429017 703062336 899030144 991775289 334697610 724273900 871795384 884795231 944758763 975228181 320760471 777598173 369111071 696550558 146554215 198234424 417586458 512965643 477357574 826351728 738405043 975214439 464315360 750805653 22522407 950226144 784203731 952951291 98083436 583130380 885727159 979339832 703964420 872838647 381139487 596718052 799932445 905702434 923818810 962461231 108468533 624425857 951295012 970010114 986921040 995295666 214314329 930867682 732820686 887099510 125379102 428803240 636964049 769141841 422695873 558245151 989489116 996394964 517977446 601449741 187848404 964135784 710275012 893320609 521120588 907565129 874027266 880144736 421538709 987427930 622373591 715214146 938339985 955844025 28272433 622264225 892081464 924057171 729814657 747822191 280809126 878808303 454930583 780817313 210201353 608908804 592358552 684470306 178548028 920740723 195305382 959059368 856315423 861199541 484890981 938395316 510770207 760411793 718550333 834325875 81611833 121412173 476943678 687698392 579168985 998953698 86872916 158943107 878079682 980275851 309464956 813010940 188994566 438922245 444718172 960424394 367224364 878158182 860830884 965315506 590342150 769416831 847688007 886149535 730228448 914897632 644884550 941276731 987492343 995389339 660949887 846842837 362607031 620712697 26363668 192260272 464500064 716119251 530080969 918473145 326335850 919663968 354489443 751743983 707044776 975014830 947575922 992673896 966468755 982703773 801439981 878388152 153507287 755115848 151373007 189793908 127727566 775187875 150778489 467459543 236064300 603023786 198502722 369409083 313822437 950733481 713149197 988241783 137606945 818709454 398261727 830702472 547212177 990255391 45539953 246172415 421852049 814432936 384783868 851294082 244662251 762201268 771930416 840926881 988653713 990163371 361932481 638523983 791808284 851089817 446950831 850616870 98346311 262441343 17453888 73862673 810739099 998926557 44495291 722418714 989491424 989936440 244459129 385241022 73700999 268241192 816833736 942812262 175003745 897057168 800113971 924128400 993273700 998356222 383449836 701818958 498477562 905042376 267220511 569668677 596621743 727518457 803680262 973875884 637521111 873367688 605251886 837723063 193853574 764728717 937999275 996163305 556601246 612661092 880711890 976144957 422188782 865632310 242972653 627891491 661499906 900073653 675944388 703434732 811697219 902711241 420859183 485094319 449179367 958668145 941743386 986560653 551877185 819670585 67447565 429719136 872819424 937219201 311500687 707672601 302212985 388790794 562103751 932977056 228026993 855465782 191341035 276142414 663284002 795026160 332273813 981429756 226517319 321376695 331052740 342603127 847247499 962160439 822730511 951548140 794173233 870060822 264334268 354852933 20817769 753838413 142919560 977112209 625446139 822392770 590206634 787379048 926832222 928687115 751086898 927971519 790636971 945217734 190982418 593653606 339630227 565873724 762670674 968292085 411202453 809783884 659724385 820488681 86177694 818061378 466849696 591839614 280272423 700540022 558649420 831811066 15144811 318053703 969851245 975943247 446488640 960828852 527730394 919975250 434578043 481450980 46657383 611954919 629409424 927723932 355920403 966821719 997861005 998134093 823232106 831177350 329267731 513514489 373022889 777460707 249696347 887912778 339255959 746590013 456673021 775904248 139072834 620905736 27760499 842940341 888500104 901014205 164568496 771982517 571628417 822491151 488649966 627010131 141764986 208444034 365910832 970350457 392833225 914546450 123229704 429260027 117740974 191057216 273433404 545445759 1620733 369387281 445169349 994628750 100775869 460109772 634214234 809453419 748987882 973930722 702087375 926972153 890413627 985796141 480154969 816482788 67728418 621667710 441055376 870641956 714195281 848150015 478616086 919219904 256226595 947378451 820932298 956192906 131608605 229913142 17457790 422722914 697075698 876010289 865660313 972439836 518079304 525564496 376193377 874402868 318748159 799066253 583773005 941787358 866742471 920654222 522332488 624129173 479584583 952188801 999081382 999469565 473412072 691853323 383226216 727939792 869381896 956995269 808067147 931884525 648459336 725647262 728375909 733222610 563283698 873837780 174431505 725193122 333331179 381546491 686143698 877531855 681048969 912504309 468499328 668828898 73464538 296547807 330493204 957344104 136702683 766227692 929010712 966459444 310841490 705020439 899829838 952681540 594598108 940179072 72280677 938169204 246775041 369840580 781601430 925778119 700825 997339169 610838328 646230811 345160136 419815100 209934180 994499792 893268793 904034348 681214963 984694892 272301757 612495395 891310622 941611833 961673942 961725229 413999465 855962654 214555729 924711970 285670004 831071645 435336743 955878632 198156580 912455682 84756825 773652272 635209714 784096606 268847007 588031023 30186306 984094535 853391259 899322127 546952061 741757198 605877770 799778441 199063807 961757908 134223663 845162487 39786678 564413442 327843689 503695485 266064417 625028687 665044856 690955183 896883567 960022468 965450960 996722002 175545306 742656015 897346500 900901613 938000529 978353802 786660083 895845575 708071496 985966942 990769669 995859744 625588254 887715049 689867793 731124367 479031835 974528432 307999141 591385397 344957299 791612379 703262419 854029223 553917623 935759865 824758188 863103150 123037189 557307627 499414111 999659592 116751980 314078152 645404125 907011136 77808084 539850592 605354193 987105056 986409348 996161680 779301830 850157862 748722008 800065911 780358290 783753386 680591568 937943741 538196257 871971603 26665032 298812412 927919637 960899618 265518494 994349909 982150013 998469857 803347375 875891641 373437412 461105086 404751056 916009364 685089325 821874905 628138428 906626658 92273038 457984351 64205464 836309760 308013596 502238280 398918092 780153686 880857295 982876584 68594274 81680456 434920968 445783503 431559555 484456398 364744608 659776758 819552527 842087166 241898647 506703549 17684806 274450599 361446528 578016532 985127994 993124242 540536108 938175320 536701455 781559218 724094066 832799075 534025057 933473545 551218345 795860154 86929234 386406961 246319591 591647593 398059508 932816473 762036502 822137185 980954096 985915121 815098677 979298099 517186704 976398208 84322087 943117483 514608553 906225270 936161260 952042945 352598541 510361756 729872135 928330568 370444337 645574161 929337768 931147333 451760033 673288727 45242232 350206328 982250941 995028016 378903851 604880939 390334318 399694425 874928603 987266926 30424544 278838267 633873424 926661380 2162191 597293170 507563720 860571953 228892104 586167394 546372655 873331085 326339494 470985714 731244919 898835838 230823501 486660634 355392269 780947101 882667169 938916020 617023973 740131886 749125817 843259749 494654389 631003987 683982293 698581200 764442641 934028195 31030838 250674064 874932655 877352122 235667742 932479727 919509327 961054764 818979102 964765277 188042902 484629710 112932750 404754399 717241381 756046937 626484410 756076160 153329437 565047428 727471967 840644185 505554704 714591127 444706814 650800763 667425362 794047846 795194786 893183987 6837277 883402081 686838869 891984607 661946176 706675477 135101940 411225824 332092218 911762266 104066286 536443147 817349356 975661226 187658121 899887193 531676797 728755595 309760911 388320397 891816943 961291021 514385672 628554275 675434325 749085347 129316263 353641061 983345128 985524061 982866864 990606863 592743144 650834565 433316589 634169158 570685286 616548573 736205765 979550771 709535790 746674340 111667316 948721223 627093251 918508468 959469279 988623810 216537377 613427470 159864076 424316540 875585960 881696297 401148604 578171859 687518845 914602580 8154362 983934911 271581895 464106568 246241844 865534308 846077675 854575451 818337335 903594708 129352588 215620945 798604614 988734051 123757790 902035600 166140297 790182884 997157434 999711243 181024405 685560268 418359424 737163222 154176507 753888584 847241500 883681907 920336114 950951612 103551136 272434949 792932640 998034344 536957170 636224404 964664980 967321618 272382977 500056701 65525396 127880425 799879710 968569084 995177695 996825443 735839020 831832195 571828954 595064549 763840575 865474032 657920262 857707377 267943234 327161516 86232185 306510557 37496358 148740144 706769367 815391021 356896022 878862123 217292652 381894180 113173725 331009244 924551578 967338048 355176037 680284098 824479145 964565321 714837479 874948457 601986843 993174917 340678923 615100401 157988823 226924309 480836057 606174405 768564965 943172011 82718714 900943608 944791390 993274716 511468374 919945697 597899705 797608990 713267874 783836317 780305114 922217964 444001871 760798044 533517847 971653845 505257789 558921881 591471888 749560607 479841918 557733894 325315354 836339935 380113718 793732483 393206428 788610437 670767997 990500046 941333865 970886283 860912177 938572260 239730994 585494407 706596047 804763359 348106789 616847265 920332874 941355039 12398049 512941441 235032301 763667141 313690958 805313111 624418083 901659568 486912905 839390037 108180719 868237958 360964991 744509075 130899543 974048808 562376490 740049473 223762436 723562896 501177935 947775813 1628181 214454516 546161721 637925402 943723397 985375990 355722511 586886525 713065837 753799207 160302845 789034739 632932320 832888426 777080129 949901420 969949563 971432096 120327891 816944960 970736806 982345916 534694202 545388179 257193908 887131645 67330019 745374506 420180474 420455097 580233186 941209081 842428290 969832071 987662046 995422049 170032973 633955715 375415014 550765997 896997541 931436265 830984787 986812460 716223261 928448958 465608507 904410357 91017639 298880340 831308288 938776973 656850567 945820188 678666136 786551753 383673074 475130425 585281975 785298429 331131946 665566192 421668078 941454435 722607 274547950 24342427 881300439 469167564 818627454 360909570 928124004 511601059 620226989 950038050 971100930 783276890 882946280 645073850 791477809 609181594 849920735 601435230 908875214 149866523 786893855 195258633 470707731 743980113 793621943 624722972 844133543 674789102 857106456 397110933 883402883 866293454 918834112 874282928 941720124 577939855 897745036 301214780 808388644 921580030 959150586 477732577 806975900 774850031 891674826 589711063 611774440 188139803 729191542 84478314 740965759 156498030 711550749 140699587 765851531 646807733 950791509 313310529 898875604 526162266 694150416 41988072 554202824 712641291 829458796 520044128 799529452 457387548 625304722 539881099 726883360 88946326 313821232 326945244 599276729 305914292 852941182 400129122 895808287 675234272 783094920 558463561 880508813 844086947 964034671 851080935 890050003 770290037 909302970 31671727 141883098 977308063 982640763 247429653 263247458 253030668 763332472 980690311 993519237 191948758 616713499 35637896 718792992 563257882 856421545 113507667 852737602 987244258 999859823 376980012 831109252 807835130 860887584 534230779 981342964 950427210 983196047 12720844 919785850 696498159 811248866 132997981 367597276 149402985 507767854 914101767 923450785 659124235 901953122 358364148 870429173 147116756 820514751 761130513 824138844 525806741 754491458 696165868 872509893 970350919 992127533 281146123 996226039 887731723 992234188 693566365 762597667 281688189 867318567 459756674 908074560 271068489 356383274 349613167 983889192 695130874 966042978 210524337 411435180 247105065 834106728 525650143 814313471 741840571 996864725 363365923 929796118 996151996 996827734 116529105 909619485 739153332 848628880 152158554 546517109 106469330 764396111 26386914 601449469 396033828 979196869 312858816 998924494 501216689 700282129 889561394 997404057 658980854 966515882 699315003 791065492 718390054 782024562 182653122 673373485 77657168 149797291 765710670 791356896 899055314 924625604 291309453 353590638 964615505 978733955 298371434 674591960 393457425 690901856 42563077 158120855 845259097 944853340 827214796 851985100 85615617 444256023 275847590 602342572 108760092 602462439 666237544 863162184 927323155 959654194 149271276 967112757 627725848 981806779 802285649 815172852 275786164 911645558 476813735 881141219 148260811 716188942 926743616 993058489 86948598 857514117 413140232 841599805 993874704 994046999 206134151 293474549 285507959 374564431 653624732 749129804 636801944 891672343 349505538 919046009 283630999 674136768 322863111 742056218 470328180 696486006 551373825 965292882 799841086 808957680 891440724 928896106 525614043 635391527 221978366 652070151 694173127 935890791 46550147 563184656 424852890 454409969 74296983 443903242 447434988 736554405 192948733 846792508 426526131 720557752 444210887 941657973 167122055 963254235 78435698 337837405 995989844 997049179 622811821 676803902 261845418 711791338 641791574 790523477 475153605 552245155 422088057 662440256 332604220 691157226 559032955 818852676 814173871 919593814 776253403 875037882 698317799 840261173 88290459 938016247 442161914 598579084 445320120 921819665 546382737 690495310 421894481 877297526 630721886 717200467 89111102 576808216 385456455 751411501 897795812 942899881 527661346 864779623 439040971 850936309 981738483 994865636 744153619 882176146 403853747 847295400 786903577 977757471 532487335 930804813 437304421 749798213 315875938 380883471 663829283 726730140 85309211 275938496 136992614 761688848 820137525 823990153 840679273 841387663 720997727 816889989 651536124 916986994 864382126 966071904 646275187 656838957 988793300 990326393 727918096 957751566 300742714 937904608 453711646 830246587 987587363 992440589 613559853 971761015 709723075 790293548 456746099 785049530 474268753 839553727 64678608 683241838 567158419 886032122 192068724 801716962 666538058 718264340 509845058 760497972 273284938 484480334 819732720 863836964 189658548 448982683 444252258 931336992 978940607 988485557 767196020 824555696 127068020 635277149 857381943 991241646 86271859 849873033 665765172 748880456 515823438 576577384 394992166 794399512 579004427 668711540 114536593 516408501 851724766 942236941 949069183 983789680 741711385 760471969 168644878 864048335 400147496 927707812 355009468 934291175 862798404 964071965 696834511 956410849 833524536 986199454 600388729 877139042 339845755 398267155 646351035 848225053 867550829 898232869 296796349 991625280 400744100 538363524 614936856 653831304 252492511 719422327 167453853 380134418 382747886 905205874 53354830 944704746 313610359 796013688 147273446 298852457 808666239 951639691 833906922 970692247 169255823 229818191 711109748 953206367 196847177 569355972 895362761 993188368 208172584 284421794 871809917 879656216 381473639 763643205 412568013 699769290 172052984 671928161 69554093 276297297 55908147 189862444 875260766 961773761 482118561 798629594 440715161 763952052 329987010 774620567 321502308 378528536 77488372 428610878 757586917 759609051 887547317 911304407 89262143 950007836 608883690 694715737 330021499 344394446 14345780 415542703 373332006 681182104 693874318 755741124 239336614 824697108 650939106 981844813 335836195 363805258 915294843 992430505 314160167 651990292 160743855 383277865 503638623 763093194 625080581 991967887 242824603 835393330 217729659 246949470 573498488 854020309 47540012 62480855 168986157 360881042 470492524 625499777 134657996 160111281 914652711 988413487 766635303 997517434 210966952 769128965 5001508 823603984 675619725 687909097 335050865 850093869 639495544 992410086 174325119 300219367 387383753 940375703 119938768 673383093 256748241 979343412 990542602 991366710 94601782 773125602 55715082 830578063 271161067 867644323 513223062 929932659 17074139 654379155 415575878 851046879 860854703 899051546 870934965 903900786 569905646 672724142 378204662 691817750 494543177 592656496 613892293 842123524 352918983 660204380 214283715 357392559 697263591 756614504 900502313 923283994 297490883 426287914 695727533 921155354 960249493 981164253 501921743 780791493 291791460 589090906 890310497 970690028 490100684 710886695 932897238 967931783 767846486 910923339 729301070 767157372 532537129 986807851 734756856 799674420 289191274 387676610 373863674 578559062 753235113 878566485 749664781 806964227 324660515 983582502 33211948 517828584 658448610 924681764 144270690 552838665 536573402 802325220 547152906 764736913 48721895 49546980 794316755 802046479 78348406 939965753 673263860 723313855 811314089 969719973 594071896 931499637 94619225 922397851 579910137 581961198 161906035 628742899 854724110 875356487 310018008 437262013 66474806 392244518 832650708 941472858 531354063 758959172 404322791 406556971 151061983 737347779 333075813 514134023 518453551 697668466 442003708 808358482 240646224 902208419 750316443 864527883 349891910 851066206 720037437 805486965 337747230 864006536 245510858 443350156 222677593 280019315 107037985 807514021 943583699 988954422 91846910 851468779 848089297 870765446 560596265 733259885 144713838 555340072 758388527 887627515 317752209 534041576 784991332 861261670 818764788 911712371 462274930 502054185 267578741 943937321 646738633 650264259 217792063 960322215 710308404 827449409 208653715 479826710 736833514 813931895 724516349 735570272 75166525 785833669 896969200 911555573 214240876 888549358 537592668 593919625 207797554 852110902 441184658 503981559 933523127 993698953 320691155 475392620 184755034 301283801 151719647 672985823 93618500 413673516 42157663 520008155 227504760 650374292 807648884 894544260 77278915 313781906 468744061 585434157 997618032 999406365 626881101 898359767 763730045 783936349 651951515 963588776 437794051 847432880 584619013 837146603 719825795 943196771 841374257 921209945 592857291 597111599 894645503 997674678 676005132 818633923 156311654 953893572 674762087 914795726 77938269 421567495 854759187 868943280 247083555 886501994 104162128 927622473 805796438 813417214 929024408 943804512 683256291 868347261 515355477 784569015 43879725 958484076 840383466 888855984 286530926 402234724 844368533 950312770 300614811 507328429 721539954 822230495 444046685 916288691 989939142 995720456 775257848 966803589 744302857 893282980 131596491 894748535 550663280 929180749 89744307 945240097 763066113 946123248 523996219 618137670 894148848 985164282 298598525 655714001 609906308 755915937 977557154 990601954 84769880 608473112 411696726 927049658 893440628 950261948 410020663 576400721 635588998 945663864 260284117 344352261 579675211 797288218 417856666 760100269 538746552 741638053 809439161 954173378 941822642 947799363 437574686 638098306 937810461 999666559 992866981 994142675 245387873 632264643 857059446 948453809 124214779 447629791 945199684 966628561 877845847 966594684 395736895 503511897 705781808 713181964 878272836 911526658 815517252 962197215 774715544 978934826 706598661 940694777 421654622 437357518 760600474 775213295 239647931 283497506 772211923 941380337 566011141 787307134 988112678 993869361 341418618 939927744 210800988 699771204 144728188 278395663 785535758 985201867 358897576 947915210 760534053 956312916 475324881 554526712 841067765 875981084 740069494 868859081 714429871 922224195 143078757 613070098 844498502 979245474 931362578 931551359 28098169 77685963 111839448 793647482 269183585 824175327 436312910 613256406 463944929 516935783 850963970 912795117 245143950 901281714 830726345 874574940 446993521 885966567 220151386 994533042 740612963 793336436 428558605 495212613 377102034 726485805 937609613 961169618 1515986 160031154 225202324 579603292 908505698 925376848 623406099 712881614 820860745 960260752 594748362 849769345 456145531 837211302 3925241 81652275 941461144 951648292 423525826 971695997 715701193 776701160 394102759 719711608 12664510 919303888 571800660 687525985 568357174 837442226 921163720 953060572 252174706 945560402 165119466 851859297 750126509 923490426 299413253 911876620 682279642 700031921 581207438 630152633 655222197 881008871 878838580 981862592 774628119 819698499 463110216 599959698 924312761 929183070 355686456 942743544 837645695 948497251 674746130 868870004 141106749 865107396 610494673 632806157 887163438 914707263 478809802 576226282 959882884 978271636 286220410 784814454 194710180 289780329 496386061 951858935 994135106 995606610 516231918 928441851 896192661 984083174 604716199 605876805 649615432 913728271 21278488 401214897 992014714 993288938 345376926 892336459 84461722 404590095 165221495 661265147 419004580 888464373 904185159 938276984 77736276 240673547 614196985 738221287 910604619 959230127 726356367 771193907 299809373 647139243 901379051 936691240 893669562 945511669 377609584 390105582 735369080 971825721 550521226 818752436 615670954 773491860 497561708 599410718 108734801 265328338 199001227 542428923 478013745 669375974 685474821 999579941 576553820 788181494 775466561 933154632 334188710 880908207 53274401 768760458 463404396 773095081 540842700 905166802 242706505 886164617 305342106 457681946 972038774 973630135 27091202 706935555 63152753 729801873 619566100 761787570 85350264 331922538 734616180 923884197 973475469 996348189 15884874 877319209 33719546 724818696 760900273 960375105 80633465 436487536 908914330 974548468 107656621 875590625 938365008 971063018 867247412 946366628 995367600 996500086 191220876 821355239 995436571 998529176 342916347 375859218 712672588 892196775 467197512 503793479 108811149 505830786 648172248 983432993 784422677 892818132 591325981 626292344 215282276 725456828 131735024 792364502 979871556 985553352 771824683 994628244 867886398 874373059 245119053 722026819 410469091 974709042 328694306 976081179 610367455 677199879 783115442 926197269 13790782 76800153 469092714 835291829 375661976 809989153 531097234 538882063 993026907 999506760 905602712 997338710 130537125 779993794 184061343 621515078 306483821 473949188 476659258 649535881 588068878 702628520 469459001 729524480 145712246 581095568 738317389 905260365 747153618 840120246 98552701 966946628 349792930 710183636 966890394 995096042 483908389 759927646 695736287 997089855 27851608 575951467 965564208 971186617 96093621 490888982 77846960 794343411 501528524 801435954 40695439 576131065 744041808 804311144 192038504 848420818 433573684 482664551 548439171 906803631 991749781 998132557 606111491 895040744 686046838 959926471 880196124 957954265 993942029 999745920 298756936 926534158 913297308 986508733 217527635 621509467 738159128 849756736 644294349 681878509 806734242 899316564 394438391 932631661 48422098 567995806 112753537 189331545 625164653 719233950 4715730 657911543 738257089 753628292 863580359 946696261 946052155 994457993 88259328 881784070 518593715 937070450 520602969 849616427 215992064 521864666 976195276 992775600 486573456 531404011 474029758 512003548 34796215 115645190 973734185 984475302 598411688 705094361 461400667 975075700 297527544 977234949 611543790 922332733 38895229 264898309 947874322 985734166 427664089 840958821 883024025 906309128 253552685 726138830 479447209 547502529 292658413 813287001 804431436 826899330 86119142 840078702 642305819 986637580 909371904 923677692 379764826 936361367 267648581 415882648 303768667 713914466 178496666 944557074 713955076 885489516 666673048 996816808 660382453 745477590 989960351 994016991 519972460 666341131 482684594 946521524 34184351 453751267 965203640 993747095 797371717 950837086 255271465 728273793 548143149 774764371 775163624 841724038 339056264 661480197 663729098 675085158 449073283 694593429 290864513 880511249 519868762 575273994 38120957 67986178 160787031 793222958 671652459 746659826 253810703 632497317 77108430 516652767 316732335 535328297 849762762 987453501 211490835 299269790 164232455 884184107 517102815 854066334 56302631 133521976 670165712 680771106 856736427 910108472 907485611 988935913 740772124 798604662 700681189 929737428 742158829 763290970 235281474 507954583 874057478 891501578 999496507 999743623 466117533 643581573 557903611 931144666 791513202 878874070 78118529 511654962 131948355 711755159 574635319 604107962 361822469 461523395 6405790 963063127 952350934 966510702 603375744 772569599 913215728 968321002 649277801 917255175 474610553 950949274 615510063 932873774 293041743 734053740 47642907 207573804 207642127 682627542 78226978 886207937 514764895 673697861 389736143 567338179 288142095 954269723 811116572 916440796 440537027 941618316 624109225 672014784 135169331 435627827 726419825 897873427 506328038 809948824 603359581 977502942 147433888 239304051 273342966 867603174 747656718 965491329 730625895 918521935 35698649 856290439 767465560 956067221 387241229 825258629 360680667 550991809 597849005 729487153 627265583 940796808 971175350 993891347 2492721 910534724 365837188 776211649 102551416 134531398 737410513 789267484 511944442 686616740 609747248 635876658 178246572 927587304 539630006 797578098 869255247 929183199 585959073 626936697 761904190 968015431 50925074 638533875 496526114 640267766 142263775 892689780 552867872 970720810 660864666 924892360 533474883 895878157 933293955 968182191 345789810 708305246 365698974 633486456 136578977 917966763 674554710 798449784 675131960 838705043 64984993 900448253 440726469 626194757 264877225 883027414 423337558 685759578 441375181 642250517 87576143 788999371 477914215 714766061 58362791 874484923 259609021 443083596 595102494 775135261 710425664 762682415 108595698 983363398 778211825 915987217 445105626 532210279 960745937 963578835 965334981 976893480 417513341 774500159 943108755 961028850 6219603 148953695 142868808 216065199 102263839 665537196 476412610 998630846 453020600 484784934 919795013 989433730 494882708 625405796 662396169 972266945 580598187 963426088 350040698 899252186 760657991 865449763 784090408 890547399 679348043 696612152 100692523 234554302 531788177 844644700 915410624 955071550 588768127 790518513 267184727 358418741 496323986 663673910 843660653 955118263 191840679 681019442 114229493 255354217 640795295 807940458 586053763 644421458 836556717 842385714 322446245 399423490 581719027 627584619 431035686 781575652 399906351 582680719 199710256 821649348 420665623 790011744 943359098 980194095 291151606 477059728 479736858 764820439 251523876 449946752 164488768 967540785 512370645 811326069 631326318 658047770 695851462 925923650 539360509 539560798 621337071 702122615 862773313 996743365 995610864 998534304 951938853 971215023 731178533 978908679 419600044 911574576 330546919 350242528 160295340 832203545 213026819 524863923 949280849 952806801 598648257 868461420 705078042 924898899 485272954 527776596 516281286 729099576 723915235 936531461 620220216 820659440 27888793 490883409 472545381 628494875 994157559 998645653 391494234 827062520 936028922 976572328 386356322 502518439 140146891 564541847 166587436 168077162 356472624 547310054 755905150 980568597 133976264 876511526 1106303 544462939 803493552 848688191 779808580 799813928 110154862 969138632 861688665 996744587 227900908 690965358 43874593 986108613 838453777 906770036 845003385 947161690 239281116 747578769 830301278 989773919 242629826 567116639 433169985 763491050 111849098 301136456 628769735 674982245 523895904 843020635 834956460 978461532 481024030 838850063 235552356 386499394 387160556 943955007 232694411 972994452 512288536 545924542 172571981 812416113 631094487 780047326 679559907 955634406 534376943 781493733 609944835 713849279 321170499 943432006 72978038 958215429 631161387 962287736 913742167 958614140 802344774 830168895 551042138 552931633 531867702 855185352 817167263 906614585 763411535 791629901 121459742 133340395 84283438 959536140 767261038 953224059 6531693 829200309 41436440 451321722 73515196 670244882 659806535 663439579 201986440 340843501 599560312 959476895 267624254 839113918 330900973 483736532 898151357 915785809 428041015 810043026 252175081 603691198 337671878 578168317 961440082 979692350 706632956 793433595 571689701 708840473 901224215 977815237 993156859 997238042 554457932 700837318 985457150 987074031 158562610 589959687 186553599 940914757 231584453 349285684 203490325 965652983 549947967 979694640 4391369 607597770 966090016 980912614 607154804 815001823 242450162 309034528 931241860 947861160 434626514 631023336 533584439 580814137 130578743 441125966 277135242 770268377 359927824 360864775 58986043 615233703 600074758 993609705 601321817 628249667 704342007 809641798 636327784 761866418 797172318 993813771 626373056 936375866 843352176 878620041 894578469 903475910 646640797 770965502 858126125 876914519 400175786 885264821 456969094 959605984 399296036 695638933 916392214 927120338 980632998 995113357 592785064 919097503 280122235 930220166 320497323 557146196 485261694 664272410 886239502 925389031 51918495 272036925 276886845 734189832 624830001 879405798 304509237 447803232 168686496 805205146 156697657 897465522 566293048 865011396 342685159 358435580 921830430 955989653 325384274 467846062 842724432 958178267 932484587 969672140 914180387 928255655 318988937 582462049 208938978 253142322 227812538 508397606 728799394 970297841 883704990 901856235 614484924 926579924 878602569 938100341 814734408 821737333 548202317 804041558 627263295 945527855 577751842 589644341 526114208 897784635 423441558 668668284 75814767 853481605 736458356 953569570 686401088 897398834 359217080 814540617 599082036 826497115 197136327 701899811 470061077 897573852 534193735 774759445 652005815 906858492 702661405 929212739 47016517 354666774 587680479 781881882 355403398 842934822 79166578 671884349 533193331 537918386 711305447 947883603 479342893 960248819 146098821 908332015 21428610 794365718 839659206 917770872 171294066 747219174 136497146 184905502 688976495 994841363 555027493 991672132 569702488 805137307 80416986 825769967 51292801 182127674 641010505 998309570 421497575 822065720 578820734 594319843 328604036 409311454 131811996 204294100 182828841 604525090 771265066 815092059 10808970 427011175 948251313 961262732 862284730 976888845 193561636 931193089 533088571 825173923 105049582 752278782 290656589 879933708 949390393 974964894 430795531 683857951 194455280 685172559 378143687 994620176 822680476 955321694 994309210 995402421 364950410 372959958 771223049 880591367 403979767 824557227 251122226 535214355 176097801 274762178 650373546 699511581 404003105 962624291 528360068 825138152 849443878 907997489 289662017 918825644 505501808 856856197 416073943 435292827 721818071 774361846 384192938 414492337 608151778 698713512 900266831 982940251 829357802 855686051 101410575 298087999 650200557 804840284 229677942 830613280 825271604 890521731 958226618 998276687 64631027 246251063 412878743 990466921 907341683 929556091 525210615 743903420 464999243 602822215 884086382 971615879 925223737 962353426 465297859 854698518 901873924 904183720 392351755 887630657 482653176 496256062 380335699 408239317 13912446 886804707 588912509 778706745 25636855 308381467 895752511 983781420 252618535 978399081 534052523 780961065 702202183 758555701 608439636 967653792 342151010 863660167 122649116 568425403 737168805 833571491 508611132 923801513 133610570 578211618 328520418 600933113 977451090 990953780 354729042 373301766 853351089 904029048 547012222 801299587 375026515 943006528 547524600 831863808 954178591 997979732 355690975 376070757 389122372 824641579 377403381 679427395 65886315 113952652 779455523 880531165 372074692 965556650 587179769 981492406 143288921 599836787 223043759 984317613 550592240 714263273 415138168 586981838 279033753 557961753 160195718 883361606 402190373 827179267 598423672 981709048 64660283 576211230 731132907 987377782 548906077 582236130 635687248 811739757 741821220 850598958 86603271 433321406 768200476 950871503 514001989 725081383 630396409 858617708 931295203 973993501 591084394 637061810 485582159 823923884 503923297 645289067 491367094 852422848 131244078 365316297 80628272 569349514 40654917 976390681 400927746 955751205 753232518 992389895 973146258 975638556 933317481 943548907 457884431 829846975 898276438 925995525 249029845 281891231 761772960 783150260 872304426 883102794 480573949 596107812 187739191 727694285 184543486 681812857 535492864 736527443 158636636 513053032 151597943 440315926 887023180 940187771 275416979 948103122 195983036 910648812 679552180 772933571 981710336 985921997 689044689 706593733 1931192 800884817 875430749 876848001 307284810 554016345 66770999 391249356 980659808 994270837 758200991 836021131 876253847 916827592 589694792 927498766 31309917 126602871 654198901 930722596 667489817 707101029 437497969 889811458 582551344 760281522 342056069 585198113 415907817 477073142 795754764 977338529 786412166 806186860 765134212 803124658 415145842 760990813 27147659 751138696 281611108 913257379 13214353 344334792 115260127 503061347 169584323 676475892 229088593 589605045 89242464 531774455 177342200 271854868 223213156 761113898 592848201 714054807 765771552 947556800 731952507 744066265 292863104 690445947 49148728 809467006 955009723 978396299 361390285 957933186 358216027 983663008 697502704 812145082 34775822 215195925 75148828 423034111 417714202 907668640 756813413 943998742 721876618 775943702 422741872 943930665 297984143 309104671 171148524 953458822 353927496 845032681 138165511 157432307 567533296 708852111 896796476 983542417 310392497 849898595 640703796 770314844 841423561 907279492 875676816 879173601 344386098 924405086 202794832 916538186 947294292 961480018 24856643 974780160 649861151 987365109 653441510 697285029 235286716 985956084 645943233 717361611 5056775 708896860 217790229 351351758 414449126 622872509 223854382 702816540 589802234 980422317 605670719 939185801 52973585 779577497 715044438 944718631 724289858 970712615 457538128 869891356 571329757 910920435 983037074 988498902 787235033 916062675 349194803 915584860 915926733 970249640 745070437 753039247 997447260 997639263 342254184 665143026 740093296 780410240 325722163 759302326 171695106 253634613 617571297 789291290 756451910 803254125 458669714 552968071 337947647 507226517 998491168 999182720 957783548 966574155 860388583 875070327 702468772 715875139 439335886 483455359 475537401 615490966 60269349 458595242 958513930 982334935 186177225 250092395 72910577 625346456 529384713 752868267 849238123 942573569 82031952 885986281 597123191 893225186 661104013 690992811 559795709 618842685 99652336 269060119 888019015 978246917 799747994 853005962 276070680 495424637 975140615 979413443 652887845 764329717 410357100 517842923 746395015 768713422 733683225 741101485 40722858 936937611 982140333 989041849 611429030 687526041 658482697 845624597 162635375 948996142 865200797 917177557 410546698 562258685 614930358 939514838 734704190 926831473 169119145 583145994 236501931 569518558 351402200 794367593 435611127 525807812 927166114 951657866 69596989 375265655 619334796 911850968 868097223 899366134 133437591 186742130 156583868 390620427 914624394 990991853 501966794 684611135 157789931 447407710 728411677 826580782 172396492 662139527 117572911 148888489 777040202 904586900 630346864 702569112 609382819 810826919 212215000 708350051 530531940 576269898 16066478 577473592 469416117 527881866 326921777 461638118 156557741 445976711 836962368 954234983 315547452 790588215 58918465 959443698 337395071 858949863 479762178 727440083 467517837 494427125 657508946 728326840 583067991 597294181 411553908 431238397 703064318 913469794 969907831 987439723 161246603 551904699 261753742 960409974 199955319 391839979 762114586 899091619 865517792 911277399 277321692 425387039 584317878 935904194 979022325 996405125 241534594 997790090 790377423 964395077 396694680 974036686 790706081 810932541 982451592 983701212 673481682 776403447 381804486 793045099 434615519 703887147 125966162 972846176 231699956 597378834 134644366 319068670 111534790 531394099 667489911 918218343 84974608 890914304 291997168 510342236 958765248 970076500 877325146 920210320 732716800 929400154 568325976 989610163 989446949 992986276 411264504 591115005 404530710 831612534 696558669 851101339 955913700 988610990 850098080 857158210 423439807 698789616 512079694 907986723 311700623 325894280 137231378 622034238 579384660 980319952 332445365 972199242 159247821 786952553 819469836 905534500 406776383 930594727 549746452 893249811 61232915 144267067 579719738 796431115 292116557 673683266 316378583 361306925 202012500 949255518 602924706 887294674 341439006 708449259 916812855 962464972 160210868 779423517 961322236 991118899 85061724 828586972 898225269 941749103 160077199 350885330 78154360 725639627 356016318 642606169 37747473 277753206 567221529 674928315 981838745 998836473 252339062 934867224 407498244 567047208 763724113 772254361 86872023 836254994 632314216 982711790 311784660 658424267 387021613 705123125 789002175 907000893 930842171 998442191 713174159 767458131 470826787 854845835 501230638 513533372 213987203 416080337 57163602 278363850 743049241 779711774 361680611 663508088 229658922 545731110 936147298 991016690 680076218 927049264 375274243 582161821 331305007 374485655 633127498 869242857 931279507 970686901 557813119 606476265 576224398 676081718 552525496 605651774 329524820 749044277 845347928 929874599 572164793 694557908 454795764 808636775 553700257 857940363 634411127 667895451 336259518 783852818 99673773 355968235 305386747 781975486 524435414 563376687 810040583 974431350 802959732 920366230 321258411 762374565 557082999 749494033 135752338 863866792 45203141 996800723 70892762 468413505 648550162 864360189 708103301 875743295 55394292 493129713 802701597 886258541 748961443 931347171 471311288 680453924 135760614 400802067 854363949 870715359 781114188 841735517 304294116 742085020 513005887 645964918 762319029 992581979 986675802 988958804 466935809 861255033 685306399 768519341 269363648 673862653 737457948 780104274 852603435 887634270 614373229 838130380 357174233 556887235 938126695 972956726 323242337 651262151 521906205 845354023 633544361 658984759 405283974 955983656 854157847 997999062 889092139 951384117 334077464 402588045 806218542 878919665 794694938 868425827 724027925 855089573 247083842 433583857 606090493 746957745 524561126 915426180 720880820 997711467 865651927 879125148 174189748 856678017 100019786 938451576 961126985 972648588 771166424 874324374 283712459 525836429 300549481 967467390 165342044 795254486 438386368 698379655 649530356 668057956 203388919 419631902 773129731 853358159 635451925 976867355 664757886 980541772 993693062 999265936 737364075 853392974 888021901 904967378 452102501 572995360 678574457 966739778 21705189 769827010 627408279 734104363 43866780 803353371 716754550 776143983 559628616 622183632 880406540 904691555 953258135 960281026 601231093 689579199 641819873 667956653 45443605 925621105 791392313 873878900 271796588 385279792 578028599 712723281 630886742 817715561 461081265 766042838 359354814 414672560 762886182 948110332 513249099 729621705 913250905 955947883 476842831 612470843 913874328 988004265 755544972 791434272 658086758 759087424 357705852 516169865 31550529 683651994 374778115 490153978 796330403 924094428 476764228 651844061 827702461 993436009 495723859 786780595 397400241 409480368 426021472 656695116 773096340 942356394 659539161 955698411 906347962 954719369 756869910 854869926 911631158 972217303 371881982 372216072 137563981 650323056 184015054 200206788 702279323 761259885 425747728 525040460 468001581 880227987 29937068 313515524 688618789 699841993 448305466 861448485 499538761 708995552 850273147 911895078 30593887 338883594 154019246 644900454 865729394 914810062 774113558 826643583 43288579 386931122 453852925 804724198 284936492 901080783 237501923 645554508 685304706 692018779 793152188 958078048 253836586 606303422 183483794 527801255 17102890 287781181 124557643 879330833 187310510 547301572 559714974 568537645 383573855 798614868 193408195 610708773 842963316 892023051 568796700 909679771 953108952 992049041 214736937 604372050 98044305 853116115 319799818 469494891 296024227 967476781 46264645 291988730 654682635 705797118 703507219 891581558 269083330 620928834 283400413 906144441 703853655 831847586 524987889 630391086 386703166 879981586 427591945 695130663 615078878 791830639 935209688 962843515 13173760 809676071 149460277 540290940 484901298 930732368 879376396 961184863 499304602 991673945 220510738 332160553 894247271 907008527 628555146 715533870 888775466 978842780 66161949 104602551 15530677 458871308 658007744 696474528 839239559 968190640 207459735 437605520 708271007 940970050 74556992 825535074 689597998 845315236 573465676 989918536 607181085 620289793 281097594 369092804 148170847 716648621 990521633 994213972 82458035 877924004 182854344 825669757 500356352 897922557 529816355 734630528 487765269 712676603 709750144 954097853 160222809 641866187 958392741 974145018 122078554 691180313 563653031 851174703 998319156 999840651 626187526 710126775 890094946 995916223 705832643 736883605 253533331 541656830 325233310 560736852 65748717 752035532 41121105 955186231 554468249 906393498 748900955 820607805 512882272 826606814 452784887 857294897 163263323 282501212 161055959 543507367 748707244 980664434 133800371 442574757 576983432 847851024 314632643 575089598 515884962 871539973 256957200 432576729 731323425 855211145 780505901 910197717 543552416 781701206 540835377 978837906 701239257 952608480 244664636 784000198 355082417 713561467 157977676 481400471 622133403 754688615 491394212 594300938 966092304 984605693 984201039 992880622 72314613 336633236 208253861 792748002 2154428 543750799 725692695 768065312 659693246 984758518 736725740 968030728 388251456 994535517 369214335 877796840 309884228 682976229 28188673 353879318 888953126 953657223 667984364 987802879 232147717 580450226 416801160 697676605 567045992 818082269 357404270 608911153 961747632 993359570 729422205 937408300 370420806 502853098 209344995 215571468 138058854 301946765 969875189 995031407 136964693 545048117 186722585 659842663 231700691 755510513 296713049 860283746 831010977 900330251 655763980 917310169 9616030 111540930 637404539 980670432 97852958 170176287 423788677 774929590 33588363 553754256 497301 557497371 627086283 821447140 535847149 889716331 538923348 816987983 693615725 841367090 211846947 858860795 975378587 978030828 487022333 614119836 573302253 750366941 832998181 867592644 677693344 844022222 267568937 550237599 985267864 992293294 609862199 994582338 505881088 566566433 632017682 691019604 898295053 980734740 169414648 823625681 241869611 622082258 562814762 661703917 533708489 790245023 795287367 905129238 1374089 826721574 411716388 657828032 49736997 909493008 953383568 986304206 661982828 818997945 418871886 810702681 105262053 210948787 4615519 536471288 191638127 541256722 300322428 537245428 203138156 593963905 30729084 443998414 438044542 793220020 77681293 523325774 470103501 740333849 600774411 855046701 502403258 939840057 168485907 730502104 580532509 643707622 324306349 829291019 107494185 171283735 446785567 626980222 417940022 840065602 384802798 913517986 932238878 993157750 654489388 955823790 715786695 844982453 585492549 831377331 73957614 423477917 949582929 993084450 205850661 856465740 433053394 947068636 696900701 840325746 979580701 997541104 117172238 528372742 606229015 794179406 846694491 981903950 482265502 804626576 422878320 575091687 350830910 947622881 377180830 743858150 841947809 950613391 846105504 933042324 667256119 783956788 446728142 733157738 711994247 960737069 471294112 849837836 679034016 912306854 712093761 806544723 299238574 320275130 6184438 544726338 419501719 436480098 195571091 466373196 222220889 314789524 597638042 623528919 474589015 786918274 815117592 823403138 430040694 466982880 455045074 662331796 983298635 988821457 446780027 813905070 469354675 500988178 539293975 827248066 126223929 498377924 56571569 769233949 100301839 484705060 25162463 408397220 861812621 996584639 886407040 914926520 769296742 859408850 879869195 880681987 559048215 620336060 324902391 434382693 352975862 735164377 993344472 999800566 559342873 769522473 103204134 839780921 826108 714859791 114018892 124997362 490583009 912169220 754008063 956362157 795841063 814959812 570408406 721717034 3601551 453776856 695378514 910309385 258510461 651675726 989044543 997095117 26438938 651169266 412990411 754272832 316653984 598903334 665673810 755695558 272675104 963393073 594399877 959718926 93216487 484312876 634663912 735209681 327190915 448109742 829653487 869472287 3633177 905625175 996417105 999391895 758879792 769941156 335810172 830191870 290764949 575368376 184310837 863045247 764463306 784441500 160565590 494327860 785201306 810768411 7904200 966242220 519101799 970431563 177327464 809960188 153043998 199161784 972984833 980983361 701941770 928307042 464337988 635928986 650981939 951202042 706276486 786963892 294017973 748398253 734877176 969050027 968992708 991285393 396373768 655593700 254010192 510359531 706127915 761017804 589318240 760223863 512611708 610011819 394521225 453134134 376768987 892666109 11727333 451299975 275963980 450217735 473755031 846141072 962603965 964344241 498145414 525410193 8374736 258121155 106478203 365501986 691004009 832242878 952000916 961101418 597609305 790311838 839832719 999754186 582751391 969850039 985916111 990281891 898790484 987590878 385609655 859813718 460651465 661453519 36581920 532337533 779855628 919185941 556795258 972263396 367124253 802742877 591284034 879716997 649393080 900342240 111642307 125086706 51969595 596166675 360157965 452144399 36289123 776262531 38458346 606657685 402371899 749276060 390811602 439477546 361118132 644602449 437399284 471191636 37529764 641603066 354922332 688120674 33029805 637267601 239716059 713237763 385587637 830639930 869748450 932743948 247595150 975752735 844911343 864332479 456888097 963481084 967392525 990251807 76726707 464311759 341509768 890440492 566615370 883544949 822896431 926171729 916461722 950297335 723073453 934295775 770634312 866804883 904713988 949882731 915276223 924157236 91349174 316861885 993924105 994476716 600084324 877382373 526718997 547899085 317696971 997750866 942084504 978719726 364537659 642742664 400549566 432359326 519613230 827526300 764954565 960991729 135195269 399836529 603828084 810615145 326145808 477567473 67811510 494805371 645069548 667531553 457765919 578228671 443160579 794022680 90436370 356119048 263711707 972893156 136512528 301706587 103002172 108776362 218784727 822936907 481529918 783730764 136218404 861672330 965138628 989049743 461161006 589258415 991682335 991799065 790700335 902739710 588045849 834672607 785007930 842060313 371860110 389132948 113954960 143795897 718736329 926697469 383020427 891965366 103960858 435045765 625917631 733962873 527519283 892137888 57997422 255949227 177440406 271412388 628954654 646530493 76081920 206449604 958584906 982489433 889883879 894138579 520981794 526049679 588394127 849186185 813825618 862980537 258450013 786856611 496958261 541439342 669862425 934965152 389607530 412276673 157695202 317904464 889037504 993983563 84184391 666044883 253737300 419204737 142972585 924633323 832193528 923621128 487725991 792343764 874940732 967993618 79612981 298031889 174378641 983197806 841569192 958456014 303955854 841462427 137784418 200037254 405768043 491597743 23397633 734289458 838221974 900578473 109256206 795203153 567660350 979414874 215395748 600534286 282749638 998070580 575244244 659172689 87511485 794231968 449508759 665725106 400770312 508692270 808353463 918151329 328062725 816600417 428762962 572943143 740970834 868449186 361905951 876494017 278543698 584696827 488025357 630796881 866492208 965791043 221478687 851672150 149030576 820008072 968699796 991490231 445913230 811735051 308107492 767235147 30722620 312917038 222196746 850146047 716170381 732235266 284284654 498462019 664882001 739744130 592512392 618862670 500171952 966071007 943796357 997910907 847352035 880810088 409240726 664987863 236473662 786834172 430339072 897665019 523778779 705584103 109045802 573227934 401246273 445386014 17301636 473475962 845611029 910434884 9320032 485334117 925743851 978299579 869996583 913811580 620279158 963614113 257503683 580915566 104258803 555993214 843429573 953828879 532917051 663619993 496160371 979206210 484550157 794299350 585638870 718855679 210937792 921691665 910790389 979655587 776533374 880494164 158946711 328019966 927611475 984427760 390066971 961340673 831028668 892923752 985363207 995248377 459439559 482441224 485648040 790806088 994041698 998374833 572351702 687160677 56476095 990993696 225885316 693936472 686665478 936999398 789439879 895573421 681013341 725805493 729459994 751719302 8948835 481842859 166159799 750186169 291825100 722781141 402521407 618301885 26722469 776495432 702520808 920959931 284362091 573501696 527839930 997057663 627508216 830877630 259847896 529119723 356360876 365798031 388968570 845656079 563881976 895334752 659315683 902754387 843246383 843509143 312290852 954363377 115260350 735246218 353896385 986489091 734840387 921333539 731331954 864322206 745745592 759938820 200801127 378278944 609479624 692599483 403162012 691153305 500089487 948427980 488971758 837061252 849442412 944521124 948269340 957312211 365084386 857018677 73526196 359392617 863280327 937865093 868516139 942414452 116378132 494229370 667085739 944064873 508820309 879363994 897931751 911885431 601341074 893649190 154805703 865682845 439592224 905315916 938552218 961305566 698071069 734386507 906262454 907619256 705962408 895990374 170974056 651970118 385553880 394587118 785009510 919692013 478776636 673707228 46767064 149437141 787819756 971944352 663002796 788056630 464799441 916628691 908050091 980372400 49342619 642812551 498352000 749543776 631199381 712253983 432275566 449364930 650738091 655313979 738935228 754567715 159566374 648542832 557679653 995077335 513232811 882414409 551143405 882310827 260374848 309079817 866903023 896248554 174764059 454567910 856949331 915149153 912008023 994542252 664116695 845000147 755952922 988491603 102212803 576205243 584807031 932618947 295045118 479363693 525263579 766537744 588037670 591561852 242772947 393654551 526907398 541800628 176076516 243103742 700766639 824651779 258285413 988961343 80058071 806246322 993880183 998943127 402097463 939330750 944923312 961758757 961180725 998675946 919645796 972249905 124364614 246273413 298635577 856294442 829736875 948382733 526314969 903810345 596372983 677023690 762234414 889576389 671812654 830456077 742636860 856566527 328894097 399849484 317304015 511354588 438990004 441624274 671586304 861195806 715733033 834305074 966775885 976624700 947927942 964667427 628880138 953318291 295577101 925992142 609425296 661442777 248964507 502177681 276734791 392192496 922859971 975462821 88031348 517718857 952300189 991287804 465275420 818414352 551712782 967180896 181038792 794125747 968515670 996852706 51172332 226877736 45247950 681310707 76193981 140012088 590388301 960400176 681358676 829707216 851500910 864755793 16802773 484979759 599102011 883850241 118352733 200873389 415100929 966959122 791264365 929530430 45843404 891371922 788466699 853718240 469662025 918112814 271561293 740945603 210545582 304427234 245991808 575708558 177247061 562998978 154147959 718922318 895301107 915036469 604760788 638004111 949239132 966953965 63703154 277876771 22997542 419203344 893673673 894252280 434714255 644110375 171699203 687633148 906521982 967172892 884381637 965390516 392551207 703161325 357166943 412433372 98097454 987937808 786961749 882388868 212043849 887411858 695226396 788465552 541564883 758686433 391306982 576606748 844207085 848258659 561196226 963742433 138934270 626838622 670140427 678405789 975372282 987430185 994445203 995824808 269072545 709651034 703917123 972418111 713207606 750090393 991067234 999960782 107056666 546556867 210462824 380492029 70402103 492620354 396721090 914361555 551512944 757190281 29329729 827861489 133618207 245661654 918094396 937887231 143769896 595044252 290632710 322706087 282320061 893594720 648433829 875219672 48997145 325976125 859048257 906085603 532489373 712531077 19052719 326324127 808040402 969398164 429228381 772336346 284764967 881664832 990328608 996607307 798677314 878670994 484270730 617383406 82655604 157069611 475694675 999069253 931282947 967183694 574025264 979401460 341044866 569750923 182354900 632813259 236010913 516193555 97787940 665725406 874650247 960750040 399080506 904010096 954837137 959267275 725475697 887540119 700835433 806232014 17379919 876171329 639672043 976403252 302500528 924657830 627907675 705787221 955962875 958315161 390003938 742168465 220422325 733642129 228946523 911638930 917165366 973967298 22284855 221556048 134228091 696914210 571681334 715413477 503241382 971503858 970171708 985235516 941926342 971825742 393985550 914509331 550266756 991323214 448417226 825492650 829008169 842167726 424125447 897151254 906458867 983965310 527687547 686316801 350829943 391300394 977862527 979430156 30877547 190328393 269420486 470996070 836476582 885445696 697982094 767978528 300028846 514841501 590820073 665572298 28707500 899048668 316810928 609282034 305003354 455135469 681929628 743192843 511805152 730579431 284182907 711904184 432275472 669423031 44197723 128459932 291071162 762702163 311035462 750512987 566092102 897480868 916950939 933551882 487217071 619047824 821533071 898990789 528190185 970659603 946527945 970515063 1691868 801619556 947771567 957883362 239433571 618956732 852388966 992676056 374407064 819604329 444458668 491280955 985812227 996011482 951167777 967002004 856617631 861671515 767511315 956631172 160346259 609057040 594613807 902662291 261287788 825418714 364299237 963667432 928029748 940162966 210715843 881893263 106457801 704940770 175581534 931534819 433142097 530603105 526441217 795411103 238835223 259482920 340175205 685194723 757231295 971191672 274382553 746218146 482587671 540671872 934754034 997107289 816265574 916795463 103126448 161783901 221259191 889507084 786693044 942234603 859814287 965524834 879119085 896324503 541539638 798525195 113415264 565304084 969560591 969802424 738836095 779012694 925452266 929626269 87099895 809122342 118969106 682309360 697405984 935985672 889423617 916177911 728822657 979773110 621021057 740401909 497053874 817954420 47182786 744328729 86574863 459013714 343910606 726223727 435552420 776624972 85641834 763042288 655638862 683948879 79455266 499860733 838681908 868215241 76144332 791500522 282548823 956413922 503047214 813523083 837529957 923548878 638503218 993037161 653359502 740730872 453646328 816121731 4410772 386013518 745689421 776815694 629313517 822198886 986654844 998753512 524324299 831815302 691462457 920481199 356268421 982474371 519837936 691532071 156489463 687354893 455327328 745585130 872656352 936276310 107315535 834937722 847985664 959187010 975382929 994503237 881519869 907366504 791311213 889594826 223727101 629490031 295735072 335316801 720484388 997743863 900288911 983770198 731535658 979523721 27063756 477215544 642985150 965447412 465381042 625775979 751527150 847205615 268509638 549808388 869045801 893591373 290801085 769803308 215440030 216287899 127876235 614908002 688658228 969411910 291307471 812819447 168046944 719744886 885401650 962355512 19704527 285638546 474013798 745352637 468088158 623023048 266590087 766999792 105083912 385714669 269555137 583383332 104030057 417157189 236346830 908849576 733484282 762528044 304572003 897407383 43599675 160858621 26807735 632812571 928361618 977742196 418496242 497557187 745111472 754514067 21155635 886021303 263791814 491770719 696306880 885606895 596008547 666437089 744824418 844753515 629192915 879056220 261386966 598942837 547058250 969853283 861453518 871972909 635988734 906219363 861255964 951296822 263494723 429830639 914175467 932200356 427911615 947201843 285879191 989181257 577963416 721407648 342586383 954055682 5953075 268703468 15897053 742077082 334891394 918060530 554940819 826554534 294454867 312156959 468616822 603356087 548663530 819692056 791643570 937327192 145674191 721535700 114182170 538817282 288321782 589826225 760531058 798967005 383291392 671635062 767128803 926443134 123568787 635974331 122866120 744699624 390799062 453068375 729833104 840991326 746905797 992037320 370204593 449474532 617800524 644615096 609414041 728166187 251117821 293937844 141659845 833154244 430669752 857954350 112362017 532041109 673685461 896770579 985982371 987087245 515044743 977998771 534217911 975737323 295437300 876201785 753761918 932324004 957890302 973828598 682279448 742969712 602828225 674050041 928957223 989563076 659699365 824292023 755376475 904920743 221478324 346585326 622094068 966241879 228823310 310643543 455581548 931665270 408687957 993040801 127963315 731681158 346948507 870264212 696688894 907502759 316313944 405547316 154407317 940960448 477791913 908171342 73531092 955038263 924856839 987737184 271242057 843953187 80332567 609562425 939336092 980765813 659905810 985813843 398187262 924674286 992906049 994408866 412864367 503445473 371276080 371501191 810968420 907882180 458225176 994273743 148605167 332382228 238719110 999010481 760716316 931940727 747802446 947064773 237449389 357411356 104261712 262665055 477937186 865737040 819843873 923038793 441626003 543211221 24286856 584420297 575962490 930252967 230824586 617704943 168633016 399188074 293715090 359895700 916759253 923099704 392060480 986809523 397703963 527782867 953424486 962437600 285726747 882826806 782639445 795053766 627844886 689918679 215170107 802926415 220900557 743617635 834918037 957308403 358823538 686743785 390924648 764776370 835020042 878156507 605515417 805021701 705987695 966452158 334255135 750132240 429927171 790239664 82939965 894015936 711008385 948672261 481671392 566347092 819689603 971258109 908831674 919704077 933992978 973273018 35983718 530161531 516452657 675044876 404089980 581085665 25087257 566856034 656431927 833536625 136070115 921571572 450095633 514872526 724333001 855137923 885756255 956447922 493092425 577776188 784949312 874022314 191530657 331977259 427551753 838200338 463839458 999175409 931624724 950225860 631983605 707791971 716252116 745857628 509995370 674875575 158668855 546546848 507621380 765405984 529655519 922510875 897544856 987022422 868098654 929553664 235939394 759584665 650641402 708906187 571792733 812440692 571846349 904999992 430783197 516997777 16838257 300335285 80992696 144135821 578087211 614781527 97402653 754755465 14691945 117078690 741790493 934434189 412321499 586197963 378653130 979422821 718260092 919296576 264816740 301485099 248304560 800892777 406082538 661300032 505734067 914286191 243800481 821729413 931166323 936721016 447079983 494219230 456886413 633599741 297308180 558968198 783271807 832743212 760387925 858916337 687873493 916355767 760127490 987930175 384308782 535398082 277945170 392603151 855196170 965077850 842006423 850003571 453955584 562315282 438465215 941060368 622665712 850281275 245473832 602991372 351433210 838265788 771421281 774635652 23165450 133764717 470477030 735815145 591213547 823378858 477842294 873411773 289158705 899137337 428633034 620471340 321095790 940962884 993752990 997069365 595765346 901659568 492842437 746022528 513460510 616450666 977687086 984626667 186225653 247371271 429315948 490487920 369848989 645860087 17342626 328512836 428384570 496604169 352741617 467652866 374691575 586175690 202960267 381067851 955723425 982291599 937922787 945488637 438261792 461986668 205163814 965505762 809078398 880701918 830974051 913335748 658787416 897732610 876606929 978516322 434609360 441987477 4872187 132707915 687198636 792752137 894152287 955896721 637139432 654200569 189952803 808488323 800048173 947044902 836978701 964035363 458176554 734385659 235161112 961316913 979948826 992570922 597457975 913612913 753944303 757345038 589277956 794206201 136287021 514817290 618576563 706786766 517292206 607272270 822548868 861476451 669774957 736831467 6970792 883433061 963681719 999324519 487684035 745483541 359668060 915879550 72554462 237999797 220930258 983873987 967346451 986611656 222058218 243470368 533751657 543249061 436920162 525385200 619155022 622497313 762157029 775965165 19981644 408213134 736892129 749151803 563682076 728446902 818451150 879961591 219492867 519664565 568577994 874406778 530008552 579032401 275233289 526198807 45036446 617565040 782519130 995399039 814961982 873216826 936594227 971576861 873747079 984841725 909710525 998779488 853523266 931599499 465644082 647394418 837023260 891360252 525787474 570556418 342920785 939321101 697846968 793360496 403410713 415549948 266149925 419684270 530072546 896000280 988998042 990318847 696893160 880261503 948431635 982841477 462727172 716838900 833742906 865566057 744629100 950865000 252244618 342162713 57475125 386896494 850504396 925079748 296501500 983616412 921024830 956253783 959295490 967034146 141377821 537162537 640986816 914956433 418369326 900907910 74489599 702584619 674734796 766693474 373427879 765363151 321105039 609126203 497384604 825633320 991422513 992339111 793208587 827965161 641272359 910174268 157519678 906524874 523555259 605479656 206739433 881690499 805053092 905741098 848397187 957886172 316449290 541493364 650850006 724642523 854277612 869439111 514411282 855380675 494272790 498825674 174483451 350626752 197865954 875680451 921170080 958195996 846581832 988151447 141814771 757109415 383928811 708779108 204265888 751336912 520374049 548253729 263835073 280024457 525492925 809553989 922255131 932431888 150029327 913385002 838133433 900123410 525911960 974516741 465402098 873007283 718371738 958308970 206137522 472715087 712885279 799435215 597847854 806516389 756807514 923462658 106628701 234197171 320419063 527999841 538735358 631554563 621269938 639524759 617978069 795895433 308510890 372807865 87680587 735980758 534025153 539753407 23888351 91866763 358605691 520502105 142860430 539159325 734589148 894611873 457784766 793986770 701005420 878774632 685231824 821222995 334561688 691822094 460999944 495559292 883680276 988839019 481732689 997590557 984091734 989018207 311829601 438571720 397257034 462269805 952860674 987229652 854387464 876727295 821687105 878904775 376375907 568366289 80832811 551074649 424795209 994657622 81380039 975478900 495029763 542977258 359457270 861315469 16057703 323891828 776656229 983444221 934268646 994764549 843777964 872862819 95953724 947434867 576109163 702782107 868377480 893288201 836848911 968480707 887208412 944678205 422314996 628336232 574010402 675814086 876799209 881182462 970553952 989965939 172166692 179584952 919281080 978463679 788720526 839688863 294076839 407503684 794812159 826026430 23682710 839632084 177711672 516277041 720722449 758359617 853242202 963965386 739640731 942198637 711020469 879330257 911259565 952227244 794784434 800558952 499680703 647597669 396025438 427336069 165601551 929754355 500382288 958928193 865608165 922783133 179094258 972171162 875516422 914564410 786775526 824230983 172259895 911518407 674509343 872917387 613217443 835856667 671786291 765510133 650095886 674235281 911699721 911946682 278564635 307646255 915488696 919552547 43768588 994598730 86693340 476596424 771981077 796425914 51200551 897546000 787054731 875038844 354696934 614407069 766335560 996953713 311272480 778374312 673239130 709557337 460606177 474116596 999473888 999598621 813317253 975763808 259859585 782904138 660427586 669839366 106103679 478430717 143953643 688207901 743632992 804867532 699173466 789166308 37117291 38207483 786159811 996426663 444136759 614350603 151023142 494224277 642880087 757485792 280836399 828789963 833008928 836243605 395718063 748066519 557858418 967013570 249632570 938677028 781572886 957243789 636339534 924226779 618487652 703200430 397995500 737054921 357861646 804005559 394610184 913836288 817667737 920314373 356168244 829530347 870844360 917214074 969974761 983500869 645142103 821691084 728343476 898604075 360146981 373916992 244678144 447793027 527834947 696223969 931799994 996081896 452799358 486380195 900124271 999761336 431857701 820263973 922070115 959977178 280359928 702610043 911963016 997938642 860881355 980411565 70596832 151083058 144796593 788075103 776594547 895053326 52384180 612377956 91333511 217664145 90343792 432907395 296561245 684460679 845744959 894256258 430780830 942287717 232089058 752151614 230829675 528855796 340675686 821791340 85519787 716967064 894499261 896958386 409477589 430719348 771576326 849708678 968937283 990511776 560758162 915790659 368419155 721523339 474073661 886725325 263670314 521981795 468923569 923720749 277381343 603797532 982702094 999589867 193290228 605731426 90626554 642343973 694106171 711068982 872837924 886902600 694962595 695044856 950918217 967303097 844634086 871097688 320757259 662029076 502865272 559499771 446669387 502471749 957111980 996107624 649886233 880623999 151769653 500938104 451346654 746553125 855334446 861434660 710042597 830793254 754093542 800794115 719557238 809102659 20078748 885848770 99308541 871442327 103195060 411243137 820687900 848680587 276979659 593189225 565578231 902091079 165763527 860780204 203837884 279294843 163007623 596370126 625593288 963778925 101271080 835390754 856559155 959984859 278528467 536989308 645685664 898632133 804348828 836302831 348597049 858756503 175881433 469152410 640094904 850107794 72662715 856588484 875947316 988013454 999772568 999926769 444725224 722199916 89418303 875542102 371743 24056662 980887700 998792280 681974696 752842505 588525716 837670656 448444324 818709442 112458362 969255212 6478800 86676399 827876662 830477152 889803818 902368406 191484954 787875911 205268040 770662554 152711959 875769011 417627581 928048074 663507326 803672607 244178423 431200850 614417402 986348445 785378103 929943334 259881931 810672522 503450846 981440878 198772253 868490216 937625080 961614229 50953425 324704970 676938230 906545944 393959323 530122165 707612487 813620601 293457311 607932157 999088290 999652796 777462397 956456090 565135922 814889945 855892036 990093848 514981679 649207754 41168462 833761818 639295705 909037412 414741816 636086440 899704552 934650324 23229712 250932068 955288380 999281395 710354126 872638211 816401930 926255948 782494459 863996406 909982720 917240777 298643933 965933772 75844646 913152337 210097209 451081153 740177051 969834944 249921690 819332075 956310900 970297237 422611695 760086151 385093426 406723332 231679486 360692222 274584156 275005944 912369711 922094681 686385782 941220293 56149064 948426481 505469262 527005595 704130062 713988003 65273466 178864244 134379056 352665442 324291547 803342644 497407002 776686977 205120901 710141049 641834637 740048254 23729456 593573837 655513352 824848713 725202516 867318678 370777401 528408616 156769042 484134803 770744365 961392793 670928287 817002065 249207108 529646805 621174382 764082854 513038212 719879803 491164117 648073896 714837596 798960087 577176788 909701048 212233037 902096244 284641411 652414247 263075002 929376074 196617707 265789220 916616140 978246905 20587823 593342816 678500506 769177169 950317176 995222360 181777874 517127535 150532468 198008795 288794523 934688360 464853374 571898726 364863407 692709895 934746432 942362713 52648944 677661819 39284090 719773120 370247608 770694640 782647662 784300130 604841673 971067034 631325646 923381861 306582324 924870161 132901926 202880862 101402749 128557472 446016640 620320904 432088886 456133105 434415821 857957465 606808486 882834518 422934953 618086007 626311792 705584024 374792506 755242806 898263854 943126566 131000740 218021491 930406857 958925571 175559053 974917125 720716511 993937389 177286461 247539707 174462092 772835402 190689630 577152185 320538549 986331052 747370473 855276326 915343495 931178233 664887087 785853445 714196562 994141091 930361430 938487700 993955015 998710862 769065400 866701019 714260133 738901484 810904289 833216526 793970175 885738511 768188231 798780342 409823047 847639707 195044380 254181341 231208181 584880128 990174363 997801451 473882765 477911713 549919270 663056699 191672475 496934432 800285538 976555954 734299198 858148385 754142190 768318012 192890528 644089057 52807388 605489127 470627344 790627602 695633658 762021239 614091221 877167374 804603091 868637584 796195511 984644949 688579006 726026720 113262549 893203555 827165670 940014948 156205529 792146003 607256478 769432562 832880487 888257335 687289441 971279383 766878529 848752702 131968607 880462739 576773285 899324789 912658251 932435139 201591646 698576940 45948978 920350252 793431176 845479669 930045575 958556877 502965874 539259727 872524477 904364056 334754167 734934220 898125236 913910668 265131209 627855463 682626765 934704843 414091580 983104178 758610392 842929818 553107431 647437920 812578888 919784131 623715204 805118342 222129391 693944205 333440997 705191136 931669174 942614921 784234379 803314915 251960813 362289404 148480914 150573323 155698505 877718319 612422694 847786577 423054584 993136128 22380599 408118935 145957509 663314409 129137501 521726438 636721614 677024032 922362456 933244940 870933757 990557862 405929938 672126300 979008084 985834077 260348433 579148702 571430673 672961045 237051081 794037494 783166854 906601604 103558728 144567563 211021233 297518008 641863461 688722990 954234502 988788121 870291063 875766298 456705922 867670964 884497537 909478995 122738174 544733407 985761749 991907461 479480922 843494282 919229371 971137468 152989862 458280457 891026749 896852792 471687264 485450627 363032478 434202902 581783667 710901615 581248217 757699875 197915382 757842945 189451318 197926321 744269621 971467145 541962425 778234863 974396228 988651675 374004661 553260873 786052426 866537838 520781012 793600885 963128572 988943668 255825771 863387534 735845043 855294287 445301598 835532682 618109960 924802135 154175590 330890511 576150565 816287680 763476809 858786391 727441765 952772032 489155525 870326007 439936492 459833492 768449472 778256842 831288308 935910443 964500758 991501308 722063570 988252875 378567085 968906861 133211664 198513488 223390342 703726866 601391146 625190341 160475048 978310678 447543978 525765882 66702516 959891910 89393208 312893992 504768519 550536909 948790991 999144531 500305246 781532785 921273231 951787531 65635107 683257824 231078480 346086677 423286618 551060838 48993331 183298025 401834957 838394818 174509421 255503593 302300995 598829401 719565069 928411759 574959574 777243317 859322686 909579886 441269375 553600780 929452996 974593789 718277437 733072109 657767351 894917911 427447794 993794848 121039480 463850730 488100072 878895085 672900701 778456054 308939262 683680238 384843866 682864119 678335959 989775145 914956037 968789252 637566357 795219874 610939527 901467291 504247355 777123365 396813043 799958779 815487747 907346292 291809532 785101266 28822990 192065548 229387662 972056375 474964351 803639875 964351389 997613090 938142488 949440237 966250114 983978385 26107469 235065516 658212453 846283490 691888149 859336146 290256982 467338529 118122022 492610637 526783008 730052801 111452135 445839572 528080193 814808827 499456074 871095450 52130885 675806327 179037080 525315084 315534485 610633230 362513475 835128777 580725448 817406090 217414053 980908431 368127691 929621928 700521600 909932767 110953340 327034727 31533909 326363720 390470721 441883868 790057317 804152198 712129726 718688075 464660844 687964073 979501001 987568562 807441076 999140993 590937853 860641199 187586802 477492894 249371222 264505856 616647762 972171204 238273932 313046371 990850703 997454757 221456330 862015102 270220748 308852264 43972610 454061187 495959258 909393575 361277760 638562153 542688716 974692848 704229664 820516099 600429512 603438236 600710049 840898056 126071805 696017101 75370210 929044648 175338325 728643204 625697023 644770619 305229876 757777904 109591679 404584378 653931903 865539091 889490266 903215664 481871180 744456107 672798204 864392640 129308807 271020930 618248875 958832468 754842147 931367033 618557971 706067152 808418600 816005994 471628981 687288579 813267846 956299736 873955708 958801835 733781184 745424618 407379088 992540483 915207275 923840887 627991083 727682303 898187782 982462867 27759611 132297680 437197906 999057065 873291345 912457946 262621140 325822804 894642676 902743729 108764135 321958143 616787813 891505612 629953583 919238551 106445151 311103937 400635801 502255035 883848925 904007844 630872283 861393040 917117721 990278620 385995064 634995158 25481113 364323407 761133115 886090430 417755469 520372331 753214113 811991527 282074018 915487923 911818357 944728380 999253599 999308818 15044360 885875005 844042073 895164734 658584658 684347946 864836935 896934190 610868742 748914038 100946914 557600628 46574185 363595858 399011419 501443906 237291270 612787611 441618079 625669064 166542129 434938438 417270081 959611052 586212922 862079426 722710226 874545430 23262502 701494062 175930480 293709185 13365624 493162124 876411064 958216787 579934049 615626624 204584581 561853842 320189789 374863942 262941683 900875031 229318234 358861665 810549679 960287691 768901435 994493169 296494255 838377458 293824995 525385850 279974197 647881171 674598396 791641799 613417708 645595095 722703119 760042422 673384475 839715059 671150745 865482496 489407804 994842738 236549274 997138288 832135877 835540576 35877180 155030991 117203182 744519594 107678907 562952595 706015894 875077668 863277405 897829663 992690030 997782175 622967324 736999057 353119196 775002297 475536168 598801200 701202209 775978418 236341035 422965493 531821378 787759516 847928426 872151227 607144813 830416343 735170928 822191529 665766014 674135569 729100526 980203229 664902349 956518973 985948922 998890651 880056847 970256412 147252427 471080563 617110726 720030930 367460302 493938198 905296582 906226261 929836570 995569840 93310634 372167489 462072635 465578267 712058418 959530167 722816137 996411257 534202202 853491231 698545889 763392274 451814176 492985763 569373314 784712820 207637495 796971153 503159998 581491393 641236265 788858432 260013297 950905457 243102635 879279422 248314842 458686147 608402780 919142911 726798539 951413588 585042571 999394645 654511905 700218597 28922598 268326501 182374554 538759473 167989050 629781508 237760523 769897761 292204098 640547753 448984473 531163121 133056469 952663889 730154542 943188690 425565138 915335243 488101840 780117709 337634645 882134822 404851995 717961221 637586045 707970200 887265572 995907883 673111819 783867044 574694658 732204001 115001114 872869143 86737083 816610241 338369779 817037357 264044479 579305976 495463279 518122327 637665368 910827360 382349053 956572788 976003867 983997133 246646021 398963593 475175338 826142321 668189615 779684837 741577537 811105886 755770617 815711745 662733259 844346669 624407737 731702779 792498982 858311981 843399344 907438891 14911710 76043464 399795494 811748628 249484568 253544279 466525037 925885696 373025294 834330406 673117119 845390900 745267284 901636574 980821198 982056143 940306381 949960534 226433185 269989509 67725132 645924364 677953749 720713427 393244505 552319374 156098276 351578116 562991494 733116309 431070912 715506391 412599756 564795394 409543370 872377933 798074850 848721629 768393718 883969671 973965482 987066321 424269989 644577103 357862404 840886504 992115128 997114169 390628273 862933256 763473776 897032331 297375328 586004822 253518037 529903098 865719687 892517935 7709182 246703777 989436910 998986192 481580436 676064233 940552212 986912420 722647121 896669089 843649411 926767568 17021134 301892311 37246493 283547381 602164263 771918695 868703385 882839348 77361813 125317426 341493471 557423161 408000365 563169798 460124873 962064273 525210333 675702910 949655690 954760839 756733509 989147692 693330002 960433242 671425493 989107536 244193308 501397205 241316755 740001473 986997583 992749536 286036271 624973915 417594104 626242009 614240237 925599316 142989017 872182576 885962143 967534696 518470225 747499227 403624414 420744077 503777863 731307026 345557448 908661278 706071809 925567630 744492544 863575493 35003927 534425734 733603066 979160352 276788163 420336402 252382258 897833901 925681905 993566422 632914472 834919741 393130207 846237107 675316339 753883519 11564860 323570804 78642420 905676891 209980143 683606989 221666277 443134008 93968934 602197483 98608899 192718606 574675488 911403849 591215904 993682267 212655345 789794792 38190353 132437113 627402385 870507109 630507149 758595747 430129428 463936521 803093000 822421770 605955281 866650596 544945577 556102636 905962407 911832904 466210951 838605865 353079418 772633433 547275640 583179086 456333413 881724052 320591241 360197580 21653205 952451495 743127470 934763685 200628429 283790338 124433242 416260644 115431338 855786324 706769795 922514520 115154688 819499765 878029993 892571387 984629418 989447549 661140735 788468653 364115419 837622666 151508465 972663781 425207444 839517510 850925151 941880327 976995052 980271281 576588351 775550261 570210113 610462019 407356439 943489156 799462745 956528457 338928427 575049999 852396060 888170398 884491179 992519600 31808109 927716286 288573462 854151659 843793033 876367033 633007729 918112189 109103694 378084853 588230814 979101174 276853097 823547253 764857139 819112367 805375898 943778532 777617976 847453812 133585322 734821447 633784268 794467544 108129921 319702468 736880952 811466952 342876927 483639652 11984246 33202943 567857274 960628852 538401177 926575587 119862495 645138725 910861535 997660956 65185644 454108876 264272593 285013261 288433842 337462951 737873388 934106640 598065099 610353164 24857747 896156200 430667143 714560707 808565463 815487425 250398054 777800128 312508484 515966745 863312433 881288969 33199295 895174022 797609264 969172545 729306336 854662924 855851820 896121673 217373623 826974062 822093830 864558712 554817407 734740723 82368683 482859000 700553572 885298166 542402956 962623456 739698421 839578765 580105699 962439958 291807815 955773242 875785733 984178710 605873389 692691102 60789399 163218503 801027028 973940407 604475724 618640883 78576163 609356941 600479888 762394628 863872374 908078892 396069927 812104419 764071656 861242193 481742791 834969059 124618149 771300732 308949736 717812463 771515146 904942280 484582837 857749207 203680623 391923242 414739033 679611840 43931886 833601811 526634607 773581647 548195547 854442911 767518031 849028132 535192946 891192790 203465647 965935415 834793929 942564987 61901251 140538974 639665400 801233199 176953205 590149342 703948462 741896668 417642277 932726893 697202526 853656002 405655075 741074651 563404920 860474185 910836941 967807168 487820294 761278074 93763653 353684799 708057677 741799571 260872113 441702668 801061 878604265 23445452 441732367 339809719 785355688 592943715 652801960 864158060 872986323 508643405 560905455 497349909 839358655 879895810 977685199 737848523 970302581 277251098 612746912 139362694 886682116 578413733 870653457 570766500 602775571 416436358 888149542 885467833 992626362 500089753 609360985 382826263 751673789 603452621 657434308 827644460 924279948 550713476 716761942 332626254 520572816 737375766 854322877 126538687 852017712 385477904 573733089 200482378 830804386 873313318 970605956 826164544 851658819 993665485 995019114 876876086 884340621 454565938 472974974 331207091 862531692 712895958 922314774 638344974 910506167 77988778 859060064 697809699 940575638 739321712 746542440 22293541 616351299 985338300 985952435 173149727 312979247 984441711 995198606 660092952 724187899 61139544 466954310 316828248 775768920 279802793 759651435 712923480 798063100 721516663 981523116 819416205 854421073 312593012 725859461 25250428 718263477 62995761 558406542 396750274 646490955 708575411 992974838 398142112 934884917 39688388 234682172 916418086 943377520 691303556 848036424 364420755 741202270 675599419 721630789 864342181 977279232 207436994 757967712 989879088 992377300 284754366 446537812 832246763 905113020 100845087 314506822 838828663 970691102 658918382 782780229 643604510 916449523 691557581 970829309 512235334 730215310 128151590 470379994 299322277 915602811 97328999 255098092 187762818 800935809 273421676 708401685 994185704 999509546 514391201 912524597 691482140 854546995 120351297 492212983 536918135 936457619 969860778 989883475 23304629 827444714 464768992 993158488 810533868 903369641 823642216 962926276 324850811 874703829 398404554 604865366 955752310 965346090 918929416 934682933 805603345 853124272 818299752 985228784 620601167 927390625 154007211 476133574 911263966 991961179 332134744 654475851 662169042 816367703 342984161 820779873 592665479 725607472 7782012 17794220 182529641 775392909 637066782 988713086 25582370 663640398 922511366 959641752 500129904 648421054 171667777 449864809 587490354 802707429 420922866 491113650 231080003 865637876 888669743 999390997 890119602 990314674 3915703 498356665 417413284 562301788 172951686 855733302 39235649 659894082 612453511 818288518 785072453 853353129 729787490 942279712 991605951 999156590 963124206 993244333 584472269 843221273 112290807 866257689 897512955 949899091 411582484 579828811 642377868 933368074 431687725 808653695 356904794 397998802 387550771 999371123 251413423 877770478 151617689 287389152 136567625 526574464 365637272 495323952 51904827 290664045 993381033 998626078 37875576 181727938 322776276 502420970 239704412 850719624 618304113 946691429 874255575 993684488 643478774 779520130 871241092 985185646 915568022 982624016 813595367 978273347 556116579 703631838 908781819 985050433 962010625 977540055 49344757 372986767 76287339 370356450 586270614 831038190 606589194 765167445 53501467 307608886 216130425 293752670 508178211 919693924 837538178 994617144 196423422 629348071 694069348 993770702 746922327 777692597 746917701 837269871 14657884 555192168 630072495 858239196 273574310 593582793 799676405 987466655 339357532 480319368 684641244 850452832 685177786 900227628 519005101 969481999 12788910 222384257 12860981 360250118 244732159 437146826 324114211 815876379 975906478 991592205 358918406 688959773 98908183 517195751 606888523 733390136 965176611 975078030 168610580 528662816 326317876 484748502 190044311 575026558 508823930 987836707 431504810 823092676 541882958 945945617 853587131 933638312 355694995 704923889 805889377 834998085 445291218 524508541 480509441 665767345 304196982 616123333 367524806 879900431 343241664 567991027 416626636 870076635 723220223 945751435 8530095 266227919 481320600 942520834 113994101 756357790 808678242 824937095 606394012 878062478 81632898 215233031 315163183 885085555 372481183 811704188 308059397 463147630 372452809 972754884 548326681 551308269 610443870 834315559 358947918 938849305 705936211 762821034 914186019 995211377 316720358 364070721 622258377 938212255 197665038 709423580 493006950 768581205 10840889 112026452 351735016 671660854 152000197 617121820 896726221 981213527 694345792 906110832 788112048 804424579 185127368 323387235 470383929 870703189 919457001 987558859 37849335 957420955 306410010 583735736 427115305 865112714 546768066 932493947 903291216 968752361 417121895 937858631 30352936 644986916 558210494 656294393 834129840 960305705 612724425 948746979 225558685 953422883 578913546 822643725 535030007 665599517 347782778 815769397 880177376 892403785 78977981 480756337 485904059 925314728 725208649 769509377 498565865 648994979 321574662 438023722 501051985 994794349 522360668 991364746 279768723 601778396 792128147 874955577 252657580 403406030 317863432 448243504 123456314 549352674 906680409 997474912 901526944 961695101 896241017 956523603 871945232 998322595 347546392 570897504 876963295 911995207 441960394 464387377 605461088 639628428 374373409 669308181 506988907 764603631 96573313 674216993 628550336 719195003 985054975 994189533 224101690 634432840 215655324 344930635 561183283 877369507 193182327 959253081 3859487 225206751 431977406 995463285 542394997 771387919 59857053 90004307 304610017 513348511 587435392 849171767 968341607 983587232 958407632 966290825 644241002 970121485 667837327 926732274 260482868 479786328 94270924 257456459 302244450 828094655 847370110 883186012 737579853 812786118 871877967 921194270 265608174 627319711 746122029 767821945 980184305 980236688 266752051 520360945 214716936 851671615 768589741 935574516 108471304 257914698 654986009 882518912 469407051 975788049 69116516 180039449 857726059 962446624 205382165 712759750 1101571 909805098 694763141 799767373 697483884 883282714 486141027 995898846 71757803 949666517 377202586 960328036 242443669 736689313 275228124 964401689 590733587 718190121 236969015 515972887 738083796 871367816 955499252 987696087 862505177 892663224 762690939 889773266 488148199 861650428 481865620 721623364 213650478 479725083 569463948 792149035 252075425 711148305 546305277 830231661 642250866 707274638 662276276 835206141 68244049 731310026 113780232 330853959 487079006 954753598 31811544 277118303 827921995 951121413 605579671 664678000 549705559 807097374 569624638 644522661 469380198 771854022 18270682 543287587 854148699 970384129 625670240 911310222 774055382 899055447 154331844 321281845 150300931 300672149 645573870 910945636 292225725 525121237 432371356 508884297 217564130 909951610 432502855 754867037 435234853 640491285 270355271 797244246 982800021 991309759 415270135 524827886 241999209 745559381 80225770 838454669 611209819 680691929 565609842 992114519 540125106 634930601 665246643 670814611 340960465 463360533 954668288 959883177 659518449 878206753 787822813 820243167 147049814 802810980 182849696 468494452 588832739 721482415 439293178 659493412 818031143 950365835 905383738 966750066 264702054 373099496 11708153 400714008 203383570 295417792 204944998 553660674 473536847 976653043 233257412 291854053 141771758 339129831 447258839 736808409 224035514 507564400 532419663 813796614 80983182 916377460 696403718 996784312 233911505 235432824 146843036 243652599 124121808 809157109 636285822 933617590 898713765 968908196 455060390 720525188 733281807 746530580 794457918 829985658 345196856 762837583 932756218 944729443 668566931 730622849 868713696 869499397 667705822 881033123 874354458 898769387 597390296 882222895 324573774 982120791 942150969 952864197 48977283 618150978 907544366 984400190 953527559 984885144 971688250 976095698 121910810 379345576 485553699 970311476 232761924 681855444 127722583 332084550 102075264 557727765 914019460 924761684 936022618 952722431 442473548 746686651 711819013 740737330 283379447 872304480 684375492 743055734 736294689 761697670 336495800 713588709 116715665 947711643 46055936 212886216 657256834 920373933 677238097 902119677 601605357 727585632 205357947 712332996 526212182 542029971 811072876 914416994 907601607 942008519 405957052 436989853 270144619 303554094 845014453 991569979 949362747 969673388 748664552 775187885 216484197 720437726 859283427 961183228 404146247 741770374 143063883 176329106 74410627 867552623 189842293 582865718 339776795 385532837 623908732 887433773 885490025 894751214 584368678 727770932 373695301 465021372 556275741 623277982 321405184 727728818 691864053 935758761 335117674 641026938 874894502 942486205 22437665 934411960 594736153 950905244 86599496 550853166 162917978 176725618 479771057 684408049 762968277 893915470 256945801 657494827 983124787 993359390 987461411 995613672 548686882 924111200 706392864 968729664 958514080 978824880 39620137 117553783 679986362 879370125 67459972 591968548 349197886 758780673 437588745 987143645 166057041 464515900 185642156 645565420 608843263 689248169 563226308 963115977 913028072 952006332 910621720 998887233 194931505 573470717 646596679 742981929 400342948 481075731 487062424 878878780 534147975 927578096 582438970 965263410 179645882 244527098 319092461 406915210 639661563 662534191 724927724 867496226 298162309 592339141 412890041 582751921 587858076 592830176 693295356 824326851 34525964 423642522 131298251 902846319 248144824 277159339 3264896 346864054 122404006 219640418 822306847 953292622 677975592 691902576 929478019 987479984 106544611 858900856 146970651 662578452 475721774 946655197 852711509 910932248 719889713 949391806 492869557 858780274 963266115 972782837 525434569 742638681 807137489 892655999 830574143 850574716 603596215 732351641 273926488 396979401 848970944 966791917 241097279 681810202 319658390 754137893 802307025 960328634 730858252 893006955 60177644 965423821 262311245 586449731 470292214 871329414 286033574 964717691 171275926 777783672 925905324 978701986 51217859 803021899 646877356 673514386 444617166 543115418 747971037 994882768 347362949 637605122 285379216 393660960 682945314 691308039 533107206 764169276 945356768 976873744 949120829 998192891 1322505 615488593 97597660 830029931 225465470 573724851 869514870 887002182 60093916 613335942 828823508 996998576 497896593 991906323 264609187 526932244 741426789 967751207 498047683 925762853 815999597 931757968 71890599 610357307 349123982 576612335 298517594 607477900 390209981 833788752 601756678 619594186 365712116 480063995 415089419 847445046 82823662 107511564 74585713 778691839 245475154 653020527 6561285 979503113 431968154 818288253 195409965 913947835 268760914 823944802 182954725 967872727 137653873 679697782 323319472 491806697 57988666 406155906 245213170 480237512 201187692 558629036 449934616 514475542 388357818 652646767 812959380 842526050 62800393 740509226 264187026 592671545 449849059 758450521 102058402 692316498 334935153 566154419 908033049 982474596 296743664 461966719 918947963 963187714 580589375 613195653 945574414 950140217 966525075 994993070 948738018 980979200 221973576 569626494 416935374 676892697 14491337 454376373 119209644 545715196 554508235 639361001 147238177 529806063 572321855 733571640 711397614 974564384 248171175 718233574 147559681 761706806 786999455 857672862 726367173 859506265 837433287 862050599 271233723 862690010 879375877 993749856 230981929 463774241 238790165 923642571 498277227 731311224 750578655 872555921 32665239 168107039 37609062 909734859 836541675 997592549 950672839 988629352 707504161 932275277 102308571 715532108 521121798 638037331 906827615 910136636 424623464 937647796 545639560 804055096 293036444 362450909 822983379 861379303 254615751 727626637 31032284 748670041 484340987 697634266 567723166 950434769 477726339 609295799 803340533 931937204 818622430 868787415 76261812 103707823 2346612 171313064 819709499 857177319 586383187 590729851 371955036 396754042 536525861 922524145 69684205 564850437 834229120 875801656 146756988 507241421 937417575 955314553 699182321 753339702 52667343 737500488 6999368 788194752 276888445 858024440 328634603 742759475 433746610 531762329 307208215 369338967 753811301 905518036 70652700 187472574 875254605 890007329 267464986 459792449 671623442 818596786 156032409 762944164 57996768 499551373 118396800 298767356 356281158 723033448 231856210 737380969 927419866 984716357 299652426 608946780 703051243 989712031 627013407 847579124 425444130 855109615 514552910 698744420 257394388 859610002 214996879 852686048 656455492 658867171 610354779 671048672 705356331 797980178 475018698 841994755 587306497 833195947 599400930 828124071 508518951 509170853 748495458 751707590 95080235 828293324 602229034 926850488 431435131 473541738 660641733 711447363 350173937 897331422 655898606 769009140 946860669 974249869 106998456 924248170 448685867 773278318 141905691 612721895 499299585 749613669 350716837 607233630 496501512 541101398 374103331 918365677 265533743 420799833 910496614 936932284 468167795 519377375 406405009 752101850 355664369 733624799 132387677 700435219 987344562 991552565 325317247 964960252 926105130 964408437 431513237 958394872 232417577 957239328 641540203 659219269 67326058 574765444 649388843 800903220 418158126 771520121 527847145 585249279 134932459 625829959 907282503 938763264 956374508 961159204 206683335 302888292 235902150 507229301 693758643 931630191 303791067 893366277 324653351 876808667 228791721 611869997 201936415 544657437 389023331 830853818 980681285 993060021 473763723 785758584 190843191 417032506 462541958 996335822 398331049 932508845 333332158 717647966 845251767 884763373 743183143 815599083 240610151 785772472 685808081 770910801 974632035 996967879 510532340 585784479 287938499 652122086 533031001 828879840 911122749 919407347 887594849 923767491 954270645 973611071 691026838 997197860 290353341 686866091 683067608 733300694 35772667 597933991 21287553 321537718 774406337 948368157 503001081 707064275 49185768 974950103 952774833 961625024 50106124 575729882 733043564 929253846 439347708 453811811 144074920 255325554 594396622 837008620 882465209 959465706 642988427 766731836 837045692 920146418 215761115 642211472 268849228 340170483 710132990 953945309 407769276 742941189 291919491 461213545 937466639 996937866 419625761 963511750 484350421 485399449 675802254 702795216 926288512 987162624 775734554 989962501 477586516 733310327 414922303 913793913 845465664 975131077 730782858 975163788 923068790 927818107 327102525 802376945 449230869 989170365 154411164 668626949 327201546 568002961 95234634 382110122 828058006 845732324 244245883 277295929 693835814 728544544 885344829 927055874 384181584 842401627 782827494 866183691 921577360 970219584 177203874 618745823 309222171 509207704 857881218 873433461 245257095 571766409 243066437 683501870 993601242 997643209 501917163 792483310 228404915 594056219 718636031 773727456 459048501 838995760 435386877 641045218 942670956 958457039 995719808 998616850 105182260 656844349 902336053 910978313 863586213 894318030 904355213 977439612 46339524 946473728 129626055 481559994 177260357 446100794 677558374 936323712 240498636 709785918 828961059 917997250 995153276 995968576 92312645 637079313 104730313 650860864 253736718 818115901 72554249 281180194 256428058 913015424 390259573 600709476 298117395 708101765 879553925 933188774 400080575 528190216 324243334 718020555 803447984 988361785 610986421 734147565 20088258 991293403 400800433 968259716 817320555 855514612 496567312 758736775 679081441 683931515 395454385 490628405 75613683 738296934 390427399 551178745 651919766 942762891 725985869 846809736 345393078 442773782 994921459 996529843 596737300 703485554 460855244 615288437 515346524 580180650 373730223 899032475 695487232 953009869 146542836 830857447 720873834 736464065 580257837 637394371 12132234 192496912 389055611 703642608 792168442 966294027 554263388 688407548 197788602 647810505 718550511 923362121 163367276 164766579 639812981 739079994 539057784 678840042 943953740 977531451 159417847 275691782 939584169 998526139 561807901 599677473 915175972 939995368 936742924 963285001 167350986 697061840 491432295 881888196 220523129 970474843 394667326 667045896 550776935 621362996 604704365 674241514 798405057 854147089 86986298 651808628 337810192 528309620 887632410 998006617 262753215 462247470 8715065 822644865 586393862 870421062 884618178 988244162 98064007 971868556 429110338 632025845 489498920 966367425 286624358 624619985 176481531 639199935 556804012 800260785 184079695 725639489 697430041 924320976 747406861 884068358 347864048 853797736 192184406 309725412 479161089 689132518 861019475 861721131 121580630 271913740 501674747 869486778 497488427 612751641 910679436 951937105 957669524 989145248 47611736 623265370 277649438 357434317 992375560 997454455 778033801 799673255 613773997 984362645 274705240 422420396 511054414 882535927 293734865 878563525 253075425 558103209 979158912 995080429 102761208 355363127 37920226 618488458 279643998 657056467 688761224 808389075 302296273 531322305 787811381 814863891 564382440 627493657 41088640 180366173 754747516 814334757 772846812 795760000 700677241 864743472 487621812 960205815 815681599 868787889 347431471 782273141 463073899 947836933 304201237 833108192 287589551 555308568 446816408 701366952 771472981 964230571 172150946 508063935 857813296 887630399 630851431 638467965 29593971 776652606 337590957 931878693 567912734 896859301 805455334 861406288 628152410 880292407 282447691 852831798 90136571 351426903 2231774 915879615 872797719 967695296 402453337 497442654 671550550 698590771 866723008 886923223 797358328 911549957 824123524 955907943 674852760 904267838 627671810 718671308 53235302 724887548 537680379 624878196 949915383 974535141 403325872 445804690 203637114 898239539 319433124 393284156 293646391 605451051 815508175 985866897 363453095 698406493 628416913 746020854 58813639 273274008 622453354 898345056 797709207 902796680 106553602 727987794 132288669 317298887 745488132 752996372 985292269 986276360 799776325 951885785 394236125 888308177 799067233 926268193 35185517 539348254 386721933 563069184 524891351 807000676 587504866 593119800 414166424 817204428 210198791 340770204 808984051 973623552 992851024 997834266 456306963 870324400 677646450 733728623 702193622 812391324 357136409 418640414 695163253 928002145 494515944 691712026 195306665 444395894 260433403 376870640 540031345 656169619 994632981 996752073 683087226 847625725 959061713 980235562 289135544 711817607 367573464 444669102 139869298 589198323 259006499 525243723 682776014 876006240 850012761 878943190 55995783 790162085 863505569 880850338 261530901 678326718 771816001 962863014 751439121 814812535 724681536 827457309 574420608 613468309 356910628 673016042 46553492 725636404 581216282 801371073 933904482 944501822 291620631 315397929 927960706 938585758 388321723 984040489 601934761 921763433 982557288 997169763 523714646 704903186 900417522 941357006 92766549 897059995 922008057 924717870 872301594 986049886 83879522 648524990 928141962 937842443 77584293 987960755 919903934 941843302 42354507 123338065 884233902 964575937 253741312 950043706 457313300 598194612 917173035 965831545 779508180 926003129 219574743 921542042 513822858 546916774 758339162 918884427 211896304 365623618 427663764 453074413 741675298 995760068 67804015 245995356 125950823 183283279 372081955 465455258 484686232 927404120 98031295 768335937 707025786 906934684 592132224 741749723 44357624 806776706 194586651 538629959 276793655 845260775 791711432 800823422 312761188 794939534 12841837 850404592 713363937 841476890 368464114 620932631 680279190 961419807 684425946 870212970 485079978 798660706 227300455 359900353 669540528 808807053 648187505 710875883 130847984 969268823 97311128 317886586 812870986 855346791 828698470 897145416 153378179 453531271 456533775 921025765 69029877 426359004 68672116 181772945 122087460 169679194 521742422 920941847 812886037 820967495 868109394 978262732 647383573 657543160 508126168 557681419 495360985 975885921 133813431 376850747 536684272 708876421 61515875 916044065 246553223 643185275 983480675 994831654 145541048 796805415 384610468 639003369 708793827 774205714 613645366 833026207 213704464 869161837 335749909 541078948 268000291 886108079 370608225 583657123 417810397 419587622 911730457 944067732 2345475 179046260 540266424 764202226 331340497 473415437 195368105 257532425 967928455 974725474 788189562 903946126 848613315 955695025 361172199 662374681 638290473 866894110 666252675 705535053 821519961 825498106 771313926 927600319 243650805 494788038 828880052 893525751 42918723 248481333 855244344 886384379 320211373 424293901 428321385 904886607 542008033 985778555 792757493 848787167 885930206 903111904 494730951 530288445 940441044 959236571 506528535 934109747 309209359 444570451 534319274 562739241 386526809 614995898 349619373 381132948 425626465 984099835 174039643 223781343 48374061 755408681 704573525 951232091 590590327 610868237 759181041 842596226 883647589 993172568 852324237 855970006 178423770 311212268 152027101 418597005 335473518 736426496 598195844 978495179 66862859 366771334 655185880 826653500 619616630 789643130 870961281 947855886 266159401 574162356 632379474 809930388 892105767 940263255 640736755 985783663 770877921 888265552 213156828 908908110 687748284 936477671 180161459 217760098 724192318 959591467 197999314 794008453 212467142 508489474 632870346 802266105 975826055 984167376 245836789 430357590 531235593 804461515 526938357 996691375 499089960 912163965 773659351 986833990 846972595 897580735 521249596 595800848 25984995 997475809 351252189 475828285 31226179 249057673 780752695 957125438 814938102 835124145 215626913 372817017 769777281 772436837 127099844 774603413 633346268 971428934 529345479 627288550 558738036 765391191 665925096 945414186 578204262 988228552 823327493 841180857 88000931 630926149 543124455 725424783 133769619 833212747 232931333 326394153 600327566 931088045 305320632 732290203 184771184 585718831 809587545 993121897 610690638 629522274 126922415 733078745 12815010 508880594 623982734 769919632 450545461 627920168 237109441 966637692 365111744 945147643 85351869 621326014 304538896 422577678 821342929 974193768 683133692 768453690 802942992 998705649 416878811 858680830 398179556 710871063 908857488 976365636 8874651 827458841 237993315 415967678 88780232 513653382 604675411 820429361 260332652 791782025 745471172 873746757 288896126 981459339 974989646 990784109 952657190 988446959 743279982 762094143 752031710 872772104 403678697 667237359 720854802 764760532 836680751 959296616 216631354 758989843 496130151 512823325 205678308 572190443 667958781 681958208 125519386 883581710 72073442 191562545 89624572 383998777 44056285 205877729 880975591 983350422 37777037 533255381 150526936 867071887 471557507 665935576 256761883 513683025 420071994 474537279 21575678 311738471 396075615 999974821 402773434 774389294 79115164 296600207 721468586 974715117 300325034 334910508 56627927 881109006 924307182 935438599 804018857 808088670 400218915 813310329 240346608 646679829 270240418 423347557 194823401 194984833 247559793 786615419 754689862 799972477 899008863 939862141 306096532 855527323 83572579 532634204 604827030 617811660 690000614 735111738 128300009 155687224 370147702 548813796 970964650 993729878 798437498 979166434 345374589 705251556 275539886 714392554 437722166 581790244 771597319 864997755 196062877 921630603 925903458 978731068 375111149 723643197 528311390 613295533 802407299 857361603 934510631 997155034 230526592 349295560 488110333 639500330 38532311 805332484 913730561 923383042 65744591 747436609 419874196 901667678 70277681 302699988 430336665 435492885 287811525 368638524 25414646 534556684 578384491 773690565 166412475 798395267 112288451 418155233 270158122 308585610 312546483 583111145 791568634 793002050 535530687 780704617 792053643 824490362 259911582 348413692 766892528 901743948 244397691 484718891 51310825 653958226 351147579 703538027 501839460 706897085 798330492 862656479 868063761 907369885 231302647 331692784 184463667 353888311 891407891 900045367 470463027 621512699 859491513 939293429 536393544 939480315 171035133 717528044 227855521 409154965 529624607 899965412 592196193 790995709 22902340 792429473 66817921 121097489 260526930 945162654 773661368 932717797 905305319 995971933 635536865 714076974 335371290 960682704 889573219 913363621 867958955 973942537 980859395 996321847 76914626 604758004 497797658 777291228 213781414 276800229 667347480 898273860 400111454 482184152 955398444 998012441 992509786 996251234 993878722 994444747 579201199 942716423 499975039 853706249 728331735 796590739 610284986 647735731 319054979 690782634 329632159 955269426 121563147 676239794 23904245 968398417 38387858 855336779 838072438 866013144 137727052 749143001 15934487 257299958 212924894 305130214 955456941 955863741 15284567 355685726 969837930 981956172 156656723 456039668 121154996 434791070 371005289 655755383 551278502 749256781 332328344 884497661 587890277 965472643 139391225 675943017 314174039 919186784 999658076 999948998 96488509 655754855 754062583 797675967 997954229 999848955 836547898 837768216 490527248 876922408 533393369 948133119 737494981 945894648 941487198 961250996 216660998 985048691 588490388 596201441 461087422 607756994 858403307 962702355 115710594 163911440 502405231 809552691 117429313 133149655 215837356 523763728 520206035 896802745 294290384 348753419 634356507 895658197 335387296 840955859 605009803 690464123 661433886 903722104 818011080 959976868 660676032 761342839 813645082 953627593 466872285 594618176 831771925 845946457 816175542 838598071 310170093 452925410 221947342 967111434 629982942 714562802 66694270 642852843 874530226 988949842 994526675 996435362 927709235 942076581 526904361 989023571 955414707 978300538 138294390 600047009 920691413 960886597 992548077 993555703 406568925 775504094 516833973 880881708 683977991 740138088 284160219 532385447 487421642 503368846 926327386 944093260 854420076 948602236 879422961 887359500 223954736 381199641 345316186 795465215 264356700 721402967 491576297 941660814 639987958 689051959 884516338 917705637 690859358 697658669 868883374 913556434 961993539 984000533 391120881 707569398 76753237 939258936 184880927 950237930 298806570 407154819 328462267 353122145 277115402 767922294 233489014 413735155 546423803 595127519 978462030 985130887 112726072 723783200 171527741 672124197 293769866 894127207 652107156 980066115 588892818 989663626 428329922 433051300 695095508 901883035 218095643 435666408 716256287 746259338 961949114 970000813 953556310 979444616 64269860 835849137 88226931 770806002 395962786 875550238 819251538 920435465 432719970 830332096 552604643 705696758 292140855 324408370 47676986 803045105 561352559 906930747 662308500 888498713 725256791 847187124 891085144 997783166 350316208 689774092 916650351 970499092 647266090 973288325 806237686 844313888 501731543 826697076 74235167 960617601 223139113 654704080 900328489 987397722 140908813 638434490 314292741 495292969 606250749 765917061 877001225 950779488 788049327 919104430 702170580 749612547 142496061 900959475 180186751 340859011 438692937 444283487 73257506 361891512 80126215 867280236 405524673 423462053 566855698 912879068 919153816 943171863 899125128 960978611 350967030 958977267 892348781 976602677 503884175 704805316 454529449 999335438 644158973 958124871 135134602 532185280 666381741 741816628 545682464 985022338 604253106 717483885 856369936 926353093 199396243 617671033 209280871 810984063 731112506 735640117 171976178 349694623 175444056 257114109 821926124 911380293 2535488 199333854 438030118 647110819 867075956 879934215 499299739 627249463 435834505 703478372 370714273 838835439 315246036 383109764 381040104 983323836 560674283 930366314 482248177 657859201 50913186 826573192 343186792 585882292 706332297 782306394 997312727 997670921 810678565 842230551 171331991 247146232 966488099 975551238 782596698 912818119 578520162 845521870 528378104 569934857 953175014 973493885 114814353 959375955 14492490 959567197 251418811 575266139 419059226 753553904 654110485 666295553 992860849 996732960 51304559 946055087 641646187 930199445 234942411 551610632 439478044 636365244 348875217 891265720 890169961 943415066 969414646 996095978 497781476 655627961 43855204 495818113 707125639 787235504 172709824 784265924 751429499 990998834 515669124 588833804 312120679 875413586 534943614 900494400 257525304 356954760 494271677 998897452 984818175 994173206 987699314 998014045 721101538 772118647 328314212 796049602 551595094 879056056 739182087 762851579 391976498 556187141 662902796 904301738 140310223 592454440 889744477 982491011 132025583 289702062 130515151 968752298 480027769 633690707 727006698 838068665 877714858 940090879 848365123 935779561 450097816 504542638 641171096 905146570 867902253 868347076 999951908 999969613 520363815 583515836 23550393 560799636 924851742 988305624 543565762 700231090 627563615 756028753 703983623 857952249 870808618 971154484 832477847 912888223 553553171 754719597 390639981 970118409 357187431 549383216 342483121 694986188 972972428 998905836 451686383 603500796 371017200 542984649 546253365 663298220 454034162 968576932 386533678 954605309 191014438 805395198 835659329 950460272 988364476 996876866 871728494 932817571 560960843 583539606 77896862 212980331 458554692 659230941 458959756 948759730 297205017 975276422 270647232 626626847 635233436 867787477 30115716 979644560 36295320 987695066 587338481 597478319 695404911 864786820 396711752 933532124 687434864 840638451 24568618 34741505 816803499 982027143 831763095 963703695 749109809 970631026 237638304 905997976 142474342 392932652 805871913 962352749 337103922 437292282 428590614 722849267 909063969 962094718 783982510 921438564 241367600 489913706 833032727 884187059 517268291 790938270 7350907 891976789 409011679 782417638 326871253 331569200 746034784 879537149 289734621 894219537 720192445 930080453 761593649 921476842 262854398 736617834 857044058 917470625 572863934 779888839 773302750 903728325 754464095 818494283 935051521 944325827 108475866 731218643 46127603 860357126 740791322 912514529 15768284 914856345 846839591 870559935 57304877 992448027 664321218 694488680 667671432 962117355 380150318 836374593 696290349 943055123 353965578 568116473 718227035 740357659 721173143 834933613 844079755 879878028 741233108 782003888 52609178 309013007 750115965 942383744 289448667 730412485 902383458 980906778 821950486 874224875 36726688 195963683 218557540 401516530 636840198 910428376 829036269 944593273 876969035 982874406 138682901 912242221 521380858 682359459 439166258 496101832 778676042 803917297 761399423 801271560 601576734 756352224 638180064 726769970 851274155 887613425 65646486 765945039 640502325 981500297 267091337 767653364 366808711 586505219 460601927 830643203 959563636 995366165 403951436 681358809 913768633 970984479 216338818 477097028 352685310 585700932 47275776 181333191 609761352 960517900 911717017 916397504 261100638 832315624 344760853 634245619 159074378 222876983 101432446 252832269 201524159 490833445 276033517 471664742 919309828 956403093 710830539 855022540 721958916 832786846 347002945 903383278 34564866 395505284 161455995 999846896 757081346 946848553 295934429 769418787 221814834 635065430 986584272 995536354 900287685 992567656 12319915 921181635 388565853 491521437 211072185 925239946 696080392 930177052 782349536 980911809 823717899 843400409 591690774 849287517 978344886 986919449 930782465 985406707 291306484 910841570 477640016 951453054 222302367 364779937 281847101 732225235 527132389 925100482 476992399 746443711 600492716 905738432 324517288 765260584 273090285 634484640 245583953 775710339 671603156 767063241 683638046 781314040 410657407 856967252 869019238 902872931 754277927 904253674 61133971 151673495 951048947 956660164 656015730 674804470 727265803 928018657 916623675 943669705 652264727 970940029 735421465 830443779 40556517 244727517 260989816 581342732 490607818 858813836 463955534 779581820 685752581 733373300 170443044 834004442 169354047 587555020 565722578 691605824 725779557 956528638 527049296 692758474 529383454 858923737 392164446 927418889 494834521 928501371 505303639 785560842 893171040 933562469 815646283 922690104 726042644 851340939 852856183 873696258 621486666 947247458 987397228 990712677 904609172 927447572 956135666 991183485 509156271 620237269 972720865 991951836 237358894 711145779 656535763 974569525 259353831 343854101 295045658 322155344 976579142 979852737 736401595 970880504 649782160 948516845 238529462 814630255 178618639 750793969 831413105 841142524 787135484 978605364 742584415 957285036 234211933 850395289 748237573 920208832 677270322 810660277 683948386 778701985 413729442 934414552 852398775 941979547 974643245 978319768 932458127 977755687 728822583 885544022 604321568 899192594 367047935 717244436 257637799 732813969 618122406 974358690 620070850 965204673 829155037 834565859 711029919 927965843 226541058 437649147 486835848 732429035 722700439 786327604 242366519 452231548 134800718 932424913 411175989 687569955 305090692 546710496 122203317 705440298 544343546 881268054 814412799 863182969 615438253 665248366 787146769 986930523 412619164 873255051 44020697 594775643 746104354 987337773 614611627 684850959 309559194 855884028 853487879 957519526 90623315 164209859 541998544 547732318 634334974 641772456 490904692 547878190 765283598 879835522 584705131 797037040 722752515 999021298 821286647 996316716 524069201 588930318 541521876 591817055 432727974 617203177 948249735 998277788 459455624 794257373 75552841 939909072 90812858 223649696 425485838 886157819 687111425 739986381 487690856 839452372 716818009 934107094 953895367 988681573 454961278 707065661 376252895 977698516 743689648 851296448 245129669 717855732 164270810 823780371 1613905 878453252 212232015 843147344 789323759 846856260 896708259 960929320 72552808 451911881 142409355 873681612 113949562 343332215 328367317 476666865 161977796 712740865 828516845 856087628 722304918 811068589 130069342 704957617 992290587 995872360 120693992 342526549 226247452 573268315 553671441 867074300 178912524 975281722 353202472 822327380 878252439 997521562 989956151 992423714 127595017 775852319 40431267 722185090 199418386 372717868 175286796 977834582 30777891 817145863 389934303 779420231 719020466 799007601 585970892 805474795 529548655 999120278 709562418 779202080 942965263 968969239 277219265 288371646 879527087 936136913 201444383 243374525 465766822 689514794 306723801 715262718 823061000 890215587 735968866 846538866 546703624 600702644 999516257 999995911 508896294 576456147 513737539 871862885 19462278 840684318 227074539 280492099 581866744 870397009 638923577 843150763 641677895 835455054 960267522 994604777 514133052 554426146 786365391 863094203 150712393 981038648 553936955 741168885 701453219 711495952 111820860 960455072 992803383 993761925 801465903 805791503 164669415 296127394 118305304 547228340 397908822 951807867 770471204 865179608 842917517 862866682 47272494 319099377 116695403 272378553 578538598 701783725 516339525 752144725 299284981 524172591 292743564 615725077 93413443 318735039 79210000 691453961 520245000 732434201 52309226 554024935 562161322 672182024 480626753 614247109 709993556 998966535 368574991 986275215 108314665 641203640 133060905 875670510 97406823 520253745 979594445 986107581 464244714 847299188 593444105 963268713 452854494 757972617 871103657 884808556 898730655 928581160 786767843 869825918 205885770 541400086 105094106 289850755 501456708 975397749 798399542 920197978 841561065 914148569 290866589 870400921 83918351 432328211 146679447 635174311 391849134 955034817 660537391 701061153 528160748 723798232 751500582 832068618 940669693 966088993 133114585 144210729 214475030 851029950 473985622 847180572 612356700 837141130 767298966 837853395 663008419 892901710 284536339 379337943 133263846 191743819 987255791 998568324 196552459 849149609 637549690 790340247 137194500 396363584 27976662 676444889 424444899 622244820 474980517 748230656 352089515 508969966 280693029 288253058 158660116 475643119 227956190 754776717 617294725 918700068 992533488 998466709 523055653 910023109 238022316 361222479 79646787 685059346 304277815 803120532 816915246 950196831 880157946 925958574 767521263 885914026 819202870 892217097 102896363 213916542 191094394 511430551 545884850 686399515 393649138 955458044 489764559 890517128 655669620 760312144 257529937 357180105 969463396 972032962 161441011 907286258 5797579 950322501 799326128 895389883 229310753 735785187 983504293 997433056 501415210 615690909 140472953 371642218 708317273 994197663 775954260 994028470 793313493 914227180 937014153 949604067 625766089 880950651 88047115 989566814 761566717 926480687 79847905 869251923 35159861 539583573 385843057 834627918 627159701 894094892 247098441 555505506 899079374 995449725 82473851 168678445 608839501 652952788 382753206 831267848 134341115 983327124 377232882 818236699 472402585 951626720 621153288 999177522 653637831 849073075 794273660 965352749 989118665 993492964 340522257 929498157 949530665 964497083 571171301 593493132 371237157 828024977 406413748 821230278 622907812 922055788 481956822 916190942 834270685 960072118 723887665 741929674 924046584 996823129 770532495 911770943 633302424 997787882 101630540 519121420 676229592 937846197 285150414 887936903 688506899 693514515 472917649 710791279 599621464 823149100 768557764 939851940 662794034 762971917 402265187 718963558 828617036 999230968 751102391 794577753 846746864 970478729 57801097 377511933 491424194 986395214 992817414 998551470 675203768 867214023 660202841 716257431 97778119 901369069 783046484 939437710 456423254 538147335 487480943 876599540 817109890 844477801 862674172 874924126 260493208 653805651 492331304 584072585 90680693 411025863 33046761 246084237 729821240 934396501 143268464 691832131 821898248 997108362 191536352 908143409 479150523 721486452 22989496 288961446 942230219 960478917 701091838 897020120 541207748 818328089 212808537 429843379 372503051 675089621 578002908 937244027 482235291 628605092 955134656 963779289 37093665 731703340 296457701 868499312 500389051 791440010 619633635 911788069 708187589 711418549 640104919 793368489 661049198 889865024 470144145 642506491 892902287 928531777 722743442 923282752 401009254 539032642 698761193 967892670 365668342 585935998 503131372 757036509 625188034 771607860 914386017 939665737 923000958 946326651 687640936 732684325 86988232 915861579 86532843 592064199 215025484 255539825 431409451 731039920 876895271 974012105 573611169 918041290 140785676 508819578 898015066 983724823 199169032 996977784 359187406 390800069 773874608 940263740 707353911 867196264 869578230 945380762 1415027 515796291 580673648 929563204 18494237 26675693 381099153 426178366 291098472 310078887 107534320 477625865 287402135 790331792 968755295 972684290 359824666 631293287 80040870 804892755 728671129 984179374 563885575 869897064 847014613 949356578 854696129 933946692 471208608 707016218 896776148 904658113 942097743 952778052 560875878 883285086 908207754 995298684 340651439 745925194 413778193 885706108 805088963 852863218 204276801 582102535 990309292 993769339 346531950 826800452 791742761 861486792 80247350 789209957 782666799 907934088 285586950 830371159 822557138 844441721 692713129 790687014 994116346 997009507 455058507 858536622 20148577 274222701 956222315 998778838 176217963 935135857 209715070 844214082 568274686 955894009 51146666 129585024 483105151 795676100 208202831 254981150 790878071 889486255 692768712 981208764 646034681 927585256 977205418 998857773 791879146 926852486 109486166 566467708 958257436 993015374 923592311 970692016 53144729 245211215 483490641 996670341 320805096 739924706 86977651 667006718 452032899 620733448 202861851 916308138 491586371 901646463 523646705 613683164 859347414 895565478 653911584 684570375 27889299 348908376 822949057 889719180 9109492 454763475 649099404 891505353 822430756 911018223 912819789 981940014 977144932 994042451 607669829 791065166 376941167 960434928 319102784 403572089 467049988 749028962 774926778 907470844 930586584 976665495 943338632 948833295 173383500 371924914 288724348 537734007 420155797 941384321 626336536 739553913 436816178 450728038 91527336 384835228 511786376 842105347 921783819 924104997 646496075 919464054 550548278 924665542 64485151 180286988 984434263 989993738 772153105 818272369 140384394 659118255 941014538 977689113 870761791 878830276 545816866 929272516 724944268 842473352 946466997 985501128 503955884 720573110 623720904 736401478 365520727 543045767 205126659 294238934 899738720 948808508 113216844 560786196 266504125 285614040 996928636 997367774 568825409 634974779 260426331 599479946 353920512 869627132 920352041 984379232 101846402 265258646 18962794 732648382 649152406 790140063 243161559 470237919 947204210 970338798 575914182 975653284 988536299 990217538 101628833 984296067 406500777 776777288 222410716 337841008 64089456 634646688 153520399 666159670 613487039 848921307 993044522 994911171 182831482 472638651 338515284 633580471 374977164 913562423 877148247 948630467 752829978 870801699 433293824 763063969 595379453 711688719 90645776 574551740 211379547 376813337 793742481 882048879 323439033 999368546 584198521 735418614 527882714 925536507 147326348 514980637 525389893 574269386 269834229 587901335 439096386 601413123 516114808 819811556 702421898 989425325 851099429 908840580 647927461 869478902 655434053 871290072 899571601 957437852 643318018 712535482 363204262 380803943 626318697 785136087 991362278 996633331 611497013 628893449 832420674 889589145 617656055 684254967 588655113 918057164 420066193 455922405 156115341 877012254 979009792 990909189 288783034 520325333 671662527 821051458 43344916 963616086 435992481 991833658 375960479 472400943 714322815 963019729 81545943 868794244 797653842 986959140 337767753 869064798 75970712 753402498 143591477 457558869 520638342 791216915 655775652 846879599 10367109 877534506 564535517 879174282 31571009 823590058 511061070 750010618 955181207 994917100 251642603 585910684 957860513 986719702 33799536 539034729 195613535 547138564 709433167 901427711 275402244 334069042 662051309 823215845 665765075 868005898 266136896 642073961 342649425 743106257 290699013 683286503 236607093 274185754 611145263 758440164 55514154 684833081 399199864 430377346 659083507 970762955 941338399 986729948 736437383 798275690 624682984 627488498 217232781 585721891 122675469 511676581 773148342 874715205 39265964 324699637 396580017 991739188 422988800 680786217 69442731 720931598 741835298 759836383 807115746 958967513 397888545 443685568 685464607 957770410 194522922 583979855 339212803 567417417 545231938 811299752 877337420 959008491 436724437 526374668 93959805 932666462 348312422 546889832 258689592 465324819 413425558 878228211 901171887 942340294 616918251 767607031 974865381 999993160 326231284 942459634 478369827 596489975 601885833 614862033 563095154 967774096 628381801 864756569 398000722 489895007 737370571 991237001 188718343 624811075 342965340 883673442 26547000 33381342 460582337 989403446 220336411 665849512 36019032 143912317 685814169 873799694 221728455 413972739 476277217 543701892 535149756 941809620 742231347 803158743 326601227 609897125 67699538 686001214 226253078 673741616 582366697 676090625 650278706 691763923 710339203 992567483 609986893 856987933 752521055 987596774 769565306 944026033 160247225 284608656 666241879 805293826 573005551 573463800 305423724 930467803 292877578 789109862 648951957 726611131 733308338 749912070 511885740 919147937 394281908 647501129 486593119 562689884 295050828 299955289 494016136 940547470 885729607 979777896 675513380 922685988 928114076 954936305 659650727 665930927 26826172 328520068 457598769 617973515 783739124 944389218 149279805 871563052 620523956 851158748 642106282 808622449 569850384 589930278 339643125 409209603 368972423 805802309 52779042 808501986 297812058 406706172 504623119 876752116 787707261 950799060 940282764 946077513 904943584 952872229 616634504 715044659 457818122 536023808 929009921 972882463 74273849 399762145 38049820 434269851 844773309 851500912 608522998 909826556 623366636 775637059 296404031 852888305 372539746 950682103 369181933 900383679 477156159 641944330 386063821 866250972 906925509 931550295 618809491 857265312 711236357 799341531 634999568 655637187 90129893 374616022 692725807 975497746 859161355 981478982 83387292 194037316 904356450 915190284 511023933 864929157 70741401 647193439 267938993 285851896 75287662 577185244 465131515 923879095 537354161 636545736 829347612 840135870 323259474 695157331 24029581 865472075 954930904 959708861 187421405 998719955 294356955 438744645 718690289 792103151 350934027 856577101 550635085 612102406 325105843 447647892 870134514 901016059 557736702 566780952 369816289 885346643 93496478 321334504 264696567 477995685 511022465 723567536 93117068 454837360 791366034 834700966 339236543 350250090 958962716 972749573 156128602 438613422 230967684 279123883 53371133 713421319 672541640 779617149 973161016 981423312 486669251 583329235 725493865 954225173 866787975 904705130 637869336 943542211 730701854 895224909 569966683 938162429 78359690 669268389 349619736 705665261 229040933 759894246 568042286 914171271 78941112 886719072 727671821 750768770 782984890 793622074 459265648 697664014 795810472 942403527 230219760 439353976 402396460 668792837 332442359 654659571 186499698 303648317 716511561 903735898 283656729 302114791 706104607 764793089 818092193 950509734 770256694 801579260 96543008 400559487 296752578 454294699 661133371 964218508 84925657 778267300 301030566 321978868 297782421 901091837 614381477 677245713 747825052 906804221 278699694 404295225 825284963 953546479 362554929 851557766 846354754 869756563 435893957 903420350 903032670 985689840 304328638 340884882 768256143 902659005 171534361 454582802 133814036 695963055 279991495 779688701 707923761 808852864 5661389 825712496 608739794 666857106 995689669 996478045 149922736 529835064 145588309 933744285 857310042 982025647 105378286 373273829 190518555 556056372 383933262 789186823 331533208 508872959 610254881 765809428 506795141 786367534 478963272 790964069 103486239 478847119 149979428 981761651 19404569 417439815 472332650 772299223 921635692 956396527 422063403 699351166 241932278 511399356 930338047 988931864 163834028 905398614 237264500 532797372 965201602 968218132 75262530 374959386 792679341 801164488 46561520 537171531 218678091 893488216 120695267 352776202 129657178 131112402 195661196 559428093 696669087 766368352 109686293 175490411 237602636 814379939 650332228 796858769 743972573 873658208 748700057 749782856 289532860 944807577 818034909 824134045 145680015 457042269 693954916 851034361 234091683 266790081 717480775 926520982 64639340 903893869 395180241 567001350 119127480 541635689 364530251 944052612 488468654 629981393 93596964 688596863 407227849 635009632 730230167 734581145 154794625 394965828 354974796 771254035 509650137 868260776 578779250 783613474 882941180 896456851 915696592 930782101 388157002 907653133 641106257 972777753 587367179 678732701 272205341 978983109 352850383 762460418 217503021 759043651 638194588 824713444 356504512 920668342 909612894 961863533 694248158 998953316 814249602 934080772 227417833 564152667 23235307 149268577 157342624 403803750 70969530 278888105 218265799 420131186 689483376 800940418 145208505 331757155 246576714 651756706 868399718 934917094 103418811 180854281 579515078 721543994 480137660 657137467 448234907 647095578 901035460 959069903 431406026 549501311 381041273 442568891 162524843 422095556 422902418 536630568 657075822 896292563 232936499 385537815 357928006 491937454 855675284 936233258 719559214 902792250 950671450 974749238 895604316 990197176 149324972 176893573 829952943 950893228 57701732 951542383 393023953 979506598 777026651 925478819 837544915 936115606 229873505 922206229 506560532 894177473 90925220 984767189 50647358 479534620 693548755 806897156 572237459 923412130 373746576 813924505 527691030 692633443 924492550 927771507 578716082 757510455 753256116 948016723 563452584 630291345 720869930 921727734 74782163 268271070 361388676 581775753 457358839 585413858 725387478 945743835 537278334 643206466 395966738 786590589 516612852 842453424 545607692 932440151 205704360 226309263 853322980 951767000 600020355 622121629 679315216 978793277 285697480 651279644 448071421 717430872 527031821 889170094 194042712 293013271 795462961 925590196 259427317 994147696 251059711 561875673 987164781 996939521 402359058 772671359 508883347 806697316 924082814 954490329 910413671 915676322 508565920 632735710 31473288 616903565 754581462 883816843 528204864 888917476 514982280 711581206 224029346 568119495 753469132 872178381 389153121 541240199 607499603 721357955 361125980 684464815 672453486 992635533 998092931 999800258 908001814 962708146 366865832 577011289 314389494 790451312 524018601 995750102 741565775 759247475 11231386 186258457 222173848 726746014 624841570 726840934 299541688 564767568 127063544 440302232 617069045 892527465 293134112 497666940 394513867 624413389 711035155 759105935 912054374 957360206 382077047 763638839 83187320 864551080 46588868 750060099 206525496 256369450 405828815 672417242 82415813 141772515 817419352 923302404 819618014 852010539 89348632 769082656 463942613 503019099 675227524 701225490 834890587 966222464 909439094 947256740 816999846 825946199 793659598 873585953 643730040 705168623 665254280 708614702 460995074 516062600 75699095 761483840 367219852 778946457 450613217 855032090 738194082 815591244 506570582 978398078 917926634 949467640 474474970 606544469 821626357 931551439 319953673 410997206 28777168 315986995 613626495 767598011 688254098 723904140 570183768 766586128 917094824 954068435 807949226 876230240 893027616 934810573 441737275 630074722 418451941 936216318 981635026 998350895 259473850 553315227 596449968 859512341 163948812 564577906 234502556 860013383 966725309 969534620 357192387 777749571 60358076 307265570 640273589 999427070 945182795 961968600 451969557 962919027 344414405 877045466 243841025 681416840 782890719 804318319 396410690 855462564 861364589 959230738 860700209 980154135 944527178 990373750 286822260 296597850 135360749 331226699 579121608 808980769 129290421 181156604 12161356 854376397 283477488 923591428 80719223 698089678 807764737 821638225 45703772 285592391 473321092 592798699 91586014 671403292 636305580 711641208 562520713 772436498 672397645 886879508 424399302 515090235 99708466 718285573 206985257 864686039 166132955 417729112 737862769 924503871 802520408 868719275 334126950 522916066 966663583 971940809 286761967 752738437 114860647 549755933 827026994 897669759 904442564 981254075 870165980 884629991 295696941 749799322 250054141 275252934 399515631 731686885 15786530 184164870 817883827 921874489 66250856 454506269 783611434 910257742 118741362 687363216 54840818 353976882 49344354 845614195 38044402 406459108 291565198 975057788 894017668 898909634 436044179 862620245 956999505 973149162 609587480 661331887 95189457 448725523 811571429 837436286 294767353 902690751 409643167 547944076 847997819 862281351 995919326 998282736 781347963 978885017 223110296 797065001 130186759 484719300 146002883 642206039 560299986 773481901 97305199 811760228 708790429 737083723 999387164 999719914 626009308 651797626 262573032 395236425 554491192 562055302 428592741 609836371 189265307 869240448 854628209 961108446 358585621 435145879 285406448 331517014 41812910 881574857 774193263 939837094 154183424 493355369 168665261 257132800 336168329 449361170 264062291 580431545 529204728 900711849 824339303 863696269 910316204 962354736 218293280 821769783 491865297 954955671 401240170 986617246 967741964 993064745 552262107 972553076 135458562 680588071 562124563 867525223 252403145 297928829 365477342 533669561 366243369 927082033 512747970 979865944 612640208 746587047 126605001 761453480 597776990 775501552 136989301 832703123 570504680 799121773 64747536 85622600 325266724 653968503 294596137 724394722 645376563 794649156 806395524 852120046 14921932 867580215 514673835 854170498 550649416 832899457 650228061 670492495 571569930 972511542 743553594 872248274 459035575 476733785 768195575 866165194 391739180 643707831 230943616 575694943 347721889 680967945 412520575 698465815 543726383 809796237 879333193 937426108 55063712 755300517 624091671 969069025 373676184 398964422 573083850 652596211 40804908 442580077 539319934 961334659 256946575 728765989 331132974 497063940 743194940 874524791 153948308 329293883 220962689 529483238 675171326 697330467 530247687 711939867 438010508 532397984 940156432 992589272 785267533 999871675 492918742 603516361 69575052 722045590 394527561 470197338 439979477 802064529 36453353 474839335 828964158 932206231 625075582 641578990 828764544 844379025 733031539 890015485 728396748 897025077 757528945 791292328 844724380 848318448 15322566 31452873 847524222 894488343 671260113 935957544 568508019 981604360 941494488 992058594 888521549 904811932 679195389 925117922 991479037 995784328 197143326 995655952 916352040 979865110 863590515 992598861 40815983 355450106 85509599 704766916 894822324 996073045 925992826 963838711 459871497 537706625 826979136 896888165 640721842 713520024 474455042 946033027 757494549 950019854 616508623 808081851 730742597 918994038 248595926 997849524 703280793 978649948 893083767 939761604 845734390 875816028 940166366 974352600 526281691 580515909 975791766 995397699 156083959 377213318 904858927 951567901 377488856 563299364 92087737 764392238 365046051 948708763 234351115 581689376 873520663 996563277 331000298 818913776 185018181 497433468 536430492 824272485 778225560 895975888 778626921 789504809 109231324 749262645 266059995 414661800 494102489 703854962 208879739 934973046 445672523 898671988 519495845 807922678 380818805 458406689 783685230 894542401 489686888 997135736 782848728 912720695 922565780 951422538 988125712 993163406 638059332 891440739 481397251 928508781 265860930 568384806 788254929 814149348 926315436 963163280 354212382 912974206 756158785 952244157 244077898 424946355 44052981 445941123 314184716 704087590 186582033 367878337 878221771 963328051 4790872 302733245 441055602 654120863 275309924 779532472 531730082 765404401 878285345 989183568 640462612 982309620 696733086 997109497 121690052 881452867 913760266 948561828 238277485 391167181 5222152 106203874 230368605 645332184 128855979 795274292 3244463 754817725 471799143 848181673 509340949 509630942 277210027 926505476 736863896 865893447 636919435 664232015 961738960 977281675 536267047 572372752 305152670 859596188 863754619 933821948 750862424 871556276 551323753 906361429 29746800 903568100 606067393 619731873 473550157 719960795 446592178 699196435 674848098 829382934 576589872 769706298 337776867 440607475 143040830 534336634 953504233 985312704 232021353 723379898 667790079 909890520 204967104 809782369 965256680 980742620 235043380 616424915 668106220 783273902 585551019 848323629 309406701 754229647 121327770 983721342 641996525 806907789 419347519 636949464 201169744 359700275 130992592 739224336 735478570 810803520 814644176 826111710 116859344 666516541 924026525 961706009 562911497 667281808 499329003 675135997 563915679 702280271 278643819 691439204 161282160 588988576 236883454 850870321 801803077 954742526 788004623 939321856 491202099 832380584 256044151 683625835 728710229 795410485 927882758 992158406 614168520 895914127 420718808 460493441 920543721 943508691 902877364 995338969 859418995 938167710 798176755 866956388 353487784 496748891 679930937 735025283 275765232 659166570 395312203 430625762 100465499 808565599 571288223 962562126 369500189 450981853 831750125 904153855 363453312 539434309 467206265 590467133 879240138 975070031 695759857 698869899 942631536 966903816 949598307 955279543 311121433 684513698 172404468 736350332 405083898 748795196 462667405 733679684 935962266 978609798 677141287 790084683 40675507 629832128 999164336 999504362 790498268 974286490 825627700 914805891 981204763 989769983 492624099 730624374 704149003 760762713 544658247 812126056 869302020 928750747 12184249 636077708 559917388 664289569 917117525 918553843 668207443 839542966 754844093 830540644 718184872 757862634 709163373 800083830 515639535 783077174 365681626 875095183 739000185 830538597 148488404 510276571 195605302 351543711 223439725 639876368 451198299 913073678 265931763 825744722 122194335 445274354 868420762 888931630 559745039 656724367 834203601 834328100 398877260 501872403 789306442 849301751 791971439 867799283 243902838 530937044 425152627 602244600 143331447 619606034 753443564 846778485 11572908 46575108 469322540 575687005 75877647 520467995 46643576 256822888 876227815 932007565 970993885 994728948 850618878 852241035 393067525 957503204 99912216 525316063 125553961 508302473 804157987 870966478 479243114 941461605 732503691 811484258 990845037 995927281 332945692 794539286 628758322 987753321 25058243 981924479 529601949 755700282 235921074 466017779 712006447 959274611 669378436 683336027 447900654 548989872 994867050 998339900 886314239 972312209 957273496 999723785 299841901 695537271 68689542 270795243 169254159 372892045 64931364 647627186 966543406 987288850 108900135 216097445 646531229 978543430 883757591 894662106 884284038 936906924 615228773 995772341 577484924 949686048 10517271 419895578 461769052 968527296 846182180 977950630 507196991 856861281 328104949 838563090 498499715 570236752 781562793 792334887 44165599 827858457 168646378 824930357 741659548 784327251 864281309 935109379 138141642 957685228 3167865 182941298 425931949 479547803 83590496 634527353 778050241 935394481 953618965 979309555 843630449 920601537 865056358 878170195 694150501 995621873 224605860 707854690 921990451 994185428 225937285 505835013 743614166 952591755 514040634 664028338 988225541 992914975 358886804 798918208 286201164 988694074 581662406 992153552 924813 97639041 898815123 910183892 57027361 471070608 81725895 204591183 833513928 990995638 744664641 756602856 960451323 999808693 915174486 955756185 287634885 904812353 341083714 735753412 277401592 454787078 469467623 880578622 833642171 912842144 149865943 261370496 235888183 265015619 291732821 801644259 937994234 942912253 558401248 746427155 8974726 307906838 750574022 927592047 735465756 894877983 351014514 666674162 28699581 858193386 943449912 946185218 423857988 713552281 76231620 827555757 889588595 964225253 790587761 988995590 946041885 952482148 686837944 717401237 864964820 895258613 181115114 892542501 913480317 954716654 843982559 970116079 228454713 301355762 147760014 576421160 260341548 361632674 797224955 830037212 935404159 996960273 254044754 410599025 794560479 854375549 507999334 887674891 179476586 967521592 348281177 894462431 46143153 309208442 556472641 857125321 497482237 944211971 367992506 677074289 625650548 953204009 126258054 722129589 862770693 954517769 338005374 503878242 30611407 634279889 201326394 634833162 556012503 990543294 647635332 798559099 302464597 839743369 281690066 584598916 211818104 963353511 307703113 785341027 710456376 901770695 354604254 945162099 303992584 750368315 919065796 951142189 94042073 728933393 963324114 998861548 371575666 563795172 576946585 991635635 675459512 959717106 774402003 822318499 872381506 982665486 688070303 779407912 308949639 772489719 745310177 883531426 144982400 893772285 570097891 737476077 64241157 867888166 6441335 296771710 825466310 878387583 933102015 965673275 711142375 896295251 379013152 874526330 466514678 869098373 801233113 806913830 476884011 897911159 934047279 987415522 526576916 900706833 344971839 560687574 919403482 923555645 736102830 866863507 430192634 877099199 501314963 773376858 665147717 686534655 53773028 148754010 34007678 154945880 127534140 597279205 947079776 990119459 877261056 898273477 693118201 812249385 785068329 817505023 397055143 532493894 18341857 230637016 952938774 986562614 506150323 972690942 18150415 319290246 554094392 814933828 915229287 940839009 740379505 867840328 235926253 625447538 322142723 667268452 525247846 745590335 468193764 794818993 889063632 898564278 667390338 916743466 569231044 728030071 188890430 408368546 418050370 604032078 382175425 718457081 670265670 896214082 781861108 786445207 129184312 485539721 268036901 631627364 594087223 981782604 554268214 988986758 812187136 921217028 674732794 732269102 256201760 985372543 62211342 152472208 932692318 990969079 986984523 998929200 36561437 309830303 268652911 762916902 186044952 975369766 432935783 587472759 871660048 940671173 927515596 998954617 40196672 927564929 953665094 966408850 812292728 894770759 142434148 928539575 259461431 376463948 514914756 895242734 610063909 965143965 429658716 880317363 79142349 899065967 486922793 689898877 357176488 855287297 163568491 355733350 33543978 235756267 129169213 612504254 441569572 636839476 827968624 829167492 522683468 614152766 245827693 666859225 512926811 591697126 74103956 866204215 366347532 649487152 261731581 917762824 860898805 992255117 991952223 993580731 656862800 894302009 570744564 805734472 245885762 773032014 463385548 706092583 241627487 412512414 4428850 266345258 815280391 925110918 63259139 820008142 164566384 254046018 391365377 849911507 64456537 622638063 697922444 793909609 402727237 490701683 784397142 938864486 799946814 860700362 514692963 988123234 278452464 624947129 421728518 666145806 298370855 299233695 478585586 730481813 829424006 864617489 536179905 657781481 509684564 993485056 930096209 982603301 984598133 993757194 7390539 751083483 209185162 422920792 875241578 978749081 341454615 511312319 678670749 698141965 887448302 899627779 462050790 517921831 331941834 924996083 463162311 678990765 382929757 397813343 661184186 713364320 323448860 945559862 377710914 976574462 142739022 726223978 653551210 744606582 339860604 553402043 803639719 855773393 117625459 875054073 909068903 920259199 410889689 426288018 487541175 913482267 160829255 212942280 71629448 116160657 129871651 421512429 306982324 424182229 273477451 481147531 483288731 777961106 260624533 594799524 986455415 991339829 318605187 642330940 668570881 990431206 907702696 910506718 35154833 477008005 973249154 986093041 446468353 888955271 970684646 995561757 883885850 984384670 102014142 575624959 727187880 906759970 213867493 499889769 254862402 332215004 83300616 333662672 141512681 520842798 581702856 962091799 371498681 489524601 905447456 971756524 654175692 944126428 853627318 946570840 931197009 991251072 653619400 811435350 143286619 723086167 243795003 968042110 596044979 975293423 428314560 467834583 157610386 350277975 909369946 966745480 3964865 288819993 218804485 413950677 375963248 556458507 711622635 851401806 79898107 488705705 822072573 843628452 641889071 702143067 982618007 995317208 737091743 952481850 60268740 139415723 808742575 867523816 723414864 970381971 819353212 848270135 609868133 905244452 388760525 497873831 724383405 740560572 216960282 256791532 915437652 964931671 523456800 627335061 203385101 644083323 342741619 555224529 631794865 651585078 611656292 698462146 778365913 952022023 201224600 654638626 880390331 978692833 644336456 702763266 952383619 959314656 609267607 962255993 294965504 810746698 636193579 694369563 276627079 548501923 338733238 370606245 899453060 914847359 580305748 932749995 701996145 985591894 949423339 971621497 764428884 966889245 537314782 649231037 503195889 601986111 990984073 992292090 251936191 853744143 261935199 746700034 442306825 964286167 793192346 824217851 191779527 940995251 90224194 620476210 998885187 999017811 482438815 496873044 375927748 526955494 777061010 886417352 723996849 819419739 465704180 893300912 262070984 520911480 393478354 985903533 981567175 981708410 912493417 940947839 176584886 643682308 914290493 994873491 353510845 652667323 246632743 556953768 262976699 348310296 693630839 781407665 68520425 699167115 976476425 986793061 395766665 484182753 390924500 579742547 778258981 841111457 26852409 184014087 607759763 970640935 792494260 822523994 82124907 793875230 115197105 213358668 458608518 854224217 637700327 860611616 939578800 954513163 990887070 991199915 113189990 776012439 558789195 843191646 28514670 116775008 722143300 825328016 522185409 989463430 425307302 907521775 113820968 530349000 836431094 869561071 195417028 971942482 296192264 767147999 650367758 986701698 620643808 623718463 339957717 930054300 543726653 563685856 434084167 504902498 844100801 877995564 461242400 690343115 476515903 894217971 975570540 992724877 712706650 937491286 916926909 989769111 807250579 817950950 126294145 736517035 555187216 956509715 473682649 717012485 109572340 928422516 171012129 182334068 407111559 433955713 729603989 856023643 130144852 431967881 6210803 717801690 227143630 994531624 386255417 709442608 503960237 796149239 684772562 958452636 536324301 915966622 735792087 893017129 166458899 272845876 409208126 880389941 430834084 654181841 641687147 978347683 226368917 785182746 2252191 353236570 675969683 806680737 791356488 803912112 582202780 773681927 688702227 844318249 508726414 847077812 235726056 934357586 757815394 880627901 327476080 585402937 38137259 179540823 532096810 573594709 10162741 661864346 155250036 856329187 331719767 450001074 549874619 789544718 26849882 394904159 396538481 737309814 700502646 976400918 598881604 702380238 717331878 928282326 647254636 853743006 301146503 664995047 385851404 723134835 692080362 790424838 2339928 188864856 444125240 704275543 843202177 893102660 559376559 619360620 902327890 982153973 606882869 817192138 506308894 787817905 624642680 986478208 83980168 683874496 791832296 914172691 461799799 980939577 292875748 443377161 16915322 152752047 715283869 861271429 965778698 978133392 760004622 819520469 193057641 907882419 517953244 713268197 170313365 395825783 765506492 901008096 9323027 820793561 613329553 681857258 840075141 935328893 47091750 166544799 754387925 969491530 506285848 543048922 660563264 690979707 638985596 920973003 426513054 861482802 969733349 996399479 155120315 294944753 944080695 952283997 103737967 321982921 107394772 872708177 955397952 996802487 676816389 835393269 860631258 917354992 561738478 641779889 863597967 863898326 394392490 432460547 81839286 209740075 422173289 712538209 29084743 263728674 37937532 659948156 82113176 492968878 285756108 807097722 358790682 481341806 486156013 623309454 543332032 683197682 849382740 910074943 780547967 900485803 335517909 513504057 322365447 349446972 929025560 950780337 701589273 982124774 175190236 545085490 678674440 848675014 264415205 278566448 428652593 596919615 217655711 448827877 927009126 973793685 646601751 771886924 720390794 796532873 616011753 906377315 275355750 397805313 159120336 944400072 580044414 670131731 736368386 765454257 716538228 815764957 758902054 786970552 246655579 302086204 541456143 560066912 969172140 992008286 426675962 801946957 526659096 786581446 507265088 972322555 821730472 964733107 439052077 831229141 406944308 859014369 519183751 895108465 867979117 949622155 29562721 557895409 602676323 677246071 783674986 897135227 162347751 385249348 336987967 491186308 86170933 721883852 843709080 899904114 361325788 634137401 862112714 898927494 818347212 861756771 4799480 405850054 722618779 885869015 658481229 763255478 421308138 819955847 226578117 330208113 533370864 887138529 328638839 912180623 798149892 873152911 437391338 654027915 544986742 751714275 201772024 413189392 888927070 960258736 781780910 946638418 610954096 834816302 356335096 968878023 968920778 978055243 962512375 976923757 385448758 802247645 689414484 707938482 422080103 663633909 69240186 314119861 389553371 764290459 835727537 862837740 990972754 992677781 451719996 541416594 470484616 514360928 693896203 896477072 206089090 470279623 411215952 455840372 420936897 761425046 938290489 941527380 494879586 533480660 256657675 785252164 831668341 981562685 515066884 863084272 153896797 742799835 109894463 387467340 346045782 414413207 981394288 995057720 956226238 981956487 427344691 847733748 754561126 850930467 732082244 757943135 303349319 469421079 236066897 440725715 516701075 546696936 843278022 851286909 188969517 206694652 897768814 993513204 948672104 952008863 82594078 323765121 851765106 858574905 669006374 761466355 314539956 910313581 744407474 894829532 949091630 998731079 348574147 817204341 135969166 384908454 582940558 741398733 200307714 584043669 975386123 993943719 355142403 387451541 570132330 645931875 674163107 678361612 358253966 782471025 712050492 917139719 894001362 954455560 999694155 999736305 75590107 87428209 651886519 711574072 206796548 833711895 567662525 597481446 750607460 773647941 754883727 761076160 56531344 729936551 339121844 380787532 372916916 684953276 123978444 657560131 277841444 863907091 112436154 362296942 799650012 914142724 231726473 286784453 391212392 913368627 573958351 675611686 368641796 573010192 475971767 629838001 713847740 814595278 862901813 956940733 41213653 310435934 860026261 977550705 783340424 927082068 96269423 469346103 286014549 666099166 862842787 907297999 834609090 968727668 791946350 808869635 967507126 990760101 883881967 898732109 794916207 945713844 43662806 709789485 190280862 778219270 261909552 945433994 415567190 741679302 383692193 984623552 143777209 632192534 964906497 992588495 847747016 901469296 417589751 633834135 808224176 997005123 20974889 610644685 480991550 543173927 530382823 841577882 150014022 486839196 393464696 665451322 25642394 439815896 512486601 918099982 917009900 978653772 880631044 979482929 795760211 991345852 438130509 764061443 600866239 865609114 120796512 503627131 935469044 966373852 285703816 870235806 930066176 984889341 85082491 780444874 475748118 751117295 847000484 993260604 249622374 469222614 218600378 708621874 148230439 204188088 979417400 990679364 768587208 830028832 732360669 848636579 726912713 840571773 175831921 200080486 693621483 793061076 408262902 511921472 879486447 944262918 812059904 893223374 969095932 988167565 474735983 533127948 149600087 549256483 857564092 987522053 238653381 632249946 820536772 923624257 511596547 862641317 2591066 945135673 81352028 930981887 118602234 516448337 790611309 828505453 549560700 891986823 317094726 889229714 463511088 585348191 292643284 398387199 751149318 945724303 650895064 732071077 692807822 798276767 302577626 742474040 836642319 923408639 719933939 881479705 333525086 819777866 64866120 519830580 955851939 965316962 870963893 881235238 680850893 729864615 967200530 978042768 318406233 596996786 658622658 987540795 641217095 944825940 671102246 692455492 21558654 462695743 122778602 602487310 351672227 500821268 90807163 444211758 702122163 920101011 485237991 787142993 769390977 930568302 194305414 273838564 828047877 947630128 261574831 584156755 567770340 890424775 462183448 752517881 309183793 376477191 222950459 728336951 409429782 824543858 48679873 943435380 727300912 914071095 384990947 563838204 360337341 930808903 483830460 655670960 346479750 996357771 666438133 984293807 301336239 552846398 897300797 960660490 525306999 887873410 547518274 947831701 932321185 952671559 167572665 330704950 146155563 703519140 674385121 704108574 366760955 517193749 459872957 542034306 753644224 774187323 841034870 997586809 491033458 982933290 725924717 852960011 111795483 403673017 347285690 534343788 510865156 686109247 463322096 884251641 817446997 818282019 43641614 960229479 308210257 980384425 818714982 893058444 795843649 866688126 380220972 977465328 576931938 589878323 829396193 870682593 965795627 986734815 783416478 992405009 805202101 979800091 124067509 262485428 134666095 637064405 729359884 944496692 796156581 820261997 793095914 875486511 610344651 882926767 788627714 866060135 636650619 755667898 427857065 495502280 538250113 845011634 291925870 800039249 500295170 734203366 970563752 994218766 239630146 544321860 187364921 451672170 998551809 999777766 841862572 885442010 569739961 872928213 972506711 984169034 116523760 202924492 314384531 601414517 456831209 787216072 166017674 166136141 628528691 751759385 723559926 790988267 922961241 932244347 65949922 892413376 707859776 950308339 843735506 865805652 660133479 975058865 183094656 731735222 252540610 892138135 995791411 997389638 503068571 856506368 591465582 853081608 672553218 974101639 235817145 616654587 236732123 380245425 950544052 998536488 117535155 299131383 594678507 696278960 567953670 872581134 130137176 176489635 417526218 990125377 418511034 834779091 834415409 913093322 32841284 849510690 956843375 977241606 851606935 923548881 853063416 898163548 617121156 893436902 496121298 885768009 988221917 997221764 600260119 973523874 356718158 361797681 139924906 644145773 562122078 718657986 22837211 147131830 898274718 908583694 345441055 376718047 411214180 440983082 893486951 964476333 82583844 583363339 193906252 336354756 622432191 958438800 689266875 863794665 604003880 786278000 743834429 873251848 180919414 892829663 368802192 590877548 115099975 206918071 351042016 997793509 983983562 990636716 1640420 515394595 273511628 583499180 268161370 578311147 153351531 699628432 556436458 917155044 695413037 903005252 760169966 981788764 865390197 917305093 389293612 896744261 193368964 199055687 67875843 492742183 466196206 918456208 96410828 476355082 106962730 644840694 498878216 777724980 544030825 956997126 918099402 928507399 338691349 794113831 440363702 924933550 381318122 959716691 337364302 486429271 325337886 625067730 501589116 521717152 662177266 706818959 686105315 952347284 316618152 785612731 36384370 155440929 751518794 803670919 147057417 585210406 695988829 726076820 739953387 747822299 363406076 555903239 205271904 728350743 485256319 747536574 144972960 651981928 518049747 634837464 295008863 458513112 565731727 666647307 450449659 507951018 684009338 846881632 449920966 905680682 683129069 726186559 658940790 908595163 901801165 991276110 522854238 670368632 992705863 996147221 285009190 730297913 973473566 998098524 468308592 649090673 351672823 401330863 759650383 900789963 825065123 908810392 512629422 617292776 639939806 790241917 867441057 927974716 526220506 964686362 661322878 997652102 730191152 742867712 696389742 765959242 799987003 863421202 736566333 954556036 85996583 698119193 264543268 421141904 574298481 586985105 670974651 854647087 511441436 700104698 346350235 629889554 342542169 371161987 155493397 263671258 589566512 938601022 373409801 742377113 454161043 947496899 83823159 149658542 5385552 612758219 979511179 979579969 49837300 917742323 485525137 706805087 694305387 709776002 993882188 997580407 760488184 866131730 145205777 183947984 572408539 991649998 519468845 957357091 442811704 498262099 16085721 426119055 254118165 600170436 389848242 490503579 90659492 628826550 620231486 729557873 550706779 770628642 513820806 949531787 456365936 770314986 275491382 522963190 164550850 801067900 436701191 678233157 686425585 945125708 988830044 992982969 912999149 991778795 276354235 426408691 637209409 812774474 882120965 945635708 995264603 996829862 73810735 540790037 939164021 990203815 737908705 947642636 168835663 828975138 295545939 444040345 33805681 649224983 143469774 747767665 603328267 743476650 148658542 869157565 828766167 943224911 570105235 875915444 450241777 632039024 315770464 739041462 151523027 900824709 155280326 790427486 594165266 875345343 609483549 920657111 480046345 524088975 361934543 984205928 477562685 638603038 826249295 991950926 322468074 966898587 218153641 631337542 708953702 989226340 950485887 978825780 534430071 900769412 268313015 906525123 381484834 446225205 15804483 82113878 445527510 880077297 563874960 822042002 446175407 447404777 799741876 860333841 222479910 889610065 831680877 886165883 551998693 625108656 657129269 972284644 89761977 777231223 573584026 853252130 637025116 966501376 875603910 892163656 150177718 947551121 515526057 709559526 672700515 765009317 157064929 716677800 164369105 688691287 574367893 963616020 858287877 889662280 264685175 963906969 108230175 591085558 896597949 942877180 666060272 687954755 525111675 850541060 464652346 763046670 20475967 196779097 983780208 987785131 542924485 781322891 56732653 592555316 196907034 869384785 149374652 850045613 295988456 479573679 943641525 945934465 757985918 870958192 240411406 307111530 849410196 906401655 414591190 950224614 631293673 734649647 564538449 812516766 181736630 961804499 836388239 936683125 760919672 885090653 422742901 872746997 865126022 932813307 168201355 551122300 178136407 347213527 404837921 573683766 384775891 729377602 282550777 899134653 371864881 601702487 353493483 717928582 928788261 935659643 978313691 994028743 456698042 624439080 742372492 946608054 355985641 386399141 755303561 838720899 211259499 923031598 989103945 996069158 603141127 733809815 684636908 960993346 176422870 719873883 877896007 944199240 553116157 904663718 167217705 179241017 289082399 904750090 472577398 737757084 34122871 117708809 858353518 919408392 280910743 594492985 484533563 974650203 895215972 987594830 22040872 859988809 736176025 914729776 888323674 894116401 683872291 710309309 148931538 697344295 316335566 634301814 262738061 675395396 852462373 998694072 26459164 538645087 833123714 846704060 235552688 628389772 831148495 860087347 899266269 912555932 799171361 876894757 824153625 909430405 754912388 976467276 392674477 645516651 680813848 974981394 704083960 780873257 586624626 643213452 94450742 889901675 931941685 980447075 131704565 966393011 551301084 562585594 166843160 167925241 972914530 994604207 844400943 917854633 975625370 998935767 575396046 795636304 651216825 707452399 169770103 286419095 690427291 985461063 946645507 957186582 168135577 999122898 750662765 884342728 93409850 540485816 235456382 373240331 769340479 863093214 787259520 885247338 250831294 970310465 338376084 528910816 967678717 983813186 909383918 984967774 241255017 916036977 277389017 625102603 661495657 701301414 438040834 477537595 853393106 927836477 556490912 981921170 812418685 906735803 859421730 905980290 523962571 959785957 706027565 881278406 283088253 485688569 478742217 593113154 411177354 735924655 604751917 882541146 755971395 865282588 657778160 962223911 846877497 881002747 6097469 989139722 349873875 719383281 668447924 951180475 956479592 986207319 258642424 786201630 285616372 346605436 901927665 951274219 75118077 777353792 851458921 995225078 86106522 485924691 871075443 898356154 257053303 981362943 125604622 873119582 465341282 670521685 892978653 941025306 835077069 957834327 678377817 882751947 120128600 410817695 308387990 640805732 257161274 274289617 907839311 946995726 772149199 790687469 222487101 492503399 892024627 936302708 791155652 898117468 300251022 710342357 158348681 301766628 705893557 768708209 142625705 346475622 503203844 846013427 629007628 846842241 457785819 823804489 934280777 963038831 220714249 945842356 409837461 890503364 863779593 976884845 301545546 975535394 47298811 972825623 445724945 511982298 873397088 891665401 264121837 406382566 256099521 918797600 641740947 667912336 934918879 981573666 561228159 795742539 548237242 875810759 53576150 162093106 854814174 997887693 51284594 613067125 691462830 836117177 553143361 645072229 940118813 960287848 41454568 392348850 471462650 871152199 439514504 870883303 343210149 646554223 992605493 993111941 918988033 984277650 144570658 175929538 732861171 859087647 849639938 937866074 441426520 456742113 80864028 496187914 133874330 700985729 958448533 962944015 72516735 294103496 1765743 632406977 553431947 955164251 543366777 793320216 947729176 951881324 30578562 53196524 567328028 927202350 871747632 934500842 866266891 898467795 780498768 988578829 453063404 853617234 857802585 937884127 820499397 862009842 757668205 894126232 22953965 233897177 74530601 854808501 288664076 291128489 820517735 922750945 426630455 800697756 128090535 249874510 789612558 935232395 884536 404837076 103913225 487487329 687621789 693698747 621500682 972649810 22671173 44171447 102712473 217632529 592400655 747980226 88758050 583255886 953865367 981307708 748160692 795070479 785444067 935509084 39212104 971731068 847646427 857836893 321790556 600509866 328857769 655745736 707286618 728392951 388272104 790160982 699308957 728748928 605322455 763559733 396650701 574134011 836067590 864953237 102954049 395775503 721245153 906774907 927246546 938157398 584539647 791456808 187469663 323486129 789776155 985316675 39168375 64729180 341241778 638554974 270660318 554281729 799788965 891159135 967511599 990980992 644152218 983637631 207199854 609535242 534060783 812808824 667263201 764806046 328418015 452922078 466765497 518321486 861482555 925405670 387321940 660731169 177273009 584121791 177748225 451601634 595895139 979110353 962207081 965316107 291095786 528449720 453135221 645924547 184515609 851804937 456576114 524630120 950433615 991765191 757036718 794270218 524161087 704416942 846556657 946719233 80666801 274103218 656964109 902070045 350580256 563791294 5875504 649109379 478777624 923987180 479906675 704911446 405867540 924638695 509784721 812989890 58548994 179102291 741442187 981454299 948968896 998452382 484993999 556181865 899970122 908279851 355253134 712789024 423847870 782348889 362634573 414728670 284782821 401404503 843091853 916764578 698049556 776787821 19038653 414515703 306438019 428741732 893345933 999114658 749205381 943589926 505692070 508152484 105568891 571022210 135326493 878456259 138333882 220600152 443541242 504484017 694939437 886699978 332940152 913676759 844351123 939244650 311075401 417350835 385034352 925931260 975955090 996811149 935383544 948159606 587944545 643879478 885813152 898505934 668467258 914810800 17197485 148790036 378652692 933230959 229209800 476156401 973812836 983681389 144172324 905963091 476449634 754786111 664178981 910450777 731914011 772360550 320425326 738533680 667512427 770486077 929991381 997216308 883478417 897713729 290344693 741831609 58366191 900963951 345401876 901347585 107082727 633274000 322967775 520575244 648489206 976099937 194451422 319323137 279175845 789951204 946454018 999115243 182049980 719022626 67453195 457195567 739606205 759341693 272474277 591836116 105015607 738995371 962849738 969204545 255590981 499470861 905188833 991473407 651958267 659294317 969101288 992812398 968354638 971571627 769851170 867261701 407120470 548026659 342174347 504889211 381574510 983859052 628171292 715509904 891632306 952580824 510416657 660007298 846625372 923213271 274048643 557541880 476748414 963159883 152716087 653278860 552344121 862268300 561912665 885921602 208235111 469294541 193393694 338246964 121521007 773271146 324288193 462671877 299764617 991545352 32803907 316424305 196381400 711457817 213244832 912721343 408086400 721033521 519246530 776060590 482369692 753349827 965938707 992610354 473774060 978108725 101388366 169687107 858096910 957418965 79158007 679216230 777530616 948769514 442497934 782350411 671825684 995532094 853648241 954105311 744470886 956727360 54586889 888933419 416268741 931039594 703031767 939616346 238700060 299089131 807206448 915571214 413873596 698759759 68602672 344670831 82793108 653271426 921635283 970325484 582834673 675863780 180763463 557578329 299096738 497828540 939405123 997716034 864868441 909424198 920034054 969008136 673080970 801149061 606147189 671775368 528348816 943813146 797879756 984588323 802815170 994163551 792317062 945104334 796014254 813421875 526151880 991247926 594640009 679831772 89094342 487647485 529432855 862192872 858338290 936673839 914471584 964217024 278302805 592783005 794703295 935473485 54582099 524289672 846678498 930723471 23476164 93361558 85048182 279252051 184336234 237233215 878468319 921517813 444909629 663214592 864587804 866147594 323837038 754582641 402131335 488119504 405152475 750094935 817395629 960014679 59873526 683703655 148038079 740139026 518138206 818366366 550382491 793175843 48370873 268050579 153530639 199702100 814202116 850088579 183228016 865473876 719308518 789933972 117363719 132319500 188203105 572638576 441861690 719572768 276670727 701670923 163197263 748780344 612535682 716502562 113547845 867317258 155510447 629534525 377325046 500601331 114615973 809721145 125082496 982713652 419288599 449947791 561982124 632870937 362203628 709646299 952080696 996011090 39982119 836561213 329004924 679533240 799855136 966897928 477764372 981317792 264761791 971532407 410384605 953432256 817182096 853338085 887325710 910830942 618335279 800730519 296615939 762065853 727630886 837520393 548962821 580061408 646760276 959033294 945706060 989149718 67466594 336027076 710316194 910303909 263352665 575636109 537284500 953073232 585988518 712808066 298396581 959054065 250413846 945672141 551803383 862936002 212856484 450924135 268403754 564008027 137816759 349483889 880054620 920610060 392551909 940189700 648721412 734941920 195779778 688553867 661548336 697643706 788738805 867032369 537872800 853032611 494687304 600491577 552271770 674763335 178428918 885259777 660522345 934913075 365495964 684519586 305797455 320698728 94141350 679976561 783220080 866407725 851588017 959325684 590622361 900124245 338990615 752834674 291724629 866607694 817286983 928004168 122249493 529302549 944453097 992610620 144723902 582040956 448585099 508562038 886601630 957837109 326683374 544915651 672492389 684602650 558950080 828331179 635846285 771840094 180576722 722293086 413232063 526417671 816601753 968522619 611053613 742725082 816834935 928375160 539917261 633516268 916523190 918537234 463264228 778469070 977946561 982204469 198018526 886577116 853381774 863311799 414346492 985347234 307382468 486509145 159567152 884054883 698357214 777300882 657110687 798590353 417576254 473756471 877489929 937706036 815554091 983644203 30664060 392860276 493817655 838568689 969598412 993485165 829248463 915515098 889817790 971373985 512579025 969313168 636070905 675377232 832628928 884958428 473885654 599542894 278105588 782359276 548600616 625862291 252373521 518754032 472221294 772011569 564526277 712132321 569810173 995458543 471768172 846561459 793093472 935084900 84881148 711021784 580895196 751862012 858046990 940810519 305728531 414326714 37446561 119552676 464312929 721718613 492615263 789098759 952280021 990664535 808338754 837412731 961754927 985812184 921012396 929330654 997795942 997889144 57984408 591957108 660643550 773505881 668510490 958784445 939852582 951516851 980254941 999464000 842470462 941655746 825657752 977091977 411513241 709386925 277471555 603592094 959188325 986981501 720749259 841246166 558891963 940147537 781851527 833199318 248863448 889011932 744791045 893161807 612773242 960645495 206635261 625397254 289544129 651488218 778409166 797562245 270919329 549615990 459599273 500416970 160541625 450031163 554993080 730354363 91892589 640879505 566377593 880843489 817313650 913612975 374091853 839910133 698811970 892391878 12588064 870123158 499268441 854361263 573989756 805870362 229832760 940214327 186470812 492652662 447681288 693534024 210428548 931080834 847752924 976701851 939687303 956846660 539021049 738145375 658670769 857672093 569047987 611646169 33003894 266608222 768922619 936908168 887838893 907339712 943949449 968322740 734971018 905301395 327197726 354539345 875973244 955217508 621270912 903606237 846104817 884528209 191790361 322066694 954823284 981635431 83895361 112009019 417677560 433739544 39718019 576320564 108601386 152106054 221865197 502740259 659552167 914656469 306857228 676128435 184777856 499085609 106250736 614321443 560105866 947416396 908902348 998142080 658103708 757297964 945063066 966223071 89938233 317749001 343608104 925963123 523948160 565591623 435952856 938680082 635125700 813753517 252644116 590419484 486263667 743877632 70054987 944870503 560691694 941064470 794153559 979314837 377682332 727339655 395716581 724075045 456864735 645063339 970921763 976720433 368284796 720967714 335913663 383018880 714809230 822535973 296710888 784178663 785563888 811294732 647340599 648910561 217391037 658078719 783912897 894433477 226483290 619464727 834288923 923128119 707001110 875432975 739707782 872379882 288478773 869626451 488003811 590559253 595750565 963650712 110076412 773511556 871953146 945240257 327472117 564748584 856448054 948574171 484467582 676783335 827537157 953903667 82922555 142190548 749998174 900343360 909169697 912833887 463670349 933407930 702530918 825449794 665588963 803809294 363605670 593188734 249311177 810929027 449571949 463396800 204982544 381026540 276256345 478517382 16657303 951492940 734098909 931272263 881285102 912640001 465457853 611183834 908777350 984139695 313483323 829905078 747825464 975755520 279135072 536221387 791760941 955251859 244979943 297494474 760997027 903146928 712478687 724868398 402554888 769620143 423561409 604941725 185567908 825809441 942288927 978112390 469073121 624570916 703231126 962176583 121497751 677318903 173639799 789059784 179832396 291902882 4161101 725073019 83922747 874599618 337963460 853462641 253151594 957322018 133395645 200364995 945180444 964498628 778103763 796012756 627480290 957387514 857568502 864177659 637032802 794099762 250934804 831790620 937008688 982382368 637458160 942442942 312101257 769095787 150391625 837245658 529113946 779190207 231745426 305424798 602215280 877789490 164930797 554624346 703847665 885831108 507077975 567822150 142095646 964368453 483606658 664887993 117300892 368921042 23932081 371222766 767935864 945496373 233872141 514800219 517415979 722214677 195769988 748766099 751475769 962361508 249503588 729460979 78510082 140926374 386663766 497954294 643903620 740103056 711091302 750529540 279724375 642299503 839519411 955039002 277626652 663046369 939678925 957840853 33126378 38844271 722370480 734392473 207041035 988081991 131262890 683474740 757885366 847479944 320687824 668636635 346418406 755330052 467075692 888284730 246117541 389742665 142328774 743689436 509776847 785098859 418406532 539351066 58383197 402331282 56451294 239852537 663817111 818998664 697323649 842607577 994609562 998749935 125182460 137288194 813307849 906676654 545076737 814803658 98477153 189191934 982705765 985558914 668832013 684028673 683065590 961924993 97300417 679280651 761362848 903257839 74533591 839455512 644203621 865816357 664436326 850082525 227944063 494022040 539004331 752358957 284134345 706460361 695053379 784968426 361363388 518902888 341154122 669927568 978147139 994786409 520250170 637450354 830133205 858815370 403264787 805035815 514933726 660192642 283212241 924605319 202066247 589771274 641040623 678197237 960921864 966164088 193261565 927997870 410000159 969409612 712621941 985271985 37326171 615109174 536316721 609746782 513137739 676396128 415145957 541623072 216821227 863174270 756494552 760684805 153100350 289122794 140042671 205003576 951193564 958730819 572395504 805864373 936700052 990654454 970084554 997146299 612111329 841470953 869339925 880405915 735746430 871554488 285928058 735104203 313998804 833806287 338921237 922462025 25231287 618098998 899731029 913826468 558251580 770198340 686397919 894538177 835513853 897447092 73089720 567631697 981847872 992975932 569920705 870457848 879318803 960167410 867730557 884301181 736356706 784535969 240531870 768004202 985842001 993379667 218309390 917164770 191641639 220185178 637873981 911066283 482273852 898639953 917545346 925872276 129390212 613141973 369997738 376334033 699932700 801957493 452527686 745315928 342220991 757971356 581278585 712189531 837548629 840631303 931765358 959980285 62927808 202782774 856895636 905022401 652832733 818352263 325985302 521006539 185541799 803588109 734440452 984554526 239373943 865553020 302835723 339412619 303783994 955264646 648746922 874995258 840001953 923840540 557343048 877142280 332972388 701361308 609858347 767662034 851410357 992093521 778044480 825220166 995157440 997910738 420935113 890503360 78954312 755952584 492915880 830140513 557298510 753376279 173598019 665551823 491457098 788801275 777648935 837542066 794612267 961812556 725089785 890919068 773822944 917906490 627633129 697194397 955104857 976857247 496543825 858224889 276544010 951703718 492370003 650089425 740108176 838120663 279889414 505768155 440855572 659066699 546928793 797260340 167212197 355006279 131353831 268584247 28619291 192035087 22241030 392057485 50820875 892970734 891637367 938422245 555806457 833864590 684716882 776384995 63417052 186484859 984942275 985585729 146115902 249688618 410205176 538695661 94654318 520018875 408887884 789751466 90933908 502162732 167626879 408389707 387829864 615407445 667944885 972408368 260311877 528097044 303306268 566223909 69482635 905143014 586093887 911001667 228712320 864632676 975124699 993422472 267858740 341274044 115152518 570462292 450940528 839922992 10903399 606586066 754854567 949988336 498127224 800984704 148516569 940168579 721613772 828537187 71711268 956701428 511468660 833173327 864727555 921905773 342605379 734804513 882064125 947797518 685342120 716206454 925886088 958090779 866955714 976832638 621490260 907590733 567020668 809396048 292276969 680002156 915076948 953203954 888660106 960477641 26750969 189003080 68972845 196845231 988188278 997096137 989857942 995221302 366303690 884443810 696042283 754315322 674740776 704792308 191940697 554975605 17471098 256466130 508261353 813447243 26934130 656039796 476062436 836173581 712532160 742498650 108946563 565741231 548454259 913925953 69995563 633590135 608481838 787304577 292059596 555145712 144512844 262402333 106509419 207275210 721800899 990163270 165526955 384479054 633131996 949964173 680790902 882935267 526195531 848470379 276358350 913810400 897788200 908040959 297532956 894717675 370769478 599566374 299495658 603238337 236526344 572769650 887896026 907071178 829222953 854874675 631211729 819731136 814355638 922757781 942840856 974639152 786270651 893037735 223656159 500277741 735873254 798029139 148222640 457612324 618139869 736791947 956598634 974746682 65224922 939986284 510329559 650198438 322174690 372756574 451161689 469019633 557366727 575912233 196554092 508102999 447935387 461844388 705714502 868617178 168097392 435049862 313165163 993205550 197715636 863663154 765160371 792142989 524878360 992181155 388742614 680249732 542831132 609006064 364304665 963823652 72945331 346031671 114066223 603498263 153283808 915997370 780098324 929294087 393412762 717063018 548563323 639707064 876262214 904472995 212273727 718476628 4503302 618294457 50832061 296502729 820072569 947879895 556717710 816645504 631131452 822501328 605943543 714219098 985801052 987089112 237658858 430775685 687791984 716008987 58334125 992489987 164576873 563925567 66745142 544914682 376373773 717871160 758644131 764375355 265469925 323482936 950550973 994862894 967047046 998275945 771867567 820335496 396798599 623371515 844585005 994133230 905822068 973807638 97414138 823907945 288868479 470256143 972973120 976405987 410287064 584808873 405986097 612698789 381719576 907872278 292914570 402926541 750321980 836976004 568355624 809016653 157816650 600491481 536200470 954973338 315646770 677684977 377480010 897677718 159741926 639212256 327302176 402380042 210545963 270136643 194035840 849239442 761897236 801154010 514439487 693965444 962933752 981552416 202177892 609574633 798375727 914682744 229819945 383476322 931355395 999331738 122537298 138065915 301233207 981431676 603932516 827959857 577883265 787614112 98461217 112720971 801912153 844908326 165893838 385885255 148419153 366372866 11926842 327448111 293158356 491032072 252508488 442879833 93090574 597531476 942284763 988039756 830300801 886573578 454756232 726904682 611807970 725671343 725231298 784032773 237612320 902412001 364985351 953668106 725234598 764425209 273101444 452372070 578871657 724847313 595149618 773545039 609286583 824567240 38400306 914121857 801744672 955389017 173458799 626839626 200535039 930155669 727904575 920887256 551919486 561427216 740414764 773163232 431165591 983082503 555638655 786432330 480268263 487306500 451016968 869225246 148872113 372063406 477695552 987770607 913593338 979871646 462511866 838769569 537462152 741855861 142375183 583046652 631099529 976839428 980773232 992110185 244208152 683245050 223782836 605896625 750243986 899060205 993768301 994675052 686621660 804264105 73959471 833932536 281758607 491683153 673335537 845753231 617991452 655300259 304139588 458954956 426279692 903891932 293755518 927497970 62513745 483422495 77695720 501383115 735566101 839584352 746653956 920387611 412618465 600551214 82799416 155291600 518174497 738691198 213606192 351720644 612041795 839585801 400373624 449962122 231858209 375421500 253276305 479414217 142570803 163825622 619096444 662051951 85316864 674508290 12068311 888276163 297757447 774061826 92936631 268287547 243905771 840257866 519997455 746584297 309953798 493209954 587934764 875093680 11035413 70483042 648188102 995464893 495280541 807252005 852487958 984049859 639542626 860812204 948615608 993413798 295117505 616665042 177428455 655027116 43847068 849544340 755845429 813789877 162073167 805761972 854928424 991205071 560937667 852029942 804145267 929291291 810853518 947952090 705983950 706775432 737626133 843055879 555478353 943182905 201329463 256446304 253846354 746795678 206277309 727047373 506988636 828805161 810255473 938571016 703628686 943459891 8453867 424921642 503890492 663716464 381533601 605559133 421783985 443235485 302018762 518358253 118238449 143861812 567001801 727439116 734776407 770481298 806333895 883250790 865692986 904077581 883960561 904976084 133789238 913677667 342488236 752873078 794425081 848163303 513705333 703029719 822756428 918394091 79363599 161006246 512890538 907780075 857331221 885895102 593237158 765264790 143378399 225563216 734920875 867201616 217234059 790737860 544569011 786474420 620153280 620321606 620396807 784410312 778543799 961026056 136678897 754457491 185486770 991760686 701212576 886663238 924534729 985991810 458482930 581066747 567929984 740170721 669067977 983595493 662445228 739734510 846466127 868932029 760543569 983901537 755529827 762368119 136916750 239661442 669959290 882521737 291248136 693548944 587522795 611489338 844031215 961595156 504191955 705140786 774953922 805951806 131639008 676173297 896426236 916399887 488218781 681377742 287023280 610215159 223212729 503858426 265101418 612302275 593832111 618442864 124450360 367758794 745800601 969999563 925498385 983439251 389975080 700976932 271656618 821508344 44986323 791140177 366023397 767770134 126798031 210037204 147361703 386199733 600245122 612246966 231840124 831168048 315809418 688731024 883158355 892923790 931320095 978439215 245138099 731142685 627059765 627184527 334943058 900106398 851300809 922537714 850758841 851871796 202545671 467692557 139169503 913360708 453465236 860325121 92014135 155619223 212711986 555296950 596643630 979748193 614421198 875791477 268135384 280965609 957576931 979838237 903209573 915930377 713971076 872937246 389258509 743630518 846665551 966638977 923020392 955028142 352509428 462332719 191462719 302332285 239644488 242955784 422172200 565430289 627465742 980434534 188643485 865723789 849612559 974440803 394876145 507334071 987543818 990351361 796906636 889604488 212320970 983665418 313115061 773324245 4390032 370679858 749476155 808846623 369275278 575422076 606002195 861706805 768397325 944502408 399256494 998482417 554917199 893193156 678691265 768452946 858778373 984532146 547668476 936654720 834974616 869229403 900455469 999857311 780071623 863677552 626316634 935748867 873294634 917971883 394175626 801350707 148219565 734195435 696814449 736942178 85500805 304229198 227462001 535929053 882982033 974250428 764143413 786447344 734924113 759535918 734901247 771766564 715759996 970145440 604444326 960925560 929200398 968662567 174483229 833275311 810454574 943278551 850572019 928091618 324540540 471193216 794879220 977474661 934304369 995098400 255690236 622436632 8485867 294624979 298479415 946589635 416661542 747709710 224437816 863714182 797513917 873746597 293476459 329598372 725514208 847943410 34180508 935588353 523788428 589464572 119078033 452074848 721981244 763414685 837248347 862677737 332942995 804374440 831578617 834081798 96988220 491135735 170580347 929868528 638092613 725888691 472589624 580605305 119143479 326741644 538069583 656751309 915401409 966123593 590024309 931060207 651379605 972499821 129086642 374501493 509887213 659931379 139439439 603663455 234775237 424701223 26740138 166732668 866956676 899382886 683939258 995064598 114298850 941340459 146459547 359287582 494150832 910572312 719177840 822476705 758973439 993800688 933541037 995258518 750532287 936862535 760844705 895442613 341384683 822223019 516271065 893368925 784050125 793492616 388283208 416455558 748919330 981328147 82620152 358731122 57968065 442166200 730045289 731045935 349322475 437436983 841338989 881474494 193181244 301528598 112047891 252312820 220383637 924161205 295495478 439257940 314037475 565661510 175970636 738574012 415371990 647617099 608615178 951941503 690928639 770815400 917561444 927805810 840157891 869564093 617921133 882172132 824104887 910247180 238266613 601014087 9988273 508165747 919144136 975488757 834100751 990309217 652084329 898470301 933415535 976269075 703490434 858877827 988802053 989992137 791189431 988025765 970667179 977128473 728878233 798517154 278747374 630810872 273338393 552944196 644694844 976546353 954142820 964150582 700433892 719748275 688262020 898445757 83598750 674637437 103644140 528442737 664627858 826024370 847506993 970617297 449425435 853513231 363457068 489618349 318883127 525911972 494644545 947142095 890838340 912595289 37355845 622402912 311656547 480738462 11842217 322077210 244156464 343800386 999339845 999846670 864069042 935186742 362070157 553751178 76430840 672673319 579064673 745081434 175716920 877476332 780355977 853947095 970636692 984726544 862493792 929042728 230427744 964715106 278509300 513212610 737355679 996532913 706840138 943970347 21398101 656509860 113106129 762975011 676560675 837576429 651347681 878875138 483218225 762315615 834454943 842690732 938431309 938752856 163711587 542731723 54733656 945017458 252952567 428798734 382325020 709451229 108182289 606991822 499943904 613162291 424649106 491414847 510188359 546764931 399537784 903382179 341099752 896038212 548609327 987258318 680797864 839858026 225868942 251045880 531403137 959309930 109031316 282085132 282320577 413523532 208834085 583831288 144771041 234940576 671701369 703193213 895490644 977986263 657252923 708658356 181801893 333854160 380465971 823366867 752184430 999347957 809938331 980062527 246042818 522491121 852111117 876067471 520541044 583335253 712836868 878339539 58300553 334502264 49069118 241201214 478097091 638298358 579835962 922376006 962451065 971994228 826948569 999580553 275577127 536999859 388926477 647420812 660512832 682216424 42829301 623471598 880404991 941516431 993575961 994923301 483999009 495334513 714411616 782840885 331850171 441679980 935090243 984528933 879667331 989950511 506330671 570786916 335246395 783782098 303128110 539833994 648314837 990986086 677106344 860531930 736574716 739746443 470358261 515911832 753662617 944524365 85994472 925222095 900577109 914343036 12941174 428516537 518697421 995142055 930938886 976479917 33497595 247404973 407463094 819110572 451787492 686141430 580004290 960663180 603093290 841453872 742978737 984210227 129056220 902092917 702731485 874784599 448458312 996372176 623614016 827094868 624666342 706506773 509688725 887793822 397972712 439545518 923087726 933768948 160646839 843700822 760571769 829726135 382101348 564691221 886450891 943492915 677656447 991924256 726325106 811430968 212986113 859732695 332576498 391624503 16346648 303162718 231811771 288288358 818661528 841063998 72539052 989340687 590089466 646982309 663761926 961436788 34144493 216435300 22746399 302284926 884481305 916859821 963205455 987901741 840822342 967145890 13000383 395209386 753394557 974241528 577735026 988045209 628683161 781908585 503545932 930608433 400718009 520502425 684638305 976647048 448875458 609542946 752668642 883247888 713102111 873328923 380596426 775533817 198110552 436604907 666277091 929881651 654422679 896332387 332403634 796028875 973339894 994103701 102542871 261632564 602437802 622677245 288289717 312477109 355827601 432472357 460836429 751310843 464684896 842682353 54917663 505156443 159467252 544099702 583482758 821843678 383358662 630649520 839149215 840858828 104537195 900758312 822323771 902466701 29120031 487381092 118741049 581289638 612926292 871741285 719100587 885922386 265475763 459011461 699293559 892161438 950584723 982871085 833832196 847505896 520383506 731597128 245886501 442506672 633860821 681093932 698105527 898339402 331945915 383971774 36015356 764343845 716703182 809375979 785637850 958267664 208422896 271570276 165975446 203434206 103605486 934024999 485486125 577567449 888426063 908970359 941609707 980108792 351665878 427883147 556965373 572675013 232334634 330906044 393214933 414653460 989733200 993015164 879253190 949338648 385484167 899098654 392920685 719548325 491470470 710128410 548265787 935796853 127818017 520713192 336834789 624664027 83907654 597359511 47638270 672544022 23120569 750303080 921680275 938416336 350398678 941105912 651764790 844946593 400390321 947414222 278863102 935723124 685480448 794785599 832963329 940470021 562984595 849445775 225108782 862887476 424146324 854301242 728605886 954306047 852755 262539776 527433544 770932509 840355824 861519925 377411545 560055802 761489057 969321366 569408436 989531662 525222186 897950803 858795716 996850382 120096239 161145796 689645886 934430640 418134713 971817045 393513659 461064951 878701541 995741916 827792284 906621350 761139148 857168465 723745331 978270054 358427159 632490552 20074794 382353582 432315557 707608327 848737831 898255478 809375932 907094490 183342585 866888791 746648014 883400777 247558678 350673127 802315106 902973129 222429353 971594032 928202400 952127157 837757966 842069778 965947146 990489377 598987361 770100145 938096503 943154293 193662072 979670397 189817112 798045359 546406248 955755763 981267106 987939874 509891988 640544833 303215436 832958844 46782320 483784758 37818212 951248448 425958780 598120241 736614470 817640507 78645009 398685115 330356660 964784835 662572010 902296932 79671362 420654639 178876553 498497210 101118957 288906858 956381537 964807221 364891145 637740616 851384088 862226305 132888502 756473158 584878257 715971980 613354797 799272112 53538868 264567453 495157287 694890281 167634508 522837216 40280763 458318814 912829987 923379468 784854202 791058855 780164395 891214133 900146633 983730123 238101685 664759451 540276381 603044000 90502779 850241919 401751244 899742759 588383055 777923558 40400093 905823077 681276107 971736759 250690924 429860344 975295918 996341843 712834239 878485730 198126231 778408867 773126578 861850184 797785884 897536902 680157367 971195674 150028537 687340739 935568949 988838838 546491418 745851282 806606952 848201116 446696375 846707736 600831703 963343231 412235119 990843349 324989896 805768158 863269934 927771618 120923513 524315170 718284329 833045801 129625238 975014544 710423770 952389607 129871859 497438065 286109349 706714866 995906701 999705406 989492999 999907766 914499262 964868273 152467987 175810842 536713072 999815135 57474210 758127964 292654684 648362567 750193825 828233583 194472966 371994603 290986202 649928228 93543027 111708036 109106890 363436035 504931618 818195576 66001977 383938492 629184124 801727923 700566413 794737836 740321508 952443280 812318582 990213158 166810195 618690467 205353533 665322592 80203598 298582506 553769631 916181530 280418430 398721804 562675315 719513987 879231513 915774441 987213154 987285720 522499573 574373079 774392805 972786136 945842375 981836780 357678658 932842458 485103268 978615003 871711343 935791279 51241776 408046441 186583024 965422946 151386280 898568442 104103877 610642317 525369500 671631167 324243802 801778009 630449711 732292004 659119741 710538758 128908281 450168125 48082011 844495732 761223564 931564287 804693659 871677369 704308499 875616202 49799242 578284548 402538324 983067672 862972609 956468929 809209728 877964442 818636420 876660431 719116436 945145392 58944808 517871978 202877710 923730740 295003176 358347970 872374017 915696179 163212340 398671662 211173616 616540921 149202130 976412827 948782608 963654769 5273435 142745260 767887845 931997157 518213932 614766876 464686790 843254089 472451039 999303639 427375644 906895910 247413884 834197423 466086116 573946104 45980813 774181162 8714011 297885134 926549368 972580768 946345202 973638923 287930316 659139816 628573927 708624364 828688717 844990527 568575737 969570297 743765541 919610720 72085960 460755323 457662780 973271666 212454689 921152795 206907645 663716646 532607836 857320355 920018286 920958826 376393198 976490288 48922585 74260603 919128078 940981818 97746803 387670249 236577948 591989252 218918941 818155848 910352385 945752274 339618162 564377080 858637560 948677200 681189659 974619415 730752249 920098290 80833930 988652617 249132308 676895357 731141640 890377234 327071148 911668469 288642467 916379880 937572508 971653711 565236127 834460519 749762618 751342696 722684947 979161519 323643221 971431495 890751038 944900570 790491004 842337852 751099807 780105463 103779221 338850397 632732430 658987465 55421876 660097148 358190602 655905597 517090939 602103032 54766571 124755202 187594658 852815157 306839918 433825720 87211793 774248129 387907891 815773684 923138214 965745698 709169662 767117318 403900889 627660323 420875650 599426536 520198833 821677560 926754160 954784216 799550398 992061867 134149662 201085493 699094888 930334279 619804766 944222714 268618448 398642756 879581914 888095164 491934701 936003126 227219017 527653704 97441668 495504547 108708248 479296231 683969365 881623491 299081542 530403534 539207799 806276315 875613914 963403131 958803358 968606617 956909823 967335808 644606178 964851405 432038204 544038919 137680344 567209487 701977630 970852722 188474983 925968500 683352929 981542874 872729190 964492814 303562250 368312183 112155853 323046652 362543648 944847134 211737678 694496362 385272963 918996205 353564691 701222059 2571639 14882890 620565034 775599658 232355478 773088586 188627058 584655367 768136606 989481569 714579032 907916159 237647025 700913232 740376857 779253953 824056674 996422351 685528836 836385151 441562423 880763479 573838252 811384078 960132671 992953609 627368710 984016455 947811436 975036789 621510766 782684746 763079429 856388007 612597445 811086389 400516063 711578407 742801029 749646526 555841439 673870036 10442054 983501542 905381963 951851098 548751187 754752239 930120566 953244007 870576418 971891638 10997464 79482970 32224555 589120766 330398528 610437368 287377466 536940769 388003091 842979842 560814558 899273453 554838660 925807119 536046076 679780299 709834383 802228163 824011835 920743552 931270818 975283021 791358769 826255188 924296918 979813710 665917688 958595007 335785447 847830294 172505157 563056796 58839269 595581798 986734287 999152871 205663569 456148415 111444215 949954846 432059265 730899849 344205237 838582125 424355328 859218255 429631549 434265378 913363353 937046621 285774117 399133954 826417235 836550542 356762895 462026970 212528038 797180349 513363429 795632175 623192314 754950732 97526677 469371503 408928084 699868529 170639456 526814646 108585411 638911684 47969703 797391407 154754061 537010662 538944247 647980187 553831177 597668625 74564926 788787948 480570142 846519388 294510599 981683066 48835119 410102550 563857378 659373529 838962393 911578661 580211651 882265830 345108184 819141794 766613674 941961596 152820728 200437684 383546366 621851652 180626523 670615430 212276770 739298134 808529140 814436363 227285301 656802710 667006315 973641602 739917608 750115595 995232043 998329314 162834649 347276090 724240879 894135365 408265544 659561011 707852001 881782428 772958534 883955406 101152252 800564455 880072577 934418563 624793579 904989731 818906713 863212333 853279045 920562196 390306711 957149778 444328102 956006898 206743107 317985827 63479118 549633360 300870071 340606238 439674902 745640572 421728307 515162809 581295222 588405339 240078880 300619488 992041846 997349231 101139466 897406041 942374189 959607218 586872889 710780851 69175286 630295870 193311796 877094426 58314983 133605872 459264688 742156896 573438644 954971735 854649446 935181081 564674821 825837478 241547948 632607360 771045384 849475518 871002686 873939660 366106902 704326190 284623209 682228358 509998328 921042502 428496688 574391833 625190280 782492564 919756735 956176176 182139030 982709583 916598163 973413977 702827461 845855255 771660717 988852599 67442824 965666108 600107572 684915085 268967488 765661381 558232720 861559062 97532513 633521179 30509071 280646255 294919354 490466378 203197460 599875222 60073640 80433693 135743092 857459522 143840530 764997756 647876844 744990539 804308465 824196658 213515482 570864175 896397644 901724724 763257466 868911949 294590282 935626232 614660694 849989738 662371348 828187013 939177929 943319760 874873808 875985712 902180766 925364648 819519814 902786703 445974821 788428275 388077000 653154634 354713403 796708852 715874509 949849138 113679695 715262255 242942966 942362864 347639132 411608055 311718703 697766087 143425649 159673338 764256020 998325885 376086683 490472814 160249341 642375853 135072891 326021740 613584751 652105453 561430233 640965824 650863589 737140345 358302254 592720787 31180458 200612468 645234443 716248034 282739227 679276086 139231129 362445779 961666651 982911924 26769024 704436517 506410891 603813503 736302943 824774502 967487505 976241956 372135467 706508225 522813040 719890292 62316108 231260674 821831222 854777636 289647082 851860757 506965365 635223484 227489468 986818002 177906454 874946387 295558533 573568144 161832430 940437682 551619394 844977104 430566689 596189335 481786406 861288877 379320634 835103042 861528206 951901020 508681952 589625203 678669627 808369357 67316940 584515250 682690717 947184425 246862506 835089473 658200128 991363612 206544027 306524746 552244709 793564814 994533855 996969552 475779441 947644146 383905005 608836379 33918733 329414411 531243359 777847249 486268696 666499553 693938444 974674180 518730356 523682865 435893183 713104952 530949052 558513506 526682895 844438967 588255221 823563754 377604146 391738475 905981957 959056396 542761703 566226777 867466292 921642892 309834392 830376420 256994856 935377787 812623971 817255460 8546383 292238755 422720206 677375827 477646782 493086412 38088555 378935740 789702272 839581717 53483499 719728728 746747523 810291493 548780296 762658918 274709961 462666450 950470201 998309647 82544075 353303441 800649196 836493971 327539966 452226915 872141483 924033475 113944164 295228783 731563733 923583943 454384678 596553903 482683170 555787106 206639327 685048872 485163934 510800014 118542378 544837997 190789285 911657041 167899097 290809541 657351926 774740460 201043387 349653962 172639277 713168026 543476291 876687974 760185665 845490775 499834917 896965564 97495606 869285188 421534403 799400439 632010444 761363835 363001181 948201009 785277221 935099694 496905473 510391089 891893766 913575704 135787564 618417731 56779321 879928717 275133487 940987420 427223097 924655744 824809969 951397852 940718266 981339021 327548175 726559201 89867772 167744435 4303331 541302706 691926966 982227658 714392096 985341992 708442348 891249891 927887477 984454602 272007269 343772429 837307343 981673021 783201350 804280196 614568222 648830186 210117726 910287821 610495969 634434784 275326283 995007268 668100979 858853452 828573798 893222878 908788151 937205832 86433714 443157553 517998399 953267789 943110562 972727866 612695321 761353284 827401603 986000880 206295160 236471502 862609378 986201411 487843902 535927402 271799707 320306978 444959966 753586075 263287510 594739528 783763118 981962299 409651764 836285907 714540699 822425453 349190069 682357656 210041320 818999846 335615056 792119182 661286810 974740067 112434465 612655567 604976415 897639050 116408305 923986291 66137225 543705334 266786790 280643539 461761341 532324469 631563850 859652821 266866930 690218267 877557248 937599399 290143670 929154708 794500404 917620241 264266755 333089543 544588780 870246690 231968210 879614331 240233054 593095821 97387662 210991789 851880965 965021701 350362623 451497205 883914748 959545930 396366293 735141613 131685204 198635093 372065542 544753025 347352825 517019045 522934746 883919499 651316742 956484123 743031623 850697721 434585389 655168807 79404386 148873029 401457576 978093837 123815967 444912127 85872513 691282592 555841364 625759443 667612233 736234208 887798693 977408656 162817057 883659914 715568547 958659178 864608469 921620719 650706206 890968235 254673808 545829823 629671152 862209186 256170764 427977791 47516526 295699398 918989601 969304375 795046204 925630954 698081435 913027452 521468148 861107393 495219284 690480216 166312697 700678044 280026786 311989557 949035203 951538266 825995670 975594117 687747685 898904201 450309183 973634938 646671691 790715085 539715856 547930134 40616460 230888369 494980880 838531398 91136746 98008647 76683947 432773222 956037256 964141144 960535994 979289932 60998452 243581886 86828463 846471244 476037502 510534121 239763129 636409140 535378020 918692000 544576062 713766274 50693658 442769189 758264188 787867736 896057713 949880254 997047328 997545469 837369437 982815980 693693982 881642697 352618728 677345892 303958252 380793807 858999614 868165553 506413961 830085929 243283598 443444887 323749185 802482752 95709632 763738570 800749459 847639585 487789456 964724771 607527405 707042613 811182242 971019182 245272089 930048897 295043930 789877289 453893344 556878489 869738867 996565149 400005418 729459559 737357943 822053276 953490682 988076543 199190340 316761797 443593513 661464281 177917204 590208450 735422734 761839101 961087662 968165811 230429140 648364407 490704158 920443621 594755429 700302624 690090742 979940696 829513892 965338946 726214403 912154748 632462379 689927236 516857490 743172271 238424357 633588651 224490694 842684859 523329332 849909125 643621919 841272471 681707655 994650004 476006286 572686026 935764191 943919618 656272694 992819583 240369537 606443509 503715692 597014338 740882580 867709106 785670318 895850952 3592386 637361413 180885744 323628129 392861058 671823770 631262731 819011079 312924985 426515434 209371991 797380598 924204247 948473873 184298341 665309654 426189148 596379239 461819889 670170308 451029904 652942006 256615760 476280051 299863268 706664570 648669226 859099288 558951526 970086329 235983547 824323867 437136378 613382969 38117832 998611821 991765474 994950498 872455762 983017122 774652665 812943258 667247664 673653996 48905037 476998896 242443558 544528388 578783086 589344383 89602120 413759404 771072884 939574868 434759440 929234221 337034408 758495519 663145726 693037587 479292140 620783701 315958007 374960836 141592854 372224402 213143464 822479895 337862928 902996669 705715706 845361754 411068883 418116718 696575079 731890285 386496883 527641120 845898667 876924185 291684234 773436756 866910885 947490884 161455816 622195116 518554755 544042995 124838670 647389595 830130992 878400836 84572634 444186216 851808202 865456021 989648403 994543872 943288889 983475261 122733596 930554516 322673768 375761666 548825772 725478378 524231597 602616279 782474067 964009579 928784506 937306515 5890101 280192199 490665294 905357755 317128709 652569014 559278030 784504001 47647880 863039367 954956414 978493438 552846754 794954844 756602900 772091878 485286450 633679426 493225707 775796849 345892663 838457312 45595797 724161477 509342289 708567169 761684908 774510474 188466257 770505865 906090699 953221977 815574791 847548501 598501366 603478624 605820664 944761507 582457923 713274694 271716691 970426255 587771681 638016266 595501653 876057059 306117695 578906848 855089091 897708837 602962534 914653246 855209742 868141634 549260478 590461967 168561219 843334354 872062430 880222373 711736149 862914389 855005708 972592198 152325927 630145252 897793412 967166932 517144084 523701089 367418229 574365551 613128125 748356333 566925005 872312472 394404712 477701774 378319489 466308066 371624233 894636600 446176224 562042095 848968095 955686806 811507036 997065704 834127538 838566815 597584496 614339335 510666046 782455918 54195518 136496215 122594506 645608192 635483481 833424180 245749954 526982890 960856932 983220483 109945914 309820074 95479506 832730923 52247214 359864163 583399522 611976517 885223306 915073783 547115991 931760859 831366981 833321672 390742762 812872957 716201416 759724454 331490416 920033746 249000256 770668285 274735160 908961407 274565534 341740399 285208424 418030408 664381083 937573703 548907881 780619212 628129176 907242908 706010869 817666788 229294210 484694044 646966053 680520850 50414605 238771209 653320672 907343207 381627285 843640941 537036643 780799771 866388977 981831596 578085694 894428178 567890124 961775360 795129996 798141744 936889541 955556444 100014533 417516985 633612490 636180637 461405280 790710151 738826451 817514258 133011334 468946950 431180106 441029776 749418101 993436918 988936429 993995766 577938999 906334811 762046535 786580742 2526231 530283451 326320587 686079440 790952590 919227385 374885123 628539691 584878123 745934789 136110335 225769450 859667331 904163428 226053427 295247031 485553783 801900315 372940067 431327436 442121020 542897065 19558559 968803988 662892702 761043427 99977250 648273801 832782105 935302793 217818042 595054871 227169430 944441684 898544214 952240396 927120464 949315093 111356704 627963669 895181999 905791669 63941625 266004509 79542745 944239524 831930122 920541131 251486653 875846143 581098232 696782790 813931296 968925729 535308889 695539872 797530888 891972705 99271210 873410800 394061049 490515553 526280182 883019628 907129473 997932805 668143844 939001290 713244464 940018474 291594747 433114804 294317916 380175167 880831944 915475047 298909761 487139545 258456269 307091429 8425507 912383639 58812869 393705999 193768242 549507470 451364867 978638968 135503329 438622076 36540250 476842335 535684868 778492116 834964017 970725437 70168915 485961153 823674203 824158762 46161091 690407363 811416652 832929502 389122364 861474430 644541708 772663423 628972309 871863124 876564026 900854435 773878331 992176262 355949178 790884843 309936532 940281639 545786834 549979287 249948590 543271489 534991512 885115839 818797545 922668694 543481193 872308194 486135924 931231892 584371514 707901235 820543347 974612830 671065562 688141850 265697720 338400786 713262881 726337606 845440453 856386189 736355012 984752294 575434620 964510732 696070145 705561753 821251827 927503283 768220811 934499585 645019344 902180583 723808828 990041835 366106185 868861302 710657734 838963901 99183004 461476591 679914584 884441113 394013689 519235903 115437435 257991828 221005652 800259762 86519208 280962823 328631307 819094959 754253247 813741867 92160039 763162729 431761707 625171035 228797331 836244864 904665307 941147096 607501580 608409839 519737372 927486940 891272265 984863450 991860525 992645448 904025949 931644438 256304176 267046951 839191443 971343228 196364515 727461393 483469457 554214379 290484360 489755598 126993806 843651804 249881092 397991769 903267778 913477989 519148778 661135891 437589705 580601984 645061532 900717929 332170355 987076487 72340770 617914013 65776469 466959157 228452107 323598699 548214991 724055085 907920174 969920603 542799708 656783251 453482568 593404437 239799441 933656951 227082562 309612516 541607634 867000026 180230914 659738654 625524823 687358231 522381999 766403729 444568346 901809096 443596179 854616231 743708063 896054539 155259932 368900129 418778533 911554426 598084169 850566775 242763211 892949335 428330366 625187311 115879644 883280010 484944974 799062623 657859788 910215014 998581540 998609506 569390176 591779888 490747265 768390462 617093365 990490349 355368763 690251687 124379963 675507633 988998418 992995244 210879535 939306855 410482340 562408259 916984182 938722774 478443471 548661486 573910155 910552447 65949603 564818788 225937220 953507796 800170225 988991359 862963147 997356700 491669813 554174999 548791254 921942518 352412836 706235738 314864803 642444224 975059028 998127143 541474216 660056330 956163561 978296060 311931478 571653764 896769636 910881088 184551184 231167281 798380526 810499530 714400894 937130920 366216522 987374832 823642276 918751635 890215190 944116009 858364158 957320687 20861842 510543356 439787882 740549328 153445922 616282332 556987639 934908479 75594600 501891841 364864034 746076655 498748187 946034096 931574762 959873015 657724746 758438644 422050482 865332737 61379824 625157324 172472475 561005534 82774677 927246517 627515174 849196477 111028497 519871655 822016523 948352560 298281461 573306745 652809682 789515035 873360805 953137444 773207618 809287321 124618495 175960554 19654241 996784352 673629409 714303055 265758497 536176441 728200781 866061497 688976954 689355133 986355602 993427248 517577480 660946541 646738150 702257010 849677633 879111280 160590084 685039998 888585707 928936627 547452659 700241368 64991962 873290680 770034825 987170583 264282009 302859784 787357830 834884781 275278990 567413420 413011671 733734852 598534720 947443713 437456187 726481150 267413804 638693711 525275064 751364862 733905066 749012510 574710703 610045464 967397878 975526773 989444370 990332403 911819577 944145472 202340788 732143388 653823359 918294107 119564327 864424108 593845486 608215662 73794499 698974670 489588195 850277341 955513427 966479611 714030206 828535205 181624032 780803766 57810185 582208073 903312792 936435615 567253924 957551863 28407524 763018295 751537918 970966567 203567571 959734186 760254224 837058444 748913584 763041669 701905158 708242309 878823771 976696639 98799703 942368747 889559314 979879017 304459059 917861186 216837002 867556221 528129603 622121373 964447155 993660285 562323833 924418890 964131843 986791270 352206975 642399149 175317660 784913213 693458116 759406615 218718616 796453191 424678857 813918655 30002443 505304883 989480480 991367855 335909041 716295506 629463691 997389169 984957022 999577737 313983023 547862951 639700420 781123907 733947740 896468666 165297409 409384810 116481144 220806462 281762926 296330441 424525955 553420386 939895979 979287772 710272348 806619414 340239721 525774949 126695974 482939036 128932093 233192616 321828697 759186999 787851622 890849679 986596002 988619532 920403336 975250230 704454818 961566785 824796630 916831273 136180098 474130600 212033329 461168620 166021670 525602730 466073713 494598502 576090418 920441678 977753666 994133680 8942599 151253218 951091686 953319465 375584486 631789774 415231691 737329960 265852472 589685078 391990230 566820115 6076903 501151663 354811279 448761545 764171308 847371181 226594564 701535567 453114004 762937209 585775856 772716714 13881929 76291883 453235450 925390016 741495038 782027719 962033410 983925654 755201655 805324860 317591343 801565569 255504493 616917533 986274337 991216480 906132510 946580473 995417972 996214582 227645460 929422642 159331065 344587261 30347502 586890094 855183395 886030406 106792869 969602630 576825083 826387339 552364606 780144023 208688346 711188838 286519222 818913397 38142788 73209730 364490241 451479728 277003555 377787451 192395557 990863826 879362138 970109351 452559625 777002952 148918722 537199800 114084745 788750014 284768140 527907595 770176890 792356422 147429706 154335771 445568513 774704965 150675525 674587198 788416723 903247730 182465295 654166421 313131769 741978998 441944159 624759565 679630256 683604797 562265484 804156273 641668386 990839748 135127226 687573990 298241828 698329322 740393803 777720085 814286239 853781173 806206211 927586079 203067937 862989548 119112124 851947731 427612569 722801378 857693801 963232394 395679763 704882145 763222380 874052968 591666897 750766087 233894160 469334966 918937936 970536583 462697118 502075372 280710262 810691436 348347667 753003031 335288993 715320950 509147199 752113284 436784801 932475247 638659581 825727076 819142436 933368963 805877728 871738902 752253663 811443555 252247255 591747542 987598065 995097431 923606338 962322826 347222538 384063576 757377674 886809472 433213609 590779558 127462837 576297573 882167262 992004632 25589443 792369141 9702087 596918366 961432821 966455339 557245371 864020206 393795018 722911386 73681007 747760607 150414751 673608741 499895010 898215842 366794816 367590267 837062468 924770081 684155012 979339625 339297932 757421318 967335950 987982610 186306031 291021466 670193428 937422692 459678253 849416267 489823585 783993897 911843860 944481129 250289927 466322680 864113573 894147382 814617503 907084714 162156346 763845330 336556475 345920363 748584623 993291820 351925076 447442558 763716265 767639857 464016267 944019010 919694256 959257562 153175581 205592568 91370528 167383356 9483980 179582252 913381577 938752283 883102151 910676441 822338767 844959615 944086675 986356087 992566485 997001537 705602475 918021694 146468780 320297979 771830543 997472302 330562119 712920479 650883628 782524238 172427475 325812545 284395872 327534131 509677216 985157629 475613422 802590187 998740898 999701430 309126080 460724119 580144717 983743123 997372005 999288693 967525173 978502347 532384551 865090758 292241212 866622307 577263685 722910249 163863143 663048755 318367372 684845771 439568365 608650297 522337085 930631770 580205426 938114289 693379289 882000747 566942322 876612362 249486337 975460199 10601590 23168579 118136724 930780095 524922195 631469698 565232892 802232365 189589987 617149890 353991230 475847690 142094617 167816311 453329112 756658333 385340048 913279088 132055127 381047269 760301767 761492933 985713108 992329937 566710703 995944745 501676197 549234540 576006667 868358430 640126979 985410688 212700770 687969033 748164654 870023917 515854403 948680456 374563053 830428990 12686387 650373733 93588707 992053867 791294303 948240348 138493235 480195195 322295086 642937955 646887049 921170639 448198538 452811758 974402762 997008302 60396203 558900189 353287160 696457430 500777498 712633705 550211099 836220973 21198044 351620468 605937803 673370858 436590886 654885879 461770317 594515654 959208846 978643357 403077085 499671725 875778890 986713499 662354757 698680668 309702291 690315605 63504099 236795725 485379153 596099978 289738504 499721781 501755369 651551362 635637389 724865343 865742543 977032006 1358418 530576684 867684024 968114072 990148511 995378440 1997675 537617705 562152032 919270639 832591806 913902509 995253703 995747827 595763262 919949584 952892824 974888423 262841792 466184040 214893865 499303616 868363881 942792892 674845894 895853316 659728877 720134951 838386398 925067069 704649972 829696183 387678411 535522558 557421943 778516478 253083023 947793155 863610924 883595150 680458911 725377588 986107701 999258377 645528519 807170627 41283683 106685706 878308154 906375688 612726073 959792222 141944731 344197430 211317682 840806144 962212833 990622595 906053996 922782092 688235904 930142736 821495525 981091622 420795207 558341852 993347037 999352810 321802517 892623415 532739764 722088008 280391824 637983055 342050788 641912356 353661971 785843559 545567867 548959537 178296320 354913190 726040049 794827008 378488977 649309646 962726233 971950342 716731103 820262407 627916323 918249863 339990367 483938092 782001937 967629459 303267089 449105402 450107509 594996908 189089421 298384021 502986866 641677383 373778415 793223916 210893482 480301755 517793183 962207359 269617219 609751566 649317607 652587918 529417672 768655792 606144348 929873209 577814480 726444383 279709819 655986435 298018918 507850058 685441025 803405221 799577445 903626679 298545454 396683666 254521892 963921747 746169719 992077850 247603827 313442947 800641642 912278678 769156928 829191092 448445785 463863043 10016695 42128515 827866114 992661432 12153629 169390463 835119508 912298319 403325850 856505594 645408997 679477882 511016520 976013394 762689215 848628356 197687505 639937006 874472695 945089443 698072803 966441389 357029603 999253138 305956989 431596781 934445015 977184158 533060627 685702109 972955048 974603614 620231541 735638419 584994484 988539888 673903318 764638732 358589054 808371990 51803217 128646517 617214326 634298662 845095979 998873409 668245812 874608187 902798120 912511954 627582959 662119326 207964547 801715995 420464322 447954917 97593598 313952071 394528341 844175817 399286329 529855097 40758941 753937457 544103315 782090681 716611105 736990614 873895318 916373431 307812685 641409868 958766220 978551683 403333372 410870760 504769510 895245271 820200452 858081222 476592714 780463875 414922302 714681220 827312936 859388012 325182073 720031110 370023738 818292291 583737730 817191938 485044759 785378630 13310931 416237064 289894692 938670675 166157184 247891748 567424376 713768810 174029870 368803601 70741045 206626094 498651970 838680471 641166044 697940506 689760422 914091327 950402737 970460362 274146894 982200174 662560619 892689915 46093092 347009113 652572924 747334529 318864302 928302883 185184794 759505599 587991113 834516519 105899966 840134262 144738443 827404998 985326752 995401706 162820362 859034270 965422235 978624349 915295821 957856435 98855367 478558118 329568872 794610449 482695507 756687360 728471561 922032609 633513408 753369009 333734663 534714561 491943929 701036454 149595401 383837993 443606862 555599065 593658209 696687417 369995875 906237584 217664509 812076014 908873622 970539015 297545791 806872937 757745636 798327690 347748436 497343992 502377338 820132401 644338002 869366509 289410524 753406868 236957992 490767154 623085494 733104161 502262733 697476712 534445421 562634586 894482530 953334693 248830509 535871758 804812388 973421134 157573342 781724957 771428832 930090859 17424461 543855467 406749351 954068734 479472542 502245956 775917502 863381887 300982527 448177739 421407309 796004522 62507747 580682141 444318296 733487376 502162108 666312212 34873037 289544197 570944704 956993372 111075665 426378557 52638726 816402790 73431548 413879987 403724001 851970756 749300708 946007680 686279076 874349070 61288244 295148634 296650776 510727491 118400182 153970677 415409640 467673470 574195674 914763397 47441400 124049089 914456647 967820217 334136295 570039947 40265204 244640178 689096244 760969843 585798121 724867819 37173084 648275535 771667284 930665568 317777996 372172560 132981955 143305589 401425658 929586459 799891917 896282629 858052254 905433363 593416135 644178401 948709056 966920194 721884501 758387733 583087930 761033661 457147566 483379717 803022145 891948123 471155762 558018308 182165850 601878444 41102717 854075110 870138206 896206113 194767625 294918969 425821335 923966941 284014738 601304797 966247259 980572308 276016790 490171253 664884337 718731154 845262589 897533561 980827773 987465080 344059037 474368212 309593642 639689320 365794626 506685501 719552297 955916516 353118904 778389245 921209003 984483481 969758964 971774183 419961976 808277209 428486212 996080559 736778729 934995688 297657255 339731920 366926200 861778517 214401868 649618069 105400066 986100099 400115600 402080628 462210747 872346042 29595161 921634980 539931965 585425398 628078182 867900329 779410991 958095465 503261462 662152069 69762252 208456264 528052077 939747842 481776413 906572170 432058624 907250350 971681473 996762937 962835393 995287052 910669823 916247996 829785678 869870199 237492984 902519640 296909878 652667871 560410228 830344393 546683974 552043268 520017981 589335343 553267789 716166562 191487706 891967885 303821272 530157837 253555856 502120323 21218375 601596609 760249720 891807091 318488336 675436766 174650381 512687301 311393915 449638834 121344264 730337709 702550202 907473609 773239195 857040221 401485608 574870118 193219259 322506771 186649278 706332863 672348179 910089610 522915507 955747203 676961020 791387026 233448433 586599742 623349411 777139950 599837651 667421194 593096513 805502744 642857297 958286902 739436091 795195553 106245971 789721021 92276394 977273723 350193186 600724235 755880135 949454334 193844366 551348412 22345460 787258982 1779568 123494144 822373855 949838334 951488956 952548637 975773053 995483180 275216848 738669198 446456134 636359782 621040782 951416969 323876094 673426315 898726238 966341689 614157766 976533307 899471661 951512392 900145539 936215807 205611327 723241488 421447235 925444062 999286710 999464029 303397853 624614406 535135913 693417699 859017203 976262677 540992548 745186037 490238787 857699738 866260666 928426090 827128527 907691909 615329279 668504951 128810120 894214205 482417523 939783750 418674851 713006832 162495300 611086667 803262506 895143081 528166682 678190405 288749128 417530646 657077735 659693007 557727626 734472338 189536799 651965655 876919089 889644806 613200774 917519735 968080948 996707351 34734341 726056194 619099156 756974443 295182111 722782276 298263505 453939103 992455966 997198755 594397364 778182149 425813145 549301692 134991730 659576315 715881882 908312314 496930577 747206438 741729802 896734491 705071172 765371445 492525476 789568987 981839401 983860320 886376455 982043199 104717756 762757135 93897577 558970563 260812564 294893007 506651692 999167369 665087781 798364083 676626423 705027856 917761659 985504676 189311719 649568808 856615912 870929701 787525241 936574689 707053274 712228633 385052223 715050970 571852444 725477547 581473809 673807386 365062455 974316055 982415227 983643471 727347125 868743111 103161338 991911751 401003728 873321371 837139800 888539648 634742025 855375002 125032517 576128355 904031058 986100737 110015137 872042250 725621868 864385060 20128254 722905012 172592031 471472258 697424061 698583829 282451474 531695531 640539906 776137516 905873677 959023564 722536490 962638825 799590886 945311459 854209177 878633052 227656090 975662497 845296021 907205481 984240207 997122450 82199436 135416852 210151108 992730175 400927932 699135446 562316159 920674958 30050286 177442450 701699599 814961206 562894237 608071548 550619891 989608378 923442212 995218536 728100045 934283182 184224116 591532464 925104920 999652349 323338798 564829569 604282208 976704562 779837951 908891874 765832661 852489978 62727110 394845128 450873391 712393678 461178443 590855132 920769477 958191553 264184014 897529992 509366707 589664460 551465042 685558438 70492258 908833505 564693871 951310022 713827606 717682132 954275046 963917302 657648699 748619615 815892097 851473224 385619585 641975416 461417249 849439423 353040898 364763952 422597765 568672380 891689999 907465105 635265694 943788173 214705499 910750648 325690216 365891080 837788550 868864769 399041108 643698302 606251203 798540611 741229417 924204392 871444604 872064133 944609127 952239357 81331089 855534450 576777667 712565045 567748624 805985002 491072459 812842873 686722526 916500883 581952243 905132756 660976534 875097381 276927276 493726422 697954788 793562435 431618311 948788834 226217042 632855634 386631576 686572138 712465732 741802955 428776178 524171522 893876558 909099302 174942582 944633316 286592688 752922572 218866643 258513138 684275773 726114984 157583874 779900614 956433292 983074866 475610518 766070594 146344139 581250957 73634822 597056548 450257432 520697520 376558401 911078573 709537843 839521215 502928153 615586434 981145727 984001714 855144969 912112244 623494088 666901059 768266164 929890320 334147539 951406989 545479201 717784273 186855115 743098324 101582600 893670082 265676890 548735202 131210010 888567763 674789697 742400964 539069512 721272230 683480755 757718918 348622725 959472513 990189036 992685896 142826782 897045807 984611763 985835728 100434930 755739407 874908819 968431530 94798399 409837923 108058524 252306258 563406997 587560204 720782395 822691819 78477682 805081208 640192683 951555389 763161827 829689722 379137824 973725385 502582693 531524844 720763212 780054466 918862153 957180795 413947428 562629508 193636939 698936187 370773432 928028830 278233555 560870860 637274406 859155915 454019447 596745293 847502669 953838098 728465039 728913311 144068844 598195788 847525843 929131269 590935947 724633537 435997765 681318810 505082005 733617715 739062965 897775805 393720487 676314079 927936708 956798559 717934472 768960823 492720646 768599724 767567376 986178253 718885895 863547989 515006922 916285900 630391032 998362143 727948485 847722328 698854122 819316098 251403286 874895474 139083724 866368454 419046120 473044106 783820881 880772958 580676883 924865245 488343292 766469600 749656249 934012503 682160490 822735085 842346737 909242872 737148234 814489373 35971779 349457682 651527373 905371062 981463545 982015860 891802892 974889819 854904873 954685576 833740873 919494587 128355088 538262405 921433712 966941352 40321718 149395856 74883716 475007110 585241270 667447663 824840999 849501774 794342186 954764306 12014132 916480257 709484057 986717199 844302130 912311026 362934164 545330962 333262910 829710884 293672877 346756984 868534777 982499664 217642584 546817277 189518564 364673108 343989050 361624243 15628681 945090895 528083274 696600760 94384436 992553021 505767118 696603281 942958269 958657892 310371589 806826616 708178363 802568014 866679558 962480210 775360655 933542335 285150918 376830877 306433498 800031148 111938954 299211842 199648928 755936211 660569440 798142170 322313402 532357875 532780567 763312267 460356124 778945893 445962998 888280082 776628730 956945155 277740313 635235618 733512370 756175959 278464224 768827625 146400276 827194271 489590896 861190767 734934682 883758629 609764352 891209773 972035135 995623971 967520079 968805247 676255862 748250881 967001710 981226971 973580455 996545252 507118386 894646406 286585454 784615892 913585541 961141156 673100623 849715908 501273729 859006269 705135078 904851322 860721134 917722279 207903009 907970094 996596093 998537798 71584480 914996168 974242496 989101808 680117210 806290076 969018518 987881394 324762222 769534305 708293496 878008873 253150731 724523562 999975462 999996912 808734121 847340921 935071370 979115869 394999483 706129411 945636450 964561558 926727603 938691343 320727886 554624557 499768344 614086717 965910579 983570537 305674800 751566571 451809887 637504352 399888061 888287880 429230346 997972509 943444123 978001870 948353335 981671076 910048224 985583883 930604302 962399677 865710404 905938615 996695613 997433640 838215223 871165194 278835820 652934725 775554830 850051136 259053584 432621037 842144032 906992480 770868171 904716918 62272342 757987056 664676831 764635984 365507575 896051977 601654798 727640103 780028361 950742015 973835981 988971761 361135585 504350345 689545139 870819688 637546203 789822887 883112558 986410707 383265199 939023358 958484006 964424124 693428050 911831512 385471013 991417904 489395259 631323472 880112875 922770599 887917440 895846559 410306406 558752863 177552370 971417287 430848667 480787393 550659044 613195633 701942101 704115894 363916140 383452234 327859421 469590232 131388720 147075441 762832690 826513619 889967848 989926854 911084363 991826041 617806924 856725680 581070282 817132585 845616008 916577457 89612275 590419761 483178586 490677576 170372253 884556326 292725647 989725924 990298994 998241509 631359644 964730875 504314674 567365330 873457142 897437477 473501914 601613515 20120939 218262270 661790924 809277713 846357269 943241014 964753782 968364615 638174979 844249002 533609654 652899484 920979689 986165014 865877677 879853473 674055533 998935359 793481760 983394578 947557650 973585969 481221349 962900056 345445146 659773249 906273446 995403570 345831586 592103597 968753590 975295745 987692606 996620732 501310355 899291641 806771437 948639290 275727674 539617616 832271924 992781217 410904293 634246033 177003248 379679778 370980615 411260216 846864389 847396202 887388255 901624453 9810038 653545658 284277899 321545768 846677453 897598170 112643717 756699842 130868486 671284851 82176016 996515141 846290750 932128278 298907307 996655138 670726901 914317553 648037728 775456209 639692239 834246244 427480679 695153244 400017014 684799802 250328693 748657447 250677295 934250695 90302240 480703984 912529531 953280617 733125988 831645974 264461087 993510737 941792405 963023611 896807575 990105256 347843763 369770723 717055475 786413013 741571852 862897393 404141435 884282801 825650838 865591029 637362891 887765198 235848812 462134567 172052251 706232815 334382493 619539628 944158546 946931625 719484477 844382220 922579382 957538635 748571818 901249098 35460495 141699019 148330822 295909872 975462555 980217605 568441227 640133503 563187071 768299046 987862349 993956933 656549381 871300273 336077392 671753029 531469555 981938312 915770906 937315684 137738692 162385616 69917045 853404359 445978207 749208496 478902702 610245999 638933146 812628774 278887156 970816105 361814135 627407357 638256017 776368297 844251162 873760631 60588845 365103910 160311281 865675745 805116235 873933617 42654057 458738186 108267876 286605921 204465592 336133883 408696534 471770271 358428887 850747986 961490560 998279909 413177381 833757510 5326226 576639003 989894540 990897444 871215163 985352378 591874432 699297143 132545104 412605908 484558315 940328535 632384228 782504923 388589200 842060850 359595177 940946467 764112717 866219577 637411549 754306301 686965938 782580966 752314069 918255795 808291200 925929954 978230485 993255251 698645633 699883951 237065067 774179561 881598280 891880103 202902416 324981257 511260980 683525286 122564044 467630448 194987421 425774254 806607182 808533331 731433834 782527472 105322252 579562297 903580200 958545297 896756170 903761286 682907835 775802031 864505724 965861230 978850639 997366668 454030359 598991868 36426325 217237638 828128099 992916020 421094267 656652056 828128343 961462025 676955294 737396150 857187796 991613845 857839889 974884724 333556834 857131435 637063992 775610985 232734064 452631282 214120653 603598129 431912065 982698841 229020836 979265948 70609239 394906392 221835463 525771961 775321871 895386934 746043270 961246387 122915212 721029924 291365748 601366229 453735736 827033391 465060707 771620432 659465174 750661733 330590621 700292547 854580629 958300216 208336393 420937864 91851692 181000434 491073511 585905328 350073611 462333587 991700417 993188552 173368124 698155186 993607405 997504740 892652435 926622135 123846462 824861956 540329789 927908543 141451136 292026991 910046354 963003294 838274780 920794898 996454261 996507145 645646919 970114520 672614325 764973232 741273596 980598583 417256648 469610587 582308544 690862645 356814491 654590743 893747868 965714862 701010000 914265798 585842634 863415590 614577689 835492908 101351690 556683042 196463288 750376707 190442011 390931496 47310536 313511493 751544355 897327844 278682220 782452097 177573702 285013513 814634383 954170725 278025460 893224854 448895662 924556045 905372907 992874457 788647435 848027312 197934877 596287624 361019309 890029919 792952347 974460290 629085215 700216604 649128394 924934413 13412128 429038177 682780017 713361612 80992624 839188344 760663168 824661348 547857752 807678085 657981217 828046617 334979077 388344950 845842777 891816396 682332041 699757001 182682080 852588004 877910691 928867580 2476466 698601984 271295799 768126017 646498656 967744372 609729647 625472509 876242951 892857838 26818195 148710714 111704778 349180308 394272158 835413990 74729354 491604274 964467237 973173354 893181436 992764202 94771535 783071960 591493870 937526260 740539987 762873504 282827268 850939907 96644430 713388400 519750082 743891509 682024452 740548055 459578665 812822501 98991816 560997776 353257855 914296672 563574897 882019580 68115653 933852225 286704825 728529389 64589134 603057303 487657170 594641094 956979118 985152895 245097085 790457282 671739062 787674114 758192189 968914826 135165837 465548288 755180101 817877168 216029114 407083501 587775961 729187574 175156269 223816730 783873161 858879641 631471457 944616075 356501674 461298470 636021193 703486098 706928705 752289468 974968901 997038887 127240001 216485591 425278644 850070410 657813538 672429853 168667857 694682745 249663825 644711585 601998757 747469677 490969699 765647270 322262041 536164208 961603140 973898208 286351284 431146387 614427450 912596407 285787742 822089589 314723645 965007224 577075282 777674615 718974376 808576299 287124604 379598081 342248769 765862138 644949298 692713203 720991662 960086760 541321644 707522947 966065984 969738606 983103372 997736654 724783394 840963917 680199208 772417017 111235943 768200727 242574791 799323818 803725381 885042741 132802909 273548131 277540181 851133244 402790382 649714659 10190471 722168219 130914286 745564273 98449982 443426777 133028790 249325548 18483395 536670001 45500438 358954321 626995563 934274482 608992424 886769591 522958151 996041584 750833726 875178725 454652334 778232995 117052132 382660432 665680798 995179200 949958947 970475507 213826345 376298008 36158769 228520955 946766231 962182038 338207125 811386465 926802078 989511315 929706640 969720040 427096759 997816734 103290409 912841843 913260925 971027734 652693949 752598025 954422448 960391080 208748020 353713360 14800436 712740652 125563898 307807752 40847845 559209408 95130347 213133820 680314735 957861315 384050648 498522944 228318531 310379823 460866721 965835266 363860894 761012374 418729782 450399695 464454083 580498520 95125828 537200780 797721273 867398807 415551391 800121801 343340470 476915291 836319362 840127929 841827991 986239784 513173985 759475187 620099762 829858697 808373241 972187087 666361359 804671369 95841319 166712493 297693455 487304143 616813881 739287155 217667668 423076856 326553599 876388859 581711051 673894281 964614721 979422911 368598807 780407715 5333150 382974107 732887633 944031042 329015484 755795485 898302092 925095166 570616230 974891550 216637542 524194180 390588770 722789452 671029300 743064133 773777715 885875175 532502157 591045960 214798820 223524425 58268472 625668529 622532122 682272643 874960710 966341793 177127987 292888235 996592403 998158836 403145441 870211527 255459814 340210846 281939551 606476904 321264158 809460937 842035134 904181797 209813867 211119271 771143115 996885674 22723626 376042462 866476650 995663420 779555695 940215971 238546997 750728803 424536405 993173194 695746105 813292578 809812657 983449788 481479640 947777609 229786860 733503667 541120389 619862522 544210549 824529851 544421151 817524615 421014556 903838956 29097154 458537936 128381102 548732827 164186947 260915143 235805813 592966913 571352532 945164155 221863165 856094982 992304206 994472890 651871854 969202708 675654294 957418217 148020531 287058456 883448295 986070750 944492184 975154285 941928294 994215911 92311295 349665506 38169564 322643496 207209597 775546508 773145068 897250092 228236020 265574829 357615831 990606951 263696886 700026757 303886464 453913490 483911062 938258130 999258317 999944680 505710264 582300460 628268151 762551850 392811568 611009923 129516190 416820093 283416525 539613896 135620791 807899854 108747979 902459130 24870815 132342190 919123372 942644247 50284256 707799267 809783327 863355825 700106142 857575531 580077818 921118297 523572337 984096116 511153443 676414675 193968575 302532838 760390688 995693570 744062466 913374782 546388449 895116151 104872289 679900539 384312188 443889651 283358669 880003469 481228149 904725655 945772859 977043587 222305786 807391585 734330198 880639325 444630967 654609352 327286853 867319392 940335342 968431027 142012352 495115495 287145794 641976100 702713776 723010650 992442988 999501488 974398156 980964084 853369637 987593700 285571371 920363765 290135506 868615010 832776949 930382709 159777000 622503368 748837262 827379328 590342616 766605607 854888891 861693667 266259972 452895536 190440335 823633694 441594745 876283425 156004526 200820744 788810982 995428677 233999528 680633694 90532034 692514412 350660944 361616094 423659718 478748182 332077023 374983542 105518347 725210769 369962630 755807847 247356576 774962252 821194738 826973031 821736059 925682802 519917723 801421311 418522408 486810701 188765972 667003827 2662367 121785899 38019105 261636774 218194258 646470211 185317759 350052293 28763021 48213022 222432168 311087265 97117894 103656776 348640913 709702346 144300449 211264109 722229424 863108188 898679296 913398699 612716687 955529406 629456992 928026778 459212533 503860918 157748583 888136627 577530573 616172934 396041620 998645045 450362725 931341202 176791122 725636441 211838676 981986283 963055746 997309192 34516707 773186082 276594618 979913477 839645563 951138990 859069643 946398050 546486626 834411925 748967999 751741907 553174409 966202992 525213669 808157724 811704672 883887881 987198335 987556064 127996169 936967608 741027498 981825577 759727852 970287879 340997831 752196486 538022400 812869620 429153833 709274428 460305621 537922550 746083501 890518171 785047226 957842280 629284345 923205366 361671974 895475944 524879701 952183434 980427071 991044404 204650974 774998394 924932160 996624033 355812646 756462176 957252627 964217203 478188738 611205138 407507997 850509992 2013130 923540391 504063227 513827901 951952183 982763144 580273075 679583429 7614195 196330123 376551814 984540365 600408487 849493518 555291887 576010505 83000146 137422397 770079718 822152118 656279401 772427245 864488310 914429172 141918450 397460332 321474122 589275139 149034333 850964081 219877510 566130351 707767288 955317980 988642265 999679391 104277377 921200883 235386873 311195968 366237532 694873342 556649468 867122055 875871452 897439428 318069782 710421330 620726599 798949119 185643075 461457403 532628723 589477148 155689341 208197500 795614471 989732360 260888033 320859463 802657971 835591937 786382493 888858810 826107904 908311259 134849838 925460926 947085411 980983525 760969612 988054347 230778042 713334437 397128210 603256282 985808469 997708262 363531732 496588966 27168312 606999363 442392936 727467988 628934974 663216636 163209195 282249074 748320483 811174789 181404687 693699937 465855350 940024691 147240358 957160068 865951600 962973116 745705859 991059235 179036993 904567766 260860232 900902313 998098552 998927694 838923881 883199429 285115650 494480422 735261148 738926247 27932291 839175557 906702556 983483496 889730176 900605750 925813464 954583655 560593618 730615483 757508614 773603311 731214155 765143058 211108308 293752793 663309596 674114353 657174627 684404696 811040399 967852850 361051404 777136677 633084840 929228524 53081502 230358492 552255142 713037399 482621456 575011889 857087465 862811134 913711891 977805450 900942793 951229001 899342126 940435676 638979936 886778144 344044968 473011157 231094230 847980761 721634377 859769857 656318029 715607799 212629873 792341290 672065885 919726702 917766126 959989612 450755007 954137304 607301150 738053421 94457509 874009879 525257758 928821489 780581814 915270013 248306558 664304568 361006260 912484216 164515748 581246866 301582238 832775572 523949492 774054790 385724003 599906493 966165768 966498525 307832136 600181085 29133922 815409974 623854368 969273004 51083731 203930535 115032174 644326321 547873179 847011469 580390969 633935235 414792739 496051778 642460514 864201094 54405108 177867343 258708180 397198400 763592036 848541907 433553023 991298179 342652697 385468245 695574161 885347731 102460803 393859276 567188619 740340617 444817051 789925842 605694907 971660695 415058007 594620161 969631476 979654553 595440251 943061654 170748755 690060154 673885941 816648677 929070771 942924112 119820415 647681521 356518496 875876478 321929656 976367594 839391604 843548179 477461781 581172311 629086712 825232489 168425841 456290497 922286586 974244715 374958470 769696650 516322112 560735636 678967905 783319694 335995076 407177675 135149842 351248209 326887561 352648664 164953014 193370693 480085474 981705507 635291616 657203317 28845364 429809113 252034401 946821671 937427982 961709396 664097460 804788704 194121880 854368559 440532916 739437466 47158632 375491472 120535777 788387563 743355036 846682254 547725770 832399039 612450289 848934860 81588708 225293710 693486079 825225335 260872334 749744542 323788428 934102723 67418156 144527860 420769371 794885237 229237850 869033054 790931704 826339411 131743198 191205160 511294506 719518106 638398040 737754506 873300337 900416854 344118189 657417289 766890524 951133155 277293597 313290278 410336301 415370323 617003060 722599539 313496263 774912979 934717491 987297128 295488346 333456840 496383806 953469558 54227365 977284062 531677580 712413150 768056828 958669203 57666349 57976948 141141683 391421236 936810584 960976129 825025262 987357612 743377022 970737471 138180495 874456039 940234 455664233 353268875 536196946 245406093 968567182 891105041 899729137 100980289 146945252 417381678 857761572 46368354 287760695 127461220 241806570 70355927 197939068 222852870 307534507 186150162 781669730 922489043 944403464 280420720 972378379 700539779 758599191 570588682 748325247 932235416 949303578 142085598 246617674 958898973 980100974 311209313 433144152 650669386 725221373 767185505 875741889 505802451 824681345 90387795 599391901 52590730 295539832 542256719 937484391 979110073 982257264 689504751 728715309 677175612 680594750 801174892 812267346 912467641 954960951 34795653 735012621 738333708 791407429 487206092 757174719 624691028 935594614 720004179 735687445 73167564 894580025 894181618 988494108 5347895 169961694 195383094 602170224 470642509 973547816 919883485 954228359 499164022 731755597 183904189 985008790 341803767 434533780 3922049 210044801 111128318 472656519 558416007 638734560 791206437 985903264 910344258 961438093 458823790 989463093 9170817 484835953 164814669 194177740 64579493 457250955 506756364 532045067 679458572 809347984 450074175 607486521 811457251 963468185 152789194 822348554 981386519 996446653 861768560 870412233 331158208 774426701 838977708 938398326 592413324 680726578 878011799 887761835 390472481 884086932 66175079 685704423 170333363 660985196 358653941 953147471 243487246 794631502 563140469 791055803 777777201 874142504 135060147 725523713 573321599 825725539 215766687 827785680 226521017 861027395 174212540 648870030 268970214 275488872 258657688 657281131 771142918 813516183 43821200 408896008 441251662 628552775 937805267 985876457 497939486 927092318 971813291 991934719 500865424 995018106 303450119 696172507 57077494 272932207 218073095 694724367 987861733 991646174 370712830 843639169 503611740 883585194 484114566 826290721 726697196 998396880 902738100 938133878 304895242 681489997 16924186 399631553 533426191 843915992 43340847 715997872 231426740 439299968 328370063 364321508 669667569 767582898 375971829 470868385 422426603 662995202 818266751 854149944 518005910 788074208 562364877 724299156 733862167 856726835 375530865 985768142 66414855 373218858 663522734 848913357 612521476 998554521 17420714 578231345 249442082 412535237 361336702 798505802 583223439 636468428 898327530 937426928 86869774 317253677 185720712 563566184 54607404 250483454 583435861 624537461 523728896 785163847 5628604 119378052 508732757 576168663 900003842 968335786 911359 260132571 279412404 625367929 102175859 733933387 834728010 914849286 26353289 143905604 558034856 568870531 74360262 900479097 627764876 865505362 358879832 427967914 735587949 749367407 391984571 551396401 901335613 946653887 881098462 914823197 873628420 956350029 287640689 342444134 457343876 849191321 523067020 725226947 366593397 872610098 470867052 996137920 212523520 589460743 880361800 920482735 424992243 966951579 182782201 568079227 258248210 624040109 21941227 38449671 721311476 949424472 628714716 809344673 189492399 461212586 981609128 984021372 515830240 865254688 121323426 844653361 723157929 777944744 3735403 852141929 530119631 618099989 729855977 871376341 574159989 976363317 42985124 466557676 819764569 911177549 491685564 621292568 868696770 953342373 523931902 837959725 905246335 907493143 319736000 390000497 431892926 663745611 901943236 945609419 944288764 971850199 676004482 963750969 98526997 802431506 720962824 823092100 454250651 600343280 137046604 631149532 985890522 999606569 907393330 991631150 101705379 378779118 580616863 952724328 174401673 658582231 230940527 975242701 254502233 988839324 229885992 280174502 575090763 941412527 210216888 522511603 962672695 997307361 246564219 500007209 463669014 695831813 606987578 611438058 183365680 701562957 955674696 970665413 241859500 670560946 393449963 433495362 573518668 583003102 535100500 911972565 568952871 919418493 635857811 868966878 931502808 963274305 414666374 767742543 183960790 835972473 635346812 814453451 520120516 939506787 890193977 932394832 65392279 588476669 422454668 545756575 42722882 947903534 330237561 612891419 500442385 781562988 532940753 755878054 229379747 739750365 713545780 726635919 911005148 995129285 995568371 997159157 485476345 936847235 868057821 969199149 393647374 819322619 501862570 569553748 166596463 585720431 99699058 161416460 985572707 988146307 840289588 928496519 117431628 908367876 391701671 857396441 356500228 694235994 314878049 513391735 51998967 969948772 589017105 657000399 919627667 963199913 770447774 907072352 105878007 110410920 161036931 867475579 648076536 982717911 949522060 989032016 842101399 963502713 333786168 370316481 784661032 913088881 37359461 817297674 773627 208939542 13199305 41017904 622193018 801418951 370395906 558646602 612992819 713479116 585099862 643913853 178466663 332952960 240571039 770749244 878516144 937907624 115346114 777599834 304874295 623669026 220220553 478917702 516238850 895579540 13963061 139721616 553716887 696310351 185542245 207364525 215172534 329772031 70867288 899260703 817742547 997884257 395784641 893217614 477055839 551271530 977600302 988402831 512600298 878012366 199129793 541134554 839021686 945684368 532759996 993633103 362130132 938378886 156932760 811601476 12756527 602299676 419519092 704866489 138327396 682477397 512491905 653378428 604416196 912231505 549896116 838629257 944834574 973460045 764865133 951460071 895002082 978066075 701456106 722966195 832900165 837677068 842029122 945873413 489976335 780668726 430809219 611962655 319091197 569183745 764826870 798180674 359524218 994827429 104868738 632134423 395557610 412397174 656349808 885628764 438870172 445924140 717476862 740687821 164342526 871859008 300268710 671884819 105968530 127807089 702597918 737118302 659659632 725514603 93199026 462731025 368636271 417887316 122457140 771935893 876104209 941208017 641452293 839742754 538113124 973873913 415570682 895201381 304108216 862378735 482524839 705460242 449051539 963774640 358915574 927873779 369423036 573861893 656111315 788815092 327081172 363514330 586694800 764589450 99758220 231198045 168580880 596320788 689574745 776156754 853304252 969483364 6162119 247378266 37568009 82108061 352640470 713486957 26097901 183334974 714694666 820696918 48263768 592134749 31428311 839935674 20151737 574298481 472056529 670360289 888220908 964678817 602491665 609985852 211116122 551575779 298744260 513902888 592035599 689811221 635466473 779628236 237101952 403973762 112323028 642576151 829628987 945807843 143009200 971184970 745128251 921015080 417027464 679370770 254705795 476379767 546103405 546314779 929448317 946768941 361328253 818522676 450034958 688835951 402901015 850547902 20967722 325555066 936157004 976665170 639943178 697847280 61385285 650736738 915320096 955236254 87276590 235210322 372781365 467527370 276345350 927957899 951153631 970706966 924327313 926438976 77965861 921793487 580679669 804314388 111222223 854970297 750227662 982371323 729895626 935107724 286656366 949174205 61828406 614941154 327443558 665908723 31427856 549243438 692682907 762659611 967950716 979104964 742323848 953722465 266287070 644215385 993819575 997713897 80301918 201707954 62960705 501573123 976124765 977768892 839990270 994369267 910049980 916747867 793988072 869858903 857419573 991599604 920069547 938450944 421209148 733329646 195776696 257034413 243591966 669101119 3539219 727881898 136138247 467164801 956469439 999556406 327104780 517997998 233838790 730839526 368733889 590442115 557974397 582642768 783619174 985946772 336593908 750946218 664210157 931325753 824051505 928980923 835995314 856099500 893761717 981922291 236958394 470567887 622188420 808875917 48736211 826781201 268131443 429496925 368393950 586985004 215443290 757587498 220583513 623433889 459168715 992299048 943848897 985263242 340085201 880956226 435464558 834244854 763863517 828578460 287906897 537436503 397902150 882087360 353984235 586366265 162286259 523183690 792438182 994875073 996984810 998422512 751483729 857475485 746487040 763044761 972498289 993812103 78106309 603423388 328423484 888763293 65102788 910029745 780507193 903258361 764874900 801189180 522182125 869057459 970220377 980583692 466016498 846122248 80351111 428021902 610157568 764015355 183022710 854926137 906342950 966270249 276272899 920097958 416325880 722943091 936459448 984810494 319379270 394009676 94062939 314975659 419932452 782686618 116077582 607046279 510202971 871330582 746852267 856517224 138792753 329678062 620485755 905528291 549074396 552845728 744129012 964199361 271650912 848621802 777510528 881362882 319545588 674208303 563233944 787471815 891728532 971341167 576086214 597196525 928384899 950269819 940267577 949425757 194729021 515535635 477139483 657770162 723147667 826295889 2559303 755396551 152621213 564642609 328371553 449330536 578709760 687162563 587355202 940711721 917413663 930982395 479986408 674628685 164181252 478710962 248683454 329510071 514489018 726599459 342511876 560980869 516642826 617592900 771957468 860075863 696135728 870983837 64645896 543067845 656886040 712978343 592315470 951851794 555039658 938129076 860789988 896297542 733362480 863404559 551490457 835650623 239415658 944792849 559989622 785239278 288961542 865410548 71527348 309032206 912720348 949838364 600745414 942095823 795663252 923146960 480194946 667025360 654788108 909946404 307802721 692543296 797381167 809872548 347212725 670177107 524999427 768909572 803077376 899915916 661016994 988021460 487132852 992659272 780404430 820441211 607481667 637365594 784921960 786352551 204355378 634034249 968968163 981174916 728361745 921881661 973020268 987606339 93436075 568706289 225637902 728452999 663521450 987725240 79979664 364914491 843014656 892658070 496543545 959523927 584188116 737136208 232050742 489137827 471918071 544660030 639052649 868729987 2377339 568193655 360126384 417888854 408220140 650731609 981030322 994135678 704692194 990797339 980880325 982214687 518458780 784320589 1789228 109582509 494652396 963349163 209244600 699088104 581437938 734257765 911037553 971771388 456853055 762695094 786565137 998309642 93113124 308647518 708636865 939964121 583532799 959676470 105341204 187512216 109080706 325249011 595704666 747525840 509391937 902984230 295966043 714223200 702336159 766854832 425912995 516996946 641267907 981779475 139604177 751474719 804653099 824444733 655332477 711897613 658957708 960883425 794616124 960778035 892623155 901929509 752509338 795154516 633571793 654357346 5086159 876100405 740332043 756262644 515993313 754651993 348095660 546003213 310744121 524028134 312711358 630221164 601339789 631948686 818511932 882999973 463393307 796720001 311216375 380732380 959898965 969481912 638734806 719873728 625853215 870582916 956215066 998263843 95890334 731426157 967911240 990390084 272137087 996468615 704000339 983663147 233406585 279119380 551655202 627286369 757023598 821018117 609821138 670893496 448594368 851591978 184348714 632033354 322322082 391531755 4912731 370736419 405128814 481503303 459224826 847237839 38176218 425380353 149053877 548350508 414855125 796727252 877121262 998254378 79137031 147749729 173617612 252930771 762573906 907675674 188896420 741886099 299389952 430723387 903316007 997778062 777367055 936801246 69094762 588490708 523052856 754263939 538339445 598097589 685835623 973331818 98193879 207837027 99709608 167956274 504139490 778987613 199354252 854557256 234513734 646348719 952758001 972043646 78889086 357756780 269717778 298189854 313332638 871922562 91713668 671875177 963287263 979935785 15373928 56546276 398877487 646044867 459036357 548527964 318742094 993501995 207352548 895203875 744399946 994349631 740130249 859186964 770908703 772688427 658515352 703338891 413049305 606040284 231752394 333889250 170351937 999786669 378249391 868021831 594569706 955637240 234639588 953092370 473182666 805550129 50683881 84101911 879555978 951841719 975228148 985325062 95010730 918685510 872488840 982910887 574160495 976721555 944457359 991920696 35947523 608772074 26170820 727155133 861461150 978363550 312842835 654055673 979079029 986650048 118111629 736337597 632055643 681136060 954529981 963342540 139712000 163034167 79330684 532720952 768323307 893158356 78918269 119791912 595872751 967360507 123018718 212148011 513041152 736677799 767025491 876256804 420250479 471265192 836584916 923606506 825158142 870728450 982419071 983342912 331624417 686388082 818073822 942813329 901380107 980690723 959955201 981107855 102842126 149082115 328068949 844456898 277151003 713765038 701212901 964415338 666236777 721613355 936202631 991948590 411514517 439004532 695292173 816568994 37206252 608470993 803037208 832371627 791487778 802568817 643826 306178369 102306001 857961083 770257891 944334714 567364801 960242593 379179977 711818514 480808333 692339697 765449999 831373317 18310699 134518368 86774340 223602075 665693648 724195455 234521838 989198128 421139261 619261191 599147460 857942840 509603212 689386321 665390435 910080090 391072017 682022711 667428107 918337153 761563251 869038456 747961255 794183516 520779768 682029560 600934733 737434063 769462167 779369492 917333917 994805786 370361365 555508075 294597893 864091265 604096778 624378507 416194246 739851785 365255970 876294492 401398461 919012336 159086498 579412338 739698027 816380846 266803280 495342751 461013417 842916316 814585357 934183008 388110754 700160537 35638768 919861543 293863858 634939394 740446038 953920331 480032596 817340637 447075796 706229610 456871817 708142340 803944997 844038155 388227761 419997003 670008548 931520790 335878523 869862248 873539467 957766624 370061325 806813316 827495929 862801752 588788366 959463480 715940050 889440119 786392355 877518174 679962345 743005123 514913297 942927197 206999168 584772312 396185717 728154181 734002755 799009246 395580479 693438630 360653846 856834465 593819687 789444922 161199664 741629760 90764786 199421921 277620478 871224422 391500406 827896415 553352114 590587701 129247801 949811087 634956802 705728284 618197963 926219447 724509863 951184103 605460271 896028451 101460835 876783371 214448369 966717640 935050065 979238325 82356233 818890669 392780238 818330051 927872879 936417387 149248813 389025789 349574124 522789200 151864839 593490983 375693992 620567000 400105356 492026511 138471809 645885916 789962317 868586763 715374269 820934979 466626282 768281096 283420911 624867372 563438377 815750302 748355889 820367497 630261636 864959145 492005245 562831283 38217884 493423698 577373560 705162498 619172517 952067581 668980103 687718184 243368650 409910156 629287226 637542504 182911963 266846045 591506985 940256748 866966089 999481362 208745176 687683125 327289512 626380170 355085583 590542044 932297834 947201659 721925280 832309700 966163933 970654136 199050771 357222944 130364872 175733655 274022774 424700923 698129097 899803808 839899552 873301281 262820927 399348421 61793725 826115526 494329114 746293839 825951064 997770851 271115623 710831632 737748467 878125057 284909562 389619837 664005966 858828947 20678950 438383848 442009492 599857785 281876812 648364688 106959403 532733637 256414578 328440311 469573227 936097671 505163765 978583976 558442993 570236773 779010237 814639665 348750942 558880843 136804547 689543398 906735820 938616603 352602155 670014196 604158073 913422694 411674068 580492091 530929814 994550790 861812349 963206071 691020781 853729758 760859619 824192760 148919349 316776525 395273759 656190738 647650116 845416731 535265038 625473635 622551019 625984393 312241577 471693699 118496647 283639191 617083982 663065744 359273482 878807846 804164971 933794161 698655211 849317480 510970170 537326268 367340131 524630191 20646806 496162377 914957976 960160605 3497340 798688315 292495173 587512637 994651588 998220842 264264539 635816756 907433299 940634985 402771108 427662294 756264071 891288072 774684451 780227206 842760125 945960824 490840804 796163305 548979938 607168620 185284433 301749267 938433346 975596127 661187973 842225448 212738430 589947902 53133498 312308611 168925349 276114402 780292414 915445422 387907361 927511556 21157239 684848046 980583555 988141468 999786340 999996869 208664238 885819384 400507272 468109536 841966003 981826631 366355600 586998749 406170155 897405139 330381265 769406921 72090114 504552300 579025979 850074469 189658244 779182479 1169156 176440026 331361569 369346823 898815067 919965458 953057622 975745882 891327073 936261378 724338597 767559148 955237704 970710332 226980701 568517795 707599575 805193835 462318350 775501899 314825833 737179092 953153382 971036101 678978907 737437181 748680812 927983962 680124579 703092878 305038444 764792499 181821108 469765131 967259273 968170336 665769913 677671644 55589410 552902460 645001914 935604174 162037376 829369217 349314622 773866857 771078082 943974307 21457332 732258446 317215338 358752835 564312361 635073844 141819900 749189044 810281642 929951379 633202536 709866014 941262444 962610402 537336333 569139066 819551152 855908176 718184487 840677350 348894863 821937950 100259620 978251987 627836481 901465110 938092375 978857799 864268474 889839481 74182553 125544221 95071367 96907790 731623543 763118895 331074717 495710536 800996030 945911514 501911552 796171493 164824551 849948029 93318417 811249708 994196508 995013954 393817079 913736975 261102449 400877025 541479487 640164006 570871921 990419501 346609081 519528418 421051659 553530664 368190276 824723734 8997122 223720133 519609033 969417836 645122541 807424941 783695176 978952463 896274681 952410877 343693161 939511431 266792589 657157123 473384735 704688017 651852046 829851232 46004394 395301745 176337142 564666870 15361309 997047201 648571501 793757208 508887548 590499675 728242738 878276834 522563951 633432652 429251159 963576000 997426727 998049414 735047185 995575088 248526283 924491343 515863721 941650941 632312609 772670552 527240914 666406509 610740555 908265511 544181232 800712824 517625221 725184616 378997545 697318021 164990321 612171175 324315229 595622306 575195834 890976899 884009959 912769180 514875741 733979632 174739034 994394913 741432270 776360217 382068383 731179991 132478195 625978041 671291821 978269750 409809407 505633505 903589436 945542313 766600343 961280002 680381635 896208017 640787431 773268794 501206260 770507886 999065343 999294559 711732980 804281876 861756853 863557411 755596336 971655077 13838894 798992634 53169416 245978587 80349241 607669958 599719578 954208519 168645300 982777494 421724658 546452637 606822619 746404265 327097333 962436273 682107676 950671264 121589333 591876205 609755239 908053629 228320836 436833103 906377784 924791924 155334718 984320345 596166519 653135653 69755285 542654960 479666931 914785450 127557844 170706425 348694696 544028184 809243769 828167345 70419909 236514016 403886958 434513756 610004360 678297052 958650545 986009648 9325966 905817292 555975946 987042245 84061178 495470386 385382734 888272609 653339476 865877935 20136247 556029857 646415252 695521432 50045266 924818545 913223204 990018880 568300439 678360145 470609635 863751078 914145453 959057227 681488370 806006202 784633870 978072777 11878617 541620341 786814780 820746267 237656441 542637192 95401475 786043284 290507416 350516768 462639552 840110526 482878592 542417586 28002572 197407413 718776263 915944760 391362709 528908943 578933504 806961500 877360899 943519273 28164922 949426552 620978856 951282884 164531930 949248416 694929486 980972647 168798158 613892022 620944247 968105718 286287197 436275083 956670937 965935475 151562888 804126483 640149926 941147940 809062573 878812340 663777843 821393191 912178354 946220834 650051266 813860146 133958618 641635429 285922967 935892748 497000427 914950926 61700144 75247593 347712798 950747773 134389146 209091800 46220160 69946869 965756100 997174644 554595493 710521720 408779561 855621515 252497051 961228363 592350246 814767115 201311921 232727042 970667876 980632651 638194695 641435853 700354757 771185197 822101452 905536367 327798487 501865205 306894540 689471349 735046753 821315872 599675179 814145701 746342314 877539447 948298516 962207921 632433852 822577081 185568565 650789521 97650920 605419408 315323995 595476383 659063193 855678039 54072709 470019721 349697679 434115911 803964762 833054196 663098414 946935362 147697416 444511717 216978461 274082002 331214732 848661124 588232356 769054006 113604702 861572046 675006956 723396542 326228106 535857936 329107659 351803099 968741889 996534551 630321879 884649816 488847240 620972026 263119036 705433121 244712426 333163994 106884083 766043945 564426562 948358163 891595701 969435286 629140534 714851060 525087237 627477924 182110253 631218705 479112242 624937215 45836691 994653677 166685868 573406657 332815946 494241834 841240787 936150014 967639772 993975360 87581677 156323183 244275311 324170257 88292180 441974398 76123352 587298633 287200065 297022975 502712764 642920225 892821439 963768404 135365042 552336271 85453435 566840571 127918241 262939753 596147941 861359981 234195128 824817775 281179652 878221478 549036508 819095444 708016871 864907657 863015281 866054486 918997612 971902573 450844217 753262380 358948866 413433517 942012428 965099438 499470656 582336214 976192400 986962035 207332716 847490373 811500428 917218193 401885158 868658776 812960601 831397162 269695854 335932586 743294777 918709323 405167102 971118063 474261287 798401264 7638126 781379723 345063264 971720857 783606388 961818796 196175322 278886189 249368899 714321189 240468172 958866938 881402971 932720971 658881936 708839295 654115364 794064779 70685608 342797916 16632385 75238459 233709838 930263762 281385173 448465842 72998311 182529543 736834151 978217912 217606997 918207872 2052214 214828382 967965887 986608531 277414869 311125016 527984361 906351687 775458632 889965862 417231239 751089587 529652771 920101460 212742661 772674129 49424259 551654194 357511653 401502044 350983720 970086420 378779851 597085244 516446851 869391771 104572224 624853828 7584990 939226533 352566041 913885539 331134893 545227063 572688541 951930824 478439301 864487082 408838588 439633371 820155191 876437642 568323570 793932965 863245321 886296792 110075695 287046880 601782991 746600812 835423881 859459256 209766262 661741680 783336127 908316429 462145566 874756005 463515582 739998676 131628001 472489948 152539221 277885930 391406318 955973445 620548195 957640952 793570834 930068463 42472957 581460000 687836120 696115116 672981675 952281788 20347986 901510402 18835013 811278998 578851492 783547145 115989598 165730037 66680802 931829530 408060300 556789177 735129935 752800002 219112823 813570578 596774949 867421686 784096365 863638311 645048668 688472645 297000530 605154842 303495313 583673057 754632947 982242681 176235488 650326874 995736153 998754601 543113510 621098619 160805393 788200974 615760479 809844548 792764130 845344541 333690046 670253186 242264818 761669794 174285402 229362846 154576945 899817984 813279388 873863207 706819083 805126342 957927397 998757736 338901802 731719070 546859896 625440016 727202729 872261627 169592255 287934067 194767267 338776068 219281897 588442853 173355873 937906751 925583024 959017412 528629169 974443029 344705015 565171839 181571254 584940144 403744581 856028013 837311135 914648915 725352559 863717779 423885844 607037051 493003947 942366988 77338499 499690953 625118133 971518498 740450796 939499402 931139782 948489781 52588519 633203730 735908723 742529790 274780411 931463627 94590680 954735755 951015846 999132505 509461915 962739650 437408010 760127938 721787027 903429143 305161673 557896009 576850457 984557021 870015361 979155706 14286314 817666252 175500296 721064831 563157581 844248765 544499586 618732552 624424256 918644318 892904868 945956489 192715536 623678125 50613645 802633775 412933812 470241577 9009495 881500509 349919655 563535667 654527597 881505775 526893038 983222284 602196055 779797829 109428816 351240330 659479287 831315157 453676294 904054264 650788817 738352612 333220009 645145437 265455684 876826679 652519228 721693180 105461751 814362998 133163765 463426839 780699563 828512652 952475560 978988692 274883388 957812709 325706596 494246172 330876003 867697348 706988361 890304988 866308190 937843512 256332274 635778527 307165227 960114766 84967029 866716985 353681239 878927768 985741109 998094347 466317357 660581858 110043991 880618952 896397485 910076416 367059741 722882960 292776276 818298225 267088398 861135265 804642893 854883621 193941420 573943547 533091125 900849097 137164719 517439485 588758759 793552064 165451707 472287433 62312904 440541719 956211116 975038020 32389362 566079635 907070308 943702123 135916992 725698431 697226372 723052309 600043826 825913131 530618705 950776227 234855176 288912420 371055334 632334476 21173672 151022151 166817852 213645050 266483226 528962934 218806031 328259019 725052318 753618091 909643059 948639340 812512106 866426576 814729844 909246872 847884116 996692978 47777721 841302620 570521812 682654377 264323985 973633790 693994324 918525226 392721172 722411291 694406000 870724377 630006464 964383428 536020757 679401347 91187706 705889925 200954224 380056741 601514463 970306141 347013756 907687317 436312974 555897111 549914233 695797356 457962582 495347001 871521724 925302054 851084021 940848253 862408566 901125246 163708315 576909734 199492449 224955723 423251488 721627234 952358034 969802139 529126236 656317115 226130155 324778206 905895257 949692938 885906420 949425759 950073177 998828637 553608854 949542767 286561078 335541854 909583327 998700803 4918171 593173848 133728438 250969713 742451828 856045858 64018737 513936418 635200369 890465866 497677619 945535213 979137443 997336920 985589958 996212307 906307570 919074911 724797356 842995854 424096490 905637562 282826217 900150558 190764796 200468851 957547636 980846296 853460482 966301633 461977653 959509747 127395614 839467444 668290067 807589094 594685217 855919151 22951350 973121244 151305040 348769382 459705518 514808576 894675763 961350876 182285481 576623655 917681023 953289972 673738487 709353306 215212211 726082078 228125245 677902610 769326922 891413203 675027075 873064470 916381538 925367490 982325918 991171286 709406931 786254981 90475314 437857542 602968176 627203731 811258782 977094973 890002496 998811505 518083140 818720981 63550268 455605282 946700047 970215995 204912974 328084004 167647567 442536088 740976324 802133307 993743068 998844462 154506075 201738365 715636469 926069339 422453068 810756965 825809290 933959516 10022225 887609149 25643256 274735740 516138927 949606487 781814986 910429245 359990881 388880467 259724001 721128723 4022839 784822226 887237008 905859477 72684674 922977810 131152538 497429654 316556231 635783572 972626777 992162085 443984041 569385984 474297937 527650846 585153683 807900059 358041028 523921963 602006034 785800968 45532187 375081475 510118123 974827821 738051360 869862033 4392851 998764275 748701905 916894690 32092306 178011186 281827745 321350731 134943770 958538824 212902502 355211219 876104935 941311752 686071802 743563257 273983672 437212366 285278361 414694346 87327864 907742411 709701892 896399864 453741672 798746330 755924128 941571117 855128923 940912170 76617255 796645755 777047157 861634378 102776788 584848230 37578633 385416480 323584556 414113736 392526868 956407183 497080167 869959291 4233366 138889611 852520176 904224785 999904409 999932674 965547462 980311860 62706604 750990264 748411297 999744709 683923070 686722940 835302312 909875765 290331296 712896611 786648194 964929879 928119722 960925611 966422876 994419311 801538088 998507561 803271662 921770082 728220854 900734845 411141396 443884039 110419913 469861277 495209211 730236375 913447207 966842062 397655648 553166274 716813172 802984543 102332603 846198929 926758510 947910368 878419419 982305062 936370179 955289059 565593144 625279516 866318778 893184626 838824142 925286315 631422278 746938218 8507385 176573853 77244853 769739064 703464036 985953662 14602502 883505371 974985603 978829899 96346800 330263049 416846415 734868168 582895756 719771224 348172448 803053460 224097966 412461649 954802923 992227500 550792443 640921512 150895592 300118975 352117526 813407682 125437941 447714323 676927933 816821838 36743401 920069390 451869669 958423709 252291530 331615596 696338629 711975780 466450315 528518736 24334572 339857416 368540085 982696498 296962345 751747097 149393199 725735905 682569280 693246020 684924151 813697429 114097968 919480550 373749948 770611925 121697632 271945353 78971788 865660069 787129657 882277272 766072835 876583620 397293863 498241992 870034402 872327588 991176415 995051477 867733443 923432102 956836885 988563183 995292307 996043279 65229973 781851537 207765975 324966622 845858020 982382015 810518545 868784723 512685769 880695753 96548266 444283649 866116856 885376096 298458146 855644856 194207446 778854463 799254089 807177970 497916680 928085402 530219795 637945638 696678643 940892413 459694108 729214908 510793769 989729299 544027045 862858286 361056047 918256248 586431866 998926664 191127070 554170358 858347414 962536802 591279368 973246573 624641768 893531516 812743149 942123701 637813518 892839532 214344659 309328841 901038015 907306307 971125196 987195716 926782140 948296912 80142301 196064194 73937981 521918497 842302058 845090274 775765574 933343462 597205782 728881896 857903853 920993517 509684905 977082881 445939673 458148249 118146969 215134452 447447749 652942267 593740848 700878019 477394649 763109474 102249379 439562770 452578666 524001830 112303739 732383489 524424342 946370541 895038489 959485311 525787287 868770878 557420859 878807009 454978977 470275442 648421486 696111994 800796559 822426723 877161055 977860344 829568614 969251002 810033014 887516692 215659234 961658168 474005047 725636770 119731212 666558902 132610135 761735063 719046573 754706984 340591909 770825138 421227684 818754741 309861967 782342483 39482130 631478703 386058163 822211529 949646471 975881468 725547679 854076815 448136308 651561590 437900509 894539365 875411881 920917514 263260557 505097395 720434116 853190413 155584407 321718378 994815514 996589336 198964561 202117258 612132734 891035887 396360267 428129103 150523446 439510252 180103475 348119522 847960707 908381571 1635583 597576681 517125354 922141369 533991020 642098212 75048963 848026369 229331578 758491242 424765022 773270519 569030714 939259501 916800181 965552463 170060222 659493571 90860934 222355435 937485603 980764287 43927500 282216539 519711723 743372189 617250486 694031189 179186543 509664067 612268421 723349036 106938452 548181593 877553696 964352514 789397948 808582390 884020965 905071151 275726785 522515089 963788528 995585309 363475897 584655917 164082980 543544763 127236457 969616799 404742818 979625765 571677448 868267014 859980453 878418273 212923237 287296126 846958963 907668583 516600031 747216243 764114408 935424627 296797699 948617232 868395263 910845699 118772176 920282511 64666771 222211206 599459756 717723051 132269944 481521372 398007625 807963784 315128184 549232080 817056911 841033348 732969413 877665198 757302294 994361442 84815427 608781308 271538012 701408148 56736153 455474243 789382187 955502711 856146284 986768863 968952030 982014817 487317362 831344834 930552309 949410326 617321053 783713976 379352789 941741467 592882740 752090294 521769451 590637012 925460602 985448397 953161304 994964478 920993794 996059212 522850666 923428399 691716863 749162294 603350086 975372030 504628321 982260323 715566786 847490980 412181989 454638304 564713955 784938482 10878323 793574153 638048888 670482953 214498618 576979215 317975631 323246246 810672800 837172423 978272672 980517995 823160204 982022468 359035442 480403409 118197464 687465335 443107782 614670921 58802602 736384581 758252697 843873885 203451285 254303497 501459369 974372021 173832841 880621836 512937202 631732962 161003748 846112719 266398442 451414646 832115454 982117661 972642145 996991477 90699419 992619899 240454398 956311528 698104865 973124132 770885561 855532335 931294090 936429416 924688866 952466274 326638044 460476643 833408310 939800733 816916212 924873280 271182706 704604280 568824771 808067213 852138280 911837142 305528935 889340651 689798721 783874570 661154985 920952829 146614893 167298548 370121048 925872139 329666933 854498206 41697208 131406916 379230410 445599693 237823357 651974477 299900514 546987569 251200348 590513352 656485600 917419920 566067311 678901062 53042555 655808188 335755364 580022085 284296680 311632644 963921201 983582367 949508780 979544469 278852950 969725874 764026146 949046575 847877732 890475637 327992689 617485880 760735657 847203808 499881879 558872609 11559509 890539623 747349713 982977415 733667360 917960280 582552884 641746144 683879421 958159392 81499449 680019649 989145590 998085659 844788320 985277386 793952430 928177738 22997547 181440685 420510255 826972380 450509069 545815459 236164366 647896554 253111092 862571046 85677258 543374861 585821751 783847468 366678383 857669140 14503690 612424330 495416364 847507349 364064417 506565340 273248053 495144666 664486807 836669520 901064392 941704025 868073374 920288669 760506950 767177810 696673798 743350808 627744295 998376851 94645547 139990312 59177858 926332873 149562871 942776334 397269789 444068526 785495293 896950343 14091285 942205035 110146702 460942535 705937884 842675404 551259729 694952041 902678420 939365830 535253760 698232319 718412549 727401993 924694748 932221864 178232786 328561172 345137315 648278718 287119447 974068089 93795553 484315844 639194073 925698566 806259866 965114661 885478110 981215966 220912535 876145241 184883244 457105414 623965447 959890114 526261401 923030968 895578963 981565585 737126169 929129244 652524366 831642237 500690977 980294673 669838622 709351262 732540839 888697513 465606444 715689808 293840334 805490266 704072736 980705564 599224170 626989774 261087971 959593151 715819721 954658514 960327332 968034188 490856518 682064818 314381666 575450578 998036659 999663347 377052550 702007006 838690117 877755378 514812258 670629012 555944504 558789340 142675169 274736675 978657101 978741450 776863410 902151308 496551718 773250564 954151484 957157358 638995798 922831673 483424449 815997664 848941554 984192392 311282534 971990677 800639123 896853939 204204010 782987354 751610138 921351041 782391962 786940894 215307727 521471581 180395464 712615796 198149143 537348333 291775192 793934433 355349457 443820842 613735563 711798998 779125861 817988638 7240626 996203399 630325104 833454226 766113793 958941636 957381964 975963176 885247844 924812678 496020654 643194344 489298492 736270488 717055689 751523908 394849817 756789975 856011818 931201759 426040732 766597769 351847034 977649244 379703731 986167716 202602882 947755416 886697742 961270874 712177897 817937489 461168973 991016876 390639259 791663236 17369769 64461295 702054179 895227701 143470855 691411660 855721489 856641674 808412295 966915232 358068711 422866988 62275806 998059200 928198290 949461732 507118527 828107508 636015321 707271698 926144050 929431204 390220164 969152122 522617007 742481429 20682079 298860420 882360620 952931739 557093764 882476803 977373691 987084733 831264470 990770073 795776886 872294191 190195609 812496456 923633210 993319636 694580427 861670380 166628496 842667243 310733180 718795015 172699373 772372508 496765644 810787612 848370333 996389344 277766944 550289590 651489996 683237270 740366554 916537400 871210573 935063934 365371795 540665372 230487708 687992418 762471924 981807189 53007323 849564385 720787087 913386280 654740665 724685064 932316933 998026029 445213280 797069192 77397991 91140358 794238563 827792878 258241598 322911651 781240873 966255993 494655783 513734062 557534320 606270436 895071333 956325863 158337227 927638097 333402697 374201444 886775218 993799746 392147720 715134077 196034801 849048875 90540403 624718584 644821877 871538566 456566583 737057243 599561939 797027082 397269062 832590115 894150848 914586804 550927626 724253022 994590326 998010151 83739892 762731979 301464586 713464811 976674215 986294336 38598228 501935567 807290985 870370567 745914876 785618542 546305734 679903458 56434231 590943145 708747112 819727720 456871585 543684184 757902987 926570879 7293664 710015912 296275913 963005782 382451924 823379276 297593875 365818181 329408098 485191148 556374339 641059583 879138161 966201546 713827954 846487501 510051038 724466323 902334415 945876790 138809961 157967117 774197069 991192817 647736241 783192798 867054498 984403323 910230626 953818143 902978440 909902773 678355305 995760990 186796178 964008541 858976360 971939594 60046964 630349487 320553200 671187708 65074457 164044850 130229101 493156839 455423779 871218041 101845558 983522091 348956314 860907728 214875064 361695393 367562953 692337690 46697521 449270903 718368866 798985721 956458367 965838567 911728288 958655721 51453684 199954227 530808865 537159481 66955763 629863821 239587169 259024295 948910915 992307071 104606101 916203002 493303203 744330590 242140465 718872513 164513284 420310943 568490645 989172917 62937671 537379003 35986070 401933864 259083599 374553930 752781831 823727136 144733819 898883501 753578171 933034711 215708349 966911913 105496028 304301773 108658167 539804722 312769722 339432694 378745058 988951795 488768210 550828561 866130172 976322259 904144155 934780147 266395990 876300702 311961566 722645802 787266069 794939491 928845327 944243978 450949521 583660101 445738091 865561006 319701821 766774137 63576439 124056900 328731921 866023209 303303824 616537021 370293391 864156798 243541312 972948255 950049593 962550018 79958487 898350241 962899824 999024749 338732405 615455742 453472739 663754801 287326924 696643957 112879048 281241831 90210034 516850791 506008384 816244585 821279348 970129349 722103352 813720295 9323814 316896608 820532359 846212598 770821218 897858198 206068255 949416820 427890460 574338710 755221421 886587706 289234466 308560463 439802152 911731813 789512964 898560675 630059167 901801031 927376186 993973515 376285404 515384424 639849507 744029066 110473540 159883998 694890555 808850383 549994572 716213823 632063145 764896485 617391129 971728892 799870526 956241499 515945963 642636467 645472974 858873726 794923268 984065675 103772890 572858757 902717497 999099597 165563581 854944637 689999379 901279476 264931247 544132922 136416653 425510124 135275299 474825063 933448794 934519491 181474134 826969240 189722914 366122923 860756090 931088243 852812047 976816792 771215540 841986439 525823893 798553811 558907321 787250172 260493194 569046829 622780394 989177941 9578038 98298726 372245151 830118607 766464715 777762474 58044037 334375124 761753530 828392082 945590447 967392575 259199216 563853336 621202310 669510204 81359323 882755507 447222271 466299798 666199532 997608390 191841069 745512018 361444802 649861562 39462476 112895744 422632740 932013434 56442858 594736104 15472150 94670114 829333756 864560476 179447572 521923432 872984055 970929666 765888056 884874482 966302165 982792283 826960736 865945198 444889078 944239598 545715308 770958401 874647037 995435271 462800807 482719134 23789465 849151947 819900570 996818164 135974824 215220208 499762642 743211003 509917989 963820910 18239522 895602096 159741077 314403104 158215383 738731646 572583906 641133329 169881509 787112899 719157335 810862001 363460240 947517689 742387900 925928539 460209460 962685602 706161253 836831598 272340502 419290698 601144162 901116368 18709779 549277031 961086650 972356609 97546870 273170682 962288448 993194541 392811957 851780458 266036669 925496318 347520523 638188584 620455939 759548559 650516894 761486868 246829310 562466568 639239830 835073437 136820103 917775783 781685736 869850565 662340896 830005723 13287834 618746330 310495385 848740505 691377900 988958223 580129576 829701622 79206584 506739198 695935067 797760523 199843287 954518591 627168009 799154342 792547785 816347642 804604261 952952541 847861472 899811228 155942705 554887767 918797375 987877992 544162784 740068100 522443518 574735728 174951356 863961496 15144421 506333531 703523053 783640612 857691315 882326860 128607661 215463355 216502625 257921737 224248740 953818796 791549230 984553052 824747546 983017618 413963003 644253235 519784120 734412927 19114362 70667574 884564443 983734390 268431161 522777953 675462895 714502212 867087680 919853862 195370751 618706556 13639490 779064115 298046125 962148601 675940765 861176231 133862233 286914376 271068140 436016133 707160559 993685404 762028365 957911588 435657911 951135941 273814265 585491203 440782862 623278522 839410429 922839460 47585951 619879360 425146221 642225013 232000491 240281661 784425350 926815687 792216177 921185222 72082085 885521290 431564015 736118038 58763300 209649011 655168281 806697926 687263604 766326915 623483595 808092940 240994707 339946821 321016147 829505002 778502572 844539395 642587940 746514417 771439925 936852420 794147002 945823470 19507377 786405380 447346747 479431956 739810564 789561782 515682679 911371419 505994816 969810402 813620798 931928744 838577357 860163540 161968763 439024963 131318360 565893884 668479467 841418399 847794163 932626268 579795059 993154961 908482353 992714920 994639877 996298702 658259624 876555164 612567982 989928871 763311605 771642340 372721851 962234609 817563392 832940008 246737669 762679910 206596383 987024480 220627489 865749511 259495780 343874999 580462632 665389953 580099370 997911654 239704441 820776746 286045795 710054078 567299949 742787194 881803077 932393939 233493195 342625677 132351458 915648348 813217549 825829308 397370869 648667158 407137046 741937471 154288112 258151113 57443624 666989841 862123579 998014974 123893950 669208081 547675069 765651891 621277773 816534284 861960883 951139391 374510003 861725527 548833347 729519548 99660313 505672534 300806285 749431509 517141391 647443772 807944126 981511965 575109674 815502673 952512190 970967155 625329251 758708721 10264301 153248517 349132966 880602056 462650476 490518231 917329200 954309086 34020328 123549270 779786564 979952679 434920425 634432073 861676094 878125047 369573437 883801820 115590077 428792933 732148673 771453050 680468129 756076933 598897081 743798574 383309855 856720214 626388173 697615395 319363683 464331500 74341615 772838993 543335021 808379498 299749424 496153430 293844633 464283598 160063351 310053279 802901501 818964604 959121641 995500946 643034463 893778120 73770244 210894970 470981612 737203672 81245843 171980360 622299674 874889749 573044986 811188906 195219454 420395867 694351033 947394593 342827655 983242659 158137114 531445151 502651608 733859862 180846599 557814223 633470590 944691399 158593677 795141877 120796956 855778780 142400617 994137800 713651935 782866049 957495603 994455925 513364754 999830085 136094336 474199143 789188294 829847495 468326046 513172932 111354308 113709124 702971693 895596095 383292066 642441117 600946072 847084987 628076560 983845554 207254130 360595339 741496352 846020829 752984906 874146350 841817532 877538307 159333727 977103067 961214718 996286298 739376215 845678521 194464469 402235034 237278292 350678953 540552413 727607799 918823205 980129975 195923421 642575028 450152774 864914043 576682601 621503785 400687828 924690617 571015426 667428362 779154738 967700993 445270452 575660967 181247336 681518691 587709689 828746857 23847061 484927258 337235689 941157618 280405092 348056549 712142934 864997433 521448816 935134648 428699411 647159830 122420635 991053028 224981943 976637827 396399309 874710543 978078686 989427770 68798216 626329393 226640404 937104371 889681781 951307504 923327976 948323128 683672529 790644403 473505942 961489204 472422878 826894796 257264237 756972389 803974717 945597633 214346384 605400167 563156653 740143973 179057462 212030220 151563023 349007840 447860445 825327439 457549965 692930192 936798425 947093215 451015407 946449166 107140980 644655226 346374379 784012531 720701488 891121973 787671940 987956219 962764518 989503957 239866675 466857343 929275997 957034912 486940743 940666133 802570158 977314546 958313705 968209416 154626429 922758350 850240815 980258091 197266250 652999554 127132685 141173146 161357893 292739429 7434946 352785948 359772088 719210660 727203448 769409428 529906082 550172724 511918892 948128559 43802626 388982726 208889668 926994344 928440692 931934937 147524550 835050697 750396463 859857126 263201707 454287865 130305095 264963347 884550559 930906887 677258664 709380136 836303066 947022860 652878731 910939770 179006662 381232341 37395106 786233067 534180494 567553283 555293028 962051008 615802940 901098993 418776082 797502716 929776889 966814511 780231369 858243207 196634065 947101327 935231679 991052234 571162994 661787639 782916670 819806492 396711452 876878512 56725859 272785850 739741883 819034293 704242099 819776004 7097322 804578199 260871154 568816473 765880796 927831608 962059328 972079997 336528558 506831704 971769000 997430740 625999478 887103274 189605147 435431704 524119918 809471854 302595639 831371134 330669095 990729863 232081724 908164527 612972351 979825992 279513690 460123841 880719328 928180790 994700055 996671152 418730216 714069701 139696947 652667908 186360764 635140636 531648517 694731435 56430114 363225085 582413179 858947394 53546220 446350871 910798093 951393599 733189180 780073660 892987670 931748527 773904667 980068078 249308052 821407586 368064849 520045082 752460447 808920608 273649459 560646309 952552707 984482893 680929016 776983536 878745517 962871257 830669443 862229348 759889445 892381279 775230450 778801653 622858440 635011014 619058726 898377381 876719848 946373819 785213840 930832768 350686996 649563173 862388363 973866450 246575804 285803332 132162184 566665802 920734329 962654462 176967092 206036661 866902348 923508472 113421462 277598275 333668004 635454808 319901120 467123543 835154240 904815375 518069514 701870072 167075106 507439830 72204028 633219495 675193196 821315844 148706686 413729098 121939538 167125030 359040781 542645435 400913798 560243214 734644299 824563279 105443886 614859444 670249115 949190107 877516512 952545274 835953383 940499910 295400136 827179712 341147444 670426355 154939422 444360429 922305598 979374888 655678484 880337772 803303090 987726127 486061393 958386744 847858117 967530906 196401826 795701132 868048564 918652685 245299670 470961499 61391343 651065561 158023126 822485273 93871414 889396355 886350839 969017266 79247351 797124913 625240534 776374263 283908201 478007876 990626173 993086933 655534950 834898677 804665986 815054899 415279939 852327232 437296560 590586400 415145993 613425625 507080851 664676084 562217587 587404927 295089819 951103651 366052136 435303863 94757555 283212593 975502283 981814733 791647073 974632197 413995405 645735481 352200009 858537057 862423956 895152305 59244072 497924450 147931480 787469295 851541982 922976136 772964775 951520023 12227497 651304573 292514586 684168873 280446537 539634511 364670064 722219717 230821242 536993814 190357037 716606991 919063623 979385999 292955939 760238079 116189288 612825924 845070312 862282310 677880780 998119066 536578542 705048348 56364831 799384168 303585731 593100369 525623827 991516970 535183113 806131615 539070846 561397039 526888791 576324582 882542326 919894637 305140587 922070692 12171747 610107519 614933018 949036828 475539330 790769526 260598097 536212565 688666883 765018655 390910060 780810764 417128906 451339015 751475648 815585771 573365037 729325801 207930800 799768601 205892658 374290735 477594187 933787036 786592941 882973086 430108437 887926809 991139692 999308065 274249022 668951582 180572023 199500634 829672297 889175715 640822604 813033839 19613682 775529096 348639044 885588003 820638638 916060692 539803771 608050624 862090255 967342700 136803555 262292245 212824010 462562150 770454026 851331544 246661548 313640391 722145908 997568815 476419534 857691517 843951294 985418935 107118171 175913672 729992844 944731745 820919558 936550077 45503678 861120837 280214244 485489760 646828485 866106873 961334286 962035093 793234511 910423031 31907871 32902414 913111169 933203779 399887148 752294137 515673499 592353271 539621014 991521099 48052028 899050169 74966231 96426822 2361691 391748584 812053460 823029320 329964939 480498235 258987581 631232184 781482349 837057861 778822924 825039126 480034687 567238640 395353392 441009710 383863428 860631848 684245957 926287182 139344025 344489337 981529558 992079145 47167240 556958511 715843952 807806918 247190511 593288876 102461654 806685881 418575022 443585417 596861178 652685374 263281199 675905089 11834284 109809978 647720366 904422004 48246493 483996394 990623575 997557129 496462612 576838531 424127569 578590518 898913955 924466933 26222740 631098867 976853929 992804377 148696606 865766835 162562393 345540423 168484168 206781154 511649833 861465674 98292710 799298787 299220080 519043847 729571817 923698119 884183038 973918061 214831302 959321438 936126630 977979504 123815561 488516087 837030493 910510661 676070373 809065834 709722895 981344192 610769634 988030674 655506002 733321348 516883019 928588763 123682916 366588822 205644219 754814418 862428725 870395024 769328812 966255811 514999757 751463921 785924677 865464808 43981943 537659147 841563404 864331135 586526121 988380840 220871011 391050490 200685143 583307643 524029010 887933112 99588819 303069659 157771043 471109922 261106200 723247198 44686922 104025691 809817968 820822437 122693065 317107704 901558613 944544914 906754867 950097742 847531342 878429734 814522954 924373998 22074031 275160590 240154340 968308907 533813663 877940396 63499190 998190244 346616227 445178794 773144211 938703792 610557721 984739038 399977652 664064962 89879432 332312079 20764552 404496299 738323466 779212974 243138882 306986998 92483289 912066312 374951740 745770213 324693973 574949229 178961722 296947940 517893 928776469 994054933 994819569 486865722 919725971 541299404 631767083 579665215 605774935 479316816 582073200 78536534 254588652 115686532 593573503 543912626 544466090 268845657 436588430 23964309 59646705 277988724 964762395 68390014 461154250 5811719 911215363 822581793 824951075 548997351 874396787 579967042 990688484 341640399 654624099 628981221 684442392 188981519 771517069 785991873 971870789 910384329 912677622 473158194 942763642 903322770 970639125 223278840 315526659 280449549 633470226 835022972 922409647 513606560 744447829 719335433 834663982 405429701 521946695 612345247 809553425 540397922 883303785 965660374 977635461 88653487 479155908 316201532 442455440 443452005 667817311 890043511 970457740 677999987 873669631 687322651 920124395 495932127 899787831 209803962 428811221 528717127 755224514 541442356 721911298 205010924 478668288 844558739 930756374 166990051 320834755 788784199 934751847 18610534 195404613 907849028 964037898 26309530 788728868 594494657 918887981 111330939 403090891 383031104 804813711 995355113 999109668 34447717 196895300 786593437 946555706 846999082 934101385 772310069 854608497 549706468 860662152 389436705 897783470 955567511 955580374 912344449 942261963 232732202 366581908 168122731 736639867 742591432 987985940 550798554 624941934 974618519 995043742 610740281 958990448 458671936 790644487 552303848 918737773 23443944 973604592 433868785 891800496 599782625 756983408 327703373 625535847 671587159 935883024 918912 199586848 361653162 731021756 502308032 799582633 215975593 795038662 170952813 363906631 234977268 784460063 634937259 723857544 519377345 851127452 431767068 478801958 695756422 830973074 154093550 674522435 324241474 857979346 207121065 833259551 947881969 987987326 979628932 980911042 305708336 626694552 376576294 946301048 149406712 988610080 681555110 905673299 617346028 635058588 88322654 821962244 843091392 990747914 870039086 870590345 575402266 604153409 436342178 931140600 205350699 871111720 671083242 681507288 77336602 647266187 199201611 244005329 766247857 868421292 353999992 685508486 604521249 807921327 410425811 628729122 131238199 949313846 365473293 613406063 983308849 997966150 795633406 846899479 764498002 856295997 891239306 910756314 49035359 763490012 904301566 957706129 782369994 815303355 890771876 903249576 66651492 480172345 430534551 629181785 967834057 973598619 765721858 994900302 790684145 962578401 231923409 737438241 332166413 829140716 847690638 905185415 709497360 724289038 337590224 702513732 686858184 704653471 117951765 728474291 960804354 975939919 581171603 608244899 379909373 388660616 997106620 999146051 434492759 980440453 933637788 980738302 714762554 984380785 312266349 472678617 712991877 961106059 280076374 462252543 278543742 876071353 499800853 817131705 686579630 930595471 207767854 257997527 378581445 479184391 352554174 967462705 905393447 963656027 646556583 757015272 959107902 962737883 599487221 720621333 259176180 488495162 7844661 277972913 882769088 992088774 456319041 787615451 470724008 493179139 448573186 825042953 698224203 955376372 551183359 798099158 784660336 920812820 97440539 381785407 256754940 980201703 66941200 135470721 980587049 980662343 453220244 907169351 352711039 878882776 752992011 895193374 156248535 173242890 240691482 364163744 32839896 670510705 303481978 386844464 449988287 456734887 914608460 925131340 543948619 880017829 217883228 756383650 765721086 808313537 644409166 833270356 403219593 558697545 640686893 995247232 559878833 921407635 728478682 860775879 775243489 912257991 287159034 442132364 748296329 765676057 26093427 263442172 494638671 671482666 224948848 818634970 359950595 796910859 824454975 961937020 372723119 521872924 706234023 799816243 592197722 922620406 214464494 915199950 397765398 762663664 415217803 418484440 884002854 894851388 940241427 941748069 885951748 965286717 122606114 619259053 676087752 834501037 621377662 882537858 222961042 462612920 327302956 876426681 391668930 566778451 634676595 993278033 398580113 826518453 359009213 639196444 117920847 613871887 909708652 963488114 370743799 946020621 263447087 379332423 296609490 851446866 101142118 288163029 80313075 338126118 799859089 824629344 565444231 649409127 469581100 578722608 789055378 869096924 222715078 927369881 615168607 725994943 302040100 459066846 961390070 987176797 945577845 952004415 238700697 774992104 762213875 793957812 839368126 950227930 710954944 960059464 331844845 562445571 126572210 989137883 159952909 474392109 82207002 113321577 302810499 557062919 494410436 543868395 511907539 513002490 546251813 867108379 516306890 594899350 803656562 882015997 738999836 788756637 551377942 879388819 384258196 856763989 434914044 983238817 816972639 860626933 880004092 959821887 642875108 791842510 453443113 773993719 437912576 714752713 80211805 229115700 49687453 756992739 322217157 584547058 841297856 956734601 910015665 959793925 397753091 951788411 180392793 222221935 153638351 864076871 270198377 685526919 411825486 466908230 221310463 487851721 786369779 831654295 158127582 903318212 840914354 872796348 77762985 543937747 543628452 920420111 986300532 987365873 906144785 980899051 517308513 585471288 467379701 950824150 916112962 949492051 931874929 962240267 555983576 585151977 19906330 770993960 398904927 540749088 750818505 798711512 398824276 658240061 913548049 938252701 730317055 914545012 123171573 144384766 931676317 982470689 20074323 973801816 106045150 848701676 464999981 511972078 232329123 888982737 96706928 825369688 570243016 911333233 969441764 983590691 893867975 937019214 186511979 973280896 975590019 992560286 639958666 823102386 856473625 956881794 774163651 986033595 976640445 977439635 947548659 966955938 982594697 985087229 862943955 885670940 342149415 454299483 782924436 793334677 502908761 886176931 82925762 99052484 559538685 747301073 38342804 609373044 362008751 789265958 257243809 581360280 328574088 945325411 806010935 872718448 628650569 824767328 818931027 844425128 421606197 887203369 424229496 471221493 475265654 708923134 67640343 256415218 665400026 926629078 669812685 906752458 495597691 952841151 207630831 760014953 968571207 999112720 897178043 936242837 195004337 507208010 217952008 718265060 7223424 333050951 255842518 587344326 997543998 999134478 197101959 457226673 226543943 768352254 648558170 806136575 283659865 891350099 277446436 959403614 935966291 999361428 738492682 933401004 790628142 986361429 203364378 429913828 394899411 445915324 818996736 884172045 444668531 954405743 431435398 764710615 16771194 388732228 594419200 835035797 618219819 776943254 211112431 760963435 630710108 824119856 587575019 659388075 363434437 390771027 715541853 796887327 990228415 993302743 88082107 957316524 818731436 966834152 686860107 985178332 516705080 802860387 494349907 718758068 685779649 844369496 138302803 553564450 91093450 780591368 850193092 958047946 648325773 847367606 59459845 441805127 212928901 529640683 630758289 635837573 223317250 629199020 618068939 984086292 393392639 753993903 415831066 992027927 492103905 983974087 946002911 998283693 580050358 663121499 655672715 960992416 209505200 814885815 687126828 932872780 705303766 895026778 815329337 941702318 353706571 835849796 815100007 984380484 6864862 584594290 716963927 906794965 813625194 943778331 53346436 422655157 659016605 934677662 812204998 856306488 897650751 991816913 444709981 711208888 462600652 954358051 311209312 837794863 881802181 912909660 713801673 914522067 55711251 57846804 557527398 611027247 994160546 994589460 775144726 904051947 226314959 510657129 268367373 398750251 331170138 684406634 407399362 711608066 267744059 706595401 289059050 877128271 520480367 872944810 770617255 839386959 212302657 579827070 913150201 970431452 691500962 723694352 853202760 983120941 572164183 760124437 681039269 753046115 782467951 975680506 220060350 723770718 34523723 208394981 748479343 893415128 111178231 557711750 664221016 789684457 66635658 452268603 905313203 905869536 618802273 947526532 428838798 878650157 944338785 973625712 953083600 991453700 455445259 710366265 980721274 992325820 438805339 661474754 588781065 767402524 331623532 899429526 71173434 457911775 555640001 854462954 297227612 718119559 840126636 981547157 512188579 921566359 81214511 231846368 434759754 659482601 125670090 258177974 248830398 934492715 10753127 138824320 510540094 848585509 661222030 874503141 569554440 979324595 89846327 318814734 518149494 926220115 34683894 765352954 974359469 981849537 886185760 928490385 290865479 419532076 414070845 990990486 603098617 746329265 370342786 987976974 195383698 812377126 801319516 859375824 835534311 921807498 778478393 908539826 965781532 972101470 117538260 541843392 784506627 996974484 814942606 975811684 468061739 548644380 661139178 820332827 735612302 905790855 26026724 157822165 470764266 683328883 687633680 969713787 517333952 720383189 947218184 953322868 68323536 166584621 983906316 995215119 980304424 985115316 919337221 931927859 645907590 657851654 147731947 930160849 40314722 737101195 465967549 515519350 449810344 746474907 944133553 998100435 102147511 585943037 968448147 983080122 802671391 960940329 368697121 626296009 958687998 977203306 116802895 943776473 111443048 957734139 461496217 967228581 437990052 578278145 617971294 778453440 885111366 933785820 717181602 897726122 800236473 908114822 524287973 525806089 829810790 950277142 440128239 945799969 423972773 637954860 21787690 300134697 730618247 888128816 196083766 652698332 504646442 790560344 875639571 925034747 838062810 888170259 744841405 761442258 453139669 953005265 94908417 170919684 495853705 547498868 605790210 659747785 300133798 778969148 738411825 959980860 64967165 115405647 67150317 597445639 588445828 920698908 191203535 424759458 318104493 624943158 56881544 101524158 686674235 718703305 365822762 849990608 265587835 323056639 424402135 881858130 881990774 946188175 747623923 775979580 987232530 989578374 211058766 647694025 8896016 357180709 961202980 979669616 539899786 872564804 944520608 954600954 504465021 961971984 636197378 927772375 960439088 984740006 205193244 883442922 114275592 120511538 991374163 992345089 601986797 943263528 547343871 841124257 344868250 465285884 664039568 874444298 917350728 929288111 378063956 944539101 835162071 937679436 473575102 591331435 96027317 359883049 457966513 464259686 426348962 690432838 817085808 882127251 703398191 881577600 7811805 437947134 613945350 900043191 92800925 787446248 193865420 579504693 893569718 996192278 584055418 911769576 829750684 988248726 479832600 629691080 815619961 843131496 985918144 999390344 718439631 795865243 859321273 977451330 675128402 945611406 249743435 905754561 611566662 650471539 323619647 716329172 770729260 877836961 850673899 982121957 661781420 742637298 828049550 978216060 584260361 943816822 10912316 216753297 413935382 633943367 935356452 947325082 405987007 432179105 202793975 739728827 276009732 445298479 148380562 317797488 879893570 880256997 524686972 603291197 153097322 247523835 71474046 467105660 710216021 994961635 915342454 957506536 310209184 365238633 948618845 984020705 176980908 481250765 890617752 995683284 418203244 894793911 509788865 515336785 488052047 565042033 318593399 418929796 812775022 841113621 266753253 503509596 449643908 785011099 961467837 999522200 808491694 820147350 978567684 992086321 70537322 73594497 60114182 641266549 357803046 887959535 55290165 810068866 65711640 144374761 219325684 252935419 501134472 876428338 144529002 838007002 257430549 981319408 264479093 651043059 948594414 971001037 695527068 865106734 344774905 819832328 687573980 822595609 971190673 992761865 801737349 970511636 147305327 890063713 208184094 505528806 508441591 928576027 756159027 949512969 385607263 907782251 291859775 355935357 32772183 356957123 636251016 783328992 344500244 616262318 491717817 801666901 285793874 458737278 652142869 662244549 826936495 844825676 660473555 825349516 717821153 961579835 622096090 902791081 453656837 550883474 92196355 505204112 687090042 696825863 629291345 711214600 170082902 235516466 198342098 639091976 117244228 442835812 706231592 966996321 272142496 844670499 365289198 640216724 742798894 840299174 599739768 604547577 98710210 600243424 301712491 339449795 295544852 374703830 562931812 793405454 602045188 979551866 83434325 251328213 128442881 563049845 822369825 967380352 84341415 685758800 9980656 277331346 850517462 927096616 532737330 683407298 410875890 540107776 652067863 878230399 704351480 724694056 12467505 635949614 234246576 757049892 827910984 844212162 19118791 611289655 395271299 775481587 314235860 325748590 377891262 695817539 355981097 861119237 759953424 903252127 74337730 886805753 89962492 195445075 532246636 591870376 942418859 973247060 519358639 605941433 307295507 554999694 892350919 945754009 62934480 149712144 566872978 588283486 611202976 691058803 685386958 786359281 875169824 978786997 578327945 592902414 762347139 943787204 588730341 994670487 560831479 876074217 730762102 801618139 491241664 615047362 874999464 978927073 831669976 858833281 746453735 942070472 171999476 999204129 670651891 932924767 216510977 734684876 190824790 979195670 41797672 786088299 597306927 637790285 477062551 937331887 641863328 956036423 593688177 999343134 368246344 778324302 891640246 913415151 655112344 925519611 40687674 69776887 644343388 798248665 687271144 721712175 725719968 962661579 215247153 775402266 94696323 476980434 609793570 925481925 258131885 880300532 570529319 934803270 509521099 762845047 582976462 825043257 600025489 623954951 287933142 720138946 351509401 683339583 373853919 631561783 495960495 607133463 264038952 535161856 536055475 651602984 366994542 701640907 775524706 833805520 689547319 847458681 68525145 547700107 909440505 979858894 121592032 670223320 764728531 959585369 661455158 780734290 798051756 907546494 527398580 906565893 842879264 933118301 848756908 878445946 676129544 703172835 396185960 746475194 680280249 799670342 768645026 844890955 774477511 902981252 13928941 543512968 405859033 784007496 686776775 882182556 320860417 414856207 690578387 818212223 801023254 903854774 216804288 505313678 440986753 617726442 1357101 160896176 398588668 767817903 517328317 773633576 227904171 532971463 743725885 863735656 586293510 940267139 75675519 827721076 628954935 643013849 444208727 895148304 425316234 848343633 553944116 964832330 554086302 827876499 303013122 600573715 962415540 993625828 743954286 970281171 304791127 803032390 218398996 345624969 287393986 642368893 956957001 992000961 791245195 907835627 800148433 977620650 663173321 774167532 263755132 727043977 566372211 916157943 70205143 679077771 409437549 739244616 309276266 736596950 144608092 966000623 378690557 871872587 270111898 959390951 785189446 883570122 588862933 789624835 628165262 925807609 972846844 983338140 798152688 873835174 426640263 649759297 589494979 968971660 66946953 428207903 98858071 326373173 539856225 778209873 759976274 917917459 241302375 921362841 79074551 464164312 194125595 334760149 921245626 953481019 874487733 912810825 196762169 926264723 492688341 947503444 12336588 437589890 537238008 578036099 651239617 828695763 169313271 377297749 617545476 963421737 96674246 551606939 412096851 537342464 840907182 925579960 42626586 757620497 9475063 569322187 161035142 345268791 985206268 990602047 346559353 351084422 404454222 816638806 667750891 688328181 86313294 903373878 659193299 722037374 464167076 470141588 785772404 845343277 12706960 859996642 839453517 935783850 645900800 988250108 703761969 734250002 360614882 661979021 237430001 716942489 633033154 849351936 148481580 152616692 719332180 863620209 560648086 914210731 924163518 953898875 634364579 952496641 537370829 848250508 452860350 931890639 907574288 983737814 812562797 833273599 723529083 890373484 272202778 448943570 353539112 734434667 609015971 927470581 484501707 506133486 131233282 873482719 301794309 971235356 566294755 916419101 152316466 335853498 557111938 659521184 405435354 825830968 119785019 173832755 414852026 801375785 449500503 647232335 802329330 878787053 523691755 994561755 641071576 647525319 435145298 802030819 846057767 916088609 813604303 948089325 462527331 658060367 790170898 798716808 929269449 945052438 402488842 748523912 507574484 806529974 697671721 834331478 760998940 994751139 904064920 952185252 722822646 779101354 220957170 530250884 106902642 822706630 717696451 962202099 140499330 167593863 993807638 995438100 500488827 665888730 828897647 967236421 707974377 851572920 554303103 811508848 615131742 851405333 878875817 998044656 768201527 902742351 503360470 990477982 952877110 971500500 109115657 863013269 107251627 427840379 764564780 878902350 333330778 675979971 444125541 467027153 363944258 512774438 65721705 725640240 491205876 973917882 956763361 968543828 531841369 576573922 757204916 927788795 376115877 890300259 877587527 963617061 723107689 782220875 683092005 811650338 579248917 635590955 989600351 992299723 70154976 213575139 569568181 928868397 293881007 612476518 357155098 737345514 143340120 659227046 678927612 868700638 704659049 803255485 489427414 977769044 858033434 895998880 440902050 748395817 976727512 998336927 43076752 71468071 590442983 917994902 873773696 955694539 736733767 841191185 622127745 651689690 616316307 630229609 323443834 868204069 769799081 889089548 599841406 996687459 821918508 949696990 601618788 730066472 669753398 957697687 115734153 256945942 786561298 810655407 539200512 763770505 164764428 549495883 800254947 910625697 93838818 878485858 546184758 590166809 757533108 868091759 758447110 806521485 111707612 652477248 214888017 363333747 110103097 297581230 488270193 814297024 116151707 639554654 181776740 949782474 173940523 659573548 904617027 990498669 411920428 497692838 481705377 528481135 291942537 607326929 510985957 945394673 283817575 530559668 144971508 485410898 785288449 915467161 437189561 705278941 350024366 617143400 320904325 997911382 687804425 978898823 463328393 976133301 481701471 516178345 273985781 966616729 826786242 962530387 678114564 686488383 732323665 869907281 477271051 594389457 865603178 963220830 177632625 199652124 946117944 962011047 134317527 354556428 118705836 985837140 826108064 855508645 640628319 702730211 370960155 513797570 64276060 93083693 362092754 408629208 724837919 761574924 617686363 791453405 97611660 623675290 997713112 998074731 774770901 864128533 459619574 990350420 169219874 541871878 914378947 994050032 213536854 461536310 58333588 225513774 614967519 804855521 227635714 231637960 147687114 620283081 699959081 710076210 680363041 917405362 463193485 973097511 732024067 896064098 197582967 931115618 830965817 933418494 317436178 962123187 461521343 646347760 362640059 498512264 689278520 939192188 47698051 695798243 479645115 781678318 555139216 933558966 878558475 987316920 103768537 112616483 508326511 700998577 651782336 725739363 320157487 610209093 948039331 982689527 894537773 981143250 180384216 835472398 365733424 889163279 199456837 683067009 291030079 971831431 528955778 561039165 482337619 702538290 751461602 925248701 107679042 459914077 975035103 998245829 147143108 309571618 125935764 237689373 841929741 874072168 942974919 993116665 521108193 852343316 584970821 680979888 304316964 840837761 397588914 678966055 391321815 687707746 791104644 901613992 366428158 633732101 300781289 768916225 925652332 928785977 540451035 763838760 225414433 880962336 748755479 754303182 592276070 994238406 30453944 443611143 296714927 634904236 619021647 666709102 917375487 986879727 646885136 720625533 87830406 834535685 345122837 780217330 837992118 967809453 177997212 359043622 733996423 747185498 938947661 976726883 286437062 679279985 526051204 989983892 940945993 966878260 642632913 836200951 106173900 910670982 128002447 988718573 942 53009884 774286867 909021293 149972283 846888986 727179627 842521008 187103997 194117874 998558295 998804626 987676209 997975047 205925463 948590614 390026176 799747166 568643157 610838614 733271955 799744085 671959456 693661368 662248162 987860701 698237489 876787471 278354714 375991122 338077884 881653871 12955073 502174158 658806612 960097004 25923764 74444855 226076343 887432667 10387828 181319177 790253084 948577403 770018000 786606848 260543401 445778807 405617381 648477158 325251752 442610741 597977958 653040544 713777671 907517545 892416694 920856852 696533779 957619100 875291845 966663323 783283819 826169756 827759618 928319076 897955455 987645147 250898226 960686922 103092878 691794681 351058595 847243662 289313626 696603239 753821651 823684206 904755649 964988818 926598836 931324570 2071159 577641200 145055135 560360671 791987683 880064035 658723676 929238186 126033009 859126779 548464121 949985193 436051000 967834561 785038553 826620167 473257538 795044555 763174492 930369956 173616337 947628660 170263984 776710962 741171508 844387232 118320155 527446170 502116679 763371311 619332319 714181014 558395667 987717692 227577072 395439508 859720180 930139035 993438671 993978265 337809535 961022355 736352702 753668896 226098579 762848816 374488664 972715627 367018369 563927948 799660733 939428714 723538184 752176302 133009166 705144593 672324917 689566709 15175856 822697972 619580045 799043567 852899013 931523739 373812547 635004940 506647742 806466412 687597480 796755832 893618917 958374438 280783214 503585393 147911783 286914958 753970748 786177409 359648654 588829981 304800902 749470753 480877219 540324574 778107881 941463758 270923488 981343141 444263134 708069108 552916548 657948120 728456449 972347590 547662226 860806941 232306938 586488766 921895814 957355076 150851359 982538762 289335498 631412271 611644518 968854108 786332114 874538575 471847821 506772408 264346390 814913794 425161864 736258374 783129546 857248180 352619983 437298386 592211404 759503377 666780561 812877338 310610019 328689687 952079351 968192088 92240085 201740415 715493717 903934881 823924457 874423241 359755157 435553929 164079076 609042108 3758690 137210621 862535766 975842801 739484563 858064828 104874429 954068506 536736044 548673820 628074384 953158259 979962272 990402637 116257880 617714833 28903197 768660691 631174036 860993730 221857470 612828042 691130407 732807026 147233865 235016272 239229540 587159957 126722 157161945 133243750 938592852 774079317 868881609 878976555 988312307 722086056 832182858 717903269 782853620 299512492 727362604 130963737 848277385 903479350 955544487 713928207 939584385 781794989 887005202 83500242 466448625 346236764 444445057 436149596 913158482 73279845 618283616 513658407 778231881 30517281 110828460 38958497 687853251 496802746 934485176 213510439 990554717 900514055 946944541 995465265 995655642 429418692 737428246 957320865 990159565 769996291 955804699 365342478 371301697 837876620 946562024 849435372 934421265 941893746 962546006 32283276 53699387 900659236 914197585 848060319 918019602 502376134 635919985 578000187 752326740 120732558 595576690 428494314 452100511 212100521 806375777 304791502 903075839 505854867 662801993 408525329 527313204 744948212 810847575 766392141 939793756 127760511 157357953 819936677 876865558 789882589 987165272 44829617 690368730 909425083 988390592 760807626 889198149 18487802 793399291 431250957 880146202 281963119 556154964 470742733 767361460 200188300 839058971 560059125 820685028 988870639 996801481 675687025 872004650 929767074 941526669 979787924 988564375 114530936 361750433 112142638 522897531 100890230 990093566 972590904 997144961 361944460 463591993 210450347 326236525 558142865 891020688 68137436 180837277 853096117 857804861 985861694 994214485 875375310 913667960 167796271 618467862 858258405 900472763 62039571 493338081 594694335 856734042 912063715 992501105 371804849 796131720 417816671 646722244 715471197 750016980 458706605 776432120 98031827 346802792 303479437 429698721 430935713 688982796 528666707 888189192 422062230 843557404 138133561 249152796 82034390 447747563 231252867 963298899 348410305 728107702 288002839 646252220 713001341 857217738 574187368 961478386 604337262 826750109 592566018 805351838 402839397 535103741 883926239 910421767 806787648 899816743 116497522 182580456 969185520 973005898 612517249 859164318 786367708 929949778 38614401 320696688 911384213 998720478 300418367 830279056 50795754 437889451 30610495 799625512 83931164 302718697 161524009 535848966 449987781 729952128 299368942 383484639 835566872 915212462 190301997 460681223 449926588 513281950 300091847 662061342 657944271 961945139 603747550 750658608 665901915 814456694 388542615 727899135 857079857 941255923 981013916 998935617 613121161 851423990 826985065 965682933 444655610 917125889 538211484 916968379 867077187 900756120 390949021 840055705 462066072 720491557 372054016 921601256 52496604 159178085 677506118 981287897 338151062 779090279 986908817 998283340 716811169 919179176 459822489 503547564 560466224 642237657 444610804 539973401 269263185 389484210 594888197 805771668 337129523 750514734 507408726 665160018 540209446 851032712 25323475 198365278 218034210 670082518 906679093 974845818 343853796 659210833 922655933 973865531 595952909 970485877 247886883 355906701 458216292 839922995 872129013 948392529 983877091 995514025 698902921 780609302 226285369 542756858 921098883 951634959 623529934 723440819 212004880 451858969 7958733 262452744 497187030 557623443 324790582 967202185 297960365 910614158 850548534 986731348 722368419 739093920 711090792 938014452 450967172 782038931 783242316 880535468 489696989 711927329 898851764 984948732 223963043 237558457 327075416 977423069 692858382 857851880 336722404 975076664 708854380 759667527 801606823 913049828 583310554 788535934 869171221 993331371 433778152 932082339 407242110 540508109 641700773 653714202 965829016 992988680 126030899 739907172 199650295 782590971 626207245 978879991 458668717 500777992 446975109 861317632 383137092 500842535 619467046 893497298 347992211 817384714 56887724 249447899 749425558 994191572 32434938 606812109 856553955 902793163 247579742 760879453 872025954 933770762 7453581 119815255 748724979 816324333 830281976 952243388 940786276 953614859 387702435 956037905 812523144 830527833 428513700 651795520 611067610 868631557 355033779 382830914 283924914 477728325 756226338 817955305 395327229 555320463 556354444 925826580 516427709 606396770 812554225 929975546 288863475 511827130 856911769 968063467 628742098 996553750 689434383 689459061 569459473 818143686 589803935 750753844 853867087 953554072 371638641 466306813 168296220 601692558 345350582 370182522 229682200 676913857 380872062 791635560 240702499 284996221 872995920 935489817 567544985 809435148 104721489 639314003 384509513 533246506 466756560 986758718 417810086 535866452 459786945 957093295 707011202 720604509 930275652 994797816 11977281 520390716 433135 851081039 208986619 334663812 939244675 979812459 653026580 982723978 11077106 827588873 759699961 789467587 412361210 607445263 91427287 811173221 902589947 981433515 489386560 761062741 984583053 993919196 667429769 948876191 355187602 712513647 706408669 783116324 979373859 999755370 431522828 875725975 338025535 659068795 500341000 591731585 445928484 620402150 568774522 575771652 543628534 967565180 595291012 798684084 334454168 774235520 203415596 409571259 955981349 985470735 658286074 968441339 29833600 683592808 120856219 507478568 638766760 821257561 192895754 249523339 617580200 944266864 890290642 965534326 83272704 331393475 870863203 963918158 741324517 884709298 778016454 932093915 219909149 574104417 375198809 865683441 843515022 968371558 771307157 959863308 639154905 944820827 458228184 880388257 324166299 800126238 626898939 788517617 957605562 980994843 258596517 517616997 864177244 969171975 375877857 422341973 473437032 570886973 306060586 783963149 112045662 635481315 15546384 689423372 640894086 793706253 373070921 653033009 993124329 998734963 342869340 372947309 321715408 699140111 330997336 578601952 863286141 886667647 746644025 834480195 258160578 594522930 586219105 724785257 615646472 734891987 897357565 964143627 388836838 947599069 417439108 845708040 888163085 899764772 321687849 495109945 784429277 985206108 738452126 813093110 905941606 911250380 312155604 380484842 822427688 864420062 277473692 953795812 147612869 221314838 443345053 723182929 363615026 570025821 101713936 850145139 60799458 233799787 522968167 590950940 444034377 452297646 213745311 873037129 441921053 556695313 770867312 886691894 64405199 873114516 565615596 578044310 934559063 969548776 276988856 438633338 347475760 819801719 629496851 827701860 582515837 841554092 905853211 981845500 532608899 700028957 72927825 117361523 912119205 960674732 411954743 488162338 984229164 993209248 581960052 641239925 839160856 986338060 386375267 873417470 124758285 769294909 634721550 662784821 262030461 384302335 739847374 975905170 738442653 998665974 406320207 595684429 682674260 704763102 247708785 997435106 753029781 923889380 116416535 380211929 157823459 989235238 340116201 707218976 844171400 861109962 483109333 584120154 558889491 965873195 402751446 852997131 513840684 840414331 148124683 763880232 497065954 899147361 557622543 992084740 926025270 961091254 329308774 354915137 464657808 525615123 909258162 982074218 673401753 967764944 824938528 994631575 408525073 575494965 412267287 578158212 721494413 776123584 458916842 644142821 890836109 906595023 27968136 63991815 118391091 157942860 613743376 757960219 969813394 980834458 436891857 517909138 286024248 613227720 88516062 984179885 44498748 769412338 568449161 967667556 281873503 651807372 273344656 461551527 960549112 975061207 311392435 411374957 375097332 426282877 810131132 984800872 455708421 952295821 875613438 881479225 6742859 838529971 732850945 767778988 274999425 605812372 375067052 436204179 344586356 798603988 89854828 840556252 467361221 534385779 612913117 964283583 769250237 848693365 426454402 589317293 681982932 793844896 704411420 997060789 23096746 244008315 810371460 845473828 442115933 870362026 860205764 981309889 685415780 880043585 303501096 432451032 369971241 561425079 660563286 772125043 290748537 452837957 656264652 779017270 883185536 963570577 796957620 955117507 578655586 874117714 471440108 735075210 521797584 881089830 673220446 803940677 938286383 970310877 817159773 853124727 760079281 825312946 448567179 578132296 508606311 586721395 892644162 916219497 936034549 949137548 691804596 978734259 547965348 975839786 997595768 998021394 941981198 975785968 539542392 932619110 689440943 734292502 896719242 936443494 831985254 994804978 311736912 809755146 236477309 436095780 606312411 853801329 289812636 351686817 940298502 959266939 256803503 651841087 107021852 337144090 694456924 864000513 798569615 998868757 29312728 738780608 999488935 999884380 881912894 904351264 695714113 739066180 397950446 399084371 546840574 713001639 179132759 744796279 683500277 830642497 257784387 973803123 248326001 444397147 128293541 329138387 318111746 413273055 555353397 983483693 556701445 847001692 155181759 779055262 719353943 811736259 566600535 770545781 640414908 809995413 373518229 648420086 487190917 941027221 599889863 772723742 790836385 868750254 804568089 864202454 528651025 705869716 795874199 811431359 751902515 770222224 819508747 877174297 945315272 974895971 946775441 964052423 278681378 675460340 36198955 187171607 265885765 278584989 92751355 582586171 430745693 537454444 608872652 863452115 635128222 761158559 549120769 902481892 942437538 991303514 652617361 730266836 731643124 911960879 143281961 784633418 899058550 947771730 854449577 861245024 70982471 450766556 670182502 789063990 801401131 833873167 435564784 865062932 645936000 686724924 523288528 733925560 305949053 327498966 91146034 999704904 181008292 893378301 917805957 986327545 603004489 828301423 240716301 605735088 185861209 606949270 83251179 203366702 454935372 574331467 706495143 734500744 427406771 972635199 374292701 654129977 546597627 996720718 722748942 861691349 385447086 775168412 589820304 809905314 360868357 802070401 712396177 902490253 165485065 467531862 651158771 662637253 651144378 839887561 459981584 664097399 413528989 810657615 634557695 779093237 792565683 989061201 679624182 707743742 444619724 582735451 869866021 983848717 132854645 880906631 244054697 629673709 842395135 944604404 266059488 506778784 109988611 977921331 424539944 430568926 997508401 999795825 947300235 951245708 383625406 815275038 227129915 399657855 992212555 994395060 216055897 800384934 541457055 929494572 432925284 998750128 395579073 762291697 912381250 956924214 514900019 830062908 184265102 310765435 256835467 555236349 668137915 840397097 344072198 577568809 720985541 868864263 679690039 960847873 391487985 541567438 89767078 884540650 426811212 650779611 923274186 940233707 231745416 997062772 534068967 890455105 304636369 757277551 258485206 799610811 388115671 676976948 741982011 894450479 682911639 787081926 931900097 944923197 68404416 513416572 412664906 986746006 541844045 869089834 380735674 448238325 522230002 655980296 853756751 894986216 967078568 987501692 150049467 763171643 505158550 673552109 806798907 947493062 26244634 198475431 96258822 302934183 364244008 532975248 435254754 644228097 467950463 731321794 774115651 857820113 422048003 640443274 371533628 519087903 134193066 726082495 802675123 960296128 260204145 486828369 87948933 809913217 435857319 668303196 751120447 844626787 117394218 535134998 956006417 970539384 340970411 610465425 555675844 911920836 892585962 937612333 13697778 594031202 593874288 957788572 665815923 951167878 560915228 836467046 607223809 786871540 97634869 892850037 640064731 766040381 364639283 608712115 838073201 862347114 761556520 850683585 869279394 949655261 265263301 312026776 308239173 858856724 863311205 912408450 250680019 935898397 575747171 915923688 892180797 894881967 263495825 912087939 390132726 960210021 463259935 662560700 452189211 934194552 772274242 826722812 153882324 719861324 375706591 962895878 795435163 834937039 789744332 820179212 829891103 927620661 56037010 115029855 283556827 296397007 490186758 793715809 536984157 780039370 652515824 679702374 605954593 861905768 382733854 537390180 698001653 742440999 526614581 644219239 433552711 941933223 633916944 744569772 209324021 349238783 89864822 386654025 17766508 261928494 273646456 778135500 725543049 947546491 73097896 389208671 504284612 802514194 875027754 960189339 946991104 978596886 849930212 872786244 87218301 764974506 77050602 966121807 846297925 848564367 342586835 736822096 360426082 364632102 297722011 471297860 670697482 678327952 5674435 665291605 922758149 937499665 509019250 713296917 296386554 820679520 805961241 864295201 654027219 972337170 304390591 557740098 430968513 440348763 330331621 509982915 59317004 598672295 182844793 672334803 232281033 315488404 391223646 468047225 335912887 809503654 649711484 699547297 37312456 485012743 536551559 750247542 90808429 709279439 566675560 918805241 151391638 644779912 288704429 814229956 840514570 866195193 883144049 929704224 291737601 587630897 682441483 963068077 969717017 976122012 715970749 960206767 266464294 969217447 945442640 977909267 760964454 883443225 811135753 953281966 297816766 603998248 364138397 936764619 584292235 929972788 440447173 810995741 211024904 806939344 91321703 160743398 542037477 854530140 572064009 788850261 291639915 686210809 704933782 768679782 954472528 955682191 678028452 778678385 709770099 897183154 38443939 109550074 629663538 859524239 62778072 77072960 357573475 552006270 82345841 421222818 187787680 933074817 795910552 818696849 625642273 758118377 28626171 940984271 104223566 531005279 123882356 791167936 481961594 578643860 824539126 983386719 355446672 919223167 45707658 285558759 22495194 706573801 130655769 333623162 127942657 885140503 607488104 692039075 604016958 746681725 171551472 672982953 752271196 755555758 895180672 976555521 704921889 861203939 131452816 504611400 439315054 919275579 939325426 985393432 111460032 583252758 590527878 653718201 177836038 443520066 404619570 923068182 19316954 725281560 558323195 713587023 698487981 750666895 890755672 912337481 462659190 602752768 956855844 963074958 511926026 553957881 878911006 932146648 412681609 626124581 247957013 964898118 885757906 972611486 740847132 868845596 445317269 457452801 376929939 809886113 328434138 530227940 217982064 743079097 604038199 907474484 238816215 520432522 2821287 465578471 734988016 962480056 433232682 530402182 574624224 680676603 184656185 350014733 275353317 761418553 827932882 876305651 270968483 377872345 116625881 964842464 686837090 732983964 910942801 976224282 569521559 843072171 782174850 836237629 702418239 764030661 747538660 979549895 81050880 668587994 616999404 719408674 606933703 698694176 126757354 642521950 409919832 945129675 44914774 988222703 604871300 890621103 865351414 873954252 225650394 722554339 709343147 997051823 635849080 876196558 966987580 967617393 288003851 688695154 914141600 957159148 669481913 962975140 378625459 859791582 136008358 770960651 667818550 775859375 135603136 255433390 110188447 921246719 95367622 892360476 313351810 823853893 141101344 618325186 891305178 914411943 586857687 904043859 479535528 817590087 760478826 824112746 148664269 855977872 633002975 988602832 967842962 991163266 404170740 896552526 404835658 783696496 475062931 956965530 79416189 212171707 403497304 818003066 970239923 975232032 279357613 324982730 820040066 978264350 890727236 898592680 757996972 773397836 937733787 956507659 7537425 294056308 475872973 586627640 84207146 721327889 687937979 879029965 658587490 947691136 864350112 982030772 379497770 961477870 145943878 508394264 620166641 727471125 627364266 744961215 845593439 960721166 156596509 362661774 99000202 115036796 404239609 756292092 643788362 870222552 64960440 567511700 314261304 657875489 154025989 984073956 351561043 985731072 32463313 576421401 752666194 899877977 483919519 568574375 733622893 988375094 441213699 947658633 985775550 993351780 692700108 968068695 987873617 992049599 999725500 999899455 852152752 879792629 167968500 518482659 169062822 970442364 288584831 588395988 34248457 143322758 155629178 638178162 153023068 506379878 97007766 482722269 444271697 824688043 381573525 786263598 473824385 974946327 684552162 943725109 251913421 999701817 532175630 860365737 576072689 986389564 571537722 968807306 921787523 996275512 282961742 741050611 168671099 819818015 336218920 571675292 65352365 910664912 354083567 592880180 605766729 978064865 619866108 967908675 594723817 752964051 29866007 330721816 806044202 872409404 153395397 482042960 987037033 993403012 738739270 841408013 828271573 971528708 889360825 930665779 661067005 782023692 509558113 752612563 479930762 948560114 314888620 962806483 953652583 970546520 363995442 938848511 300540567 968162476 8854781 941409681 868443156 914902467 998937080 999857883 759425764 827678597 582664786 649744306 721933781 861816014 847452943 952753085 925197195 987557278 491100269 727532471 77552123 706759744 570901077 974539792 305212165 411813956 487983524 876845047 81396898 681694928 664845350 735113214 847421756 847807414 127967684 610872997 219023148 808592631 119962021 513500957 601323327 830307656 149961359 653843643 612158595 809498256 318846981 413419154 789432343 894088229 710658463 716728215 193553248 735178917 847024915 857130085 900973684 993338385 70128031 554165564 576266283 703493676 339893502 847426451 589220925 944827829 685490691 775447206 519780676 635445857 378532466 800009075 356143519 568494105 999112423 999835146 585066919 591174245 919588923 953050721 354067527 662373156 971334774 991914562 853152428 919862512 824485507 970279651 392737816 492917316 67355905 288780553 598259227 780430500 428568946 706381686 684695642 935712012 842990480 870012775 606580303 718941878 45653977 308122442 460186910 616727384 201337409 659580984 994889426 995008411 380987122 588269526 256668094 486970466 493809890 807718262 3362377 548703361 134503849 963414707 72427352 119473388 539202665 806753719 215662809 814792002 586617411 596274746 823268580 918086564 328610412 785345429 863954440 999294034 766023902 835313623 848181112 886542048 812623081 855090106 72319385 386263243 442380480 931476622 511564738 561085927 664968961 980366944 559305955 793544573 390762273 910868424 827793764 850139906 454712942 921571867 59268630 683710617 739486593 850156592 944903551 968177106 601478831 715513072 455228849 646176570 785865382 926007752 541499702 624387680 4322282 539907909 67035711 968001220 564500142 917971132 824469416 962504089 877784182 954279728 569390550 668799847 850176511 988634713 291358572 299014668 960753459 962721140 140059529 435491237 183661351 927483140 831285474 879547994 148967023 471589856 943934228 945176846 864642838 945588940 828065593 986348965 303583651 578603043 636380600 749013516 396975340 674126993 692144104 727255180 676945229 720998446 869549377 939307718 496072553 498599133 468483573 672031157 981041185 993073215 707445331 981154666 685393534 734573055 421403610 864107396 447240938 716204277 8505250 403726085 985856999 999425818 611840147 794217574 838343809 983157703 838055055 967006454 545048170 591693154 616226676 773261994 439504047 705257095 907469750 998938876 44942456 206964110 70006503 377956863 267396350 977839278 655824404 994409252 506020130 541366411 740784065 946010249 531606396 756378565 408364741 427074105 806992326 820075428 289760067 365216992 523317992 554117391 585617111 773173069 927879674 989751967 500054029 693005021 888750947 916193307 844044301 976780467 106480247 417820039 239997488 829541272 798690981 973820154 975377079 990205891 330797816 998240360 976724838 984997743 778720677 861950507 552835167 841140029 811628478 960520074 105835772 720678571 152513844 378580363 279575922 959232677 181036529 276520667 99962805 674205437 81428968 505944808 627702760 946521866 275741849 660584814 636088464 959613378 597953613 780354855 86904554 403512289 103699389 161247148 617484465 790859572 933223466 945210857 256439913 597400493 545488951 687933092 705884703 740040376 26111004 966547166 254600183 817223389 455614076 718373045 792571468 830365022 592911097 974153638 508414155 553606557 336261053 473710394 303681242 845396616 532603744 946092267 403502669 547646649 342437400 871947982 25787669 811054482 312136152 933049483 896687785 899549234 545957562 817872951 578975667 846049799 37737310 389953239 190582657 282442146 833793719 981623738 564909248 703032631 984023319 987400818 866377352 991290994 135828339 651417528 720144329 758553585 13127675 853533725 308865855 654429117 587037196 595458170 326986116 534848464 289482922 661413393 391117436 543511016 312978088 322531115 409142955 934199569 68537781 333457117 847842391 975796615 494366487 610638444 196578174 275332645 71367346 927733364 459584142 464095060 420942248 675332911 25093881 334214175 499952577 780738120 399977938 631143751 501677159 546593578 322074900 954995288 815725960 939946753 965899056 984336989 802143620 953615328 751892084 845454642 811727478 877406181 462875052 704434400 355618451 669493722 318805168 486646566 561632431 798059479 912260417 971413869 411841286 593467017 776610392 787214546 585446729 659118072 804142205 920329325 851330201 871133452 147310248 716804450 298684092 448608883 321019072 509212501 557619740 743861356 823769298 996807472 665134236 908556384 640628922 980226213 293583098 321367371 198810006 347778079 166469569 385842590 614058256 682513782 691560731 817221118 318988990 552819961 833394418 976211732 520663800 549624589 502495262 675211314 306901659 918471346 435685559 932566514 629975005 979148737 778016902 834814815 165294707 430877481 189313763 533462981 492970477 740483236 433682559 668325966 3961656 694584964 479235317 839047982 728945256 774210331 767926050 956900977 968032714 996082327 368858460 421057478 485213921 946790177 530923672 903305893 310838972 666190078 281626615 374416301 907735545 920780390 890260059 947995470 855350493 997406896 22932524 571592686 952302608 966143885 853979685 879555087 441583060 672014562 725575465 782280063 585514520 786451596 882551541 973169372 403311854 849744550 10376868 23820410 838029858 957673306 833918349 864422129 567781778 728358900 948545480 964311510 811252804 852691394 5517461 761757145 488128725 701947982 941654712 996105377 363163815 493691421 765886665 782808577 625852529 971852731 124100062 680489619 773865613 815235208 297280934 628160211 603300928 747207630 551346300 649042063 821610013 982672760 418044388 725102635 393450026 416986725 495884071 900717830 613987062 701647188 489695020 623388770 925031517 944309948 763146761 942763375 937735751 959808316 494924771 550229911 63912466 752817349 704440032 738228200 318590514 806622091 774147402 913160175 825144169 969291040 258600427 948072003 36312865 37921507 455849425 881790546 202127778 677871456 661759794 725522064 734778709 829538233 204192933 353356042 963664678 964615495 886455295 907677308 23564541 161998825 450938182 887546662 261289837 589377158 158639994 830475518 368336345 489250756 227006736 643103350 589467810 598356635 63003890 305241867 906775430 941009821 602947139 914547259 884515210 891510877 536013604 744419492 310919333 883883125 145843377 808103292 668920862 831259808 238853594 981839415 424723648 915526213 93436323 95494217 165872315 356592115 88515775 309462800 267480508 459633915 336919465 954466752 202094609 515129407 624767714 826790505 22667154 43097578 906724674 983920489 669552772 938187459 647021862 831539239 689210401 916332833 977767649 985232591 236120606 458548711 554534034 701949708 106240506 141671170 531117164 998030051 944689434 976281853 213435975 802524648 481691793 634826242 651806657 750897657 377932091 447744888 754857687 983317159 160681507 187219375 83072941 592072485 576782580 999092583 525126904 626289537 15143301 487149210 29823638 179849041 248779388 467527986 72685200 734489327 449920718 495318553 434861914 548935290 120271286 861554726 232896685 666402782 184649341 241962341 768688007 859437407 813501195 915445578 326817438 766541257 304726777 437493470 213936263 951725459 759867928 994316273 259236432 719732742 946884673 952178497 500172852 948495552 150882006 360518899 170729658 194437440 302358898 802311612 454371341 729289528 529541089 645358984 989378816 994629212 865579162 907890639 118462213 368668081 123710678 517839435 190868176 543184834 47201639 475556647 954903114 997677673 614280820 711888136 436558207 550489053 180503447 443145921 846309714 968880492 33240747 505890336 507776685 885963271 327221650 395915297 392106141 897588130 290332404 499768833 822853678 872165337 381423865 858863631 818027175 838842419 707697688 727021635 380117950 399790121 404376752 632377452 827439969 988429620 872055261 928362070 360817620 926566164 719051015 872826303 804208100 964441361 974611011 988635340 48132627 881353088 394033198 556338612 738199125 805575502 151722728 152878209 920609044 932714395 103754131 520564163 748236530 911972910 719862482 781744971 395057624 854554579 570821472 719980858 386229048 719958154 958830974 973494962 394551058 733543112 190877190 353497195 980783871 994016056 312200063 553500529 568002261 677109302 632904587 662652076 972523904 998209733 284059785 876679417 975719520 978366662 873241670 922213573 498043971 977997305 810937302 842092546 525960962 676350147 246574307 289895242 961618652 991503523 525324904 758542637 349219045 460857613 11134404 287722361 798909707 839467411 139314674 475269306 338556121 462085760 706270914 944665357 287744012 690042465 620172950 952146085 843644354 919272425 238754861 815617926 931092812 993825228 952540604 977615850 863329808 961916935 391435064 640156162 87007530 978603205 526909395 942147243 979724323 989755560 170000054 551681892 834078379 964849379 863225763 912646862 367682753 901510834 450512550 506948772 300765905 657943030 648848466 831488796 476273592 968708248 764542522 825736837 810170073 837622595 131996149 846056299 161602717 543322807 351552911 433747232 837664816 953699140 682828989 772854380 55425076 114354962 674138489 704930296 836635360 918869345 236274003 392426453 400220240 490677683 30515248 182178914 618942311 830758023 189454686 577432364 201777302 490134913 49192858 183388820 519495219 703689297 623381147 978632769 869654718 902495147 313099071 667939416 420426293 683700000 520309105 855627326 318312597 960765139 893323995 921668676 632475581 757691254 481864208 501380670 744900921 876616673 836677940 906627406 281151339 981447049 170353350 501084423 896572262 964088566 884646019 929929052 816300262 996453679 964134158 979808749 94732353 481931148 180669309 352514808 202876684 360453070 14631655 705212549 848118990 862421666 426705857 837089933 101251327 998529626 319856173 323602528 774735977 796218705 2790332 296236719 140427293 697902332 483933221 587326918 408746624 949058061 218957961 644634827 154264006 576597386 952550056 956267592 159423485 265563689 470441555 909867170 366285849 933733208 734570185 736516848 120147810 768077343 385326742 471811646 30423794 660192229 318060567 457191305 758764103 946873549 687503487 884405130 963044136 997832076 398638017 471299065 275418905 519561018 280983660 375461018 694816561 810843341 493461412 954648493 915197471 962438139 816684740 955597865 279786813 710155319 592653227 761092684 629621556 713862994 809995165 968490064 514868345 773557633 413463248 428540679 979098239 995123000 430715822 539001321 826656418 873640195 605224333 976451567 907542343 960114669 664043576 999491352 104206109 269867467 600085686 837520099 273138361 398503692 394245046 862652155 487052379 702114406 171011991 992508021 623911106 943231100 186567100 889771406 874209131 979874614 168184795 602052971 392777304 890141431 186847132 995838908 608428838 880963350 390915206 770146258 321967440 376671714 701116240 760488560 998025619 999977106 836785294 851330096 613461126 706667048 885519807 968301909 827944364 885884643 533876698 834570837 63234142 557917408 432445344 881207359 797242275 905939739 919160956 999160535 634126038 721468112 867635075 991284761 624861444 649302430 916729422 926796396 564997853 965441010 107321280 133714911 941645281 943667653 294343018 556085746 239569894 871789370 3508873 75283627 259777591 465720094 337248311 454016072 713160222 871647700 568349679 759285758 302312302 784880348 890460682 986208593 930898472 997434653 43044323 779482412 134709039 421047817 652463839 898390232 959076012 973828633 806654223 825565149 786998082 888488046 685494775 742693740 978101751 991777320 753902791 909766524 215303384 631174045 127654852 156996452 668239106 907549951 971344722 975923184 548830614 838415905 986735897 987058511 608806511 669050041 608331533 831773645 366158639 432233646 446970387 802069909 937473038 965899466 917022989 964272009 591334802 651783939 812198667 857884502 139250848 408396197 993024410 999352091 154296342 813671045 381785268 432483038 44845640 827584877 202089980 935891192 606046573 706706261 812451275 927424091 237003837 775679749 719512384 735785395 236440348 951273407 193399120 374658185 546051866 946358586 734136205 955487380 646903081 701452067 244122211 427294509 342084597 453983097 45838632 388246623 583650109 625739099 550065085 974063598 57885718 264196138 368089062 563555496 515649950 593394164 182607 921157906 524298736 567595809 346826542 414276817 114592546 228644214 605481924 905079696 321592672 970334150 45679455 999250895 717272559 749108487 448261973 513710090 363351978 785957482 519095698 537537856 861862520 871493273 341560183 442035068 259638583 724260699 343105801 785124035 160235049 815849536 603043525 717750183 459804505 690975590 648094284 949490803 164300301 737456207 150155928 797242493 565806337 569086700 846153411 963344594 67262589 766437309 677785714 910391405 329053952 962388783 135926625 944112165 584055720 586695528 377700393 428627490 76394447 684520453 257685436 559570077 912347294 985442628 219540043 866081403 71594509 531458082 153043464 351156814 64947347 388252309 676476039 757290360 530382180 587649363 820175810 926758300 510797882 672915619 716769021 841353246 770161235 863105005 18324778 752902180 472033746 987813929 246796806 492489113 827899176 855226782 91476866 306308126 853059658 873402358 825712533 905590651 189154362 849548158 988961801 997133675 337910474 986521986 331618080 417748787 903119817 986429136 615840700 778149638 399275118 947147655 921040675 947555567 900396188 930936840 519777588 724620448 956122987 981038838 725505854 994253481 867526242 904284594 885558127 980417063 328061207 820544234 394542720 737957627 317392468 824257965 822611463 892530848 509976988 679934091 261722343 996298289 638195929 927948646 212226301 940799390 42305198 687590360 937152133 998545882 544823886 917452434 923642613 995045017 227113360 838803817 758165745 856255487 178438700 535515467 542183623 899602530 137689362 814257490 920070805 957831852 26734709 834015879 144551708 540914939 288369953 316547440 421476704 692693302 452057511 734381014 86670658 589968736 713091373 731782923 200972558 565659589 421377342 569663173 493124176 590209223 131316510 463346384 710591867 920780314 832236950 938209246 512444189 865515003 921940310 950223766 97093771 816690763 677312319 769913819 126698905 543878664 531155991 626929250 101326712 106233143 938797604 984038982 304636985 795759028 270079258 315983229 930040189 969966600 470128745 805209619 867628026 983876334 297230978 948072425 408597841 435635199 989300560 995289338 367437742 770865580 821192289 924892519 470353892 568509263 55617091 499034719 181542881 569542228 569385093 613897814 62405258 954238518 804206679 906739767 963967346 979924817 53624800 596988327 139328430 606855336 323624671 675880075 542172884 843588636 302869391 336469907 857168493 889752087 233761860 298776166 973060187 976601061 182666129 306040689 726002921 787243262 892721322 995956677 857565888 979274162 640797703 696418244 560048344 717572322 194670886 990268616 692669744 700683609 330459183 638999697 846499773 910756502 623248380 668975325 404728700 554918265 973336859 991845595 967783968 990660049 764686567 896662596 318775857 709967230 770903694 881169148 151173060 485774013 972807741 983260447 633463944 871215552 456538283 852561687 304632830 647293197 559608219 791061976 515525722 896305424 749766736 894732746 905862245 918764634 424976861 496328521 340507715 722384327 976190492 991895238 127598852 640776340 683203401 834236280 908906919 931034018 485720449 861590065 609533818 612471627 321983497 838756487 65324341 575333451 489749506 808874450 561660062 739050787 689467566 713229826 472591228 815094751 566872157 702313923 165842333 541073158 437965205 843782782 874467068 897915032 865552585 949675757 627068613 748579469 679431722 842617754 622361372 927429840 529642763 684820621 30270250 571953624 489224712 825019431 358942805 535581421 968229268 977163496 853322182 903526617 483398623 837360625 838572649 943061972 761567262 874891129 826332021 858582308 256175231 419853619 208505932 492497722 468499469 600182540 106070458 999705924 257381107 600935470 589249328 761468784 718088169 757960754 311897977 754054673 388099187 501770633 594615949 910824763 902738640 947558524 53633684 154983829 683221940 692411368 944610984 962304324 685450414 711454546 498047673 865139491 580144581 933561075 372009122 404946132 453117387 587134843 80668443 152311410 651824164 866950758 73226215 844775486 652130463 791612465 513757313 695580896 674152484 685058394 83324100 895054335 632954605 941999038 441398831 937201537 542054731 838023750 700350814 982670335 151422630 609786488 20451551 682333866 990148986 999338772 639423698 811164030 525222030 659136636 483967306 679866165 674298624 960159105 153492335 790524232 166916521 546964111 42714485 621820906 242237197 503880266 301597640 681080655 133257227 224298605 304450044 828643029 300854724 388093242 610493006 709101454 415610873 675900991 625393703 730086797 869464585 910489541 523213106 661250311 981412010 988186713 737224014 759295682 996622442 997173261 680285775 866161965 186297151 755619775 20627593 712998709 508013381 562186854 747006670 960922329 211778042 829604394 386266068 744821913 586356966 696498612 235071254 329184874 254542384 310449157 820143897 850435394 801368865 809140406 821244544 949457640 916216480 932158095 322587365 906082803 914297274 945605887 357071405 676796593 346420937 355826818 699943454 765234403 966979741 981706861 194104321 665927845 472303027 496659141 179630175 936120017 934332053 948410786 750481871 950198992 547634113 743428126 816129892 902906471 399852266 736465729 22200417 310829613 347312792 648440553 110074649 751234687 713164558 997167082 274566572 358800308 442551039 593770865 582733619 731365655 431537534 453620104 637118554 757748567 498255785 645437004 667320608 941689536 522341555 989393896 251054636 498026867 181142048 223207756 828969778 961788651 697173710 726250642 784968372 916628725 745073875 795057698 310070724 323642579 743291243 962799626 16895673 762681632 963677981 964594059 612150867 831868873 360611799 813191482 816133033 929550369 979260276 993792746 16540188 245115065 917494268 941106563 281527677 871136197 472975639 843866224 284935980 860628763 885053245 997217628 572720254 872745290 888186138 953618234 639119093 716522471 302290721 850524855 263843378 454585015 997501390 998262935 436290904 828607392 807735699 954881566 184443979 835362177 173015999 805328038 934891467 963616076 827264719 999120841 150211034 948065647 713825119 815579347 974137533 982539579 984667648 992984041 5041864 7170779 789968162 872385246 86596397 497433015 307383833 908976190 981356497 990700894 568297322 876319411 796934802 950272255 542701118 734140260 526157771 694918002 88216149 525197542 786713645 967011912 84005440 812678097 59751322 511609312 350686122 770423645 368808575 773484770 56404721 387528283 942782765 947111731 587851864 999609670 411341885 513261205 958420900 984610970 611074587 669225733 458436642 627650259 347275839 557879959 127536752 765265706 515947121 948061632 268188171 803401831 39100843 47402990 297935401 555026518 743196456 841793817 602705884 686555283 732461024 764184128 462304071 783360565 333530523 718074632 77702438 695939178 636703377 704798916 177964814 179279332 684272501 834966843 2511263 99050473 13716670 558231859 970935948 973937552 94680052 554653126 759340915 842981607 705514892 814524433 454345005 531231577 995050980 998706812 94979312 621691851 82972325 816641115 25807139 998242983 641142683 787054016 645593217 694944206 197149816 464293880 506361476 548451760 71218361 535661269 627235552 776054849 607476798 625249782 272881942 323938381 874391511 902958152 403667447 868912917 853009324 946925758 41770169 818873747 44949576 857811351 346127648 864807750 73932890 821019059 354613062 856868590 290196849 583123155 725090673 916842972 975988060 999504662 938374945 973019885 720772336 777120660 312390424 749003468 172064349 553662083 780617671 855680623 960316010 965633832 129273108 990942646 119032832 528486086 244403657 695387355 114953679 646538605 614585712 899349142 231076028 791306900 306392840 662761844 836394721 842893718 480454943 535599794 817645903 818876447 19885667 708551200 671642577 766227438 928397415 981006313 835239354 994907591 758744055 931878539 704738573 890275132 194935833 463950335 526777255 533814995 627795413 950747761 200234796 390360337 329348625 506984411 95491683 288395938 971084792 979727672 657611583 673672867 930233549 946793786 440973336 748235665 551312651 757028665 758735420 874968656 183780057 429801124 548280983 983046824 121394585 555948945 560888428 729269579 797617095 854533347 381046228 532464640 324832569 964899021 338534323 906840582 191501496 552065481 763055385 885017162 490494870 625202746 777304868 982371379 324133408 524219546 552015927 836260533 815066898 825573222 361847861 545716756 700519054 758902951 16989546 158792150 375678360 954981683 24243292 217302066 772495687 849151885 560859190 611048264 467378907 819830997 579514623 801172745 7410467 209760339 379304159 863439381 352284210 761372952 64967009 946794659 133723698 821640647 132778441 715192973 888272202 902300976 768423761 997933577 548906667 873018600 355953120 446837951 124193120 533038925 587121582 910445482 228299938 919479317 640669647 959481165 576879061 759653762 664123802 950433481 696057876 905627749 692528462 750261827 90712937 896334758 988317851 997474917 141750545 885557181 993118004 996728509 85528820 172970863 483178989 760050463 964778124 970261537 216414547 877890736 557633976 922966777 731732205 807148278 119213689 671579610 549331726 582429886 955718333 991729126 613418492 981182669 973986629 999418810 157928325 685166790 357175727 418977232 168566398 475281565 767906957 872337215 74016736 119183824 114202698 964098714 892672691 939114962 849119097 960590066 539448827 875051463 101781934 319596296 220872681 632877911 264621353 531684873 68635423 986945232 823904544 980881436 983486264 996973507 953906987 988938153 461587085 502859869 812535650 852396538 365940294 948819735 786480701 894989518 615935828 883731965 760726038 826252698 485006234 990103459 806157635 999481492 742916286 918342724 132464176 676136263 343194553 824827549 565910159 841573725 218076985 839790243 673199170 915946007 248955079 619504956 101245023 207364243 836455675 982508455 10689987 304826406 220000440 872885418 743904299 801281025 911243396 946936608 674861816 915402888 269629348 669732973 245274203 413807871 330818752 416636858 491023547 971449669 945417280 992104393 378774224 525773310 425050814 743168086 598934259 973940089 349133851 614233735 107701163 583238907 847512681 928819049 792754770 978434346 824397529 893182508 651994862 984700341 842330852 960423734 705941635 812618123 606703120 730277756 791426047 960458972 238615055 239604983 461299796 971951608 37857946 717064885 801089242 889836037 524642271 840052579 989441856 999313689 298340444 899136916 519184493 945234125 307034609 473290489 543799848 768613390 311891252 624477931 863753305 964025930 928542056 928822657 361981623 912729743 123826059 150684238 343702393 535285768 376340758 435312247 287249637 471857148 836298592 960500460 275434127 367495490 692824344 905285009 665326216 982758050 338887835 795310769 280071757 802144437 139309843 259220524 279446478 333723006 838861761 911373591 855505463 928868709 428963169 505151779 902421112 965670490 245799072 488386648 351973536 891053851 703709865 889720061 495800308 827460692 925043100 972921648 762276615 898887572 818409626 991988498 891112185 935963268 180679609 926279673 597387911 676965045 633394744 722853858 115359544 758449026 769489672 840248371 533781694 672656666 226877861 988214395 850384804 952133146 239529072 489010454 295678872 313631292 7035085 805177209 723764155 921728811 629172307 736443882 316888333 815677925 305087499 911096560 366154836 961236334 519063011 889148641 208536811 488977255 245328456 962017771 866668311 994167108 107491935 917725629 587416754 796586234 672271999 735210485 919991536 958643028 500089337 708643889 472962284 492659780 985831981 997723255 178874592 960839311 290695086 598040797 277444933 432511086 696516311 965674451 679295796 875742134 566788302 803656014 61989153 380054839 204922880 415100418 306036967 413123500 46106795 473806399 146810461 960812513 887690986 968857073 90370888 735306756 299262767 796374376 868053117 961483674 928125532 945631727 694087552 842791139 43069604 271735272 21512951 162021174 935081241 976932043 153060599 283490405 111806506 998897030 193303813 581274000 284583445 344689377 936685017 981851052 965563994 998450795 379638722 698966693 396257475 943100432 713790546 837226497 500017693 734142450 98861755 432783051 410821472 418907492 207723126 209702391 868216043 998995774 584817337 883538476 846379513 874331028 796777619 865773434 556688061 691459431 694340959 911987806 471395987 499729299 896226742 970857088 357509059 853274728 354283018 380094057 58465441 977274178 740599403 851530529 204755865 539906002 481885793 484757087 276467674 956006560 290008415 797613105 420375420 549074673 592219792 702400649 699376374 788861264 254435888 919189340 544717894 574757378 679330665 934072268 418912718 994889131 278311312 703195484 862164462 906946639 299148346 370590120 697495355 935069349 592077108 922985508 977400048 977924901 221918940 309138209 794212181 959394439 511455179 579746914 46576644 163415213 354748290 807773252 978294319 987306430 556188666 697959173 525579398 804800220 553227606 817057797 557891844 942506116 408833016 485083128 299997419 511166109 169907658 627756000 318211125 725404893 446505691 815981450 304202649 649694981 90262245 147232838 531841805 673474862 984286855 988754126 249084668 847611447 907135692 977582755 3155425 771327404 109630277 348570554 589632836 602229819 869248968 881319542 721219759 779132059 634757738 830047182 828629390 955811133 876272599 960302978 167010334 768670721 121846056 778408040 296252336 443239479 478541912 767845000 742623957 893401052 563170565 715021902 153203534 940968080 977500333 977795661 502514743 707428027 351698723 812100190 370612494 945960960 350359805 730010902 354928063 500802490 995580571 995668473 250388764 501074145 232061102 687531496 72317743 295315786 918511646 920948347 397994650 548265345 29971420 58273067 874427544 906960958 505783442 556874694 249827045 781267657 660821977 914367040 453684919 893243719 623615767 685951986 297133520 748259002 449889632 560628865 907380583 938892796 890281387 939862694 149648158 658514155 301388124 503658799 984370855 995065496 369238483 868923904 813316516 980581928 217631437 348881218 323854053 653032864 531617048 898986554 806742832 926491567 674372581 740842539 939762790 986788849 480525366 575256926 542493700 702044508 909439001 956877048 29196681 155919151 206278106 650734721 855502541 954967379 804266190 971927256 161525452 355878255 643280551 721916177 172688635 988141628 848945076 857497752 199069861 501112205 164268414 682568270 343209284 985704041 344256794 599518041 426206372 828618915 730679416 907382792 648893541 893958935 129247630 411105190 819355286 889663472 93927962 133576525 835586854 923588503 405006121 894261108 255646603 703950096 461291815 497063227 372738528 880169562 296987930 414428953 391788149 658109156 856838731 985624491 14015359 975184333 702377381 871375619 728348846 978658849 412829796 894375353 726973727 828637611 783007512 956610117 531442658 596855278 871418999 928953255 884610876 977339022 191363683 706717384 775411136 864002195 280433253 893373369 659022293 894795758 48381988 761848925 668350310 862820409 875880704 970546765 923718472 978467497 528664021 656142334 60712072 64859422 198054878 971686026 231471479 672466899 788365383 977716623 528129960 961266913 532473913 597060789 849509774 852817213 529192290 772951532 790552409 913360427 539312976 776016045 486104012 762048606 638704262 770618651 306467490 681715107 82891609 958577892 153257845 632116397 931942583 973346508 362222634 527817063 393190294 793889334 879938632 909507161 943140495 988754150 969528238 998865026 294060697 967148633 440283912 573555120 875785123 905674583 578221256 951670232 114939355 383194296 746276376 802424178 665361560 713593305 361063104 458573690 91944678 251575054 764417258 926125070 191551802 235143632 534616813 547613844 591724071 869212951 391900229 981532542 588099655 672300354 913444508 938950976 51483706 111021496 212808094 393643384 653265274 824018211 705277842 908468148 512578750 658647969 415175266 691359969 45289238 601355480 227874730 323476119 521088750 725757599 216280479 939214438 372337769 647082039 624341982 888922133 342900538 516441796 960789686 967529456 412166438 710291860 293187656 599255858 363341484 675688320 512588713 666789778 85383515 822121502 883734464 960769058 209428213 842812295 461520364 901161809 969838922 975518066 727136184 781009935 626606940 690566556 650703756 792934307 101302932 430909842 50195880 378613832 871873650 975269585 296045548 766522744 8669835 53863280 379835422 888547926 121715856 984823661 470858505 597684341 915198274 968853941 962124549 979512306 276841827 673152537 535108427 740491343 756260579 904790856 118567375 543502288 569992145 625915967 113121371 563609810 951426914 981520735 132822788 712889686 619784351 992207037 444021401 773781922 457120610 599264744 96478496 471323788 713335844 924386162 505714072 885392028 119911308 402813576 823017866 854042473 915427513 998291715 327018528 695425971 244963952 826949627 661562671 955139438 455989598 493153899 668949902 843570390 791067316 900124455 644535026 967145620 987960587 995622470 11533099 862434806 442012627 715685791 720633188 862499318 704297422 757166381 388211439 780620172 599942242 637809639 801701604 910730225 153869238 337536063 106930560 488002715 172364566 512994345 645688731 782612851 659248568 927457361 882859413 953205979 163095812 949953127 504384207 693570969 929281615 951466063 488145899 875643143 705621322 841807738 609341138 634365355 64176553 206490909 788117818 932552440 163944819 945717523 129943852 442831806 314748875 408109492 449573380 859102309 86881495 512489580 245353236 851262208 618965767 786624465 959206769 979039741 21557069 516520517 791973594 848795602 433244050 882147465 236911283 580360822 135380503 282669244 493383810 513217830 328921821 554578450 456695766 480318652 480669475 589460381 998332739 999201410 511947095 545875097 75690631 186608813 577005319 834419234 647554577 659171036 532620183 561199887 742973539 942143219 79334066 734860750 888035023 993192152 580053741 798408238 237976709 824484297 498444948 592544051 315076288 537381284 933298600 988377029 929859086 949767688 880663791 915083498 976981478 980406290 424403286 891814096 607855062 802030884 875295947 984017806 261092524 679298459 404271794 806347188 397897248 687212997 224146458 494920199 329570790 895152789 653313138 689672799 857228959 907351764 144477562 783016944 461969737 722910046 162360471 732095088 756565324 868618214 560144810 687473689 383426343 472666783 551020516 968993822 759192824 937834136 797170469 989261926 311151947 616324818 743866406 825376606 322168715 558636848 900613593 953862454 144603368 575592952 439910609 644164617 469481602 686424594 316336226 537096108 195079705 739872872 145662040 159735514 470562277 601761714 305583850 805878511 551979728 825517744 220755596 599926339 631422317 846251582 347418341 763647825 387538089 544613367 759935256 965441189 628535273 784592739 699120050 916636769 444815363 939754161 489074610 932535131 301505763 544840747 82862942 159184472 888829252 975673432 837794116 979982489 415751081 782422004 547398591 621292568 612235426 950111974 590246442 865099412 530868326 746733898 815849789 896552031 845635913 879383974 497573105 528993047 206938149 592666186 177428895 878707496 471726707 638831770 5507271 678502802 921252015 983889073 139263397 309731261 740929183 948103727 651746582 898813990 520435517 867632287 318020164 630320673 812469078 837761161 491344320 651089274 888280354 917074820 393198927 519329453 426208818 481863098 301090205 778642609 97456292 552518153 853827469 883454307 249202102 482563266 893101307 919161463 1420282 187904859 811167169 833253047 446759309 874550422 493761891 919794272 497162004 878163878 584084188 940317276 992868706 993203654 102280357 655035246 968104255 997185333 533122053 749010523 56117042 247947783 600138372 642789152 11177864 419720711 320908509 962308024 753140390 993526193 877779763 992666611 669871135 774294850 99850998 962744205 624296755 869866708 559996304 713914919 697324944 889158713 301088846 883615154 445225212 763822674 534520659 664102633 619589045 705621169 137389236 192812507 82884260 158874041 381465765 516261536 104535331 579921519 445557277 856267361 482424901 884477250 108851133 317780935 59830165 720339404 5426352 14071203 190172463 828267168 597933829 764608296 743708755 871853659 70660384 856455440 532863064 734649126 511112919 599838808 754099931 855498513 857904843 907989812 374133619 980504513 935078462 980161983 541748232 766679710 292595555 936489449 224982954 684462465 158297255 562371229 563867015 803294932 157705237 946110356 632143303 787350351 788585538 866286114 939809911 973842498 421525539 879687795 445085771 681037589 681804543 906115733 391627512 731173128 730679977 957487856 683416687 873156014 422348783 557503495 818327740 884150497 651714731 838212442 573189383 720827602 580898150 891742982 604611711 677393956 877822986 987441326 912969163 944844964 510500029 852039656 412995563 561173849 284622181 811973730 991504273 996104999 785305861 815562394 435759487 923595315 298244844 398531861 444619953 452031700 337966485 985903565 269177691 698621417 646254687 882303344 654994417 977003966 215230243 483581399 882417095 953271131 551375717 571403739 687984524 844163806 353602029 595500119 61734703 85575776 378880679 793439427 568715917 647389514 143661728 420583298 905555763 991532887 634896715 897283589 87622529 351788110 9802875 536850112 521230460 658606213 269673966 678560809 483680479 820709488 627689693 822204690 878595344 930889926 914127774 976360204 37685415 425922142 764303992 841199383 598403472 929804945 855456913 965846797 312420136 785296628 207424360 424981187 443097016 882006697 335078722 682613051 153525201 237234635 449531712 848110706 561074613 667374866 503968928 939177625 934093909 997018667 483641195 958332640 551674110 923532053 238617169 321197009 593137627 741571530 793857755 915641113 462438075 937827509 478514072 662222612 621465704 952260681 93342605 761658916 88586191 630069406 805743716 914778162 287439643 377161062 823001038 982190053 302432372 852143131 949914035 986339666 628831833 671453497 384219034 823387370 349079864 817744298 92432694 969394533 104552174 396463896 732210143 849137762 400789989 966045737 713066015 998123039 80590655 491426435 973607452 997157719 861713000 933957683 770571590 954501370 500765876 968430306 263127434 887997294 532174731 549427367 518442295 704500198 385800473 423286394 904023355 934839086 194034298 993563065 59258718 97168909 475156235 699067786 989386532 990105611 142549154 950098241 54146017 991636692 811301710 936490106 89620354 429893238 508671748 678209882 231095301 317631385 573339477 854273503 466431564 659202274 727285942 911883611 152341158 226221825 647049165 746986542 797978911 909982444 188345361 387349885 644977461 928226882 860464278 969487502 26974698 402251666 679304182 844634648 722810062 966524337 612176464 617916291 243044035 264414019 569610548 921422794 953490319 963423383 758688654 990387938 997671769 998117817 946337653 977052007 305473835 344621653 898111406 935910649 331050464 964868970 317065345 950207220 26692225 911590873 786776888 816158494 642571881 811484314 714275039 966407586 926658157 936508640 696733197 844807911 828608967 982448913 332601799 417559638 497377601 526725145 696389424 972496607 91788933 149930786 428635356 439302949 470400425 515130286 115786650 739260003 731959352 847229493 235956126 325877646 435792820 885835567 868897667 970206648 606970585 794111490 995331067 999022605 223650903 330628897 785353853 881727574 979783370 983175024 702986312 751294683 930488644 974181797 700207058 702357511 136553472 999482369 668531697 930496441 95577681 759894106 783737177 788587029 381137148 660255126 619600531 880622748 447507878 658600531 755005084 767001270 668267390 907338261 171206403 394055406 717933607 971159765 215394996 741784259 179729335 981196113 599715263 730662016 752886160 862005309 736785975 795782134 288452832 348301474 79216230 490360088 592204938 695116025 905753061 916956574 743640301 908368496 888202249 988283065 802198177 807041081 13308396 987417945 936763150 991192311 594653130 601142925 297728269 940614092 815225224 888047901 223692708 368321454 645196451 765983016 544304338 566535753 418757005 823204698 629877109 661390397 142172126 684831889 727269753 936022806 731380951 857905063 504881713 994576289 379250075 435257419 154890895 202020616 585537271 989089865 838757640 956769957 891709398 945056469 811265226 924696391 612315157 960450230 54470788 795678963 811504345 949497022 873859586 923031033 197239539 563076572 390217269 567351974 426514758 455786630 565261918 877524281 115096690 673399889 42165592 338677422 700887513 765202055 247007348 980593608 390886098 766113115 754123393 976061950 634916178 877778677 516778489 886184871 886084661 984989236 816091996 851616593 339063443 945382056 30174963 352493822 331369514 726708293 390948466 942291986 247972243 953028242 936947314 961685778 26173408 599426808 865141217 884690838 370572850 552892960 318333891 815414030 722811973 771723310 875355517 927294625 252192956 649779721 481374165 944723380 398771671 400598958 31603202 69076541 912080620 931413970 953370036 955389879 992398501 993946813 29308062 932792299 126432434 713729830 300829478 813456441 365701194 502448894 569323635 585604665 334772788 804873648 73978220 133523198 565666082 723930491 747726654 997848881 147589035 307181267 872884974 990584494 286580627 682610604 473424081 511509591 729882414 839222747 265353981 999650569 670834089 900330620 904917692 991716913 311073694 357016265 173489993 289343497 146218716 739330706 11826869 696073204 275291141 602078899 528578072 617245487 779354900 853160099 27005695 768728719 196460625 410464522 172197656 608565103 123251513 310936914 735486773 951689149 555077315 945562297 414838519 813073451 224051051 724740755 50189809 920926315 24799229 659392243 939610831 953747978 830247273 881462866 22622130 539463123 215017034 825662055 644675932 933394226 437685310 971328766 886766526 948605749 601414166 689610752 33718098 130585809 564781682 723662468 691299513 940677256 453809260 750550798 54549687 944165392 671415754 888447747 501800203 806501716 732510950 809102922 624136080 764097279 125890353 675597752 162814854 291395521 597381026 904485285 953162163 991114666 869947868 974502650 916156560 945678245 622470958 954461456 400087990 984048823 134344392 460613981 964399955 967123920 189300843 999598510 445027755 552786322 192514176 762732745 354792173 543433855 388793807 748961556 705876243 932062390 242111439 963510324 542197328 658500202 526796802 800127084 311550420 810667655 699949454 761310096 441418256 958130260 984165169 984279413 207706328 731392574 853064216 866509829 350896825 415144942 452217834 905706379 301498744 442198862 343123541 394100792 426700599 461354414 643099657 892416709 779910285 846836331 202165591 794456077 749104160 935122196 536887315 858922450 804533870 936359932 21708038 241471562 5418800 543880686 844970412 891062413 961245402 975511563 697937948 888321791 204881899 376355588 439556620 964233683 548046307 886454204 287658339 808538492 233421159 784482599 347946298 382692172 330041193 388133221 738424793 884634275 173726151 956258625 827554479 857378008 337475538 711670033 717280083 732030768 376483977 492859398 403391274 946476243 392429522 502772255 538012716 874185189 735725466 771397325 445207907 584467769 505156043 576943094 467572414 603505231 682057865 829352019 716157526 875807053 929870126 997903007 536442041 885985538 487938806 676392404 935931022 949614695 333597263 391096073 996689435 997481315 307453849 507189645 146867481 741341466 382301121 978404436 656801728 725393335 363070727 898693557 321177209 332544667 419561926 854304434 476706392 477389881 23434664 314830602 953385443 953738181 300187976 780292081 800163394 834141236 856083098 887872376 931901758 961097194 842789566 986290441 699634900 783202166 821880898 962470972 499741550 959978261 338912839 480039159 488374562 862136946 959126355 999049581 276410929 862290860 302293043 754451830 842993766 926374595 684764658 994554616 545004350 980946734 25590823 414216065 549878294 933455577 635486309 640613215 345683435 976487811 695059527 966890038 801440624 883186118 980152794 984867337 925982464 957244394 544563638 758713006 360670221 561193491 327460949 782915165 186461127 651458720 639466289 760994589 175975794 408404627 988074155 993183694 679717378 726111112 835465898 980167142 811384025 823470338 996118478 996454898 725393766 923077737 778131164 879978144 109806612 447639921 969994311 979434167 27025993 216139968 456986930 941610951 994075869 998416824 467572483 535933232 831413293 939244107 149569780 473290214 624328939 900955589 60123038 515390778 166260590 654006826 587451227 764077039 852622003 922763576 164356726 444267582 798349070 906382509 796972751 898820577 867282501 943865550 320400591 520099352 909185805 934509249 888491252 890141814 995344049 996013386 305983090 591802914 527323890 654353040 124161263 444069892 406579317 919983706 46743197 864732845 161789375 169248806 587635704 874119555 226429083 415738705 940306241 989461646 560838553 658560304 525568888 869434824 743422252 849345070 431521537 985506257 987076641 992397175 87888970 638928455 451112238 643962719 313669854 700632220 716782504 726520992 614109786 762193506 754169679 987856474 86397298 232527999 431236343 839397164 654389139 729734556 656639023 877153883 22998929 690283429 392341344 785915676 736212569 904025568 87359918 438082710 212723089 733984977 538780321 977700738 391371552 507194812 36926420 501313742 773115596 942308814 783266542 933668915 826402466 959016077 76088954 243479619 52342388 967010528 268179680 314248228 512018210 787386046 426413023 853904749 331262705 369018553 918317394 922188934 73341206 395054874 865848912 899792991 329531932 339222573 191523576 674704403 43523888 768637667 17019341 274705586 87168019 760551045 271570024 461615513 792151275 888775039 379125812 527112151 730092068 846491269 324434778 443010675 17781318 577776828 160872302 250481119 118934600 940180280 259339811 590897078 461307586 471541107 537538212 901741309 668234975 967304925 469199671 523900060 690740729 776273419 170346591 360559609 476062277 507474190 479427250 807814363 562442884 671525171 224253254 474545958 752718816 942554347 696379858 823440605 522239866 990712176 289332647 810746732 203287437 630984798 885183149 991572107 214898910 641070089 2790711 91240309 158341948 865240290 998626638 999628128 242321084 468597286 759648243 767563727 198325721 447135060 153522453 562470103 42207097 282129489 674782561 875266273 512995875 572951964 901830694 976678081 311198007 632102321 891621755 905865271 101563886 658026449 16229115 928454412 545174024 744446278 87478112 772812249 392343562 684924141 852388663 887416601 784799192 909319432 327481001 919614585 991548919 991594628 618094828 928208214 278401846 285261431 987974221 994587213 701111772 784163583 142401936 579861937 313257496 938242349 130320738 869117891 375827259 900714415 171473884 703388439 773884819 910022738 608328749 834767285 268611158 566738844 937144954 940344687 50719410 889608150 191326995 202800414 77554497 419037800 535135869 826476454 799698397 907731157 665024144 805292306 194182456 227730095 662884084 972825589 783191241 903520540 168583321 444257172 108180092 457833035 541982490 547456896 373278589 934744477 464322378 890825525 467680462 891115478 325833821 341070956 270523872 403383957 75408202 852631161 613212863 728664798 237334764 302051071 503527695 897396991 276542477 480389480 103228083 288910277 664803862 744514237 803149931 911273607 570264040 627999941 607546401 805219675 530972034 991437611 455783146 903850466 469919050 541633048 673433977 747251383 572010185 660430321 889012361 907675214 681250788 686058776 261049661 603409835 357299070 649365635 183824285 420997599 692462274 916566323 784257059 816743352 440915421 989980434 337130017 913042327 195592198 796032969 361855705 908203365 903745039 980963744 257626903 376362936 239192711 676508308 761565120 826911961 81117237 852207654 27504818 865349303 403553892 805067929 444986042 819350805 733146307 876615597 733509275 980481165 608865863 852736295 173871104 592060870 987998059 992453763 706300618 861184014 258933922 267413924 490133133 670542975 839369252 896841508 925661412 944655678 685170407 727083552 561238381 716111425 36990224 806418478 450250275 727245169 687450426 847135200 618669478 730880102 926943856 997122750 945570746 994576837 123704771 476322026 133491530 423598188 788496478 920593458 428405238 518952817 902227027 979388004 163815615 237697480 187349678 907063714 292406823 329186413 649613233 876159256 179245689 431400074 195402421 677230966 267349914 681789450 866424749 950273377 9240574 567682454 393826737 615741908 625568858 797160763 935837666 941861599 364019768 520197970 435741231 777164120 214467234 535502600 346889802 464970104 369656159 832668122 35260304 794783331 344410826 433014354 911262615 934962982 220218911 912748753 977799666 979966724 643980990 893702528 845762760 900376361 381214782 486856360 592286995 961160987 677941334 807728188 177636853 703285008 630659836 697629734 546488127 863549212 975897444 995072628 189751402 821645638 837146438 860731065 989808743 996003537 569922294 583945097 400521272 942881290 294410832 601834557 444744012 829175545 91822030 821743534 527996637 857288987 479978732 789146137 898917952 973314816 385980989 644280271 80208934 998147681 770397465 944671964 601009005 858234868 79047734 855499181 366279651 995081314 622884888 748526381 339569093 522612581 857525639 947938085 64407258 244541054 643616605 777176157 602628255 650110571 341842716 459951978 864819081 938060834 865768348 943845820 653955241 751376317 500963418 862957680 611787106 973464627 287168536 460527818 803539023 995798878 454207905 546555376 887894053 938937506 17608472 705206339 184653492 486137785 374478705 486642446 721949544 855943618 930239445 964261183 336567698 803242811 313259348 363062893 535462044 616875160 752165008 903932565 300381233 800073172 914606092 987386300 936553066 980420615 535709464 874440564 519174993 631596664 36578101 294093576 932872794 941055063 470108420 848528982 106358190 411187136 944700442 967901996 705211818 717953170 224190873 958138954 657801397 967978771 262968568 895143554 95305829 527731572 238701999 947548588 905685511 924102011 187229616 192526139 967079354 982040065 886405108 914334919 530300839 682706285 860901081 880787692 552047172 979315732 612126381 977343134 541855212 548357500 166150311 491101993 472241201 631246774 923406010 940975759 878543492 935002674 97076205 308407417 980027416 982627350 722127858 929907818 485097129 682490069 620860174 994499010 638346841 758808130 789878679 816718859 371551933 543351129 920666879 937813948 556131145 726702771 489007955 888411810 253357436 790427292 38644393 147297902 749644209 836454714 95055258 786477480 187310754 511768263 390092248 613101902 826589969 829325944 604491590 799091767 739228435 925770829 893806589 932944627 609871879 683026219 928912054 996632331 501496272 679654201 491423857 900320194 530134009 568803693 77264360 145173603 296251431 885966732 133374568 200390432 95727960 957756562 295985189 772175755 399364013 679715097 280865636 953991236 405295468 713065064 349477209 438502121 313508079 999152019 725297226 909118416 149251684 388565177 436681298 726468909 107226711 397265886 893169188 919377959 252708866 885823933 912220413 915853380 937870897 948468277 605149323 606830355 90363915 924082830 92372946 685020465 45209365 927109585 209919245 771125165 623846058 983746366 181230473 466255053 86218708 412861256 881954910 971867616 977700918 999348405 658322681 750409489 869250398 937209759 295367041 920711036 697301716 721558904 980139113 999362136 594319602 824776812 925511852 967850975 645686931 683527594 12509999 861880576 495462299 526460813 889410674 978518978 190550596 805735553 637023321 661041122 564873349 723498071 208950738 252718884 103067344 301702400 983164248 991485650 407533856 546123368 477955566 707620855 251990006 541131635 304089079 921985587 956009960 956605057 346202258 410641758 970653884 982051438 524673311 978054423 641488493 977890442 425756659 936339677 768203427 870927399 464447824 576215799 485455756 569534559 428599140 612278292 349744564 556647877 725939283 803917066 2757068 44661928 802807472 843700206 448434073 894285101 530928161 774235971 902956400 994358320 52315828 779530093 385801858 732044705 198078810 308522937 256655986 293442247 530506066 602253529 746936647 896904860 902118317 903099649 941932784 955550364 27793627 947550286 157939905 992327996 729908871 910816345 701297809 829089529 660354570 893444812 214807711 420068689 739587072 829394640 325202154 541753034 898066661 986873739 181034261 280667371 671034045 796961112 982385443 999505389 999137070 999227542 30610153 639949926 288060639 414442511 742973517 967709392 269422494 571631680 15710177 823331481 504088975 533029552 240258723 631039372 299521616 737654988 208561870 845922052 376362760 544255890 343434672 826088448 668795517 754977955 574155783 687736075 91584034 846995196 367993416 504261848 134103306 659641124 299821388 922795946 867669924 971371275 253818111 582841570 588300928 892279342 446415751 829893256 155389006 971935612 131313891 926538790 931912717 956650186 807088681 998530467 678780650 945565141 299641874 880840683 432925952 568018052 838911998 917371216 489259434 562794548 866564735 896780726 528017836 896241658 475803932 881933080 693209730 780859002 778376395 932349095 940990056 983201852 95340206 101916323 799443216 868845289 758682401 824654375 249983435 914641433 577990634 752526734 921454853 973750313 196011990 403191949 683132302 906293007 349271828 411111943 145188838 472101493 285508015 538909550 874921310 931220917 496680801 781422280 363261090 609604206 939151064 964248751 318783699 355629710 226787770 628072367 163738105 828542463 624532674 741177429 533893765 598468167 159728342 318388955 791841433 947478115 658403668 896653843 283761703 656419317 777584086 896572816 111050714 830929716 653411631 771832894 654132617 779317409 238786012 378846608 699649370 837767614 348154570 720535278 717922750 733520382 817154473 968014743 943543931 971151081 274934459 542759088 260836915 948905298 597754215 919492954 548504673 882984825 713649729 965066242 308664477 749132397 840252765 993940420 21784635 659617132 475486097 637612526 803990094 979520765 864168836 881003382 556178528 784996428 895987703 986677742 978757087 989181526 301198016 507799501 55601797 503022632 763940298 834931038 471540969 991299605 723527006 927329297 221549867 946710791 374722747 682424786 213905900 867736808 291099678 366623545 852003961 853626799 114246666 709678988 673004612 852968922 430539974 430619805 989058027 992978501 214586246 450194292 487582891 883121396 680469395 698696494 307027809 317081055 583501338 869765204 465441661 757250561 827671502 952018983 98574774 611131291 855132081 982331565 363769295 621591530 176002771 496997485 752792718 916897991 43381436 625615109 578459149 940352978 728617573 781133525 439282278 629054535 313699662 766612450 650706944 899517413 419663503 953014537 214511897 252973547 358814826 875544517 633280421 903851365 500748941 690003878 214898447 228369692 195517862 627906760 448381935 785361820 664761480 929392273 941397102 972827182 662363997 769662099 738162119 992573222 549559263 861912250 18396953 897040866 222185467 500313998 312956732 948770789 678529716 691744162 272496419 951621029 552385189 807538788 269137419 568466066 99015521 500595959 69417200 853989690 156310865 465663474 789515870 871598768 377789960 751742819 338211989 983301445 243314345 433471859 313464214 472825271 470615173 574610575 570061346 664118069 840041693 921502891 392387930 577263180 55752595 963925102 611009881 925386570 808588205 943576285 320675988 405798654 807393568 836594827 682854589 966949471 855935293 934033831 974367561 979055313 270792570 903847884 102518125 189970761 686972338 765726850 559091753 611146565 386837426 724154969 328196959 480653937 362602205 408680304 244274740 339726257 649271953 740267453 213900236 350937304 971573228 981812840 119815654 852724897 754694041 845921484 43386899 372698737 124320318 393934849 346233835 641307679 802784007 961453711 907645921 917972681 759595576 906340296 468982043 804753221 491551008 835722066 52037385 577306741 970342030 982378996 204290066 218342341 636755136 792042062 75637455 678540802 946752780 956365640 418946192 686004290 222814296 514900544 998952413 999944977 735539837 797466430 162078545 705984489 197243046 204219221 466911078 961091686 968241571 968768055 907632662 914732650 105649018 774360211 793388756 793543555 722381262 790465299 978631810 999191537 730677055 812637143 784654513 902107280 506382018 749152502 314278185 827570771 16001966 921461577 50684143 988874061 775389646 988947108 324329129 722586417 861427962 926347578 410561190 613381167 336613442 765550030 490933459 782026861 131357208 404463347 672480383 826437757 685569852 813189366 438990684 474961693 933257524 944169110 962715684 995459686 763515145 783850677 433732244 744425008 440188044 536317014 792374767 841676824 722728981 983608547 882636772 993187561 406560472 861097052 631111771 949718928 745254543 861139920 287734054 865698926 983422030 985378813 381922588 637216656 331503838 948328739 509910655 702649616 871401469 955567416 530582431 731509093 685711034 842837004 301842240 303463796 767080680 906003940 696104447 825385799 987016112 997648488 803927681 968832217 536593599 836597875 79922086 915579033 957553659 985154655 942121056 972887194 303346537 374293982 242718721 880467066 558142492 766859423 222397861 898793238 277908883 751719499 794697981 878070969 802205170 968135129 846419482 865448366 165863286 370272656 623004321 656864052 341584557 395599965 494391940 933579983 262346379 852921223 478399059 816462555 541523342 714253382 565173180 919305953 321656063 653154458 868914431 997249329 571463351 817297742 319631752 668555175 150231600 328375690 637391435 903181899 92450187 280473326 11413108 658794982 498119376 687417178 530275604 599501601 614563074 740578499 147728900 811853431 548514881 898417887 429388792 740064569 618294476 953055842 825000212 995967194 636287698 913850344 564148366 751032596 756354260 761991201 318042466 947225536 252272934 788438384 837142857 869406264 19891171 237921533 500706028 794629788 55822628 987936635 363819483 679276109 71834327 147807361 938799857 972632044 139432335 634083011 282015389 284838320 710105145 972225202 695268472 789473199 723143195 780397070 736563294 894237567 346700397 788081312 102354057 652309273 917693528 977271057 69857987 955974452 288913446 606621470 373729604 909428177 86329155 961421080 188920181 304233697 51389071 179524572 898253748 928931062 675583059 968244933 921818471 936220847 203319637 828891592 787165791 855458036 449254597 617535887 356535052 668075273 518281036 626926858 203508982 939262888 240792112 996306516 418279694 894923640 451455779 746875501 29118000 138394590 681053772 692030255 744702428 815697990 315079291 795152814 953832203 967735893 573552262 696648614 296414996 859197343 827351443 875088371 978599801 987985268 113792527 996885263 698318735 907687133 511138531 759991411 485447018 970661982 477143030 639154891 451560063 928878618 520053411 732188665 126331572 263527459 180236180 754169454 27220760 308081328 36482819 326083672 430593768 674135580 420300357 626856706 600048032 761406357 555402052 799089700 532185346 988876492 997132243 999049828 891155969 909372415 488797261 563912685 608659510 655910515 824866406 825847001 502420768 720730727 792713761 972792255 318409059 585281525 72004254 967039863 50590659 193337046 723767464 759979750 252540799 482099649 97739322 201989313 926717390 937387705 377497918 432553789 540674454 878438209 326152350 661248748 790602796 957597349 732698952 744389766 807655307 912429046 102588521 915849124 678034278 986550949 36727668 664608168 142149250 780872034 19538943 657397974 898769615 955997886 566272757 758414468 128672962 780813325 979181199 980276492 241223857 372025991 478033230 875132234 459092828 910299786 628707092 795161536 117259254 692831918 177245520 880753498 999166401 999992050 575920535 899994704 582373052 819606144 679849013 903005254 429684656 556834956 374654512 792780784 194182714 954472778 16887605 373918768 739493793 788921043 43027333 113996706 20580577 722947195 901382009 927344457 592908163 848509940 632295686 832676746 442281579 832797638 892640694 941809780 949893868 951273818 45114244 554225555 793491679 983663421 661127067 879145534 343602831 914939005 121736542 746037808 183506155 950257955 257971594 463527801 803217037 943402529 221612877 930983193 666977414 806258136 564487953 681042183 369588348 603172320 340909694 399069893 858731531 889756105 502191428 710678688 65918099 665684444 931671989 981173567 229601786 829714801 453902270 712663860 777830515 850210230 732866086 978110934 955320493 982480960 532316111 662065134 864694610 950281793 444241259 529309852 321420932 873245305 636330753 947425990 241271886 934680835 436418758 710762304 176261405 677046292 189435703 413308293 818463944 821794496 396997888 490480033 784933861 939259224 238136445 588669494 362493125 678116739 844497670 961027901 927503728 979929382 320621568 936106027 810392903 848478689 833255479 862166003 731371933 743386150 608581350 883381395 289650849 530536352 878190965 960932690 30931213 829074533 682963622 874529620 567777525 799633270 96156414 543812565 847207708 863335649 188394388 795051673 361579740 451092024 323122512 696499530 187341508 307734570 188451035 700920936 104863795 371525987 71970983 846142086 721048144 976402646 978746221 990605186 793416184 957792382 120949840 659890618 401513363 649516698 909917441 939163502 434640189 560833723 376136422 670623501 467556662 730922272 421782700 540160220 34010492 186994394 170153113 645558724 979492923 984164128 521370543 764659215 25644437 522282257 117535445 763148720 968073830 980643260 727569616 781254400 103808961 813722988 314835176 332895636 735106455 939440708 394065489 722517193 39271228 180237787 209948370 640425238 903156384 994149889 834192355 999406359 179284030 208024525 443895126 472402526 481174434 798988157 326543385 353978169 8772477 794905142 909365850 944375553 917639380 962453200 396063058 480125145 655022083 670369406 404335088 981143981 755777327 995942178 129836635 634508527 531499807 983068699 573828599 727593079 740967273 875553001 967734670 972962771 553566035 960542191 850244423 876321215 104836899 448907693 485569242 621364826 649937406 854216784 387956444 868390053 708337950 723837254 218248642 361521014 424480559 898213954 84489224 893758426 477823335 963576236 591453473 644192997 290692272 739575082 798856872 869233877 32599075 871755626 332061798 881260922 190805988 314654381 707171876 852978024 145783112 443389252 85831768 915089837 840864657 966166183 453697049 522777531 967715284 986478193 613028599 986782205 960649589 974219516 345366749 594642479 370283343 692586593 823605145 960408939 408311698 636164754 676938212 839508810 324007349 621789012 956457648 978189895 903197025 954710646 492251849 660096846 32154098 897438739 54899156 412591041 253907655 527154224 175417858 732056405 210691611 743945403 392802023 802022519 743649350 847941516 327204807 525247894 728243204 776803891 149979006 407621203 466445409 509096677 883422523 883623018 147703477 669483250 634886272 836653659 562953715 772177058 289546901 742300764 795596258 935510279 412089687 490801212 299687991 400977443 995213987 997727994 4257154 985055740 511288085 825790029 609337992 871653340 273907627 719558861 473119357 800618919 274908708 906561632 863107806 945107867 17839499 957403605 747689125 911612238 96174914 523846449 918480438 975129847 770660922 883662780 260149205 303952869 450187602 862616269 875267678 936153954 548048616 815525602 631437341 973059233 144461805 869678425 375591831 688666086 489420328 760508941 605191022 753455679 139145403 486306157 784458442 846032207 539686866 804934747 249054435 376371593 38411963 142977059 235960098 927305801 425728016 645421392 218759457 309933540 586230279 664344982 740281644 891108235 722130225 728503507 269083744 297100510 282231452 906672951 740202823 967510028 340187587 364950610 311966016 335815788 695052851 967164660 685075247 687887531 168304481 453803616 232068488 786402407 23044176 949702806 193683285 482122995 596073867 762165857 13723563 573757004 714597962 849632053 9261442 830681512 372571899 833806927 907095420 918270268 243933254 633659824 102230297 363146921 499927084 965976851 655005269 902920861 8076139 138976088 992881407 993725037 590000058 968914644 202740278 343769608 211405834 603760092 162792678 721168432 492724106 995950135 128949469 148159682 708249101 883894162 96547861 498839915 61491357 753183156 992225249 993371779 681373744 978918921 335179351 694995943 462672916 521448224 646348539 725968700 785079992 894895778 854351652 976966491 788010166 947102046 49340239 55382572 783733791 914800683 106326789 905030033 464400743 574524028 169757955 323185767 898077718 941969314 883304952 921246990 468844420 835713297 969331511 998229411 289630552 806562664 14799628 266484079 616046548 687893464 488820464 523631883 184371026 977476905 778878483 972274471 695490408 943825230 216262022 829523221 111199505 776645668 168882265 657555971 196467077 531447177 753322112 798926091 322880852 404380610 888695389 920111806 457530773 806102670 658295030 694210922 169050529 727692362 217601764 252546735 198281012 717020121 45374866 77682804 937138456 940189683 789245860 981508414 424496440 728893047 219594735 400213127 812831415 821818268 13709500 505592534 992695232 997747484 426223399 565609780 731884759 900723103 48668940 561109874 319679216 893061971 322654750 436139298 990971939 999135797 412562525 793186235 133152995 776351196 227252884 711144312 785937800 924944856 122609770 184587663 812360047 849177721 991997521 992885092 484357650 489625661 834205943 838833617 860217717 870743756 194565477 977186470 293685144 394582289 953042667 964476994 637939037 768623482 908394771 968391765 246875199 400993087 250939755 331653993 403018170 496900477 659597246 863065346 207270327 908302565 835384427 933246741 467225668 786373547 896524782 962646028 415618978 914014254 623047772 874539186 184804459 958244430 135064938 202857525 217495827 912476578 376918985 760558494 339653952 750666095 723034508 816413712 526009225 683332366 217190822 410533593 657161836 941664452 421483221 726179857 9068983 513157374 765446916 929512008 283650905 926352992 988183345 992292491 66310266 941053654 870116467 893877447 671388548 876309956 813803992 866066725 463846815 873787439 214036198 905441508 693195763 964644304 719194709 794591291 118407087 458134204 280267483 342538286 940335183 953458552 565904735 815049764 979596362 985128842 230419754 270956164 700534316 810964183 225681801 918964861 854602995 958419029 859080169 977346783 168054378 936688937 226707826 547823319 286603 824857218 874591935 916557969 675220920 816615324 887144495 933759925 793202035 983212208 425106324 614337887 695331938 970314403 724888474 741746061 920248173 939763764 336880039 878704983 354402410 494539927 387804038 927244345 302055637 794280657 128242972 303436140 50731553 406863771 210971061 449705133 398386072 588030733 259141314 737934775 269508693 586372873 958413507 981601642 223497294 231965777 707387045 707832651 802701445 919787500 30620176 861878002 212271945 488408684 657680412 987800595 177538301 637326164 245638269 264105931 498040405 881398914 810283248 815755615 193386088 396382593 379479570 541527201 860311441 941831712 403998181 566772099 673994180 860390629 596174338 809402487 54375694 429807637 288200673 897479261 611692850 924207787 583492154 955390816 166985565 493352335 732075297 815809576 844805158 873625048 376988676 461887047 801545702 804690393 720130854 851662421 687676007 816842717 323632425 647558827 330063157 501286641 98670540 757894584 340696938 418056265 372708782 455197023 446484639 744128008 765841504 787322620 119365786 179733589 308989529 533542320 781820018 808494004 767981962 963597691 984813707 990699468 881487046 955848520 967452960 974893559 575671862 933722729 900030390 956702690 729471683 795389303 443586554 868368935 141263139 496592757 671976232 887598400 983865737 987762810 17014897 487807003 711028486 832512236 873855558 936495553 326527735 915548664 627715735 958783441 386936692 720930319 324423726 787566772 924086336 941598498 31989720 865019957 516071776 611142923 461871973 979716900 239647456 721627300 418641449 905174001 152356918 537453406 237179445 288173477 896373919 930705582 109296578 132610971 495236846 824595505 697845575 899610395 220150739 660550259 159386265 396566861 451390145 597266312 801655390 821036128 728585106 890931782 469711848 882880517 845433806 995656723 850409108 988578111 427337170 456323638 402882675 803248000 554735734 880078949 85339339 582681446 733021814 763114029 971524266 988729852 229688154 605171952 40293012 250351373 559669172 907080726 883041047 975364873 447550474 792906462 737134959 917122874 806791312 894401569 264133834 862596230 725054262 893061583 282672059 544661004 899901157 919890795 447251722 918690354 693819455 949851494 649257069 802304089 55507067 301743665 664090018 903050269 817381400 907120677 980360454 988047145 139164336 262126420 196562629 475885791 716432614 810057833 952635820 963939975 900910480 920708648 618168948 884853315 738826731 975298443 720383849 959645492 668779128 790851980 461411759 677722444 792532137 810885937 875427853 879531654 309724247 540453765 449860883 752352008 94650430 262291897 3623608 799416809 672490096 746317072 30452841 390886589 488221977 506431570 597875639 928115402 435169567 834003293 742020266 878898826 261349776 680519222 262402296 746852735 813306712 937396506 998835817 999162512 675761579 964530822 659184716 950989340 992888005 997204167 659338397 677189958 761407264 884771042 992005502 997719170 775318442 920975790 942617664 997468236 801183011 942902671 874457895 874598472 737411760 846160685 573639987 687659946 193489057 626828823 309992522 748699804 445574706 510828706 980673053 987200076 832431388 949920180 603620655 708823501 502166802 850606436 914361039 928750581 410657350 651002873 890554025 999517518 333656896 657353507 579788805 627223842 4595085 807128664 471635159 611184891 829255892 835233314 879226780 953868362 318674808 485336125 94218893 119900407 84628682 972955397 776823104 833834018 377511232 529119183 274666095 849355573 649401586 885059113 197212903 520156409 948335765 963431654 694596534 818313093 323290485 473283834 51381952 894339705 42741074 546756188 77644573 383457353 358761604 774874024 69143402 926191083 293498403 446308184 557951951 601952124 184668146 289014607 973586237 993293854 734241115 824301595 928783017 930508407 917060704 955738902 297791441 329223136 527565810 716669023 848331834 906646596 318431390 421993186 333921104 767278887 379644241 418749504 80486589 89046910 133195556 279967294 525196093 847006382 969066374 975115749 523424582 731141471 122730198 319778725 705597314 791549770 895036121 938283481 313589054 699331538 331765657 435800212 583503121 816232191 28860869 620318463 370443752 567258596 748752792 867778309 390851585 701954307 322407537 630556204 571446982 768212934 866606755 938641538 305439881 632644298 535986055 572895073 103507431 279456224 542575239 992668401 126496820 524301377 585836602 713320246 181742559 626119023 582506355 942508855 843488684 966167997 550131502 775908632 956205413 998435604 286665130 586782582 668508329 949562309 429442669 751830095 185725241 855112246 501626655 636505099 568368887 708006437 818339063 835709628 353881525 545814253 472972106 769064170 31986579 815457080 128692893 142764831 120412646 359151001 307300585 465418770 150875312 768895410 467793488 576279003 369502083 511191284 138928239 557714929 707959301 970249957 206621809 944580250 816358857 960524865 638435222 714927705 274442863 352445249 653380536 893852493 821584452 866861306 822620127 987040450 746644858 997134397 182495071 803663944 720843161 855215474 920147634 941375902 918798902 948902142 811053746 818308746 527951967 722420733 152062469 947101038 277217441 660675009 363181708 856765587 553613673 788827505 865493439 988519875 585173050 788753662 448160779 532015676 603654048 732618262 765700352 782960249 624144053 797553903 540240262 711434617 170793805 680157167 929651637 961461502 379957819 632013426 666906821 748152391 812107696 933192519 543086564 645770817 832890892 933405411 212733829 311326706 467526897 718969232 437681846 443457216 267102344 969301991 721954577 912825730 398894152 909382166 549561869 996990302 886267636 956014961 496427552 902999028 649020468 774566079 237479291 785536487 381877187 473963862 433854421 553751182 400184531 526992288 488746842 906041710 135599253 685655196 171150040 236363888 552958321 947934536 995539299 998742096 103961911 228327999 642302845 752684702 277637763 388486918 447794447 788682093 535165875 576841644 579773743 957320662 252704729 814631413 298465757 982579796 630449 625226422 541374130 983621180 793065196 950091682 686324992 931105357 786167940 987122825 165076522 255342631 968595284 974881642 121526622 236741528 757022530 915518228 904667707 931940696 812547108 944876776 850348827 937666645 391099838 682389135 144872536 330636591 451942160 459787949 584911041 892212193 600835951 742682705 779347619 993073972 817955026 908232714 265947822 417086448 161832696 826674188 169528821 261781251 303297860 361984849 382146253 911640887 412714601 705907207 348427985 967995379 844566738 910720744 177455953 990316724 692904926 932243522 943870666 947300147 491970021 751627501 368775146 945138789 743404745 810760730 778529855 924022651 709995138 922458051 731904559 919317155 474757328 899333340 452814855 846242580 597011115 848684520 370987349 888015881 410894472 442335375 739522093 967399413 253234016 764572930 976807417 985637885 447263615 686816917 590133506 896380983 617675508 685501853 905981176 938158084 14950603 58106213 172894674 985645412 476866238 477642489 427310690 628443533 404130641 821998666 928717345 996233866 659665395 930377207 59740119 797056952 9950112 288554401 28932336 97203396 644632957 874295421 62573562 166513644 686500787 777091870 325704565 719891005 765194439 835929385 81301539 229954618 233377594 271935641 299027285 957129427 755973018 889225550 469037721 539029966 182414360 880924349 653711051 936419808 128474219 492183823 221483437 715282190 19965662 789582336 369658812 693472539 66451637 201675101 795539881 841694097 73477374 264692200 673428032 867143711 304503283 717397112 698962055 723268134 953760440 979302457 281656668 491405443 255997538 983453337 412160858 942511146 766985794 893474979 731584248 831042380 492908296 637414529 954564769 980481469 995089239 998140732 671756792 709880867 104315969 827289796 535472817 549315177 718379218 944272275 846851294 958834614 183697869 304432636 379918050 440476727 552951317 891114054 767468685 930380396 293707513 628017088 562153350 716639265 817504506 949291111 760612923 815719698 246942956 931077975 645475273 936974673 771458018 991716579 164624042 790088175 226120814 537438498 488375304 616454201 525727739 531216588 331529579 565572123 9020626 446987457 523162492 628131923 252863514 297944163 916124020 929419208 103742162 476856357 297235361 350902318 220881072 970379833 544196334 904918878 99486148 497373141 151469389 308180339 54650739 276104105 647611935 732200810 69314292 140584605 657273729 992559868 50246348 607057129 82596555 806092871 650482708 707468525 504229305 959182913 686646610 708454788 148477206 955160253 68845638 741607865 232599298 262644462 67260197 983250619 137145628 486482429 217327516 544938465 614428012 958194711 451216054 641486599 131953270 878046718 97536208 958505768 523372136 806070639 517118029 745719575 643956034 951685787 462330639 718766290 253512987 949265705 584233162 935626031 362339014 717721611 839895652 909291049 689588125 756206880 143140966 647586790 155789643 771977063 4998769 64451801 266475287 880460066 409118357 855977214 532807667 738345423 585497746 668498116 268370255 611387704 194536352 232452692 58974043 438814978 710732689 917225140 211380553 960842226 304541113 388930608 186274492 926630258 794468442 868920138 880441966 903147405 792253344 974240402 208695785 819814785 891118464 958674710 247102893 822512425 945218519 988669029 151904635 700055898 685804438 737804192 710152039 918208206 396904900 977549734 215964959 308699707 792048486 812074459 918557233 962175075 437211874 576220599 206800738 560975875 188291518 815391759 202095209 593916530 705773228 930346564 268491027 339101187 175024158 945272292 447661802 665630669 23293782 63615985 676252024 724431773 210085665 563354722 293635922 498847893 208421297 267698658 826636309 965402554 670598378 977397720 214486427 572699985 842727784 915693129 417684178 961248815 398865566 515071807 517170775 959306040 360036887 482534088 898700784 922221412 162483882 514489446 651989638 963789802 542936616 583303377 336398198 826311457 93906705 342621938 581330470 588727908 574387561 720718122 718668738 856673239 737022905 804228827 845740487 909028799 181044248 577981395 972348297 980992238 357897766 937084165 778381518 957250189 342458847 867104721 803949501 933505054 224902325 692348507 698713730 971832728 285014862 392088168 566465517 619864494 639048573 741767704 238862101 312239378 831467613 925854219 563112487 728337580 797065038 917406485 207843761 855518847 363556133 597420112 685297253 880094977 398056602 977222107 28802977 512623534 966413583 976937526 735782539 963573513 74543684 901123775 602751992 839958983 55608492 144660515 439954856 656916847 235695508 247063100 311949302 363955933 479969603 497485454 470763312 505706385 723256219 860996347 743978828 974221456 78358795 763463567 68469415 519358973 167026837 873943311 856023208 900776147 936788868 990823973 627740902 987477425 195949248 493877558 145397656 617497402 568135995 987423727 12221991 12300056 313099904 853080411 919373554 972792791 293265340 500995507 451373698 542408147 163623025 479569336 482630053 675964536 964814790 965555811 289753161 441666959 921274778 970482151 8634668 298473686 280283220 803349651 132398028 263743679 445273052 457391949 849455146 952378642 266839460 351943505 722648763 792375957 362426384 965104662 555082740 934117476 237538335 776919067 991200108 994977802 641024356 894900616 413076003 491746029 106584284 233333456 732392428 820361759 311706691 519490891 366000551 435399625 866877955 922271920 371688106 514298173 87545944 807054954 34979203 739782549 585394840 965565258 664747909 852000681 467906537 757587813 2310664 238930706 604037679 866832582 634895489 743341092 808197073 815510005 838555527 977746007 555868013 885977587 250470371 309110683 285642675 731086012 721076806 766580877 569640461 795138445 638314411 860750992 107609179 593569002 34515605 352680011 421097179 515504280 706433226 898395782 948773348 990192473 84668588 802614052 316531097 895228600 793674201 957055282 100501014 303964811 126175165 172518732 911650368 972419239 44019382 396870945 177158483 807675003 663626979 746903131 643908338 835336334 508296065 741203644 840834682 902467204 931295793 992048053 95412643 659340111 818858831 995507039 761443268 844741388 797793584 847415462 651860230 769724831 262641384 934454085 770819569 897204125 751025681 801333862 316117601 638535478 222470645 744411035 354133701 438561024 277834908 308605245 61689743 573491736 741161684 872114418 475836012 593648808 425576290 881114757 644743162 823104710 948945864 954416274 280346203 292196594 584058284 924218758 204548859 467180543 628289303 788304899 457522973 587419977 899107152 902267857 415400398 890663680 629561508 911566800 453778491 767211963 773093744 932235153 426660367 682210497 907547907 945820435 330831371 946643554 215943743 375245044 235312175 263220822 343259162 884424104 711862366 975152563 394192524 620093433 782732183 963429474 296362202 875861608 601612393 925211920 46784253 530014993 808860156 895437192 89104939 720789109 883083726 950638318 534013626 600916963 729185342 960413552 329888540 644042525 365622706 523248610 692821988 797772135 426224431 982629960 337255486 374312635 267027164 694032269 711941404 950013207 986571946 991558428 719663116 851942355 226665570 933373710 835337997 849361365 712185112 789988230 296462667 317226975 604274038 794953807 999183784 999282397 317773729 653627956 655559518 878325403 190731256 953881932 395009979 659323987 741086652 933871448 995732250 998078502 637708905 864762126 325511515 764111330 337639051 520957376 949188634 959730824 737741772 829239446 527412625 991205779 970886074 978763997 936548581 973300004 515467836 961613663 679439962 920579031 94679096 900076939 997719299 997756614 780051556 936553029 105255383 464883099 425748162 647056406 362518877 728514516 596678743 741036524 852308774 861138060 121600985 358889901 344832357 827544371 298934830 403084577 120200071 519612868 810659509 902725668 422737270 788969845 284953034 506137225 253991139 288569011 556435566 890855681 292650967 407564410 771526361 851244289 689811050 894837331 682367310 695754071 220766997 832164117 611573878 643651425 431007595 674750930 916822567 956776936 811326561 953002941 583641610 646319834 826874713 896054238 151918334 840512107 335252474 454029314 525082209 979800746 69902355 708838594 53970850 248888489 7513997 806517210 631350622 735531861 738341910 792145052 584972052 800821668 497903183 500942755 834386053 869985250 124745952 873182723 563210389 837497075 132327872 224362812 659888294 714830697 615958271 986198271 396966759 589798980 417397920 464294389 354815959 867648085 352727190 886905685 530897138 947368848 129767497 153038090 713313972 752180239 809428667 968557822 786969252 820971676 466216523 517108156 91022749 194354236 868769596 981400907 808912545 944094949 523993193 960476722 120134117 379777230 740693221 803831931 813172820 815011226 329957734 648253697 310821422 402932054 451236124 925403399 321983084 872887060 891607536 964455724 806052818 893946440 922384552 958190985 467425841 904948981 547046797 905444456 156455619 842169957 616447864 877411557 463687641 928253628 774186397 915338837 294586893 782227643 124676300 801277897 341790487 645939494 519226902 710562837 337564062 410907988 222321399 942201857 351995369 822034740 869341853 937848905 903326004 941689064 78134314 700457896 761290864 890163981 323330290 364461801 491509600 833714653 773092687 915865883 573368717 750319005 455805817 763567028 131982013 906662141 843698374 973111428 683223665 811597712 869937338 894658430 495155401 719840081 905627083 936182747 134677881 735153906 752257386 980148774 240409420 271826393 621169373 952302799 452260819 784495464 245843220 713218951 51068046 130978723 408625560 431963308 855649058 949977545 783417086 784774358 171460047 871113279 586097532 636774711 326522013 694207646 645251229 864431378 284154728 606212058 476147190 477030733 623939455 658146937 477149349 625301647 317398633 760094443 19008562 347254962 716254374 968393457 932581433 996129025 744236195 906579176 734197520 969090805 260319315 428515284 985843040 996655441 73423300 940834610 197679783 385883877 770140238 862111725 512184188 534026710 615566320 641801712 136083995 515403896 1546535 939639413 146018964 371422544 705054533 927044561 776292436 980802953 159272487 497803655 264115375 414039782 705107168 755314544 749971903 848986187 935040374 957631965 749445330 892224646 987284540 987485430 561822521 821532490 236533411 351154480 170256282 723776331 925881686 997493709 902038355 981260063 664292656 723825659 929449762 939632725 639546182 672447007 732546618 854627490 521829461 551895422 913043252 936089371 599680276 631377826 692451513 770829869 771000237 983478894 339652963 865694989 242186328 857731831 197983679 497944079 397860001 712879917 373323467 574414938 421227140 604943740 866212258 917512426 20311343 324539806 416880937 949727870 483760519 819437664 581995586 597734707 586657415 661693739 742584256 810940042 594433457 934623644 626147381 732363681 218529579 816393679 177540173 471104099 215066547 236955679 274062352 825079610 785549710 865157135 718433349 795739022 344335942 750486331 195209724 800912041 52479040 815538232 692623034 903340826 180325208 784423057 362583648 406972571 717556136 756960901 962317669 997101827 545325516 762268276 325068369 473047715 750559061 974662259 746062154 802428662 752273784 969652968 815156501 889801337 485171413 932688888 335370605 489885917 920005393 956010940 590486710 852176486 423188919 931328199 825604553 881250582 399960880 786610534 245828814 935709534 9368862 275967544 143602679 576470177 756242032 996706483 308928001 363992214 427325055 927518602 804660043 807811724 205326035 649510143 212735020 874128169 407333303 976311485 274258770 746973924 883203205 891559644 286763987 999359055 41329730 776211931 501785267 957772912 877684489 904389854 733076745 949770267 866112170 874558966 704727517 773059395 378400843 521496742 676512761 681125749 479777700 648134815 733007665 846052932 701397055 973134355 947734769 996676299 385427469 466263169 496110681 939147763 5356282 288909345 376007609 884692265 514339810 927175025 994723836 999483427 1644239 958240214 930981347 994571055 993072420 998555953 42559224 392842355 709446237 786225397 309534483 480779348 142831326 702438268 675566397 879442628 580138398 802003450 460208518 937314552 30163232 853217803 619168716 865955189 55995812 888827662 178898356 620379664 368747379 860519094 845426385 984573515 556505283 581508260 316100533 426365729 151401212 707931608 999278884 999949146 613313322 614280503 351455738 884564985 81190816 526271350 412172552 924213267 879958705 981865021 709618761 914098797 438064589 912374587 288063496 925449683 904883981 926718207 127900623 945449015 677569610 690913122 940477643 989098957 773823742 992742124 443151524 923826849 21988977 932902415 984145889 999115583 498531214 698299970 692661914 943150374 355012867 735887241 944920242 993545968 663118253 836494291 137692529 504232345 590558589 607476847 494611155 892218809 458602658 880682196 578227349 984709469 764473892 926257427 972635819 986694265 34295922 355591826 301319907 638370282 320375508 863328968 156472322 324580882 304716585 472193084 432190598 688607190 696185854 973083349 745542284 958621899 688176426 863618939 433520674 823682760 287756174 373044348 961039800 967668132 987003443 989171507 199158656 736464632 828137209 932635352 627785744 716354000 222616262 667623313 980359798 982697046 491169719 814821861 98347516 572871043 343127442 855902193 60233182 550370720 502922154 611627474 453411740 734153074 232916271 325774175 744626025 986885143 8588549 784805809 53777656 240244982 39404974 162193955 581623584 654875786 462337621 907940152 675293776 862033276 763872300 772647875 874325224 874784406 116330186 760145822 726979099 845857946 766819322 911759903 860168616 933484626 956447997 979263403 994121380 998572365 400685269 821397148 531114654 642696988 320851107 883990579 199769608 941990881 447861461 495087398 927794501 941965823 114447822 339016088 779936822 845243877 72910262 700604411 186817054 570194454 714899040 884264496 188886470 272410011 227585072 976288133 845717024 969137075 976175453 976388392 543660124 670412969 651828202 716728027 857569151 945667000 451938964 492436087 460701732 731749719 867076468 880378274 472403136 641994956 563164187 770652993 668203043 742293465 423720006 795445166 61366515 959109383 592021096 858060257 726625208 843585672 644622632 937615776 982161147 986869636 677233751 901717456 332377473 554107612 431038812 579234631 193958025 455470780 739197716 958694429 796756447 974911138 925355237 975374443 926468312 950183516 892517265 953920467 227028708 885124685 81199855 452556057 507865973 968373055 267366838 995646460 572611022 924758612 263352832 923453003 905201258 963537475 918195148 986823324 403152156 628599241 591917596 896205102 335271941 534925076 216211597 401965042 455207374 583160838 145274831 283041528 62031284 767137618 114280866 941934864 539821186 786499619 295760272 790038674 763816321 831403813 392053799 438639681 761043821 791526045 41110610 651140013 298055605 369598786 871246708 879071495 205200292 438233682 790497361 904920969 79825115 674153912 627279981 659265394 562740817 868210795 987339766 994450552 492965516 668872744 321129113 412873794 812656305 952760491 818171577 861469705 119974861 703377878 683025998 771093165 776041259 957339292 242387632 375440459 154252702 192608407 224469460 362532206 606371186 608184640 279675968 890299493 336281698 699069402 718070423 738765803 309926052 696283810 468620597 558366583 657669019 745801627 859494170 966002435 603379402 905889498 353497572 801805938 797695596 923287580 122682596 843981644 600028714 830960446 886050282 942301212 421146716 767359230 30978911 95953240 50062497 339120541 441159268 596013931 647256783 976018432 288726430 524097479 961974004 987854381 105181528 614856403 697706622 710310097 478721039 735569729 470587470 961685663 566230923 954337881 275605313 554463081 157575497 576404232 156051681 747504826 259671772 500667464 360434595 579383702 227316328 990085305 161058112 722916589 609987131 956169706 944793917 956102059 177320834 741718732 511473536 632185977 507681138 653043618 23328065 94191355 736795634 738350325 60389637 745237890 22042598 22166730 600452698 744084101 375872128 861698911 708505603 746102891 573107188 839657670 101344082 170857047 947066018 947442158 228820817 585025065 323012317 439508269 189214164 690648299 971027500 990353626 573921788 611505058 240732397 678211855 868053226 955002171 126347535 297169261 297608567 730671201 333917477 486615507 694062631 724009792 274395628 951838457 732662359 878550112 997718843 999464995 334169512 892305392 317808800 851325001 300942360 498120024 31332868 144769833 576051398 859564499 584781605 670468072 340588796 382934864 536361323 964021071 584069448 610376372 835612133 992328604 284961229 998856952 276719990 928163615 916060006 997815342 719497478 989240886 100795362 393994451 485268258 993780179 276782187 722304829 121820171 647228064 470150798 484328276 941858709 974834498 901595776 947308705 571262619 875151494 478060964 570965748 68027957 182553440 245217943 683867715 987800869 998955486 107537643 330220181 154982520 969210232 559899213 802609513 14337558 209637847 497233525 847168430 707169693 708291115 676690417 762202769 757598162 930891035 919638133 971515000 855279176 905928813 993981047 998458169 615216321 661898029 369504555 887183614 477163415 533996206 350397786 489261312 157294235 264044948 827463113 948515579 775135120 825407698 897718903 904532237 766570479 988080946 461675026 701092174 666591997 817040844 85809682 549210805 739152644 858467444 173159450 545966095 796788704 928695848 658275884 773232873 542162298 777984097 969590237 988119442 555965738 676415134 58290217 195924397 5485630 635544745 852645519 972398968 556250770 941659095 87047085 369916736 670312738 918330968 586744975 722556251 507394776 840370531 876084596 919871069 291896362 947869070 514007780 782972923 289590422 592311752 573159518 831767863 951111408 980834652 369656479 684464355 374741032 815406045 318326945 633828345 510278181 831674898 828147831 829650092 424574691 491692869 761365951 953661446 265258831 519926138 679340177 915522423 883008833 915763375 661840613 761951071 749477739 956377073 522515502 654548222 773875562 792079396 576902837 695378502 637440938 726037553 224393494 609188856 60019828 777042170 771433198 909102701 52211092 248690812 5982034 521776491 125727859 457956932 265522009 732495948 374368690 942643538 804078897 889780012 42389661 519960221 613035410 856642065 171115644 908788620 898705675 934317606 616735685 706142516 729681268 760323186 565522775 674596482 349616628 976115265 406017456 820892063 308314278 344707540 859824265 978983260 488490329 762331880 788382545 853147741 173847728 910206729 200340332 997285896 571005185 951048534 320362096 971312456 232914550 252477507 295695355 650681989 548870213 919736049 663051972 775586276 364748696 910884469 238742580 516621206 782412708 912864244 548223203 940890094 819193122 925875586 983614985 988182041 115815051 279404973 404924954 900166741 270559203 349510974 411406521 768010718 817272768 900273983 988985063 993829021 707824328 718471781 301495388 337265018 922189256 972655262 663688511 818989635 102568981 461888331 966732410 997025567 116869588 639912116 140101676 680224914 592298044 859923280 872467138 985075983 407954070 923010175 190580361 385840746 870585117 929905054 446501659 510500139 854765512 888496648 285710016 957635929 313070935 913859606 51084307 868035774 162029227 401200518 342717690 864123212 365619953 641322429 981239551 990354313 549704193 725761516 468151011 833367259 331323968 556992015 160316815 631346426 556035887 811479948 854714870 935885870 609662242 897077690 268061361 305895743 180511323 278596283 836558080 958677115 738596644 795173951 35851627 774263217 223019407 557511931 253772175 731667037 278771262 319249282 879359751 981890123 841705583 951781422 594634516 665897730 49840541 129166168 741908312 800631253 242910538 414897283 898559786 983899199 681439865 978255651 141699162 453726136 331686600 564204631 976884043 993927005 647864943 888131661 989217792 991533481 407809586 445268864 247826520 519980671 685890510 937119741 419117911 609762451 582584363 861255422 336863726 835200315 668950695 690114489 89096097 752717487 700494138 783391267 998446559 998490036 412949774 638460639 882682426 984747657 668511074 965534873 112372453 203467723 324521357 615741322 234428970 477542766 831824378 891580811 151629173 562702199 795516384 915277409 525460837 606823794 965141784 998659330 715157245 967883367 364340166 488222433 632394811 937145868 548684982 658786173 694560044 936861933 807380010 913078487 537696084 787096847 698255962 955210747 767609410 792402268 860986652 952703772 899354172 966722735 699278727 764615379 727783262 914841238 611149326 813342266 318304248 959011917 20362641 28366055 813811236 823337090 932516310 953462776 501927234 770520892 412433526 877824012 64690771 968036714 919975524 948582517 431265489 821361301 391862894 538782356 661468843 910594384 180330485 771753642 680882283 719872453 99749388 544523295 269429868 956842618 182307800 557694469 386219211 725271714 950133311 971879086 948880951 955770089 921956647 970961461 106346106 349526676 799020215 874178302 866798036 943612200 50992903 475133185 522098055 748115202 504021242 941578461 290743240 391445211 305888364 624867042 773284423 929103124 479461850 567873684 74207638 220137962 240374575 751047787 174671792 615769453 459821193 695695266 45538003 388570301 386164691 578325712 880156909 904342976 903211088 904008028 279281215 756624828 656422296 893711522 46053558 525187701 272861428 586778644 153071747 600184081 991153943 995145146 639840751 858055755 268003062 473259936 121951061 506383528 860681584 975832398 127320838 248222985 560677861 887057751 514439446 986720225 949184800 994245158 119137605 808432315 393202508 538306575 150064772 722105418 273980959 737800017 387384507 546490470 187722450 509955978 585655899 788913440 739896070 806026835 414268332 574962066 665300183 994208049 994851333 997667849 404443579 684037296 499086559 853108059 261853510 508225347 687453056 886726718 122724865 243839898 402200105 613507816 7887490 705025630 982971668 995160633 364956766 502819973 957201367 996704058 265180111 349179386 296972653 429395878 860216502 950260202 534944703 934086300 649611731 763416567 425873863 833069655 541753645 949038354 474277022 941954898 656872238 737394504 237257532 321824721 822026189 968133884 980822795 995998310 843467820 983494335 187143583 902046274 788652934 863444299 135874318 453572795 179691397 510498903 510706958 627457953 780186658 844565535 560460934 890949991 546005287 953735748 849265592 955617725 96224188 188475567 736058887 912785987 150902333 766981058 246197797 395815467 472317532 853550942 354535415 839276655 219306565 328472115 214867067 730011723 914895831 994868401 268380635 857624510 208562294 940300048 738731019 770869234 333189244 988144935 370051218 396805438 47931478 217784852 243004860 279794759 80755422 245512071 555208958 816691545 428979991 494414521 16494780 513065903 400139071 800707061 635395879 754222968 776996694 892946618 832476142 950841069 807948965 892605090 160932516 766064411 151433902 962032909 360634663 841437977 427359560 594319499 412723873 435057115 940188629 949081824 636577554 706741485 464366541 737949740 283033482 558384329 553977850 612260611 503483770 774894602 537935355 777638153 906663883 985311293 180743945 897092108 994313286 998697362 564040096 953690805 75376796 216993298 771006859 793303524 666322629 937526756 278026765 734434839 690149834 992504116 906048991 946170953 409311774 682357319 927991837 996285004 697849415 878926644 621408834 819769690 240724810 362246980 563073249 813089219 45110510 650601960 97137687 985574801 165724320 621946453 785104147 791554968 67945451 258822235 330248688 821105428 477034516 898733970 844925204 956107129 632899072 853163779 173233872 876146011 568753789 872751680 102771908 257791446 306589909 965660590 855426789 946216439 558549342 559888532 397976979 965514621 288531982 843775961 361208680 905748240 281601882 831787946 470812618 475255413 842050627 938844031 295821087 375468834 988793707 989952070 706758045 899620902 632269106 834570631 647335347 735071815 848251258 890904343 261734375 734851898 918081225 939115356 910366859 935163307 291260315 455982510 456371608 730167276 414858190 588904185 364226984 894459010 46305531 288541786 955093841 982471155 299456369 487516857 817145795 850276236 994946195 995331860 322239199 455186904 761984074 799916297 428675886 479380746 411875057 549330145 252553754 584529101 374026936 791180212 300100806 537017726 311243638 383352579 514902419 882393524 950356719 992003982 4717046 238779945 374514718 755850635 722177886 871522584 731223341 815756006 28529009 682904459 188996340 996927720 826097656 883375806 761280558 875740739 942940557 970000936 584010829 723891062 129559227 189639426 714704800 807416311 62995889 225188009 473100959 497335430 211232329 628190220 693001791 830368123 969791413 987426208 378572596 893331575 980238045 988075981 142953206 633699016 126773177 728211892 469423276 493983896 945119049 987949647 142040399 997819306 552947801 787752387 836005377 972399299 87801673 569871547 726174497 987372335 632218352 785471060 608855067 820427576 961259823 970030656 380580763 603844165 716759424 896330048 228370828 362995871 573543558 653363306 102641810 331866746 449293280 908488197 51085733 177230229 616207746 967225059 373310434 602161252 832959060 886269988 842502144 894016445 262572 93997466 965513945 978830157 772606425 896519586 856864555 974971452 89206054 929863877 915879532 966791016 803339361 845152065 437429447 753664888 129662125 507191696 492908143 948815213 212714440 606219717 370358501 738153864 39326750 351141007 815264386 866491601 312354483 576219656 291336181 567024394 874208397 885949022 920827030 947139548 675412399 848661902 621243206 790232527 357023186 951272160 302240804 848517269 569587779 734344572 588727803 883967956 201604500 475882621 168725695 580629304 673568480 678459647 494746464 615518971 33131789 294469811 254058273 767466295 24191812 413748315 705704132 856003934 646150003 975786660 94060110 860355820 428298195 749730174 477139300 601690799 9644812 921751231 334877469 451820951 671978899 769417775 735324083 931287985 300910116 791242876 492897327 575479103 466203489 491673426 260426993 875795587 364835125 582420721 417428496 599580912 700680839 702365920 39229763 264060233 287521241 447342108 29566542 887320826 9260499 816754232 769875059 925311043 659892027 724752871 191849928 838977770 738777315 756270553 484420519 581850788 922920532 977485781 597309241 895428086 702868773 930943751 63684404 452343974 920122759 944367978 115629169 610570447 998437762 998623045 82959280 957056895 257290302 558733612 730732752 988822672 11720551 566084777 129707479 303551584 580766302 705906546 117447523 726949888 955607158 996029232 970750361 990848867 944911443 996460563 838023085 907676876 267485426 565069373 779531886 843581555 166127182 671707663 592844810 885984374 629802681 919389025 746586125 824779721 425027429 895106414 292451413 716405943 181477870 621846063 295146216 548840010 618689984 687149452 179607164 493437651 427432028 576405637 139558817 769687393 875183719 931571662 968866801 977483693 282990727 833705851 660582354 998755626 709863137 821295102 548991062 773531302 708027307 709335223 477320503 765295719 181166646 238460960 457286668 850965414 396348228 768483056 332506492 959218062 743854760 757564427 302611895 379023186 834351498 859329703 766818600 905737269 707350370 900061858 689080723 802809499 349548997 899041009 158747675 562255362 308647006 505389601 162455673 840338503 235762452 985756685 518904704 772366406 543881536 665808656 708941936 913554480 44426466 533766902 259107290 482913841 419262774 973213080 940955260 986215052 779298858 965628416 601341822 921844264 922216734 938345957 416661661 758497883 895624696 958925259 37182808 688555487 343339756 958335772 883917775 963179105 199060575 949567914 68252452 970031155 492940692 873095064 445025898 967650731 959835300 975792653 47427166 881103305 601802723 845570392 168991273 866043775 769293133 776117472 381930860 668952453 795658622 848441921 334729332 417214527 174027845 917874891 747357536 914334411 377843910 529767276 16372335 706991170 762718208 866499411 188528821 317347099 670071323 882827003 655406814 665404521 86854004 334629592 245154074 898938537 277592779 653446526 439060129 698146824 473444721 732291725 284993082 409428171 132138740 710883685 59151321 244094103 307010905 784136297 757314667 815945275 438181563 999038587 48354040 259361104 658340046 861914460 176380081 945258075 822302813 957451496 1713659 921465290 265809208 920633618 713382442 980438319 912431136 992983861 109065371 162206490 321318004 522291495 306088441 631688410 907213704 923912455 5339000 55705343 631208454 658779624 770539117 816372589 557305785 921524357 938910127 946291246 289451216 725391429 147713801 477861381 373660857 714209300 413529790 765229942 996909085 999411226 166431461 765054523 22456792 813410923 62482812 157378577 491293214 612493589 804684057 889380646 741747240 889359996 516435258 906152232 701353886 720254626 574621123 804535507 658957404 940052664 262577657 605757945 892470948 945931475 464050627 907933571 994506653 996308281 902633339 950580966 575211414 621712856 406958068 873725921 484777878 881373671 881840004 986480663 462781181 877516689 711373235 976389188 557561986 959600894 782129989 975319931 857434230 877839380 795649880 858388245 312232811 621595370 788406203 847105748 844876550 990398753 510361765 930536989 877864462 981682523 283295480 436803140 450606362 548700221 108635119 480844181 732788742 858384162 147285854 808648044 635412025 785663001 14662322 293098710 931440514 966895322 831718069 948034158 263174246 535388951 259090171 544095620 286048374 416831965 561629718 850277921 143767303 670715211 627702712 638391157 946336962 977866021 617954048 819543895 812330288 812592548 210924992 371604793 49219911 992001744 331640959 434749918 706723162 803178530 780100283 816836681 43959042 554637078 515121876 927946661 913346607 947763569 860288171 881087572 752849360 949606381 100101033 613013833 793530459 972501388 96076404 826191107 745928147 909789993 813692315 924731352 740609551 773924685 299364486 681894976 958087414 997631610 844932170 983841325 349011232 535316325 504209463 815571109 953192909 981834278 616059574 953926185 47751319 490149849 983384642 987482858 835254800 949905717 517378194 594699456 850217425 905477488 858256636 889836331 373132481 722021997 77272206 702965080 588119379 786646124 115705492 984792345 72360262 179558819 375857490 803885549 107707391 870627879 59682078 108632943 481134231 568994537 807353701 929120066 764396474 783747051 894339227 902629439 567050054 901594723 529302983 731283335 740522587 757975269 381973384 623934799 717031848 915328801 978638978 993473941 608831818 883764855 611297621 946497187 734544132 859749905 85514957 401633739 231558468 967662076 905774100 937614901 243951627 728188322 448501020 845819952 646960351 824439126 131942291 862473045 772779594 879868044 505903556 991224291 903715418 928726347 979639634 988198151 19843002 486529367 939645952 941141455 845822909 859999339 652133721 929299453 107065147 538792256 243465193 811917763 112728103 255508180 213517892 761512521 15398620 249362106 628619876 886805504 966005341 988215700 987541360 994645912 342916128 666310436 663843331 849605785 612461410 799322810 726742816 771235410 423463722 560383690 61190592 690699487 886948951 968712285 977265395 987191933 32471783 33997478 615241634 840398027 628503942 785144507 586417110 651013518 686631950 799785091 950544646 975446445 298052254 707968887 223936673 320002579 838187904 909357608 26346964 851433767 110718274 534557625 513505940 999652914 89545623 384569595 932406489 964125770 21760880 288937263 904671755 971486854 112299904 737081360 944227547 977418877 645013474 655222062 502889943 775500254 204593739 525321745 965525682 996525394 909532377 941278920 841323252 848618273 217887376 779189793 218069360 550587886 821114482 851942805 695293116 942083842 208924689 624584260 991589193 992941460 465203449 706853040 500678972 596595142 727994390 759684281 673966805 780702976 973401852 981897592 988994754 995724843 897763110 927240362 611181258 752695398 481981180 864775297 858432850 892369727 578360642 847144655 639638242 948513182 888386421 990993617 750878771 955581207 466735762 966187726 292716404 688389786 820639439 894778226 383626800 663157694 185844152 380537366 63182795 640580312 849093682 894917860 529922694 597540428 778384647 819844220 490224538 689956240 392660567 494923366 839517448 903290923 149077978 311535511 444181807 513113253 806229672 817208308 515594967 605306405 879774761 908233032 558656302 962602122 882233893 968408923 352091972 716903109 152687863 427597088 429341957 485806644 677492879 919207022 677929016 910526634 342799881 975130770 459759788 547515430 715471081 731198820 179201911 300893701 432900479 969387234 944667053 967107904 662486234 763355638 56980002 385345722 26331526 738481820 712157851 985616088 983897498 985768584 557196527 945723343 761080596 951544733 556723852 627127069 428550962 705817064 943618111 947174241 959537733 990319664 837829815 837860614 327039307 786464015 200151007 908048022 13705933 208863525 895848365 913922163 130877390 871457861 309347880 342300440 604486552 815838557 162138921 838848061 487574331 944913997 347439760 416050435 201730833 606150083 999013431 999643292 114206233 465717921 728532107 963918269 87146646 797393621 233586881 491257696 725475165 788204525 611419280 832903350 392558670 954750910 189251721 577824051 702500853 985582957 692803999 958459505 172726498 517568894 170841497 242574567 561368690 864499891 758662336 847528003 225397567 378039244 517408291 998826141 641526986 823853307 107081578 674738508 774036321 933996068 535169906 639442872 853872245 888843031 535726129 705868421 124715887 573671521 238961336 626950676 581299282 895856883 606144526 967826426 210723495 611815646 249151611 305158694 967345889 971860515 757841914 763274644 543191180 547172920 783978553 796111135 206743502 342273537 80777257 761424267 339041266 782369908 847831255 997443239 641763020 716789012 831298734 912241778 767442276 836605804 243990474 350968281 357813725 596898042 22454901 124866532 186030313 846326583 335163052 687315930 837044082 908498907 340979262 911015192 979242220 991156150 948359454 969386038 283568249 969811895 134301388 893009802 483149404 812013211 661504631 696733484 648703795 883988254 309317110 718336041 534341121 659408012 939859022 952223645 812223314 953190565 626316981 938004590 134883257 956412774 72448763 577751450 708875513 895631159 533507512 542361475 355984858 618775817 784588026 967818933 691900790 914058975 819992362 943208327 228428934 270000943 988932409 992544106 190298659 704971054 633514675 819370348 628962779 885222162 696441969 965011595 62591289 703267546 750919585 963998704 352467325 391854000 578147433 724010422 775271059 880087587 841486932 905986068 279303178 793851982 394327239 498010518 211835453 697197540 316224051 379505697 680299707 900959136 526817889 922186932 478888681 692020442 888131581 949386849 600176856 792607058 607898346 860235138 510254016 589181076 975869234 991200351 815018817 910945348 999085002 999517179 997022729 997464030 353751051 432083548 409470341 694347738 409985919 987180073 579331668 655522364 923842994 924991761 147731588 420693132 701896700 813993967 120559453 642965776 896827497 955463873 287515786 582885117 119969646 753309668 264930564 847668293 31638398 288643748 741177512 908085799 644992135 797509082 711732928 894612253 913684742 919415055 868356766 944053015 854906934 874820321 605445613 897606745 306687597 693936896 683848969 988776916 336463127 551083590 301792704 399549058 257111980 734302468 57859281 95487135 219454429 716428182 71015941 556385305 593243942 778917840 586409393 800502579 836362978 855635078 10870804 537139735 621705518 690810048 827572654 927425033 149548677 153048433 277540066 353119215 420722064 694501771 922093533 978738575 951380564 992436308 80164713 667540776 419551718 448511361 845123680 889653654 962474879 984126180 758481328 928508480 556659156 603389160 249149649 594697062 107697982 648329753 674532539 896020339 515025245 747311897 707183923 957583504 643466135 902111629 120836123 706359626 40624946 142676837 820651542 917323307 103248440 689064461 347422287 451973445 128804592 252685029 458948804 868580273 2899154 966783192 232862562 875957128 626465524 939472495 483229829 693839885 757841646 926028269 540085682 576220855 329768496 386086431 616828755 662509503 670549793 806756408 788389527 842678937 928930038 950813511 651822993 966024409 673279579 944414598 608263909 836548530 506175787 713436875 506872802 553970345 417808677 899516539 728822303 785095669 697476885 819201856 93090858 683092305 600975621 983520203 657262011 710240210 220755643 416644250 118572624 836943897 989874523 993475667 747703954 999648037 334809826 718864884 78528479 735247410 869393619 945018504 390958662 847030097 44242571 695402551 773533796 877127371 86289259 994204161 421179946 962808836 864012490 955554699 585463342 780081733 424472140 516243771 974426541 983535012 287087133 638646637 864044157 884181744 806928646 850160035 208108769 721348526 94545384 847340159 975038782 975272858 852247321 958745283 663414631 953684712 924866655 929998358 847454435 900792705 274609415 861873804 320252567 351492702 659528021 844723319 692438178 917672929 524808490 770564044 667746316 785881734 330092930 726406260 377586940 521059689 737162411 770629306 381948979 586103096 537147997 721081510 270812294 646401744 108510883 443796633 356052376 714259708 740655132 967351143 404093370 798019315 901196207 920631761 819326327 936208551 70051814 149248695 907215088 943152973 723580870 783748408 38922973 253376721 43243939 288621050 285128750 860045935 963514557 984592055 272351272 346044033 68352444 602490231 234039173 887020442 597256082 730218088 161844972 877841245 522973025 965281239 147739299 572659562 821383897 915209278 252321813 449706122 987440372 991021541 749963562 893717777 608700251 823533809 461680050 824860109 422636118 489475801 124427598 628934459 899161347 905989129 851119679 881737920 89686729 591185698 346540285 661069381 282593702 820103211 927731611 970436478 54542312 960579089 31226766 498486007 362233226 593873131 655905101 778214774 709115064 831431086 945222814 997356554 828348486 842642444 507002828 600046871 865760707 975048252 397355219 704683780 22419806 510566855 446255095 496617987 688232842 877862193 606075178 683406841 42109127 564861869 431560682 875594057 161445615 740937959 527972452 839548457 962375552 967149074 990285604 996644626 332875648 954936661 946476979 987988864 415443815 697865962 161639472 231095499 523882013 859201144 833864215 925394830 859460025 942852363 455428459 795790617 532086577 957169126 899165727 966146008 959747988 982486731 994026162 999525188 531677164 739620869 520516462 646613972 275045526 957676481 345307797 480292638 61524478 362007764 725028115 736363393 508647110 970107579 335971719 872060576 400072275 935731736 777048017 907882993 947440895 993402437 26146141 139276213 345556998 508927262 278340808 483345396 826709765 983241703 509277112 575505327 478608454 592095290 284376608 464912762 372052070 465742119 905574398 915186414 584844745 922406855 169851896 201191505 243407252 931204575 931295468 973583527 182459223 892709864 649351650 852154409 789990876 978075039 165218447 212814113 801757975 946307836 966940187 976881103 200578265 714983603 844071126 919896064 207671343 732983803 533224352 853695912 39291025 125282225 634875923 804514796 610119197 707014346 99617943 918051307 46415526 638856914 318485457 459524082 825154789 974610207 167157315 884287540 506941933 760282587 761577971 974135344 802910415 981414102 918147519 933214882 57971210 233930410 331729951 548760164 444157693 447933884 589288624 868602300 112904342 529657943 225098961 565584065 329678947 491125969 116856798 489619536 471425533 791450627 554643983 554765205 548058933 668162667 875687888 973037100 451140881 560042142 462803519 653071903 337106071 478988102 975619025 996665222 196240672 935591089 147257994 179832247 742022650 877402495 216608504 852433292 15677938 254838034 671107889 903560235 841878827 847553182 997856514 999630889 144999654 742274257 908250424 980767795 779171485 943986224 610307095 979828617 837027884 918194448 236790205 868141398 438750460 703441803 173789729 838137084 917639772 938445412 940186486 967778274 981217407 996182506 599982640 886613788 554945011 950526987 455165969 838093636 775866081 924945362 468200792 521523951 764719293 774259432 435049349 639956308 503233668 960335114 406135712 685781004 933959050 942696774 803732291 857552736 255779620 615512611 660221477 690081688 378410013 697362515 133773094 810582439 322895899 399957084 871724199 926765130 163107738 180482867 263222065 403359788 338270181 535743136 430354057 943609252 957642058 971832366 171962048 849498705 27297930 442463366 41778341 134857871 550859884 702166528 844518866 939751969 917769609 999217942 178835792 628949882 148862897 731479964 454352886 862348331 141901397 869956428 165179120 230260801 941969207 965322609 405509541 609892754 864995450 871980914 40119837 948387771 211253047 389209022 247135817 258113342 531944116 574262377 3617437 534373378 941040604 981696659 482170582 841753330 714125013 948383939 982615287 994339852 335975370 880250495 809293984 949578532 997989741 998740595 89963286 144061637 764321018 980362859 716632696 742169524 737919529 817395739 995904764 999347256 277022888 539824278 934999650 985055892 261032628 588358918 129557353 896945991 362830837 703917648 448724878 603807811 832692037 850178021 790775210 811639805 641268083 934106338 332092053 916317892 39912091 578753779 560720363 934172125 262889578 506615735 129375709 187611163 881330565 968426371 532500203 778423295 408506034 878865965 512866886 786659371 961732204 989141719 71883146 968751930 536162150 922793075 243515352 887778108 141001088 293758666 107340283 548251990 548756748 574523661 600271787 630544059 347883194 671310579 770794827 837065812 656532123 754713090 272885232 994776817 79596967 378458920 722779332 908525183 449111362 593423702 952488736 957755625 602426888 995394965 731405097 819540342 113791834 458853056 793308706 944322637 316089526 531710507 409583999 437716285 271218182 925689345 17410156 97351267 963824190 992169474 846722273 961923089 84874016 902797754 194006850 525617251 513253714 927215219 15352788 185628892 240654891 758193727 208252183 750391691 82783820 392587301 978910500 992516236 539643994 999746931 147209453 571859928 69309474 529595507 507420670 978897083 905585754 989205492 105848849 710094373 858679987 874305188 158571559 303514424 816638906 822886917 849859593 930026709 887108862 910773642 438628872 717419001 96164618 382837334 625031767 780787458 764906790 969787506 979028942 985455299 340502787 499396721 793170409 921092244 999343308 999444981 204942957 599374739 725663199 742836645 165012086 582093504 846877662 956576153 525283596 950108217 276614141 417810186 14057186 72488080 423016817 499329388 74800522 869678298 461273968 463990612 943175035 976987002 866887774 881718375 719559836 893792095 794308195 892812505 773494715 910835189 620011334 621211583 68897168 860092945 760486552 861146442 269852379 707217172 447441653 965138481 101277029 769589080 133270194 513051540 693350032 755014891 897079328 907280385 453095100 957144438 256156351 882838996 875684297 883738711 497941834 808261777 95473767 511206514 841045747 995082985 382811797 945644611 169853704 419940276 413207346 935184371 454116966 902974994 164562450 940636203 797311748 833268750 508223546 961831549 517814247 724612967 895729892 898347540 335165163 770582870 133511519 951115741 607829997 841616848 65183348 592708622 920814928 970120519 969262937 979932167 703246817 727103526 618954789 765612028 774012369 957854106 242766883 255115200 51937203 993755184 849500473 992768974 675258737 810086270 149856309 666397357 477790273 628501119 55952046 239283124 417497018 599086318 250036050 650712888 329332380 894759445 480156226 600480835 430364931 517840904 142803438 320961998 118703825 142630046 157345709 983350908 704287204 808039263 512486049 817310698 226874037 485045171 918483408 986900570 752994377 757169865 826454571 966724301 397669309 731623688 85158703 444142619 199421273 580434363 528056871 635883225 353411919 365206016 678963122 932408058 966442012 987702731 652847790 995401363 59664753 665091128 766749854 898522208 400316195 970144118 646898048 916424373 760790809 925521502 546399 745307440 159364470 303083749 908937598 955230504 427577453 618224348 683096748 762785294 466971038 550745620 375979466 776689652 308652594 745985958 34372094 453824985 71601775 547946607 720803438 891637228 299478082 481924665 495149678 880403524 21522724 970265010 467691587 958956611 146249041 218189479 897839612 946088534 74155467 624344413 563571026 723343663 462734093 696590705 789445734 927615983 829458055 862642103 967038082 970681682 981191377 998123541 194230944 281752126 459616118 484262786 386654470 865890837 700150492 702466281 130457315 720140086 986004011 998042394 386619453 638199700 14683720 65872171 779341736 875279252 823431585 858181912 626080474 636003085 219970535 653461575 948835297 973879383 143541926 770187611 388792312 409943716 173918782 936311113 164130609 301927589 294595998 313680111 840470119 958251205 141766127 973502692 820468523 895687529 179751024 474037823 3785500 662972282 785526071 977493389 202117647 957854905 288251853 937906498 871945316 990631984 123876119 527624215 193754771 611135620 579477189 612891103 839606465 899649423 68288764 719457204 395125527 974015698 452848186 892412143 935371552 946120914 715230122 870760225 621544812 910958240 547635721 627125348 589245100 701620997 374880859 672832922 639036131 735137585 623296048 996097255 412337470 831101356 554013601 886111541 154701753 756426055 964812249 996505559 832802475 929912866 437924799 596246184 708906274 786727844 441404365 683129112 304482400 937432043 902338626 919013046 740784652 900059983 7021098 263552070 354666375 703356057 822574997 958767731 479426610 906649252 61430930 710246832 580891312 656213097 247384223 962113968 157709088 978919535 378653535 879662842 138516653 190940864 903413493 972278402 683730598 901068295 437364856 969008785 154468919 489351667 113348445 263823049 659213888 731286947 443597423 530631975 201975367 919598144 907268621 951364113 968888093 975577268 394174833 496446551 978112027 986786691 824970938 982310496 648302491 834196291 59373205 493768410 131567331 577040534 258726686 926650733 120101152 260103891 418384587 534238338 94494673 569572182 588193495 865018023 122775194 791554445 879222777 880613257 773666551 849632062 370119357 679492350 653895581 973374803 759846480 912789501 944656724 949187677 826455508 959551550 116064182 263905927 846163246 846606125 443322119 795889578 496605022 536351425 671734867 797610345 848104837 981246305 68536708 905582413 520623831 572505180 490460409 511792644 829073599 926343989 904800516 908451561 63835430 271010529 439655409 642586022 113376946 381941620 555043528 959496827 845468676 968466802 535027153 553707189 722129380 837126517 734166885 915102132 874857260 887649494 183676173 349425317 268295612 492221989 341186072 573012545 551357811 969682038 640093140 738330451 454640338 973632722 580084312 950961300 961921639 988710761 177270358 869012855 523315663 645785019 170558067 944277386 486242970 973634993 975930342 977273854 497290957 903647845 948729850 963815378 948913424 997483745 152775898 662962229 419005746 470862593 355330522 581491364 899260127 938947670 817411693 948253329 593022564 709524229 696738084 786483244 913419653 927875912 231560134 885072130 765253318 856509056 986717569 992307910 51394606 545668683 629553083 885353465 926196894 932279555 902375648 978212668 133053936 673040600 282740684 903628771 46095076 584626191 765965229 954530510 291490687 493462563 383043791 491722450 414616164 986114267 798771768 831947323 611514790 698041015 388252782 853526443 422391364 551286140 394405549 659003844 968233250 994830596 907993794 976890797 206050371 236052725 238228255 403961437 568530468 645808985 117667751 158367424 527981533 893587409 490848619 603351951 481817556 977380668 596710202 946417590 383389832 950321837 926851983 995887391 942891094 995904456 960350638 993229515 383691594 414987995 989077812 989117280 753456954 800444688 298236092 954509421 576203080 644891438 864207671 880993248 37677650 273413160 720253093 783905402 168676616 954847799 144945659 522073448 874639947 983899789 674031301 808700583 567622090 568613307 216169281 838099137 242395723 725418359 689779942 898130136 657690507 871306756 267311670 857520163 657114670 677120052 195086907 269625675 94109660 469875730 238666789 391625587 534976905 550890820 743538540 910745016 81551214 761323039 762600297 972019576 843484494 982888346 921546655 994955177 798460975 969124642 703660092 862542128 475397878 598759482 260585708 587986885 726747429 920881504 245624166 427471120 640013196 666380306 275930320 514971934 669799594 677031740 461136950 650079407 228096637 390254353 514138425 794608517 549127243 770090745 600009667 737531878 193579066 554619447 215682386 682934347 110862842 440334600 592697995 822413713 45781828 317256552 740637111 906630901 735016422 955761959 667097740 814085643 7526508 493555988 22272830 603604469 808399202 809962534 994607013 998669984 718724624 761684780 239390388 637614834 112195478 464762779 404108028 511349391 788050079 892125257 932503080 971126583 191559647 222893441 448071172 802463850 715746457 809076622 14769865 50136834 513932516 544836387 868549251 977633936 321793089 469479724 913612477 981142647 713365390 968051782 557538270 697275491 400685413 857931501 923094594 977427548 538125827 683809024 470597613 815755969 37359325 356659828 813753891 995395403 474583466 751851892 855813927 867569346 590058316 733242215 397503445 978875638 569889224 592767652 310566666 783908739 216772135 388382026 225585876 607236175 903583227 995025064 254720612 754694968 497105856 961006770 993239036 995648592 986472766 987463726 946835840 960501153 843440003 986905938 604269547 827754364 557330888 796527521 302255111 601924871 240466925 801853502 874927228 957819292 98914985 425844203 434988572 654776052 897798321 995907901 457886060 815386229 597573951 994027157 272493907 433418234 442137693 710897811 244130167 503845433 491297524 948574718 965026143 988656960 102772709 450650938 550401824 884342815 742440094 930007064 448014621 622862114 105854675 321986144 884772774 890758779 919479301 992353857 894890577 967691005 311266012 460464382 834319025 964475112 351957194 995221474 350508869 698491973 583531725 973634711 487614199 521864026 897042521 938217802 521192297 790321146 460990921 566940671 110105692 842306045 87550146 804089352 675294161 930803469 905419377 981780893 716222267 907677381 176446900 280611883 864128182 907364387 117670990 915519709 914909861 958698206 523502641 842126914 734220046 866641265 462982779 664739073 851881310 868500243 271628553 412400019 569148327 713079679 289734495 668596752 819919415 987229013 906292232 970260907 485325606 876137309 597902213 666433218 502374058 680228586 773966762 787199630 817726700 925739254 879625604 897147750 90938460 199939447 994594840 994992456 917998297 921750489 181494582 701908532 804818704 825477740 470316558 993744949 191413274 662751185 912980885 954943017 32514217 409424371 124021847 125782082 67432755 332491382 126770197 551943358 466350529 699390306 678147937 891236253 733623787 873317382 750869842 894916396 814729405 820912957 53427272 464091825 4820795 351714612 94824566 103004078 486923078 510614060 291602074 601132007 949295100 965958892 613546524 635453716 842339903 866251219 348073647 665615644 454591703 764714699 274661815 294480357 441187093 648216538 903878621 967455533 267761079 656814994 887341890 946973811 963746024 999172243 334431704 374386597 976854478 999389159 446327127 831043568 42621158 226166262 660273649 914670608 469509455 678310503 569106522 614280565 72525285 481924546 29278956 912607692 329861632 459509261 634496915 743972920 105784870 744868581 439226820 488317125 454136730 642099724 752451205 985466261 694503651 782133325 432546748 473316297 692474461 758858846 283486062 791543060 679525177 837022191 585710875 603370593 486893859 697707052 172148685 539765039 484966702 764694452 158652417 693062228 354983904 883341733 391938430 693467732 182881704 215390136 17014586 459568145 76964721 133180806 840774361 928609838 774179322 971674181 455697783 743068261 700215348 797022128 721364042 809663491 64424322 502253263 223976523 735460142 305641702 450940065 101690694 783711438 183613126 306334293 276966987 306199715 989809473 991024611 225546331 586141175 604592857 666621984 98269354 244411820 310858060 635086088 490970917 601507096 161367729 803337059 957794495 976003444 866579581 939836732 200461151 669589378 212510677 929823639 200649241 785252839 574772771 865128612 550407089 900994930 966184214 992113867 473501629 800492658 556980702 802014871 659101659 835699725 221114904 862250479 952983778 997700107 250674039 694044923 40049248 487239934 761898448 961749043 998275777 998967835 414195610 938133926 599904931 774623497 89976645 512885835 148142734 892587020 921718327 944961412 645092827 843667726 621763076 927275344 645140997 764283127 303259501 820108531 567945770 981529280 767619379 785398037 177359871 779085752 330029086 580627637 345171856 772962904 929700732 961943166 251390777 645993812 774490549 874757364 624595942 695404464 286514018 949574084 345031457 902480108 714906270 959103139 376168567 631567938 506301639 986897509 494853766 561507640 441438083 551609348 857152345 885273583 343377586 699174342 420558948 439685422 895220749 974351805 431680121 951465507 56936492 130752159 624931035 852874117 149549754 962796237 173701868 816423956 192603236 400555608 138953996 491468084 968864190 984731487 794779632 836175631 726912474 916436478 529168029 932405084 479156661 696056893 310839990 767159686 734191856 950243299 548032506 826471074 288709910 866985365 934179317 977000894 17815563 23462956 956145110 992558584 215681931 391146764 301360284 635927884 594564091 934675590 107380040 494213538 860386518 903881658 41333156 857359114 765297993 985817678 23529000 102058111 260461677 647257648 796446118 977830225 473508747 746352378 469226150 636856207 994253178 999359227 913368497 976705858 617648680 940082322 106698737 873290015 854749775 924015673 500638629 633210868 942696929 965185239 927722005 968840706 679365124 702701015 905720737 978782874 437071528 612316999 332777114 833673968 504414749 853824389 335626599 491789213 135805225 407162564 285761248 850276713 64354742 876273463 639557266 691865124 915777388 970012142 943507641 986902245 246897659 949336521 507726 245048054 800180535 933646430 376236498 746007196 510742154 859176862 853702874 943392346 396479118 738907065 534137752 951259214 276887887 772637432 385034151 526387742 422783320 838846741 917905341 980613718 685830786 846403413 117942644 299587141 487713729 794295158 748890597 771051296 396444911 410475554 290860250 444473135 980287128 984637103 79586378 762384866 678132513 741657737 103329330 935665471 322612897 642136993 840138659 978532741 740342997 875241614 100443460 533995227 284926215 545335326 617198150 712426323 562674241 969565267 374606866 530976576 870489055 939489680 842864928 985679066 144308322 812658449 855646347 909460505 769061800 986908219 173374768 347546099 757457914 899791457 974407026 983578842 807033560 922296892 240726373 666305054 342594501 474255012 269092084 791680191 870073302 890850775 384280768 963208126 585700143 940721392 490721681 875382344 996142144 998338727 50639703 320880327 551030547 941651739 840729862 882978272 128770788 129861180 165703424 525922287 10949718 64274372 550731140 643234020 416812653 870000989 309196523 919879465 356662933 390191026 657779746 816699441 192578831 518208931 711575414 807525009 604008254 892015473 511018051 813086546 404866569 769047179 791765988 816272994 531488270 886768166 290701924 530975125 760439760 936673249 91870605 302290573 717335512 741588319 500308738 936812062 403664962 836639715 134633305 439177289 142272695 389754981 54114018 305420892 782790037 952121812 243836259 588598335 290032771 881618625 652826662 905965217 650704639 694718057 370514767 543182844 112277937 856960047 44894467 267620729 384811362 706188152 311750737 794151079 525042258 973864414 621552975 644037006 617631398 950812111 377620326 640243811 26964819 189922812 797355623 938972691 742741801 809823466 664195516 983504991 534856193 722848628 771043222 995500249 643566301 733289452 520054004 641681302 652483635 981104394 724210272 727822874 952115855 978910591 119657829 794467196 401406084 618043990 960589342 979621773 73903939 950461507 285491872 932205688 580609613 734087453 851138697 905206921 62086252 613071144 274024926 918804840 381537236 785600193 95810673 338074762 885476430 980021886 503430265 923184373 232930701 850626882 994861048 994966713 690082253 943433952 970418718 981700095 2420381 936537596 58895974 266892151 191451096 675657999 28289632 145869619 264374219 944456116 181044597 372504065 721610496 989871025 124535085 959659571 13604260 185950937 987398400 991089118 785378413 814984776 29209930 34524852 836729206 910421500 658684286 912030362 95553355 424471252 916695415 930070892 20598353 451430272 564811658 771958573 445443883 683396085 277753438 383572659 764469120 906723751 815712801 967129363 959095839 994590500 699953903 951827225 486053003 775302514 503792958 987369467 414988292 713783106 678403897 759054786 543288204 772491812 135717605 684338061 635214865 646255762 13966597 496674987 270480152 700497868 150572021 882946939 224138581 965315654 63204522 140130410 19762960 29098193 950211099 956310515 38387377 884613407 619707239 672331072 914506515 992589166 997614233 998791505 456322658 794011694 881630621 904552397 754142273 857501520 921303168 922639515 971060286 992641666 470821002 824168978 933020816 969970676 209586085 339066535 561916729 575484151 703185538 754984126 560839521 593743006 551641027 578975408 312892952 517915264 671081290 879143709 276640795 424585679 610947288 723991159 355916431 672990353 174759995 869703634 584209908 990275682 142940676 663503733 492882458 497499583 638373517 847936567 440888716 581198767 651832100 972728852 948688943 969429057 447600277 779155946 763311692 819081029 777702055 954935533 206994549 463586561 868257518 952117167 325516834 796852549 568667273 896402771 614188022 725299349 288075305 564208965 637849345 809809400 1225673 919837902 879285772 902576009 530342807 626202432 793597299 943374431 330036007 436402153 154111968 708643579 226868566 257295842 337843624 881119594 579888230 851395651 994154294 999328791 256706943 432383997 383549088 539552922 548023131 650593676 979976439 983668974 243896312 556234133 241039642 452347687 534963713 575335976 579924761 666853519 881003501 983610726 746955342 848439347 527601424 999315230 293186601 427159140 331403083 770003541 351715466 979649883 645521575 729849966 954971588 964534014 947608476 984331596 304608076 891460696 775959955 942284675 655755036 900670177 226328684 267863305 94705094 667723683 35807003 561527967 636447408 860156619 867985762 932296594 929585221 998533930 90648011 94652213 987806925 998501126 446093796 504831908 635218836 870481424 319518114 716683738 847607159 900601654 181032104 963754748 704878520 769062707 7342998 247768229 537621186 553282636 281750928 531392459 57414955 603176284 84870786 747104612 542355089 702578099 143910629 577723029 739719969 927424761 843095376 970498822 906557096 992044392 6530826 949500109 80397682 301547457 168731426 668410784 855067172 877319583 73382028 695850239 974334795 990568208 778250438 853521716 233177093 749249817 716635636 953741438 736639757 968689365 365859591 511144447 130627667 897062740 697653471 746133936 577801907 648239010 312367050 803663724 115471834 667591279 311750438 496221841 418595046 485126765 10586260 345166459 76574566 197732605 379905248 695557394 511378827 873201959 832025628 863053567 844729250 981710287 449306778 775222446 593840224 642230651 847823582 886251888 422165874 877457173 210038605 496855133 348182314 877106029 839997201 993942816 689039907 750694267 603898722 613195115 251592647 702473426 2230256 802491274 133047019 457079515 26468647 143150079 716800934 979652214 199566640 512297955 487412776 495538680 507009396 893461291 599830782 800374406 916014191 922492758 365111411 652959868 426232765 731384161 674313654 946414601 781709586 937348378 238364497 485633875 604007330 939984510 896617390 993175577 223123395 964134795 719111967 888707871 321097149 456786972 811823758 944581157 213295218 888854381 134635853 325115346 534176816 939503038 515077101 846923227 881390310 998171213 174550090 414730027 412633023 803596834 352321109 842345619 476234201 514345135 499028248 952341619 977211788 983738003 503780429 827701452 651831298 793965851 151291359 606031975 825228298 884026063 93881292 961218217 124779799 776872614 26345538 154174973 154402100 289264854 570822901 947898388 298904322 434139725 103864242 146961201 532532996 766805250 574214653 973296530 36620929 359429895 314754495 747682381 497250946 643313234 294544458 960054877 335588112 996143512 559580426 622905467 641357689 800614691 333531129 731764528 207926034 491615429 26649752 115379264 965206526 997195615 914828928 945392189 477426072 887788619 223992638 832453400 12970566 462407655 553042941 940068607 806306392 824190984 65778790 577889674 503848409 908204990 288452071 416998967 187948305 946065239 580193257 891724291 262552889 746301906 40945649 796058658 741675206 976754059 771429504 776397802 714560811 920687043 312374298 459092175 598417653 836002527 329889122 420373021 112620064 583598204 575365705 688172612 45578593 338946592 966437656 976996664 235059261 437235593 970646436 990720330 613569317 841195470 859438243 909723341 100805882 911860160 353712908 790625459 668116472 675857385 669286603 845370938 642490348 725593734 616143412 984681167 689413627 714692096 593680839 632628320 826475624 930601735 961356659 962636182 370117584 448942323 466947037 899446077 496292571 971324486 823310787 864793435 453339153 792866542 471064384 975816721 280024469 400238653 870778023 888880514 563841225 920278129 912427715 978569931 47616356 207071564 710940147 745471685 670245839 827442508 139652454 469297886 627390227 758683211 890260940 903376509 761385356 872768304 655691241 733120563 111176928 199333714 244317938 981772375 578738810 616742257 500210104 516146510 551275854 830933965 913309054 938080877 475440726 511905002 725195611 944721367 617882065 832223928 949431043 985968199 535227297 977194962 701468762 864859103 286722846 936521947 996718117 998583765 181358902 829550339 117307811 791073814 200810619 762938682 95767251 319201591 720151811 736968099 167422642 842627413 218024025 463799271 834229259 982837264 684574330 885701258 177924906 893584845 145002825 905399871 504210370 547268182 666604887 757779161 89625618 782882144 396590020 858140937 487074479 938355569 172385031 423255170 788472590 889360183 381426117 718278954 827850395 877478193 55933528 540181225 998535793 998772511 574701239 661951547 394821212 815405935 82720334 604964813 164571348 386550099 176108837 747707939 691056417 698728109 619558015 940459600 426032635 488122012 674798113 816534735 207265021 478525997 9209768 955129580 882307283 966765244 541619310 937933113 893892810 970919188 720706484 860386549 808105558 996523219 614807274 718372732 697245539 944016737 800940080 902774686 729788630 887716694 839663196 865655575 540764306 935402125 139123136 474708171 934690310 942700697 773221676 849330321 876971457 975077349 196445817 889175357 873020755 931921927 567543017 714016357 501495504 803842011 632039282 904109608 450689222 938358909 590079759 779746316 968329904 983509251 243049282 954903701 668346482 968384787 603710509 959044748 428984089 431668421 875126705 972672074 384094493 579547386 299038458 306770008 652773156 754507400 654462436 891472756 16423878 542762978 994815061 997748839 947541198 980330377 57207302 133261896 767551994 941870247 770816154 806315943 244660577 868612829 96947256 815721781 667942885 934444268 879466942 900481801 725891188 802812924 601336551 936184398 315141513 407890827 682834165 875316166 341645043 937310624 739977544 799648256 804427472 856214055 39361736 407340507 628321081 894999393 975655203 993097169 172213728 382683844 457073681 994472184 573239018 681188073 437577922 631579964 454532043 735162361 235498708 800075086 999557632 999840318 577642878 949682161 795392643 877920987 527536430 975105684 261399163 904150604 549480510 930842598 374596318 912799675 519296850 755161117 865451250 959717133 926964879 934904359 775629788 947406383 871011154 921714594 900176339 906397251 610777373 754889682 739778342 916683273 581962613 627640969 79655040 572532968 65297500 933027352 601082703 918363602 50522661 412992501 967023478 998156013 69170067 244338709 114517602 893133524 966701502 994153518 89154113 747901498 269832982 654680504 777263403 887050316 65146600 203827700 478120786 615139548 131617379 608143290 828194375 991494089 243066216 575906474 977941888 989459732 790799561 959270999 137527467 578163680 214810159 600910443 801577138 864531193 616168696 887581285 658659134 902922724 957690535 959151820 602536136 974510623 187459235 549768746 353013185 412086388 766098255 771640033 783337655 992304674 511630582 779696888 573675368 761601491 588973914 783053972 424133462 547005008 124755639 633806048 985556242 994149809 471846485 546145929 347631140 757308481 883959826 959026395 536674702 840606265 969387575 993074663 5021380 551771079 309210570 354642071 577387122 987948849 516075872 806419378 95569087 334234889 695918437 958017973 629356279 952349833 786870332 985893704 813786931 921488453 320766839 945175710 713345160 942727662 354167451 468200371 102767942 275570604 370926127 524226199 14376321 419891296 943611809 969938908 231629688 302520453 683686605 923560150 156626395 791660138 624182588 840767883 102513542 430482720 317920270 711029368 20984733 190663650 327458913 939485270 920642613 988709879 864233269 905003921 264967407 812310647 475286530 689010044 97594196 969307094 210614227 391265342 122865200 511274065 422375524 589720946 261521272 856153039 512158039 827893095 958782224 960991123 977991775 996175424 708329588 959459675 442851299 789967660 60371923 812709656 224903546 705309405 388537802 922584182 747941521 818036100 627217243 958378733 466052279 474518709 652786488 844432258 394867959 585198398 761657687 823511803 264416405 296661837 988467965 988930832 185595759 251386955 76190995 792267139 675782141 852676188 457788022 613108157 710998785 900577979 796323907 872913645 755181822 929131123 385508141 901787921 892043496 895331460 46406046 464678868 270456812 672484503 377210347 588128627 581024182 593812847 314832707 734328019 421379200 570448938 460452052 527349928 628519332 715568545 193907238 687520310 336720019 469301591 764031394 856903831 259763530 333714999 347644377 793630279 182451183 199729598 613580810 757733837 593860483 840473320 65986030 402953623 568517325 956729695 37769550 695076991 681020443 973914204 29628094 431037566 626951236 774191829 405402632 530503651 44204939 72128146 731520870 802912354 954763296 973560194 918909279 952362789 75020088 999825435 389226631 751848044 260959216 996520027 8617951 186097130 85646315 694293703 853169753 928281238 962498795 995588219 267450882 592855438 574102523 977218930 167052 561351116 177248453 401406601 405030686 885896373 826217677 827510941 689966737 954553330 84021975 495660617 574330119 642205562 146833911 404317931 542169081 679277834 329742771 889091437 544862960 642953838 285347525 644022161 557282474 896122349 152474032 767203777 332433693 712589223 182394014 918162704 794921791 971534676 209518927 558126761 328561100 822453355 894315418 967601409 17314640 847069435 850213890 999336810 761907574 877109357 283468613 556370082 254284535 760534729 417222403 528212275 593889268 670179551 45090780 769464242 488180587 688115226 945710618 953143948 434591065 992378436 423588683 632988418 160859958 190528776 567925675 891780357 504358180 665446872 665220198 742061019 966665695 987903581 505398787 709380460 834000164 977556077 159777785 533319105 764385678 990320708 189156941 290474096 336023475 908640914 150103333 519427790 706396799 718357439 342535275 797374875 216062943 979886170 352461115 493222520 693884194 835232294 273566296 649387882 700391004 915038428 793488163 941137180 504891623 775749046 634651400 865904608 842503671 914624017 284061168 697955066 380636377 936892107 664740401 827625110 824834128 932756861 956458398 987811472 951814454 990905725 850093454 858630269 999990045 999992958 876472247 967296815 103906502 637023238 850599641 983011663 326452047 806575425 709972037 867955942 997733772 999623141 655603563 669932875 973384005 992776759 313820668 640962910 239621546 747288872 558841815 570032539 478588655 950593490 920213623 948659284 411716535 734721098 87979517 976220175 805241823 926489545 242135196 417259449 448311402 714533564 45242255 972151262 755664974 885150698 293036676 599608767 265540135 887827947 74941747 688133172 230610867 626227010 168119533 296850555 307012595 586886314 853831907 968164937 230640539 444721827 884515264 976259840 846594941 946292350 635006549 741451902 997631057 999890343 904894101 990432905 230582717 318518305 746832900 761047599 126198257 592192180 473639620 688893949 246628370 662091563 219758788 521976858 505091000 620780496 360860422 723817097 619530561 978069780 518502913 658319528 22030394 80982873 158553022 597309427 704517146 973141515 360118242 667350780 541423894 935731113 223108442 675907204 507679771 914721508 122425214 550142375 584090239 603081667 217664242 627756033 18824602 464449389 302324456 923087980 200403647 528876620 760677764 891489346 542909674 747919510 656404283 955534968 921257248 948025711 715567625 859301797 15643686 881327678 155289049 922205691 311791224 800540776 636952657 839933903 89205362 963729170 442957876 553134353 230128917 912356441 745675680 950616613 430282032 562916693 312924896 726410594 574861473 946902745 187751467 284092722 154515498 295812849 606787665 920542760 994726677 996770623 324438700 890080298 825172808 848661466 282114471 348678215 548143467 746608207 958395294 965806489 78330007 618774646 338226890 861656483 262769202 775643149 983316168 991985005 460633739 541192643 75094482 700010096 326581569 670901948 141811048 385373729 724889060 893040801 344103855 837667588 378826968 608609139 477307995 562685531 518228917 911180594 972514728 975425608 383291327 962417461 106352620 200051057 98938271 426759491 528343688 854173205 656585526 886078014 429202097 843149609 167038219 368644274 81830766 561614220 933661515 947792149 505787936 582096134 409072741 916162165 903462454 959479936 329024425 987900214 99248805 666164947 319999319 691182217 279632034 920008132 198968429 345516362 134849522 734616072 133250364 555440864 534375725 817537018 349265166 949855571 237191581 698474113 116267927 189842171 982353735 998195771 610495885 755881686 725247065 759226857 52073652 152491452 743593290 759784194 304022655 689311706 258372128 762976278 474551625 733580032 334634122 810344199 276338223 794586587 689698802 961311092 370650883 401381088 212728786 275058186 97970754 961401093 672149189 801782472 753837998 770072425 801164077 901791039 611220593 891442057 805241672 973233411 595193171 924078726 832338557 837763860 545507640 987061681 333787819 688407434 187509711 736245315 137989688 496523744 242703102 274053274 697611319 735930010 384621347 801530145 369890657 382041341 949909324 996271550 130780195 559027707 635446716 843875611 726766827 928328169 882878991 939991143 681685564 929866903 348395536 946880628 339498847 919440334 506166199 858389563 832274380 936481694 732453130 871561359 720617434 991826113 557941584 848552406 411948978 480461902 695329647 973088784 16030078 433490530 816418164 999527382 573462094 689742498 300826227 672844061 131870365 319856803 238116854 361893184 485078622 992532172 55232178 212001535 845818353 912696925 423479096 949589648 33457618 312313819 992292658 997773813 664859135 684868065 836790239 877187475 738294886 768815630 727874188 916524115 89919344 525380936 892300796 961358880 728749311 934375869 584868604 745856804 405589173 996751862 859080642 906332296 406580464 547322551 158094708 444816672 596531175 778069704 81603775 384389695 959967238 983958208 612615502 999538275 502689085 887228810 344269896 770509435 93060409 885060446 808827730 858422163 371119394 904564329 27069501 680829851 973464733 989059581 321797154 607669866 40791454 688391982 344496836 492947681 751074240 760716485 392801952 661509461 943929950 967838271 711610954 989641521 725034220 831697107 844863152 976486085 315357045 818906858 10325943 783569843 272629711 468885172 247165187 848593781 483520381 928825080 979703299 988070896 48522791 213176266 150102521 163555093 309400598 352365729 390686645 947882528 684160200 800680840 251804344 955132563 289535748 910840982 676383372 791887511 341871392 656467891 671323493 993822313 734661968 892833245 960504804 987932773 681723673 965316188 192868417 823209323 170370481 872515341 95930592 827415028 933645164 951948566 492905117 686784444 732965834 891399099 849549467 949758319 65808434 274845370 909633613 969230498 679293889 816571464 867910304 886440339 867180221 995000310 686973415 946808450 748748692 774959436 814471807 947334515 385249514 850559216 195143359 688680068 590108987 613306572 995589056 996337822 795307630 902464627 709403555 959247066 933615948 942669247 530497431 650130531 144398841 495893603 868799926 876567145 746404837 988159075 394608313 603329972 790747386 961895279 240137461 905588250 920915573 992575839 670835412 793053234 906498929 977989663 193934498 740273383 91647302 651493931 519346479 866703894 921475805 967766015 357703543 922426803 967431930 967872763 457079350 941138586 322216640 508186543 771044188 862372817 426188547 699467053 225721676 652396760 914858659 915250085 36211689 234871877 57385916 682087958 773166203 901418482 639681486 952816848 952097543 957508661 158896723 745987576 989232358 996921646 319655305 492876494 639741528 782310472 314456455 614704439 327776400 390836582 840953035 916262194 83739229 203486068 683583632 711156069 755497690 949980058 334642758 973322194 512505061 535333512 151643536 552108520 386234076 513361996 523776341 543025499 673578474 682226731 121390271 317548601 647226337 747719140 32002613 497765225 348958134 763776979 989875966 999236992 495230528 675422211 582213361 944648485 360585999 755933212 271317070 513334048 513736544 618822493 904703364 941342020 134683746 760625789 397991812 586317273 106776826 922698183 122516086 632381070 266214687 775893068 296606247 742515680 285819918 842885034 731287551 882506661 856191418 918742360 193208636 701723975 665184969 889080651 511043581 622414414 265507051 516949381 636329473 684720649 540834932 711205750 634601747 638933640 406646754 797334666 317487697 986319601 845911442 956212723 597113981 630248046 970265095 973246704 200935107 592816944 841783353 851706034 199493917 309232815 86387521 793694346 905979110 998597844 951721795 985998001 513261541 678252018 358752269 626880583 374252775 509710730 956551938 969236986 272986014 644981217 908698831 950395264 834546951 987134644 359819151 974836708 16146041 226843340 18774946 791183824 718496406 762998172 106906727 677971732 755925128 940242383 347780054 651997215 912879455 995508544 197822645 286889538 504085070 521600243 827930960 835060187 796234631 881899789 44158090 797529046 143379526 973631042 512959199 973263293 337668458 541044986 705304848 988947522 960409690 983412991 355787802 443964839 896627857 928938952 195800810 761171348 677359123 789136344 329583843 690974318 501930322 905551313 33468919 420757723 820949166 941324129 640634383 822562976 907143278 980296347 405410033 517681028 583905878 993080856 683800518 709215587 853902182 891660765 745384901 979414105 571854673 656808434 22819149 931058248 459889409 799886713 799254210 971170846 196475811 249054949 22114018 220146877 264958124 716226332 722452436 953679859 194240178 814308830 886474490 974051487 194605548 967360573 959565490 996686257 947616815 976858755 188476718 885320527 571295964 826758079 225599854 427907296 844871940 938429303 408386936 605378926 982654930 999673609 511274629 746253455 392220742 523431928 769014922 846010050 317855464 750197210 821349560 987854886 691120898 917500529 258280449 791004877 396357740 846091989 757084427 893014288 395823186 864452506 757366171 983071808 644890518 846115791 303340067 767461886 624731714 667993011 265164929 986700698 311510083 467528114 313986898 431938945 484991210 727528107 540129549 787237916 131900211 844451766 926738343 933423800 522036848 759305987 942037952 982138125 836937487 847148116 384943856 808082621 153955056 567935986 669386435 818195973 892794598 934631335 533950851 995712832 379904950 994790315 453529676 863426356 863389511 921919591 939586935 997599099 204413434 867631219 228153987 983995076 960328736 969628406 629599281 743433917 322194497 350555975 3649109 372364241 79764850 452408899 513292860 741825069 232338679 610776152 826346434 955287230 169561549 417462229 171730921 668951926 299028464 357759313 212623029 584786128 892137026 955135430 484708302 503873812 600725056 791360753 821599746 971591207 836434578 981930337 728804450 953480485 403039179 460307949 26223235 78884637 154613706 640493810 839348608 925301367 682404973 862337420 691864707 913386969 686599768 884535214 254617543 332671076 457003024 800253978 14570323 649229982 925178234 963572549 753642203 756936521 436153845 727208683 951395954 981638182 92674715 569849635 974839757 982161552 408405324 605282958 828878861 847033767 946587568 968266589 813881124 826687353 569732668 825981873 543344604 863534927 725214989 805764600 957858075 987249401 353417139 503623207 469135215 792563527 562537842 757076002 281420655 481219695 379802449 675163588 461252906 726852522 516261213 971938337 341271255 354826050 586448003 971471051 32888755 528014528 527479901 886010582 811676726 961192474 140341223 385950663 520172781 544575358 256050341 260117982 468570890 842663606 37409568 405981343 278902162 590825315 137154941 533152882 336358061 860780888 183777584 392463935 701657275 742245514 207829173 630008054 244701334 935672192 349463055 953187269 219654481 335520064 524704636 536930958 909254567 941473893 429034012 708258916 503173798 853081218 513113396 822544878 630276420 969337950 991848114 996716360 868751052 885575444 878906898 937270617 619609825 663138973 395205984 444771633 914472182 972030200 199685193 953851064 38537846 213044545 356913831 708786631 454942489 890086972 794464576 887052810 316870747 934401827 655059187 727198687 471427895 626752861 802742740 942105294 767421155 841754211 26236144 613302608 225703121 997718412 892069623 909856082 614237089 779392092 834803487 965197722 57132055 639608089 39339608 813961313 199659017 532928183 897639710 911900368 371802983 474962898 483669900 534175731 395465787 817670103 876281821 905682461 985977707 997706333 524397207 722828483 302834650 513184829 939866813 969322889 880843973 906422827 43608467 86544598 869215343 936617132 472718588 571725586 571555794 753002462 685718794 832091957 857788989 997530719 638026033 954915715 415460806 580738681 993352762 998890190 452082831 699184840 815821565 876195575 53163789 564795505 436485634 605494940 139762559 719607187 764187556 858534311 359112283 918074336 831708887 931262344 921744964 960878802 902000471 931061258 545678442 988895842 72467510 969201360 581985282 619356756 34632357 849704924 143762732 910130550 11281679 87064212 130931306 288876441 220050148 539983720 33660943 875621470 294398031 900241693 852955446 853914610 444763435 473714771 188317115 478737194 15551413 600641539 921225882 927106603 809671802 948906070 172664595 989691632 404802177 516517244 200597204 871030384 389530578 824167388 845001933 915265160 793368140 895930881 360824620 405969626 440275677 989524589 487416160 928079217 676808336 683889529 708575041 930370977 99268173 739041895 230452721 484828982 180987591 663194625 57463175 500911670 819547941 842193372 566623098 612844967 546235797 604755812 220311169 948000610 886522877 921505578 190939929 661323315 968269028 979916711 143610367 210638799 684102497 966596199 177367524 621981807 551322660 939709151 221622529 857541582 167392349 413908914 111204935 730760161 488037631 671339126 843850265 893153223 356885956 863496198 292215405 842751331 901922000 911582756 557764195 630607322 123888748 449814199 800621664 837835053 785979531 896971696 357713361 840849089 702205050 779254868 510190209 871363724 335700002 891437212 408227080 431263151 306259023 404721486 511865175 704577125 747045796 764652282 425982935 568357666 358049397 593899659 957143419 966649311 595701656 655848386 841036194 879287809 311928110 999982086 917807966 939636701 336138009 596549246 647344270 795152660 510936341 783945631 129361261 583145771 647591458 783290531 122533043 273249511 316547975 320439985 385071652 530987368 566193147 975518490 603310238 849320824 281489085 687206233 489933619 976224097 776716671 822667046 117726344 959614700 15342210 391922316 971099594 977485397 379689163 724016867 650340111 825152464 828462031 993439454 20615376 877896859 20244153 591294590 519386193 690696802 921425730 958781032 311478956 402920881 356782841 414512215 819931607 861982200 763451904 953531147 270894140 587236783 123690952 475753495 834527149 918385701 594412293 889985962 203093755 928165588 599829877 606222690 478380287 773858935 73941680 149343706 950014122 973014965 26843804 172063934 154221259 296438190 704867096 962483184 158008278 177621114 115839926 430630552 555123176 616599956 624515087 776105532 58631994 600370528 370578803 384538172 581495951 816979084 593250895 667851494 554107797 677669320 507373861 589897954 746666213 770556381 623902804 681001738 53336099 342459341 398681805 795552586 127204379 784792888 776133805 889142788 467214588 996431986 738741123 822268915 109688578 874015954 455001862 465093607 985649070 996298829 920501767 964763978 521831743 691060490 80584293 839892028 682485893 813576581 717286255 825485985 392124865 767613506 778627112 802245539 410557029 783213857 61158211 98695973 583075851 655040106 472137254 744582550 490016230 511161737 89028174 96018146 636097697 730327657 390023872 853749227 821042554 959865889 386980791 843473353 818868161 985612514 103483206 450978949 412525486 782703569 825395919 897892571 61803455 180669671 129391711 767406770 706585811 766581218 171403919 960994658 428847018 593105107 971500725 972922911 530936401 553800194 144431619 235294318 106105746 811386198 218749197 397733982 190776983 804413094 193793979 718736158 766258110 973056141 801143100 908089021 558835697 778863416 752499166 769797382 594373186 952781137 52150315 731290545 919286702 946896327 868463593 990788660 902356186 990976223 742412826 804259731 505283627 939475323 889819336 999295959 808028850 951503254 709064864 922998273 845663518 862622750 213803555 274194303 513741482 567109513 445580139 616786616 311882132 986566678 725972128 730918436 940025401 978028992 22943555 231418422 105583946 591942182 902998163 955819752 723973966 877263632 237624557 258834503 560065289 993132902 222826478 404972685 299282797 715079414 29194848 983818895 598136740 820076172 632561828 861113352 892124816 956479938 875917726 901457055 655110313 817868673 648195801 864387095 430030517 467537295 451813813 904827812 539913389 807336380 682734159 768681445 157499898 443369987 637462975 692593802 42264605 391648589 95800685 343381983 504018387 893830635 406815125 551452096 77620291 438554491 889156128 983946096 711737366 780031712 248657174 325025662 860427707 872557164 777835364 840149487 853055478 952788884 961182891 984645013 106412231 155869627 361672533 444568973 229777670 534359899 805769339 933222044 33554942 49531366 181213082 238563412 63462703 236866427 922172793 993813853 810628290 864793299 153792003 749486904 846223412 877296484 635906269 895046538 367617369 827693571 534851766 810276795 280876296 601069215 291548142 812429259 232995646 938066472 73756819 347653436 431800743 855857622 144959360 699984307 574228260 713331094 295354512 339984688 857607744 924019536 150221943 431274700 460988540 971382289 39752181 948181236 10946091 303855281 533493467 941149447 28965134 814304080 560469380 690480000 600247072 737135863 599237552 836959985 173051101 370090540 632896326 957176137 729902875 747725461 928990464 980070901 94902677 555955195 900695676 992038646 582180748 732635549 833502539 937145316 178846151 610816939 327778802 789768806 242735365 765788837 848317747 898135188 816489248 993890116 95388317 452547939 931996902 953266201 22539896 214630711 788460463 831842503 640832079 948975793 775250442 975005774 938251368 941830589 637151345 833548469 926682891 956136875 411348768 675765947 88102720 240745539 396228769 750670525 514905108 674400120 557868352 605410106 257923653 584569960 579035574 618574441 112083680 668783692 725747361 995091174 490114576 559258896 733230929 778620981 359173367 981860458 472623611 497179818 8857692 697954696 91955215 812706340 325383790 484159103 127836359 127900940 306153572 876512063 114046552 947974863 939017406 975155228 34056784 713502260 898653485 911421712 180641709 887203993 387159176 666469107 666313164 714523813 608904304 796025036 494357880 579713024 493421477 985151434 485441321 894191039 855233161 976321461 87369968 984036285 653881599 796980253 558126627 802596817 825384100 912925940 811993688 992478996 291274500 818289755 2904600 765679937 589108639 871667764 341514680 643603166 222779333 618506204 799574498 882783583 981161075 983485967 900889296 992193293 539628904 983811378 702755592 829320228 515910739 709470124 429099515 652533262 844565123 886443230 62812255 748686269 947666289 963029191 332824954 938644541 975393028 979325888 59982718 568115788 197550180 287207490 504955190 523498068 864789245 964500326 188459139 596468513 23063945 301951172 773114754 809843822 84954071 692573402 750299576 909841058 407968971 714663598 934722301 976981847 977607122 989405167 702679210 849691386 483796889 655202683 987577041 989165703 35380770 620409746 987890045 998004790 31414937 240665109 678418286 853069295 560951142 810145238 724872422 812633810 350837283 391060239 61478094 524296495 680240572 714664065 386569651 611054951 140306025 554300821 493531566 661847910 472447964 686195989 469456020 891531013 159651309 766044692 273171930 611400589 496929506 818846752 142038314 347625474 28419846 555966173 58932921 514032497 999649678 999680911 480448667 678056106 196349346 796188850 923378233 999277679 932672138 993633936 170999034 334730812 560746047 805347420 388489102 805156570 205342791 813082248 48783533 800281717 19709606 985310069 189398996 739418313 318889258 978438704 359898497 830947694 356236394 751494719 448499516 866312873 908628650 997030564 294486700 846929512 852702702 977929706 795029365 847144086 988177524 998336743 229996319 768070313 379628270 813144105 730137471 838749920 342114657 602684123 630621934 936481847 491153914 672785705 44416474 472682409 144697259 881490720 668977400 750085301 302917231 832885839 960062808 978421020 868153327 934761001 236548160 831695773 956628413 987447167 562319541 712334249 26346474 612325554 680971192 906909308 782410874 839036610 728720409 884063905 587053492 975484296 263682739 899709121 406042182 695664773 520920542 657319656 840607548 863099027 395213587 674891118 331612946 820740311 926846956 936295104 348312235 979443398 293488785 313839533 4336877 807914613 644533845 690043379 414511695 445632832 785678088 879290830 456462496 740019850 405259216 908418839 52700660 702383773 325892386 733742796 501875316 940925559 961625289 994477511 606651225 819248369 488463551 891271596 905510317 923687871 329774980 960962821 395569392 477701019 350584863 825264096 211291339 880844129 687932504 754281299 881718430 936151269 532320645 951817799 77721408 365057002 312347379 792353119 37203087 490734279 615494255 668336853 250022521 486774876 819257895 899728117 163998660 728968352 197039741 729695088 565432478 686460426 54619457 631695308 207110504 241827243 283793037 614365120 259831946 823136393 1604899 401576344 660622478 746681121 953489970 966361349 828360353 993306824 719323782 780334755 312721271 396698532 686934449 912176181 214967316 735734509 981037339 999132676 962616015 991825280 912241318 915555419 141190472 209644288 445465026 563636878 67430271 613595771 154749293 796393053 729621582 857795872 799476874 833064788 10608209 895501555 173989710 777648407 504435179 540368231 541156675 610766194 456029748 932617393 501658900 919850631 568434204 696725961 776004899 945203610 204067394 553805181 238130521 940567627 621413258 884195150 83069073 902309817 6952249 434503854 894990656 949104529 490579998 693915614 668063783 865944124 710816653 956560774 632304041 704251526 115820922 526616385 470170832 563837031 642653506 898559349 173894447 579096232 958373871 987690409 494532840 802987881 499039968 514597108 987291621 998208338 574374031 850729263 828281614 907975618 229348866 655246513 319418869 524100305 218759818 995785854 743983497 890275806 36977237 92786175 917223977 966906665 209786100 590918656 640296274 758505767 248357124 703265158 97053211 742654412 895550843 905671727 21419504 660876304 711035970 863129416 788864148 829802161 604388461 809783700 903663063 992207108 220702730 559736873 163309307 988593023 746728134 929704388 180179910 547349552 699436460 993248838 359794122 579824216 599728010 912814995 854715488 965437355 802785836 830860187 927512429 944625370 902472712 950170524 626551288 923535162 295318609 510670998 446791543 720189096 49648479 373070393 866788858 944377289 210002841 321800047 25186117 954462311 352711394 460163785 27873628 185149605 690107277 859911940 729777210 871553482 175497938 622372822 622202335 897430498 740910876 904800541 88810704 909812619 537031790 911041245 336553130 388172136 832266722 981786197 466749 925385578 138832211 870739934 384637192 546235605 316168601 857763732 106929407 650201068 675148048 982148205 168455688 389603146 3879694 813216351 607559038 711344903 654778885 749539775 166082784 600666366 770020320 930551237 719144895 767090112 621728918 701388057 551605635 963619310 622072326 766603787 963626226 980165279 980623649 988392951 309439936 979879039 56595660 110956534 327158767 504003205 487779874 750215037 644305556 675032664 675736762 850168491 931944912 933497743 87891240 257763163 579686257 927691057 231149968 893862535 899811185 914671547 127522532 721676826 218367400 238323156 593843534 604920087 118062948 949836610 224751232 817550015 799813292 994630274 477492678 773152818 275905359 901089336 727241401 895280899 564484918 976536101 394947988 679544450 499534899 970730147 514710093 725945479 975574857 993617787 204390861 359315248 143018491 693104464 750415933 989162529 517462548 923494767 310720687 361975789 616995035 998854098 192703062 536293862 642176052 732009033 231528941 293369244 529250221 710400394 557805984 621844738 303754093 776370706 820352491 825402704 606330910 850824200 310848371 817642503 77674349 945446940 88846958 963376865 667230393 762334167 444104549 601371884 255653674 430315133 618705413 780407244 226281561 353969284 412227717 807223400 11540805 337084637 534605937 669308896 183273840 565738176 265674047 430259269 291331105 311636160 957020080 970315171 551697762 767741868 874855975 966551039 304462510 977574420 74499078 377862686 822568862 902352023 311699295 489751912 631409910 779475151 861498050 902793718 30161705 974391856 803323921 990484287 562046902 842937549 381971178 548208491 932643822 959743900 145213939 701321997 151222200 776214023 165826819 252839038 306528827 845861635 175623419 291054611 747743064 857198827 890037128 990579887 40877694 829466226 531022088 633425091 556096843 609463780 918762571 937415430 504874123 950934569 244571813 252103646 801371711 886049230 889956350 913428194 224346878 447214866 619837702 786512769 689258537 988621526 529680329 851935544 653946479 744936029 319870 559675801 228358846 361959004 776991650 819594006 602164772 945810807 684867247 971129238 549929831 951420156 759166571 811323172 618611957 754272678 428554429 991259310 551963349 964139479 870323875 893621419 526331923 726838239 909264251 949484599 92758790 994509728 185771409 441153949 97745158 174286487 924285676 968589755 336497150 627866085 247099989 394860514 960181752 989432496 649941995 719956919 987517354 989560779 397456114 927269830 810157344 832966476 861303793 970344613 676898532 750588416 308894938 935405718 527140390 540979053 639447345 821781576 816915762 917195187 856834823 898210394 425976539 739430972 148453074 817566898 645382684 854217864 810211587 929748492 125993727 876480588 941726597 982474951 145459424 857578196 832203597 880377825 173303245 846666471 225228596 237638663 82090881 614893397 662771671 782669566 858502055 866897350 43833252 984133233 303691840 525765993 962472496 975487801 429331817 831375169 306184351 782457263 478288773 933372788 352508965 613273652 639871734 778990483 998972781 999569516 202595763 652664342 430922278 485323404 255923534 847156080 149358502 289192005 275188305 306169563 515942054 636701867 175138294 426538502 67630627 185924012 322618780 603116718 91774512 305279602 541896881 863166177 598010845 787628946 606199005 880460597 752243602 987294946 353035621 805329824 558144079 619700857 352442353 896406686 158288361 260684728 138613673 148530163 934245931 968043808 102048453 754682040 755126671 960924090 702761198 874232724 25931452 890028819 87579638 451289358 53039756 785166632 226913214 736931475 547642603 746137710 837931337 920332353 416613304 886854615 693843545 981058367 251177575 803402910 64523420 712352361 104832511 453707479 900987844 955176919 87951095 235379070 198961243 625029136 330442525 335371701 822386975 978935773 51054304 69201435 412084773 514089488 661105902 710322231 233372178 885278435 173737437 489373744 237281968 689612522 324765572 632143151 273379028 310691885 100730452 911536555 217155841 225039570 805121092 919234018 580704842 829706858 715459969 974701179 577837351 958349501 56824222 568525725 383415814 800291731 254716265 294484872 587747806 905427965 520177741 586769232 264026299 848175587 114282640 370203477 530584480 664299704 191492761 905537204 985637398 991648693 283129884 647019407 855817810 889313001 780712528 911016044 692987772 963971182 917124481 918614147 678342860 916877077 782487826 820830594 235139387 336480676 261806342 402150901 115477452 180181290 952840465 999147853 221781422 474485515 705916013 729998339 723197984 976693822 773155973 813410052 621529295 753057450 90287134 865780405 597782125 682245271 31727726 574047231 289213132 814672368 963763914 983445613 389919535 753738528 278644094 639622572 328134638 895053307 849351766 854544247 160237029 912772447 496708631 613681503 781384262 939565042 78082444 276134740 879368850 935270835 472126351 610210215 996586358 997111308 659327057 719591353 944060611 994264843 838819462 953834042 50575089 255031919 252145269 639037955 482661310 850838148 926656538 967187506 921576757 941515447 861594718 867002970 857225399 920402786 344282196 864102186 976446852 979128103 263312252 521889585 334084871 521575446 593657412 703681688 465749923 960287215 583122308 877144222 360829473 557859958 634617856 669821775 512257989 609901732 115465753 737628024 202746387 905443401 461675639 482744850 394491816 724251092 340529427 347668850 924787783 955648352 426686649 435665353 801574348 916664197 782927293 887715961 986471387 988347458 975873664 998729707 439549117 577148745 513705130 755234287 341503749 732888921 618479901 627371781 506880502 801498281 946320510 962631651 456224115 598397809 731796068 752155595 211483317 829173825 739757944 818909516 758747654 929691584 461976655 944091158 60105522 272988264 728380844 868428774 795024203 824062439 500084052 935967972 551013870 849708045 288912033 330120056 679006912 760856046 299771898 386513122 831255054 899608057 729254020 983696626 190224861 579098681 778140049 866850258 528071670 727225907 369233432 375685707 73456649 879525251 732355468 917340570 741011848 884426901 468829819 606490477 391544780 430010133 141764462 343606643 501310319 561612547 923563712 924915203 873887558 899930232 765822672 800716278 524107862 640066230 688147181 705780365 535508250 766488809 655120945 899271778 976356611 999599609 528425550 705261250 967571479 990176968 252012257 921859163 708719883 859926712 178314662 952370246 50332262 120809888 548621963 886567008 612154805 748051020 821064730 837653144 334106639 955808071 743808226 839296071 559493802 995294540 439899491 649414412 845919143 845965062 750629473 904681333 642304209 695796798 195914278 226790255 955259542 997266994 922820187 924482249 814463774 850802366 961850031 971500110 419310118 468793506 441668125 778738489 238238175 658794771 400298939 938313204 116939114 776911960 798066722 806462553 699331970 784091026 941848713 949407070 794651863 986525664 298770560 733783159 120114868 120160863 668558970 792318548 400367088 780742377 316840526 328636977 787003212 905169002 683244193 740283812 77455626 713502851 536009071 767510047 879433131 965915467 948886769 999562828 685698626 946107093 683070343 787067681 579014801 740485216 994376367 999671126 507398793 873545819 801482817 891690671 672781239 935535440 208903055 898364850 382739038 982127794 480358478 860146736 820885437 942330373 126046895 752579286 651415708 775603595 316056539 561311245 47009379 900466277 300252726 463559257 67859517 121257462 955714627 980706286 858886910 954071141 425138852 898833049 929418500 965981848 983934432 995343295 830033705 831756083 453847102 598883013 752648722 869605024 797022073 925438112 82318493 409941027 560575881 855970728 158575745 555454184 844975012 851316983 129587530 884967081 841609147 939390257 453370077 894764852 610850019 941170413 865415834 951544112 783486829 906719479 840439995 951119399 194775056 591458219 712510152 817817837 417041117 934823120 737526735 868256358 69304370 152259780 444363018 654418639 913616347 997637245 946885401 998170501 521189187 832174081 211215129 839053135 953237380 960267049 377580750 637232761 874194723 994236095 232658407 785418816 934489996 983698033 636387780 800243806 462328511 500166540 500666199 513560879 9812870 716225903 851125867 937102414 698839444 746095096 598325926 886649503 411837282 929990246 131112012 582588420 443823056 772939247 401629978 849102742 853054827 932906521 207583266 315225881 356753494 594970489 673986391 778958249 252657799 539075360 484269991 953908857 627769329 828470478 61889761 771064264 733159385 747606002 772162256 850642466 934762555 970682266 283081153 818196804 784071445 981116782 22251106 267960477 645652690 668334122 925684648 972412407 320577441 484419999 407280720 932643719 129798990 415825450 281724294 708940195 909010797 909974939 576739987 803199715 791099227 819798301 975860579 982537043 815468131 966624252 593186559 873276944 602245247 984195163 544210440 720350185 796837415 967309736 343853826 832798703 802349078 881611281 515533072 747817917 182955901 814481688 452160452 646856075 712413094 943841432 202957496 685352202 998311670 998540184 700019389 919861032 716066642 954612796 994164663 996900063 533339412 783183910 698781163 817739103 554714567 728532134 798806460 837383636 43382236 561511171 325495973 805539758 204103568 658829492 793441805 835796312 578056737 660840656 413618207 718209884 774635935 944161883 328995839 461536481 760213482 932395736 884249355 915245362 506641360 762058848 41099332 669604395 662837574 871462759 771042574 879471159 153838343 538575025 83678179 275150756 883103549 941903198 298945755 818358735 459597392 809177141 919540479 937156665 687448969 714492381 234001840 935188298 358753992 433700153 14745402 778634113 156156991 932641388 416711746 480499865 491458598 684498422 823142700 979008468 620341961 633946800 270529528 547250477 63848724 724989496 165615543 854219480 281823051 942567321 65615671 838744933 767244947 885653111 790596106 829759387 949948473 976830710 826774921 876225873 531449393 694961788 222720710 641612129 981328781 981557438 769040465 902618277 83498890 294926528 354626457 712376727 461771022 796927996 468863465 724323374 902036502 994839128 114368716 501645713 614281005 964463535 49746730 953946572 609050038 727220830 690053995 918294256 254684681 432299813 366268742 711995457 141351689 179388234 21601024 568008897 232379362 640490712 663141001 894710253 524536647 627628291 296169210 981209134 995232576 997080237 370066675 881642433 459803174 769982467 366704345 949225345 811188149 974369542 506008886 688715453 268322364 602522612 365052198 722875285 546358716 737959819 396761329 984331798 197843708 927531236 962560672 967352497 729551714 948730020 265161916 841284631 17916420 891054011 268534346 564492640 745032404 887915103 405210448 612179472 650388087 734855401 510792169 703581195 964611422 996846718 748134120 786939786 985833010 999664120 46077422 695628620 431338936 783705061 188721760 720073588 479137233 499319859 640092685 818967347 758894672 766779768 667597939 750017177 247571700 365187773 998962454 999895288 462070389 571483961 754215938 756806279 301803847 486448428 278944161 425723034 743662772 965802690 224706063 813704299 904266860 953243008 754414616 853893512 743845427 784877897 154327199 795107599 793124433 947742595 910276688 961960293 811153959 958732149 63062779 549222654 833109177 859175389 260468164 459774669 251122238 715726651 779950180 795837921 322141004 464504426 259024195 354767600 385303934 476616540 592391887 867351470 84982885 754577155 47179002 290238628 777769257 779768321 898712209 934070399 244428457 836208614 599483142 711625371 879073160 952578275 689769964 888602867 477516736 923967296 33493091 87540710 121190528 372961339 456666678 574003777 592371373 623705888 109452029 356892891 466190901 969013925 947775042 963848198 645276571 797034125 791584914 921281259 708290208 951584307 868551326 910710109 785621230 967883881 610162334 801434517 136116169 634656885 907896918 977243930 803324031 856938585 404426015 456846367 877293370 977601081 291377037 377713857 323271361 510835311 92164705 744878632 775051884 906454388 890652897 954617433 521421620 952340074 465764621 526787111 592479412 629726925 645579778 893220662 397190228 941781865 506411531 800207836 997009661 997277206 105530409 430676035 689263270 883335587 212869833 384037869 815864423 971590379 403695079 812173215 786117318 827258170 84659518 531893199 339364724 891456567 662323270 829286985 130293848 876079176 247758529 461069398 35623135 642520159 275475824 764119827 167930065 417381874 816312494 906437570 464091366 973338536 720299806 980321580 868766777 924965406 541573465 965220864 691872616 803226680 322978237 679447899 313240377 827442186 785413115 943005399 131283615 183060872 920948538 951461712 262264943 702200345 3921401 421710635 538567854 764993915 911788149 911873487 781225325 926111533 500684052 546093846 186994323 458062600 325561283 963733596 696537659 801964632 686194340 701568880 175672948 681278840 772522543 826028466 270453616 442925145 922353944 940037217 450013273 935374465 974960268 985855843 382639230 401505970 104286303 649812311 423419668 615864808 153338722 642851042 252052455 691410259 192525826 770455059 701179764 838372018 997815873 999136078 256984077 352464454 949288936 954454148 3479567 422053473 237541366 950734827 366986029 724981156 845957429 998042866 669171066 948997332 873628013 986019921 672053569 853248647 693754755 838911181 581482105 605551753 785825429 829088220 534606307 929429532 126386125 544728498 323796588 396757041 681485885 803073784 780989495 900127340 524126955 970042771 431151926 864462643 727515145 945885969 902681630 946744930 816712300 964350083 616684564 770732506 533344206 752709303 852912481 921451060 842936933 891884891 205294322 475112235 582065054 884072182 70007828 306294963 800958062 888849372 652221301 699605694 410725753 997726829 647194354 937876917 790775662 925636680 579330201 818622633 838884971 862354073 375909011 946039036 672148258 837084466 657806568 769210562 618233984 629359995 71950584 514336202 607083996 623664124 784320455 831269350 43093969 182474985 82307831 981986498 27650268 302985540 277171325 584000785 582434491 783614739 331952832 469463082 597182214 959383368 337478094 849227701 884428522 968584577 233886367 690769984 231935063 792708221 20474735 527553593 272939092 408712585 466691670 655215795 731704467 988907448 474870263 937548806 643699579 860421964 740963149 943322515 367331601 574909179 190621980 802326166 173039146 685215041 905031089 911094069 817684099 845980614 673894779 948011639 42968791 658258891 886710406 999081911 945858862 972379108 96874839 804131820 173037983 278252985 220132726 515892084 245946018 682747623 355578445 870833392 941646313 942274601 746077669 851978853 558127633 649978861 498000591 836640707 566468788 680739342 78659947 716131880 528238015 927624109 787718381 801751983 69981132 230690535 933127962 991928989 441494790 517455306 859590614 968588948 329004175 624554512 10453093 30803852 782055705 848850587 649328156 795957219 702933088 916030268 213260191 450561304 674382063 790786509 738812814 749116935 310231931 654988175 733345523 992774033 667073203 733559959 785482241 793650697 809019232 858397413 568982822 953085914 703173606 717427576 411954766 579310773 887026151 944439655 194237145 386815900 601911297 797571477 838871900 888549615 768403660 782415362 646808749 788964685 456101148 783444383 920605070 947402013 959952481 991141242 701286259 965012149 3511367 623073763 173954406 545653307 935761482 940573262 135842967 337699874 199738262 805075292 671877860 818227716 880307580 953585512 56018969 250642203 948101287 961575712 668555665 865581717 128510295 512675086 707794849 807070303 722984536 926057651 197796535 559492272 619632929 654785086 518194792 839837800 515019140 961124931 43262443 349444560 805131459 878028942 488350654 623056591 70031758 588196505 25460481 93910377 354424972 964531679 309712754 836204641 930497345 932211471 382034258 684109469 350351443 460508143 883274730 887066114 998268677 998514323 816134722 890879980 481292248 868314678 242476184 855132486 227990575 697577111 576408873 715065654 375786846 857519747 618173021 625494865 86080286 284479176 595774516 871893113 979445495 981595146 971212358 978423743 160663622 812660613 602551368 976700989 514906363 617383635 752727105 884849177 650108942 863687611 137722348 140744436 337449879 776236188 675915001 863841791 901158472 983914868 262610100 594024145 252290009 512995904 649543644 849117346 98377536 311784581 922290502 983833970 528288347 836708130 767109509 954272088 504528440 557022152 926193427 980548313 89605754 924805278 400630667 539413553 256679900 579614227 932835573 952342441 379956285 699551989 559107218 868510667 38509658 156374543 92136045 343829789 981369020 996001868 134961894 157802251 600928367 769756917 279437449 558064000 84053777 575929922 585663509 718009632 532550741 562575052 866358911 898995777 780746431 871678518 613353703 683604439 39605915 751505412 368333752 525666292 514862330 615397684 725270241 901317064 441436132 721291665 285060537 334273552 213534193 598644127 738783277 888468875 173888561 267313587 116256470 973685402 612585618 795209172 228637561 464737248 817893508 839213885 901485382 955210438 4496869 240540102 282102901 339307003 634374016 670889032 742452136 771865694 685393349 932570226 69099360 160378307 264765491 523269503 231174604 949573332 754312455 943865792 592511806 880123997 87447160 150667908 103501143 345698901 79385192 300264080 592127073 689299571 763488311 863293352 474501570 725491811 153062684 604353255 34473507 240158467 796033041 972268340 101217368 770181596 405624621 713692215 992244288 996752825 289539862 543725983 195211220 398714484 437816083 621570218 242649720 283530430 154859938 997470856 356369858 673935245 734519445 811832605 525385001 979791898 529132371 850730659 890106855 939214286 158380150 415523694 574050512 672556625 633907262 979824602 442089759 860256704 753409299 895114381 817588627 917857827 11034468 804346779 995488556 995754972 613874538 843261981 567027059 769193444 388337470 961843759 113268361 260843519 14982661 236569071 954567465 979769634 489137238 890630813 423175192 888745683 294776949 999994060 493014091 721131038 265021178 376972387 680688811 815106347 481789211 923196343 744289175 980815523 18370897 931368021 796937722 923064556 839173727 987860741 7085875 41931826 287176882 794210030 82485350 358349869 490705880 705876514 623878328 743663061 203813323 534344961 419633118 618594188 768118362 962573736 519799248 934327714 586140724 875029728 31958816 94625224 316409195 504927491 560048338 779196459 587714379 827783368 691440159 957837660 718691094 844935460 483339732 913926898 830546838 997413543 151950381 769850608 651483771 944876151 89283411 561458488 470769269 879075202 604493800 807683632 25518921 433669246 312011317 422292522 371599128 899728837 731929832 774940193 992202170 994593277 78196026 539551304 573626813 785856569 331151672 765621088 903405357 987412265 265075471 370957034 492022168 864599952 974388131 980618648 374892179 494525653 667693673 913548020 99502515 454764842 752282276 846911982 356421820 546630660 232486548 469616662 446440682 738864241 954253129 969709064 567543148 776646415 262205054 370271772 477617414 841449753 676370029 984682413 376523264 410796971 439862524 609874357 867181794 883883397 548330226 755411062 616266167 932264672 132628023 662352157 93449540 645288439 313119476 589927649 421625650 584761138 306505328 872318986 762447014 925933929 465155708 972978689 773350331 920529037 99409028 630861945 778046220 812937715 642719183 895495518 682219612 782446446 121639522 211563836 236959781 785817722 361896422 607391075 942122186 984956815 152437725 765273154 808518269 971526062 639634839 780539499 779374019 859525831 320824326 624836759 179287323 792444457 575217060 983642918 11463040 438746005 395253696 800636918 786967392 962562274 618402907 826245512 2496316 603058745 960085900 973563289 511971303 608006704 785456618 832940097 636300644 639605311 440898040 541278773 728583856 769586397 68039683 802805205 996039982 996627852 685708623 784557665 743841824 808481920 522130555 573177934 356258700 569392967 600258593 788499720 671442624 921337889 154990985 699912487 106413977 843789514 982733493 995280534 4195743 86256225 711859796 808011585 501335431 655753750 103192687 966134638 391388407 840017822 980181263 985768851 604167089 633521403 17494007 728833135 825514906 968864752 68664383 614922547 68064465 745881717 794149163 955394141 601883858 809815229 69356109 124989149 572670924 590813633 176131495 496310322 409330159 703892313 30512110 73675311 39001612 777708370 161708990 650228353 533203183 603902552 589344159 699278454 527139636 578121087 253083687 288915029 69255584 946836718 504507131 813870121 502126805 746047676 174093231 782286585 630366048 968734732 717933340 746597683 627622100 913601018 677266537 909467574 503892354 864843148 739434546 841411142 691717545 845787877 612739277 713100642 607682015 776133201 748794720 869757894 496704969 531637587 351001047 554534595 646310978 677882766 189413677 674860727 533188703 969879151 262897983 810201983 661339414 833718174 599527661 704352078 410261868 543615284 695376042 760227725 134677745 657790028 885976429 905710254 930564114 979214092 640665178 855537750 458941421 689907761 706024114 853779609 643835877 946401674 944315939 997361244 726536303 869285645 993132426 998956002 879524951 896464580 816616413 858053563 275214916 435558088 289107679 667491322 925358714 977976470 764178121 803251339 236690039 897981526 819401812 913549171 150517548 599686976 229677339 283008944 165043012 393417937 452555254 662035177 900338047 967534266 53587153 889917918 791774126 883884347 342675791 458391606 702232811 755283027 461110446 730066190 501938378 621526978 904417879 958934111 731346875 769519045 582705264 753170691 616541182 760386477 75056563 772250569 243661434 908534987 212856000 410425243 834831185 860939979 275481225 671960533 331405392 769657051 389468276 969224199 969816434 987722666 263123831 660470189 653315046 923464346 183112501 566990476 223702916 405792166 392398811 889330416 869358527 974468807 651134814 745203086 96840153 638685060 795078106 892815596 174726232 176941488 500665757 539334797 642990070 985994997 554213585 973787715 454398624 591260155 312460769 517547369 649914754 735870400 116831687 342392359 691753863 890838091 625185887 818716525 692818445 928595443 373851410 580884815 890997216 972019309 171454268 681389459 664944787 898207052 184780141 609823228 528851590 581470815 724146496 939834767 990162295 993508295 146816333 206001386 30841830 59607866 132924018 642281955 959869142 997667325 464136049 712158567 709054126 819560987 76122809 750063602 102907961 719007139 779342653 821989611 914029849 971007195 88659223 599572408 310555814 350403958 69795853 208678896 676423977 798032370 377711582 974709470 766012254 841977755 376238009 619624350 495285509 959685573 775708699 837721257 107324776 423270766 827170989 860009101 249671596 994286597 712484382 746822134 863044646 890965710 396309588 787744715 332347509 713887822 515477965 882752675 732581073 847613850 845996438 849422710 952107446 967758127 41658341 198154270 352704855 382514852 584351929 639079172 722522716 905488325 716055451 772141322 221831081 777436261 364284156 764652768 251835019 641787557 874897313 885630218 984885421 999972773 81942065 257570182 365641275 969977525 632176397 962890580 162613673 795729960 387120422 807044343 530462583 810573977 498006557 940471378 96881840 864527535 321209129 997031567 719829011 750877305 975646269 984068735 689346545 967288568 381055313 551434619 351164429 615501063 332044318 856193864 563508388 590918040 39021683 951907295 957346632 977202256 88740658 129713891 447876830 592302796 437404596 610537403 105985043 449503543 963538812 981578694 237176790 937966388 654989739 836430970 302712119 409339233 368941457 746954962 352231581 405690409 625159446 847935153 664683378 951542261 973403555 979683574 668594829 776825144 575782339 592275043 831193914 977751395 182035452 530301689 669587011 915076015 61876159 938675426 186815941 457423580 806797068 895917572 468310722 933674287 644231197 652281350 632547801 639008003 96670028 365697792 518673234 716339537 888555045 929711104 411513721 850623008 351414211 362093028 61729669 574315669 821812894 896234736 505925099 747801630 183398938 280745343 393893356 644563642 436067197 710897818 52703900 992120975 477353657 756016287 687473672 968561373 964145633 978088052 705746754 735072733 104685209 116585600 723162129 725870379 331590602 398084723 17683204 531533931 354841115 637505748 200774547 207849229 685138068 726277992 249637155 261889781 862379521 938307189 353892143 907962272 928440949 976433296 798401427 864800177 195380075 593124070 257258283 612764553 244228855 870535782 404343127 522928070 141016154 534845355 683426820 843276544 376532537 996588191 45083052 146370310 781782464 815976924 3053301 73789419 312316850 600664205 991805030 998374160 619547105 714853142 878876088 919960660 732810544 965040488 17330997 690584293 514620146 680141997 129460636 596497272 221699388 364181156 965630496 986175974 146946098 464270448 162017864 235782470 421626636 695618047 967599542 971916907 367056721 964885620 570076625 811958232 753481067 877730989 839360152 855422000 342926487 805543963 6603039 913474213 262031710 495573423 122385023 733966998 565314889 860204136 819401872 929546861 805639712 865482454 900476031 942464492 445612213 645379281 808664987 818283830 670208459 733657542 859289976 982462868 668366517 726085003 418631054 458239332 806803681 904416248 860283273 980818813 116359624 590224219 503369685 728685795 590213797 757483017 738815805 874400310 712964173 836138700 560042223 601594258 941625425 979205158 599507146 770587590 622067770 765535608 726726793 868194342 228919356 971968331 411175707 657103497 343383368 349466684 350773455 401008401 631282170 748846369 884255142 960891300 836401672 892822045 500881293 894393802 909361198 952373870 207591658 888122494 819529277 970281456 286164209 965697241 685045337 743887213 756114915 807660236 786633106 881908534 871005326 961669676 278036364 691368123 895765485 950916280 177122630 524938912 351210991 764001551 376501554 563485630 477621090 758628215 118073795 478808554 789171439 850105937 811781023 850247420 967401262 978878252 273523803 285973603 23917995 417633903 675020693 848513556 719837243 966695834 231607866 676280680 256025003 817636885 13542302 356718679 374665572 390851064 922946523 969830708 219382186 436191578 223952121 959467827 280376471 360627238 750630992 759518075 700001897 701554132 84849172 346343219 181479451 821979762 245537535 662365341 101942580 296485933 569251415 876171039 32920365 41254964 831896956 906231386 308367962 396448259 346035844 982213168 943295149 973316372 829183095 885713892 266122761 961394085 555348307 766944764 742264147 782541176 198457020 857625002 34975270 809993438 478973118 568702638 381091916 775222693 344243811 901814649 136701369 750287825 130704419 261082462 835019470 911737902 999851385 999953601 750231551 848516329 726884814 732691896 837553226 837608556 205490863 311876338 228653819 647928765 438146567 446460697 319529475 872995174 814844812 914666422 433446897 705219217 998919753 999189443 703866172 881446023 448190941 617684319 694542308 825124777 741034133 792752484 866950838 909215695 954591704 963982517 961157566 992612391 128246211 919942560 977387229 985506534 527164858 988273342 372531355 588068457 551309772 925485575 72451817 851406592 200159122 641901113 111631839 545051409 517710626 530449820 551715574 941603742 912792030 936969166 105429321 183925878 499073136 631467911 270210757 798926354 178481318 474190838 547703363 613862750 180673271 575732133 538303126 853406703 542713928 756906666 456208129 519666231 40429073 184348592 850266757 851077549 880566161 992766493 309016565 979992928 200940644 429140446 748539769 887689712 773544765 917894767 875728813 964066537 986986949 999605938 731041522 942937914 67050269 930514434 118918506 673948629 370145744 451708756 101579953 251519897 956836665 970119735 801549379 803462767 118747015 806582588 751832793 984012027 33063954 859963506 578227835 690394080 482503903 679785956 200052051 663596318 449527774 731726808 704386435 896429578 944209872 974361060 805900518 900892271 116871670 694333748 202282995 747370161 835912835 899013286 511667904 819559737 446829405 714443850 19576611 825119672 397154714 772003757 598397861 686805852 850261779 904186501 262756333 604999770 843926642 859183206 975590494 984730167 440503832 880038642 751189905 788249229 752142783 856073382 451606932 926110203 996209528 997285259 515060771 713157338 150994266 944997775 158328542 331001923 510089521 819831072 967217745 967465311 849459922 937573447 329408589 680298377 508776610 787855225 227727616 997107567 575369402 740542131 989742924 997438329 950052189 985355358 134855168 898355605 100357516 543336470 213834303 322755129 814606821 834422904 848609707 981549324 195718187 991543125 739446149 896743191 202555591 992974055 749794188 856305014 959839190 979947167 795938925 829911715 831217897 988628525 184782923 254123741 535670405 541647090 539217919 830670158 876670942 911032705 294994591 438397844 650853005 978522671 350395880 570615541 612352972 830373454 980578089 997844881 840512825 966094388 35976213 455214935 870630754 888581513 73376813 990429135 120517732 149662578 402083211 651348959 85215741 758189769 56617584 304339434 30573122 676434687 419033053 679792352 777101102 906176122 40070938 677619283 371829232 577698085 441771564 507078714 436165988 839332434 435958701 744634265 716920019 807980629 648892527 836397610 40442288 858762364 477871912 585993737 405660347 738846147 28055014 451612266 88279942 762504425 211030457 474712086 612687979 686382404 879124298 974382347 786850482 811416962 263376366 369771417 635230748 793378237 427748259 814351540 411082182 986506436 798620671 916797543 171876573 335575891 694875033 767270750 156358203 646572493 634098946 901910989 731021136 776776513 954379896 975181808 654891222 925942544 992406460 998489006 896746488 980801039 443197672 449823693 204093476 429510645 674587846 868971322 754419972 789728702 234359176 556357013 269461076 734972284 879279160 890854573 752444736 801072853 787094610 973641953 84455874 659115258 958251607 968885090 522762294 578798277 874760846 910993272 906987507 964176447 415170993 749064558 476093180 815330130 625076836 734192807 34938617 47229894 638415111 918341506 444389819 656232166 606092586 872644301 453518215 654599614 650154914 793477452 772546765 884325781 143589723 414189413 143741773 149552095 311320558 927895620 950449003 951281182 240016316 863443992 8101086 641067297 722955226 752722930 569994936 608198180 537384265 658509515 419751573 581529196 502730409 960776766 131088517 434894984 974439317 991068564 130344199 623283707 985910361 986357881 633755242 866682168 181864615 471135064 670801008 821848485 218464489 698146883 252460448 491792309 201396333 381677514 306660328 415278054 356603939 898770475 853688017 996221773 43262953 657189887 403933522 451308128 884220201 928300299 319036287 931790829 309385819 665854943 337480313 626788394 410633021 602516623 264398729 644295910 733489134 916810647 516815436 816572502 914999091 935541156 707075260 978788667 98447630 524518325 147448470 532482469 419834703 778558040 770300584 908776929 275773011 873350177 78361081 360267189 906680415 928871566 777910981 861428715 132430463 903746628 918369691 918839193 782045836 823347447 910034843 961590997 575431147 637755831 582514462 677279417 474744709 510193447 487952520 672734582 28910579 448064476 323641569 649846590 728332769 747148058 440579070 478147249 383486312 706381989 762348652 777143225 839029688 877105081 82699348 944420869 296603302 695294667 969144028 997558713 391067824 643858895 870940984 925558838 504002001 821472892 363590547 417935488 673674329 908426693 303794907 501652783 21308925 656765284 38287288 912739238 39697132 954995906 411633356 622788462 340476017 453730748 102301822 482039256 81441072 239439236 850033405 925434296 784383369 797423969 610532547 678792429 389403874 754128518 684404420 852893242 265035972 830258450 213104809 767453997 993651380 999251388 511228890 632872616 4516517 642746300 473494462 889308201 535985158 635369028 4999659 920304320 931733576 994598876 422555130 572499780 885110873 893922497 945395208 982501184 542493826 995435832 452581068 463484836 171414116 543485047 668508115 719820507 12726237 744272193 705476449 812141627 690130148 923687610 223657147 547381560 312333798 790224076 452184937 500853492 728312991 753320300 266886764 514833731 764748990 956610442 80401982 922241025 991138398 997659072 918642703 936735657 486450910 741468857 657300661 746880648 716276908 903007349 45632680 152680472 758073719 970715060 92366262 823278440 191387368 416044188 962329919 996831742 666203861 740088697 656941770 656973941 651507205 713106063 688688749 847843632 592904912 985325116 509336423 768089806 186124423 890841249 397369709 441906824 110822848 350948421 300114369 701629283 255447713 455935436 678423746 804877652 351844522 387166596 148068787 947973258 232580213 500931921 430427855 796163931 425569543 755730055 718240096 935609079 946745069 968147525 582588793 736028277 531840937 807654332 146469159 854142789 129361874 374608451 224267743 403592664 827405708 928861833 53288095 81610904 741857462 829581202 633112020 687947419 921690321 956429449 443784013 624198167 58134709 724363806 689968017 699060590 895026896 962001797 441237096 592199147 404856369 659522411 750175557 914543657 254716427 670114926 918261849 997036934 136909634 195595080 63114683 386801102 138475243 252989393 111225766 887640031 708513980 971277830 554729069 867982545 341268674 638408996 279227494 785449697 908638864 937039545 382673251 791846785 415558252 429732926 319148444 337230695 409530629 926889198 236921222 806175739 366145274 705284466 664184908 674887131 998026491 999009785 486261485 530802284 553401454 882439452 216234342 459620927 182434270 412966345 419376202 834324778 192974483 617745669 116093294 458308907 21355870 558209039 325360214 327269597 551755093 894645318 972499442 999411386 268402899 720773917 778153423 987581724 964560799 978854548 239718088 286663912 130586855 413659651 12256428 978307866 28895602 644042400 491420362 869225727 68308909 754223863 657655622 974513821 89697540 785523019 602624146 761367481 12769229 183021960 804467800 892714966 938136328 971413607 79442401 690271208 302852000 617800766 1037896 528140608 234209038 879367246 766645537 896235305 80359959 379243951 99403529 964383102 968833684 995851551 867417395 908252511 695968450 771335698 218667010 814358358 551694160 717141814 541967997 588307343 3026651 745864050 158739447 360572660 312696613 579527891 424083914 919469395 663827631 892975766 791442049 945404177 597362406 896639267 352309465 422480771 23592651 464704196 423636253 598721564 509694368 665654945 753767386 809966416 166128538 231339028 451392200 703871650 484476129 676098803 947186316 985762680 101395832 898253087 493226560 758369250 359772538 406017553 260327526 431293653 883226114 926332229 993305248 995179956 892214300 921595310 915347034 995569300 298843895 480787805 720260759 793310093 926177913 949345337 236438452 473346481 77269082 757382481 3277027 26890459 245997914 814420263 688748061 960592272 13383091 173095735 360879239 609521044 667864462 748040478 352619995 582008896 75367006 226627702 677287864 965287110 328054000 720029151 475804752 835752196 657779123 891011098 457928841 542510989 874096159 974764252 122983736 646634392 597635650 837049403 500053468 957971950 699253943 911437550 295492055 751734796 888824606 907602953 811183608 949192559 583388831 640342659 925962424 997934767 95714628 506708746 783951894 806520763 20591514 365844628 621358777 987960088 491869671 520026100 85112963 697761927 840781624 878514666 650851581 689529420 16058781 132248108 96435881 536978952 834642180 850416923 608210186 866018216 657970148 686223790 619259203 923895591 650672922 802935328 69072587 622159085 785077478 858821276 495026273 668062882 629034687 759330579 680215323 757810618 204033997 664108258 882063518 907907662 610224005 683864730 998299133 998876428 190708690 669213893 170827671 569355243 899289327 980561975 279518778 779713927 4632747 421495379 577666806 752378600 613463846 734294946 612970417 638898404 896772463 998632743 890863441 897876417 455923047 577738886 892186486 892392997 828649670 884795652 623086457 928701350 322771263 932510294 48945728 399518665 263453347 947589556 407481198 611856151 512654706 586455801 18957149 457552417 263375663 264922356 679310723 947777778 166092000 933339981 719599900 972926929 966535062 991740617 369082850 550533932 722340926 760030008 794154571 883401430 791111569 902698053 4087624 230086446 185294603 850750757 772672045 941147572 396165020 761921315 421079823 589247805 315686376 959056901 206750827 287727752 204318788 439017668 508662540 709197635 309114594 341123051 235701834 971223318 752611178 813008889 274066585 874200872 761525059 883481690 213088921 799017344 390636226 904697935 139939849 759433083 566619017 721547952 941654931 955677347 821424651 972673310 898219104 996622244 575602970 872087153 699526904 886973913 791540886 821765703 410065403 595892118 769603996 777282437 32067257 637832476 465043256 722306882 345357726 661164747 117348365 787183699 273395257 386466100 919061617 968351566 334363908 982692677 277700041 474634834 303017491 353712128 945445232 962640763 129856173 163623371 14401318 238106978 370433125 947910917 925363588 965399402 458688201 892411339 56499460 649513722 45491385 62896548 557549662 873068697 303039702 881840474 45027207 724593890 704905533 756595709 219973311 551625407 921293514 958875038 689591377 925484171 854231969 924832644 793447982 806908511 655732704 895347033 943936311 964604674 226837612 812362512 521413146 660397563 127038915 226138661 903785839 924042907 307632698 425841716 630496321 890799232 374220802 714364168 691519853 963962807 746358677 990457791 943622781 997198121 187203180 712846982 686472927 718771293 89807517 999895624 849358891 992564008 185304581 549582331 445906776 912261105 426556301 719285756 57385182 887619888 620980786 988519488 8643055 509813856 697962193 935337089 218440794 553012620 375609375 490857488 993348186 999871453 658148663 817530710 498515520 562604611 359352183 386690970 747769587 998609271 259919288 893155553 354483384 762582782 847078084 979452988 691968731 820590273 16756881 837883982 822748477 982317825 128799646 715933093 155353876 310825079 391045820 821763889 630459469 783225786 932622708 935982184 936895563 962035084 9046479 416382671 629078878 877897846 793174268 893269434 590749827 947477121 967420779 973291599 195007653 864700503 58059238 236647704 502027672 844189992 879054408 897080604 535832708 726952972 695136066 843337676 305765070 941615030 14496377 250523775 251185018 720400449 774384131 814922570 7342656 811285982 116776154 334161857 819412696 882156362 221521514 661450518 732233061 793493585 649890755 902150471 146083424 314359606 777882672 970391428 971280651 973246833 144680650 956068131 105103572 512691469 862388689 903737943 542536372 718220739 719064251 802553696 427123383 694110398 525363781 869169328 566610182 824890116 414235644 700785618 808600230 967734413 768926835 958603073 288671734 488331943 607246473 608779370 986976498 990081384 517497133 974417948 182393058 714223133 694545665 828530833 552853223 634829377 912325694 951367120 841116667 953775225 500776645 692537845 761284159 863273032 541248585 566896126 485460954 584085010 550670643 926804169 615490308 941932691 313655090 819685461 734973056 767160898 956723757 980996899 163464281 551961880 805401762 852922864 253744962 324034816 457140236 680293141 48018685 745949837 50589102 495734937 693468403 927441405 835201521 911368004 497302014 905935723 990133519 992427753 988738059 999894176 969667270 972617257 970175962 996689301 548884949 651220502 327231776 974930108 984082035 987883927 389680452 606497531 513588698 580933727 353890815 788740998 622134402 702854376 689513104 736812167 721488619 845497355 348621595 626607842 920235583 986940646 313499208 472231469 222520646 757690681 260106735 370958196 968333872 985038418 579413338 848150082 236446769 301341073 267642967 625138069 440413132 522177121 921639489 963603292 692176996 959690369 872924343 945472998 96372829 980127135 888425575 901491269 17259080 135550619 748481225 911144473 785405500 848959297 825260312 891284948 687562340 709562596 685294603 989103205 439921479 809569144 393877561 499902931 36520225 282724025 433231917 557129655 663978143 703458873 614638253 977397764 644581265 741425967 647773154 958901538 117900209 312673221 266561834 338212152 241855073 716757698 143129838 258992037 888684999 932546442 868119357 914360994 70876707 176460345 462977653 638971404 450123251 880844126 134918480 144638606 532106366 942661588 145338209 252859412 701746654 811332332 916281687 929812472 359412634 736946563 39622060 981000841 339981070 876807697 916325450 925244770 529181568 558704073 116453899 926251424 186124213 804361377 612956442 954105282 185987523 685220778 749205320 870601176 272751 625694727 326175212 345339612 317488877 874707621 661789476 868320909 166730170 315635287 835809210 998413311 717929116 870696918 528750963 743887230 432355406 437325097 727963160 746614316 762459843 928775141 107814766 553947845 478205584 950563343 671403021 891297279 419470050 531974545 13428431 442310718 685351647 831035888 600807752 708329947 61703376 337508554 531621987 668986278 395333093 935077158 962383737 990577963 668785355 690173764 422371174 739257220 711108852 828177176 101743801 110592170 518743478 702849430 820740659 864872365 869803156 920083600 751683342 935294064 968118152 969746897 166894322 463108178 74413883 794210115 205511928 619847990 648112559 739371812 158980647 807147052 916818462 939148785 752490967 822685447 519672831 584901624 194336646 526007888 181310115 446490336 214553686 920458860 826725909 831964851 688025374 771171287 92804220 723341981 372001284 493648341 145776432 956247152 646414067 808432038 522029108 971262463 522301889 643239839 175624828 641266508 387769988 910949195 544232717 970129823 662251831 844539972 694316889 801521297 686470514 958618299 587759537 647656356 317111801 516943327 364297100 684339405 74176137 194857574 482828546 762771106 102645047 495670000 890678185 969555072 914445570 987701569 796457119 978607510 961710669 993252603 807808197 973892275 8340279 303121172 672837671 736427322 326969613 995186830 879621207 960865098 981172703 993173855 258480633 644671418 426167207 927801709 976852216 995637676 563353481 595153548 170158154 548846857 444599749 758023737 276427054 738298314 938063576 951381020 374561290 794381349 333259400 376016841 289290112 599287216 112364883 997932318 495200976 744371762 910511674 944173597 607762840 649447478 462273221 593922335 951872005 987725918 65382862 683676556 817326523 908573823 487697539 895706123 272956342 980998072 540580010 595399863 689676482 925641419 881469761 978346376 253979730 777785538 127056552 743702820 652710373 721777185 454635988 652996749 470776714 627270068 276016686 639456149 320066615 329341840 793643278 826750969 272779091 991963347 208666338 787455720 843861093 880574401 497381167 804738319 738894704 765577885 123177703 921306293 569168848 666866595 6012710 946957121 866288141 933523600 42605249 322735987 350450069 461070163 350605267 402702993 981182817 982773616 474433377 991227376 643348313 749456959 114004119 587209868 421591756 746941006 743362982 932524285 141562456 692638186 174385707 378999750 961598495 967274265 773921517 977687060 930681975 936226438 217892218 434877822 824101160 865328041 225679614 509433289 225340646 633325021 236577951 953135990 107517990 656964086 139313542 201117528 486410094 766914536 875147233 897335288 837050236 888252375 444931707 751694694 51687430 995494153 143263672 963903605 138330547 881407219 974433853 982091475 743429719 867449949 278129862 650551598 748323360 970988540 834935687 957678616 540738012 892574387 88345367 407184615 619716738 644587729 935909548 964221039 396442520 927787815 538987679 823654019 711284374 799457209 254653718 715216869 985979151 988743751 153449144 403729943 424034106 463749818 229535292 866289392 154972016 161819859 993636609 996591862 961319526 974469360 939003215 945210487 318075334 407710202 810989672 962114756 3794305 304137251 788352787 831983268 132883457 220266497 958087513 992799334 922481287 934011589 410783198 586222620 386954247 853132352 582527616 666935429 722901845 772132922 878077241 912641363 885134296 921154234 346369165 902106480 457778279 820693289 261075884 287603215 744336153 853671101 944721335 997930926 92475038 458962232 436024113 619099134 78682875 798616822 760758412 800219331 115348692 998651622 845067489 940251369 746949316 929482691 739059287 935322631 97808565 810937902 10927544 249413141 982232475 988423961 740599297 768244646 881115036 999633772 403630162 591135207 995498022 997328722 967775264 990231271 547647435 838164379 904970767 941118158 471229692 961725197 605266889 883238539 713790193 758561632 774715585 984643578 467336469 745100253 582589242 670814984 402937669 616830237 856310405 897164648 610349321 684639839 370458862 859075250 654696960 819801353 379796721 523596505 836481093 900858193 395965864 719256846 395562636 410069133 636477568 759419793 924509002 987199394 557190926 781430632 296100093 690472330 735776125 740026104 233660725 605034411 880279247 941355718 396809497 495763879 956908563 985705142 416538849 537848923 782479607 786572992 559457778 800771680 415619029 504174800 292602052 342647629 705940526 805330994 738430541 956620263 559748450 660886091 779859268 931908826 562317716 715505561 523362441 664558610 59677894 758258506 621057352 965743029 890242029 958008099 980660493 982685685 214146844 828784705 221946959 421143678 539421740 916571818 691617944 750550661 571643455 959135256 794237245 830078458 520145757 743281447 405496247 971947585 905705005 927681858 846502216 875862434 411137740 780524693 896710555 926931366 311047862 408938681 156697395 363254563 522997989 752666156 936382848 942820478 784736663 918060453 848839994 865171146 1657186 524168694 41101156 592799950 916323805 973725873 107751753 395023337 711804805 828538905 29444376 656592140 291648273 313392495 365891611 505402177 67994461 657087024 959661441 987554046 945898176 946218751 652427105 668753452 430022191 480929326 504545468 953204310 889392757 920861263 710243674 778263477 542627275 885975416 878790119 929285214 894804599 943115413 891010589 919741322 682301280 718885013 467712629 972365624 625962572 982867229 162512061 402742553 331733578 440225145 761982711 941320745 437745259 803483377 550970333 552986015 458373882 864293042 260340211 656730386 3792575 740529486 661099436 913346990 628016420 912165642 874545985 932589372 758810261 871255755 764426577 913393977 931325512 987244974 568574414 864596533 947450879 949396566 611195392 703773502 66139155 261351172 526339305 583885178 700174951 759365626 268942224 361449879 374057138 840292383 665569417 984026715 271650148 958082432 829089676 881080834 184791678 863374668 263934983 724145411 83941498 355283114 421151828 857670144 375756954 968822419 90951075 259459309 98490279 141537911 743921166 979496503 485743877 808811308 322897000 904276164 73204137 738916664 216758646 705936690 36543879 285749141 104486881 242378777 920795415 927894700 679911676 903236666 119753093 360066235 489903800 977780201 44961206 865617257 713702507 907478128 379348802 385609003 780777805 903874910 24254068 185630193 518516298 919208797 577225844 748810629 343369051 358391597 824941205 921509980 5586841 205465192 946588923 993421428 591430054 924292135 189145493 612628745 814651725 844721340 986263600 998679560 41478840 49666775 679564652 822756150 11355169 227468170 84796916 943474194 824175742 839763634 801559059 953876183 461929968 646020638 468161367 928634004 687907173 943410604 548995348 772625728 89270231 732533523 900041721 955653051 569769655 978526985 839818021 930536437 349675163 354816871 32058790 826277771 867057557 963067397 35262473 911411414 102920367 558808516 174254986 726712723 342115350 379035977 226244714 509858586 312464677 772978895 876353410 915687155 722188032 765467718 210831587 964170569 961346137 968337882 496871093 736194052 382005396 848345035 228744176 386430649 70753418 359432934 497575115 708499720 429229607 947884220 636135924 771719479 781783524 912297910 340163686 480538862 399441761 458313559 976525084 994680992 258384131 942552425 825574435 962693109 427037660 448192563 605997018 925660767 409947791 996777292 965810548 990617769 413538383 827732850 676723052 912240717 755740803 832918770 62492654 825136453 725232944 758374977 244555428 498945809 100905508 933853997 862391415 985437987 497035701 964281933 213245961 877656720 521572114 888528350 488397203 529219348 900083798 910894769 205015589 529615185 985542898 993947412 434433938 976932338 729748058 751801927 518119763 658333364 803345480 879079764 568435416 831865111 703154372 918102885 758109708 881714444 912868461 967398879 599271598 636031708 298227834 447095876 339096484 701165654 56835375 635865823 325092598 371695137 754191082 847511841 224028024 806018397 93340814 928257140 707057950 851385929 596083101 752298242 221128323 935414924 587460456 975236865 318968356 471410849 609593889 816063138 609541618 943652233 912861481 920689407 150084997 983899170 263541261 967476042 46544058 80365013 21036858 730614866 222367309 837689745 239559377 414952043 407116230 447948771 973482736 995744843 733580411 943280137 630551362 941237777 566924440 752920241 955648488 959479597 513382415 783604946 809082296 914179110 514194308 762965595 96178564 790165128 604078289 899092493 232274710 972663426 674532857 896531203 282927084 640041374 46744886 781078539 905495293 962719627 766297078 769017127 597325689 619379561 678455586 891513740 307958606 500005935 670669642 775146891 180840820 412331617 159461254 955581015 925170419 994849468 29008984 490259849 834921050 914256340 745108585 827075865 647271670 767704979 169398265 910809518 126522092 929531310 627617285 731305664 10670122 162198714 966266432 970774565 280113768 988524929 556275356 967584157 12425336 200520763 148962381 207570015 862015938 876004277 900049042 905393925 918256571 978099037 124072415 999144975 437023275 917147786 380029620 515696120 337651606 805780793 461384104 824335602 590255017 738702321 831014834 900224544 86270644 448660932 74381845 901500094 442367748 934560275 435072554 529782549 215911005 986519636 178316708 820753754 250901529 817924062 955340751 999143389 703851158 994772155 568829263 942363453 661247930 915522176 332845053 735151986 56982123 112817223 190988471 949506582 49571420 339942161 749790132 877257284 442638758 986915344 36007103 609441801 899336193 970249290 504361305 538383148 258590040 852109309 231977648 694379174 246176549 647234513 478506032 667636501 962314358 978922816 950460444 954087360 681780833 882587960 921238260 930997446 373925380 582298509 874742598 919873571 960710592 966876987 94520449 848954567 662634324 895171190 949115065 972873412 528926555 554913362 551818849 902644157 631730042 807055219 527234811 809663848 362515757 824920069 895697972 920763301 771848709 904312485 631662943 954792141 617726126 864064241 655833933 666262161 410201 391064991 539783224 651443004 146125085 473405783 781491248 990342025 415776469 924123745 900994998 906932817 684478979 859095630 598014633 988602153 701202441 719041028 970440021 993179675 485876200 564830718 917739643 988192357 172662998 370108665 533855706 701153730 429692602 893576135 228743594 506171847 129486092 525943903 321319628 853950997 671180689 747086501 185744825 431246333 704763680 719236212 937971594 980068576 382990426 602254830 542848867 702823153 289209382 621635109 946085811 976799034 441752167 745865658 542914071 674813671 687593567 818631504 449578960 708038704 666500961 674008345 944934929 978333418 111677986 509319636 31941216 240627583 845221458 911678721 861489015 934865666 376788411 891570459 593802922 961061811 335441168 573599136 260908448 651090095 567320338 569732781 250384553 401305389 505523107 675711962 640916020 836494737 86420951 560811774 478280223 890899393 526425649 771497390 22414975 583258739 856577427 875020013 306127168 407103616 902656631 965982613 173000524 996284634 793668918 941801264 225824374 561353909 234450932 580003430 898051832 968093194 403246356 526392157 327307031 888713255 443904809 760604394 484854174 757981290 218962042 743553980 563025823 732255660 917925506 925946842 639978642 901163548 965948638 990362414 360057819 724610050 283121284 399816647 782766985 979296597 940973024 967638159 544383560 843822016 254056209 819483444 551888799 893302148 973210298 989117470 451840951 955901169 564882799 977300626 635142200 981391521 408522851 511334580 772305454 794360024 80300602 390913543 350089330 705979390 688928135 813786187 272483122 801049380 478424613 967045392 262358485 409170865 131884973 988495534 666047040 670509496 214924821 487263060 332845615 543796057 281860923 926387685 484186329 570504046 243590387 326823957 443171075 889209859 42220625 122634709 561535015 725205968 187757875 363292865 525135867 948419112 765589400 871703387 254103482 584384528 294127333 511290589 801186769 804702785 267665842 903030369 111117529 753145892 887625526 903188793 824078308 855153227 325588516 884881915 71801267 447930292 642522007 944865064 70916404 225335518 426549668 632506517 816735731 882418792 508572477 890044885 260035411 396615251 970810849 992583277 704997589 802896419 403736399 872462046 686685302 738338041 111361317 559633614 134203353 189326971 155181712 256060037 623405081 964560273 632656662 968436507 761051221 960895829 194041672 502975978 185231170 917102004 875608318 912917795 505602695 654713969 726317963 866218603 615181526 968642572 476816908 828505909 689226834 961029441 263050973 664396358 294268177 948251085 92210802 873184615 268149045 493844872 441695907 595400825 978974513 999711236 840521359 963085574 866446877 968454962 669303378 713399603 711457700 907929527 741225556 945884489 227159993 395289143 284752290 809442808 397026651 820360900 159567024 455946297 641758817 849954435 552725740 576513250 870313048 995996988 13883559 825964406 126773122 631809477 461835923 643297630 98918089 514370600 809377462 875535928 319892280 354665340 979857922 986302486 533690620 799118156 659020771 781257651 550205375 973472214 756323141 883498120 353863760 439367976 975177527 981676609 679985138 909629635 343953986 386434805 796560386 831962019 558850113 707508201 98917054 265613625 325259441 520660432 941425717 954794064 632662924 724727297 586586682 726704009 474088923 530161738 798817250 806787657 147713614 941114919 100634446 131331952 38870166 779447998 524275478 894851333 74523432 160999333 534076780 998695455 504154244 970778988 231509180 944776811 789407554 912793812 580659490 818871254 571605811 919459047 311863696 491922369 809200861 999317269 700085142 929900509 476813397 923085247 592979149 880086835 738358764 796243195 805312446 922657481 183224455 223146297 786659712 818698459 683368757 891606195 451972343 983386771 920245831 939421127 401718846 604246976 46273033 474676678 677112490 906616294 509554574 675317280 226761776 886892031 909436393 927374402 436880608 941149637 146102317 775409046 618407493 618416396 566106800 880663265 148546773 816807791 76129430 750068540 594634274 666725685 653616745 734641305 602181132 625869526 625106307 863928045 597037735 689035753 204804574 892111669 446193695 723130777 46050192 823212716 691038963 883890570 133266356 433783432 619922009 872362662 791119062 803744026 42716681 693584515 194683083 591135097 781844088 913188614 762351245 828581590 722157564 742970316 145746738 594583234 525092178 794923521 213397263 942239757 407488364 646827376 269625904 434428458 674367103 975335531 559549529 577205852 732030084 850739746 935374630 995363729 762143107 871039116 73036200 926586130 541271957 992318467 91857369 868942081 751588830 924373193 380338346 954537548 630558777 944202333 145235305 891205367 539850535 967720987 325897706 521226531 329630805 775148494 181283396 396958732 993636370 996509501 712546297 946452264 302949982 914520732 4401016 599199864 672877685 708375512 952361243 997701612 154472067 411091699 364895959 417131949 512537428 923411012 219065005 935171596 727466519 835219633 813059639 996830244 349672636 957221356 771004717 838119418 588209386 815086590 818731476 945151364 316574441 862714581 269580283 639724944 74729866 601494559 652886726 795813475 924103406 946884694 445104526 820128095 859743951 957490354 171865250 677280703 649961170 928088505 234054073 247475488 249539946 726746598 376096780 716083230 132771452 649452247 213918565 467103607 429545096 772201072 933786882 961962952 163069446 779136849 802326500 946653993 128616610 741232743 460564555 726768870 148559021 699150617 620016859 861029735 146554593 984560171 314525985 737497717 530238868 786717922 812896634 989808149 602676804 838594492 837646161 893846468 393778515 479264268 469760672 778510799 351832828 816923953 319317204 917530025 254211065 670400444 881018329 882982322 906723530 974121248 94644534 326261554 232001465 556654038 938619324 943601615 392267393 481965771 601615567 815206630 832628613 970638777 448803654 970977048 475578051 938485699 385492017 835181227 622760769 962090570 418422612 953004062 975538139 995519329 723100927 814170322 659353774 939629093 116548365 543904805 445766149 945880196 700051288 839832886 955315056 965231710 187959685 859948044 813207025 877397509 282274115 886775253 75252461 96936978 174612780 499639692 568914409 847533438 105849665 174367778 767781451 921769438 623306663 999852340 695725658 718638807 446740306 753970002 142794479 279044891 816184008 906342688 774759632 881355042 148208015 346560632 760416233 932423092 972357182 972844205 128306839 588166897 557295956 914083632 740267264 962475421 439364502 490468132 264538776 605007683 903293407 915817593 211212855 535058241 524311867 894275695 798456560 799064878 722332387 983901743 494867367 504685083 989662715 991767495 84520039 989941626 682960894 760964482 849409395 911738116 587622067 720387226 222080071 848029118 251792051 762894866 951773911 977061222 43487648 976053493 795497457 995384221 560671102 677768424 345049208 590729872 42532039 270492195 280262509 605828569 961291265 972070612 223069377 788292084 506885762 930991035 978814017 987277159 795827100 857888896 636219357 640045463 464095144 687772929 106409794 700321919 76213685 632047212 903012344 957502441 688419392 816978583 190236011 335794904 375750620 903197228 828480872 984978604 9824396 148268453 132292472 829596248 962668788 968010872 631301387 654112706 643783646 926699457 167831077 712020131 923258725 923337987 445522370 778516056 812543802 925292627 62779676 560635314 776747267 861436361 423529612 553463019 154553450 517076620 520783846 658760894 832443653 908273306 564059521 698618523 407667238 448884713 44165089 692381426 12655928 722017890 763660608 879223909 913374622 916371722 894766272 936608718 248291754 769729291 828454665 964227557 360573721 517135025 846746187 884322137 892208061 943003468 379951728 930177396 579075018 584586221 304748438 883131175 770072274 959615926 319059864 599142624 443174342 491195216 876389018 883615725 43145097 44218052 657242107 719751703 298997841 342526610 166171779 930343216 59435484 921195827 462882431 991253784 938851154 999832156 564429696 871319712 161157682 744875400 207489349 858458537 703509199 926469318 617766881 657276570 948190051 980917085 15833979 689851380 558428783 821367309 311441688 369056981 59647425 65143760 906767251 955650042 940365610 951961608 682514727 750148154 618790181 720335665 778911986 881221996 284751920 471810301 490817651 593054129 463569422 910823958 388060239 401616436 148946358 598694701 123486818 874973780 47291033 814310998 599851437 730805626 638246829 893523287 600154200 807837569 224620542 843834173 313998337 581418008 716154442 781446093 964573761 979714189 599857640 616258362 604713051 959599455 844439542 904091956 106122495 830769669 913220678 918815437 358465008 528521490 414149569 873504616 687219281 827114289 572165071 970189032 855072838 964598390 573139783 702973535 225677555 449125942 70514531 979557941 965972330 972860831 708361967 767937286 818019286 899519927 383108920 731357786 411118887 455345216 515108871 633625065 478302295 645481336 115437741 779405723 699516794 956986405 752230186 898007069 428513600 835856370 505819211 928821246 792551086 898778520 557745786 714661952 291678766 574736427 983601555 987869726 14472306 386610921 593515783 593607783 710645199 904268315 918691126 931987232 228979477 482041093 223028764 283065354 830074568 962043149 252648172 932249933 861191693 934627501 894708991 916194827 141303272 827640087 215396019 370610190 692947250 928616561 232803961 678534474 10735917 681892084 970892306 991138020 519898780 744268384 914331584 951132476 621430319 925375838 571586772 613268376 175684811 796292282 476979880 957879217 987830329 994910558 193727453 360011565 159783076 328123275 654892783 994828243 800418320 957262058 150704769 401703206 785326333 918349577 746464853 820101199 917517222 968348578 934939380 977661275 226581606 351739383 465623519 719169850 132918157 791279800 931134183 941769460 850185549 920201079 543268315 800338427 229182751 317377031 411972030 830417208 29739310 479081842 233794015 305911947 572346794 857682798 154070323 385714070 194691476 928649370 341208587 444013234 986851769 997621489 361980358 644833409 807821076 841283755 759150149 843412351 716091036 988915160 316932409 674774587 595482782 882518927 306981409 724332560 963993080 987787912 181282468 267602427 89814577 909465096 155625291 819081133 417665837 982271536 809937931 928076657 994560957 997814193 508769423 937002919 632208568 850622669 461452374 971964652 787199773 901891300 20277863 621624982 951045549 952792701 658251868 987143969 908334215 977948035 848203379 951936989 533202744 963505770 492976105 975047133 393422968 994092416 190013434 741674070 704250551 877450846 1386232 955102666 721522017 924730336 275498457 827314666 255280307 334001702 637822874 846290063 818030917 823536641 152016239 527496721 105020375 891600675 426947122 575578239 675056427 842662954 856775742 911061055 478892250 564905790 857789464 961887692 439269839 973952673 438719942 729585887 530994802 586301800 644664315 818302287 70453985 239622617 953247494 961396873 911343404 996620654 685435118 907212571 712873764 969215484 19501132 443419882 224666042 868148577 762260016 828999187 593484109 627069919 829581882 889561817 51396813 89934439 482750463 571699372 250906356 932592179 112051362 482513987 595456213 653098174 124267342 772844963 550342708 598330867 569130983 788065582 87851528 809155220 974870883 988286855 229955795 572689525 389825973 450633962 111713896 262690663 29053852 823222624 806441729 844118782 136148225 869684810 230594228 248617725 241222643 732712165 276775890 816966688 643562759 724360927 880889710 951246293 218863004 668363440 667013471 695766168 315071819 949592064 384930455 991538215 862960535 981991641 793953385 987391689 544039637 665248303 16873338 572957131 67517718 631453190 707299136 985714200 584866570 953878898 242422526 985287619 60616613 663894194 353584933 999420681 365516673 666467527 787322257 908153680 611442227 665364097 360604279 554991130 594264062 799531152 874832766 966925725 142993820 667231518 871491968 871719627 686150517 886608081 661129513 963740066 579989043 808487053 18294908 142414606 110857247 780731682 828151098 848388022 184012305 554454494 30048649 89218945 476408998 814547205 325309478 595887896 923621071 988366438 964392826 991202463 680217616 893444406 784744104 882608158 914186533 930123874 391352498 690340453 672369847 774840460 137829402 453471211 923791755 985416340 474370531 650954406 451407861 742103756 494739259 783414790 539278357 763564222 292949050 584770839 519769915 605700319 34163688 270640113 577005341 910276019 505553947 861774932 515790506 741613534 641794639 994078011 369717462 911795059 809722180 908064173 588933085 806194292 344309191 815866275 963100427 993834998 363659084 447383349 712905515 893648735 106848238 520359789 241794574 839234234 377585157 915889973 811777664 935557302 493127648 781291531 79889468 315261617 813703454 927812782 591873581 983683846 653756667 864025927 237451766 478179574 948442532 988912515 428824748 497720203 820191692 965214481 23554321 126289436 839801247 910889734 179231158 691409701 996510759 998840151 259468983 806297034 120670292 948205042 490835023 953050594 296389625 721091779 915560976 924700260 527998849 633851006 788338153 884473957 146448781 819035907 278337107 842686760 650072064 875035416 278814518 982187537 151850083 186332528 895060865 987188749 225025872 236064648 95828202 102103357 609271151 614529751 382994805 711940727 732199340 789874103 923469560 989852041 763770147 825095511 145485152 604366235 796997795 975819820 490489566 604853286 127669272 878395303 70708714 765710776 260122920 566831686 279136479 514415750 417256719 940372389 190468678 693318224 914747927 947745037 45428224 178294525 290782275 848001365 249948077 557951318 802702014 855691596 612946532 811744351 478093917 933414139 809844809 919386747 768922373 907662237 686373596 791080301 283434636 966655899 423999209 647003735 815897474 864434583 906755573 941499830 485932613 960330721 523012686 867041424 451487180 901800878 73217102 880151774 994318636 996412737 801184688 837121214 487862686 813250199 817806522 898089468 207825209 366339556 207301031 281209054 44426338 529926088 471783038 948113818 331998866 902579455 100686324 526435169 795936170 901914891 677341768 707340354 143146726 907222600 775277178 786087008 618144831 962800989 671713260 977447891 244362174 681286316 52960788 918932182 85974014 103820574 816705570 944263612 174470671 899534861 971646394 982138070 186721010 934300192 200614748 349998484 946575745 985195319 936384575 974645493 615713708 756457018 812236993 843765836 81092528 534632634 481469032 980061637 636398366 771746483 6930500 27218228 13483852 117641706 247937893 968165909 427315158 826594484 841878709 999374131 121058656 848321572 456271955 667897310 281407706 918563228 354517523 365188992 992975477 997893152 233725323 745326171 859255390 961862550 189968799 735644078 636919969 818069812 724738562 808144674 483349253 940560689 943489858 989337326 870580274 874165394 308018457 514274062 233588254 905512540 431557572 503115483 875884424 942776200 335600248 650427334 616063390 937224581 658010546 972140404 706333942 751442979 976572861 993938614 54365166 455243144 372747917 708097273 336643657 555244875 767303812 854142280 415630587 439418012 51391212 633249302 503622662 898394004 51729176 595216990 46354222 945214512 554484028 643040483 813757648 916898501 578209211 657043594 328286959 901831007 16161066 714004755 887292263 903585068 13358199 438507550 889372807 950012601 416261772 888823803 781171575 917005213 895408051 998902853 831230567 921140391 179720716 211934989 162704374 336492840 667965419 673513904 416144095 801735105 70089595 754863754 790439957 837959196 726605238 795844790 991401740 995694592 419836879 963333973 436191385 863178018 423418998 797648840 66834155 796031057 385592922 979742165 695049652 863269982 269916566 278035703 328016160 465493222 215925315 588395720 487232610 686483903 351004209 521404835 773113267 791934664 420983156 689312997 696875699 790704450 279510267 853063847 131606273 625738845 165601838 264666321 868738958 978474219 685854263 846964437 105331749 343763912 400653853 774651561 65434846 642441212 788830483 940809509 344659685 882751106 754310023 867457035 622468566 764585111 648101912 778276497 259759804 870480603 155692944 392519060 120529984 441420156 250928733 930172951 397887865 645971544 477119480 841454465 574310389 693489458 498083558 509719203 953122001 994278385 551939824 557011469 767167113 891174664 871354702 912392563 808625836 890755727 152842470 425055483 417443802 932965224 645223679 955553626 698084399 909745591 965733313 983530888 748071307 813212183 3789818 902858272 729030917 881485867 377693618 959086237 226436424 986256519 950946576 983907880 395351824 706845107 476472530 606698554 56960396 212451761 76294456 118546444 216613418 657753338 970596240 995197267 28407905 474119496 603763886 863852360 661688054 812766292 256848582 671589749 367469999 525551653 721628365 920934303 557401412 730493258 624826553 764333489 7881016 223605911 837303323 949166240 735978439 768836193 271698850 563734322 842047132 939725751 770138962 781986710 400160724 426906299 609694991 925995885 98496850 760729872 44810796 493422426 885712740 901218492 108981087 532923512 99356443 994381411 255380522 603066343 506889707 519942603 925554354 988274910 957783298 976836847 846929178 913848327 557595417 982569663 245790303 533923414 355774590 635910720 324566151 538764721 378088923 808396397 700575100 725862279 528804644 679252558 906591700 925832297 154436182 774264754 496161646 971700645 626438946 890474198 558896681 937743623 448812691 495850301 655409850 848464081 607393348 671482533 920439802 943466920 621048956 904792651 120551446 778946343 256204951 563106205 892478520 956082432 81264393 717107493 798643726 940337579 46867739 128686343 496412055 772443366 231085622 380793882 388768450 675166538 640866356 912008716 745640094 909774133 409949062 524258900 88079494 541799195 171443020 339556669 12173242 754663093 646821539 716368296 950138602 972021040 978074628 990062833 148013081 168360931 745588157 930789937 870346910 956792070 120077606 820150609 536241893 907187549 945420268 958373686 522759914 811648064 837318187 863171613 819914646 900809203 365123776 651900353 153939731 437492874 756797229 980220802 646567552 856121348 462631814 805666888 644079519 935396064 906499300 944458728 959522573 965983940 857759894 929406944 892836034 963123479 833093096 934989491 475121253 694698528 989671745 990470880 943270350 989330141 388904096 394785987 860944125 973971474 843974381 927724762 631011149 880416490 678999628 845287778 776341702 797366240 769400619 812270136 404247946 956043500 26015520 874166778 114904261 732245116 793423349 924894049 120269470 967414048 308247974 834500704 925300054 939566831 77966130 437062710 184729067 442149932 144646901 202644526 741924750 910797727 620747987 907470995 734093528 967123069 734944025 838554188 318051930 841545601 72492574 948798521 643897661 774623808 738799382 807393546 150474231 227379711 39573081 111830370 686111577 742786252 397854367 934358252 407426219 620199155 187345410 670518682 536211557 810737846 992172214 996539217 281860679 641066279 768564535 929994237 735130028 876561887 366752560 676460660 293930815 985493794 173488190 518220114 690803715 947936496 304982974 687841337 42718698 448999976 87660694 272975379 748470397 986098393 388958528 426504545 31401676 985772470 849745850 880461301 268033223 879928188 186623262 492679539 124052356 211645253 224550160 243206088 507551226 690052132 59163371 191550538 406877482 816221690 865747931 931044167 788037522 890472327 41881398 675891205 101479444 808429342 596196842 744035123 7077162 523708399 160138013 887491207 306427593 512185391 85149476 879266333 928190930 947097358 664832427 837214260 430022913 843578899 505657235 805598553 465622590 682947924 958134217 993910700 797217945 860871808 830365612 887814536 909796406 912562007 559250591 750980203 682867791 747349041 946291392 968245386 471870492 649348178 178158222 440589625 897383448 938537558 75568219 365331918 884104127 959271659 209125976 956072194 728525886 939121802 442948223 661008369 400247365 853760264 584859753 633595034 913867678 983533029 46870102 447905352 916802821 926569240 732028429 747234213 168273779 322830602 978926398 979688596 868600040 947337086 535953485 904984964 507966311 988756442 499131908 977575431 878527062 887579349 654550669 850757703 268081492 877511657 100140979 564243502 980808836 985088760 529833958 916865902 758948298 975756050 806524413 828319550 9919059 843332454 767312518 790334708 476809792 840962431 378701973 975478587 236341093 948410816 875795709 930330643 420460287 682752916 672298833 991016961 911865885 927495977 889781093 984812258 371596969 477528612 844530567 982838442 500534400 818737901 550706736 681340659 244812362 390799190 232194771 869434956 458788142 695826398 704086034 760030654 14519161 187451720 268520973 306177067 368980843 560274144 819331605 908230940 930829639 968992448 977701565 994820654 522408897 801733725 380589856 798127618 552267572 851130309 751949230 792301464 654874945 681809005 128799348 492126781 200221657 263042895 354774140 786257123 493109864 799134098 630539843 940640507 244957544 997395675 569366395 827535094 182668591 796662992 453834348 468866727 811929036 884296400 4507118 172916547 679897800 702624214 449255240 537742600 709843537 739187452 142150778 386331992 109246551 515850152 309234379 964343251 369050276 550719546 242022901 890007488 973768880 984239265 106248895 655330771 593306757 642857388 544641694 715301101 558212470 984421378 448880818 517595097 773304576 775960775 323539663 364256855 128181811 703834767 359885269 498821455 186906291 615113584 10985234 135073268 491313805 519573484 337233086 910418394 812514427 938142453 597339687 729375477 699027721 756932072 880580094 900141783 204903045 442779856 523021563 645649896 213789768 890501314 641843549 899045785 262944663 717543644 681975310 683717013 372672294 942453005 442330976 565746398 955772496 984972332 586052904 816551959 463996161 574632955 451480789 779122979 474757188 934660024 321090572 769907663 726574944 859033452 377162706 919211980 449760822 508497614 496075396 496781261 185880252 509338171 251178402 308574860 247879381 400272478 542983427 875860528 90410018 644190434 224794568 588515272 124873666 215322631 977994912 992363522 153719916 841218177 196556962 985075760 111128624 421396798 436844376 749412276 930437408 990515097 712668781 762466161 649178510 931827174 626728340 695703155 105801055 662507826 189865037 851546524 774935671 842640343 41972751 441989575 409758792 589742077 266057609 598813773 75449462 697159578 100260869 460625082 828849177 836960584 678452140 857701407 382567394 860154088 496385102 667828338 932546070 976891695 847665390 875799892 51482375 972594057 911438633 977489431 655851007 937814329 486953669 562052803 62016614 410443404 686883094 715467908 903777302 974865435 839233135 958641248 806686273 894465729 71045706 688830761 854824945 858290542 799127797 941793042 739404836 837015123 278154618 301619906 999335844 999724682 108249711 438582074 836457083 946330168 874592578 896468535 937165612 952073876 979554853 997146437 660884563 956838163 170716243 538477717 185719859 592845991 123403172 907363057 583945417 854169978 317580094 374390949 360902855 598294342 798589619 850010881 793445930 993443086 356169090 880056377 627446863 677613563 408179741 810646844 277030753 454366908 779573060 990979562 685226353 761818179 940314109 975635167 570183384 964582001 918697334 982827937 75575501 323399005 773331522 948013534 282183996 545333430 909286673 985089934 75899794 449155363 165462579 820957170 776784361 979800665 363033220 808553912 739439026 804672190 531569762 635379035 34755327 758759004 586492124 644918094 901786380 941618494 437314579 658255408 459278015 555625946 249085757 652640550 878991636 958171594 376475843 676235583 32568672 930300029 299945205 789053197 450925939 900119084 668209417 906421449 870985047 966004352 193955579 977080512 94949826 471733189 134747787 975904901 385392932 436789545 890224753 984575090 751362429 979554752 175211497 309590729 837272530 991061163 287410144 810709707 916375909 976920191 517650949 644580464 117602374 603949774 738545250 984042136 518287974 735052428 947068146 956164682 275373703 503392614 251181469 414909329 398372269 773090896 408468493 656359148 9578357 251734496 548369614 852534540 818826411 899427088 510591880 595204920 49168771 594468970 46809774 595384954 111589331 789260353 444519714 466094754 324746081 604361277 748360100 895048812 389701982 454111798 585573714 888823638 897860652 964937941 312598372 676297314 342322793 888085293 562891316 969702008 773890658 947680626 172852972 720582535 254900636 728451053 314080728 830105485 719085554 823948223 388281332 477596886 659526077 767547139 583512707 677287267 597198060 932273231 20633568 763502354 672748236 788497856 527928483 837129319 300973067 599617857 879604184 927574635 898093820 936619904 127260559 885339303 225836974 767765391 842104015 962376741 223462351 627275526 513558576 892266511 246898008 899526359 218894484 505416338 934952135 951081977 518359770 538403978 637289355 899903396 471548669 633738368 146782357 520642048 430552222 916881078 361378036 412200490 398787349 553185819 984723273 993294248 531348726 863559321 159610228 270073339 990486780 997834140 258379901 628607195 369653895 948515089 499740582 919494641 519503744 675955361 297992294 667186046 102491069 877551989 621746709 971385682 491312897 491636273 996139494 999626395 271262844 885059151 673778619 686185750 443962312 825670236 5999899 146262623 67852261 497634624 726804901 988936814 662398663 846077921 146978513 647948280 94473468 949680670 885647253 967097379 406705042 776599629 939489744 982302715 302840583 690446074 829227222 890588178 25406488 363850215 792052319 971794761 764439806 964184444 980737305 992291022 550094888 628321680 870031345 948475150 31103646 205985615 87342782 960176824 771959718 915842115 507054933 990430037 784770184 805711075 834811443 939623824 736038643 813427028 317652767 840053021 354186421 749721586 102212647 746993992 461628771 785857328 816844651 851156845 564425626 919824587 173761073 364741042 333531706 901907502 131506481 650002530 170703193 920425015 953366708 998958278 618209233 895204988 566301912 756463839 891897563 996688017 67692543 68611273 129258480 297504424 148282044 732087690 47353716 86446866 193903919 382022769 118420013 339743722 92725477 986763265 876023701 950954613 971548200 991967726 111970996 155081273 256355849 500540880 125797659 237408235 674522132 731129593 920353729 941638070 187934254 491278997 238245753 752816789 971098505 986835413 856441676 974434187 977645666 980217631 304365647 628687797 290809538 393980612 397828717 702440911 638875285 892896489 13509086 989700242 706602965 822093455 467155481 881071844 852086899 992452102 253380472 589355762 245117806 302622464 517099596 597968785 780217394 971667416 459041528 931790580 500070701 519484790 664984092 831488438 430216721 447688955 941373300 949392022 70837091 939444155 490287658 964855304 439474794 767436997 987120654 997310709 428224794 835995797 592047182 915698075 919349504 956237943 136173963 447250205 950640052 995315825 746803297 764091412 239305070 841892504 354209225 557648246 123170791 509911952 926372955 975473367 348076417 907785485 155173890 787200127 786071747 908452368 198385276 442982742 454793705 485367274 685862400 707369675 384200424 632245450 196894737 387130461 860673096 865043563 932698252 976268496 432477047 600554036 654970171 762431489 377950173 590570553 581672638 759783228 12653659 589814141 769950405 981831835 821051208 873410450 436253236 473181159 686988384 773851020 873739629 907692389 233012202 438292030 922491728 999133130 945194490 996715248 195943962 315855158 237627251 744785250 258606883 392422826 197250575 554068464 892019165 914899936 388995477 954149170 890423038 901731157 684411595 801282133 324580314 685661451 91648494 749776744 652518340 709604052 455661545 996995928 282015593 482756862 364145018 384568262 340109914 844241587 443182992 722726155 25309474 592129253 873210250 920062676 486530073 922507216 580070267 863653343 174711649 253258027 38132386 346982540 739914296 954793919 715446901 943806301 924299178 963298507 212201944 814006024 738874743 821426510 606238706 712011654 952991279 990464758 988069733 989102313 708428400 914516215 965153226 998551211 763020573 850609111 171420749 527276080 861152076 955645674 810966632 954595307 132714034 229362082 843892573 889105032 102698662 261552514 829721873 925815212 833666621 955566734 692619102 773887982 953923143 985627018 620811827 765941254 94344332 464557795 659073496 930489696 255237267 913493613 93689379 485380209 325772342 620467084 48925023 121478864 933123895 941747054 230421862 671620899 899481954 953708810 29221578 66084007 321963733 907926680 678708055 726762373 821787077 851191254 299116094 720109755 393635560 664923043 727727463 898957738 974790643 978319462 369792362 534100120 194245239 825591211 484116957 837611187 78098390 666047347 306055490 879676217 748761053 774008002 853262710 901810627 957343692 974567622 805218362 940850109 226577228 878362385 406701069 536309503 414928057 786514607 53534913 107858417 307725356 596163440 519174706 863065006 628039975 868467598 108822285 377661658 561216618 715375050 977139077 993932767 965424259 986017499 778865697 953235285 999637946 999705222 378272731 985981713 161498107 889749643 907765153 968849820 973435818 978208597 543405684 892451452 518217261 756487282 961700596 990926531 378944895 623538800 587168156 999691685 518544271 688632225 747532318 768740633 140846658 461893689 680930279 780523871 407119696 692108180 919383947 953571111 53752401 827513072 546692666 895134059 706806236 796179420 947247777 997415798 538787460 929799077 133788309 600526836 978175776 979289827 53174957 546450126 979502588 990102483 309066752 815598861 471950296 740192575 713937735 794730025 100856297 645363720 267073739 362108937 656018121 769179129 630301950 664615143 806287028 855421064 305952105 491923034 827334214 939670815 352763292 859960217 5373751 707331856 325082474 518792433 68800012 258990607 750582538 760802936 851958841 897908905 421505334 816710888 135895445 273911743 607494 916709892 478386036 832348813 127927379 253611916 776575204 967111075 656989115 719780834 392353535 834495456 355682441 391514919 554163348 831914900 189867457 900818461 764567295 892980072 824824046 933820746 719017696 941346045 986367893 999182326 461384692 625886353 664239791 863350501 420277320 520791298 353619914 472260780 523977481 552162959 997755297 998055653 501083885 683036064 386733640 507109176 619283399 995456474 40928013 123384583 926461452 980179151 336022291 579079759 96400977 881189912 35597977 112024909 121430436 685063844 831186010 889211012 175307731 669353465 984416490 989114137 427523386 673347452 654142835 966197724 989138597 993162458 301209506 817582572 23039886 416280609 140344892 435541096 271115489 368045060 663805649 708137100 235190821 266737449 230596097 985271845 435936320 709019153 324310133 472461986 136806180 591499142 903604309 998357806 716285806 880079591 953162659 970965703 391690569 580383159 549740427 967197590 996573751 999792727 375270553 664782600 46618342 91796132 692052627 841139169 857603194 921576177 84298294 716772878 61330512 908445496 347952890 387420032 775559842 792810530 729007768 730223690 651170505 926401328 636705930 950425658 502442876 638086152 339907147 537580454 815642305 956320013 474192765 634513449 940018051 958986474 733845465 939553366 542051063 631740315 845996708 874342020 214349142 515631298 833870783 957997846 203602854 669524202 67126340 511233098 704032229 899777812 825626208 860656167 145933390 594489537 247967890 379090890 471759376 786369993 632441864 990956547 422781208 954128602 378409539 927787908 648316059 979568588 433566980 450427851 125703461 137616530 12447246 326321443 63233420 619494332 3988973 565620118 856797225 970567282 507073443 699510132 173183305 318009163 737214761 758394720 117248304 188380375 779070697 797770628 537470134 797807905 981976990 984934971 144756621 398078223 207631067 614745043 242478547 632376662 437155731 501598525 129058357 686781599 571161463 604704501 803520558 843596548 134078363 192797752 928781429 983716372 358720586 958593060 170302948 416745116 358516768 871350271 217388287 641450381 660450775 695355495 320178611 545865235 650544233 885719469 308059184 614549641 311794142 411533412 930375673 986728277 872339356 921093270 60254816 101830489 544873039 865072780 470952588 879069265 194428960 527266924 111938698 658607420 321694554 691219034 892356682 988863471 900787105 941770770 754590307 999792168 557084856 599800510 888678914 913240686 365996769 978026468 479395082 976820514 633738707 660825847 657169687 795740972 363517042 498481155 619540230 948838143 299427176 816992626 622429167 910491413 163349591 506587447 37574731 548847736 740257580 955096016 507774303 827428649 135451945 574964181 833055972 981740470 344646834 898186543 850041691 856014070 834608886 838619714 22581961 798348658 975659305 981612765 258039682 402388697 811970549 940716064 289624929 902823961 797331993 962870910 73976836 596762091 629533061 888728392 114847140 778900663 419117767 865767585 580892703 651690642 87269404 327623089 511006562 588354617 285396075 675239611 893302782 940643919 67915275 636095738 693143704 848934893 495300731 813665377 16833339 161212759 859111514 864611662 350874123 705277237 508410800 829417487 82735672 609043573 827538623 941438577 241740140 501887781 963540904 979275571 13075813 371874791 152319746 827713930 16263420 676726448 736641231 986771902 873750097 925195147 697088356 946274870 471107795 623500997 595735754 963474672 308380567 723117351 463266967 927456114 833954054 916511739 332515657 529570801 883169236 918291908 311837644 733535046 100516345 404289392 189018187 434837367 629782768 865701474 911378982 969425851 39390787 963115676 400021056 471264703 416626500 558249503 596142222 692820924 489142887 896241137 392148877 813855881 196262874 233808655 481097447 546808372 794553694 861746484 447660831 996489595 573601963 848559139 232282760 642444584 577081476 674876990 694062787 874817384 863727117 982667141 274140235 712239225 937859873 990031162 455182344 974579345 757028345 893808510 508668761 594541808 309615639 411250888 966998120 999239766 240854509 671345950 731714626 803460518 871285245 940153103 565733681 840297923 427169492 804321545 377556750 757911595 110641476 425978237 768004462 926467995 976752714 983035057 528356687 755024025 846686881 992981367 690426897 979053334 539628455 969149437 361270717 578834196 665167404 719752385 148373627 637319931 431708267 658856459 178943455 958704212 827466648 967314463 858947090 992117860 515323483 928988500 358554833 487263333 624431753 721872442 878660699 982293184 866323663 953362579 925761458 965964002 923757536 998129091 32396091 301273752 294332324 637734597 619477868 985547844 905109597 985522026 208698556 978046296 92818945 750528386 983510026 984939390 186394765 701620992 289461629 437736469 227686610 582030735 966251017 987571551 521435994 829577526 365601145 781893218 655824899 657724567 277476346 481039342 895448546 921538955 144010988 290853823 628592888 796293374 815667302 916883674 287863245 609012819 286767350 468744241 768167434 844670766 36883175 412439642 712902866 784919144 156993496 805366257 285150069 659681160 272566262 479011842 325605644 713057221 340316430 948673528 134504976 749986137 342093154 849140225 734140059 991407618 249336790 426909457 385425861 937044558 537081739 659804272 542150819 974417924 668689331 961659606 907508750 925647237 39316222 667207543 368860197 799140187 7319308 294204153 721908850 885086685 567264650 690767397 120152042 652020719 188119240 514934800 243818509 581358898 397738808 914649401 217991499 218887813 404789601 644411663 522320984 696025796 900935109 942427584 180904442 491548911 545081966 596372494 585002874 999155035 40953048 653511858 361741121 637983124 929654360 957520468 681104224 961968703 834284268 957223516 210362149 950050801 934485887 983767729 363229691 620756720 20249429 40999527 437904594 940134886 323861542 683819613 379855095 681522799 665691996 986852425 572236103 973998160 81209571 754638119 498848383 881735943 564765911 714200500 471779985 761024509 939066546 974019325 427800634 481492318 674838515 747787196 609322160 968817042 979305494 999956386 955590910 955830540 625039648 846406631 406377248 684473140 85967581 274056823 676637013 825082357 193370467 956207143 496118348 723196593 536328966 917866702 100692109 362521415 633409334 902133090 755840882 764412492 934256326 941610250 508702808 784023307 946293787 957460567 553779860 906609830 561982450 957506492 278746576 516418744 756324638 789020912 980238964 995838976 751876668 894472647 512474538 757250096 919169623 956907129 787169307 972872192 642529713 664904262 280668896 470093404 852341419 890135037 181613792 277951564 391947514 419105945 309417304 610439783 955247225 977726174 207053615 961383006 294816358 412041972 810162990 946632865 213470679 772587469 332243195 602312227 266954509 734411827 122244509 672500424 367077460 930087529 253362014 303742777 240565567 679815958 412914294 621048757 578576507 897573529 60377087 490570995 785884833 793937124 84624078 269658135 538455266 539587867 817615547 899173094 992635590 998325235 445276433 736122320 487034712 623974796 503445443 823981741 288168440 630980859 291582375 429870462 79063794 996846742 473730520 973962448 310771373 692049190 989694850 996639184 770829902 964056684 578231903 662277318 581728126 774903249 747577637 925455578 283111669 741429684 705215582 987054085 887560352 912096088 321737406 965151781 697620878 833605122 196759743 815962470 6778586 509824912 24275056 206809303 900414454 909476266 159041909 739398905 874783798 997445136 577066306 690384424 580253306 869877240 73621612 513984104 208684364 550956518 573960631 792133649 475756254 660688708 274365559 721493117 435316451 904208951 99588811 260514193 714037022 824597272 225673490 613935539 293644673 639082891 842708837 991251553 856405183 917739274 449852450 976154099 302311965 813873915 931454440 971881964 900438186 977660404 906011703 929523565 850511213 984308300 102548598 781903120 336385998 821313261 833963192 863336377 409697552 680401867 179616389 522190278 133059041 283898957 907645689 991255662 37795619 99841941 936969463 958949165 294944852 712241097 769557322 923443457 564824929 862390217 849203845 871760891 446488676 844681840 573555093 935257464 880415504 933934525 457532148 717206251 175533353 517704505 61732934 624032541 240694181 643139912 843497518 958843389 355813469 950358643 194776717 261998984 586163245 772910445 320796251 398399055 330392844 512874881 120970790 981236198 894807178 959835270 544324999 961384228 694698659 986031301 883450702 974303681 129988718 175223595 504181214 998540884 498369861 665506425 941645364 945970943 418505847 704052413 284903490 823972112 638320247 905749391 679564665 733622578 451972578 959436697 245582181 376263531 677650558 692853782 839541647 967082521 597387661 885154060 710377178 744581321 515366429 640574824 487813239 744247164 73007165 782019062 190990945 533551544 67241071 950090817 495333472 688445597 756342008 897968760 396947805 957985391 603653809 825641498 978718061 999729962 849448920 886282858 242593836 482704228 427434620 445992000 23624941 587839056 480013891 813249215 401833622 804384761 947170583 951556157 486864850 908850042 271760687 559224024 334049459 773328562 162219727 338821761 843074045 957220379 621623953 791022678 676933384 890805166 378578771 656884452 873921107 975996857 49858434 937977327 463126023 666281252 470073762 610789943 784568714 930618830 206805960 468818482 538699524 590598223 731493279 848392769 145416542 244830355 813825728 866350211 632692908 915117458 824043801 953865773 882125218 993286347 328753254 711849578 382028223 417773391 677369553 816752165 1764095 262542587 774280749 867518604 766225572 848063998 912851873 919728479 735083812 838935606 38598897 764199726 216210504 948714388 211570744 245319948 919380977 955104579 950385710 956073342 189231063 687231008 418852045 642845728 884823721 963077001 221939172 288280698 964399929 967446986 665099446 856399429 260907205 362508859 128065723 703694340 688167203 934545534 375690342 573621345 674651360 767706732 803398775 879176519 357583599 982065100 481169141 641313763 815358968 917674890 15898565 128296094 929136157 940418567 392465323 669500302 439171221 844991269 641385966 722538962 809924677 994710607 845566672 909696167 649728841 655854435 246819398 979694590 585040705 692857732 504525724 965198501 227699423 793417526 717882114 775789842 803093414 933508697 182143718 893433682 208345353 761889912 651538754 877064220 33834326 382831281 1032932 24852721 123856825 158559149 802911317 944033213 665094348 937101923 451837909 795140535 269860797 568547721 852246939 922738669 830310026 878470017 412302864 516811843 970286460 976018245 956689445 987448920 228812753 510741084 77122506 745183777 634656309 714716773 137258664 906248995 591561224 812022747 253921441 691821152 303730860 374562388 273884953 583737232 708361875 924759450 252366705 599211584 401889429 808338991 575313478 876205897 417833453 851839801 556294788 622502735 146355727 637278103 853455018 952041677 900592337 923998579 293492261 717841248 364849596 541375390 825300752 951202601 643761332 871698411 196706803 895625969 317692516 969181155 336826619 439533941 571239851 958156730 397895379 694579819 924315060 930769976 234486825 408506111 787498481 814824319 774803857 785720080 319157415 439238411 577917102 578024461 204034922 549456348 312261159 972486630 217434388 995923865 695741910 836901773 863074313 921601636 239757634 874041096 303106210 343514323 348181932 439219436 632850023 939635390 283051829 696648376 616312975 694658539 965982921 977857540 348185128 945478441 685467653 975055701 999331911 999687634 590537349 837875190 102914680 664628298 782641538 785443381 779374553 917899086 793419429 973081120 233490483 512485596 64380253 943555735 270761210 996755470 278242727 655378233 489926968 578024349 756636353 912213317 893977940 965785333 231247972 454262553 709823069 899105022 921698888 973625229 813096694 945829170 824197241 842765149 456733145 835407399 820242308 916947486 82426237 564920920 461187896 677699173 897076923 932162876 588311786 845465996 325765823 567026546 49726008 356896892 132234190 758076164 348162019 489408313 680576009 693526086 692542989 778691824 818741396 840158400 469105328 943752304 729561652 747636657 912492468 971940894 341158314 507012520 198365950 424820047 19661463 425246813 226144842 738800185 871832054 989768531 391092077 623964393 316662267 974878145 946573420 968262393 504854354 766211582 874317540 959578006 174252565 238265890 995637085 998166436 972456579 984573294 860874590 971014655 671938421 851550375 257948469 983368209 138327973 855500999 688968449 970446225 781640234 845481759 852243695 989123796 495022702 600438462 900513647 946185848 808551288 993254203 184969000 635964459 269864802 652861616 826422 820466542 236127220 299348000 963255416 996860766 877281499 918909701 566054983 725948700 622244052 764382937 380098390 947546911 113867873 941702319 500047509 552655153 513768231 752664031 426058398 571874471 422793233 830572786 615801010 694821421 291209811 564085215 899503156 913075230 587131828 618345203 938251107 995904727 892819715 978386861 434853410 802651899 561135942 896583691 429899863 579394156 135539009 405690450 337353455 711263245 514406322 683253703 929135019 989582177 246518760 711448172 828017143 889274972 82173034 316517702 63236765 199419690 32425381 638257117 654321404 655251416 596435055 712490349 736687792 748419713 784089445 843464776 911801151 926711644 540759941 960572536 737324923 972647281 704073510 977069518 347659264 899650602 858813702 982418935 238729978 387008586 689868259 748439994 19149735 105116130 437843212 704190635 80687431 983174615 623123808 796387453 844909619 884112778 159407880 182170293 101380321 860326533 113659901 620590863 212923161 459811288 796489780 830594967 639977365 982298599 196892544 859761606 759728159 942922483 712393592 935252863 394975240 954505004 409860188 757627037 658751878 763256873 406074509 866117361 409213895 616955905 135123490 397379421 174113859 793724877 51054107 832077317 809304991 965964381 418848049 638414667 247056274 522870240 487162336 946403048 560356984 618144680 83736287 229839463 393989493 764691676 837381331 951854164 603274222 716938675 292582156 998308550 16933352 655783210 179248321 324151654 315377160 492541136 885401755 915207851 348575736 487951155 358346496 563691241 423419590 467283080 215802203 971603503 130867263 724396766 996849403 998492542 532593364 556913386 686914520 715536004 142451164 343564865 159990887 883517667 146095218 266704999 545073476 809980916 34543691 74969307 540383098 779205637 82020826 786678780 421417655 727488831 290537210 778697879 743491529 781826996 136474216 344060520 611373120 676331709 538275829 835460738 619563124 638673172 332548486 782544710 495492895 556554725 643337835 757399138 416949942 487192356 189842767 922063335 30346108 683790431 302528084 710422450 267806517 791674619 167572961 324988254 697195170 865885794 317697920 912476443 455509741 740698235 720594732 798817371 643505355 880236734 513644075 935916671 905835253 985886359 681167370 780109926 109361750 930775128 234665022 869369662 740401512 992516353 763998340 970552105 340083927 674539872 247489381 935281907 279339448 388713124 886638585 905390988 325183409 930965527 476573275 729799692 615118319 668017099 782937263 895846837 302835819 943076889 763693902 837126025 206960629 651867973 812195198 848239138 376936429 777798552 744915301 868899513 783920307 873952502 202998619 283328404 139261890 184327434 578827299 722925470 267385718 762036426 381999085 387494933 958785073 993531805 688082674 758122602 635273341 635323087 380804259 967325078 863628094 991518493 950932028 971871929 777483563 823402661 175856230 479699892 313847007 618997150 282053238 487458800 174717747 968087376 31738350 181777755 42044405 549379034 658118825 705207806 602512740 897504603 639391413 799379855 885470814 903629431 100222621 441642826 377575482 812558668 815926976 830477681 63672892 420921234 678791957 741989498 710606466 886014324 461156977 953137623 757232196 910226988 23010043 509554000 932842486 997696197 16765747 836549402 672058736 805907188 833033714 834808477 789197973 880067060 151564653 235155874 715686627 815105158 518892251 604638705 302446767 386872593 227298644 534976386 469010635 619195758 983621576 998716333 493260178 713574428 213193211 391726635 59304965 573716233 155903366 527522148 61527239 634858085 638726478 819896484 432714956 498252558 399179654 855120729 960971800 991142989 941319235 992190933 363331480 802345368 913646144 931828867 345429185 736917162 965336841 976500482 493749118 637371965 254379987 862818146 967555055 990743323 472719049 509904285 799321798 814993747 816043891 995347811 506776961 560771903 176372964 885558919 635309546 794617538 209956435 524278083 259916298 808577787 699383049 870973462 897973150 974385936 562295325 626579572 707650849 779146557 348598467 385052012 705075579 828009015 543688755 607825776 524628616 920388695 655188105 683267678 599402317 635834912 154394013 215295007 202222705 545590129 704731554 939442777 219667778 778756054 980504511 995669674 264948657 797331118 755927778 787030380 937906215 974478217 547606534 914611877 484805127 954448505 243857230 930171655 347802431 681669212 497475153 791135567 377842282 855829166 922692942 999828626 327102217 835995411 669015871 672355514 767147815 815209821 650058335 674078644 165077910 498705796 738497857 906616839 548598747 913096192 501058467 836534295 817546694 969425322 547517922 603979887 547999558 642755857 372859764 608336473 406164175 618568362 449098420 529842794 149836660 201474146 655993485 962061623 54855362 584931928 372003434 985683655 511218041 833712486 819739019 941138963 868324680 949593014 43851082 510436991 421759997 694402868 710512637 797724058 600864212 916713867 754192368 763993819 952809418 977998824 451881606 704295603 800886804 981793555 89538813 433214130 732111249 986034593 347762600 595843112 393329288 855658656 407750473 996479143 626357755 824030915 112358363 756693317 538079649 705047532 765047208 989468564 838964380 892943670 970134472 971398802 616289656 719790121 874645479 991366050 666938757 683795722 581293570 654271291 636592145 830252640 551655824 951540675 687911917 703026400 667940533 748379098 493480117 569335716 56030486 564587936 997591086 998983289 292559925 461711066 132431719 167415480 169402982 754497090 223971754 624236719 999068010 999295693 876676769 986763956 387937190 763772780 883922635 949598463 653838901 910702891 518110788 601249479 212648353 492857588 623981909 837114290 983948747 989051297 216411288 817848605 221974374 787303716 780212696 952897645 976560533 984217331 217854955 507280781 758604641 956001197 417164096 558149909 612398090 784344883 805176085 825793850 327893780 491162982 3359071 657759713 846332819 892183677 33487092 976369295 720100582 820781817 278486796 344019261 369638674 516284127 20362640 763929480 625078029 712033187 198392790 604319273 100110873 346177675 488103055 721965334 899522502 978941086 683714322 758295947 640348442 908084300 87044272 483100783 278015218 542092897 591802275 796692887 997215051 998753919 748268665 808527635 15715853 702866299 758463091 836311674 64323584 378923429 116969046 945677275 869643529 949824324 456139527 535650650 427117419 595593319 279060573 897022857 604352270 974325119 592753004 987495659 529859245 639048148 426503213 495177442 596700705 741395405 840349413 863983282 494246452 704167109 508704905 978764307 95402628 888890505 634949458 676032472 213999902 575801789 78005615 341825224 851680669 881380298 518310442 585131261 556969343 978953578 103767470 165416768 550670039 988632109 321262528 410006289 666513480 747220171 429270259 971233543 336135596 808539386 269534463 273358228 286980189 480353711 209463013 984816991 465975279 957804085 589004194 797581838 443570169 628190075 813191228 942664066 421947154 992899267 509600027 829253936 172464088 859495802 364870814 498325765 476254931 831312419 691524219 899110118 93456562 537164603 425418969 478115151 710431612 928537147 146933600 494401791 652482579 771549042 406528974 884100284 180072882 597897412 921421181 975353123 261494918 876064226 807804346 812824260 903789678 997606359 66076653 995452618 610147012 712871438 661949632 789316290 903483920 975963843 919522694 923072134 66189574 530663771 475678727 612616009 374712311 865738252 702547470 790260133 830335826 944505597 886693950 908338139 473164165 800554076 650565764 756888751 101396507 714389478 632729763 823600596 668262666 889349598 503249763 948255648 637155622 797233549 435162698 973397762 51559913 935087507 700078012 834261492 9205903 522618346 568734121 904306940 537778241 650028753 680914345 922371898 974508797 996208712 784880977 822134944 995774706 997028187 739677950 922859999 848098359 999918728 586123344 608266937 292658647 482322244 581169417 813501412 287371770 457385648 850697431 896995841 31254357 557140700 803771087 931528266 949255157 957551981 528946558 661090590 420180380 482946006 735652391 894403797 569416633 796654356 594636915 965605856 35596544 700864171 922058605 945922885 493810566 908443348 591165446 911784278 901981644 923069107 655139697 957071880 414444139 761516928 617944157 736451703 151025935 341264983 315889873 790642878 629267666 877899579 299400863 742640871 613403458 966710848 556039152 902197114 775236404 962672588 228380050 827532506 73728873 421237082 202587010 985862717 223175883 569984160 11911297 492754745 731112327 945952542 971653492 998026350 895898008 947273362 901378158 946007448 25892386 440972727 68664258 947147952 672778324 854018881 593971625 753144629 376617526 939817879 473277795 780144506 405112996 987101696 642913541 745932261 83434502 626698904 110229437 155343285 818150045 879584194 616433445 673852607 370700570 500753566 401276592 609992661 398478832 859785503 434264186 524715009 278243671 635306611 192074636 951886263 209571933 496411853 740313024 983533082 551966298 940711702 580049822 650981011 528558619 894538518 500440093 874238140 162231476 370445237 122301606 386454273 78637152 678158717 930696005 951226123 928017604 963747005 730029296 888501238 989710903 996680455 191350564 483178876 600835280 785725395 94638105 822097524 120369234 553112376 350238950 953066040 605150230 896418467 80432858 358701681 867148363 997277418 87598021 252089829 265387031 739152440 528285005 624132451 623430561 676474178 699837099 727683808 281112073 507000091 133423116 286675599 680257299 916811127 196764900 331504898 430565347 818178288 988250001 993492997 18386603 531890480 880451350 959202884 577662389 725181923 583267 856564462 616633835 786265496 434853110 460523634 412932373 614927686 870510382 938405619 440668692 634774191 299841259 365652440 527190117 726327225 747235415 854657364 745326813 775638720 887627945 900013029 696715088 711480863 941717443 957690983 888853287 994634065 860201874 909539435 875966180 950939307 235606194 269690426 943362258 987578404 769128197 893817747 675201726 908168453 732633306 814782019 198518590 560958537 280778309 748115512 106990152 405118382 642466574 819886822 444634726 522826741 791650305 825720465 203454345 698210693 555606196 833038407 329658838 555185099 532812725 919809701 198349342 424533841 82025427 131640352 402502169 950241423 843251029 902462845 939106096 954299834 791537565 922879266 685551022 990275825 603000312 952891734 391035977 892018841 674518238 993388362 795068086 826023664 981697558 987861096 569242866 705689643 714082722 938546774 893667681 901003764 885755230 996822440 525635301 698506759 393370883 644682326 658398577 990689648 348378204 544640422 329115332 990076202 87784837 102800769 44650928 478130033 126058588 394916638 683643784 979940051 842718457 858355669 706331547 838340502 837482340 938371002 29814412 748165285 934570237 944923370 806337373 990689419 185943348 451532566 532032748 879622280 552980396 663762748 780036960 805166149 872513177 896212041 702293645 934903317 915907470 964079828 636375431 876720229 264508762 533435379 791780237 977271802 905834891 948253863 178926899 416146098 183644647 613126617 841510339 996323159 659973567 978039702 625138259 714207012 759355567 961047499 737705335 957239849 742870399 908335240 89093463 620338007 774382428 967240138 84765575 213670457 915169506 930138009 865467987 978687177 478496036 614637850 48003443 650435108 226364775 403657068 452366540 526487966 659017304 884801692 662421910 852786156 603523631 628910521 794453497 901775831 757150027 801398031 24343639 510672747 383334925 999271684 461471174 811125936 242484316 969994029 776253519 880223015 122154201 158393488 668987060 814586358 114772803 472280280 279115382 849624492 878168051 891064747 759622731 920201134 934480956 954120209 319079900 998274266 730994662 868438805 244931753 904846428 321568224 924528390 569766050 956859525 233067269 980185599 630946871 695855047 588951668 596166808 491121038 723657545 924413784 992801440 851475766 851984988 91754471 412124095 154668683 650389565 949985391 951831139 866799613 881950498 874793002 880687565 275441325 639305953 516825563 778607520 297036460 570719128 941771364 949650673 191738058 448383994 417000151 716838642 826207844 919506403 78160990 417363645 351720914 698061556 558450182 603127141 102128915 705838422 322433897 981526335 454813255 770506781 488076801 927910075 812552240 889830157 996971224 998109688 717734580 964150219 715068598 739268439 410175663 811531320 503921230 784106136 721832965 933175196 106477523 462750308 461850556 628286082 208299089 917909322 962572268 986804746 568636818 779688491 406062238 873887664 507500924 664461818 456506817 815054658 742926106 895747657 525074858 893046119 786001183 828834243 172411584 546694185 450745142 477004332 705087548 973778342 664096029 989236706 967043836 976595165 622413838 843394856 142002949 481255913 726530339 847354213 337480564 453891647 56396733 113481003 730697973 821283453 296004244 561083320 118256708 581310809 820486930 924760772 496323470 756979253 248618720 816540382 325497032 815092627 323100255 494234635 93485582 868856825 82087582 329508494 469089831 491426312 374840435 878533389 834459316 911723177 974306709 978779936 799927375 881893857 548321018 698428237 865984740 934654199 312222916 882113202 593825365 813122043 518725816 617918455 295688031 845493915 428571183 581515645 992049915 993113903 274370761 939150144 652558152 852561679 307907816 977595011 900432546 981019551 413535307 472639992 145124617 983159940 160514790 700803151 944962260 976123007 565097262 826272962 968841172 984094724 190047025 485321384 250928287 886862243 984230999 987487323 714270999 951164232 291330428 347623295 214948622 841731580 600031562 835326111 803016187 838148730 999269813 999308465 708605911 839146754 604165789 850756369 499822789 862166611 996932553 999217999 125116572 766158862 914018085 925474698 329432255 921085145 337486973 374005508 391118468 562579449 490892204 925255125 123437430 210452522 588628294 949519478 67999364 246324223 926336747 954526740 41956719 390927554 981342410 991562002 38681500 929433553 435917204 579629534 326809231 396729930 60373077 547326934 997472492 999428816 958512497 969948318 567642880 998180948 957815545 998559062 964610952 983963914 46979585 193896421 127899241 689374311 86801566 968433752 927462489 940772314 673153235 686790934 390637221 813441727 681389829 984002028 175770054 211905988 522899929 751888477 640527025 755407096 591691371 782109137 569673491 861579139 265411048 540635291 162869081 562999451 70303202 98775356 533171503 800552005 301500807 322517354 110152448 419709244 299670109 358546342 987929573 991035405 744994888 780573015 919176175 941351942 954261506 956159542 337554992 542324428 767197703 844530429 785712801 901246819 991087657 998053336 97984901 875768732 642242750 924994829 991102236 997512623 963656055 970040820 391070830 826896213 704243991 917664196 914278093 928551586 356963302 402050962 953941819 955234471 231760685 704650297 844413115 993762038 973535307 995951225 645314548 694216677 966578057 971602937 492019009 889616551 125041563 526725223 677750044 725906889 76768181 127275948 689939939 876032068 248020817 791744802 461438516 484768668 434580474 694806839 626953230 868621649 985331237 991545924 485012330 611804429 403904846 418513010 442671588 516993575 41895503 204676236 90573934 92919178 461404621 656372921 274025644 757701043 946719988 953219784 724618269 944685761 421846103 429423389 793266560 818124660 850377254 967070685 793601423 964177870 384937412 821384895 657163447 772792726 704707719 864752116 257870636 804162713 320867161 728078652 991128777 999234743 171336678 523011682 529908028 721082052 571609925 708823148 709387817 818890132 122632818 464722983 782612605 854901839 711402524 713186606 991233387 991400459 92814181 623379440 104505899 370390044 603826686 853274715 1827679 941355539 427525333 707421693 323140400 835577040 696218977 722796010 854936179 921882276 986368753 992808219 22394912 434228656 616485433 796084467 904806501 957304437 139152183 782548157 882796577 980754380 297932975 542796923 25507798 336185050 428393428 965390746 442252687 594058361 323314930 355797420 341901563 454737147 30304522 34558569 567470653 721747151 14697876 375563341 295150121 525254247 701845431 890809682 413957114 460755404 770648156 899652935 567444327 664062067 473850809 750373536 870786092 913745412 319211748 437976902 693419988 828254848 692299051 803179842 471098639 704159420 480186106 971659800 866165017 981239951 685958259 908688900 864763528 977723043 454577584 812539943 633182634 978810445 583656885 747763235 725103150 955277728 168908709 487450844 499143485 632056273 472090412 696604727 321309388 498056553 659682755 679881872 861576578 928282826 755098234 819867987 105376870 921242183 702159609 902633286 756775148 969880335 201098779 209467140 402552756 546953330 532972066 587676406 999506020 999846652 928776078 974097943 591894016 623630879 854235709 888268557 135080791 239149531 180628265 599906270 613147602 647522700 157487380 169205309 645948691 716481438 490630027 686527388 290596785 916866654 331911012 951317039 742940098 935829850 708761748 948665739 841085815 847812913 714332816 805247207 534040167 815562321 165073835 172863475 453960421 841223721 777314218 979706428 893967408 904962493 437773069 907139946 517431412 992438440 168989661 642237183 503358525 508128663 193228830 854947626 356099002 636857326 711789547 838653066 291253152 713285470 514956636 775443500 989118207 996302907 137317306 179193862 84944343 345015440 542015836 899514276 56047282 826640841 138406572 789209713 899831816 943907936 403865588 476538608 462798861 780681588 873911754 893077743 472097690 794914015 195120030 613630982 498285797 954217217 632361509 717453105 373332653 778963680 826826917 940445830 572223311 623155368 619802450 960673659 85394424 281861707 353646308 837008963 609324287 950429855 675889063 743199236 754550700 965915285 216581248 927655075 923256763 944924465 648787822 861245956 547412681 649481337 644954329 913396186 893253906 971331068 261933575 678612453 520836168 615613592 702885184 773189004 922002833 938919404 364862362 775792620 857403709 987408020 90553943 810334877 5547757 947676505 708614331 896680296 698475497 813682050 245299807 746319953 585755163 641379485 721956067 981591194 248014875 597398611 859035477 865725701 397307810 813002760 818685726 948988701 321693072 823809733 957339165 978986150 734728460 821047726 700077798 878262598 803322588 970978560 57971845 400721458 616400454 839396069 222393642 991644270 380283053 723492321 603547177 874596130 554610635 650708296 294734245 904803312 989512541 994841381 306636569 360455837 325616499 997916246 957186109 979147247 914177398 939645799 991288168 996392486 217093298 433574668 420080472 502250886 349576631 928996533 704523080 750296427 932571743 938943174 681186273 840185576 923047250 993362152 635839270 986059114 717463723 878751300 837012945 910823404 157463301 964272501 357448043 753323478 11614502 213436554 243075159 647920438 553866482 714469956 957137554 982021408 858021702 863008558 326484620 822972456 338630532 713156190 784320747 837342183 282015503 674109041 368802796 369381731 747288706 761013924 342728571 886814302 848063991 999020597 611670373 701368636 794381502 912544134 614860484 635616934 411955794 559748299 407760053 982295818 38605486 246475207 631860430 905973060 449598163 688547270 198660943 245810723 181051335 552107794 521109618 868760262 497202713 959285979 94656661 836855961 491763675 921234927 30007125 680564891 339520951 487396992 524063081 753829417 605454174 745264941 385261285 622550606 76344698 180891451 946075053 970498497 444723000 638859527 679232845 744298147 359798634 373772823 69565097 754920052 774252229 790032151 44111176 572017504 767466309 897567352 483048659 883837894 500271847 872650152 451591200 614073033 264369856 382983180 676145544 729569455 428028007 550729603 36103089 120338487 621367932 890052264 70767000 824394597 208404292 618320904 927756295 982262420 676991952 685163938 195966187 779851783 61306180 592096634 776871725 972417191 925374936 959378152 882607445 970881882 482214835 950994824 731117131 765252526 548682056 591609145 692197742 923033574 789079548 811576150 804162340 997504313 659875422 702301707 742705832 843681692 25579744 291819154 632592090 820233719 16693433 104756736 667764620 910565142 761805450 906399962 937699126 962429685 354914222 575784259 27362828 416854998 835283343 835582423 212253422 830089018 113379789 154939277 680731447 805566051 820074699 882180870 476808766 802425614 791936035 868204362 395991672 984174493 119698499 272674253 889868772 890220265 775923209 817895455 640459722 791920379 854900827 976934555 496501319 673933311 428147704 548096800 693227915 921690903 96367201 788560391 974403697 997312573 34261112 296726456 482488940 985805726 199041680 739225471 414535288 934454515 580578272 718896248 327023733 968529546 209664162 370607897 699331120 971044277 639995169 888174178 652241699 704224784 700884831 906040422 766832288 912553295 826253395 975598586 722506104 774694148 956470561 998046801 75441678 955274217 418850350 751291768 180734749 207914191 360112137 602446833 5481925 713435028 971516340 988318404 392560360 585787829 411214953 945356327 207131508 660336221 855997925 978247490 465965409 912934619 163863624 463731540 588438155 705732322 915877122 920158540 507851395 862500883 341583851 876791165 79895942 746614997 120345227 414960640 493821269 626898404 454993459 640149844 387021385 745662489 993246274 996091305 298804307 880178384 229494835 497168954 199685774 758383765 301775436 692034152 511719600 931057050 488410870 788071148 792067504 839614490 134127218 416968168 755395313 776102824 475736539 869573964 702078837 894040425 514033514 927381151 643371471 732150340 188160898 698658760 803416872 903276717 222520815 915931699 674119901 852326641 198352123 234176771 282206768 813964567 654432933 857892755 220912184 758235376 872460900 958367531 548134451 577614986 476919035 990378831 214203530 282127217 21095475 734948522 359888027 429671484 188559740 620843453 84047717 969760974 966821483 976650538 106563289 873838500 76052055 907915093 332401992 576373683 303643047 731495113 3575817 299067382 623597432 723188927 546062243 714258674 120018490 358037398 172332426 462708235 256541893 466577299 997832329 999343639 659848000 848452262 471852406 968824919 761839405 991417645 826644323 991426367 645309876 960303106 156510094 499216552 252534507 492234460 55076901 200870694 676424089 822831484 879163453 901700276 583998859 649517615 767357964 847728012 987812021 996995076 3079546 594537697 500791051 839754779 708370744 817384054 520716176 744112596 396401372 899440176 667931141 798342735 542648301 909987094 633152886 763608227 180156730 896967419 770376968 905424033 10888493 332697727 75428728 415462125 593565182 596894660 38010034 650307796 985254008 997791689 525132136 585098715 118630331 313083395 371048508 686648034 674642363 694088645 685440266 928076640 820082724 846087148 113023034 838503154 593550206 603956017 786006397 853675771 268003261 440176812 394708263 945861518 771801889 920781286 802614510 873786507 753183154 953249779 479720970 670443103 758545698 833217991 399465935 721061261 424555114 638129259 175474667 836735422 765291559 965593875 455036511 699470042 299919057 716817287 398679246 410391542 384448225 922639485 382563281 458040031 51668358 904041820 16026524 594947303 344640191 390474820 258931998 503683370 149839628 411052416 22819424 107505311 456085375 482317070 769688377 880020488 791828884 893340084 866484879 975984710 897746911 956455998 290547835 809563730 803146450 938169876 253136196 826134186 525689318 657204620 121996746 699026848 634821428 688661300 121266157 162805038 143868925 495239584 512383129 774660133 973835838 987157732 751851952 919138329 429294312 747605225 238047014 843165792 118895092 314197751 351911169 514431692 918571100 934649798 935751041 984747417 101784230 301646193 274104886 632098224 78139207 412710271 711482500 861639849 333176375 827658872 350338884 570273654 308465069 866665189 888150304 909985938 36996113 909092997 338548095 368292050 59068344 992418068 345935188 899508425 953275227 970316705 98699337 696793837 287015871 915023372 896397507 994324791 170166057 780508071 90370239 388531958 857070884 881305858 644513469 978671506 177907282 513606347 986936588 996590613 219592522 767993633 946390515 946861064 244905417 807428483 116363010 333194845 531153237 765555709 214517191 986281860 288916927 697527252 884606221 989754176 557546537 744778802 596161245 858191023 550906053 710275143 925860426 958777775 655480470 976003884 883095285 958702773 55693393 630975807 476061083 609713679 457435509 984100397 261073320 294387862 430139417 876305830 845529704 970162807 31306366 326399980 217180077 882038414 380227555 752621363 537004312 566315980 371676777 846243453 437948554 458684589 248099364 703755351 4944222 735284360 58947265 165231898 769984613 833414251 529851689 748622775 12848588 37703663 227719098 485312273 421377018 816118098 197521070 964222864 692447502 965858351 408166641 793315388 407453377 816004764 896326725 990356884 164176688 265619435 730541674 899202224 610875783 741524483 18581952 347483246 67784962 535513816 816465766 867607332 100358572 426305630 288113190 730665252 142473302 962865160 743144551 881258153 747098471 840472126 577222491 900688697 605053128 669598512 384374354 414034541 770595428 869211692 501976387 892847753 625864152 691562197 401952040 634051808 677850012 708114569 7897641 287299615 292739427 583090116 435107358 629712770 880853838 937868656 288393674 939340187 293063656 469506084 852823430 856199053 849343271 915444586 913273122 917934305 610888497 808480726 662967803 976234804 278501120 434694899 630940142 851644992 256210647 976074363 511213098 828971207 567237325 788007397 881609500 932140622 139369691 699297674 203178657 510280315 478483146 954176370 666516887 994660650 258333629 872776935 831110398 995819864 89209885 832922267 794842533 833659942 547612653 590851846 661214829 997291761 805563596 875573932 644531023 715263711 758481692 942737783 730306251 910657948 983381978 993410511 747868971 946432813 236402213 746987563 600138538 930373753 758761570 826435125 45373196 588027650 117061409 532033673 523166094 807519643 705367880 935549578 230803181 568967046 294053365 623556089 885809827 891258878 371164449 482338377 314114427 868672878 241029612 674668704 73737044 199364357 734862270 856917355 789775267 918225464 353466208 387217216 211007412 602016446 413915935 610018440 881624457 986295606 203330966 654854507 431721933 860071123 819230381 950322156 87454885 885352490 949241226 999192790 545564039 974351519 225191744 256870270 80148381 299995573 526186559 847570651 314345725 900327435 281626550 739297033 349986125 720542965 597074038 881157101 657056566 969880147 783823714 826266560 203768589 648023834 406961342 681429455 203541662 342441627 227967268 838742202 534292864 921029346 199111880 667254254 572309010 886030661 768695885 865686143 142094267 339242041 809319811 811498975 350171322 736630692 929230220 932358089 660324447 936809758 954169670 973855561 642063049 981531855 67074035 759472266 790694929 997374927 465482458 739171313 801714983 812419213 476042196 791723755 386346578 839360632 185126564 469944214 762435172 961184487 249349338 759335430 939883116 948102140 190393774 869186572 383698664 806244832 623061840 983921094 977167928 990480408 406625076 675167247 773196177 899260841 849403411 870400196 211020820 661059290 896678339 915315979 629818636 876299016 925695402 937217343 968890033 993516103 696929593 799664699 120280988 597822302 870117331 972791722 587761329 678726897 717326093 843582208 338994250 590416581 845649796 921702587 668848470 804227205 382126960 924583697 945598214 968583804 619860061 877635457 348922236 502303970 53892310 529170440 788663661 816210624 268826447 561519357 161253772 456475344 859697328 987592744 338653243 599148864 177243955 848996725 274413275 294529957 791883637 978385089 424486720 615695385 44339192 961679783 935870483 964077109 826895009 908128235 735336416 867157019 657534522 763983310 482419438 931236752 484452957 893921872 207032138 241979193 955067701 963463689 681262197 722661450 302203857 534367049 306615737 890578229 831585886 952565987 228721024 920725932 799428108 906237047 266988779 546706677 246077011 953192291 590126558 690615050 936534720 974432294 201078933 240264369 794251603 903320233 510722722 548905292 18707593 564040188 908037720 938941364 315502863 631711857 373286459 735125435 527998352 627749249 915717953 945036402 673932385 719331755 195126074 744210836 812520357 877445666 759086099 987544583 847201285 874999124 896729024 968372728 879061594 993644539 992443660 992766634 201018617 993921358 709351482 894942774 342952739 605760164 445667976 922796020 248950775 993391906 642549941 780086799 52252456 183977620 412262694 922445229 574243247 810478250 882473619 969924319 138374087 307851195 549038723 878243321 766062485 867579257 872646802 924891633 529135575 623949078 784661196 963225640 62039498 898901261 422592030 429595577 167024260 330942044 603257135 645012963 685837849 783681945 185093174 599278874 531216918 811295476 400887109 572205644 859878183 995675824 277515701 415038472 580009070 832250590 442607504 544725857 449900882 943354638 694337564 789409135 589443564 808569829 731439321 942202458 885897154 894494573 401446717 473517307 115663865 253107767 793904055 825562884 58747970 916008674 401951751 719721205 935429476 977213801 481739581 720853574 476334609 552431552 790121666 807469706 822894385 936369472 696295974 898418325 770739803 857056002 556290180 731088557 459569352 675633725 153584051 531727211 281955898 611971089 934690157 936045200 716769654 736142362 274111423 669095836 357430408 725679191 761373153 991580145 88304503 677609819 486009850 597575176 632881545 872705252 335268969 424921795 27593409 404657497 501331010 673951020 391885085 597945788 641238332 886830516 78822240 644909670 454589892 637232211 225795733 321429232 558656627 894832891 187682365 879209321 8761557 29183528 745366747 850120383 733905812 868770916 875005474 922018454 820778869 901745942 738801952 739598782 346918511 402719569 614361660 671979184 839005932 942072596 680281327 914056290 506484947 656116269 604399811 905989189 170946678 839220776 690986031 784560419 728163968 911892632 988561316 993744818 638891877 744950171 802057945 847174412 68201794 381260563 105769132 197450808 722399136 982864866 810862290 930687773 794318473 833638654 143641687 585614026 508120312 508955996 269012224 935267381 690049597 960700794 664774812 902766726 567318409 592528296 458628220 622746333 843319703 928994540 856671399 961821920 606107337 659991999 886601633 945804636 260709640 365171418 406812811 642215733 275212923 803403777 920799188 924160875 461315910 569680022 370172897 834246307 416301068 885838256 898515743 978458471 595202912 946506502 435050590 472523751 314279417 377135929 864790502 971552021 849986489 852229891 138485213 870271520 653131615 820466762 466385110 783145562 260993895 948097985 369384430 724825430 913181137 991896911 236522598 617964852 921431830 989453931 553044603 675210095 541266183 948464797 355518929 844043387 898582157 914113572 853048821 940572421 949689092 982615935 772134880 988627381 493011904 509810462 43461017 451218406 729208798 812997363 823650553 999888735 548446650 620187103 517948413 724100699 592938194 726045282 828070663 975218848 259251238 296472954 941058358 986718545 98341445 120519032 359841685 687157383 584346232 832370577 575033623 809777853 604044629 869995122 460248034 877975530 260513713 977090356 26054532 353985091 879068751 883324601 475460624 498724882 551413657 751423940 975802743 980614087 532298944 724371400 480844642 864908037 738592882 862074086 592426566 820665842 755287031 820260386 743172419 892884722 275368401 782244271 936143495 937617751 530171073 651686177 276861823 431481499 150429539 477197891 776998279 949840624 355982280 711689556 598758559 935307804 42778443 904907066 124132760 782631065 445548872 833986596 216605474 876813163 451813739 527888800 440450437 553105079 158256860 857256958 815955105 857539450 147981530 721205122 732467830 991147398 769379391 884077572 914389262 977989745 252232863 824302333 757723350 905874746 106420446 340294746 603709085 710104978 302073578 813612170 289545801 381275758 649742520 974375916 675513680 696672498 830423497 929356274 393728440 670720309 141410938 235381392 211590428 548334725 182519672 960651459 567113766 991792662 135808035 654504545 884901612 961157032 262613091 981806406 534183362 835358001 294228688 651990311 873235696 912913336 351256247 418319419 626335677 849454809 834457164 838858123 537954711 674539796 409036527 483254073 893168926 934765307 405962200 843540115 46328509 438462850 669150442 989942207 937686365 992730578 537407220 949972368 680534305 914282878 683823060 974460747 709226298 910313211 577298323 851823143 310958828 738307382 440630632 475462003 881159031 971149638 636878463 909594145 1698021 109842672 766458388 923584817 399156690 759593911 769977972 932867903 876663136 906204423 259812311 328352067 879417537 922181127 585612267 988085778 785148634 789250082 200898978 633083073 526557154 575900020 487616981 636445823 829670454 992932394 196619948 600588752 254982026 971623500 489848612 784482193 886137161 977923263 782722409 802951701 600561074 717011751 591596495 893088367 939484077 994476143 915642864 998074209 342297352 761252601 152679625 368625149 795975106 818948639 118565144 390931721 810701195 968590285 247861032 891685247 240042891 736896900 366925853 478118800 55149032 170426157 319202640 826737094 267039625 542164514 12909 55437723 386764053 767758931 367197292 687709655 818376597 994245470 778280175 872283974 58613091 69631807 303881330 488790022 483976467 900003252 999023132 999087092 291924023 545474403 569253771 603340177 3259187 356172418 774508960 922383738 476851417 943223939 466032593 847904731 557541427 712832224 351213254 906146317 174204615 351191621 354098175 755034811 76836263 185065273 936407677 998192987 890506771 916236032 444689838 579024963 97706307 944922338 890505619 938902855 54086046 935393058 705679722 861776640 352686944 430889559 956591016 997757736 208873926 556584407 392046506 996054792 443533558 785196722 815167225 910144666 506378031 550948586 340935327 640223360 22248773 93560478 314480965 669004146 502716610 628422803 200893162 748906847 484697380 686045192 13904325 660962873 962628471 995869868 444601188 621190581 176292439 232074224 625546497 639131241 646441254 712968026 134447838 307915296 564550669 867289806 71455827 929209015 192117762 359763159 72898420 96134463 368541111 976276914 182362508 507055563 753507710 865624377 106708464 576664099 873283018 931813336 695326390 784574263 862837585 980005746 658726172 691811910 993100619 996383301 442954184 613551662 541908946 677811795 850278534 944395832 735067534 981740009 359168901 812804465 354979013 564964360 322438866 753691505 420568001 647059860 973317794 996572220 839713004 868030655 96439621 631794390 89697685 871678258 848180624 882439411 490257993 633056507 609169083 622281195 872507732 932235589 374740281 379982931 877044414 979432395 734563760 797177557 567267647 880708934 728729683 987242272 271111892 495808658 908745041 995548918 523874673 694039292 836905838 964883957 425743319 775818163 270143912 524050966 524649716 712673483 15586349 751900496 722723535 790007319 554338684 666957322 488274938 998254442 847558368 960985700 913793441 942178557 263032578 637503502 233878698 683119578 56808132 347758717 815415100 857945221 2152359 813921727 772413370 820702041 38799992 47118744 713369226 846679116 573825875 634691866 91457152 672610383 624067114 649280225 422561645 661294575 26108535 742766788 260221860 841412500 909318254 968512276 743134948 877627499 162736891 576645523 464808595 783062161 633259794 805805680 60264662 207168361 819612803 984240518 162255130 445173238 132873533 380676885 291618691 372190459 141133465 151463617 445804616 677403806 519384191 546702562 382341699 408956950 420034369 825651946 916861215 948779262 69459115 311726144 237869157 739220355 728070333 951063931 595219374 849379379 585726641 971006869 152474543 718568459 994762040 997845354 857199758 880113481 88409559 504849977 348843493 944053097 413562447 909000809 460903161 795373664 878874894 909142665 203991925 401126740 184788287 446070313 243620437 298351036 803031017 897950863 422437756 600812804 238929418 698319963 407258783 992837653 74660523 226779640 787457086 911107230 978289860 996004168 605616411 714213593 416005000 953408944 833929504 945560995 108103110 532289012 333488061 508845987 25444074 888045742 220522221 305914882 867679939 871213135 401524450 653407108 23748429 795338882 281548300 453608416 587943679 776905310 584525647 914891623 728578344 791666679 625938624 705104486 533771381 717754106 720248098 958786581 717608616 797162776 604923143 812891858 29201307 881782976 851546405 940047662 289174553 586379604 431280718 833784230 685405871 934031785 168759044 210692070 102234643 209127701 473055253 643648120 445973726 950104656 200852079 447272622 889904128 955228195 117273813 566041405 957301020 979875619 882236795 947024967 341437118 943419015 254420895 404588411 760404871 975053865 512534344 714438026 922222373 979017552 1229555 590117213 215243173 736980513 405007810 932264440 208950209 512778376 616414629 988781508 868346779 976224987 619752814 805287467 691930889 793310742 619273294 800940585 354919861 604145821 131297894 938357749 922676854 997917591 114369461 375127605 229308016 359053206 315466032 546375725 423850002 749157220 210719047 653963110 514033141 998073475 762269858 834659020 882003159 969561444 298909090 435660937 657526027 871483421 809148151 813125814 900711449 982857330 652387881 946184755 203231557 807812016 599627670 878523513 320338273 364826144 470658475 595629571 988515616 994742541 759649898 768785072 313489266 609445646 164661062 881318293 64400281 676393123 552255973 664193104 341068110 715608508 93796639 95246842 146520082 677757190 798630415 799833718 282471785 339192467 825041894 980426089 558198348 622377983 746649219 895669915 844370082 914287731 203720190 765749038 742855809 872528301 878642787 890316095 459876598 836692799 880280554 897388927 716095338 798191647 258193893 683654457 405899917 875036013 212971594 223639568 475300609 912099439 104612459 808592381 383492088 643696144 101594918 540978395 19872164 360410072 560474870 879289199 905084171 986961452 966104762 999956826 233727586 539406201 559501424 600986378 906396406 941354480 863483067 915656435 336139932 634916073 110254907 903004394 770551540 943222524 912251797 989981163 203927380 482522397 450788985 778899481 720129602 809021314 825027134 918167540 328567985 464741565 89417757 686590084 46314602 509822439 487563 412578983 88520793 305668795 855204195 944792000 649134329 890495648 357924769 555582442 125537209 392427840 474016663 701082033 753307933 996485913 467765073 925759725 516604307 961168454 791811531 855914034 854680309 970993984 82653142 574298218 759772787 963508479 156556775 810561228 945497610 960975173 443313518 651384973 909124452 989690693 724412898 856143981 673916027 927147945 858518632 861329628 822883956 842097532 876028337 983826051 568429486 817667680 132225110 469333445 176151989 670676778 428328441 840863384 194867838 695302241 830051740 974355416 630029687 667050625 562876744 685114532 415215374 828152976 380701922 780200307 673953770 992672592 581457437 618624907 112571378 188021348 594037355 796135688 381370196 465925133 419912090 650789597 104462231 982557380 767173002 800077303 591264657 755094226 373504993 691285009 520003069 629437064 316489878 842865282 32739416 411545996 628157107 645619439 802273363 894900438 816223565 969712837 164221760 399377292 642173687 733351610 410872250 553701022 49843813 876910952 980119360 986347550 966876337 986404297 522974611 692496257 257323801 827215013 383351138 670217991 237569959 320306110 890244411 941706996 466128940 919095398 250659907 596962220 970083408 980513988 935879143 957132271 801017803 826048244 787755186 803528566 141939431 700623303 944241135 969233232 526582872 833064897 7963081 486192182 286947081 940423782 584779532 708506311 62608066 958068150 909943696 978165357 312094629 420735617 34457508 999677676 639873817 958625536 407466683 691983002 855332343 930460877 936440 74162983 319507721 886449538 624922319 730461736 317160642 317713673 463924209 587103943 679689043 820087040 111004162 184708678 849516506 986826072 854380747 961343010 455442970 572174322 782100237 931190965 651198256 681296176 26830342 127590144 122260825 701796011 115597557 183137166 469313795 610209616 980582589 996092671 852399870 873341140 771049513 780165504 940623430 988039343 156971303 956997159 270443685 513015961 808800471 961203531 542234827 904077336 859938684 900066062 964474132 989506978 741896672 859719243 927875201 951857277 833438969 970921618 652140340 960947939 814879747 914724535 611279696 677560592 347208011 431875650 68772246 504099567 273085412 727528871 855980956 882378187 722388453 747942234 302159968 613117070 674225220 959790583 519998354 708915419 734173139 831108289 549602025 731030596 899486838 961119116 396130065 935909627 50920314 485778618 690011834 774575418 773186993 875442555 781959951 883044825 165156851 221368049 655210826 796047062 873539348 883607883 995899558 997727073 78410009 875124746 498255671 999086642 650258234 958719633 199234106 953461203 685617299 791386898 122781372 841148888 68508788 317909030 800015658 997195683 213120485 518657530 685773028 981101863 605549425 613948319 533997893 917515113 651259365 721152890 184955255 519348020 821327670 941093370 158739869 314039087 489228888 756220475 463966152 841216043 275173291 498827655 156108304 585614865 936806724 997324405 908465535 991131840 338745303 792974643 970433711 990199939 208851295 246628557 68063647 605848578 300045497 913997387 205579028 903527908 314689783 416821963 344361863 984688121 338267369 437073157 64210362 806132984 956651062 956915015 61472927 165482448 462967347 949026970 430293082 823774065 567222238 628173047 921228324 996062258 909703096 962737652 352465901 970553121 601164931 832434543 503919565 771891749 744083352 922893771 510273424 910521511 427519870 430415926 645783546 912193473 263404254 516473807 653412868 952410377 816303207 967931754 379879135 444025297 475556035 989599341 802458001 848054974 448745198 620372269 613518294 644156111 543348977 903435176 385092224 550970287 920447973 946897259 604491413 832176520 370777217 762657689 442989381 990543684 59795415 83075105 259003801 968431473 86584894 982736523 956114643 968959371 32276424 386131799 741471141 834901970 471645448 641376172 968116794 989336118 895774597 919554040 224520895 715771916 388647690 583643251 804661604 921936984 511962809 758985851 680209280 920503969 57231165 625135734 739938580 848130698 2641360 595365394 593673996 619525775 183594178 361895312 866806217 995385136 98700951 583667015 842876546 963953746 509608915 559536094 496671754 974418996 682542695 939339676 214066720 688674797 931249614 968891747 970402245 979132695 215182867 505408572 342348173 725462908 719387030 926241832 599108842 844362915 450290429 866582651 61583446 655089643 655991614 760295491 548248970 922025932 157638788 277640974 664142797 784079502 532092448 905470453 410993292 929089747 824202870 960140770 116880999 772722412 320580158 412532300 31511727 952405821 116942662 670100030 517138541 875017016 580625432 940582417 784138569 869559784 737668928 853388831 73563575 179128539 578732273 931872131 212764672 814823496 971430390 995218947 187080918 394129838 360640766 426342915 422492267 711103065 470859204 751264849 321449614 451610952 854764510 991012658 188111255 772917014 929666886 947453452 708230148 845717166 347714660 404803254 768173292 946834173 276851145 917535914 680916437 899550637 402956984 602339038 596197419 906447455 553766895 838571425 284958231 423919922 552699449 870844774 818519437 911905853 78377220 332179126 103908348 686831606 248580786 485133916 25303096 900089478 28349338 391139577 893326305 945839110 89132597 845540728 699208017 751107292 294578297 484492891 9063715 231535407 446888334 855236568 732183293 810570549 867908282 903023717 143059013 553165152 399451307 908588169 57163354 70403102 44162923 298552059 986111503 994531700 746688485 956503475 45018979 319727313 731228135 764157652 799964027 909309063 810509727 955602387 439443382 520219152 76776032 340240008 897165437 903309848 650233480 925988309 453734464 759948222 904166459 934031324 33246155 824609929 600812277 952718332 760172159 852365673 547291297 718032081 742248250 920883896 669515535 827325014 417048565 790487986 21821440 279633924 975699804 983580069 688036545 854164761 713338568 838285058 80720839 833545063 896505540 937222368 701517261 853735296 757621723 895925938 445351430 721170771 726066381 799229731 914207502 937230557 199891947 398567731 41468384 197030000 962373158 991934939 200360683 406526745 867704264 881824450 433574487 643817741 644977345 724842186 323029204 711569341 671331801 714086490 759384211 958414591 167453576 382044947 227451884 729716809 193064933 944632749 271399299 603744063 61932862 398231001 884785013 889817066 651526044 666885172 741053804 745042408 579824777 705680134 991292846 998636034 915586519 990222127 862022445 898705519 85872726 443946448 468294410 865439320 96746419 216373986 581199307 836759110 787351048 844126073 802625220 979257841 392096779 481040761 471875389 672012970 998212950 999776535 579011740 676021471 818968570 857304982 204831463 312568256 42084565 962220901 714974165 725211325 858785719 933203449 995577719 997428780 454104948 587443945 141087635 855922107 38347987 150165026 305495071 817425096 164578933 268046771 744766897 970352646 585388706 590434587 898721398 929969012 506352823 524398100 93672052 669855279 539110473 620791680 848796781 904939843 527221885 987074170 324731574 371333964 825115959 959113038 670788430 891942905 481814542 546510187 801762660 942810940 321408270 772499929 577145370 636721865 749153974 822675851 626734797 816319937 448475695 590465029 545331991 631607381 85149606 783807803 888528316 936064752 653052934 692814898 948165125 994050722 603905128 755450554 623153080 786104275 438980304 968540866 160308836 713805406 508115238 732004723 79936044 357609234 420312107 486045316 281831257 451477690 537573818 864061922 309947645 689067189 737310038 776787235 102145821 466056757 877670808 887820124 960246384 973368203 737337039 954790613 252304796 571119901 291223011 863475052 313002689 620216967 365277157 909665435 838556048 939893976 978124705 987780786 43922225 157363820 767913127 783063555 577200750 585036963 608610597 976348839 799388088 967885891 437601293 608493187 394107391 787815917 754273418 946087816 207906032 508942013 174126214 747661899 141602478 372115971 235359522 966888957 332845287 625906534 827192285 930590336 783136511 931701668 419682237 964355690 230038463 653444924 979294001 982639666 743560076 779899084 92621786 850189844 995497816 999409460 475371683 679747138 623936842 941295619 633232483 721893161 887984392 970445555 527090115 590404785 104809192 373783732 555495709 975272441 946399677 953416537 595343195 845810197 577158208 662882589 45088694 744594714 176917392 801441756 940506531 940906394 888475612 908949913 484071324 599845581 210908431 339617051 115165919 861427119 554487208 942271605 851283683 876464289 858042689 935746410 964351028 995431357 763526115 807809042 404965992 780245365 741238035 832960817 439697908 446202152 322927954 382215346 777577457 927082331 576562521 680846136 42618362 859349619 820303273 907394920 141891238 789443260 654466570 733124180 649476408 759414691 5889550 712055278 786088016 807700991 28127340 705386770 323282849 814275109 230314664 483178202 46159631 944946084 453051366 910845748 774667452 872955611 500255609 697173778 920483975 995823738 207245411 249169050 16514587 776136026 184323665 758843694 567919201 790479805 662866530 941361154 68529129 220774742 21572714 774068947 592360829 623625886 902179051 913628923 154888976 190401184 833714886 935301414 57143916 378069512 794812470 933504629 751120569 752213527 416491257 614300465 932607681 942928363 379232927 823467511 715620629 952868593 984262007 998298492 936979119 942095888 862372676 919583990 966750838 974601629 929759667 981967778 292520936 800693229 492607662 886566420 424553605 462515129 362359307 535106702 892972532 959996044 935012233 996936768 293626095 968717223 940305476 988293103 27374193 263042196 88229316 126688021 663348552 863268469 353073130 876036860 423738149 929645825 180173553 876081578 178044542 895259117 713936361 913230632 701066391 912599273 387557476 660500492 968185145 984256809 562442704 820523834 419588761 705073188 94486617 219686903 105483381 141460724 86476370 938284982 220205979 773879085 990277093 993159341 907299494 917987084 665073829 750152115 181573225 487773697 312863984 362873033 982256859 984152679 555800219 789393787 559606042 909008303 290586836 995339771 691699842 733934560 687023596 759021293 935185016 958870479 183299563 203676503 93809255 977116347 583097406 780998000 255127201 517863647 382975293 620563469 472648457 479295166 525226236 668212136 526585405 836005026 359516921 445959359 132006518 798164677 326553439 379648126 85054808 990063678 555167177 668726586 942434496 955590568 571109232 760831643 902904971 957080678 271948236 657794620 440788738 669724995 974646485 982950298 435073131 910968183 624868752 925732153 865651410 945233612 84374274 421994050 485540217 840903143 948446952 973268795 314794107 604935537 905409752 950350730 263966343 939079809 494190713 765114438 310493360 864033406 218442586 278786762 613723422 640278016 800237709 967537986 13521835 826544729 854470177 998715184 494231741 759103467 849582858 956040502 848015835 936676376 729196091 884093428 211818484 398480299 715653164 838378745 487432651 860067783 714057907 823901162 432550482 442289282 384512025 888185277 17304250 644805214 931661821 952493999 868472131 932022335 146119715 928839479 77629126 839286614 68556862 151037980 941853560 945492569 717806507 742882943 464035636 734002107 990793618 997949356 565531724 768842147 631892488 770437240 914910791 921208675 401863724 659979777 786721648 942973341 650744451 812881416 26642795 179112553 13330320 601937459 764233647 932488064 392429490 954601791 807278539 935362053 451456193 927833264 113615411 396190090 171697738 929099187 874983688 993646460 77598087 877522727 671693003 728101475 736869368 972372707 352894823 829277449 262423694 690092798 436408564 962735755 328240546 383150920 321092194 419192405 793062355 862281019 39947511 852808114 971002143 990125498 877145663 947576728 946892072 962447042 43077809 741972689 226997837 308976538 22039528 649618897 616524756 937969154 693922985 708803784 943457654 977060356 713124363 836761862 174718227 962226015 775976044 917091456 116840002 783572526 394328759 522469458 85886193 365251572 430455562 997455023 95503199 502504716 819563520 931372909 342052301 456334448 162921383 826976735 914174605 974853004 40856162 260898991 291052496 622328306 489721070 914139689 889608501 984053220 392085002 415495407 765041139 797524271 686480721 958790635 658787431 949818692 138773988 328663062 533680902 614618892 566206639 987973985 764299997 805816396 752122642 972128908 531959818 715558080 553456474 602393201 973817530 995065561 283249735 570922567 957403215 974465062 212905677 221908638 815387487 833620895 314887679 344522736 123542143 234761096 287354539 412234801 644925061 992588859 698412506 806844380 137696883 289983571 40827764 595405940 732628243 991587363 831855006 877890444 425780531 997140308 396317757 944569772 523293537 573102720 852195790 915442113 863546398 869139595 489636956 953788757 900009029 911730103 539621647 847961183 812948750 987498657 473513182 837072945 29060821 960023367 756089409 932878012 192864975 565509082 709860803 870505599 262599002 497481868 208004374 618549195 433887436 797086398 81395417 654231242 732411071 984652959 298172245 549147897 157168107 423852524 736723227 806253912 475931827 532781026 247389325 981755137 957899600 960198616 570738444 676651729 138633884 930984044 147053325 388360440 458610436 717612097 831544598 913730105 118789203 960135032 885555011 917193373 464295526 954606255 221427513 274994131 376617422 884001876 225494445 593864568 853557641 979769179 206750093 354795803 30301935 224616211 762745390 966834272 682393826 763353617 457747096 777129346 74728436 528359627 968271402 980024739 712089669 827158963 207109233 853819881 263744487 945670285 430114904 984053449 341015379 396647336 173384875 546892462 43427177 510175082 980903426 992620088 146218693 386524372 433132965 908904458 897359083 940217168 262564408 592829284 115860962 139917277 492267460 660544760 151352307 318175917 788278693 848927350 725408447 746851744 78708088 518287344 474378985 631906496 200677061 654895854 872277309 902516650 557409927 839461885 903811769 922473144 53976477 645582887 613229534 875160279 30117103 624200495 602735226 952240944 187496322 692612625 556467459 691199466 269068388 593423690 597506840 990242338 612785652 682066277 713086017 996399929 293388954 684584923 560997885 891264005 789501147 916868980 876039928 981477055 801604274 984979106 631124338 692713561 841326836 846103336 540799441 677391314 65338389 992202155 593232475 802435933 126129209 163596682 585614869 867231589 206560736 918901356 514821978 804161577 439962039 807191734 377737518 473905256 203748021 750309806 438225636 682610735 653262731 856107241 155918973 297303225 352183984 454496974 444320611 643656896 381330842 720413658 818385930 872374967 170328676 368188125 131195440 498422246 330410060 973872113 602709566 898719451 812712369 880240548 329477740 514251158 481764948 845940122 805420954 881944360 665435225 893388803 269597856 621858127 783947963 812149029 137158880 862565328 115297983 676659541 240891660 790376610 766764202 914813644 167268993 624333275 48308454 738091373 278805283 598744296 755533227 770245989 886270047 941946511 950340960 975556266 287573998 773648622 434323808 676744646 747430499 911986920 42038226 101487289 118698815 498073565 693643557 785021750 639874717 773388814 768566025 785940149 988638053 997165022 208035047 988556347 438415105 586779823 247848269 471232773 287029786 896962098 851952669 981643137 571586390 649034187 896491447 941185503 162553193 775998189 88548129 990015921 203957732 685159546 271322147 971719581 842423740 846454189 953442259 977738078 473987836 486321816 543036372 641286815 350678641 364109001 311260590 417353969 491982606 715015125 581777217 887953184 885702691 890224150 202019824 904984419 206999231 966885927 515069378 927466206 568984802 614566460 808253469 872124272 335799394 642884862 332906547 683385577 300754672 487204908 327013716 789837973 204662259 928556421 73174885 482940848 652078598 863340968 928407097 936481253 816580962 966865193 257995090 263649502 150233178 335938028 285867783 481450803 732482930 930575049 353391246 971743885 781113123 954903645 238929911 884859530 211734667 948435835 353191004 369008269 46448879 569899924 870358947 883622317 561590571 868479736 204110997 871877919 586669801 612395156 944918979 986772206 939857572 955197727 643346913 771164688 539863556 736541940 650890549 920526365 410421975 577264797 259354638 938246011 325481941 546145237 370350616 614597407 46887807 274824997 400430746 612865985 326767852 660711317 157709552 401510813 555067074 652753356 546594085 888442019 245400291 376276513 62467234 690052789 773507422 954789350 47169288 945940132 563074447 988471460 350581640 531352991 832981772 893399259 102612485 620872567 494010568 718544049 93096089 990614406 450252199 527199969 707926851 734011193 628426207 756907236 659650213 746938494 874685564 892454143 387843276 516130931 177529373 236730461 916875326 997778332 442629510 828417341 662604951 877208617 181117535 621930608 374494222 831373894 422590561 641462036 254380256 312221535 134956620 664741896 255416008 541015110 208525337 642272441 844926903 963881061 836206105 996054855 284258141 396303907 376930809 596704999 275738426 618791151 310678519 844413955 399006041 577748083 876514249 997545829 594200398 766744591 814395021 961681386 427698996 746941982 756469516 784431999 169381728 527872472 449542294 598785397 776290728 997823238 385277274 682758641 998980072 999591149 920720135 982955545 157321509 319339466 985208114 988932524 619312488 892807452 489707974 956314977 223883806 640812615 286720839 328766916 361482420 415556658 304252480 376079945 681087434 894712156 805847696 987628023 439932397 552830903 369883160 591546645 308286293 750847201 504567304 812054980 660501618 912637709 153427116 898226657 512653850 809595394 745547849 781045759 662782960 958524988 526111415 958127669 115320663 768928410 866599031 900575630 35372479 346170048 351161561 871201363 300681778 386191779 143664351 316628474 452772016 466866588 693479946 851318726 746057821 838196886 568806309 718940891 217170258 925111475 79967388 810047258 898152257 923857662 470318355 915186023 307304097 863641736 211892522 619613876 211456529 401027090 73837014 518430393 562786370 953857410 444034216 752589883 835231277 972667401 323401314 878392520 483358780 840818970 508525784 649675094 27285109 426108957 189053525 758722484 127970646 319727586 458884647 910449872 359960462 576819982 939911279 950527740 771102832 855035067 978486468 979616184 21245290 739373380 290154172 312591102 731137009 870282285 374105029 377842031 813622659 970655439 911701700 952304821 399051418 954573489 199498425 784704463 775364657 920238419 99978610 555240190 154609294 704737556 942659254 943927852 900129393 953646821 469137370 507943891 903152245 994766002 254084595 926892135 576405292 799173523 333167269 912056631 516369104 733072965 921054592 963058031 976254906 994815625 382522073 739376615 636214136 970702849 427046795 867949430 462652130 786798693 459173290 699026644 411669348 841210632 370985853 379826641 78818115 421979128 871750932 985591361 695139939 711624259 307715352 399695420 374426695 807040123 13362154 101811135 501115424 929869557 447152879 478585242 106983146 216855314 144652389 313183731 289682687 888314821 411633817 934126745 345410974 500344422 655855228 875357944 983986986 994451276 178062961 299354504 610547270 742434742 808642938 871795986 61338782 621578500 543748732 690920463 612049115 867398285 743475173 790783025 844033078 980078182 830385810 934632926 440582690 910526214 675144381 840101669 670730153 991312520 496268501 822608161 178723093 573918645 596461370 679628518 924194143 964898089 240577291 637921306 762518544 869999979 725589139 845087394 786193748 924768527 163450759 977056060 499272352 821374576 935944421 952084635 160144027 357783563 362354369 648947711 242814582 250441310 379246444 390630157 973250899 995357321 986550906 989530982 152690595 658261098 48718460 851578205 187308350 639228352 848583864 904819769 411353526 948164493 975886902 983064889 708520969 787848588 943785849 973228974 201242038 569577881 880249374 968800715 438391825 614822268 622498007 679875471 800001712 903302769 722925018 847203094 471184316 816221548 61999803 135597094 98467170 349909404 761464453 857508062 151906903 158417982 843587422 859068219 540274569 855577786 775051878 813005310 447072852 612025856 863266376 942623518 295918811 702740916 201473026 282406887 622217154 804801373 815162878 863154314 292914501 842678634 953012467 991418573 988765224 999707431 427419659 765159176 395904359 558207887 754056385 975400397 437612955 928555138 327473334 525538751 5838622 582049175 587169279 888205901 580079903 811017115 91980943 245299177 75332620 117247490 744274656 776588989 693011800 850611748 378518306 569304152 187030823 858871641 888504656 992818505 249313620 992458056 343884420 597593978 261807510 374608937 321589439 819019517 895709380 982779239 511770244 825355977 893972549 995600377 495043574 921617552 186500267 603156336 381025610 672852170 892328767 962877424 146193204 200825662 183667388 619202302 802744836 827542097 988608538 995448004 908644233 955299069 637842599 976720023 843454881 950552878 531679975 958577204 93937019 708741252 480113802 943797218 8610245 818852983 969635372 973172944 1997664 293723448 438456730 506258397 933098892 989398540 712589889 829142996 588962055 800509760 556686505 749058265 317958559 659659879 744257970 933335514 200488763 316025691 532268821 959817869 774243967 921310813 479677325 718288069 467623948 880665192 715026796 984569787 227049830 267172972 803921422 960026082 453777986 667067082 704263663 717306615 253560008 714239832 941100529 962541043 418444647 834394544 450665153 869700299 171609400 447894133 936616522 982528564 808355710 839256197 271213675 927661633 923481897 951206067 481759316 502842074 360941307 614482842 280814615 331287895 351594767 947317184 482084905 797536737 265280461 630394886 348466209 901622339 655010259 859118475 780764346 947624647 121046085 125577621 604678945 655341630 145980487 929589196 323854785 350726084 508385033 691158211 262400878 712943244 752316479 960868424 892383580 962660589 750096148 761659375 608783627 756706915 753758103 835398281 992000729 997304150 653619112 883039601 862860995 932141016 501478329 692431602 72111422 350825912 784934883 941780018 855952011 874653899 636955392 694759924 700764116 765008893 725688535 909789752 26326474 678985652 11974905 667101850 103656761 681506672 259046628 279880749 410830992 813135674 930427189 978429873 504651525 616549385 253225375 349150343 184547968 737041296 819688714 993126683 536810826 716257106 140583316 287228646 197557105 311266086 14989745 341478388 250227443 618301784 405538890 472454964 331596312 525087596 341428435 551070143 747372642 765290229 295067990 349762235 643795989 988480687 171735017 307286754 512458948 938886839 905722178 912699592 174502930 242670639 618267754 674132640 831815412 931882720 860499463 965462059 16453851 466746399 831414539 928372586 250643745 863480105 997222577 999798171 185342574 548249653 865219921 901016848 987234065 995717791 61013203 515838549 949029923 974497796 582477387 756789600 570509509 707303623 426733228 902224058 742887277 962872033 335585585 821293614 850664596 972644367 626672925 637161303 378791175 857693945 112364758 652614967 744254223 936788750 201207468 789510382 326307294 519969397 792684757 903839111 753665672 863957435 311565511 586930939 710377006 724773864 193158186 957308375 488175105 580069085 201879812 987193151 571686663 779212215 642418811 953883457 739684439 978149154 595829425 733488308 420670773 797689307 532281917 752154794 548837152 773939692 201193660 623370672 814190181 816823540 389603024 675107299 446492105 640665767 98713513 399029499 284977842 854672102 638593243 880761152 309725366 460503070 993855331 998266418 879288946 932134154 811067971 848993575 324500499 368603180 613471515 622770039 79936681 977441452 490344067 972367943 873860521 989025289 917008399 986720551 406359596 881123362 20250241 330244912 263826938 586216799 796795716 837506081 833180868 851167407 594178346 789566071 806854674 835945741 290911191 545161198 307168113 516003826 862313975 934528253 19509973 852820482 677670802 939364292 305267630 397539617 32281241 341072110 668597449 732837871 55534149 659118855 452888773 984200731 366972639 568961628 573163281 659170615 733661091 849111991 359984634 608959067 565874670 697420206 245428422 981080992 913574989 938889079 703052988 805187809 786638197 873175932 584712547 600418293 727599218 979627057 965492033 982246413 379300682 478337449 120751039 491668539 809960074 999715426 669628176 959539806 808100969 992888104 59555804 480344488 555939600 823544884 278360607 518404546 482336801 645037022 26079970 525592013 328645450 689287800 69410097 683078239 25758168 169717186 213794143 763448490 951821040 990842707 165899867 302045879 149313905 611563532 269328830 390423282 200977175 702674609 806364312 826457692 86391301 286951926 575380966 985213145 481388657 973763087 175064763 431037177 223688409 901261813 863806732 970349485 189715245 396988832 199686861 370410976 385559212 520398203 660832103 767454040 6312080 575984057 89273200 186575567 147212240 612504033 314428330 319877620 417131865 989871006 469500114 762487868 244144284 816848099 524569041 574935193 624682364 928396862 850200856 876975527 298044116 341598186 116064294 183296609 444360291 930047599 181648317 623998049 59148372 506853545 663788820 933046616 162137687 698028203 446583552 527159579 894984249 956435277 605509203 955575334 236040155 608491910 529495531 843093548 816745145 896704791 440370216 603746885 835969504 839107832 831061801 946295591 477255227 609225136 180115267 187161504 310844202 589667626 251514832 968888819 78395292 311923532 658590798 700687043 548192410 935092155 908087846 956100054 724926841 741094912 155723361 618908215 74749956 891651147 61009910 682324124 285902460 634407438 546713915 879780092 419351659 422935574 688751200 865953463 928134363 997764136 421874613 649020622 862004795 917251432 180025611 918083722 523154453 537479194 246729644 957201248 565213148 865943746 883135263 993996426 361769158 968762554 506989088 716020539 633931748 745390202 989744363 992367484 899330970 969678832 315301061 909896417 308103203 704185937 584968009 992969767 520802686 582285808 138493852 888338936 128615976 179920798 409078559 969950498 537337822 709649800 529799499 601378778 23142444 914604274 41809066 992498868 220946683 806570069 81268828 352874817 470318381 894241345 404734720 945049521 651871951 872714544 31162934 560848502 245480909 565633040 912785608 957166769 328563475 702193958 646931562 939742208 151608634 181968746 665310335 990077776 647587825 841812355 653155960 676521942 770504346 813488722 403813042 752899178 97064092 181845566 579748007 691947475 220420998 692635653 473475671 737987087 767463305 898222706 618645092 726431076 415324235 424665244 690608753 736030014 76660859 155687500 744987448 851695823 571214893 754590936 296008014 363232752 662945691 827677825 850194359 920230854 306211584 588897172 904046101 982290828 369336708 432798942 718779609 891354975 464690611 929356498 445685450 540491343 545469714 925662779 835304040 988019794 790682687 855608498 466009949 612556724 95521502 411320311 959522808 998652906 781676583 920845300 220307430 810060491 448597859 713521075 170800616 718766704 880323114 967821794 833333645 962670123 139620047 462466596 640717971 847048968 139192773 396549495 835435276 980105330 588178247 968410619 521722460 566897210 428563079 991007571 840480310 947652679 854721615 980428601 29188182 959593891 642956313 922311057 849986416 910912109 367346521 377218641 513039473 665682814 209026500 390578695 264766937 490342272 410882935 971294748 892216388 989592495 990617885 994034611 544274583 961619584 749081758 953108080 954586359 967896076 341524512 539262404 376728799 643096797 504034726 542997241 914837833 933710553 424806489 592012939 601133194 735038645 168357180 245872026 804716631 878088524 821734625 897632553 18649508 242273764 850774869 971575070 899115005 914044575 416311099 905585446 967656675 973883201 939251144 943382526 658083059 976541587 899565759 933268875 346356679 360296623 3517334 880977582 459178058 508175119 8868704 970962151 224585060 699508613 677532561 717024802 747797736 905429195 803345085 915398641 64101488 941760799 25727470 658248508 801067120 856030735 298455453 991225405 938824477 949249758 127883717 855784063 764348855 837099145 556375057 593654353 915518368 953124825 371864432 746990386 877631395 975328163 791703281 982403142 543216703 628424650 142763343 914326307 649854522 933223345 120374375 728033458 274397776 865302008 980845874 981909796 718195189 966988388 387952039 441062759 721718653 871652029 657344629 756669002 582079689 791713707 146693689 835789838 595127917 665604348 864545960 932220598 968495625 983241769 914571651 969834628 964848343 996409859 518092307 643226368 727225095 925084723 138662285 930816408 973187167 989153973 753167703 886972064 811189558 998603218 346580811 511440816 673162438 976738517 705499703 930678325 932654194 955794270 158146754 505399904 216758997 913294633 578976402 894693207 432113067 964437750 787264355 791601886 101289414 987433571 360587416 579315066 341631574 710896750 299830017 713471736 243528995 641992440 12551501 176880135 498249713 518402090 323337139 475368738 70058007 781677637 447516499 624823922 212489405 685553932 151811311 260923948 816316397 984396026 230870721 794559919 916252706 943450971 484748106 666890000 929381242 948074799 643722435 946655514 680457758 870937164 49984135 653645089 862389699 992000120 527066771 808647680 378890557 904124529 344226411 500561287 730500007 978557481 657786729 768065183 943052816 943170078 121599392 838701044 403023913 743188910 524343504 754552885 856315484 908876975 395811608 446664353 503637806 567888437 298914457 936769871 910894186 944525475 657915091 784747359 63334986 828197487 221034866 332215446 711709733 758861091 699388703 933799867 466416 593163865 450941923 589992824 846705579 920586427 89814098 278363165 982382768 997788925 600688926 797198360 168686453 318605319 765915102 924482260 731160290 958264652 871398899 950822460 135258676 951241874 472478082 823845947 452983865 724388305 197478653 509916391 105161344 906717297 460404431 943605846 35386565 714394409 318573751 885361976 842866933 848899289 422496624 952567063 242488958 953362644 705365385 864552721 848303241 886268981 837175160 935695972 524405424 981591556 772489265 974893264 65421823 903845858 931078183 982887343 72659938 600891301 2198844 785344510 199697693 521126282 754972422 845123823 752500417 815282357 944423815 985034222 529128490 895120376 726601550 926575187 707096448 928125431 777196789 924723244 349716908 441360320 323256263 682654038 956635298 999497910 699476034 853373615 416386105 458576921 39147948 775733522 98346304 757696380 206159680 409105678 773876824 994199606 145951132 880882719 738114073 750488173 20019555 432455135 354172876 608196116 982223179 982515598 105603832 942321297 851437167 854727312 608141532 795419079 751955164 945363321 778240892 838861842 190211654 287011491 117576686 585761262 39441479 77721731 99729601 501544859 176628396 762242139 885976955 948379243 45985228 129686086 468520866 952257274 43098986 815107696 98522692 409040172 374694294 428192176 462875149 821314457 39965939 595513967 28345691 217661417 692686882 943816645 674138506 931899818 555964942 788944622 137098892 282746317 182761101 831992377 710858932 835224163 209733344 384025239 696340042 786579753 158540995 508004531 700273016 767280915 229186507 407287796 282668642 994839796 672723584 917030619 35133193 224902825 408791006 718511025 605666134 897395879 628149206 825827010 828191441 844566693 184950408 250814058 755241967 866581792 941704085 978663712 433341803 937029433 1447281 994756384 471008542 924902379 207122644 270940328 333590654 815517514 472258221 898562479 633860471 681266662 190178742 385002873 740205380 901013892 625024647 748686402 295163564 970006688 125724118 795819231 739554059 745152269 440440224 909301119 756058588 789597424 183236945 708921862 246763522 880215978 878002277 931079116 635686774 835116520 931303438 958062741 482243787 729500734 632192537 828472753 495115535 791210268 720455807 838622205 538325828 986232337 914435903 995039870 323544375 704698811 643749982 933891640 389579537 760762709 511136376 672469764 22002692 511091029 905390172 925140467 69900191 556501883 354994309 837737777 476502738 946060561 126821197 199550157 535742223 705229635 831281146 985894015 910439408 987357791 346081807 944079916 720859183 824573342 266750792 977636171 988592092 999564416 10808106 563964497 258374251 959836636 11245085 521438419 397808620 423176026 431556352 435802877 935805168 985681264 578974866 635144018 581648581 867292787 553778472 973084504 109627644 490600191 289294262 753516887 367879774 455954549 639324962 986551570 421489245 446790881 252130596 746226531 105707687 697066540 140214028 199764754 819479526 946882708 44894076 850560440 386756839 730822071 626793472 770521935 435180368 581728897 459980419 798490599 450492445 486209135 18740473 397926085 391244235 671747070 756732604 928914487 932167860 961567353 137782389 420909884 292159205 759543217 824682664 969323404 82350159 274196791 333780784 350924808 493238383 562063294 74098916 625906428 927105504 967835033 758073468 923464036 95961927 792707495 36494202 220125689 441986647 545505075 467400390 734181019 978388979 985085472 675315077 830713553 569032464 739065053 812805268 980264331 355613686 458827447 547232640 903173591 362284735 877922359 699318353 878805341 58960087 848407248 691684161 853067493 254318877 575592553 948491740 973110396 874531774 958175514 801690710 871549949 839869913 878154962 573446262 730881978 57749812 264993437 225361214 989667312 75522546 587877414 994779241 999629863 139763284 813725580 350922682 582724071 239126187 879947778 264345030 569444807 210500136 644435246 831158057 850344631 191889045 777213551 920818031 987763905 144936880 616362897 142344975 582451602 47970349 482894161 483589241 965192648 142362417 235444850 653437424 689397671 682074181 960300716 280181547 658339160 578884257 953001187 847884644 848040432 926921636 945420770 476063374 992839074 230319578 787412222 223478108 436083232 150707912 478021918 447415311 945368617 637224117 964401507 442077483 925640563 861930163 912244943 218021877 625197624 69946193 729356544 398605435 679285714 416291705 845897973 549398401 911625316 723641487 946217419 291813172 471030278 963928911 985563617 879926314 917719094 889005343 895032573 261663229 483916703 703461988 771911974 187154198 243272712 712374834 977166638 73686137 425154724 211382825 459800063 340812479 650038542 316562833 907718938 98225866 439678860 951157289 972619634 166465806 478135648 543556068 567270924 695461340 896060373 756181222 964191778 549808180 947762107 260043957 794821194 610425730 885388207 723420352 937124182 801607474 888445799 342389416 914469818 764155091 916714580 621285776 621392492 815203957 875283538 262010481 762618943 727911631 803765741 571795892 792020294 560234045 958385369 703882852 761990653 765890822 970527210 665467475 713832636 799446049 968598809 169555462 482363587 697604737 823751002 975901275 976170703 844116616 925561479 808238518 940406678 218361305 797709065 454261901 979010379 551160318 632547846 477438112 577695567 669784391 982151494 169175936 833251710 493255729 699618349 332230802 877600175 743816287 982896492 133121295 412830787 722580841 834228489 935040564 938603697 23407622 896067768 864788408 979812406 877071016 919947004 591284397 933144336 506266051 570869079 589761368 837164290 109043693 810198874 78175990 608829763 942075841 972213979 945070669 987295525 199796283 560730634 28490544 277124542 713259278 975572902 153810386 416678051 881635976 921160284 513033256 558279135 264048486 484769881 404263215 999524517 409744501 931259016 984715650 997225876 178818845 316789505 540383593 945492502 228575184 515791073 219211927 319403657 98209940 273558600 394705343 835564087 229935247 938679275 714856562 847610504 105722600 938252464 769387639 926270209 251315649 894262529 557673170 728751248 38755231 696403287 924307927 924769322 18638526 720707994 623534904 809576109 563259905 592148807 178076768 375515451 930584988 975740689 768034393 904236258 811959336 976780646 906685257 945080531 793376304 919722600 925968724 991556667 976527070 980033359 414367556 850701705 238172967 476122985 678145725 770789859 742191161 799484722 236962557 504194319 627580112 680779521 428475255 612437932 509735736 704377603 485354627 856773414 67453210 662848649 51083086 82166052 358345 185643413 173641455 437546373 498460801 746725699 643935050 678524404 714314433 921793490 514800803 974695074 500152546 741012145 662358368 713437171 374120836 776802363 966103643 971511400 303571993 461915714 857851584 947812924 978399905 978690112 700779378 732628620 470826022 640566493 442257170 964957189 261848487 297825213 500424824 875544417 836853800 935461074 828423871 904351853 986736229 988680685 230450234 860653276 251240387 263271769 10766666 14507403 743311338 854336435 893058696 978563264 735955739 791347375 180716267 197351373 345866769 737639204 189213066 315384989 552723531 821685571 914776207 939461622 605851902 717475069 399120907 618946744 317302507 878521084 934468376 948059451 715322114 911768650 175341390 277664957 304614791 850698064 586834144 972711163 4599766 454009726 834987002 930533253 71296077 795592093 92637699 988491423 128117447 886086467 102484479 835830801 807959280 919478492 292557520 430560638 376343601 623966425 541809114 543203533 986252128 989783570 855051681 856859652 200480250 487401108 17404431 226476732 261262185 373777848 965658925 980221815 314524640 658052036 371869270 770728256 450354545 679406180 246849183 802407813 437733549 744623890 996004594 998962731 650054557 898101365 572323539 693890898 482655810 956985863 132016056 149183814 119103456 547604086 673109686 961024074 394856610 931817029 221233893 881452849 946053496 994991186 580257034 984152821 145967619 642309284 760741369 833377156 741733511 829011451 394196167 911264113 999974496 999984203 196077668 811922636 419152347 435044754 871837033 900100241 640696925 705330435 807780883 951066731 286466818 672545132 398911300 995364545 302186650 752329611 520003543 834787827 579501037 892687232 240479065 288652101 332325022 799830615 240619539 319134751 461300514 600665374 813161920 879498114 124610158 916842115 752198049 902192802 622021126 840712853 891775430 954294121 525650599 637132530 614898909 995018275 966305026 986533734 687508925 806316521 863290214 960023733 344193204 874241714 210069512 660502983 362878421 901938040 457314842 696255817 859150844 902537518 584595527 671897792 51828159 491070761 305382321 814795601 325942364 710952630 453882637 882251501 665227421 705758009 615318753 702291077 23588921 913759979 395392472 894422997 958018204 987084238 703000327 813721266 32682629 964018171 653997397 915240282 15598592 693548152 406373716 520470374 797195292 964889036 189540755 200860675 944683376 980357935 676847545 949392275 935309770 989517793 980946394 982179271 585224812 608482930 185729844 305596114 997897079 999837263 231508393 244303597 170136574 305040330 952211253 954909273 227882658 856654194 62151094 633823946 415662162 420880085 862349120 885309132 775151902 994234231 455278338 774130299 120204364 494311561 596698808 870596542 73016787 811048713 292080723 961537504 237929155 288806712 197691299 768532912 833927626 935533822 319578929 789975626 379891909 856028609 251727456 493871841 188758413 751987907 277458815 722049390 394150735 592490297 446617938 747410553 630498950 927546980 617420036 762435493 983821810 997408877 100160361 241272778 942332990 996363150 464288352 717721099 213408211 468759325 855446336 972894892 980062979 994981696 924639485 978746774 517818980 726581961 477124232 483476243 301660288 546625725 59436602 836536970 386206461 676393650 284413125 482161214 38677324 875612792 809073768 938296228 522464759 880445104 483720867 649416657 60680237 594972485 259272617 839501152 144138153 919797410 565005875 895243553 697557557 987044573 715306503 897827070 490514078 785501563 351503340 390489221 895849911 939860651 730935260 996444401 165455540 449556067 484172840 592528671 271263573 874501127 226708487 475362955 165163789 472663846 713430869 865400926 645028675 766957253 365910442 414377662 596618794 780313285 839686990 865071998 667893368 778976192 230356137 969861305 520779334 970444590 669566177 980378577 749392158 830733517 48360643 517550012 907460871 912107488 89934579 688350189 145850576 908766333 930362673 994864613 854238823 937456433 930661802 941890795 816161156 930627626 386726684 617943606 319080798 634607140 882343662 910144873 769599609 847145851 847006506 988101833 377631322 721588331 924401229 926975662 364038764 957076823 998279463 999075218 458966009 635992350 883675137 912885531 866988044 974754988 168305856 188770629 314084197 493568067 425681366 617874173 460340574 994481179 751305541 938076353 395226470 648887349 778656796 916893260 71655185 89615336 73330313 341072908 524896248 642090469 557825382 820368988 112345054 338996073 88491000 609185218 725099492 844450921 29281387 426517756 409677379 534485782 410203108 410444944 843614536 977936677 654153549 804634407 267182371 361035953 207410462 741974547 487998310 691994285 672112527 721313531 287415653 826780961 717503624 724431207 51753100 691776472 372340470 792382302 220309922 459770309 187051499 872848148 181598318 905839718 450833508 829293868 346209195 926144769 507801881 742651826 319315175 749352883 409517805 590340568 679254416 883336692 421537451 844471906 314566383 610377191 682116867 750559151 627868814 856681078 275824633 999222159 992383436 993734797 485904069 827910100 65662974 654562080 99356404 841580807 788850326 907174361 776518001 784627572 309938777 979424278 219418950 928502406 777922526 991501020 353233188 635989355 217036432 226104518 216515546 549239714 162630358 854765629 602212614 950867294 325870266 704289805 553707442 932754195 363376527 644283799 503049920 759559181 443717640 848974958 129251251 357994952 452473674 586969058 302707483 907596658 10116868 895500271 222734366 422829222 871324247 897188575 929203335 967482662 907440658 995057692 866501527 945801178 4290093 226843423 129961505 698265058 517788545 693425715 480668046 794352258 114780180 627827977 365249370 949706316 339538563 596259466 947565759 995684465 69813232 250251487 390739809 820048486 307595757 605580519 138498070 320708531 904806883 944842853 462490909 463792620 249937653 597489830 206635172 926662250 840921192 872812712 974189630 985333372 359839687 898952361 632257015 712272069 979527663 988582085 489946744 586907513 716892111 941828073 918947404 949286745 594014645 760768145 115952392 810261639 948877520 992166122 992572191 996484759 208923834 854950804 305383326 926304321 167646840 834320395 489729315 568210543 412391670 643309724 855983525 866830208 272862234 344566180 68699751 223128115 594779403 854251998 33767431 197050650 278790846 437438596 967653629 968900156 2604842 70795155 677752232 772695302 940987578 957085823 941341336 993402648 194091012 359361932 198834408 459297961 384603251 903090984 977982428 990633091 448212811 484533758 32790419 161375863 377463828 493691673 414229382 636337976 706937041 765164481 73366114 405839060 624073518 856437094 300778643 653090681 126601210 266569193 851404278 954432862 699336440 961206088 177348334 242761928 505869818 880869854 796497005 906577814 745479685 852520586 685044286 716358594 335886019 696104170 1580830 73960971 275390738 539379000 912871433 996155209 494343910 580908224 272507051 844452333 715041183 718105788 518773539 822640192 923228453 986097277 908332148 964538269 780448133 923954127 801537530 977469454 42908748 656393840 41374663 150572663 109926992 837946012 517208019 541309191 849946535 887413668 603192853 735718696 699417589 781827800 720272149 912111648 518771080 574915554 762654709 990657196 927830018 965343786 123467871 617634597 701780618 970527105 528096794 950992937 787765089 949445822 357435294 583995997 398706660 586219770 496139666 836910334 211543457 315891377 256551620 398057274 651470593 662578937 169686367 959415382 930056207 930896700 577633995 747558723 702089478 955299004 227713599 825708794 416619298 474599949 946163000 989445803 515248005 703808095 158667027 800899744 131805704 599941285 460197949 492222193 234781885 710713280 142800059 836480418 194241359 762780353 321554026 878473503 951636964 956158178 270717738 316521278 311337846 584860867 845129275 925311306 163326413 350307455 888987843 963023931 899032615 951686468 993334650 996360861 837117360 941428864 310290867 694635433 405623402 742153448 624493851 959009590 620575775 939343871 620043358 643626836 794325165 855016523 148355439 700559251 714001477 979380172 987453885 999229324 667084395 796053055 492190199 503807148 904077705 919700961 945586410 995774800 183855877 401663679 775736618 943777502 257083049 366302784 813338894 872376969 919822562 991113034 605239779 974137480 124920161 416232072 707391652 927954818 205485132 935858732 716713318 952405095 672178171 785858966 83593231 847032486 956877840 961580744 785160130 854083141 169721236 438396379 700831504 963743093 638540798 989016880 71912904 132896737 827459040 957885382 280731321 744098157 529417744 708478276 834219355 979005317 764239706 893869520 634597499 894646186 427219862 568556353 212790218 558460030 295263924 728994939 353375207 539512117 536055572 678735135 918342832 968307280 738986956 886125406 448631282 650970789 914001877 978835874 508449515 604484894 294540129 852963576 35901701 283972265 923594111 931747676 854617557 938799246 637124738 727460263 37851623 828709277 555485031 723687438 308077274 939615103 436306937 529507107 851836194 916013856 793482065 850877104 785214582 904141609 364946821 466244165 709552147 823359984 351254938 841027487 265780840 491356503 267852292 372984002 272227041 662523927 732331569 946654227 832675875 907983508 837585317 987779427 718518570 967330621 186628364 201958394 135127990 343586214 677456341 944409893 5684377 23788640 993638687 995312714 786688287 981339522 487700408 848406775 865222620 950634278 765381464 853273355 393181232 565059146 427262500 689748878 37683923 127631772 341522741 724131865 281203613 990426548 564716411 935916328 525499233 883177773 615071202 927218256 97778006 523877108 252508875 393753046 602619162 668520283 244014033 768701607 969758222 985015313 58773025 481296068 725177317 820270015 628903049 909469454 764853238 828131790 79898145 693399528 768642658 978361134 590027003 739004480 467814986 918306944 574175999 770921545 911796645 981926554 422826956 871584759 295542496 453673750 772999569 816574735 543293736 848334203 260279841 618202858 355863014 987024117 36990574 179242255 821228553 977691713 129508303 799756892 252526134 269270236 84892219 664179376 642446019 805838048 352833605 517038852 836621578 900342681 440171426 700930986 453121779 673895132 709434035 880821628 271973706 699448576 420730813 460128499 429250887 585136920 591225114 722616082 306040276 822538742 590842169 846104227 473588451 746761755 741289068 966465909 940690642 965818264 919619073 995274111 821269743 988328413 887621247 996248049 323484869 563981813 35387203 431471804 72408818 528677721 101835210 470781125 506602299 554306387 601377404 837224019 929249073 942309302 361153687 733758919 122688147 414894262 505191899 620828805 693556561 791498489 314876068 434481812 854322776 899167229 603816507 856272034 898108813 946250663 886518970 991514720 425285316 506937262 655018428 901845154 897803387 988046624 837384726 996643670 440705870 774349864 260597326 449092517 797209986 888838603 767049491 987302774 663247557 937453087 903924867 972031782 463705483 586822966 748928467 812708553 977431825 985697567 701301264 751351054 153088151 246392375 455877473 557205735 366576081 513807985 377676819 662799448 88394540 505645464 972255044 991839235 150624252 728573928 961656851 963540553 31157857 154572487 834822435 950922477 573498187 640287828 901124236 985187898 176904137 663179949 567175846 895760753 283215043 837771159 813197698 873486899 880337336 884609299 245712706 605678506 210233791 956458432 452314129 671513297 548234981 649683642 255657499 265066020 733026911 890943942 14367029 395191943 920352275 968190646 393965344 818371742 883167799 906400572 806743181 969622918 57911550 744237149 376302765 942334867 434061005 444233877 332442318 468540971 661920387 938859083 125030725 783459573 547628522 853507782 90662814 808853518 886904958 988665965 276428764 605486750 681314176 768968926 104651695 230288391 668055038 978804326 200436253 931309023 35197790 78878889 736418938 739396443 722806594 804643929 996001062 996947872 236092531 329635124 900097149 933429868 693473331 730130759 741103821 946154706 799478203 915084411 420351937 813514355 151929202 317630010 672646426 781221139 693362322 866026529 973905012 995971371 355357051 624145100 869087635 925159736 434963762 654057699 850320589 958039003 111195904 586035639 41008378 788648500 176217387 280752756 618198244 863508474 551993034 592635935 657948966 754620606 565940089 897267517 766148410 812359282 656651085 663139342 152782233 399141253 433663823 729881714 274074160 980524687 440669034 951737110 683163036 973599032 597548284 929540390 15827533 710070959 127659278 915351950 701915312 944510834 335390913 648125519 457524464 642159654 706937163 960947852 368646695 778946707 192424329 843262473 480499815 622485646 414591561 737974971 635783543 935500677 816681413 911469374 548967205 612288873 833558346 943250985 597700688 659562950 508721752 761825637 953946056 967467303 805446176 823574755 33869923 201718926 143088908 459325630 597499183 879404243 484949682 826941545 223928370 360908602 219334777 257850899 717451091 888915465 920271187 968182356 141751843 940394666 19598730 47438307 399915330 940592918 241638399 572026095 991104644 994785355 710596106 859070180 377317659 874977600 155962572 259187359 27968199 127606470 608719138 634212179 644015656 688702712 338020377 754637873 904075672 920849428 614518063 895534564 291520249 705591165 612805896 750076851 981377329 982158128 330446833 939813979 554325974 691042555 819623152 933819231 241986579 307137084 876736058 938476174 407722085 768918580 571000178 790832363 994514346 997506522 74196337 874013455 580429719 855944486 485984318 594957975 51485348 140947962 70945442 749413841 694077246 924160486 172574101 283708049 669531088 942514982 953821506 976647197 462553516 974471541 486049690 751832360 779561013 957143845 796748903 989333760 699075204 797510354 177149495 855721671 983132514 996942150 50857250 428984828 841366707 878529637 415999524 630476267 879806227 912133302 990793494 997327344 86249450 736196769 6054435 760671138 443137965 681594328 714450493 902961951 739713181 998292950 337537455 683196846 361115744 420573502 986378887 993189737 196609921 247086773 458010952 710497637 923776614 970629194 381773858 595767844 902383851 952514759 818114808 879676488 239070892 828274602 64274075 468700402 781701188 899122222 622994805 965291551 364896642 957072695 722539430 914839236 703982298 855202661 157662911 422900864 979350458 991070325 290150493 689261465 834894364 903303423 102504661 453425787 521319107 612561455 583561532 776956695 600407788 959766104 246580852 540453359 541615739 908037865 943084601 973308031 598881073 662628995 800834470 922987334 393849713 884591622 238242972 888525917 374951269 677368529 799167104 872993579 599166193 657441549 89611217 476996150 366633664 605780101 883001158 986751415 778347269 794342205 359037905 886781690 347092134 678026154 957369635 982325479 765313521 985487964 669983210 957562101 54862142 88988720 999085834 999213667 823778270 907321325 832074462 846260170 255307263 743011503 770545958 807757905 309638580 493356550 747661564 988527967 620667257 640170237 130615878 607407895 229504393 563800746 748950628 792197057 648873365 993911385 273969683 785261199 85969041 859285660 172401304 849326146 542270112 753376240 61022328 855749251 709834962 838814186 181702877 867364248 201069708 288019614 970072405 970649605 457105147 820863571 49987705 207353917 254163397 255287175 896415552 925157054 678281894 775051538 550047058 759746467 726589898 992054502 132928020 190570625 383414930 992322544 741992612 818335674 315476337 342442819 150288565 686273970 273591302 823914520 276351575 880824635 610193638 771158128 633937675 971005548 403710691 642604956 714113709 957110080 427424294 902616321 298766775 658701857 367119350 904025659 170395056 454755269 498827796 823586761 277101781 967014664 828814630 991658267 904720142 930251578 810504666 978233715 975044411 985820903 324163845 615082497 327158017 595585975 282972639 454899513 851988098 981980656 893264154 994983292 238214478 890809327 151699153 428012924 964011486 985967995 377428873 920766913 103838966 668354565 393758558 844827334 902435868 959267176 632176046 859543673 560787122 677367659 843174265 992835498 929618253 960695084 214747419 707819672 112014007 985741361 940277343 982833053 139663142 549977683 554692935 959773771 24450778 718511540 753143477 856684272 606208676 829531528 337553888 558795868 431476403 551176506 307882553 705740800 171145768 184852204 812906565 892713967 832558942 876410796 643031472 723699266 136975203 582995393 34252043 743232609 984488226 992548640 347427088 686284463 149013802 666597607 575699306 613896472 585023046 719523115 402565836 846762651 65942113 336525474 404466124 912655498 403863226 814566616 803157436 991841022 89770849 102722280 693845625 849907788 232523353 476836815 605464931 869554251 84957705 137899801 597279715 972680385 907946978 907952550 515925570 879728642 21320023 842992689 866568176 880030878 495014008 831777686 916826034 972577989 883991723 914625745 543011060 858634706 618241789 807434766 262983937 289746246 525387569 774573061 852115231 889215048 854275514 897000305 667744973 764469340 483471191 919758179 401738158 859458620 527822719 818919135 277429509 700628812 365927641 470737950 862025305 942018777 149976771 608842015 244819940 265383240 209256210 579166303 940278408 977280208 560587038 719384721 475944872 800246573 832489233 880922549 60127226 624331424 212152765 783221407 493728956 495198492 639067692 673986978 543899479 591949084 932726760 937164523 944416079 963886011 201814262 577764332 451766742 839151994 685886289 885869937 830731134 893059242 945153859 990408244 343921158 397075941 523471395 729396930 414541427 992650072 408476715 566612602 97690268 356677228 882187540 957232968 625310374 806833568 509975752 958554095 167314943 761473699 335254434 697113215 935838048 967885434 446351189 689788472 834202760 902766077 803939932 991267258 778100238 842436156 949307422 996071774 507342273 856429031 994745512 999751783 880159741 983388279 714377320 923685367 496359760 723941460 583148609 690524559 118440749 929830879 221565542 472562118 729671406 978796224 482326203 880576206 926220721 991735345 387006060 449410626 713855293 868625867 696162547 879678638 915896108 929021555 47305710 780562846 70182671 240900910 470291692 762462786 666283010 944064969 332751452 664225648 163947111 954929291 482469182 859746226 839928692 895618102 191475780 549865896 67545524 626163982 336025116 926080958 806544838 973115932 410878457 918567870 976416721 997447608 982203601 984616830 681489976 969886548 853420002 919560301 201871024 290201774 76487812 516339665 243696610 426422341 411722976 802913443 408664449 797123760 309736219 741837891 750548046 846581108 710416760 850564266 767649250 940903207 647867247 847006929 575336943 612051042 768283114 918403133 114863802 860648525 940616111 952756199 810446561 856113382 368025020 745309548 869637454 877685253 234357805 850848617 446939123 975014365 243144160 974190587 395484992 561804729 580256370 646733362 176672478 464594435 565089056 951443815 743256534 810642080 732851617 735314084 537150609 852469390 202954547 790655044 185112175 451020285 170448964 339277376 884784151 975847861 630040372 956091045 186547676 189391942 788769931 857777746 699671955 996453113 661573768 750195352 129231185 628806338 965364802 976486797 739864876 811618097 95967713 381580335 385102412 972740269 312078599 769628270 166032845 187486945 229560843 308755043 563447052 644688505 428252843 626327590 87073546 984720855 927680790 970993541 535864243 985252084 604452391 625223318 474200988 652654247 3724264 257173455 598445096 846053034 245496096 590193795 525166775 698210204 283443071 438738001 147222173 988899394 897386117 964051548 585845088 684464429 747025575 855707301 474307396 478666416 654459817 909004490 93254164 602022044 270371758 896458755 7936082 447210637 779058478 830664280 479815683 952197074 349034648 721805234 257040053 613196440 516661158 914788717 226633857 677307096 754731290 786103886 631381752 985807132 694778529 879660667 343745451 380398061 540928873 981281505 372606514 670987308 738009989 974871962 412713506 696683379 950299707 971082180 400547162 542268990 33357637 507563132 758409350 773150510 228262490 253934370 774429982 888990175 296793528 834241786 639644682 645906043 159535120 587604132 296296360 711723632 174363629 375927457 58617755 72620673 346524814 667334264 670147881 900379839 57151894 448790673 103115358 711644094 481551308 636093690 259303934 430579079 356610624 941271667 559460573 581987396 16166710 444914789 450419450 711260722 634481563 824971620 329064445 735683344 391705950 724483545 681554246 907098273 927058021 999533044 109340202 290815978 655414589 847567626 88213387 347043267 622477103 644322790 677786251 777406076 50725095 141958303 943113902 983642673 116964643 512137255 640274126 929259113 301590716 831599008 344128635 406534601 692935455 972040804 68633771 574644981 217896073 390243079 642362647 666077011 178241056 197224943 540527740 735670067 759623077 892880584 413912395 508511249 199138529 740709710 719245362 872090393 960724120 979209848 356280952 367113691 724561326 778403225 453242283 668904260 28639051 981817412 544744738 651458262 833803755 871407106 62909920 315098800 242904754 642308268 224165319 323516803 225330436 784191728 102148692 760448266 255143712 756444933 370155332 745560804 545476857 960132152 872913939 956294242 29365335 53142523 458236356 854195509 997067300 997415292 160541529 439232584 25100053 792365936 495815103 587412568 284674227 623747021 83698204 821254765 610194030 651350048 897919738 957992091 582981135 962949184 980975208 997182515 745942660 948665002 880316490 943774283 359574001 671456209 277278118 719900931 745357831 791802408 76512476 565941911 409619724 760713012 339625766 535867810 352235237 825256774 372747799 911123379 950739224 995579548 998592684 999487777 559278154 883198861 445969288 713983709 927964483 966650951 917000880 949442132 936194334 957739281 803663532 819524662 198830073 970376593 418166932 849571072 71207753 742341450 459703159 488034816 408003315 491925545 615268627 832309889 186736764 300665110 822565819 951833890 784600203 877949160 181828772 217100925 642734707 968221261 96416567 985749193 214638674 655528324 168306307 337185287 921663254 939003364 711742081 844277704 17254253 294288256 677512177 867657960 197664947 493050933 115337503 278211299 476210428 664229589 738824165 778003739 60512880 94719425 885739251 890641964 360793861 907826209 450461292 700414344 817345813 931978725 539040492 754633894 846396798 856229804 278153252 411673103 27295672 606471241 717442518 842315836 479783550 731311431 535902982 901943417 491945574 781800919 425573403 976434968 238404276 253699241 172294451 702413967 996338593 996566763 307211325 924002470 275614752 763913838 792373816 883516074 855715514 891260378 871785231 872224442 366208901 466455286 498261445 941535425 589556787 696440326 399922449 821696357 425574115 481630180 207166900 217647702 535623392 622270527 254056110 556678435 446519501 531544001 767965266 780675545 231127128 293419685 989030211 995340668 7989980 929004537 213882931 545286379 27022730 920108149 793450384 880584057 506848445 976971794 777318588 913118347 143777097 619082269 733688082 787052530 247306952 301602459 457940866 796677894 754453532 959214452 913649581 964645998 282370829 307911570 854226956 979851740 710098959 841760780 629003474 804285392 34197503 937820445 955169288 995614596 251478480 832143787 186036159 977629562 356650579 642817286 815494413 848047059 998715946 998884719 378656328 464892470 288829734 324264367 539935904 779574951 658899722 887548273 87720887 210648899 680421687 771486037 141472283 238933285 274571419 369788384 846515206 933072135 329300111 791974995 599515721 769723653 452085833 835902862 917065198 956185737 495719965 721838132 480080261 759316418 712525094 969799624 72450935 259075387 901749773 927456973 594869489 810693593 750222153 782583474 576401804 878652248 696936005 971787754 397304927 401856242 902556176 942120964 955182474 981485743 968788656 975887853 435454863 949030443 947004577 991475672 797409959 981029866 556343212 589785291 994386295 995696139 95048866 592520868 813748273 971007127 944475595 990438438 15011681 314517859 626206710 868484814 356481337 557463523 885348652 888425836 980731974 994685606 388939486 624204054 955002532 974875996 459910506 935093792 237948325 257466769 358018108 688741482 759729508 865962089 552710842 718158825 109880025 196795008 255062559 729964184 260761721 579612769 636717473 748921508 62522726 686329804 854077886 901511275 60910809 542582364 197082995 983915442 754484043 797092714 483402847 819873044 801770105 875587998 980314847 994172582 24574114 641127422 169601442 448219904 108411027 158441616 643026261 899252929 230223648 926667669 667522337 897695720 350794016 546998697 5197027 84824109 900352120 984606325 67955969 288033501 539576689 902036749 654462132 796644630 394207406 614003983 158599208 827179000 665924748 947441453 344396967 878181205 268439439 435838493 866259415 908701436 840051571 869019616 804925693 900146726 80610053 914254248 459002691 689316514 678490464 712831055 452956720 555538883 808534329 936710715 797426498 918754903 675790636 724740928 655690164 847836135 895492908 995381360 989843877 997980949 392531458 668378098 151214710 473120330 142907962 752870845 643338343 981840828 447383052 681468102 971489816 982967490 587167395 757497472 462003130 707988118 107185410 175323929 509797636 967814883 653937478 995104667 59835144 290585076 729215849 843290566 12911840 152521516 554400167 959365673 850196877 856999475 886270661 926705708 29024479 247325649 469391479 972096693 162179996 720233234 597227763 693921056 465169003 867394643 987826378 992999121 69905173 214377312 126544274 222616775 695856151 812506846 684706695 836373632 129930743 343531355 383250741 470535035 132037046 988919776 139030634 921905765 244523294 424761219 827850569 884428897 11193400 873216506 201993401 549600233 917736983 997808005 748782089 796949288 622246487 687660862 48015519 650826567 138145923 754400032 82421474 315890468 507947845 874712325 782885961 842423561 265807649 695111249 996634716 999991856 127309047 451140727 813214609 957143771 387875513 973194523 429717481 712651147 774814411 918844613 31745284 518449021 370456641 708955353 557673019 616066788 508306096 610921416 958949950 974655523 362297417 755487047 180011704 863976734 320369418 910929552 619520598 670328892 585239079 730625928 420579945 912163870 742077765 840944380 715661045 734267596 898790871 967604140 286097741 811543652 721861761 796467692 421971536 563291163 498746416 830020125 571579102 717374983 708673903 942721341 787710499 897314284 214427345 792797042 842233460 998295048 856916442 909702114 858253830 873106570 131168194 911938015 808511257 842627638 776857886 890506083 874379779 890684324 14158108 401060181 795887776 963286287 292026943 978934674 747509292 817422087 752681172 795049528 202093783 939497168 469867683 512439039 488903412 905208638 931001853 991027597 706980505 882856389 360548310 755894869 455180943 593361725 930909686 996092937 759856214 792678558 872491115 958040658 266848607 313539351 363648629 800164853 766779264 969319768 219025841 434380230 205023080 859331097 874614912 937474731 827863034 850247156 848578351 957496990 527858216 986437835 425823462 833231185 350124597 843212827 984926077 988303046 879828090 922121359 512588019 720465923 712188764 862672735 506215985 639505229 824755848 973030254 664919872 843466362 37712472 100059034 736852478 930708977 581902759 958066911 606476830 908341413 405172606 708668588 605508522 651255412 611537083 930642377 842135314 973138332 182949812 741145877 825565383 947219561 919513273 991489920 268356477 504317200 87241238 397551217 50106555 417766650 596787302 851934195 212120194 360652963 449919846 864929667 755823995 980301114 348645982 366127087 475919005 604880478 548459836 932579804 575715504 889967093 924908807 957229309 719673362 733234012 630389584 821653606 144303034 961783983 216146133 827832324 98626948 156473307 478718961 619718093 34803475 315217335 846269606 922101994 610886016 726890172 281828844 627231925 841677598 867805887 535377142 907135562 585986775 946360366 409514182 870677939 820003255 953037669 979981656 989124116 86596049 540606771 182040417 527042139 876078880 951624177 87281924 271628163 914757663 979113325 798413902 982043003 296364925 513130374 269465559 421185023 718757486 960533664 654364853 772811747 450092904 599586445 296980361 555643328 158820840 397362678 130672552 678525855 94879775 271235895 60260098 641002088 652214570 716035537 857588994 978877270 142637043 288009004 453724406 984437889 427814637 520426830 796064842 999221707 330955693 486016684 191185280 833231655 613840059 760261568 370976362 652477552 739317792 893869766 754986405 993477279 784253691 872407538 986304387 996586695 550991901 695489021 601414283 808491478 512945491 979704473 35027541 43258181 13781755 187238967 406632959 661733319 115338171 516430604 226892872 469531924 490994562 777949045 416534305 940650738 787144446 937120514 636940356 812566159 59515884 926407625 777676267 817344454 312879877 563881530 845754769 959873555 980359633 999247382 256257013 668007092 121177812 192550844 562990706 869390833 584496130 874032156 593272950 985413543 755749848 970285102 421627430 823890123 814890486 935470742 534070317 642587029 873215690 902939732 216903390 984951183 968949376 978007355 790601667 997793244 891849768 997691130 855132407 890473464 371811488 411753043 576479541 611908390 653939101 710145561 962558004 962743140 391527691 904749150 345391102 980002283 548529995 873140354 837253007 952740888 592059658 813362005 521855980 933208304 596371219 695280636 112572145 553450681 64170464 921551946 37886024 69947397 902140949 961632508 256532223 462643860 373469145 770275523 397989386 595536529 18385708 575618180 801802053 987598600 850737697 937248830 780754767 928158718 791452654 846789110 979386640 997794273 130627455 518400996 795433573 935868108 308289588 318814712 808171107 893409957 953127279 958434572 976307908 981238443 17983387 303605301 739510666 758577666 695806307 993612437 240553023 518179833 635180023 663603979 631650655 772940021 235383350 974589115 254869904 599693669 986588283 992951466 364961976 594819957 220048220 260880212 328596669 851417266 349473810 870080689 187689431 317680809 325485499 820818706 763038097 949974031 472308730 829802378 47335748 359321334 568885466 613061754 347732080 771604131 355690576 787350765 89524686 307623591 156695075 851920259 398884690 588585236 266536936 408224112 556810034 706582427 553603047 881445597 686474628 862883283 396696729 456238621 815080367 820970980 751969372 758077234 873668077 933155514 277158317 998259320 376748167 546008467 993271802 995403759 17007453 403751454 879119438 980258528 581039990 915794609 638290854 698643468 979820536 987712218 174516487 608411901 144174946 788792684 875865869 882355593 756872268 932476719 575329674 630824323 894690046 895558308 3320072 583217865 100398409 516040321 937666283 984754522 984837101 987082769 728051699 955836838 217203705 609236530 459325021 897590483 500277903 703070534 535807151 547510163 85529409 315588768 232516265 244584277 567772037 743965762 230106165 593436117 301609234 931451239 455442770 964268413 611095721 669709260 379162038 939633388 501259688 817684789 21808482 49302905 543402582 893320377 977498616 979687546 818661901 917247442 635877225 751865811 248950369 380396880 659562793 782693060 977143908 995381177 289836188 998374813 598223542 674918347 523774238 594222121 251746503 431056046 415241966 603667258 403797400 758467248 45703883 693706492 250168087 292855903 715288089 787281065 926576235 945398767 892250666 990290868 292863209 825584123 857381177 934003193 902734484 967520089 350364107 727296244 389715501 826949056 519473453 931944029 487313542 511517648 23480323 865017329 39686642 781479712 257114229 379880588 606770134 869616435 369398864 633178050 308429135 659995344 689000830 741381401 803011907 940347112 210400665 789076506 620903367 950116955 458087388 817702340 678540052 747965872 9164830 943619806 70161093 686744375 502501371 969412254 850173456 995425819 387744216 973938306 633260037 659615838 434267729 499483939 959034501 981263399 879599509 904794746 508043516 998805569 410257496 840800184 47241639 733700014 896387120 950613435 313019615 544050655 775347421 835372287 845915006 975951718 761306472 826752693 624623786 680984743 657288223 745365024 476605124 704736319 822027911 824579451 365813979 589034397 917509097 975945360 542523800 920114218 539028867 579292864 952754666 996810259 668606613 696948401 5040413 95847923 752237922 815909239 238563546 645446002 688325873 880723557 345596244 671006964 628662872 908609070 782247028 843429810 525442540 738584373 242149959 360949537 293955815 320511367 527770241 542496587 216532104 845914812 6298146 99088975 386546914 952342378 890867667 987820072 916573051 958414435 354922434 417561176 908300059 941540578 382345583 975017439 263997133 707628769 113939667 976512232 172335162 443671914 225321709 765265519 180478251 788950686 984777445 987040200 761591639 943197803 462668901 875000203 734401615 832590797 899599238 989976309 17363409 278001666 714869147 810432579 293020756 474805446 157058911 624545448 293748592 522839256 97685438 828889971 837745696 929100712 251122145 388277543 843754799 922905698 948278579 979986668 609339464 970427774 984925694 989183945 835780082 904487661 894348940 951859709 856323934 919606051 851426535 901151650 890456593 994320804 118601513 897177817 671620951 931611846 661686010 860683255 606175231 871140835 338717158 552942688 282767807 809602520 437997049 484413612 135240153 271782720 475304334 931023674 237411541 683210449 400749070 645886242 211714031 664624910 567757189 936746879 621544352 768975745 266083333 759301211 181586150 802330432 770752437 937565883 367914699 770691734 992430236 996245649 698786473 869686107 749493024 978035260 711621196 761326664 464772182 694013375 835918258 937412901 451129706 692061757 185972566 739486301 168408878 783865597 565350742 819137729 260012412 301379584 994181784 999428614 336918132 910910193 859283647 995521119 874170458 931033544 734900334 802487426 413577006 422041099 757215137 861021561 570922577 679158184 237688875 383428296 16362317 17632130 878197236 886144249 207778990 268958758 162376259 805822222 711076536 870275609 482141144 665163293 84903229 233013621 404875155 457200657 631290067 797031720 311778141 625070912 444897451 967744396 135060875 919799237 608635365 987921908 632959716 801376083 629077200 653658923 402817327 617591659 675189734 770707774 603679827 763411760 873910728 904516819 673084949 919071164 569978059 593742694 65945460 893750502 960619163 979024222 131032685 930056637 354793849 557993243 238534736 515462644 732683811 842067423 328166827 900023667 889945415 940045014 928729729 980929305 537749925 980330894 656135804 988625260 407275189 707915756 37263693 542416986 186912472 591566714 454937177 844833841 799365505 850810196 81625205 750880949 147113715 740777878 191670049 807631943 957084380 982292665 2463600 680161378 998467028 999385441 941498900 999810755 327221211 860505272 263235700 856408556 402638002 534329134 369514535 728639713 637400204 690535346 57471004 501740054 770043519 938426061 850664450 887264122 391856372 503580029 845512630 971087855 311350186 389024246 334410452 904794928 755209437 814817727 92244344 124914753 664506794 963205076 13740415 915085450 615914137 901534879 315471250 715659136 19850570 921752915 171584016 606366237 114023832 962837942 7885108 991377247 320742480 703104614 199781180 752784708 833280739 895582117 962452713 995564083 425153670 753528312 558560069 982282343 890073467 890090840 232983717 948601706 322998507 601180541 353576130 377761355 784795686 796341695 863032758 974704649 109288469 730893259 244220074 994719487 388265399 796110196 952554022 954948191 111944830 914034208 147079663 808934525 903650809 971771948 967926549 990111449 268625238 543690778 151828984 806478172 757740645 975919604 120712663 800302973 274477717 630482862 21048705 510348093 773342052 847023244 188247199 390222352 720553078 968128903 432091530 649143349 295031108 523937699 92289912 891814361 42730336 305075376 982533630 993690341 510159113 763918491 192822183 226529635 140356989 293245561 792957073 807821970 480990303 681944359 529495471 853001263 439971242 766988081 503974488 546244020 318538531 566080675 504317759 960817386 836973543 999825393 105933189 671961394 511831468 540342867 665398954 753349937 364794780 464606713 911959700 931333419 504024450 515763759 603983907 763793276 123679127 822515499 707711087 807614545 575929119 685547636 76382931 587190814 899216414 904337584 173676946 649391481 446433594 915974772 597070985 773223959 382091563 784285969 852521319 921955844 60812173 853788424 565957709 829806569 439303596 546416677 589751591 877360272 335409634 969831686 474820635 662913983 438032083 702583838 191358360 724336762 682548996 965690895 542146365 865577303 931132224 950328913 611900691 722143717 260226421 736809471 384631734 677421482 820894348 879370311 296808413 705684837 612354045 711962667 66718279 147201634 616333778 808384088 417299659 877792911 512354686 913884488 424634690 621987366 668002602 718024631 576116389 712449111 330389608 658420575 981657141 991943122 361673513 488694071 985079700 987904453 467070184 786101540 90338216 623255078 438647305 867481029 147828890 365166266 951196588 964709354 805561394 818463456 809712572 985268373 76668755 649702102 769020885 846202658 855418217 999298642 477155046 714615391 82880187 815104268 677548676 881053324 658969607 744235569 971933141 988865829 73507693 518624718 15249181 638269441 875979628 883514142 629514536 830667420 45795016 501455946 608730938 794653070 746502612 789600450 652150022 947541396 672069730 697601232 695272495 977130544 898008166 991387188 532100130 583699831 718342384 822711002 948076324 995339776 74869081 959781842 785257209 933498040 909163935 924688152 415774481 910195557 6289758 25486749 883669608 945426118 17245408 656750188 158008627 848143364 436913947 908320646 230758222 827329979 539772672 868695723 358753376 992976807 779331880 850224934 205209030 769022290 787256347 804093811 456318006 583272047 477489304 759344470 937075166 976405924 299232780 639651091 509509052 885217599 840296769 869664739 945981415 987705241 486848588 652282051 456564304 821910635 669905882 762710274 448917575 805849229 982242373 988011533 468001048 687118952 574173027 881550896 865747632 898203682 579037328 931941583 726269658 728306424 627719989 982716479 573582110 736870689 916263989 919791766 978274792 981119330 212080168 645206432 69327159 801820343 83655810 684878609 19996267 588088234 289871232 377893863 864563866 969822886 139805450 507751103 973034946 991682435 365484110 441914870 253384683 568174198 121577305 294208965 221932974 386977259 671170276 686829296 281097910 374034364 415675625 901437538 293190784 663569569 171372352 776688653 976337626 990535187 68222761 941495710 30436202 286457789 979373689 983431235 890696487 959209413 624434049 730601571 222784947 660399404 888349421 924113261 621279594 650253803 621563345 923199529 392185334 632496615 60081090 456859862 277041443 802249634 892431986 958871986 682784918 699131751 810653235 868716362 599740955 988273602 659952454 768380589 818624196 846930802 69436395 386897881 568504599 982494572 48497870 235302385 365874275 542781031 280445206 771298034 960882107 997107609 172956101 397510757 234079520 758093027 337766038 664388534 188807800 891993980 621035218 970025781 292932217 716034652 24589800 34573453 315851991 662051191 643756387 882771302 167657916 423880795 221940056 804450348 482303487 730425650 21317820 67999330 135351144 680337778 637880687 798261361 63138462 569068250 704892498 965825728 767410601 869112684 494965817 908997060 326925230 761674621 921166474 971522512 785881759 976481511 47258770 692488949 607746680 682105820 844018865 893051385 509277466 728692537 401941956 840321850 609073834 889084131 97528603 211229837 459504677 534530580 993805432 995808686 503182575 798223690 137407342 141877871 488663920 711907041 548303898 867352529 702100498 719788917 263658531 993814033 255344403 981500067 577275574 876749868 807974343 960601447 187485996 856389391 515343098 890515646 874608320 898432679 397946844 798570005 642865010 969537560 148863027 663414797 888450594 909594183 640226725 955957949 716738879 799452755 936798073 999182430 808488811 875418076 899301267 954920308 753949519 817757477 665095713 863184160 53825208 761332959 526436557 678735701 197840180 205766819 726031262 889493215 253537464 343987146 795089062 946682973 756277682 889865665 108290727 596161026 965353544 977626161 284045574 652869449 506479964 659610808 139789434 299337218 642263502 655094158 808254979 925358203 963106051 991072330 87606679 615365885 476839593 537901862 843664836 918996161 273457274 383821942 965482052 992796025 93121871 557073782 552804024 815540011 776974451 936697654 884464772 999270159 880003206 948289958 760827734 787824879 246402100 824009262 2261384 147999926 934622055 938256276 956628851 988254010 634465151 835966072 805458332 933369340 851573899 920185348 276485746 985296113 790291042 848108893 116176565 550215737 707522406 811509288 438081578 551227184 410655575 971658828 308145926 688700082 191897868 487553096 972408689 999943664 149166586 336579112 95363256 236045033 19707942 991322881 723699417 750939660 175128551 575366329 524445127 816276013 323879170 902345152 374173325 833919178 33763177 64935531 870705202 911694219 591353728 638816582 5375846 825886105 260331641 463565004 186116587 699208826 333439312 729631537 183001557 236913573 721775246 991018468 868335319 981263507 791997298 938196891 361793980 878068725 356490424 513834690 237400040 809371693 639255864 922570676 70941958 926488541 181550996 859316573 873711114 908674152 883507977 958088632 181852861 666695422 435342178 969344032 115629115 429286932 50025946 291948095 714088842 810893510 913724525 934296278 119136109 545313088 588790536 745066981 648171780 746779169 759985506 938500106 443385596 916045134 716118797 991813631 831018452 852670502 52138733 457900239 200757836 298841662 881947303 949248037 144185681 442912726 795956628 949025397 510038371 896777038 145810105 986621345 910216881 966183055 719346223 774902373 164726647 618798958 112403630 979645628 237553796 330501693 563171784 944844139 829582725 882716694 684910607 772757166 727698644 941127572 542575156 770308189 293321333 709205885 42020515 83866290 675033459 716645294 81242796 178318945 610521122 881834985 653818062 797754762 73562493 235115587 441353149 992714579 655804117 799439015 95476644 790026697 166877818 192765351 952523738 976932566 914015980 992597634 118399551 370823918 404302318 459845443 444893283 593827565 766825641 820786464 822621709 841010698 899385844 921845915 451368756 902869733 119119254 877780130 504722427 695297077 840185981 984501660 950721466 967038866 517361116 985215014 947510406 990962929 197190397 316514570 5543179 726436180 174799213 378411482 115475363 638784368 507138124 908674722 472567961 563429147 543576468 582782163 127625045 842385851 893883368 986171266 153385751 805796529 565186235 787319896 961086493 979877234 359328175 547504098 388431355 815264648 166902241 286625662 149173029 198163694 154148768 251057436 632138675 826955702 790162691 982744051 656712668 941104112 284505844 619048536 329914726 771405632 7944755 665481770 885959971 964364402 272025961 879823778 331742368 890806245 41548956 216092761 406986276 848182092 41743808 909989159 704969456 873467806 52794958 144512971 168471018 949818242 401995619 481340487 523023356 959349914 348436870 771975423 109726705 562843886 846610138 969648149 639809640 898744572 362254142 973441048 471528064 740376433 262900498 988603436 896280604 897354097 353436271 547865155 171846388 818118057 81586516 129475815 60935293 998587362 327282755 436531673 536168965 667922550 391112958 730518413 390630406 529362510 957179470 981263379 388991409 574060703 607703189 842231296 109459496 436170630 789438174 796765462 404344857 861192362 679684034 989196151 708203632 760548852 148474506 523790971 894119824 915597391 327061698 824943962 960521001 986355223 750533551 866461085 112115019 229226786 969164328 988529878 127401844 903203963 724621590 991164254 32246764 806819547 713269867 736451430 303981697 962132952 952360214 978926132 183360030 720177754 551632087 579427301 166761304 769997821 240817463 518721047 511254009 636503685 653220499 717848395 771286024 840745507 797848047 966624663 485976254 580769783 571173344 621004693 70446509 420429887 36239128 425383639 841603814 915801675 8762103 731840865 534313612 567675314 653901144 881214295 165287389 222189410 497200366 968638160 851190416 965389163 365822356 915353187 744333167 871761919 960462032 973828560 694811230 736036579 838864694 913093998 103663885 866626501 386449366 979879312 650020681 683672207 903926366 976705283 489255722 622926339 656159784 833001695 759574408 915663635 481394156 567545167 120490068 122978612 948306721 948908527 645344530 894145506 618912855 780831621 694303286 830855681 210161882 816611922 178090310 511175189 48475794 774251802 843130795 896425350 719780848 775036067 542909200 741537592 624651503 823646941 200232896 839893001 993467120 995338370 449781108 457690709 195700052 310709410 197305666 542761559 129328712 460072314 107148374 139972450 236007302 705714630 630860691 726650587 281407712 886533192 356588743 618518058 441634507 791183449 656772068 906659962 739209219 870218830 33663425 912056548 487934698 677601389 142332429 505450520 791400017 994973013 162445127 191513788 214350758 371994876 959771267 992840733 17102258 290222622 905222394 907511075 997898358 999311471 243316250 511115200 267867919 315480724 665222007 885995717 415640864 595664286 961846706 980236332 512034685 956194272 941898707 998402794 328778004 566171589 215618089 334755805 914513034 916670932 773401631 840848783 359470189 432936566 246432417 329099152 121947321 566900032 462037285 490500272 674993582 790467648 132906348 569578402 396566700 514554668 211804436 565798421 219597607 492920144 880108264 923270746 215099367 673618284 726889181 784239037 559059610 809078200 370199236 793370269 526945028 647901595 497884176 909438098 522046720 539376912 268426342 967002763 707006374 891025090 756007240 842447969 883030362 925841799 669983263 730904867 997745390 999895467 955196610 959058861 13044211 983908091 274140585 387576780 863240642 988004512 274232974 999267629 164677164 868894414 41375424 566756184 360962033 721190058 885400761 972897521 163434060 388137174 736100362 997783849 576136875 717535047 393446972 468387054 768953302 953562030 73910011 431994642 519103268 812515714 143582873 995440773 913654503 919249412 165906634 553498794 908174229 976551814 447616028 718040192 168319742 701266018 301846020 658541116 645462006 992460171 600066754 681568141 243629723 559751233 26150278 589304945 652095017 700552526 315942797 700022568 974323925 994931686 79341562 684522637 36159745 628553259 309808688 500183106 981105933 984110242 774444649 790854895 405520028 957762352 936133044 973262506 795134743 816901245 953690590 979880831 89491844 942882057 310197935 591352091 309668495 902709092 356167265 602684676 855560021 926310609 357276948 984542761 309628800 563056211 1034915 691820855 412660169 931801553 839343490 892608023 165279132 822353338 511353464 797025465 72688117 643369189 606085557 812992319 964327913 987221759 421178119 714793160 821955807 982019792 564883061 959011213 759275855 944667675 739264579 933650743 607747135 815534816 24125779 590803802 585152257 903883377 277229664 729576523 73355864 973182159 339804689 920045407 917728405 976539881 243189448 997900641 622189925 902979294 380979162 499447031 542185175 892320387 633765484 904351412 374881050 923689956 849834114 895322236 194050770 746145181 959518596 961555375 24165870 419774965 635003670 826520316 859375433 929357085 906841610 994518203 691444260 836055552 495410858 954867971 42514717 144109929 350275133 954256472 52310397 601983977 947609063 953805125 421962298 782007665 658097303 871959735 533212535 830522535 113505714 570525013 139899817 847740297 427549012 684048895 556290367 989419433 266861082 441063487 407322366 799058591 844606504 914495467 665918865 916645720 263242022 426383252 102357815 259237419 623362473 877734622 14731499 712194372 181619856 281861265 985755274 986591374 779236936 945126646 842175711 992916549 2043505 39499307 412316882 639690781 850583543 850993824 954652806 984354434 296793109 723340518 890084801 957772697 415220472 904762828 114247115 356442745 247080364 671881730 569439692 851476049 637748621 717721339 4914005 522031309 287975474 394618232 565661114 958830080 387914429 626632308 556839352 687683475 511612386 671890050 831744631 864501754 249726615 716808845 501894073 730080111 634788234 815661064 892183493 924080309 992588228 992938803 916642580 923988343 887642125 957869814 312275579 404937943 177187759 956753428 901482022 928860759 313469693 349355320 826037421 889074455 471078384 736565030 368960346 949921388 142832789 924863162 943203196 973648025 608345956 972714787 28261365 591051900 529929811 747085896 393453402 883423785 145262233 725879128 853404776 928721476 772490933 819985735 979207506 983216899 433264872 951567236 464296701 999805625 645368973 861514416 177203545 759840732 416486159 750349108 797841874 925616141 991462386 992923611 269090406 429460265 663145590 865289869 60859240 184067017 419735914 924454741 331371959 735924764 957386156 966485946 893962729 910464373 187708242 737392810 131056328 759154516 880464931 935076722 964320048 985001469 456657118 482654820 769785195 992932197 370856461 611663376 334293980 875645021 434362638 892294495 621063572 721277514 608202704 701434577 863131273 981524189 516070118 561103132 110833576 332554694 867074997 954349635 612525502 651552421 429473636 710518957 646872499 988011574 720993911 917674124 43525010 491755505 792449736 795650923 21487548 589453124 834780069 855274488 70334293 118025317 395388382 933205327 935163571 991820188 220887656 333655278 966075683 974330193 860318141 996916429 77379174 242586875 13292677 287961971 654318426 668797147 561748172 592264281 264645310 503301486 610081946 919471905 187259378 506255575 312715865 997899216 531439508 768666180 435917400 534057029 554191412 649427010 70577537 970380898 273485292 862650448 836703147 881910899 93260978 124304822 380631514 504812325 522022901 541825588 776257669 961252506 881954980 978776467 752046521 963834226 153217463 362649811 513004590 904663570 102556235 735866736 430119418 940709495 219196954 558728861 587024225 867701956 570596361 787630070 892071311 966841536 427236956 645803895 730127698 873109593 561719649 734345569 974281857 999545388 85305324 352616837 861888321 933282505 715554187 864323320 391045353 418584376 628028880 751567978 42201942 904589677 659747418 895472248 280376647 942190051 359903543 611697006 708196389 968068990 811736360 858101012 526697166 905073468 562566259 990839055 990926743 995315650 660731327 996488514 835223362 948459571 742674226 917667356 839801393 873355176 357552501 788832371 987164291 992507154 291514475 884420214 931597351 974882116 16108407 409812419 190906973 199073033 953096109 989753221 530099504 931693763 659706462 896599873 419393289 737686165 406983591 664825460 354001221 492593780 411870007 695204982 628267131 717738836 865546503 902779961 52082692 332367977 612299415 990479487 841907404 999024931 560505985 751262177 467601513 906652685 875611275 996322098 7937852 267315797 961975573 971856002 952054104 963638986 270028919 672531758 52885243 917388577 41399724 585449779 632504749 759592954 169051881 396552118 743714743 922242219 373555434 838632654 804614555 963981692 531757144 572239943 185312416 751297220 699802899 900074905 912531388 994354857 184759270 700567938 656798500 710014983 420833292 760554984 983911260 998441237 469189624 976236400 596445100 681593133 875765249 889651946 736019843 933909759 954873333 967388810 171780323 745114746 716993868 959162302 987555208 996689929 327563041 380366274 259875017 667378355 440586635 608364921 212542635 676151077 163082026 905674307 391280813 725123961 731530332 898344421 291149392 584540820 629087593 807016574 227279961 495172713 960092157 998682737 876201421 900399783 312843191 541455726 416629759 574603942 89736713 908360992 48192086 111984931 301017597 611820567 481852235 788318407 434669071 436376623 481518319 736029209 903478903 936372616 899268362 948478363 687150079 884193029 87351501 592862281 841800118 941213375 660359490 775848276 73866080 906333064 800064224 980358705 54131370 838936101 884331863 934926613 394035024 951402847 270664285 848202828 983758530 985375420 259368618 407460344 781530544 861103149 723640858 915842730 477381684 968855153 177842236 562452127 69832046 82687854 314004334 969471168 618666673 647170284 644829488 875289822 843840803 888239894 876444387 994907803 614037296 967528816 70767168 519335899 78481408 886462250 105775118 747677426 7454149 489264649 396142000 947708056 186991715 646038933 181640030 836698090 692581998 990131416 722119365 991303429 167520437 407455670 609216363 702341831 571332491 863845880 176306855 191817457 125492323 572957399 313454484 543148952 917665121 952532316 624535529 682889062 851852466 903188108 520382744 643568355 414126576 785642566 545241607 959898742 897846767 907237273 887858794 982288721 239634466 741896841 719104494 862464273 87041458 158642174 525487514 742337808 917171988 960884930 47949993 918885699 707809571 848350855 322535754 345945325 155938841 944302831 538244325 713252359 60763415 946123940 514651183 997917487 814779166 946069169 263146614 303624021 548764910 774707458 430284287 709292089 326155933 480771257 861338365 958488809 323506569 896120818 929238439 997204102 440684616 717670479 131363220 575175426 129071222 754059101 15190258 789266929 607299280 956123512 498675487 661726435 1777997 219780613 846801727 962720142 186523949 796109470 652666068 786634977 786227445 815539777 749636025 931937610 110256801 431504381 509601520 657106707 699613799 837034143 652322169 874647786 930403241 996028684 816841335 972486489 945570247 974765961 722077440 982344845 691354569 937838061 151006363 173728602 39943601 292124459 609872125 986682570 494886280 784293917 223044912 469153238 645246359 799148213 291264933 364371631 291779000 310347399 115522410 974829959 900376428 911152075 511218286 899921982 731314002 890773010 413166376 602179516 898443083 977371519 369177553 756465988 110515581 353189896 818775182 996166005 123407407 976110432 715413247 853696051 827006718 893719871 638669376 772332727 75377593 326722214 358987334 902228434 480131980 699521976 742389988 863098853 612143878 960364924 346802483 650695904 829207574 924539889 635637007 923144810 658543170 834555749 140604258 472196725 695181460 789118697 23447214 549612095 967899474 973694729 627718981 971230453 722592358 883437244 671944848 724205824 332402360 976039216 127396718 820387589 244261363 295450501 865105629 871259262 503254025 966859175 525486952 650880906 678749081 934025331 470153269 906063474 949879153 957924534 998964261 999392283 253464759 524077836 666922184 929762521 398226667 435362544 41126233 151039491 22164423 511608305 300452189 724358755 482306702 539458907 129255592 725454520 726267004 873618191 413094221 421378749 575606567 773437873 462715808 797508882 377358926 844779548 878663922 991850711 737336853 951988128 122967157 891467912 592402624 870110605 653361108 700899281 444910610 770324400 217757425 370599961 452666527 899044268 209367269 545386377 554092800 797959511 226986765 836407092 73696890 964895273 63804516 922690593 888554985 994930735 759044728 766358970 658758625 901223435 730011048 788364725 334004627 531371498 138982251 455634211 40956613 595047619 668320241 980780546 762033122 845836470 503608906 978567457 629536279 939287229 376159264 945984799 649695769 902061101 91626440 712237197 322276966 582800182 189001569 549646161 940309656 947636643 138402115 453265313 708825313 895617405 898020344 991404939 466807945 574609767 747867756 927284552 633471028 834184166 870919790 909146078 323062618 592674235 467712168 540469030 918970327 920767955 340235406 800307117 491068166 992693237 863555725 892537747 244264770 468091049 688943415 992464972 272813890 858590990 482160434 626480057 823162673 858023197 798716817 892228677 223405567 310355763 46972274 354881321 635020529 654671918 178993370 415951009 567971256 758690952 699130073 972552458 183249350 856101541 173668871 358365088 290399389 627464167 879577620 995422027 436167017 520936096 750331818 980108167 253023146 441816262 471330785 663059026 324449986 851283662 814503775 920483755 325364800 958043917 287108352 568605001 134425298 150937619 62840610 757468125 997518452 999309719 559510529 728054855 906934408 963479466 893907466 982569079 904751001 955498786 787770593 811342647 352390602 780273850 58692042 179896801 562789132 567490525 455758395 596380366 995660766 997801961 129562196 882639150 668808201 779666167 863412059 953306261 654101320 873848114 102837914 281971417 369317033 882479107 519515436 813860515 235886496 640247926 577011609 625619731 605275208 645862431 543643323 652617146 15933961 583690709 850215982 956798355 273564548 405786251 612408490 979323172 199634224 475654287 398913586 866078682 581675012 772572511 217831353 251437942 161871214 370792243 90250616 172136559 767703992 977357075 173441896 446706953 657584127 703000094 886227156 982204567 530927957 921724019 677868569 692014463 595671171 997082456 357371670 761902706 906173936 925364144 891549287 961775131 212685703 410871845 691037331 728594421 914585075 914896438 215227563 579092808 732116654 901977979 494189191 873789416 828634303 966342059 282353161 552847171 521842506 756759745 79358422 489322084 628971388 914829294 116647086 400362179 169423692 238045607 981800424 985294642 204033092 751670451 461470412 697577015 152637025 543389254 103701959 194185427 165536772 892590642 164097073 377121993 192600872 738922031 710163723 801626157 482818098 794568152 30843573 179181886 519148709 815962095 81736443 126675327 196218817 693014214 187201264 263127514 365032822 668670235 643254382 672230863 349595346 824115710 580183315 846750000 267336299 721683024 946126498 980805255 30452729 849717857 314888337 533630197 439880520 683437725 397403631 564472100 666673150 680439151 195193731 295176028 943376302 992326540 62593770 276220108 666940295 759881604 232798670 507754706 383862432 510590260 606031564 921925179 905126407 945372993 660110256 772454024 842967854 960208692 468946359 771778230 137049364 433342986 833670637 934494194 284832503 447698995 162842485 734693525 203380241 720184325 392654959 934322014 157396750 185814784 143117392 497713820 383749350 640868809 42956634 892301300 354372228 546912166 466110473 694278802 298117658 612637008 821478533 958566013 910672396 946221151 380114755 981503563 788857635 931993515 110750515 316969350 724590444 836769609 746034286 963301005 134744328 248869327 81374550 314126323 405444663 582340992 495260561 706091141 514983445 939882959 263850740 821172904 643158847 884168024 308698782 988730062 935115411 977132967 445012872 756273864 512035691 719694647 604239155 880858882 718718908 901729896 281048300 976485966 382799503 418148092 700622837 941399975 456482420 938138553 239748241 524626561 731847731 745338708 810682132 956343718 240299711 866459133 295500128 966593879 526605094 769911395 981602959 987935065 515658370 864360209 801842904 802428360 349961508 597666418 667140431 960161068 66117361 401501677 866847675 994548011 287068325 951191166 417735635 544616070 797722829 824116681 58255210 649708050 686999343 700190435 712053342 872656524 197059434 248861648 88100052 840215159 117346883 728430186 737884363 785365435 298274145 729346664 300047850 455158654 111509048 996848346 480512110 667787027 318932147 636249610 235851949 236307321 228531216 603772932 51306762 723319415 218462462 552270703 542867402 853097415 845530452 942465826 189248862 847906159 975457997 986849121 79106077 177351302 605307965 951127188 952211103 965546764 211371087 469307031 452411483 895043347 384641041 745602678 68444741 977241270 785965260 993813281 480603994 779064494 611589780 920748990 138813727 975211729 409002561 556639266 227173029 807881301 215673477 799073203 517031451 870377526 950200293 999408722 991138825 999820381 527103538 531366119 100509743 899823198 254432630 416513289 36886718 437090645 553977262 898036915 833082332 875673052 172117325 734382384 271455446 382598858 115612708 115710829 577012608 651377174 377462454 703869767 965809477 968912693 192130261 447314130 436565205 821701498 563293696 720170256 156068387 804972613 77682965 223911420 974274625 974727178 71872293 195656630 606973926 710331311 959858180 995208099 84530271 308054106 928381599 960513295 967326672 995796961 143227661 159706359 702942625 781345300 911550630 955132034 367911396 436535654 406343504 835752748 803144159 998466053 956649231 983444294 324484460 986979319 11438533 135740371 470975769 800440081 202559139 234109243 756817088 891952713 402785 177050224 194028883 571476908 557487467 827125091 293452731 453876484 255838904 412303740 579463711 762108898 259053947 307522032 596783754 924411806 299653808 363135567 528849792 781250403 910705021 950751647 85609322 93942285 185172792 250764570 838142088 862692497 595695010 907957359 993417218 993731996 984255119 993969789 111811600 342234356 435458369 607481143 348278812 710019901 934045880 967758392 61125259 976352565 866152799 912835096 263480715 709271653 997366427 999183272 742434040 935243520 872513227 916976626 814081469 898069228 918214532 950791583 505176174 819671843 273990215 523122487 147387851 452079834 683401639 839458615 949713233 990278940 434814518 603748882 900844303 981343558 75364495 739398620 665966628 731787674 240323118 802752135 188297583 644150510 268596424 302891103 602144978 811129416 188540134 443996114 522895511 556174470 870877950 872997403 487707601 904169745 233503527 780999502 650599167 928193965 346750663 725488267 38691242 688998856 409278657 854597180 283292339 778803426 178018935 877141607 941239655 973927455 532465419 682267307 128362158 790089953 38496073 276380231 740880845 875242385 33627745 93477174 146907365 547004008 128213127 634234530 152063790 471180877 394561758 755848249 418423156 910472526 50502268 942833954 260893229 276564764 822666077 862304779 264736924 984210780 642355850 776171802 172895566 289270540 204907931 496227052 89772920 388114587 942872919 948329836 519200072 796307659 157024751 896714562 118877887 677527389 85586156 480579841 625458519 816438413 396105898 634936076 78303485 309362364 911453651 953871652 9408301 785248560 716329084 759310267 613024484 672874800 255081180 725006750 664869988 818402115 837376421 914482229 633918770 974201067 554391308 969184518 661866999 686453900 38810437 227831884 571833852 931679304 188342730 642599763 456901979 751226536 371393665 919053278 414885576 636079011 705605648 925039715 565085442 706634976 483571002 962213450 494969467 870244422 686948093 738453245 575052740 719886809 255968299 808186760 284041757 664908528 933720428 962731684 340438570 451703000 732230983 891593624 704247321 748922189 283099186 891604307 84428656 142157512 452001280 482430391 470957137 733746064 609966362 902157690 821998546 854904105 302754446 920762644 928703026 936448263 646675835 675458156 580340757 970454529 511958934 717671116 903460059 909188755 393484677 828897477 319773015 517043917 658538214 765465326 282594440 342914224 847049685 895789399 870450244 993830820 897112324 981625719 8697842 189066997 164874504 424605878 850078727 908334287 816481553 820326083 54952873 265575006 760839455 885156933 143426730 292091103 902673920 994505139 968931031 981509113 53866706 309499946 379211607 818569014 373326688 695138347 253719848 720123765 659784489 770419444 947859369 976296110 329754979 821903367 231214478 503886321 950561623 953768507 189531115 498184845 880370279 916990921 449660065 577740584 219625650 575293271 645243435 711993181 289674871 344157964 188503388 611333481 479586426 924304233 278628342 976629695 385283245 648230301 533331184 944222215 552292466 582248988 706234767 914813116 318665442 493533452 841890643 988555274 283409559 284351928 397909313 796314143 538347859 838787945 911552576 977568831 622862168 838936724 357462816 852940816 971513879 971925333 603240107 828882698 104212302 462769040 389597325 609124264 84735831 295150857 244340664 734314233 983196650 992857017 356977740 936131235 907573747 994768196 475827564 592144575 744207087 777757323 600915990 911154968 244883279 471825035 651359110 896040013 741880166 820487285 610346379 619269777 5157081 792146614 110746384 116902036 678451977 869205498 230477661 535222245 74362313 325307728 328738446 334833766 302061003 938189330 273765830 361775500 463592541 601468837 729728056 754362423 173398624 819237727 696403708 759926708 977840342 983816999 737095107 993207736 300504995 548042821 680596613 932348958 537648783 926266672 613845673 981766118 263164828 670283596 503537159 870659668 606820629 786162890 539270187 733312838 283161556 595168783 563242738 988261969 958900826 966377086 337911448 558435331 193552468 602582614 305964390 604429694 836990061 893419740 923406021 971038317 148019810 575739556 466636625 477100354 258813678 631789909 201212104 683076072 714410130 993159466 548473047 605254362 257919949 753653622 992935288 994538363 58226181 891118263 100144178 694185211 42485872 720256232 265149395 943137006 462340436 736628494 996090092 998293939 825594328 882896710 972552886 991524818 966440608 997623423 18256074 183630999 648661256 996637858 146544410 933719246 860449525 962233727 950733639 997273078 982732910 987739406 816843236 833323065 388181042 858663593 67324839 584979735 574904822 904727704 178704943 596387472 923527303 982685592 338846013 845773978 252127233 962121928 205900701 959643465 783161880 883483056 481210484 764554237 455352638 570195098 778960022 844961056 158906388 833332308 718480515 782177757 977416457 990076217 208140285 852508086 377940255 670376034 257543513 942731570 844242606 894026500 551456118 662404727 493112571 827292647 501737844 968907181 660367406 907120873 194550655 648139792 778215202 860752926 908946621 909760853 847172053 930804535 30659001 88345163 629859994 667025199 469387880 955418165 434520283 855220256 226912911 951413900 764601125 796522519 931161785 975739012 378464494 925781260 101164453 105713616 422191642 944383365 265644805 603643404 397758380 535826215 636320068 902647473 367018700 429214266 478682627 631688572 702575800 704512504 404076351 496035352 437501174 535378323 41491866 152453303 73494452 568987411 798763669 981700667 728734085 771504664 475808294 834530062 726234485 932895192 929124462 975919493 437055217 764931179 605982719 619928632 705163287 954212373 617190136 968863832 414877163 850689591 376735723 511122736 679788748 880079874 27732136 464247441 691111610 872862166 775382636 856810192 552390585 705451950 239908686 902454063 873252143 919004304 593396141 641862143 348270094 674989019 992535064 994551816 264704924 914630174 553836480 652606704 546919392 929666103 876453692 887847531 625237476 721796488 289722189 637299170 932432566 939214616 429705883 795277127 257162685 510596443 315405334 818706136 835746552 976247955 120555539 559612265 430925873 701968835 232935515 362115924 890374466 913882573 706677708 993897475 468495882 921336643 20308345 706775098 489748559 527755292 978947144 997231092 280114238 595760548 422169649 528884239 895036582 960917001 596931103 667381542 121124598 123371797 419463155 558762598 101079537 177463074 561808177 959329439 215766080 402721450 586568207 784895908 408383428 460507196 386203748 533493710 250102785 488441838 18627092 905353089 414547862 880101208 473312980 830926674 659253522 711591714 623340158 836326551 935147782 941756352 347343393 538908283 636246168 678193194 511768742 705540885 840141960 988285480 350198013 665959499 61624669 374940875 399737850 890278036 747048518 886686262 980010382 984354924 549536951 656723405 38003760 197172364 663958353 979368757 780494940 904013774 298536179 489447778 751667294 915894693 416008916 571132145 662835808 961615553 46232036 679401766 326787923 701220918 394415104 534061697 812222997 883422582 883344001 920475413 321053354 542072007 250695564 676721508 971603160 994982615 541152759 824833194 684237967 993737405 954578943 971312068 538071908 933059376 157529985 608461611 742592641 863672882 88541338 997863039 141072524 280966250 455636982 921898349 481704651 592463309 719034516 767883721 535454813 649201972 376530980 727253518 191145802 216881021 578124550 579983853 614316731 905562668 225948390 923973227 642709964 985340366 410888262 558485442 943031143 975485084 840387468 926382004 762787702 804232736 27621099 872945263 250870957 510098755 181985124 970023450 314096814 626399863 276885729 445873499 527010792 970914357 537122610 737872285 938810725 953676454 744593775 776586965 882521930 958298576 90186288 216748060 983311021 998511249 208300180 982030458 957667448 974263898 476414454 925157422 389513310 452784073 165099162 336635042 970568670 986575361 773252751 999020260 755906538 861206741 635867442 718667354 925983638 966770656 382255664 702166375 186306144 591762171 287632011 959890588 239491527 920531711 434439894 501350327 533437898 653290757 370658981 750121029 523661057 955182048 355374408 569490268 203704611 650809026 464941162 489514825 668320229 735571900 257031447 822162644 530691644 798355655 805396242 912997724 159204208 244113395 856889534 995335387 102948008 829320895 512073889 862709440 458466933 880708654 495381711 532930956 162159746 848586952 53753835 903106359 249685470 980483506 777516991 913806908 243567465 534133911 122836317 523913307 45496453 126030376 255458349 729338491 769179219 822863240 569235353 625324480 845989761 934464708 449510026 868840175 938352243 938388211 314233142 406254200 778444605 925750988 303531217 725405447 599959656 867399197 643488236 923416873 319495484 685304171 333414427 566554293 827116892 880403937 679648720 982955598 141170194 799251716 636949933 813540308 685628687 784129293 15766449 229312828 625707490 795379131 90766531 928489220 129218571 860534785 295367411 681085213 896634693 927346452 421553891 492139154 234485551 691087697 126386061 849749268 662072037 880320827 473565721 872100856 107157271 514490132 909283024 972592762 321511861 391439404 202839108 817557786 476028593 664589704 306267224 932602640 757297394 762648310 987391312 990446857 802161770 978290089 29476309 450282414 163961772 651025378 923580255 949120225 625791606 664797451 63244889 643209444 609463274 679166215 224944904 686944189 132867228 260362470 301327116 735782482 16777505 696432065 785991357 974060243 601812349 929833425 392096846 692442391 428570064 562867538 750743452 772554931 115345947 407714656 491800538 965046512 302886547 759497027 814595246 842599192 261167870 674913702 464674380 934780591 294790772 891728464 688768876 975520531 544410582 672522396 482955812 610741306 853080151 870745518 462054192 520512311 340013565 954960137 708882881 824240750 146533998 503416766 53927505 308205789 653623198 701894730 851554023 997242169 559332418 659839485 336456838 704856366 222775349 939762098 15756128 109759800 100026040 919566314 300549796 620199843 872256598 993992095 846317889 871187616 300832516 943020994 175583128 591829578 800799624 865839852 155099208 585502803 453952495 938342971 632722915 918811400 732755354 947810975 913047152 917213715 925890081 962678545 923240305 965952553 810983549 847541818 449868218 759052999 190226059 252807261 980743258 996334414 967432354 995322572 590529807 991826875 735546545 879941361 625420281 706566182 288159473 592587046 525343602 983777856 751802999 761178308 642639602 865738007 813461218 994741824 641336484 822184679 454118318 946543714 105339965 531794281 109292776 434069618 661476169 965017283 13800480 198232516 203777915 704869568 498764379 862435585 512884009 935815402 272634082 990139260 713682811 859026042 102781697 724022562 692885174 948753730 398235341 894800045 135282391 508821342 805373931 965070727 703801097 910873531 915091115 936412937 583943441 842020726 202474800 649541003 703671251 926907491 290181471 472909365 809383077 943479381 983473370 985249409 694608934 834609172 714111684 931510109 351802984 974518144 289533692 322838650 209843212 926786934 995439190 998921558 6656247 128630044 257478778 405452439 184437073 951686360 48275510 272388938 427295945 487401658 176602685 900527108 145249852 388535962 488788463 632290576 388974385 980299399 259148383 952704283 170118582 235027716 783047200 911220363 136946906 240888616 970365015 993604945 25417394 887415989 664533045 782273598 895745005 960977090 237374546 997608237 675802040 880647741 704667752 772914570 74168205 369607321 850745892 987115867 294770898 994884786 633115343 970485925 427435239 811742286 884483240 970935540 570217909 984869270 230978336 642189644 10678132 101698371 65558609 117145734 340389814 790243424 170699080 540194195 915681908 922706006 110676953 814939593 10285864 836121451 475140375 854555052 481267218 641823030 698113239 746760888 258458883 909784018 128860197 404461666 80001925 733395267 56175467 898933619 653973453 887372467 217640657 386181192 246479618 761245392 609141928 766543709 637200845 896882814 137388496 293971435 504777562 942717922 825931741 886420806 217882639 880821794 159706853 440889467 101000966 923329140 108167252 739004860 637414853 840040183 700450085 872778664 988096021 995065479 920432472 925964242 56625391 218435630 200818592 799044764 436123522 870809959 910915262 917459839 281683773 634845431 814562849 913533448 190603265 317851442 53487099 592558375 533152028 748810069 359184892 939888555 540421472 549862674 190479729 352507629 828940956 859213538 702566480 838870739 142058389 204455282 610406879 786947866 842885585 887737019 296986047 667320267 480183687 922421885 360757697 380055661 371090683 445804058 887029485 936790229 654272218 968978828 262507253 730880141 555066535 825516558 957781580 974725382 175923920 765684095 770549749 922942420 783028216 784806462 654944133 997313469 335123711 940181978 759326883 919754622 986254876 995912976 378572074 992310399 412410163 880713347 229136655 323543774 386570491 817541693 654368488 890598619 150719529 343169098 818939022 871695263 854142712 917050200 780551620 807117884 244326042 646526735 241522563 698175676 931437737 939275269 125271450 503653418 375382031 784968131 313403591 581836312 96209065 146039422 981050535 986551703 982782426 989020947 618990206 745148490 180405505 298783192 890003195 958010046 832649285 998527682 390068483 887562925 189334246 807774868 325566104 771265191 738772238 808145059 736622530 893500176 858328835 863667903 556019968 666926091 430575358 951721985 904330557 965180070 749279248 909592821 427285984 493425126 759682299 874176397 226892128 459155182 806140317 806355353 766196934 797880484 72067621 262779922 674306769 878011626 651834851 832563117 815057219 894242804 410630519 993292058 684271581 904543179 118457192 147452273 137122135 193848744 288469211 518253917 506232192 958825879 470032971 650296681 575870379 750939251 145013056 825467682 192253345 625865484 882958135 994610128 489405839 859452370 121606844 750480523 313640573 522270133 7728040 185859171 551614206 701576409 232982480 993657982 462041608 633134125 456713731 663325428 218915091 772258558 939367832 994084407 802364928 882534854 954218275 956040976 874292334 879586171 271158506 672067810 942440495 948568393 601914927 845986626 106258210 679877545 766198085 793491584 615691341 796800752 115283398 962155550 510202952 995511903 384078163 957110997 818435038 874205523 638108023 791353683 689854111 972185730 76973036 501570675 326230775 964404701 266866315 995315279 755682104 905238659 575147789 988689784 980350753 998255855 868243576 895069421 563170237 715167733 209411988 978578076 904958107 959969719 221322566 842038199 248012901 492632332 184500808 888425052 7351782 515582285 858121961 917714331 791468801 981934093 782439817 855204437 641960803 742006675 835096013 984374569 40785928 630195626 549501756 601893471 993483932 997836772 554354566 719400260 961617501 991413793 567959197 577745965 929229780 964549061 406709658 500068342 706493554 842545025 808910964 836166535 887692756 995649317 699647695 748381028 110105382 743828539 325472229 385987695 860130049 953255467 540084171 607399688 262046538 393215470 340791068 773784153 276209456 946885824 962605439 982369792 781374989 842299455 681916596 684533471 750047990 927408910 335419358 676622844 384441112 503183051 122996634 374424638 965397675 977457085 247909184 512394701 225204269 735256718 65187259 719094873 359492438 474410675 179843321 695028397 753529873 897978123 687294184 740958694 980512024 993886306 349519537 411805412 990501669 992049448 240211651 646636778 160544226 348984524 756103702 773316242 460607193 636630514 144269546 995266530 771255250 945254799 299918637 463287866 116194986 978299362 550125275 650385201 595528753 998969239 834293351 891583574 331779129 424638308 212630793 792230721 351796854 448142474 162588185 755383188 519090962 579396104 369647401 674464842 622106028 870429884 450953050 894540882 410764055 998809843 376626570 909909767 577244179 753110632 303398819 534449971 419453982 630210074 290912351 632391879 995589708 996704554 30159595 568965179 332394785 522676346 999368808 999900498 480605552 717788702 353230949 736400547 235847281 950089980 873301076 884147928 608584848 953492366 930091285 968788858 551235402 911095696 158056742 996325486 939150570 949680031 432897001 908311853 229540040 675452676 909540164 921499264 367634542 377077874 52601269 490192407 34521416 620315467 428724109 790877186 206579735 834539696 302494806 833698419 713944361 996160269 284025832 755603139 393536637 923294506 193038996 625321833 653423552 891477669 442406047 602212040 764832476 870940400 207569822 779939569 798459184 942747543 522070391 696986828 900719420 970692958 965900456 978022717 777960052 978311194 742131297 983794637 969763342 970977048 525422396 533759084 495562042 648334787 723399477 807106315 790416691 998225800 483930302 528232514 699702679 841728075 468474602 739191541 183380570 683938903 745762819 831466305 751065186 927497782 771807920 772210733 933090744 938003205 706379400 762713614 153879784 557588513 792779234 868386979 285874474 734721338 324255172 728475485 184030573 785223993 35006814 284816994 320369810 752298040 634763998 996610723 149995794 654962803 173881559 541527519 275663904 597441439 470016015 523453053 319680065 753045374 959734625 996954864 883922206 892876005 457714581 749638221 638434507 949811219 744249797 928936027 765902551 832464204 876395040 959706735 827782705 870162099 863721989 923584967 101941129 490757687 834201104 874653409 21642743 67001037 141314924 950503727 478331093 973050892 272503878 433155611 979691387 989621194 347225264 608538416 761101037 983826365 739224339 943652903 643690845 823417413 504201219 954293639 258243647 621136214 949031848 999379978 853749855 946173128 850596777 909149991 576266693 887534426 275098840 802075009 345397630 798377682 274325448 418300109 915934205 929756825 293595853 470319817 113091177 553357624 281170187 334130882 906965079 968286476 884495100 918065690 538274460 776108118 190606821 507036498 296212020 497647594 710046738 780820297 532870449 560157338 560852192 769561270 339357216 497365518 967687046 996243285 169185090 347765074 56912936 694113845 946705598 996563537 158280128 244884657 712676691 939183963 242826135 604725367 31132934 64843515 358350970 788447948 330683633 510106109 838750408 922696523 939490689 984175144 69867075 983648770 466924046 910076220 808467659 944561608 417565770 954158318 917435997 942949840 827659450 895574369 670295074 741900018 849547688 928477387 567846082 849447331 295512048 440065479 58775886 91412073 438913297 959946931 521331785 935438234 288757020 462014942 868456702 908008670 645235973 981704338 70520383 162454828 411707582 812224218 657509981 785985007 911648009 912057406 739382996 778143773 45212462 598898729 294264154 540232699 433501727 702346602 307095143 504969434 839883451 865497533 275946122 287516484 620366463 694842651 408734024 879390681 645036722 996176495 894194850 918621668 951163208 974853605 325998994 709634589 988407826 988546599 783210884 813140352 270661035 471773302 855032095 879753558 928869960 985770079 497424498 561896978 238667824 308802800 697487586 860096189 871412919 934379836 886357365 979820025 740573492 829086695 525239643 551007649 933259075 998165105 44600430 104280559 81334099 462067691 934545092 958386094 14654872 324892263 498519751 636046583 35308447 480903643 380654736 954738605 273470974 522866748 38393236 816308004 276652393 722893238 48513946 596029663 758111262 880139698 709610333 972382023 778308392 983649125 316548407 684062302 407559671 796212128 905041017 938257550 642289404 995922189 772933295 961660075 915430850 922652476 998467538 999616833 468414375 881140438 476603462 998071472 771294563 827996649 141070229 547092437 726908550 903059154 669526213 915710361 2140388 374538422 904456676 906035395 985236294 991464888 475650660 961861449 940482159 950847474 677400404 760957517 172545475 911334534 634801704 942214582 824251664 992745432 744086646 998513266 967657746 986954391 178797784 571876939 312653520 838467653 312114276 558046103 608223482 646600800 275871320 500191791 292153563 895860228 987765577 998705740 385761401 451269694 36303345 870080405 180608048 789007822 656502282 922967341 489680661 557307708 178364653 187396693 804398927 897577110 803044407 922518428 51547257 756182662 806783306 881621324 227033728 700373306 755744059 928466257 986077996 995436659 868679633 894443331 715025270 852784089 541546566 995189395 20141879 481615586 492951116 740703075 256377745 911746523 97949800 940098894 755142119 813096540 321916606 973600544 226071074 542208432 593896062 847447242 961190239 996577775 436016419 852753670 86860765 554189767 745559527 835311305 346542228 847779419 352720073 414344494 327811344 936500586 701493862 809755120 633364620 721561960 734544664 801727335 799278057 976901097 924309328 967853450 206665937 749218974 816480865 858856213 42803194 905128886 223671935 530084640 31573222 403926165 44398505 829583739 887431405 959726140 24860005 727321244 643356719 684477959 725867457 845508123 833569505 930546442 596178990 863309367 844445151 872823234 192129606 668740457 355064868 379717837 310004026 418032296 158017990 965550992 245191269 406417293 787407179 889408496 552633942 685899770 694576387 778182637 120323495 541340248 633626658 912932604 230120788 685452738 871911781 880956038 771634680 897211195 180684818 385040336 190490422 894316966 503607250 796153130 154934811 315433995 714485997 930699851 752783956 954630655 675336218 776729022 828350398 937265407 540059308 703730620 795120204 827017548 486668987 672281914 709831351 922006626 156937466 453172082 979003365 993529893 936163931 958100690 890741627 969496604 522112381 789451186 20654091 736450327 923796919 928529936 388097980 533267243 757740544 845824813 739112053 864138043 985967634 996876770 434409236 887695147 944786529 951112698 654222911 672333766 960070612 999814503 98414525 886177939 550723417 578568047 356356373 409930584 194195621 305405846 322497734 379400270 60099456 201487177 930001646 957587874 918180937 979055141 125791626 961442842 576899095 631135413 733494461 858030987 692782728 844708947 511656013 523323658 441186569 691091764 85500673 544770776 843115312 906907882 199516550 360044091 353713044 429590701 160790861 830245263 136268484 582219472 695691507 747307260 805253343 959967289 431622029 999819020 816683512 904536762 526998707 819876174 425705901 548506114 370355165 627053238 449611347 736580655 411462094 582954893 168006852 880621901 566699471 951662248 463334823 541490608 677125404 924575224 65346847 534359420 689477813 881789027 732688235 798520433 179985274 217857950 402695467 477450618 459175250 598920443 128803520 456346500 851457965 867477602 922711183 930842502 590584373 652576962 317008999 465594505 857284316 877432632 681918045 689854074 609283306 972434234 960319056 984010580 57793951 794627992 505914777 897720935 845345155 930414351 531489901 934225327 679650337 800236284 993180476 994861594 990383961 993513621 854573879 982665505 445212419 574186147 479896930 486495183 39266216 656449483 496502686 500292597 841438002 958099276 106169370 514975102 125699424 250785035 944758876 963385541 825695368 982595522 911387715 916904413 775059775 924615323 836061252 869995305 685399454 756276916 820031506 835752465 727557922 774876883 490759705 529020459 658842897 760285441 98946885 374247595 256506039 749533780 561434787 776995639 807169964 991813195 849982874 857003198 900734078 987379069 225916874 685249772 463635457 688999678 541382658 601752070 141904865 519877193 58888877 460699894 167778030 868233005 699964729 885686188 555557377 827412126 125764638 439739349 250510075 885639884 160838574 526733357 543113017 909720583 388140558 917403196 696841868 794998485 499970401 846064731 383402626 811176301 477234462 927771969 173410831 561993291 284574518 378818126 758730787 767563519 328502709 426042743 14522696 799504157 146753427 565650069 221020021 492033248 132569213 459069824 135311815 384662939 886903990 937111498 765922462 802693647 203149681 251652114 229162135 507562702 472510037 586081906 468015806 829847227 115355111 553768936 909412172 966482758 723367406 792676736 536301688 673767411 178752596 850066766 104481835 522148308 290068403 454718088 184992278 987309504 631960127 840185118 25242844 511990223 299556387 849127302 306137048 966845453 169779659 762975043 83898010 562835559 32231259 162562203 409197767 767493635 60711964 249659308 392438461 522516759 707581458 843999575 832321125 938811078 595557254 960884818 733429137 787950107 13829876 650829274 720766264 760471774 344765123 825567921 769657796 923103406 202072302 966764084 139513267 966372725 804779246 946649423 428188969 943401448 854683840 936647776 853298113 910188126 850280299 938168897 657342179 751367036 331215245 591075630 712707021 775702900 562927761 986779722 326112704 467382563 317114707 844027748 114385643 679504392 621314697 794522102 489735410 985600969 368982236 694106563 331750822 506993512 709160627 720483991 929900164 986198782 15082481 949648523 340209629 938044860 184815288 240983382 88647606 529271345 938107276 989382049 551834901 656423772 515228053 627703113 390316557 545679107 25559866 182545865 133435197 621752325 194056432 404087000 217145725 919396753 444364700 724182552 693775103 741368346 440010017 667795543 879214080 986780673 421894770 919655184 82566075 154883276 591528955 662216229 21568034 93459810 958532815 980387074 754203129 794247269 135166124 220574121 567846226 796702633 616683531 693624017 918079426 980498283 582740858 926464960 546604245 633679086 512104465 774784345 62907418 827691911 461858525 551478931 434006594 541155728 501981449 835138230 825934005 988738718 462990105 573954496 837001276 872091306 637534019 921304958 169500328 705103095 889625492 963200914 611539251 994157583 514336141 597188526 214791114 495033070 132654190 504446557 797214259 838043589 284658106 431288212 164725349 975292016 410000548 653149342 477406749 971273105 212347063 258597373 701199820 966812159 815839186 862594353 122285611 887878030 878032365 916992591 138536092 653474715 252898685 975299582 820050658 828808683 65745027 576680080 726162806 845267576 358047891 897386175 505991562 952129040 944216805 968594069 883120344 912369696 119516205 616396303 870388987 940034972 131080583 819121758 772300997 985387585 371507580 733714027 524252392 698185182 511852019 847186331 240839608 899894335 886058355 906285782 566215103 612211306 662341796 844525360 112799800 884217997 867865475 905984834 554259543 862456606 184844403 790923065 647582735 742310130 191286280 899215437 226034069 465822457 365296690 601107815 254246662 640555967 54231170 824999253 838797079 929070857 335731384 466163258 479641506 978190988 105832427 975912394 358237739 423408633 921516421 975581330 484239551 595193121 710759896 764081366 803930350 843464282 397615145 959593350 584035719 741059119 265756072 432462594 662471631 984101108 958116743 992052067 847570099 965221195 958271044 994044319 79195513 93908337 790427529 836796397 799939957 920379775 94218249 211597239 941673537 998253641 563517488 683470415 671472170 818348697 872539848 955790758 515530081 539636974 444894221 949730927 857775305 935598495 254083088 409239694 148855036 248635233 149898835 200337219 501409737 719455277 51410344 722479656 638477232 787503387 933500661 979929571 185047650 828291722 594160113 819932035 497930001 749210559 823207739 884380679 504648595 763728686 537993213 996742241 421454141 721711497 583820292 610285906 598648168 836628804 464003685 553555370 970136778 988248232 94506332 462276774 269596520 418219904 987578279 998426205 390674853 560329182 438066212 891592119 897633016 922599029 34695810 572224827 498778486 776168955 928626950 971601054 91373200 223253350 750303214 883881631 340417317 625782756 875193154 933249908 493049186 732562514 742257510 973737083 114401196 205237413 813412871 854536869 487999793 875640704 779585595 984815319 355212330 707378964 452717942 786034274 320398054 809712139 404137309 438321537 77259804 617642231 606677973 614139928 937389261 960743582 199864588 835617414 643315348 974470812 934625152 998512928 118874691 209825428 475263343 940756377 160186332 247680936 397370181 662250414 276149051 936161773 297425101 860240841 112913616 840636047 635111417 807059657 633280550 739968580 493350791 833235468 184260564 620981194 375969285 936537027 697923155 897149298 65856640 787821734 903792217 959831174 403299847 775351479 702829254 870921037 684435148 780848701 166517630 218385865 500323529 922357325 691525121 807801855 698343762 905545155 370098543 475332584 761544212 794907895 776092341 811984901 351507315 457808060 288444833 559561287 916296307 933552982 337729796 867364379 105226322 768901790 167627670 998594536 481457554 967849284 824667786 856533804 693238518 802081611 970000421 978909041 728846797 782958063 17827149 834103130 30793313 474997165 7029204 265568352 663041336 993759387 199181109 609799809 856201348 904851319 599077306 852514137 228190478 649688481 156343867 460986181 156661564 193511341 293250844 560176395 185929885 805990141 232372444 745426625 142660862 499369397 12349726 863654850 783513674 863050607 209741137 601256650 550972925 887822361 40872376 615659745 176437638 588249702 774906956 854369571 393725908 585774652 683047719 964155445 859012606 984758051 36386805 326429427 258890525 968087455 717241257 854211668 359948118 721432917 10081704 860785561 935830251 944624704 106968281 705778184 185323576 285462670 303566135 633138839 830568921 958029775 409513905 694837357 930472381 942781986 29410462 213705308 684984841 689547625 103496839 523358882 105883100 932006705 308606028 531251586 411208110 715599174 904760569 920002829 667158977 899235413 396704409 744751085 936931766 978306695 657071477 679322409 367756702 804767400 782622766 797524126 426417849 679642781 239976610 512918662 455403484 647188531 53954392 419546635 865594331 905239466 393406218 568228262 986330329 992204970 596690888 714179884 508511746 745421798 949151304 998773479 337843967 777602364 580642993 952676445 820547209 847237691 179727510 301797117 406322162 719676050 117320841 129992686 475081438 774213710 314606800 891946188 401710571 516103201 461408912 598589686 91394478 444063328 960284153 994483850 913750992 934996009 540446127 945307048 236225941 826559909 60988656 248931799 515266003 552364364 363994478 557967942 45110147 380014853 809046491 915060652 318281992 477588503 232766811 626243231 602732899 964194488 311455942 497449944 532108915 645777868 803614025 918430743 837896987 851414342 142553464 725204470 710648163 750961756 955913664 959187444 53191066 933932957 529691811 606892798 525371160 655034513 108774677 874656478 785137646 843093441 621857907 801855877 481959627 666795566 32458978 187667451 854128782 972376360 527462513 632042641 12403350 39202732 295836395 734130929 978746427 998581267 560029529 837311153 607024111 777154643 790945693 791859338 711894394 885546257 275317600 451083475 607171002 894258792 836961046 852413924 852599960 878001202 522737019 860375184 870736263 992104687 285988357 973112853 553832535 854511901 244297713 954668161 446093051 707446485 182931434 650718616 85273417 448929642 669182230 759267092 667642078 869996940 239171245 550877083 466694019 548735233 945335232 947709627 862862247 961033525 499506750 657861456 87187929 221260286 593701500 627917421 294230123 738388416 580266985 841738285 338992521 789140868 677384864 816837378 246269895 402401478 577823984 800126287 386044344 758465527 257468998 883622693 209015094 794050241 898311927 957571109 554802499 875574711 693182867 823068612 123588233 528657926 984242244 991421109 488561848 524827645 771493639 846379275 361080406 414579543 573757632 586019537 596107412 969793340 779127656 830025922 903616095 926337641 58163724 395271637 747566849 815333819 374334404 410699583 460864858 986456413 409988304 477280947 486209313 846499682 157982577 416270034 531654006 987558923 233926094 241350632 743320101 926761043 100094441 118616127 486137929 975183273 161815236 448988217 732544041 796475858 895061168 952653892 756315593 842657796 635134843 937745685 805261962 839493817 29382772 709993221 385601526 670808538 582081823 800087909 444486972 834551934 733049028 773500147 707431872 848948612 54564711 757640167 589617976 873328919 92324371 273806283 428380639 715794766 140644965 971964586 188042875 974248239 61561659 349007996 242857608 361608283 831391168 908784483 288226852 945035431 90861513 111217637 437231098 818120916 198422298 438482793 123486462 780709621 538505878 799731567 629708917 678223856 702565134 762849438 463132675 729005538 143972184 369361892 454891451 587549022 843662121 951707817 856525131 872701806 56402271 553101061 663581753 910428979 737193524 977336635 70588039 985177392 444429104 960010900 184313111 890119532 506189637 786564415 930630418 994191673 575501584 840507754 3033784 909014651 42086316 352289073 946276043 993923030 697908576 953100908 901566409 954847382 901225583 940030043 90473694 322038705 379819954 501305368 71185646 803268137 87531976 766529277 76800701 585823312 495627032 913153942 852642708 866166800 569134987 682867750 74180839 358798697 980414732 987170403 125188661 957921842 827409958 929332904 470889534 641602852 608972300 748404634 698418170 888838910 768549320 950432746 173103436 778868367 701997340 711190032 467698089 803956481 477051191 966107555 282409929 362329142 375497996 709833414 917020075 997120564 969182981 996524967 627249547 740646137 631292487 640225130 411261657 468555702 937894652 966314906 858908923 863083700 73904065 901529765 285148496 719942722 961382254 985586319 824917427 969681640 368234166 668147826 690638584 970862924 566235970 706482629 37554014 662435015 335525334 865817010 319169038 762463410 933544860 982189294 974653443 997774945 35522459 800829408 701270259 748967854 39573913 403015519 682316197 811832512 491768534 920491689 950992240 970654780 570311529 805977707 808983265 978664115 35705043 548253407 757226728 830104901 704582944 770113502 380657645 493473190 342905852 555669865 635495870 893428922 287815723 606919167 837736893 974667033 741551088 931269150 261815769 474362280 205671534 490142009 995065279 995895592 321393687 632737298 566266173 581391375 403284822 827065527 773018425 843180207 164112650 965599770 560890234 725838824 160612622 782155918 292137276 948914756 753719094 877846705 745916620 760093594 337172055 628458722 258426272 964637446 882293625 931309737 168268759 635768090 729571842 872623224 514550477 625641193 196400214 606440957 568478406 751472877 935419615 942410463 646653450 938308750 142843363 831401936 472653519 488958268 432690259 968712640 148260066 909689274 799935661 817221001 290940162 661892065 554154698 808522646 599182066 887782584 227470388 379134360 762928265 930062501 319643684 588670139 810751767 979639027 539568577 992595564 900312450 945821662 548140418 925087528 655199775 706635826 889635759 950625151 374606563 874093570 871348748 877942600 247714588 460027790 188750529 754352686 535781451 672847723 924031630 986129930 934093953 982170187 60643034 813773445 177854158 547028884 287444944 356554207 198124391 659108347 816043226 818033645 472574562 526699194 293681990 587724460 482708751 664463569 538756192 581137569 355964677 820669479 880229638 892284322 224187597 360773317 938334352 965501844 863866461 929587560 112987635 775975982 220437072 426806763 197466402 688310961 782625216 860593153 489659176 909954109 856592328 997843270 500746946 737538464 226222469 452482194 649031600 913158879 962680399 999885266 818927879 973871015 429932325 734382889 847801392 954991008 716376093 805360075 613866491 635829993 389942118 581873310 525527524 793683319 8926509 659216789 258128652 422079760 267213109 824356723 566709126 890035215 522016915 866548939 836308660 926140293 438958456 762366441 75395118 421275582 401870587 788491174 916476721 939276252 474124381 724593754 886242615 994382213 459089776 646653467 798794757 910952717 442411687 510343687 732694833 842875299 459984531 627665031 209951574 461668936 67233156 292584214 233812299 676490770 702162308 933264704 829811822 978721484 740301317 896537910 454581391 661889657 883765749 990925526 328970340 370675095 786025468 808629794 846560214 969145126 23337777 234709523 207221221 823864876 569553847 985391601 626088143 952875641 119835902 911417344 894762665 899502837 672352356 710908613 551420618 788051061 578072912 848924458 457896456 721111154 733224045 931969688 165650544 311856305 436646114 636483680 954962979 957981678 38767718 688472109 948434042 959161379 490057920 807553603 395284715 446593720 96671377 939030703 460632567 776284739 856418448 876116698 237432716 324295320 752593850 827523353 386547822 592620566 946649880 980939631 441892239 888061007 613308666 913682404 396327040 705551468 502391747 605148992 811912650 951096019 809397542 835070229 750121014 841066961 903563117 982300119 909396227 948854975 363543572 950901522 783416393 966118078 638709375 955624599 29890345 934868090 787271051 851318786 441074111 523961190 300850950 369571987 510022516 826379142 379852053 640009819 689156398 777972743 667876946 757570032 496138836 812065343 732220063 982010150 156844449 925592904 324904535 603850219 251348821 348975263 309561978 433843593 968761808 985975931 784859720 986256707 387192589 545731744 220869549 389257263 592169015 690923306 498937477 989682432 211448649 865025938 446118885 894927550 373879671 781464312 66080164 264092004 576161754 844053741 982085945 992539401 103317345 204127192 222920454 636328290 8272226 397153361 358575869 914784149 256791309 605672916 143623539 917964596 263698431 720341951 783607032 807980797 128976790 989004567 73607447 973704145 591580719 892843035 725263096 842626986 285346898 963744448 276719217 285024648 171129161 395859609 957954920 962898005 400710869 882179257 422482524 488681382 117332990 418299308 920659448 940610015 92615108 423252845 189196554 235722238 296932411 875227328 111815464 570366117 828367517 861554699 893622194 993891532 827935883 883815358 584364407 711083100 735330963 994379173 807939648 814248939 32879978 577477682 832196645 935805094 468890920 780838941 386206618 509483989 651005505 829372177 849033914 968004354 184631544 294294649 987241537 994850791 522359884 621221022 668666360 768453962 95201715 893131433 191308540 786692993 175468436 670671664 322016921 844128014 131292119 369008225 335323857 759055791 291451733 999696270 673169725 724580426 560884555 994722183 85445632 907318358 413196102 530508672 416897464 504403436 601576479 749253010 383805407 846499655 851801142 932343145 313015070 565358575 730544250 984044403 241203904 821347398 52346942 81133776 2976654 340987826 165386981 335425078 724991378 837709284 12952283 222806524 334984643 491985844 325523910 891470367 650375769 865730857 588208129 775686478 438624217 627710655 428752722 856457351 374055123 817749503 682853522 775297961 27586471 794394789 149228898 867144109 402072122 766600767 345636677 750544175 208464156 578409753 904067900 966978054 600397389 815769568 394601003 493899382 917633855 940181514 663990182 667376297 757140572 806351143 212743734 516788673 65155873 924816408 673251832 901274584 296878708 576168174 91195185 303822072 821339135 884182568 317193196 679116849 668521340 895772718 535820646 688257390 9261859 976337101 536490200 768870535 168507853 808207327 12102522 876564879 849411459 924228803 189353672 524023267 67072556 820697473 550382134 917978155 165696350 348773226 657354360 981413637 736899331 928450880 932512492 992682168 936220281 969049307 321248109 641512291 478782733 642723347 874820752 933708874 688616553 960076981 919019071 994558881 618721656 785410383 284680188 797562170 294838181 870335941 572930588 851611190 993013792 996138822 444315180 960103122 335399815 818299614 404749533 756054435 53509984 449849050 756735478 785236178 877335883 935191282 280494378 572736225 50899812 587175149 669293415 930402398 863680034 969532991 942479135 974670835 565001257 863048845 844486257 983922962 567796115 739552791 7095344 574053957 693713287 960286715 721286135 924727045 818126014 892407345 30928467 285758642 914108023 999575783 611111388 898422555 60254897 63355190 520936023 618118730 743229302 835851948 313701149 749653786 130094511 714668502 566982697 880272715 969876386 982554076 783101292 998973139 433413052 919767249 719314877 877980291 652508137 784043608 422930663 472213980 266422405 340692808 983462749 985583276 221418721 373446327 770795659 808300390 295309180 687925136 274377824 478443902 338948444 635438806 616092325 664824846 504592132 547606767 724562103 742614884 918371085 992000093 295889705 550509122 846624884 914721711 58425054 524085809 743948733 923840548 806345680 808838391 823492534 957378564 208340051 430355390 836379075 896879953 760214209 944501447 113942016 445578946 114674953 438646505 696632875 876306665 507542508 729142071 892730643 912447284 294691758 367595181 655122554 949306167 439542080 863977361 718828089 816217057 168167174 758868554 607622829 770881329 447794205 856171982 804944543 857164032 353377541 949359759 382996849 529010422 425873687 611729826 741116667 783714219 700461575 937308777 873401170 879979276 596921705 990116165 523326201 737879799 877278379 932463828 829558034 873043076 142328132 849745341 704275148 746216797 433157813 629179266 513308932 571579028 393031298 588892531 552381974 922782125 139071308 462863695 248287359 612841779 657379264 958134214 510771984 630842170 638091563 827637576 690162893 923166935 254788273 986001433 329034456 406949548 175314510 362211470 975610184 994970865 260833943 812767122 548626059 688408074 235865537 960495115 190562633 780040306 984218080 991348064 93644071 917302421 30980413 304783892 685497517 698091637 629983260 878704442 490436188 549138645 82543703 975334226 764517471 967764497 436476592 636371175 409682466 817196597 700233878 861672430 186757958 761725319 965559257 988743900 341949512 927224698 739368457 884801633 832901277 910698516 60625080 804727979 138911136 584003841 75134014 434804239 935021106 999440983 763291543 974764160 835104749 864432396 917151562 942186637 609027563 974632889 634926075 859068095 630527525 769189503 336598514 393139327 116994501 979145747 174606462 923248654 850227658 927939007 283369166 708943732 188559361 706524137 617484524 981675112 147822640 760760807 905754274 987349478 983866718 996413614 824242539 865918066 182275898 681357687 478419602 746534670 654521336 670511119 301799878 655477339 805564372 905830493 710777629 852083751 298020627 519193735 375205574 506438065 325056836 600181762 152034222 820995814 130971013 871267068 66261139 849455808 364820782 998429736 196414216 342302744 658048868 736178061 332566116 531321107 421419873 732686398 618104443 719954041 813739148 990172353 758268569 950007955 696768828 787044744 923836186 995488959 44479087 783887637 285948702 600407501 464124596 583642173 788693581 792913484 583334188 969397155 123157894 184815427 975097507 988069350 790108583 888046290 685717767 819266321 111117573 528039174 608944986 690272492 522083589 576315815 483925053 820684098 133700356 570207668 213302036 785107661 268144103 454532121 980159249 980507572 604290338 974634168 879077666 964704905 391924687 746481759 518828506 654180610 119487032 778649969 453010882 804500935 935934376 956846996 838317759 886803911 239019028 728866964 55756753 624348472 719851085 894790522 511192532 930124206 466812078 929804419 871294701 902943895 588050295 603416118 370283081 738736655 747875970 790633615 262444732 781163483 837111189 993453503 708271590 990618432 761452992 778405746 931334882 942316704 753163312 955560900 625022184 778687905 640356 2758593 904104375 970786977 556175905 630512326 329454359 427008611 543871119 571244266 749735847 955467939 68751357 579217867 337625171 364717575 523520129 742792184 400616960 596308558 133509593 528960175 151314142 993769825 397267863 743326226 313011517 421013060 969198053 991021556 537389207 848515857 576609114 791671338 574843021 730523535 366054232 721721431 286093846 779655904 734607383 887263989 532871165 642683450 778491933 989143755 612771866 888893777 959425287 996942392 28799473 344088969 418411962 482341607 650713709 969616476 624158466 922410984 935721572 980948081 473759915 489134835 798295492 993445754 774315139 933142409 751004718 825420296 554747369 611428402 862991776 875649717 45756400 364910998 665225154 769044661 309330003 868138535 650815390 876880264 795697171 847108016 889990395 895647220 610817949 863453879 99488549 738319398 929541990 981202982 378761330 395574100 744492169 746033355 878639822 959230047 293740997 306918630 909662929 943226772 237985607 899313305 596582257 754796589 687590254 769316304 755452096 806513688 451882524 678700396 399430021 861201410 339778989 767612634 976054978 989756570 418606399 655404565 132532794 369236183 469408183 973538586 748426718 980885431 684423081 746351367 563822804 836093505 20113124 531229552 877033270 888283982 867619620 971604120 824921679 906197601 306785605 561566915 515945377 883526975 290790980 912659428 338468374 928526412 435625434 860668331 213633778 450668819 494397168 569598798 519038663 982844413 709902871 904385736 962553518 993094540 487502309 755564581 488427284 567454434 961376214 985408767 26322131 336377172 58889087 568935864 68368314 470678452 319531007 765892986 324522871 419275631 543979621 737032391 540216465 877607241 915949962 924703893 835516599 849789765 190418939 876591443 140522927 186766167 340700813 947681077 405547449 954938931 325052895 942465044 34207316 131796867 481673912 873905452 539325168 861703928 840101185 922650480 880652442 986406910 18489516 493560691 681852220 820614643 698122256 722775128 42846648 709338001 231304584 955462462 189618727 627199228 575952651 758802959 58648087 206501264 765442771 925691984 910118103 987655942 420523846 695627652 15682171 101665055 944914413 965832716 142703939 399751412 198007730 396335005 870617769 940098814 680496597 769482475 611282611 890357226 320934367 625101950 255839920 796994953 951250633 970402767 379658872 895116298 229005445 723660594 66570935 823616820 911399035 926537597 128579370 975361592 754763361 908404721 925074706 977512537 104416017 959019092 181070610 979692353 621700896 654599170 902301454 921577112 881425679 893656179 378931587 972512082 529548265 548248711 359284137 684916114 34355712 476033392 22405095 28597648 5075270 334463382 682556358 798438764 633179111 983194746 275294739 671016830 640012048 690619263 649921560 862533660 799159129 818800953 327240905 913770994 672868291 824971748 282678875 382259218 874317718 929148077 384345824 387248317 529634546 606866631 102144387 499424624 174194465 863430937 911231001 975000584 424688557 590251533 840350593 928015583 832134965 946994736 926909184 967946339 911976255 932529913 657294666 732404849 688048194 968589761 854408341 916632805 921187119 936826159 878276638 929958279 952982195 962752806 738328168 869079868 974333848 992683525 581147913 763339234 781865365 926914909 30801153 876541146 588564597 674900028 564046809 617253842 538677591 809247179 118444441 875966940 791466836 837899220 622888853 838146556 538104794 713685657 589049788 977658884 142098165 237724842 799647392 811615743 625181296 822751521 160132639 809877668 210939386 896336811 400978363 699929351 118255965 603442114 544500326 682653234 570846148 875222098 149304429 871535096 493863618 725723567 100548890 742540579 214441529 382683966 164077736 266430285 567110329 924610850 117399899 801124111 913401461 944564757 508027135 801013247 295793040 473099143 821813911 834349306 52153462 97945937 392548517 707539853 690734030 757442853 413797200 414062669 727313269 884048714 897935694 989907943 241122647 903738877 502764338 998882057 75815250 170241812 956523922 997572656 265039096 914003819 150254541 950492823 187217837 960069968 651096375 758442299 365183399 887969271 326865169 627434512 104953202 901312957 864592122 883545598 181573499 734126681 26948475 522230836 121580188 325283968 89583071 972927389 550338056 965712251 535948214 719232762 191847583 834664968 393767465 992888208 464662075 569601270 455197135 481881963 420721897 808382583 597560882 736843373 554126646 792419157 907879661 974909528 137903689 570736601 236916498 907372377 806607586 955998995 538946487 846047023 699473285 839907908 922753129 922842718 205336911 625790167 660856140 874038303 349881803 361948361 366999900 851249255 424251419 916799245 469865075 608388842 219480345 939189578 76427129 773639210 455459267 922247017 550425415 641986753 354627046 423577646 663119895 896098987 754764976 820731892 801090792 944074161 363636679 642860142 257988708 725424705 766936731 828983854 447033559 533758051 701438934 878056901 222072364 639701655 758434502 776400209 436705510 968805898 139688798 401816726 278977515 449421564 401778250 537283328 608807997 842742899 764732122 929397795 255250153 660139794 454358713 825631584 339736423 467827984 563073574 713714620 375261869 849382801 297002060 928989125 983558711 983955037 183445380 199049372 440260228 953778445 383767462 413244185 68204168 513973347 628802429 894163529 655565094 970844828 631890523 749650343 589480614 592285519 5599651 911867867 403029866 420245413 903967342 982188983 287451604 930650085 145956253 600555065 72319279 877797668 377603178 788417702 105668388 415906209 717641930 849170048 542063640 941372456 898491278 920759924 71218177 946065723 686645525 694887571 127616877 505234886 718096992 794584754 488432520 906171049 306732655 336302085 358382267 585911755 607852245 807335216 814754450 981862939 469617188 668621889 295084500 913827759 469310153 615752333 334329741 494303734 985413493 989576298 184998987 211110032 526192211 900762779 176409974 915409458 346104568 815753589 931612209 958115627 688687414 824255420 809875335 936614218 847537932 988300760 369916468 531693047 537555982 673839201 17393421 336404121 190580084 680968427 933440591 987287398 197985823 263643474 410313505 865233623 807910640 886488138 709718463 910388262 856519131 920495291 429581760 458990716 480959578 541816304 241820975 948754069 459465401 592263005 713756129 905715410 776351593 959663771 770675709 945681896 45179768 668318223 380597320 876577462 414277941 574560577 3559068 445402688 499084764 844770245 219389576 277558243 529982699 928357204 351185324 571528788 27009549 660520192 745191224 957844590 497206916 510495057 484713125 756825706 522129519 720294117 606710462 750341769 735069018 914609679 766810404 806164538 74276659 833353993 253758025 268407252 355822873 547348276 836412451 975336383 288135754 677232525 91873263 305387323 183783827 939826667 306464362 815128952 215189361 627734442 416542347 492239332 704958961 850809509 235560481 422380960 3961549 243902195 679008542 967425856 24304540 928280572 13358713 367779202 242725150 819851031 453124455 636602543 290502881 859949494 663981581 935819696 740966612 937288153 100570313 575043635 613293151 895678842 944113411 989520582 302776288 701305162 249366488 849946749 101688462 387239141 709592865 910799341 58044669 432449832 81564113 575811470 59272326 612675903 79648671 340127602 783028297 849753666 172069201 365360114 217295744 475028548 334982060 830902012 865662951 886462609 240743150 964452274 554626870 636935952 532389160 679647428 823108049 927202491 580355903 728161711 305002166 936124641 622475113 828999574 610945734 830365911 581473118 627519893 14602755 389070625 37090034 838963137 159020890 348463791 615029298 984246363 554036616 730788841 694490316 824737842 740675571 756188870 120659532 766720326 671205478 726654410 1294737 446303664 517296270 974083691 131971366 819461911 178791246 494588302 657384929 965196725 269150504 418752794 684526593 879150323 324524795 472420616 9785990 532155552 498820537 766802898 986064638 996023296 783684459 807470173 145983502 616193499 678557532 737185167 83979623 626541854 19170132 161192254 275019758 444248381 397740772 911897628 142661104 427827439 982868169 987505489 587969815 840518154 681443237 873399519 846389510 867491866 267812221 492719290 333719985 853085636 148474434 305616605 195428215 566603485 41492604 512119727 327333674 837577042 177273318 647744896 957897 279575330 202025902 344947809 657017646 721813086 783098010 971701991 20129339 922476334 967768220 983893667 87587978 264606224 151742161 160728698 308849702 900087630 181083651 599815042 808047495 976580465 705715751 934729934 125689257 485812776 835260132 912460650 405251707 856233021 320552316 623364722 665857362 881570818 410768386 783371598 442652983 813330375 472944509 955860392 967761551 976658057 640988146 940603227 487987322 747900174 648342957 652004156 779322383 823569788 612890109 992448349 164888327 285869387 956550612 997556604 287662071 878060147 512837255 892658392 749148441 894961045 1629662 102731597 804136884 965815046 492260937 601321861 946669345 975336396 683123387 979561171 199807228 432608598 459626729 877312332 638220781 989551762 856162851 928300158 825303293 907705238 71821906 90744481 181159878 835254692 281787686 511746429 152606687 458108935 63093399 826948659 868402571 932942937 246969703 994894171 654267328 907517000 879912983 971229381 456999616 469520470 112458603 903190963 116828685 141671172 466092921 482446824 525880014 795054799 351396208 531624154 559034934 922862801 921983028 979674617 552129749 555286210 878291058 907049785 893952012 907804291 200013414 872663272 608859033 737351098 495293575 919701921 411504763 538063457 466390224 737335063 209003734 891791277 363647529 431695804 440313710 829773071 967154772 990510701 469808675 714874860 809119703 935428868 272605876 330744034 5129404 35399236 142068094 455796725 86693922 179721697 757679952 979666851 137255917 959680483 338262778 449255269 378033715 934303876 693935059 772143934 457327237 483251806 847332164 860272892 685081445 909490590 4948224 985776515 420870176 492972687 210996394 637420628 230712076 450332587 7358389 720041759 393396102 830910782 677395385 798029748 81021360 751380729 904808754 923096198 226147816 666406233 857921806 875765813 128789800 146048150 124864261 889633563 685873276 783797910 897173423 939659162 472113669 476914755 343221507 571697803 423698153 460563730 901456525 921373309 452191390 913449335 618827591 753787535 106460861 451722270 377835485 543088564 97628083 337493059 667716740 891775584 969595651 971733465 797699686 849111816 827878520 970821926 351499999 559823566 174358743 749954025 661599118 815790723 180221491 946308044 779561644 915786885 984869173 995164606 778377245 863162437 283741375 592209545 465730200 583426522 953392561 999690400 755112965 841789886 51872228 340974670 777300470 793262729 839637050 958080113 309516816 527667699 975765923 984562105 640303105 840160338 334324831 504697457 288577494 819065452 678621788 880565160 949653537 965611744 441049457 804029302 824882346 880209515 883727427 966576274 996496848 996997847 417433048 781720772 743377388 938362551 30431793 321740625 473907717 518955573 800989371 828904085 142137233 604863124 726109233 860384878 866303034 913325690 345476633 849936035 704477433 930700918 260605215 580799676 365320965 819213233 761749458 939258421 141365141 983857511 751638265 807912670 119899422 325258791 921387895 946002073 894671797 984414857 822217807 822874314 461328848 751520366 112189078 599651145 985968067 991357093 6888759 379231475 640837675 755705525 797583087 823567976 223964324 280335980 913034175 945226344 944232898 992582421 829617440 923330757 456249894 773758489 87316654 743360896 405198494 589296603 823040233 838324654 210630245 415516485 838219524 842570991 284602558 854000998 657024828 739365695 961038310 967544840 936898854 955158526 445075128 646869457 47842241 114176112 353237159 736473807 835409490 889605046 937777853 939312335 629878754 805554621 252463162 695648738 906209061 974881867 688096546 712199176 775495428 960848913 882934446 910505832 918541695 946701479 647228784 865712384 909706052 997808122 76681514 756107424 704032766 745214222 903364098 918843749 381298310 489424610 386454292 675840979 102978160 120801940 933933695 971562748 244813322 364981617 30000982 508244734 748147284 965486784 910686414 961044324 582405869 725132869 874963745 922630572 406137868 473233137 855265825 936374755 526752119 654744046 506245937 898120341 253765093 565989690 257636032 532254974 864955062 875172356 259786533 909366743 788102897 849012247 900993217 991079114 546799998 613924571 521623616 638713107 761455174 921381181 886730359 987874796 353376526 400508420 459385856 885923760 673878440 822511063 304325160 625236317 353564217 356952621 14873711 360073367 306833388 872844771 158750082 825322874 156561143 323227590 522427502 659192264 302793360 341817977 915186187 964534540 889778655 955999262 351544965 550677649 185552687 491549366 229684421 952948320 504682216 826306065 853134271 901383971 139912743 185067879 107667896 435479647 937706661 965071813 672547866 962490864 438923380 521690131 340962266 485500370 826226232 914596678 654836816 673051291 748763857 951491185 733700966 922769749 554789334 962132201 673341787 884949887 150367524 389188107 233673318 411928576 898111889 936756497 746785878 855363510 530063983 670287133 226476772 745326867 342232752 594203663 626912188 832899782 937422174 997516361 17367410 179457400 918017415 981347870 726477017 873271622 450957754 797224065 186244821 900908630 955949955 957040330 120773095 515839076 47218796 325314023 145566947 513677995 880905673 977563983 839389788 891566846 494341340 658475927 149682087 729604215 980616507 999753508 329693878 521050698 606329844 920999956 620301833 767605013 440169337 461212366 468033467 875746796 243865089 324106065 239229910 612483032 18334195 680292440 697520965 837397980 843656325 852182160 713229547 862384810 169789766 483290101 507646583 660272047 793794961 832727388 389393693 988672995 962660254 981066908 356135996 924807213 885457102 940919180 669441302 822576519 432996592 459406705 480793428 558672539 837424782 880820372 128457463 342221653 619637264 904014307 724505952 838844828 667402228 989652527 843013180 886656796 33350855 897776382 166890251 290967313 453433464 549334575 756738740 859246782 399797170 721608523 846330967 851662979 638315998 862787481 313738550 357944164 234997232 964207330 474188598 516075754 963687384 970637878 531733231 879059808 840292127 841826788 692966365 760989306 897511469 954923707 907961207 986662899 741001046 800112978 572266868 676322650 363524427 569966132 71977703 130443073 653791211 750381616 392144793 668328691 972364510 984799962 822180122 879798855 193927642 866892708 638996279 789148377 553227649 618345988 486718613 740412833 333286391 695558960 642963793 967749231 252515162 771925234 386823768 853981036 905275313 961037860 857363990 989089921 877861441 880773094 327463469 351649476 751669907 854979570 876400239 949045459 387944561 798147981 327411204 655530038 686260415 885122463 322268398 948797778 452360341 528284631 812562188 813601549 273476825 819282709 935651704 965948370 943069354 954605391 999025121 999093084 412939775 915171687 555506510 956494638 69028237 503797716 684527837 792751748 119957191 252757022 962886248 984475902 222937252 281696810 766811522 829750948 460223188 672333093 777028693 863303500 458529649 728772124 429525418 736798835 934907849 952773957 185759272 696390181 643193417 794970901 797878517 836987350 177016807 649535767 634189851 971124784 831769013 932844189 260379036 829606282 939839127 986983276 87498499 560024799 801752850 842120598 637618377 972581978 121065047 899700053 15578209 172546216 776831920 922570305 884119471 890003083 784328561 849234947 669749648 716214645 147032729 421727218 66362522 515237817 104944194 246393063 196778016 477373575 353476304 852027402 620687946 720507370 554418286 605234757 438597724 892693347 909867352 987272305 528208524 612717742 300075390 855450250 85977832 308925640 968460304 972461477 688980380 821611558 688171334 694548182 192001155 819896942 784309741 978865258 443901371 948271520 854128438 871378840 975549960 996330498 258955642 635082103 237184634 902045435 3860303 353523453 171168499 353588189 832542405 974230659 113541334 170271616 180857860 563758471 535912021 723014371 928669372 975667562 445091478 937265915 425662765 775381456 184760070 859614844 500405378 750754968 330896883 363180201 793798873 859998799 892234366 998757670 653474690 821075156 999274296 999908400 700249932 941676513 25777659 891482942 114403518 512001026 456081140 875372883 634733625 946995183 654898962 823527976 878833758 898497082 523631435 558241265 867585609 890594810 744580495 776978310 285832195 711983320 289973345 614500794 873549161 982722559 347861408 606686478 836418932 869356799 342873874 708959288 18911638 230631900 368457889 917112639 143368864 173108241 224308161 787629174 513085882 873593268 170894273 668373099 118010968 187822129 659979103 925530126 62995906 191267994 234284282 313534032 862225823 995930162 948937561 969778110 428844290 640674061 625148612 805438659 973396716 998717892 651431643 991059389 214194992 233303356 798870862 928704517 328208378 416499849 256927297 964326364 865775712 869392060 105091686 289203951 421808253 898538262 10121468 177408366 940863843 986093565 351875188 367931834 263460657 747230689 414029244 954196725 108801789 586039724 685999393 852174256 372088230 552307121 394013986 720119532 881587950 898965348 940255755 944007431 80452479 612295461 258196976 906337965 13426815 689421330 627597637 965561446 615646889 691332359 523868092 740941208 116242916 686926166 884912609 955930649 821851078 873395762 495634285 547850842 58096472 316520458 315013385 900104026 86491990 857009783 213207908 310467712 456053525 701974839 421287277 552864283 509304276 683869839 273552475 307590176 42130476 264669393 76632984 91189985 69640326 561441062 829197910 832208940 293643152 858837516 856439020 973428137 388328011 655641683 195632753 639609659 798064297 853404136 838872719 877791251 881918414 993659917 541742045 917006616 184410399 334226624 900556214 999616257 377333144 716771917 336442602 813507609 861875751 980900684 501690375 991304343 112790051 492104623 285005666 551905375 696402278 830871211 934054246 975259114 724502019 771355829 354217679 664430893 793028748 842005216 70183849 216313378 104103392 339027397 973690328 999930457 141774000 790181977 964701058 970996690 253846225 275232406 739844029 864229180 982741187 998365711 519665589 779323551 386405427 959921879 978115879 985392080 723277687 864432875 933221002 935147852 333910700 869195176 589840555 914155039 5473851 193506020 141151084 275652394 243210285 420053488 632484028 671524869 987677135 998249002 328218375 465709302 480788229 907395509 644521642 655668642 617258005 617738529 733671993 771168391 945966195 959676463 159097523 929204478 675678134 944005425 401224320 970035033 685323029 941229128 283183519 924880415 439572406 813184619 932938382 972324706 377956921 530136091 775620049 880912001 499437619 604671991 383120369 942392920 188650242 725471527 65148835 89626418 647548652 964910837 106920263 265226360 303694212 640128368 117802451 556305490 61813552 254907401 104050188 425537478 307365729 939433228 424906306 601608318 244253296 950270777 494366853 542958257 824086936 995665507 727307625 886898751 661287131 782239920 253019873 609041888 418601699 926427328 785911964 976936716 792908160 853012511 696750416 846256717 296277215 999011140 918957401 969368146 801863155 856647930 153911244 612056936 139664162 557888679 118606867 899536812 30054506 351613607 283577136 866497121 105841350 288467317 356961719 469811133 371339153 677955502 892767290 989836374 604652269 853680326 469598160 612269021 938345157 999414905 128976784 412111090 537467934 645031870 356579487 672893018 206610914 418586422 514307577 587788210 317579171 745743004 175682046 820501890 532933960 861201725 641360285 878256634 712686975 819776577 5054277 320037605 999992820 999994461 308295920 922543083 255062031 767850612 562404745 734819409 87568905 174301612 429097957 551186266 444543012 582051332 688805493 990597766 555080432 743739101 458924923 763517127 9445993 476528234 102061953 542561576 690555232 843423569 929716791 985116838 391655284 877320919 338123035 579135659 458336716 919637289 686177577 968736041 674468798 989884632 345353521 547166924 200367978 705414000 617529634 813263958 611249481 903650248 681333996 881062609 67126003 328171178 727169349 945256216 139838659 793795019 496957640 943477939 713089937 801656601 280845041 671051306 570651785 699574799 781279267 912309865 867674783 932268566 7680307 41527009 148987606 936984117 4140300 890974318 921943912 941476930 624355506 795391264 858172328 981384124 195531562 212869508 860210805 954792017 818269809 896480665 813240254 902121251 590134274 937591312 729724678 742691832 317921338 853981658 780956148 840527106 568099757 892513098 421112779 993556464 393165104 717732481 75524840 770011347 46597773 421342847 827816461 946566555 485769234 645792682 539138074 664607349 72966838 202434222 404678948 490536832 83648831 226193373 81134153 867419233 102970616 912713302 103569137 703212630 61353969 603242899 32679369 818124898 172943652 870584175 848053160 939166118 232567440 504184921 564468500 702589794 899629543 998072293 673005091 920477763 108738223 610995341 19614630 684754893 318066233 689708414 646798340 847693633 279416206 341156072 435013424 597860596 450235664 749538986 672054321 948650029 942411152 965223362 979687881 984532575 566403338 887291390 935476915 972469890 891375964 929740146 850746116 901049198 139208501 295332634 784647467 891997804 494031983 718058637 793368327 886791989 652868043 749821928 73021184 486473538 814666141 914212607 707309392 921710815 810856218 935444852 485221865 687729421 624307820 963402021 32930128 702863101 370836909 869315383 304142118 467597639 166890632 654345367 843398401 925071663 409219919 833158619 315159078 487877569 824548450 886253977 410510246 877650226 376893473 578323076 823634753 961507525 532647979 575480417 531144858 744485179 851244326 991457636 139983109 723676547 845947844 898959659 456346745 842393474 363874461 447254500 174078392 708089952 862980271 869895952 815646342 873673002 229856262 513931401 415987354 875951579 661623194 713824125 73407191 884468511 585940311 960065518 665327925 703834951 953660216 959804688 258357269 890061949 413963134 949977391 538231163 805584616 555606056 798971255 270116583 969393483 475072939 719409225 259402804 682761088 626947020 794369244 402665227 851678910 237538006 412206118 92610666 962404889 526046370 860841805 899559895 938777064 849368841 902691610 417977106 973084658 583300913 670827715 288902085 349303820 12792257 505516167 237878631 835361540 795384461 857836022 814200641 837787975 206632203 531243456 359989914 530935335 565421899 833541618 762025639 796680186 12660426 16371259 875121782 962819070 411522418 962546959 186116118 566639079 480159238 658260513 282136316 353273241 970505027 982146139 291750803 591211085 208692081 715713897 512170629 892894959 286777394 406519024 23237861 255110867 505450598 789664683 526395691 791822092 914848607 985293512 259243040 516315841 420823000 514809275 871879563 986734491 982169309 996541264 614037413 896032020 812672364 932408523 147639956 963927097 867819382 891436861 850673952 946908647 55394236 873270414 832607680 834074537 625166176 974623520 792202365 987457133 710057193 779814307 350267185 506788383 734025533 974831267 214849953 756152209 936768322 947520711 543805662 942519512 663570851 725590713 831211052 883114329 303599545 896754074 671044776 745037447 733265192 747748893 563755690 934646156 157722781 251647734 505927412 820328744 246172578 249970284 269211983 564264599 22262541 131269177 172817245 581978971 710377870 897908329 332845338 365859767 13046803 124198364 466575244 551087101 946391207 950037093 459898685 798307606 467433632 563758353 639250990 892625964 992658998 993406451 846596198 996741360 474837168 509039290 264413312 545298668 420810048 891264607 619960836 952148708 611292258 618966104 286211435 573322768 181745188 439924321 875699730 943391611 259982996 952584207 433024423 444921671 547096123 804584230 831387999 858736954 300150332 409953447 639824502 707078135 291170652 516177311 347972909 878216303 560439089 961290697 88294930 373021406 31116546 820609718 388506876 865281115 610785998 986794244 376728292 556417441 330797241 884787817 37831298 273733478 790216356 828945760 338519005 856509089 737259331 847476435 223242912 376371323 764644278 802156945 639789888 651193299 277831169 339520855 364556078 607770102 936384298 945635351 781820106 825528077 38238208 918596159 894918491 949215562 56612653 878731384 941279113 976615806 877620551 926155068 530802758 654170472 825440060 876438272 148346793 963169309 299426399 414714019 420263331 924279081 995889201 997511225 528890670 862589559 839385227 871686476 503986893 597993174 134972439 791851938 492675087 794650307 504235146 842183685 967942073 971380317 769263871 772814956 877977151 979892198 744867856 955084628 178651849 510469067 736940155 861422260 108488718 466061994 546348678 740201621 873535827 984802244 378459972 656990252 278976387 714420406 442360221 561185856 410219683 780705908 71301692 944182007 867868976 960376218 632907240 803737187 673535358 981659911 609285179 863992695 19513302 935986719 930325171 997790444 837466879 922764060 653095122 766070644 929401591 937539918 139225493 685005241 449719998 612732429 917348369 935429222 269449496 797208244 621401117 681912711 206301024 666962003 983329910 996826934 496307543 532484178 383920928 459327791 591272754 705105600 249744092 613985471 255255087 929908203 899217727 995559801 220226674 264219062 608993176 889989896 265805046 418228992 164596141 709076940 771759468 963849368 130095390 566602392 518073939 611251788 549135501 571674831 512100495 734238759 509510051 937102276 276119458 441430059 312038536 628745467 282813953 802624903 131479113 815604221 703800665 926247837 303410269 642068125 99818002 590813225 53458550 840306047 953140072 955599065 813662489 981168944 354242279 684093803 453138670 906161733 330070200 723027841 37025155 735824638 40119955 742198912 661928447 687816079 212053530 971510507 675036781 701245608 231508203 819657868 431215177 642439987 855307866 898986064 725896295 789068298 595056449 761585219 790153844 807632385 978043728 989364311 145162139 789378433 244125951 367272059 913020499 955472739 714383932 769197978 760709855 823176719 511097656 717756247 858042132 993302739 709840652 836784959 917463935 959510944 727657092 769487149 519157708 865383447 930587995 939306235 472484667 533449910 49956546 307067742 749095081 948551558 2058978 480671907 946548340 949156623 981309707 994870195 142256353 692172448 774102479 946876196 139061922 761733227 140480765 164511803 26718723 851387703 14228820 455680418 400903183 574747600 356816242 964442142 611311191 809057647 811161797 851257008 113930597 864294943 510396289 757204464 514541324 874625978 468448796 699515317 483970956 874156333 832240352 990287851 518518274 841440629 465814866 832475245 304596586 840866136 336406632 704476803 924126800 988906117 32831217 744592064 139967970 590964980 148142002 590562227 148344801 539598083 50045831 818230825 899718690 922472224 879488291 957028013 411574039 572621786 187891272 694772441 98028859 252180049 841735296 907381873 318498063 880328546 671039822 809995144 237652899 283644196 288365064 543508422 209802227 252984150 373508920 803915909 276490739 479868590 380692422 705773348 525642244 905537484 928484940 943820846 377634126 457765423 442999905 738073142 795430827 877727471 910903859 952083002 660074982 853100397 968110908 997820129 86702707 731800510 127026142 274287211 903243775 939037773 394614868 958143526 247230967 874091320 73261645 816413890 838865867 873314038 639512821 977370141 39210980 746375825 759801647 874064758 527812217 597416193 219268233 593293557 311605125 654015185 321131438 771653028 502493146 927546243 346336520 785670777 454139183 718674454 779292193 971687338 997137299 999485113 686786471 910877156 130714065 980191362 227594667 918011537 674403601 707847639 498188487 591351124 698872970 898673476 410408410 977898572 5714510 367028504 330407441 969096879 671760051 982354654 28685291 46530930 690540200 916580383 285889846 764006605 224492157 765970683 629277208 715049183 183601774 969691559 145754063 799050976 387333934 467000529 27312965 572984205 494934262 696230920 167963184 721246695 635193399 940229620 740236106 853043945 629088200 987448527 820025045 956707168 55524047 517928426 887592816 927725647 516470095 528054652 165583499 765188103 244189563 898218080 399438445 969215164 261030641 892121260 776594922 864032949 738090951 873993536 919824241 975443245 979649571 994435325 337312464 852981859 254515955 748708665 562223047 930318170 871713509 957629280 740300620 820485572 839851565 944635365 294151381 582299934 335575315 889049182 175498574 513424271 791874292 797969292 206337105 289952022 466082412 546832245 900739344 907206210 526118540 902331954 955042962 996682151 207224969 987549006 769573172 895623493 664766617 958227282 449145714 833273777 191970419 978594200 120200112 191804803 775313991 944072976 935243313 992200571 342001710 796734983 758911277 942896075 123602890 431766999 938602535 977419223 759305957 837180810 988903504 998778150 831325130 992246991 12540171 224836119 653245578 883763406 507731280 857647408 587761543 698401081 7688156 525258370 374502562 486983054 813511065 903979751 114256364 387798685 932131538 938906038 331989999 613414398 758166146 846007596 899938726 983783525 455682144 494972549 759610101 800691773 424822594 616141083 386318901 453735446 715991902 753728336 336333015 830233146 817793074 834892155 253054720 479847174 964606016 970056143 126789550 148484497 65029087 904782993 31045949 722931443 626151607 903251433 48219996 111889350 131659466 473833538 584881821 695357479 303293294 553153051 716040539 916868978 327498465 499562891 257780425 988245279 375197216 857121509 673942001 879260394 779620041 902317984 385795019 864044536 689252864 910763459 341760389 830479489 116285125 574053830 982132334 995474554 375924488 962482770 450538115 733182852 835257786 883375239 871980129 955017980 359448084 651496918 258798452 708850930 43031738 608806419 635958892 907746710 345574455 701415033 260466559 720511581 349866286 580403604 414191314 474972596 975383260 999312910 497812646 862494821 37961661 254362991 206593443 832522782 493719458 930888739 291721195 884842265 552390644 880557512 777159983 863460171 854032663 910780210 493060441 793529824 433386642 471332697 295904719 903115260 183857610 191039767 668628637 719186699 19290348 335965399 373244158 868227853 272534441 307715402 929233442 984924288 444006249 522666489 143947912 407241567 538464423 952485640 206479502 985095592 305112053 425242400 437399650 470100807 448202155 762404137 567625711 781624200 818503172 906122385 83173880 730735639 662858570 887211289 775543519 983122234 945495781 984299273 426529372 593393552 885892729 927142688 803467953 915921910 169985917 309232020 271034205 449986996 523240163 749820847 750596842 948958411 49799863 520241538 200591338 321524150 863256642 892285908 593049630 889044006 196992086 437526749 315234472 765395781 377094290 521709434 690616429 924862547 420497445 981170307 517847962 750492060 806268515 897910535 942712775 971149880 53637860 796863375 279324864 344116431 902689100 925435844 452321379 597982654 48880360 166194532 409592665 733789455 102723658 829271713 788354799 968191756 933940707 996257329 526973546 582888931 14139741 683554606 822695749 905831386 665538709 887796050 755027290 892517428 865401161 924199113 191261616 223400287 915661929 988210219 462254292 962024211 595154660 611381533 558468419 774409359 392826045 671397958 190724651 332587248 247235905 280710635 568520569 888547261 332183857 596870903 159341167 533172344 533584248 535286981 435379938 436339965 52886212 152330028 303681989 481230993 522280313 754286837 457785341 520375098 415435622 537299721 244739063 958321891 396481649 800526942 823472787 881777479 80366805 375102173 544026721 701742280 842304541 870913968 604237091 991686861 791357230 882352497 957250994 996065612 266164543 965117438 260233849 307164541 356613014 472380889 643997300 831516562 135058138 194251163 32877040 179293836 141983180 154155653 757984027 798803502 599443419 915298655 461128036 558401448 73281012 240737141 201637685 286177572 573691544 903088404 522395394 741413807 619532026 868815571 350491603 616465127 242635608 719068450 679440930 975861650 77017901 559510670 894044285 991535963 436025189 848453002 868410905 996270076 347137199 814291636 198501444 478404510 49919973 866098003 642879975 802476274 105103207 879670880 829951525 893244340 179806255 386163236 952013844 992883883 751319335 861704136 164350373 416507382 544184710 979427473 359561020 404283135 889260251 964731778 568135964 583382300 744986535 896517541 617844208 919058834 315237285 811771660 338533169 427526549 276537974 789950550 361617835 680792370 99812221 305075412 285804762 841753456 143494904 991002921 92723778 341707257 664113213 903530271 99364907 986358683 198102818 890938120 509281462 875254636 905768651 923656323 973340679 998292587 445445755 458066863 740723992 790587952 359322359 590334311 161163116 510290557 871961705 925781440 396456314 532326715 110634840 761373983 520105612 521050081 590388096 905751410 533763447 980804357 192087860 697158711 601246840 663079123 322633200 880875243 167025617 492586460 558706197 771927036 325682071 401293530 908247229 949571238 193583962 531459220 733385268 900732707 351961611 631607859 450716529 872133326 998691686 999606624 948030116 978132277 494096697 868002060 685973273 805437190 330035389 969765016 860264879 918971335 462310788 696812370 556229034 954071049 573427335 715371135 985448777 986758698 841378864 879536075 539958308 578344957 934092574 983842398 603936432 904326399 569680486 801682810 991407618 996332990 784046091 995377123 411818899 815622391 360453304 878078104 866857020 919262029 142276835 498359295 33172934 324160035 220450292 440799321 880669756 980123728 401781670 866717134 803056334 908416066 288080958 297464272 196025495 775852743 703073722 798565551 731984738 810375706 545114793 602227351 387183621 710573630 747793155 794172143 191988506 262783849 109765442 412161156 432376942 517553862 248163775 456948850 151278122 331100414 450299198 726286319 365540577 375591595 747879544 864521390 26314195 658905306 176913582 615191640 906452913 949428833 797513876 801049642 169995552 982353497 972436481 982984068 124399299 534781455 5629853 218787197 279253332 760881893 937706249 999613930 454222523 892183263 69264931 591923456 387602362 470908768 552291261 646901556 687587824 708378442 494363354 754463288 806717977 808713629 318908654 814045575 507193772 595395100 338836772 731797668 648079772 697415675 245093342 629901345 900394914 995294834 356039200 535462443 711516177 874939639 745565138 960441527 539140416 661748967 943749378 961991009 921134191 961136777 439661050 729188693 307428615 883171938 423656792 928171406 51060004 185490880 598074300 778131292 689775079 854657471 176432186 219576431 593084149 766232314 838178766 958190069 550074429 703845801 418947185 502398830 521507609 900393285 47335466 949438687 17118210 123194676 234212050 599046866 32913977 469264835 620324849 915507531 922166820 997099618 145193613 506299418 326249749 649668128 376554458 867802883 121812075 160608555 377580010 545750684 678450571 946113653 28029963 264231889 667587487 932671234 573690598 841587106 405919339 592431705 421315375 804623716 380111625 507097044 554479062 912350546 797999732 941004132 554012069 610810468 72921084 144863794 325419607 342278714 417402269 835065860 563143758 749562638 140059082 387191675 22953785 918616892 505491677 731992182 656224125 886148771 535579613 593406189 860739984 953031011 940524594 988748993 184462799 532161679 140423510 937074949 966563872 974135490 267904450 953790841 14576432 132770988 42012007 818188725 647560370 741685707 576265203 907251444 516688165 791084166 795369644 890012145 426385860 782574810 945472178 978013997 490552760 882242102 676696716 930768611 632389485 942127449 414920275 669930737 2701436 184166357 51308517 844024207 990844282 991902214 513752675 774977993 993323375 998930598 984866606 998122376 963112359 981524966 974280766 978337201 93493255 123636089 893828372 900581047 348111041 466351667 887899194 948510567 91371989 963644206 705376918 863210370 60886097 997705977 396812486 920461785 707148952 948113873 399516827 568568086 483120708 627773830 583884158 930520457 506938065 768666443 117251146 949221345 474666808 614439674 516777244 950839231 230551080 332607823 256792501 827444990 748593757 820829595 714769899 819850716 842040313 975445688 461950207 601925904 524004028 737494077 150533063 637675959 439823436 469895323 504582438 526789879 863262288 932780122 632064778 670155427 791154567 975828151 853638035 986501265 253212433 993506746 687682251 787619714 299031826 529168072 700901547 882001761 847749283 850419872 402913056 976862630 391893277 884340869 359187875 722638856 235498068 465263072 952244030 996260622 64285278 361264826 760223929 876379906 519879786 523796046 192608073 311244077 582168974 892887511 68255108 321374992 553657321 596280760 262249484 548018653 25879240 867509783 471569409 640169019 910300206 964788968 987157696 998509520 434560619 799152548 515067133 986455718 354696081 532561066 492677055 922956471 476385562 736797166 594287396 595672025 500723370 757429710 76605893 371706780 310778637 776203261 273506612 807540681 16266523 252976303 590225105 800857482 635026680 645970694 913671776 951753911 990055180 995316542 416931700 995374758 104542412 331398581 766325167 834960848 149412504 790077901 283937644 378023528 619963974 832339105 94919762 542048092 303371286 759977107 149679089 212972837 293636642 510703478 63694423 519100285 308960969 496711033 528514941 858480278 822653226 853884249 999919314 999920708 809044750 842315664 817161011 959448106 480703578 641837273 528090036 803553692 921351125 938525758 601282872 967587814 872503297 993563968 790553306 818275026 344445045 479066156 902473344 954145453 185862502 726134083 320088582 597535058 201819966 453707974 765286251 989643223 245515652 626485226 915991074 951968202 357126405 897138056 614073940 749363225 440761308 746940170 800377858 908837681 350941860 816533501 207749184 812732395 570652346 834508956 362673740 436308521 535241075 636480968 332198210 547734515 116192199 739590021 487481108 778493669 797540785 974240440 673317123 800837067 764922879 785204865 176737017 589363975 536450480 602240049 942578349 962006044 596877872 894146068 601892716 873349920 261296561 946612985 30879156 127552348 716425674 769406540 99787809 614079864 672798879 965800236 595184924 772525610 830426508 960898712 252491489 758750954 121426717 164561890 399579561 740514599 466233133 883208682 831934472 943107859 917552774 972965625 790936807 847717572 585368141 964334779 330158471 918825139 936499209 994163382 471303915 627910124 68387205 175855948 221634367 500351213 647535785 663878432 202323586 989244155 970537532 974085429 614647723 848731856 937190312 989581510 42488447 871992264 717933588 802640559 530520325 897076327 781839652 849054360 692519017 727406520 908952793 966999364 325346423 707420972 573911483 960473578 619531661 630701319 875303181 882212918 390048384 635378248 890770528 976198888 214815784 394462176 877700773 931943121 582058445 677733618 568469275 670952453 145489104 905696419 349548403 853526515 428322734 828447652 504252594 749737203 846684096 877633618 336630319 765281941 219259517 834799486 667665769 679782300 867860395 873575361 716708112 860473759 644690078 968752332 338557664 811072030 637959846 906066120 792417990 941525709 90465766 759621662 751699668 780618644 58771486 610872943 421947832 944198912 274243059 886252151 216101885 603607084 178595134 634253000 632516304 766912966 783801828 991044273 813073816 820441230 852371451 860672460 287506284 817605325 512777761 772364870 895316742 992475777 386664272 659544344 713396636 944330716 947898572 995570642 550728731 847071735 420216129 618150438 890853462 922661612 451201912 805150403 780038439 960995261 470134890 910967534 274677591 706566283 753011661 885677853 638749266 812868650 727408849 944686730 220093221 862338117 445783570 511822615 873191799 999654901 355681627 955503737 698410039 729627080 138699215 193395625 740031827 949154442 401913700 823592318 529034148 764588670 902085411 911066106 858192827 938863614 933765414 995501851 315017016 409809861 668216094 956425714 178992308 519692813 498773300 663312843 408769672 993628251 488781052 907916579 240426869 552158322 806609059 994995590 492701240 742323837 47289529 84172972 304200316 940835269 868064953 973970951 622959616 716378027 709272713 802564814 348792300 557549985 149506401 988268979 748828888 946714496 284123527 388161152 843243302 978152344 421964350 592422698 156992935 921608349 530336617 723397220 832786864 881615003 923529281 987310525 605553653 873277675 151914174 885474977 448505706 736172533 258502603 502793298 290261872 873561978 870754945 944744066 371180165 421176343 436726006 556408376 314311798 434468242 897829189 915602891 386917396 471883995 172526344 710855269 231187262 665052738 309281885 895311005 440268658 466104437 76143635 398027830 310719555 794650779 467620418 777981767 702336905 901604436 609853259 704279123 759971642 898169511 57059685 886493377 902433776 990390551 640501403 658847358 221212827 781971496 162163952 261911124 464046046 718540084 655650896 694899941 725321234 885754371 861850854 951297571 803816413 853607638 912795760 918271317 909276551 947043588 336125434 972223776 715947030 893176662 10902477 389232208 981535672 991610443 948928898 954165651 637762109 745665888 4534767 77763435 875916865 954808225 338710353 431134081 786866863 820960026 967101579 999618939 541480495 838007156 567800933 794636274 659436682 692130468 963304386 983729611 755886486 982207659 362238534 657146105 27111524 689978178 511650414 624847656 781400170 944469151 513152047 868012512 76528002 900098416 481627186 861047123 724002729 838452732 647632820 729076000 88323263 628232559 150320563 745496165 457042047 496402103 868491275 958178074 36122231 598125381 537005343 876956781 218277530 909194031 525937204 792422446 736348242 866573805 882501850 986374620 292193079 906684591 650589549 703454080 685435065 742812726 996861461 998309147 507231510 985280911 925483606 961566746 469959667 623463690 973147670 992978885 404608089 522830249 438166978 936398812 458778454 713765770 841253693 857600741 105100005 216444822 300898564 796480883 730856238 870604324 182677858 259112072 293287838 341583864 445630146 528431304 476817671 780354968 159876031 251301541 792658368 978202080 236064553 425836070 489737504 594526660 175885340 794896840 87766116 873096490 210758952 783321007 151704376 376088154 275866655 566667902 452628212 487972132 518574409 638009785 964069455 976354498 746071400 810664611 583420255 920283547 292278881 552175773 536805037 725711601 537473654 596866459 224102241 690243455 456021631 857521002 342005295 633877155 176031357 909366505 943288856 966966324 151426923 665322508 265707116 440307690 888866384 995600325 25980028 291648185 574268338 988937487 536271004 943332105 538889651 867535422 277136348 360473357 805131295 982298631 925384726 993617793 334879267 429211333 553288973 861419861 317674794 897072163 612270484 778204243 664043159 944186085 152550249 858945985 145573683 323704996 415514009 553561369 727476254 854186219 353107541 817254332 197537761 249424354 625750316 747692557 984713837 992036051 675710362 809786554 101491542 541234763 889478204 903151452 927030012 948096858 884787583 983032931 850466563 915976632 237614633 586759495 34783003 281994949 985728301 990597768 643750047 772335254 944118900 977544494 116396867 141264375 45068217 888167316 836914414 998682806 27374988 302892684 540114098 704705607 49648922 565662946 108989473 531474445 974963328 981244171 772744555 867675631 63440046 979302850 711699738 905050714 932032618 999076948 746273004 898716812 106392515 687586370 133243274 713510783 354630053 819208846 687573352 996383602 41374250 934774919 546062346 763483556 916542650 940951840 488060327 920443669 620520315 803979230 795457445 958022147 641219672 689495223 349496063 790198064 326307892 491195169 675891953 923539796 713094466 938677281 379123305 485085121 508133785 824662188 2969215 953103995 937389080 985517635 980684820 981611083 558474353 654072897 626401565 693104259 417624908 946664809 587206742 796787305 118250931 765189571 312451666 881011762 303870930 764694242 122068733 455577811 172227320 928102102 278997339 390979733 443438092 683050567 77856503 594443230 931505179 947761919 192520387 455506439 905782601 951965208 709584147 887498899 55480489 668141596 418774988 491501430 440688056 552762795 179926613 409274066 233098168 837989214 410986627 793569465 710481218 714628286 966704384 994071757 451891433 460607885 249199021 826584591 927390728 966622326 251973209 603987597 421559127 873880589 803387618 853726712 740767200 884833238 433968808 567737584 468840695 678626428 347875663 697140803 636566394 751254826 429926673 493864761 794570181 973120803 113800830 468256375 101873970 737158205 30275530 375839966 257188304 686853993 235061363 466122889 232903518 924907183 145664981 939793522 143379299 576441532 626821769 886008574 891704099 949724451 49252554 567335299 457960807 848042687 780677304 925858800 833138203 885568695 470013454 895111533 147306404 879682517 513898729 950786204 720488018 832910725 199434713 714102149 154706181 816050457 832110661 952939754 834915378 901539741 466687978 523900472 938327898 958379424 550133265 958248083 746008175 799906578 958867918 983018035 700979359 789684632 424772185 462329073 496243933 501577599 855605157 866598135 506058095 621334301 901198686 967481299 732095134 915500648 608841527 857701031 871135394 982417141 404163121 974680869 611235565 728108109 58524800 326233301 778919201 955637303 907171137 993407481 733893634 918673764 979364807 985724255 724140330 869956850 794104072 869236631 892692645 987365294 66656609 210100788 980404452 993889240 253747223 632344367 392293670 890541950 353731704 674532978 708474915 721182518 284599463 976747794 527116852 810095592 774712501 909422833 459769349 903931600 749265340 807574832 243848745 783824313 552449372 993614668 596095531 986176022 850678515 931882829 527719741 919166365 798337391 882995394 439335241 587871486 751160677 890826162 569996883 849114628 931751577 970872734 833147392 843857786 775472815 968122386 32664669 640006603 581668202 686850535 502418602 925109416 723441680 736977586 75881520 773238797 827607873 970047048 916816997 945140305 99212918 315362869 762294962 826340091 571237191 891736512 967589746 978852608 132293690 883352524 215632579 449530770 591883941 790012147 201211334 620892444 519181011 536376351 818105077 905123812 171194044 382338000 121883609 241583148 572741508 667559244 903489319 953058997 889965236 904528594 951981970 958858236 295355215 661815643 856114758 995751598 203873276 812580485 603176218 803721914 650557572 693865390 766297781 784557409 46053006 905273557 290944129 930536832 815565440 991094107 543287395 611148998 423649863 551772975 405264129 442556114 293183143 548652681 547696274 924026358 850905960 955507885 733928471 794042649 530475392 562147796 703861661 921073087 23210852 743051678 756820325 963221498 385220108 391350416 855232365 985455898 115956597 518297568 296152396 777052090 348551352 434881154 695883953 814359865 86914620 497222928 484434694 737834145 718960249 897866430 391637413 916419706 572036807 916433109 753205044 755645925 533333665 850618313 846989368 883650923 905043382 981500652 807372941 982305129 250517621 520264705 786719686 920180053 242249600 458932386 285237412 369664394 988830260 995355476 795681413 947287215 289020391 329519058 975346275 989815737 854782769 995435064 238227 86828882 393709599 778206455 424299183 721579726 255947416 783890478 123759819 692248079 408894460 583286266 976054572 987103803 115838127 628690858 351944944 737326451 488322804 917483006 378924842 984859300 38279580 422122498 66312665 340415987 18429315 108256027 201929766 335304037 557269886 562910048 351079018 641321522 13823323 922519567 612613526 806996711 879029764 989512559 766391315 815069925 83491059 969639928 442969709 897198569 731945838 858813825 564163777 767862878 322054809 991784475 228278654 776147846 227670686 452546414 485199872 887760007 959306242 983088688 477719660 876340223 366239158 899034844 77619621 327390582 814422716 851317115 426729872 837141266 390310440 639454864 995661452 996169739 818430058 992397148 635002885 911856455 24231434 764991471 957808127 980046451 128040475 444261387 327731452 707980716 427159888 761826445 203071213 582643398 237519832 775799131 841009317 844578293 669124998 840684095 418449822 721240337 736848724 769229579 969190836 976060413 78911042 240743608 778305934 946667615 306198409 593182636 609609980 868577141 465466850 993826332 241005930 584490152 113291020 716196331 665129721 681335919 555342915 950238135 841706023 856516395 62950823 652531375 352357547 816273078 248421712 959676946 75969183 794501537 149067276 190593669 222499756 667699156 29975718 800605965 836741081 995257495 573830595 847351025 770474977 942242982 64700831 469583427 902862957 991445048 842794735 863962921 822938431 879320021 657860051 973384660 664813990 842899230 695400371 737025899 231480985 554134856 743292396 876322480 864746725 965079657 437064855 682408233 368173880 402931774 626350658 822211086 47834614 444433080 42109530 246776141 946782917 987760442 449746349 849179398 804515141 844015805 397154957 915764956 55756015 356321731 72965564 448545282 92184529 525037474 742567581 846689752 682155049 766451403 186893598 420400483 291859449 548368318 748720503 958223925 171629230 227813648 272657279 965620895 154000135 949482292 896498662 904442948 989070012 998038499 923881430 990593252 169994896 741295421 871742133 945361000 225054882 673259354 296962389 748311957 589859580 678597586 403580101 874019938 127057596 549626476 648755497 949194593 30932156 578608247 714708338 888602275 769218195 866691537 121495782 520262268 980583565 988327314 865294330 870259786 702944568 899539789 142456433 227754679 521440077 852067478 617260245 995488673 172604850 735689047 998862791 999074982 215054676 677824128 266367185 404869379 257311952 995842988 680638019 867867799 828013341 925580011 117894468 820766553 945524793 980470081 472497647 747958622 262304966 736858085 337431349 712010489 402977475 632750975 447754998 737036412 765546301 820537787 937776426 989882768 392427832 401952806 833127020 842696784 420331783 967830133 124748552 935543437 556035943 580069686 522912338 831752547 508787491 858261979 859494293 909222264 819080415 997561365 767839013 896412354 279034384 350164263 452757679 694541256 568358883 953225468 222280927 388951531 964733017 977316129 680726948 767009528 49263876 433873285 822418702 868457610 700178162 970130399 892020463 924774402 68029981 774537546 838759145 846292430 409500397 741290201 220376624 560245737 941149685 942938901 929011205 945497082 63688703 824602697 715725358 890860155 832793480 864060187 221290900 332719810 52270920 955255191 771937027 981314056 189735694 259995595 681145426 836992793 762625539 838541348 537880233 647505184 244238471 679254849 224299396 651062801 76971494 847360409 587667288 889605292 938278767 972251306 918144165 967160033 961865401 969929883 62385291 178018239 932086622 982611775 283296374 622970981 222018627 737257922 910595704 940611049 297174858 591475094 386926936 483676903 457355519 909027951 37821386 963517189 453433528 839847306 657721843 686542533 829843121 842175137 430914622 784493227 745682114 803125227 635895819 714983618 22378527 858044936 626385938 981234213 979059547 986212700 845289982 980738110 922565579 969363527 793143515 862945700 408470822 692559084 191809801 751821064 135499713 463927006 307177819 978365820 554238142 563579626 817503869 858483005 752370779 809960221 426370016 512285232 992868979 997385600 729896824 787014306 466186887 486068821 398567151 879996047 961847797 975357577 613350832 869254886 931979065 992921468 557294614 868802661 413527255 901315450 590620881 632259815 748704359 850681419 947183087 954705642 686232771 999549399 738988524 963556923 410663501 958071900 668696677 951617281 351117267 676869289 73314136 314786312 712208683 936444813 940425784 973125354 497776737 641744528 178738491 905967439 633037156 751979259 855384755 856024623 770754146 818546619 443756083 898575905 119013123 306802576 275798074 836596177 781507618 861692746 388155758 449046798 184627044 511837273 979770903 987318070 21051122 74036441 271101249 481768123 445202724 876846118 768072718 971439019 554716988 936390193 222233059 403168611 400400822 536030067 390727703 430852414 976996915 978680160 300504358 530617080 524167464 532282985 599620290 861474129 250618500 887376258 501229387 961761487 168207129 604110894 924747057 964082837 331026202 455944207 338733094 627925393 975648940 983918039 772523022 970030647 316231555 474395239 896738712 968940423 960816478 988423706 874249358 994420315 586871288 804754305 645472948 793294866 923966235 955890951 254364028 265181892 921325412 944963188 160267262 698429013 796342925 882390922 41940942 663720769 203225223 986055414 188275095 818197482 303272324 724200344 490167116 651300022 84265847 974347528 460422221 701547440 96134572 674852671 978037973 995031701 837758111 843849841 931775706 988150087 984254868 986381199 477433216 555981412 425889328 429223161 665306435 782035257 570196621 746778413 216425158 966594146 260647989 794872865 861229363 998482796 975882114 996431521 876181754 939098285 926704113 952678398 826843440 931540567 651819310 821408978 681020397 823457192 908647513 940892866 130254578 999695213 642948473 862623187 864302712 937688104 95354586 698516416 766772296 781545508 687835053 830018927 643232769 658915166 611468156 676803823 185046298 934013406 354158826 556236864 205254850 249384296 755925183 915587134 751720057 848186593 406144897 641184218 605506077 893527985 535038336 552336720 156535900 454546591 674400720 786404346 947627947 983115607 827804788 916302722 444073135 911895979 438861506 474222539 949956689 966121090 596042704 609582486 649147111 883338906 955505322 992882542 671495071 797608678 784666673 941359035 152016560 956211476 333386734 655006969 877841414 949789577 188025933 714724939 626927721 936960458 59408841 336795673 275307226 880321402 356473246 446692254 384389535 703418514 218941494 814387956 28599141 973874248 988982530 998187906 637146706 827390951 203210742 224630656 852931212 930258704 691770311 935869126 853498816 884615896 808972520 953932232 472243538 507899955 353774241 831005044 818410901 830730139 197917152 555695228 163395324 477766758 799397573 851290198 860496116 864775236 62972597 470650760 659266117 977511769 855791528 911734476 996487593 999610879 208125392 531348662 324282248 805537482 207497828 326911233 504225996 517637658 300857449 477346865 232779098 278556041 63853036 466017817 580771617 918912901 470106374 665340694 668637987 682377750 301970650 410719718 406142025 745440390 721858134 772896264 640615543 917413615 803794584 954894772 79263570 269549494 922833006 996193389 541957917 571463815 479543794 588443508 342801155 837343291 703615857 848417821 514470533 878275040 58472845 573639505 83752659 224908277 401066840 809958984 375866623 902849087 143814196 450806763 517920018 809466796 172146271 487878993 890161593 962417627 303715416 869141326 651468092 974658496 555747530 988954546 15780700 341840679 300164033 678250436 316260772 397066688 435786893 785222575 356077892 731781356 831834878 881801616 624025725 631687764 389819555 665679210 501518084 774456344 13017955 889219391 484692370 512600371 606581475 831440884 963374449 981692465 942999291 986346122 746021533 931375498 950827089 990962589 879577480 980268510 972728710 999780727 748470511 806535839 152801500 895892884 213150915 310165095 978743552 998678144 110464355 461032178 416831839 691461410 453957956 795245457 562928923 862819824 939635664 986792981 392553850 937850004 351724987 679466221 511631717 945077804 641939695 889553117 418213384 741598028 449055212 709630363 112699208 450672941 786955284 916234114 471703712 905066548 977732827 989443603 984370074 985845127 546145423 805374238 984655208 988288503 209199924 999288334 829101397 907927885 350221020 430910207 900426675 958770240 155670486 294979656 533965745 840542080 345019389 650711591 993602206 998285010 538587360 709437852 832240943 932333039 239574227 862273137 497056476 539320999 561172262 975609918 626147629 715976450 478580442 512639685 354779602 888384689 499948142 773492766 458906632 597618205 588115745 840897629 296383631 465837545 141112388 533825338 837063193 860629183 467425953 644788665 532272595 906512385 593986908 631359146 272171876 786638148 891966308 901465113 376808228 900875585 99117603 144377613 208286597 704347365 987506554 994795881 27965104 276786950 502995927 846949577 965833657 986710818 661297299 816117888 591812503 643990756 166461350 360313703 739054711 816153186 419194541 948579678 295411720 931132360 142498535 681911962 572124387 582480298 556100663 816929338 312164791 314449096 386314964 460687284 525394274 851539642 74517126 397189646 901082411 968784037 83964779 769846155 934739709 976890916 462697858 687830297 449837132 708567548 84906463 683411116 434264625 542368460 71837062 699364588 304429476 511074730 388006490 453828156 65348384 810328068 629190203 653189671 650447307 853841143 785878318 968691274 93461939 644512672 740554893 741990781 48701668 233844168 672229684 753137323 130411459 589318137 194561555 348852675 661754930 976957830 715143805 953428638 545620787 555423802 740699921 759405320 450024314 487461238 436612717 812130906 395884146 414678237 237063619 432740067 686535077 974899307 619004890 970178441 712220502 808269805 244621624 439326323 722551072 787984719 11394612 509307209 117292338 881593694 926938921 950567621 756814255 955797569 946962312 958016293 541505589 780316803 940521712 985792675 90003359 402306910 12981454 426083519 463762759 609292279 522754796 553142148 608746770 668442661 494118096 566513642 575135277 728972264 944220601 971717662 960183177 998595787 320847068 575995405 458241880 459694662 952764744 988186175 886301560 929180740 230807944 894995250 961550357 976657338 242627707 459271780 873430521 966905878 431112819 608316711 100566894 493208195 788365104 848862377 8805922 723203680 891980321 950070334 272389674 954928918 68240633 206458187 723826812 880330691 93637867 679886701 836248141 836713285 881475310 950764244 976757573 989920367 624808164 759982684 467922355 901043793 406112066 887067397 406885699 938383409 669003192 968353746 715916400 996275148 258089618 638420243 668260512 795300121 292416724 506788525 455086888 504897645 978107452 989641477 204874656 543011565 368969739 750038037 561772200 722772818 648008428 768356280 59254532 162779183 451285492 919305375 48288472 201776457 729056845 733346774 719943820 880602484 920802836 981166816 438215008 780944962 197571478 645678083 120499920 885329998 714522763 962572665 665511299 952732196 604341077 684293045 701720600 949898982 695027922 740612381 859770608 977298304 604716704 860194773 972759309 989237485 530386191 864583225 657837294 885601486 68644937 639792539 307118315 562839393 119608944 502552176 653720269 994482063 411386543 720454007 128084062 969487154 11091100 678797470 333287899 486407727 691391477 849168891 828579199 991251495 663841600 952822467 664346664 812687934 931122755 931528410 305686926 754800515 890370994 905229128 224146942 386394713 614100577 615006968 793561618 825671973 831535639 947944648 470419971 861838592 873506733 919612801 155946563 214581967 190299983 847686546 562637094 661984888 377202950 528131537 244232703 968114148 808658848 934270840 470002708 947074594 313301042 506044209 623746441 797111131 38277809 103922282 896766790 963026057 438165167 466549754 544059908 676982355 631726967 657316156 205793165 548000683 549825937 982033727 967106218 975783407 695458843 873896519 789493508 993399051 820189638 828136697 369710754 775622191 576837830 809004228 284675381 898914310 122833535 517177183 817836272 865615928 595983414 693417470 295680276 363473396 490431893 523352501 26576755 238756632 352079046 430682643 512445659 744275035 614019557 897881116 497243291 518275917 538567710 983524136 337055820 497337679 222708105 725398556 906769004 918669182 339863292 531967560 289198197 313712947 44835685 633841205 70723018 728645404 795981420 994355602 118345905 763140444 419497494 759217760 373711332 829449378 502617827 618951341 698345149 950616056 506838361 826896069 67376764 668339878 762990109 963598723 996322158 996616681 69892826 762075778 386427057 835800047 258265664 351955726 751060495 978531548 425744931 469301680 344094917 488514228 38294797 230000693 824712763 844442398 916556338 938644830 30546219 727331606 424873437 659214359 363684764 594857646 348152294 908789580 713480482 846181571 519531852 625996474 478172004 529875092 70192664 482342323 332632561 377193199 464358028 895226925 458121268 609360003 922874963 963159965 463632905 567277432 646101180 927997641 369965117 857758506 693982732 814103911 432649451 678400416 884342842 964687487 945290303 976248417 497863283 824367445 522409568 824670879 419538819 569450548 806296951 947793956 676427428 796313369 365553979 718414527 865411230 898276338 240528031 264372187 596575316 835358613 636561104 895714019 271937737 673458202 611918826 943699353 30395549 224657268 430587748 716259401 728763452 790018679 589368329 946124023 468476259 711149034 526834256 968130325 666031709 682708514 969257487 982383173 664411711 892899838 884105775 975698257 130191191 317125902 141167831 841838490 21554291 108401265 971517558 994448675 477285662 898938312 655317336 742626986 895249145 951390059 986978848 988140951 13185979 114370902 67823158 382170782 203510057 509614449 162560646 852193438 233106818 917838876 675403218 808179665 225542246 553331085 408048549 467390010 560595030 625892833 284841272 923311519 983795340 991439623 231661608 532994689 301842515 491664203 912411498 964648477 868001380 939407764 44751366 334372441 557531717 699561575 530615328 688780597 328344467 609141898 438751789 478126887 453744419 984619702 948743996 976474445 602695824 956443543 670949384 977588752 819347908 984629575 202559183 471046705 740988511 777506040 861879749 950459902 411191457 953679511 395802632 442922302 974475288 989518652 572460785 792686013 907521340 956569265 189794730 375480367 842437363 939801359 193171083 857876937 365479504 432988793 938023628 945564621 408278977 526513725 641747112 823791811 919579001 948406164 865501200 998611328 366464586 744322218 612715220 837235801 873656826 903538314 382307229 830979460 399121691 815980870 111206172 391021612 981162286 986013061 658327586 872879240 709023310 845988338 978049473 981115758 134217670 751417084 22187308 69940474 495680947 573754616 308310306 749167279 751322114 935878050 399852971 438265562 175804393 280574977 203953388 620610308 74067735 126395078 382981096 395953204 245815020 603445290 478613863 604733163 990987892 999964623 497378239 878205822 485621874 998469848 198890272 749681859 867476095 929655609 518410765 895624218 836719722 887348411 414304737 581644174 688486340 970501983 515516412 900357628 314112468 474151267 533832161 541325732 633602953 721099288 287322032 384003842 839335549 987704615 167968839 932039982 783981478 805787469 768738981 863304498 260238749 593079196 376106599 707623630 983479547 983686114 787883941 875941726 904024347 997636222 622552287 642151019 657388252 911941201 293005995 447204223 234217780 316741028 256936596 817470278 706919592 830350139 121339397 909324337 6535854 302139023 433899066 597802097 605896213 754520499 460935107 576150179 407852072 874045953 316689612 981239864 163642738 994996375 45426406 886194692 901786202 985893465 772889107 869812904 301059377 990020914 648176728 883844327 134613565 331024385 476283456 655812109 848833642 918195342 970334212 996282143 255647415 672228846 423041346 889818017 214520192 400126187 339868451 387724863 541979172 788693880 946222320 964111638 961610674 973220029 542719670 683117247 320298840 532888940 819323455 956571355 519236535 766548807 287793590 410446491 826440791 865493170 468273725 860216278 202930913 442410775 848488024 964731852 508810650 947885464 555168989 864456738 551150633 696186890 730914405 831115780 935482407 978443197 743316310 930235658 652734989 991594003 463706330 616283133 155436329 194805108 682361537 855118240 217718603 965240626 695972283 937594291 27884617 196328960 199976735 760708715 500401258 958945595 622390602 936190755 442908517 736694938 397460279 477619298 679776345 916057970 929524822 965826765 897920141 988198226 735094909 800477882 110153700 393870685 937884024 972438366 206000210 943812936 681588765 762122881 494101202 801436680 655379925 970831869 824461492 956936120 245217386 934627260 147736870 723675112 780296253 945228448 325795537 503099714 852681766 925730021 257641287 753782290 241163643 746471119 577320511 946314528 471852006 934164425 321155236 929603302 183580503 324616924 593807585 743408548 879195688 947589182 316208565 777505537 888317282 963008927 691755815 963897061 127490731 911360789 786914832 986120393 229930293 274002759 580497343 659778608 203092562 904280706 983795135 991845156 740213352 758726480 878051182 944724574 114969303 305725669 534641049 920439248 236659631 878928387 216667940 615223477 601952094 920609844 894640825 919260916 210101046 587152693 82151683 747458015 579767937 886635484 698186858 895994451 239731681 619660917 590172450 627573685 648727506 712938824 875665139 887156574 500455880 993784391 522807713 970064075 678762517 854984155 699105067 721409726 750424257 949195488 602988137 916083798 306148153 823746594 545364531 844468934 334002465 885944431 902911312 974823367 698338388 934421334 595092965 677345498 79295780 376884859 468277001 652606824 285595474 732341088 628569429 991080935 703336636 799679410 728650016 901404508 569302780 983785682 608033539 742823448 175487377 451553084 258370923 350054457 933158844 998341017 197245645 906477785 290364348 805967845 173292552 977053811 200248826 655309262 421252787 607047960 837163212 980446329 314511521 658625349 453700806 672046345 345666487 559477032 785548204 899606455 972631771 996647470 346117253 921660796 790086276 803576620 41756127 375783593 276689458 575500525 788565280 970330583 236483003 570365574 581334628 600941923 728249515 822905923 222596030 511006775 259535763 453407116 936621240 937155141 53583871 639537739 548197538 664095631 135918210 227865722 452467169 558845540 747029252 826317047 580026467 980809428 226895659 282742656 969731028 974918892 162202428 402116320 747411710 947139502 852839507 945541658 548793570 701352893 347616025 971648302 584549236 893193527 480361352 658365013 25769693 639892038 670757793 798914255 270452716 643231207 824801788 937876594 271195068 975626523 77878440 837239928 925907314 969874555 149735090 619270683 170312740 252425656 582628796 845019172 944303745 978442848 291447974 915235330 111921478 587008730 803481079 931889586 199272180 207614463 319395595 489867062 408215871 476598094 568179704 925129933 77929190 596009817 48638965 303638014 951834742 986791557 262222840 435942012 550754858 913709636 848728017 875772366 554448090 906032806 216518675 694574277 936317178 945672092 732375757 841212037 816553339 934191269 989056449 997837367 309907282 621023017 281900855 676296086 988502784 990322831 445016678 992009549 664593340 928521233 130775580 738490656 455935289 613028400 845169706 954266584 938142255 999272201 465994529 655081013 663341508 849174053 860922876 926025623 915736844 933445349 454237601 883840216 587310222 814256687 638354314 878632713 688457896 951830627 541018186 567876469 373699089 519624296 885515350 922865097 106681364 268568106 626364484 652745042 34835140 616472770 731835057 882858213 847014055 882026884 52578179 934447647 611555283 810410472 782304740 926527311 831875308 860314124 121447704 421002599 859557487 996971700 444537128 565418607 621845472 990205049 997985912 999567638 536621144 606971818 449119949 822035722 442872344 724784682 297373843 473874083 733436382 739836051 580423650 811963778 55190571 818126440 912574050 937132009 467155095 882787467 884857357 909290089 390253626 489824282 603078341 629456749 92490090 873213739 476542830 697542632 311329021 943789116 489533010 766807241 738656886 843415001 341474298 690686994 874379844 933794190 294977957 395202914 155164412 173141916 138818567 641523244 917713300 942167227 923962862 945381983 366696083 853329809 210061358 743936856 352119815 854877525 920048721 971888398 336232799 988085731 262264193 605885725 670919289 940719481 683328073 951013146 630319817 924408934 501788902 619837828 774394690 846619578 277417681 877922271 217597106 386738589 607654571 903737928 418240411 880901360 238291352 346798384 174876067 310649992 900209242 998791110 745934224 996194206 857882119 912451897 851060228 938147595 759095322 798403908 749976233 838290409 73066 187876375 980705676 999031368 523898535 914087428 41139269 964020481 5529493 121549291 770330357 851061174 759451177 956577706 474788969 813965539 689363967 840844991 986124769 993668255 374032617 824891463 202194402 681222708 789505502 899842839 19746084 599957817 573310183 808913834 257181282 608500261 555769324 892022745 355155927 807010395 406796637 947621668 673154059 925125411 752474230 890709127 138747714 646196041 295086031 311374262 706627071 911353585 486662944 795575418 150933138 696939661 394772721 589588762 309286087 651828912 436525104 708441206 76334698 628305706 667962776 711017169 933165455 949587392 378788727 975295683 694332769 887431770 406984035 594252992 69101845 842843739 210949093 612636997 216515069 679802779 841936790 879959966 519683398 731138454 456623513 706432364 101255844 895168587 727773951 887270217 243692405 506506650 414150545 427128217 520581159 917254710 180851569 957162804 788703354 941898439 512212336 637033003 467660374 748959476 596424158 781509730 352949206 577378489 992771103 997999109 865090337 952613231 739194848 876877330 813707518 920118644 606722424 628174812 918943287 994449138 442119330 845000379 590792700 723223076 392087272 486179337 817866814 867927547 764677515 812870326 976760849 999737203 64615857 279604382 907321402 965052144 871947569 975998929 487255193 794498005 810566945 931350946 770719031 970501228 990482975 995311548 296878272 558979035 79778167 808480219 1049392 546364158 953766838 954177557 811624819 971001796 67058959 579152067 34840140 829096448 23591216 363045124 594024476 732246520 178302754 676555676 207855222 384308080 648512647 812704010 584448335 922123465 466673859 839464529 512805008 862049788 352806000 672275818 257192557 563514895 583105220 948547736 109688903 172205302 834887300 929045875 400289571 809929607 293794059 487326134 415873805 724166280 219332590 713814722 821212422 892371785 699439908 794249034 773000096 933355577 122625713 779134157 570894224 786828518 725413238 966874094 836101541 974535866 862887085 865003907 683883057 933558678 686377683 745746226 119775643 385564977 821480050 880396164 711601502 788983339 979522513 998747517 716950385 913735433 789503145 863756071 717755078 785679141 64159996 177158529 98271652 364204722 36642327 276669577 882592810 891741158 49261560 524366061 701041788 914071149 82812907 450221329 486055791 889378581 590651944 753336534 786378151 878238141 663975410 744319427 823407342 897497664 59017207 491966806 694916404 712335036 919872246 927902351 586981911 821165900 677161904 824335104 291403597 894390967 828631042 898173561 30780820 840214748 787362385 913252171 278446880 290770551 845577869 928324360 961486921 962360138 338529363 687152404 491772031 847591494 401120203 843573106 111320873 315814407 996248159 998371579 342762432 682068036 466938937 511798622 392835839 523802325 858452777 952131652 950717513 984483711 208678149 654944120 474705981 572978608 941021480 965236814 222960464 786249721 28991089 90708771 641754419 811304866 539726551 629037724 927315572 944531622 112381172 268498086 822365248 910104769 126752871 446433873 310565768 675685632 43568554 367572482 259387856 317067690 832049130 854851000 407315854 557851000 585271618 602497020 182512296 581148817 263358425 663192821 980707207 994593132 204173096 619960108 440527913 892966550 413602857 424814271 716366663 976833128 859811490 890704786 735645064 809819964 244643641 966133555 428422369 976995930 823640511 997599669 413500311 708357576 813818312 934574593 215656376 913400325 558072695 703294507 473595538 974498478 21359166 251949427 263565274 825264742 580038912 815614830 451140898 744664772 50529070 274995410 603914362 731254700 681114821 722201110 893775933 939082010 977233359 991598793 292941230 860336718 62504493 337971681 435661025 617961166 242928392 764500254 358573285 808709409 325711958 589938785 301573440 743959250 458894279 750674788 959487028 963862852 564094247 831264161 27105450 405930370 325397273 413968024 455243847 938162192 989697637 993304202 603259857 753729318 579201361 716459700 234881417 426849530 171419417 230375477 341566555 570683178 891010636 950528589 24748928 839876113 424848249 534024590 775508722 807762313 327920521 812658721 295517614 504320978 491493983 713614877 170216001 867436040 767614763 964528715 577598676 739306849 419365034 634180411 595066841 975189261 933082819 964334090 466814719 853509273 996671084 998145386 810695658 862097348 761766195 915492571 144136723 874492873 681767764 999491466 673978287 974357079 222991808 493850073 746486333 945186235 895950918 937708186 870141590 886109497 613471475 621175929 381119369 623235403 710258122 816432024 611382127 625108846 16503413 346942991 89644685 493068933 932749759 974934285 278832280 953523298 956725256 968853725 847616839 943812447 349059457 598287008 704763295 743532008 15117220 319848664 190503271 937039668 137380232 174862799 200168761 934256501 975757418 997412404 809921218 830063155 883653036 903189072 102073023 153592500 326918426 509448076 123377644 927911514 131995545 198628423 892256817 902072878 277214804 411877635 335369881 451257821 524586157 917276032 603620539 943296740 755743227 950031923 184301530 651507397 154305219 372781600 803379672 986074395 814764055 827143513 20451607 379675487 506705522 966856511 498355810 616593598 620235695 978071869 96540203 330792546 146525191 591951916 390580841 915954588 625833459 751689276 812929306 825127625 235043261 662682173 562266180 820733529 157798941 179777950 135585014 182170350 812821416 851199813 693491669 989722963 284416486 625515268 80647697 788427563 729714597 975540387 847533771 904764841 338285939 543021490 973329374 999219044 428405665 610674735 125693300 888410426 316458886 376142817 464204106 678015147 16076949 862852757 481458671 833368054 141614987 294670168 547760575 858354985 264563659 652275364 820304823 963148119 475674844 511879028 48571144 55378730 941977187 984200359 952953454 967024081 961501060 963998999 9504686 635549208 516860461 938615734 130040207 420593075 997489507 999005292 448142376 796533928 380876221 849797265 716449629 903300408 680043466 809439398 772452539 978370601 684432911 902588612 947792094 987331529 358853007 716364962 340239383 562770944 32913023 39488267 419912974 880546135 34693345 659607899 222056153 460519861 893246357 906152861 620883211 901130602 112811402 502068865 905470233 933277695 871062738 898757066 58116368 112391502 656194330 911259551 306568513 923211047 635168940 697252854 402048449 684048396 963957566 965996058 529780122 665310109 794130483 920562627 50375336 882764702 854543653 914857517 282593525 788887664 61812340 137180114 489655035 640334990 291794222 307416354 389242484 909541162 96503284 973684512 352878496 502167908 523299019 684545788 810287647 840641790 50685289 338078215 825114916 872040117 104553942 460677701 14331023 317260893 728059841 750741765 52999423 978244130 803201672 886529086 925970113 958770690 200370218 400963920 627209394 977158331 665877732 974115284 844165252 994645794 196758687 604415167 406549981 668837435 288102080 885238362 504281694 874854868 219546371 882747829 890605622 907081451 799627651 889851931 106590405 850622986 566478182 650077647 585605763 994192957 992969148 994134603 888529374 984584088 227663360 690144165 41584041 581050954 403876546 708153469 500043960 671281934 370578151 585970355 392170747 902102112 471138053 666953282 58493567 301620254 970596260 998415929 962203908 992394784 585645868 607003722 894087794 902782299 266128148 558413193 529284036 784400889 31865784 569744453 664646820 847843547 767416064 909730294 134295022 416312280 489801558 816817810 216744492 998080659 938019181 978284148 295704838 530670031 842861845 949278357 168242987 950523113 180292277 503180763 368851160 762756013 813074690 953203983 436039975 516901309 569709929 579983766 414438342 598212030 326032505 946252771 177242714 900915681 762499573 975352297 218519642 286713811 534181800 991900652 862614989 989673244 903154703 975882562 152938042 798390344 369606576 881527669 319134243 500811028 2761869 175549179 184277575 265363724 382954558 623179537 398522503 873753864 52516097 872515610 390177671 775775175 148278885 385676441 502016953 601405177 508181281 675082267 470187048 644533392 502088274 543622009 629419696 801932817 377804213 981074566 358785926 712552958 425603189 696357490 121565598 904287434 211379759 672521505 720932211 877047889 196612442 567015818 320530650 643165062 530852787 851044433 571832331 599469895 297104144 842824025 499624803 786026277 979862823 990397337 483687783 817694960 55171930 821473084 110040229 628099230 146199163 230953002 958693585 990930547 197415853 655521373 356813892 808699392 476985611 952256973 556719351 986205383 406671176 857715813 520385354 675031724 96145468 873808145 505744174 604962752 624759140 904447955 569877082 778714338 9903115 242383547 41666527 420587365 66867619 311640100 202489742 462775874 1605377 89185934 106639503 973982878 670301527 890925887 410353221 518049231 76192633 868531992 560173958 966053442 998434383 998697457 332865925 611214598 743889508 830509932 466207391 751750950 788198617 940831763 363580409 651754593 547192268 792431403 426972525 449770994 616366016 816735404 258406636 976843012 888385548 969016484 258655791 830494017 592621465 917707670 856611775 856653765 658069298 850956479 410382911 460833221 939795565 990188443 784656832 955700229 806553859 995293646 650075983 689100032 412417624 652517277 266244669 745152029 1985458 934993549 338552567 379458065 376517606 729591451 799314317 906785976 305256226 440955614 325632461 773964183 915748102 923019758 171954709 322669670 880262228 925226433 148387791 600637649 485534559 597694395 574454210 854564947 321185418 667979981 73285285 198272513 147908982 232517061 284995047 984338525 429386059 739962388 276795425 873219992 885072304 984822591 142608749 881948928 365361698 398193776 691948416 696590524 413847331 806692294 624426530 772830968 981318786 999598640 141691758 196298563 600428984 940233314 704601896 879674965 543177019 749316494 714297738 792205254 30493076 820059040 82345454 389558875 145160283 481591559 980351631 984857093 599182782 773701755 743964476 923067871 708214845 798622493 26500603 478764025 681303196 754475397 159296038 341978782 817611012 916176797 91166362 343043340 375957256 540264679 291681481 775735316 376534936 750688406 727258919 999755409 411633790 611273687 614502202 844279076 512354545 682497847 405379860 883584139 826536069 956428924 194749809 633859225 407658845 940174553 778425830 962019717 164315870 654429170 264673065 504786201 569561241 670157252 639193056 931524594 796081269 973590928 683652167 984064745 252347518 836560432 316853034 375860063 247585523 883007666 709027702 819665325 752007077 754586602 597807172 879945725 537171844 934121954 621316557 719483679 717656122 740573045 654420209 674623795 715219122 857881242 263742727 572017681 623355974 804823343 213535143 585785093 707424989 983733269 825652589 876755397 929804662 954076074 434630590 717227880 976732561 996832172 152547175 971266807 305615162 521504930 172993392 262257858 782581172 790153213 608040798 783700223 667946 331493590 689328652 911574114 737700457 782253284 108574272 791751985 284017691 719262282 339658793 400279271 348863089 398869794 712079115 742962135 178356835 214316901 834267902 877208030 386297896 854103074 860208543 933204293 494496137 708292456 883127810 944524724 311230057 980504498 355037975 956105641 876521475 892119126 934439071 993329197 553888999 738002633 153570053 502192176 701216411 881069164 511726155 842951167 60484053 486684572 211851410 681697092 965405607 985691587 613717813 791786344 439403576 502967865 32407065 544122277 908660219 920806507 743317560 986995232 179591717 578318131 942769574 977228807 261170992 917756730 650980572 775401719 443674443 723566584 616262178 702727478 266510333 335968166 430699904 440066981 149929944 868561617 492713607 858489785 793985325 872361863 509141765 598344108 140322358 307286392 69439105 684927578 758431809 763280016 155409782 232561751 449448476 906194094 304696012 643151983 657022985 659434734 208774914 981544233 211563338 530576606 982257992 990213824 104121198 225362436 728598582 737104915 434716076 636786049 596955029 752062490 407092181 436002808 519564336 923571881 452991149 918022229 989945245 997875871 821258620 824291517 981972711 987538033 130274928 385099674 81799318 892470214 725219863 773248065 524255404 596924185 915369717 999436111 629836098 658643191 628752645 946134914 667174522 737219361 924725043 986670362 791087536 874628776 380977731 768810999 426540614 679967188 617982193 967198055 73962464 272434900 292320403 543162147 774200085 843242822 663497254 895565855 516793447 788660029 141584142 984270203 74356940 521071522 593692921 612860813 386485219 907701101 455857457 684675554 372751164 446024449 240437228 348865653 350955674 590643605 779624694 833661019 573306680 828355260 438581357 769054968 563375964 824788055 879855724 919559212 620970472 925684285 282543025 705997465 680218883 764400348 895601395 984064641 182710528 691713818 960581716 993135187 539824192 874283204 981315005 993716147 879751236 987755389 744944448 754125012 834929351 928661052 202353853 495765433 30129267 339653354 922913911 986497480 824126698 945852015 558658650 921944854 925583392 958968271 835795341 973188264 54654556 289623899 662649567 804976342 457544868 918444519 869142569 968167768 721872033 894264873 983435715 991257444 421714413 548306766 236305628 518049121 899299835 904669014 201986514 364205723 214116853 711180024 707975148 813263031 331418513 399538566 648471971 786257530 475592504 680163541 178286828 201578525 50761881 645252096 160913626 573595600 627699029 999768586 653528970 991063643 944161213 994742030 896745394 987845829 878177746 916206286 249033190 297996106 95820750 293933864 656747538 675298805 902104544 931733809 472640064 847677620 363138349 762664181 746039253 862962877 174967341 477390803 865837201 901090503 453035076 772375133 986613336 997220027 841184662 922169825 316482725 347281992 517849382 731570055 6605467 645692587 902747118 999275449 553861488 840646834 718114106 753905488 65599212 879506682 12535908 80062699 499124662 901954731 991648836 997417978 887231376 895408415 17809190 970297491 425626964 968596133 753220879 844450961 189866730 753952166 331599156 474756265 379045767 876119809 588354826 978166984 994303607 997637672 639977549 777052398 882525607 986026744 833093693 884795256 43698886 127308997 390981537 957487216 525788217 533030552 537617307 664549478 442123423 971335019 703630451 968993404 756158740 837579044 848530263 994367888 267542491 622655427 210315293 620830108 145470704 440264362 248869656 458171439 522747184 807739943 792990020 988389520 96251567 941952553 459825788 802663643 28219177 863278877 334296748 340317842 934051791 937399465 909184378 995808985 982511319 995167888 803489252 907159431 167460029 380970013 410401586 795578591 450310679 514211582 158900590 337300379 222891246 714673246 745872149 901451390 632239418 872124069 562606199 984653077 537673309 964063014 462738077 797522150 835484288 985914837 610776017 959147793 75470761 118411176 793393432 946137560 436010134 548190802 203944588 574593582 131211952 875233685 765947150 861810905 681043836 852181285 530960241 574354016 94203215 678903862 406951655 955003968 301490624 813876257 230623125 302146850 738496299 843801437 769657744 954118159 97052912 389470049 687430458 721868358 752319368 902414416 11613547 195076548 826508151 911780214 918531395 953089452 901287491 996718062 796179235 816069054 67891231 493662070 636924343 810195887 41496899 673705595 972355060 974740075 707673707 710297098 459276004 592252664 921722034 978507377 162984193 932983099 632400693 647976816 576255739 632022594 630294285 726825745 692159086 904817731 422318802 686830238 540783116 679603517 714125498 884585038 45798732 509952324 396002711 905798004 489775073 680087731 711825290 951522160 163947290 933060429 384593805 878738543 864320830 972490146 71536341 200414006 46037859 79227436 348240880 448324829 658875499 856586312 559738805 834452867 868581286 988541328 790645478 864720385 508880319 566844509 692247499 932993070 421318508 707652936 564936562 780858846 111452635 687141757 753908401 860146024 793994870 970284807 753072746 888919589 746758379 969939724 651530732 661099944 882496137 886484701 49451920 496291807 996921134 997773032 537366776 848328953 797284653 859345128 567372518 895561429 963730223 977842619 267806283 516393897 591580395 721720197 163441966 269883687 564167749 941100756 123166355 471342325 832355144 949474563 110218516 412585058 46700955 806501179 152906066 745993420 184525901 651322018 933767156 941041314 428674759 683718820 840691309 879527391 573522511 834932331 108725321 332875906 56870884 600954262 106435784 616081857 717033547 852004986 133452407 223532938 295320236 940817350 916369771 994510336 325231624 879078705 401128935 964512862 106886082 722947734 352494599 537559618 12263878 20143521 837376355 868672270 297807024 312255786 606458049 833063718 622070719 654876418 943470386 983270742 203961305 962134186 340342436 671932020 739090566 921001292 154378759 992439056 628088872 830340249 730089377 756101052 123005435 927306754 61734015 170618847 353922694 860685722 514610624 914704703 777548064 797778832 481046482 547933839 202128027 909717201 780963189 916339885 589043560 698717382 164560584 787495423 168827372 877705856 296480635 372233364 219320228 238263032 495455238 599872156 280292907 976401082 738604744 933234062 721375493 915773755 840740282 882064797 442891717 608530871 411042347 448808352 902579495 946832740 808053284 993593109 194967256 931384694 51498135 927792095 412349873 651151044 674120355 722916170 997511801 998830024 470762519 475942212 865587548 896768052 496364771 812294818 234171021 570319903 945666869 958962574 471908168 883252548 721224776 909025896 141966247 903342616 679223321 927595341 973024799 984759200 670382600 910010702 730717136 969024480 337900325 719757347 36993819 190524856 864742486 910542283 407299033 972503505 621057751 986484158 409133507 926647898 778544366 906839400 308911653 598786564 393778738 558739611 45672206 91036666 892075440 892100610 689872851 854988557 141905907 377392255 865522149 988476392 29804837 940663730 926552493 985197516 298039804 409803096 609591054 750646492 173253029 644534984 63873948 907224347 969398724 976939469 81929294 690435744 891602266 954149813 16684310 95378420 393417545 789817063 761535967 822512224 985615575 993369068 933052547 991054556 274217045 541873422 596872307 976356050 641707930 789481288 845892991 993883043 717884612 943453792 629279907 709141233 824975360 850761205 623573579 899261444 79502776 973665896 669881798 825349748 940619047 949368085 988296445 996119526 720911279 763171063 884428867 912579952 701932888 772310067 926500926 963414016 8199715 166461771 883720575 917573523 981678631 986826418 447321550 986525633 709565902 868783389 755797702 851081204 168371072 642100326 564286063 898589676 660500708 706630138 140838592 807598838 545392404 754283246 247588604 733118123 636357119 817076495 817716119 916144369 229610333 623039415 89192822 846387373 203760440 871621347 780358269 995704347 658372690 888410516 685606450 953299922 95499976 463639115 558000069 983837700 789399585 824933502 458304254 628102628 845264380 972750389 74804751 880327118 105141955 128226692 504111950 635169683 480306367 676496093 448620910 717874001 471970755 815788600 624562307 930503861 76843331 294476346 2829541 319992442 820372940 853887443 922648037 964314793 23192266 542746813 640030078 714755366 303633267 388842660 139733650 652389185 326354033 597990938 52038161 561546418 239225789 405156242 750171018 810180034 623193853 733711916 694193229 862518722 2254374 347163553 376701083 437178631 681631471 698244365 649250168 663945085 717121510 757477259 889044529 991017427 748202479 861167341 344656064 877859557 696611248 751677511 796723534 814497244 844680425 861030009 674308250 749579464 784730409 926815071 180332325 459693000 732559141 748637336 459307631 817150542 892123807 954098994 971510813 977209730 884815698 979706918 45698308 761641827 103013733 638176457 42237732 927533813 117819705 393633580 376498020 942579734 774861964 899022606 546100695 635641486 671439373 730428709 809633770 970119466 604524775 879300009 476579737 913855208 26989099 317013774 646973084 851703325 868054899 963074414 763689569 860173475 199044750 929350851 859867205 905560506 728302408 745795303 96074087 103267790 119227951 904996109 872797210 969657058 512230036 578839977 12048641 737447617 774114 715223298 201683369 413596554 984214128 992020404 538015869 699940387 209112652 727802017 790958059 813555904 931145179 972800864 999246685 999826299 439795844 554384273 365981679 518089732 144371627 858710094 242074911 924136596 161276376 619836083 644661350 790555610 552861730 789144659 521224418 931406625 599541487 644048827 514843858 752285100 154994190 211403046 269303263 308789250 13629006 692787275 476213138 690963894 192439249 525240749 792331739 961687010 422106985 485390333 211180485 967875306 965550640 989907313 79151411 193178830 177244461 813991363 520848763 540362297 410553401 426587068 785785492 926496009 317393909 754637121 58031256 400641696 391569527 511279256 866880779 983471035 240772819 911229754 474597195 870723949 63690197 203234830 906116393 922778085 277088210 597324642 108349552 412494335 654213882 855258773 266217067 824230918 310479575 341583693 12112801 212450188 667589956 987511230 497200585 606526954 356181856 471408274 7586938 213141633 236912180 438679932 283956620 991438644 89989924 432401965 934115845 992736800 335238055 601883554 536438407 621429591 835169141 934825236 518401246 852063868 88347151 201959238 891196808 987922123 992005093 996172090 703399334 836705930 967707746 996881560 89739953 244772242 930635093 993843305 932285179 946513416 198771632 875308525 324451696 739721166 220527012 935541014 245727364 640965459 404565828 681560892 83366023 260992458 994674444 999314803 401322944 735985999 454163305 964680296 658209106 795791136 276602503 596471040 85300526 476185110 772666562 910571142 702259151 942011648 854310567 970292899 196889441 972048502 457465640 491699775 441501630 702201032 984826505 991762895 545986493 808919476 237507263 274854232 558157134 727474618 37856600 835618925 222392147 972613865 223429944 376278430 8179082 704071581 202746141 607618393 284679462 831135207 98850132 796527534 116167668 703099002 217046455 935090682 85835802 907234196 315326180 575580819 174879902 960245116 114264908 666463151 152073824 457870628 529945527 582079262 854162183 869511839 366695871 930510354 910563301 969811025 342869601 856841012 185951325 600201168 599497012 869152138 367614082 616364790 276830638 788707943 985488599 987628856 771546892 916921087 900727523 905917519 200067536 995142764 939619111 988144687 145811510 881598456 395110921 801676315 586787672 994813939 973814204 989845550 577794414 924363372 802194606 980502702 870556307 928056738 197831959 558033266 628437129 859519380 995466539 997558162 355991525 939110936 619579779 961048221 452477831 635938191 394536031 996485449 308919814 786808254 122355583 504314512 555637231 831510026 820321594 898642699 86573378 307776272 522182756 981302300 891679908 950703455 173799919 536069451 740151180 823530563 983379416 999600984 942901327 972240174 452915993 900946874 826554336 990416111 39452910 638263747 248218878 437856818 6527807 155931643 237561669 755048598 22336580 858904494 405295131 719245890 874837386 939618898 158802171 863091247 497365611 716505515 487261267 885836521 479765682 859278504 558125185 882722314 345221254 732695613 960984650 987253111 380893817 916172871 927066023 963517343 681413908 861053184 423254750 863630022 66801184 945669149 270178125 303188019 19860356 520854487 492860567 974050156 873019741 930103412 751536398 904530919 938619071 950045813 904384774 966137373 202070847 423628460 595838844 755720981 404269716 854670899 340088272 634638000 139117426 786044380 112954751 493536632 943150675 957647611 582733925 706993881 738064891 839476069 319136552 937262254 452424453 590795799 533622417 851986420 606841743 952368277 767829696 796354191 440020432 580139603 247038811 622000303 985875683 994636179 959150263 969594554 99835764 766279955 40531870 698767191 891866916 911234905 478864445 784978041 454816697 899248084 276485375 899487912 774905850 962990835 506197963 789488676 544994441 996051795 155642661 690835009 106138406 642266953 554532533 704908380 402065609 431312585 382230761 519098289 322051369 861718451 143790117 585147707 250850317 358032947 293039739 366129223 979432051 991051930 246673170 638375772 23656104 767389258 881506212 991717371 893159880 992379707 15588661 591721251 259821083 577197922 342356309 610292692 684483410 987761555 269253481 531756719 487402118 494873400 809561091 935064954 568283954 709032277 860080823 949749856 166507621 995405797 39256853 881042603 702745175 891284891 408455251 895499019 515740525 932926774 494177590 627158385 786291102 844206708 963200662 996678295 548958462 975866233 387133705 493421334 810059411 870036017 740498520 942385214 843841703 974727806 354821873 479142910 118138939 712198777 9545715 634945136 331677088 661698636 925710978 928868190 360339861 616029300 13386607 653699033 552790480 878499636 645781338 885263548 625120638 807935741 368749495 935281722 204990887 946349531 933012268 933157069 895017032 945649503 407685322 526508984 932413426 959840132 152122716 285302185 89121986 561963500 800165665 923567796 243620274 407842907 648624940 888931598 116977979 422666103 523852706 895293614 885836085 935679284 348180508 722163629 777734523 849074210 90831751 99652216 344601196 765371952 339337821 843324642 257859173 339309538 779479308 782950670 562667530 788136895 811525920 986553963 425895835 837094958 604762824 853764940 596721078 769521384 84209264 177737168 202341170 391457390 203517713 775567412 474709772 520574428 764141648 854258252 308485390 366182258 202716375 996116935 996829656 997727910 606431365 907302279 869397929 988384215 956002061 965767993 31253370 200750445 610468787 712952643 646597959 942919532 319112785 852791908 289609833 836422067 778576079 889759632 594635079 599189478 176319298 332196885 636721558 756774855 600574585 770206640 708124989 947896837 265903783 310228546 803636285 870719246 45961225 460562026 147163756 385817018 128665347 666561524 241491025 844153227 511732498 971127787 84261834 263400692 663718121 788529554 966443704 968278175 573809549 693707044 860066140 975468572 252887554 816861341 301380022 939926426 919603806 949535822 714652916 819536366 908986314 958658575 273358399 363567252 64649270 656124420 880103925 982243515 942230152 992511772 571192608 871858321 908724452 998125020 760224124 952859309 826310708 951643678 848408060 970599806 71733561 656823856 494181755 598834367 680456330 815534988 179608097 887022255 38792330 87069648 801393757 864830651 708828947 709782850 275976471 913654513 211668609 878678567 307740485 688591149 960903639 963861030 457306593 538798194 661298321 859346392 21024724 348265786 998174602 999518550 999189868 999405191 282357469 962096602 178441917 833964616 468423577 663583419 945124996 974972759 381236287 931444760 47769103 669308642 788481550 918016980 989420545 997134389 360228132 756986059 698948573 837368847 55634548 140421862 787816678 967143639 881678013 918222218 786286110 931216170 296404136 894012792 98905071 651401682 361705209 875972376 79016927 445294352 490723970 496032814 847290758 951436379 694987208 988655116 965984685 969553054 995571636 998644417 288274961 294409950 583287572 615308477 460163805 775139969 885517067 980027285 717269609 885629208 964456898 990795397 392207266 796333693 782890489 988947975 615061394 803530324 81267662 797558642 902007445 919187081 306728166 768877057 806309769 948690528 680395404 756550099 833447429 854286625 441305566 639363992 597355578 648302301 189900075 281000756 96336951 139343039 292428536 749341569 726151471 897569865 156242352 300878274 930040392 987291050 585105241 916016061 43665160 648473879 645981218 972612189 397096432 949341195 526144401 858833362 521930225 535753321 599443827 862582403 75461294 293014634 217542776 707689737 595860471 610676899 244020290 603470852 557631346 576602227 605066541 860128572 876247373 895325710 191079923 561833934 2564135 993918486 491447397 853140722 730891755 834790899 193247997 839531676 821267006 885821928 151721623 621378936 694010237 728156197 44391769 532754897 289782579 406799356 488814984 704740527 996830428 999478994 183555198 316348377 650715170 708703289 709094304 838222873 303910364 646612658 196776475 443521102 51468574 88741207 426340557 689156248 984159292 998101674 40572434 199534027 331699563 454090500 928030478 936986166 596267352 870741548 662243410 817938525 306846081 457277141 835064063 958159597 667965864 674797062 166289769 551748249 801938347 974611941 115444295 519685813 40981921 653419355 195045035 644413967 615846211 866495054 985378139 999039882 313404971 734290531 96876243 401551338 703292943 704567259 934784015 957232377 528668693 974988943 340148255 887177804 306989180 860064103 152947480 299387319 838193451 885630028 109185897 315239437 545759983 766375901 996522933 998207477 360757789 629520571 434968231 693756205 269135893 315437840 777167942 916715902 579620687 756935575 474126338 984880441 337472801 663332932 658077285 811638541 732050593 951220845 158318593 260453143 744287440 799919371 292986742 938348600 908584921 980748598 591693101 945217364 617798860 941290511 665749864 987669388 389450084 880166330 403108476 405299087 776288583 918609518 684880736 933165531 898570607 963628047 826708880 966037160 337993047 528218458 959287677 997140040 353760128 496485196 255696117 681903766 326595570 540177436 643915082 936826712 575280582 818539120 30629465 273722014 51998573 781212181 493611113 800210991 664286629 753183216 827686586 881123003 528942653 927895939 813459352 868950842 605502631 646372078 229760820 337594849 665574656 778401411 149305233 930389802 783254421 884033565 900937819 967112516 700347558 792620878 679794939 755447831 280908388 490535899 147076319 291974859 96828696 792761490 581478627 928502779 287082001 347375256 914698073 974958768 323007255 338129960 111339005 565386882 534710478 689893256 531146323 792112174 572305481 766600303 182041112 935470406 972525418 979467248 468241352 691095438 938758854 970629344 931725403 965781768 898588381 917941397 346563511 353548209 275850289 328135068 884584731 906138663 169105217 823624035 747933199 848923966 703933400 783293326 184884148 823468090 829038992 893163520 446408042 950686156 945461058 981769070 620811159 833379403 932898409 969531824 521694321 599299148 797354236 923247680 547282458 565658391 275821363 654112808 78274458 577263272 972655069 976029818 313418780 482181865 278743451 340257668 723403158 856989135 558083390 596072808 143766382 430172571 655187231 816410743 901582099 986916666 592075266 658742454 799663586 810337298 727373248 776313543 667797950 702921305 757425185 924820554 785920614 882082560 362765014 744507044 572755889 609594185 972889742 988254107 855428465 939359038 907109785 916504461 203087249 701300971 117034678 119708214 455205882 908788151 225849738 634946792 88828453 90622810 856027242 871950641 454778463 641675352 772509012 786586449 153399738 343640298 279815261 480467026 486006434 893138447 115082420 828186380 712176664 777210045 852388795 954872767 910953263 917113749 906850134 915840863 90154975 382822853 1650485 144682662 757946194 941219809 659786182 979973200 125613150 957750130 522798356 919578307 519183420 524425986 878881918 928327086 840274472 971977283 727429866 756279116 602160432 735312213 516277145 697256240 426413906 617726921 672002123 699762654 233120779 751488362 963511918 993184080 888256595 908015863 777033328 968173765 734848462 772659750 515522986 613698585 22494567 670739397 116303124 650526484 957450268 976568049 229873964 565223146 674374405 693387213 268758977 912141113 114009102 352327321 980770025 983062914 808164241 976501495 385745947 911735980 801264342 970623284 110825231 412646299 8617986 978928569 758938405 809475166 719570826 787651635 957365249 993469301 285971108 798172344 527484324 626748617 377072216 673237780 652088891 785886674 859578875 953071221 644412154 867943385 256038951 345490161 430501258 899668730 717910925 851144290 171229206 948894318 349959136 695311359 329800655 400306229 118339393 829103340 326770689 346290727 464689120 816488587 813963669 833620719 844250868 871899295 757062780 793326958 73176722 240809999 971062538 995649339 875202055 997113580 907300940 909751899 200803621 724538567 298682187 442148684 940089905 945780680 761144609 804167451 897751686 903390806 688813826 754256424 832419044 888235758 215336123 441555822 516373703 868810675 145154715 599664400 387896276 965424542 554691204 790064129 715529101 755576124 483619853 615652913 110252463 453907097 80151652 216948776 978926397 998275893 524683862 564437858 838672665 901258415 546328951 904141978 840628556 855650737 601704670 849205534 281775648 697788282 184219499 249297356 105799041 579279249 73405186 939983301 51589517 447764258 849667349 855798592 884324067 941096002 175519745 415181258 555614599 972301211 726578294 910934255 890559363 901206034 255663515 318142576 458575578 862841293 980034859 981094353 392684246 815975952 904293275 905781219 768734961 964191663 773116147 976977302 58026805 567719333 700613240 818265964 753840056 939197645 87614094 903348150 178420999 569843375 333389280 715240303 421161019 696766414 783010004 878786722 413803981 680159687 136744929 667291891 748247412 779796268 895086235 895701746 738096730 754898443 592367012 806517252 768119045 865688021 593544065 608397349 802515248 940591025 160441757 921874366 944870073 971218117 449431347 903077001 986840516 988677631 380767795 797271700 193026074 999092999 672885790 675211080 826048855 891958939 751426391 921613236 69439047 234765364 607593306 656621153 676754283 759236995 424498084 651769412 989759437 993593479 527766956 784983286 972563634 977090850 536522815 559170326 369920161 522515694 317145848 910450601 731250411 766947265 640622139 767004949 933254701 983387716 845459346 954415857 152839876 157748065 432083663 980642939 730746199 889505484 145579288 633763992 360348132 461532359 834150807 930271234 935437371 937047116 230680192 990032008 155494981 190595471 408957047 712641813 765708676 828479866 974628052 985034445 260279764 673852650 125145994 296771138 489093804 755813015 28053386 653972310 420689674 974540594 936675638 947732716 766753035 999747164 279382941 543548728 335509283 952171366 935489866 975204536 690659070 969612784 252587159 603310654 139322201 185150881 921640053 926158657 173836210 760184208 816253806 841113710 535850014 979100800 56142557 578908011 716387320 824479965 363095155 676822356 273431673 735267997 348695713 694330477 886321792 896575962 37137493 877229401 734858058 960910252 29876992 972449523 55138955 218860815 181252103 253936603 797773155 800117689 382001132 423396736 420026274 652267702 685912306 737698187 259296577 854416280 425137577 932833779 451499364 773622214 555074330 752993230 77021608 290365189 107068386 838214572 337855957 582225653 25997048 669420332 816087845 988348656 999807290 999947432 78687645 352353817 377857967 772888925 529898721 953507562 654609671 754010306 522459552 870453840 190141818 741818746 920440673 962739921 819217849 904980831 723424056 868043002 494425248 824072740 733748760 814519798 712563495 849207438 920284267 997157352 226530522 653595675 131874699 213454131 143894702 743205877 554561552 962702741 777304943 798302195 197668439 224290885 307121104 697208403 57696397 821247096 491984309 551280376 696957753 868963633 444044070 584756272 951137469 958006699 777745900 925249394 928096193 933934999 830363629 847550087 301177496 402014288 912868203 982104125 841249853 848377461 10294379 408980620 702419702 779613317 376178325 942669367 169671321 389465965 104342872 324168878 373777448 494910252 655262622 718877076 13247711 652831466 143469737 336903272 472685591 586828192 14382687 724202661 520423905 682197914 493157889 536262792 88566346 253239951 214125079 254791076 292570549 611766998 491080851 688300093 341871218 397592897 469313003 892905702 631622812 716314511 480280624 567516310 426773672 876250148 653517302 677132717 806080046 880351496 89918739 411364788 83212870 886819744 310085975 580185795 605138892 778909497 303459449 827813737 373335536 757859176 447204114 589049475 306174272 325701876 193487230 921090320 487427567 680690874 298845306 704436641 858802829 917842723 422462054 838843643 253381889 301133317 112447053 464700128 16836982 256609476 169422856 652468032 836624337 888735551 817510201 986060962 435986926 487560018 759450550 953980430 801944412 871936948 513805235 593833937 160304188 228562304 670023818 959623010 763726583 965749153 917091166 964192604 369997042 477603106 204389103 975718536 988305296 992196370 407993262 855516973 31387470 294686209 294299962 905262995 943236225 993127880 11109818 526582619 834517181 857240626 409427625 489494785 558389230 877129631 298766954 321262322 614002615 696731678 489173257 706780451 735047823 800610247 356043565 788717967 713007400 940514929 619160884 648538283 345811342 586208952 879137855 959815892 402472460 836609028 228522258 325772596 55815347 812134013 929890751 962327687 748634998 900574808 847726689 917614893 372917370 486265948 261120350 351244613 813886024 997447504 745663822 928379109 859271118 924208268 576562164 788773991 673960415 686293505 387266457 532902138 666036422 680400022 357837115 805249859 725077768 791076897 985024618 990994612 889390530 902645207 338073819 977126933 250729889 316357439 979031484 985243490 588410930 958165869 572968664 845094592 216484273 766678180 944219702 990472831 840690750 935154754 258800483 485338725 414844976 521110654 655674544 725718204 400020797 584854836 838389404 942858964 601378037 894413829 464736900 762409225 372859768 543832675 582389555 846055594 371604468 891627304 837126097 925885731 537932091 778162456 749558689 965318791 922229943 971803677 16973385 546357836 1734191 527484027 143656250 408503523 71292697 969788569 471667880 678164620 690974380 837810351 388041171 439200420 633200487 729549498 463001694 875901324 184925161 944975163 727911551 950600915 717389293 879434009 176119952 392961967 827138833 981771846 704628076 797282249 550850915 580753597 492940793 818076379 916973528 947616878 182933125 877959223 491218113 612777842 228137412 711488829 26210158 970390175 615287548 907362676 873276486 963094412 151025246 562753733 233685596 793949612 28842050 639179701 907920062 949450191 488463401 865457956 657957063 874824984 386532695 789778532 461285568 717905410 722632992 757270531 829810970 840935985 366334023 455813426 498565005 692863290 670747704 706908716 467624206 512059585 116478126 937924483 984283872 993104092 200480098 298639347 621846504 883447128 653195341 711843676 281672590 401631624 977504189 989035903 619663719 853698359 208847099 951323706 41721534 788956262 978674140 991249711 712921390 726930090 194845630 403993546 539459508 754233031 754395050 789351667 283205570 638078728 25332978 86214354 414788910 794448001 913763844 952358819 485495283 568611296 483266002 499298296 709035184 857257737 815898212 851735677 564058851 942072331 227443714 848117496 66526471 324555417 617776963 915931308 328112782 809112972 368217303 645379946 645394483 930339688 40937422 981753974 970613953 998431166 896278245 987477390 207860970 872908833 115511979 783845339 745002196 854490442 778515340 905694409 572082158 783526407 117279112 868670619 464120286 510090078 31314721 523589135 174977508 725763469 266233604 282123489 385451477 592757024 917448011 977029445 771107619 864266612 130054742 590412238 203469295 699816179 88276470 161790630 681660177 828918895 916988916 928628833 542048773 686494095 314644702 440499522 671950986 795829974 636943765 893909263 170443779 696718920 494237419 579986674 456533357 694235144 855044325 957888339 610865045 665586521 998474189 998946637 344954328 429714296 262741825 295683822 226900355 228865113 471840681 640193690 158581881 246947312 464891787 707354170 421819022 612231403 11661185 514744348 99528030 682891631 176214899 317034391 153196552 285081251 762810981 967689743 234221229 614720010 105125927 356113152 80455156 318650483 609525365 648333783 915425293 917192814 131980533 438482697 891452894 986997464 647360784 899213311 359155542 690372593 568795296 929607483 486478296 521025674 164651100 636482252 756312567 793961551 846569028 885136228 675613826 864456091 212387114 806284339 604990292 736489580 227705430 522618689 911319258 916653996 50628785 51041037 50817707 892024895 964646989 979742618 760202199 951055712 891742064 941868805 643843019 734853581 639510383 731943198 741198354 932370644 279119229 552518909 62148007 681459408 165736417 993270309 863679965 864749999 724928258 864467565 651308397 900231988 455834813 605750903 754248183 842361454 547121626 925108244 986874474 991390484 373746501 953023385 891932584 972271459 703571958 720797580 805357608 962502003 882487238 901626481 942158746 992199637 183846295 717892471 506595797 649361112 910684900 943830947 178221378 968790914 739600335 812566111 273630583 433472632 594680251 942544216 629078021 947399916 620898160 766736130 682166162 692177886 278436891 807700239 268106241 764277431 278291787 504902351 393342910 647966084 78108207 786730740 543899013 651462342 690506271 787194918 623997439 768394693 359115126 678051435 647800912 994421510 487049254 832780302 439073913 708243934 96764465 342108287 311977782 941443567 51850570 229453704 867626162 992645688 737745814 858478264 442246552 792512257 545144038 729973575 521539526 861435934 283624936 680828543 753407173 931566770 552077937 960863609 586490659 670765670 992785696 998327350 81830020 920378158 112240201 534553959 668917340 699755352 951998160 989951802 794647231 970755457 602811827 926957051 337123330 611415710 123968706 572281635 587176014 590458050 654408633 892680974 904365235 991518279 86319072 209278504 983293287 995473817 65233232 165033609 984409951 997687189 98123075 641248755 99475645 527116494 637579985 759735693 396150190 984310209 539347701 668365346 727461049 942613640 582198484 796656424 514098058 907861134 817053402 868463152 342186407 473948682 17485858 816136365 834407281 959917382 175790704 934406046 291203384 544340006 755666068 882070374 680348593 800392813 603568526 732817163 720827447 971565260 185226754 191124691 182044899 942998722 955536523 962566835 523381294 702784035 662927253 968845347 117323062 685046487 388083559 445862742 860788609 919032609 922950020 964576883 299316435 633559247 674817144 750361859 680928799 796153752 844009278 901871305 990413818 994153704 622500161 649868792 794874432 972940407 900156504 923854434 756260930 841917993 163027778 690995226 284838683 934196900 966989166 981037688 584505711 886064382 988344429 998586087 453025683 911343097 810267962 820870891 466462599 874177033 794969029 976862894 34857940 680201872 376880331 405585653 625151060 723033922 533961966 573449700 176439038 763211312 266474829 431918219 458344441 640513023 247326808 638826352 944118456 954973394 262251549 547357065 600284913 664158950 339113203 494126521 415158337 911544928 843787069 983205081 839731697 910523799 91833358 292435949 844554544 949578408 557498495 594917613 73984863 212331347 745401567 785692821 784629081 931859177 415847177 941424639 146796864 275358083 931149622 972901247 803840205 917898320 934332584 955426875 833036997 861409416 769203028 921180219 469658381 939324567 639481530 820450625 415934136 444332573 497476129 619479536 210282695 326155933 478932055 724531398 638926292 818416912 314673232 385034592 690154182 991955678 646742583 661670750 726917410 860857288 272087393 577675300 605382682 608492403 968443249 984332192 996479519 997939815 793392277 970476613 851244751 942512620 532943838 692654362 785660562 835784996 171826300 692485404 251111163 789360035 93027710 186727906 959535631 973505440 414733408 709579218 928870933 976246267 38373399 627815050 956088620 977151497 192443215 398814539 699492506 743344360 23179168 201811493 160979394 493864008 26068637 823264250 965338194 988802085 611059001 858883008 913163904 938509871 839885757 935850927 814272200 848311542 490395310 515168895 987058066 994528717 348363779 558481384 649309250 958690391 375182 81523587 700199196 850237701 199989967 653412934 985448465 994751960 7051234 750489432 706645978 755893130 696062011 740784720 345503397 820818491 541867683 961163558 59263006 736498404 900088631 917120544 275543186 509165319 141206659 667060530 271772420 604839882 503745209 920183682 848585403 995280289 607758921 642197795 596014447 883394423 948061881 969552687 328204992 557094003 835794473 865317586 603691630 802621176 745275184 880821343 135691727 736113673 81774841 560817990 493797988 725311822 638321266 926530960 940120267 941602127 320705428 965014750 924885377 936038958 675646139 826215276 43095038 487520997 372511801 447134447 818320390 992645351 910065488 938023465 58036789 577543480 127797134 144974566 266179233 562896031 485311223 746943171 211666621 211880582 186497782 955475230 438024514 591549414 660206893 830578830 256976911 416128242 73443883 542085912 129179012 638673656 732400541 871535973 505311208 781012540 896862769 986924000 368367758 561572469 316647936 581922697 964182489 984430841 945198647 977803728 210267901 540532236 444117945 980822417 992515777 993513400 745905682 924010551 417335799 699335864 325471077 735651219 176542623 876045424 381937454 982248200 201806653 211601602 296715605 308239276 720848274 870328825 694575192 875991211 163516034 745347451 840043464 988889957 989674518 990097695 14214232 404587559 629379296 986711658 317555905 943623760 494592193 619929001 574881647 727064369 925721092 996213394 218787402 356318942 371188089 633796837 758388510 793494429 981210684 986368157 288107829 711277867 390921283 632243923 718256168 891762357 424063529 508682321 703977013 952525047 672516780 890481680 105320075 377521021 815177906 956914033 93799807 398917791 985652825 989239122 9244042 820301579 760221509 998084069 675604928 937760781 192435379 320761312 923233444 928897920 434460096 491356698 346779388 980325844 154834096 344794364 460929452 868699390 86117583 163135682 594547544 877989345 935417336 947801272 45444941 965640889 632656735 707432533 526147214 922954025 673102367 917909108 585919222 974931000 72259591 638856568 542289487 804050379 389238344 432123793 487369123 703717951 44290385 187773017 16464407 530101748 161083065 162808731 240283857 936127994 506397426 530807549 500933539 886725158 576858883 667709058 480167411 795878503 489773330 788181980 40381006 935195281 204375644 822762597 49536855 453536059 189386409 492081968 210454158 913364721 36301979 233984704 874912755 925605736 3054775 129799902 650679891 957243758 486894285 926091339 478230000 853509574 766232156 933282055 264652689 616915213 492273241 753185760 641471432 976611544 15190786 647594726 407680836 964231126 881845513 903834689 515109235 863126061 504704462 638603252 505239223 915652970 338341585 841731410 91158087 392915677 442175476 468285142 185585811 422172937 481689990 757209701 283657168 541414889 638377093 686179899 926185128 981525272 763852087 833381908 123165532 634549625 60762232 666415821 682394987 963634830 102594406 688006579 46830263 885373942 63159752 364715994 263719155 990925269 468749142 856968001 749960226 810285707 172605938 620025522 178840645 362269536 167112806 599544500 224503555 737510985 878776515 931826191 468969463 664445167 178984049 883113180 449157392 887012082 62097554 881701572 901125391 927875957 472693818 979061501 666454306 964117293 553844331 727942254 551226172 653162824 764340336 868979366 373437325 617866109 946077305 962709372 128369487 145367311 909208703 927163775 732678803 875264098 48409401 614305119 376682365 619085637 640337656 915321994 78745268 117889891 563679477 937146727 687859323 875672092 690853214 716808285 942230385 990236482 125881851 542670254 802791716 867142687 94729945 953849179 897238280 949371514 322411797 722975367 180777103 880194778 995136591 999433253 980043977 986667262 52071405 860936689 269521942 852955925 552187952 741859586 26260947 521043502 440433724 640242853 218267509 957462273 277111267 708468576 777981461 984610477 79932704 483925982 845985072 967144211 718798458 807293652 800347730 858436648 905692861 909893597 343475766 646150020 747499488 872620510 958618634 986738432 192890165 605535877 135193569 249922006 774761980 981016727 584465566 654173594 851618775 968282651 927133672 934155566 601146111 764527270 63665493 267147807 714040139 938826475 408478691 469033602 768986387 866182947 194760911 860237618 956200858 966109968 266996813 892061700 471665692 959382260 347854954 392788106 535606443 616798941 900598573 959792436 789594872 802959966 100472903 338238604 771568803 994820562 216757607 880626147 528490628 870297571 661464505 882290941 202670887 574594656 528508378 708269478 952280165 997842512 862102313 933782279 558922355 667347020 779455168 846615243 507417716 878791801 910051718 960801746 206626551 615398842 251215528 775344691 888926915 916586882 569052866 897352636 783198000 804658084 950500545 981480644 75321460 567651570 313941518 899472804 246719526 542574065 442604363 695026905 279538942 873723224 519806532 840013600 303950088 385283818 558949910 804809698 835809705 978130173 529294176 764792159 767038502 914470108 660120534 705574657 455166188 947322107 733846540 910575245 838386357 963733886 939625921 957399951 254417634 290512344 922009733 967889452 676833451 910577228 728854560 852322104 860970862 862760038 430213528 751041288 771856209 791720010 305109703 970563114 295765954 399888888 986020813 986366487 788810998 986569481 170608311 799997241 609948576 877545948 491654289 791245697 56880516 229252163 834990121 987834074 678261858 688675480 856878006 917867302 496516700 562811986 846320902 851485308 979360796 984205376 670353487 823209294 198484262 437395176 624477384 850587045 373503927 376066994 41647479 985654768 39235927 479165619 609003370 979027595 57109249 288747022 445680557 728647407 125908109 651051401 548931059 653500846 802589788 840343061 535395194 765833427 713174185 941567969 572820750 978799235 82072088 792532181 837924532 878579981 477120462 614818849 34404870 431063898 707473654 776216991 413108374 538241975 907925461 909903287 923082534 940758999 65527205 354126260 73236912 232924285 670264290 869087642 110787463 208453831 285802939 721396853 860557803 887765105 588042212 924947901 407415259 530304638 135258917 367471644 198958845 278293610 927858786 978502483 517697295 542148574 468639056 568542193 506089139 998121989 718417302 720220505 59659861 328433068 85493728 515397814 729507408 769685449 882614314 981710544 214084567 910607731 770980524 940787647 772247121 880090568 55600760 484863068 984023557 989475665 224729636 785380545 926044773 986526926 146363487 973275146 337361288 507284025 881533677 998309751 886580522 891070618 671264625 925786268 854977512 879313027 375857932 505870588 25708465 229854952 800694780 841102161 702000374 784149173 794059161 912096910 148087204 449325137 282249712 804287626 618873853 827620509 126640852 745388156 6626241 63053918 895470536 935137238 730092626 959361494 609105240 949553551 902007278 965607180 988707832 997915037 218493398 688265089 350079091 627510764 995917725 997111004 627180076 734195108 95221473 966205741 976157632 986136601 712269857 873290608 460228755 835732200 759103164 963734607 575403579 811390645 539382658 621278972 615799381 864569982 726267748 941713882 180030782 303683211 979628287 988972139 342673581 860252815 324764243 504369150 265677597 624737230 130343616 155718990 293415548 633467046 80001673 246895688 412587821 745788772 313614227 900509285 548231372 990590786 224445856 442943032 271060140 333579087 892585094 896417220 424153213 457810848 455108297 534940235 633863956 648390631 637726961 899443512 853721550 859159954 863569817 986102363 353628791 517929586 236026104 424878401 666262907 763204837 279244512 624263395 464181314 543000310 893729479 952855950 822391898 931059190 78927213 594052098 846575570 890093627 399989216 405213742 205913309 523947439 981025094 984616363 388573889 460724957 554976734 817843594 463643270 753017481 738811347 870132402 968163791 978838220 232638606 766068646 126611158 927781250 136674599 804230105 231194049 234769712 945649885 999110732 654353629 884157505 539521392 591923747 653801087 851048829 966587778 984573196 277892542 665881932 126149523 563940499 663223467 794508960 753361111 882634628 837369205 983231036 9071987 934793411 760101102 931115665 241723066 915234159 933578128 938095444 637975971 668921043 683499705 820999080 33155441 98096044 439641040 554280078 90556027 379507679 955835282 970251520 963811138 965172325 776574486 920416114 248298425 508904088 797723943 861171775 483524007 503454187 262576572 577370294 977651804 995214640 552985815 730692071 692464786 888845566 540774118 797211904 695290882 930771287 448252700 722880438 383031927 721674075 533313752 763701832 109815737 975808351 129947415 924993595 610820612 860468798 129285918 349794417 565864799 754239775 409051892 453139315 66227745 923328567 914006848 930704735 113262122 158512504 438405250 801780666 709433528 853630127 869022652 930873327 116506547 562084517 272401466 921609258 56034937 840995221 32486914 691252886 263641177 729401857 463657611 668268722 142720897 666313321 674322218 799903286 963829092 970293178 515448785 633080867 912027476 923815315 24514029 369625272 291084805 479057619 804524596 955911516 60229993 983440286 630948470 998888419 427795371 730763711 175717363 785742317 211182550 697270330 908895876 953879756 191025189 725326842 149576093 472397904 139629669 284585209 335554365 361888685 265005919 691958630 133505739 695356531 637744818 705702436 228908179 385182372 933764395 939112674 657321871 839494509 481199548 500037374 292715555 344321016 457909754 836792697 874301490 938002760 812590398 833216360 996361524 999671334 984758396 995563719 393341412 939313215 729233073 900483961 773842251 923948319 571049742 873208678 497579932 905389041 815122516 992719707 422595123 957944168 686373282 720119256 984450560 995493626 324040254 552063765 763961282 779899566 50316622 686255148 298413865 682989883 590334434 816124504 876120099 932748437 71840437 272172135 887921398 985922054 277669146 386252922 680235740 784106036 413876107 681730264 242285672 298411403 377752695 405081023 563184220 639981600 738282445 766900413 343558379 914129428 226274564 549744805 264416729 949321590 764200244 979249776 848825506 977699923 443678847 775974646 243134579 584576353 51253849 119634855 231960668 319162930 849553387 867266156 794803049 921397549 631229754 779584370 106642584 993910756 49124705 185397231 425281383 615270071 343661392 841057266 977328733 988231455 710347673 724869678 493511624 772892609 424649286 462382764 88486189 546117456 849577801 970408495 858139881 907258792 314657463 386952235 418191531 994430315 670601817 893776357 74595069 775739700 937321039 964765364 872564167 928598652 614389899 746884749 157363519 435789467 156270708 798066715 118206835 754060122 651561008 941936251 254994429 630199821 184682503 254811351 581015511 765550540 696807418 766963743 893792802 930477971 350828202 626109509 41373524 646146311 70216921 91965647 44068113 711346086 342889437 542317683 674706876 923352847 615221679 864850153 720505362 816455160 826021704 932817499 574464215 787202929 39534970 641795081 687672059 739884938 261874615 520372385 950571316 951214822 91036836 821621854 904270011 912332012 718549233 726816826 882982261 995252865 373082942 805544440 207256938 781831404 114726172 953319963 931507013 947347750 745415209 827154958 108741191 757112751 966177597 979853655 832496370 981061939 917824957 918571073 259776852 606473015 510086806 800548021 691284301 767655200 270861969 446620897 610791802 963807569 753029378 823046489 237159225 536789414 297320049 553894753 39078761 547398493 700104274 900235866 316738241 380867499 727878515 907173527 886150821 892105921 959600083 988637507 62582178 946015978 744605244 797671196 246829633 975613585 110732405 208211917 823714351 829520064 772477593 957508130 529452362 934166490 586165478 760138772 623844597 708214414 318206626 464636828 598361834 850974108 906415250 934046719 933508741 963885922 967282362 984005303 910300332 941429550 547482085 856728698 670379066 967952346 215393839 347927232 38544375 750566342 810046574 842379610 530236414 950700133 372664479 682034745 243795686 562982773 41100319 314274598 476742862 791114231 62901092 201077229 64861552 680399179 715808064 784102651 905401392 926702950 361593179 574313089 744882695 951443920 394223166 591697636 550680279 938117069 789004499 898809510 635387619 683720018 240427207 938705564 152229911 551094304 869610005 947604531 39975354 892729146 670069335 959703729 226842140 441735551 722437925 848288305 297277264 762642252 718874090 992709827 824554352 959988479 784076075 916135119 40623413 490233782 160764583 252143055 93122292 435679576 474630245 734065994 496974926 504035006 775476600 875276003 178871374 190635871 137089997 367869625 282142951 520579649 216655147 940534433 259393312 395310681 919016692 932920615 941716061 976186635 760652931 896926690 130767475 567864604 507919540 582472938 749059810 756751679 668274963 675727121 646170525 924751356 821155201 898681925 199855638 952379626 122800679 743155553 867807694 998682797 588678485 723533781 224514271 870011011 985709286 992345313 614162699 756116338 101986724 712963787 596694215 612854895 224372310 743702958 218846507 796478694 390123618 893608114 491916411 741335189 852754159 943144262 837986010 976320989 534762122 566425183 578995947 686870993 850539381 851094290 859257051 948743270 416039740 934210743 510335337 531731095 765862523 841469438 228701761 530983752 831961899 976463644 843879730 983774767 693588078 929546732 172449081 632089894 916386892 960520478 768547025 927942389 482834679 751253688 263842221 814959366 702094181 949605230 308132106 723099515 762532079 926933530 651835850 891749525 783704906 927347549 376560574 707759660 398007727 768796776 514557924 856174968 295737114 833863989 800768481 983147568 798363436 838215616 136946916 906381351 992908934 994418997 114239890 645029613 231528429 563181477 830569868 948809908 345136111 571756287 724358521 818075051 183914304 442520331 523820780 707437015 513917772 978398549 457135047 832827658 792628957 837011604 292033987 598000442 974850864 999603227 304114002 317260202 513705161 891912653 981790032 986790806 405624804 757890440 457407360 569831475 508920311 555334106 566573059 792757967 294724009 717079781 872035987 982510512 72795607 97372265 927332982 936340386 815684225 895394944 557166925 765037476 119572146 160255132 245652601 630846324 171651775 996810088 563617197 592658463 499712198 958137446 625498250 847512959 119736333 264860142 253418245 687783459 64867033 328682873 627082427 646012685 639098817 809702925 393040631 726827979 42778529 836383966 543144989 968266091 315118468 986511477 918519993 936623212 501295278 761247384 523261688 772206223 921781880 940823471 882621225 883257396 348622845 400872902 691205338 708027255 77869950 970264290 756753069 809749034 456551667 880193151 941178909 947812350 219213941 278515827 403477628 462421714 763506927 814057464 387467387 680408400 326282842 992617433 432903354 621837058 898998840 992547067 399434168 988411319 365610015 815663408 955495891 968103960 831619960 931331366 450656399 809946305 559053296 736688844 276806167 881708061 5831584 411262743 179361350 618272302 884204505 884379820 393086639 999563853 426318243 880988524 287446146 766461266 400592696 677825182 723711098 888183778 233363107 281035335 536365492 906115454 929920276 975177913 641344269 845918215 202927224 803869699 865005530 891376312 994598426 997548867 993854940 999104084 946114162 967801847 119286587 750553306 117634441 198663746 251602986 292924170 778910363 871568015 186271793 442867716 556555962 717600783 129442582 295731671 227275584 830327661 775931297 990093287 975879741 980983853 633416067 842150731 945628714 964711237 246063788 996485297 899905180 998350997 798919789 968683007 514027101 977534325 273589810 603449965 748470677 813698262 152956375 477395593 909574121 988242654 454910257 887014140 534882619 676891636 826028629 972733093 661724369 817111486 430074216 460123729 605274175 795270919 236495699 253769722 868186147 954548179 897765922 933539759 595454512 961490653 628322755 917295245 231167374 445711719 460069402 854253552 994045247 998871601 51388943 92073838 879965569 941450184 573744312 701437296 600948792 948272494 915975064 998657767 761905734 797210345 820380550 882022420 578865031 910033524 925080980 993971527 366774004 410408627 911012008 971567689 642170574 975710419 507348962 538333131 177558072 909408957 9237679 921427635 104015682 994261181 410152666 997374659 289433402 779821642 547754742 665346977 660245889 845988550 831321636 890762099 330866582 941924041 214905348 514779336 853968011 999620306 918536489 920591490 415405281 505090794 110879510 424842117 91173080 913187607 401518395 809829566 547223165 747881029 552050280 693174635 910529488 964345497 432171451 444853101 782002687 782380220 701627578 726298715 164293564 976078434 275362411 372940728 849482944 974417723 799273513 909837286 922172550 981111546 538591237 976338533 27932619 474618248 799817201 822625265 461425242 930935026 663628730 703939154 442119253 527698282 672191502 978019611 309604141 753843658 628651801 760326171 939404481 952689737 234876585 831428009 350593267 972134463 407915275 444091483 647769390 860479923 834866850 915803075 381021332 656663867 215132102 662115572 260935870 998109667 492723403 891985913 511514262 905663674 158132695 970295760 794405868 916202824 598255315 814859669 643867614 650282801 406075983 928443181 20026037 398479644 580221828 955148155 137173991 230890368 909593940 987999242 141524401 937489131 684360798 732017685 508436666 726507913 191895824 441378792 976542801 988905776 46996827 524312440 547454633 590753784 862382975 904456381 250487898 358120902 225523726 811588609 504216295 756037919 279670282 534589796 452466436 751251044 826474431 855150837 791780632 796911291 809991459 957187004 280565064 608909281 778925214 782266843 854993486 965422015 587949511 660293500 105182973 227834236 531380691 591864945 215617887 848479268 450413967 986044768 882174282 940482392 912782193 992241270 655336479 910745375 779873303 834454490 194863369 583115611 787777858 864731510 834639620 953683779 367376751 777110371 667104987 904917066 817254598 942479391 617382460 983846529 971476677 982114225 804524198 874123530 512686348 589750459 668053566 696596805 69433297 750366893 682895771 915380292 763463678 984190064 863469626 966112901 527177488 950869559 813500088 824479246 264784668 280501107 145989206 405680841 797106443 921699023 773138686 819985721 732849510 887157145 58628591 680146809 38776999 903929886 921790549 939239750 586711162 899838100 134740973 863503160 555424544 723785195 492137174 802886538 918260616 941447174 241945188 865361520 653742603 689493066 316117069 373305796 428176993 749461931 632963922 837749779 507778503 898946028 107826395 812708822 30938988 878319164 206752231 210411770 301590415 937856881 96555184 681674124 65230794 370900918 51485720 472031557 40059070 849814675 461723858 835360085 88774379 864881989 100506368 566247292 67580362 493772304 687646164 739039498 516158663 745857708 587872119 924030100 456588239 556384365 453141644 746907001 779953031 795257783 980849766 990437153 435948726 931854980 113867198 167408110 808129956 879253396 225938829 453423783 759167990 949856694 40644572 652263911 165564381 882304885 511255288 765025706 313133027 682244688 119939962 591541068 722667030 981747816 347827130 647942075 111041377 877368084 5735749 920015965 68876076 309302236 892821107 954812585 641901162 854806188 960902730 983701163 623560954 656339304 392497740 706878682 269054730 397702365 599287641 713956801 864259383 877217097 164651505 781399839 843889324 880612093 216456094 970823929 40046142 943428615 178996585 737980209 253129796 940984995 11440357 260641790 770889314 792561319 29851661 197127885 934708252 945219665 82530968 110210816 579754018 761301345 661590606 697265064 172022955 743903179 512837792 555708453 150301173 170457961 744003577 749635423 160771479 403872691 888251338 914979030 314303975 737400475 435932540 690340403 255061704 520666986 110378461 814113872 617840236 813422358 718855422 976677612 389309599 620327321 234588055 696513077 265286986 743569500 217551547 756258362 965468259 976225357 594441314 870494965 939403480 942089837 336021477 783326329 890659682 919504968 96217481 780064642 164096333 271753460 34207076 743065792 174287003 780192331 728386159 775531369 376193026 393729737 330340682 451965756 449931587 536184985 765923261 872072142 556546209 777166501 407772151 720609680 881807557 971625836 190416232 781161560 274967522 508865399 783179608 997867166 942037066 978292808 501806388 898767863 940659777 954047035 574835101 636623817 82067880 119973368 445158497 604166111 838745510 906763252 832660611 932639976 374744965 926086617 250596166 804715822 28052951 508398956 230385227 357683597 253131018 867628848 932917682 967303316 873558397 900215334 732229813 960784530 565245422 601160992 798261751 955346304 82753018 509735114 95159002 117481340 835663735 895872692 536757783 763627958 716579017 831899552 831093911 903894679 606180567 793618469 911711748 955549593 516607219 527399012 494959527 519845377 882957416 898923433 627950565 768413723 83144049 669423019 63525760 583305083 349592674 942937619 331608735 971543703 549618441 999518773 666211608 805027874 400402443 707057494 644617895 736859520 382387501 484340693 804520279 819430757 284717520 970742574 443451419 964877031 853757617 891406977 582516532 614229352 612071438 902545402 160229274 195695505 178903779 389470107 504012416 990257095 21398034 391440305 406368725 767943392 823386820 994677537 233969478 939646445 628065135 854871677 648153540 824596055 846057289 847243101 477260499 572828203 901340458 941844123 619940973 814363776 74115136 771480736 781606597 923499487 483565013 948069640 678635704 972810717 476050472 843587811 288359606 352952138 354605574 815638178 24219091 876627130 650705262 927519254 631395511 882144244 380213093 657154386 370723328 440552790 68418167 313604070 894141864 948024529 370714528 982500948 210882956 320067420 418364960 660551465 860434456 938720967 119219451 652403093 242517513 592853794 631130705 794132888 930810457 980788161 636094708 969346338 450775772 733149775 699660802 733906249 590964687 983947299 558114997 813739714 360223412 679892295 255435765 530004998 748745054 855740534 998963483 999055564 841252747 903102009 551245576 959949021 379907484 737125680 778342293 825156256 473291947 550482450 188021399 747129274 634021926 865447183 58832899 716177923 791043022 925771148 400362762 754196745 669601343 721169912 945328065 976165370 750117008 963361838 446985389 524664019 643866971 724339685 534585728 911702840 103536647 245283724 800903858 988450431 457007056 928871840 721659956 950365076 637210025 760251873 415869525 561587073 701955897 866544559 55786823 779864308 824522350 912327002 81926912 696634996 663188168 846653806 708214763 860661392 940755435 959088000 523021526 806544920 1921503 519565579 688733704 787990239 998416083 999595427 58662037 316936641 35590836 325925450 108011883 123804296 288198326 374723631 991696392 995229278 94535215 819317865 998210456 999106156 988667413 999394603 992721775 993991653 587139438 711361805 482789853 632169315 626687637 701884441 312594255 581529609 422579783 845832224 157549250 777116060 583877839 916223239 464860563 713012463 110512425 673971497 158595944 228925000 336279571 889242508 981964949 987792972 53516382 627472083 593179162 782642452 121472878 435613911 968420036 976456028 499136255 620661498 129237639 315113670 180322850 419512461 287704106 965205944 740385989 881945402 119560072 524551313 51279898 553880757 746206776 786194649 609213968 765354766 534603497 996226959 815905840 888086866 841211648 873317773 421579284 786676253 925888471 947641114 169718972 669944898 372475735 608356914 911957500 969388246 721185875 930072280 340506331 742925990 8738201 95559156 83354812 217075363 23084904 345246821 832668264 862030200 729209018 868046461 754589701 829342943 567902654 914999461 399734130 944629385 509445079 833942365 27123898 945548795 215804142 992377261 406772444 626816264 40077762 684112675 790128081 920245767 365147472 634135546 53942081 521157785 651382161 952808866 578681539 584543436 364286172 947198449 966015580 968762134 206052921 747246212 604844758 669446348 135416380 997389633 907942770 976864061 705418112 903952472 560138589 670766421 842994514 968061868 334446865 689938936 975378587 978351529 738069049 850741693 915487702 944004693 228474175 858161075 52982585 998109242 906705946 962055189 54604585 485806563 872039342 906685337 79528935 406821788 539272196 987223772 931588800 962361050 296639590 340443125 900222908 913247142 651344578 868069095 730347845 889836651 600045853 666716497 555958311 618227014 354893874 647700254 877684289 910321501 702327992 950690217 144195084 604595243 54451044 595457476 144392704 465063786 491579476 526830740 680336484 935797730 525974136 564963827 184842387 951713761 944539621 985736918 954146144 968885646 599093969 892236199 417557823 534511571 526829584 565119236 752272875 764676251 791927854 852850163 290907465 319314287 539475148 875767608 42021200 539790307 519481323 524731832 299544025 656346953 460987920 469188148 966465416 991045332 440113365 803139080 513517122 577095944 662128387 893339659 914987864 961400671 510613862 801465910 308575049 619324887 203454135 580271833 328821754 413628595 323411727 424536491 892467916 991851320 284593419 626435031 794318815 867808410 593373664 801353407 129436828 924793772 804145877 937262852 333798739 376451399 236157574 894452063 177924609 685655034 983746673 999899239 600440926 779768820 258424879 383578181 695372115 816645535 143110146 730090717 515493070 711289035 29524911 990999478 583206443 612254426 195142711 822281422 365858500 396406645 618583906 991623303 255322174 949896550 234452782 963998360 791060632 863752951 326960048 843810826 487827468 494088458 521814061 893674833 793258009 805285812 929015022 978336378 290581677 621191923 879007859 928892024 473916727 763017567 230759926 768329350 867607828 930852449 895057201 950099591 766911177 955471505 807924977 985756350 782150092 999269169 396316962 832529389 95052393 770556038 342190439 797407771 848818014 890851268 287726288 739919533 681583738 709509405 378947879 411689790 160761123 388355518 219595068 852048905 372514872 848654152 998369045 999932217 89726231 359463163 740256619 797405168 403090094 682353446 981514455 997925926 646452030 740167435 245775117 438761363 732556068 877597070 301545554 483067158 164245519 690310879 203682309 722916371 210885337 637623094 96425573 673970945 117608641 318766041 129037416 903636537 963831889 963837847 596276139 896294049 597517666 623206318 73782217 708578133 330846677 814028766 733065516 922271320 686218064 991971921 183332948 851552230 359553260 973821279 219003293 943017451 584895339 943897345 963753283 990659818 755195486 847611945 703885840 790529741 711199233 875116875 135415850 332652129 160107300 686964292 91009345 532824136 561148474 683355655 638112692 727497820 371568037 619618488 80533417 912993990 894209557 983620577 942322772 988455106 190424557 318614072 222471725 411062606 379616389 425420205 357748546 822478878 755885511 815587191 599265398 825002036 15176291 777927825 713314094 859868960 616346127 905326736 297201189 916260983 30489109 856826218 62589671 313970611 520951384 864027386 861022046 940431367 763010654 764070580 749714880 906894043 110907588 698799379 44464016 203476171 156518804 769934287 842935136 922991617 657367078 972829487 317500331 388608265 574313842 897607416 535518025 588321291 959368778 968570901 459524140 784252164 480474149 940603891 336199111 729943135 470919318 983639877 178308577 885420759 615454720 665887680 415357250 544106699 786492154 974114468 303934114 655276513 398522495 541579966 860757618 886037925 787782915 856796611 932389431 997305456 3822860 197838395 939667186 995474095 744505491 926574271 701216470 964017299 791030740 953524655 256352854 720143707 686840762 922149509 588381361 676911839 391743290 414844860 475862986 722573600 431905001 692586757 619126178 688039937 848338813 918133211 659776196 866979605 556374875 805894508 434717419 651985728 228867830 650939794 940489243 976689401 126891540 783809428 569139611 933140552 56687201 263135702 265999842 922103486 435964814 925359163 980149025 996499007 657044709 867596380 743458802 893822630 419028824 614864160 94838311 780360473 913697486 934857597 44800009 236342541 471214567 809807732 199939704 206958539 994924831 997965922 319420491 576434520 760628111 995657771 315024409 592036856 731474596 733031443 570297535 944475688 699958374 962654137 981176185 994790370 964623741 977752579 228114803 605189656 603622787 821971445 859566858 935190095 590248911 670121768 646400958 894361573 253516409 431763389 900811937 936328706 953380401 966856048 910756529 990842211 331570603 756567298 140308769 762469021 336233029 884187980 780714740 803685384 27393188 933172352 235389781 887528648 495122045 632426275 978431066 988867009 618497500 690722973 244821991 677910081 80712289 697864297 902150934 993137991 915297401 952725224 557308463 668223065 6448559 298277681 506906035 775786723 638718162 985186328 894600937 908949191 224467210 743300932 39972916 997599303 213313089 727576582 10331802 355893006 757517744 769434250 616563950 865250925 346743764 674867818 58441688 969358092 540701560 923578642 345054675 734907242 415029158 697854333 326558439 761491105 115404684 169372041 849743426 868077102 285564210 517730692 223926435 574580893 301135583 770368515 45915381 47179954 341271744 541051805 564412587 834988929 621970138 848275768 196402461 996421385 330501314 968396924 650989127 755361096 381366666 846630471 657196741 756153666 22711550 418684645 86034843 439147116 857142588 867750401 952653222 970484890 918407900 985398597 900311653 922259182 642224112 861201047 30519955 862670807 267614022 291389964 758518740 773619041 868200072 883057282 5380607 34722400 553476982 817011412 812257884 996516852 559901345 850444985 764797155 859561800 683095913 850304559 313314740 521522371 241702594 714680924 72404676 494416499 271044466 309346142 580085842 853462267 685932732 920588812 221277397 266646894 930013625 956420231 768602606 885790145 212366858 306504800 289745309 534945300 748765488 985504845 315509820 456562839 286480505 608071316 911575708 982861334 598090980 614549142 142860137 728872337 896053985 936365642 522119595 810313156 166886512 763452724 986563321 991241739 572103435 744542606 391117749 671197510 417365435 570630423 237938580 974920174 179471992 877766044 755310800 852267906 38095689 154613532 235628770 649756482 494401178 972341655 755388086 759205465 59785662 877351478 396836030 697367262 236923402 826752266 392772981 412152921 952887880 994670440 576488340 971796862 44768684 267422477 539555057 985948476 734663019 769202611 632303139 831135594 249001920 421361662 766879078 867843508 389383518 992460840 130627622 700824755 163330040 998237988 678661731 905122073 613492371 940150546 77224633 124078114 485222892 960166345 188507222 843819299 158571273 424837846 727919997 736217702 376550806 384283568 68146750 274594280 492634922 522299816 799571072 955683953 359176380 959377703 413314505 782866637 716761413 922526171 300046947 464425548 86026130 776153848 317710580 835785895 68366816 721789048 58142292 749743204 849931040 947558751 240375201 489103105 841720947 925806810 960479232 985603235 92171729 342420177 634367209 683455201 42094457 317241326 624335079 776307560 976113678 983176141 870064215 993361503 697443152 988252327 968009372 974495196 992782072 997389447 126474453 158908580 497531916 598721438 397001624 919552498 522178942 635072968 858473377 951837485 893477643 896191264 592433186 985506188 78098895 508451064 761135258 764117807 581353629 828485372 859053349 987110526 211216586 967784662 646317848 904503859 101326587 864264056 682690108 691924672 564809377 627533404 461809881 878478081 63652365 892410641 205751834 739714679 714644600 720257034 535800569 939565932 635531439 780636287 344050459 871301080 566582124 856458211 656299764 785355593 234801301 606135883 676602436 677570875 599612345 748226156 870169040 975542510 895686563 990234580 986750840 995233428 714466447 943029369 843666410 872077288 385313442 910262747 898371001 971095968 642955415 720320409 171456693 368333035 898360166 901379772 574211176 920942108 187482607 829562373 654789766 816753441 172423299 791520594 753503977 777793640 221854290 243039629 95211498 937691552 394970231 989682053 881178892 942279117 208643726 759942866 645943020 999721500 716902410 903970024 579330019 768793536 254672446 849077058 745067471 975926534 481121905 594888367 919046475 968022785 239343745 815996651 758929825 896740915 788758795 849405277 297700694 887278688 36706973 66562755 194565884 832610291 552649130 703509209 237015204 831138283 345327732 577203063 776171624 799667624 196260605 611769693 990484401 997332067 329716951 533356878 518637328 844931887 66452694 968191215 829282902 893368988 958869723 987207677 491869513 751522870 442584040 933888241 798082196 874524496 677863440 744287127 386519398 608275762 393259070 612640120 243890265 603993946 996450370 996819676 954884484 977649703 517317818 604215338 516974099 573743603 539225641 713828402 388354291 848396154 991361127 998416878 951564751 965469881 847255860 885259691 728538558 865020321 755562558 949134807 290612132 426805398 176693674 996075218 870876830 962084585 94534136 590914865 974590717 986282549 214717444 672154100 654381047 680777795 632804897 958185410 359624818 464697709 490937091 574872131 958495571 982984013 73464262 801541660 150190992 281808131 421568026 855982503 459294843 849602840 821809541 852439402 107344397 526477533 135596766 659007456 453942060 541932060 246343794 927729415 706218005 742806753 389620958 870513131 737704263 924045052 412424112 733002732 326129749 625727801 351275804 974848921 386887098 930881279 857419720 933985972 475448280 624466410 500031783 635052563 578698964 654891890 318307682 336802699 499601963 818776436 572580993 587204294 58727818 846839753 68345469 619312420 390024887 902437257 748229444 892755738 314453011 575061654 196812935 240791533 665815468 709205779 240690488 798828180 103985375 379717645 279784148 778362254 277440499 441256458 694901246 810259891 341483713 510241634 747977442 994799487 519165533 926689103 298276861 656205993 566753776 943928099 732842016 986608517 275384098 537783925 183649443 767466312 227579174 324128918 978561133 986430514 920915709 966537599 698219014 749616126 986047331 993353723 21427982 82244089 559743751 850822580 206606987 531058048 749805984 754939521 786794673 920953111 575976950 603904902 552372488 831460568 128003660 330113465 175922054 481172930 30253344 49592023 618488546 743491028 138405707 790539353 960771791 968716091 325856834 507751510 463993076 571344506 317218354 341410347 10942893 930271272 240297486 270587550 783531848 785515721 585804940 745017208 352481221 761028943 744850965 964088032 657102662 776730628 828266689 953272294 117176439 914122596 279482 10205808 255958264 321566627 10466774 175699066 719265271 751445395 147549546 430024224 273471160 721626829 85205951 193853200 551741997 841052960 838016031 896364223 59182692 835447570 265457850 665931802 819197352 917622151 563359649 610735538 573322775 691781494 61464199 189709476 774777690 844412031 96152907 274330631 723771909 863676839 559222332 860357038 569788957 994645318 984413854 997935985 444265378 977392747 495423004 701671091 843423904 996861965 165634770 634857411 456900484 827723317 801028864 966141108 704441488 905397292 843733985 847525431 354717542 613543484 573583770 731700640 308036415 992022050 361360570 794629119 76591823 477761882 428143186 450174346 627407696 946494117 276968874 526574639 189925353 915489095 453078475 920654826 542270112 831204234 226118115 240712308 788987704 789462801 954588661 961742785 7298421 723798769 439853182 818021315 923709585 979069089 384848153 550773078 948423252 989874971 207811515 535616310 72989623 413498679 210646380 661498699 754240346 804984230 579223001 773686701 951585579 963652199 990116792 993372083 388536979 717621653 624230779 789858324 128750816 932790610 966729988 977781897 823963508 873355097 740459936 898195472 121757491 650310329 557485469 816475828 622604728 686726217 880276883 962390152 873837541 925984526 228935249 592736029 133751197 326600908 619916086 976064027 603874774 631649387 237192018 511279259 198799282 592262894 572678645 889228733 706337180 982955065 119905077 276238271 875650120 909765609 883504448 990680356 47817471 464971205 513570321 610443591 890331836 958345314 512910265 968021702 731234141 932975822 727657923 867702341 932528583 950129915 354370047 828838402 23805834 930106935 773211768 869049424 635419750 998005029 628494480 777940978 816134137 942157604 458004464 528785666 858388919 999525736 814514249 839986867 633373405 690321045 330339253 582406823 728450758 840128391 109811330 922015280 691902848 760482759 10805063 714237515 125145459 922224707 140596390 655188183 146321230 161382563 43771662 493841325 552990552 562943882 445888553 852584940 973833157 993760762 513912996 714572384 584399760 807854046 80716591 125711863 923004187 927630653 491621600 951682402 308524085 881518662 358883361 403237722 489498725 577128538 233916907 285797276 194104121 670357859 942466751 974917657 669130533 756882417 831489352 953689820 703709550 734179038 225459624 267137483 154297079 975114999 546291369 917875746 913990154 926791738 591730202 895118447 398592249 511825921 557243381 851105014 790922105 861222046 82005425 221838758 217997177 572055061 597884066 646703580 135599901 140487971 262705650 674848113 26553687 289357473 909602881 961316582 647921107 973392711 891647850 907494986 151045235 424180776 711795036 930851696 634712261 953241720 772570642 948332965 434086627 721594563 508055691 880643883 641227504 660837119 940214154 982679193 191354140 566556468 738553490 785588542 324309140 704705693 923680738 952793217 498151123 544933556 340254967 767233659 620417855 669800910 811597341 859820203 279770026 882350938 284959778 801132351 72739084 417428169 993802625 994136036 379618687 762387103 877175974 958139043 693448910 889087660 340837567 406972348 79050134 179537991 997456094 999004925 903588732 959279938 213710564 879203304 603152673 876439775 407788550 651112847 30972662 554642382 105560743 662786486 843601129 913633539 469501030 791920399 495880864 930175309 322401761 985264280 994279576 994311060 274694599 345349723 381146911 995578802 517347348 652036074 723738806 791446080 412021984 672136183 501478284 953678738 307933807 382397083 230042085 899308274 26989050 436221750 383675825 439124578 747532539 796711233 843646516 996157218 751020526 993904393 74065102 901019207 14589255 576132622 709234510 813198965 916247208 968802945 983237156 988398446 966773631 998400210 396229710 875431460 268311502 767342161 166211369 593173512 481460109 765265449 455617314 973666026 108648156 399974962 749173066 883185260 606569899 887502295 181786562 301747054 676890076 861197908 347466756 625932310 774246915 893020261 762488379 992257231 330969306 611208431 340416072 781538678 521353722 536721919 46537392 441005523 979134767 987231633 415916556 516119759 161674088 295527596 177749132 302846388 449850581 480408129 92352498 358622814 998452674 999128048 859222791 867129494 209547101 348672339 669984935 728378099 274883210 894516916 83712011 292956576 497177252 616520163 770654995 977349894 454892718 923704449 300676023 696341538 606273069 824058881 874530643 922879907 606310838 806368474 218239202 238100077 496662194 789165086 995912845 997736424 415807321 622691797 765499311 983173535 833248061 855913413 810965699 835081594 871819172 978511446 923135162 981292906 777212917 786470261 156770823 502472577 863450377 950340369 69350232 953626923 404415098 440748681 929067533 981412560 939386945 961579445 275767253 575455866 777948693 954278431 619503617 620638607 928665838 964581863 267105815 558245799 119733663 919400566 648464670 761608644 287320934 794370537 254684932 347851155 928361997 951564083 769327406 849758226 148168519 490710020 690205132 959858059 272010496 735092057 177703457 276427750 158216805 974975895 156262229 947980997 623845570 879604107 448059213 998905584 874699137 884864949 295013037 753306801 119203089 703848998 809184797 858400715 149896181 468040448 275410729 389005141 132035364 943965642 437748687 787885461 271721424 552357250 783832124 976257786 945427221 956167528 431550304 856372290 571575602 874041146 826978919 879545342 990970285 996787478 432561659 791971834 726286837 969309059 445323851 911526664 457747839 873368551 939145610 977205894 848089068 957973034 595094297 671848423 930898168 973108004 994197321 997154974 570875680 676105377 430076615 743126182 191043908 631235952 694029855 850170761 632628435 903451619 330668285 529663569 526321463 632262256 644565191 692022380 286373666 992725862 72420238 773190704 900851925 985141265 821819489 854671736 798295564 860237446 846255767 847377730 790018454 931305326 264883775 464645169 475957503 659030483 244597448 432626336 671794856 943625356 331329886 963242716 800938073 903099695 972137417 988876168 628603666 710437294 175376939 244385806 677917845 850804910 471775614 658770751 890176599 953770877 770493727 774414351 866296256 969542516 948741844 964161908 616473845 909796083 355640177 923607574 405934560 950716088 201728066 400783422 277123785 456659179 687397076 852319364 350575871 470113362 757525573 941513832 187793561 693613764 366192263 925216301 773110381 821072078 387308532 706744800 654581425 883397260 995870729 996298440 337241040 369730892 952663532 970356602 789615065 994996814 47178191 533021291 985591546 999662917 522577217 992905222 401288603 838667939 426739225 875317237 834306075 963797716 620158130 871899312 466574853 580223745 440844530 914034123 559241056 976903379 823517206 861078768 523614794 790810793 923672055 959069904 281575759 846920098 654540663 806302620 333503789 444748554 775033221 783464499 819188137 938846389 879924346 968994400 182980862 628120842 770413754 819339766 317043507 502184037 737638901 997105636 691953217 924773683 983420042 994319469 168965551 294753506 309004408 736971719 257646085 721847643 936466016 989164883 256990582 480942885 922044055 972084783 614332616 697841288 272191551 494152774 813342656 910949535 596565827 889957636 72078318 200353724 186149564 534440218 474056843 548636916 371937802 830054670 464064235 894569319 722599432 982442355 106313258 873366776 670279312 953911957 909184881 925344082 38148361 576172227 482347472 846889738 162948790 657463756 190166343 692964733 216656401 459441615 876660508 877502421 109105054 600671106 965853920 971269623 280035705 346517785 222465981 783481600 26970317 740216942 337578981 364834342 924264129 924510478 143865722 586885136 367669004 877040355 677961333 774910053 475420130 805991935 977511138 993127031 723963279 999598388 289483960 969768913 447703097 610331716 985768321 992972307 69228696 876628128 176788430 350307052 416439193 709487591 276112890 336713068 858502037 928813550 691741588 826731812 873946989 892052071 634117683 924573639 82250241 392369598 197385880 946763339 722178312 749464146 375678727 597407860 190136177 810582167 329660002 551893354 933402268 989039073 732714662 985289693 384944115 909652292 302608551 316683779 583337212 974854437 399236419 500916218 137914142 616752464 258340521 804204054 995068931 995677427 141405412 268278729 310378897 848757044 723876339 917418874 811680471 861372095 45907728 855751672 580160017 813692859 952930672 996991287 698717123 894085857 649726777 823115873 802965739 949446662 650499199 945738069 918608331 974409307 707779982 973721324 765738409 825962272 309915060 814431854 218482260 536533351 123280431 650313560 256783775 289584025 238263238 979814710 2526173 802986175 173485851 816607661 408490355 878038122 143214677 423636970 792770009 921763429 41254145 424605226 52683375 58012946 809747989 964796673 966032011 971299554 688582135 792651077 117013032 806229563 719199473 964876535 921726769 996950652 561639331 927767178 999526247 999734959 228888373 471826999 977911534 991604909 540822287 662659604 986972318 991290780 357236409 394467242 752131308 857065237 208119104 954399124 427219047 976692417 344451615 890773626 9789340 663555020 1303893 263442048 94638860 786132532 499725706 824626042 496728752 617336358 9148500 62721097 860982791 965317613 728228264 770848894 116825377 743584564 256034597 436302115 718621978 777517474 168957933 498780546 754052532 849591226 862638351 914566503 3184602 869710978 534072573 795739560 335831343 630999964 339458808 623656845 769361364 805613597 107076252 407075387 338647301 617438271 711617035 967403925 669134371 905074160 240125754 966526311 703557955 766115288 53660435 588778225 644378602 738344238 691111365 797465822 101853145 149223843 680321527 761388590 354026242 974329892 741066214 876981564 105855741 316046531 566204763 753987953 630186779 938040959 348239143 745133259 135376920 830840054 579281178 817755989 940021508 998829911 684482186 899390716 845457121 923064636 809891245 830368620 193834609 281276208 573953588 926253297 55783799 643281887 989606526 995498624 377819817 620223444 741577333 871948478 982113827 990298747 694975639 831007504 652497624 776870289 664518467 828008132 120257307 408459125 471383235 926556043 545658404 783451384 917091379 951679731 899248798 986792707 62127693 531758058 207261373 570256356 29774249 924999474 512569344 749727735 980742827 993996170 854596686 896072557 543287576 840164883 996909798 999662066 333161199 946324900 347704577 759619136 713565089 797178345 451745051 494640652 345684442 745315613 987938591 994190345 519302068 564956444 798087008 960122141 756012359 825108757 543930868 721418192 834784304 900363128 537395975 541132201 376431688 646554806 926015774 949934623 884784837 962937798 518083675 919768529 745186680 952107830 561910343 797563602 516287445 763134528 680777782 800632187 241917300 717669357 396020370 476652197 387409292 480612493 421149933 886913637 25190643 874444863 14228264 753969383 573172349 845019090 571508122 632356060 315752685 653784826 745476832 833461576 295103486 323621320 868823592 990057748 115982495 549972152 916306383 955176039 182868292 779600401 783174105 846586139 772756994 942420274 428375318 512646687 672422506 886836840 543778480 662086953 772768583 831108379 656570372 905230630 233844347 250976490 634663242 975874393 214536670 791785344 72442805 959985522 593957974 677264695 586591662 780496377 69646164 570942533 590531533 990722096 187804338 802398442 152084800 316446867 650637068 766479927 605933714 944617814 752071317 848217599 382699507 802645116 625987137 686872361 864277122 956998138 416058577 645967502 310956594 876794320 907572833 913949049 50223489 820522764 257247993 834062193 950306345 981897746 751372444 970297366 168346575 332453173 834398163 934995151 293911985 684585461 404759229 890001113 782249355 859484512 585042197 748040469 595583752 728704410 528910598 706265516 847522202 863277353 956698230 986121942 955587835 982258634 926259873 991342411 349631775 695944060 721129003 827191170 600923092 765257486 583597587 883806912 964884802 965400972 846416495 879462101 761521727 889562119 789855458 799339139 39846312 209090564 436020914 972475197 902581223 999918054 662124762 859513391 711672792 756923460 973490725 995395724 582586615 810172456 998014440 998423193 894732309 925817931 824407270 854792561 386634250 986859646 879269094 917477362 865808674 987688393 198864661 265753162 402542525 679752632 287742472 729290636 270975691 317184192 924253452 987873333 656754681 802521448 781591652 893153664 578330605 606332808 227629225 770613458 413078197 745060888 725321103 751769299 41771687 592078826 467891802 572134559 267992914 345399111 218069293 292770134 552378011 594618766 737903966 830578546 30810130 967091206 989476982 998376708 678202256 712374913 214211392 778536005 382273197 592494942 321908883 365351584 267707079 275543906 915664737 972165439 47562563 814250564 51074449 766701442 784102380 822898208 136903707 907057371 665172929 669923950 10272485 892099641 395461323 543193147 840253728 925713832 2092266 909274304 694921190 766733942 743762480 811253485 759930308 881165732 557989235 771404817 873906861 898608924 231462006 302839180 546933159 562439986 621901001 699522017 184529633 814632264 589818396 878686669 725932245 745556092 465193038 551273696 563309868 932126247 717775889 800117930 464687650 516466924 488245658 829660569 409887729 608445603 477668999 676654293 376093859 456569480 789337747 953364116 592172601 887654181 465032644 767094770 192437711 399688155 670133711 853299094 266491812 371896498 742694507 873573866 763924437 991383314 208640025 653537660 824863339 922969114 479475745 627172935 703964732 808452163 406160362 617827733 113010008 189145364 459264105 514002793 151917210 403210459 361224839 710326294 833251297 890297548 243749130 890309730 504413079 520302857 389351563 724739203 494407574 715735571 783539049 954451300 616766646 969400927 977895899 985582935 749141497 814730041 345504088 535601625 315074224 688797971 452633281 603221989 542997842 959451265 105292988 856217596 243263891 608667201 482675765 605654077 502552235 688636195 255103491 425566132 95184111 274416576 537546861 905179044 985742018 993428788 169194503 256359013 415094588 678156908 599406793 722945333 308963164 868075823 562334803 927687822 917819437 975155860 386444797 954190202 154797225 702398102 527743666 686872633 615554002 758082348 316441565 766129107 958000073 965328296 225220402 927779809 608450052 632669840 254101921 812403086 668227314 861719691 583378145 719876013 4527061 530424964 127928245 530775379 214425778 777096334 691576371 810025687 974519682 977378629 810607483 975558448 259099321 652591976 794212387 921369548 815616979 895085472 501789561 983744589 926910673 937703871 25753874 809194370 267893082 806558836 877385930 884254329 210883070 250056655 630249227 634828732 546365995 750329986 642735808 809453994 578532243 915703986 321181844 790977829 599300776 971795454 520819354 677372697 24476173 859813805 872272816 910750224 303371039 748422854 38533784 606345723 193865133 553139895 197514553 384319592 247846681 694629238 688241970 891578258 385526226 777870637 570953919 729879090 549200421 561055804 353394507 650951392 558385157 917703671 446967713 623625925 156593008 722631427 561159349 901407915 755876691 968263116 472512293 519122433 404117101 748568826 623954572 911903617 937919654 944300824 193121494 471132964 415197976 654260966 520435097 809911431 531619247 923741538 672323418 752321908 949039729 996700579 739034585 961988384 771640062 791887977 657521847 991144397 533793716 713928527 734697738 994845110 129603479 322721854 754212201 811698281 321049168 631721118 898194084 975898069 14794151 941697137 836374788 931341329 877699070 913072876 77502304 456418107 348644631 724833501 994341828 998534199 701020590 915718602 953687483 973505675 449955675 721502061 710373014 793680434 630784181 863393415 727442251 891935076 539886871 614994669 755709584 771631257 388208823 763091215 961732575 966022262 570737026 650273836 636093655 820141890 544353356 673918654 970256221 982183939 314021401 708451956 711323963 870210397 612534744 974350262 776177020 843228708 276637637 421338105 927904632 985728502 464619226 555411291 162277916 262169470 996795999 998723426 308016223 814909754 134977929 763043217 538171588 896481093 674529997 797293923 981799078 996709093 104830628 787023932 394272316 408829141 675573928 891561633 6258696 161493635 22872616 434280511 438866744 492279863 688547160 931393402 892071909 982437897 87559585 346546897 490366704 968836285 912531834 998743121 33967719 708064887 667436510 954546800 863279183 998667578 283509081 720192988 832315086 850775747 595630702 919958731 764780163 962018462 936056955 963095139 955130153 999407292 998502567 999300453 116075019 808507440 391592600 707418925 689429435 813422364 460199794 964608483 935852849 990067043 882190744 999538069 184923826 529825290 537433932 771194828 620311324 973445972 517703009 729340465 57866623 121946276 64089626 611982062 892224976 956925461 452820172 875420726 802995479 932243205 772253728 830485793 56986129 164384281 383413867 686902735 570808935 669834226 836192012 842164023 351354431 376688836 570626902 581598787 879228033 947524880 144837013 208307747 383257838 468828883 677157476 994591431 105374094 880762308 692381413 834564108 417623666 930798079 935566286 971405284 363447754 822403788 140849700 689668508 514010574 968314120 159301507 680440324 751075199 807853861 500676328 735573652 109679121 730388186 326073103 606011718 402321091 973069156 832657409 969784432 203909622 706459246 139155427 694290387 212737561 523946576 582776514 810529474 357740523 765687366 31369538 882510491 320343155 773854658 269325459 324486945 981361981 993605995 224645441 445574251 554236128 874785424 276404980 339914952 498496954 762441491 505794025 874439468 634776515 872299750 886617414 928508046 531758234 876995540 754861781 760948253 865820937 873915867 791700122 837161883 376428973 428679151 224830891 656310638 625276895 982051036 869496138 946696823 233851870 422422920 789643889 832570231 253191283 493711046 761489095 785332484 632818517 889436697 538937409 744682524 486586362 900920531 597227784 945963328 679397537 955878337 476242455 492273681 777519116 808552557 408604442 462880049 13773083 724078898 363760501 614635413 294599161 488890333 926709917 933776560 604398588 702533973 364501537 836783991 386426075 893072805 173391185 327668638 725365716 925292644 146905746 319806272 935633466 959156828 908212948 928112586 60214486 279737806 615423516 843369099 324654556 984396014 590462448 597175583 573525156 933005957 356104453 434202652 445424346 754614874 112419493 147105105 734267219 803303840 263672587 769860594 324807788 553079144 571971125 950435501 28457653 968702665 684669372 997563496 511694120 629213216 968512203 968710355 858221861 865519561 138880843 961819929 842294931 880390961 968327378 981617933 194016562 488764611 410308083 879060738 926246895 966054985 529082826 899936699 811441742 856645468 611959218 925325556 715773830 829722697 845470000 865803473 715367907 762428388 524454749 792978549 828162274 928192754 34490133 859267865 245804938 937551538 699539237 982864524 655949924 997161032 318752040 844352594 608081751 896167540 676613005 772966104 687483177 845747941 325979641 355070805 755690335 986219830 30298135 918688761 346269659 589934946 155056535 435725541 537530593 783398550 891877328 926517300 2874587 372617248 450683286 492842494 355339640 593201288 619495591 667526586 508744712 842246877 465373569 675321591 725456890 896680860 17534688 697713313 994962877 996834608 791961508 853186783 203337209 799123470 275450694 400836114 213225263 623333546 930311896 988179248 761409057 913703175 49457778 346508119 965743368 998310258 45562937 474249350 585298899 778003285 630850083 669967099 605848284 808461485 607153217 937122866 236706872 401606307 287745343 705506091 880947657 951006503 966677695 979742407 45920545 348830170 88541838 882197592 507243346 617279917 940399627 944740051 78517362 276457789 766232517 799653157 788047614 939500052 247143845 370643331 34370103 634056726 214997407 846324932 249551501 740129022 584153938 932026158 110462605 567352158 454402008 635764083 20509509 916613181 366496669 939270047 47970949 924404592 49051071 973545618 83230415 367034331 431492445 746505611 777980238 873954027 470377564 913059513 456070585 516188326 831817841 868937737 154062063 686293295 903361874 940261635 563620761 818916096 408472729 655902700 6495141 485150079 806895318 917006023 232740005 295155123 655524482 806899376 721882125 851086297 651586374 824455749 822035539 852851333 694391640 971622350 270098673 625683375 414093633 607849589 361793370 630007926 403240090 764318991 555238892 932711964 151370763 387788312 601193479 728485555 741624435 865586057 330299628 598283151 131907316 441138458 719936465 764521254 411181216 795277336 375392935 415178380 925856577 945289704 711767940 761292149 615706495 904400176 713499912 853256084 543616754 716462598 262495504 316929264 388486291 517473784 599360160 900633227 656005623 699533177 965095031 978351661 860265018 866141699 274038021 718538490 572627824 619401655 961004346 998045931 724842412 978410727 778449328 993080415 137290746 929189082 614300089 825076729 935255023 947995634 881808046 963003971 567026809 725976196 486032529 988633954 136535466 203629655 396429532 610249927 834881296 956851305 221062547 265744335 631800906 666696969 493842625 959346843 64256557 984671920 359350005 566293569 38355348 438231844 768788732 796118241 174152192 411737514 681510111 980060321 933621800 991709190 472962219 603747927 973507756 976966210 529959695 543458903 497031225 852781142 280757067 327757817 68019157 331222509 173747309 862804696 241375345 646282844 526111807 812423096 361773167 986961616 697141495 786176372 253383016 892072092 57193797 869039422 48532350 701292029 698815008 915576920 991400891 999554726 559080295 842111859 954856996 958834276 482609088 860724612 691867467 818494243 118719623 776230860 786420942 985420976 978662883 981231262 279642215 473367551 985704384 990615570 533233929 835916500 453280290 701023079 772674990 782544319 779547997 817097260 670078888 801224776 204369014 392917468 460810427 751015162 45112971 843422593 792917370 990375237 38576249 608707338 431425266 527035795 835814937 859570439 309663868 726115169 501796403 734708052 913809480 960366858 991615510 992170727 253075967 701714533 991175326 998775653 85640878 294544381 550640610 717619351 326375335 468116850 328992199 357995154 90021717 354503889 122850932 237042980 961192681 998198609 843458790 874761112 614301429 776064654 717806829 924628807 461772228 998547183 664640292 856119829 798903475 886840179 822366194 839418864 104852232 157774677 2134627 32072505 109523927 200290668 31703663 332867874 174431375 650884223 882723299 983051760 721245208 854908178 470330423 899514736 421571645 782752627 580997378 662009206 882533841 909702275 71600493 958395182 992254422 999834686 895773010 955907626 39188804 790430634 551613281 921407776 4567508 668775167 855152925 864801199 987507295 998670025 655001065 850728322 807524380 968165986 62809234 135410016 524689421 960144689 793646269 864246262 689756938 786974631 809243512 985167782 580848863 601831162 25830101 429206803 34271560 153932164 143909698 328732997 351382887 894923900 127573248 843068597 702094597 885198372 34523277 45649926 652006858 812192257 82771061 849860168 100772320 459196570 691138928 907788416 415498006 890063060 674864377 872429582 470171775 993394475 827538714 973066026 557477646 601083222 126695399 919207254 699105310 772335584 891561407 977826558 671294103 840035552 539510197 707522602 802238122 805955543 363317846 642741240 44136408 571889682 172178893 325879795 198899692 516064366 865659348 877983970 212071274 276298627 784845618 786085865 4158160 547407416 249743363 898698278 568271935 710762341 877160030 986057232 700607914 967570457 367296751 577889167 306062622 556789084 492802086 821619454 252911917 574470316 493622291 853227341 645386917 736197409 91221429 360024067 92155305 659425900 393699068 981874801 14198684 734266882 736876855 933767881 166173234 569354199 845884874 940679152 580212776 761922414 259550232 869429510 678912423 940282832 826360338 953605633 903558330 999826335 28993387 825623278 110184243 511897859 912071239 983666552 258403786 381662793 489280268 776395063 718847025 934851142 874245901 985599417 254297235 564097148 188163537 556741872 754752016 896219598 830180816 906795062 591402474 744345102 622219992 758359500 440687491 817936760 413073101 645823454 736344053 853908842 580357507 832553171 812365994 943070262 445424526 587476120 726404734 850665775 276520384 963555876 212492276 577382200 869870070 992114839 164036015 447388886 73156699 219430809 475919333 588359006 566231231 581166127 780528461 938573844 321645718 643669093 61434212 312879250 986322033 996079754 725978665 816766176 88334930 923709604 787456832 935682486 823027594 896154184 937625978 955776249 364770028 411540223 481210179 569632277 633501135 848702734 308279664 760808674 583749687 899566222 546249906 767502866 241430075 706003318 775845809 892876009 739005616 919129034 696359979 828600840 640318352 667091114 96780115 364670926 159118249 487489760 681802608 793332031 378827222 471328552 684200572 693721992 359335140 384397145 445442124 596577732 59656022 107887986 207318537 490286851 228853960 489185974 290032224 353283206 330641300 884262254 427136184 648789529 70684931 396315679 800636373 941621809 226225572 840970829 862884049 892272341 874397755 965347144 281935755 779253225 869327279 914710452 599295158 829360109 572560480 728551770 102059504 844958873 542933049 890095831 881224082 894248626 663142522 695829227 628634056 714935544 112784314 792322221 81429472 266754725 275534927 719992748 980399200 983299385 734303989 794312124 860150766 977483204 992791762 994621393 788693576 820734069 295924293 701329068 387862781 573961523 39669659 582090556 500459166 857464744 240385031 736814222 777307174 865685257 178092936 758252825 552394250 765452233 181534482 377708682 907971809 947801202 286608011 444043405 24755144 922540063 450212123 781603577 966866460 967862663 537630878 782435132 841541197 908189790 732481930 754969876 842533209 901060172 810212954 899308481 789279960 985496140 541640115 758656944 738761225 785147497 657467531 785862392 53633696 907258122 385875497 675875944 461305415 874606918 838298636 854999012 53289283 727117835 284908319 418765834 529608352 619465245 427321811 624055898 204715980 669201079 734781861 912525759 500107580 629673425 955395156 966554113 734631209 996697543 307207156 582092070 631577055 837422224 935461238 946592846 874090638 977669648 29587288 111416421 618402756 882026314 657719741 965799221 544704027 878401330 338907011 922776513 425938722 445648030 227035989 327799523 886093776 955699945 257699908 512987555 87807399 897254177 250463537 915264463 984453553 999081066 806753358 940371409 953171143 960277299 248516241 763722966 766422439 792513958 182523982 931718505 248492097 333098335 32034175 235800519 242502191 734645699 335802448 968530989 882281121 920200478 224409867 539908326 132897566 268055740 715251884 834326192 956323679 979367359 657150238 823295489 105785427 863962884 104219332 465934575 32533683 604251977 600816344 758993573 995191052 997131437 420998235 912041230 619721749 952942381 270586218 419351492 270202136 818380658 70145094 678567908 130943492 639267004 457202224 934432210 791646172 979916719 693631878 872050832 957119333 964454737 551077272 720357345 322456032 341650236 587577846 719398288 534163586 713101109 385304202 855641082 99395475 259579073 26510848 962306764 838797641 846617548 257032920 967618531 123986908 637775518 967510423 993980005 157280138 967004303 478656801 847599032 618647363 730956828 678862050 832581312 541511552 547734015 239306439 487144900 713678405 875904883 220801 712109447 839885049 962006094 10773093 692293981 312735808 595209722 123947372 716394885 91312943 792758961 55139360 732998984 954963800 977873894 632095102 759207514 48786919 732408798 709406145 812432051 950239406 952859649 462791050 789134651 605129700 665103355 276769566 715130610 702805515 713843109 451191992 843741307 162728247 780150375 821931788 891177538 435315520 456112849 369787169 731016348 405818750 975297649 156896494 934940869 395590494 989187580 468826713 930359370 722410936 989046553 410863307 706688378 502937324 627034540 930980854 948841849 161650325 776201273 564819785 891872170 384644612 685275187 225065223 962520440 119900017 354554508 455713670 685256134 64631173 651424459 636142811 776427644 396928062 791967268 885344183 955371466 816084793 982503230 522137494 815138989 719097512 934568887 967441363 984866218 637826854 807785255 451681054 568246167 248740865 835402251 775722209 972371417 93777928 460521071 438637513 973940763 28872930 416968099 553986528 939953887 319207129 774631421 561004231 586935054 412965211 685411703 3288798 427562965 926096267 983456049 365967265 444776937 789564026 941375591 172340024 521820935 902595798 939034166 358323270 807704916 215781557 707105672 31962142 582573427 2797533 889132863 757659447 825197656 978700157 978761277 893532656 900513991 862208400 990907644 804120415 996997674 321643490 871748542 687607440 991672086 927481707 964774640 109877939 576715555 380425049 513420476 277284559 511850787 524976327 573076589 197764813 846594807 35688717 147654048 616443196 754103620 398329324 564388784 299648934 912800931 448707100 611373793 185468096 356451220 458850631 908301044 633540695 671149698 205577935 297734282 27338825 609177801 3759284 776036379 463434958 937540697 948261322 980398219 818784852 957272855 186950459 564885515 191595423 345944004 584666725 992687291 869618360 889742036 515991945 962173945 560134645 867364478 148191165 606102964 138277132 355206347 568852635 710400924 280132872 324197286 741737130 969353037 529660202 682340047 737863173 954996108 433553446 723470934 471192374 931062046 392303247 954738593 498621185 932833934 968157492 980388034 998593210 999444492 264842076 274674486 700496489 955065020 739947167 886151643 592851053 753476467 697746642 763383260 939365929 986061351 565500184 644346993 490274343 867426558 446313733 942802588 176200917 295567786 845309285 918428757 311736917 872155063 973713827 994490026 478576507 909078558 48600326 295964874 167887366 436910665 893538183 925447329 151259500 773697104 943571109 981449649 650072752 736122996 737338820 842022657 342815719 463965609 478246549 649085373 424988203 626081965 896490358 925792677 371905674 530689808 424503670 880129210 747850164 868165140 949646882 976615987 398018669 729656934 161257816 662639319 213668372 389682017 457265265 705692137 814036522 890030849 547608492 567639191 208224294 833268551 669854938 775337314 925056210 999183992 731476940 933336739 447642151 552519987 222495657 714561014 68399709 860784750 74162569 888354949 560162896 625467929 6233156 63643502 418346600 482275439 721253523 951702233 169762311 203819357 316487101 681763734 170225505 625064436 912405064 952869742 200538255 357795482 479083711 981604357 860061231 860834461 769916792 845701838 837552767 989557018 853867233 889090288 538644056 828598731 479412716 846986507 123855170 364806255 322575811 378460246 728105228 946140427 93724003 541725970 802043346 812269054 829471010 868265585 889214171 987036906 353208258 876870749 767181317 814089447 278207878 698325616 922526347 996413028 402521856 986897409 494189923 648699105 234300635 694588482 853233545 922994958 564123460 577572417 660010776 986028353 636152103 733622354 803163055 899402741 370846311 610654220 438973864 587850363 644559098 796496482 768859428 842543856 267615587 842008042 483249700 620730674 446743141 727633135 63886722 190845097 606628503 765717622 336886597 872428396 493664314 549472585 419545653 502447461 710994411 943107169 963742594 975152943 101465859 609888195 179144651 718032241 816919271 904544169 237511835 642308635 834266357 881747216 279459646 567508100 318337568 502729101 30444761 60560303 348412265 941343562 654757985 976502141 802035246 991347036 646495082 947032555 488467169 923150955 284505489 887413746 322165979 933691804 441742693 556016943 757946434 877420889 606172780 802341133 224949823 959218516 705515933 926189216 411424901 749561515 437230835 695001624 417292524 480016878 729214940 966938513 194139480 445355702 50645071 285231008 400673654 633190917 786546375 791522399 864395946 959956537 502834434 916981083 66627677 629634184 753573465 907182195 822801275 973629239 710396832 737076456 787070906 972298067 524314814 717771936 562333125 692718939 980708349 981824157 40370871 534887615 423405866 628024828 640573253 690929057 573184091 766695689 99765792 667776469 298033775 887473361 575516924 911652128 169169710 442058078 461412924 717971449 878881960 914389050 68043617 901975059 393653216 800534247 708186034 765024320 491657766 495068818 529549259 772601120 651598705 999926209 973615016 983184970 635575086 646378047 593016043 764499946 29298332 367188106 170103854 247502237 244006614 847034385 420599704 749523836 830999409 880862789 955092176 988150846 224935744 767616730 840119114 873311922 377368513 712164807 798992327 901560093 35679298 752352349 269485503 492561710 153570557 601488757 682184269 865842613 865156620 920432473 522755429 646135409 424273512 462123046 434589865 573295912 165009211 927904371 606779735 824627044 395454921 582420744 704160185 941134535 963742603 991419295 91402966 888913564 925439782 988202123 631460655 952996892 810484734 848865257 841906845 990464874 363599785 417056013 892699203 939953873 469175124 677676530 197653217 468400649 794405297 811788876 342432358 612516851 424158510 589446228 61299555 580153140 367338747 659090135 234243649 267874914 46913603 285022486 301314533 476551892 324179135 960853716 624416254 913625983 449569032 842142983 539709019 970643161 886137999 905977708 279004475 835827676 484148571 827660198 687631298 742719153 507444603 853607419 975530402 987344766 972061774 978191771 259207111 609404295 538660676 846664569 454916640 553347494 606956863 758922511 119188172 535926326 339261163 952948480 696881757 831812575 526331628 694882580 177594663 835256260 662112004 945325535 279729222 393084370 720700623 733798739 183857562 234717755 433866383 560259347 738802342 781430351 862548312 953679712 184437804 882671463 761874534 866827331 135108949 204705350 607692418 915988079 275337557 579705072 368883131 680497337 264450887 347928019 787914001 818174971 254897557 471819908 616530941 653575255 314470058 322775107 396108023 991441373 293660219 855575165 443256696 988090062 221689206 575626548 594734476 838676587 718940607 817431829 924095720 993600081 508831591 881662913 430847670 912715649 901974335 994096999 990666764 997497747 725727491 809659509 549492759 715346199 793130122 934800836 293925047 555570264 323426551 450419081 527826054 771419541 15760104 634514784 925148738 960724704 135264325 626632891 788444359 945259463 408266865 791360944 411377529 527729555 609451980 883922117 671848904 743758064 119587767 644543859 364774440 793229312 584113976 752823681 129374290 153774480 372206810 948857843 212641240 677671028 861302944 910995202 315428864 462263473 631810285 886207322 128622068 486112751 708917710 781156565 451194816 964389259 376868007 972897647 249759653 510027847 767429082 772942604 927697423 932172364 188653906 413950730 374065705 840974543 534121463 796780950 395665861 526268491 22085976 716143083 810157410 959746405 928029547 928397028 327367119 572728353 515424225 730093194 946426012 954833417 611398276 909781448 136629460 151588643 135546457 613357716 434465510 854108780 795285506 859723296 282916746 906471417 946904760 988687491 597007531 970195297 233495396 921776010 759565382 928120162 174964893 575712640 435864958 977188517 868377643 877440951 370484158 837685888 797893360 811985947 720793675 769348403 51675260 122388444 473967548 888556971 103950919 784729883 251925568 741279548 607410877 644540494 849963226 989023562 827977664 843318673 106369524 454080430 465538900 875984322 407610242 949334296 219735631 666794864 970734373 992600491 55309273 72580915 443576734 977669157 786184534 860101773 28299707 720540446 572348878 948993232 949253475 991856780 41991380 556862274 968700285 983764151 412638618 684995259 470685040 694306077 44988584 518672071 286757075 546702316 62714117 530609221 733657818 862467446 178584853 198661793 25327088 208125676 902321152 946230886 26552914 668858278 148382450 277406401 707820521 854722158 664332097 908348576 170195081 540268789 451173523 937308926 833673797 949940949 863326507 953731312 505360691 815838812 414952421 853856484 850863024 991016110 818774868 910242470 283268314 758124396 895718582 976463802 197950920 428631814 201109766 502088772 259642648 425765264 105493847 750486596 790846642 884025173 419593962 825916629 480511472 522021142 318189769 697042577 328273446 546088028 67245680 761751823 768917263 989517379 116240376 343056420 843854309 851893270 712848842 722105048 198845448 346277803 953634076 977796673 777955752 933166253 606403100 910478823 751571991 785579393 815465461 888464848 503107010 679648698 877327176 931110772 285294733 713731388 120667386 558656097 322354940 481001193 216367416 365948902 629284597 963225935 281223719 672475403 244699077 516661000 807088284 827086616 669323731 672693986 131627443 572313131 492398667 525571121 164914708 407033678 974813016 994572722 998368187 998688071 589688978 636749975 639062179 832071423 582862281 586901424 699528140 931874793 337533335 382536833 109810739 793681100 220955910 957403116 388257690 536139160 925831495 963622998 304894896 329767522 703903087 856016090 72932561 469142143 881768727 913490996 392763102 669322690 112251397 296011061 137520241 773151559 260065944 758597583 80066104 132269515 786689514 812690516 743005584 843304665 524525881 915462512 187566355 934079052 204898 91844769 262569102 740879580 784536157 964884996 72563465 880379984 7877185 68131417 465231018 819883274 817577163 934007991 601764763 999482109 786638878 821835518 143968749 201116316 644048935 709296030 287106685 763004407 60747500 965293412 135618349 628153408 417082114 599343549 462593694 983375161 905178770 910099842 182366038 705301321 10804688 362775457 985204773 995170199 863331943 944705346 116216857 422365672 980610998 986144086 515451888 959221666 374864587 525635292 667683952 741409587 428925981 548123367 848692470 918639990 79296046 358011401 619570827 900446655 516959375 573564474 947221638 995440810 870608586 934442288 162761611 417311179 152958338 625137998 292540308 769396717 455958914 863504377 10597644 36363784 553528896 967903707 681587866 737406868 175886920 465610062 803357188 876788728 510349160 734470201 937025506 993571059 198798555 303345764 853984445 878921333 352067785 803289260 664536083 729383219 226244812 588543353 570679937 953639825 71474687 563572500 244490903 250976614 499269972 920528709 534556391 719127759 443187742 851187509 82449418 857524955 21753598 742822260 323329509 612291896 531682030 944800891 241555987 361965714 821397036 981252877 545438106 656191283 148721522 444841226 583507939 654613570 469588401 872194981 962860284 966653607 368938314 825690522 759686106 864633076 535964762 888401035 715638384 831235628 27602194 100130618 774532871 937291698 569492249 970250428 259303725 371157121 480646216 877458612 514177342 930020780 827843814 849358175 951962680 976084316 148615280 939188396 357523989 923969662 790388577 818038591 757084726 933881051 195991661 224817844 853162154 958897556 562906516 938239749 327087317 686004890 167913993 326546066 468805489 952694033 925292806 933380622 744275829 819507507 899342332 925546053 565295967 783624503 411155002 557282231 280457048 576805450 223283215 764212440 886101080 961857631 21594680 768311972 715829470 812580758 778944728 828383002 93581074 703532055 926142703 946019024 719478212 791407840 511863394 860944950 885275578 952681070 783706719 814842991 156162871 390163088 499344841 673679796 290933618 370700254 611515685 925078142 873368668 989180662 175287574 435399291 447342511 730949663 333583304 585081557 842846998 892288367 502200987 966369991 235064917 538850096 230071801 431374964 160885068 428226645 103741257 775867189 229498545 553815798 39682307 884063767 8054934 94732359 912823057 915495017 238614131 465968384 609912001 956775450 695549593 801454761 973203341 998476116 598102441 653850658 543099694 946184807 850945516 916880640 971803379 976141408 463879402 591072111 615259169 628876193 181847430 591997380 421046818 881199887 242858983 386552196 909788515 920938943 91503101 91847526 558794369 778071932 10688301 875819873 839037297 918146909 916428489 972494545 291541766 307333522 326126787 643051577 805771868 933498361 208953647 514084218 583101587 648745791 857146894 885903707 635169775 736431335 645619219 816868315 989749967 999916331 564608625 710795811 835405778 875042643 612385467 909898842 412092532 472083177 659205986 978870765 247520473 873349588 429809926 665829389 204612217 342354637 832337801 846930089 579571407 894198908 998549942 999054923 437357947 978185038 22463875 875562210 457719472 789519303 703324103 844121690 819379613 962220830 250301530 353862712 684480562 754951768 589586582 698603492 738815727 776294631 66019739 774187145 347199006 824066311 590221685 652686200 698130512 904803127 94886305 853913659 220671387 797314737 175452635 210035436 500823060 630183428 307036303 360352782 829501105 980655953 609610211 945461245 844825171 877679672 305341087 352274595 406294365 794526789 187342862 381760238 142762116 674062860 716839556 730783285 963167342 982390515 925533376 984855716 393807485 802069443 910018980 928287215 213353455 916246237 981363816 987917242 502834783 566341915 181164501 882931300 158310681 980921190 384826178 958088379 935851270 956817155 581919251 842681812 291278196 964342204 921849202 947405636 339803409 441029101 459570956 983537420 184019379 860513461 784785335 854911355 682998972 864420684 578166334 583246431 830835856 944680032 674011911 963479005 125291628 685996566 128596235 924304743 561898124 703594677 155185129 257304675 220795147 803264053 637331229 658348373 612946035 624273622 917145824 944264368 97526494 961006080 89121552 101751311 697522262 917166063 554095330 591595845 59363913 130895928 456072529 548475263 779257040 869268156 200638590 215779010 395496248 582400643 116341505 774451425 807630520 869948907 943732854 946251255 191426265 398068628 342375436 692630882 601969281 889962577 682766076 843900488 991762535 994669251 17664946 401224132 823450788 905545276 324472221 812519357 31625370 140775540 784255725 817887934 122534791 729896164 342962573 823729747 352481816 637788510 698309781 913315650 511303922 704087017 682721095 978212608 24733170 800055645 306892804 342381099 257364258 597539407 780700287 827973103 691098461 711946536 898284808 963211252 373291899 410709281 676862392 883576217 130979252 636320387 917127655 919221695 343259381 713831143 89960917 281171442 59906940 64890202 798284086 967019685 675199356 909458740 73405839 477914866 370341470 499440912 762373472 906155883 795792089 849662128 522840410 933008288 852549887 995682981 61394328 435212879 978278060 990339533 266625288 888914047 939359653 939522473 43820027 988483224 257944168 560849342 421741030 597516465 967581639 975840772 483784540 573634341 616772571 918502162 528311448 575266020 204993745 640739577 979521788 995430484 216103951 471257662 228687836 251363063 632148734 996909345 269788046 345546049 838531396 865269726 22640309 509858054 305894079 943577043 978900566 990048209 641446150 820672509 656629146 761262362 332660131 930233637 546739847 677839691 252744771 896722214 475195580 672071184 526614004 698179387 447921001 524390900 269350348 544900757 415858858 516998494 791544766 921938457 8605649 211276635 197252591 246504025 820757806 937170531 945883525 994835312 944179879 960456964 412397586 820165809 624936044 775953305 755223716 946659490 748275991 880680332 985189298 990950956 505479683 827099798 15893825 741312848 836070072 995814547 738166950 858087042 95199582 134654940 698047481 781756826 966187036 996802292 597954111 767543574 397463800 839802921 960950885 964901864 537058941 559286984 615208725 967140460 125011634 910703506 29255444 536443999 457344888 621587468 815135546 884147798 941482528 981250335 264904933 886283536 622912929 724435973 529222376 770702497 251234642 458239444 20535268 98761188 413834793 549898674 826868471 884650835 523451132 676229628 719027834 747245941 669909872 705646533 763766428 767740105 556075567 650036580 202534871 823020871 790572146 996520538 847855781 957334991 16642495 268526337 195398068 575577996 528846787 920542498 295731045 766061828 718648466 898173253 395736403 530808368 525640048 658552924 916835038 983939270 479660145 895433883 949379046 975910762 778658939 819473245 595028684 858209016 313631160 586059424 751119880 823401244 964745791 986817281 834208043 955324409 989718594 990118472 998915663 999104388 278492547 438188294 986602091 986922848 661280283 932897842 423340946 747802751 228255589 601058428 932935062 979654356 71879274 557416054 299581424 517121951 264439688 356767353 356353119 958881291 643701675 929860075 639160572 669195410 971081075 998518742 204488633 939487293 508094059 655527985 898534814 903489031 812477259 922187263 251091947 585554472 726600915 938458118 177335843 366170993 300130334 968535199 528896810 866699204 361209197 418333013 692079854 897226702 119855036 446520513 833467133 885044094 625798271 862672933 792971824 960731181 165224988 435810583 830935836 972275089 520455280 930989953 10525287 765561636 693917520 742017286 875046599 888339681 163816225 996972261 935946282 970753776 433190437 872723356 877949085 925892565 506490706 548338666 526842781 755137716 276597955 662000564 214659642 402590123 444841882 946491932 759399407 848549011 340443411 606889302 650734394 813588984 113929336 831471513 978136084 982417822 447877702 725088905 829198619 855643972 809608351 917697188 106608820 465085880 408160748 929617263 907153500 936863589 609246492 942283744 990734850 996275077 100268092 723754932 586394008 793493982 785841783 827364508 617441950 617784944 770169260 930239392 887365977 966576238 893581045 895573254 149379376 420549011 605313849 625788479 904645362 906241795 908667107 991897866 741659271 985663407 540050093 897179094 793906019 966825758 759603896 763684094 596417065 797648851 369625614 976646889 976777835 989592361 678491051 975053090 251908972 549656656 354543553 692561300 508394092 678160475 269143283 718599627 803588801 841092244 186219612 954371552 599991142 852221527 297235855 339168600 29259642 493055701 919155535 944407002 497505596 665335675 901499160 985885902 25091142 343767558 872294414 986342871 786949897 946241610 105367962 331404648 661067926 748982178 692769045 751490651 748244981 982454240 172097965 810792697 21482132 419642078 396987536 728932229 708331687 757424581 607981324 991620635 407368126 958723480 594172826 958010732 765767544 863186898 473959564 947729013 725386401 761718441 884598844 949212989 836622876 867948481 847268208 890405283 495528222 804127488 394256390 956061522 651444943 726619204 27385359 739716241 277932787 393544908 670289719 816119200 28638790 133452809 92438057 143385376 628273043 688628278 876149263 928772363 144141435 868448380 669958488 684623471 630200468 704401054 704965176 706310319 728242208 895947986 742496037 755140063 667194655 783801130 505080738 885639037 461636607 802775302 629365013 876657723 545370719 776346785 516815431 877271793 139983841 732279005 263274771 756308046 176276009 219990550 934774973 958761493 897570506 989108708 52565451 244008138 887795463 912640265 730119677 899819970 652809268 669179679 33332213 939301512 313504191 353476678 932811359 979845361 286991098 892543571 965326716 999627812 588643415 970088313 65272260 169979328 210771915 960186620 489251586 537466006 949499341 967907600 157707970 234421369 141225337 392660194 399942117 789528423 283831074 631597269 18614621 430745079 217629071 726561471 715766868 730085446 933219925 952146302 914116822 980189103 63316244 455051229 95852350 637930202 596987822 825406947 965287027 975695540 888101181 894705293 381463596 477643649 330634792 591014619 214005742 276314459 171290225 709634740 39769185 704072891 169096728 467449112 300977683 385094026 898199814 900403764 480828699 698219871 310414320 685676278 415617550 473015279 86407732 233680862 459064742 563914483 472793735 802302169 474227610 740015329 229312830 532840293 640117392 989156864 515795213 536855583 446230332 858339672 106249360 217708804 851900745 977699784 732412847 756269894 53367883 275290919 858187764 873329824 562413411 970148360 991110498 992046591 444155622 610793678 726742437 943080178 952907939 962812094 634414546 993657093 917472033 924989328 109454776 778518104 244588924 774932200 506594146 949845588 210684009 684680899 374353521 669569869 670688385 678596021 128067912 878134465 308368349 916922253 697130131 815408817 383910356 654330087 440576633 996668359 784031391 938810427 826481986 883946490 154444245 360277243 49651129 949253106 14040725 801801147 918908432 984555800 308881952 991022521 703077961 838538079 683777204 723833523 277304394 824503711 887808831 911385004 49400333 498706034 805649948 973755195 646839937 663276657 426749812 685997141 719992687 796447865 95795994 349781432 691334058 719180217 551169681 766460175 316249676 614613702 171353434 802595097 498919665 754578789 412094658 876161026 994860788 997988874 866690859 941203955 395474451 593077927 335714634 385890537 103473930 779977377 608547223 714496661 893107831 920575055 110055616 747352911 438439575 744874337 36320107 757263875 851725504 863555791 34309890 885906674 476791709 686569865 913437130 997239441 969995582 973000141 931522586 951345004 162640103 676487749 672241436 875552711 380925899 880812676 647252717 679948183 18713990 460876164 481052352 604338846 167667919 299874161 2888851 842571815 435129064 803780029 977487192 996563320 892889480 982422046 654035844 999578915 4125775 691450900 858091487 953608176 989179145 997197911 536273430 553174747 195931480 860680680 68107759 534040199 516674234 671875729 595521802 820409604 168752478 534442477 848610560 988012505 369455867 951019060 378811383 897686566 288972377 542145639 205335957 937167846 184221177 604615788 783563092 947113039 64687402 768768633 41743128 196965309 585145100 588937804 478454431 710435164 477802994 880831008 78653024 679193855 749971020 956656176 622412042 938378656 848335750 926958998 11617597 261241861 668982568 979566421 502376284 671310535 49674644 57991860 317341010 463761130 823693600 825888683 7652940 10465872 71496236 457008046 600022965 831643873 477067816 646507705 407514860 939539436 525546726 809458805 185786986 969114026 834188018 944747896 204693935 651998286 88916000 235888303 109837083 445640300 68064645 919141379 55033552 178017867 150977691 237271049 662509906 814622898 964034842 977135354 247299061 781632793 761743491 833278596 784347241 972876613 868442140 891597083 92299821 350848530 342428046 793623493 390031783 402444325 271538687 486354968 631822544 668492391 176527128 519124059 911851075 946449913 615668340 888887419 108162316 307149936 732277567 816814318 394475731 700769955 194404661 485495199 259164495 603468136 799007727 877763690 613382332 768189126 576072873 636380471 858014474 936902496 742339812 755008498 910671502 997533552 755215557 808184880 535951014 547864479 87963544 461306169 2860381 301573161 644004259 926340116 495420487 905115838 889545665 894308890 772047698 895833281 253109345 717576512 914827651 946675416 922234141 969347562 207176724 639046887 422307310 603576965 123179355 631070587 431599544 446456505 579510084 799477819 955066800 979982784 569082195 888782091 489642193 799622429 50145408 852440345 253834529 895988424 557897078 717218201 956882333 988108131 747184776 881128280 385366092 833357402 72935478 431242194 547505943 706989256 250760476 416598670 804510753 936243602 383176057 734139987 985340889 986241238 411055091 684998626 194548593 838923535 833201482 845145446 821784644 898938094 289436907 995341177 587659569 629588567 715342947 862724058 555683296 608612893 333680396 899756529 106251338 207496340 946392462 989236638 412870707 552627865 146667675 495826374 927072803 954972183 843003863 851670684 577524170 928615716 411681076 510588996 35632739 838048065 683422032 702867928 533740275 909472841 408041998 791859943 732271822 895323702 151763264 467757466 585235491 840525333 995073334 999782745 104306717 711097822 543177245 837462724 905877858 909074241 127728895 865563454 991897562 999034502 931358926 991514403 817961248 822932165 387565226 881098671 862951936 863635994 449106061 994820479 243102765 855629771 367173395 787756460 31969131 284010607 222983058 404569431 778973848 867472611 601242746 939800599 374566998 438576725 981525965 998066199 99406577 995518667 458590673 471773299 28456567 451664838 765509401 834341717 725798376 981368996 202298511 524940285 878131885 957768313 698478030 955403917 405759686 824488311 229754990 851394215 161686065 250252140 257874036 953978549 620188301 631775103 224777984 991152185 579986642 871264082 941728260 988961243 442789067 576891750 827564175 921258477 187827523 483829299 588213773 590185807 9171357 440495578 748312811 883274694 507668367 639750992 876672600 946232077 854931369 868204789 254044272 915241554 835281973 957353185 252829948 949674227 233757798 346521286 788911899 965328694 790141590 983393619 670869508 678982787 729836970 820068562 332157512 917998733 739604555 958203986 247282374 249896786 889966420 910952689 959040501 966022227 23629475 951114242 129061525 337874963 405615591 687704438 932928693 959396506 872145993 887482610 991787566 999853637 226400814 489242717 990244851 992185587 456719835 459953070 451261259 549414779 553868034 630520388 100052776 354326219 233580087 697148624 980458240 983594019 680679608 824481147 38268588 145809978 737003647 868210335 959185474 998241004 142069522 416319246 205293140 672072476 344227564 356074848 466952172 913726616 609259219 912873963 929789796 966900630 137319675 617026901 605395161 713178780 55701868 551152024 996260430 999314259 371922807 529671777 527613618 934775733 341788213 648504956 847370670 881140865 590486259 838985022 276497709 821974242 949354269 973885875 863625639 940455681 952649480 998927645 243365697 763732176 317526985 594363493 196559641 326476765 588869897 814798229 303168405 687905315 14409029 780336337 504388308 955815793 104214923 552713295 643163987 926374712 901820272 962772274 838326416 857828148 579873018 708469400 81776302 458672422 525876489 902621401 654930169 932716484 392533607 636198504 791506617 887594454 808531547 925790822 164418251 977843965 789985328 983539914 585412600 956992097 541696427 693093343 684640466 801976209 994208902 999362591 189727812 520958004 297878228 864012731 658147780 933195130 12805650 788809177 457583788 745852753 746050580 774646788 224503564 861904699 802629333 932530675 853035240 869448321 928519163 973600689 548396722 690647814 110172741 316145494 319488408 356866011 791114172 879510726 12679976 963742851 540193224 953764582 521454023 796597531 611077950 965598554 983059726 989741736 518358300 628009357 450531837 833195500 587938855 713226815 651951937 910038527 909160590 944187210 809884123 937729780 378955479 509591897 360939787 423214943 648965733 766220721 280446380 886629842 71912504 436766027 322302443 471252357 870224774 935795703 795399645 963204380 623090712 757004637 462372146 808527300 263863865 909048563 645402987 839732374 71618193 823033290 694858109 980796744 447881090 994309196 43060312 391778670 656603795 794109155 398463561 698723173 916852733 987615601 966246570 996251430 137805736 447678499 536629622 883272882 372911001 908252127 554627949 915646869 122157649 630587156 676291828 848792691 131820469 343068790 58680641 405842332 172342257 460936616 469186018 808434796 131654524 366466461 849553452 917219281 528125297 633539494 538224754 657189942 87660001 328924387 700973920 997711405 160196270 589617662 525442414 971024800 877788894 980781671 572793711 850140892 496579641 836330932 79992124 144128198 480006422 726885424 884146505 888104726 119961235 420767395 652521648 895583405 710971735 737127867 950268100 993461584 300434045 394492019 440071731 962382973 925157429 975843284 576086379 686098337 252816808 442730784 672574878 696525864 612125777 759248825 891729120 993996612 328686899 882003476 26522642 303057948 471549523 867629735 532438809 543427471 574839605 648812847 351431233 608057654 958891510 964553438 920195609 977887537 683602101 871009810 388044287 735232212 852733594 910099708 134616915 974920109 765627864 937399446 542810067 955304178 671209004 823129932 792879837 797927921 319701872 501348766 171198698 464331895 626625553 971193770 320464860 469113855 61824465 700120601 480356424 499287251 246950331 952590658 738214304 828879341 708707702 733188789 220180645 690030484 102780244 258270082 44884152 749173318 592910304 684257910 652361198 826560757 265202927 599494634 116418383 770907550 953401693 978165657 341862041 871387215 283152656 340485353 845740674 946441456 137580981 138002894 599171278 997858129 302927683 523725146 344642537 487248932 218156899 231158759 311086100 571108163 335329650 529274461 300969286 723593209 585715678 613168946 806423092 905137559 449349137 599619683 478750591 944886090 964310789 986017308 543568966 979112718 237851912 749591273 435691729 931186808 564494110 691961044 580801213 819633747 619741728 808657135 897548149 942113840 956369857 999217312 152555268 501695592 401414361 926954847 664953473 939366249 376380026 963606989 989007529 994917056 982731656 984469637 760972597 794063167 504155449 742682116 195728578 899305334 793478855 915082511 209667615 356853569 523037994 951785131 822731855 947819700 181687853 723607589 125106353 624167043 560221357 785564409 697083503 862567258 362943110 446527582 497443584 696948308 423952084 844692527 467864168 957896882 151237241 992976807 181279557 302171133 133215761 818027218 3187768 950226914 894432610 962187922 77099326 182782001 176735100 656629174 820586761 966971334 586684899 949020035 440688123 713142756 169853148 538597614 63001185 586917737 854522933 976775918 387992319 864663600 803202779 932192820 23003791 637328995 335079237 967130670 169518496 569399035 603662371 782648582 673756803 744842639 584022056 992871760 909031957 994895777 315840027 919556452 915765312 972469820 555030801 805618445 951932569 963372073 21696814 291719502 278080798 944635887 874524282 978655277 687950009 896323403 46036591 398229448 184144668 924178369 400162641 856427841 70330445 993894827 615826772 708925470 663462767 978235348 9270158 362607112 968941589 982813293 968091438 992152141 800813517 971068712 710868142 969035880 671808117 968927542 356858681 412116887 337895364 523167734 541254229 726345106 239512647 777626235 796702968 936688245 595541944 888979118 754136249 975176084 386968320 581596119 922645407 963355311 902515043 917936337 647308801 672944767 542675634 626507920 848830185 879031579 934208959 945783196 710024947 738748056 133833819 695704497 533310830 981725241 354774177 768117817 264307636 552671496 464968127 884405259 471302438 849538587 804882911 917406015 290564014 320988555 187649671 587471044 422591378 513241116 484610070 491270585 712953915 897859358 722045878 899214163 47379002 213204172 622991620 692456003 477494350 525685773 401254984 679657625 333420112 736067122 53371618 258032655 753289961 796935508 412366872 487294279 372983792 482711132 598434412 610541361 917836215 966664270 677007766 932090786 933921405 949817865 7978176 165352795 746525289 841364621 977908181 996852410 904939954 910807401 68370867 957639466 136833216 313070543 12138361 623150114 56593167 897446593 751909412 983111184 7173557 405697339 98446958 211812139 149692936 380334781 329481395 777755276 80123543 729004942 165570892 847714996 305289371 507132412 900943766 956369556 331295567 363795640 230932233 933703294 970083492 980223429 858100027 972933110 200123331 586753906 313829523 660382679 201549508 780400395 485184930 644482018 455682700 959770160 182083940 613700374 992524234 993505030 813886697 954341746 475911229 485063589 481012648 828244238 875078782 919811879 669531355 830100630 239009240 716505388 343908403 706876257 33745841 419902524 810857264 827692103 869458393 932334781 882791856 901641404 395975909 927394685 91149547 613081628 688683373 861635990 782856742 829984752 862207651 952027573 374397111 585331269 66040101 181776042 366917758 413503811 475743286 542961808 698338734 776405960 543721716 928486018 330887033 894369875 328078137 837907195 118047779 894476846 369966813 572316795 741567148 746749058 653634013 738269698 180939878 387187358 400710571 737988248 278329126 751109218 644956712 929352724 52328046 738631111 251955032 889771784 372245870 782035727 588479840 883943979 185424238 771410717 814108575 968996386 890386394 936997162 951246647 977918501 498425080 726630316 568254445 822600597 631192958 751272441 111537337 729934019 866505154 907619497 49870933 417258715 984318380 987896556 203362422 692726140 656403766 736498057 727799922 850148028 869021211 909378871 980149577 989687500 650092973 973065946 367681009 727303922 708070389 894778416 128424731 482864712 799557595 985398331 129377746 724048636 527159506 629707819 49224604 437961911 184482054 627021697 761512557 968646366 577808739 889563846 171238846 417156390 624405037 661629108 608678098 976762535 602232804 790706045 258698335 624420397 360732880 690264857 476507405 768345747 566856222 874445120 500208199 709245379 336908868 455780319 26494652 797830724 138248863 993981736 802875167 999626810 633461693 974796918 598130747 744835227 641565507 700218930 936768161 992949185 753165688 844388207 942030216 994496156 438677456 443752535 855363278 934447685 664196928 733198584 194106508 766355932 658434104 901954699 154634551 330600164 47687956 715382572 632160023 739043421 95442987 539044362 825273808 841707127 972194248 994835875 118026677 848629481 484676946 719047797 84450503 441167114 821643969 933585082 171563089 801025342 493571699 968907795 496086158 664358788 862952701 991607765 248059912 249892420 406175934 443196035 869512713 962326962 319035300 887427994 690946370 835805500 518994793 548085344 168846209 320189460 568110598 762965192 244790582 972652446 517054540 699275026 657773959 977818202 591846672 595096760 980781546 997861678 259900729 600006758 34954703 923354650 112355894 802286727 791562282 855864537 229772517 251970602 496781019 850866238 686048335 783567430 455305029 892692282 438686447 919825558 437301850 524776882 848111067 923067072 222688106 636280108 116948286 764198908 144553103 685915060 3790192 701459042 397516632 874703341 13056607 829507856 521484780 874025629 742849145 747234142 823163181 864363073 368243576 706775139 810798872 938459069 809115485 900660600 134951448 894485288 372300852 537340674 62923406 301244318 330319720 881980843 49926043 590709511 265633916 413671916 421875941 430759725 767271265 770975525 190979739 437503509 682776632 963871077 254408303 789035331 700556237 700580556 410393015 914642387 956405125 961341433 681414430 900292444 218160673 224009549 348716091 586520246 554597502 639464001 85134130 371319622 145720038 179510641 306266698 452225677 367129312 399288608 119499344 177294023 994718731 995683104 866612950 989742425 933365588 987529927 231685815 345089921 357298529 429727200 656730617 731662985 419509442 678392791 632298515 907895651 608623157 897732542 289238127 890965222 119955690 604141970 522116811 972221734 93771636 925077388 992181126 996683508 805738177 893579345 554447434 971224239 422276345 445272710 679094771 902717751 607234222 901830450 670816713 697599560 409904500 879125527 412014130 574891625 250970101 804446345 852069158 938540704 852771555 915721227 962873143 963381465 205723171 668095054 565448615 973859383 793335732 849517588 675761908 886183891 448785664 666458777 368563965 666800810 852926483 894188005 623029737 660376684 853713963 925886968 270077381 298615412 66875681 437227640 552045968 697122892 337187650 924915287 118973309 361686386 1596952 211621205 371459241 593162455 397774 232596762 256815682 326059897 50843869 931144175 950474419 954573961 757504580 780803831 660827765 782437375 878791473 891755640 340757499 738352420 979799891 984027410 855929124 866784176 728585553 910986101 245271822 443924986 174870587 582401859 97957950 888803335 952220732 998736224 18360472 515801092 885419875 921097209 74137203 741572670 116345833 867416216 513831288 754975889 240195127 731978308 283398334 916644234 638429218 754759257 508929573 567306699 508518260 943122972 811321731 920425315 442577739 991059832 731291731 892434256 669356031 806922063 873944857 953174825 578293111 627616045 106232551 503725806 781884541 843837908 578092950 764071448 575856340 633710647 254172037 879529727 860150758 981786884 517297060 795725665 845364435 962995411 274521735 332943569 408014752 696206106 664615443 843449405 643701440 655680467 246882150 671335261 927584362 941584975 938134356 971012842 291927800 672205780 423665428 688197458 184211751 426247457 452691727 537374444 237205590 491221059 787683392 896914386 432790273 608068028 493373885 633634565 56298957 218298885 89382648 216019321 370418126 598693962 485235396 770490452 301378338 701638136 42357257 112489817 326627998 532901185 528668661 563408905 220388059 592929884 457854840 494587386 323281998 651208721 467709641 831198509 297952040 900526977 347417229 679968861 622542100 897227710 227023667 997314826 8430917 857818165 316904333 715436088 674105563 874561891 691459709 718113987 267283047 977110900 27709231 700775449 415213660 478120488 410555376 458083559 899820529 941738688 595548033 850203446 98767675 746580685 234869171 937506586 460750862 729714044 133835003 228541681 226640367 767993936 690955808 878003396 320396914 751238854 265488009 590686848 6152031 308086063 280135835 293479315 508841683 770297220 508352614 601352697 256386534 718955508 312053616 363161837 350446715 524957995 369118099 882495418 586744076 866585529 634436575 830743658 106954699 584372452 311190531 702607846 2245637 893863102 129089071 260034620 958472933 991317242 83622822 445278335 251241859 327963876 981740798 998544507 705400571 745296200 190268841 859257044 773318911 777777387 468446713 601580210 283415906 541860500 764181477 862261746 128748162 281788759 828926541 893738473 147193019 779354157 129305127 152162859 55619297 255933964 761446047 882694023 211463874 564891239 635876465 893584598 390541317 694899011 974289476 994868142 551016023 700099093 159551635 323489563 40748480 72891122 791123963 963851944 870399635 877714480 77356942 639225794 293313062 369190244 870173918 937424409 459094942 463808117 253799832 262676430 923273772 978975601 164991783 213506044 687797943 797013238 361606411 624398804 764827827 958395782 682051833 863724888 798143508 891696148 917364832 966724668 154424995 516306808 221624602 221821100 449294642 519433463 414872708 762662139 431678061 527087387 174728691 532481065 836988275 950854634 692020433 894685316 516323006 736958151 58163690 516193457 764763163 959431774 780747532 858343570 447937083 514116632 361270236 927734716 335669609 836715885 865711934 930678165 816383906 980295544 787982052 987050498 323571670 712673990 638072050 875670935 68347552 985153024 868322391 915779724 671363206 941224137 455007175 582134547 709323794 734729657 8322269 407202143 56208317 863078867 492526736 792806577 363013181 986657847 710441016 735378430 230423932 968163958 807523410 854764922 697295800 863445908 952219597 953565725 430623939 851102123 527616552 796481370 621125593 653147804 153126504 817994078 972555224 983027160 443939872 444541688 589939994 728980990 921325756 934490134 821089725 986054816 414408212 560995275 686336635 890979688 716814175 870972514 100420068 818704052 356572977 728484248 904612604 947279688 628231971 633123108 573571058 703594743 661187905 971967128 312723252 480362786 25067457 216285429 694558003 928778618 395289767 510988526 98759494 328297708 531438950 741204464 802690726 906664488 799349713 948730394 285442439 922254331 421483887 760750523 455823971 781590928 780494431 904611886 386991669 620917474 237184883 812291317 875433442 959283303 980573774 987119787 404128569 854447050 823096496 907967703 807800151 948755756 633756146 880933479 937833666 941948804 329286395 519469144 408398591 953433915 494076906 998708470 867817918 910630523 160054671 616536165 867394111 973712736 936965148 974163522 854293804 905531552 758400689 962564120 996758738 997904000 177131890 606330010 494385268 958887336 296422138 694297308 358569569 718077502 899289443 930146528 897825087 930799774 780495402 881962826 959900230 982536824 423875446 479996151 964253685 975267172 923043074 928254717 137772115 594158291 303705326 801012242 335138662 436740142 839154699 895219003 183410741 549289777 304986072 581472364 178850572 978357519 735413752 997638320 626786436 800136215 289737712 586415220 820709866 963135460 142359890 692554914 161144566 451999132 60026708 212123044 215286605 896720006 236753342 453300627 681153203 959488359 501698553 949024691 639161412 925158497 37111586 664237086 468118040 498650880 70776020 166623293 187251817 698170999 257305965 776321918 337133143 792819566 766555371 810975753 152192242 957799888 940769101 943330314 384532229 739063326 430151394 834467773 72185089 733309339 763130854 919876375 596545610 647127766 863553116 983975386 220585555 563077387 993439612 999137924 165955743 271452737 518666187 927338355 429768285 452323227 566927397 701030842 837952833 993987779 836195686 900673227 860601982 870732135 862209829 969692019 580094333 596125069 377499678 655869912 624468758 806431604 507788359 801554441 555771845 944997092 262978399 884973200 258358292 613240940 322610933 580712310 519188841 834056599 559052872 757447945 314549223 551815002 147562630 380579784 481739894 518252386 537209321 918801322 154418881 729206187 274431343 951461288 322674038 517230933 888223456 970774398 655311981 970546763 102684219 940914097 491210357 598260452 24386307 384524751 637388965 961759978 956637059 985937604 471644264 686781535 976906676 984114982 869550193 931517500 240986351 697571920 190123287 411166317 426144986 478094133 893108375 912369356 581654155 701548389 407333920 919340601 385791967 531098888 179415119 619989807 506588991 721341783 101371071 121218584 101621132 176436093 440080375 522905883 688555844 891677795 847104730 920366495 444292747 744186255 413497133 863937558 684889582 766813285 645220541 826221252 672838004 953170928 672725628 990589038 899186571 994135571 710905329 967418984 867140055 935245469 372939703 613093169 486711599 911699499 943862222 979734351 428572769 488292035 378008201 792051248 564148197 861720375 750444875 786299172 690603893 834214540 46857299 945976356 708789808 894161687 949446887 962536683 838998947 991813685 318660088 385244919 926406501 956016447 668736547 802651005 525607090 693405306 209601009 682669222 658287560 840406696 802580505 979681361 674258734 708163949 383846454 724245720 558340114 725741193 403197980 463542100 759332646 916522853 654657760 984452617 876097843 913277258 908574792 919196750 679260411 882670348 975133291 998572094 318986160 549153387 111850710 373955385 641099543 739462031 425442924 649156375 221579684 262926566 915730632 974142703 352332819 404924437 64176696 870389916 849260745 869541523 4804123 479200943 832976310 921769268 761798820 984027626 727451293 879416504 761777394 777409600 602966574 631490321 631754221 831046679 719013357 854354809 665416847 950425271 818334694 999038955 720608796 989494072 397391556 746815248 532063876 826741972 966668199 973825728 889385635 967482450 178210541 407436427 999042912 999143569 999325966 999841792 172684348 717375198 22273621 780743394 234899674 406580401 941472222 950481801 490915347 801586467 444578742 976578260 198363154 370386482 268167593 711609138 716085686 746268707 585332845 729584135 468600803 971883940 532546810 842610540 257818941 413337701 130103229 798638728 448031694 965350269 672772654 762203686 877636171 972892058 613089987 915467688 987546229 993771523 452143614 475463997 824228151 867552164 187609088 843800078 707245925 947185215 814759691 972825040 458029670 716710870 543298721 895844795 963402919 969096026 932189346 948760852 365288007 485260001 575811494 986273688 485129696 940417013 21334462 622421447 696993392 972144576 683571400 930098540 362593861 613670917 652786541 700498170 144955593 979443910 996968174 998434527 394751457 535843486 523014460 688027473 159093402 813928638 328529819 458551436 722592245 965568793 848607727 973927298 39632047 661357757 697129140 847839729 127026082 724749378 310951735 689654871 649291116 653841066 586312319 706458993 61476022 839299997 698005367 889723853 314419643 783751122 795610622 839231387 233555015 345013398 252880275 411757755 993201225 996346981 279311868 406187931 378015087 928693677 491402544 933586709 279531301 794752264 658737489 862026447 542449991 553334154 764580554 950611573 24334928 952165518 39879156 525315938 746613236 949594234 370394811 881241684 644763655 968066840 345751609 659555396 203415177 658940114 449533829 553947281 753099420 767389751 144165324 382252250 540604869 767681557 162996010 749182539 239022491 311922930 487981381 937183667 638737890 709601799 747269780 865915010 123210235 132968763 716818526 762182311 230728434 434445037 640716374 757202701 732338266 921876668 465422848 694983622 753561241 999873421 396880384 916905265 893742020 951166256 4461871 34187493 200339678 455899743 460125723 493551036 421552599 865345457 345943533 522447408 163227298 304285633 650086279 674765173 686246467 857926232 690485143 819658699 283370664 487861016 281298617 390630971 758398302 788885628 313636289 586221720 977252097 982801706 446126589 656144387 593814264 599119038 815299352 841360348 987526418 996781651 363339676 888605339 840613389 928844131 158551307 720039680 538033874 645385006 177470988 489661249 999334384 999622789 180758848 582080333 741615744 755684454 340437590 551131428 365245949 816613152 268606328 277340237 760902798 899556311 746247754 996176565 846535507 867656659 478085787 512025690 585831470 954912565 453515249 501013577 758394351 904677127 120734474 610379354 401096711 804494279 200210306 532710823 777110398 842845031 120172043 851002468 30937195 366413821 983418329 986904100 442528552 967718531 43415443 952685685 509489087 868851390 998595270 998649101 31846945 530762719 872611992 913749674 981498137 987561902 290113681 786034983 182824610 673846481 866120277 947206391 197769562 485493226 836058711 855108997 605709499 920194884 285619360 885460777 384245239 529759977 505901706 821639331 952014792 994767147 844665905 844865411 928829440 965105687 450706991 781889511 677720935 746113803 325146384 831597805 865977962 868278026 878420969 892897609 18988438 194555730 550512628 561374076 134806710 293788236 977739737 990705110 810758733 863063413 737144223 840254133 678054779 998915072 31672918 442359451 903284452 996172537 52019016 311837680 329852231 505329315 614058527 960941700 899381224 980927828 614073812 745818856 101870154 634453943 80777614 242638457 470168658 999695632 515701692 953656787 224189212 310127506 171263654 654783730 581144402 609929242 63250103 858989997 598618187 984876708 200818906 255144083 779869188 976977930 200219825 236826842 257217205 908199214 973132699 988231093 433597146 981617380 204396929 547568845 564724813 648393511 49373239 138763685 216485968 331167094 688280347 972090450 419206947 579656459 69347408 643633937 678931068 985772649 162387627 575228582 558018347 882587622 426387710 817407155 46776515 126908415 23363624 377758971 863438492 953770716 444394011 876307670 493852199 678967059 407731877 479265581 6029554 414292216 697977392 947496524 457846529 982762278 9543660 117164655 674752126 699535477 207247616 538343600 777147071 915211855 813749329 970204402 520745130 963435916 443435909 936945300 745853885 852104871 520269516 817978399 477777650 629540099 490331151 886474549 34822227 797459471 874528154 983004857 172334569 959410892 626115986 788688941 498538040 722513839 380036166 674854064 17207334 223418375 411649862 643651141 556954576 898501665 732001594 831157866 541661286 636640148 809646970 875128840 246706820 295265935 934200449 959874992 665493039 956331623 511975212 637258632 883043154 888375440 436902142 868491341 245082839 616971123 853127418 895820467 689210130 899731012 445155503 691485404 398449518 433504489 274934571 312933169 744481296 765156418 526618877 974217108 836873509 852594379 123959905 803303289 467115517 818121183 484632354 891283512 828085417 918064977 52441450 994181302 921199954 983239792 996145557 998041993 468426969 766827991 246698685 520435283 261397250 602684191 612053078 789737564 68610135 168394649 272124923 873586936 104975277 386158450 803056789 927996286 639941914 986027855 771786949 839921671 970498462 999199531 504779358 581867918 690800681 717434609 836182673 951593973 397050983 497735262 201909338 711026953 616281052 963692404 642864354 676053303 500827977 594384571 613636844 647328766 293289297 873219793 74487705 878904806 874028391 965716844 787512199 803732847 6031170 555806894 14596995 465402596 369809480 905485523 209068555 241891723 459815133 507420333 894054697 935142612 13695609 196548004 435324278 890062842 28815466 894223406 855258602 966727613 167644302 399384474 32107442 320378336 239078983 726895354 348309876 928317382 994031206 999189077 187062566 587673195 880167288 924350018 767320883 835173597 20323451 352845257 460350956 515483748 288829655 475954120 238758302 840132568 188673760 974129942 779055326 888334651 308677481 821069454 178659715 280757029 221552677 243903660 554138074 702049214 278130751 614450217 808575670 979905423 891663742 974303245 589453859 704938738 702993626 736216933 800416239 913309659 640589022 780851574 463492462 530031799 122339104 584333698 973212702 978203235 159699539 722738051 777061584 839624529 330533557 655212865 822203826 842069464 125410825 167646066 962365475 974976811 469983814 660251416 710836033 740106590 945855857 965311268 103468225 811186777 978118576 997671399 755524970 808121859 36280149 449381389 107646643 781720907 235545502 972032556 812391200 845631709 136316588 463217713 770923486 825341073 558643916 726571630 906244232 997581932 268018070 978242376 757737935 854502505 480958581 865738579 938359066 986299661 543035383 793298795 680574267 892954352 771765574 806352536 186851307 293088270 915357876 943052080 516455769 679856160 783039200 829717652 141468247 583840779 727772432 737931264 895884794 914416795 657649228 797751871 312494364 362114147 515260981 599430461 843115722 850670931 266889258 339241979 747135572 825941925 732992947 809386762 286308777 932884294 991764852 993080652 274808929 522310304 303262288 761006586 923343450 998693203 121881046 231790379 227544562 959988362 590654013 824430379 621016051 622418379 123948990 155355597 348365619 900698971 703373529 851670318 465301065 684036064 538218735 824383674 101283500 540413282 366055351 721227302 677469358 687430675 446856637 577515130 888414738 961479526 769841063 818713952 446324081 784474278 906673874 985586199 231567277 573696500 814885244 996673498 945563648 977903671 549913332 712685524 552321322 617045082 678483318 683471975 319701316 325600832 654621036 993000687 445505307 981292765 608251370 753905229 2956599 993944644 901530183 938853608 681847013 767233076 715020708 740179920 956773191 972999754 993496083 999682818 756536586 777896890 710606792 930124502 208932710 516026968 161042503 825003795 136984056 377998195 101997778 507892508 420692160 843250949 664112057 696965955 122029501 807947631 13694383 296276960 163979701 418105811 410783744 470564259 845708800 865491888 814730925 958729493 744447741 945974312 624702233 833524508 297758897 623622810 28654909 581776166 722600344 880318537 322395179 973134456 543341269 619395438 58387565 507738866 362708153 841655184 682738194 827299059 290781195 689447210 949441845 982231130 271280097 759677190 586290959 960299204 906282828 971877427 393400061 557604126 951845535 963015980 683887563 912484604 159712708 817192074 987060815 995998316 345865637 563444462 634385662 778133825 868592451 917522665 372849037 504724332 402847331 924914286 86879125 444565563 852544311 934672252 795130009 909212283 142498687 318956991 979089262 979800068 736543224 990634168 208332543 706499315 493636409 662300965 742482605 875910626 38364536 80418178 578264054 705022170 967385207 995492781 346759782 400302507 295767110 837069661 340946912 468486647 213290386 950304848 383581950 648694608 779913603 903311846 911537176 957088246 768573095 882667482 610815053 613148046 935597776 975067838 524367743 634605386 510297618 843862394 950414202 984714324 718800640 917484727 48609600 979488406 165771850 491417128 397139590 708870521 285636838 832425039 639210516 879204770 27602660 737698114 46204599 501702185 94185409 816742251 932712612 933778034 401535929 814411756 34673568 150851853 741260529 941502883 865740356 991843424 222630075 230498659 473770909 897372397 451361388 589413159 691358500 766539365 203319429 526871093 531079089 618045227 501124037 529845989 843032307 965385090 46135055 627126017 835870064 960736361 31051561 923993119 400934288 791310963 150534610 484867153 350886448 816661251 400087556 642418205 647377449 662748943 939005352 952744329 981676986 988516753 961225033 961813065 901121082 975243546 618473833 647357050 126251936 997709607 988025990 990252535 890455321 972915622 72768617 556406628 800484251 989403798 223083458 714638006 168378508 855084106 923146598 931848530 3222464 630622738 114144163 677704220 824682250 841059238 354220918 956083621 916817540 980846238 298853522 320337518 387320558 693361433 471738459 655996194 626516315 969954637 995256904 995523337 424382854 734431702 459291307 864500927 787842664 990920555 850574143 998292400 932118083 975481234 184846344 646696270 922398017 974677955 886392634 995375240 24893258 275720153 33756313 756613723 171000711 810205591 427473361 695534641 317741489 857193259 213425537 268851896 504577745 751692291 234334025 443364838 173945476 984274817 746131782 948858239 994910505 996341555 864552186 976508398 41100730 550863311 565072935 932150546 505496152 668592884 280210015 396917437 633887495 636433175 35349447 484570367 41315232 242589410 592522003 948553322 705724463 783676791 13036882 492154301 69308657 517726381 225516914 758820615 323988976 967757574 961062852 992466045 216957295 724513331 812865081 942861823 700734728 742252673 739267456 745473470 161982580 253327438 913783275 974596662 451758390 671395023 727023894 997707112 340226643 530900386 47274355 694821723 359016710 895957678 981048947 981632267 788554459 918797870 532337994 686612596 714591383 967922917 769845458 987736381 664405076 989494960 585518458 915618107 899597834 965455376 742072258 886541501 386930881 467084126 897552143 974292061 314835201 339998612 720946471 976455747 237775556 342684038 238106107 939111514 685941500 748261442 649329913 913426026 416281813 786035556 625152328 627209250 603120111 831770435 485780139 531493995 954032891 965312825 631024567 647985113 699949557 857819484 255021029 549485075 248757008 845878618 140028037 655627958 679148293 811392928 641205078 898787544 746769837 831200833 82718423 791341096 39804158 117592468 301634659 545571235 503905758 755516986 741146131 798704693 448776565 564301720 951026493 978877162 875800695 906738197 192001385 790548587 567494860 906408907 247067213 861367938 194899684 539387263 670630645 826447285 57660191 676947354 449911025 713599637 162789947 826887603 646033267 786101132 65221342 714753828 295440188 773985959 52458144 539973165 155058415 786004535 993743781 996866592 388968822 650433700 660160058 756040028 16351127 165478490 721130899 877594794 917120316 936177435 180021953 717656754 611415314 781791769 566220974 733287664 407808349 958281026 628764511 705884125 540665473 816510333 731490017 996505559 879066215 966951513 690699841 907640845 543677732 904386092 14258307 140368463 780523278 877560795 706765484 717655380 896822553 938600630 979454697 986906038 598511812 871724987 219783897 992665156 816828423 949184142 945930 422493751 416317411 924534732 415167876 482885038 242518439 586481789 78316853 387765740 989173961 996857517 427553205 710766651 424884006 991680966 726149606 798100137 277127661 851993511 334817628 953980243 457012497 755665794 53052082 884148526 729968577 752595614 283852965 424675063 577755726 646642865 791331725 921999465 26447676 599803432 794186671 809305984 416788803 706808151 562332613 981398611 737523283 822041980 453714230 984984616 414055928 964287527 901736470 974393214 491374792 768051616 578345186 970337417 810602113 919865445 487475160 696733191 352124610 446880273 642114705 680075592 972087836 981072108 717859631 934364601 312375459 498646522 667234272 751268653 346984945 879696451 685502383 768395750 725769604 915606670 54988995 422936710 394196689 888462933 54322358 152584202 170871320 711897160 763185458 926487536 102614801 340168448 163186828 508747457 234929109 270036576 401258776 596371392 762346038 956739336 716500280 864609277 411225053 966571485 876308569 876324944 377472736 779863320 532660280 694589321 727226904 876379637 364186002 735200293 790493374 895949298 394951745 719804012 636257263 797657884 241102410 437322389 372063954 735785849 111374323 886684213 784906767 863617182 868136310 951451887 886798966 975485084 862691427 901553479 284526532 506173140 126007900 249462447 836908600 913777668 550916246 827716673 538145129 680740898 706397739 936218113 97629423 649566046 723706970 945845068 637320923 660609527 495804488 869640166 475781623 634406514 26044199 744076887 256507700 402868125 172220560 713767716 800310700 998102620 784754788 917087410 924605720 970715241 843907740 942483913 890652250 963226190 336486890 883623374 807888273 900728838 27078895 826189747 936123559 968959512 540980551 882228339 629114131 782209680 651393408 775424211 449316113 527253278 401676082 433265634 319319228 521976221 491962748 669237640 284572498 707131286 573851331 724514448 709594700 881678896 333489500 363079352 750417434 832081112 785738352 915059719 201153810 877534371 303295816 406636704 181918633 277453138 62333930 618785188 321351855 859676803 262731955 932211371 127532363 793093697 198348395 289177642 173558168 766550150 432449364 866189298 101883194 960525325 276540250 910058665 665270677 709281260 922601759 993040182 397373542 550159888 36506529 794456040 384120309 549749907 828744838 837211005 921469290 972911576 992079471 992800453 198150373 681774288 926475469 968030855 243698686 953075825 143967683 687762340 364506924 620176239 332961070 591334770 979960957 988467091 945398082 950513061 696983660 919708626 619520523 865444112 776514398 933139169 769385382 770125121 250840646 280162193 871999844 995073189 5786282 629880158 902606577 947159337 977367912 999379389 374003825 762783169 49446371 998054930 696868765 857037716 760993687 879267677 285310646 793476804 356983540 940109283 433648508 899043080 626769223 654629137 212135497 554136398 798999129 824417748 271573667 995964796 609593572 999224882 230650658 767989758 881654112 960004060 481031175 541743800 578999914 630255271 249762806 308198902 32501650 106447695 243433139 587813397 349236968 791465643 11448529 127610187 232429403 406344484 937572708 992679645 538894361 823305179 614077433 979160345 869086600 932963427 861780042 955890397 859328616 993610355 520038732 650862190 653627481 913554097 214662509 808565212 849322994 934548830 625848193 719171069 856603009 914763323 134477134 795507351 586402739 931304156 895990133 960947977 484358273 764232820 794585361 975422523 124516310 983855438 987262007 997841693 505853341 653414186 259597074 516792301 207931353 927129199 737564890 876364349 499082807 560382972 813237042 948624919 284366085 616252886 286041131 745365297 843603980 954755093 602490689 765129551 907947810 912567409 638657201 746737850 274108260 785650109 353966287 893653785 285064146 963346052 342005102 895260990 354878960 707907314 166075641 728281263 89604558 914012637 746235008 973111335 672781878 681337914 827614059 923748442 486279342 884795687 984844917 991207366 734065814 933862798 764990416 867040755 932313201 967760060 52815025 488854346 326101300 837466376 881644169 952351940 634062408 747378554 664490163 798122302 971201184 980447122 610367992 676559694 679054560 969892727 734848108 965209275 294701805 870309183 427828622 475410948 913645439 935811539 538045561 773938084 975397066 998717383 225450402 860930082 806149715 818042549 907864809 942565390 175445184 604730681 59617551 209358316 661118437 845890637 63955423 830488057 442556175 884139294 523289160 843891926 3004011 283136686 694384724 736572131 593237507 647754834 793169065 856050414 968225565 989202414 541050817 759351224 177074873 582090902 708382107 897329691 684200487 731833706 551017407 776332791 616398949 709388711 56713920 723003922 269409162 380889296 805579249 857146591 65708429 66164839 239907599 917219194 450843146 704788205 692282224 798517310 214901011 245487766 457967985 688613090 885482190 900369300 330576385 442244248 542074864 790953747 593595458 948791318 177875495 399315946 117843032 801926131 724973115 927710115 756151876 876279937 780095872 901863061 499414714 871981985 494728792 803515674 987366933 999683038 174482833 747516516 513107327 644746381 962458087 975036774 96410713 197955123 884488430 980552092 512302369 522745757 186581186 701626659 111788996 818703474 575270028 828417079 754163212 936642181 387994584 824365896 391770976 902140395 760310888 814029890 782287199 959781606 246471386 951722867 986745999 989762592 461763219 712391235 641129933 983174014 747147081 784330223 997576984 998206133 606147046 923519571 801068718 933752727 793843144 897540709 122741280 931704487 41126871 351462810 662951105 758847972 82906908 778802015 909557406 924944756 420863519 597266166 481089903 650827879 942257372 953059498 908449901 927510501 618599733 876757909 838047761 957957756 167780825 628781721 482502111 800133645 364835159 520809088 751196066 858866020 128013974 326238538 120019914 473565117 968355428 997793017 564924663 938092759 963374216 999629534 71681997 161227432 420894820 561823053 255603054 910407389 323894613 955409587 912496467 960884693 307268508 964129421 87634008 598172442 234118371 728413453 124058428 789776270 828377898 846112789 484197331 766342098 531807076 614071453 615188196 873934664 682663647 749251902 325902890 695127152 207460260 882624290 840613113 957948158 395929995 800450100 181901909 615513266 795909524 885931532 517780815 878451953 793680687 843878170 686935211 957068774 692780200 945882206 826169530 889057746 341458454 399799844 684139330 931875694 23603148 673696931 96228003 865078434 317007163 551388962 780550461 826688183 968946662 988778628 512644167 866699737 925696171 957018090 112805703 386652560 142997658 398977506 85982969 560363412 699386728 782833853 188288797 374534024 361807640 413849193 814362110 912049353 214483425 828985538 523496737 895772922 220421533 645437789 856043210 999352925 888873589 945005324 815273532 975479859 436593656 612693735 114907617 654237462 294133547 444626046 208861685 628106613 233826091 460612212 891245601 986056031 219495453 441349547 611794638 713097987 589949308 861635139 571905277 580118827 343290031 675259149 767897488 947654817 100178733 872673737 865331834 999381042 68610266 552761630 817549021 953140002 918769424 980118511 221956504 695023978 753504536 974541246 363602644 781812943 103156970 286232510 820816358 987232512 811307911 888989989 389615508 777743073 791666343 953920342 749151624 906356161 556473175 934253499 458154958 603389476 995357257 998214527 773388903 884354995 265550159 876441842 208430291 368752836 124669265 665727570 410888945 669184157 215192841 625572729 760225003 830507593 636172874 947239291 602205323 735536732 907338162 968366676 630253796 966835193 659546264 847987791 891846842 892611830 232530688 986503807 360028021 763061959 467715206 587050213 728459647 947603843 932027143 954707119 54764298 608740362 490036568 688092801 342313492 600787281 334907090 998813428 899504124 968463857 448704748 595819684 244457905 411011197 364586444 703798674 668005189 738013649 483023178 864187010 66265546 552321817 334401328 425902353 629189758 637400152 971601695 986434444 69164882 479201738 19058221 852895548 333100851 386962077 252862000 720349278 58551387 744492526 342981562 781542649 655076939 797670606 80903504 506808825 158551929 697804025 45606996 147743544 671710119 861259432 214258566 278304123 198356596 263265126 868303741 973850869 96001894 324073938 630266423 791140360 100695636 426376470 944231406 984693667 166926690 418689528 536047803 758240985 683483239 901813806 555940751 895183135 638149160 674360004 179227115 997075472 44257681 253216323 750050545 968548632 544161869 794185616 990402001 998361509 152174151 654330080 669926134 798741686 761865398 802676811 483852712 979164926 603140094 637303288 145173846 666618971 745298479 748207422 57086824 225136779 810344755 924753614 195454526 921746400 957527646 973125784 943623102 994174431 316222693 490030652 263745658 817098771 815171900 941265378 528935332 613803666 165972156 192934543 431908795 743570404 84903322 248806888 806939188 957109666 941569154 941724093 110941511 756484987 447715558 523603283 453416950 703302364 922795227 998043584 860812459 974843628 379460909 776652860 668732425 956312318 62648255 905358426 138907575 459376551 194586247 255252145 774861981 917759102 989514587 993687471 124513500 939880619 682567379 712793820 654321119 722560197 905200023 976225984 782105549 856573402 559941714 839500595 972077211 973314382 970501185 988029652 62549323 680000200 199099138 216328282 524059714 890538708 644490542 698241324 405570428 573619979 193462451 458430390 755035400 901984390 875455331 926853618 324048388 830523150 613847957 837792088 544259799 628685438 796538064 864924325 848113769 964274232 767943540 848931437 629920278 755947436 573824590 706052584 347037033 420793198 850272162 868676745 341100429 545406596 94838721 133600957 847579722 882306987 662759198 759188554 692846328 865371706 958499975 978821477 707075723 785625364 9155184 693231868 424075042 995046437 154824064 258889754 521948930 640768096 721807496 971854834 211343998 993752088 996305426 997443055 788097339 823538867 329202128 610294468 76779287 698584658 436151130 958577823 443662346 849163959 621346349 659080858 537637051 939984772 608533483 682286823 373047828 398201477 430628969 893788326 648689490 891021909 677348486 812972243 559446899 789103820 858874597 968214258 362913433 778726243 150432352 520811988 422980743 432758465 472693881 496720062 782552822 845585369 728002238 828081765 55574678 743471992 938432018 974202069 686497800 832971160 512227217 630460396 37212405 584148723 761228255 814489360 745370837 967199240 723030090 726297553 195602367 349566988 271603188 727790518 774800168 833304867 936366693 970198732 28845132 917841998 174876272 692847110 221429933 707985125 408018980 940450574 774648067 856476133 833747588 937571964 86846407 541346819 269823390 453099786 158404363 279630669 407314671 745403265 366515910 904868179 970252683 991575448 920228019 938910431 604689128 793895531 256145138 434256558 159723618 718446231 197012226 587349998 701724853 778949078 9456548 722599661 83750058 328788153 230366123 780918863 347137811 525731013 53691259 131100783 845881524 908229327 297307113 496791656 629774104 721588818 886324358 964579041 826171251 879449666 903796555 932515601 888679963 932820124 190166101 797884874 221267125 277750307 682884596 861143668 123579252 990567831 888488589 972528115 817672452 910490143 17047827 803182131 529263821 687240973 84852108 117402082 981139098 993553435 58339469 974473569 396363721 910110132 897954796 972477234 609105788 767210112 469042039 617256934 535032894 910247495 97761055 678837697 802494779 930303660 560767555 711985165 259169127 705801323 961158501 965575077 430647600 493048794 625003401 992244388 889194581 966549872 385615696 576354777 350598117 737929246 200870657 968860677 989357291 993430896 633418269 800440590 427809782 889625288 275860291 782676966 575669637 600331945 292065752 947111662 817045518 905132303 789385189 974598240 701093351 795402177 671115729 890738974 130071021 141316097 667805664 927492423 829892757 843660090 684588513 759966214 754300827 838587400 310933062 797768608 826088275 950969548 4889059 965041693 554715300 974534996 163405454 551097322 792539965 954322813 841938149 981233377 467261135 618567724 904904569 935564638 693298326 998984579 423606854 695589057 582041996 858769161 491451743 776013208 461984067 531426185 524302905 897627848 491492488 996886945 919926348 952832825 492489344 642858821 313814748 438931625 907495390 998935396 82010278 557835866 335963267 487589879 818768456 896859689 908086808 989820530 675769271 862470414 217981823 987470681 579196695 616405663 373198338 701820499 622043963 925470021 828746898 906723891 326642534 836848687 803700667 994540387 841852472 941832762 630128670 748874561 566233658 861594253 983576852 994625342 688453382 696910683 782143075 926079597 66109540 331362048 792183931 906418757 849248900 995357067 383052793 968687766 922985242 928914770 331814756 408078655 519908163 733876958 153325597 434179960 218463433 508155737 669671149 717474864 43003323 589750681 762965228 914411905 613539264 885963893 100901640 522773333 422406934 915661491 365033056 813114720 390269598 933655348 29175525 963664960 850570582 854821429 191259649 904952218 226351358 821595755 267966666 589263485 195841820 203127231 526812024 949412108 416786757 810135775 373712467 550778259 185174942 779233389 643653130 887031059 723396380 929664542 719536463 805203030 488439058 505745837 253327425 318743478 788884506 986563036 124665186 553085684 659436464 681303970 157795449 845232880 994084778 995427900 986616141 998306497 742360713 744852821 419900843 578912897 498279538 761742213 127777541 314659939 417284020 465855166 217036210 381704164 401952414 866213216 912245006 938933402 692205298 833360368 992071286 994083650 54252624 303593310 631716295 750906593 226520294 619177492 275170958 851455069 103431507 550321543 896069556 934658079 182618433 758268089 242199644 688413289 300840434 756338388 562586419 827026642 540065452 576186312 659843242 912352130 348419489 476166112 989825901 999947990 837613378 960417610 183996173 281789396 437757732 890103384 512084575 556201053 614455181 924812449 599018151 628056819 782633529 790085529 920941790 953731187 934318972 961164465 290335479 758876431 67323574 247424273 651573233 705528828 148357678 998785069 475953672 750492652 501863985 982844163 222375105 734393106 336970299 624583521 522159905 832297273 646673152 720244666 544217806 737737387 25583377 545879764 153480066 881707582 629194343 772968024 207272686 301252996 907676614 943771942 222313273 285808065 409469449 883090234 25430227 427827541 895852948 974671826 968401916 992904458 517690425 821793536 547923303 965468475 231782414 262094149 947504810 953004784 261944550 317237487 781955037 940449344 174167462 503666816 224331253 608653361 809836577 988233222 750336447 846872700 552862953 844439572 982236393 986504973 528166619 528835292 385696418 858359758 894999999 963966612 213509610 604056388 469835110 573520805 279165284 738463286 175435774 731157185 20588787 250948569 13084496 661009262 855289949 862876351 999061234 999067216 324018813 363388253 119435994 545171171 796261838 979299317 353920475 930724312 454656396 867270264 738897139 977196705 245862465 912156661 173265752 895339194 970888800 989377823 390735751 417839418 806665571 869587895 938881881 960117572 412240632 479893162 144254129 335235832 601529433 987054598 997667480 997890299 343636651 891136314 934213236 999302383 43719254 857745726 2188221 414652166 856532420 931245099 834087139 994616574 294315478 472963702 606071054 967740771 866595472 943865325 941936191 972954325 403002745 563251667 626511520 952886972 874596200 910623086 663376547 727075811 709443007 722732139 748638474 969243923 584100284 966533249 833265160 901608747 506267116 578140622 567956282 754810125 899523457 927204002 579571541 966037455 150648225 714847523 736969812 927747519 353627737 477838623 980977309 998564360 536413914 684816509 696805573 880677507 292307744 957375110 533863105 641678646 893300510 969680707 388426672 746492147 516426836 721689756 174923453 252398306 253194916 567757424 949725781 964931035 627736078 922864715 820536288 896518083 468812134 697527573 481022699 559173246 952180705 997525280 111328313 698159779 57224417 690108477 142070547 727591738 289803476 962985030 713012255 962272876 395231327 696597101 859655604 939020963 207159811 382619418 763913532 909462171 155042508 280396026 15866620 533543114 267860571 872849488 940362998 954980248 869336882 990485236 451152748 637572436 345496177 491452399 845545749 965377811 446299052 673959752 26948467 30292189 889974501 939832417 618854405 992322809 584922690 857675591 85824451 666279420 682289533 705859208 936053212 995285757 369960355 814805569 793372390 975303813 489586952 585836406 745858875 780110611 735279184 848924997 74929135 233185166 204147733 850218274 33746440 705245384 538899824 815025537 221484153 248836152 530200717 795693225 767661254 821081761 761119628 815336210 403040514 555203991 802739046 933655858 318213581 649236477 851589337 932680536 212278936 969901941 259644204 675227762 205084725 699941092 257693795 971428610 411575839 578450646 916566941 956817894 646113933 817021028 705813519 781502430 418653386 687925374 3604185 578480329 464796800 807379719 731472317 882262375 510508780 598861794 367713284 833233003 705719975 836155210 174274241 565028023 135925663 497499450 618975493 755362074 159851341 812278734 555621858 825609088 242130640 370111198 822701603 916940864 319213057 546612013 859116326 994736289 438257038 627245143 157838716 321523645 380777016 786039140 544535274 981517684 150282 545449388 639413404 868468338 460155705 817098985 23821698 688013898 971583998 985366558 520752940 940072730 16329026 725983030 342299362 996565132 560775567 744200041 479248850 964947216 339798815 687093873 519374284 966746426 596689978 873718646 152380457 863804563 556814296 722650302 704809855 946474130 403940682 946671240 458379658 938842786 470119418 900025196 128051088 161230766 799962819 913754222 554222315 738178079 79422893 872844071 918166909 973287969 523102667 563852093 496568710 742895541 359412608 530010820 47899842 344445031 836568908 889142714 556814225 572369360 476255699 765451113 193086779 319074061 381347264 785344576 352168070 825318821 601443040 611695283 243504616 646717314 922930102 955219725 797503855 900104456 462067472 570231271 150667978 824551297 912099560 986712464 370606197 967694601 128167221 819431622 755501620 918642269 428401428 829957359 928331913 969049969 260133982 818577167 881314015 969275242 397425568 611430104 679690439 804898757 240306524 390810624 740924467 800266771 392495867 456860852 466664350 618092087 954096737 960093746 425804014 432434363 61635369 652684932 994868516 998505192 907634093 961989352 217762439 723673600 938026130 939268471 380598898 798974250 158418836 519094317 381299878 382299544 991010203 998526066 578468650 717644012 614097477 723338777 200049902 410684537 342198716 363725180 465656605 880016691 563979222 611452039 963661889 968274941 52813894 617395068 652763867 843777098 78691713 102025741 467799861 742457044 560980273 637881062 542087637 913204109 488451168 967417626 583216677 928069618 122641275 335489617 420428985 518516194 203252529 500014466 221407204 534854204 699070383 923671966 493607659 784098681 953052176 975707721 775863615 978340229 594105552 631753738 454873330 805913375 746145644 748932876 875469891 983661975 761952235 892874269 400977882 503786801 533047117 573824402 559796422 702570820 422733627 563737637 774361698 786859010 170832833 967280175 975751594 991810904 927022758 950614728 350379017 366110627 50310096 860784414 613204114 706824345 810758855 960466475 660142052 777850728 354746002 721478135 852039243 950708337 761433598 892341948 2522616 804821976 407143248 983984536 999786706 999808536 946266712 961690021 904172908 907696823 953317433 999971121 615582978 942797299 159638801 805019767 242947014 349361553 790252494 911368765 707507322 828641432 354133287 909784303 752376260 928310154 509661846 871606255 413981543 951652687 577701961 679892745 295115088 363437648 159482120 269172810 354932644 872904357 126481420 240945369 568618402 636757966 600495852 887890040 740842264 973834135 807221945 941295982 366061791 793710224 364983355 683752991 270705311 707684537 635064036 852419392 314545608 664454948 936651352 959287765 960765764 968727256 402114973 692944112 774800292 941874798 587522502 662576399 950287251 972139698 15498014 841544078 351748674 380002824 122580230 125924194 655896981 859783380 599872864 865230113 297266965 751776815 389161286 430116214 928054359 963121968 231537980 697108867 461402681 476749380 155731206 741133541 573865298 633115320 343676325 971888922 608129300 937484044 982337307 982431424 545615696 700490156 808333511 937164803 432266435 498251748 740032849 771143194 561293142 740348909 847546344 979999166 441341207 903180570 35626504 578894192 443645181 793993472 424818753 582276016 538413537 983723681 686052866 992454098 410526534 541226324 841082441 865295863 851847567 917625151 274102447 759102531 968979990 990525673 862690714 956796949 795814760 874162830 69650520 845587733 270907964 973687157 583366961 897332786 255629863 870745313 835929113 915208961 273415178 896290485 461571175 575619035 913375624 918809062 223862719 902292855 523147126 549811818 430884591 843344690 62455579 793936726 24777788 868358866 759017494 862994973 537056153 796217788 712815289 801986941 951119972 959021664 367772850 884896611 813037771 946849076 484485090 647906064 934854477 963998162 306197069 436719605 240714555 297903992 158367797 981514532 721016197 891331365 594079955 619847258 62867274 807695348 953383532 983984840 785891711 915112101 258784583 676917723 163752895 923787265 549912882 641109090 542790399 685625603 596609901 818375684 148065305 573485636 444090845 489960261 575999403 759994996 461127375 933155698 886323579 894129209 100313613 165608412 871572961 900940592 437546575 872395695 413150523 963386613 642672113 754370456 798046308 915627842 244250630 396834295 7113354 244168625 476800534 846813743 313915759 541352661 315541573 943886352 369086298 677246243 883252330 982981612 204813679 981338351 746148672 805573001 108399978 203054410 610927655 732977687 766877614 799644221 555703352 881715609 294484618 337053655 340830619 608252597 305627185 593152099 394435146 579634136 181133721 753879155 485853143 919497556 290064721 903524065 801507255 982944341 838194166 853280845 54198887 927897027 185895630 360776484 772910016 895385661 322869813 650603422 443987235 873021481 196316263 953646277 78633315 204490476 49079821 291289045 55855938 962098588 188477023 465820883 141469287 225466303 108653809 201618070 978107524 985520171 99695357 835041780 179130370 306942671 103949761 853954479 207843706 975474313 76314455 94302356 770484303 816719073 89805836 597186373 731162499 765545508 808867064 888525300 600721167 997589353 269923347 304065417 898623158 999739907 469852968 909258785 521390234 697352615 3654171 429236255 915003557 960374386 22495256 477770868 496649216 562171406 351171988 717922230 378293167 412249108 752684857 838305667 292417676 342361526 698814252 838667125 263464026 821905294 774075155 959443114 504960816 942492196 323044262 833092914 557985960 732719696 359838267 978460540 28261517 370924217 682174943 780288087 564416516 756590821 813859840 920040498 117310202 429545909 862052295 991357813 130566047 383153623 838743210 896650477 14419769 451694514 812588099 994536958 894330304 994563170 824650502 882334690 64146098 292400279 804586631 942914530 912187322 957875297 225688010 914066027 345327465 599825426 320275741 865052506 662541495 671143251 737168949 833835913 46061498 376157992 262166706 849720469 377565655 913659509 527538854 556892161 609951703 829687828 675367839 890067897 722580624 975431570 884258805 952063072 395010525 967158330 527703321 559414203 786319847 837577563 639953151 787567742 203362200 520250605 707699207 966109255 141591188 301393913 887314782 929183516 532892535 709064469 116992587 359919390 938424709 969700809 929862145 961332831 731969362 918042732 382302660 871433032 561823364 702760424 10741814 365251709 675023160 805499552 527497115 882703212 665036909 744020508 894208204 924173637 22639789 765925774 400813187 848542251 692751235 966923641 2745007 653398729 184847311 575989212 87775499 249193729 54826131 452735217 722938335 904949467 258794347 819422246 832244146 953694766 944762665 976268847 712705284 726730913 154912907 282215209 877354847 994869781 100152375 419635894 264643560 286065473 195774712 563355187 625488011 987142543 108431859 889227110 934492464 986722045 49540918 971012732 527476146 614219227 377012844 718375836 229336073 740523296 675677398 758179127 849639976 941020535 248689250 474341909 822660982 988299750 373202964 440836534 767218892 887217758 898783957 985074956 42895393 932034839 130970775 705616316 144135832 576729980 512365650 949067203 25951952 543013242 664195513 704792913 391877388 837215616 504248626 996883671 731875151 933309850 445012013 730137980 563862588 946504118 516807417 559013561 207401841 312759520 344648407 709310020 665593116 679177559 130766545 560164987 530352974 916966912 546111889 655703687 160475114 509452663 414273082 675667970 111844383 180993296 98221859 452564464 811922097 990605314 582436745 893638275 74072712 275668864 147172904 414417655 628261238 717581526 950348280 952907805 974193293 974647465 160500456 346760550 853963985 968386844 644760019 997245554 788965716 966865426 550359776 574729024 293549182 572599134 209362008 938353504 589322784 674547763 92732211 646386036 108687636 449531168 316610818 318200337 949139906 983944502 440487058 557962165 655272796 792421957 853281896 996376190 18088482 980804253 685572047 830744660 397020079 678045288 706963746 994980124 197359547 688104896 306564073 744896951 741213150 977803058 897680234 905369743 183815672 618979420 239779963 440955355 799130597 888135284 788869605 831206720 975929151 999592463 772217651 816440907 29500628 318169808 64798087 709617274 708604189 987355426 105018443 923281947 432091754 433421896 210953586 222030036 613902047 643725753 131524309 139208245 979502126 983126248 770545368 878313530 719145856 841142514 724472090 771015557 438209048 938976615 944067528 953856741 47320791 980883429 227868902 732731033 622594759 915115719 34374906 695059575 746231772 847257128 304513624 943338414 378512322 958474569 310557654 994674885 584184701 737267659 931670855 974687832 907658864 979096233 894513271 922636817 6572863 523475275 398010841 813598832 60217076 333854853 776178219 844777039 358018724 711265305 704401934 934480250 476319608 716140047 387832011 689790720 965077204 998413780 912280144 942717377 923896246 970755077 905007834 949506839 134691050 324942173 408270395 880284747 356078131 913948533 999023324 999282526 423645341 472880697 351706742 891075898 902345438 996900898 970153483 982855822 133776266 241139742 61441974 360595419 180331515 819204486 343281027 701080479 962863762 990679390 222187624 973368226 357121285 853517401 810955636 839470290 218316784 362460200 356047487 406431634 258937286 290274545 250657854 957299158 996293921 997818840 340353530 787240763 342423463 771602252 735055873 884720052 873602519 927242164 537718003 674344443 201216163 912959338 739363682 961420873 411837804 498398251 230752169 406678078 333915023 484058187 497958141 578966772 985548765 990206002 29438529 303169149 87069290 817958273 217056060 609973782 533839460 701246062 64964225 927062238 638021793 746630702 821684661 977606920 491611635 653274551 534641373 819416759 106834538 987538612 116202758 515222134 692067357 876913376 407859573 779627865 249908245 460688461 526689346 833778760 696502700 775029434 663850635 818170622 22628149 533143081 764143663 916368796 958794167 996903084 755284327 994833650 526641549 695685923 304274505 749179726 656485347 776752956 349637306 447676113 410114279 505716766 874415987 996640727 227338526 417921335 265089922 338070961 477575888 632028060 126704981 323239562 154090454 285449808 919609952 947053614 341273279 583074914 962647899 981043195 253208601 692813744 934642764 971015845 2810348 413238750 456667435 582039445 541974851 926387043 774948714 862806200 498522995 832306241 414259509 618107893 204405568 687775466 240510762 593506733 919381771 957305762 155253984 729813999 652057035 994709759 243012498 521028779 564330413 928137169 802125791 924303566 228951217 625402923 771839459 935157352 539323438 969867721 677613242 835420531 598584802 846799320 474229483 576647401 698458063 904891165 639901182 751305275 756253900 783363302 317026499 460065415 810912358 864024777 755378765 889936342 135399524 636360145 131437209 542524554 641004006 673197794 12378589 164532800 603540095 776376390 486911480 771115346 931182056 984633471 178070038 704845801 461968822 756484489 33481996 385609268 202583243 589834222 755979927 819711016 552273440 802420096 889683612 914946091 547360073 843854906 439278559 636436307 102372246 435446535 547577664 780326971 804465498 812018354 314687870 583501238 970447926 984408049 124493192 327435430 351990977 977645515 636536623 713861091 515739743 945831178 990040530 992131325 929812715 999489056 627601891 820046745 112060575 359531505 975086061 993156615 199124292 327924404 124670319 366511135 230044182 388997687 396382486 725073640 867215100 990578354 409921892 410193359 807011155 831189054 373061679 955714257 712468948 957548983 153085506 453941044 434321307 973621316 930124644 934567476 191947848 706891810 86275546 685587502 532250821 583586545 53615577 619022977 135882187 990021441 176202954 312998949 61547198 898732626 611902579 676305954 68320522 981901872 156863189 919398998 619019299 976617474 614898278 676167455 191715588 782279326 977399492 994214297 732077131 741259367 489288140 788104624 158313678 822577538 867368446 954810849 265326228 596441751 852464582 871678643 146773192 687914298 691640406 767682793 896148403 941010480 253996913 491153518 62855351 528662715 953011080 998652591 406940940 857726799 878944674 962606835 418181926 898815843 628850960 745306131 93604302 880600624 269049579 589793710 565373610 634079974 15920204 969714199 318495818 533520548 793351935 848267814 901197530 991170796 833220597 894209072 256874900 394920197 19383773 850347807 97576230 956331883 812071483 881909943 391589299 512109885 266483963 680002141 235213894 624442763 525385041 551536826 679035913 887080769 148052811 448687886 454964215 607020551 94217653 612008269 534381763 624778954 277972885 799192557 449040237 679560135 242906735 840597098 270197877 461581156 655035181 814555268 489679857 721695044 412128147 728920308 385655707 547347726 687352580 796482813 467337475 608826166 937086849 974696864 871119676 903844666 266080997 366989354 677613688 876353462 430679550 463736490 165349125 348883012 373987032 619998071 288506562 364725042 739372337 751944772 308303715 571069833 949015068 983053499 992644595 996320061 265447898 608668930 152365598 739952864 335337328 720398541 732230208 933462145 576947267 630955196 863506313 904839755 864936275 935379235 127455642 486275935 127480579 836909189 807443238 831087341 315889031 890368654 41744613 583657963 812916731 952901936 280930019 530092998 946305997 947660747 122419969 436042607 288241743 460342776 292421353 475311873 858009480 886070725 615540769 838935525 160639207 643743826 499771504 973379379 691523239 895556496 643906985 862419374 278291595 299913980 979130717 989664567 607998662 804679909 942402780 990784876 371409734 406367956 399874427 467604690 760142153 794786133 316851324 740001379 15938443 298875098 798126912 807295865 4249068 603803279 508725479 794676726 214997273 546244808 681911899 796002897 679006049 995036961 639244537 810917746 533517352 706939420 997913254 999055116 728931659 841209739 397127632 678766669 148818946 208801594 751217405 758970587 538971962 966691821 765268098 945270605 918858150 961199449 231516078 347695736 821045105 988705143 743811327 843465171 343785281 431429114 469542368 832593836 276133572 806007671 899941740 988583121 872427992 913729045 186483834 304095782 69502 515036936 242674209 245104032 729152754 738227260 331745222 909726412 332854049 609542498 584137343 951812456 796392903 874567439 5076515 984348652 947146460 998773014 301179813 679579933 909316363 941381275 858383740 893961165 946107876 961722654 53822878 385326774 816286483 944142512 780287845 843361923 425258395 735462454 57592311 901899546 327486206 638538388 656279440 818599248 142287412 810007554 839958285 955952732 566750552 739086996 57994842 443186645 791575749 855208492 568224384 671171073 921470099 936049599 52797203 982843540 988088180 992136678 772027038 789420094 353589051 434576465 913095428 931732571 304925654 649282564 658805139 976197278 362880429 806538761 127822125 648109085 811467089 971964786 530139988 852614892 20022042 951332978 342177961 864855972 888101507 947259307 646058147 657478695 608514249 885116696 377936327 539961156 557767796 986275301 933110786 980982878 3663379 42980491 192626824 717836945 896654466 945290632 381209781 744162674 889846019 973219563 587942061 896621976 432893928 794719219 488951319 581196822 584835369 944081455 188652369 697842657 728081123 831075950 94857435 273207533 916599478 962198871 908148928 953518983 292916811 639709462 392274559 527769862 47992975 752543416 947663219 975690313 617785703 902436630 283175098 789390768 477677751 860399204 61221497 215869854 46320147 754430415 229223020 439613830 518646300 967941122 777103839 802462374 365692070 732003623 395656660 588200748 752347886 778192121 138209012 671619109 662147673 707482847 804081761 877893166 281462308 568755608 185969453 214786183 240526479 511105098 97487822 265262939 676235800 971595185 356878307 434816804 377702309 450980581 817509384 975159360 139772041 270091875 734010914 914725810 896774778 914440598 243357690 653165888 619307514 692043869 34321492 771064026 577620706 911666640 433104172 765447240 2595251 477022940 326872943 749955390 725904654 780831305 842930475 988572214 772833308 783989087 124880584 812750916 159385587 697554225 90040731 162097694 111947607 459719728 838293681 935726606 122808114 814961717 806516133 946124301 153859053 639180061 138815050 934417212 562491167 586284554 904535165 968234432 78914730 529088910 24957079 31853196 358273165 422998060 245972263 680041173 348461976 428927533 975255982 986970217 728039845 936296157 301492370 335794665 682940046 959879214 229312060 919394389 131805715 522945410 770056405 879222901 274970402 355637771 464714679 493530031 143517297 686759435 760536090 885125410 127883629 396523081 288978880 977113502 896266263 955030872 19400293 775760996 874291507 916372743 232523729 864749488 845055354 942287447 99221704 595617505 733821387 881081194 113875798 544259721 714108367 791555346 109865425 937839914 649038257 960325390 301800079 973975494 201725360 581397739 339451219 572542049 830004046 901573263 661616165 860350151 678751737 912105261 878507252 959895226 26885837 892088385 47939555 896703837 837394889 976942606 808491077 980477804 595124867 698194909 195539759 828834072 488261080 940861124 852368682 980266289 470856654 665376287 523033008 802025544 529534992 774925124 185404260 409931192 764532026 781400424 961720501 996113434 444937448 619804573 127938048 776995076 589827643 732471913 566423898 789080529 635850463 803035165 799714722 806739855 765466831 883747528 818509772 856125017 224062862 518133628 881856974 986367795 228861800 471609193 720872910 731179546 242308341 596695423 98148094 261331878 727732394 868457260 562115951 852544746 497544853 524388886 442443497 800695218 878015592 936491534 310549786 887772630 528022103 599962462 455559897 534060891 422660568 741363784 271106636 354787113 765829601 774188854 462009531 662042148 888723112 938504880 29207685 477303147 198262592 419290285 232999132 537635085 552514938 963697498 34132163 632350397 167222728 370615797 874859184 988617440 561927423 860281563 261487926 949753611 245493320 380984845 488856605 712208743 915882282 944500350 47031227 862767166 960307506 963531376 58072037 819131017 831261838 996567488 938767578 943155512 596536740 615675694 443719070 639161472 45151445 752736860 11967732 173062453 162571080 789286834 218315661 659264924 608631821 795277533 11518341 198989661 67814685 781570778 165298302 352054309 439752412 974755106 903509761 906942445 80185150 816072718 436257050 665375814 485112214 873048423 377558646 379003305 471014518 605459208 195726545 502798710 683583722 855624543 529316081 648410209 798704005 938594818 60765941 278309122 101166108 935717634 426078047 445774627 541552491 815470585 880393351 915273399 556034043 991068847 108335741 488668504 882934189 969697437 761164603 839143237 853128960 949135111 179441819 280195546 11454968 14658290 635962948 774775983 587377669 670156192 71289554 392165909 364242230 909358532 943226214 946977822 925591474 967632230 562036925 923659863 302853419 763307924 657328891 844239028 820334535 960492226 540369497 824963592 793889688 986708754 516204162 520654738 476675710 780246815 291482877 953056719 512561023 922826519 940493778 957650703 179201449 833336981 608743381 734673749 322285914 889249936 383860232 431296438 13127483 488830705 735119498 878968963 744045794 780522865 510244446 848099003 772424230 899394585 377900112 437235881 88099985 238803838 907478345 920430863 183389895 831061771 455765189 565714215 737789328 780494198 739887676 772552976 320131403 531949146 517459449 544127683 347625569 748447918 759856654 980468862 683790406 927316015 349378057 706186191 167802158 457250589 913698348 946140045 819969572 951042871 133795220 972553669 764629822 785738680 182720525 701603464 178001380 881199979 178530515 941445216 871556102 897974117 560502152 883677838 727586650 919399470 314703250 898900698 282655434 943594048 814095639 891278476 976237913 992586259 121696360 835665439 489615042 735661104 598393065 723341751 438931486 668983554 619568667 783149283 986063421 996609768 172685792 520088538 545202119 790148489 897774543 965358097 343895831 741813937 481974040 832074187 666839546 895434331 55099489 483265384 525718939 537594135 660920390 956445161 680308982 933202896 429090223 627927990 698719092 808942228 356604252 797461316 680402860 734758021 505965673 843790301 268181715 815812414 208499883 626541557 794337825 810711842 770496773 887188030 621304033 625128724 180907881 637700379 165375976 662214320 319122439 913007890 222306022 758759840 406845831 416941464 740510537 843660446 834743876 838945111 22817094 567179828 636536210 662603503 695082662 819610855 428658608 626585604 572189771 772081216 441502240 640899388 9671717 324294670 600132977 629809701 865037503 986495071 934527641 939658494 368377031 920907621 762749021 998696970 728093800 842304216 910332349 952758497 121006851 775324505 70606324 659002034 50305824 68248762 822655289 853627073 886131397 994732850 5907446 710999659 131297243 165536327 125101565 480884523 665401860 934659676 361101296 564397079 635515862 789553806 238339371 943864131 268204402 320116299 92319788 985382581 589106505 966900594 702303207 901800333 572530329 674073040 66584915 767766938 45922440 646209765 93682600 809451676 687560462 922659559 808980043 996689438 162395962 521502233 762619122 980958302 507976754 546192683 183579072 184986309 666472976 958363538 87899287 983360929 449250352 779131125 860528093 929566019 971136412 980500033 565894725 718083329 534809273 753751945 385599744 463337748 601035676 812244743 914493608 960459346 764757573 842788001 569187099 652881636 769043589 998470902 270498378 717146627 967444778 973886325 41394711 822691064 162760534 317559155 240988520 572503140 116922522 808459882 885241551 931235188 551724513 867479248 598058281 720862972 963946553 998363228 87916545 216241260 711027746 908586177 683516662 987103776 43371758 361717521 859714493 902819556 576025014 746666846 266919882 606237928 389066047 670757278 738235782 977827131 313688311 548005496 910484475 951763642 562646967 868286895 997816311 998246154 502463840 623384730 943803928 989430933 550265706 835674662 49990237 446580143 815609023 980084156 829612010 931307003 690434690 904037411 24098557 550756737 632608405 886672775 43916850 273256642 95223312 203936447 345041800 583906998 349843140 512017740 985197940 986596132 671209982 911898815 136282436 537231232 218285574 474422061 949962433 951253542 64723385 702996600 724601466 810894855 415397465 882372625 345725026 882742808 911662252 946781717 340730288 552598354 78055067 121463728 947178546 975144425 60754358 419243436 290118478 940042821 61275428 273075567 729130606 859020299 340555560 461975092 381637206 451869894 867535286 922397136 436480442 708991065 77252145 833671798 246746368 531156260 68099149 161727635 253179885 981325240 258921008 683402605 351577647 637089961 520082220 958939654 267286393 372188497 185949182 879453306 950532856 990549980 519660121 788162220 928254040 993028202 972139348 987742457 858759512 992845877 859374447 912286532 415892847 464414550 750943957 947187678 783913133 788103277 782044409 867358407 810167373 997704657 618047292 936459767 565946631 596506782 412240885 834340058 333254053 932910983 923368800 991094028 974967419 978160656 881839526 904886885 277289059 395181518 535341310 596357031 513458916 841531937 345124321 401097754 603003833 990904311 308999229 880043853 226457089 579126014 765600859 768156166 339066911 677791365 264801669 616781008 926010194 929638914 751395429 852283995 573184909 995988090 402391076 647661472 938856181 945673770 478108676 602367941 199223509 538984074 404306835 800887510 820901879 979996275 464237871 758714838 870292493 899822030 829873216 908610914 301342430 987891097 679162296 798657680 814067285 924763135 442492201 992242718 857789155 922306425 964413848 965187379 462000739 766237993 340856743 982508008 468173492 711177682 417153768 887770406 247503337 682694155 390192663 843790407 224059834 733584099 78718843 424539672 116539114 730946333 289551479 646985065 770698521 773658692 741504146 838751748 825437914 847409137 193547056 486047459 736154681 941952404 910146541 995442966 719861248 778163661 179758427 545430608 276389741 672626078 216480663 338619574 455126205 739644688 571861113 679532085 969611381 992372466 683341186 752111056 25392009 275215477 217287945 712871567 330266585 744498116 746461705 909405299 726500261 867487486 260483755 964216276 11185745 397485638 165549909 321300101 9846506 868975170 673202934 868832666 398724183 530825098 637748040 728814816 336464739 994067271 753881830 984090534 810711964 932028710 514174192 741032322 672611489 892772168 411616343 671298888 928896999 994746905 563973596 776510790 919530915 961530914 478132652 885111334 553352680 936109272 893129783 940762925 676296254 902300428 838259986 899329705 260233410 464415804 783694972 974206468 364175298 985283251 872158089 909194875 782260485 894023076 456267392 795189198 211384787 695176891 705548003 866738346 301113837 434269423 892815102 926996607 648344954 663892258 550086717 656813170 223900627 946401271 464865816 619928085 470056689 670336113 737084520 999256119 828988485 926546792 599832439 717273425 182614609 733100531 646126661 704801561 819893714 907962994 962635888 977180092 713891628 946840219 287012699 828938424 646198769 925657140 653018736 884402538 251048789 814161732 177639192 784304136 325099500 846681274 761947401 809644819 833470517 862996430 207520915 756946471 588797222 614719329 240395298 501066728 374050418 455302133 25959893 101517289 465632907 597314043 236395404 400402655 996996654 997171297 313712981 426444882 177898684 331831923 498797546 700633503 701971117 715327950 951846889 972276574 438849897 836787210 182308907 772884172 67380380 300074478 917099099 918191195 93661190 500978423 196887560 974689880 530903071 892389803 694596941 994792753 505468519 882986361 903725777 960720427 443017927 765666811 96031819 671713440 712981822 930002412 306756863 945005499 858122528 992759033 919558566 929653971 722571985 889851958 138726319 598235883 306656543 481966111 28072603 232522473 486441993 862961310 98001269 272334021 62000262 883701884 692816545 948763902 336660025 667501578 812160457 864341998 687476941 955732288 776308247 797302065 270736278 635519336 338954491 803259949 707969006 745523573 579374129 990349461 196449690 229288636 632627279 785413177 12881050 28950628 308682987 471018906 2792292 184095797 898161362 989666782 508209636 860112255 328054322 957023885 867670182 880303338 77613874 632898182 380746833 778475059 821497038 989219905 283975061 430059462 354550541 502089358 736812816 967086456 54226329 658123798 563427182 986911346 920867737 956094968 429698475 986291909 247376502 319442465 455162196 622923552 44736822 222922299 796503634 885318391 448836762 743439227 752151147 995470497 407557146 572266352 871346998 905461554 777154713 836368550 345763601 447137452 6768498 932922683 940427533 955956417 15187796 415612544 824362917 907520279 809711891 825719852 56565173 366953993 734125128 934810758 950839076 970374658 251820547 552529681 828957530 914492289 736712497 942751327 856452935 874154272 795759961 877285533 148514697 891763000 173177671 593500936 392713139 636654717 74908946 181032692 599497271 942686129 712253028 908051888 69158193 643504730 129427281 875701113 642305267 980187865 125042553 471487228 987750159 993534354 51020340 350166031 356261209 627513063 119096559 853654166 277607096 785167930 681032188 887086149 124042871 885925977 60842241 880969715 925671338 949201781 388996546 838966781 35292688 828129388 93270586 486383218 56691659 698547450 367694399 724629089 139539505 895149898 53953130 592965874 26203694 853447320 792354472 864502558 850137168 954679244 624042743 689512220 366483948 805706333 317778382 356657157 55103722 233856153 862483876 985001046 505971 462468899 429391680 658971922 194911946 666226823 643690384 850503894 541067472 562574890 955898092 972012414 774078911 832098072 376042611 820468459 94711795 531551477 295920876 367584570 818426345 828020289 183378360 689076848 614073636 993574816 880462438 893850416 350769144 402871574 922189286 963978438 775961738 785006182 184770960 542473031 93396789 991015182 847464128 988557237 745717992 956530484 935763129 939225749 752447992 854765298 29931083 696895247 703334236 892655026 981519992 995941901 843002216 872140248 68633456 590533396 96106904 734231035 78719533 620780303 977508069 984543327 181001144 372050541 361061722 664859071 808021110 896046225 553935800 868178971 595969735 979334373 127096852 843688937 237642958 529912849 864981616 940194199 891583627 984082912 536416468 565475116 319566762 515693560 858488129 999385124 542299295 695380147 115007546 377641602 524407541 686770579 36568707 847713065 174479234 571335894 228766391 602510828 418279932 718416427 811576995 939763578 380746342 626220673 68782869 449862035 670777545 744703344 680964130 819300284 775577894 905004319 871057879 922200409 8948295 425011709 126294566 276844808 870766161 915272559 976720009 999108329 571790902 726927380 112970582 554680881 738647812 939742734 965476069 981468152 703738209 928506640 900389254 956504691 656107039 791396772 443713732 952776931 398807951 681477301 521118328 708858130 483941482 526831285 678747268 720655343 919047624 978305555 458922132 804154946 60371435 580477955 539853721 981861216 554265360 853195081 431645554 996319426 589818460 888138770 740534437 882275855 902741469 996263627 553714929 864585931 12015249 792870080 552313233 990395979 264123824 264507219 791538663 931687547 67903991 366052133 25948016 486512632 763116082 784232055 278021759 774096641 547124809 913552430 770686115 781105189 524334052 623312715 270528152 288145099 723568729 812217582 815421095 825888372 217969203 851775769 715081869 848051118 334493199 409291541 782879172 907650729 559134325 945117083 714127253 847607757 186842962 318337839 987343897 990200576 565259942 627706703 129866903 314072254 956512444 963798999 512343747 633182971 680555225 812954400 420061850 868324064 992287963 992327160 570775293 772540733 978572885 986508291 859988418 881316355 638945786 902760462 924262217 954053993 372398135 991014398 822177997 883345530 886222493 904802903 173302926 596737203 526439700 528871342 64228006 773500627 24365452 475646176 242693611 520498991 495384304 797066806 731552915 901844074 675147979 903219405 914413512 951835887 468704913 487173912 609583609 874091231 489141082 824650599 451668982 908280710 61090509 73536314 565866793 935983124 463823992 544536021 817112535 865718476 651406469 808785308 476342193 966648904 28163388 117303814 40649780 105817945 235948402 802872423 562132449 799260756 714024877 873442463 92272145 278285087 595833234 902294377 550743724 944510879 650219853 946647917 651496223 671397297 129406916 260253246 339508165 441981188 328089981 937519687 274414039 931068826 374750061 618263191 765157581 996873903 838818489 844503802 109621326 909366729 799805120 826383013 915543327 974776721 514131306 552875841 150642650 243497382 986612425 990715772 396076464 595012585 483720630 913900715 468304921 700383240 630106877 879661870 905555087 930656477 422359349 942211513 133503408 271129005 231738579 274975029 851976532 961540703 281990127 503204880 379064706 927087066 784176936 797527594 863992190 914191764 349540766 949384462 864575464 869344716 868695118 869029893 487429809 618647195 78988171 90290115 157345248 656805893 684113229 807470481 557195901 677039577 345635622 993627715 842673506 883850729 846845752 881123665 186024405 490522835 908116903 989276010 462398427 600504545 947908339 998945163 428089264 796142173 913896142 926132994 819126423 939593878 205613751 683598601 313179562 407495365 651676085 768137885 710130676 848906625 37664634 417194668 1477582 205387999 599467486 739742698 735545258 986164112 889069794 897431022 591833305 881568238 792801188 999935492 594307709 625790035 12385325 903379135 349692548 730906776 340590190 382953679 35188098 92009740 449424508 482096068 828159167 861419794 610846840 703266256 381678118 917932424 738249450 956609631 721797824 737142197 774415507 898562182 345724421 971136308 963639421 991365311 630481474 989654584 19852960 83099928 754021156 999425784 249125086 955725234 660029404 938071836 53696600 305341434 315165262 971813723 237774432 835396381 124280106 249235730 620899874 676093539 807054836 905769501 424519979 768608905 493970021 615061283 699265494 830710896 985914678 989565069 789659852 880215896 769429529 800192252 943005956 950616958 800359783 870679706 404743334 430682225 740285230 822190646 672550585 752631145 895266507 969605780 231575750 620254238 85230451 972798964 391193550 524415031 575087741 586375694 452469003 482577603 227354394 674257989 921925661 958049489 695164205 766831056 297602169 897147169 171982289 217220771 53007349 206168652 36980933 614045405 435221027 923181559 188188663 776621202 775136890 901307517 649533208 786041385 166087734 196780645 854995195 921727278 185511973 309246363 808095016 989563572 360163996 731868438 600389118 792385256 434953340 867580941 618530430 822520413 676728817 844241271 183260833 678313744 652512233 991594871 733539530 813153639 743572771 777677635 832033918 910722896 505536388 623153806 671476857 940844070 391818027 405091735 588961176 982466241 387835044 965731534 802312570 872688782 197816487 930893730 38921003 591645924 160671113 284410130 318234636 717890494 351157587 851569448 156549359 285928188 5124853 932208465 91023698 897457200 272571605 813655552 94423287 970876898 656052597 816718760 70970870 274226997 486851604 900724695 358057854 417816618 633010943 859811828 288133843 304189022 978640244 998586701 194765235 527924961 782110740 987834294 848508148 913308761 454208658 572272950 991094146 998555515 561198638 954133712 172285868 504780659 408439909 524241121 148649044 872439744 161718498 570302854 628324282 918909335 848585859 872177593 489368818 565544793 601808266 907382086 157857080 796268021 759743555 922947236 521639136 533717647 535381085 622132209 418286182 852310381 164961202 788843118 470535698 746966584 919568800 986654056 880241868 967891193 524475430 922581911 727647784 883275546 331725086 712869601 466807907 532432321 572155320 815291273 39487927 154121703 673909640 905695944 898500033 908282603 351519522 796393891 24291560 421393438 858814096 961796542 612056140 999155099 389701732 503628616 142667330 289410736 733714906 859421125 285273696 928785545 414022594 711288124 585803869 937645132 310405939 561150769 694989212 939566058 528260700 943839021 225994551 363710490 371783334 554257095 382561212 491843070 21368461 597409697 729622319 986095197 315982629 670542158 849958542 991256749 463529857 852890886 333185213 475145153 558607497 900092989 380185211 614355252 20667471 895825387 554748548 738267304 472098957 619417092 895953399 976119557 103179582 763320173 129669135 735785097 101355822 117477651 642409134 699892197 918832242 995097865 220605191 670141055 263252847 831108054 817670196 854768431 409114398 558408874 400191963 569548009 31389633 790733985 286412045 996483177 978235993 991920220 532384813 598719491 329219111 364637332 542655192 844273756 126798271 584422095 47351230 911554184 892886480 967111545 864478144 903040406 485836829 885986189 179015374 851697927 664615693 866623413 406601402 733726174 795545405 916144730 310496905 913797740 566074133 721016741 819107206 885949886 799893033 947617932 344894654 687457020 204239156 739296622 345388075 794714271 337789499 860695149 381615847 850258523 647885297 920775340 902800938 999431178 755377650 950523197 500914204 819799144 771930352 885194638 408776224 832826454 842186655 869932092 471565576 494141912 414047988 901119585 523078701 569218540 236708756 410430780 389792653 684728301 804305511 889815729 6539756 401515423 760500440 915107873 891680042 931107510 575472832 705239124 618654849 675047492 870162888 993267134 368535165 989262933 45824687 219640477 142195140 866183696 964082050 983020161 188246350 999118258 65834177 275390161 357728226 622195711 347934229 882901937 582671742 910686075 89793958 461450546 413188075 624053324 99921193 820369747 281250679 697380280 355506441 472137147 797363600 853547160 499250000 641766086 234049187 777936435 453561257 664386052 145539733 653435174 855203622 878303061 989383370 996024165 98126755 463350560 774807058 935737014 194971883 370420463 642105458 942795352 476279784 924146245 554779753 608830572 949499475 951126684 438693112 475557681 544880846 723582043 829416776 895282489 688921307 728411847 184448392 558794089 52252590 930321713 712277873 936228029 941924803 946639190 949820648 987597607 536615487 787042393 199902583 570700714 203807582 675481827 411487257 753884285 412035450 698009914 105814109 256887069 112025920 551851534 61001053 252668321 516254651 932424269 956868904 966218235 699895809 809461285 906437006 925370495 327628039 708811727 307089022 543666948 873355545 910679583 25123038 266879090 255644933 957265149 701621501 709759884 794855322 882619849 322158328 499731187 910551285 964081764 834361496 916125258 643660367 783291099 641274699 837965256 942743706 962227954 645062852 913746596 411385732 690147458 643693814 724338695 879665750 881973847 540740223 722102921 681532420 766201101 427458662 512346629 31298644 692100712 530359293 836672488 269570192 530555739 175953107 579673322 531994997 952535494 721449777 830244988 90756806 594395305 759446146 777668955 526751182 765269737 280912490 921263958 185013339 529904111 668688448 715397251 513845206 878649819 525080024 790187211 158439254 504887823 15420355 287894044 925710873 989175056 506108782 860783404 148983988 549564464 354276038 649249685 67385483 413717770 439375052 923691965 765231314 877912087 506662701 551043159 301372104 790345538 508896108 555153217 847009583 857247443 816161831 938534185 537695849 774216780 801371915 955395882 88482461 213590708 583834914 725628059 890135790 975807542 242014810 578029368 855148457 923517119 782970076 837380446 207888155 496686446 479676087 966693885 808906135 834891525 274546953 433816432 847393316 900061270 982215238 985842116 950024814 957063264 603244443 653094974 927399385 997644312 119603088 445025324 602588204 740837570 134629505 648112686 661032139 891104742 998630407 999780032 3806675 869946122 706984398 985895159 638146027 879560581 231001424 471257824 805911343 894655878 691120464 860598603 637867830 879076601 871776576 951779721 558698632 906292375 897640939 959948295 13370950 920939193 198085617 675310931 537458243 724334694 715964788 919366425 220467351 338910433 675626842 902554037 263631837 680891888 336224629 751120431 218899247 409806935 682959070 878004318 415854827 709855935 491141902 737627114 887551099 977271425 563002879 703626607 56620589 826707231 23417544 288190848 412981922 906965639 731634334 946417141 93139474 212932811 27952825 548337040 743325789 945671002 269545531 765725365 560551743 826256604 101975901 249756634 736841012 845112087 778475037 955758607 776079737 843075893 35506345 50442726 397954497 507846603 516116280 545494870 333944912 370336140 745898784 796935316 853675878 979314769 689699392 769382357 449119596 615269297 292097741 867610275 758905427 978176088 682157824 924504617 619513717 930917919 734062179 962327435 723365031 872185821 203285472 857137693 144086059 711331080 240659398 900911375 459950236 460551677 720218752 776243656 266391640 335830582 238338918 443595882 276451880 461645506 437329078 553215409 363069393 600936343 306191111 939104879 938354764 992118774 426256238 968878764 934911119 996811915 150430630 306752293 976581739 992343679 141361771 790582551 61277472 571178885 56723355 319287512 538755320 631201946 560869253 661776762 634037408 896846094 525044865 559091985 787459556 975087608 1033117 753055294 635905198 936467572 824512379 868999051 570844441 745756413 516237899 579436526 163958295 828449291 185507753 590002952 145638673 282042248 62533307 313327521 716728347 950569818 325900284 502016026 656097261 958452664 532855565 993671661 50208667 483339044 729165501 979570606 315806564 820428525 903988357 973724829 226706823 583210022 445632408 585913944 559651530 641120869 975179139 992479452 507056285 662393631 264802812 975168084 698871702 731485603 715714840 796032594 714231150 875277017 812451818 850671221 775983874 980171280 451685116 799570547 888284769 908485628 90508082 547031581 370163004 860521086 479215646 869134100 711019367 831562439 54752810 750050161 441040593 523899889 207837230 604226114 484128568 640712317 205588422 232869646 973429071 982107089 357630212 494366977 867113705 927359871 727608723 895976665 608654684 758298424 879871866 979809932 297936794 698157721 320080302 528906590 166772214 246754943 22030783 60163413 928393695 970789040 956405535 963846138 688168886 852024101 743343185 888848804 661991108 696946468 338272531 654054573 178921857 700291297 673730256 688109107 907655918 955648213 93874563 887833353 79134157 811857910 335479467 437593324 690059631 968925260 299926802 629682237 478102239 919013854 566778792 900347334 959980574 967152946 616214775 676819928 736851843 962809788 771584644 978672603 212109597 541534744 473745858 609065679 788602021 804039159 550846833 716334295 72467036 651692683 364273525 604861482 976495965 984665482 448812498 976688419 692761273 813009252 10294183 498170607 432271860 713280753 791372111 795321073 614252209 882072767 828593191 911697437 331355307 514124743 65922015 682814907 482220393 742802390 520183652 836864052 989598994 995689312 621144646 654224872 664988581 716618967 415068008 834236861 435857688 499496543 453534015 533426687 152858924 289827412 212099985 935444805 276203468 476439493 498091701 821075316 711780609 924213982 155731510 673090496 227609443 370389218 990721545 992015315 826705723 934143271 640388880 970426288 223314823 588163641 462745179 867519386 590097274 723020251 315511658 898705606 54966287 781441607 150831940 231351247 436975183 965331022 394474757 415729493 9411773 677236903 763881266 823043321 723226085 969874737 366127517 562156032 220686529 767695818 217090425 373144021 706326922 781302075 792011619 907353908 795507999 905070394 3332134 909008786 372079783 976421130 702849751 859126475 705469679 950625067 392133518 719033562 296158588 700230215 564944048 716443234 356456936 497209421 445410219 511595783 380051118 893519348 890207440 965919774 7596581 481532735 742866332 791826881 72862009 167120680 547373950 583204467 624386920 684464917 145603804 517699716 601994497 883380720 135292365 943569455 833123206 976809245 946332647 950678190 854259543 904477200 793260173 939302338 405232786 960002964 528641599 890685565 436269713 572957098 669591396 801738902 329445500 551321494 627459679 735575753 252941047 921205294 754734803 788644210 910560695 911342338 995402651 999261101 240442550 269800117 598053030 893009171 81086107 752123567 912568210 967218314 273598709 371582908 283289325 656750947 515526983 787530085 863636873 922158048 258763641 600624189 435519667 847792229 259148331 879710284 237530227 890661727 986193224 998894459 976282220 990688180 336913695 706316710 900762459 952516284 387140685 407193927 626004028 650876562 272745883 524445724 534715460 544975604 282055113 562982420 759081106 780745118 636888020 909736571 958105599 982908036 891894614 961977586 557562494 721529067 513617220 718063245 425016499 455049459 413745022 765238512 864873185 965732431 898785982 961263961 514177121 989186113 760033827 849818597 543267967 634141387 406431057 882757064 754292372 761342653 469727269 765444174 394293455 875869546 638556081 799512081 442911458 609894785 220701689 898199500 299903819 817916914 14256863 845047281 884085675 920555675 977762048 983093962 105830935 531532932 406229895 536020901 958123018 964446901 33094868 700820778 561124892 909684947 404226749 864916556 87251083 501783175 571489159 629341849 855674753 924744543 8195340 801872236 383088805 802713061 783198413 979696172 923436104 943433992 612939132 617656738 564919171 808438845 938994166 939922984 821922590 888137695 958248713 963376008 350669530 812245205 563039541 967646224 404916728 692347397 320468562 565547441 113517554 937124415 418460508 644350241 109419818 898380968 861941473 985704663 772201554 927504240 685328288 962202213 986771350 995566937 686392053 777989624 510865143 547981877 87217752 380150751 420668386 671558887 681031553 841115708 72250853 611496882 652027829 983226883 510422574 860119031 978136452 989107941 136288005 641516188 382786601 988476247 69170838 376692888 713676311 946505496 672408464 766658337 486701634 925153672 858090352 980340381 242440699 930163662 874947835 978424927 836935300 962905341 312193233 648302115 942275157 973191391 268033811 372907375 554460570 892328146 877140141 984189971 432762865 817963914 530340477 763467844 20861792 838875057 797979195 881837303 361457938 609664711 459091979 834189637 789323245 989983228 358297437 565342656 236570923 333719715 654200215 960301909 547299771 706980913 615357677 763186392 22163912 167516044 50710372 706326843 876520908 878934101 52747541 885926573 973302910 976280646 246612697 287522050 676268155 679182357 632164556 985934496 378065740 559862822 296553532 698874604 380097275 520344356 301680482 550951528 393225248 876339129 988541516 994801917 826374698 956346350 148151793 548971726 355946050 724479989 530687352 983513067 237895939 933596685 476396948 972296252 749017436 919828750 20713634 312800288 970371326 999741440 241418596 272366555 874948011 908870479 88282544 866205847 103798248 134283582 489233078 882076574 401855633 692600712 40139572 315659824 526687217 778825887 46980527 122634706 609935977 810563892 605223438 910897814 358007642 689034612 463562714 481856839 400846216 693280062 21879333 527459170 887019268 923054798 420424603 521856081 467399843 488941857 332857590 888914741 707918557 850545679 644873192 650031816 866693907 958310484 24998335 498091172 541730352 683481187 18226100 335272697 818602543 974953362 726118056 827357052 199391558 263644685 784227000 966449316 128255375 692472129 123632240 769726653 973441066 984449548 581578531 584910600 685168613 964315125 301335427 689108036 100336023 980385700 286368125 677642477 409104264 686660945 588591334 734784774 107767483 830008545 702873406 886267692 29284674 42455117 684550438 863623013 690631255 925827130 193190251 206932387 773081423 858111937 447138090 528600900 69377265 391786889 152915464 700398724 924585930 995957045 463745033 727571711 570501100 702151564 236010119 241008733 18464831 51090250 258096197 490458086 683709981 957388148 841372160 910089567 306032825 867778788 107531407 769204539 48981716 877370981 272682496 725335062 735164839 770275637 635021020 905776317 448814015 810398578 967588257 973123427 276531867 701296256 224277111 522764690 865921081 895286084 883307701 933088515 161610558 437559068 494376721 987342280 730268837 876707975 371237774 388982371 545855438 888216731 561479250 711370840 456755337 985197572 167918493 495910731 7121628 360088165 761315210 828191543 992786476 995874002 828704429 955431978 131414714 546883466 66216000 987755043 179519225 379762808 767536775 893215958 734133047 871477988 765583380 894590845 310550760 806773064 928104927 946147501 25242525 660031985 948371407 975151644 836448147 853169564 317454561 790600058 54725670 675249675 901010816 937113960 860426744 883921563 776962324 811411102 960461288 999173655 858520000 966918849 487761432 782406310 320188217 472719902 771045887 827433438 729270714 781251906 87898036 643323110 727162408 789461339 728730519 987704232 42075266 585564434 875351904 998374535 804785241 825413230 819175721 926374940 195919878 951194389 775373132 871637940 712490643 748732454 477039993 508096634 204290952 368682065 725303430 913313550 673631790 797075906 210041748 886496757 255795871 712787983 219665693 920047469 823746762 834509563 981174469 991087992 411341393 459673638 585160233 634580311 926212796 994391230 296459631 984123941 135651140 252439142 50112679 871748498 536793548 829024632 927511725 943957818 529677804 548865658 345204685 399766800 221185366 905839525 424248893 858628986 521810088 843490048 842828628 867018159 28882259 920053252 198624406 801195051 541148484 822509214 930323536 990414013 161304045 426586871 604450992 646568295 698967364 903630940 114326992 166387008 263952781 729152787 237246011 334983085 110425210 436889269 937326364 988002789 491407457 527849806 937854303 942649006 971647649 992567350 137582034 577605766 66736132 192542454 35591841 477088702 936795749 937509851 825698090 904536037 512233412 774097534 623766846 708295099 142905763 580942023 549429276 680732131 919604442 966669353 821923170 869084696 631592467 741269092 786929931 840269216 417534752 783927377 84679245 511508929 355997818 483964729 203570657 983100839 515939040 996334903 277914702 965952810 430468145 553703613 43951252 828843688 463505421 652290202 686550028 785205904 645275026 809121347 682274814 901244260 654088259 848107761 393342961 831584263 787847305 815945749 341514537 806104598 453088007 610642713 416824916 983148249 467763426 971354117 828772844 957351604 770910932 859292806 637321880 706404541 335151097 581303099 894837711 903613177 61758959 164695350 216990466 730044911 714255220 903118318 891414035 956343636 407261255 874839423 158150490 891028032 810215072 899484057 422588084 558920472 970382861 993727194 713233887 995789556 955249157 959035616 370896745 477828135 685411517 751595202 339612795 856808006 546073329 780198851 203710873 223975926 901664862 913810601 36371749 906061727 804355960 849196319 285576917 524522072 109346803 254728927 165758117 684199515 315351393 492599464 172150922 591086952 665371605 820197922 246651379 736545174 456171024 590372402 126940132 866137607 134007468 983233097 558772743 790841738 280511500 705441592 806498086 963125236 610110323 711953745 830822403 931960866 752145405 890877410 406854390 761296418 144135327 635627164 70359082 451972289 191145309 384190396 550981178 826755898 706017873 963903063 279626696 477436992 917632886 976010828 229904326 811832448 432391804 549611460 577199036 651875353 926433254 991579743 156211743 979874737 812131561 919262645 917584471 940113985 347230207 751997492 219150859 230064346 250860264 805658603 126424328 913311286 790591007 844163981 20464162 402869964 409199402 964573473 56930563 462928399 927477398 933537763 102137097 133718345 886186139 973120565 468518401 565152456 330854819 566040592 351479310 463712343 943576002 965309588 378058489 741982187 498278911 989035995 926393415 964990747 561484234 928992068 637075181 911602046 652477927 968880896 922458301 988256837 535049462 761378932 663557894 666259723 92147538 218452607 335598872 761107823 170901317 457573883 563374280 890404712 601345973 894343070 721817960 963072514 305452483 625989698 421159391 779085478 484856388 985470343 861151093 940311677 902483262 964916168 778809978 935284803 605928709 781562496 142572057 813675624 862854091 880459772 629437120 640044326 541830424 762565566 672548439 805071307 357354811 399490119 434955232 904872294 796331151 833547219 538577692 898700989 123101771 716941188 372219667 704193868 500779339 524304253 595162564 891620446 653236344 948245921 506576758 632304686 337489327 400527533 58150419 339400324 114284097 930708122 855695387 958073952 450595273 812465020 554653397 919077492 54426911 196912625 619849108 691701526 602990556 732877310 565237752 990091470 30209616 818290003 723893356 926385614 395163763 918312675 40618749 141512513 252407657 406789550 844466384 959782869 966492757 980970658 636316810 840225891 478489917 775370884 147180858 634338587 451365167 958091126 620389624 966705176 326006922 589824736 937459054 984943873 387795978 675530937 996781454 999952061 459550205 659397612 276137116 448293909 252932105 640277210 510190675 925424993 67732429 871634558 95248110 355497867 503779590 999703047 560792830 918711246 211336247 478557804 382494187 875900760 22865248 506327834 989510625 999814711 977230788 983323825 13969081 322742361 379601553 559292609 520267577 982957565 546566570 655606430 198003817 443420585 292919660 505424762 842164103 886807339 674380951 748002452 609786505 634726606 612129935 958802496 208994861 754447691 656567508 761262118 504585021 650326600 17134445 876108736 118805907 233326083 679892865 985272954 151750339 300812725 934742533 983673710 374336515 628637281 711152008 835198782 206037950 582925205 943980541 958092205 638528683 909832497 859526706 948549674 712463801 716317036 823624382 980056157 506941829 584386230 302062711 945950839 845955456 967513613 644609333 818668243 955233093 980392548 804923089 933509837 78339038 354589216 415763275 785322204 66100087 474063321 291579574 730473197 818538393 903331977 503496827 690420907 420419145 421812243 956702410 971196195 444198397 528716056 372894175 393569652 416194075 546804777 51891154 836084628 185370631 607159211 512085920 794701274 976813233 986125949 132402065 546602631 647644672 670421492 249123383 818652882 810920070 999997831 320917790 727389651 11055288 520552939 98476884 266107813 653841609 977571304 178602494 456808032 587278894 903653918 995943396 998092381 995041696 998871307 364902224 952730430 150036556 611507565 282297670 649408650 964737785 969640333 981548980 986357476 36892997 690285166 478923137 680947498 392057027 415672249 629417579 882364367 415941669 751830064 737277115 853594001 448947470 856060581 330753725 709018594 569783526 940578703 58043831 531243453 69802535 632233809 430918009 948075116 3946759 99898056 118204011 336441232 66056822 193862035 871521911 922661214 426328279 687826342 197410145 368515177 307691005 776664530 296017042 575594206 688889389 924711967 910495515 963835949 853586091 999167720 880175747 894096399 612894511 627958496 453418409 496623734 394010273 632457504 256449170 876648274 278268639 566628253 70474724 600300552 963372318 973501972 909115361 987952204 253001242 436351192 15967978 715253736 56723995 616023147 914313740 979055208 990694197 993363002 332984776 673269684 203760303 993409324 468652329 872197498 22965499 432654372 141408399 212796367 43089058 926665221 355807985 727785791 246436992 376342005 884470043 925800221 381660579 884479202 243474156 863324296 816255702 893171913 289139586 519771464 370880730 430298677 326445751 700987263 348768044 967457416 839722524 840338179 781381352 884734862 363426158 823724955 822913918 845886425 497496019 871999455 305156129 923793302 6651251 452824169 607044142 668656279 753036254 960715363 127289829 712409122 947673931 983620835 204039913 757914357 305139268 488851500 263959169 658020769 827466224 863811413 366673750 786420762 470860461 873328656 718073245 936626186 670409941 676103146 708239669 874977215 482502557 900004406 452801986 487175452 799433939 826497436 251623572 503564368 784770603 927629692 994666651 995078758 526372265 804576808 948411106 973430121 979568637 988976740 22550906 357081749 506138854 629400094 456253026 950860772 87008317 141003400 957562239 962755304 55349678 210380247 298839103 370136728 183502010 526355709 156181901 461269381 601314564 736866909 995192845 999522934 249680959 764828512 824436993 927716670 727668190 788372736 600904740 912261752 743306251 949001628 840271969 870406586 793174361 847090778 985089167 994305434 387496954 659489321 337493648 601863962 237758477 466422596 780824592 828275863 403458352 827638541 965725943 996695335 855743882 990426892 429330802 771298727 430943563 796869979 163396250 423275811 379573020 969334513 922566823 989064469 956768457 982823305 193256778 613234268 865107970 897949939 364224397 503617850 756817988 916655621 578916031 674020288 970178298 995220777 868137683 881323904 81393107 828019245 489913354 851802197 442080026 674405377 506613282 636788712 135318444 743379446 409282118 535475383 601013423 629241331 816859467 978337281 58514559 459916361 414214848 811203256 355272104 400073220 172772652 782988937 569856181 764741891 76356359 325937130 347260681 726819080 570257674 871956881 758486215 977507369 347674505 428444864 838718988 961219689 430303426 936318272 859466530 899377477 529846740 554612027 540582530 856880013 166214637 837312742 276407572 923840794 816866861 879459728 448131877 619301378 198749161 664620569 474708565 988694736 250586646 865709547 13968162 152112548 5155901 556753784 618316083 851008511 711426292 988380341 874578525 927490690 408828185 815929898 122157771 446310753 578103773 915351831 381291035 627675347 218041566 962230376 861592414 924934776 586016019 767889185 892043096 945542445 249340454 709987170 836616239 841901456 335782369 799725263 243795916 690553731 52640814 366666265 78284738 788487663 835471700 906947002 888041859 922273093 465440954 491772045 517767428 783552900 384677906 991275239 12545182 699572459 119391347 651154028 559457660 925954100 384038745 626206728 916459098 972301036 132366901 449231318 564798717 899990951 562004784 895687687 289529447 342528536 347227821 465546829 756930567 980761226 822747349 893088780 339267995 821953751 263103341 998101388 652056259 839575239 252043077 764396151 75107423 515105632 639176114 667273874 215484849 439645364 477524335 479366244 266882674 472922961 655045580 660419022 483199481 674431274 493727054 960240433 376644526 530835126 248253794 813456898 347810030 510093912 472632423 504354473 339094512 758474759 939219869 990595368 509188115 588054955 58187890 95849569 793764573 853984629 716698410 849044100 159721224 575378670 307104784 372880881 191877885 635627784 275513837 894473968 202892944 517871009 770781234 920489589 691906944 999368059 541275772 632700877 889635811 896603689 722482041 809096122 437282975 515755919 857502978 960249477 826732444 867712829 89085269 829906999 539616 131956461 419978503 982691696 402440710 588251474 561317612 854453799 196745754 381045805 256051829 924952700 260489376 547423331 211839061 781760904 327312384 721321414 289312873 605044323 151030692 904155340 264516168 669329950 326879447 543510184 336040611 576733075 757234213 922028604 651384817 808783345 915408008 957736750 119382353 780890336 984143481 987349493 439832342 771173270 720590193 902610936 409992725 879300214 536392134 575961614 861762785 982122849 635840054 639438515 215914933 348582878 991692425 991828215 588561923 739550975 261686668 825414893 799058376 872630594 271397642 387155850 898547777 909294482 22938501 768817900 384033003 691660082 620447854 880389436 510895900 961711123 998218167 998302805 872119099 929871571 90959285 574059622 300699403 768801798 81811360 227859536 474621671 911684536 9964161 559522559 601256746 612418688 340107215 366616322 830417854 858371875 388996377 464810402 206447290 601778674 806519961 840278266 450026078 545815687 469536733 736132443 964664414 995831169 401846506 596903450 174654241 508976721 605072 326485044 918273394 937354444 486771203 724156848 208150868 748951923 533323326 583511589 126989143 222445236 884906697 910384198 207718024 619279456 983091896 984071040 519452465 723573528 755654037 939225213 383409736 925787082 145772424 573521654 394924067 539088585 171715798 436165940 396244610 424614126 219179797 735731588 749352238 922253081 3455775 14541121 384297133 958408198 832003371 952699401 555589810 703730428 812795430 849269321 890139832 945411417 98712660 535336332 161699970 565235397 207663505 226271936 707328928 935981487 794206070 872745359 466645085 485083952 950820065 959235093 323101939 992996466 519317768 527591389 570672198 998038558 262092859 459392075 539003330 665114663 869305951 963081997 255674975 836438863 317564018 594388521 935805223 938834869 795045731 843837189 746433630 878332682 914260223 915515369 124395330 423666355 724112536 979275879 809092099 978927810 367056493 986577508 845060100 864225987 14912531 275066147 563237376 837294496 527506534 556207824 691751156 744845863 684089283 961917062 936797677 982106433 534426274 818020621 642993561 971133441 470421498 544547705 764523242 995164223 821452745 990529720 806963591 938365550 912324050 993815847 866588689 964723464 665755570 717523800 155537790 342708555 454843129 672755304 883710069 983828389 578932366 966133607 379036135 538866674 866020628 981166218 854681166 921766227 888168526 993577545 207837558 327565528 485324271 530924583 116953621 468461474 663370143 694632982 813890715 871502366 868282490 868842282 516087072 703321225 420924803 689084071 842279004 903456394 718896878 913554817 267751417 807672722 920945305 996815610 410931803 691751188 702222272 889420347 139734872 812518174 663451859 719543714 253082372 973054289 242417197 678864202 343235418 830032374 916282521 943229117 390557623 762394292 919058341 980989254 918751991 938698229 798842417 920182309 17907682 486934494 671940026 966476362 641040004 692098760 601143356 789407577 808666468 839082697 338292589 470495107 18231273 675016120 850485947 877342641 735220423 816939681 270001380 468871122 938343860 938771665 819745617 917916884 833662377 973009544 806818994 944348988 24355364 964687084 792521314 963290294 316887229 988249681 843268415 897791140 205576179 686017996 864040622 876888394 142511220 630626374 923345105 948324414 246072153 486975160 16745041 185647770 70462201 881538178 405527779 435242251 999161620 999378887 492945547 731900133 545576309 880859082 748114 329717538 389208912 406701398 176494650 627520762 621196230 849007861 474957351 645612575 310624177 776006353 941305606 983877655 480999568 507196251 706601896 928643083 427317401 517104502 411620521 432795749 234033526 683420849 234381911 555543051 2243948 683191813 767791062 875050455 286113433 301831707 455351126 703508952 721279362 844952992 460213801 995802493 548369618 816359630 102060234 916990513 578830351 676599157 306542807 765411488 344550155 863446825 56942526 827862952 2373359 492738666 534931158 617332235 194957767 752412301 935020599 978614162 282832574 996396936 664296382 895253593 227682073 271129112 860184500 870046692 803237435 988555986 365764699 572048612 870257356 969089617 97603699 595623526 159282179 385059515 493713319 847004398 507302562 993741711 601053570 738276558 135998172 218418021 212216253 882000519 383474490 385546406 603627613 648194336 565771001 891401754 607053050 635317399 387707785 711161721 878032167 943147956 965821760 993351958 343711805 716440439 959695697 964668449 488854762 970387389 837612487 845828938 745921962 905707930 394318614 422587833 980223299 997311354 529674200 607450282 826742398 977874916 927955181 984820137 589380419 927611739 794952842 928570133 895723642 959920198 889808712 938957968 906359653 934652060 582687648 618741627 101447261 652427124 401368174 976698554 593365735 784564864 391307484 575117121 259113923 352503612 534965239 859163992 296201429 778986642 891970068 943836657 457750409 957923777 614466371 654374769 406682392 529842413 495051128 589902849 89023024 382010608 832012852 991034021 303135509 934723302 309880192 918766501 248360144 351967605 466743987 569829952 296514573 337948255 248606031 374620365 357276333 958707172 221265818 871873579 465701276 922385786 38247003 933849532 599929322 784882597 193071645 209471749 721903560 891647415 348926536 416471421 825558032 995230230 682677774 834344063 715984052 803219133 755063465 816036057 95065152 602636294 539140081 945277459 720784210 770810220 572799775 716119050 68476936 313842213 838568896 877500729 244366213 772608605 699910940 844165378 675043861 824838322 810717194 976938024 413594381 421278810 967478479 970991654 646383427 876859906 644506939 977332038 245791236 332156266 566743507 703459142 737150289 822332299 28085530 156099273 983530885 990011837 862518890 973763951 520266580 815186375 704283654 933746937 778494435 905005308 370045796 557931371 338098431 646706003 114567568 328180013 75701230 780974977 3825384 686316148 414981204 966508864 706884328 784882726 266379527 565906803 531556770 597287454 492183140 774818531 422420068 481201613 253393308 433364742 17136274 117881212 197090690 435502188 819544954 981547661 23186666 299734486 637429587 907643373 298369228 593934313 734157564 744880795 437962182 816073110 937407477 970679069 178307229 922590995 595684932 606508956 969387647 994688718 293868200 878917841 641306608 913308784 731387258 771723620 340258008 946889438 60403696 730254279 332680586 694053146 410349610 781022430 431258186 950478596 406261242 991610368 512399753 593278686 489435569 592873798 776761573 793839645 312811582 889793877 88195166 326250881 78352414 458756804 518436978 876594132 338109215 378851528 405057361 587840905 108573588 244112672 916408968 975251165 84994493 568372563 514582537 705245121 209930514 757866193 737766183 829905027 973953187 988615378 731735874 744036986 599508076 641990474 481048711 624686246 997876990 999775041 578268968 875846089 255706341 563551378 644183388 888692623 598658367 894210624 378168181 783096674 915867827 920242312 830736306 987734596 508252569 862177725 959600935 978846154 69127629 784877258 416427739 803917184 709334524 750520906 322942942 673040965 327962140 542082439 276171671 475302295 590374887 648588680 582697302 693408950 847025078 856742226 322703209 980249853 850861736 861881937 141557887 571084938 297520918 404025946 81412790 183188003 853466754 949185008 734811223 942623324 899818262 965114816 168891155 356906991 906286517 912987259 880477975 966272765 146321050 504601214 196744807 236352947 871146800 964350288 67646441 908428922 666385978 908200370 154743661 835773906 967114208 999694357 758362082 827672333 763439596 784202293 143798582 153512883 332129254 349342827 332780987 840441207 673502089 820158863 525741821 995361510 428632500 643035390 408150703 835693327 886492990 905704984 979134606 993586585 147254879 994837503 192522050 784947042 290008868 696312712 992618157 995334362 28617993 334737259 20176783 236956961 883035490 903424170 142355390 772566629 459896026 956703340 261007372 513313181 880009059 891245544 849227902 949490221 244417985 376766702 962200656 985808333 213972081 948118934 719378902 860655548 473611959 894674048 513240085 757134141 677977898 909694901 780182332 985961975 110108647 501712925 400147803 915605866 382395307 901179595 234603760 423970978 186428993 686685809 609063199 997442808 154456230 919174269 352699593 729155497 486108882 846335879 138219444 179717536 857860914 937599836 174136066 440750104 74645913 358290041 617091826 744366221 60046758 557967686 483064924 703560104 312494769 479766883 954636320 990045860 74932687 452511038 730921834 786801461 822758540 880229426 814211355 879389669 854036308 979832015 862959125 885439191 366318912 981113706 293397212 446117076 109060592 489833770 87081160 619605190 356204846 577145820 28510946 850004026 840098342 907106858 576621174 859552280 702093912 975702829 27442040 678954144 685330496 861121552 570041827 712962950 774849049 973146662 181121223 827280804 829692894 832149515 283024464 994155995 6055778 982790177 771756929 896475828 914156339 979134045 945449297 972959129 385221660 710959856 550214245 602950837 617587435 847084424 773790014 823987599 228434595 570787882 223558393 909244409 473895160 503649146 752721545 772233871 101096070 300328848 512953365 941025403 859599482 972685364 587757938 941910807 283717016 322265038 716324665 998818396 789499407 940842366 271143077 365740630 989620007 993699185 53013523 765082333 582515040 717618717 728978723 972972094 978331969 998602027 127187636 292133245 58460216 432601868 162261505 574616019 407687740 532271391 591263401 836396050 14262497 194435167 522668577 818506360 999441709 999717713 102395909 225053744 264810508 888438996 153790020 432917277 249230645 302070531 646703480 832597758 172833615 688722163 416305085 642711235 598310377 627917890 160961213 604784343 84253637 940940661 377563614 599740186 939427297 971526934 434638083 612822717 854389257 999959593 840609515 872880695 542393415 818357201 286663879 999564911 364605579 963097891 551393303 781604695 238176839 872697490 30903539 324647742 257539975 930499938 64702394 992793920 426828058 917705775 429728539 528013923 729604896 772529005 843655490 855150212 664292264 732282365 36297287 977631052 103587934 686891405 998842122 999117701 95970815 128155100 891752319 923349082 361847692 461797491 927298834 995559116 501648813 804615139 923725627 975934049 525908414 749259994 810356984 912357342 494074059 574415110 574345811 914894127 186748047 464073163 724985515 875376549 706593218 767249017 743264429 883986141 587730137 823019894 728403639 810728158 100721095 254590137 985962297 997443871 102296295 693905988 16724670 195900446 279248062 627728947 544620739 689246993 275659678 863620361 669753756 961027326 988722893 994603684 204027336 864578216 793275951 934983995 199858453 325745653 960653574 991294085 762920812 952563426 846736339 956118990 237842796 693077548 534175246 927433736 177228144 203390711 834242365 965487130 364263564 810858469 113281536 575085268 546759368 964511930 670644979 698644150 786811592 959158722 921379245 976935672 109895164 365233378 935277519 992160335 394739184 575180334 913392397 981956255 349289294 614260369 569343745 903189745 918832907 971154854 520718000 693323357 292827503 990262075 628978509 866900963 54396552 88560056 521621395 605535993 639765717 834363255 571239520 804932811 852696940 941013891 143021014 859305927 700770436 930263475 665425068 706777623 174418723 649093722 740019836 887746682 223067477 238021335 728854067 973739070 468595875 914680381 835145543 884441745 657421291 694198921 680350366 992277898 404604993 777833784 921761375 961463787 869619744 972134100 83170750 447740005 523353654 753969928 210152383 410063639 328399896 801723665 414051276 940726261 63342543 640118239 862619774 912787263 2534887 639417832 899403422 973106238 208758093 545729419 901440251 997739628 521535823 744765182 408170333 857307300 52251374 655910258 404039218 846530268 493605335 993097291 458660177 887221920 416517175 694607071 581593815 822586127 90846726 206983172 977463309 987800243 942296738 992023905 430276161 956583057 324602064 805496164 333872216 794173275 280717143 433423974 157472081 691724069 957983509 963532279 631746393 719391634 547615031 884138690 279400163 480424585 913465253 940787420 234158526 616843922 77429730 522597493 820687761 964927824 95149860 390523103 389208725 988110299 553487609 972736306 471143677 560616084 655417243 768330850 519647405 967636479 636637581 982142275 868237404 883345524 399960406 660818183 540122702 751136421 66260402 129134883 236739722 495619067 686308981 998116905 472625357 913357227 719755525 751832946 249204875 593408371 47567438 906530574 844799055 898687412 848053050 969770360 139770376 808949637 549462391 602558308 600983208 759412060 961961622 983981797 755823496 795873222 320479625 432601118 571700338 682518236 457995220 893375781 373313918 921006781 974833564 997241517 284432076 310307484 343975839 969205171 195235933 975263238 999374097 999806842 397807358 525433916 132919367 336880178 432000608 693091851 528675548 529934482 428131102 945841961 990500613 997956744 842576101 985236740 509219059 748326269 794236291 824910244 29353820 512370371 971110098 997135599 535513818 876342336 260070707 327186787 414146341 706466859 586414989 994863332 833201133 933350975 462248232 787281339 653554810 919598127 587780703 726201021 99130995 213672066 271173128 990510760 285566604 483910396 771361990 865223253 573509392 601562459 562981806 770884906 225946248 937317326 270018042 773638768 453716764 536330133 492387775 951075345 769639848 857333303 981022024 982519512 457396031 479244006 759470592 889325151 865465403 958490862 623439212 743434797 185267359 513038312 969869681 972639602 839809747 901548994 199487306 895828720 722996542 791976245 912292619 958425303 690643597 844382838 352117617 693616319 558243985 617982947 35505802 666765148 659203088 684278184 483619831 792694745 647808746 740898108 38993869 160826533 666932736 885162064 734334340 846123269 257908176 969035054 898297963 908823854 836444488 864987735 977163268 997303921 746282318 949377086 14730183 254676216 168568558 582683272 950031890 964094659 107393718 226310343 853411407 880914794 764495506 843789937 421165121 899515440 330684201 793307365 428707669 568687281 110925147 916359672 713420745 879400448 252195029 734808233 389598068 398016278 288860127 952924714 495195057 550899907 413583722 697585108 949322199 962123313 161995059 791440815 722690821 785267070 829221801 910525943 930615588 947516508 700808373 824182693 404079785 764374615 803894233 953030267 268247468 501024387 374477089 964072663 821127312 897551572 548126331 862725159 261673836 825003051 657833073 733605954 580114915 803781276 354874025 553001058 473816807 481880499 852352664 953919244 751785961 951980003 77888622 705319839 711690632 759903715 58569575 860486295 695668418 856556444 202364205 425459920 160663693 674658003 545777058 870349848 843682153 888509075 32986913 594828851 323656340 398014589 921071486 945496787 518595185 953163205 20987569 102416015 202034243 558577224 997254764 998323091 145554927 825855066 326421629 882332940 437904411 499455882 439004369 887607004 248691569 917910641 391365770 866314803 129282309 316567271 796489873 870822406 704970496 875554242 487601507 956828731 302661464 672597815 147074760 690257990 288041170 950510688 960200329 978901837 958880782 981637296 973810391 999118268 35911308 998251339 386084991 440485428 638129062 677997148 245140259 594704773 119392241 743388673 276233066 423835407 2409597 394109434 83271425 827114371 321727172 784218359 675262193 792009156 822162154 936449100 563740910 751712728 312051368 931407029 492592083 585306988 217620166 415208174 199670607 806233568 166144339 566462733 927617692 962763423 18926817 871419953 295142035 453968312 678726446 940512636 795530023 924005765 565152340 779925965 87373591 464188308 901227849 994369451 352166489 501806589 231282357 772839273 435586578 502549920 510695367 827040510 495737765 630172561 322351942 908808814 577226181 821907013 69159748 474794644 817700042 890437135 520536261 529310584 81951358 888710255 64909267 631468375 611227239 933967059 102203648 477184409 87585960 110551250 424491188 475848885 83668457 187028349 37602709 781455831 520240925 560893364 820446738 877009918 886247956 998984907 919377582 970690726 789011609 804595057 597261391 641260842 869232072 871469528 514119996 906994077 652458402 760231792 386917675 640227402 270241445 759603916 402808913 754921214 548860045 866917096 487315242 579571941 829302776 908041902 431211037 627217048 183481493 363104136 381904453 872835398 79797857 824113194 470402941 736373585 745409407 866942374 785232142 970200495 161990907 939939249 644492225 785572126 790083332 950526945 948459484 979598725 807830708 979352529 106811757 806688556 549393927 613764701 15568955 303965321 659829279 853454771 911196858 987224163 388688222 940426546 880068119 948314577 447557899 721690501 563319714 783464972 440287827 913493369 118732952 794659078 276460111 531514737 317503327 735507996 151998809 898375232 827174048 946619988 735917890 969365912 297407463 531741842 572405528 644749636 308282833 599844873 999624609 999695231 352523534 950804279 938398270 958267580 898674660 937419240 575296836 778304475 702532337 803644473 913886915 964112719 826839442 954638349 431219931 829777941 987505864 995281682 837015026 929850462 824887717 831384619 241296778 453006024 968610145 982571635 644057475 748084187 8322922 32817380 471138024 941396741 595431544 632034341 320859965 766446336 503280919 527391447 966229620 984922695 694772413 833094483 435696773 745761744 325537642 910809622 695273087 838090792 792616018 853825588 513714801 832520687 271621879 285254373 690355040 960187459 822405392 894353870 169645745 526711271 411393683 608900631 546488986 751238652 623200410 719798442 708504399 844008003 642678543 686684304 823275148 841116529 799434682 914948049 180459736 503541133 882006666 905872350 70918111 261205002 991367272 993154021 294570016 570317352 648819897 967941685 715287913 865494980 976741111 996287440 650658676 762344394 613322719 656247877 386966143 928508203 605172510 866547939 963527615 968905681 296487441 927935657 554362472 995747478 859588709 958798646 578045509 758718290 109092004 584157156 666885255 916940731 817406519 945661666 820637606 996285371 676725347 945326755 21390136 642600291 829032163 922015820 798913646 867591845 840848696 912840591 216457069 430449098 462130432 950628884 282366183 594706475 315459268 418462301 206254977 563393077 281328172 795553766 549562675 800420950 982204275 999674544 867179369 870832334 900551189 929465180 262520876 798374648 485425080 962432415 241333732 446416728 587703485 809331342 654335051 817076380 231270136 308984158 878712145 897180677 5373962 399054317 347791149 948773459 792938526 830311055 129563928 130337839 732715865 832711960 138025317 428142195 998247793 998635896 121987883 631104885 990654951 995082758 383082447 787863214 589767983 660972662 80247435 790212053 241774591 467722143 524735862 912903890 354732647 537525625 897273339 925994528 750910078 997420968 550153459 693128519 356012143 653363599 802915607 943657036 437734939 657130243 177790847 488103680 317128149 791520310 490903387 504051728 723746953 856987207 222713988 339868578 99943086 179365481 145123571 644186491 238603929 575709559 391559018 661131337 287612502 342230303 257717169 930581710 572712512 602695684 167335492 381710148 933035677 967123205 421892620 554418146 258565569 591634575 207698331 280586849 919175111 942653692 184275972 537087433 289705137 543976307 871457991 939853873 568848787 622769184 697038473 899107623 664400145 692647468 734534954 902375957 71425982 297007164 628095381 864977246 98513414 963138764 855264658 970736397 899874972 906545865 589657627 757406869 149273353 401363910 448931610 919669067 993453428 994107306 241492174 584906192 802699141 804829152 38708392 666466192 922938347 989672447 194747525 744704370 258318036 611613770 749866504 921835283 839215193 871074228 957033705 973937518 275360699 891831929 138801819 567560107 554308936 967341919 310453568 429662088 917729611 954779193 588956111 855712449 470864004 635065200 366739910 719711483 434416312 567675411 771246078 844467387 936476051 995126338 528345093 780529923 878090367 980426740 299725422 494742453 541082959 816518158 603740611 749369536 816773628 933969937 496941905 808447294 392214788 840943378 994795975 999207659 31600659 672749616 27467776 715204598 504691179 753065589 121661050 538450427 181957631 771318694 841114539 954927383 649987295 769660112 676852499 987927437 569918202 819195697 945933162 948196148 375117109 789284260 21065416 251361960 910621693 970291154 710569014 756004969 400330336 637373404 551479480 597123664 334258039 578831256 257948296 591066439 766727748 956095406 32163542 322117411 71595658 117081888 866843977 919634840 63200078 800803609 64792467 447581459 887011260 975937956 720659128 997278993 298196312 950014642 615386002 841104796 998108095 998224242 23834032 620793874 79327796 738090794 51912431 331187103 355343078 992961425 653395288 700969555 285147367 481358726 307272148 700436311 70459123 328062182 479350317 821660088 423807816 661219217 407526084 610284088 652689588 782420575 500993189 896929215 552209996 745720815 640171402 643173798 325113950 558919851 199668130 944958497 114910570 736220312 307047632 321156873 772798722 982422308 451505939 649874294 128376131 439987532 736053812 744368889 468649977 877866497 583519383 833397202 87838775 658263141 22410773 540091886 384367857 957702350 533083121 936714626 343794097 509679796 757643428 914559843 216389323 970893483 82029010 550290920 204178229 454785212 254450697 618472174 596890465 711807671 750897644 846363295 214478475 889067157 872593813 974026550 968734608 991767570 651330036 960160654 271562970 787880005 831863948 910881167 196756481 447941639 916207526 949368176 638554148 882902067 561073983 874081235 89999935 631915457 471800503 526413187 121390150 391800130 547561890 945047227 926500763 973863800 661928743 685854321 760762504 987867070 867107021 985428416 565080800 677259288 778132042 991628633 50227145 729977455 783332142 809876597 992729536 994078669 538321355 979981506 684969078 692226070 716921726 818361125 590317121 701287091 877163743 978545147 459787563 936772712 422984812 579626734 793774526 820703444 783246636 918880537 420781394 494073039 31439811 480737990 907536685 974183920 553759586 605516059 515910508 541081088 350951456 573143211 968046429 980366413 790820218 955037276 173528872 521405297 21817494 529363077 121447469 286656593 817735884 983472449 193104381 748001028 921392490 990967845 855195220 866951699 372780344 969985939 487771079 745194061 656373304 876834570 323132522 751598787 237152213 740683764 275000256 306435287 463233495 772203975 982812483 993773075 448002190 701917169 86035443 226304801 212173802 239760651 114026911 249031608 910408124 984380659 988880956 992623839 699286838 820623092 450468820 589494211 95044713 123489592 810974891 934567136 662714990 703501762 12951527 957975471 185710128 490090981 724166262 868969862 798202164 828861371 662440974 958326035 573329145 979928300 463815912 872690694 195611709 287263881 127420607 323044786 556488895 666356279 976942001 987181625 141307937 197765016 850634049 935673109 328848395 492368023 559332130 805464553 700980895 719154476 895895725 936014060 494887062 707289929 766294805 876194565 532232109 755348589 25391805 845207991 822341359 850805481 831158739 991541150 200508878 428290518 47728785 308205589 907462984 944823119 448636182 896490369 357802484 947656800 319930530 604895052 623139190 708331703 307939534 697868854 246526402 501251908 838341561 917907813 305763579 885711471 366138780 979497756 939185392 975790177 379628935 526958379 261128517 298426909 786338966 854147981 543175550 790940686 889322832 951194910 240816222 640493740 382861188 519411136 849422668 933208525 171489899 761666441 645378592 749165824 435136951 600427657 876415401 956964648 383365483 828184025 614532912 929836382 576450111 771578498 358706082 990505654 332269031 751960749 528059321 806495664 235390769 236780055 90157338 187205065 838398494 847149929 465728425 887844010 910081209 999433988 324532117 650893495 530016927 635909407 14659107 215218422 45383689 992314183 384966709 743963613 355469661 412250082 936939329 947807491 944006193 991281593 698564171 819939447 401462485 720562008 999399868 999638407 265093787 786040370 904497348 922490073 509354451 935336924 533008053 879738501 620699243 947909631 338616903 894723863 375093624 618232608 505764215 815883913 448551730 540948656 680874704 706585059 159609894 561855411 263006047 856243304 346394896 401010404 690285534 928259550 419556906 703420408 44931893 315989050 866942223 951844055 875649629 964349234 722718169 878418872 440733281 981701558 873453327 889698907 796887191 974068663 5914559 866219380 628191838 705809304 264293838 758985123 428851551 670908883 765950595 903348169 211558507 255731745 463346051 695868023 115487957 653345689 556179618 878187019 868759719 923080836 556684288 854448809 426253912 833538847 845362576 940844533 453286266 712483154 192052975 593765519 93399022 866058570 431308455 572827833 641109349 705618543 472630560 847863521 917035721 967563745 796854059 947045804 788199245 913998642 586363797 733255385 377142965 945425661 408515111 899622044 91702784 736102188 142516523 755304336 865527031 937565591 266452054 748719274 646669616 937580287 850271890 945612750 152694459 178733560 100650689 255030404 329936385 424750539 132625406 285835168 622408184 790185979 873665366 876242758 545403684 694723431 502737872 529881897 97838986 328060684 763514757 763603309 512846679 617044452 42851963 460108321 820282933 856580588 386758947 500765781 701227263 787971399 905318197 970644628 350274483 734012265 527861121 903062172 181247163 628423291 248700644 801870936 822950899 971952022 178789636 720244646 619104216 919324288 511350343 974953754 423576374 674498027 116969812 254306769 586392284 820629506 53525197 193125235 519836144 670264374 632560660 727472888 144737470 693430559 874781097 903545268 593079908 620472091 887818778 939693226 33635394 779526696 719654157 813905467 849633841 955476032 187380974 376791415 388048472 538876841 405385158 685220739 60101068 359264962 630489699 710651959 325952710 431542823 289659465 426735925 701787422 887081415 946135405 950538119 271555077 835598155 547352986 629998484 131503033 540790954 104955902 275684745 168658502 349518136 180800730 361309303 78038141 752380904 651002393 914418610 495752928 740974787 510747386 633939949 592087323 738900215 638484657 973455396 587388355 872002445 574049443 897801171 799074988 856278616 187751035 385054964 282338377 328011957 309615736 727656775 742045023 959991609 520903829 836391043 42967761 369441418 637535126 762025264 848192743 930645836 19750353 523394125 984061322 992149764 589812825 949957308 999873945 999899565 562774550 568261020 181157723 960213707 744513969 794878144 267066788 473700889 146970173 853733939 956378246 966944491 575141004 892610719 568222457 701244307 834815541 858321813 356830466 373280792 306727532 459648456 645090133 915052935 60235646 419299250 496677334 521423343 964063173 996257958 262848951 307403226 884843839 949298567 453247738 813349120 143870541 531686718 888689452 920481864 490622959 937131429 875592405 993183887 135738698 382008519 219818173 468033244 699120231 922568479 846660284 925591991 595543591 868436920 717447694 828927101 156317439 923090034 869171618 887613295 719497798 881947071 895552683 963441807 785753271 890469413 796205707 837333292 540127043 938486408 227019863 614275221 966278118 988666824 86733987 913232519 802535828 821319390 748519423 804651181 110986523 243030506 727929707 885936945 931669126 971438834 479359142 840632699 88169464 966010273 266728576 598525471 367686211 487255741 902640691 993401183 233362066 940199085 347624088 650280019 799082602 904078432 995901565 996387285 427671838 795510943 621032629 840094895 566524996 802420630 836386583 838970159 963888661 966296035 696900565 746960795 765480261 908252966 524001979 651990664 18478138 88876643 857642410 980747670 530926347 885927810 8217766 61791037 336696572 911862929 922039450 984277454 385410022 633844866 742371039 766774472 142222871 456808208 977597786 995129801 842320823 975155645 22147858 88635489 601139720 963530211 6072058 241807263 973561970 975764655 306834311 756259590 417667458 888199375 92759586 349408695 289640458 536658679 395156802 502282686 33194820 351112421 538861389 588417354 677036565 786660891 92289278 978676251 776573581 946551885 376352018 907772863 777056546 844302699 877719798 914639907 29659038 352784322 49759953 727440597 199135857 847747635 878438490 906715517 499028554 654473628 549456019 720727631 422717608 524816310 681449288 828802881 937541725 953136422 592133727 827586660 670130701 882317812 828941380 955724780 262984475 609375727 117528669 861970140 231432282 532376217 792655116 969143114 604068861 705298974 43103554 280715248 349305669 987335638 534698381 581625701 157781062 999039138 45757834 993036144 586834039 837318230 306001347 894290857 577538326 841465793 686728169 771226433 249001191 867074449 323441860 504599336 733666354 817473568 155362231 415651663 270993051 677136871 350590384 441842748 955759004 980981731 483386911 797484882 905182758 963874314 181915065 411182331 193963719 684722794 97143333 631130095 330111970 877200839 248582884 526940087 967293225 975852292 742269204 868824122 456487609 566929700 927447288 986633096 712611057 855862571 765202394 858394432 979839125 995580641 19050746 868259846 445143014 833116169 487686231 920346797 505637412 865911020 423217768 998524740 101659139 498852159 653503469 899414116 565980108 912730693 773807551 913920342 303065262 869914000 720904140 933084888 577111649 867265618 664845192 993424945 449155855 680452369 729686752 964651539 566834247 995397981 394593610 625759721 953368468 998554124 770482653 941908769 785617575 967951591 987448991 988110651 126224834 769462047 702136743 778987138 518366075 638533130 201097306 302547308 792044448 830522719 190075450 592989839 155170876 543057615 638083841 702792730 761474305 845007318 771420445 876944061 704007240 864327687 930027985 963167448 899192264 908649214 936692374 991907304 781058560 860248858 253354433 623892400 549814712 710809368 957104648 982971055 437824929 727864925 773939082 950775344 238379557 930625041 828803758 919372015 27383337 648930129 309914333 535400090 398170697 623747397 689587204 951465074 830842194 959610738 713473889 750102148 422830518 515743770 799741593 915197637 652846412 987787993 223895234 485289453 704809137 812021688 341591027 421984586 350603730 952433575 909551258 999651667 345265818 345986242 82529250 705348825 407187033 682141221 619713649 885728212 692847802 726038031 787763427 990520098 822198844 906681822 949091736 957300917 850941216 874959386 687249762 890765893 544843128 720095489 302799768 876714149 375363817 776263088 139713539 148955695 850419503 964953941 813111188 881097809 235337744 377692373 364762903 639381422 572307367 977285992 918575761 950052993 925781650 970373996 830851506 868580706 617754764 957995069 740684670 800839916 221494564 791296837 88461102 198281457 523011421 911901062 70349766 888275129 446674946 905023914 595940335 857736523 405240465 717641763 612449456 633987737 118323616 910549121 163253992 232045274 244812969 698858125 531262985 652627049 310648891 506862415 629064685 834064544 712360281 774072375 640805861 753589299 639691918 924682082 782831004 982384437 183372303 603758140 403878122 408186349 589599959 825216055 985978850 987435293 427904261 737168130 215467145 542417189 494037848 533487381 243014402 619322558 702347175 889042068 387340325 542231992 664272204 852268052 277540958 634311771 261585323 567052896 782571442 793931881 204356543 785660067 386802682 407645098 207563545 708645472 476237506 831452683 686334649 973449951 45245273 640128035 266030162 892890775 470469583 852224674 267579087 813576320 285011745 748974884 150864737 434724720 373734313 681790389 401526960 453277267 939159623 942943299 321987718 982271416 580626480 719768701 408640217 636593684 683749976 892056922 656391018 905861011 848381380 977633448 587505863 780459018 408472307 603990252 817626355 953525850 190240088 593861189 77019496 79764188 720838550 960110647 116462066 278050617 321471003 998723272 540048571 612905121 71343257 951359892 814509562 993269324 951946344 979742487 400631093 639202075 802442339 806018117 702980714 992403951 973262579 981263982 724932087 967990056 264365956 520966499 602045229 889291535 417796760 493921118 740725420 982544531 751583490 903349453 568733688 883275754 677454921 790857728 681401827 684992669 953061815 972092443 29535354 945155050 586165540 602292291 48046631 907010155 816419889 851762532 594594005 991155424 183885222 775801202 995403138 997573514 747207197 973287053 217931967 323711472 655637347 734960767 373907323 568647968 367489632 795412636 389197053 602831753 595334496 756165309 711290170 979936782 380309156 744864468 515236193 653905319 724912966 795572090 903631389 942696239 371442258 889013881 368839059 858729727 794154561 841217706 313989591 742593734 42017142 597761430 799093881 812176911 307064001 525860046 275979206 519627739 751217204 837092028 428676392 954449084 856533401 887554780 797506862 854304716 663220212 788563464 766415080 958955239 73529717 828978481 334356873 729406310 447957522 497760249 511581019 921975038 211293490 712914895 576255225 820788095 13255456 635480905 243615621 772906889 959053721 981299969 345669587 569907063 177277674 673572667 695083704 940152157 809193928 954897505 486263116 687390669 536419011 907769771 521488755 736234497 936280113 968688717 732033614 919091382 591925406 691921400 858767307 923584217 611968169 864463432 330679344 751251748 13123398 250922129 835061858 973408025 870124857 961177955 849972124 887651315 961458259 989706531 309083504 375613592 792218182 815641557 735953727 836707824 751132638 871628983 401614943 812324394 337965173 361802927 487069325 769500425 414141599 670879157 661616436 804130205 842865205 951580994 31241908 172085476 157952700 471812199 123409655 353929925 137388343 307824079 24716206 858584854 200526087 701134482 369201902 806823684 914893551 945281042 197953965 494107163 130616547 840716872 776431743 991470894 165979715 217785434 278040964 914217413 859882009 941533861 933422352 971840355 789180242 886800516 30100001 630827616 774030858 814092520 727265657 968978883 553131524 716582549 679859215 729887836 959508363 988628641 795246741 951043611 734987417 970893295 434641686 840824965 330153784 401242926 606725743 694762159 369374162 718547651 230003948 579979949 307092677 519429223 382958223 402601010 790999671 819011559 102230783 925249567 970827168 993007198 933310892 987115832 493097183 504303428 371009485 673650341 934499606 965576501 874389791 985032527 826026806 879454114 512347890 522261424 213624623 519716354 261227713 706055146 305160598 680301118 88983129 405596138 838974335 881848777 80405457 391292683 202209470 745287523 732095297 992892383 484253824 740236312 824205592 834854169 386079871 892914071 179059545 699556233 909732186 913974664 582343000 677192368 525767980 739227201 831950093 971012957 127371477 447004673 620375172 961105630 180909465 969542623 747158442 902860182 37767339 581927590 80119726 737658304 735148344 876482908 600060652 977477285 531111950 928171479 88662712 272637799 812443373 848593095 605843317 727104850 632674619 787429681 271771322 785826093 388121886 779902046 625377939 751061206 726144502 916422192 648497389 972062853 668040878 800156745 139557324 759799329 139474556 818685812 80005882 822591949 659348276 709874975 215790880 811919980 786912298 859136626 58397706 355441496 4186541 402614304 537747613 785995424 393962421 831613773 600404133 725527913 291114807 558435460 243608985 907955670 622531373 739473984 42193678 167931316 70286971 162084802 671330819 738232156 130675139 556792454 854104178 888510991 375062890 759246503 334283921 934692447 493035256 861717237 617894334 742071271 450407342 473670373 268823117 988866836 303379157 934263118 933551934 957538630 533227137 688163835 168093918 836862152 118353822 569704770 367590414 646730817 627988298 806748869 936059041 978619908 17224861 40640484 636165484 799111496 428107444 932989004 412034466 496805136 719112248 990119556 149313617 840283064 192599919 705849468 91808529 811992855 112216185 390060915 996366873 998171229 524431679 811211323 852556494 918394451 256448299 489647925 369268357 654766573 417413299 772145204 873845331 880422639 8988129 180627591 724682966 858421588 582070475 675848093 499285864 749446449 668705627 838441032 942516321 989264158 308706592 993702785 740817167 956613018 371676477 860729855 618006130 656331481 781210504 881531625 623720661 660018200 302210530 687120515 165444059 558333935 806951359 849437763 272635796 346039215 614891225 853986075 664815964 800122894 999592753 999764130 132137230 317516598 419668304 961436283 929105887 969891650 293205812 331481169 497347308 902362052 601924877 658542646 589713523 734467359 76381765 644806296 59751076 781560209 953020750 985537172 694656530 837461932 200342219 259398804 137280393 521828482 509890352 978828973 580343937 886280136 350774191 655517951 9046858 347823371 65335216 829860085 48334559 792817273 493140967 822874614 523242449 609107808 125557453 818588830 698413058 855071360 958203415 970900382 13506239 891392424 196268281 397101146 159687669 443837461 782061268 880448939 553034785 573259877 378897308 831400909 712845884 979484400 903278077 920481879 161999650 544276682 884563235 966394682 640739879 682241075 396254257 510642393 30063704 922834814 242743877 569307456 721048373 929076903 343392254 678042046 56811240 630483487 639192171 986367610 296241651 426846609 928364739 978030927 663271931 840858449 876482766 918554657 734579741 858377478 32800558 644079797 485684359 526346078 374662921 411118014 850789081 898183769 581721585 633689399 845669832 957821164 392742215 595149175 580178210 583245823 523331259 821525488 657063227 934422408 247883748 481357416 87840900 173312363 716472555 908944230 701923272 928412772 598737952 768644091 961987882 963963813 891712968 954653305 124507142 807788466 914039415 997724255 813038704 873415384 443916495 591480521 5816178 961616864 552204807 750327401 499536291 599376846 930776025 936628542 606663258 711936466 662601793 844765702 494727354 914725344 404048221 824497637 600044619 695688009 13264071 350563049 102490336 757232582 990266397 993377594 943518946 954401658 91241187 870116697 93267286 432600552 432546067 836084565 878826168 889495264 952691665 977396000 576600058 636042480 489591094 668355207 30057076 575511179 246815183 809705989 136026419 914978580 743476171 789930885 553567776 755465850 824124843 975323576 241022058 686538535 757151911 979412516 98107997 105569040 326402888 835435374 28601471 608530005 184078440 282725416 312569219 981512612 472875315 753327243 899962671 985643676 582156875 737567509 102523868 824605998 497992957 607966016 780848847 800569424 262992930 989944240 186463602 787534743 38142665 713468569 992269607 993105970 814401530 957099064 38234767 575707821 108807546 176330021 980550379 991105389 307361655 955760322 7038921 56980108 182023685 755663222 996919379 999908663 317629348 839268549 890080763 941156195 929587821 962057257 298421879 870631144 103482718 460422548 487877597 752509748 958381691 973883821 986035060 986038152 322496258 636663022 694724382 721866049 146187410 420090387 832529472 975477792 951299530 992483545 84828849 96587985 262335808 900057128 343488622 396325584 854636937 969508919 166295106 752546423 44307046 322435103 170657651 342636775 880943468 886204876 43191291 998259677 569084161 759271487 728749052 959843905 835655189 937380383 407321576 962500826 661639831 821076543 553376928 876649994 973549006 998942825 894510395 956020867 120147063 820830915 564386009 656610359 734913279 851338537 868747231 991241472 69321211 334356946 874801006 940932152 362957059 834011067 805628929 860772501 812191672 951861625 850041235 906336271 944204668 995230557 212300145 337970856 321722073 326372521 802521995 951825225 589360032 919377829 898575708 983448727 430504372 611036689 473408353 760566477 290832500 990773636 267408510 856527499 398150703 906124045 614325524 668793635 860511483 988764240 446057798 827473390 756792502 886143641 411742903 995692258 861628542 974009397 486880899 562344522 339780873 721563207 683996216 733025969 604681820 816152742 254729399 929293710 746371628 809272729 194322864 911186042 625187389 873522261 824833292 830823603 439619975 783071059 806682044 974615018 918624782 943413755 607546115 898843102 506763085 944062065 644242391 712565516 572467095 574491901 522471045 632822698 689867316 722985783 854050488 890142558 793214280 832842313 658952491 810925673 899445067 999135709 938185986 970705997 388231499 753647994 996157137 996604084 92910786 251986499 270771194 365866764 448600208 562119532 754525540 759503804 110245786 412676579 649821925 937765499 210831677 341785972 479431000 663223852 442554453 456416104 942815496 992467787 350209654 863858468 6838358 950591051 934571806 966475496 745119502 847080404 480982540 811887701 238799255 511498124 135075358 456403197 150206713 205129974 951964218 989449938 572351779 906382106 256554702 806697997 55097168 794170981 999058159 999890345 532441691 997497086 125140447 825025238 257226076 990280380 357043051 758113034 23661191 940908815 702632750 714766533 284389307 878053193 199600878 389586956 310280089 955750561 831850651 998762335 534014006 587666085 66138298 66688010 182874391 533329777 49636552 55466088 876835879 899478324 594444413 895531731 478436033 868936437 883634935 984146821 310024986 811101878 452850804 512145819 310486834 871035031 12076166 81716672 459426453 790833912 252678885 659275200 107826672 890712806 399752142 839480888 374986694 536663724 280021644 288938271 99527539 257637586 424481842 522199464 64251488 494235542 928061089 987729015 43345811 943183523 255706226 626652074 630791474 803614177 521649014 603053601 128549516 991993683 242451175 888671409 985198401 987445205 549275595 738532754 466430570 836791154 793704026 999681214 264999796 288512704 107321698 114100147 499950459 545128580 994459178 995570341 648040693 851453255 949444763 974554531 381604003 858304064 734034830 836734361 556413808 611689381 914995058 935413793 70805833 563563870 771107672 915975249 59607505 492350054 59434437 239322312 349550423 394450961 696615379 906022970 736282221 954772408 600774119 661781357 28282880 206939817 151714750 202385847 251096006 579921691 407329174 994776166 84497464 905063679 168586746 180632054 468333904 498859463 972663851 981253944 838392858 982090773 957212536 958147925 704827183 984462781 581751328 861816162 502222609 586211411 91742248 95211924 735169985 912851699 432490871 760276998 589312722 935955289 192609077 916373682 915561455 946166470 964839746 970360316 401923084 610383616 269097442 763211617 190155709 422480131 87409361 277154586 17947588 533013804 291146004 948288924 730769874 959246731 713453442 922439278 899559395 944318399 738852122 747650111 830515660 956782052 320087603 546701679 390635580 437547683 482117963 801786939 379561688 383348520 308188271 391402115 883051400 932314137 841480392 845918780 853119441 903695260 826985638 957277300 166922856 532278721 844846523 951868750 143470563 650676114 25670178 966381923 336686057 450817672 704605556 859965916 175495368 297075780 53794009 201745652 256432777 262722790 250585655 614284878 886594284 912489826 316352558 761250680 775328570 972255241 152392751 837568836 562858015 740938892 958940231 962978572 483909498 485042388 58431423 631028400 757195055 971727730 641121698 706315889 522764228 531628521 594427800 934817468 611284979 646345972 121386021 672221498 336987755 828188616 63527219 987611726 367380751 981639569 550840266 804206242 797676504 988061487 615708390 866614017 731676495 855905431 807045972 879615406 965300018 998527244 901829874 972015540 274382694 641127534 955589627 970912489 220649892 352036476 935504535 996851427 268489588 857295344 79493769 238243115 148312670 314103537 113895453 116110170 679434791 770242011 540794698 949817154 523189114 735932903 961346799 991152586 905686761 920435811 322213314 942677378 140393049 449643509 232220280 706240415 883483557 920155545 517133678 830992986 562631111 717669740 882259647 954576719 22793561 657490848 296666425 315653658 857194079 935263991 681224983 708790169 66744882 104701442 827336495 961903099 41431690 298705882 797348734 834726200 446806559 814538819 403146846 497853842 217395635 434833659 206567132 339462030 535464617 590905531 576792468 723270520 798214001 960493699 918910361 996273110 799918633 800169850 514730791 559945785 664981066 920072597 73851958 453934012 993006472 997681276 462015006 995625649 896935014 984455130 182227834 659910620 500821576 577891715 714388492 905181024 606009286 798916942 836516972 981723715 274000162 610865258 258413624 490755360 638543731 851355700 815724472 902947690 107347284 376502692 608695052 983185729 963960223 981764666 122240754 621678142 193411256 618212657 306933905 601202541 250006671 403526706 57245384 727941504 565796120 864061021 833151496 902496847 442186863 880527701 272582199 740287361 459628169 532075718 856085150 889947859 986082677 988265400 810434195 971205579 363412444 797720099 590503038 831264748 911974889 973470160 71287074 415714889 131729760 351527832 258517523 267482974 292444778 875677175 612396369 778730776 710877312 913495205 171732436 755932492 711459411 736499283 133913016 839775179 112848365 761476667 267268695 404198343 473421216 791433357 812980519 966040640 547902731 814724390 840606293 987288241 773500120 831372830 971347352 992122483 499009528 714291101 669689700 899508904 77684501 171818282 349161221 946119966 595975531 884362017 12561730 765944261 526328599 852185152 298687811 521950737 458373013 981227248 33906075 488650848 175797924 903151089 863932309 963288883 825322493 888453553 199774950 445205070 217618324 420793837 744062353 997312003 747808438 813147418 161038478 328356184 457197546 709031377 869687045 906780515 35160763 647302889 966384884 978632080 443017304 775230823 504605814 911158726 141279367 700708265 924880708 925003755 244189876 949859718 543737913 918832862 603294385 715857950 781295396 802952356 649533081 754241139 562894570 950160419 759878106 968500242 534523058 738622866 219056971 999894069 119360571 591753426 347342107 509757586 59948513 189599581 55158379 458111993 288286505 380145030 133210681 408388532 190699754 768381503 8229447 265204532 260386574 655046185 135643518 430657196 817028098 893566095 211601676 454755165 698825866 837543945 919335604 995157360 178175524 414520643 799168246 880479115 987967862 991018536 512735405 622922911 936369046 964013365 684364634 899819870 446816057 960375654 294041624 471811168 295938549 905806641 931603519 968691746 664612041 938015222 236295275 298440429 213177055 676738997 259691235 272582280 125759904 403944174 488796458 886219441 122096217 587513077 523935584 564573215 343256717 783412634 842002731 891400390 495087204 916468007 978764532 979446410 183366453 235932727 934099793 935989222 825356762 982296405 678300958 937445367 583120513 997094037 834645690 987982127 362341989 750760734 591218286 715863226 584120918 942591089 708300429 875118296 122351272 345128439 246307291 828644546 3287283 740621089 434061683 788907344 693631385 754801433 763593949 889387370 714510742 737895413 482789038 905138373 296886613 453081710 519263294 959751022 468338304 851417874 345813823 356669022 714135950 916381673 411263100 462511436 290750376 972201353 611718418 889974515 117566715 185271992 456923161 568024325 929945759 978679996 203580662 299567663 566478489 993615418 853737280 879030658 86224293 896599782 603299001 625190452 582906391 687444190 341978935 917391575 466343104 659574588 293341111 366494975 597033724 881967016 115734798 778776498 725762984 797880361 820354204 953496455 962827220 972356779 513717341 710179902 101242951 628013707 609029478 653821353 403640103 465924956 93769408 849074314 297033915 301107975 517918674 549492191 76737278 95463617 785412956 999925018 399732670 711426353 555043452 594123633 78148257 507949038 269690674 843371330 405493203 677260789 971805026 987879868 212077399 957313255 255205326 275479027 523285858 802471664 723133727 910754112 363693229 491550905 998408787 998878104 641764684 830910965 374412253 941073807 502595843 905666706 697198357 989722631 886080928 889630324 861890786 963931369 367898763 942227840 507349411 640433410 534980613 975127118 767647546 793122927 638376988 882317346 338874330 963171089 883386584 978504826 313948808 611117901 297662040 864881758 884191905 932633539 479375873 870176747 413640461 622260551 183277061 209662592 243502824 293999499 503059603 625104907 582428824 710393619 216526959 333603087 638988863 924630422 579628093 701989579 262274253 614366105 615293602 816096578 859363953 899791294 870954353 984405037 562566907 759251431 915647347 950796770 408453360 972876715 597630960 766888358 949657530 969713153 244557319 624234680 23139783 240315287 797561528 863233850 682974477 989110176 362718879 483748971 743410493 844115823 899917589 982614665 111454333 694880789 777230044 884424165 540657949 623334324 914672526 974275062 794764183 809692534 657996503 691064520 479232850 844847472 531783733 552813918 422635815 961164255 505635492 879568159 929916062 997588737 36285232 108105810 766378449 834034550 760974638 775893281 678929580 995137296 365674149 732076052 149060149 272420161 915474440 954857756 115365461 173277782 860701251 987220749 861044143 959350015 493596557 812737676 768626123 828601584 444937310 518114495 44054715 912786710 473348964 857513327 17926843 962599028 587730374 836425854 121708178 500938685 838734536 994799443 384220399 506821243 832705514 869523447 689229828 709046065 113343254 288331843 940086899 974134623 864724131 948266759 972894370 981661310 905281580 926749307 401014676 840062247 851873341 915814670 289379427 564756563 890807360 910167317 992370397 999981391 184205668 412980055 323629848 593396902 98315779 333956445 445486106 831638256 891642371 913673087 728692429 858411504 843726518 880794818 98344243 169721043 672773303 855637924 990491283 996435891 164390517 218032903 419376918 727732474 583713366 692411550 259211157 752427395 36043695 207516921 71617329 394461591 600790581 722190878 144662769 145924237 819482878 842670957 200109909 350066861 917979459 954535606 542182408 710540947 6709083 313942014 842663318 977774812 127137914 162597680 767837640 877329493 85532096 900327987 518828945 814717650 755939041 971386121 982437220 997788861 78324130 787226117 278110997 928403100 730210004 963448441 302105900 459612855 790182145 971916309 557433075 628161689 387780384 918036468 44359402 703332679 910253129 979216130 483914907 869706515 38505867 180070300 685757755 798325990 900384845 976225423 962587460 984131332 528095403 584794464 546935493 743529519 25073774 376488052 607837786 823513576 735324961 852906638 485836753 838957507 172473105 315851175 162499944 954321981 115491882 589651662 147041433 386811741 561310683 828175275 9787489 77503094 982324743 994755697 738005473 869285865 114242939 472159492 361590202 689625750 974324861 989997421 976995326 977624944 182944251 504926181 971873340 997175735 204927381 540403095 468564084 756264616 158252687 184479780 125909432 385805325 740443026 916542245 201482663 549387714 829919402 993918574 902777978 961408687 48111585 342631365 593540834 652947837 10486865 102209415 678479335 950718373 921973789 922048536 493934670 529110562 718595224 955171089 612503082 899315643 153298892 943517039 606925722 818655178 637333523 686942560 28078096 172459817 550477187 911772511 604591200 622968686 340866253 518702400 419012438 950660043 148296049 858636304 710728342 892486435 368176534 479198663 908786593 962883338 505464132 872163098 388034051 640974031 52185220 151357575 129028044 178408891 353665909 374895204 727458829 758992558 875728735 977646440 285087254 997697719 674620003 770147572 194727757 662464141 7934958 78509683 745556020 937436669 574341907 638161566 162638815 873009431 979432953 984387534 913546736 989471281 419056230 979830962 164702205 675950630 27621461 965385595 126843959 725342587 426149208 519229950 635010850 894669121 856244661 953150058 669193583 915107257 243963982 612293619 609934627 620329794 695337549 997323580 115899849 836329798 402379760 735296538 987932756 994055000 410212594 440975927 121935096 729520027 684376958 737047449 240748838 518877721 676339009 812272786 754901308 854350653 681830876 981495299 992454278 993736212 806155583 879417620 85360413 149376207 951148978 995742903 165400947 348569432 192782308 912465930 564184880 700862643 853787375 881559944 678043746 886687060 687192440 750925524 678531592 847986111 275332457 551940325 480527133 890142242 250700416 610107460 967541349 992382522 673184279 850734886 97721765 322259622 669096143 862260309 382119731 402920954 624013597 668054898 667205166 933033881 964844490 975597808 194150806 902849964 523053009 682270976 249791481 320947190 45935328 656834223 988435910 997484687 162859439 926940791 970436970 986647880 13852778 532940484 731693946 800954837 606962296 973938679 660963819 928632447 848582083 926344262 251123333 359445495 286382042 778907780 445138362 716084765 385343570 744202486 238009284 704982114 987304412 991792416 485473638 955081535 419245357 518528569 453441217 783701424 423064862 543959070 256571834 605398655 413110172 857599238 472764292 820430231 446296247 758759402 897827518 973203813 672174256 888816695 240318740 701140281 219576796 525875760 553806334 614663003 878115354 930009036 98364692 821489754 865753710 954709276 648227454 908452304 911336327 918086499 733267031 999525283 182975259 480756630 528194809 630554743 434161557 468368865 225772506 895460469 96021723 691912932 895785329 968554436 127677929 992288885 94438428 469150853 600092736 613290320 647635269 950688120 95512070 966294184 672981990 968693358 64605304 657470827 469812976 529782796 114376178 131400296 144612233 888657646 89895132 924605914 473434786 845959584 650455860 992422566 82430424 511187059 598258932 703895764 259239881 790938429 689698381 783253549 50667178 237228186 994698027 995649679 637833018 756840817 656918327 873190122 564595228 861442744 331576213 944462576 184176484 423210439 483985645 503792590 286371467 951416842 774973691 780997908 963562575 996610073 392896566 954822022 944421760 944477914 210155755 750549886 310026093 490584181 50652011 796157387 760902306 982967642 856833841 915496763 716413337 841548036 330955819 537033959 865342021 910831144 988377774 994334470 544339028 971909415 44006596 884843936 868994386 877327260 765638344 874471851 835649478 962810968 514704956 792341287 653114877 846633141 684943739 759674615 303529733 355256444 941302489 986227371 482843229 644462651 993482114 996947767 239874146 538221310 379338377 469031301 701718785 983924601 516297907 951087798 590012882 676808251 734946175 874282910 300917204 713883853 217839316 878315355 38971454 203620291 60140440 680530566 777949837 845640582 301585025 512540656 350241027 351849013 468770253 978655187 282205186 658145060 8714227 781544457 160978739 656508232 439293515 568604266 898455765 909416777 994193125 995457992 196580019 718052732 207307902 998340110 752053009 781932567 989073511 990870492 792309250 801362600 31084275 114713413 964545776 983204833 41554885 87974843 518795630 593270346 960774822 999636324 11035494 612314153 392080957 564228544 922050085 973425839 324000128 673863565 148131584 660835207 130563263 312605084 391680156 829409916 670954970 963847557 812576041 980676546 763720185 798128020 647092355 733236245 744449299 984892749 643697822 716335994 78496648 334358975 450884129 491812047 605116526 642515482 267351045 532407730 843307572 851455540 899803460 946810557 974361647 996649001 503062189 721347253 328082955 381702971 529900947 595750638 590887553 694956031 935808125 976534358 846738713 948229922 750801179 932710248 74344589 509193848 278647513 443615446 696034923 950303312 843552729 903083098 872797761 915077273 622620878 837727451 314576537 532815464 734205769 742040867 164691868 978945213 173957169 402796140 810497216 924267382 349119707 528826061 187653058 522030239 310843280 321825571 9232864 78833949 651005404 762487979 942472577 988581970 644991042 664145113 714780866 852994123 6059771 172914179 163089943 545337161 628904730 861515542 557202506 633431802 853326028 994278516 59982470 281501753 409326233 626814092 646126775 911519006 875168563 991448425 397816457 741081664 305293781 404450884 541011667 696508813 144540664 374784901 101383548 328475175 339980072 434728366 473282396 613213368 476221175 664926017 82790789 374113130 536318327 614712692 281355294 912521542 128041389 783759224 527580849 559166978 36605487 950973535 181907167 494001921 419603356 511120006 370945063 985264097 364933068 859761975 89710846 441472548 674063346 733066930 121040330 122363081 360971878 453323569 144330643 563181530 840262571 952617598 41019179 876613807 820734936 892522281 444156161 552393885 281575685 983651433 957192842 981607333 854331714 881427443 700780332 793346498 195380517 755718489 885413084 970708489 136447095 743878678 221131210 698915976 831819765 857455848 189864972 517607293 352640390 630669619 906488384 962231025 964359933 981947372 403463289 514812132 639800925 677218042 868997282 871775608 803327297 857716979 487867163 991616018 170832697 994066450 692780157 716878332 894577905 914762778 485796306 811033178 975907822 976824493 1912127 894956961 641571466 795776301 570007667 591235644 958105574 964544842 452395456 882545202 349370397 925403579 860385908 968657659 635672943 870645141 648718689 774411389 955092309 996146755 261853618 928703147 120530776 723088282 903414071 933066646 130280376 599111538 359678428 642501155 710632471 838436886 906741732 965078222 293304684 932470453 742502013 750055358 11038722 187747441 49232129 643231159 420097542 588100673 349628596 743541631 476224143 842970266 534465949 756648959 1398392 856419356 524709323 690490693 435364303 904664678 985582976 999565237 355403657 813677352 758760172 845843239 539773916 982013866 818464912 919410872 757811435 793791347 686057192 886297814 453689790 682710329 862410841 978957414 20114323 575236759 300174580 903373023 721760953 760922486 255984682 410765032 154642095 927489852 356284593 657412893 85539674 634685480 613645835 962669647 89835740 998835317 476368824 693028835 750051037 864210788 642779440 672718595 274574040 684135157 956467822 972816706 625154829 684486223 137744705 473198050 193866271 687308042 164349160 948859750 688836705 914081307 880651972 979800879 66354523 274577380 605710759 783789508 794533438 990687529 314569738 539630778 71610566 602734091 922231613 966212981 397464203 732606817 245099909 908815720 65024479 69103818 158263249 311807561 675693122 964765794 894869617 957051764 632578529 718565216 974700899 989108695 610959434 699433476 452946476 482012495 112494269 563441619 613643782 813622543 210888811 337753139 735291477 998178199 731769658 872819271 145508401 370415455 800624477 908934607 673690806 772216233 404256827 950782344 942366650 967439373 991434465 996793000 878726909 962215782 380827870 558651956 137530518 906531600 129308053 541920424 257610280 307331151 5174253 426766621 826288574 933321439 366022389 527017805 392513899 668657376 694036933 995428214 464187219 647539837 59231762 675557320 249263800 743532533 273333963 325296939 986225461 996535737 424598570 873620863 974980462 986361048 12486493 88791309 464540942 616512833 103981150 615633826 943985044 956586963 957516877 969698650 69706262 699896707 242793881 717173255 668470502 682685963 994898876 995441515 35019942 196192338 571461998 668726832 982836421 987646735 601141254 788920447 820815451 828524286 137020167 989663905 171648570 803253366 344052064 755068789 142030429 932695926 151209899 417781071 772158029 994195687 527214316 729682910 289905700 331393552 569383456 878575901 944501061 951935854 281128449 552196537 570379678 841731053 484160661 843945772 361314212 727247755 287683787 722446558 539495502 558614141 717176782 890598578 582246997 656614875 953731452 985262463 184991982 447665227 289457993 671962690 712027299 995721478 251204053 324651737 138582354 997080510 995590099 996700080 191213986 400616591 183536357 373458462 928052182 996404062 38091069 57480541 309356495 565355696 102498038 539002537 20239527 283677044 458228045 992878926 133135058 628475611 831622436 911749903 997244878 997539991 614801101 851640121 599066007 969395097 820895860 945090307 637663505 785344620 367103489 906610440 35283171 805016905 528704348 895389949 411392578 578876667 761968342 856388594 847524314 916205695 371879455 545815891 186212202 641028935 290932670 658613160 655794236 994643611 697937633 911173396 825507212 995910406 182344311 991177405 715345301 983466629 792755462 911951126 563887871 715417988 787541934 805425811 888320061 973543723 637397558 980900753 745383700 750853990 541577463 959605845 288298318 629071273 190641168 762179865 794897100 829624326 581164572 867226821 608336932 727669548 98736409 524270914 666029865 961145558 414194312 880057903 535789453 607079792 964352198 972666832 727182073 860793831 971776523 984681082 197861409 645255473 800390695 881406569 616879433 729992892 518772331 812081814 779024907 986936029 388508374 573477256 945748664 951909828 401791582 604803991 47349067 499523798 608175341 822648660 17191380 263601603 553473578 585928850 7726933 868957729 769484623 909714656 330885633 514062761 33684054 674357946 240084866 399121749 400232862 927125272 125319398 429922459 810837807 871183173 563925714 779218394 597583064 940081335 259276497 808304708 977844849 994934254 354091559 440977878 697221673 883248834 812343752 949462448 267027248 358644465 651286237 664087866 869733013 973855630 482907005 570735023 332136676 685571091 997167732 999606866 109214115 598074208 957246578 979095957 836006802 975563301 389757478 836130239 804687078 810386042 236123863 976557222 260069595 856524899 821067256 837351445 435488151 707709684 700597249 887942520 166567948 206148448 381245660 611677653 709269908 729096110 2675489 505495539 616875083 890022130 668549177 974931683 145293876 487801267 317308533 863594981 948334893 996793797 875968730 995694702 82945999 278324138 492369168 925592781 384417034 754905640 305909355 636065701 564977970 839915963 505093808 950597650 966603739 988640858 936360055 953238166 93848671 932285861 393482925 697748019 611909327 725274331 626546360 821452716 590886406 859825145 753729830 869637201 122239135 434300632 405356263 839847059 372670670 469477571 916182807 953583371 578836908 720563418 400458028 963188454 468675654 850839747 644781313 725452792 824769269 967702404 911531027 976739239 408579145 509715986 177401544 635164817 689338041 977975493 184625796 985645858 339887384 976055583 71361400 375817775 312562403 530407052 787861740 863182329 465954783 938184197 894731311 970713975 396362770 813416825 509833880 741145040 717217630 988306851 91341323 758428209 664113682 856944965 432527724 955182201 683649230 878948481 591358723 947339199 58638901 271921541 812381754 845416228 99959840 273470434 644615371 657902538 682606205 964986027 184730372 849140077 578631453 899246764 336635122 365499149 211772423 442239080 930848557 956471994 544220097 863773278 234542860 709120415 819298063 961427972 166263065 664304500 346262548 697316728 665208235 995858286 591057064 779750405 240590668 925039871 881076940 906847797 274224198 916294628 136019530 397949675 461694876 772854707 621111348 875712654 304402508 394744994 949069527 954335186 437366169 495868186 540966191 715842287 722508261 990306228 381852576 827578829 82735283 692080744 258782969 696215853 828689222 860106075 451080071 864436229 352703391 815360934 905809468 952483746 535311695 736756816 745383887 897828205 914134607 917494607 3081790 962890111 722174250 977998470 447867757 685649816 853150725 886688047 731617012 837772353 891339280 926238431 6387568 708325427 127779367 858280284 740673252 874105823 99613306 687689218 870123176 918568113 281516913 922956954 472396006 774597901 463092447 641192329 364430908 414575487 733058920 953449841 797746002 943323658 711309341 869309567 345076919 443933909 366472232 480958430 854502499 885830740 950025236 965365227 800032192 802267845 543491459 555791578 731096715 819566953 522188667 796607031 752022984 868244051 332119574 893219216 66814695 525401137 175847318 705094569 361015595 479378361 840396240 995941494 685546053 903272022 996805772 997247882 141392486 311534567 264804393 826053393 675289913 733299480 350379737 759521575 480586756 543511099 839448345 970400404 440224802 588883816 60967090 366607997 457821942 501599805 437072230 574220479 878912715 909278175 630916099 639057657 340006417 610397112 343146799 883462159 219343502 257732613 313432263 666096861 191203286 976946355 79535455 118070088 801601700 831246949 7831200 41752937 888750210 914137754 593596210 744426368 719002851 974848558 933340549 956206999 190572834 472384218 826625660 877513962 937286847 961652518 701154436 788383589 377251509 922897785 726848128 760819260 920287477 940741620 748011735 847957927 938473588 962858087 545328480 755688445 364187405 821390344 986492442 990884028 830789463 903263694 932727142 940592989 326212711 747908153 236087912 826161759 993981086 995387817 652306386 664582942 7226423 461827325 161354509 473379788 457423208 485687558 451432176 585278652 725947324 866765031 914860285 974067039 300999206 331180347 27171254 32460303 721001775 847334747 462472797 871062951 665469851 758209093 508866127 753964333 789344223 900919273 688537419 755946109 389834707 412213921 871466652 902496491 292291740 387786131 4908952 11815620 419647939 586261835 358030683 681403375 437652949 996879863 936145510 944112374 508278708 691092227 241509572 547462630 688576456 766668433 746540535 782933461 544054580 650155887 366054464 454695761 686709798 911715247 927980006 978470116 969882134 986226160 110218342 140684268 200862443 616389695 188373656 223261711 599125656 978660982 700560097 980918420 365534534 871827782 615304356 876190561 485353060 512182695 51388241 987415133 404424117 931243581 981353980 982490750 34198457 913589238 369384826 473484048 640148288 926162421 294400615 696386717 401750811 879319005 470113301 701858759 465841286 598547183 860362257 931054668 645307037 646949894 15471269 888735762 889448767 969695742 658103947 722346026 793806689 917459242 177255209 512293235 570683801 973935556 60632355 799181629 564170167 824268709 343795088 650121314 769570253 902330953 842728124 849543747 368256940 815115662 348401698 405862735 913094277 927143995 719269974 884383724 568709097 984607903 645259989 837960119 402482005 520272892 550510537 582517728 960110561 974482772 854047680 901667840 810651324 841396153 700792442 832104852 579269653 920399387 459390510 831483439 588896941 601065287 477650404 817281341 154124088 985084045 790613988 979236191 916532486 959591098 61664550 384711509 688476924 712683586 102449528 829151929 847767673 888066242 803104183 842201855 466259961 933322823 663625075 758143170 999362366 999850200 2214450 26219707 744787478 830775835 825745093 947175352 658998872 935986583 853568619 935328522 74359903 665875637 888878495 893212790 213084565 924795891 569802827 615941777 673108076 871809992 21589338 729899086 631569913 647115960 394274750 551234168 914995203 944400868 428082571 995046837 897832902 946808473 839836603 985789088 129119229 567852844 567525075 689005163 335312767 932028971 870950130 951647701 738020298 977714339 828855386 866155015 347784701 578523690 365798835 839706382 451507765 869005044 200742406 362142186 611793192 754115336 582898639 869647662 41619290 496722214 687531063 847841104 212160192 539890760 804692248 972106697 912049853 955594472 114812619 625406320 544139492 692021284 391658377 513525163 132626598 571412855 244120682 857348357 158017959 350609895 81611001 432956356 600092471 840617276 273757895 426330662 362275352 895779978 842990178 927334972 32779240 960595498 579614682 989144984 575070404 849890200 571769665 944067481 413548812 793655312 448627916 672639340 850592124 937642097 48301257 372434082 756057489 787147960 103521886 280872857 685326252 944845300 387394959 565408983 864436585 911078286 934448202 965399957 197632595 364088300 429968585 498911737 726833366 845740251 293393777 607771783 350340994 783903719 176737691 405633194 505338552 820594139 446018288 584846564 884706195 963111291 807714248 817142262 218076387 550055703 771700036 826899248 872975749 977922470 689366600 919583267 198825691 356599670 639680106 879291134 275752557 337655608 129071481 989464842 370491667 759874616 347096457 795978645 144231461 178570236 257131041 349802445 574369826 752874594 910834459 944682000 107945201 520418016 752948820 942199778 809491933 811600708 762289861 838243687 452424353 667249955 180510129 835842937 469237693 508059870 683380630 865755750 787333568 879624652 415205512 768129872 694314165 834963273 473291251 631924159 614987038 803195330 563314978 883570317 720079057 832659761 348738296 350111706 824790206 905261157 206037761 413529801 525366197 786609387 339061651 643439172 265706386 273628373 386131998 934184965 318322865 918632061 845853418 878551916 443386851 946843907 809560386 841880276 188618116 982151017 388977311 478773343 313861766 690582899 712248338 722802440 143663689 263591414 823742016 974726541 218510437 637893629 109770518 794021009 845575915 904368731 55675130 216218661 98899939 804525742 895321649 957711736 704171165 950001000 522551939 542740562 775889072 997942599 55385074 931474913 706530526 925763106 895843191 946578003 336790001 697318475 946022644 975152213 669865533 929261728 499787036 855917232 600408162 726698006 943141458 955420346 740105718 789964056 208006885 579056547 415062455 509878925 771342402 955779302 803226300 921363562 913870149 970961414 309131909 761561051 825287295 941151015 66430922 436305447 40459364 825236460 393762198 528667499 567504656 768404552 325202487 395640546 962381396 967792116 259494593 368470610 729271959 787362821 965243768 967229469 927947554 970298729 813073955 859630315 604610937 870232430 408259093 990624066 739124095 890548658 251945616 682629692 468041574 769007662 537632348 822426228 91116409 931909808 2786791 145556195 683579650 981341980 360777430 774825913 727510275 974607199 387433897 548385613 48768741 805313368 408910091 688395073 32448363 712023384 363567780 635315500 608012248 846632962 546334551 810811655 823922226 829026905 202194988 757722745 921362918 994728055 507200610 760514200 992641972 995652967 67825999 466435395 764725637 781938800 360485510 520901909 596401731 683200121 596619466 682035212 895329598 932479563 129579485 372859005 414320344 634745717 125310473 779535442 821052726 826517705 647781754 905213912 281525671 404244823 7925581 746620597 262253584 639627918 20255370 545335916 739672179 775445226 527754709 900746075 708255342 907925334 300594186 363476139 32909772 45851976 617256993 832574051 314570169 940381575 576154562 904443595 663997861 689569952 999011696 999605445 935467725 970008456 733442290 935374454 917103219 939916680 59439202 787385153 161412687 780478089 869831123 881993004 628342633 651131928 609168354 687577662 719689026 778079685 370472612 720513886 840719576 963166141 706149346 919270495 909795780 963551031 942565407 961085491 66250453 912602214 491946692 646065021 530076620 882567723 172711806 531587350 738726398 878757634 203160719 472116842 273410661 902158571 826487750 945497319 853834921 996214409 800842365 977059135 854928660 893872165 160169528 604341657 91433913 820633188 821634887 848917547 565265082 618677293 616735520 666320912 794580713 887617234 759330284 772586047 820926717 971270602 176471516 681218964 663414041 771571822 674761438 837536849 514569967 744926923 167715978 257549117 12767417 233163342 224352338 507410919 12229018 192737529 379642662 571255703 171824658 736224106 462355725 761557433 368687877 430278529 512060186 999683513 326890869 949435402 108670184 752622038 620642018 889749139 253380069 890616933 5691067 528051482 832506416 949761500 915488751 999277245 418468062 450689034 261269698 803455179 977324233 980049138 248325066 716112404 381571826 420095415 229503506 844395394 69304607 763489582 212009859 586957657 330262849 605969040 876223961 919923651 56474323 501520241 168780965 786961299 101492891 306979179 979258159 985849672 706100877 862017808 245264888 491585001 70671496 641995503 392889792 953832552 349677978 849146676 284302494 369974446 734044316 959870243 916638374 996253833 709056618 929505905 514028145 955599517 14302991 888158767 636781807 885622577 705964441 972849249 195966687 224144954 785191136 933192533 246877850 327809404 363244134 779435287 327314564 559309981 950004515 985254258 384530312 552008462 606974214 897282961 457721664 860838956 57008700 154356137 497186262 592862903 602220886 998861837 509610046 603297344 332104282 633245692 350284235 502488955 884428801 957028393 813398610 897281319 410969544 561206612 920699836 970310467 21045462 44665879 316504016 445367605 325576064 543754939 901068848 901827116 886840449 935106098 550047587 730411446 745731492 836632539 248826522 691055029 692654657 765808188 312572287 975961928 923164692 925349640 959014965 978360913 714136212 877698227 393683674 701699320 860657664 986360556 65456250 505860907 181102227 197852434 457698033 880148888 474985019 779923653 55347280 571248887 98069787 543418360 475479397 922536533 105126698 418093962 601888761 663018090 485631740 799404508 826085778 906181359 280874123 594018835 537078702 797458284 886197960 956298871 767557005 812044907 942457823 949543368 372288552 921851674 791881320 971827837 987287255 993539719 572138230 783186513 837008037 984657200 746459496 939965301 933882530 942285811 456451670 819918418 859425280 900635249 965678603 974160084 168259183 447371724 237051288 450150626 503617108 629018022 829091826 930004521 499840765 811029897 262675066 414616604 796864872 952139546 933321747 952271008 89342529 330606665 555048180 581380958 833762194 997007358 837885274 914100928 366896540 858553852 319066004 410971310 815408894 957532669 899896857 905613486 950909998 953091746 100705755 136514568 15739664 334031214 887768684 896936124 148003011 325074154 171179778 222203270 470845388 560947712 806506067 877094625 619771498 702018272 148086370 186619436 953268691 997237439 597843884 901905293 379365118 593200910 526823444 561621904 777768904 916090594 436841498 797099326 65578516 531994489 166008214 506665987 237333035 593335178 680123281 717413104 534972953 732905218 311943992 478112929 677199745 993042959 614202365 911682638 261453396 450458816 960547422 986114066 663237132 863433172 517837823 808815786 493085382 508540571 649531851 726990052 718688848 915079139 147736008 333005112 104356990 947933705 805299184 954796960 308946869 537325427 279412849 963613554 50873574 853183550 144742364 494836962 558424038 582322154 246998946 836405689 865689348 920870488 726213911 797982044 403282146 812094522 398199120 410707201 826555429 850081802 910362520 925669303 195451903 289010554 354650185 922354091 534942441 790574243 297620180 782125356 879616888 967878901 400827165 681246687 848389485 878775550 769134182 832002004 666813988 990950696 664905943 983203674 549648632 799027254 797179739 983976139 579455058 981286663 984273596 999231788 945570941 983790485 224156825 364130032 670848397 763105777 280523674 286980588 329187870 754875822 285351005 862629494 276230046 426070306 546892866 680414689 70546465 736720853 61630631 249814663 660065070 692191877 321031559 433228734 494132224 627050288 552219916 794322048 306139155 817796991 247178751 905941912 544461779 720884840 191954509 818631838 795271455 831284855 6625435 418337588 87428161 418566632 500521678 863974004 886199188 932343847 704448922 873582074 926845676 946080001 202830502 281224075 811975656 993316303 222730250 390067594 764006618 827567236 823542294 889750228 450242863 944368927 365024223 757157589 714576049 975240994 996435784 996712350 208267045 672342945 290337926 358901459 533684733 918972084 911023572 916654104 326839238 439333020 682323684 983827408 246091678 524107754 108859379 627017788 159912743 344644580 531875576 941103014 176591294 309593888 507924067 633764839 31225097 191915410 2172939 933066757 923928742 944852907 508202840 874455259 907621911 912605182 673172225 864416492 268505051 855983988 396134186 927909800 837637870 875600655 489059462 635479618 981961717 984935775 498138012 499512342 347912106 709752862 690450886 806620675 448992427 672276578 45611815 479063072 437022636 545641352 93148384 440373503 221715924 587435659 562590559 896181881 843085302 922594235 390219192 719104516 339561551 623783305 572251501 846055820 772246186 961065248 570249715 976969449 231758185 536789235 606445174 673646238 808239860 925805809 490459535 854555326 307822252 392905328 920839711 976910811 331455980 390723325 148217906 471358253 24543221 595074580 161281093 270024792 313657896 470307346 231463846 842050961 21976320 565763652 793773131 853377815 890884329 950346344 232859329 955175721 309817625 902484111 914525958 942969880 983387032 987220035 912594048 944418966 309901915 883588228 802533080 962318847 435388112 755037461 469724270 613353235 253652800 482711195 988410398 988735215 571297541 840047695 484051571 601553858 920428294 979877103 174850887 213242240 909513620 936145342 116127101 123560224 2234930 759131153 306597393 951134404 44933879 844696333 989211107 994598259 586761866 838404222 744085982 957226346 362727031 530727447 578454867 928000619 795090940 984645989 843910330 886362060 433925261 692598779 527368516 986488226 852956053 991471036 944790367 953936421 334324347 792110752 220926865 603512109 909268905 996282038 637017291 729313190 253581364 984335622 323648250 412367852 875976106 998690124 187634039 343875023 4830072 681032044 854550979 914915534 678940115 943028506 957968829 985605525 3016210 867818443 999669413 999797573 467944947 482944425 365003522 473917175 487220750 722397566 863841619 928721263 880729724 983336508 391198080 654730943 505530629 750461017 605246489 977984495 357808990 393571209 615612078 943390820 464679717 658505434 936570265 991011767 767958351 837384968 816916572 997269357 877818801 948606908 163163754 453690031 527479411 615880631 898220834 970959627 454639533 907560549 938326076 985277069 68655439 200837946 80391414 131797746 487524232 889571320 598922242 737875078 128574128 455985966 227911148 644527932 745572390 933622340 375501905 683182392 162868865 623008880 421104091 990306313 526055266 928155816 220822837 462344867 827451016 961588027 418243757 447728514 725576769 773576539 389731906 738361882 39549506 325994093 198882058 253200173 260590371 414364354 819228480 865876025 670855331 860624523 21102183 960696127 634336964 847359996 442678425 508488547 774525706 973941516 22539852 321717458 648348113 928679260 304822334 449144624 816789145 889254184 952030722 964307243 556674235 648386434 543143504 908145494 189028771 304897341 166810077 324050653 255805145 357526831 508328641 630521749 937792794 939040584 429027648 643441341 351495510 579598173 994148577 998193228 270610353 655707674 530274015 645313437 917196054 983532395 341734945 457606100 432312497 716301835 585776191 954518906 967506727 997824248 564045059 596594555 779421092 807263088 247996912 848879618 517657114 639566407 701108755 876970114 926899213 949302396 641523347 890674533 431804598 497598608 295834536 405508985 984304413 984373368 615460979 792775394 941459217 959833810 507316531 829115289 758765370 789968237 210309352 892993152 948857532 969925582 744467115 924157911 427401541 721221970 981376747 987404166 225030057 662094791 921127553 992190552 234037319 644350866 881761618 900727469 34292860 293891351 90069167 287061327 573232233 744036801 73990146 682736860 717839988 895523207 644290163 871256673 576259282 739960397 558928401 920469227 714328060 973096530 180461105 965655833 907205276 919918465 604412554 632682111 879277211 886642612 268137181 956874509 50008770 691397670 348342195 652360065 760601975 861203371 612553753 877381094 975311324 982409063 333739447 639524987 565185784 720720760 748523084 825081605 414189105 845203195 619228478 918592232 335198744 543576693 587596971 651520139 505992787 523718487 907914093 981480858 697053000 817633748 395384351 616504442 907619294 988608463 461600680 477867139 711686025 980502191 715594800 864716180 361202136 522436242 493787630 814464307 683962313 992249798 298270289 977260980 863562090 910850790 139106972 785984656 947128767 967087690 860972712 898317095 861812363 957674394 621644321 822757547 529015118 955258013 487474260 899899958 947721795 990506252 626689868 780143172 184322195 520361070 25824594 559886682 912378331 964907307 137710582 494698445 193765534 806698547 181244508 549616483 60365423 397510237 692510776 718190585 728817602 882601686 177999029 413652698 178879337 417710042 256675513 368001437 736626740 785999981 209521736 900201250 887024797 992408902 404988320 419579036 143379188 164584542 254232988 400846195 349358032 374155878 414386713 953504359 43625551 178996430 971820450 976614645 300149750 538512235 827478283 829547577 851267889 940618470 146277665 601904613 178178412 753012965 469128776 750280705 122625986 511514143 208845188 985204744 801564787 881011828 4066666 679375326 416246552 451712906 431647748 930568349 141956706 825162207 871734802 911340808 607159011 895383517 980065559 993332111 240260475 591901134 901862000 950203631 752903807 854529678 546035025 891984014 330631633 799810430 527747268 780911362 965215930 999472544 613098748 781248183 917565342 927450134 251895325 477361599 50078737 280519714 81450858 942818095 490927696 792694252 425614253 867091198 518043293 917289632 976533149 983142748 105218629 349840151 740061677 998450954 572552423 775692758 393758072 972632939 251697144 844380015 122490961 810130959 10817201 296289607 941873531 954838392 825511447 931268320 258849909 401487478 81242060 489503836 55055537 956088906 599848726 925939651 355626849 760347000 74051570 679586715 639297361 680210734 965416929 975698097 356105233 894445344 159795718 641923829 268084911 650626477 759174196 843498217 925283105 968003699 730082777 748338133 414768485 508632436 973638911 975446582 83581305 297158816 871015409 955780506 147142937 251238386 730303552 994530601 394088094 734167685 299008471 849211619 226826310 711668607 523625431 848721753 611480975 625377892 894791449 996895322 507343199 819890601 804891681 911204569 132805132 155371766 853044927 881491439 767809287 849066408 450863786 775337392 97970360 478950239 685329701 781488681 843178669 893881523 14855975 25543462 356877481 962502673 733867809 776568729 917006107 955351501 142997307 443382360 901704309 912913933 121729302 751839082 533016311 577301356 341667971 656372646 230825866 275532304 501589139 945140272 932073409 946243169 404609070 969665596 152909577 783700403 391771851 840578281 690452769 873961933 399036488 604319719 857196919 929068265 527469748 673006963 456471702 954527740 321504049 324616284 17509942 842533364 765142824 778792650 510509917 964833091 464286806 988265157 288537150 678549883 872818163 938338772 317026942 730528071 824851991 854306060 829232592 946362030 537614862 717842950 521799673 866198367 132972822 571403332 289808631 806480113 710233804 995450543 191034033 419421790 782975501 879744408 526951117 570195894 152440621 971604634 11950616 893446293 717306184 746979951 476437739 974677225 276211684 776205433 598209220 992325792 651982990 951776843 580645989 858592862 10922734 339746254 694533339 752650169 3955954 330803786 79344999 601255242 921813515 927237866 945662425 957574266 267001394 669126211 80413299 211036555 447813582 900220188 262516659 925340219 470541401 655231532 917660013 954655102 637530644 883936589 544232894 777807146 336987053 615686911 710609317 934158689 431195264 753872289 790597816 853579887 362738817 758109704 102715298 114862979 972502601 989761055 878450147 908139175 447616810 988218424 767755186 829265437 478103913 993888640 381719599 550359440 40359766 817336687 22785085 579333390 121705724 243516317 951165116 987087620 380804256 571655847 436350848 958296231 939484112 957803686 613480523 684998616 976526055 985292202 157982439 848830692 785651947 992891919 236865838 751122862 755181582 788461679 962613857 968618611 439248926 511093366 508998355 835097884 610194603 787115479 799016186 834819528 473008708 760773892 585372511 614218107 293663156 500161600 147370592 696000817 862382318 862389238 441942898 604757825 245006634 997043546 695822846 954669531 240505427 530498813 430048176 733145424 190458895 516598048 920886761 964960092 487733337 748948394 38384439 467402835 155730793 596858867 614402601 848105229 827949316 830395023 552424630 741097603 701025225 954175792 922619001 982570408 384559737 420605135 247340578 843994608 208976448 972558089 89867667 967461043 494469078 991651766 419820002 893880825 832397823 959162322 842218577 904769995 911811311 925507030 985080052 987525183 178901793 430205666 132392389 518879116 953584500 977959609 241165967 606262097 792869726 949898833 636976375 933545374 883627818 979626340 723944703 966831765 712452157 841654805 851436648 946164062 469740065 623655139 938698505 948370473 386892249 694195498 272460463 826331330 158633105 363286373 13284882 494597766 535681253 918422185 81363415 315054364 224049446 981545218 609530569 958164588 227084811 708393250 428264408 546960988 354193972 562011421 283692557 564982136 531377558 900673057 925561736 989281774 564577501 654396696 557217614 649978440 802959106 875228776 728002840 992260231 831129046 915185582 48060399 737518727 81379005 464375463 737359967 919248038 374382690 464184398 229024933 931668527 81404583 515258438 103129721 658115536 450587718 714579974 79457730 95052406 410452484 792577178 792553125 881675286 448943467 582767222 253178442 835857048 873679963 949088641 115393314 902975034 65051127 514783581 355537403 968873008 979114491 979946203 736817192 767761338 629696948 780899737 773311087 876157588 620197503 724771697 327027817 730854324 159799923 303074055 732228189 752601081 499899338 916351819 378511056 696957178 776414680 917616612 497858312 644923023 77454102 809839835 720786695 839853622 228439207 508174758 42899742 136544443 486712052 975664349 645411822 828732863 975148565 995796213 440974158 825103780 183532292 784600828 167905886 197485664 245135701 348608992 283336429 527131102 286609660 622416839 848544892 901831921 758206048 774729166 43711067 802149020 540750756 631223178 213359541 375845143 257778133 782533515 592193003 636889172 962581234 986520015 271978534 846580311 933921159 939406650 934794622 976738099 772910549 871820431 179631998 643170817 96417564 312175464 617575565 785903413 723411163 746055653 328763724 358828877 659334334 841518297 586949399 636866843 309631233 714587797 981770012 997487002 100623890 381894266 788452168 970990307 266000105 990677942 351350532 661106902 121349041 248937252 174361055 917112419 317416254 610451685 684398511 793583431 290025344 523458225 967712044 972584230 705360087 920198345 686096816 908928889 660914811 831911518 778452612 894391296 877992748 901149473 822777596 986478387 319326223 882518396 83292022 699484719 8001724 167901366 769498003 875428426 697197950 877459349 845840076 952803058 112537161 797569446 845447654 847493782 390607195 694375932 48496070 999808925 939704990 978096499 997123737 999732719 8844445 197087177 672785907 777380717 426640531 751696559 154054281 623054250 985305056 995229269 157608169 806983079 807654085 811106614 606559066 819935469 956597209 961946724 385999890 659947273 474888544 916591791 210192364 959353586 171423545 395521001 316798365 865738055 958753411 975578592 256872018 913388524 225803864 272162598 853424032 923743193 496925212 716474419 444767873 614825398 608698266 650045145 965967042 990967158 224572926 587185389 572637261 778968156 153502655 418294064 21813664 393500177 187416126 329927362 366284009 620649929 3913699 981228272 133852021 296872866 311070939 818479213 472502548 944905038 474914870 669456148 570903402 608643592 950688046 966662907 653075463 680970626 615603497 946820071 988211159 991650704 421758118 610231074 842515046 897940553 482697920 730629414 867024652 886223917 26147372 881932068 479257178 612829918 35150203 716320081 534333468 606321499 735884826 767581147 927659084 964447579 19308623 823798877 728795252 866171541 428533632 759353142 572993268 761680651 697024794 846127434 800205267 978019119 119503334 235268731 836480618 878729438 446669320 845020168 668127291 758463627 350168739 900667616 294491021 651026638 482991332 569112914 271641468 318143390 80208385 874080209 426967973 709522420 408197954 651996736 118621385 154654307 535350129 778971620 361978420 710363389 746553646 864326304 790802468 935914078 870328701 968622916 131757588 181153410 336339743 639380824 100753501 839456485 162341968 444540546 150779856 460454968 508750099 539594349 599520050 764831210 162786455 413790891 673871637 920559131 191196019 993091977 508327659 662823956 799120449 895836251 318013847 827307880 583052728 995281681 153310425 929902045 644150407 722899315 115014379 714155348 335856866 896752356 940387745 994640097 750651871 918150480 870792213 997339349 281577602 850905005 953097185 998791150 31380745 653494104 706303236 824263158 603035283 868709432 718583263 722094220 361284495 887005489 505220157 861193913 341154031 450533602 384595884 636819009 865968590 990997082 269202559 568969115 854761702 877926727 202620812 235966774 855878928 937965774 464922721 813914526 190886259 985951608 435312100 897032917 85979043 586176112 501851356 855684969 914126464 949205619 604076232 871526593 502438124 696958491 153411765 222248891 886350489 958545032 591354388 638050336 7194403 8969581 133931583 602184374 903179598 981634304 761225105 986501859 601501944 886940699 956603455 993517020 48041079 823609270 856128566 863623964 160265375 725138439 339851874 486987795 41628120 737957481 256593013 832577474 778129142 985013371 19143340 255969766 595114005 614909212 274091190 912452388 161708214 233821287 412092234 936302038 842241311 966692203 320499689 352148451 370474511 749230535 361810986 999300240 590315578 836957404 706124426 873551427 221184696 244927222 761979261 865704295 541887725 858732818 807807221 956019172 195106741 207153989 408257098 450287035 989978550 991389838 325317518 777165484 862618811 890909258 375638647 948114782 320245287 619208862 972392059 995247217 576493960 851136932 32679946 130646514 716403429 785863299 574511087 904750277 498240421 940588329 45322786 72294044 477693415 572403051 710009703 940027502 358956371 603013287 724661345 863730662 948489238 981948722 373166020 724629810 821177405 947434447 200447880 793460275 59855413 741614034 553359482 737768733 626480946 806159432 342448719 649140492 768949087 825434770 203022734 908160600 686658915 979387072 293190751 307864846 811458599 931859964 887793682 888604165 417002443 721421077 636425679 776365763 22909667 540822711 363795277 621118654 406998824 773827647 909409512 990414394 189859607 490637711 676998242 897796338 199250011 710344710 961877959 969258202 376090326 695972045 585765733 998778171 766132096 811851620 234216105 937216356 888861808 956107257 601974842 918132209 231637897 516590584 648736718 687118017 997496537 998811340 682097077 735384084 175504827 792709496 59241843 100265872 258350411 364907360 364090311 441355231 573660241 581659657 579684406 991097701 659498215 892134751 721120427 741943216 326209409 423255025 789666633 970594531 456410058 761155095 95651627 322042236 699077472 913959989 636096181 663534639 84682487 733515882 241197148 634484812 625745320 691836340 652763468 893848219 670358278 914806341 57692522 135770621 463922449 758668518 231736742 842196402 568678233 959538674 907966607 971999920 270306041 897915615 960674721 996729740 223156499 252901389 576520567 877485363 240624017 745313185 496813378 503287959 735388367 849447834 961328175 988033034 141218039 271992570 208317147 881731661 80407396 84579685 803623927 845139595 998471612 999375339 226874539 302925046 50515073 490610612 118583997 271668516 236636564 274117340 879481361 879566994 153043716 155805568 199953549 494881468 756364832 876602635 475418528 649810204 352277039 805776775 932350812 993476715 550464865 862536803 651293113 932802354 74724305 301495674 728840598 824925636 738457250 756791187 493442729 493488559 829882604 981635013 32364187 742084689 570785684 946519541 589458842 641332959 89278527 783451001 727385583 813119838 340469421 474171539 320334201 752831343 173822157 848575234 457714545 596523821 465086473 880324830 680213101 807600077 604504656 769553675 213847309 323022122 251728369 461155180 862328334 999601654 87353320 172455592 797077268 914869989 302353076 444011158 596429292 720370901 286212003 931095335 755154183 966497547 704926271 771691013 932549140 964372115 563190559 700763048 552546208 798751463 18644147 325054507 997721213 998974660 778716301 846260909 520889733 642885744 305696202 600681945 150455454 775003065 558607190 780396686 68863210 795173362 203694784 399983067 201330809 225025315 656019640 892136199 677594590 948860812 333576975 750815980 942773487 973104271 906157947 945364838 763845984 820628177 744188923 909356631 772812253 987501517 90613063 196015732 514739221 830239697 55016457 470868570 574262295 816029223 43998600 333516329 852753199 992576603 600996009 742265213 575681713 845288644 9736055 222102274 590590188 741178624 460284258 844599023 770456160 880352319 470255739 528224330 918016255 923981994 644952820 934974786 833097974 869512601 961104683 994256500 640763194 915309812 27578631 297563859 913852347 978148687 981803423 982835727 773417705 834060714 371256051 771937416 704313640 736241050 61022903 244929172 412409060 642219987 323484554 426901120 504642789 582324443 551275034 766674439 158948898 238179698 150337209 475935309 958205447 989113619 104189703 224941177 311266388 800760176 799621101 830235638 807884884 813780093 75963459 168103757 459350123 832463238 612395605 772332481 131268314 886419391 468035959 729199971 412002141 736038434 375615352 989510215 106644294 950557673 948836239 962130276 862381425 958194954 20620447 40113959 188498552 316509696 425953789 699165038 551763663 912064898 441975964 814966211 640868461 858669835 279621968 756991705 702681637 934803133 625038687 861600483 343694505 878575883 298746653 558242682 490628241 623958369 783951385 797844400 399538600 522648943 644437722 958296487 699135179 790069640 33832596 421109967 56849497 821402123 790572240 875204763 102958448 339235669 581579225 827687834 195238393 637088726 25754232 611412281 506180050 785737863 138557386 671057894 729641690 920297117 317141446 847391482 949876438 968859149 401627044 782009230 886163935 969717323 544022047 716321282 217255117 490535890 651423751 769560770 484408407 486384372 346931518 491673579 119296004 123872479 49701997 689684730 54038278 211769820 503705548 514962228 663794911 882862784 783962635 949822076 730206843 817659529 144285812 399869977 377665755 632938023 984883609 999617360 398342298 711874973 665371499 812586001 539261621 759496529 22123060 860012309 573203419 918963879 185306784 368260479 918406419 988865416 352951865 378378331 684219193 872444837 839422154 963480066 571586906 820045977 478930304 614110168 744829161 997977357 576316088 854271308 38106127 366183263 269441819 731626631 386858821 833909023 379013032 904373722 177995469 916091294 917470249 992740013 829429444 964950456 781267742 994840099 421214303 657770212 663654371 832075429 190813882 627725404 305847533 953607715 723278976 849782037 795514108 820804184 399277334 700998419 886763344 941422585 881905418 992412490 380021179 480832753 465654901 685286918 801131723 807374139 621910932 761966182 542900639 818381698 68088967 675790706 48134078 285089079 491046049 909532947 952088228 952231420 826221888 888310394 957408962 964836929 319660231 329397028 859169875 900077816 140053910 533796979 933640855 944641910 657109007 811436039 938316052 969905803 54935088 471898272 747943364 913037299 467803216 545271206 337908645 780881351 134121609 423766777 856930324 860302533 26339681 358153174 9950021 550957872 706928439 895584229 479665177 640321765 580776284 583416413 856773097 963793736 689584691 908669505 698021098 771396813 986158639 990997263 261913343 508838112 717496777 744392576 446507202 939061379 575849513 854173452 220839116 615869995 788685960 790286198 363650597 773038265 213660551 723438450 634853661 950025513 553552081 710270833 423121021 458217574 649864980 690636619 668646114 858240549 884062892 901087335 701055879 799280410 873788187 915603873 888178558 941905745 877435189 959768569 167138383 514156006 613540187 668256536 451205961 796413097 885893471 889864412 95335566 791338485 105130078 156703485 520559127 789969151 798686655 947079142 358042431 959906008 794428416 891159740 959417005 981125923 694454178 908742161 838470038 901716272 39505611 154793058 259208020 339325866 955577633 965532110 631988916 872153901 658917418 852843246 56008786 329743991 760494071 946295494 720020498 905724248 939312664 962797330 764812054 776304283 599101044 779862605 467030224 777339219 872415235 919405787 110043554 669429494 78288527 80203438 889237248 914390203 909701073 944221075 772225006 985701247 830686643 967191833 373388611 734953795 837416300 927051392 768408887 818179489 343165508 817140196 649870495 787132970 231711470 910945177 718334190 912115563 857771921 867828525 755108240 763017736 646560968 783599429 484213726 597844278 150595637 398526948 278132066 577788905 499520340 876849207 382022650 746988834 664003825 686241645 622509412 904051471 661100397 728973694 432193461 483309378 615627899 754566626 229442477 980323846 326335642 573308889 917249161 988889778 674504204 793869732 339513228 926494117 82147319 590677696 824207421 890851377 308710384 637366464 337822675 487715401 188685365 569074604 897031520 950113783 351251536 804861440 583484103 986631514 672905416 977365862 366632276 443145640 845338209 987135101 945337928 997832777 530251725 780861979 620059551 868959551 3190274 918323808 821952591 967177071 360580002 768160599 12806917 823870168 359051910 390910298 934715743 939442001 804289411 865138992 124017329 721388217 646674445 953667171 401883074 740157392 517026310 724932533 132937417 534258390 739230505 910429813 924187673 951591485 571192792 974640774 7452852 309647949 669211398 672757969 990230463 997342637 829974244 860977746 637603789 853143537 701021687 971866205 439665637 667553924 714775349 993617953 125048250 760563620 243990534 821258776 800112178 831502692 906134366 972952767 86618414 943167075 155535484 637978054 228451051 248956226 349846638 446132026 278127163 574341342 677065868 878607078 490957198 615355322 526423407 803843337 865914009 970589878 246625812 585356123 844635695 952277141 963389040 984509700 833696681 897414858 89386616 765784380 609144674 880202701 254352738 803944406 293798479 945992362 309038945 486705371 892213034 984591765 118853134 616352168 59485557 420731386 697254894 904010310 7841845 395175927 121622744 672197198 356110684 517305765 226521728 836984912 160680775 890954067 764951949 817848407 857302885 898391445 114313782 917775512 73810879 270838049 435237094 902993803 165135433 619574264 799329093 806377739 592880350 931464559 287925280 907217687 225029313 542206378 455582579 670474865 689647736 869250919 942288271 950831320 378237077 386514005 40415712 159403330 10532750 125976291 699183973 827418017 805843282 813232617 418908707 530185618 411458343 854956581 511599282 515244367 578606408 743813307 285308642 825357618 890487908 940251355 956084003 976250438 59626522 766975392 262674146 958421162 76751675 959307662 85742319 608963187 237676335 529847098 342040441 461337512 575834786 854285655 37833070 534011535 89516330 258852948 608022584 679151763 222503845 935201765 843200161 881288519 469523834 495813393 887507481 897355244 500970181 675560123 635043217 710281869 139208402 812764506 385369035 833656833 287376165 822419054 86152402 800939017 887093012 907186291 889203482 931548073 400747984 548577511 410591045 529758039 450401816 582250508 396200561 900968169 644369067 951518691 723656581 985713597 556694421 867853734 867693019 880873784 251686937 730282237 212834940 571516856 200281529 825781179 988768223 996464098 778671543 891416869 218546289 266701906 991380771 993608988 260840476 526933422 925853752 979250267 154600063 791270852 193105103 612969883 83290588 565926167 648903330 721017610 192050236 463425415 140845831 406945809 766955663 959449999 51198939 620335636 480427132 632361149 38883060 442904765 364101639 888445148 2371105 628860022 796555703 801479491 689140767 992658524 3327944 830564678 553788350 934441205 840309135 999482292 469613527 976320670 349062804 606428595 796301049 832235249 421191567 523059165 37997099 620354822 249201691 479361993 185192305 591873896 106987950 731026426 864872899 922104674 72536132 363024415 790271632 885908022 129966982 159259345 510136487 617350708 243852036 767329375 192360616 747018293 460744416 646015504 531416675 671229697 140683737 504029063 667379357 682455002 466096763 748134694 659084408 868778322 661828913 770164832 721548871 773245975 263577148 435338727 353091328 855847390 707957550 795388703 588743111 894761471 173020732 354147129 215135171 454853409 577344000 935436417 588440815 763845827 939237787 985282336 396514299 915818813 995115133 995276097 437770489 528983395 882987343 887493888 452245196 564010327 118603538 269687342 732703451 910466172 669349784 799269244 501542405 599973230 970656452 997293694 292349212 297212378 85034678 866791230 430717005 468404495 868065579 965472017 782778511 807967412 594957115 979904474 957145484 962686453 622816433 791401954 202685107 590045517 710232525 736430334 804506136 839122622 547632395 558042803 58288458 595626175 434094227 440816778 541759149 738005817 110789779 612344138 161763024 329940155 950407051 964849087 284526108 811281963 553322456 734236681 8847738 878886081 278495981 767090965 210704101 928602724 496513625 979703807 520842603 554344197 127662748 442932743 774793957 861854560 435577133 843216803 756905374 858078064 383613894 995872512 643318375 993052707 397648269 453259025 193849300 297793113 844854207 853708701 899839911 912366758 253498382 621384484 219647785 592639055 225286158 955680775 662771974 797123261 80017285 558027189 822889328 895857998 378268277 428341751 149654744 279627071 308676181 643485349 933216577 973729712 171343665 289014522 998733782 999632572 209571190 311781605 99526777 411678458 921582484 945720225 93212559 275748972 125686487 677560018 206470666 874259432 595318103 658822047 706168422 953670730 536113565 961981055 509657936 897288040 696037826 902096134 688302298 849820450 860671192 961300874 66525591 77660793 986781289 992708021 917333877 994880061 582933109 629290116 446689717 733285565 759703237 986847667 274143650 631176312 883101665 978491301 999970020 999981622 982007812 999141513 366984963 704046338 621651200 998207048 732534490 743286422 966027548 967786458 959950343 994908602 785495008 907905799 97237213 352253405 64901288 855044910 557303242 712990471 754139686 860523562 594972085 759465604 108671809 115710241 504979268 817940556 880621061 965376518 598282987 836596098 231858015 340938594 626989454 638787510 505012161 953612441 449918707 602812601 756818487 761916608 846833303 915656726 252280251 591525488 97623961 528644189 544586544 767097625 849691830 970466160 827467530 843825290 555354126 620904763 74266835 904271179 923238144 950650061 888623216 982814333 222274485 668737495 828666379 940982110 119215444 253299578 809929645 906273763 2573052 907088461 542081291 743903168 635663089 666103024 227920326 829353610 222331548 442074378 264992123 954945882 497735195 548347228 700129045 935619178 241709608 263429122 467945813 477075469 892604056 930910949 914089289 977890856 307732127 438951665 985337538 990652715 238868285 872211184 83354744 131883642 564019417 834235910 86162761 215535151 812840955 916970865 799983853 841842829 218780078 488388488 752543035 999038067 384984207 829816563 267822609 580960749 778316917 875467059 19996983 35678973 52540059 430572727 979624948 997740140 838853677 884657131 737404797 853334456 527737373 805582248 556158780 900402740 269104423 769499662 894290241 994109123 919763727 986445687 801639331 809493273 217703042 713651454 383598064 719906143 162027255 529180302 558263417 644020978 641490896 918382627 603576905 889388642 731976280 860731155 966174149 970256805 786763879 885819613 865302731 871680536 56827743 162897350 748667429 787723051 66747996 762613710 884793456 896321404 781757780 814198242 615911664 922758357 916485405 984205785 247972110 271503335 923098405 987179861 743002315 899304363 517000171 579484276 571929693 669999484 986675650 990824430 364349581 682807056 458176747 780947923 773329491 959540172 145614117 722126415 762842332 826081974 999384682 999872219 282422973 301572591 443039566 630126983 621584492 737183366 112310277 854032938 612190491 775890380 525724053 804188330 107804459 865527618 278831908 569110945 386422815 581614582 504921417 975816533 10573626 577264286 286177904 898003407 657928288 659415574 990566106 998675948 216077865 908752952 544168229 797261516 416310650 703902006 62019414 901046142 86975443 238257708 6030127 762145874 151053366 855147956 870089603 959966112 234506856 920642144 831888581 910559975 193891968 306912375 384798095 691362289 273175527 647649196 931854303 970255596 727241424 938095671 233259486 346971372 792458878 815859762 921982018 942896940 582110251 938146771 1618039 468478856 26417944 838043420 494175474 833916882 492649687 904165058 617217345 955593397 842404665 920387688 419040380 822106562 751303424 872048765 678414572 685685500 832022519 905199845 386592206 568931555 48619843 179934671 264871260 348390095 615465113 874323950 734682695 952136900 760640984 951969603 742146160 979234663 14839423 615206493 245821001 735016125 376545848 782894588 193836932 954429329 700529723 727269572 478825255 536362282 884397168 987957400 798573786 930420614 484343224 694592131 794613439 907169057 396395451 728758685 236251150 853379198 423466062 425823824 26576372 78706962 572565201 672865007 240375297 431310778 720595822 885262269 629230127 818553642 432086717 956315010 88942880 430462369 625256466 700429222 528888090 784728688 216353627 893202307 404205761 970754348 845037050 980247837 680402135 725028199 635537324 748413257 683781745 746764168 329468799 912955490 588404521 998845267 676976172 906519935 266449341 561803147 596983955 657508705 229916590 578347418 18066777 581514775 314534779 587909464 580566936 828248312 401560921 947475068 796350805 850672431 241672928 763422395 119963880 436481877 745380673 928302709 900774121 987535805 130828845 220272749 31181159 520273928 147402 675055695 794016062 927015631 144903531 797284965 47850675 143825142 360989 579190495 769121561 867841832 469110583 908039655 720338167 726733496 461976633 595010366 597063269 907239998 345787202 815464845 828126753 952053275 279869406 566824969 139305840 292014875 631639410 778134521 888562416 994873095 853968888 904552797 848147025 909484681 840618820 947972583 317846277 644474995 952202484 993937904 192329782 769673436 241106177 820833864 481923554 605253534 913809485 942672021 445860546 724417824 313600789 967901649 185805884 490830735 467894133 898665971 400227937 801074256 266202440 985659186 745199261 748693945 987328483 990194545 543338970 639532643 438304550 704902892 326408323 960895358 692370790 997763746 21821813 187838276 764442185 820364252 718552980 732099085 243175317 892067465 544202658 782490987 477717183 800798485 995592530 999429891 43890516 158075238 536091706 940378543 226875128 822396958 339521319 610774220 582003084 788077066 828558844 910715162 352512102 983279919 994117227 999366288 674744424 910052694 395213718 436391720 971138366 975185455 486223482 582891632 625491280 662493447 46420623 561344059 859178529 967248939 7910762 443030572 765031763 791693291 970242619 980960417 433421958 847759107 580929800 942915618 997895323 998430290 186604508 293305696 80756156 817325951 253601422 643932878 105862802 549901118 205202425 852311500 922281714 966682703 168923862 412858243 747724537 899105206 942713701 990792974 322829624 907922055 486295644 690018900 384079776 803618404 459721865 514755778 255214070 402422903 260757951 661821797 705497838 810025730 163313817 263489160 92862016 723849629 357371909 988516513 701830414 874308132 306183065 623922637 416383382 873740881 344000928 581270965 304510727 655220661 424704680 534570358 429670033 641636377 865538304 902792178 725365339 882737923 764232717 768048898 948366374 964954123 805935988 901718434 952894349 968710065 329787990 677854977 814699472 920562908 85014886 673491192 52996996 562871007 281095602 812146080 172237802 819038356 291008765 885877496 359739030 638060162 156191913 483015670 66136067 608394546 848610223 922195599 530718475 754111055 175247443 923901223 808577396 916483725 355414140 491941451 958797048 993723833 312316611 852178633 938113848 949260776 477760104 975499256 761436356 887742541 905060410 943137006 543210131 883721373 839944535 965475064 116071802 344532372 32455736 222756178 699596862 751707515 361428002 396879753 824855741 917450346 53503948 775449294 335105022 750381998 731542389 802907692 305549255 437858044 550058670 583524319 810375051 838346407 177956964 298319874 773642629 899496135 809399044 921901425 679820523 775971195 305004654 615222751 636339481 693402332 925853488 942060940 673233880 695353446 370116865 737571292 753765393 983500572 508872167 680754143 683729315 938092831 432631644 851260144 4280601 897835963 242947042 594389914 318752660 394458098 388742298 555088302 492841137 657582399 403979546 544127534 837445419 910843923 213936715 295833159 499559426 992064040 613465451 791070977 721565721 775665463 901675924 991889671 112808904 808937817 743304806 837660737 909853340 946562757 960244371 982549721 905989113 954681137 527306744 917817450 738666694 898527438 923688266 954419600 443968133 717294641 775355648 907150028 222354971 922954710 252789880 932892681 825805208 967027142 406801117 670954578 230922351 747203920 758716079 928534451 155803085 994984064 878582917 971388056 624049501 873884784 123538356 574487044 572036639 999351339 75399633 490468012 822123486 867353796 221289794 872630945 623168319 818157324 899138547 994155242 877137383 913545170 64728446 78888379 310954655 942407651 349850823 832376889 773380961 995577069 307769002 624130620 466001558 710226127 213648344 756649353 64869742 576742748 39384475 248510147 447220367 452538600 364847561 872879209 695413675 716034839 103623612 120768657 760242225 950247768 146919383 257232830 405267793 678173163 276531989 865472549 576776558 783176776 938937533 983084704 603851336 732538902 510724357 646522972 309185748 399871453 461432921 882730461 19364670 240824667 41996533 410238674 691062657 954088540 281780106 519944504 692953015 784445889 149767063 990180408 693617464 803787234 111408218 314834244 484047515 601698562 771925030 861611007 275077515 572948849 177196224 730132909 136991154 400431314 864689036 928352120 198649374 730332270 139335660 718174003 747868433 954553082 68429617 588974459 841637969 975445851 155266281 784291563 649665370 835370027 939242773 975283889 184708668 869149423 429389325 686748298 182201086 852296042 274895262 801676706 980342911 994276509 385287247 997775570 577699634 659553402 200456810 465143525 683391508 714740300 565374138 786115409 420393568 753644424 961946238 964309389 686736970 823332605 658609250 880218048 610515860 612745074 839924161 878874128 379647173 494130585 279953060 653398942 193101966 890621278 490303684 940153327 57517820 132182767 500363029 893812735 322822430 584863172 716299827 769600860 48852333 930817407 353786973 703559735 676493803 943640431 162635293 718686583 499595608 519836702 821899343 989361090 951990389 960233962 968355214 997458216 202481063 537525090 324603604 813464384 273069803 682943223 873752822 991407658 475719036 695819488 879935367 969900850 574104162 847700211 871211990 983424615 238720695 303966787 806206804 870034670 900015372 909281702 942179709 977059121 536431329 990149601 529052401 689512790 16537529 844310390 223840568 442745636 953211659 953578435 581030011 854067999 240887243 815574020 48786902 676984182 304550642 966751390 347832547 580413708 365814817 974888701 497154745 965284348 737647005 827136574 882629294 958680247 354528123 432941482 952341825 988914570 311982862 481652434 598388797 933064609 317657111 590363296 21582659 659602574 962105976 975666368 537120049 898493555 761707210 778560482 37445191 89728161 59601609 160616689 653650120 881447180 39060476 831021176 155517405 881755829 631383277 636345995 64425210 245029459 333626677 426040898 810494306 988736372 993478086 997704310 748928672 893901869 636332742 814509568 171908383 680926565 428499689 835594936 583632131 661933575 598484450 756491598 713438882 912997493 706491844 751022309 766881603 860087855 517621209 907145780 178476979 875433885 738542531 988205103 229600122 581097902 822335655 900821267 534497510 581244876 949588343 954442672 974401085 993794908 127848391 445865180 184470457 598732719 123954124 530910429 183216507 574475481 773960433 991327930 911545473 941931751 501969907 593346703 845654880 909838998 346375175 476818213 93102052 845524744 268610316 419388125 596962678 667333535 45926746 153468774 765234350 765517082 335799959 675657694 642445060 856810106 130230737 164414810 622955660 765127508 556442659 681206324 492006873 933703921 657565877 949851123 406631858 956654612 631015911 937267097 821475374 877622822 65954840 567649447 32996156 517310323 14338867 438346869 955132923 984158594 232268209 910030488 594278669 624653353 296050830 914849256 731540383 736711153 581921785 937991698 448022068 697485317 666153808 728902687 539981804 556467638 958573332 991009825 304646468 794325935 391198674 919802586 793432231 925040436 567020217 811147396 293702727 488797894 700547096 891368381 815264013 954832811 58690998 570691889 752159907 815204396 922013163 970026131 447246436 541932553 22244886 962667411 138160325 317353901 498057552 890716176 279666394 421272209 315098621 794361802 523679364 683875206 466652226 865759321 685283 332178286 787048932 839962320 151238466 189870219 838643373 927708979 958792467 989514921 442059585 954746631 854201816 999692340 585154385 621678779 527211491 822242882 249787217 311862998 38401715 758550428 769533426 930799841 463775729 756576398 110890103 893070621 740864550 833367215 407880750 473015394 283952828 806053303 313412418 726962013 695094257 908050910 269145097 531333829 672073410 793798556 55852871 620114506 705794364 810957043 144800718 583343983 245450342 456816303 905540931 970146184 219539041 231450236 100791653 383528089 284096022 509958961 869057464 998802903 639909606 956018465 34825179 374054126 769096914 964377645 665988808 675708391 5801986 310515982 781432832 801588490 870888720 938518657 60741982 517840926 200307366 209279048 256473770 837786654 266726451 831610959 262764029 449622366 214262539 626989114 732184346 971125923 8080509 436202608 890099880 991605760 862181724 876210093 32240366 413623950 442686327 534863249 824037916 856474085 781809526 924110948 334709539 374087705 606317222 893422432 809652249 886664374 442482849 963020071 344896149 864189781 20631276 746535990 901701386 926126180 595975968 885866519 628885800 883974330 918924013 971568793 822135168 927336125 111824344 553274537 616261284 728494808 579924481 852187599 787408591 963871021 984180326 994309690 120817274 210070290 294270662 849136769 918744263 935389533 290287887 312989852 630444118 683992421 97460314 165837817 391735155 395060235 522271341 672790391 495609180 748827862 687858314 901414757 438770644 940224932 378389014 570896574 101772072 413923993 387404695 589437389 701766828 885207499 788735491 915529579 659964649 684958425 613685901 845055033 868666089 901203589 652451921 848034420 243739664 455187285 391426463 727061590 961374585 970317030 268170969 611991653 672829494 850701296 239617215 297735890 182839840 865896118 23078213 50393797 325592832 837757384 618235624 806325320 495489753 778747772 674775866 768050296 227934422 912949725 612334021 939943320 640076843 998284128 418627703 519490929 494898568 868129295 81490594 147152393 82924042 611120248 425657471 665617313 715963365 733895772 427593513 631626322 577723530 674708411 866867168 940099957 436202967 467722905 664459133 903519118 262866712 732518441 933194288 994093691 359902324 920180276 230156748 546087012 340578646 871645998 745047354 803783725 87555200 787989940 413744414 799158797 604679017 721519903 656097251 776805285 662870681 948695825 516240326 649813750 982470558 991878883 82938273 531950300 132278619 333092007 624325637 880975946 472846662 656018870 570879704 796056631 176993177 529615880 93121035 452073236 154471101 553046890 77786614 829435462 606374752 847563640 167677290 674529112 310948330 467120274 571191923 817361242 521469331 889145335 62613847 862914576 933723094 988868891 474883832 780992998 145787948 610657776 471997000 871336497 989248132 998419983 351548102 876385152 906291458 906771221 711197577 759792683 570016650 813252942 637008814 786436980 627843647 812822984 324691610 691666866 274504286 522513763 713869046 845401511 619913149 849854604 879012453 928704029 720264238 781237021 400018143 945148311 159712555 655419670 83561290 97546574 974029868 986139485 990371819 997848329 697978014 839395944 808755445 820332910 338135478 455376404 60351791 343931670 694562772 941002988 143580806 926726402 701733587 993155176 709732911 998885693 744741571 761656811 202121252 421659495 553350060 986569297 537877982 993951361 324252138 628145386 397784461 714046736 776460348 899492806 827119194 911256922 179282821 902312786 675266326 851508437 969788143 973776614 777800674 949381101 702644936 727382377 97172749 382296541 8404301 491580957 706309 154544984 440062481 601245583 108437599 867940794 743543527 747411428 366300762 878996980 106828662 526535174 176973094 375549705 108306864 201893918 997095164 999313947 351024071 728074006 187306231 851391809 529346941 839497792 762036099 956890751 602397030 690235271 506611262 754872584 601192409 871980029 31598535 969705703 933429491 962209784 701809853 762981914 595665701 765062797 174570174 569604748 187248933 709122497 344177499 583419685 925795861 932805499 262846636 319971862 611368514 628087430 280086325 373211763 639941374 882111822 859547640 888776230 699680658 939009424 423296595 936427800 437117435 726455700 825820987 879725878 859861225 881616903 171945466 306989412 404836033 633283094 38809799 184650306 713418571 870052982 950476455 975550883 786462961 903901072 582229219 858527449 180230413 976184141 33900708 554892934 116899204 701617761 723632745 853442936 11349114 417961564 405930622 845791274 569283938 805476737 289122228 467164258 66809960 464646214 405457424 630136554 182508417 467810089 944198867 985069995 109911167 719448468 965371689 982088122 266949860 307047620 380046131 481638348 285776314 524885701 76177100 251859918 82830289 297186884 998377493 998531299 927766859 998509248 851493612 879250630 936293721 978055756 301350253 595710599 666322350 894342145 920873972 999762688 603031593 845122137 42738114 628766149 666978532 841621991 606211725 779905950 314235718 682523923 284787936 465217306 696250100 985064923 259737010 869241988 704652981 977980985 835294757 964452838 920765895 922401039 520809641 868130757 930524204 995078619 652305725 882201631 615767055 800715550 740454743 748481813 653008050 690029284 510573120 521412508 79309509 271932484 100105413 322483629 646275957 773570384 24957520 812238868 775943886 921285185 79558833 122303278 189498802 776042968 289305653 700594113 512410736 831852761 620556693 789169543 603810489 944251615 638272378 833436084 230279556 774003968 132315194 612038698 417507263 904191407 16653139 854809690 888392421 951852983 215932578 423517114 688017076 889711229 729107790 767518020 443286714 553160947 33858871 652603692 591356905 999445487 432684769 752074740 451206048 573592039 446873388 554729886 206999456 352260856 888081435 942220720 332280212 747858546 725658372 868143454 41000262 823919337 954157120 976825313 249185726 801774845 788674689 910698066 143477574 643878886 211820659 487267555 846834680 881449197 723264856 777935799 915122916 957318264 148705707 520432149 192377106 997346757 711840079 999605987 14722189 39581492 836316827 960122932 760859268 969315470 261313632 376252438 742271670 999053111 875970759 894248227 176501879 967322194 70681862 946823988 58282784 152754393 701708742 850418619 524579751 737184782 561411437 828970156 610339105 958111915 298424989 805593133 495020435 715651077 317300383 814948371 791212230 943196557 20881364 504372019 599618387 717135245 299095259 615255081 346595238 639546391 909608381 945766237 685213042 886116017 254823797 962739231 968630569 980795827 473422128 800794984 417392594 709968144 128888305 304883567 941737355 949041659 256949052 904249623 340595715 535117131 171531273 173007657 331282559 936220965 265313770 459051397 223182984 373022545 36476593 245769444 486389149 648732358 117067369 349156355 190901604 540280180 984413940 996466057 859872465 867223703 96215802 595973556 579563281 745742785 554737914 565625553 199356146 837272159 547270288 714267771 822552986 946679325 868725136 911932767 175455350 384643764 709652808 745212428 933098624 956408564 961638972 972152412 682853305 883647429 800322538 928396588 444997310 698439940 443470632 512857541 505943484 551230941 215132013 630723744 651865274 769926417 27944510 524347719 87384001 327325371 114443602 448581994 244220669 905066476 877617602 886178999 872906884 927571581 917075008 986048517 300490086 895713729 6196793 361718304 990679918 991012230 540533392 965021383 936575523 970063475 18653107 334453887 871380831 889301382 358455826 359556750 963013949 967785281 180195342 194694754 252026645 338876745 176027328 262914038 91991032 915857805 267968867 345787004 700017203 877354605 89689847 306762503 917091155 999611969 510820080 608054111 788405110 879325546 860349126 940764503 113826491 642100567 809940483 820795978 197167809 444109410 93298514 601933403 956264035 971585150 36668417 892512924 767243467 996783035 721994211 751800491 676031268 923932173 874789324 911319697 23182898 398476137 825628536 983044166 784370384 813063550 53369157 204085863 509780524 750364806 774105864 970655278 773522775 905741981 289167441 727055157 4755862 690874446 567725040 639406459 483329226 868874839 102827700 575839261 823698655 929362259 663068004 732704471 250070087 990681324 340542113 489918421 933070202 960154839 128425495 791034077 142706313 371388813 787429013 977607130 515795420 633163442 711614523 876668835 64502981 675144239 640827689 654963392 904519858 931785730 888770221 933508356 78460576 690365427 75541140 645238081 350908049 785919282 564958286 577445817 175940260 183829113 86977949 427778179 497124513 826942762 850162477 851012694 629846827 945286952 626608384 781328455 716402845 805443204 799270907 937680403 82248503 322133941 183361280 376726629 469810237 737678641 455694033 630161618 846177024 929636357 18784654 745545025 983154434 987656073 671692859 866767455 135525001 536831058 531515673 796125277 179610303 587917370 982970209 994757365 776033782 821456129 638824516 713853855 773710606 825838420 908859416 910476509 436578445 564366658 693716434 758969481 68648662 331028295 973447006 988608291 905757737 984715713 359845258 500308876 258922435 367186566 113992058 945000282 713353088 920696467 604263488 923966650 911719095 996966485 370914164 983035230 769912216 805864178 883095772 906376031 479640194 655408033 757587139 801049217 765085696 770012942 454854879 487886296 463690868 517342406 669091385 828670125 506899004 731856831 455194702 903288407 350009216 852643977 922815871 986346773 718279642 718797593 759479981 803412608 204380775 593537811 261549170 761791725 151205379 869972970 845854071 967396203 944479424 992568004 923929115 981804294 571232348 999289073 470115717 981872682 240105301 486440092 341919925 954055036 794952727 800913364 117636628 667836534 386513730 936076967 266384665 286386572 766434504 973676459 398833237 723772690 232310249 825890765 825599505 854885897 427206799 613694463 466945365 898634071 387721303 789533079 956787622 972841930 4906975 449994463 696114364 752947506 523500213 934329813 483982659 953487072 799797864 880962695 334758793 516156033 951287592 992322320 340159451 463307953 230594361 411467716 691509720 859035249 4625270 853841192 202109543 374727420 741209355 842775651 464977650 615330741 931866012 976245255 431252227 750730133 894418514 971345038 313200267 444794028 200534557 539544720 339476214 805381117 851555839 928183009 339800729 987991753 578824380 690099954 930295829 987729555 577990659 580843113 599214966 923256039 75509828 780342765 182393259 350041400 373094202 641361816 576806505 581727495 555350498 864410653 440060525 981091135 262127351 833251106 853085898 973737549 876956483 891991393 504040984 856292020 792195354 836865979 739300842 806400736 838085573 906859017 825088992 927747705 469840308 978686233 406394175 610669973 278046712 590628822 102088761 869796357 553334514 775379976 33440666 811915852 3453649 460388503 374334846 954750040 919362014 934726193 342404309 679373089 455847992 565911179 779805968 934792243 60027193 411375687 543143955 648496228 691561357 829788038 764035688 802586981 674635795 904992771 980226154 989991837 566669099 932722718 169038104 737366439 770695174 829179647 626999381 943707443 175407375 295451057 867741956 991181457 392705729 629659790 636134311 957684006 760893442 830903667 222686794 550458583 650343259 658904864 486060132 937428362 29752379 515727890 513920565 906668845 574795416 942257060 152717281 871626449 90943228 334301854 184727930 632668290 740093517 776798816 248503677 527850977 659260723 801905235 680244636 948024117 695897239 949518907 943129732 944790718 267934116 358815745 805139477 918988867 913722585 991875874 399799210 434313390 965734383 977051564 273060892 816078331 757788275 762363387 827972383 874099246 518161128 825197536 270191510 923579138 13674311 906588587 530149375 966489300 509672504 675274775 410615068 829110266 789281842 906897570 588031642 963682601 43610917 713134856 301120897 341214475 767250593 855371770 587435990 673070165 22397985 100523383 285386292 671632483 227335521 631651980 817459309 915427685 649364168 662281714 308636534 324373189 658256262 890042920 600786927 935307288 512183480 641725074 426174211 583149483 27057567 870725751 359826023 565559365 104243286 150003837 59634047 379874192 462252794 584422699 816512473 846080166 614655754 708222190 676070048 863810230 490769307 744819570 870193589 917888268 346583823 814304668 604357485 895151197 216292246 327795110 309952621 728280722 350418620 450214231 881376169 962659270 865900654 876583528 360790127 590899218 194157887 209796620 65516282 556266154 893138188 948247862 18007493 870626673 185393480 648461812 968132979 982013553 367771821 939127095 817920799 906819200 160274946 884344907 296262079 926519294 393298169 809772695 822984225 871821570 264970195 343074151 752468651 949555908 959126695 989540413 950612336 981977536 925675952 934481325 767305192 977728471 498897653 530780271 386850452 875247624 298082630 775865699 31116149 860700330 120721708 947530272 273158833 410641945 97895272 749380699 872402328 996194470 129602030 297976765 604293632 736004888 746791759 940245242 246809865 707817954 905028581 916589457 606700076 728284978 175771390 412995984 709131108 823092452 554119968 697281204 509619065 772907461 149839179 935692811 107371762 359794038 130474335 803748498 343583404 409758010 898939956 972419413 72349107 949414555 414569069 447910764 846990814 885737921 510206352 524890402 572004678 583746375 903952423 959132410 754222392 935981988 606357064 885189890 132683760 667820454 140556786 727497352 698767799 850212598 789984221 952562170 507079471 832222885 452160334 669516495 747630800 805663626 968895195 984099051 512383083 765940467 521418615 605573002 748864584 861197766 824141121 901207236 262981823 779321102 840950020 966252814 774597905 944916708 875837031 932311690 560484379 860817885 292480746 639468565 803765707 917186136 716311628 821567367 337210043 954575652 301376704 838109983 779740726 791771585 741551328 949237462 895988767 991368306 988824290 993972892 242152641 379336623 405257011 439866113 980639856 995962840 496760477 743748600 294442519 468997326 162868747 857433385 126965070 390450522 717010623 792568302 961851179 969009941 810579296 983437369 875544151 882942506 327225475 926977642 378268144 389441199 420671746 524132365 572498206 829247606 503496437 595615771 582720307 623654537 458376298 569807908 56182055 564064477 744242482 823587619 964065542 990836752 546190332 566380651 690136446 892860754 271214731 411554799 328256063 662006204 770609850 974474828 721927002 919529451 599897493 884135688 388885873 966676661 922668455 976909799 994099687 995610987 565459733 898351413 671026644 951851736 787655347 905355700 21271851 646116852 630100647 699428322 930079234 936818885 185132645 635607426 702338393 799026305 785562263 890095160 194830287 807487473 802698475 879476157 646093387 890301608 823877863 875094536 14398182 356272868 652789855 959465334 237018669 248514092 281762324 707634276 791778281 822390538 426876486 806485119 516185366 998433894 849747098 956413474 16174568 511124044 934832462 988824207 284533270 391131053 380378583 574454597 634501017 839205122 971801024 995498981 313543996 827081070 198087613 931032792 78278396 702004881 131499924 521581157 119629355 878973691 165430411 962485996 897330228 909080901 651483416 899828510 894754443 970026815 120762412 871346375 160187879 579407046 129304749 591440111 862927413 871675936 318483666 354380746 954925142 977441455 325897002 683566667 221207926 565438001 75215504 937480906 529590691 534747009 219608914 502529805 421040889 803865210 316883749 352740612 167207668 941008636 919580210 939416375 508540694 612876493 972266228 990639627 156881055 660184149 472309675 749060089 869838525 888834616 607668246 748347352 757765654 991208516 453083992 981937806 595532529 660502843 399336533 932474884 573673495 868682379 393015542 569493114 106167956 794619585 460758990 891232401 983069648 991860191 235079818 760380221 621571771 986292689 261145918 797196841 201098425 810665403 481331593 616130990 248959594 923526647 460493089 674629377 930283513 954266953 498441941 871457733 460796484 601264828 450081203 767823309 761993261 816526369 568058587 975883441 912581088 998707560 893693981 927680585 75872341 103705607 82495503 746872233 406883454 786743629 101662696 620327675 73483082 455828120 667384373 935474276 704506503 755024181 120583020 267857989 237069628 620546850 205589118 306070835 41606567 824244366 968218070 972887875 86168148 209578405 152154537 950806260 374343673 599139289 667150227 837011407 97987344 731424028 352554267 411119444 831742354 984308414 234738612 535911993 588143233 684965875 889310676 912746893 988293922 993477043 353770556 755049641 141889527 423362693 787979192 963038922 626936410 939556506 13964130 508449223 108220869 655569458 48624010 89518392 130718635 780728137 385905682 660193833 516939099 682637283 534871494 583150140 309275347 738417392 685775743 882018550 469679899 683254023 829841767 861853077 369845347 837179943 460007848 705788303 782465795 813310096 520369089 705116570 273429253 727279120 638967934 888077364 564789725 997974867 450661789 586856309 794367359 819042076 523906172 694550630 316276593 475063262 619568395 962930870 521263942 683973543 289926676 456835267 698723760 787358231 369576369 926828252 973341815 990663394 90317115 860111339 96214846 399223473 437524372 779863462 55345216 728827152 524027837 722695955 184544407 842207040 240598326 689883113 662775824 938453585 595270913 761183927 677606479 861102490 383481523 936537109 701248849 735297561 141758867 457277380 383886161 994607440 493256839 871744639 196772369 228822523 755939483 981055744 197140805 957755933 409479322 636235276 291262239 559217389 134112812 148323665 20830049 55958740 549517497 969449419 323706376 969322214 293880621 796750633 537151901 652721633 714935495 871239121 991541193 991836627 277794367 613858390 403428645 994837555 184153228 209616211 267524503 657579646 30701762 281361916 354895616 790791041 366097557 795678757 869111129 901939665 822084320 930992122 343832170 788257273 702398642 867626464 728796718 770986532 580670774 836198252 614778851 879800774 180400869 416003556 940096806 964773711 980378002 998890216 640624346 959131371 963035056 982710124 774132717 788853310 899720660 921582883 823379756 858261060 118761352 814884776 927573794 942993958 237782376 472858127 56991570 907613275 935609165 978271974 779750324 792110034 720384723 952293678 279629838 535752925 612303596 996566418 701833779 847699062 33671638 823029802 925805833 942149209 84158038 406063252 346916670 512802650 598687285 908581766 488236188 914283472 103983050 312942109 914754481 937070738 888579548 963139238 602138142 606520326 636442713 991189773 564595110 687693144 318160953 683032053 213411282 833315546 848739279 881808510 514101770 597923353 441620001 526917015 684523900 835027138 462115574 922550308 599424358 915529073 773271772 960358314 996104383 999673644 292392023 295044378 169747604 987426378 933828074 984790332 235125776 873986328 970670656 988060818 296931347 645363559 896607052 912101627 3852402 245813194 852995417 922008259 143314491 465551399 798110289 899910118 118362646 253015862 538647656 619452152 418923932 854571480 329117299 626517736 775598120 884122119 59412373 939370120 701271783 807412967 591897460 764591161 851215626 950772758 505719271 739484121 231546816 253833593 920980238 996745137 24567094 971197016 232081137 813413183 48653942 353154191 685589558 944002281 910702479 940434282 531049297 745979095 462006039 647039136 984265270 994431928 184885425 287496716 406000254 446567627 962182565 980679776 601715056 609033266 921389084 929732386 380807625 876051850 289784338 540777970 54500552 569591872 201021941 732050975 339112730 342775858 230566359 798293815 40726883 244865471 92897989 627435695 265288021 863168655 367137991 861847299 972417095 991430839 455323565 941016818 475493676 867189984 761286194 900333043 618867554 834674517 484454591 918381480 288576512 637364019 863887935 874243041 701119541 790056375 460074229 781102711 460886923 803034947 210753220 631372721 875895955 966408676 888787184 896547629 839092213 945259734 395234254 910416389 40527837 168214002 715781318 838640567 875048100 904582863 588300229 611435246 547525463 856859913 661336997 999749265 822442079 912857311 233941609 465019604 701562909 843995190 908898017 947408011 368247475 915348599 226203274 309614441 52415767 729950458 557340638 982575314 569981124 984543243 395540065 622392104 845770654 917137465 687356129 847391994 224326615 521489636 344197494 763719956 642036404 718368184 703508880 812161465 899506234 917519214 444974157 728211708 38127456 833972487 447343636 802284130 268353699 281336938 446880867 674812845 828372234 858991668 199345154 638196303 474874205 776772102 924522508 949088137 807041868 952405040 810799079 880183357 474692723 555197752 828913306 833535622 780985589 894053572 860904633 971292659 344473514 597374316 813656775 911080297 791186401 866801238 299214300 555471920 983708282 983938315 641984474 841898984 293973460 703517686 40309544 552791855 335206549 649431601 650605519 652374222 77566332 883577130 39551144 60471921 913511679 944941095 831850291 844895249 85322928 872473873 653277423 955091597 367642688 631405409 548054172 989463829 718782189 911261077 156609759 949838478 803476690 905438265 391109634 398839839 569025207 817561873 845275200 870493373 56088738 155745945 389210084 817364026 548711943 962282256 186199813 910884832 618269030 812438039 448209198 522482261 210854458 309314274 764692621 817154560 175497666 446854828 637483399 747409206 267648387 557694914 323278787 335860524 170669624 349198236 581450564 970448732 501996669 769191214 910781434 917143290 689596900 993344731 475912011 908447454 874856666 953937868 462074524 795093145 106871049 410744903 121959766 180627476 916218847 936955657 241942167 526636476 270468865 611997346 726626183 827264992 989017635 990685571 935060873 943154061 409951815 809518097 652604731 859411749 183713840 629130706 554784151 748596949 349394270 691007133 66917486 192291467 919773693 956042074 489657674 559847464 121194276 613728413 463552526 705910734 463083755 763488801 320556691 581141326 119016055 131873941 329241034 837099973 971996568 973165189 180620231 609181244 868000353 971381396 655861564 855521994 28370127 474933306 172740458 450838272 879656254 980545255 489837011 815759256 304450988 827383160 808511355 899335534 701473677 737068076 259940883 910036874 209909001 664389950 910573580 932796881 10505989 97991157 622997139 641122989 153050202 267053980 616963237 782027151 723361307 979105540 904223447 949826827 114966654 439388553 310817461 860728346 309863837 837761438 742148390 916729963 605277657 897474872 923215343 944727232 517411697 567327484 883116393 999637069 972575379 977976482 73235841 165436282 172537907 238255535 565619498 841296835 867104243 938143498 838662816 938947560 464584026 999531920 426023226 650110800 507691050 790804624 901327451 959941526 496575799 984002422 256517760 815311061 214952539 829538022 886915183 969688635 754839032 882720452 1132252 423037343 778120681 825760461 647042471 887673896 57136514 815200169 199960936 734995460 757615933 962381342 662023610 730572759 349989268 903082438 702790876 780649321 179955211 942774020 921813415 954220061 740298141 919741124 692386168 894417132 304493770 969796928 944118239 981605963 632677 323394006 437300764 762928942 90358364 823331985 660042574 878583300 344833938 509873253 498623016 999919030 849132807 977549743 237307607 874118948 98754494 162546565 489270658 610640592 362697588 692081382 801184877 881735038 739019966 887678043 202931400 722046576 432056823 471452443 2427811 174845250 429120796 957641247 431894343 626815348 571164464 933260326 989612903 993700893 791148572 908774070 871749689 949991130 700215890 814319103 830237700 959547238 2003480 541317956 125554246 830562450 611913856 897080458 934798579 975474657 946308636 979030796 969651812 996214890 202699877 776276906 768172009 822095658 402572413 903874797 212971238 478154517 522102618 915428946 60870065 327649577 967675382 999165504 282361744 826917483 817357103 920743015 237812746 676189623 153901139 779811019 978478798 985301368 466676255 886367947 208473108 968125312 153283911 792309466 224647132 303329050 337085212 349770397 710500966 832094865 155430861 955241731 508576681 690340423 254803964 744188106 718054427 981160291 379515104 657284898 91952716 214524340 946600728 967843348 615811391 811830098 159614619 738816291 349204434 863102183 851416405 991818062 250847433 645108129 13961173 933123260 427194223 571696871 25084524 861803867 414029773 901685244 293096772 544988847 215359463 900751107 224236608 552438517 209066844 281475964 481525247 673093550 505990124 985206393 56275381 800048475 971553147 977765702 686783278 727903164 431807331 661457190 236011253 594381217 880997546 994713649 917985609 942005838 783546142 860967531 440801107 708099998 977125754 997045611 812894070 824487123 660395620 823891172 344164766 351841821 134998754 335761670 572800432 976591591 521652212 742455439 48031245 372979738 168237741 590842787 791800778 922975261 49162699 529952010 908897589 960541157 347020333 628219127 45369163 968199576 151546625 313789263 602169379 653682717 697499423 758913391 239337419 927913504 152070716 859739123 645121235 793402446 679319398 750081363 607040153 745468347 223181733 357606229 849707968 862078745 130982956 914007329 750860499 944011528 818602099 998393151 195895533 887200887 486464956 721556953 543789875 739830916 232604505 985091291 497927766 587541262 331235970 907803010 404416844 800175161 830133506 945654790 282307253 524388482 849235095 996597865 914613556 915039063 814491154 938503308 782807468 848409368 946419096 992838558 546064959 642901312 843000315 858077757 926673635 971898814 217403541 902612823 684402038 736597297 857486233 960774245 442015750 659768146 876084918 924236639 983750035 998127546 198011413 322884748 43757105 929372014 201761233 827933149 767536029 944666198 872588974 996640095 771748555 826054547 926802131 944898334 223666526 288571380 465959624 780535486 130385158 460492422 58265046 922672930 536362440 951642021 777429672 786347538 603711905 806520947 322739585 489812371 611126573 892036521 603887390 916999221 862299490 957805972 799457451 890114783 64341627 358187941 999904898 999967823 806119814 974765531 125125817 338377169 5421258 285472482 497756859 807762419 472192954 523216022 665053060 986295152 13362819 960327593 356867246 386348495 185028899 293079753 65627329 261127204 4785896 241409725 987265983 992516800 545127880 796588060 35005479 185955310 94661473 988300904 299200714 857764823 799813964 900712309 686190101 949951195 708020554 962836578 654637921 802376230 430860170 693069046 980919560 983612043 481957800 762852181 144588817 169154492 539327417 962887339 93870706 359309580 375154093 925105566 505372257 996832392 409832573 815264566 169740621 653123759 35660736 241986282 897923505 964024436 616895736 670064421 182712047 583225754 676583178 734979645 638647369 942738203 384087307 657858492 456108131 548013394 848476363 898922433 526227436 827133158 669504970 970354052 120570456 127929949 75516623 173161965 815664835 929802840 739688094 878512713 195912606 866855748 186840705 540046750 717924655 759852145 487969265 850192604 714559015 927208910 594615464 946503340 732765547 753748452 332280634 531872872 168049952 922862298 315393520 731884719 675286755 841288592 624306318 755771102 732620028 790525927 781662235 938158426 665163173 940357743 740045369 776628221 722110867 908436915 950809047 989745497 927605054 956274144 850727948 959936998 322462938 449776157 999444588 999854197 804258568 810783644 266075289 445000749 410840928 849154102 754402946 908474345 16817068 70276373 490442934 981797442 177777757 789922350 498743594 647765324 674258203 980733755 937126272 963401883 926783857 970596868 359449372 644896244 676697771 760153877 553726364 829294532 875499782 905505654 599162865 949002140 861718955 925276599 175577935 262686994 249414225 769470202 872801169 901315433 820390580 958795888 324864386 353066060 803919373 934597627 651149656 777693653 817234785 992213801 992234508 997246220 353236934 557492228 617013486 909656239 237683661 806608683 818345581 930273392 4901427 679942035 841708805 855107545 328244784 572126497 835879684 946006922 684638836 871332763 836216045 856867154 791011997 836199626 493540272 790324850 134041781 198425141 36173779 91284779 711710014 810500659 507921054 889745291 709706943 845477905 31008817 174726737 178464936 592668127 164804560 846409160 266976286 885712499 965455979 992713567 863843710 911834868 546551646 769008227 192788865 403234275 935783704 955140916 726774436 820985418 771125011 791082636 838616875 934291819 597372652 976633397 956352436 977688131 525977009 944323546 99760194 861209183 917130083 961530554 389335328 985269089 195090008 545912191 688018638 737231373 273562219 637842339 163859291 910367901 84884914 207772533 22909566 376782099 85587851 617110176 236319085 799303576 983782759 997745771 144399782 830474916 939818215 965279707 226842837 374932282 133413750 704148937 93762830 132932320 329042265 428273681 226877445 987535003 29894300 390280506 644305209 693862381 66949400 566231963 538011001 759756349 321091832 651305692 156537707 599371342 559807198 765598632 430629449 914376649 544326153 792252205 926373205 993972877 981217157 983769771 817010857 831294130 65720898 904168165 928986178 966002663 24398306 83842849 127601770 600985168 584538493 700845403 497014483 976015031 248928309 887367903 985572615 992021912 118248936 627454619 301240016 362916402 355641050 410540878 97311274 768773748 943562372 950057580 675511100 997162802 101875421 371930879 39196451 363764755 689385574 760067091 446991418 883680597 883571091 978166327 888339238 965971961 375609865 423230958 920347337 965110494 824860052 831621220 544353849 859510167 487541649 782755253 92954422 275638483 444124038 630065293 175749828 600693077 477346758 917435299 426963480 966799029 229544025 264478947 790626934 904682598 26568789 140131754 649436477 925055194 955770241 959441446 766867891 922195628 180714531 366928827 367668655 524724140 642824419 943292090 149309352 779978168 668087677 920126002 835541228 950754486 615985393 638646077 510856670 581197978 504999077 712738917 736742047 839133740 67382687 532529534 679465798 962473368 897065344 979375929 548348145 721751167 672306994 788568070 860701307 882530512 231443792 720731023 493927668 610842629 5552821 78920439 557892391 929491478 13802033 506871334 920812925 982976544 943063472 991654294 258642512 974900131 17409338 543274107 179865594 976765669 865470642 879051956 925058141 927039177 843137583 869678324 568172110 887397320 541965289 781823237 40562347 652106572 412829937 594126002 187211758 517008694 172477399 549948864 273444553 958013623 149179720 674233558 944376306 953547964 631817551 878841041 171482515 284144283 421655013 990375010 685889235 910324821 947219063 990732204 506609613 576532200 599566373 785447303 749323206 793036909 982356023 997739956 473768311 786761587 115338248 876597828 377455837 677313950 295268154 713090447 209221826 782630682 605307053 894596355 716279481 964019276 932696679 944302453 967681350 995378298 146268204 566119977 112008595 486709231 951080171 993621160 246632453 963086447 269621569 368219117 541620000 749955837 608335777 731843247 514349810 983585637 351340403 666619561 325053395 712188273 235321302 490692922 32895882 652617468 756203370 855757076 383514737 556167671 409040192 515884112 40753669 615128457 766700059 953352903 503431261 581944213 89426499 951431381 370656874 416275109 682087517 962232955 355619559 447613874 606667348 693878103 655262460 818669445 353279622 573717408 912624272 980769396 303140434 557604868 848408193 999714549 784203361 792917460 905927377 953583608 420114099 601117087 12213748 903057882 223501838 963762782 549119752 814712237 892047242 999932169 258868859 510844836 275018601 470022361 23796986 904594858 337654536 950721787 821033293 876756979 535321263 641246031 148928574 378148684 718083120 855935805 857029645 914771835 723503355 775868657 247018761 649360783 266879732 919657339 237237172 852863185 175109411 499320508 164105644 323807051 371966852 647303755 707370568 898403551 258866389 431799396 712172733 823710693 537400150 891051406 508001444 519854717 158644291 414524583 250211340 464726883 625322927 964840492 372334933 652040117 15903513 657412905 194679572 247930024 532861299 652158469 125636694 198301878 94249478 679882421 967984377 984591363 394625242 784588155 768684081 992423042 424138087 735825586 148780701 355290818 68016207 574267093 467367813 489397557 835044553 957675357 890847790 943528383 641527292 928093782 536256251 600061276 283494036 299331085 142463374 399724216 692174728 953127070 627228773 747959428 23185828 137044026 460116726 830321408 119997792 841019721 327392603 555230600 592901868 918411881 62003108 512645399 6948853 175240559 152002993 706586851 117245849 785866902 953088365 956110058 940526105 991633508 898926457 947342552 750146266 917126630 134597663 325597393 623375524 921649789 148261833 601409579 904142472 971399583 829247201 863215938 377409038 498347710 18646830 158342594 66566948 376254632 653315403 904768299 817307874 819858624 80113402 417740703 284415433 657127439 332606227 751312142 914598794 983689867 934239949 944273742 196838645 500630451 432073960 987514664 609559253 861492439 418995892 998224541 741862713 964690648 28101657 937700445 196352533 983488633 281621260 390901569 140665846 387592325 191801103 990388834 167791938 261785167 526256798 756487170 911411725 982711492 276760315 370939335 603639157 831718271 447400230 750333041 376369688 723604640 801251032 929588584 230145091 929658797 264149271 404307464 236953426 333052457 107029804 426060295 312768864 563992216 795474539 817387440 964268877 970437340 6702077 427663329 357159056 475867763 573697073 676095640 661605823 719509135 465425273 946717063 745018063 847021896 163556716 177104787 512086233 617664744 543589085 577425288 782534950 827957868 710842033 860930732 15449027 225359688 988422248 993646292 215298500 310728795 822722645 831395982 352496746 612418743 894762735 954349373 795305454 870611521 545856346 905661419 102696799 959918798 181611500 360812620 722313479 747090288 885245291 930351447 827280399 830620367 741986804 798040390 878911398 929912542 534441638 755983442 815389375 982050028 73686224 129311195 33846047 538729407 408382851 781988713 745630025 757477243 625383571 688441734 724803731 852506884 967771570 975745195 313245725 378740767 495022821 635074115 172646622 529645019 898333277 909590085 387049011 392153396 60459298 665362528 459103215 505380446 128266932 698708000 525396346 551537726 106179890 509644133 460053719 883624387 285769994 399853017 718073488 985739140 539565189 648609901 600896727 738636762 728178265 895072351 841579580 974683933 974220984 993676246 119652529 773176762 929099011 979496840 350927246 398445869 382493951 941236343 911224039 952486984 199781389 837993265 256128479 593220083 493092418 917185107 575365955 707623967 855439949 891822462 156307723 946294321 169298620 749862612 902429927 917677503 308776222 609433804 660394168 840206991 847664382 908706866 281682697 597570504 667165457 895396169 851537434 867124162 683009171 708825584 294912802 574331514 345568993 755365660 558689398 979298489 991305821 994794078 524679970 975397069 857715472 857774673 95228666 798062108 355126512 580892769 439958829 495498746 321358784 647177737 811692713 864290062 414958512 806781223 319536033 953197010 817028657 894036836 44103760 323068599 527752271 832956859 644510490 687004566 587441892 912352456 512757215 935471566 976096563 978809854 564654490 722033866 95236663 438007275 928599811 967182220 460893711 549787400 571865975 873186738 684011803 969640944 115132585 994092582 943985239 954866904 99311049 296616739 475063168 761708477 793092885 885381118 165185060 839453371 179954493 915803015 846549725 932508996 342945701 737180910 176361636 528598283 860192051 901720707 620935056 644234595 639563273 826914863 137822385 417774924 741355774 932289914 24271851 769059502 702582401 824091240 360556015 412921283 608787550 636527391 29874727 798315595 949385834 970975067 202078138 677649365 365419670 755138281 246539487 931013330 16325597 286935405 948939303 976695606 899731171 906546410 162929481 924622054 831213560 943916252 580610219 977851812 778562500 848752087 282976028 408792354 874014560 898722082 717988794 823978222 124093444 189732508 64119640 373040990 979146581 990799946 957617294 978992513 383008912 386046514 769736839 850355636 42491436 407367040 175104938 824733709 797704797 862712457 174565931 870393975 600027695 658587829 459824873 476542988 761043615 871580730 613306459 810776180 141071245 753328888 562124950 841596673 540902952 570750470 325216802 564234569 757838407 944244038 89163061 816157700 217226335 909649507 925799764 929852222 53115417 931479489 596845712 726638704 353103422 354400299 684977034 992025546 710280327 837343734 245764628 863490101 702665283 936699058 930147945 965202188 578677855 924650304 885167377 921808330 475147203 744187790 528682967 773025363 212800432 799347277 579206363 642401273 800946246 970012404 162716855 585666074 354366527 513339903 427461552 762640951 117626940 986851857 400447647 692853413 362494955 861455364 49772911 791976280 569178150 578864905 712517527 892957775 873586531 884288328 173786193 964533675 77359827 755181501 249919153 691432237 526327004 636810269 899462659 988015406 829054204 839234823 202247006 657446923 153011618 363749890 797470494 879736010 836445055 920243154 666301458 905696885 168683161 318877899 961856966 983403656 289062557 679767926 891773109 945508035 137284868 903970346 689383428 853163150 331743920 943677884 991146626 994799857 226225063 715289701 410768419 729291154 35006352 330122991 340594921 889916688 127118405 676956039 595597795 795724128 654644296 864649637 824073492 938948241 827515875 881662721 522271514 802697507 912567852 927675181 393625667 689194210 926114076 994078135 687273151 925096875 737057984 786154539 525244732 581586074 929058721 982994461 93277492 156100031 141720821 326836751 184363136 834224635 153654631 390831413 530855743 938856600 597496901 685829760 437104149 670942319 155772333 975512187 654285175 734924827 292552472 530300087 947599347 949366806 766706491 872737739 272969883 976405327 279342039 674060325 845922178 887452788 66110567 372570341 82537786 95340036 576766515 938564202 75638087 400598805 525685978 757183120 261349683 805206271 92712069 365135049 182740919 550360595 647243313 753347048 979063931 981080153 179482385 981091084 874813048 961859748 276242042 696538483 253639725 652728584 14410804 449692103 540505568 948067517 880188758 983663909 485386407 911587257 572719662 987220820 647446916 812024835 749923713 971095402 320810080 504051365 928715269 993884574 521794407 683977219 495774593 735617310 603696453 633798063 936113893 963176528 931865857 932484120 220634314 362793740 419835225 888825507 283967105 388848662 187607913 433801397 113382587 727038890 696769647 874509443 853485531 880441386 652779143 822668848 315451037 640791247 320758632 429246812 977242900 990663555 119226874 985084537 711972845 731824384 129575215 470674925 917437603 999742243 197558216 638875080 910627776 964721921 238497886 419694565 94521300 911363139 542726603 616146927 427074321 516417004 407382057 502934123 485722595 996649635 252728260 943744567 151604381 399273459 557674536 646343382 623837385 660076762 491137038 739232063 862386048 927811209 431643459 479297443 735919871 953013246 237109603 445948941 780265056 993480451 488542301 950696843 746465424 966933241 805360435 917356238 440619216 470856093 192613254 695744085 497350689 754009155 940109470 974877448 383209963 409930795 663520596 817206101 897292342 960608834 96978961 509807338 346585882 533519611 381099576 929498616 799894339 883235700 533356738 631152272 902683075 923728016 776773685 852995975 191154056 356223071 254237607 463128325 910767367 995379661 859198502 878862751 831103794 879662786 257015045 662707232 797734897 843519814 488215638 806006357 251302302 864608266 515570890 835937557 810799775 946831533 742097012 820900670 80766735 813423805 554188406 892765909 823954016 970571897 164871175 622751595 521118649 643104559 211675781 584793315 245328189 569583098 711676258 953203056 794367433 882071749 923577634 983610763 388045099 415731536 133612375 172978926 465364038 491387120 983488180 994632284 614960538 977860826 116478529 665369758 974757321 996806735 141941435 645847419 165891002 249180238 517990895 969628657 417037749 991330671 943124813 970285273 92290198 486312181 362651173 461859831 502552501 958876906 899778475 902685132 697813798 862712228 772421135 808263081 878690995 975971010 109296897 369372655 8707791 918503316 748173255 891910700 76468706 800989250 911700658 933071366 947914203 951347197 283326386 394628322 299603756 369832087 535503391 937589533 896434574 920860265 664920703 813003399 587786104 694065735 90192949 740744205 356244749 800958284 701266967 799076872 840711751 851683616 108560920 931289047 565546573 980984861 442378528 473107510 508198954 829200748 277267263 480264140 366197076 736185019 199136631 437152467 3169588 320692426 280643254 376344309 455505386 895708416 210980649 991449214 706539973 829857258 182779384 402663963 107222527 296089790 494622498 611028717 241495896 808920973 58115884 757195197 761593248 829304574 948514598 995985363 977550118 981502270 891386927 962977319 506508843 583529216 851890332 962819786 698931002 966246375 988746036 993541012 470992189 607741721 213221308 668959014 25064044 946923397 132312521 428155417 476088888 490186004 988106202 990922364 769962314 803192405 593469676 658501754 958019336 993005693 45321909 800107951 261080928 961527008 827881302 875216682 768341938 778390673 33544848 847209137 589250551 905452914 236502117 707986374 324382984 673092213 886860958 980011057 498914417 745314296 269582027 877083474 977643979 993017751 167597093 325401143 287849915 428935823 353518739 808985885 159651120 685157715 270810020 501627255 544956294 623433679 683952315 816392028 532602394 956132888 371605540 431347596 540381605 635975618 924873121 984619850 374579718 703805371 59661073 242815576 781263010 826005636 501488092 939906783 504000454 937197143 580402114 670523360 912720590 979075124 676665146 905291276 57630625 594453494 164962547 196488684 841757019 874506132 197266879 473442022 197696527 957555377 724154640 863026644 340139561 594129262 221338298 554310620 740492285 880797945 907423229 961152604 719932926 767358290 465061514 656593697 121258313 481599901 257899244 341590629 78537335 261439402 634323147 648095325 527511989 532471448 631779209 976121632 204950491 961122404 1949998 85059159 693111492 891167657 765966615 833813984 739954844 953010925 292768243 417399315 766485757 980618451 537133614 559416142 361996841 654822291 823450047 857501476 984449602 990693177 33051204 537828336 850436562 975333937 822631477 844665045 795733590 924087068 472349621 504463615 573034567 674173514 30970955 177056575 663063378 978545562 40234009 992659293 777496012 833033604 67999755 108353542 865470585 940219757 398946122 610939518 62133463 925155178 284119574 752421963 64595953 494344716 531613563 634468138 461254319 597484879 309027159 632431434 868661334 990684081 67005132 865808094 473930576 658667738 105013022 438042072 326353484 554365278 486867396 953045004 83150295 175300505 424077068 928712451 741861845 877775000 120662956 892394692 458873563 979959928 899160287 955252590 605985653 970029606 63780331 731879693 485819543 640472352 249482581 369225614 397898540 757451473 536243716 653971102 656413610 804196718 20086248 784520772 769149186 908732849 894417123 908609891 204368835 399327354 540814678 748183696 495566135 828111840 671535457 912034735 522071701 629071984 526885717 880534971 996113636 997420911 403955101 610912307 758253608 903270702 361069862 859557821 781903500 864034494 657153026 804941988 29196904 595478136 701523475 972272078 492629603 723899726 344779757 721237624 344972396 553914493 250939136 462074551 307701308 953494754 481034913 494997517 453964633 502635651 169131307 653090215 652517965 774919181 979698759 989540504 851330264 903112983 557736689 612584812 857869949 992286663 29621109 805760674 742581788 867115254 183976544 325852342 423946422 466379187 185337972 329883822 831809199 898573714 431090957 801141642 6365061 459048127 345212755 415835135 731325106 862551356 354877195 581529010 19018446 785899837 288416719 363944450 23704997 76135430 761430312 832374137 956318492 999572641 917532214 997007911 897885495 915049666 987910312 989924718 600413434 849153685 791523209 872364727 768176903 915055179 803473272 884726769 4775178 526836703 839852682 985796478 687372856 761583676 60293925 327099187 925059357 953627376 488845826 517192691 953888155 970055263 631512739 750850673 426685295 448459253 303635951 315238205 123818000 585234393 669099852 817345432 751368702 798492232 632564168 853485979 13134207 191812206 466026545 579781173 741501085 843289012 359740825 699405711 681901883 897852472 692020701 733339018 175387483 380200300 12221705 301502129 244740474 858448157 294430619 819777364 323606068 987558505 562234307 589285080 880221091 941219278 594836397 880586974 291966701 620259874 365176606 891841948 338923386 433488931 932954289 948195471 559053822 832781196 503612373 977613658 413733692 737676537 477923867 819365637 147583690 931808014 691106020 956721274 119716286 757262959 743027839 913205196 196590309 270030391 29115058 532206308 830329172 880387733 122417854 566886799 950560897 979835750 566975562 568796295 325730760 523072933 439716722 442550937 890174475 910345108 501069006 512498977 484836289 497368629 680489626 802518406 365035532 780698485 565051597 795385733 13998430 656506650 941210142 996851111 368276377 402215472 304305091 614427444 929243309 974920139 799212659 823705465 861495783 921585438 136542257 856373445 525925721 571885965 940713266 944726601 443402240 599850103 764991538 911121727 172693378 607297594 592080679 959744462 209281308 648886634 911479692 967133735 485480478 734175277 215348992 995057292 684382644 697042834 961847635 985812376 292452350 613303185 942253724 958196317 611344581 991409679 646128062 970980167 512766258 614886923 888508334 890338078 316985807 723780953 665726934 706616718 658559164 668119104 280506181 740608139 834760751 937959806 284847305 775153074 974416561 994875404 56873445 653555315 398619152 461990121 895173440 963495987 493887040 831328907 565133262 601728651 414970520 819980699 497017560 953444693 829848349 905397621 72019565 821592407 773442164 791339708 765897653 842515794 389509050 660936859 417097508 999536257 825146139 849373294 435722491 694415121 36793564 684120772 611916733 772138907 781567447 962051402 725424917 847279111 383607508 705574890 625753539 633716374 202580314 643533524 573383024 908484306 396259656 758190988 317465379 341460746 453935259 978861750 271549935 917570457 814049239 975680852 302537144 706032550 603740878 627279877 25896717 213057927 106400589 387083148 690604777 764830857 981222706 984276471 726289259 817942175 247677289 764635173 446815081 721991080 266701712 280976908 280591235 997529179 744462009 761721119 190180094 225787082 797179064 827862771 506460832 842358659 183631812 270422485 814251124 843707795 988179958 992381118 979996694 993143847 983372633 984804273 303180279 861900676 448112994 558516926 629163268 910139317 598746129 655377926 35198835 935471844 355709272 746259058 289733863 685618916 927937330 978220482 334506237 663001625 508937498 517280610 112590164 657230029 700843059 785468564 672989696 868296151 203961580 574406300 813895303 970618900 260751293 392890871 952709840 998357964 535044274 939340040 520609127 746526830 785902647 948181929 721384711 914465798 182772797 217431004 276973459 592066766 692240608 934712647 870883016 923825844 687898329 741418824 498559408 893966987 967971912 993765990 597791533 664890851 995906167 999843588 173348658 275303348 915772502 926053760 977840668 999229586 357393808 691528177 812638413 815441515 808297762 865619204 140058751 955023663 225511886 906991797 333365112 499534978 260214929 843040818 184871253 248956671 547727331 819040564 637229982 722339669 312573273 712875184 667430851 855142855 971924587 976782108 587893601 700387716 721932860 920499941 738763375 968761823 945201254 986275950 327169925 843552275 894835986 944400528 315151134 490287917 85573019 273586574 891863288 974384597 742792912 792908679 900346438 909224147 84218822 845135116 547219113 600036498 507836972 613815455 294599824 531505958 909025602 966644126 901592325 902787120 986626674 999535896 803644338 913894293 426898576 678978120 169414958 531635931 383276121 962219453 178650508 191281920 416865970 756594490 106788458 929211271 386916808 467632879 585967052 933020448 992693281 997005175 419814845 894314061 416933411 583719697 795670643 842500689 646928679 840649483 102406241 945074300 430401944 991547868 101619311 502150522 65340518 765147008 994690626 999620718 146159684 368707139 357844657 623016711 159817168 961895682 657925089 831936543 356944286 361910310 969219723 995682526 205507997 662608002 843035772 853790544 122746025 800459779 87661929 310074702 387411567 669935236 310489732 535646400 846139637 992895649 985940268 992125729 107728133 949507565 764752917 829046775 396738453 577784011 904477693 995478830 720880111 798884154 813432681 838566848 428872907 934132986 283964881 882816932 760880772 944013139 632568312 688623334 69289842 789679891 756509033 841283410 574992298 897956104 834484260 942952885 664594675 684526743 496118153 937832944 193001923 515385802 534820311 905941547 232911843 672524625 288197591 442827373 775483259 893190450 529250556 563842878 265657384 445845259 258477653 402716198 178420576 398903951 572762937 652269793 390545176 441577759 823684500 979717598 630974279 855118655 570740163 614067834 529674354 594136164 768967170 865366393 563850010 762748223 993312488 994776386 411763462 419910178 407498787 938312063 84587385 995941633 55678042 394932372 360396256 763187245 974890507 994758849 81872905 518255080 663552781 892927756 326428178 855219030 747689862 945264900 919410989 978259620 721194715 975392950 114162768 673724680 363138599 974684905 478379029 940584647 773463636 806995554 958083227 959743380 50664276 608429340 199831068 345324341 382330181 456615619 878451847 963618360 594175105 922703021 138056773 516507361 659776535 767195129 639302880 818094222 987490523 996960997 824672811 840923925 849924393 951831387 624837883 726712667 870600291 901433611 441324056 474876934 243362249 502510777 729150358 977972677 15854424 669713340 412167076 421009593 193555429 258101564 127692464 231442816 685587429 884132722 198265760 517546158 439068165 848712239 653735711 660108225 702222694 881961625 283908361 317275346 85951449 718378684 906077309 933682118 239645088 918225845 101822059 295499793 826530334 939227324 828018387 923155671 693555716 930725268 408151216 480141994 439729900 964864120 213459615 774156748 86220405 775509215 119846839 938695595 374562485 827256800 308610597 352259054 419996173 491619954 164283025 194369373 804024139 811748510 651805906 691106052 867659572 927846661 202920774 946450167 881959086 887477250 867627977 964631243 747156513 831092292 870831560 946552953 709433876 886591009 165329067 268562673 805401093 998254087 69718241 357945032 780556780 821321527 618723337 997122326 990833926 997689026 326663724 989192761 277229879 826560134 135916629 584122879 886809053 997983826 722846092 747552769 191334036 635663437 793639991 835309140 58295164 812925032 319339821 350753252 795582245 885020303 897180554 968109405 455866148 822715777 204735912 901254532 476305455 952695945 697783225 836851961 181391647 548992414 538867557 724558143 446577597 805229865 991977779 996649572 794363512 867172157 564153535 823192639 843556718 926291948 81358217 658873969 621135630 767291368 626096809 817083686 29538615 135943738 670149927 989757565 849889285 930980580 298611631 995438595 956665717 981252234 840584772 850357134 231466153 601521670 664282905 813275743 700543190 767717093 448108467 919947399 72158203 358426596 16172128 937462710 647621082 901922872 665867259 754630604 326916902 800483717 902363138 922857561 109921481 988315315 239858640 954011897 907528272 916151710 40975064 661428845 905137336 932589997 979960186 987848990 397401164 785846756 896501989 940350210 188544207 300541663 801867540 840432357 210675817 501739972 671293443 777621220 545816499 910563420 21219249 371543611 337406710 984511188 584367681 864284071 703939433 742487148 561286320 937555619 80379525 676587770 952331309 955905298 541654432 754499364 921540465 982389672 894397255 918886350 107084994 774173836 467740036 710413519 711675563 730443344 338881645 983190839 407137356 617565280 98270108 157475836 240829289 243138394 576335174 623345676 348554399 842979591 308843583 890484241 843573843 884677809 261402489 871926060 794983696 812919599 484054809 602782509 795395891 937287251 91575477 356135903 323316858 359001489 152339132 833929170 677827510 967886783 642189981 828758488 522919454 755745150 698862124 788664815 133576613 666646245 812386025 930911440 362587914 775668509 774808983 844886980 104780798 766985323 464209491 686073834 321585673 859309257 896593854 951019169 851448137 893276315 454934823 986353874 499614279 535921179 69963045 316308707 162928111 276202746 149888924 755863315 307130654 668077149 209255468 882743941 208834188 983285076 492326648 671340251 785013892 829171423 358239709 843580145 193545116 697364725 856713985 942880037 545358071 985630188 257394245 689268825 444728802 848071325 944754130 958470835 168769926 849790868 248510945 674738537 649402689 816267941 899102268 997358875 424420947 926255113 791740723 806174022 1619699 120096325 404443610 516942702 91045119 817951552 929488725 980242712 767441501 846999227 125716579 460860525 502995769 945576703 843919669 988935758 995674065 999189817 760677414 806369937 795671917 813601557 551838527 766792167 800559154 842563647 320910544 886681659 199370248 779064168 707346627 719078107 418161152 627800721 688047238 765349929 506156693 556437977 59320500 603507783 715978971 969199081 732769301 988466128 200225258 544225446 140998785 718265862 585684064 832420608 9946440 949923774 375315597 466275364 80371390 219110384 565426598 915827310 230081027 245051988 226246275 393271582 854106281 871249782 877671971 960964395 740789189 759154544 810102765 819865581 522783259 909894551 145003030 475950937 495057477 689598451 834893335 954970169 837243152 956574293 830764208 844370153 464792735 655578808 58899755 217742880 51255048 440221629 569358215 592933649 542879951 832456805 154384991 411251823 927569154 943832729 894931045 970380983 24292686 671224951 372656805 919656802 440466442 492727255 193683174 843028004 114800303 439482557 280194038 342014283 687888301 811608070 510663608 933955919 975228938 984900260 620814688 759554950 266828135 292812141 56406068 728517311 291585765 824277194 123722076 838500888 350668230 552657975 975513907 982255097 21724846 998656713 771936428 869995607 766131917 948815297 501969064 621634036 132104399 829548224 874855867 876060171 896302300 921029741 965216865 989477998 685276614 966868712 853272973 997887616 370665923 851860136 283539959 576373983 308237506 407216122 119630602 912498724 658881275 769424328 879941324 964854527 955382518 998691398 414768006 824281301 921882055 993324324 483361123 903186839 726439100 785174334 654534238 970232922 401533312 532891638 121822830 150409567 642462902 665350445 496748159 993255143 17704416 339564360 945774915 971893485 956373995 997217401 746490888 995628384 153919723 655439771 712615647 914580673 972391649 998713405 836801646 935870929 223507462 457392760 991098915 993333036 910503469 922562256 415546262 724593360 534237815 959264722 896625968 896692053 272910556 963294443 392347455 679513923 813542277 892015509 675739770 901930133 126879480 369819158 266865677 269686748 913672035 978627426 435886672 472053994 771295532 891514475 191428341 399147032 805504986 841944544 449578032 534369857 137090021 512125085 97538099 583645610 648174688 992042191 628326818 900020098 840207216 973056746 710508969 797447803 459620658 660910431 899673773 952474854 544863507 594851483 992435305 996639888 982543 578000064 246746760 618169069 813802155 932554599 566719468 959920938 627888704 722496242 309597847 332364288 553550913 923874240 549906536 589339296 313209538 897857583 565733602 801770849 691892168 909595662 297905474 886040186 341290960 634685620 600248482 968979670 177331632 880270510 528636982 906334007 269698220 332004251 628921415 891451041 399725817 506348169 819285592 951205156 242649619 662029016 242565164 511002402 552242730 723218141 644783888 712582173 834064028 989867765 939686493 976565501 158532164 967928750 821610184 878489447 63194140 496974081 448974807 597572270 921534106 985663594 444169960 722696775 288352601 417828076 854687284 969049106 469579808 700845525 32688603 831372282 58939625 238720662 247551164 467469530 639912418 910150039 864933229 903023865 664556620 838612863 945727005 968370520 918558422 938925334 166303250 806421247 957166795 963612932 154934910 991636666 594207925 819562784 773316523 956398418 38146175 58012531 576920777 728575761 45277142 544981157 554495801 599296077 89194697 96539058 137072663 207104212 867821271 962176603 437692322 713812846 918883804 946037717 159790020 307771391 751095406 934249239 263606658 279998679 303289739 732255886 816740214 993840451 700201602 715069806 262456158 626494189 655778487 949124039 964534202 982638232 921470796 921485484 528978431 837698393 573059412 678461170 999642053 999988916 796644980 839054795 471880069 550912318 698646384 969269799 8418859 78808001 787577955 977622077 282341277 837255417 972551896 994037393 480257585 613669618 594105094 974248035 741475469 953172327 979814543 994752887 712172032 754141671 379638130 466469435 87223478 795349541 57791589 815822936 24164212 904174189 967060398 968780473 48287031 143621460 364466790 384437964 370828657 906675700 126650055 265790646 376686691 764727763 759065746 923088450 512900687 816268039 611269072 896946949 343377425 817415830 589110456 950236908 838869293 900284514 302908755 978611341 495032110 564228547 351523894 884959017 519862211 870650462 356679325 961052727 872464676 981273012 96627861 517286990 122979392 750296488 158397304 955421782 918827042 991034459 5610854 896608945 106238384 453954641 443834567 458765346 705267435 831989366 294882971 632403356 146274494 398775262 380495605 766228164 430047862 538996912 779546986 931407418 114762419 452807707 393435735 669555108 698296393 930743536 926301118 948764071 715535306 930577932 487675708 626556007 855659097 962081360 690267861 765122932 487114163 571129293 265679754 402842036 681483926 687924290 426606715 894449679 42674561 966751668 372892202 837508851 918309863 939395413 186020405 527022692 905547723 949562931 915629267 967264641 352773804 886168499 3544675 974047282 713325013 770811573 7617559 343948854 436454217 877003414 230383895 326574109 163769129 163925205 41312578 299350528 823141685 998542450 301386341 420200096 491363882 678367025 326581011 804194677 927098459 988338399 200385788 930559218 562964459 725044225 558898487 994716624 711036279 713123153 156479754 254702432 740964455 821294526 89659710 428548112 663248496 834921862 89668318 547201658 991957944 999880523 733162709 906855059 489815953 701692143 153694936 446112152 966966146 976690062 553341353 925407703 577986149 611244167 995346418 999871814 713840207 751819894 61538227 388461960 938027228 951785063 273277683 531989943 57238740 392857782 597774594 655483285 691409264 846487823 655494347 881012311 177374764 798457607 477190842 873084099 11738759 519238075 275013456 567902078 467117184 526272323 90181527 625240059 606035923 858971601 395450868 772717492 24206391 170462575 133136014 811124357 195561391 231087693 593910190 852680094 913594196 987933125 529066123 874485064 423303006 991487824 157434895 858403735 26060304 412187842 763068237 932829282 470049822 756332028 221313859 782275340 143724450 587035608 796401652 904303177 830657896 908896594 593767081 632551513 749532088 852974665 480762821 979526428 228206080 838545219 968751421 972948836 663426912 937239996 199915445 872360811 395737213 502249972 344919975 582121693 966379917 997185978 49964682 952383572 64185136 676952734 479888659 570611115 758352694 897016870 376492370 954635762 669473914 955101995 71914924 533189079 590422945 730975486 327259747 471299921 675526717 815000580 611003694 622267458 343443252 507779277 709298480 714991797 642673507 648097543 446422612 552735912 354779900 919025535 217722284 581545738 611739765 838158661 135944191 178870554 893192166 913491439 5922528 752537524 21761520 939108995 794349184 842379865 545847756 639016566 759612622 939173264 165181761 346541752 333869173 870568804 793824443 867117507 213873062 815282411 395471759 956355273 414042370 422118274 698612398 910302397 54165094 466062338 294286899 578521119 256001343 467996452 436886783 549349295 714486952 985995351 806416429 833208158 554691293 765373783 219422764 508574113 794390996 938916716 637160046 964008098 223266721 418759475 77693818 656664617 308856329 864796765 623516525 901977970 258636328 655575478 632912803 919191015 932327318 993081564 19355559 491592650 387782363 588196993 542194358 943464463 710970844 769092894 23846692 866465292 720236190 791882169 94750437 411463126 856168998 857772810 204711291 796461178 145660772 388380030 365916653 793123517 396224120 520858008 870717294 917687722 967654534 969983270 464911459 815940819 701325875 798123471 181913569 679628573 947566315 979003178 985430265 999404480 400968607 609826449 662315619 714074762 390743559 598210762 789368431 838439887 347110883 638277725 89586441 601115040 281201911 993940122 147351405 544830839 97031186 999865428 819547760 910432899 590466732 689426093 642828694 741778411 492932102 908679076 194613269 337677331 794370238 891622372 916003081 997160503 213760237 424923625 279446984 453259463 576375119 698305319 637637117 708001604 243689562 603671443 997785485 999671493 878068720 995851895 677229478 686509377 751020711 787168604 874667840 978533068 204662719 238939950 229349906 689730469 579879322 677925954 557711973 959346142 303785723 666010535 181199379 209422938 838603852 975505226 874508156 918134047 948087 964030699 267486243 486898223 854683653 988350541 848520186 924827044 113557033 339356043 398671606 779886877 614764865 725347453 192904088 415625648 14953597 453730122 11467746 818033889 88356040 911269508 215666101 700767194 928446476 995718864 585467321 645737317 247284752 385974473 886099654 971793720 977709473 978641719 337345869 866463009 336395202 362934688 838360810 909207252 208707417 619580407 661126607 804583928 483804902 605580062 380473221 703635983 899092298 930096691 279091129 326050578 590635944 693951755 975727760 977817293 544073990 694860142 205920935 502895369 33327240 883091741 811266315 941940070 354470575 379590755 764147690 951973519 657423733 834191246 246859863 831639859 961107436 980131500 522951063 693121302 353003995 823115796 390493752 683277183 358441160 945425648 929791914 947568368 896819791 954069765 351587207 720719776 322327642 921467343 243745586 483903755 734524882 957386027 143942785 819946384 85090269 682434069 424290512 576018065 679636377 740507975 941968655 950891490 575622706 945209973 512314528 835229989 431406880 983414164 569939572 981578501 359173121 753767943 781806450 881188663 933285792 949329107 500801493 953917993 55696595 448203616 521257434 741709829 125856961 563320675 502934891 889067585 399956988 516284232 220835798 267221770 115552190 648753642 556540401 906020162 132190459 466933914 18989161 371799797 887375605 963149058 599800304 986111260 421714387 493521456 726347939 924334826 975087506 987502619 374882719 911946206 611706916 641054966 16280610 757501645 503225512 609321852 328575735 771258732 822689768 981009897 910558295 920759313 784595380 943654533 610633795 774284281 770063929 910732741 754584400 783341899 969574657 984553855 267219211 647972502 487063572 499067162 619194529 869930350 152870272 834395120 9936790 257750238 182816429 297578408 704911676 913847620 988872184 998958074 604416647 635539877 114054151 315982098 188944574 378542848 828041090 840398934 23067516 703712634 644486928 761949456 207667292 677552973 796342830 851075331 451858917 887125032 134388226 737405704 896915292 903800788 916806015 987578686 540492179 850243762 981463355 993748338 996223773 998067629 277831334 994927802 267535369 517889448 881648327 986333895 29885770 200659599 63025414 948674825 15809933 947695075 269098632 973907102 838277960 917657953 736259879 823780071 24029009 283227078 523047504 627381704 392972083 585363263 539711231 701752169 130620200 923927227 898110160 948635305 458944536 590810849 184528024 806397728 577939530 814104393 516144844 914481458 287455851 427560744 992628146 992976432 302190451 931019390 560157945 657493896 48992337 114742772 372113461 729420942 368115219 899097312 400710302 787143615 883137205 947917210 64821900 594539163 734858055 849035420 743278416 999858382 126724404 288272522 790384878 995888765 104777163 223426514 515357093 784121074 821884098 949681100 711800232 871264181 62239045 88341109 911565744 944477278 1387241 925345305 36697181 592154833 631074493 729226803 314363070 554952171 688731198 706377906 61552450 970918867 987878888 990915512 703331532 721872211 257360464 354838652 475391463 739817337 573890942 951528625 171350963 839504090 569199929 906162687 636284338 747237522 526371007 685300230 566243141 973965482 152141665 922376056 319467636 466507830 869752819 963199126 183774328 745500756 532235036 538271055 816024604 837749789 510765733 530041444 329954343 814513001 691501559 761998517 470295931 863381477 153992114 256750787 315461997 454959189 525627985 845995566 541553981 790498628 637017080 770114126 477002919 527834593 105352021 153684082 824647809 906707469 773435891 844928525 521487959 749862945 538236497 831432101 952231665 998337987 207418212 856891908 878974003 988349592 762989493 861324346 376541954 681850024 10828838 66866556 424014760 555025932 298515684 973046141 211763522 962078151 586130403 682130247 941880546 946903100 798241680 837237739 856434161 922853395 401786733 994878460 271863874 504547808 313122038 758961743 569752933 856786233 760084966 974032634 617595876 901934649 146964642 205488856 791235779 842881330 240073046 884125423 137043058 660327727 914042886 970454545 128394073 853288013 494792892 986350415 765096924 823628305 168622612 756687298 32111876 84039254 881910777 964474502 616581244 789321048 732006452 969675781 352049775 585368667 107748306 108425929 504212076 830202268 385950395 792091424 615896781 967113673 160693581 958435258 487234937 616843207 47385445 479979525 925249845 937957042 393906253 546857230 321054148 490246871 259492527 398359639 670241464 899219247 819966806 947203074 186018218 876329402 591579663 609410201 953584850 964304491 215829035 557474155 337700100 648634996 839730658 905529741 139541120 842866441 494892294 715939934 810082567 840052697 463698318 786606464 12961866 552872189 272644044 950041446 573493766 585494008 978007619 982026697 531230257 813936515 74854328 495968453 813152597 831335001 761806253 841237027 459092796 897929437 388817547 857565966 446351498 521302001 832495950 881530910 604643845 672244396 845228954 992540179 31252185 536228963 82692038 259283018 542667696 702818239 120702291 825280259 548588684 698594239 468296518 958717527 136842668 920451719 397005803 553734006 605761389 982841278 68029034 124329413 632186277 881484852 402474723 836218004 700889936 709547383 592785839 992763878 839596542 946726825 349252520 688025099 400944553 621475228 412843248 559118072 959489254 999816938 438396401 927881507 509850808 820152468 712733030 854635411 114919794 791774435 598736202 846722194 923980895 966389985 498608496 963897165 158719932 568349614 324609110 994163992 575706748 589301845 45328847 604579202 42515808 960368127 719511314 774365331 766220866 889276656 465366949 916614981 82933195 310007183 113184123 600486525 516747401 985840155 510786648 952906526 300421816 393543129 870170843 972537381 298296521 721895476 407465830 418215599 907829232 923913809 464335886 845410781 118664958 738905396 114531296 172980443 288319757 509532956 493645411 705169236 347775413 428142696 913957935 983086616 956426067 960855556 190445406 602050566 520830658 599008725 434513587 715993364 816290256 973610015 454507990 527810178 842241535 996348950 539856404 830566595 349715668 978562084 318396364 547880473 278934530 784197483 231368958 596580209 605298849 816442125 61310269 538350861 894515901 910699931 614760508 763913872 288465163 861944752 481807218 851983207 305332119 390692207 96020888 791933297 378027655 998871097 961781029 974270839 818536597 934560736 674438393 870271608 899929791 947347677 925658285 999140075 952190225 974640266 472291486 846278200 939057213 971862961 408938498 696726436 447902565 833059581 549944965 832297626 650881586 775736665 788646801 911366689 860487517 940560027 424057042 992331031 517619086 743885693 217374992 933373453 355952890 653075983 493259231 493463106 559664986 992979257 764787080 856224803 365241246 592416474 618610427 990731460 964171078 969122836 165875329 385327490 742654548 753092753 343885446 740514543 146317592 233690484 597351932 622422804 386709498 650796466 97365300 304321887 375270668 995808221 579710086 591642588 426596466 857518792 762182284 850539963 798628028 945062826 899290265 985159449 467748472 910032641 860412854 912188752 67112424 724457524 639430308 784569154 27374292 816167966 265155285 715267706 767386276 857214087 721712241 853365374 824088194 983050206 239957188 684678506 227280273 906091306 459618898 622999377 722394201 845163279 377195540 953595602 533136913 651243537 787894065 913139660 189111661 609940005 716001561 997780138 94277494 609006876 542942679 867578824 141518946 999384184 807543983 994365605 261973641 581074113 766873632 810843862 473254037 853801357 925210515 978372183 164322759 975033295 377977226 456138422 581545152 603722097 594120458 771460003 273448697 274643347 359837230 948182824 911412368 953648561 646390856 715779218 241469126 750280904 274310164 931548963 561399063 587278483 269139645 372408026 260851804 514602178 275078903 908511388 431099325 927589833 77174890 220527269 453784480 682235471 927050710 946293023 43888653 79755745 25247197 183334611 486045219 936446866 187530738 367211564 430233626 897761509 457042151 733090070 654917449 865070454 376687671 631478013 746210826 995560438 620447999 681475969 800778890 814270420 550922204 657333379 466562969 738485045 292908848 344991454 544504041 647598252 874718032 979516384 895088308 985435842 765464633 993453417 103898214 734918260 862015499 983146030 47897479 878561356 640736525 708902944 541892705 812020718 282526216 747681632 370807217 411809090 201240763 604827410 421506272 820733848 654467090 891335727 493284329 933495921 175208381 520727629 606601563 873853148 272964443 698423264 186368868 443832137 245977004 742322249 835837570 989273708 239439471 344358026 673518147 955275978 908132703 953193611 92188319 187633531 720553726 728838191 64739104 466686907 123858553 384778895 48433348 466921309 96595454 647376931 69386265 826728549 566134347 690108129 903948529 931478736 861309122 891732750 582473119 842160635 630472206 789018422 930941144 954670198 427666868 439908761 166388374 553385000 41208361 734090083 429374249 487687563 440956645 489586642 988327945 994472836 696155730 757666938 378695066 491445999 975465376 992285181 91511741 449774868 536807256 771936189 624260558 912293720 747609294 901298579 999179291 999578984 306005371 307858307 794465647 840939359 400634566 668071171 566242924 873075015 882398912 959178072 791378776 920893598 338642301 970819229 505906138 631784067 485999449 855434249 902473683 953451944 518023387 914279439 974046957 981724667 563436597 652589671 594144796 994523134 930292837 986169220 999197486 999347888 593842783 710457538 209487064 423770161 953287545 975341330 80391363 871070940 212778623 575454885 396655699 746321324 859126763 918069794 588616156 805287160 806773301 873542302 310526133 711946466 741478277 915731775 668651274 917430838 700198902 915375800 139753617 441698113 958787352 977239951 217063191 419510280 885528192 912036530 712929739 932757257 623417293 845493677 839555701 918204526 17431835 143402454 862837472 997762471 965008165 993985778 350721461 363821195 586489704 971174331 311061100 602438845 468988242 986363169 437058861 672869298 397047574 963375858 902213890 982065891 504134572 704462600 923455080 932417740 87679089 315853108 509579997 664173210 71062659 374153487 257597945 958016675 268116599 631744140 257544328 958588433 473260068 899707364 375058752 901548586 56156986 356519853 111031599 533891260 51394241 774731305 557426166 894091501 278834973 524889156 984983996 998521115 378921044 946895466 637288325 746825954 495585168 658125728 159754473 822707788 87971867 569404649 341260699 587954225 67850406 938478037 963977784 997602208 420294880 461028695 420175797 523478086 275463245 697435157 318806439 629814953 891596966 904063958 968057404 997709162 675397423 859299541 876774026 961970077 485205567 979164286 112373608 982573494 987791849 996347266 262972599 797756722 765154348 883530814 869482042 904374029 834868341 945637407 959662761 994070225 61414982 196589403 610233702 647860673 769531173 773490619 524786689 681430445 969376922 991011987 148817990 291753026 368580354 694331196 25666345 323239699 387146559 666450922 431063237 517281363 427875310 753322214 539403052 558378477 817313713 840297656 929796594 945733894 320401161 584644874 318041411 452595357 191001294 277804240 522047237 606580256 136042762 413396376 746169764 776971143 403230200 475277593 98366178 211283497 775565322 998269938 685135661 960871007 857906249 986853622 313708496 344961130 975529688 978977666 839115265 962245778 257660891 985048602 173729562 598024296 177351600 839418447 31608508 640710474 67087004 929938212 563259237 910964986 314961428 487122403 164228865 314365900 142290149 961284777 217204808 414986394 581945594 747529286 663752846 714718579 703116506 719490540 942995055 974140415 146712539 640476125 987829835 988098234 272245694 283333155 437754552 558826988 803450001 841567207 98399953 308075424 480254261 694498101 497250268 643185373 541960243 781744160 874684750 941007317 661412772 761186254 659907243 701121421 489357544 999676090 237377642 593517233 30839244 375740174 226316777 458053009 394638745 483870214 416925216 743871662 492601855 640148915 13918883 702199728 697338772 734988109 469587013 785367257 416851634 540191062 695271392 817719980 817907727 927985339 633649770 773088888 907114107 923712275 544004603 739826245 639728287 754300791 911221614 912846525 763406999 776435961 96924808 571454076 439558484 973392022 595839040 853791868 503726881 919939602 884236729 923661281 264303859 327293515 235900618 486423137 398152056 598814308 983241845 997885945 24560326 717812810 173782533 575859478 56998818 854987868 14944456 66221803 294097349 512200917 91813748 677086870 775144677 936754372 172320894 688176597 650638053 775611648 201375867 266948423 554996174 878044779 430108595 968348391 870442397 891600461 659783111 816962342 700508817 791861242 730845869 896095073 510016722 551592908 381804442 579428858 283064421 797155741 75356287 454349020 326011874 961157438 347694539 673330254 524171792 748749264 933741279 954748148 736694775 836547825 17798786 777150700 615031732 675811919 411258472 826228029 257327887 453086201 635948719 819394352 414214853 510466797 17440787 730218353 828840485 843590689 746672331 902261424 226248040 706248337 529904635 799136386 437493768 485653956 326298790 686234580 720497013 968142027 699409162 909647969 503327044 811001028 813650402 941454841 41708870 949707755 853414550 868981697 348846480 896928094 886896862 972152096 196045438 866670957 774084371 976021281 387471774 877174330 197308905 454904370 305554714 538813760 392394566 713095688 223455859 335590112 983855225 988659882 7648402 442692669 333053148 859581294 442972485 708693301 618695578 670558000 684279267 970681147 946416965 946522042 330513012 349539130 692634871 789499331 632745966 867920391 780560917 898371460 693878693 752206354 751327691 994244083 372933051 976017442 27244506 47119965 292116664 799635113 275703753 496886175 650267636 986018050 178880738 868415335 975131959 997142405 683759146 987499836 67434042 903866353 779033991 874284753 725274582 838958301 459572675 716735861 393027675 498085986 459625576 666042281 315020015 330069625 341752338 860321302 438425977 728508971 169354697 262527286 83033753 510188056 201925113 423563191 668727876 797204093 451430037 926446484 206315154 299908268 22333729 306197766 506069748 881878490 593335934 625194876 100888396 582660287 87008704 575757738 507180593 581978667 291668241 485067624 615419436 808003660 419776137 512536984 238311808 614732000 706190833 746366933 139172327 324514173 689225744 703976729 434295824 790023265 398765242 604230695 18853910 534513165 981065987 997899341 121540310 981240961 306016663 326600166 817065933 892907688 371190559 575757645 750354131 887582090 66420678 714943555 874567168 907333148 542070649 666949960 51067605 951185049 122752483 196233870 765091504 966308138 897355284 921823041 498127238 645081557 807197291 857739148 830984572 931555642 206345580 692844115 212692465 797361086 781955014 896517493 341111565 688818210 723906871 993587871 687793158 773683167 495668169 507120554 377799614 420682353 36609819 905396476 6724254 845605449 780815343 917124774 130720280 724368038 63533552 181112159 607446229 815911815 590016009 660425083 705033960 928913856 900251353 964659486 567093415 690915001 971551042 974777232 541275653 664616928 581296153 963834739 349363893 660169327 708364201 767797816 872129851 920166810 301747980 706367291 142729945 970271517 369765860 553257478 665111923 823263497 550512863 977686845 79342788 839927831 891182321 970640904 46003119 425930514 850711326 903761760 121526571 597370877 863256691 885617385 448226004 823228446 292944897 312517198 627786260 928264341 299200268 978181732 956199885 961672766 667676890 723458505 655197734 658669720 685223461 800742822 258699569 362486839 777229536 976809443 270478768 902566747 941502904 975900361 933378876 989480187 364913085 852430987 85399849 477440425 423683181 434214704 165335797 224652522 29685625 377346951 739824579 790781347 442825435 975618669 629707277 702890850 77833700 863542704 485350816 708256254 706157248 866822901 895812947 988949434 938897447 975550469 285787276 882259131 787132324 986992978 392946011 765257725 207392705 216550010 921196613 993699046 916641664 925010023 174485485 882404340 804165325 929179937 834544383 990395462 16843951 87773919 377218884 725798948 904162160 916190626 204484067 667227603 711722862 921652669 369855166 837595059 998073789 999945958 743879781 818366256 620976234 717713034 54243155 703968947 214875512 643831279 374637020 667256266 653193943 842609063 628138827 656696002 963138200 966651810 339879958 632638475 785910916 894691203 416689486 818666468 250358529 889743633 910325806 970210026 338044279 569778057 344706025 744268696 311970860 714297932 808459735 967916370 788506874 894015760 703851146 960138289 687244871 726194368 675640279 700791656 327197843 532793171 854915129 871490636 55979259 406537454 499563701 790524676 203567789 943872474 998189598 999401490 576825773 771549989 202313759 585485509 730473517 772093588 549308542 842474185 641642249 974777500 254241859 938277368 865770545 981643035 700177408 824831427 884110126 951945781 296893520 643285567 300789817 795659019 198476315 436535709 621039588 689910116 609703124 994090902 342781225 364155028 684811227 765327315 777705624 880762856 342778914 667698213 907650991 933143363 969546289 990015754 2211906 243494280 49182943 342836221 443280413 537148828 641275387 783055287 231380197 274635122 495481681 954914398 596536011 649591447 517657119 530138138 722558719 952407659 921858693 998359302 452622163 613989652 621655724 875448080 421693479 872157830 604636814 660020016 808242585 811309991 981615809 987495793 255630641 343400075 263086625 500765119 709849644 902389405 376418386 990159620 383523469 533322092 451766751 496819391 5673998 244006780 880505872 951079633 407005609 931776818 916940411 961795375 221150476 487959654 429012058 687311723 347189556 738295098 441983975 992305360 912260657 987168657 636396817 898102066 590843559 866243372 233134152 459464139 110029070 115215393 123184186 791444348 556448062 926867095 189552533 428621737 138394546 450792304 443844512 800125464 867972746 951812498 801655339 815153603 362636604 987840034 8001797 118861801 732813758 732951179 261105513 657260015 940334232 951147700 353559535 826352818 134218912 477964957 146311960 967206680 231584691 478434204 781482952 891951010 972703140 990961476 322522921 971016650 698436838 741878010 779674857 884317485 579127512 917446138 118705401 918803108 261641067 654602989 418803181 597448876 500639588 590287103 926252040 954992308 636835563 883024134 521235407 830750092 203646547 639334696 122003749 645089899 416140810 814307021 267109198 964991665 351572104 700213174 472095173 835413585 136743186 209561986 497400280 854983668 513439932 616484602 111521775 965528621 791842500 832204552 344965342 567135962 623746239 675857143 986534350 987528787 274547681 774113848 548674052 595816353 135382848 843449839 716487302 858775992 918551159 995897300 568843130 793740193 65839673 675690802 933275516 977258214 439418329 858505237 796158637 986328980 287199222 969915696 701491513 764889926 645167566 845380345 976960373 977546191 807720147 828163511 485365950 706397289 938252306 994448625 499372616 859232963 733265325 763797731 108240897 712325790 460310231 610480321 20823833 702695335 938590271 962411469 983360495 992608287 625879328 770602890 29205617 727884538 334539498 413319580 889996281 960468935 163635406 567942793 316947440 796035454 126577886 642013358 874556001 906162851 724018205 861170230 191665499 330511431 461173866 746468739 446599203 527645579 775587132 799934121 901978931 959334451 11181592 761273368 439815518 486985413 639182894 785183058 423941554 916344189 571366218 769735640 109060577 411845063 397951065 801724596 917379370 984918948 332973965 922619283 217473431 345645009 899497243 934797083 152136329 523272229 946651974 994893779 13516271 93350493 665050706 807950305 886715043 978949109 34664426 75149778 521729603 970406876 486642879 692227024 320870450 982892295 446521328 815015283 736107594 944460821 260081827 469044123 451185736 840780924 646245023 820063797 69127611 733632974 243909389 708832971 670886071 976264441 287447005 479332696 225656300 403717571 630669940 796990299 663535835 990734479 528070008 537065439 991412025 998507787 347254311 556915614 558009454 832935139 108766740 181355763 312929574 881463899 490681300 840318138 370186978 985163781 857022839 955496175 584053756 711147175 20860656 476453835 127495116 775522281 350353444 874147366 836812100 871397487 169182262 596430308 854153947 885338382 993893411 999298279 140433585 437715167 693004917 749359530 327904349 666229535 295777782 522796199 106584661 484222325 595138009 640050346 320092204 757176404 304269538 804479918 825983244 894625598 744049469 862708260 788801076 838859502 968694922 979910623 399486579 568042461 937719474 979279192 366447565 906685426 888870599 903024222 892831728 965423448 679592839 736450735 277564258 289564289 211057819 319703091 814935393 873831696 462973541 811800815 935241211 942793634 543228840 676297129 53485361 580542898 251272507 318923864 697870530 964790180 7109459 333838794 870385468 991499844 93052854 692247383 395805167 793875052 191872148 703143895 807699575 871547259 605857363 957745319 202733422 568492115 546878024 949481851 627415938 807636021 981570198 988804018 707824984 809433690 492146957 538772764 99172005 991388842 729609039 783527319 759868803 840590346 297932610 764013698 54948858 544383129 560494248 862340752 298165902 796281852 716936960 805788563 778245566 947692991 746463490 849391738 165195897 939819555 862914129 898313642 766007691 960382885 601182814 659415601 741367009 913136338 525413675 980313872 968873766 990055572 289305036 860523731 130290997 724008609 956487775 965067577 127369578 376279764 780937889 833124016 477305984 873608828 761641933 992783888 555358741 569791282 987926963 995172828 229674166 361387325 649992309 800603234 56116414 118859386 865577292 874421644 61006883 862175827 47034954 376781402 58504476 934493083 138826795 203460803 453030962 493220948 360602122 496854112 91357002 688243274 969155684 976645054 245879453 844266935 681724518 788152620 463736703 611187094 474695794 854366554 629142393 815291240 12018418 386012108 887530 602390798 343419282 809337348 77678163 526793138 9120218 48124965 466721877 701609586 351594609 758294170 71381362 816765626 402917130 899697629 602047232 697628895 648447139 955205871 684050068 705756827 221235263 729150439 36353421 714544720 744691495 980541412 644243256 816045978 85771511 840532985 616318083 650281051 570280367 911925337 356297484 832383211 917255171 984353498 527008835 850102617 315488030 653270189 849834340 959621391 357336177 627090045 929500894 980351633 772490567 967172646 746046000 921398924 647419790 944285640 755792186 793564021 447235396 591817104 578309727 950075047 569839096 735439940 999654346 999977071 994367508 997976066 695413180 936443344 167732131 372246014 338001050 907026440 192810426 530904030 734579367 921329263 759596448 801742442 775035433 968238939 724250321 948409579 40793812 413793401 135458812 163021811 714820542 728559314 619949504 787687781 775987557 864206654 598134057 792019573 317501419 586314999 547150430 918461673 855614404 865041111 998439536 999779350 913738296 984228711 341143542 961703706 82452519 212238807 382834232 621661891 373646557 621905672 211770059 665202851 462081314 936711790 672693199 992102483 54959422 719166640 38103646 761759073 988904866 997856190 25982384 762486808 843056127 872240828 420517345 645312988 170187012 337908166 211162994 408568738 588535843 956822362 277544136 725631758 714985124 831075818 978051613 981404189 899674237 950833161 163187123 484124258 45790618 572973778 749004659 756403207 785513539 805292973 946946766 967731566 875625102 986368322 179997998 341448675 551769327 570060765 252884249 837880930 275311726 360811356 224112200 249955275 374312086 869310813 402991434 580636169 906961372 991411545 547724441 644053545 350241593 457153966 753051135 883174059 172544030 429480321 797042452 860181711 496583711 718305730 56094400 387566422 720904589 807547798 340998187 998819344 237851671 495239840 624101513 803720673 171374552 497369476 921271808 962761380 195278144 811454726 652115510 836347463 635880460 828698733 774045302 788265420 386131838 541662304 29878603 852311361 8904005 55613035 416351209 711220830 207823015 849287779 758924068 987210208 82954207 857834477 787371423 897703423 982528453 999333487 36499355 869377314 70762363 261738864 304760295 931085902 360000808 942041893 410165339 587093721 956746990 961106950 306361529 953395861 527960058 844928230 692165789 954736855 648107178 803111295 525292192 681104182 282115789 803971778 988055207 998213092 580069648 770389785 950717243 995541914 599524371 802482482 415892641 956163092 939822639 964823118 539268538 788535178 273494780 307531397 387162891 985831271 249542773 978565402 144676559 663423826 654834728 918886186 661692015 861565681 702116999 997868671 264560744 769550112 297208938 704106986 457336836 842966496 731348143 819631409 319877720 519961612 926310389 942886472 89650548 831078165 734397174 999975279 158754091 697168201 657560481 864877042 455812710 705135494 234898187 566992917 220917668 703923554 945794502 983307949 811490836 903582905 71175512 229251363 532165247 734976331 996123037 997493318 555886994 639585434 902761937 956224176 545851218 672360428 409490422 960746982 400143701 657573556 776735949 790348085 849000390 997295695 204739267 707747303 893309480 953374473 913936578 976794752 966162268 999367445 533033747 602967233 689093589 737803002 646251744 987396117 150132262 384069285 972749950 988696765 939901006 999950383 609635430 611639835 699784807 882454598 110605536 435122013 203037544 214988582 557896800 679415452 907279103 955607946 420700307 928404978 465384299 866373800 803378302 928596638 820577251 919898279 319777639 870008148 679403558 879065083 600207950 881646752 539691024 821886399 776729963 970402737 330183313 481642017 236071631 564393171 289812084 975500613 879995410 959157109 810915902 931069723 561600914 941756493 979729221 991982644 690324593 727938681 219755934 613382289 479313983 564123171 983172412 988006691 38935637 88835745 699792341 853179485 311007058 992443521 517508139 755814619 680582784 849328706 86298837 700910717 14359933 198048605 893069678 961323238 506871143 717717524 429277258 539606870 313690583 708623219 560198807 759797013 932745628 947593943 421177502 554252037 695961190 910528960 629771172 779085685 962305045 997152072 38343266 937461288 63966550 824659259 356698334 390066950 412543738 618290135 463039257 966599211 809631908 850612779 854643009 854919190 905539216 914636810 402575290 729293736 657128541 891891107 444529521 837998827 828064375 987911039 127766173 131214733 346982688 810398364 900613392 902980269 57411391 200897852 712894439 983203278 942850835 960652544 152021904 291625213 342465819 660716886 448482404 477762862 239383263 447657845 41029578 691285954 393012140 954495483 345664476 920374232 637173406 767405253 699025743 907671534 137034515 519850817 5039690 83843036 667027084 752489049 821583371 941184646 270586190 290531974 479651298 697010611 740947734 991281259 720726468 957944058 519198597 675880239 307042526 684591912 317461548 936098980 22602086 444657997 26898414 909903787 610054076 756134473 269767083 822658295 222238939 848224630 266397238 877198192 842098449 945730105 725997382 914676849 257356683 840873053 880276837 913865626 453712838 572609847 613078983 727173678 162935455 846007382 989106648 992699672 880440178 884813117 887830166 930947827 493890144 687787929 450121468 571660300 352964755 460064875 830105216 878649204 312933854 777755344 767768933 831202479 201344023 421069126 106284267 432336438 285161072 656737761 349449431 848555359 776320894 955940865 136923273 367861920 647749535 680030853 571283663 673701103 36327474 485010181 723627494 834855921 64257445 245388866 179206438 431213269 498324141 966805365 805747530 817841753 318521324 622736009 176696118 218017911 372363515 696031981 566490216 682490867 301082206 366895944 67156726 289965401 858053798 929072665 121797805 444785630 202626268 898520493 888762288 889603594 678318043 937823175 224028315 904192423 754812490 856442375 751719300 866950299 926984001 939955149 685017643 797432980 455750262 888662359 445352755 822005457 863103951 974064867 531862769 849846946 90563333 117936584 718393370 906572485 219716459 330671343 150202797 357185918 741103124 761170661 224223538 928238169 353905999 744660119 622266565 727066173 171920700 629669923 329246923 350983523 671241268 821854412 421492068 529333402 495521580 710421172 535409171 927662579 52021911 719052656 536337270 637050825 866100897 990774462 367369653 496990404 492031381 800074475 998674329 999692759 19998217 634492269 111904317 429024535 274253205 581742856 659723263 888554850 498258419 781036562 882442287 969730859 736190567 829512656 702246921 943471920 98002458 588865897 687539893 892967387 64863019 71529978 18445761 511471907 617761562 691364286 26657613 662125666 378744531 674555429 381373389 807222399 610890657 755735145 400817190 646533860 714443385 990670872 586733874 783389312 8640801 732732299 459780582 566239081 170823771 304460634 689615030 706896650 254201803 881402620 289283069 459601273 996106893 998306667 597962922 978421632 733663890 786425541 18381250 864209743 995018428 997304192 911645269 961883494 118516957 562890514 438882843 543252404 200199400 566063418 292687132 448398338 408192197 754450831 757613744 959448604 530594281 683527777 446509015 499373392 469375514 874239032 68942537 685881718 192920413 292742514 36184574 179896135 557494131 570281941 615198032 741638778 337468826 767612185 189062162 337016942 853888832 967580220 23650916 906968101 766588294 790391731 887521810 994726837 645138428 924389191 502578065 836873068 59298574 485665938 637670530 738055252 656679471 672974800 118947844 702290633 942110388 983351696 965955194 985312566 946979036 964715256 9216253 116827665 337211497 587283797 471670496 875556144 647353379 751018383 457151698 834808923 29882307 840374930 524735445 755303561 553055596 583557816 614729969 657123586 2407949 764777833 564581147 690086801 153167659 864790391 152075722 903866273 187198473 990448492 997084450 997142646 963260814 982289854 536508440 645293308 143981142 667943668 748140958 950916770 174688030 249408788 577243440 866457413 86945830 592403066 35289425 615764839 607090977 992312825 945955780 973988993 167541253 433989089 458472733 476133476 961142820 974336138 537296346 817559925 118401407 515563109 791954348 858719595 37376141 913568036 103773700 826967232 755568101 836140943 196561696 885710218 976854388 992754879 803226460 960841787 98609902 143085521 34411169 479196561 616056406 701644259 741243997 897760781 407343427 605643072 286433978 420858601 147884628 987169304 607740854 865297281 810397229 821783361 792928154 972376257 484068392 702778402 190907038 380712998 7841584 636598497 336790780 692479715 884408163 909899443 81499332 277981077 898754720 933756500 288886425 413777680 464382389 939111252 921269419 963976814 108910831 535469060 924403924 971269620 73821502 457022647 896604431 985912601 457683392 529949583 723869794 955502720 724049800 877018037 324837589 451125951 657015550 918951597 438214873 794947564 709420906 789339524 539609329 605874963 666250849 985000678 275607759 355032739 301336854 645079138 223826965 957943691 487661804 934766147 803731349 855039452 288452275 728948214 444743158 488425205 445449698 854527061 240158639 666546806 98739861 107689989 45569138 119218568 630812656 858965288 9834494 362419227 712195520 780610903 102525253 812792994 255160791 771846384 815338212 831131403 253209895 394614279 645381188 888003877 612111195 833531494 781827556 791022408 315634840 505755261 712493761 890908634 247102718 520962224 799669470 811941910 975513452 978843861 687761554 951897651 993220520 996349094 761342904 828597301 126162505 641434681 753792051 927428830 82304245 623778612 972527282 999084109 613637639 896517695 294154651 818516228 990475965 995871687 337702642 504262822 253984571 725899733 634534611 946262439 947673203 955648853 272632772 745337583 954779382 993989729 833400937 940684973 872621215 944817293 179804693 793352719 110790171 263734896 821374824 896563243 383533278 903435042 925260705 980180774 934536569 959228925 562924296 984352996 643372044 818383769 364550448 548673835 481669813 526140042 725667541 982329221 178968972 385687754 592373387 718110184 593988279 606236772 39228354 446987576 561697422 671670438 375507745 573483038 388746805 832323280 563762429 910196217 643336294 709578663 212730543 911795940 513345619 638577077 242937677 745228586 398650866 746750111 781833798 890416970 474679509 506029095 90207422 937112457 93098102 977193220 239687316 892019551 305040423 670493490 484613670 632943776 900260286 919261766 144886124 505619872 153591089 234889360 32324806 897277668 166036186 228758396 995035537 999464685 154254087 320667056 42435009 470005448 486509399 775809227 672490036 703753972 731784752 769813877 657765515 994202251 726233013 914088567 524176238 592183512 206529384 302011129 325093863 560736832 460210668 498590892 562180108 855361174 875993184 977661184 297854835 878808240 891043256 902484307 73439611 578828636 689925734 953859304 560310917 843174429 449226384 724755506 415705534 948580029 873352637 974502991 130506763 216368805 453412053 731571316 735738879 920925195 145049121 938982052 953474753 984723012 448268266 976874225 875580121 963710164 255340847 520726455 343537789 766674812 219737227 379783379 763615131 990700619 612777594 953779743 526260714 529401364 60375559 889469711 502984501 561445657 486456274 803143157 110094815 795015166 262380441 431098038 857929674 901780643 567314652 773686759 692238926 798623204 915989248 969053735 264527173 803339611 564861591 830410038 482942069 684423214 988596770 993278707 907973800 955430929 255648177 442992964 601437871 936210549 965955307 992637218 289476349 730086116 248870392 875885973 287147553 428919538 34372249 633232909 159100251 714040136 730574988 742948000 80749744 375813874 197483474 267808432 223625090 455008048 142589608 243067795 805677558 884821897 814928560 985554961 598795130 682669127 736296171 946051598 305693585 484107492 764150441 879508357 574321515 589400585 818505479 866462996 600872475 609646544 455183633 484091216 396533728 421573007 302082942 716006791 652176241 941703274 621139584 822381160 619631328 865022815 626492100 900321829 484232042 878455582 82956074 206968244 405547643 595991578 672734364 800188065 312259665 618091687 312985056 910810308 480247239 555367074 413247091 742126303 429771012 870770464 800749497 840998642 510277274 826183078 258789289 865493685 533584299 972079326 377944285 390670856 247929485 554493338 994099820 998676723 743088133 927093591 505068701 695497832 936335392 968204923 952376707 983963770 952167635 972642264 687926947 974534024 400553926 961636939 357389015 461345003 500269091 619295300 8159195 83673063 184435972 812409532 570836521 707892062 594948373 626299901 733092359 808566002 504780031 672828498 739125686 872053579 956532879 977583804 270002554 747239073 985307983 995946473 617092928 709056767 47475913 194083331 366157215 751332487 231581201 323971301 215163978 243369409 54197647 190796295 341149009 724395215 876743407 951847735 896099963 899589691 627291123 708363499 733771372 758042473 920779872 993666936 715054590 820132230 808910072 842491711 376844710 501680851 717401321 999185827 730508837 752944883 634097631 904487816 353764032 879201790 422595106 744488908 393327506 981605181 535653588 846891333 393318146 658499344 494191673 744012012 723489406 833904351 70235017 832409187 86587042 893908084 950103044 954450140 558926226 973599743 670877137 727741207 970773054 972270222 375471647 602956375 196722304 811014492 468349564 749554622 990454186 995834913 741170106 830355025 966662582 984558586 506894170 769645887 48165491 506435191 34300140 948127348 99551867 379446592 140578036 659332720 928166037 933102179 893082354 993533243 821281604 905473510 103864514 781161808 360852276 930551082 66956810 105250239 118972133 420192630 531025516 873627183 839791378 988952600 320993550 692816024 155753010 931168900 17924877 885967873 993502507 993925879 765863396 768617926 394221721 642685263 805820941 951834167 243814215 991619987 269618612 400184116 150981745 931042306 633656546 780534068 50462535 512314033 28537937 450049411 509459235 987960061 226278208 739015795 210727016 710748541 818722373 932435335 847108882 900497649 5044509 425548427 799186447 852728198 874974464 888589025 633972028 652324454 121660899 471830061 724415625 850202761 592073568 809522805 57968459 230113802 580932114 816014368 390112477 992368142 571985868 765053466 954549362 996309610 438988328 942262287 546186734 763612651 360299265 603113418 582493354 587030184 69999975 84325571 369356426 509504660 346345376 602689830 150300804 723952816 709245008 832762490 965258608 978403304 607087255 811317755 616812988 857140751 474393191 921312047 952222248 975414277 146414772 314118834 944130051 998056274 699249508 927226240 583033031 664296636 444864292 940221914 595494894 685066658 774339828 845088570 851891040 968011064 116651061 533817536 443442835 500364844 507351487 985426735 597792655 603897162 492143375 627792677 797903953 834912371 98883012 817470296 632466378 968576875 612923713 818384981 4497975 275267025 159782757 831282486 662192981 780614713 585007836 818416645 252199386 789044109 444879569 755663008 790840230 958642433 614257284 958571900 689489149 812031241 80031353 985052360 263017927 426306050 242755730 482015442 884998736 946936921 803842112 823355314 250112846 690420286 65562174 958504825 358854411 397228402 666790576 951497952 431081488 865507052 769940451 853815883 615445973 886625004 323225664 410763850 756906377 794639348 388178118 817075984 276367201 664677141 991532965 997142497 317862726 953483573 485510942 871733824 204106813 893764698 868301368 871318344 29398798 431899947 470115525 689506765 454554193 806946022 84537118 570076109 410799388 971540728 501276226 897738524 753487120 935707496 964310695 982869947 571291950 752650207 317167235 540268226 780192089 867360683 677414424 948015925 917518338 930427636 413314285 622318392 879155436 896231840 900510775 917736730 518282608 716944140 885116284 995160678 147501306 773740531 268578396 997939099 710617995 747388692 299637545 592008708 897306638 976254270 929424362 942461830 743736402 764901469 895331417 941561817 518512270 729219253 133861056 718476207 435910463 796627943 832813229 943244958 153207658 362010178 502640149 804526428 721932875 839990882 950937906 983895653 696550168 867275023 696936462 719888880 625830784 842576875 363168174 383685524 688607028 889125755 50716622 447649038 741911058 938457370 594399398 799311498 51988291 100135516 375186592 393987731 82600987 770828091 61381496 682940410 520527203 601605160 880602001 949468253 764542993 775122405 699404650 874210536 94729977 680185239 667791422 891050646 513906608 965609449 263085707 867596278 952333788 954328453 242562814 419083495 141665993 172097901 448824973 746678784 802784773 871891312 991831078 992510226 531165440 764810737 707354801 769215831 193601009 553737907 140458144 998765012 148751360 499415458 650111755 947809712 175383138 179991882 368905291 462600803 257578271 353763164 870754248 912743199 979497397 996876321 138549590 640784304 647228419 860452572 979830280 998890217 57816161 88434329 466909865 816310368 54372696 856391075 204558913 386223587 148741258 593873806 863953734 925320134 335242274 617897978 987162223 988646984 180408080 494905106 139095255 734233718 629118845 829958275 963197191 963795840 700125447 823502750 491538369 693369534 56506102 753045854 941670816 996150406 224300630 833897620 349431724 568829130 518865995 590305990 904217282 941364620 697927051 830412234 61038469 501650863 184681966 358784898 144443576 300164639 698684616 793575847 106060080 559440707 308397696 376770237 604158746 677143669 93038381 672246402 92065137 719866777 18381471 184535665 161173596 890896217 417711344 932449340 725687183 906557468 363588375 467013352 281462864 603374423 817704980 924163713 620453009 829502098 563978792 827765559 609337050 691160287 913309143 914157691 380459510 841547151 527274111 684044889 834924433 896682616 269011670 618753215 889134420 956270049 8460266 681722547 434765481 916379542 651443089 977866879 751504451 985748144 587680669 696948951 763919251 765787001 94105097 941811878 936275983 997911757 547404597 759659230 228712658 606990724 124994766 680986145 801639704 865725373 819719935 957182121 466139219 982378472 271703166 887498997 122750858 166311451 335162222 888753659 750362913 797090485 226555498 842239218 859013561 889273464 574005740 765094280 454533338 499530096 833987161 966683905 352176449 608910419 223062085 873605567 770758456 781456960 592577655 838585912 104320366 159356724 838253823 887800976 838363173 890341794 150647770 168871891 919974876 934864178 4329040 701136911 271219768 500074956 802142506 905395421 687917125 739420041 11201587 59619193 214008342 838926878 380290578 655952925 576743954 913535551 591803903 819230167 174414651 759991478 59361827 603406387 832549354 997745589 569137473 615422641 994681791 999873281 426817373 473821584 908122232 987222860 987216894 999730518 550299694 960257110 780878311 866292472 870867859 918787115 577232402 802698457 854990037 919236176 52085409 513791158 444355680 950860125 237368014 891971036 627357969 671093932 831948855 913155208 523787727 953768736 850015911 874162555 676448903 810809023 84505207 858887182 69296927 975853331 691535242 842940865 315388919 408870193 23756457 889081590 883710511 955655862 602691349 977654118 465829273 819612614 903792259 978391109 60413510 143426416 238713583 407980756 137872246 631153596 116058157 900707282 939601911 941597616 749282082 997617913 818789133 827190396 407444466 930802041 401537427 751629335 706588179 979706338 769345706 840725256 856913016 860904494 411409485 542936176 973910301 985202146 155383383 733523416 333370271 443848553 239859517 410921362 608352304 915141261 862547011 942947211 923412936 946713750 879107546 957759529 177364037 794199037 180708319 391619807 601447611 796722278 143325626 755035242 190156222 260636183 833529502 939697042 206914173 656811737 575877555 902477299 387766848 722121410 325671385 756066679 556351568 933391804 95289419 541163513 198133562 475343390 516814191 678960198 252205588 537306817 575743314 924158680 783528425 848818792 745436847 797313003 722843633 730769821 545209049 906337810 258036297 316576209 882232202 885941265 282870531 530165969 328490343 563966624 326814436 721948512 944895131 952489659 709415287 919642067 966132994 970951756 948534178 960409415 982149718 995673653 181684047 242214429 359476792 925269794 991994475 996810548 775842494 999136135 768613287 853623459 968312783 975116205 53091614 711518387 564733525 613661832 652674361 712716038 9095121 273982630 362289166 998803239 873531976 983590691 780834336 978668186 164995946 859679445 306363815 813105076 993329256 994762048 94394289 147110050 17474497 297119872 102545636 529033023 164931325 430269243 429006986 917817048 496644093 879615222 140675774 578904772 524812989 600441728 997678336 999788115 520324253 529499417 978119802 982905129 955603584 984076453 353881736 982545403 294035851 771720519 198892662 636976488 711340766 976872486 221905059 852840531 546932155 626526259 553227001 777913427 182251027 720254507 834769928 936111304 739436614 831376521 18108312 770838494 988843519 999147057 532703164 921554638 429795981 735451071 490360860 778461937 521085259 872463917 405545831 514180232 638872252 868032250 586330281 954525992 387920968 808375224 411955716 640281398 929624013 936559171 210959878 809704128 683780339 776708902 176790844 997942894 188715955 947872322 553058969 768805058 947057142 968018360 140573877 541113069 186974825 648326725 45267410 500059885 140713970 994612151 605446102 679665945 446709220 947511523 587700986 927988932 819644526 880949061 67992813 284609245 5191726 774205647 352864958 354872670 126376226 786218725 303543024 755105375 269016227 425265872 470338159 616217647 133880791 566565820 646298300 807934895 452491589 643126891 40619768 393814396 858857873 862898185 640157898 666057731 752296986 993318960 174756148 468975499 585035741 668637203 165261421 320412604 849421806 947655284 799518112 804324657 559310908 619576724 527005206 785736011 868387884 987290396 381657169 626434430 78328709 391357643 122743664 237879263 942150143 984067411 554143722 790518726 805807354 965002496 155688925 514998904 442713937 706260569 313168636 538643835 164549078 744165023 856698845 989906702 865320973 918079198 801213172 866719133 407091642 577841243 873152189 902136970 695922961 718544448 530205458 971093116 858579182 919056871 657372639 788906652 165831984 337071222 65965003 760626359 591764824 653751278 522536725 894368271 431962269 578247064 465434758 567221631 546169501 636321476 605953945 882093831 612132338 963001923 626926389 693570296 665663896 667508967 409934618 794690118 520769521 568461533 404307429 531550664 126645323 542748584 421359377 579686696 325488822 580608339 757541359 933328103 682633147 843153656 781028840 817866901 482840345 679246406 526376101 932127736 373650179 570360841 940306407 979877569 450655015 989133726 689565813 842651973 517226385 914783095 615856947 968762261 970118439 970676178 815803673 908989632 225368624 532712224 825085387 929624031 283476320 406506770 981315304 994073160 200571373 896223188 621283511 965883137 956060181 972900072 562454423 894645865 970552938 985756182 168812121 708528405 821077349 999934305 658948887 960601184 199398415 667951105 714307839 753887083 182480592 667480110 88527120 672240692 692572622 841765802 942345633 946918632 725149465 874256798 374946843 392469207 716500707 986475751 589978483 662458631 66170137 585395576 172993331 597355941 953666896 979411949 831078851 878802806 308197662 494909361 270352085 439286171 608651848 680622049 383670467 815351117 999501899 999783886 591624797 790662272 694063056 868996441 900105474 967642201 300330744 921159629 253368578 494020935 559317005 705500853 247345010 362037788 119567987 340673561 554429403 859925393 657735111 844891755 777922726 907710198 52806549 90487186 535532395 982236939 996198317 999367136 376561514 497633632 376160355 978396049 488168240 666636978 820516374 974451928 823338153 971370818 410169591 426799476 811977618 936826005 288092188 476618710 415394808 672497995 988201445 995075853 724859562 924418357 52580162 291093611 613283206 936219280 375670412 581832175 340673341 871234867 735059579 870348242 52597420 659540556 801627225 988776039 492139694 769375209 432023650 914909395 714405593 809560695 313069179 917950257 252942035 548594678 326311173 400526702 763428870 804388861 240205329 337074032 873350485 891169455 841540984 877141260 953391528 995806987 464184202 612761718 791724306 836045083 864082984 938831421 578983333 633241908 121993097 266221758 84167909 377060548 373195161 825569216 464392216 948762223 941370385 987720461 679451568 747373254 864547483 898447093 864163157 999045940 493009738 960239641 306319141 799943739 215921720 349668127 725391777 968609146 484306438 789368977 180143214 970866457 126258613 884383623 576608044 940943993 453661531 841792465 79214005 420575329 173608053 458971263 577251903 823896539 960889524 990176644 643823955 855891802 929108652 967441275 192105518 273823634 917953096 924660070 221861395 401165396 336586800 767434850 580127230 888858773 254852627 683041851 745921322 762988583 225530643 384297261 334766018 426657559 497193581 689140912 995769378 998326603 801844445 986851875 622469251 751688590 366841755 995946933 378574368 902495429 446947914 526946207 752210979 802494194 847908002 862514926 982015411 985857243 843101579 935970729 198290089 906313249 249983241 306157862 786432606 976998528 502074633 609049150 903280274 928491138 311944588 708856954 603413924 835446712 278053012 844793076 969330782 973918087 94158427 605377106 698297932 790175570 772622881 946135068 392101722 775292354 949935706 976308154 428728771 430817729 303984495 925549938 191687571 803657463 787586242 922289338 849196106 860919127 434576546 915938070 603356423 621466306 222034899 927068434 902733848 965659240 42655718 181659140 550985426 769187386 497160971 633028357 171710785 278151384 578008125 828476196 961971806 974811078 395649321 900841841 5075005 36181177 544248855 887626702 965729615 979748787 974825381 983825709 149849545 802525946 90132118 143037692 811150626 836559361 226577462 496894657 75509338 440056666 410375579 947305282 933633614 988937371 712035749 970598799 234278433 821760094 79750271 406284052 416908373 674366805 360951948 997018674 946034874 998137969 221938011 315894489 498847048 958263098 851171538 915977070 702788721 882106004 29233745 837160283 951340870 995093771 910799522 931352543 111850021 997238404 352241096 702711348 684811867 804845082 87642665 870735133 80719827 852707478 479510442 903510156 302438486 472689037 415752354 551524510 440840083 710770363 53052898 690889852 190941328 232203858 884352941 918363299 335182740 566824225 934838912 999680126 187959713 309778986 865547763 866418162 48102895 693826418 359844904 874468117 480142594 542649776 492932761 571995193 300429981 568377616 800877870 828856174 406876004 756484571 316820461 867159508 338398248 544135415 66379479 871727178 383678581 795542119 30483096 583024736 697752509 768121177 601421793 877968515 881521539 955670112 66391841 188623029 339346389 723810994 445268280 904718887 146297117 956157846 695932440 698641424 512193356 956771704 403052539 817734501 420475799 990491493 528797102 556408469 610586989 955425693 818296065 852916624 314790245 579765374 747098887 798521242 810175569 884354716 37110944 316887294 184052434 815926848 818436477 975403185 592492946 710286574 689678965 695137096 124475148 412077627 195631256 798617192 50858356 819377118 883899647 921139986 631098902 891931126 588928690 814566605 864396923 903459519 901255632 972200280 87367854 976021503 701053271 879337290 462927816 623041698 961165434 963612310 981060052 982789417 34921778 671120259 553932214 588211229 827970742 830456566 688958494 747798041 319849660 972499152 999074625 999646361 383965864 644318338 346848208 694212404 683849006 918711454 298021641 681607969 246185566 707341122 104068956 590063749 930593473 941167854 155839273 422036974 552548276 982057013 25002100 868693631 430778625 931353112 76728082 631961760 85437599 555636681 756197066 945076478 158135911 952885870 686665016 689304500 817670009 876395737 577666027 905724188 660162564 950063986 885744156 998781875 568809937 804218790 731804361 962811502 769067379 998748654 532381627 664157487 813276786 881060342 595510328 873834457 614311314 990476425 320032930 538652684 618162984 760929103 115935826 305423844 225137059 281210074 594007180 610213799 597674193 841145723 502281360 632934856 892953643 898867625 258888849 366247098 491288513 555527361 328981568 808982083 707018229 872512923 27505122 224559573 669770009 876569466 667367349 985212836 638768863 871009542 684134864 768005768 569429790 886789694 369271476 809477255 53145809 927692091 689654012 914073282 137228431 864265550 858441610 864087318 132440034 656880485 683787795 903248226 398728013 913127157 435715546 977623507 504992711 779613203 279397214 324982781 821442133 927029939 851455520 866319007 735665451 989097969 909259098 987114056 347704967 349485161 308167216 979538294 719046379 748079198 685844998 980326206 155258712 164706746 520066854 835384885 210346015 935428304 502440749 812752809 64340328 167468548 152371717 992453661 368675451 944226230 186829904 603252611 793200776 836982434 342180427 356203959 25642626 731134661 70320018 799695439 229114562 915907186 5313320 350524472 443504129 805137095 474153619 926758787 984864604 997616324 339339918 480561726 375340041 587426165 620143775 715471388 203999208 511936560 709276179 997472710 766141409 927287742 794972827 892277388 123545887 163477684 457607057 493913778 954791503 996706199 722884572 900613842 359742990 576237456 245159481 419178713 46618237 341570023 25965617 346750450 175785047 928232212 870294135 883178241 839629181 977356507 946758247 964632558 111637375 151245649 190628933 774204331 78446277 818237965 856552836 993671857 360697461 609813694 122932780 161067525 897968746 972801793 30638464 394575809 598905109 738329277 466745069 621219453 45304270 602263016 128072648 257877558 740954062 847043574 619078568 971054918 959530620 999930613 827236310 964133909 706505287 725526381 570615548 664000092 626931203 932137238 647206606 925239060 986009712 989856759 150163535 547597021 910264677 920700322 61951882 995266832 651664239 804326826 57574104 612698477 43504093 413786847 742793260 835417760 359955653 842880030 495522345 646587602 388770300 652421153 88111236 404192751 415833358 988029887 438037950 697287619 549139738 951068724 369722608 746492468 117867401 560807498 615863746 745389122 57263590 433973873 350617335 644241208 737732262 911690722 768856796 934160408 72129100 700859035 181136712 663793494 481472198 634007849 7330288 584790815 63946703 534345090 431625547 649606583 754060369 852819757 141581263 262106933 835505677 959149014 358188144 563627104 265962043 746513145 319845548 491735744 831739800 924358051 718979051 735975883 406707948 493792862 583575085 601551544 696753847 774267352 89080475 676030969 324378375 717007868 447416425 691971909 2040500 968274912 785895967 926170523 107458852 230461508 51300400 462318976 314837704 421244471 843644236 991632267 161666490 236895151 744810535 963425004 485454405 948989918 671774823 977091896 889147589 938510067 784504574 898594139 152977766 189926710 444067392 587975731 782463019 833936782 562172626 942084465 404037199 516424295 19587221 890282226 784290779 902616402 764634443 845176415 524602279 910454790 261888955 696081082 856458568 912046239 595172665 875390877 98924761 483062088 610707034 645719378 70803620 137233322 521519095 758079704 186102960 361781332 146206475 886777072 923303297 923864598 358262521 529779930 989045098 996377993 829892527 859247013 465601800 678390770 742002234 917910607 18250412 172573771 904765020 996807287 445895721 616307719 5523790 542835712 711549707 763722182 679385905 733426267 867152438 979388149 434794148 838466414 629851115 855424659 952564358 959164437 444494246 993723787 568096526 687536443 854624528 895421462 235207433 671353151 513172402 625366820 122278901 944083633 521602168 757068127 808070079 809884996 883726296 965028769 440597719 538342523 532337829 616985496 650119823 937436194 625084355 718054398 687417549 789493206 185437804 295765372 458939145 773170543 206924348 430219321 135438213 747514129 287410158 923937929 155771243 582476517 66656835 675732518 451873531 932421708 839168431 845873110 1512150 755985067 22163826 299413265 384447901 466917372 375170309 697221204 137541048 375310604 678529996 949582479 623745927 751278034 853934880 921055022 792954774 824114508 390182365 982640660 290274637 654834549 355781125 900086301 579145221 615683843 638594985 666805242 523223478 592006963 294064149 859779675 331024447 763000636 720689757 890534097 444251981 510278473 339645601 835286717 557619575 945105622 656868494 904512445 199647924 343892432 609161411 902774900 482217472 620607247 789255851 896277356 868956542 875924309 947319416 980489663 623352146 821450077 660266605 917669742 900315378 975540750 18779911 506010224 940662864 968386791 93016533 610840138 572314194 702689608 230076752 253240001 542476496 594939081 872310111 938112163 308873460 611752125 627621726 871884440 320588856 701462570 982598961 999145550 437524250 934011114 68713082 160516686 780659004 856668905 337592243 708229720 460986097 692588111 649181491 760185133 504473339 559777868 246756841 853036321 156932284 383209286 139819345 305716165 939355826 983393572 824448345 870068522 611885320 928340990 402884331 587873251 450542124 619529945 735279284 999452836 942227852 983690137 804525401 827728604 231291003 553182672 100714077 307122291 829631722 905195353 629114558 807335521 462544732 536396571 246636602 952582599 700431400 730825594 170217270 615308352 34094253 906634691 63061793 644360715 424723000 726796693 904412810 952710746 527034645 604559285 433147485 684738241 186697815 728242739 543196790 765569198 551488549 713215792 391494235 757531350 736990818 914066734 706467007 805036593 294841695 543616526 173569392 866199031 247837610 883711088 148160706 592977545 469088673 584461496 467627705 633587823 551404805 811008611 191877739 657598879 767585257 828591005 822873277 855169680 682661944 884972698 38754370 786137750 75591468 119144575 722450866 757211638 825989327 925274307 322553921 500698294 886881082 896567586 985209612 997639431 571076231 750311789 302534861 536994971 740181941 925707597 775124774 958726286 551778912 871629339 995665630 998590012 429519277 556129943 621567684 735533178 454886683 816799499 265220785 761844080 842415186 889225207 917452854 941703328 243572882 551995614 508035055 964401066 931502482 943412991 327917856 473828950 787902628 842317025 331099911 596038364 444102184 967095400 401435916 986223199 68926373 594103124 672625248 793480511 290107546 911226149 343268035 706871903 984231833 989700680 291431693 499112531 226777981 559529240 927982813 948613114 85053269 896834359 890990846 998580052 730483420 841858147 563851192 932386697 213899306 822204427 446869089 582893125 418456200 705258803 140670073 789683232 115314765 919808680 249543815 988733166 532756499 727825626 385659278 465178277 830670876 968546547 705743155 712672083 508777129 933122341 184697848 659898734 973947459 995417452 765127513 895757263 553166321 858744840 162118618 940111106 262051160 749901525 610246285 721623667 961170174 969794327 209195644 236245193 289030668 629484896 838968483 865425695 601742918 636113527 744122931 975907917 373492139 987774653 541302298 932190799 225107600 323533740 483518203 770622083 69518362 275709342 121278196 183520618 173256007 352147386 446363977 791249555 549240400 600460820 42167140 124316033 222540990 326332649 461946737 940291763 935354053 983818304 233806105 437247876 456187144 960581460 185818171 521526715 834113825 927349294 744174890 957683050 484303780 797683145 209453907 270707398 308545488 462044344 717985588 859449304 979524870 991652570 877492359 985954717 633239151 784622670 890272257 977056572 934506505 992594732 276732184 668282557 199262972 840688314 508025530 995880390 21575429 543167379 408273780 785233536 859951824 995800161 439957452 878745442 569627643 721407422 339069965 815668192 926117707 977154875 656429034 737943850 928652646 948381261 479705694 725343413 860593026 989819408 426637447 460777435 303113043 932651578 167793453 445346406 711410183 791520557 771730157 883174531 467806674 991497331 215548564 485832638 684914318 894226161 974598010 978598675 675974 960532825 527519943 609138507 128012786 498584623 644124731 835997779 731236890 953024502 196719811 938979970 524449647 711910825 622654603 649386256 842420220 925074898 137177135 561694045 554398815 642225312 111187248 336105204 116171909 441424768 304066828 323890846 708799175 801722843 16364824 170283213 688932102 761888065 965233429 990739292 673505171 679404254 510839863 728642573 536318895 826577941 940054768 990616500 697584515 915918062 337085402 678184593 524563040 665067168 942864216 989127962 565291489 785157871 288533671 300008075 241563170 326139934 178899227 271255375 289593073 870460525 861193880 989364460 733485418 891673056 314634033 689430573 703935745 873484140 348258010 745973571 620370031 796449204 41600841 758806577 771630937 975286456 182293532 356507667 159231798 190534429 138988093 459064767 385297756 551854186 177100794 572501434 501122539 755131933 747808119 953656266 340265677 365717193 942635466 979467237 567244934 963954125 429656869 606344252 629577927 632824566 707838458 792521459 84055505 367433971 418117087 518909293 371102201 735168083 131761076 820750932 710939503 715868394 290425067 399062065 18051868 874711421 134643159 522681831 129961339 839404959 883789020 966011725 569955500 955731841 617954528 949599679 560272503 667205212 98653012 129361793 595648397 970326345 683347594 724612750 958082169 974815960 379708891 485581534 494675632 661315761 427680610 823767426 45117453 913787445 559429282 671798637 966943679 991348824 405797788 704308339 444850565 668540586 144711635 206633823 464818903 894701097 330609540 855165818 379142804 962895625 564635214 577563395 889311177 919596478 442928237 492009879 604835165 825383861 234349415 501264496 468528461 705782482 543662932 928175099 600230003 822855832 265243028 469627598 61056183 259170487 793613716 827400911 376179484 911878980 400746409 690962627 47528415 332179652 322380489 566192495 158788919 530078419 799213861 898339917 979890223 990834446 920668994 949651076 532884626 792814346 531834829 653446379 570430041 820579892 753005195 759152629 26958639 654851412 408880069 898889566 565232706 586298865 539126572 802964979 812861435 929283834 640648371 780637573 311576424 324860577 366766860 971691255 678318150 967768995 720212626 961293001 80445170 278719969 771485305 885314050 459626601 988815118 478006670 629591601 405012701 887228457 870389312 908113939 285045218 315311215 824452464 864232853 819577645 820195085 945948683 993993567 636664636 653866903 345282672 606762042 635923598 917013555 669559541 868856897 609747606 910761663 352866893 838592764 946158312 958708197 60361755 910028961 835347609 942081299 805250523 878682100 477508547 908981442 334033562 718101453 138154634 231214424 268998000 566968473 427452409 837287742 84388475 579206624 235595988 963269091 329024134 800539152 188053592 948260605 874658618 908102701 215986732 538675185 2885821 12217409 997451786 998046623 161892877 412701505 853932757 869442888 248071084 824713906 540627071 796061455 415255841 740772644 552532598 670355467 743789239 791430657 242339451 904063033 144148263 227938089 408832051 550226371 581158963 760072873 112939057 400859295 265069718 924819006 874649034 960414623 671236159 911314401 82976680 409538915 703088122 956181828 951578705 977572041 518015297 876743414 314754798 851788352 123306730 924125021 976398256 996610336 858047440 995243825 254375173 351757831 338972521 594064663 187252530 577473272 17894860 500529612 248876082 353622961 591160499 839717621 799983359 812655534 583643422 884292065 456343033 824065112 227480094 713773104 762749341 927939822 871762539 908252727 272246261 864484144 890746721 981129988 444417220 604432578 144490253 876877683 955527 249561288 88854355 755294242 430740518 832236842 94536298 213367365 193325648 579315633 699435899 974878682 181724708 584131413 621578080 783851534 32701793 901061433 90271096 401790243 738438187 841430458 63970908 817578389 827622376 883315435 302417913 945413113 402992811 539697614 885054762 930118827 530709086 754904269 142358087 460182831 293644670 899959490 963044915 974277313 696626854 723890479 275278095 712384021 74983055 927329056 84583413 999361167 874500661 889901817 436660921 717860560 251562087 393061666 995543580 997979807 321232546 696461809 300158920 942193764 597283569 743885788 29074322 280509480 967740356 971453879 229811657 432952842 320801563 786259131 83829742 852707071 264814979 990527072 501565600 815034647 711413591 972048121 245885964 919788741 675949777 834757705 195043587 392787857 148856132 628771001 881646486 915219074 875966379 918768275 342153386 862155122 231471482 589478496 951406673 991305473 450451493 574530106 351711785 404444468 392796261 949253562 627786873 999657722 256117928 504677005 870671298 945546641 643545731 691455925 378922151 512202080 508087977 737847841 455347883 550614209 836314346 850621828 92259112 290545468 602574228 705038722 378597377 636759473 624468533 767549288 762997878 977261424 779554602 932364870 577131065 577823994 78634847 733455727 136081643 283519560 543536415 700713142 856815759 969669482 3381803 191557353 938614683 970805904 638802944 758057167 241484096 621761683 730248531 905688515 631658874 678341352 968916049 969548096 117068458 509799193 805914288 893089593 863768099 996869102 894214457 961362016 120482166 171627101 285947938 569959760 230735048 704685056 804775026 846391615 333695525 489995132 198575223 758664682 208067547 702950070 268357945 780793899 525841340 753348496 33534939 936472916 704900184 751739066 137874732 436887408 143957188 180749264 346287647 567514261 353884361 954148754 653616190 764204472 271681357 603452236 611838002 872437509 419626743 485324520 904611881 914284097 772824877 880899466 883536563 992420008 648355693 785645330 440454597 597133798 7673719 991243082 613412065 670775959 238559419 414726137 645516938 984312262 542725320 757439243 532358643 747968359 833699044 899402680 541967438 732908571 38568267 283201216 106528808 508249323 588036778 695495502 680875922 714050891 971461395 978864921 1373259 371740357 731023674 895931729 351729456 565453635 905134790 990317503 163093489 290864935 959286772 977731166 715249880 861242517 290820213 743503039 612491679 996263679 747099567 787075026 379218041 603083006 963126991 980014809 352034146 668844843 58559529 170159747 988124327 999737168 120984867 576432016 476471123 651278748 994951098 995076893 449242166 765148848 622569615 704942989 658147401 724403539 958658203 970300207 635774667 893368336 553298133 820102385 155841048 818433165 941596261 960002550 169237156 738734623 5755144 96972397 506982567 639601741 807146791 939100417 850310812 914264306 161546305 895002967 799655809 886699018 255604927 492764682 778191686 880483551 156795219 749990965 757952215 993867603 373734347 605298380 810033022 986568730 622278202 982175504 545627749 995226449 753574245 966883127 663734246 909730153 653998032 701765268 319863403 846521784 620792090 792587507 543238088 778700860 556720333 672733418 360907155 601213612 525003836 869303978 551292721 950943774 7061031 910095777 994659915 996328500 710583421 762632313 636657899 817358810 816053495 907376988 431030327 473470870 260861889 721210917 659186200 789661153 742037124 756671909 173075613 287696677 726284795 775528512 185527285 421757566 450826388 879084247 756106602 996975001 40405252 209206265 230610451 591510795 309401894 569879426 593939943 710346439 399572807 733699725 614675761 614847072 839426728 881836482 372757866 968141251 186063980 272894107 30951240 407611360 72258993 407463440 325230832 872151522 49403777 891476761 183318548 210948437 459439250 475470228 795447771 800029482 85197309 602183501 913773459 923756277 545344088 883213247 814401784 870213149 979557618 993809898 739676129 913729660 861093572 955699365 930397506 952205158 744450320 967756325 279559559 491946309 289126770 502742369 896655632 907983215 710885645 943466927 143749778 636346773 23565718 189593163 372204248 909468336 480344911 746522054 606035905 870127522 220329101 677864116 508743124 746064709 603985951 909702901 99455265 859403352 912329904 995543872 680050363 798648282 951898710 962348507 914083177 954398678 567335904 812827884 850012441 978708031 890298800 953266700 22434888 472523835 481402699 628250682 289887973 787170981 317028359 649594385 175103106 429554596 377414736 893845820 301643660 545536867 473806344 701915713 334667583 801859533 937384148 967157148 306880208 597830392 669179769 674284606 172540781 589334827 484837774 805314056 747863984 805923994 51291668 208093137 217697264 494096583 322061629 632286520 255665623 772521041 926950779 950835821 545107150 733934281 966069653 975775724 726647902 990397124 760664611 825033064 367740958 465230501 135356448 950980523 909261543 951787958 333995561 930813157 622863839 770408404 699312237 787830908 397270728 454614223 244383046 647570973 805829126 965291191 190125168 725841760 149617220 724299832 913677727 971150197 807861293 971045954 136256894 756285956 835089031 897766121 124243701 841897127 74655583 528788792 423992903 942512725 739292791 782896047 216789859 995438506 532991297 999616545 879153313 937128945 205945918 907067808 467889934 745460778 959230602 967565985 485290114 720847129 268338329 872642049 720047844 950078149 490538091 951133495 737860307 785985395 112999281 852878566 374760920 917989979 666985473 686111936 744936361 978847957 751386081 874952947 932766875 986134334 533442069 814917783 484423724 653657243 834166008 892995508 814129407 991014071 368888583 548706355 417691415 865591059 352711450 470982620 545151651 952134497 240383209 973019232 100466986 212365069 338668988 691948137 758727853 974696091 403741696 510370516 230750604 304601934 655117347 670645658 482252232 890629780 623548247 642907367 472483030 975131359 753231182 944207711 21967380 91396326 473563626 746041293 679184644 958516447 71735667 412032114 613582560 740024536 374257060 952093064 336755517 460059180 652275519 760726154 771984308 891338580 230912027 498872329 778186647 920113061 517602369 796844176 614640041 712416264 281001737 914230582 730522638 863942779 998842086 999810678 499009788 694961675 979387349 993688089 284285280 615975021 538069369 770829040 968756281 987591305 343626718 817087462 502206854 628443217 294242387 998748698 777911831 977619033 850172205 971431535 984697439 988138313 85977337 891620301 483349962 689652829 53308663 60148961 21149480 284014228 141799266 999989722 108039900 290359261 840397548 909215700 472249373 992890828 986545425 998297499 89880868 982282798 932100971 937423817 79111861 813507310 456302373 638057285 690781194 965939758 399179114 936984804 357394222 817708902 805545163 851087219 771936619 995947625 585381065 767070329 992364744 997405365 203431284 598919498 775018498 821489680 974098434 988133129 462855440 599793847 475670526 732195555 639885256 788342282 291546127 359357725 96741956 631380556 864013739 907999563 216584804 728718896 627976213 883755098 932696368 985491000 556382353 599018190 464497991 831967275 592332481 686589302 835496991 934331184 96840792 591794906 917818767 945804764 111115695 394338054 608354103 692679510 266713283 611281556 329331859 746816954 337982311 801230850 888420362 964812894 795623421 860378775 435213104 467265943 50990519 975531250 964718830 987046193 9898637 138927084 757907397 981784139 665280528 795980105 939421072 970708079 997755582 999567735 607914868 841768703 783996174 982952299 418604489 560226730 854001301 951311910 609168900 936877818 223685036 410345508 555074966 565697862 749061195 908917792 865474374 899201320 93395328 719372619 328683644 813822101 556214175 995599582 436510190 885112340 379286000 692794176 360898641 398597682 514897509 658000996 775748516 786986502 913141292 991673229 755385731 874254954 427085953 987533148 794828671 959599413 905233136 942261766 62270171 943799989 964235220 995532992 732366857 845320851 588822847 771795658 621434439 919535867 701219630 954175417 70098150 524773805 252042848 830572705 835814772 908998060 404846940 513392522 627177460 799863117 704809625 862133864 253643040 304021588 473696588 652430005 145717321 326786017 427637213 772979515 221495714 336924432 287600884 994597749 615235712 752139829 539782595 619250996 905756995 974553889 801180585 926015886 251350994 501223533 593264691 927672434 427096832 860707243 135558213 695021940 79140205 106415230 421312558 743103644 677593440 900741123 624660650 707146639 763926328 841330771 748549752 855644256 49579812 381782119 168588794 512108763 848230812 913093168 185138520 631340078 173092494 374700708 309806468 849847663 498033291 953153530 589257960 812709873 853343956 968077164 739686492 860791442 942009614 979610231 220329943 954989541 978054574 997069952 74096037 685680488 905846219 926548922 789933247 910760395 363690869 908106181 842714739 901652849 142897527 877399579 73238350 797840311 278516742 529099292 773119726 992847192 918819716 929893706 911612371 968108962 35460922 150211207 589526383 776908162 42695631 346338152 407620871 527989605 883573206 894391028 438465828 793698867 113259518 914464194 750972048 817373539 662181402 723439933 281014349 983130657 394469713 907434892 307967520 762498775 405464103 787043618 780795324 998823229 735332152 999231617 83900354 847141420 309721117 666861621 909907199 976813552 918225754 992152351 955364635 972025031 702981946 830341474 188063283 973875008 939592573 968710868 239409591 377079211 243154557 408783670 705141197 835227480 401474164 909801601 593879944 806264055 425819026 843996457 391390380 538638504 316397360 933454404 920757445 958010180 391238663 864821736 202813602 544776512 813079983 820066632 862892384 972749467 951491313 962090642 931011570 965500475 934728754 995691998 310626552 359405735 19225457 71902224 360886693 673742802 372184081 456167491 813064263 841325073 717186774 826634229 787929329 978123530 984932941 986517981 46113843 313866015 68494988 370296012 965480746 983584953 453632168 842698504 102601851 548581167 995135976 997631320 851957909 888355976 204283009 566971948 633449250 725275024 585366549 840954706 400923214 664575671 831623360 865144459 706721082 821486131 35379400 993086360 267545234 746454814 671565327 854857378 307405991 637939289 774508649 990394623 270453143 755908690 950093134 979902991 191127697 629773456 949771128 950292190 539581183 826916016 419106287 591197160 79511724 996575688 277183490 363153337 359792945 671648746 706921592 965885890 163786159 213840075 974184481 985342055 640594617 984735760 68082429 214535934 880287928 929481681 581077617 647823769 281441977 771771235 882874850 983828886 985388919 993731939 737383966 824591683 310115537 381152295 856923876 930710501 882797323 990396447 2350878 926700692 291926438 504149048 905278590 957822308 777308652 962391996 73289446 547800700 127142981 947681300 733905579 925276017 942650100 949872791 709439620 954316434 497856798 668999453 834962225 997675579 751878618 971758328 405509478 680828268 424879380 756779353 740768612 822317485 341254266 645547865 419145486 467596712 375550658 907213696 950001959 950648903 182500925 941468196 701787997 829218192 846344647 925112718 521613368 755511521 700244420 868213147 833377803 879144158 761642579 882874992 51231109 559570361 919128848 997963778 778033808 947426232 689687349 727678262 611840410 860800186 166984595 934907216 691328205 698162405 152699955 227829185 696243829 784395586 334107732 484186363 900621756 999201614 867524292 888784630 254776289 729673108 581186165 650484645 667950002 918920773 813560182 982437437 219122849 929399266 819072328 908647661 89786905 975073900 466762098 794664827 46641756 616916156 309312575 768023370 11535571 703117334 27571485 652369244 209676847 967372311 911617906 965078491 10278974 791756812 708351406 887473085 785214541 874623728 98685373 644929424 242702655 940401837 956704126 988882208 669326696 759145811 861078193 905340252 59759841 300133584 358429780 513306583 833848598 944080649 510788961 568903859 571881389 737533207 90423970 911671616 918534668 952988061 210816723 431948460 404540176 589200766 197904822 689252137 83522516 844969389 354829923 432265699 914020133 991253671 525606272 532601895 694825531 871073343 112551675 739017193 671320867 902912411 495617581 613133871 11079120 258841585 193949034 769356546 627703061 851655292 305561259 780799686 837273971 941214538 748860357 777803428 944918930 995090199 674975340 694475160 175887496 273309001 287632534 765054108 195028058 771279728 121004403 463434952 43608367 979833076 782418563 872348401 712094997 982371781 138730512 951248480 824441029 852201453 950178379 979539126 269018326 565772146 403177618 857832619 563167507 870827482 176036293 194585745 67677408 830181327 899766284 910468384 621024842 734941185 59559113 442126100 372330451 696065165 730694858 776910687 52023361 948775584 281609092 719894007 153899836 823591336 111031131 580906511 797016546 978584034 862446153 920488959 532634921 606435615 227305481 891010200 686305571 968581886 568472382 680391091 734133424 833140818 418771082 485503985 996944444 997627490 339644791 719694518 514709174 951233191 157929447 373761811 716286436 941317644 4958405 76719339 790224105 992730489 938727639 961400457 476121199 595513960 442878894 611378718 932623430 976162964 105390558 498118943 386809731 764787950 863289039 992020553 149705204 563448481 365414527 420934971 487379573 955918454 405785217 903365795 123998047 488610981 34690664 478030690 394089591 913505666 42468419 990444592 174113588 350539853 658045408 766704171 501850011 537611890 100535783 618907460 333723796 339719810 90660117 366880907 465495987 479352727 92726145 884157667 447712857 738656143 304234968 405717951 388667026 512567007 665386401 743115730 995374211 997721268 346753890 611440882 375843588 962124840 653224544 849347072 717467804 732409086 941391520 975080768 24229701 586628250 593979377 627159126 676558595 703964465 245693837 610583662 802630062 981410452 397326127 879146871 360237278 990040287 349853307 903661790 636440301 719970056 320124436 537145393 130708649 743825122 371934226 471391587 440731959 535943796 914804447 921038797 301021214 724253448 482150691 951117504 702180684 734307709 102780480 537761625 408097443 880125222 902499133 993437759 870915406 986288638 53194191 125766362 893927967 948396051 909792881 981669952 3630997 468792971 927763865 991174617 888240269 907391980 33381614 951270679 578152127 915760710 541246909 897307997 318566820 679614813 790213340 851436428 538638591 997438304 794408180 890418498 770354820 903426298 290741840 745438477 656343146 729851677 406835800 624206770 871475622 907159540 406945296 500155319 933664175 954463520 100487778 440466982 385158034 834968187 839258175 998348048 825971984 953940030 40016558 449239980 155299882 254234116 120954392 575371599 868175944 924481801 792249171 877865755 397184807 496081827 473966410 620679904 268225836 851281167 637665978 794031734 452544312 630686777 338910681 476402101 439477440 689537002 350743378 404815210 378238842 385259850 123474026 239830229 267451438 403876876 667045623 822271579 827936573 922727524 888383603 926246433 596361931 981756824 740620595 772214221 912652238 980833829 336632953 420647975 987818779 992998071 836346438 922368483 651104829 653256398 535467934 864036065 811791756 965155943 419670807 815728619 52566636 682511812 335745135 668414418 128742501 248943549 904565612 939417220 75425950 204983621 918349284 952829759 173495354 876763601 149559168 510430441 841010752 976977251 369887972 502136977 871341813 975583033 501830236 917852081 505675299 952318867 948043567 972783920 47534503 759038786 125840716 426220612 890649560 918469788 530562794 621642875 462333241 690960356 70815386 958239668 28662859 918874067 710948481 969279037 959167335 982702220 373984978 537835925 184540808 873776522 30344956 44929011 223538737 608202528 142378775 354122368 269322795 414937970 710485436 726240772 182949521 562603805 831719333 867484812 716036086 896584922 854620949 990563824 694767255 849358993 983049816 998364413 297638543 969148072 250650616 598706398 690754122 723751225 234420330 943976658 2798519 143978420 385690486 516918053 111246867 692364756 714811120 922386557 977674349 995035823 699207811 802083376 534093040 564853023 744572110 773788989 310872947 420877785 310057790 407090801 205776553 718321616 876932965 940625936 607376198 984228669 9052687 832277331 5822359 570081410 283505957 496302437 847710896 931720997 18400289 726228776 373371495 823834596 104549588 319233942 712884027 973918077 348090601 794846996 396561503 436748491 799258108 861044218 660605954 945522983 557180356 899628743 337058164 991961999 979209858 999372168 963922719 986402659 629921230 801782958 567304756 649845131 149364409 850260030 790530636 875944065 689455943 739224692 488755162 655311462 767106355 869102467 808517767 917063143 769621177 877095969 253368674 641250171 923404650 927235594 381076767 649751587 141581125 965789995 311890145 326104082 27492386 887910659 602862859 624339671 546206823 734251474 397899451 426274040 535867749 818723926 693348884 747405079 646660495 969040986 346805759 470626563 924691134 945878363 624488790 866469428 461056413 803041905 834110596 985667782 617577993 898085128 286970551 638131328 60108915 415430439 734806923 932468268 334949374 543347334 590931738 652672715 235508349 487308486 740068035 795022831 924978453 947969596 93198034 831093767 553318133 971948745 639024038 950985044 595297427 783276606 893944478 966469537 769343404 828630965 228783729 239257091 46467211 986230761 736427117 813872620 240853633 837197300 256377648 319586200 959777262 986806436 126906648 187712206 668720114 846838841 251266569 811912518 235180039 518054854 748201916 828544124 917223844 938089505 827143853 966521910 58400932 629073908 384776921 617458472 870217892 959949003 828004746 886229284 297176427 967462793 305308262 946939859 832029953 918300034 60431941 425017621 92666471 371413294 326097211 972466067 207116452 533175843 641099979 748065594 723469113 826205759 758909416 965628821 290194798 534333675 913305951 915756044 994632324 999108336 70007221 564561596 52912258 526514797 843812708 961979744 667732316 831861282 452978278 920979800 37164416 827931848 985864132 999157595 754334873 802362820 267472959 563244748 926429214 974926729 291091246 815887632 466053911 612372214 625990141 905874584 392535995 935704951 52157521 833882884 396165174 979158855 306662303 686128458 929941239 991092202 499050783 694284166 163230080 840477795 444103701 805682615 675335127 747953080 755966594 766989919 31820070 878634136 14757168 315635898 123796326 582961048 284574404 974928490 332825256 480839432 551763516 766442912 84587653 431234630 785839399 844829396 775206525 866630780 451316245 469786615 408701058 450429408 151059483 877718824 607990931 747373708 818368518 931212775 100872288 488557041 217114929 436688021 20483885 846355693 81771665 248709994 76716889 105197445 413837440 652905685 850506118 892061761 645155596 873366343 750141479 893950957 231454664 872683339 524204200 565610081 595305012 664835406 462332417 513340838 887976447 964618269 341721727 383945824 413948712 551024371 459325372 808777568 145327299 594870410 724398313 782208407 385302426 393003603 294881802 778694317 323939183 383257496 221937336 562754028 42270099 661821168 145079229 760142284 147378658 215851091 154612990 481629133 497511399 771023226 999622969 999676508 276225697 680621753 599628645 728680000 942405224 945081082 60687055 352391657 119782679 931736274 923986566 971752655 720186658 972428476 668206074 779495578 642505388 681069149 76674720 838674925 233269977 657588325 87482559 219429944 260418584 576979693 117044376 603779964 866692222 984357425 506215208 863855320 597063511 689294500 863981559 931879387 764942666 885856648 186886524 392906474 172008355 704806572 218089778 657639320 411197716 664386625 969950742 975482243 229832050 283825702 94995046 906715194 604009169 785374604 154739731 241767843 775627673 788644778 431023175 598164590 329693243 572078502 324209317 596305304 835639337 990402118 815258810 904618789 505249223 628717097 292676552 850661393 918804162 922947928 733259888 955800531 386859892 580515545 990432000 994123967 675785138 969186966 137588659 496425841 451060505 766723507 55739399 601139690 894247017 952878091 972089780 975313812 909390185 953949487 850074354 890336905 324607779 541979691 745313930 981145115 481086814 574766767 37215267 101719485 625275290 820714589 386450463 590503307 397558239 591941054 174243884 623103905 468374518 940178130 344782705 507073859 963970502 976761951 667629155 977060622 985953562 999592547 34001087 417575619 166216769 181084854 353390826 873362525 265935407 905627831 28493470 584808045 325267768 855062009 595534148 705383414 709396822 943836292 66681052 972829555 774099747 851716260 745994226 856810256 563704715 568035290 521977091 744104115 841384847 841920046 661663105 896703330 782244376 919353292 959983751 983663728 754783158 863744174 109970388 747559318 869271009 884361240 421596802 686265898 295092063 518997748 801990559 957202564 694748457 791342702 685214038 880077636 772850923 917383940 128296537 210443957 91615780 598628924 535042631 721654192 538570559 761129086 750675029 759950756 148394560 348281066 961671560 984597106 356205633 989909440 255710067 302443610 365250628 657285478 874337945 993908064 868651291 929036515 977613848 979710880 621954350 903020708 435221276 902809087 21011223 982485954 710505801 930701578 146149125 772142584 722364674 941319004 434458267 470580251 809528657 903251848 599231902 802171916 351006772 832345960 313036486 424140162 467322184 533253563 569353211 751930248 433994080 795912431 258393 687363605 138558332 771432689 115462800 323228970 430310695 604846318 58066682 426735691 133570770 445779825 352416161 579058138 302756675 753457533 5056186 485844573 498688913 511121609 460703226 531660540 44917673 540251636 651878914 998947821 627843284 843832857 63578787 877965406 142286551 993262694 403956695 976341072 913893501 957824007 761977966 957566567 825843221 974689360 664856374 949933009 35868460 696394172 114852240 249070417 223298117 904658755 35032235 282443984 480533733 548131364 184422963 872192510 627006186 735754386 690299413 847534999 129041214 776746831 306629110 592153993 634800532 769792264 345698742 853216567 184400240 932722131 381061380 923102698 587455677 689703840 996314808 999678582 409344154 994478431 545239949 739420093 456841845 784515191 363874293 857813067 734930232 878419557 527708886 732141802 314184111 693446909 129253851 176381831 303171025 430472989 719837974 953030865 478460562 804092578 798404411 899039095 622392064 669638751 305408503 966771419 555423693 787436616 850297824 900471015 576335893 643549283 151231840 362311626 636115224 819944698 856655444 862010214 447299921 664045755 653099611 960243742 956343024 996614088 746481554 987595979 348884775 442588579 452089290 929501120 890085288 941900585 284659597 533518665 60856671 978865872 666001773 893445227 815943282 859864239 443776204 671933653 601536400 968611441 36057987 689675970 119498428 515932565 485320049 742611345 995357792 997105889 82503096 212306011 97248969 614371911 543189350 670558397 448739877 548663882 365992262 398530667 982651634 988790286 436862825 445063610 940057093 994693601 221316714 329757188 431294163 991858142 539214944 762865920 182938862 819761853 921497662 978293288 792618722 848487961 982071422 984309921 851247383 951511481 419489731 816041798 787114489 982854206 418218725 906800664 137537923 461095453 972008182 990164391 20852902 524438597 168097987 508505030 449216247 812017416 674135660 724192902 763303514 921116934 946007439 964224116 962305235 972388420 497735846 991567954 807188726 925094723 195234874 972414437 81431151 397705480 831160928 861596478 248744260 486480476 255419140 480717671 455990894 940163022 286755014 781264733 933763107 995649899 578588314 825761776 627548730 858612523 391850329 441649044 291781532 824105848 18287886 440751716 513520514 961859129 19330156 409766773 699871479 714159391 423885148 971602126 312735897 784359231 97694500 812237261 252080655 782998156 951454633 983516003 87150196 293153135 291940983 618384605 438846965 685308223 23491900 703008326 366436626 922094195 84780985 327857193 25316709 39481463 340347263 750942885 698603514 830759611 609978281 940470737 97807514 174762583 500484196 899679324 168525909 986539469 360469515 396165801 180925975 693590250 857807519 934157055 740644809 834562041 885489216 954584198 335759004 967519232 759265258 935729460 787682167 885040788 852188947 873744190 430629511 992172957 746518089 780892843 580746127 673993205 202570811 529589825 949593976 965759277 261003777 860051020 265404425 907621840 879595647 933251043 501106661 845638459 565082502 835000629 217565756 620930393 248955855 724474391 299634696 942049179 32568732 995188327 63872113 759176560 714675155 994286165 895068845 988400117 85976766 763998716 127434769 447606538 398907521 451484121 12247118 573185143 835717074 943276682 804060365 934639171 417340422 930481033 267306128 958491575 151010372 618154327 515063458 872302355 476822760 720216934 271761107 635677959 764617874 865447063 388576211 661946373 893130755 918711248 135101001 875847013 847155924 880875206 834435186 954450243 105500795 392224723 657962148 981003904 747660601 880844119 725784450 942088238 569447681 588612907 973216666 976899094 165707 214751013 707614459 750457991 339107321 470393773 360498712 661258084 680166320 700974092 159466102 871723617 961387344 986520187 449579227 648061107 967974041 968331948 723969352 792754653 502591304 615524566 872459044 944682962 141490126 442983140 541861849 894079296 697950292 759452766 509712248 709965737 547702116 685170012 285153968 385240516 24119366 343683932 538980149 587224850 80324449 378501267 583158164 888864137 639222765 884895721 710328096 811292503 830319023 914760401 141736763 973809984 829016698 906640419 639845690 676507216 754984081 999295531 772414709 943734294 969917493 984714554 556827702 773708138 494062264 655613761 686422118 860244910 889584053 979491164 557851403 851502169 263249159 928793574 209945636 686252683 10244935 672979002 365111143 708514497 353889606 695249689 110955410 320693762 31019122 984951787 109997684 795708786 429081338 493243231 367953450 703608340 170897516 457719482 480249412 734879759 35755651 173011279 526586276 721008981 8046988 532634740 652305999 726594448 319753084 610943258 784730375 878332510 591188144 632104905 88018214 907247845 887975214 911356202 230425984 608551499 748412182 921675207 967059445 982207741 439638347 778885446 198564635 903122742 158212101 573805423 979684761 995920060 559896160 737727762 600381073 921949502 412742819 415065837 52162609 525413376 592495879 905912432 908568773 953218014 138864750 251543450 797846589 873831961 933103135 979942165 846503099 959972757 471502972 538272390 452612780 477957176 506238518 889331120 48478699 661340349 286914709 852706692 529705725 650556389 20110203 792867378 735618051 773518554 646096907 738023699 355864857 793825950 7398147 528570271 864325356 887085839 697295276 759043417 887448324 908350818 830109573 859104430 840130170 953927791 519708607 891508461 736583528 880901462 181703004 826400140 792687331 875067808 886777639 954528618 772538961 796587898 832664084 939930325 872382015 887174291 903737065 983525719 141025901 498018018 850968987 908184431 957310752 982242714 375554810 693283083 103882554 930101202 218627959 472908196 127664294 292331515 327077493 684819101 219686392 385728399 624480132 861659734 355097601 429451101 518175200 998474832 715623248 775666562 313959095 526738010 633294924 971952238 693401897 958415785 244789503 565629822 732184973 828067951 753379992 900491989 961109219 969841828 389266690 998748048 61210578 218014808 565505948 707440163 89995225 391195006 949674439 999116482 723997032 801948031 750480336 984245627 282810454 783483848 437748774 853232428 817590930 962386235 123651875 795514881 425187576 652225433 604551695 733071087 732444551 843376318 927373760 955067999 905128890 943663954 757161220 889326006 469976459 580348123 645844829 828616235 572364307 993122845 973819422 994258880 989402599 998124793 372543103 585746262 538513873 766241905 548915544 610024401 471986542 867072398 776818741 881046234 462234070 675699661 673378652 977217966 405256390 614818796 938050863 949368909 865656734 921771254 823039091 946426946 269233585 983321534 941977355 949090467 781297316 931484335 991078965 998555047 967382889 980111045 977664829 977781308 667081646 898741846 375688591 841972302 270846006 328711423 446278120 950960165 172401139 947923176 456422843 694100941 600458435 926309453 137124499 997976660 966987326 991515376 564665380 716672239 584256929 804573297 265934199 732138554 328374217 496059381 633469092 930186367 720763512 964689803 937773851 996208478 448056323 760729797 149555208 412985685 222371225 996378516 421672583 644657081 797351000 916073121 161324792 812619884 432926941 557797990 143201431 455846674 573322301 718399249 678560891 703027444 234730566 579478106 398242692 859861061 455931331 549332083 834162957 994105557 340243102 966032189 903933840 936913687 289619259 440975629 285788623 987852936 140887459 273991760 152364591 661038232 345309197 351521882 219885895 277200008 882077282 914844995 43243804 260686982 998361330 998680071 546807356 843131012 735381278 980966222 818502948 839203309 130520468 711389732 633692103 831310114 691910547 941612490 416534762 678290779 585397855 753696728 798928839 886935078 726757591 984650780 818486346 822660168 373505880 970659574 182037398 971856462 622626487 769409998 971399927 990062081 89225586 748481154 802937523 873167020 469105534 939001296 122798324 738436726 166475317 674030596 369602935 900402589 591194610 734581998 674753371 864128038 459082444 793470281 610293978 625654463 621337166 912650090 334347080 438806682 357099941 803881614 226710652 428669457 588254864 796181524 746483530 855562520 864135501 925918739 187853955 276892458 701119634 756296168 840652929 938170605 452239534 570515823 7230212 568495105 941775500 946629458 19604618 962787080 497889308 676151169 278912504 765069847 82598055 266261540 286522120 532328408 750834258 998860264 658515704 992098228 267214981 804780390 270540599 772827143 402980039 780149331 201444495 820055801 967209131 970925980 666253827 767091440 315100880 437477640 644216561 821459248 429641786 651991933 339539529 918339707 549516963 990416035 63711117 855639339 351144241 973562246 341716143 380354298 751623941 920555928 510517119 741447920 548299024 904718480 841935582 861281638 798032767 994749490 143215286 408547046 564186071 790165261 262658171 285124709 215094097 779969371 481169317 796325213 504637202 714799325 33390300 739195423 94605490 634257261 30808825 942620173 690302030 817197575 356567649 913264823 976257069 980926740 166793151 740442821 337244071 947514170 581603245 617022646 321539369 839625487 517531475 597073474 10719672 106782830 285218896 347884174 878934154 899893919 855618648 968510267 346461998 704440288 268564162 345595947 774240366 842363386 651791086 912931261 919874209 974395321 594159079 607046650 381115064 776479108 159144984 782465710 938719149 966195961 983265316 992445642 336163904 646445590 414436072 442007112 208695981 466017287 641368610 645409173 833091269 983743908 417177157 947304006 316139337 320605119 821642121 845217564 875972275 982790331 776690877 918989657 422199634 480184514 100724255 770797669 738452290 825481965 633222597 637931030 90204654 817220173 893037508 976162220 773411058 870746755 706948726 754449602 238799790 557704902 245474324 794906470 295103792 708131847 795371310 808527447 141723787 813811298 880206306 980251184 203976165 610270830 651477300 927439012 363272915 384045272 113238696 438694010 662455671 963114772 750296449 943152357 259992049 615183299 74646786 260116112 806546394 863757970 640103949 942347146 265249118 771848404 317765881 791543986 791346909 907440075 112617178 821798044 640680516 976934583 200968520 907853415 32502860 858370359 119562695 135913995 24855538 564262051 206748966 572251631 442301847 868667519 732478534 866752785 958723982 982136144 824057413 930326540 932411879 980617927 120650015 283178470 303123336 711022905 42709116 321067583 233370180 913393615 17537193 927064901 479612410 958038943 43912561 948053988 989662556 996298498 464872222 661917319 246763473 326235324 814822272 896746137 760730040 919712715 965036298 995814820 13180804 182632018 250353427 728679469 557610467 858143294 1682074 650429770 934544671 995746977 19271291 52618225 304617762 831185015 578608304 892785945 82309410 416189502 979694215 995888561 47326588 984276872 579321865 612443855 655895671 961948640 167779394 374554506 368127234 407810775 753405373 753661475 46461425 522207242 274021760 523073743 354262744 698898680 919883665 925057442 55260192 449320040 313416647 339222418 721771275 801064632 862971621 956808154 463823093 954344430 132391840 382213965 660925283 953534891 845786096 978808475 49046673 890367077 252700693 302385161 787097244 983548268 489418221 913946087 184687155 758549497 187520860 745785329 418112650 662356032 743584962 915179506 506073817 895453818 690961430 691790221 828219274 938797266 30519128 177395561 348952459 663597386 231126148 764043077 559156418 861780221 376458069 454524392 327924972 363173631 229735388 524686179 138021400 844283890 269303252 286754951 514165866 959226340 530267076 890587124 625201295 638554367 809813733 821344461 969408454 970923429 453618584 960213165 972053693 988078451 844051582 933239857 753866281 801254973 212504533 726907725 111360459 969792237 478079015 610197326 748837030 765307154 547396158 571322029 621584371 663831212 704996847 855222393 506597056 858461720 858520786 940028974 804643656 828488707 34158964 850691887 105140200 458066663 817346754 867866907 955919245 975536086 327226082 355416509 774638248 872278466 811441832 844421933 300825160 744829404 336652467 376637010 508452249 657828342 822061611 969550632 216961449 656810743 361073392 827324735 91296052 998384290 300692808 676036080 586345820 698206205 108907163 678921445 953276784 978774656 946645039 970810261 526642685 530971034 900960908 925567433 390853367 779007859 925477306 988104544 559998052 563473921 894124766 966901202 659295811 674231779 160553745 638833751 63236532 472690856 720157468 809684241 735276019 905993251 457960166 956019287 690878737 936473635 898522473 991068263 915033385 924529095 771147712 834687668 197295139 266542620 253695419 348073392 334180622 719545365 837735447 998058879 191519135 359246365 418701247 685784230 832855623 925111035 164003414 946098302 12456587 665599404 437287702 495526313 827060585 925094603 697965129 894393420 319488527 959970025 865324943 898190131 752797731 771583231 222565569 641497467 882998063 987578599 501364124 984408874 363143571 905429863 400979293 862699545 943009650 962067325 54202368 948429575 634499666 802625563 639723669 705054737 110107219 858201596 800355728 804378882 242751377 596781411 453648318 615136755 386969281 865547087 562648641 685362023 369021806 380588789 832563829 835567052 879385390 987079571 359772135 774200731 251156353 795755283 381497234 558503006 548281847 774461522 296554333 844285019 30543257 401232203 104539705 694207281 121333883 616215003 171014404 290333466 732172794 925497672 173314930 473847501 289879942 911037972 820450546 924912510 515272609 889678061 863009732 884229619 610487903 906214292 492598603 619663222 77737194 813390241 357267643 614151328 701955117 872340846 115036580 181748878 345799227 795264788 139953284 477664045 195394609 501230814 406849627 828935183 355565277 971114275 499816482 591432526 701534056 721821353 648561909 773356288 799914712 918536090 986974863 998624864 838091118 891587830 885637881 958898740 389132738 642481361 846196238 944286056 702484028 921465878 616903729 715945008 771655307 856489643 517699237 694878720 198112774 684791372 516889274 822106456 279383610 423436547 806415977 942400340 514934517 900598121 117577910 557000899 34915669 701565702 184898412 415803891 531273229 958524906 188208219 485051521 638673823 794720404 935138519 987429307 666711296 870463129 790913930 905957629 680661506 808645329 624233291 669450808 283845972 842198477 963477197 975606193 495202593 592385987 656240509 829510769 348706303 584038751 324229819 928520670 210296906 584368261 525581397 929392717 683487715 731030385 251328469 570641647 45503654 452851692 246472447 784324298 489640793 604283063 794654386 856765403 949478802 959802065 459639004 613389080 286780093 588726972 878302384 880374747 328782964 662690849 672962385 927596182 215121693 219211727 870955606 955658887 958072313 992644315 506467961 541847667 68272875 649988182 925666044 959552622 806996554 954937163 219979883 381298437 368600080 832962129 57265054 864002759 562966614 936922816 222379646 543726191 64624167 433232257 470357766 758417623 735033973 898837478 632622223 923667180 901135050 950870231 675743444 702334650 532376843 721466938 395477747 952658948 812890174 882336569 709032931 998132432 906586622 970031836 959746611 960356183 664611508 868719858 470796455 781308964 854392687 942343784 540268314 550653647 697018420 795496290 997885956 999216965 896205924 982702238 973818623 995182405 704661068 817403374 739869272 842233946 263433606 983145387 528082096 846399783 506456352 556944036 443221372 703691748 33823325 292679129 396198354 469156704 448671405 638661702 109719842 990332706 823284311 969446639 964345372 994099726 575564228 882728650 671937231 716986915 942909610 962357329 192782822 693368074 685313691 867219199 769904257 993404284 352349016 703258042 238460265 627961012 833772996 906958385 129227371 386775467 247288279 717569429 13225607 495864900 551242555 717807988 550211776 563754553 119519223 964556880 131274783 523073166 62754193 961060727 378573711 414801091 872323472 991369607 760382336 948052614 883922995 998264072 593842844 731239695 621010093 681651123 747020589 976416857 133454605 657832565 364210371 830834629 274046956 566540700 357465025 541641376 76687365 615387438 156091298 444957911 393094408 871889144 187886759 587456567 217076663 592847740 900032809 992334606 61083603 441305699 210553312 752254625 969666949 982037636 822219099 979253094 572492622 979852019 663057708 675731896 668993685 821679236 114472209 422165579 830049743 918631364 222972603 764578211 456574309 685094196 628193637 836298245 866384917 893123177 645708389 976525395 548222713 683794479 870522996 880710899 336003726 879380359 944540772 954502945 541130372 793376821 101083591 370343229 579145126 760504698 579419485 865220941 583435157 710519793 250803169 335303826 311139290 778082986 106323889 774835146 790615128 803136765 686329910 842756419 654608209 830504775 990478627 993007551 162145687 565528208 487465989 919414103 770110037 782178301 110501318 905533223 813506501 935416229 469923664 656469985 769649835 769944205 964465510 989088755 256775382 535219524 744687708 877833134 833287574 959797963 23361180 958071998 810308612 898387260 703781036 989108948 925785158 978982329 354168784 943363397 115046961 936734659 711722407 800166979 445086631 603726679 633023274 916474298 289820221 526581904 146645609 274250024 223920229 480989635 757603958 890397330 368953771 583187629 886523805 962232686 441528456 782979567 805552501 832795007 668952238 718182333 5583959 462680986 164199202 294422310 501736673 893482334 521730588 668237476 417256407 441132946 774621390 991757991 638753800 721254769 228911455 835268839 638080644 649456776 222422401 839338327 700006088 904661097 755789690 775818832 877773121 986780539 961929606 975755329 255529775 439577085 207196107 428124527 860782119 974126499 887384441 921166518 207348616 871193556 258857856 883247868 945259506 966640445 501642923 841341327 50150553 542754224 562818296 711658860 528066091 700305290 470417019 957417086 648981491 748246950 995734676 997904856 578220595 678075624 534250477 829265748 693773216 706612573 12159941 913030679 837468023 898089490 655554640 769451276 369037145 898510151 778655543 907658260 62743299 189294888 834325390 916738811 504360077 864286904 129037575 491147672 131757974 398471753 628000075 998445085 456894803 697487812 38260892 107494449 887387770 987741702 177897787 188033646 886309405 995633250 732862146 823136850 26302417 38540765 442702128 687101604 619574889 917699072 402196642 904067901 526284650 965363413 591291326 743338350 52241040 536642551 622289110 622611519 97724003 602172317 639415086 801558018 682252664 983864244 257683093 390162258 691858211 733221412 867642736 908170960 198022642 714815556 568102295 909810373 457303211 665614745 196648001 731139480 295811333 889773136 84838628 477184740 205964860 590681049 535069471 774183013 285259252 501955244 165402865 589053155 888952715 920118326 704210837 754168580 189861394 990476092 167093917 787126968 649645144 761025175 154604673 402296528 415264399 847511366 128514842 331822697 218729621 620041622 298507 523193146 725254766 944568151 673164810 742446467 580873818 928872235 875866995 902034472 30025496 376074359 597279295 863574798 994485001 995886014 929775339 980156993 731196797 829982000 845223058 903992660 916739653 945066342 778284007 954947099 110804093 277423332 140016983 430922354 843965602 942961094 778263724 931055969 907580266 985623093 747423376 992544506 605820626 663073872 780808877 956040227 428533608 922705130 248790273 834741031 259354957 977132415 740169996 948253466 108338422 194677076 920309214 962620741 263095620 922266467 35469564 772193824 630272053 903525934 194878814 274332338 810641257 930652556 871844490 959184965 245733370 865927058 940120494 976819030 103718416 443299570 946667086 984007142 657374004 782641145 554957231 728148159 962867043 984361076 482117802 985325847 32813986 795338836 63419 355519283 586001981 639484504 456188637 868058076 332739505 348567712 102142271 500485048 303115762 877657022 458581059 616962040 840302188 909864876 652745713 948964711 446481213 868974978 156520572 286132028 149404291 415034021 329937221 669575821 933273590 950546681 800837408 951520463 329885563 675947876 86401429 936714257 442488433 654066072 235208164 282180038 457126420 468163099 506278329 610922327 267917121 505673404 578682458 649102921 373863746 621027798 844913785 951956992 351492027 762122115 934991425 943007432 826977449 897761063 782280244 940470954 196588798 700883337 859796878 917185526 348875628 668261391 353635676 896015184 641488224 696286182 193509194 734973037 485864385 669708627 71294537 920444688 626648271 831938739 144396950 814261441 828625342 911282197 293291660 454117058 162007926 243141803 196260097 364186865 167471972 225857893 241840801 840684601 764731711 801315579 353205240 513443578 176225240 711775683 461663750 593194068 468712220 919080443 237095933 458622525 647318377 800185686 453545529 989813514 22303724 76486898 538412356 965335658 471551276 967347031 435785087 826184051 305363844 899699930 170741859 791614395 770098165 828000476 737026702 866275488 63124277 587548551 490027001 923489249 863165968 921373668 498803862 920840373 38852048 761853346 942674058 969004867 240445959 423207347 214266153 385673831 291827288 478971590 275959868 490986626 789367642 854527984 198135567 572576321 989310795 998016521 856211437 971557606 79885592 944716194 121600261 205893971 670693566 880276480 439281488 891646749 848226693 903877681 757792512 954084998 580118592 646211333 765218857 907209628 894397605 981842953 384440459 416677025 450853511 582345370 43200451 200932955 151754721 285090430 811155336 896467727 598982953 913880663 827192694 900301003 906588025 944260513 280868005 673822199 328844620 809860464 179814445 779384600 330684791 829257328 859087701 893103898 236261360 388205932 507154361 557806676 292009718 636526986 885578735 933285196 264447696 603330433 432552304 694778472 642262255 670028688 588152969 959405234 281880171 653323654 757904158 794521186 536723092 626180237 566258736 620122825 383671819 452307667 955900220 995278309 865693981 935178626 207852143 900632074 148757469 716482426 776041284 906028281 663356055 814515030 280004883 863729564 403555441 535117022 910019324 957291502 510205170 796347365 494069794 910687798 637847841 788673578 161304326 557360895 701786648 725863572 481391927 776311768 913007695 953481088 631843012 781375854 772720227 940931419 900143949 900433353 483748653 805097170 633232384 890785282 77482921 772101319 902056088 951562232 642521306 798900763 237082394 589449018 315022394 958006271 683275282 933889534 553084000 734004327 384501442 820732286 204342078 861339722 373913972 652470136 729594567 882024061 305668598 323147653 546556484 802341643 610359018 666953720 779201515 835627314 156103120 847100801 187396905 363958214 701573176 862418475 155785947 760602778 232894746 899043185 789903209 860775431 676266644 692029129 675843641 792535449 338594589 919213729 350700857 932425217 471871575 523617578 280792914 949489672 152875064 688390531 124261319 220536082 707944762 713365756 944106130 987661385 614152453 829432134 436155499 774911394 229718123 898559030 4362129 130875659 998880486 998902934 129531515 357289912 718599584 945287348 431238819 457202073 676522954 827267154 360535154 829585693 995950222 998594953 539061212 852380111 572569431 626921782 229629454 796223196 722297561 774311147 330891621 471898615 591025437 723718719 362264943 548968164 736617043 993418823 902302625 961974394 266021627 960740485 713404228 893040744 893170793 985761575 799205178 991345822 19164027 790259287 741234565 775081299 409498673 542508903 231587481 866022798 392854606 909432966 57768247 372970876 691049503 902570212 839186686 906047237 380110298 536181197 215664151 383070299 224090880 847143090 439826311 574039049 426277048 839532346 884941350 996876763 128803162 778211768 440298592 458925463 100522924 220230243 125276190 564475494 197504150 595517653 180824622 834488850 710446184 849028797 30113281 184807572 658604227 894883817 349448221 890813979 784839100 793549109 126198254 596571665 523073926 899870733 366723634 804962915 933299087 954109760 153011905 369269445 975494085 993228813 318918922 797099149 584950683 939297573 139337952 352094036 547023916 794588245 276148062 998162337 814803591 945037949 496780166 570575479 977229362 996054594 216631228 370595480 401256731 758316696 31526006 847394042 630067199 854661279 644535662 973789596 90530298 562067596 378431020 428773602 935544335 973172814 339856302 790327270 445607705 744770052 885672857 916193901 64605085 689557062 231080796 944967189 19126882 755714095 328911001 851372597 398145824 956604131 975455812 975821429 505061658 728103018 458479444 800326427 298892107 540312970 879260462 929421928 269394283 721440630 260669763 852780062 963040094 983942842 910259706 924745786 578507320 586490228 350496851 573776580 950467728 995595671 820739128 946188445 694150605 944667935 647654175 912352037 629199666 862784095 829719695 903170890 705484290 825765396 487101606 636858018 997000725 997542867 451752133 685162556 438227050 698827312 914030448 943924737 595702798 961423533 242834617 677168299 987828215 997699524 16314896 557023678 284070892 921404967 306664613 458800195 697639431 734407851 545793557 910908218 421755743 715633917 667625417 891151815 809772235 994844913 865779159 997453832 481083266 533248315 765445468 881746207 87146317 416208805 743758366 844527232 136491908 598354869 364420079 994880577 692224130 793721095 264695854 640267104 356504323 944523895 880380512 924307498 114550542 812071699 189631327 769134139 369016817 709949657 379147614 515601891 952970366 974204009 658528236 874554605 323974077 567683967 284674308 858049176 727183965 976345512 659266396 902972550 677465197 728212364 430300355 884512095 455958205 973565969 112845858 826980443 681861268 977619782 168413735 835060444 363343815 403856010 720811746 783997832 890961718 974405599 233141210 922109166 196138221 251048504 440960339 935365596 671743195 950387268 657702246 876804541 520139410 999228628 328107693 768462792 68644986 466551396 545124839 891278988 639554 258697110 473117052 804300887 389644846 444679101 606752954 820881551 858502923 989548575 545231464 983294702 156782307 413947437 280510708 994373064 117932646 947435616 436909414 580287521 233240349 800772817 570197280 819287562 264970482 855978164 752958147 834768729 874614047 949280482 719062837 766147459 235274834 972805420 370726687 508985184 743270366 905214033 255576256 804357121 859352596 918877207 20975036 365503437 895586444 965129049 466481427 683379844 593175353 616673904 920249279 999421260 588847666 720035939 127306725 630140162 358739251 392073357 746849436 968941467 442139414 823711225 351208781 864584647 497336095 746126412 979307590 999009994 548712879 678742448 101029915 808031477 680119924 791637244 816263928 984545697 351972131 561185052 831061438 894071830 243023647 315618034 594365459 714190432 947015062 974572986 220626568 777570814 691927048 727510557 289467108 917978781 712527876 795892125 194942132 479133368 871599578 979630725 467808861 605632813 722414341 961672679 857582930 936819813 302050350 585378515 65034740 911480262 746092344 814629441 574179059 679904270 272081650 329180977 940282440 966294821 173520326 951179558 633073340 688902040 637023995 869957069 417218790 815920005 508208269 745453954 542009025 876557676 611964786 946229714 419041546 984276215 359651681 930532571 14383043 615422467 631850188 737522957 683822808 801235621 713842158 750318616 147354411 667643458 384860908 473928793 360112085 865632549 907176401 971711086 243067652 552348988 462721211 698229959 754146162 757704795 918898172 989040412 599648314 951014584 763451546 808943087 322962655 993838342 726551935 903097564 690431106 855046587 822213496 935954245 352801895 992481640 975811703 996749143 75602285 465470615 550631231 579541624 525452137 970005599 713187767 923337698 105726556 566027398 134749915 886150650 233716297 723447543 835159387 962710623 154909335 655049274 776361796 953263046 118338750 955628258 397198652 654444301 698736338 796803902 833142465 851336075 321826288 601264750 697870959 847676192 328665777 755525801 312076483 664079092 152866357 810441217 312849648 814834501 116124863 466673183 544877784 677551615 925761159 992992005 823306665 950155909 173487678 242696457 14726875 398884019 348909434 479183892 2788124 554954846 819871143 957522511 738627770 849033985 888523366 945753047 157815862 581084349 824624820 934061154 460932636 728761647 261242168 318764488 96711501 106898487 453778278 476623653 311202972 690785350 639635018 814116323 470212052 858261655 400172649 443409878 947605504 949172451 490770758 625574992 831275630 906182388 818326377 950129455 337839230 617307250 620495079 662553752 301424238 834242594 810759639 950736005 519561419 798889363 68472937 166794823 903332158 906778624 793961847 999658734 534196969 823556738 537455418 596355202 504426511 738647125 680917264 845893055 102084686 287126157 316127069 600711039 701275219 827733166 113010634 946031347 624095185 912166045 437284179 743230871 351676758 830087744 634358271 974810861 921449723 984401535 961584009 968476300 628273865 907073637 77143702 370387508 657101218 815585610 428545674 436359226 548814692 689737122 599625340 660332553 391543553 557623442 483720805 585458864 304069566 774976893 276761361 292198874 623089358 793210384 388980698 545158719 376672006 484275989 80052259 725219325 443913376 961915473 400308864 509346601 850238085 917450659 196938513 739982850 188484821 919474093 190475955 320013437 508676599 881064995 625485553 722061602 746101738 973176867 699163407 947113569 732736468 793796050 951332519 988805094 265800164 883521446 996492142 997712816 365100614 914677151 915824305 995883164 990992607 999503534 720796953 984186438 764535569 815725799 317505528 692201926 22436110 109660563 863824258 971442686 904960742 966341435 932539545 994300413 920806311 974942053 32696018 449452964 380865788 805292207 610686600 847321563 956014297 997376191 446077553 519559190 98865004 907183283 651805226 932341724 226863154 608396976 566309923 731316907 865026506 942236615 852455914 883785038 488926222 958893399 483852337 816733567 482868159 501634482 815824390 869123915 782356478 855544048 578034159 692563458 128200245 952442346 456617657 789718656 539526683 946052800 881589154 886716064 464896321 981643329 792199533 810521072 977967258 996777373 19301317 132030003 559806452 932576715 516292214 915442581 615046665 919668625 606726855 893849638 951767669 990590667 145043085 610945955 311142170 522761791 705293759 898893411 605790679 805902430 407932430 972908352 249079166 554951917 606631379 859175330 825675665 912724191 552509371 901899533 41201925 151939172 910094084 972225334 746574148 782103941 156465382 631974688 222131691 908924479 809685642 831115949 881793950 941193978 790602947 941670244 823817994 846997094 176512696 884898991 711170561 991296794 301758205 746917303 415002557 682924645 405522612 529262561 808778665 839799220 507448859 779924136 398531470 764246806 491574079 677793646 760539894 939949021 703178202 832591644 899036609 986066718 865755054 895271209 153436805 264927244 348057280 957438204 321778252 987570210 507346872 727801461 130475593 866203564 934226753 935402535 894832953 946551179 995654553 996013523 213317775 458750219 495357490 843850646 978293550 980272696 659830923 720483451 955419857 982361572 588089045 716912173 410553403 765584090 420016148 709836437 251028464 776470729 861461880 935894237 127134953 343829312 858714977 886981997 187972976 426863110 501565030 919414958 646465835 966057496 276418768 906684102 177033222 300320921 400558358 643874492 24984731 726413677 390485234 454560980 554388681 999047467 642270310 841903741 200867685 602189423 395032098 802155703 843970250 908249734 916663255 996435567 871867649 902985979 146601051 630437283 412144220 657222360 642149135 795106754 94402286 706283396 872234617 882652498 989510987 994339947 768195461 820931551 763708327 854008490 82617310 224770339 21264684 936149738 127488918 328524536 50404299 781611034 316662332 903380605 396998280 676589835 750128401 755894977 938328845 972694610 104925238 331930178 599932493 827371101 175268286 193034358 897087860 966041128 648136088 871146480 126056723 475256965 914368335 976956148 663442420 771863358 121696108 241651311 471770658 618817245 271810603 495478216 498949532 922694033 725086728 993818063 465721327 969264217 498523370 563076761 246301113 376296032 60456360 320394368 979675522 999848920 354167116 814459753 867359626 870720810 85050445 364778187 447080376 968538381 693664096 780334890 208883094 569708444 108830017 419826630 387255265 549843389 619376709 760158947 174746454 902086360 513443878 726215343 942601265 995246110 537655523 993012575 396625959 994364433 53048357 278450717 286595282 846416261 558431480 784193859 92442197 560135683 297469938 902242144 396314898 694642523 109074104 839101892 850953965 989780797 759581798 873712718 111244546 493989484 85502035 192576201 455747687 728544951 38721037 721912089 968934790 977726321 671316201 933602727 532610321 768160635 777642768 851680447 611909292 634435253 352170445 399901005 871013238 930085490 684213814 961102173 907559012 922442834 370029003 818158616 993401827 994213708 456665098 970982674 66719053 559493359 860150178 948055934 34219154 638908668 785730455 992714614 712354179 832982241 662567492 861836890 959985767 972778772 656063662 817498743 177111049 798252427 364741721 700197175 247898016 376678369 904108155 956197722 900679255 919239288 170796749 906362140 330346132 394719574 908963448 962315730 98619947 573124861 614404993 788298057 814497730 998768838 757507295 823083887 454200494 513758836 859351001 964426837 596183355 742694329 75387577 916869087 54082790 382403358 542337556 894408968 428626415 901943694 479784673 660581476 431719218 714739486 980052336 980520588 706293610 905200296 65867199 876317253 637807215 913977599 104950050 812646588 371973641 621978361 863789768 972085677 501107477 503146302 515237060 760705228 318722082 402242738 612975405 691473375 691768769 985349648 139678146 331562181 176996611 192328032 380383929 458438973 90252313 945425029 92008110 158986229 379060292 952144496 251278831 873819952 381019970 411827360 554430067 806107019 787355728 969232903 176926852 510740288 502153036 818076478 371254687 876546450 717259291 806551349 622932173 816163674 861353811 942595170 892855096 984545217 960618212 998323222 416088069 434799743 423439976 794931978 320230400 749387687 178165731 409001776 991757060 995715069 834674580 857940587 238360937 244756057 135607222 763435902 115934031 984525813 479071821 843940638 676564839 805813631 507319671 669871504 958965816 993041987 178663223 235450884 570546684 702979384 839161715 917204206 990105784 996576119 878328381 905507376 613927004 908697035 550266746 856959094 633087700 781722231 689099876 906377357 369274599 771658792 38783980 746525928 600081865 885165366 70442380 981683430 491270733 831383270 338195313 849012758 852307593 955425002 894496922 933034396 943262260 993431138 528830653 979253262 62309071 875887775 913653435 920704736 98109789 900308851 421745404 672676796 473611625 799940478 20447617 201869328 152000239 304598119 768297459 874448609 824647784 938641778 220560418 542467409 92356300 799973447 239011420 424521548 159066176 804316674 466654094 790943751 104695077 557939406 310158324 759985833 837183346 968767690 19077662 262587975 96926213 134135475 67622602 726543848 157622718 429500892 571327259 602078921 884725955 977277880 910866056 984793631 456201391 853207355 761617160 899131609 956827951 965159134 522257243 641377017 68195458 250720677 81179257 715323362 145048450 700297044 917685818 931997123 227671358 619432613 220248072 283844735 185092483 235766822 285830092 515030102 508502484 938971647 910002164 920148377 201369907 644693133 25134590 101858559 227472314 995045925 257370561 905205458 122535507 939835738 610797038 978803915 233453477 834446865 359770773 499446139 9603992 793692452 595626086 811869775 281669148 481848834 996416326 997230954 610643031 759546803 982511257 988898424 776135761 999928319 263615925 940749183 486034125 525766948 270651597 976556935 70535330 364093005 27174755 684100921 382037096 503445046 790224110 804757472 215480098 584089963 669778499 734649111 802335489 907693667 970617345 999531252 576720355 816029600 709192564 733032777 207431663 264807419 341485054 377306078 924706972 935218250 310360848 729706858 832885333 927748179 616334314 748718039 865162863 967106360 661609789 712157745 98846448 98887505 571431018 625222586 311952244 938540065 597999667 730992927 104500533 471221086 787246424 813343083 620692809 825290515 252210343 686976419 759537828 920895558 564555572 691901223 685080064 939644673 807647356 892452825 454236430 663581417 782473186 968678939 785642103 835126444 188270852 239145474 519009238 841816807 868661070 983860004 146357831 484640132 193271558 712086338 278602187 838498847 427725732 669245403 773505302 817698836 688151203 908867077 229168541 314481003 798504826 924414752 50818095 216695995 155336611 983363881 376829158 863525925 447494682 772694840 267338752 625413151 527582416 677223933 326220825 923176408 108054104 863927877 262996030 823017949 367872739 436973091 572518328 902391071 891376036 891426951 724803086 759783958 704659114 873215534 614864954 749346500 151954439 471887453 984842998 996315541 939980455 980871064 301494259 440280633 513319948 818668587 338092751 756544296 798859068 995531051 617427619 709775506 445228934 539854057 295915863 766651188 756069297 910107557 329507692 397846192 928774515 951863710 746996309 946234713 438967940 720353186 193060476 732026946 187185430 355578308 450964573 647720898 402411608 980199276 205834494 777945279 971273715 976165523 382885863 988433193 326297992 495042530 246974348 674289227 923410731 928956872 13574800 317591139 300446479 923521240 239990853 776122620 643709190 758263892 996430968 996574079 334408844 413786788 581813581 660990579 661115473 785945562 850760476 900259504 651102499 702688981 732723259 767009598 526284307 758586985 362848175 532992843 97569772 422981238 109503937 442549407 146037682 671140825 652259173 719744858 838323891 883396259 628025295 778935326 61615993 959133964 992884358 999057458 208760148 229231765 975636316 995171629 603124429 950567873 405997735 548383511 338094832 896594991 864521957 930308003 871824775 976625585 417898827 449159333 183866069 777306310 33092991 750233120 905938632 958752502 253899565 925394585 942001333 962667852 316706369 866835500 103586641 547999788 447350910 853305613 629553700 647148520 258187201 341277734 977179397 982056183 660504292 701513489 512866384 867877519 502535416 524188484 214163789 501630916 440587544 830404929 591335223 653481890 680352074 921124848 222719369 708365816 691770280 850268344 66830880 486477616 363403391 591725249 770723322 788730204 507471132 728160221 303551677 761730210 281518030 352745977 764296742 825502190 777279902 901808996 734688479 841526844 242646050 704847590 8424364 835228117 723346351 959774186 138615059 660858123 319049088 465663702 777908811 873532968 688751322 967524212 15302588 26507840 230286188 568412617 479606135 554135683 301113816 522815845 337989240 601855802 853475232 953248871 338380234 351121992 936946065 942076929 709062394 959496148 376829754 624331075 321633393 671461600 134678655 376383516 276484973 655516392 311621615 628072355 658246183 843023781 438282455 589207358 629674455 904348060 114752706 495447766 125218346 794554227 487217972 954493134 205453645 341503293 56512267 988698293 442377950 995504289 998853097 999931583 384723003 558588830 481487286 765874619 928289041 928701820 42598318 803473613 139318794 944178922 751498692 772382744 448249351 806227130 441912023 449775567 135303580 428194125 305047682 416062952 345352278 387585683 755500639 788230669 87417730 886737952 53138950 574225671 131664920 940000079 225806243 847933829 590750116 887864648 305870415 561860672 509013228 891791210 33222731 616293378 507718203 754926647 468039969 847587227 33119840 516372765 571867080 903400433 699841888 929649822 210372035 557362144 108018376 895884605 605066216 886464243 484794834 535949610 697605768 853211091 208254377 679370869 542319043 875551000 530096880 768172292 120937524 822656041 607984883 682643955 367157194 439998564 907276551 949938672 439197471 881072976 520996855 629828311 396346102 733030762 825004015 906721091 70888264 798345973 16579850 608696799 418598725 651464155 209387656 960691457 290283191 724896545 583449685 711828388 265677970 606250603 390243115 627821339 857156094 956334270 513412686 656653837 74612156 411204305 419306252 703041622 546174373 674752045 642786659 710868697 943757283 950446886 952166496 983736621 202849324 793274445 750794412 856548190 992687494 993628145 987315965 993432289 951431885 957621499 450384302 677535140 909513693 979040534 380476051 737429732 970583415 984082457 672007089 707398582 76525290 130463067 682042695 727766505 970620827 998709471 653670019 998295391 353824754 929989016 833877179 848779849 979452663 999730354 920234990 934817572 668747483 806920451 802354702 818357195 602702480 885093438 509724973 716685969 407180960 881334890 84858547 203276164 214498938 993037060 574155043 875561826 786269645 832338435 692730462 874544206 457157529 680767586 962001624 971357103 403433654 621134861 412302864 907996396 726073694 773801934 525145201 699154504 541587941 995826258 607906948 656641709 973666349 976266078 509688693 811307888 84296234 933969336 837726957 868890794 373317976 940226513 750133785 878052486 212573338 619791206 398204186 980593703 149857847 430657443 970624735 992603251 415357733 856450700 805913239 911576380 630297485 729743728 976989497 990427145 588961703 743819063 439768440 907792952 625664183 754207660 746898399 980987996 791317352 928524227 903981181 941180523 715788561 965332206 44446395 350811942 469045929 671660424 790002037 997470449 384042483 811540276 702561707 812659648 957273905 980043872 399143849 451299299 423561236 759872397 164969612 187347897 243097629 746740395 590917595 642631874 959671458 967793740 741800598 979362323 867178841 981920460 999866049 999941440 578404592 810360700 229149628 723087015 304755922 786742162 867096809 883308009 700819982 785015564 947853514 949022313 159385631 206091123 971119277 974899376 74939894 651471064 785888044 961029081 952405758 999674016 211908987 601909791 328504462 676219275 314576962 915787565 43130783 332903077 79998671 226417280 751802793 964087545 648180392 753346154 848230345 899502630 920167040 935486315 965287187 976101315 655644022 769263420 778282656 785595890 772473891 880784370 455131014 834053160 19730570 614528551 126171367 320626912 276982171 643054190 949746990 980420692 968624073 991537251 158427240 612156538 858049942 970367888 573981636 894522481 179937199 969531328 349687979 684662734 658209734 665983242 692793994 959056261 69715496 309486513 901590610 981173035 119323702 309682533 382113665 672054923 955419653 975052520 716463704 956532959 864879253 985760446 497736101 544908889 507686308 707012115 260549670 497152955 158470106 768449535 703258899 879017367 100410977 101249449 414162626 582238633 226444467 403504784 896730476 953085079 658704473 802966849 301466495 962355407 768020028 824992083 661924923 963131637 802034029 824785742 809579337 874430649 923341479 982789129 137055167 662979751 277129651 633272465 73934921 193835362 649189396 715177523 863487420 935268656 571709680 767069192 144913358 642228479 154889599 440327071 239190353 396074063 605577917 735780332 704120701 747179670 781790766 965914345 273711898 397582513 407060848 628530663 749623702 928155842 31142875 445935367 699371027 844779291 935679675 993436631 485534019 903532426 453801444 866973736 850133678 872759477 152788856 623474231 345085522 577079247 888482610 976691919 798797079 900459661 376303540 382043803 772354959 871219834 923985711 969301527 594691260 703384703 674894025 730067115 326859040 396062328 556526029 702023283 258313751 798649797 148708011 711949989 716562561 912614687 466577832 968904346 12758273 284923651 906199743 979789898 348169118 391443258 178702316 808895745 688769682 822608689 672353916 884243793 839747956 915695443 712783022 948645147 333158276 967845979 164379094 461528733 693622719 776394751 621947099 656912879 536844568 993265728 826827313 967932734 937331967 959912264 769380743 781992350 741434215 913912464 602613323 631562697 209006811 652949320 3799834 623162342 423904836 700703815 338249919 398989773 584958025 896318790 779928646 870909797 68288971 235292977 224316578 285698022 135216556 179757439 879138470 929056265 482735180 972651826 131726655 538663167 400877699 836890705 996246530 997139611 82190195 626764429 407838361 427396058 533111465 913211971 672907156 692619672 629622750 659025030 978333957 981203666 632916176 776584038 529006986 838565975 963416664 996334368 161682906 224263870 139687607 172558280 653099080 910704556 602495173 691706536 824563837 875004051 119449466 305200083 539920844 741066991 346506089 360266662 635448362 713244311 965639238 976753940 555823881 561747809 51928290 840280562 66179203 502023501 162031230 370141050 178198640 202592749 711527027 783704689 231941528 244024448 521386719 843946129 25514733 470511854 197046717 688576981 420431653 976958296 447066911 588187209 656081998 676836654 986834001 993419750 271204643 854077915 1726979 729868769 63866751 227632954 754739491 888375289 601171706 954899808 63053741 645545033 804627336 867136675 325541101 690563188 494829494 868074531 183099150 264435672 286049548 828297987 897241594 919312758 944251463 957745035 312159446 352241855 623202237 946076827 742850008 955413013 183553707 256280558 185359123 857842640 686640965 938892586 200211748 848952682 40028595 772638925 222633039 704779443 114181248 291253821 754639541 850523476 710400837 872222821 493500724 884409559 94119566 609825453 177982074 964221229 148109377 378513939 969215348 991892446 19456048 957406392 844868102 995037531 17894288 755199311 863633482 973344918 805041352 877068837 887315106 921135557 913926487 988323371 430330064 894768221 361834196 876469235 887982688 954789429 373282495 681957823 796075107 893097507 490031501 516485629 913716473 981851974 827704958 974623991 70444801 750823319 38335902 584180109 87154966 243154235 40409006 564648947 277846912 772743388 758640021 822905664 175821703 519270175 966316970 970422750 844952447 892256091 127063650 159500966 210966342 272914145 671478623 929726696 928581741 983862999 671898568 778418831 219812447 701625380 820486090 836472089 252802876 493960391 59370364 401048886 877816637 891909228 642351105 954055482 770652876 839995641 595456932 919917742 451687451 463468382 106962337 312513503 660921277 873523503 385505634 429231569 588794396 737364075 707175682 884552215 678308455 963672120 896198019 939667751 751789611 932720191 759766213 791213486 282828536 570114791 980824037 990473732 524743353 727811629 976219416 978861438 72407962 477983229 69466276 909981398 854358756 871430715 432389958 858260759 995239887 999758761 347679620 503857382 971678666 988903827 766171856 888996537 199123396 741288434 659583331 787253434 201287463 539033415 317783159 722138380 463834982 645002652 308961998 634195378 754312798 920028447 844422305 850548769 488368280 675424143 59826333 521438798 754126280 814886493 819590307 963239132 649123546 684795064 696919595 867730336 241855337 598984351 891691918 946511426 872368893 897643872 864468714 882271762 561311037 954242466 438272417 950926612 432158814 796360017 415388326 760527728 140382823 492281585 949996100 955033036 607421717 751528488 736170540 756419718 647812979 796870331 789940536 882092267 838745210 958784867 179905363 563254701 536168226 883223242 312856097 632210737 660832062 953801324 659543551 973461247 314161149 877443734 68538136 821184034 801818684 809531780 685533448 863284925 737085578 993883372 312764281 482579422 650692445 673611477 538953764 935604454 506209462 563883224 733507904 872970078 750098120 822810418 462255299 672000706 394194763 726503450 77049985 389831754 678678188 734563754 594725535 749223843 1185649 107422747 94827224 147994175 181516011 220526523 322720681 472461698 324476249 596740629 90478393 548702028 867037037 912492323 979673243 991984214 539296178 877893327 305246750 824697971 4328156 977200104 796660843 834414904 67720158 98240392 855556294 966827587 461552093 780433719 818372381 877772858 635280923 891740926 897590888 913861879 637718505 982357747 114870343 930589674 231992602 281582115 715290520 974991752 692294186 754720126 16096429 870735218 875797786 880403413 475976199 658320731 526804696 723440247 974202742 976067548 585931664 909388245 462799900 746437776 72993375 313119514 304351058 577839286 712613251 929544123 730723432 798263240 901020472 932872347 655645175 817434438 412871342 755063421 350366205 448788399 804620903 840530769 35679730 859875389 482498928 987894022 221599156 853934681 594390881 812260539 826950651 952338627 800919660 991614896 542131293 918477768 920711411 993140382 113806582 854306801 697041580 834502270 318925275 965008702 650139455 663181988 644448265 908628758 530669484 775834999 254327037 814065318 126075691 828140630 799265201 919352847 452127285 664214608 586247873 831818539 706784901 859458905 737590474 748275606 201436517 846391545 909583065 946746337 227620544 856349948 456836381 930004835 504776330 743549071 874447856 980736580 899635224 964167028 196581774 490242069 279351270 670574227 236701557 425026104 854413426 860314215 359349828 759251375 341405794 858363515 419168679 775339100 743367743 920566946 265415914 486827839 695809067 808148503 324485473 615236077 111420668 976766324 728953934 938063989 777501726 925041568 499960001 881460490 162258075 670796545 615919096 783044005 170651182 185416660 374608406 942151831 715088258 875431380 934086499 973766677 341206163 680171349 626267604 982592056 222173906 752272363 654750558 700473421 587045764 805858399 352730457 915104919 760014287 953580270 607346611 986467849 158568846 380627717 295002429 574241699 169068999 199509937 401373397 450596743 821429793 916927208 716955845 766656681 295631123 323373686 33500141 795207715 846823667 958402010 854764912 899528218 766024882 808556360 813475396 936950780 563290959 895720596 986080065 997565184 774457199 973143167 75665568 341974405 902095943 992509550 500671936 930559615 219254712 656504272 666586214 761786740 933052743 961947772 742655381 813081624 335830859 492114439 23325962 372007486 624006015 984732995 157275899 876625687 971502763 971647310 308689644 943058892 298127711 974661618 520238712 775179001 909922831 991134486 565965165 671609484 858089677 971187458 383911727 596291004 897988279 992245341 344410350 447368228 249783688 293878671 839707284 877127706 911665170 987334299 779377001 997352956 690320442 893931293 814074104 931171961 442426296 875440298 502805467 885533457 906728256 939028813 634401954 741915104 300400812 439654076 92488730 937143181 19187133 743047307 992791958 999588400 694309221 949256435 7323545 310691590 406192864 893032942 659485101 739563430 89013712 351953437 11854808 950754108 144681249 246869540 746137168 748456599 993397364 999158637 38537168 255427548 44936950 224821714 140681428 610672292 127710271 934762616 75998168 767593944 880938807 936169132 520912681 948662563 377284705 687741940 551068334 905481797 661456623 948541204 782070643 876452669 390990275 751557974 547439207 804667509 225336593 835622363 290105416 648269722 253481903 500562820 784321507 941197509 97237994 161294519 227082935 948829733 592641701 949488048 798003460 846263045 916264633 928688043 139730381 830805686 128774615 580605677 742252996 839075818 856030025 996698872 422631921 773278836 771138352 976894852 632253255 976962446 605810497 633995007 21608479 581686279 632147210 780117392 704145480 744911571 521208694 816002293 229071639 542489786 290188668 896066056 504877392 811442448 654254432 693727080 701099909 917477863 760817126 928692778 937757827 992614936 490645612 500972186 184250446 514740746 601620467 958704131 403319334 789218854 319428599 997611142 352537626 518517173 694128434 916460455 454471498 964364622 690121382 734010839 817788734 998770548 530684391 774736667 794617893 874943401 210138284 666954877 229941057 490882139 597086445 662923523 492996867 606520018 755541148 980020526 889629590 929669918 816032498 938941470 341200224 354393114 154779654 704116379 202064739 527659874 995829976 997583785 993568898 995727362 843798592 928427804 145525299 604653060 741513801 906816337 291022236 324423751 925564924 962047090 893723663 936999896 914903233 993021605 483738000 586672059 393855478 716337164 840355999 953873423 168873791 766262270 294714997 864496164 793753228 919831836 172023157 867562751 50964088 903335336 775773574 834650854 533792053 906010298 479314765 945634336 615467195 671116581 558672410 856784162 131700461 513557208 544889921 622637284 612426036 693425931 411477383 435911223 544872258 812119220 267139175 833998905 857179596 957490799 451581868 954472414 12722356 771634525 83549815 801151581 622894723 893188036 996537898 998888692 802679087 933064856 777976830 877636425 685501865 783041376 938158417 996328467 482189722 963368218 85839590 949914463 458191005 747525362 604530884 916129266 239492380 387573264 329305824 940899569 98592391 876273901 400710982 875244194 721354319 804906406 410073165 416415147 956952603 996173547 307114464 656338588 413108454 672945157 89109972 954341122 93226911 253318048 716228103 938158529 139007718 143594669 36743089 461074534 26225774 793251319 285406538 285744735 665961919 972106454 847045293 945496348 969626212 991481006 358876782 539402851 819012409 972269695 598863708 643615017 794125315 907448823 535984010 584169898 464812034 761508073 8845309 834295040 493618035 955035577 658068471 743267787 177505835 399753287 605664748 648273099 291134970 374876344 531046166 955673162 620445168 811037787 426932207 909808234 118007940 205199103 721369348 736825279 794577364 923481777 449038091 690562170 583656711 655682166 528720357 728595446 9939559 490333500 841588176 956221244 636887309 901495021 636510487 831103665 455790795 900891338 821689460 896390011 908336744 998673750 87717274 873473915 316113019 366186427 717981429 846248953 143384937 838542860 342833373 838270196 211544920 746960462 387291294 937964378 718426525 886249840 618042125 946490413 845051697 907135291 727797226 975967065 774745819 891397738 894449633 895368208 624508341 682719115 423365560 856172323 535362347 585217016 863574784 922788821 898540455 950300552 912253830 918399086 87142543 302276213 629194423 846750542 44123104 798235158 37036083 203845123 220736737 306716369 666075881 757749200 708601622 970767171 177731951 823259200 7487493 85461357 389894123 667483810 576160800 729890218 534111792 626290305 637080634 696742841 879043635 906221341 980686938 998263894 804836672 964116718 192543280 834133251 331411935 673288902 200470182 388614537 529773998 917191642 57133360 901235541 854013370 887789051 845318643 951304916 147373005 440536114 296902090 451882921 825054502 962495065 622669992 712120147 81036960 744955735 460007140 637440513 580488167 919952739 874224493 958571107 201395081 657585885 47267978 818983725 902617416 960963175 965279559 985633206 917422470 981444680 960596968 978920575 228851648 950444850 908205158 966250205 706528258 960424564 479194071 977968352 902752757 945714976 463995833 656854846 817654873 903411483 868339756 955379407 653589053 935860364 448618304 592446424 184856717 922167498 211568950 543884132 378044368 528902493 76146483 391288627 605865487 791908751 709148622 833076224 697594002 950174083 594354245 840962677 413143050 587481739 989840166 998495647 246913458 560377473 286950361 566581976 548400940 737465682 657079819 764507372 878640181 937359428 275864242 723403591 168705939 242972407 338680645 624941646 966665702 986160690 44826073 582120287 693976756 963148631 941779071 944674582 747085411 991986358 400073564 982344292 639480336 894416445 315724016 563429043 620894660 683302682 214015095 862610520 16181292 48778869 294370723 734356263 90398464 609696758 960320256 974684950 247719374 661542125 254993170 283982067 944801358 984566312 822552218 902895407 302555113 406663017 178135170 617422852 346586813 954535910 906202434 974136977 516481182 922973547 202151156 202252945 552543521 609300269 824808073 833709858 356749871 712293223 778999005 974994784 186599039 902310447 999440992 999534872 951723970 964786958 816956617 955883470 125430859 604887756 509287239 662139873 112858364 902195599 318962465 578618751 628455480 821813095 636221880 644105529 892179497 928987615 970703020 980015045 132492920 525124714 477280634 734860307 227380170 232491674 253663305 657968004 356616706 871224746 386395953 400064672 555902118 874902320 677149661 683021753 76622038 280931921 840139350 968042758 121379988 172487908 928345375 959185515 576957542 962488223 360125255 622877007 7424218 256123317 651161507 740020898 137705924 966218387 489307316 564951850 78918109 904801937 919364080 962465669 723539747 885179024 833443681 997627798 886319354 918871856 286683764 845934454 505097079 620078266 957010771 985414313 55362601 916816649 523015013 587232380 997139519 999681648 683448406 946213374 133508527 755067733 521224833 747677112 547556847 634384446 527533839 958458276 462206576 763668900 329064029 887135723 323487761 348272977 443133373 717035577 514356256 952450798 910912112 938827350 268713703 788494159 142614028 506023557 571152816 598950053 229780560 255724380 871753250 964157614 125308680 928543909 370899660 889433469 983294125 998408750 143527054 797505167 230710884 788568014 939735087 992087763 986047350 989809040 205525686 266041228 43188619 158143935 472576532 630220716 567308376 853646149 57190489 229890097 260257412 404248319 71827157 824117804 279630127 466798025 671104852 697239495 878389146 993280013 861289434 890676997 940052060 979911681 584110777 936557946 75512327 275472795 439258677 764345440 861903347 925041705 638400295 844044313 736304968 766387697 621385966 862763971 893930421 929386941 90254928 146194947 743431978 822926886 858056318 881823230 278528226 457234152 333137011 389910160 118060830 302776799 696801225 875436004 797317391 862736691 811783361 822331179 829072874 882427212 240736088 422257547 671845996 831721055 37904014 300830470 396368167 571880202 728235161 934847703 463668885 569004572 341783432 508954716 472605479 519638055 984948701 986743659 880808573 970023877 240572676 464501998 816761569 840845284 816575591 861582799 260452011 737270724 511699371 754377373 387963890 547131188 199878543 247874377 870650007 901544932 233700022 582789497 634032939 922027786 134541214 839861711 789150886 982762614 27285622 37809890 194681500 323956493 395963191 604419647 485997955 859497634 169115734 928890497 24239819 295149595 779692088 922017391 587332481 800629343 719381987 811145405 243416406 604408127 367840799 524669136 503742485 607663460 739835245 984507137 916324876 944397780 688345407 753943832 703332778 916436851 951150069 972848339 753328688 761452497 940204973 976294790 801178901 820519861 864910177 960372317 749163414 815188699 365155170 907423658 565106907 725266307 650884866 907249008 97558633 596055055 448409012 560314857 20110457 341101089 539217701 635495623 126907428 876714798 816741483 924798639 412376531 928869211 778724814 819816292 884834421 893454549 271408090 429879703 518354418 764471377 616128383 993198550 872572367 951337462 347639969 368050837 504426187 820604224 457573614 620190670 547046901 729403058 79222545 138854705 905555624 995749757 440371986 757298326 950128538 951454409 878754014 955939721 170089274 196682541 22813070 760562140 896688145 967119943 268548423 549083001 827735466 883754190 929010425 997066873 268483260 739140169 237103172 440824883 868072207 943085374 536184069 622746607 290939370 346856817 998987213 999396525 750586411 884574083 66264883 228191639 553137108 672433172 911728256 974490617 497813236 687779077 688030486 807838304 397600001 707898767 274603046 755838905 297405281 840373786 264625823 337737065 92406121 321507776 619353992 969490791 255532211 573883416 998276071 999423553 163180824 542770264 787809511 863435998 535855647 809610632 468587760 936845101 850327135 934500538 487478325 869729962 460134727 965674867 952132289 967870475 206868172 778878904 273723498 817955599 754129556 961367071 411183304 645842162 975831380 993543605 398509711 606848328 75581936 915643332 612790316 960492935 709767814 787870195 819565490 874194167 285402117 299807663 95047029 199932377 633832990 852235354 686843381 933384138 706488946 752856625 378851596 799126251 752688996 764908155 537361922 669512221 162840828 754782149 209780668 610421383 455300817 734562990 807183761 903619584 274918602 764169199 797694864 960642202 804444248 959014092 220234386 573097736 619605676 641453152 967739099 971084260 872600404 989623295 289708865 574449140 438262569 596738769 342529898 368718404 987439778 988429001 604824772 910190562 61864987 265466199 78749711 418783154 429175893 821582326 194509373 803559026 875214851 940431905 341005171 609013345 458471397 844845779 666939088 704411546 775639732 985992228 409044432 421599443 438105167 920314631 329465953 990385907 926888702 946055578 884229227 974344387 297357953 445661291 124351700 958291769 590647996 707573706 366306591 464998674 65553462 66787400 552187869 687086402 153288174 455168355 549881162 834876306 271165535 783149367 579264814 928269562 946686770 974235681 67195582 454628197 822214280 937265885 938741235 983569630 631008475 845987634 105895696 372807092 259789015 878412026 383534421 650526180 67810689 908560229 506860528 690616326 353478823 361888582 357522786 890117101 94195607 205323662 355285079 697707387 85531762 756453994 546961207 881958097 793225660 828430165 282618770 841700600 529793502 619449129 34197965 150060799 577585127 964622361 267389537 371021003 888079825 988797378 20946354 389217425 54094590 938785756 534710882 593035834 936265455 957525927 317515320 563582790 805548110 880860746 242189276 551999968 239259411 970316626 286332973 838479614 600752832 958092570 433414542 989861586 215765269 494400470 147991384 918543096 468384269 988678062 810652894 929982996 520323360 944591464 397000560 551300969 398119137 768406694 860254639 862686432 922207436 984824739 542142407 886056952 389914549 672064312 118017276 728477561 518581463 655358061 500442273 859254746 706874511 913836455 634562288 768242882 432522143 533940081 431282728 757604302 419681681 535566323 474959641 759648603 107669511 997466558 961232757 992771140 589689143 944775688 852349352 891354529 868476989 916632325 213551164 235560487 578779936 847639655 725245215 801336004 621060352 954459064 626923592 778988304 47052934 518676644 57037218 269755615 729483245 829018498 623502064 653082174 776008865 995431206 287647483 487012680 186772323 504074681 262410232 511291930 945124646 945784331 861618799 996871296 230178916 932401875 383356437 811379968 502654773 937374290 714188926 901669358 634115959 636635224 16547598 600971122 120349286 676506640 990540768 991616937 505906817 597185316 273990069 894067305 914515101 952726671 294427110 941166455 869794450 926578574 303066473 531174434 334801246 420354701 870956425 987788125 964086088 982768297 960887456 990158663 283228911 567945523 492684150 524970264 783993082 994026041 128566746 461554343 124163869 544563576 711672404 919049660 814565666 875257351 952452204 984035752 216608287 808294962 836409069 900349267 466841649 896044013 77485709 484446643 66233670 329146127 158334833 729389911 842482361 977806439 178292634 672487597 733465314 905346274 226993734 889443932 466405850 612355563 173522216 965350733 793285691 853118484 311637779 617823340 628008573 953633879 651799884 845025264 375903983 897871398 735686541 825700413 813469625 830839876 540026476 668303189 668479500 949582873 873811479 918581816 755014845 832620991 94788192 262118671 975901054 978643107 49737541 841754032 82018094 195433035 937186478 975808654 205010354 346465988 514097860 888082289 604574825 614222760 29227794 628750871 784940858 834278306 698530345 700158736 796951311 895415674 618065033 669302150 975367471 992624784 395602633 527414312 369973432 516474043 877984893 953483788 743595987 997309891 483708493 955927837 290584981 498008869 4039981 329789575 693897787 993526393 307687731 610238071 15950432 50394392 971565746 989591854 841005775 858595668 410545728 428773479 855005012 941841388 399869914 487326882 981105498 999730190 912291142 933867152 724577891 731400314 647423879 798934500 722703779 890233854 465596610 650710011 951724374 992366491 96980586 689623708 18137398 21249659 732952446 796012321 631869842 820838240 361535230 722574986 17377698 263275215 904008241 906294865 28015938 469080786 181669006 852924222 180465819 833497358 681803397 725299455 162559660 432446377 220271609 514558142 776724853 875199256 625928146 818438194 67216093 719101564 778552036 938797858 175376695 779079551 805576616 926594523 917790646 928474430 865775632 985744816 748406822 784890694 231332244 981580833 425433740 528975250 451145895 944980282 296037681 569381899 986058361 987887449 427835663 793342555 107096066 870614545 307169153 531008567 840317320 886994038 748184106 931650153 716396246 832783532 646840860 675840101 897978137 935764592 655218186 993825837 369044125 985577672 907079847 980615229 836240102 842988502 84854262 351687592 589751230 871671270 422657415 944434866 270287036 900707589 3658794 870549644 314291397 973955479 563286254 858261365 978732047 988115720 399456096 408850941 597203848 881497696 63981806 581663652 880005558 947852849 211962151 812667348 620210014 958497977 7295753 880196396 800859352 858193448 222435212 293993806 583104000 782164595 207020719 405385898 817271039 982494136 883965041 942648747 100283592 278877479 371385768 425094786 35195224 885348552 7906426 37346102 624143948 775165292 635662600 672738893 801460232 962764503 251473955 866306929 694849575 744786820 53797271 217674550 547412857 995111026 963140505 975881098 310932319 534691252 683452352 859547819 643352631 931258201 41780844 901388669 170854770 612579642 431324747 995803899 731951630 856757346 760084876 851771648 20649728 289846328 964014613 978325510 646017723 654209828 300583299 536800553 818035930 978807688 791642699 938473501 137414988 704079902 410940663 904076288 389926127 609424909 763969108 951005213 497747219 784822341 513958506 774808925 164625712 788168025 190924547 683202424 215846066 988105226 315448219 369610144 111879455 258638363 696658207 793329610 493875874 659783893 633543032 907504081 56457272 914099571 574406373 786864413 498993280 908649501 199140829 906097063 792168389 904732647 796474578 808116433 807840213 890339886 308207390 593438072 570463581 698098826 309095714 574492997 184014793 378889392 535599204 850109414 842282614 906955793 285018579 492637137 923078437 980086039 131043694 551914305 616800233 663085342 239718519 243705794 869605330 892465957 281464927 473003432 66659551 979043378 944231858 968847691 775862639 941952851 881515869 933357591 55671332 361610903 515946884 591254839 556434866 691111753 17127560 105708385 466669972 572829468 683350818 755261156 501804070 979628673 98316529 551954732 252090369 813082601 910960233 921604265 755193427 852724995 401519897 553748618 441042879 650552266 101569633 758435024 828819560 887768560 883593436 936018908 245832046 452854499 891703507 907255329 301471828 467512332 310826693 493233796 714608024 801439582 106657794 762514875 144780621 164355900 211971354 636179565 865316743 980414511 996728397 997601521 704495328 943933536 32884750 166028605 761592752 782427564 263921164 522183463 11933041 998014022 694204447 766727679 276116103 363152107 877198529 969343019 350316131 515632092 406037553 601800661 221874851 778115660 278978930 808783956 854077536 911974133 156885653 861430072 197961959 951953939 912361246 973600870 609712254 751408042 307815504 405518338 399963125 827852996 807407626 956378958 678038332 686242542 615150639 864772670 869049559 905708485 356442597 921690155 97476576 729074863 890017183 996729919 838883894 839433361 187254189 853651834 262286231 593799326 740520069 846510886 288863864 491456392 582075926 738976027 785491165 842003648 991657436 993004878 581265515 650044080 783698404 864179511 100862829 304456406 478126817 689072145 844398789 954269684 391805257 825357376 821624488 919555076 361461514 847008094 164831415 177844645 960675760 978854981 711141249 844278688 18257550 494831064 304336350 936969188 964492564 972458477 308211282 815182867 942211958 955061478 29575581 790507645 23730893 541368610 306127107 818054717 671669644 924780613 417196158 801700702 553499805 958738440 950813484 963246211 3043422 519778534 892587789 924432544 345407891 660726705 935906866 970613906 734101819 798429969 52696102 963474234 950408873 999952997 480646002 612779337 615140028 698324713 404001077 609532491 878407424 972057350 94056010 745480056 128026103 651120455 914310677 934175903 440533638 587178153 228729460 997598459 689574259 695320520 882131700 993999605 393490688 686997916 697244146 964289215 375648698 448082277 37328296 552895370 324035674 987794731 262350813 429673372 524795947 875556699 517251526 678100140 457522057 661795905 481387600 517771618 747752463 826672112 823519881 991312283 5450963 456253230 467225503 796579350 471246043 986721496 848547994 869722186 989064404 999517774 585839512 716412617 636703962 682374019 876300616 913111989 864211820 997287304 966075720 985846215 464144550 654785381 671839795 826390652 738372533 801103048 60423206 285256993 622989660 984220710 137656357 480618364 655117578 978414739 523903015 757637257 812621621 824195212 221882569 330371847 809799303 954773732 502616849 802990892 236573345 766451827 49189591 545510592 817427349 973708426 981313918 995196466 860634594 978194258 398417203 952894687 580541509 670676676 305530372 548274213 306373324 367232206 537290735 896849411 358289252 946549212 753700364 953930051 38059227 690864855 999960245 999987376 725387046 842226411 688559676 953746909 225387037 968767321 431529595 766524830 832569770 899642532 523491060 531076616 578986454 844386856 318211414 334112520 142130597 885948074 952001209 982531123 852934099 935915407 869588281 915192152 303243040 320517402 817448906 989423186 71498558 141168274 811394989 965602328 793741223 965122044 451164450 821858545 241222827 933933624 500131336 534428776 903746293 955477970 994696983 999012791 454707000 946266942 77073282 347217229 10519436 743927407 455425445 730350643 61568491 907988047 988066855 992562356 78056029 877259030 88480460 743951638 926900711 996977219 706747545 852816421 990473443 995619255 9511501 281093546 630760551 977214828 985001861 997041460 333576903 557272564 307673282 885978015 730116728 766914968 576873501 698771790 167220301 992850707 621063738 629968531 949154484 983947571 414258774 859562165 652123983 824817584 404979837 822743375 641636161 931223125 219715786 963066102 502920064 673465242 940234712 957802010 165357810 706969715 784701655 791835837 336253642 783134081 943801512 988661391 34840911 951197925 201640357 512495544 583315969 931463132 450100005 671857619 316830119 851499496 78386816 215990818 145718953 766598697 861657149 872744599 987568296 998883016 823044462 887320093 899765335 953402776 511220260 571971552 615626222 615970640 798415045 822282065 750141222 990594887 64465699 752825029 112629218 629032802 223563763 832962947 907186688 989775778 405456825 659890137 915741449 916791501 124711929 523805557 510446034 838894360 946310579 951675399 402413435 459847405 152713229 308455733 513711280 972584824 625428419 886966542 459345958 744718185 437864224 910266000 5174270 944578937 766827305 775669400 229337114 695720620 850404871 938363106 189746018 201244808 352427687 937313539 885918960 944870757 627842478 675303115 457889410 476259617 185180591 474206812 599831574 600614338 17854960 51913010 13303438 631121405 723355171 905556542 42334192 624949191 980933051 997814591 829000928 942750233 742776544 791781110 508147730 936350621 195182299 322249087 408531566 951648716 283423442 694560143 975091252 993303102 607111834 638850823 669722596 824170033 382793428 844090219 690345060 838966282 918486184 952965602 883167103 922286581 326062773 824991725 905855170 917264093 804690292 940839938 937561561 983898200 762908732 932789138 817017084 956923306 626523333 960977105 753150136 948390392 345232849 903393067 780481849 882589425 7458657 788230301 471741284 837149334 221197201 544505549 272003660 523880521 669266438 761924765 682674317 687116199 221784223 412966978 229576704 562051115 130534395 287632807 322031204 507795014 469755921 703506208 725525949 823479314 419272169 908633860 461419943 952377400 398237558 737817587 284221387 690617780 339625078 863854674 214864267 748557163 227437356 511903994 85261652 226087454 918757430 959892199 117246578 658400055 284537099 466916791 135634598 264623453 665550907 899588144 686529709 846851673 766223032 876431718 25843731 112295725 542681605 946503607 290430535 711516394 312602657 709962129 989878758 993056863 734001573 832127451 241575961 876035004 831112370 974886466 542324957 991887757 407187737 850806576 211293116 876741373 193935805 779453935 264396651 874673518 254419259 294288857 792242465 811401062 41937460 182050721 651381613 958135911 885860720 984449383 979017727 980803939 831941236 902424973 259569662 781451645 193571725 310632752 117951113 263250542 274388290 550367657 909303540 932169455 924650869 946902738 661870324 937288610 823605262 875903974 512016490 548748836 844627067 959876815 715558166 751696913 790473104 941817689 858620349 920432240 269961778 347054769 246848224 698975269 889064559 906302659 214939234 454743690 85885837 939275512 376533925 378064844 460427971 465792158 850209933 880156419 388112760 927536799 481019893 917169510 526813077 940245217 674888235 876025689 355159155 628546768 978685065 989736903 685663690 702320367 598552167 924804418 440961968 798567584 763615868 958209490 223209807 226050852 961093344 984678214 1856883 275104655 565138490 731963306 966350540 980580211 983968639 989930360 898790028 902305633 131200628 720647867 69461939 927597159 179287746 560773537 987425511 994191814 300214081 630084194 1946096 313489947 734159270 854459117 249417923 854075573 701351685 861076253 994773453 998066175 484016434 653859636 358024666 856908833 384628607 875695659 822775245 979935392 596387860 902280066 731842971 835199124 465510511 526259875 715818427 838886871 189803513 294002631 965153339 989102660 551660906 654339539 84667780 90421588 733088985 988237959 230517817 556890371 41908989 690982238 408171844 686043334 552333338 687951490 788783232 826636607 661184280 905974366 810527680 864586619 927546069 990258212 942503885 977475104 705071144 914230562 780665303 859451449 994709771 995633546 955973173 963944621 5473833 777542761 962400815 968182491 536802068 661345363 856571250 867863708 146927465 560901720 396083399 737568186 435361004 660212465 918489478 968931655 585631694 965220642 453376312 486839456 897419441 942656914 421578799 855284728 721624717 820589073 695990298 860261003 661072607 967708782 362920664 911562227 917435660 948471422 279909872 456251306 1389066 711727009 17398185 700722651 47052692 756971436 389695232 568858532 227703046 814953068 290201246 625087252 1379733 993269555 402568162 837640189 81854132 880818457 378821998 975092062 676962337 697040950 623985115 654803560 783620091 946858090 378564840 649389275 990369215 994907024 561819744 955376662 889535607 994679468 647790520 808856130 3688802 776176808 834165385 985008291 69848532 730015964 744778582 816309467 133352785 227481261 898823171 994404407 930971207 973164709 724043817 918930343 366417135 797727228 675219970 966499847 37099601 852100703 327779384 707290261 593564775 735743576 245195561 698571370 650858684 975952707 157627650 381283510 200564027 467890126 832141364 882729837 951444084 995155742 566354711 847300721 340187402 746573843 652470235 905839591 559374037 816137119 936430911 967444479 40427160 485958479 655565946 867485878 84631143 736691366 407899998 602724120 928517234 938458453 380748401 715016387 329458947 760670731 101508605 622105568 899516109 943579837 405455062 451563935 184933340 481867307 783162914 918365933 205627850 445019676 768254730 851381465 755430771 843062510 766711342 860486101 626274263 681865385 300302891 686975523 439794606 830068145 547263853 890534818 529505965 838145011 384306062 969192319 161993782 457078782 22090874 679561865 140709808 964994051 868345217 996596898 372845263 642037122 79083130 533803010 449418873 966312759 855750113 870840310 797042611 936135471 184585515 757177793 339303970 994994557 384162227 466703912 591838964 748150973 215631287 512418574 11431514 81361592 660636430 839537110 356383068 368329890 865910648 963473220 636065112 815047476 817319192 997181338 103064925 843189559 274347108 680940014 236151637 894033074 589696677 729325295 824257454 883319421 96789758 202745653 59384625 593658277 635153645 729264579 475982371 515882935 860003138 907776969 666368342 883476391 231167815 764595804 569615718 921935493 72957986 907657065 4146611 715203416 174354508 763758683 851259398 885388402 180739459 770080122 561822968 881321454 959275386 996953701 786708076 954280667 202019387 243177220 555483192 581331423 433954837 900637563 522486568 731342092 884812768 947552487 838210133 908383212 157026255 451316074 707192161 722556083 682726509 967892526 153156609 904575111 903978506 961596388 893039338 981625005 547624496 609977100 534067688 573105124 771515274 986672327 704233973 955100928 254233163 403557968 446679265 880979975 363814671 542875528 753939650 790197215 109203703 309066658 454248097 669662393 615988090 959778901 367577301 450583280 164269970 287659843 326370812 538481268 415404703 546110924 974010775 997766805 437177434 890387324 778963194 949332630 825262840 900519670 117507220 312803133 708700810 833072586 541987278 975348138 152097195 632050327 987604426 997318380 126541287 398338115 5648186 346378496 873018844 907065021 87576362 743042332 504646170 680884115 190076439 644679761 756524269 811586639 530072204 582080421 422843019 973752624 612897893 819917349 884317998 939372766 158270224 500072835 709769905 926300462 609944878 957726493 422876266 758306363 474426656 690590343 808287038 907950773 549018336 872143131 375681068 932173776 613892289 670450069 385893469 917244979 797157226 920325676 555068362 924812375 950603271 953221508 338485366 737335406 448277875 450093461 218293722 806714359 286348990 855067295 281842956 852582833 957293970 967036320 705011067 984044858 649334714 720582116 492676137 935981678 954383911 982676983 587106874 654466920 285603633 326864775 7395374 149247909 338097848 750558251 414907786 423983356 196692467 302982014 148294460 678192273 923131811 938049400 371189832 709796017 744784134 926387714 298158061 579055269 848267308 905154969 213880590 277576611 964853347 993830446 767166963 976576235 590502767 965936379 731362716 816440384 161201739 371482298 713565284 835986314 881001420 911875765 248219913 875365460 287132348 481041171 101836655 378349650 404213551 817481708 985057901 989683170 319789788 491283147 197633602 523249770 47013281 862256557 401249575 901079650 432450582 625912375 362673930 740177528 511593828 629677031 986865160 997638964 941237889 995563918 15967117 428997421 946175322 994063737 605250538 969834595 526199964 868992585 818831381 976292686 227415793 456245956 348937940 884256110 803538959 858530343 686656350 827590293 701101693 909545884 838859042 922357273 393013473 932762028 876849340 927677942 509352099 781085904 23299126 134985246 516125642 689749832 8366614 884790663 836493327 965099942 447808105 806497138 222012790 779696982 807921100 857531921 614035046 983993187 512643612 753866117 680924969 929049878 517503307 684968369 30149892 875604853 700433575 934264625 953892816 985883244 996550481 996879254 797978529 867376382 675677445 862956269 410458463 785351136 278740860 464172595 951817977 963463792 667834443 913742541 127277033 765411986 748966660 928781846 666842202 723273438 519422932 809071256 779511829 820516736 543789172 982058589 406360231 792247958 354547257 894141542 721783089 836037684 423666450 558401240 88080996 413623023 38430119 554212498 67338865 542198279 767564287 899740756 722432555 968377109 776229512 967907584 672769153 855415702 692708890 778129641 139327410 140658126 448369449 816544925 846799251 901417547 110620556 306489311 235205819 252552596 269991222 479587937 169359754 495274865 956590577 988676171 545412440 560584060 313738936 869224752 782414867 806604305 140281559 950422575 536779963 952777672 761450124 892525022 200795582 453729182 710316789 974152849 240695132 433838639 16314119 837426283 489365922 907309156 489355853 618358757 36293232 845125527 376661314 946160625 373964110 522220572 499406362 776055573 133286656 166756648 327378573 991301023 594188335 658404429 809484456 920301929 258860343 697181775 64343245 628653164 697548027 783814892 268281059 545271643 267794769 516213846 634862732 765372754 703335764 850102463 157558628 856206888 303250423 700248725 589065356 849446860 146439405 824591265 847617307 851567613 449745091 888650414 950269245 981142200 487689992 968215201 185149055 799830002 937262621 978133158 964145861 965944951 773055102 858128981 288889101 715336869 103786864 104853887 719499344 762214794 632411837 876601782 704859193 708276028 519570391 642973316 381608312 960689655 712838215 924580560 106217799 436323600 834443806 931193813 905931590 989496714 434260601 617326233 443665572 553178409 615180277 744761627 625556493 905490444 684985705 895600862 924104512 955793479 344173621 743081563 839385671 938526975 29690748 630758072 587270310 726403509 513504675 984605316 416796944 427348908 340970611 502178621 687486385 719987891 23873791 652320227 470246183 670830947 922031134 956856158 388760102 588468966 92854950 330145742 114527260 514649935 223527157 387367134 107222391 206325973 206560693 273430692 300925283 733329710 988382375 992276392 976503434 981658700 591948705 684011657 96810524 897879968 732450873 779470202 231061729 324353546 318048893 687497703 903823530 962481539 567677498 807256982 971928260 979948711 638312415 656972422 511830015 690179459 248712474 424755091 403872087 589184653 86494554 881190831 19739217 425880334 808089723 950116926 336720862 744458574 138565689 252798937 974276254 987150496 133624026 341092711 789388180 879224047 65543229 532153273 76386986 862404467 112176209 563801861 745904241 904642740 997621474 997891989 384942385 512608123 319301045 783567644 245014830 301804513 489711389 748846711 172516802 572385671 272553610 569606521 738492101 804611774 794596903 935558304 98499228 912117331 172371450 803320766 772174883 888134588 848565733 965059891 57829671 169562610 991429612 994704151 596332423 803236907 949006142 976300763 770902379 948447837 861336695 967504517 754096613 962997668 596940400 835274290 399545852 641941924 975152485 991693576 73114796 855837102 394561928 722815705 739737124 958878532 784614663 939707750 269846594 642946806 748126306 955255276 938982475 957433228 399840902 668567724 396522459 578525877 56009009 451239751 489263906 688341342 933660681 939486379 765403869 952451545 965634631 973402018 364061096 628134398 366968502 646848593 616060770 988535221 585143215 655566728 944869284 981303677 641794067 805111781 738459680 740471928 966777581 985164180 552613637 961314182 395489133 454384630 15714263 296862673 952395885 960287335 248640523 363842387 353911679 522171767 290092936 864869651 253176179 771051238 939481216 982411216 303510683 595579935 836146063 864003197 335340672 505105648 220748279 784093071 799013617 882507167 452438303 679546938 736457308 751981066 333027895 714487332 87362351 744125663 510952511 776925625 521572006 846600823 398004806 694688225 840739853 967664280 672395343 981427545 417614199 873702971 267716329 567951706 873025554 881981122 728945851 794338553 491921127 870884020 584929408 747299985 827764993 889735011 743319230 900757904 174515779 299186713 212985515 723440815 278213035 802454660 446251394 840354957 180776020 213505275 596818357 906686695 958947646 978755935 387997399 510246712 299392518 931621550 199809240 512816901 357331447 732009128 124872683 491715230 964416475 984328596 715555995 721109688 35573101 869133916 459772560 671603372 208342369 807673457 94879366 517819671 594895586 635011041 287429405 904309338 676714150 757969682 471319479 825606935 199136632 773822869 627822589 633655429 801330767 810318589 655832776 946386178 484871237 771511728 872697730 993038040 502323958 712968008 174515580 420593120 899035640 956650189 685819808 706024180 600159143 955021915 651806527 791502472 934610047 949403524 670400071 907475441 51751312 451760982 495340285 822702910 710807649 985566043 981603761 995297220 158449960 455782917 284650060 715740728 482722833 725834435 78061724 287673797 946227410 991897208 215334042 398683737 571046351 742476150 671260066 795368743 701757949 879981885 655726792 924716235 690778202 793501103 562560512 728977037 21012406 855464926 251235596 873669545 110277440 215859097 903917015 975275922 515994138 993194577 4446096 527786552 366013773 887287231 648653269 716564702 708108086 828265369 206281763 352938076 871926952 979663118 625581796 666899313 616600963 835153033 397533147 502923651 372527383 627059780 804264028 928088973 343386677 870372690 920476266 973846829 661303823 965314054 246777273 445482907 946053161 958466633 607087534 919327196 348149060 933709574 161200313 712934060 915558015 986647709 500139877 531830776 194399603 202295987 188470392 954335546 525519825 761984552 473970372 652574545 416638454 571956665 20956699 176125287 866682980 941647657 852819439 958725681 901934154 916305205 970046404 993016263 958485339 960532863 330006322 425677861 104122090 881182183 9212765 577756783 14274484 71597787 698442001 739053001 457891952 950390306 187027002 590117567 212805705 554912613 298019639 964159245 279511380 588894270 657674685 898310026 639984518 779851495 258921949 733887662 468893053 713906241 380330961 967892006 601275174 965546319 279340677 466341995 107979555 707719937 797407679 842209998 864188765 994594824 539829478 983007784 148353295 995918610 965025868 979859453 314285801 595136806 151374269 862177799 145887335 378964794 114300204 783327868 30891557 902678091 576886161 790230876 199832438 931219077 375570352 443852370 389069623 627342931 269993937 424001373 783767222 864272396 945789342 975506005 131271089 427275398 260305764 468081830 305789058 594323007 731738488 879749600 903770610 909497170 216491446 285228886 50263624 475411449 536791943 937737925 885702313 937615753 999447960 999694178 753575644 819863757 651171371 701649974 22093840 644296621 321758218 750685706 243253979 872814937 716304204 815022513 3818765 26000347 516599621 722753975 674111588 911598396 488337084 764335861 741326268 992868013 280464129 981555154 488441235 734784271 669687081 985966436 499051527 969868851 434839947 771319521 442556750 911036051 231273653 628156825 625992819 908736269 151936151 894428121 847360480 857973116 610068622 803548112 718936356 906252110 595396648 770190206 591512961 683608594 832982471 930420018 968775933 988232374 913710689 938088873 228350107 374553406 891004534 920146122 372349256 992579985 30902730 431664355 773006768 891659643 854203466 979406378 967391067 983748602 265317633 407336104 20753539 506676796 710345391 735662296 848849785 889949537 437608073 758083429 902741187 929843679 223313727 992682099 883912327 988657052 439062190 713797062 542118447 792210496 616850685 918617859 97225274 722149134 536048960 839472639 722587900 754999799 483345734 870493510 468277585 735312778 637174889 747725117 699243177 996967811 238635763 244217092 804617373 961103533 597073023 617309146 152244078 519873617 924484841 979431789 549717205 893406474 61046321 271887795 641677991 835160226 523324718 819250757 695400268 902027177 30615254 570390599 117902669 493760874 246562404 762285173 428660487 848916450 449670932 904142208 34029305 304440539 934102072 968902893 921995489 993820898 962478650 977470263 666754429 934454894 38722963 87041488 725055294 860601264 675567126 750830434 411540873 979791342 919230561 946303783 525030664 921494184 782666367 933202615 919743812 961191276 975079902 978458413 54782490 619089567 729637377 865587962 285595618 648783638 462853345 711434050 196598522 643267505 321991648 328243613 44468370 341353931 64076799 105761062 649987081 744502548 765227232 821401861 729730216 782614701 850960164 872707625 824567280 936186017 582594221 784630713 320672149 596620333 329750260 808367242 56676715 281817861 200030922 897826509 84377539 578611460 853809286 954575833 739226014 802876666 646353701 773607130 641218950 706082690 588957404 791589152 407468707 797399800 433793494 560981311 633559426 911379460 967416710 973213316 247775502 967015914 800352643 870167005 440655175 749366877 124082388 616884498 794474338 817079161 8708285 299506410 358393950 432028468 685128727 870808574 999593955 999693239 181884008 418805051 191549348 864167384 993774653 994325732 182513421 940819333 433547566 975330805 513236383 792813569 247508506 732648900 137650146 369393527 86221447 549673019 176043632 267833034 325001192 762740088 407255138 876295671 789582822 813147857 229023078 259428488 529929239 974354641 761713087 802438265 115857083 474623919 45479304 296312186 770695636 809747197 547448924 619765305 227051736 832257780 846002868 875019444 669223200 911552773 611174293 712260100 174332517 840008975 269444944 938088021 967959476 998881390 631409291 926476907 295681414 997705198 945612847 947713361 16407193 209755758 668554912 920789762 634380944 756145291 924821355 946969203 109642563 438257078 49545735 544145927 505126780 524460685 976201894 981976432 704074873 822406795 903158542 909493421 983904719 999937824 42235363 320439536 140794210 204256456 785661816 859641249 265800548 697551620 640448460 740156139 817526014 822564236 553906644 776417484 824166607 990751247 90143102 884715765 576703578 645765554 467407273 946439264 855314784 891083049 101984738 500674279 89938544 191681388 931347992 934398680 731418634 820674658 809527271 980472525 399051542 593063872 959608558 995241934 65520116 276896325 585918076 868719668 104595812 196705104 951263821 986856153 930957081 973813310 295166591 333211854 859295256 998235450 432903931 749450921 693836908 936678626 573055283 919572574 324288752 608118773 33331166 854279602 648167271 766693179 625471541 784507331 855111807 898569452 180839397 954005993 543248007 660200006 18165619 890786655 442711515 608418487 914705026 933766404 378101087 758392894 105982828 847384909 254398631 667122139 287732757 737360224 997616511 998896964 746617929 884389853 524291587 754652006 744591147 944590622 829130550 923433353 507318943 908734615 746186741 861344085 836734766 942759807 50754489 205957122 38052506 576766010 976506214 982817815 24051636 63608218 886273986 914631533 395082548 738341186 396686628 410118778 878023058 918504800 832851366 890331775 207546030 602288612 116378754 874275311 663207763 969943948 131715107 609020545 447969501 787493218 954286766 957296919 240989778 790179721 140033929 491476184 906259130 947765109 940612821 976997418 221460721 740230388 221099899 291703081 626423705 646353823 86815365 299755415 661429852 681504355 304765548 624829770 775501409 899401606 393244381 530071650 883577659 942319655 885517873 980586079 95587460 704760604 273925561 488666520 497634546 589969079 562403841 826874305 649667438 757148905 881503352 919709968 184578778 997081165 998792083 999109227 235087616 682426771 262592045 318992959 973555328 994204182 12543890 60448321 652650330 747306814 793345250 811249089 592733583 926576905 834697053 978129114 967635360 982294356 433261335 526777858 612735676 658060927 364566894 390463592 157508602 774601892 249235567 800226365 477970955 627851709 265855696 914119018 71335421 544189011 834421119 977946728 114035496 574912728 795411829 827800237 651708282 833489447 720518733 915786981 278572832 982930319 133343969 555815999 144042602 588218376 207984993 370497222 698789211 731593951 719948159 770453754 852494812 873174440 829144174 872657264 265745250 483523826 301975686 456673620 411834278 598223889 933553832 971087407 314746419 612422201 427052328 753624481 590235814 798283859 474635356 809796800 237124855 912337060 696628197 738782279 960470920 975912566 139140350 480097465 598203851 686496645 564907036 577201739 491490616 565672165 118826317 207355167 368816106 447276492 579885833 661693030 997419845 998725915 884106866 962410793 682875816 903075362 56420144 219168562 264008023 481250359 799842634 887324744 119413596 234901795 25198920 827534183 309226161 608032399 830425208 848108118 205964291 252395955 575706012 874627315 891709215 933008688 234660743 891093115 970760510 975929572 246605708 357325919 362087821 939672915 675397643 968163841 292782155 725884075 588629331 808470158 415151580 626945552 346022427 965825001 784929940 877899041 997412171 999497925 165225290 194034676 591013957 899999104 11754385 20317016 636277751 943904498 559695398 691444402 304862302 710580939 489581859 839911935 953465927 986554723 869345849 936190058 973360602 976334083 190204815 747239172 771102284 980293788 588616729 801593488 520437597 854872926 968613392 998818265 341830632 939276073 259465686 803196986 92569415 949675798 815111676 861964279 76444922 745557979 940966629 962514326 473279778 949073932 247133685 737848809 322176234 646024256 907459577 997657647 586029426 670625841 606882703 648000449 179712240 629851112 232411440 645259839 186246276 530378342 132160635 606530367 389784267 720484261 364076094 573466597 262015988 353414107 183365277 670864385 559240795 818626013 819881059 953820694 282414829 775927255 229327921 423516171 699229794 932390643 385312552 419684572 146393233 325935879 448821817 563626156 622379781 866510701 398379392 780256657 657954090 864900787 632068857 982211081 648814388 852262465 462804839 550625075 505470005 506235775 15126750 922752383 162321344 401758532 513705703 547876993 594651104 629942434 183294073 671405028 879175780 916340094 452282050 849218773 355134638 544961324 261171247 687410275 193592803 299932877 261542818 890263486 469382736 580004188 103647032 410576899 465495588 585377249 166061513 226135568 340076623 676971965 235884021 309080040 365177175 869483000 542643729 640639351 920443549 939479427 527458180 848192560 626640484 866394881 456320565 772649983 715215942 998280822 193439583 944285175 688386851 691447307 214813533 937569447 960385802 986575292 928179622 944534271 207508579 852916480 699158561 872699126 821606198 954449691 539911657 988974270 322910860 575899783 894220651 903218148 165173622 762540930 801826980 866644150 207591240 497844159 440377145 777390244 916369490 932728217 907112444 962914682 591534881 642675199 149220535 582058438 443810424 794114397 48702973 756063364 339740706 614014092 239770235 301228169 688104310 751099009 409693200 982671991 729498723 797908600 505528450 903732923 378222013 640914760 9807456 11060441 818785720 844481499 583395690 739396867 205939106 219127179 315066684 547349492 847602675 870943969 732416097 871467275 419388352 657091508 146302805 389721503 250963187 649571013 482613230 562033923 72994071 250091746 177469415 266214677 774932470 950365103 63780121 695072556 855933731 913953380 87789545 867560146 692493169 801839509 591519109 882132509 297514396 312538814 723772414 986257992 139562733 929906189 450090168 966354572 118909761 269876202 154787680 870747317 160255482 964255677 63413871 276453705 51663842 506750592 372093458 458739742 327717784 945876060 806478637 860631121 176745141 649394844 479839140 989929856 333181403 919584819 442830140 585224970 969281625 977669181 463940597 759961639 851462288 855654660 183745282 960194146 303331637 445344830 388885366 474068394 915997523 997866745 803091249 837665174 425828185 689861869 535932285 716108782 144628342 673741190 320878896 650859752 502364712 578091692 346708805 897933763 116772615 598780047 73550946 698727028 11839308 870001043 237641855 330254437 487848190 866398133 275819850 428778880 329310357 703324594 983749948 999224861 749137820 793179175 40214849 786657001 780888380 858355473 488703445 917866062 98222042 926600315 596466572 631129911 478145761 765587230 824402789 999442895 469503062 951118932 938189664 975956287 429749709 831875468 847270741 896179374 739154187 857262850 339011291 751986255 501267295 964591766 913767429 968158033 412031756 990176100 513927859 901937957 722181184 988150607 703015495 866814335 230689224 524723601 882240839 982589220 732111527 783747774 555547820 743490643 992521407 993186700 730493881 824001155 42152928 182813642 176892657 330066698 815779230 964070216 36899513 951341646 821876945 827046475 32406222 670454470 7052552 588418592 189581841 379190410 877060058 883244445 557932047 608660279 814251735 860197952 125384245 732530420 525675618 542287148 201289798 940425324 373187960 816215262 551557503 969238754 142353378 449805422 616043927 836170344 759055523 894501669 27981493 387364469 786072283 867526635 992881350 996530692 649608880 927118736 497488844 847906248 28705087 524659891 342602119 525538209 980352247 980436856 796124810 950695158 843382605 959689440 21480192 911541886 402906285 528218202 909422339 910071127 318395976 575941580 4953826 487640323 28304454 655242789 39167186 301849337 198414336 695546810 79478631 920527014 127295043 276760812 571098840 785281596 948731930 962532810 454289247 540690302 841640221 957535702 761548679 997004337 446105416 567434270 819229076 951255417 477568940 996062769 934390518 987559450 410124237 513205579 222617279 228158484 141476524 195265578 400146257 429815419 213321518 907369259 595913580 934044814 644826893 854767934 260279397 414619365 700342521 710371608 714103602 909974868 668257480 678060661 980873321 990676362 427909707 493375503 821624433 876571522 762199235 847642122 20657669 583082721 46985786 833015280 110288517 957743995 60489939 812000396 236720526 408817765 443564123 806441135 472334686 689062870 414149786 739166324 3155302 541005685 572852278 691014830 866492949 873533609 646725663 646754402 738927981 871414645 840444209 949508435 528863885 662339636 672074143 770610376 130589285 391357644 955400758 992724866 342382932 935254314 260861380 862822032 744016834 947734438 801276177 913951290 272971938 293880605 925151819 974025738 385327330 660079055 842846345 878262280 57227285 280416613 883725317 896386163 683934739 932625330 811156786 909211636 279219514 762390909 118773752 774751118 285380682 488154493 236489850 552847426 58586642 529359785 421624708 627228253 620168722 683892011 756742593 877166534 280772416 286446637 3439714 979115072 155407186 396384714 365032590 897302876 412934180 482285379 632643054 763102280 241848760 273826423 436515516 999272318 96493305 772200322 771901629 784567330 530456063 710151726 574118108 620778606 166244682 907301897 691346001 932598423 844900511 948034912 600107063 885490467 308875215 510818903 565278391 932307884 352021550 757493102 4450004 158204067 600108862 802998007 945328918 957027355 608870047 914499000 790311243 977277949 488230454 611655769 860985420 962132031 197329751 605721713 799261596 949859809 933972969 954839420 501189791 589011524 12138384 731760175 431751387 637037240 587679089 831573895 839964001 886318043 483255520 974511624 785753013 804919996 117959668 413642361 126757406 814167969 592789921 772228963 480283735 706190723 41140964 149727548 75309208 395223569 476198247 488705840 384254842 710671281 976935735 986563232 342441305 531947910 291824410 338558967 611764108 829730274 362074988 628354382 941424827 945178633 239036357 780745694 139774433 147379423 914130038 942298789 814370683 983702177 873558812 934899637 570290518 934436185 332388319 779232827 357877599 620528809 509125396 669278005 792266462 962018141 544475907 658279282 767100704 952562532 631254762 714998888 593768728 715573322 359497054 638105226 982686968 992088251 988515586 988676878 343050692 570423906 47236519 972662837 158539234 660660866 931355819 995595583 737379106 807379555 996529014 997133015 698107748 844977304 376883576 559948916 229851274 252682575 954702138 971403822 394211176 857511821 502315055 834225080 86295530 474045455 83589194 311395860 824967441 841554851 473034451 558537804 700621938 851281363 854053352 900987107 895624172 973644133 287540791 775777558 500853986 604376886 464660916 638884045 713653422 824645674 669469217 744265448 658050775 950685367 237168173 563980784 440663787 746205925 113007462 428258240 124840853 359946848 630854791 647644032 111803617 516316878 408352846 651795822 34640392 949618593 747499510 998463890 512642114 600055083 324154509 699926227 204088028 732853688 885142296 895568686 229956449 956214330 900370105 991022332 738028511 911348178 601812053 721137099 461887244 476196374 590096185 897911417 998117087 998329221 628512164 685382946 871461090 893892400 531782053 635878725 693674606 892476937 800406651 908275070 423833137 935614905 403614393 485491761 22202576 482099028 667365976 999033730 146192334 508746876 986824786 997373798 589282362 781259421 659890567 835527757 985118978 996679500 252047660 407636856 329293821 816847828 624050387 793567760 965714399 987372138 704163907 963621718 681320720 983809750 37949630 677203190 487747829 933741177 856619796 915671497 560285589 774054443 667916890 885533608 966468300 967636092 172753490 506546501 781375153 931101544 803662929 947248789 97931010 480653539 662072368 703950356 73087697 967140690 509111199 994081316 709893492 795073303 110292519 273198596 319023106 684743176 364111630 817931922 206423341 584142335 874549654 993469341 56258269 697532576 845150118 865794346 462748919 625675647 695005545 737867053 803399600 823591418 895752620 914917027 954536423 997300376 441832635 742943062 86959888 630539787 66073591 748542976 498231334 894326210 607579922 905622022 930027058 978981113 136578498 500150268 390332741 434097241 953180703 992588012 369232291 426503745 218289484 899514364 486724415 898252066 653661559 718396286 906380102 993175198 794491155 811085817 549804122 807817335 8075164 858577919 907456235 941309851 568552203 661573685 825604298 921504676 377662658 596759985 234907432 577671471 935199948 957895885 888001114 955574413 949792415 994960511 693536713 883660508 487692440 795089781 927625941 999229001 686588575 855804278 836563067 924540575 393479789 831786707 622364051 722091854 796445521 846891462 266975989 901929627 337257512 785467841 865542492 927113542 21903632 168926648 465534389 925868508 468950366 882384759 35559025 486814691 317018438 414720972 847289115 951892791 261046534 905309189 896971225 918756191 635757630 648441746 29174305 906044854 479845480 772680745 513215280 658544705 525169124 871246844 174689240 586088441 219426593 565439929 700039290 768451368 805674802 839145913 762120037 857994460 688567515 698699545 605365723 773084284 725683783 910909631 582676421 879097840 291439125 598763800 883995353 973532537 491361612 594183176 800867834 828060588 18246381 326544091 983340480 997489259 934247028 943427266 880298149 983332744 918553903 920497875 609909353 678058772 169766590 942090906 885494807 890831525 41952976 712987862 503425646 572257326 752863938 831880637 340354769 635425767 931029359 981071658 239640814 602891352 16410869 782432152 433639392 560820936 979182972 983587127 204349950 821833836 270913703 505039306 612750028 686651370 107744870 425323997 591363618 969237773 435019987 695641296 924470369 975573325 191113193 810826365 422895713 946407399 399251861 869107031 294247673 746346677 974184083 976767257 788663151 867233741 862743870 939084241 319329371 721530407 593868554 599269153 354376358 576922688 203496724 363162376 998276636 998767488 716110207 867046882 245835400 770452137 218179046 533594928 325214914 336052093 840969442 851360062 274777338 810330686 244435939 379326972 356936989 699689762 831755539 897637600 656080000 771288630 995983057 997833642 617109443 923322808 731315024 893989968 73969808 571938740 858145930 909700751 811981608 893285811 836947887 869958841 297481870 412895510 788261324 900725774 830638191 979086899 262315704 311793155 68642529 460464226 356954950 426384527 496842048 608171712 993273033 995480491 958781148 993790597 377354145 893308970 396470992 801669486 98391598 513768955 141322260 706461036 240250677 618891894 125759228 992064199 248588464 887446698 495519465 537858355 530488499 596298377 789466238 954099232 264585484 541608356 566282277 844840128 690699676 752065022 779313679 930755329 580629148 702460626 132932461 633836205 347531885 399622282 457273981 699505436 989526150 992433424 386517871 808232086 548492854 673773863 945715300 962484611 13474222 669259577 673226174 949644703 934888235 979543418 760876727 791235325 172109804 639334955 889092978 970135071 920643350 965214002 156759056 176512044 327862542 691906148 779110033 842553464 455731762 893311131 929164547 969046214 564413367 987000673 288190374 574851635 590902745 768551902 513199313 525912251 883513227 988859259 820299583 978848025 780021457 855351932 604417989 975966770 892678521 943716483 4514464 119831162 728112746 998873662 35213057 42152564 132882350 870350352 926972038 966022882 40906727 286688646 493822925 738779395 687629276 927497390 158600470 672689098 594291748 730751537 183418730 757962650 987202737 996987729 588909853 751001874 511994203 568616289 967373791 983056252 73197357 388083685 410316190 570627860 105134721 871802197 818904572 940959451 77721090 944078297 887008999 959086462 812887405 813063445 739757133 766159825 666903519 770041600 925293935 936681005 155165251 821092031 301564764 938228199 77689199 517372649 524056429 526527561 404399101 448500883 636166581 708863714 234598883 474598299 961779041 987046045 388725765 727355719 686186180 979367003 692971467 696036163 553144396 588491576 776358091 935315817 942127841 961831317 439342246 628403456 311634941 579949722 318097500 488004660 277339630 491155044 125425839 433239148 537033371 895135295 583262795 715400911 414925868 797446889 700125320 947384702 52537511 973777591 910497393 935863412 177736350 397277751 6906034 404047600 372449300 788255536 227980399 749862875 611405612 933744800 367716086 880426734 78571383 638254374 396674545 495415729 358348024 650449764 905439337 961554044 165381435 646216730 135000519 155118428 675769175 716397836 125181640 367040878 593709610 712934744 267591307 639445340 667330071 878800029 88812591 951090567 911662634 947130207 72689160 87532936 995962716 998322633 720946090 802279765 331788003 526863495 116649724 525026552 299908408 309546378 583612849 746539609 845547399 930105998 557668016 912996457 930324670 963608519 187079054 599447529 536587407 734779814 938060780 968380984 16582988 851933511 75779788 138022894 795549077 979238710 129372052 791170618 170951315 767659004 107498557 995295914 433023714 557418818 76967142 977759156 716889953 950294488 376723707 753584384 676413 874489305 128377927 792798957 165079604 688732177 998031628 998906665 867018022 956376207 852680811 864107821 804314833 889717064 588702168 753027872 222664129 824853591 375501768 591127106 456609088 638478984 67870609 691059327 843681380 990510471 245464290 339646444 600454573 943414966 784423090 967757145 56546009 440526621 131168708 636763281 527894128 928709388 240535250 331760750 968509573 988916583 830795413 902197641 114568381 149933765 775580800 795556255 11208350 818197056 843514354 863661594 51590984 262847979 36099832 305060048 425770226 631719319 489544159 866597117 786210655 998828588 550072482 842419981 950213901 990363674 876715447 884596007 698906836 864029006 102125725 788857712 814548588 998707434 9892776 776721276 757424339 904381520 373068551 633115290 782299833 808444302 287595509 709600659 683737991 987147325 363369632 985022484 574296907 656896648 264952173 311857674 569889457 914016039 781594126 894488662 722275354 889564751 529431628 999060690 238056111 538253411 452301853 696409910 521711118 680210523 760919058 839042139 320188375 858970856 76921562 710354304 353407243 947506764 556740863 696114999 414889006 947700575 662123032 707947999 264077485 766749941 96761577 341469712 205247996 846715350 723761185 771547066 627724325 668226454 872847439 903478727 999707910 999829964 118088148 541470369 720774353 916234767 800141557 930143706 242469968 525935932 355532059 484803721 114120501 720739392 83955261 880972289 601683761 954459045 112757620 508603420 125692779 545722728 334703801 650981276 566284488 787300010 878312556 966285108 812952773 993582395 806541448 826636404 62019441 184628671 68718783 194234477 376234187 553825230 260662885 722279625 803053957 950700245 2652560 857024418 887894410 980398159 901063 197557643 599227958 872931962 474443139 958221115 951531776 975712254 473658525 937515353 441727898 859010032 67726128 842798712 448012404 952174636 284121799 578020036 462960855 983280497 913632276 939692396 229078591 586313309 866784435 890735104 623221860 684924059 869513831 992806121 841343615 934152597 739574815 939140323 320109418 638387588 820373086 923084790 963411619 979129026 917279771 921394226 835083983 980214329 369229821 609806598 729466010 831410413 996983698 998786828 15962745 432299124 9949303 690047257 953009236 961555620 327713354 821385877 922270418 929526290 874059051 952891460 162815694 894424827 766263255 878828370 153011351 548232781 716585465 951796721 258326615 381773238 963965995 990147937 158105850 467108133 539028573 991554868 939711457 966476424 75721067 97124073 800654684 969132955 995553307 996004827 220039282 651095953 360251639 780626655 296338821 525804682 517006935 997086549 317004092 883703939 829567174 972744696 859794480 884604520 30259946 996621487 21547999 910281052 126974263 204871132 598394615 599202501 868848403 942358538 824205648 912640743 134228412 424440610 302255096 861734901 40412951 256384085 138923813 171473756 20923428 486376646 709913680 963111556 844044236 919866726 77771793 585494685 927868887 935895390 11624363 409745926 854348347 893328836 473049307 606205447 829117503 946912821 45771063 249660349 327832800 819026817 269806980 526505574 473654540 547224855 803765438 854691366 426291984 658167337 750334274 881213779 43262638 759717969 88759652 725526574 197649426 308266470 235663696 795310205 773351004 890189761 444017528 861537640 891161605 928322134 976546357 999074778 537822534 859836013 995056693 996744151 285613380 875162305 657108678 832160147 814351585 908199870 472839444 969151438 209919128 866293690 290971467 705081204 853886944 962872237 906159014 996322623 68277173 123995125 26745335 231890836 878117090 924773659 67121028 439254653 222648020 823667086 622587874 756085456 751918695 800199810 75509742 238748920 253550143 704411986 610884121 732472383 175175556 607274380 210641366 590432631 106453260 295710980 818608176 957658683 581634618 870833696 390282685 565712961 481977755 511353012 694044949 869274065 786365936 955515234 995233386 999884869 129566053 918135594 791215580 863482400 670326022 801788212 453431750 959134385 498676862 946300575 906765216 950133185 978562042 987821865 132080390 924907995 837698445 969860464 450305604 919507854 494000011 947888723 9709731 280561613 697883724 741124917 32636876 342437501 448521680 460444206 893922431 942721310 27860339 958356649 501840481 618521102 997090213 999251239 453572616 787088758 360261568 371408571 183628565 422813065 791454089 957962355 547064367 940149830 775243826 837652366 279147883 649251258 522292197 704393106 464635039 921195043 888686852 976017824 288844534 756240272 302273022 546419425 892765744 999192448 140423309 545857913 838044463 962538697 238514617 406093459 992691383 996825121 626230074 825217815 748268133 963641305 399510298 797540575 443462586 612407664 621641417 863736864 225681272 660469492 843698647 958115306 876121515 934819755 322249862 982710317 207922905 858319478 43655192 176837138 357014260 627474963 507628162 766325240 215293339 426646735 130613922 732011368 373861750 852024423 624590730 639432863 855578939 979224098 56923205 285656124 231112236 348904271 898107083 934081342 242681385 336122313 255463035 658778314 167166997 266439120 321435143 480248332 516316807 936679852 756046551 783080306 664099627 806926100 64251990 64394168 198185399 990376326 615886723 989527524 19825695 561680838 686590206 746907552 193979457 407889505 493048720 973833221 840047158 951451053 903434632 913706837 115839596 629146694 568290886 628503822 831421575 918440371 610376184 713366707 831357102 915479976 684457507 930160941 833084247 996175515 745323007 915926557 220761061 589431261 694342942 985637183 712668437 740425368 740347742 855740402 672683001 799968246 842754170 938223399 719949350 975550794 403396700 848298622 832735961 987154144 685075445 834653621 55742201 897432695 428604145 773321293 365765781 709835078 857057315 890993520 426588546 486694254 394962620 883712869 47379374 833093989 941375977 957060611 274739605 280310618 779945391 835816253 858960458 934596042 563304423 817763283 936368943 948121815 613411491 854812814 988709800 996770228 758959303 834574475 871548485 956020442 552212026 563446946 109766335 729617230 518535750 539847531 191010422 807967751 573540757 604687232 568157124 961758141 852006396 853123452 55842710 644880904 956910955 970459828 189812434 549874093 523980336 741013472 749157804 830345810 316981507 412871259 176954194 779442811 431039565 846336910 557015868 994410452 793889217 953502049 983233679 987473452 111463550 609948532 459759185 983587124 703477878 979558364 709170949 842755678 437164630 695787894 845490826 996461157 472324882 649504502 435177558 960862130 426290526 871853472 843729748 963338923 841762516 885558092 737566860 855917120 81403366 708394827 668065015 871152895 497476905 722195813 219352123 425439002 126550148 680880950 62952712 693401600 459393665 880053622 857151913 970720549 95176045 883351005 798887691 868281423 132107898 485908446 822345399 872239458 320908531 526327877 448928031 712315715 377629606 935820455 598547832 976801218 440540259 478690965 546730880 552718247 161684023 349088527 422570656 507902798 307934538 355572718 231424323 458575376 50896088 896045856 115063990 306923118 663528733 682915746 896363590 964103798 578387706 615218128 576886182 744619169 849763321 933318522 518161770 555794135 533114827 985552300 477797502 947412686 122765211 292798831 554760648 572333589 863275131 904889096 42769819 497727521 594517698 603794188 143112670 864597246 796266317 801547869 295558894 694360216 790484445 879101055 885379700 965635358 299757850 945396638 999524017 999537861 936208709 964751348 439438151 760606385 911538074 980131668 362248714 793339697 522151996 635474088 402989346 564462031 215979102 475156142 405258718 727580679 73644596 703654935 517280346 538561375 191125847 973191015 974201515 976323162 403404467 509267441 929519812 985417751 633900740 946392543 459775931 502093235 721409064 983582770 327051759 674440882 340425290 576662558 964113049 989393007 826925091 877639510 558208926 941687828 534360504 699974326 309265902 471744736 754640677 934171217 777071453 988984338 411766206 463455315 894193092 899867465 489854171 560964169 476088035 710355788 274946394 629191613 511073205 754099924 106945433 998262332 33851087 340351801 871168573 930157555 935579572 952070411 163455982 264284449 584296871 847427769 716006200 779702921 991429550 999603333 503590686 806999765 911672398 991949666 199147217 802005077 614073588 730379002 121923129 308147405 464329812 856045599 905600238 988117005 671506613 887804076 874895988 894222443 584790914 893699520 355222193 992628891 507272371 532663239 141572992 788665640 399167025 981033285 277694980 504844918 672795348 944307170 362142023 751182258 873648572 925930154 182765730 460715153 877211907 923882352 896742100 997602897 48767292 543152919 856063142 936425817 612781456 783653280 813496987 833147842 808138453 843946770 433851353 554424744 325999791 680615917 214610399 967440128 400028752 943674654 191672228 665477780 538791085 979952644 138463831 811954342 329250033 942351224 320062582 857324796 717367713 808172886 12128938 561425828 689478990 974014110 734988022 912046760 910949226 940282116 847388916 896042770 282732288 470713077 80975832 366707897 697519888 825920309 892800912 941908015 436105419 998409707 241643971 895898196 943855112 984993149 749993452 850305208 731741482 995666928 973333023 974690937 586710876 663385103 842046248 887284342 51411613 250009548 61257628 339328872 315140453 808399599 8413090 430587811 14576652 863773553 729516494 791921326 689485517 767051712 599964306 780497986 12612377 980238992 825921757 834984573 635037983 716837097 3626425 495883161 999970549 999990443 644420178 948267733 410375714 949433522 919784365 993858691 814621482 838881640 819340807 856380782 631623160 989318162 838217971 950151042 718967958 789908470 700853818 739910200 969397381 975835828 918821173 976125654 54191174 515862287 850000403 916489059 63369962 373312816 618516495 890200128 660946658 753188701 97541127 486817914 357307981 655029405 718628781 787886810 149360226 751900096 532688718 795526346 152158344 331021643 573490861 754484080 930120704 986481066 192204141 645817881 104444944 356366718 900065145 998787047 874336187 957602526 995082837 998928303 958244141 987161057 163053731 818150364 538988933 559490788 872154341 974078188 573076869 847437633 845149772 920133131 446356687 646577493 383767048 758741864 310691608 995638047 358617241 808132566 10510941 377569363 918662413 923559430 914883929 986323176 756847379 973956536 787882838 990393306 454056228 522385942 79192604 792747445 357053423 408103233 552381191 898022263 671519798 920908894 297981302 750160276 985457505 999256899 679477818 981513611 588727303 915333753 986303907 996460940 363560840 568034417 481556073 762329716 800633203 972138634 287069659 438492404 565699793 575330938 8914955 266375751 124838041 727442112 434035639 436607635 858412945 899281184 287300801 805961355 470887639 731270408 547132902 815803543 134706137 517867094 888563288 902970464 893250790 952120971 101382120 828846594 58619422 455669138 446525022 967486558 853349383 914773935 34592981 798316639 4119512 88935149 289364538 688792414 904037266 913550194 550389800 666714975 456736761 860491286 625780174 858635211 69716723 351648820 212926792 982563079 701520690 924037706 883445071 937197870 269952861 980768469 745436606 865996976 102526525 658317458 578650355 788656523 817988667 873731267 666533632 770752972 861506547 995708145 552081575 924987511 402894711 894173674 743252837 917701926 971042698 994328146 264065246 836541888 283310184 877427921 686216589 775022592 437740442 788001839 141662356 895639805 145402693 905297222 284181778 388901572 513902785 777818460 808924434 870673480 876640669 996074781 155615848 766007379 426771585 809666488 108650010 159596847 978162662 979524946 501385716 790610168 213885107 438396505 562832860 900938881 772190999 843706175 735615925 924020630 551173872 865327978 141822216 566339463 843215100 849323152 847989350 886286556 749239502 968952555 301389815 675627228 416075851 417042803 608291832 758160577 631713556 739386770 863645024 991122603 888834064 986943994 164598038 765809940 512533017 832297686 996512797 999157682 190435450 609428501 56853475 278548401 697570351 705211071 694151441 701658622 724819017 872853575 99675031 147197239 473777898 746467919 724692766 842282273 933835932 997109206 409673928 509654643 455510448 853353880 29463224 853603835 158048475 543194631 807056799 831824322 154868058 284872727 904597592 915624198 343183825 659826970 998974449 999244582 402016534 486944459 22369713 280524369 344210812 972962805 113210115 619100389 863899534 997624868 755689301 925378255 638724414 913130844 47543476 300606377 514069463 558189460 881240095 903334291 593967336 685874802 688163146 751495248 726697080 818106238 577771463 628957862 605250578 943902692 892526927 902180003 104592497 597659215 367872222 868095436 921468435 987037245 479209604 927006589 387343016 964798303 323157604 687035691 150762371 306372493 676621794 891671531 414667011 936005789 912794253 994295945 463781203 900093450 643323627 967852514 325944788 603854956 967152179 985149726 152518249 955707850 263219982 507023752 53287644 815696341 92545982 534310424 720005259 815493085 559680770 651490126 25636375 337518556 90388038 840207850 939459474 962628397 834164322 871485338 146467381 338683082 121424584 955614685 963216836 987157661 325173625 886763272 427769631 567697991 308551578 795669863 458004057 651181752 146246639 218046231 108628009 494904038 865753991 936029369 974361458 989341780 342149280 528902899 983513286 990447997 156250200 309871500 725203065 897783280 963802414 975896196 293752247 863846874 280232118 624701247 155694005 515500875 56603198 639179436 75569468 945854985 290967224 530857554 76650764 937413082 78312893 938240137 635831942 969712697 847956191 867426526 895484218 972242177 406305462 469211008 71238797 777423525 740326772 841600723 490808536 815451937 365500588 799535904 249149653 325441297 910670863 929176545 483954882 726600300 562584954 735948974 705491997 926717974 108887992 957770347 450274461 799508257 776181826 919625642 697115699 996618541 208413261 724284269 295201481 415275800 44790570 580206020 15380844 655186959 795907050 884814274 536006235 873417671 251395984 721924715 576158668 699694422 42895259 546125230 407809983 714860884 68828115 861071175 854420999 998438695 387237491 484506691 215573718 775732058 753261889 876868134 47340034 701368654 14278607 16775379 296486293 565184691 890179320 935921248 614802894 868141768 547173013 880440171 389721565 618853618 169536228 321515343 27251931 419137958 500325620 898982458 542164270 672751197 534961359 629652791 187133756 830861419 142011565 687513570 528353535 552540057 403264029 985658429 332884550 365534986 868169720 967938925 191156970 395653533 487689336 718193561 65590133 787037712 255121800 319695158 700896742 995918668 255292078 800008852 436072593 839273840 87196436 320332873 757406014 814186778 563120975 992802022 642726832 919393605 374589212 737849441 327284400 929639987 88488710 971424653 895414138 959958070 35832844 932742940 358483508 780977911 619455829 644944356 16213134 421201202 623593143 626377165 819748717 879457866 72309256 668593906 766250442 916409031 514766431 827433868 828661569 829382708 985182913 993807642 700344229 809650906 69939483 302413485 424495619 793003817 131288399 800354105 760536077 974759580 833288935 877226562 10392200 284547462 648053665 988894141 23897313 784048094 787188960 980148638 117658300 857891341 662192710 878557016 957650309 957762057 266490981 952156829 659884259 878464009 544796233 553479746 655526711 865011564 507611341 938216785 737185161 782354939 122047467 943744509 70915604 163685709 906106315 917005606 376258224 576500360 435142420 603924454 475118461 574051963 818011798 874553905 138425021 348697074 694535335 759488992 544115377 829704019 796225339 942685824 834434200 860639814 277052307 916278006 825216299 989924020 425867637 939207753 796416098 999587058 570425260 635143856 281103247 425601154 65222722 531411887 120634188 351238125 621278723 811571552 77015052 951788314 346212935 737008048 126836909 260126948 690152397 780395627 202998665 264076428 586313934 890983517 760888486 867449690 582326088 905384308 797422883 874318304 445855215 694199439 107116279 964155367 618833944 753092455 87607677 193101237 249731405 362238857 877272649 928748433 639911328 676546250 207880779 735439806 376298842 806156838 34360616 713137188 762215288 922233378 560260375 878279063 405304170 970071444 84069702 158590496 997448383 997860100 930265765 999839499 608220035 758764033 380827664 420119625 823801166 880976260 812965680 943902778 95632495 478555791 618973032 912310172 863024087 909490563 49904013 702590178 45450842 784885082 738511476 828459717 599296600 663127049 824790849 877126289 786474893 960575964 65206337 639588818 5172414 59631004 731086629 882077209 921097816 980279650 6930813 628954636 132602304 657902392 852962924 923872225 73888068 124145061 936616298 999675902 696572980 782789783 608727391 884751960 44346267 454449239 702103923 827420289 129341303 206500568 856258024 892946328 508328423 515615859 524916023 536603505 907380603 958799414 542694777 687181742 623777137 755999230 815223856 890261268 792428246 898966224 938697587 977508481 538362236 624359334 421952582 548277082 505311296 933099067 133796224 886240751 567446193 696312323 119950103 355892355 959496350 975599482 188097082 687771586 311098109 961719105 115615963 294527345 57182061 969367289 127952560 841630494 146913165 518309001 867486493 919190935 357506499 951862666 252914001 831465281 483564017 803509029 781107282 849900218 336980014 343255416 515931788 953752104 948113459 985007911 262661174 886096753 961273583 998585489 499998252 627784160 251073756 678832942 291439246 436261306 604747038 605826176 180979292 545769848 506032307 645007758 488704129 569125439 820830647 904334865 923964287 955822431 476333573 631374169 97155672 262185817 61590230 507860513 772497148 852182202 252637655 607234133 732661184 814056228 61480471 288293050 654260123 862598654 375137288 787315734 294606506 302574526 879022732 997017264 856720051 909972938 128452532 504989016 185486728 509398388 672272963 782588103 622488425 770279987 178887464 687376462 337530562 561749171 317034504 843622489 413324583 888642811 595374095 690279251 621560341 798513541 508205964 853568726 164158232 371392014 974164871 985079480 622472979 652515329 682132000 843193039 543843155 603176303 101774185 226849310 146690390 557457022 844858416 862326836 863811112 943856991 601138716 705804976 692463509 820779573 427816669 801081385 78635013 954019110 231440758 710065375 202396578 470936734 526463381 847081832 815908817 848701913 339020068 922770979 748830872 847491737 370772098 674303530 778780875 998656666 975343302 977854971 412967213 800723713 984551977 996769912 153969244 462392620 265999382 391023474 764325284 820821590 280692144 895715861 263358763 874905911 657898395 949011809 404107853 847741450 163731417 641822155 602653845 719533590 538326290 995906495 979321049 981619273 813492907 871414434 422483289 701696479 703310540 934746537 713905106 786183718 204846555 520650849 237355490 535427732 68262378 495507725 784365141 858966564 918018364 938118534 669285107 732593265 26168577 388287357 412874652 959915575 251275690 697863159 249992764 357273190 651364393 681747776 292735132 301784197 200153158 879218362 987555800 990838597 121574267 670045290 746067438 800916224 482938567 783630577 386353901 917870222 256972053 487824805 663030680 827398339 710332657 842440326 935217077 945533011 675882168 935956218 997100711 998232472 207273824 339179424 31745877 38403520 671945161 963502533 740590032 923201122 952747176 975107863 525712231 925844462 475079376 945391517 40833300 836254141 707255618 862685202 153580222 847324363 171096315 695538269 989152719 994564248 119068008 259778361 296325400 673333943 350100517 977932108 657621914 928188208 520284834 668216988 853339600 949778396 863340906 905087692 927691828 981903944 957601830 994661549 819163906 842818197 725861072 948356745 662333953 921570686 960186611 994338787 717380408 886720391 101676889 365152237 780238661 879932540 359463421 381914076 597694291 652703186 370840159 523387074 511881681 798530763 547394670 576379857 347920462 722922760 366469682 828898031 827723895 991040354 622565174 626887212 743960394 827373106 586003870 956240616 427459461 729290065 206506016 561882058 464012980 517711018 117861219 907256948 641827708 743561861 736395056 824473086 357427478 674468107 930208990 982119886 444446610 654806605 53470677 995244375 961912460 970910608 604907327 698573560 14455421 738512807 496786107 866417213 152088186 170865978 19841734 629670588 775308944 792537968 527274348 703905417 156915365 577915167 8349965 602618918 288050289 941110646 716056276 813346074 461280575 601927720 422478944 486749849 813841483 995091619 645656928 970557922 219617288 812138698 992734141 992814631 85768116 451763029 136542851 334443493 442078996 524105339 91265966 765818618 533325631 744759239 949779808 998939486 863690210 993467560 381777469 681952968 144074761 462002255 45646612 466894852 205080201 326326078 825997480 843542733 214609179 327208357 481699635 850076872 476362366 585269206 296192311 998087255 491941301 624728990 405585267 515237944 853839223 932979378 634609610 860124991 506871129 709167476 880669865 921589254 540345427 659455110 257273222 366094307 433371243 512773904 50667507 828073946 307021829 587487497 180846413 808100272 133376908 438562338 326905318 949955662 756743587 812823653 932943263 992536931 192454374 469946865 597368957 761649863 666137261 832816582 472324151 895887648 377249922 991183287 868653038 922515331 892843484 929940649 70789669 982403303 397663129 497393371 99856927 761202937 931917385 990816475 407194399 771792720 155334006 788656565 296197616 762142564 474473628 700701416 958701292 969232020 759741546 823779580 465839414 508926260 572471745 955688285 804916124 934456365 702309376 789443746 776640638 792291793 615942896 959230665 248039397 510682947 364667405 509263914 997151594 999016262 430663064 900476896 975374158 987646428 900868868 912488285 859371200 979270214 602761957 976860788 663243488 892157688 140494811 825692992 332743753 593354019 587682529 771811364 304500434 391382603 762260362 917825910 150671556 619862411 331437828 667716169 425071074 427207427 964788776 980545628 160371590 580078845 702094160 782049428 954578574 971304380 796877754 968943844 509193863 559031682 294711757 705067693 142150026 365553208 788737106 880792471 386232595 839144250 982420059 999373199 999209775 999611718 583586916 706197654 188130837 336609959 308132910 786656967 790584104 955581803 499002413 745161701 22575722 668636887 792201232 992885099 485500381 971478377 705496872 878662994 87734444 153752835 763110325 841915917 37608918 651415840 139600440 169300564 723785737 897426247 370684230 987530459 272422221 328461600 418052317 611110244 58261501 258243325 801201508 870830999 359152815 706396146 977380024 991836620 448706935 716325331 947970868 972007975 600413941 952478497 400870825 508316417 711071 772475618 878501363 888760211 759270904 831165943 664079362 891905158 111519177 439008231 413390638 584319661 329449851 864524704 65797432 444974966 909112426 984286974 232558083 333646667 428939100 743892039 513506405 696032679 666275602 957373682 162441998 975094968 647607763 944351121 908828955 987769639 288457011 919477740 77493314 959994350 898143144 947659036 960782022 985592691 903361269 964709068 416796327 834912995 217870133 793702119 100106192 855176392 266136539 409123984 479636463 715698989 247917514 871723955 993960685 994332594 838171808 947360044 467192874 548556580 25690991 891655857 885313012 989371237 13405377 835217801 645333144 696476777 609569160 685967626 619107015 845888734 859938621 894776344 581511708 774090716 279887832 624670761 553687612 757693090 417709069 471212420 533308554 581671034 335737987 887072981 310766965 463796316 844094659 939675234 205685841 914629593 715221828 983695520 597914255 963942899 580128427 655730250 306850144 363000760 60498373 761669613 411449774 978863332 195988396 765789311 968124637 995005244 969184649 992105677 454527378 480555141 588834285 783691269 268486036 272074648 201837005 270891918 418297303 760117498 620444032 743518569 604577819 841173337 442182135 664746219 67892081 845864534 305398435 739791431 763963969 839682481 603611256 659381467 995603284 995729042 510826821 846960046 391673266 700372717 775219549 914207979 209086056 675009933 822319583 947838591 831350825 918794328 316506418 844511526 159953020 371632985 475166047 636134418 152861156 169726712 540514057 740288523 469040544 899736090 144671862 913487891 826544060 884261066 176459257 394042125 607585781 884825837 246185495 607463652 469378908 768926563 342831007 426399983 71361143 943409318 433755894 603811987 712014530 886021895 854207719 947052764 82417430 227022078 539337902 818194740 386040081 765229160 995677463 996702914 482424535 715773070 234415899 782257404 775423142 902637260 476493590 490184765 693184940 882565377 290903315 360375835 208562304 591498062 813366870 819813200 190160117 872948286 786021774 905641667 213827479 225952838 428490087 785117198 47301754 563739616 396547800 500999954 627075115 831595461 590630274 727490095 401709292 872263504 445821629 747530598 720600249 820244998 761454273 782162489 454017260 946568004 191071852 425118115 19581029 519683575 367509813 535272381 140410988 582329424 390202121 681255284 494151496 651723574 723087962 977021166 529445349 975122377 851524187 975036139 845296861 887653160 57134034 769312565 689263921 746877309 441670502 919040732 46969838 420527041 409014854 691430919 59930269 638855327 702896371 925376704 881891680 919043925 951276801 987806744 444032732 540927475 705639817 893167273 178759974 795363174 41199988 67351901 71205194 958443866 873105930 944734981 583225466 664137548 778718148 824014628 129728665 980255719 71477627 725226659 841743719 936505512 567667616 597862360 654647743 823869258 370316872 625623771 994064729 995518011 659073926 878198749 304768773 361412182 730852021 928498395 102228565 635927503 447349668 843346147 39430033 405869122 869339430 976323607 128102969 984631978 31275009 238669238 735328878 754450110 726747102 948225671 310115823 774408456 704855766 906911465 489025423 835428445 605166914 783936782 160089384 720732543 102916851 602530225 956669680 965164910 728100429 898627020 660532000 699988446 147657392 800715480 767530482 822248475 955526688 997016629 114520670 339859221 52008837 878076587 647258769 874713337 404383723 789814164 210125230 260343983 76225958 549676202 343467810 908053967 98201999 327282827 507987686 658355204 831076591 964317092 769238933 886640937 42070209 793097322 638844573 912570547 681552051 793086938 179970951 244521674 371098658 425048044 433934565 763153865 85501770 187821921 845038490 936359559 482465474 530594197 410375877 802795378 958359660 973357370 131708895 290472439 412769380 648716857 573546323 953255772 450046410 732434079 671004965 723633977 947926270 948588756 424359964 839142577 604149841 854557349 631750356 728408508 656474775 662081777 765081039 873968449 23715870 560881874 858298329 903307606 530438673 662348061 686551081 981639112 529218716 940495791 806255729 850250434 172627715 450671514 183348836 379092433 24221922 112772251 449683366 489922422 571023397 717159749 640579746 921880688 130262727 569670597 937822628 972163575 319524356 974097274 647054774 963640845 565054523 932949912 431385870 937878576 735812556 756444712 948244083 979810329 303805715 534510980 601687615 752005987 424987579 434771180 520898158 981221387 712071155 902325735 95571009 739994397 49160384 212629436 274826485 355678265 925007805 978108719 31115777 734896939 203108325 864509005 76083606 102515175 593750538 692120008 397335814 846642337 909739547 921486509 43403035 887077057 73317365 863749097 865524298 900395287 133474247 892664677 239108898 519804330 402993200 640710729 258036269 965558782 313690927 348742659 847689897 967245245 329277978 582855126 119314123 837494969 657558668 797749320 352379289 570128816 926354536 995174131 367185002 480684308 771400216 805271187 662669463 665909667 766269583 772017145 893225867 900639487 242686883 521582032 214940637 564544276 542829714 728204547 165245202 859121066 965773175 977480932 470572425 943309127 501077884 839670029 225163000 409995154 562986275 675447026 416097256 980876741 857903013 862841493 473636072 495154241 269785123 387516665 150352405 585724868 622336788 694709900 592834868 872466632 692360515 877838104 304232666 562952945 929652571 931921905 190564979 962184934 42593757 260361669 87809829 957819303 212493129 385571524 163506117 392002981 383519756 579118111 991446340 996447921 230462924 875229638 772212450 918224074 669599257 985496112 26954005 43485261 78145834 686571145 780925303 819301260 884865549 894145108 363032207 992564952 839714112 942287566 849580631 964126435 248323146 746168583 27716829 782593795 986267291 994113990 710606279 710961175 143011196 249539742 567996387 994501231 283786338 838083686 893062061 931327378 907686683 922853298 704819974 893153817 820057999 860407959 322959568 493125641 345526921 914855160 237590511 819544544 882740466 995993380 564124152 590903380 929222932 988141417 52205663 461649897 401125872 827725983 205152138 701346684 406603308 766728700 969785019 998267911 524122443 655830338 16583818 774930121 175936906 420081602 327617622 890080510 580514778 984898439 520145700 659332342 962145367 963842736 533523234 728308174 507162944 768511214 961458745 972517240 467196135 467411251 614296698 898120301 185070209 886853492 989501377 992250147 537853474 689700197 347485950 360877381 415968293 429810875 774687522 932056177 354712296 425098395 680413086 833959827 648911305 991963114 66916984 415623591 846369098 954454375 372749846 640958895 966285216 998913607 567551918 743210435 455789659 916329114 536794996 720476284 483516512 741333591 194882760 222647299 747233650 835500092 841093833 936442062 89082152 695392017 483579944 638600798 951697977 968855107 241322339 636442153 981167024 999991072 655639383 989445801 355458697 368193968 433088392 618901722 418150611 784475096 542114247 547217820 800879770 881565005 588812487 681141980 971607907 972911218 185979864 510873417 800392534 847407704 329993042 576610325 722996310 795417560 593072887 943241311 528127766 639226856 104740677 870801615 74198462 311151353 214690355 323998246 162238047 645560631 748517169 812236651 396582343 453148257 839574266 958156100 582222899 994311520 962694498 999046778 890925072 939154707 191113733 679966708 96058109 781815519 687589660 904793489 142706069 711191741 47471925 790406647 47581749 804759740 764764316 843515869 402025012 682703030 310002247 598281157 383720617 813496703 120672629 935564151 82858263 483927143 836687949 893998608 28981443 151730908 794888996 818880768 633231534 805448496 945327557 976663355 470050470 482050936 677793696 774211095 585977502 971767145 178304338 765582404 684520015 880333010 86522983 429342960 959983891 993839531 255391047 430404515 278447195 706129365 790049452 805796118 648847337 823041395 663825397 736571292 179902220 554376994 599484684 683052716 834560393 875326634 228077115 568880720 579810728 970043483 440270870 845324975 309698990 814631614 909035711 981214210 796162022 983755125 993139165 997521507 358414647 913943358 336237147 379502058 510000730 517011074 43843631 724613370 587487899 757546754 364253466 582266176 765249169 867334406 313849899 942940879 279173660 592341681 183662172 615254301 915404831 915800566 772725918 991515584 627148927 902344295 923985467 981078114 545775878 865308303 23004179 690158520 716387112 908476166 620720902 976898359 143712709 259730775 969411253 970567268 863129217 993986626 973838403 995745494 530343336 594124308 108433885 372364563 892578582 940575186 196210153 487402442 697506517 893060906 677667126 919998589 772035029 873263006 232031325 924873515 800068502 880058389 635575152 982277394 45243289 230654649 350303130 493630725 698849910 755687727 808447840 913642953 224744222 510950465 688034407 782669043 835564427 933858831 156922876 826600789 874117452 965295160 19753609 335746899 955881025 966200695 921624786 972050808 225343017 838705208 911224495 949037557 248685536 262304706 616926113 645225191 935938749 955274940 504021202 685013355 569445442 793695110 156436485 931950758 463771506 858501487 7194788 288786982 553946225 851220140 678584546 833634451 529475087 956969001 726452377 914932636 992399897 996133545 387329082 483134321 784859984 881000141 299189635 794315458 381450473 691318617 779206212 969818038 62663128 993458407 80890440 799644693 203853129 955936685 28028494 506179317 499095058 800357298 917933056 953894456 74526492 596482322 228337792 531943250 341966656 631808925 65567764 498460503 619522534 721741473 850141442 855852767 287049809 614863780 460885084 923968288 165001454 367634911 941483369 945437729 349726630 692559029 342954892 520181033 630885345 940599530 599594297 660630388 509995924 537017260 723301380 957789547 293724906 463086094 317424403 733781982 57561208 514273790 735612356 897994479 496005809 526940957 550532412 910768673 452665808 897166879 392418481 675261305 701313022 838074013 917562343 995028460 864705843 915975666 477782792 823821617 195714784 989706033 292453904 690641257 627628698 728128986 294140379 423463104 360069708 900596818 13193220 264912493 473633891 820712230 222127422 781515164 899561929 935466359 61452319 631370588 490910414 951361345 545843693 557129330 796041074 883726020 61552814 359687825 578256644 798077723 737828433 897782075 940919773 996410806 563744507 749081105 672709164 683052301 34246188 617807963 370929167 408959627 189937580 476019240 876897299 975659728 364895653 649113971 129006614 172013626 4936789 578997649 261514886 515271481 533093537 770606454 427825535 656443123 649301950 835486527 934429331 964334067 861399666 966754605 63991800 303886897 237571454 344069661 296598362 499551115 787550922 859409752 607944997 758953095 29053095 290173662 995168883 999603005 586375973 757809823 497022213 958526192 978943082 980568978 707448476 719020308 693590802 787963005 14992414 34986128 644839380 879894603 920587250 990471947 972124954 981213446 932821806 991218322 767898539 769761864 36713774 358788277 623592589 864175819 866383704 976827921 835489619 855475788 105458759 515719259 17550815 620934706 662560602 784412536 761328071 835277851 719881916 987286676 203556676 355862142 467080564 650866121 737867858 991483661 129531597 208188236 118511493 700813836 283268244 339694210 970354316 987418938 986859722 995634151 485524046 487134039 933441212 950481097 79160651 239044373 162989587 535883935 375055029 973882485 999826604 999832983 576119504 598894119 602908529 949526619 178761267 974890433 101684047 254253180 599181117 852126609 362521274 372937206 153424019 193433717 190847572 385921595 994601426 997578264 173073130 598709840 78146396 727243453 11347423 645844437 814997116 947390804 21414440 567801022 922745973 972967363 359525284 382195068 580661382 813798071 518866471 986962888 169783979 493123679 957746808 975263507 5593127 897704618 857224246 934450776 749391831 877927355 204113470 841732733 343339621 868240199 41670542 376551462 448555399 497550158 409408621 797753134 620186616 722617986 931408098 974567620 471713984 558042243 701449434 754696313 515912731 982423285 635017995 780807101 939101524 974814370 52069660 427497694 578224802 939514217 233879040 467970441 572268502 905745535 379791516 789652550 891183409 912127904 804196570 886290902 877704964 880985689 171809300 552809611 726023879 754628139 247336732 253872063 978006147 993026772 836671985 878999519 331814373 416008902 651942397 696692174 64028516 830265125 460882535 576838547 542810013 924333579 481066395 701720328 312980775 501135920 383579162 831205337 967336697 997063502 356492228 494529203 100473647 285685592 204846812 312653744 247149532 489246410 321577463 889038615 715459771 831485453 463875705 776924729 480136426 853019301 395511825 591052028 80121543 240967131 836966664 966877503 566897799 976013369 579369453 979484922 994097322 994213465 373029311 533429038 528332499 539671446 739988091 955283597 749564197 900687979 906777004 993494978 354806202 862562939 137569235 796593005 152558380 171351030 373427038 943318637 110062369 413631631 980033294 989193708 631398110 722980057 166811320 767751099 681949260 711099012 66585513 474271293 859905010 943711818 110258448 842009162 241212850 976072320 694829814 763758708 522610910 657499506 260473879 343761428 559940133 789830776 672116975 909758380 120383499 687646990 696633285 860990168 118441928 154573666 223053005 350459988 731024912 909845360 546899758 647875866 481731581 752742804 346585014 425130089 670589608 863538175 172702024 329622402 862762553 895483714 145417227 718865945 628467468 895020581 40048657 637974770 218088402 367110833 556503104 668688044 785049767 855830709 524409427 743681673 696824454 996779300 808600947 864455237 869416420 945679444 567953113 765765984 160935141 308277822 961922772 962339767 309582745 637592842 902420398 971825376 166469779 615524107 326973845 579942214 399665427 856938194 96287212 978517861 104093656 697388956 832163384 867363034 754696573 964622351 341123935 552675808 114815750 496535577 704957398 957626496 850133699 913823624 774718047 944075338 931835820 967666993 275415272 706860538 121428153 545645487 217120265 245472601 429329371 889474042 510071260 981868827 265280367 742543955 987862096 994157737 971332232 974855495 813310696 881557584 720281727 816340858 200931086 332210945 825787228 928368117 52816239 576658511 456520331 854466194 98571992 115636933 670809759 711322213 731384964 987925201 711181456 945145866 609872923 663375510 669370517 687091684 562824066 992333843 547226407 597725654 185220666 620655850 304247831 958602242 353110049 607524498 798423325 909507945 890842741 979696190 398766122 803940950 442743150 960660974 606530065 675588929 498943772 829251581 795835028 865414404 66038468 238471019 377486847 785134430 9419294 541525981 608429508 728213634 733842255 806197172 996220235 996369564 925728598 998487486 435332854 705241314 802754216 855312899 759947628 938454492 339829444 355034391 960329123 994823612 257822598 448564754 178479641 216464616 430505460 582840902 319767815 733302738 360422800 615600086 168957547 745957403 250599447 531985941 835869576 895855263 473704196 987458839 674371630 925274766 944538408 952203467 520063193 686033098 588613030 942661705 860091817 997630355 459183782 982863704 53943288 358085846 318466562 427160710 170909255 878182533 290963474 652652574 7863825 617580929 547947540 644969121 368850941 402661699 935924058 973074878 6292968 163296399 685101249 881943893 211108914 499431567 150592677 514313961 318590152 997735151 448166235 545094128 534013692 694366177 907685960 923724616 597646571 886472949 857218314 976012087 768541235 809167887 288092158 546283251 475210747 841147603 916717031 929362492 639505180 897114841 578114486 865040965 582209905 820764727 917305278 956749672 904275366 990057723 97993021 150600898 799711931 863102933 809929069 809955115 80726298 758825995 929264410 953442026 441928018 888979088 626500768 758646312 698029109 923584731 407100070 954789882 54728794 235378833 535946855 932208573 403493707 987014019 664229777 688904708 439604306 443185966 125820455 819531197 368497920 886050619 238464740 743169151 854697448 884043878 656451626 876916284 342674580 430752296 413518138 987071263 406817174 770318431 937721638 960914094 76972979 795281497 274845740 710735846 42551598 285844131 823899920 993329597 60238824 423637365 645923625 895718138 449422508 910275643 638567704 932444778 274569849 628640622 868855136 894132658 721438136 930188564 658137198 721745587 686636949 987393088 561485908 633056038 105886736 187522624 686819672 806518435 751211231 758462812 724881970 748789562 367334820 901727624 997938987 998282979 393514303 934344727 90077900 866578231 335907695 922053097 559557327 794091590 770869870 857913282 886373368 946772421 302276502 832950682 670947803 876068716 484093390 736928396 323279393 426819578 653468636 952561171 416186307 526490151 136312609 564269719 40661851 858110451 184873639 796321542 867931881 972464656 651375515 980551413 674399081 684815563 106411523 991709773 176882403 990239626 728700477 903026141 103309637 518849277 870667085 965729281 898936448 991511923 238666026 581522005 454541114 844344081 724554240 732336256 826197945 960136826 36993422 109486394 891129293 981163234 587584638 892012833 629340606 840691397 611558663 663157954 545486186 740698157 396900964 559941078 360509975 683758687 970791792 998184027 190424654 532510906 790726311 888655856 354766563 906207970 587164637 636438667 74085353 731267550 995325439 995880839 498581853 653483225 178979211 357333186 960162176 987539545 894331049 952923215 471002079 609929009 860402312 922417660 905952411 936013893 878394270 936092952 695879680 861994672 101817763 606692316 268356229 859277186 71543191 976045300 357625548 763579713 647906912 849753802 373179359 978117507 923679034 952202490 828764418 974712608 81136563 172864107 220530975 474564174 872362943 941119901 660368640 953305645 208696956 215899167 939108856 995656457 53058297 67868128 150248382 688250587 555252670 803701911 106853177 199015082 95196558 143841766 249650970 560645325 619049358 904716361 50863838 573269220 78242437 928747325 493378855 582595536 303981873 627809068 724763962 757653254 573215251 950171836 8967454 949287745 413063466 426795854 878242581 885782245 821153057 845416251 786699639 890295127 315831038 417944706 734312037 826629892 533487748 709358009 7861501 387912458 167836762 170615287 693105264 969780296 799079790 861928822 934632532 983140073 881461930 942963551 674888185 727606749 816685021 890318860 551401988 832151034 43324062 717351624 630622702 795500455 993545735 998488597 658252771 669251421 63155567 799718136 977589393 980700768 200309746 622431470 667624724 890242145 646844889 767391408 332825655 449659778 392705514 451033261 543945285 848145964 617772291 638686358 910676117 928270740 790810875 919352876 467208666 545586064 905360327 955755892 520511693 806969140 29710053 398393490 761626428 865636909 63556129 797147119 617086451 979915488 913878008 952191424 937981665 978984731 502977896 728103242 141456999 314216577 233603515 923640155 426700376 590890734 958363850 993853216 563008701 636727812 512883740 684021319 71867250 482495825 239045792 664600888 647793447 845223583 102754383 611966770 43335549 153537883 967822932 977228773 871627316 944095793 829874539 943950288 24985879 702224147 299125945 701396442 49798477 756368513 927062727 979994107 846455466 944555704 388036165 890499306 696122729 729483441 956609623 966792542 657360373 954057016 922516608 984001460 376540123 986084785 843318328 849797468 876867924 952195605 992938033 993353543 930606664 953996654 936482933 971116882 210467673 626621591 816921259 891384273 436128140 550169034 710909811 990788963 218062574 317189689 136917032 765657907 362510868 775575046 190231241 386430354 434325363 493109641 268008732 671059033 541777181 806877776 548897526 899564341 591582014 941334544 630465777 764909002 311566557 882810103 352460008 936056125 474848171 858898780 644517388 748823485 712160056 897336546 153760832 319815615 3704616 329558795 369760890 640428032 121368533 431563033 47442095 579596395 642939674 827624293 167711600 776411790 304245250 402902498 58983736 931055367 739536459 794268063 650544173 822269871 7870544 826437516 17795942 338151374 850949531 981919114 113048189 646433269 312230805 754463212 631885330 920383824 9049630 273781217 872593376 967160103 759723403 886646485 564074795 940144745 114983140 687187046 451300697 663256936 581879102 829498584 968305655 978469228 330299864 703133884 775364402 802116316 733767879 748093270 565407892 809876330 764592279 920884408 511838648 773858592 403772811 774897949 699278628 837883919 502450922 806085058 836588083 908451720 112415890 176653474 479079503 939096236 393427085 923837436 729758391 855908224 909542811 937963428 890627555 919939281 886840501 979219606 972345072 976769143 925246785 936057720 16717185 157701939 782747282 910303980 269101217 775269415 364352460 380194311 182980353 215121487 724438934 772999445 373332094 854706410 264509425 952518694 776396069 944564613 355728291 588679245 595233882 717906107 353152807 847846459 971318977 971946491 251704866 859293553 645718061 884787825 861216221 964917158 105340595 375390041 952970805 968725721 445558305 474573592 94221347 862866435 234159761 794294312 219582567 477887334 656118855 794529379 637347075 922386033 576303384 626241527 936810435 985815357 695234838 999319688 738499153 756696028 677850581 926390190 128617066 456523326 603739336 940662672 404547051 749206479 964693160 982180862 885342322 944480446 936213557 952781717 984737945 989220921 528436562 831564925 67048695 266927688 338614809 344380890 454713162 878548504 18177633 115999422 715035437 805230588 829072481 924383939 548123042 797678931 899454751 958943559 618144911 799760894 641505872 714194190 875494620 948508789 409281415 504290288 635042966 664144791 940887444 991031749 774396067 981562710 521712339 561273416 227411656 943042860 849872085 893675116 218415561 729262229 565799668 719034310 875190562 937540811 413688249 620175001 676896939 754542406 63539668 832912388 123029022 394226346 784540563 892922176 205410054 710588659 886395608 986013099 770930652 950131646 107273908 672489234 134099140 637140945 273664280 378358807 500493546 523714607 368571249 949018394 312964896 355758395 438683204 828367801 418094680 492642086 822619702 827027643 401917816 727022547 573739940 893759670 588125170 721872764 1026955 266490846 748449637 918193604 488661965 839429069 351550326 575336404 797467446 816040410 286915907 660082727 792374679 930174404 377470548 813134519 160224404 665719939 136333753 865357635 39300898 255000626 150231603 450333833 743131143 984509603 170006095 312075916 141472674 433383616 674718588 981391659 926329662 947151877 717991550 893565813 735833819 760394955 422113188 651334093 112975321 220811468 202291970 262004364 11357069 800317931 155401274 479373081 755239217 847142611 878370743 916218631 772648669 900435764 115968161 789568399 626387322 932087917 498970139 593892023 267431010 579703191 672165874 835290190 273738002 922690877 103849452 845496164 920333704 939912237 206780217 421373618 335189901 586080476 57363315 878438249 267290997 672487069 734362343 933139575 115423759 160659001 364268775 754552635 278073219 884536370 746368690 992949926 287991505 734766623 20082414 747582241 626390606 669187814 175709694 868351254 214594741 598742045 754764812 801610820 781829019 928778665 919223900 985948267 616310916 686220569 957582278 996593741 419240137 899372008 124086056 450662499 100402548 494894714 926618373 987331678 413621503 881675161 994200654 998824584 706575300 959883334 950986859 970094404 965208725 985846538 701997794 852594833 610122687 714599732 230124576 659962876 808647548 970983867 647775406 848801937 473916228 758777778 849296458 987520309 391302875 607141566 36138445 523552092 530010032 659357256 714926199 982351131 649112621 701035851 405970068 972911287 145641330 461552634 294972340 789749630 23942464 211660944 969784193 974563850 734320771 961466458 396665006 435215442 421031706 645796601 304907218 984525843 720995877 987881542 666388312 752139918 607873218 922269647 56714163 472007205 142265908 413528411 738331740 921181841 719875496 877517061 722887655 857219615 604331686 907145197 814847869 856344869 619142558 690480454 169395277 798966648 218030134 537425851 626294646 756338697 937552452 975889076 259253177 305419894 641341238 755167049 458074224 705779163 530931304 802102829 150108279 159025990 512040776 965823109 676810069 927375009 680606826 849970808 693169716 880709514 959405016 967453906 630475568 731719501 282377417 364766362 624397643 877429945 324232479 433135974 222865123 593543773 375445647 746734968 277606802 481807131 710939557 863789809 572346516 953285910 54289772 193438266 641839184 772754728 632881084 935496365 411048654 430072449 965070770 993649637 755693846 931426261 836506354 983820649 343021577 597272770 216628983 887303299 430142227 530697069 364682356 711115450 307271577 820403323 856735340 875889666 157614231 501519862 776320495 847618885 42392044 799536520 440958153 872896423 194426322 653079596 343227775 518068703 260377574 589516075 373442251 952731472 485393857 649111884 468619408 483232884 269424248 301179334 21229669 525639618 59197535 957046480 847787767 897777914 734821851 738676494 497692350 985338535 691138156 749719737 689547618 944664979 157577997 732652902 93360256 798812543 611842239 623189401 367648461 431017633 98832171 348531220 16123065 381730270 76371732 754924084 977200746 984287434 282912971 578872229 985894470 999259653 509553685 534359712 724178412 769274087 894517566 990747283 543157234 988193251 128970297 790561499 148901834 424799940 565572226 926138418 89417314 205018426 770109790 991133544 491150024 897968719 831983187 914320181 324861747 960391699 453721828 515598667 772864016 996343789 338433004 681898470 25250024 244887491 872063843 986702795 695790749 869971222 157088084 387515005 496551212 551893926 826608555 838031439 828589439 960640175 704313309 770832740 369034339 486908205 527642578 899983057 530430722 749532016 236912497 864959383 566216573 638091273 852463845 952644425 113877038 935949926 547471120 646196787 645209118 792165547 510303848 602946686 807934261 859091229 833137786 839317427 688985860 813228178 197064748 854651993 963523007 987617185 710264250 719239102 75412814 777924556 965605924 975781712 421594965 689141574 279551200 980641718 628046685 668632532 653345595 806633857 588224951 797480506 79640948 978765025 457552096 769920521 105591566 375361563 204298856 705318628 285711373 844153485 216804780 849515415 870797208 933187555 111134837 742847004 905899666 974823506 725224367 983569536 820252124 897483362 926778260 950186942 767532549 794605875 311672462 693791912 659678692 754644761 475646501 724050963 781444993 816597359 599272366 990805658 6697632 392266222 744793052 817582645 973417864 973730894 646566083 934015882 168253911 870772955 170136217 885983865 151798611 189242316 364384828 642270257 335910291 462775073 144420458 679046223 17620784 108069893 874948415 910442392 710032864 771048260 506929929 527103075 567760841 882765071 508401569 517429348 168099079 935439819 159647573 466323807 775919556 963329617 99468475 681520618 336372634 381024355 742451304 837525751 888554864 985834130 626943343 908411807 964044712 979699131 467541650 858498419 703344086 955450461 622812220 791341645 756538645 945943525 822194189 976269913 321937996 910759426 498087469 557069624 66062238 462974406 132202694 628197607 624136396 750501783 717956116 994689867 382147439 592788959 471686102 850753283 671868528 854702611 459586847 469270475 700588123 995224184 683608998 977401040 865218275 907347191 647645306 684026547 300856153 722096908 663426906 925044687 524648984 613340035 189346862 410273627 353550047 991343140 912721454 943263570 259038117 825465874 931351978 960100078 666488760 720713423 544697232 629477768 614422942 669244336 116506002 524014314 887997288 949822970 388294995 976718561 770807051 859183465 688710422 829735207 603162467 943456656 744601225 999645037 659787995 765074334 252590456 993732883 324468984 386874688 294164025 333999133 120749592 556293450 608074815 708848979 648479939 725225238 268614171 580754854 92016781 758941468 873347190 986069068 556161971 914446516 620114756 989721676 547785438 889676301 100692518 146980613 971263961 979384766 510629420 970891630 339733505 623083529 297954994 951358510 181418413 645312902 488133410 802824205 676045443 990288985 623290435 908876128 447764825 533467446 281753561 495606844 18128008 811935789 984247037 990238181 792835903 839738749 889665189 958554679 722632463 952150091 79582584 498909485 833167626 834242751 64176693 664494517 876101563 939372124 927106435 983532884 696414447 856766410 797936984 836514934 944829130 991867688 146803417 894154301 342934008 606911609 568206437 960582655 170802512 243187671 401426523 557772081 36869175 938900104 563733966 750975077 899020469 907192845 934617235 940844733 502970854 503130665 294652238 727358218 44886580 601810616 391416975 464506586 773685631 861063137 59293089 489414374 372728892 386088793 531414336 646644191 341111435 940406522 512486314 542040196 479400692 731695252 171787453 549439675 526713299 914795637 581095654 693241127 772120272 951809458 830599545 859299642 883711252 997575219 748194579 955331908 873901488 956415513 455695925 821617282 657249249 720345462 12583043 637065247 899263344 965860617 762508991 818119634 263089630 828930673 956566281 974732575 124647948 335549507 236183573 429370826 2330994 348367659 700096502 935601246 727957438 789061476 387585618 718811327 892853716 894871868 120091186 683731491 341570845 344034254 925477089 994630495 332684992 511775505 995911349 996500260 742593447 834888546 33372450 916329825 616250579 965575644 266203360 846121957 330156335 963656714 819116635 980485815 232176366 250673241 653677849 847416826 587747407 713587712 254575888 401139424 105273084 151510697 935428292 954710449 127915202 699464359 5128275 676351526 564292725 997638024 581404787 992249478 523697007 776087793 434712630 542244971 476957033 897068606 965289396 975042187 912397782 974033290 103456321 364102500 378255456 601532941 883225219 962389607 43263068 529859178 274779313 487527857 82284488 818644389 717429848 809985074 882824046 962762064 493694925 526960929 994333770 997382756 441512158 526939578 163318389 904637780 223809232 627328591 347339579 819624372 718376507 818224664 890144174 969581812 670873150 926951106 572212808 708920349 398738466 763349575 467998644 728832168 904779092 966664325 910658038 936803679 912067890 929312388 4317513 62555305 376068587 594515791 472290592 559179757 82039668 335104136 335112709 695039697 956267855 978258386 357974412 406903441 448167375 918406844 980248254 982696917 162942283 496336431 201995905 495619880 662052368 870668644 504092550 844361431 171089197 371926089 894511903 943077521 136742696 892480114 707892196 910989895 676469956 719735994 733449108 951921619 155537204 344480908 945104043 970332076 346670712 958859306 442368346 689000617 685711864 743493259 844919730 889547791 254360863 919112831 694021390 751835135 668541852 798071707 518950094 899232913 961108835 975641023 176672142 548344147 791039526 918055891 176960734 463519455 257281526 765537483 296578506 411664960 733917290 800023521 444887093 851350148 665941945 696949722 724267020 738267347 26209160 770169530 173550755 218984294 905540257 988563960 133534196 962132797 657407946 934699347 704542356 712567848 489765576 494651657 214460683 756565755 896256345 998078548 887700680 987469563 684006123 808634541 365876570 636743985 96407483 491108671 379011087 621638447 487957536 878492196 213100361 585528112 854737032 980409351 433270535 913332712 813811146 924199107 984458701 995667543 146493173 877774334 415855903 739884259 818293627 991421477 964029418 990895839 76567834 921839247 335035652 434854081 370242598 764786128 803560112 823660863 177880784 998124600 408610268 871647963 589676167 846459087 776175788 911353252 911523047 955571030 363440820 380658210 592408996 671941297 802710633 832765983 719489110 861584388 942217000 978812133 392110274 639661707 197733461 556999714 615538635 965610942 254462665 751788503 706453527 709190515 337727155 572270573 335672572 459726238 346808821 862218288 164923316 579378995 22010911 959421167 866456569 896486717 595652995 682875652 430016524 694168549 314647888 938275901 504849418 763141722 480934676 831559402 128998454 304422511 542215309 581248735 241298723 695359890 981709179 992312363 30366838 472160517 878709371 910176515 843521267 931853578 591985098 749642471 34252198 634551762 415549627 670082171 263159207 686035253 710025717 837826944 595599927 684571740 604352258 860198236 865676337 925398680 508974234 788973765 56318655 651788827 596418625 762233086 383521649 933019722 19768846 713641518 849291626 881476727 997739558 999479327 701704064 721142758 736930725 854943233 134790633 746523455 316141010 680224419 470825249 925020371 783926083 851566555 878972926 951254106 670585912 780690296 838563724 987048228 639431543 860371204 248630601 757435131 902106223 998901129 259260627 919290508 695555448 827635956 82392403 684159327 826078252 914765526 956424789 964919083 233736591 405101391 640834465 836561652 396453196 720664486 949235524 956100204 13252390 958030466 233466681 534782904 890580489 964272011 223068186 871427980 810361947 871367363 276569106 857664069 995644978 996534277 146192690 437120517 376148319 636987209 204314728 646121084 131704 835495491 145664899 312838613 222309329 266182949 166294671 503620246 388889753 545979771 715315198 933677666 180447127 568331658 81283214 189688511 812644871 839569565 917039888 938515800 925140930 937218398 458215619 942696496 164289465 592171785 460744234 804982532 835414864 997501918 731741740 801564200 834317074 838177246 882313361 884222737 522265228 840952885 391345667 984905747 643640951 724029788 67012317 863710799 759042076 947159825 245137790 823238882 820458298 922788573 437678365 774981475 114727940 252137634 931136191 975148602 773273156 971149506 766128964 914755946 807925575 882034256 951114254 966396517 545132914 631368418 361170503 524870474 855438984 998571980 65338351 98726503 300360920 953164788 479266312 649200272 760517384 926224823 498396884 848975279 831062667 924841646 576907949 789575106 781481610 900227200 405018357 682108571 850437858 896785554 843412260 997369679 956164311 972581862 539019172 586282110 860715911 866942423 676032935 815083100 182088928 306274783 690749159 899992601 31414999 234936135 256522291 965538680 45150522 304030083 28013736 375220124 886041756 983196433 205601282 263685998 806877244 997356135 271078939 772240875 933262156 979268814 860009857 918207672 380142343 933747285 376332182 540655671 669728357 983207869 200666786 968838923 611310063 863048528 52926682 858138138 135925225 869530278 624069854 626811495 148359108 239381125 399575903 928972008 759274407 833124992 23396615 178828349 580754217 655554342 84630059 283539484 339373944 994626227 441168335 507958259 32210211 958091766 649127125 886348310 228705775 583842578 256003856 487262596 801837290 997495696 881535027 978852598 244597736 748144389 545623399 551678468 121481548 325262400 44394445 119423594 865256749 893829138 332463624 918954687 841993097 910910252 344917669 857518597 186046479 694009263 81836525 954720887 913724690 956053769 453234695 869272158 829192278 943175052 438295963 727370055 449737102 952321206 830587864 946157469 359401495 840864936 765126920 765138899 572272840 677328396 720143548 976630615 759266021 814013564 564263104 619298150 981644462 983580499 711397664 713964407 567739842 722904364 228100880 236135025 955993332 963201948 370307159 376066794 427639357 493658887 894865068 935289352 234106959 612552849 623034268 931853981 924047243 942232416 774272223 868645239 301431284 801892981 676360886 927307229 911333476 951953049 700756472 760100314 451235428 709691753 660310188 856061122 953722615 960987273 655995368 958746736 647075315 671885507 614273842 884935165 381620830 698591283 371738916 839077765 412986841 422706591 923611484 933497682 146165580 239061988 788336143 975041372 164516958 980689429 801683020 802317862 62447476 642355558 53699586 891253270 678656530 830760652 618642891 781116445 54228516 857189541 868940936 949176884 577033394 926191751 138174976 885617065 842334362 890820238 620767262 836343377 219501775 729237131 480804158 983878125 862085864 948306168 412837052 978586217 904141770 904983204 166554932 647821833 355104227 966984384 431093453 822404963 379706099 425971363 397885857 495091561 186973361 573978142 519516735 834720030 963604951 973958957 937372749 985419176 437254214 862255779 964806815 965486855 411871593 548713667 820115749 988169810 260582902 717103873 684505399 799811515 352415864 364299578 311552060 740425313 801175287 952228658 770385634 827036322 870668403 910886511 938887601 977804541 764764734 999124299 792534216 996090272 582207234 842485218 484534139 892462683 205413246 254300280 354164491 504382414 999113712 999205720 795443024 898764732 228865433 464930878 923635692 993818699 577988646 780128720 278323992 714066769 586588017 664106248 607058056 827512474 126811875 753592849 909073539 947898018 856754325 926467316 647142821 783493542 354902331 541286970 259286934 801384651 684559641 701750077 183925912 759439470 707830549 825054667 574877366 602273958 93444340 481537616 273730288 466119902 825593817 969789928 78423712 852211821 783892996 944045085 489419076 787479208 70513138 278703909 939542897 995139480 314919018 825024066 251436968 500848742 288312453 354351477 769912517 846226170 743769354 817361179 508757107 688332233 730462829 831196361 431011940 688524572 946392644 983648066 695273764 926565922 661059689 736728453 771848174 781015927 395996799 485537209 119508102 891882030 731043434 811651039 394829205 444810449 750786693 839098763 518205394 640784925 763637382 848796884 858118062 864477260 98672757 490188096 772234083 802077181 645126064 894336574 268027883 317844178 729620033 790898459 901204823 967560836 7008095 119809041 495095803 523076675 105268224 878166999 41292303 872470713 439589321 441663211 643016364 838376384 989495611 999902850 600095509 771196531 439571003 995413474 585925187 748973388 749940428 788402975 796819138 969503889 370689301 563349592 950982666 951910255 700474873 885754804 615231482 870144656 778859253 786515421 500218445 990143609 777489519 883907218 731909840 881030683 61533510 243269691 675712476 999081308 356432579 793743273 605345973 725174280 247081222 524880003 576984482 993979509 463962941 820711006 177201597 638662769 985725677 995409132 909067128 969484157 803906515 927816259 81983345 238698984 421058498 583967849 728824821 892068382 866841654 982144233 213348710 527478990 909219540 958890946 26776392 733906704 686258162 729988180 488801361 528368830 778661404 900033750 798820236 995765781 78963662 322246734 295355481 421067698 64238723 434521495 35426420 190888588 376653996 916837317 348346113 826169969 257363164 608086152 738808791 950162080 222689559 672630027 760547916 929178008 485274751 726309648 517795498 726411228 644854328 811628613 938474077 951682631 180471150 400151211 810171353 991135923 286937087 409919926 66427420 76995216 398078884 449178201 829546690 906923758 187498022 794075079 271784947 644157334 983083506 988461184 16749 196207881 314633137 629475785 684569603 912910295 956064480 968859719 171356365 806223395 600656868 973588288 990971938 998623588 547623456 666331749 384143702 584776216 902036693 974071094 358822742 683169538 350023259 444581190 588712151 801686116 88804270 551107713 861584247 903693194 752911342 767220575 658315937 721166933 294796536 870453257 585891602 868818876 899957203 922950610 587301774 998576787 671427381 802874848 366498774 446165655 641270308 938246084 812887586 833045801 504975092 686016181 861344342 962554836 364808666 885528340 611355850 701043228 339028941 839615893 113776721 444637126 469885855 774998052 826309910 881178052 684835475 746373353 240686646 765610926 549910222 723158857 332966117 514408149 288428020 658795953 765991289 883595136 773936197 847585851 844283 902007130 785055105 947871833 463762123 625918060 600967550 867106714 135539946 364404825 955862080 993842788 301274170 470187951 122383808 198852055 41499372 139426109 368559828 792694040 754878926 952991988 337920025 910561720 481150753 842031512 137609922 275321082 36266532 62723388 799472817 983174779 960676323 992449816 508930167 679155414 515216847 798097175 567812461 756840524 357220283 558057618 145471480 618845612 687734128 852449309 412366259 650088521 493040254 564881695 387381716 430187465 264716166 312854026 499880924 731327472 378371089 688788908 619385857 732189101 724986587 923543987 52635132 876492455 372473333 534060731 471775434 528735238 898575323 995407016 33321286 559260749 158855827 551804147 296390399 983826615 148053320 574702250 34819263 237702347 250634663 919472968 617043388 990022676 911443031 983372700 115759691 948718921 331532615 889797732 595513762 859019441 6563951 650259334 453758772 837102341 64872517 443050190 890413442 912091717 938936669 943960516 3667886 446694311 705492231 891472785 79396064 705394091 834931907 964613265 669274444 757915509 361568908 430936059 484719190 802312265 60187809 795019614 340063811 597225103 277346404 453178745 809647455 932233296 136153862 772175678 920328753 967781844 515169281 665876735 505346341 940838001 717830824 783761496 760718143 873937079 132738933 829713846 855538812 934701447 612765068 989690216 216323842 366307550 518698825 632616158 208715516 643959347 367264077 899378679 634930918 669566117 9047889 448251746 558865760 632423143 139011510 763477858 58293029 764680669 644789856 810902336 966476284 975129758 890522854 995395105 446479709 645695363 928628120 977485807 511570077 579763292 148223628 318424751 220251545 441858050 450839808 802703939 129928470 332635697 467956522 772852114 142202589 190396120 200433807 831250147 465600333 884618619 816510151 855433265 343811171 961662467 476668363 943905831 402869604 454464105 711437858 776335336 649822425 698300717 506691787 990022187 74194412 283300461 795325039 998195515 357733418 413685878 987324584 995265429 738246104 817821140 916490666 961322086 556335099 818487668 731917268 826347882 558729460 645967638 294777030 762797044 669579829 904245671 65731699 601249341 359369176 404016219 248606491 707579391 836572748 906670685 475455318 561957802 937612347 951988852 994772147 999881757 839175812 928113377 939047374 972530742 719995783 970283788 249988312 857831307 501147634 810007499 364599459 870462819 448204911 607863623 935553414 951097224 398612892 700324310 679172055 770724925 398294087 801088081 438254846 672158286 494483051 555102775 586474151 777394771 530228630 927191991 521667885 662558212 780355882 802352052 744769224 744787561 901247125 963068421 394320085 762818255 425499088 872539931 109929598 538015980 760687635 963756014 627210340 800415708 306716222 537766236 639487594 765038446 300703174 765322469 147400764 406231902 528531081 569803889 579756873 603785620 726739599 779847304 451943051 613657090 549980388 659028437 947386114 983524876 711928138 950790681 734574473 864259156 713246803 909174997 263231250 503955807 261298033 574721619 11802869 315497038 410595675 411201927 717885476 830618436 157986927 343347080 604818026 840739472 315126785 686072236 787376277 798149195 542138989 957488472 393533258 650169935 178570021 210546443 18919242 822226613 369007830 461018438 188196905 207548879 276501319 878703674 389875499 616368479 120256050 287472230 451992149 975956138 634449489 968869136 398832535 859073415 970612471 997743421 978135287 994486842 26117284 841242283 883677393 904151437 603297012 611705280 356096124 535825122 443968431 870059732 721218777 974273622 972010471 995437852 991103246 994031689 124638170 401410031 526172655 803618010 751624895 854633277 801310076 926494266 920018195 998756981 505263438 940779556 273636412 411168038 153153074 303323915 602948476 895409966 869232161 991380471 779896937 864699090 148823625 477420168 986564099 991003294 266769124 766654964 252370202 593221770 423801572 869010018 974655394 980459852 108626903 889111421 822573697 860728426 909920383 981263077 589212699 640183396 982106458 999144368 496609470 981862193 524857996 940644611 649355676 799370591 255090328 713315527 374430293 397071896 404573939 563278194 487880038 510678239 720620320 958046422 552043923 793477629 104419279 197441398 575482328 993362710 767829305 856864360 698762666 708463084 253881005 349684277 619497077 973554392 341006520 344152304 491718702 729172614 482231043 990593738 937593380 968737935 29357108 956324062 998053417 998601495 744417036 942413377 659149662 898451747 460357077 857441435 68656293 90465741 361852756 930743344 592590674 691805380 300712794 440183556 387253617 509220605 626728993 841205725 351138420 736504409 688080181 791452103 22804312 925508879 449014607 760358428 789798812 890744753 105535403 934578308 303995137 722619359 452210723 710399975 208192481 653783727 960226113 992084571 547129758 836923742 449402111 929377319 160144955 343264634 955114540 995627541 690236359 839847358 452691453 719272733 446687824 799947025 157379336 186023603 853028376 988343714 562747103 616529884 631700407 801230757 25282938 724062137 181804119 622693439 76598407 242642086 866484306 871185794 616589417 659601579 758345633 845044366 734804617 767387955 123067347 752268059 604114883 754414467 335187602 679738232 753523414 902929635 122201899 233097205 86180979 372747531 880187110 927778282 182198995 500052300 387433039 691286906 930033951 972665448 64453371 912206150 181352398 367924825 757012868 840799421 760363486 930359810 786989131 809423901 380409936 389383151 120630008 900522355 651130351 697509220 23000095 677525618 541030992 950670770 137619761 847126232 490753378 889407454 70460852 749515616 994860149 997687011 993348408 996953455 48623970 345723054 610586734 675770932 628651683 815980178 130341181 920406996 609451493 681526004 29225404 550383421 11524651 295762783 609562210 816788564 546602641 836393032 838106652 948804856 263716554 691714065 884986035 979705170 902551342 919401055 103836185 522905526 825037402 999943403 949892083 957428333 826456719 987851809 885580276 986466931 633355090 652235357 264640927 760726886 480521916 568866593 395055297 850641224 337818945 943342587 377319042 799165479 565557293 787220482 153549956 846263306 29787474 60407086 977688446 996936633 794617284 861099331 588049451 867595946 762079022 989423545 523395201 983750869 7562876 54877359 491313041 849534014 626248097 955733056 190467753 965913522 416238157 545842505 716379373 902615607 163862903 387758262 182877715 471114164 73847013 284383702 976965955 986408775 576713196 707031468 452701843 492973754 270433357 691084727 786720940 843211769 491023477 846246412 629481765 659892175 645613377 999117974 76170050 820980938 436430418 640690590 978933613 998095510 563888018 698226875 993632126 997631664 583940895 779646436 792466406 938626465 365337231 490946554 612282477 864030407 400668873 674709093 856181253 905196132 763831106 902961166 157705863 282198000 66485056 801800169 669793363 763317012 713584148 760829265 909384457 978114598 914755632 999562485 359466002 966308831 712328791 764104171 637401719 714648462 756552655 793459593 619778916 963565654 700121380 867926601 63642662 278617114 116420065 616121600 820447158 845727043 795175795 815810419 467217780 863443112 749592322 773172635 407628968 825524143 230103294 233845660 149377389 881615992 109229915 254661042 58556169 865532720 966292487 997515360 308227330 978152975 903276694 978919191 959037811 980621046 578534062 585597513 351715457 645020473 294841035 557859163 363317395 586464819 118536981 771554454 274342645 288091094 293469152 692247698 710978014 813866562 81667041 99812095 755395502 969259928 877584396 925589009 975769137 983789107 112969531 161558328 992728872 998397189 514592913 846779463 471079006 867084597 420894411 628179775 406281632 999490657 99281919 931213475 168319016 200189349 32962566 372396545 633464147 955911844 718036233 770492457 428281448 711172169 70736573 324729257 912152068 980639043 358739823 920372840 951247036 961497082 345291038 968330231 995114735 995934644 986484955 999542099 646496206 865953343 572252825 967417978 808654132 815670031 991005690 998329172 359495340 457619103 873166761 959020503 921079259 991081540 762894215 822233831 319975299 396266216 32773438 756871346 957480112 964489157 301945186 988112089 993774977 997457846 932986752 969690999 792222188 896352094 802513201 874432705 723616125 772191818 532798460 637767037 375978055 981983240 245667060 362309247 47771131 972546572 393466746 659520449 775098629 942061400 462516696 911680991 315658562 570405868 590191093 780397237 900443294 978160878 579665511 905160912 612352823 790675028 943527058 964609900 802508828 830592778 220502794 527514752 731526437 972523140 384656481 477705265 78722760 767498455 552572058 846543803 923338213 999171840 82964145 542446232 192393317 894764249 705510495 939481025 114154136 400639121 139974537 479112023 774303107 835598054 230246674 532999392 736756554 809204282 462215751 607550887 639764943 923765703 12893220 791927659 298636172 753957148 806207736 987866452 556753346 920619743 139077164 452154115 333327897 826444044 847747198 865755691 784833652 837635623 773973380 874047174 773173520 884847122 939098754 947342659 107871364 422478717 965533261 999633635 827006676 843201099 299169168 806049333 127457473 200548144 81938353 95533264 249473649 555332767 27027745 34377783 413219130 943650251 744510784 972992233 425593789 937515815 721490366 948824996 657936136 972973243 719650644 849023748 619856861 884411763 952133337 953058052 61097248 303772851 96237998 391328337 441864006 806573046 142004119 331526420 428207894 662311963 15655903 524195514 258110943 534238833 419294146 953327150 453362624 902623645 346823891 754699770 417521352 787760251 336839171 649498849 457212042 563124504 658112964 902939381 705889621 751642634 524484960 680740901 769668736 772661449 267506514 336912788 544759413 799881755 851597927 976933671 698657129 800261950 133691829 856874196 598243929 765187143 64083016 333121821 945066633 974032431 300871280 873488591 877828209 976546367 970629671 973478242 902335530 984666461 442929717 650074146 9121503 69725240 592641016 867476243 873468524 930171414 890450961 924056601 342604380 692106307 229655965 553715507 680934355 778590703 451205175 769654340 100564383 966695959 428076197 591330634 839703310 973049184 474526598 580043014 105016545 965555616 118810307 826574123 118956151 916590048 435917429 691706712 975612145 993678561 894410481 966752317 953009597 974677596 91022747 438322712 714692639 795510073 875278917 959315799 396894565 885492488 437063743 696740620 359727987 489506986 690507220 932478047 218939249 418788912 785026381 849108621 572282452 659191996 416729016 552942790 498656651 825705247 265317229 697098206 283200275 631708900 364176188 590223599 873108245 985830028 460007359 547281029 866707104 977886992 853675332 859740474 784916625 908377973 577984460 731926390 103101824 591007008 746128928 847264625 588360633 908573282 259865241 418351766 819997745 827489624 855916174 892723664 602512036 755779691 591544779 669997744 373264153 793033074 366652645 377516075 565599275 783765101 609667033 895798493 438745738 566679312 706561680 915858971 923293814 942927809 218059444 828823919 112916942 134001702 371200593 485976490 986137001 988598030 428257634 697578923 948094693 979475314 969103537 996339885 238483391 837440210 214000815 351968223 653398369 872085035 295009493 515774163 819868873 854849600 875349768 974322426 610123502 911399773 621186428 907090829 280861663 630027302 344064132 826712952 803972332 997786996 241681111 719587531 181813921 202761766 393388089 630640274 498500564 952724117 78054134 261793107 972323065 980053167 325875277 672767504 215879838 627431739 965744020 998373972 951098219 991523174 242927876 922669687 211166743 296908081 184672017 871897821 778007429 903241653 363489584 786461164 241294559 652465784 303045354 623162410 798366532 968514313 797898069 936304625 23435751 179623836 580355892 790952044 389403406 986945036 229559281 409595617 212517507 851817033 739291914 891533491 44994831 830716948 954931968 972286866 408480607 851232140 928915903 969003035 530738923 690191084 686571425 951327227 913751227 992808198 124201568 419088557 634737708 809301101 810361542 873026389 248383273 671095935 260540799 646792555 340950317 561091353 916747878 944029740 370132196 577494975 509609908 774306897 609116046 690831837 706949860 768475525 321165288 938464776 818627900 989856132 557893362 976364975 405966834 433550509 420783225 507907459 257150239 937321782 599269157 972226467 104400222 203021458 203821330 214687613 11561343 460386843 936485011 937534597 618325301 658578667 519473601 773993181 184982054 201628839 25828254 206714351 847791189 931781326 499945735 592712583 724939920 781411646 152749584 873915063 212489503 619118014 459816803 706087390 395390102 487010263 755315483 825136570 476542934 672911361 76590446 698560932 412600574 954595312 837622528 911856877 479907976 726960255 984352389 990303642 436009579 734269682 701943197 991814974 71432872 556262513 522315202 911005957 488118293 845644181 939823055 970577234 138511876 238740033 319541247 383601268 685484306 953969268 880974587 933174158 288998659 869994651 627873085 766478610 668483004 917671326 422859793 824805975 373418143 493882986 534019383 992510496 43352884 407339488 364315306 398193603 230084995 270128213 380802000 701176918 29809656 497201106 518208760 691598870 188016301 340286482 491329642 889558699 306572232 959539248 725130387 726122765 950959697 965984513 637083488 914608227 21332232 712132137 269170581 868958759 785284692 909393850 331644073 690626655 547908856 688905557 999968283 999977727 375364575 646087242 373976303 843977077 377860511 854165811 856238571 880329487 769118268 817022487 92520545 128657103 560463658 933149720 182509197 595556010 873486592 995696297 632198992 938492222 914460341 927333652 97186517 879088308 303406563 539228727 549351442 852497689 64711837 790022449 986974697 991497598 978765346 992832647 608845578 985308406 208687726 621289843 108201838 728694888 253137230 662500744 916879213 993263827 616768818 715866889 504524087 608278137 26806802 686827936 2797875 645549853 803457667 913816503 353431808 671685122 937685019 981452043 153579203 623539334 464884923 548021871 197812488 781659022 52342239 692811794 437791263 851969015 704431634 893040710 549254423 810841654 886454227 940339025 744408245 965268069 697628854 726799823 588812336 919597099 119492777 598790918 745421460 884224340 47256214 335786023 818601362 850987472 70646346 331948729 396371695 484966588 122859280 374398752 857972487 932910146 231633185 892010612 275397635 605274230 444185394 815685803 490554957 952490532 944667831 973688258 104139852 128259938 956419324 981938986 191752070 762398240 184717270 588345782 747676931 947878617 982732300 985831856 287639033 965211814 182598415 829486418 901739873 906223133 419718520 623718667 310845431 379276733 680205578 890560190 496533635 654311389 645652838 980040500 285229972 307908722 57948654 398945326 124690767 144569296 863403805 945579120 429478773 675076791 337623878 384322777 226234125 964087839 715741411 959767695 783314545 961865406 168455729 988920779 927932799 997254053 647138856 986700035 739811838 901455727 169748484 316556380 527819793 857320493 508833773 710747004 319821003 804699145 201708064 699251861 544564366 699596684 423727647 710725546 340755396 867814940 41287625 698149191 363143246 877994930 250065524 286736922 666940425 808433531 677159897 788173537 431035673 748789017 307548557 490552823 233028235 426849479 71494780 254267932 204712589 621011715 526578561 541530340 23696205 633077145 753274819 917687166 620658024 875178706 821946102 935900706 373416049 955218729 949939714 985223017 143272039 797651975 598266830 823933876 152832258 593278602 964716958 975607953 462199556 512091955 650150527 942317388 798131904 917473425 408918852 670139199 287988802 293119820 864787569 885772306 765738142 805686607 735309538 779521765 181373252 769939860 608353055 785132467 131464772 338039130 506146884 618867131 717490412 984983680 526308071 608528283 278447190 810665274 552559378 891063865 671003315 878360636 487926545 965077604 827898418 953608872 907358178 992323972 646256172 732417675 704901665 811010404 106522731 284902255 359540142 669553558 985459513 996632311 580685512 876719424 709668600 842530584 297970205 975706695 825668288 837114689 346501356 682958429 348226829 517745910 162444595 904559402 635045148 939732424 68458700 418673865 420226392 472906655 303365806 454885467 285546420 806516727 220732673 917724692 995146461 999750039 865571643 994076113 65233186 940176641 812724749 916436006 936083655 953052951 361031601 418194392 522309010 888955057 49180109 163893612 922996076 956367428 488365983 590244355 69598529 448882628 664677322 832578102 878254575 946977321 133003738 226621112 656583336 663034684 730510553 754859996 943181686 978264394 561742100 974344505 450002704 909157757 949544118 988497053 290751618 573901448 111319388 871792314 765646092 950577283 827529869 895274659 813818907 860366406 681022542 692345254 282264253 875308963 122814515 752843988 779842544 967265615 810969415 931316502 828914821 917539006 155208480 200992082 244411922 698674420 377782483 500992501 283337826 947661536 409454002 593870819 598146139 832356135 539956809 973334539 152049882 576037705 862990248 989137525 993540476 994538476 937323784 954807658 591780551 726452524 125975428 473835308 379538121 975389719 338616425 767048921 508853754 740415035 179330201 470996598 22780875 189104990 50888403 871821052 927076566 942873154 786351543 811926668 691211205 913462231 436871960 897139682 453638389 713819378 671592062 697867666 670429443 832740871 712938277 927446593 365124616 818075802 696241303 838675775 401256471 478754970 289467607 674023363 455623052 825438201 708929620 959978259 48811358 426131066 816680033 857039658 514449875 982574069 797222760 864165978 577277086 901125158 421147235 684820357 115945394 577826208 618702881 681825815 858327702 977630804 389240475 813458715 294641469 636402506 327776593 604775018 305629993 924987095 891571857 914237082 216089951 909991805 14196132 69923230 44653106 903038036 91353395 337983061 996775896 998314484 247321442 827322478 861210525 973912421 277668911 618624571 258094559 365552652 48796832 785453379 448401744 450207537 558887497 563453042 556965482 669432681 491651233 665151004 667861726 691129606 729048698 796556299 983808568 992460514 623937689 798842460 17254085 382144950 315382577 489816036 601468863 663538154 246224433 379237443 155433625 607737985 877372886 972677725 973700710 996915876 310423418 793733051 322680070 488717040 291993146 680259667 627784381 875263843 152731962 854540759 660851192 817963931 220657601 356054535 832776755 844113624 907364630 963777113 552014168 905555627 234757174 327312507 261630170 378416785 608604229 905260783 149057421 924690545 18458843 743432647 822178473 898466805 117209251 426143863 783295461 841053329 91158600 950818841 220718447 794797264 186919362 497874272 509818077 657824446 801085780 832449086 338511727 521250576 285010266 640311714 667512172 924560064 204790825 539140013 36141294 947697039 480440295 723520306 246092862 506732565 573670719 829458208 120755193 684957080 310052938 901512810 870727155 962976941 29472527 465138415 11194678 646923318 441591288 951859331 503847708 862637706 393924078 717592125 868392560 913779147 520874034 599690356 227156338 303357457 872921208 902055767 59772032 988741435 574122892 850030281 471107919 793434149 672082684 856595425 820730578 960513888 540141656 830881484 513949160 828953657 856819506 964562257 753495347 979789212 408566611 457307413 762207249 838234913 190372627 469928203 160286406 232098649 664635642 678839034 867359432 897610587 794220957 969516163 488203332 893173386 899823548 938438392 223084874 874301119 737873003 795710077 311793211 623190765 305362833 403699467 573338350 731342734 957510333 962114507 15243746 666808353 947757866 990217680 919019617 990870410 834368989 970406431 311827713 933615370 972533451 986829418 417910967 767277244 145906553 307263487 341115923 644931040 491537099 716542924 978027734 984316595 836566582 850530017 657967541 973144661 653245527 739771902 612853899 992499498 936712194 955441816 653295483 924135403 588215988 729671921 413172152 784049158 810456546 942292571 542030998 637923686 719460430 880203491 25496417 105244944 439731997 781765897 598212920 978293383 685503108 859080437 388484959 597471154 145904438 620731389 786489193 999499854 202465260 986724884 21294689 215592223 862196115 945753965 898234704 925912676 804240171 989159306 176183641 558296536 720166731 883535430 364105242 953260001 492737577 827543051 41552391 922932174 424625465 506372925 362498494 594670770 62305811 900706058 456657236 758294032 323512170 503320015 923394079 997425425 438211162 781948213 371989499 806942970 906234146 907209069 840064999 882454967 761323993 837401781 430075578 695218701 854072600 906286827 319187226 995354578 205133349 625790449 699278470 828540021 166141822 454651220 784171032 828569741 817274148 917111334 54931769 645814824 132942530 689883452 828731543 871492535 280824535 331630201 384499137 654127103 531074787 602460054 319248349 409823893 880358207 954313049 983839695 995991193 718498072 925575773 59415736 730475731 629957048 661782309 522949746 546113151 795873813 801421463 925806727 931420897 687227103 878266841 412446110 460182582 779247784 991378565 859510936 901561127 193696044 978969009 12229584 89258979 390257440 607814656 656710744 783963403 226163291 885363673 672423697 988591990 3286252 408937087 982313386 994108500 97781218 434858900 638738838 654111295 68379830 630943649 793653755 799832730 838325388 843928496 375112436 896299924 852837241 969813401 920551575 992135811 276559680 916405609 771791800 893059486 5384892 881855934 269719665 692334549 98584589 353790804 658619472 747204191 216031405 616592287 798134480 975613851 976230381 989647990 690171488 997470584 943403685 985453366 354765739 580179992 963944851 973453188 103223368 236242349 806686809 963783426 752798219 884957542 317466514 770363194 466197690 471934614 847717237 890661423 503179249 957844518 475610408 737488715 1565138 196526077 221158708 331249079 211719927 314389362 942025494 952492058 677246783 686697638 559480591 827854302 41551598 506021734 436082013 737243662 640616304 727993248 430156132 544955139 896949706 973216298 67336273 581225835 35307425 847682424 77929159 744333484 619682763 804620953 839084547 930803171 421015860 466335865 748083147 917476998 994326056 997895823 912204548 940109662 689025165 883156893 201611389 637271048 574656356 996822224 781018620 889711322 33767742 427115204 774761323 804532473 661990955 786544809 787530299 906059181 754015111 809511926 658555226 893807335 127710694 468424718 291668626 621077976 99055280 707192707 270373844 389095687 648331740 866160465 540227986 948419613 74855831 302368594 327801174 526001435 176987827 265574511 253297465 616601163 182751151 664365909 413826791 935129537 698814852 870184010 595413285 727480974 376233228 611555651 647717890 821374972 45743111 147722412 813874107 855823968 953779583 986015477 939768149 940605837 823236348 979292825 106947568 707556673 161102035 521090931 799366694 965779811 858383011 909059972 822019107 936533361 130412157 704153497 58222899 442476120 762553614 821057495 36386869 585719553 830920178 873479813 450624505 757026777 261657463 348902777 925826536 994386989 810198992 911973115 618542493 881324594 871109016 901947208 709360117 814581729 700052593 898782375 599987903 668762356 52146213 843958778 509419685 730013635 348215837 467742171 506021800 670511709 577961467 986146809 638966188 911625790 909613685 950298034 146503858 381760292 618925459 620116911 491807213 590549578 215598000 908080759 362829395 965019472 307443822 550246050 759719732 894926668 946557842 965194928 863888612 905544726 594670688 887029159 930499121 939073576 18481987 404737152 365685338 624845774 822528460 866600509 517481878 611894218 335371424 918305896 675258212 976126465 809509099 904973205 743452014 945218037 138149664 830084911 661748311 774708022 130621739 713969283 66093819 96823848 281008742 880349774 357849269 485901790 282812734 452714392 657331950 778807274 667243320 691766106 300107084 388873282 463813922 592864614 461860030 940189123 624863790 906930546 276215132 497970631 630376452 926205615 330280657 760156503 684453805 770358722 637694141 843326485 974150942 991911253 907398960 981983363 987667760 994046978 934088042 988536662 612253949 773075373 43124611 715946162 161812777 732532108 71360654 433209722 610220685 831021793 352734052 828491762 73603876 822763019 909454818 914945440 96254984 699535355 599289447 834168132 644275217 728133781 238298791 727036303 768983836 856446160 62796141 381071600 103131561 884726194 844116477 897025747 230126997 253641827 839040389 866047264 711910672 790220891 936022657 950510437 778847025 876184581 938625915 973736281 558272986 871533093 344146426 822296572 958689831 964264116 951527282 957110069 761360786 783057919 828853843 949258361 185855144 575713212 913308188 932272183 455056764 993110250 179350571 930101896 937558450 997792227 605186864 900374906 182811196 578208566 498179047 583808997 195569275 980511396 821310189 970476585 702374244 863301610 862206519 986396927 465251316 808236724 628336361 774939165 726249325 761320002 365091019 644894394 226250670 870186122 361543712 599234134 982271313 988089569 241825217 930823568 305187200 557000445 876284881 988682779 77491028 572957912 446667014 902286983 637921055 648361102 368398493 806920904 349522247 564355346 203733086 286057120 657704373 680278220 426233113 857789520 308507562 634145593 859697495 902920000 505153435 570353590 860754900 992004303 711886372 959234527 352293855 993900729 705123725 999713338 798973251 894991715 800405568 842283487 203291395 736040162 337829262 631001569 52208297 293401695 625359791 686253204 917095036 938607747 958923210 971088409 59769260 662085347 810293388 905774013 855930245 934105876 658628263 794165639 942648504 948607048 546502207 695238802 252080059 622953756 30682958 836625243 310282334 848306475 52100185 334121442 506923524 750040303 992637977 999941392 217332953 893203806 346583567 464231527 79878661 499440493 469044192 568027876 616208826 928921092 116774720 733567212 21648870 825886262 441344593 488885902 661018673 787720404 484740591 932036091 630185732 924825021 449967447 885191422 336553532 773849936 974976045 985886906 746021857 938630848 139293611 845822793 727173250 812140739 101489260 758913093 829734250 937354428 331533708 808054494 121077872 449935936 100181160 199558500 946461626 970182906 549203901 876818747 920325901 959865496 251741194 998199916 879021480 985616789 271436594 490864562 566277293 765691801 236210388 364090863 368526272 977117339 987792623 992670508 866256100 869816986 187603297 975501249 869524464 928821534 113452894 585464001 500789142 688182869 240511516 774437055 819786521 915795815 942821446 977252009 583248694 585395118 686989785 955268121 98346222 511580237 229435798 310064364 856531169 890671669 560383830 589703700 802135362 822499042 486168381 580310923 972296800 980876122 160054305 862171193 115848056 929901948 997741499 999811182 606354090 950476158 843745925 993194562 18639252 285475579 245029119 472514551 142299693 662870648 67726372 560188508 549009485 865494889 784402591 943864633 472896332 736204570 707711200 982761950 406552146 726381937 893291103 916842326 460704554 904851694 533394134 789039274 802342123 950039712 369988793 942653868 995394114 995782674 864112738 987816707 56893778 98041612 361336539 719999831 537899431 573513625 455081765 636553751 742870327 977624110 244136508 601624681 151970728 322319946 478077719 551320407 238625795 853416464 356835025 805457149 385021699 486473995 522098869 655639993 225393746 744160617 875662376 947232394 970576877 973143626 504659026 988848506 238755170 401960367 900770558 925501651 948571406 972544118 505906638 788459678 36772306 928501629 161366848 296348537 344464336 945646081 220255672 926204243 945744077 958119046 214468706 775966886 500213454 590684867 600234378 818143060 51693356 841557797 872390103 945265980 107721459 355021628 666168732 777068766 299776040 611304426 891456806 982627306 661239392 888199786 465865067 469324424 302328986 311906357 155187634 784723157 421647697 705725703 547113760 753101355 244726676 379961545 366137512 904723513 531109707 587408354 834660135 972912995 477947122 667855426 30005319 907181490 414559894 588688893 851198522 981085380 548080993 772162035 995730242 999284079 837275429 999502367 432351699 943461756 213915466 359953421 958716334 977991739 672788374 991268993 755985997 895949209 783821000 975064578 253675146 561982747 466983267 607485293 584847695 640414580 809977015 857607906 919175282 969768343 261544149 989999863 143891196 816393604 562333096 986722700 974258256 985774851 114348104 497915990 200063084 518233053 210413724 269919237 417030733 652520438 253795178 308581377 47476647 298425205 822378985 880137581 832912611 837910423 865593204 901429089 357499156 547389331 938989822 949447772 927534767 996838950 760745966 964271451 180749556 842948909 576368371 881724448 390282450 962858603 589791410 735376142 661755688 813684303 992983533 998058949 117155572 611719570 735989019 882573662 680001226 697315955 870172260 954606454 385945831 770229063 622708274 835612085 40721334 690715340 727535886 807718020 412083512 589201974 786852531 982256920 185885104 927141600 344037339 781094849 308995335 680471718 281932849 354336964 317374482 986568539 800565232 877293463 568594864 779537304 924891924 977318224 57770299 780785878 608909126 841182455 35833280 261685951 203835491 430883657 876100455 948922023 104200555 136242641 260701893 917024946 958477776 961216132 982806386 982949775 647359067 868987530 873485153 979770895 347870423 379137201 350843956 454183104 251162740 260194148 472871982 528225636 926389369 979591233 499792099 799030792 930645568 948904743 409637089 744662428 126495026 334694469 140649050 557774163 688578262 820919069 328793266 922419003 12526252 608671290 856296090 883232504 661638725 833447496 160796314 433414009 859206434 924131479 335151939 912456970 145296511 223421811 223524138 621277522 177875480 434497438 563071622 640128892 202347842 515306624 445093894 648829950 937898919 983625419 511974093 968042186 5721797 29531071 505499534 958238094 110412807 292347685 493444665 875733325 845692710 923747478 80456448 218181945 563811545 896804456 453232136 715188588 592227386 948235194 580249137 928524299 583003940 748857450 62351876 259203542 357118781 664320811 271740059 907549642 816378991 818225409 960066848 975316344 254447621 987774519 572721547 837029800 160399669 939553826 733869842 959054194 80367480 138008435 778871981 786075797 673581881 689155191 901431759 961612600 235917548 699072874 124198867 466417206 754781597 945906484 966816536 974606798 992449781 999355665 139168088 943771418 154361100 441946550 552203609 927441339 444316279 931586488 457681240 875069416 586707107 969478580 555728621 563462788 690832068 851408198 723838788 761052888 367341264 564552390 941808844 978695658 133339296 705342688 210030102 404833833 318448072 514770025 922156102 960577838 235029494 631923892 756737114 948386651 385464347 735648929 738145655 936249374 156649302 191770396 99434782 520265942 635000949 860327539 127045134 210420990 734389653 931153778 785682812 813675715 366248208 985264752 526952137 658005912 889143334 926664729 141902172 611861723 563302389 999827574 456823588 956571409 798621318 901389508 98222815 240618784 996844617 998203952 284489132 538879553 14163785 345075029 586151986 845867529 515231084 596597672 476412975 575687338 146922191 311468864 845473912 930884266 707097923 999169311 281539296 748576932 508800479 568258761 612751837 904961735 714080140 798851530 544758496 978090231 899820392 926689215 397314565 572620200 87645569 507279244 164472420 182441045 799160891 814498322 335508289 740917672 302782543 484556912 840339926 959410920 550842806 963066651 965229458 982580881 231443884 418592110 709485850 810549573 144232797 900026038 770270186 872508124 533778542 695116239 401564404 729480568 404872516 478432176 794896841 797365348 37232924 157599508 262028285 343338236 324241927 676989918 491677467 804312825 282434114 399494002 705586199 739940389 163866564 874058855 892899169 919313991 49776932 941297620 954966332 972681318 738924888 986797967 174590950 930601882 702029389 913035886 136599501 196982457 127604609 205453907 102300507 961055019 938300468 945750987 673172947 897743369 738957403 879292904 572453760 807494495 85549889 548316425 917314936 934878797 323422884 539163000 124185303 892642772 609476165 676169314 308145733 817911566 696623493 872388000 59989385 629178933 593565589 970976735 574925403 930335222 635571182 734410624 210218187 938043294 631600029 858192932 144474667 930592489 732984843 900503043 812788029 824150246 70619869 825314733 66305255 990011117 787495121 857291944 687328001 908164205 237000203 917217342 272089936 973437468 795139643 930347409 719454574 999916572 213570586 904082712 275548005 410749001 199468061 917898347 703942024 724013088 72880251 299119610 351930579 899063331 734127803 914462673 114627171 883402759 405001091 617696954 293314749 781630690 19406248 385167365 748025057 992914680 219594819 409492558 365736018 818556844 160674001 947946259 871152718 982873433 124203171 808168189 498360544 612043286 310643821 420189652 869816332 886673368 141266178 959478919 493497998 853383883 907836254 927980926 203519651 698497647 798286771 844708947 742356039 890553712 886424338 958803617 611417519 655892935 790208558 940038524 23607044 126774036 44505579 768706275 595688937 726658173 435918538 907319656 880099435 991640815 865159498 869223415 625080912 708545549 80228810 432541947 692958210 698458189 330444175 553366886 185403125 714271168 940604165 969721966 993152171 999401847 502425955 747144059 580946534 582676123 164732191 541196451 910573089 951670376 808101272 867033031 123061893 592243789 277464401 699179034 47704900 848780835 557666133 883568854 620653798 993455884 24177775 655921611 493870751 560607069 910353051 986162876 551151736 580193555 822633850 994071461 710543280 862279652 60265960 483569806 717788510 775150283 706955746 742884220 64122625 957831296 815610310 830180212 341915168 824317416 114082504 405664110 861202729 986224584 5298035 971878624 608056299 675226385 889109069 907322542 557400667 998216156 718293675 751749823 725298739 980546593 816997832 981609119 355013256 767614593 559275465 843103814 758817251 784114578 672070322 718372620 226586982 986125282 374593341 607419834 211848349 225082253 591634961 888482258 693471611 726704705 667986130 672976338 992209846 993435826 543372436 691585433 138821830 371080488 743676931 928049198 748243418 976435358 757502503 836648167 473010205 569037763 390400860 921687503 430099300 785269249 448058351 687988774 348757912 775463650 835372747 860707635 500796802 942129447 52551513 624306681 496823098 595860219 92549321 832714389 549971030 853724804 502982154 657770267 200735294 405041886 818425221 845950451 25270029 369794765 444973907 605757982 841537147 897696057 699750272 784272416 450658941 736056173 125987128 588891218 545935913 602186411 813913321 892759721 62966394 670842669 171474489 380869466 867118159 885744518 643738395 901484416 315349923 633100602 518858140 717889423 982529767 994468992 27942300 179612064 695064622 765838829 408256777 677132271 738137388 911025284 728319252 901301720 605655833 657244200 5959804 853851161 611002110 641721466 145972813 516734267 807792385 945999754 956145582 999444191 1071383 479655562 697399538 871035735 903538557 921647875 53124084 635662479 966995449 998334389 454355401 877051291 642992695 679977476 450375810 819585520 911995869 943358629 465085004 845609137 552403629 707810746 873710188 954422806 854517016 974290292 128382901 728650530 16863996 902750991 38418644 307423522 26729019 204279061 149408796 343027051 994890863 997730404 745924927 836583966 264949408 684630191 754706166 952224391 498678232 917882091 398346750 825912361 226851785 455335370 792733436 827542000 804998612 989430752 141023105 485137524 915246282 979698969 770634668 772047604 156448819 616687151 390170520 555003828 831708633 865550047 146097473 249539008 708100895 891281848 417928233 482223154 364179745 507131018 336306734 446976799 161685883 942344948 851664165 946993165 101294731 205215182 935088724 987654821 277272500 420412077 278014337 912172650 433118487 697433039 84934026 423159295 701513791 887893197 867694667 972179085 356865052 560807447 916400640 975004329 79811944 414769556 153871966 554809181 236222018 977046802 92259294 873393628 511664390 978448751 660508998 832767877 606041806 721216800 28565229 818776981 831640110 930922248 951456794 959002893 318121148 354920826 456322835 868660308 753970698 875461669 813549853 861280761 339219965 429110276 756986620 759272255 711281842 863892236 723803279 990591768 47514814 644511986 89589649 511249070 279590139 480321627 406889712 467901013 813666526 860739518 450735417 872842032 41889397 98292946 27350324 632203259 11936316 34335597 112295251 602967591 14603711 435314961 51179736 917368510 268100717 357306350 189628688 529914966 151485004 471877117 720150656 770634148 348165333 557542780 271197892 345186244 650604892 684647461 679767914 960810742 856632243 992681761 854292204 898182683 100875815 323329277 969120887 992169293 52937547 534885489 775282067 950996723 904167175 998823911 108997955 359109967 232670794 954234750 322832681 750399182 852940587 988921548 852104559 944875226 746739436 866268276 763380500 841979804 194263035 817810177 928387659 994709750 477589989 912878799 424358054 963806673 448446933 501514726 213839556 304799693 973993093 981781068 58048882 785935312 989485601 989686064 521861455 835418022 824837927 957724526 411535982 737324919 625249333 773825108 421333031 840100874 4883369 558983975 77391800 531453428 209745972 989936948 820327417 852990977 754722646 901799010 213714482 323761415 76673692 347141761 519173146 583786748 226983772 835061666 557608709 778562846 914752269 984903740 272956770 549312590 672709470 980155806 675273333 909663662 193032758 367837146 278793443 310324507 85829002 393255490 746166500 959030325 430167645 874680718 286401585 428185700 826589374 973165359 208441276 343538978 698116962 787190048 772154050 805743003 753837204 868391904 963793865 970029108 554284461 836005937 493939250 540411646 40481588 145060767 814485664 892046971 1360171 137580936 250051027 644169034 692192401 725751060 774618412 834474232 80973049 188888905 676841496 744524108 346842003 965267804 279153219 746401404 521621463 993007492 141882958 664842984 102979645 209929829 959324429 967691931 118341522 963865131 979998368 984431936 506644161 550485910 78475041 544045214 102543798 390068276 334177937 824735008 491887468 672982538 338767523 803984684 431383139 560569141 929973662 930184435 866738582 943197323 771733245 813871284 43960667 832309903 58675879 724674585 140777175 964375639 537899401 650410439 703572902 967286330 19547789 603034922 967770797 997967637 202220004 470896933 546389140 777197604 626853751 774504813 564241604 645858499 953995143 992044157 44776063 62604566 558600172 694394636 697029637 985635197 670846011 940502455 429479623 483185542 429203046 716144045 30175439 774584024 250374814 929207360 558821331 587264672 354590242 847446071 594903376 616414133 850454692 929854533 545482686 908531744 777845249 862276883 939259811 965690944 538858834 980969086 982224658 986300761 380535603 799058665 350341686 591285748 590872141 914223482 17074172 816926967 527566937 957243246 699845380 829120138 921945556 997488126 777148195 908744206 541981263 580173916 192095029 860429139 276560468 733385769 967780801 999141338 873796860 901306652 159097499 742044147 918983632 934833273 443912538 922181189 953520991 962086620 267293271 803726852 168243851 231165186 145484679 420731906 100702141 411680570 897797086 942207526 238057617 580508625 811268358 813437996 278511365 606940898 878640726 903581457 648740534 951687959 837678109 902116602 54960276 311059748 462304750 648776447 960442429 995601271 932747338 983724680 508468121 863175995 405301859 560134762 205595635 681086181 244657633 995363125 777098554 900484035 186876187 412019020 374953597 806909135 194676839 937351658 611137612 664779662 824863043 882756776 687267312 973337038 52575942 743566391 348189189 800252048 17048202 47218882 458141253 480426314 287864336 454956204 120024094 700353569 151702891 858769859 98888311 171418932 974878138 994606287 575513696 750507712 732896649 761009563 859903319 865315044 575418620 663857221 581795653 587650073 669072294 906308313 333909475 933293479 792929669 961768415 924635683 968055345 609117455 735619195 847089205 961898870 273272784 635368304 491083830 911175385 901737556 937242867 457110947 894079566 327497927 544145594 719576886 982203559 131877680 203922462 641815990 649530781 429714973 909318796 960811603 990130141 292076052 673772119 531207818 694420069 423730768 945676708 255887940 670568953 354924511 431842070 768812303 816141842 299706249 507886584 492429023 727533494 837831643 997193903 873792875 985838274 812473586 960844261 450887397 506154572 561486084 697967004 165716851 683287768 401141454 729422211 667068952 667751931 537604039 702107112 537375545 771552497 703851839 841985262 837157820 951866489 997761039 999333139 986692503 988121682 947168871 949175772 269112720 466318927 166480753 271179995 357750991 689942867 538294169 600578994 363498887 662491718 958798037 977974733 377154151 932299265 267575509 445171050 258548387 526005360 5887444 400722814 550771900 580693734 262884901 490665406 347926277 360937101 105598101 274207009 694819809 781951760 823336711 976856699 3542256 264939309 455655278 716183540 367564503 625616826 169132680 473211026 698689605 960186131 477045182 547193972 975511324 989689248 321623317 910579360 323078155 504317959 796459542 868727091 419584358 588608448 556061509 907488138 112305417 836867481 538481789 618644306 399578015 430113235 299698588 618927320 815666128 902327330 624719995 971112531 950029994 994986394 616369481 935412424 36837674 461310798 67707771 380408158 711388501 988285828 543706506 856789366 665052360 777393186 466269232 860317961 640804692 922056623 885938349 929036280 358041702 959762238 406777359 925408962 588706877 914352647 715979939 912739212 225498021 635973915 290247305 766036514 246448772 540934393 444349002 684386495 892422664 946564564 65644891 476054471 779062012 956275601 736865320 791238432 530444707 680161691 364921240 881182431 319930840 490011485 358909622 609647144 488070693 760279191 421147349 449804173 265312321 435307537 16942399 822709023 186845599 409953469 315718459 891226758 916285185 965874714 368920149 409184342 888237978 896067723 850273642 893747424 940189781 955743845 255950522 967787700 481191994 728303105 529754494 749387037 348239024 353145551 36919857 75745288 37181974 998484385 567902911 905353171 37765713 795036087 820797899 897556873 970590334 974037890 807949650 984935229 424353842 824306138 257038638 357870367 768745574 929902345 62444291 357660215 835153090 896135430 454913399 980296374 327608357 745427267 616467543 853206901 221936779 452605073 757402164 995716147 426296635 668944959 581636732 871976991 393198494 396878405 367014902 903696979 743215692 751353385 510819304 633799743 701319463 853647994 908565187 931416610 645112587 876259218 865648903 939243303 123308296 588662412 16450812 111285160 109586966 450309287 688238060 716768049 864830693 967459558 952079572 972780559 245064425 795334931 648319804 775920591 767399160 875954327 842941559 861417634 923296042 936441334 867558233 871635300 623865063 776075578 929890666 988158309 63444790 392917248 236408547 298490555 919526351 941138260 859088231 997368557 914796189 999164028 587349931 654098243 903318023 924212860 475416616 919288640 487313150 515322642 807951151 978745399 225303284 933121990 118118557 537261696 312717482 681425938 468602852 480978696 111219058 242330592 629755076 823490172 664318123 952318704 460000874 920835236 26690517 766125593 159894684 903366796 599917987 868045684 328340856 658261902 377659517 896203452 953656506 959812435 121179143 543354106 606341395 997271584 919241217 969361363 442890742 459541516 440017483 763054768 296487525 500821457 127369340 466557778 983174694 985674838 584870484 649518336 395843545 859302365 232554253 331200815 148687986 940707067 48280270 207115036 327039644 891262410 906329583 918998110 712458733 943010392 394283484 946478950 401803900 563006909 573833833 743912118 665830278 845247310 289999337 878980478 237238134 660201954 719117290 740631035 661457599 879942502 581326898 762292071 194598936 260199789 648646706 660089225 339123403 700629564 711795390 929666155 660809889 722706217 876761120 943102243 151745525 496345785 220900478 422301759 408746367 809499081 219147321 711535131 578112057 775731394 190060154 484114954 476469834 797917808 362724495 937332567 790296216 911018272 193315862 896064856 496111216 819593792 555567821 773739835 171580951 738682951 406724002 930492895 715416124 889690582 866352133 968160986 94087185 231016684 761917847 982927053 621460779 650919906 224413615 851579109 223469851 703583256 176496276 345117624 530375775 571323255 283599590 406678002 843127402 973738671 920492852 953528626 101926279 879316754 133947443 512920816 812853900 952620865 997349109 998854132 114493594 817284425 243909695 455472228 650298375 871836841 921429805 976205835 841437088 971763177 239677067 670686327 432695905 489828527 338567844 389999109 681858934 903558368 601283988 655793404 539546118 642648800 221331652 471321998 453406475 930424290 748456967 994372091 99858261 747766806 946184256 984816864 181731739 669212803 329031166 864843810 939483986 963415844 288436286 635999790 611829521 689022362 176271605 663132716 65311723 465054976 237208242 516692488 809780565 934308259 180220113 248054233 302204098 695058572 145743112 748673620 121912492 647400948 559183246 786796768 193539691 653277671 824389562 931495557 811943221 818367987 474525408 555081958 833284394 981727799 420008883 691335425 416954213 874107173 424835276 585095359 5677699 781636785 321390875 799458587 888484391 931098554 228481152 609696388 257123268 347593095 48829222 697642999 196430286 710196345 564900383 580790333 395768210 994830711 666409580 712162145 403881400 983634321 705554890 829888670 364867672 917323939 205205820 950462771 49111858 107275150 471944301 903455333 601281506 801049601 640469859 838812217 859229222 934271241 771443693 924425659 798850639 884982140 466763809 557793758 730667885 911791005 263446187 995784142 732012031 889686213 343184095 868427619 224272944 413276678 306589875 476202709 50723552 559542261 288308006 701663075 281012949 911995998 300855250 638001988 271813540 550538450 612047056 924730732 496650292 957501493 106313408 847221868 258546680 961822344 69883026 403265225 285007686 851617085 720713031 948760162 676455078 704924575 65747222 231002736 884336767 999129227 3479849 650629620 848034376 848263238 400424032 833460073 606953154 910908157 737567932 906232556 290929354 420991814 524295183 881647723 750834021 994139304 533659366 877317606 973741282 995209448 481058578 637412926 25014454 55419972 325714186 824807829 167893355 332489549 287940690 726063258 366789620 738601977 588103405 851323207 619706132 903320220 494948391 930254605 249597382 645626136 809874139 977458196 622893635 785619970 294236306 633965885 265196524 454055454 856796653 868668841 546543531 925823895 310991007 670241800 703485181 948079751 669299980 813290463 533738785 914455044 78306454 892093736 61676449 982764748 631185839 981134081 145818453 214940092 21285124 225822309 532960569 932617911 733397750 879368082 566914434 721029499 128333597 848341631 603222976 838862529 436305138 900189518 59089430 678258120 310822311 843064693 382641548 542615765 459217439 809493501 850328924 895334821 149132057 369239717 115933758 677131393 200844041 364427189 133218485 153458092 331180415 357693131 495892876 771681570 967902511 981630509 515998600 987524723 71293787 589635535 40897695 788556272 905765018 944635032 939044722 976019032 678014282 861961335 599667705 645749101 978528301 997986067 831827141 870118420 265882936 517651145 51161634 254925209 505424226 885394124 594462725 937966806 605994379 825170274 309770205 818408856 178916142 932533780 223053712 593718519 383292655 554162615 226707958 673907580 994073971 999608053 196759487 639991269 997449464 997633151 98137193 617845357 525061894 699235333 30711492 796500004 307553070 372410977 517218294 866115941 559409068 655330156 76917709 934529676 69549740 121062909 724381767 869443502 789130031 812038236 373063910 455266079 310405772 890721105 949143985 949336002 854860370 876515803 559372252 974315244 228505283 716681195 781144690 885754334 30213576 215977484 717045110 865702771 324629336 808140264 130598393 477233858 909685233 935936361 315793492 608153910 508465592 545105616 126780370 441622878 316033055 694051740 533731388 606638664 518911755 833658275 348990588 546990074 596139923 901277834 643553085 934079635 74877276 649806314 67779513 662103279 462587389 753534674 457276839 920287240 942352564 952817092 353371270 595127200 182108479 796187463 357687925 529852293 858105618 886755808 92147995 649268191 658399212 734335585 927194730 970939146 381695103 875119859 110008337 362869822 165634713 739775826 120533629 717795204 437498944 594268008 3553162 453501567 304001863 481100396 353030394 523653404 241218095 848520654 429732346 949314364 899155703 905980598 349826240 549254715 310893666 612599490 612015206 705363426 184258524 580634800 784203614 896867995 913863422 915120759 413437115 691849891 541815488 941341343 957545107 983299014 759786679 858101026 705649638 835340091 621515307 798949471 864493042 921896763 710821442 727090227 176566515 734815998 125948885 219006012 63493593 818677681 474940670 484947365 736680627 903976610 811909294 976877190 829623405 894933375 473771069 607642256 751780333 886669002 840870811 872942967 204446870 398589306 901445623 989752864 999728973 999796538 429238153 685930124 429908411 771047242 179199705 531162293 578059472 596882834 603593226 672481370 620895549 795771398 537639131 885674023 437801169 496785625 897370771 926052342 478018168 630411684 75590528 263087173 158979824 369474229 789250271 923751429 359840315 712593287 237778908 323875238 399832160 508935392 917043693 923536080 559508069 747380566 520295922 560013432 440642631 811656448 654174193 924684853 400607488 547331248 641695019 705505839 732071856 806623132 859311304 939255442 40231007 86796014 848455107 856732038 393245575 421653133 992183452 998606453 56969951 888180679 480706204 796587750 309616672 695936882 244258586 468128784 384329188 871870063 471011768 626685129 879704330 963792054 216756440 585773992 72490209 134388435 651679534 695390026 975112829 989492077 163240042 603628973 273373961 460540130 456754506 509237778 517709812 699851166 643552463 779073994 821340572 909764742 450798021 713519476 699803864 742840161 255730735 780858885 598455202 674526660 54735925 475175125 518938882 616604121 925882323 940859659 63386649 446300928 105399480 637375580 57123994 269059490 219878352 756845971 975432658 996460034 575547741 846516384 347382406 406250053 969297205 971207780 791680880 917530852 808517178 860507672 622939460 775267037 494626962 908323585 863748480 871078327 842762503 884749580 829327591 965742900 587667152 786979076 134768217 882355380 63545847 265164257 684198451 729025176 293714417 603884868 134290893 460465072 514688832 746199072 62180935 754886442 857156204 915724093 166798862 595247953 483565618 922510575 277448445 719363128 982424812 999055718 121101035 830517048 449453480 966268374 541356621 888489351 322764668 474068136 953236029 980523258 664479180 913132051 921382209 961919257 53119098 625479383 171485852 906198106 216158057 383246597 109150041 222835557 768755104 891189447 475584431 762216067 343859080 911686292 677450093 745562489 109018281 494969520 518119316 821529360 424743411 442446664 715918280 954449234 456701563 596446965 143301545 690688399 363095861 769912002 589432321 672975552 131535105 480437060 876545100 967770395 281002273 867132246 299589857 901560481 241298039 898312006 621324430 991760223 321036069 830634880 563728179 564554809 287352142 720411459 397673167 428489782 574290990 922984499 950463042 992961525 601701236 673478612 245383698 363464142 788012817 934821648 836354043 937781515 228511418 610149301 819383676 865076703 217265070 537608450 935175489 997250652 533033478 670471348 619397145 682224077 507754363 581558098 345581227 547258108 579533260 868588656 56975058 505134408 822593201 973544700 791370482 835102757 305285696 594544345 482991270 934708862 317039070 909079030 858019102 902172334 551781801 727427538 737538213 927323206 338985998 447253348 208779660 930816355 417204297 419441568 667631511 955060423 759397341 964617781 453314003 740903822 534314126 626694955 604831531 820587651 249752479 759439142 919363175 952044867 162225648 308705247 484103090 711036139 282669240 944786289 161035900 825689272 565219772 906183545 557647386 796794406 655580121 816813991 623345702 651795103 416019036 689468009 99683371 922231764 732681824 968279916 981061592 995027796 691297929 995640039 852677008 989537868 833409311 949086576 119694069 260668950 775437624 807057700 119796749 182275882 133543054 306862785 846854317 912343049 434213606 635334460 476780346 929411251 373739712 923352058 94110955 456647767 496634942 774950373 481381812 765803887 887864812 976433680 549046996 723544806 159058744 459894167 783767959 923908138 714749872 816062765 603763232 789364502 800546666 874246546 13164305 895240943 599352838 861237477 20927420 976705298 166726674 966916791 468906075 587958811 166336593 976140467 818183229 939566104 604366519 891851041 649279001 665825350 825889632 902472846 380395222 440393880 815597987 924242643 740119682 797275380 41294003 904099641 540414311 884102898 675464950 904517507 460777079 552164966 482477951 567707479 173964543 769058832 428751328 884939997 111792679 557968472 624365023 945224787 58745173 371287645 435033565 498720428 486838031 604205356 270399588 863995571 404736131 756826372 39499570 95425590 311398109 772112612 812997659 938255201 505688091 834246779 463760415 482346583 141544270 838306215 193993382 957275050 776117426 950476190 761767437 984365282 725847903 871526498 964404611 990288206 28182878 79463273 418323033 880138622 218595208 428002870 267963418 463129449 676386013 949578853 617264265 631154955 281428423 942022880 562333348 894668993 658557362 765208214 110671819 129671517 60717992 365289881 178164502 444985869 557835467 746208353 111473664 726887248 996375123 997372467 349165438 447871865 970200933 977348127 630190250 875291517 602926086 829471051 929019174 948157398 526666450 721721847 589205467 934138216 673120115 746707405 71675867 604965199 62986264 907317656 190974966 732945811 183876505 934013425 520332310 993515602 843805138 866130081 304941586 892426647 156270376 331463431 950064267 958867512 504666255 695928091 890575279 895031370 359476530 723545535 178206446 875446702 410655452 448170894 99552039 658947933 766286509 804070857 333489662 547715068 831024048 933239863 80730462 847067615 701712920 774280609 163592144 970570994 146823739 994506694 187630620 654170339 2994803 174810045 935713256 970997593 917390610 925925595 296565822 605425981 183472298 701182831 321385942 327453255 345923949 680227555 225334226 509444909 439506363 671759119 382868747 691704812 559014441 862823987 571878532 992228641 10407766 715477464 703500163 890167848 806068969 821932531 837669075 952578039 865425534 967763761 319879402 373984264 702874797 807353003 453461762 816685881 626994031 933468907 268543645 668616498 832922365 999712063 302463232 339723817 929169765 976797393 607113894 827535684 918710867 938155100 308207970 543456026 429004307 846904537 654700765 869471375 126893055 623803549 37063272 846767262 818621247 891982215 393993519 464714552 551110972 756236357 237036386 291370674 540394753 999239180 388768553 899807514 308452957 424882604 750650632 953607569 434560660 871203894 30434120 184044487 673605862 684651260 652055661 981088179 226727694 738807139 162485883 935147165 50414089 595188907 5550242 85535267 298101234 522033149 534667565 752180433 127537233 246733360 240085227 520052598 933080332 966898428 589245594 781669102 839853817 896040440 962876424 975994900 496157257 540734296 441227596 449830528 535035061 941724669 562178520 937311015 562276065 577951594 655333489 715047178 112928620 300728372 572230666 866210907 277815405 798190577 422612652 762581194 210361865 390389705 520946207 660285460 818102425 855441755 944103626 970023809 42926810 393910215 655473512 669376603 21708379 662996343 351113873 562668405 443068224 923138587 886171912 983911762 158787190 847841259 26023981 798867042 423933504 849677948 681310674 770888706 845694701 896416284 156594585 489200163 652699028 723369280 492382661 775554819 955427242 985155352 506052224 768855163 920994528 985937310 434361677 763853650 196793683 738344791 740791776 954733894 792953777 821086543 935239706 969335753 945531099 987136979 551996932 686800586 346658880 392244771 960379387 975469385 858416145 907582135 45301650 324911046 615405123 788773148 194115696 277818228 700151689 941457897 90360458 277712630 753404529 837369556 512738287 824675862 349290028 386584714 305905836 661887462 492705649 960106267 31604656 400622826 884725420 904531002 486317419 972684313 194575083 467721381 448464936 986663072 532867002 987663419 460503779 902794233 863514683 912281875 113359578 910174351 502974800 951005831 463118021 991118205 129480129 809338519 156174119 209926889 564403607 832879715 904610626 917685084 762352655 982154686 881569756 991110375 463429538 720976386 318638194 697564373 52873078 154516155 301624311 606362675 855269471 980100786 63604331 554144266 227634556 576125170 632599173 640826568 834078981 910651586 228589886 277436857 581073584 653997711 754148206 759948028 756269064 877550406 982352248 982502990 502588638 684138790 169394205 962662307 867743925 980225603 113693849 815343725 48969336 999945924 453860016 932914181 855838935 875171614 323641223 772118093 637763955 876404184 768381860 961755375 257610197 294551730 779295673 808667061 44788595 745395938 469636872 797954703 854000393 889953101 153452491 900282070 328461477 952727025 935893074 957156747 873231676 991232244 36288348 189574479 435968249 806618331 127427549 696544505 381245173 757938937 174632871 285551942 961099456 968566000 159137952 575653511 72265823 810887976 417392099 610993924 523533694 777801393 5477518 856258853 597047501 896723795 800690480 960111581 514439191 996914324 899479094 971514104 115947947 416763099 374607639 591524956 675539468 704878995 97392613 361073434 937171702 998458072 923801957 936578881 668733221 673535142 587418654 684700441 688916985 812747033 396990497 653650060 490191019 526242321 481773226 979163435 779254372 956092648 884348925 946153081 815679068 954108940 963347358 964317058 855771532 891513033 226817753 808925877 744504558 775900819 39291475 960124784 770106697 874450625 155780624 358793459 30041481 717813668 354314973 681697856 54322441 329245872 514376530 999765511 801193876 900983858 152165142 659578666 315579151 492664348 484220943 920715044 666089462 857375656 808055608 945329637 979829692 999600156 280724560 597545248 944202229 957335467 983179238 995727521 956383568 995976305 233634145 919650370 164975510 976643232 12337502 625662989 221582186 846220956 755801612 857546789 349130818 595268891 120447796 587875104 508375289 585797724 160180418 934279494 321495540 547250823 142242754 372789454 997971268 998383362 302655179 534005062 479951698 514710154 582683746 788843694 251769195 357444446 935283064 958240796 273033181 808264018 471645484 972151642 12192535 840758423 651218324 737899430 39834087 405297070 690164505 816823332 558090228 731692383 484102544 961875723 67387846 74313009 261487562 923691992 814546003 944610338 600933195 645440098 158718897 743873707 595103163 780959624 79780718 488683466 696855532 978545963 57003905 919953322 48392325 432608285 893741932 899161222 214717335 405810628 122825491 170656028 147507951 911221657 917331924 919790772 603523242 967396058 538414563 660376549 719952543 724678403 382207476 593726443 572552879 949345559 162906868 536453773 786998790 974715113 56245790 688911758 108528182 172933650 707851305 790447100 515139835 956559559 105866369 893712499 339942064 460959504 866132732 987124866 558465903 719964076 191530741 566193593 515248349 569037604 295221790 338631582 192020687 523852229 681420683 717229410 507438003 741922453 891360227 928022911 950253409 983841427 663768214 844068028 798696361 853019916 263474693 327154923 200051231 414953032 800166072 913007132 527004498 586283213 771633596 776369698 248427975 693466758 768031099 856309471 864050498 980087518 757097156 869531848 308174813 433534476 300874292 740186259 881274437 891340755 411659435 846487108 475042720 755461581 38572970 870801537 148566002 231858768 747199776 917373604 938876323 973971824 551286751 589056008 495723527 904970870 80462471 164282278 293197486 578324762 950955888 984330405 526198772 562858038 323524228 349573929 666395213 773769305 256122100 635242315 991415009 994038975 536689925 717712786 351122977 607243676 804173822 819516055 864375288 873468762 995716583 996196120 282426521 309648393 101467310 671723668 769012465 785643754 739668737 875654266 32536244 608325533 474770333 951818912 599363483 615170555 659901353 756219273 895090026 909711569 89805920 414303941 48808595 685428865 471533903 582887956 574624339 843871067 320505556 520348283 764802953 835093379 868505393 936286650 199208121 572641693 471760197 667946993 312887007 614449084 645387536 766440998 221252431 644956754 903222526 989212884 677981787 683793083 654606554 830344010 466092166 987067833 626747993 627992648 332469197 544597175 460918611 827154094 104674094 707831824 707434079 836301216 131724193 669546662 38065209 222615112 275055082 718199676 158092365 223505804 435955312 955457868 57190812 760565289 734758823 929059012 832885321 904863152 745671967 968660174 312374731 502148509 310560694 488846140 690540661 952588345 925797360 941746425 774947273 817807645 995012985 998704963 759993017 879287508 954986137 985531177 352371752 464998161 282288483 901119409 3877970 894564105 930153888 941096680 660443908 773850736 259225138 893125760 423151350 648847972 470459322 558058357 56626750 105932222 891989533 943139191 146076831 375404981 387511505 544303565 218095554 401825106 944388707 955986767 558567476 639940151 489199842 993451436 740307327 803754686 993119488 995309269 375616772 780824118 815838116 955530653 745455394 874193635 217761587 707280876 888028406 974241730 572083361 867337608 374589745 971296444 423938221 691524175 55872289 636638229 584538776 852192595 290998111 891537644 384665091 948694986 987362451 993407025 550428253 726568812 607388672 898053950 653301294 657467480 346418993 489089944 51209387 302522981 8764401 519315829 360446988 529097565 683829604 942847050 5820091 405159172 511490525 543348238 772511513 792342579 676888988 951035783 752163194 805933708 817790087 991681824 737442312 920620413 42758621 132367635 56559084 947018953 182007039 932491536 681239914 716581310 233571540 582034583 423924202 857739210 78796562 692361640 995772182 997224942 184027095 801811994 529488005 919898491 464670781 997884104 301435249 785058175 435855164 638923865 497690831 503472059 695538897 734447464 801022695 934889274 175653454 616706831 436009697 494623110 198763463 621123687 525030264 598466696 553636555 989350261 528791286 727203733 711813395 745827854 559711185 868608407 759935121 865379554 755396713 800073916 577967939 810671097 902136351 910444700 631948806 810335509 59474861 854526389 377609372 723089782 891867723 994647403 49922145 801965303 533711448 741909315 335199213 591927559 9405240 783284027 639234112 838420003 790370430 982689002 943773606 955512500 276426137 955376015 920677976 991909213 156282658 482276947 915815917 937197571 164085438 860023044 509351191 582313531 251384090 425277889 262787608 798372636 308753946 549081237 450485845 941439543 285025199 534822872 231837035 352451116 140637457 744571444 344302750 449926278 154195133 468534956 415313170 428356419 399688058 434778688 648670411 836290111 876313758 961126818 183206354 530750427 997211264 999830396 424347902 777177215 335556308 470368699 667436646 952448468 176995702 184570035 301067737 649880811 11164511 82717253 162631096 733640688 89452348 650114017 495849467 572614019 822373291 916918661 771742130 778600923 999181065 999623148 737047595 946343334 268850348 984866445 259808579 552622759 380263819 673118706 633162772 807312402 745070828 999976603 885495843 962239008 322252105 369340969 960599467 992667740 628215578 779959558 574899400 680369257 27149532 566840800 853207806 937429925 718910244 797259767 174309774 519023109 868584300 999222192 258881322 392790625 169763288 853212601 884839963 987860011 556213791 670713584 977959368 998224926 847992022 955820576 285135729 879305449 706326888 835562542 633316551 862590511 327811251 687879942 211820525 887531765 882860888 886523795 726363667 848578686 146034727 222903619 787269367 909197779 760324627 999274947 855162599 994227567 730213720 967557624 787233488 880772192 356434169 967518347 369529849 642437142 840400567 900692588 914228759 962586264 383164800 439396608 520687858 822006095 622216044 809627053 802382590 821727813 106782380 799227147 867321936 881829520 719525880 837897799 774523718 974355093 870218682 871605009 390952815 792715140 920981747 930612232 980623170 985110991 906117517 946032245 360283943 814308077 970271441 988256413 757275230 946325739 415963680 645423431 935552644 961078006 995683402 996793517 276112829 494531152 937118485 942627052 625653264 966135201 260500842 977591106 660409337 746641227 950376334 964049145 500203653 572775770 560411014 927759201 694489521 981381441 224340642 873685482 762170292 870832079 116841110 383278033 568744248 857964065 27584202 642185333 611031680 760668323 689962132 775650961 160812643 788655552 392045814 953821479 848140528 950460986 14421683 632786006 211682678 394374122 33182119 947071119 12205965 471958660 659278833 728614957 639676489 878950409 79340558 260093884 651617377 921306577 120468619 224444540 962458510 981879441 999545212 999979395 316355552 499251199 262628645 676010583 38554760 549733387 49782378 515283662 137669602 896051324 517968606 522802658 237787253 946259045 316011774 933759418 66157918 326284739 304202660 720540762 266460155 390787216 727477321 829026117 321482165 826565122 846581072 961193953 128759399 211644960 466284337 581079999 307490855 522682444 269096353 371283262 911234631 953130613 213847053 643589062 657845612 689608921 976271934 990708908 612910212 902812850 708856709 988736494 957640375 968540485 516401995 985552856 120695642 826785819 5507922 572265732 784845838 864235763 676618739 903995686 936118321 987054474 252416499 345763699 913751000 933723498 78203329 675488465 689368898 928075291 293943597 504554637 729053112 829159302 111466316 637424322 850465523 916812373 3887820 409193459 244784943 398358922 527394200 869513685 793917145 910261377 966461731 993942317 894498561 970690574 440769387 935471904 736559997 864278740 89422213 697240613 827099926 879545371 847079540 992198929 845151106 980701590 182178511 605506617 770138098 955315310 613367322 895850341 328027761 629191282 509654864 815714701 287405309 517854515 622592628 884753255 62908008 736020833 682935460 816363465 80245306 801878177 570476638 857771046 832487876 885541847 985066412 992822062 182691017 517881787 823333978 976570190 565676587 638125453 143057069 798738361 454245070 476748881 263893887 732359817 432072060 887253920 548697840 921912756 995910118 996527877 475519663 521408757 940811215 967575255 580726792 827456237 30666646 988641741 95894988 225350077 93614151 665420116 261814895 665524510 106149494 692676925 583419551 965880323 968998823 986094789 484924873 717640674 871519153 956697797 159953520 366149399 496033104 964861445 342606480 912260480 205443081 872198811 704245976 966030128 845730947 965842932 43668097 484203247 424532392 829960455 29473375 272410350 584911900 899386537 920319551 946565289 667661789 757347355 108160086 111891253 891666766 916847154 815249650 848262813 654862157 775676284 33138397 695447539 643117469 835160001 637545474 712468318 146580288 599527826 399444764 671139413 860416173 979138390 897272280 929091698 345185110 719803044 852471161 905022904 804905343 970532364 459133872 630226067 566177285 716623058 125748454 550565946 140771617 269968245 283196912 891236466 976480538 996297603 882933456 931513818 413674087 449072564 913524375 930546801 161423026 808336935 881069909 916913886 886183587 895912060 913055275 936072938 999786688 999900420 800980559 918092435 90714903 937132160 327902471 378917857 752252195 838264162 821176365 861512669 415686318 697595792 430554007 674297835 978478655 978517336 913764673 963416562 659766090 868313912 225989179 336007390 84145221 936705984 636447619 698639985 88441018 830813705 640772003 817790110 889130613 991367909 310747200 676960116 788455752 986358000 308598052 832872956 636088522 772907718 475189863 895975031 578257594 811110982 909774398 914078181 926481850 945372604 907271098 993253891 130116463 719823661 432934388 852552060 202203131 436778849 11842710 502945033 741289186 848234804 600692064 757990360 221069021 852547439 137896570 376608694 848976391 989925778 693859709 855986561 186496612 321245968 687621517 819630504 838389707 969107244 543583161 698613973 340427233 692034657 405589565 554555190 659495838 760377849 811928540 926649433 668841587 840092947 255996888 977784398 919363364 972535775 366199615 485814274 689499129 761966973 939182513 961390850 800522353 826338173 474971909 925222006 309173767 325535460 784417663 974625335 583929458 604428409 211978833 489487343 764691945 973532269 902479823 989413450 421920664 742887257 222881445 727214900 217714300 860733752 7326719 350721334 703800407 893612439 209591080 790448931 45473325 120271559 988336207 999180463 245250540 793424639 488624452 734666238 388628425 543126441 835011185 867763478 818318129 894347939 551485997 599891512 635784673 816125026 175617848 275566361 856668662 872876813 25503078 410275562 433895929 538284483 721625889 820306385 492913169 803413462 41327352 298383357 502650141 570658689 159984404 627773899 207537986 978824206 89688325 220058365 927781624 971756781 723492860 760624366 573311202 990732682 932729933 950421520 9478854 612617665 16015905 175290803 229826778 742495021 588563775 789066201 170815895 675145856 769953678 955077458 70159904 765937601 315791517 933076080 111975022 889623150 626780810 782847605 696078897 917103010 694502681 778043553 41532857 603623060 415141660 928996399 209475379 989880760 748561395 846488302 980273354 991510325 201366089 491480113 92296362 876064319 475338420 519609310 631696216 979972968 805142316 948839135 875468649 927918876 643190206 717242345 254175032 834505813 755422121 951916836 866136399 914142453 923872189 988106365 224837597 530491033 174547 260575462 318620333 553371848 109082435 250842119 569739375 636045034 315118083 582725103 479421079 648842887 982570992 988240355 731780050 815352640 219913905 830733895 583682333 679281671 753505233 960976888 24126779 112349043 49664138 643778674 934856166 939297882 453456262 807730435 142038085 300850674 862454648 954716645 615955669 680432540 9583989 73224792 457274710 659598198 163641970 517047619 16081932 28752971 672040592 899819363 146079780 838161763 42631948 731824982 608058679 857694640 749325802 950926108 779513419 865611716 856625752 893505619 289066721 607932585 161551980 848170442 510766950 825457367 501157069 587189387 503149596 618209998 628627102 951103512 433875066 693244029 795223533 904966208 406305739 782348119 465362127 973791987 279359837 580476954 52772636 399223435 34659509 52465879 266448239 323291732 189392904 937929083 259367759 345286689 841007088 919649847 197792216 515737251 97828792 811014090 121748099 162762621 964400229 978829002 944238834 992347338 400232418 706591442 310225961 708263305 187549621 720640748 764736894 789282767 813746250 831871230 856859067 860213404 481777439 816563579 64685507 404947638 227394662 707858192 641629742 836920870 861631889 945550716 908393551 949365473 780496555 942884221 196225952 272366156 825839026 872960308 59490271 760459996 897188670 955076005 237226916 883545729 466514268 915029999 5718729 21446561 67616070 542405586 100882202 506037811 214510201 648493203 342966881 348329008 849599398 893730767 303513551 434232182 948665991 956719570 549355018 879538947 803997747 937229032 955744190 973938838 899134541 980093379 441792154 453858398 205142568 467156910 866465025 993427343 829877127 958720844 43654737 185864094 633894827 938915933 800738983 820341823 66624204 440775448 641097896 694687477 380069935 941016508 808090140 891651622 86920571 231303183 310625636 545089223 91958957 846332053 60747574 652463004 224776334 912891463 602704731 864653632 82416014 323536792 116034485 840529190 99280486 625227046 263335676 352828194 476867748 515810895 567758325 852273953 368152323 677068472 901037559 934639072 663730138 786612902 908946140 939877086 459776678 803828426 84481796 282283690 42837263 230293516 390822251 995752353 2486727 530474821 528619927 762556673 355329990 639393043 332777614 557429995 864637990 960454620 913318557 940310316 15121321 640815929 152148887 685765986 54843995 286802670 631945775 968385392 833885258 870108263 252665102 626868707 94551410 733128320 965131833 988127590 723741057 751161466 852615329 938066892 178738816 634683684 138445959 656217823 96203701 962826628 298379791 518679585 243754658 330014787 975910066 991458075 670436303 717895756 959444210 973526298 779717424 917518054 162462412 738585766 857894210 992081975 404820310 786675391 93661430 158474153 851354759 952039967 79760345 806190930 55141094 467291840 773308010 961485017 401329125 721845119 682975106 848150229 466086430 815793568 702255423 879661607 18508128 624826522 734241653 899804000 410712733 867432824 588762209 643838008 234391103 288333823 190055469 983647435 306791355 378159881 277499168 818307640 733101764 749852596 349181777 553352872 228199701 287652710 745092758 790695098 52574016 411035329 108744698 309273608 900644180 938710934 641440096 900822437 621980399 807595286 737025221 956771665 923542321 960257531 328444013 479170201 954640040 960021703 727775543 924201053 919417781 984103603 896829686 965265463 361825029 400785086 770041206 896540016 246766535 996545157 475903153 744765954 103129233 873785717 640455477 881453733 53059039 670715452 883076346 921431861 156045288 784395227 613809302 625370576 433732259 900296680 406173381 968802824 458836299 614386630 290752251 952832974 937368632 989084743 950051485 979430054 220157842 429887797 378404622 682413295 214206829 740220001 854466711 863530496 651044963 929238456 325202331 919949283 765559491 856617282 763308525 872773159 726633738 768615872 944169161 957996711 52069194 588546011 983938558 997380905 728020506 914540906 127308958 983360362 663711093 840340221 203688110 419675322 916752847 953968550 385146798 622170742 721784630 892261964 845737258 962731381 186748352 359449136 971364491 975309048 982327016 997163895 923962479 949497333 253793259 270007257 695370049 782276672 967028746 983149315 571767434 765778544 573269511 895546382 522116653 566025958 459896537 599909527 416066082 802438380 118284864 386223723 82759441 343309959 545099966 898090488 482828669 524122875 187407344 273756433 637649464 922639860 876735504 889928598 859238339 862142363 861260963 972457037 406989221 509744142 725624965 980924912 960718236 974952110 171086266 375992904 876193116 889357364 295447423 665364015 458615004 970233225 114792949 730461021 183288666 263805489 514993004 732350582 741885749 854538817 742818786 786513004 417041126 574448640 60008563 848718091 464817716 628118240 122923991 362337537 346859963 402403438 128376830 212978781 388898218 811796667 728102876 998542226 870138579 996395735 647513691 898628608 60650950 362580938 130079716 807144789 75475328 948740809 641963980 677717889 186918955 611014120 63284516 64837224 394698840 529113166 397724126 713115194 382427996 387640080 352707508 665670565 549808571 880478032 897509530 953483744 137552331 774404631 199757434 231437759 496718163 518070444 463530506 481013083 956925729 980376435 110120006 670229227 649063803 719886052 39093882 103887667 14002145 634680574 212883906 729465108 261343256 804779026 416762 939674354 415304807 797125922 457545309 590130736 468325777 842183856 52417510 796666345 239009334 767644257 330731315 673815412 208698490 601150833 302742432 814341786 908266482 989497472 458060590 792547426 896102447 923429730 616369053 985470034 261499232 263447221 963778327 969732342 155565911 714738048 759852949 958610370 142904052 848725593 806363911 972660470 465390958 535652019 499414485 541491268 174276971 240683329 698022691 990971294 403807587 983079977 50488486 265833101 68110767 816321073 790573494 833641797 183722743 706093798 310662586 433439525 931307919 993401713 496337524 875254349 796909159 840010704 988388066 998452775 428721723 978992482 172716142 850916235 535210925 959262237 887305971 987209368 174403030 740416845 552833869 732883172 284433133 407039432 742656021 776907580 540014271 810971369 881342672 910277994 708180468 975338667 721250056 725264961 852928210 976213775 367223483 713893620 637402816 999385191 616259845 844943498 939933786 964891029 446617201 588431353 165053776 838026716 537682666 951061642 279844581 342365564 17275146 747263602 595710740 981107267 153585384 529094937 214203577 391350567 357643374 390503632 832609596 833531942 303434128 318153894 642721567 891850774 51705846 963611267 595261896 899399269 367463870 696268976 592084138 854723929 796544267 949684109 976046061 978760876 526179018 552528478 711593706 901451308 537164736 597705441 595957428 801912539 179904563 766962866 409701400 707584350 29013927 103654027 863941800 975511326 360130334 817885225 393132560 510011372 989192386 996415407 574215743 873977630 437479023 903549279 654833553 756756065 390556964 508546979 162717831 346521659 551213026 928891371 866898002 917325312 634680194 870356507 924368127 969693271 322660867 434195540 912871301 994453065 282075028 463454505 157246964 821009266 198778866 667374348 663187171 877871947 899435508 966573792 343283506 800045323 998784472 998838552 379351142 480866527 934405017 945719439 32052313 121641578 144398897 176492086 648763377 811035210 588698794 824141914 963756863 977897445 795307796 942529407 261295520 478968569 4513734 392064524 894915199 908365852 581751724 653020115 774350279 827775432 190461561 459931674 495829042 996856117 776744290 970517832 775974661 795907333 126022525 308448065 324056205 920426450 5252816 70321975 240425799 258394580 875357949 928821586 32930173 872915334 190545885 894830879 971789979 972960898 322213687 888608804 692033125 833691009 87970103 363340934 419684272 483561605 466123162 899575126 532209068 990150668 741070098 983987914 659425029 818051881 954174864 999362984 999931524 999951088 495777134 966039451 219320823 642051252 179915271 284582998 466341877 969401996 784031896 799985154 129383538 969591645 171275150 372863278 235244765 959128883 528031649 702764161 237094155 285495923 238158868 257533498 281105443 644231636 150903302 706264106 483251297 858723206 682843211 945414767 603630577 979042390 495540762 674312602 971540225 999197689 423816089 826439702 379778113 793208151 949788390 987152303 78245486 105514972 81876698 897482230 728126820 910223010 263374774 466447895 42577515 537514635 777103623 981030255 167147655 571393999 654054209 899429773 678456070 734409365 780561991 913207473 272696157 646596905 646280379 834327415 11775036 184293038 598562174 844019096 834589640 888891575 983130368 987966214 280059188 906205106 879767552 936389041 745634949 974402510 260987394 815084723 937260435 962457003 960436905 992833946 918151648 977318717 559199811 805878580 652512839 814226029 528526505 704694052 916769056 944966242 650234971 941232375 831080602 934510467 886323432 913382330 591165597 659849709 997609799 998852529 796614433 855140463 422847808 805405027 137682950 450236670 977723508 979239715 783941279 847913930 365964794 825792375 769587051 856266994 384923600 437656810 833910446 982595241 484799528 612906144 33368989 677241361 452264 911031510 241100632 452624233 1053052 501955163 601585490 915743313 444911439 818642396 841950405 877377411 333150902 366061397 907070170 969002104 568482777 779851440 167826797 260301489 289872472 722169595 189731484 692728019 421583620 449155243 791968425 919169109 438275258 588988760 326232613 520369119 574785826 745075298 370412675 872185390 717636427 904339744 126501311 410713095 679871163 730060723 177439209 200579966 65383807 562691049 93165176 802093307 987751553 991124580 853896855 964342423 877340317 893581487 677494799 977330111 102845445 734697711 436364779 512336624 477071555 843840555 292387579 686481065 782823835 953862792 969951790 978910055 946556006 972125145 12595532 469401803 428714214 493874352 246830968 932019243 413951057 645196571 362528992 629693797 243645901 689086207 30034770 141332172 819784859 935016725 915289984 969072365 953722896 990255587 538568890 756474096 199543347 359404525 660388804 970536855 206876307 604182363 722050741 989674860 738830296 781457394 967917815 997162623 705116804 807757223 893976331 909355892 341324095 843232542 876673456 900266410 229458458 675600814 821014124 992506399 6051468 299344086 56041034 275558127 81594839 484518031 940674691 943510048 204762332 620084115 159396665 967684755 901599342 980392461 507516855 997801868 422310865 473389597 641110543 653225431 745271883 957843135 419803436 688312422 779242870 843390379 609451382 660387999 433978069 928566994 42629646 304375858 890766891 901897812 132971161 167523281 516385988 712951284 384582363 887846028 25246212 494845850 754278648 892221637 265627951 702764349 68729926 282285671 982695548 993780034 701739812 792575120 945391740 966571559 288310691 518968465 141096705 622799647 407410137 678938339 484959243 700954818 309028754 486922111 19614519 834215950 731889102 854017355 532915106 933613467 462168071 527378593 350941268 596423177 887863938 947457855 639713997 968122777 980445169 986681986 796793874 810339829 274966380 738000334 166608013 733356373 751172161 936885419 863339833 991645747 712357397 816195507 596683923 833168762 533195866 988517507 866498289 904397712 245235208 957024104 177545449 883536461 378501026 681151481 122349185 151338727 441734832 463317789 949069164 972551080 173866943 701175544 241765363 349054124 670144752 865776917 455644670 612149448 706803135 764283522 54970811 632848883 977449636 994196255 547798534 820963667 748236355 831864650 891537997 927115034 137901193 468459129 600948008 899713186 85598516 261102929 552267226 743337897 260301820 944540419 914222580 976893115 668789321 909192282 390777182 747584136 640837949 722059891 661893408 794747176 300137591 623857461 236538012 320687896 423459407 877679388 86216905 715804994 824694798 997788160 943051333 967968019 793121665 820401984 740944841 799097294 954395050 980308463 587156855 961663786 310565847 324667888 993180720 998816734 379845004 736213331 311248120 900209419 633220767 765835837 918618952 969803798 454694065 747609806 446435893 784429537 204600894 616716160 608909080 621136161 424375412 742869059 518610747 723831118 4452155 626114791 787296964 826272082 850953689 874031278 31256187 549081481 296499396 711228462 856352256 979280535 199245548 904359320 794272988 890218003 236501679 965498316 79625595 352298376 542402028 898243554 333272115 781476545 605886260 772598158 179909398 296823770 503444429 704373354 684642757 826281249 343579985 588751338 853346725 925047026 373535534 855855325 767220820 867440062 127683951 202298726 270057999 821944927 732179171 914405668 285337672 704837932 35102546 83462333 528039617 868860634 474768962 999417124 464787675 878061691 31538487 599039600 853809216 989061343 329597805 503879441 222040314 445199310 637295308 880850246 840499426 924540808 229929864 511635632 944287086 945301366 600826670 770801183 241739045 354506499 484973119 683164115 37341476 758327147 850295685 915754364 663532623 795125555 403707154 875603340 101869432 704361010 931725906 976607527 907695384 937941153 628028079 733232991 935515900 963323430 699702748 707084034 378844338 795239658 267422264 301961914 114499193 800908221 137999825 786885249 130185989 568470422 430104928 818616107 399294134 619968316 183433982 971672609 564456019 753577350 501862803 799332624 554771899 943810056 104869340 165756533 806685250 823104438 734206400 959340101 447295639 582361974 368083221 478419414 147367951 179202093 860537163 900386844 753491974 939991389 21128421 292845059 1114485 798379773 732380437 744683091 332290608 671293037 333979699 652059143 521762764 892598419 290790194 561678427 618178014 744357774 362481047 407570672 160672428 615774475 280576933 807319786 51006031 338183089 455214579 579122288 749822811 910263052 200835448 687977546 548762895 881252276 809683988 834045822 198347674 962208147 54181331 140331496 486862717 767612084 875074092 914767157 491602998 652244142 885716272 893505036 684926240 967745579 493310712 806747318 657713824 896065423 437958889 866594173 76136431 939667864 482287015 703360428 940936249 984585155 381834086 387273293 781029006 974095675 590496978 998043643 640747376 977683616 439981123 953683582 990302154 995952765 886871411 907615694 849977725 950556114 939432596 995121378 746201273 774503608 617068295 927523315 381838007 914352052 58866006 934431379 895761589 940839765 536606508 816842844 771343399 844806364 334087671 352784073 805161638 900022649 115869615 845393600 607358649 615071084 737111309 949480355 875967932 876336043 472872839 954053730 24610371 456691978 381547266 706908371 521847532 587004287 92401976 941943361 139200866 439981325 722302906 862491730 405317531 710792680 234664246 322595410 802441781 807082452 766871500 938026563 110509016 307983112 735385149 855618040 607607529 663527765 85278484 540282258 647804973 763979246 351183396 915803237 871469563 936817335 893266310 916735725 989807507 996286074 634648227 838279213 401011657 826494701 412490956 893486251 859747250 886417073 78989966 340470986 681460556 758945621 154438424 538078608 482526468 670461670 740689931 895425891 559087716 989616321 939488906 985293762 571459307 996726686 140236863 548373816 828993010 944236375 345356074 548429263 518742392 578388554 125797058 885938566 293739104 795983780 66282447 474497519 736831744 890225736 33457099 945558002 29187023 976980177 911018602 960006826 801373098 859297354 917360280 956556424 368774753 818154099 893431220 988215589 562956377 740897434 883728192 891571407 678323516 738226261 985710087 998288331 896553535 983274215 655278881 720365370 152187204 562323108 605996178 815724597 752595936 966011327 101699053 197636817 89812589 878975217 486863892 944424009 920925555 975500428 408805238 720689336 477239309 498603152 899396898 932212679 256106846 315115073 997413181 999683650 134409887 501229817 376962081 602470057 987767467 994725300 748717941 888997804 781151812 837323269 752900237 899864574 450321613 594612826 694521479 821144101 445106275 662910090 105445516 873747479 149342393 882887671 293733573 634540713 972314590 984317020 735706396 985402333 149184294 874877820 546146389 581272407 411720543 805767569 984472232 997831185 238810213 714579895 206533501 297252042 833696957 921726384 685539101 934944426 125084696 187995130 162512147 710120851 93328222 611720411 645512503 813747733 893785440 970223224 841880755 894832793 913280748 975576236 277961391 426900279 38796151 103333081 546738184 720868726 758539575 875582354 382633323 590884009 543985299 936768126 616737409 702754170 903228032 966893724 986513319 989657158 268510767 548676649 701410981 708506905 735095368 990399861 36524378 956043356 16015828 585750683 292419971 606269254 817688955 949937123 553531588 687177356 432909665 766337070 975481794 986868782 535336368 600657010 806915879 916139928 394172196 755358095 699269242 778690107 849198951 887590745 415956015 866491822 719769967 916668146 803863356 908680839 138919617 859011511 387000667 963967474 603677865 781162788 156804191 738055308 887355464 902391232 360554977 840446026 9330561 899825762 266561227 619733991 704753737 910428067 357873121 520927365 603329053 754579578 743329113 799819052 811797070 958740945 228099947 981054063 679805489 827540315 897407821 925528435 743267579 858123778 528435357 707355685 240992496 840176677 522312200 532378861 442268436 500179248 270564643 320917346 766206951 812657869 864203098 932229457 855869143 914463540 736379734 997177457 206176519 364232348 33003719 388737157 350311335 764207486 392058745 846834829 769509990 903028781 832683078 937471024 344928581 466074500 521429211 776502737 1116566 506182870 426473246 808141962 285151092 639232100 707416444 821838119 314612369 428303856 685183692 894487937 720707373 869897825 1688323 598841795 888078495 979697158 146126176 269212462 818143615 883744185 677494915 751052840 839226087 870538164 222395573 406996144 387655641 859904139 272552476 608524227 855656924 867702102 68394636 429414910 321892161 506255122 136504947 867293000 718083587 737216459 180644119 529917665 474030818 804951380 169170883 852459932 769234322 922650248 506186654 803025425 460421499 911999540 328648122 453295263 112488500 726743590 14656771 86806417 172832469 840674163 853008182 971556240 92831296 686302901 146410707 261700851 357014026 842099814 934445898 969843196 239797318 443551466 538286826 924864918 753107582 988011328 65531091 760531677 212708519 836120317 484982849 716916813 916159046 955318280 534086863 630188085 275506281 593163953 746473964 845393580 672248760 830293587 856832818 946627101 887513387 984231556 948362427 973681888 32418008 79187191 457971072 976511366 885380877 982757865 621590753 978951631 388598961 961974444 41095886 405468643 51163418 651281132 401414482 872352267 900553483 922824586 919026814 923320647 287541752 458128076 706287591 718483587 688160204 959303817 20806046 568155507 420587133 840081902 163730496 758999470 784200139 814452455 632373272 676631965 267937064 618411649 236080101 957347636 376224791 543895216 879300282 927056241 602164615 908671466 636314871 868016487 48951198 893166284 457672404 487989399 563554893 788546674 585791640 730131932 991113078 993506248 122155690 703096851 762576134 790949487 885565484 923454674 193834031 238040856 199933079 785968279 310923639 565985200 710791931 938360823 194891321 202665959 384649420 959784533 692078163 781602657 896948452 931579678 444215379 979202012 180624361 850842239 81855231 387372010 735351696 738539917 387536469 395114865 889452366 921428118 669519915 852244817 554369818 863548996 628186667 899467026 50868282 79772595 910674573 933580192 657942284 926679225 829660840 998806869 147468140 965548126 678895816 916717282 640587909 693980894 116240339 385392701 40160870 700689819 790522020 887071044 219664866 981673888 251234885 506304816 927024003 950683891 734653519 890139205 814348057 826121950 86884195 191474051 606757169 733176343 581758383 710908545 189097302 871011781 971967532 973255263 372561561 789760892 812258845 816180609 185760901 762108584 460302985 552646890 26159150 454583298 663040915 708180059 696873441 845670022 816107974 990047963 233939666 848621578 544291557 953305584 258538922 579349758 143588831 528739983 768595200 890396429 432546198 533260243 922584522 960447260 694899151 755190287 366486440 779431273 939254111 967630177 711541092 959410913 826512879 958461758 405695041 411238688 243298869 247700522 465878227 567978862 102424172 292413508 896453701 925150322 403887141 759627690 620049741 695471824 637189479 938845793 477794893 943748108 810096149 886919204 876633911 892521235 415779393 707615693 416718448 915222886 584742514 706548353 157365718 861009505 274372370 657597686 91570187 409183860 253938488 511321302 275636301 785883857 196204700 815986286 875163094 917797377 622371766 881941346 123087852 279907509 957753294 968027230 740605984 773448958 195984938 434850126 77743767 699533741 394691868 595382665 707642304 923425968 310546538 893526557 32623636 641864608 491200238 819240179 907503057 999518882 550636351 810849045 53884311 956822215 773076255 927844454 309310596 356313600 594397297 919663802 895079341 968683654 126217011 650268582 465965420 592404026 453772612 945739823 259333212 442276486 915833468 933251201 381713950 591105198 817159601 970365479 855826857 928442214 476519311 618821101 284928884 574577955 903489712 981138535 875210928 898943526 930062715 965545861 796646978 907020227 976663793 984821431 466770519 612608315 241087743 335643533 529055030 601584844 480070743 639278394 708314326 855705313 579558272 968762510 610641395 743120117 118007620 753993218 325755591 434629580 421510371 847948447 95493163 150363208 760296818 963100899 123740546 367253990 280233933 701419615 463090026 503867777 345393593 440405375 767989342 996879619 839907776 974301322 825951388 972442387 520519232 965781232 226921603 807314166 462193606 563094650 212080370 246113210 582096741 736779036 874610863 886908821 86896734 635326999 148348058 495927482 202544106 847616182 597768760 725686091 733793021 845184349 986226722 988387530 196392740 523741969 782450027 972932866 710018685 918577637 81029240 654409359 737420102 889314871 593246391 801753042 705243125 893930167 99354983 771097441 616410245 794476413 956128104 983135596 919681115 983456295 125783164 736678086 993286909 994484318 41298721 746990931 451733883 841596952 336989141 537616980 57035513 443703933 181123471 961253423 845925615 847606415 309436932 402241160 985508731 993652062 74957522 954653234 822950338 858343551 51900799 707388839 291664995 922184334 721821718 978173892 231502349 535006130 922315897 956303274 850315905 971494521 754386185 869625477 443146770 488501186 806501995 912468467 624193649 868836997 549837380 755817570 525572802 960876496 206976673 529964840 907079472 937547219 243089307 616933772 273288460 314163310 932190790 990873819 717584472 867217241 472214216 614700937 916978332 953899230 40772955 277189688 274456019 824441092 732106217 979456864 2385915 11267109 773452733 891186279 79232640 515201374 922618847 986257721 821962558 845907228 996500108 997007420 577577562 817599142 709570953 756131970 685719868 881030267 856566492 981423182 154910514 491988868 728329292 886375513 416593365 898911468 47677101 743179133 272803734 675794886 421673482 468657702 704227358 833451929 116128324 832898010 795902413 859000497 828590381 872947341 189989512 497743427 723306081 754500091 614371559 691843705 33999335 171224761 332589527 588027743 267847300 531590906 338566402 570135922 765932323 773751648 612411425 817347722 98172617 151167324 188436265 903897928 564030924 827401171 314697326 558620099 717419958 825539913 177110712 876957959 583948989 703954072 642173829 949836430 628572850 849167201 988654270 997688059 319836371 913379518 952542663 969913246 134789384 645529768 24137677 438430374 710160827 868983584 177226305 956143166 55875022 135551160 831680797 868132815 854516395 951130602 406651841 956390746 722309679 887326063 738292038 870689595 282598372 594041141 513264128 910957153 720155061 774078302 350089941 557697881 777560804 950913640 327011016 487422087 666403179 898696198 111675124 805569945 127636348 729855076 520199824 823251848 366141437 944323000 986010528 997763525 326210356 779262675 430930078 508813515 454154104 967765263 740627901 897107364 573893957 969863488 915589621 998826903 629939325 701894099 661599144 794586257 673695715 758292227 530705270 913642601 141989786 970510072 244168061 926644109 478998105 829559736 448283708 492819639 410508309 648566628 825608072 918964100 44489730 618266354 285282090 515010593 693073532 959070043 713435875 996567416 187400832 475401088 768729288 807914034 61320518 310551100 197031360 513084636 49127554 908563048 272977976 820290537 876208959 878035727 399317742 552634372 950058614 960450575 647460835 961616891 604373203 751289117 463391346 552892091 531380709 924136079 697155143 947534267 345662 692520955 973708130 988275696 833124859 961812603 80252639 154051194 542436379 849478985 120532406 483550967 956803006 976401462 209922801 230214475 589005207 794236890 150472663 734291041 550618918 707682940 792687180 994053691 954623788 963870136 954206453 968643677 709875172 992673745 432400563 594341697 721257915 780754145 560685420 720060937 965909565 982911827 159342937 716388297 994430351 996419106 765076606 922325770 873175343 884710129 434681959 870564456 416783637 722179056 442147889 670414683 230020941 280105531 730166593 818578907 625571202 668735713 58176243 997307671 42021450 89379520 924270451 965180934 20577003 372154495 991111787 997673412 507130951 888598189 497886616 757655808 311806718 555160154 438834191 913861934 745443560 756717226 857302388 926269824 145184643 697802491 518653175 742281873 151945805 916292172 81287555 550455118 492185313 598792340 916943544 996165855 307240654 844702228 352486853 777837948 383436121 978767623 211069962 276261221 731316987 886689916 725681156 934120360 908830959 925504992 694217732 838051356 105234157 781343669 344243361 876862728 375873352 919559708 862850540 875019695 232364305 664619566 813707627 914372681 471441527 578910459 346913151 962368751 715888239 732986908 43530558 549610962 963117085 985996249 215763343 939554868 516668310 639837895 973559466 985119506 394212676 569017664 847482854 940148851 368229652 706895283 586513078 639788904 388953024 396943267 399221109 501319833 283453873 712124661 855525419 920900391 941141057 998292790 360201194 604984012 159465841 213243148 890694872 901293998 473354393 590977316 692763851 951048462 782457326 962588359 877865613 982330774 822215986 865120615 620878964 648622091 548740018 820051918 621090514 646907244 172309222 611566105 29295524 834008528 659889445 725067113 859943598 935766549 806059283 918096510 912931392 967443386 730920604 890363767 417001734 834394802 439867956 935818245 478834400 716356861 902031077 949946938 683116549 814144378 748718401 894876217 238937649 427417272 1865298 68566271 632810848 696559530 940260245 978783552 661160740 882442877 179719809 446623158 522021882 568081605 447347485 874564803 522032599 733001751 14422709 929811742 638741665 935720339 106067291 176264153 343999989 576381924 65208999 800043565 140807276 368452859 556610303 686693329 258133724 676911550 443400081 916401025 217950603 721322459 765509162 950144244 457920716 530837612 446882825 709030236 22192816 737488193 235882368 994876259 330949475 425272732 289098316 895037741 716729751 992964378 158828085 225921478 834981027 919446458 23831106 583403523 321092513 428680801 724115326 955261157 159738287 161177924 894149996 968303543 738691524 968181889 467247258 714360880 913682913 921832934 243764709 932474554 694102158 878617228 619854335 638110072 489220618 641198015 807309796 957649652 673892870 756725318 449692327 880098496 314377497 367581434 626599516 809888165 258192195 849137506 592244918 721160442 676075487 952714946 491402358 864177936 351031119 490697314 14343174 528928658 941672431 957089112 206889590 252823083 640939609 931421245 854913444 972839865 573119651 819648460 10586873 456279836 518706485 797927012 581080950 961194656 953937572 983219568 993417349 996508399 74095960 407942554 388228660 570088614 370375397 487830249 595396127 900754610 592742800 842952644 178340488 973700883 632154394 856672548 867862387 981004882 486267840 658020442 167201610 536642105 486927057 959146686 869272669 959013262 380676228 498893491 347693016 738945078 160386583 974906118 600151508 827059438 248969463 466618708 898507784 975174917 737729081 744627162 852632345 890181674 41557714 563976878 890907179 945876701 300935706 622253062 791100688 845636839 223208384 977620562 570268391 756065611 110532537 543800270 65519800 212550260 627921526 636322012 80286216 694934813 212141160 703043558 163129616 299258895 804481924 862093579 286442092 784367995 582233009 607523785 384742199 588103604 194142758 986069945 801183937 919750402 176099106 821706963 572917882 848141291 165942054 286643943 533823501 591917860 929276976 942167264 346870670 531604293 295275603 627082004 477551692 909669606 207285853 647157680 399181374 727774665 351896197 878329296 25275522 379459113 583352494 898442644 580222597 700554306 857196427 873195504 589016904 818293848 93634381 234033744 138308902 722742513 378268046 646224554 423585363 439755296 213308935 726606521 10607977 645562631 456362908 476602903 90350381 112460942 545284533 564839721 977472723 983863993 756122272 867749765 287638052 741773489 714440944 794713447 650876979 745423834 975044599 985707557 618914665 649454718 549684901 932790808 537124179 680425021 462276484 647987192 520918454 596653048 413592438 907873268 104318412 768081623 466373632 539021578 41689794 500862354 198979484 348861466 813916160 973053829 607926558 880033783 824664807 861301003 783514782 812028775 141955328 467262321 607120491 725771850 328282093 582998209 343196198 764094864 487876547 547497464 101637643 348537744 136155046 997132236 367276036 528844783 473639883 561394812 128000052 425136549 419970301 656868897 13380162 477140325 389305481 908038988 611529293 953767512 390849040 653339084 691921930 916972528 843740517 858394498 259475384 655883658 266633995 357060806 437224671 750509415 757057460 987565734 368743637 549571442 942408798 950158629 922108940 932387897 6283464 291168718 821984317 930166988 512925631 927829445 673411204 987627060 879996587 944831572 957396321 979135505 705325520 774625042 799887898 875957839 71829636 114120102 440455249 562644403 186196493 203736180 548328299 974749426 127670247 267080600 656893737 720015772 44942960 305763210 102421647 603665670 807193889 921142736 366691220 593969179 911175000 954064085 800793096 863044506 898801345 913871637 128700077 435478603 759909043 795023862 754453903 987838526 160107771 217314628 698377790 735068188 311730047 896498961 568977786 639352913 855518593 996384767 165276398 718689103 658232690 914584371 109004871 815090057 13898580 926798926 957711336 970122973 54925894 789478122 114790246 361118342 821933977 975642227 600532446 833072416 648974754 740143898 140955585 904546390 903892911 954090894 776272307 885607883 969014814 997396568 234475991 622672660 673360946 743245358 321596490 420181712 673833100 753399031 747067210 937554337 128908523 696460622 597943315 868051474 408838400 902935194 995718741 997012079 469847065 888269853 447272373 901869934 690985595 742647480 568717103 925845117 393160936 675591819 502070038 615974646 918594069 941529461 60540913 558278985 501711316 571960932 159528524 354196851 537725567 680271282 973277163 983163277 368324223 464729523 597079296 831178278 552495502 804396938 513759609 967324832 91676735 958545161 206142770 685537123 515181584 946405248 935311215 959118936 867867395 923947633 839667961 920345450 422744504 704836032 988872291 994169600 768894411 986205101 611700142 925256545 982095468 999804254 151723836 812139218 514540508 915973603 590524476 767567291 648949982 678409042 747709495 893646992 893294427 913230608 627377881 992144580 866446150 906786493 703697307 996863311 154216601 689283534 756174499 777767543 62459345 823130400 424976716 720126403 842467964 972042384 254821431 779205137 139579062 260214773 559984684 605490169 410691850 450279770 979418463 993816098 994142683 999426604 916204549 955488271 101692011 602523430 140397087 250967809 312954171 555581815 468079227 986083187 385792922 410210695 112839566 259744606 427523777 445417166 355258892 384124014 248583721 385784929 537898941 597146040 476939343 762561841 54091097 571554970 437830162 775592792 321278715 960116095 715651093 733264330 584767005 783228321 937212828 988250736 396560693 814040713 458616562 627732191 174864531 687884858 800566370 995380280 72935432 288095947 661175675 979528885 618007868 760176293 366293280 661458772 437676154 523347483 435812869 823160586 614728538 866919724 954168243 963881390 818523418 841737076 148029805 292181362 391558714 607588178 528000511 673228970 863573787 930622590 562774866 797288786 500728602 895230577 449650523 861631463 710820815 898683857 692033721 889154073 121968656 298831126 725259317 845120760 123689601 826782948 517430264 752534786 24175533 122765107 252994172 833468797 26957198 47155934 406278342 535171304 38056782 815726501 436033870 923475146 98830536 249047351 149400937 333271722 672514935 727943576 431827824 542693846 403716799 985801729 814186794 858462111 959884395 984263308 210586982 387170826 104184339 381757652 893149428 984113132 645115311 926860386 85516334 269744227 740736073 878188815 277599962 796843830 141357160 538414827 493785874 852627578 72950355 753731288 391757425 809853844 601193267 854734550 960411810 989238547 674636285 810321349 780038122 875242816 270171906 846491012 246171867 270475586 450865869 815023424 49188755 520729269 119195552 547856850 431992677 863299929 652963481 919891802 783197689 923378353 34053297 372964199 455234390 732609019 751067596 807787707 141922191 802908740 540212578 658491056 496674174 955762291 38195721 721839124 720459794 806844501 369693288 897524193 298083637 678388879 763217006 972999091 164519533 710726162 29581328 440983839 700941450 860889431 174636752 301307310 326161747 461275171 112069119 429015856 28393714 81689012 428899273 629173778 935097199 956210984 423320841 815408698 489622776 941659867 608855228 734059488 867952131 905993620 750470782 833458258 365735027 484022342 212390720 878775206 247814514 471853617 711404239 899053586 556487151 854656268 701349918 882562510 324766075 864445398 955358579 983146106 545154411 844246979 269945343 510413993 82382696 985457159 776102781 854687862 690456973 743262728 661126249 764748658 435449291 764362874 100360492 134309280 635661523 637532017 663734157 825311892 84688656 297773424 216052859 777867829 381376533 640247876 725439560 932780872 430853587 683996870 459041659 590766866 503015831 937790847 827710354 986832002 498825737 991375998 962023742 997475671 995812066 998409207 927875412 965752523 202434693 639280149 617295329 981576331 359028826 494483546 553044400 864584018 480917236 979698553 895095542 921755865 919378216 944329096 706456986 790107703 177631546 404896223 463773825 503729820 269285930 889408765 685309705 845512879 373842881 641869102 283493759 984510266 50040165 85329961 47925255 731688434 248251550 332089054 529155074 844796095 602654823 855100889 379680762 958112339 708498162 971952786 466967514 967203811 175891941 937192413 970946061 983528376 728668321 992340932 298471597 749706130 47310216 921638708 358342192 551579986 794025616 862792047 354629079 797420637 709363037 884761035 883827283 930606815 731689757 853508002 80365717 897405866 759923371 980171350 852363558 859882778 489322001 980189000 258478570 704103132 125159645 659821444 111874444 366772674 822384270 875540662 598550590 723392563 326033091 360623779 814466566 822355056 846209223 940556588 1306686 192574172 416362672 505498399 624805182 727012606 683648941 743242949 484750724 910200072 704115700 757586237 302277366 674992357 333932463 784480250 350246168 438621681 385967822 762902738 664870763 827100048 916470026 976027925 143554485 294563248 708256445 819209165 739946612 992659317 572106861 760761959 801283049 892858325 593735308 867852372 576045461 851984235 52189337 410316081 785019439 887187414 612122906 802970089 166297501 512175506 98220591 568701928 959307084 992469074 318604450 536142088 107857069 501736378 128154813 517722277 331402007 797020866 17666393 144116817 350811596 622355249 358633443 794268304 690120506 865959441 388557898 988714054 700330176 991694241 29450940 951445689 976352276 978702856 395947985 807755384 577799170 807935601 174683840 755446367 91417054 303027336 369971231 653770576 130946570 696167263 451452370 689236672 668946721 899789324 989496653 990256989 575336381 943773353 852367161 955614991 746445017 996226785 38719534 730928143 882535804 962474920 946464085 958054878 932258896 942791607 923706768 992852663 585763065 699860986 34984758 829637553 3403936 201078150 804524033 853024842 710743661 951208012 455342075 967931674 421204816 568604657 672589637 757983436 781016791 995904561 397526605 814932390 120684623 558154416 944504495 996368555 83872303 144809492 669904272 964195213 978123880 980754256 198110612 711112962 765094523 861170320 415715249 949428511 594439655 692879922 733508415 738479449 698426890 819371366 822600169 850666585 278326842 601484591 733655036 751452876 828225906 972393969 869701772 988464321 207297249 300532257 112501345 584794756 399198793 982032734 795547872 918532205 925386811 980995783 544524675 648837819 395431478 495668315 978206660 987782770 535460346 899672200 97473412 940075896 333677589 472818634 617712857 631461271 76485754 416179593 737020302 860210064 163870076 727786725 325260979 770123215 908122029 910303269 651474326 707865610 542930360 913019218 687340013 704162924 421190977 909245881 724016801 903474156 818172854 921618238 236900269 246438787 55463983 799417362 382926845 865791763 10789227 761902135 618222696 945640293 136816671 651059553 71371793 770025624 219778076 533566559 172460878 223611604 847504697 894592520 701816790 922164370 253852772 412193698 676422838 745558020 158462844 532521419 770252448 772559801 9303436 475507967 133664969 883977346 803860176 809694106 658022677 855629970 664095625 670444486 353969156 983801191 413675706 769994145 890047290 968833318 388038295 425175134 310160445 754721348 807094460 897508460 209506541 449925881 307064234 808902692 111979292 296692614 590467051 652217123 450526250 468281108 398306541 447008145 748072841 968735067 177132461 969919508 648659789 809632301 394355710 715191532 956096647 973234723 130768857 441060581 506605993 597693532 933430850 982586998 926525428 937963420 454327851 983806304 42067682 459592657 798248003 812967763 940907783 960942199 759479884 890806032 738037019 903318351 437132935 692016944 29621315 499302874 631524046 689548650 9871497 699304118 909305570 944021862 701852408 968808318 187638308 971931851 970912356 985194066 437008894 995063464 748242235 832726658 544563031 634894798 124664989 623718393 825811594 898933596 723479810 941121488 204426275 438262416 4583515 820636997 846616955 975140086 244858871 872546917 446343361 972635232 208114538 405648688 899788605 911973889 802795935 941969971 353160596 950261155 669486758 678700135 303534016 374052837 133758722 835470226 738129968 924616304 454913488 692478105 281924048 999664800 54222918 930767908 615089618 841547861 39188064 675094137 306073599 502505773 624727613 817299691 441292008 810560717 128724809 711322734 716321016 884157594 539864533 584276707 977309549 998048580 561447876 924716805 623399920 790322407 202109438 454531657 786153129 949457361 462737788 619853687 179937774 907596226 46920999 728653443 259335418 943776633 718683216 848780647 375984267 832088396 263154026 373911378 609046116 625026083 141188846 863547070 632102460 788049769 737759589 924398785 345809439 622006432 598809900 821954288 883881612 996497264 234825502 348470782 359538759 439396728 248256163 755301829 997068250 997143308 582176359 902667311 298716198 397879800 648423843 748241735 774607573 809018616 138277100 880223269 555504109 616812482 138948641 177211708 211661499 779091956 163065914 742667536 748716838 903227970 223376318 297659912 243113363 675981631 543665470 585412616 384285946 807696833 784543493 916555196 740443767 999163477 502610714 793357891 717212918 979303785 929857116 965235379 813931319 964761322 210094038 576262606 391184747 704329621 317321057 669630645 523785944 876435381 217464231 855309497 722370161 925941847 888264873 905533554 412610072 867870068 88655254 966677722 559110290 641357585 123616084 729819324 85971289 951018293 903926941 916572818 445196178 604169768 561932815 843778063 542163638 695401146 405703135 981929795 156001367 156683063 155158313 574887909 269320816 388709146 918908824 931214780 996604526 998796525 437141195 903361903 53286752 971211317 260268854 835419373 270130830 644938782 708771772 778949617 200421351 371299976 125620640 768701296 255319532 403578174 87166346 651361983 305951546 862038836 781496944 907893005 780535750 940087000 810706197 988678631 814957390 943964283 112940778 809767165 357456629 436049030 944878901 974890418 429896369 908596087 721387794 861953838 889657433 982617400 119276437 657461496 76769811 675606974 300904226 481586601 989909090 994291216 374740406 397380196 60383067 679576745 141210588 635014206 267715481 362767140 735553191 993082365 444688540 575330916 492938359 524735391 405721189 748637604 448514121 955863799 177895048 553354061 491075246 899451085 667172478 908971789 610435018 737733621 905922666 965219423 352213859 625590667 830353481 918772683 205228905 510619652 738840149 864753303 773978148 978485995 128779070 749253400 536037946 872134054 958329494 986831758 972214491 979052088 687384723 928133958 25907077 644170933 40758995 286759062 792634716 831272830 438339055 961093935 171405085 626510707 932711919 972411380 134233788 897005776 191702705 412896497 80239793 925442375 708348740 908978142 993437316 995564353 775801123 954778716 693948227 856182488 317293781 753346748 471317872 681590540 966019396 984048616 442441485 972546988 195607481 317694746 973840530 995365561 158993481 187801728 263330590 446065432 443866508 963488492 244472570 421102188 932794664 990595699 846071471 870357035 23222218 318718524 665873679 973267274 604127469 961013466 404903997 745800640 752192341 958418517 15820664 835818326 639633566 983879682 125710922 471751714 109644281 863354881 752734293 898344955 77303906 883788814 411621161 480316000 39194287 944813473 396802638 739309420 598027983 933706792 95296734 905892029 389783066 831529945 896817244 912872257 302044855 762239710 999810208 999890721 108500674 352390281 843305569 984021348 758557036 907543321 615098081 706061493 51299083 685149372 554781946 834675736 39605503 680454903 96571011 733661560 725370219 812647972 573899294 657608458 432681474 543381702 629831338 912403503 444121513 677318511 900632349 901006559 989985362 998227414 107075010 465282153 684412364 869206140 10402338 558190444 399757802 564707822 28892495 235488867 975085195 984531423 502216269 895899220 386240460 566764712 771824040 858810780 812371662 839724146 327662509 696602542 562096806 895344906 242397709 570299040 891266477 981480468 390736436 745047762 298165897 685759509 63580270 357286796 396868298 772355529 220615716 780114466 279352001 848923044 192654299 300223306 7612117 77231718 536258144 959512891 806111516 922991611 37359325 230694148 813530655 867193854 660090605 774685210 226823158 291867109 655954453 665809261 318633086 695258263 949886381 990233697 648333940 857049061 613078669 659023441 386373148 803423751 271385606 984456017 467097131 855252310 856277511 937816800 172187205 191932662 662687278 682261999 116565262 621676913 146069532 365506848 819982569 934045871 425687960 797343107 15982367 494196203 361198117 476201569 597330384 618842997 113877896 832754041 879752018 962421789 402363545 655073747 181732787 727214840 201617403 210062366 35225446 242236511 772738481 942770861 58933976 218135241 252400094 679231226 651102900 918559676 97024907 413208246 116488240 300454078 200880045 932724222 705004336 962323284 594628318 934124312 246440046 304324074 77958027 243582758 458269208 462040117 664982341 713867919 866017220 977295741 702728365 793569156 969913220 987484544 462577765 872513046 900997743 903494620 900064902 940173310 554024969 952986933 113729592 392692637 948765870 973096301 314098139 907930520 183206863 395677798 556487875 887244081 580819264 804525520 848984158 973718222 419307448 481542795 675325771 822128204 484419209 679610778 754371547 902642943 521446345 562694267 144324419 775581841 717450541 883297473 945825550 955083405 168803361 999029000 821984255 969277837 902421099 954971398 750180823 872509045 852213303 956481533 933106783 978787299 556354304 964212300 370208857 591429569 930457919 936421171 814780418 939647756 326019978 373843310 324313648 410301706 226886194 846740168 135397516 544665862 876727398 903293179 247467574 997292450 175199905 219053238 912319584 920196085 807898810 871264549 578369710 623759747 730535691 929068051 66826511 811536786 754383679 867506618 710844362 862414501 665246012 832611088 688292361 869562468 168886978 422590872 575673209 634431642 477152134 736130156 96800480 779284133 418213554 999265121 756197254 777145699 348611196 880909031 462403799 701510438 437951940 684880767 944459904 969584317 737737815 945452057 299264321 962240024 963973297 984930662 284324071 483475842 71572788 618950768 804950573 932109062 572727778 669044679 955422334 956448885 13871400 795961779 22958606 991804814 401990895 931076463 780975489 974426364 688368458 923819178 578265697 612533388 851136099 901852589 372307552 537287818 291814942 442284994 949888149 957429013 69854124 694277323 534993277 575842612 931707743 955501030 278254257 913424474 991106294 996979929 410692419 725731974 573321214 644079683 803308401 981787305 370767507 786265934 676861235 850412271 835177596 965606534 664507398 674476018 146577244 253333839 878380634 894071063 370382089 528861417 943124478 994738007 107918619 591306978 213287576 819017693 730129507 746476494 660938038 982565881 381976416 625764474 978180872 989659984 808222833 808611955 273681850 578705951 214041242 793668928 359825409 437307612 960280204 980181352 260709742 270076019 349545336 616239757 887121374 908022600 185221646 759025263 697574982 947843232 627676033 942078467 469739342 923193104 644798396 925058152 879888595 944915217 34626724 583371759 293543646 852552465 939941848 966081104 852980850 858843835 178148254 591061423 77439428 316261419 230205532 715709931 854660379 937807800 582815485 949906246 67052884 139903901 979810928 995042986 133256464 771364847 201110119 627680391 936011500 938436684 198382248 598368628 730916389 822007999 330782572 569406306 802195315 934370661 823873312 842995664 101502240 152670797 560812090 841054255 334820998 860304936 91306912 236265596 352058918 529250974 65969785 877225875 354765931 722021092 180066902 657167306 683016297 988535358 179717320 820772011 735581851 894030490 387419401 710886708 276193165 705390777 77179206 378260521 723633877 744736330 5469032 520761375 468892029 757856714 991864643 993512201 302061746 827428973 255791241 687771752 761825051 976606003 233789820 315769366 29156544 879045753 823874591 987031334 502584138 850992544 827598449 851671447 368972206 893865052 1599066 546135699 376016430 417971379 702585287 889189173 753949587 774696426 99657933 227927868 978672171 986136139 525619992 911217631 339687187 501091636 415032180 702730899 972989088 981028755 849994357 958022698 571389725 909576641 885502914 909233791 419565934 779683878 243837804 639563357 238654140 535685957 624789273 969387751 640576687 965577989 96215032 838964597 168371721 964384996 598900602 900082965 386683009 405829635 343014419 736822073 229263620 786312649 453207922 787000857 184958009 271565731 823322288 890128020 849578518 945391520 533497083 828417651 701685748 810850665 323643507 510750264 80672269 737493732 471233810 504090806 369304724 813955738 947916021 966752120 447209439 643065679 364602454 534607545 231693283 983742161 832284085 978310909 476730977 843631121 310284888 490474028 988762023 991717428 724108852 947251787 788777461 794713103 851722534 896129794 626670105 780586251 134282492 170734230 52918128 317108483 217254350 648297328 81571465 821898644 269766177 898963438 188215076 524525745 707394875 739972840 750146722 994471903 799890759 960620192 636227082 933865664 304828901 535124197 146211827 806181615 305389645 762996082 6516755 669611397 482393539 493618936 53435628 563254262 653360363 796163663 284944090 345938221 617038799 986974553 382816039 502749796 13246991 232010280 930353575 978009541 953809122 985767875 779920723 972600279 620472005 979161397 179676017 419435118 795920619 803623291 263471019 519011595 477875529 807520329 491918401 660874929 816758616 914802388 214110539 550497171 230678991 384112994 933663230 951544542 715942147 976506623 700319468 840944103 744342573 841463763 520444514 814235035 545760708 918266503 287314730 744318976 430752663 683457158 499384117 748675964 889014189 936604189 490381253 650046527 860424730 934799947 923528493 997556235 864882500 938216680 29853460 383967843 812995622 869309546 285790460 798542163 320786218 454651969 133807934 851574188 926645645 965819002 499052534 603896544 495865860 682125223 798980513 892474396 218191788 318739912 760833271 812612026 466070970 534472381 742743372 749579227 672020409 783589880 582299472 761475306 744549600 775225801 661410950 937747832 703163898 878727657 605181068 903589318 636441490 926006933 768238143 911294987 799987410 804008914 489759151 534988654 203340688 641499250 896089166 936367789 809594478 937866636 913341380 965734506 320603768 555505704 981616183 983363160 769315669 907759560 53241875 363142425 209556002 388122264 675648429 943522003 784832286 808267743 307867537 950426614 167385844 895889152 604283654 902158823 15581476 624272445 781868244 815791304 628810509 724131535 442915972 581971347 155582923 369126334 345777942 821549169 791196707 966148950 255542954 328307196 424880611 812779593 378532985 486108446 47404872 372947639 920594689 960911463 457662162 847007198 113052568 729817261 758740092 771783747 954249823 957626073 516780281 567361615 645624604 907750946 301333895 602860191 243831729 799171825 995044499 996197442 206096442 313864694 938023899 956572117 207279074 348789298 608303457 980423344 343119614 514624492 424698037 944367273 339976732 380705574 378933025 873117371 903809590 995135645 113110438 167189319 844971694 985603883 575452135 671538568 547205346 742651969 401766963 591729058 630667571 802690691 477637646 893367611 533395220 747044880 795281887 920248516 821356349 973907818 139368267 733895567 511102060 612976709 747988691 983653504 957418549 965618391 842483202 962240889 757932743 922345504 737284028 807216777 405169635 924045274 378518711 920096906 144126501 195784308 981327632 996530407 44125871 909813887 302520889 593528398 465740033 606433214 340877856 972515630 758834190 784176732 400593249 566295140 421028287 643412596 982207997 984791660 226393792 773335782 866664752 871987498 845420172 880076451 205882264 582877298 890335386 974225293 953932093 993346772 737376453 929235479 622256751 990430795 331940935 518545710 562184031 603096809 739621052 930303787 263825719 445647836 336929793 780399416 595574687 871377227 278964127 947465615 424839899 491076705 706681846 981318071 431169643 990063556 424546688 533940051 755662095 871944170 693877002 717405382 33810957 114609753 251648436 325608702 110670182 824792036 196801172 929330669 80694171 249798395 974155181 989421142 632493605 679884606 656905080 661144216 753594861 946307394 19988334 239354186 776043800 907837610 238690551 811352926 151822384 947778964 899846361 910094100 712369784 983647609 650522298 966497656 998810645 999876287 32814379 676097875 356840502 845480850 700533553 811492934 863493019 911566620 962284701 973316757 832064720 856747418 178931036 946955871 172460360 649534892 375219576 522860319 57331000 698244784 987852681 995267112 533475583 959018359 663579511 734903727 469037223 872718993 701730618 712159829 82447011 139022384 658607343 730253467 348169366 828895137 66918406 477321582 444283158 481654268 332729436 753246754 592454887 924389384 606479791 867212365 829154967 832369359 943533388 988251289 997725958 999692552 85064857 938883583 747268568 800941679 553595843 837245076 902749590 952983124 290283464 393218959 701009056 957827832 91951599 854047030 969685556 990158294 312873136 632671667 511158160 830787925 643055835 924294585 138293016 676010878 529861615 933865945 592653297 759936268 723433406 801230631 909354173 912856683 477504731 605957333 665805184 989685334 904382719 992501973 644123342 892750524 210515901 345258290 469541378 725319946 867005181 905969808 76107351 148610803 219826459 303937841 401480348 893965619 768424232 913990318 795782896 881354630 956907210 974907136 358318804 570449716 130051756 468272249 345197222 701449621 70263154 361663097 179210654 535516679 893048753 893277062 976871625 997721404 866955915 924738173 143348268 829749212 713304355 730705034 413255668 989801171 497884401 771715141 789146625 942448590 437469276 451556353 580908194 717313692 345417024 577304188 402220260 632720561 359890116 521530586 621714935 978800149 219214680 730957492 209471924 293892617 714236224 834136245 274128243 896232178 170467508 563819736 336762089 766989528 755593115 888889496 939796290 996099202 89009929 900960256 334581691 415377876 95406788 734117381 18063013 672854052 112866501 402026674 790874894 958494078 865597007 963545488 31473443 849183643 891063155 899898232 395180674 774346452 347716857 535329413 935260523 938301863 170001323 868214092 910902376 927205674 828152850 914828452 168491320 336913477 398240748 900908543 685519934 894872197 227282781 381118469 423854703 913979989 445037422 819610656 4619891 5389098 561192317 831308477 287424777 431663288 403546802 410571294 831517127 871531827 808626789 823558157 648969839 831956813 980987743 983105308 209622228 879514202 488816134 918332494 340035109 652501450 255747501 425358459 924915248 983977251 981940622 991759020 542691910 643445839 344983673 730744680 109125081 583217301 907533444 964158315 447533673 982603644 879033255 957954354 860244186 893588179 306027424 557350172 747717061 931850221 480497571 937933749 772240632 926922816 882622711 993424134 966220264 993787713 591393516 683284637 757921591 877155225 242962004 364753814 143681993 961649092 511843427 733755435 290779996 599556993 466444803 986978089 987673441 993544453 109064285 286779504 194292019 613891264 658726829 916381174 767659079 863677939 809380622 904004371 541354683 718761929 808044994 909906155 680307564 954604582 277368876 453952910 648057579 956076039 518378662 638063600 891679611 986972493 260326405 348557182 91208796 304086851 949253951 985683890 346696222 895539935 16598685 918678104 966982628 997124744 858321359 977826406 745751537 750101557 31706409 898880241 300279841 896858593 862701382 928441481 427533276 810217144 864873640 903957177 131859685 483277517 42046026 233170851 287272848 695968344 712111453 787105512 212181647 589863734 886041663 989218357 428782342 720271425 584890796 930522384 384781036 834259538 256273410 927228081 103538613 836224417 875291594 948980958 545177913 679387479 638473329 966429432 719739122 794231562 396380758 883628964 949271644 994232190 185082929 364297849 430671414 612329928 562274589 611611900 671088644 990817616 262274432 282078468 417984798 986311662 261964004 497722234 310826089 949559260 827261849 827548564 796239883 949136719 416635674 984224259 773021367 968288856 762129091 832668493 935667100 998671043 357454445 805084467 371270901 502445000 490342608 966225060 891904789 912533726 558294000 742005524 436042713 718879866 174820749 554919338 537731331 845067522 955601043 958325796 168640842 368238122 759905701 830235399 141668227 289826721 170877706 586787912 669082450 991014408 25550530 283410007 621473537 684626566 875211359 897981220 546990492 880213068 844184306 860151712 378278690 783039910 894275382 912884587 689032391 916475784 818067457 917479851 337367096 893867282 174787847 374156189 71559338 883052833 270854154 915226498 122590538 902058433 848917029 937105945 68455866 583789325 906013152 948940327 296375060 494470556 462402890 628973829 90306463 382026893 917035305 934233962 238791217 405056645 903660873 952585746 462956763 521860101 211719204 566292587 170426483 995106100 175051717 818278656 298292885 873432686 561881792 963304904 183015364 680839711 597054855 920603329 389713475 721051628 926816708 983571936 428816170 764337206 957655982 962436831 802896687 974929451 577456098 729023468 629897301 928113095 353356554 620332849 363165637 953149305 882626329 943843013 827899822 840326507 826710833 913659312 214092885 362782798 490501881 666853516 753317379 798085898 842352724 886085940 436773843 490272143 57635600 240636398 493217745 494611838 623478903 992302012 469898380 842681595 306288325 326671345 134201105 587514802 614704948 776992566 24178206 768800801 428157573 624318536 947688220 956512731 797076126 852794444 991616257 999442447 682599961 941255472 176035407 450117867 4988250 557661891 354370668 518678311 172855152 745524819 151293594 594512920 16920550 134078396 719826699 791841708 757447224 886681149 752547390 824285286 104320520 814558827 300940831 679776254 130616118 450923405 613849343 848440594 458718619 976418662 632099266 878329329 846400698 861017357 541386253 745794999 550618921 885114799 634595636 802256584 466278833 896340077 822447834 984083863 594628067 838137128 985044899 993975770 687959422 939564185 507702987 658692732 482880912 591766273 128224926 210426587 68848032 512242930 103551972 724616054 772587693 997601268 42589129 544689704 616292668 887261281 97533357 999254214 807846105 848155673 82609796 327118392 902041211 933178984 707485535 871098846 25504631 53412223 970581759 998921253 482239778 824073468 966946749 992125570 992028042 997359814 246257508 586379492 39769370 965137216 347078947 804007260 824354049 960353001 515190127 729055733 419329566 750126063 284363594 328469580 430291409 718209974 73833096 175309497 994163699 996466269 905760416 916934785 482833140 698067547 704365122 815118297 659315570 818290536 117571544 753735622 938381076 966641955 207188389 613360657 923838304 981588755 604218639 969062917 54098655 966137328 81556919 977572601 126248861 300679843 191368215 328448441 49136758 910535082 322842224 576494502 608230944 995846803 258707825 703116127 523729790 550780483 889629869 989648767 806804902 939030751 521906183 855538570 626844821 882512988 101428610 620332047 425554312 479929050 243861963 988475890 525512860 991184534 641571908 790902729 17600408 575288363 992327136 995484330 548333047 563762592 698253777 804475450 357300937 556365256 588295786 668146287 611289510 835138339 263077293 526058608 530802922 757407333 961163192 970128121 679948789 683785662 764733646 979553473 128313442 845504177 924394082 949789455 302309188 564046819 586207376 718663970 970746543 987937437 488142959 722547237 801010109 912482215 152607417 339270416 654960160 777821523 120400651 222052624 498038033 672632123 449459637 541712324 530567153 651866651 220169405 333154033 311390743 822404927 754862109 811345968 467565476 970593571 721842145 944713764 842905536 888836068 421009201 843338407 241617110 914291292 324659461 971666871 504427235 912518403 836365430 914256081 635066145 854937371 432790459 952519672 337287560 486745118 551562367 705078767 605797638 809629353 473362319 504680543 494235047 514951793 427809885 831926252 86216771 650414528 477943298 699978182 307764705 385624200 485070792 790174660 34787882 772368402 965080217 983747194 592700483 705733344 796502462 830683728 879735581 966808072 316643617 864804254 234289594 363663180 655558088 725295895 226541376 714385365 927026306 979183264 868106284 908639199 61190280 112722621 962012149 964000667 506761804 812385686 454278762 688211776 102168849 928434246 707323419 866429592 223113424 921841202 53026175 432544255 329067939 530646393 416784824 813033160 195878537 407943411 958242193 966773828 930047092 986664766 106396969 479749265 353941153 840581603 62959690 534007063 752280515 766163007 696177064 837317203 307024142 651097012 152679785 812785150 996200760 996807764 157967985 568552381 387303811 677225727 418921756 640538062 141914997 231971098 85141534 398370487 204942742 850309654 820706784 849788261 118307593 265849978 448797817 776874549 259147239 337511908 716507642 964810231 554504336 724914452 528746199 754618378 416509763 594003399 289170669 575923822 914926988 946128697 790430758 934117498 823480541 843265364 425517095 907122791 101371860 523745786 783027083 996788738 533481103 976028321 910080757 930224933 357391848 908868242 489113796 901104373 762117927 874076800 242856046 438585227 831984253 893652702 904815128 947209773 312948548 534365990 621163450 655122718 349756332 416410452 559125633 826798254 635589498 730669244 61332571 846949622 349144086 657377520 10992278 69014195 845459658 872395263 490529093 691018684 379993484 513539811 34386557 717732826 220543381 489789416 702723324 916593121 353318109 465620293 980894262 998009402 459288610 934174145 552958388 671295912 394653053 664859420 252635066 408963107 883692168 995006699 162171292 311223950 760269178 854418367 422367889 627662649 719603693 976093166 416092796 537208144 25405962 505901862 876181264 985437168 266044420 451964129 467112189 573653973 34559737 56523719 625322369 680790398 900508680 917705023 850280086 968008236 925247350 973946817 820087533 923871371 57034672 896425527 955898792 964610304 454057460 681158059 338323234 596180615 512347945 909673235 974244357 990739879 590122678 849972920 568935178 630609390 669807531 750148439 325370935 917763673 671842539 708492240 357582564 678895529 658232664 726208438 26383390 240104665 854543802 859489566 418403484 514412463 862184109 943323745 243659487 349656530 189644937 472832117 216578283 960193040 88665576 776822217 934127023 999317691 58936038 561831963 747818070 871860162 558670309 597826432 347254378 917850929 387001344 587229084 926220465 945355719 247658488 743522565 790131200 881679500 280944699 702624858 816057555 967814500 305457363 943738198 883680803 987340072 674514825 964323688 204941105 432997102 23152470 445733560 934128625 980374690 591888832 868870682 885111008 995754814 744067324 791451751 824173190 903348370 650177154 771056472 29300271 258489196 915042219 968322010 273458615 993740166 551400601 981433020 798714854 870946541 951655467 971511790 549178089 998843992 881600659 987230648 749123990 886303329 626143776 920459929 564300410 808212873 569532319 720057711 212064223 895320657 899750540 946827226 641576657 764951126 190192226 796535583 204096921 634518099 219376576 395062462 986965356 988826117 289945030 623723099 845823735 912571579 831070468 984027405 800764143 939278373 106599962 973344509 242040102 780804590 325518873 926089061 892462352 913085538 545790561 603974495 413654374 735710200 218651841 308732406 612303758 766446135 96817953 155437371 874776992 910436715 945886429 970233743 267640901 281147373 209088280 502362810 73745144 197815272 819118583 996536832 144250064 573737632 494334287 499433812 163875631 687279822 503626890 936119617 117170922 951152970 666557037 920158712 609113834 996767430 640152595 881312265 981923712 999871966 400343385 428738427 659244442 901321852 784892626 857387715 178091860 470377774 885019117 993077725 345643935 866681063 763771436 872234105 212584620 481915013 196307539 627921797 869392604 929663404 626866331 970129826 314876813 573114615 770292340 776059148 829766832 992982824 994426319 996480283 430036819 982418865 915672904 996074922 523783528 524684583 352284363 379544281 684836560 838291270 512428484 542947698 986883242 994497073 191389650 594355092 533332582 735825721 87633132 525304700 650647557 828907757 659694042 931239021 12637525 527039968 407200537 828933319 864250890 989000915 628624336 939884599 49688580 830686336 309063036 408704282 741786549 982798983 847162307 937410257 944848258 947876308 663462268 766511111 115408695 129416576 580182968 888649774 214452591 570770451 102720218 322854947 874495275 982894836 494078099 773636701 706882327 815869086 414326300 612547628 524557558 844062910 351729924 682302461 749807444 953332192 322180448 940749558 226990579 657641457 389126135 728395942 972863733 990851162 931685361 972770598 350420758 588577572 117264341 465561660 4290608 663316463 992550629 998375114 46672913 778024520 646509400 852846847 387721443 500737360 524060974 946140375 784555947 957987272 187385498 737033159 849468556 982521408 520757932 561036665 545632478 590037574 779542847 836384650 771998959 884123330 637994453 939324867 602686179 871710455 454960191 563151428 727326143 756946882 613256197 825877733 530729237 696305013 752140056 955313331 671914399 699870745 301956981 356152317 264654253 987481953 821172658 830104336 873085275 996013312 303291412 629246020 165357335 949993778 381749054 495787407 223865182 983879442 437684544 838721041 708115098 755325710 383930729 872884206 102590658 156317832 486141351 834186227 38038889 499615599 981869608 989323722 761481093 824522299 589982756 784222543 245058441 452395245 343781478 774319340 183440857 601305321 40573893 61106669 361353804 700880595 102758302 144292746 574836205 698999401 176831748 570647939 733719798 805316529 621584346 740056395 181463544 447352186 90905410 496519525 58527151 937978580 967236221 970231055 426989589 529174044 537960264 799789856 707141148 918904890 761862568 922947391 449523303 908607816 698211732 940760987 528901190 976770038 868891703 942180572 112037106 781049656 970250572 979928105 482112082 912998778 607792555 683762229 11315954 878620835 647069457 743125013 44691961 936642733 343140611 839724564 792404741 840308493 303897041 926135009 477876441 520537553 324160879 910311349 642303046 994578025 503074130 509115696 901688057 955468855 914477245 969696391 279561056 554374518 785830801 815868771 239330018 842754952 940124783 980103356 301380916 617919416 320617883 550219637 535830625 608419578 775395159 824150219 628993782 763455383 636742792 699575701 959276419 976740590 48199110 937190751 467724934 479999298 187677644 512618957 302059512 834165778 503212936 794373446 90527462 421964793 124726380 199211062 883907220 939322675 478660600 712921037 675602457 859673144 215757104 997875761 678986103 911848622 447132395 662762876 275284577 792341429 867112615 962268893 368285527 654121337 19879839 388597291 655791046 959106943 631698024 891691641 928671240 946795165 703757769 804749566 403594710 898748853 505918460 827772630 867589608 876445954 324887269 484021309 752521696 753462294 225805440 880376136 648865214 826598508 492849419 992162235 165255932 736518729 344634348 680469534 994676208 995602093 962250542 990239480 702173916 948738052 365641336 368669683 385172243 582444942 229649607 942908803 671314024 676985823 943321628 945469850 142965376 380504009 339497936 494173083 828412835 853436072 614617871 726328890 287942074 959552055 387414565 757438336 513685673 547852939 553299997 658239962 155173216 559293262 275373026 999507866 913415220 926820411 237466245 595012068 710357874 959800027 115854457 656090471 122492963 244763025 194236278 598046570 10879216 16737870 565908607 939637517 859667743 868808670 669095806 687560488 629152430 675375297 254063752 281405593 786974728 835994467 871361269 947204773 351253744 453085381 227359005 901314030 671043094 969328000 642189226 746922973 452178096 854288126 623919221 919905460 142681087 846875667 923231116 976137857 253653860 928023155 603671927 749046737 381425557 963307819 309646178 667465424 779372269 801205743 185243380 730724919 568025165 993793976 755733757 791366709 669594414 812726281 938999530 957807953 485157922 622703246 267498329 986192281 737453681 740000745 736653915 762499117 937479 396973412 715312748 890347028 596848554 834723472 496631570 536551671 23916763 691396050 163881119 670497351 22854642 413036465 87958968 202535662 625002364 934389993 711849446 722006330 578741171 739663872 279210640 333492661 295686988 838749508 977144960 989794046 310940633 614717377 496790091 676587595 495405760 614331942 930726879 940352072 122979873 661619777 625315952 641480018 360067976 637924032 117210488 965353382 341671716 382324327 767638050 806341563 174661197 447096318 638153138 735212047 642248493 877461121 683853992 920136378 576978934 829853560 533998024 538486538 750559419 855272289 865465264 921916298 604435320 994339601 751429485 832351335 666467986 739982143 153970878 241190890 884940086 963899463 846106533 948412074 675153675 964491448 901641605 954912519 172603175 791712426 480646526 549019139 496737637 748591878 993415507 995872598 103731003 880810768 156243628 965161085 404904973 817387554 148826803 823085444 678223987 713072063 94154091 168242715 49717300 181275483 144445692 771438110 844053013 863437681 2824620 948985359 408533694 462306171 488175883 597989948 224114124 693452425 13298610 538375525 346891445 380358402 107190522 565014616 458172554 816219438 799529300 911792759 524161344 772520515 422755250 832926378 333166354 791859777 823270853 887583370 196068513 287991863 37508307 140934733 938067209 939146736 878690209 921646919 218358768 981684109 558986652 667908336 744730777 769215631 983115449 988992848 630202729 854001299 2396522 655758023 412631001 434363024 564333300 653178713 101527614 197504697 33401202 650220588 500034486 925372122 219759028 802125394 850349525 908303667 191169859 326280628 767623732 822138852 197133808 725971780 396319981 672107337 955880149 982841077 995204193 999048632 94123654 472178401 250103920 835194240 468690682 750491685 152528532 669859643 967269348 974322084 170113604 649318151 846723361 891287352 352322030 600970984 504385400 955837632 99768698 809729588 576244880 805195073 834510005 912820756 246764003 476053509 825079281 963555945 161014985 477729958 137991185 450438935 304304741 536920275 220722666 569799844 784061701 922124402 633095074 676154118 975532159 997095694 870500707 894458311 640133245 809319407 905143777 976426084 602504176 881177707 196695200 986278543 922007757 940176643 271253541 757175883 561932711 621315308 471355441 993321774 646139974 819112129 927392295 988940058 207373670 427685158 49722822 762409098 868894571 949755109 534147041 673073744 56106082 211912726 450640763 864893258 719610222 953507138 780516104 946768248 626682955 933081952 533155302 722425864 284968518 339194624 764111825 814269161 759012080 899584218 326096423 384232098 680148646 830540707 172810538 532972269 797264440 929642269 710606348 768698618 753701458 924500348 982128745 985038623 400988235 836347030 809069389 893131728 402684633 556070943 438511811 991514681 300478177 854294417 717935552 875960787 5971257 878895298 978573612 990412942 807865296 958010383 695637820 891995521 193380318 840327942 966415951 989352946 839097711 926003011 772853123 851016797 238630178 299813155 100083834 822098643 419829684 427985634 356924049 770006339 275036223 433904501 608653449 859985461 449748725 491402787 595753593 888107791 319727975 901537213 116854509 308530364 803576247 955010444 842937741 998238784 278549689 487114598 257173899 975060184 390582949 570851588 204670561 504492656 372855599 384337271 813658570 937332390 746352013 985373237 425237646 853931071 27832765 101997186 520250475 642287516 599955677 971974709 339011153 811654878 824348419 968624824 971455380 992323721 795367293 843234584 624301907 637442441 454247789 767822911 23363607 271138566 410427237 710263056 353094463 834711127 348443137 847432959 400857140 828319757 74801208 758463467 589055106 829083772 290892840 877455339 906698157 947456624 445964715 754678699 191860391 763418094 228395452 904394106 799536995 956254890 775332253 789261234 257503918 463233640 527561808 788760638 545468935 702644074 843089836 911680917 301999021 586751495 680864223 910187581 154084138 470959365 441783713 856202728 750287378 787533992 373573242 992053470 745847213 858360818 27024995 222677516 770343231 827764573 249505504 369967619 37920178 639966210 979098208 988363014 622747395 900908914 786792919 881534492 321328036 615245808 132787588 828594657 885303514 914772918 84165247 162999938 450552905 777928305 825236538 925815883 729865670 936015348 472318940 528801476 343547151 491157689 61774807 393911526 2883284 28500311 282243928 638280105 14560847 756923893 170703527 669194498 982881262 999754627 515308073 670803881 906094347 973323555 39771380 598352192 161942903 987259777 593485468 830833980 699530029 954270611 232928616 773306104 755690664 816088443 796120655 855441653 753419162 909164997 135253254 985916107 595077645 812035161 399675706 920374959 722598314 971666283 338423945 552299436 336435688 779419267 301915280 417638605 161332206 884754795 369030634 581784926 75765043 614433700 384690054 798195121 121679845 321978411 88076231 622337840 421466044 728353403 786230884 923947000 520794897 626335932 642787956 649009814 211360434 626339712 760037563 922412242 401342017 868818446 787933604 831239089 918396389 966461600 473728125 965507454 232216506 308115062 598277756 630926563 821536936 957128535 399075813 594960364 884092230 919988101 967006825 983861878 614013948 839350115 383088650 659071322 203550681 916140093 415035211 545107174 81208843 192113651 906430967 942537052 321949141 929578876 245876736 515226627 561733168 692286642 98869846 449070902 284112174 451711928 445813009 849919662 589640379 804916743 293536493 695695328 127133699 577487545 327384608 359379966 970278674 980586742 563205472 725312048 174281791 857216057 792838331 863996081 384205801 510970656 218260844 284404429 851870414 976745117 450757052 637397307 466248656 539054532 837293653 917056060 685139856 758318554 942665253 991401176 872431134 999228741 566623252 704448612 502874632 821621403 165378088 995477991 59428893 164314412 66657049 614160153 155393152 687964209 118537450 413913570 439331656 625545238 691679419 701402891 144660416 159604050 863106261 942751663 493695378 811760179 301442860 704361005 253290096 780447700 328115168 589408206 784604136 881784107 979062025 984838797 908781174 945573258 702389249 845117738 377544892 457701238 511301665 636453493 197044063 244683866 121920991 595122145 348209636 463175136 397756039 968798460 692958282 790279138 108644250 121023954 137840334 607130506 199606646 636470714 121618236 368590840 604349840 724488355 358676883 432117756 523840370 956846442 296280313 767381898 719234647 989034788 671618006 855424873 54922303 480504994 153922346 748392937 219207988 557687607 336767755 800678910 145706496 866574693 623734522 735938335 201274039 639740048 132274196 232486405 445523815 526708482 644577555 788662148 634494381 842658441 765485741 952581782 526129576 629368305 153409968 912391050 263742858 602965474 513712379 665348019 937589061 952500091 222157640 760838798 944742325 989036916 487528166 699338117 960495474 986715248 307285634 906515092 891899122 905540836 891960565 979417806 34759558 700304864 873436711 910150348 460473963 726832669 262941215 401376639 177880512 395488586 82026501 501541520 763658634 919640613 937467772 938072078 873360699 912911059 926038597 943683180 698292638 845460761 23347485 160846861 996979033 998746194 237871451 543536605 83352843 326571232 211117065 859727847 405970898 626162872 637255815 733867056 314692380 919447143 124745572 182151002 771612156 850481369 687692810 882644529 226141648 790965180 652342454 853725254 449916407 539116396 612834002 620181683 261310720 571810752 260833423 671956654 395954545 860235002 813334715 992077291 853823109 868023614 972226031 996309024 244271011 567183805 536625088 993312141 49313679 712386070 144894393 813205281 236200256 456051622 944083489 968798583 310242499 419801304 845643268 867752050 168690067 174755897 98773312 391096671 623432906 867112589 962523551 980847048 322584428 875136140 325604467 957479329 615479919 879725262 230964196 686681996 204758365 758508432 950832350 977731021 454261480 626100256 534726361 901179064 848126445 899228520 340804032 403867564 749114029 764497861 928529760 972113822 525625464 641692463 475994626 691946403 311598630 428539876 139458278 791865134 448740941 818127744 103367657 740089891 811321332 852941649 624219261 749213016 668503369 973964227 71904829 125424046 906596849 989823801 269844200 871130823 387550206 994094814 982164137 985246387 662936453 711196201 896404595 915863994 395228152 442362705 583615314 685689900 434311560 827158544 163314466 995746968 472020122 580855132 247373584 457607786 269939902 484815765 112936122 545429011 488519721 772281392 676082387 984624963 620824520 967924793 450607078 954042250 210243847 329829656 517873097 607040666 351141423 626944723 265439948 766860742 712621636 975412051 803442445 936119163 567017131 761695328 588352866 917333996 847774853 931196517 950583309 955756427 477276663 547651189 787939253 835041662 537980229 691019675 54086 534668677 532485831 673088492 622237160 957132689 631287858 784860478 32459081 926616130 848578779 913684547 757986358 983857238 544974911 776089705 302188787 721384710 220221563 796998923 167303305 856061462 204438043 213656066 855647162 971702501 887770237 913152131 737376864 754262738 220253980 952375903 674607282 753527002 70360216 116626570 288235622 772579086 8181999 794828771 821892313 871835920 775287999 953145886 474961478 657465132 796734812 893163018 938377393 953052716 819023518 852718729 218366153 663102237 146444620 554166369 6680495 590797000 26337896 914420830 597492763 976179740 698066551 962874469 977329316 983071953 512950798 513036328 432723589 681882733 138995466 441811507 390494587 884085447 338669098 819757123 376057951 696803136 513581468 622233290 320737266 923247255 830348802 869299356 405557757 646493516 718360452 778611127 272951137 933922619 634013908 656976138 777420998 787367540 585874882 717436238 112757353 848301473 132563829 412713815 840226626 983340595 76632225 404092885 240746045 890721985 461768734 696752440 358536025 407638143 810941985 932593524 833295662 866805608 901925884 913135571 445818309 691888083 86564670 972612059 15581328 670611717 57661909 242344939 925803180 978236262 494918744 681144585 953245078 998924511 521520335 646596308 377323300 555464420 549258037 784504457 812247274 977924863 751305873 934414338 415090811 965095437 317231576 467724773 250506854 798007355 832384923 945334340 728873830 993542248 252479931 282506987 808510693 969826881 34408958 287058661 339826049 692581342 760591562 931710878 405545126 511197614 688981756 931815282 990923713 995722235 193528648 663911465 322006388 657078601 897467285 954957551 127818555 307215263 604660110 782687199 447836682 550063271 2360077 894954835 625371155 684883418 622486567 654069160 642922848 747361352 676572283 876745029 830766292 953785405 707222512 826377110 983252035 994397780 383371259 615103611 601290055 763264846 14198837 299914902 135200776 385614819 823186835 841050822 476950964 727248921 165039293 808628185 958505224 984879977 886521863 988615389 478630086 849714321 436879967 672603046 264066045 529606539 225931101 473874108 12611738 662506341 446292237 949511259 655351608 805837983 964878063 997141793 785790478 977422559 926884753 934658706 633516468 957615697 881488367 922499953 554091411 848310343 551795611 873127870 395324888 659686506 546415092 890852829 757361156 945748661 568970929 948826095 404618812 768267308 834317679 924976207 978560019 999096417 211831893 729370116 872668846 880869605 217325240 277657369 226129959 490071690 372295191 374187211 796445882 823089077 339448838 516392261 65275392 298432659 983129026 996513731 604921447 856686732 751530279 945633612 808388831 942688305 780775249 935500881 274289486 956815413 211659034 556520369 869022677 914797470 387156178 747068250 424886934 603365767 577870235 684315704 196741237 578403477 612853401 961974876 354530818 613655468 769138714 926877697 238270293 646329468 172919585 203721923 627947823 934160684 314908444 737151131 137718195 728888109 809068683 952752220 613140452 825620838 606736678 989132974 402423946 786959566 408743662 987658318 180425818 423865405 315641632 516599164 746442952 960756126 394755760 986847744 87932051 747222118 220014551 748947056 300028936 888823872 946487928 996991238 455218590 681430732 773466428 988618648 961156191 962022654 338775193 643548526 550457712 880710213 942926410 970087481 392344447 671264908 687528277 798143380 709788526 751304476 584267145 961760314 717320955 948013554 739646136 986516633 10026852 453062805 26622776 651750515 50345155 825861385 701746481 866949227 727396407 907007823 341956228 813409177 98360587 263173174 299160730 723806997 718752450 871505332 600113223 918004028 296197393 415078955 476774728 924370706 162603311 484081976 950849861 996647427 550773261 933041121 78203951 820027808 762283883 766644319 192199241 637895315 53315908 651998084 662324824 762279922 691557133 753316695 609819550 887072169 334900864 639484854 16855961 653128817 52975874 679728658 254551847 362524097 169621757 622740780 546881886 692855725 951725218 992960994 888828117 912463781 550707772 743131209 389762269 705829103 351892416 788642737 807391954 834252893 37947384 678131602 490546043 597812504 449187125 679814089 62819258 189095308 623537399 990077605 720437167 805541790 216550844 389008256 588880199 833536259 861087000 963972022 841999514 861092983 54263975 403502372 226523885 301897439 932606943 941535544 334341903 524960903 340497950 437181970 896952461 969854299 229783762 493418615 267843650 312635009 465438976 639864597 727153019 963512926 970276253 994590367 836199132 864285394 202760187 498191212 365869881 401647514 765094080 767890907 253055456 422884325 688891640 726444115 799621312 914277923 268880382 915039055 701099760 746965966 491622143 640089250 163194668 762657196 134217439 552629583 941506090 943847069 711029195 949867005 736146017 915923037 942140682 972812143 790200208 936570034 981045462 982351532 141568391 424402424 248481792 277494771 828690005 936763528 542508967 984317571 223897186 487217241 724006257 898131561 859435573 977687952 742110812 897780599 208128917 447562132 220424700 647550165 495777176 499401002 167035256 829253489 742666329 960209152 202137565 331997757 89307907 743105944 916800419 924551858 559234850 694936971 628339048 985964726 555374961 772601405 717505202 742903654 132094135 239341174 481151465 936478802 276730541 412656425 517569051 723564042 942148629 956170446 352974469 514285551 458209204 680489093 701504003 956956166 594673648 927781412 55380343 66021529 930667245 984631404 5125380 643956721 996637614 997016786 356442 810846353 79312826 469974588 900078524 963803468 429260389 580192208 707106950 896445872 444934026 890959543 788936353 791821777 900980531 914521841 332936120 597691539 407934906 427567654 342869374 908501511 294651706 553948918 945182061 945473764 170238894 233077077 697593736 971024800 342325493 358279707 2861240 986341035 770923097 858050103 58130255 153224446 614679126 825531524 596905835 992866130 662959695 985500003 990873305 993313796 100682993 724363325 730211021 869845678 730093661 829011101 162876505 374136115 679681162 951297055 20895949 788884262 84839624 337637053 72156933 269407131 60312846 99149958 186267437 245136122 260900075 369336277 696020723 855145061 896682469 908524531 514647182 600306980 447400453 707344788 874219453 952301403 591235195 794361569 274016007 751925542 103159383 439517037 542939043 731508679 818592238 916440206 253722249 368832666 889680253 916549232 113964057 738070079 979595194 990048706 520707006 879741373 853724414 912997016 417197379 686099624 196517929 853525451 694873261 759481534 361174187 395781713 854986183 858609296 629512205 936781465 265401331 929795565 802012240 817430118 42869725 112381951 754953537 943447620 803820371 959378519 494504032 526067028 125447726 643376092 263806376 592511474 221688311 577701451 107459570 862614879 969115310 984621139 756311160 838454249 412242569 681856913 654513145 904482800 792838859 844506051 480650499 545354567 579426896 995592668 290401181 645824042 757611447 885305967 361782713 831538229 445424128 712726931 757465849 910153190 673764023 936035462 585018901 803471646 141129895 640246419 341127039 590563891 450907156 848866740 378459991 938889151 418245285 697972514 685009990 938167372 167668534 968255404 505338481 978283770 919111687 940844659 383464243 405277717 678692143 718376073 66586405 322505044 317912872 474444991 322429457 703467619 907152666 956173754 396119285 681838118 647588750 734675445 750032066 866329207 379197582 430108098 186036450 870331182 260015137 356067499 963290530 991820898 510786792 771964356 835838170 952931957 329076111 584787457 253425655 546678753 735206159 818787752 716779794 977793181 126497366 543848046 511414029 971078730 259227921 501947995 899275671 911320655 778212737 787214604 948274177 982554247 509367044 600581451 998814112 999118867 199949939 358316585 10829536 321797400 472585759 674469622 257361270 365669944 530870156 831798381 200077552 885802250 148513318 402970135 933719604 947485497 73498017 594409376 484055743 650661413 719571467 814384474 269959201 277457216 324344660 571124209 632535286 681139244 703539265 799202583 323261651 498799061 831694743 862692247 238470791 647184933 638799589 824992052 309279989 380004671 534000650 817925957 702176440 866058745 445377238 908239487 73912483 931560381 212260670 461241932 175964614 766287173 665418220 686579254 737565445 750678280 43222512 87770306 262358057 823408437 160586870 485106734 130283561 191062114 831671815 996174790 457024759 955233955 350701405 866714321 9278856 762816633 705895371 887238953 968575520 980636107 502362906 951908339 154928973 302632112 745126410 822840483 134653854 623317153 920869715 959946982 487993802 802771247 84733495 508111250 453773025 960849997 764103574 987429619 360340742 642523201 492936618 885051781 611117053 645223015 963914057 992891278 581815339 631629613 543144518 784026702 831921900 986834376 470804986 685433562 781806990 868503343 806474557 885590996 820409016 993894746 354851353 416617906 973938177 975520686 149229893 310859028 286725040 291126450 872523223 874165517 568781729 704353440 570062792 793742619 495244513 586678492 36253697 695831871 573978747 660329678 386511211 599349010 921612894 971569487 707465376 749373180 168778898 993389907 462211593 887292775 700931436 727752861 319413193 582891499 979778706 994097923 706803376 820415563 917570757 951665185 698187477 739919726 245409073 784532456 74200132 757028464 101072502 784074277 266577758 274955077 61047617 539013043 620137969 741769668 907828369 982930682 654373334 889187228 276616071 555356252 92881465 845576367 277857458 562616420 960127026 991474103 676671021 824595144 966407454 998710528 424115514 811714037 162804877 620210822 375804223 382974826 652688060 980248795 589575463 756388757 901861535 996266980 821951699 901530892 346794244 372272243 327316845 879248022 641603576 824336759 718324297 867677027 228663996 357868542 764446637 993406315 977109837 983381991 475089672 526846114 571428131 739007765 546109503 898181443 94982210 403283121 685634006 987034542 706254883 916467750 995137234 999542490 657268661 922722008 52491228 339891875 499198504 618588099 184309807 892840893 842159873 844401589 554490330 987350110 391767218 504174256 154392748 726566720 314557957 967376009 379493541 631702315 228867943 587542690 410804647 555326180 456405184 533397316 176868954 461036739 685042228 997914642 297012458 685033650 333188247 741834866 236297691 282012109 459549278 495649892 551240051 581509240 835680143 982345968 85918605 589291826 431935636 786629688 131707327 768300361 617122391 888976744 661989482 923566043 443921844 910325826 446341811 483162295 845048006 849203679 309615715 476121832 300248764 368085992 922897628 951855119 111944414 231586335 219019485 847271297 154655249 970862481 614907329 634356662 384266067 503905954 61001080 623770661 901066064 995796564 234752798 498639951 938578659 953362587 678537525 945623100 331304984 521368744 879785605 999855384 855005608 941108358 493327614 784478137 570000207 982888100 910565519 932425095 498849179 887477039 97925908 535300010 449007665 863925384 858045933 915652869 407004181 820207624 253475296 572480135 3481025 545500481 879417115 879429300 87566848 435915323 556055680 933601702 123619110 820814364 992068987 997439735 597809311 868218801 65428979 883952953 394962173 648606824 87556479 163831378 226035124 758581615 301224560 758812507 282144103 950009323 316200530 452053401 592542433 882489996 549620397 835362172 200106686 280171935 810152864 862909510 308928689 715551098 200316083 338333940 631187533 758193089 287390256 601835013 374085251 694022817 240214011 620188871 742078201 770680536 411291422 468995363 261696983 431357946 491822317 906133583 774366339 853308831 440802123 693386524 438701939 638791835 902389660 976291097 530674724 638609342 660695820 816844236 798283385 941554529 902406513 957211843 164621546 678380888 659240662 875985627 455678107 618683755 461690198 661880155 464712609 744400718 28667619 680213597 994202780 996136453 818717297 987224923 546703274 952460000 419750852 907121476 880340371 982702313 897334060 899272217 643173469 901895753 92256919 520705359 846039592 847119874 598102308 764603444 783560940 806084295 654079182 728801076 592706552 864102432 288304450 316788406 450162349 873309871 545240362 721290861 812398227 998214169 759461101 883929233 694490138 767606811 188719478 213582843 585933856 803295933 412815181 747309497 295894439 296385466 508359501 908034824 423199124 730566254 787463883 846365084 993583883 996975184 274742262 275421937 459842914 950021290 245540107 684444088 143620991 247444150 806274690 819406319 403347330 462702382 489847132 525408912 993772183 998838880 45557353 358362733 758733760 819348349 419090710 574378467 281063846 949959963 39815975 862158770 696415399 733098826 429831133 761648111 557483352 845213954 958344811 963516809 699264091 819326604 506175681 930689697 301893364 361378615 911145151 959872847 822207490 838259532 254706078 285345161 879340063 907361166 824646931 921006761 283488340 799757822 639662324 642087530 157111164 534447203 89814725 890195841 102174347 326096078 533921632 635633513 740842303 921771124 266803168 353829589 12879156 169127469 59226939 60467176 364548713 610770999 932997556 963288538 556872735 927060380 579732125 834856177 547625964 949278887 352503269 403997464 610760513 770727509 19130200 102495457 317653427 861405100 408884316 972650058 334950957 880910728 256644519 957335504 977609349 990697350 764542484 981712096 569451497 732936898 918232404 946644832 749059041 915004538 349094907 708308667 909251944 990092398 50327326 246805450 368213128 579723652 528656014 799057254 5766743 348680446 922124839 986376721 185286637 993894588 786718876 969131320 608363128 925336360 629852466 892358293 451940545 981633956 236383833 949142603 171964529 586925557 156585024 231031637 41496591 114300243 688786995 931256647 273368513 551225073 22533115 609120731 931499028 962800230 170665289 486863548 930237217 999953378 726369513 915085360 320684413 572935934 928765523 986343930 303553247 643197347 335140715 678840284 966638449 973663284 298050188 325807740 956026849 984247006 662063309 992458120 690960173 870971034 482347002 529921097 30703916 94901188 553650856 856945498 917704314 964471522 501727785 681054431 587260330 791296295 232405840 952983034 218239239 808983068 492118287 698840824 99204103 593188643 852201098 855534850 734650114 794025046 834055349 921707568 618288569 938250536 377157811 854759544 251150051 819257287 260522104 463895616 34963644 119574049 313009361 912072332 671097245 936227857 239683032 563128893 941646669 945821239 316201125 927155858 909214497 993458341 799194036 988461738 121044864 370335206 852780603 910680059 316760654 514368045 439061953 774651865 970408861 970620704 197126480 284603376 113290860 962606554 87813232 380734156 186566234 397333912 267676764 602174777 305141767 420557873 424179458 569609150 25880666 213849289 480443777 705972670 238067839 739319611 603016220 942969109 540452787 625537715 772012069 826544227 866192115 897270204 283793742 433913885 471961476 748275374 34874378 443905204 550129372 938356489 969563116 982848164 272352521 343937557 257572623 595599690 257533216 278236922 560890756 759545227 610343017 842318951 876050195 965507327 522350136 619554837 664649488 934226187 466331204 738760805 540088058 809464535 587332549 935406807 896466067 941352537 658130620 853692699 414924370 757684278 495413414 566261274 445268463 634089455 658131564 969935853 12287388 428654970 657899169 897061196 425984836 887421520 26879210 148769340 368471526 902518497 113525060 701902667 338531439 351976421 984550511 992661447 980027989 998565612 948545580 961443446 603099617 703580009 938015682 938152286 276394044 431384218 691743815 836485155 67149697 664077266 541239704 906063918 185765460 503163912 990764030 991876928 697545679 938624747 712942825 726684375 100029600 594235889 162158632 927682264 398503085 627336642 391186559 707884529 715681172 806750173 973567600 997570092 297457901 380919557 561231947 852785444 904172037 987706604 101393141 679616792 196682037 539175966 144902577 904846984 596968870 679686651 734326090 879582524 749497411 750293720 690348006 941108037 919175782 962099822 519777333 958301236 54961908 524132266 33172076 894481947 968387635 981612587 28756067 744797546 884144710 965886705 120789707 384168360 786739212 808970565 437472145 846201719 265626812 936062883 436622444 732300606 588186797 933951844 645148402 806226814 528351111 757541772 32360435 766473601 42936297 770945338 162237923 614998385 533045428 705455948 647349901 800489953 145148467 309416083 994789812 997686049 513259579 715977125 536229379 954161453 303744356 544391531 485445038 522240083 448679742 701939669 519691599 849700394 939547200 939995307 19605103 385885868 262451321 433349164 976075900 981933781 613832387 851052158 163023134 266827550 653892787 682483165 350795217 639196829 368412815 691061042 385838025 796246261 513117578 974287946 612785700 889569026 578754235 593533548 155831130 571192260 791412840 917177188 137057649 186116136 519433465 631024979 598627861 662727657 457004825 956746829 89899475 98363366 835011926 921630069 804339352 854277000 773959419 839551748 768188342 784721779 884804278 925363714 485299705 666835025 189027500 907453992 323473207 931932321 677393242 714967101 906744631 990480515 738465118 875454250 399460290 677756780 72860736 684964208 665368035 864408609 127192198 938228031 996960409 998330780 112201989 953973920 723767854 926570156 165537407 843542256 862673323 964667736 711888999 880885727 195129577 989191448 561819088 932563073 668251384 711100102 91802582 745406391 202149618 754589692 75341328 419812539 90449418 752924605 197469813 929049521 393356111 401150760 404300943 739868694 830163142 974908823 736237250 857990639 363920304 534313637 851445849 933567557 30537818 646993093 950957063 985623098 971682254 982323361 163344344 278814209 803161791 946746197 157697378 415578263 690159967 729058088 449436570 606526554 47604798 118992877 679304578 986259222 32296064 284443386 882311866 883638863 466789512 615324792 365604617 980905409 642785770 800735417 246842175 427694609 793427209 958378618 943312312 967066985 620173649 645156888 352343169 525422541 455533167 823944572 538614203 900668456 205098055 305209997 147149665 648675392 70975177 97931404 571542846 787582548 974496576 987954426 173686194 716969024 295537428 296779024 943416206 948712883 173781772 224702910 355106810 621861887 933426103 950655170 66150288 476528175 935186991 968795951 729595683 826179718 713350843 804725801 221292908 984442509 26548734 146493833 506211236 812138197 986191208 996914286 243958845 454487315 632985970 901981957 930834923 935465629 940445716 972511255 423400202 645609048 464929641 883140922 660820935 916214560 104981051 578582531 413627561 824518038 792879364 948406799 963420955 994794059 758791365 908477649 440706087 956245868 963424249 990537631 732095257 789722654 495263073 557609638 969688464 990591810 555813384 891569775 346142634 350789998 813479396 920987575 600327737 700247789 775347371 981844243 634734898 993999233 634197731 944752484 278809637 445357356 698764535 927111478 708804095 790040737 681824163 706375517 320065895 960527016 640609133 705999408 736422107 974932833 668921139 829970721 306158686 924573989 270366475 968171215 472684824 480107719 920896232 940340173 67655198 459153500 897027841 978082816 913666013 929299989 445453249 945590797 45623949 623069614 610652646 969638077 413245501 908163474 581420375 910939939 156191243 399435143 78690601 466764987 402679672 770921750 91662021 680977135 148792791 536056728 2243792 692775558 465447307 541816395 178737228 882894482 101899689 765428795 982275562 983974233 169026747 271328041 507218980 923238714 871421802 947937047 237330263 929562429 502847432 898955711 890182151 931897821 682626444 803480499 844128259 899352568 580625937 999063311 208246206 736161431 550160645 672953526 581927332 733615529 126819959 712086833 382662823 624555378 585517227 690771296 966084379 974653019 613090165 870608976 728224108 928600056 565873378 992044835 141488026 147432344 467270166 498006535 899957799 945314684 910948823 944185371 28588126 740409639 829364868 965219708 307941384 811079484 602583373 838815013 788943869 891307761 278948885 806237541 854340821 972204752 314870319 996964912 79285442 308154229 743205724 777248435 427692307 670212812 334791659 891782223 805846971 935834972 793055184 898675343 624254203 635428350 11458663 117889395 589851792 617425649 677100175 894481235 165054093 603200872 827301387 906376276 804481051 871497994 683537878 728822919 711571593 965333335 507765756 726560971 264128853 598422624 568584463 870763514 82067004 538040283 734584914 802355481 709145895 810788151 900245503 937571055 327533151 458232314 125804759 416371719 986210854 990403603 154181659 584125740 296484094 655736103 691301926 895466853 775704846 860322926 711418128 724767756 540457098 867475447 537700211 679710720 326448067 998823596 364178036 873187118 138129328 187876355 925933705 942794792 687745247 983120029 636227734 814702232 581188100 817646772 583245407 653844292 227324691 268805896 56620344 823862875 326068671 662264534 669447436 863293522 567866227 962988383 400329277 889980344 883842007 915691396 340939346 803136616 732565373 860059838 839790575 986264704 221646099 813358794 758771164 988519814 8920555 209351451 492232867 717068416 489741369 591496944 359231616 806757488 553015224 705163656 166497924 752288930 596973583 838664354 30239985 202936292 576650074 656798049 233849958 726712759 943535884 959971060 279272359 674489822 806933185 916204764 507491571 606996415 136088550 508217736 918440497 948905075 620656844 633433167 864349656 881186895 199012340 350047268 312733675 816988175 782555208 850549919 913035800 925764295 912707417 938735340 579472901 699193579 332070634 662148530 568254782 790863614 218323277 665439408 584685922 987923946 125214981 711126792 859109340 961546752 495723997 759712395 801704796 826587968 676558113 862581104 689769537 966799175 858794948 931466129 507324224 924724021 172759942 213310584 796996990 992487809 348986081 829108722 452711410 521707456 492047364 552023079 628216244 810109214 562011673 716954335 2058218 777138869 953132411 990295714 250734254 841643235 547922238 551956312 628800043 872490043 816120747 942122646 34880201 91799261 463034289 463903325 979269122 980298065 148322030 239339108 370678945 536929647 695470609 872563259 380824688 658931444 904227334 921173176 856482680 955407584 622721543 973735810 94134204 630421497 835564620 911918938 329840672 889883045 333330643 777652208 249264114 605556167 284689695 557325263 41655979 429792320 748305176 906338154 302225961 431007547 521672395 562144269 861907112 989322554 982380835 996379237 962308345 993180666 337617260 753044134 90853978 349416359 879237215 976913736 508173283 706667558 188886178 709533171 114288191 674889051 639477347 948121234 473335293 612596919 662924858 860693786 859134172 912872552 549161811 878262051 815324052 909209640 869533108 999057246 538283287 672418885 58358725 311237993 61701516 951090762 933168198 968645080 392023117 463998465 839382400 925312267 234036114 325903168 57908194 590252806 290656955 914739028 478008595 890839420 484724267 800719317 841044450 854513555 560096225 932006824 509437712 872710856 320848113 858250149 695116912 863984270 983971122 984682271 13616422 17726946 207025854 924879969 149400844 532075016 832606270 906629020 619935997 847274374 831406158 973350210 143317912 234643410 337016408 630153729 682745868 767798035 69681809 462621154 787079579 848895318 563454354 579878895 939524807 991912232 326132556 519744904 402280103 848113109 481768738 877725322 477341779 622982664 128853482 830800918 884715491 963309822 228762759 860006029 626905778 717865862 295765327 955705157 463701217 916734706 886734375 963834823 668902692 832914843 768317386 773238640 183306283 211306366 379449265 924065708 473027672 656023816 461400040 528224513 325774272 927585511 271880982 673977236 66459534 271247253 951281789 968237139 572366301 701872279 886818999 984592922 559534643 680551892 635237636 717236089 935170907 987396357 736560139 745603085 491783288 542223012 198652863 786502015 452263476 659333158 760847166 909488676 203899021 932599151 890206122 931398920 592040893 886507455 619782705 879028384 280725639 989352729 47715064 610684933 845302643 959611709 955520134 970147047 744264808 778860652 363240612 929535953 923898020 995751564 799446049 882060648 848516255 925057980 127372096 912843888 332402387 639183549 949985353 982308631 164721872 380868932 657592918 737485057 567833405 771159717 694017035 870032614 407560558 891705453 562720447 708913706 663503746 882270652 803151082 905248176 853388548 863818721 920815496 933737801 34446916 700714980 736934274 880551993 317151298 695520264 459895376 988158869 156236426 528607914 661333122 708388313 805574583 810951463 872450971 968723325 694120928 810328652 42738138 310008562 794142705 924303598 643815869 652793164 113166119 294229471 335215523 597718957 713343668 886543002 210533339 968498763 999898571 999907804 3795404 969951308 998446262 999915624 223150395 867093058 293975136 641084597 31964182 981942714 896395075 995940246 965842943 970133275 722491176 724096873 634544894 934909676 188364389 723953023 765486803 822191021 418206759 860819115 642945751 907864846 579112884 719215587 612290842 922942865 114416044 965276870 964985757 992447776 20979719 934956902 654361373 949144549 515699803 919938705 559685875 813426600 530069676 571335307 824001392 969983147 360824513 413147777 267325323 987812298 686938646 897850118 476836463 706940286 639288336 671314141 356635490 958327998 186685531 601862510 106524717 908600562 526867942 862743835 859825025 882755893 645094490 854217023 896220550 974746622 544583278 998615153 858237842 984449828 339002023 938477243 850188011 887826664 679209416 982434289 378712108 533785719 498915550 684197452 835119816 923192650 267731144 789917496 734678648 805527906 140198517 389843594 464987325 689542358 185361332 783429353 293243031 428443939 751984438 884699437 770953243 827333761 818685791 831642530 901071059 919983020 941341120 985653442 422490636 713547937 657169819 681360429 914683665 962481646 360738381 909982659 659281884 784415243 665590333 938158799 287070383 914249460 633055139 842050988 570948232 604404276 775405331 834284959 199897544 899244886 115563388 826527234 237544097 361207682 158874658 428206755 697275438 697536921 510647837 582896755 520011519 891953863 234198512 370812956 917937304 920562916 855950313 890040981 16489319 40415550 956867067 970522180 853910588 982102822 896467884 945418957 942275831 957358066 412007938 903798972 47004134 65349006 425574982 980917595 361891563 931345912 141473179 635680790 602594683 713033762 275503001 721795216 98974920 790118074 71545763 935131881 126105356 611250883 375041861 986780553 633027139 916752096 518700374 786191401 437064629 966070494 752696626 773268441 74336201 187303042 425509270 882344837 811656351 829887618 766678952 855984065 272172933 639594275 932949220 935327037 139664907 465322913 328173393 372219072 355468651 520067912 365872361 373634815 61743633 101687782 131583148 809456694 454750504 613454456 896590842 940866802 695829880 811572858 614144737 828525822 563463065 631951380 254896965 273787566 312788549 402739634 853698153 981407645 439229998 597358373 829484509 840807332 38842514 416582528 44485820 708883277 234696893 670620804 977695129 985573994 433455335 649624763 627352833 629271587 301571674 664055192 575650403 989658118 274438321 560591057 926557942 988367882 811645663 920428976 554005984 640421185 281743502 719686276 403194747 881899489 769201766 812701998 325742885 827690182 738477948 980968383 549948039 615320811 372291508 531199511 725875251 899967968 769939156 992424219 1990428 464426698 108871978 526924263 468301723 741421971 879851811 887299960 492243873 565373174 913609987 966769046 12799749 31480715 968220073 970605611 541451049 808076073 488613415 504469589 154385441 805009180 74461837 893382879 172002052 650702899 650382482 861452623 136025165 901897463 667806642 967200972 638183745 978510471 367589949 569038245 738791644 805586136 328088166 732436931 381713324 998557943 550281878 587930216 10031322 841804273 414958448 569484193 379160710 636908843 616015339 682169498 952850190 990431823 689012859 695595875 351810682 603953701 291672848 550968365 50031751 361607126 681155509 871514564 532821393 816503272 84351844 414091219 295776200 612876419 729520511 823443157 170642386 596387759 854459121 892776159 473947746 865299118 206171697 929810179 272556813 866967413 633156193 738737982 409963291 872251759 190209236 514766981 738825150 808165312 12047251 191502951 963967973 974404569 168838620 724351485 44679895 160211937 193545796 350423846 721782530 782512905 831998490 927749186 913521045 982899470 371916014 898791322 591752560 976557718 941473943 942923752 899766166 909274513 424613131 483107824 411677281 502682401 798626985 819826346 373744130 682213563 594633145 833621948 139833116 520965758 35374997 336969591 12164326 796280131 143814635 635191954 603289081 638134995 313959531 505262044 505907358 691343353 82326912 407178460 907826432 974598594 97476463 823065489 296741378 690357249 57187672 631395456 675447855 905310906 740943815 915154318 863872824 867508094 835193980 893662579 286193843 623053305 407409988 845628088 939584190 991047159 378722591 757038637 72657009 889214276 295104128 881771169 807184394 856777656 495451753 520323391 809212346 928878482 369793051 434244991 908724895 963938611 66191951 613809451 572872010 936949454 472127340 673324014 703783140 896581851 749424595 968561735 590415175 662735218 354435062 562838488 299208172 618793634 777801128 829017170 353406164 859563543 283512634 308552427 546965046 800170486 160026450 893916029 278017762 393176576 851982052 890450313 718912119 814306966 508300674 682252048 103321459 742057943 206074364 331431084 482397143 951430951 748564323 798840448 560242988 852007387 251945138 813474019 284613841 337795530 628198627 694464827 465102559 837327329 714963300 751320253 516068440 909547033 60869699 358744744 395502697 535205009 211219345 778169306 674215146 841016509 420149292 633003697 98270505 446192467 588393361 837166820 38643810 647812211 40386046 600784007 240446305 805482194 238623496 857801599 85135420 651515148 878757560 920918879 552675018 988023670 806684200 808554523 229816296 238054946 871604313 996445681 600778214 997846191 646634839 917892666 76649889 378260857 454828882 904519820 291426515 752845539 259163622 815093730 656062609 951177116 761297633 954102088 993277883 994797372 673077360 831853667 143486162 413742712 560251960 887154927 168926088 616778736 127547641 183981505 261393513 554486143 285045214 315047458 190932111 268639155 702565668 805755902 514205160 983709957 515118100 812577422 498181719 598310045 118306272 997184872 653863210 890265570 366418481 723068869 161087069 994706999 89541216 575324623 681025713 957198457 505744432 964743919 348261108 736665340 857551982 944546427 751601077 862954290 598086253 856818070 721889109 723951581 830378292 890700453 194077094 457289124 264886951 766794328 860608227 982925714 954598580 965180282 442971801 837732747 469066187 596862207 349959560 375783406 372669860 695257309 991778138 993302807 300798514 787701211 83150124 659781796 545687290 832380774 5374449 515458163 206671791 570965112 119094587 458941204 993006053 998639346 268789613 333591967 435468344 965918262 432885960 834563386 395294926 471721382 442933251 746932355 571617156 855119402 967698579 976832687 529590288 601221823 990388638 991322495 908699664 984600141 645254929 877806899 831532712 911213686 853923538 950111091 912652802 955766304 725133494 923501131 194272662 960108866 713270817 841223741 247344908 600431727 18309993 283513466 826916323 829892889 181117099 753741905 925915871 968395411 355090985 503522861 798904933 989169711 323155402 477820644 6788924 67860158 820782937 994016534 963542348 992317071 449341667 704329248 368425274 743370803 11982838 871214373 335652320 684619853 85775179 539896313 796599793 947416601 982654180 984205862 851370563 936414039 902221114 997659613 444507993 861489376 959891949 989413699 867092188 962328298 535716025 786115373 258807562 847076547 390261300 595741576 269828261 691747853 544324444 853051417 491338709 850037945 449688152 848568654 661536153 971363285 198067641 856327403 41994614 412834660 540379405 576201549 765443129 918720141 20810938 513111720 94703343 510331728 541840678 854789285 812837119 877295068 14912628 261549262 920038697 993692487 384827047 471483109 330156047 555209721 159621172 407890433 245223242 337695750 332599243 866966883 624957556 715964309 190998720 737517117 366804242 623786607 963514649 986847609 574139080 972769172 419256522 470147577 362781443 410064196 373558632 898918507 579856569 822044611 625352678 640378969 917641610 957186433 788981985 988518969 46231955 692749769 682647677 923875187 324911761 743697441 282912594 433503511 328939481 819811453 121268684 223637384 193828797 991559726 843621507 964809855 524957836 756026970 853948515 996653823 493219306 521809078 214108509 735394668 542645828 843110304 10918970 52291642 113543621 465089111 243793064 809019784 626167682 760540752 726942872 846457895 312791858 894681877 495191260 627903855 265429770 683255357 149740853 245955591 32010264 246739202 30534241 494795196 916159632 919560138 445374801 993741055 641686785 879875477 977798406 992550838 869700638 912071207 184256522 370552610 580234716 829880038 972081164 987937951 720582553 833343641 480216134 516979406 778794655 907903291 12467421 994813241 744227559 941373452 109490837 281464514 510136060 581615331 251276195 496569498 404231337 785941951 319815262 379629935 287140042 869274525 192490595 605367797 737884457 787913655 2454707 287567187 434144315 794453654 490618589 748659895 621196260 946488231 625934254 878401114 627792115 804764335 989867526 995237125 365130520 591690003 155563814 446890484 402220573 960350575 889580853 975961614 881431700 983336773 122214289 590313503 629988523 727765716 151754435 984618653 256290335 521049004 588104470 881060695 810425095 897331940 160054410 356473253 699672309 727490966 955043627 971482603 633684980 947366077 326704386 519845611 624817715 851751223 283518186 684975676 937857533 999873552 248733249 297385162 136032463 246688519 583091541 600740882 360485512 729577968 778491093 885227352 587939893 805242908 896598857 973884805 689586952 873192429 423168130 722810840 159011482 394796626 828934144 963117555 911450541 992252803 432038234 941504653 176293930 776311832 753853426 902609561 344896389 605028328 452439366 686231883 331448577 900469464 550697837 576960352 957658298 973790383 177049664 693024951 942549569 959184887 654214896 875284844 886755171 908085117 335994751 722614459 361656770 871607289 8731250 977289572 511250549 799089152 124520337 499512375 440545527 558395322 662389689 697594318 668138270 828893765 81568877 252079202 948302219 958104540 80132875 175121120 414415340 500433946 422104200 576580917 404307590 887868929 165541342 912748117 28605719 232666556 691192899 971286886 98909440 141467709 69098113 668290056 742680667 893432885 343410269 444886711 453442986 783071930 424519975 981260099 191816505 313473111 334728681 550929737 948825500 957049197 303229886 845816074 978102617 979266359 903644718 951992122 289038089 638227715 847722413 967416168 936158832 937707267 485448048 560627301 249992334 804144454 403401023 403830242 964683528 995952859 106640667 692923146 300440254 432753162 786861714 991274673 443676890 856531094 444616778 466628657 99043500 168306357 731220733 834100252 881211623 962900846 67354334 308604476 443881214 450179440 982615916 998339602 369780269 793117412 280562073 675810081 461811642 543090347 965107400 970795445 126915322 890825964 957129857 964860403 339757567 776903442 353790166 470537165 560027950 948713425 940997058 943471217 27618985 916615889 388193934 505612400 845766770 865301119 908658122 962878060 952032419 973095320 379547499 427295468 449919768 631308283 577297978 757924622 867996437 877687018 20853761 787978176 423481166 822588404 662058429 790031273 683685440 748328879 890490672 926328535 357731711 622163283 965823207 967101560 805635432 926667424 934674678 953964068 666375907 742316762 332906767 734159351 106722099 359417070 580267767 619249126 443650779 545846087 586568836 708311862 241800439 805892065 955724387 956323149 869988615 981102086 739948805 936464395 462335474 946722481 717214828 911622678 627029907 809825379 205304930 363104984 509849840 773718341 496937700 618098768 905257731 964929405 436393431 572207702 366219865 427986833 76404693 363223388 927953155 958368932 47481294 484183931 516272037 643244902 425089178 437571424 583849353 882990354 507647297 641702580 619394696 993810679 648098553 794050424 113454259 968983477 330818695 482549415 127979361 287938122 846995406 907664972 684893057 760371890 675558167 972585293 165956662 207948268 956752688 978741324 101270958 757889121 392349918 753879994 867423443 983664424 387828267 466524210 49661710 354387586 245843261 893534802 963918390 971402043 905282229 926435016 205416442 557657637 707962246 992461599 977376462 977885815 292082285 536338761 17530731 128638224 39250659 552959776 75913139 434875705 649392429 851890879 992354013 999197827 64296832 770836601 159429491 875251217 328294579 578780875 739841941 779981688 245851739 885464222 541766890 944069313 79561203 617424832 796972207 982789582 332820762 931062727 221128921 458522359 835078797 936398775 477962845 493615333 806385890 924465954 222209646 537956321 457405894 667731384 510531953 963989946 344635375 686537787 989670496 989717110 283092090 910015432 427000544 801777785 766999317 795898024 535889339 988748204 433038491 944825906 804399506 939374200 79460291 153110178 49013065 503500015 173777793 682613424 518377210 795886781 749088726 839703868 47486249 603046056 543561108 744173076 295538217 401160558 972782177 997653367 139718144 340328070 52611405 84806573 975074150 977570547 49616172 72674004 936979275 991691615 342966041 557356933 631203876 704533121 878332400 896816322 365428239 985092350 925896695 933862869 431491924 542269804 9326462 345357702 140808974 337865231 106973007 431689793 357899823 728987796 198483153 683504182 283387115 337449165 983335912 986553956 905744658 993236402 274788401 473377524 560604091 983012369 507712868 554871676 240370666 246117734 11085880 208480450 99975067 725073485 983646797 995028986 581262863 612309692 472375136 771192045 952396538 974193959 569764260 674548671 900532609 978764777 553308873 655731580 709288676 931981663 965082586 985124411 743985816 956796224 454642521 766925228 370324102 964418729 998485230 999257583 653308594 702845235 738333543 989060866 953145814 991937436 237048077 881870366 288861408 806504591 396514500 828220593 672652063 833194282 166064691 614444372 503374732 708736249 558481234 675233451 441826544 748514900 399805815 626177321 368889949 592968179 692959186 818425067 994470300 998526423 214369332 996977041 840705922 998659219 627857812 735405235 360563730 737528013 1921375 83824919 727626552 772019920 482289074 557517133 206448073 310567557 985472325 989918820 678694242 980435966 461694154 691932895 821270660 932618979 404479507 439477861 948033882 980474091 299570175 952932578 888663863 970911964 95115522 229983763 933006000 999092203 252773780 255972670 940503849 967389003 846761843 861111129 660403377 815409840 478308140 782474103 989847944 997988395 845448573 855045135 236088967 397956616 719846682 801454712 791528683 805457082 101236911 330127705 899889010 900386882 824793325 964603409 480085279 779952986 393767230 560333331 594225157 839143273 397912778 730048512 648221366 862642651 868950181 984969876 189563954 645660267 611833222 801116723 545323004 865157598 986069936 992686604 413296167 414189583 116520231 634955824 155985160 377431672 504283188 794625970 687181342 911027615 871483974 884437403 890049174 912564166 454932176 522928242 340251289 884794566 270699544 427970014 840119201 975421467 976730307 985676863 818927616 970754784 672140046 891846173 663819061 975352233 222324698 491604908 481358589 898225430 61243504 967994816 268662045 826875722 343401688 918577978 218553150 556031689 970975802 989487624 46399276 116769350 617465616 972648022 783846054 791996097 552279470 638593354 588190347 664862555 63768189 461733274 106044699 117746301 445373390 486813814 818293905 857914175 615866423 829650566 415128854 845921219 493357696 940419556 634170245 723088439 17134990 234933300 164958167 174136818 183628225 457635600 708064192 848474459 46071482 713576205 820180423 828262551 457758139 954547489 769492932 811934282 702689042 712342216 679079239 720521571 678426767 684235812 316327019 807086224 483719062 888656679 578899250 920662817 386512685 996795864 711362366 946740405 8680289 601790583 407942179 646839662 232785537 303800652 542886801 941342297 546062783 573788199 401941396 760902919 953802531 995324529 333181829 416439255 615495603 655327146 834821018 871371835 841593952 906280866 919344226 995614712 809982742 892425537 751388865 961695033 191709780 471075332 55793061 883055039 683808414 908205823 46123245 673413546 775654625 955418504 227670667 791728259 798665493 997084651 153036884 663759385 29916771 117733092 274520951 881418927 328555433 589589381 505613082 507404366 792826111 970446810 191977862 287271136 692346737 779425365 837580458 934555956 157684828 831504250 505963065 995203883 284194608 632811398 256469680 667029049 570767390 819682919 398036300 672051250 599572784 743940752 452180066 733259288 660175713 787815591 653908716 999055419 718884143 759650868 129369838 887645348 147355601 876365240 908471831 960245104 333499992 511245146 218920050 516793217 763851614 954705122 331304598 547629212 532123730 902183962 377413935 857635541 436475213 710010807 802310836 822831000 917101762 920791054 701689135 774015575 617203174 705251678 242921873 339496524 875699125 924121413 79847086 328274293 829638957 884607422 673761107 824360878 286946412 913164111 307259102 642227110 7612512 168310869 520805466 867647053 195942925 301895303 245041305 500821321 989705478 992012034 862902106 892781533 487021860 849845478 353160362 919014391 916617842 959458491 201567260 424706798 693027712 881356888 780706386 830569894 767927973 960500880 184554527 252963750 246875299 563506952 272976598 286452644 369075352 831745674 590729689 875733699 799922900 877204857 605458631 774669937 559096031 801098520 153707596 628464112 768891617 846286487 897602728 957804263 347613888 960800079 345672342 985668987 193333265 466767776 232402222 247734592 623881777 956482827 804270116 883912009 81349588 484296444 752976468 848901552 685931738 840631555 367512695 462423130 361799603 655670997 318403719 717843193 792732466 910203630 542899469 662926582 602927927 723011389 182692272 804466940 855978186 929929786 519689814 714101164 444288728 575058982 778858720 797153364 197159443 651453580 714261501 873769808 21715305 541768343 768768954 957648436 302070954 459227232 257218634 313999307 896046747 907146456 983307686 999081651 348125259 475089055 427205911 676845646 218271065 484101385 454864157 652578999 342263182 906921918 163178051 976252641 994676476 997425944 285008998 919653890 179680786 199132959 585488783 682760118 997005494 997390861 362558813 751544226 229437402 638696267 129724189 847050062 444202547 583959349 247667731 922471849 779782302 810944575 908587709 998524218 989894430 991042078 716051290 819919863 165671947 594218464 806321517 978165403 565457741 999660037 217208887 948321104 846347383 917622735 702775126 882622571 783913459 818555679 913393157 988222130 295503215 777071224 707288082 932433020 889486671 950142248 210752563 644051882 821463354 882592010 374838257 528138800 654946144 778688410 704035259 814282367 684391095 693310382 774875058 798684559 445549757 993960328 410607302 725770407 878446063 938877102 351369204 648758820 487814243 829740837 47545008 585546399 533856912 847921991 208757635 249578906 760086507 914252952 439589973 576269339 146689896 776518532 784640210 857981000 758017297 962156328 534072832 611679382 563926030 592075338 321548167 642056911 495225500 903195512 944716418 997423144 971353168 986350456 197382833 461377837 974493917 976096384 666522595 976100330 426322629 754777173 872513904 982949477 279731861 917005699 381417731 661021377 764759492 784206584 431655928 769562749 319602627 377521747 641100790 816774817 695770350 780059259 227427292 614960492 894695711 980677297 79542088 438249747 910344382 971133583 530561241 956807728 545254843 930877331 671461260 689767543 311883651 484066472 378870470 478889254 767847357 880285209 186520965 944504478 955892833 980467439 622614365 625066718 293584311 573123655 739520043 810519832 380783869 974554433 663066047 821482897 337207692 423056197 165612207 284661129 836687556 954885270 59731249 440885605 986231848 993864924 694718913 826210764 429853651 625830465 146040190 980204637 201836723 585069209 259187871 726210615 76514376 406286735 40637131 946946933 33027643 896738839 880432332 931465103 660625276 714746862 9380661 523740766 844389019 971715441 912049476 996338138 176400328 690878155 931271669 963662628 994702132 995271292 711760702 943417106 680297632 987590020 57347479 830040686 749103541 893617810 141531750 686564332 274853629 418861756 326438593 621395420 662981751 933420727 122897642 685469305 513267553 827735225 685192328 988543933 105057988 584962038 140922005 937400582 532575303 773722236 720145667 994851989 778799806 942380233 386931346 433472666 372774666 729871799 187840399 856776265 842629059 914534056 600480640 732407741 457891125 802883738 880531740 902934459 779290480 962999321 731514077 783470029 348888534 652884705 842077674 898508800 377876867 830571499 938464131 985601465 954788399 977251672 684967844 734165107 523599696 816924518 929434574 961651036 920586065 946552560 407711435 607113990 742162142 768819459 687479017 734635615 802755629 813297311 621111489 830718456 143662410 971090425 230145260 543810516 779164858 897039107 806989558 961404961 536925207 576158683 919216205 919782387 784675323 842646220 927866289 967139738 317019028 509813397 33975209 175908696 76743277 110844074 344826328 361073334 503453271 937025754 904612793 975522616 611034068 926966994 791648409 851315710 360333531 510426937 443757935 504996737 564157994 615804361 748118237 796553737 821151178 830977605 909980637 995442992 675632943 721938999 506979071 525397433 325554020 872389968 256682483 823729585 617348892 898653570 700081480 938933857 792784656 902841423 635106653 941252092 316721277 537129913 945388930 964436800 388045974 399239765 1865449 5962872 565469633 627321772 464118659 529833170 866925728 906745592 697587081 802459622 456029889 494809891 549460053 686046478 937717531 965246861 600567848 854125638 834264603 855132984 418436455 800450068 332288560 511385165 348356347 479323326 440572156 959608574 438832607 722522658 12798649 114438394 567442434 780689346 771352751 808724765 185302105 631388791 935058253 974321660 817684629 948124372 173503075 558759636 48175219 205411878 518944277 850376354 56122454 219726967 74595695 337784563 854212043 922042182 669838476 823315334 308361909 795640425 671973879 898430507 319154629 418227547 550342742 927235696 572450660 674654130 559141139 974410195 67056030 736562018 795242994 879726084 623834452 666272774 545967055 554507233 926697863 974263017 678702288 899463105 335652668 564234067 785314000 891535370 402368131 493038884 686149262 784817249 145136185 864776969 311987073 575685868 580920193 836766431 757253905 907564158 140333534 548345778 362856441 477392363 70898425 856168649 515738749 988298313 446781743 815047456 30133463 117717136 81940026 796017805 604670173 871922414 159184236 241151525 531899746 850087307 329352879 570149563 707834584 841502143 139359772 808977172 224349457 965781134 263929517 268606331 708249391 803901403 237234300 569603873 805620892 932460005 368059371 641270237 866926532 890369600 135741704 466538993 428631509 819986724 745258847 856702888 887019580 985236242 595365382 599549872 955344452 981382897 755405372 932860392 727271522 777715659 286569523 764512705 844407623 991482727 275731302 680906514 645980710 890070049 913735581 999645397 478273536 820474049 736886374 885918589 29073268 317899875 196754671 409246865 789469815 807556569 755331328 927132497 149675848 971675981 884887584 933724069 199741598 248656160 197090874 583802393 652947148 819779880 230348590 707350867 807525322 909024880 995399406 998515870 305920420 680718940 716133176 968865374 424767124 639533402 350741128 921971485 356507073 699249648 494750606 675725331 203868948 801531229 730510225 964876738 194826618 215690441 195602510 663816079 962313435 990281566 604602196 607444451 339351589 344443806 34641768 770314635 337735901 538412696 58080084 412145077 624247552 751644380 327499515 757259447 529664067 832597417 545366646 590260758 595606611 921566987 394054679 619251980 273551839 389144612 446783801 767783864 674640745 831307230 721275614 945080161 969931056 973554171 860578608 862154861 821173284 921792866 297819270 331648583 11661768 152491425 108256604 815144484 931078058 968153384 770923733 890862665 461030078 863971732 272860673 875305387 441803618 687058996 530283510 877661401 471429051 882411273 178561279 617174991 907353019 968974152 530871080 945014709 529144533 557000626 92270202 957859005 998718258 998842993 289978701 596558439 460370799 766168802 252225657 380379257 166810944 173297009 247031504 258979323 255553675 874879945 299693397 391136227 516221879 567778336 2002302 620717546 806600416 869095147 544282230 861295728 881810079 902922962 988388748 999914791 401112758 438315660 810647022 832490368 97910576 505742908 636420508 805201991 176853605 293973719 199545225 702485682 126452687 244399481 798556805 983349231 140218914 770887493 162086183 652531803 856072878 896772955 434335470 808516571 347104356 825120589 486204448 618036001 620144540 910943770 566977826 967539531 778244999 799822570 704445741 851745801 833458971 967890689 397291331 664159356 267968493 413477763 976835954 998526364 674180438 747406004 758226435 927778363 981819271 989304021 814162561 819569672 760094185 973216274 347886225 918076228 722661962 738078221 3284211 40118104 655101638 684438824 486444021 734483486 487338860 959414847 824330064 987886466 786475403 936302167 747622552 751767209 918521861 934125448 621883621 686671776 807331113 877354358 96538643 689678913 413245296 797087562 874110763 940864500 114041684 259233819 95768357 670465388 719320940 959280193 671192676 745376900 218283717 977378909 622069321 785857880 186727228 571247837 44460567 708432168 835281583 977636532 184845980 253021396 610969584 634691411 406644283 557843556 200229452 540504526 355064718 415230731 998616930 999939463 1248241 446364877 110985148 644601359 845295212 940847204 430112055 579940753 873139361 999203325 694724270 992519782 38987372 822075722 877402995 940885028 334688256 659453749 506468502 844026473 754001070 976829567 705534558 921151828 25786074 172269131 788895997 833200797 982864151 992167049 448621503 844798446 402573746 997893303 22883136 689517573 120719941 912035572 333120614 686796403 687601324 687801373 45545699 635437381 461877121 708411960 252505058 703488025 676759192 811287755 256454223 298790319 659946561 778137589 118775208 266203002 257328080 957442416 137546696 326560414 968081068 987689960 921421817 948891771 799793677 826094942 742878697 746219439 937430039 962076948 369125036 900602585 475860309 778308641 785550515 932151590 310482952 939918969 274055600 581168620 526503906 933541861 875790855 992676450 899660839 937389253 40808082 929995210 449422619 753482597 347372798 539701867 590315923 941637345 884370529 914742919 138537524 598400902 621122605 664436551 456569585 688214547 160212784 845730474 725437498 902796868 162202473 754208396 170711665 468738092 450392883 769345768 656997318 675332443 552796783 802123028 443842151 710638296 718138775 736842227 396988957 868019601 537914993 806945397 713297342 800717084 498518116 771077852 984523986 994562008 838349174 959728181 430295512 536439012 158998383 800770744 691674585 696884140 586727118 931924731 623215944 888068318 170832430 632175289 388484230 664851000 435806160 809407852 382121716 958716504 365083802 804213032 57579432 295791052 630038958 814582670 471806183 523524019 272436766 829595362 421989496 725837749 190154478 692365947 598295677 742087350 43577644 498868112 161037992 872848471 165030312 886285858 747963488 969308493 845379809 926771391 768058531 839490521 138336223 929790961 483368940 484315972 755873135 921797064 340179064 536804801 897090122 904457792 348763734 744280411 661250456 897080060 50936750 152431208 496210510 567829572 801998666 864263260 882206819 943212133 58259549 99383725 991164696 997468162 551343339 788883301 764231430 871511541 663588299 711617252 543627680 984912847 615445673 762033304 846053535 899629715 58050336 161166852 372926737 842647806 185632284 201326095 371976153 489154036 607103185 893471107 42468541 280507340 932686904 938611101 914213376 964446293 946425301 988352404 139493981 364428018 410556086 853165033 549590130 796177752 144764583 357677639 304164424 892093885 931434371 943908749 418678127 787305780 895786284 926073807 819793897 836327688 786376128 949679338 234153750 998918928 753289501 882335607 562793916 579351850 871802222 925337772 291192298 320950887 474942584 830591317 563165718 864065197 499223190 935848559 329637381 788965203 870806986 972034405 89642360 571082286 507704264 670267029 777095221 975566255 117814691 446623983 479677018 977901938 172526262 353980204 647991140 865081947 569888349 638245108 93736130 997293579 606236376 852651434 816128088 989204119 90357827 323507207 205271559 664074645 304478138 885285177 975397709 981592422 179863772 757458115 620016617 974457007 100258488 954187942 787476128 998909587 712378323 903951182 427364819 452880184 302652121 977331731 690489169 991301416 571208234 871693288 580822045 631529187 256746488 883322571 531046959 989872734 171730657 506962412 125467978 825485453 958648890 996694449 276483498 420148231 911755497 997496431 33115248 766658028 800533354 985190060 809226931 880581003 763523827 813132201 50953474 766519809 577097451 728109608 587517221 817115792 567465051 725847038 284797752 320674664 7442354 836965181 538198823 661571731 422527657 965348982 396695298 461022952 108302044 371154664 726067733 837408813 877463954 884978271 5685440 93360234 796798496 850006109 141016394 430685762 200389831 601756600 469932703 712137264 495562563 867669897 531280049 837536697 37701495 245215355 443268134 698395427 143642842 228614475 761052873 847188387 730880215 945481309 62052321 841706845 670525156 815903974 840605877 918134027 451134012 939070390 736842390 912956481 884106040 961111100 966244576 992742948 248044751 961831032 981698654 999707157 731670463 933655181 268271316 383105874 666934919 804070707 715266995 761973567 889627194 956020959 436126896 649902074 100040539 946773310 347839973 399192433 231282344 999395313 314067008 886829261 627463273 759955330 574311472 890838299 303724110 853489678 471198597 511228404 460209483 489887678 355659028 420368495 541027945 769531016 755075097 940980068 300784560 712273301 940900263 952076803 833031949 935287282 840381206 921040232 710282762 885028195 205366278 229227116 258322192 742107584 493392126 519203683 193404273 296000896 62107543 444278552 817247556 963800620 198065334 261484653 291564148 742046614 39110617 377824709 530140971 860774327 305479533 391828702 178330306 806194652 756070154 967893726 42271074 696668452 175546790 405309392 270600679 775996137 288671952 419956262 458974490 701508024 756690565 939546292 746051706 993394067 934987401 964567378 399448002 528993137 542951161 735958114 402659402 829089135 333326916 337980717 233773243 386510831 554682934 598543675 623645312 815786708 190468606 423242476 517425167 942625590 480975129 940194623 813837228 828600980 618300670 819516074 724997286 860226803 576554056 732347305 69329020 855189083 696105443 867075177 472996518 826884626 969549136 975375056 250036173 474080960 268137215 377994836 258155035 357056237 404368162 551341640 63526258 967880940 560006108 704721525 317716637 928795449 34320462 304201875 544917085 842904789 939010662 982105181 8694621 628090330 801979369 898485628 1728624 286445934 110005742 696176979 840294214 972163407 713898316 762121178 302319834 478951995 60297648 544849972 327050616 593780093 29451217 368702823 463346420 820125642 222901763 424548964 151215851 847461820 96463727 998229265 626078615 930602115 256479661 334238556 870714702 997814361 684740684 894113153 76516710 949141718 919356547 979880705 227388670 972046927 759491737 803671102 317480552 882917798 520544140 901567016 354245984 532467737 960838693 992525253 879686764 976256805 824176058 951164912 69986318 745355995 995201894 998431905 510390441 781539342 850045114 914865108 869203101 942912211 339223767 388827026 902555305 992980929 592557873 830112405 348006444 871687775 714246523 933033989 83141573 744259661 995333524 999230745 673495259 674560841 538468828 820311096 61446032 74886771 64615243 291162486 93657197 810080954 729058794 777446749 521100887 854616376 748863427 818488253 920710197 940747248 861689756 973452385 8271941 106277742 774377290 811310963 646174526 895761728 847295205 923835118 604085185 648180345 437500416 520308276 812981940 978982610 653918322 710090398 210621880 216620046 139272126 857840746 341711191 794103131 556961382 753137332 130650604 642978599 361278564 841088865 85468381 256589959 598485816 757118506 918927102 995456264 388650625 731883905 12911785 344181190 343374658 646839289 294508864 942954801 548668597 561160125 254236920 995200850 818937658 823126304 203605035 597672356 318716890 734171608 64108329 310661700 719013299 972674595 1933444 435385495 736324132 880411777 583402021 585442611 554438466 907401795 319026450 603220804 652771654 902623881 922406002 946708218 652487251 718779925 331519348 696624143 186861990 626572168 848469988 977487339 46914177 901777037 718335485 919626267 868987790 950831406 784220992 843871600 824564318 827144696 712372208 875626242 665615324 965918381 31040760 362542686 703051191 928787129 315278724 701190264 347177633 582522995 498917007 852666310 731478716 738850841 973276885 982036814 595482040 675122821 173670528 562931484 184802037 456217245 921535695 927963324 864783187 945852254 410066624 550150879 988043967 991986223 675014869 767014979 7196313 348097986 11020942 426582666 6000478 212603435 375486197 826028013 856187036 973028896 818422911 971089395 595261890 847731471 133335486 664650738 941046867 966661895 7717915 501547887 249893862 362791599 306240466 502373421 669315632 775156594 962245723 975890133 601938078 968293235 210291252 968382592 215084958 846431140 781463114 904495659 454321370 459767417 310931266 750594491 474352969 924977810 444913914 980695576 337763920 755244956 894609606 943332238 790905418 948757819 436475 30306510 729240717 779864822 323615031 969248946 159751275 287890099 961441461 985481725 313748498 953482782 622506455 962433566 975399505 991390646 510614039 881092911 288276422 865842237 159305859 200341472 826531462 970718972 716999315 963785251 15309565 327772193 41038959 470046728 967553366 973244031 235856928 720375660 273727997 394131200 35671606 410269334 614350957 728033131 355544798 758970801 734156914 817896142 445221254 969883409 566221061 839018788 248771391 730786981 856399687 885871929 920669012 982640512 769691976 818840402 818628367 931913024 401856825 465698342 672745190 921407046 25244070 574698211 214217562 944777626 926780737 988713600 427302234 993627804 882787969 946934972 910071848 988387636 46808430 787624719 85969032 777521337 707147648 802661956 293264901 827173070 825836948 923336416 820467441 891213819 787816715 810511693 956432318 976459679 339083487 362523702 742426681 805157006 954792533 971924109 953963776 966103707 997623678 998699010 514011150 988164195 606415065 980734341 454281114 862986485 701555698 842540188 838511285 983381931 215107620 712802103 429158056 979479225 719999657 751409339 79640361 498294894 898628599 996306233 360298925 747360023 706587143 712809631 830036584 963344709 733950120 924025106 437493366 539500671 664104325 884937975 140080777 480073081 486913325 993546848 318801206 626049905 542312853 751118462 456526000 513577929 962698212 963937419 842821326 952285289 114475473 146673376 397070497 944290840 708206707 787868677 926815350 957400740 737436943 924100699 600078370 784353959 683108823 919328119 809743396 958613595 633149635 822509664 889194454 979111567 289040588 777108847 308063563 461508577 399052166 820509484 140383898 746941176 905964023 914725755 312003253 868271068 50302653 500253332 231151558 263218473 618611797 855110253 660648049 670744017 887344709 996515317 143026456 179325510 136414664 443535206 650381037 679048225 512618072 665121082 666599839 858537514 656691585 771808367 237516201 901961597 694944547 922392821 707376757 853987650 436291252 801509327 532740110 552245485 396062279 607228715 576216121 870600307 923536465 988141119 901310224 934981728 473809365 521779202 2523034 161554274 883842716 919892453 713943128 853990586 663445163 814419881 621951636 973225521 114014149 982527534 469333502 469857576 437702868 531252706 767326545 911252144 746781802 748956613 395162852 559469153 908993017 917857148 706707702 846800722 88644244 596208907 375804019 508219251 560821026 839833229 702383929 970083381 783988637 915161010 584669193 748252367 413844871 607693660 822293507 972725102 167208555 507523103 919632441 931805564 364763012 863726371 720364703 902826861 630169311 719396083 59681683 416089661 596635993 766237178 572705468 737699357 995381566 999121401 32730474 382067769 392558237 657651192 784074005 806252916 146766627 487374268 788260731 998986544 227565893 725504654 23648986 733794007 685159125 751036783 262699376 571317858 116554691 285343106 873052347 905171065 502475986 795514588 923343685 924524674 357606753 731743922 602005389 775244523 9090098 259315857 82291379 714993041 156148838 625138166 266767617 638311418 624917122 704754903 713718872 717559042 52516263 112059254 323426819 855999588 420388393 465026652 386270406 793054145 256545775 640575019 525823336 930278743 300123925 684222843 382001877 448427950 89889695 315040257 181492208 286522588 472162404 819688307 560267823 875318453 288639367 905335061 375681065 895375849 642497597 773069581 290086510 775689512 326438284 739358728 829794908 856791441 758509595 902006979 283685333 898334930 560862305 897464858 812898893 891315150 657194991 788382749 998936923 999243486 139968158 188328191 264610309 393239370 453659227 860008049 49165261 284377650 716760753 739946881 964347186 983792255 306635607 798694229 798170806 805602044 936068849 999427226 280299908 385937554 750663528 753681080 106912856 998692164 16647296 83886433 107904221 633524844 716524475 849483347 226713146 737685358 665177715 771876213 816327997 834944078 255603957 630100752 417340213 986471867 621537636 744205847 429542559 688784848 223612072 251427271 555105702 827136329 900950782 924517277 597510052 828912630 242417611 329399408 510108869 719125555 282352405 947136124 907468300 938216631 188433890 661885644 221774153 579380330 944160744 958522842 601928911 605897431 958907761 966978757 345254253 789387773 244564108 975781643 619228648 705214962 458407729 843161827 174590987 251788111 773285968 810647520 572943904 965485943 874130569 937106459 623097557 818218143 274613451 926890102 335724539 394918399 429299730 569540035 28119278 607684813 460876119 582309216 564671837 641778142 713072425 839450259 529608362 938766106 985003293 996614264 253151456 897920810 9535370 43286752 313374843 806932303 397747027 944163987 983881185 992691062 610291291 870723582 949694478 990912729 838040430 930316709 783431483 817918578 253203629 763730410 826880386 946365337 513981324 528879612 178114320 703524767 134448170 693135482 909992279 986000216 409403250 801082187 30828888 33745801 75648050 771143249 386990700 463700156 180337975 666226725 569204399 784114826 780877759 992755242 757914150 846239453 18744095 482022425 157536595 792142498 456513686 490802815 909269429 965095890 4753717 188138420 764886611 971976881 658751247 660001664 257134061 577749884 401360593 806446097 425371074 930114248 566493007 787997826 653776139 871876933 735328024 880005181 385344531 432877310 933374544 991695929 588917805 697609055 459010712 865807329 562276651 703082062 647115776 807103934 62258840 180729396 77055996 824767442 264835988 548952529 885996960 940279193 509864063 841164130 317948960 721870917 465166681 959082529 53437794 935431368 494971972 971207942 485695728 934726286 320444255 465902690 82228712 849203424 320076371 552608352 646046726 982874906 599557158 768716293 166970983 818885204 334962220 733264297 827589384 986420894 579698124 974578536 713704829 924327104 728214134 756844056 401932415 448966380 909281607 918251515 69791662 396634873 52667597 652338687 76174386 86451705 524061779 578081206 217222889 688439523 928098814 941150936 250174755 738027361 846215591 917456872 18657616 978079351 138358916 872154018 428528041 633466634 389701030 918546577 725995291 876519168 251417153 867584041 394341614 497940676 563966252 793813308 626169800 880113276 335582796 398301770 171404123 688554853 504583095 788833491 765850128 961765792 270059484 558394943 198482422 666572965 749092729 995001008 898590252 941547429 39015488 51819489 616983328 807087339 749950370 871346884 735756193 965389722 907883091 922985808 347405618 463514581 351296613 819853886 87724859 881600461 58085615 549934098 587088910 612404528 653839354 860655861 474059477 493628492 651049204 664415203 287662966 731937719 264651178 785920084 56142238 514649446 855951871 952609381 474958802 476528730 354650303 404331511 88447488 442449916 984307165 991473546 778466027 795637826 870971479 878492790 574247889 935838823 581026138 821072352 333649358 340102749 748473961 773161329 728864776 736865566 56048043 500989067 523167486 785285547 113698800 379240004 14983614 384233995 1156717 726196570 588446015 650698770 77132878 175690986 218680396 679437082 641760315 879400271 592347211 896483988 583492766 786646924 343538427 641255847 836607412 944668719 369951039 424429806 584279014 898614542 62076296 690928292 653709350 826038606 427900903 970864326 947490251 947874733 968091681 989448941 222422137 359289264 992599610 997209718 423257455 792589085 892991166 902397980 123658321 666332825 782593729 876384072 206928006 294737267 295085560 967540065 655569695 845630861 911083957 997613279 534059302 571992096 356197148 836450091 190440849 946416804 796546166 897143465 774203406 826356861 346546945 651121649 283777129 729231298 173209357 997469454 558473431 600936048 921704139 978324104 948700424 989952224 263453849 374100503 683764239 981484258 987162552 995472099 410659708 501345631 305637511 530873797 484655014 800389750 725541341 856990659 389078525 402023945 529104550 667491001 542331731 848201701 300416905 912956643 724901702 950335267 58939145 565706606 543068294 557003319 84312277 524174549 353462074 796190847 616458682 821688431 304720419 598274602 253183528 444755070 693301007 854442251 753556352 833117106 714167402 784405577 854537239 967526683 591857969 817695211 40389997 967694239 479264932 958843811 619148202 819500607 459171852 936208149 725328591 995764820 734206263 991630640 137597180 958213961 874008556 984602343 487170685 892464832 947465482 995095592 304483243 353464046 915343334 963357128 853815561 894829716 65898834 678013653 51719348 68647454 527516276 673371854 854132623 893195740 370470384 997926757 772712352 990893056 989170675 999070831 906719130 978474478 266947856 888201061 429220646 947596300 918880481 935548712 750704556 863241384 394919412 832646981 741742752 848018223 984210507 997831189 878043842 995113180 21836935 416245112 752675809 893656893 591041415 684016680 686289243 814896279 771339765 950264677 559887355 590084216 641240055 662461628 15328549 330503794 928506427 933360086 595072535 990229022 905646474 972054418 465706567 875798468 206786079 448771389 597575822 714674413 778805560 855182084 465992989 707424990 888334110 994393328 517553762 947987657 506547542 707889216 938003769 977356095 934389271 970679059 157677623 628267055 7362556 780816928 20385953 863910566 902880663 967200132 550802470 864527440 960025847 987747770 376120915 489303517 794333148 940493206 309911611 315322069 738237695 981205555 238543115 721122888 318801850 956440058 893508394 925043273 328917383 542592997 899865057 929061011 410367288 883405475 769150653 985863904 860239659 974239406 755922142 989004182 261586647 559701945 344396214 747553678 100385155 478578125 812309147 975931938 52298894 905946697 50318755 281375324 715795817 821378302 536462909 891011228 840754211 901799066 8404733 704333060 459666995 595839370 436707147 592450136 293451878 687171231 702187370 804611527 742254291 781913226 32031671 783761409 889426181 917908857 396761768 549471429 678349418 983741959 24032765 600789045 167594342 307098295 497003514 642650611 425022795 438661483 886843668 975968558 250331758 487960808 871041062 975707480 685562090 795447880 895521848 959728402 394688980 932673715 936640594 938253608 857344892 860053061 550375314 778067587 316114607 979920402 303077337 412909536 844573452 978796086 519238166 532506255 810818879 857148560 69450138 133206894 491173907 742580050 886634428 994413548 353541149 666730185 678193572 840266261 44114765 722787606 34011216 508980374 952344969 964914240 171084670 627038879 186027984 402037626 839722709 992310836 813618745 856833266 751364253 983440492 15329170 186062408 206118439 293942108 708403663 852708196 682284211 708577385 797773283 878054437 885690098 916034914 896939923 943071964 981924023 985632715 998634791 999671985 748270908 844887157 822942791 928960417 530410941 768055382 997839311 998343578 361790700 917312382 251236961 652988489 661453580 824264892 654806261 827201719 219598015 266464947 945492864 972334932 563459496 994694649 861430692 880143703 336002354 384988274 557278013 754968693 636845441 898372492 327463974 932269314 270557452 876680745 568621921 568806967 254041713 479891810 911704808 952731389 789950088 998035524 199565837 907962059 724800947 919629113 59652961 96114118 405214063 992790231 194718314 506187661 922776625 984527841 395744606 958331292 567780904 960283218 940484923 943134203 828070945 841783838 533024291 822218016 864905823 934878323 145400138 318388735 88541902 496911425 448496681 616168084 958684201 981539940 914090871 947711420 50819864 844226496 851782053 962031208 959473858 993922946 409282641 748510249 63772889 949180213 738990172 979087297 61890525 849407153 655208407 933074934 669438860 679895134 415585666 513369790 455132076 761371427 17822372 34379761 485018193 755388853 467188625 776566780 20924195 156334057 852098776 860595251 802509450 947071128 205724872 413940084 1917976 389521273 842510167 900122487 131743384 624054684 474363407 796818065 761629634 790604037 337062336 606227002 27068027 985478984 691511360 805363538 383707978 865961845 711582274 941808405 977947672 995945320 294885335 548563208 840266975 871465190 354614063 586892151 909620596 979828325 926514649 997114339 841306855 894837937 696882121 960552559 961809199 996882715 548110185 751405799 489967572 999864607 349662141 899211349 245079651 416743989 743095215 894481671 944418434 961013779 851718816 916541894 349648759 389204164 324534252 560273990 141584866 874519062 325088380 807587173 3208485 472716121 641651128 647811116 17033697 441457629 960203522 965539135 112470365 806184307 622822758 953565252 315209656 528664376 143946581 351198168 793459659 850825235 767465076 919553316 627679236 923208104 906323815 928592024 926021228 934930165 589395726 695959549 97381444 646558694 975290107 980064545 890353925 925332231 478473774 789213277 22785719 536539688 803777610 933516472 731122406 753714168 426286388 489839871 847866268 897635139 651733218 765878063 47424302 200580561 123476612 453876394 394961950 759106890 264511204 606238179 353926020 825306356 579462095 949896774 959567462 970955852 768341253 807526255 810735335 817627727 429521541 720443779 794290697 942657951 968299172 989006719 346246838 611046987 320289843 736337935 773768823 804106242 213699947 836543285 385158197 590193613 535247295 942613117 718215315 887127685 146820835 840707516 198599805 803422861 934246339 981826407 922424405 935039683 949480878 988606238 784921016 912771157 822242785 862030336 513762065 997818882 837820737 962033777 400890085 852769456 998043572 998811485 165534363 879099785 36337556 259594321 639040570 878475306 878533458 999879560 97841904 194557865 947321645 965909716 369446827 439164265 36940505 923089580 757624111 888554775 761057089 832842467 174490201 845058016 643752517 674453041 145143121 644823512 539938145 935114432 648087570 967959906 867774999 878186479 89626744 384084084 584996640 996854765 131375645 442774849 476725816 699260837 214856124 321971933 921760642 980539477 722705918 791317255 913098998 932993444 905849227 914572433 2470377 943795363 593988039 813294162 690740187 822077990 588584094 796806069 447428800 726934617 679426067 996066865 537443279 917514600 529354602 965855058 849577112 872712986 205309755 419117044 418188222 801476443 506016343 967905345 795642965 857637634 550762050 667760204 803643535 992355834 160084357 532207269 223778093 397094017 398647700 772409286 649736664 876941926 80957056 594714049 103440619 735171324 169897259 830776491 657375791 946547521 202064278 919071990 185529752 961439667 195915620 467959806 473851695 508330612 286200270 815275353 236566587 993770287 252065451 721463112 798828631 829984843 976250349 997597139 540269961 600895829 205376243 379475888 97675350 750389149 166720150 412082326 196778662 695155912 336983816 526171494 69783936 676463716 366987204 459188584 629654320 966732438 338795937 488056458 356189330 936223614 460561167 612516263 252768168 313238817 996321280 997585197 626514111 844415594 745498347 764088556 683074282 833283694 464104365 679811446 610778169 903927587 108280174 263210375 267276124 910396831 710956463 789320358 438464994 638401221 565262751 649038648 562633627 820724387 696935373 966507895 835784325 918297607 614901111 626861543 630380997 751528543 872474074 920620717 708398720 980329349 905862978 972152515 362595055 716700237 681898985 705574172 581312022 745304382 835300786 855546449 212601294 421985401 717081873 863974150 673302729 854669476 930154207 936400927 47125408 784533951 333604339 639147624 256473808 992279332 188784586 194983835 875668834 889728831 841913078 987831987 263878673 677858930 888251089 933493886 855580521 885934687 133146110 878778355 648153475 897683207 171179611 769491821 178605083 390684104 672100074 854603336 330069153 892576807 994345408 996467936 585503460 856140888 108829156 147020894 591739664 899397529 839472346 935858814 970586903 997347023 964710578 990001411 980955043 981350780 945115584 974781085 307353162 634599521 848801078 866698508 668953246 902240433 340924953 373718269 518880021 988908043 70150693 281829727 684588152 860203293 738995588 910440459 558195510 827697457 679411103 951189979 742535557 799948958 560584281 786623218 471081819 520043489 608284005 939251883 656347098 932419655 482130024 842945119 613852795 852661750 347607867 898433793 919053474 919863182 130941458 180755419 686571137 715586648 750000409 792976096 448806704 586389510 817078148 902793620 597592110 757384982 72032850 426574059 313890063 537932172 774693643 851362781 670437867 799170657 692354067 734967132 614697840 710953508 198816416 491004821 779152477 839143112 110142415 830265299 161953730 349964405 129789233 894671255 547563516 685133261 235985418 876028075 911322277 955425154 56054201 358546717 276654507 532588277 868505714 935046537 99160512 112417870 926826963 946208454 484881581 530123102 217911590 814379459 185280785 660377853 801883002 935944019 399099857 436918809 728721781 994302301 519130859 628917072 877299367 994446501 508144218 550930676 366694147 971447880 282159527 540443819 903805471 932598780 160848329 706560169 876277387 955104292 164171510 275536250 604621820 964515401 472391515 961599083 285732829 969260825 915357945 999499742 216947602 377111839 132327377 565099868 704008323 990749809 805104726 953200050 632214949 651279765 358273919 679257184 623776095 700456936 203742431 787791108 15084536 730960165 68347842 426235597 64821053 701243208 421522376 798937888 902519058 981033523 334546340 360686469 466175606 501045039 577563992 735385606 199977428 695674185 442257360 844284371 814742649 834314508 253361426 403419362 800204968 993303988 357168477 727595382 369248625 518434291 170610306 238995862 766061359 936872679 300552780 573126446 935739393 996023689 307026167 652172153 616225119 740416434 355312291 452961090 510165737 894345708 542517931 886310320 292599178 698167674 122967598 290133152 265952725 275914694 433180541 452642847 595976070 786045342 937318503 984615062 772585885 777412669 237017541 617622948 377905204 655541914 399976633 454917775 895662962 998568888 436976282 603803642 104195856 505821959 552506249 602754597 268135763 268521644 852540935 958286731 232735814 826449518 34801821 155254492 428851343 709972236 490544473 931152275 742153164 757799415 49000543 897568041 23160642 90733860 998861470 999255636 199801655 655672412 364765586 715762031 861303590 945154868 561163243 914299211 451307116 764822784 445315235 485990043 818915676 959680652 977595025 983026944 371316931 959225598 197376559 439126926 80535334 244239008 280537015 529114773 53222549 760109292 168321464 251020541 908751829 954920805 29617586 487431078 869555699 872645832 217725813 528272327 784481561 952944222 330386890 685068785 281012835 787678004 373198385 916561065 610018651 703576244 358699895 572422944 514275986 990429453 282757252 872342290 985864767 994716691 457186144 978793578 351770998 460819187 347080333 649449557 667022249 970886704 686038778 949889017 650641016 735389713 622083607 704980998 969039078 991887340 756695191 970893252 777889249 779913554 450214733 717312789 978231103 999727525 271233711 582091578 331404750 810554421 528356315 542561172 330578324 595553408 405106967 907060820 717665102 979833961 319186526 981931088 489334961 536440170 625813495 769228989 527307297 677139095 95915637 285291680 934145763 991503900 162025047 918739488 520813307 522676236 801281651 813448920 554724750 874022290 710038422 824716731 445076579 999268814 667288847 722597504 145426703 746894298 802723446 933991108 49729279 66393954 409562136 503942085 716802696 730126775 325803205 880867748 96633594 755805347 400096338 670629798 456632111 888189366 594564718 774546923 245785330 756287513 88159669 462903591 291870108 297715415 117147137 874575238 698097347 959613775 853706204 992659393 413781128 896957547 424583694 883496833 974810475 993564210 85962806 689826906 822976954 838375309 451255834 480818591 740227928 906244343 826977417 834269491 751245844 757513206 726982024 816919128 151931534 441899566 229298939 317833322 347033444 767332973 131525891 661838443 486241375 652139091 10671743 779811441 460773813 924864111 807456748 954102131 502527215 534254737 699946847 922842012 126298751 196053322 614140629 863735028 962724958 967096518 896160997 951323942 377469343 539468244 154683376 284269247 75827452 946645885 411611940 608020195 662365610 804787547 527566195 723133703 135336620 742035613 886097536 909291499 978408623 983150375 501810790 801979304 474835982 844830323 912813818 942178108 818855054 859508872 275972857 854184470 634355592 928655664 84718989 455128666 396428243 459224722 991351869 999963987 830656893 907577939 124723982 830102933 516400169 674066899 577753317 773418587 23830160 167364845 175949021 278507584 473366460 952612581 203779107 858319912 308917524 937049380 274068896 394673231 441436487 464057683 1217865 856228074 995127894 997510535 466379808 972814978 62282936 704736009 810871879 974832773 398055572 673017394 779293110 862443452 487740342 891841058 977801877 997720398 971384505 991934792 782999942 821775581 323665178 361014888 863269378 900115468 938076443 958273469 310064452 508794736 948984182 974787936 16248571 470435113 496819180 744819425 585707106 699151796 71645810 91821718 364439325 380871086 485938332 560277482 557514013 823854945 699930306 886983127 629160555 983783637 689077171 723415180 995392423 999540409 81625526 228896307 375680464 472017029 880728490 930932669 166130649 606771632 415363752 782866891 55648615 370359513 343289799 971336236 308393201 366919798 188056623 346078821 795852128 952171340 561330407 816422097 930475576 983902653 339173490 771769864 794185459 974969784 919699721 984491192 502347580 699660776 157448352 406126617 670161653 934766018 531997916 663179629 464756117 583694378 648885026 699076085 856714902 960235071 410572818 758962303 136939601 582817408 761842289 823225653 712481921 855954691 751069930 984673209 479016346 741938940 283291754 716741097 286036002 936596861 380073713 545348233 609023097 791521513 134731608 371506379 972322648 991250483 234921499 358402534 449059435 566645768 697434706 842998708 296849786 970919497 93689683 699262962 361905816 929369818 436336303 558492850 606745263 858865331 465869147 772167455 850487378 958084212 109959300 768267360 45980365 527630583 254814417 283742779 179191099 537913819 58892583 926128334 133244702 882193093 515097985 566766372 399910754 880280444 202245638 460022686 35279597 488988571 105249891 106289060 643124156 661341629 11451140 825460589 294212195 875937316 924548151 926281688 851241339 948448685 477956696 885303451 303356823 973238642 470017313 803751920 212020659 613211431 510203042 888965394 401572585 667707675 624722467 720315453 519528623 653627582 786346793 933263376 626420831 739121191 7696699 242754584 499599900 883647898 370994901 670789644 466031223 637104299 785922350 805293453 742235994 850761352 56631933 228637264 195375466 333845660 277868696 775576211 931049813 991743448 305731815 737764104 315610974 708577081 680854776 804829647 802730121 997266893 405707325 779134488 505217365 959666641 811644274 925148604 674099923 926633739 19213921 123151584 102052195 314634254 251464550 305952748 995105046 996574118 596581973 707536237 656207905 757247849 917228565 975707998 143155423 446805956 742304527 746510230 707829543 758273711 295226019 405247069 668655707 792551103 270119567 674126307 913708447 928403899 480925738 522218410 353934620 677491048 376938487 864085650 593603288 905941789 116337893 529590503 71835467 471753976 551095769 666965493 850964519 865198219 407450719 982770641 246957921 798332763 671865551 797490045 77349612 608143643 890050752 972009705 873647108 878287566 840869753 901121256 36770161 621022464 978303158 988716255 313865229 930599000 205985484 258931524 993294256 998698589 922789164 931225509 300902381 331397577 553396689 905482612 474073132 983038044 360248488 632601088 101611223 288263618 119533429 540768322 691415454 964876767 209376487 526917388 738331554 928508138 676992335 903245605 319443980 621682842 929732468 941376975 330547367 763634361 384527625 914145410 798524534 886390243 748374358 963054525 969398881 983390892 317277707 886782669 874097409 891323833 239859468 796474361 549197195 826226245 556361039 660589884 88155595 726397449 517397068 668555594 480383728 568597319 69800781 768259065 588324807 731591805 732347299 935871923 313485772 914010693 914675863 964202549 466306197 527837915 207155788 905524838 513882380 834105294 624373101 781792155 900052440 978826354 672196780 773099743 658812417 917102124 65683505 450344108 60843238 411429882 87937147 102736118 994989155 998015505 303135654 819956319 768383286 871537896 717037087 986015677 902943272 920608410 833855974 845206672 46228089 195389548 881069028 957055000 609859471 989738875 884222989 970834923 189874427 376696029 950908419 995530187 307017799 964466253 633678465 852028927 736259106 911983067 249295905 972024987 780331840 823909996 622206529 808889087 164288755 747806594 725002325 913494843 653893037 749750668 984254906 991892226 406297719 868537309 932966032 940493029 916931968 981128774 424064720 648329156 56128700 874568262 786916038 878556181 368627628 497177275 777772935 785012600 611046317 991815815 902769953 956229391 165934454 732659303 88750980 207343610 648565086 737915285 885093750 888005713 544370460 586590613 787080856 832221139 230761514 996602507 936385345 989170425 579746120 866530056 416896670 448469849 26702359 769415494 624604489 969750299 432033502 748352452 572510880 978042226 537265543 682134205 108488560 418612659 749578002 885020534 118104694 502233776 503988454 552904823 965453532 966415651 330202498 471769929 951787968 980041881 363277576 681943140 652419286 846576139 437541302 683798201 947793247 974643182 854878291 951057164 163733139 788278374 156679208 801584455 976096306 985947721 585125244 904883246 191585093 949549853 235962863 420059026 322236921 406753521 985604689 995583044 890432050 988334680 130702850 831557931 15522108 285270180 487145786 502415510 710806125 867909168 176137875 183291275 61303450 351663824 390818845 469620137 928566170 977474997 52003205 164166691 514747617 811161583 451547216 825418418 602265792 834408196 25621036 831168837 28572903 759267333 413006053 546836061 154541743 651262401 687606384 981664962 62029464 374807047 443708402 716392245 733118672 892824424 882253546 883524368 146760184 648298099 629211783 902477202 477591517 954288928 678904880 704838758 498727903 673422691 595181799 679027514 592335052 955360355 805022497 976826479 872242551 960338650 517963193 609273146 745300740 877442195 616411543 649865666 353225875 784723480 796549842 814146128 247084906 440267862 300687587 340018297 18779562 472509508 458339097 532853151 174370621 396759267 561455140 783746429 180532125 851572670 944667509 946192818 807899593 947367317 975123138 976439819 822428904 847842269 701365300 990091527 669631507 835533146 241711696 787994720 331753003 849118395 192614999 378373398 458446387 872943277 50657467 293054923 674597180 777060651 333717524 736249380 863937660 964870927 66223543 188861752 708425389 784272096 126918979 340131435 866849508 900303991 123258983 961000418 36539637 966272229 406250879 960217643 79616191 941476818 480635184 591343680 241288064 426906046 226557265 669546330 305371198 811476176 56875637 463613105 409901169 781034851 429396661 910653242 14238260 763396655 143479209 832212516 486616599 704219858 600373463 603751140 984638602 998291637 542943169 768608646 557178265 908335095 726570025 971488465 486248669 761341181 830645928 984356173 765523640 926646797 561236296 662869733 147834812 276797564 671847510 894516723 448816551 872145240 954774943 992239178 882952955 971607898 859397209 983210593 115761999 870590722 756817716 878949035 107926927 172037161 230395202 953552616 548795354 656259659 791116934 982189223 351565432 545949464 448837334 558890882 223699706 314758610 588780234 689980665 845927233 899151703 239881317 716994656 432722187 977906175 547656081 690614732 226471519 395103680 9646056 799428418 566239503 893789367 79719024 331494360 528679563 946895186 178870459 360831238 357806022 842630055 688528454 996728218 684292023 753898669 219557462 313908054 445214156 680987694 121581810 309465826 272971068 505968704 87927842 948887683 592359928 837744522 303262002 538008158 887159781 894546157 856935947 967269398 950088 253735030 665981665 953602698 674382099 958633049 966932472 992521714 174435606 545645914 605948454 996450837 860890408 932252116 44356389 251397035 146428956 437479435 889012004 933392215 912573951 981663406 881162280 928773571 824248146 836342056 556250582 624941526 876451966 885513499 371303522 645335778 721612936 748918261 975838081 979966699 562216740 852710874 837731909 876920642 668382705 839201169 285267661 357923672 856768192 992763842 137677774 855165645 905237049 907938629 931040577 996040574 346844422 403757222 781734774 802516183 774725866 904112055 881288246 901751043 673170740 800623781 999871376 999977157 915744998 972138741 536145569 612382350 525243759 780642884 771588599 843967218 479566994 622121318 410516401 619355105 852854925 905016468 588088062 798277995 810583540 851383282 414085045 503058798 658725080 743970687 897619559 966670505 832786659 877498741 881584983 937805065 352674683 397496957 19055328 832477386 425310712 849480627 864392377 989882127 13237053 859004695 325185047 599300058 813039470 950319628 233145043 694496542 52387475 337971247 798701842 877473463 69920030 422424652 890814627 907479841 492255706 851196216 703297115 752348424 571935568 619909519 336271060 716971975 185637978 559586212 937637143 997039583 438715091 916939407 670924981 950506935 495491147 771907943 381312536 652228598 446860456 479551549 787112823 822429386 400411176 885048214 627426357 794513698 630207686 650897923 578367447 921325878 789542597 997764537 49896554 908330567 640754496 758667875 904141809 950319404 830330937 918143782 977404198 997189151 827458263 934868808 150817120 672577513 711180515 803864435 507748754 707109147 689991545 771614709 491371805 612944287 976256019 994983581 31748044 739346249 779397355 950288528 972113319 994004400 387386103 976789345 718279339 930309002 885000235 899096873 603416761 630268223 559442047 672378732 870089204 946682299 157918350 346340686 533258619 881752015 955047260 974289144 550956147 998039302 87762850 900081192 394529100 824591217 235319372 675405567 44814214 308342668 663090449 812233142 837166124 963381216 942194560 982353065 458795557 492325783 20020029 845536524 729407691 990629178 654943749 810896658 254246850 403981187 745300558 975990731 872072145 891671656 570952280 977226874 350900251 590279671 423314612 947151298 66108850 295811519 567404213 753616710 182164334 585034827 179048226 377854551 95980178 453545703 852709834 866828411 355976373 395988233 689564898 869163600 312903584 331924413 652863945 743091260 661671688 891438381 225737760 787217115 255691517 575979177 494555077 798084589 867126729 936706987 402858686 817412019 410521838 731874494 32307728 875065147 50453315 505095286 35701698 78181026 675457316 990413560 983001777 983315844 434761410 456514265 378889948 830632672 896248982 926913144 84114724 799715588 339348029 368394778 161102043 993262608 570095897 707649289 760868564 991908777 508264460 510361078 137262335 754888816 479078007 581508315 578121415 790760326 466559751 519740622 673625666 684851854 71713231 801759267 873892144 951576846 986841766 996094839 64961588 971205426 64440846 361043696 771045279 796200992 548595702 833256741 208442917 954737911 695859143 778053173 905061903 913597714 388364327 427049314 924712103 952417938 960925765 961089871 672070989 679285045 99779076 151164185 198452255 274035559 129141711 592150327 822610759 954009671 786203422 842477145 287626985 748934490 510478889 839530505 720687781 984606240 233278669 719575639 258733869 889298756 394737448 463590008 478904847 858353963 562809869 624661412 944936585 980563301 861761486 958326607 173546788 941688838 561452283 624362878 969424418 987973401 486403280 620243481 749280938 797501847 998761172 999258511 184243765 702383943 828335337 935670329 897568363 919550271 667597293 687074182 25867259 998319403 456473441 602413304 669988296 987193122 166129111 817022111 366588577 653261304 972621659 977171416 251492134 432995532 878600753 932722248 778930027 854566863 796258892 986252509 274891122 850339309 641044986 650585457 337129153 370899510 227311364 544732714 985859648 993042232 614116022 696651722 296251496 334040493 454795312 634829304 948255214 968375239 68053060 119648293 312704498 877727987 198840352 335990940 784464408 869398050 754312242 771860889 262963553 581343310 470236145 996137544 672939937 892680786 87519044 145498691 679968853 935685396 61766803 853918777 241893185 372193404 258125630 556518832 512035661 940042675 796742035 896886282 172226782 514564589 246145718 842831581 219004298 231709984 534980798 878884479 943488008 989208877 287033663 536325289 626364027 664861678 979561039 994932138 853483350 870113699 944321937 981508298 542069862 951930810 475964916 859682584 242039041 905898886 636600521 750245014 629077640 896889964 585935837 692251320 34391020 693173196 290665942 295556500 266299913 682987009 230898058 812592045 382043616 653827367 314658229 572377624 825047552 922349581 490320047 500327039 107524495 191349203 597465308 727037791 95448530 842301477 746856866 901389140 239178341 447092802 601307871 912678829 938283907 958260562 895405623 930940183 973127839 999881458 791769264 935260388 320614656 650027661 788490944 879099120 917919821 978168856 939232080 967237196 946816367 949306586 961815680 988968049 67108922 221942147 592807216 994180918 706687692 768568705 241110959 401260004 612059611 820912702 820068475 943985723 722265534 836925978 445939918 602547902 443227578 728490837 267126671 455320286 323610526 800734756 588604654 604262248 596280038 756735991 609442971 879416417 666684032 884096148 95345435 127690178 682141838 840536263 658529547 998358772 376002367 962865236 915905089 941081748 278560536 710218664 526248406 674360279 127004268 441727492 467540216 804775232 929718851 984081641 274206622 640158201 985547925 987636452 903242896 933441016 101405628 933437911 277006919 749310758 707122917 770837121 602021089 798019473 414933076 839153411 51300065 338908075 993961588 998709654 300945872 901733526 124552557 834691914 223747705 457430719 818067147 893414886 58940366 967869991 210841039 534301984 391784015 908611619 399252754 454995642 908952538 984064112 442379704 837150782 460773647 691975790 555358394 660715963 53570824 509272341 638536927 641700493 259858443 467791839 856385276 865068463 328253617 452208860 264900756 927492338 972515807 981521968 752369129 767763337 257011494 730457414 585880093 833537028 762731614 909427945 831865549 926700473 806376231 960255931 219582477 813175050 9273062 722842489 70759629 391149827 838360248 840931570 845523907 868741345 300691879 336632572 133240548 483471034 446850658 535923067 587405895 647538233 420828344 840386749 157435356 923264445 496466464 912159030 10032278 34818597 784358496 934864813 784162712 849239678 650118787 861629267 891576 59009959 173218331 950378204 234553746 379571476 469498449 534252960 576902890 797233146 407208255 720852068 903114495 998360277 593578453 954565797 984750569 988313369 49314026 98530431 844422727 919501733 840155699 951511028 657820551 932405587 806080017 971947477 233427655 803395715 990128390 992913864 76970333 698797609 935354275 976539361 980320575 987886163 369216343 673163187 419738846 474984214 185638365 712839365 732677899 959631344 589086577 972232987 804625907 912580482 573805551 855490538 631505274 852269586 33121630 343328876 820939781 922074706 466370997 852737144 460476708 848531935 130696658 452973085 685140044 982578839 22738506 709925618 626721374 987576379 361028782 819822368 973688817 999659664 623998368 866811436 519008485 557610074 777164426 985005025 791465566 793268696 566336660 650331791 947132242 965843470 690303052 715609195 712406251 994511643 879225143 907342709 810532206 969866526 776412007 894824220 206112815 930500957 290711170 673717879 722054847 750560038 808010828 874933515 409313264 786090130 809328520 871400753 606535513 839107204 976235723 986433249 716733449 762103035 557813274 827762146 808752752 932264843 24731161 357868666 473387972 941377525 118617381 301095110 998426932 998920919 23397062 325996999 868281149 956759987 914579808 942948927 898455441 985017669 491659437 843716987 271281570 574035079 984409915 995431526 804811845 990610529 855639417 989612964 229123177 778206295 306375950 523124541 65504593 583821163 389218983 855220883 987718358 992802884 487025468 969065615 919631460 988595390 653445303 734186813 235386515 660028993 978056012 993203460 262199461 316472858 785242943 936833563 398984203 857007778 84648762 618887449 755191745 772822550 694959012 875160016 312362697 730922426 370416253 887218315 649493358 728597156 688347397 821627638 637517573 909304381 990050337 996500625 520518120 720225757 200491073 766462458 645350781 989389591 391796279 427137757 775518358 963456969 660778356 822797219 544048619 951146926 907164954 946342196 42390262 477351178 10907011 87099764 239097956 888345800 652221575 712180698 52174512 215445118 114990388 625529529 348868255 933663813 950440981 985231644 421058444 666047045 502418150 925183601 729935929 795660009 768478249 973073692 913639077 940032254 497794544 607171092 397705425 958585992 619956392 955665043 40675513 657646513 938221931 948649713 454917518 954515579 407738977 698581504 616994026 854546614 18520007 324458303 296300300 848165787 943084019 987617440 836480395 919802253 704700356 951521193 697151204 864056258 110223093 336361488 604630510 888618370 277731267 606272374 755924351 914384066 549248447 588355615 671942677 731955875 230028419 448379266 703020221 930285362 551012849 761592050 927220113 984869767 370031834 735670609 934841436 945584285 53917363 486512295 252210778 252845927 237466314 470943159 800081489 858954953 418320040 925898467 291364015 606563639 521853753 557466274 711962473 882610381 623673652 757905183 931769525 993605397 51950239 733533617 777256914 887705403 181744903 434781578 942887481 966753041 106364661 392107856 29474251 453648923 195141305 377093803 71126455 479156281 460099935 683439201 411254539 930905093 982569806 988151910 808790801 933992954 585495900 801844618 356324369 654129188 337302918 987399169 309386492 457142500 99414164 702324316 216842802 253191371 594645524 791489627 479019440 807971913 913923209 914173684 69812138 772472530 136249166 708299047 976919181 997919319 24069992 28059322 797313387 935841094 946146543 952439223 381364617 563193330 723813211 740422852 77047540 967081709 854644907 946118981 827567827 906596118 262001774 497222164 370566391 588126994 191712224 747476148 778770648 997511342 906859489 910078655 769854388 951128954 956201376 960009603 62999611 328464386 915400977 952182751 353941845 407219063 228125354 460349023 361803560 975878996 693901237 744147311 635608907 636629367 112508586 340467180 93536165 519286884 709560222 978632628 32667833 442975256 339348803 755505218 985410651 988614355 833862146 903758849 871336446 959073021 944310312 987633144 253196022 490170002 37502152 95287860 952610576 977554728 859001401 927145924 251122723 334133044 886680104 918035094 482160034 679546768 310994247 908624105 6756408 742491561 302160942 824446418 181063133 516010858 984780863 993479993 559693065 913614319 249390746 540803390 277515662 641837835 195148691 489757170 896854535 971727212 342133792 622069639 500985673 906811099 931393879 944608855 155127386 390991005 373768504 406111026 1564978 544291050 146640173 678419734 677841661 912210900 724595839 834696388 489800553 846286249 490600069 980101108 260527105 853961871 473698553 815369813 828363012 967703347 201599232 361791741 887784566 941586436 371911781 772368272 610325520 774023908 624203789 961222467 269727380 318164575 333655744 646352315 721388309 905407488 185135129 458619390 707687119 960704898 287159294 443664352 805831234 891926901 48824590 855066523 629410912 633954285 473109415 904671634 306271123 628959070 827809089 915209025 412380207 517778981 194547052 550068288 794161214 959440536 284233700 991058810 935076133 977219653 246145501 544884811 287991579 412471916 325330023 818752289 246785991 427875748 579305250 765543833 848931569 858643030 195776110 880528238 837314971 983291082 650995137 877897839 703184996 723106572 640465342 754085754 496073189 637553012 822056833 852317432 908668861 974754573 366879997 511089094 773934216 882644917 683043408 813300475 526647245 636962658 814648105 881650234 930619579 974709539 802680350 965726468 802992331 948190685 495773392 842824778 538509050 962258681 580767026 746334797 94011541 643661138 396566255 677705203 145778520 832705054 212236342 339878659 531587149 863345339 266556410 353995914 307419114 332892727 698826130 920285164 959597935 975076656 567065866 932941595 546361121 894990363 672847928 867208545 25273062 985490607 553581722 916035509 581249309 727071624 758634845 945095418 296510327 974218638 854667669 959327394 790420558 879971847 393563060 902783734 311883558 414341223 836931698 888043244 607490377 737910035 29719071 590945562 258668928 570439330 775343698 922326031 623026488 908719981 701636566 836741094 165179146 580136053 925640179 954817969 702164684 885949095 606901367 862998053 799746557 854730728 129300974 497924713 624971172 968809301 422407040 557719672 942465039 979392942 483314203 941520797 927236829 973612204 562565735 958500314 782273970 818817628 374430223 756598982 419789578 677353768 540716027 692506596 716898489 864378442 867802993 875809465 993430988 999025972 886401851 906821951 871131457 920667166 126466132 771963497 254802837 271581717 205332252 790729415 671402731 673495354 608137133 880342005 941055564 961771356 224618912 987382498 434446454 442821598 491828351 570333854 892016142 977536751 806145482 979762637 109595698 441823411 947926716 962867263 111864868 478110379 48810905 436329473 435851018 712981912 531287778 697966552 737006785 846137736 356075130 806557585 381324194 880931451 558168205 790481892 681951836 804605773 189873344 417714171 712976124 773306190 950201004 968749745 213120042 634522099 933951171 956456691 198229829 603873452 367303215 973121945 38021241 485251680 463525894 738125779 742866158 788747540 713748295 798309969 114349490 550560645 760529826 859634742 106550398 976987867 423954149 528610655 464527804 772670648 818142499 840915190 65839238 605319609 264427893 430486741 236865625 799912440 617599773 912259993 541600106 595758333 12239611 912628459 239305627 695630821 240508241 364876048 381170087 910418964 310865113 649083197 699003961 838383885 695143627 789439446 445684430 599537522 138778807 865166886 597117431 926375209 909443277 918531563 494987279 962066376 88231237 191379358 537623254 679080378 35340621 573978104 817720104 860313518 16914169 694653606 839455314 965245954 666458124 726651067 594548113 678159180 303643126 904597376 148512472 799780082 995621039 995955962 527802284 893321522 642435279 709532904 916275679 949861176 787101002 965799990 260246743 502174882 735421156 893617941 721761629 972914985 855815894 998802970 409616224 998790167 754606394 858484388 204460998 916259596 276841867 954017019 995770755 998400735 148083588 255307167 420380481 627994765 41214343 816956403 976963371 986325436 751669082 976681630 767500981 930526738 533752953 812471570 752984720 920409907 47436474 794731855 715593256 950405414 450576370 705384127 55296277 512827502 900922063 924882991 697298194 954518560 327272722 595311052 197192523 269785523 428987301 468456520 990232620 998484239 311728910 882427888 395054490 856832384 722018285 738204467 885312781 941061201 992786337 993720176 324410936 850441809 822855815 983878220 724673954 940998634 773782653 794432622 44734786 579040133 876605406 932103328 351123835 485821458 640964774 710105050 352077060 549569337 607903940 608248288 981031115 983531937 731106188 787805984 415539953 626024102 702734820 876631796 412076387 856442837 725379482 809657786 185115437 593516100 377879815 863389412 798449620 913547559 613791514 645522878 390009244 569875706 771873000 818932153 421941415 571793789 268206517 477501992 187644925 656697261 80638388 644151634 228085903 726470097 514045365 716695202 32845460 551651993 192338376 964200078 172927978 408058404 503881087 961898468 260933123 788610920 814796660 836455694 497845758 917647349 772112633 851142881 854946266 953152377 64569583 193805169 471122931 797535362 935814259 981189349 831438670 913643313 271984761 609914749 335404297 812321078 707287090 899472267 252229717 344546663 310410037 916377706 269590298 879509950 753388543 755507489 975409399 986235872 471889266 961314394 624295303 689527900 9033438 428753664 877594602 907979771 924950027 964834293 301307998 362565295 394343731 942106855 944307747 994239130 209795018 429243843 420509670 908470942 846137112 877516190 444610573 456593603 657010774 730770122 627103222 932653206 620791108 945023058 493837886 997789272 147928236 927950358 985175966 986963557 149031450 780490557 19719330 636761110 562007921 581264440 558873082 601535074 392925040 856887970 199398550 877274080 935217398 990909833 725360666 907004536 909790083 985009023 575431828 884053504 365627175 423648777 96677331 456233058 804196053 837399152 470180662 938947109 323319563 969339692 71774490 960049680 93135306 729211854 331987185 692295289 217673152 392490682 632055272 632851214 922556844 954103412 451777386 527010680 56582290 187395734 953656119 966035499 939136535 971326949 909213952 942835350 313655362 397203228 187795794 521443298 599986634 657949263 763739739 830920278 933159194 943258412 254947026 276736738 771157411 855082264 87869418 568330167 458886379 546528762 151495408 258070491 851811740 977302925 696963587 907267114 72815491 459616836 320810785 596622313 681678727 886002172 459000285 559554235 88271549 536822891 453171956 861809137 541944369 988300584 220975575 568478664 586841877 791843641 88351247 687348609 883628802 944104725 890708606 926303469 648729455 703609343 909167002 976275299 332901120 967393024 252850291 845317992 242610348 436610512 230725561 430449256 97759521 118360847 208660898 551286749 850868320 879388626 510175348 888866898 994031900 996726720 666421773 704839675 945699722 969193915 671304910 828718790 203301994 590177997 118812379 362932802 975443041 986439441 66842737 173558751 431917612 915402550 708567050 865491417 237659354 824214964 726144474 930228780 597158861 615200891 34673264 391339675 944908792 967667038 987847810 988791666 589958939 672603405 211789792 451287795 566336213 931350601 586227734 740668095 541465887 573116880 984938993 996661605 750705532 879446435 845134897 906773706 774442350 778034856 78692847 830571135 141557448 818473186 137586491 914624160 793927700 871641057 134470152 662150407 780629315 908050987 177440072 429698169 327742954 536938543 118717086 669891119 116025550 610376865 212759529 745996113 388079745 641041869 669357204 938782811 61674564 163075258 345207808 956307175 240263522 846783244 757823480 848636751 964648924 971764195 503584720 720999654 682862556 808515601 236809051 764180653 682772455 710235210 785362499 871359204 400324220 480797008 351918174 516850966 220260767 958639636 228204270 904928906 430595082 703581585 420891605 432726792 152449132 739949137 715063171 933130680 300016035 566972750 608935452 671908440 874932883 954094501 777710290 887082499 602871934 725397054 832986803 877298257 137947720 138601847 395219661 617399544 231446292 936435029 177137503 513419037 128188995 661910994 196321170 922538296 664406134 665610256 992871921 994527025 687197290 928133649 294342773 858568404 514517174 555789596 459714273 901197847 320993752 412373937 11332379 592767537 454578395 636731768 92713767 280703972 989824914 996811574 585701940 912148308 593250804 921589737 134194245 897738777 797741695 929331075 920433322 956972098 124368452 818743451 678760857 702256864 62455058 583035061 147417579 499658899 890533895 993930589 338135511 970311172 583259056 710351664 932633316 957351808 239694920 272446724 71349041 126104993 147772354 970070676 53282698 275211181 249168082 602328758 992139187 998523534 465471090 985028944 916621418 995636414 648053041 955385163 492981665 813496736 265761684 395607047 32088983 464417489 375803571 563635713 195100032 944640577 689794651 709163036 267436764 741058145 5910063 53471294 98430683 781077503 472426483 615190444 570231106 596929259 921284179 970540306 103901805 673155188 712113445 814069665 199559559 333728416 944525311 962237127 77609434 576920433 192254876 451159960 446169206 991038161 491455719 960859675 861566841 868807815 753449779 877673899 580306796 918377828 526024616 665943482 66358374 679239823 101063087 971573559 437540926 727023793 374513692 605483768 629419184 705345988 162613223 222351636 703882881 869881617 938354555 960903879 952958796 968164141 57392007 764922972 180708774 902779103 846430841 943449245 575189560 761015578 454498379 471763778 760197291 982280181 292957723 774048185 870209656 971040041 512456191 740937031 470218989 578236740 451683267 786856911 604947131 662033252 581544222 595620395 371505010 680269549 554515398 923839781 10024597 677512177 224699224 826807235 108733733 331575880 627888319 632507997 492617236 997727985 171939141 698127037 679618206 720445106 544906422 878059451 617609264 771397395 236333283 299980468 429366903 846629467 961674545 977826127 606687959 613188793 373478249 863579317 959320023 968874931 77252356 753569818 684513480 996969942 16208201 328820110 302221080 555349172 679025725 815385371 516922763 928934412 957289175 998996164 715796954 779070405 570219031 892545600 625331022 942393209 294527528 686156569 5022495 435812790 193771028 324162914 845123085 946766159 987740093 989330861 243720550 291099370 552899563 782488213 439424996 501656494 792527463 800344454 341186662 745390996 535648111 868963150 518764240 816869821 378619688 608774182 658637932 960943185 509119749 864034456 95115561 106395535 753507718 981605634 535550349 709040767 327441267 873844381 130394588 471601305 215983381 241576363 542976345 843861943 674519302 784293551 753783579 869582060 210280993 671036471 944078449 952368173 585166993 808952677 417090452 594191978 5573684 206597309 49830802 851603309 761878389 774779819 547476920 757754193 690657034 891852144 255324498 885481643 973253570 981400953 716235945 858567093 205885923 321981767 180143630 519750546 661604030 826954897 672289065 815904463 111590774 729538534 301415858 387335510 398479819 755231489 937434304 948784271 91332729 619531174 462413466 830925559 62345344 797001624 297561332 555210706 590355605 841172563 540055687 856082633 290965857 468775690 171379566 427069956 848738847 904435991 128938525 530116911 614794121 802242367 967059905 990764007 28778853 324819054 506747747 726966439 410208579 846491215 477669603 803438593 128421707 182414512 807974957 952725446 987784700 989317100 379216855 686003145 551187557 664670473 568253184 780928856 766553394 899193673 840472557 942157853 963646773 996519741 908124635 922626827 52917681 610579410 586153169 975557253 652697365 757109378 67861953 648592046 902164816 950058843 72716505 466671533 363754230 999032910 633072488 898219054 488063479 630852771 14794525 342455949 526631686 935769808 142398419 519916706 87806426 649719905 118725909 504530437 394436909 649499247 705491731 715519210 644839685 902332115 852786726 930086581 720525378 743609425 896404536 976016349 324455519 347116346 763373544 871742913 648626341 717920098 264076512 923992571 390092508 767064406 273751682 433131890 896099487 915721483 171430556 457296068 789641773 811122638 472831747 652349709 535868842 588345381 471286045 832327112 955990701 989959593 632919244 753548332 63724535 134086540 453076464 909997973 452354294 636862352 752430752 840214244 250969635 402204505 355618647 638734108 115282907 674006417 389020846 789972833 799263039 811023026 365129266 876877078 201514972 963842100 12879064 780468350 639567647 967263587 999921035 999927633 911267422 979108870 863141296 981969130 908050437 915396752 378870570 864770872 864910536 932931712 873528765 977258040 497602873 610445971 930695052 966184911 728795554 748656842 187455852 284146984 562380946 819237518 41562687 525958356 421756084 612219878 840456028 982847242 772583840 983664602 489988239 572547961 239983933 713895513 779425565 996513607 759876392 842092044 46530383 958854641 354588683 527736637 501559214 716966164 924264625 966531645 859221149 876160025 322540352 927279644 882573988 923636041 219027440 985865418 99330294 900224156 509989869 843838418 751795552 770186271 395074844 421842112 27616592 800950408 291297171 644885426 842648197 888480828 667641615 729754171 670053563 852545433 542016308 968116059 131328654 575713375 122738179 697128188 446585743 466492602 502083435 594463083 739757874 847521056 129305367 430024499 591659639 954918036 868066012 884585555 788385428 912806470 901903763 988572094 839863842 869759638 47793007 360962041 198634260 306356261 587249789 938289409 384846663 413583740 835852860 992094184 780010611 922100494 816046086 824667101 938299512 956158874 763606038 770008670 587453877 732923957 254065110 310924738 111517010 586646167 817964134 944805901 841913758 941887852 826698794 880086160 863709861 907484223 803621279 962175650 761119651 769930150 329915660 611357351 446141389 485042225 230057192 255628110 480725375 864941152 291067222 541171401 396073237 670854471 60656829 852585847 602128646 728836799 232471406 892359635 448962643 909647467 435720972 985142148 354496848 733447385 369715582 405177059 129263378 168928874 747131126 790415988 818738808 983311425 393893266 587894095 708228214 851398968 436048108 725589720 305009182 619289216 259886807 689815808 385411354 775414497 257106021 257457489 230283008 320500617 293615414 914268696 499269265 985947322 780786686 962547898 867874742 922538012 666776627 903779971 953108747 970652720 795253048 820391218 61303740 887948895 131073616 374413115 741781535 850402668 779832544 930641549 721779096 821305194 26481933 930583342 29143178 559862039 332223543 774221265 539779984 925074057 542388514 776163166 496424746 630389912 704307224 970791750 478849620 895991766 485987377 674618207 100696883 276459913 277414837 532600156 819648152 915735008 162669123 913658825 233049046 558697796 902388278 980590254 273241893 713753912 182573695 634911237 622255468 882470372 394949666 849135542 944511734 992736695 457868716 865621103 43334492 863462652 58184117 232003214 93712206 123982689 872184179 906879303 565568009 908312656 52944370 982191639 698274085 838614416 872567892 963428459 507029874 897248002 502127526 682400455 484236132 942805108 680082023 792179375 421274777 834560112 785726297 819035324 750352900 960246957 929495981 994091927 625083022 819223234 780200308 793022619 149543038 341459447 917781849 998867100 130654175 718099976 34257908 811623564 78436586 367132470 62745989 582388922 504878564 694824176 479199646 936860198 986207328 992002660 908676507 964301610 721375144 960711832 262141449 902355370 665655943 966229694 539856998 645586478 981034194 989930616 569939077 772712363 985348207 994012727 262988300 555871512 819044852 839639493 951799187 962632184 84386751 547190921 699336706 854239568 912363734 961408688 490781717 855493572 857590303 871440219 945951006 953817929 67492816 927579916 675436022 881702582 927466709 927529727 72546333 638125543 60883990 306629170 549330216 779183688 3371263 518216557 758792713 991361555 567741610 875120677 674025447 766416658 448063780 452953328 442302105 763441607 411697372 503802098 428396100 914273485 528477862 985734414 677070468 685910005 312177953 677038141 233304656 835510961 378078255 531578172 522795038 929031562 440921410 535854162 416906685 714306260 176946360 767683391 432440478 770641587 612632143 681674091 362914611 945241344 839588438 952593299 56568788 967940276 208315165 335119459 982050840 987004888 145283526 835549837 264333020 671427725 958201026 989836180 76036658 318183507 450675882 872001248 304010670 888088844 444892250 785335917 559719413 790770373 45665887 59869898 236268977 911280705 499608152 748342242 324582709 724086403 514689195 580059950 352079064 775370174 563547477 858895637 237617667 726070823 540527372 646720845 122954732 327956382 150744951 377670062 857698886 860038496 456615970 511628889 504615854 647840863 213909282 251464268 849962968 872857363 589693332 636169999 479784353 551987415 859127801 895527612 188825987 806677908 732619303 866677477 563376335 931331339 976637439 995266282 156344982 238395743 173618765 953848204 822393037 950958407 540209245 864157929 900603634 998074777 707088111 804828825 658080876 887870792 932615059 963247505 517113927 920273244 330744950 669653552 508381037 999660383 326250808 957634098 116503227 650889632 814542532 820221031 850995727 952852504 178991983 889619119 358239138 853326350 135463799 416172306 264113075 527490054 880969533 911067634 801733130 983167342 331109588 787863765 201841605 858792342 609498810 703795766 237158391 240918509 778639528 934773273 272289304 822898217 2130209 602762252 176228061 994182469 879854844 939375180 351189276 466090775 735590092 801930752 85001608 146904014 643738038 904425841 298273948 623150280 90229803 347399535 480308505 687563364 771633159 955032601 12280800 161388784 975402060 979519933 911606398 943757782 867629011 879473970 63217760 296139459 511509309 853204389 772646691 893315276 1609236 361141730 363632891 965387960 874173739 917570497 388683546 482713130 605351224 996640452 624593715 851593282 693995957 697285900 118042982 760349643 509986466 948347653 206965336 892034662 911862071 991999259 615829485 633225507 984317514 999315184 129758129 953682870 66138832 523697134 483837663 752122781 925892573 939514276 54764960 427620021 355974709 958625186 489512885 607167881 105536205 572140473 39355339 901266235 696493022 961032122 618818668 968559440 619269182 656220647 944138827 957825534 831014541 839574958 63253786 835097930 595013511 692368788 819995664 847986153 522387423 614266413 480684638 704828514 718007408 921341427 209032593 311135807 73981659 843156429 495967963 810128557 62941537 867287391 500224946 536328054 381466456 885084256 471889199 872032251 973429421 976082603 68829080 603730258 915528969 948253440 139544442 809255674 696747430 994876544 672175959 933260960 510036099 936318521 77297418 398146584 390026899 625942849 245546664 700840687 211024032 615551881 690999171 992207690 593155883 652304152 753430193 788396642 796852077 985812672 805948635 929216693 956229390 988568667 655722407 919845523 199121175 756227035 334622438 805916385 274218710 826883297 705565607 794957236 34798545 863173730 975520629 982404033 966337793 984798602 313338764 365385705 23890008 813325107 37911315 759831446 640708405 967576404 153990846 189256947 754628954 973219190 956370624 987018369 4720516 277019238 778911258 994929057 724199194 917291052 403603824 949228965 646870749 792503475 434423100 826645427 95364635 800891959 512232695 620424836 655616457 659080449 885301746 893590287 335925602 738697880 860742068 923625874 536496979 622629550 250295542 285389961 236720172 429012420 924822201 942752744 286404022 992992187 168552433 623362279 903294003 976459588 338780551 843512759 375694889 842452907 909184429 995089193 330091851 581763759 137656825 509981224 166275604 891532118 927735030 967721788 596158926 967805822 273770110 653173381 249373630 890714799 271953731 465047567 529891011 966851658 798896461 858245153 896407405 977852907 701441896 803488633 283177450 680548103 959824966 981035255 519944136 690882987 177134377 264858471 213375969 881322270 906145256 982824428 919827974 921199537 843541427 877777103 657635142 975733700 829432580 871360512 201721121 873931136 246922857 909956530 936254027 945270820 645307060 951209540 652271518 867175344 918174766 986592315 828839366 909002593 95143780 708204223 465403229 758524355 762952885 844640968 646183167 763580145 402908165 476038915 412267645 674260907 595791601 596836403 614473325 872967895 477366819 850505152 343605967 723686836 78535564 763247568 315012326 799004632 130896528 410200798 986453624 988041964 403233563 669605586 770581773 882669572 519031537 901821844 964295059 973488838 102068396 858247499 198353052 529642876 58418756 253685413 252611628 916252731 612987209 986853078 211485912 601217860 267679613 868816509 525463375 655506495 343446482 467733813 475575820 829448540 92756996 142358591 437049691 489579519 889277497 908155853 463496042 571815208 939078514 994650493 819691330 821398084 190881326 731335448 884282610 993154490 126870929 304148340 843457752 960426839 792114461 994099286 955790015 956938127 609602188 860554882 163020409 843833277 643226372 694376988 377086512 991134774 446140121 492627745 196277924 348182799 514977840 616408794 877767527 955964744 380412862 544994979 780261225 869576361 51925975 547213775 709242007 775988995 234909338 415314796 918527488 959629492 488726641 888038779 28063951 149522169 559116183 766047479 142086400 949218916 819277199 931094099 171056369 298065803 529415839 689615939 770521496 929021772 566032842 703499193 78212121 423128305 386628447 854435817 821540814 951302391 381647349 873652531 618293635 635147053 796500339 871913013 242575440 763359922 298843653 893419965 278073600 849839502 207122473 533739615 885500453 918964437 95591408 600000966 869004418 919100672 896494424 953303592 794960989 803500819 174888020 993422574 779606672 813149859 49170364 123214086 530399120 686026530 660167352 967133915 923649879 984744066 94275044 998205378 326814512 999766806 436987458 829106775 944768775 952863636 298215191 918671882 320927986 433750614 963488517 967070006 900512689 925725270 134365281 462682110 181272657 626591758 69024153 174670881 803255877 941125027 428185812 802632814 618981946 644471085 921955892 942482452 251518340 355875373 358926014 379933175 910544048 992931592 945709492 977248372 782814681 955969880 855274139 997780439 786796285 925359876 299081839 541274501 951866112 974255223 540141140 993639672 635020324 940274120 131395737 334179249 282228326 594501070 876074896 934286450 647654567 944137029 521072924 948054857 339324984 778030504 342562868 546493712 660157770 752654811 874889773 892155255 607669018 633829978 22419250 505574031 104447801 636370389 989241143 999447624 254438511 456970880 594758528 922998240 308948921 923782437 119529539 235098135 179765137 511208065 596527199 803532896 630943063 927845088 753746074 990859049 820861868 825072377 583102581 775677749 756143091 905434009 335129320 455410421 382107585 681372839 236385210 655445216 213942036 509469858 94419091 848881422 672656696 755480543 434278070 671962042 57180331 828748906 344053453 360571864 911965990 937637461 610917863 749579745 959475490 999986146 713482781 870749937 933446370 969304228 357874753 732946116 894119908 952474517 974764609 998818358 203107802 610889780 494944342 747244900 838582890 986342096 620210919 774290055 896578526 985531117 204425015 998983745 968012129 998442400 492563993 856925159 180604833 435987179 288132426 854716087 56714024 891989462 26387569 593759690 519090763 976830210 8894733 300634765 980024560 996961302 349613564 963727860 898257384 910773167 443205900 529646934 938197508 947341092 302886766 981348689 164756391 969162498 377816749 867236192 182122363 938949453 259328425 652336089 258580711 392699115 362904123 669455310 864405394 968765101 144648920 232624539 496261857 575706444 836361245 997556906 670986912 677143803 680667035 714774780 169075263 676845478 956998879 974028397 889387526 958647517 459215933 478949395 178892771 864356312 972003157 979019009 177446842 437765678 413797019 912649458 835752175 993175730 190584711 982622929 249498192 715995853 198778881 945527354 105819829 500016336 865040900 916626458 899473932 997388851 336216842 579510678 429912759 970379030 223547427 692548868 360154770 892633943 870967201 899782662 579329049 934253863 619050812 625655117 978413424 983698457 478616890 711845697 601142611 884652208 232384849 453296942 165563995 407128995 682805639 934790522 105449434 942629492 699245707 731604576 676643925 831375059 840912184 847847035 875054082 895890555 116181615 271494122 830017984 913979933 826262282 988719852 91142801 544235777 904738646 997056272 43281182 114020509 571764925 886478435 59883855 107613633 322512208 472879840 906637219 965163994 629180851 928979384 585866035 895823388 860807930 906229576 526098649 554689159 283859455 530045862 65982365 871358240 337241769 554371580 360722264 931846761 95574182 540453776 77143911 810653872 840025135 912319191 358446705 949122965 661982141 864297263 268001018 695213385 965164775 993644106 397373038 439019558 441403919 447923491 45170702 611270903 589332742 791540984 968547231 973573253 61306285 584097958 165406895 255532597 230458978 574785095 434364450 912955445 418396151 975826324 358275162 832821683 823699249 924200918 801860354 875757418 602413021 703654467 985392343 995647404 503243752 604748803 454879734 549492737 491123542 956501909 584048921 660388490 357548915 729942162 526440768 687120356 529549938 724124215 181288687 483330936 266015968 905856204 133065528 510681379 89340115 289762178 4806431 496723368 256238483 770188591 169642248 347213788 757497567 946350472 607944046 637617712 875339456 958038216 89956065 627112330 102623573 777832391 280842381 387641468 690053705 994850452 204872805 456035070 99552887 327574210 475781899 977104416 669505647 917809497 901431111 955436130 956028726 970204226 206528509 596365737 501340819 653085906 599213901 975712828 240262455 586677381 999351156 999892581 875113545 947995226 807532117 943568174 111773110 743220238 877378703 972455178 171880006 441794619 679802936 904463468 375522170 849929018 118022517 498596197 606664605 660420164 663213033 932061590 497646542 857766362 349986564 826937363 921087489 965048475 5843446 351647547 680418146 895725433 751363351 927915468 729018675 870329687 178794951 248719618 323450309 794439766 702125311 896115292 104306633 828875137 613651524 677278861 416638479 884656616 432610170 767406199 427649510 442869535 62291154 597186019 890287285 972425964 949257635 984279889 108127106 937914717 522496351 810781939 902256749 983513730 801700385 856985511 607601356 751949170 72695991 510069417 943986414 972625576 239607903 500795617 215021963 892729959 863113525 954107238 429837282 854058567 947644935 959734427 398379571 712941962 980593052 992215705 197553345 470286148 438228579 620241737 590611052 662490113 406993340 418124515 259686435 884689011 896061835 966933801 801620794 967341265 576605434 952977081 401186984 799014727 107700489 818447002 707550715 878103653 565195855 756720352 408466622 544856791 479427007 677658161 116757182 823998981 273855015 435198720 668218189 942845104 5394931 462671773 114004332 616575999 831942686 954289163 165333903 474136928 428313775 976457485 881991694 982517815 131466028 576235328 740933894 780906620 289379444 739887158 764480226 869877440 842676507 865200046 210079004 302924116 689689272 707681738 163032069 292445469 698726440 837595957 605717272 938832885 189877937 835521184 965507107 979607330 860108269 948832398 995746109 998632245 660233178 859791540 627165867 880773853 693647692 719263892 725700282 757417404 329875982 384952423 589423698 628941455 810513302 997346925 348117370 675669540 396813161 828813161 652264569 972664816 512353774 555013828 831676908 887524551 138894850 213133176 376884840 421499994 850206919 927176066 249588454 524383505 394436296 923334538 912640445 988894803 48141186 909930192 154961607 357650684 286435168 918826623 909402953 925619918 312834243 591374835 761970410 829843918 309254183 440298035 76138172 77049940 271655712 819084759 481448390 791480383 996444146 998902212 810088150 811020230 229110704 318756231 671065780 679785397 542085777 651822987 230821488 738979323 850347200 913980178 150247601 850226876 427179027 938715780 292839728 316587419 290615735 719976430 597566536 845194148 957703151 977551887 691280412 732092267 814164203 895348825 117341929 251032514 367102210 761928819 942172559 995660852 652475161 847713025 207662610 268487692 343088113 352764730 200723575 648412438 824286707 947512894 234426307 333968057 404011951 853964554 436338826 617102245 877459981 897996130 696695194 779072784 612809213 708476932 768015903 959481027 544500879 681482405 939040250 990961584 674606133 772393451 743353863 903749126 217506697 922639216 677747355 883054775 380014798 399258481 735177891 939864176 454802362 472952978 342989016 540843110 43810474 779982454 257298777 350478256 164068927 211912102 886285208 946575178 446223923 736446700 818001175 936592112 572835504 878230527 911250067 915582309 252616734 980501346 727423430 967407310 316602551 754619885 791272338 794340548 865437267 908710856 386900272 823206292 86041713 502043476 933417244 959889115 401444413 750701221 287786308 990295376 795413459 860152882 138337866 500080349 173557364 714035016 18048676 610399944 463738678 912645315 973113447 977958686 96585376 979504356 396918694 613078636 461208385 531577991 957521327 968981839 780964615 896775363 612985357 848766675 639338361 716273086 197175897 387402686 615859568 839072459 744301197 857993589 500792123 855288736 83886958 133060666 436256471 790746284 918215557 949243064 254446325 374469101 383594662 954600888 48602272 146675834 533107487 721164886 909842799 964255591 212553171 748377329 889758940 935600284 112530887 337408214 731751678 962322981 90296512 318881652 494437535 985026236 478280340 744768420 170745359 870559467 986932350 999438522 142011664 665179792 362337828 543801016 525290312 905343745 722817411 989341317 652880408 838756289 512101201 748972811 575630505 838184841 485823381 647561697 439471862 835350528 774358349 943261284 335011438 566191145 66173109 85197979 834376481 926209996 196003275 406244745 477275879 999925093 740677810 918555853 42616311 579752242 65221377 537331226 433360624 872380199 344555003 611252491 731007649 858369211 111137462 658752701 267819270 539500681 805069447 860049471 766099377 807577478 90973980 710043897 681587168 826052418 416368836 485315189 999716282 999963617 91195514 447284170 420706015 671595783 664159554 748855928 401439035 905390020 153692756 811013098 581550814 641036058 871254528 894759882 522740399 585694260 116799517 267628925 764272799 904968427 592835309 934856383 67165921 922523523 75456287 250303514 247601153 556587540 844461526 963140453 377498135 872226712 162361730 199615766 163115481 476864573 530571617 587063634 518420879 827956524 488067350 706350905 314431948 841837049 201121349 717988051 223241076 558112700 892952708 970131450 651484910 845667381 803803026 982539914 311495329 368494319 481661470 655656596 91312433 925075389 536459801 597716481 465714698 613818582 999951848 999995621 379762179 700518666 356934374 431297690 968032125 970673928 915473638 922008101 903750524 949024073 387670338 875150261 993204072 998406404 804081678 993160106 810414463 842159590 911663126 938606041 219798973 239197904 231288369 512393420 250079587 795390662 891630325 895352251 460906839 919747725 788901704 995288147 863909141 978779658 70002853 730130032 257339610 586369645 342967151 428887324 672095517 964742347 611176816 909666001 108298415 467936193 185702804 485584759 797684237 973060321 375400524 676873659 721638893 850236491 857853866 993256649 829865675 948291956 377791543 615883564 148462001 638611656 555690391 687028014 967919264 979653987 383850004 409576333 637121868 660726057 466246381 497124287 285622640 710096406 79456369 968651060 411626758 883602572 694124424 697640346 121298376 303513897 275422720 287052328 397649752 605937116 504152745 523244050 886947406 954074354 218555305 262035362 313812886 318935920 74925741 707151126 263885121 699229960 328986135 574480098 390231803 480913253 310753000 429291606 386352388 575677948 982612260 998886417 919992506 979686737 568838431 957274493 403565717 578024194 380016606 819253345 31528695 624721432 134175191 554820058 424142508 800194478 644164764 704048789 389871409 774233584 526158717 744810006 669424026 797632372 449537296 714680947 644027629 760481962 202810089 802339996 772964514 834790701 966490269 983755854 878524090 962048835 707374890 766298310 422657112 858372442 936825823 987910357 755281040 903574437 499762931 710357243 969862527 989860213 907175625 997848152 578110346 874909189 476727834 944293413 443352294 450439877 599388604 934556901 268523371 572164939 69106937 85583559 110296408 563163736 632856610 875351165 165857138 755449633 947223664 956393037 637256589 669598650 813576870 970137275 973725106 999400022 726122817 799818456 165434815 243374908 673160171 966482616 927231732 941522810 122489754 733397741 899820157 986079380 833430753 993881738 947293621 986207079 885839559 962377593 345436867 376795565 769578010 862769779 148687655 172561769 328707954 903298685 168678375 545509752 920636585 984367347 142313010 348903160 122395199 993767790 223513106 773030566 58169131 961073874 501381635 560444216 636411043 918539687 67062228 97287100 74063527 376510066 194804454 479299009 881972169 885846070 113830326 343316826 634465084 874279612 159182122 514943649 155087375 797325054 819245601 939723782 825009973 965083309 866309225 901636002 588490280 616886127 811288666 836261322 72410891 632647801 72513377 260271234 977694670 990171264 909264412 926679459 436885417 679564243 864940171 973606778 746442326 867574490 636293284 673864224 356308909 815803581 273263828 601851510 47038746 231077641 451824762 527180104 156645612 387328935 688092188 757288179 508652504 534389257 852695173 933207700 335163662 977763475 848869659 872767975 775752063 917603279 621235829 799607576 732515576 898757045 89597535 668415975 708627940 988475069 612911372 896146591 468948098 664973195 199995408 915602095 338867137 964627664 921650948 936857170 915382541 930049791 268286292 952208125 342561669 388063611 356453121 788571477 204480976 576340568 463185077 888748049 568948796 944003841 872357332 971481825 570785189 797212068 242025796 749889886 202262062 680451901 143741561 922900019 382917833 668620242 648504200 815737945 84711959 919352466 759618510 808699149 830255569 837719294 824930693 994863283 510210606 867547413 413606448 449108229 527535110 827160364 963179822 973536730 259586899 750954730 250727019 527764772 442322681 491381233 393105496 472288298 36769426 719171337 110639055 284789967 41283427 373494745 830868284 996879581 381736143 813101868 311631033 497264396 924908438 988526224 3218361 797530260 600596755 607813053 253080978 296640269 746173024 979783195 171649838 980546695 138122240 195498379 530768187 819719436 773393237 949908496 881753837 983549035 721569624 906277750 623032157 995045856 933382584 958154130 764510647 930169384 920669674 954569563 110942477 641039085 670876136 740285275 733046340 771813802 211715242 801557717 734201574 983894395 714796996 847579625 218975177 340865926 914554108 933549175 937013498 965277641 729067673 735788361 798045842 856142410 337436344 432116139 868306286 868556839 461637802 780516319 481116427 754838971 97853277 777896440 278587942 516028146 553474195 974135998 20311940 249717795 205904664 999515411 246902223 649163502 642078503 757366992 954962072 979098447 659284446 930523723 611982018 820128517 213065420 345316760 690692531 780043203 732949995 747436812 883093129 884729264 317405009 482628588 346918353 847778472 8934078 632250710 542967492 629393260 554079616 561718880 946804366 947416881 931083699 958672093 212699456 665967583 233494848 986418734 507379166 904413836 475708497 735837313 914803815 922167957 914353780 998333904 147431378 233492189 323339453 816301704 773507171 830257466 180367910 183045099 676893445 738524706 626024008 731314942 819840656 929862877 193900059 545215948 951099550 978801928 786570248 815599565 393774123 694723564 861329686 894243318 923135342 979909848 38989893 435084125 505016730 646456543 802735375 923653682 369065205 497914554 549996421 562312760 567811763 728342318 961028926 979635669 480791120 984301476 544675985 942187985 107794404 557540330 223320409 656094965 392735002 713040726 693528195 884644166 900865016 981799643 467932166 541843587 467148221 545959281 914767137 932498451 171062373 662969946 963065983 982680453 140401393 303687211 533089325 990817177 981481330 997072291 892279794 995474985 339310905 610961686 305367603 639462086 819040543 834725801 177347615 818189412 862128265 984255213 434525195 906589627 692162849 980624378 545266275 769264865 902390291 935820334 403297193 644463741 302671849 857518364 576043937 949202218 849692249 956149772 104866021 859187361 817229239 950997249 577908347 790633006 894446463 942626273 501061508 581997197 706602584 941266479 932862816 959125664 303888908 872096499 981447201 997514147 174008700 194888911 800356414 845568749 443047556 720772225 541716718 717688756 151013103 737218284 696536799 821076948 953121335 980349336 612000966 770981882 754998758 805425277 215642506 640455940 521280286 989072066 370009831 434333591 40694893 495291340 439099671 986408777 702244711 874580498 818749140 855003182 716107337 782124809 418649510 601348044 948010164 982367774 146363380 423873842 73368853 878431397 368268472 947226187 12128987 670974792 340360551 920068939 131449064 659759288 562371327 827722912 562299716 616170825 533360180 976242552 210687007 370279868 39467014 408028294 503103986 978363221 793814124 999842104 642805220 755089109 905772563 981953004 938536487 996422292 553166874 861270700 284710201 551293438 594098598 609671205 62338942 595408568 994194882 994409668 561692944 571185705 709402427 932973729 883430734 981162982 855852983 908951411 181639235 568081527 81927268 125276969 711943773 967672659 948232136 979226644 774326933 892439250 245145683 875388703 861492720 944294374 111827269 338288486 592989 606052950 966363575 995929706 957598572 978750897 494131714 962881223 312760435 663488804 85166106 971238374 947799818 999672812 51635737 877403862 280744871 293193184 857297399 862000254 296196893 952043087 964540947 985075392 579182350 715774627 790575208 886141047 679683620 932911823 77877038 430594673 943120790 987138585 353215194 932681912 108040961 690738625 382342338 571280960 963413768 970910051 580108016 958074452 536314904 685986740 933622688 936084829 286036513 931992745 238025210 346091696 564318876 681135555 942139398 967245978 27080981 962309266 448162289 809836613 161147951 593659689 698583355 961561081 717783343 803729220 340507055 859483376 942712257 956524622 805107641 852082970 523573611 633403542 993333041 993955733 208585601 970136244 309548086 585349202 533276327 979774357 591914021 690239387 378558714 603374080 996618940 996699459 212222884 987725229 559581489 598825411 602969465 856132554 558346683 943356156 96683600 910083113 333188369 709633626 232861133 975907403 293081540 656405908 856776744 910978753 191287120 470368189 70570080 556705360 487818210 595178125 173113938 660237077 286620664 530230044 742420235 881542832 780629750 861194760 270258750 357869018 725727186 754952447 244105157 643105169 947499580 965245903 676751540 742836132 320218978 875464692 70266692 420368850 811853409 827504676 790896031 878702802 723224093 943848665 379068753 609150744 237615345 388463357 754690347 910696890 186915431 790255132 781788199 900503105 185837221 348816169 338299748 710951192 743229451 996489703 347796263 664258154 728404442 902136132 294329432 665870406 986595937 987646696 260356595 323664335 169310570 695221603 754827584 967725366 85164865 740777116 409796085 824825107 617200380 935910437 826000559 980255576 780815676 785860182 986580957 999995622 336989227 437723680 799558755 901742507 158214453 265945851 99179504 811246352 678210963 684911332 887657725 945560849 583098825 599438873 932570854 963757598 166534052 502881799 281536300 526383003 630910416 944612611 450708606 676564820 427433447 670200680 129878015 427423391 226869155 387646891 84299417 164367024 382451849 806799504 826424029 921135486 220603804 695078531 582994728 940707956 996812124 998536584 331832280 376546165 926149872 974167449 53881259 783200516 885408183 931481601 514150248 693755620 434432646 940599971 968481145 975981793 312987523 741577215 341460812 349133452 730974764 788541198 249073040 952020447 310863509 653468659 816862153 905528557 307515047 319553845 921833696 929041710 154370284 672414113 115312192 479963649 479652397 887741513 174320037 655482730 981391410 996298838 719306556 756182483 23087590 787044051 939487680 950315620 990481688 994233945 918544427 997306243 376510356 387015601 201673822 992816421 865170729 957434522 321411468 878134710 598772888 671845522 154294054 972185008 425629057 725690693 129802703 493396573 602232726 649353792 870255376 995085035 996172095 998196112 710837938 734369231 982239988 991617499 698044345 738886679 384379064 862294385 602136759 947928736 23475336 92469511 132518161 303088020 364488758 430959725 451467480 458505393 223059484 571698776 640268045 712487282 879400839 960155299 267976418 822396538 335212740 837059263 49529947 117463271 786887526 984525641 938164016 939332689 324992089 447857290 41248803 206969311 20945899 592205286 217163975 494289831 675334506 731141715 462384096 873787215 399970248 491478569 888550633 959825592 856410438 980514443 93861403 141390032 385560048 591068215 299759769 409019435 296430224 865860988 808735210 952581263 158278229 243598575 98539361 749446159 918156942 958115755 365212952 799823401 403665181 938887274 276931760 718275984 384609167 521385636 793367329 934954859 821397387 987183078 492405280 847164824 565129381 698862559 879003912 923189459 965585385 971815798 936682019 940004691 480229134 765692593 304085345 420568684 607343519 726391218 183864501 530966354 264127682 479704613 875052408 978232409 574025836 985269288 741751490 877519413 224824093 462753707 843886088 928061531 625395915 822235999 776554547 808167057 458297783 758236677 950934526 980068116 287206908 667070576 585260041 679059654 503285251 980510896 248937111 363835571 574621704 816789147 176344937 498015704 985873436 995709087 286174528 931998999 121669454 968755123 468344105 545327255 389987139 630888018 304638872 728981067 507957669 555769641 654100753 851931750 285609730 759274896 118511235 509292465 564069127 941411478 220092112 832394201 345841285 539137522 556213933 857185845 732929420 998005018 327280283 731379842 641455485 668696385 400582326 601739586 734990196 814426470 931087437 953758722 405794147 700537803 642649354 712800712 218000036 535742538 24216139 423673576 154095054 835572834 239096725 697672258 6796658 903163114 895230853 911658413 925382769 972734957 136121196 424263167 282431524 955310909 30238991 847084349 917223607 933031723 48176000 789226770 131972282 881893224 370043041 839746714 16058404 137675537 563315008 592734300 329499345 946838376 433292880 590756400 983836270 997652838 434388046 690181634 51851320 259043740 857601750 896767916 133557851 659802894 349530338 942345892 421861441 486386899 462807125 865020066 364120177 647591955 705397473 797366673 557712890 678610370 886975656 942894181 50067447 813576486 497085187 680716049 398756770 857255041 30861874 469118703 441223805 875881708 21158261 468157202 737199176 932941521 124648253 875089184 779750744 821127915 742924871 885162671 785963953 903364310 346389902 382100302 13182993 356373540 106664892 244965409 226359238 525806640 408989255 681547491 663470258 943999799 220971102 244610074 232356148 720662026 427815883 890395905 696465552 971088170 298056298 751187586 635253849 750710124 957921423 972789437 863200227 966181282 89419160 933028043 112437157 921460450 519882770 745045891 921118092 922692164 42675392 381501080 586547078 992096946 43800251 98975431 164069612 851369961 590527796 988466877 891412248 938183101 856165769 953437860 414986205 839891271 821978716 938369586 675663720 776651208 141814766 678403195 930046218 997411232 452506609 919263302 169350018 446163686 401552358 749635277 513584019 842719559 312819200 541531866 804808116 826425065 332710821 471726499 413828099 816490117 43072922 711727860 815971869 848904393 954898272 988480426 905472824 941585586 551177745 762286662 890472852 993757892 327606207 867613717 953713488 959137993 993080968 997782310 971133974 982563667 387085017 828677207 848230611 938254763 146346347 804466832 170410988 450165749 848217017 907633464 35643149 458847362 584493618 742577636 592382104 876943932 554917698 727948236 36969097 73736020 943064978 945503687 861641001 889773897 156790412 929749997 127038787 685884193 595056508 834653385 3404803 736202011 672991970 830110291 617985041 715039838 212339235 956448412 755525716 999222969 189234488 900082254 864213279 981923785 561787659 798517487 629283977 877774345 87447923 314746423 117749027 168997755 267550125 922759453 239192350 916962038 15367981 990998444 546701533 953612720 444422770 549466887 868212636 957033759 576371124 694748419 334581848 890814509 970710260 999590811 697978731 824730062 44305898 572932182 725299081 846587043 976112221 980299149 483799486 949128701 560671633 753835162 321097420 625619008 649504048 681531805 541565718 700645510 660274136 687920364 99478038 647282509 121278077 303699713 231649472 678869997 282379271 869242626 292845321 341969771 21348450 64182760 312516076 738152885 190841041 991190212 268631918 872483907 265825241 893105603 831181691 897664246 708060714 877156881 170719818 254279444 358154783 874132626 43668675 163297840 703809983 716620684 732989546 834694565 51973857 296788512 264613411 599725291 498517244 777688782 634940742 856183172 806173537 855566286 920871999 960195728 480693607 992120190 443830142 513056985 639034827 930404270 768432081 810313263 532758888 752502856 455024236 704061940 582863873 856939560 295288822 940746258 721247648 814762318 468862408 686820237 895637090 958854180 201993427 676341340 212880607 385064082 832436931 998310149 808153841 861248669 467206299 915371197 426538782 520053901 773204216 942608022 342218811 886655248 599554348 717515614 187103235 337053076 444524924 931411852 404837300 746106524 315243876 647349108 492323912 865317199 389837739 806070345 279790825 506850728 73591418 590982467 895834326 987752163 488501476 701359155 745557315 780066512 361888763 630386483 179481338 485274835 305446559 521569027 884110455 956850871 348787877 466370800 58375860 441911075 400628412 927406014 429930800 837828843 683088909 902920750 446254453 583830056 667393186 944345937 957678801 978917936 448348661 619005246 895062984 920063353 121719639 989831434 14955544 77234523 138507291 957966371 633669902 929128698 28575804 253402671 281977263 898027499 819305540 930565429 810613043 827743505 758562682 868946163 819412135 916845393 113485555 390962405 597260568 634709215 222833699 680983731 495519904 567578868 6581886 271349986 325025384 452211061 801446142 959493151 741596453 790287292 89984127 348304051 106219570 767874070 633827051 679042788 882746595 971560282 894758860 997589939 785266614 940585744 607648505 646179152 152246904 632379399 639460533 844487617 246204402 653598602 917574787 920932031 142238500 366979129 737066612 918664506 723998192 925896457 787733438 964325296 638771121 816822620 669016338 790642484 930500285 983875609 796530973 995049221 472881993 548065261 535330113 769358091 408172540 907257204 423269619 894693401 457596127 956840753 478364408 943084381 485471510 816390311 560817521 859316859 744754691 875372282 261150058 354951081 83202268 270831367 132271337 613319310 678026324 750174833 810566133 854263625 92997741 331030241 274727493 645528516 926646584 956540592 874979101 886841777 886984995 954374227 307053283 852137542 485161985 919179560 678043147 915361621 277405893 772116406 500393629 619864264 523827320 753615888 882332385 917999485 231470890 866788259 840973527 950439630 909035132 946743814 60575795 778411847 712268437 755341455 130109493 373990296 851298005 970563809 499054230 923675439 667581827 951487917 517688309 757849030 908717206 937393099 283064230 417909703 374063317 975968468 319888559 934723935 620980098 722205634 264418795 279994919 86289571 412874896 916532009 918859741 245470706 742794428 392386306 775885219 521512778 962795176 419822878 816029524 719601386 751397144 92078972 559912992 514895944 905671443 360942704 452390458 565329605 918716961 613822504 692433879 875535151 895982186 441900080 895241287 623850742 663800625 369414701 978100888 340143797 412792353 447842510 596280723 434344718 885298126 644138901 661780938 433518135 728199491 280329269 959506058 719991531 982962166 120728964 526724719 657291151 869544348 787062392 836598418 316209635 587123479 866174136 956980844 143374358 314593848 488909893 811609965 159860359 800064528 909940075 953814075 414553992 851580965 742635192 926226713 501666400 962511314 847706043 932685422 198817609 803968798 243241133 423041607 855905363 975855660 485642101 656534096 252983735 501025788 285702357 514854247 735565384 753128538 250947887 908620347 357680438 632899763 450751104 845810264 244432006 701382102 719439114 943373209 868464766 891966467 504280861 930029428 779592843 945077611 800222294 826715376 94835447 714610146 302792323 974034379 219463298 328771064 344719394 968484639 87502319 918010886 279587540 812425272 421452061 500418706 135593302 619590417 522043322 613177731 743494371 921722561 116480002 815403993 265866147 329480814 307656638 835742537 401889781 597745684 685740671 875915062 599074454 699811364 440388538 980415467 5927140 783259315 368595967 853136999 74681592 301120330 810804646 981266766 847005426 993767046 396370606 790264503 753206894 858505479 327961142 634607440 330744155 752829431 892012527 985341687 649983744 960290244 705279215 949977108 959854127 992657517 131208656 385835319 677029527 957541363 13769114 652173516 378879202 808010415 953672523 958903023 705126172 980931687 19813223 481783403 211361046 349607448 794377448 822402432 424617924 511722344 489657807 987862088 44727559 312891965 131842512 457964459 531644714 902492986 507858506 583389703 977514253 988995611 744308078 992376408 428721342 634857450 235811696 955795708 625186826 648407020 146296526 878650819 525309284 635101739 849856250 903214117 308675138 487901606 327542338 879720464 831356325 913573796 212924425 833878354 105288631 335749541 126439767 601310655 374131632 376031550 340093515 418912307 886970457 946060641 193116328 914475994 652241428 866263984 909294831 923011122 48021623 74153561 447827607 721531713 957042359 995982300 919968054 982502853 625699551 974159439 676090603 745372274 664427595 776033764 844073733 898141345 894560207 896442208 15823795 742638853 851355806 869986670 616649879 727638342 59452731 653077211 428138844 905128156 222395823 667699219 76875810 790597595 582693083 745415608 877150028 970701080 382430187 858003598 733944705 995301344 549731140 741388656 540806588 556242466 239330423 641117741 111752380 551548158 504522074 870585328 705745755 735912043 82980673 697428767 668202579 963590361 451473462 960049639 758514303 816671651 27525639 525881490 349626535 956356843 776871553 883593873 345999272 567084832 702853361 868032956 224682254 454440636 663696357 922243780 953057443 964067419 995122663 996078980 807727620 967358897 549859936 894428526 254735707 620021885 95779445 168931678 600052142 986563341 534532476 789611462 953913826 965553948 323859104 849315012 494826283 890771542 957763833 967624315 772121777 987074839 192081396 718709689 745723081 883029164 28826149 333936376 159851217 912172300 944491118 993118220 423059453 637468688 415278246 419081615 945606254 983742349 433235273 937439022 996068648 999728438 261056672 343404807 848314350 871765608 775984118 797171362 918452535 934863711 676723678 906475102 511838617 567628123 979486706 996885965 403075257 889051463 620202788 780886895 940501612 991814710 18715627 993241312 938318730 944696667 916343514 948354810 593579166 916164214 243856280 432023496 188635776 306613393 677639572 949643215 934576070 986900209 23541997 124691317 11047319 147984601 358556566 818253539 539739192 620181182 10281857 598342060 126125040 557203496 941090724 990482161 798018107 935232267 635896766 901738260 335461396 429264502 167599530 557116615 31032954 219265920 440953865 861739148 901565182 917936564 788895946 862460795 408713513 437662673 223989209 317039289 8284635 320314002 930147911 951277911 456728535 599184292 186184149 731816104 677268495 771647954 891038081 914026210 584493700 901031825 349845002 466508982 834739669 877987000 693165078 828628240 369825417 439403563 210726071 616229359 207312949 794501173 836833194 949434668 456909424 932662108 468094343 989655825 600919544 872822834 720748464 871064565 197614121 516331315 854267894 970774333 928003053 971485658 691670134 849122462 736246194 770639091 474734356 604619628 191557540 731806749 22981178 618803579 392762089 904787202 446214906 542944676 498980299 578916598 134251798 855797107 246114670 768196454 253640027 505832476 566236187 794749600 881792139 981891583 278072776 416546029 986714554 997847838 360830854 626703584 184640761 552374446 155289048 421544074 162915740 185535997 680496703 687975138 934246896 943993127 342624629 914867041 16674292 23072192 464880662 738472349 649156498 675408636 634235316 756831361 572672020 824605140 467285701 527157518 519775869 986711373 886050834 968488106 195712064 499208103 134472305 446081776 739750746 968165516 992304133 994671597 525080962 946531240 307722863 486334680 423413068 606207278 630773661 643579833 444203240 488282808 817034146 990723579 163460162 347049693 587376111 806911551 582942850 984330295 862776169 874276748 778919752 844166497 589628772 841632562 650531205 913002595 906311909 960107697 73594650 693320813 205373267 421451539 876664455 988046727 102701298 553135960 380261044 976936953 228274274 348186927 160417463 380346455 711885314 819539459 564695034 702010563 440786338 843129384 560762735 867705338 586247326 812705502 453916483 553025841 892706783 931766253 856733056 969865255 294790468 787044856 334743795 448788310 624976878 835331130 532464870 760203070 640069874 927296305 116430669 828896371 525227386 645119340 931529745 974165742 204319068 218980796 698961893 946582245 84007535 862489520 107025342 648893217 360262657 478851125 435063726 749065929 304707466 810136075 960668234 971007698 823251446 910687206 15487323 391320337 458565395 561728780 74025999 806396465 603627855 910654637 834944532 840428697 195851181 663567960 447526142 812203027 309764807 867079902 727406756 951927790 667293546 785633231 946285077 989153008 550914073 888185309 792607953 956318974 388172888 417084346 877250806 952596265 545310148 746144330 326641297 455719794 266867891 669151401 17992751 920326188 161710318 662903052 719952765 833942678 62399299 428289391 138897450 347361500 705894258 727140154 404051960 494727324 700388601 701144898 84042966 480248084 263781441 868132820 374326722 998628389 238178666 956128359 305193955 362194480 939511622 998747821 550020310 822927340 911929330 970505377 455291814 915387393 747699973 756732909 948152140 953482844 75234923 875404316 831082719 869537377 342541950 753589049 737294489 941703994 979612999 999989324 827153118 911154323 354740472 701948971 812689607 974623003 190382154 334533861 572659671 977562691 581527928 982811040 231091625 674924501 139310847 520036839 886132245 898394033 181738001 543508210 883414212 940816854 417767260 550265288 478078863 680228371 8381711 823974782 259662663 360944683 560086435 729773309 353820588 767671613 313748909 636702894 117682048 791395318 218254612 591728679 232533067 478621589 689938482 978613360 354450417 619651233 67142614 451825098 96731740 485547701 86334398 271712622 690447181 934554239 351197941 840255977 131743050 694884219 2433489 64520917 858993009 921838458 904013922 955034711 673476294 761302899 388152686 634499218 861299474 979735270 577432977 826777128 439501385 970631690 668237129 670099202 569835959 953247136 466694741 873076468 181533428 625462125 984731160 995498288 968560882 971548288 12450646 234435224 317171707 939224769 898024904 940937633 132763697 623404581 102084585 562540396 649115670 823602283 256003977 404919338 4710873 389692852 765053562 855098090 848115637 971656559 142941602 468541637 313991422 794446565 840680188 924306850 773431074 881424728 77708145 285289057 714192927 813601518 561080345 838229718 338047826 388611547 546849178 991781999 148217328 432796996 591608127 874593121 194969717 264564394 716611590 969984981 277781844 840500306 310430255 538414835 267210703 766261320 874779588 940768478 19340940 339581808 320171550 840554179 153071893 961497082 617374263 652523473 491137170 877030633 665258373 708107646 263065701 688278149 315256694 461458037 815601682 859451634 663604337 866956168 474499180 857170315 288480883 977375888 895984374 911679381 381348887 570257755 635029090 814569137 847900214 849192678 419454107 525720291 119272274 876879229 896164615 992403502 683425202 953216292 645701998 915117547 712395743 904480445 739033395 856579928 563904833 757350203 120435320 300018285 700576344 852128749 575696388 772123557 107519845 175615203 377903792 459040946 372808951 556828361 599067811 609294895 778806531 836690729 908792966 997734939 714128739 947804097 279427756 429874248 449468090 851327421 225679387 552441126 445192735 961798751 433032200 739985156 418849681 867573233 513919483 702897119 520047954 532160424 294403738 939283136 166467078 606158665 306976266 497749965 135716058 224375526 309273287 790975508 36760211 671114366 821629480 942344453 196849741 433542856 985982322 998659803 760565934 809313732 919831806 940476839 605009280 625631990 248422503 317698838 577398062 882657677 578596520 648247891 929620070 966917139 133648597 169392075 198819195 225741030 114272732 884339276 805864225 866483905 381700592 634153159 687599803 831216907 389937330 664971439 330001771 607649145 18973891 353579311 804019539 851143525 277702484 486853633 323393792 902257877 25555783 213697069 164926474 176049910 403737016 966964100 163915042 675533581 515000201 608003414 70798970 534121891 125690390 560667247 428290213 572831772 67476293 618564892 680873002 925212102 964194908 976594155 532153761 995454421 430633287 986760266 750070273 779947139 845970072 904933889 299540564 884941655 970161571 996647757 796401383 935175618 891661958 917929653 825563778 971640314 853787398 859425466 873367038 911050447 329895566 421462906 892393085 996995279 684901536 780447646 637730459 841857002 81971726 742989335 300185751 446254527 733080718 924544549 911450340 914463972 904507485 992149014 692737826 949313945 533625215 941605964 831577174 935652411 488091209 991525514 631383867 656230904 783360213 897906427 385298618 566685518 688745140 830785538 856603717 894612488 943410740 963537565 523999463 948488658 375566350 548032787 497141660 507111566 408316333 903847692 618464775 792774176 421583477 737570802 450851087 590054429 140810507 502479082 8640851 450212346 336563487 568352851 161927659 470976710 875169325 981588861 316046334 375268290 998377272 999871660 103758777 541991875 845338549 943158689 206482967 883387514 178418631 513355555 431795731 912657008 599962496 901708007 984622567 994987314 874507830 888919519 965698208 983019350 162600075 762203206 33342700 143316047 586903834 806656951 163925662 668881839 440749010 844067629 68688977 222018324 446760662 526292536 474298545 510438108 317060629 501097504 748830172 912461373 276771132 528882471 972941072 984072407 184159675 433857659 952276491 972955815 998658302 998939480 339131555 596503427 129494911 892207141 89213634 387298883 497652159 630414585 183198989 931186250 418862232 826055545 402011023 513712133 816059936 954592298 969485585 990391334 436044068 807031263 424454079 804277045 496469232 558039995 71906834 825290581 90973324 556709120 911853536 978817915 646473751 727670918 962676176 963036551 882123690 977851798 811141291 932269534 667486995 771787185 354570893 462676408 374395861 736488943 788802229 881246912 7943670 226733963 399649637 630882674 98440850 524104847 335822031 409131402 209497405 803394257 867490610 886025022 893913009 927773390 389853361 741834007 780621249 871043247 640336415 869243724 113272588 752791609 170803480 837221597 524160398 663080956 745832235 754851066 658973293 832485406 620028337 800779287 220078423 763969025 668425405 822008848 494936816 974319384 350987519 513765397 193439257 553138674 39497579 150588114 542862417 733731817 965076392 995009864 584354699 930768894 166489635 814054155 154968261 332867914 243007257 517941238 212664553 745358423 225505553 838661130 704661253 887694972 377951730 810840267 907488170 966905075 857400495 946844459 202184582 722608439 769392263 956552756 20301574 380592515 266176460 841134239 333668165 528284310 904276777 905795085 953604814 967547099 140586154 610881981 590894534 919291892 790035477 979857528 252474914 619231761 866307488 901966917 653252107 739723073 846726223 945285597 398014422 485188857 531598941 910819624 674196816 790409698 546076831 589235618 793274570 828732708 538503446 999867871 22730145 444134008 320386104 715688106 629494729 648577893 702566442 737688860 191519527 578132249 603134215 943074922 441803744 970752952 768854323 940883811 623445215 902732035 75458089 473129575 956876587 964442512 574102094 800291127 998911316 999402981 797097312 866925819 15958307 522336960 159738462 311949117 950391739 954189361 851930839 908527536 790496986 848510890 898857978 955828023 319344570 690463930 452351843 745367580 420614973 999372942 692513164 988271717 337237657 974293394 879634610 917573441 262813711 519760942 695805075 938218675 464745316 467811541 888093781 996498247 206981224 917443413 779262248 914702047 360038116 647649827 943026459 962741084 68178406 176791655 853275696 862846569 49547284 644679600 209055333 380363673 760830994 919065679 629888374 672706123 848837731 902606310 863499464 989926721 156579607 888989211 35923700 919183192 123355530 807277609 432995988 512033321 735329028 944416117 718122109 787963184 628195414 997096119 961300910 975277064 918189473 967275391 738569158 976002959 653355631 864473299 406848581 465841195 190631640 458322149 819105398 934456288 551763084 712741612 736715973 760593159 961693430 976642824 999823183 999939225 456605016 766952065 154983527 621378046 327432083 906957205 15716802 271000766 199179502 829347129 960414698 962184756 462529512 929417074 205036348 602309353 61807975 672603480 63580387 509844069 247686693 793862205 837342008 950784721 753242092 990318842 932428679 999056013 730033695 995434289 686251335 765622666 39099059 416297194 121864428 968328656 424427690 890129826 999985624 999997025 484153625 622772656 866290386 929695150 531838579 538835143 14165331 304546558 845171718 972110520 311623979 476721832 299590587 993134372 968758288 977868893 171185836 591256075 271993834 839137974 289500493 545205966 514028739 900619573 728748887 956898028 51157430 293217038 580305494 595332404 218803636 563545578 772529720 896831555 966368839 975254188 604907631 866519194 28299329 911001443 410964045 934463829 352483523 369408594 744008431 960582898 100269115 346790032 706765206 777472230 252114232 684577598 371149365 753609466 810037514 974794429 911294964 947458859 829415537 940362188 677857944 712697090 520451389 545065912 85523416 491342994 434470273 552420894 222641361 944757668 631148764 767574637 923960704 930142176 26482386 842421137 44342681 553516843 163990504 828606444 256218611 798212265 780404404 797557039 746358789 911680720 516412893 736047977 156411298 160257336 774393217 894376195 728788168 733211173 989618797 997167521 479148481 511567654 758643465 823952245 181227657 213100298 314552588 409123463 418279874 895568383 456651733 638380750 83062345 258251379 587310741 734728185 383888248 483339051 898625300 940895177 575867147 963835727 309343431 839330305 891250638 976753957 326098115 672603576 271986679 880936212 969269229 972879038 190207651 378716755 620538934 709065746 536295219 611756380 595562023 965511431 480618618 904759485 511474103 792162683 908376551 926247721 415322881 993019611 832063671 884870993 308361151 696534517 976731191 982359262 646477052 789453178 77400414 534924647 248437595 613623615 550985051 848098475 413202834 650798494 409129269 743647718 667653720 917630839 464932361 658363508 71153463 561398700 502677980 982322496 897173240 995269906 870017822 900432500 666743761 744275457 220319163 474335158 935602791 976222324 749259629 938907985 15305286 434480273 837473769 921337375 750326402 941117097 295857779 733062668 60092651 648779122 437104564 819417707 90263562 789560557 865149780 883648675 273112587 567630583 841740067 982061088 85779415 467056154 300854908 683720618 272253741 379148558 770633673 962643817 126389331 629074837 909516435 983448986 456486188 823266730 740439675 863691643 478538347 513046367 928674942 942116730 7528970 834875652 416826519 511115993 740357047 827935692 8029255 521467654 245196662 587189599 560638080 971411711 866350088 873135534 567763189 645229322 307823710 314832751 158162895 893947656 673615650 775932139 744302454 865860859 691960759 797529313 619715292 888971413 725740712 983429649 564239808 918265425 496153134 882480297 891135365 913736494 517563862 535713488 765929914 790358276 636705126 642232914 66452323 244459757 137250871 463710813 552529541 714725317 68984699 485513889 915383734 986232675 549934968 909443553 757625300 782146179 457677795 719768212 909199052 912521570 646813230 681912768 677859083 981370642 633640387 974172519 718304865 757646442 211201109 394014359 954775333 967073657 996790526 998939079 292565892 306796897 156218095 947554713 79776838 668605475 824876573 889444423 427049619 736756201 732000513 916082598 134785307 945791602 90141605 857651562 395684484 487247342 624502491 930963715 168342248 627673176 104414286 271337139 991844579 993830067 698273656 917684159 535477042 775710645 983453488 984847244 21687699 73246838 729638997 807961997 514099865 805935077 632413057 790549609 752628316 986506983 227725363 317082254 972413271 984745285 119067098 935925902 680817131 974028026 761820286 854740988 711834491 947338857 300251711 803738521 409826079 575898326 357784744 357911798 398076805 613591988 480341260 769814533 707461981 911064736 483502491 944823965 118693467 655593127 124151365 689742047 113650229 207304101 572551403 896226326 36713648 353340392 325612958 833634486 380632790 696256446 980311564 989428237 620105774 941236134 879076541 881168122 867737428 991995051 644062834 663644830 939825197 952484219 411947019 505858360 669299228 931808353 581246603 849543795 214944968 261479597 828677429 971714339 760572958 980998050 858436398 930883271 49392683 388688467 725039215 846144441 602397418 672446974 710721751 931343918 109022292 477947001 105950611 115529245 847623732 872275748 329005329 464459936 832337671 843756868 770168810 979021757 664560343 679591647 941389476 980630932 529530666 777319684 643960862 668845551 257029282 867900315 757313434 786073299 66911774 762891053 532472676 697145597 302185111 947020154 974802366 988329699 815881919 909063368 3794474 303762161 306680973 668365009 493575326 688930812 762319995 900318040 433340574 540327070 393567125 958371723 528356635 664851304 116392187 330545373 371377952 525160441 699006740 923193429 866986563 957464877 662380955 859281802 950898554 965287115 185585405 961002222 985599262 988438963 327194282 980453806 981276584 984822007 457896618 842241280 518916293 705593042 790542292 801733635 706282322 728115396 209092634 766660845 243227077 565856523 37987366 624680913 936367405 987025910 743541622 933158960 414909190 602375346 910082230 941275809 596597275 970106232 82688801 808362375 785077414 806475451 760524822 978225685 494493932 882605917 276006389 834132308 409120101 795770100 425626115 714544255 502347887 895754371 867919295 973466892 142670755 367067397 550382202 995963188 339242941 352443086 388895613 430779825 368965300 419972465 476600105 868538626 671842126 927086518 689311256 882861984 309421585 372522102 964123632 968967490 736079301 801819672 774839003 968752020 293209884 965857098 303471164 569644807 185937775 915786392 771756234 902744019 100604033 531016380 293593513 476264662 667071267 697044747 98169344 444398047 298699879 919559863 933806338 990656837 428231296 835442293 845933395 924255436 886240430 899720352 941287186 991498498 983121228 990734232 114047462 368173209 730627212 914499971 180210163 273883868 722255454 784154836 808790047 943028195 299565977 793618262 389333380 951156969 672720588 998917487 694599819 945289586 209886414 341968104 570864594 985921513 673254469 903570167 649314438 826393114 943226307 943285033 714265075 905384236 564934646 663793766 223475754 959542403 348938330 753079069 415545536 551744671 537468405 777165279 324604031 401530180 157333084 402152464 796088766 931373662 531378190 706320522 653705820 827774747 421723834 643079898 521411764 902552541 696194295 786402177 543984038 830079692 664137646 899168195 217462443 292981179 987999088 996302140 163711829 394850977 405160068 443588970 361628731 557273118 560293006 718675645 437986948 790512747 99436523 538544923 414106092 800052373 535127390 813084215 275651304 339670543 825285574 877515052 331728949 816660658 686524069 853117827 110883054 986459274 960408337 986270912 400271564 849537414 625984755 806714764 995095990 997997029 933756776 987638684 209461228 711960293 144530392 586067002 682255876 896502851 559556459 817118607 909073715 969902881 789256138 955365393 732423747 925389369 678522399 694348429 894933558 966452096 22567563 958737597 347984000 960670042 429465686 534587767 416641850 705892996 741382459 794262445 159591988 364458451 887798985 892533276 59351462 423938224 578590973 997672253 686441651 754079317 97861246 846048416 865348137 887019351 38391114 214869879 212341109 982822657 484652756 850238291 348779952 398851451 958084954 982586797 567666202 580482597 298900161 768523648 908693339 992677182 850539312 937141415 568655176 915542866 963124431 964478436 464707699 768469501 690681115 741273484 550943615 663992382 813564010 994419595 262362602 960632791 645550381 989190247 544279417 604314740 381087135 901274830 107273974 617529215 221788741 304057879 800563750 950195402 593913391 845581915 840258472 976190871 618939817 860079713 655848479 751752371 532659473 810853416 272171184 661963493 556680309 737940880 100255056 730214047 68297588 467865564 728411078 889824728 974935282 981514356 426799015 683802004 769583836 916185438 707310369 820913214 307055342 532849915 335526966 978654961 201426890 528308172 623481674 830438622 696041253 963669711 933486033 990288450 151284835 539698854 330572816 660891140 576270413 722722651 932894226 946378182 239768350 645835665 987163694 990637452 611562783 911261273 602544946 800648644 354094401 800611688 156625225 684642677 783919391 924935263 794384374 950284574 670496981 700849353 573507560 883531365 10306107 967258308 142929489 165288637 392037742 569498667 830541032 953215802 567147719 851783140 699878775 966588984 989013717 990182082 352136791 666902898 661111380 977112265 203598623 638962936 465165174 823619956 48213021 859871470 354402029 453268175 793519813 886066786 510373596 901723883 849719309 963342954 152747474 870063064 470361370 805819144 711141040 814953808 527144130 937695618 574160653 894214914 263093847 838940628 331382519 387594357 256762386 659710784 96669154 852253822 550532318 761767162 483120888 595440010 498750279 938514580 46777986 843168099 423171108 701607410 372161873 923572765 894933582 957678155 893640762 931549678 284070620 928652117 276746861 853738216 199339815 537106632 788550524 997977542 952196989 987922971 678487716 827350722 691490403 771416346 958481601 996207647 453741650 940488239 782645029 784177805 381673242 453339603 371096591 471333652 466301577 553077796 17719096 655684760 93687950 921043460 10414734 113373112 920619711 976519661 200085806 545455368 194005798 954810368 412551823 668209673 825660110 826137636 839477369 946564093 630804981 999119233 803401106 941065332 300216265 825481672 212029317 381741021 490237240 723242439 518380607 716844595 198590654 607391504 958751059 959993308 126992395 917577552 536551729 913297356 678858089 826581359 532982893 561288058 284753987 654769649 443647199 946912325 194897490 198746172 192826130 982973000 577065893 675199507 3020905 19753674 793435227 832080289 486348666 564278616 484751693 528053526 216440433 613856541 195526238 826528080 909493872 968916631 725552252 781193016 928205407 940745695 451038464 589116773 843106205 972151440 871027069 959431382 651234945 974982574 930603038 996239808 325867584 330655809 180767153 771801520 889257443 982945191 510640346 820177322 248018795 768319036 725486284 803255725 655940764 798790064 778837835 985305880 458526218 599072813 81397798 375631744 172875685 905479737 680399967 685597040 70120525 173684597 176254133 870765305 417188875 680251393 383894616 487347823 753973211 852052835 587595981 735604182 768563276 963576508 477261998 575008585 810172649 870834649 220099493 876252145 660462392 911332406 377758585 811603392 130898071 211419438 746831712 940869789 769362833 816584405 342815684 828246005 819427482 866621385 488763962 657702357 904473952 906106753 546318227 610860355 761990252 940490480 708695355 709320195 302115464 589255275 24401093 324970062 671188628 900380413 901302594 955806058 45190791 650074429 237280993 988535153 996287575 996333605 366339439 685957327 611937702 613846509 331464506 843083888 722384306 981260385 353906939 687199369 393147057 889951688 122266247 540520599 160303628 365476408 417158795 454701515 329539623 832732480 255014210 927882792 120923715 374136742 208138543 230259614 31603255 560807190 285003022 433970622 968480520 992901192 291264364 454592708 103915198 761068354 597867321 650702038 351191221 539401314 97741873 324692653 296308263 632436878 419382606 802400458 177982898 207158455 322937285 479978122 968783435 990684866 115282709 333565998 30998647 51811931 262250246 513515731 504905279 520137824 796518714 903209888 548756 761095111 830279120 991711407 723951347 773311622 220740016 716432428 815676080 966873581 697999067 965755721 457687013 706095159 352138464 711742674 605379999 633376686 514309270 830968401 966511684 967000982 295606631 468534722 52510444 492587351 158677479 289215341 341301967 829858472 353134844 813067496 157062458 630714842 640879265 992841380 606804243 677836301 837037912 941371847 555476797 800713754 534228513 631441102 16712918 258800865 827471090 878190302 242488700 814047932 462356440 950658698 867372703 919937236 681770453 870285293 61044375 315658124 887946106 965011797 808812473 811876670 821751155 822986381 769158380 841969545 803832858 918414031 736428155 972571616 49725407 171242365 632037399 830919848 3812071 605639799 757458591 843077664 505916192 640396927 15046411 283760269 850304768 970813015 546944289 625225735 510927078 799451327 724121808 751177167 600129752 936064389 614826636 950245237 801579625 994090527 512707372 950963645 528766437 675687346 495778792 645861279 392557793 938665535 231399296 519212911 870541117 952984048 946965092 970067721 677437749 887937360 966436733 982799269 813777295 914949152 830497749 852322573 800812413 923623890 86003260 766471306 317864680 781460956 489700762 538187926 870219054 876637504 586472280 688641525 311029510 833862602 513746509 629898007 65949432 298185608 285328508 323460256 156506073 627728112 676631760 687077735 668981090 687180747 542436934 628198614 277200070 941752158 983941572 994326799 81661770 465030220 905072423 966792667 90024978 407654377 472593347 614637804 643451526 841936892 623130985 944855764 346097275 444016522 281375068 301083879 647706600 842458019 836482583 935333514 335516970 874086701 900063590 961930031 176066474 711764366 609102256 992950506 821831952 825960874 968186588 973836003 695575947 789907569 795776904 826133761 625633208 884608775 596077224 921715699 211280536 579606302 766786807 786598576 427299672 574350129 981668878 992927068 369830550 892220563 987549360 993434024 719546786 951500365 254720084 902521355 399973951 401510106 726976842 783862772 646136983 659449205 558295331 747488509 472255559 698849105 546142447 887046895 925438214 973391033 579024774 713245457 468013612 525417417 630127163 773149477 311308405 971057330 339493063 928901149 142098065 843981553 146953836 577480654 490972063 681879761 596999197 787628531 923452511 966913607 480111844 558031809 454073227 500505273 96347554 988978376 261853701 869386845 87559345 522664180 265698734 819859293 94978598 852318515 996226569 996395066 895941704 967920665 19647897 300297113 413534762 545931617 647087197 809546536 983965980 999615482 136909979 158265830 452081297 834301832 699513346 759403113 796469005 820738791 74720285 741115289 594460361 965568457 889827198 987556356 895534932 925184045 560039667 907880231 737739420 982868710 585387833 878638861 881561250 907147037 424802731 681878896 414672720 665593844 332673972 683743454 927167022 990985208 218996308 242496275 987862975 988761002 987012114 987909699 111269852 768141179 989839347 991794776 498392675 826666700 243358453 881324715 155845680 512735440 782362069 827899479 515193041 902969080 174339915 502246398 19990172 809860069 68991755 574693884 351165828 690708443 599683320 939433739 546031375 653595933 733369397 861469957 946054621 979871836 487458994 990058790 53148843 678113178 18887354 734959174 878269333 949729554 823656004 987595125 837788432 907397234 561248705 955821265 463809934 831926101 720031916 768196933 691077987 875992874 137956032 511440495 92803336 781648450 233642433 982950474 492988098 701007645 540333440 956251941 535104770 570943803 373058108 410805637 452865639 568696006 12938741 400427670 495155608 690938295 604036988 710391491 602331596 636184925 235975792 648976479 132825725 759816731 768838439 974809073 19656272 682761853 219732931 620859969 563799044 843274615 478791824 713374200 750980858 999222930 829257237 933726578 207898223 527876374 501025835 821084871 691940853 995834143 504530169 746296370 111293793 115722441 970001999 994586215 177160327 287742066 36674490 899363314 879804326 952490878 452728480 557813910 728551335 988765439 799089967 939392740 999529625 999555419 134064736 752311230 451790097 806039591 776144544 894345510 605063286 629695212 15865852 204103402 988982036 990750062 334950471 639362013 588455182 649032782 273346507 660667755 445149095 888854009 250474772 986651342 581104359 640099634 429529716 741645678 233427712 339649529 176154652 271281149 947843166 952542005 294225187 745711621 633688221 969059693 525874571 577351369 744549299 808821190 149989467 991529907 940915110 951937142 126657032 960554420 30649044 99467367 505006192 838911033 225843495 723689514 413384618 686329982 995574472 998398661 897426162 937386749 251064161 642683385 144115588 170923065 560250655 926752729 113938255 321099828 701184496 984714184 464327731 539812109 478129954 813317722 372884273 565610584 86936840 147746377 221005985 346686926 757769736 888921695 382521846 856259022 850248131 850664165 438595339 721011846 647345519 688911123 993610835 997348392 285794132 969382917 695750723 712885160 458417286 694118110 939599750 984239893 46600031 851920128 270837330 487509236 163660897 516167017 836723386 863758592 157826880 939581725 554415675 858905287 307598676 349029155 134266323 894263551 454011100 687597910 951995269 970567010 934420059 946239145 393726088 546265875 989383652 991936001 499589000 758475352 688694961 906946942 67857234 830429048 307657357 558136433 480356656 886653015 637895132 811596659 997396858 999647886 930025636 955857321 493492217 886483812 820326969 998764376 198301748 641763899 313614982 701397698 592880378 734620618 969559621 983438680 171047145 450291761 17064149 549859146 904718181 969126232 548781879 869211732 949309054 955358005 553154830 653263270 200598970 871804847 780687710 788158513 546808518 698249132 245008204 867634034 665563213 807498471 734638658 770395699 972824654 981425970 412528790 808599206 233485567 276414491 794248605 847738307 363299093 892943416 260902543 868235212 771762760 826715602 742836352 791159304 184076276 832219750 571743301 755557905 169122475 895589790 334374423 949018615 927886742 947952354 242591881 445918062 895683553 929816876 707964689 894695353 629673502 714174313 96272383 298957840 175235046 222245336 948274440 977581791 569062236 608063094 931386685 959715268 556700390 952867274 136537028 503983278 512237982 595261587 921049209 929863585 784660135 855198151 950524338 954525487 448897183 689067011 987091926 993752113 667765820 857725644 83161207 952340971 878605264 902034420 920014737 955029491 300089519 662107514 968609907 970007733 937104497 974234612 698432415 769923955 532602101 739150084 660970950 697371796 8956140 938157866 741902223 749432002 769290914 772588690 750568331 884480886 405090197 823814841 461870785 587591350 558740346 784313780 19226115 472997847 320929368 840309814 71672762 87324834 452750485 954208444 907866759 993091146 947611653 964960586 774786640 907991036 569564531 893736981 784005757 900438221 472791243 558843761 465101301 827345390 26948001 454808957 348139096 524075266 449783684 826244057 679593157 832127942 843879087 966479045 792838706 831920775 228497036 647704049 30777768 742954985 633314393 657662250 952313533 979984792 636182646 883251342 121137122 303816492 517508470 753093346 352515266 505862357 531897449 887127333 660490979 903220002 677374886 968078661 526850120 925080681 175590035 378352653 40750194 152146032 863030504 990503178 539092001 567508741 516661907 809249888 632604976 718206282 480169351 922798291 609085370 739309646 342610834 921838308 393677916 582160455 361460564 445753856 646026586 832699887 216914550 684387883 869377331 968245294 458036172 907064580 202225907 427999098 692280484 754125207 123600254 676416530 928897952 960067875 224401374 897336595 977654600 991499624 578767806 852042282 216267642 617623197 773910389 879548211 314619822 429435009 326669886 725500214 644774500 725741884 534230466 957364538 497124373 631992759 895801333 978117350 569037319 717407137 222777233 528340681 786062498 980293829 608335372 951219708 351550968 565077123 304158735 494926244 467158921 678743997 779984964 978169699 110791278 566333546 57238567 311521124 134344028 238342745 151895857 699473897 480916445 482244956 151268567 332259721 809230049 812652658 976527694 979407303 736591985 926687628 277404608 517293245 913378352 939662244 368430531 477768673 436952768 504332710 998381049 998925620 967168349 967996473 574259199 669277680 323571405 728086615 341392547 940699349 121018031 647095050 968024081 995216967 624706221 942144433 337276079 852190257 625941308 786795468 21648384 338393187 875479746 899223573 758222877 865620558 877998726 933564040 927674994 964127074 293838346 836219232 740886107 764603263 996330881 997241148 925061866 928209623 730823672 733367426 207996756 600690039 676536166 789813966 859873098 953378242 681193072 817288930 557755034 731436484 101056478 509395603 750614866 857889530 77340958 949402419 363389048 907685844 284008792 795315796 990212870 990796093 616977731 997558160 403429399 894726916 361387315 560584910 474810197 720860315 358893460 377578844 672762568 931921724 942744121 989998730 447983497 965134190 397069554 794937631 466929303 878407056 488809145 995876800 559027708 937906975 280077049 958980571 132878205 369131523 460342634 897170814 995298214 999848384 806487913 945254142 475605699 486491403 620696975 652343663 245031463 953860079 580895032 836936626 20026211 627350025 532780279 656836407 951780606 998283913 88433392 735105884 177791559 449454804 972463318 998004362 827585995 973773086 105579443 948294796 71346254 199335268 131135246 270656685 580938596 949329863 548061654 593625771 60178033 949547660 256540441 921350637 357804494 498722303 873488506 901006432 641610355 885135653 527211572 861725738 61813010 327846982 276232032 822108364 20079777 270767619 936109136 975292282 596046319 738239948 652922523 895637876 387741518 862433837 249453029 762981102 40237523 51404927 336372350 756799934 962316963 996261879 989251189 989954054 322215958 584755236 170885106 661861798 623720369 908619914 21690545 148528629 340931513 623071205 680565712 682407130 937399908 958968227 675647001 856169076 75924434 716278080 161677075 812746953 890792802 955970653 920760156 944987927 18687475 75544964 410189739 597558107 568551206 993844395 68620224 883594161 105908730 917715902 140729544 315455712 819555356 920309331 417006632 429880668 262319008 889163845 28027214 35359052 375000515 902094411 189002382 562657458 870217708 915037010 704340548 819547391 275383497 565213760 132388804 471055468 762454663 895036293 136535186 151289018 586691720 675746154 529576695 612488910 312072483 493462391 369600143 441151960 722149176 970419199 684845436 758973239 377366238 667054563 734447057 771505136 319620404 591400846 996624732 999610522 618275109 946349995 580195540 952182896 823032312 823713673 948656464 996251100 314289260 805823740 754487775 893273569 123972186 154103792 61035201 781798750 496657452 771450588 297110824 500951057 145222276 525806832 451194506 714952773 117544065 119429378 962523851 996882585 684432586 859304721 894660469 953786568 653792329 657352127 932689051 957537176 290580610 421525713 760723915 823287056 386009661 996934566 33589318 139134026 772144106 991168592 550435418 772202030 226070376 368231896 156434810 725140190 910677169 955509505 530802722 968158918 170411905 534199333 503674682 967013638 346201790 623372636 20817822 488205537 708369144 874280170 566745327 985916729 821238075 989977497 51918714 486459213 324524593 585056102 458140531 575157743 757394504 810213661 397246503 562329656 183396616 300890749 415912664 795154037 117370532 284508736 956795095 990304180 914469003 936263590 752108702 943979205 40579344 241634650 856717133 905909805 356627494 553216349 905696540 948914410 199519511 261088810 815709011 893735159 248350106 470978084 6674018 408570931 415501354 461681543 984553669 993879512 282220589 973658240 754183246 892337366 555660164 998732151 831740124 844935823 982115763 991493187 370154349 503805973 229159763 748446233 944412713 974074984 790277560 902181305 873854477 901525369 379330285 637926995 126162052 232695529 919250005 943377047 879237035 951717608 402147222 604554850 282896114 325339659 263505601 841847015 752096755 916067027 149299396 508926212 550685769 929121542 5643203 144720129 670861726 976208713 744148462 830993678 330118453 991476065 952141911 956130174 896233141 950587927 946552482 957678351 328395273 986859305 91460087 172645237 756953538 898532447 939456784 975836841 274544618 935834223 817765465 900927765 435347338 932342892 727580165 908120854 550524154 960795985 292035900 465679698 314248628 777064212 554680746 584137266 940031171 979664346 68069223 146289886 49335645 830107188 496305091 912409296 368198238 765088536 325555759 818055022 473454336 679256352 32257023 595806248 976388966 997177373 394357069 727869268 388694652 502918870 351174464 486630216 466523703 978624111 784334396 818834765 791617486 939738230 363725554 713302719 504011299 879742303 814416883 898826486 416226111 997958129 200133473 319373276 775595207 919030176 750349666 774504441 842071982 877276772 605954441 850580058 127281357 295187375 354279197 652579747 290267368 465895287 309675250 898194131 880947008 930976805 747521501 875910867 123386589 943653393 271915270 483360280 885808738 973241501 168093281 205769457 470498644 963614976 147451988 980604663 181785329 538245849 293303760 839875953 720818069 834775971 447468133 501521454 535558273 556092359 412038243 645403489 80852300 635309431 709295678 722046229 300428731 407612261 116424781 552716624 224864398 258278000 97177098 189890104 292737223 844763438 575040206 618836091 720850185 796186674 880917087 953314556 529515776 635930860 413124927 615494467 930282186 980825077 23366997 915324197 862086931 929517805 970018627 993634960 525035340 911841299 729809207 838472478 408023523 725154419 417187022 580313293 193506105 406824216 428479993 949275157 584640320 700853502 508318161 808677916 176742314 407316521 638953473 899558482 62156881 623097831 568241027 830748622 138028937 171700136 832573961 986492677 742712672 779872047 106919508 531600377 369192682 980816642 281012774 372286451 449356173 824001954 773275995 928569462 892899668 999923545 247673755 484737789 83488039 714453015 500713651 902487886 992630658 995080258 767325838 773881026 944256161 976645556 835836675 901982135 719709540 845361447 172051839 307346219 366287338 752859880 200342158 710172128 254315895 551704960 541526526 975946333 982404132 997623139 94089661 117550805 363854365 974859009 47433880 755547544 6262453 13202738 763587563 784719938 483852424 654692158 893417308 978381966 262206522 874949919 200389608 765259430 931960182 953789924 942575906 975703544 657585282 807995404 105153637 455396513 467781570 641937347 810031684 935116281 71272758 936593710 805926416 935722768 422105266 935367108 455586591 607315746 698049680 958814190 147783984 650504405 41223695 994119572 365827736 854186332 33212366 162882180 919334899 945364695 722298575 752697535 868883227 930538081 546847444 887530851 60558923 597560709 657535331 893615820 23240262 196441605 629950532 787227387 98863484 457067262 481008422 831134957 522030987 838406108 976474274 997107727 812497042 860821707 879133504 915479704 163533910 309234711 721389066 821082122 771410686 912783963 878076024 881180970 106928366 974945069 936904370 942651273 678504831 848271130 857359044 942047601 839385208 881249510 414610346 725641654 311655879 696112040 130567230 997051590 702666985 976947619 597430121 887404250 148856914 164594841 336357993 948269519 166606060 774244487 921509764 931218674 824487715 854786735 619608787 985245990 400697360 478412838 56306418 628276434 840387519 989664070 549370665 628057411 87476419 602674082 301951487 764289547 954767668 989816480 424543491 579808247 361848169 368404272 784178059 965853092 842709246 905682512 805810415 982310563 856471620 898703064 701204600 926988890 355035081 632826475 992450524 999840791 588777639 734978336 232910361 320205110 638589975 876087165 420027573 967161355 900658876 972471866 740083215 920597244 228515900 971661610 26840678 945873515 636294712 988897190 294221434 301628016 850463058 870121991 313083988 602681803 293385937 357849537 565671108 688953234 357105784 701387537 7713962 252031385 689552787 813529456 60767105 276379566 322751042 340321795 529598754 778043883 592834686 632090488 407958008 408388351 92617829 835327488 989418210 996636879 780714732 909532127 935792083 955061861 180178705 885607069 768821569 843555021 367951286 578326182 195318868 920442851 266175184 282302188 756651097 922121511 727344711 932649741 249532588 836194670 407235451 794795918 813313492 956108722 354749249 374183879 723885253 923953607 103192430 833296053 363593813 610408258 58875299 747568873 515817747 928426353 255980969 710684414 207690979 470457733 113339578 572561219 81744187 935824472 221855908 464563969 501826054 628923267 282790130 868923613 985941341 998978853 615416095 974470614 536704663 896529200 862456964 939221044 974335325 991986849 185776763 969634488 917599472 958089392 327512086 618668460 595952918 603533508 631022492 783554852 234921544 400976223 399952617 510395441 761759875 870031916 442457368 956502160 975640077 998856909 383501797 996203377 393550722 893400260 704875999 963545259 118918091 829369318 940713873 953132873 303225260 737136718 121604090 964523925 794846065 881166834 148435302 883970841 282228271 888729308 494229276 751011399 668054699 911425675 749359208 796662043 641668708 997370440 98175444 305622114 818342678 943507010 818190202 881143256 652055207 934767218 73938650 878963107 377420747 886414143 153375367 935367265 625288202 807952305 70867610 972740172 148488961 205251813 901451285 916228034 507476187 635287515 987883533 988552643 824861613 916770303 253726828 732274112 434333211 535132521 906861280 961866199 646885696 707056603 82603828 682775139 677620566 680725995 802426131 828122953 371674817 412296523 113405137 548398196 350853097 791493190 470463614 650783751 591279598 953067715 481247916 960800843 323595969 446648336 833759044 878534321 610422233 950544667 388864715 468259122 740195846 888694696 158616065 858025692 47022145 997481758 282729919 549751891 791950614 802107982 731749472 743379536 835447941 846907232 3439104 323473541 847460886 855448240 976013614 981351356 617364465 783405908 882305340 896924045 89282656 659265570 892079739 896044905 188226395 983158319 354180915 639612811 191168380 524530490 324490998 852594461 856876731 881475310 226979500 543759569 986942236 997578552 450433176 851686204 416702068 907467389 512003944 714113922 634180997 905178610 316354216 771424618 499373823 538569971 33063239 428481164 591321174 825690535 90190728 653391944 86955164 697268737 739610523 846530899 542091102 546518817 932206423 988337818 34655470 193276375 759334612 764546769 616976287 858525632 437509923 446326581 766632728 900079596 6512590 213951082 895875910 963553115 349761307 564446710 707714393 818844119 1148101 83804700 260720264 943191822 775209470 829094391 813842437 957145086 904026354 964689600 482352027 778458489 162067157 227480686 737439029 778645384 916134069 989587020 405920936 596759810 657910514 892298383 248048373 430527510 453011667 670823993 946080432 992608050 179589768 404799182 105455003 680015110 857767417 875457968 431836 540827072 983434233 996912554 243079131 795022653 26994579 458189646 288540178 881792274 759134525 956799234 619832345 953334792 184435490 366601395 592477072 727835664 534468922 756112864 446031816 587364790 554889383 561911187 864982816 953832792 892329341 957518797 967091615 995786913 133930995 597612925 771988759 798493989 30496745 207101423 285401820 564986492 538239004 783660087 996065582 996300850 396703710 504593904 19686602 855806118 535357598 999255350 284531949 374596941 672854513 729062167 673752097 791632608 694896778 925980853 434717919 698352164 915820127 969306813 397894153 558866342 868120490 920844745 416145267 689655292 682811708 960806774 482623347 483323711 282260893 525630383 163668757 406963964 426621543 655752024 309915931 484777955 781562722 843134759 91283666 639717467 549368368 724288000 211256544 389082630 340769266 428109439 242572360 457251775 693517089 713373202 556986240 858833128 715402791 859215108 277130909 306172448 942684740 995056054 392299161 780961896 187593018 804836952 706380470 710729443 213372254 647077352 597298908 986285482 472342340 693854953 44102347 628723473 990083991 998830768 329025574 545843078 527959923 815478177 521226038 530562956 751194114 963035079 319372861 967371573 225382471 909372449 309912078 359628700 441129095 866737123 81548975 580909921 349850258 658924328 287540097 965757622 360932811 392878595 250419026 572154006 845859328 943976378 176790162 641812518 114276448 485128144 948854240 992152052 196063437 777450601 612280517 984744745 637205769 722243194 132812648 290874733 297218913 371167523 12117416 562011331 761442182 857233759 404116574 874089772 285307443 528815963 279520376 961860801 943221044 972677273 279111908 456949874 713182726 870827996 12523339 63631194 118943509 601084828 980189579 982731946 828271360 836886946 302308786 534894641 844510897 850555135 713069079 971306340 569966882 790190363 572725307 996763359 658539705 942090690 529328244 845232434 207151948 830685364 590209047 668478785 530486037 936806245 966417453 980125655 790835090 891206346 799211750 933630800 272358247 694824242 647987187 711145141 291823382 557194501 471954560 779092916 256449582 795072713 400460396 443417748 628603290 632110774 18837215 255617140 820159379 858649138 477840209 972033024 796602879 973149913 452024331 599708293 63454307 715787492 357631385 673692071 337123217 560105992 561665428 673398611 69104978 930055530 715354327 967721328 36858357 873782607 755513375 939828729 107300248 654339335 861184082 980586070 220118985 858752054 75599588 418627276 330690166 496491448 514954002 782435297 854247338 997376770 713750919 821438064 821155057 995792752 684385584 961696293 357199272 465625160 576464818 655440454 205898289 792706012 619563976 832376718 147477139 921027395 161996393 588236529 861500385 912482219 673733242 992645105 667930101 715690756 253162627 609763151 513987898 643102735 228648522 266536475 332833448 716898618 353647385 747670016 931907953 967859715 123376508 199868022 112942176 887809730 384688421 931624591 538868870 946697958 698907817 862882936 212922685 271806336 705376059 797874252 587922191 803870984 436826102 849014038 513067297 674443472 673759205 965407009 892749483 925854608 567197275 977151486 740040328 938213779 297086028 796457863 282666650 867197524 204240564 528861544 213914739 981810546 428618252 488332100 714849851 766559718 266449268 989362764 666146518 905786646 642255503 793829730 535854003 818019749 877799420 963754782 574463854 631269755 468414053 838097264 590865494 735117948 692366247 727290593 153957122 839148433 663245188 900163845 428950442 491646224 336793664 895702001 232928933 954735281 83340698 585721452 759007480 879131858 869629821 901238410 630988905 876775545 483982041 831939548 322780236 752508596 153192858 384813082 973880472 979497268 583392297 992085223 889748865 899044757 97431237 293564994 394439020 714583284 743816752 892918082 12793695 379383368 123367026 254542651 154250582 267720790 665961612 885145299 926085504 969000835 731659569 866720883 413675440 770256808 672343660 900487768 552926398 584294444 208260472 212817002 313112944 611939355 859816252 875337087 427952571 686575659 427014213 614174922 229085945 563669284 418234327 664633383 593899182 731838690 146983399 990742717 687554025 941366235 933141783 958643012 866024060 973889114 691634513 721364625 566527412 825322961 945471800 958295865 307340798 646906656 676967160 847967129 859524801 937501550 607616801 659029019 675153886 824202224 821495591 862557434 918663202 970937069 919053148 928832004 645822852 661150236 578746740 671302944 108123506 365176126 814012038 835314304 116101753 932905130 762927222 973982006 657412440 967557259 771385615 894533250 302988241 837969203 224673051 595348996 236443991 347291953 677011104 892266863 535518284 751646549 786784431 878638877 481901670 674038223 456798550 499981983 137806190 871689759 445837064 679085282 236963756 881228406 180459274 434367074 347620559 708111233 341677770 512311467 329748558 568801200 913003631 992350988 101852294 969087857 783805603 985378232 963034621 986118035 453803559 581230371 806153812 853929147 482564428 561518365 459583145 916054427 3990004 413498866 175114173 523178349 800597114 916957354 359944655 997766710 306519267 935253642 287897355 968151377 297411027 800075915 669452445 924066867 135588441 906888040 243618472 960029344 936360514 952267672 37053235 783859025 222662829 541160718 973182579 993724922 852087971 967694947 343885362 894364926 130299349 661268568 841017358 996281651 935606513 936464500 415553488 451851466 480541420 958619516 879574975 989651158 927515480 997233707 672513595 916753636 514263366 669444069 576031671 951864217 962036615 978442441 968090979 997844301 285461588 670148069 792881949 802793010 887060889 954991488 827374013 962475220 347937668 479772305 786826220 957724433 641899869 715724027 920019667 961228588 931076083 956980845 867575097 908041208 13168554 533659895 513351355 919564001 923949658 958203053 547176046 873624884 108997103 718628811 440528153 750501618 650848044 660450678 882666828 998786494 391943934 521513986 212167798 243833296 120531345 972732012 923828827 988318271 407874675 955606104 780032119 980936154 325076500 923205308 514124945 552330457 503711271 876523855 201294822 870753006 295565736 861579144 292102128 601460181 261811433 439035057 447867147 898063280 231609502 314847349 38584694 328298013 592139473 866106320 976938818 999973878 365537223 394146605 930893949 974918214 961689784 974654452 647863769 944464902 427410038 883674878 503463563 793917279 886099016 967639737 822753558 968618480 467572522 624606449 119268078 291207733 658506309 746359762 221572052 956395783 643076428 727901722 742222753 759929760 703541289 987318018 445668642 833655156 603315904 863121562 527677132 663833280 361846807 594630314 3274067 914686997 493985573 716477792 439235140 509391690 374169677 915282928 581977 346904680 364092749 688126518 311054771 452618342 559051204 667804389 98991542 457450636 384823356 824972104 746721325 928429823 756322026 961434824 963687595 990964981 672760346 715217691 766317462 859272156 777039843 987807972 426697526 706481896 59203456 645382747 564181637 899931380 383963097 528245967 749334590 889243218 472305560 893745705 209440372 790034370 111010829 841934844 218337777 608378821 90156701 651611367 10175811 881722622 682901453 902598295 917988466 987567889 729200385 899982917 877004766 906760156 494474743 821297064 906357278 969471045 468757850 912196253 552577985 608971743 190799438 411215026 510003693 936591664 76173872 992288397 642647172 922342393 272021011 465032754 194704316 950722489 406685849 805269426 333784862 674703593 255021133 776856102 738219085 899276442 781751527 965381792 47157806 497602381 93613610 762636838 540382550 804387879 209191749 922126812 327944476 329240653 834483864 988958316 314018795 762315328 624398930 872276622 378483318 955597012 654890014 663870041 95353287 563704522 765220141 883410823 322179171 914508211 211307393 889026325 320501329 749072097 585284357 591697608 142104027 495143637 844008569 874701134 622102271 944281425 222840225 466473288 158041849 492322685 231459677 756920591 86151611 485809387 796860105 912081156 987705174 999270646 170255158 450309348 25944237 490276224 139686468 202097535 386425178 911585179 875321162 893328826 537934960 882914303 665780303 849881143 762164518 967670146 164692624 195228516 850872372 937665338 962384577 964015630 492081604 912318086 214644412 978597638 637083524 718817237 197273497 802503345 368119196 434961341 226461879 692173185 890800407 907412644 564502660 593155330 258563206 641634564 229222856 820041478 400158109 936554183 396886686 888709680 716385284 829714669 431051372 480949870 234164116 646433231 409848233 749352113 477905635 778132985 58837957 327194080 975203865 986085669 109386356 188211975 385243156 453419631 750214799 910859512 586088643 722946540 908890678 984749686 730990496 796805691 68258397 311283465 685452365 734680202 573375218 618516729 594310218 821889401 911365230 924274711 853413749 874301664 363082020 634723523 423053311 728014345 177495163 517217324 153615067 537511369 151631552 579823984 620993974 805710916 336136096 870131696 83457540 682572378 322886369 689779739 679740927 909178741 593191188 822633629 214525964 423271509 986614964 987309751 956368437 971912268 378727421 581932130 985451990 997480537 770042404 778732555 745031043 791227823 804802332 838548134 597790702 876692923 965448678 972622104 305446320 608525551 212581742 230911678 838327474 957211509 215643535 640431952 229134929 287832907 454618788 844598981 806647094 857138921 477073625 707701075 751801893 853506161 899240629 936174140 366865170 585126637 761691708 843809095 169782302 678368732 866405603 914143980 842762577 931330223 387742012 526632718 931688960 980373662 128772241 539692491 216217762 868149484 474481613 868201574 160263819 947469130 260272095 523161785 882304797 895906571 701795069 706579942 570198097 669793608 570764770 859923515 223421239 248039878 628620485 760926852 953933958 962186030 28631642 803744267 658632705 762018409 361995693 603178699 682629054 757004131 681690729 840367551 67942489 277726024 141609331 592113283 494725287 553340054 800145707 888028564 877083552 995537383 995691592 996997471 794811511 963119349 868206755 977706040 119709854 666721332 657194611 738714517 473719321 566691827 76715943 683152456 202857472 323421227 145123086 798286014 227761869 517928412 89192579 971175903 54765910 975818978 208337067 595411326 701409735 790426140 800488071 822715516 674659242 989899519 155657567 502954486 246693541 988274111 565427549 881865188 476114783 951625592 533266211 549850439 408644790 462306639 762337505 912479625 854338182 970256756 655717802 792716469 832591910 997135258 594848350 799298554 426303712 639634372 502129908 804976237 339054790 515617504 936981214 941265037 143219557 764578913 406594792 843858911 157974795 205689299 594986032 796357004 907859104 932910810 608600540 733472337 855067338 953761875 733931579 992356585 470866540 522580774 664295558 854590095 685183025 853981594 951504265 986984338 751851420 894979864 271786155 499978801 555035661 953418149 728708362 892364571 310621905 886266375 688495643 873255185 330941062 536590687 176285472 923154752 652003241 853934784 339563101 713312375 77010867 727694521 432202785 528281199 466487532 664385132 891788202 932825060 455325064 636694342 919073535 919409158 890772804 987380699 490525169 816814287 552359292 793831346 725937378 995675216 383153202 576689892 800387588 827880099 573031473 627240123 658175898 870210255 23702664 44941065 737338727 919613732 997786144 998561899 320322148 409299383 626103881 916760518 264818516 897896555 172573976 943646791 726849496 998198601 987510661 999679429 790098690 902050812 928403272 959617938 407363653 462046288 716072286 977480135 827296736 895032110 619512521 965248324 150326803 628328063 435551967 554987981 479243055 701740178 888678761 924416987 139455114 941080159 380081114 919337084 63575678 647744540 649984829 862925429 700793115 807569483 762807234 765922338 947838369 954311562 561779209 585826934 654995132 975834164 994230893 995022967 261770794 643269611 83983042 536162411 414786158 471590155 760004769 985591948 567187991 925915125 173793768 642070317 723685145 760104208 950960824 972586748 734292967 821715844 318602020 737706260 773665956 816563346 913857979 980241268 236057074 932465102 329433377 720990053 776624912 933757203 981215161 996459224 911838477 973284533 180756901 375601280 552876225 672124631 16105065 778372248 197335471 783300314 324578992 549350110 559083885 717371258 872212035 974609070 942738471 978780117 372934697 482027379 599295280 923679527 494966626 626853314 280457882 911190117 439647193 462138893 95510124 921908606 31166704 141958857 809289387 920246979 899818951 948444123 161617467 419927339 304005089 546258702 788059857 856624022 336921606 807116767 653203665 818658651 174585236 860118322 688242617 818403428 235754628 980331189 244824399 809947928 797539734 865442353 979041959 998424783 170611700 842565776 539908840 948238730 824050889 874399793 907569584 925064805 436248289 871650103 422437830 976123496 859592063 881056017 965441659 985688120 482575436 664645876 974039376 982221248 426102768 439848219 921431130 967761969 234369977 309621400 527944977 999777706 65900077 645599475 823787924 836992142 903726 193041437 104244908 630144010 739995807 988494900 284064791 757057313 136003064 511608417 31439928 374413022 131511487 478834747 716343830 740831666 495138977 546889763 202157012 699032973 542797245 796030395 214761293 780091423 309972039 750629644 136337036 673537196 358502367 587562278 789141545 849887667 367512467 901837856 502726887 660152070 308573873 674817170 391417914 434528207 47391183 527394834 585174160 844771208 444781419 511240815 133252502 927783573 465832778 636805675 728358073 951003951 238596090 853706477 494250374 895917665 138895783 520036311 237324786 253517565 834218987 864463316 880104186 969578774 45548185 406519808 298879876 331916427 711816094 885737403 375504736 802784130 246410153 808661125 430987968 694265602 181730519 788992536 358036359 420540304 490702195 897374891 380764537 855669993 599781080 612676190 129546836 954639472 779997833 828706023 541038264 632670878 565634234 658312948 139717017 762711872 217193196 275526260 787516715 991316443 541895972 944620339 80504284 752001013 557353818 862073194 675499652 952630084 453751617 796032100 10526694 106454435 825370817 939588827 829751469 961274047 897396968 960700988 531415485 899101793 479873215 847095389 710397521 761344330 484961494 725562660 868263224 984093338 537566390 855327315 470000291 857612172 217177909 406467894 679924735 719645659 289847789 326181667 270538468 543193379 335376505 877779814 701723709 990097149 942514374 950767435 794166192 980404998 770688206 923101827 961684324 966322215 268203616 649052836 109040859 364499725 465970566 552110525 817330696 888869209 396958806 553973218 372207141 880294381 126499921 315477874 230839509 296022552 115005550 897221964 147653567 273055053 922363758 950291697 513774390 921232525 284903281 710991278 67450364 610172727 676110207 952864763 893760561 950192587 561617060 886722804 306803741 945601237 110393694 565190041 15329341 563367786 650399690 836035527 576622957 893250976 830739614 888846674 702067708 843151264 769212404 932507100 190092638 247731522 771807716 812571482 269222980 318163704 815752927 850537351 941899188 987142409 100982842 610361372 673434756 814705425 181616283 793643183 120131616 857186869 180438811 192519066 726404949 732634897 25753018 655186431 165959237 561681954 813789859 908915347 82733166 622422353 590478352 764353520 266257288 691803658 420132010 588121374 904488765 985630934 906400888 941580063 751778343 857831849 901715566 912027905 622103158 657093915 384829952 425956642 55997658 154710268 724189083 816237047 677852436 806958661 238126595 261272522 731119696 867553361 430699608 950764116 290785770 864460733 716868631 762841725 18651411 41194891 611387305 641442929 138131423 698644367 140246382 895903797 490073718 526196419 926173531 951885806 632587503 812061983 864389258 922962701 882227279 933142437 965416208 983877228 731361049 991226323 456140709 542526945 360149937 860644318 479772659 987362311 267872232 513520167 711314619 933749711 762797459 814722154 454544697 775206987 944128074 969539658 837461559 897976929 382555254 406673405 765153116 783500661 551596300 802852978 695851035 765775290 743463940 899077231 538014061 794188522 203447074 991559193 757248743 960672904 264915952 680671933 962733570 967279269 482287945 541534389 161854917 341006834 465452312 534140461 683742722 775790746 906140329 952272397 637352628 650090148 234724221 918243131 431958332 471025152 167780112 184905309 427691592 698823043 914093638 979196060 715996796 791445126 78942068 548852941 261284361 858037000 790558013 865835253 109643556 850468201 741619016 902403054 999263091 999656067 355291331 781344774 98758067 943569479 753234235 992966823 65875435 701810698 814689821 860537019 741584213 989600817 244187409 613023440 692121730 725289897 769570474 778538396 64067498 311075314 88478337 916299859 5239650 925243666 885649115 957537522 396924790 816569103 417100060 756233423 750466949 876023351 694031278 858242985 928620032 998014484 387574038 794087516 330657966 381092589 73463874 164232866 58117014 185080323 826859142 975833016 680755159 854641538 182267560 726604212 626495589 790634902 26889710 992676845 832720016 955493399 706280220 866911756 319136469 526797834 74358233 478314570 618990550 770380574 697246414 981442991 579129021 730118221 457852518 597455846 387677959 839501496 233194745 251721188 231979557 659032625 554539708 592322114 80940370 410540827 532995389 711882414 338951084 462954918 942735695 996199254 127167156 307252382 762593270 856074976 776634538 999767191 354729272 973257947 617611406 735213803 912200125 919664543 305897452 359593505 658455804 931931943 333225158 462959396 704939800 773266841 419395506 751806513 552488557 705648116 524294162 645886878 795430702 807704661 513052227 730538483 917832904 969462142 237520919 550940418 217268984 663669281 390415592 600463044 813597987 963502002 433355514 618129506 431703834 889921931 563587203 974385980 178940878 710086477 454153206 706693075 459825970 537045236 239178078 890293719 504097130 552191186 67085483 718074106 778739883 860289039 615691953 805139758 292541908 892364478 205159577 209409692 33386075 879871005 465478912 655166597 347931189 602846952 642110144 643460210 666547638 694812572 965391521 970092892 759327499 850362167 666845012 772707906 646996122 650170579 77968866 150770109 401935065 659787083 102627145 776237263 8483437 254416847 801324072 926079397 463438593 570577984 89300260 862899059 452588844 521922088 392256213 536292682 382983402 782841755 130289745 416665562 711878317 866720291 100441764 743611481 298922387 993649360 922691723 993348149 461574280 960225394 851363124 982680245 580261117 585651903 165748223 546648738 797662925 809222657 690010366 998023264 903250114 964223945 643572943 985033557 130586984 411795488 670049192 700901082 467889784 867117780 274565415 422672285 853659031 974918632 453175074 818662719 499634614 726494603 638226704 994410059 836752751 849349188 349900065 664775588 154965253 224946122 890396090 928513151 365087487 884711939 618940884 913646987 897284453 990277298 735884520 843320019 424819224 789067080 717908325 803640566 486862539 606879966 34782103 349739609 282361031 703139961 792258695 922972836 717412388 751577562 66374792 971312525 381934039 690531591 815258279 835988228 467826567 894491507 152907478 647563541 872226393 891053868 69394933 950008816 987536931 996266162 670740320 803738930 836175902 984589838 851238780 976909335 866906628 898518205 624833775 837251247 485581737 821798010 992162894 993291815 77872377 96192436 580058755 923678866 959304407 993007115 457729736 699432478 196361279 942333643 626010413 738590230 537226935 877598040 742022231 786294135 152997611 436906612 717540229 903169960 716148746 938266477 577279336 975342282 522404066 590722077 109680260 403843157 532927047 986282036 487796204 750980856 876642599 940995168 491531079 646851743 187079864 770366099 258925434 533683791 778422221 829053884 234158880 383571290 535390263 793223016 50467277 603866587 197459306 678778461 858133680 987397515 153151662 241406546 935219488 935238619 578939694 886997809 786206943 848773927 397840032 616823683 200045973 463716990 593825832 674901027 295626850 965140846 94357739 424808697 55214789 352752097 113882465 916405449 68766956 383506446 801520784 972060098 369472478 574509668 726004755 811446660 122055059 736430516 193087111 720055438 616296176 848959947 848510496 865601022 156483872 179310194 912977749 937890392 971106744 996714206 887237552 918854170 607932383 735310192 873523519 937886804 836666101 979933446 256928688 400010854 436606730 674518959 558694038 744727498 894071524 908887603 333205025 682251247 916548229 946801494 200032343 612390501 481239962 676761749 630458994 825096701 282066457 719073332 811011705 811693206 579926010 711011363 599881712 857931963 555484889 653726058 279489733 731705436 338358088 474488161 946602666 949544343 183977417 690441772 454690835 630378849 374716101 781209306 734932875 798479001 166526492 600937140 190324076 493213839 844368954 923291168 821395308 972295444 241987656 733679114 520544556 669226210 560461724 632762965 460142667 689735751 462258996 892601698 525002801 683995195 564640270 738959983 653128765 768691038 97925539 324900643 456065483 840430177 901771719 925816990 503338778 940026344 631072103 813155623 148844491 309162506 673985486 899106504 767702695 827104404 962461059 999706703 512930838 896034763 131270316 601400261 463532646 664297351 144646453 414870270 787496155 833492082 769233561 836120792 518731281 694104343 275698684 612058214 174017823 967575015 371675898 570091366 86078756 544431183 128527536 385444126 707584822 746341225 374173376 929714323 638811553 822591907 666185316 694528192 705065582 727446891 40777788 800272048 881312940 972691627 401337276 853889172 728276223 829076158 1182961 179380324 834964452 847967050 787716643 796116702 521975199 595113439 348205385 841837579 472061849 950349285 402389642 650037186 590687952 641355792 334112934 816701728 623959265 651185780 155568065 865013914 509777038 965727638 248887096 820382847 948063110 970804996 738453630 998159420 258328028 582356146 135834924 279723039 551951881 684590650 238567874 688514427 523612548 964156447 143766611 852345146 568930636 591583583 906869603 933489547 893191910 934777358 442224791 910073670 451080655 595328952 3753821 691392876 76107627 432640484 696169993 864837030 76454589 755439944 823072066 878984387 264929830 505806069 142673325 770609519 293960376 881198422 893879220 954816575 183456667 500389510 4375617 138314829 449194437 895059353 89173593 575679625 358520375 704640517 970624518 996255017 86301595 213460108 722242459 831938717 811692388 969265202 939664547 982319186 547096330 764958621 537240357 694821536 40441573 502264630 258239085 531606990 469596046 594646489 318438006 860854351 840563094 865309278 715993468 892876974 803419604 945832636 361871925 643381310 227009577 647862422 254852369 972436158 952269471 967683955 101691076 654459894 924330094 965539748 590950448 671879299 611871600 695230915 29901629 64493411 849266763 960603842 561023523 565225523 213350298 564168522 858104193 950785464 873811456 907589042 908094824 949792694 922410197 934526114 617367896 753959700 426662587 559871037 930563299 961074842 852515416 891292409 952996069 977483341 845642213 978949007 669294616 816485675 400593451 662072996 923804894 991576855 876942173 922114730 511946013 670514188 172049716 202399167 538503149 628047757 268374360 325860526 140545771 208311167 826485672 857158418 313886890 421524421 24873224 406167872 752252168 955829683 966165717 993009858 364065655 959107364 237172791 252736948 907960158 965765614 713033359 904259280 976204242 980442977 913756890 941826723 336994683 428031765 603372306 913529865 453499239 808012691 914331180 915619114 126123441 474929661 611051679 882890469 680038095 964507161 174830453 564779022 612924813 763642108 458627024 547277672 265455939 357643359 820441995 861451733 852497530 925010232 589744478 924872486 756898622 890752345 955541227 964662800 940652121 957637993 562443602 818151201 976520217 996206402 470946948 948241796 707436745 723170629 787497346 982055036 313490057 896326851 285310588 875101906 857809807 868043418 216629836 571029430 73324970 684976927 542962480 551039226 373152829 609693060 181757415 266869152 981260748 996747825 54996074 362191524 850722520 960778870 504552158 816408184 74010814 170833709 331811146 448980086 241722934 974749295 706646396 799991963 932208988 944565120 769705186 832430240 404719067 936149376 715018413 892292478 141573810 925402070 259145908 842018491 477912310 611078085 603061547 937570631 830935394 937034727 547069868 558410153 332659432 399673136 35359414 915052134 970388136 993522364 546220356 671603920 181375905 365994957 467816099 501027611 905468375 946459558 389342769 430458270 354843078 739072545 525364855 728887448 479600198 907099408 36274469 164828345 968501906 991012364 829994167 926275842 539110261 777042107 828439218 897897958 478166033 866507639 351465275 570583776 674506278 893413742 333221341 794003015 104231162 236227313 329664116 787876442 110485416 886468930 553053035 697405009 537325346 792636917 813007244 917751474 981365328 996027629 892217353 964087629 834831727 947419263 146939246 413063341 124107823 344044916 512772633 677568629 362982471 619128533 612806784 925304907 591892278 776138369 283836239 674618768 784762345 911206738 321414008 333075904 585607109 793119397 770599644 826084406 644378062 915008879 371915887 706825259 764440462 968961702 995561876 999282127 56658988 887453248 953575502 991819045 935635203 993677434 136237883 941204644 484489093 593469119 319696826 983733702 179691694 348239381 989122443 996552096 806306489 955456849 989547410 995040960 270539509 567218506 886593953 908168858 371357955 710032743 65176457 144743791 39573044 723889051 944542093 964875390 158885524 472909545 287253642 819047654 257582930 350844625 381530853 641077750 772435691 905634345 209356228 751446420 298927227 923003630 586655839 651229841 627406368 912027105 943645866 949458235 388076210 783849407 505597734 517324582 999615698 999657816 825071509 968610575 974826340 976888493 681110195 993559021 579134053 601934787 880940398 930781495 64074566 252956914 481833636 618531461 248437097 859081917 760219236 779054323 570818406 743681431 902905727 946335739 909356328 983649207 204178837 705449573 344598711 884364042 573535382 804308537 243944229 500065705 232260460 808809395 882566776 965948314 675984051 809000608 596536704 795876912 643001365 954306058 540331094 805248440 606517778 855373762 609071608 734238464 627135704 928838222 50784951 926372010 999200992 999469527 905183588 964242749 218462537 512984921 447608885 791520494 891875001 916357526 368266431 768761231 959348744 962086084 884917328 925028796 180289480 775211408 548787676 814830275 536507552 586728391 46630294 59494136 651241359 746387306 103760240 490023295 335914337 955427299 687790367 709294230 679204400 728250905 520947218 936709476 466833171 625824195 695029615 854327653 286407236 411488343 506511860 774382050 506692738 726811294 899063610 912871905 134652415 897435168 685672613 952373031 779683810 927544675 539553091 776650849 875321289 898604878 394618856 686376797 495146799 972555265 367538687 962562685 998143682 998939860 713480 604136417 746653349 877939560 920399197 949506628 536508482 753417562 389289416 547854324 838169646 885436033 631781868 862013945 902628143 910878192 681047048 990762014 683663001 826885350 176259650 435258821 888370480 902300245 133434618 762591765 70785425 569786992 182701116 271550183 121584408 377339060 837103397 995854764 879815231 924895432 986382527 995238071 827800493 964413531 871217029 941281962 317300116 442970750 7420241 539890268 783302087 960379180 733069326 933671571 151856729 290530356 184426933 227894716 736542574 792349720 115097501 793769896 675376808 977716489 597849204 973866762 333418526 753676160 471516407 803701813 20399301 529898482 357349974 742122345 586073800 671737718 614850431 845803546 291356477 433283759 492332365 724802782 53843152 778056306 225077940 356526813 232958390 952187267 680328704 786753696 510082621 879269298 215088244 743294004 288292717 933354553 366658022 758755796 219405005 561364794 947208197 947639503 93276326 565715290 12218048 419916002 534355310 650894860 620297791 961325197 696646243 853138563 914663598 958785071 663916183 994835048 493821049 778902598 493877733 556530564 364462176 416740847 792743677 905746778 469320754 844957253 265877311 279110034 933075605 990932491 868094435 962040111 123706155 868485406 558026275 710497228 227381729 804208251 403341408 634356307 908915405 998685422 79042549 803144745 693414123 761424434 760242675 842886813 918450194 940286154 189427966 212062524 964195981 984057012 394760658 650223956 261367630 490189487 851655035 980570336 424013816 503239904 559076421 964233024 519758158 758845214 410267329 578435105 179412720 937639429 497579702 534285615 497246357 574279372 195012358 666136782 11776692 397334389 598736675 981355561 695386381 823926772 844383226 930470643 465312531 631074164 80457172 195656807 593502855 658519130 2027866 976462707 475704534 843151563 10322915 820885949 548923458 631784367 648244861 783493379 414586996 991930503 751131493 928664988 117883117 174329358 731863347 997785800 969852866 982096767 474246943 556966171 613616641 626360492 42486030 238422487 894935193 998349618 283634407 853032646 369265347 875057096 720194425 986396212 917302918 977891075 194378873 200751575 78651102 672202133 280541169 389846153 549496308 622430737 240360793 288774884 873503739 913212325 432693598 636366769 731491736 979989892 692336318 855573991 515876194 814976720 609453034 820559657 675300398 769403432 940506028 989360588 476692554 654299979 939837941 991265064 654839316 846281696 122738858 227504114 327183864 577925741 107066045 584030869 341655633 475311060 213682520 433268472 17814743 310967132 587013216 943426446 248675722 530632081 465605959 786666871 613303060 923731821 346302833 983963901 365946111 831035665 431969240 985385221 730115915 974205338 45585022 977185420 610698264 948801599 109996968 238258044 878657747 957295428 51576049 796161152 473242895 672639424 594686381 949300074 881053362 987696223 51838586 330540897 165775775 259630884 522589477 664777225 489972592 732351736 273580457 720552367 560727162 912099412 212113748 620694109 742222932 996894422 133244324 220629456 458128717 692622210 619695924 713632515 161624162 402347267 993997079 997298930 419254875 527236273 735248614 762740567 690823086 879501515 842468775 974904038 598803844 695670987 425765157 702745477 506243323 955583097 529385193 659850573 432270329 950048925 455775221 615670895 329016992 623709638 245914771 727900825 688988895 753912459 43284387 599174102 379551839 481232141 731412868 773941062 73553571 657860817 866966531 985545703 643063869 946835057 429325579 863152555 980359596 994831040 816014886 991314194 653969086 725860050 217741065 587864519 502047215 577058745 89407830 933895605 215643386 974040635 338135566 919055528 672010380 911259680 310049413 423550517 77918720 779014236 573806627 674867308 146486095 364618543 418869528 497823661 464775096 962145424 530593488 951888958 212781269 450291781 642197745 976432198 644243590 776772301 333444109 607177554 415534235 520035249 155462059 293534345 276172860 645233725 855742749 946449833 796490026 912836774 641185350 809532391 548715635 622837538 148639924 712110131 784118703 879501348 654000625 851111044 219905573 956879387 218290375 608088927 701713693 851625519 549314011 976376990 883959389 928698604 861654034 892214240 806032669 860379105 51365053 943583347 815547348 902589454 851055126 864066006 704917344 923445041 474375491 756132130 353769031 754143386 862801516 877379182 211309656 335065171 945820533 947697051 410299816 961156565 850356272 909990836 389992367 460962633 331461828 730651123 548894232 599405216 946630661 987508778 532647634 842090984 98341535 217087632 259942410 413763488 59753509 515646068 507471561 580237668 31827807 952597814 609231785 855075842 312315465 432594922 765714895 933061074 229296293 712801784 358036458 484931428 155061111 557396749 677656871 689346444 279472338 941348477 546338078 722763002 561231108 974742291 416327804 809874898 927249171 946373690 590422998 675402703 13578569 435384493 647731232 665130665 280290188 913057769 883867917 906701877 351183751 702347295 597635626 848461396 941821638 958918500 98273762 572889423 64143501 254202137 282817394 797899944 3599003 758602249 846056370 874247845 310177 43670302 987874620 995423148 262741211 786825583 17881396 738234104 469792006 984237799 677355743 871390146 749232674 810835724 412973469 633662392 269222702 440990098 626034930 718506242 654165423 839964624 626170605 631707789 983603660 988392238 195989311 930313466 747493160 811561703 317070196 958571466 878834622 967235939 884405354 951931926 72237465 640359909 728541322 842665803 144771151 838549582 715993706 747527078 748427077 773720088 935256489 937114026 442302764 926626853 749110254 846095812 969183561 985558817 390965395 983038361 931940730 999547520 783643006 859416947 881731777 920012036 431378434 557321218 820940306 827477313 862806727 948179990 171227197 903680314 700897759 847193642 139684678 241473376 844871088 862096110 340867018 750184444 602832758 903771337 619526398 967538327 961275652 990923420 499364572 728010761 242795205 483070855 246576724 408943773 526648939 632567900 952534950 970215411 629273549 928638346 882617016 947885191 284190952 911059461 361587715 615721168 193537335 351861974 981018171 999682911 590346955 616006481 895795589 972593450 883431511 893260087 258471914 856290876 88340565 562654414 419707155 794945654 944794609 962595624 17137412 357583455 909120095 936825789 759883337 798056460 156833654 181366438 623422652 677284855 481056663 601040831 537524059 733439798 198209819 706521900 542220632 770513389 17441862 429132185 826954057 939375940 85187220 729469452 423427894 587091966 142410713 883791525 178025203 775300366 491108127 876545054 918724358 929407213 600096503 880271001 672176675 786489759 446039171 794132382 682083493 988282575 548286814 579578791 543991564 804816125 127895353 756082451 967599266 999869054 42316372 656848819 860924849 993918470 585674208 986173514 554352676 646757809 368389720 665882278 951177627 970637411 309322238 701210603 253071416 568589950 199959136 406232456 942219661 973004728 245184531 695858603 362241729 666355877 974360211 990953144 748442536 903529102 962176399 963910400 856767904 975229950 329707299 781345422 170752077 347716002 427965953 943174362 54245613 746739949 618422250 640799987 392388813 968357128 44179126 717763405 579036991 874138014 907554318 920176508 552406492 969954478 433767751 683103356 767712581 875905860 852949793 913733784 461572366 557712896 816935682 856877122 76193801 973462303 235516101 723986561 272261594 290481335 54639616 721904445 323773988 991519300 887147064 928900342 763380406 999813320 684924576 785328956 134765285 680844033 784660926 943916432 341805045 748369305 497944250 851044814 291096850 881819303 681553817 760757047 802280861 968248815 912235957 956288996 521745957 532959735 890368850 961345507 656654360 871298117 337435137 970784330 53187616 841618162 904103112 984712210 67127330 694126894 825123886 932995649 159766760 811091120 270798327 637331252 142481558 792959703 685242846 884453270 691516394 926621716 473433895 884012206 397177217 676820157 169401352 555519568 707660686 749505862 212020474 866083647 295200429 466699099 976346265 988750046 518421143 750408572 342593948 644898745 771236292 987239736 165894502 926677457 952911902 959282852 318565157 362200393 386328885 821818512 33968353 608205039 658191235 942177439 742745137 788115970 221965410 777140312 558393776 694914671 917968332 926011542 302673858 311680205 844494435 984691861 989256684 994891207 96298332 396066248 567450885 940052948 685524908 969217071 829379295 954858218 601932527 776672083 283913973 393699464 146655671 639709320 705897742 836723211 902257307 982815687 52774074 848993521 540869109 605482939 851879971 911596804 624752027 819888141 381080038 469337505 785814065 807320813 634488481 789867562 663418413 807465732 825182138 826004165 317874789 608050220 475048479 881228861 701089652 734034855 616037132 689145521 617730128 805677080 891725239 926953685 572069584 991940608 129496042 496443687 450424748 967477103 593184005 647162971 859067241 961538836 732387728 892694316 285754505 960431165 48871861 755078431 37012850 911186638 797571718 939078581 837484106 858196511 92654260 580857638 85499154 596755931 675279113 949050612 973815149 980363268 346937638 722193300 933700815 984936559 501520506 724891250 208579417 972433231 672468928 882540815 707580852 976407531 282279835 444694068 497738514 510607165 75252645 84445053 517708977 795120340 132996829 445118434 550300469 700082177 563156163 578163549 537611318 745031100 895287414 977394465 783195978 835310300 761799600 940337269 9150436 65137440 466970075 857750644 823332011 928190740 171895342 246102014 522607768 825628751 26036585 874941669 813490132 877846748 694049744 878996598 941035722 997724194 137264291 260141519 915493587 943574968 152016110 207281965 243192489 283898004 258614456 647445811 292721098 828626242 54360572 196098256 197868649 773878575 862635221 871975234 449111655 548063830 696688067 850703583 172989239 649475179 321123203 608765747 512058007 990378232 275032422 804095558 117574823 842223324 185053400 618274280 467126750 599610782 165765088 345584661 874501084 981937996 107152466 214337069 729984657 841132795 831870493 951221307 632465546 876763075 341183026 634232586 569742016 642673031 740043015 821687288 928278492 982350423 425164744 859634970 16250238 749170460 282203318 701298087 296934223 540424456 284176495 432577592 853206095 976193445 153855868 594123462 311550617 673403036 426306117 717707368 103718835 665821224 779138267 912596312 296821688 339967997 98900497 349582330 61024339 151449078 341260284 487709455 890194908 929921869 604112737 755644872 970100165 973281427 340010254 764768020 411447949 915311778 172206639 474808554 962579524 972293359 379607631 954588679 899257326 935604633 493361999 694748074 280875414 353064660 144153448 542029412 12915799 86306172 639557767 975586363 577546490 634654024 637644440 714289235 221683108 936970558 898954335 935178498 131479015 595276837 583112461 944302370 36020632 266111321 923956523 933860441 164107428 534897911 260725625 919708228 186386665 318834399 118714355 988601324 224056254 617134318 752712117 778321186 184873100 911764724 300848841 591105007 90259475 110109321 83615789 342873719 875598893 988178876 415448472 734934480 926714941 933216838 988081259 992600791 271206440 570781264 783811881 896559485 955901258 967627314 270552659 287643563 288939236 655753833 895768843 917492396 181838457 775652935 547398123 798956603 900780883 911428787 699962985 749123733 846859306 999679982 200972914 705897014 605513003 645084401 248285865 901259302 921344513 996287846 260228484 561310206 537290381 983794290 150223386 488797407 892892876 921308920 419229171 674251196 96821478 976843736 148151498 859803766 181786462 887311512 720442177 777028443 257515318 276335712 680548726 788335650 66199991 720085971 76710554 852261772 581800186 815595236 843643519 863925246 721959883 763609150 754776043 775800184 84559818 673098998 326914932 472057665 410020615 561405423 364995107 384618288 408040417 629747855 218522991 788551091 286233998 810513278 865337713 947376847 58573994 416385213 893968665 913375177 284796945 928355368 240668830 560545163 567985012 793372848 428975874 582001781 613954460 797319045 601376547 938675521 327966987 433349006 524133621 602922959 186041257 293322298 519593266 689623188 271053405 996030413 845763682 895146976 418930467 535962571 512888934 757702020 54497400 999310050 144201747 291381233 153324852 477685747 572805770 961862156 202393550 931915239 391733697 908125745 192060535 839224876 873590072 930868792 40664810 144493529 543911387 702060950 574857315 656705546 515569677 889923451 242851508 571320522 102010123 860219063 360471025 977564437 719044566 881545504 282296920 888504868 693690697 958147228 50238051 180545345 313790755 783093201 446286398 590701011 206062586 798960511 800450432 955770941 680238792 685275489 238757999 692545602 715983152 978954851 192091462 316421048 836271308 965799261 359127965 761656411 982267053 995977361 48150557 666023564 540676630 806607296 492489901 713296458 928139623 943828589 617634306 867622345 85906442 452022460 677964426 856164100 982487263 989112723 229609164 272205003 468826006 748482295 962609236 983228015 649852116 827027470 76415116 737819103 714213822 982549549 469577772 986536599 649302698 664309577 43175329 110324385 757469921 780102387 719569220 828099323 199671865 439884465 881669440 924485454 123159287 813926421 860442588 956844726 344498972 503864648 406899540 663851687 410868736 977222864 13466391 672115253 418311234 424575382 621501332 805072910 183997338 537127380 944485117 951620002 16834630 62842628 826398610 952340078 366920821 748312662 474348371 515580560 416319797 763234743 774115705 984029867 694652247 986728951 294643913 981292956 882851782 896162195 607536731 872551653 227232054 842945704 493915847 663534103 124967035 616300085 641441893 702077682 667683223 839070398 17751675 198480585 789763451 892362926 894498078 913658106 504704289 954316198 241989448 605005787 923590514 995233847 256893524 572467500 97726704 773586609 572546879 924880845 850905843 975028046 299416075 907200181 364482525 749812056 755669752 996016414 362263394 519576345 36977057 671011723 423944097 803058096 900727554 937401471 720925164 827653951 163541029 403592035 656814975 889224210 618054555 991681942 865411734 928207829 27279289 690862001 333966845 506722357 69790154 146886863 204607781 429031196 857950104 930797398 495326424 780448999 18959747 668206941 10301633 892788975 204201303 903647715 597180342 918046958 855655707 867893813 829232140 883505745 17903369 212293918 660559909 808102329 362178140 718459382 131972229 569674091 480232233 996208811 163114711 989091191 183908452 276485935 517962957 792292873 509979253 625047374 982486179 982769004 285404851 414136480 444152946 797021524 471653023 642946688 48372206 515920925 637015123 730077501 783505643 848838272 375989354 926753636 942865043 957286395 90223097 310254757 919364746 926867526 189658888 322738431 762770148 779749436 546771868 930758809 118414958 216449477 282686655 545337473 257988969 403769986 540307712 844819259 956627529 999696229 100182812 866048434 589972830 832124917 443662386 886696296 882459334 918927855 235885525 319458777 893916185 995351958 935200076 953671700 745776430 821587870 924829808 932298784 669537636 858234992 119946327 167627996 749723475 786042206 601897088 742796570 852964400 955398715 831927111 880250098 721203983 733685265 120128107 914289938 435353943 764338697 793546282 872791133 198822360 819136654 116714328 434535939 584034293 798296730 897103296 988980178 578098301 794685876 715172288 838760988 493190601 921415210 137806179 938760300 812820157 866327144 90092029 463193017 147408099 351513093 981767774 991436276 343486956 984786767 534759791 994130598 794115777 896340480 509917722 978218935 821128428 944228692 603129299 657029661 551409443 655826795 326493368 406734665 916713960 979950421 507851181 932362886 507207590 608461172 981913356 984935423 631603763 884364368 589318131 951129003 565249284 666709439 921719290 956540932 231485334 458153692 980304022 987880590 996278719 997579950 137736409 517918970 814634607 924125457 448636712 504343519 651320925 811060013 936651122 985345102 32117352 916543582 432766597 566050460 544686701 714459618 852508419 954204027 39510103 347926850 74423678 546697732 299184054 480537277 100330100 747228419 33346578 488038235 472922833 913394663 101697452 185658127 885985347 920573867 522646690 701973572 281227401 701912495 507024704 541988963 778134224 926944275 224176485 760219141 181346817 279321829 469680452 550836695 368414356 931718411 977460399 988258901 396125735 497723519 441444238 904036715 843780021 952644773 381077273 607422007 721722753 880361676 272882997 292869169 552410184 606193115 72129857 769737242 175647190 713909397 537806152 775545830 119149765 827094417 422846312 679515620 964409591 993246738 158032196 164499753 401982095 970604427 889792743 935084179 22531585 805138666 703975371 856665186 790036571 856773114 888637781 981350326 197563591 629975374 108361564 383218567 192765786 925204603 714935270 726218013 844402216 998778481 277830960 859989230 44064076 166419546 951867950 972396820 561466678 736917490 465297905 608630495 79305363 302842599 116094527 174555489 398536552 945384308 400662605 420562018 288042295 398477882 265713056 372337715 43202193 175961345 172202028 425361041 377063199 377396262 782980608 830140676 924925028 934869749 858465588 885371804 337712786 712386756 190601764 429474924 596289246 630879658 250756929 883179545 228187839 496409787 266580099 313505258 368011574 636621177 495245280 949826544 117127012 692335036 175588442 453300537 274072515 984292382 904652315 912285293 458528941 470038074 623098192 923518715 725210338 763625550 913260119 927575325 771157559 773973647 624627915 650826359 312985429 414462382 656894837 713217146 58104162 254640465 10755971 258383664 18152880 654281485 257996039 484606323 906097268 966616234 175267526 692675410 470999907 894551309 780468683 861498817 75768604 667155631 848793105 872808355 7286994 101594732 462145666 755729306 514714034 516910075 76545355 509872957 579164554 990820350 799735256 890169721 507356180 718175937 21137023 938449996 883262126 999279820 395454912 522018678 830346935 902880840 185979809 299142295 971657758 999731495 12198988 143710691 983254264 995150432 942130097 985456395 401389396 816517314 306353491 318965109 60671545 277493767 426314884 624696660 222458281 272315300 47447222 959031401 228955335 894899598 250921606 888561228 620602385 720445838 468636003 664164812 570888539 723017604 668724861 889545321 77870608 369832919 600237318 771781537 2838259 176176102 472632345 865724227 446810545 798282902 129354467 479538623 355435538 431941485 677068590 846208820 112778091 826334115 17184330 923509504 98256296 516270613 928713641 961966715 165063657 517720218 967903151 969979830 743290082 796742090 891187343 971739945 261733538 463611052 142321384 749151241 982351177 997744804 993698410 994410948 979364835 990016926 803478187 937102278 721136433 878940576 406131708 481014929 510096693 692124086 484553953 884384689 658462207 710711579 15753301 450844825 428337444 525626900 90574906 361227360 233113814 478080527 650318561 868086070 986371147 998181572 447427150 750713706 298109817 835523414 611944167 994786785 611311529 979050361 149779921 475222306 341302846 689100840 948555524 985093141 317459888 455426388 9254514 89448612 882508889 928119345 486418542 795255705 593686743 596144095 804989413 961962107 694989496 962988233 188419472 668997629 399135417 785219158 387251521 399775685 531271822 540597373 654198027 667314494 397750116 782404389 706395878 784489104 425214399 631376129 944919010 975051799 404618022 953510002 235907295 367731208 671258417 818545202 776626164 957139238 559575500 990545871 958046704 972964563 51236888 883799343 729899649 908243521 135617221 545882327 651996203 822946037 391893263 504255410 900766988 992400513 950168203 969652987 995724622 997013727 79903670 263690863 327582435 760336677 826468601 943996313 23656484 693015817 181994791 496950312 187377857 701931890 756754251 776974289 847907313 897171966 109717176 123971810 895928796 990760115 178250578 533108285 163196733 660661993 159023629 450029941 363637427 429258855 463115937 857253754 94843832 835457978 917947143 965105035 573766379 819895005 578655680 993477824 104425172 574772116 802713732 908463028 597049789 855146851 437715869 996827193 784135950 946292110 938952474 973808353 187241367 592612316 683473492 880397221 354071690 531530193 932653370 986988731 429259157 460409012 480565133 779724425 692334324 826658398 889491664 979153307 39460170 539770842 883730512 884870523 123528574 896524728 1020372 111923258 481100453 908799969 594962418 802445012 917789178 951210794 742500585 804754770 502260313 971150835 936391525 984794140 17406103 344409924 293988309 374506039 99328290 841248386 760951203 969898285 527213447 858210672 366472415 899920606 141003928 457918731 929519681 971996434 117257804 353926541 881557152 964007568 207332437 297300085 641514925 897728702 3403895 202924261 522081751 892324942 227917551 775975292 920020169 927329305 495545215 706300054 520088866 807883447 905558527 911321648 167467243 498908288 949966383 957644113 16219828 486878836 786708090 930867665 181304163 967563728 3355602 67942216 637945710 962691935 479327229 552046256 702675981 720199106 584526534 607889356 950429714 964836922 460535087 550743480 105962690 224355136 429660845 652401538 723476486 999571962 793897544 828273438 345087554 922584164 692507570 783855515 102897897 226980998 710643972 970267788 105748977 629275355 305050940 661591853 300619175 445038789 550988754 559412876 33229097 963648128 798676445 853028184 92101069 578687966 650512487 834395880 952943703 997795169 233165890 982264136 824105124 875280517 916182867 934020887 525990234 795908063 719511064 768633678 599206868 611653530 133192049 592468436 993028001 994363348 852713853 868365462 248840651 657815713 513019791 793184877 303028157 408902220 994076422 995488400 242656208 682955369 851566347 982666340 102909744 421251045 905159224 978380937 589067712 924309748 405018059 650480820 615965915 641326418 779684137 840510204 652340916 798214692 940153330 955578492 343434103 608282638 346370815 980722037 583932678 992381674 560670268 838044309 658316106 913225331 548634688 991807651 319092801 640730211 674927982 982926031 894478480 973153098 555706809 960797851 417838961 504199917 730220755 885367636 535123536 807625532 956795866 970110999 177364920 521580038 768912923 782039748 278076906 549192941 166603933 532480172 357701647 590428972 686005255 692188589 200815693 491696543 11901789 782215541 299115496 882629290 161655858 844273288 503126663 781412955 63728124 299232949 223746636 542557945 160630373 435467248 875285091 976839743 521231187 787278682 255909532 620735743 413397850 879286353 1416124 152925676 390824249 923746797 848187682 908756682 1288000 833830476 35789438 569607331 947059689 969960619 651922494 755781802 848325703 899779013 980750646 986258467 42156537 120106773 904277030 999803105 63497205 344960979 639306378 732238518 690255955 837178099 865963753 944282041 177057114 596424543 176548412 919591427 210747265 362207076 770438659 966610395 58790592 607803105 265763191 682367344 747189288 916818337 388833026 602245943 79711306 447420494 505876506 544521772 92395425 857554489 6862833 102330879 950123839 955237330 440113082 935848895 987537340 989830487 750792792 834351963 623910499 866397670 651522183 964349927 491330415 691567390 791316517 804324485 409653236 682999187 302186918 733156425 55054596 278412592 709151103 788995796 566625569 677313719 5451584 570436335 214606843 911601954 866675866 907284552 46668798 590703226 554052002 985622859 831438852 835807978 143721330 366621576 195379494 917220848 621430752 658526682 314907324 905975483 995888946 995902236 955847513 990917685 171981667 647968495 436807254 890636459 704692612 795839850 199447049 663053120 655649310 671680117 401046585 656699640 703744837 838410496 938739004 963468509 753225283 963350092 360434948 421994590 436327694 989241991 798435864 954198087 131288243 834226585 74815096 355701058 464445505 582818952 89996636 476118096 633712182 756189550 9897530 369843498 759251756 844435551 682004507 905742789 960449037 992751316 22240990 310884408 519414288 738445037 101592808 534925303 150982816 175702304 699545194 993640427 215890179 749845593 784893955 969010049 262928876 529984165 181674386 936861415 415781037 898759680 991359314 994436913 768252525 955425040 92812811 132959357 317457805 864290823 771184411 832374126 659599147 800482783 48311011 696953762 630285431 868931495 83717562 652639995 118242238 260604457 925579582 956179099 315339523 793521545 520338222 600839938 450567325 978108754 417122730 550132063 527206887 721897075 743734906 996553024 716491212 902675605 750577154 851174214 409092318 655619194 42794132 271682402 818052506 842873738 248894070 853003676 875277057 975045756 527547178 698024846 846141335 879039538 26697797 253137447 853430362 871760795 921034641 922167174 180335863 464461757 487267865 667185361 141368111 656468724 831967405 952797788 833344665 969577550 944329698 992965482 780931040 868703470 113236896 301561101 910532544 912727656 408589384 865176174 269770625 507041226 531581653 648019572 507112973 607416884 577282489 961664085 85070104 112555885 151972111 416993360 805724542 902375625 52465871 923015863 537504765 615684331 167618285 821261088 616656170 718484749 180874755 354695921 39321155 769176566 697683276 713446511 429671671 830386689 135110475 582888765 499090750 967979562 531023290 762040230 57517526 996101406 19353090 651524176 76772614 302012543 922488856 963146398 508258260 698426809 977047062 999231618 989452076 994616067 583520465 784007028 480918669 986796846 363775898 927727238 200564282 632501928 615000747 831934228 912677236 989823247 349622870 609797815 748944175 980519706 72644072 731332792 456117473 847410265 138074056 873684468 321569737 748974359 967866124 969307370 834957545 836096237 600491085 676889965 755216435 808585587 416464843 915629570 925986583 978813056 624153059 811908464 92096521 298983522 577260597 799780668 407346545 765912528 447054432 931313200 395550324 645154009 58546626 848103905 987294569 998490794 708675670 879363037 902096147 964886201 88933778 535137824 323892819 368093816 35763464 483319126 235013964 587358218 21204394 258596991 218105448 881150196 139318747 592921139 706382233 930744130 322936794 793574960 428318867 993183013 611549205 700754922 990202197 999472773 484126112 500996562 394261982 436830243 727429091 777684338 399069934 994188454 729706677 898137921 725803915 750089312 420936709 822045296 781309177 902550165 713009721 895075389 44837230 410195625 41114463 510821282 271786346 572616889 720211466 773217740 541777647 979920620 668058143 762782053 318213447 607142761 783347912 903572416 118607974 152155633 948966473 972751727 291329502 680685222 848869742 892917324 692604808 906831829 240205612 360764171 486387736 608853835 760041454 913752707 972981552 993907136 436501510 522728302 609062225 655540345 45599953 624914364 757431293 822388786 186143016 849901275 256617984 267462510 258665191 982959236 956178814 997059371 36183180 565879490 470309096 496526942 755872913 946290507 867076840 999758824 968274926 970843209 227481405 916708710 735548055 967183265 241697234 716946665 719775409 835043014 355824688 471325867 763551420 799358845 574007842 957218928 640960867 989691562 366126348 589914022 492753679 838076504 972512081 984756272 888812973 955405293 870149168 871434920 212309748 389351443 74815952 901472649 385193659 488472333 504202605 768950664 512448382 805739040 951625192 980247624 130293411 927438086 245888379 980658359 237581782 340279706 525009096 602577091 177137781 245640767 487802685 996133955 23493739 520068060 550682275 605622085 714337316 850941473 712199372 925467406 780067735 914964732 971982926 989421907 890770485 892273535 202370668 564607141 301605359 367865111 758896120 783040069 217138158 281532740 530887612 551840202 821319857 993254590 182976059 348241722 149604668 526458539 480239210 555551108 710076035 979256028 235032818 980204631 185865964 847474602 951063364 953384823 806499998 984806616 365348439 585173398 605521009 958686825 718869606 762237944 244551141 896156145 247181985 859061471 933140371 978348590 787907174 928400874 896162372 926506294 183687246 296009651 961214568 969666447 355816207 586566477 74854346 693413117 613909091 707739451 784338108 940639254 602086703 678255487 151603305 839807248 147945328 557056736 541289725 945091090 993358771 995556622 936734210 976940470 591002653 634311573 490685936 709785119 181614192 827035535 247472167 616929850 138394554 786739476 724871805 798512255 719510911 821114273 838608876 983901385 97843208 894867749 378388209 950006662 638277629 681810002 700664779 810200971 254631219 968910370 413438237 765230599 343434455 592427316 785317132 853177798 756059525 906927136 801640205 993378922 133047389 423582508 504820897 838345346 524513707 802253384 832536047 839532175 980226365 995634290 31451607 245237995 343332657 628930214 633159994 940865222 40183722 599176362 706144811 977325226 36720917 570624412 414513566 448844276 22205020 751344778 196064842 246363978 153887177 464262874 363315463 679294741 311488642 745461720 736916945 794108172 778884739 866663646 150800205 768942445 342689672 995026740 93501718 834276466 458142850 642696105 225253055 592074353 580846671 906395097 810043063 892280996 710592165 799642827 44740350 778889933 393840949 724986253 69528759 191168158 788216174 916319074 665134460 685971006 516026421 559444697 313800885 404445553 828748251 852401264 298981984 716710213 560515293 693935239 438296535 542929448 726556259 919330321 416868472 759789352 258078374 658050628 765967133 941825648 538904491 649231560 262687680 998941085 223454915 898656897 263083756 356514968 301073385 676228402 830644153 870726903 935860600 969776087 534915837 595921969 239613711 452636196 908744683 937563978 315785676 739931513 431280853 957438234 431446203 818490216 951017268 980317468 380824053 588618732 419696787 839944782 639838007 849772814 451877162 991777817 529672482 583310536 222229389 773612540 388884171 537882876 220197698 989754355 790071390 900222539 960855075 982951055 344837931 862376498 769000137 892513006 114139411 557190027 891358716 951709878 55029063 255286630 44428572 686684641 650796711 711115037 85151463 400347386 978161196 998592504 908713805 964933465 346462695 952913854 67405971 498427930 481067954 567383523 462228308 897003601 887015337 968359168 931517029 990033851 105504953 970789611 285145801 524187694 633182090 779649821 57520929 625193685 42723645 288037494 903479113 931146245 590764325 976154121 896402130 962602556 986814739 999453168 836199174 988381489 73254816 440237635 645677185 781939498 366041506 844583068 802252437 928364637 325634767 852867725 284202464 506107565 430137137 969021241 30669409 299514778 555349583 687256703 266254958 528187946 304663372 310499766 760971954 826947821 263864538 265819572 841950142 904035722 877476063 990312058 782470253 843163704 506043097 936558132 397610322 594546874 473101141 853140665 802031425 819051543 233402739 538295307 418213339 785852118 331106458 631627571 26504636 729279045 634549107 849664806 115771174 308096084 214353813 492284238 726027648 934882970 892664887 961549069 909504562 996425413 15564895 179642493 745657604 828646345 868193679 940237808 778284799 822303260 46661348 879731650 605838572 900337150 301193209 403134996 913104367 973786720 273437119 920577408 984446334 997280066 102633039 655079844 269231382 835440362 76380285 735202498 68841110 554700448 344047682 761674957 1690487 62749576 431292478 737559782 418730862 800409836 702423572 729322953 467975995 694285201 688194518 967691301 110531431 549699547 316536108 570533154 477619715 838118932 140857867 650093530 5485541 987534476 940604822 968428669 487618898 611988770 928566433 957332912 368351569 617153185 524135295 700306846 993839971 994696651 568126992 844565870 819870903 946491840 819294975 844613195 205289868 794961943 72459820 684905759 789691319 863152555 465695671 919745863 927721355 989302119 476500816 704482917 200566438 409952527 543618570 935487409 883755267 972952660 626940173 982589972 102177180 729363157 187732225 857175397 918820485 936279335 419509254 426683693 615568302 737518391 580150520 905762887 912952997 923310934 152886377 368090807 171273256 183560503 405523445 927216362 372258136 794852538 655465091 772955586 735970687 985789306 838429138 892124579 736385477 880558225 552727833 825764118 208409999 524810911 40853940 978053525 721907729 955737131 520719730 639115936 740265036 863573915 551754482 781580023 349594451 707132194 467606300 758829714 714083723 885119179 687958283 732808039 349101695 459172727 136636868 843758657 785335271 894058663 981009846 988920977 377500364 444708616 759948327 856827819 577530284 587501214 88916133 440187593 431480861 573668067 577068600 691723256 802803147 926657317 896293323 902481766 871292026 964019200 650848553 982127489 392166400 989176456 71751234 217182364 264565948 785424644 678575578 883699439 878987287 965701109 500504148 514320338 602374636 655192540 8474393 961108681 139851335 358695881 994636047 995158104 39403419 283903818 410283778 762467479 439893838 870961029 456238412 978218647 517545524 853742604 443077183 927893842 296842173 733226159 668431703 724640718 671921057 962202825 812137489 980215634 191960751 229399703 47831778 972193514 560702839 660962188 936711296 941949772 761832801 802991118 773755261 830790880 133573080 207397292 165586150 950202467 701210470 869282742 253289481 999299063 278066408 751865095 87553380 310020711 24354969 833582744 864692372 971408128 476972596 588946461 255898458 620576202 143532792 320456613 603725677 638909283 861261174 996756521 773073391 935876199 866923732 905067555 685606603 961795849 429464956 499429649 62137610 727694801 716772352 884587206 581751988 722677425 967788564 984671879 616540405 801977517 569202106 702558646 155600781 904752318 730892315 834147251 595187421 879241839 879163104 945661434 118038251 381894525 102913258 442275573 464422257 589038169 85603975 884239189 236271070 447202948 856981627 926577007 324452560 421168554 641190664 661036820 49877529 545268587 741659613 817193053 816589385 881930570 986560097 994139658 524791524 937276245 147189677 169971621 496165656 534327742 503630384 974199554 334723290 847810012 599952400 626423466 834738946 967243531 280413925 472866192 519071591 984358293 123367634 266998476 132593832 875019950 502734338 531006505 341310124 406220176 19834457 932892522 238267243 809120647 34250217 453464435 180153567 573571471 430317311 552262989 314133168 720742786 422350826 838091669 213472224 779552140 358457966 907453020 940592837 970584257 160233130 441810990 542564335 644365810 296798346 473147583 597258222 705088375 57164166 195008101 378843687 439708766 647035263 708234767 750371386 988497918 331733250 822843461 673517747 698641298 410868207 754978592 772807748 945581794 898509624 923064666 673093843 869837260 4490251 182798535 678590099 680247556 489439558 595468416 13667276 641881694 134033394 499240254 815417010 907362445 77634639 187899325 122169838 664995306 359642844 858440350 561768751 916432731 534689041 784909100 197836467 605112824 248745967 330188522 694682487 828430042 562649912 858370082 511476647 999264377 479138378 791821799 429603631 499302163 869263147 977861787 31443558 454767037 819713016 915019530 565416308 799714678 414909741 930035869 502089373 829592564 689053482 871973795 352147475 474882208 29699120 928413892 28070591 727471041 856758020 970415769 241596716 287740773 775818503 856875136 597188653 737577160 637481750 747247856 574621114 950037527 884708614 982438892 159886942 617391929 256979177 365294221 362370900 998817754 582758892 906966469 425978888 581729791 860872831 912856887 496620332 741716158 991471661 994147888 220807326 859813917 290477595 915564799 144419753 691479379 128485145 379331272 452627287 762149968 37673811 785718643 317367338 610686241 415928660 810347027 513074504 701401250 358668490 496439029 366327090 509025912 64803937 600414423 988473916 991523244 845988448 951115131 270889682 949784967 150413912 310558115 380800044 747104414 460438088 540779863 978348729 990685991 365294121 721990987 157056365 162355796 120076856 517368830 342995033 494474795 392940064 574687660 455210083 895242634 554688774 976407551 298370382 803808054 750781105 922508855 318704322 960520204 208529837 870519876 912484231 963120447 920124799 933003119 25669793 819024265 207819883 717885539 595804874 874435756 908410263 953162209 784088104 802321733 786188984 913747491 586480841 847052327 990592736 995172858 355054094 637353849 755823849 904720214 874364076 968735666 754354734 801251328 944590691 972602838 49391559 635151527 47751643 134214320 472557662 810733231 633350156 872768576 998271636 999244532 278343620 633249395 799137220 885647388 360892577 719994222 660938696 771679455 608874889 811563105 146583344 472595418 981946593 992021248 680340199 713102511 162554550 990146534 687618470 991567589 296318969 743902683 676340773 757125104 809633567 870800557 138549196 420624969 177706722 253869522 593612306 613227382 135015374 309678319 188094462 232337674 286484997 441107077 935098145 980023078 820245386 889731243 22746084 482086461 629301521 907203147 679807425 810093507 689550443 868312059 121785452 768635619 226924269 802286003 944606709 986400906 270154362 937988464 981665956 985694008 805812746 879617537 664335284 823745717 456349700 578723040 696651739 873988558 199991069 299715054 24967167 978989826 599944169 717841346 780774021 839631543 754282436 799868760 224454784 904982027 388759894 439994216 366917755 672493667 272217091 938518697 569630563 946520459 746378059 904172709 32179419 647411675 80716926 816772574 436265482 720324616 718158973 878573878 509149417 749487925 59774508 648786047 836906806 863284165 944890919 957272699 168318242 297509837 885898568 949540741 726613428 834939059 766885529 907810205 425150668 539662761 533852908 537548249 352031293 902839825 820885344 896294950 575289652 917132223 799119558 855830537 594250533 781114537 718805541 863716844 593241188 950751362 114655884 593664666 926957752 984737131 35581590 586594734 268397966 586875676 38774421 734973400 959682050 989942069 107457895 221809112 443308309 867076834 158809039 375181108 334567334 970595623 501263042 869547712 258422312 359750941 866993520 897368478 677758237 710548611 895211115 950816125 126087641 217826503 578340552 865968444 52327005 593060771 361608894 494265148 270418041 937731715 908101212 936401458 495518894 775008987 737287873 803963019 535693816 764886351 595883293 645848314 839168010 971759467 493894395 709431961 480448362 581639117 680451739 957906543 430402925 744704647 292106440 671349953 979756706 986963231 790666802 874477992 577319483 944635390 920569660 924946292 820355379 921572612 529255115 882445222 78353447 908999976 382668049 728989531 947016744 947690565 619704675 779627910 962275995 996164501 431207074 928793968 880123961 976130941 275110373 735120051 650124644 716748937 998484963 999894129 91507739 252165753 870346622 937344291 116203235 635440584 369792728 780855763 895682044 929008402 509671862 879131526 707774199 792890457 267170006 307548179 954279313 991337752 899054846 936929401 844190306 979969102 444501573 474965025 854059258 860938273 171295087 434514033 968698351 971295848 865901835 939241281 648220011 892623615 664229496 664339534 687337091 865582944 188654510 554482041 129021641 865132605 752041760 784788074 311483533 772326725 445495688 738807828 684525065 844829637 372058385 940206813 210467593 674766029 973624027 985342724 863389442 989456607 229748615 837166466 525604964 988107750 266252170 971814109 632363496 862667855 861191959 981810272 694975246 710062327 156256896 466316627 96325409 473139123 289358090 777121765 783098445 971175262 470041053 815470327 248068793 657920845 107498355 627205738 429635833 618898940 408392892 843861906 159812637 872722176 123545755 497110744 384090139 535569071 883446493 993073902 374245631 984506956 188542383 336420552 969600500 995631818 915909719 993831671 83189649 512487092 616426376 828267118 270559184 544893705 918801271 988910772 479455579 865976876 776920335 967575510 553900806 702368268 61702960 642121021 170100954 423829074 329453319 633008495 779353659 885860447 639931201 946188353 134818135 803163964 7151694 539178155 215890874 979823008 236878414 378575282 661016617 745099593 355668411 531377684 323089221 861237614 14382159 352998074 646155627 777149329 695638114 931716553 110124953 337296908 511338205 788840492 286649338 900904754 411262411 419603448 412376243 794228614 607606902 868069436 545575730 608260964 983901853 999394105 749848729 792027619 199655487 695272396 496036449 957099409 658719526 709150209 328517546 387293206 815224407 910240648 245748042 684609966 100564197 424042447 71749261 93383866 866100753 978146191 309980277 427404411 998638105 999798883 453025119 471032964 548824737 708649261 687587312 887543707 941348377 972531629 144424607 502357390 161969496 977977134 959927261 992791015 724498603 818804548 170218693 714097424 640472993 689622628 328477466 508773071 992409496 992902736 845571742 991963084 98787012 454417059 357751907 650757215 907869219 976127854 524557766 930178349 311478237 550769540 47373881 404404038 923340620 987432285 417742314 862499007 274788883 427292499 861847006 870821891 77488201 749982746 304940685 480519249 944234854 968619611 963804676 998600058 306933168 881933463 506767606 974957140 869934799 968282775 526886234 995061886 341856659 850925701 36699042 887562229 44346287 601243829 83592170 916196002 971354244 976731046 702168814 967810236 896442651 909637524 400025435 629582225 318786662 454914311 620542249 964500728 317148043 795066139 256941615 637033784 259256218 598976628 195551021 991704715 484726169 919610333 715515346 782925955 503204663 620135104 159934224 343878417 494307072 728993396 8282395 51706032 576493930 608473008 473086731 801390147 847142414 977306772 489824460 654220064 726842777 728082680 118143544 863980264 380390328 539609668 57050487 456941101 714930908 823171957 65430395 488373135 432147814 506598630 912594672 969573206 533273022 563419711 520364273 623171781 505167014 542024316 628938856 762648012 228425933 976861881 768219441 972883326 333181315 538201729 574946374 778549918 874766515 969452599 962209773 986989661 854992543 892351447 547639730 667920100 753938306 779089552 866607909 903490066 275284031 737560526 807140529 968107831 194755429 881628631 998977342 999501429 709165764 721270556 250543313 869716087 550239732 980312722 27726360 486452894 306757919 801252861 145873395 482027520 355605 941383855 247273154 951259458 161419148 900924310 380358413 903014408 168255714 563193537 559905143 724791638 615191122 839504819 942388840 958572395 957429038 987211956 125388172 907024777 445443988 919967122 880806535 920488035 915124647 931116874 207519493 747053221 380718337 701262499 288369251 402179007 711567808 774001188 171082254 915855078 38638926 406325530 610328682 613105066 695650663 831577619 528549509 600601835 947746207 970099601 428311569 737633705 236404255 674135375 487226911 776264288 334226084 515159027 57431123 972084738 301015605 517521423 498269007 736265466 174259217 943702201 351198620 740909528 404410248 405746916 607842473 877784031 974464708 986243729 585376674 742074136 537600374 567136479 190948975 866078918 631864811 865382541 302205999 620784696 946960313 961188651 979178185 986323044 289031118 308166896 338737819 844655722 621551446 800007343 481622149 918134466 347863486 720301278 197445163 434582853 448982508 628874895 831328117 968108261 151844302 159386420 697088136 733428594 265390162 441548778 681490351 959537759 257434618 482058830 822311312 933962375 231529874 649580875 336025448 944797917 415342992 752276401 977327291 994528752 458877730 902224715 571675682 712220868 89267641 434721042 260537965 445887375 41803272 936438967 306676737 971915934 639153638 994940645 166521897 777363466 365957764 581352877 648864644 701819294 398662164 433843650 593309391 963881708 799843573 833784449 669058019 720220939 123582878 417985160 52749445 432585309 584238034 781416550 373069214 620931811 64951801 932764916 280004703 912179733 493812068 868410497 329583684 815201173 181758888 939839902 959571881 978781689 44958871 561704241 102047261 157661634 382307024 794423743 864207655 934866639 607944636 904776583 251510613 634201865 222127670 794782374 980185058 999306719 556954094 897766802 351731974 827948932 261658162 334738854 645018422 795169968 43465243 760488484 690399757 948203006 242039294 725748532 969806762 972191686 874194674 894640426 890620600 978333501 688241318 772152659 519931365 607285390 83419849 839071598 804942196 820574602 621482155 924696818 198621429 514150534 624175297 632835173 684259011 935175894 747231011 852653612 519432053 944429612 1309896 378694917 620278236 745467143 364891270 641657321 16517284 253106615 584743300 870780027 511977153 910097488 966248314 975504503 299290017 507234745 852513435 926772618 992676673 997494510 690265959 763121839 932987274 988501071 670048875 802254204 111367112 560617464 449994375 986369845 827911184 873674975 732953040 868895667 427411046 796386561 80676442 153252551 438696267 782687902 90242305 874339703 879909689 917832400 528826040 683000713 310486136 951299437 624533690 972777899 464251109 855739594 684136340 989607435 189269442 911501441 950503492 958767778 157575508 923741542 352258421 652375228 299610976 687959411 76542795 210171283 112003544 785671142 419724846 877732718 978244516 981785638 677087375 996092316 622046666 746603809 908810244 967895554 314646052 465276826 659723472 827733855 980683268 984034819 143411623 855768268 242326513 659559600 361682598 980239541 394016915 657225137 528120106 810661383 400238293 907409671 545477415 868647705 272504655 940998662 703179851 923993738 471293833 771770976 532052861 632321877 576096734 743451125 781125639 958469966 729910539 796607962 957579023 986688088 55508657 300477598 922056307 929416934 163003126 668872691 862052847 985545739 459042582 702514644 213079285 971206489 616641707 782906011 736338208 781917470 782748549 837853828 398323539 927383529 43085138 292766145 482433873 708625233 874700490 884217998 344515948 834930813 22677727 923748238 102730997 157589664 485801796 789639992 371662697 433471599 149682449 290142762 618555126 870152935 950397761 985121082 553278619 702306139 967954328 968579215 77823348 629829882 952871004 960539249 506095561 941588147 59863638 101090673 331992409 699593567 534982561 943569462 544646093 901695429 432484647 922810930 18539802 68565303 772538238 968686320 207727060 659507278 416234770 773361157 502811995 557068444 286233625 357029007 706559420 733803125 396050188 438801966 330576691 492781558 312145593 337231756 94520812 114390605 738754843 871584823 727122574 878166123 309949679 332124672 617435856 779326688 534783069 865357613 269529745 631972947 865315846 989057439 941547898 974412204 198459817 381358151 903420498 922691308 826542646 986705923 984383758 992049609 482741826 659538061 24321671 744765116 333820245 656642664 508117367 834382300 736644933 996272065 163362245 426060892 798098453 909238490 56182725 118388486 348803212 697768451 120769108 586436520 498323458 621898389 822559350 938469270 526562467 921984186 771453111 984959944 915092961 986738456 824914743 968624407 218577666 651102552 24236085 813652026 94911151 148100510 600392191 974591100 312721227 402119907 371336645 646367590 451486155 797080435 87935979 505153651 79258985 628822118 878293040 945760323 251599974 661093468 143892866 619089205 324498444 532656503 264030967 383159130 364272233 615591461 75737724 511368039 738432760 926658488 274741032 708327424 367570339 393619825 348922862 719100086 715864666 951357616 196164326 516022298 182009167 723910689 958801201 963326202 201602674 908132957 186880673 214074970 53280403 166325488 745956294 763492804 324252291 673477390 684557405 707471113 909630405 917834358 80667006 620503300 623668615 825052499 168026712 362144562 504324373 913902970 876071193 945735443 832042129 893399360 940705578 949594607 336451265 355773873 542906770 936154546 784105177 820693855 488715410 725275498 343172765 690726649 947074154 960715269 811314761 974334110 567062058 635330580 472525246 505675554 939782864 988665235 301284052 431152995 533305533 817027703 993258362 994529353 908796227 978633530 390398305 448505270 700089809 758659971 584320294 827713130 334087225 366944598 72386671 166288681 286067434 947204316 18345543 402326957 108753076 903772651 856364131 860879141 891450296 892694198 501948224 757619055 757013499 942486534 726013293 857425190 599224912 845724488 97948250 301544232 219641330 537113548 890021552 957372723 138673350 366184493 315981966 839186039 332301204 491269158 996696104 998681349 649272781 828526820 654710688 828078176 863832795 975738274 354116589 428017744 350493043 947538170 610643420 904507424 233804833 299865504 645570898 855829124 37609875 799854924 763547101 879001463 467667805 647106777 228411382 459532351 119661042 930688126 246568285 925966636 978898249 992508784 393102719 902683083 542841129 866469713 732086491 758310810 721378310 911479772 204507405 647146981 882603327 908073583 899163430 954533018 565606734 931411710 944915246 974339743 279818682 293675769 519267761 756560988 900906718 961167980 10245147 522705131 586565496 890806883 352646162 969014237 370503062 536554085 82064750 243945466 702897894 761439991 797679579 833721775 737422836 757966608 891268271 910565484 906550553 952653799 772218118 908022299 939577719 966131293 602884751 979301143 466420840 709500696 450886076 587657472 404580762 558432608 177029947 846618419 751610006 891427487 556421906 858765925 847741427 950004528 455342678 835201151 512586949 750008568 912211352 969922752 299994068 362804420 508910952 806957350 991386247 998308643 317344711 515465530 513671013 925599154 372131163 769119212 81898866 584561474 786913759 849589446 24933340 819946219 385208152 822169740 642378596 898580199 72650445 718130418 827111758 829415929 703648093 985204526 34241986 552076797 629071159 954880953 445491527 794560844 590620875 806351075 778567924 880125113 178015580 656645957 350372805 463024294 556726065 816314861 233318806 990711170 275294111 427651978 132822527 736983290 138160270 929663451 59064314 129825418 103434039 347236879 906955046 978262487 404850881 584739721 197213888 242225391 837931912 980750834 102911111 677893290 229424188 437693151 453888433 670531758 929896727 978663618 410971748 830743556 503280725 648347090 289301057 761036688 826721771 937858366 814814069 955309861 373835705 831005787 432787367 474876884 611022529 858523509 515871378 605487130 625253585 954153072 462119404 558549812 49049753 521940355 152124398 257431236 253407451 731062756 404401218 507818504 627776284 901657391 216758807 433603815 743722802 869809579 234441518 659878691 285055476 658251136 901427140 960416351 839598542 940976268 223050831 386835994 743337905 968458616 858937535 933187095 874477343 889319694 531460042 622120326 972797712 973585736 383103370 944118354 534730870 983742940 438627322 877858481 50871845 213082003 289780241 579657927 722687160 816786866 696268614 705070735 229994006 267121520 929436046 999071259 553997916 894217527 559379931 599989986 220766006 835368699 401822036 456185861 351666496 533625803 230534376 565343170 255169434 520660986 64261490 341276559 613339452 921152054 267863493 550280603 944872441 967001218 180748485 799437099 810348562 925588811 855733560 881813329 923959604 972468245 413179499 756031765 408168855 739238346 14624774 301589581 11234454 646471029 860261264 961197956 74673005 155625013 964653195 977131205 697213370 833777008 373291277 613281764 659043669 700174009 710918156 748997139 165810886 931821321 507791383 650359279 655668420 958026733 946564288 967213009 380333510 542013338 893295205 924653156 239769164 794893994 94548467 539062198 342108304 478509235 889196169 980231833 197007837 600935711 650254097 869850198 886788137 894546585 346709153 653472482 601119042 801049768 71093036 569500481 469640737 802459240 323611754 437842699 467602987 589069439 394495881 689939401 374739302 868652010 867574059 883455833 549441733 829166807 308806070 635946295 345733555 961892467 643358859 969841494 783893113 879859719 892511236 959983080 521047306 835449344 614885564 850018137 300322541 654993552 51752818 221952142 510583011 637184320 980230217 993802018 224045519 346135311 284471930 402494624 933696581 935666129 901968486 974700862 86864837 798049945 52887617 490504535 154942958 768526981 583273494 800551419 760221651 811569679 191567750 646296844 140131808 182038791 199654963 979739844 415425239 967158897 514178044 594018550 180448484 347049710 437138734 552870107 815638695 932510735 516748060 619565899 443296707 886615959 574796725 739731334 838973393 974650914 668965484 678033577 829053813 891484517 9633506 460769352 783653871 821283444 646002889 654120900 648000973 997714810 374393314 439403846 221355061 850350567 566061805 627009131 876245042 939088003 131654290 219339442 797695428 841231766 316661350 523046676 390150333 639628032 890994122 956263642 923508785 976474198 607712069 802194275 534537269 646679878 164559408 370462007 975277147 987221538 304374340 848628034 592184702 823794440 535942 23982772 429189613 554073587 989527353 999842564 702800877 899870983 511736452 577917201 228660425 517786627 120147582 571271722 139922618 832376334 337127903 984596462 50611930 518387812 205838635 546748219 686715406 689419864 103916723 915305350 981439834 999143789 610151383 867179217 656636485 756881112 694827033 775817595 928422235 971906407 498377287 912985993 673499274 935907977 51972743 961585419 415247599 467404086 290335432 406330854 99178356 118281215 530179818 810587628 149114883 776731586 187488729 425629283 108163232 819418084 143554106 851027168 565110297 709618866 315399740 621037650 249413755 746370339 648594681 830501821 933841729 976722429 401212488 823043521 327291800 609516786 101651106 381751951 487779920 739085106 515522096 828840764 524582469 743150513 232383061 780505003 790918870 936515267 299491475 820988224 969177381 980594921 955017993 963124154 53005094 807103736 889604224 987578331 846130565 901071881 427930644 556135961 376290197 494186481 255441184 774893348 827415725 832716141 149767579 510108310 768158274 882543543 234033438 799708543 828234069 947032877 462649740 633847035 86606940 739730591 503165066 703342415 894968937 895904047 340990703 615110766 556809573 899207635 126240958 989597561 361823500 792666961 332865275 365518868 831609317 958989888 343409730 702785795 543870424 689850133 207513731 800832850 328391926 943240660 288729167 557594341 814494227 955426336 270841259 746925357 449418210 788800799 607525552 661156359 282626164 947079115 457852173 728584441 667510887 746350193 755744471 960870319 789449544 798741833 270033076 372674193 994368653 997639527 559550772 854388801 658961354 689321258 10660836 322313269 825631708 844537640 948304082 995051559 681257329 811458928 172285365 215149171 364158459 638542449 209983701 936909458 335884878 583690025 759056587 766616573 403460992 902561954 358378120 470648266 768638812 787696578 23048157 897444966 958390254 991459727 875033167 894027532 589895813 673907070 815384046 865475986 950991335 986623768 329621305 862025923 591181463 877608025 808780090 880010877 19106208 697961528 201368739 338646794 42087266 877101347 492418281 635327037 193262731 970840943 531982530 553858384 954078151 963355845 549315669 773726253 878341060 891025962 384819224 744904781 200741634 789177357 355156707 564305879 861538619 869061507 845395691 967219726 651982491 707630283 791602980 806813387 366905313 451436714 673691389 985531868 299724890 457959936 660503560 924160541 724328055 810997099 130500347 396801323 573490621 715813619 428449446 830800450 903799486 966890127 839961651 989614192 849679816 920062922 129026203 583602818 822931815 896821492 588386437 624615618 317546906 568198000 921429251 931477152 997810861 999497155 996492734 997653180 448084585 912850796 114591037 427601504 214458775 605835572 475921084 604330886 134527889 757911165 968294762 994338191 851901855 946986018 526704706 547067630 361247801 464234740 128116103 418878315 947072992 949722134 952210689 965684413 220702079 414337700 863183284 900566314 416136541 427583657 717409290 984532942 265565345 641506506 292550010 675821423 11392803 915965120 300086403 633129074 980314077 995103685 226378860 392095902 471798848 861756964 876538152 934968916 230583983 730511852 325076796 976016018 229920321 761086628 681563431 690864029 706102961 833834900 577217768 704572468 986031187 986364041 83974631 443183792 127847784 179864330 332283364 597848317 299910682 368083069 553316853 964976604 688699915 732597000 39980311 913449672 174910586 721803333 616601422 832267821 353153035 413069818 677729177 960489953 645707940 824524306 668701425 865388834 127864749 210363826 379261147 687588451 434947141 504026376 486576971 516744338 635560178 918070345 746744807 989965372 577520660 828738942 255377525 378762455 56168589 144612892 662850459 866110915 50097657 254261503 26883070 868172591 505074613 977579681 351839088 434793482 275415398 368101689 340999586 941601496 56726961 710680414 637902233 780503403 114184265 809155408 655103869 982032611 295636456 755556123 684399185 932522707 708369429 792915422 486183861 888411000 379631336 651740470 443117913 448491718 525354484 875303264 909168346 909541721 217620339 951322010 752392449 898291443 774373079 905541947 136374440 319153614 476249315 689705558 116717720 839026665 62147147 920669513 200115238 565412764 240751784 972822347 480060943 585551565 597938018 680068898 205830567 777239788 560379963 661306879 198352655 452015828 675602087 788971177 964843613 996744249 687614392 985903936 980715874 992908118 975515959 986034071 825260250 829165402 244224749 928704005 721005908 738320074 148551255 682649166 285357744 602964689 878665222 991917091 556596840 886546851 363153885 537305281 907655471 908292904 478556076 663849036 752878510 873215833 455212667 975021547 371204877 854375545 922328752 998794748 754949067 793854212 590431209 679652188 824085002 976482471 315168192 439701510 103940098 145219822 616666800 878947033 19021801 538694248 629319143 751039535 125331732 128167479 561719202 811059014 794875969 838427294 663954808 872533554 130146675 371608417 130297047 182156529 390580984 896414315 676384518 680009118 816425376 851813016 671857412 940787092 544720305 649074361 923636984 928993871 427189651 577788454 930914151 992529922 229400166 752968475 639663734 876666484 154408 756180998 128250758 368400173 129747179 770104078 146812810 518927941 748056333 827854232 363844560 721739805 627342405 798250986 335906658 851607976 727404826 794482637 29424116 169958116 392691960 807704022 894120 337314405 330794610 341094574 159757865 172420212 376504516 577113161 566652228 568640645 885169900 891932772 435047905 548826068 547922365 629059769 138435919 892150561 825759111 931131129 355072887 796839535 16888343 491927160 631992253 901412590 553886147 852294677 231850471 759656131 667461348 855060571 850617522 953730621 515234068 736085013 900568910 988165364 17628830 605369486 109925462 983965898 305647976 780556593 717622720 816013867 907668467 951504394 207601079 719623035 622345672 674897417 630025340 979977914 901037258 984016872 84229627 779289953 697913858 851584036 125577107 619497874 417737248 466318609 787636100 967776263 970000730 992394767 689351224 823572107 543658532 980411800 615034884 695253183 949270657 952313129 124998392 540060907 633032543 951355988 404642521 440967554 924745324 959323788 447352519 860428155 523290515 792580508 303578085 987968372 345571656 422103402 506915280 578210899 459595352 701794664 697663242 890463008 776707183 963375679 786864824 887289965 291373428 949116138 484005175 698975688 203851850 356274255 771741078 780262010 870194718 973345723 969696535 992096180 738880043 828656288 654431880 883954502 385532689 700691314 505439631 749409748 159112080 816258004 37498995 297332346 221050344 667688023 445290174 755057981 772051196 850667652 405790556 758652166 240375083 457211659 356772430 867723450 251690920 703402092 909249055 931565291 775002212 963453465 761012712 999094900 53747264 328730177 168207996 828799790 164955701 560027513 962243944 998794748 666053735 938436364 223796738 402293582 496723647 964716603 839304193 953539968 871369336 946888349 187814946 637943312 181417592 365460543 170625361 584183439 146585739 872188906 776739197 889697722 901222575 961228457 762965342 764571049 171681882 653995113 676036314 944600026 437368298 438642200 319632271 622045953 222015864 455927044 874106940 907162495 657949631 813354132 792978679 975726155 730906172 876982343 988969075 998049912 282587452 302342008 998012729 998331876 28236950 896166541 826686215 943184008 710375071 920538148 887555802 942528472 163400283 715185094 294965658 719659794 166788545 346198516 187279690 828979063 612284899 769520290 445443434 979392343 538697653 951176471 248463970 781110239 621209104 988604644 442311386 508339657 505960934 576057708 415432451 516327886 315483943 543763405 180140297 235161376 443448861 471744168 135163606 650558274 696636285 881351698 4683674 937794632 808896201 829563628 457028789 524641861 471160181 748417264 473439940 631792341 84371866 840520321 889941 518856239 774324973 913959105 443406730 930556271 197411776 960671471 94223594 358212456 996799896 999105913 583171921 660861656 7484128 926388217 165890693 604570699 24993615 894417833 198081254 655137133 611096490 672479495 324757593 494286714 980678097 997211683 238166907 581223710 448277127 772065618 67628295 179620343 929569530 972536090 155998310 231297196 593547525 943411566 249994937 283739850 56025737 418687112 709581273 812138140 915698821 972389557 395831967 989203304 417453019 547757978 854675297 883516003 823317245 951931794 377650058 773429473 874030339 994641644 652107475 715137207 768723429 946616651 635847219 933803387 667329756 916061352 17284694 988401381 317748101 725167993 701910099 894089199 279013160 444867213 985480619 991457949 103944568 540507709 553278163 815236671 764225161 877474831 680968721 742394157 271530638 807298558 664393983 858757531 340074921 471837188 27582639 419258726 103366180 536384826 313063865 583659093 11701568 205147812 444783125 901712511 15500088 309525844 395124050 671845029 437879714 987306865 191240861 566937491 723101098 976665213 211271682 351960140 732397861 942065307 241505000 869891222 633954168 996225602 672461155 771123039 214480396 440989231 727424148 754148899 634314159 921023756 155158419 788777446 837253670 905851826 402309949 462452059 78849796 294391626 27805620 538509479 412824155 812864836 95206362 506391492 74472185 351347715 599636560 829811482 995508531 996843170 906964191 958056282 208350179 980571503 427162086 895224574 336360406 598674761 44628564 528384804 79512170 601061568 43889938 361756888 587603974 778416065 107954563 207756315 804553474 888690091 941605840 987741550 46472642 410189020 830524036 944696263 872857389 911204354 32264246 757323568 192776413 236971259 773163191 920436634 962600262 981184321 620083336 973711548 932912125 969604049 502456771 665572018 304688516 758694321 477580715 966241702 978373636 978473508 383102680 445796980 756490565 809942780 570805858 859692070 510134922 816691474 815056979 864842664 107284929 673696124 746505735 801898199 18136378 806354889 29029707 852467395 839760748 868650541 401080529 873478602 174791032 765966547 667401509 712071367 766902033 993087214 526598680 808475006 569957781 906417734 115712979 348192619 48122884 143101332 397847900 938898615 988143314 999572693 341297478 973135206 259238289 269578633 148058391 718591666 701491820 765070935 220593647 683979180 26275967 39996148 673346411 893981763 614125644 644307722 327824337 414999698 912365392 942544662 730632479 833553203 323606714 482871972 998387953 999737484 964255351 989895774 578838931 714680051 525853649 703101470 50730460 438945160 738917856 767796303 994009650 996958406 222726593 966564098 383195948 421559211 882474387 918406234 947502197 972820271 996699002 997338658 41959195 448449971 385192170 725237377 920609204 964947399 104505518 234210386 658033264 738810046 264486762 420926067 830623802 837117897 72188973 450295649 984088614 986008844 960945855 974646139 101448114 758819804 770458979 920942740 402218643 810711032 657757253 707502489 642986629 693935578 821280854 911201614 488669355 554081463 159013183 649230190 203361585 661050619 974871268 977062984 266276258 387439445 773287257 820087505 188442373 194392930 424628179 427568039 207715072 536939304 941981396 983271262 706677861 993984822 621298698 844689275 198933709 522736353 767087546 854219901 108745030 374998342 818024464 823779734 274646529 964919402 73405880 656951222 243516962 929235054 562068594 584701959 643488957 862584420 218368709 945035574 979942667 993717376 265400610 827595808 263058930 837177321 982372382 991726832 823094756 937984981 786027580 863980196 740806453 806026936 954213195 998835882 483917745 989567378 196316916 772090886 462494853 917731395 147178778 218582377 203741157 768536530 881218759 882029289 460468412 994349398 899262195 904290010 630979497 714638638 773204162 982964938 630359226 894839637 631179299 754725572 823152136 973981768 640878890 890116686 795065469 823688538 161445282 809042324 484115829 876155737 459275457 815565432 290020881 350599136 668144874 958699032 238031076 972687093 983098721 995351285 907891770 999019493 966012274 990747466 291442925 491935878 981688467 986101312 474549418 802034525 975912884 982470436 716542680 799475928 575680685 601183799 244350337 783552339 630017169 848127393 897246884 982753514 621927510 642718868 962410963 984337861 577273715 738465743 103919155 297386994 505927169 684043187 603781085 785179861 705261115 876774128 416214848 837175430 59189459 356207618 267237347 663495788 186665961 529381382 45282415 956892227 285219530 564848480 465739880 912808270 575456335 928703090 195055480 599313827 640173645 698284349 812545719 942742337 853916319 908683291 955492401 965870893 385739698 906443270 7126885 843711873 897930026 928363200 496807750 725025730 282487524 433458354 119303402 894029737 967083986 971362719 78414423 258757091 785745525 906729615 925618635 954237882 959260357 981178459 61370825 963661387 704262351 837361812 688078650 983512180 605942391 746214334 100465846 145097899 712350810 940414823 870036280 943698709 370769183 385167606 142049030 562127994 262720741 490212893 642792573 689952841 745324628 776001040 895836890 983875757 923585700 934182795 892112598 973538398 225172150 497259121 766371944 870489593 224456239 416627915 906922043 957311705 880879132 971021486 965769810 982367347 615651514 933998484 639740697 878566772 428290985 496155433 170591034 337493484 948118649 953711527 626005256 688512180 704615985 748050954 938878681 940643438 894966461 934419586 478919157 801906421 735386845 879198659 348795629 351873449 460050677 523207836 618057109 969503975 82862643 779353564 401860502 706633860 594462699 753677532 648125133 676064851 81973199 579571174 973542618 978609529 545850963 904124269 482763536 495781189 507741796 990700614 740250178 775539435 67729121 476740422 537346017 918432135 245598561 879590109 127460204 167810718 609460660 679976956 878620462 931622167 632644647 823055322 276382224 393055412 474630373 988804345 259304913 624607228 309468935 805622040 689120088 951637518 680950354 706792841 788873732 981031086 352972636 409096202 11554669 724170565 466867385 469033392 686037804 952394580 667571983 972854034 348274330 679501531 174331060 924192207 615012737 965151964 382854507 490351731 941500575 965500550 240694580 730664198 99436514 310219680 437133729 448154665 537159478 881327760 936432228 946316103 611112663 763436115 391377306 442867423 794612020 879226275 682653795 854129334 931278315 970718123 301785336 966024308 739723283 894081079 444871153 861551267 251259868 284978056 505783939 587792090 370032251 708001170 232265768 430140381 919695218 992656730 168421179 306045457 866383612 868661695 158209162 303571066 992814238 994464436 269330751 820636705 21904214 516608437 498406687 618493316 846308389 975865487 834557861 889047876 222058773 295303211 143640992 243700035 920044324 937103029 554343886 798122003 686088557 810320491 401758996 817596196 49425168 813894733 783036577 906337138 342099723 452025098 198649568 986655355 629595592 863233468 633143771 970422626 519625493 570934171 503941174 869259183 493349268 612054362 35905902 482768900 420687455 557034351 647957159 675034275 909275963 971905670 568337894 595437900 72192741 127181451 885193471 904739866 507420364 634154886 573185248 709510528 38734867 348880803 556412935 594874920 761120326 778854103 973371776 992139146 279960894 305391003 443874135 544220195 283695351 420612885 826469426 843798108 135565459 915197482 307101931 606437187 97546005 997094601 550155417 698752885 455940935 583427782 581958108 794242491 428516551 658497592 376905944 519636283 425272313 957244608 77333303 735965911 670430956 966075475 771168674 901302185 694526595 833327928 253692083 733326762 606802236 968364127 824311939 831214527 206708785 827668134 878267715 889872181 912916705 992562779 113346594 305204483 250792824 727686496 518063359 782099566 199496594 589290812 801864614 810410696 255573528 891739868 693148608 826173600 348972416 649684855 62263142 194251700 548645917 931646748 184193264 862249455 534147203 588571626 874607286 899384706 138279454 742100713 528685830 856058922 500987954 666858435 97368306 811118419 128672649 821495271 485114611 982936826 116873967 692947352 166424608 212355707 633928004 814006617 197711355 766188017 876981278 980591575 580417024 960329869 845135347 964375301 466679088 968932400 872897747 879712837 585148935 980530525 979507925 981409610 593722027 607377676 197653212 319177477 695427552 757676289 659864702 809812589 47141886 285373295 653551525 671728364 172335259 805802647 523021058 939040711 366701571 509475375 622183922 731461613 644658788 837779492 663093535 938691047 920412029 981098782 374115352 689865736 946627989 977015926 514325205 962052480 73327542 168837699 898619997 910632674 185928323 522272827 351205463 890412608 925809691 961337509 612183042 999758388 679881935 790551680 303028788 442369087 436331909 744683640 445688375 588284920 373004060 401768484 49459897 852364235 314357435 383468477 832353257 928726574 191230962 200747397 799511857 830870702 49510647 59749909 872782487 920562420 75344712 195897051 271689048 624356654 559465224 768426151 306081367 345254066 74837509 488680012 243925942 272024310 123079799 724381855 526169114 671959503 280303118 660172001 643416269 849842986 367014944 730955670 206109656 871441518 525961369 973839167 774210651 872795173 334845560 846733492 882279273 979509552 646377875 969688844 904124568 970203280 907828190 970604799 631254685 698909413 620204561 777682001 857053508 912628472 363442986 672834494 490532264 995483027 951252397 954888521 241718693 518522269 168434118 944290709 609714200 857819200 912218072 979313933 115944281 201546238 655423357 897034641 317090985 725519262 382771656 825767066 192559553 199223315 125531958 364345632 93080184 873940821 731011504 912542408 882113811 935730368 151849827 265178801 96285819 739659724 326826668 434540075 139083834 750906617 572358492 912923779 260888185 902270054 102517832 603559605 737966045 771741065 7275364 288321960 961987518 996848377 953372557 981443176 714459528 926308288 402275876 906405746 750947110 933056194 21088015 129076138 528234584 939213185 81877260 461801743 657642753 967413961 769293111 960210841 331193250 501650446 338831934 860500433 248860330 463197091 477091955 496210949 414883386 523591253 865686880 914819056 605640435 645235523 434516725 691682746 931634666 933369884 201991794 794603227 241823356 553886166 55045922 864298269 700221667 801153431 633960604 656776190 479517908 877399590 300372625 579791581 116767033 941140374 273786863 593030442 406542705 782654840 245218169 442173885 364061427 850658776 629259435 882989702 226035376 292030509 674719001 891326929 907463876 958413002 351020052 598045127 583216498 601343886 460231161 668006624 333797526 700987267 85538056 886390674 455911012 476823051 85550533 757214527 422884466 432545042 526280206 595207836 650094839 677457579 99659344 279326063 184939541 329662853 247215361 378741627 555923274 723193282 947056937 949151331 10807646 122327462 530342275 807304032 125578222 541334841 95152277 267108854 418371467 486388631 169477421 284220329 638342828 992225655 8769216 887804985 114439383 953018401 633396040 761257628 207643206 393080874 749821023 970445977 893920892 907378172 331759923 366468137 344821575 641070612 453700091 915178074 454165345 962267660 481285337 597335549 104941161 116889796 644187731 916127970 557458698 589623924 491838328 734098978 638519797 729213714 585915095 811223705 382048683 871926982 545062829 900250380 550612982 795257677 803636191 835377970 329375705 580248195 195736172 828231333 757099179 958097337 419318789 481976148 415245125 878997546 345139900 703408955 122626867 701500980 35565548 643080788 940771957 955240338 58094388 243936993 730865544 836106167 70369153 324204211 885151951 900473589 988505200 997582922 934070412 938673103 416190408 593860521 168371231 230729280 624957702 630553991 751872676 990529563 638909202 714867449 824920018 855803856 518011707 620552360 264264672 776340878 765846629 882614957 88793379 671100122 538158274 848145160 742590249 764040668 883075278 947682218 326509299 936703212 77105808 980785765 967370517 993277545 863931566 877688734 796816394 910102035 919660374 975472867 765378171 799928551 628960787 846819942 949178167 989803996 786237259 838108413 880378860 992930050 687206806 965278606 232896614 397007838 748213574 841961057 989849680 990855054 926429997 992308214 327528396 550145527 946702327 960234577 537981512 729988359 39424699 760005543 712608998 749157406 758621290 890147123 299593252 634467433 57034549 928151274 576322113 859791783 778215480 931641776 83333219 614012655 397011042 968747587 559417459 729505454 358862150 972381422 966195736 993299065 599824719 610819125 565631985 631935149 507032421 586457749 202053652 774752829 845876471 929831984 782280261 955207952 765974773 826874836 115596160 377321170 830674941 989062608 950704294 954327153 943345400 960526874 150444231 975176461 267224433 406119803 234629826 658822700 143939620 255170691 955597600 969194008 956569883 966754506 615264649 875519071 119592056 822017786 520711954 632728722 370113171 974485876 820310154 822679179 553338244 624755956 751716494 920136648 729349545 866742132 945365028 956173964 572617649 934668948 378592920 823259109 216000491 995453710 165007994 249017280 975151254 984072634 460680312 468970453 975696594 986857583 430281022 650859679 211553822 664989373 494255448 855489265 979450660 991491922 877968880 953125204 117106373 223985261 337635010 408631061 728867647 922835306 370730289 782119753 40362202 128565837 292968278 418439276 819050148 875116089 552281160 764918645 32631260 51346343 240218569 653079823 910608735 956567913 783143786 966261001 646082897 996737938 426341113 638902050 883823850 989636586 304627528 955358795 128080639 218324235 158172171 592512294 657429929 904187046 655639193 985849032 744828842 762834712 471709338 613598975 521530449 598174081 81304754 791783116 253745789 882152282 891038919 939596887 23873180 254306788 107807066 912777424 647989182 802331563 896424216 898764346 99695446 454873840 581934721 771008620 847056718 967239162 563954818 680625880 187547598 494659050 953073653 979663745 102739758 205092833 847676299 895364817 271207164 568292215 704111389 707569262 13551962 173158991 440923 19204884 202353537 937081058 574693850 879659934 660167112 661176638 354435286 891793998 553709793 888438558 648333575 771814158 298391312 844875075 417342042 589933738 477734896 689610494 985027354 995722793 306522140 532575309 455327187 576332792 990439905 999324857 962487570 999524953 228106014 690708691 312458486 565192340 382901373 660824476 667942183 880563126 797404241 860410549 454841667 904959094 58601347 377839825 858925693 982446838 738740601 883254164 650438848 693915911 241881916 585566717 411558184 945405348 638679949 981369020 502773260 811204867 565445869 999852052 485057092 623395059 532735270 905588357 880160311 980888178 43510067 519273680 612409675 954184310 445859537 588958310 732892278 750091849 625654794 834626031 724997032 774467476 918241278 971664915 761911180 977114183 803345629 864846637 480100447 839044913 922995434 945510304 614015609 867737992 284710375 978530325 873910353 924468750 190746927 828142092 760267814 926737367 203399200 595656463 315977830 913448985 673103469 863651116 132095329 334874684 887742720 915044419 180381835 421045968 78370204 312191200 828726601 911713814 661234735 892129753 792393821 812724394 812322138 883665904 935201545 945895060 106162006 776665612 825089029 974752080 197734778 793968129 761701954 828587685 772352996 988343383 713841552 717710047 846692445 901713091 895287873 902153972 436638754 868587915 356383863 974507723 1079958 587493697 970545368 986643691 302710233 823900941 433006432 493651944 50720088 225846414 212802507 917510698 806359775 825353254 655416145 860378099 160542475 754558377 42061589 248960468 513755158 699947343 27224065 238108742 477889888 782248543 112123807 548148289 548077375 807708206 872994727 892042753 536258294 973381915 136041739 791512693 738709412 844117962 935814245 977127803 735791118 990122170 355999773 884398947 51184499 131530930 583698027 836126471 290927233 394521747 151817648 494088968 771359773 794077407 296565350 978078335 445914427 742951998 225218972 773570133 252132908 821499390 242146745 605623788 900488793 912608887 663836308 841809776 337299725 455320790 880718128 909345583 52555614 75807184 105579895 807675174 995902940 997286789 867482603 934332876 117798387 733041482 539668630 919443934 724544124 727170786 596334871 921871375 977558855 980573056 665484572 896948428 263795836 852032622 898801805 943500280 169652819 687983488 20433015 672777256 827379028 954844405 713652229 991631588 590018125 615168375 510726991 913034868 668325781 753737907 101085948 769559042 18281716 247159468 676709071 685274340 817519167 893897567 602586709 713378074 266762037 926343337 162149823 178401156 246534477 333041483 606748414 678359362 221074034 605091469 275568572 763315842 176347900 865246441 497975739 701474073 262446532 869127924 108984298 960069156 504383415 893438681 168553642 276336425 880184027 946628834 57784891 824782185 888715680 917203517 542456016 645527700 293904313 450326207 728784731 948599192 166468761 952381903 912735828 971112105 636382774 873645451 282933569 884488590 448061926 648172458 241015178 938149602 154328380 634387210 679976982 809695176 596293372 836180988 299470907 920271224 411800677 839914434 629265605 910237458 712228518 834103559 470190324 492747089 270835830 955689483 346920175 406164082 110582689 110597960 901123295 919983463 136494019 388518412 290235171 505730930 318579290 597158432 171618460 559457172 102316260 467808468 59229436 419731648 911355626 978697695 158059600 968803600 93945411 558533879 562068575 670039734 756690860 919811082 258457408 342766234 893981565 943831345 173136406 553031422 381272700 461018944 675368387 909073762 91247906 747757681 677219798 944721008 367900953 647446197 183403188 454474225 573539138 873252216 175093250 339572273 812676468 892399337 252950104 847094317 997619376 998920933 625645390 768862362 685852447 731062486 28369138 548272754 859273458 986070099 149759177 693109527 717275722 721825046 344145240 347047856 688629749 926394783 531757387 574630534 196422429 417659273 127311009 662959262 509432505 677622114 803765703 885293483 172136924 787568465 683449350 875464102 509581393 847852198 473058663 976811292 578021956 955781854 862701069 926157596 341374595 508272154 395240800 740444276 898574788 931302144 954974913 971241306 18914623 364332142 2465684 899356228 309010533 826246444 374663430 878941690 808677778 967245944 505734601 635832192 212186089 291850488 121417605 420381773 292196157 918003426 719820867 994785625 782985244 804564499 999415399 999462590 992183782 999247587 345655002 699635581 849871672 939453796 543437747 679557029 157714147 367101625 352299067 943189557 129330005 395564301 254536627 327299055 783756077 802410060 37585935 582359578 907718853 914616352 807363925 816536826 903408991 956566500 515459157 641200030 393080789 792034475 614252367 964958575 970522795 992267141 295214133 378403192 436256914 953358091 960148372 968206502 27477482 350447586 881244732 909121790 129464090 341271073 878281219 927756731 613111340 812072359 253400842 556401610 787077750 787756389 782765783 933559763 503090120 588620224 648328085 952027809 742732559 822872944 866712803 915963989 583567529 817232179 284800571 494080499 612555767 851598556 803759084 858334387 512529539 668453496 101980320 965650141 946881812 991705801 282856512 833553304 109351994 761941190 28578697 785177153 713857097 847951809 24717081 763378175 684991071 871827390 953171467 999864430 692920706 994677303 573941481 892341582 65586935 732973711 755947 713503882 507282748 669169047 257018337 617134489 953071559 966347622 433394955 469564384 625104124 853367093 898732819 903700846 482640120 799413398 744074955 925979296 645358562 909691810 337563866 941668789 550658349 886894619 579506975 920292114 434396193 897395611 189334284 250385921 552259056 983183495 921011620 966271100 505437605 919009489 182996305 185313759 227972619 910588182 275185908 349203327 738053832 975101349 283073061 828919802 671438980 913504227 441512536 506608877 741667802 871171473 137553183 728818915 690304887 777892215 746240046 763309860 819052445 832189907 96900991 816072742 385167978 878275671 674189119 944625929 903435398 930969772 778869879 943918118 994470001 998982229 622124542 671910309 549995150 626004631 424598535 990232702 332319159 628374203 414745420 942337859 959427643 996536001 927791197 945114013 207095019 267508768 384767938 779732344 249875464 536315483 796905331 896485575 901709385 971123996 23194210 413837859 749453840 802278863 216861246 577977425 581153930 589263112 353522019 869351295 201658844 276838540 802556500 889576650 243183721 811249137 504458663 817351671 207378606 459449877 837064331 994661891 544943660 602140731 229201159 445866587 255178804 964450125 116505223 675198909 195663054 794313578 250319291 879796550 25343301 143945910 68219407 498822249 183247508 500700594 591175475 806064973 362470910 917970629 56065534 599936325 377354534 904559255 405634894 894520814 340673020 404084799 458264210 863977641 266133415 373266116 492091799 820528137 882772296 923172220 796242327 832796462 32537482 255791499 609092987 977200730 518951580 765369959 442506758 686974845 380280487 705293236 785928124 919473027 883542623 911525227 956259282 959901845 930061619 973212689 558762931 725968825 856197038 916772081 647530677 752501931 988914275 991354666 459373461 485918613 926562820 948754956 671414591 827013216 253932984 714014242 979443774 984273247 927139456 978385587 273456486 890691478 884629420 949066232 33392402 789638012 703360430 719240535 807675033 934870550 751961551 807582654 694650400 736942127 346043246 606379799 567135190 837429549 670935407 841037017 205204919 805996054 16722191 592745114 920180467 978497652 541734055 625080094 456162662 891950326 315933480 380540671 553153967 627691831 518044596 691489838 973002375 996988511 371579510 482108492 306430362 615630201 449166306 766670913 679289105 760901881 781509928 873763064 898252126 951755548 980991157 994303626 281812802 576361857 257748581 476107270 908715980 941596731 124123986 448660028 743234014 752936344 693793375 872134526 974259812 977194713 563806631 706742368 635923237 741379013 517265739 803494917 691536592 817698028 366999338 712864294 581034335 683981959 963895471 975575083 88829672 864855255 117720203 130891158 763713627 823967447 188645989 480966769 764117326 879907576 352594485 874887947 570185303 972554439 620320925 806717749 474081378 752827848 817334029 850108036 162938993 412215331 185578661 402791990 434296054 483038860 483396253 905752892 208577110 955507897 697003862 827813187 87814759 933557685 198374574 849786872 433916975 610866980 346003431 829319987 114302433 941437844 125815690 564716668 519587708 905120536 104352952 922312919 35370880 81412194 777104808 824573758 350591517 462741240 801184678 805185763 935251671 971186504 317621270 765936064 676413998 948024090 441749334 789214276 413590581 939161624 428032425 626762064 856055550 858592965 645989302 823838679 374739673 429140654 160085756 497251489 857334286 860646616 764092081 796577747 448143732 697896444 389294513 534635865 652244999 923199254 498335345 499169667 60867352 276604834 696048796 757502707 486448821 750776186 960375549 968933365 822859216 969130866 556674798 641705855 262032280 547634830 505237326 762183859 733129639 960649079 962106806 963941428 385191567 677785075 456044020 669204230 996489741 998465629 419267429 887755436 625003520 723582439 525729669 914524739 438367963 968601358 57353842 272272324 866347620 889725000 828001577 890496780 14972746 657377705 189959957 693295977 630073112 783476632 259340700 977752797 573318828 856168011 845720246 907740436 988873222 999600992 422979889 769181344 497755463 652052509 348798402 694610492 466723269 720484767 920895186 980783819 454990187 897709903 420309851 918162623 501168094 731361284 913075500 980094526 420811082 742400256 205751484 769940461 90263061 727178870 115105498 751083462 196141330 471915932 328520143 329720506 949172305 954182767 833752353 965220812 950430501 965559408 80888946 166257487 774445844 935589217 167476079 733934326 549832350 933772751 782669070 872429055 239037276 506631036 508299190 851710557 923553414 968591850 488008456 762374712 902969210 983346254 156537278 515712766 839041653 866463313 917417085 998091925 64638442 826991239 909202951 929584646 501170697 778886656 331438579 716604099 80863351 960494667 327100339 686367364 863572174 881988012 316520000 935412286 882567533 890118108 820781220 949803330 416300355 771607593 30616776 781554489 173427266 941349165 385678102 604999417 114139224 824861934 181176925 578981538 219046628 779922524 835669805 975704092 679316927 744482135 633414026 731918393 126556928 434111408 103325665 358719163 824838737 964626604 656291290 868265488 205666148 839855991 409588801 761558593 542022285 748568704 934891223 936356522 395403810 984176953 669972000 745037853 104328432 480072359 722249795 824605991 851987017 905247372 843198213 917780438 914137938 935984829 197085765 887334358 933475471 957891375 764125580 819379246 338724017 885229455 209516097 597639487 470345691 489342415 885593759 912316620 183918449 476533718 591769480 801864738 141263810 918501711 730852649 747400446 958374544 964993603 795563715 926449666 225650752 241372792 895199080 936968545 334854858 654385253 803289215 999207776 848566633 905912065 274903948 890340792 649778833 782563494 445978309 981061872 889193500 933841780 740345541 950639840 710044417 751326666 684955486 793240869 257813105 543213611 627464752 680165803 292226114 312142044 469762963 871508768 930452777 933258476 904772060 961458967 482242394 750067021 472277097 716178524 852959296 990167742 838086108 988806347 603174759 961853017 750992833 844605788 96673508 750864497 137794963 242994388 593466125 977003896 253446473 969895132 452357819 479772045 305540485 559816528 23629674 977294287 96171646 944167945 180281802 615620578 859574889 888434701 284381543 300518857 591095761 692373686 707839469 765124900 146377929 148023770 479374072 719402349 625120330 953646057 741087242 883845181 287278861 365982211 447476123 620676292 962107204 981776070 55120655 665294808 218310853 915089938 148165797 954758562 511556829 603679174 374348033 399375407 620871330 635979663 488506778 853088941 893133727 987211771 476166213 481300487 343697905 699901999 92219710 220235276 936851058 977879827 901408227 984407706 427800504 818601209 305332450 490025515 437142886 480660984 388102388 970909962 412751619 756398048 141166611 810991567 721263814 935539510 368280605 928910825 459225832 848660222 851679422 979128568 324725334 618913407 628056610 777938341 332098562 621791390 801771166 934277835 465615292 573650707 906210726 920491752 835298804 867625515 966224795 971434109 694295743 857899695 468103274 642986748 402477503 725136968 455002304 731652204 231099780 615470669 679645619 683004809 173037140 545404419 863677367 974963893 870378301 895868896 182096476 331434639 404549746 892662436 858392047 867685230 975477798 980899157 546595860 786309893 723072299 906824846 488180509 868724642 641539411 989050699 182545566 596192029 375453314 850813150 174329427 396518288 424427178 881877124 565862511 718205754 189554595 625022607 40963918 362073852 18584711 52844678 701809377 864208972 932560173 967223232 51632294 923378840 334857566 908826996 16803091 730350154 793571964 972926233 954927358 963060953 375466651 405732891 392191497 774737474 420957968 702121905 773334665 935286987 550212792 950139284 750588389 946719604 15214238 866718267 560424736 743686487 216886398 841284196 170239409 356737173 141101789 204343009 862160873 910530299 420722121 799484212 469107547 574388958 66902877 612721281 882929726 927323199 668043288 694373934 361524697 428080336 606535047 622271271 531328800 946132744 305571707 574107299 859663822 907761132 703415689 791020510 739132988 745732173 537451909 564509675 181241176 517027271 716276015 769784424 756033979 913396648 985069321 990113373 229709687 818574041 615090313 806672784 69086040 538536609 333797642 765894551 889508345 925655945 531752013 991444285 357919805 501054307 934890697 973405569 976857953 997229414 676619179 966007583 279084041 855839997 161507391 684479270 17330005 807190244 171281027 699049080 30889273 877420110 356120876 951201329 126697376 688099548 106041936 817062672 395182221 799293100 352264212 413981010 790299293 821784187 10756534 882373387 76037981 921682349 625212274 664183654 647579322 655633829 505988116 687519132 14316265 429804542 676066726 986921643 249205190 310371282 138971630 814082351 166156009 570434734 392239681 644443255 174432436 915321640 335427914 553870392 363168732 687386815 467326281 616303154 621524609 647661862 854999168 861110297 97654590 865105531 527233058 861053989 36057489 368423863 787116738 855706909 313953298 837304440 304042165 670576543 786335753 808984793 358544641 590900573 341681389 467946003 735976582 868832298 922799603 957208388 628924769 770008045 257841640 282143287 608362427 859615763 175805616 825220439 631476805 905482246 191756765 974716214 895132099 979359544 792430039 835301496 804068347 897878705 870508535 970632150 900103265 945045958 556861276 990556375 365583750 904971609 644084906 664580043 976369918 984042566 454609789 754858764 284282577 974163154 662928052 888746244 307509080 419924009 575935906 622021384 473359728 827629260 434561270 550677240 980829753 984343213 628454422 940056039 2285552 479071036 64480897 597465785 287945324 410866757 669709674 868912879 763339585 790089498 261256607 986234295 670055307 885571772 155757773 760502553 529727933 552621301 131727165 547767726 421663402 895124639 390675404 516244948 817240633 952535751 427423406 588842687 543391468 656294638 347560953 456185190 670192258 772484478 335203780 695088548 600735258 603369789 814940770 933272113 484135062 925453786 886221295 962961044 536487554 853289820 85796877 935484976 255586437 967904439 501978993 579838548 440032118 699781366 688822226 934526811 124869540 223739951 222373420 585440990 759259115 995034946 663712712 709380573 867541550 916042999 697678476 882197758 795977176 892184684 793698361 948973511 139555504 492871781 451003909 608617868 860372786 892466525 921194522 967374140 762605493 871610985 671581031 704372261 477097100 923540031 339202559 749655866 352993557 524631436 520635017 936212999 204001832 682076309 10175715 496221497 283574775 670142228 691841416 729262209 467653996 723982930 317065515 504692460 483244802 515165989 358950691 538174228 279613608 417946932 868650183 876950189 890099194 934493459 726939681 816967434 131729510 794560860 347314957 576765255 937317900 963507997 540304849 982942436 192169087 573270539 329889206 917818684 28648038 374666691 713199533 730129036 194579808 723259114 702345384 961809963 479204301 728693948 553966152 706158010 723320376 931523443 17149423 694401054 784790727 796919711 737725135 852783802 725147491 783253082 441820023 498472194 568092560 905775687 183354407 825881308 254192285 798326262 449078282 797010261 209203959 310833462 975046566 992504037 776126200 955063103 341765556 702908807 508291144 916048916 462899685 748194144 188597922 811056284 640025878 882237608 937936070 988635916 654816412 901628454 897218153 942154063 191588285 793115043 464264792 757418138 411416314 454359892 839833005 976683809 92176567 450738604 2492398 838383079 534294901 895471705 251790865 282169637 272514661 866752987 99138680 356832717 421800845 682089542 131542432 142496363 315348391 551148187 418400419 418954818 594494310 851448715 241610912 349963165 517351066 875996020 434945232 832555737 651134354 978307450 426245342 429973715 704991356 911201053 380725633 846430517 883115434 997018942 246796644 623583877 11177382 510894061 685804829 717267539 646090018 693486670 909512532 996678619 811602879 949549482 567958209 675089479 108219966 631056091 904544372 926014624 892772399 951808257 651153701 949098016 535273348 670961712 630087460 868233078 212824751 305623821 194744835 886426566 28146439 134148345 295432048 944229780 732552589 898993695 235525848 268735103 165761939 422603545 12109838 146278263 10777568 456782181 783641391 909548877 38330079 921659361 214970532 515878045 837799182 915513087 9637711 93553460 648815027 888214125 66074212 615374248 94299885 768244414 197967263 933590389 988390923 997102820 863529415 877215290 181063609 980115042 310950179 575690084 404114511 446845772 451354067 871537868 455247539 922303557 300429729 964116011 103936019 802129251 988261853 996575205 684978254 982267670 696397634 892634129 687448255 831258087 77247293 917028118 663039975 946872864 801803868 995070738 45422418 226292143 658485526 691002208 309015262 754532798 623454416 697384107 852909467 886574641 922116575 991712785 903288401 993160637 749633036 950668836 502039720 862770114 218760014 407182805 214003676 869369223 742976806 944903562 278537466 430028318 787495620 838659290 865340780 914336063 184993213 419723169 732731308 780218635 426755926 937735863 256106902 793245796 720649660 734788364 338358303 959969260 833964703 917648950 708570319 776585834 675882829 929772218 899122446 909587770 698308014 943840289 864387570 937122420 978775022 991242546 907853283 972346984 716021218 858752169 690751861 772536848 454736189 581850316 325731279 862845894 992075747 996394909 697084301 985631243 50342854 520510821 868706219 929789628 378621112 552164799 369267840 623751498 254104426 963284652 183332335 291020947 681198835 731463725 495139172 958341703 326797201 723016674 250172337 993997379 786258058 838366392 60969846 64727712 738662389 973354791 606600388 983486301 834974596 845426291 815273515 989345808 668631308 794770339 938809024 964442105 488927646 708700158 268666669 603069539 807241182 823917105 960830225 993491113 254301464 773470037 613225791 942524732 640555773 762785085 256477975 879015027 108154595 843159737 612194374 712106377 147542800 547104473 78472340 640068231 301654505 400197675 818521124 862295306 720470348 999689330 301523167 902601934 999699254 999981496 580113011 625984745 446011213 966230984 399633161 615480386 376995342 878295816 330944340 946587116 847453813 954421348 608883183 671619414 948237233 969992012 346679481 566367050 742315740 891979503 868434446 919376639 132713046 322984609 896707649 938373303 170893711 924447550 155820430 676906964 311073719 456942037 895746018 975080153 77837529 521946225 828057028 985238056 901637616 904095844 770544883 922389076 443186610 732693383 283975112 613157645 43448924 182063804 607555930 886529269 397661137 447386366 152630197 870447527 680132598 846849025 1511601 100302720 826791793 955008715 520457844 957533300 662779668 861988162 184045480 608114505 713638994 988985664 655189268 854938667 994430974 998794118 739993086 791075691 976275785 996077321 468772366 721028205 682335535 731225489 242550658 874857331 544571521 943429111 498634819 586710262 526893179 822625156 484595671 523285802 5011935 945282601 636435536 706827437 954360163 998153580 697580788 760718163 893954463 953137473 155310033 585987092 445747400 756374319 882620756 904418175 887232626 965393511 370937579 577152517 45972215 278830826 231711550 829307691 796281834 850906210 757604197 785884118 106165783 542526536 536133900 793620373 378449839 818905613 184964484 452959414 611446960 616564230 835131488 957691281 808319106 851555762 709554399 984859606 764235160 859439327 955591082 959829917 916990527 950868570 427179334 959608125 131651906 407444779 435460242 865495233 289660890 628119149 18583489 753148585 387449614 473355906 135682269 869844215 717932667 885181486 890366333 922604668 876955400 989835735 701361760 956603614 940007416 992661849 398439072 868403644 149803413 993276793 44553291 751681151 38702107 492991227 477003435 818663686 408360150 573747947 398453631 953036583 663652143 916581721 460149934 479093138 909968808 953629540 800218401 942463969 280815013 998030937 699053214 786882485 313546249 369004124 987871322 988121937 176577592 401038148 170625344 624741674 507333953 817473864 774004521 820179624 286379606 703843013 588436302 719702100 885268787 932286962 631777081 952484302 773447880 899377644 441533370 735829610 523925269 698462026 655827679 830622872 541978738 932455575 172731031 823890190 797371404 956052925 643892516 644677333 396419926 412715061 591248922 840511479 905178574 947106476 476944190 924451671 663629630 888849997 129825688 721602219 64715149 859294086 334957743 379963011 120576059 937098244 55153746 368889908 555888674 643336920 284437323 519604308 241426710 643994461 380652841 467982077 782991082 969261943 43530241 648321648 446898066 744771973 832713290 916609942 387513547 640121439 515409680 973500499 455574257 635544068 297965182 554830379 601237865 766973004 732723161 969516503 726740417 856860815 10974321 637695440 313751487 468390796 14230162 804616101 945072942 947789340 843503010 922995492 73221502 76238636 583674645 999369316 876110052 984415377 950685812 990361058 209237033 596901272 260407497 443300227 274620586 922031123 195176273 257854565 64925540 469407373 145667365 865096279 31278793 211526658 460416334 885886096 593856554 686262450 310765678 750162556 682793579 890226014 750342244 946443528 987328748 990678514 398311217 461135780 886947090 930604615 569002581 665733624 450866315 801078659 740077620 741658024 544416932 906205440 57021172 525270067 982900096 988584889 844060345 942890686 774370848 876218895 349759809 363945891 198839249 600874283 790292474 828712121 832571612 894174016 725194738 768050379 500207467 875862449 625851738 713811498 186469489 745748682 699005907 977147518 968918360 995679915 445472930 729737278 632104964 977748076 949851527 981645635 676212278 854871037 806326841 881585953 880636047 935362046 11323557 268942318 642948335 750657375 919863198 941560313 625837864 760413835 414652875 527934284 545386588 758667842 703780065 859293989 462898523 656941290 332931278 705629737 204884162 658726775 764941520 838940565 54351289 159568311 908187676 942164154 497483864 791422281 561717122 826429972 520307648 694280145 789040341 914580434 920225297 942527795 381366765 417678398 825492830 972436671 879922544 909630862 166673422 289968532 534919525 880419420 419187322 961751368 657816052 689543390 661216739 898464006 676419103 830755640 665705304 777750619 351593464 467408064 756793874 762973765 24665443 705181498 339992197 939211685 547266219 925105239 192255095 312285436 981021585 981085837 876699687 984277606 430216713 970298163 575947620 914590286 324900765 678002599 746176779 848125336 758928554 809117399 288924590 665136726 992312219 998799647 263933156 908437967 479427171 710657994 326023724 919768497 119899233 205337291 339719104 615159994 444062350 671836704 756963410 987993330 725651356 965238300 723584682 957686709 810400821 877792121 900326225 983898153 393843318 895598496 177655314 250264935 840019000 869728942 96693834 145428915 670558722 725265032 556639498 864378287 159919727 537363285 178652016 795605498 574754731 807679046 658981765 832815293 595210381 732232780 124003388 886615271 919315063 949830948 943324495 967989171 78990184 136931160 847233861 886762288 316441059 465124647 974005177 997613903 228886791 742158261 4706883 98267219 911405882 931681779 4012593 233036711 173356850 486978052 118852045 286311388 486200021 867056340 867691358 971350803 299003172 733076368 245745419 593787240 296158598 314614138 58119383 983432576 153640671 470790395 410755895 444799090 558292070 774633790 393886581 573145350 57076641 114201679 814081602 844072634 457642619 692751680 601798265 698942171 800203006 869255174 645449036 877726735 839343288 901610548 394136894 538787573 927883968 941368084 537184226 816980693 466084550 693577754 791592260 953556042 418195805 979916543 270288172 552398901 972630273 979906609 428845029 995631932 176167242 383967443 961703857 975613841 401993145 505793054 505445567 924255248 563023565 850063865 874508390 906355896 321816937 510675170 196501512 392046512 281601262 445972044 62208902 568319234 841418550 845377891 933015956 939643941 874125656 988323688 564554438 694142801 465551808 475250425 297519397 589623022 6751150 887562643 721068754 909706562 812564557 878213380 735618914 969584369 623657233 773377913 888129828 958542344 454772247 770271139 473866883 910817847 818349458 918783418 187120692 765614287 707223046 820578885 122866933 146702687 845276946 966169195 890077670 916532039 539349820 896109679 869236490 879865355 518597646 529572917 294310098 729124709 857682372 953246493 777202168 939472501 175793841 897848839 870814109 896206989 717192309 850784935 668937890 980679469 513975600 925510023 542022216 778857004 262115203 677179931 888348650 974399232 401988653 533714672 3199896 569679615 541823856 728568147 640082715 813458918 904086205 989848438 11670607 135909963 47896058 762394055 396297631 920158061 199749004 751785520 808338897 964391601 328041746 604783309 176850194 990120683 986616448 998560999 968482121 995308107 522777167 524653403 484870624 683557958 693449326 850012335 710347890 824878360 480503942 819293628 886595566 966037029 999239815 999476517 88261597 287044146 162969607 846744358 382054317 488248353 778179837 833688939 311092228 371419938 866023527 933745538 913780973 972817002 387620425 750298520 208079384 568921256 443143648 469332919 963450616 988450929 516844881 530914027 692138488 771967871 359655741 885354527 598459016 971672573 328532914 595533212 855587246 916791315 446621192 684839423 36162189 825168072 799780840 868373956 482299078 553899350 545236797 904508154 452432647 757442337 354868241 931566731 1508386 349999772 678350468 948104394 361744238 387261795 697982615 748070396 609217519 698376069 882668503 939223092 404502110 802987663 576534445 762752659 166118292 460068498 158307856 914654346 955411492 994302702 266366884 743024856 405135055 678230062 973515177 975484424 729474773 766251299 944511405 997708971 66872797 923945674 969923764 991858780 614779372 746341335 752839298 893726653 594803518 868956150 866075435 968683436 564621632 657937434 917589715 994797812 127070582 539948629 956762518 981307093 573446762 809743827 502421436 552601716 552193025 773836220 178496004 876352160 767724625 953594461 387790535 704594333 68142509 247153447 969983315 978361332 269027605 673245761 209334355 796557203 181582153 969779045 994150616 998288246 647309726 889899302 35380493 356949285 139644220 811112164 811903949 830233624 952848230 998824549 536815928 924692463 961005928 989485376 645947070 915375287 811062051 841222836 358797077 970034768 722694383 979633224 536483523 823575483 840157289 919182320 370013991 703896384 895013774 985824271 762068901 843081937 541069592 807807298 104844720 968710402 301173821 898014070 49343306 559996921 702402995 831509682 518231206 552177034 363983788 541901038 986432565 999450739 904800928 921999701 621052111 637531766 641384284 734882253 450079583 911876545 586938344 993246767 958299956 969023404 336262355 968765668 537727766 995946858 634978515 681366175 482256715 954979973 233775917 337050372 902967666 923057274 48806656 457624516 982024813 982037542 825439357 962137580 30248920 697968990 731976803 860007172 152483867 178415753 366211579 536509367 150478588 327776069 945480237 986191771 258092843 412599894 200120389 355174763 412384442 938160145 26147991 776392253 880555001 934255673 896682753 911027336 295187342 584710815 403132161 925545554 239803396 681306480 341057013 367031596 605017121 801481949 240810000 312832562 598523014 646465932 176585785 888430622 873982219 965069736 833855946 844763347 34370704 670395764 519449474 546829893 205605386 769973177 258020324 325831500 407081403 495191299 43657831 223812557 824991405 882307901 971191514 983834734 898760931 995501920 960078555 963642074 701679651 994296891 443745376 657970614 872082827 957021214 568994295 663265718 262179078 751352381 862221192 996956632 661474546 836234091 251649770 484802475 598945657 883301578 70616874 667833027 871390132 926558022 442845905 567867299 614581402 808537860 251283627 938517479 110460072 393031150 449119387 563363467 278923720 501396019 400275249 841627209 115575111 833907009 281349224 415563621 541575081 988926540 108691314 659800154 532039316 566109995 843828174 934866179 786638244 901820156 209395690 758477544 638721222 873596209 36165186 576704484 568540907 971819229 465556389 738209232 383467816 660994740 482530613 652063490 128690880 708628980 207656676 266275565 261889327 845276605 654606638 921795639 266916914 988687767 936236040 969771316 284810216 842954110 999316292 999524681 930034557 980267678 694095576 827454306 293961870 361413679 107676532 931676440 757171870 964307039 628099546 745043833 699439318 734278666 399053423 413462843 298950474 754451199 85574315 353477322 5628846 638870078 895278804 942061457 869717739 870686328 388783813 721271855 192459669 670463049 756633824 914516980 684469826 795043827 111445026 602619157 204691915 752456298 687025262 874410222 217500476 251163357 555224258 788990287 388762551 837985510 592696106 720968831 793658378 999407319 581895039 956660568 964905447 974358873 787181642 930643518 368481438 673160320 448548197 631115617 316463196 820821537 979915715 985374804 613474567 802205100 115534967 504708255 252677668 513131868 830351818 942497803 401546532 968484185 238028101 731259443 82859963 285319740 444201406 464958566 898085801 993728409 592688158 817567583 215501126 508074680 160230241 677959626 348958853 712361459 648127985 691527146 903016820 922225053 751131862 996985654 729912037 947559420 147803933 585839175 972521475 996378353 836730135 959783900 509783557 662519647 649113778 655200973 661390853 927915762 234873142 704351907 912242813 996735974 715289762 980989798 369462984 846759961 608566520 892284307 606049089 914537465 551487775 993807567 357061506 465293052 868279244 969412201 852481528 901944441 399850582 648891554 469689943 684800594 970290752 987882464 381879158 526697227 763085813 821064442 899890822 901014035 371118645 727044994 934345305 990371391 775965405 829751085 896611533 998772637 562660664 944521660 584529513 887251349 409908266 643400275 656300877 670435186 964693731 974608237 804978610 956327932 130622467 309828962 71803190 353587521 229709903 841284666 413624016 601352194 423569873 791112003 637481253 977958953 555810504 895078429 568376895 918425858 570230456 726023119 346419582 996217920 893679534 981336753 666057577 929601448 825297083 957780277 116081159 910677466 527239400 628841382 205091394 532731375 653387037 728032811 167401789 345193842 538390749 642597155 988760020 996796630 837367844 895499863 72086320 566119263 179638295 273950888 415718916 530722967 917029815 978573077 525299583 617070281 178765365 383819187 904612507 916319123 280562762 289974338 202100983 360150447 97201927 373189311 820291997 950463219 566888510 572402086 223831848 229990810 553433869 643052596 125692625 791170591 911699295 975797157 739334631 952773466 771664252 844874009 94395984 283370946 528373038 533031838 765519110 785359633 33376713 545592036 683130462 932750855 336590503 962665004 182450989 448500527 178932683 581162020 400911759 815382135 716670549 837570140 548251332 756258014 703720528 864767512 584518320 669749197 650687420 844672754 944265294 966693981 26901190 748699818 705957865 714147792 588857691 616311223 964660007 981111305 24479824 123072127 81599050 393966928 133741885 204424972 595497994 872124639 85675442 271609150 737051477 782716080 807974272 917179967 609851573 855590380 507480933 952445121 7207959 358748166 575232367 992027316 710056419 950532685 746308744 983523095 611784965 753273320 621284626 895997030 800382080 896313061 88855208 608518008 523440230 700254640 865312427 949452601 993228107 999145116 843397670 875895091 415376694 802159978 595669425 772345974 527721092 783632831 633781948 830269614 991982393 996440483 50515204 735641769 386536432 995975100 690185781 780996286 793492333 954978728 94813119 940381941 113303240 516719220 724092068 912374814 524044591 657162892 96423263 861305687 372313460 625042841 616936248 899191443 187641511 520098115 796270377 871235345 986676014 989399893 924126416 926640874 99059396 119980495 493722904 653081149 493055353 712621646 798592829 811145286 448854654 682760105 862786262 911605975 994810371 998554722 297208543 371689991 103671876 839433494 991059960 992145488 831241441 978104067 762759476 796033433 616859308 983235428 441269252 453621091 983284837 999775144 495992588 699925825 909671779 935143795 983741482 990960784 319076002 394563917 523881060 564258657 653574366 935073635 52697185 565251656 377694582 787916269 96749625 651383565 499090158 625225455 835825630 957932631 559788875 746153019 62345034 781777913 326020535 802528331 390273599 868305034 44772762 177872963 316601274 678363785 919916077 933804135 301825085 480065174 818727487 829043996 873779343 932682530 979393542 981340788 877446912 897517746 710778506 977225083 367871029 649659991 352604187 684190460 571621269 718018226 66396893 836831188 959779061 998277395 107885545 588252240 262115048 651262749 680725865 734817653 527357023 799839968 846532975 986101612 487839100 884578441 529431729 721223739 978906689 997824964 553734083 997992907 960502574 964239787 276552371 325195944 586841730 860611049 48961401 122239415 845418575 964077207 818349380 918943599 573185628 710015349 144035095 870162039 630212714 650025813 408959340 899882988 766759256 786552013 432809254 660217709 139124591 380680387 886035893 910413709 507686339 952556850 631196218 867270944 176953016 455819314 862473565 917000948 594459291 890889806 65620715 204046746 263278155 892805581 948472125 970558155 445177495 718603741 961487740 973593029 401916506 536151310 517082040 952682747 392599272 405682684 645612911 896532327 122858301 755905922 146218408 728186698 922784888 926558500 778098696 822659613 777594739 964360743 976920973 993759451 645216357 666623617 360882926 434729338 174034645 995248732 612491609 650440851 425381801 917415416 101783464 531255984 531225865 990378887 173011880 421403312 969926333 985908206 949876246 963143409 482950036 916960233 922682786 974940104 327657209 985788270 730533015 918727767 250626510 701850851 887694785 935015111 389838322 844288887 981224987 991740909 209767089 536612260 208453790 445239947 222156415 820747464 762747362 795910020 847347076 865970007 421236363 805196147 577343444 649198169 601171017 727206621 204382038 354202268 894173137 996364748 835566579 993115870 318689991 355681391 211899601 739589983 174267192 356835435 854030746 917105934 573749776 707674023 462183614 758945595 452978490 994898942 988600036 995191583 100073919 928424636 517246033 988500953 108874699 202082343 597801644 727936720 879426006 882330850 924590724 997266746 758660758 832816089 345719303 380486768 862875968 997362108 896832501 966480249 360612729 616608468 928954006 988004456 729924681 852555420 526403167 810588206 345046768 947272194 26204370 474527797 548406110 671663259 715079382 819312467 990291938 992546454 858447150 889270109 782561292 827567186 500785873 642716427 354312321 755879490 390169973 978623878 373069887 882506875 628541290 845362091 906598862 934600543 431039245 608708411 68577448 212274622 665218191 714685545 283456490 998964822 637830360 761962294 543746150 564572499 38574660 68989382 155178620 428904578 356814280 854927773 646412991 841911557 544319296 992886884 908952900 917743087 998997384 999289041 465893068 889907461 757280038 971774837 515662340 539876443 892709510 925559205 121103680 175188400 324151172 923482177 78104413 323498457 27317633 819648980 158749585 610128555 669973763 869222560 820203304 838565643 399663288 961825792 761479832 804845645 799909692 893991139 296351443 805435307 474656469 941955928 973225472 997318223 594390085 867863590 371637628 875621796 670636631 918842934 463649152 666922679 61941926 178531199 493713677 891646454 621826762 659645092 596617089 673107827 503508511 632044635 142812755 617903506 553675526 963889410 54108199 658734184 150905057 179588693 971802309 984630882 473226840 958758810 786374948 964413028 286820942 621311418 20988353 930587126 293660739 626406732 581423011 883425770 752613582 815798553 750288825 782931913 969445372 999607953 905826733 994135954 199831184 666855672 646779497 915820263 156008050 784183950 576356926 920607668 634754054 899074061 152680221 165185697 890171082 900673733 179091918 604611123 461331238 655995142 288261104 597626125 954075242 999904170 148955608 351382626 921571758 965028181 402411898 978475627 245280618 440942912 786839541 984806748 557220850 720006085 850933537 887371531 871972212 879232927 882626339 955644766 544765358 703406370 848756452 879532429 244636960 853983828 960143025 971866963 677165748 826526939 748545108 776713141 32807741 250949466 399111450 474124652 234580891 554433961 232095714 774825623 262528007 461755411 512392145 977435438 922650672 981437099 626997482 675676624 543458203 976076736 736374296 904707299 514461347 613300331 204274286 371765527 649927842 759969718 201916354 240562230 206192185 771598518 33434843 884311656 594927768 905292848 109464527 911585501 42307170 277513799 990886861 996294475 521476800 658774600 510972404 982168889 523124315 928970616 367552201 969656133 553261403 902805571 291138119 348951074 27710575 795611353 590928698 847465584 161117330 184573790 66908773 714544299 647671694 748325802 934785845 958840688 207660963 481480322 249236640 781940254 390821125 982979136 592913764 850185292 100571267 638364120 680663023 755006869 530862182 894862714 406212192 556581147 424002475 641984476 442465248 947632374 50305320 309139252 849479759 893359553 517170959 681127655 49239065 355141968 886034349 925533431 422556388 528727804 95607814 494080556 991861173 991872759 945856916 972277153 380057620 800627270 497175769 791295066 595845089 797218119 254386262 933371688 855516509 922537831 167953790 513986061 509190687 917332051 289826687 570129384 519374946 623594771 878868242 904904616 308502616 803387382 431815784 551862128 60708716 878646854 736790570 987105802 248726765 274901065 804460964 957906767 554244358 972544774 152254751 162836567 131709470 171977067 370521060 831916454 80311993 340893368 226099885 672037238 624050925 914091781 960760653 995893011 891587664 985974658 96761348 317088199 682196407 720153298 521950562 556650054 52646128 181832466 647179951 962725330 122699558 543913490 547722231 585013289 193051517 637968669 374687937 397775326 744711085 937803016 708244403 898977490 797275017 849028928 728435015 827243178 607137394 861008186 39618195 785464996 162604040 994666572 374606267 507262822 21805361 521026922 343915779 682405853 730948665 990514158 884955017 979457690 686361388 833859262 499587954 499997756 128733731 780819945 387983393 586218403 561940619 950812545 189720189 330398320 224124221 652110006 956089725 977695420 870012094 917137889 850874608 954526032 395920653 914683874 80729109 169489960 876241111 990446908 836028885 946895879 978247130 981633858 727585282 792110720 43676382 88028862 450387406 513592906 476360182 723044447 893639418 917512871 75112297 712172906 850143868 899819896 929958554 950370346 545720738 781846275 326077409 932912762 208234163 760130566 794659494 979135581 936069747 945487807 413226325 685536636 59140319 640460847 998427589 998562767 763276099 822958606 379163555 866065375 958836020 989727675 775655230 886981194 559505989 625850127 52484697 458865391 102570693 829866381 640628239 924633193 525998468 560759727 449389114 764882882 683959209 920338039 440206440 825767232 162476522 594400988 271492174 780179378 590664716 804406379 520622524 589015634 26461838 453114833 197030594 233197401 827760113 898670722 734053291 804653529 578455601 956161832 650301516 673496817 393981242 929653179 34420544 371846887 339878948 681221727 962123101 984948679 234763449 327560866 570334362 791533339 910801173 976071245 801019940 804088201 919792823 931425928 97813010 924336152 485183187 772569271 531822711 827099504 21620419 247530687 850852805 913501017 498390422 512214721 97373091 561227461 117570157 738374033 417683075 801270306 363397220 851482531 350959694 413317959 746557943 923666130 282964760 562075812 961999750 994482744 95100462 752693443 259484420 604714694 814815946 824294697 270943684 620053873 825584650 837582209 514778242 972396886 597196618 996189064 534776562 701805836 552694337 689501544 769307491 803853341 807266347 831538598 372940459 849136150 502515300 587117155 909441897 949129712 971859120 983104079 295240989 690947121 296446240 883674945 168131565 755298182 900373684 933929607 600257747 733835491 995286371 996433631 56645057 202890829 413586205 831946958 439786284 827973604 593099405 936905450 783617794 874659777 317658979 531663623 473564840 577879833 582342473 600260554 166853693 776133035 295267031 900694468 268828932 274039251 343352334 477048835 287723737 446570475 556290725 618916420 194400922 238660085 471165605 649573913 500960061 771717181 57425434 120122156 64819745 524176243 315007613 967737094 19575399 831183759 88283776 119868068 386027794 863448336 171309926 442434314 275185119 430018967 408845290 781961140 796959745 901499230 138865600 813236448 388167765 583277292 180626968 336722952 979768561 991325800 527654056 899318818 938184658 990499373 813411441 886373607 734028153 985128552 501457659 903307455 505068380 990653015 372015860 594497391 180321139 566837398 569067406 659078378 959233032 969717759 784776041 988318175 943714354 953085316 792076633 853688058 95330483 604326992 893196557 999112139 356138255 521248778 476742114 899399228 905050304 922293932 95115150 759191213 92214390 929828080 311500285 355839482 424405051 582655129 450077014 688099443 942185498 971486057 967528554 994747024 347593106 991023110 201266135 265572357 248895285 937057630 47512273 134270003 59612511 759669638 426926508 985618645 522190553 628053500 882631024 963177996 598464232 661021711 862726396 894098709 387769070 608932330 425963128 684444611 103042749 821538096 60497277 777172256 86590772 196227546 451541196 641364552 884387074 934197260 128980211 418697696 162670482 658205983 21606878 124339761 81740185 763285030 470957913 614794559 880420618 893624040 158299963 452593736 553464163 564514916 761901394 971754475 406433497 952796955 737807436 809640881 587767869 861098050 82660360 918114333 577172871 931520295 141980169 384566980 771486431 969983082 403058616 730626155 222524446 987333480 379027790 795130182 248939191 722956467 37740571 748574420 913883204 985756590 92985302 334488480 741114511 942686954 704883867 990781213 21745128 561230863 468564344 668237117 805213833 864307772 189168749 402110621 661381685 892140968 698512860 719123524 923379697 965129498 805875785 917645445 296435115 888137726 379190571 792115097 893444079 982850194 900007360 978934260 299760541 606610082 532942055 554880034 688066627 854276517 798791674 835114834 276085773 961610809 679240942 973011572 678302361 972639500 621667786 624551935 477333606 906515712 292263653 418493722 892093375 897747652 676843147 862078991 341380348 962683808 42816756 825315586 641399404 707848805 33650073 197473455 402014750 577682008 182296943 482974613 109029553 728664730 619988953 982016396 254573045 515112764 974613087 989300535 90377386 892196464 552747138 914435233 171498297 899309750 688539350 837493986 970153405 976118464 418862196 943877983 352520857 931167350 702370872 799195613 877816765 962545273 670880435 980293940 884495584 936236119 534913757 811578510 318004437 681146375 828249286 928401118 285944319 791067479 145472586 391809643 566988809 763379269 111532831 516463618 233467975 405513398 810538660 844498935 876414551 890981612 525517424 643199555 981273928 993189087 761740102 995952554 891310729 966530471 637573915 743422726 917158865 981398121 457090696 872160188 867997253 979767888 452161091 737996628 142134122 828088599 609875134 861851840 4266333 905205170 232249745 762527665 556203147 563680442 507646652 655988084 415159161 994830509 219847492 879659549 5989923 530878676 639283787 984314775 345776568 766273345 796198893 825105858 523031177 879269840 610001607 621824160 846698422 976921063 560359131 622270708 328835896 683772810 967032899 977108191 226127087 917883972 987262832 990431970 297179747 669796549 209419427 404865770 614073651 739514144 605710641 832561277 644675978 964080211 734143912 775796272 937585215 992404215 51680502 300266199 318644352 946245849 733242064 844693858 691220013 865279453 109624895 756403341 761738790 842179351 413923271 460345875 986513719 989784703 69777014 466541611 91705363 696608348 820582820 947586519 562640658 834187412 311066190 540896417 656313562 731079279 759784680 974803473 847783420 928647611 787082307 860367658 338895368 886935427 915650533 924181328 644970424 853070220 515497898 843205147 489902986 523871700 110365866 351129756 465920989 933030077 462078178 596478123 530206716 556681531 617621 790538628 698660431 997077023 807024245 954228504 791111448 892838484 431538244 475583284 85530719 100173471 436420895 986190163 899517439 963565024 214235029 762306301 520353827 860220528 475116476 586918974 872640394 957902466 812500143 905477378 156124036 528843873 553330199 836442877 510856358 761417853 616044667 931044884 989012542 993678208 593370757 968553399 420851398 817760142 304776966 567506657 104614570 582441694 197712209 835394615 85581308 196825379 477193460 483638071 710800231 910051160 184224774 819912728 828734311 890211472 573108737 588757317 869255642 927405857 760590293 833272336 210594843 865222134 102247522 269589843 81855444 567160954 8966218 482658648 388809493 784483543 539821915 665314381 391555830 766493897 384542883 983775233 601431068 932519235 355513193 832188879 355934891 520228376 262752869 554654544 325431027 563393413 834423014 946088709 253949255 503074091 707397393 870247278 584115368 860337838 145334544 286986009 410325798 443175780 320752841 416926591 780180103 980104444 174271817 651041915 262097797 672744810 190766781 809527501 611521033 698637912 640608874 767069409 385580757 805395847 426214132 912138046 955279047 985741334 921640299 992782391 492595803 587870271 936362108 959750499 270816315 830584637 230166999 302792083 745990600 904232906 162001757 816861154 427746736 911571836 701735006 854537849 202016344 493802152 658383234 786360183 110393193 193993713 430570650 724107115 671926763 930290150 262638421 382886079 502828254 607313770 71484589 463660778 448065819 873818330 711816214 835446304 560303757 901260037 922199600 970063397 948018459 971205470 418792649 684326596 576252508 725231116 813563437 976854683 749654382 937294911 576185258 690410305 468871385 744023126 223378942 273184484 541095681 872569891 165644977 184182581 962747479 997122576 602771071 966880012 626414803 769534926 531898550 921166251 907332891 959600629 563207417 622231394 429771392 456922173 880000807 966170922 252840611 981100681 222276317 620870348 975808054 979887921 350403802 918487130 239038882 410422201 337203792 979719461 350086035 429255680 260991531 693435202 868548864 941527135 145694996 500664591 121226783 958708915 658311049 709448373 79613861 676027832 778319638 910012304 454220784 908323622 952377525 977547510 887479209 926217805 718281291 824152949 778805929 901321684 901888762 905331591 603790764 816596905 60164777 562901917 677023330 733842082 164465607 877355504 179856055 249933587 47959162 811953123 512505475 597745452 813101010 998394014 871301789 958614466 627755642 780365207 143329575 990415819 513440987 527031439 316092389 882679980 777111024 966618494 349013254 626020571 613459780 621501620 523519107 620891931 633387125 690807594 29322349 296244158 112885744 538993303 226786230 679323203 257637914 778946245 963238132 997742706 655929970 940243568 167300598 211773436 367024488 502637584 737298890 742020501 583681149 786755853 899811511 968717788 868939242 869444940 130395698 304184382 874103176 881472418 434557094 845606606 35266785 390149087 172246180 417839222 882358523 890026764 592582998 837281642 960351929 961653349 6549563 604035456 817260975 889920240 102664106 270302810 714058678 886422723 44473017 626285692 139747506 930411739 683644424 760812717 443614571 575099973 248039693 410124352 859915166 874109664 702931038 939739359 753543529 909036194 89979621 539811051 485943960 503498076 97141172 134166930 175112016 888997695 308117559 618464676 546293718 736614044 218142216 327385309 577874409 872030232 839680290 839705063 423261365 596059748 348823049 825767426 931358308 946755939 312795500 713125938 795767346 871270489 157997386 194034078 556273214 867273658 40033912 390675704 569665236 941244426 774451788 966961304 190581810 483361581 540139727 642738124 905263035 941799000 380391797 573632455 934062834 984522773 538720342 589293927 955810676 978202867 308478041 939601512 808738119 924394072 746730296 755021141 293653691 403017104 921425397 994530376 224635947 656798048 891944701 951509463 789351103 835466892 991196313 999794539 177339818 303238621 363552208 713533044 381490058 811868204 191880834 554193695 218564925 932310327 456327010 498680431 138421913 784468161 61965832 781862014 773789546 851782731 459481984 699498487 297054406 697678772 100263767 608775250 880496468 895863397 827016177 870991484 704729796 899529671 412301081 937249275 686468714 704206770 538944905 694341146 416031932 961038752 922328849 989396429 578700036 764952069 629729435 817900522 178606428 898471212 635175110 934444778 732679316 974713748 720671513 790896619 658813333 766213633 929645135 959003788 102946969 688620602 310210102 460240087 497475065 927527596 881150931 987984755 674381584 795941370 557228157 639866193 947612115 996529042 412535640 532179115 670984910 880927508 945740433 987724224 671480504 704503451 199439775 614378384 562716903 703893239 86849526 749307479 898380604 991017029 407184945 413359078 620975036 883497374 886004007 962619803 404788271 937783708 956575927 979112583 455353293 870844600 814162644 889020441 719858048 859381015 467959234 956753075 984063609 989954408 854692446 879223822 837439351 911899818 353615295 442739670 727474588 998586142 257226702 411348130 76864228 734179834 680777138 798444015 439532047 618302765 330702310 997967238 469897316 503851938 354192427 455230407 554971695 656971485 179489487 323195281 567370987 901836692 181681691 358189239 735182043 993237552 604115909 984661005 55869037 883443101 155081967 683614059 639841040 884242300 840707539 847121747 457596734 636357672 942337138 953594270 226655403 385648102 282260388 405565516 957097963 973048700 232282512 553052939 5800490 533601177 403949255 462207283 19980929 993389430 958694160 982950422 517083919 921788581 693651182 934313104 637520210 822460733 304175395 397860999 855229971 893282606 671730587 685803775 586482777 907250942 542757871 816703868 787732181 936302067 568545367 935991555 296509506 862724129 377740876 537771999 424647034 650106726 772271321 862489409 446478453 603664069 557547126 954685366 992225759 997905650 571523502 582306619 449853490 467695453 586479583 866306332 303862748 396150221 309259401 840922320 168459991 829246293 826939407 985378801 625491210 863716006 433119126 549189942 451312638 582350620 368356596 375953767 123517378 553909400 745491916 995157562 607309321 722998006 331025511 803901827 289754178 849407758 674294189 926525962 409896411 874909725 684657099 790188168 813729819 877478670 885590109 993471465 98928377 197437097 128861653 210389359 230918470 831947421 370203998 659629949 524668598 614308580 140937385 497006223 686968017 846620655 855918036 885641743 187586492 367047249 323347255 794123283 416904624 844525411 990759620 998943420 878737281 997696664 32728350 876917136 794677005 906266961 119712230 609976097 843195562 922362812 896853401 919627905 54462936 252949962 371056326 891873645 386337942 460756186 629392837 688998491 263725713 658500239 823028242 916160337 670002315 769979291 438191617 788795677 967380684 974622413 702573882 996897782 544264702 708305732 636630859 861832913 830810926 906147007 956931288 964859603 954318644 993297071 79200934 221053132 118651721 248240148 411020028 725770495 819942653 953909417 342258298 382037065 773745063 970282420 917632047 928213938 230581327 829264230 85601469 426596892 105921044 924288486 480909500 718940422 904057409 911141196 747860410 998323987 661719753 718658433 706227767 765595325 957030891 976772240 695920651 909480641 720158397 761794778 533700633 794707256 751249452 929364817 139639338 317687602 309501697 982927638 596283480 999642340 627901336 698872668 598785652 928413945 552368462 748087366 452444177 919873597 175625403 188560976 363220759 919281080 364447624 510506519 807907477 853443103 926344124 962965265 763527812 857749811 170390546 970368003 46595170 617960436 40064691 197507885 69438342 789845370 800586511 811673616 429703508 946421120 875631949 980719037 404895947 603369091 556039607 734250869 864863762 871118718 880650998 957645883 505586379 936004270 408451070 799080653 927388444 981842949 333301334 439140587 96117542 858076956 932811018 957318601 194223348 620795866 583912666 685129050 687799878 771795315 301730209 771744775 128219363 715655553 209447128 271248915 524165549 573572430 422163941 742157170 494257059 855430893 415019692 836860466 152893300 209540200 100225495 836499252 143537807 323891484 847713088 959209135 995392181 996354907 661779971 713109932 255628672 461010100 348360549 875580088 567662634 817456278 184086310 768261414 838561098 942188584 682227020 845073538 662843174 664023593 629138725 707062971 128804776 195450692 807780853 837976890 396977235 775678934 762247661 919600834 676313269 725141401 809612489 956081327 148332322 582750221 115761398 793623405 236033209 697895106 525573549 646002824 462085944 795327722 160389887 306548147 571830079 832011165 546650635 823882102 82035089 301795934 304801481 374018441 115300716 321663636 88778082 99626859 289011379 767648574 240743904 357108562 249032 391858812 734589375 849645125 470942136 645595665 645810550 763668921 440913300 836063529 403365419 471661914 219669466 712087235 84538677 573871003 814752221 982072649 186412988 467832927 708584250 867794884 758141886 819839159 825787257 872372769 312961518 620891123 396315113 710996253 257201882 564283838 218307489 494414528 741676396 987918097 703476652 712579746 808299600 878054130 347294928 406241374 197572924 205167616 669945984 758109467 132115438 904026215 217416310 861250891 619086732 809197662 870958528 906899250 654773555 794543830 84967409 314340635 459336490 492047197 781058202 868347315 384070472 981792294 609119061 976176557 976915853 980713979 886013796 935974394 928395356 962148066 820033687 861526456 819478818 889525472 410273398 857178723 220162495 781855807 177907950 334854341 171910183 589036832 231962281 551564659 935003639 996457365 536111638 545931343 202673888 655624978 195143581 355862230 454281523 454576222 13434637 213820958 540929060 790100354 838420842 978673981 662990218 701222845 6799394 981363779 720737157 966723846 450831163 576336523 724282644 995550624 670652184 930230325 224131536 301495671 40485670 640768725 532853554 890946569 366715014 530525903 651046694 960774019 744002771 759676977 536606168 782201607 675272637 925282791 58437142 58646711 737643595 768891681 674881849 802896877 272961877 361210426 393717182 890531407 72018574 368209329 275738685 860594976 127367887 812627153 862302988 943163319 352826460 698206157 23593980 339442293 689345144 876149702 998787596 998791595 484488567 869369656 888053826 913456895 410478207 612565192 587238200 691241566 280822115 864194167 637107385 820984383 699033663 878154699 546418759 958962525 417992599 784771027 670512131 893068967 769543727 875610478 687679485 858568795 2277856 247059951 371279507 498740988 455859483 757837448 197196286 888211365 580185795 732695340 61138119 350575181 801574748 969216480 430931526 528811938 317821847 686022805 117916625 200944349 709991697 993020380 48892152 384018012 716790762 933455848 130141642 558699420 753870147 815080191 263745892 712855184 710067575 711786230 528651481 754337125 35102598 548905618 248073947 639458004 924703926 994349219 370514236 821665256 428043284 942953539 654971066 708530377 938364730 956306381 720786459 763196523 720511842 780411797 405279733 917346411 204142291 648669833 988719287 996036073 980650971 981086806 495702093 617134348 66625225 624196291 805097031 877090835 431908170 750630175 541797638 933779404 29768563 452430765 196257013 855031125 650085893 951579996 847385090 909821688 654246968 863637708 608928150 882358028 364018930 659957830 592002850 905105061 989770666 991954072 567272368 763141008 550407180 668505606 134750065 208837484 539432989 567682321 535166751 554657170 313858407 488318749 718915147 956822491 757647005 849653882 655688256 830476500 270892976 815558301 23580378 473208252 714506003 873477545 714705666 823851550 87133768 842779063 181449901 445003541 670916215 729249018 449902728 614016066 476651953 752817194 432314859 949769886 378496361 645219239 275739937 742126557 273231473 605344478 3020841 617811057 387000525 973396343 57852569 869480809 934056944 990460628 446406435 868580558 748832453 875065198 379246857 715121222 642941119 663256103 929976896 983942685 852903836 862643205 305508541 710616703 579748617 628068498 56473808 347031752 459086479 854442014 696524403 735834308 464069848 873703387 964437940 964900555 616410772 724143590 149400677 278645710 571371223 861054090 549960747 974033068 803435382 869397947 708866409 849892953 465920683 483007883 452826849 770744272 914112367 968800730 322864738 591841926 852637849 868088209 973354361 996942981 817978188 966233778 694574042 834336252 293136442 364665569 233426259 363120981 123528812 965897255 385230158 404808144 349126214 905526475 652073460 755094864 765205720 812759394 528912895 609977314 315511963 644424421 946523800 965306326 679838203 956099665 173419970 756910592 59690982 432274035 561336413 843865874 262675796 470483815 6079334 330044630 891987493 983581105 298034622 382358991 180599505 766121065 308019297 564896112 444853870 639801595 139225090 720460286 175761483 901168612 46103843 962196684 528566659 843881796 774736239 916026170 282339449 780516673 774732814 912677186 382631781 703060210 291873185 764917182 256850198 660516976 200993743 344956339 405296288 455838080 340512981 514165834 173819216 715630441 674995812 943417051 415290187 619685166 774621787 946269565 223572064 603240667 684466180 954570094 542752599 820225508 908035578 920784503 820927026 946223976 42389168 833910528 148310232 647266749 125610503 873429942 287763013 398454997 925112430 981956211 936698460 944640999 793104879 943684000 789798883 896963948 261226217 995361201 360121290 749495860 95234978 928605026 259813559 858607985 749251048 985010674 14850061 527142644 770863389 949552446 490944365 587189920 208549984 863788595 71946696 335353029 610902977 631960053 4146808 904579103 955559834 997467912 693142657 868494891 76341479 885585619 224350105 397947303 181269147 322489414 963245785 969627940 763766934 957765528 626629331 721199601 941162961 970855273 926410605 926920549 634482163 871743302 837701358 855428249 134102931 251393987 44821217 136816023 323385691 436233471 579187606 892070579 329121683 788829534 669430591 716262392 469832435 671534595 622155585 736718761 449033546 973315671 230345163 721626863 463078777 492088857 528879282 843911703 372126542 894113854 158115150 792587789 701332350 823615627 281435973 538112023 835861232 975411064 688964797 723090328 981431846 990370234 341088542 939425063 711143079 729301843 102435914 597390154 21388207 92587345 513868744 678718022 338244551 809937582 540217969 664033404 823963359 843219589 989701219 999623591 547007168 820337938 810207830 992328576 770324 221758250 54347789 99982357 163344740 840361999 687302341 900303548 551204955 983614850 419859631 490242496 283129762 895262194 820483328 977422266 782995158 932202068 138854482 210068745 796944620 914223020 421833082 890283170 54304970 221862082 714415657 977566649 281642768 512932279 331899694 403377620 843186634 932140895 106660645 357525756 63520455 768896988 557043246 730295512 970029279 987603228 39098443 353984168 275352878 715520110 921660949 999819200 971478825 988250619 770425064 918413477 938032584 959827555 531178778 539439418 958282192 981124281 615938186 685537736 764892455 857707354 946225817 976890495 552752865 826041287 644562900 894376172 850960569 924285991 683262208 696432446 679380899 851386611 376973472 790542477 408907090 763042712 490777807 824541708 334242937 478520480 265818794 835793204 482983407 600944664 361385085 926865651 271405165 414733390 757535319 938069281 931575750 954438921 714156544 787833623 911638272 914256699 676551787 855569028 822923495 884291292 354946715 467002013 59202633 850601252 778494095 890831777 275256539 784583182 992653390 994429392 207189114 404558155 860518992 892898553 660567482 753711726 929683378 960677455 510912566 826042899 583456199 781897642 352410785 900960613 509702763 703643414 850201776 875015792 760320901 979067784 151884041 945331986 269797217 361106343 92453267 816478155 708689539 827443763 891528053 993170310 105441359 129209496 619877598 637343388 888603067 936781239 471110002 721132592 727218238 942182643 26591663 187098547 819495968 961308091 149417175 181779533 883315951 939963557 481102419 728636866 275542438 465560962 61807039 863412247 389507037 685217262 637803660 888800000 390555098 779158106 836984178 885399162 751627805 957795043 646113491 868053739 265959413 496759854 484781073 677879625 101032594 756380189 699557458 840125722 136770123 296432198 646150962 998906605 159338088 238869565 513975072 938133977 157192326 431164919 412766985 616606675 386584799 996116964 827106147 901571522 811832195 861371964 671581609 974021634 506113783 524274698 545088490 749952619 978564263 997289949 459264891 802006967 208287691 478033160 157002516 454223139 615732319 757619522 886939374 915536418 717913536 865138147 121949505 950139371 850081651 928303638 719166778 851940512 200013736 661396266 726343146 788389450 913609104 957196361 11855691 354877543 878585119 997618236 803905077 914088905 519582843 754790890 679226154 803626834 159504239 749359011 659281573 831675960 374689631 615637881 990972897 992512660 330896962 416264726 374735847 838945531 932616761 942836413 330607913 518663260 932659614 974147494 457622347 778983020 817936451 906749745 582950442 668188230 170344223 456808417 306641147 877151696 913125820 965081392 78041959 740869985 498227458 514845228 74155693 585688691 849824341 960339192 328141263 692503681 646390838 723248064 175662754 441314836 969332354 981178031 302552096 716554661 249619843 772028197 5399344 325550631 422772933 702002059 107042230 927596271 118899766 338588665 420932050 463467385 681098801 765514863 732247137 784342460 762996279 963299934 405531321 459088347 154300029 199784521 405989826 845799432 980615905 983480539 18504989 624122769 246856466 344972641 325038177 998237168 554078340 786875588 131262230 278950217 750130145 766821241 554558491 875034944 797074261 799182635 968586934 998156447 65136610 808045609 480765963 919681376 820645176 976262769 250039798 426849450 712305151 929096233 622318440 868273148 139634908 782991324 673579202 879104510 518073965 687425555 796282285 829175712 851897836 923678071 723280016 823999765 510166263 842043190 543272785 817015474 372378874 446092732 939026012 950208418 197634713 867564964 299859571 749541625 96371144 489498479 37300308 828546693 585484313 851521344 782212852 990842208 501767151 675882602 27375130 110467210 177289716 459397816 902414332 905206233 751995103 914970746 788709522 889124794 976647608 980182653 206311806 291264264 689724372 863464795 32743548 941000205 751598968 850155175 494852542 761182817 777123286 922653291 948430535 993064624 595100638 908577655 283986581 988168638 79253587 326871691 983076872 989945686 459200084 956171013 723119753 797290899 224686782 749127774 703909355 934885296 14659577 935465774 648803351 711805897 153150537 794318800 365758591 413913628 850552480 856699116 792958041 953357718 747148024 877403983 879811883 978339841 313467010 865183097 255631938 757981113 852618942 862320879 47919855 326932160 567138594 875820021 526314960 800500122 432386363 647474495 87934697 373896522 832283906 925850234 926011092 955648450 439008100 829896733 853602901 937007502 98071847 431545502 387093039 544932106 83881733 256228929 114093815 746834565 430363967 691852672 827552414 933426611 179718831 955100401 832681431 903679076 490136264 914169379 500095350 948090516 644179530 821803595 500938488 935599754 340366887 943175416 618301517 899186922 775813004 884301287 394193729 891633421 898136323 992478088 764156669 941163336 696221559 811451128 337491652 797665680 808119798 965173813 714292063 785522450 742685331 825532860 658106185 890927802 951585097 990495363 235024352 802388668 791324838 940025814 745391529 962031312 448447497 881333567 21629307 75293907 194007275 278932772 745408329 830394941 422548090 540410478 471235679 761217733 275139393 507784225 76721402 427575023 504932981 921498299 629696667 947892170 122080226 710865484 15242296 71785531 566628578 615901833 635303490 959831079 514166721 920288038 235580039 412070852 246878329 781050100 358312323 664914521 637381986 797995687 229416539 427173807 519657731 681629807 38282830 772283456 711466044 995690178 851684942 911558152 426818349 702897089 170052712 550014054 390838920 719790105 947475371 947483114 517638100 956279793 516781652 822484564 813105328 820513767 39817431 79236323 69764614 521545059 953306973 991494582 752754484 860233478 466697621 529384390 232105609 476473616 806764578 893072940 797652174 825264705 230928830 566830012 763435071 923834994 330909479 386514669 25606899 628260254 814174368 903580544 381628499 434043056 254022787 459905344 435360799 846577554 582969028 821835069 141903807 460095322 409065695 530505696 924144243 994051174 996070137 996828792 136838854 568974559 78463045 200967032 770054175 958610663 471571573 653179103 566614016 574053440 88282627 894584174 550913113 658982460 580959894 883523976 469399694 648651999 241735974 283777900 955885738 956850186 630956857 929356913 104007559 463305116 545039942 597861601 190793909 678083104 460179757 576337426 201358318 262357779 490727099 934536019 790326483 978801870 787951435 890072203 616198103 762614613 484288672 532778480 330896583 885932843 307006790 946842432 281615347 614993008 818550933 953305139 319636476 784195860 97725656 220062085 462986606 894123228 424968169 773337979 400425788 951667190 653543639 873505376 425565571 988299524 806880182 900882526 710618524 770484405 822653011 824650204 447648243 520833104 114556690 130121888 194966795 434558476 442966378 544130856 174058105 460729620 373454989 743667002 70073692 565392612 814231641 955440788 328428455 383467438 95816036 453513312 809255685 985275172 809912767 897262510 417860375 759627182 836948956 892220216 752577526 915439785 648503502 768974590 480465474 956567339 71668551 649197163 632215410 953372568 139746698 614838229 277196684 584062221 245957547 696641477 114359336 355221775 980452787 987497980 955903788 979342754 258627117 427393095 782400062 811744833 592576452 971765991 201318171 947625246 236143683 735876853 34312343 565693520 825330983 990280419 908422935 987817326 958757114 961255034 905399873 973472285 581796376 819712752 462165972 548033834 39488543 315260520 110782663 646427276 508950904 634454890 177840882 504244575 583011527 983176932 559064031 770035293 416663343 804391484 360269743 703295196 548761289 825496330 749577449 780310035 156948146 448139323 679280485 813772492 304722588 560561556 12059209 226775382 544487827 922395271 27062670 178437943 171753213 821446303 489392744 726758032 479961456 582673408 64518211 441919450 114910920 347138029 750563770 889420390 36043631 444220511 666516339 806643603 715209848 722194669 554547311 599963749 413673583 697450970 233755951 979028852 329310998 648206422 399884588 571380525 318672383 527951702 147750260 552591785 964776431 974315972 898316117 926262993 731176080 804154538 654935488 898270561 540238234 571088839 351058621 373391695 933229676 974000641 115728935 593356116 427904370 883736262 875006551 877601231 201195497 951175209 885240281 965292899 321920714 534047605 246430747 682095362 103261262 260150913 717097762 762899460 81772986 610995254 180736100 219342259 829990129 914426361 8964330 459632513 448173851 507267811 44253049 150296598 801914605 934820294 922493823 972464037 537929532 943443338 663391999 937980242 277600492 404622020 814428269 866364449 585048566 682372610 447876983 782808507 515702864 647050027 324858307 990023932 259947439 799511321 75904156 884983090 102057555 321687576 847841423 916125443 155579801 872128491 691914346 733657263 790093648 922577167 347020906 557908879 793180605 857707410 958836449 979461118 502737891 671144577 500839416 969206423 473640686 600210604 718501994 821189373 79230941 545338009 887178528 924604822 421420449 949735867 372195148 781710758 197839258 763885849 302086247 826569785 102914204 692660699 477332980 674945719 174690670 834422183 322412865 849069747 140092505 716431349 997348466 997492036 561548538 790260014 623294226 878092265 20902229 544144434 343960758 891378306 360162144 991570762 938701102 965482218 396078077 431734411 473668286 812555764 321953910 449946191 708884550 724099744 699758113 935406845 883355172 904639878 576545696 824092052 262938137 948933901 295413425 464270196 112487127 736012853 392139772 632403987 463517960 741156066 271791705 514005481 711245258 752015427 635316390 861274032 988829322 991980659 439817540 596608650 949447066 986814378 643313291 996600076 232066531 744296271 674523779 990858617 901447035 978670379 681965937 891672152 325961674 835732499 38478236 646424085 938081139 972031364 494895785 911881875 275571809 896781169 258612771 530657159 463042481 607986418 888302724 905898645 157815280 842616516 450773048 725338636 350644364 816371183 624334524 923195987 721415325 966571247 470581985 976917480 292034320 432091269 194594541 928449889 396447085 684669261 398242455 786942603 459072474 908139710 88233041 246180734 175317988 771248398 229294222 995643940 123659480 767832160 33448413 847664660 977800917 998772301 469189246 946528493 131050731 701959433 381794104 614448864 682079048 797208919 384263183 958669279 323084283 853571413 754952186 831374498 631990648 764668149 854165564 867385331 697686345 725828519 956312550 973155828 546463002 670180047 875492408 982934262 527446853 625608927 121975538 548135566 647428718 702211459 891649181 933990479 457961377 755572707 394499942 617187602 598397503 850109444 416303663 428514193 222125144 992250250 37051097 109859657 662080227 902487951 19118190 539181320 61301220 256027408 702052532 869552098 430915807 961622898 966469162 971877542 494255926 677955071 793726311 984601258 367929662 786934880 881901838 961437096 708868652 991037368 363686623 637180661 752407753 778398210 400494626 574889235 246737041 356118361 507432409 951566758 275741733 720648836 225523769 425614908 569365300 606782251 710685395 768984569 98577143 294431831 658590877 748744377 227670222 765499972 941601286 976592386 594416950 907326196 972646870 976269338 888695878 983903437 269984665 994716879 980518937 992421235 668842624 927964446 893382077 996811115 537361674 608568612 511316070 878247672 741648303 916492674 316641773 729607175 209439210 647531228 447649249 519474623 203530145 403767083 554875340 590403838 586590820 633333267 676534983 722521212 355973468 866399022 505550872 664475567 805321887 880540106 806124331 974228485 266242689 900354291 669927107 858532305 714756945 836988640 571402444 612753138 91337887 578526765 195865577 548032985 936931335 959515706 916959830 917437563 869519158 876119962 136129374 555882880 562253966 868391109 679280670 889410722 617211095 749901758 127193905 463010185 143522483 544122516 929701517 977105874 480278969 530404941 743102733 808994575 479588064 939382949 816016690 948138220 147522675 464086071 470834869 522291064 836802720 905466732 301599691 530831161 857026741 873689250 968618282 981276417 188258776 857029201 125678441 449594638 150071251 710086282 887613540 968386059 535862997 943723966 782559569 869082199 960852903 999386889 961156127 971941222 79839694 932038420 726184260 886769520 125975341 972207294 115216722 306800822 529448629 756253150 495358396 720869677 526608715 873311541 863924288 915076787 690594250 966324641 709142143 710162680 495784811 837165807 529050007 915980918 547988964 986050204 595363825 848808090 956753124 972938630 116118791 844044114 788964105 836887077 564459498 915531531 338429899 573080366 600377656 764071892 916179921 919648654 564747494 643600689 969862857 986199067 683091486 684615971 428977985 681031192 476933092 916029593 182850879 565668266 257380178 731866818 374774017 425326135 493335371 934619700 853974720 926791788 340809486 493658866 591513194 701054660 595637945 880376434 50129340 80607887 822217263 943185207 427303817 582923727 844338876 976272506 771357883 846337398 730413328 936680561 136790084 663971059 135760499 345913406 849563864 983328036 56972064 102061405 711955323 812636347 133352835 619147779 544070213 945898110 735790877 871839857 771471431 800999276 652420960 972803652 457893728 764576631 510546396 882290802 17230094 220040423 29085197 908701235 416072896 521615132 107435484 684182687 196105552 397896790 246412555 602567602 247996550 999922391 723496031 900746321 540943357 799607746 917736109 946924433 933155405 949551242 524465488 696204298 860481066 979506466 410730833 946918888 554876020 670321407 45661590 126903610 666417674 732182398 53983033 307636846 218860377 524276022 428553443 929338836 952740756 978407523 499082819 501250659 365534260 423844572 663237386 781257519 625339969 904179803 283065973 812651196 909362239 999611594 692787475 774272266 428899083 532189809 51790857 688100038 9438581 89628381 825824479 996183086 277796272 499233528 479967947 546158723 705791837 796179844 55938452 919273830 778081067 863674364 526931929 622620542 371501852 831593214 793310681 919201726 475642654 537775030 873015268 961973076 592999828 857337860 751259483 798166312 220168796 483108580 751161452 831733199 501751975 545169271 136515153 871956608 488937649 849914315 705453844 901365444 5329513 386617469 464951538 557346189 713046973 783722275 53526787 634327579 749558402 756839517 71099701 665166002 437683432 718157142 74945099 827915320 667913113 790805851 919357837 968400029 889520851 901075819 585327020 988202925 727362552 865223487 936978566 938414132 629256754 653177194 207587605 943393838 188178674 983019790 876333947 929908962 196802801 502245188 288850972 574515736 897054931 955055165 494146649 561428936 104976736 847219442 417321165 836352833 177455259 315093722 266968117 580582295 986512068 987248788 352572897 363935833 95669996 602504152 215455036 710895962 114113751 833727243 572614101 695188097 972937249 994672250 131470508 195054429 66462861 705312936 223627028 504919110 630778832 762398331 264891128 859828131 796790526 842559862 334026273 916208963 311208979 554673905 158015379 347561731 314933748 810076935 939291343 990288249 366550419 842604088 600771757 714815879 460841627 891230076 142381303 282980555 509196580 582337125 300343406 631114291 717130576 993806902 893110854 931205546 413727334 673180528 379384539 993305619 692606100 912204703 752955801 854240780 169072536 307265633 98350794 898799966 608018917 851424742 716243509 875799035 224239953 662956103 769603200 903290750 733795145 760747963 804012690 919402077 867684542 997319576 465653012 718946428 590054674 976936754 999494773 999896226 269475203 471239540 937758341 956524269 925304524 996422685 910540997 918027720 518621210 842961292 461656852 899663730 795360385 831652635 867624980 871496533 423072596 703734524 931131316 998643909 177625370 980621990 675612147 735957651 255370965 300672644 17067210 567821376 631437812 936839173 588867828 929247153 496663042 837319816 500658439 759481032 93229404 113575571 183570631 249646160 926941870 933339167 179766829 447169822 528458175 900386488 196257190 919655022 835365453 879094271 527946365 694053791 116077278 609211366 972126035 982465408 891140800 972756985 76092534 645390663 957486829 965611042 583923392 838429104 795375439 828735425 569868970 870004214 861953892 968322199 417429883 903430338 390090213 941848309 61644549 695347779 879310817 900410653 540830447 621090248 487307544 620536194 482765273 644283022 104422078 201249466 176522712 183232681 820691093 935187287 855991608 897463356 22002975 111696632 528157371 984352498 390368084 929705161 650247731 683806751 785448893 855863380 347706287 874156790 891330372 947919685 656855545 927826016 947954364 952674085 368084207 803806933 64995684 823724036 535389220 705372573 935302032 980777433 501304045 681521482 901297062 923626576 44702812 753482049 397582420 701503686 188997473 926928369 265154124 844813237 632985577 902247876 451298479 643783828 937062675 998160505 627508386 650973097 752542082 904001968 831604870 988698040 841372304 957448270 581812683 637856469 308937239 912923551 360315108 760212609 906055807 978687134 653289669 785168608 529993616 625620874 70993996 755518835 119472640 312896537 763880576 845720523 321071500 511499278 647364023 797803525 75120606 752766641 521752383 703556715 803273198 821092931 189491403 453023299 219842896 617740693 29157632 48608439 989133072 998308199 107325434 195294228 856670657 869202391 362902265 834212952 817332591 890362187 753780388 882097585 592915610 643716508 878619038 993812956 388637851 951940252 290186338 318593367 336980727 554175903 66243593 396482459 548957344 680169191 585674588 814664097 480635265 804345885 669592114 918906406 482937433 952435481 822729374 974122625 174158465 404533519 583544598 651424558 847250799 984974600 58217450 345329312 166686747 762842442 783328066 934441332 630855384 694655297 561363483 774703789 460346943 978423523 388752134 440172758 733435014 916493790 228746258 469873608 779273979 873345001 56098585 144730252 926185740 965469050 505361865 779250840 83492135 136244534 684388085 950601296 96628249 976891799 919072740 988877506 765909134 917689207 933187610 950384050 563598630 963633985 909151878 918337863 208923688 886994172 825366777 880089655 327732467 696246650 125948370 744384612 591602746 639761151 728129908 736972554 399641303 617822421 863496167 938898142 259837512 538570145 638277900 676568721 664660577 947408506 885056716 888076659 280127132 282493888 685788885 702129836 289547233 922216939 924307798 953059453 349527326 763606146 783218427 914496084 433980214 842853248 947073396 955706131 444660664 488435093 907744356 932830199 94100170 385601497 757002449 837872189 478342901 997600270 402312945 951670659 91096560 902040235 656181029 883417989 904736079 924636418 157656004 548632099 520049013 970295537 292154098 882899227 310372908 330780875 467476076 501282067 953960227 960560772 473150259 917724704 647679117 850642481 676942067 724302562 601671718 962674551 958229724 964236568 52671511 374009630 651303556 681411227 386423449 922731790 364446939 692297937 118493281 587703593 72621254 943807294 702165777 900401231 63114891 428918077 52190360 319992901 680179161 860844948 933001947 969226311 440316722 757892984 2722821 839491409 178233449 484350224 640199346 692948391 357708911 946274684 705715571 813898657 417723843 816213595 540671550 711773590 903592889 922254486 257671996 851633179 874817453 919830079 636996569 660571278 780532134 795524697 890529190 973493895 922622287 986368392 2650156 50212523 314280761 777632944 711988485 777971683 976410971 989557100 228228928 351268790 821325298 938898365 320785213 692776903 982812723 999728588 194330457 911915516 427503573 519476327 452447537 740743788 759702768 991749182 669571377 996941051 891426084 941137813 626351691 663100393 571728125 804750989 479714808 654160315 576670187 870688318 795418439 867807463 999951277 999987836 363588938 963648985 184526945 751019250 321137792 343865334 209653673 905806195 680642977 791558589 791502874 949934624 108669814 892272840 696388137 706233879 677423342 993781348 622359503 985412424 999720684 999735125 519415266 929709224 673912285 924587003 899172416 901042495 226093992 449686155 561922746 562362907 792222124 988657134 95414644 541918742 906280733 970620104 661689524 740907978 81693573 129659984 324072874 370866527 333826436 963344605 533652288 996933583 933751967 986176462 901772487 953881775 481196914 916144096 891305697 981038011 277993991 705194416 582096130 765077714 333191826 487435284 302206263 312305965 616369009 982090003 840014853 915585076 934711802 949421593 674323640 771147181 749779578 824828264 520400106 994661045 772568037 886709937 107844219 391875378 294099425 479724748 276793538 379179221 380361102 647805295 951680504 984489538 845288136 956491248 893839773 996474943 118213777 681475102 41366423 629861245 202046592 707019170 442406451 885098492 921388304 945857612 794436444 998580574 827278859 923339488 644173526 660961219 118779232 396045106 10706068 950167719 575301842 923535465 916213513 943521609 392390222 472073742 772546247 968922951 705623879 887044434 729632477 738173518 748533810 786977319 200874460 808249157 343998220 500442112 488270239 913932626 127283608 963156513 680471288 871944456 445525426 797092310 303002502 985804825 315953700 709236850 524421289 954160020 235451789 621713386 455734406 588703609 789942176 916968606 283304983 843386174 192770972 715698618 47064791 432105144 661309913 845101649 402600789 714542301 894743831 978350923 62359270 105007314 491438308 677628170 947391983 986297372 640786665 813628563 314972559 516464781 293745623 664823515 53273685 55286642 200382168 857532718 27197260 58943934 999571538 999892159 617520122 771353970 57799303 581721525 627369734 728990701 916640787 997621661 871098810 988451212 890393800 971418126 57505532 167955551 880710346 971118572 475284909 612984470 312192583 420854316 560495190 920669520 866681222 908455133 382472358 945117257 788928443 957434745 271359884 307468497 778297965 792118996 229744147 995125765 580669769 648101792 433943187 624563463 985420480 995485998 519199212 542625458 487496002 519010428 751398066 931179675 895304490 945651385 495489203 596542910 314977675 816972281 485943213 663830702 711708793 903152369 83453305 391117990 971895487 990383865 6993491 837418458 117016754 629097646 161702016 257604342 593726203 644583013 642304104 781077155 147362206 958198714 768753494 864858285 210235280 295589010 397125694 647644308 323073316 926640573 989715184 999933903 696588722 818939637 350577246 727477189 261070555 482413934 98854000 948886788 189022478 572417083 567443323 756803384 547163506 841234598 653013656 883616445 403409556 964636647 812302867 886991708 837125116 921094899 620235037 787159449 272465880 946178864 237821906 683393875 785129481 992785235 287354081 322356775 543122020 572848292 788755527 878634744 783891394 882631235 233729021 405529082 983829792 991736147 360912431 505938634 627440769 783095470 385170866 642985092 673317793 972285414 783259530 939226951 432247810 634343223 938672715 977392448 322858819 963512861 710101610 793203215 445848250 806340140 134202518 930180832 298739536 558286792 277893710 922684482 127667359 685658396 901106447 933292201 561575675 821954232 501883541 642288467 75447718 734975025 112355773 313143967 770759999 782068642 908620467 972288862 60564583 573378783 913206936 963550024 689660796 752758706 884509642 945973913 799755361 876823604 38999996 355920207 853235734 889448637 840410532 926860568 581114310 981461040 887662955 930204693 56687606 494577350 449559241 818327636 670191764 728230978 562786939 826579303 398958798 893765183 568504092 871907367 530027872 720505183 305106364 962585585 275050840 999974321 976547378 996509342 334031175 691996530 482216799 912836850 684349203 882710306 802764147 861444194 39614424 393437823 209910737 456943216 134161656 412202685 156281723 489754271 209476764 297234326 316508369 677087924 246420983 499282459 308298696 314114570 114194082 636416311 285795702 702368859 689679577 827783221 114795300 207803056 600352739 896773310 624305406 707795044 962542615 998528550 253448960 444734050 879052085 979413249 257508123 524785893 788102363 997493619 122394844 409483365 427710222 740243963 38492352 392146808 370547173 710943282 412177388 588646341 357409718 525776871 683079195 799023829 883858573 886911184 408821361 604581649 999387263 999550995 765019513 857712834 450004369 620351428 212552376 934532891 630314690 816648676 743866617 999198532 654509293 701022841 399594964 782411907 565382787 629972882 956601642 981695566 453830544 476931882 794716828 894494770 780963284 942336455 491326009 881957467 387186912 866223814 579734331 871493702 488185038 790467557 49889200 108860714 121462318 227199607 772556190 819094937 274095123 761913105 710149928 713581581 900277045 927215306 226215217 537811528 706535396 756341148 227771321 504141650 888999933 910828657 871794463 922555869 898184675 925809670 393095804 611653046 716288321 990942656 927503719 933661738 71627231 322301537 193448147 382085043 553319512 660608015 120368484 611331580 27450113 354965991 478444505 939706171 823980562 985330699 891388391 992896194 786071572 897515543 712342689 716728876 814868546 985932397 498632638 652392937 975046699 988278565 150777114 995410498 712527630 998701788 592667230 796284720 328770165 750820625 826895722 862329340 830913963 880523915 40909203 980146350 446216306 731995576 298099575 519758095 279610628 856391672 720701798 888259072 153207729 331434528 715284205 975892914 205005269 477574289 248781002 900842461 734085991 778639975 110155594 997527064 303395566 841376717 848012275 880352655 174410899 203287585 952641039 954271314 225595836 611741595 46773217 708224974 976265781 977304853 296961495 794198588 684023050 755166094 940227338 944148651 211898297 308067733 101602054 795098914 615036475 697323798 280692121 326449458 974731957 991784457 9086013 819849151 252519808 709365236 415125370 766749652 805563410 845581545 296576268 352435441 365924319 871212760 210076469 731147078 342309473 893707711 201926377 686770121 330970517 712208670 339434487 920639130 801615021 931484649 508110331 660528979 112139800 429672269 182194760 633527980 379582647 393143657 283739440 467586621 181321401 441486952 458151018 896101577 570865589 763083382 583005121 764710343 550624345 759979823 715102693 967114558 530079387 833086114 610390217 724337305 778244504 912936405 554996463 880668429 272119136 885090645 165909844 959732644 586162075 662403265 904781804 995837047 823444872 833026468 784783675 955970871 739815649 845596044 585557301 691771585 312469040 531324007 37007214 853352262 868082808 923152358 892853641 993836099 755260217 963537444 794244223 811083350 653428997 985614556 536246659 655938076 726840520 830394195 620473875 742394935 431845219 802434435 606877713 993227828 466863003 698125342 680146176 980173715 832893314 933205546 867612188 973080873 443828058 572190812 113253689 378067450 921466361 978671095 547400912 922831771 413783484 734459673 507353770 902028395 33951442 816664098 305650940 771127079 337511063 828721398 716939865 726849098 558213178 943495867 892255685 970770545 528992048 895573180 291178170 940106271 521645640 965296729 157153101 659030251 632885835 728261330 625845552 670661743 9531001 203326143 246605400 487588410 252340147 959160392 411373116 940511683 644378293 879966010 902157371 983849308 126563291 242941512 767557820 959626194 983470201 995779611 640453639 793491529 855562158 900115222 227029626 685956727 542825402 609864816 334128996 733901062 719066574 719737781 544304064 906506821 607626980 916809378 874525893 957643635 679655839 817994790 774340972 968712072 392828104 581897838 758502240 974528223 295650814 571632108 133574040 193853438 112027059 927362363 409948602 882188350 39477691 851346326 273346755 508529743 992814541 994548517 659357177 762932334 599323107 903183459 687829474 802471474 198968215 715089597 395298249 988043863 517693216 550770934 38436798 656162995 119776622 961908533 941255289 949040113 926893486 988715528 102791174 868746330 423090839 502370109 329310346 756257844 616510681 937980151 271923668 332627070 207397289 603988240 973148692 980540328 478895707 662912761 875549498 951622717 439713638 981066796 823278838 946884929 633242103 822865760 308081312 490610280 848196122 878065082 773025564 802962088 612614485 908497888 184905140 754766006 316380993 446030104 57287440 831185211 870011679 883707475 192928815 700938544 297598885 534264086 138604260 780725388 585511543 794842777 470510512 542478939 717919872 812049284 368983449 995698118 27084563 177282200 312003793 591700349 141777569 251360150 951155424 999438767 691830549 771020141 315725788 424707486 288630720 454242502 824296092 906508176 822724155 928798706 960912375 999365772 837876283 977799615 993890522 998587445 696004326 767546200 273012587 526867300 948084986 990188355 355732200 644116308 528912743 881964369 557102426 866093550 109714648 563203762 185671436 712696129 507484297 867193069 231534810 908735910 919043481 936992759 223772948 270479755 840050207 890382525 21130394 247045228 129825258 822260452 791980283 829236091 180069656 202100282 42676753 92877351 450512368 712735944 169054506 467104786 2437992 727849600 439844992 966434460 141592121 297783814 153260898 339139885 239841484 620349663 469352752 813048810 115964345 403616414 815765405 970205864 116303346 369779048 196094461 289604124 867747819 895645058 801760346 851072198 955955389 982113787 632194675 670720008 350409472 720281899 8278167 967286441 443366442 931622090 732619648 991714331 353694655 536640502 700744249 972046706 201872582 509695901 913634203 953728013 456279639 996079521 975157204 976689645 832980543 972300946 669783193 832479401 341720965 451150657 950924354 977275585 509599153 906431858 650557249 873336524 797090041 805605894 566000942 806539284 960791125 992112355 994108065 998878411 197912675 922500698 128692780 745838811 179166494 571296923 458487177 761982289 634949722 696610484 799699008 889894714 518598729 825380229 932007788 980135950 465422509 574868137 550581192 656458760 713031536 753003279 821077716 945954878 862736990 902575090 775926809 915896894 138877317 660707047 846146938 994527104 770737495 880245306 384375358 653506308 65592337 420569677 742830571 858141796 369051945 537277176 108582114 976626958 870214709 958266487 184663216 881086410 766509513 806290316 723257419 852289524 154456165 329454309 211178185 699284271 472911091 785058417 31531963 958950646 897212653 951214452 45088570 479669264 384266206 708511824 490265199 721006674 489790740 850162705 294560850 720274344 591240912 650526519 247055811 493690088 639242649 760142200 344825719 443538868 691244625 906609839 79829500 885545781 869616894 933618193 572267482 664979364 837390451 926396522 269683245 707827964 65105458 378580858 258896131 327867745 38033658 626079091 463309765 744085112 565830744 836062782 352309378 539632499 556354727 603023607 763163016 791861370 436568432 934606937 580141140 823592300 385055724 451008399 309319662 802096012 147583964 604993915 67359816 665606173 749533910 930253007 779275745 936768959 585848759 908265742 977039716 989964303 937249701 983591735 647439727 816062408 158907513 834121010 486506486 683418625 477963677 482197818 120672716 201106092 568639442 933014939 885092922 917902847 150205837 918506810 853439686 949014177 554849908 775653268 608789051 980498916 304603604 306425477 574663295 618258615 854396360 997227522 543838397 659423234 94389799 846722560 548942473 995814923 656244030 771405354 809801285 972531673 344951438 563561666 432591998 815955059 450110841 647714265 381544626 772998699 985615230 993691722 510694922 625217489 990580092 998920724 32497004 784044702 540682494 736591572 521531909 578214282 711798181 754373339 547190934 560375999 377731767 942167530 42939031 701436961 377655663 605424317 128876512 380665098 950112274 971731338 459285856 541997440 650957534 964045571 796233939 920279775 237429752 352082066 72625438 594108166 701514227 848708111 273912698 738646136 110499073 987574491 11040540 104432869 569985967 694554674 579626528 742917991 730831891 811696199 565377325 991189648 611078465 943422933 985643922 990779056 237202760 951023349 783831816 784281818 878586893 977839357 710367590 725600460 397406633 505380825 317019609 750847571 807517505 967233376 323373618 592882760 898204627 963824140 454522278 909158883 636855841 648431202 957408873 994670068 190214427 704048660 933824067 982186229 980865041 982508297 878132988 907280305 243957494 319200671 388760998 837926910 737622651 958443422 331392453 430898609 974502916 993679688 240333749 326210267 803032093 922250595 324507330 705063080 843131372 875264087 504473724 749268021 676147959 684671206 168758259 675320123 813766702 909914303 666747969 837544398 521959354 582222361 121583954 985535177 105726944 136416526 357393208 552957480 173644763 482333215 943349447 976394020 721328104 745895139 6340505 894969293 199560115 482808767 51556181 212099695 426431812 735344645 526475417 647927975 945520581 977188602 685812184 945085997 596548032 772780069 518037977 701276865 517870001 608950910 354960421 923891065 92913668 193962024 471392377 862738978 364853683 422186767 668712757 747666619 230216465 628725946 998305434 998436548 942704349 953582087 591246885 841242328 692073357 883090431 914865898 992716051 40005954 706165998 64906541 596493847 43516027 342681824 736420819 925548836 145581358 304281549 930713670 960064783 477846789 625101838 477208296 595933490 647081638 893127049 659183762 752741289 446893580 688468676 791097715 899070581 919057355 961511299 218399576 724404302 819376433 956333757 950696855 969889020 990318964 990434594 535057377 897988365 991028027 996651574 990912447 997397335 850779264 862879809 624466192 744535556 492850744 676911587 159918946 612328872 550583458 827198196 208188879 724449506 628840441 650825289 224371829 834901259 851522886 998458234 177238466 604651064 574555854 588694675 33711842 148888787 712695632 838446074 240259363 578645706 951467719 961333423 248773193 700240534 292625276 360484639 288611750 972273212 27247947 754881194 140989420 828674616 53907117 351508442 549954386 936695178 154154256 326238909 350993211 536885738 881147487 960789647 293685211 448479701 609731871 976621739 958403823 995665995 468672305 596241131 761183156 813748033 563088673 676776857 750271174 944346555 485044399 870144537 558038269 765659358 988109714 991446120 695621391 873396355 55780444 431615721 800031175 855604222 376635667 527387010 168966549 687958240 622235572 973008832 156633892 904791892 440210848 633852883 727586964 930232007 67162548 900443109 695764111 907965641 309819733 593945133 528917134 620210044 298940072 996565011 229822507 271150210 605057565 943819465 545511365 835760616 506209347 976576398 622072484 843023540 43812741 774201224 88659847 892455118 282070052 588762894 879403408 989657218 190907472 406051567 549245526 823320560 879519819 924402194 548040463 868705421 763793948 825031510 373340642 960868975 131990240 997473380 178973340 616045185 546595513 732413906 407239459 827960753 664585348 820287634 32928033 855987847 70264756 273053466 892156254 951929377 458942596 887462987 738981629 807498736 931475093 958130416 230727388 919412519 198583915 501946709 944476158 998479563 34558447 647817247 269336846 897799756 927893782 977349548 248064019 868146050 715241306 839567948 727785263 755526620 629655480 853474061 411678243 584542491 298789688 986308309 215562756 936905845 319180186 577641617 726660291 765272677 22458752 104893306 474321515 647238860 564532020 748131652 454852345 666828438 165547226 259072762 984611253 998463829 770203304 778597684 621738243 771982268 20257272 380527239 26739942 322983220 866975758 899956193 507705948 902854534 121428216 450873601 121138467 658427144 289139560 541326348 868811102 915541483 522583381 666664357 360082327 716074900 249522128 782126784 785562434 920181581 327800408 660314065 753726023 856249201 221608426 599447743 200315473 570873981 467247005 723927970 634678937 760001972 967146596 978835696 33725264 238939988 335890605 444450038 548877872 740460976 449994477 732837891 339798318 770693521 58109781 208526448 551671409 941221148 434089960 618367997 773484937 773516438 5635505 349999868 73319814 224998315 276072293 339877843 98503863 892264748 930053536 971611909 451758236 727598479 754188092 936085837 266150184 575029192 908334642 984038145 932578125 963644491 748978988 782657659 603794277 994758611 948675110 988180893 592803652 813253078 584857921 812302339 283819921 647666427 489448953 837531775 383072887 879633533 592793057 991087772 137236337 601615499 466967642 715465994 501864497 823116345 801400758 898364970 653690958 870831367 693029554 890938659 857059742 931841977 69096366 169198910 436443095 651938407 31392673 129581835 345457145 732546074 354646435 989137988 552100286 581129618 673214229 746078396 725977377 973291081 189030767 682368908 659932018 957028937 222799217 974865592 165500173 967810801 255769737 975669103 768009401 773939472 389368359 546160428 710430719 803275290 906072002 946939389 403551928 538316582 756135458 778268195 869399280 975546455 432935745 632080919 651984310 997636995 292100333 631943561 645349283 800873139 909669313 926180271 886380977 900899488 440541119 526407196 401097277 534152031 125083930 626452662 624259258 794566866 881727100 992756412 530295997 697804541 444345230 946408759 293486685 505135773 6249687 227184755 54363504 827040782 535394286 814703074 269392155 306814533 910321838 992074200 88474346 443764657 690221696 790878011 70420130 358309622 501954848 607167132 951786503 960407814 842262741 864431518 856663280 993772695 884139343 989336248 635057675 657603913 301542496 998484252 762102330 908231759 164389574 196142328 641161199 959467009 142411213 860634009 793383293 995561895 917498576 978804118 786308279 875971065 246059211 700856149 663064269 954152231 963414959 978694778 163296479 265645175 17905638 792936892 879048258 924594135 511541395 647759071 219250297 324366513 982238372 994510700 540770694 725646743 691667474 856013433 519597149 532121233 33190378 217503082 937861358 980616223 498773213 841648906 181126688 940649524 362118409 953722508 559345265 964483995 550033642 655573741 251985006 504310722 649066826 837572230 895806753 966135178 373147544 977140217 272105023 451328385 830596880 851744261 74989584 927391872 38780347 448016073 543804461 942648203 227712089 927217935 679791450 792872767 773848332 977720875 843163838 928475642 221421600 939777449 60638662 860020188 739133701 990119138 613634417 974389360 480540273 685069271 897080275 946505326 567062969 621694630 29175832 874035128 672093673 831884712 719835970 935346717 586235795 754766351 958807701 988259687 651358522 878503114 145237138 372891518 204943880 254538799 506213172 631621207 415336161 565435090 292381413 992570919 207759817 868525559 876236505 952858023 327734083 647599802 296878718 375014232 124209862 735508813 790228036 984188062 784841906 902055992 540312639 964299715 507923557 779598349 284792141 946806839 169719518 952937085 568867088 708053130 216602721 796935372 948897048 964981809 818838766 819995692 817675281 964365409 229248008 427218943 758986503 942797142 551942197 622843835 909371849 985366337 634155701 924122562 329656937 691528706 432260017 765765746 694136518 763337126 602076342 752131458 715794224 906300228 219627072 860364630 565678972 941302497 735743445 959311467 127985041 280419688 54456368 417105931 164809477 604715361 778294141 900415642 176030296 271909661 337616007 939462782 793082587 945196182 119453353 575862141 874876230 943917056 1119714 507155163 104993680 289153337 169673295 375373082 790240012 851973256 208120878 388183685 706304168 863999211 448185446 652406325 946854471 992614188 50561060 775625907 784755345 804734851 278376958 662913109 349557 92316306 102929805 286789655 885671853 939373596 425218975 754175820 557877422 663005546 579441485 917373321 672303565 696421266 692919094 748544709 809475278 821473637 437073437 956714737 939005186 959869101 738339491 814826390 879017069 929618228 690024113 829878683 900652908 939781030 515804649 920525696 198276291 253106125 796946936 919556921 237850545 364243176 876481879 907519296 572852220 881516818 858755679 932984000 173062312 634242579 369898869 662521117 326125329 369611444 15563749 650008178 648100936 815953141 462126169 674388621 404002794 892367789 2483197 747248352 626766882 649512640 308688376 617111902 979977223 987438509 353417608 692844377 882486108 934306879 147653769 613492557 996884036 997411053 356382465 361409499 173755201 421253028 801410625 820422353 521707301 956923357 241416821 352098775 699488425 913188199 893693753 972317704 69139056 502692625 986434627 989955394 557744743 734671090 817891605 826267260 405412558 550336572 81461234 655272727 842834266 870841678 338261050 948412113 412661571 829788024 118655022 615322902 458704140 715506991 490697079 556865250 273091332 399625997 75699284 159090765 686802996 850102135 367912938 766954642 992624581 998727193 851688070 947131860 785296866 812451089 198640566 319973696 513768081 945326989 334859773 384052109 616462678 864163780 769748064 774775957 203758419 362205710 16912760 635317832 736393922 828879280 668061376 843739265 728687714 774505877 27840069 930304168 599222399 834335337 915316618 921842216 346742209 620203739 332003813 604984357 616239208 819482403 85338776 998885809 904811186 987940346 132930913 769674157 103937293 699034318 792895858 901684281 472048363 604062493 496124370 743290949 914197662 948892887 317473289 376660795 287810750 436770680 179719483 613061475 353324544 664226705 696728104 958917746 456396019 766074029 281096531 841745359 842095364 889522471 72254657 454857072 454052596 837839717 945596503 993505376 885868287 914190708 399514423 918631764 411218721 682794969 635262175 911682711 739937959 919687723 65084050 706748045 920593108 956257994 355456346 769929948 857490962 918530681 711092083 979697018 835639770 997661625 363601701 774702016 478434356 738583311 651279835 851202135 65758683 461531969 36173812 245762454 666303493 708207965 70611526 171572872 861889268 960328893 533987400 672864073 288134404 622375242 49402063 473696035 494192351 899667040 367988047 797760592 706501678 841488634 495293749 914742408 420683888 958526316 253876906 882192708 130385295 920733315 120699961 165137954 543319573 848141366 714792250 960979969 460234617 998381975 906360846 954587314 334975549 699577608 315543626 734707427 570687852 614250510 730551442 889332707 231113124 661583841 658353433 813778987 245827842 532554942 978045899 992474963 246552842 364818790 565127165 611451914 79585732 134646158 248033097 290730865 665804975 873973547 953487360 985023798 663323355 707770309 519853660 543294985 713142731 969248511 885864861 894992290 53115283 617995761 544231370 630586108 911256113 929288277 765869318 952191828 586035212 885580847 579418777 678450978 284448730 503759294 612479706 727365236 916225484 950438237 676046811 721272103 692399961 918224028 725143369 983458511 2687263 307625208 694942516 775284019 705338353 854232798 877063192 903874189 691921325 928444644 652199730 810073164 182695515 862197115 387577042 606073230 166519269 815845154 607749476 691098529 163144840 271443016 762214497 933901287 269527117 417712599 580371825 932429134 71081610 475967883 425553566 803590878 663328220 759438481 323196818 615117458 374753559 510904103 733907124 835222585 482738272 635357546 868698836 995740887 219262364 838172166 123753007 815915362 962794108 985033302 538961579 864240805 990358993 992905049 83287546 408787287 326230835 556111045 664530895 709205213 303769316 941860277 501014981 740253549 240912685 689750091 68581795 912975654 411785328 810313526 620200467 707588417 688399300 995463816 32702152 524533930 448642226 720843402 846784182 936768946 308814142 958950801 714834467 806444824 738878588 868585359 74573451 327016625 865203332 957019071 859012980 986740498 580892592 583408359 708268502 930382546 257041177 629937954 526111582 711255058 966636540 988678866 457432334 767974693 947435437 952339310 435878629 745855145 639107915 833253093 300359572 766664918 868912107 907989913 492836713 546415296 745612441 746992725 714040435 756119777 70009907 206477768 561681156 643375035 970239239 981128966 557843255 633609119 408861125 792316454 695188702 714740278 641108653 675064599 57652772 844444972 293816575 574023696 61913769 397110776 275841028 833144478 819913495 948249138 129229054 742341849 63225595 475104628 587887767 821147612 495743813 744009215 417296055 871055308 361617143 980883405 61742628 719390575 574450301 626649832 105005783 923408245 741591677 897186332 574075605 912405567 135054237 620421861 2909032 892635465 86390540 407424099 399261402 817381978 724524710 955569758 429690943 608075337 493539483 964933749 994880410 996052597 693651308 742423378 311239116 442169968 407850093 437986322 914175683 946508778 552777536 686425944 261774728 700158955 514547947 519483161 12266430 291952787 929608099 939164241 542239217 818470717 846595157 930883910 305856517 644520519 819307248 914726359 996784239 997876188 644458025 911119939 375432299 928039649 272824372 552807183 897114006 973811114 13528803 42895566 205154217 321576370 568926550 892509637 139553974 315382423 500493725 570777041 869049481 901350277 910054504 978956930 102012344 188063125 703541542 750996065 696340211 810139596 926464901 993159591 785420795 921478507 709035426 762644778 185810965 861441226 498851450 602941807 20336488 878813029 828962282 865291822 412790217 973557895 333012847 508790686 209605993 951786548 451461276 725317520 492537138 529112297 404918338 447223359 466239496 963036655 547405795 934557494 282230217 306778269 978669230 981877547 524294592 993592319 97471371 477078672 189722363 630310856 665013542 889171850 208826451 854943931 429073684 542346445 360158958 802222187 133846974 478500999 988524880 993880157 543233118 772092304 817251164 864490602 983527330 994957569 743601652 790218494 585793832 588128876 178507375 740795743 342146643 640018734 831852533 849900250 305634394 587780677 505127435 693100528 778540063 968313181 452198543 763361672 28456858 214674464 784229609 957750201 918904741 919430592 159425684 580656114 724516825 774435022 793504939 952915557 962247374 970186309 553124911 784187273 330976451 920828492 873749683 902862245 604741125 935206679 10617505 415599805 903532899 967237584 371936712 625807198 981086125 998722334 440946738 793679944 411701665 534673368 595055269 616864892 633959213 876588068 676203492 896130243 890071971 980413251 452641797 537356385 526931976 715343133 293697497 686128392 889332250 985274194 49461027 664642936 890904857 988862111 435069502 824581986 588742777 868036568 137169264 810340523 467040764 586623418 515788956 591851303 889541538 993340546 769391121 922931458 274623916 721751869 237250942 347720999 320193166 594839337 313879108 621597854 768264385 962390435 732370537 843341405 443285942 930623012 604330554 955954373 226355341 684059739 892449895 990102937 139970803 674692944 218811075 437104665 422667903 758356217 506798787 899095829 930618831 942561463 118041607 991807971 268434571 883271732 605360989 960617334 183991321 911045619 648393625 895612754 317490876 678939504 470108334 548508620 634694153 637958045 998642397 999849628 775043568 981252384 95561242 339442731 453007718 654747503 377166151 938188639 578875059 766653726 152793982 185756548 465703126 922582404 373030620 578589590 120357760 308341410 349105112 875635828 524388804 551091400 489065016 904600608 808982015 847284013 151336378 899296998 901078499 913642279 924823720 942534727 313295704 593647975 757664811 979010959 601718852 632796313 418444919 526936153 174252116 821383060 860588975 941492975 629518005 823502389 83801031 122257147 524466475 911108086 976769455 992906994 65470384 781279654 927723685 957972643 683484290 779019391 474157854 572069538 613103189 755924358 421020681 458164012 774866646 965363592 737220659 925786421 993050359 996430476 568354451 992189883 75028379 75490500 725434342 930745940 5146957 626058422 668024320 996877197 416910692 866432755 621845050 943588102 95710470 403134946 628101160 783287357 473852948 767340846 629003409 782392300 302742695 316026632 685899895 711071173 752812483 944986322 526056271 791297658 739978727 754798898 425240068 936651313 707572070 776580618 29029170 150976941 740144074 942970846 893138714 921456712 886265534 890880612 7652444 599848920 481502613 647724029 245874811 259968188 714867287 773927209 188612983 308247522 684772400 889924788 840867040 888472341 623827715 627034227 976942603 994762257 295449916 540157322 635015152 875566321 680040086 768591465 231922374 771158402 27506622 390658001 830672958 946363947 941040274 982306853 504422487 707858482 140840861 714299081 815573797 915280678 165529181 629696588 48818299 663339891 350639949 445454172 752274978 871076774 366100498 447734526 631295008 781696060 327876777 938559469 440044267 563764375 670310031 713517992 260037885 478666533 388430606 922969789 552304191 801898963 777770666 963994939 576485656 920021556 475299513 682164559 773652533 866293897 6459158 345986280 602318913 870344080 750458427 834714091 106177782 665397186 482985499 602374577 362274319 793929120 63189046 259391529 629760609 931221064 617463480 801124846 600139099 775032739 366800367 867835277 237389690 765150964 18374466 727610867 30454468 239564031 332670982 557449509 177492790 216347090 608639460 880052143 96821428 418069161 490496683 567673780 37725161 851463575 395913271 984425446 14823063 393431431 749494435 924437686 613566029 828077669 103898706 723602251 989565249 993820026 753924048 810787939 633853430 923522511 605891899 828337058 778049980 986586496 609261292 644509738 142958926 961475202 880854691 977484957 848509899 870691505 670679702 850324731 776893595 826357917 242565256 377625877 301101677 964355519 197304799 497229391 905990346 991313110 316155784 633653261 745115449 802480918 853044394 901667093 445433867 769437996 605702850 609572950 503644425 924229417 648994662 954103969 460066704 523208583 72281979 473043109 926208167 957314024 120257272 273127110 568734582 624660890 803319082 909526736 83724696 289192557 898728321 987020803 825421064 919784044 725361414 911664861 757088676 949820439 469663019 966261301 844563692 870401510 480390894 783871100 524070086 752267911 771445277 819148074 26677311 69446771 614610636 965487970 187952810 555288644 669493418 798934506 144988227 412934878 837787420 843009189 509311728 792991970 366262320 402853553 862989231 939486458 108405721 652234697 311940148 555099083 600617027 650707768 322098399 657641651 615360943 922812646 67101870 87735144 182663363 245617627 304061646 397332308 667326791 890105574 857211362 881400513 250861655 898923478 574385162 608283373 651657192 652151382 471904898 660315338 407933174 514746433 266524125 826299891 609529795 844513390 117411111 261597269 155445186 778010467 684973441 786446793 797604096 958414848 962815839 997264580 299277127 487751523 671963984 867882951 972288913 982413778 764925597 997748369 572722307 797428125 202136310 905497144 296246082 338460300 547490118 716682295 43071689 753238908 799122095 926226322 23758096 116340794 55422541 64685866 231869606 503449345 540640961 658835535 756058363 830362402 486337500 895643443 111490901 317689950 478767702 991153821 555433803 771327709 914752823 961523442 950190640 978924181 364807748 691209346 653509585 656338435 524486722 530633828 719956541 996258805 751991562 840282122 725736985 998472293 930126183 994008530 943142781 959295696 209997624 414846442 749791805 850410807 92693038 479343193 809951466 858898466 994954948 999975546 630330026 971597133 284494928 775237399 665430255 960980585 206390472 932662826 420727923 891320149 94224426 620977544 568101510 983642693 62570169 208678050 741881069 772127828 197583810 774205013 249697475 973148982 773863272 930400267 895865508 922285864 488024052 679062837 280476911 301235218 544629545 562895102 471550176 477898544 44387371 530885210 813477119 884838796 34898963 918259206 697819677 731480735 874025296 957306260 698909201 912968510 879763256 893519171 752380582 948853322 907880438 979858472 942930726 945727551 33659091 393179353 771132863 846351081 705522363 865551157 916210645 938090168 483669583 942867078 55444615 947668760 420640662 981677750 399505787 858649994 298404440 700387709 345988948 428273017 481129788 977357697 541842092 944646892 105805710 392621246 129173086 750591987 264321199 735478136 437684144 460116179 514907717 577078221 194734072 526397794 182530596 699285049 837285251 867337071 993571529 994717821 675890223 973316259 39665420 803655853 195358914 301168207 548009451 646229089 646817371 718361171 244073904 475888252 317778266 773708610 455432638 666733497 8257055 57702595 904555957 988472603 406850843 780483815 685043429 814398187 947709851 994455607 439340298 843719123 392498468 698134898 565954717 729068586 799699167 856008858 759164879 800911376 908540298 955410877 302395005 874493488 157926118 905848672 612652557 747089796 769160736 840961150 667056046 781636457 649069296 868815088 511512444 663511205 636960837 902334360 810043214 845301729 305480849 332119741 317572121 813168869 151662969 169899203 427985001 662200675 764032329 978471370 252908607 442963461 139892035 845959442 13010708 373119846 162796318 977449050 730098449 913572142 232771381 327596051 43728029 891818152 938952753 992671156 985590163 990748406 80174950 494930958 456257244 687204060 321592981 959930495 122187429 966473253 547610294 756283068 962325570 977034494 391310939 919835990 997926553 999553178 263581428 481009835 134337514 980854884 89355954 334685728 253507808 451800329 16024087 519934506 599289258 917839214 265860333 793999313 975961558 977902721 294717198 452861052 892474198 929697494 456017151 933061141 378413198 413883038 887711790 927384501 60939138 280194291 838233698 847358153 2983404 127990111 630885037 850020732 565651338 896508065 188383154 918475095 560086766 887414473 559869614 981581986 738864171 885301998 758852868 911026725 658059739 700030130 559575030 716414162 155070707 437609225 935597964 949003190 34709147 250162963 538797196 916258587 298092665 298305432 535169288 683122551 953773195 977499197 241041600 493445879 17084699 698768160 62336249 704645125 320701722 681309046 585036171 875048215 684377296 703885965 417604946 935239389 971295372 994952787 618590230 776943763 388281924 843043770 738815854 827665040 242361167 676545777 960068884 989329856 799402492 977393910 40817880 595344576 318447961 339415878 831466643 886036822 613160654 663740660 42987097 719761433 729780288 880961055 631092624 872188453 24899652 375228342 948709728 975209978 890567260 930796110 136732818 995101937 71633992 81882517 149167835 467451898 150284330 856163341 369925538 843322971 153348786 412816808 391120427 838528197 295292075 469710279 671830617 859519257 561542210 891605912 227970716 679456280 752581546 785276784 97120562 397102239 558307417 751808203 324863317 435507040 311910908 731036305 833112765 869618965 460174488 986292131 530160272 749883676 741733737 881007372 199388956 490800613 508373642 832287711 488669080 937616969 706862805 804364664 845327665 962985359 889726852 929255785 988186084 990480655 95231496 904479666 607274212 622960926 371739355 388606477 715453319 940705224 447853107 961151540 697840925 774750036 984808109 984943968 242327150 696180761 766982798 850449532 673036593 861263132 912970676 972152218 334150665 853032404 68273291 855201075 765657033 943322763 846055773 905267251 403005105 551749796 68182363 914619863 374963091 444047033 321368654 335532454 983453895 991298769 89182742 930400074 543274876 815750155 918295343 946770979 988890152 993296767 970132187 979127240 673393615 799583777 30116746 84616961 473889054 607822575 750844043 844133676 357172852 984419039 295663296 485889749 274086769 831704775 346854110 786682659 907209433 931050555 63114734 774007883 829251869 869493490 250638472 343366315 269635170 969761119 24676870 479740054 341753528 521018659 739839775 834096904 595445166 652318589 641650920 795614923 895201018 959028499 757362296 943772654 571100980 682687686 340782783 834139897 696007100 696294424 969858050 980195657 481834438 887296991 7031526 370071033 252560909 885496662 34081752 591061377 599009794 890459403 279796762 829467368 492207330 779541935 864357712 917756970 379564937 788503648 657635291 688817684 204627552 451026737 978085146 982322770 150408141 296850848 430110991 972576327 817134499 826274439 553304074 974911926 518084613 964182843 224169976 825170521 565350914 693599802 813648285 977116779 422830711 951271800 472370947 704494785 194854824 568793559 309310527 607217866 488907651 553662027 861121329 953946797 367892623 560824794 276203596 626590890 31516329 472419837 139814248 526780815 3454830 349627197 5908936 730391190 219965519 471502675 865774442 916972176 492601079 865282963 821803566 879351126 54982149 249780120 30714365 689368922 534973034 792155729 356472371 524098915 41656928 750860473 229303339 609313603 204757009 735136374 615871101 908795052 850249818 902941409 691510167 870685848 819373037 962975847 201972319 634952320 921181371 963599182 324710205 343900633 773547845 806178584 374813880 580969856 605840820 986383158 206532448 270716773 182835135 547858878 932215896 953409864 897001330 925003577 990214291 996460087 922424901 989966310 550815185 843910605 664452047 956393029 446320363 839341825 298264462 844373619 104683910 540594300 559451346 864757553 363500399 927136407 271848575 851773450 314171053 370423813 775435074 883821837 35118644 431132278 240039944 535501805 421665837 441149277 598920132 619425235 284301500 672767095 838562837 850980243 201281381 509972691 317221326 657460428 939976135 968693655 280257437 999868014 787816032 984260821 476007705 666657565 666290183 794964176 484951574 784345105 375023712 981555369 561585295 820539224 432218410 821128201 213397392 569914225 980147380 982300033 78612232 567722519 55016163 569352327 579302274 948693947 118453435 870046238 126730876 605276944 48998519 845842310 205085645 964279047 455893334 465685053 505670955 646349394 175411071 434336514 989988440 991585180 97954952 614714638 781338314 868676441 508680038 694686393 827001098 839230356 88943909 227675611 702494839 795424033 888718274 931702782 274933863 418168169 63020667 934381967 77478022 708537260 470830046 543674734 312997305 358500236 445057674 953562416 309954324 899986318 393843908 608883531 89051401 782492615 368113580 619170253 679305856 789903300 283256647 329591820 865815826 979305126 195496919 730838329 237483504 553595259 802624171 954305337 510164120 771163020 200983691 594312134 224685919 256841198 625741946 910760058 254956578 294400785 170510214 525094730 135652481 482382741 663646022 707748190 289332293 697997535 571630712 817813373 937572567 973890687 116618744 208508554 973995932 991174540 770382019 839712275 321593769 998486892 427843704 969613982 798929272 940008812 341218216 806813287 126275434 756484246 775191032 792699664 244264799 530131680 175350942 963265299 760074881 896854053 636825793 892665756 854916029 870103200 301505129 310367421 887200094 959723641 127299806 409169894 976523946 989749962 40834540 783383899 401657679 533081118 818098819 911870789 141694922 971014454 304399253 815214744 789997034 946895798 115428668 369218445 532723657 714480256 229707109 311912337 324897185 924450250 563293935 935447471 780838131 869313131 345457038 619374487 253243976 320201289 223541507 246381939 108273445 389760641 512487656 906827062 686582967 854483806 32335722 282643859 835114028 976163090 705917863 975628279 574055289 869481062 146669324 798610155 390087437 853775184 103841067 223155553 410661434 735220835 777955123 979474704 253623332 292683074 82506843 982363675 568214934 619505052 882502426 991827267 769554300 975025407 310960605 436982952 63954513 999352704 592619096 836555731 415878199 453493130 965047271 975934551 120321389 594549974 494490253 554136464 745829241 930287912 62375332 901356793 895784404 949482175 923870574 999924672 17843089 439030505 529074539 931984650 871080820 944910477 127377904 369286272 681909432 909415183 384361339 921823827 925321824 983208500 858776035 980665581 213361003 299168880 596222903 766897484 998512403 999316133 480314833 974224496 750722789 842170151 649606147 985856353 408953355 635429036 858872787 991273557 130460935 501540453 753512372 879908954 941710567 991144606 498580329 642928633 904890619 999415621 402396835 752873650 429484247 911900681 753425952 953291519 217510880 587330341 670624444 858299286 960243274 967093986 869084488 994234549 428562107 680043127 429008537 603821814 963512969 975851001 350653319 726147713 347369834 632088323 390126208 927422774 690352678 727386947 231186720 547771709 84090968 867193273 966292844 984009738 708808365 951230308 518268589 969945962 906698018 914194386 416548440 707432722 688118772 989756638 977797707 978550113 414520741 548206258 667768836 765485005 614459151 958953901 19804345 943356129 374294843 664577169 150931187 218645893 991211513 999590218 252948924 642628849 255592657 717398762 189352696 634647343 573075006 912706569 859456244 970758639 91127613 803389409 419084786 448127992 598891596 708526105 845456467 892598111 31581018 636715475 754960728 966399615 261639636 734832520 529056483 672058634 299095343 552964954 200914585 225673189 645928304 721868292 760765012 767512149 782053040 976502728 689378487 734724168 565411139 574040237 305568313 504918857 498109940 532169664 781271301 926078815 413027430 945066483 468124509 873959172 110969120 288630551 575577924 872728911 562965949 744139205 293308703 797206036 564383107 796765155 650533501 932506006 909818314 951638098 90560582 549607731 297338759 465913715 393644340 585331015 127553631 740796416 872603657 963676817 843086262 893525623 123192246 975886880 926650416 928442954 100918372 249538308 523696961 730699711 206818532 486232234 221552470 327200034 475953351 658340740 21535446 914322562 175117534 979504445 700306038 820416064 846377335 997105099 583514118 853005501 126132444 956415702 218901242 606956914 976109158 976534308 973413781 991539428 310780734 329108914 198560910 346137791 462215222 619490319 724543756 985652950 652074383 916082622 102687341 367056060 972889893 986407231 943064382 985597975 949405131 973970780 938954838 999057203 120343788 503367715 373031053 656972650 663923886 764572022 492111614 942994115 821892734 879449615 692134680 869271542 86314607 910592334 523952252 717370201 920397220 929055354 371022080 904775022 106394538 144964085 371109702 562634519 504183310 912846539 164605050 575016476 265799433 355112316 698979926 906892173 925564205 949023065 922696485 978460248 470327360 531166245 488842894 557590115 885175780 990339613 327452842 766893125 662989093 773355642 580866653 724224099 395661610 653927933 689007178 827652859 251770931 467991162 895016574 929848832 634875493 903245078 829157267 965186094 719075049 821784971 286703241 414614460 719998568 834278752 299115506 790802771 524428931 983406305 463238815 605260722 457632820 563911121 133834693 646756401 600773642 888365473 134304669 448860603 331296116 879417095 417832556 774321307 260948342 824471833 331353821 381892743 715363673 826380076 386714356 689426199 185896697 670030341 185374661 699489507 585588157 619719891 913335510 936799091 214003664 641380863 241734295 732244122 607008668 872947226 636116651 907596064 866235300 952879476 979300381 984571776 970874496 993367526 743250243 853182715 487543364 584656449 498677131 973105629 582992726 681176905 991788282 993673518 287846250 628993786 2154056 595349621 506062664 833633186 490536780 809673791 136593313 337688442 203713881 793624214 896638034 982238128 957958755 964472857 181444995 803516158 557924926 593664052 621238855 748286754 893319599 898606914 789619863 916848622 243344231 638711006 32560231 427272992 245534785 711223927 676972768 843661990 522118378 630005526 902110583 955670296 540579924 736584272 8103135 253754456 853559923 958968805 704951310 823476640 248614362 399700558 611252194 721453653 108286731 141372923 206825338 363413125 605633490 746670314 730083128 986651116 181534232 916558580 111166322 790993233 117320217 848042512 803634352 984479867 502538524 648072843 292599205 433711203 227945778 449461199 327524247 360041148 433524121 586055534 640944140 849632446 691916068 885972933 213853468 432081132 821562564 824707921 629720371 727269939 666323196 676073538 683367149 969578871 980704436 987949336 673845329 795373510 898719555 958236949 725979379 811793113 549527550 948663703 7740504 763558183 90364235 581792377 871764193 925929690 865604429 965794039 949317118 965678285 539190263 668054585 748986962 775363960 978455335 997995948 771850260 802269004 893172258 953499237 4415669 938364924 279353466 912126173 767419252 959252534 925696587 941315364 672908227 928985945 290910276 296423622 975127290 985707952 554297366 834724713 653678186 726863740 65003686 353564373 813436571 992165913 344992645 569191909 297000503 523041144 796672001 933670925 19809549 840077530 576177919 763004184 449188236 461762014 506835085 667006078 207146183 904864865 44057795 901124075 423009417 702951025 358679275 412726053 380996605 796751954 434374290 459541007 805608834 844910376 50987439 237483499 881358558 979654904 520472190 605002300 743576043 937164733 484772498 517564995 971427890 989607096 932790552 951923523 225952174 327933651 510131953 685554759 24353063 894519565 197412755 324082805 741185142 870768491 466647345 871945305 689092004 774483778 859776159 889741392 7842589 795279505 328477179 683503381 616089390 923367018 788206344 946276863 682939234 803039605 537342599 879550412 700363849 970286913 952864171 999276743 273795838 639652570 331931105 407343759 552334874 950097724 515568643 916025342 619360694 874720928 228319558 252580459 225440463 703118492 493141753 971991954 919437888 966586238 66668261 522382697 504726186 953097921 868567086 920150509 287836378 974190974 544057841 897506711 650668785 849004240 201598794 865538344 763271573 779433382 721243471 970682775 157885628 534093605 980729191 983901726 574113532 809681427 644419049 695306909 297323939 814205720 741784204 848335669 599035696 845793079 667951309 714216991 786515826 914670237 722161976 857562104 674037392 808550497 777181495 895457751 49758922 480294744 911860813 996339104 816995895 976798997 447239542 780245498 370691263 592840964 838383514 912843805 286474068 965793353 422494430 997707521 326161666 681392971 501575406 907282871 953646343 963397634 80992260 590933917 831268719 879431629 540689414 843468712 560846965 588721290 945764255 956665237 129567237 392597651 379855081 897388006 728197293 813858433 472603901 558777294 842136509 909375078 366889005 936390920 959759708 989699382 320327658 880581447 491798230 934184251 108965235 475475489 535940627 942780095 784416076 875069826 811789739 922722027 734631268 936241094 414853359 862068224 126211788 778935064 158660022 161889172 666972313 811225831 51298948 800620971 609649496 818719158 650357263 928793266 424379717 638631355 366014445 506081084 86234084 957167097 463449502 933425715 434180264 882403614 711194497 831664388 285230162 706637372 937954943 981219138 444158504 534215393 971528831 994985799 308186046 311964625 621860052 790625771 720991688 868156553 238890414 809207633 153473242 969422836 210955030 385521674 430370373 878153671 25303044 549234536 112512083 493325336 380927299 738691585 948177089 988642359 365156381 476470704 508038510 672051385 136002642 888968435 79978373 886624258 661287042 933575194 101275156 368006191 857570057 936549409 474226138 686626626 869959157 892253268 369129267 660691031 248153765 546192752 750343432 987836273 763868048 818776913 550402065 772576932 641689054 663346738 227423851 229104552 957290501 962892612 514569337 862055765 298807044 933747597 961029855 968835082 726610812 901039132 857094796 888511964 282603103 412920550 566885293 991275818 510843183 720421001 636540505 799239385 283041908 567218293 672391488 960936445 838208797 915447330 618465256 619350571 529397176 914388628 363314371 720270277 582426705 714371194 273984284 691128161 6201683 944080754 865377213 949182140 477887681 993777099 488042556 875844618 91789883 407503722 212125692 504680864 413218154 919581682 825992897 947219933 697211706 805795409 65716040 495568748 194822876 888426314 886453126 939809346 298124660 876855329 668275511 735297792 747944520 923347099 834068085 877815595 600368282 990549547 300876252 907850224 184581133 547962283 514137182 838868443 171699758 332177378 901673915 973910805 861357051 943344445 505340428 594381959 93160438 105419841 762624294 977493965 181468160 565296725 342789528 906838390 227362873 410682323 282108784 494467718 897364073 924599307 405288007 731123538 582774956 831466614 498868031 549500093 279585813 455845148 726471831 765977548 766616913 919483923 567317111 725511182 403141165 619152960 884901504 939536627 516346314 932560122 835981694 923010771 902353531 957094421 686793392 989160587 866096433 953199673 32494823 550780552 489578779 984930946 680270538 896111223 671327712 699516221 823580789 926203082 829612557 941800577 123611479 942778063 609079912 870457843 702830298 742916008 774312899 775095852 226684273 336769903 765460725 893600514 915777375 990721624 148112629 740254903 215726666 797196836 294882040 471787140 970457314 974607137 81669791 631805306 606706230 675415231 284518216 911760708 676450095 819104542 493992906 883584413 463518632 624336435 912056113 974332894 429625761 888956295 307213157 778422962 535683315 981362496 509409000 763593648 54400133 744893004 561576178 796087484 31224095 287293262 23973071 204232220 136746540 167444341 293092125 637609475 269972548 452771755 217738845 235170921 728781606 973111032 378145947 547950753 35887112 536911208 105174943 498387504 667336690 711121262 120072972 517737416 933673880 962432110 383662568 862666728 393141275 588992023 69165228 478271227 703087297 917335112 241339284 567521436 898849344 968191901 54414184 495904138 77870565 680948484 311441126 684117892 519877895 625775915 914167704 966124814 559230489 855924847 919510524 964122143 716436412 971380357 188599562 898582483 185218041 388980450 908908559 965694241 635434051 971623299 447637752 610607776 802160963 977419525 651027219 896754333 684569278 929156856 771135819 967410305 269714328 889852603 883539308 952134667 105480094 348663841 808097405 930040593 381156090 766663519 142573333 410941176 139670278 884943908 320231655 655859169 149044077 197680025 504580592 963533687 404308293 767724661 1258312 581601377 839800536 871721005 352528280 653497700 481496061 531884459 888790597 966351290 148246141 935077204 144021837 786599174 703805848 842524205 872322230 958739460 115329662 639492299 821396670 858434069 623833096 812702527 514967191 914086079 73202406 255886831 713694821 804224780 184053852 954285215 553996259 712260851 636553154 706866289 560025125 777883932 312189833 481044260 147518704 836916892 73153541 377639785 312685703 344789119 636505891 801402162 954335059 970794258 374054471 761799456 348733567 963037004 434110541 973823125 688165770 889928750 556172321 947474715 807198596 967274334 292138009 409538810 273858899 984941787 691282176 788473905 100448858 256550580 104129444 938576554 578815672 807394556 757928177 806823157 754682428 953368473 585153126 605646810 428127680 505792142 631894861 905774200 762153985 894164513 482488445 706941179 774074464 916827927 332463900 508629720 572898816 931719677 813305206 818631682 477063190 627325827 482723709 687113492 77385516 729964626 808548840 932098419 775100443 818666754 777426118 892918546 962047713 975700775 793574092 942740266 675511571 691043484 896861357 909582970 911287962 970608053 884733494 970766196 48421051 578193165 261866574 348221719 782499951 957991980 918072655 998647262 20693003 744118551 520435281 770957960 818332109 835131539 703954172 984540431 573746455 622032532 959206039 973527970 340643768 779323005 306256950 707043829 581195229 606923246 324920500 763764562 329637059 409584320 196227962 480343672 927230933 965405146 958892388 980086306 82465287 982940151 517626422 544678573 210477928 818695653 792347691 956163713 96921024 655703262 186481550 639250486 733983822 985084268 759401836 993031957 405154550 836715225 296798035 695659689 896770923 957716822 18433109 613044077 910280916 947786954 912112962 989699863 674173044 691839875 161808197 589597156 444657302 870063218 910054860 992108115 218920721 255973745 83824148 817552935 720126547 977312156 730739562 942611214 660711460 861976270 731374751 918941429 157643449 492725655 196659933 547120225 331473655 482610362 66529213 636185178 448563981 964414273 645830884 665745804 438940859 481599930 425919676 444497043 376366730 684130404 508237219 808691780 25995256 143511682 859262210 937282846 433978437 801202903 119061191 206889574 605630025 839817168 199303060 312172518 314437397 462072850 43101639 833791376 877207326 880587620 237268396 739328852 263816362 266099970 29412051 977782689 212617453 933081248 301158931 729886802 637514925 878668045 397618799 711605090 52982011 698804196 467384653 752346986 670571087 997483000 776787182 789149346 569168270 666968059 778973511 781554493 852105639 881676199 143088390 899150132 499153566 784304942 726516743 840258159 52441390 806316199 210003787 778301393 573829602 685847992 280438588 893919257 434096623 830822282 497429100 912077554 689824678 867208238 12900178 337267889 761810191 956949637 411655920 480893988 35951108 85314701 912917136 952137740 688128543 835152227 619830237 930108985 444696609 796502272 56131579 632724010 524214657 657110951 262780879 284003547 682197332 790265638 520292817 730022339 121405592 731486867 755971649 911001256 419784683 746181497 528085939 846710118 857360086 910314589 694797237 902498840 517847150 709853122 599482357 860330562 506910889 703553240 103829936 359515022 324481923 946248409 120645847 480817455 767072823 973959236 602309084 955362737 861757731 955260255 904045192 969840705 19094793 684539204 130894306 325980387 828833153 832969523 432566451 814827356 946135836 979347744 479276377 958622144 187332630 729112233 892729146 897491126 258494524 702018386 230127621 561874056 740165131 762743269 431251067 456198819 174092548 246471287 36203485 813917450 402377733 757838677 555083479 948869759 624894558 778711008 675883969 843704923 293452465 562316440 183177324 874281748 788535385 815700164 661520352 830652093 885339637 913900689 643287274 775774416 504550042 936395622 780668196 804438838 680347574 841257736 515985169 869651686 865602740 988785386 920327527 992984444 642985349 855080024 467479079 530365152 925808274 946449563 928334326 989725380 603325709 993219989 224759456 248928253 778990475 870960440 856771247 863562822 978661769 995877104 672257738 769349100 456021982 991376669 180112810 239386439 40514111 44485415 350682101 828024617 191353470 191592087 948399662 979915267 111453068 426724902 476621192 849498619 837807982 840935936 522404085 867778378 594419222 691037706 885596988 899518156 917022330 967214303 88484548 134244260 186307864 927422890 78875529 971521875 723690144 894491794 673051286 678802358 298549906 505639369 473448180 837722214 818794206 905456394 734821539 927373704 66127217 113496636 822071617 885663509 745988231 935348672 473580535 746848569 957789460 991482905 453217427 780225215 5082875 977239072 949839285 997861160 767661382 932173179 713665032 963063796 234660529 532247932 603491625 788475321 528543149 895708529 933907456 938505722 25400698 727226975 224415217 439824181 901801137 985417636 48254804 345476989 603327857 730120942 147856361 353646007 219078765 303247409 726796774 937845605 793866541 832170635 738077542 788510060 391685489 527641525 847622244 885882313 671755124 953375713 963979743 988353523 73672771 636472254 744623091 934257746 719760269 873825218 367365423 792487511 155269518 327956888 179376801 346296126 931435510 992341872 348509643 391614998 185729303 820393150 136785377 461034367 295738788 531862448 812664798 985414716 59740675 138233116 884660258 975524508 484485800 863764581 811200009 950908969 679143443 773620536 256916393 376194370 7052802 657851151 370303001 659497717 244915070 730133940 776355863 792640630 530863098 646492122 320541299 862712889 287910906 370710210 683777865 739413550 549402366 563148415 693560836 886130419 315753735 517756352 609822947 811359139 365510387 665416454 372896783 840688188 231740051 528837709 942067306 959301286 520834181 644161018 598196681 907319086 203396947 729815259 225850576 997027842 690338638 848238226 758464168 788567734 86905183 610730544 425022926 673830799 647251478 840776190 785969944 835653778 808304601 990839892 715427552 797418607 11566304 862460256 896649561 957725556 383517333 471178199 86076904 970179511 76651163 609909674 853024267 942742027 135344802 287779610 927156065 977409303 571017509 908229068 424337902 547635680 175863163 400673721 833912909 889134147 465064937 599984515 217267969 261077601 303746146 370648483 856493620 909393313 105945198 658158641 769725869 784329924 832365223 964083876 445408323 941063865 444423410 923828312 975146797 995181185 817874591 891316016 624645298 937766189 672645568 738713450 529432338 600811696 268406109 791016057 746472625 814679656 372671852 859467915 950127741 956277174 833714520 874239499 969085638 969257376 294196930 331163994 715106804 928368531 342425333 944294094 535293527 911891253 198034975 673014894 545758954 693583917 805517325 917923827 954954871 970320558 849054120 850613688 414570988 480704096 304650459 529402172 18128934 733338166 690703545 862570370 742519160 955990649 555066378 643453709 26913539 424754075 30682410 727767241 43361011 864031471 196214616 956393255 635814485 943108747 987522841 992879825 985788956 992335641 784664598 895099876 527159072 829463475 187873197 891200706 322149289 773812979 440796519 966597435 458188758 685260063 769212616 873938685 374575484 858382448 911945286 940955216 24996280 661481066 750424154 965140252 279613605 847437215 947394392 993467752 333343770 464328213 997989879 999330278 19337114 632787826 942608404 951745791 170981699 903222050 691510046 967714810 899249099 988877159 734308961 861718621 853076341 997246141 514599059 992425224 483539196 824913497 919480771 974406064 168270639 264318646 679381958 840117818 339197836 465494836 271988611 884815777 41661409 771548044 762612357 897628650 304209260 885814779 429468594 810365970 889753075 902632842 537138635 864057422 242585301 825006206 163261505 709565566 930961574 947270299 582980697 718330222 362179248 628409000 249619254 760838739 328418226 861828248 662112386 945892721 126807291 581383972 909467444 954466748 577210472 750689833 540293062 753009884 148088098 844645897 470635327 868986044 169199028 391986501 969452546 978718269 801535356 981027640 306688802 660492828 629441960 796866638 880798248 969128140 400675041 772041088 139065828 222203270 709999664 944575640 80172457 660090425 816101185 941848117 583464648 775625265 939740700 990889856 604918692 756622567 701336587 976829130 307546447 909649263 252166883 455365207 973917426 985515648 964535264 991103110 318376604 712889505 315949281 438875191 789652487 988507793 725403194 743294134 866264867 878747627 930943340 970856432 610862887 896671217 22037422 797114486 504824186 506246781 777036096 978709401 885721473 921593596 787981210 833272453 772425582 836208656 749767532 977160666 281934112 362481825 302775261 968982729 920063281 983387443 479421169 555819359 512745570 713785207 945399987 952860852 41695083 368169755 22045397 620049148 825576769 951820169 160696930 329752077 501407866 731732909 638934783 692337607 75301394 578685736 81221407 788215352 660674413 952036596 391668534 746926544 523764136 709934493 788031924 869006540 312984389 881774611 642019096 938019342 479109996 829771836 75627419 349652654 280768311 952540486 250778235 903880537 331711520 464907216 147444461 336665831 261603535 805260617 257359179 619130061 282831399 814883133 401578766 850326780 691019116 741731585 344274600 761741320 653916297 915343044 936277300 950688548 439023696 876636834 524680656 703346448 564685509 606767029 511000495 620894693 457788529 566000094 791003859 994197304 552301809 666815982 137028170 237468199 122879100 194629374 539883140 972163911 592310674 844764854 544177217 960325578 694181170 834034330 22860427 168291010 177064305 900824044 545013439 702739283 753199635 874465905 506966574 839849403 240283 10735924 653208576 974196022 534052609 809601312 178086363 920651382 24066572 71963619 4516732 480175082 342037050 803698938 751259091 853954257 386337645 736595198 903170805 930976266 234280620 518548206 493870710 960385576 853147137 988945004 407453643 754140704 127555780 466589756 937431337 973297755 104210518 687302234 526750840 698609256 76474944 711045766 277663027 946802821 13700790 73176478 535946053 745028964 326903775 593935547 999079791 999358262 912287796 967569847 156640921 467965548 951231257 956438197 545416845 756148874 433154919 745241261 272002663 387402269 804026415 821977294 815471250 999319190 991523387 993719669 747934530 928827616 739105932 841463945 239818433 665860678 937019054 937938082 343632414 905293042 514431778 903180666 575144235 688638118 448850261 492537902 14604557 509866158 155259559 367534894 339228833 686231821 569506196 596297177 602583704 710399496 660172509 921708124 228289880 578692612 16889050 876731363 197016054 298186979 987082224 999932735 688845466 709128776 665703020 940010343 933129192 975988902 970300726 971199302 441135348 552935913 17468916 418473458 664090538 981724157 936572148 965455233 323826394 757584435 762280336 811792379 19467443 192108901 431634422 683879312 783630594 836557244 863487242 864778847 600809045 699309940 463874976 930878831 980025702 992972350 118472819 263976967 815782605 853265179 750366259 862659420 502365800 521936436 906514667 981842056 163029282 984546612 336209006 882965717 739946983 969998865 110775990 847534576 515191536 550455070 45006770 889004449 349479834 584579115 572308131 702474852 155991862 235809971 494085083 565536958 396715907 887752044 158896191 974854022 103697671 242686978 845168223 887422227 341605539 436665222 862020792 901579301 505128170 505371167 153261444 374510452 716052124 794924902 891585618 921369651 18688656 531302404 298758402 538338135 436850015 976848502 791384913 957022523 261993334 352005101 423727340 554225551 618006994 889104196 343526016 445959475 195564640 389357277 491032465 515020142 365130715 404483375 989206537 998643320 765003416 931647921 387395153 616468136 296030890 553605531 505539851 671558888 688259876 860030143 330823642 942088606 109124880 968338858 951734068 960082605 699292407 956146841 586852877 704814705 12219793 512789844 506103706 557838846 215112951 835049327 817774165 908589386 570017299 873175599 881546324 998430278 985622933 995456672 641663584 779103006 808779909 935282303 404479798 577531773 340486434 466296620 882943262 980969597 912134836 936221680 519865543 696276277 636440579 660937853 803742290 825053560 634970712 775867027 86321945 197607033 600646755 632098406 880291282 882189427 955557322 961434363 490238216 601053860 771065528 906255492 46217489 268331403 673858266 840367864 469917013 846878369 192996487 543658255 462846574 733945078 193222855 401616614 421378229 959062091 741166969 853516672 641726559 971295113 20770920 464675123 64120859 559634444 212513262 401669621 17118962 424907747 786874167 887512696 722685518 872572878 250079195 462027112 948552927 978732729 815048412 968490650 345676096 523451102 722639280 990993333 827540914 952053186 92873941 207755988 71870744 584400337 999988887 999992610 955269695 996391627 658329214 840840850 58006916 451073838 363625571 970159677 305238339 934543161 800860363 960464055 378264380 522750972 437154483 749022352 336044590 506069293 837387271 928925304 560946907 784767669 198767201 257980711 225316201 497578008 868732081 994777032 730067953 818305680 788604147 885365972 841910604 996715133 352074810 439883700 796194065 856683658 696004312 894397335 728126487 994703276 616063260 761726656 54673862 933336411 960704774 985341941 863938590 938953120 84027381 230713394 697118484 901141892 624217894 999873852 877484249 941917720 645880860 752419626 961722333 987036328 198696200 489968779 730365454 969905651 319716059 698438909 413809480 785843493 610248894 983882643 962700828 997666595 900914744 952397968 60491934 426709332 415312156 829853302 779112538 977044920 689343494 907804513 869030312 900665574 363844328 675815572 218146101 297258905 746434682 824404284 737283155 794778239 526768049 940608562 767879068 979362204 705043657 907743167 534798683 815357995 984144162 995298140 560506 278998631 202790979 998761750 742025234 809060397 677424833 817958598 821070914 949091104 285251509 531683563 37042365 637053714 481770296 794123402 251435121 507848653 62985749 557360105 564189045 595952755 395687164 818734946 904213734 962775714 581405757 878629562 168309527 965452118 762807270 849442844 674314942 755202666 763476822 837698091 410233265 416300675 8270399 981291558 692547613 706316676 822154914 912138798 172062893 257825718 938538112 973546966 841743890 956635389 518706280 945149348 707830856 991857292 159593494 223829886 851786598 979750903 465581617 839433694 759078501 921365826 862297436 949967205 905026895 977805700 242145111 390723437 722043415 892771329 848701359 995647070 794133340 965246664 620566698 817525735 381780425 486319894 682435987 908770569 87575869 764730573 37077567 722103960 584509179 610484833 904519190 949549922 417427235 793973103 786974197 887556703 887533795 893607898 298439847 684179696 443854855 481596566 884241087 913094991 916397083 985031606 867700132 943939875 414237479 646537164 656336023 920236118 842523770 989674630 721651516 999192177 224269058 238658500 210990881 861886614 818060777 932820179 549358242 753612205 19893038 753850869 954664493 996561687 952746895 975629413 495672231 924157793 635634848 709081050 499515054 940908286 814866697 948760502 601471607 625460969 978820357 996914467 28141531 788434470 575463692 995335721 552524568 801866710 870543585 962460010 114627015 617291466 339055425 481988200 573933276 975899245 956579749 980710434 636190318 903377598 622588484 801362379 405330927 818686215 682778761 820125234 321861590 350310428 999537492 999848584 548581450 715439874 860197246 986468490 762838388 823562777 812924496 961720914 172504886 380022886 40995276 589964069 135700675 316196875 928939307 932755082 783567787 997939496 459856190 664721552 433475280 573016828 94385388 377083227 135711739 795763882 6665893 582658903 851451280 937199109 728711531 971598384 391871692 882228141 112031151 792494351 917612409 971824517 425766535 826552093 226146905 496715128 104716048 445177201 677277826 813852074 105216992 664977368 812955532 877966634 98236864 198368753 664406863 813341676 415663396 624482469 911327812 928994155 726003812 788101287 14977830 80889319 169260935 699615890 481623176 870299978 402828926 763491275 792674236 793808953 186487624 844643690 501160744 899457837 979963933 995794332 926225755 975060353 629302793 665342596 154491370 692064909 995955297 999370728 604529778 968057424 646896192 753672144 607558593 801005793 419696903 818230256 512709306 553738750 349516045 732018586 926512245 990519003 695068740 788357851 779883226 958834819 973006868 994836631 645144371 741386288 263847151 937376065 377335329 510781481 565047326 929398793 381220705 606640239 441685764 654503994 864250287 974930773 229543583 933213668 207870434 964738401 396255034 654136773 618707655 982513571 542888537 549927613 69153026 100777051 365413653 409705866 429058412 636531725 193315214 527238205 185250189 852860243 811287091 896317580 474786135 769534096 57262529 969127325 971703659 978016867 603455540 786666524 694201000 912951028 415909795 815234513 358302088 387742690 69515542 839721169 235718975 434165032 880692681 998289454 868391230 951376002 184048505 839604582 642985727 732272991 520498251 683447933 216857547 543011295 819614397 896678915 126062863 353931391 50323037 837287145 673768562 823471525 6526870 71694313 17062144 567954267 225195922 301007901 591492230 776017300 134507721 848682426 500322862 918608873 631397514 641384687 85990185 87242126 574839969 657123176 738065200 968998785 944611942 987803143 268549657 782590388 339472481 452340090 383914887 445882092 789407764 937988221 892859353 954141023 910472047 962044337 325243795 692766403 690321416 924048296 375257602 742427008 127906947 782886300 869908589 927951089 17147401 634895760 784628277 999749144 402879329 492428511 67529786 665318039 122119510 945633158 608466848 724168583 228085071 616161184 355990756 581442368 544270215 710442477 581721849 592978106 760565610 902987681 963335921 971058176 627886970 994288157 883544449 890769897 701736971 823404095 13589950 535207793 356291304 912901722 400481606 998044809 927827766 991150352 356562323 872600130 674097122 989669539 434665627 443601528 287473707 589473184 663635375 748071663 534187668 834225812 404122976 836752948 450504591 630066871 111791099 897127574 174614083 453655763 685962083 829129152 677436428 785325530 496133701 741531342 247508419 308782202 291627287 548500988 253209022 260820624 471080637 799237502 229766429 995000872 194532180 772475030 360389730 616664783 767490046 953138670 808125071 973618151 126774911 322176117 614310090 764365512 199787581 327492957 393561321 988597563 989827535 999807135 511440226 761818577 27121029 906709486 7240810 471915751 323822109 563959339 219872792 651601292 994392429 994696369 301890399 693493148 261816766 586782015 340070285 723860533 397388769 823431545 933722015 992644643 128886241 888757114 449204592 888732865 150293422 165246856 660667962 805568836 93960261 536353605 747642605 979456998 980248169 988656112 324806941 539063405 977940807 998359253 178226690 947136999 916812240 996515665 389871802 703739896 234873157 598287117 210593571 727825383 840048573 887647798 558669692 857827110 47837655 955250039 582236409 968096661 857410729 963194058 777924557 878337499 627748902 890964969 785396398 953980545 954785666 977962549 431898371 641270768 190089222 958291084 23386192 588650672 841217422 962867702 162624890 191286552 266329908 777835443 601405767 625521553 68939832 923276616 261807836 391704842 810466001 956109332 277844394 646763752 302092479 659783698 284759331 829939139 696837254 713128270 427013152 697038430 5149521 733468768 770984681 902729400 721933543 805655276 645223574 935667931 175574284 344309870 318190564 604161717 416104067 617475426 406330907 949448439 910656665 972426309 307299255 921971796 718738257 813080971 454556759 647439959 580935580 860699492 590063456 900846860 448456112 538247880 821279564 981904483 832341288 884802529 925139453 961376106 355291483 519152717 811737785 982277530 188457732 299775798 813186944 973496718 801880585 926521181 588844183 819209594 645815165 856260849 695732142 696181820 429296767 439022642 510081587 637738267 620567267 651151366 409325139 417539627 946905162 977871449 290813278 695703572 150295421 727347976 942126108 981625738 916916169 933545829 759245941 880607175 428219980 719099905 173467502 433420401 624097329 926371908 661539007 774829777 320602769 649497582 83716270 135682114 594145727 742193341 693050284 825483486 145444103 257170668 558691891 779139790 236033994 853670903 78926463 227990520 113873285 120767577 787973327 918565481 550572749 681194533 791539472 825911811 1233506 657768084 785112565 901702268 914172035 949985092 86688320 585786298 214981050 968400331 243258202 825204877 740989265 900001244 715768620 899308910 288696888 510132359 160069875 369205612 857401629 897630478 676431688 790051866 868467274 934529748 905719177 985822093 599022031 655078566 901237604 999953028 341983536 556712366 89614237 90779176 596954975 652682448 158913523 631773130 933037393 989698256 671528180 943654238 967871711 991806573 599713400 957945766 91984549 109933187 310027282 775882971 67177622 588496901 12193978 229027296 516913609 725704028 269407257 802383530 587993608 873335425 161530198 459037417 826210974 866402107 980129847 994812327 799965529 811930050 964216785 986255049 934982265 956534598 103626538 723052279 99974262 555451425 619871947 807040684 664087530 911704425 474115371 587805285 644107911 735317456 337887244 453785236 213110976 490899421 976209931 994629250 786830510 876805489 286873486 604112377 179638186 620883165 103837920 893892692 304351178 686283146 903084921 929707049 3228362 213311733 515741190 897960188 161396997 347304936 998378921 998586195 165131319 876722380 590733912 776513233 996955714 999025528 973245485 989186933 62126719 286723431 778854275 800465241 964831893 973802368 514550706 734223028 356128145 933889134 213426580 723286579 602312817 742185170 871449274 966466781 941825235 957234085 211475749 774988409 165825858 977550417 346249681 452057277 981786389 989695349 993283946 994605003 116043943 449285196 393585496 997922262 339921491 762978784 724537330 901622822 118548287 821718385 989374826 993860492 255888465 568769124 146731970 835814307 20859594 267012299 408852018 892793388 417969319 679108944 111545305 112681007 335759978 833541031 473370026 808044109 925192415 941024554 197483175 452849210 290227795 354763292 855839769 963309329 108229285 525596159 804952707 833596891 229180998 973493979 365966010 733552693 609432518 677888241 470539901 832449180 137995515 853452457 859877188 938354967 342722641 461454950 449342509 875158084 718693436 799011893 570014118 609952072 30023137 292888747 826965519 971543712 692154652 847748652 391661175 941179904 689316813 926169478 791488051 940212114 291442128 912198666 629849766 995196300 92825657 907340244 531066842 849098221 376025951 646665669 513163632 796896123 547303928 997108518 231647596 713956974 134881788 974226830 749801396 894274525 535582220 830761351 500716732 897061800 663829249 910400239 864858745 985792219 289349334 337394279 492136841 898481009 706046377 788488345 837664940 987147623 916581080 973667151 579151955 967227382 649009496 814021809 872527690 954958115 723360423 801927652 447799747 780503068 54747869 962183852 767806068 784265682 857019995 999616351 915595011 951691482 538610438 666131497 779223589 977494702 369387393 526724804 802168337 899268570 816743356 844110278 533307427 583062860 197447074 377341833 682590866 763403147 589600284 957971956 532648813 863186746 907475646 911467822 935874789 936952464 593207727 675699230 965147578 991487409 974097182 980152042 222556074 842433773 595533289 967601529 473010309 735456279 224120128 423155934 786176819 825012451 584220317 804303829 38254058 943467391 437178573 966548815 81623945 406798092 806167069 935343462 6918610 551126189 750940824 999548555 361140394 801888073 565232260 613219016 652038507 761842908 276367171 707411796 518873807 624999599 202042884 969282501 902835067 946702888 453356024 697648039 700799925 825675984 162229118 234933702 305671475 959184093 242746582 773118785 697258620 922369120 368986746 807517091 716317876 826235778 763380230 864993368 302234257 939050988 90180809 926170581 953939201 967596189 944732177 994424477 554986514 627654242 86694973 584690613 515998624 602146379 444321587 445721627 156298242 557811139 490563566 607452652 148247961 509177316 241754888 325931944 377527107 617737088 561476400 785680624 810406497 881337625 797307581 892091077 928140362 942779885 519868221 698762714 613054602 686493288 182798685 257058396 600181734 620142464 62426512 500379982 333337918 770852915 687395024 837752466 608382511 705277539 297320355 900888791 781648649 992144874 193770944 259864798 627339549 765001056 834184500 885339538 496798934 931055606 543315677 706178869 450837335 633710719 816865718 846082295 646757897 679437965 417311291 422401383 47478892 816137877 568498193 870790650 340785169 943518405 563476982 629100595 15444517 103969881 783151291 965042035 344353538 857907884 847617092 984738265 495740740 942166212 24774699 86185525 86824358 335295752 675679449 936051579 803595311 815896903 25411215 310728216 435681437 796327257 951051042 970631120 614214070 616693439 945574009 955882743 438256204 819471905 380309563 751420448 541068182 840690957 593240790 730037803 565623101 642427660 839122502 930394238 149245438 851487893 932064148 977854143 714097828 819517161 799779051 806253196 626693240 710964414 719962463 987181125 526419508 776050984 261653587 673465866 166189309 815876574 415974385 815931027 559923270 779196589 886417711 889953211 110351171 593130934 232520358 553971241 356600549 745074955 809330372 811504138 272084769 288365696 268427936 424975241 52429024 298163434 775903971 795187554 433898545 767514488 758337521 963042404 983816855 995139270 431996218 531084387 227362505 435527780 653422839 904339442 987229675 997372310 530955788 965804947 734995430 967710175 725258845 939676654 165639387 628588806 99627182 804343012 512988474 871028354 401839923 546583036 871798491 965993669 113293967 132392161 272425114 384162805 42200634 751071889 437524403 489542354 860294032 968872541 268966016 825845662 198963594 948232640 812478636 871334138 774649590 840370489 327610228 793420766 140508773 293151158 422927697 492343227 732748496 754888133 744476623 892719140 133657214 723029909 869717952 928103288 175770508 234819494 289118257 931715508 389950115 930708487 657737872 825405775 301010690 589718991 608229072 876735788 648472966 961591176 165035731 312235287 487133903 947146379 408530926 758154542 927825425 993476454 911952821 926320314 128672561 860290097 334250823 716637637 398859272 971809606 956178446 994850929 854412393 882336765 746924429 918596949 858997961 880200858 944509079 965208066 708866071 882844900 206020734 689951802 365679373 459501480 759630537 788904580 289663585 374754978 238831425 620849733 276016244 639950543 380520238 600559952 779726807 978106327 926122057 931216942 871750227 901748202 294990733 536617565 627035507 664544558 811029548 819401881 825267449 972047748 968848990 981570736 801495306 861320811 635545594 886859689 862423151 892281959 172541074 644427130 992480635 995735719 139930598 918723959 114322490 716733190 108688987 214256305 831205191 911874691 255720565 405321075 994120646 998748460 692788811 999173320 259245156 293264248 663997369 871462931 143050970 590895274 112486382 410018142 534129075 638227132 576436483 678123890 242376811 856066703 721232285 738592252 767094359 923289293 39812598 969372710 333511327 508173016 731287347 883230123 756456257 793314644 447676890 727376425 356165671 489969411 696088006 767156308 268729648 349787844 724086227 743458104 902813168 987232130 972489590 985910044 664841915 759342036 114689280 230395746 334322836 609781542 931373576 975921176 702661011 985864541 856494017 989269953 873285121 947264563 348406572 536108084 612690824 684796599 472999694 727236778 215610995 366462753 857154055 929217103 436705815 952888162 332429147 425824375 635511411 740345696 566785857 813942724 891249516 985501153 347624082 439686679 995696003 997124652 403362769 542215523 504842212 758947264 122630527 548012586 321394738 998193025 554830410 571436460 448746188 955682086 181844500 225989012 538128900 539308949 814151021 928687330 423291846 462448213 666230848 934646557 80621859 245589128 460958166 667428078 177387518 731324358 303623078 603066249 461736665 491019432 72370521 121555005 485240072 826603829 418249693 683215658 748662638 989305475 976827628 978218686 919994341 961414482 430889269 729206063 602390024 824504881 118940233 490233769 920291332 973882526 48015590 335033627 653079741 879492793 265200126 910096567 302390276 899227327 718896087 866843966 987687131 995612624 117382982 322919223 683071187 736798904 277870630 751472840 96536624 972159815 560084076 652494516 205743973 516824656 252793480 731472042 397771605 937269233 984794464 997910984 599974368 661754646 128824935 285685160 32808299 582740420 481280289 937391998 897310756 970310674 809814867 993250892 461737172 959406073 219826758 975229208 762605540 814655915 559920960 825368460 507731730 869282015 659332245 899129723 706390402 945200509 769036853 872857168 220140268 735368993 57995809 242296215 201450791 320970341 155127282 678305243 440739787 871762755 888584540 922142173 809320319 875565338 288091675 501813968 267500278 532464184 783759822 914898081 26592709 88819967 908653789 939842471 982744961 995176426 689699662 946351399 494852275 571086292 102598964 159567558 124690969 523155035 90685470 272666339 684636365 935715922 738131743 867514643 851590513 894172712 69847989 726566536 374026885 989541821 959032774 993474882 144237425 764466851 556391231 573049052 117284462 448371088 211307481 363302506 120349281 161250636 154473332 898559047 589567345 893562397 399660830 566287447 746884007 979697943 684433731 851922570 857583990 896594424 388106225 534229004 304693972 516938214 200326288 565697308 457889980 958242978 620493661 663963304 876255368 966966208 497583088 637684492 755835386 845207577 58431224 565663132 404542139 406031172 194921199 583111908 593483229 715950574 215684550 427188400 281674890 386234199 563477059 856669604 66479424 154513885 981668146 993094774 876711886 949623879 99805441 826583171 265537179 516290174 39697431 938409637 217229349 437688982 359144266 933319179 727952938 978664810 993848875 994561208 887463771 898681750 25482560 686783073 111723170 876577720 236780345 427035194 861027190 930656832 432077151 905733871 429812534 710817624 497393924 629307170 813600303 834683195 747110006 949054614 841985054 871329070 511250083 955954445 806300127 972940010 256336790 945362063 998296996 998543312 586462679 594359614 188987798 974213260 523399506 935376690 666953781 910371133 277848788 674902737 154222914 157600457 96932912 632576760 684971763 848952029 253093978 651572234 369214500 521847202 649660465 827475143 788386590 819860753 337890276 884765574 492195397 662276078 966775009 997133208 846057019 902659436 823386641 824193423 464152145 570266955 286303318 371371580 962470832 972616725 357141663 825489537 741995131 986457770 409463467 645150982 648948535 927328136 202375124 832155162 949037873 959490892 842225665 926459947 584300579 758392139 95433746 156008736 578869135 963013032 514192288 674506283 399664588 852801929 881790216 953119553 730333095 839799683 327696580 849479292 538898503 757625303 297461442 453911548 762163716 790950432 288108817 548104123 50595871 254960987 77048865 919206915 424957003 905422970 510797739 996998118 585455889 757552651 380324563 710738675 777158338 860909036 927678405 929329924 992130509 997326839 628031650 953165945 812879373 876444423 994056489 996447608 166358638 623768036 88813258 410231481 189463466 958913467 240719995 464737471 610105637 785253094 418297967 930289363 743252306 882034272 743287942 947020793 151004364 200994751 221036060 706259018 544855770 695545154 430058896 750880930 415081932 879334680 881841787 993947068 671708495 975123120 591762316 772008515 344158134 695619198 128721407 315443531 797574529 901924097 185698768 350030632 790642028 794897374 543911386 974351353 791750935 901895314 976513316 998181653 34456489 735593433 246408621 589552612 140671197 354987162 373981307 828575331 569751087 793303100 27151598 461245873 177809161 823053373 569198404 949359411 183215381 379668960 778315068 941611057 441993523 619920037 418523508 487033752 375448978 890752935 37069060 978974907 669965800 717569825 800359627 974731792 124964516 238893214 724512364 833864784 650265703 650491143 200177935 677024873 321650968 480742940 611295001 900693996 557533243 841481146 97617479 152347611 981224250 995663870 305542823 838262644 941112279 982249033 42324346 381809063 208874424 218663010 241238874 920382011 439777579 440931422 120697490 196234964 140468848 297503631 807774735 842633328 577196432 873394353 133075194 396073539 466043332 997791321 625863069 890492528 301034624 421327492 930646542 947801703 375512978 732473854 895747096 979065611 748438712 834447942 222414901 250179761 281589732 437228719 694593822 902063118 986874597 992442996 931965264 986136168 479783289 636149105 240941232 559429878 389508025 530704442 824017862 907149876 946359442 984514365 560414296 743749152 664444710 929920061 938976763 941900805 496878112 922316767 110797075 863439310 581764948 630954459 411269715 931685680 263790465 993357044 731306484 806114666 117600331 432660760 183471777 750847013 458405481 835965217 73556599 113243104 620057270 878234358 570696362 983447046 963502990 985178821 903097017 975682090 389798063 416460219 194140100 494720948 690271197 739694792 104052182 715397681 92930517 495357087 63006648 499794328 827539566 832540836 6047192 143872600 519748357 638798680 878426199 878685313 415466986 448727264 856360221 969838048 172420917 388833993 486683535 743937230 450783720 466130910 66368853 653311511 899304958 904943396 686046884 765561988 231764240 419041899 727957968 880399332 143283315 710975961 120675780 529685133 326497450 574024443 441634694 930630152 846979141 904592688 412082733 511617285 799308059 832664805 409502724 960808801 969408911 977155186 726696548 919339463 598612269 764232956 196273742 584413918 11045743 853917638 64816745 616869775 914983057 971548077 262480505 888510111 862070797 909348280 40709013 111531957 673270881 962271518 53314542 157408692 262727209 312860060 456119485 980137284 731905667 987098311 808650941 823355692 489472418 977099979 938921189 949052852 159756540 570866670 434191671 882987747 346065883 846954228 654128867 770974689 925997140 982756163 509089243 979867165 295634717 562271857 433207836 485387985 949975782 951103754 183526472 596748849 487305172 714266814 502316882 514274621 38453428 61140436 704070567 720807711 827565769 864818466 430891535 654733278 890092719 938653082 751471650 965537124 123906680 283962838 720687767 819110442 208011710 558523503 326185553 753758071 18672436 389613361 926156224 968378909 770446698 935844297 907561846 978580695 108221583 619465121 899706715 938425968 59862521 480628378 174370357 598180314 772995307 793187369 952413794 991557187 724934693 772011144 484022291 737039180 558059901 879675300 614245450 921297952 611585344 770949042 595259508 665601959 254872020 858920115 727012694 934949766 179367771 759274730 695921145 883632336 827421471 921306131 322346080 806946209 879060921 904396857 433901037 788417284 712358806 889082909 24494984 439970397 601268934 900647583 525006141 847427518 252842328 671581147 154189279 938019686 681022227 879679123 519262643 723667460 333297030 661940869 532871598 830925635 933437896 941698593 703662108 765050432 588934880 796914427 682581885 749706391 14002381 145676181 690820729 830062285 633672315 904459665 270846827 943093957 644341641 800244590 693344594 807284006 887291318 940002131 231815436 680919034 959472591 973697696 882830416 929945500 539862748 986081012 499525281 805973681 992524178 992853482 726581521 990509360 45329930 496928279 22277155 700329362 783101039 852505742 448714389 632470931 788279181 978118169 885052172 952332141 96737033 327562697 846778336 966398293 719129056 755359439 638451905 846901877 799276420 842941301 943174947 944119581 465826728 538117583 409634444 540346860 379254636 780975514 526966167 962579782 280045149 595300775 602700950 857802518 553707769 785656667 622535748 733288628 525129116 832597327 66363032 563922627 909785277 989626959 524788533 997160388 135417786 397395018 821811155 829213980 445154899 531523297 310370681 783630307 193986313 848598813 160891030 452388192 655200356 810656499 629713693 842894679 221023301 328812018 884922564 889900414 686787936 893181349 139670705 250257051 97080374 966419467 451941624 585827313 955558112 989309239 34232610 72140349 266923857 742738801 490533428 601499877 406559537 598450595 268466937 544147783 528624372 666420098 668189378 828499779 652572887 816995533 781598691 796530628 957774945 961590447 978345684 993390524 840469919 931580333 830896125 876554801 411184304 461090091 669600707 764760349 480359436 827191821 320589350 894699418 915760181 975491167 205268682 869993467 314738740 947375441 80271081 718574552 109054006 463016438 544828848 734316377 915056796 922035718 693927 741806338 723244629 834898368 760323540 801714198 593639531 957039381 405665910 677810428 843094826 892907350 875864363 928879622 345719221 565734869 161909600 674720865 875307099 922405544 838550056 924503157 261281651 332285202 650633249 994776272 138736877 299293703 949557633 993152735 525130182 579088263 433030167 588181361 639028185 992363478 948023292 999763870 861009341 996066905 850480534 971037997 563898154 691738050 58249183 351435664 733437767 776215352 86379541 967973970 84955575 386258414 373347301 693968117 944300117 979646852 779204021 931248925 958290520 983431059 12214252 66211614 424932218 839338612 827436946 840552412 565336702 567735565 177649954 841202656 27776079 581979023 771425967 934539816 228309498 289618507 983839198 988514177 849682597 858384075 145922461 398004435 190842103 971263271 296189797 846024031 181775368 564745849 499944915 695396744 380856223 804261880 666503235 900839992 884776668 993509773 306999455 476596802 350820918 422432580 18707395 496003711 146404161 964954117 547392957 783357651 756702790 877846640 860241055 972569608 762958308 825672567 247953152 841003532 732469517 796693985 661395163 899196214 921132863 947977113 815526259 994220367 406149779 427242668 287532532 419818246 382832548 388240201 101991345 105237725 181503071 450800092 623617567 741498076 7877327 463728629 798531779 930706896 602921667 977394071 666381509 705553974 37424728 683557209 182448652 670113919 76224662 193452580 402702739 898767198 897210814 931468452 272551925 558951299 507774799 911800705 123230909 696598187 129387162 779236667 665233515 706588666 332051168 369345099 889232319 999272965 523911746 872301422 523771770 900107994 335908837 405016283 41255882 97521389 96009354 868247283 956177754 996383066 939185644 947042705 803016275 968129081 154714919 219463011 696251596 973581691 571335701 991618373 101682875 248147069 284057606 557356149 51894103 574235718 682568319 988343344 646025439 955155964 438341020 808420140 981481755 989947501 919104051 994992774 330765424 840352970 525631192 848450071 382698478 620057664 620957752 695097586 980557628 996017523 22426506 148211464 208068757 430119092 208134958 445867072 790108943 877521222 338535590 518676328 220170637 385541388 43543314 431148846 642438378 837928266 55777064 438319689 245960846 442767660 327738829 330932722 79538845 694220544 235782249 798238782 561852118 637866207 583898086 885267507 80627486 706933436 465809961 915570654 510633563 650215102 565747063 919064443 177560783 482090896 997917351 998154848 600029479 755410395 868078848 941793455 992858978 994616413 673167351 952119925 803670490 939374141 51955791 326610357 315563111 394874197 571937172 874884654 859980241 994732658 490476172 849463009 529171850 986184842 210797555 834723557 980041244 991663626 695403012 754435980 592518242 698279482 46542704 139102127 469655412 478004029 930634247 980425799 138010425 140853357 868949342 994486214 964497771 972872886 512619424 719918516 723097110 953057972 422504563 809131666 723201215 950423693 235548727 272142777 915637301 968232429 416408655 578155057 542622037 928969841 693374492 801723437 903272476 944847266 758333819 806867133 917027330 989106281 725698543 756536274 651822313 916684642 61536600 309456725 882156422 961206675 146114813 546969730 811946880 948390295 770880383 858612993 731044929 823303071 773426043 812061261 186788018 561907588 737610832 901730189 148016464 460404746 698663079 735471260 184245626 866541799 91499267 873803011 480786555 564792643 133096051 994343016 717833545 903969279 561481181 703590434 747408638 853370216 527588865 771176374 167565643 619578422 856568313 884351147 326165288 930766625 124323441 558927742 428165696 834018971 388336481 407650019 349516439 388132539 31998094 254947437 912021434 972569346 929522154 938136685 231147685 297730698 498292639 937820265 979160886 989212832 392267462 555486441 103037210 307721657 934350059 958691837 433245381 682459787 213951043 710820228 872321794 995408543 571046846 587744156 101827110 214360430 92142323 950836455 40888457 785905092 151852749 471762299 130088004 730141417 866520726 964593143 493378555 933870472 602856861 837305053 576492854 974163158 78659740 170002417 105833718 994047818 11064717 707520729 37008800 900017585 687838369 846914573 30049929 943728926 749855649 861187886 178733811 796754151 647371185 790869028 973979488 990303673 82193630 747512828 341383929 987614491 370741870 794024133 957702201 969141235 521741841 599881037 615252793 616200566 199335882 879014559 683831746 855604193 808858232 867995261 725274432 739196949 155374421 608368091 368571818 952938562 195859610 311323845 298712520 396377815 947373637 996906999 430867754 868833640 258382985 610343112 44083273 394072685 820779782 870963156 680584934 778990192 997284812 999038635 528531509 803983841 420060287 871159661 886405438 906161973 203928651 510710579 60093892 161469481 729085895 912538870 841627418 904001655 458012668 621656137 658928813 969091268 76193151 127423058 183471587 712407277 266001454 446669655 575509359 891276590 740977703 924228907 251451292 516536991 557624043 572317509 517651683 770834003 396455830 842630045 107224407 883783569 827047007 930070131 745783827 832317007 768865477 966554272 965201199 988481181 94269645 484572052 863317272 975390637 156734145 397395671 428777940 816263736 940637059 947782741 429358635 529441872 274826239 827964990 894274327 926535479 510560917 712476053 600051250 834954876 127040049 556528822 489057370 674641362 783614973 869104696 491497448 701295232 62991982 568763256 631460826 732983985 866176624 920855411 294056739 718447863 33883214 438939125 483890674 897172252 569333392 877478446 414997324 885187261 460915693 563540602 166728389 215800070 374231173 800534834 451794992 950623660 471535474 988504984 864201610 876179852 739325062 927630826 6673852 319546080 965696068 967462014 273785460 298619459 666815725 700543435 949635951 968638653 476473560 990688045 963717960 978238918 181821737 434785936 747759027 993230395 822367611 900373140 66830154 597977160 599420704 748449453 829087085 857821049 325499212 509001133 750862786 796761625 837679266 848685796 663314477 691103395 855601866 991512800 318516921 526417892 660157224 852075416 51786557 147892703 984814262 993587273 585300214 660140179 440239162 573024789 6081061 770241434 548632010 824319368 65242404 409609955 110454025 676176107 986743305 998274420 598850175 682621122 523622341 797199806 46842492 992398329 572391261 985287038 745473044 925490344 806398667 976425258 604779033 882921595 577693854 753603949 906095309 966281538 441531657 547492600 39302034 278889537 694799104 943534835 735117170 745515328 286862435 446918087 230501326 258034681 177010265 897315838 495817570 655895904 68748435 858090152 995451180 997608960 256083447 638594275 251799863 990987067 298623585 334643199 376151767 399379073 568302617 733547372 52149304 380925922 452828898 826569034 685551313 947916435 603200163 889174857 176722745 359857634 768667040 992113017 908913499 928250764 598243942 978300528 550948030 700191724 751957404 855657813 72299614 342357109 794079343 849390993 549539990 825911019 473108031 754512843 888679059 926088048 415783847 897727042 441413179 923323194 110528445 441476085 32005619 760663980 744723939 806061850 194252581 999976567 815473905 931481326 792208600 987455521 230559895 693426968 216230774 781638676 190393484 708972437 517899531 616148919 764362074 813435676 363655996 874435974 761472648 907108940 517653427 836985069 407143351 998726492 885224945 991338008 138813262 858288609 87435165 525423736 413101788 782200316 405260010 598891050 219906535 556374795 701468396 887081315 655365396 709574377 991086999 991919529 591491262 659155887 188617574 767660536 293948018 676007819 430333234 656453744 105260873 583075060 654788806 896736920 564624485 624653965 180700915 248518050 108715440 339536729 124777096 408873591 808675864 848243837 275849887 877942337 895161677 955704287 196215253 308714185 833789061 855834160 197018791 977199445 417230063 944791750 424995203 746585010 822038041 861021491 818752675 835252305 505354855 540813495 584713681 877543676 616151917 761588182 575841146 616743901 788706239 806629528 581327201 731614440 104397178 314948402 292068556 953405256 954346182 975904618 230147519 277068078 31822222 897739042 214004452 819051631 843794694 965819207 749715944 995879352 535815116 760236942 556835027 850621085 648814429 991852601 250492601 854469192 520300786 970860205 558887916 662207332 735492013 950117332 697213448 731153605 512118177 963864404 894373054 923923718 626332965 701537780 28093883 699745606 733958840 845945822 596355263 952762929 449911696 993555087 316825470 507550099 404701258 850640204 971363543 991682106 972092631 993315218 174841101 626035948 115554507 624000135 119254982 790982093 562443874 864860132 403145431 649796330 23721772 56655097 115686381 993790083 142645215 755356464 512121344 630863085 302588991 864765568 175253999 507890017 791301491 905427713 99936393 144202585 271832645 641412348 484582890 642145441 24725787 112542024 369895323 819134386 958401651 969984630 881799938 966524429 26302627 199938209 347604260 862787631 97111358 486910449 104871848 239795772 633032679 673351856 70314062 874476812 141936182 203381506 266059198 926883833 804449337 832738302 805228535 834715323 519917038 844670738 217176576 966084438 724828074 850791014 333879718 440760576 522584481 824894726 171401680 855507686 673111486 718721057 88738757 849531614 905561142 962611714 16117626 898070955 416743175 675544008 483881054 594876056 858131670 881614285 226638765 681508355 828252436 847841197 124178077 400193368 814474939 915100546 964711839 984673227 363291342 896524128 168920269 243270548 496846212 720242504 656203632 963630267 583340016 652782337 152406624 760417368 664277375 975260049 899518396 974001106 697142346 781392203 937245885 937761366 607426972 719170449 829481318 939584705 955912139 991306289 780710734 901575323 192846272 286350567 555121364 921183306 333044020 894107765 242776181 760383865 917092111 974700639 353995522 986459610 615523025 944442505 822830387 942423441 363918148 534033123 909013516 960695093 16502026 504691661 157386656 174030533 638040815 949075029 686780979 691737735 602570639 679533702 770989605 909276731 208386729 833762271 482649035 605142878 619176350 961404626 91105663 649717513 295023165 394892135 651310311 751371120 894137333 942197206 363253951 904944655 437178254 595449203 276390728 546694635 25856859 84388572 460383952 860507588 523307173 645642264 978475649 995179382 545553372 609108471 477697480 505662048 372798800 988580199 191844739 686537972 730146378 840718365 478958331 957890653 692068253 942701590 196519570 881549139 34803018 231512081 742680129 820217367 720281858 817331477 823969995 824901109 110433255 917746562 816258001 831804087 840030712 979314438 780321006 915666752 63213049 823954603 245474057 759529493 850886032 882717398 216255607 593907953 513077579 653697382 486849871 808545948 567831709 573828379 926995985 936629915 690448466 911505162 689862785 955994409 57992018 895366747 256207721 644906786 933737667 996211001 177897004 903473110 98533625 987305372 4481395 530559857 86242615 748586479 611381779 723100264 338860689 600380635 365907966 888973649 817799378 842774896 693801054 779994619 31852596 925556547 647445034 934352789 800359856 841808112 209591663 984891013 870748407 945220554 476931525 955561975 498567634 714933268 114933242 580030250 961980725 972233252 662969 52146958 423569567 861804789 650176834 724180714 285125012 661152502 219490801 598983846 831807849 937412014 118829859 911015876 622830458 949019620 130564674 957450399 109401392 537164974 706908274 920678377 449504166 730078490 905304140 962745076 528637647 921765406 830685631 840275969 258415785 581521954 450508956 823925386 38277737 897075206 314626690 969643585 817426181 962858486 389448476 967489372 180904024 383352443 438744961 452748627 91561710 358877708 779840410 792694913 303674974 880103650 740825043 972100620 698781803 820604973 668430733 734142554 872137212 931834869 820926048 981306509 509186059 913703715 704974626 789567089 486672184 522687357 952976613 995737348 281492659 682266597 105932333 558106277 895478260 957397186 355938977 420119177 367704682 424921119 29965237 849057748 50207027 652919403 684374167 906709622 917766093 988800157 373992975 712477710 820738358 893784546 912194150 976491415 462798450 824961195 430895621 810709595 471342960 536446841 850511470 927399151 66911399 723199638 81694348 611500506 88592509 845248232 649694193 961860659 823169866 978799142 865044237 950325316 955508572 958866136 747777276 959919190 73303848 822298620 386311292 457739111 877049678 895443620 775357106 786294286 864432127 891331895 993869351 994808503 239483451 652314220 931353044 987990861 407907948 641877158 916087863 976472214 78451702 174760796 833740021 838516947 882974165 946314807 616267682 963547836 148249566 382227849 724306373 979296125 425905529 852279052 714136308 760010507 542980893 551257233 147610357 898256634 14551127 769765237 959882033 960996031 398944948 751429605 209125514 932115221 185552236 744999898 920627711 979278120 681633823 706232925 121751297 194120838 712912623 939166178 939744292 961016910 414357549 826344301 267981648 389200202 591537132 597342360 852789345 998375651 396343713 707495244 665710764 772688032 924482979 938822404 491475382 909829726 129818041 988063568 501558980 558969795 620933231 834466514 24684899 621160770 599639565 771171222 8805940 850117549 841457268 971329452 742885511 902870027 894843643 967766313 158304137 432745106 772570131 955074760 344784938 862487205 468692118 776543790 447392508 513289391 565148429 709782103 959167427 959649150 701249670 829605560 15260931 800486130 206864547 683453096 245788079 513466961 845729773 948587554 452641087 742012085 145664600 570568497 77090953 563160495 323047549 618156554 718331999 817589351 475925463 561338811 119274118 933927976 47406582 732768708 366617554 698218343 119106357 730918758 719942687 971641983 943398184 950566331 424065475 531715463 521971978 861767023 145283241 324183929 235760407 841801148 434961393 465556015 930989485 963325453 581633472 810692805 254974541 998183976 296148033 828776742 587650161 778040029 848859691 910172928 226781309 242141192 680153464 717037234 523787643 859140769 819039946 915691271 210671027 795960562 857530826 900363366 561676063 986341452 528065678 985884530 4875690 276328425 903527291 925816639 293890850 315212274 270945824 676841749 269153544 544460297 859575126 962104744 718285010 997837954 635702121 740057726 53597735 250163162 79832982 406170807 717818015 788758858 518745333 761745431 554337517 772991312 40197654 976168770 631128445 783033021 27684094 849309393 940370543 965210233 665243091 891985861 933532880 963098608 732105804 756697852 446548384 580508003 525575538 651442388 317395032 764182179 58017439 532232815 81728309 672992466 834983704 963027710 183703682 910209786 593577454 782364371 623101415 962305777 860991940 970346974 930584789 986547431 281240803 832197403 300651361 908605943 775218685 865640398 153437615 389214331 285909280 717984197 876434037 943096840 501487129 505543921 989529526 995168899 376705769 450588106 41460579 882265664 91910272 575521108 545201846 577930323 439587327 835804873 378863595 569779651 286663957 530736463 713186482 837562881 84724894 960069886 514451594 760990071 897768878 900267854 245527378 967697561 367799953 456613640 229807596 373949635 116552981 208052950 329372190 636702351 675426494 749644671 190148622 420768050 801812057 935190890 439444457 958021397 98107334 623196148 19157906 159485302 74431496 867011176 150534213 211831867 482329027 772168598 973248153 979885844 503115095 540133798 878536321 881181118 389758215 613579595 516129787 865079821 415348084 836300383 425525842 584778761 395685723 882911476 628716508 762157431 645164773 984553209 473394693 883427730 135267163 600210386 278110635 536425456 96762503 411569491 405825805 933501206 910788669 970523916 293094415 794893958 165160643 189119756 242885402 302170551 301500967 654742362 862010053 892755814 247179311 500227272 608093299 992043324 650472957 993671422 519605463 795434560 575767901 621941305 153672386 596973161 504748571 719591066 895948159 948565305 797543877 927582123 600921002 901697784 75061038 712836148 965366508 973838115 408616404 518341469 89631324 599410400 935286322 981544188 358728191 456325834 729273406 913317615 203321133 433634556 619702463 860244063 493384893 786700799 830735640 844277352 34460800 928448769 801505182 889790570 931908013 936481412 246633478 587377860 640309508 865381231 881085876 990451562 558855461 937709222 585195639 983529698 694629556 817495301 629898640 858183217 885948202 919560490 190862363 347145603 568012302 730717018 497773304 827101446 157207067 348527040 962517187 967891265 525815246 914081021 821841466 870750173 871699850 917345517 910475234 924437797 650499998 817495658 580351946 951280256 382304125 595919607 776862070 841844658 702484658 840975490 788266807 877879640 638067988 958440704 641941782 974785072 873923052 897549773 877066413 901299015 744131229 766430185 529046339 843971230 775225218 834373852 392981226 557385736 17689173 822416100 118173105 589642971 890346681 918728888 633587654 744710379 824876234 991247361 322937936 815269281 342702600 725998994 246886428 780902029 431881215 444222785 948276412 983100124 785425254 851679178 180381351 731237548 930730906 984796619 645268822 855898218 790338452 945971589 354562743 402896996 285149672 565736472 613579929 807149727 459716580 558965663 714211840 999646315 430557988 540947022 571668500 874810187 81166092 201202823 524879053 761986688 724972527 786645295 287803344 496703739 71607184 364748399 729700466 986781590 606082320 811127501 566086741 733285169 397885916 730876391 985286490 986156121 166090231 894672199 683532972 752464433 908517647 953960903 761929688 843540262 765641228 968558799 374445582 401124514 284697633 453397315 113094154 840191329 847087631 912483359 211261228 581901792 169801322 324080512 577383880 913886906 933298975 944782374 774886808 989925824 540912158 918231069 281244327 957423502 11605968 120967528 184840389 545903222 660300256 856895816 125521647 912189583 460244707 556502198 465561392 851019372 951335306 978379006 956294873 980462645 862883679 917635280 342712590 453800332 808252525 901561718 689441771 814428844 33560411 811958653 520746314 858146547 296618787 313345665 127723230 478360292 974029657 997736439 479592624 777512211 487055112 672890723 102815653 957688010 796385105 893712983 19911317 476858463 640716537 943444662 745065654 906403381 174934592 564698705 880462236 928494890 545847315 888579155 677726416 886345390 819826401 864740896 89423410 182967309 84946756 134843144 558226317 951406033 625578646 626745414 393963471 635931201 765619421 821605389 424672270 990207892 636024904 811877668 748052043 785958329 55870133 470198230 653844259 730022645 461116162 875277034 872111905 887741566 400493399 496807823 687676471 935045225 826704986 891848755 242287729 333625184 432402370 973724433 529816422 683407321 641359405 971570084 366050256 482452236 626146468 769226041 948495493 992051356 789453243 816375422 669580326 686964757 267389035 622102777 125559895 766390233 114247713 936457209 132482565 377948934 242450520 665310549 856558464 958787026 318125848 955170248 44409600 571758967 71992478 341871223 343459274 961882783 312486810 586869392 655077733 675966521 45592267 526150219 537896634 618204126 852410726 971928914 913689705 928827504 603806691 888773186 479780288 961205055 42508690 70358087 853226247 887273466 36310319 226002768 683686874 901759482 842912865 845479186 982135011 991681788 289258726 752094714 120198274 843079330 195539388 365580371 382565225 767945949 611728601 724941113 18922079 883486870 170561482 223781897 580086524 626326461 605349167 634475434 242591832 302399664 695165006 930724219 897876326 979027277 452863378 536450823 79952920 522427678 212351108 545829355 667963995 676118340 421826494 950368491 134460497 666487356 904899167 997902216 583282382 798408837 774335857 938750117 562578813 584351857 280108950 854253844 473127496 689131332 136191303 781395484 762479717 905748259 711946991 797078524 95164230 936256995 725350018 728951819 902590996 936596251 889932858 954398547 796075369 802521105 365921126 396531896 553099539 665526919 405675264 898391622 227313411 309044511 822458372 829409152 705867863 833961686 855013211 883456736 427175878 661741168 68636072 521615378 963150417 964303894 889929074 917252065 294012658 894224132 988338678 997124528 514264386 800070222 362190659 519397666 624041713 662706819 139023332 696155029 823729723 947559379 148719556 552487006 343826702 525498764 849650656 910297207 743117937 847706758 552313691 928999151 557949104 693867364 91616762 335817414 498671606 618274586 328608904 523930953 542497181 560906091 824746157 890057970 326087569 942734854 508525131 748499494 610489847 628684826 262146065 809862083 210155541 636259905 172135101 797384512 452919729 525640651 478014799 637730019 703872522 805470135 984775527 994184381 987207883 993379153 963569378 994910123 972935801 983765919 197234799 821041568 650168586 746550297 911905557 963656005 54923038 502664194 259728197 365333567 726447269 727935907 941007663 961591652 866625455 944522338 617118672 662373933 144528979 507293554 494201796 891802198 783318067 993717427 403973532 759449409 482546914 935671365 164343725 624356164 563429512 779367678 492487369 626225501 61556841 318955536 292579221 409342157 270638703 999101495 806195319 914046602 44496499 298497170 245476651 512166037 71988077 100872405 767317556 983601922 79087947 340661885 547227536 979278145 32418925 434399153 209359761 418179392 542404557 894969990 448394634 548924412 448998502 596706283 755611337 786051233 372336998 551207466 130568625 714894499 623783168 928804172 445607398 574499267 821530100 924983812 953159299 956515466 481949813 966120254 545058290 876541541 507342395 886697392 324462401 424462026 897608733 910633206 55682654 889618539 897058191 951554266 364022070 637798965 746338078 880425442 354317019 753881447 111077782 155714351 193520140 234353297 933306255 988984164 217918680 979231936 894384746 905837211 195780449 704324448 816636715 881975768 99877048 134877314 913536256 936886601 415933799 972562534 756755811 859986332 977254718 999901556 639076812 751609827 577810534 817134905 919397635 995314618 202386799 978903645 606001653 911695589 739982851 918239646 432952085 948082718 906648484 977064949 941383183 984081659 712181845 849189866 875814597 946002152 550475240 706269368 529585783 770084970 204743976 675563755 142467754 387437718 97153995 607676597 127828862 301406479 729533855 767724562 899906200 995517756 113251908 978452139 109485875 550119271 555022464 850862578 167680358 675340094 424127681 960862277 310688177 897513624 135271753 151068001 480905458 611873687 552283192 709540973 813856251 835572096 752943890 913422943 238973264 241470375 130447246 142129104 876568490 946748893 23341587 390726008 4019719 750266433 250097683 646968925 897453954 913529712 451857649 521834856 730115926 990253253 910014382 968524884 889344778 929327511 833149785 847566154 506568942 741929529 903114507 981765256 395834741 649893838 83193404 948279601 315998427 944140180 15862903 32811935 556210908 591463282 437047889 599743257 66092471 927938366 840338752 906031613 780166988 900493334 896006579 939702576 283799971 888870092 137921266 456099042 583236636 607248034 585473518 705781275 853357433 915343563 236339279 406299479 203240984 591261250 179601956 688594785 362035205 723874946 723283343 744454521 28825419 232382658 591337773 971567714 270663948 798416131 698882519 710358055 212672031 238804230 541625660 655830872 443158239 870693237 263876677 311220370 296977698 447964307 178223315 198261023 309362559 866286505 373664254 825277273 648093647 842187695 405171153 828588699 878509794 925948758 271387429 888268405 385059676 505771282 150149408 706428086 416952817 822098311 475473121 642563781 816674678 997610667 978163758 987635590 60690497 890757668 365757940 835910178 477276214 864511582 729866576 930717838 666480651 938052227 975593253 994161263 792971188 842235990 965019732 992429156 196666566 603067462 700969385 883356088 499450931 656549608 845885720 978933364 39280549 161250314 105489117 239377414 763093640 787534585 958394316 969751335 630238868 755571183 568344520 897823641 549259806 987507198 432514375 778746605 938028086 946587171 771941134 956618379 32527789 155215816 797742738 987700717 748650105 920083679 358535796 917174285 765877052 824728416 812679615 900644417 479715166 755895261 545163474 970784111 696039026 957386071 362792775 410046193 356432560 960130381 657465700 920171125 223210676 497010144 995944174 998963799 961127516 981205322 290665999 765377467 390545215 787991017 623779186 626363084 270370356 432642350 612465868 755527282 253979792 398029775 409741005 949656657 810858459 944118327 872260619 998059106 902237131 939545125 83574447 710964976 955083370 957468117 529573893 897405617 104021327 755604485 972294493 990858978 106116473 229810082 311298281 934771287 685798422 900311703 77922847 469418985 364850721 496503333 188264116 734436825 169349999 778813674 545808600 616479826 113226254 174288293 318244217 503867598 564986981 660472283 998014458 998588340 909777239 953899525 773590825 972613455 522516507 712962710 249481274 831884095 681351932 851520122 714557624 945424669 691618499 990456696 112882158 936894036 448487943 546332903 463136051 616205324 20266044 873505640 749477806 890043671 811133638 813408236 486305922 928242582 551262242 926634211 102413203 501745931 168430142 212615239 914339384 992970537 869186008 904044124 845950321 919163087 874843717 942704215 240684110 718976845 370086211 395833113 232195156 802782152 284139525 603079891 688296479 952734394 211877904 779710905 460659346 772004313 857456876 933125085 803164408 816152399 571885240 998167925 115729377 361957795 719753629 962292711 752675032 845883844 967051186 981103189 431660047 792672253 128615395 173927246 748198888 918575177 927351523 968434500 213252030 743429796 269049454 721769531 746935247 848143092 533335495 961346679 524893603 943030539 701501629 869747373 676462703 685746507 639426452 801967519 331342464 801387365 323253611 421461306 867439244 930907532 328704521 487920182 825607141 832575570 275522295 311431149 266403306 584226078 473480771 705707762 817129710 912533581 820887867 905485770 298427034 627635942 532722854 948142954 715918038 810903332 817211953 851878160 814024511 859043031 223512368 788841379 569357026 691009240 87852398 89018661 722648271 942675656 873375579 993186956 691300420 848911976 913246155 989089016 657461426 766496055 391482044 818966652 810437699 911925464 986239338 993814567 851614218 977031913 442422568 883244954 515394906 733454301 615812549 916434636 439711929 697031161 453443813 721872540 871213244 894046160 480240592 595971713 869208515 898406747 706071464 771088675 89593143 924947017 295361209 360444875 843940398 920760180 234203839 598414453 927786171 969342839 826223610 938556512 735167510 967506453 551508841 710298438 471484756 650016838 819818368 904299984 325549113 785973368 617765268 752207434 155966512 266095581 228809263 479605842 226626620 669047925 381698828 484349488 985866249 993218278 377556602 812395795 859406573 908207774 764501545 990000535 381564539 641378725 624031283 838811224 392538396 905013932 125868718 548222403 8061262 584772328 905083938 938096744 883868309 945003106 904973839 910478643 917058898 967253950 878154766 951788385 577594891 942887596 498010 529098890 726836668 859019367 392431059 540176365 660945870 665684147 354616727 649288454 400440913 875430083 199163798 223814497 26423772 943342185 961732116 966581364 245473371 987118244 956940200 981454445 335828030 833680275 454033641 840303163 828497371 978706485 370183410 484444115 208759134 751321328 228072274 865811402 5330069 236154486 822376744 926786393 477012172 870400049 321221929 412201131 387141637 634756513 998948670 999986154 819071690 930927994 870157769 988947286 347569423 923466673 51300392 419143314 21417338 223044673 928425989 937355796 84235925 292474121 682809334 979915825 714373623 881292013 444002209 551434991 401968150 407369843 613189644 753967665 650243079 967138510 364608441 820736004 167988756 814915202 281030499 531017391 300522226 315347365 680447731 784167649 639270837 687524650 439721017 816187536 827294688 986407572 495669463 854979080 772860768 909652988 317517701 730241362 294024631 390490470 884792642 952407385 387979299 928700713 936877956 972718445 503281949 629670529 317488046 890773671 302213818 561151916 403959265 474114329 532655669 649808730 196944640 594497665 919353646 977031943 682848552 704533361 672965853 876848602 940973901 988448841 338175220 887077263 3630995 390870301 874040702 904325061 249263699 861357595 320620262 665827823 729405837 876039736 386603360 637177334 131806361 594092949 297045750 724220700 324669704 926013399 981249950 985906501 923375600 987312460 831088843 862758364 439581423 859882052 632457541 939525085 265810334 386414164 20618121 31886526 669419731 890506735 110471933 418553712 978134504 983155788 273042821 373664069 646339203 994020234 652878667 755087499 190730737 315369536 962643869 988879862 983856187 996351912 404725444 709521340 344881497 898969456 420070099 964174473 464525539 998168022 170555489 819094089 319580516 647671944 166672110 168059737 362131807 816584212 689353170 943022731 863600789 982227979 960772318 961524344 196693950 460891849 495747015 943818948 332612068 568922186 981229037 986398975 803194415 857665985 711933115 965168436 170034010 783985493 6463097 552616661 673191444 753132501 872678840 946160543 538356934 684847105 440344739 561877878 788859582 854470227 684138665 901273205 990008249 991931797 753807228 853725210 532037475 729798085 499983389 618502909 303394273 386771027 429556105 793245406 961678224 965320483 975005068 985358001 849722513 968633001 109428993 746963964 267312889 768319286 73101579 490018233 626123127 661936981 778425453 950595606 973997671 976198747 55117958 669571206 909416753 949503064 871704720 886171201 353136873 833131077 397590006 941202355 364877091 725061698 889787744 933243132 511833509 958963060 312386395 568493552 948438388 956933858 255890980 574410767 796112157 912832737 806484783 946640583 290065933 487515106 487513155 600280284 120188612 459129819 574249099 650441555 384095927 813876654 746335612 827238011 850553664 938246127 836596665 907995884 252648302 465843886 216768897 463596901 803705621 825302888 982702166 985794021 641760912 730657325 812163170 914367501 367089588 633492523 55737188 146404424 873218319 955410119 690138241 722731970 921441709 958500808 272765024 803444059 16085145 336398065 520433795 955601826 88626271 724511887 964839380 979072513 998312579 998379736 972103343 993447123 675899711 841184303 410418643 472156417 57633052 216763684 782465372 902380739 947897083 975359894 51269442 210868673 993538286 995836248 874314504 954250814 255483317 504071641 642222460 763419637 435478483 829937913 100222835 687292169 972719719 979152731 601614588 659255559 558256722 829786750 957245559 995539969 81583259 206766978 814003683 817727439 661448964 857355617 771809447 822068554 671230039 811080487 107179341 599531868 756099120 832072015 66118322 343637462 636694493 909209501 912476589 989152490 237184962 708947707 217965082 967410962 944430844 990102577 211494873 817915988 571081332 984341990 753707865 920833597 307762278 639576003 376380052 705805325 5133990 665667052 196077536 828391596 857771829 917323585 73471614 805104710 398810906 874663262 524889378 897166145 851652212 982332656 231942493 627890862 82541475 328620733 800209308 870281746 363359790 405043510 85672109 461796580 157814901 393461646 365497074 495754444 649364614 855904694 834480212 903696373 405494175 921589842 635394251 924080813 528195838 558267715 494306808 772921737 440843207 481851404 377654997 609990142 504493965 510151317 199089935 794123218 444288311 985006649 441648766 464760829 223991724 814360629 985361411 993698221 623012735 772582422 182154886 419237911 950937916 956259313 54330587 631050547 231835772 565016737 675150834 862552485 295989340 623769495 639330715 691970072 196618856 703903815 93143925 464465544 640713514 696224577 316104092 547492870 202661841 890447022 95161517 325902883 299567047 434432437 315677138 854063535 392451100 782332026 498296368 958677380 526057291 643136290 465364533 823512967 679611640 909665956 493605343 826921934 689799221 731854958 540202585 985949594 626263714 758793003 405501955 491445548 396051696 434635675 563926598 756878712 916724494 930450571 547409247 789182743 399799771 946138150 706009065 955997661 426030421 481739262 170635432 918374265 329391356 334044421 999577558 999813371 908242706 915315513 665328536 948197905 296197214 975252249 51703539 539552105 229686749 432683581 113974473 654006294 692402406 831862968 9208066 886319839 486642440 747175968 402916076 843778244 65603824 198064861 769573890 954099191 455021889 960719197 634628809 868017415 397394016 429436347 447822883 498040466 973900672 983201739 148209212 927101783 711464522 760886210 892326256 985167723 630105711 723077074 756277056 949446199 251782408 448596589 978295953 979060180 825004115 910090110 115441836 573982197 180523925 753767513 50711477 563315893 814674811 936275776 101772894 562775247 966884505 977112658 77639517 344579587 135358172 294937426 313122060 425364773 507211514 991308896 493575699 509449776 726729104 751344364 14196880 319938106 570039644 737127126 128819918 179031524 207788079 725652241 375131183 827582795 406353058 929708868 251683423 740986835 654223734 970254451 242326255 730369625 327885246 657392681 768071224 973459325 360009571 364199918 735182232 968826021 801109068 940751024 273826068 990145944 214244385 508595284 891203612 985290349 254343886 380410428 701453175 851756414 348539363 601481603 7542296 594892479 368773590 538274910 878928545 893832348 532397212 954457573 435247645 464647336 973602340 998898493 248787900 738419770 686586523 729992196 989319054 994215314 411392446 801631544 292208906 498462202 311090611 560161342 577377868 669277412 164955574 587088296 148521914 498219557 200262901 538185690 650269397 809163541 302734776 323841425 977965726 980860521 315407395 469628579 156866381 890789065 876705850 916346640 988101592 993138345 750676334 995487597 789460204 896913928 777993652 920856506 156935414 816318679 486265835 689776717 235056313 727585476 887855938 997497029 515893968 998146532 777241147 801328491 334480860 737374417 403859035 771025813 386380647 681475436 872495547 923909691 415222355 474058523 790084052 818472807 235324415 584978345 256948122 296583435 906904726 948801586 563355414 869457211 56105291 340072148 144480809 328514727 314636025 960371768 659179464 805821350 988620773 993446598 565649016 673477464 908074247 923382273 461632997 658466569 167709683 412230703 72273759 325126564 675800289 794255580 766819515 925172439 178907002 807591216 415977899 632828923 563722051 966059251 170274295 463933298 951794536 959907033 511514031 867281933 914277946 983556790 868629534 962778317 493661713 495878041 240779847 279115249 536613421 748771688 662811098 672644423 878740612 917024368 402151299 591637346 374994193 744494724 158953527 620019905 685577197 946637466 465339344 699785303 454985682 504671868 92932840 245930978 834564040 876078625 7326473 931845795 724796583 890678176 60177983 66125615 386130604 964566523 398945726 970279887 398954574 837651939 931790217 983899937 804201923 891274790 916076410 994194912 202114537 520731048 12454424 228798036 858920284 913570885 986861920 993696593 601956149 628299364 663942577 966014305 626641191 931287062 223596229 622073045 391317112 490122152 327494770 655247296 894566301 945376665 981271917 989677717 994244131 997815636 84422806 553212054 571115494 688753900 825460572 914997683 246550413 626712258 350223638 456752946 312806124 575760430 299474013 410401529 544947681 586657275 125564162 256883971 900000078 980553905 605193955 747854378 3278924 94985817 925100753 977132895 565284726 696446314 412968314 931793759 586840820 732478980 701983096 998533975 578867954 974937036 919631997 975961697 442068355 683570338 890216575 976900328 944039536 967240276 503193458 603128733 823761088 877487240 546999679 912045718 713511179 837604164 794135020 892151132 646887164 991854889 107584863 906890284 631861403 657203422 20346310 202812594 271320961 892129876 786869731 800080976 662712492 751589450 520793056 609215766 31341050 416000466 757469568 990417764 698132270 711882981 973350259 992798995 193607545 808804519 998624938 998972365 129148013 250654096 941374081 971901870 27930668 244111956 471507564 790231020 891095056 915739881 928209512 971492516 135041177 283283777 152451250 259883520 541872602 646369598 527461849 736634807 482536748 651061238 218794502 645054375 893381220 991186904 924299189 955677719 394415286 582684041 36004134 63123014 646966719 665976027 290442333 642802616 756292718 878281869 348530570 588147463 841480708 908226731 468600795 823054511 425345927 928923741 375971980 820514569 773996827 945010205 490949283 750931014 199505308 956352795 32399667 201240037 516166852 656613398 191523553 716780860 998288531 999147568 873710281 907344397 190125907 499498147 288411849 296488003 331527666 924152004 801623943 890309790 881155569 884308828 406583560 599374494 570498958 892575909 620328027 777786067 120132627 404015781 860199284 875210990 206634828 825972344 895897521 902819734 622822416 652374852 946722917 976616446 724769367 918722241 290348551 664236755 847607414 991786085 166819000 262637929 809596528 862584269 618580013 830778728 255571531 785597040 191014218 418055473 579302404 943609028 627756252 903713954 553602740 590420333 133588851 719829763 546411199 710747160 398328434 659090308 23532095 207981640 190935490 889295593 54074719 998093216 807291820 895748112 130934117 475610512 924644271 968640452 744062815 819495784 331307916 554127027 116323269 827268229 558083166 744920327 583705934 907242837 168740253 423112071 462659499 572999903 268438000 700518292 529108971 577994123 108520798 291468557 957558850 975720735 278933207 386087129 661188571 662961940 213537915 347208507 319783002 639004324 72286083 465046948 417713112 478563699 505265220 699512210 527098942 591522442 817727633 989892171 463578138 895561451 558920239 582268842 284805413 668845308 109564639 158039162 608096914 857157893 945689660 948094908 491373355 818290719 408233164 670492613 289102014 612473540 145960595 178557850 128044211 541275438 73716249 738637964 609214992 779675744 183110316 936235801 511661434 987360465 32199409 316964603 615967916 628464275 839396361 888542385 75483447 590101736 629859665 778974122 757606763 811180256 252679065 439175588 806710136 964517291 616608128 629996779 169754874 316664890 330685070 457885333 601213273 811087377 822334086 851621998 132373615 725596762 832258812 937545330 863748658 909762585 6896884 149361277 596291849 709796319 54954934 429917146 422331723 771506103 460142113 581291157 584248968 930722958 287841849 556657278 919524890 950085583 279166532 919767794 146389880 191438134 360355470 375290722 455873117 569903997 356053927 967409066 163543003 193176256 166959211 697900001 88068652 502387418 819954852 967922827 188314155 345225667 636846982 999007322 168998288 986018058 71600916 811466016 317905761 630635754 603905137 658940216 372942116 524770655 108215088 799598039 65475937 783059854 26283519 376824381 575779649 811989598 791960321 957378183 592088457 862755790 86364739 481141195 131067685 220281369 34971708 610432593 518461636 585505955 498652319 930049708 935671297 963557927 137954483 722057219 831494919 984638491 914335213 948786679 531732833 990262303 163847958 658478591 711282647 860781760 541279996 824137675 99275138 131270942 498030292 627619277 864987960 873865293 307970346 790105022 227040311 583945998 321890721 643573642 82596579 412233596 115204838 886429062 730727322 903539589 155550867 827069171 216016904 527199831 496100014 707384899 761402146 953853656 734178139 886879125 670771946 758613570 533709714 903347923 918931631 937199342 694336452 878448777 636758249 833724043 520416902 883541066 886535892 911266387 462637727 904528548 403215760 649279920 80448367 144790660 35963641 280735563 738244373 939717372 20145381 462944616 226569595 235207696 848323486 902800595 809018135 864325500 276345380 465643012 846783632 949022423 623362506 854194264 581029421 726465549 267822811 900555443 463203136 582339579 403037209 959183669 245363423 893823166 506898817 525928597 263373386 476445362 812311347 931066745 237674602 691721486 149778843 153702992 798411271 999097447 370380101 804613976 927326333 928467183 944222984 952748803 454236704 985270965 660031503 921199661 461145585 979471877 339277137 449088792 256486012 960107555 525627430 828494749 447462568 832984823 661033790 762448853 296288784 775790325 974260433 992629438 98693588 580512447 731154088 765873572 430242974 793723489 883929710 934972599 241498010 281875157 430223105 552157626 840891645 934345347 314168463 694822432 461904100 860905220 298029277 655310791 832589700 993326376 448762704 458484150 843459601 860351992 979718532 980851995 398039053 645981571 163109509 280864116 756750806 944993353 813041305 830710120 337392089 801068938 341119882 462499775 762082406 855851109 887901089 888749110 755581606 959450825 909067922 978682372 200517668 633817729 904089723 959551684 46897251 419158290 93519202 999064541 824495582 858565893 248136357 302127220 671013988 701674642 291296465 613192348 72767617 388002055 450288430 955206121 217678228 847377853 856968701 936243158 677609476 982030406 674281319 797295669 324062042 510170947 290476064 501791034 362068003 750307799 894913829 921150093 61065831 480225709 357799025 521273137 691041828 757546560 108482522 157317889 94204306 733578541 505475038 690616185 558183698 766483674 355494398 765463143 808862346 955707366 54762597 376270802 260435123 428424929 221621440 509040613 313687379 467042599 212815242 362602209 22521086 615983130 961640164 988631136 678873741 920039210 843791301 901720289 359455196 378269330 162876858 967458344 495715991 685289404 294369876 994506247 280083347 718419180 738182549 740963331 702082736 931785304 135095804 444527603 689914489 998828592 672982880 878146951 214084477 351820724 462731278 488094568 405912273 590319845 358794043 905667350 66133926 278810448 503370889 682329639 975065038 978092376 906141828 968840167 118897055 325134148 8422993 8486325 132602421 490330781 631355915 752959277 585249158 760254113 423216876 957643357 335826556 483215333 475098551 954874000 254057154 851385203 516337020 649633914 724532918 858178782 211483972 847789866 355587898 548710769 652735266 829767725 315531942 481779547 40527616 967681682 563074484 846527168 779673768 827460482 102612540 343837506 659076618 761354430 858781285 926504282 154355903 364508723 146858993 926825849 141076046 615196684 844404771 858158084 270274718 666110916 179500194 434730246 258492277 708380407 405295112 519671447 122597475 526220575 317584448 400484563 777620773 884522693 141323468 258207492 528683991 968464072 207764756 237927437 856170389 884992612 549302209 661527080 836712484 995323656 873674630 893827006 365780997 672737347 229070232 771694362 302975561 326780031 931500612 943935778 454266035 764222470 935311137 994105307 593854890 802875563 90835441 544037098 344833789 828983474 385414719 522225568 56980565 858306917 621932095 659194480 969197032 998105897 76710420 106835426 851568179 925115762 150810999 966080142 473310460 960959249 900772205 939655371 324954775 407275373 440850210 803398923 209080158 740101032 374964798 451264474 64059550 708890335 244202912 265550438 968545910 995008698 114753746 404489903 188585222 972642271 847819197 884424706 899100972 910184854 612609972 687597182 760612864 904469433 504214304 793913295 718485145 930878346 510430704 778097541 73201412 872116246 652539528 785989976 979592138 994588274 813284562 898616042 404984478 838886828 66785851 551674181 710404946 899788380 199257003 327318166 762670060 876750269 580075874 621175075 759783215 816116738 306184819 401945205 427228669 800133692 19593853 550011736 543236404 968435776 867743754 919910485 287760024 882072501 368622353 655377630 970193162 988383297 855411489 968539081 420906075 956968981 99943398 883627839 779295295 802156458 403662567 862716258 874353691 887204940 552418117 570240099 572605129 978898141 812729606 973998965 816148292 942882231 751421231 922803168 856596241 878503798 651306148 908937825 343550917 710694678 632915238 976567439 588085080 705891670 101044162 474353757 961316152 992707305 314455725 324595308 884190087 943354289 278077830 366438372 880204354 945504225 640171813 793704512 254870528 504644889 670897714 992427210 981626476 982187511 584841732 796985574 728319523 889547438 753840275 919603028 657365163 903852190 310039832 323274691 836539289 939760594 929050654 984819564 108267537 130785663 529619387 912724301 681040383 863039209 828953635 846721145 573711160 938500853 668613757 785717919 466348743 518327650 626395310 931031854 917514954 955254318 348596771 616297313 12458529 838757535 180009369 480235569 972650115 972691117 31151269 720929129 531796538 646391843 823371239 884626713 251428268 420347978 743455179 797955892 941546028 979386245 192490137 255853686 649849812 916601211 883277885 969683064 179205613 909778550 703240459 969558891 500608400 788706710 316926109 317773808 749964219 910411637 997132317 998848773 240305565 614738712 789092849 874175876 207720296 622293392 914642951 972027391 982441851 988563398 923059156 973223495 184657284 208470604 874496758 966102740 863076348 895806349 238409198 716897054 354992638 703605688 13977377 994179164 134005951 298220138 442902393 914364985 60168888 493288404 706116505 760823525 851550695 970352037 125021359 744192347 820006790 856102588 849797862 890688191 912908637 914904564 783522705 835351362 916433874 928312878 797462064 884318430 529863409 984000488 701816291 714805413 695149105 697392761 818084111 942212530 46292719 606988298 929253777 989205782 307646372 721072763 42570522 198017087 156289685 449374722 546001966 746430144 726642239 919841759 599678464 986772731 437609545 933047406 315381647 324011965 677936985 932795043 75544004 963534005 49698705 726275272 210972054 792435013 822641147 868813976 489902171 653720451 203679730 797062898 391256402 851782846 28126148 163354009 93778668 930571205 282196848 340715741 684040068 869233094 729151970 816587705 145625647 380550406 941825430 999395431 211268503 458791715 770857763 933462187 147123982 421300032 32733302 531247078 24339598 898231329 639354643 887799389 358512703 665089688 232980179 739085320 657660856 734599632 408364915 660891604 903866909 983016921 740213549 983895126 206178820 682775199 832907952 930230224 689429850 703246289 516812553 933860553 223470117 779127103 233043248 585804757 78340916 236949312 73935354 737166847 430927765 968810204 523485418 787026235 37244394 434056585 371184734 427079355 2777177 786008020 306812665 693567723 170800896 493615430 723597906 901650349 94452806 269547507 91696955 335432892 397449568 831478664 727436599 789653569 504735351 784704857 372065586 552323394 289844297 462067124 977415744 998015025 553514133 960484700 835013017 880863102 403809275 907955716 853897966 984157850 324800982 873250332 337197641 898479661 717577323 893869459 62883468 841400454 834969989 912316070 234877050 892921059 257566092 966689001 204494555 255987160 84070124 458003150 446135032 805277550 909967066 915550044 15525237 840991152 233450131 437879043 318207926 907611576 579803906 623703716 80137165 745889791 194389841 403782450 285005991 559027706 165144929 335880900 251351331 571605919 758459899 978458001 971356004 973533567 746854926 978761328 544477792 782436752 482077798 898939721 884752327 967412744 150730305 699530129 901625707 943810503 466952116 548428281 980783647 986157302 8428300 875937386 738507604 783578113 66093508 113792204 600630867 859202862 457132308 538600667 233744786 464090676 529004451 871373331 474681602 561607514 674211802 952967162 2116289 583048510 995644040 998443525 508455524 602502231 779977074 988013378 317241846 907343775 409509554 665413115 108070986 202289149 247896099 866017004 324490575 354659978 884962581 989582007 578928476 699225431 569878682 776052739 122124381 858508140 573750234 679403572 577049741 851679778 545620746 635685153 583970992 779129217 242248182 539359933 413072058 596853055 414972206 945710523 450407643 736976872 571809423 867851123 352611213 797634793 787918078 892818067 348172594 822952608 331760804 513758333 497782818 843717767 851144815 924937408 153888591 484562013 98674541 472148678 580811968 591060602 390717984 834061259 396217043 562348670 610205864 893021946 991111294 997376756 179114640 949975758 611616787 711999388 807349370 864119841 699182876 722999383 566231647 731579766 772660483 829316174 111181316 699285521 109025545 520720774 248701274 326470365 567502092 966458566 212235440 750610042 411549648 965742937 503969895 619632845 659377839 732157551 734580516 788100546 656453608 881097102 576644122 592777470 49144998 205719108 559923971 859666651 58090385 488572170 185320192 435432033 168961501 717593509 690041463 758673621 861998015 927622216 106760285 189569698 809248607 972018741 861803698 919059955 876410153 902993116 220810096 325903226 507113231 897514514 315734258 381049734 473671724 750358034 846940632 882698941 116656104 164363590 701969731 805083703 677479637 859325279 712232273 731636510 816442370 830226966 234508981 772734409 830332844 900709302 272581486 830798985 250490431 826599739 912814457 931430034 863172991 898912069 542165621 971430178 159537265 232623761 948711396 951535465 195839952 430872554 797887633 980329403 830588217 857193130 654237139 732268260 831451027 835856616 920146679 938972683 702219968 719000980 893709777 999111091 844646704 870514175 359735396 922353429 145980354 372283838 996509840 999806408 906774039 970417339 885092871 946234917 607685547 711179796 297182701 485108177 722639219 974301470 749039752 938334316 681149285 743082465 518522047 537167746 1798494 704462922 681447477 930101921 440081948 945288292 513443071 721395573 199523478 809986404 816827949 949647070 16599970 765569415 278827693 871092907 947843618 992977090 873432889 984150154 578237568 963596956 408539553 835795573 118952759 472531800 246142725 403822459 80275149 975940314 400899938 697986016 676837599 994466133 66264855 406051062 184836897 707638411 390712915 674029323 301024678 771994369 750029182 885690405 350639340 685640829 804572306 846574668 308329046 525674923 936248631 999891458 231991789 823344144 120013524 666889628 764643827 978256870 454793772 720717242 767053606 977465359 231169317 598476508 231862809 961547404 421006851 674141096 664714893 912569184 281202188 631879498 188983042 720380746 161330587 341984952 398165972 675852373 543038198 617312706 107829307 570529452 275406603 829890700 141619473 909972812 242815571 935523634 724053800 920696894 506192749 523511443 403981525 607204683 267039606 945683248 532613418 741546443 201622924 579463669 228524804 230452377 855987686 883504202 285776192 817338672 629645554 949949417 841019960 988952889 663551050 811610515 364531188 686511543 941104070 987230659 305553802 422944140 839284354 944009569 123725822 737048667 348373535 602317683 15086996 727401790 518929512 905845999 307120509 578277061 21777868 873298575 157666531 305317580 815689428 898063931 238281796 966713489 271678094 592429103 141586248 179351109 494964010 968339646 35830414 355941599 122495004 664217776 929322041 952644124 709159573 854933730 318447859 607863055 321761526 417246446 965789169 995594407 996948186 998828262 652469706 839183525 189980268 754798443 114631449 287200331 360314627 961296527 169401827 943532507 21068230 278480259 165490470 972471613 317197207 939249954 225113774 824913228 786469987 854567198 818030658 956620364 817353881 818368374 165148446 434657126 309941550 538826180 134575438 709115464 531462768 574934549 202085274 266663816 450146254 468451542 473136733 610523826 692482068 701117011 720646906 953762675 272619250 604943880 116305751 499003877 581122386 774767108 554412280 832902801 947981408 984791176 841444766 882577925 532464362 615808134 186386607 877706449 469595010 598461182 130861553 825763356 954288936 961783889 148046274 529477323 347228465 698475961 633660186 666107523 619751113 687042593 506379901 632789265 398570962 515366996 260998740 705019923 286887070 934908137 348883132 606111402 93783224 141718965 678894802 713489095 438180423 783945780 767755856 804539913 790819570 805780546 472416641 948687080 710642658 719899239 170578324 822819613 282335446 937430914 139266868 423840174 226706370 848979037 7814016 314160433 612022647 850218080 466935126 503687321 278645692 412865791 581514665 947089650 94528209 689427404 760555555 781489131 204024550 609762495 930179339 978883290 77501496 238363659 54529944 883675665 453382758 556798544 868987007 895466231 247046125 255185912 5626896 236263329 141786583 576704353 769510535 916819506 463399692 609130879 264136130 936964239 26165770 619407625 108894966 394345242 800136024 851326269 174717331 850303437 623962121 673812164 815089855 883051383 555357906 640532080 783045945 802894788 286851353 329161497 273207467 550641581 23335384 682990263 839936870 950622132 593497123 823310829 146752626 784669614 605871635 768186623 920901343 981192037 415282507 588810017 513453219 717059050 841781220 857021385 106987652 562287483 680396620 929389860 535701746 573284772 138874453 741025001 225123638 720657165 996166158 997363057 167199276 372098505 380393360 589767433 293329351 532649365 539707071 605439901 4418236 911371090 567959187 902901074 471430732 604489662 654883152 896254942 424089435 733026708 733951841 803920114 619005218 752835343 456213592 940256272 740155148 964674211 508105479 689370377 827974188 951791366 425750538 559972662 490321494 864899531 887424571 909201603 637217152 934026235 195469971 209632457 197025041 694824199 891189406 966822242 629650283 656941771 78779194 911913387 216051632 921644215 388343670 822048667 706611512 964834808 340933314 484009025 276286613 309212367 520173699 554190673 851097600 881531400 580204676 607619397 745255510 864622076 211629979 540723264 434771036 525798505 245058326 723740435 560273755 844666914 970273405 987038044 478804501 906114380 793674745 849893991 962228861 979103488 942780850 979711966 25522891 613896100 644060127 771542234 537453027 713776791 981275924 997775639 491955673 713038145 70189125 667463342 685472842 813292957 80368269 673327476 207569156 998057121 20033566 782761115 575442244 666913751 124612645 144129037 727872244 807775620 123277035 234368417 821184177 972209480 370838164 674091135 426825443 887556225 629318876 844944370 663471779 907220716 958657716 961189572 763956552 978205525 913690428 932586200 519971541 786585775 531412958 851178573 105805208 180815740 869404473 944245428 956868302 967090118 749924875 759902765 50953005 481451572 659948531 841537542 216895382 439517626 843433896 968915161 878988900 922720648 889457231 933231514 586310141 993538468 422885215 523469601 996961210 999031653 453768942 677685526 755996751 850704348 483248535 754550073 860681867 931924686 550897992 775363808 868768861 991122155 780164909 961161093 266656304 547028807 630514049 673466247 628498821 731111714 420714922 462038991 742798131 859514497 456175737 767894713 135047432 240715957 426583268 749833371 748311057 772763746 177594660 232107785 736841983 856186762 999920188 999953663 252413735 872372389 87969873 342433668 954625857 994528280 470815414 722129578 884980866 896891027 120965003 806350046 475865940 855367241 286581775 947017951 681635426 751598577 212554154 338480005 191673688 295448798 219166167 440422417 925357349 981809434 250182864 251898637 923357235 967932424 907798754 934433190 585069644 914821203 177819979 497304371 751587258 927890869 300763352 862670048 674719861 858745759 349864960 799826049 632018285 734890529 552787034 622042494 395880990 495557378 505942270 666058704 26439455 424359994 109358090 213973892 540465695 984661781 405095858 476170977 792140739 880037208 412704597 455431990 623398722 647408971 30223837 469970387 999855679 999923764 715556394 943732884 61095174 459221524 872698288 953542224 956729010 987140696 773843141 889635471 757202492 873477305 893270138 980611817 302752991 339866060 203620664 842030890 175417916 937524219 48906946 483011849 249860312 765322868 435350347 958165611 166993628 788038604 361886151 379077668 52972747 926463102 375531904 930607586 341993425 890809544 650220863 943854391 433038639 730262333 746416643 764443718 32699414 319561642 366368080 617674494 895979682 984746447 604934956 691013296 86757549 888363066 760323979 972079988 614151824 983669401 345964499 992941619 434984018 574379083 654003777 900699494 487569968 911796275 608984780 827508078 755407349 822092984 201353245 711075931 859847048 968453924 276491663 444873372 865672526 977763836 264113175 855026539 757210406 899073158 715045238 973691118 995794012 997944491 504144259 791697884 44930996 163601512 41659938 798511307 131001803 944332110 534536338 614212736 28626243 706543347 613020219 947536598 760216967 912624266 339516985 800381612 729812933 878802891 577302483 796938238 856451212 940766453 902937851 928987883 742131839 881590315 672071780 899802271 689090251 796189253 284118770 336377820 104917747 607206583 3287916 507251049 38627970 124018301 302598510 513840136 602580511 706481915 254943009 713462232 658056774 742184897 595913603 926671277 11952747 62907096 883142278 940611695 219197462 803028208 329769759 493452590 51421524 684628793 193648559 506103934 114270415 187676242 254712895 872860421 137697518 323366752 585551507 699166279 127904513 811294844 501619157 514601858 725354943 851212630 628848613 696630464 418305734 709795696 902916941 904798014 860422243 957145120 96594338 96650781 992628113 995405721 18127164 817329948 37246213 207699711 214826580 348034681 500046168 968858261 702501849 900403108 868538921 912948762 754585596 957029678 521168719 733066911 132232605 517314024 743664096 985338582 103888762 651478415 184545466 866979127 820872009 965128976 676224680 996891936 311308015 362721569 886285274 888437258 798890119 807275362 175445409 705794392 476807266 674105784 967276767 978929129 211741887 900930332 40192287 600516456 682358815 878920425 360028927 921617265 540042063 900734469 117058457 180369270 41708734 321733524 3919966 553602167 395677736 588815563 509496181 918923930 378497149 879520640 354783173 710998794 992424158 992595700 353514509 424269921 637427643 779321421 103587033 210308162 337303925 345940467 879782447 902028379 412416171 527760627 388139357 757843913 590785821 730925055 77301115 246344420 841614293 892364933 468771355 960685426 796653074 888867098 257555818 543655438 457442960 731086981 639742206 793925473 724788980 746052073 79635471 242827513 74938966 650289468 436028936 708713366 101800604 927996073 169253904 836521448 665694757 974987768 230720697 584717453 715214401 906634205 655815013 728848577 565891346 661519534 995250764 997596255 481996044 885008959 50761391 202938240 724865126 840852534 143071622 734004614 772147560 863812506 671984672 759341274 686126977 727852265 841991404 884002750 287505092 969592498 942588910 958654643 338163310 433519033 834451488 969581789 643331753 873040217 894264202 991690552 126723446 355470746 682076143 739970765 550360028 770629395 448036356 514919533 573248514 927544163 518111027 548266626 591483095 696396428 320490850 683364813 314235145 402783051 859569790 893652736 503736809 803245953 836493964 860939489 214066239 801404551 672694555 953303498 81624210 209721206 88691595 570253737 198438388 396392709 204089547 229900250 250509844 871397237 578041817 694783044 827968499 892001804 206569378 455017300 134725088 614151678 86749501 941023461 750358260 817557633 950657222 973294817 953106496 966241745 931920917 979321841 44323909 762821233 706985050 988352716 187162074 972235796 433785540 884853288 568228074 888509633 213064975 851438687 232027122 880369528 776945349 793587110 428113575 915428118 248051700 769376107 461282331 470461340 696179415 868671330 157401879 174444110 798396948 929968254 882534763 958460906 201824468 339091917 92498956 199219316 675563237 969264047 566303687 583925824 840880208 966916445 538245738 756896875 810230742 918195807 802759311 964084023 734595030 965986066 986607223 990579301 418162403 883578903 685850547 910893221 266065964 457636028 831346560 948221825 824989726 831819509 948831827 950370616 784389882 998392700 771210770 886932576 256870520 844393955 132305722 536810611 769890185 818033584 343285973 686013682 841645800 894954268 761438049 840639848 551729213 597785646 667099634 806513337 960646714 976822921 316309279 866033434 722556690 770648304 5073643 271441317 571463586 742497011 379345400 901832710 546257485 738349330 373218509 758060105 239298579 454051234 81005003 327114629 209518746 396253474 625531711 850829258 132102764 406078088 884585521 946214962 640575118 799543462 887620842 891897467 728253592 762610559 328586915 510892457 233891230 403539507 238187410 817285616 820289418 985661117 395079167 408683917 117924400 377387098 706439476 893503253 165985260 709440706 752141078 872011999 409751850 833138416 41749461 702164791 641406857 817061441 494810498 756280957 316329631 614808913 370639512 917099605 878315974 964038913 952414238 977857124 582552517 907918172 345463786 893952190 421523378 539764607 143809695 825175268 295530806 466324453 346935076 424570040 633243882 938120523 995159562 995238330 128674212 294491072 848572084 903051988 294746989 329530422 989103821 997690926 333210644 473598375 994383455 999015974 540466051 886791525 1859649 647124640 359715635 747514829 519784385 878562029 100698421 122077178 990809170 997063156 765857698 923803196 443884839 969812614 388026527 816017638 709585055 942262176 958779294 964728015 170117056 675898220 470742372 612673234 62161780 592202843 704620409 921649504 764952692 949678756 882399410 893523373 628727654 639124604 316723948 516122507 490089687 674801962 548506361 561100754 855995078 884032982 334667230 816948661 753529512 761174973 778820537 926640314 269280164 620934161 915865906 979080265 807121902 861822430 561754306 993618022 921087211 972905882 730726818 738706472 357193832 959677503 858163024 995341606 393164639 685746418 559123390 955275441 764065417 919802322 547719757 850117621 583829507 994514526 188074372 839196582 782406258 788317212 779055072 893430205 589213829 973576289 764272469 885449839 231724326 450999484 901239401 971579072 150940215 968892289 736785777 934964268 79226150 531811856 9583243 937484142 674120218 901831513 968952949 989055550 987114075 989876707 8853814 459111184 568953424 925413524 641113724 837192290 325342531 362229067 169327615 895531220 377737128 500574141 341255326 394640193 774171177 955418044 734416861 776244212 784003519 813699779 543216915 813576893 656869978 661005438 154986750 301989297 55159713 922988806 14514683 466708317 727020425 836157798 313127131 515400252 143011157 591771005 854676194 858283647 329776729 698667043 643012819 967169018 698964785 883499921 44559882 645440146 687507881 856671414 276794554 719779576 740146300 992551017 728167811 839372061 351450421 786738503 606075593 636700455 934172064 936583870 304224744 306880721 276141931 476673916 758615109 767573340 474497260 567527089 378281033 389091135 910365284 928156697 5653947 451325041 408462229 779896852 81279574 433086750 805483836 922783027 818468171 918924071 814566331 957972030 966361138 989794237 16503582 412567404 592711801 593653708 739621923 829710260 735611607 997103410 597133924 847172795 771239206 879811718 8706696 158125567 964230206 977414679 651753997 704335128 956783949 956808572 450487661 841315893 264965726 341434021 662938770 988260434 546768133 625039978 196371813 466686656 42096818 820596746 607101183 637426915 63684522 452005100 472761996 757682330 259966539 973972468 784322173 864766785 64255026 655852409 88854081 291616635 143283702 434796639 927424477 942640716 629260605 906169183 685221557 766956746 341996816 460614966 305813167 804882510 434344445 826618940 520123825 842988274 247838365 709754941 884577241 990144404 167300200 491665751 774012960 801295331 945598965 992195769 302773072 340343599 287332947 453624737 583182264 588314361 951219268 967464563 740087632 841602172 990185921 991062622 39612848 775794697 777030084 993133933 532928931 766718475 209377108 580102228 216568276 510417958 230886319 799070221 649118028 935351949 79381505 137750308 979998361 995987695 946632093 948637539 460013907 943255418 970054342 993083556 848079126 887554902 906154229 937057382 775880085 839389537 572345806 646669070 220109474 247236123 833846865 993914176 317493287 377037012 812899722 969415937 539442852 884810611 505708133 521820222 469179967 955093127 724018490 942169597 94801471 650066864 94550853 469550752 404398579 687641231 572169700 807527798 746933082 994499024 587389114 694284959 555935819 724048620 533205380 781726055 510093930 598585346 360822162 787556129 687963447 949955623 719271196 989063794 337297764 912935246 66474938 956900506 496725440 943996876 317747375 773300327 151834157 688761587 933605598 969991717 835690688 906796446 989210071 996591316 6532306 162815979 114444856 489595064 85585056 994703702 615179899 807185473 92420089 876293284 253437898 472220039 666588409 776212255 228230982 469317928 281530220 321102194 437739266 924051140 194475931 346596239 27651462 234000861 67783309 839715216 456952875 818153591 652203528 985659640 810060377 817191221 801964262 862827306 990140340 999780563 772395876 960390151 891207671 993899658 941349083 974153928 459754155 763401950 111989306 580627923 579428889 748402304 813309362 872457851 229851788 496822171 234105328 300277564 609327149 896837726 871601720 933384311 504449895 557182636 791764329 830849932 793845677 882047955 443679230 815884357 897451989 926586144 533908152 860700655 829971587 901545580 265541547 401604072 982742733 987986716 131429093 738781696 859131609 980341077 867658816 915054926 278254481 823130395 152969997 210678079 672948841 692252910 844875793 972961314 274261245 662679728 639683958 705358993 347920487 823130415 982581059 999441649 46238715 673837134 334061113 911255519 980868111 989018456 127745465 887965446 895450253 902564705 26470850 293361315 979488509 986396549 859247485 901994437 815075628 835827419 473585793 804322105 430862529 925265867 186337851 958464896 586710020 911368529 255881254 434798507 389135873 465850284 518164699 527792875 814761027 944457848 875986242 937840646 306001562 940969482 601386060 809041314 279179488 517347144 601187002 996872245 566156817 581571521 250881580 984949624 467721884 661380966 64280599 108160334 785047966 951224047 931994970 978201925 644290964 672557209 389512914 436396948 243156342 426739016 223704 897956965 834922279 939926490 295460379 801273829 842732083 970706022 279817671 491072716 990865233 994688640 704189758 743505864 992232834 997384893 272205772 574277679 394696065 538104179 157043460 263958254 285656250 913817716 59237398 825531932 459370575 649399666 531039797 569733076 413736536 810318548 120656182 814480694 160431873 818972838 862706143 971151781 630930049 864440975 164674891 410305952 616405611 907494992 419728697 945351578 881516161 975157495 129121589 359955793 159329588 808868641 76183118 354869383 173886790 244512852 274618233 569771738 809973629 971103239 945581863 976675177 750275686 756912636 168608997 427053114 982463807 998337742 796802925 940237835 419468193 954458891 522257262 654172273 845505265 943105578 785719012 990334479 284352132 913637161 142330382 847798788 383574513 688942193 414902535 976333083 199651408 490907976 950417165 975361552 154603609 688515525 872444984 897986479 628068022 817957993 101928614 607275616 798107166 976403932 629362619 906986178 357215344 667557028 635920742 713143513 578781307 709161210 508973696 704760919 220968552 373759657 808223054 940309820 415303194 694991930 713298167 919253401 295530885 300494154 298508789 477739648 785097120 827759865 415987488 617985628 518582908 802362977 179224965 741794965 463639640 515609869 728361075 958096559 874878717 968745060 593106039 740811537 855151795 862007979 673935932 884578000 653589116 701123110 449278405 670302318 449748804 787198914 412710873 887359803 240103785 996086078 338676002 734665559 104065149 495504407 510808711 927524324 956576685 958459888 866197374 957972526 875176862 933635631 539229456 912801792 49915845 967774490 721325387 821874380 765191615 804283812 625433518 887504494 192192323 441312931 794657956 934393508 588222797 846744298 348894101 468491023 671032602 949841531 81279898 807799926 474381509 613954625 432238812 742412608 78336719 486735563 853841957 989401711 825307914 915152103 348390306 584521192 144548270 189214090 353792030 862894635 780680947 887412107 550189693 726958243 223117029 487440680 350640993 682628498 536892245 725832304 64905904 477626918 29161091 725961212 154678211 681158465 546205297 583260179 278222806 841843748 378260261 729623001 949612197 985530932 802533355 971134672 384093050 789567907 611437185 787497139 709041540 918305285 85530886 561841409 167940643 191153272 940895284 960730591 971742385 978769342 189198586 980060838 243313120 247108986 651870982 696632878 38086047 625592620 664139456 753994614 644512628 939606576 197662862 993083042 954141317 985428484 420686831 780412468 175715607 650986729 268683433 288427803 689311024 755944390 702703747 949394178 452406797 653375080 275363963 468835837 287628792 958877925 85422815 994747388 847241946 923296733 674190565 851660068 342583591 391454844 590932914 718264982 139215321 476677990 952539302 975591251 449161363 479075680 807425143 859378139 521689957 590493996 90439442 725320657 280161693 458949112 562392218 886818633 459832030 836364175 578320801 719377769 174272142 773950792 865717189 993237921 474605772 787076459 473885949 840669507 623845854 738426741 684659680 799307396 709436588 848533841 311568114 917173657 744995264 945958533 700102583 982401519 443398425 940868675 233497347 865516205 428895811 950757128 756581264 790497446 870293320 938758185 569395225 592277211 468716605 641593966 682291581 791575725 712966730 794527732 650182756 937973821 844169372 889445045 613746432 796434823 725095342 969591901 517303440 608393878 368632196 952193057 86173985 425146488 807884837 995358825 195318908 531877145 345038872 761043864 320274884 482376916 841308008 922563385 694691813 852257232 275167353 893293859 562523222 889540408 859040479 864363261 357742640 842136171 33630170 112221154 476170300 867956248 372432267 613664341 539812719 577445291 435723733 822375533 890026367 900313440 338876884 812062385 740307463 878069247 523605553 602346851 643294414 684933183 561427578 767856444 876625071 947665430 571117742 985779647 659732075 779516444 928485167 952263520 376306671 621529345 837492401 959203688 843893240 903147175 636651133 770259473 713970074 730445978 197961543 410443940 228098874 528261835 586029044 910642351 305154979 346687860 588824200 705203939 634481349 760739668 525832629 541356643 95530239 405612540 542554912 674337714 80696385 940123335 900761979 950004246 976394354 985479839 537675825 743792656 568780084 641284737 936653146 977348320 360833358 658796203 662388586 941145451 10461872 456908082 516015159 566918316 795150200 848111134 712485209 794871331 281311790 373181543 836008518 996868875 544140667 933652960 236975399 552066299 866720338 996187722 428019027 557070965 534053913 620903897 757242310 914276398 648263376 658938199 192217823 546258394 870621749 877712374 246375516 778902842 899385595 970376780 83767137 291450378 74341417 195793512 672062618 968149867 484380018 520935056 505341070 933976578 555755540 979462693 519576107 654254011 463886678 990470839 207673363 509497984 765257931 969793760 874145382 911815040 820054376 989703163 350104104 965643155 106743560 322237660 601432804 812344873 484821546 591666453 50256040 211881955 546069966 892246795 171888353 674102443 800352641 993935151 292335510 900833361 433780238 541977460 310375953 778522714 277700891 554384427 919354076 976010729 684690867 702095875 692810538 701438355 994609414 997232863 866456396 889533741 149171280 419403651 544356277 859819503 490970998 686126094 223796396 348790245 621109809 803929360 780058281 826208860 695698944 876271629 206358969 395037216 759760598 803855291 914880475 918600676 923389397 940684879 649692054 917231135 748518853 759376790 660866518 993147733 772660786 916745195 237980399 322216760 458174871 966357893 573085486 748997336 545303595 564423215 760051324 867313857 187911661 640701141 388460312 529233457 611610456 740428289 925682018 953601895 519880676 984645431 916964822 959094352 469640810 762924939 535912049 814156502 840318529 923518949 545765446 900052102 407232269 920085523 339561442 792385203 207668752 245354926 418044083 690492502 842905738 934451888 930094798 966176573 481046910 584382197 162020621 233582415 16974303 188034783 110523414 484054009 122082889 914451085 51732505 793303107 186498106 371803338 583987293 742780889 135171354 841801794 722089180 773723654 471058616 837008182 361403277 678853693 824500396 961021166 871482476 929537915 187083243 390502088 175309419 587636902 933486332 954796282 419460112 972157305 105076997 322306182 152734857 903243444 31802149 380896017 520151065 698045626 186133316 714256587 672083030 714371108 387122216 844842870 799813319 874524673 123494471 357471633 478738511 579056757 389246400 441201656 25040495 475032646 821937833 921074927 183016447 766514115 761505704 951741792 448110664 932606487 452528110 569166335 337970381 826982632 817281210 879143739 767283405 946488739 598064469 898898929 490625692 886984475 721036174 910684075 234197312 448966747 205334350 786500515 555838418 644078882 786918746 890332593 927884194 976073661 546957609 988852924 880911590 921918390 44642151 869950280 758112798 907059479 454698677 930619148 453710025 510451419 495401841 709740086 831716864 982983307 185956734 394709321 648371654 822694534 680175180 774901903 923387674 973901862 700516130 708781322 721051152 730028199 624943137 890820710 947763486 954458354 811610404 997864574 889884859 943085897 179124144 289150411 784335564 928030932 494339327 548445492 403161718 581897075 511496627 646982182 528684686 879068064 193178155 334731197 778253984 862939244 56286941 947425762 273973248 544819756 667973018 688827677 680920699 831744870 664508379 925067855 345228566 695441429 451118905 886414916 841619432 888914131 661439196 771307415 894221124 929738997 660564277 692513005 2280352 536082861 485208288 797847343 370232866 606508907 849792780 991317675 802173136 893125394 983670272 987411467 104636519 816279729 242982572 271171663 605527885 861001858 728403755 842394368 615782402 646795222 599591300 730282461 392229083 481091601 857843889 904611496 147659925 726388766 339788929 715998411 263507808 521040429 409338157 631169278 641692149 740846100 674777594 676687388 410178570 825861384 875064092 908106734 114328544 394420426 336622991 775771316 35916917 623397927 890246327 926886269 437343693 755857104 862185465 912293103 826457059 922950547 395694348 742228531 905137260 954872525 965850734 988277263 546755704 861618931 378586219 666836656 789823650 977521195 713822657 865315696 793984144 975419343 809663107 815016619 213368169 564759359 591693237 663056449 750763683 995818604 608107083 818713825 787168776 981456764 658730590 797363134 729723509 834712431 555245811 946984269 858989889 970551533 491424506 937487075 448973425 684747697 484833040 860490425 410213059 775268709 994210609 996677331 649938340 655951853 249938327 782266479 529419524 612978026 2335093 29069585 539438973 746663727 165842079 453998012 444834568 547615445 720202188 776218141 873313030 886466322 788689658 912951176 606393680 982581261 389421752 672578590 167056744 637703025 967991857 998645076 767634888 872135635 182921854 998928764 951087757 992755351 153050081 683291708 91934254 985702812 487164169 657384015 142685843 754088393 147771981 863279612 815978760 907176686 351477055 620886285 782215334 867667579 429877015 432574570 558624499 626795919 735346923 787712010 697473833 990257188 8918635 642014237 396955246 573867851 187983979 825113341 70794889 677782808 475698564 563135984 398618109 676889954 291367311 789786194 544347222 692569052 424867861 588058960 886621356 915123344 451684297 631091769 362367096 505475622 749085902 924590776 161912133 983124381 67030854 168215267 95541301 879693331 472839421 872660118 580088422 733393471 239831694 898189925 248875991 614211001 606358418 744389222 887712661 960025089 979311184 990786985 765083145 801463849 458429379 694891250 570709808 646575247 545920112 677209195 899906895 950655534 267251071 544477533 955721709 978044076 164725514 584025065 449832828 764680126 187699227 268206516 192956108 777768206 630892279 734059062 615891803 792657332 249138945 679264897 420850267 826919819 840048380 996264546 931340025 972558284 200535928 256804883 707882200 937755650 983914999 999274523 420389337 800603773 47766275 106762348 897690353 951000387 59116006 683611727 216067628 883957575 940870090 975892137 941524787 973318061 82952829 554370861 876615855 891806532 779042507 866222921 355909577 561118950 934305054 953855267 917526459 987992502 276663037 298053368 820792753 831714274 583709434 942171488 854307236 902174537 666510499 846061360 704304717 908891746 256266934 981780341 660504489 692223027 923321329 989375258 297414367 413908405 295369124 781328315 291094526 513624507 383613064 823921152 723754388 883881549 835560599 842924037 313493493 792748999 52231886 193349642 883020885 901696610 908804731 960825510 619277354 788432991 644110231 737817605 678715395 933925952 437353356 824783023 673064629 799876864 715688847 775364857 711570681 967558542 797160639 914396949 135722141 760246154 295792008 441453535 809815657 921933062 168241974 293576278 173071963 200075648 119350317 516561282 470846595 559371102 679879454 891316394 430338141 732043881 498718017 828847591 29654139 434873002 143233684 758478115 599259131 760789900 900360228 907995068 582559005 842175195 194253055 690174524 557361785 564245244 932401490 966887395 674779566 873707876 202296639 895588451 483831575 738856342 73175497 553668388 819535934 998483034 984891526 993826421 227041306 319315767 36688333 888900313 345139123 463738401 457848379 645794964 363791561 786687670 917174585 997287743 780390245 901680365 972685506 973449202 397765569 587151806 689189209 754095355 691133014 718180898 619074974 925508596 111437849 489017782 48296962 171116222 858939373 863278956 814205850 946323114 415663197 727763604 603667891 942132762 447820512 853237328 664477079 675521718 737823860 833992254 583856513 655906997 905094171 941046482 715047871 975347771 795370737 841612687 194513439 558260224 349316081 663312634 477714014 545219598 668248936 673185496 543716118 767896807 354060431 470999235 485011867 918799562 964575905 990825742 948634320 960957257 945760867 963635496 720351188 787131104 235831679 516569791 302664797 434780611 968698549 996835526 160729904 394422997 114690138 793988416 832135747 900320653 156522846 424515524 73576222 435690901 672478519 823684391 855058504 912666212 79763445 758073728 563944794 645371016 526376331 738755131 198522307 400133275 219736965 629169267 538579553 541940443 165615178 491589782 431033858 958127413 187695479 721335353 655305592 756224271 547438068 964917153 970056467 988523363 920615526 925029464 270765199 684225474 495258787 672116540 565765190 798659110 44555149 71217709 130913216 605649180 630814557 764712194 735853181 815639607 647064841 821092043 404343814 628514035 600672046 755492095 631879352 805220645 678297257 986916896 472413749 571993069 68655417 653458796 510482067 735679593 417556637 587200840 617638912 717670142 87182065 356561855 304663237 960543179 971531882 995059111 974677914 982312135 999288594 999444679 198168564 774708247 332835051 900928676 484518849 780376677 995327905 996156995 128964351 816297771 616950744 999475211 698001480 822991426 91554134 820040583 277861737 702062888 786091918 841301449 33022404 221814776 615414048 651639744 917873534 958814298 801997557 833307717 542587901 876326556 970070268 972561420 446655179 785344116 960195945 978177076 953280592 967045368 482301578 780798551 252618643 811458920 414400059 888728574 67429181 77383609 22174397 134732641 912060296 941745922 459563537 984646140 161902799 974982636 165843714 183522744 434594984 787463358 883192456 939790120 186758619 594906519 609040030 672212914 71865304 710484165 231256903 719721401 425883499 702210599 774961509 957800119 747378020 919336524 968540361 986298121 91710368 794863268 193811255 285950699 548061621 743942245 756625794 929366706 642515310 764283967 740039416 848277652 867601314 953086945 172483456 196700148 476903729 873171076 355647031 461243156 986697945 998902721 587426141 794701241 103473764 866644643 594120194 654531609 989608652 995297799 784433515 811238578 745884057 995334959 763729695 994985669 828804359 958649482 834480929 994129129 188465927 870690350 398454176 962809192 971528644 976337496 205754726 294965858 556862098 771926251 423651988 920201288 616367415 971281930 115237480 270692196 301118753 819218871 854730674 917379323 182078949 588671108 150177719 382080462 672211470 912687870 883406227 980632359 245331759 685971048 937556018 938601773 427306568 547401005 648445617 843904917 622192605 860930368 683860563 935856776 206650648 361700172 477566537 924327330 924657233 944184931 292527315 671304957 311076008 752557030 841745224 856527285 869239901 928165627 727416315 732229788 408485365 781650988 971102157 998738498 94634552 247474393 277850673 817730223 203611631 799425774 957773495 992448374 974313661 987713890 288976240 792938865 276489655 886298541 531921568 979560432 156659083 700013364 804740559 960863484 951080204 952881766 41577325 204272391 431498369 883374308 406218606 825967152 999991123 999992846 743397918 832008870 716616868 750046239 853768479 944494289 209031088 636099497 573743845 710727260 419852693 499796816 503467202 999019733 842467191 848356720 74836764 667161353 663508773 794428976 222822294 450918433 198484089 517922993 221571666 749867590 33689581 107287674 456561557 691222736 215867685 898785932 916789143 927185884 877651925 982214575 525651788 772018455 387924749 528785974 992125643 992845269 686247020 825882060 674952574 979190812 131016971 464866373 238186362 808900973 573260691 616414136 769400078 987046311 988478337 997502353 490403808 744919222 49156198 287111197 567716424 653339141 150514705 744049115 185918953 484566648 575707495 589329205 553268779 562555717 318898731 771090954 98981092 637795268 441911291 686593325 188149218 727960681 57567817 475709732 390357310 725467371 922646765 993808441 930282409 995032577 280962611 971467764 816074232 862828077 956231493 961745938 605484734 763054649 154146186 877414892 859387064 896938303 677535632 834709771 696868040 852981816 253785597 951644572 563988404 772665317 218790294 585077308 79946835 504657944 183818914 930546716 833273242 892589860 839164412 865795346 724691835 911077367 574701269 738678741 395725256 590171165 466480689 865605372 642042478 753641111 820034496 958130111 491507193 739575922 928926263 931800913 913492367 975855477 420931383 558871855 655267884 726237749 37058183 327190061 355398455 579456768 504603725 766332520 856328315 920584053 196276548 239300670 830636448 835980139 424623595 875798478 771787562 822068143 228213952 631414061 535862346 841280844 98288026 708763937 887942612 958010542 307251708 978397928 734962034 958576270 290232384 396605672 295829200 486087380 112837915 901981246 957289335 985893607 230999417 656763498 523313767 635151517 900264086 983220281 603178805 750953184 90019022 337772474 524315929 939113052 60813819 517427775 672480310 843675263 132368403 898701984 928085265 939454653 77829685 661855645 262633211 363567461 495101533 971023597 630586859 799578973 888394068 963228334 929476917 947543112 509185754 891090913 52798761 538522683 567048023 627430240 3231353 136793607 34353850 930612074 877881428 931150177 131069240 940174920 101232342 848650781 947470440 982929309 428008323 508073681 730672036 976772737 472470744 995009465 520389069 692903990 432101506 861850537 462171572 683507211 602216948 650879477 768028825 879341808 111781288 364715101 724727177 886005271 789209635 936710560 515843676 714250489 27488662 353626814 995682852 997380634 127279640 140053697 374788531 992207681 623702940 965537065 90209095 475868766 594691496 695491952 796476050 865666096 93626988 347738171 563132838 762444772 343557444 464064719 116993833 998384305 526077657 839273147 455521538 648394337 589595904 795976111 137562653 372114245 571186415 609225542 707832337 931702068 672385862 745593387 471312769 796702248 540716650 559199778 349620763 413926685 115121135 706075906 328943413 444196705 159351682 431373174 24541587 675744307 942107413 971048321 245514336 472559978 811925234 993098417 520100991 888969432 992334386 996752383 267716955 499676433 296351248 791000856 485395606 629746823 79778807 536724594 447428141 479680295 376552683 557469947 848198383 868692383 205116221 474482923 51308589 597114117 559839737 979407205 731817250 824989575 583786857 768259775 244633748 902078559 207884318 331698969 205095691 560986318 761231422 928954699 664749186 672383483 62307195 203523163 597575594 603467626 232486848 284589590 357420462 598707468 509737477 658989178 183790771 442726959 855553563 935231372 260407472 263539977 782132909 930058744 209473805 565670792 230906997 808753143 305280210 799143858 290761511 601197122 948673886 971098557 926510375 932825206 899789768 946893574 875949955 885660886 972184839 977341311 69185491 364278585 360189684 969819439 987815331 994583081 460851753 600805417 134013606 881792092 418601231 758146268 39325007 114844523 507510302 926509740 956541143 991189579 656387587 851837467 248540785 742293326 818645658 913426499 203517429 217036859 154602722 621689555 537934967 986982451 441282537 813708423 224156697 759261516 982181508 992063776 261777588 877527315 573239427 816627364 730616949 892598265 591909620 698178160 294754294 533282436 626893993 884396075 226252432 322038668 514727423 835410297 675025219 689292577 773491778 940108385 889154372 899761081 366956789 822012894 571110687 823681688 354167503 371689834 641324522 772376779 945915924 969627703 442851173 665227926 109636493 922872168 4258399 741510464 408091834 948655034 833835333 864833077 565307379 932524072 90041808 95195397 403672727 920529743 462171437 863256246 48777100 773232535 577479659 917473007 926380300 997636736 547646044 744706243 337181551 396466857 253681456 978676621 271062327 827966251 506013380 950797225 452739275 727349569 656754989 977459887 95719517 629089862 828009991 862417058 393960593 862339498 186678333 865597773 534626983 915352635 777528816 835210541 459551487 722899175 118193483 975069983 293385644 512595511 375308836 943698179 393407971 904715089 839276600 925423407 986447114 991463643 611526953 842326417 426849394 753339578 206393214 577597256 877175690 976424334 508608811 793333108 778566269 782099198 558587041 939194142 467140616 828595320 303955940 895760319 520280495 620933576 416859420 891748416 435415244 507978085 667562725 830801907 448453332 974324912 913264806 936249097 920971395 935400608 545007504 567340643 985537369 997268091 160282894 278531143 126824445 137329984 805713261 995964210 26618739 642374907 534903384 914727572 158073969 546815611 793437980 800009692 487661646 698952624 277958996 418945820 718539334 952107758 567996944 713820266 241286827 765786973 559022499 881674025 905299965 937247413 52178296 341430740 391727427 574646554 597572227 844548005 453814317 588143558 157949657 704858693 584598415 909255845 236706148 925326128 639227915 976385492 553587429 826247476 493439096 689195485 836858734 864819194 94896254 379097245 10858754 624754006 410230667 579237238 258103801 979766883 479915442 743720210 980325600 997141699 595776417 803404493 664189349 823706369 104015579 742384401 279001052 570055874 685416340 712175575 750664491 888074366 373363661 544140471 413582205 800253696 977557809 988114998 475872408 963494962 641183567 717886207 503659500 810047656 196154638 931788871 596216830 807232734 87620084 933586268 444822205 929825281 174515404 628496318 931741846 993557047 399363583 987745734 645012339 925777063 621334581 674307291 872823630 943369657 794732210 959299411 775208424 923532584 425634124 981857498 699887493 838289890 679620842 833605294 791984072 893518535 130415215 572182460 148980227 478595539 500916258 711456897 843870627 997954157 437632421 576128800 654893823 659691278 610184150 866604299 331203993 545024724 263637797 905281571 752542356 957620654 702178423 968647836 999825116 999842451 113613448 258315913 189343199 708707174 902018863 971909272 358869232 992257469 725312269 830380546 441219212 903348016 207815476 523103906 526792203 667288463 477510978 500358796 292132438 312420755 366764966 569310034 63127437 212576980 841913876 975683176 872614149 872948391 544887773 635368205 442462615 818474750 255476453 893345202 32266402 214140884 621741739 897172150 479276056 681038638 641858982 960834530 260368861 267555950 876846266 905631201 113610514 120191285 481857561 726019676 636509102 906249995 498917718 611296296 172284421 694377310 957028262 970982051 613242069 824081142 309820965 317950854 445335329 580305270 887133944 963174842 585585403 629052591 743685427 836321666 465704505 597897924 798599363 995412609 529890413 813445804 913762287 949739673 828990964 847864750 527948717 615251498 541667058 618553882 888979414 908514468 886597504 906839518 551239133 695505215 45545043 463347479 981417933 990344026 244724868 833026758 819569105 919078680 912131772 937117937 868933340 921653747 267975823 575746710 836609812 978457920 159708912 172182609 80776765 860660516 917217923 950452250 826859690 974616236 722541061 729211261 110020492 384503629 772286319 803125868 377563444 749882043 339222332 829153161 90375090 696324242 188836471 837334500 424506150 538234220 808873283 923360675 449360815 627760020 29009188 216141622 587110094 825697480 763165330 764253113 636861857 997167080 48909578 531849975 501800307 559103904 512090824 885782765 221186509 312646076 670607153 926032063 792976469 862632386 152565079 306204501 244687430 258921008 762606173 951276784 499115631 962187423 120034467 458726522 599712107 806105657 303091754 484500505 109044774 617554597 776542179 839788269 663531060 870423590 666331040 782191335 266694079 922157940 321156468 583373335 946653141 958593598 8226176 572919409 625969028 960557209 72596426 589097184 380291817 506762980 489933428 991840224 624623058 768293725 7109621 757958921 578525080 878894815 740898632 972058476 723186558 954858472 374637300 940654751 568570577 720352141 110122600 612555467 221295948 252588769 950242160 959639217 354627607 464986403 790500933 995119844 762123279 816397238 537371791 766392295 323456280 891539416 548493605 749685583 330043227 983502219 872420806 968659898 698456358 835057511 120503079 927395699 578820804 688758867 730910525 990646129 192065340 323821901 683430426 690490136 177252239 708036555 81328875 777144725 68299561 173674922 914025403 996063632 255210333 770136407 632052775 694483669 257523745 618206406 15652827 516496234 20090715 99911763 702143603 948646682 235370446 460476579 385827720 646757584 970190318 981928140 644459176 768782011 324512657 942358249 218807609 817108198 387888024 509976836 390552217 591473891 583025375 617214575 356618244 532543353 424052645 593254328 747940012 891408547 486399118 861960152 788884390 973099305 543120334 736245960 100624232 354957614 752429745 761704915 75245237 151779174 133764671 885334803 18957747 46001659 17897418 799261020 493850104 605378454 673241930 940949737 494358750 588078143 866503366 916083070 343202124 721612020 854709999 922338737 693428485 918422192 418315167 484633284 416350929 626976226 713616634 837788533 922036543 962058192 97466995 391005556 110866899 474777670 115259868 134283062 576718684 840201120 149442792 735362913 897385803 965755148 469376678 566360347 507815127 987077600 573909919 758868289 57427194 773033128 433745201 874015492 406376627 567541196 645218567 739380017 864487183 950490435 156535058 214928122 953049832 994705153 232493317 702999249 422086836 436294665 108573162 378424659 726025612 852517461 353933278 446283616 410267095 774757220 928423104 984834177 746436073 758027784 441431941 868085871 614251505 655868031 23377106 945401367 677870924 682718067 24312588 478593715 136178155 356847558 774693386 934869125 196236258 921612914 25605584 464110183 793088889 934784570 617410902 891247503 235275174 465003876 57516418 851251048 816099730 869168338 742606934 908126436 398899015 667150611 896036569 919399169 60881285 550102654 229255021 643191254 259372399 496889455 651700126 829071162 871332316 884258754 502347363 689725487 148211317 835399470 374653175 736352866 436556567 690982838 632609407 655548112 21055141 520513910 550322652 847325541 668366926 888956994 742659244 854899937 723096506 843946203 893148912 961822802 953254699 968532863 718872682 752582715 191310582 539632297 137327158 608609355 572485876 612463917 379149374 863610499 85001478 371025364 762424666 849621402 261051726 701680847 366239978 652313266 198725016 703616299 115074467 899381259 529054947 812963572 205366325 863589292 559932613 839292524 33638488 368955656 317705856 704035984 461932034 948711068 384524000 547393936 906237040 935788521 546208792 890961652 763452232 941293217 700779021 947639045 669418856 797812148 143356244 681227854 632390466 939863620 960994488 970262705 180280632 922991301 293229177 822238391 608086479 847953172 745953846 758272606 93778555 483098063 610128104 766113855 176647503 863327610 106453210 857972660 642463237 983385615 971633819 972531121 832175246 842440528 438126330 717420719 331232354 363633730 44483309 934388968 79923476 464857819 187318672 929333005 672832310 839605735 225941505 961504842 159520569 316534708 883941112 921575978 219632482 584893920 906906390 979605999 864320452 981932378 665098719 732890897 300300176 397574906 169178287 447738266 231622631 808303172 593803817 899283862 609604320 969008205 599260944 761286215 703657558 841134800 503286934 784401290 932890272 936896115 636486273 665065632 585721406 704164555 857465946 939736700 392562541 551931852 853707507 944582463 417239260 741421216 536686899 989489451 232968010 735154755 727698852 911043273 583096599 976960302 354539957 562621453 267210028 514186558 908895335 985221178 372154317 958068884 474777160 790805678 839300044 878491736 914111428 961364971 388017549 639525993 132684218 316207110 168396108 929019176 722944814 809389582 717914981 996629110 750411200 996626305 396174512 400869732 707295252 766328691 234204791 723742746 304118204 347295036 380509149 910797191 368657889 435626371 12789676 359055817 293814745 293863474 43097746 699347893 336812804 613370452 146662285 878294101 501184145 655529657 349462562 965588598 327579663 491062256 92935928 735560988 901183258 906040719 685354255 924167717 784440748 881354402 936820431 985578887 76508463 334606573 150849156 442172116 643175471 776733507 17363374 95771781 475500000 713113619 692805068 818900060 836543749 852594384 305140337 413545704 143653718 462795276 511449138 696048317 237620753 641906230 504531078 539942494 907174196 955721130 48716115 347257665 503317751 872881863 492744683 538994467 292867579 422881832 514880876 971986273 771152869 975724872 548841558 703013791 2591489 422007690 242904727 284434641 873765690 883061267 823148038 838867886 286859985 521495512 791197326 927043821 48363633 567239577 980147716 994022787 832946044 909546735 136799255 185406757 769717359 818021478 74741720 715647197 881726667 932950331 811325587 999931299 999709081 999792923 436225657 820662535 307853801 664714213 678757180 966501910 980318223 992450459 81750499 620993277 112410522 295819914 340171780 608067004 721545049 835129122 981815869 989541859 700107316 922274047 15081958 316619756 329204202 636165138 712953696 957691249 357527485 424604852 925147987 990400299 20863678 444583178 436780753 719760893 29485077 963774315 566225956 610728278 938452275 967460124 725278652 980477424 472128320 665629317 633507039 821597607 525266021 633717722 421162032 657366422 297608752 948065828 1462761 958378465 969462550 991679939 830571819 981642978 277549372 399217690 115820358 709386577 309298644 605445107 618894719 828357695 18856799 502324983 670348773 859969919 375727673 856066582 220706365 756126629 516648097 807262726 540351017 928758958 829806510 878557165 835197522 858181111 72949481 661064784 946009824 949211300 403396251 881379449 213136680 783802621 206553498 806314883 515380673 771833425 242429996 995899079 698923925 973510646 132086960 338262873 944133761 954208151 230507554 708104841 496486527 701431528 975922537 989082479 24679916 127027848 481482261 707260526 68917306 469463241 569342946 743989462 819399698 996754723 862680575 987395564 937873491 981429833 838064203 859065804 950177809 987298967 219528959 258149762 77676832 559088245 318778266 782800156 424866303 690866076 439866652 547063107 194861978 547002602 709581054 843740883 585867186 778926231 967956330 992179511 308395231 614018659 292114480 538935821 243529174 350047104 66008844 841509983 600817245 748780357 909274182 909740526 959938754 966696218 929972222 961505381 753204062 932974001 595206976 609534118 526027075 612196110 836723047 837108522 186094138 649872408 935184923 956556959 850342048 948053231 333911839 377348167 451661152 912342218 242710031 815490698 403679712 879815375 265215934 297519041 182817722 935593389 186130279 676851801 820856894 869675791 665494695 903054552 969890444 981507538 62641848 649336500 830915425 938148258 427014140 910309872 186684155 982447712 998376885 999769106 535816516 763380807 88041608 305868112 217633229 832582949 704632686 957618602 735573396 989731788 862370330 934881258 606413770 622630174 618031347 801272132 838717153 990612115 935411092 982452561 59957865 147494937 529950253 758659533 696327609 755619978 804704073 960237607 928784834 965310418 588538491 856685485 208194987 248285120 176313643 778953969 674011346 865423634 352431802 801508783 332356708 383766522 243636330 874086736 33060945 338716805 764248734 955002951 345082935 585920807 85895432 867811908 764567006 907329822 187968151 199363285 367906600 747308068 981513003 983916030 121757512 630428079 339479710 560368576 813684471 850987702 203111315 547609844 731675787 891382453 248452060 640457515 980329881 984374398 322214654 726169862 89426631 618061631 897416789 928409137 600633783 933110284 555231113 886347681 467472394 764080378 283600483 997053597 889792632 994981507 57515751 878170362 155651275 488287210 707015469 732258205 878819206 981325710 654219716 918835828 480100365 588818880 808408270 897954357 700710714 944818426 207539361 384790890 161698855 385647034 711915359 841510763 255614982 711525536 618124856 625721391 397288092 479098835 571003049 841891023 342274177 898405243 410987283 634622144 33158223 633500607 948587592 965118637 147816989 416413735 82528317 991316206 561385169 972616822 787992515 850213312 15859547 962882339 731637123 972080279 630144286 972665198 106359552 185634949 335574364 462315046 614912532 639436789 792386300 811536689 401179005 853446103 586898784 747201600 873576865 943227572 596778955 597163867 713895423 857011968 961863503 962418728 579162747 636095908 801547533 925349722 149728444 943512833 65674569 997994658 903530433 927644137 276114657 620299534 478253763 748514882 801011858 821678120 144302503 670699603 851445099 966231121 588047219 780845767 398543499 910997958 750221606 825712441 560165928 622030431 947819020 955193307 59379001 491794515 605236752 848605110 529032996 756716451 696565971 843188976 629437769 751993691 54233533 826766554 457688155 591487015 292487711 748089291 59585614 439449688 80573099 393544376 439998007 917714697 534365039 837828163 296329379 936798104 897509523 983882690 7956614 98453614 133995541 913316654 139848294 583978142 227065901 235370807 389320060 869597705 657209560 729959964 136716780 285053775 866951026 958357663 331301828 522017783 728891071 971638301 722131699 792639748 239340135 352212002 501795440 532482411 319240843 805771122 809504079 946103081 359019542 641676510 463601100 569950879 857553973 906732608 421244932 459233550 522241694 596126587 281239891 780007988 720847549 848000546 661628725 838492657 926322102 991741815 466973099 702829928 370975361 822194465 20609882 886857697 958875764 969300064 483528745 703852344 292268856 496398251 837485542 892861268 240465980 813781089 835932979 981585741 989123625 991671231 555611179 802841676 55181629 428503619 957092822 989653537 431527570 817224655 529686927 650671562 758126526 913261440 710220780 805526604 435857949 984796105 340275200 362066384 570556758 908772411 277699789 311611719 97666659 881138684 360406038 401640292 796683864 988169275 318383352 595648678 159086444 731968716 349430626 424538899 943715552 997017899 426174226 799863332 797377030 979787903 780241711 915073830 617606361 886739275 705913850 892697635 749120943 854299238 26441904 403703681 961490370 983624016 258760065 856628237 820018437 922234879 71695011 135210019 752375286 753248016 351099483 383047376 590789277 647122732 885020045 949227150 243937478 518858267 583496704 955620322 318176644 954506757 855404008 942407666 741585629 863002994 991567050 998986920 538838082 877229125 882652724 899111403 750519948 945769124 977932458 997111437 558009007 990295844 384379221 779828405 647355217 651012025 819828401 839879843 520083046 967194521 492031891 805716163 433212902 594777887 113124907 135329094 974363665 983173722 901193947 945914925 151241745 524105190 941226237 957429232 536755635 643018529 307250305 863125333 400833684 709901646 575501933 589428499 447943195 657175702 367480761 636678314 862848197 936468440 734740230 747905623 747167222 792099173 612113757 752042297 132251543 365280625 149857432 394017649 227056457 942744104 607707130 846587766 39837155 727890760 451372745 534014038 139134050 625130348 978405230 999372907 660237109 837813539 558489157 838175155 670726625 805559389 184623453 574804826 650276536 749934661 890095033 918799195 730214581 909774327 383432266 791747556 362300889 681048446 748875871 893927422 255279860 475547353 116210995 804505603 635289463 690239085 82121180 886843082 320054963 563391044 703480276 820725882 848560137 862360328 229882907 795114295 128507138 474480793 529928765 945204835 569930937 751228900 83708923 755318344 760061890 795397797 778327442 931452857 383126883 494755610 214745397 425698952 738327279 824377765 522799956 609340541 46774197 959702984 737745221 774951454 499528921 913948886 733379918 752155375 601463359 720125233 261444349 866032526 571658646 633983079 442416804 790773680 352276516 970535784 269037478 766163261 841447272 939603105 829044274 970287127 540013200 547564231 553674820 621608704 636219753 847339831 936910353 950887615 757154157 864057687 465975666 485734456 18750886 864585303 587926623 632891796 553358855 849154689 692368992 784317955 877411411 947482842 673548286 856004596 13094977 147065681 464150085 839742396 98130651 683437613 721520709 979430144 884136374 953433692 90636890 116215336 134225726 251313501 246209563 642462563 413265914 998975660 687609441 743723066 181872644 746137134 310829458 952394358 35200565 416982642 23788665 308489920 884774695 931497772 106034922 840466089 413367693 421992750 834489138 837671889 266563935 857423615 439423806 676368064 291747973 302092204 627539372 889651386 90585277 854501898 252161942 513870946 471049376 713633301 462752714 917489970 527155258 968903838 741946189 894421616 225566764 901861920 432803025 508306275 239253332 791888301 61393592 922798761 154272759 915022631 90376693 252133428 995666318 999969523 441175953 540874662 369984194 939021403 261990462 509953911 28333374 881121544 222517912 948284437 774999828 914028509 342150276 345836316 911679452 973489926 688519558 765592179 414290890 738841275 236515631 949735371 69677832 410674203 307523702 760181163 266399282 740035031 572593693 631799865 625236096 968842739 351824643 641790550 660331211 902798316 268342428 477454563 824552170 996788519 937934271 996943326 958267079 963392867 650424708 811123533 19740491 764136955 892025895 954524848 877186212 994222193 167999819 230451072 831645159 968568584 421434928 746165139 986865998 999145555 829411792 862853548 998909159 999914801 868445794 935244160 531110587 595793810 480965607 838084690 305703285 832674936 193195661 604810383 942757457 948150431 957898571 960218843 412097921 673463001 353100691 821645296 799068404 981179733 989871593 991786589 698309970 815775831 783992745 921103602 230889952 866883825 314502748 628682273 908835575 929633324 12097329 108377731 320825064 956924908 296638127 823889264 336115093 795728461 488265252 840992052 218682185 754393093 573443165 628882090 925499430 998617421 360962877 443235219 501175023 536934222 62184477 376466043 911056562 972961045 120124027 256351687 338396293 544629453 450632744 987170509 358506486 952571643 985917055 988595738 416366067 733712411 60938062 239878783 701952464 837149045 974667804 980736064 289326427 770001489 798083113 857985026 82491811 992426946 370988078 995294840 785596099 852769521 468461026 686187722 593169847 833484653 999927343 999966824 29914672 937889305 654028757 797610659 212976028 553593716 681330600 998295093 720423587 878761812 218936833 698276293 933620669 997590541 68786983 707818350 974265887 999990629 588817321 648437285 185253032 944918821 865126284 901548213 397366422 981609333 206575220 308833788 751051611 853224894 410505342 761275270 716960876 892330588 849401685 856184229 230223733 314632705 652170504 913899252 543408728 948888049 24999757 824276415 201291717 390374940 602970737 895248647 149144759 359430219 256031731 840209109 275769981 621908131 402654891 825871724 280053378 662262199 517953934 732797158 612132253 613565973 57960908 987696932 232323558 871405229 370344929 542787963 114693515 316536185 170072493 824984839 831827976 961670909 88083898 788019664 266536406 698086691 638215887 835859696 72973029 487287759 993565539 998258177 275694776 992637925 299504445 575601939 50826998 196945573 83995046 588600671 88391619 185009115 921374254 932418508 134389284 723861779 141898843 342865463 268952600 992520253 554597685 971319141 131962727 165677149 309024059 543778641 773526241 967491284 156524028 666140058 468328074 624134103 63293636 272896642 601964608 919892369 664468278 920941078 737458505 788710425 417008666 845085594 766062696 855185938 660055316 966200395 769714730 954775225 380592528 714689443 689980583 919382970 75532322 405488506 350013329 475687707 408432456 965160230 202885833 461452243 346860590 636111297 572426097 986227942 241849109 347166207 78902950 234272244 33375112 883291449 24083916 87037364 384638683 506990775 380313113 724284652 965228015 971633428 318706751 693949021 600101214 614017940 699584066 713968984 395871390 451305240 402114128 757256372 386032693 886809331 107086226 331512840 402906960 963748917 212068649 693129749 84942271 382272023 772697766 996015995 203791835 750290587 72284636 261609444 940300711 969946932 721484858 937135848 280959474 374910358 12564691 39498790 410721475 680866590 758359340 930848334 817191098 889794848 428383061 842162131 73200976 825206531 346658763 999970456 651374929 913086529 15947488 948462412 738436908 934026678 192626822 962688252 814203455 985415674 572421033 996442640 224305371 824753039 556644891 800797197 260550102 794941895 774707201 838288308 442062361 792835072 15096151 278096257 386865157 867916279 904776749 956583152 307229992 374783968 283548961 680923750 382167191 594218402 187710186 738765573 8776532 808115776 499703023 777641263 89352989 130092902 378134328 884416455 556718542 714477384 980959016 989355805 794516959 939407989 992316301 993890732 222482915 277267870 934181851 959674865 636896141 785415024 265926407 435955336 92576271 766508122 856210807 970644364 469578841 994789972 614629692 780414964 884505640 967231405 255988575 342927909 732593176 901681159 459633902 592860828 310759469 652180592 522817674 781951535 864351823 890443126 93980251 463407400 896071248 952457029 663408512 826349704 837051229 917502554 771893091 936701374 708233967 773271682 852726552 986725278 760287769 881247197 913919334 943909856 95678604 284331818 66853170 579370057 706155195 772548227 558001762 770070878 626729594 741394007 574310832 891487380 53957701 711175582 213084797 925114732 798252690 905265396 768870263 814689300 77612391 589351559 752148650 878287746 890286110 920755079 680051680 680918587 438714327 843461967 209244120 807791320 717642000 855154508 94401305 916092331 148703611 765996949 474498377 650069119 676026553 838603120 241056231 918960403 720903270 755158772 939069996 998118601 913403135 986598236 218233875 917868739 708397845 830966576 443292370 821683272 120002745 618839597 588324082 930831708 713468978 950321806 101337802 411725384 250701031 869103103 150863879 630035705 745451387 967725411 960132339 966538442 735846374 944960331 512814411 993533548 334209463 776696921 521506237 624055619 527701248 630612443 535984476 691828847 824487441 885669315 577308357 858402794 757256800 995463479 511969267 893994670 871911003 958005740 276189405 567132756 423337869 671575635 134540830 166963270 423111702 728409067 908188129 970215291 198103558 715828533 837587211 934712240 452147606 941431336 816907760 998224147 888916885 951874158 504302457 942537545 817142582 851289744 572574901 621610240 326123000 590108665 935436133 990027036 480908695 736395814 781631226 966082568 933550027 947064474 830272267 934778056 121284146 362095266 35706184 958372256 640539962 700990276 628536878 877410734 375128510 669872794 207460725 717933571 556000493 583619279 526940392 855012550 280806640 704416061 201477096 803935131 685220204 782894623 875530292 878668849 750879697 841631038 456115993 951511598 725498251 737590169 935256790 953400967 948762950 960164674 268772703 875203685 601168118 837716980 572376058 781262076 209173949 738551752 837659128 999434628 168082390 173539846 879631773 980242426 973573675 980615215 93241907 502761038 367050104 609685907 330568010 644281340 620510179 936732256 648168955 905532625 887930343 992254916 624427322 901524013 255657741 703665326 766775353 882172648 718958012 805569509 345062177 919272130 646352432 648446570 459074842 525741637 254468658 536278948 891394304 922158149 976657989 984721852 457525274 683490952 649601439 905799232 465193331 779546126 750187873 981524679 396519476 582280995 512095578 640242368 209568069 419180842 102994781 958970978 365575932 547645991 768183580 820932293 948648886 978216570 504490890 696077895 1466580 326567258 688628336 803186377 535057339 564403033 343861818 771806393 311433892 784888959 540394802 907566257 42613549 616000310 540867098 791932671 721445898 933208547 851695723 966445206 681435489 908670629 805966468 894396445 773439682 774649530 277451645 585813843 710804825 837234657 730519548 926595615 674212926 841343339 902903458 939695662 409691502 801338772 657282082 677782889 480085821 986576813 755006822 765173760 452330124 744065556 696574842 991233413 788492611 858532812 398494373 754946198 169040175 190932106 698409954 931426124 936428157 996180506 346205185 897651184 47967758 674601904 770808070 991902205 360676 708165387 391629237 628708206 937511162 940911502 846282973 929330439 702509383 823893578 77636301 489113723 752413703 752556848 852842110 935551395 267285531 842698217 722802688 849082974 528065596 672267528 629488026 631246205 572151260 698743629 777806505 810668577 365217973 778571787 982745613 998879080 968252355 996464136 462859968 483683622 422921133 971180003 933823152 934350258 501726332 705960906 845711535 896811159 299553353 472684507 550167028 758404689 414295432 878509942 80009951 981422522 597077639 628800089 789336872 865786399 330336893 333502428 722188158 816006830 511204237 698701209 831165178 915679144 370690639 582913832 588516858 715756990 166998334 443720260 914075528 980411996 764858997 776290955 877980925 899166493 79836197 350132467 147296268 637701347 766307683 976235868 360128310 362932303 170931893 943243091 50205247 127110335 763238911 994875986 219846167 853035676 385067536 412134278 676365723 896463621 353146470 664748697 195059376 881399492 812641214 959634435 872844114 998473178 569257538 674418630 994577483 996668052 13468543 613805100 22371561 750227550 324516006 755887526 871635059 991678904 955382306 964169584 697108034 755147321 143757365 826077656 338917129 397710332 248212379 257006298 843300544 932787091 544680897 574268741 16912851 575444749 207709209 819573106 248289965 419595641 43270942 578962024 864284689 929880378 630183158 840502272 316116475 582441125 496277770 710776312 613941522 730019070 14848335 192873831 721360158 723583727 573516114 973459806 748620165 931585406 687352220 755352466 5688897 762757062 574588963 818715619 316656877 744679229 542341918 842346413 990715270 996342947 87664597 803919336 711037295 967270339 68170235 953126373 116180473 541466464 950028219 972937841 709790652 803625401 285088412 922570256 86705156 790626188 58301491 665639619 835924739 903630969 313793730 838365551 836612764 888128678 100836583 539793428 528807649 668538667 850729895 887180316 440777628 616283680 760686572 805382673 942861699 989453598 244743838 391983551 130218164 843810819 608410224 657283218 272537437 452841961 28476217 259908612 588857154 717680495 21597400 251224509 345285680 574179692 571930515 734902051 171208716 984372950 613304589 792817528 611100038 736345802 41564142 686593109 92645864 170172155 934324806 976704274 909663248 923358769 606602482 907620414 639081688 759423409 863702469 907085744 788725454 964749592 421448544 989839860 351200818 535828180 868657483 938858452 791129416 881714425 367406829 816885282 512160819 547739573 709420133 960651179 801205873 948005645 536412711 864673499 546605592 606288112 938849337 995711979 17251714 470485022 678664065 867466930 517210873 946610384 148098838 180876934 995404223 996976609 930164162 938510914 837714975 882585306 872960573 996295408 932296223 954545156 377345459 599053963 432814460 609046070 733177357 936148087 28101737 394202793 458244147 855424230 158030671 784097301 729099172 735950845 419103923 859560268 493549132 663030393 648421852 749414263 418725482 465117539 229052257 272876757 927630748 999598540 945592374 949569992 753460175 968794555 715535406 961662150 757809883 859174119 718144424 908159782 9412098 148191251 781036920 868834521 768038469 956400047 124522865 977068719 556061043 607400653 120452696 561062812 903997170 959494270 116613820 267839651 511832885 689921387 713429166 875165616 238005876 372633747 195031008 603721726 877369662 931707885 146454958 988969569 275295786 373304017 60470971 551919227 207430613 879603164 391148413 431285789 816246028 922104654 192833006 856614068 761004469 995193424 737279810 931767356 621779769 757412295 904968696 920076342 728201991 785564632 333704486 912619079 907792571 922496330 432978282 763244495 699975740 783121849 726400698 959268906 203461886 452246048 311870513 880666668 884850108 998622633 825567541 978707877 24974735 613447120 91336210 95575418 378450683 618584575 825995887 923002760 701863538 935793064 846445072 982427018 967712674 982865715 588689860 603541247 686828709 726507632 628509280 982447074 975508754 995072722 791638405 884926521 460367757 932414889 28832972 900108996 478743002 673392908 259158223 443176031 341063717 532674316 52448244 841601034 298262471 902525322 995402497 998506517 451307127 995439826 529314122 614476097 374030695 923515216 460447226 752623282 658407555 889796448 378629862 801974875 152017389 445205430 590021046 665635763 205629934 343246146 599723281 977306631 440248008 597454624 637466837 762517100 448483275 929971368 533839860 947951029 285232774 812754751 18089284 851504194 699507091 887549142 577648279 918368057 102909773 432825513 776741849 800104512 85793283 788214038 617282775 858489406 769162677 965824206 382621515 593896485 144230415 392717722 715515769 774217069 9219237 976170029 283232292 503566117 843172344 905592751 922379996 990919385 422503071 877419106 43494460 653006958 498294303 548032905 234493574 412220172 701522626 962867685 949355968 973182118 100269891 969240337 28433240 192234589 621339283 795063596 588935640 806745971 662520207 996653322 75035379 818846411 881778377 975292423 31663172 655341659 357759616 882398745 485765030 843325027 99604307 180914220 559275707 726410249 42449060 616177022 901756407 973784669 764425253 917983615 25163240 509715722 433994771 887266670 117896116 761762441 244230354 573200978 647421872 854356657 686658125 781860900 100266895 970101486 573198126 632648596 909931073 937591304 835248625 846431611 767409448 769286703 107174265 451737675 631914941 747355218 195193324 428315171 481375412 835632437 336726508 587629608 885971583 933449700 574514806 671985193 444795846 987140002 732380751 896456470 343359222 409422473 219431696 241404457 241286221 614723819 963041235 989182978 473940941 564351491 45720252 506139902 339979900 438546904 934276141 966036282 316926541 378042169 465867194 503402965 543117400 990035775 961692824 969579866 164801448 321228890 536451408 701899762 357623894 661389638 399180631 546105739 615859000 792363759 836226499 905661896 300038104 544813535 663751 594000883 737755552 772310837 711060 552722869 533148943 554798491 966246282 972567289 203106354 310953847 531049566 898480312 726692502 756914125 999992354 999995658 14035626 274567433 585123862 812540419 47921752 829318015 750626800 990116716 592356269 905456720 590960094 813990583 836424072 883139384 183551991 535534607 590492538 663187392 950975404 967494496 498287837 960962440 645041441 911362523 151607096 524199169 282788428 596579472 181025474 242457194 60202429 380866646 591414777 991650414 431163816 598915828 701768554 909090314 928868926 938169774 602369547 994429733 728504579 950781081 476261879 895117428 541736216 581967274 141014312 849678728 32412486 384534071 23784960 353824829 379602478 954678328 691935697 693480525 736958514 828261061 426198065 713152278 945403148 961791618 463688049 778067656 530764730 533804293 25915592 248263454 91094416 461298877 999210070 999678838 539630904 735532526 686389576 782842066 59175412 514533971 799532044 827382623 55064 951817542 796403268 902519320 440940252 928035745 739524555 886978789 772089900 966766045 937955353 962955859 466186177 860522152 647609841 815940152 699328543 729809538 213131498 353890764 615136071 619187759 130097961 793652694 345042516 550256732 372619493 521071736 136282820 743930206 215178012 876381957 965690733 992540494 590808934 976344340 7223717 161570324 865585317 897031471 805312052 923081918 752456117 781968628 211810118 542223044 238213378 291496277 170853429 916000491 921944849 976366562 807445028 942282690 238572701 716604363 194935002 246992958 93017163 775029916 928454687 965145138 788933206 864338936 631718713 747536894 494487779 622163186 138284974 484787334 438652874 895713703 556295395 638954489 68562209 92090052 865244498 877643840 937675312 956051435 455176117 701404966 898555433 949759792 826010511 827724602 919818228 945163793 605632047 868278889 795466200 829115360 732126589 825454263 788067441 861586813 287160894 460048484 943075030 970310335 620634440 775454555 124182040 477226514 92428168 318137012 706571240 741769546 829185261 861598484 709890795 839543844 979669558 982055208 390002961 416516786 324619395 615711561 762724278 903150339 16342399 883793607 181199645 870286782 794141682 849034576 667694382 873984779 293244737 987851267 761582696 848896033 168969250 918909072 225045082 405396813 75967940 422731266 123901042 726906463 845958205 868580520 367692041 938218981 43860663 106478971 661732118 749623581 923177780 999234528 401942152 769805946 670207245 956401465 482268570 718076767 578804997 906053182 22780672 222905268 821205071 951021370 497803012 951710571 333772232 349170648 321956995 513171533 827877984 877397577 461909808 751765887 215975192 347847550 165069693 597707343 944344146 946125150 21045693 361122789 985443024 996441708 931944524 950396845 799761469 949146036 731101386 958877620 283769322 856106738 134755582 904930885 938008420 950911079 522317657 611479967 539280321 656112834 219504244 759156241 918781827 976819810 9041130 38685359 170414431 403980316 656859219 732806480 350648810 490313588 416189363 461634937 128326673 350508878 910695822 992383596 772908164 784849251 959009728 972552426 769047516 880707586 931172950 986195853 252134636 557615182 44557452 108430444 398495166 889728339 544595868 609507370 479088980 859315745 841440045 992849746 27113677 287390936 424202764 996378818 96049786 862128516 35807931 806581736 20419615 125480365 699063658 856344571 251196640 338076588 200603216 980747004 466470498 803066826 39549919 880869464 438323887 625218512 583463807 771049358 849246177 981625679 410882233 611894326 907873906 932702490 56864733 706989926 429577335 669854736 436783504 797907064 978306490 980073278 329614776 685088149 501528509 597038643 628746134 749540302 328635377 678531458 384463930 714731946 364615728 672006349 77355740 389626510 553638211 637097828 184347461 773462073 205758483 232439135 796488543 920581088 61913458 755411070 96704030 900484945 155867193 652995211 872379197 948022803 930392157 989175611 412427737 642002080 108427294 670153113 6658873 657775864 403084538 591520673 22631925 131961294 688130547 723452641 658359332 834177238 655703057 674407042 956058222 970098474 667845040 676890396 395629688 795849386 982789403 991365611 795971749 862389795 836834232 929076909 299926667 611937819 693375641 941766622 660016000 965205120 69290334 985114500 94009788 185102419 212443028 498492013 551991923 583487147 815058237 848247571 263148678 416206102 300912495 411372195 63063808 385054989 642159944 687425028 548392918 808956483 308157594 959444303 263620043 352716798 286109613 969188821 681179431 702878122 951454279 959165313 911533577 953482805 573339877 769690952 735066045 884841803 636388546 852133020 959855975 965230600 583036707 808773433 956107975 995622007 380282198 448943011 99766275 105044116 278271760 429102975 684060062 789463351 453474190 470376957 97717845 130202221 256156013 895954694 942610205 959554396 561131522 799822184 101652335 139418159 352880108 755140878 151170285 663072081 144871783 737103866 399392954 583418208 642359873 856665701 630678699 800861110 764680738 951015363 538225443 955240947 478755566 979726490 49067985 383772193 874134094 978437693 33728232 153956348 580481722 765812713 417218116 966311339 1569909 593906835 991474789 992681569 27845368 873462370 795224958 902875891 794582563 815981737 501555070 965936208 246796891 700594325 164397843 888294321 389506507 591968567 545285616 643704729 826716261 859745890 693301400 764575485 900182608 941172280 663093013 814544011 142734840 183289288 983449755 999945377 637572834 639655431 342243744 632070666 992624566 995255211 503322579 976777623 565630724 869406246 6548076 124641325 647872732 854619091 810354913 906992487 909687989 986204907 194953084 569986889 836311812 885757378 672483231 783520845 300821747 567312374 224998383 713310578 522631289 794780356 337546221 463992777 812291598 945865858 213762953 948169974 756464577 983866343 599172054 619131231 336121700 763482276 905746843 937461144 633682801 966319085 240423578 842750273 905145256 957525455 593306589 839799817 278407615 836330187 314677878 762510081 832389064 955569951 681124775 816186525 973843126 980861947 801561761 916416136 806834098 857460686 959502742 963741995 852395250 918581364 119015760 533688046 897581155 904185616 61236709 565566053 514647232 918393023 981846379 994726384 293548373 524095434 901469995 974069051 585652992 787290956 105097286 967293756 439950680 889498660 241781361 420866359 629064964 984679089 916332723 963206048 720296320 965778314 881483741 961765096 620260230 876006909 731461298 786028209 507498370 618784034 621446429 640117131 843522193 854405788 760559547 911233271 173271876 545009668 108132191 488043607 693269420 848965697 123927821 449605138 829963480 938895166 626494250 979787441 557458076 793860787 178267714 646811365 770114586 816664296 279027295 283437591 575232392 857152905 161479326 207028133 102781998 489407552 548321980 793721978 369109102 393388846 559203805 654945061 481568635 934193162 949731684 954036649 363634583 758707256 242773888 966151467 944246727 945341913 156153164 315492245 364068514 555328181 698199827 932221667 706857836 980839529 174251637 364105903 543324229 851890893 116306611 991188857 751744395 836964223 810602165 890457844 717257169 766395946 8466687 486668153 829930840 955934789 608964634 614492282 482241553 733518880 171695324 868263691 694585868 741888163 429707618 461780894 142731327 750877867 501243977 562593970 430464165 439319985 479824956 607265823 94955365 352768371 522634424 820473589 757260877 939716702 39268857 112477665 391579811 620014939 94183685 732889501 942222695 964397330 944528012 987288494 722828993 992010549 498553714 968673183 761678371 841876598 87175128 680640416 933598903 936720431 820226191 953500278 877401771 932883958 103256676 915258827 229085681 602773820 727257554 931943760 205848649 524043531 537277919 738132806 951151529 969075050 384288429 901028534 245930831 583724592 280459315 569072395 857152969 904100153 291575516 358409155 271968708 493892539 44782981 726557554 75892691 532238244 367770565 990623873 902652838 905019179 260423981 627835801 874497999 945207059 879133175 974044757 454801291 889634358 576888194 592816477 125901376 734675499 965034955 996168092 34201681 555155272 512700198 781394035 775248582 794391539 697587676 718059859 942148830 998684612 470191025 881384532 379317862 953985084 269687591 312004730 247262435 514445689 567127866 989064640 115654863 893334594 334846841 726456899 633690421 970372117 204532487 968874855 453371448 787001225 989822359 994244174 188537629 348064529 601297780 756773285 602987939 792320742 21850917 981384138 221294246 545062339 549259630 565650870 524971366 909563685 257190660 744749126 622585441 631711960 192645368 769352158 832415714 979393404 303068782 661453061 726357219 923417826 661400110 903398920 602931957 828979534 726375912 892447168 756636183 882499390 727181926 939642137 828901197 950108497 709019293 779336908 279983373 998485207 849681617 953699364 977044026 985986697 56032506 103613778 273706439 624769292 462525127 849092847 29474341 756272034 600507089 644408848 872244369 974632953 322234266 561905612 640477571 884820318 44554860 580223601 101348635 672572526 627913033 654131845 738876476 752039087 192934905 867606260 710584191 844309870 121877583 708386162 90228383 339085252 614555624 860697112 126085062 464077116 861497980 898591283 45414139 473496257 210377984 301505293 121931728 559567642 28855822 431880221 552809649 906066672 434639963 824513803 477088536 610588880 776705593 861589254 478701123 511067150 528093373 673217856 940897050 980208202 345850525 807869598 337549119 447754848 800203410 907427056 269737234 465231527 799757821 889138531 534945038 984602911 331741863 503968801 208673962 502035697 773856932 867878901 183713421 367083880 994214330 996601366 879683880 909551650 491939625 723372579 360850882 417164550 570672102 914406345 358970613 781612587 397437876 543204561 658251052 922808596 259923079 541859852 641676320 894319570 406179733 904155904 113148473 613290296 733814081 802930536 353571986 932908620 36234585 140714036 588843980 651240755 477900229 688086594 79636194 647401174 278333941 740845577 377939223 980582475 964901960 979502963 670183930 958866535 602829853 681560270 120228985 691632340 477942711 652370298 578932644 648079402 640382122 646102181 861738446 889558080 315916332 518220187 67139390 69412524 570278178 807688536 316189390 488797492 622036295 991625024 957320136 969469205 58793855 809087121 877047271 998477435 818961940 982130304 682478519 795794941 820436059 997034973 236040554 412061588 784949644 867307679 252844859 928994946 942915723 980256252 688102978 838643893 979966167 980123368 802687289 867624452 808255588 993109177 334725300 983011332 593505800 725155637 876321664 889582877 229542626 718244266 935937164 962018908 542320228 835513922 189579665 343821945 896001937 939602912 639035489 920566187 189136677 649685542 19419063 589509550 494947199 756443270 915529360 943270657 993543668 999621504 202111385 873957428 928818701 964762371 143848406 517070236 300083575 547279253 300427642 927267634 927991294 963838878 877802946 912205936 10564627 761743013 538437736 810730311 19215331 824354334 162306843 674384252 341208698 892215047 109203347 897137043 626633522 737952362 536791033 665924005 248189079 398509793 844512478 967915011 960921000 965235081 676150872 981975784 354696593 361745766 457998708 621035631 434352927 595565586 884058246 912513215 15430386 965748302 959790098 973019593 954159464 999430222 191217929 888412504 664415138 732593224 453370780 872153248 712188318 782656954 680037909 926756338 194407290 304141103 460483249 510996493 503033076 756557700 923600446 942815254 62864966 597420939 641381567 963986526 609554526 831460268 134731754 844215606 27020077 709201355 85618151 158875038 652036359 750619608 179423722 213960698 225697034 466697348 451192157 917686654 792523856 840368310 583347887 913285783 498642089 963838941 66271725 851309370 62296006 760053285 813310607 846701147 464683992 810647697 483079581 754629412 670246156 757752621 625235903 989565450 445811663 675196449 303519696 907051168 953210873 991161890 178617277 321585735 70085549 405570032 882608823 977323870 837634924 901067965 65211482 710271147 65709121 760882179 11498004 470195604 360918791 498615035 323963644 690213543 719741460 819960787 162222339 755985384 428114437 740795252 369158087 941376648 612244216 733348507 403621285 809224575 33159421 571748557 200191961 253216667 594436594 748224241 477001192 884739437 374982599 863071098 237541794 725692531 202006638 254424541 444363100 875340637 353740348 623746806 670861037 818412556 522308406 527187771 196211807 480617870 270707377 915400063 73715846 180385579 242276260 962215378 718771066 948734437 580931182 733346202 348210308 627297987 544849467 889528961 314451877 314958872 56477442 714953735 547348912 912732819 825433212 844574250 844750082 888660583 6490390 580175816 627182794 814470471 581005105 833768109 898906133 952601489 622995980 682464780 318973598 443893677 650664453 931791182 650053945 882442760 546042778 713780000 650080470 919452852 848376191 897926738 599930440 912832483 618104352 673339362 611596589 704941261 333846534 991092470 276903457 838128360 571686492 926781247 801040223 939338388 185906654 187495055 311400374 848254886 857420988 922227910 168640493 908243409 296388374 475843583 280318463 955734525 911565733 947159672 748109113 986532994 417164247 607654539 885815618 957662916 179496025 722937981 703974937 880099539 105678610 690090093 226346382 424917826 842277248 952451596 258689053 868440209 296164742 305354552 341567236 541829726 879273968 952043276 765441786 811746828 326339728 747583889 803774525 963065670 793227677 910975680 390087623 784697209 754805576 898106390 426846609 542586110 50327304 559215891 492269396 854262454 438247315 607756601 16536353 352347826 39509368 118890656 514046172 519738671 432820951 645470585 446130789 562516370 626105711 925214926 816039299 959906507 697096370 995948208 429230011 886855190 107095575 485538722 650940442 962890444 914041911 968066971 398986974 430537735 522210116 784626670 293664186 352590980 592877106 967832973 872860443 875071308 487353586 889103504 121897196 570652193 681507122 777115628 856791683 899512064 648274181 744991208 464279754 765888000 265435947 588618926 28918295 170544063 734926586 873764241 116606996 772748525 487577806 531090514 5588887 181030177 164209064 415698591 599904292 655447591 63068652 670257649 914810982 933679793 918349579 974017623 690381013 692629608 378409459 630245993 72218637 998258025 124848155 855616151 409736355 742575421 254588391 403511057 801594976 865860767 647653459 970837737 119584284 120044609 830602929 962023378 691204050 778702323 122808261 472571909 207935624 233847160 316931013 927262105 237703605 243734331 179446868 925685416 133175263 834698802 249110040 749103653 522010705 828027498 191823385 494288571 624884817 694402320 684149548 778326092 576346821 741235422 474213334 587870393 912769522 984142131 454005468 979471213 240089991 775333470 175638652 554581247 207023888 384590282 968109459 999287579 302439301 600143412 949745045 991210890 820090303 867943821 122574660 886088124 354594307 431632584 893903375 992213767 984146456 992448534 305027689 625878866 762654126 783085912 793511954 975135753 993395006 996960163 791411296 914066650 166574256 477879125 735831339 771304439 896768078 992853565 14108950 386527020 8106297 368214866 269326205 376078655 26318934 433272365 370760090 910961523 614320927 874894577 223596868 651049869 33671062 459284124 520526573 702621023 543267124 657569187 378811295 771123755 353373282 613049500 439964900 804758534 950695890 967534198 797554187 969523448 332161081 425040222 921838105 929160603 934179973 955322341 651463557 799844730 241935441 287541796 314395026 890068216 936587875 980991588 660980710 984247597 38400451 406270123 952309449 980341468 648487982 855605670 20254838 842485928 318061468 865352463 110782445 524909414 553698225 842902918 157897272 361708122 151240629 931511192 759659557 913998629 912044514 967049715 484346575 664883907 146496224 453791834 916761366 954002727 776668763 939765602 39587889 932742010 696664488 985058143 363318716 920986781 321660382 907250261 856406938 882973878 239018599 933237772 488433738 738398160 965095302 965285405 313385189 357046075 744268937 974463226 653699002 964065795 699640281 752938242 253013268 327664633 462407504 999292454 655495518 819871010 921027453 926784058 61002676 292730746 550733318 644920519 977352808 980123244 332607425 909073547 2187637 652346911 320955246 346896296 213857423 367412454 104520740 289528829 18165802 464062185 307318964 703127606 506061278 707224099 681430820 816251915 82455959 340423676 360572232 928369668 323713899 840496812 172096717 865965649 192293023 509741896 882303070 988138342 394350856 839175611 103462846 872933918 1946710 163354032 863367019 868895551 161035380 348840354 440294242 482261688 493302250 788494906 325744209 748355906 521776733 718035365 843624011 863104093 74972204 463692595 311012918 642917286 494731652 571336230 538690278 900564662 600858426 833288869 606871335 842019021 249976936 327440672 176170974 601873899 702596998 828609322 7463804 822480514 116787646 592585711 995227202 999061664 163689879 425456598 509223440 535185858 678588859 949860921 343686817 791607675 319191044 352125338 169090789 502556596 971264072 978167560 1031351 885444205 678262090 790369038 925981849 936669331 485547640 537408879 300275021 468786175 825208376 847306566 986195167 989246866 326192769 820067657 959654191 988646233 915771011 983429122 763058532 852411712 896548118 986809925 178694461 538270910 766973039 827617771 955282343 963270948 40130912 192219088 409260068 793185801 139226026 878027920 35251829 869324140 700123034 712072307 431037961 745405611 492477820 925987434 942547448 986441521 445604341 471582428 455578082 784182079 867615234 927129324 924988082 943391178 943475633 951769017 290823665 704874019 752116485 760648613 519833964 861001591 659276657 796281845 394228970 966698612 577929710 919045470 216729410 785183073 64316190 135520922 608832722 910681155 34827097 96605322 286099559 586155103 684605924 900886556 722404366 973996646 78433733 759870884 171078769 230459318 407325491 900276934 400562511 795829527 435534664 731520203 31620539 912761506 388391039 791727701 635414752 834915397 808752288 914598098 712271467 760052797 323718877 730023621 383128288 893203254 874109869 960583211 331039297 693831402 440299345 998152154 563176775 587751768 245400525 328062235 529919496 966956395 626813184 780714147 101554599 268997044 292151818 611758511 775206708 947758721 884453593 892285598 336522487 601393634 165984250 609285615 60371437 394145221 124124203 332236821 544747512 675930362 102375336 510219186 104946793 743596068 495344255 521670809 434423084 739569916 307886750 708112197 694096698 752955160 963494285 979085259 718743523 766001737 162477403 682560157 905500067 961562533 885592330 960204752 40875561 338995747 168368815 495129379 638552114 728799012 695108330 748789389 361909803 595003702 277208503 551264564 578611153 826632063 513768700 559398832 273059557 442579806 53151137 895005261 718590302 843730279 117833784 537336065 820415724 884882380 634112646 836666061 270563538 994845275 768032854 779581332 513972547 905480424 691320426 786045739 909430687 968768713 736976331 774011755 834706242 953133390 649547570 949268571 140355234 218878898 262013846 346798576 175692013 394819532 269458047 762998768 704559161 812950968 135301367 343143143 808443125 934744362 693910024 939937133 946072722 972869655 598304256 896382952 501045233 581724229 582568357 601046209 664934733 818199640 156641016 624776967 672743918 997729304 873680918 935641987 36402248 225029032 593286366 964251148 921341015 930368101 419049662 774093721 471988975 536158695 642974693 883677476 936503873 949590612 890654795 922679324 625294572 724327571 224536627 315914979 298754423 676956285 688005051 725370346 640822878 955817485 547937461 915562753 966449046 982006242 200587207 480282905 978019429 981297744 541229299 563134217 34763380 699723138 784344089 932087541 205493407 998267230 100597623 586522975 351157249 515522208 267882667 504733578 199560327 903817587 547849523 782980578 185515570 372528060 814364675 996775559 26238557 892843287 271748239 543772687 440505549 726915046 70853660 654263640 825897496 868808201 1772551 333639447 822005322 980389104 604381370 927219490 893960694 902428685 479060310 917105455 962319468 996049335 876959858 958613027 314553434 919508091 306089516 644676366 185053142 883160739 489576421 800431052 30681855 641778623 209103779 341564837 585511503 903904424 357292600 445660989 870845054 988094157 992931886 995535513 942566263 989176912 266817546 576408221 654194368 819322517 553003084 997467527 2652685 41845509 898111609 940091095 491568655 586503419 804518535 927751684 297665543 515553035 156647140 479694558 224479405 681316966 171722930 629698654 699458859 768026871 686363423 984118124 415410651 455921405 789413805 841211478 580496817 688566679 199255986 596369559 298488809 551135399 940943281 960751626 403569900 779480243 547868464 721197887 560641002 767667109 558938554 568507892 853289901 903356747 216263539 341608766 88012475 857863880 597872769 973562749 495137113 717358632 71509837 619258052 616871817 750469777 704250147 791824795 743551323 936029604 599629086 604421721 802983945 834646815 196689357 440756018 505817477 579969211 196638039 269704812 524269831 598517290 402768529 951851126 9838466 364058408 717252485 978122203 117661078 791429804 493955445 872866989 803510771 843634132 409591616 814933401 458540858 471638970 993665252 999183528 976156726 976193915 94203628 276547917 699232308 869410098 344929164 441419381 292079933 870907601 352638700 760680026 641962933 903525342 292435122 402795420 231511645 705650333 901999243 921224262 97772616 172888094 173513931 389222541 795101591 926714812 290044841 911627049 119169916 149368368 431997055 438297665 646118142 889618433 854466125 910088644 119123901 957262756 690880459 797449462 772997332 846398004 329757989 518236518 192781892 838014765 375869137 584106023 899653436 941622844 576813655 855071681 449697193 979748228 391366922 987341174 429231484 450459059 199326059 536231426 629741554 641757994 295458840 401001828 297437167 519598676 240499244 710487950 885818791 971466421 830784520 831568581 2679624 371984167 444126585 927209519 350111483 821788396 637725667 735532940 77302680 750808054 742083742 874518699 889228713 901721353 400660993 484851971 184274390 762732665 804243166 824578894 499321091 689644169 563223563 964482448 225535568 730452293 288428781 431459533 60191577 788815359 203574875 527924284 549895024 767956940 925830480 994978449 73542895 379310125 592592873 733871745 668376408 895428099 12569692 916827243 7549061 63485268 679320041 847044716 547007103 594558746 524454719 659052340 679790329 817174121 656090942 667730777 499318701 506091695 759308718 898405587 611197829 839499334 353960838 744554455 604457431 868019035 281606172 719906940 150183903 810143267 248604583 467930240 555042249 931082406 803678687 821401875 895604163 966848312 970914892 974462769 93970953 171172774 429296692 995825861 3526669 827002714 664438524 858592623 187788063 711892714 86707994 914604349 424236450 973810281 50390050 712226252 296950315 540284135 448272036 980755890 365662236 772413407 911280969 952368143 991745888 994160356 878272908 976581866 326992767 528150549 427196639 696794620 30467573 408064575 920341563 991241578 548395241 627700195 361915924 950644155 268206339 858185982 329022600 792003726 122247509 450350738 672800086 679217815 13480649 794334853 465051574 679630261 999548145 999870833 882275302 961040957 144181717 984531044 524188130 975972384 779739384 795069876 693050265 727666309 692616033 745741641 583486145 795514527 189078282 693135840 759579127 819938859 616878774 645293208 14031725 855520834 313628776 787864397 284785872 808249843 453408214 763626963 271494174 815550085 710656029 828793614 577572621 841521071 27003079 928359164 49147368 705854572 662654037 808836264 669868418 760424356 355615872 504616502 627829885 914506848 518814337 866429435 857435951 916363563 755327299 963946384 961589388 997226933 193784429 410142993 953365913 976643120 212392587 755394680 151101695 932984271 955106688 967153461 346380893 424467860 594338366 756617363 947275197 988179004 704050680 746399264 824837319 829559607 196585137 257771345 607943212 949324402 793023674 797076452 957768636 963205641 440423966 935427415 653367291 760199738 227743307 968166276 615390616 835118349 89293490 447775852 66763266 569377288 335495651 687776867 384515485 478319934 52670064 380688507 438826584 579448357 494025755 562287768 526156696 882929800 171930928 516101142 742560526 863250084 780228965 916130719 778755211 866092631 889290834 893795524 270920694 506469832 689570618 912531202 146320582 923967965 836943004 859853919 839427065 926514554 581043098 686207528 866481639 902599663 133451599 695399522 138878039 158634176 562934039 991209687 343175826 432877186 390267598 898156157 332500153 403619717 997961034 999274398 175077180 881167886 645723966 993567001 251319485 651748173 163051767 230647562 643720371 796138175 225501742 468346330 467821837 607119410 288076267 641345788 776828639 814561748 224412938 517390199 456080387 982825830 771457076 945803206 388559351 616240079 611743143 847120047 611387262 690897129 595090577 838319899 504916862 701342691 186819543 322632980 692548133 960043509 92964822 297239897 998070786 998534162 45358768 665909901 558827814 858545004 11183674 119529122 242772183 962115161 822653806 880890674 490673537 828078683 741064845 808333942 697455555 875641337 24125375 394356201 57139694 70809925 533492256 764495311 100905674 761721719 623108988 991257230 894655250 918386921 890325459 927835955 257696500 969230934 516466112 875970548 746831831 991039606 888965222 916986568 806856893 859205767 670822827 831840931 868305779 911722008 296135676 580006092 499790580 654775599 343807810 416854794 650265745 934401241 277378980 703098537 349638753 376470318 690176200 738220658 152702057 517870596 155888186 684546999 21795499 329424914 697799478 704187771 461089233 546652005 709490708 784802041 993141144 997402519 812618455 923122034 124059031 708837276 858001351 959771263 378567693 414929231 945476201 958384038 383456711 970340301 104740598 470014339 40777243 406055662 524851781 818467187 763083090 880194788 752065053 835129891 420254029 552316358 491250583 746616005 918454562 930709504 382048853 438665909 953158668 956319504 335723599 416200629 944576618 993386848 615462219 884808020 652488230 923805810 686259919 777062707 633234437 803727803 581137759 606762098 378229468 533731899 761184086 909953630 770931265 913198568 196128354 720969676 726442650 860638580 445685100 889195246 712827489 839609532 551490392 727257404 847637935 896002255 140530339 413835476 985838180 998656649 678556980 815977785 731264827 801526613 70141720 373131700 407560215 630379703 713675723 776154122 822773470 862026321 546900122 697695983 928732611 943053770 986241707 987570609 574573085 671496583 673057305 747719089 41988729 293590551 327228721 667973660 488397222 760659995 4141868 216106218 402244032 413386504 432468539 879777396 881421810 996021831 704248616 873798679 318625955 946596984 825751541 949540957 178592211 732995606 881206915 955848571 476472107 997729459 547204360 871173380 312485253 613698081 785184300 979520522 383917150 664449575 444056627 582252522 664862138 907825627 615318097 661416162 202178476 700378262 279103795 607366887 732280924 745695376 115718127 519495266 852560329 945086316 577934892 995604706 317540592 425531226 457257946 954039061 544967083 816031507 682941449 850331863 445230693 776297170 704051890 793424090 771609449 969181551 197521422 675063410 336886264 493349714 128731451 513615938 909087958 926795388 664687537 746756368 778644607 837655347 796334995 925737555 176398112 843367530 692187936 996997632 408737557 745610669 231311567 988549724 98250302 716181694 144690289 876670763 30085137 300313794 67566661 732991165 480747425 701543368 508959188 693045506 224542959 254273848 602096397 612696662 724647584 812798371 437691009 530845180 649313231 700737806 429424762 856293513 970749025 976284558 225963115 711959735 404905980 925759711 743053433 744078356 500403777 814203648 260721995 883984957 955763048 980617669 40447220 513562901 458846948 560700441 600054716 885944019 78967560 790827222 266749914 381930671 578058164 954891865 257753280 373615820 839526576 924875362 396655769 688326724 231347538 415949285 167617167 511432641 924093306 941465690 497606859 531838120 460051189 759883130 252184046 539513531 26580576 985643196 446028231 917785958 538487998 909405623 656419236 674811019 670724570 954222115 127936375 558672981 799236220 840056319 800748758 995187456 21374328 42997239 808076598 995956949 723772882 754612915 829577638 973542984 401695890 860689438 679371520 913503369 959437262 995249703 923989268 965332206 745983066 964635808 428136665 496675246 971351475 977353644 580854048 807566420 193450809 273364056 960658083 969790893 249037888 980050371 860953610 959307814 113680968 834475404 62858998 833747299 730311656 777053573 3535800 877823007 21582077 894747963 216196581 830518900 906802319 957665960 825659826 846605214 991169453 995699039 562845941 926462147 58939183 518894812 312562693 420753872 928642743 935383650 285538953 310173285 826905478 966832018 640424436 839522660 298573243 527457036 454056999 809777199 418983256 604057765 942155079 959698517 10506751 515306748 194418925 929202532 94649755 514057652 516913680 809375395 238675993 724471941 529265005 576025758 167129315 965811010 707001190 966438871 943051802 990015356 838144018 862191428 563231996 838561481 774987582 862099994 57465424 929055275 932981644 940031470 401498399 453502289 349646685 579896868 231623404 625115848 309528321 655909778 850417334 970851929 488942655 727448297 255695488 449182955 674707004 971686806 952090034 966911484 857005078 980005699 712318537 826898105 258941836 275069349 876927290 974042143 10452754 483522909 280807152 615741392 855535707 975949098 743862119 871423288 799428825 828255540 808734643 994026442 985999852 988907684 843767042 864541844 720404396 794002806 735534000 739394142 25539018 270462255 515641504 959381688 265353471 914969911 321307860 390070385 161565071 797968215 73957341 293544442 491848207 642862488 999867892 999914772 772365155 901782797 267389812 282097793 878792901 891723835 306460797 664045953 124697185 307560911 499719072 909817400 692517690 970096879 439357826 635005977 852530986 981407288 463069887 973323199 944916641 967761046 161256048 235552346 436845389 798593746 392879543 761593504 632004157 903423197 975657328 986567538 735480752 781050528 935603954 947021722 607946424 817453362 127538765 785018306 2892938 795486531 856261529 948875471 753695069 986410075 291684162 320205519 387131317 462180279 792779889 918510047 37294873 671192061 512524613 823642952 757686188 832501625 636472465 997875372 944528815 979268001 577438852 669648673 713558862 929979292 85222655 953767825 898351752 950651675 547188888 805719423 634032539 730244024 874204647 906345275 650491804 831478095 807600376 865412276 549187364 749942391 39040835 632422382 493392451 582512503 189427844 827006358 470471496 543121692 557885388 770250440 834447973 838968270 908235510 919726755 168793300 528325124 245519471 987043214 18147473 600812609 658384205 957917157 611702242 731779153 531514745 650330757 240123133 776941841 692794261 921718563 328144137 716113244 23680554 642795814 374242228 761353854 22252241 146609000 434762043 466046318 145465117 372854846 58019033 399490257 806514590 922787482 590840845 918997744 875921423 942329960 859709650 881971388 207413923 894588742 262998904 535361275 729138303 925066915 63948220 837319483 196577421 463826043 795962332 895437273 697702097 927610494 541831401 592840358 229036367 638254392 85178003 274025857 821261654 891444007 650729745 945749622 59361314 72683906 648031369 787535094 835772958 859592892 152505203 476929004 930893264 991577553 937289592 943525529 204244788 257608615 814871365 977965392 376289116 823032425 652421115 928570278 278636488 379516380 553111502 603342002 338247695 624041957 426893769 443450198 342777650 361999146 411724104 805605673 89546688 142826034 516996588 914590500 214363424 940403516 434146063 996193605 751017451 804835227 378769745 635462984 828240320 917401157 746650577 882881861 553552818 756866632 772897517 934325907 152315895 636432968 621241678 976860058 399802388 669436254 806524023 982930257 136424219 228036346 74931468 175923819 34456650 77538444 459334494 617865595 972436274 991059910 324879 934928898 349823493 498263241 659859913 777283800 623571365 688520294 129269128 686877819 666552360 984657205 427240420 483739834 745825414 747317492 220617110 468195579 630764505 942819824 855244458 999138594 388865415 952702549 865195132 960122774 168811431 172648396 44603870 345493421 854982972 879411720 534770348 995948081 728223512 765983483 503641933 599032662 46733493 137502360 346124601 623728343 468171449 592158600 873049051 919032911 514435861 931691478 680032362 926052954 939592266 979016664 29694384 529845900 682455390 864865179 709390575 782699565 118729099 196495878 99720784 947069882 913294330 924123085 956906468 997189474 275562540 523545121 274136485 311722101 138581138 753405705 948478994 949868360 560341869 917195507 533835140 887061363 852132489 958391873 348038807 885751969 84991322 307964495 236628708 346406572 808254985 919595395 919881840 964479879 771877477 817908534 182677475 188452566 847404370 871850894 771433537 807936537 375194574 423645697 917960387 964832389 213942623 409533188 3252306 395022061 888649379 964267491 248936336 511374123 874684393 875613806 688868075 837264126 890098824 897943385 341556948 353772834 79187866 417949723 444810053 754086822 867477928 885636116 22060721 551255382 182974069 446393460 624500583 888755332 157109005 245866329 517429223 664776781 642678339 786262370 448002121 605822491 855786658 874155739 391689626 403391160 688008052 872129369 430982531 864201060 888242833 964658957 244555266 681463682 402275631 800828632 605143078 783594682 306758155 672610072 11703167 565880731 501156581 837300613 280166530 899761666 9736677 521970690 471064105 485305600 730059274 857910819 979258042 988877890 184350645 971077755 893219088 927757959 680108191 866409578 109636599 782300304 861401390 960593860 786314192 992046501 389313903 901173596 870397824 998146997 2809274 910021771 747893911 951457640 772259459 922098024 339015392 673773413 14970877 218076913 449717761 538864835 154854834 629715783 949137987 958737730 418557330 462931859 808077753 893730261 79851132 399028027 145629161 482508744 971065791 974619854 298975455 585572621 266507481 820398808 517876974 903401180 359873990 905460596 971988443 998000071 607265184 925241737 773950869 865528762 973511994 974446200 651158308 671341196 30551194 874103922 132297063 749765783 974152857 975716351 377683346 826455699 700924534 702232495 654073011 681162653 715811157 893796823 979305096 983525182 236326355 500124287 528453725 699424055 413051524 421521357 8628517 590189824 494382295 801264431 895035403 923471398 75876439 371045586 130166986 972333572 861476397 997054334 834137283 944269120 907226332 991626449 514731848 736723614 342956998 733565980 53045390 756842255 388527039 520572078 716900523 784186009 726501206 923884355 289860320 773166573 317785920 801349126 145381933 808054146 684926797 775579357 795744698 824027546 174446202 473583383 607106999 828457315 213380981 282225035 752121480 829146723 890985132 949111069 913063045 914038062 636259272 940018445 627914315 836032097 555255803 566127410 286745006 726882908 394419128 914025112 144087678 995987797 187418543 747836879 483994165 619247964 139056356 928907722 557811911 902771310 843503108 886943688 638346508 987076704 592464415 834636092 715876779 743677432 503052778 985060051 337656482 762510583 376936703 553896167 229791080 827022364 455536412 929241857 47636521 121191222 38266920 582117575 470571892 933717914 87102486 126636176 640063857 814822322 348747944 845751196 242062055 445250558 78315273 89763214 453111701 895108147 823753138 934490352 631785839 671552193 752645662 924901487 917506023 950994716 659009835 689910837 983533279 988944423 333337674 524602139 542514772 758916580 248773204 673645518 266225431 494307208 590475668 839178834 70855333 708980649 666709288 854095863 306466886 777322141 943932968 970710447 53662714 850183785 746741936 804534826 44743865 546525690 937217350 968632378 948529394 960602525 680958609 811948887 282796343 506572320 415005100 674152051 821328305 909768092 76978334 685257603 569823161 767657677 937415635 974964538 542257292 817852206 762000851 965858698 197739943 504831632 749809639 802996773 555230899 889517717 461145922 841948006 65559520 775763511 792027175 854769315 142817710 660531317 592087688 988100585 498231943 950020607 827445753 929439330 74925125 358278825 21052507 896776190 281980966 398023499 639022897 983806223 279168676 632791635 211466932 317508352 712969812 947591846 712991098 782883233 215069362 396682075 63700817 849026506 94163327 934758080 286207407 908288264 72047458 593254447 114986788 327672097 368884268 894866647 185105494 536290453 84074468 699795913 269533331 941075468 526660443 587343240 945760628 957288252 607367077 874984243 960825753 971318214 658856968 764383864 378516269 864242744 611368642 613674101 778000037 966181127 910971736 924918734 382660491 850035807 978134338 999036093 906631251 931524258 19302668 669396020 410615411 947134656 607717580 694729518 746485050 960696410 331965811 466192711 780108173 903512082 54091396 550559582 465241875 583329699 266472648 841215451 391201570 524163096 360289957 723682851 803897977 843569730 776263382 858014845 96445342 903839067 421940463 930104586 248363778 791057012 22314818 836318021 370815519 757920360 385477460 897755969 985933973 996386209 167620163 546802784 956679438 995729573 55683647 379421309 398447052 957573330 200582073 606069444 487398931 540719099 362554909 459182017 114536297 279419081 133938678 704796508 962944383 981718165 560123494 922883947 654815619 846304878 156913533 713006817 50801744 368191155 870202995 914204180 17546511 714918661 890349574 966547736 706959820 751724476 590593404 738191698 515447049 518588722 485611423 733328645 378300155 505322058 149691376 257994394 244692602 390992778 670240607 831567664 179599534 257024996 807794226 920992179 772504990 855875422 952126354 970887744 267131341 804878872 470499521 902012140 902941910 916809371 125255361 775485008 406170967 543697892 383904539 984146458 160362298 208541007 505641665 915292588 941839723 982189824 710685335 727462935 391384716 809809888 466848438 848659856 891382547 955618863 383875375 423556845 507675592 848059435 193218553 260659285 351515738 744984477 81880452 385956201 787572511 908891663 366119866 997640706 779868879 944266569 11538185 240712795 922139103 960597523 337644345 711688882 856388987 980341854 52249891 913476329 248686854 800100061 747024234 828664508 958927940 983344257 560191930 728984015 913808306 955878218 952114844 973676842 983905635 995308241 607389075 692128796 874066866 906992586 143453759 715509152 153745026 622887164 64135495 690956691 103276241 704538603 249094460 649636319 614603845 709224651 245191997 800903832 509176995 744373980 364200341 986823159 253532653 947334349 525351791 535710832 669127838 766027658 82042426 511554407 561382853 931711084 658401255 662398512 967511191 990138517 58398308 286717752 984013922 996023219 857750850 956551354 951352084 984190884 705340382 985189965 36094719 462938873 977883625 996003694 350432964 770463123 365484214 373811918 698087514 886937662 766678715 903209482 215793930 955505308 948249349 966385543 85160477 471746647 598339850 599525883 338510510 386333444 198397978 463459794 97939460 962467518 155414361 965894957 489104082 648918867 230619905 949109358 394553143 829066796 883912366 997804631 328552908 614895808 885966479 994473245 714939616 857968148 454680740 777494654 424342825 456163181 162751852 635316016 592192468 697737328 300850994 810248211 540996960 558755952 974692856 994487865 458278877 950300397 324294459 989159075 640929860 685746456 14475782 534703803 729341333 849785899 40734031 58054473 131380598 137990883 529407977 854566265 716975342 898017668 274775278 661135755 687359809 962129604 87754793 947703683 24181271 785580619 454785080 520693770 104128666 511688846 390362924 791965520 842183844 998853824 991675175 993360863 615910804 837323407 102128883 276029504 477348888 549742741 239811196 919945151 401457738 869220572 796617626 955333898 681261058 883788803 888561487 972581603 597733012 750177910 844648818 918977171 84940159 466234634 394651749 737033656 245816572 387814268 868229320 996892412 984154269 994456440 715470064 917293496 654587544 658963076 185684684 896673648 684320040 884442898 888875668 923501888 138708855 396397372 913513282 927151869 428789381 554644590 573105214 696932183 180256359 248507727 141751449 424939942 542962702 872732437 447383868 813289658 514499850 613404486 749348708 798109995 688196481 779298322 129135620 254325485 827089257 852396120 495681452 668626382 472705988 836069167 815126849 994833553 83068249 104804710 565382470 825326707 601457991 854320120 943318702 963645392 459665263 475670079 63104612 782800304 347374407 966216528 866056772 882252880 696150556 760069254 136588660 626857170 352431058 828973833 290741854 920270979 461838752 737969235 127295939 514451002 229356796 804578970 969944576 986171019 725029156 878163162 459836401 897849275 892620908 953812407 167417067 291904636 585569987 701608255 315995761 492486560 878352616 931047372 154239604 745580537 773649863 951385080 680765531 988953235 702099683 740479184 682214059 874104000 187735500 431659963 638580111 725195243 716597653 790168582 191313199 992884558 695734659 960445642 638587210 716201875 63380335 419790287 305881203 888906530 776707690 795447917 292941313 671345642 475258435 967549085 879115637 965452068 59615038 906305374 49228918 315801465 187982407 360351751 481588699 844208346 93207563 445124218 133830482 324708421 186435151 299144740 778610831 987516999 202751448 760091421 70023442 267672501 235448421 397093593 588593589 992963454 555749577 560229099 241268568 569517771 255761802 637137970 232498248 627531030 989478521 990226334 170977237 253956859 591866234 595072724 722588425 970869951 940212190 940480709 406569367 735812043 296366841 875799030 571433873 858377576 946851615 984080959 439973829 508197843 3964233 51500313 536459012 549682950 676244839 867355756 51596812 280865478 4980777 77804259 128975835 141818730 350837491 740012345 958054998 973582513 659381954 928298566 760518755 929914516 10697520 786968127 615852148 778366003 548495259 651202199 287000739 437414011 667712637 873578748 326338753 963316144 944746556 953347652 16633764 507710310 311161758 834748089 613289641 956914960 432926457 748946580 418688168 725643002 118044769 936654711 192776437 550108374 931798216 993536282 963731692 982681763 264952788 807077530 598569780 657670891 384374787 787674934 165177695 992788846 280592956 469155490 324484966 987211402 194788770 446949088 670624202 673208094 461519935 853699334 139635069 258359672 568449190 652938121 916841924 944624396 580132381 798033197 604969060 694872482 605835569 650425589 487259981 694870409 937028956 962411978 405472246 924268518 644103791 866940062 79635096 793887005 231530476 750182370 875681191 926486635 34217116 48502798 259209702 649133975 359931001 643531848 11744880 553516335 110149549 677782171 275155799 878467695 458429649 654897354 457178535 857700954 660876299 850191479 310330375 310974552 870821950 947163178 37910130 205094864 889211271 936683281 403537628 848029140 998006814 999705937 262597584 362940832 203394848 728306714 694263602 827675576 533998432 566619353 951840855 994188948 420846958 509853264 814621186 857595703 99047098 830113725 494502988 500894202 218027988 544912270 863398279 873497860 773065125 836730216 120941029 809583252 24150854 210177573 937110805 962681180 791674744 955545487 635642887 853626307 809873056 877126314 345282463 551211357 937672984 951806211 336613753 652655304 904918544 916403623 487851411 790961478 678328974 777427309 881491174 907387703 152465641 283620034 227881576 453101846 915189387 950402134 503274850 902933079 563454575 946741052 992889955 996620591 654586872 906397338 581454293 860597995 198078367 278838775 980105887 997072298 149643735 410875901 872513729 930866984 789163328 932732004 531343718 766304660 676076073 876244397 516961333 797170104 422017668 742967621 116393941 749770763 727855583 941673653 617839279 698272094 987872824 988816409 331414051 428500262 971131240 996476001 628460779 702106512 35304253 559470363 123694755 677673213 654836418 974920241 886549826 919867850 563859081 654193319 950135419 968923051 760044854 986729949 61667321 254067015 201949543 941372784 894243878 996655144 675062938 826454362 98371358 849574724 408785332 894780659 864862233 984827012 631857966 874334006 385085930 936761137 373392789 995602181 290549781 850596307 18567003 120947763 30447850 998051680 187194486 900294300 448330159 642019378 159635067 895750534 903889152 961211375 753478221 775774864 381180613 765458590 86705004 488933500 215127105 328336357 676221961 702371801 569594220 815056154 258613248 765733232 192548085 513397628 458236958 979886533 465350152 679182512 461856473 831531931 488749212 692027409 482657655 845847363 808497409 995256878 268434445 518733015 604261542 700867377 784109052 878200354 1072860 366771233 487843543 647466632 888238309 949037944 616615979 980218059 597928525 913953870 935413226 968057732 916626264 992954098 696832124 844549220 366687366 448345605 465161722 524336991 41854802 180204858 904987995 988792134 885359337 940961010 847809492 937377575 559788610 856809949 293497994 836651100 445300432 978339466 427841900 973023699 346237358 510613049 228445203 297678983 712532078 942153467 947737865 979909054 627695423 936170870 531635500 679179663 16742613 269419973 590023885 870547009 428250406 493287140 148560837 692944136 452169983 572954474 251820176 370891511 378905291 479825860 330066051 830049601 13066036 676788464 969300974 992560510 31637776 158792970 378788137 759106786 29657266 490122870 428053380 866833288 85783805 223888617 802514226 912987023 124877965 901486667 681046444 991946545 985746866 986768674 495528696 795225249 642775723 789965289 100998905 414290386 65356636 185608514 932462990 933542601 580442004 963701241 429970930 861175999 247259268 647701770 57893413 896895843 709220296 812432768 63409299 397602107 188267304 874275248 647702307 876244126 732575385 870967816 198329863 345118377 834853738 837126530 120889179 974274380 527541351 799023204 464664298 570077009 930360755 980263650 480889597 963451310 728106396 934569674 600827832 979216751 134477811 165856511 773759065 824998087 262714958 904506315 231571241 314689423 201164718 312270499 244403300 561318278 845163261 852890364 530188838 765371899 796123650 941512743 605903165 970960380 304628636 723671091 62692015 560410463 326790890 479011220 267986857 964437020 449241020 789855520 152834379 778265031 894051088 971905156 863699133 916908268 424537619 563891688 776942725 792548443 548605067 775216608 67853365 830573702 991072504 996502267 570762220 643449912 858813140 996317040 22895513 410561433 96476092 480010622 27691482 389046585 463290510 463980175 91250879 274073292 893328418 935988364 958116681 978244150 590694295 768992116 644256750 669033094 859563708 953010497 476834045 810734781 152747617 611431343 109430671 674070291 584247527 956507616 979152704 999518121 294285680 355482246 744459484 940458525 451429248 804443986 824077300 896131712 114057171 578822945 572601913 910885491 668037384 933773359 461654306 518105562 967051088 974687228 587617828 979285140 844670426 926197198 398444932 820393589 716588747 910566310 498277094 817074240 361242280 900824964 610990706 699273183 882778663 993370299 135041399 284151646 640756537 677394384 248226182 256938802 76007499 770352256 55591322 339365734 674682047 983139593 661940099 912097061 8624426 120633458 261583615 331009945 844804550 984862577 300480519 381072971 607882459 992357769 717453215 958132396 196246192 545110730 512275696 732709883 622546649 709858034 482460511 877198650 343401721 928863097 446164011 622124842 297151375 872510174 254339062 442102591 303974828 368243528 342626800 436669504 129207432 529240106 27482494 282223024 927222364 961089677 2382554 800444113 833249826 835987445 284013266 843284386 169243367 286111014 740166822 935786840 936416359 996955105 968155640 992750317 885144012 956156788 101963692 487319320 572833778 847053663 448580205 468298691 834181632 910241800 398568784 460683866 34776630 162028813 589365040 648856923 857867415 876847261 521348838 569458224 543401814 991509058 978845994 997781075 358747868 628194401 508726285 722394740 944442462 961774302 991753465 996794465 689988063 882026363 739125934 763044917 891707598 938708145 6639271 796880780 193021316 220193069 363105058 725382072 789842774 887873656 261676006 489439163 640928156 762291685 904660606 965609965 598332455 882945874 72997695 916633573 679666691 949274886 535842932 664183695 686068125 791874352 536816255 538133096 278356614 304002515 571704741 965490245 803989340 997063395 998046466 999310016 720541918 922188303 951896501 999460078 82250446 640740245 693245970 840845558 786598736 976783598 738980919 871622063 684197803 695933032 374723037 651997053 295736929 902726786 113357971 784493494 894419829 942052234 80913816 381476922 222923808 444134037 760345295 760773884 519627616 577562084 706139997 876893892 379243712 936248561 454529540 531475538 851779654 863798550 510208550 536197973 669634181 880407543 855869841 860390134 973695925 985321580 394272300 590463098 81748042 131488425 311912546 919375272 851159561 967314075 830601051 988096794 367533632 873565144 424256249 928306879 763573710 936563046 967884296 976783609 29430184 67150624 35536813 476342582 707401964 807626141 392198967 538722725 454910968 875018987 431431650 527046439 364063806 867832290 93659403 879675703 829947319 912919832 126884261 158258005 274026998 700112553 433689254 603424202 873041768 884610294 736506762 851764042 890510965 930789967 172813454 930200347 436398449 906645380 18596017 140164572 360753790 470253339 642414778 877782225 56221853 764760490 951901045 986196545 738939953 876430952 579299621 874525769 615605369 788522755 233704369 510443390 49792487 969053195 995867454 999261050 498322333 607926925 7866090 554481213 797955926 808222204 54622045 905124317 946183724 949411930 661952619 773999818 842899216 981076150 658456594 880653452 958151025 988268632 941857634 977391878 351479371 420791545 84319970 687813354 835550565 842099747 925165530 927088075 977786544 992626906 922484498 934256909 67301185 421274383 807219785 857785388 72614858 135504261 586684998 689052514 20879861 318246231 487015675 743002797 716635866 774653077 784935823 879374341 998566012 998737523 658096714 901861723 188303606 817229450 300820076 906970819 941214115 960806218 442529324 794621329 772528594 980583539 713817553 985446954 897051268 969738717 572632328 877254448 889877479 908569971 219081838 333150275 868409384 966862611 270426625 316995738 419288330 863093295 162327513 283726460 87621707 961187997 979559883 983136811 53612310 974398471 165021805 760548642 398495275 567359102 265837624 780675807 662152037 770832052 370107921 584201704 46935184 753624718 334986289 572058920 416116243 444132080 607293295 639529539 551142966 963071388 465296780 519199022 627414687 663760515 70108242 93219987 848590021 932732964 822830217 963966686 948337002 979056030 857123206 982128161 121660840 835199865 882915594 938619547 46018726 298427567 599318512 829821079 447003260 894992123 999333401 999886099 813633268 883695936 665468943 881138982 360662381 871020138 787510375 806530553 619204360 771399842 121912990 733415173 695065800 928701692 487044471 629477048 752809309 759469651 385520959 579355754 280614464 830323058 486099639 653488306 143052956 645837518 882275865 959592973 702455985 775764699 361420063 920738456 377577684 452642728 456225803 964870207 824430624 956137382 455488616 587431095 952347133 955455732 514243912 944280425 372440183 676533614 881576351 979576096 630297287 887919666 601173771 896428893 116828074 486917801 69455894 286504672 31230638 775854970 158642882 660172462 752293480 978828432 427634948 531010867 453703269 708786348 464960718 671536447 414021547 959486673 993689175 998426626 284822245 481937317 395690800 453350401 507131879 873480242 338174737 996417928 508445124 793477131 103198395 804565408 362684988 718789087 501139783 827337887 45372401 578050767 396167698 904543475 422162669 485232070 528128313 711057630 13020438 489863533 82458251 859059926 435063151 956695952 849487904 976527912 108268843 343596784 161728644 461851292 678095557 724906908 567672493 726099347 416607352 490644238 740255997 927791709 811629454 901822914 607829655 727807225 157035303 931606586 375734492 661168874 864273690 972933960 356844504 863625472 845537413 925659172 600518167 671633520 931734139 946144561 703045762 725336273 676520261 946939003 287628702 561811870 982170698 993953476 877183880 956565106 998582788 998982922 929653721 960877604 970700412 990695991 380632958 449137916 445510089 871559833 456451186 759840838 915045225 924017586 785221945 942055989 139249934 641716018 79069704 642191463 202809464 677630103 739478701 786895892 296375102 444842870 206109359 461117130 873518129 879221711 288940042 391400614 239413649 801734556 736768640 760291197 282115096 363052820 981650112 997507759 414799174 706349881 832678997 841134598 578825672 870962989 552026234 622641181 711236907 871118144 559418601 742579172 506008826 755956366 809241928 816093241 884289578 988728833 839742137 867821191 376755466 924754814 916118651 971463197 155812391 933697509 308804056 689936381 669616903 913745884 453599001 850683969 168298053 536599719 166510029 346017478 954357641 982032958 848063386 923564844 239581691 271731475 643944775 871264972 513516709 727430963 684165201 839492495 199613858 270399854 599401681 806367814 618472955 789967365 504448043 724857649 111035920 926857296 233502560 337027423 759510249 870583993 698653078 965140615 130331598 222083917 77008748 900742708 987655694 991954698 50443271 252669470 237492405 857065667 217695347 739538075 106770313 970365821 682054374 902822313 672055166 816215320 571885414 836593059 427780240 685367987 437098590 634684296 986922830 991389803 704019333 984805547 893600276 954934768 631225801 685616189 147266139 704284119 997998933 999303347 26424486 57639483 75179318 314179262 381212970 492971778 689254193 879189928 234821831 325427185 962094845 963565891 760373194 853036291 993022031 993876756 168964515 195111862 170985784 320341245 850297105 892998698 441681654 892361711 445131126 820248346 584406076 595439285 625171661 946310237 114486880 341943096 542859099 576216016 721818011 767564678 290250237 330694189 465416790 531035773 930165808 993536211 241819388 380138327 419401841 516750110 552951565 991754630 62159258 461998227 535567072 694039984 422117043 541081276 641339990 735729097 922467458 928836702 870407925 977319800 607219396 998817337 254170535 964750138 525430984 928120308 317818416 828749425 794745786 960929708 671359755 703711056 537657224 634454903 855070879 857936603 836017320 869437987 240016533 444112931 10645160 42780417 966263752 990240293 648813491 791187528 794715907 898520390 841563952 976341012 617005282 681679880 723237170 742104581 161099193 425165699 809522538 844467655 674678021 883412463 314394868 926268467 182262792 412149450 872887107 984302941 92123949 723865472 280605103 991989020 768627541 947550658 938478672 977454366 692211970 737746920 132694409 641630037 428172930 941302066 43074160 850921900 523613559 549353116 860762271 957037698 121954681 774517153 831335262 939741005 785482877 961816713 236342553 361927728 288662727 695523953 276545674 447914007 540125759 894261338 255689896 281263986 664167940 675352759 120996923 482488651 140977544 675484787 680602692 879910680 947070510 988982088 460104591 569687345 173436861 866326445 444445088 456364382 550930187 601689422 69071801 914621850 273469476 532963826 439036593 595058908 85100872 600988622 880524131 925052776 460466198 853816671 914317201 959694497 456986166 856127971 815445701 894556570 396532848 993854534 59857865 478237537 264255578 530671875 492025778 609498385 543574471 705674258 186464587 264229604 777542775 971251406 213684573 450149718 212137043 463488948 530861646 788726025 788012158 832842487 271696855 985612414 418941958 678957707 619989347 976552388 787702023 889968389 845001907 907145638 702862378 820013754 604621532 806589046 795476512 976322877 594963178 630144942 317761645 841309099 964811195 977089255 23268041 977179709 879378280 881633300 705811775 982946046 820566107 986314421 420134498 973380046 298521197 776636686 125188045 906326747 627743714 922450412 925056740 965817929 355243892 405427296 317132158 497068497 84685809 441561917 301018308 795917170 590549106 870851857 384172251 805284452 694721424 877184500 985392992 999040362 475967893 711079929 740213175 898695195 306662404 768573804 577091639 876227844 492132599 779105065 370669474 721386202 581570864 736494268 240800942 988734368 599315302 798150203 935644398 958685845 144510422 730927525 739633912 910482877 102668876 105149074 364490889 528668496 146639936 199623411 552103474 817664061 284786613 437263646 378725723 770396734 373544571 690272949 520711031 898628860 17665080 798170839 974170108 985806129 454952265 886820489 398764270 693664849 386553965 499417750 469313669 949441037 983171365 987255475 535153621 727279971 486976568 666267952 239233077 462641388 988773352 996937065 438592795 563120243 688897142 821606091 613250032 755573529 478593146 994897944 272328504 371301854 276114531 938551619 831441545 889031782 747178313 885036746 35083503 510307294 747326301 777173568 561178836 851181967 812865551 943187189 495495298 774562718 419559311 604364862 924932646 975404109 209904335 907374489 573664766 878838691 501932548 901479686 167245188 780632929 424144912 513982574 188333000 220763125 954583645 956606855 359005032 579650383 439909130 758382740 81943485 342246856 696033640 991762593 637541887 764275202 865850068 993384069 59296693 96982438 913273879 991209233 416680980 667367152 757043384 923933391 605931179 740626019 292218373 721729679 709392411 983593261 639473060 833196873 666710865 960062851 127201560 283839552 23500735 703415374 799740825 831716780 685164421 739690054 996030765 999944890 385627976 493963887 558486520 908288681 450864963 800017965 623184886 811189033 298170063 614656031 673784994 730547923 935575309 939917782 432739294 823102215 914638930 941500004 467405365 719933032 799653193 978586935 195495070 525664593 458530735 708208705 475314506 723471246 201418423 746827057 310801808 449902629 693547140 733562708 270909652 737270779 205754855 781756809 691648687 981563335 738846455 924752794 257616909 488815687 983739797 999180563 884998373 949183225 789811114 836296379 26194692 884620918 818838314 846022995 593054212 672041945 819896562 958420751 703872428 724689184 162456682 207798038 429295834 436994311 476697228 504442080 305230850 905109986 890110009 898313798 755283704 890845934 746745276 848043988 934112420 954217438 173583640 415540003 31977912 782276477 797132644 835458726 243841128 614686725 29119654 524192433 907183654 951512145 473475261 796748830 622556369 720479013 817864042 865662929 473271062 815914090 206655496 657851557 540163028 891494829 873487127 985726461 708201935 957513926 889953232 940433985 732343340 909108907 326078984 473376035 941144352 952982776 181712368 567615439 889974748 997107680 724229099 955650066 39948123 389669075 304509582 716490494 775688903 926569197 159783900 826359787 342833036 789226723 338704693 651212169 381855538 576904046 738815540 926958779 573803051 641421150 562223293 614276481 183612742 572766791 370102985 526241096 41347639 850406700 771863881 945289723 749758759 766606436 500397484 791991744 504388858 613971319 352840868 374498547 642373770 655425449 340399944 892250836 741144062 768475476 172234016 437112948 795025321 957632239 970094649 994007186 493362050 796282720 244891424 900027952 445262975 727072004 432064064 574624080 387569810 728471678 386447671 909222317 319510916 353087113 666281025 955212397 400851602 603153335 450583184 512522216 952001138 969875201 13762457 422044092 686182075 881183665 680899993 860045110 152347494 234472093 24859736 851708372 657413527 767530595 819999607 846349193 39878844 156413179 187673980 545495747 305956851 487923274 70060243 206242783 853747766 907816132 995486987 997717528 901442248 958487685 644468922 742560636 212947055 624127690 622595101 710990444 688160350 763598194 436855560 780896743 19878874 555978520 183712875 578438287 127327188 452575803 160267871 910196748 259255664 682202120 974272266 992504649 307708664 767634547 851978684 993175369 261171216 416523615 130827695 298302001 268939927 517050221 873820920 960685449 996527563 997928731 898190225 915597343 574904719 871994040 693892518 752353917 579151032 736777382 10925705 924731025 217354074 307601140 928696270 967542655 843314632 916726173 720515949 908620295 113133921 480056632 166401928 981310513 746223825 930617579 908675809 922827081 375294569 944950161 272870560 309463498 689903623 845687442 744599922 969359381 175982552 708877071 744155263 940055129 916436557 977250415 379240602 385926746 250512406 584592660 190242308 449958862 553818448 846284899 590419349 799985016 593731452 881053894 694652986 973113604 675240720 936762562 809777641 882727277 769394674 932003087 808722841 904211620 495460539 589494179 103276022 316162172 809971960 962618288 139893389 555779415 378806877 725894025 590805658 918961616 411148432 946849150 549678098 936308452 306577723 312638878 843429270 914191375 251285728 473543151 440169756 884110612 113501241 851106301 367474719 396712810 456736688 557933133 435716312 757052052 176164925 239092836 679291049 798460217 80966092 454306689 78233619 297507139 500159805 608307545 168211993 253828260 106137237 398250215 139872798 221006090 941990461 967635387 594353714 810770849 822658671 864196861 453553024 717351484 434610762 499829402 725648583 845823083 100061308 481541596 926678871 964311459 1183713 786743670 746161985 856156162 18155348 809094831 351151617 592125717 573403473 674982129 973605790 995112018 485260841 798227904 900785738 977913695 528654913 620354441 480172808 603935003 498022327 703207546 503120246 533767856 761783880 990377394 830211549 881661429 328764698 661356651 965535317 983055435 411073154 447025810 649200014 691337439 750034386 795979458 903419188 999724050 545092615 821253952 560845649 762171331 193417527 667091037 403565771 697552135 186988729 274888722 689455653 733524520 973161631 996592578 402940349 779337390 796834296 850454404 780508159 800572003 370452741 901378173 789111810 968345343 290898774 697150582 631071848 938184101 908751042 993861147 788358089 934683972 999168733 999598692 684472082 986844050 196428502 244476444 423925552 504643671 958748655 973593132 206379613 208254896 294840121 849619141 43730911 773406592 554354856 909579382 444310152 474849406 955287993 983812920 792007038 962155102 431097422 518762065 497072947 613693510 888482760 970544236 250649550 801973900 576109466 898040459 679825824 742857905 306283386 709258394 286628931 315998722 937080477 994676028 671515420 768704554 958922952 980804579 847084827 938713313 410265694 844423508 984172383 992602597 289998273 778484990 390316459 852649554 740201909 915829078 22809683 932023959 676760021 710748171 858575115 990048808 250346777 644794115 442133160 794522612 581859976 754859181 772157125 891262304 560242018 729370034 60724141 641899714 290092781 558529769 243531237 884646836 474788386 993776604 501462998 643458793 183657938 556183276 812710419 903187141 700040363 874949190 745965004 966142537 967948583 968741173 660307755 927669934 714645663 746777828 278222130 588663062 75588523 904036159 142962914 678326329 313501253 778794156 179744933 342815098 213957138 714972029 366653690 455601202 70975725 174263015 661077500 724502596 813411107 988342181 119294926 686574293 139415395 649168774 697659162 706340295 657936344 813496412 233035132 630481458 239241747 558173939 297723600 844270748 584710038 659892509 104695861 924767620 108349586 708115142 604611509 768992886 429283497 998929147 847004181 932989407 380310793 920139908 494952105 664543673 101863683 576857713 903668505 969530212 504348146 915222183 268056003 773297991 739851085 815131526 51656438 730020987 425262004 873879878 962973264 976801167 136358752 212574535 516573050 973576487 365808839 495558981 241303405 636556437 422378369 868257566 201380180 225425266 709784681 838134158 68936558 392773392 547377202 899312422 489664435 703272120 507257414 943682740 115873912 401815997 170520959 467010952 680196539 900102925 476537523 992031018 696598403 938629225 457771077 543575166 23162582 350273277 95008006 702884887 583242014 956301905 140234281 876881463 645203962 845760018 780782355 975527820 74676301 358835283 83704558 267444238 66276484 542994174 909908452 933264115 730694403 769993303 12944452 574538314 665174737 740170725 58396105 817194315 359193752 687569004 187288417 495454394 448819513 914363855 841985540 945075781 935097998 986729881 897833254 966296944 939801226 947751616 653168352 686605628 152469955 510456090 533811378 931720007 958576562 982360642 151815913 675599147 566967320 989496456 579998521 786273363 685063173 924482075 577616036 936867340 923504378 952125265 400805999 411068809 607489697 699909842 265037562 765438373 673882989 838021672 827286210 987459372 354230258 654023094 711504353 877579332 98344137 384482359 956806222 976534917 340308476 373693274 656804606 684844911 997280377 997389974 558700039 641930631 686386796 799541058 847273922 855769783 278195252 301448084 502944631 540109990 40546995 660958387 512480382 886751464 984306566 994074938 982630472 999213011 443973516 828494060 515754432 657100804 118672217 238019627 449581131 849480260 360576433 732572090 43618617 150265826 623974431 692514539 949755436 951397569 405192891 648876489 618973000 854001905 364937224 853724462 266213143 469389565 785576251 922316711 134917061 894542705 634807325 666326882 657493671 685492248 380808747 928272033 31872294 141339997 303324195 422484315 466595386 900837979 398674638 965666378 122829302 607223674 987724752 990018288 314357963 459880949 22491560 959673358 552527474 915734789 488454924 538136729 697529620 813335634 769860234 961593371 851254834 941274121 122333424 568199882 420312264 577772985 582020623 845142547 964394573 981281965 979068175 981937159 186772039 419627531 63053859 650984317 623221328 742830323 49041069 969994908 977607684 981455713 152715021 629225897 125680400 659550767 271904657 587424648 89408836 133092295 669460179 778078619 374168408 820035154 306955352 539272433 466188047 713028472 986738646 999684620 452838162 965901132 43604007 854313042 917622963 993739561 664419015 936821146 761534441 763206293 167002004 546107586 943255894 958458742 923307140 986463220 179979683 287531875 216132839 800523286 659460968 799339386 732191624 778763297 730346310 954439394 454776162 751419741 680151526 800476978 827808900 842768269 173467993 394471180 119453883 708322028 221745044 883108028 288214695 961131683 752599910 965864576 341540518 874756299 243301241 293268163 973186358 991596393 474157234 630795199 605365677 780704123 607813037 994866978 959352853 965018952 666972546 725760807 15294139 955667061 739816872 837003403 46445395 376106973 531989027 650984145 262333731 565134803 441413812 978946759 531842833 878959887 215938200 707695613 875658203 952059887 524613540 984173079 699182307 704179090 703990138 719688472 588351842 865810229 788935413 918377228 23086676 709187007 270145163 456912036 527100679 962546461 268164319 606315715 805725888 893330073 493998210 994274195 476224112 786178195 762383511 808331151 300801523 720849273 602915284 884704846 87292917 994306062 42674931 756577013 372589109 478342376 416753505 891470326 490827676 517779861 724319041 898705056 188473722 602992610 342360592 542989053 222354517 811389681 82745983 939132170 942948987 944037303 440901437 502448447 198730197 944444546 143774665 694420972 738995584 803936082 737239431 976962331 636499263 815036758 5197847 672196580 560971775 806195914 270433470 401548849 670447722 809945014 801579553 962391542 845985601 922673081 821563218 990193667 43502101 279893375 308123094 628366530 948567883 949990690 448693305 789117701 142546686 967413734 224736912 291485433 325062692 563239980 516035525 720352189 395783966 982112232 555464288 966225820 451446306 817123700 654773253 977755799 873387150 944660007 855688989 942195231 226161528 540314785 562562116 754947712 201991078 618213266 730439054 869981923 83151707 668815163 422080007 857838474 914234616 964661349 468190275 955485722 679859327 733403303 67918382 218820646 821354821 831579700 507836698 583347113 572670378 897272505 918176648 962154466 828559537 912008361 20235092 576515676 998271858 999961910 600047845 831378482 936246300 962624170 173634190 336513991 657389444 713099927 479764627 713286372 538101544 550611341 292684333 866546189 94563928 295760746 663303790 903258246 425884146 506997104 454746484 827334441 701644924 743653128 276261647 632968238 641577015 815333560 696009124 801593100 682174709 701107479 833227593 868711846 970000129 971696721 142502494 679676539 197492567 831589381 449420541 825869928 158274708 300767814 493920624 871841561 536583458 789777011 368517493 805629462 872869999 888901679 572275492 784110695 690542940 784788336 885785495 977340623 554234295 774284542 418153051 903185071 65316339 110076051 280450374 974047580 87032865 361455913 209369873 520811840 665294574 995418514 30179469 41313127 622230944 805033381 224925864 668290617 510299119 699171232 262989082 763912873 806035491 807196978 437244912 976973103 664886839 702685746 501467149 763692607 233726592 706238524 774546760 823190557 363751824 713999069 538847604 979544644 258943854 317764956 353549288 868777198 182457342 844536504 810701288 889631073 44807097 878160577 386681331 718796502 293670519 432901068 632292040 868768736 683061649 799685373 937172253 976955390 259559964 274227649 982420720 993916416 762931951 939788975 5369354 392855062 48143938 184270777 978641739 993887763 771208853 869287555 144579273 518012644 652023532 697489027 671954171 814185337 421370238 736048690 15861052 219757115 86328177 482869723 397704722 568555155 682448375 903026567 961006873 999845656 606012388 994607342 175059894 175431629 942704780 945789815 990188023 991752487 348461544 381852659 802866447 950948613 162421046 794750056 983590200 987047693 861376345 862614590 657304535 791084335 906979111 963077347 586284820 835525870 760044205 962986476 469632121 621309219 116595295 306211841 100309774 350630439 441479981 474887885 122765601 357897166 176423285 473462916 285933560 781758596 705068864 800877478 230240473 980446539 882332003 993999212 872869994 886139038 713425182 783911113 880048973 904405973 590634635 868140231 552654362 580229632 457500550 590185654 450419184 567740630 693520077 847810414 469295623 958117938 469741874 634761985 704757666 969090300 989232985 993967602 472141492 713523677 271726264 419749784 7896672 553417406 613829292 908481566 952461587 975484341 718526012 767616313 338466265 512631658 677826758 916480888 406699345 494730080 753742911 897436456 506839159 777096450 169357749 229286427 387496307 724963744 976768197 976964651 368540201 647055239 550322898 780840743 529129181 761783540 780662299 998399846 618121239 895124471 948805730 965123880 870570629 878745282 725696018 976366848 820895980 892761073 880312381 992349926 43958381 335864341 288718868 979986686 845634624 867669604 493573033 911236459 64467856 948397571 242940010 746864166 479476724 790562821 651035009 744254893 658051339 796317597 611216282 635490911 358841135 367383417 703048454 855896909 551216070 676963606 810183998 825732630 439915502 591576299 500738000 571453990 743258561 870402079 563969635 769979192 24290546 507798191 168837839 681692593 177442080 728099366 683621122 888498163 365830931 751340935 485290804 901419422 642018383 681690619 888258490 905373426 261503952 349688268 417867941 622355594 589981501 942515859 16983737 364789689 115427976 851917577 36919607 285993857 195626340 572124600 426967939 512374985 73617310 999732640 115854078 686234797 871558844 901734525 129890189 888556267 445942327 528421689 550284928 784983258 577212302 904963515 451646299 887315327 9785956 56809708 219661717 436895482 838456717 916123541 280363351 690459738 220110360 646850604 699595354 928397166 590323202 647621243 337992655 754560001 899892298 979741932 65785729 859777792 492547231 669370143 583935964 616237597 797459927 822977203 166476411 962799598 415491535 699848709 957845676 992648195 399134348 950460777 291425157 514731483 311503901 575976426 564723967 725956310 395067038 439102399 774905073 852411780 251604854 364512571 564999545 986293390 298937151 922550561 288841278 569410784 356801707 447372762 455381953 666912622 866159893 871502334 626937374 733770322 998353198 999278522 568143907 682415659 96418268 702512387 34818018 209380242 756652227 874442095 617985199 946010005 446491532 880869319 505115061 944272496 188687624 803419301 44873436 816764845 331719575 341409492 640923243 748949945 875139995 879310617 979478609 981871194 299120359 823284806 786276526 897024966 500561343 782362322 876373023 916728078 539892214 945338924 446967474 726472365 316141010 628476757 3728535 182559662 923791221 932310831 488433609 986691777 424501759 863924015 720782232 812855161 953697260 979277751 390310827 698331195 415093224 798897324 588015232 745784144 45767057 290987451 377638050 655812869 230908019 917054945 298932194 494564312 942814612 967512237 883541288 996569110 786993125 864109286 888541212 908252959 767146354 888192139 804273789 924835239 143704357 193380788 110369749 952806569 51020238 368233704 398964412 883237429 202067755 362133732 582499793 694406886 690020188 922821212 383785150 805271809 118078300 970746559 33118171 293826340 431234627 661723437 200947324 210895566 777866094 961889483 476398586 688344332 804016880 978572872 761805914 990868673 791126498 993171654 997324093 999493833 157053845 718085425 583677601 726254595 295357080 625837546 590663365 900216841 734395027 920259072 477293831 982737611 957936461 972286399 583337674 727384601 333017939 433473535 425213020 508978740 974656100 990958479 145465535 507611028 705071023 754306343 624655530 821169524 481531207 764000580 904677545 922712186 645808092 836255196 127818515 598854028 667021000 844908367 301801539 462727936 1236857 261692916 41800706 941441219 975883264 981109859 449819538 733911563 983571245 988029019 488767222 720671881 252556619 466891097 569713016 919786724 886944634 981194258 809924028 999140219 724834744 835620341 384437356 539365592 940312297 945132849 390215465 941268501 158068583 405574807 802900860 875519638 732231263 801439451 67318231 965960571 965914572 999655465 964747296 979103888 901545451 971411589 557331254 960179093 181679708 203607895 205387262 822303797 100893464 458328312 115303466 909642924 742407853 808502168 814828328 962433707 122468757 959280080 148530600 959533719 31392879 110995143 946727679 970195712 687048944 721718071 619061136 872478247 292149135 544156389 508903968 986889959 395259553 605702060 954782220 979217332 808663287 822130989 502107390 553880687 673362234 827276380 521960787 786768625 303592160 684310662 518056882 710636500 675059675 915707388 623152185 979240298 664555045 774083783 94235815 622511801 787337976 811137169 58650293 599071341 272879730 958075873 465305706 766023665 632638636 965191384 914124827 919983370 934402044 996578525 755795906 798328780 88950987 309164652 271937865 642190273 473107110 742906200 484612093 706854209 654100487 865017063 721301623 789539115 87765149 600163869 957690456 969401222 878314172 912752954 783914859 901023141 876402905 889956926 918446384 975212086 845743971 871080628 195572652 765427725 570468273 828884647 853531365 979772611 177614012 561423665 466685093 890455621 659779816 886540829 812798932 958831122 523179019 901073536 115018878 397541608 447508847 965640285 305350676 748783907 111105561 227709690 885888828 894057550 815682576 948187025 200358656 601279729 304390549 782398405 381676430 745716841 34111841 142793128 552504360 993809322 265653926 573307733 635942018 973246976 463308029 736746959 643269350 901470321 803553930 909238099 663959636 725585714 214166658 711471897 653529281 682276703 535017016 950149589 822558877 881931394 842056477 961876003 935699664 973521631 453241096 899262577 271149133 344116873 197331628 415983260 132403279 603455133 386054481 755465510 365037272 942800185 123981105 533206429 618373185 675770091 478837246 559582412 245455514 456018409 741228096 756902608 401466832 932153506 33611922 220039236 795021101 928335563 469514765 674661556 404787100 956954371 828048957 849701152 806313947 846494400 642250070 910413871 866806036 961779756 560028559 799760201 288415764 932346778 775720086 778004974 16755231 671781750 138140653 461733774 253616758 468182824 448725713 559378904 381839345 652007310 196858688 679031889 338861535 768435291 924067354 956622452 239846846 612879035 967429713 998553606 259706681 884399821 304170171 883001387 606869659 761662703 801089459 992564426 465874674 490005990 480980070 783877536 444100350 661329829 878333783 954001298 149020747 545240321 899332172 962879619 135187355 438145190 578164746 773616743 941288198 953094713 547225308 877442926 908090346 999056717 245551894 395690192 634623070 860700060 827282264 948320756 655333675 872347036 225533407 386384610 61111463 778934119 405241430 428927779 787150198 800632473 341895804 986542356 569519846 799598396 711381799 982227405 685895152 924930042 692002960 888679611 410733576 750156180 184377198 423499084 813101489 817357812 357333550 412597009 573460099 779354239 117702830 661615740 682253983 711243657 514198257 941668358 656247142 882223154 876867241 921710420 941767522 991862101 560950722 563749530 290213189 690265117 275405656 305355290 439188710 555546167 783494741 833442585 174537482 980783056 207047489 542762728 408672982 972347331 470302422 734334904 560059321 973993109 349591753 518437805 770880554 777848998 554503980 984276566 309298917 333558464 410859005 992074731 345101290 966291580 618278646 926619966 162121696 387292163 19646996 91762311 574093377 937492511 34167351 562454931 848799215 970479608 752857918 771213126 623756317 713856102 323824688 626717014 407227699 440133749 177972253 750561582 667169035 689100255 626334876 757217526 223367383 981822290 959941832 998866272 158089141 698829039 271266865 870717107 63282654 254453037 86979681 510156350 857674083 883345063 573584187 656883796 344463542 709160543 846223005 886660235 654550561 977882206 763965766 929006402 555481603 686218472 411855179 855924128 891451468 958347750 682134269 949674928 953820738 966046341 80043259 250886460 107645480 550695612 692825786 994936332 127457784 858004944 840858401 937499974 270238908 350068006 968866710 979947596 194223471 404644608 553626368 841471155 839226547 894511994 753951161 778517572 586865389 758042706 469775692 837778654 196363063 747123451 664308130 825735287 215161624 813918634 467963470 994731961 72002772 677511579 351141204 694252223 857700795 889322218 673542442 984608231 815487704 816283291 700592660 819048510 466185863 613196995 363725870 717326332 281371262 768745230 832746059 879927682 499607553 818269227 782755900 966931046 618750333 892459931 815767236 902134023 668401714 816669904 26314405 154144379 75774535 813496670 200082537 725568159 974527112 997854086 404486191 739296339 275317919 892599593 165783070 223746417 31016012 775604085 959663405 990917117 616107700 692003712 997359308 998648039 347120830 365514398 62677053 718408702 36110813 531268094 993058685 996844534 550084768 738876029 43799635 121196065 761739281 970174264 339545544 439687549 240988270 816144680 788986090 980814911 375851886 962910769 139992700 866102108 803922163 845356659 241120128 829914727 730686308 894202082 316347534 386041336 160261539 237018732 940308774 941899950 108725297 172282146 272630796 782470688 670789541 682421316 354149047 999667239 824731482 982307088 750779605 882222293 688079516 747481718 836339421 936127293 71430408 370731506 113663026 907378082 46364893 529793950 964735001 990122207 665652417 813090926 653028208 895978433 448563816 663908902 374044941 759180816 385355159 726921921 948455783 968366865 887013215 986765671 441043554 664978148 902785339 979197600 202671400 292951320 567737959 636965554 614478625 881208560 867644537 915062467 822190421 985546442 801537023 961667150 463748662 980567822 93996729 832828988 939101866 960593979 92743259 607247202 4671138 43676648 131391425 660400304 301607386 522292862 667970408 910210628 134942342 977169687 466805173 739974485 980649867 987213699 677385865 736840444 937836542 984054007 585727476 958449756 395037974 831293870 869662335 941360186 333315941 582607961 250565543 798879810 448284391 522694602 727295956 998182758 564342150 963549420 460737326 721711836 482070590 712183377 93193137 469394039 508204913 558974121 529277418 687465588 174129698 924060260 173283421 954111643 519493354 521144893 680717123 809056237 921248289 943578383 647749667 765878860 418959774 776358760 762214727 776830459 706143941 960788248 707795104 822115938 399411449 683883339 679686735 834990822 200527236 419369970 123918746 602624780 548401265 715376153 428301117 587364585 92708487 303148992 511430336 748707307 221852570 263134089 281112343 980211932 498253413 856350188 14840599 676584533 301861707 840386322 826315080 855528489 165470947 481906169 488739868 768329198 574761468 962226345 624032197 747943531 313030672 926920041 294138213 325808355 709062840 969629892 466978551 562294026 145141956 703440981 827563582 833630042 967520079 990501041 712602069 890199342 618138176 642029860 588437573 997084536 23896926 794701105 408185703 495753062 509657171 597063060 447540821 766591201 995211768 995329561 999889387 999994772 243677880 815415558 405224571 434436428 321394942 518580086 945928917 958786408 418660105 576368941 523582857 920567726 593347747 880376084 258885959 371630203 353691105 413144324 204988310 877549484 8846696 419912456 546242137 693860410 392922127 864754033 705660285 998040250 524376775 943032774 515246944 912590767 975348431 988252281 555484971 880526461 120246880 971655565 488003981 974639588 771507102 785266753 975879540 980528186 337240970 489323240 707879898 982570721 440887303 604772735 415465752 931380287 663403201 831292392 534837929 993151335 461390114 825254231 538640977 955490317 986874689 997238228 308964856 559157713 112610200 692716605 881364655 995307606 296130574 504563930 316755250 762650128 390789549 790604542 604847037 882765670 771655607 819863855 609709480 654942047 56496049 959479534 836222392 864741332 138459255 255242886 762402831 885561816 223442731 824815119 943575553 951882451 642369500 683594921 79500267 739549871 341448793 819846059 621819252 837415943 616941463 647538340 424287172 851383230 238865187 973676590 230115358 745268079 40247277 956164071 572219928 620733652 475422959 985692052 93287195 806287133 432196694 649758766 934033862 951778978 396086715 571187364 81021920 612544507 372548546 876896015 366062341 955122703 136906801 969431224 94424657 559334362 993064905 995908680 758945485 834564558 335386822 451842831 677988538 755948551 309931228 754739426 925724166 972149986 313785235 603596083 622280503 662934645 169410650 456889974 132631955 342601621 551927992 805856287 865253279 911385226 72454752 552541232 812477762 955477151 348132467 523044144 982687259 996989468 647673384 798828629 274647982 275815183 92781487 997732447 567732916 882590274 379763449 814973632 223233869 952245586 438563125 683776223 607926008 997522506 967405823 983632893 508689631 931462585 893603306 967020775 622335805 743283889 478362061 632575081 93454090 753214928 903009874 998776104 354093902 900045440 252246383 644594431 484492038 862004236 604545620 826421856 115316579 288186262 504814279 959663294 529855959 993657507 661757245 978308113 628802845 725647116 531189187 903254170 535013062 562707189 584134387 988726094 981802189 995636194 715541730 909084063 48480361 268088748 327250999 491692872 895780980 970771145 72453919 499349455 460138476 908905628 773877199 993177294 860429586 939090763 723866494 847769357 434893840 883138185 698010612 961250474 674363153 721944493 239593207 523689270 367719425 428867476 355412112 967507855 996434185 999187142 478109850 621495359 471219365 737720750 469426324 509957999 192030025 396458106 100133482 733626090 796358727 911619136 446291220 465638573 323619380 487204645 657732991 737570862 980424498 995206612 363110582 847958808 510141639 816545552 962663076 998904351 930909098 954706302 214198144 338105093 98277962 231772157 408370497 493036844 343216216 393677640 940562274 983756303 72180046 963509974 817129753 908657103 725288509 807197184 834273651 909777674 750267393 932545666 855486821 967824720 42753148 176726192 638721231 900729957 95623592 846448208 202110005 723418492 185816432 196754266 687708659 702198573 226663787 694792240 266228149 515329554 99782928 429790312 86751693 421531612 619683060 801999623 348998670 962181106 782203492 793056605 291193609 298829763 440025960 515380423 22788407 431369692 98638894 237603891 856316741 960380977 350050215 470230638 803431023 929632102 483341403 505583647 829058117 988077694 80455471 698785648 311982651 978981484 518476458 597594654 794390824 973087966 697981392 901879052 980172691 981953801 264155374 495485982 478861897 939520348 88870779 135152007 905417788 978127721 633012315 912846398 546736198 891611366 242214587 794229459 234290341 902657677 761443020 964510667 240171127 641926260 41229971 847850305 333501799 761379707 490893015 760124510 335463493 527376938 499875291 638475235 626333895 781219272 511361225 571504169 968220420 978676541 972040672 983876158 833491621 945444378 366719691 914724418 977740227 994133298 838977260 866219430 113861125 213195949 680052060 848675491 449151751 458453879 181195259 615695246 969383542 974344756 675228980 864034450 431508726 967806248 753812690 825944967 680897156 694902773 856383672 939001411 279908151 946404853 677364462 912889668 799090028 900094108 170590742 835251487 641775187 718937605 484295208 675178767 59521299 403420607 694141527 750043453 344437778 811768837 803735131 895636430 504361068 857113791 764520717 883580983 617305952 972655930 405093101 438590898 236455033 732191990 34948262 758988560 682746923 995466729 766659896 785233813 122419243 962944557 200306317 473013964 674432065 823898925 670016069 693361027 147489734 161897101 24671653 307163599 530817231 547579488 181808703 699361125 750804937 836287754 729285933 966741080 467773996 648603824 32093865 905805307 731998832 913882340 526835494 739006171 813917199 831112650 33499572 450565331 51428275 236754727 492486749 580790377 119970495 167667308 400970613 726019932 390335844 526452437 83114866 887586398 161645501 330331235 868596322 874092364 539676797 614455406 297356304 368008327 514098532 976975584 744464747 832631217 523335349 955317192 204923034 636731101 159241444 493316091 75414928 989751770 288793209 905678768 352167013 695298667 69881708 105436139 529278679 974429385 955490621 989746989 214152287 575419408 657945251 931213289 755943415 986832351 573202502 934595539 566023061 786256225 284093898 931509744 872436767 873119858 979241575 979904374 282098634 859471534 651038734 917764914 610857011 772201465 846909432 968962295 850992432 954387642 152808575 657700373 608977787 819328347 33906267 42503207 854575753 990290904 574136593 611338541 218594423 528306828 670773813 900421303 720727574 996510480 272922395 431442612 220185525 464584894 524534944 719978418 671929116 804710584 347374269 983455363 626754302 757517490 837588150 889317543 937122207 966951293 628102023 730223496 623844407 645898389 134242272 538155100 627949221 782777381 125064355 167407696 540747932 994235787 855176269 883390699 687127841 894987948 955922130 997611953 798861501 884577236 890416582 962528547 537827809 750087937 374679642 523311563 567520493 707772958 627287204 687461054 764063409 882735458 781334730 790606734 845585599 926972363 297656710 661688354 569846119 999550857 224040422 900948960 247822567 355121390 429902744 611841374 461744701 954322839 67714334 449233376 894882578 958474080 441636617 604160401 749495307 765230754 131616418 483459888 94983210 777756068 580536864 846568635 401682195 474638995 341481747 376180391 888990287 922919072 142490122 330631777 232543222 996006655 821362661 831285246 741449351 848257008 334573730 603457574 393134934 757179347 235363703 891977604 460851542 497322712 429129324 489407705 619055146 802999213 135811179 159399162 678752458 791346406 530633644 545444559 662680427 685475581 864968727 931804998 75166868 352126672 433173528 979414594 294693540 930640620 37211544 536946788 902114878 995676575 596004791 774843903 387683919 660518224 334599895 678802169 211249116 591201346 719283530 867031381 805428799 945151995 59748229 283183967 633448240 881240438 593052284 968225834 904520490 910090983 388164750 590739074 246555131 406558404 332511629 921521116 616541754 972938089 685070693 989168353 660965847 964377800 292912625 387271165 598266380 858224614 675422055 998966425 894021886 925986834 578920423 779269369 747681665 837000957 862418514 888970706 402110572 973367460 133856197 143921343 763760230 915458335 858102311 971877046 109778656 143865487 752204743 991941118 908754548 984864716 338455600 596259295 84856085 715520585 967366447 982264825 946412185 975737501 189461622 659243878 922004624 993706720 272099784 592580280 223441396 931972326 453801631 975962788 848853900 975264633 37250843 895585275 173440283 353777045 229680418 410553779 314365810 437837975 295242194 822042663 618164397 979310338 514945064 600905320 567711781 635578107 919159814 931863940 942459617 969484629 45564827 762154368 269483271 555042883 526852151 532444020 850958249 869722123 78790560 208085398 776887691 954980945 63664417 634252496 69705181 147615597 130654850 374994375 307170163 378865453 824419075 972684888 717779089 905556483 100686035 283617031 701251048 794931242 583979262 675426861 764809634 863898681 79123283 619190291 538322954 589753064 882338103 921704594 311794710 892365883 625524769 681620494 174461785 973825131 495247287 941594780 530158857 962133458 901198641 916689669 927582180 949479389 630588525 983278850 346107543 788536277 781662510 852986355 28234570 139628095 636759376 846112955 43116704 228810301 977598718 992846717 231311535 428215924 806062650 853104619 582136841 999328917 412877976 752740466 183778014 474710023 200322347 844902545 940092613 942893745 243336933 476145619 336999334 769175153 831947200 943927846 466950737 783726208 478104616 835213721 43181959 266713874 332623699 372772711 871566326 928619753 356440969 547052638 870526541 952476206 499837349 541750177 225098537 457688235 469365730 726527499 481480735 994591102 271716704 414394639 985466111 993294980 981925061 982706361 130595289 676063299 267966372 536925167 681824925 699294787 240827186 725154793 250387097 929660288 408019286 562252472 202110306 353567147 450708678 582588154 154567602 861846886 771159227 905689931 10052597 456799226 895299501 945822729 639482221 892144552 732541758 879951375 494043144 590978887 937048821 957040707 903308472 950911607 415355485 863987154 796376396 954499696 339914770 373752367 844297888 848408395 152670806 248610688 405304962 614380890 283892280 605367547 354394666 481062576 51722693 116497767 785738256 932754907 96041521 615527247 59004262 377115107 533890010 899012971 283188370 617965289 189865674 859844650 285874238 818813402 478126087 599331057 780773408 800954542 197482018 560462505 290764953 873712808 78879530 383055311 510538559 627867484 622561976 871305917 227293617 398027685 706149310 750806348 985517865 990961162 905694336 924457537 468497924 746651031 995380822 999624667 169605956 419269784 902602600 923321193 936788262 998356114 423294076 552310761 233210510 719563606 608889704 801166876 493689615 629791686 76051378 657995301 699347479 799894442 184612390 449137844 708589720 987301197 673982822 782048889 495845429 625113526 763128610 901208125 475945125 864403142 75750062 658013467 53653107 267220624 778292187 894436831 588777370 649285950 579628451 779493111 884853442 984631284 705960813 840436046 147974969 348481733 699397443 935591970 811421051 904039201 6484657 566264613 264475288 527216698 243262033 504183780 629286989 775432172 564942880 582232545 1862654 789359560 505180597 867868533 621613936 917852088 902524264 999708373 146567083 800366357 623297025 890163587 779478643 989763608 577412145 901362688 96931638 103969758 859505483 928633367 477106498 766143389 496594168 576789909 877636643 881579581 876090489 940523402 183901637 986226280 24184261 638694504 6363060 17569596 564676200 655405829 64353922 417135234 607342498 673664221 719143079 772636932 51005483 198540507 636171414 888125233 636598545 754083954 305395543 799136590 16617009 774287494 318061589 378808799 748911354 974661425 257756894 540890263 273741998 733489601 195418678 783896838 732807327 901817979 333342733 859026447 477338222 625151975 902318646 903521867 127925204 547195847 432780961 509353692 66880556 906487171 368159681 430913535 768077692 811720988 780621620 892909206 161833217 272930229 153564172 515788157 875814597 928315339 577852590 944187955 833760187 951435026 622650630 727655458 812343075 929096292 273258227 975745428 163596060 673598590 766686987 772986023 920512546 958364639 28900162 554297772 268110461 586595690 750161093 948508733 751378846 971265990 980347202 987132096 555190711 939340020 305466515 813981511 366991395 875179742 101460715 420815207 898464484 921170581 662282656 901059627 613878273 873563516 309021793 509151052 251309830 344241429 995580799 996068935 863893998 970111823 41969512 763562892 678596165 837745708 252547979 858629995 982498560 985948411 747209511 781752766 802769708 884775273 8967308 935656014 544573347 688968641 114819341 311089969 246675820 778136264 768904110 865965036 829910400 862227567 882193104 970786524 507626375 662786304 235625428 466676300 439850739 738180977 301418341 973258468 350054855 998277387 203520732 732564644 736624450 757735012 18464053 940301808 602887939 741140612 270999589 457599357 319451258 550200055 170163400 333940071 84940922 823592619 584191057 779091339 301304373 688548556 446644659 817630478 911595867 960834085 526382268 829568302 900250808 952372770 416353467 650965876 317245651 589123965 234633372 626915221 986262442 994736379 100543339 744842531 708207324 937666926 930145453 951707492 913069604 966219605 237024662 494866183 568280564 609849935 673319034 758060230 919292998 936685335 209966143 526953991 679917154 697691054 352265387 987473626 770046508 897824076 316912645 420169987 464353926 705673903 692034611 828464567 541274797 966529709 63314166 416119959 36012357 323935027 366198316 624373734 841915301 904951490 373486438 398254084 406173331 484148723 378545777 702768478 366083248 882728284 688483100 740883882 508438162 637571634 491555163 541656338 396806625 920325724 786207733 791836152 286477879 530070972 838532141 864631652 896252974 940605378 394651934 568415311 772158331 876203720 271454224 971249346 316670639 850621216 426187719 678251691 842273846 995595419 831901513 888273256 768020801 885698690 837999632 910709027 974154191 998965879 582637778 866128507 250803875 253165458 264026185 827834530 487160826 606647333 537172359 638203004 166950488 862004977 22803623 672872691 468952386 765541372 894564559 966998909 78398494 666383711 560233257 847643802 471425374 921909402 92363124 624911032 159010315 389687072 654938809 705387154 601545044 858688166 628327837 640401569 360505980 440577408 486193390 763298796 738991756 832805908 369273934 393293153 617772294 756074589 428036369 496310658 408072479 518353292 764388390 826419634 693110461 918444754 448413842 483838411 479458053 660248531 313305044 328369179 142811751 160126479 574090092 646997577 893593471 987390893 112500896 845825946 391162276 570161520 214566781 510811979 990151202 994434702 128029526 379094185 256160850 364940998 965361582 976865351 101402978 193528577 903779408 912820030 296531308 914534238 732960346 866517799 545776587 880459899 270335933 478994541 178240712 666007073 605927906 614002530 153711217 941627527 741993901 962352468 467110416 791325611 626217986 951096270 126352334 375310267 456932594 522120103 78942210 728847406 969962104 974540698 374846120 770274309 739811304 795289596 957143396 988822089 669995686 934729526 974685840 991511874 752200556 956902883 820844751 963034356 553980047 633201497 683909575 761775487 14289057 399713859 897818031 952631934 97869075 416724085 905301740 945042513 509596061 706936855 964464889 998098667 358472523 760506954 253769236 846451858 697310090 842900658 289292825 978044359 675105839 942118853 143164838 785884827 137545093 580406423 944162590 990121860 557888676 559660557 167264245 575762230 281587657 729545405 337648362 497114711 930084327 966865031 800707731 820601717 185160335 420412375 300682335 962880172 359606988 736448572 135327413 631691676 256046815 935695065 595521795 759094719 311155215 393761328 757017484 798341212 894402870 920537415 509836245 891304344 693944051 782577220 343407822 806491322 812659923 979732453 159955817 470012488 67798759 188144752 637889699 935853385 218211959 446444573 922522136 924500144 524325437 917872279 286797040 996167880 620787692 920534270 710265191 980556392 917940194 919517603 858176335 908008808 790367276 934623979 458025043 662728995 911632457 996065021 518234408 892395296 641768529 900885401 75027610 832803441 440593212 511377039 154450026 527726756 240359828 502678540 989451758 998361504 478535791 797460515 111118441 340332278 397097874 562276828 867950186 911059535 524440048 587680905 170257398 550965971 831703164 962908728 311798371 850490389 565469147 931607771 979953392 991636132 498466326 577646764 185004353 379412206 189642316 774687568 580738953 760442781 374946422 946932347 919309389 980880154 916911660 974083375 457361595 458203635 203555238 708844422 382176546 526149471 881076533 884972536 728507291 773376495 702045386 825327900 951134162 968060038 650571960 875419574 948614633 977601922 338952478 897860678 127133797 358281360 371774108 945502810 586799184 633690229 279348617 314075261 208942046 486750244 159233138 572072552 363375900 402119873 847595907 974778844 882797533 958893068 15223554 451477118 260809348 673809053 106019171 655159688 605857908 610505074 760685037 858665800 794739335 803679459 537094916 696310300 616584779 827554982 757726690 836515915 196612470 988967574 336228735 697413133 419954399 922558415 447338410 496931853 395455399 743405967 853977797 867234680 933001292 960272663 323486111 400021507 87924061 664365583 607082514 999120894 20980797 520650703 936079433 956014594 721855693 888498091 892666066 907292350 696458891 900888572 233042019 612024365 107353867 428507735 10096009 570881114 111945010 197982320 749702438 786450304 825155279 983049134 619815704 975722216 359835611 385847764 772909659 896692982 706189692 816683656 729289631 977944477 672866883 754183084 220300276 287445448 483603516 617648786 799771321 820767671 4757461 401628776 350886028 721323129 103109060 894517767 163300872 882614626 689610273 775691566 510707560 688881575 867595454 924867785 778333594 915170587 327789011 356280841 359299371 372629606 113304093 389110107 79886893 244610105 595171481 807656264 863343478 977955981 638685957 762258094 675658403 732162145 632053498 867062706 405226641 923036543 678352832 748652046 272001176 275439316 867828125 975424556 630097215 935702597 116005571 983351557 973824694 997044623 621956208 834665412 954926181 992012001 801506878 964639182 387899963 452596059 724113788 821047390 990920437 992404197 64241312 924488867 649449088 899006262 82222834 636011663 367210614 596445254 617930531 739574076 759587892 761603085 394166221 712261921 619744422 658339213 119464191 238024432 756513728 783803430 6857928 758347291 733458923 989699438 582283923 977124281 927889413 971089210 78839375 531110888 85274013 855270841 489838551 586611867 419939146 471347199 587005464 990917013 776324658 891121176 630944878 767772095 187647787 850882045 412985386 674301052 850766660 881304999 678471666 999568091 225515203 873834772 162903573 515920104 18504063 499862948 16153735 133044763 594998899 715887626 126012495 862913338 152711936 918987419 981987464 995572163 262832033 875171480 197203874 315597348 626065383 833957105 384650776 674391449 509578002 893465848 118779725 843659386 190291664 786381892 364459277 616300632 182799181 207614718 792717087 802808015 959439180 965829474 840920317 996448115 634401483 861516156 7131096 536365487 30490317 566233660 956077345 978767413 94946623 560697348 993327047 996937682 207171426 925709162 645491027 899838941 783417323 964040559 807851261 995090380 884763219 975604176 180583262 722259890 48201056 931928346 580128210 771415793 497305897 735578077 640480739 776569943 904704181 995219921 33590776 927795886 371772811 651381687 679192551 760629404 152949989 976284067 991513855 993069766 426312297 540281078 647007275 669442012 918078412 936944568 916454918 985310248 25958360 453069280 62401962 476185330 458665009 604629647 583152643 997643560 670329045 677626793 570538418 940360194 52870103 624552523 125733560 150887826 660953140 672603726 850054468 926391767 710480641 995667516 819773961 856967190 123450303 159877332 839593467 893105663 749021947 986453524 158362831 994771349 180602880 408331645 401635873 588948830 127425342 434800375 961583893 977783079 410458723 626027587 421875005 426419846 808475723 811175262 569978139 677853400 752767772 765127293 194678270 736701743 255000601 940456211 359351197 681796437 185443438 233243269 227575695 360963611 9975178 58551327 658368847 959445643 54774547 590968051 875120897 932269404 603290699 862538022 125674839 409569570 375252624 764502883 631892024 782770608 10495851 275161413 967899663 968621132 591370334 672173923 537280320 601587115 434233851 881363750 877906584 994768083 164435654 231366270 349110855 582251419 602690603 999904497 281509774 632448584 355576570 802940229 48740094 344597866 117856991 259201099 318175286 628072097 960018463 962930428 552079019 699230657 226411094 434240094 221565167 682335012 916952965 953562212 79681283 845742413 446676682 647976344 113105558 129060771 865577555 999212150 716088827 733404048 710062628 905738306 691704371 903706340 916329334 938426746 23985015 429496531 794718650 904103192 878912786 890616137 918852079 977443087 390590447 775398213 455151460 911469663 397739292 583494309 677473781 808786978 486854886 675431145 49674078 389297893 1378751 477882558 796354806 985706643 570373462 893604001 642729159 886036523 6653412 893087387 823271192 932300034 803629903 969268476 784048913 796591556 708559405 918299012 844920443 851530779 864172347 892741877 124425851 543936649 345233142 878317045 17019335 567105330 29472015 266943701 300498032 857566763 755831460 757173175 61928697 227973554 762122955 825297120 799808187 942579623 345372812 786200244 521769789 938725493 200626863 247340053 895448511 965221575 68961416 433776159 991464236 998565097 217734330 791189999 111432836 146627610 401024104 837159933 317130564 568940487 907126121 979916669 992163009 998721018 151441805 678096790 616810267 745822631 442651270 705161281 827022506 866851314 221712776 692365312 314322243 420849914 127014772 254284439 732686457 898968894 493527576 738171195 371321564 813192471 845739048 974465029 935150512 988550932 387904992 923586600 4657109 7231363 127750354 551898195 939631622 963089365 519643352 645042728 452824378 921752529 559368745 591465314 246597011 860770430 258393792 430078476 540838136 889249201 444542178 847441802 640301053 718290749 992338008 998410171 347137982 715151623 125058004 381777771 952794184 974517322 675648567 735570803 537604381 892645095 565259241 855484979 79919552 212431709 643377828 759422756 295065158 553384774 369509620 463459628 814845435 997863236 851290329 894532308 3707394 302999523 359225908 821832501 571648402 812759968 659880205 883094743 815320345 833404199 57547044 628868696 208387113 742197963 770597526 943571884 625588624 904972365 123168046 899317373 278735340 985950590 20198359 282751733 38351009 500007650 287319624 864871806 826771859 830206158 691938182 874998250 745112496 781022367 681512446 981531846 732516893 800826067 533039448 699316939 406957740 505495968 772354316 976151713 459101196 494117001 778410604 841045088 971313315 996695464 245175544 284427728 841874357 937818979 872674700 988670484 181719820 725143500 528410393 583765642 73556166 470781439 359131685 808987910 101164855 709518346 345640307 733399613 396107586 804532354 642483584 884530654 217153548 984462111 86769341 310829277 213388161 540925913 67686028 431414329 943526159 957559724 942052412 945480801 603694915 898177339 432959108 766113741 407821068 616739902 189067710 300968913 297438565 688484959 620977169 817973136 896763039 925897131 885277579 924830121 390780266 903349755 458129645 642330816 756994553 837051492 823426027 845167911 181775602 881745102 590223455 761296211 259284718 845809092 710525707 841311449 838847601 847840582 520761196 596901739 606801477 999087577 674758887 839633588 546661898 714934681 534085120 919977251 536717906 894680184 781217238 996311673 808006970 912363744 309690076 676199508 342515449 458773356 795950181 883767582 876438223 921039005 790697875 896884578 699311676 944396977 255603339 938437042 823198437 879643221 87443224 427385418 974392313 976186465 454628396 538837546 504536008 810899980 789215173 913099262 932663912 959845419 613665373 628218561 469297609 975126918 841340035 942529262 606809251 847739607 392774067 558820468 557963630 573123074 769220780 870598387 204863293 664633586 398423440 972377937 726860065 871864501 557544203 656711802 135359972 259548923 735331083 805980531 106080980 435602005 505219004 848899182 251065885 370238461 638356936 877520111 509224371 912937677 702256942 972759833 241504537 760082277 686324700 737629935 10423585 496106688 796326989 886436377 146398911 561468064 625797409 642332327 163381117 961957242 659878135 840160717 866667326 992257853 718006298 815548571 68323803 805588458 732994584 970811352 181804120 332101814 1138527 434205300 221817022 955152494 54833422 523186847 297600036 446631802 469064179 531041695 484236855 886752279 438679519 629360865 257888445 578278179 660206721 920968465 31905165 187316663 273156115 307829436 281960943 491917933 805516383 809960659 94112159 574967540 57864336 472628945 702354120 983913391 65788667 911079698 778454764 807431542 716411677 964996908 883470909 993651226 418988002 772986923 464162966 780150739 417098144 965421266 105029077 325437793 56618722 84120749 810752561 886648703 799375509 812800854 455724932 461614914 939040063 987920569 461670206 833231193 734805447 822609832 261234044 539724779 931158849 940156300 750218574 819149627 67755582 617906781 738633656 869610774 230521649 880641825 843228137 925712172 398285208 588848302 337494471 979803646 16317285 101211719 278737851 527948240 3311238 848884153 732890433 744133134 713852521 996841281 401126810 493350903 602847126 667785074 167848402 313399577 756970616 995150437 843086432 963931026 988677078 991527131 905530471 910873018 386142584 889706911 865216099 971368921 401418912 764695003 954816479 987062640 998159873 999641516 129026605 916756870 571577175 812676940 509451148 826508330 435250912 531519197 841487919 894581134 911679041 951707726 133612603 951386170 448556558 762048717 340716108 713346314 178164887 425534284 65323027 612505761 99695755 992466882 841396320 966609835 648142654 947872988 205747857 575747782 558105701 625036129 958205377 975878289 561520481 911007495 708748284 922709667 225044962 804137879 319719353 639053648 680812224 728037592 814510541 964273151 305605157 805718933 226310567 766633520 942196476 959726175 169049872 204084797 664334919 665183105 137122385 303344081 267622385 745590512 935099568 997012551 588077212 865753507 638715921 750817116 87146185 679530136 954780850 992144019 56111598 490169645 787591103 887164784 785686015 931189744 598176182 924161117 723697339 807135699 519822433 660477434 975660081 979755630 645264158 990756204 730737680 819935252 657187354 738207602 249959810 613696587 954425297 956257716 920317929 963815537 707374988 890185313 482859847 658945642 77243846 524474474 755534956 848600614 880181227 915898159 587097538 597946283 708556047 731657254 455758838 649763739 311067214 763555549 417421963 856206711 631543499 813848798 820268404 829526354 152950219 945032961 817159216 841736836 209832220 295592922 302490259 610248397 199084106 392946519 831883899 973320344 243431216 314777375 421379062 921876438 747549587 881199795 801769580 891899943 884647490 996626490 361354692 363000601 178719833 896563698 934109064 978419742 799898035 893565279 923397343 925386914 162438060 895094094 498168604 894857445 293914563 855678345 147470321 663564747 214764966 618965163 564715567 733996924 314978621 403703782 50184511 279384116 523168749 565288473 382735837 720520986 567003745 789180466 271712537 309953214 616686985 950206672 757566075 850573710 458307110 554962415 134244199 349081226 332535473 863394986 799421136 996775780 795830707 972338893 399059276 849325272 955051898 961951168 153683486 589424381 720055876 997582591 539411539 703332156 475087510 669750194 14422233 902934783 215270339 561548004 101256588 615975870 519552401 647808886 459384680 765704910 780020805 983763655 62035020 863076115 367163019 487449619 738435425 795791551 940920658 978747233 188856318 973529818 948791273 985502411 944569934 982946293 390030003 767268042 761313460 762233644 710466528 753002373 662069292 668987940 341869858 937309447 208695210 430847610 986444449 999641837 489578015 698120958 904582699 916682816 373310976 786713683 286466056 631160135 212233087 371949921 44544800 227330253 185008989 440967866 898890331 973416497 255774813 524485803 979087157 981090300 677492980 768164312 505267020 851023388 418581816 464317328 286998987 550482235 637069042 715201871 982985992 986726644 201086855 550662866 842546705 908196021 647241660 728329944 725365116 746349023 493033778 657180239 316163073 385122037 670024689 824794455 951512936 958554988 668712314 853476532 260043868 848241520 480323425 703446546 824082549 944685798 293469266 325719765 417551317 725805471 719151554 956569786 397017306 666720933 668463369 897107191 260034302 696556358 807407806 890408047 167982629 886863115 907460117 943212080 892978045 968028257 826694153 938983944 120185622 226227048 559779145 755100812 195699128 936426330 397976239 567183923 974083728 985484104 224352997 791882350 475450641 973562540 923030052 986358158 548256491 861669570 493310137 808174984 263356743 476124795 250252140 599773973 677264664 954136128 711805146 920989793 590447751 654162828 530990560 839220428 257857824 655132275 465483297 568445668 357248918 936679731 258558196 771352269 34707804 210371881 89472391 400750521 590092554 632938629 679641957 834116255 596241839 788572615 687611372 719326208 958982036 994016181 803006613 855718119 521121387 928624302 500251470 828609176 673275092 955904207 366044062 895065432 529864773 618552887 921178988 939212883 568984535 895543300 692842098 959908485 336422663 648985767 178441709 214305136 336604772 521390863 156755014 967921093 150954730 509971618 191037349 279474596 624939334 995169939 442144627 901847395 748020262 982019101 897362212 961238001 411005978 880677032 484414080 720207889 890423724 930692177 146151700 669347987 792752463 893088883 357393597 658074507 172219445 676257645 866490549 997547930 416553279 465632675 973254211 995578020 544705767 622669232 929581488 997205918 907645594 965938393 487456663 712939146 47202542 793542465 617742270 780814514 138376248 696751835 234940272 547415664 313380096 900790849 825036044 950976044 827159500 847497307 390293119 656704070 145325884 333612106 960801728 998289472 697043071 753514506 874647621 978887570 458343791 671883833 249391977 714410072 424477414 993807668 94061542 712973933 208878413 590571342 399612976 973721562 418512865 552646866 672900569 858456162 241460904 668914493 485233427 694211649 948160351 995156145 388823552 875049717 204013242 938746280 212796648 269861291 865580527 917853183 5231516 517669852 508690583 998768830 820285833 889305852 813046738 935498065 273969332 294318609 484993664 823848289 80393900 661298468 218067694 620408300 95961440 213607756 585560482 802505395 719360542 933532961 249180441 524058327 797424259 892710770 218745937 496463965 446026934 939031165 13920428 918443513 766588983 940755982 368101920 433071415 229547026 923729265 336215713 657781878 723252529 726258777 823367053 836342586 42315231 92956578 38267580 814888575 767768140 840254139 973852332 978726284 487297384 573437639 892056574 933630814 102544404 163776367 96079852 671842409 143415935 651455701 344026882 877400148 425660095 815549906 254407048 396315007 601615618 976826653 194389573 745427894 345124120 768165377 817050988 943425767 417389126 856767236 214594295 399219749 557008502 667934107 969168964 979959971 290786933 858211207 11995390 670967848 41124315 545027094 974706301 981013014 936103774 936807191 178401242 584717022 717384342 847506611 364790871 628447611 584553067 924606999 813523156 963134141 832050239 866268839 143389172 402694644 192674653 490617728 443475129 918990714 320155590 334203296 755001567 844396123 627757919 940080800 367342899 935538875 446820255 609751403 44192589 378679817 141811081 606168448 764237882 773772077 272340423 363038417 893840948 896478965 177945916 271646877 957746529 969784895 541457692 897541728 20828502 876260788 377577869 903154881 466202913 601157972 809660307 959886128 462716644 706288803 541416268 804344864 956157741 968766034 591809810 803197626 634419991 961751841 857969052 884855102 795028004 839668526 393400752 953263009 636268479 824320833 376209954 444819405 690917963 758875324 845101515 958858476 367692065 589276583 560507219 982198593 161499240 858538459 724515531 991351780 158901905 614967604 31769675 552235424 87958609 663684494 780874627 882228331 326148535 807679958 364477776 678390699 486365058 749725739 715922068 986964752 470594 8621604 327941110 658863707 758786307 903012540 143988081 302435034 10083054 234678902 898258598 997002753 314674636 672273156 419039646 755628978 105260682 662794186 37418385 236144241 120411176 709478737 171901133 195350002 926296611 926311306 615279801 899043295 547724884 716757426 439866900 644286233 583410303 666361393 119783920 720546330 708901476 947676494 568047434 608264952 823915573 864309353 871492933 882695347 544598371 706149284 407469517 911722571 179540479 468272138 200579725 569286555 500138766 806870222 425700593 968019235 181649952 186467705 702262149 864878814 445834276 496275993 526142268 642105993 206100909 895429901 509509247 539615272 623696799 932938102 605142705 664426944 283973476 792784661 323795369 520052570 343144605 931787286 927363887 948627299 728663921 786651542 270954117 659124403 310470011 934932035 895147894 955640844 891926774 911712693 19877001 422912483 568397879 683416944 263418834 471670143 883415424 891390199 962580013 973123532 964214920 994974890 293875287 489099628 954877472 992557121 409039512 873304113 623778108 669823768 441743675 868121229 581816733 612283272 976336918 994934531 445060393 874887514 249403694 972540186 500637461 933378322 575830975 687734939 580158056 840859497 733362652 919504678 748421757 963786592 787493624 915478257 77617227 691098501 95246696 426555681 890935619 955747346 735886754 930111316 714627869 913765988 745199697 811917883 64197537 525088438 460168909 622148478 520492136 784707920 545869784 627254393 911702340 930297071 336081173 537993654 271043146 374128175 39506233 762900307 159060709 280732031 268691675 613998534 566210010 702651251 968872762 996703859 965625084 971440212 837962258 936676507 547252928 561547334 847300540 949315006 420083804 456741338 211282809 878872274 739345561 947837303 238594737 316925012 910096029 932537180 940523217 959297315 186749131 238763983 447596185 839593215 504761512 639874545 452630486 938539806 560830620 838748060 924813309 963390357 660667233 968435996 174643600 893278991 86242702 221641727 821436112 881102194 901907456 937336627 95038421 361782908 113830919 713065269 289269142 921669877 999054481 999741591 253922220 950676610 342381981 425480432 389147502 852914121 104819923 148878455 174932627 182349421 554201985 646765907 635765150 942306611 413037793 477748093 977508526 982072312 839009324 893660821 679383962 870613381 46718396 640073865 539155212 731264043 341087551 676184800 482260564 842561120 562846595 653233367 534001316 820047878 665579961 909024155 101927838 824322946 11482953 604018099 925501355 948618145 636491208 695581632 314523214 487063393 419978877 432352848 581026149 983016722 894001610 942811032 265430773 793585134 903668922 956481997 82241936 711654505 672319460 937671238 95197395 141766568 805312294 938303649 760067731 842405100 162205054 753196467 791957606 795521840 907351615 915815272 746370480 805332867 928711632 957334642 244377516 871071138 480126874 645373840 661010099 996850740 516805097 576632002 35608756 377675353 498575843 888324545 797327010 895457303 230206871 879410670 15566842 780400168 269226401 384258098 280323245 747274573 963050743 985178085 207900009 412161767 659450608 686472185 754975383 824194274 308402748 989316564 705413728 999634066 4837655 161122899 15230362 626775133 986001839 992508474 839048705 876491353 802577254 872839239 753044438 993084717 470397756 912056076 733692570 810876516 269057625 911992487 912299752 934713367 621816373 952545295 224768192 398402816 303764484 331103993 795569647 908880828 359652859 769367753 35563255 871561323 896090819 898326323 674889401 890008831 94172618 169301781 745724263 911646017 520320235 564377444 668525196 801570919 920317159 959425058 158472677 371988939 853751616 922716551 444422740 795422913 771718395 866493572 851595067 992230167 686007809 818886345 972961659 978836758 732907375 943168749 906237091 965282091 443814044 868079265 935634484 941717327 121691328 160072521 448760377 501794899 58497138 940499846 407663698 939569456 279329604 775356965 656760873 871232753 26885038 295638761 466450116 476308135 893370136 905999018 259485292 876944414 172283384 669620405 430928809 440625170 127123321 755997466 962027569 963033506 908605341 991766138 171461622 667375011 84392869 236971746 748880441 983620670 427386264 584596983 49731980 623757222 556284821 600326010 46916485 80629896 313009049 811281336 21400867 296198296 811798249 928323182 727931720 919756544 470917260 807738883 198059071 252767274 349775822 606662956 923778346 964544717 577388329 865953502 98331693 157564500 385878941 468542735 936627085 959902110 840677548 997085967 858226818 891691557 828114017 965612276 700244219 926914251 559458758 941208633 312022522 598356527 232969011 401009597 221191163 438690850 470458703 958747581 312801579 418611686 887910537 972790660 28553501 641761962 957597329 984063016 591153097 891782950 75364248 824031126 4004674 715479833 899166314 963259476 425097932 593782808 610205827 941366676 396371448 590542389 370886244 515966638 714403118 892208868 525746142 995769584 425499852 704201292 950370134 976548086 316718529 530621009 11829339 330259330 590413030 979354767 555758208 815468963 346829549 737255986 155156305 649893136 669413558 769293044 862223447 973451331 102358931 849841148 756038037 898594697 753040435 999627289 486355615 505299575 409353347 411661932 999840448 999949284 583943289 850578203 360189616 851214008 794938698 897546361 642353991 849776178 566435667 951167753 122631966 448674775 8427700 12322174 991912321 996616834 667442246 925591739 749267397 754044462 416714834 740903185 650521946 671688036 16599906 924073647 164098483 495480992 914205979 924956685 660712134 942351555 55120437 506251064 117351733 341476661 243906564 646221460 320418208 430762532 867493651 936070838 162120331 516436231 58976991 303569856 395325788 968970847 482712643 954942048 413233012 941995694 171854055 237294232 199709783 506048724 76386821 252074924 603685261 915687732 289758285 466660783 200421240 809139652 370001803 955764183 300328342 966617914 705037130 715011184 302931931 664869324 459326280 706605014 634791147 924190171 985657409 994816630 395823637 598187348 397636450 629552421 270164029 572828970 736902094 840219267 861818408 883456954 909719372 931102030 25814103 886940539 628410836 753028566 98152577 950273261 76681988 450811189 863995229 967840882 417474182 690976364 464458621 796217004 554577789 581526092 352352640 793647744 648840728 711725546 578763904 950619767 885351004 901982557 689879262 868527204 987359179 991019987 457678468 748760185 553364163 899764901 986237333 986719129 813178993 891799302 818515702 947045727 390569740 651497982 716253188 855189486 559289048 698320600 27776717 109899894 276128126 986229612 262964530 881136394 411455696 873457517 686813725 936179285 853600924 911639320 957630974 992319090 71268511 966895571 501473825 723982648 495703590 624012501 63362057 134614125 912072369 939910664 655001628 843933456 310528156 399433570 842172481 893740434 764131550 842968141 84408878 672194732 749499490 965369425 652444866 834675442 384712716 749236345 604572773 972146429 691918358 991788589 728749788 941576972 368329602 762867495 78555220 865030186 26783159 819151133 873556850 939946769 746863152 863911406 582654188 823076277 593764882 761124521 759759920 999138959 515217132 749511989 335267246 702378413 668468176 963576122 999283169 999286031 458370766 859785102 478971863 610298496 520654053 939545343 603242493 862871073 310270429 753012303 825754765 953239184 506069682 753962095 651559481 653767302 562003835 775241493 60135045 515790193 939035761 995125116 61042910 701112638 410989901 458779295 898713321 899967554 930637071 955079724 856604797 965876908 25154768 314949151 55028773 536819281 62317892 273904242 946212863 948641985 769552626 918471181 337032382 786354999 440412756 757618375 725800610 951457983 405129948 567874465 563934461 962866662 712401510 966107277 846008915 853680916 648564142 872521000 905104898 947638909 730991713 890197674 754053851 963595963 161616956 766044390 456336500 548201284 188732223 926816181 535207004 551620669 737818772 946381729 134314346 937006583 369694219 528738457 448965895 816962200 803566272 827469167 24779593 672807518 557937621 592891738 546524890 708120451 972117248 995385825 917781861 937675325 456009725 986966387 36849158 575796811 191154186 194599495 456602021 605191487 561452649 770909525 307420332 766886792 138461704 863660834 864278115 999534893 967823470 969260087 44208874 474241214 971349311 989629877 879932548 946740485 690191468 932643747 264924270 525725915 733920272 838528092 119890670 937927416 866821567 871556313 570774611 899625362 499705251 737477972 276010725 997901843 937345165 948997573 702109327 869583775 452835291 637279940 160792207 697993773 762850511 772247078 484500022 938633556 806447445 960666679 470665276 660127131 125141594 534805742 757950344 790825586 28471973 335338582 418312422 771031368 40959132 745793313 575897453 672549885 930895251 951688364 774960268 873861220 561918101 696706219 951862409 995782704 705568322 977850730 526751192 573189218 317648681 706988987 898186876 974116799 514938898 885495595 752362365 914410224 337640207 945732020 326894476 695721005 982349098 999433367 278682399 876650425 114064733 389832211 139144719 346444361 526360140 595955779 113086737 270936275 484229930 723304842 596993608 747426230 436406477 787331885 759158429 784478416 243093084 941827917 30741669 427580610 328238738 435760779 196512631 588678962 888567789 894585818 462221757 476586790 145854700 981713376 301732086 457814206 1917765 25221538 143174810 152898066 407437379 560654529 751337054 895748194 589481156 630106817 485164362 683238524 157778814 429833109 757059942 958811265 432196651 703731442 928604505 968959057 653301754 696531139 252710336 657197179 910658900 960527438 809058551 864564125 840323090 971693765 881971077 897577798 927180388 942781123 990923156 991579105 921678762 935353625 690869691 698258569 173075459 606251404 236738723 842089032 129659051 955867310 672950546 881869102 396479682 983331992 518071952 881731859 720743754 861514878 149373651 802376975 723596225 934063433 752989180 825170975 699843860 771807726 512799379 813789654 445461676 473399095 6144373 633084940 695123097 863792244 393933311 964636967 587944993 773974036 463257557 887585179 645244352 677637977 910675726 941308178 718013607 822240484 684727932 808493296 440514456 922947439 534606699 562347094 333308183 465560840 514627206 870244409 432481902 693406833 392711487 570699192 211916234 723521814 786843508 918607631 683407132 838107809 827989543 968951489 90349001 632970425 727618583 853144832 904010742 984104726 125649655 573982313 115845642 490289639 721156461 820463883 850190947 862098987 768544866 991679825 857612606 926636341 435974091 877358652 682142467 799814912 963154360 968654633 973338593 993601405 445816155 712341201 274519679 858182523 215039333 526833260 742887698 978749025 24596100 35397256 111334898 915412015 990576543 997030711 318300630 387791057 930464797 965631310 775493231 935757182 37077425 325336734 581144435 621076686 55447158 897023592 145489712 955266497 242399256 352509682 615385170 688247735 163539454 886027336 216909085 636344200 809149409 846015886 122445029 719335995 830146024 857262198 430506979 768031298 373706507 937467944 257810925 361103428 760809640 780344658 207321893 875311617 755606592 980128490 812939591 939984420 331730524 812669645 196301697 637772510 39821824 207366210 3037506 807107086 721585488 724676321 73795078 253336411 692545222 878953316 580117018 886494360 561440510 624717474 908301556 992581680 734507000 738515250 930418826 992228191 889814977 938438783 974247293 980796583 353524320 458253500 447489820 543465154 522457783 645806982 283219526 619935069 588326475 713463222 82283122 961093209 131791187 526205869 469615878 794233371 569696021 856477685 738523006 966958561 429772506 760941937 586286653 779620377 618569936 628700537 853875643 972197034 437050162 881799319 836550433 901596609 344333775 436616919 268907460 981958408 288290219 294384023 701184802 931560355 903503866 908627641 618830050 672419112 413968982 830508339 689051770 918112085 76913497 503551357 721441464 770059140 328568847 693093374 148529568 208192235 586661598 987619333 257102597 949927279 21626102 919358924 256333619 457403820 763803649 926344863 248653809 545589485 600630839 670877011 111081522 989513310 300626105 587114291 914338421 960121510 21937528 974726239 464776305 668777160 896492328 917889384 606222799 932354982 321849231 428309813 639158098 781370652 275503759 318081172 637312113 873018587 473206129 787404875 544318266 742541907 85014793 703942468 612743050 709404639 930568636 985010278 746903786 768061131 383319847 576557267 114909123 988534656 131451592 783039386 334180083 632131778 831287047 907505794 126619343 763314542 959403833 982326408 869083907 939947282 530754842 604211892 124700572 301335084 723139762 907133849 661897457 892283388 7819331 276365413 269943103 886631148 609987352 939684293 305057228 967771562 844414525 881283206 166151102 787975111 325487618 434037908 84680521 439349848 103343921 610507164 952257928 965469221 26668433 772198830 587645627 990094282 763520981 965110743 7912298 969762094 359275278 653639787 242882922 736774078 563109516 763780382 246914519 380333904 253767853 645488430 294184944 841336733 459510385 991442322 981953539 999505194 741822474 902581768 588436155 923635506 891423243 902624780 581090290 836914212 125607218 911993630 357646549 937716130 798350729 966037553 617117736 989134906 60995547 369120218 19386498 868263124 756925312 841513848 494661116 706459405 587887544 680949858 846701329 944672774 612791403 865866605 978553770 995020476 268821051 928467161 695428407 972738868 552282087 614277528 734119628 846931789 998932746 999883756 134954197 810782595 320477385 820589186 413645782 477449477 41826014 173141505 80427271 138847667 862550577 976394925 196879252 496166853 672732435 818744534 913464364 983629638 230732939 355197029 884429410 886420669 10097962 831077403 7030399 362907113 974217566 982208928 108938561 277387150 492499090 538340512 874465601 960836710 596216631 650075573 80925822 85183401 506553512 590710830 902102748 920233480 633402385 969303902 294745277 368820604 354305157 999276450 290756866 348501834 660082779 766443555 757165994 759539683 47722103 881748177 980821907 986560070 797639456 832159472 321826587 578520092 997068538 999161961 468766506 752698732 761106454 940746680 701984045 787074416 264100120 806683317 10562884 303415758 84643881 279904567 167804944 552755631 152904962 916225446 125434757 157129293 483053855 617666748 877391637 908554710 858517018 946454495 964919561 977698548 585352670 677527591 955491314 983071929 443131042 847336308 193140870 475005601 239309308 950454806 585930608 606755027 873305969 970317085 326845284 867342009 757466844 865049738 461398256 781266810 386210040 496368660 157922735 516387091 759206195 796915704 456617581 876224388 812488383 869691390 117196444 117284818 793895740 932965905 344484374 511003866 815595976 914231380 147958434 284270527 895134514 964704702 519488864 945862692 190076463 426741889 770986315 806493937 622161329 749812816 360411334 452431317 272553084 919822385 371898687 818983178 394742225 659448149 994762951 999515003 407085441 988386765 915733704 986031442 157330648 180992405 911789783 965578648 798222773 851318162 935593279 967508626 250289853 435121457 356868297 935348481 880756985 963417216 30704242 395738163 570044157 857435042 552809367 996586440 919213095 951227393 237232033 891879770 225171490 823118975 836542211 944495107 381668310 599422651 195530341 577282260 832790233 971692575 901562658 991966320 119109916 683392570 586587645 683090211 758584372 789888059 182083916 657178586 593816877 850393312 562070895 567984623 839404896 958155287 91852549 314243493 906085483 994436091 506005968 961847583 430684076 901157741 592603703 994007937 110411678 899936470 244037136 621425427 172048979 782921562 804016646 948826712 233597624 776650681 426329070 973862701 676927424 701517190 750054886 808882686 921282442 960430319 352768952 484302723 917970601 922258251 994839908 999488686 135852431 971770385 922173293 991465730 298983041 667210804 516275893 945201842 753971419 912659366 561722773 857594540 89865486 658881559 709796576 963332398 160734342 377629902 592759564 894874005 823353227 862208562 827052702 900498998 941491834 967520768 818244475 976636329 737636128 880748903 84681386 757619402 264114157 322741627 851469673 950501158 616071189 927463299 37989406 661499653 232618730 543855843 864575623 888994069 507927182 666287048 821765128 910449701 5909210 930456205 363310216 726364073 342798182 677417914 878305711 941230988 384409737 888636995 355903578 525491400 426231647 721100318 496643449 799566766 317493733 541422558 996532584 998213326 336451016 475462272 587669690 644080836 969857414 981041722 52489321 193459799 868296950 973477563 501832792 534475680 402692526 553851246 826720425 860854705 260082014 330131663 549699314 961247256 943279531 947398375 486339814 599890612 991339295 993003938 409920465 753267378 351380922 702736873 864844315 895945301 20243153 609038095 435751264 607547317 737567392 745089920 978998826 997669121 177264514 785691010 560596584 745626098 889471174 899085020 382403128 553218714 981190743 986096177 235385285 529057010 148237753 699339633 962345627 984270758 704179608 775545578 524379835 667931682 56526156 987888010 950331735 984629142 370750933 973509102 801763707 868934136 778977427 843493862 476503697 683799466 923758295 969996185 1931527 490573062 733665818 952630814 608876425 924159953 726373317 755058649 320980581 434518948 503305163 726997253 659443440 687501599 118145107 972275600 151511829 553834430 595734953 880288425 617853946 974466308 315123006 621046269 965299691 992394002 103593844 994079439 516432958 561556173 115694234 895093289 263848601 654036831 549555941 913055298 730815194 795677034 255973074 753061382 813855725 985360826 160141727 412883000 612647916 727619169 466500070 784691186 764685517 844317400 830735029 927199875 117124824 271074043 592681398 689625021 566557788 593920525 157329594 222285400 864923355 937335965 958728081 982576836 860632843 875101523 155668580 244678695 816895933 885426951 375471449 911969392 694959365 939996667 765812832 901701510 170944005 813622108 382750596 856435611 108242167 159610601 202257832 570841363 979277838 982616284 627773405 868086692 704074374 863375938 807308323 951985915 701980364 811858180 368252640 634772864 423870143 622644659 940691370 986182746 283372338 454932001 798159932 859493819 60047903 596709323 127376459 268372307 93990058 439821336 439251742 478371630 3621200 127830049 522100586 817912557 252886900 756227971 556604050 949915252 482182996 649469093 966996485 998895005 83029106 599788693 805158654 905226934 11988231 842005724 318309044 855746572 563834481 599794285 806894163 940040695 579526962 840197024 932803304 932832889 372757423 937507909 890315167 984855251 734266693 780959882 686639972 834772498 882946945 913008307 306561816 736305029 114233590 417875433 273933527 839728041 748989609 791460495 801378182 976544112 25404143 588430169 230842613 291453862 188776491 933747327 396618823 433477712 346346314 626247915 459546522 727954604 499852941 595210868 888921840 932402038 506468792 759581800 758861805 763075252 66568884 158690521 947308206 987175965 55016563 967794153 429539792 446100096 380359887 477487718 519502418 670575597 97838439 410040407 51294275 124658799 53568792 524831934 184469696 899654085 43881424 608579837 67331174 970309520 236770914 248699971 583781605 955261870 661072186 727275532 989972414 991279970 441222387 821330716 234253740 588817782 153752266 645977921 332922402 671449299 521474240 877018762 223152488 646356322 96120190 991236187 376449867 662356083 515053360 538921291 82027755 543028113 440195884 747713634 897294449 994669617 805260914 987001491 831426699 962860440 941842575 970454194 301064081 339859494 423001345 988934449 422726275 731967433 188512407 694681418 82748190 436173381 714167468 740029740 942071900 984280524 348489093 794820271 355907131 383923159 833939788 966522081 279210915 794247940 901698180 978294804 669662814 777653688 521936006 543814378 579357539 794900624 391543924 677776802 661515970 832486098 63898587 924526461 998562182 999633860 654172348 669783358 413161010 435046122 537471678 933244142 199439597 206028502 945248076 961618793 21920647 27025692 562591177 642229063 245931693 600579691 841024634 859531709 444755241 704145793 626335928 914623848 500161937 541823656 349586129 597325573 895610690 914418871 688209451 894337570 734369912 792632879 65438001 223252615 560066940 752039907 508314478 836055927 22560151 438146920 298136511 517554659 645714836 837028299 420294463 741398371 30502082 232916964 628197245 869203418 90882904 998513423 566673774 589616077 217970805 800531864 131542964 156190492 240984313 246498905 554103278 575176538 261412472 722160187 205373294 955853086 324476533 850052483 136831882 334440321 724135027 734435892 118581748 339695593 966287017 980628312 334919868 881669544 246600376 811046850 187939287 899665183 125320209 280098721 681241581 707231693 45269449 143943134 284102775 508680483 159609684 347352250 291728069 613642916 195664528 713554247 403991330 951324049 425958742 521927579 25890408 759581357 606574018 675705513 681952623 934836659 205785946 468730826 902134407 935107466 858548779 971445949 3101867 765714052 925616321 962036127 201495008 808083245 85584984 790487891 663102284 732279844 958630957 968313494 406812301 657495126 668889327 707919505 485103236 834731509 124076232 668347874 743415240 997670995 241558441 559055741 825269230 911709581 788274684 871078126 688911910 795443937 723414767 991152745 809715942 916409713 622326649 763296778 933448590 944056630 388678579 992061386 971941969 978910350 361108334 775739635 700903579 792400129 790736186 994397568 202061189 978954245 820208326 950306603 549458647 731304444 692678451 923574842 373227001 885774311 392542520 980583251 182956218 260771436 893216226 923691913 997298713 998356862 939824255 987063831 8303125 696437375 695280952 819034023 781365092 830549503 876995722 949961277 214808934 719010773 367721613 459211302 347058680 903854608 647681141 843550882 122742888 345793879 573265772 844572047 928033459 987129092 810995708 850088771 935594681 967577943 364805582 970607303 976660488 997276671 617905962 936472216 768936799 840050655 444478575 802290245 705593845 753357452 435148315 948158158 674682984 800635149 657818896 876041106 560414821 719306098 61679888 724124875 160030622 944470239 491072568 590354854 922254004 935276697 804599915 924005478 940315787 950482475 825473452 904322564 534469973 998678615 483905006 525818522 352778976 834489851 54152976 628984960 146683656 696176257 145561048 513419019 892614778 989246513 260987593 472498264 721559814 849929259 245281943 886205372 304887986 932901312 299944068 446872944 524533046 880827734 769545736 990520201 478807066 734676303 700095102 985350931 72497870 997439835 151149643 404558662 182123570 744517953 77867961 736855225 715082328 929213917 832078829 885421935 417278359 420749175 87794272 864704760 296616312 811252490 394898834 930094647 496168902 985890103 341671748 493972661 617951589 626573352 682891922 881501840 642019697 970614157 762076678 849224663 542774896 734072555 146292436 550505276 252963269 468767791 178260064 811556007 630216802 770734721 125688881 303849270 915056101 917433342 734810917 884869435 679054389 778006234 55335173 459144697 43812572 791671793 291290913 313362756 457689870 910064271 848764057 904498256 957921009 971826478 471103284 945739880 476329978 605656839 795311285 924166581 906693660 973640247 877755966 918937704 397995070 478632643 498241938 799056153 354177976 676079834 557871311 964357853 383595048 758048924 561775805 690697608 769429636 780049793 688504250 847421594 118097567 180530708 375632032 383916152 169802486 233261789 513715625 850132568 735697885 757187441 439395154 920226785 805142938 981422418 116861708 624134729 668594986 706490022 142682504 478285394 982175583 989360021 726850634 815878035 128967306 660664553 1549358 765268012 785919538 862657416 955642989 976563614 485149948 735698338 406055877 642010575 313444498 314596486 238679624 349016008 646999314 995663918 221235709 276574235 692816365 945799662 89708388 711521352 970410812 989204314 548111148 664947011 601057542 760902260 122149611 702281077 568816958 749734977 673714247 865031505 378423350 826245590 743712363 911291223 852905624 912992764 215829366 457282174 653516363 925687488 750089359 859366315 265771205 775965897 277786281 700171339 340715020 580638466 730279672 833066338 254212935 694888610 975796352 977899649 814310128 941289927 583169385 862416999 312696950 990980128 294412198 903673865 87639198 771626706 455464116 791345906 907393126 907576983 227608376 917564942 733744971 871528258 908533387 976221060 234172724 271597236 128436796 372180724 74235184 495636374 923625982 989953319 476908080 797715952 820922913 909048340 775712927 860002582 886791710 994446161 175522210 538359604 717824909 903061390 128037080 184732429 543162198 935418072 703226141 867674682 330296575 843608803 841925840 997467369 898566376 954095909 571143214 673219592 971899924 974815625 225943958 325943334 316308850 433220858 534578097 877447722 188338031 891681478 398601273 687309464 991310385 992467606 957156235 975850069 559500914 988637333 850370178 866733692 818964582 986473648 336826976 416105756 809945331 937768488 886114846 955361444 636820039 877199143 429759602 507832502 694949605 975382118 85358619 938276006 241542471 757750219 324979005 627716843 192148701 576796203 983485611 995597867 381662523 831308177 661194928 868098332 281159081 779848121 957112911 989916519 66497860 510446781 463608262 487413700 23527151 687156126 795985551 957313758 931004577 957633763 546658788 559998087 233636312 757334097 713223438 810189370 935217630 988140442 144532551 604594213 40092134 978877856 364514551 397932845 897489163 935400593 947015893 959032953 801602989 967587983 916429777 930897836 427219755 829260527 899017791 933670165 440725346 487313200 816470289 974695804 396956642 901650164 484535036 611587081 962702567 986439796 184511913 480184346 97489650 108808896 17367759 435669541 989835101 991673410 709933559 830398138 726094330 945691206 943858658 989590431 588028397 832306836 330605042 861760322 240871691 855187561 134861325 710973173 475649281 663809813 836875696 921786667 695114679 965728430 416733701 608695496 976673881 994808265 915065417 977092385 473384292 665501393 394777820 861006734 690140122 929078065 899998899 987789328 653807795 992542643 575235836 633535472 297812334 484693531 392941564 587557106 664061201 791524194 653596065 825496014 489506640 923084671 680445540 946195634 698495364 974560903 761907633 898069159 966722800 979217383 384257412 611870540 833238725 924873575 602535195 709103093 643087549 852676917 943840339 964420635 757303766 804552153 822141720 877677617 457513888 860793350 240467800 473775439 53459550 976912573 952810203 988758787 524705037 592280945 439817162 474224140 115640639 938349486 893219264 985074149 518990146 885645408 825103194 856278836 13492282 620917213 734205230 736519677 126183546 166610456 629035893 886409823 858010208 892281524 189689231 789109045 64136189 115959141 382283931 694202392 634992655 716039313 414694605 484849657 460614163 566120627 157494132 931126267 505104760 818896101 778733452 944299812 56410197 403722633 823094838 824993717 898634149 982339531 459954696 504532632 654954626 883630302 512166843 887101215 109003632 120622237 101805015 466357354 44619765 615502337 319374937 355745208 426029293 888773776 122589148 816616890 583217427 963810067 474731200 893616680 455796335 897455328 189825507 892599516 763625094 906544787 906871484 937619921 346962497 797706557 585112078 920023777 155139750 352578446 318409130 411697310 932228027 969266118 385527362 477979719 688536629 863441746 982419895 991634673 22790047 303354175 879725104 988778180 863052692 997336077 849994982 987382636 901177234 914900020 312935877 522678756 923529582 950793482 606889615 980841078 776940070 980518110 721916091 828188849 484144588 983107115 86116757 514485996 311869427 342132798 153593715 194579798 844658210 963050351 68173734 922798663 903631666 934846699 185099806 684154339 462049830 768078284 469878243 956036317 71889427 880144223 210746322 870483326 948386678 968153166 559110715 876525773 117753978 712148123 200327228 559806218 454981703 799881442 150652763 866584142 927747527 996263201 853971676 876857303 815786094 944064705 362656822 673131404 76084956 164555253 151256073 218731011 649120969 893647044 568588448 733249678 676556303 853146031 131995467 817977093 182839761 662985294 38204963 43343585 625036991 941471270 734398645 756557815 157377181 498657338 56207043 264826519 572570988 677496714 13577716 106850245 398184970 850824082 715738283 869702001 776187812 921099899 221942244 314470718 881101730 977511719 225677055 501247076 858929729 971181677 979202637 983225489 699897324 937535160 276208809 333281127 622217094 942582489 913583517 934014567 335539090 643844910 630466486 999905754 99199897 419548096 441586255 542562611 741738175 997046332 479841106 671466809 632535078 672986588 953609816 965447634 357831297 479824213 741809342 811615443 51923430 958641393 243647893 663402792 732496909 737349574 904061653 909088034 197187297 962336364 201272825 379978318 232884774 746209036 213546753 966387890 136583807 961090040 738978835 998705727 132556438 528733653 540162114 621107981 510245368 946141713 366893716 508253325 674058500 918305187 593446693 838455377 347722043 588212334 22750261 963335671 780120582 955782567 90206011 569642920 799995769 902907284 431663693 638963710 245687440 923841280 28168657 276539340 577572 461853103 484499236 786605753 975111809 985449407 880894382 995326284 410004638 434262103 591202458 594346887 228980986 889954545 53347783 105429242 910804146 996057868 412371332 628312868 889214552 958314210 694515702 776814027 47684292 465695838 428533442 482517714 676377012 924598895 506441884 677119568 189127432 614162502 795916969 902077910 562903589 835702939 919555429 939547470 553918996 607000860 883136971 925269649 845850996 887556949 944474200 947632672 385329228 906746470 100733201 968465619 315814895 317855112 844325273 893922581 581109193 958099999 291569216 374160673 470427970 981042381 535848911 763231752 389349227 790395490 602990492 945673487 628487292 772938968 596281076 624782344 313214873 547293737 696045476 934385754 553636390 786275475 556232795 974761247 155534216 577370562 515877001 760458750 389625691 752805556 359230885 819459520 683120707 874190423 390792866 752438309 717152681 847461750 936259780 990999477 572842200 631276486 241904544 996349481 173339217 211604171 890585610 905328969 661279335 811154856 913307404 966970078 336498624 907897838 806769294 834781053 931550587 992419702 518614472 976673627 693643164 883798739 670699038 723118230 807779042 964189191 848670572 979423259 375800304 784738901 558702664 962704232 927615860 971557242 172991645 230945508 913408410 975588698 972305413 984804990 151084380 347900858 159463011 335191575 621808926 757429775 663963682 749560614 420597183 598562885 631810972 949738586 483182201 746829579 690624416 803994513 363035285 540314993 183383031 277040711 273042304 535510557 80119277 315798834 342940595 583554560 571521668 943560066 80910 549039997 266931042 418096294 623127938 975173060 712576385 940826278 270541021 810048724 706219521 762720395 517262849 929808087 340337358 598582369 287107764 686063302 502910093 634525885 971628882 972611424 357949013 779009225 394948012 991481401 460060735 497665038 78215896 848030389 826059076 940515307 489980444 994963021 949523007 957178346 399475417 418690962 412421829 769370423 290542853 421163206 347249446 729280001 506334494 943759255 789363245 879441240 808724470 954160846 773629555 883687566 243119205 469611165 800825668 841276983 705169338 871183646 239807596 244992255 462638889 719200783 945043411 969961455 648195630 851897257 23990821 296851601 149347394 193105575 628112130 693386437 14312049 688194471 358340298 932511531 113253196 760822528 476805868 533259285 215750518 706468169 384999158 996479572 136822574 516011511 619701984 696372762 322964715 736862699 221376627 235763410 758650765 790901604 730482976 862753161 103671839 412966163 297253720 558230052 534354532 559651329 678082073 969982619 768090495 892999679 409711060 784691279 675776883 960276138 466669183 919832755 987279331 998787867 94400084 703095653 377614294 399151707 603961763 883313838 348067062 582378372 488964320 889452651 226865273 264623399 402760935 817882516 536972643 805028693 599701119 880488688 969082785 975840181 675188935 809411053 690793949 958133318 592450746 779885461 465250601 934654731 534308290 923302072 741026268 964348021 99059294 488374058 610471616 667762920 692282031 752067844 140189118 177482452 906572693 931434461 325768285 597819655 176299916 291220157 559270911 594039345 99348571 377453191 384283969 583143607 392614961 621936445 560664206 777071137 691375735 857255089 197316737 389310899 439982096 700183957 460137136 749384122 743399386 984891155 512129860 774557978 649046298 901035199 985355298 996939298 831219573 906769397 421176160 682440943 306709427 498713831 384323415 739318552 917474211 996309993 683599023 893539260 738917270 800624825 667635129 694352318 564030413 632807165 494732833 738007021 91208556 572099336 305992463 972958933 534904455 545388656 988950417 992990323 962283130 963613330 134530768 502710774 868596756 960451636 693091508 730508542 781923228 824690068 536520664 706570231 159187083 844551608 370246916 479170579 20655419 163638220 678360413 727783858 700750467 705245231 867678792 919996491 579980411 704471054 355883416 764677697 230006655 747050865 481566131 611850033 43779454 900467817 510338183 991134006 347577922 663082702 872678009 893623020 638304352 721901891 401819157 530328424 479374353 558541258 700976478 780079168 728958322 799449869 195026204 433106955 578662733 795329425 542144334 778822039 176912345 207390758 725750787 941688824 879040862 884702409 483724218 711542198 454502694 992794408 774516629 978945577 791704683 999948573 396550396 559625346 496764525 727676219 297382309 548250800 830548939 973454863 500845702 776411093 321794611 394072090 514416623 800108940 646305007 670822556 652400278 736234527 88643141 435338040 41193624 118818087 714864222 727371846 618972052 792158175 216162307 342988609 962808577 991264984 229451456 972909568 348483736 476548326 699737903 846265486 967447492 988173169 817038387 987820786 960562132 968769057 523886935 940470117 945904410 994933966 145499462 960632474 85489305 190852949 286631337 510727103 128582984 364103167 824093641 834390317 680006059 807618479 124811688 512269542 235815717 514576843 516019757 992070756 965207693 992617753 97172118 121945182 400492293 943586761 158418002 754030168 750282837 966000513 214866319 907628509 238248947 752600344 890757082 984447750 931220787 976017192 733046422 921795375 543462889 560989980 704929837 758988357 576198114 588904860 171670600 373520216 927790374 985994037 156412869 246950296 721735113 865637990 17316576 691074643 195211793 954637037 707588733 829574006 375927199 891025001 976443218 992259949 273996044 680852045 287918134 885438925 840796499 891057165 189727339 967595002 367103016 867646531 691464697 904616579 969787528 979085934 178739165 655044922 395300520 420218777 348298800 902554269 557187308 615700912 438703665 825222815 975971195 991148833 458561744 507017590 721413304 873524741 511026587 539659335 252940686 751622172 363052524 615053772 256950644 924833112 356423254 484011531 618947004 934640949 586611864 777882662 276446704 863837478 44976371 517349191 347762618 576558272 519704877 819680232 179279717 839144939 66407635 204711035 747836567 973354224 757862851 945503191 147815205 399164291 782478732 887318347 16270861 243754233 428540974 993003954 601608719 679295974 752478308 885576653 200163356 812559937 346740265 492875563 458350930 658232128 840281362 924348826 275859046 887290656 685959631 743518760 592410336 905363434 583343195 867598886 768557646 797770786 308300643 604076031 47931251 545970839 827786088 869734674 617561906 705370212 572417590 614411232 315813411 599112125 893186717 957406282 637145458 827085364 603138822 749505087 980678051 997707175 543758212 929670081 409755013 978605595 801464262 923017143 427040744 558051114 59414165 430707854 821569579 943546748 653093472 952119087 948047594 965838896 966012916 978993807 724403625 813322133 102389905 640052453 343723414 472939331 220822613 630817349 931206367 991134286 576825077 738365097 257526347 474068974 480223195 495040769 128095760 753264700 97527138 736947336 186668103 806370823 166635647 373396134 532600603 983450105 516738463 894066836 52361195 327517068 455189657 521043629 454557481 813452705 24389603 229463414 853806954 922202714 163929799 777983076 496726686 781002401 939764215 991207477 148288342 695871878 914165270 920460008 910690699 984804970 563995070 791316435 628980846 733667231 847547194 942781761 174527932 472536702 381768667 488420821 915909458 983660967 490357509 828247793 628495568 722228285 764527157 988420611 175501212 889448096 983872589 994047069 808466263 975665159 521975587 661178021 894108306 947977789 370892467 865139131 4888732 108486434 330243900 915116397 719157290 866089008 138610343 721641772 599130923 872072853 430933461 748245830 400979953 523141017 681180806 798127525 253361522 343669600 250305341 981529918 198908718 981722818 205167571 948615912 338098504 960420411 936485319 936546285 547359686 774167770 894505374 901922405 500717470 645352016 200686419 581758920 10667662 827042726 103723917 457033039 154313484 771307195 197296658 639529090 45956735 912709947 978835710 981493627 574582945 833792535 317942159 678805508 47640982 405346137 913499999 914349199 100908441 296029555 863235690 942312678 796087984 984450911 282248830 688696738 897146712 953755368 479853725 488959889 306627854 749755763 574529064 656202465 437802480 882055901 558959181 595038454 568545213 831681860 823467294 912263229 872187443 885763497 410622228 864880615 924753269 962940788 200318202 835216740 300035939 604032813 407008536 607838890 770742727 992877436 911919159 964971394 220241714 462855386 609164292 646470787 227643207 539580177 609781137 721956396 798861796 847172992 622319776 973855497 850805618 903000610 619469038 805895129 413937706 830105186 565636380 779711096 596694084 690533527 596192636 744551808 530155658 931765865 125281760 384733760 128814091 767380660 678687203 907694654 158382685 722296259 479090239 595370095 407633396 647140328 203824841 986742326 708422990 791388266 286646928 630666631 432046924 491622156 159482604 467020543 699683714 722779042 945475370 992706100 502346467 585786357 596535754 905753721 147033688 775340051 614392953 667507815 529879072 611266540 142164283 447720047 715215442 999927973 904242573 963469324 457821584 760918381 597806672 941044036 779731112 835336493 830864353 994258192 782454631 889513906 959439671 999729908 931181975 976945021 91739270 269437066 190354370 688345272 73721851 606995047 153928536 852023241 356882174 928720428 828875076 985858370 368702603 985899572 893754134 970015341 883869275 989615070 261758081 805856948 351577417 813657684 648546266 980224094 916256427 936132310 703787937 951987504 370463864 906365483 206702678 842628309 65236057 340740554 504711445 591044366 949845337 956295106 278373779 959590426 11515960 822828460 220991193 391608316 699252595 868588208 992501280 997697422 839483217 876586395 643366368 647580644 859556921 883671166 484216530 648793599 190454541 772416695 976595364 986553521 951733944 951790067 501440975 934253944 926993710 985044390 636379193 839629508 210996396 909917566 967516566 977497122 625234150 887196194 472050667 861542173 821552363 949428578 582605984 889136978 109520675 254374014 251802748 352288925 986983879 999512757 121097868 797477852 201833855 775082981 61831228 394396031 711633829 785157657 968153060 986222490 999477977 999763933 912847714 968388024 588010326 617573420 954074976 974135458 804027414 885525845 831104778 865685609 232523809 878322216 375503254 410458839 376450745 678742767 418887403 654588348 751680467 865647874 501285148 907105210 431273706 694336189 858073917 945626102 156679314 867979845 450304818 453938535 271202079 477180691 723925729 952249570 796948421 919949957 487290850 934774423 487324620 669361964 746765586 995383008 146600553 747047217 126396643 738611369 991378484 993783804 618580761 647244719 330933188 346179281 901426331 974906739 8686510 152581712 199433674 218909030 387488810 889890017 260482415 540925392 318755512 519526432 207956458 407690303 999243237 999782072 117969827 545522088 39164878 124766051 930805434 998398144 484757827 531446455 434499664 632259905 426564441 818571209 614215131 929019912 693145783 726998727 601216447 915157946 641271208 954543667 439337689 709224149 7060461 186761798 194096172 730822316 220177630 337928227 683621669 736421180 641402428 886584254 696912903 833133566 997548832 999585524 288999491 618377429 18795181 529105893 275501255 659717778 991094674 992107600 643537484 997705219 511497092 740108434 184232883 950398170 389135266 953864957 319838762 633252189 938874257 985742370 703929083 777653546 279661975 501860973 961340713 962013138 598586097 825637980 66712753 217086610 115504379 242144653 200140462 776926274 36154711 262415324 692968030 940571075 464278188 866312568 969510906 996687371 313499122 756991667 108559439 385998450 81434515 223362110 373083742 716332692 466740319 728867810 336064078 735912938 382823538 453876786 177245461 532178449 719791000 939452690 219571557 717769334 319443962 774605476 818672324 843424615 894372375 909873953 903253959 951245683 673550248 872254850 498601992 601657257 443606065 741328704 781601887 947787242 26891580 836385338 705931103 762247950 689119390 813493495 436846017 936279669 830799748 957064096 417154351 766262541 637183364 777024654 228621029 239925319 430447796 793814536 366432465 986061415 272317761 676886732 937683165 960779070 116071340 275535255 980766040 984546292 886659090 991970268 262637315 987251960 757004968 992661725 173864774 429435855 352624955 405696409 441009680 927692358 910514092 990385987 645493693 985545174 51233571 979522459 599172057 611268384 82247530 961444687 164559223 465449853 518399181 528140320 197310825 258898602 432505635 650605069 282289889 456473732 643289893 843148223 710331998 935928103 632962599 838899016 980828956 984547852 703475302 790968699 892370579 947372872 451445548 690141790 580621803 997392532 150166860 190737048 879044182 930886220 859336254 918625404 320453856 328842809 22551437 502160170 724895492 834427652 835340267 956318721 291297983 414076987 457658378 887951601 179599265 720430052 444815736 756291531 141544487 548439575 307719155 826762820 658174574 817074967 698484819 835468210 426694295 542200101 515031240 896654109 467952319 891850661 552552822 835975252 201842995 832928421 913330358 972164414 108269278 188323713 79075791 181548537 131612067 225545636 506901288 697962326 678978616 690710976 646948092 837657041 683641542 916817608 159195395 292105470 567376316 612636147 545128071 706899741 280387457 414787615 651369122 994528239 776280422 793792837 153631032 397648261 365021087 818177659 12577734 729610205 980557686 982848024 540273956 971338876 224325400 470492564 740004541 966335895 526040215 858134823 705575251 894705169 970126201 984189997 448658513 730347196 683050059 907363520 71868476 277528756 349957966 995296461 436871095 923782061 307534284 334286207 498704728 903444587 506394266 763168075 837118738 902807208 215832151 232034922 527760162 939804141 704015345 893886010 183873239 314006843 83176317 930741084 794359452 980332762 92996282 94430629 84018874 432894478 462005174 577926110 716992734 935092214 682411112 997638998 850901380 930295325 507294735 877572455 478913667 992247765 354295640 668758397 863290359 993721447 169820437 877300183 849463088 994448701 850878371 967920169 934602443 964353711 768510267 983144272 619588690 933761208 403857481 435276880 708595636 821083013 434484160 830715771 502256190 982093691 269658977 959963789 378695214 757476916 707998843 955302221 188291757 431907517 747987215 773759452 292503063 688186693 660162007 721249149 582394871 651603117 621056237 759774218 593255914 874784205 971323634 997386612 226558948 890070539 496053809 908735144 121698396 700410938 566063382 832396736 36063207 820527220 962699997 996338729 683515673 860973233 914081621 965508239 510151679 591526265 935371653 996858203 495625292 706576249 432783414 623142654 148612917 418807922 450688420 663353452 32612006 118655315 504330270 748270162 377077312 643652455 859059024 894465390 732005076 751883052 171329910 180591274 106411005 483246866 674424789 819268696 94923798 310495378 446878748 456810317 217162863 605154541 83761698 380820680 437309461 510362075 571469347 862745453 803693415 819143598 685145067 955994274 544538077 713028637 79840236 748603389 219750200 820211310 143688774 565089189 251310575 396858975 79481360 848360360 978534425 985561558 406313618 421576020 809641065 894683930 471916592 999768520 685064069 950003435 945509430 971906320 368244254 439060722 728842978 957129976 611402164 618413994 177903715 260956609 147058585 496267087 967961126 994881269 983613890 984870022 390211467 829191115 457943381 736920604 242294744 433485600 293870805 639455863 438327530 959521310 351035165 844119998 516866589 649348607 865295114 965763973 654849618 822325836 758603658 946730221 182523633 342574690 564708126 614360381 657116838 773040066 996324731 999250680 257180926 582787894 763268641 964665643 798742771 807723489 375620899 932149659 513436345 531453856 374153765 958412210 551420923 972433003 57349644 448168980 240806721 427455088 972487968 998904551 539194958 993411194 457731201 540284056 570515279 906343768 602532174 650007638 193205481 560568708 574415990 793489154 809079013 964724911 959183395 967993520 181621055 251755975 713521634 830701382 442404153 856225224 259187817 297854252 574650913 941630785 286057264 392191506 692794225 764543687 3324433 223625021 458444563 665541952 647209217 813806694 827755147 845674554 3389143 259085697 978415585 991224264 947284213 969966457 458662922 675625133 225580407 421435925 802619742 978434570 525699738 559754630 531618012 711091009 43084477 245029423 643351191 956638958 735452228 835208418 829489059 860150184 580737687 809430157 273110554 526644786 623574552 696134436 704336192 989378889 83226297 398725363 3128490 890299147 394155784 444014265 226832782 511990320 374938386 826733633 560213545 886141530 287743405 651982074 894926908 976021685 549235419 979058078 148695055 826644069 920298836 973117870 183745228 911330058 828496826 889644043 415159081 490123218 784645694 931893219 675499062 919691502 809312402 880397455 197996859 482388898 861826368 869540920 299132404 582082965 485338972 653227350 635789453 809904215 459027235 494329660 579462461 899870640 384459733 768864049 681654459 688937152 464429833 755242233 853548107 865490065 242316485 859495534 623234871 705731428 86313854 116537930 773615724 796255609 974708383 992124540 793888515 857455274 657872662 660637318 837152451 976644276 773574033 780592120 659744151 822910613 239793494 417926942 461121335 732970449 345613154 594127695 180543020 881690330 489114015 709292149 956937201 990921474 198478461 534671882 784640370 846185648 185159562 282904174 720409543 942626127 894029160 951363854 101853420 413909738 77470528 196048080 741501263 879869616 986763509 996751075 700024290 783995699 195522539 872749388 622751073 985003289 317644154 543679877 599006788 897253712 652596513 854903803 487102705 990411178 13498772 388921724 597302070 852749451 953315809 984580225 471272901 875548744 883911932 945955648 261392623 778224066 987180287 989231046 286006715 473346464 429501295 507144392 913924520 966032671 314034572 517212663 984662758 985886413 707063612 718487825 658317931 663621518 708220616 959495865 139242587 403749094 219219681 321252655 206168454 427740940 846038432 866536853 136050685 869066206 7090107 360825867 159958508 432886698 119382390 612166389 554383158 978056893 425759010 693459484 413989172 453733667 517203571 793275128 133200938 589739056 68375043 634764650 647115230 832362653 30596867 656485866 520240996 908893954 781786530 921584028 677132172 942670153 913278027 997987890 387463014 933195407 738590266 877193493 767076777 804917944 416954917 420405341 19285819 399847424 3537496 115497602 710712948 734051411 731106564 759742804 850016522 965902654 289400340 309843004 450566719 824849080 143834981 965562989 577039334 615324084 731541816 826313792 74624473 879757325 145510424 572481607 732962608 901472884 25793631 152000563 572205632 839082005 600623185 911942889 723124828 876581406 792007799 971209448 771670995 972375632 681457394 828844944 109253043 541889367 429671386 578906916 723433564 884369382 963655917 985761999 737225731 979065072 635616238 884827366 743805820 916328989 275893897 849839644 837172116 950392900 175933373 237295220 177522991 839397146 347249533 480396938 867456744 957042027 764247169 768019397 533792568 961679818 239636073 371162105 867936065 877639025 813400534 869449127 279411826 555650343 524410269 577392566 723650661 820117871 418391875 702236271 439118637 469776266 351172007 908817812 260162940 753641423 991513310 992278589 928691879 992265051 49813977 444668658 74138365 991077223 544412892 569667298 97549788 112939209 97914187 485239829 901765655 994858483 155173961 434147048 132846370 453932539 438915200 758249319 673061200 725551911 83159708 177786618 33309825 40263329 477700397 982304598 727275613 945423985 346917875 629245565 748526906 763299163 602425894 676060487 235812603 340991282 645687554 968512976 580328594 700903436 995415228 997791045 280170989 328599679 557660634 611395395 196001357 916653390 440230595 982764519 966553922 980518065 37742502 366988057 580509119 906078450 881326652 984531447 768738395 923921722 892329774 942990405 302462011 411574692 782425248 897717762 130069054 599797441 101411070 201641434 256957890 479385189 800967115 857828239 814942183 837548835 878496329 913898012 739773480 961946033 700066587 833618656 870720964 938518447 96398175 989451316 405268681 430292297 195533550 441808252 983545038 992527513 132153373 183533421 952277968 995186874 204086835 495750044 97493006 977398664 868798177 920089334 880486054 968881843 675170148 994007633 962228686 983960633 899266765 977662398 546587642 779526467 520191762 797325825 174240038 183550336 683647908 960995778 333854197 907859903 188053354 799682642 440425699 936405539 648165093 997818026 316075105 656070678 278449487 845957429 734560655 778648335 977978513 980210042 630526654 704856226 404728829 466880294 819982687 927616709 939047604 965666494 452086391 778958094 102505784 763892575 811960724 822951262 651885826 660520533 793352821 853095138 44745560 640330609 837674583 851783432 308817217 884056063 635834286 690428653 78411551 465306899 716503464 914123591 48052407 891485747 456836443 849131529 680249472 682362834 148408157 921514846 910320126 913134569 951587038 968182733 7490129 910335563 941433397 995786274 757217743 883068383 842081268 916338718 929012427 978693341 175581865 815554436 319934555 872260278 950247488 981487817 23369073 88735788 571102821 831779502 729866482 985809094 212564363 486176773 513092601 995913010 895641325 978211188 732576212 886878988 453263527 632873701 588409895 622378767 495361755 780831213 560300748 905920115 579692437 724732120 382831322 929799733 738194065 871982870 352554696 557759164 729068976 735414568 376950454 651268472 220948018 720367229 363962447 573697172 113826410 572734727 222234383 704633531 99391462 446126396 256252253 617887248 706644753 833994143 889171429 917068195 386899139 548458161 322607255 693907391 331322725 875355921 409650632 729202623 39958706 926653436 35314761 729705329 472768133 608084320 23106353 918399250 965904199 971257618 219856211 885798070 976917363 985105986 766266124 879509117 135135507 684739945 962117361 983499717 913189753 953612583 792802181 838245724 2054446 950616515 166715875 516864826 225745644 261174976 787030185 963167995 893343089 990781841 376726216 959535445 189809681 349066477 464634348 662905119 578869150 927970013 912086056 940203372 397814126 514596836 69582611 279285032 871276960 925281009 995272861 997981345 226470476 419344222 170040019 404816144 133951177 800655809 286627114 800385961 951473628 998129514 232549956 305007559 583494042 743015735 625949995 794071017 936954220 959965687 745784436 984778989 477871331 591043857 275408522 988247229 685340050 843742103 86439195 956409358 725060330 815808122 187091194 842508969 645034265 828145918 36070192 681047749 929383839 981591656 225160175 242782126 474923475 640760028 77931373 946493398 687639123 757904044 794375782 956698592 734537803 940822487 8852401 15675944 916839659 966105941 401981582 693340188 315402661 387540036 308353984 977492545 63162149 997268711 377164318 383874865 120364044 884370055 206070494 798845542 330643891 968135663 451339923 858520700 954334145 974158892 546213 281336475 664984261 746197832 967062690 985022941 171949865 345736448 669000970 924108632 956222442 975897443 582699899 866166186 396315501 397377660 550495582 926047525 972905541 988095978 406419133 856165795 828058086 872254332 553886026 611319977 464766849 726485846 732906433 918795950 602207581 869663614 312554317 504627639 238135165 800140611 681573576 793483625 462087690 555491075 682602261 817600238 161413988 965058392 698884383 828551340 343295767 738776524 396337471 606984531 768610700 792795260 638368433 932207977 99878681 637896060 382402894 416891770 994355280 995174986 308212022 780805174 449975733 604482710 464386345 556378813 608513252 932669699 3374863 209639965 188889490 922870992 934654262 949787213 355932326 760514946 152469011 669443433 392806697 498867328 262952515 671922697 182177002 376502365 454980553 784080069 371806396 896878334 890242676 945628168 564250607 998329044 86476431 996340378 987083149 991723223 220088813 878621224 586416215 749740614 553112825 731173746 901560477 992415682 195215893 696799797 237944733 954927446 346756374 557387986 280625305 439634483 641914279 667833670 706127626 817672884 166338677 331443484 444815137 489381713 961498454 964877401 14182138 928934996 48267438 235556583 982442501 986892317 694940426 789883128 351247295 975761482 408054116 726050648 923109765 990393684 609645775 925579221 61872422 703264996 383974029 469364586 282249783 487887604 174902430 880706968 169452172 609991012 560160968 970925585 667987246 692322530 626671912 815274520 669805170 755337682 488643289 687923493 908216717 917141330 846046562 927696832 486102353 956778635 266852203 811613904 518851971 768900069 705683593 871899800 71433521 613035962 861330428 944622131 829179848 905467566 952101600 953878043 417918966 567773116 293866694 629108340 523195478 677943345 194545990 432676982 564343102 767355279 953371069 956536463 811960101 918312261 275653051 288351464 260738141 956007512 742403564 898886991 20379793 915459029 856306028 886244568 768815542 954771400 858952753 866163380 124905212 247933500 674624450 704971514 306388820 825320502 139123941 940022409 952497393 979689837 871181174 886440329 198258889 871221982 633348005 794167468 610845699 644900227 428984224 586266638 982680588 984278312 116410683 332337711 443404459 915824384 820324183 916551194 527431317 882090904 555663975 626236383 262340659 703338745 525595929 989206120 591565710 678863801 604647161 737660144 584111695 903167208 908422554 929130143 680915749 716491723 746605050 968811034 926623030 940948720 71728438 120081672 164733245 289607088 465927910 537864732 314933938 675334988 289879640 291735990 113429070 311138970 813948533 890698704 503527617 744484654 687412658 934995832 57054420 274538416 296772967 307272427 902943804 968556117 771054550 812110837 678172069 886340871 955274103 995541619 347097317 639688480 117866123 813933290 190427311 872027892 115886553 969184953 156880253 478284534 662983279 709300968 261967392 376555002 934155510 942889871 20950945 633962750 145264053 755985262 347058479 443762501 610659231 702804102 495793796 648785675 46332477 772760099 413914171 779693873 72414833 253297449 469635704 595415727 271817002 734012431 617820560 999628976 21890334 450848235 264094255 564565263 806916277 939285485 408728124 930676899 304126616 680606732 954402316 969734803 372153823 396819252 974696786 993901202 723934068 879615072 225741188 977789753 686963395 722403489 877433007 989105549 14334765 253669732 616520178 908562727 139907243 201730382 776846304 901540796 538577018 629470970 972546862 992649906 640862200 779634396 214406328 865934230 636760726 826866425 830444634 839780398 985539361 995563874 896511465 997913494 971116705 971518725 641187797 697947823 829112738 934785228 647754813 964074822 386978611 428212841 929123880 960131177 229199521 580215692 436325447 942877365 377176053 636115479 154169308 794181995 679363817 835027456 15749460 611387046 376677069 915360479 76370695 465927000 109971135 391928050 622408054 809411125 300941559 938109421 756067847 900403235 338184108 506140128 424699934 795592718 636727327 834805196 295619927 569811311 824692247 839881065 331789642 443174907 613022460 963256085 417039983 866046042 204103219 642973929 579035512 849337474 298224572 968386728 303036473 746066919 938005149 992242287 134255433 196081883 219205433 771336538 132898310 422868125 787749055 797861552 551806328 922802662 954461578 954852812 449306661 872249559 967204841 972241629 655272813 845574085 747214509 928894934 888595897 993499250 623563162 667758850 708239218 917584490 996022996 998491829 909038926 922555669 731181456 751298039 903839621 923712100 779342286 978681507 931202649 959446899 875680660 925791338 582015010 777389175 431923977 979376227 587187295 820335500 382508114 510493254 290382355 693514255 536958509 810998394 56661291 472756939 664370342 701930791 126032498 665233057 716865720 822590262 728613812 935521120 648622216 669577297 370867744 835184650 296332763 704909873 808620044 993805280 785190933 854634494 833825859 904675010 219608621 354801062 270825778 859922925 629300845 831988714 181818640 808545404 277535882 705282459 781699365 786931964 238480636 702234228 560535886 947528605 284551500 945023984 531547907 981727610 706538484 860138964 512260850 856387786 877595420 959566727 194605205 399282984 138704940 467922010 785867654 813002160 564038981 759678902 788302007 957415678 602056474 751643072 824762073 914465095 963640459 992427892 908772942 981943043 924244398 994001004 419510438 634925599 257884679 575136824 654197569 926934835 526673166 590964448 758544961 984595679 874854310 896078436 331558056 450083669 7057046 998735036 953285027 960486224 744653467 891198952 477894807 580977820 111552274 642445911 391175213 718125664 534887161 684017228 502778599 807243012 517140743 930184272 638276260 700569224 517115273 841426173 13707075 177437528 238792603 494424843 238166577 677652261 538852907 664960961 576822936 968443050 497456937 766759171 920088610 959840076 188611341 442433442 541482851 963876478 514499793 765942422 414387906 777732771 685974514 902926158 188130945 933241477 208176749 665146415 684326735 765006625 581631666 754521910 623638349 797424422 148121743 917104617 107210997 352971269 812042771 891106172 144584053 633748049 463883326 470487659 814919844 914186617 577540085 884800099 8951231 133666958 945565251 979525758 896175676 898963725 167241347 289836493 151892131 206953749 363848052 910520379 255722343 772732040 803636842 839480848 333870726 990110752 216396837 762980782 953538497 963468349 265130697 514131694 360938299 894500855 430006749 590260096 777843045 841139334 116699412 497024867 602366597 722847228 634548616 867822457 969801124 979237108 220231370 358665813 812474257 903991346 587849091 844908991 386392304 411948790 747174873 856840242 656790235 762125476 715495179 761510434 931365429 998707953 539931983 893587286 92718165 242674843 748825753 815829100 908370250 958767584 340846051 651451616 133840741 672531923 655162941 845296190 267691428 781120994 163965501 633636501 85578149 987102126 532411554 729132380 194270449 334988558 691098779 799995770 506028093 813261374 745985870 844889482 572434926 937130425 440698573 585240305 853161968 984492823 134525866 710619528 173922555 648756565 543157431 756469130 291760621 916760730 35268017 443690947 892753219 968994590 984596424 987336192 141868522 531831942 627771112 930516235 205116891 526233258 759363242 935885036 218310051 502278186 568594974 713486628 890897505 939519359 180551276 358004640 460717544 684066198 38040067 997084013 177105615 926894487 943474748 978752817 732954415 808646554 927460052 964703075 185611904 224495056 517804827 843977318 581180286 666848921 819715787 876496056 775336929 784742639 741588779 913116522 11680884 926714938 688937058 928447386 646109301 978176015 34666371 179463172 825324664 827575506 717199949 817586551 481089083 543689963 9548345 211161063 453099525 888412782 567918016 656698892 456297808 727259658 20549032 215121357 115321534 482010136 924674478 956173489 531115175 939958828 241607976 471285362 454004269 508714505 871937761 969309373 268323128 836214170 378510336 838509488 644147190 746871527 557257255 814942363 842121919 872742965 171983029 674550795 977439889 984859805 896311445 957456113 234740765 316276117 806215589 896814544 509608628 985606297 134363287 206503971 493580593 901880961 917603486 921382708 265714176 354970948 516114190 946021642 953697526 989780819 758536665 902529500 447184187 975105237 453525597 936943240 641238957 997795617 939396841 947027535 71668082 267322457 710468766 825650141 407337342 778349176 214906593 371616785 881308491 941735593 874726679 999788924 234012826 853855659 289077025 925069373 920239210 996309738 163964168 180260193 285883066 531494680 893923020 900474985 510621391 829695112 970088305 993806535 549625683 590158693 198772946 366162757 983677156 990699826 634804130 635891568 758728190 778780815 576493237 748326921 238315861 934472223 363894816 492985229 890306186 953261659 424933603 927077318 756351650 836868107 833181777 886569321 903923270 941989313 477129850 712217482 264854714 488889913 169012049 840163438 26560837 153575236 705913385 843245990 616824791 690700581 450040124 879154261 149211050 162624233 974259666 984427923 137696370 881599310 500311546 776735054 121914962 198712312 309093852 640961816 263905567 557134957 5080541 14043733 626858596 908219536 661606847 901192502 380252038 778604248 376129140 683211785 246567812 908614741 310967446 961550359 719194096 837611006 198325117 435940193 870713121 889483461 79671800 813203350 160026933 293973984 512555024 856538685 264768410 383099178 722318632 886773926 558941844 923552186 920457293 995416961 896819629 913587957 956698399 967473554 439245658 572396060 452989908 623161918 217188617 503629801 858535502 876003568 750877511 991698750 884490623 988951208 172855976 770703051 852068299 955000133 729214938 968742184 282348902 769224432 288382009 898782252 419201986 794306515 870330174 951629528 105977684 133169105 955814192 985143494 997465204 998130281 383754456 709545954 390930774 514869542 274207076 628252667 657136643 981748849 951763147 969759088 291268452 707455044 36253549 49571223 813325551 847610417 76562548 737486168 254698952 768169427 271763727 349588624 47191588 813368670 81810315 941672381 769841005 929163021 81832339 886113082 200588485 559110852 156775722 778475831 238916323 353953487 879512997 935351663 317397665 964103298 84375781 403027668 376570186 564686185 216983716 852044783 353096385 860520076 27730714 410309049 178031048 362129290 202892218 479504705 273707920 521365779 255466835 812968753 92660359 552143443 820231733 839575543 995003007 998824458 131479056 613016838 739452786 810253771 384674391 947232379 829295047 976888851 691281814 783610180 883459615 922415763 411720613 949144784 770931213 829875357 458605411 604237303 208816291 587694541 428469212 788565296 242470455 899041588 703804069 905941162 254371342 676821302 870499233 881873698 908077749 924206129 500732568 516290997 451311386 682338637 687884433 725445176 526842862 551147324 428733704 970081511 800749619 975375833 247738883 917310748 12540647 504284814 280146875 574839800 165919845 439808846 16767561 538727175 471396810 807691251 577941460 740779421 184744943 245272384 368644728 763835255 90883579 759141081 591886471 794084215 75101634 107965270 236893070 937832255 474412729 706594293 560896166 789920653 106780628 994649068 890949045 892602675 894412856 979334990 695926973 979266241 797209697 959224999 707823249 783163449 561547456 928812001 690198195 715851823 780601963 916996571 435158244 966924077 3220138 406650789 785656013 842206938 442332670 593211941 208799531 266565591 172145541 407286964 881846347 998279804 101264894 632626324 262265424 626245772 522378532 562064356 448450370 792560971 113353737 382006775 944281945 961750657 57480327 527931334 769832211 813554353 697532803 753767256 105640342 784549134 977688082 995886051 766212824 785997804 7558689 68051654 641011516 902108270 767226860 974193356 836426758 852567345 962648246 963745564 659635407 888169186 763672551 870713618 981941075 997127311 93289889 595255318 672465151 757093786 73748591 521961725 693700135 877082365 362967754 491102832 979661267 996810390 995203044 995817878 765847650 851089190 566102418 781523522 667125204 799710431 919613405 944264827 248557708 852068843 657708248 749199309 696394169 712440764 320466759 488888209 689923811 885526530 370668053 585652507 160005287 232303617 689059304 871260151 36891426 877314693 631009493 925169839 87329859 936859323 805379070 999809434 364160791 699727752 545280564 941309427 416696263 682961579 341995006 931607067 878203733 940626575 62728698 142743951 403887494 589959253 679726411 727311840 647561735 828134472 638614558 945092985 863745545 926149144 833295543 978389888 823180781 927549831 789866628 819705595 312675368 514286198 868590615 881161040 670909714 765913425 476667876 773812100 21616856 165547877 582713244 630854979 381409290 683611594 766149699 962312679 887525344 947480616 129017760 303571656 37239497 49967926 936635070 976565501 615723106 709923447 10761996 84285480 526272881 755880865 991056010 994831776 713048578 915566924 227307060 907342942 605084960 683664959 881231875 911570380 803430318 828012645 604311648 720923147 816885798 937974673 673100365 896419208 997883345 999959174 566884594 807726978 912721602 913118273 972950833 997742265 711863853 758490779 402629654 445974687 495952319 559646195 757625406 988484034 913516492 944927463 354540029 895014023 289069731 920556769 812367201 846908983 154669151 865548137 743219753 901237656 220200412 369412265 411866827 548279091 399531748 926795826 528837007 961074900 552780911 636269382 428726873 852488451 976991000 985181317 233779229 542502126 968366566 989537579 888941061 998186121 813251417 987335565 52940601 340174440 827881860 933323848 48301251 106712427 858105755 882089666 715867586 980281636 87581479 580451822 418624989 688129567 978841531 985744382 713597004 863287585 647779170 900181291 337224769 397537395 808536922 967921449 448761018 880232588 162400333 279954708 91153690 773701081 809147272 906201064 334688578 663962221 591823534 917647156 948983783 969860402 107665498 931941620 729616079 740900449 443797463 746408179 879773605 967508144 999794056 999794793 585268245 657524837 230945910 933953070 266574859 756180296 398346292 802211189 689723510 776275425 574362054 592064246 442420982 751811441 494355821 698136867 117626766 715604532 425494611 521925878 685844294 731039227 141014469 999568125 354580529 593817778 926662003 970498607 561336506 689031425 714041719 964952773 598326959 605186284 781680421 937617942 663731820 884532539 930177977 983294134 50903128 85406860 532319236 921917566 309121929 320779098 311504859 469448549 135243567 473228283 944931019 980539060 161939386 678111469 296793988 666558252 240549982 631970173 237546588 955634430 51765449 676439036 853084251 879418586 193623457 313898118 249470434 984861532 706730477 994544094 230032319 524081849 36637545 520370809 416098607 493442477 914568073 960753481 351595714 723292602 385506730 436801716 369726228 384376767 665872928 879785735 542649922 633781242 150078451 648206918 502784711 587391489 167247520 707205268 749816585 947239892 947480291 986251696 236939936 796418077 908327214 995517325 428665150 723576068 846989152 853310491 640720978 772118827 910402862 974138280 52513677 293755044 762138909 913837110 774730594 905528228 568702614 997543641 284061255 708499878 971042508 990551363 422725437 586712070 483958588 499330186 375296393 392783747 776768609 796330409 924607559 938620731 200393847 433443966 113395646 440548536 783163898 965872511 66572711 747527737 448098207 603134288 959557838 976703550 587497243 702429703 815122446 889453003 192370214 961404070 37394560 713929064 138874316 816887423 955215972 981767324 487473705 621776311 931439155 994128871 178950917 199661062 100196961 317372980 350481512 622242563 205581573 730202866 601849837 963656699 896360264 940868966 547306921 744991877 835559093 931274642 360151897 819138174 717046792 875701678 304154873 895153437 230733242 540151071 911887333 952225485 907526551 978125762 246371364 592334742 371144496 450356614 114303241 207413653 918404147 943254247 409511906 632005357 898960159 929144048 120489804 997457569 712755243 968455330 862545416 944175691 907684190 912367396 823118549 843223833 702492324 954817411 903405639 956417358 701715326 907115161 659594254 994256610 434387595 827136515 406273193 481879273 157576438 246836516 372638280 475277788 606302580 725097191 512391423 695272583 697480199 989565292 889525029 997305786 934639938 936175414 517792646 850789929 386691631 991875953 379060721 832136487 612947584 930360612 731465792 896679031 66916224 817492396 206847290 941867554 675490915 753052675 854290081 925806776 458115478 551510036 405485608 816700892 613653701 896808788 211285124 831589890 998568826 999487076 601532238 928232794 20703699 115898162 69637256 567656735 696320965 760754662 907409422 916048863 953608961 981995936 798508423 867717696 909657362 936609142 535029669 764179904 833926834 879476758 762689655 880778281 674684856 873693201 196136062 921567030 766426125 889891121 247761797 483148211 505929964 934853275 999672980 999818762 237185822 767386396 240105803 527043772 420105676 444886241 661245616 725009029 722651969 793201483 69922928 863346093 235425729 872554535 340652729 444767006 985250998 989902893 796038111 962202863 120852384 225613482 8376257 350179435 884039619 886963648 86369725 842396088 720147832 985373309 372141206 736540820 646999626 754247854 852116631 858671242 308122026 984220862 442421187 667860716 850630032 897588619 446349450 893018963 15174021 633374215 537652610 818760944 990366360 999939652 700112491 785012319 557199233 751873437 964506707 974507599 144971712 893225332 210356678 994883789 521931356 659047110 241137885 373685406 583151677 782376370 998614718 999547079 227613590 424530699 52205130 638458604 392850855 606511889 415126864 616595034 203366119 901015621 8428897 429822915 694464036 942142277 558949550 963588554 806669066 981482457 167286511 716216540 462492882 786947540 735091975 782434918 819458545 927841312 901259907 914911355 228479464 857140786 98204603 505325702 769279788 928159010 985760184 997851959 410484441 623120531 151534955 526143808 294199929 747911638 196145864 617663855 568504817 588435038 246426380 765919633 221433393 807180301 177748642 448389244 623957025 674460182 430817867 504534692 405834349 886303996 534878774 775896575 276094839 351440641 313540232 517464800 878522231 948779685 116257016 696440354 976914406 983462110 49499587 89331971 219575416 702813230 455082245 805112252 412572992 457839392 88937233 882825877 202302354 902647561 601841350 703493013 900809232 906067816 151411650 432600770 653162034 863916851 809559559 979184933 173255029 430306641 631441741 954400823 495342512 751731493 919878776 965407041 256778271 908775422 428299805 714819354 767253021 800406976 323707390 331768120 490775610 953952710 66514971 779881657 592401420 724381576 197965924 209788026 899914338 974071324 570213491 842907775 538062806 562556149 877326643 981746228 906620268 938607857 371083402 438376806 363294288 374115964 774200312 994078949 352342861 434137540 177852492 600599357 445734236 695958661 105039933 275927430 15977903 845745093 650528002 845566228 228058479 529829708 472881918 618050032 998097727 998816395 346599562 615233344 914515506 929904828 159024161 477430987 695147361 899281438 301444293 347236915 329660209 389972852 551905567 708140841 145112054 596100286 755015665 776812524 205013403 966271611 735890537 802075584 957273026 961187105 347655078 361892909 284709579 307879331 554076301 601956771 306385736 696273758 738787761 877097888 510800383 796425361 260766506 305878040 586230012 775327298 537318834 664242692 537749544 800149202 487938803 851028131 901938892 960038182 38717272 364327707 64137556 442612443 881528930 988150452 867633414 925721893 317731200 864625439 776480709 782579551 721659108 767467320 755755119 770388904 45457712 553446936 17156390 958157271 611118391 894616534 261681375 364503777 117108566 414077591 114237363 803686048 756487166 910408805 549654076 989570707 802338143 913446236 282520292 778964122 54719052 403985933 5709790 834795433 637624987 991177950 788968124 978352756 762312609 789704715 475923542 594622961 187575421 857640092 664337455 964895226 986698635 988903317 195028228 232961560 92016186 808676061 340647176 511092110 793392741 967879415 728024379 786160137 475862275 740982104 266517254 289142727 302508016 541155617 170627367 775749301 767940614 802473706 439077400 819136033 919871513 945032162 112979973 668702115 654909660 900179070 268184063 612720624 793866289 824988874 433441934 532439383 166035223 398751485 439606161 976736524 608306348 763711989 26454369 476739307 460287150 877191177 330318219 533399135 620729041 887369433 426335535 873566185 498534619 555345528 475750403 812376603 920415990 924842557 676386389 960501986 425363310 883197669 498143199 527437082 728749120 934947720 175857713 232775400 228775244 854943722 932962793 940796539 27267602 125817662 418117673 699953141 318665753 505972814 842752435 983043675 458737280 865496761 114745464 840717317 774623626 784215451 686078261 789067168 347430760 770945001 459036333 820593681 521463721 530116848 151751546 972140170 678216269 950782618 854113413 947858399 188084131 415581748 482936124 956612396 462489274 876016552 322399335 898248036 913414154 935005618 965055514 981811396 617786681 750075891 220628170 861955291 779116395 932296179 966294464 990092420 594487325 804705231 978624864 980085956 363191310 854627566 923367797 960942387 331815498 390584705 75168196 308050488 810292226 842396703 813021079 897703377 717597845 851917182 118870512 170244353 102844687 261558425 112487438 480410424 936104593 962247124 762635322 766184896 664112654 923908630 455833791 890335150 450441725 858528798 531922298 796746321 199727556 910203045 312817590 332094290 569194812 937405924 325237726 560085169 53300630 787037054 766651741 966010223 28270505 553931916 589567623 599282158 614569941 681013690 599500710 774758169 132234905 768638751 387533672 672276101 632629243 987803275 569745966 834575859 620109443 634936106 294005302 355948320 316779785 411908398 483919282 919524238 609955582 959046896 145792580 316070881 826800766 965236785 595431234 603938674 857121258 891374038 621082067 946197021 69129223 505646328 863322201 995510541 200912724 649591341 984417386 989936293 314525181 817042773 800167171 982906626 780437601 917290171 216934152 463367773 227635083 941588674 436987713 500587032 4074729 212411108 194656111 674616445 668805520 763064902 510317025 703989346 355001913 884217409 139794623 992382638 295640384 742923894 381837348 827028494 22483290 550752353 96906973 966657851 639050669 931143416 154606490 881555311 735236501 838212648 608428114 781490595 162870628 478257316 43480958 907622802 335972824 427333181 609527185 623230397 740128197 789864240 999318069 999458828 762109632 881385715 246770056 510598843 624143252 987838109 70091045 95193671 537659034 955144076 698354466 757334424 943665209 968726661 572807216 788006900 131117798 460340011 966590804 977862663 667722881 933702733 404076542 713628149 799724820 908189289 325372623 736566526 416210523 778925180 497722939 886640556 429457759 849733327 425495297 926113726 940561409 994446739 53959049 753799473 500005538 690759586 769028 761730518 505260707 818588595 362475419 380689099 692222710 704317048 826593544 954344106 439132032 668017368 168661022 587404422 622872204 737551016 250708006 250733105 429565080 637389699 371728487 978295906 818917875 933780298 973479434 986825487 22192056 985022804 693046368 826409180 670678697 715002779 272250675 539190095 922832624 964747680 463465610 940073663 483320585 541771380 214970999 344076465 150492582 631980189 396338311 892463218 612125576 830577208 497556504 718609337 212177305 895077562 8415303 389257414 515388900 756799254 433427027 801742603 101586237 372241881 744548798 932320237 724846367 846821040 365661753 604912595 416018276 655280581 977096128 987366640 263120801 737198312 998910963 999955737 808382099 998721845 179089123 638045246 772716571 774214563 818417135 912564219 477407055 952629303 286235491 887493881 614932911 826669201 339678555 656774873 102470865 633789556 280040639 491014707 49189930 70120392 33545020 951338368 713851564 737287862 580313781 659943699 588857201 643233881 607654864 898793105 181647467 764893579 764860320 831101766 135258553 268368133 770311760 952133970 615282520 931722399 356071485 928108035 39207184 271681051 705767618 848555252 548017109 627132825 161224056 739076051 10125600 276931273 394710644 395451735 789586041 843140019 59194288 543338128 327377701 422973440 25224542 885181701 761627737 852250153 127324123 800463468 772172637 818130331 262658141 418315475 106801911 907620684 953333950 976987245 907586262 970207068 345993974 624910299 588503919 950098993 702647499 742684834 502217402 665942914 301750782 379531146 94603978 456310742 227124901 313756427 812292995 919065952 313482299 706347706 574276254 985361697 722989551 765077771 470222044 784047234 803077286 990000990 133949729 439897696 181969768 365242544 97193641 502777937 620849988 793797799 560806988 670589484 321457946 646881311 617900861 954634422 248586641 417149870 605126451 714949951 150516647 510386337 783219302 945291827 393662119 493902686 700548172 796565415 663275818 927935731 666694522 858678228 311943923 834000164 937478758 992103409 287940733 706690981 808704847 972469076 966077906 971752001 478022664 850946193 750428510 819222861 414730474 859386961 426075680 504995470 838876674 879366823 546774832 714210782 785740246 887584270 730151544 946889861 106820905 930051900 564333624 979648603 985869113 993862181 328387131 900323903 470510740 774491039 734208857 735172742 300877718 410010717 921369189 955726396 438222769 634938179 471748169 991595921 539179787 553154657 777667350 883009856 337664401 432816774 352569801 786997607 47207577 640053981 257516268 718370182 718279201 956092219 987429115 993596671 354323671 541781299 235859524 317326708 866259247 891806864 670088769 730301459 541015945 829141805 596222776 619826319 826290865 901096922 308024009 356732056 936087843 992904658 791997856 865478949 494111712 916386581 39855582 455206077 122536368 728136698 610591604 631828887 600786356 709742998 820431391 831382132 312681881 512576738 98098379 427062347 487869391 555008749 801875736 857333607 667286243 995209824 902880773 999878757 749876808 886454760 762814162 840086563 659275597 974183831 159386352 161458986 644031313 856760257 113859731 196799198 497395998 956913231 934573861 959296193 342477367 478161128 21954942 979286643 296602006 344604201 509435009 879578706 957251795 983203153 324096386 342253839 251993906 647884911 433320137 857241666 868930492 881542698 626253030 914828182 891401007 962132370 676900263 974201523 6841534 78270297 11248259 374778590 933178168 981889193 612442452 672078819 43986930 164426396 99507921 981854339 807095868 953336982 679714488 832059404 633489422 707103161 476120880 598492529 378058728 483522232 582454850 747619574 712100701 957470086 200725563 694790358 25230346 957100528 955925088 965143564 691970168 713859405 266418053 360556158 198866811 953729204 820019007 880416714 884973648 895202463 641758498 771060448 247975744 725278719 63239800 196302776 463703329 998362407 446764654 593098445 132680969 662335089 478127473 735416275 758471204 807046178 640717305 863722110 422003427 681967567 234235534 535705486 181612749 772543673 276541705 592506040 456016402 519836244 287562837 453216511 178404947 677963683 564754110 713924090 455104012 475873951 446445063 686909904 445218921 874234448 911961754 963423767 678149425 842530784 861392702 948864210 731580607 838899076 136035388 816094359 215034241 934780054 862891505 873489615 80399029 463177851 344525697 791483967 642177499 905236681 881390062 978051077 331943317 764473368 533424753 615927331 998142596 998736892 183597884 654473598 210674907 224281682 733264805 857436264 944955870 976288245 649748845 869169189 67253694 469513693 201626489 635092954 229723240 630098893 605636232 911843061 149873186 179429861 131716163 567060106 893053732 909960563 228385478 772571807 479139514 600961650 626001623 798163767 382695745 912966769 22532132 484815222 820137951 920693150 377048703 915169778 234908731 926957767 173989462 421763327 731146547 988875375 392101839 725081268 781342546 922095396 169705384 824988358 207080394 582488515 298081681 965005604 492357147 656792472 570024419 826773070 67134743 994385846 605636953 915621821 740365176 800913846 202207548 723795020 63942689 901699025 537698190 661194885 373719052 663605183 384628070 392639578 643708890 715997312 636952005 689137741 245512607 443091161 235403138 303658836 478769333 770771075 576752633 745565219 277424063 345887871 811710755 902875996 298503918 420087398 645602764 959197321 829642131 933856452 350741107 661586046 216603017 466354329 338162705 407745498 117278998 646680530 640158343 667026717 417721517 890715889 726999933 880475013 795984420 864518260 992366857 994165028 744602316 834869147 21181460 47353572 436500558 951229194 301549069 886453873 548295580 815619863 381097306 696365971 387152403 863160608 373054973 924691256 661466870 877045483 145470080 702266941 696850598 708100099 994982963 999009101 140014063 421415297 382491418 865018598 907575283 908386494 548186936 672220699 647457619 815184193 265847599 934394882 38465822 609377248 354522140 966342836 527744263 859150990 851619747 860357616 614262382 614666755 220894511 868008593 570271849 843060218 302044296 511053403 708970362 853577532 664351167 761239185 632313306 853063775 518375249 735381262 23706760 990856938 76269372 648102359 631486900 671323896 778268100 979070320 897503523 986556079 55696592 595057601 359526184 404783168 17388702 627688742 723780812 999834153 231126049 683054248 139894241 925353757 943101784 994681521 449804200 852585057 663253618 970105700 383465873 649124456 314709048 831653855 931408422 942295868 364903782 946934753 632801768 715077329 218340193 514355710 510597804 846246200 419016082 427835378 234287439 545575015 677096704 721888474 99291294 385143927 884748445 981063152 512928487 964020497 388013078 801054004 826707699 990923491 853105198 969979848 721241173 761935445 777227853 988583807 120838160 168836934 205286468 448876159 965285693 994088728 735696534 872077990 348999598 361875640 588395243 872901696 468178264 940709742 961680143 989016307 620223869 777338820 650416881 781946748 743263766 756107209 92262668 715677515 923167611 968550730 754617119 999816918 125380913 819838966 574262812 745674203 55252260 562518581 277141757 491813281 278175906 295865494 526953421 636709388 849307146 935069296 317195005 530921290 638182654 643159175 264368291 964887641 596764076 714801838 17860477 325730418 242794505 945104430 186007269 601210758 74140948 225125102 503827625 911125142 147490755 828899083 668677826 907828342 324026749 332794975 97597059 960264680 144499738 294467412 460837615 554494796 903409693 976937002 167247935 971269726 426083613 839237444 894180280 994782255 897036931 959797816 914266814 987634238 591415058 782372155 456090529 491676656 418317339 826646432 560596015 883743183 336896567 375839775 102017886 952891002 258040835 984386833 830757421 937179540 767086182 896797947 554615046 901248159 337415799 918589279 984370740 985550257 770621169 929327848 863668895 983572508 467935378 825899049 667983480 863377140 895168235 943239845 769216305 891710075 855982796 917416233 312189563 476399923 779460828 968501217 127643849 474432725 53950077 147618603 770988652 961162723 187077350 793380626 4471744 229717607 857246325 957544765 641344035 801616328 82715393 677691053 843900356 921862704 276243935 900735539 846619880 964807235 330638878 450644279 999348179 999880627 503163565 884492587 952957321 992990480 464043035 720680925 448249171 901997987 638831604 810360445 32600332 684027438 435855551 710233426 289674105 646045176 322368214 694819500 447207146 572057239 753443813 920911212 907744481 907827082 656662565 893592051 431180466 628716183 908764826 968780233 555262707 986279868 892066386 965567585 973731890 995672471 533026229 949556702 909790871 926075495 373712205 519352036 235086357 877423051 898200879 996708841 768366140 981237552 819820579 934316964 988312719 995665244 164021284 980930727 204813701 657366531 936804045 991589290 169572951 757339368 491344285 926791246 76037981 482665093 256832203 680572450 796250605 992189118 799186552 898068194 317936648 760450321 199956359 544363329 582163603 769129512 645920790 957287444 114274653 537854114 160002712 681507816 173624363 465391999 182413572 259451198 473888159 987444438 808669251 941257378 528617896 965285568 598389734 884252683 570738177 847939735 516962788 610776427 139796610 440801472 136811663 483504174 199008531 544205708 557561916 952297400 18511291 822600703 885628711 967150604 248810662 660316106 850890025 909864647 363492695 583642444 892954810 928662135 481178248 546223344 875761434 901640477 504212672 838743937 914814087 965933553 871808391 958638221 961491859 988158176 911497679 997174958 72032795 586592459 431217486 591618560 992002685 993787532 218701894 288041371 459892843 890057169 64395304 387712827 26032398 493037247 400635747 878286870 959815454 973448850 12017343 33568670 416006768 502186942 479756650 750147194 942861005 960089922 480786191 837786254 744401512 748970658 569098639 772410479 463297995 689956870 238714848 934270109 838078038 948538841 879818640 951079571 581307072 704670078 712245077 958241654 991534363 998568319 873964888 901184702 766975750 897317288 862823606 931957863 962456686 991399926 726183812 865946392 880783765 991280914 810526136 853674237 323072089 342490677 157457241 539154394 609680268 860613023 824775333 946133693 321200032 987715786 625939332 808980875 776363629 882283040 25136582 937239391 885581450 917598811 897811611 944760233 340116602 479562665 139717577 213594222 916507789 984753737 302447597 474585626 770312526 812535021 142601957 364024224 570126993 947617828 853266615 865372993 73409827 291914914 302989324 395411059 33971035 113466357 354754446 903792979 457237384 669970348 598545621 798500238 147157881 748265684 478145473 852512473 231561428 977520549 693518359 924664981 842211339 910482757 683639988 821955554 676427470 802633863 499042286 875329056 316740629 413094340 459742297 950578204 842037728 879699592 978561963 979405097 209712739 617349704 374725444 985638052 901726040 972112732 165885750 898157494 134761241 747416097 705443108 897872005 324644772 644320247 696105449 731582479 72800154 860559375 712565274 956870902 202779739 369507149 664092629 726693486 660871700 718884812 749790224 787539154 127329308 156093301 262082038 433291769 706756335 767855970 249130776 613412583 692143419 989908868 325648005 638801856 854122980 996079221 47628697 359428671 55783257 899861239 808537545 926676239 506301202 991436377 657012409 826845703 210765665 721587071 241838502 628944597 618174150 917145146 205973294 376582254 876211787 901534007 816932534 860232525 129969071 316561307 440583503 925205858 754731976 956377173 785621926 936442917 579002926 724659903 273944022 286346292 883429833 900529135 845802419 868197718 188898961 509084844 701730849 953559361 260516717 639528344 840250868 943940736 640317583 876599029 181685681 349403305 411501945 680103541 845923934 876613222 693911519 814483016 613906515 709311208 922426195 998837977 9777902 696029244 307281438 762915455 269695774 891381978 742178710 758816811 917858047 993081050 384341521 469837934 593768862 688235234 855520009 955155666 235951219 472687063 222531493 279113299 927255334 997359507 4138242 444412227 914897511 970290888 797393959 899052841 764924740 879319928 79178942 475374328 296117449 436004761 284473523 854261779 569562702 783978258 840716802 961245463 976025574 993604171 606853593 879549039 187088665 323987937 405870895 454498282 678044534 784248295 119884033 357156259 828795644 940225662 356538994 472793349 13825750 313499509 71684073 853669147 567774498 676899825 168149944 593690068 439675115 483836036 882876491 889727068 441531609 975713006 314449745 374324065 523182542 601909618 719280466 906430957 562806942 757803616 150667120 675850532 232918281 237173698 910722777 952029718 458566425 742455760 804392499 888701788 6710392 356698484 434180237 622042167 687242014 790015613 967179167 967431862 931974949 939425676 705430721 915769398 357190026 940349355 243471669 378269726 300655341 648571805 99136515 239573805 581308957 757472350 642004138 845225782 693019434 955140286 937079102 941386706 299025369 879848836 83964626 837660610 530734415 942727705 647267392 935097214 250749190 382136944 197169118 710637515 877311201 995274028 904743285 996578845 636795999 715447746 775299540 821336333 620925252 846966123 937150213 941412858 875619734 904372205 288474875 898489819 984293493 987856098 828796614 891889565 460726941 943716288 238530175 307159245 571659718 639654919 864353901 871092206 36452260 980817283 42366544 699864316 407253109 788917764 774526060 812670597 671874284 770065831 955218151 972338829 656719426 775380399 71325148 283435708 133013689 783605411 693653506 820405842 162426471 745969607 722289898 923201814 414992059 996739773 866546552 994153316 258550032 826819914 581628529 896842144 472522141 639008021 597928364 838792882 743490330 951894079 781055689 846711700 816161426 856433317 717753703 946134113 97297337 323169535 625459559 943972038 24911246 849411589 978893529 984799612 221719609 754040890 739314583 898958859 508941456 589229833 478741565 498039678 869392918 904259441 295117277 593395432 331326709 435216164 773192068 980511474 635260020 643641020 22527549 554544505 592798274 867414183 378454479 595138912 483553332 965093991 487456622 832609616 460156395 655853017 726120575 892138707 325918874 903487342 888031720 958764473 240012086 435195537 598894598 724694155 404101159 616599276 394180574 980902136 372086566 897060734 305086489 710871432 772121607 938543246 136328299 561729551 921549486 956943710 851621421 866415977 253777178 529348455 728957173 838440543 643115768 767987420 623516191 751106332 41839718 314025218 282972955 985340029 508438635 801758260 498224983 995298351 829470592 919715116 623657519 998344993 962577081 995328360 753162567 805652311 646875786 652566336 193229932 725872981 11751406 358180697 672387973 923596108 295601851 742451023 143764312 707111423 994224267 994958674 979640347 993958142 271822173 411456328 458414896 938075990 767338892 996790029 208165938 495826207 863120789 882761283 251458349 292165453 368357952 714399757 67520676 286813677 262708967 662167713 775485118 918033287 327827134 984598730 715959243 726688769 44815127 513312814 48892040 262830105 221025503 547241373 228770818 772057627 412380060 628432190 555478080 647576823 1502580 831243418 142835889 233193748 72978544 797933982 552703128 847945076 84822712 270945502 700048120 702308925 288679133 993784375 764189641 789785759 852202115 995517647 74893297 831550302 44550434 283620071 94369135 105842102 196031283 697852868 132152305 435240199 667873988 699857940 920919903 989737397 482786424 913139859 834212370 899070174 444482529 584036069 213835130 528015592 236348900 371154169 730588483 786593311 715799729 972687734 469940216 919265224 712221369 890934521 386679282 808919690 617867900 741592162 998174013 999218380 988614619 997303053 44132449 916520473 610259058 724219082 341049215 895829015 87143137 790421999 638852626 710246467 134048947 428638316 703298466 871753092 542178400 701831184 723103846 754548998 135986234 706502309 903869485 925749991 333155506 766773595 63293049 404138229 110233071 807561486 823474009 993370331 784407790 791597420 538571317 618239999 482797136 981849194 82488853 832554144 669137083 866333708 295788775 696457475 218048777 739124525 921751824 949555488 715697964 950913441 639602152 816581491 893830011 932979682 637968651 896423095 815502136 863244639 148168651 545933819 915886756 926596560 370842208 987267115 680285849 725471612 750899907 861643871 946136907 980382272 620250207 878667559 791858312 961869483 109146875 971007353 62127225 628788878 32855257 972768048 837612860 846814542 816144241 980760890 644643675 825481609 155424611 945048934 985745893 993330938 211768592 957524620 254280345 767737105 181248949 418877912 611185383 980820326 704068945 865226321 544176648 603509584 342459435 802773056 748926205 836566400 491282036 879248674 450061183 619676689 42329997 758284867 610814295 909126432 79942325 443831484 669194323 750340826 432927201 544775232 971971434 979930279 130769942 725992442 250303870 562123572 395664884 770109118 223841156 751180250 891505333 927408739 627549782 918166835 684989212 890679378 312480185 803982433 741599766 945813409 814257389 816367647 635729184 802881653 43873925 177825000 936278145 940533158 652053493 889986902 265008407 728241061 837195078 849292922 705599593 785933765 667331838 847321527 847874349 949297271 46353108 799788101 364065677 976517180 975259313 998174864 747994747 788341118 693464481 807458491 768940806 901816463 768795845 940577382 884341249 953766600 328358374 734201004 146905046 292834946 270323485 974008167 306230033 849816614 802392311 978685621 757881915 908885444 734488847 959652666 816432929 867504722 731830535 829385603 852025851 958381872 751833003 992759826 206479249 941923881 560203013 983941747 829365483 944733000 340942966 879129298 130456451 848258473 870321851 992939969 305689476 543617831 850855598 997752992 28544685 153738802 940060621 996269172 262422285 756222720 401626354 848490914 941804086 942220556 446231144 872735975 746755372 753527000 908218393 953166134 103629613 389345284 282508990 707763433 600194163 783880992 38563757 187521119 376188710 455412593 860586958 989119491 307828672 545192343 400957504 984488623 131551408 632336178 697424156 822869276 311450383 718353944 399347419 880706334 813082191 823576510 128264110 229965781 267903898 845476354 784448180 880428465 263136627 901724890 7125222 245086395 668549611 714798379 960283327 978713338 915442735 978141516 369602244 908245735 395744548 766251801 252578336 810518089 319734003 326071882 475078048 738194339 948276200 996927628 327109209 911621329 784867420 943701050 640911066 974274587 697951668 932724091 266169692 982628876 256196671 515346787 291352271 530163302 862753847 975351164 738576316 744451710 87015712 983915123 175839016 240101260 152022385 775924772 641701621 678108305 997878322 999140050 14433930 790009128 330374315 431258670 262763149 871568736 371408611 806686002 111946704 392711938 431097388 860873596 394711712 482434564 457213145 508245360 881278814 903746668 627614503 948260064 310526013 806812575 63335912 162339657 112204913 751150897 629540435 894275222 653191734 697622826 47330971 879120347 526822513 958163309 398584056 590021907 866232444 878952393 879648232 986710269 935397839 942864165 440295281 876092860 717679769 722210873 271290050 897890031 661451333 872180916 143952726 568165633 207960459 979638670 598854183 635525192 683855940 773152056 36967380 383025389 310272560 629447993 818239411 876384465 545533155 561449221 158604172 901643610 641700706 909825000 313688009 881692397 204068967 761877345 661276519 796081914 682256167 802311397 662409997 675524832 735506040 871734033 661854189 836322839 251978200 776886594 829701244 837917682 701394616 881386444 713177671 790745786 958881654 998747335 268646884 927564925 276511060 631583307 888908539 969396718 820651078 860603191 379525567 545551303 713615520 911862173 512707504 694854763 507960812 509992024 583685680 679547790 213231711 651310143 924172660 983194039 731613197 879688727 248303518 480368653 401863488 632408864 183543625 289229185 601160473 975596184 407990073 905849147 424805513 676850379 833436830 877908918 927558079 976616988 924215024 967999589 805422697 838472485 385689403 749281538 78867049 597857262 775909753 829576009 298434867 713254670 699019024 916138846 862647941 889149660 363622733 760434470 617273224 733062534 747675419 884762797 362119670 384751789 614080587 619806764 622993755 657007115 882708831 983844928 138782883 518817861 940451727 981228557 59148548 973310928 909199204 988913304 234213071 575765781 862614348 993211969 840176938 982903739 654625094 772016332 800608323 828632291 450498879 933116162 714629192 881634355 340102847 549032632 484736748 753748135 523583330 835058083 224804770 657943665 677192928 738491831 413863940 861354603 658716844 805708920 156357036 556759195 74715658 775179300 893173198 995564290 714062978 877164251 425012120 921995046 220994845 403322932 3315578 993739888 32361016 463077590 59153560 734795038 255626081 717410639 282288265 883423632 847817430 893342531 986054390 995130700 235049775 866328684 568309355 604385559 258568868 617837428 705305718 766846340 965810806 967974547 489989424 512902642 929006182 969152567 438925567 855593753 693148383 901357456 886639436 952361370 833195610 925238654 220149314 502992507 732037482 952607860 873666594 962118034 209377350 578029052 182513155 595092624 615915195 778878343 469101134 836295554 354975426 859024658 177484812 399589745 104244892 541740024 196828772 585166016 348487913 659619540 55510475 836936954 826078391 964961728 447000296 893908340 428655178 648831929 133732344 906454504 845484589 967304992 739281073 868086665 471094227 771061331 118090101 727270014 869196017 877504336 893161045 957374992 84890253 189007328 4383830 296070265 798302835 985105269 98104783 187746534 208921573 378974952 753545493 843429220 381073442 899629761 470457769 763931514 508102376 598879606 416840459 987253501 255965787 513029304 963406325 977937105 749738355 750256180 8444301 674691123 343820013 983288211 617154749 960124038 887761910 962542391 669052950 826168922 943409890 984646740 737827901 765012859 599559816 745962574 678288300 931920460 577700402 652466305 434150984 739663471 883996779 990366181 16007200 594506224 330412739 454898724 137104982 949384455 232051773 657852394 545118002 871835161 724974597 848055695 648805107 974292704 28310495 682737221 906958539 950922250 614322525 881970672 545983575 932931816 105878926 886693101 111824186 512629689 541112990 621109803 504810635 665131033 356008962 374032078 368374836 489592361 529821464 953334887 308224006 364424620 340832533 441638764 830960487 966673897 399753997 506628112 275188426 970501685 400513783 478169328 415480879 970588936 251168000 354948465 498022417 706191767 405183212 907595756 779751353 841008110 2178035 904619104 572559429 796315287 910645335 919311737 131378845 673839987 305244967 431162327 224688233 470734603 735019419 811251886 500854803 770764165 25736610 688770649 265926921 749843017 688858585 887768448 297891896 959075568 514829066 838538525 534198389 982135357 455573670 676574135 5395454 811866138 859053745 895551331 732685942 785422959 78319885 305686421 780071032 782857418 646931498 944845742 980482145 992714075 467527622 654722446 138410258 629251737 986427341 998599396 825363192 994120775 597120044 891516353 601398089 740698972 774791980 893189946 991926144 996997391 685457233 969246953 723340884 956638215 406733909 764676380 765006632 840356811 732184586 770005514 317295950 572237407 17277156 957369584 463144399 786819967 557880941 834279617 953329388 962201110 825069709 982333320 181573544 503677238 121567955 167953904 268437715 514630850 828734236 970982890 445079305 729521313 82408898 456207217 912357147 951395738 757111184 867536184 532478232 762514866 622224840 653593427 737012770 753416323 121301510 805779168 985875802 996703879 299247863 330424646 421040185 485866068 898315028 961930291 634955834 947602603 747854621 935331971 15301737 852027614 24566778 228390224 29606875 461834065 788431542 945464634 544913316 878777958 97182661 667834046 543603665 689460214 798463864 805736636 308569638 677759413 161473769 818229973 635789164 832361636 966377690 981231558 802159026 928860651 313508197 954480127 354989015 427482429 329810186 638811681 126017826 991642190 922732052 934343929 543488630 952525347 743810292 795995130 152861550 760408439 24227376 724541815 523664017 836391351 160306620 436434117 912896197 944852274 226572408 938151445 652430637 833774368 897971803 982658225 577235864 595720811 793731052 823376057 36421778 100382082 530409635 588235364 609777957 867959562 268401500 751968166 721664381 757727822 8378520 789975251 683245429 928332182 796477752 855452126 274089893 345810832 314938203 821519296 580577506 684851542 284771245 448823502 811523533 886126873 336048389 451577703 20315925 438649786 930656953 997289411 538697145 956267859 278536068 738723364 754120071 960292478 697665555 825656194 343130328 539915486 648037635 881053410 396454192 913925454 131561700 498767227 403608763 830734425 844517997 923016615 302985791 397704665 787261666 934334971 569481129 569967672 107650439 681566317 245922425 405254340 641818272 742500332 377446729 511537615 291059827 784742294 747687944 852200341 623696111 980069172 943444512 950638351 475152804 789408300 240969363 794605989 379447240 442343632 58117266 482784901 597172315 653661014 453503342 709923236 153479817 616706675 875143882 943601726 447835461 522371200 489763842 759757536 380768522 771420807 62403589 86262138 462141616 952007681 426491222 563403816 481308668 933221374 47062047 909060477 857114094 984866704 886404558 997961800 289095189 332065471 862267993 944508007 571208116 668010684 256616673 440291583 35523592 674797810 105433153 466691666 223371631 388477717 292933673 467134884 126083040 297448471 235874621 694413743 424054658 803260824 631040656 742773288 122629851 411623118 525146094 650215545 990187443 994579583 932736651 937208853 252607807 712562723 854866164 916476656 364852198 970023626 886539062 893587495 929249605 964850255 378111332 403841730 804758226 909865243 665653995 905228532 652248170 837474699 414210248 932942756 527834020 667646038 444456449 462541460 608053624 869758878 840568942 924461902 478691380 509376997 903109720 926669088 890204174 960399224 320641487 581371287 198778227 234871824 506450502 569219342 587418259 603771415 211359356 363100021 735336824 993638365 739487595 875121851 891933220 949333715 598403456 679096298 395374741 904579298 747827213 776607707 149047935 238861072 12459769 116152152 579314969 856288654 445343609 533740451 315432285 572795307 956936105 989475935 843739383 927350663 725408042 899887077 769905308 847298515 525732205 836957483 491168255 918493630 354117969 395256123 593567058 777710987 294371465 977489408 344074149 788666229 58923914 329742194 534690063 866362442 537746533 972289542 625880881 742207798 184392124 624935759 54244888 956825778 960091001 980499183 434899934 580205033 837263855 962659107 571416961 978096632 458211230 806549264 966162051 975353200 126308033 522600650 531352637 754313852 397319161 489602220 457098194 659049228 897510247 961961876 671050123 827137231 54693629 158312545 928211228 956900103 278709550 605444343 954263509 966887279 60065400 523838648 967133827 971752795 574444411 994182986 65265604 299081893 215118006 399901583 490706769 878530543 662577580 906746791 748690897 833981958 959938614 987166066 208601450 652486719 732336507 953816764 564095182 883234693 510595435 926658285 806831916 922191800 413644144 664223060 748231975 931259470 903431695 953309744 254958501 336908069 230803987 467258651 970022437 992983063 244082310 881099473 267440657 281881819 551850649 716723372 762137732 898436258 331195617 890656841 564813198 896246841 105809827 903415055 966629932 991657939 155567176 556653612 484588291 532207338 749180516 894314386 430025456 517336083 718883785 800661336 105954701 622280738 254860660 992089110 344989806 524844525 735867607 942838744 888211558 963912329 995794851 996526082 82848670 812674647 880654238 959717893 776352523 862201119 704494098 736416770 896000204 917292853 804086758 857334723 115818712 294666401 556831977 694963310 327757416 473333912 530938697 733478311 121462611 790005423 878578083 896248409 979023246 997640177 410083814 798408864 869666727 963551540 697125455 944417454 929354552 999397735 8201 12896634 435176934 648576598 901768740 957914417 231652059 343974035 665358911 758179507 856154840 920829816 360769858 442131674 758459503 803041547 260016169 595284873 453980228 910836147 977302653 994578961 877024008 915121840 314123437 704279763 254566075 972340672 945721686 948046838 888520495 957702044 402981609 972615564 62171069 406029029 141174506 840347117 751616261 780086066 284118774 364605984 896668114 923902884 955713660 989730600 422886923 992876467 937845720 991807623 260277054 365251876 181155693 437530776 120248180 409788883 483812248 890693827 95942478 710592119 110603057 689272399 909568440 968340035 879279600 989228588 782614496 917555609 510664136 988251505 772052533 780127384 619897652 983171528 377760394 633594343 618014430 618611409 835750722 965583397 412396779 681653570 393418569 957372001 19923261 272645271 430252575 806602073 846581580 962476330 363508766 802830766 782602867 816229648 125832893 575886564 126717645 424317157 168896487 837806485 920553335 941442925 300696139 342697866 387088838 603514872 441612531 757219302 176198391 255110327 273883217 404276297 583759654 626501379 239834500 348125257 485442335 900205010 944824535 956764721 560012709 910753545 937446034 999289720 385744375 698758873 131155082 572456596 499181841 969156880 423781485 614747845 42240373 566900231 993856891 995457024 927526256 945045906 825842068 851080919 382280951 752157649 774112216 803369961 297846907 503285602 950317908 993006380 996777416 999072196 55811937 596110114 938292764 994197090 157320758 243930360 847948484 993422963 423022376 617461925 730829347 829217427 655903166 733712487 877757034 891685681 351455160 380001409 411282715 557196284 646256417 923564613 493500817 756263700 408397258 750974649 818497199 994908738 77344477 286674649 635053723 841969351 274102934 433771436 103564253 796489387 627500970 700670942 296657385 358917875 236867681 917237537 530922229 862915461 168620804 709080207 88847753 283162644 983163916 998842875 825500694 843774385 832588490 839086824 588241331 883189280 305749901 391900764 594378876 720254147 457920581 654862306 120519359 598965617 704063718 990230103 87488756 447716403 977016852 991552823 940417853 943427031 652700338 939808241 677863247 956230206 594053374 882320032 884677193 959200413 27642431 327519208 163411999 424454877 898447331 962388737 479851222 953941530 411801943 589826352 476041986 656485092 758057699 940593132 9046658 451790213 147821539 368535571 720145699 926641164 501718794 886227664 857115768 879121821 853077835 963194122 229944666 307459562 905827962 957116160 222437225 753375284 639837706 931582137 626280325 859724242 471924691 813125539 898930759 905825706 857359333 938049523 367538597 499472701 850604553 888297793 96714342 323963739 525076032 746281632 218336392 416966128 741966680 785923499 114287192 372030068 875475439 876122273 791906086 894321845 576542997 989230866 386809309 914172577 505243168 595502544 981604583 997537939 603262834 984136286 409157281 586665922 103573615 758988721 140080704 673678466 578180660 930449060 907613721 968156130 393841018 875801457 777467969 872872831 86348614 484487511 469950125 782621633 636408723 861371953 180991293 470220346 3454934 86111483 212028076 345924995 206741870 964196848 573823109 606155776 304897444 343732154 980722912 981033383 819341239 955028368 348544914 476775508 885824406 897325825 925755221 969344929 805713330 920750450 103581057 106439752 168776857 826348170 363713437 940734711 241998025 339449250 772215240 963280799 541118548 930977221 175283865 867330774 688034582 875456466 227582426 411919045 386651017 912320951 607117110 753680500 725632683 767749667 222769177 599282343 935932297 943073423 597497012 836996216 496134685 982575940 251047127 807554058 140275824 550606664 845379259 938223467 737067942 871252098 94595639 326707292 170856817 646637830 408351588 634820687 305162583 675200337 290268947 999593681 94917747 572616648 546326662 843872178 908631502 967000897 465460934 710674847 664927311 885532745 715181924 972948277 453015591 470665021 517347331 812988281 460609951 860650164 970083995 971629034 276002137 373535648 869817245 906736812 154580356 538927694 748439116 861502269 307147900 897822779 597324296 904395195 475264163 792558668 831009959 904140088 196459846 420996724 19334289 405768623 114842525 327985470 751241652 773667423 921811012 924568295 289869557 380136744 21711040 486368190 338881511 899062680 335778108 691176068 890845180 951922329 859977868 921914899 435861027 664134228 269328952 519639976 138574133 149561931 632762537 846878252 499827689 520299670 881352838 891775277 2160532 987613935 855063374 894188741 116189814 196815721 754621888 777912688 736865813 841597340 167497227 778097258 171988434 378032077 563804294 640155829 222307722 251973483 456557787 524242862 480020308 639439171 250905405 268772461 285919272 857362785 884106173 958314102 359409869 747960940 591818738 767970785 647558192 870268567 319994139 791011641 456452871 608579694 436677320 969963122 596469937 659784982 414797996 458445259 187684079 495531183 194832400 615719352 873182998 876231119 542628239 855339231 330939491 979918233 138703869 358534600 807801406 828074173 629542270 734330321 180762059 410258689 135046971 460448375 782280855 990083577 612057757 725115291 276058532 739871849 281676830 458932706 323764424 470534517 517319944 739646124 373174899 765534392 987039303 995634197 315721078 888024432 955967715 993834799 857916852 931433093 286014757 452154758 131452748 512766630 901172455 935485160 778497299 872412012 650543763 869088752 172383917 972215949 615431183 678275807 395751917 954812251 207711478 323122334 996487450 996557411 689231130 817977934 807938655 973552439 77490948 876810065 707683078 736611740 198916732 760063369 371605451 992042880 963760414 974238511 579557852 921880108 287918585 497066643 880526046 887472913 555397614 624895927 688512275 866936681 354872445 582873795 922246111 965477124 170033927 608136873 467765600 597694957 547456617 585714235 349767068 852792895 83004630 239002305 72444424 377291578 172562451 704649010 700256480 714173583 500930208 590025711 140347495 736327482 178005266 703706032 655467878 837040907 49658865 313432576 636827905 892409747 16233234 727466613 82953539 643548356 196181748 300959402 724247746 967282560 877289077 980333358 156033272 329682550 594059399 846819593 595023222 784859234 144903936 783885229 49983484 311279573 23025502 569098771 960852375 973240444 93056966 489916507 652894408 883844422 440718831 682745044 213579916 862424795 693620387 904358319 39118081 235772839 766462319 932067613 917553061 932682064 289968776 596485371 910601921 960158000 197444780 687465745 47033963 300139645 612787557 742704491 189241247 565933658 823251865 894341627 798006508 933203776 133767581 842662021 158912095 293377688 80675190 496598766 13940002 146602920 244744570 989669915 428337101 576246533 947735532 978661611 196845182 607532911 786708157 870868808 417987835 937185117 46837192 447007247 509367985 894933660 392047555 693740947 720777541 788183702 615155082 656106866 954010769 958809067 679017795 910707353 484359501 761455420 284993128 403655161 549157052 689856506 352828310 370390103 494217291 527787716 429795931 456898708 312653195 641270435 685047361 846881950 983619745 988843988 266753228 779788083 641347182 717516442 678397582 741122287 757308469 824603756 565799872 840728903 523600973 744300240 495136557 716465329 48655417 361022669 43126966 758606855 43780684 930137881 787915414 906537787 563344977 751734978 518119838 836176020 270209978 626595594 92621811 934497996 793963692 988365092 799506343 943777383 456469529 968088399 472387936 582698202 890819949 902388955 605200823 774884029 538885193 805979649 886512546 982064564 632941042 681512948 828832819 941338735 844874070 869719521 629208711 657727796 8456872 509778122 218852911 462923617 523036533 872934919 502911559 637715075 1612910 729915766 838981346 950062027 716259401 912359674 193103075 358446346 380612288 513637324 643122259 803270615 393819342 797321172 981316384 986062243 229416620 246727442 895347470 905249675 792638709 863197270 629733976 919212391 283015340 861362552 152506437 289550871 347751320 944508645 811900215 839071062 203478614 607064460 167249427 543568719 597117844 777376736 894239852 961990537 818706752 929219077 179545784 192354270 711835657 906632872 577717068 633418336 378654603 833190176 12664164 162090036 643790899 805123195 585253456 923278450 266970679 676560188 289650224 520678149 212687308 980025016 718779959 882100319 436154319 812137410 331021899 921488943 411475215 789690633 169216634 178364601 412416577 669367681 813511923 975820054 833754106 905070745 883076439 932844786 452419822 716493263 630194111 633781153 565355589 783595372 284911660 474164682 686345999 978934163 894803663 989206152 509733984 778481391 775804445 825612011 778574932 909969294 833706595 974457154 322869301 931141692 77166729 878983065 460102703 799044572 839540501 960278558 987157134 991676386 16510001 771847229 771696743 894602581 58845157 249435791 361395758 537285564 843490901 906120123 993962936 998406277 215575823 532130674 721749104 975095165 627784089 827685072 422931403 489527890 689610175 847507384 594464063 918786625 753583847 878572668 342618155 939240685 278323939 514093170 808827168 973150689 308444372 639840074 717439380 989193215 84182104 766161956 869290319 962514525 602810164 722213872 11033737 675815324 8104157 352927120 759213380 802241485 519272715 641337418 830126056 989668349 566493166 580702944 176294004 881666528 368823035 962016356 857621295 966255757 614873299 615040837 175871087 871973197 911566944 944092179 997972749 999822225 828903694 886608282 712989160 900379330 363286344 433403837 141469921 197038919 643884721 973217854 862237150 940114140 605225266 822512108 804754730 965777662 740883325 981748457 582479381 654458691 115509298 934804922 972724526 998413632 410389210 821983198 799772996 947556498 73479177 244163051 488604636 821521212 668858957 863960874 444114845 625708065 543607361 564838132 722259301 791334128 296785889 715555379 976645832 998858642 247913912 940532751 470454620 979315622 13058113 463361916 239854588 620210883 228643276 396040670 532754067 626668896 327225922 960584387 112477591 361901618 755579467 770243289 619473293 707531265 442197642 970004255 13036266 95181985 303473942 919149977 774673152 903716529 471350061 712869064 151838206 368769585 657862010 839938955 442068210 714398253 485476912 486202821 564577698 873782675 388723189 598569517 642682506 988813591 591897973 879100087 273433584 679568204 528594424 671680445 762948725 938540911 167609908 757174797 98110412 138714233 173456797 984328630 741032880 987787804 852941251 883429808 823720939 989590949 814363617 881165251 201133380 377742835 299999178 416024508 261007320 855930036 43501701 322162086 189494473 884433874 257879508 346135186 355232330 390649251 144590544 193040898 334638512 954309665 788387987 981478930 564590563 975556893 442931611 548571333 46393902 383910007 596779979 930335100 929959375 992018036 118072460 635162783 835242627 983666424 467304232 836785280 500733029 639182380 146925374 325649532 322549463 519656359 443131974 517255338 555800411 595413162 162335653 699909446 561130034 837738220 709332653 994533400 754998652 800158595 609430681 646532605 237704258 473100737 703327985 759571830 272169520 904233496 940124011 971881756 94560954 160853066 949036678 986567768 763784928 803090478 53563823 727743282 220190840 994682725 157632329 564168612 957428480 979622024 9439683 629625686 39774137 670410354 303492263 408659690 839897755 916133367 151206205 674493512 145292010 524845733 418168771 736372930 24650482 589780829 259194568 286741420 830961770 876749684 118959281 431437414 149078561 606776008 284879832 679944374 853603262 864090543 27286598 797522015 466852219 691744429 246360270 729472716 303111154 677318321 641111553 751029611 789077720 856690028 643133032 858362273 752866786 951789452 221376104 975514605 737316358 933511914 445331111 614109569 248841524 343918328 296503408 765934230 784845719 844135929 979973722 984594513 930487892 955853517 639063679 946474887 220804436 831096013 713499568 934516638 925644 357863056 70413544 813086697 86390973 115326954 246588474 844430998 249630669 566854476 765355618 902545007 765535582 794454731 201623493 266087864 374324548 502520397 465507991 908813646 703733571 759058748 279138922 741682540 641019600 887902807 232417559 324929116 596661772 990896753 608224538 778667968 789449998 911058673 330815799 554090883 723187010 936358878 721397977 911566892 827253156 867125086 502829285 929234267 985904711 989923614 260715416 524450167 63377091 505756980 391153236 615340958 515785533 789541818 940006687 949444109 780788812 958019614 951835659 992193842 298370975 670423587 470046522 674673054 105670717 368817942 105765554 792959952 480877501 747210514 98740877 296829414 211704993 761242540 695118075 885109972 386663271 908368694 910671761 947113828 817455655 883798662 986753726 993095122 591110870 988580449 594342187 836208304 496167666 919222158 707197720 942413233 402601286 586616839 494414711 676589621 260423790 979100867 113147165 754912875 481272631 544693719 232962901 311062812 472981037 879915136 722405188 913233619 762129515 837012551 875606989 971885433 886321991 962443051 304193204 701156471 556999942 848301799 68412718 868389160 292852606 851314368 731164946 929570770 795110186 935880583 957886909 975924853 668310853 852953060 171178129 512739568 393626696 490049363 934226534 970537272 633139927 996337081 977698217 997365398 155156767 174330022 208337432 732339428 937900883 978418406 319486957 947918593 501012885 614454035 544509074 898962649 499552045 937671020 626506985 924336679 332623722 416825879 871840340 980031172 204231960 917112450 440330535 864065551 533291179 600019777 368696323 541135801 191442095 415526070 262797548 810146133 212373526 375625122 234097684 907224350 360654055 712644935 116498646 862772045 362051757 589541213 909820557 946424140 690639512 894730004 653438767 683139338 405274958 986072614 624418236 688663347 421682980 929622518 528766623 698610204 673269984 800603819 906292428 953121978 138462568 319930071 703655370 850214297 221010971 974783572 610570287 901325078 859643442 871414473 492960849 735326674 105213910 448833451 162143129 465876336 78847697 609865482 328908457 873320731 965361674 974661229 499167438 621667636 510070390 844860097 673719588 754000129 545969466 682346958 142736500 316611392 504642223 544830234 892380548 972796277 398466024 414941099 357817680 369082890 84323074 312205096 470578993 820494810 511310655 774940098 69857325 421343986 934146790 953138538 508538292 778835074 288849665 578602552 851545234 935278950 656361405 842752192 571944884 787549919 138269173 556902708 666447933 992876338 203759092 297137059 762291755 920663701 56099659 142488683 316237629 514817734 491216268 531480920 657130450 810795592 566526968 681733641 696736844 765474690 183415204 295727860 145942084 777961283 574635554 902570797 874526002 966195048 870479799 989420167 386021683 471053590 49322505 169263038 821115661 916330234 969440788 989639624 445769028 928604171 837503166 849658065 350859681 911463396 463780191 961795552 396840260 898245397 602731356 656615748 19571194 713781586 488771349 563473573 324836490 999917710 320727485 697556563 670462180 714141744 506063490 725968833 341652700 857942415 426689269 916223648 873585293 954143938 492375530 809942283 137755120 247985416 175587981 394870669 388810400 961898787 816590921 998205321 485912665 960425262 221601207 548563563 769053895 826076531 3204422 160861754 150287014 303574054 474761791 852496358 423705777 538837975 241756046 897561262 490250933 910933989 905015143 974946422 378470257 765803125 685232982 694451344 475369265 974309980 851832953 939670347 625687524 931690722 221681292 414407423 857724870 913460614 965520364 983070307 293558178 878799026 490649686 843557249 730983513 822118490 623202768 667244586 22482209 965505469 848702785 968136926 949242228 995200297 186247771 991481097 127827350 977962708 596700195 980235657 575747590 679638127 875064114 951382905 70201705 533993068 194950602 254682497 679089373 930180715 742624804 952114650 294237977 519429190 925577796 964237431 546864869 962896793 277341437 649815026 470773418 981681546 946396869 953462174 901745156 942860576 395816532 946482837 587201378 607964280 591998992 612365883 274780606 339080465 40084217 233195720 133042393 297162535 531847522 988755158 104655518 178725657 840107680 942573316 653613790 844602654 441389126 792445494 164662588 248101426 5632763 468431546 812679186 884137332 990678418 992096346 210917043 994062448 570047308 938004687 569091985 878188640 452888199 569547569 116325859 211755396 125763535 843048975 51897678 777978330 38016254 944310611 610761050 641065936 376332823 388998490 963252478 978210547 168231581 182653904 512547676 889942172 82634178 618457137 922625985 924608388 488771484 769986911 624903344 825302976 816508154 848545618 133994207 918907121 667720350 869207665 879894182 988086799 974510342 994925088 590784253 879858312 158246978 324835216 887307134 978472133 760890090 852438648 601884700 671535520 993064283 998806310 275541846 879285955 325680592 796243273 241682166 925982121 364537852 595748941 192067527 214212853 850577215 863944301 619050169 916526580 223634858 338884800 793729158 904911254 265347927 880791292 27092148 453880298 867124320 994276921 187824160 890324557 733583343 771253786 836048521 918754230 11600565 544329077 885996912 904461338 120080094 358854789 584683315 680818098 668162078 764885417 849618764 993454308 251038517 584603951 140194823 410758526 154328843 826147343 778320098 809497148 470911206 818683060 943051381 960107046 168446841 384854672 644442328 832941970 588203283 896154346 24152177 97939340 59996772 825543947 228158232 894157375 898267628 946874086 990148230 995422620 40329869 283232845 617975725 768938084 697730260 898103509 999063077 999537082 901760564 941118914 49915719 536725019 135335732 782355075 658817582 910841843 679875456 959918716 638911740 992416397 227439882 775020420 827055605 840552604 41522438 946111094 296786301 916915543 911146543 914029559 535587132 684030955 545213670 872473620 962248186 981183241 204252581 461525059 699640227 900592922 657087038 899154476 131085613 818670338 320724080 741477261 448394546 813739044 733324840 887608911 834794174 885176217 592405407 903340499 393380650 796202879 87549773 874845878 615583648 994728327 569970732 626449992 675974250 846522555 224368511 501370896 963213849 973188107 337999810 677212196 313193555 991103890 6035565 556868059 84390335 970435004 311335778 737387922 459081898 766171526 464582810 596552332 810428490 999141447 801674955 815937218 831570427 892037582 73347939 694060292 443990058 744157403 76626702 785160783 570650089 955792964 534003970 883573242 467199668 632196510 865013262 932828842 341220979 736437132 247903872 449023591 596546232 757182535 528397626 730592979 504130929 735658621 832697434 993509607 712941138 973753112 453693628 813329261 607219239 964943375 313110741 863258882 282052907 437963126 844285748 855832678 700702867 957822447 811424811 818204056 931622304 990540284 520016284 877703746 154844055 476829882 433236017 857588024 339196747 987606431 562007415 993153719 483929371 692609138 543840385 636284156 854931322 895690005 809463665 924275660 567083083 937696546 807877068 846056475 255180110 886080497 122842120 724544082 939240998 974352334 251364577 988044396 293076688 615395732 416174120 883202512 635646489 908645341 458592122 792835908 243715135 496971930 167366387 960915388 924276553 972754561 770315463 880285328 414585876 992893033 411281513 557153485 498188206 662574122 806737522 917817912 91242124 708353809 867333698 996440473 756338799 904309401 554560583 752686713 412112039 852691712 971251571 984715948 171841488 501879010 273761315 586155802 26122766 957174961 911316096 956157749 905187452 918146839 666895509 866252314 757166907 921005533 331997866 927467358 508709078 850656219 329034374 931922365 679986443 826982565 87688697 782278713 396122965 922846994 688885552 851349179 93259985 118362282 801913367 864717251 758553317 947005917 914795037 933310207 840507373 971395822 407105792 635731577 783386910 828351634 454245602 678762494 825627469 988532428 472716348 552758071 502568377 789715213 179773704 651082412 329044987 844230325 857370094 929639208 673967582 813819815 992533115 999736340 877353178 957645520 725140683 921182165 987454226 990545942 964719856 968752181 51352868 288774824 643985654 807437382 262218326 736504517 928752023 942314460 967836356 982871246 410907831 534746647 679184681 952391498 373157448 885451153 380175245 666021285 820464917 983730972 211223151 814536049 283682951 731541160 979973220 994688345 950179183 962883920 503607043 998576810 315354927 349835993 720592632 906965597 101867256 297770056 854993179 982661769 645317273 789133127 518283381 809563344 943621651 983995742 845586459 913783107 344896350 890046796 33382851 914591596 344004954 795681253 859132511 979784394 77802179 481411898 886097832 958014433 217866044 470775100 632284537 633803376 988108406 990551983 808544324 831063658 492815513 588818168 271445344 903962356 943721770 953949942 605121852 921612390 720256971 877172444 187026429 193321053 454736146 508179634 78761053 327438974 622627033 706966858 644583663 692943067 666709686 741196083 51671322 611156393 806023612 840600778 107276066 390586859 619685946 777274137 680351769 809724859 249215320 374262140 136310394 285470318 378763452 789022839 493137938 961219863 471212790 995692399 533934426 819122073 530498882 914962927 262844310 690622976 590550754 685619450 173433762 640480685 728392219 917559339 391467407 925681711 62581311 566957338 429595451 812189796 689950697 972420967 839999574 842262355 39027813 873705935 917075477 960880122 577831401 836708918 308131302 395543039 589545103 946768308 69939909 722351701 718724974 883070765 190962322 840415918 467266696 736299540 234859393 968590448 235441191 464249238 934738896 978893711 716799983 948952933 918706983 991911109 597591224 819329970 781531936 829241559 198951730 760791365 729802383 911052935 531847821 955187813 398302328 966605345 735734657 846807422 258119340 430775051 750191929 925247559 734915783 872986186 946979446 987788542 309759318 488063469 616575871 847274500 820458225 900147469 473958969 477378524 143365058 184904913 126053103 469636200 457057902 704913437 629998644 777888276 238540739 947101531 934642515 969136311 347817194 815499350 596447504 789410272 587694113 861177918 9798799 926718330 883016591 997108675 261577251 799626125 996755270 998175048 650721771 941281424 109425143 119331845 520587675 650148780 109651188 477853130 441422058 837080679 748647909 775746661 935840083 978770716 460720953 891679962 781149615 786065253 900810137 981636822 35397725 808338202 200079730 453687230 388121766 627969913 924286766 980652208 232436985 509301888 785946953 849461240 585444555 978661558 439497936 885908575 249486963 648010904 78981495 634681164 410871431 597215034 602920252 677260723 624370376 771243568 678339682 992341554 32455149 521499177 654789364 946291454 832693265 989859154 667066630 951713986 596526964 914826142 511407007 815749125 698713066 999915694 853502953 892905285 73862580 992831285 845242900 976303514 209219476 496497179 318103148 817826783 500296893 914760960 106496395 765091878 769797080 944591456 619616091 745939483 867203634 903827686 295259719 415721485 581335567 694711663 181586138 790610321 685143371 998633498 204244651 984634882 891519108 932623812 771157609 972891200 468625405 502740696 122111617 779148587 896588494 977599666 959320414 988408377 602561697 820179907 862439349 951696700 606951785 923356206 605191700 788271629 545760082 697593168 416315210 806289498 841630678 985041142 749037533 950016722 886118710 990563813 250274132 610613821 848617083 877754517 445026592 601865425 925930461 965798517 621928898 896142306 578696322 633569866 46212398 898520644 379067816 972946372 716744328 718475059 481488517 535618234 382364525 398852672 592140755 651813827 899840031 933569008 944073169 953465109 618725617 932616957 430851582 995377472 609661810 726410510 569989865 833611635 510539986 733319052 931975074 961236351 991246198 995588623 939547272 943198532 450804328 807177584 880070606 956533837 121494404 174441267 390876487 401997381 334627822 754369888 898172788 963460191 768358794 805164505 341352415 916353088 866340196 909619791 178076371 840123294 774577240 830081269 454770030 971001354 246825284 371736055 3005201 7646332 376890583 507142504 266034133 885185101 584108261 987272763 993228811 998037670 921062434 990638637 202229099 713522257 740663080 950023540 83268081 794513096 81800855 292408542 315261862 919636886 852106648 877699266 951767659 986999839 240276956 816862332 581121191 582302555 312746836 735363990 346325873 712221425 748049901 866906865 214906597 530197952 442525587 913051965 374189962 901870276 658939454 899531962 546623396 844810287 55204317 409553662 48194928 394117280 423344175 529100362 240448790 638106988 26352729 409482208 351291101 771638459 497383537 688693249 414553753 793646569 317287780 471118094 183634274 652866794 746255475 891825369 936522433 960903392 356639300 924876379 356176391 696036558 491079172 880514114 429358525 495904757 463351343 612877309 365880341 901516752 542409140 823886953 802794775 906326827 362302064 542435732 906935095 957706112 387383706 431265609 627327684 825503068 375863860 463278145 33714863 742664025 732434821 797746646 525873938 544396701 341721793 906332899 208602926 610000822 628063984 899370494 85532975 666218812 660787148 871402504 44377119 127160802 709364738 776989905 254349426 374612798 890557152 939978418 935030686 992715844 425844149 499465659 457624515 674560570 948729210 979813680 185107884 980361391 793261213 843061905 183638345 811833486 445968182 895690036 154711142 625331635 973664112 983454928 744336954 793287494 194552879 612506603 820208333 883408022 477547538 824945656 708067519 847575300 927194573 959380453 140498901 844558334 32230536 743303836 74477045 211794541 130146741 624401381 82358758 832557252 677459 154357069 823564129 934379303 875261774 879127321 142490677 207923181 194271002 718640684 140919401 208016632 933102229 992819592 481887497 514089255 55163974 761255361 144762234 785334439 598668597 887339558 575289679 972516428 518926383 896370726 943595294 983619248 247463464 551829557 351938398 845741991 276013278 347815212 353263211 465644197 756518738 800183138 425213376 601522485 348233806 428307413 594621389 868997908 41988755 803316955 108486181 556660579 873502010 902781565 916609042 981824905 847703763 854398709 484575904 850614406 159404607 881599149 950829041 967977639 70411916 727953705 370915996 939296215 906636843 994362869 102050581 490189129 175259812 371475261 658912441 864966323 435268231 987810465 840721992 959891037 517122934 942200579 435583809 648971418 612787820 860384961 658567675 658668914 829194013 989887075 480054487 745749241 844165032 934597068 330546616 596503590 489328618 886246180 968503282 994798604 999849096 999926350 857221969 943632907 804984217 932270219 783440000 971970689 188118940 382754480 680149632 929724258 61692320 571211081 879558914 907026084 775556963 935971422 194068782 969149786 412373544 558240941 388265577 474031867 337273748 871240712 409413147 847544022 755727338 778401366 721367018 968975404 538634081 642302246 903068222 942991257 484367114 628156434 932756020 937442768 496048037 725261437 235962172 445358848 931938429 981019437 118810634 518033143 236787227 974095087 21299395 887831600 357260822 769825108 659478614 800411992 67043504 647910397 967443987 973408740 295325439 400953100 493602819 564636314 924625188 932217644 916941278 954785271 176909190 823795792 636814330 825761444 847813220 923273425 868870171 957741138 19353434 776071844 382437454 632902613 405489684 846759772 334010119 939268354 562224971 767075513 585872519 825104454 639237879 785707905 998633371 999847775 495369323 647933232 984581437 986521039 997973061 998166423 644448785 888342564 841802422 857005285 243485557 872550235 632920234 756581664 11279127 717754626 116556061 146178245 931331362 994493148 529939801 994187858 933280292 971740738 771936207 816260972 631291761 876519907 201992103 780679095 635604031 838752051 692241763 876686516 796311849 934644188 240921649 513094006 983446486 994723814 364954648 721151247 752022426 995500877 559679698 984069729 500159840 780842522 946114868 961006162 878535161 921498635 840903928 897968434 675556592 967677062 667241490 893613576 533786048 914478841 923105656 983033345 492592876 889831172 426167723 507499335 62931092 494209533 257088446 833386474 666174339 725937554 253991378 885580460 820764891 906541963 972034723 981896012 241812491 668676422 832047165 911154394 512836106 700716301 406746269 578326761 303437999 468533699 771427143 990362695 458996951 528441972 385336439 694722553 549548095 967473452 194598283 878536967 901307944 975668340 929660804 929970067 941371782 977396054 885572736 911875633 492821310 763187601 690019187 864649679 925260506 989196888 322695866 863951024 343212509 921536995 605532319 632242775 548836800 719849693 597905834 887157802 52469626 867962847 400267904 860808851 257546523 540604787 146337707 506977803 416105463 780707995 859756926 915992461 490542624 952414245 603999765 908515142 680632449 940307506 894857490 962841248 486748114 491217151 265157026 684250245 708941198 875326223 316689010 961950188 60215343 189575375 597736179 766489562 118667317 474252070 225657458 999793485 450197800 641764908 108949916 274617615 70157102 287773532 242351169 595460323 738921130 867806931 179025508 637697937 927867554 945067796 124692260 468996139 108021999 662785321 538583770 858190905 315336357 414080218 318373944 819763954 125421446 713640528 618754585 773081751 212197569 766709826 53253823 411997051 888728578 926478022 976353185 997211749 368445792 756331839 598369065 724713630 617155754 626253971 601362648 985282061 342041220 944162190 377055430 883144619 342920646 583155708 185768063 339196990 849800525 929787532 438594414 797420374 803375535 827757675 88045963 894179408 181098486 188811540 814098642 918641428 217790619 348845223 662026825 901187040 597304600 635434295 673058952 930151433 893258052 937756388 119436020 643630591 389335972 389868600 40774305 721476429 763432865 951571364 37528712 888124439 275556122 795637261 204620128 648255579 36392860 936545989 157772320 361381088 959264371 963269150 346300318 354973787 480763388 904020194 365835673 606747128 484788495 486379589 279477288 364635370 87939659 733004861 385448142 551311845 301761473 471656997 407323688 829279885 952211604 964616175 349420090 731659012 4177423 741336171 860842865 939854405 203385551 524937078 330630393 481630862 203785672 586837396 851949484 986214081 147569770 676186537 27188446 311826002 390659704 879492763 551602011 787220504 218273462 917097258 519258939 828624563 290838015 817433942 99648133 933560205 543048511 896589585 962357210 970043361 68236703 750840034 750088261 971662551 401107210 614447833 526248665 737452529 721339136 919845190 352076714 940770654 842058013 878226260 242748427 273304592 618902168 927197767 439641275 915212751 583078419 740210978 264950797 693662307 860777697 933426338 14273623 852704450 934066323 953307496 723363946 961444699 973550819 991141664 377611875 488814570 90452545 835415448 7646766 8683114 877444711 893129376 603293424 879086683 27151169 178472006 695616455 891201713 510111956 668289272 905046078 913490512 489188830 783507310 153242394 377353190 76890863 169903071 334676509 351365782 275861208 908001431 261676048 651731532 290389334 788097746 247035241 481447293 823556840 867599292 859321121 884639033 878954995 921103601 394567748 896936260 195621746 867060411 511302919 880848463 461308860 817883930 638232037 811403133 512711264 658194551 749896751 879098974 814982396 836882935 605539394 950352739 306752468 635224900 635615558 692037164 77939302 885046201 728328376 914083229 474237195 945184550 574662102 635268002 533588320 692293446 74001337 748235500 573944773 925670500 507876884 952631663 124753117 220838243 212295962 972714600 310722882 623819408 467507279 775594905 423103396 885284218 997151382 998563740 121927927 392543966 984509865 997186341 81445517 732324316 808676206 835327473 385173097 835489877 123944011 950910574 864866330 889929468 789456556 800505376 53705238 71933472 476487250 840849724 888901497 994868552 761689083 983357908 404947617 539575280 398134639 776707985 413362157 968182095 783105364 910379659 674748827 920569269 941201812 989532819 952708889 987431155 777693289 897865893 438209002 834688489 792269506 940906118 411935142 603854901 728044536 741876443 441140000 985030177 401400920 496553902 400066117 773247446 348100609 629302553 859650648 964749739 189410124 829674396 520342413 774629094 884771485 964572715 191871842 744483451 416244897 685205806 704199303 742380292 912704804 928809908 732323816 990678170 642256301 728631259 291220347 634543520 189660968 664903115 550942683 891893932 650877900 735509678 758583582 968689840 615729065 681626266 244126280 877667153 430747811 845242292 589081295 839242536 492265205 515672363 116576035 509844866 213545737 728191873 117967501 345226592 54979288 163940496 927073612 962829803 180101866 885952578 906436433 991574984 316246971 839445559 474719458 548781822 757519428 869906281 774330387 799869068 486130693 939978656 352826887 454417717 616023589 652629834 193433426 930101311 403021882 479788671 427441031 884249788 416974589 882813670 461033212 734112572 121142311 284730204 343437382 983220404 959540926 966307569 93595464 839769486 699967905 887108196 567693753 840467387 13222509 560730093 208860733 471369342 21658842 26942947 740403150 919760229 315423411 547373241 794953667 928498378 462070 158190151 824622312 990952059 788619851 843905465 413039921 853490608 930219972 943680133 818100058 848006182 243395210 744843442 473703397 477228689 608022572 948698520 650623991 947997734 342841873 771084630 743538853 843237112 970981716 999771287 720171794 991987516 688082984 847602268 955363563 968525875 844317954 907651997 174339174 644305859 515875257 969369440 547103475 790334982 352101017 520779794 855686592 918668381 65966040 496105437 283367317 661937171 60436301 840130659 650561618 690359630 545189768 866229909 852399747 894853254 788258216 934316351 746788009 908771496 342926098 853458047 709361212 933692486 172048539 974900994 900877001 998618156 71236734 666327591 938393360 989426007 430178843 952699749 275852099 560619355 643335564 860415978 460698149 987389884 818005024 944106988 10833400 242171269 805440770 827262806 887791755 919284003 66194843 573895984 362399033 444617789 510805402 834705027 341997197 746057055 229648758 916718039 132728853 800331446 584427164 781311360 897520037 992953779 376265959 825881850 740689210 919748172 571981017 645846551 122259979 412857155 321871750 519066648 973547035 999476914 880477200 901738053 17507723 854594028 756395983 980200723 681709999 807900213 562935814 639405877 600099076 975779350 331343914 630311386 312902405 334872548 878405027 899305499 850343773 937963926 529869552 837164724 785234145 849401550 76864193 641624524 758999611 804928954 609194858 786582868 943368371 986059608 774948281 884247216 244708226 637389465 776798009 965467427 22945526 32270453 432245265 807548358 577263165 662479997 776870794 811340803 154608033 539929464 842954655 845041700 317500888 329523080 442778888 674315080 800692273 801611880 90269541 452083169 704272306 892821735 623721164 660292739 599758395 948571976 625740709 699649883 558146104 716881837 495395532 942858574 174911583 700256035 596175361 894275658 277009583 951871095 73461062 353146820 179718999 512598141 877084620 978131780 946486779 987289437 84566130 266583204 295234547 546248278 649235089 862918460 818817972 830369891 600680337 961499548 865769993 923909936 936678181 961268394 467406249 714050452 266789188 858946306 584172793 806410507 651726378 929932073 609496427 711446432 22465636 32511603 565274619 905968178 951185108 996144825 474822746 834427254 441281140 955908646 888414427 925342138 749025688 754153313 980309648 993837612 119656005 740932321 861560203 928598427 910723115 921637703 729913475 797555267 756769892 822467748 510267977 614140743 278478805 334075907 704918197 950280044 542498103 669524082 357003616 359481529 436010209 553679517 579789356 853899708 879532781 988860210 679264961 988144208 735311979 783339927 795690045 919128423 93116892 148415835 657434655 866845393 821534235 968903479 150543827 371675276 821628091 947546258 427425837 429166132 8023274 842954604 310597809 656337648 180995542 205553941 965880132 988430202 670090293 908541270 44155568 427652395 821314552 966322335 604531428 747593121 461105861 689391497 268850342 443135717 277934814 578292994 641915446 916908530 241419814 754254782 290067888 916573834 665774120 994862303 928655054 954310373 392358753 663782426 489185915 923031770 429736449 936597793 215758070 734605093 827277709 878679939 589530873 660829180 917295368 926255730 789174108 992542040 862438720 867344845 193473146 263795947 563034738 833923675 701386827 749936718 269090922 504345951 809382380 960875498 644788724 709402111 85928937 95052613 576358757 812723709 241250986 564287168 966895222 977686120 723840995 997051063 540618629 639650353 700476381 750123106 721159123 729278475 723723179 778960072 793795309 962421776 191133041 646840721 314369371 321876026 6078988 796624346 385442104 416415370 610845130 865524587 18215138 154403370 834903643 979100802 57822408 153176113 2484679 625450614 522898872 834109628 905401833 984551192 245962133 775160961 352164303 393791958 917785027 982180063 643568483 986612216 777193173 814003879 620259829 813960863 880301204 886403154 743257906 929489493 833760916 941307527 504426178 768955371 862874415 987980400 666394026 893610902 52588777 475630685 957514942 970854124 733815158 901099872 146262316 937481889 647207156 706957338 687253671 896048026 975731739 996000500 931311336 986683520 169133577 571874875 876994186 939051670 326159513 714363328 810293594 866506443 840530070 846441497 478588467 521429224 65956029 97242177 373280898 546761697 153932764 339903387 596390425 703267527 87414091 434214456 790392677 846331175 655107282 712739859 515697360 598592810 17682503 227657684 806489269 829693653 304441817 308822894 664557340 687810757 780317771 909433386 509022726 611584243 78893614 108268718 260560556 867369907 913462617 999099312 283422073 578109233 170423784 931127039 590737727 958333713 756140407 996468893 558755460 827708295 666404171 715118224 93219197 948772619 217342217 243980056 507257774 953431916 563935360 916805678 90635122 299318022 867470907 964886323 956400144 976792674 940406185 981485307 477930330 763803304 304055971 739034284 681530567 796700405 466299386 755378062 564443221 833156371 249640515 253662641 438066558 660379413 926894843 938999267 103111911 361192330 223108949 357899312 965208585 997545733 473486947 524868909 593436134 770928218 590369859 670787296 922522720 947725458 676420490 926080720 854603278 945274093 824269998 967720125 786239617 828905273 130729201 977094167 232865681 344914259 901281032 955811553 408509665 551442844 859385867 978325401 828403921 918155105 964508074 997170932 973145209 975766859 322547092 457783520 275690135 458370647 497527812 974227751 198084254 813175607 755026908 830114769 404771656 963485618 975014277 980348114 71327219 631732252 374528428 573153319 854648583 907256042 776088333 783203740 518470978 544432703 419844205 735331276 163750812 639600706 176129813 516348952 542730362 882944854 450107574 451877840 845049688 991675633 680135049 885283259 896167736 988494896 56168821 378551642 921177423 982344926 65744594 706144617 173976746 991375082 200763346 847831541 604321469 606715236 243137830 926393462 713560664 974171298 740544375 849964612 525349631 712590998 147228322 185275486 806954979 968495215 855148632 906598274 50297757 615837696 914193928 943998741 898407601 983878743 337827732 647290732 770064095 983879408 23117593 679961945 955286187 965611989 998483658 999069970 405021991 471915885 402813942 924090861 383808644 436186195 69703861 882516864 446048830 864814411 328982218 852150166 988191362 994797955 397636025 691476363 846725689 857563199 35803233 946977276 880601402 988518425 951861174 997397981 544863171 961378952 815642870 859112970 641049945 798323385 456343281 821227567 188363454 711343099 590857517 681056209 632643234 970317852 188229885 654419093 339390643 899152846 394099521 785156825 275953960 308447006 891257200 992811930 271516790 408253682 484557181 695534623 355909391 490728748 304452283 720057974 3094944 957259961 156542445 516688902 206481512 350715747 403052347 542651484 39739050 41389320 477015680 817427689 813772366 847267510 492531190 908483391 996296413 999774591 165397877 328597385 367326344 545662556 751059739 755632949 435196590 872170221 472942664 474761748 677481384 991401337 692110351 715298687 648854059 933129566 938012256 983296103 244864706 928989290 530460861 720188241 104277964 160956055 264806032 505499212 654345017 710205088 702008633 704424739 350594984 595751154 108697612 442180454 129286724 349279186 352411689 732213705 813410029 894681865 283911654 827173389 59178730 851320981 505107661 792391632 510240674 968598146 263299343 360697942 895262450 953271863 569898258 888240702 541532515 670267732 729167915 937008198 318720868 802996763 909541820 920318019 514561370 896369887 724789844 987488454 950305906 998729236 662946883 831995115 221769172 663076117 413596710 800574386 435019450 472554399 546595093 635763396 797351483 921476348 364972586 387021697 438182687 705078198 804893723 863441354 336030382 413298413 820837148 835979850 308504479 438512864 153846419 887055093 926636754 947249545 14523486 152754488 300905723 859701790 370813971 427986398 233580940 832053872 105885377 349593955 986693116 989083163 851932304 854995879 786484324 818063673 624579071 792241637 993335322 998155518 943054041 965205769 780499763 944377506 57803455 623602794 728078897 907437250 195932441 723322378 191240688 283966560 699527980 834843122 69951051 612593726 830095553 911544310 420282888 477082052 822196369 946780912 778063137 928861056 668070261 993560722 72031288 486877252 706481895 740009869 975314772 982186753 512397268 593106315 805531528 812852195 46792924 995736121 147442197 545714854 440335440 474955687 568777681 894848865 292127751 651867259 78343121 984368005 331195850 911919168 197687203 491973215 398652106 737405505 206152844 544623622 272053522 404458115 446804592 976405603 498503315 645204073 744414823 951774847 273439393 717116135 206744645 550023994 72140905 417868245 965442407 971853980 699534330 738403019 431871366 662470276 754129388 999618597 353922157 959475034 940395771 941281765 743067385 991660929 231529711 481961314 321657975 985388880 263207113 299645216 83247991 106478235 669911456 988459618 278366529 980644035 112916594 260843087 165556529 243799235 295399063 390632174 794442565 807067772 347196241 808753574 860551742 931740149 895075601 997640120 900611082 949595425 55082754 292045627 56583481 233015331 90428671 212243109 829355319 927992326 567927476 773787779 756870246 841801573 10772199 914860342 657257668 695526187 163366775 349454216 831567854 832861348 380008247 822643687 293905402 600286807 247755817 454345902 287128437 701001475 461295967 898713646 797454439 931735009 660415351 828341782 444989396 620065574 253701010 314047551 334271003 808224614 329109708 733381710 87847500 748305968 204937921 525523967 905231139 977714675 843024248 987999866 945321138 945928909 191606676 754829709 344678644 410292573 218024613 599513563 973524040 981005616 596657685 851336244 483592330 609186690 772502898 965455158 364096820 650285203 149836039 293942275 368050783 539348856 936158353 942007428 336820174 937438336 825742671 940448803 481653259 810479074 119654080 672540043 946994766 957925099 654884743 772220591 725320836 902374001 115250116 776204250 866900067 887226897 553954390 929921510 764280839 982970592 818918079 933363207 475177739 581561273 315842273 360383585 627727360 791105301 906744393 914720540 539774120 760607929 55647828 414109731 767121958 912491726 537028133 627285324 542654904 636895607 923399185 987266428 141475940 648367843 21126922 145692828 250834961 412979214 848822668 876057063 251479391 617856222 826564648 926640458 977663903 999350067 996488662 999592215 289591505 692390410 867263973 940607485 517325118 843196340 635103279 775967871 512789276 908564477 259535579 717326810 888182401 923128006 411057997 932839382 75495809 231967383 331546370 570428042 425534584 662288114 351569513 654128419 580418253 729130930 970806589 983676627 605616513 921674728 848453466 977691493 370723356 862541871 562621943 809097293 693225971 738114093 794524337 845297486 846227505 858458252 283332604 432866840 114700855 781012837 613580082 686879896 268258170 429232001 551636114 936646930 856269765 878744276 781709901 995238379 493153771 647678206 338824245 749889879 323683004 636617067 260659110 898608115 327019705 669297778 660665897 819143201 186152241 596363455 788505200 919411599 557284681 806032958 124928234 412991710 378279506 635897003 12398308 203463096 766020931 824213559 910535624 972835553 360469024 592322325 450918523 931738513 338266530 825127248 312166088 578512644 937950024 968960114 681344538 986901931 11978386 246751104 340577797 771172001 161991069 187984353 577819137 932912851 147890247 450489523 801863934 844249492 7713566 882535439 428302416 464739593 984040633 991559005 976387115 980656464 604753271 758071834 387038755 898824137 202809213 493970566 812281577 896672688 100345360 900570479 927234071 999786321 91981689 268301818 110975592 869426354 120974785 650457571 993190940 998857782 429992870 825430705 701275138 705600371 583800238 781320349 698697126 827148787 251265033 452472258 690488470 862286102 446084751 768596565 928950106 931507852 209725544 813615247 271409585 544148474 12391324 790398292 428529529 458108352 659584230 787775555 773984346 801426354 739824224 864420854 429716577 486008232 210780848 347653869 28026342 305060888 372749638 687720110 986763794 995490249 101760520 268818001 969365314 981119875 674365631 824727679 358823528 494915375 67363338 901594884 993304648 996216081 212663349 967861264 615967887 742443564 843099590 961061916 435360932 650955919 185157594 246632572 73617341 978345814 435225492 925690126 328370329 588307582 297082445 471384576 667291583 707915928 990615639 991159335 876169825 932866259 493758033 745827964 218114288 579654509 336134862 509420103 993288365 994041888 954526132 989257939 265022493 709000928 417903343 759764873 30918412 135846035 541672864 613757530 649402848 817744110 12192179 528757625 26081707 384320792 595043148 670583188 716848432 959119013 929003599 954770353 957476261 968890006 974252187 976733168 692777806 772055094 553573980 568522989 688050526 995087753 652826005 700150013 651977971 896715187 942028981 957024565 684341551 862496449 904965859 987575648 718281608 817117951 569068277 735292958 640645688 935027894 831833002 858997502 35714282 651266596 224493281 617454446 68200549 455806430 539914434 767600996 469270136 475892368 432851259 451289779 650741236 824794780 837015104 913289696 810126816 997230862 123987247 322118568 568919284 814756934 782759587 836688716 174741312 890955638 541421062 673020526 944469109 971199284 288018735 885836833 497947771 822959454 691579280 779251272 274802274 982072537 209185341 726802944 157256957 431056137 676307328 706751334 276292855 326509842 229306576 402117991 853173769 891794400 247443222 353785137 99800975 685651049 982407769 987670196 811137715 974648948 699570549 715133879 136368183 461275809 69086978 548541660 874309146 988775574 954221347 983242694 310358488 480872492 592124028 730858824 88095223 342788019 394028987 638979109 272052466 473198116 861929008 970398186 123609192 404788987 252896772 525770453 974094459 998559183 781693991 820988652 977953782 991172518 464944721 804181769 164731906 502233475 791696583 906047685 961437906 965676004 171363451 860799628 387535364 414459772 178191154 825822626 818067091 955124236 806530523 925185756 817876214 972762166 686992912 815839550 179220779 987953987 344751408 659130725 511178597 710378508 224791356 789271446 974447103 976927335 69514643 648927422 576544300 996791242 558999927 916505128 695246094 706787499 49572743 151676980 455950145 508043554 504820373 916991022 960688337 963421319 570006306 920236350 217783280 769438508 746795067 990949298 657487640 712122153 770506940 867971116 301042498 532104642 232054717 361652456 790601964 936444491 534872117 611996062 794869484 994866102 5053782 320024858 804081977 869186613 875269046 876951889 717282502 788187714 927508233 991015546 242494299 533487771 894007446 898298040 354495317 600672691 838769144 998660286 490790897 696814145 321715947 801900902 930476564 983511722 970567453 981257283 378135983 916091093 490853342 642204758 756024599 862756226 762438940 972933327 458395620 963522873 415784449 593699354 570267188 985940020 867974318 870623023 657312736 965228608 891593660 979328425 137180862 860758197 767992711 927772675 79682657 463316048 117036335 867611001 812049307 840868726 345892629 571479655 480304502 989820684 567644656 750684801 544864358 700420383 152547964 276317649 986739710 988723641 98380512 928481403 455184098 676840057 12954608 731973910 793863179 850712694 555101896 893375755 484888267 570679591 165989400 932124107 627768566 700535755 549328857 682693898 66354013 283847010 440653600 611865931 120792998 536855738 555242775 956375425 345210659 462950477 685732088 942944317 991488676 993627560 515817271 521206611 887911997 922993121 406420591 878787350 794359579 847484548 685350769 704695520 43775925 229533738 669229803 799574439 453593101 718444720 609848307 692007702 807232189 855351550 9154932 880989098 40585774 788003564 435157110 994474666 784054193 819592569 490598236 961907609 546314199 991402906 858325631 871178400 419999511 650137029 445367124 692489370 755475092 905481189 915428035 954373507 313649724 949293120 574841736 987992868 537610601 672106923 891680411 945620189 885981763 985147571 48690685 771053923 856669912 924552835 2208636 551093306 657283016 959872513 786964690 802931087 37244100 183996657 374629127 514393913 584019913 856330440 250026883 546146711 900394399 915138484 389939710 801083938 853410788 968271506 74685193 601553956 917489471 952749050 950959793 964162333 389552020 953554808 76410728 865344699 275123145 463880811 768445127 986516984 957768743 983870276 638647177 901824198 583824812 736843448 803303172 902891059 94359294 596385115 419900110 483257767 348765801 799674517 667621622 884256556 329149000 526372313 106857282 584162568 532824978 613489851 879818397 987290335 253285718 537736484 370725011 894203749 97397543 266604781 437983864 678342756 308829442 953989248 844854326 856547107 308702051 515551836 22146559 281147791 819302709 984677715 582795109 877468972 244516086 432353360 35897775 124853491 261962809 772923480 889461123 988240429 590272886 823161438 191153455 657161912 824836740 956175291 704387619 769585175 473186466 773780832 715604227 944310602 897747316 949471316 116489257 393001330 206589062 594645794 872267588 944693712 990580301 995612380 229137082 256520416 657352417 796815597 316536724 430685714 198109929 719407301 19488491 600084751 782244513 821972773 335885768 691188970 134243859 434188327 168905419 892426316 584042995 761940368 702506269 869397988 426400402 819780625 191767348 698675459 486408153 871963355 787395401 874209472 771369166 948913267 794718757 843168476 840302202 871773433 398289424 876628051 374474346 754649828 135846529 174502133 439691600 671116929 139144195 571391611 918203984 966529887 847471993 868800824 378456830 675027895 801634805 852372246 51851017 89030409 990653547 991818945 172711997 738134850 444763653 620763808 913731502 970768061 235885009 658117351 535910894 862080809 167899279 183553349 757473112 825280219 38364596 297460906 326731560 686519656 2874905 202600519 443221942 898275495 457857597 590381795 196186864 304878733 951791322 994461268 351469012 387791574 499822163 591601140 831148763 896951830 484550751 914394419 868485298 890680847 729177516 785457141 914376053 964345430 490122344 802914033 586221278 963862619 962662801 997670045 263706159 400843862 778003296 995867270 203546530 612891496 259041611 943264111 784926967 986544972 670637073 828963011 266108930 341313400 791134327 853275973 428347615 766140961 459463783 973593977 255009999 694771969 571019250 979389598 523415745 525690830 541371139 623515607 906619282 965718429 632973981 687127899 646476431 798664497 834889721 942668542 602950587 897023656 149870561 434888716 7875037 513005968 768638440 965228210 731908732 933280476 491063244 718109375 687869177 894344989 133986405 985297634 520628193 752620036 208600785 306382681 601857471 826306953 323289563 901725854 851083393 866334817 21849504 98210350 679493331 996788721 182610160 913002253 130344545 925196001 539598141 952304452 996516994 998988595 60281756 170987354 770840731 888820346 661079888 964044979 810728227 882053141 170922580 578425181 442647838 545826192 904061396 940043949 546496557 996471714 445082213 458014350 173416059 635529830 956413483 996810339 325393589 527654273 559963788 590775073 300603264 891260685 591995605 606301766 97978972 934299756 85054785 904756536 32210627 444185415 575728060 754454562 603017825 799582515 196730341 610287005 654833504 703394054 875417431 891536563 93243936 861764312 3667588 373924976 709027030 774390288 708344673 723943459 705975500 707536810 275828138 703748873 320255474 406849310 138354591 354096440 507625874 535020279 914746595 933042909 339336108 890535407 571125591 908403764 918982775 920457359 382210222 727093670 556935417 640745856 508208614 971805192 293277156 575048569 697176529 743255965 707159276 895370573 712268248 839028467 178395377 650227996 128845752 276761223 399120186 972083475 465707444 573521401 349076542 966019309 903243108 999386601 179972364 428066627 702440763 968462211 502802556 996939045 581865977 703991770 363681645 671468212 932573373 977973367 495918234 572864454 822000736 897647185 260909870 981801537 381989562 978013887 375399911 590070316 783089714 988868101 809895646 955232342 306845565 814951467 691299646 746621045 837563085 953531034 998670530 999941124 284862849 971406053 380511317 948935388 306316680 505466596 842205763 982527903 129808588 259934227 75903581 946659096 633272228 795939938 457022772 921643705 91427120 264983176 507058128 779798188 410749071 426200666 738256048 974597424 688112482 999687663 259533505 580947224 433907222 610916903 314638803 315737495 649335790 748511099 505406920 949480176 983742172 991918711 177713822 422588451 150846359 253128834 723305737 802357861 341841614 571133352 420026637 729968537 494677029 910706111 45677368 700648000 696818111 910981984 329722936 344380157 976844471 977145888 533617526 745703212 359881637 516870727 759567001 890059261 97909664 489335866 990014635 999625464 129091315 879799672 106374326 599627191 659396327 697771633 772326203 927254460 635461505 861750222 787651841 874347543 277538132 707814468 423391655 589475837 124791682 359234228 274039472 888747358 97457318 438391912 718628281 878217694 960217737 997479980 214022079 762311087 757307069 957683703 719374621 833129883 24891728 727766260 86316543 630393243 986171058 999530845 441356956 985095927 597725367 710856957 358118995 742223129 202186925 361203641 254488039 473375615 517827064 928389961 906760356 971239247 296552357 924766204 788769168 959188581 703925370 943782846 438420654 608699959 615530859 999943223 949663512 984578112 979817980 998106916 690433604 834608308 44485053 596516912 279626282 499577503 257652215 791488502 247342121 311378752 781148703 874937306 280440680 444139107 115886105 402537841 413588532 683616201 842925737 898333917 298700775 512558797 923544021 952992130 335240015 427425150 261097779 425694632 285763380 501914062 235164828 888451435 928697042 961120403 492289816 603622155 41535314 430449382 839338734 945547334 287948969 864358891 741060555 756322294 725262657 842131709 93228315 491922307 52211320 657971475 180615968 872878031 671175002 887786262 764533875 958883203 566885757 880778914 280141609 876137509 492193208 686853258 296394822 524893759 382463145 445647381 998337542 999813205 272898231 812213389 168023666 429300977 656512907 905942972 645243803 723529518 166520503 787809595 79423897 557241222 611709629 890270186 218384209 865083311 777656864 842787952 766964414 994861808 443274164 497397728 913936869 916884562 783276130 931569954 521726893 538639306 316039890 334932194 952815322 977694428 385183236 879587589 823823797 918494824 327259022 837813932 900251245 920247033 381989273 411095901 446136258 960882612 276843721 436837947 609578961 819769163 123458101 709182810 614846892 774144071 427157046 638409914 440713839 912279566 812931726 900186626 463370005 656218098 916296529 950706810 423872242 490881274 721416191 740405695 239958605 426164314 177616508 285113612 94959108 210989831 121869091 311068995 674107716 691224968 159680901 248884428 524859892 896532261 275353464 377957980 193040078 712270339 917637690 972183988 290411181 380910363 852049503 924407455 810408633 840760211 865208457 984351001 517393153 740537827 637574034 778050041 741553275 998895884 998388407 998906636 564688871 990704798 697504049 828209856 609335632 898185712 420825851 881242862 387897259 954999675 275094681 897312401 978604917 985015478 775069394 869918484 534929073 750751569 852119794 949515688 807593397 920131065 653905597 711782797 560900843 701385874 927410839 969623889 733017712 769186983 329161867 476635952 960052989 965439459 499742608 660312725 108514240 312862360 710087294 791969215 528348316 917765454 973866252 998651093 717455089 984815623 779470565 793975927 862529023 979626968 266032301 763308147 121102458 324625381 461502956 534306824 117305577 296917815 589881949 604026602 296255502 340477462 842549711 959098592 348961758 730641481 534417863 581417377 9297707 755567690 830519041 987737419 372544644 886301891 465482256 691355229 106756654 702301612 791864862 977779857 178586146 518816273 646472746 907650301 149489674 486278310 476022008 693450041 683885026 710746450 424212905 656088219 122920328 660670384 333789536 549675653 77899412 215647111 404509150 960310368 353800141 482619866 946383670 970248233 277883781 312038305 706104294 754614756 261271753 494984170 601743739 726282483 928280592 980427041 365402337 994372554 625388541 885257948 402847584 648276377 692654737 736929382 419974719 736185506 263452089 472839179 223718095 234537386 740061560 815242761 262905633 900069715 242907614 293820131 789066010 805595271 825464736 826263270 89146671 614751538 48707080 400104013 771959209 857625253 77160733 987384380 861866486 989129682 37584330 131041068 701191090 886255536 401246794 804887958 719943314 932066155 520134762 720383967 879621799 905792904 199810682 686381426 875542241 876520221 391470769 469021341 119548929 567432220 939284755 983954846 303340411 744085867 613084528 763697525 840065811 859747335 238262783 412589164 835439469 920631222 153303717 863205017 207250960 451271850 312066699 386749992 755565524 898931024 680217365 824927495 455261520 779259093 522025933 561305618 557733761 790526822 302069555 333150906 981318131 994556022 54799936 515692127 623925857 785491626 744727329 897417515 80625719 426867127 451731384 537114970 514782961 891670777 828511944 903869537 42399401 104547958 160183411 847915060 170645228 801015962 987939744 999107162 818206267 995580670 935660561 971609952 956104456 986737597 821272295 920682255 225077796 268316245 213414490 844350861 172717353 251172863 44087186 819634693 585557479 913821834 359721812 977247205 501467293 882094787 692596778 737392457 686514261 983948862 839899931 934107039 21131844 987622690 89154775 445110543 759039108 884820683 52900412 228791957 947901797 950437911 366920765 626108732 92767521 115081138 298195420 436124109 697461030 729203003 848091477 999257740 561278462 679074406 814893632 821813094 457271366 706686312 835772607 845642609 818547920 991869244 370233018 597268442 601733249 981993837 984177240 994724022 51886256 808794267 844905553 937604410 201651696 491958550 104707375 842129704 850283427 961709764 402682060 910412444 390842531 897568770 11300370 570301787 650560060 995101118 821175868 999646193 846165806 870664277 69044577 170838750 588981098 933706303 943683805 969352053 68506934 637554223 992494426 997709249 76756886 417973726 973897945 993079882 588204627 958162113 476840247 801056522 888609987 923452507 39320642 209338416 812865480 825776168 876536359 891960241 317599186 794330554 381669621 633496848 570245391 782938184 719720374 924516238 163624502 951230526 514356965 950295599 911292489 989346817 700456454 899979612 555190775 593622025 607410710 799400854 752838503 839539668 880599081 960825948 131662982 493861946 358420660 570500577 775794542 893276681 22106496 707143955 448468035 915941652 863884468 917152860 829291318 968860018 194074315 261646349 344373367 533815585 2180237 8180005 40579625 470102580 30277642 872916400 690595942 823072922 811944304 938482528 716362697 777838161 628838070 901203383 953305365 988258144 292509936 522501520 1558445 127656472 340303650 428925691 446248276 922939740 804790526 820948966 355727554 445668870 963473233 975192652 358116048 403870018 643247685 939159521 791453401 815273561 668169654 705918957 886123613 978403562 912833266 920412533 304735309 471744223 926077965 926121315 599223973 710171270 595736034 839933111 743129317 787540898 866883603 889858973 878006264 967759040 23575962 496862329 231217268 390895586 884496085 987881312 541955982 728295306 769557903 944205139 476948114 741916448 383706513 993815928 779797963 840902813 636866911 780135000 229907441 994064081 884853847 918138973 961371472 990024699 694521972 826553742 617483444 815857514 598080588 635175177 392373411 871007941 548429207 600242312 563956673 883248949 115900313 527849522 64697608 424304769 263483269 501660129 754751217 916434990 286409634 784128431 612510982 783865556 67998713 597395730 39110347 718428101 277851042 404726396 12246657 440557796 115791580 378170814 595034423 610640226 169380474 538619216 573644260 992464735 778195390 790433639 369408193 977799109 626806717 889083478 56127162 352824521 249134054 792743807 618640453 839871140 13225740 863450528 832333843 863165671 5910815 986889549 502411520 805521264 52993418 376723939 895717064 954038657 686527477 991798098 576248090 742312144 323336265 517091876 473066791 640253068 248787742 745026206 915879885 995570610 369996078 680441842 931069186 948941913 800556659 892590530 578946169 779149604 391643209 847921964 119421187 502479431 537668933 870128440 183348523 219857050 746936479 804511105 924360867 985951737 245100074 652960983 405927056 543452345 790725456 835558850 138091195 408555653 969632332 985800398 786469232 926349640 786163967 943820965 285492455 565197272 69778183 478882054 410468519 492255347 213940631 674575833 324560930 981068234 886691749 997066650 688000418 720126126 440376605 698094472 493437775 915042283 698827243 940827357 791498675 819134185 615262107 894471173 514910702 617738130 416039588 618013638 448929942 646428851 330847129 345832528 772032354 886915062 414482124 664088079 174267900 532534246 972983295 987688473 909932356 961733653 960753633 993254946 930748636 937532601 260885272 896869445 183196648 838837228 686194430 977265896 867486640 883298486 283865193 712591099 267561632 630817264 133863981 874656345 410071764 835194838 226760985 694574665 911192942 959391830 164986397 284776926 669081377 718827222 792568813 864565499 67374642 236004741 886359528 983763335 496151521 537964340 473849234 562017081 509601736 857357078 854602887 913809192 489010766 656160465 350813360 497913843 531716155 922851525 10513493 149220112 517852085 941246824 993940269 999396694 625055281 943579149 594128382 735931203 51656407 693211320 906695283 997142307 568428417 648262222 279846153 836904132 949917181 994333341 854294241 984332107 968541618 993464570 420047766 729599040 336829534 854449986 416415477 492082646 550457624 674725500 970723864 976586273 89870627 405657455 334954727 430450204 631764099 909082791 701703681 722834958 567267998 981266223 947842488 994859079 698953689 869774224 989534417 999532538 48833790 585040685 666991024 679021995 860251960 892237554 120784386 374529678 678642179 705647689 168097646 964731216 553839590 981966586 75705518 890683306 502370992 897961212 49321756 429683448 847498138 968589342 479071597 562947922 612710340 712148455 30973678 335480983 31709150 644544414 968527183 991995997 438620528 780646272 253582107 272351209 363502402 702117448 101091653 241528629 592778057 963778071 842742854 914578145 849717512 890672297 869806544 894182372 247586297 333066215 88994416 503535370 238876947 936243773 329766912 499819915 6842174 256387757 431391917 543662554 715371927 935030410 124566857 301631644 255494092 569300929 153545555 910179365 669571887 835049922 582981310 691299954 486720789 611308453 296721647 700771887 972293810 998971003 946357567 956108704 464264336 549028377 341461806 565311525 622507542 808353350 495777915 702986598 430545835 540307414 454367171 822086103 817898498 838868391 131087241 939844461 711483302 816266415 96663125 417276777 601429696 982605386 251159993 700372660 70484913 539616503 114976196 572494356 904988363 980908663 939775912 979173877 421447035 473493154 449466510 936499929 736677467 775619912 568404423 685981619 42082352 824542660 464006543 761521367 842538160 883946625 948154244 976456914 895092321 952052666 152920596 197062826 411572415 944530922 696460911 963306378 547946888 781636975 811821877 937109155 714789194 813507888 79699740 797407560 888341553 966255947 383899416 887318007 175161294 698018245 401539047 474981022 189958791 255350181 83135785 85382946 754189744 987856570 27605336 810471219 956428474 989853206 365835554 449682571 454694928 542741169 605958660 852299395 191807912 761219308 192181883 521572472 834394188 836547579 34829905 373787267 507832250 927450714 427004360 432315875 586479259 803492949 483810372 808156964 661840724 921871903 598383018 927258063 559632556 945149574 753191380 866034805 130478478 926371234 230482741 840413078 244241269 298483462 160082715 637053828 42651843 663639300 875505980 912298148 646799437 958511860 774509990 925071168 791404541 991253532 519937903 769390053 888307560 941430894 792329172 999204229 409199801 958246864 953589071 958147971 405458037 680586403 142288536 973135233 969541228 999574025 910652683 984894913 668806514 860436209 30417907 702235893 536125679 613820244 221274941 320263344 416579181 496888740 184136280 310774295 807971377 932235081 243886831 853850010 134881945 954515789 132020649 671412663 833540490 999622511 346836426 904065481 601746728 841020224 850923255 895468865 960341408 964096155 985708824 992887691 799966483 878454534 265453905 801818170 797460663 859547133 67397224 850022283 867433643 929369012 229876362 846068115 105019655 848187757 651316536 916155439 355189762 671496620 800362063 802707592 977332323 986820152 702955963 771123344 824566571 883342789 477696203 806612553 566792491 969553685 966439937 979205519 745419278 756584869 730472384 943967891 331694766 642939089 15019654 359383151 142723954 552154803 937132848 992422723 801631926 853351954 479227406 586750744 648783427 761966026 23932607 800581805 125179373 211703750 220149053 549846900 177356828 867747011 873188268 944644042 989247517 997026189 269801463 893972347 955889417 974814420 703991606 929391306 35143998 837308430 979236138 981221833 827336173 929271114 594429194 994671270 932712637 951089619 871250522 874595739 816501065 883030837 667030853 720889407 685635998 854858479 374903758 860598199 927279997 970225436 746382026 966648411 227488687 300610654 426843469 800747685 847760627 979647857 351594334 930728878 152127620 866988747 184049603 458231343 696753024 951075470 472287154 870910107 479876722 866586660 649029847 806817426 870371900 883259469 129882876 837047467 234599482 960917109 177074561 280744198 309910770 380247673 746254245 810723550 736829458 876182276 520673888 573533718 767265756 786564101 944122260 997148330 87557217 913294993 734394151 813512663 168123748 590905264 561035643 844759788 478875190 986780472 580963824 585553034 907970582 940158793 734896632 942309471 453736782 532304435 914910955 957913989 635124081 836553335 771881792 810639680 665786014 828263912 893132369 949427891 759639491 803650554 562034941 917345172 518275085 573802690 976724548 985643283 868864714 948332338 761386713 861779060 409489801 961748866 39920275 228392329 653838360 842316436 379442989 582134039 722138060 762624982 867107508 888392879 211768590 508359889 119128668 431890909 134489638 222322265 329289184 735395251 143345032 166646446 956372053 985246575 211538573 470130887 98665942 552175530 101909530 971737994 834137957 853422681 398433406 632864899 954977524 962227867 457912146 677491304 408595709 421878475 649817454 997703234 34176533 178893831 732195077 889070315 731638900 809800567 401675034 991147885 145725352 663463644 59639714 458680321 544682878 894586682 237726859 358343813 641718265 903739168 734162485 758937602 625240417 839640632 444364437 879038731 518286649 776089151 42357589 766543087 651965616 983696876 926844622 972688831 442490502 706259969 667732469 786282349 324933614 856887684 590939349 655202754 157258990 326249452 931188906 960922860 210048325 446075062 691820054 876708969 338549555 638090415 842246886 853133363 59497604 514123321 100872983 782765755 748573327 992908791 651492257 698353408 768793669 862626332 385192923 625041044 191670993 515537993 825597349 850086082 141093097 930715949 923393809 974636177 456366958 825262930 551365559 925987392 254521635 349944819 78419706 474396210 589367483 721916908 319355393 619675737 981830585 990065611 279773719 807790643 778672456 954987073 921095150 943837836 35901613 404532216 161637 469158924 648654317 896051150 857603285 879045364 742019321 837652810 724606979 882458982 759940208 925991092 806321520 933216428 358069657 410583449 594743865 893206657 420685320 830805398 976903832 980289612 754796606 975634102 104957646 176553182 101499209 768833822 41893399 611446989 174224617 303004319 11902214 955307472 341829925 508860070 608834034 899420880 616944709 714795437 461660335 871006378 181231322 221168570 567757285 692453061 72296145 99913149 50871019 797292082 501478982 523233635 503501486 555001748 83245269 199255060 71834158 314792382 827193674 846323179 412003952 445146812 42612337 290043757 242184035 889411632 177985403 541437589 629953739 658718621 109259024 371908545 486922213 796374050 367457454 863331719 741911309 877690247 671091773 867558298 394315113 441012812 112918623 980168528 549555621 686636174 68174416 790177223 249082736 936190066 767717338 927828274 347343880 586558310 172595012 716354808 786224760 856267173 862029098 881957394 315817019 682455427 845793942 848879615 153434631 242509317 521045519 884601668 426249278 632247700 413906192 553887367 435255753 444510860 931462714 948025276 732804717 756247410 255534142 577602144 513977303 865416478 316061404 917369182 880113562 934749191 831806699 974182226 87350663 826608018 493264518 633300464 134572990 688636958 148253108 507789535 874273686 954887125 234917033 514826245 765523106 905710497 514948585 726470396 886270293 910989296 2772011 702905014 496057991 596302408 292556775 784215524 339803062 464527700 132672869 700014743 27977339 701974265 449976722 462589597 771679560 773353850 964549500 975004186 733961613 754894397 551173203 565875775 530149717 766484645 71331949 244663099 704362763 760265381 549916875 883420831 817337415 962512630 901110033 919076869 750570490 974723917 458527403 824483073 459862944 535412847 803021342 847215394 113232877 752114183 292673547 752539414 208587803 415329814 384236763 821809264 36180448 624274943 974336483 997937435 204728038 654035776 77642836 156265243 837639522 867600634 975130039 975293759 301963406 660310117 176774061 573100720 814379201 860431561 879402073 884551460 574351953 997307106 507248400 863376878 772448379 822481905 398315274 920087966 617379734 763426709 533100770 742494317 438468517 508252329 71844555 254435986 217365666 759478585 948217367 962971664 188521851 561359491 459401021 974685822 690398029 803789136 488524296 579713919 669947949 944271266 325231848 366643468 624469371 727408638 964841935 987994224 995128998 998853268 427157691 986708086 559749328 890413286 648437859 725806458 280494205 963869073 34160428 588514545 858218097 970686560 200229752 224398556 716957057 992781014 238595557 603538329 679530641 935642104 176474672 968425979 492405151 690708228 213422661 979660459 698214398 876030025 519029288 857883446 450708059 962156240 325738783 915059183 593414120 786422142 440496099 681568580 286007132 845123418 987162152 997819643 711863037 904740743 135416579 611517300 145280414 337815806 420351724 675963015 231554032 232254265 377427989 554660770 177038852 742857762 990025359 991400664 245439378 857322502 2144176 256627242 520034166 541847766 965182670 996566043 477752111 729479144 397518000 613462858 115084542 115990589 232893064 277696774 237012964 279004518 665800836 991325722 590450470 843496725 356846602 984852999 470167602 707216995 321447455 560711587 765382031 856721912 74267532 958226008 831277914 832784483 583104223 751205826 918221150 992330470 120842124 543754819 519495374 879401498 931618477 997308643 913556007 987738264 237289140 563234442 466177996 775392558 6639894 448567495 330813813 530529304 559631063 973254646 59068361 107085046 893609267 997003950 266142404 800808094 901941256 995406921 691652186 914257117 36924803 921941928 949136046 971460769 845029701 881841207 170041330 741711627 263476736 910398183 518888044 852945548 122202425 695169103 265428441 420097605 858681796 966604947 685343070 866500111 378891651 665162980 792983572 854810213 622468479 998783719 737589982 765922707 939139235 946014493 708969071 828768305 93110859 199053603 563486549 847056387 49863412 646023950 389362710 742799485 497384760 800359084 577904451 866505236 80715905 579316193 589993417 892294577 797633327 992534354 40396489 578503102 780086669 990256032 494805179 829262420 425156664 933005532 872459225 909363573 481173502 776535204 302723672 439929959 918345074 941119522 579192412 858147451 667108168 951002376 611414519 954504467 168533130 658245765 502047453 918569271 507028597 724606780 434352292 865664094 714352091 885230814 96448161 920343513 832663193 945778023 348753853 922190012 596373438 711662771 538775264 656767845 450464046 882108547 96845061 603348036 529940591 811511445 819006900 970355639 445512027 833910981 473986385 929378465 848919828 919235844 924717403 983909641 464360284 464707916 913568378 929414031 857950870 964291919 376450013 527000297 146563277 341704662 455451204 558198380 816041297 919228535 594470987 998123188 538884495 984644185 457203581 881069875 112862827 369069794 395683796 892786136 716990222 868213026 880857597 942599188 64694814 405348438 935568146 986918170 281400619 299157300 113013831 679097199 358111706 607053743 377339506 544067963 266761795 984482985 322348674 857859532 649933465 730194621 841816085 897070153 932737758 982755641 424554677 547666765 498592015 863846466 716234705 834421020 796665899 887385911 636078448 751498846 186119504 241967292 827648439 991046017 62726693 612469095 604822224 863659323 365490157 508641363 409513352 866190837 535516089 784666813 353962437 910579978 135829445 684039658 154260696 269444080 210043275 794850829 119964789 121807502 639667818 995282232 405235719 410673351 305069694 707051293 569818921 733355564 922010922 947228900 340517517 381412404 32603466 138397208 915095164 967049478 450435616 692495947 793236368 822554653 562702891 795556869 71271764 155153324 405683522 531638432 459224004 523711067 362828310 836725489 774920617 965323697 289095077 400371371 166894977 942774732 653901279 988228082 251410603 344037514 873484257 939807823 908105555 992822682 840597474 944521924 903152038 964001387 873654389 904133738 271022774 825745492 899581575 966837029 909499633 925935310 88157300 760897680 600287171 779826867 357621444 483964669 682266725 825931642 661186470 780292623 793796352 827236626 758085541 902314379 867889778 942941260 80260759 577411178 881748565 995475265 767573693 822057488 990285251 999207553 829134098 987394001 611810857 624398248 484344072 671116946 922515918 998241363 994974598 995452426 319367762 925489494 925379631 983465212 693615661 911380027 455227158 623685377 333385694 927719927 246411179 991834008 449406640 647487751 167376257 929736522 715559986 803032054 626731073 844080914 632631101 850889881 698696373 887579738 616052189 960166608 154565911 449746761 573468738 969267480 922653435 933430983 379391189 716757379 483525428 770558583 842582768 976904525 905732727 960526301 654278676 788790308 907018375 964565634 458845076 856159959 240870884 550760290 939907790 959865598 421262707 749762612 869032474 876122666 273036822 874739110 39034068 748529527 856711094 935989173 247940205 572174644 282137833 881336770 712510190 891556506 784722871 844366041 576427038 810003470 195545556 516689273 403977546 518031778 848829110 939046969 960505687 989448210 768357590 987911771 187325066 303228649 42951759 740641558 123558277 689768838 558748910 771532594 289811256 737244120 452852370 934506789 382435777 403823749 215028349 769656414 795080666 889906931 651573059 683415019 298391831 710072345 773940021 889946317 529113766 685199695 896789307 956796501 188237741 657372717 122824518 872881876 328709307 492714944 482266392 993429938 136430682 730950246 688988677 970885509 990664745 996884377 827399368 843968023 724367800 956843790 156245002 689203766 154603327 540793469 391071115 666135108 807181561 942226874 198889211 695800333 827806765 877706488 166399598 190893104 896770818 899873796 868520241 872429309 149555177 841669263 757342805 769504992 259658754 288545122 997221591 998148514 818676566 964813222 261149781 732781728 4315276 491688914 780284735 931513289 722858327 777869173 6120234 596134947 544452030 875266446 132174330 493017543 945757551 950641853 974084479 998594911 153895472 180843010 82789830 858015741 554137365 903821113 878021150 882275313 345891802 569606905 145720721 899305062 10622139 309982375 466929218 829347478 907763602 979040448 376024577 555777583 751918476 847097748 440783682 834379423 4754582 269987333 55954905 449266083 347256317 693823955 846050670 955615688 768375195 917323162 667944292 767892920 475696997 578255171 616744235 713598930 718992842 957539945 81570240 456508586 816194326 964176002 866099656 990096945 757080709 839447601 35264117 153015078 997679831 999468511 630139210 691424082 64543522 877853631 524678265 733487595 267493688 594487313 981046947 994815640 563322168 894056316 625802745 630655112 752057825 963475309 14208882 840104715 490710889 663413574 425315125 870699717 868925349 947429500 993013105 993417495 445021827 664811024 651360330 734238059 64233873 848002378 14929306 582820104 208615873 387136726 88912214 685059752 962130605 974242098 477086791 716540698 825227743 883940853 719973488 847754124 954648904 969345078 756308831 942739180 111427159 984205388 336094696 516359982 753533225 791416463 775544988 819490671 467718907 687442916 440243256 890836070 507225455 700370726 111839669 936058010 761048351 919932793 923943966 942215468 598546650 942814790 336877619 382071480 490603235 756817983 638785955 948874606 778249101 916142721 805665320 922404471 133632459 504346149 411948503 881248485 366175716 561908226 610383548 626059214 179297036 287128161 339515150 496617305 115768877 199698642 180123372 216643311 114415513 361992498 324006413 951961004 604132634 670753024 162914381 177226621 790423698 809113111 564203592 741121648 791896821 937592232 663513208 960918827 887204017 889837050 379732061 908224974 143915173 178883658 948771035 964352885 247792354 757990449 97419340 384758306 232796920 296453684 784223823 972270490 701358672 934410196 681851519 960668529 59216551 679608223 439337182 836914834 263404608 628566270 738183446 786819144 934196393 949912427 192442572 775688428 935840455 971693643 847540563 908900357 396510425 781515303 970592246 989038152 990741123 997641567 576923995 629183303 613992675 635993137 996423942 997560334 983652847 999212912 983773843 996019690 788995582 948584206 746308910 980870699 996469896 998574238 322958147 531376272 379306549 885858481 283955013 452902490 291342292 720923216 429549420 481829663 580228889 708818521 292570402 500389761 679064929 798702666 392376123 742471547 607365209 722246002 423404723 745321985 669556152 841250151 841491949 873281564 932126408 944302078 654328214 970485453 335060409 758777174 169945511 381344106 925409278 966853410 538989821 545931306 515010707 714745868 17490791 684135725 571597044 672277615 749115904 908607658 504272894 963994237 146116515 898977722 414451348 606279472 803592956 942317339 816442236 992628050 250372840 966317951 310513288 479850917 738220261 857922224 759849571 946564125 929617200 939756389 464481785 563731614 294569565 619430921 120516674 333154914 674421562 980194262 140215194 199590034 914904043 950216805 641956056 779843119 980370098 991702989 341714907 901104186 780033457 887003792 538574687 783228077 932883331 949526208 28414905 901777052 807560447 955434488 477294184 621722496 507916308 701725572 152694065 989134265 811492059 856438026 821934709 832543698 97680031 643741712 544815802 973636109 246283260 649331182 113836648 362885800 438375324 747532911 699202902 817084666 833316805 999639361 227999550 588371857 654948302 668261639 1030730 190193386 30492246 683713554 689855233 689923256 83308920 826527788 747306649 952522547 309524344 433675532 813227294 966487430 550516466 655089921 857091188 960214228 748869768 938449940 860552553 992088379 24519224 460090000 982388137 991974312 569051075 862084605 516957222 899102260 344552276 836023405 660613111 763588556 935410164 938436416 773785981 973618653 457891148 761402424 407203879 810079857 510829524 973299385 24824416 196679816 179603831 447581067 1474106 812711785 76311775 172219611 1172429 892620085 834011754 975228814 571884558 796372115 342484381 874810444 375284010 750825184 89567640 376717815 700538781 950066683 613005829 792084891 104064455 877414462 402887241 408724415 564419902 928809743 495098389 797636871 152920163 390538394 807573114 952858376 883026346 898920055 776727571 945670347 228890440 614282881 548157928 584694729 51509681 861197257 932669725 990467821 460660163 468870362 498562210 832886463 586128849 881996176 223289674 751560276 430281670 891671235 597672627 983226831 311432109 977553106 125864342 562120408 687591954 735390550 475026584 624573488 304523018 751942357 930822091 969688821 972638883 986833398 734506373 849352793 955290537 963855750 295971781 741666467 767254095 775160619 264284315 974318205 136476283 663849598 693864009 923604776 813875146 931325354 709224851 884226430 591541157 687534140 318088367 929610374 335203788 567958349 415297699 844159741 906997211 966466105 185473875 680466998 101918835 481659679 895416616 941939697 10933472 373406163 169731188 815473600 20974391 373886201 239914337 277164562 554000914 812096088 981894607 989090930 328500444 496499603 956860096 984357945 964685318 996842816 434851953 749068118 429755842 801743786 26319874 33269467 640539713 796749852 852558169 946085726 619399620 896517050 279221442 498440449 299704999 591480104 156652816 464385698 568143076 977190437 846973307 934751945 491324327 694157833 872997985 945180779 854227144 971161521 317694034 959895194 986212496 999904117 668351509 712862631 162249171 508840841 608180167 613647101 788641089 868017096 410949601 892690324 844029130 849762668 650382267 871146167 491058049 813653402 613957616 769332547 955699936 978277077 195789664 544323359 184977630 736084327 69101114 269728547 668395843 804902489 50521401 834855118 38259453 127333830 991605194 997337190 5001777 834816187 623452654 903185189 892447290 961253142 301768406 417799497 116319555 645675427 30958456 795004039 101861255 419793503 777391861 975053890 597521771 601292123 325946033 400512197 56516987 211672510 338494080 521286939 339921403 507588748 923436163 942631589 844884625 951260344 395976322 726093255 257356076 292365406 34558938 688756837 464202046 577820006 770957870 777510734 41791985 86421554 677879536 759321166 782402458 861322230 590243948 640021185 425691608 886912718 308384252 666691820 320538285 820799491 709596364 733263539 813850476 973068062 541493381 949473534 116397088 470403251 429696292 595594592 191345116 630494058 188064978 480176691 152692777 642253240 491742489 949327835 709454134 935726455 382217645 712601132 26021939 292193307 536286144 979408972 445458120 513181801 870970837 998714643 840719711 995960718 726811254 810353880 182282649 190742141 323375550 389651839 30668671 180354147 36095805 412481321 27815649 186865364 261332210 475379903 485917597 951626634 923348884 936610961 748577372 768382446 380195678 748721145 106353991 847622559 928857171 945921417 671065169 722241793 396751978 806381866 957508529 998413074 463319940 953928441 551270309 986844776 264304386 545040150 345215165 555861937 351091041 979674953 304518505 456675946 168775244 340020415 613479904 710958606 336477793 933807670 802717612 976308437 274517592 403350201 152578198 504226740 699759669 842468815 296223400 937202850 382066512 417387400 193294226 545014299 433313281 895483034 407669890 774714651 299270899 783925076 228179762 352788149 740751527 753728590 889434689 981473340 4501132 221021646 320235195 351501847 269886356 965092204 424912780 916873136 345148090 592891062 378109828 685804529 499535746 926507099 346057247 380601623 416450162 928507733 736852943 897506247 813249728 902403629 943207751 952080326 612311358 633135863 664678371 895239239 797626690 825447007 357306968 803976825 101080256 973965566 373445318 510343066 51234893 105039371 898467374 969570662 723420909 889691785 667413973 737413680 505073180 970618480 968652635 970734234 952237186 997718322 922540374 939254959 407894819 563648214 238724527 470919677 250651703 991129543 286001689 677643717 741357351 790466677 474183237 800534078 509509234 716676155 174907622 551290032 495567144 529966239 502836564 612457153 319411166 902943303 979660967 982533039 444874482 766434957 784946199 828658976 123413035 569820762 453824313 786649669 740635560 812529259 451132440 605036688 148592867 645558638 96485101 706177662 90152121 783558920 563791065 825577859 402394591 542663047 349956927 582434517 787889839 855059626 550443963 636519971 620383776 994981741 452139449 641407363 288853132 399281284 843920473 908701814 413338555 512114378 898704739 899634121 728650921 810653988 904589548 943153224 256265551 346085081 446169493 912762426 583577897 729074699 955408896 994847993 620734434 793990370 223031412 863089141 98055239 173360203 633991619 825659905 792366003 793587679 121061305 388949070 40479836 531602803 888820521 911174281 507687446 900756848 974486766 981528936 461246378 584086061 989975400 999151829 988770029 998485361 580655689 821138159 91802081 394017638 294022392 963483211 10216292 930928165 211936569 853092387 786776681 935651080 809456686 819441506 271101778 483477975 584775498 801864425 158226495 712429745 359487345 755640612 774658955 854825634 930045431 944627718 384189830 633609208 135315424 263620765 210583508 911360840 575422308 813055805 97870651 152252272 882328758 975550504 718120112 752029334 886288595 942623266 553180478 604295415 298403164 640908215 37867120 982819905 131111710 580255021 619729081 799118540 662497564 721676804 619666317 715224656 757840316 849261664 546792467 790904542 885375323 974618263 869004825 881545052 456146126 502185270 456818217 686077296 958379994 969954792 257040432 562007554 682604571 830831199 692869623 702440926 581679408 760809639 813202631 993484414 694966446 748932597 361720292 627083161 335571206 962019335 636220251 696133496 723099214 882056750 387643237 776968828 174924061 951645136 187014986 274407275 367924052 792759931 933097307 960332546 127629743 707313059 850087156 971332453 193935984 384576152 389042469 999773319 201963579 702435480 787464871 850202487 311025236 512769994 440928399 555468534 140912083 693638895 774799376 785928153 60901127 313409641 903903895 967020443 518883226 561041424 31838811 363105614 411834599 972883439 81839126 279655928 328480167 936853097 721303095 989779740 125935608 983934389 47893584 364899128 34912182 799051402 351718927 437783819 179930467 747465651 75838850 932491694 539552464 685121101 369586579 908312630 498961817 981614209 968339905 981861607 247682247 807488110 894877741 929500282 703636124 726822638 921624748 980182565 708864769 820998111 702572973 926894491 174296496 530489908 964831016 976678494 212787037 823222516 721814230 750479270 925188175 978833651 674013671 982996181 537500349 695094851 681306134 749139359 678133420 928328738 203452428 771074732 369777679 406805416 690692801 853377931 928927311 947833504 973129493 980217663 838755508 899996650 799063279 807851565 680942652 877520726 677414469 748533153 468613859 592202342 756971862 809831529 180554703 638038332 326122193 330918208 880888482 942709124 141030537 548581910 569411888 615021765 205076440 242559820 807352922 943154222 151908553 508995888 51998488 662861855 845386448 979578084 339526074 566382043 650345897 801470217 328815887 676774631 947376308 964672197 5514252 878475488 410944114 650699441 584342585 835408402 533864696 886672146 113529514 920956741 785787125 831520355 572235228 680581451 244025558 855604850 221394214 320871094 515714409 566256416 442319220 639439895 448132092 685072531 981716774 995005238 581824239 753948916 544773704 850324467 266112588 655219132 539736184 751691540 390871688 482762963 167001244 770723373 733217226 795048577 416308185 494151015 800251126 963373682 396806406 769154480 424976758 924506645 465883890 829981005 978057322 989900810 280929713 625041169 32350494 802801856 692356914 862146742 459714006 678076276 984050616 999392090 884777061 950595684 680890654 901054749 839447075 895403206 297268764 376260012 361971117 535140856 156805034 807687379 481746485 786583217 118584501 863327664 966573797 993653646 946798352 986907484 895536376 901454655 750268587 944050362 231137423 326186617 664370996 783423102 460772895 991549788 540403816 572949708 674165597 920217350 774827225 790825826 462752666 555358646 838058026 917546067 441476592 781622776 784280940 806988283 263581755 492528322 485581522 973001185 244578426 980669953 669766004 782196439 30085384 565777623 128472443 371297581 115597677 433227345 159237048 896800479 422616619 984587086 822924811 887326011 115539960 658462760 729012652 910693384 319102243 391021425 211727424 363557803 482531254 925457395 173258562 610655289 287307345 695328262 323862481 957206004 698791210 740086850 9652252 781898078 447197360 633494200 940175979 998165902 84603936 369728376 670721819 729762798 293812489 320672937 222870571 433092497 663190831 943559230 993635137 994358061 2210221 813311622 420133153 730720513 184668018 385170155 785980725 894553353 225255926 302238392 990776839 998107786 933640378 962226681 849136338 906321837 627782510 802216555 369706648 469343723 349525603 621452197 562546720 879539666 24772919 764315845 798391708 979429163 276462143 708951059 27914082 635298144 43287624 950034991 58000736 702883083 283291623 541297295 931935337 996704311 745826670 888062221 558605239 666403383 758391675 901347087 872047476 985385255 117420905 339043639 162702801 657014650 900314788 986584982 663154216 938524157 832070207 884260556 205303197 464926246 770609111 852152091 726017556 851062401 236229331 770202441 892514546 915191699 626144667 628154425 611951878 689601284 425408306 522869410 125250841 329448996 595157199 803973345 19646610 772826332 901870132 988966243 755271018 788862721 628274164 867176481 587263826 614103152 933983612 982766251 768850306 866522764 737412570 772979880 788792175 789929345 862220857 900500493 78003895 95423247 64369041 491713968 178488895 246796742 302300338 461244272 522954769 602168964 244458165 565484562 856651687 865236041 297716802 812842429 951505970 990140019 475171158 550732285 972829548 993852951 917083683 990869048 87595302 182538869 456120436 510765908 532040749 538263834 862526221 938012438 242239064 655649092 910672548 932372147 330345831 570563611 260842009 350217245 846767670 862911574 862124544 942913440 245855509 516853744 658239710 983664095 54587423 403603326 444917009 522930827 954539731 961603759 302782974 479312743 678404192 897476392 123268481 781587428 697303227 900829551 115088467 337572961 781677102 866632218 989191411 995555154 335724961 750850635 544418740 923327891 357120116 843127855 506936227 781508895 974715604 996333948 363372129 601279891 754536616 769347919 789272412 946575627 722976084 918565311 404082552 640512356 236515898 349501325 717000428 788872947 186821613 668767490 76077620 872814649 560450284 633883484 705851019 793270910 12519934 411816426 20055677 475515772 707850939 928600027 37219245 899201789 20446100 418531975 849306051 931963308 405327664 468596365 554226480 649509963 567264323 778475218 794224329 820235665 437690297 850033889 257191123 540632979 99404820 210996513 385715791 426708817 538748530 758479725 315695922 377701047 656398939 688715038 98604561 419389045 300622535 841496136 46766873 519725754 971536621 990222397 656804709 788053632 748055996 829586164 784834586 891860835 774480165 988430127 507383651 922243215 556668470 669993589 583998437 837882276 108260266 393512865 573370972 914763023 550339094 623989397 439895764 962916386 304392964 887421570 612241949 691471036 505681883 823949504 347688505 553078669 571079780 596443531 159778631 790564223 492754305 831139563 942683027 972952137 93999182 715989595 537622500 588140605 180487796 558713678 896502679 944973458 726897945 923131812 502256310 810603042 322000788 990811202 544444449 748073967 699961176 860606426 375939545 597134752 40601670 52569744 799329784 941374849 712738140 830976022 585017387 896586226 501042727 693203342 837771635 993869581 350499997 939140002 734036787 848119048 753932433 886943268 333037473 370906531 985550324 996149666 10151670 973293789 396299757 669362084 274754361 765501574 630353327 858965392 510281775 882104731 666119803 863277225 274505666 324704447 967070569 989226248 143685446 789003339 646241411 980560922 894677962 978074073 298813014 485972845 416391400 724710145 365830692 762108830 451004196 925673161 887412608 951832272 685269056 867426512 532668788 757465123 901523930 999966645 802561455 993159888 11027402 807059393 584269481 959229439 867249584 871532540 286864038 769890721 539393836 682436490 704306917 748886094 221712280 338040949 17750814 348475078 39861465 764084407 917594401 964495625 101121320 120941928 537682260 805496004 304110072 516003198 813923214 989268470 746551522 967500890 628607873 721081444 442536445 555341912 999705006 999830243 551597743 692832967 762080281 996441619 275765864 915519549 741900375 744235073 201013665 911438744 828300056 850411441 344582890 402197362 767054619 913950889 55926514 703777154 617410269 618423562 170410734 201761800 801193845 977304976 143312879 213079110 379217505 751903517 234310006 798365168 827350359 920631929 468305378 633631787 216462320 870752956 542344171 818748774 507064704 876279576 28586007 637922166 964076775 988790181 380809527 742774748 608630311 819140927 529868265 622164957 663197813 990152875 162787280 712567837 48637156 108807104 421279276 795487034 864042906 917941559 425359623 630436438 759889034 824109170 306622771 344326470 22512110 45070619 57426752 975013383 537983301 813528573 486649223 687816353 341212588 956325012 538926913 569462746 953855738 970340181 681426865 947341464 403572672 511551083 461827222 633374810 753826455 801056744 227478151 832992623 745575069 789421415 464620580 524735305 17389394 845773531 248931296 424649938 442195048 719360724 832186876 979205258 241789592 604869945 998709882 999127089 860923601 909194749 331504379 531357881 653373828 754148339 555275873 713255633 160315887 957477099 798485940 955520229 478274796 962460465 663656214 893138506 444131277 599696669 903958261 938804625 397690312 892359534 248513628 747017630 649727690 734074078 598811690 647612303 916712581 989273957 887710113 907433819 934991151 947410380 411602264 818373686 436618674 959574971 101232297 174090473 305070045 674632538 597743647 850240144 699004977 717442855 760501310 816969493 244422318 380493233 768039901 939388595 328411534 503853402 169401207 302758122 767141636 822854477 759824050 975976081 316682564 873188879 485452771 747506263 959550494 996481706 795398770 820418987 326575778 657181736 296882059 499540264 426528473 600357536 856244696 868286201 856824194 936164509 497080904 600736856 7761793 280647413 79426845 981007938 962419648 991486422 371165441 448829077 194871383 668839612 844409491 863273503 853158129 872331663 437234802 533391602 516333621 712391096 388668142 709480314 884055641 983445520 953619471 957478644 768761612 879098032 120156389 125739046 312912949 783115937 275222759 563282951 467291533 895329263 507336690 973122914 444657766 963666435 16164712 983517869 430553350 888374627 475655343 881846957 699220258 862754350 937764406 952135965 686269332 700108430 217745853 911996958 816465172 832744442 561048501 861390353 767663929 997531172 785715016 923118345 527173120 769565466 469450718 748719059 543216472 718544491 833893899 837156829 176254774 746433951 607602670 677950562 881560172 894323522 533249878 702079939 316745101 325191333 157266442 282380776 430944059 537279369 83118776 280269057 926456822 983807135 703519501 748506760 606318224 641324101 273327406 608961253 67610494 972350572 803156688 940465962 196336035 378961249 339998613 967634574 676106971 744886964 821315334 864502652 677040227 764844500 701588914 944827430 329895762 650371020 881742752 935584553 579563412 630311381 951065485 985412355 991407243 999729943 619849135 868568481 589886150 952344158 795821110 911009670 505162452 581359384 507931975 801471684 26179847 537627326 916484131 956863247 340638268 920626756 114065509 968030826 735837521 855448080 192928956 571504014 512675842 771153006 205492583 895921857 265525710 866672216 267469319 386822622 587302770 933852798 621775188 712266264 101936326 696095496 561053307 887103689 54627437 203745251 815782326 868982843 457541369 963832238 31770425 325739512 866557064 973133763 984343131 996756489 142339683 980337310 833265820 858387115 522965019 956850109 292762206 428300756 840447812 914458730 966249401 992873084 627447824 800188191 784081850 898098221 737529710 901075608 424476139 468167146 287352953 368458559 329019950 988502349 21268390 860775682 453216066 495140107 68875648 253681999 966928751 986071220 779147378 941232219 418057654 456112029 286507034 744116306 853663220 882752530 267456165 554199169 625795270 946820013 75704279 864514445 134006075 869315451 254460911 441338473 653070163 706678374 76059101 763277296 463400817 637988038 29446007 59145485 522776589 894340458 185254539 460381140 184651770 973965627 102654281 962190740 757901686 915296025 173088004 670571428 927553046 962819283 509425775 535969236 327400441 457016634 858582138 907597003 840269382 953506497 369002881 931508502 399265860 871280106 933715357 970343930 513746106 586858020 843439446 970253303 793910685 812995860 693786060 746957898 714776819 889311423 951467094 988679543 900771773 957269162 194868796 237562706 399196281 624185844 470247779 602014329 762933447 796805652 370707454 826586853 6440564 625699210 608768191 848427323 438375720 847446360 432255833 752846177 5697138 735884421 982954641 997770011 115280045 303862510 798221349 891964680 363126409 772939174 987494985 994583265 911577885 946051044 884979095 916561937 103622700 115962437 336753485 696522511 268318640 574983931 815906225 821957040 106364595 112651509 650383616 677100538 659072782 981242667 149012334 880846969 996927378 998458461 423051572 493131056 552003950 678872924 21561779 896409236 588747426 909606050 680827781 834926473 395378101 911567685 237926598 920859432 745833524 950971333 771058466 864674437 602273141 924748920 417045037 592416695 212872526 275600734 925649470 969078233 317311597 971952677 421269032 846052547 215588977 472802450 48821996 603010097 724562838 956975480 732154620 760874550 593028326 617568998 366469340 840902687 551349837 695379891 303390424 696330297 73848221 927797759 281993395 570959048 643590499 759758018 665985160 755095639 373913676 641239572 860943707 903109307 290023320 432496874 954186361 995726963 697878169 957872400 151654991 596079880 446438267 793791404 350452594 766917027 449144963 759111456 102849103 183272297 704957861 893393624 940122721 994455288 215160116 898393451 304067380 536642943 454315900 611180449 65042201 620488859 438011490 647052079 375206217 921944611 796368398 965407922 635721398 836201317 646467 959749669 908394122 936858612 351426569 708943961 236655379 920103822 812252011 813434418 655798168 786064680 350881633 551066768 508227438 996276115 213734606 939422724 438810565 473593229 847162547 923355386 847000008 950523281 541020825 937842298 377425885 616324657 321020057 450014235 718287845 762399363 903515060 918216403 912350983 991157880 511110513 891740260 669723048 866220689 741440994 797011040 448887542 996907446 444725850 856978195 147149963 336861842 617028351 874090003 440226923 900461437 707151941 743686435 589904144 902983035 425320126 836949242 479230680 636550485 444447352 514442937 233333110 489875391 585927451 654534853 459494012 536340903 481513519 613932824 276407482 356376650 697996193 918775377 898750497 972770629 588288078 785495104 322285627 406945655 948949843 958189232 3056217 736487448 136254460 476722253 654840019 945638677 395759374 499578635 905950375 981258895 79139572 721477463 837214184 946209456 498344304 669184907 300915226 660969306 451117624 536561128 372843148 573236403 972762621 979621908 300509009 437544161 38313320 242484562 515252352 723905669 504779531 546815398 773288488 906897813 811611508 829173582 680768188 731974012 36871273 204873634 223824269 646576063 212577994 967135775 313095144 739296810 119733664 197012758 170494063 527369877 789562617 977897513 158832629 161200118 64933872 861581255 98345831 334752099 22629279 476166244 500488933 886679531 740784518 973875543 386355766 693759311 840072952 917826750 545302804 582837689 873945164 957931907 779704618 893030834 682137650 774068626 423443005 983739302 60251402 565452427 5358963 969280286 887982876 944654750 614433650 708875967 478426166 931094546 348683026 918355085 307356902 998974124 240421836 622987527 221856597 551649048 569142667 788925076 415253576 843818029 867137817 981501399 517424377 734303542 879435447 914241364 185297073 189357977 424616444 899193828 430559748 677968204 444657712 929276977 522391572 999022627 139288528 630621791 346879197 674640524 315881941 881542080 597256152 646418461 376218648 811578740 452270451 615310309 160574894 778880274 749824920 771846239 873352685 919342408 831298347 966828250 169982424 573501962 679871667 740730907 790708569 797082809 995488200 998191409 797593198 843023122 84435978 125959749 786593616 978842886 821636449 840950765 298576015 729983252 291188670 511453376 402472480 536568180 902985505 982969244 399216335 789594121 631293393 765675355 886295764 966914470 743613688 774324671 340293180 797772330 999252435 999306774 293135676 759597507 514841188 629886194 131822236 418840713 159022786 308663257 93611017 634514813 89477622 146994561 751116230 802776470 750752702 768330292 537228526 749263215 852052782 942686741 184374215 772852941 332999823 829555530 94510535 311586818 584625783 701111139 94286670 467365289 30242650 466187970 853221466 955693407 572182575 679166737 185340621 861843086 420985996 649305450 908570715 919916411 745868318 984705597 41403143 731050072 921846762 938798803 990137005 993667363 200239206 215620834 900316885 937349111 67311107 962684799 600632180 931990677 392283096 492147445 414725545 444645932 933457383 960991633 638448180 684445780 70373659 629311074 396102932 743369743 300072728 382441644 80558762 834071538 595894374 998690128 32105108 754615532 776091875 792467548 955422928 967067886 797026570 932353468 150210090 682153233 145026281 640483734 752974568 766409563 452474015 574865488 886607344 934413767 625760272 760075475 987190326 995841067 693558506 806709545 188703085 910071743 115068641 987358615 428721054 574260844 664109570 750077343 728330000 779617798 733921609 791370564 65509260 377254582 125624148 273573864 669740352 759114754 187918431 453991072 159429299 974031774 915860076 980681384 656229211 874983712 355468328 400412643 454153746 679480001 880011582 968223204 13435171 229337968 699283937 746584546 505796188 808259479 265412899 597203793 355631854 673704857 408804309 462639646 24476520 109750949 760667718 834651550 285295350 541706493 967774194 972020755 300633069 409408817 671140040 914118540 845969045 871938875 251174030 949594238 777724859 852586120 98661432 889806303 848090332 961062175 645521455 943018355 655398712 842352767 913054102 963478668 334993323 592884096 686373665 695754702 152588304 605375847 10578505 109968518 587094163 737943419 927755211 991334127 547233908 854874105 39182427 69632306 154482636 597161988 217004857 254513508 667975887 921216242 890235396 961608510 341524264 921170206 887382014 955030848 466988481 815247023 381692355 761772975 309055375 749807990 749663096 870806726 578028220 735347962 676168485 849945993 921630309 941624692 987610152 994900063 502863393 708640310 63244992 998027377 232532464 706765875 473460516 789199349 551955133 938721386 158598011 384428050 932503351 933533278 715951356 815224122 682616344 920050807 821392833 980191800 375118223 676924177 456829589 998209145 876308639 902563959 864183938 954718944 944130787 955735394 415406066 718323006 21179931 723926112 607493167 990088316 832669465 999983786 24629870 962473638 114522386 932843487 306294410 982943101 172846691 336702636 411000856 725693447 602583219 983304821 921211509 991047724 959585185 978142397 49536484 529934038 668590135 962087824 234866655 692493366 400807739 553001549 401309815 593574807 714778089 749522307 312141523 405456967 720042593 826989956 444067216 775071860 341174161 488200408 238944593 550296049 633177229 743755570 280626352 810103944 838443692 934345966 227460216 586366434 662760824 733982507 865535187 872854617 580498540 722742997 755821053 997662102 674288184 811815009 451871186 858632734 121235592 919518952 818897353 990481936 262464776 401166386 608233409 939000612 46679301 763181713 301637988 837272118 46641124 356192532 196577664 969588603 109605063 513015237 246381409 355401089 521520815 802535227 635004337 998898537 813141218 813600486 585915269 738653304 791046783 952602909 262794086 957995115 716803961 798431445 718515035 861418395 228684954 367490698 711659438 819535727 758264390 882265272 485977100 846411494 763131721 909692556 746268431 802108592 402269414 925265950 626741411 767351416 211219551 717456694 484820961 750348242 974729 979814912 227280466 728280750 467558687 568204730 94721203 498431639 385235189 583084971 484881352 837622272 336415212 728815814 918700387 952215512 947756037 989758011 176385259 840726844 97980203 505704124 967150026 978225983 99979961 585936275 594868085 786350381 615776323 834075425 87290704 509805804 407133746 906214376 768343599 947730090 647913976 769777361 186836798 868143684 486091369 934020166 809965261 845011514 1224093 843519933 565083350 887288061 986728223 988456200 382521517 798540890 269126794 805619797 130201032 184703132 14075889 37536507 500086200 530838021 41017317 64438546 747847787 863586642 251436802 881872987 495400468 632025049 3921264 956065451 118555007 320202233 918880470 991662956 369136597 806578003 622820007 712874489 962131857 985106236 413627574 659771620 402721381 442638514 950329646 982173783 437826671 898144527 676585695 922515880 268803481 545257888 820040589 893497983 900734799 923135513 683622475 800917951 184373913 458269754 177337676 334549564 874322930 893424280 845598670 998614242 876423844 985688286 958520656 961176599 160109877 705513432 436095360 867065610 303682531 364129780 8876093 550577736 38327500 247664613 166271512 304816378 748075133 827580064 182308493 967333598 921924974 984175869 271435911 728487623 602488548 800516342 275544011 774017196 924916052 957412792 878004915 945175158 486107773 663520744 550322966 837788728 606323070 719820318 57620597 302872200 524156806 633487499 703518576 919099797 334560834 893365472 428457607 511436089 589783441 917042072 782569235 940889663 391829136 943137419 52627085 762553747 552757375 969008405 15965620 553901299 410504357 844599649 436268882 576943533 589145176 943044025 887894810 971989095 996159610 999684485 960390637 966986811 290995647 725767554 66190910 703070019 392254689 591898909 804799760 818540753 591917232 615608645 392697181 847298525 100131260 248667941 537919347 567738761 375371502 918168291 686142423 865795290 6098279 187206119 999907641 999970914 29171495 97533912 488338461 689316585 429467776 877700485 525744533 911416229 8750555 437535352 838870491 906362098 275820150 995204830 471009282 594381480 516155581 967514061 483679446 873664208 890067131 900470838 618931211 780494021 438422639 996013631 166435563 269392584 103174462 412241440 428615229 574963828 24769727 844081854 763344932 833297333 632932718 856897046 493684003 564202823 917077288 921541359 22954521 816590803 741535254 886102635 115282744 699210548 728251166 906284116 274336575 492665201 970234466 992973649 389985125 562029685 415141233 643622728 650221717 840038373 130304902 228841086 258089487 729271548 942586976 961768305 126875558 801644325 682881696 932283543 74240585 989431755 703770639 940266817 379000660 780640103 938163109 982093502 70862853 967971875 800927899 839409587 832740553 857445479 215450065 461466112 578662753 963841246 397907115 987743146 338173698 800305497 340954854 535196384 496187655 514838172 490978853 709747791 784659216 954715852 678273154 752761836 811527628 814998668 63999108 353787774 915958834 973822831 15847222 466840703 457634679 843047050 474141277 795514555 278233812 465803231 701299644 856545000 372216416 946606319 291302678 578817252 110604548 855836717 125035639 246445540 163959596 306398452 898721879 926455242 469130402 914283548 345539824 508232033 854243445 922125549 126125018 191132828 722178190 766447465 535898203 540403545 653650956 905471028 145860074 726287623 400262226 600086996 964652060 975545122 804740116 806747146 213083422 702888520 816377739 923066347 701508958 791155436 839617360 891447544 383716014 879991822 748231151 789639344 291665699 914369454 330383204 727179487 263483402 413074727 544231890 748240024 813408990 900217834 9514640 417183950 441509069 730117562 640111440 796081657 37936697 905242122 771158543 868728087 917572707 935913618 380269892 989818524 399625702 471751362 608046152 816736999 962322977 988355921 58255549 738803197 671394554 936161622 54947339 633820485 648263568 757961686 964629027 981902260 274636009 732214966 73017638 827863724 35006124 846533710 371856756 497446196 548462716 995513857 520722025 607336700 389160887 950658446 214183655 412681630 169783567 632153938 172625151 840908791 243247180 677490673 677926840 973141758 795179557 859423784 114501998 398380375 66267958 302070713 259487452 577794166 141845349 321427965 972140019 997357862 404074790 589691391 787263344 788685467 1496353 12389730 821890744 854751007 618219410 906476582 446523598 497074573 374568492 543284654 522938613 570662166 852648574 970716781 554253763 586544715 29381585 892091799 901774087 912645693 471887615 755214854 370579042 868860831 29168367 636321938 952839116 981254634 179441847 996177321 540453399 773037640 547603720 783085898 715543765 915892392 1155146 761177698 383079749 913311962 798184749 978099859 100662601 705521760 343776336 630112383 818143802 947445163 750486268 858697414 502176657 882262111 1603912 352868621 446291285 523105148 139727370 401308436 882410207 946107574 331483812 414086270 532041720 891860941 734198773 755202309 854474081 959604299 920634959 941341338 561883568 771833590 792133535 853663914 371530488 472281613 207810627 767095315 937892292 960438569 155552693 733241144 67793245 302980318 839120202 845873761 424636251 636938661 491334165 687459029 791720303 840354163 678422667 745903694 627020005 873626228 17574805 671920807 765258418 814351216 939561784 950044080 143998479 817883154 984308054 987105272 104092652 244961245 900945192 969582052 116035955 435569688 730016442 826972398 921378936 964883982 139773258 604170543 818347 293094054 285953422 911823507 296329952 517803355 807568957 978607403 362942280 769992650 150615609 309197250 49414260 430750795 517421483 681881640 105787952 787860420 900965255 975271702 132951956 412929196 137323524 191175788 61718885 257844158 294992577 668065757 436226230 468166835 889818045 946694489 292988481 602818169 380696889 624433684 326911868 961238905 286761033 940266237 672490750 863343749 518226033 571185201 284031498 659270489 54480885 826358843 624160159 829311267 339370748 855802703 811514271 891789022 130611105 844494007 662013603 704892101 854815663 889019049 579384737 611226403 536666985 954129120 328555989 727616449 808451597 980871680 214520802 536134733 747978559 869713899 637335481 932665791 965234414 969696465 911336139 941025698 755154222 774953552 92765872 304317547 845073163 875250500 63797298 274330766 75289718 783215454 942412790 958631128 101735847 741120595 729331457 821826836 864638542 981559692 840919290 992022349 867151337 954648959 539478904 938661278 100099954 565302725 803552326 912604721 937755635 942430769 327834783 380175305 122311379 922610785 967431919 970136948 385486161 449834378 291855012 491981672 380725421 822551253 444032184 624732955 451490243 617553648 447113804 638476365 534388644 898747915 741752675 992671366 818340650 944156596 445314576 970853468 440386987 734881907 984757270 985716095 797104093 797819643 552720912 637764359 823581244 904559037 266136573 957436683 623809632 954899666 144741644 432031483 601495881 806562936 213836201 960557617 279717925 656868858 143991402 281872180 487034906 648992435 565764121 848970993 431416940 754879758 765381399 799475045 768093950 803885437 780480998 853054363 442595140 941113575 110886462 462420774 58588122 160653520 344011132 970287517 96385906 213764904 923014377 981399513 481859199 789717117 965697624 998440885 887684031 973206382 647111054 986481914 885101414 962439213 714215910 777943243 82224836 611840871 22684694 57272211 616119392 956142863 631354270 821087295 685914441 688109526 188995732 213391715 255994316 712497947 338872326 723870171 38689758 628059551 186494781 377031737 779490852 926407148 722384926 909681668 698578433 888270446 514431327 580477171 380991700 828085982 770755826 838196067 631307963 744458772 758708455 786391625 291664525 742309805 184493459 218279826 708227850 860059576 262328592 475928686 914602907 977479076 983196532 996444115 932779519 943864935 720129400 855896097 307959892 513517698 139391095 901144598 598499905 967480395 103975840 653448825 331592203 673070251 569144469 706206095 265632361 770727076 435289832 735010317 999345445 999860739 553330549 553910380 526741544 973812562 213803864 458276124 595156822 597720954 383117335 858472389 166413041 576713183 369662034 717064978 689692396 946367146 687133825 908401744 836201654 893548276 522633460 840229620 533388119 836167533 223805163 658175249 958016637 964433001 89182984 720885937 520857805 756987536 233810777 980654943 138816991 310014628 671069604 891544490 8191167 937576585 151094830 254990284 181677908 354340598 397814265 656854517 781182992 839367991 564705613 996147355 606783894 684252595 812128339 835860191 226993929 313236007 64903033 875568116 949310898 978387472 500248744 978861553 429947997 545282284 411429245 535579071 553958800 802654758 677311272 933616333 88120722 999345818 92410046 530377739 160058906 601270583 111882471 588423226 913405847 952641186 626422184 765690998 560080096 591628681 846893040 893878766 755054147 871025821 45516304 918161914 553095248 943188409 37432533 258343471 861710982 947100646 632535842 700883519 806733197 999338143 793366977 850458180 469276764 796595089 793033527 821599479 984315191 986429720 535844550 872183851 908021452 939406933 617720413 955086771 523118922 667701556 107515130 949454630 86564306 852001662 357515366 844295899 487573552 815507473 501506504 583874656 873393515 874602051 305617542 646699806 275172774 674102634 521841418 572420509 917992860 975260111 980507085 990783093 64036157 334443539 197009595 713619133 632229118 962864072 401516054 811276125 205039964 495592372 81074716 482399116 859841457 931088228 524328713 920375257 914426430 949278686 460064636 615253266 244812665 298863101 560420261 968385719 426956972 558492868 656986213 850621437 132767783 233731409 428536738 434094481 22902885 785231971 336744725 542752438 934913720 959838747 554504039 606559300 112588672 857145443 684753522 963011737 307868795 360030278 299125800 426946967 374814536 617147729 122850780 193889839 604551568 734326764 743891396 968421453 727457626 844098952 303508492 899906336 7108402 139373476 801344879 846344553 672073964 981747040 820504460 831251194 314975034 892952273 717418804 927269266 588936348 841753522 856440037 984908014 194791995 493332408 525125136 998940865 893202364 943477731 300387663 634323661 62165099 858652201 24073595 579269459 224960397 497407666 786277622 810111003 32301602 254238633 836877173 887365939 69063808 457859042 994927693 998060567 834163996 908016289 840625607 954113957 155725807 515366355 473321380 860026006 605930729 696158561 519292974 559607452 357327883 750907156 948877145 949537586 181720568 345655896 824986056 834480047 271726544 275799182 326948028 754497164 963255248 981691787 303472169 669609219 729073170 900927440 663702581 863642719 734640820 987337701 920015571 939717284 284334363 948865560 4167206 487495740 628725556 793736831 539847933 573502743 436063058 984468399 511411218 657376394 983079876 993015117 664569563 798842466 584417308 639616443 562786506 571968552 835743181 931073996 898116973 937807748 864565295 951847065 243407334 404264227 565086243 841978584 723610328 811466992 368427810 813326868 799518237 885876798 325489717 983455712 38458872 252668155 975277673 991663239 782036497 824137898 7816237 955773641 383673940 664295584 486057846 507426071 722126359 985065195 122782489 358611898 464937352 960253351 544437671 603411757 448022220 853178738 482054219 627421901 816310984 926689138 439103461 874689098 718249031 734436608 575834375 592779363 39624640 499212327 490835714 975005766 29876634 318180419 777901724 849937407 155775479 331479912 664278693 719880449 268245806 278502972 105100136 771057413 87303838 443532372 251388442 517693083 734742045 957310353 239060318 425709870 840768028 995869851 980658173 991041726 444936904 628699029 593966371 718910188 646532946 924811354 168448848 741893249 565973463 653195442 348180049 482879840 9239538 534641167 475997245 734933753 647639512 713509455 147193988 531254745 502958010 977312798 998622057 999995548 705516987 758390859 445145265 764589561 538969753 577086265 345966157 919997879 985473794 995150163 510225637 840941589 429986278 533484673 523945206 801393290 982463509 999994966 295328912 726062544 980939218 994631789 867906486 966227818 294690638 711749902 585718256 916692466 845203043 924067637 881630979 957226092 868608477 885583521 155498274 930933796 28068682 452833093 158840738 335741920 286689842 367626805 679973556 986566251 508190571 522507031 6522240 612347297 705247593 706397820 521912866 671475230 834629876 958830049 615033700 948878867 619389954 971085203 718324598 998530955 298215026 860327153 208525856 326140885 899073919 957575540 729044458 944131473 472534768 705213044 953758263 968874950 931876319 947325831 589616580 690416470 931104213 963746866 173219695 763938590 212789858 953031654 928876399 932871940 80048895 863099993 661647631 984313850 458247567 653250137 174661876 947047579 218359381 995489832 377494547 664610421 900238833 953269314 524132626 900644380 131949810 771432972 625666390 861429670 749874522 888738488 196900303 765780314 159779338 624996549 420893838 595961031 208106816 540466564 199464611 552451806 612848586 900512519 69985202 255378038 996210238 998085192 725616941 878444118 358875970 379303593 875404993 983887751 750246022 948702758 381805426 791865264 16934810 861553954 252459703 614830760 911385274 946209496 192164539 382773770 691399042 977848377 264706551 364961346 817796395 928524312 774111579 955391700 871243823 958619862 554957682 927434016 903368985 983246535 309957088 765620580 377003262 600415841 117757734 817388684 712017443 980600726 834396910 860316942 826205276 998550822 559312765 595405591 554018518 734195982 665355418 740731139 223456306 483953835 110782736 750512023 521521822 696947831 704470705 783869850 527212321 912603287 997430739 998030008 87010458 289362907 693916198 827065925 52666607 832736337 276055470 956061092 518492980 900508526 446897670 839812325 985561179 987576215 676396226 929124431 858511146 983784297 547669002 846912102 797149543 813408827 895220128 975576250 756996126 912705053 140196830 613834560 608225425 739731215 418720364 833399623 263802695 303095710 788224447 955598468 159892190 423252228 1410259 611414427 533912125 861759034 745739844 775148281 904806009 993683194 947044629 974213488 619067903 691359007 953650782 979715612 429004247 762056841 36986051 827017546 245447324 622124022 14970312 892365698 937847578 978073001 330130424 751199447 665301007 778803730 369528900 946329473 717815213 878546017 870621555 906653683 667067436 913528947 142947723 955005360 705720220 795509397 96352686 800507162 27806470 458630296 819382139 918561271 892067489 925298251 481785866 688532305 985300863 996101720 912418888 921405481 508237368 971157219 148181068 424960034 524097549 984678122 590319321 944152355 54411658 612688279 789630091 844221890 671687796 926296751 709178503 797199061 739280889 861234221 939573368 941779195 508606444 850762966 472605891 584840370 528898604 710726728 724832907 899853390 154969025 833815658 157831708 322065812 268481758 409461892 453666424 607050261 664374121 959303185 531908825 539519483 339988432 941909578 265279633 453905758 204729088 616806470 736112450 867950675 911888929 950094321 295490781 569390177 832078981 902490193 952741729 967431938 127831561 472247518 847416354 873982311 222107578 739272791 241061700 736512390 199787085 453943215 937541276 993774129 928927911 954676299 403587866 925247318 601388560 689259809 53535342 229276959 378937503 805718535 119205607 711975517 448769744 770202283 913705226 979596614 435070372 798876454 672583508 978334776 321360705 783973951 300118599 734754819 465915783 771194935 598875995 784134396 192604622 513883488 808882176 949824213 494842988 886227898 358461206 694898298 931420971 961125285 229395258 630038462 933414250 992417235 947167144 967389786 702509023 836418029 54264381 380825816 686625635 913489934 522889716 638747677 260481864 691958902 531819430 927132355 289179392 599812945 712991376 789117231 101660730 233224664 345673971 671360544 647274696 864672380 125743036 871138376 781642493 789113416 616973827 681551511 507394189 893864880 687866600 748908003 950328044 994010671 995898477 998976151 698097122 837500216 429603005 936745963 846247744 901835622 544681411 787430514 134094631 991132963 467979334 712494674 715573263 754292635 44216784 789742475 660563482 719969219 89376683 154514779 696139402 847829905 454536134 725893425 157910020 898066675 764953596 994457989 377210077 853388187 5366985 822955705 204558150 774767067 943913173 953730121 666545919 678283422 87157798 977092504 816060150 942968569 84565859 832122846 350477494 495480419 697536631 992957742 54077221 401869019 787691721 851133109 424872156 500836549 632891405 725979275 196649118 386968273 282993816 765607201 6610475 716926341 123644971 213583076 523432774 704292422 670409236 872754447 613288783 667192534 685945768 768833444 744826080 997299711 338668000 694623350 650895533 860211978 592148848 775378920 902795246 941474599 4373119 59627814 535602906 912156378 999861016 999978294 932873279 959065962 386851000 777927366 963384171 989774410 247547564 658914319 139153273 510646869 100244191 224364213 647778034 731957314 916399514 947830635 820195456 920730379 534424146 641301217 692834859 706108797 335796684 347592625 37078445 433485021 750308215 781142621 60069602 616334604 160520339 737776617 791644398 794058551 830377551 868911849 206834001 537161616 716218453 946792017 356761994 648192217 813771652 909992415 502912462 789578579 628986209 979421766 988943457 995516794 465877455 731692265 910897876 921758367 76233825 725593833 852511549 950968207 622827566 936533438 985869927 988460227 599353161 863319537 746997958 955355521 828808720 832198353 81216869 255173945 169294996 786316040 943463964 999973870 194601150 920271828 422147872 868399256 722476402 836995602 749734775 836370778 114490508 612906801 401250964 892906065 750264506 768163399 433412438 647012371 447557890 663896064 267419708 676903476 259112637 979851410 199060727 797044920 924670708 968485249 240369493 535438425 203117328 496178807 515300421 607641715 450416694 511136977 49721952 358755688 9936684 657661188 756370614 933087374 658699311 914315154 358745729 452938190 810385089 953362293 66654733 126079848 703969883 794837325 484845209 618922218 105249034 873769949 917714486 947748273 70772306 182114660 307552557 474798313 75949921 944091795 533928 390005118 662686295 701724351 163709125 705856190 872547918 914710146 97760575 862578917 628769749 814603236 927964137 946582313 215118133 706559271 655017110 841897457 213900048 342953190 57543664 871640796 660989788 997997069 277333641 466269362 735644720 912987893 290624887 603500623 502496715 923794548 57356213 759188452 547779888 714837909 562928734 709126066 588431726 881174613 222048216 321960244 566472052 706114804 900308197 953190604 710690170 818633170 538734936 798552003 329750750 503384113 196631121 962424538 893686051 907638451 814319398 834810145 619793046 844417160 189609508 565162178 867505555 889787556 217162977 561191141 670116524 912061721 366289507 876507999 615519158 906219226 718799480 906981490 835629262 870871017 633844638 808682511 768579204 797201678 412546657 486899618 204879352 308560519 118086077 148871231 344917049 859125504 690822795 963978866 256886506 351574410 184659268 827481258 732543134 885203565 596359639 788447446 134133705 241852169 841245174 962737921 442675963 964653492 844178915 849265951 941500783 991765232 882869716 892308149 599887069 950389173 955480879 987867684 369231483 976642514 352487184 832658981 921065589 938917012 514704020 539547434 450035111 555516403 992393868 995997551 867214913 879988866 995359346 999738433 291248240 631329692 131720392 510718056 572480426 601573215 810304561 907919824 40468139 302661533 547076811 837944445 624189272 823670404 733205199 836184533 582758159 974415741 189492792 350879317 480909824 732851667 846374499 891130534 229656755 551923167 538165799 580644034 368567877 489745122 590008079 830652630 175583719 559632163 431415771 600783410 600250808 863206089 161654486 382767166 321644516 532774290 565755315 679894014 623382995 985409173 119552994 577018910 156351532 344237961 413226479 803094305 985723508 992558066 233539048 307552362 555250016 639149315 436961187 961429510 344516335 709775322 61068439 759778675 520410762 561820300 29204228 810278714 365551794 610112970 710523327 808285058 270594912 293881779 248126920 524811431 751013635 758123186 135357007 565837748 114714287 712128377 352653683 672810050 200456419 504079978 348049610 765623073 536655538 728422502 24524112 60268132 547680888 774687248 745631992 948175991 825603068 969176340 717164904 735350632 241363512 780366427 728981 40104393 130060315 843267682 726564315 752629345 278478108 499284784 523494185 761162188 361365561 843393701 992399829 995183644 204391424 905748311 316990229 325693256 476164931 967353915 908826014 982284351 70567593 246127083 636387983 646203496 472793737 500458955 966918042 999038962 252267914 550508447 318624986 490343820 448449631 741953309 448869442 947301131 637120685 802447691 888322547 964126965 226942446 772391126 40787310 720715580 329597857 382039462 674619842 949645338 945964324 983470068 501684122 762367155 52919318 602106834 862092869 995969588 48443825 357838404 274259196 976473846 579351732 685531695 667258045 909408622 594016026 864061702 816915662 904955212 755255170 964388707 274655326 299189887 947907676 948608527 326365338 363687378 238769805 404198780 738195190 815631450 362701045 993165236 267593928 930022833 905361321 969650813 845485612 855537915 178047606 312129890 988804352 994884049 894492616 947146498 406927015 656285075 287343108 452150916 351495727 855536716 84943167 904626327 952951139 984902345 761387514 838788125 793693310 835646604 248606754 379816725 470977597 582741492 911912101 924027960 824577949 872035825 358484530 561563871 134703981 573209107 338267951 710912762 996989335 999826424 253692320 566360284 637772916 805335867 146964775 191726589 76009918 915777539 464447253 662125455 743712409 927911265 83281893 757297480 904465627 988132286 705754795 860165248 181281061 684613597 203478277 320147898 802880904 914497457 379297915 522892433 384026647 975925920 786893503 942539446 646531950 647785007 141716950 508606568 235486463 695989913 219841624 654447305 652170021 953620257 681649223 822512215 636073480 642728199 348324257 714465635 797753434 994040525 253152390 327753314 161216342 839267410 336491312 700679780 616770509 906166219 695307875 847606807 863031121 984241601 868374060 931551028 234689793 694907605 849602475 999667966 563478801 789316974 480406368 966967697 85718502 367019840 560858298 805448092 938341072 998715911 196917948 285281751 860162611 934464664 354460523 913257161 14437837 39942871 271122004 631069500 626343956 685199756 633399268 732554111 509219713 533357637 891172590 958647578 167035087 899261450 653123607 698044321 98132259 160713527 125443119 174175591 136467194 527208888 516533047 898672520 961451220 979971165 897739674 991645318 47284837 110396356 288762009 803866152 626857793 631617543 741429132 822539549 234761048 826078303 355103562 559321883 164667339 790542173 98783144 795975565 219777872 327260753 412616369 719046591 551350614 832908059 475460360 718200060 84189078 662579238 520162871 953465187 630408561 753481030 614046306 933215815 664413040 723859196 734309024 839288878 291300550 531511227 332161495 797261252 96557894 117877630 805866364 809661040 985880990 988346758 545350865 992281483 630714923 973111149 585708794 643884928 78483021 81238560 157066112 926856583 125810260 388562546 117172012 935023807 879998971 960781874 39635908 906921474 114166814 722286727 487044891 672494029 676531026 737008890 302002806 765541313 435489177 538293362 495536028 687012609 421862668 567414641 593598240 807419537 28057421 941361944 440800118 877512996 722359469 933874150 573323039 814893824 763187788 930203206 707675462 787942886 332146350 619849603 159070522 560333402 568979408 715085591 919877987 942259678 574875102 939816100 352394396 558874096 886459875 934814667 182679623 548339127 392921585 882108308 229747019 343939922 884365111 992035732 555870848 779146839 11543782 630148494 539781359 735259105 287170462 577899228 599697596 701368662 589287593 760065338 483100454 751605052 850581521 957096885 845238419 983149172 875939764 964444753 892205020 975931326 63116554 308932338 202357990 496113421 333778904 463799034 684438079 944037024 647549240 894179414 342079668 909458421 45852514 539769565 379285953 634120599 477174835 559286763 935784559 937331264 122168281 981631815 831961107 948178192 718791057 887670503 118481236 241842173 244084399 449379678 910162838 952503836 283738915 478866053 111077033 310600833 532184573 843610537 708109248 733372355 239145107 674121640 388208864 625881818 944135159 995806216 781022097 800389873 723588078 769610236 680433205 815676837 717258666 922649232 76137133 941222803 932768764 976089150 82873913 314912029 843900486 878042387 425155863 905097124 811846290 912748707 474344047 596207096 656448571 676278460 94254118 366221817 533241355 728786631 186773266 577592618 392120952 438235837 656026413 903011890 394591838 739519612 905655565 999564458 535392081 964488742 495376108 857838450 200670446 867162849 336839905 580443007 454902466 847532402 138810300 596644578 564567723 834403950 518798300 974468740 525417488 972779699 582524829 910339312 45670261 654701175 189381813 463658801 288373160 562927010 285477461 395577826 673997470 946202366 59440587 438566442 350326114 992870058 836609628 919698710 603424025 810645472 867555963 941369260 7625178 35626581 679961445 847005891 407600563 752571582 287157005 672462068 807169814 868600875 5354993 957175017 230623890 360807275 369591319 583519009 363910666 760234594 253202750 422388621 158382016 235071261 701089136 861676596 690491942 768845090 973149746 996791946 691866957 873454807 546978258 946116636 924676966 930464154 490099787 789907285 672907726 840682260 114231273 606037143 531155617 956903547 354207316 782038206 154047374 196561548 855899691 922813540 645806680 779989349 673385890 746948495 660039302 764895052 810630717 825466254 907520097 949641825 188510693 712223037 92763866 283370215 478094874 506805592 867335077 968098288 304032248 601402319 996002311 997168685 951821989 978628841 964476328 973862516 382593545 807081794 172246758 864701357 96860135 941621359 191618257 717838184 494525665 550395789 696864528 855431283 653973442 986534811 692325960 877871644 149529330 472556795 260903542 937515567 167594529 810672642 563184531 682440499 647430534 683512366 29639800 285469866 689762973 858140709 733816007 787607871 203297948 761846690 481044434 608667351 191695159 449970950 117565130 177323826 471235467 992343505 963510477 998686682 391266511 831165161 313309624 920147397 772639665 948055268 972771198 979322206 392284220 908415435 389713626 742741501 652650936 924637699 4962881 848365131 936217378 948758893 499347715 591342306 894150062 971366147 590364972 784047511 137414853 459818310 694851998 936615727 352043565 385097496 795966657 956468405 597914046 904876726 134967124 836060044 882685145 923842180 648024657 725987339 246386250 939817406 442673977 978762833 802463718 833898056 939402441 965734597 819156874 864342700 86844265 301126932 404610216 635109624 941343390 965596351 726872105 936132279 438234479 967781480 699689739 878355476 761470066 807393085 488878110 802886828 450559071 686767417 529430483 843734416 674056459 866674466 243320619 512114319 434040073 831318322 586285833 807855540 906247942 960412768 997093480 997411625 710138173 999970533 697181668 773084153 880277984 908554378 51698683 728366812 366113069 987337962 705799306 838263431 992163709 997425800 914805726 917318429 884136208 971185727 82177290 527774747 567919079 643669436 552475343 973432984 909623975 995116550 404182768 735152778 981682219 986887342 179313762 396906228 506597012 961701635 604258973 939720603 15386181 444072400 82682749 123816377 23077601 353755697 514719409 920980961 84779605 365275103 85650707 697234336 571828085 941097240 221151358 470475147 8100451 854719215 126336441 193669295 43250170 257911402 730181851 945862478 925488487 931148882 218802843 776073086 299268373 673838050 259371533 608625062 552216739 878122747 617541399 839057523 507471553 733944576 333160848 858373668 843993140 867983773 47336893 50303352 953077210 975104898 783498236 875535750 455581104 719550826 797686857 976358007 288600801 457403875 404257986 694938705 174847126 564823391 249573957 957279953 329895120 999959430 762891064 765758775 784231663 903070279 978444825 984607253 136128514 259428562 758756260 981912736 193260253 859996370 749941977 899222345 838365744 984547314 941136417 983242787 632414432 681559902 579709872 632562360 619683590 624521092 605119404 695209708 836298002 850063582 385482019 696528941 105688774 592882852 240852914 264909181 858311688 965438092 817757840 963668106 607382271 966451287 499824986 617340751 842486603 875806864 864734001 933054366 691871973 818845180 691436170 933589703 926077180 949611195 628499543 793477215 705853667 962964049 53807415 952725001 635984137 987520861 744594022 907212765 382345797 631127942 533419404 853492201 965935850 984692838 470745914 500713515 355341262 736295086 923374494 999295383 216817744 804073683 6040807 834629174 887972649 931579752 891319293 965764133 440287629 581434441 974427909 987447604 319000718 410417536 121020382 169845666 795287908 840857604 431948772 575462709 189078520 537014403 725704778 916168160 601921016 661888305 893493022 949482780 192788010 537690286 591322219 880924533 399132422 963482588 626197554 903326442 491825418 512710794 233308368 259518908 566648239 898579542 106668269 878937380 566949049 862228744 347154460 517499992 251666208 412666449 298524996 348955910 117958021 376161106 907480049 953295789 514340237 705371875 588371574 972139281 764576009 838515432 161147244 224083549 20462342 458331847 940591275 974382602 927139844 953409939 280876922 424814777 173260721 948487914 166896107 440834997 596556729 909592228 903872256 957346793 127794593 420434567 973535150 977249960 786761438 899856984 592128437 756169077 900088408 978832168 819529739 941532105 353591020 672814239 331556485 764757652 419351039 762952137 895674494 901781932 857260816 898749197 240418667 693369622 706522201 825476343 837752849 907184378 794817033 901524560 770018770 791648235 696471044 920393712 178969674 632159150 472767039 782018637 431712186 998591387 858679144 882388958 264984115 377214733 723129333 990748677 610793362 985858410 677532354 878101902 486374357 651371621 812534017 964598572 328089899 875778600 553362185 554489876 946685014 960633657 29960965 969915267 194630438 258621974 727650147 742983032 285800083 405675463 781306830 922641000 488357214 852817158 738271460 784994381 477025789 872434136 695038520 697596945 295637305 485632914 560348626 964629984 785751022 842782654 596353016 892975810 279910134 367299624 798490880 818578465 753391415 905476241 284225540 859688010 304527541 573001580 734040479 738900130 241109617 383664995 411677446 837397417 682728840 701982977 759070086 951188669 497650299 954595615 828851215 890550262 971096774 997126960 763787848 885754570 184397963 574821328 596262325 703304163 135624365 487350068 131700791 971110245 161670674 415977226 192478729 867609024 693505134 857111406 276076292 900187432 519327429 550173458 233882554 631474376 922634937 972252279 320137033 894899610 982988968 990268895 448886679 953321779 310160965 314349721 33982753 715819612 199002702 343776124 669583123 753653230 755647955 837105677 326398884 587598310 644392273 866526744 485538105 676416009 663631133 971884988 728239073 944861630 6688683 900735786 256001702 977699870 358400026 828833783 238138802 332068374 749554359 912965102 569430643 724891051 46805846 424907240 41946177 506475288 974410785 984047362 48448919 660451496 583010390 868104372 778012324 925173402 968688149 982279970 966143483 989679395 820867520 828223986 736054542 957244376 831356406 939417011 28261250 147908910 891755887 912775565 597279258 702387057 302063673 931175655 219779532 425129871 167079983 202108944 234772089 624528293 804789432 949348629 812601232 815156560 728617409 927765277 637011127 886039151 79875543 105431858 683121312 727716909 213489612 961153460 942645888 972187718 615554621 964683448 784010327 968796436 941086346 955885280 548910936 914901712 336585722 521546641 263769527 449153074 124234762 995140065 557972635 957807552 870494490 976484506 849312218 993485762 46143551 287228556 960788059 996863342 901205988 979032600 832532193 986988454 45340823 744517336 271312958 378616437 365656873 616171019 288098958 617843731 193358781 513566417 484387416 635326463 959949938 964614589 376495244 503524954 93611846 868347551 1011140 4065009 256136812 607702337 540016365 757617293 470443060 767435969 361832058 811645397 292074626 725165627 130119839 406429700 837516576 947896289 109222554 447900331 371904221 395387809 6168624 171179510 93494610 886686713 263367508 346126838 522351222 778094287 198043023 661963481 588387870 666394749 176689207 696637869 484426780 871793752 96817906 834572505 930069569 992683654 731513884 831046348 840220476 967293211 182360255 334072882 316767575 846414385 144201519 473613751 366180199 468512427 669404334 703010814 580760284 750851405 782475863 949256475 775295070 893073191 339384616 993118533 833817609 978175225 635912598 866222288 369279249 556174128 13621743 209367284 197497808 987598639 409439992 577707450 151482652 802876463 17357912 627175066 757364866 886568186 494587742 887740262 743329824 812069279 800875757 940091237 669819751 941701955 115099194 443927394 64771767 732409899 822661107 908396530 352531374 639836809 712335549 910667245 491081073 620393906 402503304 458101628 570477841 972293779 921534758 980014648 497440748 728618560 182532158 426589735 898360432 932630264 604107889 672455243 487757777 499151438 225774000 673971567 965164265 986300358 428737925 775499551 838752305 918991750 446642842 988180275 23942498 708575556 639429905 822088447 9467728 796226736 993417405 994634789 395235006 475078554 442772458 579585512 825239204 882098098 132778600 359013954 238692218 619623960 635589492 972321867 312961596 777993466 996007168 999657668 661676833 868430113 953940275 971725224 710909988 733068511 168697206 761672120 377550480 387912976 314097393 490246678 210064014 903915343 745836228 877671706 715490969 768577837 879350106 956555578 523296292 684505483 167542561 427511173 478772812 588003773 869642078 937098014 367253875 798581068 851013239 944497773 47805192 912888608 814858483 953113046 466048696 893804474 270260526 774630723 427308110 922357298 930825193 969364296 413560126 890860925 205799967 942551580 627681282 659943601 577835362 826474657 263472736 859496530 922045476 937458781 249716857 988467934 374409845 948893269 114105059 298173849 899018744 905718940 987491726 989995887 278439964 592543621 794542347 819999717 422230696 716616762 829707595 838770946 353519892 398299246 264044180 357151578 764898093 831258697 519582270 819551795 57635834 374976199 487653432 914618234 582367443 802188206 645697693 812316301 527368972 758175139 177006406 822459421 192527127 883382697 134487984 620052703 134791123 976461994 943154202 986947222 494492501 810805942 668473058 973479371 349515526 482955936 909349781 933549517 159941639 623548872 388371717 981215308 977756274 990514591 54992610 917345858 374537577 514908696 605725750 671585043 271438238 620562325 468446297 970858553 584534769 637179589 456165469 985257563 69186188 740597132 467755982 777944680 332729007 697535146 493878278 550150634 668474366 717943355 766086743 852691276 858161022 918461231 53875565 442550142 568166584 822295196 405729400 940131444 990345169 998991016 542191596 754964153 487004402 832045970 192657109 677964406 597160772 744257635 43178885 836372988 47425300 65853665 947318404 996729453 707286916 807938333 496830417 843717524 96274192 332717479 148714713 667635319 387646799 949314035 216392340 421195284 675200310 798510376 61957419 846358729 56755817 480673109 729053361 738327096 112663480 342774597 512849392 785817277 114893966 590154506 290639777 686125253 335083382 901499857 889469905 976560838 267889977 587709419 772056377 982403254 322324509 980013690 314597258 762399644 213767869 911129654 8518454 515320378 199026943 500217802 248640691 449782902 198256697 425078782 242854080 851108528 180015113 566350033 268633538 598532644 514950130 724472761 383470033 400500525 187248471 326025808 699040676 895991747 812505609 935287328 243863925 543741719 756835335 954576532 431293311 655055095 374830793 792127827 68495143 414705477 687079666 982364137 450083952 612436874 988094089 994076054 284774691 825324323 286023527 672696302 389924079 494300516 844937525 973768342 921728547 973969264 507048914 967014536 999835422 999861481 668493138 896491920 245056763 929073703 632641798 933577429 839907843 907353756 674459163 686414245 795583747 923399037 690057722 877624674 914822124 942707111 125264047 633965516 784767449 895200797 24296974 775760598 247040947 332751803 859376615 924705276 328790705 517080374 371670774 609571144 142206447 873791474 584381242 722481970 472977101 830245093 397007405 593280004 956792313 983718546 339169812 879963004 504187974 841935509 886169274 895455832 822485547 978640682 459050749 507437652 195302159 856786516 601011402 793718425 950483635 991505798 745594741 749652267 572341510 893539272 627414754 849959433 417251656 956308840 937959573 961911968 888037773 986748670 489629319 556398478 99146807 970114908 727075723 740174130 91226045 192336418 156492067 968131353 502553339 853847136 592200582 943706542 669051127 845221506 205929985 838443382 33749586 897269633 760174141 803395442 310045877 545413695 665052807 736429288 50753400 422040934 130905972 994781712 876946626 958276977 633268148 754108368 543428587 649130296 242280482 408099927 154504575 229866807 312797792 522080261 734400218 978289425 584835205 950937532 214716254 340461805 265819720 877119691 144320675 253439224 94550232 533616088 73677534 510779484 952072547 981580206 219305092 712797354 967306916 967767684 423392880 790132761 486580217 952768959 301056149 917298865 523924433 556490553 508333158 696175734 672120073 987313503 929688719 991301746 648871441 986472308 996530094 997289045 492039568 508858908 639872323 675308022 232925135 482560173 769616810 898843249 984825808 995128880 769757253 851025532 559548116 581122103 364738679 932295273 481938347 916953931 131906959 154489317 741227977 745153747 971365312 972601275 853667444 954036160 135405302 811105893 860793702 899921756 593263784 882720695 932257980 943989365 583569281 841945084 88796028 484171076 769179750 876574573 208349245 863565595 347312118 989613055 340538431 690560077 191901366 373471152 394716557 893639315 954801667 969851351 231648296 241670415 890172867 891049957 95231694 141200128 475318046 572310014 756632546 950450822 412339079 721234981 313478988 823347077 220493825 974709362 784679263 967143223 673621793 920325157 75710393 531721153 657568997 720198687 80520606 300651544 355293423 449540177 126750992 481664930 595136502 680752421 36692090 767048700 675694206 822177388 8277531 889493930 944631795 950416519 816719402 820786533 816567271 987776449 990699502 992881758 175571455 542335651 242658697 921929779 979280210 979502292 472840081 751019477 808304840 965918893 978037622 999177571 103026392 304006413 852748248 948109441 159268230 831716828 481949586 891409948 533986087 844282225 168348293 401365658 992670093 997099844 207702625 642574882 986195706 996705044 321321675 499299815 971432517 999267397 954365560 996825702 653790658 990987394 311162574 392705293 639953915 881786049 899742828 966590052 439682129 707415646 447446893 770318699 266000869 374976415 600129464 796478806 152821466 382176832 222623463 503977234 576648367 974798959 857264828 956854118 703767663 770946021 642451316 982072952 11342495 179452340 245832900 676203019 388203974 998432314 416342212 525917433 488118442 763708238 487934791 750807175 742634987 982597315 340992373 702824201 281805358 739525197 764065633 851753201 2335160 702457171 371728669 962597417 928733131 953215874 848423348 948220195 426145796 543650243 896508673 936111152 615802647 721383812 203873971 426152440 172535535 509363132 842748143 950254291 331548343 923740211 307687944 991949877 107056252 125246321 144232122 719910868 663593442 730249115 779650551 981108533 554216876 677787849 306625500 604261407 812173807 977534944 800936578 862361441 142524204 268096598 74663352 373022549 449660352 548969011 372267797 631196577 987241245 998447526 803499783 938909496 727597917 808376850 125315572 302706371 107829219 866467566 908383020 985466940 863664639 974965281 525062061 878049545 582923114 951728013 629108644 766994849 386034812 711984559 384102635 624758291 439510997 659254414 529460940 601324105 878506459 974121990 772321792 861351170 88575759 495036610 737370456 793004373 601344776 902858841 669876222 840938432 541873530 990366424 380433270 596001680 99938462 393424340 252603664 309743278 570229896 657670308 984482469 990072297 323352931 860978223 280870748 535335294 92069482 606649578 763399256 962970676 739712047 864752266 430059553 741267917 499973607 561610339 969936159 984415300 939413771 979155281 909840046 944921255 697896385 907037816 739731091 778092183 431497250 494767119 743836794 958218772 463487663 487363016 635609310 685046347 603824108 664724571 735922841 906016496 322229672 517435008 90284125 634091027 319355411 381500539 378805760 587259375 874359951 956868478 423926014 756669433 932141028 995388823 321085090 938583674 773137494 969908641 379959967 583420159 493082734 652317278 198195942 271485260 677281226 701059998 153054518 730405109 795145603 830040194 564825788 681879124 784363619 975042094 869783424 901217101 765110870 887349170 509967639 894374516 1125081 538483521 312301382 962935245 664179500 707308604 796224074 928555783 79755244 807215073 815293007 843379388 152871428 443592740 509835596 864066817 326763721 557459085 148780790 276963476 852177250 944886494 359886795 484701978 995780847 999513841 467909660 772217309 459732953 712402733 162085029 730228354 194746860 561324226 562882019 966581328 905700398 992776658 797956820 887803412 16922201 467654501 280739236 379486501 907354020 972502630 746632262 879093549 21163587 133819413 356177336 405212746 380617826 781804096 724699646 741666232 572275153 797433893 304484469 561587524 230162861 993788166 78376897 859813480 837248057 957473961 808245685 913052088 282624151 424185905 73512238 952121502 342384993 862789934 654318960 991077987 703648130 731244675 861159217 917007799 111330350 609578656 710023966 800811728 184655762 938621946 827199509 849989147 936044559 951620873 730811987 735243326 588594365 775249368 816783678 899361717 449413394 869024657 427987009 521635509 713550678 980593435 148520492 625033120 673547682 718830760 215178809 731740641 526039625 572900470 23130595 567026368 75550837 195009772 196653215 761124457 128702736 775852327 365106092 479910524 756001226 927715705 984238374 994539996 845090038 909521648 977681315 984838373 981304221 997226238 221411990 418830999 528430212 865173867 748938665 831650272 459891 198103036 647845917 680840146 311843496 792856681 684868052 990799435 924707544 943989581 272152223 902729778 640486860 887789463 304140498 721094237 657706441 996183972 886439951 990541256 678479284 932306832 622538322 868313921 930061388 994034727 67845238 815142078 945718763 948699851 187179924 908985336 195429444 609326714 811528248 897819830 749671844 910990961 541621091 549150108 795221472 842185462 413307226 925693312 869106549 977925161 750814537 856040402 862446943 879879405 921538984 955477336 261429715 539535317 602087940 871780903 529036347 722388831 455456792 782078516 235452776 876937677 14800358 428027402 126274331 960505773 417885302 430122702 830695774 836779172 342291255 635510789 318608211 610432714 7372008 631509507 703729352 993277019 519300608 862197465 912259197 998988711 671235696 899923312 904389914 905059034 792475609 820034954 436108512 816831405 589064550 723613822 385202514 476585457 994346822 998564134 831405753 979917971 801231212 955696290 936184564 973936659 163406271 995266852 252495071 332061911 627963789 704056653 583250657 826400944 701524082 900451980 157947443 201550953 50411334 532069284 990639514 999635898 425530633 590893623 120812278 701170969 743554422 938430938 184896482 533274253 197741609 989234409 718533255 930595435 411001649 616690308 840255317 907929010 593657876 626380731 255643038 354256992 318703684 719609602 201280463 949639869 315068223 659482137 849914001 857225801 321638530 613656034 278947008 527986270 824137923 846001805 882333964 971536543 656191441 791492280 34230276 390430791 719826001 747926611 335846372 484873538 171670105 304693101 358574703 804690151 380695213 557433806 268922598 887356559 917821389 988132087 56215409 543859789 800925288 824537914 519053860 982230631 981952077 992783390 188932598 997332016 540918524 934269254 990171612 995101192 489249190 914324832 495920828 969628690 176676416 712794045 358672786 366847800 841791470 937260832 302478638 748277686 880189552 995943244 539696942 745289105 163930655 857011970 362834666 852721256 754870865 956211979 556603023 628871831 805706175 975315662 295537610 691971243 117474351 451633737 87432125 579899914 268067889 335434693 779914542 842781176 855305710 858596580 180459106 260455527 941780459 964858703 134954731 508306249 18427251 874614629 979053755 979293623 618965036 761504266 415671739 614647058 168592671 752344826 443559449 767378555 576238680 983960347 70789245 109608177 961193535 969346950 438976217 952257236 772498090 947951846 141728407 494560239 663873238 833704119 34151757 361205950 528288902 973973219 334438088 671205109 37651903 522616981 694179416 797935123 169583388 979627678 174825938 186042089 339584022 756759802 519680982 697256271 111893609 149313322 605535497 680425617 440977225 967613265 334393275 676222235 862064942 922391128 140962333 501419764 328843008 757681300 709039933 805401590 651410982 661843035 532548274 854850448 569087360 939746055 658428347 898553333 782779091 889489246 392332050 892671507 526405066 927400573 171182821 549603463 780292244 889482339 827638422 828390187 231913487 495777688 458147405 611606804 195760263 317519698 120303863 767275820 203787244 498507070 400645342 495283253 692793570 853927184 645431700 958160790 845252019 908206042 29401074 708800840 771057533 875761454 905691694 934530300 208778049 867863227 339996047 530579590 714203679 896977152 402080481 747369568 29046960 448411932 492258030 700045096 434410527 653871346 547868495 966682660 813701196 967563952 857073750 928857812 364640414 565441501 74375241 111459785 662539610 697272184 334179925 549333316 494250219 714434592 923774718 951989965 463188997 822869178 620810591 859617487 828464979 891002437 601114936 770157744 617626390 986327181 365146995 532954934 302088368 343696015 979618852 988053765 565026693 676190859 399974143 802634819 905645722 924646833 493106049 522682052 379167814 713989559 985220105 988357182 416942270 555358403 134254434 381114464 288541531 527021954 28397051 367671770 353616717 747009032 842096810 891415158 847050796 915871178 510782705 539902839 64599427 517013412 285593054 973177158 651074210 898063779 401490266 667971913 303977032 617786168 70880689 360794399 874616318 996447691 925929137 989970367 354102815 407268352 738636051 762876759 271508505 954037028 31469104 847018217 946494460 999197509 945226596 973857515 904069978 992925879 396480388 509941545 832013126 956659547 360679376 834197982 447641963 570505354 797468649 953606777 660867724 789877876 755344660 774195641 320497833 378700639 855275154 919689551 622553116 700018561 130481855 848979654 235655503 431434404 574708132 605129415 455768566 667113836 859164726 964860569 800947484 880845577 365130190 784830669 718228746 858784312 155459173 948821629 50992538 699358530 28954677 978364733 845231180 874132185 630660955 684991809 772610954 897381943 130324202 165155909 376119100 744504596 874833317 883586842 852869318 894263619 475395340 631224216 689802089 976528550 38115106 920977764 475760198 975357862 297525539 949760170 359594826 675482609 318933640 526593880 263458842 392350970 932203932 974873647 843482776 857631056 959959507 994577315 598911787 956388064 890541600 900933114 421175906 850197257 56610831 386520490 716814007 827698023 22953145 792628927 241997013 425562717 520309697 718085985 904631356 950416395 34501781 35762315 706361419 775262398 310379257 681674574 725135130 779208246 910049240 995406201 619244307 778948428 60869148 678430080 864413272 947610441 704585514 941138503 798597577 952892368 309611123 655710544 374560488 623862522 411760455 499476142 671204923 750127280 882770297 884197584 941964797 995677418 438219103 880282317 464831089 923152993 700071763 810655337 930661054 991836783 56447668 887806441 585850577 931453126 466705049 575981844 262096462 334026451 895791512 976252602 954626135 966931278 448888138 791528008 218590860 694672168 450965019 796359416 979176311 997838502 164312566 263260728 832328644 907784346 211861990 602626340 829100368 859959559 933463579 953509905 824674691 989829083 649413806 798575095 822206319 991344821 454825736 791165013 943228546 978418918 527306740 988394768 916384899 947281112 583083199 612747888 404746786 636052135 565154026 722759344 364221449 994375169 248551937 872626727 633024213 971246422 388630483 514638541 512296829 759875919 365597454 806502194 724248092 931316548 602627682 666589168 344965288 666443116 732812091 865496041 104969464 219319250 368126257 704005306 467208989 689531468 758527880 954376796 388200606 962939979 680111816 819435984 756016438 877216440 813126467 980108315 438681142 808655866 794819872 953623750 315056151 504380118 510167609 837882752 506650675 750574781 512954094 729795655 788030189 817640544 682128660 901521169 242536322 343199532 828706900 878052837 899467503 971115887 629667667 939545402 651881069 789078744 23904215 524583442 373566273 641305174 163151048 295518391 82255699 516247490 253275276 899468352 140578665 710599982 709149100 875693455 28639176 363535521 90204190 90728961 252533746 419400678 378678801 784062145 617391125 953311838 386072350 688135515 321010114 884485047 46111036 910446500 777932616 866465182 651141618 957441942 200823455 739595517 741185847 782328176 413933078 834994262 629141631 679590072 404929791 530185041 965595544 994921514 496897939 794712968 561106862 994090444 848802102 984796097 539326329 785229415 810372431 828247996 395859965 553596884 287330123 498217870 973675202 986598118 327824799 328238924 570930769 702114567 551932419 915491573 280633501 281920684 849546181 916042745 264111922 788599194 265868471 301031632 40894223 882397869 411122221 724689025 631071139 880924593 737718396 789706980 442247755 976000136 316604122 552595445 588136445 826233751 321506493 567183974 175431484 188543731 645200509 928944937 561544931 687428305 596264097 981422861 26136735 559096998 744528373 954629684 754104127 941255439 630076085 631357080 583049748 678725906 423636907 473579853 780199316 793649940 92439912 809593815 719440060 914937708 18181932 450514635 913998979 935112938 509702701 613412733 348059595 533813839 813470135 818743773 810642722 873864029 622070757 953906660 711384304 786304919 213058217 755229264 419061088 805161623 161877889 202487951 661038372 724385828 721015712 883522519 829870121 933839241 293067833 609593472 342017509 913512446 774204052 985292672 576952863 981606100 31885931 468668117 706418296 786622179 791310380 858464821 373124899 727620155 464059306 695462640 557833936 882191761 132138988 783452720 713024035 914933389 985399484 985595032 22418483 548734920 693073439 915335581 9913361 663567227 709372292 797177377 928901748 937888510 953218278 994148321 564282954 733689301 683599254 839500423 506941275 693781767 244905969 575674921 621820007 657001286 841745198 960683081 541224056 733442605 87619470 775174536 223926218 264490013 529006027 747722639 155317423 355088566 657110482 833999313 84183678 548861097 972625716 976472355 32953941 572833132 867070746 959929732 88502803 205763972 908779061 966817817 221085859 716622204 841770923 842248449 221362577 706212456 77251925 262816709 972295277 979011118 603168608 614975079 224315662 379529503 697085793 992847919 7458048 877046762 847340229 989806820 600115046 631951927 614249944 984072103 213232639 779267768 339886368 918177942 536652234 647672092 874352456 902501103 232746461 801833650 246841302 538630654 661830669 719479771 675748369 827295315 939732586 987820356 549028956 780681907 520774207 930951726 944324565 954523239 462817670 687565291 554276539 796869927 96964068 912873795 44538859 906261350 634232817 989802349 287658879 290728997 329759475 957192448 803940726 934809351 825797178 882543677 82095714 570907685 324401339 838687218 138586943 832395065 378115862 939900298 309778585 621894933 571955340 833425639 76736368 710714441 291460626 464082887 6350613 319277498 761805755 838965137 84545620 328806256 77538286 979065481 649471683 681925347 601458923 670743645 93094226 710772893 310440161 446316579 239110198 664242206 809913006 855638268 656613868 985052412 880139460 998094995 957437358 965385692 987935587 991601005 781316184 979826721 844335934 900684226 264700806 278986556 614638658 728408208 510696313 949967522 283569959 458233853 587081779 851774508 168710842 381022876 186603745 408162957 161670908 509839213 80344519 105703319 20669206 693931197 105178405 907422004 690557193 791977723 310935241 808763036 238632910 836275121 801937040 860801335 805907943 834270476 950293202 958221993 980920797 995554242 102283473 838138579 677065531 729217711 859465805 928233735 503146487 662733956 246875212 452459770 149060993 296820073 425831068 878553839 109749549 747157071 43838903 441837689 540491249 811944225 29461091 288872629 740359945 945317621 681568815 846126349 560406748 667989655 460255538 724479994 648821937 997505752 355192523 355876187 905506306 969748920 705788079 952374637 855902300 881338117 476836458 747987376 377980445 953346600 289875639 813213747 951552135 974063336 163338706 355917612 287421509 833537710 292897160 872039063 659051118 685424196 287685685 964503481 943572382 944881801 150509802 626489663 546347334 795845239 732254276 952275848 987797039 997557011 989800007 997657883 791672644 873558338 948131045 971289988 596186108 751288713 921912164 987603610 563284785 858019069 598554477 905407650 564763500 639221163 8025919 146559216 367333234 501504772 169426770 796398814 237157195 598444487 388437077 450198673 629832336 749854200 551377152 554496825 280375978 682057789 752802894 793358370 660939787 869105522 992631470 994174143 586623711 989403584 188755827 876750820 189075487 779078428 495457586 708251863 867079835 882849967 500342393 776053444 307876232 946473974 360806297 861115055 168749670 664457496 773670113 972365762 546461817 828816042 461065814 935066817 509492884 739123510 487369573 870185280 562335118 934078031 84454435 312280459 914866216 995643634 842483595 865883850 723631156 839444801 203010273 597836403 109244815 145081445 290077677 566871684 271132231 624223600 451171885 894136970 640614994 865050654 703259568 740567592 674386760 962361442 576854146 751520663 858215733 889898350 24655085 570432684 572552726 758241453 414032345 959072573 395611376 786106332 308338505 645618745 123281139 436309395 513482387 700050335 327575528 468251678 231715695 484620824 455249062 602521322 539738645 695872830 23919486 976906828 269632134 486417093 167084978 460185323 745863089 997892307 11190107 853347621 871906626 873406307 834642854 938871339 965993047 990836480 487755748 864273019 344962989 836828168 452341704 913239687 354080064 868415230 750294444 796352125 499492786 885466075 125342476 716665308 624879750 681056836 411264501 960878798 223601004 313078904 154324234 277544561 213822413 954309880 592881965 855826776 612347841 980117421 651920275 882789498 738161543 883230301 323656954 672722251 626875711 668590647 895213911 923051962 323658855 912299107 339858268 918934127 92739424 752807426 961359898 999149971 54572302 488446047 914139619 970561692 628683194 883695422 529891521 886207796 29705124 340226753 353415954 885814499 574836928 873635760 333374713 375208683 641762994 845761536 209994616 371200379 399164286 688243035 359314949 726016593 52418983 91152454 141338433 406378783 441065092 585450257 486951643 605851259 55517826 729316737 911245404 939790043 571290179 997627987 43345708 538687802 399383171 523685308 824982874 974871635 331157121 914639537 56693613 715812975 414764850 681584186 833926029 969761259 501461422 768438293 767026261 964338460 505279459 795666115 506991034 685256070 675962718 823661553 158766133 715417894 223424323 226559274 149110678 923433203 170728877 587696661 482729750 754796998 113263486 399297327 817376135 930814986 221736234 492727859 671873464 728902704 647670933 852759486 883039350 892603642 478201051 640656249 945918187 962293272 205291945 206672244 111807499 381786266 873860492 938323390 879197401 942416765 505755714 783120980 111689791 977232069 61546342 263147473 378006277 525274657 725761570 823424380 300070100 712579017 325862237 579468387 683899740 826211457 391410620 903429637 395326116 420180002 662854535 854677359 784912537 960807925 922048963 954037661 174305554 394170711 577573445 676928956 921210255 951844263 323723166 881634774 358197627 691518651 886763047 997924902 335975068 841700430 566490821 693937861 617866902 969954291 763331265 963294452 304761396 437207552 901359259 991567946 663048409 979591343 36019443 408896906 418631069 686700434 888291943 991937321 474436145 644175173 130570535 823729914 22542233 479069372 405108713 640018361 11162807 115148048 291857390 393784574 498515116 681851522 527010210 676943596 546767471 899718669 352769946 763084035 498722602 820016659 467549421 895234312 695799047 878282321 684203958 767381292 225320343 928341818 893915430 920757394 447422802 953697118 466081727 926535505 251230451 533298092 702970067 780412444 254231502 723720284 424137914 485041345 184570148 333991139 927209680 987525863 654948552 962151505 277628624 791513829 3450934 639490419 199067075 696404449 519840179 671780020 344580604 445933167 325716826 666534137 650557286 659359592 236293148 817272302 480871022 570513388 525098616 720552312 414588941 990431113 986619424 994353664 568087828 772648624 607934896 906034639 782112434 835046478 83922228 341846316 624465501 900951929 20315448 935912865 21279928 812767099 183071696 400249065 841705388 909356296 322878659 749016217 113244563 928208031 769809698 917717571 31522363 996256690 531275649 792850233 454684150 544090669 788786557 861682117 638078718 896583677 893784242 945291282 368734208 437700963 786515388 881023612 230837462 717612834 844707752 870183132 103960273 925324678 828719290 991049434 661797035 702097933 569553049 806697446 12682811 522709183 311557572 395784771 976013721 989611806 96705190 754523820 328973376 916590135 660952601 898921993 865850133 886499107 375213951 775698596 101367969 239762763 994125844 994744368 282343525 638912227 899483636 931176557 93808410 312421732 474376139 912621985 511289044 631023539 76352766 557934461 969510317 994075207 289203007 484447337 186307608 581713624 696864743 830138274 611362226 811537174 335920829 572101442 802958256 984924719 942835602 990178661 75183120 674257942 48357636 80461623 442581926 553433750 780065213 946610648 25762984 102792952 534263498 594515562 219970706 807810124 720452401 842915788 389265326 773485875 720062434 819180332 821299693 912798898 421387563 927477422 610316274 868871047 464076266 467065621 344317481 431199658 674288162 815850853 406967592 579720704 234645891 792755424 39049800 376806161 334995720 838504100 886549966 896492652 122023541 766275239 859616186 933306575 597816224 802821013 905550654 966626237 622438717 918768006 967423225 999832149 240723439 737059311 665043658 717767815 197189244 685723815 555997799 961911247 349865914 761662695 67787673 812432171 177115045 278751080 962664176 996816410 598544985 978720323 440629061 648240589 888085383 970729745 713030451 805916517 168560065 853973907 725095699 915538456 783696162 984755452 662040194 962081600 132540559 222474257 722534118 764601868 891293196 903778269 707365031 961764707 975416441 984173620 262823953 342147906 229832797 549562629 947643117 992650162 365025179 837993591 380432713 928466822 44118211 954962450 305191474 616842518 524181455 663641076 612498396 742865363 639382707 659657372 818497889 991453618 136998626 489923265 257817086 473827592 840220309 896534551 316131468 328605845 163475442 294113890 14888804 316378148 210416045 458237787 798422574 959536550 262380070 330338370 625122201 876028648 19323675 804281956 274303638 580529163 779560527 843498537 631465250 862773133 895933608 941234143 512388113 739323545 477047082 545655368 114529350 950139496 505823849 609529360 375544603 647229604 975057710 995744692 280533186 648770887 361776539 374356391 465213621 769177397 338644113 632357540 642891571 811302989 463088279 706007515 752158613 867466054 339931194 391627268 49598670 855064971 590029571 620049195 318592778 559651093 728286085 879112605 964133286 985931180 68950378 223116446 607915146 860525837 858382153 969066617 908748511 999515943 278842951 376379313 786642987 818653579 795618344 843943002 624965487 964909062 527555370 683650228 842623279 910015864 680782984 871151112 759587738 814117673 982541527 996555493 558211077 947404971 841980343 997345525 253292996 661227320 775466209 864088210 506502344 553685166 836713760 917229425 515601983 528877623 561930770 720957813 381537119 635533948 14312039 272710615 235295697 364696429 462806284 711616870 195465928 912564957 864935950 889883752 898493454 969444005 481622879 705688482 603191357 653397575 46015866 849957753 198771117 965064982 559011125 889843850 269719119 579311005 749194820 980770468 518475839 967030029 598409915 953933604 363251722 802433381 545124283 803980313 926950605 976742188 70797121 418569374 875717966 920768311 340655826 609188324 157043265 555405935 361386843 634012008 540665014 952940024 245036421 975934521 226828571 573670517 422208364 936768424 846522565 999548415 820580114 842470061 48698471 912667601 991273530 999398008 108661178 597229415 46022701 864163066 561581820 594061131 771567419 876379846 275705799 355359292 726609705 826425718 835034789 865924214 604108783 860783449 555415827 605770103 242473219 641783212 221259172 862189550 560651291 855915196 613802865 862581246 209877749 866591249 586016626 833447771 441643146 888621824 289924048 660316745 264215299 877882553 724500113 892565119 136590165 303982864 108016153 532275187 371892223 947985733 501118584 590390246 696063166 743476455 51326551 333141834 985012766 987703908 408236635 473619436 267838585 846879101 824298013 868297605 700442158 854301065 580690690 942088504 765750874 813460759 447459977 814030491 514702820 648152208 280456397 493859767 24657405 487822924 412140679 509225826 636660670 752261381 571468659 591090303 11487085 251178966 830620835 953731343 439688772 821404063 976187626 982376516 163800730 894813015 573472034 946560501 898772505 975959267 674109347 969403641 996143726 998880520 127448717 560032670 923919182 986374814 247289004 394133887 46875421 659003740 828789056 942209303 813517014 896052110 829317531 884299282 155310345 364149097 758461241 936442804 826792533 995443887 765040594 935545609 617420904 818641022 557621469 602441065 740404506 826107064 680734193 719553119 892897587 929941583 896918291 937446906 88496151 136630802 147493384 253583318 267429339 583145112 910439313 992652659 138531950 615828441 378881655 462442041 705910837 739112398 780749703 965579754 595932039 873882927 430988787 908885546 355620132 423695728 20643523 283784805 45083723 958582851 85375103 271069438 920480578 972249363 282315521 526201881 276752456 542936777 557601061 950487090 118026792 775920478 271286110 552317204 823464962 854970470 9062755 270523459 784896054 951708336 27992466 837624846 125467270 138424925 515729260 801371324 207476800 499640747 305777028 400424298 723653626 835257773 705840122 905938060 265219967 687616477 655453572 696823275 936396501 973842484 235700869 610962898 377791473 523036777 872432562 874157985 390045920 607343648 736814083 877046033 467272685 554827512 958049198 974843865 851215715 881846826 666247966 706820691 587184871 990312195 172039332 548794267 909042220 960446916 282915694 642140808 902388375 932583005 703198864 891129724 371360290 544434502 119143058 766943461 66716607 720555345 268371115 745079852 428198228 799633891 405980173 670271676 499958501 508876189 95964750 818786008 670450588 916916741 182752123 614034546 873024693 980174342 856357440 911818332 50198220 93219050 139418675 676816862 240470392 630386668 337643443 972066860 851061821 871503400 283215649 439727047 276870086 756722748 58677442 589550570 526852004 991212289 632937625 812538234 432366345 465361607 428260241 729372895 106826928 643848699 497310943 733663361 578313733 930933105 110876628 844366681 989684219 995689251 817950277 979446759 571806100 719144145 231816414 719136557 136441535 281161019 903723872 929475614 838849363 997934634 102534469 760045976 323657090 938435590 7438168 740996824 71166793 671311661 756178794 847017428 883973037 942414223 639521060 794982283 416012516 510320919 311991942 379683014 807101703 811318636 725811419 847435290 618802455 959190807 330711195 421287553 760674974 823057475 337584600 369624763 574232133 754413945 219422959 553622729 186402211 257825618 416743813 694593503 914098222 963183249 67829525 333549280 447411242 935110713 528340783 793047152 547850738 573895201 453703276 733100520 931818947 935192106 786407865 939412200 259546216 945909835 857609059 913469955 710479337 749710037 674997507 768427743 259599056 713933661 639114567 958825640 539426483 888320856 164745771 845272954 373699013 385766069 70921160 585938523 380762342 427714361 50534159 308013901 832108977 951439976 179406764 764479081 549376493 630690604 640030883 956935217 823908214 897455066 984529820 993519489 739509929 760427014 517551251 701363812 425924889 515631457 5033069 150831806 576692414 953836649 850261134 968577139 536984491 785590079 214586224 329990079 634172671 802234870 818216491 951764896 595016004 774931773 248332015 350902533 756582193 915204087 308125628 440107879 514426955 987267016 523375948 768351299 805918357 867635325 545545856 662160345 759813133 823975118 782583283 790461177 41450171 247699341 91794541 574014117 270705851 405771573 169354067 316642931 20165692 287429187 983270953 983927018 493989310 825577169 869571999 882324301 310092369 347237099 802810238 968111624 346759737 635562334 480116109 612055010 591685638 643227442 973632312 978142384 946557078 980281564 747291884 847860008 926504689 947089973 84576948 957251577 302349190 654978594 223769681 350913128 992832776 996421491 938115694 983134114 635870477 946104210 427921593 770671825 411326503 446175529 285837738 376063506 777305516 921992275 355331879 588205491 107940886 162294459 54978572 927446771 646450582 801891377 391390336 610751974 747168355 843765809 472191787 954562659 492724221 642150104 346586587 597168254 728933067 797474201 982195293 984466602 963241559 991803204 645472037 992547452 403429853 948616293 975659311 999753246 846916128 937871573 570730361 764801729 5427635 369411032 583784925 682438480 764662443 772973085 95405856 180328066 921498256 973626927 563579286 898012656 517921284 799283216 835331296 979615649 752822660 980795222 225521750 389718348 67332543 788993478 530158262 886932775 877408336 944887406 288116754 961437484 696427746 983092745 889940105 967189031 921045772 995420200 778403345 815068752 862204753 892107906 669949221 744041925 712254386 951978869 481059802 840505040 377217233 985617675 282298738 733079175 225498275 718090080 607759973 842704138 193040077 798627420 584745469 804451979 149002400 479485181 862514074 987444197 372312553 704816783 477268670 920647254 998530181 998546286 553591808 766667374 234593897 947534143 351108545 812333118 460157290 571474687 562200838 751466416 468968132 918611945 552529897 938642421 18812811 579539743 852372757 898828305 981866410 986156858 546152169 605203126 380829109 953817497 95354848 384721685 41753355 400846672 467807333 738320323 370950660 480072213 507188532 586726001 407583846 572977995 387315827 534165182 867559562 931778316 768280664 944290755 56739570 134597739 770278768 821001723 811678971 910591767 449721617 564648601 396336358 898626132 948989531 974729309 475831239 973585431 1373018 852057370 680844881 734166920 291718131 730874855 180105901 878730338 444334381 784039827 21847329 746917441 993017628 998613092 3112602 9446155 465996942 781671124 615828648 992350876 955802371 997250150 528899560 667048285 238688565 262757441 640659150 725855097 64789292 640265044 136901132 498086359 530723253 927580742 427400824 498450051 363722029 597102236 334565941 510167794 858664431 900105889 697780252 836751080 561926263 967068305 841088206 910091699 387181093 877753684 898073056 979706270 169475734 424650588 207821403 876804858 221313599 916416583 860074826 976135808 557028318 839596399 172479603 970352523 214566701 367484465 315383667 721164685 926864026 957366976 398532653 926650514 263816747 573496194 526304508 561429479 413153024 681415328 444522506 760295958 956694712 989442720 90113821 167986877 937358092 985813226 465873426 566715369 512017199 806406670 817174443 900408930 387677630 396431704 221495083 477465176 467419753 859643744 287128985 632060167 536755328 841302404 463190635 698447461 79411376 344845034 423873379 962230512 463398142 705686679 690533670 830468061 668710648 852742344 827351646 899062754 241978673 899034947 988665159 996257305 286820012 745449288 863666648 870714959 507976343 522559957 780709259 955069509 725345460 892449807 335961885 988154622 630937830 991699570 773488566 977433896 519082282 667610488 573810095 776967284 784063943 948268850 559680912 861054272 912212134 930102577 416915510 948389245 529024733 604379322 881517148 980532820 739003014 968401786 498737223 539603049 110476312 538483547 248001727 848415872 570431648 904826477 861744860 950233264 598499967 692355452 855052008 938801808 38522334 389311135 945864717 997410304 148335019 384657533 898635130 963579776 174717218 421787205 698345488 742591992 607215299 903682975 153948971 685488773 956509708 982287144 369857300 408347423 198888849 805956402 388858142 867755308 687172467 688450048 751278653 874328632 395347719 643187166 533611789 815774245 963003075 967202409 208829599 897649101 441980376 582889193 805044175 852819913 181554174 933761024 52353092 379174491 602462918 726751373 973105155 988234166 982013923 988796855 303004205 514977803 946132813 952376075 287706491 415081317 624875387 958371364 253023812 350375676 384942418 706045970 996116022 997215858 327197864 912425225 570144261 928449260 817135880 964663012 621609383 937604053 485646229 654637624 115145445 383741636 845651189 988620796 253452567 691888397 45311295 927339645 391473164 992784331 87811174 928214511 23652613 718157574 922342440 994288483 895758937 938289539 454922914 508597380 836402334 906691742 143829944 610820670 428525277 932931030 126372824 606048598 106071088 379416296 733549281 843091673 795264705 964855917 228536732 685563543 799713099 883070263 967382867 970230629 385629533 406902236 490980493 805285327 300557044 847682074 958368969 986515646 771377011 847400002 659968192 758620709 363377319 380563226 890753328 978355542 620941334 803835031 338237042 922241060 122144847 340268895 964702497 992598412 669858516 889501398 550609163 735816895 585745552 683425684 527640284 966831666 909963811 971081845 741916456 924891799 236602951 795088210 364286595 371841732 638205650 922530501 48823822 103916569 46048997 207892298 426823987 881710005 466046103 547261078 1225383 167217371 402986891 473229874 639009642 771939056 893836241 924437514 724531758 810013752 622870080 733609117 304536362 926036729 713707986 980044986 507531344 776215924 419053562 790718865 341427981 996672640 219963761 301762739 728170698 772036758 431549934 472689991 24592384 822037744 170123148 809212491 835711907 984656623 618872722 655242462 340086567 807028160 140803275 155039398 522499072 622029425 982206540 986166016 568505895 741761616 737495822 886528703 907488896 968644331 29001364 582529218 198715182 466563926 591386662 607139117 622500662 993937607 965053327 980045381 863707144 990052424 566571593 755850348 209234435 745442431 287320999 845632878 498199735 756370422 666409674 991006462 728263793 967555317 227471120 770680544 950747624 960333092 303320372 644614059 510347578 768595549 630414329 935957186 667047876 864048647 960441531 970816818 237359103 249293036 642238125 944076685 584162134 791639480 335087236 913560734 878583896 908069738 317671952 490317081 42100820 718302788 284002574 709629496 402110930 467997506 230909155 802851455 516078352 865264772 84280076 400942104 426537842 448057351 731234587 751774437 136256210 729885784 191847679 224088979 485710428 546852548 85093256 926955986 762689727 769745028 293696322 841195441 35085968 694426733 914807603 965198165 946907703 949698109 146490953 893428966 284726470 444417224 116201543 434944741 202017758 667765550 731593159 870527788 53720145 443968075 390696309 730350686 534600582 892785227 586991952 867169549 378438762 629465441 578157645 738559411 480900751 810518443 652514188 774125562 470021514 557954846 8036198 196099545 419916534 563871754 552679650 742961916 875236876 963176358 822292982 966427926 803012580 964618612 639517538 966027878 607025982 799674526 55468951 783636638 242352107 806140934 911520637 990825521 294517284 381974842 55052472 505620973 760998462 780919939 283811299 357835620 694591763 977730291 962411603 968131275 700684310 943740083 480197635 894483957 931540052 969958349 193066654 585270456 304869725 651793040 914027858 981553588 854797591 879087095 62856039 460764240 873122957 916851218 909025223 931068606 819894758 875809127 976633213 998464681 417325543 490423680 919860147 967785303 264535405 950427737 41296432 855363026 626009549 952204809 72906177 384960382 353954573 821726994 771946360 806333386 990163990 993248474 688638393 728480359 615831966 633103870 339193822 447349326 996369174 996592879 437293286 524712001 731518360 855251869 677796717 901993077 681914820 756517904 132638748 624386450 7339817 838603719 503340684 839739966 576235932 627130505 587491598 598136737 847649935 977624652 92349457 789390766 983913999 999554431 815528679 819294524 621861678 815719983 446082815 453545239 147980955 960261722 299952519 483826830 706628389 720529370 489028688 992232882 456713992 774898473 356327299 463745403 176103685 371616662 391756860 445946907 68390531 910819427 657906522 748485450 616290092 690524109 347770945 451659153 950835115 963310392 768707434 855560741 759187235 794577749 961877444 974119065 996919043 997369611 591415469 932683846 772638183 840887590 228875487 398256490 756857186 979175339 305842790 807763543 436003061 835328027 368584971 717168588 370479375 946167427 546233193 694270928 564696761 855294032 723848386 859233418 909223142 937111010 51717847 937851658 428737745 630068251 968871225 989854621 302176243 845622060 41893304 599541679 582834072 850000946 527358063 710726224 561468811 631223160 270314185 845019625 543931176 851507992 353276827 749076079 793177259 945311649 634826712 940160777 914985222 960491555 861430788 947586307 204002531 813123010 984163711 994330625 287159176 301056948 819608895 950746840 42473068 558172526 141186155 689073246 204856821 241451273 794630591 870128533 704052925 863596485 621640154 835131276 600611682 894733424 353688581 648317600 896887512 994171331 179253060 458680659 510112068 974692366 385134565 619184995 109294368 990276993 9145860 728924570 137156464 247469014 662342768 671867987 600380011 665684381 496296987 583903138 865142159 975563029 519697672 935269373 846207372 909835775 140411082 143946478 927119530 929187861 23819213 630105086 27184183 780416725 465177184 633932153 193748073 911288952 363191277 807625304 479762399 893480453 664511728 690696404 143061131 882924994 284306870 733792646 578030267 840019028 332875351 353730105 764364143 863327114 988031724 995466966 687704118 764800675 61385846 533823074 325560578 659472305 652236982 718886349 162385243 861698461 537780982 672768135 619287687 752186244 59100644 305704009 213904879 439378722 407669578 518177914 183124740 629811888 514049065 728223903 295598754 600161312 115368035 677613699 965908589 996177563 521907427 554531615 138815468 578550277 658713996 726017248 110482151 142874833 424927628 699525953 586078145 961219733 146066339 684659679 211894971 454625927 370752334 551053204 114029311 324220985 813736992 963875471 254802580 954886717 485818228 822362747 847945000 918996391 742387571 931453828 280962331 446169917 201032192 900911894 328297527 888397281 211047573 400388698 955959978 995985999 297966418 648439124 399314580 772439134 438433943 624982026 7904804 391219908 915893071 956968311 372490532 544712025 227110274 270216972 54656622 435968910 173565311 962332692 140341693 402462683 761829296 890375398 59452310 676795344 592647086 649612140 932152692 935896493 909890639 961913980 954748733 985055384 906106227 921750410 414748222 477564579 31328045 83375397 559775896 935237369 566124736 949640775 574822346 855382897 408279337 784190921 126314296 155901238 381168373 776380190 328429975 663574305 378216554 729162711 64803367 275713654 73514761 404962134 36663334 330296594 712899280 818833278 396998303 712775621 528081627 561353840 410199315 953496772 679128471 978069859 396926466 471064955 389103564 994352546 418591838 963833996 210268625 689707962 467005081 665804403 565450466 691376746 625366574 794724221 264509084 425432739 130982322 728428432 757943322 935694009 358657380 808380536 432834001 699872140 160169383 182990736 246638239 906544750 934601964 977896568 313572753 974862220 240834174 672900022 186335648 720191965 288988854 804281699 885636583 975827925 743879460 944725726 228945587 631243555 764080145 852130316 330526953 372894344 664131360 702325918 985827565 993225884 502184131 916135218 319550601 339339862 516347937 591085040 541849917 576287378 993311382 998487876 499211236 803538271 619339700 965442453 639764121 859842317 543550152 613837907 952899740 983127451 135755812 391342116 562656575 701060405 907155969 930755757 820559846 917079322 47343951 149983884 549315889 966407271 477253720 644014296 252527389 785998777 874738086 909354525 487624630 651914709 994984765 997869624 7504499 263289492 514153093 966014897 949326150 968702140 210661354 765514605 304765551 998018389 174390811 905698392 551729492 965275446 235247878 462326250 238509990 371684534 287708416 541624785 8951035 869877835 824428950 902987419 339324109 783041847 2766460 163094070 119556801 441222366 117816693 981647115 921115006 955323822 656765041 969576991 549889336 913548567 843580123 957883662 332032681 726524722 169249003 671186033 81824046 620683421 454257146 460454279 326579984 637535533 235930430 619563468 70130883 843609792 762830510 913626134 932620293 990052164 968675794 993843765 308384092 382022789 85574010 730367109 500356446 592587785 111940505 991629212 738943481 947569561 438112122 933914605 920385372 951730102 829257917 917176904 258875761 753850915 832586295 901825990 136630963 227841135 170586072 301404679 264844227 277928380 605584805 605627559 642397498 738630569 47860729 530246248 300414706 814546621 44211058 295508402 731410099 982323737 504191084 962401359 312763629 890871022 493241264 510546934 485741145 596293325 140798097 724208987 417457044 515254388 477314644 707886588 716776338 959523415 785380061 832389777 289795033 860827943 584617391 898199325 545539339 928888105 922593968 959204931 544201110 939836721 482962136 849014678 772952992 873662271 969113221 992014039 212923591 274472070 466042663 895869673 311400688 884593196 677183347 901949493 16877634 59269030 941671620 997959271 518659998 826426290 485716232 487902033 521172934 545388003 78745405 529278318 721622816 850108676 94608569 193448957 224107489 510045223 802581172 809985015 922866132 946583289 912359433 917438101 502332325 744333307 129601800 531277812 50444914 153660319 715561555 806811084 599023470 941663866 127751495 353546895 44246552 249462626 598462399 747498527 355722846 475718162 337127908 533760800 406687037 584135619 297548263 967245014 930230001 939235716 347563587 965394794 221447241 752026432 330858831 870135579 136665462 200117290 81070420 747025579 896272772 905250227 353251826 749354776 347116385 737800310 690163849 887714962 339102323 551744923 284735224 301759896 856991005 979755563 649045677 731015574 302471702 863396481 790543907 808467772 298667811 422828193 581715716 733139773 31813482 694264782 545513395 687425964 23901640 246449706 580597486 793325611 337125199 733550668 703173892 722352359 596944688 928526782 400708875 545726294 655557690 867277566 392191249 671945337 955254990 972506499 913790895 933780177 692253565 920197820 853112543 858872254 637079601 786542319 988351781 993801159 486636533 871011603 55793156 610433701 477634668 702427435 806249809 904930830 292503674 779749522 958719870 970941573 831061866 934461775 938711216 969667992 842281733 914987010 403033840 591707589 793744535 959734133 158072879 715414502 556606421 743453538 745692487 971932533 350300120 517707028 223315054 344088657 580229796 978667556 511444799 791952953 969033599 990912768 572725622 602202810 114579304 555189116 949983543 956679347 390925878 659091807 628192725 944891320 645946297 803376092 796846638 996100682 830271748 898746517 639715000 856148849 781142315 897115446 465952216 685240452 94227045 895038202 55190936 487104532 441699325 864080333 726479337 796096488 973241210 985860237 556383033 585660390 733713026 923339714 82920704 859268225 257797581 374108216 61680416 368460415 126835930 405740415 478765659 869949538 391910743 623373318 252451889 698392133 680023946 944050875 262255179 487201074 534097001 960453275 501114450 620521997 591232679 696904626 17655467 218032524 245205728 674784674 829751962 831161717 280702526 529315273 604732864 637867846 627589016 672559945 30030660 791483898 298361788 546124378 178199869 968447136 304237317 822467806 5182642 38678170 422241349 610203616 589929145 889160872 218716155 559928769 728412679 842720235 883160833 994469726 541260672 726629321 890325798 922362336 803323769 895268653 430778791 792773816 905604660 968490274 554507517 555332317 690709639 743556920 868734230 937849187 926194262 987585397 210876233 564457127 751610127 993665820 609623278 855787134 531151681 927976591 66726816 390946461 614352623 726926232 124968086 372718425 933793065 942206384 249426128 772498783 475306389 927895598 914981804 974008432 850178878 938886594 821968193 872606103 860369451 975503569 76955413 324352230 42862049 719777757 259252192 613073506 606931947 871134507 625964103 799719610 88283379 820953841 459980863 850849496 992481306 996852717 688830125 751529896 293602827 963700997 350136655 848621750 826892061 946298119 247398793 968031698 768695044 896818120 196015583 606030390 256723215 402760548 824311981 839094387 496825460 635876389 586578388 908499896 766028163 980146533 466150268 961974330 464922031 589815761 521298675 798066502 290701924 386474586 839706195 919936908 383443040 660099815 156434741 167244103 129464170 317911487 226300387 790984122 481954043 744997088 608867414 923831661 869788820 894179948 848733248 889779484 541146955 968754181 855567941 903184026 432557815 720448887 403561877 875294941 359536356 687200560 178880868 474136682 299808910 596842156 493905172 990352371 896687499 999281515 56262268 854296218 274653758 331527045 404907902 588132325 381260559 600495816 918576388 946887634 46673863 457515458 507800263 772670618 336126467 403858688 31434089 181735256 344451707 493573351 243376081 868149208 592471601 935320204 193602683 488013432 200812371 917087989 229585496 270124206 68129518 863484332 777888435 799039280 745805821 787833598 274925252 864986825 448807285 505305886 152239071 572793520 87353354 875967249 891285848 917238625 272988537 920095930 365963763 867179150 863662432 922552545 56653444 686802903 951430076 967235743 328871925 766134259 449437514 509456069 928645276 982336738 566097731 974820510 996653969 997025774 53224379 423052813 569406461 640019576 686718983 704467124 160105272 178948518 128270610 260478219 293506315 364910198 967306255 983643771 564868397 673932384 60247288 692419131 290820536 880601508 999475029 999702404 788451146 794290263 283252586 606344529 559872826 993810717 772716742 995944679 19715242 729187324 748393105 790481680 224842295 709543799 338331850 505814607 315357331 585607652 567253561 956484563 254004025 463323854 818252153 841337876 743389716 885369963 213418389 839824884 387073459 904694917 59536902 835048408 236423948 857652513 265084211 537246591 411865472 612605221 857862851 869923946 28186077 514811389 622527332 973342352 114501522 652767218 650028418 895163570 201627844 678930602 455228780 723761213 882990560 886938609 854028315 873221158 57955067 206881518 605354128 698251154 100518129 204046103 719789372 899149207 771001128 832097075 315701010 528794438 541352026 903868484 338274279 462136748 819483784 997056795 726273175 937128467 138421819 478648133 226542163 504740274 900796530 935379283 307161977 869255132 402627303 789199423 524983061 550229817 428872282 967203016 342200144 467590271 771500571 846299241 323512432 864918637 177678697 926757223 286570607 442258477 679221939 971891028 315272972 724944379 993585702 995330345 616724548 859617224 604708685 889651490 1082341 560139548 803222902 998633542 281059971 810960940 76546477 388670485 4492833 744865993 656789857 788266658 481268869 714802578 719777861 746377192 512447183 828936511 479168228 511944657 73900404 568929899 698789820 863482877 521806090 598893578 698231449 750376858 625333811 643587043 417898436 705752411 384484531 841179906 207678192 587210149 84748731 896852335 658931043 940593411 90672664 768572375 930250604 991947885 142921482 806192869 256796954 513131733 615932825 635270183 604207844 795565021 201381527 905706106 383256530 852284240 124185757 414750047 218804196 972904083 648470822 692011401 874389061 918255129 338657819 837213725 986061920 992479720 928832068 957240099 518001812 877373844 386748466 581630063 248838185 534732769 590024385 614350806 553987840 905708774 369232357 808671952 192690440 865666233 638289614 892229729 592893821 648038507 455592084 659859154 956355454 982743702 522141979 754419792 820550237 935565711 212299199 593696141 393444190 978612244 477392347 518373826 186958854 495863591 940210747 987257943 583029561 944697155 352821682 947936207 321309036 647327050 806220652 880353983 949557794 987056713 202384362 815549498 54163717 687019395 466114046 553480596 741453593 798925114 649299111 877941568 138384947 530353009 744357911 982174127 726377520 948926118 984576323 996490397 717828481 835664077 834799190 881028140 969202674 982993910 813257038 895202417 614275711 618701127 344185522 546892185 574833361 765113674 830971975 890686570 898868262 909620410 498117323 833986870 948823272 982755355 432981436 626507936 635159855 668648086 487487565 824256753 564129243 568705696 604285773 684816542 439257584 527243530 168957144 309958748 972330770 987623447 750945465 939719968 88763804 677755410 478575186 496946329 689647157 929616670 372751065 706587234 769454339 853103842 822604059 888687624 941298170 944229817 3197659 139177602 932503379 957062565 770517082 994604435 844116057 886096563 187464410 220675895 728356804 752673831 239138803 316532929 168603781 882465661 556619085 604463226 520787214 693140830 399473837 983878752 634570379 946558732 192133077 760379940 439800451 736793250 265511457 350786976 999448942 999555953 692916436 893329832 589045755 883194549 243781041 539523811 92799282 304017132 870472118 987946983 192383229 360177378 256901949 410335043 16664216 796785457 147448081 954047499 706444224 715824792 834345916 952582629 793598166 824505128 100232999 156564499 935741365 990894496 724408071 818362045 761143169 940067347 850888845 889093553 342084703 674487820 197885867 627091149 10459893 441287090 195603838 970146939 143922031 390030932 570572277 580337399 682524876 952117132 822422471 922440598 766511417 979020948 500792716 585217789 21739661 786449678 229945944 703544839 131144097 707078574 972457429 976032942 192711617 605402827 680656190 948270029 583727587 952239370 633332387 910667526 422906880 934978130 239022168 982628079 947911601 964340163 258030798 427478327 180043377 572985764 189995996 355879480 991122261 997047120 766687063 793831235 688816565 706871924 393837105 735253630 604099618 817096716 122144808 389528388 250333233 886967562 471696707 822782934 410349101 502748323 324127557 660756348 352257748 743092457 46359839 547178356 351865018 602562052 78629124 387994738 174640512 643707434 39473320 885332889 78280360 430579508 236284438 936379595 282407119 754866691 881680877 989329817 895430775 963913147 848953865 866026217 920111380 994939106 818851414 865516733 556295656 649056419 316386547 601361962 895542102 958489156 333531131 930076970 920920881 947200260 46287471 714378563 350260550 826418748 774658556 947438195 788954381 793562515 981634325 991113277 872096730 931056350 302499209 867431149 705156667 957941262 422150418 539448911 154238135 710247799 143935501 654188963 694397958 806692364 988218834 999817822 380322177 665561423 547947949 739756611 818428016 937754393 776724205 925187170 782789769 906718211 845821010 960727090 939095719 989403263 657266439 709239756 865754271 871681562 987234503 991707099 681748428 953882237 489705513 876908267 525756395 713918089 745636257 990631384 889186067 923612382 807634271 905775439 282895863 504878088 571594458 955775127 556905445 705240251 769287000 936867989 520410516 693694100 960964402 990910360 195713667 275310148 486531362 651118395 386887861 826322123 138040408 340271582 711002171 962322931 445602065 495044221 499149956 858921787 544876189 969533771 535924018 874046448 411392651 889651734 194522958 348392909 178255431 545516996 537605673 636763054 701994944 961449627 873161070 986637203 932905375 978288688 942354449 985565581 51683817 644868814 320147043 911735930 972402047 992075974 136988858 502284178 846507339 963900705 899943870 966941693 513033565 568870756 710665140 740491560 857418025 902216798 863944182 885313653 972076525 987258201 699188163 856703677 580554783 723218516 962846994 971040797 419633877 734903441 515408915 924607516 701442980 777046628 118624491 396861919 513199227 700867315 634525704 939003892 378985687 984577680 361213325 612812433 913407086 994260324 346442856 930841698 298973632 660638734 602660437 916525379 451896039 487420905 132693267 367973970 30728749 464225978 864078648 970736326 772444015 901730943 518282194 798850270 650303715 820154779 39589945 813215960 949881991 957188335 353266352 723134120 942912830 997927300 376340684 843074114 657999104 745835585 951593114 962876541 813816056 949137852 540044236 654834714 588698636 693016788 590707736 719433505 696182798 808852875 432030188 712392903 574871307 944456560 853757023 926039198 274438321 625612640 995049620 996417928 484923873 935453002 743561918 987928793 712785036 985997506 800577307 920101696 699268441 726555240 709587529 863149806 970235405 974360488 835013609 962481340 954263972 978298336 846074960 981330063 523568854 966813225 638121254 700504961 470723364 819200327 390273668 800101548 575926867 944284792 467251871 492377951 790163192 893986129 727815026 847451602 697543330 890976801 562006169 937848961 298614128 715490650 376749299 514478037 12899968 833141304 462496083 462838080 994405711 995814831 426645693 627712016 847597189 999342862 998945319 999240930 216417155 552747798 52894331 76009819 812110693 825096755 430739492 431038974 84549892 361582527 450564844 712830569 938114518 951777501 541287600 731878904 624494037 858583932 650549584 977523132 816912149 934953287 677198969 754782320 718096814 768131152 823902043 983692121 293853188 297547831 694910664 849558931 393727957 889097030 594742104 856205124 12501236 340344417 843946454 930520351 876368906 972155134 906264126 968352629 211650126 767298115 399284192 758604612 13553217 870595030 626060717 767846522 271234132 759851543 38104334 622742117 436468426 605124463 627082098 893286074 676061530 914383806 397960434 883792206 638529844 863140410 252545306 745423902 111076282 792169870 521953779 825546756 207183076 270609486 224603916 632322654 597303306 880306883 616151512 781343361 307720374 930088598 300852835 398521480 61744910 357523983 664252068 829411796 668050664 825227186 510393774 537153130 467863563 798441572 203991866 829095660 184450678 211086390 740463279 782518758 417154397 806134695 71897364 935586465 200868746 641938343 282345566 660382060 402087942 731937262 987135516 991089075 778362070 889152549 799685105 946436132 601188832 645873228 204373693 998863603 457164915 594588841 703309144 818966729 483901484 586736659 374583210 512158906 743980412 966749736 510896781 819497755 333013320 779720031 673635536 793586018 318977414 417969608 669346225 869269744 896915313 902419906 353650470 914157389 344310638 932229632 839893784 855427615 54215897 551892302 822919468 836064150 848989069 976886781 818409373 955231749 484728624 870691066 462816342 534211633 480043519 613476585 360288751 662729560 525226731 909984431 676889105 974869696 345800854 557691174 220469562 802628750 505575698 874205983 223672068 896586909 127210284 905748764 927934432 963199537 381114410 410201047 249178753 854141960 505245883 527991468 126532090 285920576 52667095 859594263 411274946 810050965 554891640 817752724 323182615 759090049 567672309 618688996 610801811 678908886 534477031 634037404 503717422 982801120 61916401 659547116 587049606 711788063 554980130 794313097 589617126 875020701 947346646 969136008 640862410 846395216 128254560 733859436 455592714 769486418 238988969 441170562 137758949 904467781 944342275 973958684 655310942 947229336 387536328 810373736 221393385 620585226 881211721 881362421 950295192 972296245 904814280 943646175 224922394 509343443 626688387 755541225 819087926 882266405 452895025 546654392 180415097 468318654 606528958 787634963 586026914 653567171 932448656 983022569 164593119 243859724 334835847 729672855 554866513 745193888 531777683 622463505 826671873 849415720 819254675 990669073 732619154 957012099 351099078 426229200 330823037 518289664 734309915 962408155 108583943 815105575 75919306 688549818 164439202 945610482 398028344 420145262 854229278 894866142 784641035 807178744 534312585 690162645 255389692 650725396 612502546 831432814 371529397 554499637 364258311 647135712 87892467 678048757 870063524 895938398 310015274 786254086 329870557 785372417 810824372 852231471 456989230 625969534 98060284 567458213 283188460 558630435 460078827 746949808 445719864 490505265 751174790 778878038 877663894 890035193 209903148 329049925 989850366 992127012 520326682 568559956 418039388 758851949 624089448 710746312 380896714 500450679 252394807 853946681 694219318 783958728 74736002 420030033 740558562 986763815 172609918 880114930 861321438 873217035 664006701 788121298 668015773 899042996 999533148 999780478 368577504 991914044 654995122 916809383 57731045 154053453 479624955 642757862 984830195 997418642 419170882 751383425 760080275 767448084 85936240 852401956 624889540 673982386 539882038 710013225 25571849 90245884 185878157 266107413 650540255 711547251 874733983 963107193 198479744 718690275 523721797 903723384 668989860 936538598 823414587 854486334 63501574 750243831 631352330 840337714 120002340 356333974 930780647 993262754 916617260 997331469 832971140 969824228 826399981 939683279 545646814 685541248 711572976 930435337 849594026 872400127 572859947 696249767 47691884 275083824 637031282 963693685 869901806 878186060 29133868 482830678 376425527 847426700 285097745 632586864 773148879 840391583 236370591 711750688 298547880 429844483 166669471 270605645 793615355 948288740 178286326 811696313 405075532 430574526 880885381 983780811 109462485 525549482 299217569 524199101 877796708 961786639 471055811 990993324 872490248 994434817 757868361 888962854 367348903 732461603 146611473 373513287 931358451 941737088 608959741 788330926 318507145 628151000 779604599 825203712 481102931 702720978 306687927 717168827 160844917 572904436 948546372 984946277 674003188 695156606 626137907 751422372 284881436 399338999 419264686 664605420 48125744 965383242 223680054 467428568 286594314 978302502 632688849 911889051 912395757 957050510 134554651 204451592 966374745 975805589 810643162 834716708 647511312 692253926 377428574 953437798 148848925 995982780 637942234 832016000 631924145 944838544 918257860 994202334 751476812 803124075 157765648 639851964 491267413 659800344 578656350 910807127 460061245 470018829 197219461 319326796 245585216 364079422 195187642 518428395 488051448 935998966 576545264 785997804 618214694 709094534 302334905 385317749 999209871 999236445 252268061 922982156 616552085 768645241 736027432 980808414 909754917 920802723 291611156 990907071 847632531 968700174 628071673 837319682 165645658 915381923 321782039 691080099 751093109 889891515 2042560 702384138 560467314 734308114 446609410 805795090 87926591 455455007 861192187 880799403 439822186 788942238 915059208 930826765 883212177 978999653 295090245 824634646 567234195 984057187 712289028 756698364 337754777 760203339 955649457 964134077 65994792 223729816 320819808 508495619 876853089 974559036 347961060 667121215 845151213 956800103 472963345 630460017 35497913 330397443 674805952 768061313 653730950 750487588 42324702 646931640 692504286 789916014 929896032 935456436 281379904 934047268 20364595 541941356 739799782 885544425 112084030 467115096 130114944 630629321 72906752 307360249 327299607 452183891 162654759 187696271 450523971 902139918 274879421 968205101 184549815 579818070 972825764 979291880 994872153 999797090 62267199 526496174 995748266 996068660 577633290 718939465 972283079 991901360 558602116 571397652 624919573 928744623 725476108 742081701 131156151 714036590 275392531 504329532 849933913 931571328 852266251 866452300 574420422 874279081 906104735 959148005 720771790 735438216 323028273 896459057 827276195 911054874 463183622 780470766 302410668 606252974 905484516 980329879 943507607 989746078 503012271 886647979 999544756 999814348 582062050 857766427 124767199 467845983 753248071 855139611 919821860 992167119 118837526 867637943 260648522 961570472 321691780 589200228 427537746 903744798 128487186 775775002 862647924 961660088 273026943 790626966 692836756 815309587 600782188 744095469 745973648 814327798 684907201 823400138 840414017 884388355 11185169 989422639 485237136 575315094 300215027 665308593 355919602 583406492 646686015 870274873 659719246 680697641 204610203 931508938 950078992 984685245 941171233 997006095 329862885 408046678 300218521 484529789 955078858 960231944 270820263 639928765 706758490 944423065 842229432 873516288 559948728 617167368 731386546 811255622 483416384 756437557 217404760 342196041 777921961 807610324 267087875 545681592 64835018 490228607 239312696 910272200 973126248 975067639 755765441 983565351 378375470 891651743 864486316 919017541 291378697 541597651 774408838 801333891 15647404 435039994 711990030 714035384 534747923 546211290 718330829 763242983 914775719 960074400 542479171 982928208 175225225 666064721 188408774 344138992 490566935 497976156 660937620 779154307 710487394 952598942 240982150 855270135 604994471 637213807 849601005 954952506 120699324 922852634 369926480 954049431 161795428 564386664 816236509 931116479 618829981 937416977 608396197 781064248 832845462 852615308 174128322 461751851 711356735 970869521 539838483 562430379 51370788 217383426 397948480 473832327 78390065 787507181 484881117 595433756 755501012 812099591 930719782 978059493 357252285 904121799 33369031 770422512 450974743 623801677 820250997 855543512 641546135 781816899 798053900 961683956 654360657 976794593 6492480 764274223 395173549 734643270 339779065 925265509 257160990 715509339 791468400 823560068 844316386 911216720 839975574 896978595 782287125 913807873 177181507 525294885 161000954 891079732 162161299 747539526 879235802 999125529 703170322 838402988 231316329 709001740 47005539 195522970 438495419 867848584 200309073 374398345 560231572 934360771 55375118 511217897 541616245 583850512 560181910 935592810 567324088 957674789 198514419 892957798 460326139 749265500 912547207 958337531 123150661 659898464 55473668 460043081 626458392 954179586 879153300 935859223 253820591 312967010 130183299 322121049 23505922 845663989 730245533 798619697 896007518 983466454 13328367 553436767 769450771 859309429 80790782 94020625 717409648 730602372 275772587 992610347 427905624 451889066 275510040 492661003 231832348 955061551 76249658 831723027 735217721 948471191 497599525 681730926 446165243 669696607 667350544 795914503 854168797 969376813 612589727 645412447 437638702 802095714 142500674 145957362 203026600 529555309 939108727 946278094 203992237 303964593 331817396 494671201 579778500 827391357 888878227 957064235 137670203 837308027 685547486 949118152 214678955 735076194 891310680 955727011 831516479 976381311 964098146 979750119 21908631 507149348 225917344 911140988 22129376 603070547 990782795 992116363 901588037 989771568 238638951 497449524 160619032 221329892 761378707 981817593 828010524 899373376 581941758 727080022 789479717 829090079 287728975 369505907 261933974 326607523 43450403 385388211 632132337 725418210 312834549 716215603 255644644 423184395 452441358 925437758 348973195 829080012 718521782 732480074 552908378 761342651 230602100 724337713 666064312 786583311 870729736 909042821 588613533 875889968 14590284 353894144 257144415 572058822 141958770 643999076 717196740 779289387 43947553 129961503 238456120 737037689 452965393 809399820 724075119 963435445 182101318 728555415 847519596 912843258 391522703 795844132 731076848 780087753 266680243 688651279 325432006 416097516 93179161 751630228 901667461 970898793 110663486 199335577 485528718 949957447 891072972 973127812 822760043 954243088 684890468 765384522 774876479 849892694 906622857 935075933 274163828 443745757 914398551 935907187 421894633 518041259 145337861 715883626 899218193 910362926 482633977 989496204 541890621 721894106 566775044 709972106 40638901 373383443 286317715 675776139 114251757 565495057 856503005 876594127 533644099 570464684 979423866 991554085 633626709 890468010 684908498 931178190 198839739 893292462 675152490 756444700 910575633 993699307 423148499 956915851 562025387 809588635 929547535 931016059 946922919 980249534 578667718 781709042 375022027 656607927 36355777 153489140 272291449 333975321 419067561 510192319 81721566 517786102 592226944 984835799 944655048 962000904 88625104 391717184 987190193 997362213 842018926 903722023 783599672 901125403 847486386 865993577 234704619 249657000 438855794 664745847 165043643 821809110 939673921 992457615 196748023 306297884 889403016 913834881 261438346 846892317 17077971 629019977 341179837 895880411 200187656 654775641 224693833 420240467 887219173 949443593 659170808 818102648 169040656 870598310 381174560 712974993 920021446 960847807 669339540 851437551 780151039 834531668 880711633 992047049 822769832 902979850 313844860 335977697 505838793 737845832 629342443 779273724 629682653 868601552 154525907 334188248 284338682 991950797 638238979 671505386 128092356 912760263 318761722 958694461 622968621 633787333 800429718 891949638 659473013 828000944 95840818 531334150 393864724 718528779 362313805 702287362 11299180 791084158 852528512 917802855 280084590 827073159 25760073 284466283 694825870 953588581 526756177 732007219 911030047 958446942 248366088 894628871 45474097 382605192 824965648 838583071 601118364 664125374 43142058 573691521 161821437 927982266 172883033 528250738 517367267 911552882 812870287 844783451 686466252 825879253 250882365 659773414 76407524 892054819 132591948 501159388 158979136 764254764 842199999 890288175 623562291 862769887 485056541 624936633 755381949 980554424 478150379 485325859 502284693 902349868 940207801 950362420 753831676 788187415 36352570 500533246 117995503 566250046 822444789 850205746 289284380 901828829 216917682 279439910 77983214 959197705 394046737 530309014 276365774 859932362 77981572 286394436 932581604 970504472 261260701 290552515 403415523 462100144 388064515 468594548 85874000 430656189 465690802 524500982 574592198 916480083 302975040 846690155 848838121 911057836 408667779 922474152 620782682 930282312 830325209 952699964 76449531 422115161 151505073 966139947 160955392 291093281 230674711 696700485 366333601 736128341 329213437 463035424 839919171 982376346 276966117 932670201 527409038 883280507 536686857 947020475 700591714 937386317 689784213 690324925 612057265 777355752 544466388 964322691 371153001 390976061 295899093 907421130 58634568 743059691 511431067 617695927 255473742 453606266 289949152 454216634 376472022 599555442 438940823 619190636 437663090 895535952 85458851 455863636 557065356 705577739 259251491 783702310 45481534 270438567 836967245 965282782 995700954 996506153 681184414 685662468 777323389 924541733 324709752 953617622 527019271 583586089 306524717 537584811 139178185 556937852 371120696 837252779 722363454 769740157 835066863 898951698 964632736 967804887 497083948 513110018 678806846 725931297 942150661 975695760 473202947 673006602 361554136 470412286 406236185 971412429 90668316 439273624 166548808 997849313 569513064 586821444 836783205 934453069 897288516 990012066 101848941 964423740 644245012 803600104 48771901 505508705 271163311 454912405 457651661 732666056 903024340 971511744 988834141 992668077 477739037 697414034 885038496 986956498 431381711 950746175 412079533 416948976 887789351 936650063 982648969 987393085 520942615 787374248 562869786 956463096 32935747 365833430 6620320 650851095 860812136 934211950 988617353 998783289 605853687 997687391 73304357 976440204 172126591 469915077 642340812 818893497 76169675 333567083 855554594 977446256 160794031 371590612 194868135 966596274 748227914 966139360 785265919 788807263 454914909 720007694 639780008 711766423 996440300 999344165 215112244 975050484 678675518 838424307 613734937 906946588 201792038 744828793 440008527 679958371 405300439 587278903 526434702 797934085 874869234 970941717 681236119 792779824 423888746 790492792 281449302 464711730 59942837 189151197 561802527 628507334 957205436 998290574 36216562 777216921 544862055 913800340 11999160 759347820 403820656 964285942 58459795 547360203 258986051 636587947 287900690 692163074 523962313 611453364 10194240 455699659 537879000 772186873 156589304 234426308 275367680 512075733 438463564 678894791 521434713 691350603 945874045 983337595 947036671 947983025 316594644 348955392 40412137 148502549 804505819 884721878 602064195 885960943 864129738 884037968 799490030 876793994 149568156 777437603 905467793 930447305 777644695 951014485 315502680 421067530 577636854 715247250 612726388 833600571 645175844 959380379 128600914 925043546 897902021 942457773 959391132 976742081 410494119 661585445 848018888 972445911 641387009 719747094 475354941 560632852 233592095 491750181 504120921 905590491 881198445 925659078 862736620 978860341 192653861 681588390 776380649 874229477 209532607 868032601 899219596 963946794 173680983 427138442 850782100 955143497 561879254 842144324 63712617 282919394 735609531 842791739 954823508 964555943 94219294 611249765 794499926 953460832 218962053 849780214 317320440 552944890 420302588 489541262 128204398 254273570 349546638 554602811 313729095 983086275 347765912 349432027 379206611 798191256 983594400 988698366 118279366 763843626 333559984 811708106 53398829 108260820 147520376 287928173 530531469 926998807 10728578 575987549 985305876 985446254 367228920 688688169 236658544 324075860 499416779 630171828 14497526 202040891 393841737 736004842 384931775 507313800 233818269 813000774 81815349 385028891 268845254 303775735 992534083 996605920 853225071 900933402 412095902 982958747 268471878 758355656 301126807 698949513 615580404 645361257 767793578 831939286 156212565 692595429 254994517 778403917 247054649 983628296 98593097 188974363 25127031 65384969 111669256 863439990 65262199 560431307 947987123 996661138 991396224 998090600 515820067 526373931 331059972 624725348 807472243 809061032 565782129 636525461 748979541 905794616 981904665 998428198 94343657 217474497 160246120 727121204 182982397 669525826 271270404 882498354 114676498 261140966 304543676 604173532 654845039 833499054 756126099 889989064 914658401 996511910 731745369 801808381 81444794 632758840 554932347 678286257 140483332 570754920 790708503 971623310 803028467 821500812 290029374 632465216 780352291 835967654 607833789 971475525 54471955 210831780 430367166 726200855 13462045 495093234 526634776 589409609 627912266 947554844 213939109 815988246 806684393 985939222 851445867 904219076 246390031 792481863 606829982 798918376 172736172 634373168 455066404 967366413 143764623 785569891 80414291 768303780 757529954 899889173 300016406 743024674 345698942 730842290 67027903 673114362 321012926 478302308 130740101 805208663 904695438 985833845 770793633 844838556 12257888 991870625 53301805 931370537 417668213 471506915 414856423 566232921 796621660 895048361 679796463 884432766 247419239 424931314 15867633 413506962 161241517 507665572 615997741 630191760 304225197 673677008 58709402 911883145 758041217 937442515 301387563 994545759 734724925 810470321 836642040 961703006 512044959 518030771 632718914 674811603 36296660 442983896 392405344 910608560 949817475 965715593 121433350 699331127 199661813 446423073 757007503 941192938 821070483 969304714 636947019 860734333 397427682 909120287 469288261 511531954 444760894 497716899 57714041 993924298 383056564 418553895 446635816 589843886 720166260 752405219 636473945 874063382 774572562 922141594 612073164 963620059 781966890 874807712 765765022 985397709 500056478 935443594 878963091 999518926 964671282 984055240 263784050 715050064 584018663 908404319 446615047 461032626 826329842 854683250 706713527 840436495 194641356 257526709 699577089 704574907 399235591 528211965 387932143 796414867 780416619 864697605 914971579 947883769 197809389 375212748 527697566 643373982 51874890 933987253 219077841 411471627 413312027 554403359 654162413 747780449 250677368 691269401 754205388 910893586 291392262 716953049 304655022 547606089 765817267 966372861 394562355 680452001 660962157 788294693 702255486 754455630 984125059 993269837 853227381 911335749 134046934 308357498 662322396 926516991 130976070 524243777 70921282 493131409 906994982 930884401 91203897 476355174 373642914 795323480 692406327 890582826 247035796 568250716 670533456 779631921 910423049 935324497 697276957 722490391 710452242 849018669 832007355 953644259 838033479 841885766 921924379 945066967 494660118 645931929 829585006 864752097 277875237 900018988 930730744 938947543 111247615 379750117 589920157 686081621 942654472 968906711 585927301 658971006 271020190 526056879 28473294 853054822 928768119 969220437 387585285 688223974 280861739 528669831 356525321 766202466 548919040 722176396 80325369 888003968 146452708 587527165 105910287 778018163 551579516 585666884 624015735 850251211 280430386 571673612 640680679 965017747 791044743 808481781 65549619 137407100 521355187 923295732 254344437 311656747 977313028 999584921 430616038 870879216 810895946 895861723 715178731 843952646 240013464 521377787 123111896 461095939 592941244 936240829 308060794 960576002 408797220 596460790 381737921 656536928 823223886 930715819 821319846 983449851 290958015 606438513 72553094 183804792 752240869 935600369 975717918 988342166 483665886 629546857 653283818 988214310 841382642 883798522 455876971 473034025 487868267 800592978 3811257 106371564 315039156 388453189 175343365 571597762 427239360 933618568 190772652 721109668 298254351 785750996 832112285 888289677 158586686 936737824 187027221 468046837 844114963 981270405 767267668 860066840 242658224 999470821 501861846 564576612 428299592 886880975 542971789 725395547 553189547 707059534 557230489 798847542 869560537 887665860 809725935 817459702 924150857 940306086 988072721 992096964 743160807 797606232 230847731 697047738 385720120 453695075 280531835 966716432 214120636 625160534 891056942 957862898 301642086 496090008 320775046 813292441 940322364 965792487 808974886 876979799 412568930 829141048 652791275 876296853 277982959 329374952 731499254 910502134 766251351 817789037 157228182 368637965 299739765 632698115 261475812 633196395 468343408 755161076 933308772 967498122 835538178 919878278 281567331 639493449 209075335 528628585 704208746 792021833 145723483 352560978 960202934 995549646 178202629 735659869 423882768 881797267 281699793 413688571 762380759 818112197 578777889 840403888 798554698 829580218 872922762 892641612 548227105 560069414 419664612 593516344 767414855 964063170 113753793 849969349 519514708 928836395 183734123 535051583 341035245 409339273 742443996 899270414 877226481 989862789 941864266 950081296 373892375 924211431 603340231 706103635 267211878 704398677 411062190 995778265 129889239 513593180 302633237 644630973 93911282 495844344 708334806 905907582 901970600 990516695 229836929 729055050 892004972 892087738 389396081 502427974 131954616 423485155 226366005 280264474 923763574 951331211 929454755 972981597 81009116 444901627 284753954 561424621 422083633 681879022 835396688 836047806 172541102 305067739 97954590 551319401 450313658 742207498 646131238 758261452 38887448 770382503 823952909 850942374 507388481 584351630 130316329 561542993 486877214 840736983 859147065 986606077 391629177 622549272 230556706 728824500 867008534 988732527 714119846 986773778 409264428 557431710 274946244 686597457 458939386 902415497 292696903 483222568 715300777 905645696 439594686 830128236 97290012 969070951 855212812 913713526 896469758 964145337 981816851 989669010 736130589 953346484 847534726 962205711 252720718 555218698 466419081 850027018 375470010 791472123 36176398 726740623 277303769 797029647 568584107 795916826 928382433 994501411 975415735 979052453 447296929 735082322 48023816 683103671 825693095 954076070 918551779 968011374 31212250 275836995 401442728 857231599 21232762 899317226 209229224 299525992 703037274 806199038 426314454 455782945 159180709 906329906 291593558 915120235 269504050 489430980 661144225 793621460 627915318 876395729 398880303 921785186 98946303 114081216 302788250 530287086 383548350 784982125 749582535 825537152 939754190 998688096 573812227 702276685 721739121 769469335 157355474 978144094 50851321 721672679 676815415 893456215 492775082 662922091 537928663 808500428 207529100 715222472 192022672 589978109 701185423 843236063 935450994 981285719 54007150 539557383 717126615 926628294 99884752 212957962 686011631 891497620 123153799 453198737 239522060 428427246 727018801 950186581 112813757 921071549 83304867 672204491 501952997 916617656 775341206 814112225 345562486 937919148 745323063 769333051 822320056 976920631 860536408 892613586 484957943 594185735 633288297 649422697 484629093 719099302 792988184 826297711 32837118 897003435 315407238 615410740 430504911 874099681 679405825 978340390 16707383 919951546 977120018 990508531 172860232 958343223 154782882 320827438 706097262 794281485 759841380 795935689 971321101 991722923 463628346 708385449 549119323 844055420 155520722 273810193 190497488 846067229 310785875 644036941 561668532 923767571 528353520 643100509 393262421 995013060 401312159 409250707 191467539 471603224 398604844 691438280 437150098 998840031 684458165 694024849 256303946 651984586 792903770 831201824 463570817 735555334 580745064 618720654 650955503 997703147 627787072 918505205 137189078 399553003 392764692 520080624 551075556 733726595 896909751 994369848 296482116 519253859 309781722 564185378 370458834 881276158 701720241 997777661 131393735 927209568 245533902 643369458 42061698 687095994 123433247 269916562 262383303 614957623 225983094 882478801 999155138 999367892 904385904 960608937 738504361 972851324 922089393 950358370 105858089 358922107 232272590 598041773 585153515 890512891 237169000 762934059 516959084 984413618 863714734 884856142 553052454 796920490 569374138 612977907 499647230 701615347 880090698 996975760 824901220 923988237 360808129 915654284 244757611 423146905 638114956 890207729 134205748 619283420 488848250 927381385 288048208 940770895 731009068 934727602 35759507 936081106 813028719 813527080 462088198 586367596 90498514 462706839 678407778 930812027 171259493 277739148 5285966 216011647 958362726 977174939 555827606 670577435 590903045 604778448 694395259 970003604 926255641 977460547 776331079 936995072 64371760 873964349 229354185 582084745 571856988 739984233 778204164 816748489 769289196 941820121 182349978 336002068 916053663 945756941 825535408 985536337 582989624 704122071 463988540 816319629 517837389 822151902 565621751 686839282 838770424 905953025 551322396 858093881 865078370 885293387 712649174 911517475 732747237 769415792 434158705 874837455 715461017 958090571 149903212 887651065 96324571 236835811 875045314 986955379 677509924 752675903 638426176 714128044 367010654 554552370 652931028 846996872 569539322 636027102 33893063 858840638 780026500 822929296 890574053 896191574 588803017 739017912 894183200 900669055 156637839 271212549 187520992 768259034 449045793 671931404 180268237 695790048 460682224 742225244 107838620 243112872 653067847 919192415 240488183 699562591 751606946 769125651 449198259 971872382 397295802 693507785 745686481 893270083 216970029 524119526 823220059 874338200 364028378 637603624 273829101 728063667 561762371 739878125 476059921 759545942 696406637 925074252 608457238 774976327 942608731 984469419 765369592 869853286 379542674 837006460 859382084 914037295 686518088 698160391 474066063 479498665 483044126 978754766 181323301 668451669 306505410 553454081 587322087 704393089 425434279 560021063 229363389 351683585 153223507 310838444 886969422 918874050 778219412 801799643 396292847 541567009 884676646 982373321 637505810 838443637 491075323 752564082 666802311 829640003 670195782 901611075 344109470 428580236 111489352 387249603 570375471 666099970 331823527 634606882 289478171 661839725 373361230 586435199 249703050 418834780 763368527 775205685 477305011 743110880 437354432 443731707 700557421 818983886 441410086 580704703 245532764 645016025 485093749 495565612 456701135 738368318 630211668 727653293 349429124 648314089 693612074 749136369 308024634 350509135 58028324 314026214 295906017 914430486 69634671 775000304 19126201 588980874 847194652 852278778 840966845 871044798 223149337 283406915 406054864 718367152 23970538 924847965 488967404 831779328 975467292 990825041 538051000 729135405 388886759 589695679 270964775 443673215 323493059 598442053 665754859 833510379 938543636 965580401 365870398 368157864 318355923 708368881 852578993 913951909 297511861 346104883 787534376 979633576 224209028 592740469 754961332 922271132 286222664 336261017 813008220 982140605 600854138 966479083 416868829 580723624 91974787 260323211 165253792 963032538 665711147 954602283 956884970 958712126 324319875 495434936 205127618 402298401 120558455 571710769 208808838 277019597 980619515 983128373 845598600 864577705 443312813 623959057 642588049 783296445 922795588 999689040 650506934 879053675 121813934 157556083 693307088 699410171 52588295 545989338 321417652 990904059 470973473 748971142 676550997 847618668 63953090 108630793 268769600 906948242 627980850 811422261 993527291 999147275 172922461 484790038 358823477 382990225 239582677 492894937 691441920 967041217 55938994 576334792 698877475 873413780 153857243 331859752 327405673 818738063 65176715 353548493 513864640 795763511 564096706 645310359 345331126 904581811 618129558 839809580 119728328 517592624 41065783 526472372 161015841 873428657 456945802 841279876 324982139 642198426 218296682 751142814 760173632 764486078 231309599 337681604 131701529 152418061 438070371 743142835 433219258 954638786 431509732 768221695 432191228 700731996 921604753 954888049 826665411 883486409 916954151 956442531 961562009 984881743 197627775 680538614 263974099 998603706 96049711 819150549 467036013 493885905 147037117 665989385 183237158 253164354 136906339 854093133 25346186 169136025 805140752 926086695 590721842 672123785 588227040 708327017 924098619 972572898 125136302 733003197 763347951 878923797 841277142 939810107 300887371 828986391 37380445 780391940 869213783 981476576 277629751 747530165 97456003 357415884 50404916 160999215 435210469 643749258 768315659 828042339 621224636 987096423 817016128 926325307 839964613 977770044 240259819 240519637 534429118 634728414 94906183 142245511 246298528 248974169 792997043 875088270 302801545 801910807 114830511 670587034 37060221 764937418 63437526 401946541 594377681 725170612 270090374 476212487 859407915 946414471 93037726 577980898 624297418 920725181 821223503 871594732 53990287 783851864 232166256 756684023 918767764 932148253 460724945 617689795 891151698 980009437 373212883 592163697 160391218 954746472 382316978 571554542 927974746 972017534 918313957 985376160 207166787 610528134 151549586 351518867 393638600 681525916 483776176 979008066 414339701 717779207 778493669 941530009 673349295 725724631 277992241 289540581 581725739 830347503 45682815 451068287 151664052 849448053 462437355 824194494 302747209 632204112 274062185 631831576 333879162 965353365 944180424 990658203 291681430 371714404 364559009 786385065 98113282 151879230 428765185 992146365 529888470 615475990 59597326 594942023 180933236 585114398 596466028 908093323 160707673 802647201 514553994 790555846 924253996 971800906 929378046 966763997 973918477 982669925 321766566 385157237 362725680 940993607 956320449 958389170 225281513 618118628 450492673 665730721 487666148 897883797 772972817 997462460 927603638 929828979 302451677 307566373 725235763 917007103 219917664 295863037 639778119 802353023 54888192 515726408 197508664 873522628 740296646 978806634 655835109 805342140 621855153 920296072 471703518 800766401 265152195 590775046 521141097 878241095 913821255 964626403 491957706 566113028 798900411 962679027 502293869 968882025 775297934 931051535 181472701 315389666 698265025 767253051 557510336 568023229 627423908 956726939 507648945 832863441 531424577 750898212 354733173 565506830 940395065 962455354 372720573 548115675 774181690 869025299 727514684 984396104 565356289 566373478 902367964 932599433 582597708 938381216 848557469 851354197 241271606 936784932 164408455 853863954 543849454 681271417 750537113 915279697 166772588 647177190 715155974 794564440 390466742 984474812 153375012 917784518 282147552 650520615 373127511 712408763 424097464 627349001 106388878 681992431 963852379 967607912 256145245 741549445 928744094 947032883 733111940 836816553 130372375 244977734 124977789 134369492 659337057 700467695 760867653 866141620 97375107 295215624 566358775 849921631 712824299 906065923 702938724 856735362 487703709 530916633 63946587 223890863 745498938 841393598 838465529 933256602 655566345 871660017 212422688 499760385 942369526 964822229 418491887 831729796 358419490 722093577 66722264 550097212 385345378 811890145 345688704 498735252 686305849 698141832 812169903 943099187 883157059 901588029 224279866 766726059 359689900 730024555 610301100 741356160 78939222 707059085 709806697 926096243 189616416 781438918 618001045 877925450 976374940 996818603 889597665 899134864 133421124 648608658 37242516 819371801 389000095 781740545 362209951 445619655 575298808 800139979 66949181 381785773 480156220 796449481 734850369 832354765 516051839 804556402 193868253 729318422 502941862 651351601 491035233 876414985 139397280 812894324 415895522 965610835 732239235 752498108 676162554 876291921 768809960 935852739 913388219 958198920 760949455 896403876 203474398 558998579 512426880 999332445 233909474 855138623 946496752 973932615 443859135 900221112 917237917 927931529 978140185 980333567 776993229 928452036 674526482 860680069 405672079 668289164 211571373 688256085 74428870 752934555 585279552 998731203 923992601 946244867 854885376 886976458 954683553 976389035 178854058 816514405 182080894 825704980 979652409 990849375 898003751 918236100 470646120 541817476 392194397 675509265 196101435 373579278 961819037 981899791 440753118 689337399 189310536 370814428 637035814 894822865 17181613 489471021 841050483 913018301 374703200 782814977 656661688 987331088 988912375 992224562 914924591 962684879 291407077 812744140 654148237 685764011 393122223 885110314 323270115 371896329 34815293 953378799 698858138 897985095 93133935 603346793 826263116 943231440 222339453 245739646 886925009 919151460 811207480 880981495 95081099 234662107 626983257 786022360 584303211 768689981 920906221 954696505 738909078 826152731 391394451 611933599 460489791 819671240 199401990 595746715 283151658 842741086 436744022 806499737 800074114 963779137 386017439 426531237 777851337 830331704 381374191 967652470 524476751 595359258 343992081 573787693 917358649 920385452 241180633 733669915 7953121 993302097 728694973 802046047 256930249 312940127 840084866 948767369 258116766 533057102 644656817 972611028 762538347 870936004 991580639 993319609 685088148 946688955 38787851 336239289 361907215 772185672 997747865 998378679 204471011 764439708 701683218 965210131 749532269 768907377 507380068 837069793 958771898 984642093 847162040 950738397 619758860 913774600 390462404 768548103 248902653 312097244 435459652 587970516 378397297 856791069 654231876 741414184 338994365 985726213 729890421 993363529 252176367 960194725 610817176 997495785 178744946 902263147 275798312 387438488 783368222 853404623 893891293 905716631 431091064 633578372 340354909 659939064 94450795 356477184 849689509 878869185 231643293 599186782 316159275 723587160 767998289 924543439 464515838 475734170 976014012 994968212 906974490 988586090 150408735 183592396 295793596 384445123 257012834 876993289 198019481 915964603 621258115 888482243 428250273 882151326 321709144 525743068 973372271 988565263 952152519 973594799 471488450 887210986 638953852 758228529 223788889 232570681 25553101 493794125 438396500 915500386 737411835 841997572 26865484 219762985 20608255 295934646 651250325 876416774 529374494 842789199 386672667 386981176 984483447 990082202 934811466 994472100 829533846 870388141 57952008 61190063 479983241 494141151 956788611 958410184 667374400 987683250 785741975 998477246 130931220 180811227 271560287 342005169 578976306 598731775 851277054 974461015 759414932 792145974 724525239 784516779 752452345 851211217 695735594 830289499 760150661 862614063 392082474 542376699 227488308 983978047 777323065 816286776 439233265 869288970 992275706 998588852 146449864 231795081 799952974 909474487 76582323 918765756 662763493 834092338 76267636 404701033 627147662 665582535 65452803 496664709 563362474 964465986 174202169 611735788 126309087 675414939 621163580 834167156 31255895 694673649 284182567 289888998 91335663 913842538 69370490 889208994 538193110 794721998 666539730 780311722 329559085 400134329 959639370 968751709 44864788 370970748 334936913 570397399 547924241 777420817 26018060 444338840 452641009 867542711 580972458 720800856 135833726 687313719 468870047 747801883 978146988 982083840 56173524 789019153 643061442 674865348 844395049 877566078 648959683 857733177 716693434 724908554 848727748 870528372 229947318 689342895 540787335 546565108 880285909 913277893 154723884 987769925 230737137 547623534 972995452 982539662 382621941 663063867 990059288 990489074 973942246 994885016 598274321 903152713 191453758 933998692 669704041 901331344 470724349 790885752 448857697 751817493 978589630 991003788 881376496 973673023 389154121 447863753 456642255 974440439 809742285 843899364 150837241 959503916 521545042 686514390 715808697 784587849 26954988 418622510 727910617 858796719 781748080 811262752 775680009 925641721 657839348 902423991 191220935 914599686 107289651 305253153 839581604 886228565 283773948 323891995 966637607 995092777 665590370 924781033 822586319 923945913 576800196 779655382 806607438 883316233 647565940 850447180 906556573 922456382 504943129 895418711 118569208 527304229 553836588 589724356 209822554 908064780 565262931 810355709 475521265 695833754 750312404 812374696 746536920 786878319 759558491 983533199 254096905 995122187 111548639 545025647 134367330 515874680 348236557 924357218 316535238 353990320 477252604 739206162 992206871 994839563 822037241 923226946 582839778 815961821 941708440 995270753 188181256 788051855 709163938 954727660 586585828 688593820 826852065 852094166 384866162 956969712 853759392 943717279 697444403 834238227 930789471 981461999 120550507 381780334 286846650 297072164 86013574 279601931 667622616 921862590 862806293 878649642 84777835 118968354 738235165 885970939 459251007 566646406 702732782 855530531 146371740 937832314 630106930 768511387 741578857 762556334 63600461 148385667 17353360 115080476 918017142 988284940 596291076 901538767 620691434 896677972 855226178 959882202 608109176 627687573 3199746 364456011 871836049 888511694 280053995 908005211 18421503 643723205 978348412 982091743 376661623 812987198 816813071 878095796 27638335 696644815 172271112 880251306 444601635 811462513 609011665 975387662 793484540 953769562 181706278 330256879 60160670 187896982 384078620 900725829 65883156 417441926 226947694 612863678 128750707 561950062 156244145 958765871 499708143 640691519 906072371 988106625 347899273 667672437 388566976 862941171 358589752 533003609 89367417 259699157 211135314 756940422 190289871 769512526 762685536 991923633 785054768 983714118 526600833 743707617 706813147 886468938 71356739 687032814 437118221 648637242 775998989 887497658 248467573 657546272 14140079 514925908 507512153 764087234 128517934 687904273 680076802 886284231 554631210 573192469 962835926 989698247 841527623 974419145 840624258 880771928 733910835 999139785 281019793 305580558 64639935 229110393 35986747 303817105 570525757 940994719 959531798 986894731 88038796 171642128 774199586 843821921 791362869 951813338 445145972 721253600 797594890 908226892 748400582 876400832 103847723 650605711 256386620 579121261 322155872 592345502 388912219 711435427 749574090 838575835 523502453 801095982 328824049 621297202 19515775 893911223 551629119 634548227 502134105 742317267 867691405 912335352 914313905 971763367 692213688 788331449 332307511 888674505 538306804 867301137 943483831 967112064 941266255 942020339 70310684 469702619 940336311 999028053 837847020 846143083 998526453 999404381 719089094 885215469 168419815 881818525 129199763 782336155 387169775 689221490 42344623 340448374 734841953 850807367 71162721 920552279 392066929 989163819 920698258 981543335 800297901 929145101 132990411 671450934 881617062 947628789 496449558 788175794 214746687 944981410 929445810 936404337 374073382 723273639 563857587 915405199 815986532 975367310 343841006 925314447 52085830 627043373 599632273 778612552 322470673 846434391 623739009 869887913 2901445 412259232 658321263 966461372 384353580 529270481 447481604 505036569 641020259 763168856 291064977 858608911 559687800 645331289 496388210 551191692 472674374 943745967 54211305 868215773 146889345 945147421 855596911 893525123 564242651 916261720 309407875 688555504 103333380 452497779 149651159 651496808 222603351 461194400 84809937 985598858 862057228 934197109 415734969 622639763 826232381 953592322 780453664 785115882 12732379 467354306 536460302 643107761 263039131 951238287 36240626 886761530 855446170 958124121 454745146 608934722 961938354 964904003 278100927 512323232 825323797 850185828 235789322 605518768 740836517 884756515 997971982 999363136 641785072 914000049 375634667 453498965 238448160 838236466 636379134 709585726 494105204 898634590 826959736 964494063 657421391 930766334 713199522 986153893 179939821 683149356 71976721 609718724 156603450 385731440 174525868 846332303 265263570 535408956 667544868 795056513 240283210 888613051 835921991 879965940 458281950 905719550 722469079 771474253 326882759 769977163 202984700 533410509 305027724 734843057 209713695 859543539 508611713 684082886 159097224 891940856 482417860 647095542 132656816 717989268 519840138 687529960 205894828 714302673 853116108 870970732 700778021 987280417 40732196 234518286 18278853 744438709 676348264 765628728 790240130 883805301 367150592 816759604 737597755 804922788 544547331 992885211 284529523 383496998 605998571 923240578 952067898 970613351 514445144 908555513 130240280 901623738 361677499 612028127 993545802 995844777 623679886 995914376 91695680 285684354 376698357 385833767 495111384 731197730 612788636 924288795 500064221 615818175 314587074 878278204 242116154 799763963 963136143 972219197 909065289 957188479 287655183 308478934 397068738 677067520 359521788 941108654 442404062 594215764 789579261 846067446 971179926 979572782 366526744 602695906 985630123 987734512 267836789 576790780 982922059 983293137 620725711 742704803 484318621 516749350 731590440 968384067 483177158 958620346 469957396 525928100 409512579 695969139 172805720 348558949 410970515 457148106 485307052 687424187 334178303 765145599 290186977 632734918 924604647 989214885 317283754 391205860 161952755 949996519 694190651 999026629 989810593 992583953 502345005 907668116 955853151 982358137 267223264 544569398 495612452 842541096 824366148 910108172 564986899 959722885 93788788 552572188 869658947 965358694 327189257 831110296 530410503 776362434 702810912 906451962 313181422 964873858 438867652 927288317 274071377 641321339 811001614 983320007 551218920 646072467 585684441 811651956 801510079 891118025 258914239 663923732 648474923 945377683 545286724 586590221 452862937 819222302 598554664 757629639 434685763 797556543 483525278 608595255 582755196 747733995 424368153 885495779 200054442 810812054 209833312 834175275 424286071 844226468 797301965 925880915 778282752 899216902 119430701 262163500 540200465 854575846 590025680 772263933 99171087 360172498 919851167 920573660 48175290 222579179 997177426 999036074 541858640 586021917 480963949 574994860 806958993 856959008 728747323 876943514 31235732 874768831 601926943 971231486 732263732 888843032 201233095 427532435 757502167 811991087 127397278 350029038 458225872 533110152 707402784 723490217 868017718 918349604 377365726 737024565 720745860 803602373 501682892 949003415 654999500 945458476 337480285 962665850 660677468 872699878 82886115 381353677 76438285 721738682 937157582 944789079 429192870 507826514 366482567 650656156 546171465 878685280 357293931 898027088 760035351 982666856 772908493 792973069 990520578 998596269 671247270 728973393 691461011 951290238 955200664 986205581 630920582 693054967 541911744 914554807 526355624 974997162 399218899 428109386 34630956 55266672 861223166 862063137 737125869 939841458 85965967 965987893 302017744 366082015 434093104 932850510 68641484 739766817 831809554 902830837 268765561 883350065 455495703 555996922 565067017 846145244 438617641 716367014 445776833 533111268 667009898 950508795 256699572 553488571 602497022 951086649 718611108 882255882 1946724 536611117 978322234 979683253 541548073 824311660 867334663 888071160 122692012 702603995 924707111 959880306 106331905 552302692 199595797 258976240 547174540 816104260 210020188 248237150 424994674 985308616 147970210 903187670 981769767 999485387 227970062 573898368 210312619 303178591 605029436 978890913 794383147 916494878 357163395 653306285 527348791 755813114 35578171 418674590 489008070 959387869 970497935 991680202 440226816 709055563 160380777 832847531 548787250 932532210 200751232 842623923 417321553 683290705 526684278 966017796 585956881 681324532 796901668 844083620 28892324 514002313 905880821 946825556 98774751 231333274 307020083 911780946 308147959 583666483 521298527 535128229 999011101 999533928 413099544 774193416 624240230 701471090 11709118 116396969 605620302 958327545 686540859 696375077 840123195 964716827 616942827 679162038 619176145 898656312 787131849 864068169 705784595 738238450 450036295 886985805 251730958 876651119 85720516 195590668 614582110 660988247 285943696 730861290 717535074 736747926 485839979 757395619 592610511 982045813 814620195 983821246 557220220 677603576 961549444 998705222 912617729 944091655 812157503 890588589 236287502 378943903 247759589 614617970 227378667 490508610 299953159 696105411 233092581 574856353 404908322 626372725 462230373 998133564 392047257 657791749 999162758 999549131 726813555 900425804 210954997 678231239 736603991 894937006 525777993 850148990 581378680 777491274 509844382 788935786 835833924 860916923 109091383 644235653 589524207 686614457 308666956 318985755 139552371 916533873 866585379 949024456 396390748 650966366 18449474 398386128 782734864 836967345 579584442 600454332 38522793 84145483 247567774 670701995 359549858 680409857 334081051 934201372 656284779 763340029 231880327 511553448 521458486 628241196 101130640 771050148 312778547 857145591 477735329 733595267 872904688 980604402 324718906 349015430 398488748 603604969 454649851 896473548 216325992 378034682 142404783 905287283 508164723 798234617 284281826 502167687 515926831 976437877 207850758 261354187 785676750 833398177 215353984 308353035 745466619 812167087 309960370 698980893 945357060 968551464 197281789 643419279 482723464 682402606 164450349 212137388 333895609 601431635 247564330 303716334 805884980 934816261 618523133 798816486 490647354 785810351 400160668 475940538 691173416 721608573 71487093 448708767 806064614 886904136 280814219 704479885 771052648 839912004 179778785 569424763 243993484 479361501 667856904 693684486 444743702 654634654 889925955 915271499 700228558 771635892 164204712 849232149 653583953 732262705 634034163 986801127 48898006 811893036 248714960 911752159 626593517 674035344 208048625 472338426 20751987 570069477 784441973 971587050 505776299 836580537 761757398 899519784 164016594 240814837 939878994 971306414 56542767 476475681 725234502 924546471 431997248 770323047 8976815 455314343 879585258 940264390 325470821 662021297 422176146 549368007 458173793 730086147 672239298 927171217 443489841 813799679 515798806 703022431 668376259 884983126 947608878 976560573 444198537 824526895 680293788 840643257 365551833 866822197 22905274 531333408 606326882 638581938 45688031 974443436 285661880 688937074 930619313 945761352 200408315 817442980 806834023 859288872 418783742 850641236 844806194 990482276 999325884 999912864 780072521 809106512 727147063 759623775 450059960 877301800 106165478 859632006 890108608 933487915 618162093 866441669 802073595 987194034 515300080 543001304 583189543 977024238 443550224 817716808 806800841 863137972 533682345 994257750 154853450 498762005 107529731 721855434 244466418 253943826 729066170 782216865 299041793 756529164 558272820 742021555 575629731 768178395 919557732 982250666 725521343 939481006 50158270 206548751 358895002 445434417 803916549 914548940 160055228 652731473 881729401 942331019 516284734 552887716 305864737 724608080 940181488 941472740 585899685 886558537 446767052 878818085 475439986 488427701 241850953 712054932 416458270 803701943 74481539 637961308 572291210 894293912 466705712 715771703 225994884 305035109 263424360 492052849 929540217 984468359 376110864 778617141 299231899 355936028 181507987 871196751 668292459 994105467 414465109 460569571 759901391 856171240 190282226 245116819 552718923 740659733 380845838 989401357 854205976 982394380 379316442 399024331 590005023 772955092 331584278 913326822 937873168 970298601 654441104 825685931 778232614 844418292 25252586 953389090 434080500 998026613 873779563 941429170 588461290 904890098 850937833 900839371 308822652 740790252 220127301 757151678 833436770 895963534 501204042 567987668 872534159 966710690 60463463 63645990 74115597 514095726 841321521 978401063 876737870 974069357 78872442 362819727 322180394 583776415 210997688 957713958 395044387 673835633 310329477 607720978 632406435 898988794 23720170 353091013 208459658 350689882 512890338 955110496 912683912 927199550 570874675 675423984 25049142 906134864 588182857 925787778 454619604 978632865 317649537 658456915 498712431 743470770 380205992 680840330 259244339 601740995 381808528 898016923 202867265 443927095 836343850 852364498 220853588 664953539 827148649 999372116 490335410 695616911 806074847 984092945 546459879 570217765 889852864 954637678 556993411 643335671 658888982 833210945 178882638 592661714 739259279 908294987 705826985 847143516 652344372 912819459 876246056 943518078 644057315 775307589 100750180 479371326 131898630 384654938 43460901 584620679 861391296 940166307 978460820 996713651 796759672 872478490 971330324 985340701 399194270 547029131 454820183 734631026 428600326 904071329 3948962 184515295 129234762 529847224 828815910 928603517 921453219 943680351 187193199 669121695 194511815 307126305 673625923 700308372 299073494 798177465 383067631 762061905 997718391 997966854 53407171 996663482 798194487 879381584 443003329 546635104 343120747 811762660 861444599 969303238 736433095 778762977 528296264 641739888 50603925 739561822 232736493 735085182 573091972 664152722 177245367 212775246 817560248 968440155 55959044 358583779 463353795 528296884 337071736 643509555 448439461 980782779 535630029 559724561 770823180 813631643 259864273 316087590 979283320 997784857 419110720 432479048 993907635 998227251 547057824 650826354 2466173 175265570 597253843 922709209 973172946 995786054 514928212 765723991 729194435 892697332 568239126 768945425 465325837 564806052 243966522 832886742 136961418 829547170 34402352 382829769 477442416 750213023 825588923 854509438 903252834 990482060 333694050 801147061 312050050 577753562 724580204 746484593 962053971 970032457 824973036 827799401 855526132 878643741 269515273 456801961 333319705 999817017 158894704 762596930 540876914 910594533 731728251 938807527 424027185 454197882 732499739 941244840 699606954 802220612 458335108 982319146 277671315 583305008 522308344 731122088 556086982 982732966 121293179 547995457 306494095 656809224 424428629 665135979 946084183 953900182 237872258 644965016 331286736 406952990 593153055 905710508 243443576 945366700 288629539 742174341 882120351 974566826 427603406 750157634 278711822 956033634 366932299 380668837 454236905 465666075 414495844 691389871 208505854 829989925 228599504 456029050 352943389 891863130 537039978 742863157 365017673 871219599 219075709 220774493 212169352 685018445 797011372 797712205 33901102 213131235 917494827 979816675 72385893 150478486 436398949 490455232 968837485 991316240 499224632 757444878 242887347 305311517 520697834 619632993 373435089 464571574 297148769 822185881 772122697 973875326 416572539 866089130 102749501 799289624 849561646 855098350 282305035 514534232 837380906 931038101 963380472 980316393 726706723 855340004 340077610 821022018 577236141 795525323 352600124 610531995 563769100 580988363 543073410 888287829 938583745 953173628 116378091 959433640 979894936 990108814 15363592 624212337 728130003 789539848 57537817 280768319 519428902 958236494 377695195 890357764 930272832 946543141 621880998 999180333 295469038 524583794 794518327 801564734 399034914 452370836 67275014 541695487 284800414 619222449 978097398 999347096 637759350 705589340 195792376 607619008 618858659 917535857 599352315 857245911 251423046 696639592 633711735 872348862 932392368 974966965 123823166 901224909 682517413 987590162 542728388 773152555 430861289 614949792 631928941 999792299 750225580 974093067 346798848 388007887 397914186 690937200 635792396 840496206 309603072 895739428 200035907 383184660 598221789 760846238 917241118 951966830 358431821 911598594 283646368 806761899 702258570 843205552 668072541 806854840 257480907 537324456 709567738 792107997 517983285 954586106 130419481 620190430 436467669 873588403 59897405 422042833 49134669 280489451 959090336 975167975 795008283 916030052 716028252 990417412 860328125 933720340 217999302 269834192 5238228 572437772 310403597 941689009 634143070 908331961 415352464 459846448 946164942 970651549 228403274 270000846 223610948 919258763 783223331 924971519 455047680 919458672 225806708 458750513 338563426 793937056 934954854 977144154 11128158 459106300 25424249 923432178 373527832 400421503 753706043 783059481 772899506 907982722 405153894 558182387 502871781 526803517 573355793 674006749 498278119 882106061 116073694 313313483 279255680 784204619 194019492 375681892 972819472 999595435 180424022 320506274 99448810 357204403 611057556 627289656 621767070 809596436 776431867 877053423 513473059 795435617 797189757 967318305 687733487 933012910 151466392 668965190 446494740 517985993 130697767 299030054 906076896 985159806 36397401 315931186 312067876 360694251 598969310 813959284 504137670 897679120 121722837 504435670 489696790 579656583 280725117 489720545 348837959 505545482 535776110 803138208 8782926 486409202 65447146 386212228 287006825 977348786 189321372 874165159 842546032 932679104 73471822 342126862 746233933 776413191 56250343 862243747 574792329 909811574 93844337 647565516 488029347 499555838 291272381 963486893 365094950 984928420 320463489 471617830 280708733 956613296 645485871 755643914 396198581 446690192 244973636 290146040 954007967 960216403 99435883 921329019 890313883 967090201 372871843 604035694 520080868 854265501 190743958 958274686 343148138 454117416 711680446 864247400 921410073 978286024 507328471 764449343 222045934 328829172 435536215 539776573 489752820 806518362 611393325 766502121 543117840 998448536 88850438 772611275 983383557 985753934 400218313 496204247 158920446 381226775 357922982 964985318 956559843 993620735 963563283 989791599 230547695 591722703 991001155 998600636 321780654 920712940 17786099 860708901 857296424 937327162 429032344 555735375 18429456 338917425 270053914 470857402 433456827 557849271 457183518 990466805 143089185 439001592 715001556 725449115 853282052 895517699 291506100 906063838 323641302 800046501 375375744 771541174 605482788 973875629 589628798 656506117 751629264 754371474 109839439 668521192 350617192 810359569 495326164 912039550 187168579 708626801 330290513 972432554 354534080 438116919 187254159 493846340 757923546 769425256 316302433 814769223 613379267 626173640 338200199 621040213 398433992 610131864 127826307 716383596 17434697 354431396 443228147 929181884 532582753 790773671 686554254 796468988 554884457 744108201 715410909 726844641 105221600 173304513 820025951 989775601 957955806 980903106 103793032 578995580 905406646 972250546 77136672 630552077 163636666 400146769 706729994 977979934 947182328 970963166 636924881 908613461 903750904 922580622 413560247 630220741 977502941 999537186 463503509 647839713 439135677 739939266 225522966 759444379 599025125 749098730 995751485 998346467 50425597 571255211 118080007 805570803 501553500 894362182 261794177 335179518 443636887 510926807 529334540 841177437 955634515 970551542 260257122 381517495 639520845 971236441 485458813 494544930 128064347 197565063 943509062 965019903 342529538 940158144 66743682 560782231 202749123 817995556 37720279 894025396 801474976 906559663 586332189 591363292 208057786 632741478 703712435 781314519 191871614 596899563 946705115 992574914 627249194 937155031 215768623 721009718 231547123 505276272 3843542 540252453 215895213 836864781 394602444 435881008 733369159 994270560 784241551 798110891 35519296 820722226 18157986 347580991 493393347 739770844 631039524 927627525 592978379 672053315 446517253 780503808 486523627 799233503 855542336 865502869 522537498 925206278 83790483 324057572 164032190 591328301 990452305 995576780 693774747 940153492 32922649 189578987 400089599 404182950 254184422 594700162 759327238 928574308 337110363 793282491 384953789 717037215 999681860 999976659 336711193 574921656 483555189 944829501 44640382 544211945 860003272 957849478 110449740 743625121 1270337 560614356 557356559 972762320 221848193 507417781 324994518 331746452 552251116 901707255 521253692 675126971 144814624 651862293 163199808 469756120 343797875 954585308 435974493 922001696 671608151 806179995 782637873 920492282 763122088 811862802 395674455 954654668 832792884 910260407 646637795 912202195 627296358 944301365 984244058 989202429 669431963 747190882 694538440 855585652 883774771 995668170 607909728 746478164 740673473 759257048 111673710 921051405 553599516 647625412 852877621 886072144 231922107 925014386 545109108 709315352 782165528 965646728 775409461 853851615 261143726 360939129 542376818 868931318 358365387 688994964 640581043 656070652 376354711 827532568 856384319 975261625 466400383 636023925 753035492 878036703 472015408 493210567 783307582 854313738 563845265 726658082 139525718 745227046 387900054 777193115 577639030 811128131 685742144 784838993 798681802 973700039 693967546 712794781 449747243 464267249 401008420 989242763 799918986 892347051 248041594 343107206 554332119 789658978 872190476 965112133 743525431 881198295 213798080 586105110 675738050 818585327 801219472 944891298 480097185 751544830 27185962 358091397 285358461 346159193 459804049 906769367 784179220 795100113 219649140 513362755 23660428 535255468 361311980 689865082 937150223 939340920 147002457 678439909 542284168 870515441 731509736 966274838 915175500 928794671 708957137 733510441 940212872 952017680 926151273 926768969 983907605 994362902 832219698 992865647 579949020 949687266 118189279 453274049 981971977 984210866 924491333 956876832 583584737 606948479 810516119 929021428 292371138 585666045 824055281 993932385 609507346 753597095 668949187 911708911 767024898 945643166 533625932 757890982 282241102 840991286 818106461 974616863 735456385 877811956 631453706 970259715 510778407 636716138 502348285 803124222 721441308 930765942 861284331 905597403 494938558 983231346 754918166 971566100 117347964 913478505 294567095 942829918 464369506 640966909 271243504 765623113 884069248 903122031 743824002 992412153 702856182 747096357 303224719 327159482 708798626 902931439 711432334 788875291 894159634 911432044 397131171 882513827 298769615 767726952 458750537 999976919 802642890 915181703 353825470 973137496 887087865 909440283 550991386 603605946 531278062 896559687 549642385 593861875 188593928 964833236 160601424 286795265 649114236 859340566 395141426 741635855 543588988 727147461 977814410 985190897 940956289 987788193 755155496 776433399 317310933 895026860 771043472 936453540 497229795 755390794 827705725 904342203 674585676 707151062 661973303 760847391 51537795 135157906 327769766 628146452 855112041 881605610 880652174 977593926 694739395 948043129 612581228 718973400 30781778 164267904 635211332 911577402 789398415 935606569 820704327 870019717 603583958 668983197 430953334 462075832 688010668 707974193 685432312 860178604 504794985 961172214 644709800 950928045 531044153 899635685 358885335 833389880 899729617 952541639 615362346 629289485 767327281 946456852 397311307 526336657 811158899 972017410 913574494 971333459 143718924 535175655 456384917 462271353 919882283 941286958 771402688 864991686 440296326 811522875 398422077 865853504 514534088 784022725 934173540 998970558 989803807 992894297 330306460 550084028 118427442 277718473 598525131 634754110 956696569 975336954 922927442 944992542 48955090 296393744 106382587 405133333 444196512 720879091 719256525 917198372 669922318 680850106 764487399 990709386 411600811 534285649 786686413 848833052 815329508 991829534 542296324 635728750 732525724 769748046 680498266 731194907 790778331 957665813 228043942 317439540 371856568 510269493 726307641 887367300 790361307 997852648 29632690 110857998 696727357 992088638 27567643 67344463 536571517 857018077 11440790 148289097 802386679 897880804 749823175 872630142 134374791 585004672 981612237 985170358 566983312 729326479 424848102 853765572 311876116 448190133 633480885 666511117 774359727 863118656 754471732 781147643 62253074 781418502 761005799 805323212 614840021 989303858 881627922 898480152 44343305 534872369 279654373 930495046 612090406 997110952 877297865 900466640 421443775 448269043 703773349 912369194 746430531 834466923 473109895 528921415 404624842 844380395 566657765 787728072 443135895 774284281 8862847 131254117 40722768 614894905 782380354 905583210 998037807 999466310 665900125 980995963 777027325 928644232 188062053 790410597 443846115 889868801 442574314 646353413 521274444 813166287 412472410 457023664 626915575 817400383 830580967 998657589 147788539 974275986 862453306 863517080 266935394 406208786 840369832 973771857 844433375 913548392 726965317 919635538 353982735 664848386 972434135 993278354 414861258 728660512 782406841 815233237 558672914 933990614 833791352 949679440 655209831 745477233 555789322 625137167 116398673 523948799 371347266 732201738 488494469 866064618 822757092 971296516 518299778 700301168 141341587 943728734 829987198 939666863 747135962 916941845 295509732 317420985 606170004 834172577 98841093 832967750 41233595 947758055 114371915 948597795 580239070 601789438 783262208 904665523 251808908 510044005 970674506 979473687 395032345 997041356 444949551 794543392 592666921 593714065 992400255 992401712 385000932 488828704 268912150 533264916 246277980 557240104 907625351 937984712 846994454 883678269 274402375 657863303 448549779 483256496 602600793 624521996 625965003 992552994 397830460 622701974 889758482 891525724 372426929 567864927 253484275 975441487 589108936 993521485 941688854 956146389 922760270 947598652 880963752 988734829 593991151 961717824 355681457 863504064 427566042 681669985 292862077 457419145 670007035 936897445 151272059 806214733 825826542 998659002 931327925 986029338 391414474 411226840 931028430 996676599 662557116 743424159 996209123 996515874 849274559 958274035 87210493 790906961 605443964 920064582 575599178 998164709 946587725 979000515 721330265 947430107 796495370 886147899 262939923 759683564 218592918 466571972 60091602 590755246 628072736 950831524 914862002 937415075 127152564 527709532 253513500 917046882 507593046 743952060 379084264 612181264 657668021 759835481 565327309 869231194 492809852 859141951 354406276 468144230 307685531 356556345 552318773 651028801 963889549 987759440 254252930 329053910 133827536 976945341 353515553 485944768 351153363 721611300 879192216 956979834 742429884 899073635 567179411 692065413 272379090 360418476 994428090 998916656 158699258 908004540 843457001 856574070 344806589 369760106 865771287 931931971 319262872 369740788 871720595 983753270 192491118 814749827 247551526 321833293 770665385 846759734 182067192 307015195 617821428 703178076 899636738 989113015 524431158 876924559 1291322 833542420 544736008 847872887 839744970 979225493 912962076 942201575 503145050 642124360 959449313 989957351 865904498 922133348 571417325 801007605 450820739 895822830 907474830 929951007 65651509 154267583 723260115 807060363 81165728 524532971 333849269 412511779 846929871 859930993 510811675 611431756 364208529 649160632 992746562 995244953 768552849 791005419 410251028 448148436 427978058 459769165 689083332 958565276 111830699 178237060 594860315 640204572 949225931 953939725 960014042 983547749 361754880 598523509 503781654 625737448 353307125 650432286 26417673 786892693 9923745 44319948 250689399 555651864 810308954 961074518 80127368 801502716 181841383 539546486 764720921 830748375 794918415 964804641 174588432 726128978 104359181 355734876 794502811 807399281 523714801 601325523 325577419 497061891 592081742 729030381 522009215 571394611 411701545 496693095 949570662 953527418 749989437 897869182 719902216 738500239 543375609 547351186 983603819 992917968 912790835 966582501 540803473 948671546 809466838 902510098 992412495 998614830 58363056 280093573 537458317 894628257 497956124 760802407 742658460 862822023 50763215 954727206 969644511 996448953 534009936 722540544 725691830 863330719 405903149 941831736 446302637 708296731 103471258 692301576 555261746 938454251 669235498 961991432 698137571 924975872 423833446 444251619 161810379 295014863 363146039 581915769 405486659 968361835 665831736 904018295 619813189 932004172 602612907 887709914 907069613 993615532 344935922 780350645 668198599 738404030 685499162 780939159 615953314 982115855 133947947 219273625 363644948 936048130 995548360 999379985 123781959 585219313 810498785 949259858 988225270 989727745 445401250 535437975 443238140 940636252 143002703 971069206 573896795 622389254 59846463 192634671 535574049 613082985 307939717 597436561 406667518 735838403 595305883 693410242 10131407 846016366 525245135 969076180 592955091 944843667 298360155 499811405 171407924 990725660 439625907 446253887 8516102 117182793 292524567 358645291 373547774 851540153 992295573 999716934 452103354 484420887 392067134 426973531 432628709 700526847 732664657 887008286 161393393 417273793 376688241 379020104 998060492 998228443 523168007 623625870 257088509 889457927 159235860 510878774 540925888 878266522 597252119 819667429 15352499 872259145 978237904 997552725 69638712 698824151 949291753 973951542 371670522 926573867 900452853 987966346 697577435 820735247 241342028 901722681 407057537 636865319 546853685 809020982 532424369 673562203 696180216 784691231 524839531 534601939 314497000 786635580 509200966 941731058 151250225 856201885 489647776 517613772 72726992 512412123 831145323 948639715 62738782 460870116 841614592 964923231 960253765 982864086 810200573 952313135 628629623 666537859 26289491 200454375 860369399 987625852 537252246 893606111 38403558 95115712 515268667 526506573 53720512 701939061 112485765 630344383 980853817 981585869 451170736 943829486 989966948 996027268 987149379 995477460 167378059 660326956 687730246 999609936 915456295 931920472 418055964 781646776 305610754 609923874 20426999 991169999 465272488 578807652 787413388 961748367 285446426 955981415 60271301 628966888 223612198 617385412 603206640 761160675 502689968 753631202 282696755 454269648 385767625 613213662 155128534 677625289 771305527 962835524 911861987 964688050 757546186 966762091 511083391 622714954 189901962 507727437 188743950 771734090 374759669 564540113 467319568 614581737 643564255 957027142 759718175 766239788 432654090 571670640 893449231 951368531 809020832 836575536 652818142 778106297 784531644 814236152 668793881 842997833 814834517 912466500 812001102 814530411 888160149 934956109 90087835 174080695 963152490 980020375 980732379 984714419 394923833 903417692 540587022 565107485 572372429 609074510 728326278 737552297 904448422 972634643 127387428 500535469 625570699 906398019 439663278 881127569 85055702 829055860 133450895 645850252 925042205 927459641 958138304 997084657 748616674 998158494 696571288 801791589 739428083 818532431 600051899 968304470 962527312 980792437 22477482 297994794 212732679 305206152 196913817 735015166 864884246 966253313 323414334 982667250 803826571 896520161 456618962 772699498 975967902 990747058 816630629 941295179 576225049 682562597 491741386 932564628 170179577 927488017 946909303 977668589 979244922 990690421 81981282 496194144 15618197 775099832 367419013 585855860 230783093 825025534 649233114 672297723 342266632 746488699 813707788 979274284 847546691 937181648 262912562 543422194 910152066 951098827 981370545 984565126 374584438 524834710 43466683 471770347 741728175 916928203 963516476 985862335 251907700 397420067 708063467 966673494 680007633 716338633 213830294 798964065 966534559 992143077 965252675 970514400 474897780 675892864 126977580 562247726 140709571 471858053 314739178 758684231 512991427 930170098 80119529 901853077 379392969 416195391 401390662 456074037 532663083 749898832 580990295 922312280 866886941 869693339 672021523 952626171 372035839 822665445 184424094 871303213 611508643 953655644 389990343 889764944 563937810 928404255 892820637 903896934 153485272 462403510 764072562 818811085 458768676 868950490 527258786 975698526 774462152 785694015 504802321 708922079 308015345 839094319 701087226 851293839 352622651 745901954 640905241 652548314 529076956 792782990 503163905 970622887 180915817 729260054 41793832 294269519 609313297 844982283 506415544 512214679 877300159 968933001 503330083 637709576 684212892 788155069 2222858 922957845 593687649 816422750 840667719 923559252 857894391 941582574 313495662 339045232 914968196 928269326 583117046 598962043 999924326 999979793 167699197 336249696 634048791 912261419 721932854 964423356 928991747 935147201 845440272 995730265 532515055 840824050 1075254 592776558 364631428 799248688 48305710 567591605 22937106 84516630 544746751 840014515 529555707 617906961 117953087 773674432 460614911 808141947 543759255 563298156 582447067 610345834 40871577 604027623 766750356 968527028 957783849 972704611 29130835 711614574 175003228 904669302 836165574 887158248 347493128 590127575 461127056 877673342 267022262 681440691 674314046 900337889 193973832 484989831 452075932 462956629 733464405 929454012 461937349 961095761 89396687 813675769 176315967 831293822 240837067 297879360 347479927 361347782 474875784 968891460 813882626 822368238 77254841 538088438 933860498 958842873 12505498 496129509 937260818 947145758 657827982 977958865 724859906 754552169 930132032 993583501 55817012 987272213 835949721 963345413 353319850 637627255 626137950 731545249 376794766 809276127 46228908 600247776 455748291 851050349 967004139 987558280 369066050 564018926 680670403 807074486 404976586 954015808 213775659 805270555 478655070 895525477 481559568 549655828 446871893 685705753 307072517 465223978 593042456 597949523 609042370 861776602 880195374 993737510 511813843 768306618 761801090 839958983 786930770 865779364 314542879 845454606 755312437 812557159 421697952 468131180 981366940 987311062 627139547 987780138 198569169 707993358 118067613 424959571 199131307 516869361 493479854 535580135 996300592 999631006 604005221 882689319 115377200 625453803 129864156 891197950 397779723 522315032 433231181 697630136 667734488 965975851 96355897 824937137 887273648 994759356 976641787 989501658 15306467 243381603 984801722 999496537 31916214 126705454 626573379 963525951 982031399 985947479 716182799 821631248 215287165 255585918 478530440 635346126 467354854 541868665 357476790 818471257 241501082 992494673 625406804 770920769 365076415 939324266 300557561 873446202 122125936 386015324 23922316 359128479 293091170 862946489 513741626 792773889 557869384 798207218 78626165 91487784 647171181 780351330 564773167 899454229 587829583 833602941 48092468 237501693 738134795 810997257 871291707 925663555 130003948 521311813 494129646 843343959 919012533 989473048 683730629 861783406 195035366 432037276 61595485 490900034 290172962 659613921 583512719 999473600 491021857 576902499 989452465 992871978 81336745 923105745 47255240 359346904 958085524 990989572 353418151 454702748 327554730 461945148 321734009 932289967 740346844 769297675 416261275 788038062 101528871 262147184 737775092 847197234 542084999 862414456 570733367 621568884 121798778 309163188 705392764 712893000 225900266 340526338 690689032 865107237 27649067 695160278 37408355 975716486 466049880 627371417 955573314 989538257 18594878 250641765 801842934 813494585 752533957 754551463 799942413 858906485 663402551 705073791 933848280 946456952 656672641 985455092 718617332 958375389 168646354 536068115 656599186 665438747 937725181 971504721 238647803 954446891 447429455 773519189 503331011 692898878 326100925 974335549 129218432 264846919 63606645 827292180 751530845 910637762 679923980 932646783 70349204 949130143 693108537 788502191 939455235 945085254 565785563 891426812 100695005 325605507 957603752 974419920 4452370 603267200 703717637 892712952 221013232 565809874 736813242 939784942 945781011 953024365 215150821 774990231 454971135 911895189 756812239 819077503 771635044 853517740 741835665 843658569 689022728 954250593 53805571 853569634 414727857 623402056 203459426 337744281 206797849 811721666 796088215 864322560 674899384 854156378 952571402 994602010 749307519 980149199 900458235 951410832 67576910 88284209 111567396 935508450 161893159 781902933 175942036 446782602 44232980 994945852 58824365 149812458 950339615 990344030 439196486 942465629 112838008 719899456 639945991 797395581 409076137 829878191 384029459 401949236 127897917 760145306 689339730 860651775 300708201 407662812 71370127 341489873 337293584 694827819 121039259 669543476 774881731 933900409 163338858 642930811 6220916 490935776 542626549 642067478 273469450 829013789 251023976 815437833 55531900 223449637 836144048 852508771 647858497 896546934 491534429 525219665 193287354 661856528 42420055 321171780 904377389 996329451 797966363 889569668 36525080 425053814 188504807 267037188 47084066 522812937 603356172 703020725 549147943 806536680 812150068 823311668 448772746 948718484 77127567 334673816 875263626 903561762 200354862 548950407 857904213 945301513 726095469 892126200 376042983 883301547 409438101 761086259 342270901 853369282 44949118 796246873 925278699 962710077 58772300 614891997 291713789 959367363 228261419 509550185 389810359 660782672 95385543 288583524 239899695 845820278 519585080 595953888 883864652 955776923 302879607 324616588 379314819 459844477 374925328 473126635 260062986 788874168 883524997 886886888 477711837 717100752 864886687 938035374 738732310 964273377 613532612 901471085 127814198 349236033 703665769 727188888 69405547 478061031 435129583 521168972 556721400 608640183 447936238 726201209 22415000 93632806 919426395 925790622 834123725 906582424 667370346 891043680 360892233 953892701 511388700 851232601 677075061 756483223 797577614 821777043 7824873 277080312 376688082 683793728 538096695 691819169 6737283 509983073 733376999 946563708 116157488 739088442 409696132 889215045 378775447 798820984 865531271 872904298 100256338 277096517 967393097 981307776 798356255 872821265 57324050 921530979 87365978 933207683 204413547 554173556 883450269 976590514 18114519 801803395 406137808 905053347 534438497 737176453 450996237 814545459 775586639 935731341 97167705 930884410 374384901 840860364 273551816 932444307 626903795 988393764 669045283 955723692 326785183 857381166 956107227 989700703 619298671 956841519 846486769 957959802 170645580 518358197 309610031 370269711 296988167 594437433 745422656 833471255 484351286 969450684 394122038 594429848 661123595 663778671 792384147 817585464 372346262 949637157 12680058 138502279 928286248 965555502 481390012 506816856 924881522 960524716 474328133 918606607 580029351 785479808 722213290 765193851 871056951 924216257 688112356 769101241 941057644 955715565 663910079 757433215 727398210 875458856 698658960 924886082 652281136 874443885 207591175 641370674 560567085 740636408 161203612 946683490 862269990 863170225 817009766 944846462 995787333 995923389 668846542 771199463 584854070 826691925 820722105 924331125 70755015 819219714 519252567 759154706 280267757 833742851 905536164 975149873 415479554 607596180 736681412 973826397 430408943 871362337 887833183 943516320 878541144 906625936 577501076 700295510 449879443 659812458 400129861 510295700 868476245 931079293 894362476 911144488 480104216 495968771 643816805 793860017 305841012 754816694 724733805 918275784 700648542 870890661 886552258 956554190 651407200 817007580 608261372 956857253 441074965 904521217 738578310 871247641 281228155 441403505 245675302 940539137 465444494 676824171 724084250 823371553 875413718 888999431 495663582 871845483 802731970 860455415 277608258 690319440 954527052 999333989 305613503 987446445 85329048 305867113 293109803 779741761 125857184 661685492 989630028 995198640 331584730 388507698 136770609 989568657 844176657 863895038 614901644 685875191 152873688 810424179 836466822 930900691 844190859 883711922 887825816 976701330 518996736 778316879 438345367 591789779 173385619 906388523 216446492 270125684 414847272 451385909 720481265 870731013 758889412 998257371 261289950 882434715 259495196 590758051 104853065 149149683 612042614 910620801 137835523 237548547 961438134 982191863 916108235 994637736 990184545 993776017 688544209 820313969 537077151 571919614 358624544 478636665 55077285 78707066 376827343 848830613 477766450 931723022 625213381 804981337 500330164 824244406 67788628 814582275 829763280 917517888 836653143 931272700 423680149 625217093 885381591 990528588 894965420 996493754 919956732 949271361 236758034 475495436 607834443 961799194 495389691 550514634 288649350 921803372 355836403 959120268 143788616 382644238 926405973 997111275 462510983 544113929 962245198 987520794 534476365 615466034 343351711 501585316 625388714 667732899 770753196 806696165 859612507 913615125 324610939 979701877 328595803 405530725 78813824 153425221 590124779 638861105 845615784 965536528 616846435 716522867 328468392 469584913 846933143 864455276 607985275 857539672 633034464 970503328 886319604 983193758 828574536 828869318 389158945 521781040 837881367 878826567 656505322 790654192 682310512 998672020 285878128 720546444 213962569 495872942 452955463 914456996 809252108 946551011 718281688 756577214 115726684 455285675 250496463 727653432 290348846 885448416 962376629 996491054 328384475 428159236 927675977 995841756 775270260 960126772 386134820 831395096 979944110 986246315 789632475 839802421 869962967 968728347 921131895 939723608 355540745 562412968 963267357 973971835 529634358 592807549 899514047 985500597 364901476 655426757 279142177 844693565 976758534 987189951 430173186 828657278 183541499 522832305 348061207 412039333 654621326 986939017 108192977 834011386 347342050 984471910 133759850 249481929 720378046 928797982 399739759 711709880 560158225 576494961 221624360 540573888 784808347 972809771 853287265 916864121 735003258 982214479 614063106 807211240 25771613 578261356 334174514 888929022 745084068 805618522 44031800 982293336 414612778 533652276 710141504 833044320 879768304 881072282 63096090 842083690 518722116 604223160 498192304 845611287 821230796 957481101 588549215 689940244 526932130 630824551 556661780 583894568 3736771 666102501 320129559 377021686 71878524 475355235 413247518 716315558 225317146 375683919 972532332 995256993 45378205 619504050 559848096 590684892 465527329 883597383 351680078 621842163 410960874 438069179 971598984 991807491 315162729 571981934 610579617 628513351 273188431 618229870 926333122 984011044 841778748 939557749 221674805 970967241 636221578 778539849 804962951 859931240 37831318 331276775 586106409 714872336 485495307 684959878 175641634 253314381 831764830 966218312 894639127 960442021 535323575 625555328 254097537 489320962 832946689 991226847 658811091 851437028 304416163 649747996 950893922 989360427 419763700 541387900 798338978 809239958 855600759 991594032 874979816 915126277 79274256 493613177 9668778 457714345 686447372 935562632 368269708 789225328 489815550 637069053 973619374 990484198 668223011 779852535 997600606 999563628 208915069 564939012 165959746 635654594 102046856 462217131 992909762 999122855 296449994 300941458 243440881 945968976 216530514 299416466 616606836 804181297 481159231 563654066 909209552 936800260 151833412 949027692 842327521 912880712 662159971 803668003 359995276 937078479 448779217 942019495 973156824 998744595 97746298 539313986 801334541 868147703 495555756 762465046 83975279 695554844 755563627 943998733 285992996 551372535 168599568 862173598 740524019 798677843 504047792 585463080 724165140 751177715 803491145 820469915 466072384 738050886 798815274 948303765 976930384 978440678 392793517 584384750 917228642 925950983 195314360 575463069 705073121 931907218 797263294 842825083 560516006 685324591 865426910 918751929 464571770 873754409 436244624 994316654 297510185 655518344 856387246 960347865 832720781 953370105 729617894 814413035 187560520 347421267 171504916 964148859 269466456 450739432 2920369 180483782 990445175 996262433 184957781 627821378 604401173 948885537 664678371 828898435 605790397 607902848 658282463 876506021 942191154 952898958 580552097 975547416 871414996 987591467 489454462 716863779 773623385 985715957 672116077 933847170 837558437 843832386 938879254 998202206 36232526 694918318 744404783 986119691 845443829 880560094 979430880 981777092 627037879 881170949 705048925 765351452 43391661 687012460 909793885 924504672 897113872 970906531 421092022 539129578 580323659 919659352 494262283 669291093 503307783 569148084 255029016 598549697 893863319 901439597 874976814 998429437 534127401 627548560 376326131 706628886 458177373 567858658 784339267 879472319 76178538 863558221 870158421 982090266 616282563 823754446 982088430 986515313 26859042 50683128 586494164 953824478 623155914 822985215 422661137 434235676 111821765 911223717 805653060 952553718 467351549 848797174 289836661 467349339 97554643 343265326 330540220 607179122 20403828 100517970 221394527 325921678 930941508 978875570 867189466 935116080 998062517 999621742 77709823 550642796 335984250 812898195 516349953 683947937 972173701 979637632 433357695 941130540 560008047 994452207 281628090 394059125 741101696 831796268 41125212 435058886 989596261 998138902 153988476 425915340 186888589 197095367 876421493 989972862 357253766 893358781 906071376 953292810 252730333 346604949 469306290 868309533 473268818 834840640 576524221 923935625 484280311 955541897 919874933 986003159 984986471 995121988 178148668 979449092 509805617 657282864 491291968 672194638 907614610 965664732 82769393 729482202 755055932 977001234 733771362 768709997 741733134 926357271 578320233 596855610 954311713 956994828 276369646 313661456 448794973 727730985 863292111 935793580 90039359 745503370 10807484 874663174 873985142 880255360 750292145 843774561 692466455 803282782 921405460 992879035 661640711 738796930 54507166 839048992 431864293 694534267 553435219 843550508 963765477 999075489 643111113 679387148 719035654 918554928 41429743 913272286 582221681 773550505 586338027 954472844 596756562 925782387 682222833 777266655 507322236 584601399 303304545 535253321 191456088 978811120 904505430 981427590 132196298 725570728 323840716 658989254 254207289 551004520 992929524 996956546 716950494 802771000 818078511 832519527 587083146 959326934 942942313 978021011 982861346 989381965 716722411 944869285 527382028 822398094 965393125 972864283 132323959 428093199 351784636 770939092 516433800 690647423 130553450 816097691 10954598 441479259 720168590 978420185 181430505 739835302 649793131 724953674 830262205 940403459 25136562 946237546 154227817 164950371 381207974 539497835 533345354 908232553 712047602 888355357 220468440 698801662 346530747 843103337 964283946 991334427 545025982 832377311 848923478 867060072 543015004 905468396 501684135 995237109 771581821 812617627 273081145 704137006 939740236 949085916 511782980 582772276 214887056 971367992 26487885 365806404 997608935 999153443 254206946 366782542 850679272 959072090 177831934 675624183 642313248 731520631 944420778 956401008 561463196 577915453 40014229 353889690 678730561 706408854 188167100 754602178 557833822 737641877 667657581 938890174 832523839 934703527 589120887 658144543 497532107 623090003 207146957 422670528 143095958 519008080 872226046 962925758 586096652 841220245 800933962 884695243 236977382 875831351 131259610 373189656 358335015 894760560 282323202 782681188 911518875 988416740 729783504 748151414 785143119 945885418 253875464 639033354 232416843 851555119 738530606 795899781 651948694 727080381 303029384 563262656 144814434 597643788 298153522 897318198 462287071 932849047 359780941 607476595 915605600 966450841 903877325 959430155 812469935 973859138 907247522 997945013 651160716 939507832 470041850 680383553 874601733 973198210 476341445 857077786 555450248 912798277 996197036 996220069 804570111 843351196 523104409 968627047 687343250 765182529 28685818 623660200 435106870 873807536 541499005 773041200 18058778 187572977 540611263 820226231 937519286 972726980 758657677 817136134 729666716 764240207 740391346 754269733 587610894 780717285 741064892 820394649 652081972 765260977 207847525 546463686 22278713 353655082 343945937 800347970 270531440 856467796 219249693 303133225 583970635 983052142 966531930 970632582 894966473 960076733 137140613 360774503 302471321 489714265 982930686 988389048 361928563 577704305 513066461 759870279 108463513 201279400 174777501 749583972 826404882 979702952 430685228 493741250 289990377 448593147 325143405 424635170 394841636 685789459 435836790 853432665 132027656 481230491 492419530 885587244 530507906 994669576 216431530 942400975 727983148 998195873 861389582 906695466 238347871 741459425 134302250 306175561 191147924 684667413 259337145 837857919 394746082 734950408 51400318 145972865 137883331 779354155 281818825 728860698 401930697 530783238 772752977 890437017 984251337 985808732 573150319 789342320 129132594 150601555 65517463 387738728 809786996 937502375 58683806 526124749 364837077 549585368 137863050 641083068 855698473 994633335 569541140 587619686 925900192 954415352 682403038 846924739 985430623 996337814 158347464 992138315 982116298 992830558 74654267 721463986 721293749 887855340 503140131 767063662 983355074 989740702 866494955 958263261 925007189 969346037 122040493 512612433 360110820 913195485 540797338 657684951 601127137 746563222 189831506 930056549 248853470 610280861 376624733 996663083 998425000 999077419 258025510 342255494 499868404 591010956 211824938 853376657 842330935 954233096 207045582 709722784 767734107 782420599 891437767 938650158 865539518 877422490 473464722 921691611 342559698 854532980 228491758 522583871 284866757 745296682 843031189 899697122 164764346 891315815 716825142 892181056 179024361 897476857 143091919 638616211 469433775 543447481 120215543 650052625 634916933 834870983 930243385 953890443 794369733 930175195 160111044 325871916 490546474 983923859 147788368 181274432 363021861 715649549 462879657 969404531 52244869 570184967 808456226 901153714 967386448 999691848 184875630 469292879 409585035 465197196 189145393 997219009 964871628 991329125 605785080 806159597 930925207 991459227 114387609 387451700 889400355 987862130 196618684 641012955 205851742 924584048 764267460 894142029 787668713 889657883 65102559 958862982 228882719 693838803 655193478 744965223 454726465 969963599 153982128 309682903 998678274 999230010 548515847 689675987 606393994 924486877 502895823 635607557 18249114 170736236 39567892 520317702 803584401 976726329 976946423 978694751 115872762 833463860 551018408 601966773 308717740 982753018 635065384 684855736 240798092 932728011 522793614 701702891 556297462 975431562 863329848 879014059 227217458 880866083 930928212 958187783 674527150 824187290 737632227 771177700 82102192 255992847 85400606 908805807 599830679 636878039 999421450 999667404 718742171 963088813 817385065 851756857 781840814 948098027 818155607 947858454 644157912 985993968 727187328 789862707 668633479 994271129 377708436 592551623 891274909 916953144 162567924 554875710 9450437 651995132 557356795 950352318 67592396 866041117 767255253 777749897 633508223 851321734 94318008 453851252 742189536 928287815 422418343 640168163 412795644 548726840 210004107 385133046 644109273 959574121 558679022 892695995 461728917 625599160 880295168 995583021 249349558 860444688 39256170 486650179 150535499 683332222 955748860 997742694 585069111 802741815 412925091 697752340 953656581 971769194 850534054 922789685 462579930 661356940 253361935 803533303 390442818 920301692 73282599 581319009 323659780 905804248 13302932 165943379 155404830 612650171 787947427 937762292 709642449 847705091 429693019 574191387 265922172 682839130 680322965 980172349 97727046 154554783 231463194 300970477 800638562 978623731 288918369 493072365 410422090 944539723 48716334 881330979 930864215 966267147 2349224 306536030 475010439 976777131 77034656 372696124 920645382 939069658 611483945 769215910 918098580 958437925 905003293 929377883 180811901 899320425 209601179 806138625 949384076 962126883 12162042 577247832 31339301 647585951 636424756 970625875 887392407 936083729 24971588 696639380 64047698 517729481 397668488 949159536 206236152 227736084 495838906 824130174 640234880 719153915 954613250 956808025 289963038 391763833 875750548 887128337 614674252 990063547 945689524 992251252 200680423 734375183 563410441 863549511 771863912 863909658 531789313 854007778 489124397 937567891 617203576 845200807 491280172 954284515 46427843 770920062 721626320 966366719 789418912 824045624 928006392 995988311 441662285 919610357 936313104 995902210 56105183 454441584 84303919 856877115 956622543 959264554 203280601 622638776 689700154 955121430 723266721 858732731 447186993 602614642 183483654 649277022 527620723 989339603 552518213 964185391 102865062 217848568 409178809 680733341 883865265 945923260 481337011 838228715 840792333 982904297 806260847 841961710 435055614 615475870 893803554 989098962 495133147 666206498 240574579 540361135 362245061 860842626 358401232 789881173 53486746 740244221 897946848 914059052 32920195 408468717 551733995 887635097 254980940 778508575 414791127 727131375 99197286 773828577 217397981 401717168 660101212 892419836 256837935 322476384 558059419 589475999 330939199 969946588 472639265 736840979 619758725 767462449 694329516 845529627 983338044 995429551 236266035 820299844 825329823 964017677 523481713 806811400 420965438 908969714 73818991 669422393 524659273 730173082 915989339 958488896 612987879 880953514 421569330 424394932 388081243 898516002 838226949 911116841 538991509 982963488 242876534 372750948 260321739 984162085 412138028 831259638 991455976 997269052 965111102 974095298 252254219 717960986 845382206 923280534 659658772 850977734 53848612 495858757 410377562 446986084 304668545 898649126 90113535 249034522 666531269 763433548 412393642 578335196 70490660 664707152 687336608 835804544 592683160 633485113 672564620 822704745 209782126 405772557 879217577 933737453 199590499 482917706 938206897 959836084 867492135 975471179 596631049 830997447 997191010 999944864 329361259 376449856 701934427 722277345 141456178 267757085 851759282 990324526 540156057 540216330 582616673 658268501 181575739 681684038 425146991 860333992 39896454 894203374 32133851 580026460 938763876 945784984 589212996 895793008 48124402 924367825 921426704 994539243 430649113 702462653 261866578 940335468 461094311 691772294 378369793 949611790 733031321 996771459 443868327 808068056 55576168 676041886 436976793 900976655 91432029 556939079 85646776 717669057 686589275 792186238 521914607 733925234 21810402 35989941 582587817 668570049 499138500 932853944 15514800 414503000 551452250 626678161 917421925 992632770 354176510 483242371 422010066 545862927 580139054 650483207 550711990 577562236 87104120 257773255 821524028 909162442 668211657 785413668 838392832 948256881 351649506 374657226 893717732 906341470 543518056 991309517 309744097 712366463 908049826 914160680 773957744 982751484 946707498 993599742 559149481 609932057 82009648 175731872 934734595 992917521 218439431 475362383 178416417 488110654 447499610 831711217 98130258 237932427 78041176 907057719 595769339 852765711 538868296 851773791 99822727 631694531 102958836 605709917 883555495 956478406 216241741 481997653 188073343 550733412 316891112 727752037 29960828 978356466 234129564 393072997 568447953 838090803 868142912 955925795 487759219 752268056 501111191 567282015 884124627 965554765 544859854 750231037 886214627 933938684 673772012 911000556 480527175 625058835 543702497 773516816 238506499 375814769 836109639 872962775 572644598 907535887 266094715 603287260 800146095 902069899 275956779 843029577 465646557 873290557 444943785 541247353 762664319 936467555 361454465 398979526 729562590 859895382 275197412 938269543 709839249 916739888 714905376 947571954 735334453 741558849 616728895 780492414 15752880 639245896 816729151 934502338 179109273 387767968 554373685 939336721 975589385 988687802 269160901 312404799 208065112 844452925 517043324 816918249 548937221 653825478 412998621 626944835 358713734 415377526 661321564 675746513 465143229 582952784 109928879 705495954 754265487 812757388 951937397 990963541 58509480 739097602 544299007 878373271 28750376 685329717 998290886 998888082 133365223 439853004 569143726 652819669 302185335 364507895 384271959 490498498 677762318 743524606 971311419 981726782 872453124 929176625 79723289 313303133 393819844 847366926 283590501 614473012 399914004 868872733 418345152 774403928 786640688 822698569 596356688 983989231 55489062 203335049 484200687 702336373 267533400 711444151 76855691 162578734 785854835 871629637 55867690 856970886 163717149 286930495 469309711 974147376 705049127 957900112 207285284 954898216 663104369 829680495 741851205 980748864 63837421 908865487 441239549 958004138 390036745 547730840 460046021 753416895 308341007 949804564 507637720 754476609 399821053 806332156 208170690 357245908 631299128 932970095 633643877 900324792 26445340 936478856 119544316 677293243 441182051 733797053 543615750 678970966 991036888 991373748 212141554 294603655 723893727 781037482 819836380 964920605 402873027 480646644 962599464 974480435 827547431 960420978 733592637 885362793 920729554 921308726 949968259 980156322 835361256 987914672 198128107 792506389 33663704 184339590 487483168 857712147 885473722 988938162 536180140 921849739 332934175 554635257 216069852 429327168 307920053 887603874 627265932 793080639 689095585 702761237 782718422 785354145 584343602 690761054 753407792 822547458 2574448 410738593 787951266 789725740 341729132 535909052 185366960 293251418 798611949 889630008 85768993 134118232 291152224 710539911 444733849 602309018 118494987 783880652 218742354 953849960 53505473 305090608 850181680 983512653 814982479 911117460 528698985 789254942 771366726 914152303 154166250 747110250 382964726 999037634 492984517 951708487 160930166 420708644 235397419 297284088 222671574 313052852 445094989 493124575 422911734 770252456 56891518 92640249 793541151 826288220 830389557 882441754 102822693 104632741 81937631 310597799 641311812 873833287 884451177 958893195 69687439 435265021 646007169 908100743 569604646 598010321 90558887 368452535 125712397 953637102 582526147 930557303 549218355 887951601 572238542 747628496 30656920 41405649 574080035 598402899 897956299 930163585 495013005 772589055 702121008 853525504 488489571 509118382 414620051 982829426 395665087 496334944 597908010 842864698 430027224 763375286 962483475 974369678 836533779 923927388 556829980 872248493 788419583 864935925 550812811 984601268 396738258 698316908 977377323 979124336 233389529 609576779 715395101 998684537 628006629 730432408 27656670 123011774 665053339 852454361 680635502 703827680 202368627 626841654 902942653 931741481 416093941 858962954 600285288 810143426 337624424 844012601 508690507 707269337 942000577 954301977 404880318 645388289 229001161 635218560 905369067 991315698 473955709 476291124 897710834 898750763 426898529 832632696 567624527 899940051 203108182 424847984 467129691 658926752 94277586 619363022 816850387 938682958 737301909 858430325 618761978 760527665 333872150 565009964 801751775 833501858 304614906 532496291 842898506 863804524 177746319 559398013 940818184 998127011 841809733 888834690 125703958 326837465 725114955 842500135 539363292 806154718 940857457 973629910 806388989 838214629 836484361 991918067 683021958 701049779 569835017 739015917 275614629 545229575 792190791 864310987 181794029 603409001 799489048 838029343 314102369 816708729 215389284 826369545 809747416 927641931 349337684 880992380 262765542 494377343 783110381 838045192 719666075 923662767 72430420 673965965 488242785 719140383 332433878 600676280 196583972 482834006 45375499 389543435 620663129 793755777 606362848 830255442 666484827 790025377 817167544 854228406 843407115 938529108 169851751 412149965 826606130 911524730 985802468 994099638 138666705 231407539 490833263 930208973 574113895 870739880 475831411 478702258 459158978 890992480 836984389 885498788 529659140 909172447 136469041 149169454 932467355 992846968 860253050 929539844 678388315 679918917 915656448 967782825 183349753 825650135 580349104 602287414 749121895 878258048 951651057 976604046 338111832 979262042 194795609 744150303 430826162 905180443 249753363 311408188 611553082 783998145 875490922 938262296 234204567 722993523 620303637 937770701 924010810 961597365 276145973 946078313 318042355 757783816 748013831 842998386 801578761 812172962 833515887 866891763 551006103 639590209 291014550 534631750 176639881 290149932 443249145 466720783 547711484 946968741 480457975 998267389 971824892 972913311 564152525 894561456 353631530 943148477 160601824 619704727 266717151 551906324 646545048 679802889 141318234 634966723 734879324 824936774 441344433 951658938 968451766 975841391 869090333 928493439 764711525 780391705 455251843 803407955 881631089 999031704 429645989 629545299 433550710 565346014 878292732 888875535 496067194 624466249 793975810 969970159 694337221 786518179 667342319 709042195 953297211 993910171 819264473 995715383 963623724 972348416 71725603 545637142 468172495 532028651 853847313 985412188 329080879 690160161 598963915 746743271 728681991 957349462 794282761 976910254 531141602 829033735 517047664 615391032 889109307 915894766 106673725 990615163 764301585 986326305 448395482 460726433 720310489 765661337 91820769 954525836 978375167 990054378 243880285 423515810 287478087 391192168 947379675 958738295 134992558 952275337 694712597 713635048 870338762 912948799 721452592 867663287 2036306 549357838 577469322 670555105 27417906 306454196 701718497 920915043 690080998 774196161 708104237 768644541 123874230 928461243 644128952 856078392 377795083 785313901 32167551 288084347 64939100 343810648 268650177 414397549 840793664 858099700 599819329 707120751 932247975 949167021 35362542 974257269 747059072 926408328 785746268 897481318 141480751 532696137 498217580 645616094 766995380 999733181 514580928 759524846 78885000 440055428 138776315 297727412 301503442 593152868 367269714 909232334 899093207 943476324 86349906 835186604 78331361 388192897 292332831 589276622 649037395 840533292 378764321 841610299 241232378 714316542 855801794 932248356 441785203 685458316 690398574 739101539 701991898 875850471 190231133 560580007 797539136 917684261 422829109 932754274 280133065 473874185 957988229 993911586 685629737 697386613 210096612 928661886 126269702 149587373 693853654 737173242 642886227 896319355 1793020 414171076 199298932 468706582 489088488 996508978 200748309 433318743 685650252 759301359 424199146 645022821 738298251 889594753 944037692 996828970 14095489 712180260 284050800 570317327 652601356 704982836 746869232 841005203 674083814 866705088 257028158 663353217 994154540 999676156 441362022 582552548 185756118 742917409 226726179 609174214 19230337 914191474 620146205 724527847 539769089 853367944 477422583 611826479 873065355 931585670 911881678 997869249 141115511 902335065 853968433 960927737 842632014 960656338 694556389 703362168 297965461 983216365 671225183 681801955 134588042 868341574 366475969 371699223 731790274 848711548 418485096 575427355 133670948 940052081 841226977 873057788 17546906 915364149 87908641 708733992 970301097 984541393 743244903 987291366 829332526 870335868 408080730 544356451 204050283 905642792 631839707 864131063 191142416 826296965 141824704 507011641 49310730 264180071 582571469 622605079 921888207 979617875 553228353 556994884 486713879 650458219 656288146 836516731 907578098 907777531 386351250 832138195 112596242 145741183 907798277 931780282 167652386 429049384 284538309 583611608 651927282 736178765 705200218 885868218 787163480 990000265 724175262 793291885 973241056 984298431 679447125 740013052 430772581 892461922 247509411 823012951 845146821 918025325 924785238 953905983 176099662 259652309 394397725 808601148 206136184 610711090 372819091 772273429 736056987 838673077 380928044 886348956 769755705 840259457 122483061 767196952 489978104 820895080 45450195 288648696 9883302 670975947 605883663 732809528 488979911 516759578 57414403 269522367 576586595 750153775 879628838 909797907 788300896 898324543 85101205 808155057 266141914 569594122 318606406 642313641 42192764 640247183 755291910 828630476 577052814 766647232 270444773 545519716 485308724 957373550 107587775 697210658 980580757 999445145 572535866 632209692 25547920 207624627 127529405 286875040 870370687 958159535 161280637 837196709 376205066 684144315 747720602 848139943 777153421 970057066 103826832 595408096 798939746 968467418 502881193 653597792 970627057 989056509 961160314 974725851 406313781 821036798 253390523 914432981 985597118 986926551 258171616 961957651 696063880 768217127 307560090 537510591 318499029 834975308 481150582 915282962 930056582 968212528 966199070 994847226 427301655 588610579 384873651 730338758 734248138 878435075 125045720 159675783 369415223 685324606 86460091 678848739 646632602 869520631 808621074 873938703 285319037 855337473 153815202 665964492 556702916 820888615 339655665 706526255 679603422 718780413 520649292 929252481 429949108 829377926 343051351 710204589 983899105 992038733 332215836 761714510 203561063 468465167 816900058 859061045 964596048 975232904 359569552 607883917 961562657 988607232 844704440 920531069 621181839 757753207 708042400 886494900 94978973 636784262 539037071 819476718 64632338 101958790 106285858 412410914 90923024 540231072 570637304 688989270 221834870 375173207 127780183 761292197 27252386 160092638 663087547 748832495 763240738 979394559 552378803 787036244 673087868 908996179 1669478 488877452 274898499 549643168 126751784 948556157 761791407 967613584 331415957 529095490 104117357 928639687 340010954 983845316 193580772 890478679 281781643 926211225 927961596 993327590 255391943 917022742 324368843 906021456 313945197 714837426 860149688 992269109 38518739 520127639 64008839 111834114 356786913 445571875 714573921 750898089 86864603 384700762 471820269 520741707 91422763 110117742 287204804 339886922 21119991 482806149 924515553 966873766 804790124 997605753 378339514 832115700 901959760 958187818 989636230 996204394 899755418 995142538 312169346 668530912 239576095 306237528 599384944 837886861 400403751 968259567 68970728 696500775 425460989 909366318 264395077 807628582 787864658 905209179 515365513 705315205 940893555 979534906 443946870 749105533 384908409 460956090 496200427 660145406 875160186 883148062 206133291 747404397 399760942 512109618 817184162 841048337 272071924 670551741 409560412 423596227 969173238 973925527 620074367 737669306 446577196 531905743 294166106 757324079 209544607 758046352 708059345 971122224 401386172 844642599 463457439 876752121 999355796 999776267 126996677 849511710 832194204 833211507 319942546 524025390 447327799 635236982 584362112 728894356 270331372 742524885 504694104 837167399 924813916 944273575 335618293 474807115 310015034 957682843 241247176 369137872 440123113 518701481 73290775 427192531 322236990 523345514 530298993 891050280 900771149 970022420 149472708 152342112 570986014 575909588 500112682 888594704 104076190 439047848 754147121 781971273 28206544 232482260 137504275 881295858 355119453 798587400 584545922 765063692 305901772 481607494 199871550 593238914 679392107 736591103 176558882 225666700 203570578 883666298 259954420 708556445 238762688 597380432 432775343 789460137 550771149 589197009 506810892 772033193 629038467 953799644 207393569 740379398 255904355 302733373 447305310 932635667 140589701 408042361 315114536 805005912 620615701 802715088 450430912 790386350 775470600 980581931 467086698 728719763 310686384 421478483 993853571 993981702 469438368 954606585 334040199 926653593 803834209 958497098 252960615 284339341 420272122 595569492 121285736 198102373 832937346 896899080 398127454 690879217 286893582 320374472 122573177 883525665 847845812 954943007 802079005 961820875 408322647 489117029 748926260 966727416 918484472 979868690 190681022 322353697 928208512 991456487 201997825 633744768 100694337 625125495 31880269 120128786 991174006 998392816 143489357 650221109 323389473 958685004 535470999 807658100 293157336 360158435 85409702 219380419 327832502 968133987 538267381 676715415 58339402 313627086 821830666 896100946 806918861 833554283 874921510 922764937 529640803 843328700 236736904 696059489 525706017 906835861 132655306 263226477 252998868 581399987 367420631 541101840 452081027 459165771 666552643 844295705 98835869 354816090 604868251 981446445 713227811 892251993 767715581 910340519 90037530 400212377 979002432 985862968 325634149 514329880 858589214 957540520 316902802 893774928 931412982 935511808 272744569 336326369 343098713 613875047 569662302 661252227 480312466 500285315 650760501 738749197 343158811 453728147 510872287 880524325 879279898 879899172 61662583 976697100 948316613 977142657 579065651 876058397 79052934 578192468 982833944 992837658 903149111 911819025 886850747 992627692 360402190 744343181 419840905 437191692 235528488 340142069 395528596 672253188 380852308 704159425 532963868 551670278 53140370 395925490 838825994 848622367 781907804 860357661 12962667 443635338 717372465 818864775 578883318 961722899 222429286 255195467 579056684 657521714 959225532 962997375 701924749 893860806 506387586 872163297 773823983 962190857 402429554 686058787 430818549 970153461 858159593 883844129 666181090 757131352 635881994 739952428 424550756 521707382 823169975 872495849 804207557 995271867 491261613 788778054 947289457 977103796 586252317 956997311 491930959 896681300 768136905 984031995 493403855 669576666 537823745 558348808 571296183 583578855 54524596 107273053 202526030 255003629 514485306 989819595 811975942 822113534 639277113 873890010 13750965 745808074 704270946 737587582 393074691 408848832 314357582 371461431 438217248 711467620 889292814 988761569 587601540 843215229 447962187 876561562 459961581 707238061 307961766 620793815 275543220 898634926 219138560 436173440 906076867 976813730 697210335 991821082 966212795 988570061 939467267 945217024 262784398 645970122 453237860 937279384 356021619 833330037 650099079 990707585 217626742 701000198 167227443 639060907 591804863 791820888 852043509 973165763 141665108 467294572 227556865 847274477 898857150 911555041 236294286 817845623 821455724 948192983 384072749 858514158 61538459 990977143 134268353 534483169 409442712 544325633 142177987 942266461 232719262 921120090 214859485 988020402 764518541 871945785 846025911 918059152 790629981 957050033 583898908 859824377 938338558 970023096 39514908 358181737 584189095 702748505 528652433 802540955 982634412 992375396 995855009 999566597 731862008 883785607 941298768 941403656 143121710 370873098 398725634 564868550 739963395 888089387 234391784 706239788 62163267 151386149 43847361 667650971 376064325 569038172 932701955 977122169 633724927 939828759 576018584 847837361 933020163 942296713 353454429 682679780 61638031 640384223 258610451 991347451 412840346 670548437 893087721 982728767 793410549 963337157 640090109 975427133 97451137 852630121 501753347 969062753 875746080 978297761 573761602 849105366 526375478 806097847 585273726 756787798 700205054 786945018 407972868 877769124 69959094 104406862 792496515 884868473 940385062 993373526 437208185 823541949 470383098 972270800 8629631 362274273 178977752 236632071 181958965 217259094 108026971 529467538 753093649 861265969 86219419 960907899 336017713 931726890 514438796 766748086 153183534 576946588 413393044 884530905 389595746 625122824 64130743 723107301 758704720 921281003 180492594 279268066 808250006 838151715 779769884 871779526 346695395 949825697 358500074 735174110 4894847 216291826 266968161 820526779 529049412 800865770 162842639 937948734 911285441 967327421 412799186 493667274 593757083 628345367 942938511 955850514 257601305 540369790 709258720 910273934 622927572 960019206 351312276 424373375 859089037 865536239 968571420 981464914 244588255 746999200 743839681 993276455 372478929 819377758 703063643 752083879 688398299 785948264 535858402 811657536 912779144 932263744 283277392 309754126 353286680 752720365 451128286 643009228 544995824 588405956 397095396 830852969 489403817 933295774 974886288 985946906 304160972 479484754 586594062 644997269 703924441 731098959 774997300 985704307 845167414 991791946 100093501 501736565 114279402 262219343 2985272 60982080 975627873 999490392 544275668 826172531 794426093 948542256 201054738 886946562 580557951 781758561 32056201 667260598 417970991 987410480 761363375 996421123 505825321 716909025 42896112 798240985 782750992 920885519 455864422 731695650 595367530 940921473 444113490 548280700 764210836 850915045 31373634 346582714 390454323 986442785 590488275 786238965 294075272 632463866 423380151 833013606 510431822 806545626 679651064 837220779 629918761 794324689 582250218 594262402 676851049 681892814 688780819 764811742 435412002 781931097 84110206 254160897 778991893 844474680 57364586 384193508 334587262 649800409 88771011 762136167 309796832 846486123 431424172 662608737 375776855 913327971 523965183 949053657 262731060 610071257 339460832 762774558 777147925 808970689 571770312 985462902 785022752 863450603 971420524 979392818 903146210 927824813 931875164 995443893 395122412 757739434 624341447 647023349 488474308 807387290 616555861 878392306 169773008 483118009 892679758 992254850 731691396 775469508 203257188 338405641 22460572 792031822 107478902 777276686 868223968 978289097 858967648 987413387 339766549 387178976 298972642 798268123 469710871 751404071 514130702 826654389 890611397 983038148 96029036 689593895 707380889 849334705 562906829 578784300 122858805 610822015 728773550 808324218 312244370 379436243 319724624 597118695 962031707 977261960 4532168 95741629 242144545 328853745 595813720 735954380 788632501 991374725 2289127 528020954 701856855 849982420 387499282 415795961 441287110 651269367 560065391 770180320 19796721 209834107 978125473 980657302 89287552 419154946 395249987 618422781 596346301 769588194 66978736 67295673 477559727 723280118 135183374 655284303 264862915 422198524 266944270 608529926 385758737 533638655 378539911 811289561 8287064 670811527 30136958 592076961 104182103 127462241 451853700 553925781 361017974 666015558 222445381 527384402 401272773 569780345 412861445 670832899 770031218 878465177 499970800 690753732 686316130 953074894 494160593 762602568 189679718 940249205 769129732 919352263 993786966 996361780 82086852 351749674 517334185 953825931 551409983 903432528 81548752 241702387 247684199 614294304 606654094 702399471 297299514 356751134 90487199 962166306 541135515 669669437 13795774 149861362 944492844 967211710 934041533 956329114 211891896 357550518 938119300 989450257 943037479 944664934 73432353 972353875 215171250 823398913 935151879 950708998 934014757 958305238 832126910 932356656 733610950 806769832 873761930 929125057 515114109 659910772 29260473 501651016 669623921 903968494 408591614 500104927 44101882 653297907 460105845 626802251 542003379 968829037 800351699 993981731 912797865 993544357 289770117 320522518 252148363 400406193 227179635 830585566 768489483 911385225 109584261 948298156 981698955 985975035 215111597 912898383 950453922 970744360 812761363 841993840 732651897 847780443 33565412 665032458 567579399 607381502 350307888 984080134 218286361 826899996 301826161 400847186 915599411 952856974 443719337 840801688 707258999 912724133 53161644 125678603 529508183 999563616 352545562 600316313 927910172 928180991 502740492 510428581 200824960 594464244 569882640 667115417 471896385 964924168 70083756 435857426 494645187 965644497 890446423 943401660 649177494 742474522 610014375 864554335 802916546 911225944 287179070 686183401 148141400 326420210 58402858 783866626 656030930 930540702 552362251 991997266 579818458 806137897 304475646 693012430 108032018 865005933 734187031 740989855 277117490 400586721 158489233 612630735 10800782 264611865 89882787 580304203 410908484 418379768 413929357 830812542 173323862 203679501 201025612 479430726 795603352 849359276 149692250 724989930 629978076 878822569 882533634 920881875 752020206 958274019 384022325 636711593 427148577 777924043 992481086 995444244 120148889 413213538 187771368 230112763 990192926 991547014 758086433 829923813 723498750 942811349 774754220 994960174 790044357 831699500 307658312 383937945 271329344 327905945 747575443 794356049 464737830 496972295 630847438 693061709 785168084 992944822 939854874 946158210 462532345 995168216 769633536 866159142 195069663 283330843 50855637 368997238 160380899 290620328 455912144 752974596 443492665 469520686 996595764 996887218 493810627 626312451 758838226 835080828 182034437 369730968 472106006 664507782 814744416 815015506 331689204 375280920 285858153 370773368 740775089 921628624 925682610 978617438 498199627 954835163 890682176 923913426 676350995 800269102 791124742 940527448 764191930 965225593 213454496 280930756 712842128 914684983 599119854 999159903 260576856 312483173 801025876 826670491 172293671 913108077 628920901 869382469 261737810 393220488 863667931 929653190 58194414 628786342 583279567 694009242 950869285 964818973 911200225 932923801 574257372 901768430 307439772 396351277 306314373 836422441 950896295 974823826 416789227 856365930 133809703 411312504 993489190 997550312 40118853 424671024 506924330 559187997 708313281 723562005 167946296 812206851 415510343 740819060 623794394 743156181 462291938 878480695 487496938 783998300 232083140 565288841 951141465 987413772 582191262 709672403 776586823 786784917 452285921 820477605 682438797 685914864 959839576 978715255 411934312 940442474 973074239 995861098 839766049 892963185 782210254 946708254 759392079 978096821 92233655 331868899 775784910 876698574 638736932 750862565 60369718 638898466 70110687 695559978 439011055 810498713 495693366 946569793 771417314 774818221 481247005 904346488 33827590 665931639 711679039 912051514 972830383 996734011 662369039 815036185 406145176 537758651 172077409 821784677 503996058 691531284 477438706 521521189 344886709 427753546 411651810 864182586 639855484 849246206 970966938 995450811 647774604 822254734 493862119 849529354 934466170 971517594 760700257 982948651 255168894 697317781 947819910 948468145 123444995 174460733 315598342 963225270 831943025 930667832 897081607 902885255 412824319 750302613 142441017 406549949 528625522 664358330 574123530 583595704 343986351 605721980 125533107 144448437 534804348 609933521 964080051 987434736 948599608 984791214 405406245 775049609 365788368 649522007 948067360 963713025 401447939 656448386 573347984 697248027 100369549 499063984 554556522 732487515 516966175 967121056 290680468 938642005 281329591 789091535 58206589 486144006 446745120 580077937 820496718 824907001 415617251 766236309 788460940 887064462 514492155 637025611 216791430 668413594 57176586 132504399 719100151 767302060 356077532 448150586 833941906 890226931 746314676 897803646 863305567 880421874 480597997 774994845 565377537 597148230 249907290 855553786 888142205 922216954 229303676 512859940 689168721 762140451 32346988 281813522 939939347 962171594 438803108 578342260 61816196 401476330 748047896 941671852 112243022 184405822 596749717 611390031 179445388 900813980 455564529 638908395 867111411 999947229 897823668 928358592 422653950 490454147 231094064 259764356 718444764 787890270 79076645 873882976 99280670 801377648 220954076 603256175 359720990 869876285 990855486 994372775 431063853 472938650 38641712 568963468 273046889 337247671 722894562 859307202 856413048 954305146 44488519 241602854 882714605 886148127 954810629 997422833 424289601 951706745 752011429 902601916 964387806 967141410 664228120 893913524 751464013 919678601 507951562 881533750 755419763 875542484 517446595 888113161 433359607 585282848 687206536 693334936 499509986 927539308 201745386 569135050 903533529 944937753 233276509 396980413 67223310 677123958 593475910 770747199 243768147 869121698 368034669 476535579 364019718 937320262 911682048 912126929 67002003 285281409 558641473 656524044 507955104 863648822 283765612 610903003 626333723 831278441 424120079 576624410 719381405 754490208 179880795 522161133 892222684 979248401 411234545 742554383 763103806 833667622 782526841 853574769 144156381 962655757 561954286 624711327 396509145 963377204 279774398 511142501 730198617 879552156 132010892 236649374 938598 738309828 454480850 937683854 889818709 932513315 13434411 200364808 243388595 632821198 712933464 730846092 937275452 938069992 887847091 991143077 290168204 635825098 822738620 908488018 924849278 942047562 353910211 387378680 263368046 580589931 455077806 563307755 836048171 872124611 667451568 796094078 814862504 952781620 664142926 733870368 388270292 658874703 916384094 998307762 714264855 996258132 978059547 980470902 584606661 747423695 421889946 459808413 984415113 995639578 219616941 892421709 289577419 500667424 573109471 845481404 745859922 968113863 309688375 933822820 184591100 309853525 892098183 967095500 325633154 835896753 884075026 990759410 13437797 606024777 589286485 708992102 995523059 998372374 684728822 960956249 710397237 827981518 480134222 738680279 220917324 966935440 438977297 572765816 128762920 771330005 591762506 829813291 694037833 754223117 64664431 836258209 936878286 947608375 606081432 943624577 686276853 862217052 116325403 598978581 347536630 590670685 569929527 664168815 823559045 969505098 97995342 146047160 987806994 993324479 595618141 911167851 652736363 840656915 405309062 669606530 387982354 968938563 674192202 993017040 661623770 881427937 786458271 824258233 16349310 198721980 94560876 166612693 510766085 647338692 764958944 967908353 324104744 764676046 96780990 750628418 817295775 940967648 166584331 310137121 638477838 947407288 606095672 750756263 38833995 614194640 406250249 800363330 636707811 832939069 416427927 461997550 842312588 883301535 423541169 718372998 690660691 885578302 464990971 677646645 436646622 928056468 436552757 870272742 262011272 820025961 590578696 780554183 171773286 816597683 368966707 795614379 180851111 525647415 387983351 457048270 811681529 934609051 331450942 983423188 421084611 617197075 74512452 647366479 93232696 709631971 458872871 807019514 998833353 999785244 236037855 419303548 779798988 951567003 778660962 807911516 173511623 382147302 330226294 735033526 376664611 677379460 342546638 730180464 887345855 895243815 514098688 568080613 339497777 551719958 913994331 983629403 899462587 903397872 970532686 992361680 123543325 517277792 296310921 525951453 303274973 381491332 940165268 989154244 16376374 384928934 753683179 858613512 553029555 849405879 208975025 239143021 451082558 511173009 993207326 998855525 587911640 628694022 700936500 705255497 811641172 921299384 949115502 982087729 405992448 781866797 533970608 876656214 94251799 801793622 329477442 836628255 664135790 696337862 577804670 996390139 322173560 504628984 932532385 936885548 92188026 440773102 475315865 534528018 243070068 865653916 865283308 930824345 625196383 715531949 153472902 818206896 18954592 80190556 921476505 996182162 493656974 706154295 845550493 961467314 88674580 733361485 354970857 757120288 76358909 494935341 252079994 692033734 286774372 575041565 558675613 850914746 262564963 654044755 280795466 404090886 863380785 964556183 222970148 997306352 660069035 694105066 342462057 936995244 411491742 531088015 296059385 470250240 343972675 977759486 530994020 878819838 262508246 275997695 325108548 771791809 660025770 863561179 101917172 771928811 854016974 892531564 903446977 972287243 93699038 326574575 327289349 899651635 998937009 999356543 3866949 985261982 932699996 985818780 358027016 368757098 926518351 954343051 373028095 725521229 881814975 896835796 663567748 980496753 194109983 537185031 592871227 646181670 92313869 466505466 911227298 940080201 825912475 842112413 92090565 813471385 612176687 839501994 210418691 271382609 94953379 579282693 335004647 851656465 478151621 834919766 809419172 984875398 746712161 835449840 245015358 369377639 665634368 790036382 547326600 575102795 20403888 369637325 564901021 749418370 812396587 836410356 679723861 693551278 762990449 805275637 341339722 670023673 457233489 762225153 379404572 711186544 136024540 323802475 160674860 819378853 721989129 732172146 912784788 961370400 970000707 972595542 231078409 835833668 648830135 753181378 827493615 876424467 831876577 927113327 776718565 941235853 354485011 920013204 678268170 688467920 306343486 942752288 891877751 936356369 567978599 822973372 158433524 285948048 476097194 575422593 777246103 859125267 738959797 786753666 176289807 511523687 770468081 905496335 227451569 965118749 217725860 727885125 223786129 780488158 527718338 878563900 651060921 988378954 655283961 724287625 563270097 784189880 841218764 925616900 331809847 608269937 151278726 762964104 657352510 680531134 709765571 968771763 463943947 700991354 956328346 980973099 333218919 784112229 418859527 574360264 506592888 822240287 582089617 963896570 353087256 409204846 543357080 733568984 539263136 637298772 142098977 388780565 835773139 905717054 737694198 839896531 424858165 794404301 850695532 869425369 748136011 948446863 205744868 832847348 357980022 961888727 550996660 638787688 496173242 830874949 278289965 446057235 809012616 904260536 253847664 712640301 721375150 727268962 682373834 691732548 518265228 817477098 634448022 722322517 143294965 371001367 449096495 821640174 282910197 697180161 529527035 997244080 284814463 679289471 343885744 615405570 40378041 700978049 740491638 949145072 929350599 963250559 220495900 412319317 925833655 951846974 497487689 918814514 854697442 914450588 604535694 659652824 191003736 229219501 853455205 880090134 873263320 876510571 132998490 442761803 786539472 807504267 526210812 604776613 945230765 958418062 210239101 715080125 171194377 696579636 761602762 905787128 218946656 416066287 590583430 838350328 294605411 860721940 134622606 249942281 411789516 745814988 940646559 949437495 958682941 995483589 83589401 759426531 587400635 912176949 961730301 986944362 915890078 916804887 856037057 995215719 889400847 999538250 345828146 414499071 443340286 533618309 449407001 693514283 720059222 796869457 401054317 827015187 828906494 987453489 338138624 751703652 724239562 987357628 880619888 921576979 841321007 845467851 745591860 870404217 855356870 972296521 63689477 228481177 31956694 437278226 610226561 696704425 554263131 766459331 937613675 938091272 335680083 807351891 775285413 786824365 590928512 652305392 946027488 971343813 23515939 161948277 288232419 369428007 391822387 941902690 110329518 872917701 71360332 827411520 351302583 882159138 498996418 817845098 525096743 657732455 659214749 848441518 606767727 633504312 450736241 953774619 786499560 932524281 302458770 801967540 492014264 878421168 505037478 550129218 911838022 935310371 482159378 711544719 454018732 862767823 730270062 906778979 849942001 953254832 762317829 793399444 214847643 886759351 115127900 460565597 952043692 988604824 795782132 951799526 745266808 851301274 462638803 464689110 323632571 920817352 697656911 870551675 255903504 777790368 69337655 634753225 755216855 819697194 169627877 546898553 568196466 713919508 408303691 433949275 199101515 360128668 854200167 935538180 329953785 478501188 596804945 706701735 786100494 991782894 567831232 694835284 152423735 496463806 129888801 818330438 855853351 939967844 236912027 721613055 396016214 398638265 987266378 996927657 963671216 994677277 294131778 635160004 8069984 391813777 496041953 657205973 27749747 112592875 147155692 595236092 671198323 890879455 27783276 305524004 938611055 973066563 754841176 939589589 519284068 755317289 512821019 550262778 379470197 856198235 956754422 984933681 199924013 830247251 283402698 292423395 424073105 916314397 56783011 525820774 868137498 910689322 539720528 704096856 933338901 965987340 743036345 955614872 375987123 696108449 206197439 723568323 235180504 914625560 604077160 647395705 901367950 919948147 71273562 496667831 988694268 997646073 172733860 751911738 465820727 484503391 341307398 521420622 516867778 759359206 536828581 624550501 577903750 855093997 918725016 998255317 661343703 843770822 273720002 568053262 191323089 888605456 854680835 945333619 175101369 442553920 559719896 741420740 416760954 529306678 139954808 450802970 484341515 580597690 972106409 986036451 575808660 803036598 121846118 711497528 26265916 675503388 566665523 916236022 376789636 739272069 963941013 976523576 599290202 882674509 660865672 919745999 840142256 910723750 592982803 736028983 77431750 411643149 484601982 673228506 508692248 767074646 897455742 973260473 576329475 637596157 557381730 869555020 462309539 974491108 271703061 888294196 853386639 949534135 542429825 712448990 146028618 705330522 94773573 595700840 319595556 567898687 1097420 348616738 654248281 997620563 465963553 987610529 858293786 901706280 738396227 798287790 33048418 226778898 661615215 956530411 359615009 897160469 767503717 958838887 177047427 840713457 232160277 689104799 413733274 934480176 624030954 748697133 446041818 686491985 619971641 803064179 917158017 917373575 428618989 667790517 283146204 919624921 736965998 798202827 994451608 996686088 554229479 840850240 388335987 477686127 455064679 521418797 187053967 736147096 295543187 314516326 247435968 734746680 711446137 972717799 473953266 862045035 103232752 897629923 927692271 962986443 893076250 958104898 76789044 342583930 144427459 392932033 329384507 495447435 527365664 919553931 30272143 283420825 968870739 972280296 679479277 839451192 639568648 905026527 693453085 856793920 584902101 923995487 698494684 996860350 223307709 546415669 320525446 478681641 244021524 592213608 268870432 278177620 615478363 858803808 162609777 479711091 568861875 854739711 215071571 598070338 771672714 967174626 119414209 186897328 258575628 726427742 263090592 784949910 564050962 688366228 623386468 999497227 410239382 915118507 426901502 695769047 568151914 694623854 230782274 271976737 620891431 724184639 161273257 474212727 762031127 988533535 306865166 332605268 854414277 977395146 517818136 609186798 175672773 531684675 876524839 899757714 570725123 844667189 700656715 904875675 482933589 559172777 763461175 896749782 586171004 925804764 889849505 939409278 983794426 983851347 980252928 990219528 487095538 655932882 139974421 507409629 922274857 956658279 516616364 842237101 703712304 966534109 504100733 535135864 385692902 691157789 666023214 690360693 963933026 999937540 363009141 588577477 604961428 830567119 879908935 926768322 725167167 928070266 462442116 887762669 446527982 987017215 292925388 727942057 375306292 461562021 188552423 968605024 419718332 683705227 934797624 997642376 61389152 663340067 335895659 884476864 282979824 461360424 720779535 798409940 41663074 128286947 904958233 958375300 525762047 891160139 708063084 876360168 642308628 738180504 649830245 955040871 183035191 588708609 911107775 949612078 437233562 785037585 592288134 783358154 225005336 239199775 311677452 333268927 302407561 673209869 579929960 676294328 18763711 256378904 743001693 943710899 356228799 936145627 97466014 773911929 274742024 889740659 985089623 995948561 514216342 886963601 289791784 495749968 737595844 842894005 997880198 999264190 739102808 982949027 821716482 998986042 799587682 802082482 513675302 664888431 744482525 932238338 685479588 995377012 457901416 950491789 473239072 946342021 979322948 994833629 576002143 634790828 19878090 544168299 134913968 606930449 192037444 247013079 584946632 780396824 702959431 960002100 815482736 998449809 675819769 964742625 91566220 957211462 588597739 648431247 825531619 899542367 310549851 346077364 456223826 931060251 698627059 972848708 530353449 713235782 801639590 846208915 952030697 954834453 800092689 881770221 213094856 359609256 989646522 998212978 588957540 773405376 813818640 980185550 167410637 466537981 722292692 993868371 211956128 881284472 441418565 585991539 311446939 380208218 680765145 889634503 285533470 801290346 407761244 763982528 963972834 991276683 255789618 336121000 91811775 311072835 219882124 853115572 526037129 701733294 935775491 955596182 505126916 922146374 113598488 150156950 655424910 711912665 801770618 972607684 87787486 555542764 340923496 480967365 353942486 815045267 244051759 368369816 244785604 602374704 875931369 931064228 201193060 653151733 376897601 663700048 86365885 379736444 601786422 823711116 902077691 941828423 987050598 997357822 43892293 144072671 719544416 845839549 121851585 736620869 860052521 902165718 742305917 789525872 747867625 752813881 19422375 409090892 525601574 821813689 513086198 911469674 684239999 727738951 424631086 660770494 574224707 812288552 470439486 632950815 251324670 651467881 972550498 979759430 592212408 974798427 71953667 914785372 213432593 941883464 641730844 684291253 603095498 695697525 692963027 990862876 598166271 885124087 23664896 169715984 700124495 711120274 132614966 213405106 380365315 798595619 927513106 995598083 864145929 959725621 730533882 896202661 312305542 770459839 471559093 590157763 136546834 928862455 986669692 997714484 846273853 993060725 104184020 184337200 403721172 675803508 727479309 735410477 544473759 641321604 792335312 943534343 23210548 625791323 91429165 898063722 569779598 984824997 792689247 843331008 478157424 660730532 987751884 993395968 445284650 618333769 902851415 973212740 791240575 952267328 351184544 955451174 976971979 993864111 45812661 995414768 553807972 948051739 97712823 508818061 721933542 947247765 121811191 824461265 225723543 420399929 544773907 946667910 266756997 737673378 141828798 196665305 848894821 893001503 495639899 708022149 132872037 273176567 623210444 980090649 901786254 955788599 463243263 760027680 349478669 464502704 773437553 790861353 138059136 218706443 648773698 973816288 671033209 881709968 585864452 642039648 98475328 859756149 345001470 577801320 217011008 687132131 621307975 845063616 658318509 727247796 510761152 826087613 280226709 962791409 942006488 957920465 139073851 260455616 984923529 990848816 237099459 282965832 678567642 817339776 214434133 319698704 589485733 973914807 898576651 990773368 229719421 337373339 944374836 981532522 492893713 751667573 505556638 837290438 104224614 401235012 728378337 770127170 818036646 993232706 557750180 805287213 728160939 865369060 230815054 438839037 235095183 971482977 258813572 499891198 9561188 919233222 211050702 939377844 536184889 769712067 332535784 553793905 441672981 900088561 149509818 776174542 769140971 773378181 316693830 796745902 492641270 824965360 260207699 268626665 68410469 883995920 486834978 714753232 595229582 903926439 142202524 735545831 993841288 998746193 440327430 520995637 446132738 646922361 28614430 844127932 377782083 885310607 691932232 873409476 746969155 998734881 641574062 894898810 892481654 932436604 586433792 751231979 569958680 738009106 49609727 748657334 496915101 756201436 664027678 835144889 591075389 806953613 253786211 792698326 3819855 405399832 345025230 586412543 236307427 914942761 224177309 828123894 986313351 995138746 915994116 979610327 515891484 854380255 269970788 677049218 121897024 236908602 138430629 639379190 890135468 998524957 955395418 981116656 371726087 460202894 145162252 380310068 90776439 105697855 255301976 747189278 534125163 568926903 850507586 944004780 833911151 888341280 123847470 445086156 129000697 589184045 14721715 398737512 897799050 981192821 395627305 577276818 52095965 921877026 471813803 833617584 583780783 793272138 675018354 911100039 249389133 702197246 558101251 982035298 491369956 842049752 639536000 681365315 681739082 932114642 71921123 901548707 75857593 863889076 673019785 864371833 195813377 995550025 807399895 824598556 401881807 500536471 424138822 471006604 228006971 902769962 711023455 776634056 578920316 790813636 311915986 507026289 210286100 276242477 281550790 445192481 550696501 699364095 358394695 755052570 828882618 873518589 201650759 855798995 351002768 897741643 761461785 903151467 460116566 639995006 15109160 578055693 167223450 805100627 126458696 417948639 748175362 836392185 576169308 605183745 917202573 928654383 890297292 951206395 927711624 981061462 927674572 982546293 901975868 977626429 458658592 874417197 581697267 767749637 894789435 930365977 116393790 145129314 750952115 776441502 346682842 886223955 960563421 994137278 986837053 987591550 385975743 832562331 84259963 512351681 768743573 771076664 529100235 550622839 307622954 390137763 690033224 991915573 770778904 959252558 528344964 630072065 295634072 596933376 157564456 582302787 774805435 882814050 795675188 849405790 803698038 804546624 331152968 589988318 87981061 469087539 525369455 880784965 43979889 856381595 844460655 886246706 982844404 998532087 139055531 637598105 212743476 355350770 733822230 779099171 233082365 596618854 218933125 576875557 880585295 951270077 316517233 609502320 651606206 651858765 13325873 386248262 879199304 941958363 854710267 926149785 933462102 997185735 56079374 251632423 830712365 855958025 397179208 683248200 765111748 902836098 313477167 787047436 677550153 687530266 225083800 558311890 551899726 779579726 59128324 902772899 617101160 966361035 21334993 127999864 894826132 917097701 843807743 883676856 340345017 745288036 711535959 977020472 903850353 930109337 420130036 538379418 672434115 906203799 395989473 906146298 375386734 713734573 757026435 793570686 565725753 785445741 972594100 974463578 663145596 918909653 39813401 405982575 299944877 885614490 496807826 505262282 321810754 956447504 372593314 676050068 40983092 371825001 344506345 956507893 739213561 941975353 467751830 906121299 29228794 196791704 276038656 763341661 195143072 880092514 846871885 857552078 79630923 479218278 507246840 648098745 557773411 599564411 149296471 863145279 491728287 983089365 754540942 907375115 212310307 486423803 418865141 758182131 410496278 475563604 723999141 855197706 27357042 458645738 413428129 695266082 156443585 988073656 746839867 807084390 784963450 838067779 641945400 815088507 208209878 454610488 572049682 657435108 313361381 932752051 269779213 933821694 610060644 974134385 571245242 781077239 888428835 951436813 583317517 833817298 362649305 834931570 519996890 632792517 477675802 794917300 193848523 690038956 213160059 676539518 174952525 914446896 998817292 998826206 136223407 430948949 654851743 880797654 437182537 943009772 480696178 827213162 827207596 943159812 503219225 847240386 659075742 673995958 306325777 590933993 286644027 678702585 408889030 870833154 526774789 693277718 742723968 890786130 229793829 685318917 487978874 721431152 628147391 952905972 172498384 815731625 643695688 827316887 873645258 971096683 859659126 899664689 228948273 336722633 323453693 357010575 98584199 225292588 4172786 932742632 560407801 611032190 114142772 720793790 543559178 777770871 572606926 662951179 888455245 942203977 908476739 981212733 191737153 597197810 390407358 567772110 642044239 789279505 335434773 712085077 872865760 880750318 541269180 591125812 19165294 363666672 640966141 658349546 153216501 162267133 938382163 998770205 691146177 754142245 862025138 900727793 297343592 880607476 533017705 608748238 153712915 479011428 329036647 337870543 381508046 464119665 81752018 591287484 234551443 884500184 761073096 922712568 898025418 899332653 825608746 937960782 606221650 710343796 284896594 905191419 391184599 472410897 306426063 645757001 846417578 915728594 837988325 965816464 648226490 871489430 541519375 706905768 179877717 890097574 186672021 918343414 888819202 900749714 135277542 208559826 108146566 641438143 953123232 986212719 99620393 483967059 80729519 140330333 1305602 340295569 157969626 543206901 410998628 610138680 416040813 837716793 509941039 704657291 455408791 827971272 802063166 911720245 295584364 994251411 120343517 951063257 688401378 701270986 435162210 811130495 743903618 972670487 975879584 987546276 903845598 921104365 225982428 396644329 310597194 436341452 569007854 886158677 847909315 967787634 495259970 856967233 58367977 814872576 13351326 949479041 834349643 848253579 135991955 149888100 244906159 579254613 815861288 841333876 601352006 683222068 447687977 788293144 489755443 601152165 959846886 991577680 612569804 885543674 47899448 792535396 864719457 954491701 999796277 999853036 445746514 582956809 102016824 505137777 882542928 946559478 436458810 880312258 183355886 624343293 22319750 878612834 492001941 539346344 455885858 670057347 792782628 953729194 718709874 898247692 533322663 933727532 970119292 981352854 501349882 959651061 440619600 494933588 226812416 608327918 845483805 924465476 911681864 952565556 482836980 798326055 610307810 653064346 846517525 891771898 288497578 595757250 237434794 380053419 696483430 760298660 411299126 489995448 872910375 986491447 628388748 727213125 134842552 554962312 282865786 949323019 547871026 860788475 516431150 677332733 233080197 682535157 962702556 963010190 175485393 287984207 950529614 996523317 589245636 685380495 272032497 622696096 439743344 800196453 472733991 700770244 89756976 643148365 988073953 998715424 538478520 551899299 281368114 473692368 860073548 976141255 817778475 884476997 593368066 798288111 456992572 539070607 548025081 738442616 109013109 168941296 629206796 988882828 146835570 991453645 819966110 969515301 747820753 852712940 335193916 789848666 439219148 676697685 96008118 115693299 910346245 978594581 54063958 172916909 10542101 855956830 976779230 999166178 905536145 931251144 241565890 501487758 146778390 602989170 967381809 998724692 684132299 693881851 100439634 771431204 123675706 773302171 207239508 986307048 831079772 982160826 756922788 918901414 446307349 592887740 834613826 848650493 265459534 597155603 854069309 882042471 10450287 712314638 440515677 582361902 489803816 573033981 518596503 961305520 664857890 678028271 412417260 862989137 947166296 987002387 689332943 841775208 886176828 994911709 415971786 953140220 942536563 955752235 540290591 559697264 563920265 729393139 881024168 919510035 182944528 466337398 130446589 552214779 890578911 921140106 48309692 480696361 819725874 845410807 890875092 973766830 679448466 805585606 259719586 268139992 487416257 645270290 68759640 484319963 956170244 994912498 235529064 293816432 202761261 364638556 280594667 291422208 550822103 768025659 328885072 619256687 467379778 912041993 277464074 655626690 660948032 904066264 261660577 989630329 144349196 496478834 216086752 997210843 433785117 982829908 146303369 777886271 758613690 760026418 697469609 827829415 845208488 851017703 753589967 757102021 163466461 244541602 853452675 892641756 812478503 925616312 712900384 867064341 935161881 967779225 66187110 972247610 814900546 818327537 34043713 631799318 565755023 781119716 543270755 770318755 273761107 931099837 97904130 947722268 313224113 526734135 83960061 413561565 939988349 952662018 518282446 706171570 431114952 880600621 529948686 849210218 401289000 879039171 960454911 995984334 123958162 693097830 630856610 890314248 736012290 782017853 539721774 963480001 57168537 703797615 676876782 690192002 10160574 663448409 532953286 572378003 122742249 533126538 819992688 949411017 764490130 858714621 322559409 786320200 13048193 88642887 906489363 976841386 249617390 307334069 285269817 645812636 836097289 863765339 96877730 539356042 4792275 486657209 331955188 653309431 492282617 698102452 139152971 678327319 544028762 926016173 153767561 463733639 336068975 386099142 76708027 809464470 593395019 952406059 392368186 432830403 163452110 269349950 370576027 826604409 155069175 982104658 819964058 875617863 944711874 993092024 671485171 917976689 363310730 489630021 775390593 817613822 612237932 912533811 348776840 570909419 89483123 168747057 313292081 981544828 423727456 732682115 904583491 910311026 760174895 874702007 541734988 944918930 245252723 595516080 153805412 837753817 790448493 824449351 681395259 874625519 12733864 856908481 990777252 990780984 266821180 622991731 308398239 907144605 956030359 973109653 804597148 975117408 507730196 704736145 625839294 793320862 842383237 990164206 937319451 998807197 928570700 996317624 129696000 798950303 548428755 805696484 402757429 563881450 92545 887766733 737305844 877127450 574132196 629991905 920591979 958839758 442309899 904224487 93429547 323767194 492139084 989718640 329410551 840471719 632349308 812248009 903282645 969473819 167832936 942222119 987798193 988728066 658736093 930272981 540033861 897549396 681262219 900356836 510644439 932652852 424314042 472085129 652495289 685928147 154587225 907295532 225932645 267419435 296908955 718008329 691002853 955237502 365387828 384475404 459101343 765650564 439333336 469313546 327064944 811852328 848648829 854824294 113649318 753541183 438640221 771943838 388962517 843810658 214799273 568724846 57541427 796517576 524693529 854071363 854237933 972618948 913411711 960645768 585898591 998063146 984284185 991666821 416356587 820923420 211304375 569888135 413196445 874380876 923657638 968043823 18697103 625036717 721103898 769783753 144664267 840838094 71816664 550197137 501813192 744027109 608717055 778330451 742959782 837340031 421964094 814413743 513246848 524147032 652918227 660918856 72384361 889749031 850349 981098666 790346314 852547688 968851005 992021705 385127424 761890013 375301104 872146961 71665002 772451253 474371972 492952005 579756790 743881341 414313303 414371258 890004451 981378867 872276480 940914287 439480658 913506456 507034310 891597053 205654008 679254535 818264109 844180595 106462969 739133728 518547996 638559784 516802773 999705865 459965449 970331631 214040570 734004788 777019705 786442571 344196119 574323450 566719379 770507392 152100181 561164213 825479591 989588311 772084209 953446733 749105985 880503637 421510225 675300764 694932302 915568480 630348012 818262820 148656101 611595391 430430209 599051610 481814133 849014740 340155051 969892376 740416075 914040427 346759120 967878202 217959429 229107124 347114691 518734785 770740565 785229337 641602572 673576164 838373452 997260348 62963458 226939991 622005910 737319699 838002822 998532468 241850754 756573227 241362042 602880825 374863821 907864350 643201616 884267528 353799707 379483934 568870832 725702531 14132441 85331703 843104963 980859613 515141436 792806194 383753798 770219891 643803469 903556401 317254451 855185499 157310224 256208294 851994567 853458427 532088683 584255353 548660744 554555395 768084255 870448815 101674393 102581130 547553218 571147586 627657855 964299284 695721470 970166027 238614794 362370785 77375689 839009848 190116266 242307637 327337900 829593392 518415208 825482282 840531041 944134315 843936635 929383030 35489792 330317189 156020319 791504565 759092265 759367528 82824889 691139813 943760194 960312933 372862753 580154220 614155750 632123717 270569904 704214175 928418785 982695593 398502176 809288860 553300997 930368288 420404097 756811338 823605494 989185310 822508626 827253037 741336568 910217409 691156285 785778051 57386579 557993881 500084603 661544867 52813632 434329975 230423559 342061849 514015691 940726284 629163269 893285276 988470550 999324634 740800334 748087881 983032084 989560973 36274640 699130168 763512797 894563754 194218880 254208673 570679459 930746420 665503528 672421911 968281897 969401062 754780187 835293413 953290001 999595144 428211456 490124413 603822964 686978163 801407142 998854694 395852362 668473992 94840468 263341644 356716748 598267232 479240275 751986430 204771807 830036271 227754982 582795873 594107248 661975158 345654362 696409673 640131779 783611869 777484007 921925338 61259867 236428206 965114671 978632548 702563427 807440008 519348336 592262164 337533855 400287650 82005519 216671332 967854572 982570138 607961711 788127145 455320405 597312052 69389562 195969795 205884860 880714536 52808193 217181663 758753277 783967280 429447488 787866678 85600186 148079403 408873516 570198828 356255731 617539540 864057436 868508821 540875746 712626172 305037713 871386871 995436989 997939167 326994441 737369422 237662784 621654329 210561951 314683280 97212800 662262601 620550872 777659462 286749960 522080341 230444876 231456901 393438909 760132079 625780951 632020427 435609593 800374015 253546799 774952893 43613032 609926029 283098936 557574430 653798953 838001715 380799848 874462308 963744963 994343070 56771407 363770687 990122071 999951398 210241791 222350623 912511735 991010679 197550336 908953851 63214760 562345050 450224416 529884102 308581109 509364747 889065982 929303875 46563027 333285010 281700531 961658900 408929483 919859665 722922795 836447848 237036559 316333612 466211939 995730240 76746594 493539272 600085190 729372726 743322712 786858577 829743778 995530344 63994025 672714542 816267534 833312835 557753142 883302689 854193748 996612912 688314427 906037943 637056829 941727316 480152988 615424088 595546546 936294061 880367394 908577239 120020593 444424906 250571321 277242757 960144109 974314557 753705727 942573800 899782878 906100264 133033731 623401469 644469018 835165860 74652605 280633021 29512870 38400752 131468088 901126416 759490971 798880732 744212997 760761116 276942124 556851737 120723871 721674090 446289860 880169561 379273964 955941487 854800292 988441233 233468361 817161760 376037969 997107684 327738136 395161097 28768077 700683509 950098421 980099933 887930749 936812311 88956260 705555032 740861346 804693845 751110536 952544505 999460558 999763547 584242702 778402217 987341727 998700895 561120249 592862595 137952351 525330822 544076582 826418698 785565770 913504440 272073227 905482341 437121046 689448793 653012592 876114219 164947122 472828481 824336460 883656685 283407879 676915183 177874859 242441608 61984490 733195118 936137276 938698821 924806278 958145789 668857467 775414255 720333047 734697428 558815077 675190626 690104690 718234101 653798020 772093394 610593260 992508859 544305508 585738882 766228613 954319709 611189666 632068786 927175403 964207912 995747047 999100416 337572886 532486967 448080316 927143352 507848877 618844215 224999712 720785051 389278224 929064022 369324413 656147386 630830369 981896022 252180349 966406517 13786917 255010595 973803525 991868952 321606787 738111472 240165318 330293171 611199914 887386117 439588195 965451097 431034526 831021889 580344750 936165458 456437974 796443283 364128026 912197759 847193743 902469315 152470038 925266781 408490636 919135322 377225190 697553154 35353898 331573623 611333894 673682307 372605203 475910515 815329820 917597156 527425281 852525702 346002089 354240099 31370943 119086769 573921441 818333624 857658727 940366658 583296999 968975225 9193582 983037002 817650915 941603451 834024929 973645933 714864190 867067292 239341032 978945166 68266930 235497040 680721622 910905564 840289951 994332162 320805142 576852897 377335854 607033698 792243902 843125400 252630851 704244585 408803586 907437522 127756665 304931912 223541792 804423126 282561906 991930132 879356369 976260920 702542492 974589650 952466168 996863510 183889166 440669336 4980528 947233924 100690058 695299861 723643789 862808110 371430054 397754907 334731138 799311033 993111672 995030943 151452547 603833781 248749727 714101129 137852407 189268425 71185148 741859349 914490223 952938927 432698926 539799233 86924264 308103628 11279970 164262349 148082655 773610702 508287048 740990617 861537822 920598886 884772271 969655684 81979024 846998244 699451832 954306651 968552782 998449672 248705296 566464824 680918961 993270167 516866112 668892714 939136559 943503196 942905130 995046831 210064501 286947807 801081103 883283900 647008348 717168323 8308081 269482660 726324627 991865675 290129855 839809849 250606147 557232275 966118047 988913055 503044599 652276100 362812725 600089395 384616592 676320755 426373095 806416543 676187131 982521107 470483661 519021282 876144847 928686976 568634065 755455010 695130672 922815904 938120209 950491100 642827663 956573111 547660079 642696375 581084898 736294346 674646836 953513433 959114607 976016412 132455780 846425033 272549608 516350903 807848585 943850622 110664007 817346953 530162399 723827779 756442047 928847453 180372416 837965145 898801806 966968387 634827905 934773827 109459367 848530854 55708773 976726559 307094289 901427528 315498093 552682447 718052065 974890430 238269196 625007596 405553381 870206388 358986086 885193117 227908357 616644486 441208599 964221781 235842205 268142967 973407863 997888424 347402629 922058100 846897001 995203450 544792729 999615302 849029682 893333907 273877974 312581043 67328253 697863415 920699996 935358436 36334119 161308653 688269351 708323423 130784597 253002771 301227313 670968145 387428042 744184983 837283203 848067196 475909140 532095015 378468288 669166203 796731169 865176568 451496110 836919608 636627299 949465688 547170234 774841273 673946241 940146701 173064925 978227630 650057429 788863271 4593892 20134157 272315022 703626160 281465122 723843284 281131921 560963853 977076464 996650748 227654387 833147052 181392675 392403416 848861499 932312805 275631726 960432029 436925319 798168342 125537935 658764441 907610518 960657125 765495582 878201475 598516747 613774380 605856717 795083499 672178608 696187695 35858596 128850310 599386050 777966832 985300434 994620461 61082640 940846552 112569425 420190107 634241199 873633852 18008567 465458371 861739729 997315864 276605899 535310693 215964817 236864512 421378022 900928392 444073747 765348970 311161596 650888875 644395040 763465254 693755859 814711424 435942857 552644258 80266381 413608568 67721199 200772512 450709090 833016600 63292219 368617474 782244225 935467193 199858863 267675327 170547229 735744744 535606652 743652235 732009567 888525677 504800552 958864701 224003526 894777586 649035418 702008607 386736624 726119391 830269560 929184553 414351111 973597960 950373650 968220125 404697250 490383482 301464577 571424104 288317819 843605483 60220161 424209170 284702994 902356360 21568469 100766240 481108199 652937130 604601134 891055634 594976914 784946194 612441150 934153116 605628450 760770035 926563559 961825644 400869382 856734455 621017027 961861129 593653285 608765390 484893104 886156027 447445644 878595825 828288126 907392196 343372958 980995190 690560762 757392952 209075830 583151265 741183126 759446250 7841316 597166353 55508797 650120437 67188783 823969358 480269730 700938664 539339030 906522356 339276909 969696077 496400918 872804956 707306751 837829212 951368775 991393310 214177150 639981621 877752902 896703167 785231718 804295137 479460710 630006171 855723911 943320830 526625025 730582971 336724597 865483316 471221594 545504234 933069404 966102399 368622196 646453521 376240147 975446081 481621029 611035496 891014601 930066847 809910036 926961089 948228203 962430561 515181236 772835209 441981517 526572473 780937 569518012 306411038 563803365 297805601 775719382 878318191 964391666 496243009 765574450 722606974 731996337 386637191 598587519 636515712 649403686 576427928 836590967 34929661 725164108 382140076 493314513 944650734 978147287 368515740 689444515 730885289 992665341 986648502 999074075 439679075 482932096 200512300 261410192 224156953 608337699 806391723 849781615 11091182 877480590 116273350 437725506 992530634 993251124 484746226 868920034 433714024 654367378 754231450 967302466 802413546 850841204 427492188 879797621 200890529 769646881 165301800 256739981 112602991 410564772 147924064 317293349 202803027 662005657 536768249 928536652 2718526 898913834 202093144 679036106 148925392 799712068 665226050 724389056 386320727 709709545 272142368 985956380 646653424 946608198 425407322 499323055 909790565 986226637 147166208 724031578 574085592 674151715 934521690 973439624 993712710 999223232 236182080 943138858 780859759 918127002 80033303 932291653 476849025 762373936 219332675 749142087 172624849 717171684 553741472 557964230 738819472 803771681 710849261 898052541 95632827 868343078 619553263 989395076 273273765 571162900 698263499 848598909 250573767 833149060 438627570 664895949 77738937 330327839 333562212 392753943 218005400 364267620 204548226 224517451 770385816 887311808 184409384 485831477 624304329 757669843 862641373 905769489 292793530 331567615 896320337 993911598 188973288 931520863 245920073 634861957 298027995 950204059 817188001 891853764 804856745 833345240 162375604 165069368 51852267 719124863 891301906 999778912 683229353 851379528 564210781 890769937 132037403 764207624 22663894 351337472 822119634 886520174 444656279 652696851 597510672 849494387 955135679 971644617 678303087 870910396 51553874 621188173 735994655 884163841 863751319 957494259 136029591 598059375 189801047 284428138 874090637 933485323 240297542 274024662 420886832 898554518 741957499 834703621 89564915 326510594 985194344 994242298 643587120 799444337 112967941 606041968 389119768 575194041 414180601 780358366 887231250 932815068 206756416 991574904 682857351 722019251 111311706 261294799 449120392 902134095 278230494 375516153 694311563 791490873 82208113 733695748 763002475 986211221 370707290 378467261 542830678 811121510 403771945 591090488 152603464 218053517 42494930 340001231 443479218 549723601 945916186 971614277 133325796 855369117 739588767 899860462 89807635 781941390 874158137 971919469 445648977 957463361 274769149 890754955 892492976 914299231 62774463 822343957 95955158 553712515 662993924 686045369 524800275 828852005 219746289 845868537 246620706 247891869 866957967 976754616 576899629 710783459 999820214 999888989 709751504 994119780 909147501 972301329 653915887 850716679 277245794 642175483 128440045 785080172 486209251 868452890 175996610 774967807 770477224 812361455 810074051 935471724 138575459 555228769 150562116 976308065 908073962 962161596 840249693 848585719 733100215 784988585 231634116 453056863 322859626 934904853 487245444 763829075 166760708 364810867 934152769 944736253 399817131 860960505 398730371 725277518 165970101 864215249 538801687 570662409 709689068 837926219 560978744 671720739 734476523 897676333 90601489 149337650 909051710 926791227 367076685 771699994 21978583 739878138 177325428 815056658 534685118 933067779 406379937 473519330 403523758 934860956 504437309 928399301 264707147 605974743 713290900 931150708 236103799 642160470 332791512 378122156 843081394 889440827 567815612 978164478 625347054 733839762 675349314 948895652 597272116 920794292 471278956 828205799 946499033 963115201 535740831 944043172 724119967 745685203 848319656 960901025 760405259 822005009 530949579 728097127 210741141 935029639 324277215 956847241 893847730 991125725 626457366 710316985 163781392 469073166 678159701 838488980 453214857 868598424 45827884 642361151 788716839 901678118 639190452 842746199 629448673 941453961 950213879 956396284 161575164 798634986 471727675 905768179 27138682 753339486 751062096 986599178 255131970 973542080 896267877 982686926 676586242 728224559 829153920 951259616 503283998 555987361 605365568 640292201 416617537 884344929 518423438 860357829 482252854 603645471 199389820 284302318 826169761 862834982 547398239 660196043 216536040 476354137 175017150 577806248 855993407 987638415 109459377 234498033 827655757 861520567 954566038 986206699 681293251 778540249 146245388 832820127 540355087 650028237 152020305 644963223 836820283 942618008 989075801 996776991 97663996 99117355 369506153 904750427 18755625 566428605 8639001 711705333 268441459 869756158 405565129 567890532 208400327 468202948 804616721 920530582 880344955 931966776 935063386 967293905 650454926 726481706 509490577 922319440 765014943 842853660 859436595 909368845 334864253 654616173 255167696 299596245 539557686 748150846 599618729 770812390 316180210 810749191 949861483 955661360 260735627 849347787 859679138 863682416 720786688 748452152 309490505 536897227 203160798 422044186 97971208 832299847 369799715 930928945 800673810 862472285 400835240 761818462 86015969 178752845 693916934 823480654 551575840 651824434 732039096 751887244 438106939 629711068 211374358 844925931 516584662 877371521 869398257 886908637 506615105 810414859 70999841 869929430 850302140 859908982 958403331 958674401 290204584 724894612 704468958 972260563 87130047 496979030 628422804 862354215 168377608 915659137 150982636 165566160 741666490 883620265 679798704 891990659 945618486 972374624 702755351 868462348 258303774 934097331 959634783 979822367 980909042 988091002 163212387 352767200 257107312 730695387 614535338 881128244 574449840 694293608 372520821 750712686 338021890 981363892 391998407 425188871 628754508 812398983 642611721 800793756 32024393 169717171 530808256 900208124 181072339 406367934 539001914 941355153 774764517 857743414 801458708 932681144 208024370 858051687 745462907 851369892 677265041 863894552 559698846 800064302 71158492 255936049 578256062 906809037 377895841 705528601 753104869 886881698 781863368 890646530 671162342 680745749 863339186 881270186 468725188 628003294 568893294 808931377 922649580 927911889 929309585 996719591 109900141 788994555 214721357 696266749 269802653 726972422 760083574 954946876 16157646 134478909 845308398 921942176 928813826 971599642 670192498 773224715 48643009 131801407 3753856 653311724 811660932 925205937 755129144 855387808 784056818 788979476 687735890 707256508 566231332 704112346 889113852 927199423 147369779 797313289 496735283 904975433 748888634 750458301 308143114 980011822 819514301 980755494 717084477 870716965 286277771 942487658 338842411 504038086 890327649 995186741 283104943 987265617 507639781 507872381 973084963 993872279 725581733 760300476 564815119 949161975 640599160 734658448 939383002 979823834 984943208 993349071 334212035 998825583 40221234 973207558 628096659 746349669 614283291 792644678 398814834 999621698 621214517 836957839 494736514 664676374 333238674 652230609 375997057 865988787 453458981 996884622 428034128 508389278 949726187 961342229 882665876 895654863 775781332 851414038 535997230 591863688 7762332 517007391 210851362 964402986 977413164 980800548 334174812 752001668 813741836 858747429 462247050 768976661 464336982 470901655 270048517 271202824 840342197 876237321 106353517 208254736 599407959 850009944 645861926 804898804 746565871 797521450 322368143 986830638 934803380 948301524 484124561 932906640 520810002 659517967 907637238 945554708 712978061 990042508 600553809 929324994 776441012 849959647 933475804 983376671 634704445 868476584 823299635 857525080 747344282 940624588 877580855 992457439 884828443 907058847 893721444 946074792 695112437 955932526 76396766 628063544 288179515 856939374 243720953 362387722 516685449 599135026 336639263 815308128 483327578 887982592 459448034 507444553 233334671 421097784 314189328 373978508 363427698 892222847 770379580 897019535 762602011 833297458 365467812 483031474 809307444 916854393 839607036 848490987 779459351 884659404 677191591 792133657 850879088 954268280 220315604 383096319 19449101 614693854 388198210 615408018 349213081 753035427 988583503 990614333 37166978 485084322 913345501 944321255 168408694 728673984 322651956 489466368 584519611 970538030 621119366 791850821 630370237 670678201 680237683 714256472 738862282 837239558 40266683 366510645 930948346 987073678 599101512 963806792 205748036 532850170 536946430 763979034 222777749 476187674 867450064 968733317 820773995 969719008 308014092 523171912 173918434 438272868 279385558 498658184 851143200 945239212 29713570 595971005 119817940 442861435 391738640 630861239 952582636 977524627 493701278 711113193 515471916 583817677 795141688 801123922 792296855 915010377 385165020 765411398 162969109 427801087 737904715 867241029 723038352 929106253 924597208 937085357 310184784 772633208 82435184 776249269 17264277 195402822 351238972 612764527 740781955 799927296 170636672 839400891 724946982 930512336 208911031 532590739 357044399 732022290 798362263 845992013 542122278 883200408 332835094 865666068 667767739 914090584 276560344 714231576 17564947 321142936 997019646 997476519 808756618 891999960 743490568 860856090 600182053 913600746 596359561 975535387 613243357 773085916 4438443 227567171 159882048 573766675 814756980 991121889 569577658 948955938 198650052 846354558 524321901 802843767 514294342 831419832 850635674 929086429 957695193 999276170 459378699 515829880 789382389 816103202 38338158 146808220 469269745 636743114 115398720 321580005 305476332 799922508 107267888 859952076 37745283 404870929 308300915 848090281 916146560 949498594 312951451 592708724 249637152 701907849 702226182 863221295 331847064 689144152 951907726 978487822 990007704 995072719 258418879 606472822 336898006 616524156 355765943 479821888 861458316 913191427 362542881 373839230 936142277 939087092 88418188 890670528 784320509 894753974 807295603 879864822 23709682 963943036 465478625 804990633 397584799 785750874 41911063 167693346 143358526 762759854 620118144 978173789 311398811 990033267 798589173 911220241 785842091 819732520 862993719 945894374 47126175 643236679 659428936 692554888 609439065 841442499 890213438 968643836 915833796 999661056 630901767 897546297 181068650 703065985 260114434 358528398 162580514 696873712 773278512 963383548 360994709 513502419 690348028 805652293 290471396 412440746 425011220 981625195 628934964 991305633 451779782 984929598 875148786 969642286 197485126 260016616 617047875 891564530 750756925 940701435 157024001 987633653 355032644 939267687 641458175 822260089 783647173 799687941 800100737 911527855 580642565 870498489 869620215 936454217 775521134 954282734 269178673 986452524 955805895 979822479 620216769 764959178 248733918 813169724 549701381 889064436 332761636 500362061 796391419 831969680 484704455 553062727 920436530 992668574 797056766 818368410 376737278 635625511 917800061 992866222 156690623 810371038 490508468 696637647 830339411 955376750 271703732 928982708 686449995 786453614 948273365 949255035 183464302 978742735 478342660 827769362 530088030 582061305 584591721 835409677 441745512 712352608 264040109 417430662 318755751 928080812 498980627 688621789 925358842 998642178 25156292 662456722 286732021 679996622 257228985 825284834 548272126 795188118 171935546 726551488 382356399 467291721 710266759 984505391 186472291 393606468 291333967 782078459 356439729 478612272 837108657 913385437 890738283 956859101 835834294 858530731 991687199 992490590 874839643 905435430 216722830 683854526 674078927 947004583 618890381 843050434 843816664 882821177 874131288 957933101 629883336 676568076 299060654 411690642 902357984 921532673 682796972 894980841 455163054 541645492 361905693 918641757 524013532 847041529 581176926 926396500 706151867 902790286 670401219 917404292 515402764 796443715 42018635 442556522 264700789 574698098 733315529 878533266 123790827 948305672 916221731 952931884 122556987 465167042 610404887 705279470 819915122 997732781 6652703 406041703 73692634 211741469 95393049 919597450 992801664 994968657 923266957 990458391 288943642 348259280 650335032 749426162 522537603 817802974 945976150 995393621 775573809 942090178 691634111 824940151 271926981 466105888 885516590 975623371 262699207 803709503 241325928 700241952 381765383 841135947 822323315 901457182 244525407 817664540 268560780 522723074 767076186 826262935 648874043 905637776 217199998 830584940 987878553 996492755 441954783 753824827 411602396 789149717 852372709 875978535 435159653 844643845 660663993 940669361 17677423 988668155 668589607 846258044 794315749 954302715 598280766 627934494 835256866 921266645 770822840 841652677 391304480 908383166 138009825 725295591 836772070 893969066 702753094 757878412 215073777 231482742 468194499 565272842 132790284 528180846 67475512 797762971 120469272 567268281 852022037 892550555 374779001 982923814 86547178 533255227 905536098 982512404 926954806 953403053 756004023 878203367 918245490 940870397 241548408 719704910 382586328 468609503 753298628 836191571 999891899 999921698 44862834 203137579 981754872 986538888 871970390 954345964 927973730 998013156 398802717 759355920 177219006 794659092 980790909 989589777 957539995 962865154 834328825 935201200 240911441 914205120 729728138 783959444 30488484 990170020 284253998 574979570 912377956 918587556 949136411 956606032 961115281 973373846 338724583 585632177 846604375 884177864 481067626 607261903 326321005 788326914 199204037 461800635 639407665 908232809 963311953 983577817 93692561 647511430 963047460 998370008 275714836 587892204 77980900 106422531 115169473 729837223 139566985 441027525 956821832 976025368 480731962 545888873 481781969 841382102 164519397 697271706 653678574 749891954 676133302 866195013 197265730 714194088 774926780 921809033 187556975 644721336 392542287 815900589 812918559 862083947 98329204 975555852 37561963 418577076 111110543 349667167 284503359 360187288 338537821 457837863 829445400 919198965 45185745 266455669 326283301 470020683 631623565 706003636 892155144 935020271 67862874 117535379 784216403 975021191 906657726 949099108 633902709 646237134 227649390 605057378 119405987 402187301 847091245 968563561 756452434 784420856 689577220 928477419 451726368 669371182 322240096 397698662 598957097 923385038 224260252 447594748 181377482 778535314 947350517 997688997 433870613 606893309 375561629 917927272 424143488 462257938 759013469 818950263 457147272 495546685 879867806 916639762 739497184 916057175 796204978 939219758 629469298 880756216 204446933 503366700 199472126 229736616 266784102 631163165 459403349 605917498 307730731 562745748 54986231 779160475 482623189 906219295 436291890 910888352 58919686 932386452 517879807 875731738 224216837 238495401 870811495 927536474 648927407 659736270 98130161 205290025 613331102 959259097 500110836 569144446 797033666 850860700 455991210 898592996 528309159 840177343 980823769 994510763 97324367 362583684 739620681 777881391 868670553 958514178 929755219 996297065 571100050 873467583 604379122 869401713 101370285 421779366 6574387 333218840 26178677 109130383 917992971 951851778 456162718 750473601 725740512 963746065 556262513 742388290 354167488 691394474 530513745 794210020 616257676 818081814 49712320 596892843 682804277 989856450 841623816 976839837 187164929 899684273 623216439 978713888 742135037 928245098 552265217 877070611 531632290 715548602 922577820 948255713 626913686 987368589 306307496 910976753 602812512 687129092 94397128 104179620 979743571 994885285 259535863 579129722 492622583 911568142 347844523 824847681 303393587 867928122 956517591 999476217 875346924 909219242 742245449 819254879 763833737 841852519 400526187 437972438 632397601 700564084 150507254 937633929 424470684 931982711 75480224 866025436 737381666 770951264 453713923 766415780 24635836 721755903 235904124 514941746 849990155 865611777 933808542 945018383 436623030 676886540 10758864 624516848 9276121 713207157 594987243 692584880 364535101 469848277 240753739 612958757 211830873 283129304 617546319 771729156 848856915 937122902 265290575 370548645 995356447 998386442 776130430 944329658 117483453 608154547 464647879 654311039 342941067 897984259 556297470 787630868 579460122 628593079 887836644 908809454 232633384 721614953 198100034 821003659 654554183 896681955 390164555 482745542 813048850 904006400 190102563 476270983 253033363 623208283 550627540 783391379 117072961 152268836 177288142 410562897 787155613 863350628 159483982 835132664 55826722 654863929 664346252 957520816 154730334 497539300 262414463 492287504 834854320 865163208 673281545 848895609 110028130 555056001 665685881 812242262 970216995 992488368 258982123 668960701 691097280 869834928 410774424 681779366 807943704 892331942 82512305 356591515 982690327 991148580 319633792 929848078 958475781 980316401 376533542 902289464 981075602 986651874 582451389 690155610 518372206 810439364 386640673 619179976 749552333 915090942 405290128 923314010 510613935 513024958 801510456 854867297 10538798 163340036 225423686 986363062 699572340 725889283 471135527 934882489 222010816 291691135 563409496 873164152 640092165 937673350 761065829 834818516 830253135 933995686 691312870 966707437 208980443 506220012 993531154 998551552 829892332 851782615 767344005 785771918 274241347 658300998 831810518 970375614 563629449 717362381 777711447 889476606 840386002 870253731 355857195 716070084 380656559 796927502 218288320 664609835 861145898 930039402 409758320 502186716 985152426 996817418 510255298 513689449 875678430 954048453 676482436 932943516 715429540 721421909 711514727 823779851 133541359 858586876 298544118 812632982 994377340 999228872 942720591 981521133 848011364 956374137 316780994 679098528 455440023 555978079 245367280 423285115 221008107 756748049 969780541 975885230 690153198 737887460 142052656 273113000 710035860 712309870 420127111 755834787 497626096 733215617 304233190 599083544 169359596 901946450 947087346 975514077 332812462 637485240 708442405 759279683 652138983 935376678 175003040 938124180 825266709 856045194 441124789 624257349 484805681 848198790 821732763 873240906 765977727 905052806 275305835 357053370 883106932 892725133 869605032 953934205 717346561 993252010 213157395 813005613 632634178 973159339 791249245 858159423 433330851 475549088 192506988 850210567 780560190 964059744 826156717 854211456 463598262 491659756 352527479 844943642 769200059 889241702 669994133 778991463 647215508 770004364 666287212 703120259 398175216 918545548 310702236 896808989 390690931 926841272 178470183 318814196 263740532 980237960 374261721 999652998 89944344 109090500 315638562 852783683 693656568 910343915 717108689 790295333 319592222 865650334 385337025 739352944 477887433 480898084 475579098 780806764 374226452 787323569 448923752 797702265 140709495 521731699 970452010 993137674 781481436 813613047 554749400 823241292 150833247 389261100 216723545 604587566 118056715 323845990 688021056 831672912 820368003 877927163 402224363 903525691 133320577 217165445 500782622 768993945 471702825 835683671 250383432 739710184 312880855 338946976 334980567 732870812 289142460 703616117 419995716 467382487 629092786 993209529 316178048 354869067 950867164 983261641 849302004 945199153 936856169 952436765 234383722 723725506 182342089 720656843 193513748 668689070 633487187 745104113 511441117 647914835 563024973 636553873 448798198 449014451 861322894 936590724 490449478 868074466 753545477 968059758 236253438 673174728 953379998 980147149 869856209 877086438 722977829 999837551 116328520 361357380 841054523 880232263 902075170 953465789 695501459 998189387 2192401 706398849 57017461 430782918 143377826 809416905 205848865 537928195 727162722 738014404 897304083 958412235 830277798 924096444 202827328 810823765 738121403 851879195 757816092 795876737 389960162 791668482 785622236 869777113 922075246 983469707 673410912 675053634 891133466 986500199 667378945 783263961 270248731 825164631 916085207 990376296 138927907 756831179 339899506 800435608 523254215 917717364 759381764 939432477 365847210 710765406 810700217 837630162 446733043 458180196 276030394 384654899 227052436 472839368 185170979 580424901 30682017 878509327 661632209 829945357 450149760 609102576 540778426 848845170 223146186 279268259 426292722 614467853 103141703 203029533 587577849 897241606 187544116 936259128 257286172 764939908 959085203 990299344 619516892 900196930 512632831 897632663 116885045 177134903 738928602 948458398 167624797 900217936 772633567 963100575 793883965 977609477 257136991 474214698 236352722 717640165 427064845 707492551 63968937 490642243 782829646 795420526 594254881 987491486 100246869 941380211 694088090 706025674 942144449 980866793 106969517 286868201 270097272 482615577 949434110 953892344 788538273 872566359 226614585 902867201 687453601 788342642 103822211 762499765 676540135 709455646 552110253 592658644 130161000 713242332 667292900 969698057 700896612 701875410 752768178 770429429 748092395 827749920 138084066 815226622 806025093 833995904 371751214 968987139 868736416 905103945 882456604 964066328 56884589 767448559 922987267 983791558 321781151 884487648 715955954 811704784 954237392 964994586 890937107 998070622 625121921 635503235 482143489 848410806 604440025 888924506 109431428 319140335 464148201 480057925 487790721 572334813 167736182 619754302 969315416 969877458 416681935 480005290 975751905 983738954 185253508 740017258 330052394 485385621 561355398 795488761 747939519 778303692 948156913 970177134 973604129 999972202 949671183 976515488 846378673 931550913 144880619 692004537 958024308 963867086 138188682 984529346 89785103 460573762 137844704 897973133 403770892 724583114 768133441 888355187 324420121 512605542 890572052 953709469 371077370 962345207 755182488 958008906 193465586 614310559 590025016 820754174 29059814 821094752 851542282 857768516 190488137 512864975 417450636 870680400 850892542 892706927 343898998 896824426 380544531 911152620 211648162 286394953 278050914 534737374 149094428 748333500 779249316 939799538 90693814 378446238 471305445 577663929 6603309 700390909 900220631 907414361 305109175 816648673 619168872 930000910 871114001 976845679 825489389 906347985 269123424 451927680 78820765 790492098 493803039 538135920 515819031 546351894 168936904 651705872 271813416 773561560 493718890 617697044 894605850 983235702 497941563 789390374 775615773 896425471 270850312 318368098 784299803 877759106 117640442 411685983 569189732 939617881 189291725 654431593 574085174 936549320 959653801 973006008 617228009 685637598 155701589 192470367 448640154 734170187 633626237 856859322 435862012 531017914 781460401 901279939 1495910 147331929 125470244 609718748 616484459 867884964 61661557 785883462 669613169 952287836 433563896 764956767 653906029 803472007 438158960 983185264 278126709 945961515 51710379 787431370 365963835 597261792 122441772 856872634 559627341 661452195 353940969 982803023 604341987 663905926 505404442 635093667 183581367 526817322 767148909 846963189 406813862 772636692 680523483 739289055 489109273 969946009 841601671 888658921 906312194 946399500 727540542 954635426 775059625 789030939 604497488 999460109 197136275 788240648 913402643 969256627 573652388 919827547 838390068 878949355 261659605 267573575 603772969 870463003 252819288 981951506 457877227 481030476 768906459 841038694 572183250 935686584 638775103 834168178 485642364 874799924 462945367 845872235 760630518 842967288 499299940 625566934 885967942 949330400 720211016 736203913 266212307 362749833 98167270 298038318 386750229 393011343 51085699 83417430 780038834 930988670 436512887 992903757 249614265 427175909 975672731 994358190 905694668 937826911 349449211 497273931 161818961 817727708 236192674 852986380 593474491 929413314 361487520 922692815 727601339 959916621 782448275 787178303 858311163 922234757 745698025 928009353 713044014 814552085 68282090 164432895 420082374 673159224 544004270 811904137 320430606 538602667 714457336 842780503 687516040 900344515 772395166 932648404 688785886 931142194 440151154 850118961 453585449 462320629 923129662 960865920 346047975 895215196 945042057 994898621 245226899 411669241 210563136 813013239 698034091 704800330 402258392 979706820 543206455 650808633 238795086 782890778 589882886 734193306 596900063 771506727 552500406 554379462 691721209 707736085 17240859 901367485 963371266 980479370 989318627 991938845 866081253 950748842 781808280 841492620 374725395 645857647 157929609 782426065 673132776 889727295 488581770 877617561 345525307 910463658 387376046 559937566 30908473 428522928 68117708 361377389 949298778 987974956 967998482 980618956 545749443 897323511 693589020 911596219 334287734 487622841 842803236 846745640 146271098 567804475 315060509 851714485 772087139 811904289 877562186 938838221 351343528 735292853 440186866 598232593 449608128 741786415 434707633 723964514 422041448 557022902 720258077 900981570 71181555 156417904 15312940 589365936 567827170 621407373 819216054 891609725 755946306 838234209 825223032 837152669 327671708 538372306 535409694 664100201 971150948 992281896 410676572 620068070 786990887 873712588 742671402 928391467 973532861 987882326 390264697 908770595 751936772 833593331 125779614 656944732 166754893 285735214 998027396 999429213 275871857 905687388 967862107 976450418 197449524 614494968 304238545 691669945 948547790 990687212 986474085 999055953 320581182 765573437 335735121 355695267 912406972 913614947 373825163 803978659 890978776 972251037 144704209 570857015 818184718 989896084 721026341 762159874 375204974 991520846 222806521 518965058 213359811 377067326 978002463 997004419 599647242 806814056 588084451 712821859 179664181 571743956 289863671 664092416 271381266 804219783 694961723 784239120 466844054 901169286 741702423 768806432 618068534 758641044 128131928 449370061 777612873 945252614 205570325 795169666 881838159 949441828 522295242 936839408 693551337 764285432 68277221 275354857 680104578 902922026 404483356 494832488 291277131 767313438 437187607 904036838 941601764 983846310 82702356 343328286 12345018 482571468 451922343 792270517 592627144 809118216 449396199 459389744 537033366 676009579 84483177 873753659 549523419 747958230 794802838 996356646 607910724 725984220 386868199 909982851 820278729 981824541 229751248 945198204 556910087 901844766 596337801 925025202 274564402 607440035 159592880 967339970 222282493 729472363 134686589 506254304 763593535 909536521 237746323 352195587 959945833 982711281 940904736 996444632 611971356 948549125 310207981 421532066 130628511 383910411 58341842 809150685 689196268 873619149 696413326 982264183 107406106 407319563 453499402 859112066 812285096 833178574 794748833 796575891 552478422 857176421 233906032 621949759 331268296 408927816 118812650 417027445 350501762 809866778 549606224 997479390 47217447 421311604 20800033 924510785 887814039 956665874 729623352 990590916 111801443 713875933 93263771 222889326 463005221 940726672 32711425 704490507 459932428 690921032 573492761 864606908 551371177 631823899 433977101 713238826 580931747 801746858 787227830 806273186 229388802 366223424 867941788 990499484 547787066 609939240 573762531 596762905 183613784 190166859 789499845 826898745 255707400 824766515 187382958 796076729 611711692 698973707 32731122 998405674 217875090 966094593 619910818 992283724 672256057 879986310 630394408 795924290 316950556 820162909 473156339 831868733 446318105 734394407 729923180 813752008 484731262 500653705 609498406 734804351 390522060 748389912 410471327 422244174 84983330 125684579 413958564 745879939 893816908 901882069 771822377 955101525 144408272 727446611 472399207 873072081 298472124 964972278 743601716 875519630 612712212 707204299 641612490 866223806 487107788 869261072 478591275 745296484 559778054 981067832 869131653 994599902 102762798 928151982 486554149 586839307 640082442 707902866 218872930 273771063 249289988 709332607 960289348 960415137 374515519 543219637 152505937 386370642 947669352 956955179 607987809 641089128 395407896 463575797 485554794 737657164 751816322 822370942 645360375 816121485 82130281 269601230 916212273 953605778 634061498 654943455 316045909 710628120 659987861 817507579 821991185 981051890 824787335 919452198 224085916 836681373 970746013 981263976 869069510 920892592 408874495 731436877 609949713 705878864 122985696 296625147 107145573 276086980 872154037 880912366 660410068 688046379 52874608 293797314 111917586 273968946 827372250 854026484 815854068 949871182 516203587 678971370 33703604 904959483 291499590 948226828 178166467 835359691 98820170 523056872 263912624 695047755 738876983 752468305 372173970 437297355 830271325 877624079 423084337 491447144 671803467 883066906 9679920 817058998 804194344 941548272 103126849 326257284 352317672 736650649 451975022 743041860 149382676 772530478 301464431 672192765 495254466 888601564 84252975 948638983 397567978 443697937 441305570 676078846 314389878 331488704 147747982 355351086 985642621 989331880 910506993 932845382 195674485 972533743 58774109 375405360 607715545 886828410 326155015 412321192 924710622 966510036 711593326 876908969 444007901 450705320 747107128 857409498 603773370 716621395 691587665 944912491 682352746 745031942 464582172 912937940 693565890 738333839 776459512 939296476 67282411 504923086 716280351 949845886 415935953 955047716 3237388 422673545 705509060 815290475 268825521 274287587 622512120 985753332 21224366 930769993 602164199 668534013 549598306 888302547 303418837 879878431 521256753 890768917 822858535 986278031 206648604 262243545 165107332 226151820 974716421 980552157 957123381 978898680 657480146 987936474 877149141 898233684 961545806 990275730 827299834 859964059 844969250 993977178 270763710 555593952 366677256 712733028 492628169 743483974 627521283 967903064 436605836 736713113 788942428 814712392 453790387 806937326 581233337 892805479 662244813 836207284 979767977 986383169 295361053 921207566 199103890 748784290 941733672 972809924 723454154 797098436 276062099 927940312 792306588 914318729 834947306 902468106 50128359 754881273 680808448 925050549 472535888 941164831 786645558 891533948 698803682 867336246 674019614 710914069 521911002 781343500 22456316 522628249 312410015 316121593 781154891 974770807 856095206 912696673 367281590 903368254 169596390 569506788 533697640 676173593 697145295 860683552 951110136 962147210 340144284 815211231 75844293 509810158 396654579 970234475 730725162 836516850 829035656 988206608 879595603 897685452 938082832 971181147 878244631 912977625 488392717 920262351 685036330 849571992 357967524 771225711 532493752 811426218 109719176 242353378 636936622 664428233 283357259 964048395 221361980 903108469 254678424 549925058 75381339 639846180 360315655 509560805 124298017 291821077 683738576 908821348 914172100 994388483 89750239 845095573 295783444 415790077 939323259 959990536 711568202 746178889 744398937 959118447 311875598 536801771 946236060 948043774 822854190 861422174 216759784 855240474 842223448 974540813 380048909 456824200 871046322 957107680 974660448 990330023 304499814 664587103 378759586 656341854 795150771 900583210 502945307 986021220 634797107 848447509 634213429 783556511 481492907 545183375 169932630 850206812 158367188 458279791 604570665 905073457 26077485 613030607 356401706 569061739 214331165 476607314 227535676 844810194 119398620 460720524 917689841 929926086 871820273 976012503 263167526 266062284 723953999 944018565 629542975 953816836 49283207 260805586 761024647 847935705 662384466 759149572 312566276 614107653 958187576 981082406 847529344 933660096 938383965 944857205 314399875 999485181 866417488 983922790 6257705 716618769 550315025 933151639 480374647 869737278 336465699 778379012 750344466 783759967 459931159 556023701 768233436 911328169 191585569 961674073 939116653 988980990 978224803 981477457 205437095 996891275 717996159 795294718 171388457 332262205 417582926 702932230 855426389 872223178 441840226 621732605 837269144 997573902 31175725 629618475 818760920 942286204 658905259 664716682 235093651 584845184 53438654 655545516 253963175 598071847 3751365 877344228 936403535 993953194 558436050 615722182 62902484 892962197 106002745 360393668 208547028 528742432 739410767 960740687 340699083 631757742 867122955 932491578 890207220 959229526 894678804 915691651 216987957 740278248 750224901 792925232 24687015 221882361 998055990 998443785 615034677 779066946 635612875 702851047 364892072 542553804 947662233 979288372 575082520 967158229 750047966 922211618 336653101 935724217 730498584 918965883 244030822 290023595 966405406 992433339 209218853 365044823 275070723 563656514 917247168 940003908 544421373 933522174 23564628 571401418 286643739 322249511 593378564 762022515 731608474 889682328 251409817 626943558 953124006 961529629 257306012 531459567 401379951 982987151 592094541 957889077 816776888 955528584 298506510 668965064 687358453 930481579 488102123 674947920 449945082 667361699 721957330 729252459 536241788 597546597 104382623 862733211 732437307 860163911 938891303 998479151 90252334 507149032 163682642 986027637 37534066 907830765 141356888 699408180 605709917 972068198 463768047 638772298 993928805 995258923 581645515 662047861 362716496 831740887 894773319 940561683 254041331 302333573 759171240 862313872 593315982 720524926 270830157 772336489 451725417 597006915 473622188 743015216 395799623 975442690 242986374 416696394 585813495 704693324 931023752 966981592 357958487 649575755 661232692 915269059 641823104 978435874 50232581 327015352 701824265 927233380 287338537 897738902 46717447 75454964 525371963 908430018 148040781 902328581 604892503 862906677 292747481 928083939 420992162 750716938 656303093 881385427 581727874 986759870 589662103 838166638 290585880 528283072 204583256 987745615 854202642 980790605 453439205 745407234 117317191 521013074 563110417 939844178 642799461 983607074 151088328 705902650 247548505 932566274 708952001 836748361 587500771 984260305 650227029 855795380 50017238 973991449 933064578 995056031 859039814 882870189 535984326 710839927 172904439 786891737 263695161 474997616 185399541 972055743 869560612 929619407 311186552 873757651 356775758 866947673 567106426 963372164 87798146 655536999 484275060 669065612 141514721 389745663 43905725 250448062 15327645 706240238 820540726 862651032 993812818 999568250 468461730 769583223 392932070 744133606 215777714 646777344 750138221 972425572 33824440 63663571 604135963 778235721 780859829 860899157 121990554 944334549 34603042 376607678 7816411 68264462 532403970 909177421 614628904 907502623 44491983 345645046 554284979 634811253 121256844 402323924 659904495 704323878 125439284 579643154 659465051 954550192 277845058 946094313 474203821 557521500 947168842 980950472 368727436 513074727 986837193 993989581 343593641 557559487 847318098 940352667 927689902 928296641 635654074 804936287 48801941 981446641 673302589 985138589 707840350 886073787 744812494 858934174 931139284 954967557 683639989 836402840 948419995 958629531 112850626 223246520 869968059 920657693 697976688 937154313 28629936 771908874 29736709 422671792 920079301 928384089 674336007 818878695 590437043 745144992 638045929 771340116 835335390 912217280 752565434 811216325 554024026 885586928 156500521 446829908 643389652 849401691 898916735 943145675 663127558 741876864 979640276 983444098 137462511 936048779 980208590 984835451 125769776 745071410 331485713 951488188 886138863 938355349 468548795 937024633 844717015 925696495 973385418 980760332 949324833 991577793 344812810 729011285 445376652 943089700 610658502 994248155 143804294 253790358 22730356 93590505 601839830 851692646 683064860 889482003 43857315 758375285 640423387 857524531 938303541 962644667 61861222 898370867 984762710 999132001 572693868 692670716 781541907 974560835 808528307 961971560 229983294 844338668 894467398 974697135 601641131 760113162 592279609 885181035 720008346 735725798 812674433 823371663 44701069 681322753 336391090 674218617 88043583 590389456 632304134 676562829 777768100 945209177 462013410 637022002 971904108 992563691 987672966 988084708 448985143 835807823 615826702 729111430 793798674 888505501 236910398 589096049 942129224 947793143 419107705 422718846 342782441 451094960 223693027 578484152 752412998 797232022 298772760 779305306 533056535 988960425 525984793 707741176 254071515 271182979 350555003 589685237 962031624 992721116 529909071 916541506 17428838 343875961 862228336 873052725 777212978 972858229 388860412 675914185 920886286 965846307 726428772 863601981 413498832 838726880 774083133 870147259 270631336 653291236 983825132 989133883 644580556 836102629 835599873 843275819 582438589 935321237 303018872 497366314 128084471 477720141 632842209 927368373 905347026 958132389 404969602 430932986 952166653 960187553 316039763 784102341 916509934 996166228 812217406 885797175 176655440 386531675 837205534 852453457 728239376 894620986 748098730 913823958 122136288 488644040 864200179 876080353 344598568 570253416 969536942 992514083 447542260 839338692 357624726 984141290 320855632 608264160 31834345 386374243 5864900 552020453 411036882 554311871 983606211 993293019 233205977 736019067 591101831 897051271 124773883 330506931 767401412 902080125 494429638 888386172 397685824 745475993 92904913 583214898 32243706 38863483 443919696 740141290 300408993 559335906 268981819 624636390 713354182 751251995 390749138 835238201 341993880 793570853 194296339 297116579 839841511 937625204 138646411 286940612 743225933 767920791 11357003 912530149 279445415 626372029 356051830 579354714 490214952 697088798 499753114 656580128 380822044 382248676 14424236 587628362 741671698 907462507 401283323 716724034 335534470 834788053 501905481 856647636 397914299 944379376 657985402 795626742 858431775 974351905 800829031 998449625 487410325 841136784 227722508 804530427 502393431 838037877 635104425 986716336 777819631 907777618 418437623 716809712 104686589 571591274 309078931 792378131 985183336 994799572 512701107 711871700 363115147 591881198 162196618 808118562 36147981 935730601 556530621 811418101 810367751 962585088 936646880 963452408 266515959 537199942 545887316 915458836 957142121 960511308 307762077 770686781 356082861 819531940 331680229 456688563 563891091 574557019 550536549 915625568 575555905 764995088 751650598 861317430 817617639 978558532 707702774 711337113 245171156 900738803 532294035 604849345 785499594 925486646 77954382 906146647 881670155 910632322 17454873 789447106 524007968 585204530 667795953 785209593 432780815 974955457 458073115 649535723 992808642 998073664 83523821 318057829 529620725 618484386 551580021 721076153 568575182 836855071 38079317 229105477 780308367 812629873 840257719 965546323 359071976 668001966 644093748 672109809 666239498 855752258 724861945 814633898 978730687 998955284 105750074 483185756 148241521 837575389 932701794 935339011 642366442 953565279 343754213 738605233 25721000 208994934 82748368 391722501 48427906 669411113 890774603 991469705 57840279 538387549 980933781 988550757 814320394 968503459 345109661 383959740 435405822 821242029 803877845 857880845 631662133 983651179 491809776 825808687 951909386 998379906 363620724 772516301 179192329 203660456 56535647 919331963 975371412 988730962 304861535 539779363 849684190 958173416 735657236 852738816 541023495 813465195 677431108 745122968 474687296 641252604 198466612 732580652 85271972 501187289 846742397 991508190 167598881 743444736 224225297 981205301 63291796 352830722 49315261 511276969 252868764 718227529 185763459 245155880 148162120 440994799 281743520 566981289 662453976 776935694 884625598 896873797 254285788 355235772 753192377 892922027 181756058 580456890 188146986 808762120 385028208 507279843 818860616 993173178 917012650 923493019 943969740 960024998 255571009 357159748 244974917 614680719 833935058 881101653 451699030 788242905 319493192 595076440 100623778 800167567 538848014 781294037 821407681 925474497 931874797 962550483 367239285 369324719 999419634 999754995 619008497 842871062 192619772 876709991 458069349 931905056 448213519 479572070 367493703 870075937 966905769 986732220 375014041 380732467 71369344 676824252 246033740 856637915 402507495 502920735 753068944 934649520 267001028 609627698 883180538 922107962 802049183 911998906 912522722 993942662 929410989 996850785 631869144 978010741 248772680 960685038 765771410 774721068 616457978 779996146 164358911 458834224 564882716 846309852 785077827 864117297 245450949 917605379 675952248 726960062 163658428 708974072 866528369 887301721 960073618 960984741 552926000 841493197 917113959 971889746 578619694 871114056 704833388 962292636 554822978 746555930 183190531 493323515 717780931 830380424 654622954 775987094 289019199 625335317 701849714 844542899 875413087 943830760 527887160 595997675 989524896 997130949 337538841 434744143 925265623 942531923 312667537 975270131 886259141 917250967 116799218 368530765 249170595 265639273 650941841 743469730 761384535 958812929 961937962 980257731 850999212 889699880 436739127 747890199 307323838 605667575 872883305 922790911 383947156 741543584 862642977 868024136 675561388 933127392 320158545 686525825 673636730 814215840 67525609 609824824 125433631 171948305 657107626 908796118 524695693 673834904 689821844 736984386 320057925 704045981 316691709 735913601 484276062 919440724 597453866 947337203 968639182 984334329 37767991 489026907 651617706 702629353 197694666 271904446 516715973 625745614 465815840 609134297 90206260 995576348 250759560 793135610 294156194 551163419 777041746 968683611 756783490 788205918 502594521 920687218 335364829 698700756 460943081 964705184 563802697 883358357 182844511 677400503 79650608 693896460 391820939 484792008 472980124 673128454 509860194 917891199 759841959 939565415 878139611 993765172 749195710 935275331 971988232 985635865 652644322 760447280 304279175 958747256 344912147 717960442 305310135 894229253 613364530 708503592 889365936 968812244 934537629 982398977 642807730 941172646 664545459 979328665 780098415 901561028 398473369 736856331 647714502 898910984 470702199 714846563 52889307 70559955 432600015 678615617 776544098 963863115 334944364 857694143 791632380 890710866 556744041 592973069 850300692 877604018 845163243 936201173 704461180 942786892 608452707 664157271 251618602 948810997 768250674 837040672 589030472 601158523 706487811 794768497 486445603 541491567 655592147 743275122 414012523 604322573 17300637 333246756 21434787 386774299 274571735 512149597 358122920 988126603 712816352 883564318 707818486 889045864 466294230 907997381 874004131 938134583 621484692 827950370 164182276 262956139 892848399 917378230 166535768 310455980 987068332 997103435 771699347 957345343 612707897 733490968 689629270 972100333 936675361 991348811 508754180 624218526 663043947 761777305 795361328 828982302 791196070 914848538 82278669 751701395 550168128 718184994 843317116 863418354 60741720 734445185 511116777 991557552 944714301 964531862 3292765 186748051 52814828 737599894 276447748 529538656 466496899 905812768 818012209 912368403 250379874 816725086 267798183 546863717 44482779 766910954 817336812 935776518 397439510 476546882 782619383 929137644 44397851 205044221 221179559 329881423 262359156 676002138 713715766 718237073 372083177 635578335 730707519 993753814 625851189 787443577 576605784 827120339 872601152 957950356 178573788 640841965 128837422 761217852 640753233 997548752 491399153 870021324 718713685 868527950 187900987 959564220 551616891 786766944 986298551 994264315 705008323 890350999 522072292 578860915 845448648 943906257 829948887 975321212 898774842 983872544 591277273 628419699 668607539 673569077 846468267 966071519 740345098 751055183 155871747 922170053 573650699 880072196 71355663 357848291 14409152 669657888 638822374 891879705 373177606 642302640 345405209 991243135 466147096 654476132 280436309 754338261 890682411 980675848 988106624 998302633 76167361 417792935 277846584 533885614 446635138 987710721 833364639 957095389 673176002 876730040 680364823 993378811 465061812 999083887 23053157 332872723 979037932 982216250 494263467 692806211 626898096 674217725 865171518 983183485 830150532 944392499 639780694 840546911 295414472 589758253 116093748 989193505 791567768 935300856 258517880 877687186 481423880 895366548 584864814 855921381 940132613 987869711 659310076 839518276 838403818 839924402 914304596 984358567 922122522 935874570 741044788 819768162 45804094 688806781 10035191 671398113 38554174 423061459 115636362 596089070 229253413 778939930 908468400 978170433 370834145 830259890 737624309 952201606 585451120 594420617 165773436 890555167 407418068 616835838 193831757 880052792 297027155 641036610 75868601 676949785 227896653 741338143 73403844 656025419 7655121 480651964 933630870 985556731 544865732 842797107 302566344 817240267 729851725 771065139 113373210 389933309 900593703 993629862 976796790 979544826 148881663 590024554 598109510 819544750 360371077 587954716 249907897 946289949 514230256 823680990 280060390 441590387 937396607 991234680 818085065 888069652 34253847 97451040 470009014 878594983 731203705 810378303 545688923 653450980 251249528 960498640 17320764 854385355 356220573 768851713 648199387 858028600 818381350 916887527 801452880 954318263 673596982 949307526 348787629 370167814 655579132 940295045 848969149 914869180 655851549 881354719 776193913 840272390 821054083 998975371 647777188 943158536 800567440 985191491 894764478 928988247 946204813 953539018 777526367 985144872 186140279 686064426 79158360 532677371 845223358 854978037 506042636 764744187 223709645 538796672 562000289 847622117 405448557 838997145 203407106 505764266 913569900 932230449 733492450 870416368 309053737 445041461 127843953 703062585 344513735 725741640 39789674 181860634 567318945 881300385 668140899 782307142 79992414 874473543 805326694 952704723 991211296 991893256 410457803 658439227 246823625 620886479 819636173 878498114 295293440 600981425 266742296 305549982 698660113 927814266 144789794 399231677 770201331 959291138 685225462 687888360 978110601 999718825 326816174 857207719 720305174 971519630 267555819 590112993 272838362 957311424 340976490 819905420 872449769 976764396 350016780 563381908 443342404 755596883 32919229 132967501 563727760 762033072 873544549 980171716 789604482 794851640 466711958 811748887 666232945 752567130 868555803 891200288 982925194 993686005 403262692 503162550 81125876 168772572 863687633 889699177 46094497 849242773 89928601 606906114 863621193 943661451 683686584 864781483 819910108 824650486 890438807 946514151 61083376 563291474 194843014 911282850 818028331 941821106 878501134 933395684 572693826 984948033 23951324 238538782 195406456 603621690 91486264 616324983 894377292 907955183 325087831 996827321 705077317 958044068 388808279 467883460 437492685 985976974 21022596 945455686 781899472 823233364 927807091 930868741 472380648 935661889 1100367 453475920 425287437 881763461 833412765 863948919 994423156 998899209 654017438 950831731 801186337 850085039 451661872 967048123 699696127 918844826 854012028 968717406 424040676 518745800 56304612 972672493 540985674 665870158 149774485 679768394 364646874 538767709 960759888 997042253 497300166 867764716 684853288 809620958 381862579 536825024 609317432 805017970 37729455 309629503 26209998 245028997 650938770 832646121 728986175 961227897 985829413 994142185 566072488 821007233 759308322 791823370 352643873 761791628 452064636 946858148 110608449 648975018 426232228 784291077 346540909 441017327 240326064 798499840 866659267 989514008 38088210 155700535 910131577 942406728 504501547 551357530 420762687 511288897 706613633 841752013 259617845 637541798 719908450 848914189 134125190 258562339 866897442 919743754 33650369 906510687 763598303 979416296 841413109 886186973 631589726 987335207 929323963 950897319 644168053 986413953 784822693 947976230 874593528 919460340 985543851 989378220 321618344 417194302 58395559 337074411 904670526 908293422 991130468 993545139 752271119 754742548 969816901 985029358 229623250 706616576 368506713 752366814 179735864 837794942 722098382 994538141 639555356 887274298 365951547 384924081 801208901 990917519 983169027 997652599 58148366 277546645 100196048 458004647 207083728 241947564 757033835 919792626 84539001 263582550 939770611 943320707 24355023 207346945 137552447 894194406 911134097 979736366 219692514 787461149 687015053 943069360 833062422 911006643 141440656 856888247 741495206 814755362 449075460 847458181 276400339 428225513 685922673 735195461 386550880 598430037 430372086 700932242 418698005 689508654 923221783 951976818 839117395 937937965 239663253 632928970 583179685 908588591 854354317 889825107 645794243 670723941 706639456 989851958 965954095 988136856 137312034 937056367 779449396 927488757 960207109 991835228 865093049 964945329 338893183 658904779 890057584 974340589 721098069 870468466 254297188 640094516 330185199 611792407 200925377 391400731 385333495 792913736 746158308 820367503 255976988 769446328 56104739 795431296 228326973 629137803 980347603 981312961 925898137 968290256 86806275 767520489 278112180 620174501 167355746 653561405 923419886 932839214 304987887 368466258 590483581 662272894 146475726 778684385 554636837 714528948 299085093 676032873 45405833 91802343 176668091 621655070 469997467 743742198 920809640 989093975 737561181 956973500 208402665 368398082 215102963 304829563 185268042 446622586 269581464 848441624 644372590 794214197 800879281 981074276 98272492 716021641 224088378 617565645 512791128 757187634 525433512 917764403 410243771 905933351 247149174 392278133 632320150 980217766 151921700 363433842 42647510 475404219 556235333 740829777 563022706 798372312 306759456 592835343 913621824 918901856 362664911 637609745 634396165 741387536 927566179 929097638 898275373 948456648 140608866 931187430 603539851 910476363 139015167 996885405 55811893 136134461 584339434 602703311 532408560 640696595 127415374 695398245 490646774 773606790 416861162 532697107 170841014 660337728 842210720 858073111 421077583 639647944 632925020 650663480 740684791 895584703 61226311 633226612 956625706 961838148 156262297 556428985 751802434 785602712 177048205 783856707 325912669 886038816 810821063 986807447 961087186 967615035 934855209 937902222 849195619 939414945 82994177 135008252 756989241 999442783 263978242 272231726 523747755 908647588 289282241 403578808 795494582 841181691 776675854 913307148 588388293 713668875 766460792 767167190 156202136 522690682 623760832 828648506 80967745 405725272 353201024 456612076 524670524 552166244 866131295 889743434 637135853 873170512 142499544 551232777 466101510 764763142 293407535 880732490 166004028 843059049 296561510 866371672 196832084 939552892 250247084 892004999 515405419 618601585 432353177 724625216 967444847 991088695 60096969 763152747 641876285 662838218 345808447 876229749 642778568 801005954 240124111 688513820 282399137 616011568 153903139 239036046 42610980 146881666 72376250 991140494 475913330 746052886 842751157 996292797 858727844 869522410 232913515 631854744 243194258 535165831 842117652 892726194 572748225 918884874 982565633 995957761 420393446 702202128 952846877 963001476 399175223 736251309 335704671 603456738 663535335 702630150 794091211 802781141 358095602 833358417 232310636 305913671 3584371 715373808 864499632 930500364 258267611 558938868 826761926 948867301 100337229 664431553 128098932 842115949 73075135 581799223 69275544 190844750 341633515 901811277 176957217 288952138 604022537 616599005 551696189 927189774 391762698 915009461 302000589 921645127 320403335 362918720 578448703 901445528 560896596 635125660 415979401 839796946 714363613 906905906 436482029 515640111 187260397 460289360 668127088 790426530 468480077 665522636 786453230 969921216 751657480 982086737 937444307 968068810 768725582 829267943 464025861 551434518 785891490 824649782 468944577 857589359 641938803 847282460 279677971 535141587 779389255 841835319 93928036 848351595 317980029 537465996 616585314 913930639 180517341 531855054 65877424 845398577 773997875 985753780 693500799 957204168 39615212 627649278 492735280 958183749 518294296 901050088 308863807 558370723 721329365 851568123 632466414 773734167 914593579 933401527 19699275 409199503 198573065 263162722 633980463 751132614 923998449 976849193 130822846 359072067 499039142 665554954 814860387 829667872 497983646 613925867 808527351 955809404 19162690 628079958 888712513 941116427 353011295 528408449 885119334 942070129 743861279 933859984 824355011 894704467 402949520 597402990 216837011 434406168 413126431 877821475 520010900 630781436 377316270 633909945 798295504 819108651 937032398 970983556 779746295 833576030 605805593 626586464 125844711 207530729 276458146 328159066 877284632 968356305 480308367 783293588 621249258 956923995 981222778 997408615 548214596 999524321 927616078 937293928 411090383 441820825 249399918 688216768 287572821 723797169 159174510 348434007 302547420 626088582 66626470 824835721 346080869 890545081 115781972 684420805 557011429 917396870 517715659 805179398 194580314 649168246 406346899 590911358 746556829 830240697 524159154 966154892 705557397 837872345 805952781 857769571 956261250 977241814 285486300 318660642 870176640 877060588 376568326 915274728 894460939 940365763 672814890 838056567 289550214 436073175 725248186 799354558 257729781 818908413 443238540 925474409 545976322 948789035 923804133 983761666 631269837 882075843 258921715 580664873 159547289 373885009 83192650 951765829 623201901 726838354 856422592 865258202 479237351 737068370 804032970 843970878 787136246 876803134 958641106 968129741 291759638 318775717 747171365 867886073 399174883 924899431 225935141 787741912 152409815 929538192 602305021 846372916 951070014 972882761 22742348 690241416 313641640 692115260 948130578 951352708 972983743 985024385 387738690 898844849 223808235 513816772 230667199 613640927 135131861 233869006 937384286 998236799 507094303 806684190 574811638 677797550 532838052 888319545 701481915 851699492 278340767 813379625 367338964 418873522 205600552 427720211 359561455 472454421 627689760 691806827 841201220 890778271 500129984 927180132 94574798 927696893 130364208 822990994 993700471 994413338 683278984 982186300 896074357 914890187 825387828 832034560 205353266 835575943 349374888 739039465 940659386 998348026 352866257 872597307 574673116 969218135 755962053 924951859 364201376 628270625 473451640 755419020 741297166 930866535 106615363 278347916 167794897 814973113 51160157 508719486 888006918 998866683 372651798 691361828 142590429 644387145 91503720 890806619 927704704 973530356 938999970 954253229 435765114 555366990 656462055 706737500 720046789 997157774 590638907 819190326 721425824 975266529 404164924 647673858 442763320 566736213 512051936 719157887 745223614 804323542 376212267 656911138 12519759 897794236 422202480 707764792 664003489 737527529 512772099 846448923 439362292 622781619 733711898 895634552 492993270 930166729 618110148 877919897 184542059 942503972 920680915 995793369 9719430 779271728 793015376 860521837 685179138 950415112 763422623 782397157 646782308 806538792 339368771 588437263 454673034 548436038 956561174 993477912 167029760 368005128 424208961 926804708 65673817 275314052 26671919 442661757 672434921 962499452 81028593 828056531 933788845 988226279 454484809 517369494 617248092 741994090 805673819 854547992 824788259 913803780 673905538 834196820 501640766 583078418 339795450 690166077 684511344 713988488 67734204 416828458 711222646 911243899 106413086 656710507 323328148 685606188 901166610 915948976 740967315 820349186 338224432 390264282 595536185 739525662 185208365 496666073 446436750 643964722 65689296 568545621 721536195 771926707 239418458 420724539 765373346 922050694 852508120 982379875 767401649 801441379 264964602 838165498 744662821 827618557 235806150 322000363 98263148 865208729 849268200 872393158 897126873 999557585 93893405 151276559 574846719 594612855 375276825 483790686 307982973 445756789 592759178 933516727 679301892 871118273 750318239 873985437 939909104 981265860 979937743 984271519 409818638 818370323 265071078 696821391 625517488 703674123 760283171 804183451 42615789 572015229 465520962 823732003 167246560 729851915 249152274 418924523 485825493 743003781 950237638 962791540 268938746 943013205 437620331 766180844 732567756 971584747 256143247 709542365 925246031 947346191 383757151 771822418 807514186 880169103 791633803 820310944 478289789 563885261 888415018 964165024 275402247 962025462 831045270 832907261 512457393 848754751 242148639 716886685 751698174 850520162 883594527 924773935 811979276 842752117 962593472 970507050 26844034 97492082 401589362 766755542 612554574 860386699 5406128 609703963 305415802 598662807 374457017 567748654 813688049 927542397 956526852 984982759 327073752 913211104 773194821 832859556 396573362 564821455 275342852 972881905 964857122 991047263 882715426 971976700 513255233 786121585 66241547 931520133 621929247 650723699 527436284 753214374 869903190 921964746 533096120 843933658 846206647 997731376 669485627 987999901 199012410 774773637 36413779 886232351 964434175 976826788 69316900 290012946 74720046 426939443 873917272 978101723 304543924 813013289 898723208 941189088 617657121 851150176 675715749 744912380 194306854 386234241 660704972 681507376 278347724 529049465 233327615 974973623 906215593 923058849 159971722 501646183 671857787 785971731 774732188 846702101 538778764 563991169 277560187 355650778 533584032 938521248 576908928 792387942 90479138 273701374 799531016 945944261 588804245 708956753 262506416 862458599 839153730 869320217 2013858 959431017 571977512 928110178 522699995 531823289 133091367 362946957 324855657 327667835 275846293 803816511 559631676 849013767 394925370 766665406 889002505 978311341 697156452 885733038 810663160 961822378 386435306 778051359 237368829 795237402 912727277 994353675 119621400 174175349 717924722 763361353 686920282 904014040 846812465 897794762 320738789 898610853 934849058 980496240 77578625 623732130 148888882 832659225 828538127 889938673 19491260 123818980 758833452 881604271 428026330 461492327 810811291 844040431 218555336 932276042 815060690 874073020 186672699 767726763 231455234 817459153 325274015 545670448 129803871 139611278 841531506 997409302 732535588 892704795 832415686 869176323 697605878 767306877 842060938 916977395 454230479 997962542 645733524 816545111 978448837 999421430 145998899 405821852 648060386 885127481 573172218 782685418 502243152 743326944 662097609 710738235 800405587 902503744 984470843 998634718 191321191 371069342 35306861 166665587 495641080 776711892 214897428 930908721 956536290 996452398 342468555 829651387 295935284 775247089 630030887 953316541 830382380 876673719 48769253 800528863 776652476 928642314 769117849 930271228 821935036 867653951 289831805 821686220 892127900 946400524 724409220 984537525 685261402 923031210 427499826 463180462 868940267 884383624 212779162 698579975 150297681 426208728 20130917 839122339 987877547 990204373 513309181 887224337 70474669 499738544 535293414 603466242 187279756 599812718 195260248 659504963 346938043 614510901 418882398 638332130 128501981 629946234 638988617 852634727 600052024 968213581 600909486 616910389 803283844 917965142 51732915 895630963 291053870 515482895 413208593 699215689 592313394 596591396 407471634 639593230 259205848 462262073 148401504 796049910 921009684 980010548 77007607 227325321 123920085 473217143 863586011 958942173 530642822 871815475 176735516 951803593 409128541 732721623 366980801 506878563 139246256 807817611 74180079 339424109 378717065 848410226 549605458 841238170 253002967 651243642 123113073 983590010 805521247 929061578 775295824 872276939 502253888 554433720 312833933 800086922 222224206 838442379 736652602 755969093 521867393 994443142 673242856 677644700 435218596 962875886 967801686 995647474 966345238 979737516 7319603 713659199 910202602 981010302 608984771 973138379 833860113 863249552 48739784 972765265 920126179 986915174 268924656 664783440 19007011 532031874 503183248 543162010 339011279 392464093 362543170 962954321 865153136 980912203 431460286 651380438 119630845 532731647 475581764 876688755 964964107 995546226 865297006 887882963 179776642 334907668 900918538 943886488 136120371 272952649 905019598 989857885 909558249 954548273 115022770 705294465 389402474 881288629 720122521 881280800 528846040 897673939 489598865 582878600 119358326 417539314 887881143 993587284 684464169 865336790 818633866 939847109 401426789 947609472 147375483 701201422 915124931 956151904 472681389 775089867 118711471 986630426 294654088 915930350 741784078 943176669 373885876 547888395 481233518 614741563 117267036 349196246 625440945 847270100 264772464 918792628 475068772 747950172 387094281 439098687 473088604 699090014 180275866 423468130 269302049 409364921 175779421 264566982 706048223 925116534 265636346 992748422 733900154 914944626 543708351 824526024 610114890 795163558 43521632 48133689 626557962 691374435 62215557 494574030 706603410 996279243 367876617 957690096 487316514 930435036 215497607 468210124 609743909 638794797 761977482 940339836 424974652 944463390 277049128 735563225 316766461 517866385 261499465 671569477 830356765 909711748 774013715 862577192 802741338 808788731 819904930 988201209 787017292 919688396 287665432 723472020 742980530 783842343 686296756 832892462 219734986 745609046 742489761 874850149 512771575 945111688 333822647 941884324 621642072 804180142 876868286 975729692 211064607 216024003 136292589 219316996 951260215 989940826 662608627 823631250 393822480 583752114 377106987 748402136 455064152 674445712 217287404 856444051 96742017 684878498 484386124 994394855 545620616 760731892 225389663 690557808 244716473 518968812 140334480 163919147 737579452 993881187 326537016 855373365 450371296 925537434 768404934 959419230 287615750 762060594 894566881 903108982 279665359 444709276 856702123 975064668 733760440 756214407 814208674 963143939 894166651 974370006 531376311 822682895 914496547 942174646 911260349 930237753 321289417 515164452 685755384 989707293 478007897 919963205 83888119 878954290 909682156 980261738 35845007 914547856 170992017 550339967 440885760 999633005 59281014 720098769 209342301 698465452 208796713 534436770 22163992 186588515 698838560 867367478 493973752 575635182 184645815 861133324 60298050 498475921 615224690 782250282 96889408 820034911 414076802 540604245 293713895 595363611 66070164 724479179 485626719 574731431 160020672 326243881 160978801 500703394 364262740 679686119 218914664 690272428 617555332 728694814 680382373 968278164 28920697 320012017 332623664 423035118 373688013 862598877 533643206 617910948 862863159 874933754 896731508 899019440 277886527 407900361 632272492 644282363 45183428 903549659 408211556 444948494 573371054 734011344 556825287 851797549 652732385 879219461 764308749 874228181 638379945 711647676 154495061 990863970 645489390 888994411 845346683 875700044 403511036 641630229 611998387 701605919 341592849 910352363 817240475 847062257 7549450 765201959 636985507 857174048 201029638 968169274 311495435 573660989 346854060 480777903 373606007 973269128 966782725 971810329 33734896 107220327 123258399 998729287 655507309 997171626 249473027 962083006 333232452 909376617 137724632 948213024 243115533 298643310 411341586 694911025 593480470 757038518 822772547 959932721 954658875 968576449 711289760 878998554 579687857 947860978 839327510 944473354 272027764 297923889 254267982 452532743 97955411 629112746 506249364 934373159 740033549 987474154 379042298 406875475 554154195 619801031 969918490 975279609 117893441 661202105 352924336 688681524 555518789 897119468 716562353 960994842 48630260 529600666 933914509 972325298 605801267 983379042 519079222 836827094 654585233 845580879 461688944 873986418 73026005 704181050 457260084 817082502 201619469 486555661 24948181 541320847 903272202 973514496 780235012 999207188 181926367 947379240 30015702 627037954 798686884 977288968 837810634 887890614 173502545 630505248 803451906 869692190 174445338 581616407 793429829 987716078 614349785 879203563 720016684 837340741 566320313 726233466 461868161 540037994 852739456 975073184 919102456 957515437 477446336 799760604 643128219 833057846 643025750 729649495 619475984 819830415 392354903 855750248 590017055 914390196 677288163 903558685 494202261 778599057 888345181 924101301 4765792 676924714 282565187 353234747 823728828 928993251 826279027 901734514 415871128 587632942 227545141 839427209 903418041 956584622 118971429 589788848 558524769 817720398 218012970 496993993 16232705 823117477 678719212 985959214 525803662 639740227 834165530 871162462 688844348 921880965 720031303 975789422 108805706 555417399 724250679 910012136 448823499 872863421 712432954 851142965 428511850 832410126 278122694 920977073 344270204 784990737 981267152 995777854 242410296 708004721 513618851 624146529 729582779 956375647 880663375 900654248 354612684 493097303 418767561 797572902 309401891 509666663 800737103 875546185 998641160 998869600 733182525 833788538 338791618 395989726 501509662 783981555 927241000 997215021 332827095 763747639 10721081 736501836 271680251 593075567 244505656 924264044 498942855 896807804 217076325 404863802 333651388 901779104 459628738 838027226 917380494 980641846 575076188 649508368 338727288 370472943 816931188 926912227 51869561 887019296 564073341 957862380 954163746 994253577 117377117 232784438 25675957 813699339 225787588 713179559 926393725 967358488 660831232 853148891 227052342 619598186 593038627 600597567 527249444 820479356 653130155 992250153 523764420 820512185 127965143 448119443 599775563 699971762 608622830 789899982 26665420 291445906 261469655 377385732 941669181 964649239 834247704 899464066 405330589 817739655 44705464 510714160 986446241 993382113 985428483 995509079 914931246 961277816 792834534 892530563 193581272 756407410 266260525 846857037 142673516 548743322 467309016 862545744 398252373 971071256 245529631 745369603 140382228 299405147 957821134 996016952 427806191 790457062 740416491 786053225 657971931 686611353 672137339 939899093 201910842 258205620 420051895 848741523 294802916 422767450 148650123 500277339 571042823 721382568 899196607 978688244 377129469 563493913 726635502 866092658 33020045 45274449 678278085 833739302 914865830 970420158 129997968 231367175 413134444 531384090 898486532 955294532 137735334 650645768 434368922 964582027 647929789 744770217 659820629 947639464 543305113 966470241 418532737 922072948 806802279 856228090 119946397 835280577 390927199 599727284 303708348 940795314 953174246 986987161 762375788 976294695 355532439 763843155 345103516 551106937 137962155 406361267 211219980 356961149 534771937 729669801 339303920 781428491 280847871 767363611 200586274 798107896 400463263 583649343 341726686 502395748 86774026 858666882 709693905 799091211 38823037 352226118 831584456 873668268 503817066 655551617 623693128 684891385 449686775 620639044 409275097 802447643 169434675 411970245 560162831 934386336 298466421 825883905 974855807 986842436 947637232 973178113 554635650 897872185 321444960 521003072 305264427 489693026 999815492 999859819 581774367 889069020 180911995 491919286 318450053 695222018 495026485 632999495 534020801 872743964 703370818 768636894 126979101 193390222 657681027 761674412 460063872 577211305 954136943 970030680 479778503 989293186 331258308 437433654 404717444 409747581 257729490 281963924 117013832 320826469 923724881 926799535 385318919 492553269 466547619 987763855 743455479 821487522 404551340 430000595 951905091 953177288 581359178 711844257 257775198 924711655 740463666 887305056 675673201 839055794 931440771 937063551 823977444 911419681 728267000 786098026 982247065 998184984 233897481 688504104 122315047 338949845 865618321 981879997 142486805 645481869 317778643 463455494 372294529 981169835 144189192 579796979 748946103 828655956 304133115 418910534 264626805 478326108 707511569 790164472 965366169 979271597 832239901 835087273 168139652 269315582 964772020 971721236 423414767 699404125 621252161 915287910 112760035 703169034 177395021 487094198 353542494 514148537 490682471 647197524 853717209 985351975 529910960 884739918 111299944 366331075 240098388 294127503 858061932 903137724 492546963 773340059 811548690 900379082 973466953 997556987 272841016 702167673 862726583 981946276 704167245 999794731 181635689 401209397 786048505 786692111 751705854 971970715 448571223 628264183 966487068 998643447 320736551 545704251 875836481 889405122 105621977 356964726 945800376 982040252 926091903 976681348 876861206 930443674 648517436 691682447 836728412 886891898 83794332 104956629 591534467 928631762 287557414 661698066 839299629 961151239 475112920 827806775 494175094 870937674 834916379 881430905 513758868 970459894 646689951 760066835 124547672 594202252 641946247 813578997 780718429 819542817 914510082 936855922 575373727 609393593 971522292 995101547 911011964 913120554 896978850 910299916 531841649 952682648 58658270 744479539 26198966 128178097 937477755 944764070 626522380 681976427 631491746 672565742 995070041 999733372 165695948 184656960 479398453 674715989 329304099 971279421 975758781 975881877 541182247 906328232 43754874 769281489 534963843 978608304 399811521 868306471 711656788 825840798 681550083 806064880 762035080 856572349 746724631 797439193 872414609 909653487 998746015 999734255 916664386 946728063 766126552 904423288 347435784 629973847 867794018 980447478 554245715 573202429 309472282 396350173 711467846 752091294 446085238 868042028 618011538 966679085 392207300 712069747 88469310 552169858 772419183 998525574 288863434 372454528 297657077 445283621 495470045 672600674 292018037 532731907 946765927 968743281 489191223 585297750 358444639 449237632 747491009 977802547 840908473 927639805 891358590 917328846 148888860 611036633 684881861 890684917 387679090 760806569 926531683 984473793 474374307 662311334 575590909 982986525 550821268 782088810 820100246 941600975 744733745 810698796 308331657 656649865 656999958 854799752 594326645 863288842 167562049 352738710 781311948 882657810 494540069 675535504 442766537 892474244 674743331 965852952 784809460 939489762 711045622 788608263 299380792 413620525 822335888 872697170 343099193 510382062 568336036 993747288 669561623 733956071 463161913 869044614 312775908 571771802 744762358 941022859 578799633 610969979 182696547 652969685 12869257 478269293 230897520 518675674 756938595 917867342 737296646 772270641 286068143 343153510 714930293 998647476 121220921 244647302 671294331 725593593 692040312 776782299 898546015 931406908 162801895 358253247 463798385 975627931 613064571 870570154 905445578 974111522 501269992 730413518 169297962 843193996 712483572 963717505 34754852 942346141 793775841 913432377 228196235 980865493 386822079 681199612 526472710 822834894 760888608 951572282 369409876 950359440 237697090 600621768 339208862 710994425 330543610 571835892 207278979 221972637 496443270 635958952 723196549 748689705 820055492 955944858 846822502 950920767 381413234 539114781 575702207 838748396 717354221 852875769 637755877 848321174 199414242 299967953 381142858 478681047 268568321 656238600 624255973 989775769 48228350 811949536 711534274 930398885 905388473 941049319 104660943 195486810 164204066 639344009 921516108 928385762 962911037 998279101 549914166 648146608 221737347 831353489 248318820 977707106 826195856 984678631 674386656 946331220 221529205 471858723 508824808 523125537 95744336 431547331 418809489 970534344 48187880 999678362 929153342 931085457 957731162 991551530 379868680 437238760 434063871 540076463 660080806 900437650 120844816 971070945 801294661 946664382 994422321 995997854 708917861 888670742 923636771 945098621 605667435 905262771 91655893 709048289 781284076 993723274 285617239 336574306 136801448 915048701 239713243 750179803 202041383 722921978 426794713 806760416 376641034 509500119 910098506 951724107 16911843 562009910 234037054 492583552 482742397 604760779 393572172 854506934 916794124 994472030 687637266 984986740 172464175 601087840 254216190 801771309 340120551 945429392 146013581 362905118 252523958 676569886 592451961 593878323 372675204 385533913 923606656 940943778 416283628 653408098 878369239 998970775 468911511 626959652 967649068 972210869 955144473 986113025 322031549 737636159 617427500 665952965 790489820 837099649 2679692 914676319 558494747 783002422 407113018 878293324 183696645 281022118 364326545 840492972 5922256 735297590 240929305 902878798 531311818 678007963 740507503 905776660 713477054 792082221 617377453 893802876 216257283 578150642 693591598 967034786 357885840 542010291 52760422 300436998 209205820 253042024 22593850 699370981 496192564 521412168 530726041 595915684 307321691 936384186 827119081 888200804 216588218 959440410 257141134 567076126 842876015 924747046 994607379 995842985 952093667 963725665 681205415 869796617 374607586 656116515 404098510 807417369 204863060 254840892 824889402 982541484 459124303 575333557 196752152 674430196 158151054 480746028 3432981 563704850 346789486 457381263 975594084 992863144 569096715 885667075 823430063 841903806 341872855 883586296 328965185 423992949 122921751 444850219 309539096 725397067 305086240 395404388 131148933 282486700 63159200 373498918 695845951 976432986 39032297 797352717 241757824 559784236 385915138 533809288 37266131 943477406 731530347 797746919 973436380 976541567 565236475 847945261 818736395 966766038 735235463 957151920 518921035 706749070 338495677 909848952 471782329 929775031 138809998 756307168 309449599 693031288 821484662 985763198 494036638 883016437 437853762 624974337 138693374 636063302 311859355 759878928 521445089 892376015 342033998 744098831 468059471 493485778 816230918 890451349 186414795 827710592 227971350 583029587 157699029 878634352 870626730 991465584 690017458 733475291 442825831 932587178 41877976 447981863 473988845 544373488 545047609 894425246 494817350 957494885 822006512 842715629 69834153 683297396 571756104 635023459 815463833 849922102 706578978 907920924 242584683 736026850 786711968 838502322 612401621 791969396 966848508 970450302 971779579 983920111 532588553 683269875 872232995 911245382 631820874 646129254 524799887 887659423 960442271 985920259 921469156 977460545 859365213 994331548 797490490 813852103 739274838 915973611 437610735 890233927 346001029 970198154 297719398 558549662 287694048 884353685 171745108 649321756 422678366 644385574 201356990 766023135 839119215 882842001 894199507 952053381 532782471 967399391 763581409 846165431 341946736 981162788 523202966 993318143 62736025 95171875 908900194 947328882 302487529 312269075 457983519 485313123 458106163 750151151 846278558 945863844 865393246 925762202 850504323 972825360 277640953 351534469 186913654 710752663 583744866 631712352 338756084 802686928 382061783 828007623 710002797 991622634 906080369 983100014 579490556 642681065 205035968 778616390 708994185 860148754 184295882 600400049 761229726 802287012 217417686 771542926 388740393 480286210 310236277 651745021 259375688 961594439 29219350 198108011 192549845 845914138 533064816 944276126 971741606 998983016 716092979 790709276 754894077 850317144 917996241 928449288 88297732 775720149 859356985 866295616 208012727 690176747 360572320 604572600 720634702 816456964 183378609 263501696 307637986 341315177 914882373 989822170 901947937 924972552 430065892 742811179 214261519 361550902 961502755 962157244 983706652 995604703 646229976 918073473 453392149 552376930 861103449 920575119 272136758 921068273 474974537 544042562 887312837 912922344 974769748 989563061 502433367 992529356 892214818 917982804 29963367 785240132 492809180 967251373 596665678 988144985 649975931 894760404 112114937 897161249 937219174 992092621 898514837 965653482 28076856 74343654 149241234 481111608 919800453 925097067 342241405 858509850 641410829 812560690 905338919 906104184 445604057 489028038 401450411 761685437 723614053 841650342 650372426 901818350 744824002 929683599 369951052 927791615 171172864 871755338 582818761 990703708 485179916 964217010 802125242 848656244 44295472 827770392 901928170 918927792 67937646 270880598 798765135 921888089 169750436 582205343 749949320 822612840 444251230 880988931 994796238 999514435 405882988 692469840 519883659 936174732 156300757 298586159 437369557 625125471 811828263 947592448 417716850 567232368 265278662 595691915 277382274 605596433 138156576 355101328 402660367 479235654 144348812 156299410 298390970 935819166 70978271 900552168 286218435 303226640 609139453 646369598 276589846 550497393 813140970 991350945 467878607 920225385 200191138 884023045 816925612 988131683 316269979 409865954 84249802 622466185 438252711 474698633 909826743 962023977 988253424 996075296 425820380 899105123 794935580 803184225 626603046 878581724 291131694 358159155 738755768 819512140 880748743 898939577 787280105 811233574 586973240 931443914 446867384 935733560 628962919 758203790 141497284 157405411 598174474 617420825 363983684 805555983 118798353 424311391 164666004 581161991 447663353 698510387 676872526 713142757 405423131 827571095 301012929 316015399 314848080 604826274 724500082 874776807 721552112 840854905 691150836 912460583 265801475 630027630 267194926 774050630 268452920 855115674 37848937 412851560 990201221 994019225 216708884 701290871 754181884 864601598 155452327 927551123 920015782 943635241 335653814 810348319 542854820 872916439 156155951 388801421 388610864 831412361 354613968 633700720 710949277 972025301 101172469 500081039 886314833 892412562 648722646 997935553 909479680 929168979 103926869 340626165 643349532 961864869 500317185 936720650 804249621 866525979 747636561 825279758 645023169 689392766 18653308 335712370 785423084 838962620 147426310 887646123 987983750 996604185 861774977 961786608 41380557 276839580 603440926 611142728 229618215 878022580 915437030 968442420 488651971 694067971 603440583 627285321 520302155 685255836 65979806 676709845 331162190 451763169 382342758 696479742 996393762 997295056 220723973 660052516 192079928 870651243 471674789 958725167 645364233 703390370 347029474 852045113 514348903 530609263 696431389 878678305 636588547 807738514 543803562 921342970 138032451 367390010 492234387 844232047 278046924 311194125 819971753 861911571 989938589 990306484 881269639 974394290 577640662 730091517 280645108 942120906 547677715 657520752 552937809 755741117 397365040 788398897 858808601 946280616 980401489 999785004 53938998 860648235 897434246 948503045 185541086 574725847 95984112 376661303 320742786 548297979 701735939 873324944 976911262 990357981 600547459 649383038 607922687 966485024 272295670 691136146 521483160 876499199 451875686 896591180 565648470 994599723 441068499 970342400 355334607 645587812 76373280 371051437 130342890 748971482 127524430 782789143 253921823 409567166 965970607 994744955 866291667 941444103 574341135 599266734 114958898 412451869 16044970 943780721 159447395 665584126 844802794 861281516 875292842 953739038 686897133 733462411 551445360 858557984 219075531 444597202 729519285 773893297 569640820 995907159 220989972 347721190 377840198 507834575 500721285 900770525 919832464 946198215 746090058 824947252 716738126 772865978 68056110 461291689 442970674 984586933 17445023 688479342 145550683 723726988 98264920 161745325 918836369 968900438 514089122 798037137 580814890 951982976 941814559 966086378 328582284 462537954 934565006 986012859 658926576 955830653 821730674 851009770 151496002 874113936 852315762 889544165 643337061 751822472 926277105 930181778 449022958 643499417 734483602 875389984 929851250 936946674 337118009 668209834 340927416 687471671 118048887 369483701 515489996 936101206 755960378 816313090 135005285 431636889 736838616 935238002 75328894 294420667 64603301 178026120 96131047 336408135 369100115 629538191 404414031 618897699 661648966 784774092 549882271 665045291 3776678 991062622 275531221 650554287 971279017 991031231 443600357 495528625 696515353 733822520 300691146 578088694 65754918 298663131 350786944 447965445 409575930 734576442 975227940 985398695 879967892 884217300 399559512 800729861 431616280 793690773 458730560 867572100 16679293 268282674 229937314 954698018 490071440 978039760 818646451 826617089 982768104 996885686 349604297 419486793 602284625 938633988 681554525 791988830 774806923 875513625 600207031 925547106 595204564 671203251 613410683 930773945 321458372 519259191 447474660 932899382 95459681 442431927 599076977 916443164 330879041 977377481 555218266 765185837 399995761 764654861 721815256 873733944 81742904 782282819 544577483 662243117 643646404 973231878 56344428 598019378 376147190 929689967 519956310 934519044 609707407 888059032 659427525 799820757 682061214 935195660 520044565 789085438 975434623 985425725 469877029 564108653 617508912 799605719 573081078 647099424 478435173 965779006 2523999 167658176 630876840 900098098 890917359 897276366 494391768 812953465 566091683 921859759 242511784 840766979 253263654 613401633 679533577 706265277 702509085 761881288 746346040 888667780 764712223 961086041 588710485 840946420 955458548 995407885 616298549 876924073 964863855 973823793 159011 850438530 930664412 942288222 505085766 749773017 497144094 512156225 213185045 484663596 129152969 268844144 280279893 873050030 909232954 913047095 249353951 583110634 828197891 874107073 525375190 604924276 322173665 699728253 891006059 953975554 64365670 509488165 429239097 562570849 568944814 880018157 543416156 943779044 909659789 914978728 674020480 804612676 314185852 799678805 341280797 381779228 574213377 757353061 114220424 598755369 746071182 867589678 589000632 844290018 401287460 532466783 221049668 786858142 864898853 973851750 972634044 974572350 277164773 506121831 26113715 797181203 190110505 247125215 615199765 619480307 419518510 580623155 289656438 337008623 192879311 289273789 222520688 673884774 141011155 701010719 644630193 692163575 918751224 961585949 519294705 934607674 668009051 735398877 200890468 291045461 335791574 652325508 955867228 984615250 625759513 643648444 716734544 932029152 478551082 778057787 123171848 626132126 580266313 888723518 168526196 445295861 539922970 586553796 426960122 511300437 501874076 530467619 881799609 978930775 136732555 878321856 801100069 902922782 52239252 139055715 569865014 779780663 55595923 195077841 270109854 841073299 502025987 536028954 585706643 680265768 707252491 846556836 276567737 291848149 984284521 993151362 176343508 284459832 92673602 357279032 350193478 850768724 198573545 699364912 570141779 731968851 422797129 980328682 848679241 869784010 301702673 880256198 335654131 490066727 139141194 353261631 856722485 998781130 456055696 907699761 277022467 445477977 869279492 936780803 771329951 876616657 971925292 991506334 747046077 999217508 968826282 971267731 264046416 278091429 988443494 996509865 348150697 488238225 916698056 979440731 800702286 870944163 64452660 576848183 685162747 946348346 457114339 690269098 240975033 553952958 911957900 926505587 660805922 927822279 633739343 968739417 362421844 603073327 642995707 999534919 198882924 362407815 276623991 804636892 787411357 951050927 163424474 620076812 778864122 883521003 468011943 857890294 972559065 998894553 961407600 984240979 159156482 484329071 247273290 484528512 647926877 717630118 728653635 863630121 278573493 496109975 505825243 518981951 981376929 990471811 493589914 509846912 698114009 907670501 990242130 996220305 52561826 443130967 300584313 803153268 767050101 815967126 490779856 718915401 163998566 659666230 162655220 516181532 290922207 779919348 484392736 851461339 259073268 523959998 990958940 997876242 72580816 97355925 685643386 822702418 541139772 729744021 655718827 945785494 834804800 869736190 395421576 866175335 915047163 949709444 539352100 806207695 119392398 562925522 691836586 793701017 567508542 676184258 862807399 879987040 260793505 746001541 701996924 869398836 544699905 996825851 696481419 714657353 671924340 705200019 171633110 213046621 718256399 954153652 268075145 884558690 754912112 821005231 478308804 862297237 571659563 990396221 920297649 964858382 357373533 638640522 771186383 830966512 750497912 772299663 580429671 889980430 601146010 784727629 291780616 416786615 391924564 566675488 416569180 451018863 853494798 899874329 234533726 310951852 363325367 661116470 170267241 567813843 32626465 196835789 669897673 784236406 919056879 947612104 865334033 889696881 753465166 753553257 220317837 504565906 817980764 890447442 570186448 881182092 501849570 994032744 157388045 534682220 298649702 951432490 879649994 921023582 658326199 669010127 847753484 988830204 477610876 820928785 318113763 485095711 445865903 677160930 677646171 754073245 157943879 712483937 859137286 992705356 597659149 811832470 754041009 854017253 214515291 726580226 484972036 541946670 699822578 827698281 675625183 999083574 379135956 927140174 318668394 985440674 589423688 948077908 525321583 577894841 656881280 907276916 693278486 972806757 499134370 962321792 310280906 843749565 521888956 935758653 782332776 864176947 716784924 956728541 569882808 853763460 49977400 799319139 688317116 986562734 392910443 954422583 419284591 529565890 656138253 753492360 477186397 725951562 104201709 987406035 381516627 868133431 399585272 599081943 518042830 621329471 509252691 518630197 887693793 896466302 621186058 998051348 992396997 998268513 333292234 395636766 723098420 984158169 691719895 750716408 866209579 887867126 307173536 892043119 629496004 856191159 305200036 654419703 956270830 956496530 757491714 777778324 555863064 672204155 894686175 941797337 186605503 682828595 871328957 891521559 492129170 852204480 108719348 952328630 231977527 340969586 127407123 928073292 663421914 904268727 404364358 424878446 401002874 990919133 841218481 927844290 729687558 753135298 136297220 651245741 376811936 669081486 586485490 942246986 536380758 921168803 65236851 218812479 148414639 788921488 790133201 992850493 519325607 671880606 802959328 856387943 373104726 534076778 258324507 405597237 304366864 335131982 870474948 943339920 733810973 851085333 720922139 749034343 36215601 389070589 671833823 881964350 515155522 856436303 423666822 909059153 218982160 981775695 734435287 758180054 50955148 212189905 554549188 605381220 349124497 996740636 257630509 900148656 356639856 636830651 261378187 276749715 200343057 708015607 664453493 934987653 796516180 923931714 267217619 997341122 929305861 940583442 249356711 388447028 15002879 819685402 510241196 841149763 629374038 704870731 782592627 881345627 452022770 929752194 701405080 740862317 805068104 951979118 964411299 969786140 502863119 860079462 550467129 735752429 54460446 92582280 941231672 976128262 895879161 902576627 47136922 236901863 674829538 926489852 812805112 958899455 794110836 930180736 65971067 771528748 649322152 786633891 953296639 986844324 95437464 603881460 688699320 778551731 79156590 235181026 311383272 465778176 937408683 974996105 696078021 959848905 876066091 959047746 483644458 571297998 381707193 386181317 290487841 803614959 517058171 615566743 428702150 725487738 342614592 513745640 312027971 960276006 934478889 994733318 641902607 686554793 114285159 488182504 275084345 872424983 725601677 760624507 385079749 478078803 377779269 547977012 355363548 680548128 120136640 851579828 78615139 611838567 23163063 507439180 569772216 852635147 834597556 987736308 920144306 996948851 94995740 980933035 736323316 939085906 576489926 860574610 646412120 828854145 826127788 883799622 743975479 977196668 22424547 692463140 462659625 690239024 222367679 998020432 49412870 769636323 48927587 398123039 551881249 820100760 277417427 488474064 712355544 804886218 517023536 995974320 28506705 730151360 458344126 615245043 305047496 572390570 847912138 886352411 411920389 496164924 649509965 923541066 507607375 546577928 106282667 835172904 921895123 973132219 207193147 836971671 810404089 963780678 441551204 942570545 761518970 849539853 902190551 995179040 623836150 988151217 489063189 829915315 698941380 765750822 696471360 946046120 540391845 792120283 138770570 815675511 343760161 393527549 268677801 321209445 555489755 807310624 309705358 741912279 685837557 826982074 487261818 821835414 204169384 269836538 82193933 666142839 851709353 955969426 598382245 955119826 941132649 982046027 685806655 968283670 875566082 956029855 204292442 555150265 123521330 931507538 87124050 986248437 242655469 446953595 270111852 295456681 370982250 704933343 919090653 925442988 203523497 957754488 892951696 991885324 898276753 973481702 991667902 997412883 974646657 994683478 702646801 866071250 460726304 585836961 392556553 664137781 811625566 838106482 868480422 935065341 59821883 908782202 47970599 836694048 941647881 949600514 845833721 956866177 615612216 770218171 116805812 846655063 974466530 995698869 5020922 813277714 880589396 894179583 220872826 361391943 498140611 896465888 387618382 610780247 907508852 962390109 802106619 981438213 638980857 808179021 333001720 953514267 17213290 42200627 886972246 951643763 247923960 670824738 968354712 988025371 294543599 897267184 858204513 939968965 595662692 613207875 236557912 352675279 794488454 900107423 265622754 685549394 264353752 279334776 490560461 593609498 901642700 998142651 113464211 201770854 295027328 586437063 533997324 938713134 282008911 684629513 952015234 972091683 530786550 958974687 733129360 906382349 639654989 822269896 526754982 651324690 987975267 992756511 822971656 874706516 911498830 972379009 161504953 227322305 882116765 926358015 412276784 611846857 2931259 169902230 12662427 856701666 124848308 158826473 899655345 997706507 349606904 984435731 896686754 929669533 41349657 777599243 305815385 758083095 177608242 450767855 951020274 973239587 613248777 689387238 474140251 768667832 709656121 870958034 492727398 857822131 130044774 249786504 58858385 588438430 939386725 949734599 87243499 459977511 242812214 965496650 806254189 892567162 76263726 604840757 952153466 962969986 894513438 995878119 234328792 748288086 620234654 888298806 890410498 957719615 860300231 930290485 277757127 438859372 497012648 618120262 133359717 547558166 52560876 61189461 733171929 902848521 48937944 671343503 596942443 845038734 585588775 699198804 273816441 774240453 125864984 583876081 115733153 562940619 212156418 343507381 835253546 874330142 996303025 998239239 873470033 974336883 520192465 577357166 356954506 388277710 528076709 551371590 929015996 997518914 368620725 679594025 470003467 745499477 693537271 969684549 21418884 39019375 926632325 956340166 494860598 787249889 900129010 981674331 743394068 791653279 122355810 459979400 468016517 510173860 162613107 353772334 306277496 548851163 220150668 592263990 801678253 862949661 972925269 998607882 957957696 995510164 662530366 814887154 421604772 652644922 609276809 830440068 719679717 994438967 375127709 760972763 681287397 990319989 938748444 954841881 678184203 842609298 671512748 895670277 134704344 732902304 503477772 702863807 897617602 973068492 3032253 613282009 587093925 807371093 662075932 837192755 621633204 922234886 49126662 751672579 517980579 731701769 391531136 756241405 933263196 974617680 443126676 714326505 649539187 854532200 455534252 648052237 561400129 980603536 351219509 678293324 20903176 202277691 603410200 645797784 159122541 259437349 967354765 994163445 123099278 728748242 88436782 764082237 46438720 220898778 398791224 815640821 968655960 971574813 831360907 936524404 2750565 631517860 882894118 989072505 465956368 914814289 537411269 923300992 970538784 979393796 808360937 814945128 20963931 730896611 126828761 881645996 258711425 529195671 616305610 826891441 666709094 847179521 817358773 840509648 574386074 702649278 974952366 975321013 909655593 916076058 684462415 827532849 390155235 860097490 77974366 432104263 580279916 894862436 183148250 782789429 452297442 874180706 149700794 166026683 6349076 519291268 401204226 783443819 729109948 950254364 451637376 574741847 600833379 959972288 666351452 741219878 32986259 355303438 630638344 981547309 249560970 613804228 535700971 771301067 600618520 712928747 446593644 719592529 490717380 779830713 339668872 441652128 217934272 891519785 953505001 978957682 49978755 226563668 806310996 963044536 1840061 927811990 777493036 797646598 363507878 649899061 848401121 957135290 839415587 949288020 836702037 940013302 913657687 945056550 56781698 578670446 202675967 692990836 970169041 976968886 992118569 993328630 477569470 702441092 29642251 862472652 219129750 524871561 340734330 949454763 981394483 992730643 287141784 735861755 113873408 309303075 592863429 868489885 991365694 993261759 456229589 736328448 337558490 898756261 838950307 952878237 289707085 522002778 616388725 809000929 488435586 761400988 469575962 630697424 563158915 865949816 624132300 760829734 939811756 969572396 193538455 647334068 289325970 644898647 788647208 886755476 145574549 996295626 821727357 870646404 608408097 959634285 64293754 611961428 416262776 844388299 223008814 335530527 980276116 985748767 604919448 936674707 145453074 552347138 680388953 978722385 763487552 899438332 448375370 795658037 74865288 824599756 358069384 685547480 464862963 747499016 586306138 928631491 840727936 856919715 884071227 967736535 501897885 996418823 924819326 964398730 826415145 979566505 713865020 855538782 636578090 911729507 259235986 863984409 492006628 604006657 109683872 688261770 349632090 809343938 879707595 909490992 795362106 960912588 677546426 989573707 51547715 415457115 603245719 828790808 377782245 700566719 472280121 740794169 102089792 733361500 273833275 321238304 798000272 873243301 669633222 992400753 810569471 928023202 670105470 983222907 432916671 792225123 308578915 654433336 982647391 993172366 864928296 921342645 230015978 555601757 914573719 945716664 779665964 928572468 222553788 768493183 680382763 956567230 914844522 968095638 957748567 977214820 683673071 870001453 962221876 967839135 392895805 794209913 81106870 595004777 881977965 972274380 248264044 702305011 942496130 944591171 322457144 923623755 132067125 945293701 573028491 958828002 688552625 800012146 267970746 832197971 529117909 558165698 877521434 981823329 95775569 891250022 958993767 959620933 298204330 767984939 348536217 727843237 769029477 853691010 519909577 984253228 472792785 813919006 559753503 904093431 888356059 967752683 202347937 647249828 776195644 909755135 187172903 328077396 528214309 636719155 247364134 274430163 278054420 842257939 170285248 530809948 713410325 935907198 321453607 960367508 795360388 805635195 685741028 799070029 891143541 953763564 531573673 560484699 474532877 916508795 237208643 857723945 40181772 262078327 239894809 861018950 278985475 483441108 419689936 472694809 316647154 557971350 141913540 786980120 566979264 956599411 287401078 943843073 565901562 744571998 17874441 956762540 465467931 571724473 407396047 692412320 23267990 276672198 190240414 329029864 291453188 921999516 349849307 752805951 237075010 294037985 529602027 907987814 222106713 695883774 824893801 998383307 474762856 877328327 600352125 747859760 324758075 600456804 576018316 707088449 11627766 750680887 476338061 778287272 791450636 998920183 261398486 991255516 31778821 914973181 278917712 899704710 735389343 841485375 475078333 693728827 719851490 907058033 968032891 976836700 683950111 738910305 900415073 922853524 724454619 951805584 451260553 959568806 295029090 665114974 107286690 483150395 433976777 898798165 677457589 842582142 158314071 871786935 427285483 649154741 31470586 652722380 384999484 551603171 440367680 595931152 766606454 843589381 503890213 666461781 648770326 991963672 402002393 914918352 235941931 372183704 536584705 850176384 641964052 980104412 545502744 665230010 855056857 935870146 128589886 897771586 792698143 795177835 912289433 972792679 530394186 914222004 842297280 926245259 298815563 919795845 304348246 516685789 170753111 899422741 939743420 951062071 625540536 823857041 46361865 310828981 545644114 693204637 324848234 332741914 768333720 963281971 786177698 871413319 628384843 929466229 654266481 845704294 880011922 885939039 948037694 956414883 183126076 201312774 963236224 969154524 57165432 632285321 236143383 389420559 679723341 827284703 57827306 121576094 952461162 986119068 322322575 732029177 158153928 542622598 119262005 186156263 610947953 863046258 218234944 387673030 520015975 599851621 16992953 51685398 666517638 674308837 860881891 919088732 34574890 326281365 883939705 888136310 723485638 999720000 113258213 481753521 583653316 717216246 532731345 934886180 549594034 556310723 676432274 782782691 448582148 773411885 723355976 745881351 479149347 736770451 278953263 809893244 919943473 996040517 479182915 662318126 835998206 939469969 210512282 588062358 667642272 711837697 812348660 991395747 393833785 535892403 856562201 891766842 984717190 993657975 620562958 846998198 918320787 991710483 834874443 990859483 647969823 976812822 595681908 939461087 979419078 980197264 133651332 983793193 189867223 792072346 750113067 957229202 6635316 57718427 377022547 915266219 521449162 617896299 704647463 928978613 492737547 842585693 764947329 868082893 671302427 846840088 291525633 528488206 44524926 879051947 99910289 846571605 674399063 751317739 306805806 876224021 811603574 991673473 822728819 923598506 82600611 949782975 900808206 981181565 654077849 783211783 273966422 862257733 168358483 908639192 610325640 717921835 565026663 587935916 607989062 996639543 747601335 932209497 155894356 355942173 210726903 785834550 440657163 992413922 713710207 759154284 133676245 452004571 513558488 779232657 658127619 816826399 111638558 180006274 171718187 930841756 888247428 917085023 481342918 781282585 342220974 728741223 957446175 969385564 932458628 995201549 894358022 938427737 120885282 146635957 418531703 536064821 123139822 472341073 338835561 467487735 462848292 869010506 551511770 980949288 476557909 994309873 142692826 861375134 362375552 506815290 659197126 705155136 476839845 626042671 298588844 301405765 152437896 268125659 743303627 804396555 389813429 982519166 182908931 927289819 196437608 546845881 329582620 698750908 749222089 987118664 998908661 999672574 411329212 799319291 466749929 944590640 358398624 675194815 558803303 739933892 564437114 666286728 361967621 589859952 974550460 997070169 44026807 791666772 369337388 807921886 71745090 615173306 276714589 800299711 575850367 866622018 605997000 987914321 574057941 700185089 981586672 985492206 209167919 684709112 273972435 719987218 783100476 852286180 400579570 528138508 425406407 877453490 753996490 946154008 641044449 695900612 252500177 376825488 431228243 736745334 14467876 817619605 184498811 778718006 495664121 924754522 875749792 949153474 983095064 992337067 22330991 704725251 876466589 996340663 412691703 798167160 943292316 966347703 496628901 798645454 688881035 909718160 329625791 946876733 619870768 926110696 439040664 986341396 466366327 534652850 791733494 817150923 261041400 304396120 211599100 589249804 49324128 490064313 750789803 974346146 248822202 450784365 567046712 815638840 563840333 702363494 233592232 812072035 900821820 940219037 282184209 988533754 155847477 971905773 116110602 839344054 387016230 590734022 115602934 130695403 579473746 680242665 788116905 815791994 118609276 294727950 905041365 994956169 860288596 963664051 742042473 899680300 996653056 999791606 524190982 754337878 742232901 829749136 48183633 866704709 269150293 810062335 382614107 598244572 299005068 549476637 454358463 772531243 653394792 714005100 624474868 636030994 14233931 512322242 559164381 951930759 686735958 765578739 157007527 816724846 659961271 972523228 611820454 946043905 48496273 432339133 681158585 702902432 977637145 993575753 406822485 427149676 787214403 866577365 627461183 665193228 373816251 666466565 448663605 552871555 149884065 311030607 617602370 968827097 642948376 884541064 57863926 128707171 95649689 833374852 361257896 927080878 950511021 961270278 396454401 621315987 27091361 262870539 684341297 775213920 99808513 835796749 303813086 475347428 803117390 939827268 59319656 92156762 747062567 843897037 143774578 831393169 500896756 502458893 892503207 920444420 721044037 731646953 803294233 896648063 373604819 579560438 511010731 971822871 382928756 476447365 270338452 515207573 108907452 481938903 495416608 652466438 654436981 751688843 147621897 632318723 285224201 517591894 165442992 181256538 716476382 917510972 537572137 992200319 36317281 690259138 212595164 891185810 854125377 980998761 825540071 903490425 744378736 852418058 932758555 948746838 235347572 280488041 81554541 234805302 788024107 791415214 406205690 875317608 190987950 220438233 445437530 466595742 839601276 853276889 214214790 887154340 450056404 713315731 634759332 707442101 189995296 490540184 511890831 692155078 684465660 826518424 221675830 519743099 554566738 854090629 281619840 512818947 729841573 970052809 567518189 907749033 693416786 906820394 558100548 690674586 188129798 625880975 550382666 810345284 839773919 940283635 915321371 921694702 895427487 916934581 438676414 654234803 17869820 828694021 883474237 941084236 923043423 977543924 765820957 886540152 540882782 553102368 119324569 384978207 647035628 858126196 874860997 894785398 871032267 997732936 299958639 373446802 678641525 986236505 580513868 887740802 261595108 713059312 961958385 966740166 528281559 529601511 879113486 959105206 795987923 952429173 840445529 942017671 352078703 872676660 102143239 504411163 855111179 930286283 40958886 340793914 500165097 811680315 948685209 983831858 503654595 612292676 484968925 932808311 532640759 624178698 882002366 962862365 947405856 986861373 704662604 807294720 719680650 923797307 661505232 825634733 469783313 993401613 512733466 939500481 702654229 942740888 296559285 807601859 824849872 825013095 247596954 610009751 681959754 787698494 876516327 949945938 802393710 874285097 160953308 491487689 382442374 504160520 252434634 393339471 564156935 991859249 755017735 887362064 307244935 535257869 360046281 633021246 457553749 881128559 743531109 916468766 647266304 922352612 83762959 961223152 890655775 913285179 311568516 343278342 459643209 591687307 870040048 943251619 728685702 907760598 340485687 891514706 910458612 940730489 245645740 528085740 677679546 677741936 461252186 794459255 747405659 843677652 192294820 772802427 14465828 602120239 768351793 873881228 483038104 680232897 569810796 743548328 702384078 785619651 911526459 911536093 123952018 350369768 578739698 860637390 284273296 919056000 848358148 946155058 134494804 855675108 226185752 958605110 346303247 380226360 793406421 958042362 693045216 921871349 332362065 811355908 938892456 954293052 91096400 700078147 329775071 604481229 617378042 633856314 531505860 785635166 500351331 779248105 650707649 938482951 483710725 696589842 875106544 915953292 469175107 812605362 979615829 985801353 895786176 997651802 701761119 991720057 370378611 833121385 96599852 808986444 991730193 993003773 615094588 758613341 749593357 998620658 129574968 682167044 279597492 896542663 710586311 779543888 779471935 933389375 137340189 880170376 844005857 992316012 853583924 963232811 317985630 919924580 75770300 814232639 91965044 842502692 494416420 650491384 753162047 826523019 804034387 816507427 811524006 857980203 232595967 535416248 942133418 968007264 441919643 509187337 53244606 419662430 562002335 728176902 17418376 819679486 202869151 604302297 355435839 560680770 5254463 623600471 914530966 931401299 880822899 947002975 379518345 779001537 261292501 869598476 79994155 841551108 346662771 841740455 373986460 881814792 323873615 945787424 590425091 707370469 483271384 889148391 638689438 863538697 946053835 990010806 726148542 791529852 548077535 856273877 195582292 238841706 829301025 944290737 545234610 855491795 243169965 372051370 443682208 445040500 503738851 526124927 293374245 758060654 757949542 943974522 547220512 741944004 122376660 510485900 844880390 965375920 18799517 720869515 839145185 968845144 181690492 977061030 95282043 562698187 5470836 320593929 611383097 882300356 50250617 979216945 724226772 882524563 748887480 758961688 36028133 725327350 383153151 580332335 474029880 693589742 711038333 781611866 983368305 998160420 182451067 710226607 991734362 992727903 181301073 239301305 642215051 998278092 25341416 263534111 765997799 941850913 199446837 260704248 73623300 782966478 12658929 519515019 793618502 808585362 10778712 452096090 327014920 541127242 434397613 811686651 782399671 932357360 113396175 509386455 229251236 740262896 206445585 885196805 698775355 901748945 794735080 915363128 815265829 919338161 278516565 977218060 559348441 771924941 102415163 250546774 284950893 895056861 641735361 708993710 697544899 944018956 834771699 852178690 73339844 834914153 338473047 816427673 839341007 877813347 323913508 866530604 109913562 691501021 342949022 563061018 798934546 928791134 310710273 794206321 704397195 785957561 158593653 236188928 383742035 761424116 450544193 536255715 309384000 383791833 663917183 945702426 323479367 489741698 443031537 682495056 785275919 792264377 829305774 985881882 189049477 695332419 775078873 844361416 486161017 694702345 100301978 311560571 480996099 789404001 197614948 548409217 835272462 936249115 129339559 550188814 902761011 908356280 901033061 986745783 218167419 460179753 565290786 776490299 647984529 938271818 395452204 456521959 329649300 655687548 397465256 615770828 473633655 966161366 831853892 960024379 882734887 974353364 393807892 979773433 525241548 861821904 207830870 465985012 718862786 975255222 24893819 226576229 380117541 510713604 230736914 395532165 535713419 917810077 809088104 888550181 791298047 939741175 99261158 124076282 183530300 745211702 487154797 627026033 137839822 334066522 119746792 734904023 279917183 771514459 542131541 851943908 24722359 214265237 940635945 978739549 549346452 697091704 481113102 607518515 169542384 467063222 243614103 360794388 874901141 896262627 215083920 579313236 557150739 648319612 578998725 985113097 867782624 895053955 972997565 999307945 380418105 752034350 978554671 998962630 145854997 982897190 570243221 611192769 691222402 852421681 55671653 646298336 945452146 968021282 348194514 726745734 300151679 807915931 608231858 665073240 795613861 965559425 598039281 625688648 773612918 795904592 880349484 916189283 360493902 449913511 747180564 976957295 863532621 895864537 525698682 592894038 930323019 974261362 51573396 299526242 909655225 971054017 406911286 966977860 589875184 879724724 134970345 208571694 580374068 877395676 580271122 827792484 421697444 934720120 815051738 816505184 227069055 266801403 313019886 841897317 138315453 765825854 651925574 737445619 314851270 376486066 862363194 990844042 833397771 932034938 663060298 943271331 951715638 966190126 794614569 934959800 830653653 881429396 198836907 810503271 516942148 885625166 810533863 980231240 375403128 554506474 869479447 882064568 462247825 642422952 422676448 521693417 119546077 275480639 744680998 842008254 510729885 985420008 695567907 827776618 53250732 172535666 541870926 873823572 541316075 738199258 172810386 630934118 696808396 975632741 602104356 956020604 4277667 538594227 469738753 785866380 112149381 193719956 177594633 752061353 401693282 799846887 665678523 919475676 417264679 998181247 203439602 211783049 480219023 548895695 264463227 922733565 255416117 683240886 584221871 940094024 160797152 217412107 797053225 889867578 980440108 980532934 482424302 588544697 650026941 833232402 432098665 568873676 517374011 701400061 694751438 782392293 416102038 782179335 280104610 389290238 678027132 940205102 444688700 511990947 383293180 779966438 258933948 781639273 109670055 691842364 271928867 416412673 859459919 954498282 705654144 900066797 20210263 778490984 487075827 982733752 401713378 825318434 42278742 961615203 737669712 969664163 184722212 817395543 195740958 602863329 408273831 943676413 551545088 989817924 349411026 927174418 298162750 371779135 291940532 516301486 790888139 928296912 912046287 979626794 215933279 689278800 116240597 776381010 18307782 471845850 545772151 574620146 998940209 999007332 816586286 861077720 431560353 897094866 205624011 332926331 674147 766301598 503833665 870927134 121464994 635455928 487150576 849396832 32899419 608898302 718890335 990649226 503924415 662003906 683820384 782251483 485912062 717844546 677452558 685470543 755205559 780123458 132075108 529670791 197145117 883018047 853804569 967049175 379093248 744043044 812868955 875003225 143871009 502104708 921516971 978891501 103515665 492499316 195272915 835776898 706155451 747088785 44977902 428210058 722370592 793143536 631984422 891158926 260241120 317524846 561292640 750582594 214504416 247043717 298188699 926630457 866014985 903913033 191573637 747304373 837755615 996431511 883562675 968536207 197371314 955154013 440507370 753993128 938013405 938994484 734729786 775496746 265022001 275794416 365393198 955992493 762020738 901828328 379446844 490558688 910349498 956760248 638568974 816370853 158963071 231452870 391250184 515578519 22944566 165270677 377197373 878920139 378664839 734600701 44368970 98454578 898299953 934174569 232675214 586764892 777294588 977027255 144844934 264608669 718320225 978109557 884183541 887923943 897327729 980206176 84814688 819552983 291501683 630844420 614029042 750823307 796166475 822093672 543909608 928029809 264365149 778117982 456472707 901688641 733058262 806510995 440798170 847105723 453518878 600917623 44413047 511442486 800415853 941222399 318007769 903430597 867669102 970701280 890034797 994101913 238743037 886284109 809735621 968811294 719443679 776711221 662487247 858826940 540403685 933866346 833874958 989529749 519781726 950924161 267471942 550147303 905432596 993319387 978317729 984461277 783441894 824786101 164401068 759570719 247804383 291095571 434216158 888420367 387970264 823779905 629811070 964790730 857390025 985695972 689498806 942552970 221531496 478986339 496998876 531075367 34881301 815763100 975066414 995480875 875001136 888192281 624824040 856827876 205812556 334982525 441228338 463966716 803057172 931551228 766546483 903093427 748426598 913223510 463021468 693970002 57938777 103966044 595913906 734131413 944860820 957531793 596912706 825425534 338949180 943078945 519265169 763513771 895544235 910734913 32996337 838933014 779248596 995100534 727016833 786895612 358312661 540998543 400792511 828300252 887605622 915454555 199700708 731630573 473288254 822360418 604465817 751988348 831459502 943846985 61566299 248780108 984187454 997706302 645733799 804529838 449330507 956834713 899710560 915297355 389041525 559106277 596902617 697415760 431771864 840651286 958183773 966171284 394331381 410856149 527968957 844539612 223728601 987986981 53009810 595259446 424702693 735804393 228292925 838344167 4956900 937749377 144085809 981579634 111534589 229338361 985425132 990753908 854018667 899088924 307602916 779413363 130373321 621767698 477216185 567133309 590531611 804830297 58714499 589187615 745307404 856892093 673998162 800566632 599264774 934928062 686554301 708928796 962832308 990349373 604450538 683173845 55391675 181067568 626678694 979055540 923149859 966928609 729257989 942515505 540352030 649245447 73047425 901126287 447833988 999057022 622301949 792256130 349150043 434327077 518300835 834194764 360927563 377026487 734588148 918498575 465032437 637480605 407986343 626368821 121622162 785731607 455973536 995328951 676841907 927148554 411443226 506181519 655482605 918498206 767576298 975730272 476640576 942005747 115781223 560370312 740143788 871589910 990451146 995740381 378477613 683061822 931676843 949624533 282494756 381433642 710282938 873635387 355313247 699266685 942105206 944080503 788355803 969875268 946517949 981461578 798347878 851473392 67761681 681798059 106274939 969684174 390960423 474691690 805177552 883244655 9477794 498871878 543036056 685609854 584584360 964085163 538927755 930599249 799799858 863789949 958824552 999468870 31384477 686768129 964266090 968392652 693520173 946841471 69100009 123339760 277495982 746364044 326525458 628104062 748550481 840464458 857290779 963876801 901253871 993493145 569681862 650081528 62516381 775460217 303876319 782307578 444626558 505176417 880235200 947029880 488899857 534285543 738622141 794213501 215342431 816177494 694524388 961256588 972572661 988692649 947563957 982307429 256621022 929902586 309503064 968507772 934135775 972385027 665862527 850958647 339270307 986997404 892917584 977683167 943550921 986238061 231408829 922195036 30911074 486987704 506880835 871529417 954132813 961875474 270148918 757016949 354999290 751291100 735451655 861093155 710261950 952783843 285622788 679526715 293208256 473368770 719592483 747192163 410950764 603526358 454763190 576856013 284041590 908303915 315816375 680686897 797806511 945983738 681618064 955767884 446820700 878838872 443882108 504484306 242236299 765160433 311994928 455162960 287964785 866363698 741299139 778878053 910847733 980994366 645906407 874368685 401986608 526719962 578337740 624157278 483721603 802873848 602361862 883822249 81715643 910950965 157569146 922991405 248028052 858441576 784474242 792171564 949646212 970703682 677253093 859210329 966807727 972232206 858920692 980488033 313608241 501174298 1348780 746817543 726079056 739294784 451130886 996263182 937074481 984121593 722851716 924358162 183673767 774414742 771147831 946655686 424617851 671907573 161099902 446829570 793527948 832962692 583213912 644143473 31209830 152425582 459497826 611873854 785031128 840995311 991017780 991285243 148257462 956780204 987717424 992493988 775831346 776908140 511818160 736210978 463413463 926008751 971146529 974380654 266132484 815320217 799511210 809113210 844996466 904222925 872729387 946605871 398364378 852544816 206436958 300663453 597084537 729767096 384494568 635921883 625733113 869768325 712933088 965296856 803862100 838976636 191200028 839626194 274513784 463779509 433976667 867788983 409547574 764335679 928802280 987265082 76838075 275180959 501940573 971407940 966801288 986238039 961033859 994157866 713961210 936773774 667562768 966462429 537931042 627725898 433747729 604340821 973264202 989056553 17084204 267217273 862581377 869016045 749481411 773598202 753944443 932781625 539056836 946543352 351251646 413789560 397641079 883079975 829152046 917710377 936407859 974662557 360126246 762396685 404341398 643842877 326828726 753639015 191354680 783411513 603919671 816205802 769464309 981257138 675918245 890502572 650352647 872719426 927187590 996641795 542165814 721368498 693026335 946431627 843389341 939982630 21457631 912801052 975431167 999681432 728525465 889076751 20023745 868755212 408598635 963049143 24100779 935999583 622369940 749768972 253908871 892431494 652806718 864473312 201834219 354824566 468345365 966776378 622879886 714172308 697529988 835254590 856476442 893313505 15425387 222312365 696706879 751894705 953063966 972076562 825326891 954368461 79506464 301505635 255263918 961615251 995178645 997509272 226639692 574176394 45326600 950857183 55082066 206596323 446797798 480417892 383955987 694741033 479367810 985813081 264877709 294992044 316097191 702062846 198168457 716318546 812636998 938941308 443756292 983563147 982592201 989310768 426595648 595709353 641573474 765576316 77690525 349236587 427365578 864036131 480658916 605461543 852268240 887214661 162408279 504401351 275196712 680985825 286863780 455681585 855897694 903374674 527785790 910069481 26086585 804896948 867417888 986035646 218752767 930108755 383835607 683982334 681268908 819901180 773865164 816829208 678334640 973426447 474775945 730619528 462115834 944823172 898695859 942469588 144735602 580788102 800649983 805322319 646531583 751133822 995441006 997689832 865577727 874002245 767041433 858097360 791285175 948313364 26643906 880925059 16187608 528865505 140871118 309097107 46346050 516440885 581645941 723372490 621171502 690831650 531441411 738318025 687980884 735525504 174318482 588446187 256334677 675235391 699268980 762851774 276425391 848872537 237822878 895308662 842222352 857707506 592769853 928402365 127114396 334885941 550058798 984729609 883568783 912271534 222240651 438646616 519565928 659948491 241610940 571118017 253478664 935528020 984172604 992445290 461829612 544499499 973169884 989414366 564466438 854395460 486767935 754741751 64746890 543211590 487103065 507793173 21746813 439229320 11945732 69955058 767444020 805796815 625754607 786458366 186251186 946939244 251018691 892298644 280864761 349079705 240857321 963835419 889173632 944710517 148844871 790919567 488539839 983330459 360730579 788550296 613347682 690107935 695572148 756088952 381828782 397306055 608609116 939593573 499155334 934825682 672050827 934053719 949645926 987274978 357514419 394743345 782018020 927637169 317257414 446561188 95482637 192051085 373424401 503295986 621849553 678568391 80570433 141442842 648811613 986635001 12116677 264913706 300538856 605244649 374092582 452146486 854155570 990797238 903898098 997300831 124924481 906793439 544155723 548379654 171943700 975818123 521616030 917085872 836525273 898377658 757622900 815010947 899279744 963290904 98856907 379977544 100372756 793294172 310265369 494825228 694858008 941965469 781558986 813252386 945105515 969936196 532766545 763122852 429574851 526234523 493320471 713049894 567393603 629059870 465250931 727799114 936012760 977762109 493943316 858420619 548254551 982241013 919861954 944093603 780950071 858029205 101130872 417769316 561358079 748363747 841940741 896287127 674370603 837581953 972249632 985207894 116475797 503829336 642015355 885914588 245767632 927141401 24713166 722780299 43122877 308011775 59739203 930125120 409598208 741250622 900859841 937838659 751780395 759802956 96854716 243411858 743148973 955058539 125476412 237003902 617978180 932824724 615978079 764901180 240897078 280506443 146152408 249561875 836708171 895296155 318588826 413514725 913202133 921701919 84192674 942507230 982226058 987741929 877413240 891486493 995862457 997891377 1490974 615085643 156786827 688328290 363677141 429807999 505338078 842912164 735443967 747450855 957070779 974666714 118607890 891811107 775534318 911261809 786858036 886809323 78478006 122673793 226646698 313863942 809876225 911917094 122555532 530724794 337389996 523519163 674554938 725393930 892786401 972533684 263148363 762184020 460665461 489129366 942087243 942559118 14265388 876230981 878689371 981547526 289723434 997893055 26066320 149321219 368582350 832615122 545230013 815301953 562377055 917600170 183528031 364332495 929950378 944752787 883999926 934953182 765977369 858996696 524572683 584821765 760180764 934397794 721168298 756100932 9261203 582869371 981668827 987990374 118042725 204879936 82140480 314071450 293033006 528715520 455334143 776006922 682173056 961993916 705353667 952548165 532679690 602138078 774736080 908605953 758513872 766701376 189584653 956185568 306589738 570733004 251220048 479922291 316963793 779727842 265066521 375479053 327637908 751702825 692825325 791133838 565287334 873463086 986648544 988434831 185401141 640204637 902427538 915972336 34789046 624341264 329951826 692580763 540912748 656371667 82467119 483834876 368158332 766284323 411061585 559448789 521443180 720192265 215215006 902427357 407449172 869447273 451514417 773625722 580099556 846144175 538355821 699911692 433825807 660638242 714948548 787956160 882621604 924862908 717155924 771452622 327879609 911858010 673688721 752016801 210173620 598674377 252759488 514722438 785245119 860705595 23749811 96202164 144103241 288417982 248156834 263387598 526195363 942288056 202965123 499639117 692790461 797941380 93821614 890191479 988649363 996182808 843370826 882458537 595337317 764115738 981663055 992302222 980570709 984485733 121818026 240830672 387966563 994018907 574884370 595617123 280420727 617854709 846066183 991826860 839961517 996523581 422212110 829908569 956164212 995289180 991562624 997844473 943046481 978464164 553888380 777266840 480363915 892760362 2259773 752398482 575837833 630439790 973668466 991909098 487830871 862771069 742485371 803120816 971765082 990497128 269856912 302544669 318460149 586892582 504911127 751491718 380179141 800307282 546906635 601594898 245188520 579693960 607031460 631763406 519957740 940326343 250648886 356934483 918022989 977729704 311453364 737407386 725705703 785413344 328414242 606357924 638515934 708522317 488397317 721959300 267983200 410470332 699521643 844595239 842305552 908660632 888025078 944297190 480144657 508476033 996646437 998281550 883128781 995263640 316754074 781686835 349624143 550414769 846786759 984758279 695393797 917269028 84995405 627815069 222728619 616622947 164299725 970520259 101235449 719883402 886098092 910343031 657536277 920357566 898496727 919271020 941129773 978458555 969631573 978632488 352272298 527636001 588137686 874103621 462314021 535206279 372818412 487906997 309871259 513402235 561973683 860951388 298614027 570304503 841245901 992582337 357154742 510894133 791562108 805742928 461677554 791557058 871418232 925188461 342006433 557110701 76712396 756314889 870466246 902255187 736179638 884899554 707447294 711392416 911057429 948930560 462518163 939556753 290511364 697645213 87502039 98906355 963909113 979059168 449186691 486309694 434017914 511806323 197199970 220316208 303851971 934793378 981151985 991540263 748714979 787360533 944110360 970025011 580261368 615414435 398760146 424740362 190779340 802004234 706143843 976237423 976103166 981218453 94941796 914791839 782734076 989123273 686651169 970704589 177161139 397736760 454493738 560982758 432342272 753235710 221668960 817620807 649276433 812440947 397358214 843764839 385304067 725610030 989922010 998906354 98073160 782297348 767215637 876214994 890713018 924478453 65046483 999951058 333761329 575460564 465552274 579050638 130118710 344171858 553444744 830235257 435342004 696776630 405009384 844923622 669046582 717011108 668063039 891588007 292926247 507241806 49709277 793422079 766945055 796256999 836078464 900019128 671537473 701657684 922918445 942079970 693975104 907396609 661416279 850846984 520633936 721680494 204421266 330666620 501177744 525199831 172269466 942938038 730097016 981193288 846028073 885944436 189686171 818154595 242855618 970108039 700462999 931976844 499991019 687172027 801884113 814089364 191971642 523197727 827781952 852545272 50450710 268980893 663290461 878741640 471417583 881970274 521528740 637617585 717807840 974876060 30942736 171080667 778865205 929561898 262948994 347588195 631875053 996147206 502851450 703923574 981628747 985965349 228255485 593650312 64936502 375263135 542351457 653913573 153234157 740443610 252159398 716718835 268899120 683839392 276601271 810960700 435067356 804836868 391894402 915287851 682329440 920391556 780427093 927010240 716428498 917376284 832106439 962448267 386569571 844542192 387795908 796058396 543159314 715317391 784230691 925193748 102392236 509624484 569578576 945039000 658213152 856682300 506526257 702057562 679836567 994951583 280534607 684045044 302468016 899173778 760879867 908324193 307209457 824674532 754342665 765440691 591126963 699633938 804508683 990556652 55660639 250891707 275078736 658591551 694694360 841620911 232940257 745232174 310011051 360865670 910225589 929084774 950689384 964236227 56562642 847915701 221282074 795735540 918251912 941994547 51524209 206161603 971317061 990988051 133532056 865382510 215308158 598053249 516536530 948478523 553008220 591350128 843742019 866195058 387519828 637732167 224866479 712061377 335084713 685904060 499848281 644680199 825325192 872423903 479182542 837486187 134238998 668177849 230538615 805674769 991542997 992457526 457353564 657015860 846741187 956364649 284408852 457941793 783117148 999441084 518799999 967322443 710479861 848975244 5524499 887680893 261029618 828261147 130266759 711541805 550394592 932488380 303741246 556867368 243794496 741205256 4038053 168788567 240751923 468033721 396346476 473733238 680857863 680935812 377771818 509223072 17742443 612811212 815721624 991767308 437797113 863797910 614465482 679408774 610230647 771168607 944694166 984941467 410373945 816360352 614938367 969539194 747785118 899464235 920824007 928469918 427852135 848459263 379827352 868245508 411200411 541992390 587650000 773639814 395414134 629848717 870228726 923168575 403813655 881784682 616421734 690824979 823167588 851465245 503986840 919439148 760001751 876360804 533501824 927037630 374163099 861914145 14618744 721764032 624047581 638300387 210384065 873558577 319543461 998690891 787268752 908811435 632470861 922507572 301275506 921059831 255583205 316012742 68370847 606287763 187225590 574637920 611917922 858019154 801583956 910871215 538365923 698825366 95853634 708601738 961704448 966849630 103357707 448939765 917550402 986072713 256682082 599604389 285330518 391840392 319857115 916201564 893777130 972065602 409282708 514560105 595437918 769028137 508443634 582646525 687906072 851405045 942034236 974009641 835978607 891872033 401518946 701179019 429345150 940657843 563857318 749242439 119614393 981856071 430612335 671699309 39816839 63973616 344721690 392130915 808579819 977831190 44076089 302406949 148969561 788298140 448324635 794189933 311452479 369819652 84338364 324942320 138751649 736122204 115623951 570677903 299512337 679461088 479873228 778339006 558027313 821212210 224450454 672574114 740104649 751597743 311060397 670035324 222143219 914811822 909613697 920208223 726980695 820153363 983876045 996380210 845329618 876222536 694559350 729513518 730992941 777107118 68275105 617953509 837532378 974964399 596923211 932338160 734241249 868778248 809440887 881985919 855646894 948198024 214153380 558425032 10994103 408816973 485886563 582028899 18287155 127833378 305145827 610784322 617741744 647071280 241913903 739097837 297090733 443116016 208495847 458910846 750978636 913500173 886705964 907732351 681674222 758484725 370088349 627714996 785418804 945576043 518722914 818845392 834789251 858097418 461108908 484755044 833088167 896912385 243209724 537281852 20070390 375868386 727120565 847993052 60689084 602643046 348702308 758639580 559844816 641376994 651722776 933080666 474709461 905819640 275592241 579696073 81861953 901864159 347584602 487787963 830383380 871842076 265820506 694370294 709629991 994289830 835818564 975337819 806282011 925054846 607953543 739345387 839423186 939927368 558777714 889357663 545843633 864722953 443433057 978786765 481688011 569013323 116957529 902977428 217867430 855513899 625287571 764738674 720702410 952221699 186612397 720582627 837813222 928793129 617603822 999121047 603303714 636727496 976663567 988699414 763493103 850768576 519663097 789878446 670876999 949441471 740120042 889405519 804783553 954967984 422882815 427901719 442092587 790689514 833067771 864535082 32830176 297871481 653657457 993651714 669500708 867573046 689036291 961310768 540746748 667816378 49167769 567365260 350067926 777713907 543727293 585084319 555892814 681521796 928441952 939646630 112051725 439497486 782448929 868375065 973294653 986466830 440500 916207908 136493111 806118560 660004651 950762417 494181181 633525267 308570076 394092366 588870220 614081618 788545733 986107732 708234575 847937298 148898737 218160930 528503484 924248902 739583473 991903238 443431258 547114347 61304714 598854766 570423731 865742463 18769450 646346895 683837123 778694171 446216262 945978806 550492276 710607752 161333873 404134128 871101648 916560813 26515310 141555060 691110654 957280094 382760151 855695986 154788737 781773546 117302104 759557165 239909090 604473198 332267914 461257346 523660362 698330193 624387555 848938250 198735808 563445125 585323183 895313526 101765423 418202021 940303564 994342750 57602765 562039962 812712761 840287054 931347800 965606696 828763701 991115128 289049104 926025015 449016917 663244449 955115588 999171302 344260643 676879242 143129363 513471956 37708630 513436708 842247272 942346003 627513834 967585995 237947449 588472479 885936889 923902337 478888780 814245980 186710869 971511446 266634623 802089272 965673115 995720912 726715485 861919430 326135232 488482601 278726211 470078981 170500043 491752853 310919154 410978498 605646565 988809534 105456624 304996666 59215558 629778147 317877511 441445385 975707855 996868743 324718354 546611938 699146742 997469007 949930139 988975122 964305417 983403510 692587653 726944034 456838434 952502010 714576215 928426991 158638558 533762389 710210061 821141128 52982381 802451215 135087656 239725859 671313114 978282161 618854380 652728246 810774431 860726910 498298250 509440533 458476487 623030098 842654250 978483631 63017234 710469282 284017979 824663218 646758360 680639129 443464960 739374702 766271709 937886773 750697218 848005640 783894104 890612496 320306085 563439710 404261178 762290121 213874119 282480358 852396979 995873101 897637120 906987971 130250653 143928296 831576846 897776331 528216200 870745461 62757306 744561394 493229249 957647440 120698145 987681377 48467367 103626790 697325166 728420823 520249894 711713019 440009543 836191975 594095339 905523492 187235151 596688373 744426253 750594096 484227930 687062283 525049062 730193306 37177553 266099281 784347002 804307244 799714080 812834260 511726016 655550276 447560525 576183872 116135964 348714502 687569804 968302764 608442571 643789435 182221448 276551222 597310280 774001426 297966067 905692247 293355215 672453782 749119244 996518674 205259937 205893054 287375765 987357726 480130930 968381212 498488801 773816196 744292994 914583538 371841812 477930467 320786766 744871575 955402357 996986142 297535408 856805684 105367970 170647204 578957944 590132883 529995546 941671636 64409838 814399943 668942776 705172048 775113576 870705978 389583988 525144936 827533988 887883560 687668790 912838309 85497451 760944115 780160980 846725894 596906390 875421450 833737351 892243368 764357472 911221349 956545289 957169007 1725840 758258283 157702908 955542120 968276634 990816389 520919974 658206065 67221855 134383724 85500183 339019361 980582191 998576456 166897319 387155666 557408932 628817288 143562272 401835434 220166227 696596673 115587625 643361584 240938911 393148446 579082540 830810590 477137211 677099319 686213753 907273316 890700235 988024889 758943363 877194239 808408767 958010580 148124787 908150979 550605077 707618251 783692071 915104296 526409966 922376656 398607442 564392990 701103723 961464411 379243663 722687976 917312319 959602699 235139057 882202795 512930192 958720750 290060819 468768233 120457326 267143242 726367022 937547938 382891781 685874760 842740053 956657057 829256821 967954303 146600814 984039013 647402824 789552844 210242934 231672512 777527185 984188856 610765552 859832627 508937658 888598962 263226947 973232121 507358360 588360136 741234278 909699308 392860273 730425737 437959908 863934020 705775615 811537874 440333728 583805436 722321452 979844242 242859460 915131204 856701086 973731776 732682490 960687099 926850329 943707696 406066099 945915989 643914138 815484009 147989642 729145453 310315968 673029951 421763045 797126040 746604022 900949404 890849484 992872325 69236852 575499241 432019768 654863088 831613093 872513489 950233058 993861784 876649866 942810492 303769522 832196085 712479695 965048081 838016233 928021785 863021363 984408650 617599674 981595375 277567503 300310959 984255660 997417600 930690019 982311901 682726541 947391143 186268186 868619392 892854846 982130228 288245622 765714932 584779932 668519288 379829036 958157937 502236942 798708011 480687539 898677979 774188665 812431900 30538765 409156825 317804888 915196611 837734876 891230435 540406638 738606772 582477893 694398971 163135143 519725197 632906381 845163051 724700507 997315049 532617054 918462200 722069061 888878660 390553504 736221561 968342738 995167290 842066739 885016377 732067260 956364474 567038828 975352798 211422543 926426400 596811044 999677014 975932538 986203822 166711920 221151952 37159067 974539366 506934536 797932439 608337371 816569898 416580932 417849953 512091670 866415774 763610500 906943782 259196856 715108262 557335121 622406370 806181196 821453888 67210628 433484717 128800833 751823179 286742014 870988763 757951688 877292833 884643612 904641990 295986442 571764302 992886111 999821400 410194598 695590020 277505687 549278663 499635556 503057834 206239054 724108078 926892975 978978299 932695206 966999603 149203036 507188135 737994439 915071391 275388769 506734422 247012038 370461645 867506744 948026056 974924639 981319976 434132782 766948356 652449675 843410503 820423829 950571020 775476001 852955270 839793316 851985773 995827209 996439060 787600052 913379204 168240567 805103857 858990919 911044439 550475602 819217965 631167138 818045700 498183777 935865913 279540820 661933989 46586374 486371349 84940272 505835673 54203698 541864904 634519788 897559475 478934523 798225353 445537198 970699802 412392017 677964035 217811842 614702901 175048469 895090983 472124836 795122131 134114151 868013335 370042425 680495916 155143474 710107464 15313320 570917409 167370890 489361423 379097759 649190498 506013732 769082356 175757903 654372274 241465238 633254135 152578487 925469163 51704387 842575777 243252548 875350328 953584108 980837605 532525939 917573553 914061375 920233993 410503506 727192414 525659224 602797881 183814566 935666749 548066472 741932773 962647795 978357080 215339584 351729265 667242974 967011703 684523045 685991824 334887123 822623727 915197264 981669984 581832212 652958667 512555173 612300571 607931410 740158946 754867159 837851421 741472279 908629443 364956817 706089877 596373458 759498956 808621721 860955637 427602793 887847761 331348068 388797838 613513008 770592880 498722323 585323128 324580385 716620352 908007108 948207530 458956350 829050567 113941368 115687632 722345743 830987073 581134121 706143860 714887759 980261336 843586152 849847008 499289592 830427240 463019196 779257814 90382818 265568528 566827212 852203254 257550650 935158558 658149029 973827688 362833653 532600575 626897361 798814584 208708128 916275567 600745847 673150708 260973649 617200655 115887181 637592050 997525105 999212448 645052790 935171855 76908068 855358343 857406668 914813439 866111796 967638507 601331137 872642678 247783291 651322424 215274970 621543780 138646505 777518044 933334513 978079314 653032333 792403030 23198693 286201748 121582899 571460863 495395794 811294221 900845949 989010357 875693025 897537851 799767054 913295752 613584161 675691039 592800248 735127573 892540192 938232552 982604136 989313126 680036902 908328181 431811610 497607774 564746886 976246157 355586055 639779127 158251122 517999866 838831971 993559270 810922666 958586580 693610232 959367269 112980549 401197857 849530776 958141790 607677231 629096014 211360207 268838376 324713843 835466129 658015791 900330123 850937967 967358673 751862786 881962923 808299949 997167171 250140553 478998205 231417035 798021898 439575350 611284340 35523940 532595267 991872352 994940594 524054501 851219149 618619735 851053052 994184225 999875113 269487298 492605789 21443394 779088230 720669716 841964883 131114844 509494051 515206971 860853733 731191514 944199344 479370693 763881690 431797969 524747581 9952861 489154531 507881818 893443128 451273939 469410923 739952048 877952905 15737158 42376135 698042686 762248067 625784059 895193534 51862519 451529283 581522868 913651727 956966173 965635699 75734118 493530277 20191789 169091124 645919051 743955453 247530042 898286731 372057130 973800487 586625360 875699389 62053927 975195354 659278533 921566720 499027790 566569906 296240002 606317940 728438996 828208629 981713561 987143229 917999236 978390998 515455404 676416624 360678935 867057658 146214837 523362894 628810616 844373605 363837701 683193840 551052666 723926614 804459054 824166663 315816191 745180896 934534044 939290389 674210014 795390216 587882646 861063894 999087709 999313634 454636737 736598561 340156467 911879550 555291511 789698511 613072250 665351110 306983203 538345401 599358816 772406149 63694728 346579474 265952472 616359847 188082624 526026360 131363550 387308071 563017804 614327402 782025544 875087805 993407685 997329646 674331738 921231681 357711746 879421484 464315379 763269327 446708048 926910153 177907094 442311731 586303091 929567908 811804835 835062129 764523379 987737883 74664564 572179012 572290837 623884346 599061410 613124714 256276034 808063834 881774644 965719464 741195731 917759656 450297766 521885357 12952499 206301184 817702242 917172619 704022745 775719492 116454123 521776563 657027402 824343187 697229962 881630062 592437541 899362943 750625209 891937539 94445336 794571795 481407387 915969309 807080828 966968920 615224411 959573335 406594321 609369244 889834522 973431560 678702032 949848481 393071014 548486611 838177826 876300132 968376163 971957924 413717011 900304071 813059911 850275616 418586183 805205429 960513393 967967678 114378263 607591515 237331972 342563351 388120936 734941498 349167725 862095457 779333932 868203701 143269877 246607741 247411893 292606569 103575583 652329026 313908423 399595986 625977086 858159460 816458583 918837602 192680241 781736475 301395311 944049053 183136921 690758373 992234431 995808638 477298120 523676495 422165047 556641320 558343616 772054421 878494667 896154018 139120394 299069731 270013069 979792670 249642442 744967180 971016951 997248603 275461989 823848625 890702044 916439344 949817397 955551212 688240475 875389544 121698122 580407829 498801488 933332525 774587371 961179174 897818481 982048670 508118683 845189484 273107745 705713904 699880750 778041168 568921872 660211460 780514609 850886791 503469865 733959353 379492729 482707730 860494038 982149316 696067500 820802854 328269578 990327126 398640562 766482480 633420473 997832114 726639378 750361839 905830834 918050104 362999414 447033498 407084661 462781181 420325335 462771439 118518766 684215453 282410682 824919343 69394266 287824405 137003370 689585678 660235363 762809751 784409873 963325462 415672547 795291525 494524188 734523316 413384885 946950277 849731593 890171898 243193792 547618003 60678897 592420584 529600853 827582923 474715018 522508527 983450760 989837717 21652149 615984267 10941556 728767541 251564348 666530190 645884032 871272480 861383322 975195089 804309129 983415970 565317901 572253481 982089206 989136347 859711514 959407146 586893216 822277584 888489750 954161561 541246667 796977361 368380966 911242859 520058349 628463834 401940970 680553586 122919356 600900108 937555121 970084970 46200155 464563398 483912363 605315069 56274261 347976575 76395934 717246029 182612922 537710457 211407287 975616629 445010259 729877092 79799588 278679024 726257217 864610223 751493280 884677739 100252217 532603722 822974310 844215929 94225071 340496432 477456795 654874784 19720248 875620347 952939255 972669931 316363136 524729100 460339596 638279985 670218633 768604481 593744176 966494693 56371289 490520700 360845558 851372003 117976430 201281904 523147061 603043003 304351367 671338145 219797447 562147089 135051350 511628018 507882539 764899869 118331938 233958939 822980611 960027955 339308007 462357904 205242679 519349587 995639294 997986494 414784282 838335143 121876267 352179387 466150411 708916107 605222759 664118581 484176987 755014986 328438783 705021203 446511241 541675995 942351167 962780228 411642531 567062575 275690799 752676099 389533503 461599281 678782499 882650968 604606608 717648918 597519517 745796611 898526460 938463375 737569243 742775179 841741095 949169459 497135735 576185914 887386020 907357162 850590174 899430441 701903913 865596620 797688189 872429694 225911087 578905665 850167442 997010321 383701367 801917316 627484966 914179835 132195849 951491745 148878786 256659736 538495547 783922166 493084518 746744921 904586237 968151052 332283906 453953652 24681388 528379955 5577339 516702147 63390380 356959317 16162818 385864624 341317610 351765555 18322303 207477040 445508690 915802710 500001121 707856250 712617017 847195165 258055437 715880742 626368411 732390455 921904752 965435322 790391434 853475343 469523309 805985434 209729883 908997276 493246170 520931175 768278068 882414077 572684632 606522770 744877581 989922231 131812004 152006375 538570936 868767718 268729634 305212321 264838923 462340718 507024975 560523075 623758485 927883833 837615472 968821948 589113975 887203326 117038487 913338870 267697641 805850565 718128122 840632732 339777658 707617784 41607365 406935325 332808135 692464090 561868965 759204564 380501335 389167437 963851812 965544883 379817238 486338377 158713976 717924464 285255354 756099522 885903207 918016137 598528053 721178598 278933526 608033545 490320593 882050246 826715786 908275275 499787410 569378800 56726725 999045974 357268589 573638762 93077732 433856220 467901182 509408268 885649911 927587869 128111927 997653496 489936407 987330320 551645641 689496773 259279089 558709150 14435175 183298665 34216835 659944669 337088793 481584844 55095395 759624163 128947726 155182891 304728870 615940001 98591459 533906530 660212105 817101861 928234174 942690354 334010965 978832845 725743362 782494780 305905747 338128909 456729881 929547181 878551564 881430344 619063316 873127370 272440475 946942378 681017773 899749996 536033209 786729435 869516629 890590622 13714635 342185319 477079377 704919732 178737649 433619345 992397545 999239240 548880093 721155863 412901164 673429959 808070995 989699494 492785075 579247241 476467058 733342630 122057845 303658056 932671755 951989563 278085607 774179996 981215777 989579333 161602800 610984268 389016604 977108727 523630144 917239432 897206279 988155311 899143378 905701717 85249201 619917715 983176126 985269567 707963784 912481952 108579189 258606178 696687263 838321182 965252140 968169817 373731779 384215872 966966009 988343549 309069912 717235060 393242467 744204666 615200135 865500453 823685715 900122257 553859568 813330890 319436239 817918283 725795659 861579369 133567788 313626141 1479959 125687359 122834787 293415781 100447290 752392987 886535073 981433830 752087799 999447778 822069416 862011925 699440745 907986502 282049880 480537352 673097317 835365373 969116109 982453226 971608246 975961745 362755903 699667546 201512904 960381195 297965003 412244234 639729792 828607835 443991736 927107441 775819567 978316344 648534718 923533550 217195158 453569705 726941752 761806346 208285083 784164415 904459685 990940834 573151809 977271264 863691130 979146614 356430195 532929110 827951967 949160177 419513204 844308171 652632812 731222583 340325473 355038585 639733196 679244149 687833157 970718820 359161754 990010691 942110513 972366971 458057217 858469201 773822484 954578137 104424391 435519368 110036457 302196108 809568599 845326475 634581205 908874506 674473796 907201513 508009383 892693063 796432617 966565747 326368150 891801090 717640886 824560826 709433435 717499452 351585955 762226022 60618444 589135288 56525178 808816820 893118181 957704413 234245839 478196323 70429421 929659438 143629690 802018827 539940203 978022500 158178911 490914218 234515886 488127934 562041101 894960450 549326368 902333380 762482196 786274242 210788740 529466652 670021019 687484440 751539264 870668449 129507384 484008872 269158398 274212594 201583983 983614641 3637799 544773596 249220011 461333802 938856873 961981848 367283470 752014417 108930920 846971249 337315665 658362570 327261109 808566379 650090177 760979741 111131021 914909907 621578640 690619245 6363129 915274896 844026739 857122249 449417849 604957949 251282371 445149818 610971726 752248709 877237422 919845810 385487650 881078366 239638040 264816111 574177624 605372831 69129515 124626997 506286780 778363036 274296072 901712851 457461052 882420141 319067987 603578417 714259701 794651728 833361321 946721521 850105361 898295523 509237246 710992814 204141087 870181573 400705081 715253773 768914828 943229657 899073891 914083942 656708260 773491163 192428160 931361671 664059205 851170415 650273992 713885641 653110487 928024108 982068457 983814722 782673444 978688770 428280800 566196259 457466330 922358204 136174127 488914835 153535265 557603309 706506131 772089770 517338990 728379145 979457379 993731463 523714561 590572487 688478037 893721155 153515344 234658220 48754440 475660153 523556155 567000352 442518852 909987128 140939466 738200240 243628157 767901911 97429048 863915571 520869153 965333671 612186817 703971457 363641767 636310619 433542504 958470376 680673238 713912289 878161099 991932227 371238905 774625639 655433308 833083570 531074265 544500190 866664482 950036582 444082350 878815633 110464476 628016342 337186144 895956523 214595510 894608205 459648440 509056543 356320489 596271704 684213868 944980848 679586818 837319216 278517462 331253790 445022452 630610256 110672996 624410800 545591690 782443676 642671531 857893306 185550642 463579429 31319281 665805289 373880215 895559235 339628676 810494711 270573533 692560713 361334903 669625554 443896706 940218504 78669949 586505982 806642032 873771613 598462063 659537228 937446827 993527411 230139478 940137860 809533924 859049717 407349841 677768853 468204007 493547548 292873978 432174591 969788503 980111253 762112847 772854382 930535137 957307729 48301063 826186903 161963393 718352095 895857559 988728970 737577537 855530933 433638005 576826159 752099882 923680706 486009243 616402189 254719819 856976534 684330049 730066599 107587570 781754803 886436882 911071898 329954168 827848559 1389796 696621430 572821170 828530814 580673273 936164118 96949001 454887826 663170176 755931667 191052743 380772319 934338935 998228530 414172458 844927415 781816990 803049844 182028263 386878129 783893830 979632888 490214197 494969195 861496368 908090087 919646318 945875696 540107920 783191437 818099353 901677443 936968459 962749092 868232483 986017989 909937237 971723706 907891583 933653792 15648008 29402669 552723443 564769424 118604641 428063650 226820822 693174685 332178842 472196573 888419404 895840429 999606158 999911541 55367875 889962449 779335020 831197563 348417504 988322043 575498015 795301938 132907382 965009911 141334407 664722609 608310646 866194157 359502688 991505588 885504145 904954656 357869280 626517009 967028820 974936758 679119422 877348722 727533321 874272183 881079592 984570795 277347793 974182419 540102632 684739598 163848956 581816474 725685823 837226062 941231299 946732485 680557369 691661919 64324222 492580805 429778534 928621591 786698831 989772420 687838661 876147253 186435043 443519143 757075397 982896203 600262784 824159789 343760412 722176613 193284849 840233817 584578132 990797636 615422504 620736996 800705894 870197195 116630119 637615395 925372418 946825651 397471756 433931228 686396353 990527896 334221125 858742382 962074984 965947865 907756747 994812205 446788983 922449127 189619565 456806478 275670631 539511948 328123204 730070016 956804309 963438589 59071005 429250325 352977936 555522948 120768967 643408091 975890825 987879383 575225873 970552408 133603439 449517295 502957286 818956692 450980637 495259324 291982222 519901061 94666931 462526337 724897084 727556980 75139884 704100324 108295951 610740328 938097348 956045005 262811481 834473427 749961149 949320239 161274869 955615008 95244203 759602612 723506203 727083757 396940186 472181009 567165804 586830177 371670477 764431840 784539668 830055444 465073309 695012460 83350748 643777009 34111661 928928766 564857356 616796914 216468936 376856541 767737416 991832950 367677303 917166559 662708378 876045348 156555713 826633428 141741886 180560083 202934178 384932090 905330696 980098041 774417476 983771869 578608774 836868635 799178346 839104879 431372511 984875164 464394984 781554005 706653288 777000887 397190461 944355124 903285963 989017075 399541805 635608618 862489920 941443158 803253418 835317898 865872806 938762666 994196403 997183687 714573669 910009202 989966532 993682911 758739029 939752960 1152365 756002558 134118019 633612684 134031619 984495024 436539173 913762917 343907363 656721952 330259104 732303524 836634037 987772583 391253718 774138342 489005273 608697136 272179360 919212700 845415652 900851569 308484493 907703391 600765948 970858170 830489734 830974101 545545177 710636018 911704362 927409083 888809144 984384392 665425346 783009052 536723520 695885501 198892324 723769800 664104802 910500882 397235997 956016358 869597346 902707495 197777553 414107901 8399736 318100338 193079911 892344748 164806495 875736020 311470055 404240873 271134415 776441065 956550147 976460779 879910424 977975070 785770554 812131543 749686813 991072364 310089327 900148781 606185425 879026422 372895189 893019432 277202236 328415364 381780383 635914529 200039365 830056272 653017675 676805930 317686628 559252152 898238640 961901686 117581783 371607508 206880198 804718454 617109518 618180805 287029908 853401959 654932056 823542681 322462593 946713855 958003684 987709676 682869379 700553364 585557404 887825202 189530704 905238946 8062916 455039052 742338882 956212682 592848338 641380084 855155339 926742907 471285837 732225970 874590871 993398318 801446355 896156466 40833423 123114777 554474627 858866291 185461229 419930071 821267618 870794139 895684078 934616554 619138149 905870309 424775314 583700179 299921869 921334799 488224768 866539279 940328695 943592480 659733327 999901679 639651817 855363817 412126363 533925339 347638634 971158332 285433361 675988165 665323269 686709314 237140618 854776070 364604911 966219359 620383163 804326523 839729358 965965840 583396517 939747293 303130387 850505547 774730705 916207558 972996896 981549137 315608878 797409647 868049039 954396923 127153969 266484749 79315554 194440336 851444877 894759328 71163195 730441938 210412250 257016473 722044635 855828450 897581302 984507111 100134908 236305653 777857748 899092219 28665858 417570649 99114548 314296468 648509773 916634399 548169967 634954898 409686153 810788219 57782644 205231121 596640018 724595370 684753212 690898597 655330920 733344238 311497702 359029569 610813785 737655667 523885980 628803677 814813303 844977572 622977877 636040142 302202014 889883679 384950496 647700230 800617729 964866788 614609514 971199755 843089373 891378644 597414878 633657329 648032765 768141334 640160903 847896038 143281931 241309765 735745528 971996173 347572519 691078909 239157660 587900031 614373787 627403603 120451556 630647179 247433966 906496380 979993152 993405847 452126768 547270887 121345847 484359569 470150932 812061677 439442340 966458725 929333214 972643741 751109543 889236794 39223870 796556890 578341835 635736462 442573010 604908244 746517658 839270656 985868438 986015821 962795988 986507030 891833145 970642777 292113520 585229203 519892815 591213986 276310301 851586126 236401302 800653347 966041715 980691431 912213644 952089460 938062916 971943010 576720057 709346317 89458136 637296741 561113323 716005565 337280566 770510183 554072829 798978712 415472157 636189787 294050625 500576822 295866232 437045307 11637315 305077069 250095901 344086318 602558834 999643637 101042320 533871348 507914575 655057549 563942213 875216135 499042050 945089657 14091564 494422054 223568442 455870935 330815987 431984522 464972527 698142770 353509335 963090727 906273412 960118111 80548617 871376006 102323964 312834351 140216182 362673457 939073049 977653486 520459635 766450879 925899427 994073092 904586686 911852794 952224667 953464219 921760550 934395298 77827032 669916510 586715762 901212426 903539306 969709655 741693921 870172784 158806617 180864406 350920700 445508526 469040545 648401428 982402198 987559229 360070198 495293365 681325857 991271738 664972595 719674455 407125631 633397781 746048026 825391537 384786870 673609839 639570941 747811359 213734717 352108539 926044305 984536770 71728215 779222283 813823384 904620310 8981722 726964868 82158752 963914549 68101417 346593429 214501268 263255233 762772982 974681240 176726798 582259484 850664633 886924355 945456334 946256481 28369422 285969737 777684298 999679827 535881414 712618156 731509300 813841136 355066117 978161381 81247519 287169913 976074607 983787354 385287592 849431520 801523189 943919155 482374609 501693070 99307029 416582696 333284359 593784602 614838355 760185517 863171955 870307901 725242435 849651769 548845129 778918873 174693167 385217753 999455728 999596139 851604560 907800644 516563504 931282549 504652385 838614031 769360383 793181701 215256521 624596862 322840775 494267474 318692229 438759229 586275699 755288629 485883443 787852830 719313143 777398046 590804834 768353014 188387284 523252192 590428302 815296982 117705941 763153839 637266873 838262199 271804741 427836417 321797654 988830691 8125635 965372461 176928032 606614572 767254400 937117822 396204958 525279205 152090602 655629428 169943534 373156356 690818605 942745572 478001481 770379656 359324145 822874079 49352068 318322130 276593158 595808734 985428312 993409223 71725192 277192018 868110616 964673990 643541536 765370859 64606239 795021952 303974484 456347747 344607637 446646180 414801469 886143565 118777574 300732142 482911792 978278493 884141662 890216929 566937214 853611929 273349724 298494905 184953537 580460165 890580075 943266185 180526675 899653468 316056227 852241153 59300176 828044283 845586184 856140056 516640040 524404341 900339003 946268796 127236323 990254886 496291991 939555424 322456614 895290795 644780340 791813920 873134721 928033741 100366987 657159348 265277372 678322053 789214290 797412384 698901503 757764067 466934947 797542452 8826594 529164130 379951739 814027356 278215184 601467587 827852297 971113768 563680512 765876081 196778248 665447996 499687098 954424144 713538181 741716435 29883056 862821534 609935493 963158613 609945000 963923284 199598651 988202680 997942206 998418078 581880968 900043367 807403989 916743663 745610449 968592361 679176090 862464211 506992114 854154426 64659484 897176139 64304984 943709104 180360596 504130574 595898128 826734433 746065748 832918249 246239861 327450614 819282884 831217912 579316515 602123497 599815129 694096069 364383758 658965360 310541780 341331294 636618587 686311317 761320842 928895149 427209448 754632757 906258932 907226680 833339885 994149006 969026178 989100927 752887190 813089268 359541874 933224325 263445897 966983817 221974612 469939365 947051637 976440159 163061909 448203138 568519717 845446859 709977602 831426342 751665938 804250796 846959110 854262971 618938669 647921054 943064840 999493935 474284905 851871022 829777170 909642071 579865627 858186061 709718251 904093384 965433984 974188231 447489833 764891833 603134991 844742833 281172627 477832938 799413013 880581994 881257233 911962951 917472073 998566073 939785220 991157436 692829885 965176942 252344639 659061683 701451789 781119128 270890244 622359633 509396272 511841634 218235630 607948681 110857669 217808161 445024437 611396502 94379983 882719714 495165862 798688659 464376051 907939890 167597003 318743641 870165848 996248912 481553405 529677774 544536875 913213117 918446828 933186986 435846162 903985462 392739036 730806931 159077011 819654401 880034104 977994572 145606662 237423123 685160829 842583874 741996578 872939827 711395253 728876132 798772898 878057981 911338211 966661407 354974574 840873638 781845037 859361790 512660707 727045242 4138456 548638700 864151996 901525266 595190159 990864548 862871006 981034997 259466929 720530043 881761779 912209417 797007980 838117319 249056601 995724912 42562841 161450849 882930457 890324322 888503135 983769968 336555641 932147603 752473886 858188267 235660782 772569599 911873196 988896402 173197944 348922506 529258395 827561312 230322429 499808455 574064213 591211029 464751973 672970578 619086110 923747829 365762848 384684695 311138189 689127109 472376283 588906987 62464186 813518700 866638718 884742751 201538535 934861128 923013869 925176954 490261499 503524806 547750376 750216461 504722838 585043067 184321145 419198448 774704765 850611128 377433225 386687951 990189407 997920732 695974492 781368186 894820277 990659016 618963414 798115242 892893427 897853615 984899485 987638386 565645722 967248336 857441590 999684280 963791343 968721311 15764447 917459496 57763100 768677185 401932344 688163417 381533075 501988811 576766721 869698425 388620708 719686305 274823202 492511687 244624520 661578117 361666553 655468990 832957946 965591054 245828379 707615433 169938331 849799398 865394570 979140645 892326319 965638389 993811751 999773795 13139386 513502627 351174616 472540539 714404886 908723333 13631682 304239420 447027737 805579855 4148179 788715001 321260684 929430745 728863450 937921544 240098623 355749856 247203199 342851490 916454552 962755566 981527508 983344556 809892406 930453530 67361588 772774985 25679704 652798266 823955654 839416939 489510750 687162773 33986682 888452548 931192774 942777829 378149089 732562860 774873375 914054218 167541977 488058967 367888444 975587169 656930805 689159820 718974078 799032351 265912042 586492887 105765516 436789526 65723807 933245900 598989172 661612358 800522808 876252719 729974987 831992547 677250452 759158491 815835393 907995561 143289948 743699213 573291872 916530943 273758522 348614738 39790119 649401897 706070813 873517647 103808952 684277769 47217914 963126887 222654138 656251595 904031422 987516945 246172277 480647435 285997103 793524839 985906109 994937776 73275380 137508782 58785170 925665877 498970320 953075802 608097085 807077913 220640785 766115616 450990601 864405070 875966710 894983613 887668773 916700480 146766121 432386766 614626709 938373008 779410622 879797476 501455092 771382890 674347870 951379136 181675186 770333820 694378476 951402495 509825456 649850621 796721231 973401147 846967878 875821370 360786713 606233759 804685378 931279344 336551477 958983255 423934747 925824523 508473034 678371731 96763468 383904815 878304754 920511800 462397332 605573563 325410160 427428604 947561846 969114215 271367478 662243227 321148462 509765548 468292745 580995557 863668151 925746342 125621402 552534020 508698749 872063411 705674231 732155712 272075331 566069005 985940114 988394367 47031277 931968566 387448616 848566874 896440341 973473052 449806341 578674514 270432879 529082352 62104629 826093759 687758750 824756162 888709757 918909664 228025215 376781811 743782999 959748005 850230872 995145454 869818569 934601534 629699449 989046781 352581168 539586821 738175477 811091260 54578456 900922021 333571427 793443170 340490117 550121807 629943297 744579564 749258495 900339238 362106742 853868008 804224709 889473291 77463991 328806146 112034241 424298786 291334130 341919609 390985015 475735162 96093556 505169325 416199840 809426359 500955343 569640439 286476139 803458912 738517549 803216213 785330755 977225285 432085879 566666483 540122800 961135839 998437105 999353835 148493890 227558478 387071713 590483975 324260678 529235009 613704330 753928484 641054395 659093664 737883233 955088473 906979707 912412856 423273005 707631493 856198695 912680777 785454704 921870603 343733398 604929414 639192420 842445675 486802446 866993205 943735306 986758573 403651324 807931052 645432697 840053112 514860654 696706537 257124671 577748209 701924414 887146433 462842246 955207195 550665430 955797720 28752722 551437579 840071092 992426514 805715432 967261684 998040493 999842185 425272727 980748106 305457097 402314914 215260980 491046933 998052984 999214748 410854011 787364878 989437018 994529340 141370017 216643104 490325405 538175233 916495153 928213414 984131476 990983265 79562361 469737279 159087757 664838040 390602388 618376205 218559473 725474755 470117397 648160051 937359821 982552640 392969344 960192211 983873420 988185443 934455796 951567177 527410811 955829454 871862045 884931237 710581169 928992992 65347451 67314123 821633979 914207609 821114748 976610910 435321469 518904038 451641124 649329722 911985465 981571701 266267593 510961691 141555827 520890394 50522801 904262883 301044511 457323114 906108288 916819001 357300813 790566046 863956739 876341897 870280814 957377373 608565755 701918106 535522820 901942173 314762281 819818878 184321480 243187850 17009670 85598544 78723197 831701949 392121143 623668572 626316686 852148124 591106722 797786840 138704386 644991280 563535629 753355768 982637615 988512907 429965875 573217314 437439164 477811889 351644436 372916963 682914325 935301557 295746672 598319016 812564616 852386960 17689802 21092803 23597265 273052043 686957926 822103156 506148071 675836095 609281835 742132284 10372667 179981638 250991119 585668464 939049338 944871777 336015901 589364097 302330198 748674338 597257546 606224661 438179070 490849655 814739865 972587548 898493015 907080952 532289502 946305473 924973631 949529196 473035763 590131743 554829293 710882939 258098036 438097376 960835228 966280382 914265503 923632913 737797909 794883585 358717810 846424150 288806822 298261992 949978002 974841355 707793077 719849298 750669405 797305101 238795980 980959834 768660514 880465665 855496688 956227083 52437250 734888318 796994638 982489293 864120793 963942920 187940305 443589288 720426341 847368831 985608114 987513225 33101203 594431214 342123513 540408314 504117056 926834871 676665893 880155895 893210902 910525524 717236991 769991367 475398745 698061536 670189620 985292316 969977221 984597796 16869226 921092634 713862796 843097446 793231844 875602051 620106724 700904918 426566279 931027153 686974964 995013667 760802530 880120073 940956805 958954177 568778897 803945605 628424283 679050243 864816237 982037981 356321416 556539117 217778059 446746233 507672246 593307065 883771457 913056126 749595237 990262753 485334257 497262900 581486692 886029237 166600625 408224942 542114528 608774487 413929788 633139567 60534740 614075249 590693661 672282483 12134230 757145020 423153275 810089125 288726065 761374656 365945741 555165865 223180220 780206286 671722873 795116864 307730629 311455396 449061328 574084857 847998923 961628878 505549955 610958168 289608712 587594258 471890139 658467040 122820070 216323192 832852692 879571535 309202407 608037605 130852515 999480136 980039509 998669633 545531534 905428107 5505309 285208413 225696211 753523651 697991465 969837593 832838448 951214045 401018540 451640216 117926398 920569167 270369996 686688354 987327325 997070763 135672478 632161054 460946274 857108454 447901401 555549158 838772430 892490264 749407632 980799868 834073857 887325184 842754359 962085434 97982598 455066826 679523205 867379509 858443208 947562305 582162808 754470125 239206408 986643607 819551005 956391414 477909696 777081450 859755566 898558433 53455317 664741264 325341523 368605629 299731017 929580654 415517078 755318157 624572989 887705701 273469216 482299947 265395470 776814645 325307272 885120768 321984969 687226404 606712660 765040139 707722105 778277882 696646666 759618618 620905588 658743878 259962201 637032287 764513561 848353420 830375777 908629560 935995440 938797691 787463382 978057440 861936306 981085111 470130349 757630786 457462741 647749208 444140533 923929027 573515192 759115739 132136886 729795619 137347419 515979071 331887610 851116337 446387145 907149143 103914198 305732820 257676095 526959408 480273421 675285655 506755231 981087690 572720018 999932871 754161475 794601298 378483616 618304560 988695692 989177364 562496755 908769060 55210793 85605098 394618603 884903246 168809973 413515003 826746875 848856854 795986622 815619830 144119505 264679432 220654082 528388940 602334892 700431822 144301538 293420403 248712732 782398060 177571275 582638419 73642669 137812510 601036855 837498389 49816883 448108954 364028376 782709092 296203020 453869223 912485204 939417486 724791129 810989168 96988770 577181119 117994108 639434297 318934515 715223416 720384338 746593550 733242183 856786625 194362224 974361752 188326601 684120890 93178855 328368195 303609409 681045942 301615977 771239358 309571486 771466619 210822807 842098335 836649113 949114070 56475339 94824798 651694065 982531160 773318583 972763313 104270887 696452183 481840175 998160982 485562864 884796328 194566255 631732427 512721718 574798994 993744755 996181861 419977095 654546755 436382719 772285920 473659021 938224703 328075718 848942726 516604884 678542808 847799015 891176709 819295476 861593671 579953801 817235377 798911116 944316809 447954322 929222486 973720423 979898114 513622629 878496034 308178157 332728392 800202637 852831020 314085757 689536875 322480203 431232360 393532718 404304963 795607174 896072184 686437217 696957713 639346134 818881219 70146625 455744478 827213116 921731856 363714167 979959495 807741029 998863554 84903986 737867212 234468471 779223431 444420507 733496950 282323425 977280147 308525085 722937366 183036114 406637483 195466188 296332957 811039680 871284396 621680391 835090430 324512386 795537992 148578951 866209129 650005927 853243695 96349349 702797448 934886304 997779004 821702174 847451517 202279757 876523653 388323204 860607746 549057634 571475687 837406774 923551471 709517558 910066760 775070064 914286634 303214137 668559208 683272801 772727648 303978759 807865451 698200180 832388438 551555180 925868428 851388781 902301448 482389366 892491379 801347642 865959501 282689117 737771616 429271258 972394700 871636753 928110851 743266938 907771081 479399854 780498379 679214780 876940897 954132198 957753392 736811141 870464843 352808296 730020103 415085704 808652722 585703337 754106091 873509856 952182639 697950391 864863930 107945882 480362408 513161530 644019574 374683667 511090669 300977348 618773071 286564138 879091455 483058802 624692227 230366542 966743152 816369193 877520808 767422024 956911506 942915628 992233340 733123119 863776837 779444364 847476849 155037224 999062882 919780040 931102020 685158776 976075031 419347525 529559102 338908104 835623837 695585106 987167483 625144333 838655741 475758251 543380964 332877620 389376459 550103618 726266217 830934569 951367895 866791236 896884400 552157703 782707882 678221537 787059549 513730737 815805441 588093535 755975029 533328438 662558609 938488085 995972218 760831299 968930600 675571328 738905437 501046353 516217049 450432772 699367936 961356168 981173684 973950667 995551094 48096850 433825030 538120616 643107608 533280616 712524989 622680001 987402218 469884435 609297406 438474503 803194482 737305223 869191517 913809621 933074486 868725532 980855806 821775207 921981345 664540772 961513753 849301164 886058494 339270607 919996043 361708726 904878331 512253740 910593966 651708567 734347309 183165425 805663625 995306580 997636970 660766100 814638565 819123389 865593901 662062463 848279512 403306416 540262763 624613525 743792758 306622802 736308038 432130707 983729563 290448915 915956281 515514598 804935421 682752004 730966030 999221324 999515476 632185795 807486252 938486073 958631857 440078014 483960598 460101426 562599317 715565077 833538331 774013713 775897650 618026737 699005200 121294537 822408909 673565176 982575829 834566553 934412080 498888579 992598469 441459922 585181557 917040164 978691514 772194074 972376662 595845628 602932880 405712495 590294241 197552390 226622353 525356925 645268241 928628069 979715940 455098474 508689883 346199408 662241919 949467668 983973907 554837757 559800930 749214953 941897116 162090020 278547768 609287929 821735090 648014364 847692661 447457395 502083479 169858324 746982253 78394006 641541962 753944663 963627595 633444464 774736677 657678870 881760181 5770099 95395050 350365822 537887977 751958636 986937787 796755192 894722470 949657739 988319670 222715514 250193817 791572290 930669507 854855525 961032124 813005649 962883913 569353008 656584115 407500986 422555890 278300210 620604383 8391300 336000509 44563416 255612768 112837876 811648154 342682385 641725178 435691817 500875541 447080193 949965011 970939008 982026949 785867404 972968966 7912482 472615269 210114212 277037038 194356904 236219336 483935944 649055352 202155874 784777810 252374823 679272959 152037136 244557376 333712926 991095521 893765623 999720782 284300755 892050340 556231351 944189454 40578294 819707041 781299370 904301428 140618059 256748794 32569414 131364486 938822047 970405806 807231887 814927338 305239700 649974126 954313951 969733463 143994292 738506204 731504477 759369806 565026177 867871104 936301374 974122722 267479642 268371359 968647623 997009959 577263408 955015585 677948146 974515756 898577402 947640931 488538203 881877878 81582631 138689343 419873431 901190803 279024127 920782114 171053795 595071078 606470285 622356118 592667556 831717800 161979770 578058695 949921182 973129519 189175771 987759574 415557444 460759130 686946364 884219002 506392044 707737093 519256351 838235266 722020523 761516959 739936748 981974064 173587332 870593589 432060941 531512458 651418000 826453039 430909998 523799646 993457478 997398236 711714945 751688629 658629918 985794738 170421628 918846190 179643152 290469432 224971660 522786230 120540074 317107468 164553502 826563276 978218195 999969941 12131282 791036667 594708872 658546381 573032817 701745954 475509348 605152810 183559595 944900327 963663738 987512166 214222390 441416303 79623188 991289205 550474963 857066800 804494304 956731792 144102636 873453803 479888567 922531558 247120728 640390467 5154325 579579801 945526612 946153029 184072244 324158225 463096008 747682084 714514749 977372435 762503531 795730348 329646608 902550435 521441802 942065899 749392730 900133747 679448439 842148788 722502069 766735577 697464136 950638014 857055479 898432082 530436069 855737343 823711628 984042991 455289368 738492579 891736008 966053649 666381778 964777544 596904030 787031180 628951370 728015124 828682842 908188141 368527727 416730215 403944955 448194908 120571223 377019544 496002003 753633058 311505398 755001647 607682600 664887476 114957209 492978303 218385845 480971759 447385186 528626083 788781207 852239234 361364174 910362494 838664886 948362173 445464709 937482808 278388890 538338954 562386056 726588872 621805195 722006033 959845515 972599545 389584676 527223625 414024413 880638393 120093962 413189550 911107048 946088149 418992434 769628213 54133350 446122498 157399571 319610589 457287723 950259691 149517722 333008639 673650836 878095173 548336715 846106741 473271110 879931707 538936860 747533630 68727583 892166972 804654995 837876884 304353740 736972225 347307405 688188510 921290583 945741217 637685437 673825930 142525714 923819444 775490339 900326750 716591263 918306495 250420178 492853729 28115674 817518828 969740637 986581071 856599298 894592059 258353921 533039350 402334871 618808997 738277267 882096302 771625025 898834784 179642443 930798143 115469683 421880099 802074071 874701664 145753620 628118596 90183873 853430319 712644547 948619832 15325159 665277946 663530924 691051853 877120518 948984098 152077401 169874447 710463499 896130177 453662387 493352734 204837944 691770639 640120872 773188529 965428882 984492460 706938037 773212637 261334704 499571848 665313561 901397539 252250587 495025741 965609626 970917390 597796780 780491106 110937558 957868237 570123853 903239464 34215448 335345522 355124360 614490504 28079580 251789029 900799693 931790484 985584701 988901279 511193324 616319610 154007989 369938080 157678575 656299368 968064642 986030903 477100521 517328279 933715744 976027514 756433101 984119547 625864664 719956777 203668564 937935535 364851313 763961303 335700132 882116048 33135655 234026535 349056232 455588393 517367898 959397490 840767982 914408241 746518314 922004652 969228714 982460991 756847654 979416130 529042995 637896234 558372704 789577105 416477975 856997145 932823097 940922120 670753522 776520197 793746157 821671515 186798458 193943275 997727528 999291780 270228827 893803891 932805394 995021478 181142810 492074147 564215574 909381631 37690039 933393739 107585845 331773320 523442317 709544966 215123492 500675278 117234656 329662807 45864454 500005147 230159778 808282358 920734657 943145756 164674371 495644617 220430669 656669685 632313072 849172509 497939289 946689638 348243848 555871993 732473671 741916428 459069064 476378691 799303348 938130608 227992840 636094772 700339057 950927142 344924820 849901300 892879201 906136340 697685737 725179426 683290033 944552983 162987364 894228120 662018725 847825777 774690240 954486665 478371728 886212794 578113725 602466207 793564752 957114969 686135842 693372339 830277076 967185655 329653195 694106736 101187486 264273901 713380869 813780729 481150121 564226107 347325367 456125043 340508454 980377363 995920305 999587151 319532057 702426201 879963830 942914878 413053709 853811241 495733197 995293760 323998293 685239963 856499843 895139348 280904401 457461650 401223975 451205033 505574083 738603649 81585605 908033809 554951327 909542518 49327803 251593378 108440498 561646988 321116118 936687625 881554800 890821016 445120280 915788040 101275601 767188576 545941961 880258949 535922307 893848813 543408146 928764282 412633555 723404323 631555970 966650399 951800939 984696804 448697944 929073769 770541624 839889539 487644725 686414544 669038251 947843672 629188735 803436480 628454556 708275832 740648198 894210398 516760774 612745330 611316189 855901785 92477711 695965813 378521930 420066796 415740493 491790453 37996939 963697638 548911381 719579030 787886212 834977320 886837230 970470458 937008296 938386020 800532046 914250957 296141886 430841491 41095012 349429564 682623950 848087459 476847872 963538796 318519125 848983049 278231742 653430266 932010525 938577404 444645458 478300603 376832467 693575977 490424775 584401427 343576634 490451038 327792614 901568490 599159954 678062400 188471732 996506860 604649295 629046854 136308817 515070307 296909801 744199378 933387406 964855517 401267457 500612785 209782078 532249412 244839337 794168486 347228303 389929315 404867329 562178928 623920580 822669526 947124021 957796379 717373369 800742039 8630225 407730701 653899281 924216644 325076973 915760564 793476524 954321144 224405604 738339862 505459630 916583198 591148415 718919004 587146760 941744548 4787099 866345595 842709966 946913593 577850886 889599709 617015317 663740904 142186959 379841595 217151123 932601556 999047213 999568023 217330637 819263992 263305146 288339659 19404077 924142342 268219750 926027856 656314186 699633849 659079112 792530786 190974240 596437355 554548719 598447789 925792089 950837637 65417614 842872486 466465717 946892786 319169180 773084766 183086095 985474235 138548068 152617225 725427227 988188797 869881536 889298729 623314525 934265377 81170832 780064775 562401173 755485326 558814446 572310963 848345808 974031919 740165645 926403892 10544660 480641235 603657297 828210600 505745044 697439297 200741056 379731023 355465601 842856732 649943691 789313989 323256583 503841601 134148873 726983212 389655261 806740038 654599160 932475123 805826406 953136556 690429156 929232821 479555397 803008711 791781219 894705413 818276745 951466163 382734654 823696510 83281158 818755349 592078573 939681767 174280054 532407518 548793668 905100268 636544310 729680710 252393983 832828952 437692978 980127420 137500875 925478369 917120468 937937045 414075791 594465566 617976961 789445830 415322346 545113122 858297130 937282217 689037348 932139994 922137556 987701163 610449340 898571046 379282779 747087265 775965507 826555840 447367301 609771068 60442245 770249983 602235067 910107637 608464648 858364865 91978416 473629981 119974655 635610399 209831485 484165336 319237140 736957075 215172721 587425915 531950960 996319414 259927529 375930974 56882808 406954792 423233258 667256884 606879828 702454596 964334118 983821011 98065422 596592416 589849702 723412612 137476351 434661184 504414455 845600160 551446194 990975894 928768936 993156210 163562502 716925634 794123281 968746096 299696669 870491180 804517907 891263929 661508765 891287719 682416499 759488016 635100572 801600236 234268892 505106612 165866012 345139419 901748138 919087194 117905077 531663672 406139129 762077974 868246353 946576205 403719738 418372838 246734419 362785699 538852710 822370341 704887620 707052005 996602596 997316969 73485152 889256020 209089636 730239044 823336591 946662862 62399712 461308102 399689136 816391825 674435901 809096408 161804963 744208743 886731764 972492811 500888365 983478039 499439600 618376962 128960366 938510291 667661182 734725615 404321600 456169009 749872465 788953237 796523531 883410542 658573184 989878018 230180984 705918081 716795908 751644020 569636586 998938238 779587544 919967614 359171567 622419004 728815857 928380544 177942409 406518959 844927142 871493355 834294766 980458807 68038130 71281400 946432965 956579507 297837882 507703511 54921985 499744382 702557400 738220371 598324135 636018046 980251824 980543500 30556159 203403586 520324872 695452776 687902925 944552199 58438341 913041960 308952543 940174707 7313010 358224738 923979639 978468037 341988033 822164131 462167118 861505480 760178529 879805593 886401558 939949762 780313041 925470483 441301706 781618087 558677960 774627225 147931255 452684218 258450500 781264609 989431063 993040267 233296744 851559968 414405320 439141865 360761975 874313422 536450420 578629930 385709909 701705291 256860298 286484292 494490246 932306368 95066039 978536478 2370242 149447761 457426413 545128528 944093625 996790218 240487910 950555011 55207430 872351299 647337748 874422235 871018111 901012107 919520810 985471230 370245061 985846870 672782121 829607280 112394147 628961422 697543460 734051135 614398776 829645375 139117840 972152485 635489490 982091511 831450200 978539496 841621981 977394085 274462490 876515826 782773181 964214322 415629139 522201821 52168349 922657974 34437209 192451600 935314248 997210951 416513986 448777992 454244646 613610390 163477387 905042887 544606205 857986497 816332346 897524111 981687758 990529610 501491267 870100163 86369804 521237620 980572316 982054874 221309954 395460385 709884571 769940146 818066424 880279481 294659152 458868367 684717594 917795844 680853617 827602018 994003735 999554642 227085524 691784141 484327850 528279947 227595194 676551372 630289939 845629993 778002966 933019326 337958757 628676545 597066706 758126114 699483529 715290405 528948785 759247971 753536090 887576377 259288771 805649136 652473502 774782834 157235047 937220133 364144725 712948338 203366474 767997878 676380734 819586985 669371209 735582297 458332059 615880600 271319141 350713272 713764132 994236336 398095119 416165011 59162140 997449207 375037995 831475213 484100437 965947573 314160219 972940734 733309239 996395045 386866877 496699916 516040952 849985779 502366558 826865704 743345853 987862058 267189649 337759693 296177720 840381053 85912211 435750302 441190853 535211707 766675515 919984247 883185080 981825005 569363203 860828240 172167236 722308961 661765664 711431533 889951061 935965161 254948541 337166558 137130630 711167522 336787448 608207013 880038619 936545221 107041569 146984509 938652741 943845471 953170491 960496314 205361443 870490062 691633832 698428755 640918283 746733011 763521513 846426610 569768934 808886051 137611098 992401529 635205531 778958997 490717370 720700991 579306718 789091523 751121378 779085454 803564802 961559454 101767926 640922289 672123452 978744826 975594991 977050023 505417325 636132896 506729773 511662317 679814159 833403847 898363426 967948912 189569620 628826488 618272344 807072278 41917818 247700998 294362021 700276672 668382896 929620289 146467396 732179033 524519158 849143894 744464111 953348143 638935504 704498059 451860824 965202614 302570425 972946066 733992980 865125497 773442657 946683494 658875192 879884879 823464582 838919867 858461151 976763841 357584125 702372066 335069570 452328400 670895677 894219022 603812186 830500101 629771419 648432714 103322976 817809374 865831337 942146604 133580369 456360935 72160232 899502588 178545011 635044571 938357503 982972785 610994229 676749245 756902164 969968603 979604983 983510446 731889173 989880835 460259220 945867497 293303685 864815059 404223221 869722994 569795633 982287311 643851163 739927885 13376304 243156630 94364813 618246216 788184015 811308955 729911582 865765693 188029573 977284781 343750951 914632136 828429044 912836902 557118063 668926862 427349353 908077012 117959098 825040558 316756988 617067517 744743756 789894026 714198254 919397587 182867381 523870210 972330911 980672287 216482937 901027046 676106004 930058289 608957668 774525286 640241324 945155188 776754887 792110651 165718797 842033437 284409659 382533265 432543642 601718640 796025363 988489969 555477362 861480280 361889988 406892636 454415286 802737225 826865756 832818248 305796305 317095523 306456336 376183705 156629914 659017874 190373960 992902035 414979583 596665636 756465944 866249574 145534031 875437918 6896089 518178462 286035905 333912700 335660851 453942856 384349428 668792062 200724530 946055815 250745212 982387695 336222692 607627712 261629904 636786406 719298453 931757780 663850938 721226125 364541092 706207767 150123836 475470223 777769595 914586117 536940692 600535364 55736774 740697233 612133748 840337075 402220164 979044837 237604553 804214058 211112049 599494214 598138570 898154640 215184373 244009903 88076180 574249376 846512265 909909221 404358725 663337054 310806064 909619131 234674965 881191803 775808273 806194840 861799230 917331265 282576336 523140053 426530269 967042832 790227257 979403629 872305813 880781518 119032387 347342172 29919379 244815115 517562543 599162564 966106357 994517346 72783112 865497480 299511028 345348775 238097912 382783373 604596913 791014585 922973191 977469048 561823523 692871328 517932325 644572084 662983521 849619498 856122376 971853872 482839938 692426672 623369041 959806704 340457013 527443829 562276841 787724276 774873688 793472644 629688265 721324418 799141211 830502184 414028070 549415788 939486629 980578077 146638647 719391997 714317986 876633251 884714144 922433245 235011110 254256955 440672694 864337218 353831832 640636948 763348503 777408326 601798850 672056804 111188172 246440123 824507911 883349233 783255294 809351779 892900882 961524810 14055898 324258934 608768923 929214320 536034219 705355738 131416979 699155314 838122011 858560064 727209637 829917681 844167623 902603058 130722439 373490635 762708929 809943040 681079439 963949944 201210132 290737392 77830253 681681563 374237987 840514276 960141816 989052330 812737096 933684423 960030804 987520318 333472985 548966067 507742869 519013216 578134215 852393790 10701629 763646174 52505683 956864145 24840402 304163284 810463174 953775683 781722741 797088777 865780992 958160954 644414431 688581193 432746037 461163311 642246870 671461915 354219244 848393653 888080707 998873443 637147666 960119183 324956915 653130120 224881547 329693343 462434376 915529562 604103345 617375744 191626145 957708497 970008341 982355039 859934811 955043770 236146432 464099533 241165726 615574749 183914317 777070258 467609189 751662260 220152249 292385557 741827899 841532410 881975080 896347942 240523242 368745271 307149590 679982516 263551857 374745427 348731987 848464906 889861858 903391919 339799029 789278203 982542490 989676173 554825931 560364351 205300086 842149782 497677304 792020900 46870107 804609641 317215767 985726482 453056818 606290580 542379377 900241324 422782578 949305657 430004016 444752941 328955508 815280327 293148161 603987925 584513830 593538479 165370861 829832047 659803530 881677112 489177487 531557733 247401238 537316803 274766173 901300483 36147063 83586846 505653452 726498567 327283202 660760454 884305267 965255683 876978170 998640375 333304506 448946495 816200250 952433161 740895576 820772279 87175681 671000833 733010723 923702312 721784999 880150297 579908879 699844999 486144876 697147159 414219881 518144334 295201744 814515891 942355639 992356608 270997584 941267746 850169333 964718813 52929973 837130541 186409790 977078844 860706406 957432095 709166213 825101308 613974634 790681647 478282417 506803661 150050579 417287368 24136962 899490857 639033252 826817322 443281536 684282947 175406862 397967267 179349560 522492243 765186536 837658582 370063245 734102392 216994397 940989298 436541544 912424312 236100607 700899447 895177616 931891081 540383758 875746119 601478165 768981343 630567346 713211044 847290329 854539406 323124632 400011157 773390643 831474440 852797922 907167648 477587475 821546454 536226893 545177463 707677354 797005465 153452018 804923861 318177446 371562801 982754206 995784739 187092587 303937006 41261289 252127697 38137023 167203574 937001889 947414057 949121274 973012797 586730215 884015629 582605759 985275828 242090216 567345741 680038891 972659341 84169764 640652794 197320332 552982250 214362513 620254290 150720179 606316034 812660675 939065560 65144987 413397615 409236554 451369942 887300354 956745268 358250456 910974152 566909860 690533833 181230779 946466385 459239907 602155354 493717196 835072140 27284433 253040391 784492936 873114207 426077095 782575855 129097820 366238039 226594944 987334231 614443304 828040100 702518660 912997148 38944069 611856753 300575763 595909064 112630379 759861486 351777476 846167958 484649331 775441365 553863377 772198716 844591437 981173486 457978792 751502971 878839897 884633513 948730765 980990905 640934303 733396647 876632308 957401298 908556501 913158339 359211378 915662427 309887300 995321365 922594900 937640218 719299341 867879608 203178217 417438245 184868692 783150172 873727589 974148966 158870570 210744190 690078939 846680906 134294998 617093214 180786207 817175060 556645678 777910937 339852816 601376238 456245217 779683665 125415940 142980698 845553490 983617940 389086375 491945800 258376622 440112118 797169516 807656821 896152337 926819036 246946619 938389524 820861385 967012086 620608441 706966516 458731429 895450021 36092417 257742122 403479623 888138097 734560100 861661470 297323060 304709580 315501342 352341567 486786009 949164545 147046266 813162392 124489661 357789667 406713822 754947631 854256226 918698452 734747240 803584590 644634516 824700650 870480444 985634893 840701894 881647029 946529138 978065586 650619389 961159528 151646233 288206613 761713107 946478592 294103720 693798637 149191518 618609294 617427557 715532623 590777168 945009814 651620936 857860945 49904607 356444747 177476921 239595210 956898362 977897807 833819995 879919745 444857618 648945949 735244820 759377456 732532580 920782186 794019244 871234276 293845404 861518430 635946678 667684890 334301730 840365647 20365951 609880900 58659352 108069988 578139452 871319251 776501896 849640731 741844780 897055958 290453419 796515869 209923387 587829904 143818591 390568793 207488520 564278346 417310549 566693970 33880350 331283505 87338070 207912352 105029212 294470013 413461454 605206069 71596076 315468949 555018065 907449721 480409080 625833934 48080429 231375290 467124780 941941163 826892609 870197202 346246190 678343410 619798283 822562214 569598401 787933919 534976449 804544021 593541357 650532466 256017896 822147672 879063350 951925929 916977770 997704650 278674054 715223539 812268123 899973601 300784969 450571818 42779843 172489851 301545962 638103098 46804965 997161435 6654356 402979475 805672300 836575858 319981186 748638100 481347265 703714310 185615886 949339340 678707446 814559212 507207770 917578486 411281000 916871948 609951676 743829700 805062937 952232289 681486000 814314802 61617311 389385496 347529594 911926554 143691952 633016802 645115779 912153790 700462253 716901293 497217339 851820238 448902609 957598698 916351158 920790284 657684040 849909725 239983416 849556705 163114173 485856086 156601229 669828833 734273926 831991252 595938989 613995242 259383288 488404314 536693994 552145051 886719930 984306971 489646934 492598514 752647153 965907643 13952745 191826555 338243069 626748110 491129859 784203543 663521344 693209110 780136004 948011159 861703677 912917920 821559287 884904324 140534736 764138753 265215089 366317004 868507666 890350496 425715050 793770119 441107709 697075139 303459642 405504549 707484998 873497652 376366842 552116764 393547023 511297423 583914694 978260417 366957038 455772774 73176200 358752627 703009302 985881952 125941738 873051756 722058262 914725416 166662804 701847474 484992164 864393540 880894077 970877784 630899320 690427929 697921845 913623187 730686156 883477530 771624687 992227692 525069294 998975798 71760883 657486281 569502248 736904379 920815405 944254734 828432016 892141885 387945362 497087131 876612021 921576444 973902863 999599047 791376377 956889968 893410287 914161438 643527178 698697878 494843293 519654866 765649055 977015966 852993064 973829199 682647928 768967561 136543686 363029920 63971979 685054717 394140712 487323439 505539069 560457977 672969223 895981339 252685884 625924243 637504175 771877579 974475310 975497615 445758580 958821059 745099261 922957306 150953748 806802305 145136683 802428590 654280873 715984497 986469706 994405301 773653225 889500769 914185484 999073457 654062022 924606150 784180243 907554102 914867975 916004262 513542735 735311850 975181284 997180488 692901969 942038093 137257108 254088083 551932550 953126434 537243440 840666527 41184018 520560346 240698743 742172595 271102547 448984544 880258241 929570039 146989850 918101545 259522996 970399948 156450219 996801951 278880291 709746345 445606632 462421666 477571433 667165055 170698059 187105512 749780754 876356277 706393375 980671427 716685453 856957806 293772069 570960101 771875406 846788983 402013083 914635773 353931260 689725412 188415273 413723453 4085409 53120339 740720564 823601777 775757594 953490686 138357851 883739665 98769389 870167492 48486581 193030755 732756805 877837518 418012954 598312153 551399826 677627100 497562657 778752391 191218637 219351115 948006484 985419551 428433392 931486273 215111949 553363825 567470924 639925068 860944731 887378007 802720223 905863090 542052646 800359347 335068334 848057665 277586297 833185627 562939409 840271999 149189264 187340205 903339979 953779308 786943250 989308006 464211386 762267772 544979039 939512350 51469935 487505698 195257462 770104927 409775716 835730654 542729805 908615339 189047385 603999647 800251575 943679442 388260927 468612805 751440543 841758700 617803524 762016954 672113025 954523454 428884538 766348838 273289051 442811045 188971890 965669693 754850541 838307590 652593508 938939785 722572803 766341294 364118235 763042549 12279170 734020338 157838537 823424024 724204657 943789277 833115163 855198343 4104552 292601417 839149059 907621749 483081116 608853266 568168952 686333195 689920449 846969372 607645339 978452875 240799836 951858765 126469931 503921964 620471783 645178545 441644673 602082864 355567754 955709768 819937413 833783946 400373692 578036179 737488896 862942354 575655516 593928520 394220820 869421199 6547938 899427776 325938133 644315108 414326261 445490406 815056622 887023364 565157096 698930743 89656029 109712436 398065460 563171552 779456660 827014389 875567651 876181536 5961977 948235692 179778353 477667773 321438286 334760796 813860166 988931759 458691649 932235034 432680074 829787977 208596782 739962658 407355197 748020507 362522040 557897771 609387253 740066717 812974237 911225449 683792423 708290022 599733142 611383590 100300376 506804536 440488084 620680433 712386084 809204427 180297115 244774899 861260514 886850032 552329449 850600944 49217584 972420784 226472230 441330003 52481152 997555770 238298367 381693232 134103509 280308687 63604430 552609012 312278978 670658850 346706316 564017332 483681350 575402195 729111117 882974327 364049587 524912550 727978167 770484736 138280888 618218985 428829159 579436913 394151454 449536630 493012302 927706496 974951173 975936612 915385351 921219049 809209668 840015707 18653550 665578647 897319985 974822449 385380492 391636619 134571506 686863786 154135401 430426785 959100610 993528390 974027183 996051764 309289796 433338034 262264033 651941468 47761854 650269421 740612090 940324491 737329862 964241269 535457047 864287049 925334564 941276194 337552825 542623499 794849188 963795159 696375069 914687538 334837651 870812940 47728973 848708951 742631477 939664865 722781605 736642625 693406828 756715614 677563756 863588046 175830282 893000233 95936693 600894044 508094850 966680020 455932028 942825984 617568235 727751720 973457498 996195443 318113671 825006184 501906108 696118932 176936674 790773388 181845515 598275162 910359228 945868768 478934958 835568370 685971451 956852806 682116404 893418893 714819434 785643407 748941788 949999208 5839172 448004246 637284217 844574882 961618690 988926877 291698637 658928872 167655880 425903305 544478060 652353015 75721 489571027 879167941 933133162 398398049 552574140 18939091 731601735 910244207 975884057 445217545 919357040 199184972 427369959 43605327 869446156 254159635 983288860 843768581 995337031 76045845 386792457 956658520 959121854 157352152 360553038 541682417 583313430 71542518 750270163 455560232 474670726 938123551 944053029 641698117 998412637 832486152 912058749 811650436 980940637 242598927 514953184 520546745 820664493 285664101 939121476 936313441 977454637 181700865 954995990 549183513 790575470 949895010 973663614 519613960 632871633 64987597 926693302 861460994 913777384 149075667 237870555 949670959 956157907 580004058 861286368 814755135 926640570 468854147 830573675 809270327 996045005 510357189 940207658 178095928 370496069 939665004 948416566 740185041 944089840 435400734 496020509 242589955 769198071 817974731 934421708 669303811 919851393 578885149 976566748 88296528 848219843 380912927 483763470 364384202 836758438 911572553 946242454 318719099 780631758 714276983 852706562 547891000 953958675 197348603 423673954 668596700 735016644 918316525 935736613 397287870 599041612 364822144 507216168 501931805 932838139 782716398 976420703 918664915 989780676 855299800 912624229 143719350 465102586 340124605 550593807 110702303 858770475 645541684 778673595 408236537 746667921 820737071 860139005 472221126 656527168 359873443 879666245 286020225 702356507 718591049 832575052 281433269 630811254 877841312 987205896 398955172 449124466 479064059 786971880 483110257 786745049 584841472 957852934 868935784 958743501 608333404 842427039 928447405 972087501 797428142 989768281 742906673 795599570 109716802 704725644 170097243 534765082 346640195 399058146 152351944 643030885 63318933 690818287 278853875 995692753 689311903 965081494 451278465 456475508 80932057 920973286 8370123 239828677 280270737 954020768 740279816 910048961 931940265 950949363 381557122 932805076 197051893 878981129 50249719 800343967 973194500 991912812 193773867 444686923 267992310 437467163 570740934 731870607 915295036 972150337 510068144 698677172 326836849 669722909 912576349 989916707 31908646 663052631 127083080 766863248 460533872 638904808 747574252 757578312 635886844 975659754 979468606 991991125 182210721 618347671 872187591 890920007 778067307 860340165 465993695 876198909 637180663 835277406 646918643 650037337 92777055 174167006 968477880 997340839 182187708 958582052 533442892 939443765 870275036 925523491 965498292 995661506 114208769 838928522 52606193 674192924 244499209 692873027 496592692 744668099 953991649 986574172 253852692 854170367 633555961 930089740 968314064 969719570 953555737 984521648 836472602 891923829 540652034 557291854 827711314 846216044 241006905 315258895 731966984 934386466 25163957 561404407 700174748 902679969 622816151 642331180 310061634 311216276 416052112 420837392 816271092 864164197 843433589 955297516 428770622 875394858 364149747 911054322 948369139 974155052 762751011 833997521 228474825 420074337 885365888 986733061 304107603 746880122 78714953 891803941 582384573 717422301 301983718 877996945 318462823 869638262 288769955 943770347 751033083 902384276 367796580 486042008 823488014 891486944 945249841 960864171 437574767 549385501 321380929 678734096 471305243 561754864 60755484 358803003 839406331 942657560 532809625 691285287 623662108 936127046 991582061 994759889 542770275 980974425 511821858 673616053 845371632 851590007 159747171 892648263 450253810 926783125 383623134 971068954 110284966 908227239 636444642 950303711 903299277 973629640 977379075 983358836 435559041 842195723 237926121 267773130 165559367 365653401 975337782 994859804 906768491 984902875 83712059 86309978 224626523 367509642 770621231 994686979 825281272 908265460 600156011 763839366 763107950 930941399 834320966 854816221 403104675 502616339 368553610 661568330 821022255 896462169 331452773 400569287 917930354 963161331 155678085 913231559 461488619 748958021 423706877 932290018 13295507 908745761 319254526 653115219 981504061 984639259 485785504 534308479 191504386 291233852 242955767 293027122 258983585 968178686 755284442 842977118 564285098 591866560 619375292 805084370 780428890 850308638 924888837 931371973 517720007 710058083 442043025 862602519 89093358 564839517 452078470 859756015 270134480 971860848 459904164 500428663 945811940 993824812 160912261 566019952 83997468 562412579 876221439 953828283 819691734 935326937 532198828 933400463 152670262 405111112 634886949 679222434 212697235 517380876 143679276 627986558 570607050 961141013 458518099 807458367 798498250 935020755 486024340 905712888 258369788 672982362 750101992 797928980 264157667 683490327 657440674 840437248 957536511 996196832 209672684 264493095 214419514 834242848 149155225 603625222 467590617 651652465 301557064 451762386 294680641 820282248 627155219 816627248 730299757 803629600 132097943 858867597 294619873 558324406 221739492 582090984 913357037 951401155 167796773 887535450 828192038 865420137 135444124 539393835 299536988 946648988 106058391 549789652 918209184 990393160 868700876 964961528 17999420 50342703 184348570 235572325 843706337 866236638 579050152 741418761 138067528 586249201 209689265 817441392 578757388 938202365 82666647 692107425 647230239 664764661 546761894 574685171 912296633 970995716 249239709 525649149 819617764 828679851 159236322 593859091 191000915 407815477 89898738 406140355 16801575 966934669 66029071 449512782 211167043 558398977 40417290 778120685 418791084 827763130 574481151 777173981 807046551 876594301 737271952 988041933 699860603 758891589 774893570 905887335 399176842 449199291 53443501 354549702 558878825 608061177 415887081 640882153 995767339 997669406 343538635 882462111 798494617 864509739 632266476 976867414 8556723 342607224 815246722 824941184 922768962 975528582 345164492 681630920 728293814 808347315 805203319 845854902 375437741 754204735 939878243 976972667 782145121 790433774 905774349 916000968 650865956 673150543 143763961 358887572 366194444 583040464 846331112 957897996 750966849 794350226 207780629 811904744 81563009 684422812 239610565 970899194 22559239 188077363 322048126 656751311 957434564 997401289 245560157 681302045 347284084 656465583 704112655 876432659 277647498 500438515 711292244 722360916 734015208 787115129 686343904 957236674 961719464 965141954 202765292 764645403 95828446 926045575 913954473 938533720 293316564 782786780 885714599 973692494 793337550 819268574 105023345 516409472 408120262 529828283 566253722 850215214 281746502 445767828 973655814 994227358 239438432 419533270 257188876 912986459 623863466 910959699 616731847 909411302 243722983 552840071 469912598 729235739 88878815 360082477 956805023 958815618 598129134 911607605 362760701 582803882 365396795 467686258 210332265 490755738 987202980 988201344 948185780 953492611 672767649 921750659 126727699 297899812 896646373 967031662 821432007 828553643 499685938 914684709 278304024 895319688 71557458 206754529 634279632 654531446 252959638 729049672 683527377 821605473 364488878 460927027 764277341 830147430 953831634 969172771 889107722 938928352 94213044 615526431 806021668 890750640 581510894 863833722 730975968 981002890 287628798 790943286 924231492 949946027 632283200 837179555 209088446 832953300 640692730 684342506 811951197 999500900 799947145 974713993 294257187 553346854 608277531 824666117 554035416 704852404 8705409 32252095 988059720 997263130 719348281 983024987 834496108 894040623 648640363 963434593 682517427 714111653 911783441 927001285 217173344 935596393 470155098 933172753 306355938 475521752 8198000 220642102 457353955 814582608 760937554 866687398 285125014 704287713 962281491 966838044 133674461 237399731 684075899 689216703 674213472 902100020 942511919 992367349 838422434 888518227 18241539 46276532 50780708 796404528 500181436 821766612 307958252 321852629 267083931 638099711 590355506 759345359 584207335 781060134 176857713 223271376 808070500 969749280 572236339 795656454 665891874 944418746 402810642 917387303 109614812 885603452 975865633 992148496 443343696 539094403 646069980 913287675 831123017 969070281 254742773 665215384 61115881 913134114 668969501 802618639 210476467 946277031 547129251 712130452 989121513 998519780 463855895 710614232 928566889 990561021 582715717 761372241 735898559 967867723 819090586 984060073 434727398 914266274 486430224 779249708 653126072 792317246 398503236 532945803 842900427 919249587 450565402 654830596 211109981 968650226 763037464 995491575 643416981 719970896 764229004 833287105 647156887 664354413 49919293 799110701 29225665 47333633 958887754 972557275 643165530 812367567 620859075 919736291 445813826 710003333 666543041 670203799 312346856 401319630 333659295 402325328 15508248 374082237 632206897 993061318 518979327 752846434 964820705 986391904 206374639 614962123 259631942 927755095 119380946 899573048 884679179 990189229 640450425 881207105 526634343 879667899 664495923 978792125 2505016 859510269 936450780 952791744 512775871 632106656 635158880 740285524 876915894 994947827 376948498 820832318 596687438 928196081 135390769 380887505 993269691 997457601 59188459 590568882 12934263 30383842 625233751 650887667 349223133 578775837 703361348 960907858 95197163 504939111 485566399 831884470 720372616 784467050 722870138 723033548 616673770 855752968 953581026 986913190 955174374 956476729 676746851 742509329 852094517 946736341 603209447 822431475 958908556 959351416 901849129 999625113 413355979 472143452 390009548 544202373 177186513 697061372 655435612 907804567 864153364 968730030 354472146 424677872 62075855 86918127 446400622 455644848 455513163 790417659 737517196 804510264 746783575 875353247 927094802 952153493 165785574 646424126 783298889 791009715 621439506 884498858 96073855 882010696 952661510 992622636 882792299 888245822 48414969 568350606 981918096 987923814 264063462 519881758 820809849 847781016 127892111 803003754 677039207 828479010 718857937 737371931 205140201 356214184 742160999 895230002 994456704 999079266 14477871 841484000 457252015 614650911 933746683 993598801 825442473 917901840 695010821 971225072 903443458 942379803 819947156 873717845 769535226 999731701 609636313 636872071 559863227 634330862 854696468 907543352 868184825 953574797 928367693 989906252 259431840 572419650 582698508 984654633 343899212 428864781 561011328 764007282 436019363 760610448 780341700 957840615 100800696 310989117 251460228 411687541 65498231 419686604 794977740 846633304 203869517 240957248 744213286 946902228 343902572 452134019 834080429 844618379 483023034 704592380 642620874 732542445 382239811 788055489 315525468 338685975 783823424 868531065 901193141 959110906 735904679 862341750 397259780 414100998 564430154 644070821 537825732 733301633 657015515 675567933 863392545 896082162 904827464 924136463 173291563 626102166 900685255 971219346 89073661 860623798 383576890 801957001 747953491 927135940 912801056 973375759 531515323 587359822 458531696 984042696 219177038 300653690 189443723 461803305 129072439 573645991 304658369 438452201 661591249 746698791 505712941 631646694 844717503 951975127 356531309 834091659 177137839 790805323 563336146 849169139 557273240 994433552 703307705 719095713 435923665 451034708 854857038 855352335 196763681 929408998 8327031 63042632 311035203 331735955 972389484 998883642 306272162 455235486 483335341 613834475 550865761 877524919 341603583 752038398 60019540 507276600 417371891 717068753 35960044 61021174 87555207 987762024 752583521 768865419 365934721 946594749 565643725 796632875 565827834 966939184 838346661 840612647 322374465 425361043 884684875 986289829 21491604 759517157 88781790 153335505 799065508 952736239 884025667 955717570 21927898 556619583 941747575 956913868 257644072 359265580 845951869 858378581 557559555 919927976 52584561 59666016 444031740 516797279 995920599 996572420 346200678 374345355 256077732 424419102 925003068 928370511 885950918 933339973 162805670 268779126 936425012 938891809 443059296 659937318 565163856 978556751 681170291 956865168 389617283 399268852 141989890 937831353 851162612 944025143 76763070 186131481 549515458 803762766 303255634 480307928 611218189 635508410 694067330 732844732 511571968 823899106 35365987 564690658 367314880 585443156 887745391 945295184 553463239 619749958 471283569 846305051 494628215 647392046 497125551 985245943 679410277 766948889 263184987 643087098 614351218 655833040 862202986 901506958 635373186 669582832 192940973 620913919 697227624 902665913 767308503 888657485 544034885 791944518 360692733 683042262 531759950 841296431 869124948 903405265 945260364 968766804 625490299 976915622 36204579 830745030 867367243 986422783 173467951 433868617 198049592 475004666 944140229 990633768 456926488 623970850 387394278 581000889 602718883 996241157 362039740 666010823 482234814 743892200 230293167 265191563 42297423 115753438 295927956 912290674 612467244 726997651 92920014 982085394 152673515 247640269 993457692 999366497 554100462 715248324 726545391 730709737 221506506 507832180 812402243 852531378 478766314 733331959 675863063 865936456 847256180 899416738 945765315 991646647 278773290 343319865 658232776 873128656 277472926 373802316 948230710 975538987 146000151 989563914 692550897 737195985 272793607 569479039 738934683 900308038 216445789 947665764 933819355 968616772 829117809 897106032 350329166 383745162 736794320 899502048 83814247 808348104 453852923 823793203 544657306 688913308 97863533 874508466 990854873 995554445 629925923 907811098 732641880 864363837 963791598 997497683 940080699 983701677 471736792 721964747 137600936 888116157 332775445 916685529 564253107 784432682 172457378 814846225 191351005 446962371 447693032 947510033 170494959 949231488 372506768 851466142 236532063 500359085 703761877 895483064 463655222 830901685 420495243 765931346 228022034 782924530 274355353 646375158 39778687 586433358 805665310 958647538 766032711 959034731 859914506 885329597 692402519 821155245 595123924 653496456 752059204 932272205 453747610 559181595 191225368 449612110 354833175 940839263 894967801 897135717 917123740 978288422 290370169 499678310 201323813 655463771 685541806 899432106 468205481 618707866 425235259 924992174 7844583 461963329 990574471 994884827 21903879 166272004 190771377 370205955 767556588 834151542 764139314 969750764 964492845 992135511 509628592 863891355 656855972 718695438 185796120 744053227 990173921 991702975 456572706 948010474 355147364 518559981 776290036 915591817 906681558 910633560 6150877 890183820 39904210 394889682 487960361 668188344 790014292 870167297 438530055 812569590 928450810 937292236 157679133 527432910 398188643 960247126 810250057 985806403 67792389 723945107 786217581 811791325 516097222 609710753 546761906 873992228 138863312 917266845 339363450 848425472 155826210 516319561 595665617 982526016 370551530 768998253 739251471 804467537 506772644 689984189 681071966 936960697 221601213 355468549 441956314 806619162 55917917 540237094 777900889 820040342 42785106 107539799 233013833 641545844 694027329 851379665 469364630 634072731 71178913 241637569 197989114 911060463 607271896 675595837 363238596 372909974 69101921 192940696 328027691 799829200 372467800 921501181 365431191 496350681 657240409 757604627 355200515 537369091 207425522 263922269 478591200 852197014 146646439 312108496 696438779 845194554 652143911 743624280 803330735 898574530 666477970 831768275 92664450 461134326 935429321 992961601 441412644 576420878 326227527 571380645 616335250 948811995 689684518 843243858 948919671 962104791 229621805 254332300 109298583 557801316 902875926 912426520 153993669 683392890 984848944 993334707 912604603 974793894 103741529 838796314 65023802 975696524 782779436 899967849 578196154 839516225 729607695 993976257 651588023 790789461 898024254 929317686 801644959 876132661 201194593 604674097 711619356 716678042 247935694 410381609 598407942 876048806 54410292 488385310 322513265 424241970 376716941 952429601 277791260 378882325 821551269 953146412 872500489 909587650 982410633 998662142 922285645 940481398 416519457 604030788 780809908 938321820 352279381 940427462 101516159 425631274 662666413 696241410 153973926 276924860 824328164 923241658 728031810 789520285 404632778 910423380 435318069 686299468 629782300 862227234 344279368 916715402 685112361 742634595 297265286 740557795 842350370 872835421 914953666 994736690 939835575 981772060 989230582 990851964 458424740 826688195 323512766 863020849 439535981 975050595 670271803 741549470 586556151 974265919 163121401 739813618 424282832 978184984 96895379 331337661 160977185 685855930 721996597 805693017 985324151 986571752 126298029 570616606 759128320 911591790 386648582 504374128 426692407 850729989 156342857 785339835 15689847 963962274 327261856 744334109 997752147 999572903 365197226 996952724 566866972 734767076 545697212 750832999 242561107 857544369 675740647 975564110 617959760 755750333 673224553 894812930 105535869 136215168 931140353 950281737 153187740 272906911 807007076 994427007 797197688 887020886 615799162 776525950 258953582 924766326 837189645 942479235 751005428 867719908 863836927 956334500 504327639 923858820 210775851 471114287 814678721 838882274 256036165 651366011 134460318 400319289 829880553 929478236 682338510 857067204 256032169 479083002 551172360 920088710 506884920 839079138 576910780 825189295 653436274 691180350 366292081 477960661 428670628 827071868 805945258 997481454 600784429 968360785 357657759 460163591 41285469 258953232 881866212 947705299 739918823 803450411 644465662 782898271 942505241 963286395 67259479 790221229 480877302 506910495 482039850 590834882 479254659 721008920 449269577 541062722 572004307 847316567 494988099 520564033 627284039 994159849 864652552 930445013 355508290 530386367 39708179 922723425 713235140 714269789 622255910 666397596 829371174 954910112 653266856 700172619 896199896 935809679 700241588 984296137 881271808 928004754 24376724 728676142 185878566 224069721 882268555 949098553 473907737 545829238 345629293 892450820 867166641 935251068 277477449 975827956 635698312 969307509 721437941 802076242 208827228 837680756 114010863 649229078 617551707 725836407 605081394 700091988 314584714 726558039 387118371 753900671 745291626 782638230 641757203 886570548 80654150 286980995 162045332 197829398 109291860 953073346 824060001 960904939 600629990 637206204 807823505 983196455 56656409 759957413 517799430 912213032 945643005 964524728 196257462 696852595 713387023 791176652 444489420 755910753 188895864 402607392 901065977 908611464 411567093 882103636 543442838 907254076 481687417 988965724 316268411 361957838 778225850 989548507 764898384 830420509 869074587 919092402 637017313 876331319 170845376 687571932 145011943 848339596 147876998 740316067 83082666 836907875 530638688 609980952 562935409 715238963 150692193 468355496 273226868 582709117 479660481 820194200 59767605 444655086 547559222 940045066 118067451 748330630 267372639 834926816 380697469 602082270 993375947 993732610 294247853 460194563 341411957 676771515 81082125 518854269 864141403 998346743 288340811 608556790 88848778 522601207 696639467 704639400 243731101 455455476 902085251 945405126 681518433 886268711 193011767 821366180 86947060 544161507 541750650 660448811 970739874 982246193 63709117 781130161 318952126 929122026 40275248 179139547 323871501 365825843 685730081 910490089 630190391 775493218 339390187 599969370 602659429 776177259 664635794 688822112 311948452 363859605 188101225 951322132 989121750 991878625 213584838 426198056 55564389 192830405 846935076 914950592 886357584 930154325 173409438 773757568 100812185 377982394 806120983 933650103 884143039 938770392 751900263 971280174 940451172 965132074 917545141 959846301 507083891 625884468 113046115 991150278 824364814 956360934 461212501 901381412 23246089 676688516 208451727 988692121 968318990 998673236 117965550 958088959 493295911 838614958 117893164 505599627 25424465 611083919 324007606 386567557 876520266 925367838 435147887 959671352 254283733 386969023 339291582 628643267 265369006 535057487 706848911 849019050 868187163 925043924 678484758 704381322 680430471 785066242 836735926 998867359 603726467 880084058 739743366 884172216 817186273 902166258 294329952 974072764 357617846 458896533 333405711 493811455 247423293 820503351 770188979 848408338 580043739 736213970 466787685 623316157 452869473 851088074 432272140 765561775 292800736 483571125 41912028 272682073 294588012 410244956 56780992 822226488 410767722 615538045 622560173 930982734 147893535 735876662 81779061 793065337 1202006 107930112 602055856 650760032 946822982 996335249 726458428 951072220 905413091 925767691 755078377 894423007 820452 863691428 700865817 873012613 896524357 943099207 954507319 996958454 934083168 988672965 282102888 741754394 490008761 868232042 617652115 654913071 495303161 900938091 973483195 977816114 439583179 561048203 253605764 612874230 998125357 998347600 838394156 974906709 751828798 762469493 766720393 928203634 346272552 834621034 528934863 933712640 31607455 46147175 642556667 710581455 238671029 982796754 352201945 580329819 117939101 676897471 248854895 677532355 928603012 982754448 699675889 969628235 90389843 308966369 218285526 914023188 527657336 612544330 613535191 993441812 776562540 953745532 153825094 520886845 231217883 535975677 766318653 837715991 394785622 714894033 215239678 791165211 53805387 70259269 336118946 560835315 536551634 663194727 470414535 597584649 374690441 867890517 581719871 719379078 203553438 502641462 573068407 936184399 832512216 967582492 751443078 960415802 161134336 194224353 623877406 662609258 51174494 648289644 360036539 968049738 614373699 929387542 363445453 615716596 468620487 975382706 611017791 761442823 275681273 955271734 496288460 609046854 236895541 465476628 542588247 543485616 181100888 465066460 560663114 573419349 909649145 921024260 917476959 977101511 824718570 951758150 791736991 809338695 125150924 996112788 295502427 540316659 623076548 898070885 392219010 929318965 32471677 869457201 115765755 922797902 30089429 166667032 281717692 787998711 200681865 640105779 515887609 961076122 328959010 482116399 89529390 488807880 862477453 903756975 467578121 750926068 369990703 456043031 211569560 271532067 600889299 629031560 634923837 727831854 649001192 965582011 393226791 923767687 340973105 342629583 111258354 430370748 209394045 217316270 837585046 946261932 284202313 716329051 137512143 786682980 756501773 908983230 927090698 941244056 689544797 944606927 639245354 890752634 620072651 622031628 939779155 967830531 870955088 928341304 548261459 779672303 378190306 503006484 390150577 869404122 852568772 923772704 421652427 747220576 964498161 968939142 780044561 930387486 87029300 375366250 921172818 924882063 752600270 842698948 880569630 994071217 667405309 800038659 112151742 690030285 114302002 320611597 660742469 941553773 829036738 872323741 647683326 695993111 763356021 815252803 950241053 961495788 799560990 892194222 877081380 917385073 120836354 603373033 960805091 974978576 103955771 645212654 758775437 989805641 907631170 926708317 64325899 510337268 296214098 955890707 556812057 673314004 162086135 383223815 613559631 880103537 737203893 782181720 260930868 638917460 789161918 869389198 93514791 825316838 823317854 860998710 759278657 813369065 371065315 731471581 584960671 929680064 855602986 875163793 808519547 821147111 901088796 934549177 37232628 858425954 928758301 954627352 308417689 979055349 688113447 831554161 354000994 651803434 35310264 126134313 131331971 612385125 89974340 344568598 360133910 729287862 116283881 866142734 713218210 803467151 438365971 453588013 996968203 997749682 378212167 955689842 919851489 991705119 762841338 774516292 183763199 314503626 48462155 956808225 395745819 764633849 520916658 718618093 826792629 999241228 620771230 798902877 951575150 984912624 448925115 756355386 8113361 90230629 970374966 984020576 759710082 885149411 173677760 523837067 105821473 385041988 878070280 934680309 376805622 771060149 139701134 163790198 605601174 762956383 635246735 823711516 420494080 797555474 552533335 611512379 610396783 949947642 233247879 656888690 163592104 626732599 500482105 997886423 749587395 956076211 748261742 861857348 567680071 915178646 294748292 317212560 765733600 782545510 864137761 904966975 130527667 677699473 885715204 989531952 396152544 574180161 690160894 943225616 435856291 619981542 753393251 755407029 7034975 752780566 580925463 637292096 242254936 883931617 40864421 619573898 974476452 976842937 407364230 571896266 825672643 831487975 138634523 245215453 439688333 572803952 936968299 943138487 632974411 956466317 516374668 804089210 642239235 735043419 17654167 734311188 632094184 996142607 763106375 784311361 92598363 475613895 589642205 696493973 745954377 913460333 798071938 811059393 322799147 622735703 565345527 917359750 276107491 823154173 371503719 797276469 710047656 855547535 573417716 854755159 381810763 421087957 718960376 906075712 875143610 898740383 905114105 934051322 420650434 876020618 520608948 867465529 569645089 724929528 563991052 578879507 526108426 646041349 743387852 930572436 410989752 490491038 118031764 457285303 124506411 806058015 14056231 253070506 327444615 378969718 352657422 467874979 154758109 857074116 47338435 862650486 374900591 856543088 240722572 940535234 524418805 780957484 553809092 581865201 561403482 593201591 440990398 619706325 385474373 940959736 230317506 387664258 705162064 834540928 944445564 958673088 395002112 607203233 525606519 532659831 936089510 963465937 330890716 531410150 319243748 651421317 769469940 880229277 266568913 821670567 265608962 651220372 863683331 985659446 142539229 451171387 862909280 904615856 576137593 748226320 481778527 609625909 630905080 738561968 903157026 941783148 116253892 323221106 854793759 981565061 487596717 822401587 374964009 765739180 157933665 452917982 915584054 921433073 324212723 538344663 446731670 724312463 922869351 961001851 189027134 293272654 495983321 843861188 165509473 839982834 398215674 794388360 499957983 686697600 325064324 741375981 754747841 793969955 132393795 592345383 330146111 996674383 408389956 897900828 449086724 977750756 886045706 972882524 185603620 452287508 320698987 927856040 34071392 330055292 879334141 883126883 337519652 871140721 588931737 664070407 450479014 903539058 608651157 875986026 20900828 584048035 42313704 274849962 645216154 886695526 362082917 570489457 328210770 925577189 165172389 933182503 992906548 993048799 78392547 95961790 857388356 867886457 95114582 793402641 980723252 995459518 964804876 977082495 683626594 768219870 639614934 839999394 131713783 419520130 891644811 991272296 540189112 824769140 427874774 575189730 161844307 912215682 976374972 998274493 513734987 609045216 577996601 828241019 162842096 434067462 671809877 824339616 592916788 856005682 6847136 308765412 565666750 778356205 430511972 677671223 788112963 958458214 546882736 771189842 302994325 664495308 185472299 613478882 903514041 983445674 785777357 881844781 701779121 755301932 696727317 829118800 267523461 661620173 863877006 923589864 367791132 909755956 974056710 980427922 46016146 764773947 971250076 986046470 478564146 766364669 980555231 998306699 570226238 983165962 146721316 529392191 542962767 943409743 376606023 944928982 634974383 726353870 791813862 813837557 42346135 679724640 808573170 990949552 817833153 956341961 904418513 910551607 496881227 658041530 533616295 951753315 934712660 946538514 717633571 872295980 920234423 995251610 185972666 725652629 41796906 886752505 538858549 909088248 168605708 237547827 188992573 499712170 987829045 990246249 575452533 849906661 919419448 970959126 595454840 857683805 501780267 662503507 56427433 712731293 252333737 655206166 277098531 770263638 132521150 719771496 128756762 515703576 796844845 984099208 300825977 735361873 872358906 905689847 804565340 943256098 571795025 823458120 357045847 433599781 243275676 380276416 325343010 378467322 607583833 614613059 267088326 663668256 461027903 819263455 116438338 498506228 293410498 300160238 296242571 694594178 433622140 789584175 658268684 737526091 549687163 716682156 424883696 794372205 722101027 825834002 568753470 614596943 431202513 627592967 95261801 208538751 121306917 496689388 249367501 459087153 559259830 686167943 660615626 809336658 351138621 452574951 463517804 668321601 519955052 526403607 603071301 749646095 629892982 926783182 842635760 956630404 397926545 948795669 684771460 961507443 553261642 608992191 514666333 655135378 981280301 995425023 664824199 801608936 948297048 986545844 101975159 655461625 767606803 945752413 838797855 869294995 328839709 539327854 532550826 961315136 739698118 943844484 901462587 951278942 747002837 770850424 31911597 962702377 928939765 966141889 787426179 981520556 60042350 557573343 352236930 457264536 389794000 597740666 178290962 260594590 371478221 877984198 32750473 818477680 69940693 644201026 543144728 937671199 386180744 629837037 801443986 923309676 185367596 193903959 139066614 197677469 415698935 571402057 301350211 789872382 167342021 993776324 625063123 983314183 423418890 887591493 285813386 697668273 914749753 932907615 959461010 996786802 413349640 942001764 14522748 140536931 981311787 995057977 358051943 798937912 388536918 406251491 750640944 814059081 729503095 833142922 417750681 469799824 422831757 948588689 637276681 867570618 237116634 967575519 616373573 962938251 150560919 977592651 840977386 939620728 978672958 993619830 9324814 56661019 401061575 689388494 910046944 956393184 662423269 750006460 747971716 979306219 197038225 886319069 400084257 520495378 41655220 65958696 977855525 993036632 400416395 495218851 500920482 781930699 693133202 823859698 712257886 735048132 852803978 937226417 997565057 998254898 428071352 817665594 53880572 275360597 534631690 717032006 902573108 965082053 141851639 593806590 668631554 710530326 613970976 855255217 931258497 987000523 853979045 943815368 331207643 566019178 866940484 977098623 231004534 826587290 241327544 587087154 167056032 781025747 637403424 804252542 759274527 824645313 680281495 733106880 189928703 929174997 9279522 59919843 129070474 181799666 731850661 783012283 687427123 903412135 316705326 455024840 243048418 637273340 596541069 939611510 120375267 186464402 578630642 781599855 987078114 992175258 762251664 965507177 958098710 962072363 891728416 964535676 241755480 976377192 259654055 307857400 550090205 598037042 588593480 867264469 478656539 609483125 307566967 942090498 368778094 488563541 605989823 756715640 242052103 685505127 918353774 998635262 632360973 896320920 136492019 663724754 669538910 713520422 818124049 875347900 771750390 844414383 664455219 983008031 187867618 911655996 267255335 270698348 991813114 993825738 459239115 643757265 427507552 553366977 547485730 949173538 708838201 975880760 587207524 798661533 930969997 987634411 367443132 393515539 793933930 925575237 506709154 987176118 373490943 981956523 864151709 929069527 132722425 799988402 85375339 399866701 741564763 979593764 110489891 396718246 536827921 569348808 543794960 641171992 432227768 693164907 832285831 915212180 515619398 611875755 2790279 278391494 665742443 919543880 162457967 831491804 100186620 663576428 265230394 679692070 652851172 891935103 754441660 824599997 281572069 595162822 287867851 358221134 514814520 972458218 985623012 989613826 868117444 988164480 561484890 649748267 51300740 955505299 119291434 182788094 4213499 424817573 298433501 584339385 554120298 596356064 955737261 970462628 516064153 638498243 376851441 887003350 161626075 957646847 485605641 767332204 590454777 754214347 404923028 594041682 593971453 774794176 876434492 929532081 306929877 413031058 106772617 701486968 781168354 859633606 330387681 399470017 267027555 827353633 620586660 905648102 298153589 310937994 912122057 937743000 376606334 680507492 938631661 952105806 533169711 852069469 511578542 512670685 933657686 988944079 541331558 770100464 394926347 514661341 352319485 568294728 385285116 963192984 240596318 265984905 178613418 615099136 312378978 421377446 157627423 980596204 658463625 765139746 22501948 54403492 549283589 998598739 579378392 827534889 14665380 472221650 396327442 835695889 864977471 869656692 522420927 773140112 769834387 874141108 88001525 232743890 967724403 974002430 368758792 460320402 115589436 693209801 476075128 799201409 524480948 624324932 30213976 461835276 805646276 884475816 720554146 954109920 937896901 979217700 692101301 706485658 510680568 988803757 850341196 861699291 126351687 420432172 375868734 922708144 484051636 837889598 484549538 824170551 203646806 948280919 857141944 993979959 280107396 831437648 625809461 939583050 795457846 822094423 41582446 127392078 132176646 300189204 225671435 342659303 400166557 947107617 206305895 485759598 206605176 898246048 305373227 548996010 804110245 915656694 997170845 997897780 157542545 848202595 634548890 886876673 189910160 553226982 59003290 577943644 356517200 794206416 778258290 962909575 946134052 992282382 172224626 438610305 740327043 838865436 383042808 826878696 864174294 907296958 540105243 762943847 815831263 838910271 726923118 859304808 515991221 794034357 196919055 465770991 137500334 382442859 963751409 983050770 785088148 842558788 871573571 956892431 235354546 744717765 276244280 973644165 488255012 789407912 24583777 970201737 548021036 893580224 921945989 983458053 944074720 947711690 516123155 715658514 637191235 935150720 347250408 558875481 757139243 977355991 911807968 950345645 319143498 994275105 45577867 180097376 533765214 871496634 896818715 976186674 628658205 816912008 755571366 760211470 904614260 987783007 309363386 358107700 366276800 632444054 492717016 563199391 550038145 990268791 157463400 470874238 225244434 547392545 642577065 941115697 540980344 938783305 953146133 990724020 968035601 983481970 176137889 647973242 487950933 937972005 544220426 881688979 476926112 639172734 416188988 642416380 817188129 894958256 106860466 988865185 359809815 513926820 259209433 594507629 41077938 238257307 380645650 468502763 66750467 338155751 385108809 439373157 769522268 905607453 480491681 617351013 356098072 416060552 690401057 905034773 558978160 962394385 172169499 398519532 180185674 516388975 88845037 590246498 413196270 537144494 189004969 363031759 952844402 965046366 598670106 838837544 112086223 272639975 391937940 668619212 276654276 658751129 863089145 978376729 719500062 904292700 284952226 830946382 142003450 482136587 86946932 140683616 559114975 624227976 411674294 875875972 412006734 834972050 509308726 539328617 72684604 229175428 850405992 899869171 545028196 753414421 539035893 780167929 24456371 153232855 99971797 803177470 222964742 261230176 412665834 840727624 539702814 766130920 480223704 797495580 315113261 767928741 886514210 907708063 76661660 452059578 844489430 871229098 708194186 774848872 136925282 186204220 606323731 759971225 240329329 563470111 771676773 871720110 138896482 731653257 451158743 881023771 175182592 913159449 301157727 655725616 936526593 966571026 531443088 730343876 322689082 798368294 531121087 730265999 692879977 937907333 85212159 380734216 308750061 660349125 181286305 434806268 338155318 573317516 553768004 786231591 366036985 988238110 949333936 974179041 872497722 962508817 153185175 897775193 972243326 975951899 356949975 555077986 659050256 683590980 958092895 966274103 80963688 252626767 562194727 886533597 561355189 907282073 622446611 690045973 558778001 834346848 983212141 988640632 195589281 901447602 642826050 719586709 18680955 91411308 361832171 665213655 15431225 783685634 57855839 289582095 543031801 868907534 332232429 875807542 947359227 978886106 324315319 868281687 936905456 982061962 491812515 899810822 395097634 980336729 219641895 435329883 322694165 678057696 99593902 145416434 487125473 960513417 614522415 710019371 408271852 742413856 953807823 961432448 311977007 421614756 661024808 794766669 432464032 885352033 536408957 657305269 862407088 897784996 659267953 896283112 915942582 933410078 165205486 735377299 280419366 977146806 587011247 891459028 563445407 865716511 720129303 766531411 385018781 412461661 947214191 958092686 589966475 839180137 356759177 683404457 359096411 560251961 315638059 898040364 840309883 853828893 736460056 831382776 628754805 895043585 951472469 952533130 256332059 576354249 65572316 273473522 103228946 245256414 7490397 744298098 467140111 805782918 45010582 938521562 550320855 834170611 425404147 427042152 227509220 905183386 847961437 896930373 186443725 398980431 578681131 906245203 653248620 815035351 132631703 569572488 714834330 927170125 653037108 678486476 849275214 849276011 368677055 689594748 207009773 218709956 143442137 778838675 85579761 528046544 420246063 454239788 130434059 762084951 775084079 875792786 697992444 901861117 248358489 738561195 187836053 275175322 950272770 982266413 604042439 637585756 475378355 644374504 545725813 718758071 981404322 994510675 496024124 591833879 784586810 861888292 109071830 834064054 943823363 943852272 606927012 972380148 153171552 916758290 361214672 833178117 976116033 987746628 648273774 949985942 657324800 872655341 646640504 872801975 573076776 802173061 344661428 901386832 566056382 570658801 401463095 789661202 664511322 779287206 209807624 223533871 762548442 856518303 885785653 959744222 885547908 978659216 871440176 947965496 701215106 734984175 325749490 433319893 644159275 793908567 482526071 542432316 920915986 960423112 854711083 975883094 432018876 455395814 546727764 611443437 946329509 985114491 424289612 877922388 958674125 971077537 930749314 945243419 895750438 996696776 581375785 915699198 531783540 587611964 746476109 950859527 138298888 157732446 602141437 984878635 675835215 762769127 426552363 584653525 173095056 216602234 686531882 816975645 519727825 708438355 709865245 985572579 191186121 932897391 531589170 895525127 209136088 391237404 368707 853967057 918709678 939655022 266910055 890238207 24312179 213720087 945410538 965546316 608219550 885013781 129606035 241324095 826031487 926756056 609198081 955251044 929892312 994756799 451466333 760184167 718113139 775468447 411417260 530270122 226746085 461719619 32485924 439994670 287423575 450618233 582634145 630598928 372348167 731256984 524235540 966729840 131596715 230600399 312997952 974233145 677543780 806580699 325636699 539119848 838151216 904382609 28072345 427931086 626171917 813775645 688572878 815825949 826447672 964942586 517017328 885990953 383235883 418022782 676353186 850124346 806981474 907423509 867371450 980820097 117820716 402214017 442511689 815698019 39628967 737274003 935760877 948139163 965238824 985288350 417131670 541634873 901449534 963993523 914274539 960872105 307605043 901685845 433047836 757188187 784487333 915494887 707107292 725503336 661673011 662551143 350730804 694977198 53530353 641478464 89028311 846798575 276700833 421756506 821180252 890994661 973704037 981389870 974685028 980780444 775656941 850086395 768573427 987082168 249010009 674597958 167347251 630753400 912889320 960156671 667740571 971765911 34760503 177447423 953597374 991253568 228002245 736419911 323955148 414716969 359489527 366177012 849375259 887116592 947183677 947927771 553405787 707845768 360235564 992823814 516533829 677489376 294615444 733272356 242274435 607128487 982923159 986335715 15188858 915755746 80784485 384538905 858244267 902759068 519136926 762020352 397166410 544511109 11086562 969036291 864070693 955867437 229136868 600791778 638691830 930038255 64537800 394739955 819599976 959136730 483222436 934230631 600366008 803939077 191940217 221371979 816677919 828102519 35232184 414044035 211199600 379817981 882516578 990357607 333679108 497355146 954253499 961416371 747669218 796991130 619731035 635375377 520067475 960996723 278072165 935083272 810186504 894093666 143066842 405725428 856556737 988807350 76903409 636934519 750022900 938118779 860766184 925632900 477077973 808655024 696646661 867482312 793229219 831873154 219282872 907193064 533857573 594274652 312620374 570227640 653557898 786626746 687540077 769766913 899330543 942706101 730502850 764233159 486675472 843598627 120018199 153285703 849080585 886275089 496992444 736534047 821364956 999175198 899544799 980271672 461621695 907311260 595764241 921111668 15412156 422887218 159986996 966064877 153322274 698500418 784220899 931575150 738023543 856259993 558227272 850029118 324707486 608548310 575660434 628989975 926367870 997839796 369651508 979601147 645210547 686145083 722595774 905940619 89333266 776739695 706028841 773560406 907058743 918018761 202668600 722274979 269634478 273112346 370391690 689931242 299024593 995825556 825873115 844282164 195200332 501815236 9762377 559848007 855615316 860128553 887400933 977800300 582806605 838811429 37192475 355106112 243498193 326279580 73926018 940235892 296064474 949894092 525288765 693212856 82520730 761683256 900679765 924381531 163236705 169281985 478693306 614219379 773140249 991756382 532946450 607521687 769521533 955015559 551557754 575477676 401840265 471006343 55248787 851151305 320615262 648395711 704855957 792052387 585246752 676975725 279846451 599487515 239989647 441284650 876303129 912339551 510553722 792539542 210600097 699569688 649193342 736304694 766292065 958380874 863500545 891634154 255232194 718615744 574162547 657301594 885221508 927579374 123563660 724223770 23069457 95959403 622708577 641537848 741029676 990152465 849332089 939933088 257124265 743383339 709238049 828692206 336788733 867788475 728930537 913081784 272971491 600677253 287498903 483199441 610772927 716352494 21042308 175788349 547174846 952040742 87489288 155326008 80482700 766022911 231436930 812449705 743056846 969334179 35246545 339175832 689527725 868449150 316701325 561904692 598725344 913094406 927694531 956773517 637176622 978624856 29798201 845594365 930267466 970278925 811582977 935970911 748287578 764728643 768784392 925768947 405977244 917527525 927650554 997458157 781203343 896486216 465694301 908014618 364476964 461646365 237236325 783093766 935697370 960196561 739446608 849400632 704351843 840401761 278403033 526405429 763339501 819655054 770726184 909335265 265466529 924703620 730418128 769634802 82715037 388654513 178946906 521955921 542952648 944614849 368732348 711432277 637935347 929326678 627816360 764998812 186861676 309928041 452725951 501687550 403375101 784557024 301891992 538043045 477961959 733215127 864093681 982360242 746068369 865353865 16612216 270777346 732031390 836729971 101812137 709466578 956006755 966038418 904263581 944987518 707141925 920611377 154774851 481901551 499008449 791828081 215775958 985600081 879676145 950854385 175659514 819359010 994638269 996954785 616509105 714988744 70512277 746766939 733733817 973576282 832641544 982875947 648689236 860692159 105742285 149483644 913352807 925549393 126142886 894639752 181564139 727417713 282806741 787054872 428400425 598400571 878694192 930063355 300512116 996051495 388993974 826891229 273573963 486101461 673123323 675828099 401021970 770717027 176079508 684250926 165038122 811276961 330401919 946204113 615875608 807192173 796382283 959618886 369251856 404837444 630012103 845913041 351514488 434364555 295644110 342164850 211121205 737643774 11800274 63683786 806032482 854350082 325979608 455522933 851247458 935807517 643771360 859618940 376637997 830854940 828258316 896593506 677269013 750980803 96986822 261266645 761172894 823438364 349236692 772820042 457954088 793695170 603077986 683301226 529257674 838162694 786000228 907476040 232327746 534007289 789143349 826647993 421420782 794535578 281953816 315599518 306513555 870352133 931477615 994564055 336627462 615698600 424667769 437286461 587737426 800192113 162619399 775346518 639223492 734126687 179723719 886649400 447614506 599655567 366317697 518025521 150478522 756968336 809561037 897848822 929384471 986291467 818295647 935918241 49810596 658737663 346148617 356575011 503989549 609466839 432411281 885184626 969540023 993039628 513376804 849936649 727941653 834043966 875819044 964918599 441105212 756525367 979470112 985251448 596027816 696744169 607176170 810892361 665801174 756070398 932994466 936388784 92542212 486176323 275896350 815364774 638712145 992160952 395204520 562770599 983120325 989053728 260508946 922635892 902442289 992942168 527383303 716537621 69243457 799031512 534978287 744770817 826262554 995246241 503693402 810572153 286850593 907588353 138666669 801316039 244291770 827526356 131059236 959847767 495134464 767948083 354913976 553425431 636238673 799294214 480730740 885799971 508904179 833821932 458933320 571841597 298614944 379219533 73460611 787731993 791875108 841529091 892983902 899672401 550151999 691177896 431036840 519339570 963984868 964067018 439232018 817575323 260859248 724394365 775959309 905857770 493431087 542955162 626616819 852901263 723581297 845509226 207572562 362189000 801256998 956291135 824654767 964821136 329119600 808568648 257160251 834586198 210262816 290241757 62231880 932860208 22951690 854494235 532771138 605856976 170729503 893396437 849627011 895529093 148834196 890093330 388097245 999725831 650168648 965666920 551287566 684907249 692919349 805774899 897958610 995580393 323786392 590638173 507923764 818372940 595404830 838766990 490741905 572967721 234481750 443345162 346446776 654544463 739864909 843156509 690664336 820872011 965507823 996530370 554915538 922854339 982995656 989152138 433227046 818055628 930236299 962016231 33387777 794603293 886491042 911542996 404876547 564845213 746172394 835786980 733374494 822088836 45619618 115693288 585727781 605725289 484745904 697234463 685644472 732854066 272831929 647481097 561618657 662264666 62946561 462657547 639285962 809484221 114930972 344582916 468190384 955927075 811142396 973616510 415658387 926369873 88356576 719784251 879563246 989938975 318233156 939576541 883158102 996094668 638769915 838002424 696939701 703296853 94428817 806646459 623633235 988593086 392735457 918232030 975266590 997327546 45646872 654222906 107584984 894577500 512325479 621199541 375811226 650082612 874069230 958730760 220934662 462031796 883484371 901895545 870815693 986517625 934495164 973747195 828476680 935072322 9585930 557275202 296495319 852306171 516476327 771948171 177170173 917471011 486490804 722512310 364140457 469610536 333756734 776014127 68057856 276950701 59695737 398707248 448376308 920520256 429303436 719607508 497761644 553102426 621490174 645061033 71732572 764618954 709410280 760139068 176525505 825646460 888550581 925270424 630147246 649833586 261863167 387709203 781219255 849970400 746828871 870712771 3837913 901476865 502771289 805546091 152910670 516520792 768491118 878987684 806383039 988209944 169241490 661818197 645015511 852006119 922529268 931824674 761169430 795344062 21827224 282769449 858990602 919644255 231818498 308624896 554891858 665483915 453902700 481209663 915243715 924034382 163046440 484815298 835098413 987879497 27073727 656707730 747993124 843905046 495760311 840538900 251001903 498637587 493409042 800669575 974938513 983106157 550221632 723215078 521987671 569401660 184529473 941215448 519535588 901200288 938328434 986777356 528527244 550882717 951784471 965072582 56843132 695262027 184521949 936650017 949172092 988314766 931012783 984768353 819085907 913743455 877900107 882087871 827547850 833709291 423313704 834238403 585306014 793638603 58260299 605229933 534280969 650800425 633564578 795168580 144749985 456715946 548573803 927023719 802239085 996909192 192273507 739096905 47674941 979196215 46214809 339644644 55547028 526405427 314663489 426295435 183116276 275950542 601639447 627432211 975919850 998215438 969513766 997804198 487800351 890795960 291320286 898349019 238198403 894066413 825392672 834977638 608667569 818917795 882127879 945759360 500453305 817602748 240741171 315156040 589660861 832176154 333963055 885010936 576915347 627465122 18672313 804186073 145406599 855098556 364951660 404372408 758623614 921910743 688392943 852526819 6955613 696259620 317026419 510506219 63881736 104344479 890742752 955684504 120526254 604482764 885449208 958168924 902904420 949823940 576690042 636431593 932793318 941943741 490687913 687494828 505990592 522856279 534171269 827954501 160925544 900880494 950226878 995085091 827180681 923410190 861379123 917713308 193042377 883576046 987865943 989306438 836443142 918714190 228286108 327498416 485847107 822404437 136896054 338752502 555072765 556602141 815415777 831277839 312870069 713624477 891463864 955926840 105915581 993493813 647232140 762191960 933882938 951397681 144730479 662525637 478797524 921852365 316005121 413604417 796529197 938561799 166169015 547719418 940216596 950713196 602806482 636343414 726808287 932487788 531564517 635939125 71979982 910173393 475684753 810550123 365067451 924005571 146878586 433005147 211642482 421644435 867486869 966231776 345288822 691958076 245620082 542130980 557919974 848784471 244554889 459657297 229479742 928880477 989386174 995339686 818791252 903889489 365632528 374203643 591555011 675004670 519036695 778969643 135852943 225768684 345083411 524227328 18361384 948238815 88529626 935752574 265025466 847999852 591857145 869559959 997203337 999755663 347685127 581061326 250076510 408186254 903986696 933002070 951399318 968422751 427889940 579178510 713797333 825325794 169278331 665793064 407203665 795496930 238803278 256250306 544808189 821659982 305478421 518072774 904913199 908563923 191000392 808133771 11941670 462994842 716345949 848247890 220813335 751779908 150356886 973646051 412568123 471513901 826948600 988517673 298177251 946547751 484790322 663733390 521637424 651517593 702023736 993814976 332022862 599386318 580039287 753680142 40288452 211256304 973661773 999967029 559213368 764484105 96499689 809114970 644545947 913677342 510016242 619019463 893813137 893823684 67786589 184589267 272649851 573577322 349485387 846224614 405900433 695680192 909043762 945152191 197304442 430838689 177993193 936331340 684660619 781053212 944036009 972496466 984835255 992960871 437903475 659529921 59219354 468147604 723550373 969263224 692828745 978499159 554589476 652272192 16310007 931484902 906792603 982379649 553543696 634693953 272762730 472055635 850263988 853707225 768134492 910537695 791664352 954801262 286432480 919526437 421394558 946241201 82591552 965395823 608709616 782913901 517522676 887679653 88708922 139015503 842347043 857687723 345404841 812987678 412964354 444232126 919604051 923461953 143688089 763212666 464968525 546512153 988254472 998954994 598889715 878578340 224708773 323916286 225247468 837188810 540568738 831796296 455098726 850790744 342013229 719272780 453317314 548495056 637257989 887334970 808633184 880769117 824512509 994469077 338695559 375245714 213309861 672591067 191421185 543340688 554087036 576624764 224751517 834590121 798536424 875224000 648110737 789337504 268231883 794792021 973215741 978071062 660717778 676097727 81415711 696885004 778307576 806656030 497856375 780087206 897723554 918740159 456667345 483168526 638345265 718689462 21839151 983298920 639519584 658751884 283271726 728462300 78906975 719927517 181923343 676559517 85440068 434521050 678882969 694933661 355544781 608366110 201836642 440337716 332994048 510672458 516392197 864222928 823386172 984864954 897095306 958450551 46406252 117844895 313685092 779976861 129486101 828108783 660632188 848288260 636335955 747750034 209262570 552603583 630002126 634428046 124585177 377158387 525711433 936657867 217618022 613938746 53658774 200657381 432916860 709839585 769810599 922647360 390166157 756861756 927731176 956356350 651871354 784424247 344497941 430350510 758412735 877441246 581956930 870840840 36954760 50389472 563426217 641879439 720185101 721167273 135572829 700037325 346284497 913406680 82644210 251928169 637639574 923370450 275987521 818957536 789579042 952352988 462724508 588196390 418101019 569614688 989657990 991430264 842233331 963821031 285701484 302298647 780699143 975014546 287933673 905078131 913416264 953288290 230701852 547673573 165315946 971541695 155151789 265069020 160806339 826352893 281208758 810339621 795065988 845580978 469647858 813810363 926228408 962223010 281605099 454613378 552147610 667847515 850074335 858600140 787545046 988991745 284947380 838403906 547703452 965868655 703172611 774004148 411272234 499141896 87444464 997075736 918107285 932079883 488361550 918573882 531294775 837128792 695916993 743589802 481796174 940657568 279834526 434600349 918904697 942539952 576305034 793909129 163354826 768260169 803630290 891339534 600518183 990590067 135011652 880883466 888078908 949653667 308997513 401171474 306060195 908221314 882508762 907949672 221389598 368761634 973041729 985110522 293140813 647958888 533191148 836743633 216473654 417108358 354440784 992407366 288390362 463772540 16731271 906345321 527484270 967944744 832334216 980253922 526586126 918194797 601533859 893559385 540665646 938525019 731997761 762903046 537284592 811244224 624606159 638533106 244281646 556662723 28322133 329127417 768144358 898659287 618932371 873851501 886929446 888652138 738869479 866106457 225903529 826666634 820113208 906030168 263426148 371077889 819650022 879510004 969221315 999305832 252488046 467190338 980363760 993050060 735495166 964685854 604428232 875372752 534234039 756308010 634202118 905330953 108680069 452549655 805532738 880056248 374739741 921914330 16722742 80557766 351363627 678173943 373440795 930316666 316871096 757216758 475760259 955551151 444627758 496105252 88255851 387290867 419780841 495520403 909713571 950278521 279546873 719357883 86392709 732160289 574992566 768420542 102817050 644466904 842622568 914596599 152364178 846124048 997911602 998803235 170064043 433729710 106856401 447807368 361616461 785851742 553464854 986625653 358903056 570406098 450060836 500485663 623687781 768541007 564944621 800063123 145654534 729196253 493490708 948505938 322955401 547233570 405821659 760891285 579659313 874172963 957183924 998227122 946852365 947877064 771399073 786654937 479427138 929416276 46056549 826722451 774825618 893631033 272440365 474457242 808942244 940451911 48609384 457247428 106819271 246796290 333131786 734881910 220423948 584715416 359523638 676540778 350236624 999477580 599885073 786613325 515732824 943783040 538258789 605577483 993143921 994744280 477627186 593571575 937295183 969464109 341968031 937738161 414241726 574495311 730613550 905288456 207412683 525868054 398212795 929757665 251990733 847750049 278084549 360565896 623357475 826071757 932033708 946081151 889700299 920011629 462286650 745238537 257721288 954244561 571729953 777993404 623917323 769306480 811651998 836298908 114591868 206228108 22456866 426557859 913883690 943983586 950687035 989455546 32517402 807618476 746896253 757091451 467970237 482792736 148560547 978973558 679644327 699050431 335384683 753474982 696607800 994091301 637593 624056477 674005551 820339891 761741787 763304801 828050973 876718652 528441419 703272936 83366580 705717301 54355965 423458763 682251364 862255837 525294913 917938304 485594873 573239972 742205551 799280538 803486372 932337160 57466695 832944590 982445644 996688850 845995190 859847472 551902729 739322911 698348276 707841931 69430009 437274615 597681368 974024151 971037303 977283839 20976648 655489528 178036615 555203606 168817257 546782867 986878194 991664768 138510715 592641079 429351916 740795746 853394101 903775299 463876158 682427356 113028687 892765969 738886041 761332929 46694563 838411437 961371939 971553443 36756012 998352815 953629058 994694272 116711978 801032348 930938686 984220149 719255849 943680615 176304602 799207644 30335407 141593358 19320750 380521523 759453516 902133332 309024524 768610964 866181297 963021470 476542136 604216966 454955429 943673203 932904369 949629929 87543772 215609320 897605823 916858068 892646666 945058899 423336231 945554334 632894493 790118810 331815871 597549200 144335557 463433032 376276326 518908734 13031768 539083874 832440520 932869075 628095623 819659683 99582626 145752579 981067205 993750404 257768520 319084663 522877467 831417116 359415759 945445084 973246624 988206270 72031372 852438396 982716552 995323391 688072631 858101780 685510454 982974068 553068293 560165621 82710882 599014313 532363347 950356358 455075813 633359486 765281060 812712475 301081144 723814235 566874380 801383501 61565289 384308406 509880029 615006637 527453604 832844028 727248702 743609463 771637286 923615368 344338727 967086277 227701428 267674825 818775761 829455867 968627072 981949789 131814907 788733595 693501000 841865476 841941677 857099323 179558179 334446557 58062729 443318644 76462252 572141198 439759156 479583570 567475835 681312490 713962774 737777660 204203429 281207651 390170543 892573804 216390904 933601153 456207775 940625590 969301461 988008793 240382703 368706357 466433822 982095258 889956059 901136203 443612642 767082156 503060643 709312465 515367363 781257803 40972752 288896275 958843337 994622601 398609662 584133551 238037878 757354669 498991096 573447929 778761884 801623871 126699184 187081796 204024301 242626654 194042873 429315279 75713656 260224251 571512048 700602966 384302846 456224172 966590287 999389484 281727853 434928057 42539439 383595848 290359752 462587711 604320871 881701010 598580317 976880978 746884005 976100118 15734665 201787017 122596055 398363020 320468790 426423628 251382358 268496856 611148356 677836153 205919371 579920888 694588366 866986293 536472651 695339691 502994052 652714178 28363783 924636930 747217404 876362236 239488013 402838167 734031128 847611631 693572761 723177803 690093289 951760261 782238947 916198369 725778682 849728753 144711744 680360397 107415116 398510357 474887274 498445965 313832348 359307885 393339338 995525486 290826773 499868363 219141131 948468494 826529412 936020304 866024316 944158483 345836135 656183113 333360522 669816447 577928126 593238327 638191385 982691720 156428056 815521480 725028120 924982391 420757723 891502129 22655025 643855885 103509915 273061822 893879011 946237097 592128395 932542388 112064661 290052836 436324245 795192998 492875722 866538942 456139875 458306709 718124968 929588946 833822395 898886075 150724652 307760393 451577516 911624058 829204185 966586436 646083926 736673695 844799580 877600377 71556778 490150236 193157813 633473914 247639968 522680670 633887922 973027713 812541282 814257489 242946968 751599849 764280722 851571814 914461538 948686131 24874262 840899928 307073481 942575485 904590659 941709608 645481820 706781656 496988821 625400105 908186541 998224090 896028549 993839514 347370009 985485768 613908014 668140774 634127366 750586085 111509028 688679165 155541388 454551210 137880141 749817536 80119608 912827384 12682798 601514499 857176070 973382828 104427946 838046298 271401394 996565889 586224314 837541613 920993009 924010984 889240072 944016762 570312600 977486439 500445941 974371099 765574855 864083368 801611925 872672760 144320831 342774221 692824296 923079768 227860319 617745622 696954401 750659720 656016867 846108183 193233895 882600856 330131888 729228143 668264410 778972318 107329397 951835686 387734982 763873054 44360065 68951439 265138532 596688788 213814877 336504591 366481437 701956950 847419542 958121692 624954782 857230685 26190013 801285519 663312642 714806553 862920980 908301573 72859197 773434067 724416628 961897127 874678820 931961322 493435580 728596177 904544388 921010970 15516247 862377122 669224787 880818466 120471430 721772885 806657073 913476968 410798329 515983127 992693219 996703988 452290544 915950767 412704041 879991533 788525514 848025104 256300203 717906928 994547918 994614490 930378015 981138591 319130694 682449476 819300809 844385653 690408773 962735585 666176640 898319317 738865823 767022625 289932346 772695768 320598895 443200810 758308362 885281338 745105901 851823795 62882467 330585951 107418074 847478925 421521448 697473480 891748655 924814840 4208774 313079529 714029255 899149029 536530928 914824008 387482413 751862162 457158538 948649603 768741797 911057649 383920124 689479160 549246325 861454495 146877389 958151308 785694608 935177637 882088660 977711367 237384437 960874933 870692665 946192817 756276450 980806537 699645074 801613281 725620597 791004803 855290589 921987295 694392325 782448162 304561912 795738108 439221123 819431068 364746479 737720539 269051378 974090215 870480229 971129435 133125657 929533979 28334323 258289983 582154549 888646765 95925507 280065296 736795452 820228374 748682758 767557328 725051956 762331490 290896515 804309869 866145061 921938593 411313776 525774258 840837800 857155381 326961839 676340826 984870239 988602965 461134201 685658923 808520824 910853019 38115552 855320227 563143358 960125602 521728429 998643069 251932522 797205815 952707951 993219412 545970668 976162285 213948165 608280152 793749126 992514670 403544114 819641803 49796026 979963555 45944839 633737159 877643660 938288072 261427291 473852144 760076756 974568139 917241007 957646342 429419852 947252096 926097975 954969142 885518807 985820137 475782560 948432708 713414112 919699518 820049906 850251052 528554392 684361385 598686689 897216552 941109449 947657712 897498737 994086628 673678774 762143258 13132036 38257763 545490784 895288219 500400330 604276323 874289029 944480194 580275082 856858076 187066644 439347785 267305946 402608398 203262863 543020801 738612933 767209701 571568353 581828985 700613859 865147746 781402458 955628372 134009330 660677362 525574250 838680399 250764905 922892209 345935314 392430760 814115373 830316666 503978647 602197955 552594846 743677648 16486009 70442163 648330710 751629197 231034301 530896407 625700637 708939665 759252911 962391559 552749461 563447203 227159480 510643237 757060437 838306233 562935179 904839985 217333420 367806805 777258051 912671505 883799181 940264291 828809059 862186449 114825395 632481448 558636827 947001517 151155158 891713245 983509702 983586469 189460589 190028274 867810345 962996997 512286957 887873822 905747974 955163493 138315060 505610070 732498094 938246471 783090821 836269263 192000762 544024957 162110387 418845098 704936787 902532363 655914975 980949205 306790309 957056984 858075326 923137146 78984308 832933662 937959191 992506285 515626444 957827648 614873153 622473583 94926108 896713241 237471939 377651459 469088993 876724293 466097829 481147784 521651202 920685243 579066360 718506278 383018146 749258019 760953573 863706554 109704588 251991282 710906518 723262947 902459065 942405571 590025139 606547679 924880165 944781154 385022706 581498332 393735246 657629804 162273351 795609298 901441623 956987503 511289196 754894627 877615406 935718617 842046683 983474973 279520231 609251683 501359931 604676542 688823186 917272506 924257282 934754656 317831475 948300944 259889952 524648276 188181499 894948744 484505535 533408943 179376247 561251766 960439295 961615174 544309511 842910674 556393588 595068011 422990147 704146309 393475670 507329008 223735955 384836805 529537088 793747574 318035085 627423880 616902858 741027609 362312205 817621712 134477724 853809222 258303599 890415845 847346532 849446360 158253664 629247558 939797115 946319337 624146323 776136277 745231891 864799253 133896478 838534356 379401025 744303097 483820301 953460341 30230540 865742094 182727644 246617206 826747520 834476120 58082045 449412284 722546520 884721733 222058612 563562369 59686581 973775341 504631789 515936215 642420198 675937406 892654066 985881732 636829834 722798487 944149136 947899972 437757626 668955829 49701150 298209775 211001705 307677495 195853999 780191115 392788976 729229310 502382203 792137950 992849921 997231139 206059561 835388077 327037835 373695690 687312701 692180812 909610389 942795275 689022937 780301099 64102126 559919101 884343584 885559325 666410516 944409673 623096705 719686526 629001323 991174584 635913444 902373390 277999632 903059612 554369024 992858165 652572120 892643438 431845600 832186977 728095461 832025461 186246477 210189931 212569895 604020608 377081240 869826586 550004958 990582469 362276159 626128520 928548667 930521300 153138723 983699211 434002601 865043721 143830929 923142589 723955219 944798012 796571585 841331330 992347559 993228346 222482427 682014369 825086122 913412701 561619369 660995816 628622288 726627042 724205905 956730168 731454703 901168075 278569803 358848104 149149818 363191178 116232949 487238723 190556248 467869892 269296651 554664326 959556664 996353360 234878363 239441273 779540685 847087653 699911687 908428683 270939428 842649968 662795245 729500859 107715363 944995529 785400022 924086826 75879243 240889584 666080780 843825108 417989157 826098266 236473767 900290953 968897186 983066049 793136304 953942573 563268515 925851977 528197872 800421746 131807002 148621736 75272462 415793727 594990558 922794739 271037326 964195334 340710823 700498484 278736167 871465813 656398493 823707638 643665606 944328363 464230284 559579108 76730965 669299282 671309647 933800042 364708112 919245287 318794215 509796039 144327253 243821002 775596474 962722116 178971391 592576698 758705332 916188622 770027959 925351340 183993030 581196870 571511040 697712123 152326190 463612855 854775917 893335481 899761568 930170312 841048714 876816281 423431858 640228269 420510059 833483733 124311538 624358255 425305023 998773409 702908561 726690916 352793169 783691439 258165518 569248527 491207835 860197982 282985807 665350900 963774727 973197901 38388288 47059762 449703075 803888096 241782467 701141317 262384906 562057382 462214966 904818276 490095029 551863839 526071552 722948057 458359578 682663468 764365883 783052747 484088363 992146967 211526429 230458873 359619316 380846482 754196172 956968754 820671045 824493284 309741517 766152227 4347971 914656866 608327571 827121346 439268540 656311053 473132257 869491628 141413056 148128783 815085377 956257714 479917975 736969818 451483576 789388613 604323119 754437347 5011606 492301339 474413154 954804633 729413060 873318135 415787234 654714515 889638062 913855041 465763731 607143844 99611381 483170747 209871584 648448360 500440597 925825728 499955934 545207659 113177017 953957428 213868149 677857277 946952410 999664060 505860571 607411912 427235031 655399639 471116774 993527466 405104871 902521301 10125514 286282137 304739729 990214678 38249156 521370428 877865228 927204114 900032621 920187515 258456477 434691045 371784748 408216096 919213770 975112416 270066595 661172998 97377842 662206700 881921412 956616789 342914610 670651516 418900931 678272827 575745830 757196925 163423523 166768550 83267176 306233119 525625760 904992805 145359948 206500052 791271270 929876923 404431453 598781714 619725887 917724474 28530728 534774942 458118762 639362937 84763313 306505339 470310301 813849412 547921617 775788553 468200979 757673274 941700593 987965556 257942299 349630659 728950960 819876993 487428321 678095948 676308193 721250916 673125333 810019775 84957590 506230207 158485751 818809941 270021014 825558232 142775497 618723800 639776506 950266344 694521882 848734601 280530905 834193467 228268516 337223907 543473542 628832341 321606476 965115332 94662823 947573762 889557906 978971143 594027878 990060280 456225022 642837720 690862032 756359161 246990495 396263092 564640766 893745600 348573597 868530462 600400946 697867388 424438801 835139931 171804251 261172037 472908617 671728735 667487155 948742210 151747022 726640797 507877736 892592400 707324837 779970545 903361261 975118145 949537300 950719911 937785888 939921345 235100105 625279414 39825717 517867187 114704132 758389917 342565599 870724398 154854284 596183620 860430659 993033459 668358485 713237013 9041725 113300836 117748128 929244758 500751250 954991270 891788612 946596131 117327653 362946104 70740624 414941358 465131870 814771506 440018514 553147617 472702870 638849240 890749627 944707673 860258025 863479639 914302750 993309713 728107054 882785500 354472375 980756587 246774 832526664 453079398 703249729 68704091 847571840 218655056 604468085 698202423 758366443 97122565 138285692 903972124 948912366 293019166 669674647 674831958 841791419 490724876 497969988 82780307 90216408 126080349 891683524 774775113 792648032 385073193 821278562 935502210 950328957 61687448 805145738 542102198 857686998 476279860 632909248 161709843 204652017 881979280 929831646 87748733 769190773 240724781 527349361 269261608 606915205 828555632 872021205 227929037 490951990 615882016 923920576 67881368 485871472 68480695 529067098 231053695 691240176 222583601 680723383 52807862 352615175 837868205 992110362 763847107 908488716 272392499 511986878 930166104 979237893 64376394 456559340 16558071 911630366 182706043 558025288 998874252 999880164 421956769 484314202 375849893 656921059 155698329 531042376 498811015 972240331 525897489 794299124 273774245 397127573 366647727 600320599 789271221 935465120 599334985 629740942 490786481 987674900 32190933 816768229 482285978 854847462 648981612 891881654 478172792 664412500 796052879 867073598 89161310 587684208 233809625 507994064 266477483 839308499 294357436 867083802 466207993 746170739 424935154 565268176 323324737 771862437 491653555 566477047 535077178 561977244 677873030 959656437 899534213 956985539 812449553 837976616 40472636 854160194 754590859 940418553 855354720 933015700 648551049 976680616 228677852 996468084 921909150 952450228 463740210 893128396 780308740 942490566 956039456 981272921 962695271 993366607 335559154 970036810 14366080 435519787 668555780 939684720 992711669 996372345 444799184 817357556 166251033 844937007 476373389 780087377 559748235 805917675 296983822 441408077 668551142 920223798 798315723 821013334 39159202 682331330 691690731 765402883 463334119 806361523 363639248 400660446 683669363 969886002 553132468 805980034 598145771 880034983 933902950 940579230 331133063 523546777 838280938 896709982 583419985 907724591 528368345 587340614 812064583 923186603 419648278 689509976 77903446 896321741 796600265 822317043 882063082 936853093 64739114 788978395 433963775 768246054 725673594 880405666 904358362 984637343 452893793 837745089 923532704 992620720 380807796 652804352 694623932 797207000 21707987 634897023 932918416 975345975 20306342 444517452 716076714 736929960 596444659 833923091 759034878 820763328 484738545 676108945 839956509 953583403 874250439 978629170 820532423 888734283 340612078 814709419 353894615 657083936 568640335 783162409 175575601 428191177 64705641 698498242 478215045 541844018 297230752 986724205 415822115 957969375 520380293 639168260 421019057 935137099 152775915 671456418 887888117 906912839 293341925 639097033 739163532 875326157 767945244 810846340 936493400 951674524 821196636 901643613 276169684 915838955 93353669 394754499 546616517 673008695 607344741 952185094 235043519 857607793 340406305 848973008 967442303 985987569 708170564 725626786 615808737 647153779 351227408 958796659 679011406 861206178 197297231 522050211 586072814 629899983 854471032 953858237 429562144 511225208 14432329 616924907 652218151 816331861 740745673 859298170 765056848 924290121 988556133 994538250 43953552 592594746 954557322 987927703 488859058 739106251 313835994 491830084 999674388 999723596 744185799 865119602 428643448 829912630 189073548 483208877 984467311 985264632 709407823 988915227 917126583 923574382 254064176 798494794 117937576 924182334 309879679 851269307 194445678 548392336 362401259 739597682 265128035 554129109 958456169 982626780 742965635 765610982 748736337 844011182 77995140 823817161 446063927 815265106 960258232 987141587 62284588 815170750 579811883 715496535 434308573 833582574 834631171 837973940 26627346 189231195 178982430 861186822 564651069 779056038 496947752 776609632 678567671 781407189 261109821 276893169 917966844 983714275 440220368 869251411 376532615 587017785 34178987 981535679 806891097 822746195 373397332 505458205 880738048 930990886 466523277 907910004 28275891 347912862 845422 311430313 252337675 645295953 940127174 994847306 790346252 906725800 118628798 415554016 236682708 722147195 999719108 999866015 932532925 950446602 282791087 872143171 621634773 923862247 858785006 947745652 453141342 590731348 963259815 972556279 422725400 642227791 853959482 887373529 704486806 813571734 179780779 738710225 40716911 810359060 683694789 759286373 317277295 829228900 99710285 853197703 206683789 278427949 613994031 615103073 230392321 507776193 917119600 985390242 264942162 294107088 278635824 837913343 82706942 662538099 888853332 897059791 619725530 920545063 859856570 970859386 780943952 838647366 864011667 897628538 185579093 324299393 375534981 410979235 118940345 352946881 599323613 896989353 158616241 188766469 427614908 648299663 862236966 901176883 225007237 886941029 28888581 551319046 61549203 228908634 719986484 891820635 49366499 251403674 173311501 355456255 107639982 125176964 169857653 396792808 346137521 956634969 941707510 943516356 562499691 691244228 367562911 671506996 889021266 979172426 732102216 821918494 507238401 626103678 59476927 534942790 534653588 971745265 881683252 956684377 573809882 828363043 52240542 399397085 677357357 926422586 682834157 786382205 196732767 819185860 694631027 993013790 472033574 541946844 327121463 485955883 956278512 991030767 884625196 929724893 999234628 999450492 934077210 989115976 647559942 675358617 120942966 703137105 338753164 488599661 325205634 474815550 374256951 843309352 745361398 974769927 438295598 440960508 74082216 421006596 942589551 982478476 21119254 746106804 101546014 521233689 600727220 909658927 872118058 945298743 927724816 988717621 903104989 904173774 766701302 778287921 101719932 511797744 382679777 727984128 184880492 540058114 870350893 960308404 30857415 515863040 17764368 470823667 313621554 362724506 31458413 569176240 481401496 976694258 172897715 428943404 449402302 978014185 563331138 605215769 301653488 455961391 40011182 429151164 483167189 570501445 994761841 997888105 229399903 443559535 152030014 791134739 942281163 943299607 37296250 573990466 287612613 589399971 628796056 639361118 147734252 436343453 1980654 923424285 832659085 886855045 241452553 295321213 358356924 465218167 809476172 955201243 625961262 684073425 633675095 938844056 104731520 329969671 456506694 942481401 16027546 509962976 561076056 633895798 387438622 760954745 317086484 367864113 718427579 887241098 820816940 932792582 512974426 846282989 716267857 765408853 361961107 757913243 156558246 877813515 835959219 906740802 78008562 130219018 8107089 710507596 960396627 982916982 977798906 984487013 741449848 814718553 305112595 972545964 835692852 869065118 922013495 948217744 347294858 448958254 439313916 533966874 844520361 954444876 691828013 819960408 368734659 393717409 664669330 941665104 607305809 683398118 16033497 566467977 308432930 753587028 844749836 896292297 528156717 642152892 310550905 793950744 223040319 521287582 367139118 892562147 284704088 706247454 722855076 781905653 883031972 955844395 995251353 999890286 902763031 921750647 206285677 800058032 397045271 639557914 193136774 563288492 129358014 178866369 276941127 776211681 55096672 375122392 757281905 922392023 363480584 994721854 379499224 920747123 217240931 964902145 660138805 910071564 652525893 782741715 282831972 550533039 882419793 990559935 579525836 665398850 991484217 991877281 665798399 969426032 283494078 779144563 565125752 631739971 947024410 989094435 822006245 872885550 418215883 706969667 711068823 745447352 294263947 576760515 431535078 656385723 18016673 717530744 248714875 917442396 328126717 934355619 183205039 351473889 402592275 939221974 167262083 911696722 758847273 873975748 942963793 991445900 166772765 559754023 849819137 990489179 957292991 979028387 596121487 762481811 613419421 953568531 546171763 793971871 141232634 773294802 620362040 775343790 406982859 563441766 837227423 894845427 108003773 368217231 464435184 918640713 91805372 889756535 247064624 314093656 404360265 532440784 368630098 707216958 347130897 410638169 951248435 959509501 719818412 936180266 191293814 825197017 175894521 332854464 818173644 978400227 450617670 503652160 167817530 369114412 786693785 972616568 901596164 944589135 647863970 692292078 69815985 549078204 418479545 864493247 62962969 497350528 274135955 762886928 726020339 780622649 174635321 712861868 110390103 884503872 499112738 888496976 856766713 991857953 533832531 842402983 367117625 687711641 783603391 994685783 956957791 961543236 626554202 987873898 630666730 649925466 659358490 929567791 735904394 781428662 573381018 649274130 472249685 842707007 206021160 370879712 289341945 401054474 471254207 951927918 83236155 203310221 325526536 933428289 249142458 630994120 714671624 968674106 983823000 988076344 382220425 452074155 896673487 962042414 687929419 974199109 679087192 797694096 846317784 941119052 428795959 593140521 574761359 980600275 281589858 609795032 236241911 805434480 926949576 988191793 219570141 292497356 940938242 948811699 660127337 999017235 843510530 887721276 995624447 996010937 680718798 865612029 893748997 949857762 581230556 814186151 112248534 306456145 754058426 790785243 881649011 927103901 30254372 427178577 414884572 889724147 419429014 916800158 297164160 791768385 948823150 961918671 38301790 141260435 961743677 981393509 871347815 951900910 615938332 672956325 969406137 972652888 37189317 875142499 100891977 710268333 283230625 794754141 655154179 941146828 194928546 221451570 552096543 886266332 6311200 317896239 71566654 961188355 141523996 376131642 566091558 650551310 617970988 747447176 511945102 641537902 879194099 894066798 333280583 408136656 942505216 954526563 402906835 511412719 845240666 927862590 378669451 501763674 265761679 537169903 551228370 955505115 797892819 836920578 27999844 965109293 788923356 984763092 506755356 597145694 969019332 975293831 679526947 853005336 248266123 915091978 736442962 875428529 325123387 950746878 915871730 937752072 423518467 589801535 573037416 613623609 994392515 997210499 75628301 231727952 39857433 853490929 472347927 882211671 609339637 798270183 882735403 907446114 400118299 717005013 608035446 817357203 904553920 975716076 261714554 932829641 955121835 973011913 423453204 535148194 33525747 624992581 447043518 695824991 53217140 965217457 18708475 667416235 571223088 939109414 543012299 546067408 913945275 951390864 423937896 578514341 659702699 935585428 676394981 843561545 806168177 830650935 138647733 352182264 233291941 612181830 168397633 329256065 318156460 955428325 127580340 558980787 733816218 814531096 502208632 544785813 997117982 998891842 181248641 225414434 164352155 359640613 920681109 942175065 152985376 947373049 380337847 778643790 444074135 854350122 611253919 702453717 620223443 713399473 702942681 852214088 461461511 933085794 919742895 992616782 286462524 724877826 526362853 999576038 916954896 956424427 221491832 338150900 881132027 955160304 602366096 620937366 247351541 654093423 301694334 563690184 311290905 470312858 9242105 239075719 376038366 873949122 512839874 842723845 954578612 963133121 297590134 445916788 693115107 817107468 227790825 627678157 600113439 881867660 574867372 859855395 141943260 422608006 524792082 771554172 67882564 332885850 413901233 839802048 106524363 598869086 114150299 322354076 324715882 705847824 99885595 142704740 245780509 638132105 406706068 646194276 993308335 998645119 377407756 429097109 261621167 480236971 992142970 997270449 263748064 310836378 52300529 346483456 534311357 776133728 704021451 854880525 166813438 442258745 140790927 461378522 945366849 995007613 586785978 793549733 157650377 364682394 377295518 773712559 678851365 937844744 691220360 874481226 809973459 916973629 964686723 969724260 431312758 624844285 384917875 695270922 540841295 991591563 864554825 973697712 508133401 653440821 546018157 717257987 126928518 411080976 401694886 831330219 182715472 447789774 441152146 817046479 891169977 924541662 308596745 778807703 451719122 535900142 171065673 715956059 11082126 339399241 51359794 154922399 96946480 748496640 139691223 227072707 620271919 933732793 108184032 184686673 69691477 570487090 754220774 801215137 359427967 728543704 602882426 915760013 820564490 897904054 385092595 968396723 856327296 925006083 412852141 613615963 134788798 827282013 232462939 822529233 387404063 760880480 274651830 386755582 441473082 945007341 328155496 627147354 167692146 795537672 440520596 602185997 795617956 902004504 743387570 749744466 741682308 779107705 268863719 693813231 466218010 991500090 347566676 702450962 655356910 766756901 416070764 668232349 139460492 594439427 932616249 956212910 510973143 751731992 911330912 987491547 326102822 653004489 124450513 994986153 969320788 994122757 911657160 939961793 341146776 928261956 546279572 553668863 717821488 862081672 811714652 927141144 258334266 957310313 728124382 757362524 487953573 600703717 271217661 380034593 317010228 796037629 357144201 639017912 429423867 883791300 240434769 288975659 160247207 545199987 528860095 682628746 355034422 673297581 918407882 923535009 760807947 820417259 380667449 803808176 100910046 783507077 997879150 999601077 564728349 998706285 516560900 526357943 154240267 966865242 678614522 774537062 973030634 983944572 235308043 329836818 248291863 539578481 753795862 977312040 485313437 569066172 158798176 983620960 935543515 960022822 202075600 997662789 5579208 580893968 249092303 297817654 630758280 742323191 131324600 855158012 872506839 949305543 174097559 656693452 280040599 873780950 406685072 697375498 905534421 936615307 135487330 507256654 307064783 961697667 24941798 605035347 722387740 799335684 225964140 644669420 939798412 974464613 752746483 761084228 820229644 968431480 191983720 579520406 787536848 990348492 861718658 974541732 540354245 861941270 954560796 977831499 108841006 680011255 902019696 971337053 757787594 856958640 407985817 979384361 325811621 974656093 596608165 933971802 377140097 554180284 341488379 747233801 357996765 558574428 266917251 403511849 213813426 864879477 14138195 202208820 682449915 780172902 636458157 787317384 17382743 749430812 420657578 907365490 170019242 770283369 664273302 736533408 841621080 959899218 761737462 960897679 994387800 995674247 783692560 895671047 2859419 498540318 126548747 380287287 589134618 886971777 100099982 495730313 630963976 963088147 500610605 753187605 231431219 799106907 884840148 950023317 976593192 994836633 304601070 875707113 48241979 543127740 41638152 559449536 520320074 775160051 50959169 743695268 744823274 851691100 737365811 807880176 234383208 980256266 914428152 962194739 866476027 919108231 504786359 883873176 660230666 806670718 773088238 845940818 185220566 845466649 774537772 886931995 247763432 791765504 429311203 490098421 146654444 689047186 692999518 737611679 166120140 283984990 624047772 841833531 667043541 876326767 527881024 749585035 710456205 711685042 179097271 221492735 503372638 800770056 167105596 213237672 717328576 751030922 693905242 951904990 550143102 590249340 385472145 938255845 852664704 897739148 584246918 680349345 56227915 569471761 731653852 853904519 535899137 952629226 198132426 426916482 473941032 488447232 271200338 444589348 504632823 860549244 429157683 974574908 492460956 993174010 703199393 805997523 618162867 916717365 482456629 497434809 120244729 647810116 384148500 820888886 995203243 998700684 449697682 588623396 324971120 367936124 402088713 786647103 754165017 898802295 877776411 895653092 825624214 863216391 699509741 705534030 527795190 928176722 373512506 928749967 778050287 818033376 713543810 720580744 63246494 219993541 354462787 845130440 601352557 635600752 597728206 841406867 989345071 997942464 48039571 818713427 104940315 965286992 408327605 765742620 149237638 530480952 937765400 989778810 557772755 786974099 515919396 980906516 170634489 270130903 118985841 886518829 244272590 252039935 803229668 980370953 281229539 564823067 993624339 996777950 270012427 670078683 735706256 764992669 171518871 298149843 363850886 473478010 204372462 440375298 883535548 920226844 519622508 982564560 261136244 548582615 535450111 833911121 895952078 963293730 760739359 835109358 166753610 766499358 715545429 834726786 25536664 412306155 788911851 789532798 796752272 896856155 996983168 998908670 937430883 994112681 229607169 996576025 392427706 809636663 631010756 990935858 725073319 914145372 427265868 460149687 627644779 910693932 132570017 338375895 725891659 912128351 181573697 443194382 678110075 682607544 121846448 594558141 634780302 759023162 455013085 801924092 53523977 996260504 700923657 911294351 439154834 830007776 939859428 955490031 49873408 330938779 375834048 502461247 823523333 854369128 227298018 551164679 224271978 366675571 219613916 963083602 765181808 932225037 952983741 956191167 622079408 662782228 756845236 822699463 439561112 982636554 32962519 459086133 224335538 263289130 329889365 579648235 962052403 999786855 982113391 984946517 147111610 920356313 728315070 901440462 956147529 961130697 375981478 736783438 541118721 693643905 178267661 865539279 390885274 759025617 436846491 980185688 939492166 964562931 750022845 878952660 512127663 822911248 19918209 469080795 762631604 873540788 266608299 283803924 903671634 991570759 609824001 700967754 626458369 785417912 716468990 893339170 20708945 397015793 32915677 296822515 47966301 980616315 109394420 999546793 323391741 620879633 45497058 561003446 703143109 889610389 607819353 672995698 623863143 826714061 303394965 828491632 240040595 680741919 863064470 944310221 835386109 948770938 540819757 630741115 333928131 736242696 665629495 742186742 566602284 824131255 575517009 636722819 758182108 860187494 488756068 857950816 990021420 990908642 596794464 674990925 501779712 887789500 19911598 639525335 644992874 770446408 723821064 750748707 87480356 684709666 636543324 978141722 672120074 718638807 320370278 720578426 173117871 254485892 393974312 969460016 743581448 973688660 685191509 799867417 184357319 222553746 565176271 808866551 488869340 527970985 806605154 871347843 239139231 293303827 109305061 278726387 419356965 878555735 86198648 384826258 382836854 389976182 630617098 765016214 393365107 677774725 207222328 417512432 75089771 612969584 662692530 677869221 51467422 512381305 961519776 964935872 767373365 999560958 339551838 517151436 991705035 999034440 971432540 971807663 857123203 951420135 477859302 984434662 202221111 323701648 617402216 844694268 322608415 914762408 519442189 660352525 830276401 867828191 160066958 442521722 900025569 974095290 470862107 612918836 205416032 604304674 888211959 892411282 175168847 281476060 805285493 984895998 298240832 936278513 117972658 340466053 889888283 938703163 58937189 869073909 740446909 793623369 551879135 981023764 344431014 850156685 674878207 723517675 405006301 700224783 839601206 861108576 880617950 923790467 86881992 575052922 382140868 488721750 245922514 536077690 314361795 578031462 918474277 991182042 70067727 850802876 462811322 610965494 407168923 981042127 93966770 967624678 353476236 830213375 58893639 984189759 240618488 855635426 536322355 849816091 530747298 978250195 818536147 852836505 395875955 750394849 284836374 572408473 616761719 683260018 800969552 924130429 253870693 581148953 767386276 890234223 210622730 739448264 890269668 979323034 728308679 890159052 963283831 993738997 746273763 781378146 333361899 964285646 373279600 694604393 128887591 726195582 989683111 990154905 26378555 536383529 194215824 989819039 244629217 702885127 865495578 922904083 661094306 766694177 868395598 915801186 139805024 794127056 959045748 975486180 742039131 831519912 615888056 656778207 461942514 675902593 629483587 787618271 773371205 973391791 784598664 878910816 904164656 992267131 730633790 752141501 671080904 861061200 633039452 634526764 677826220 744788612 795262360 891341089 742783079 787551080 57600847 80103491 206509174 440221049 512231788 762376012 48368268 781659536 810872806 860066666 171704235 329371550 780070229 928012562 129353298 677529473 678641985 758840044 328341113 757964718 323161961 480772892 383658616 949625340 841381633 896964705 591045714 849073610 974634027 998076689 503713818 705121422 724701311 737643914 440239806 959461971 964994150 995423207 312675687 651601829 472765656 763619723 598253286 602594263 936855577 991433733 616224109 985706678 32688849 917802412 41311955 510148652 153123054 273688753 790683726 867061374 738100519 768626045 410019302 550860318 321847630 359397214 776907216 784551078 393977736 416308890 328550020 909767479 43311075 435139323 435706445 443760964 44640243 698017057 727020235 794678799 21443603 193932420 295609289 701006276 846516190 993629181 960985604 993889621 634358671 725161216 783588623 986742516 280162150 350860503 950165991 972571940 380035475 609153729 223622148 978932907 371334377 491561130 707739522 803319991 663526311 989717113 60597984 708407753 495720720 667045333 781753844 815556290 561441718 656399900 251104863 704124568 795094286 905090650 179273096 244720061 848597690 954232091 674345221 829517745 749606396 893029695 933272504 960642831 56097246 180542029 156888564 739137498 279419083 775244947 433150628 735238086 732685063 979470974 565094822 891435117 544599970 804638704 887491732 921002718 435039030 935561648 253158755 990208515 67410136 416345541 615965057 886770456 816838517 926107323 210604241 603587913 866708357 916507344 832067673 984530620 143843955 757993070 370761170 949746635 162565399 761596902 660870095 950135702 768330225 966808843 213712235 896702280 342424155 943203101 355061282 940987910 784853288 840198473 742566009 847309724 618092453 648834822 387872943 879882313 59136390 877881633 617346179 986825724 748894922 816287458 442972942 847902828 505187936 517887492 946587212 970370913 580779186 992544283 796680113 906841168 837904863 847746724 991784958 999730939 148307674 868406405 382029031 614488182 360790895 733040402 758927445 807544554 499041832 830653612 57148574 647903739 64814303 782897159 441370131 757558136 948884267 969481009 723802740 942113983 239614362 479827161 602722842 812861465 678932882 900880902 509907922 849365981 825399894 838335212 505414931 924884806 449504164 931407937 734503375 834726369 926860590 992664927 480830477 770959064 370083060 810723374 356170566 452459145 277095209 939858138 466450282 716675294 966559588 986517594 388145456 721667454 923675188 983959475 8673418 427461925 251533328 683761097 542314465 850275787 724416525 730909959 632900235 831594702 926978290 967249879 389336482 932133635 579713720 914881455 392077927 792183636 566076259 629917780 151463653 209861376 917556259 969497835 568439857 632073773 127659080 899576933 224606271 843365475 556353630 639043307 524579771 949865236 511512494 804813418 766696404 801813367 227227008 874387540 673188729 927458139 625623665 871834634 793352106 856492198 322458490 479098816 275267289 760989349 441354245 946072135 894372285 904015613 132984894 847048991 542330156 552787579 711130418 845542137 611878794 892146791 326500141 548491869 872006886 885067239 730171291 881943357 830600299 936916049 720712911 847219505 559749312 593517284 936179176 989117675 264719882 562007047 893502948 982529017 81849283 363622111 777748252 795089958 579467971 750217589 24159725 289784614 496178100 655601067 912119536 967336939 235162753 615593419 505400330 685878151 116255299 509246584 607384210 940437603 654686053 984397234 169125008 680790444 88461714 933774642 380360989 763010796 980462959 987286019 459004234 998498030 175100468 890927923 633578388 823556784 771949144 820651004 827701052 941336127 7847776 962949360 826473559 928091154 297606433 538193757 80906157 781930015 615069442 707832692 492960343 741882295 94530033 539959571 528606762 845825665 129069580 506284970 474300507 542802240 750105469 767496616 396591019 501006797 13437619 524306407 655380110 991304608 339851171 734246972 390804985 620966023 327112980 562538963 497514223 812148357 470325224 494166750 48007764 431865620 821348891 928477781 413676923 862249396 363401410 724346644 723268741 990228662 293237168 855740064 219546719 869459670 348599252 826856591 511231099 966589403 74575819 269078912 662784460 739834469 251871471 544870614 832272712 866333315 890521020 995907426 277357975 451293009 177000918 965128633 634771082 858874291 624603464 933989291 293630328 861391387 736733637 755058719 377226044 386986983 525357805 688209786 987535474 993888119 350428594 921100440 537756891 615081760 117586881 895446449 220043766 831090284 430246346 739475308 363417062 715720166 614924975 937433391 460027493 746420376 872871359 884193116 702681175 947769821 265968508 400355580 255852634 716872706 824661388 960017084 839960312 980980355 108435096 860362830 502593745 641539718 695569213 917272673 747478598 994652832 187345131 639186225 422209778 424145149 408606587 593216370 482273681 944482279 469581429 605941178 751246232 802024097 404857111 947297409 385854194 917925996 647249569 795661814 486733092 610338348 979499921 995200738 426726865 992956406 483549325 914080467 207587949 799451717 999656380 999688374 515133716 596136670 870317263 980786412 530719412 695920592 328108604 880063595 376724264 788968240 581894641 970144921 715266465 969928448 127516176 517579342 748949786 774631964 859070854 885577414 221555497 861575791 515042710 803109739 934245148 988473182 574140543 680218491 146060377 511546792 964610541 994611990 983408665 990123437 115486911 219132625 784667414 969709517 459953544 648912631 704784598 877447209 427843973 857779619 597146936 817344912 952582011 991194125 585503118 797113015 98605397 923831812 489691052 798317314 429643094 704301909 498025460 790658182 633661682 806175517 995363779 999935152 703910086 902576121 809056924 967042763 298326379 527646488 24537941 935919196 951934341 980265853 662445982 855100886 920932367 935617797 873538570 997568657 435533363 772456578 750926211 773708026 131875795 840826408 643628266 680501755 894934354 980985481 5965720 523636416 239971420 794521013 53517431 979198180 719822873 862973064 722344235 901342637 286800391 595929543 982083715 998117885 663192734 873275528 217522889 372375006 261583411 846846409 149618082 229715780 890795918 943613848 290538937 913717869 238836070 816455527 403483629 444152644 392412489 842506168 264692204 850813762 711525409 934848024 445416463 784688012 110271286 759286861 637797212 898403950 801906947 827914703 250856699 527389767 711876124 812257139 509395799 741820780 451330582 645498545 311837308 531188580 180004352 626434727 10987895 14260338 434555013 963461910 491948404 551498343 30458963 545659648 239326048 975698687 116497832 328825994 467414350 928729101 463887406 732858837 770393695 850485387 938869927 985754647 606836578 652163969 707079169 849408873 594803473 649523649 480854471 783224147 372176398 692533018 469695946 562308786 463132488 691278923 302480068 935516631 151404879 291723948 377291685 673373739 429161626 764849783 532849917 761429489 703271452 835742721 892711951 904914624 938265209 974498541 114768672 336767789 495745374 599263355 535963019 703528597 187510959 447335131 311234447 845002362 429886675 944423627 880539050 980108085 873247018 894846569 79172391 850434390 123581786 562809851 578577192 980236375 929333165 973647468 62426040 579614379 552089875 632550177 258428080 544491763 352540822 527759245 734042603 881277860 750529289 775739459 993289350 998344673 297880985 731785985 204904299 552066148 539214602 699420353 651622521 783297294 347464537 776947111 561607192 697358639 562635352 640567079 596803696 845105448 982895256 987244831 871928426 880926948 656912069 804731754 997443363 998450169 77431445 366296802 52042582 761270558 982765818 990324004 480276131 683714132 756031559 824394956 522174523 596113741 386031344 926536246 196754788 720969217 988999575 994823722 670207071 847480985 1102039 229570438 689900909 874960777 319787171 518899334 518113965 927657145 564377146 965175201 30017657 155780570 181923596 746438089 850339517 907082385 569558827 634832585 849888101 959422105 609018416 874831959 924532450 955896938 332944950 926956640 632263362 734795413 383756113 404509659 212153313 916297978 567306919 728245779 314382124 830884447 465609107 732431537 831679195 833296296 526758908 909060761 325970811 337205202 108338547 811364334 971009748 974628349 691596313 877328982 418964433 983102474 408974108 719236776 739604522 873647432 399747919 834686025 891371266 955893971 691349171 994426437 910978241 995113655 990252196 999356121 680160896 919340092 375067106 456401099 23983693 240630820 260389389 700400296 212851935 461633769 31553077 837067069 378480525 922142787 720720676 768651521 468259125 781660307 304517365 731872328 592334777 897934841 383378096 559871994 8660235 336478065 110343165 739964607 860496007 901474912 857891160 882262202 3823610 96727891 374791151 392493429 206245811 958387064 517718237 613928653 85470396 520367091 269191412 271375714 949055058 958570941 450443811 909224042 120408105 952724797 998270597 999039466 879539430 966832069 613581265 916477370 1264964 365042605 866077970 953025941 356488180 627161648 225800357 227601679 144562702 224240239 653046302 966520452 404784287 407536229 805216039 879194592 109410148 477683449 166529057 695871353 101774416 755997890 890436279 938993121 875801266 980098817 699104357 947218142 779160244 895518609 969857877 972971585 232057314 742242922 968759760 983028743 837715956 931962083 93876195 664348869 708940290 759549371 220462838 892673642 521843425 885670668 289185308 879805533 807415003 996147375 824511958 979600787 455139854 988689649 706928559 908604751 898102702 919761314 944638439 987308895 654970750 999356533 516191165 546982140 189823084 987099499 395945587 890366883 351777062 353140292 329249177 456396345 104377175 783869754 473845694 945135846 323080187 666609872 359547077 775382515 327058340 418531892 767984365 995845197 251460273 826890443 791586917 919943044 280234195 826493616 232403456 978742199 939422845 995679184 688018902 805705001 318099814 610136284 826549983 918824912 673647052 775409241 816526691 972575400 781353336 862967415 482383243 573423807 270699020 760636530 77341086 598778448 552745630 724341029 633420985 679588856 330708691 631857087 531999607 960235140 425036943 611012174 43716979 941816441 883722930 920319237 505442154 528189599 833843179 936714101 156541241 427370898 198351367 726668820 201216961 465631657 474910269 978512995 447814247 756726569 691223640 911970981 25834036 151763244 613482793 613767244 686113107 797390177 544053400 934979780 297285995 405395578 852362173 872729360 366208762 988235994 859387792 942095978 663985707 822885328 875579990 991980592 418257126 995857463 704701829 803738344 159088948 257950317 625605232 704079897 104775460 836181559 479372961 533713568 622414548 712377425 101722939 228556023 55163954 969613551 672327526 992312387 362788572 882828570 444084477 888740981 208186611 649721183 592400284 835496031 276483434 804618170 381212150 681317895 369377422 815271090 913242015 945965416 969602621 973634295 750397530 797181935 265756164 443539357 742698287 913537044 481308272 678813673 340012214 888630758 84140056 619076651 323850910 656919268 886146336 974297422 400135602 541755515 775203348 828063988 457515963 783708101 101504511 139691009 89579570 695838860 483626482 707410948 741736803 825195371 539594139 539993202 592349196 781829317 424109346 541702128 842658667 917905016 920485559 975408970 248466780 873359292 744186345 847122119 166680693 779377624 787532228 906944333 569608963 806245749 125290518 489928322 982769313 992384274 41912847 937477396 120497756 592341555 178382871 777184461 546070661 703757467 297609385 515211406 842775134 976974414 222790607 386898210 668844473 871222129 617672209 762083564 463620381 957129681 547272773 874082460 612651713 801552096 669087218 791305997 797814701 915433750 358921231 802204824 519018773 811997260 492544070 632127794 904151620 907860551 783146143 806265464 128767970 478240027 988170400 999667792 554791693 792885495 651027605 984643733 972004141 988951898 988132311 995091588 876935120 942020359 180000719 591211945 466146084 894389399 415158944 570341517 871921485 977870625 330878471 436882773 892420616 965779777 141886748 759894245 737189920 843485944 693134046 822520045 657900812 711359637 74857947 465302707 51328792 628375517 110660406 393024685 31699029 386460117 25885288 959280183 582339944 624100158 153672879 169353926 184522368 668943101 370601030 728973560 957130802 963431232 991167198 994320400 339906522 996516797 306888704 727466756 491671082 643793447 996191148 998226522 464486749 580497629 357300032 664542357 778540826 931060976 110302892 195127859 815032383 915792816 830972328 938575006 13741256 543938932 954780495 967485849 539128904 998140757 180272806 620731994 236462976 865711671 69042223 132329302 412779482 490189074 537919436 573904682 112165692 468140712 729407686 986015002 339492760 568048037 517559187 698929831 15539639 841396927 454961145 542277087 572037969 638934769 778773591 974497524 729469791 796151691 548792209 634069865 333094530 662280989 270674156 773607139 856458981 893784101 268556791 674825547 827957858 990419428 597018198 745670945 116273195 923271895 916743325 973201627 242586781 414495973 970601960 973528130 58190143 765853705 853138199 896251776 8152506 469451262 334882292 576691530 697326751 948296492 764216444 913144549 501077969 720992493 295444467 548202969 766230366 994800341 809542500 991069409 360652584 712579626 475274282 479388428 883234762 968491940 379838004 551358649 556097911 842293655 662546901 903333428 236829699 524311026 441226906 961602522 358423143 497806715 816294761 902689843 264096757 418139933 961906949 968901208 443320266 464905972 680214326 996773958 786828062 974137371 282164631 523841105 222715158 728219801 534907830 871005007 486743614 612471782 17984480 27394979 550247723 961856523 77261299 994951055 940865638 949417231 371564356 734391353 18502099 631529463 824492136 969017604 63503395 250961152 372982432 438843927 211887786 373432684 800886066 954379863 172916577 715719463 47707518 670015116 885961185 997433565 923860259 992698432 247132746 249928927 705952567 889924698 526584379 931851396 896768725 986005588 286843266 739220563 444060694 633969184 819685811 993934234 510522884 918772081 671587666 749157755 105623751 403375449 621531085 914324288 200578223 972969187 43516990 984675821 54550572 89134873 880494438 911713714 642201154 926206576 819634497 848628582 300971209 328220617 512693691 947492221 983372732 992774085 123202433 155717530 886866590 955185259 757282117 758347377 970480891 975192004 8765651 47739866 30546199 63132385 232807269 530495073 134764178 474117770 588100744 829719562 859093976 919285945 358102961 941908288 840469536 988440659 248737542 288964768 453973113 598496145 193082610 513730302 962329413 978077250 81910948 779368338 266084038 799218063 767828330 876924936 653721662 774190666 876674419 936281335 347532431 854958367 146286059 761541931 516266312 834906464 48687813 381091739 51825927 407636945 194304909 821269451 82770482 666687358 251002476 993084269 227159293 938073317 129506736 166581372 27013815 633059384 933656129 968085278 318257521 390242667 633205557 713386718 888838036 921651459 895542391 919631482 796739166 939431574 41992621 774444505 17280487 867982712 974819619 987586516 469535561 687048617 855013188 913249390 422841442 479364141 517286204 663010279 431439819 972467533 744683400 775168872 835704599 977521388 322329821 889401383 391429820 871493803 220416507 872710996 826619252 926338391 863483085 949962088 346910111 628038433 949222516 987667021 48775422 673072492 29429067 290560265 768323994 904231628 820848279 964657109 650749488 837551064 723314742 826658093 692783589 695821712 30857726 826266966 932268136 949881476 382847972 967271488 10156871 817832265 868520287 955517926 631650206 851163847 446761068 493919622 540471325 634688037 29952067 808654852 481225651 618023557 338286186 570086520 107658603 405997710 765866975 796839040 694225582 765472254 495841960 767508421 488074579 856378286 541134920 747549290 908008674 983153540 700648766 702377978 877115272 971981959 986558432 986954403 862785370 907195959 909134833 941494297 721183339 972003364 331916122 727054667 847473831 852717920 529551815 815001286 927579484 968932669 204806916 974827660 92660741 599354533 274792236 673583227 462888730 974004509 370186745 867619703 95868045 674032061 926414642 942574286 6208087 458935255 597409220 858119600 734083836 747586954 288465861 323889808 842938401 971441112 100638787 115930151 15578691 151403905 747058164 828761199 850559148 860394562 329011280 860823237 802975 211876472 81155843 437208831 85289284 763553170 576638180 601168694 68809481 155373054 835996655 947831719 895824075 905110598 477224882 549916890 832490295 855678954 996039785 997196685 889682925 944075298 420985839 839378829 645742760 856200187 505749204 689716328 450780767 920847323 921397 334146772 613698334 725053068 508671342 764876293 144097700 665529151 110239583 546798193 621014523 686264841 323993231 612231472 444831000 721970369 127987917 228248470 711760080 774980959 967566796 990643923 359489531 698660333 949249418 955126004 491860744 566553936 271379890 335760289 146543790 355738247 993336411 997828260 305991429 505245246 273910834 761747982 771522221 919467488 936679549 977846995 375264696 848823787 128302789 487579269 554363401 878760925 754086606 917600380 670862994 976855090 849636873 938035006 424403528 579767375 368345843 763649621 138356772 860004113 430271678 595007155 161566167 451519294 450990089 796951242 621995012 937492027 879338108 988902875 994167841 997686579 134089922 772117717 355658568 775870886 377610678 412106995 919833049 942547572 275785005 570043372 81279015 224961145 264668808 630862001 403162746 537051212 179929000 685507079 986998168 992965724 887615371 918159724 217644038 975036775 362009383 959070947 796960302 956411940 508973233 743761172 627470399 918853498 106289703 494946548 367649214 403676631 142244693 410300327 166536313 632250980 715612101 719738123 979307734 988388294 117199163 219371191 333915218 767980197 411833357 675792612 598468061 748846678 70472098 193455800 992583423 995948981 728726507 926984849 915840401 961301389 352905770 606268979 536951447 980938173 597978129 979070398 564405228 614527777 870730222 939416727 970384039 993780087 145663196 231639074 260891318 664347929 164157236 618581345 492301253 586651691 55433944 183101764 654565330 924212328 28314809 142024157 581476990 846500618 659456948 760395126 230358925 264544426 589988089 654507490 580450796 621157422 496340455 762138525 401558570 982701799 44002918 658800526 194107995 690111560 993434919 994942792 612496132 818759902 31174334 59121267 888076478 998973471 49049788 982714737 266772603 532247919 220261267 444839883 455853761 574089849 85878587 455343782 897050822 971104023 520670750 619287859 70137272 138022700 77005701 531196967 122704362 653896822 203234343 374787615 830345960 947803495 130187647 796570720 255439331 774033072 713606150 976173628 830282744 832820882 417797772 689417076 561893925 671092383 279676629 820220246 168041548 876224541 861875837 933509929 642372348 910715103 768196315 906871289 122184453 324166432 455022934 936917376 19066739 208249699 231706467 851777146 69520231 214496892 397201149 625691502 871056132 938589998 563710556 653245774 213802726 222587649 94129719 494873153 995401017 998141126 433663753 864115135 432777471 677049280 478609447 706382996 655741556 812266231 927832918 971730086 852654785 891771255 702546158 863976187 157975559 169656537 890299493 911827509 357414220 486545797 483863643 744679094 871248830 897232582 349193365 369446689 209597552 754085430 256521629 505251450 812041453 965633287 756096924 770900981 845488732 938031225 320983251 577974507 257015087 445487151 65614563 464118809 670509844 793922142 906619766 953040872 405311531 729798972 69112651 179726778 605564268 657208841 100957983 425412340 227139487 836804206 998736433 998741653 610017339 756259991 319425560 570869460 873528166 894792105 417195876 687359859 445429311 715370473 163153178 517283735 965745064 999181482 799265767 863996533 116728443 679672597 622730758 651914572 678541314 942422195 691397697 852250976 629110471 687083691 150380720 374835616 503613997 865085816 390793042 930079768 66115178 828142911 174817742 663293129 414717315 972075014 372926218 830636621 1837335 167862952 187381817 443187616 535538453 720106997 258925021 791738414 817631493 916965121 860946659 909854678 33788524 50519452 419031319 780924607 305833185 986288363 653962700 970000371 885015795 892370247 172658647 804231239 555631429 633871726 616380991 832718040 270004556 483505844 411136992 887847628 351388204 887593454 317219466 670987925 420352121 736182188 805859712 821966722 145313977 984674928 595212595 735041089 502543699 694466892 741595983 774287489 672451559 952391956 847821227 998449821 251581886 298198818 751708619 956083847 319547590 902896498 972532440 974690852 822133375 853047238 306954275 795229604 867806392 892515417 320333196 924529944 304013692 737435105 15341488 636230193 355009531 767131643 576084810 747141187 484737369 918611291 208756947 774918534 365028288 444172169 319767449 714196151 678052510 777092390 95918517 697705728 875488587 894222250 727030346 920921271 40015358 413691487 398919553 530336819 786602225 915433254 201732311 859771692 786836645 975195805 678647122 979995187 765982147 993076522 178375501 728087296 981441549 987042827 974321817 993509984 699185754 716499719 270051011 574490547 734947642 932512378 595441586 906015208 431105627 435568534 950855239 998553787 302571650 971897198 319575279 493780521 69433400 287273566 942458874 952626378 320807544 589515068 913252537 922544769 134625193 958726571 254934513 638247558 926222285 929468954 177823930 181515469 375400282 604785509 101212816 181973726 494323802 900966633 198569827 865642060 150202221 393122516 299020423 417462354 188578759 344166420 784547833 818334047 735816244 813706668 657633176 972184017 56988535 679883186 153295029 692668742 217671815 950770150 690618865 702137005 613498356 617857742 612154948 895716314 549366777 786938360 869701721 934835228 938085824 963139975 539901862 933001863 437953043 495326989 313575087 441039821 294804605 678017620 934378147 967844479 547239419 910695036 934449150 996851416 186101999 849155429 480047429 929428492 107778949 441747433 290193355 975298823 126995629 366916126 624577120 660538612 958546301 985621357 975087031 992521348 655786367 934640308 4418769 597464982 927956693 995100131 119885871 880432470 47222818 96685347 722884676 761222630 219155267 456567238 844673234 908032257 22179390 127763486 31156779 60216761 662921527 713705532 291118306 423075729 44989428 386738929 59306824 541503296 871632887 972302219 385682392 830287772 269902572 462588357 447849803 804841142 537364466 787277867 852356341 936392436 964823920 976315875 147266432 166381382 168335075 294609965 291382398 632154920 587543364 845844916 911514153 985579828 603730930 657860642 940392888 945661723 47078523 766436951 834248132 919888919 965285632 972878287 315669552 503052137 340312348 903123539 1366167 267694177 128174972 394903313 156067144 932198316 332060367 380668857 744939969 788542122 403287782 515191469 434555553 659561199 316979318 987483763 468970196 595346960 9981578 661906813 7776486 35444340 511393896 624019023 565701800 858059761 144078666 732879813 338081143 678785776 690937566 781641866 482478005 984587967 523875473 717334585 676442783 992563150 713190790 818787075 866988706 874172871 990839979 994787199 268758700 816935691 510630346 542685378 720467159 755349791 819072344 896456693 828424850 963849166 262822944 351299384 617596845 709266369 249077443 259884573 400703065 881980672 519938424 721258993 368256624 494060634 826076573 915667948 615622545 847414137 314604314 736521600 234813955 366579873 654672360 789088581 671673047 924455941 65252765 665734175 118571724 272724140 195238095 804417950 226230697 894093238 761174240 983089012 516635677 797531556 504051255 799323045 760487080 975316302 772830941 890988890 282147604 460809438 801205554 929731930 22953631 78587193 701915611 943595374 707050092 751131986 575893801 675198825 879490592 996097347 991414620 993305907 178632811 780486963 686658931 904669169 797488626 932556634 622468006 936030995 71870456 764679220 615280485 703574073 918520541 966444904 699433138 904677156 732745198 970656273 909290566 966670833 850577923 947702509 11115715 255762011 159286479 972864932 869664627 971336216 964826690 987118490 158615776 445697103 455812517 698055826 171374015 282039429 499040101 979030649 893105080 944595736 635586627 673980454 18438356 164649915 365978949 547822050 771864366 814375436 511111288 525332439 676720711 770912797 372927409 706416240 516049421 963825190 229990358 258093255 203484786 467399254 316730102 421582308 749689695 896489381 57588747 165157844 533264982 820412878 347108891 739080271 410123244 492575797 408214216 456604726 287654209 413636010 449556259 992249866 136062483 526445330 482858480 993081191 712503068 777152010 618128108 778488583 624158169 878114705 717453817 878776255 13735625 133474195 275337274 814855863 639469025 996740047 878887901 996640114 278148794 763673041 612593772 869898725 491841106 503235331 391350944 766658331 414845000 521030438 760902675 896556712 517351706 668363935 364429718 969593403 809258783 934342014 520540041 661542223 591643168 978570644 161437312 682983277 682474475 917965465 705446394 709208999 572443741 726294616 681947536 717257430 590792999 639926596 334808491 712776226 461972241 581679727 62904064 952695256 812889022 876160492 911437666 989166608 518652983 664797042 446481437 756957254 873264846 991685537 821393884 846121781 480135062 747783226 286517656 704532288 192519319 466137574 815848280 849820610 452875404 575683071 609928125 645679769 177072388 585514278 820887805 832268615 843767127 864463707 47815239 346473019 187155709 442923229 927663879 991809665 327124809 903602395 855938758 984779042 426811837 724258859 309444503 403814714 853752957 877912774 955194077 970291038 573564243 873936300 275512128 487882687 958980557 973127863 482315827 610753420 925158901 926616316 328222078 861661969 918263232 962718502 642948149 876285791 550669311 791370555 381919225 490924664 504164742 569284217 73572505 891701090 618445579 823052361 485492068 601257597 780360677 953512660 98278857 800205471 913393501 999049263 584774690 963818171 91305025 422377202 933658104 950023141 664992372 889380471 834338443 892376778 858439972 981101111 942893382 972950550 647010693 764593730 783812467 870415580 104030801 244888922 763549772 928870183 378845773 638961111 470735009 853907654 634950499 715012703 394904452 476080732 989375755 996211065 685667451 961181514 40000122 521215358 473565526 507991407 694491845 981250077 259947225 361639522 546036137 902077624 928423709 953087734 736064255 743224566 764919043 967488290 997214493 997647669 192504801 417922705 908806003 945167923 364332731 744210673 133444622 500652338 459757575 513068945 811394124 818336506 660478687 827687638 106353616 272476627 283204831 786627130 823656847 987147525 42057601 511187061 279132339 485368847 915874375 971226752 355668174 629306161 177005198 267756387 539881777 938432921 325499743 880649989 679583005 807439508 655150256 799266369 711505671 724282850 796867908 861956276 500487575 634822313 616763531 677857850 388094932 775145284 645994781 754184327 181274445 812973444 112144212 851143856 49526006 736196908 320298623 906098527 237651075 537639288 725414143 782147316 402394916 917852350 171511767 449476712 988716490 993429176 153274235 643500216 796341575 812081338 37898701 486482110 546949696 662499965 241904890 791190892 920730791 968495535 541411172 817145112 599239929 934764311 369894148 894661704 233953361 410997616 232555757 974246959 906670194 995999139 236766826 731652399 712344937 807573319 919892534 964781400 546431183 744845905 580682383 939781390 721728115 942992002 636547600 837135258 828604517 911586536 448469190 604969491 400171063 994013898 949910012 972045737 445048616 796712718 18738542 447514749 327127733 488870079 624467788 976772089 11196257 299794889 794496239 940340804 357579506 839265519 246719586 250752325 549972931 585617188 14278140 684991058 758136365 821432319 604158524 914992716 165499301 585712914 81330470 770044829 627425788 865926559 437351638 806030678 938704089 954241240 493476090 957966233 410672531 629198760 605298580 851978841 525118671 640810317 527146970 952732287 840151920 887514893 71121810 412495839 793850677 892615848 11550470 693736985 504008787 557731460 55401996 386393333 91656924 289813221 101803418 902112476 272587733 424981166 632672717 783914913 871923323 976267951 326117436 956185267 333347420 701638742 248567964 566963775 556192390 642419969 597689407 665147979 351980662 793571953 784413789 815849207 722745595 755408261 771509839 912195188 317249922 414270203 337316621 538345325 688067979 696053626 968580492 983384888 640057677 836841778 245634768 673400597 122660553 300045172 223136428 558995178 319092322 981657661 438312345 658735617 669319982 836915360 704654366 755164141 145698504 960115093 599075059 819350613 361059893 397169913 840871456 847397991 320613342 767589284 365251458 987902818 834632528 834951623 489313878 777935035 307220055 763208470 449388947 760631396 521806267 678889979 69121543 194890540 717449377 901566751 202738925 487052975 93712947 692379399 532761717 972585822 517287780 675560879 358539339 842424466 472163171 479344715 289504012 635827886 694999165 965819258 76918805 270679042 213642668 604880199 278635224 548737058 634418576 688096090 325348319 741503695 23636164 923906630 118978376 220262801 691115774 963054029 189887398 873332461 645725245 862272256 983660898 986851982 277006803 872959983 984527938 999794432 99992437 216897627 591826108 782075217 710982147 959604778 227483143 859093672 873128896 956224508 310260655 503881749 540166138 870429657 401759168 791534946 706745704 859647886 274598177 897413220 563925279 970877647 970485392 988798843 725166949 870519273 879493046 891557819 524352906 603016933 977483557 979103337 858495433 869743620 839207512 983587173 103562153 129435939 886397093 888050889 670711841 768947841 417533688 902222643 725906932 844610857 223659353 710645351 403314978 801897976 937447436 965060674 517159755 611223753 952072849 956857584 855689379 924727485 664990075 794678637 492964225 864259775 12961691 804495490 362856110 787280258 609515632 636424467 105383424 997743937 754075969 946551389 68735814 857215180 135387827 682097447 577294876 823687159 666717712 834538254 701236285 829410131 510581403 857464553 613550335 743502696 714706881 799964183 970295551 996918968 802053987 966676869 635438109 871533974 342654966 836454497 575327518 970295274 411112577 992608941 970819830 989725703 97463578 841079080 171382457 968037856 840093991 962141599 115298906 643819466 980955115 982144549 193595125 383625282 272033165 708151954 281426318 457198185 867913933 944669627 984244089 991598098 919558456 937452711 861325027 880459814 186208833 288630081 615300306 930480184 357585892 715772567 698846002 972120995 874756231 961389063 651724798 867719849 495239173 820855790 887151629 903043128 991422995 995614985 658768521 665409604 292763316 575234035 746767226 987666513 895731253 920341499 154594279 203633161 209959800 800428573 394240175 561524636 824962152 886281890 308915474 737505070 872165795 970738487 379587157 422839380 359188409 602872883 810568425 830266201 778795502 950856446 906888142 942924742 802574249 872732888 810625328 858321978 782632277 880478622 723472605 778048605 880789383 955018690 227497053 996410049 576020630 749702213 889285456 909584460 72356522 782151451 738146893 884307977 264612720 522044942 477040604 673853049 199583930 269871259 590487111 941234789 940890115 984686825 755709353 768460204 964722396 975098453 21662004 575230877 531617519 713987021 700722641 720298369 81378682 394883787 361072811 597554273 123125107 773171031 828105520 984252024 746612547 874845168 396718704 549411648 214049384 545426248 703917187 744613368 412084691 435072992 271370342 582614406 663866786 998848945 138255668 541128446 600925381 975886248 874412973 994764769 433754045 555596618 695891308 919994863 921466483 990928401 602906064 805451781 327876822 782899990 972905511 991173925 153921999 899683768 530841269 662855294 73559892 643800110 435173958 559605886 309980888 780441536 424805136 479329235 810433661 865097592 962365156 997665109 435094847 668843096 640316550 800757719 342523194 697855387 579845348 922903618 608973933 631082507 173486290 620991464 123680980 421604507 996808662 997969386 325049449 864458745 384013409 441462884 892578380 914395505 677798052 878700756 71646961 236794370 13163767 745946439 596687655 995027733 280714099 485300373 376703193 831865453 18914190 608270284 587807843 643236084 52951435 703163685 639299424 955414943 755309552 996022010 449333663 643494741 916627791 916717854 740151408 956593918 797547996 905368425 841197542 935846947 224411695 427817796 425201378 482313685 21880343 342026033 854511319 906930145 337716782 442417414 755979364 928446466 577443100 887999098 348112976 752424658 262840762 954353994 908345015 938317786 178257372 783434844 386030516 690121046 890473122 893815119 146857245 540017406 6860900 524730855 697823007 909084341 514023712 963448814 658756216 844140538 699327480 784373399 799034931 835406451 246725496 668435220 279846135 548290529 675492881 702498035 821360001 922633007 288561528 346141652 591127552 796771456 899134983 900995491 330762832 909012581 93610273 962977085 30592101 673730051 175988786 906034491 901387342 972166959 726147847 942728714 937196717 984546780 93733983 376417689 627873582 955725564 7909425 542883531 197843431 598922292 183097319 412287324 894106489 949555457 96820235 876392175 751572182 911997436 852119633 930254227 179890697 516602073 885911256 991044274 203352719 251165515 232736596 843751368 559567736 888513767 326632206 567039022 894072942 952710248 489012805 767201680 846531631 854858110 382992699 492448433 320933105 905317883 19884773 467547229 369247135 961379769 455462865 836100993 936541411 944331818 332079791 891975185 741233600 868817900 238195802 809235721 215812698 502867981 493015854 958207347 532839690 904466601 502690280 869699521 646277840 952431186 970707709 983615225 433442868 584097227 141552981 761142225 950312080 964080475 323395381 850639444 745335654 932359868 200044683 483304516 887276594 888742148 555606933 828260608 296181872 620348878 795833058 897099359 751657497 914835351 565936536 620433620 907248541 930546309 45419390 240737540 607433292 965739359 771983865 968232689 419396732 631047046 160176557 805198364 243063482 769839222 123670187 484532887 893968746 999272656 587240957 892580926 883533742 950487690 369810688 641252659 868742906 925536077 710717667 757379219 21100426 34909414 760464791 816406015 519281985 940931805 305475099 774058787 444385286 830080998 916620795 917137050 279941700 714452213 269189607 465104129 63162996 565119790 594688398 844422929 804079598 857145469 782903040 895415834 218321039 638038530 735696538 772126815 570956370 796914439 721934986 949135034 645868086 778230586 686372647 980551181 512616894 769731160 588125404 856097848 351101585 425367555 783623393 820476618 767370825 978823427 604599802 844170257 505875056 996923875 927059965 972432810 748123926 992627625 977814826 988697462 860591803 995795151 223549153 484135960 297499293 821157307 701613946 861665219 438796663 970834469 416450535 825027293 854913371 920982104 349536112 992314520 659448099 698979569 892664759 974366159 661558309 839277836 962791416 984002181 695250300 745529251 177938277 375706437 464751182 802060098 333303108 670982958 942574096 980309381 437616468 728840274 798785159 810747440 129279657 849156473 312147974 968632705 607788034 721190544 761193726 762346387 114886414 724493963 966610584 981336070 964459 451074918 254104752 651843894 890022600 939527095 301828736 879978191 682808905 913524587 96738368 465531021 65620403 754570911 94081720 378892264 357110982 599740899 676553065 929067575 628366245 700232969 401910396 464724914 335880918 369143834 785475711 815509295 215691321 311077821 38684680 555335221 689057558 981509987 478954353 767447779 832292780 997361562 319798099 958343120 548249993 613001384 309589044 338712718 322226107 500584882 416363880 778139791 997501037 999899991 570007734 674653432 388604508 693946279 264491499 456366203 593658378 983123025 971064023 975986722 836498727 910480344 728311200 885377758 53721203 708601068 522029042 701876484 241706841 939845179 476056714 504289905 407696849 897024861 316069997 616779254 727482199 939451608 821513951 933681067 791868268 968436544 582792690 593253004 270186166 570646211 162200124 456551678 536598467 985860459 742113966 793208090 116304571 782315266 447268735 601247394 876538186 927056667 674722953 822218090 174365500 570526149 318390139 475106646 974154056 985648453 443042055 774256050 708070187 793755741 450201851 695603001 247450458 326077412 682245219 786301819 331537706 390767921 624382349 945847295 799021323 936084943 388919161 966091449 739123287 959021010 705949660 729229328 98998321 293167046 692986102 870526103 149893249 914010483 537175385 626718210 772910786 880432605 939478189 977977888 265067827 308314856 712268541 732265817 912456732 928633142 966040861 996588596 831916376 916402959 776594418 798981135 394552228 484443236 869754956 881685871 540611700 598445551 91732115 351936663 266918934 325607422 424869845 616288467 19404401 871968278 524698081 919614711 157768893 468803803 97140822 754339525 170969239 343176133 999816553 999974909 749353151 985996569 440930702 586796608 318823467 711707027 714736842 921929987 106982234 940003542 853155214 886740260 586065987 838949707 818758275 967808859 229505322 763324749 11669522 254234426 565007529 738783851 102810902 850090422 674820470 937250296 805026023 915055023 896531746 984020025 927734772 982358459 589605225 857700738 340521406 559458598 759449361 906573691 412463575 946228269 47218621 304392160 579264375 887417101 471829883 565663118 391333336 966170645 790434391 928370073 587089423 831753721 785855409 823376841 984286117 996159588 259263147 613932718 262326574 670295628 600358408 841698415 456014658 835315400 606183498 885577375 168536685 765917041 13310562 892194277 717805508 760566055 900645728 972221342 859230465 961300871 199481759 611603753 193041033 419202238 857336266 862541229 404331279 655131755 231950742 585474802 831634493 971729438 914927682 938556364 809701494 877721463 118754610 205559639 738423627 876138468 247455538 940063463 234940702 895734847 134043243 238699348 447431465 740364638 122328274 408099767 886262758 960672329 40198235 718827734 53440055 956170183 232473674 869699428 481617777 762407987 932548751 985608938 869039487 986367667 757045578 937958306 878371785 965530189 236563589 994210146 308642912 857324458 39173872 218280074 412200650 815980828 33003816 277663735 287253729 327789657 775381489 880396915 439718106 849352767 351224371 660510039 201508631 914546505 989571892 991082456 912721242 949991170 434037124 724377476 95443498 690063139 310545322 830971470 269963281 476532533 998767743 999230907 185981229 769675084 72214625 195012668 511325907 784472374 598792726 881743171 165901681 168511491 279699705 819658115 322823387 326492386 14955971 361368137 71485813 902453983 312050887 801092015 954123338 960452654 705771034 745324606 696112484 943170095 562991218 998317288 57016439 180068612 538767500 749875030 151514284 687428042 501367560 528006538 253181084 520448376 36594973 194446622 699136109 991245754 567631150 879181511 307802016 552418316 836841293 965127893 162078509 873843205 927396058 978507654 683808997 921074502 525631411 643309139 312963796 380312842 985475592 991073991 345220032 613251333 519160960 807512212 855589068 919191354 279914787 805817378 390561442 570776660 822857613 970118707 983010128 996994566 801618131 895088201 486910042 633136084 232661023 239125198 633813040 826900965 821249691 853346474 900871385 932384758 767296213 920294559 285577893 350288092 650922454 700714068 574283230 588213960 281633088 398438247 480243852 735090716 860300574 955382518 709110323 830956852 896437661 985582967 448968339 549295364 666980633 851846928 561417224 696017451 749777701 829679948 595572778 955172522 197501695 369516280 123425852 676589413 658635179 826687076 981359590 995229652 230229491 909182815 431160418 550454558 602775955 889983062 202068364 506749909 175422763 812563326 420177846 597404976 685283606 982423076 9203441 830669129 262263517 790498275 650327110 733075755 799609826 810781504 187711264 915139254 490649644 981468118 455208716 856587136 896503462 930309789 986366736 996269521 703069043 935664243 546173705 801145490 679859330 715674741 928099286 998128786 451644503 965725361 982917520 983449906 668859126 970579402 507070271 974333846 503970487 691726162 666618330 767052604 964350002 972697277 947225524 994311422 381846644 850370156 59390030 995379678 539581945 899714446 494344825 770784859 106235637 645902636 208356410 831695030 78893875 843985317 334105665 911859847 635312178 651772083 510453300 973813667 849539779 892913339 170931640 912416172 531956374 839776172 801597552 830959722 190360443 824388799 28148274 374481031 156917396 818288338 45730847 529200194 77973199 716317479 956265359 962842933 247132868 492791189 134660997 694005735 229035923 941062779 757056404 943633980 259730913 355856970 927344986 980806548 674603587 904252083 610713656 904643984 36744997 108093388 914552739 943585348 257911376 634991858 810271479 862559365 299798317 731146339 854973694 886245219 653409994 815551621 4066424 631947038 821916660 845637168 549238174 768621780 211552049 501262244 826441010 845969728 751124193 970747857 770987555 946259825 863926737 934625088 599154396 732396587 782563721 842006652 912054381 941067794 484190802 892648505 90613327 685961745 603629098 796627799 572769370 592774471 961268210 970511586 52751199 210792882 989915309 992338066 730841982 881901200 701765740 743519040 605280147 926497083 573010010 962150123 316330852 791499416 936687823 938008947 970147583 978844581 12273861 768494678 306911999 616930168 925656095 951450338 517882982 882790918 518053467 907583120 574319596 646400817 399099635 606866920 354463444 440721748 864947190 904760472 663441069 670173389 793167673 795270478 769063855 932497082 840675698 849411791 280850132 649507759 669265380 957823812 978151261 988856296 704250294 727268492 578757760 781749918 797910145 889627687 544525355 577620979 976184074 986307182 522029898 837595257 112469687 411402642 2882632 501128331 555834936 944462358 824046491 840518466 678427550 825697041 985927738 993433276 158831056 212106991 89251224 548900269 14109747 549509430 358635702 406893678 818230580 847579811 466465241 601127267 159931510 424191583 946119388 993109198 432209076 461135951 435636954 717537296 677483624 752797367 826540159 999861271 492927923 570437470 900216548 918462003 592251206 839838235 235010881 796038962 391452858 863865575 557483386 966994597 311752512 741776691 239691613 289030031 295233377 899227049 606272060 774315515 518162548 520938227 545438368 845437963 668745736 803479901 869866030 960801265 407148970 564685802 810489835 894007241 625317257 764032040 633027982 823385529 349367793 954910398 314429754 398040843 973537811 997657467 638434389 716002977 991039270 998027306 329549405 998968583 678425203 813542392 709310776 861556118 471747719 926178989 188981749 406662736 411439928 917452831 472961714 860917419 688151882 854387473 268471559 648458696 955074327 984644904 454018479 526308693 487174734 593392069 133748744 612574080 945538319 984177945 861181159 927741139 777955627 796154945 62079670 862084697 856887943 927039418 220647220 631678201 242532469 936467606 179735851 804115634 13863283 319431242 720674052 847160996 665482898 877422808 856531882 880087781 662098138 955281494 206361969 267439859 228340209 504742628 895994111 908989621 514866173 663974078 869043429 945765366 421196142 830121465 476528335 527751839 404712351 837994864 27184445 284006759 749992503 993215193 146886803 881618583 91014454 921526075 9547247 408394272 416556624 935994060 561223024 816711672 821740915 906064290 897351884 910914391 540748496 579806838 388458055 469224134 16457398 626185762 892148911 970716229 567083849 898450553 326072635 908441111 531566754 700476258 504743117 749602782 174188422 434650044 295690406 486496030 742447239 884841180 244001061 561483893 880549626 994770211 296041946 529354747 5429634 81568801 424442507 997832124 588623279 777494184 347977810 694934653 972649732 987604642 952102544 997408729 553809341 688842694 485325405 810559767 188012227 419424769 24910181 922075238 365497119 523961833 35770352 148595244 530370639 950298441 13120764 483355070 588311347 735528676 156799643 659857415 680633714 853683667 593443325 675804236 683376393 718245808 524341703 571900574 734398813 913856429 516229168 765931095 381138417 749467510 671177761 839447944 894990995 934560443 200407256 466208202 991271463 996035672 285573164 825149568 859070678 884288561 710076899 784397631 820602968 995296264 522476329 809219213 552242286 974173379 204208125 945928291 910462117 970585822 817140584 882816965 203591541 844359906 862602624 963443268 540713827 683936566 78110662 846124537 463203189 617939023 698174865 764559276 744359244 941242823 415469267 594616675 125273493 782341977 150813434 607493990 787121831 862797695 324308606 590137180 243489903 253179289 643331556 864369062 602874533 809020816 926824216 941387437 512753170 678073319 999282974 999706360 627880787 801377024 11906098 782342003 976262257 978359592 988586028 995776568 197957871 900833142 384440674 819670745 584567227 828586944 643070186 759702678 607930124 928624852 794204101 874513889 130376813 230666230 645426930 772022643 397625673 552052873 333250400 817559675 142868710 607932502 39282761 551009611 482227588 508410197 405418412 890382390 15185258 51942020 25730552 824084059 548874196 697578766 585316143 840072652 817467772 885281797 817042600 912891813 53106082 547586389 592669578 739448145 64895205 944105004 20566056 450123063 941578013 995871507 686805527 919138419 999161780 999562908 287803624 860701746 745083377 764365019 381774128 970853317 240404207 790208379 23845178 509318305 264844103 534125569 254209736 739931870 430482075 455596987 765879538 870202009 860403885 948259499 62935291 661039213 335475274 468161683 725478177 928740065 871881295 909401651 941266181 946041131 916131667 982616741 144478668 840589106 615913444 644594295 879608216 958580859 478108465 961399020 186637009 816572602 449147853 528514742 749072385 830337983 499546798 884521665 877863783 921170060 142739481 785533525 643872590 815762417 50493021 638965625 161746250 433877166 609517877 659001997 31063463 932716792 828310308 883759106 335415464 744610148 711455681 965410712 338831918 960740414 527192026 548723839 239589714 354194491 719891451 820095623 585648969 700198834 784708371 863632990 750985603 915611133 454284142 551964145 481453406 736800522 734573175 829394524 742784416 945810963 13225471 371890246 798885394 819312558 691191230 691246810 949760653 999377598 775683080 879175061 206994541 688497001 946767849 981927057 544160683 795345601 226861593 638074567 240223625 965895364 657102007 751003755 955806706 995841028 592615270 733072337 336798579 724665431 191179893 602410315 170611230 765748384 642178356 723318914 193353992 232798003 151665040 710078374 268673812 560458091 243572656 630075114 283471317 817359742 446952712 950082933 118703149 265593547 896544011 933932916 308934619 900062789 305099380 904578008 993477582 994447398 382096375 851105833 867737541 902216181 432909274 466193779 112540341 450931151 739237138 817756050 308942116 784342699 377662226 404104399 571556106 784943570 431581765 728785784 925293975 935908366 199659165 978966824 331205485 529235585 391729413 615059283 251987669 723151453 823814434 859338196 590842020 632771311 115763519 595701127 859504824 889461713 814815171 818047413 267245217 738547704 71416946 231409637 234776143 648791425 745847422 936590701 484478264 828056212 741715093 864922208 459193402 555544286 798774056 948011502 400128457 780746276 44403264 210679301 440092859 492660675 974058295 988102492 760679940 876800701 198620631 552643734 703015355 819311082 695426760 856746121 813606352 933952825 378328593 954520854 100030547 994442702 287952288 353251064 868743642 883552550 749333040 889205281 793772975 929837634 516629203 528442635 691688223 829869064 766328300 898753766 114083356 957967144 458044111 762408068 788986751 835958676 337664392 901754230 614567478 953748694 124113809 232902889 709808502 969699810 619600390 727385723 947426889 948933753 536757610 539509544 286941417 861542491 247148912 683620218 496247303 935816013 69205231 255946822 349471375 720223085 907004732 990161022 489189474 532648546 303755361 681587813 754209454 760705220 944773528 955020537 987540086 991657479 884300335 935766779 208872632 749902748 442714786 465201623 606781444 966799786 422384796 851471610 833429558 871086886 314703251 555576824 119001450 615252849 951808867 976624242 798559300 852170670 884660768 897322478 991412329 991850389 296461669 974250227 374048410 618274307 199632597 962308978 892888691 958264305 838019741 998565168 368906932 633740406 437340569 647648062 901286021 940570511 897262909 914319694 632852671 687568498 388535924 922354824 392570438 709802024 375436163 746245233 182453551 260567494 292124854 925391186 406111749 647891134 469967576 919051031 155978833 293727896 580633592 701794548 700190567 746176871 68236094 406641917 166733939 800964757 747653610 748153687 386487371 990685395 53266418 710051001 347988308 782976417 613891868 628219247 534590927 688604267 171214099 171614734 963274664 965447684 750477298 988798285 85287743 161519351 917341563 954297310 498590514 583259612 102372291 176133854 315498380 626162972 754336487 813656057 715368597 984175854 988487682 998447649 983497482 986546268 54469302 805244415 349390397 448029074 730257103 930144334 19153271 946062633 639224741 882699615 940242518 984985169 737783231 964444994 878517588 983374553 257495680 719174830 994526097 996564007 128544865 930055094 778199603 887405655 211587851 799318727 447352706 773645247 89255515 625335435 157138635 265022654 204891283 620212222 828767126 959383785 14982556 576548825 220454076 736004762 883550435 894527570 120207010 599649602 369282505 618366190 47718619 638567849 182132285 724697410 884629297 945226084 922195264 962956594 58514816 600890642 885915451 988962418 375572062 567637865 391686731 765068309 508745966 919727430 751736891 854420166 62373432 578125706 53786093 800362302 932529797 964037258 924453122 971072251 491819770 571250857 926197141 964613347 312114214 485021911 494600722 611369560 968058275 975729204 816889846 857418720 558685134 710072930 318643734 662202868 740239117 925612746 444550407 569467808 831466294 991233044 92602385 203875693 88701172 926884407 288828135 415596239 44939945 265038725 797640326 938441298 296022303 827573029 898613509 949076663 364635712 836361695 585201610 743417516 471543541 970436567 932667269 972237486 968238302 973869372 37998584 498580941 974824809 976568593 235862688 659142540 424411538 793209104 944839045 953986079 297595238 705375341 442706684 916435075 864149236 930890083 276531785 729707504 293229316 606939259 486577613 638256322 290368219 487206996 532958149 989408758 294214955 448832688 157081265 348645425 604202580 938045763 842931798 921352814 955459244 994089285 284969819 617010131 202569323 799537415 614473218 702883473 777379754 803222750 727011829 787440121 927438737 934164262 912015333 915536006 907293906 957469706 892993871 953338419 738987599 901742306 251106494 353827913 787724664 927603139 858015794 892330056 809854210 861056521 338998364 933777547 566726564 978697656 973402396 987069914 742399639 791875934 516040462 943209821 215043886 840859986 368027030 816203337 482533623 882366877 629072612 658120041 362107295 406402309 715202350 864586085 944179078 975566521 931126951 956523337 696969053 817476846 926610632 991594362 513434677 531101600 415789978 851249050 672085208 686829647 184612435 492055452 470599791 523747877 558889032 745669364 935447189 946278359 215589319 223162563 359341234 636053854 313113186 387694997 148385070 933097539 935837202 946997709 391898443 454742547 648351665 765712872 805041230 880895648 829150316 973787888 931687862 939442982 15802169 20139754 156798460 771515290 408979577 529945770 552436018 889085114 422521330 560978880 264491050 269939460 539223046 589834631 636290274 980502746 188431572 952994448 79191511 709884302 76237045 581616596 722281765 926133013 493963297 990721230 142356947 526930711 993774290 996843136 248269658 789765480 341398683 534436336 366744353 623830899 420685649 521308985 450451240 515678736 130294841 679552204 467285516 707381274 479301528 965675976 659988371 713382258 190446248 561726979 339437411 931299766 81459905 415565629 651637820 945333431 949240244 989999518 210694751 813000266 929378499 943072494 314708127 858252437 773979647 797988140 796322452 887418977 22309890 77426335 129453914 744168017 373955849 898913960 521422245 544957560 139299103 175251972 593882739 874242368 567837116 705736579 705259659 753541743 163341699 496747901 699220197 977436096 625530589 650531583 809454995 926358907 749665457 916734554 123708970 364480940 137862759 857882863 54265412 531557213 531285335 552647981 841688705 927091832 117761608 804675872 906166305 912636672 377432957 572311352 101095529 829157655 393953915 426472058 573890501 620825476 685453459 789682929 307296696 789824027 494285606 865162482 739362345 913862154 721585622 773836217 292251235 911599919 627125940 705949217 306525364 810235465 329084746 885582635 580775554 843528441 213837343 469137654 492193913 859150761 210809833 852496687 731953676 841373196 212842648 213381887 989424059 999988284 920419637 994104138 945770529 974578381 477530259 665127604 194347987 731724911 962279247 998093148 521837720 914157292 436454649 695755654 743319455 861014591 873619285 920681458 319110910 735851403 944303125 981622076 534282599 818285554 682707852 830702779 354079814 488716916 593633310 661576976 913534181 962730035 476066616 488102832 403029629 855817857 545061112 963660728 463109149 475092359 385717819 392338909 265088080 439080711 483292722 691506843 373670899 919944382 152922831 508505566 608957724 838638451 66589446 398389294 637377403 943345059 867132066 872593160 581134707 872540478 387893370 535023681 79935696 574804672 97578113 663035915 201902681 357255439 102544349 670967588 346295264 797500321 548611623 665984529 199920768 666686793 314222742 475273812 392150759 418847962 574666643 756730203 113063907 208609361 378526204 393515207 729401124 939274921 468852313 476576574 294791307 477861507 114603282 613868318 507624243 544248606 94736422 672351086 311020393 889676732 943201062 975707639 7262318 436295619 26896129 945153252 550861911 922236934 243835127 277172125 611927370 788557862 188402125 915115882 105034346 157525039 194531159 737533490 724113229 962343116 895015548 935583306 414209027 576104978 955535451 973278139 96471903 332507477 254700218 294359539 444932462 461535550 458534138 912752575 823506884 918847426 379679174 900059894 108456260 751428835 304575903 467015146 603735223 734058402 798308011 989102797 397639694 439263151 702003287 873863963 949377106 985053134 120867747 909148033 527776694 994519156 24208150 372511663 104906791 427111322 812173189 918344180 345714108 548559084 894907477 947222123 839742587 909814884 510889012 874228391 818658537 841433177 707403631 799153990 95941465 464964764 954429137 964053778 875759951 940966374 351464467 706674355 559344646 607558781 993372229 997044824 176825586 754698560 537906655 737894618 36015688 74463861 586733292 645411605 588682476 915649106 204075845 548508808 975670828 985662402 409648251 505043362 886826139 909191285 9648650 409558096 713678699 974505104 28815064 358961289 200552829 494641835 115405790 203070322 230340345 872621391 233421556 765283295 295070402 630834114 155092049 668294284 378282911 914867578 162426218 394134711 346190212 556612563 683869929 731022429 882396665 915617069 516042363 958082312 512468645 662214215 623324444 905815707 199813444 284504345 37242182 618249613 930910240 993348566 688792024 858361756 516991637 615724201 549128969 658681299 572303811 922399402 27992256 335163675 134553865 735750135 705610160 854440700 33198699 646246415 203764486 903550238 834041432 851251969 103087149 533001900 33609431 557376181 427976085 897197238 271232195 511890132 141701661 245568227 685511539 782683847 248474734 282100728 474239524 843432997 915904159 962215763 772040581 844601417 891182968 924894689 915320169 968683182 153889681 740649319 193313083 378073619 883019155 988425532 300984708 468099539 825031149 977324601 387053701 512959987 371177284 757607474 302062221 319423379 65389091 810405641 525231207 703984646 553689267 616710594 35582561 565732033 505408148 633824420 877051277 939644936 870638038 942342491 281367642 784500907 258503442 468767741 348305894 686778956 361617737 397495109 238173930 930526481 302206773 880696979 144437864 470509118 54313401 413562843 639203769 645910031 346775026 678734207 797879740 854974628 895948448 899536550 422035056 685404000 530798268 999820334 908007512 966080939 928856685 975716652 794146537 934595298 728996659 898684512 576299114 951695038 65811091 437590054 69283579 302836727 423891005 691090062 870395296 950470566 537560062 996329324 583997043 741731093 92699493 512057482 276654773 305511983 819901523 943166723 206516080 724031403 255026959 564922686 794952772 994550922 551632876 593627809 262111400 384205396 67387363 222835711 241975012 556636379 902610963 985136998 469518593 604295000 261835244 838207543 157840411 467214131 16847815 59488591 684774440 823175902 338446501 679711260 927578865 976511381 510748047 604367665 588614418 596863766 65324202 516482244 709537002 980621949 450258140 901469179 337512338 920637157 253417872 882867572 691260532 943978497 689708056 753856085 458515010 775788748 728682034 738586911 481777699 987045211 515719881 727712095 157378416 889202512 913029886 924056451 87199193 899123053 998981404 999284283 613166916 872929167 498075793 818582692 333854928 683583816 172926437 181470619 366704619 502887905 434184135 863510618 426016973 834467565 33355008 686027770 727056359 859445712 705441284 730031832 763746591 928729072 498812847 969467219 516651754 937219747 929625463 975951953 301300416 798238553 978588761 999250902 655397695 698052790 954600246 976557806 350830033 364853327 26716165 239005955 366449413 464309598 400294667 619869879 522623844 803216331 157004625 418530222 671705300 800031305 186509811 834406209 422880490 619101861 488851153 616078391 448132004 475298491 997513227 999805670 61213339 394379910 21013217 80358658 944440969 980639271 839051847 889428243 592119670 911903073 751710656 953121569 980675680 989292319 558628698 645190095 622790171 824671200 98615505 915061944 11490619 472357573 708806313 983285727 754865892 865229639 343472699 788479804 853808735 947542383 805965007 958956460 433264126 656944992 302039052 693456108 685540567 924390746 882002899 959618958 386776112 602360734 461326959 872873299 198807730 379293739 596092917 756349607 616533268 826655663 793190105 928872439 667471962 718474158 175341387 835459555 444961972 470663424 838425445 941770074 147594493 214917056 821573992 908418813 657972863 837938949 842307052 972792077 886181235 936108044 583732827 916145834 957865140 978092559 41883835 323224207 317119591 757627592 106840583 326652582 823279215 991930571 629873987 754028530 436740338 653506817 422350126 833034916 642881489 910954401 195549446 334038711 697454312 791299673 155985182 251868890 440410892 684957012 61614599 897555417 761580922 874821947 991587190 991662983 375691252 421272111 31636797 108085772 530107198 603410882 239346868 345800013 908299881 960852274 264061352 997084774 301692958 324240979 572204255 791769125 490066967 852558862 995191843 998359492 278570225 871254526 535720952 981098476 857378695 960214272 890092818 945827298 859699512 927198884 449350178 732757300 475196293 686742036 762335403 901682778 977994820 997802116 201422069 555619076 619112207 621559214 537454320 863463670 737522355 826025890 507217049 536270400 72036388 428557849 966554037 979341396 249900436 600252211 496111709 587967357 90952640 363600024 11919459 919111452 17965363 204264809 41280174 732155108 886693003 964784564 933188735 961474561 14492452 848319216 986166909 997158712 738560746 853744707 402656434 761758433 438250173 975092454 846865396 954606932 140620410 832444911 871855492 897740795 379962513 914666830 521461261 860994615 664868951 883193494 450224170 772724445 626702249 936047947 951797050 955327770 452943473 602659276 512788743 975051139 333666089 763545401 509847576 645775906 463851470 517699226 410322465 527877051 3074722 986709429 485182044 627046424 736086646 783668565 219870554 673629745 903171046 956207091 923478438 930436009 303839645 850586622 463129975 467339386 579011303 779574404 30729256 913274790 338550559 394028712 894317429 946979658 822664990 911763598 832323786 865934975 490488706 992403008 146669419 579147127 520881253 694349023 120524867 720652301 80010870 157064699 4984927 813698074 216938603 857543286 918998932 980826842 969186870 982506373 491981106 571747515 782273676 909464947 300835292 668880126 295964427 751891843 666313401 918775603 808183054 877034519 24861954 768407252 520297473 918292531 656397699 691887097 700033696 847834348 554955909 707924016 660632906 701482102 786573431 939585529 558244984 604499942 184930184 334823630 911883355 966206308 290559891 667297760 778345706 901221895 143141879 308417105 140178127 465141713 675101408 833526414 609367899 757208303 151839023 167755236 419411525 902295138 70942132 320109373 222422365 319491514 453486822 961443663 112871839 564407392 275571214 608606779 205614123 964919984 557176207 939384633 312707489 662392155 248818105 328721438 116792763 364230275 874565369 950554292 31484792 403887202 560816561 749964077 683968131 960633403 481626808 841154417 740752164 913782165 10466568 312175784 994462195 998110415 744980730 863666773 417710924 834852329 102763994 376305741 478153939 784968314 953259990 954379236 486923817 674541303 460436898 692921782 279093181 773060895 336574996 719144839 776822193 786833536 969359580 976108543 954344424 972428285 886080071 916944291 560810779 969631572 897833810 912848029 607530675 805719290 562122429 573008631 500697389 586310568 683731178 781335906 585805476 787343055 205910965 668013715 216607792 645894396 924380293 991287252 174657758 373368024 725393427 824061083 148203915 693671346 747950527 971075577 441676532 979684447 501249988 742806894 565434771 682483387 802528881 853939382 846073482 897838950 193776539 351703838 668751847 993227689 602513477 861003067 750237987 847265605 532615014 929179489 834168589 921934558 217987218 552477064 933423139 934775051 698747038 768321656 74403962 142765470 723827054 893203340 709850196 889296607 318057312 922102777 842398203 876578602 132363548 565968886 158287955 175442485 390324911 394941566 464035409 673073263 81426416 488446815 707491077 922954006 906120732 924536908 996198648 999353422 651125986 914101393 824225261 963104151 937137481 973249750 338470474 864010360 40017732 508074779 369657152 505633995 649318498 869820286 540176766 683875214 731363004 875268190 948948703 961413782 248793461 810927650 471054303 554815311 322838839 374026217 816512970 857888197 274539998 566288898 299514871 673622520 466913246 536792562 896468230 925183560 242813938 734768344 22030461 204101552 382900383 782803310 830878919 865200609 994064513 999171892 320284250 862482938 889312499 980180496 104536327 179353595 513760966 943204763 756721386 946484084 36743127 241010113 696245579 780829401 306825714 396697050 653358639 849260222 910947076 932691180 192382622 935811729 804729871 901619271 634598500 955360238 987171519 992138399 962242138 987013135 69977824 82494430 431968220 964829284 866052113 966212995 507039721 527735800 973137575 973274059 958885730 988449249 699642333 720281087 728644180 821540398 934562626 981398600 846479186 967725434 146900544 778471805 711123915 916435463 207542396 543605981 499329027 769661867 525810579 998141763 637565354 894064300 389940460 600683317 561663681 653252632 188601466 848620316 337012874 786944157 332473781 395781692 736265483 957984670 213144321 962610051 779935890 949812544 235382578 482821908 736006406 793062817 907010849 977396586 260385009 930727345 917857387 948181177 116296023 250469446 132240223 455429544 113798091 946563536 893196416 952089383 280075290 665477841 415447555 816167908 809222777 819156526 210910611 937841219 125502504 944833379 334985119 954085492 742025536 866785435 143819773 812822773 950799769 959913255 228966991 371363675 468826187 543921548 294106503 777214333 228080061 815692161 855707851 951844798 496406067 716979841 450406624 814706251 486177864 725602041 884300277 950717921 215319964 444694941 914136731 957927767 293475029 814400244 980119255 985868202 126034035 204153093 87894519 288173423 912771314 974158366 988404193 991982176 416394052 704235646 776800492 853197049 300513015 545810557 733829511 973429154 562353965 623976925 871001072 873154233 672574495 776500822 723803842 871847671 62053378 850861828 522930766 933754763 795939223 850351750 278335050 345988864 748978501 995415150 554272476 819312104 222363349 315699493 134712133 740197070 496529066 621356534 596239448 954472441 906998807 972502586 506500293 761843961 902038926 959427992 347286512 717953445 465485610 601542522 293619895 704749169 164943872 847531471 573784586 640123583 5799697 573218177 322646439 631816148 167316168 586719034 445235627 801952590 65938037 91471316 181689389 382111145 46191668 958300782 926588468 948213280 726626106 886038323 561702803 582153641 203834227 350218267 274353346 365765044 793020897 972417161 135911920 619718071 109209765 531415768 467098366 880017270 491669216 713862126 930798644 940837719 744479647 983587021 856322092 990532334 368664019 476726269 18697025 457610205 779141492 903030466 258764746 647456736 171291531 299413736 999595184 999916101 214764003 236153895 945781682 986510481 953043662 985247387 385552462 724621772 625020043 758540701 685949995 890098892 73977881 139317743 543156508 740869043 734918458 740785848 303374661 822311298 541695109 876236736 994615187 995248958 429072281 913879996 394733076 526374853 38537042 159078876 824276473 900316213 247032924 736830624 565169618 909034950 187428286 789295236 718552385 879998919 761833477 799941429 649669470 912130712 927925864 983424200 707683779 823254779 119701765 984239106 755323527 826357137 659404491 877752261 497932420 968719348 662893732 912248747 478032476 554970357 712448877 808664032 190761680 308477247 961482258 977278851 934394314 985508264 158843009 709770028 432089497 939705132 926825743 985889757 34711864 823185141 736537028 900148363 459133014 858692291 334856382 925745363 632506973 662598480 596943515 892050724 151910060 835846028 669346352 967479276 555715653 934276448 233910352 705546795 434074675 924385917 946327488 950619938 758605169 902014182 288184521 685807558 774687189 909945506 633265839 681951922 909022972 910172612 922933894 995604759 78623988 405627631 950741695 979746570 954767147 977823504 673456243 836521058 395270732 563268631 432797990 485987210 825092209 878762857 675436489 993393724 613584422 911266709 955125951 982272189 590767416 846622777 501151068 708505896 425920469 985411279 797099150 899877896 453349182 524045508 365195467 810997541 468825788 652822298 327365131 938131739 676007327 887833422 561283165 734904736 746984736 910009566 709271047 778800469 68260187 870101045 546128305 928837203 476901889 691729030 409843616 647561305 37984844 969529982 9039803 598126360 298406812 440334483 671422921 915902124 528151595 569283982 72731056 126632209 60438047 821519998 276848809 563069363 323602696 756465510 342936523 606572502 837471516 865051133 181330668 474032553 519284949 843059836 365721551 498453227 235896350 813483169 980134424 989959230 26475913 42438294 25170338 682134938 778001546 780851641 862021030 944040658 755490336 996219315 601403489 933378356 753034583 839520985 223519677 800587556 452876483 578046016 796517687 832049144 776405173 885000020 106206636 470107948 163452060 561064687 89672414 957192872 904641123 965900123 941415145 985437222 326500081 799978971 715732025 857617087 619897938 823206824 495366100 938918228 837408686 949295695 166893357 569885339 876290047 944169068 577219484 740818322 843295490 864696348 314567743 996361589 32297225 713654929 883451176 945567177 126544699 912538938 253817331 856227033 477697887 642559098 773915059 940472520 24512838 294857482 9003932 530913939 291520492 659966669 994313112 999828594 995716193 998501307 193616125 216341656 768796563 815574527 330237560 729276705 839762937 860874714 7026462 514656490 610588717 990246105 113631715 153987386 266535571 505592640 910793004 932903903 669134700 918114754 740802631 959179472 385263740 824520698 687580278 824978777 809159112 993959407 679965273 970790542 593314995 756188783 585590609 753383370 605662408 886280891 740723847 945758611 802591064 884363432 910564887 991258749 104003041 606711968 991904335 997139608 426342805 961096787 978792945 981649530 91150946 790597153 228550019 980329145 250278541 498583213 788251789 937585429 535771252 878589105 890244340 980838531 322189159 612274030 496907888 922544566 317440080 833766967 261058867 425599924 301963821 436802205 862662959 916357614 688934727 717914316 470696678 694873275 194358925 590682838 628998127 735908263 210080548 639215102 1689826 44466658 855540903 880015785 367942108 507356835 502122089 904345923 576471461 907604134 972685144 981083980 783769814 935133233 329964799 792448539 892025142 974197679 786247006 823916971 818847731 860578351 85235137 625040848 867298409 972224919 762525147 781268250 383284423 562961696 192438853 538289271 928231512 983690719 944120976 944408346 79373369 569037268 734500740 917276593 380343206 997173218 951622911 990333989 677428627 759302708 393901751 854940603 916980914 944335069 921767995 961961411 354170582 520472333 596069357 761175169 163640904 382622816 432273521 590325650 50674329 465475051 923274425 965124178 668860243 847272810 633307820 902938814 899010866 994850550 592133167 945424943 816622996 975478563 71993197 716054191 889651892 979607257 618804081 735687474 451680423 641140501 207521284 402389142 936348906 972592831 553095113 997983460 656021373 766713135 355500879 539451764 201159819 804995318 656794790 848013360 397568530 458899617 715597784 875389829 62032573 68791242 250030655 289408906 82059161 180610074 968536133 983302857 33550508 783406439 503643213 890691796 874207910 877207572 461801973 501240829 587591071 932780619 865972842 979690175 725503261 753964837 643894623 925846739 134927739 304890768 726984088 860374654 136102552 331808086 884287964 900273039 579937688 648279453 471778278 939126461 975103789 990559921 197034980 740347674 274417002 708697785 70709455 361122160 370443252 757338281 129360654 724428880 290853505 511211564 51542757 660264315 172077667 672841603 420023098 984502343 113545664 485233474 72675653 848268009 447098217 920290951 173656012 896653563 319116791 598590526 783038755 981294017 397269416 926733236 942319058 988490663 457138175 939139148 829368423 940428602 268391666 938280076 147957689 690823638 137220071 530467687 791356470 883194840 431219994 561342167 4655635 546256963 762111210 773363887 683140000 867321533 778160086 919440003 989450132 996105887 20626029 713588356 409383858 481371534 225451582 311612534 219043077 704269601 242874102 943701765 735268899 949856805 327377285 722961936 659534217 686331242 772975680 829684623 201021417 554555465 63230540 899712040 299241895 667364279 995759677 999148863 674322454 730921776 271913135 350743331 283414432 682958358 457851482 597353826 23278462 588836676 796814188 808818938 402193303 523864257 165299790 181065812 443996148 875163947 820139661 989191878 666105541 834126900 738926692 951606020 411040465 783900819 604753105 939667634 715717390 829052772 511331504 686054047 461812885 666982185 754608633 809937261 126151780 444208788 330260049 565235438 477270901 848037261 26549401 66734875 649049040 853907519 915391390 975334204 586832642 996890350 503839634 780212097 179370914 364885672 95310444 497780203 350231256 623936322 28024601 401380952 391367961 905398709 946827322 951768690 387390255 625529291 902222929 902426054 999309414 999864288 837354611 933928788 253144588 509692339 679621941 743543461 2753671 426842243 830518865 908549091 289814548 530510541 668961066 785817345 516817225 600633436 556635851 867169560 582522660 781989994 19233262 536299052 983811922 995066124 836897315 982219522 143096304 316393316 102686672 551672708 15289757 480610515 520080232 527949164 32284092 327391865 952448237 977892979 106866063 211168071 600937342 912184825 63350716 733824454 396056455 434585080 521324032 948024146 891836989 924778560 64845092 244904860 407904298 884126084 212242318 958058501 278093322 755201733 85530004 700069636 487779245 737958467 375586105 807849134 41990014 535763540 369782823 679498492 698072333 838963650 322235131 523419362 443390472 683291873 739660711 923610117 903834321 980669123 390514037 946270635 121196256 428751481 971659832 995999502 265529590 394564079 279441004 432057226 355765140 573406902 7858193 203448463 922099892 948655877 107785287 116281590 211154818 927035385 478542893 969471991 665880093 722558772 69534963 212511892 386067450 535813372 464235083 765848996 334408560 851271628 174374868 256632046 19171721 23410091 671583886 853573866 394690066 887905297 402853088 490448881 229996252 986152428 347758459 441333611 73194186 669094211 4959138 49895528 961115676 991715669 859277127 996719060 363015752 603771286 555948796 859279171 550825953 931289861 168799773 233457476 414965379 999624632 239912228 932440060 949742359 961368355 663276423 983683551 758930150 941073391 3388438 943623432 637733668 672322669 387376460 492288629 155604799 803273495 180191216 793231763 420753514 596621903 18497977 79975924 412945580 585348776 751003259 771973902 374016138 652138810 873880828 910882581 918618653 983492233 601604908 857950755 387381698 844171735 967553010 968295799 560602103 827213981 687374766 822948107 898198307 981710595 347634244 461871486 166911417 931472407 205097866 529764422 888356885 985956934 75905390 648491691 808069128 811572339 497417282 927249409 826906994 894669028 427717585 973834101 686970535 869662749 274572236 628140445 189992078 568554813 618048356 693244288 335629745 837243672 219930179 883336579 784839110 788018472 719614473 973700598 813498044 999442260 847549730 913450690 458869550 946201935 599924317 625639853 898555023 945071825 568546629 582363973 123312398 752330622 971038524 997702678 607916440 711707283 944635333 996560311 573889556 677985727 480067934 675792840 189367771 647348660 880836873 982081051 190810787 987448281 1625762 634678742 657331908 924311662 925467841 965532916 732617611 855295093 188634358 796955680 824392771 960429530 117126936 476038501 567621952 638373705 138193549 699839455 189250511 997359879 488591458 698067456 518059472 595470835 506954690 620646095 405997178 914771677 590489836 749532296 183634120 646217769 717194376 725609226 847731902 942951174 858822334 899500382 746768740 801414110 657544717 901045993 724128637 780566216 977043904 982329458 52904131 142466628 250031824 419759300 148469536 615578504 335400698 440418361 392795505 416678156 580192921 925409530 81197163 368181985 7547794 845067053 899458519 978844023 558685080 921240784 520631928 689539463 393151009 624593544 931933321 962894518 946459088 949158859 258179489 379179350 666264546 785438993 989672508 997745878 38287509 932864979 301792002 950561368 422679711 683513719 749490818 912378040 878477881 904640473 172572995 662016324 586503045 697916968 213259422 517776343 870142674 968269485 596136403 742535426 565219697 657234622 683433123 812637343 255311142 752242734 210898588 264053897 662862938 810416275 611415252 988081584 812206175 827652035 46793021 216672437 512913966 894527960 759540160 933525534 338750233 707602537 810891746 922020992 591671361 699103879 460093486 689001684 81968047 865040927 170885452 526434382 772518303 854441934 719913286 865697011 526140592 635235046 459052290 758538002 55105586 166632459 318849969 715890496 615475154 953223230 216812676 354012100 513786186 721601618 922070550 939999754 175747117 328231764 195880101 730094424 130025981 470861978 362125522 711885325 900223566 935046462 309977229 865866292 556426145 990794267 904525696 935749318 539961049 840922664 933005878 974467535 488011110 611651817 715494895 772034734 874837423 926719643 475767199 549306982 827025862 833688181 903813274 976845765 738406675 742483169 764301141 879447265 244726605 530055168 79318453 324026811 421648719 666145997 318490586 641272168 478799891 977187227 482607957 548261212 783724149 873578800 454882658 868349105 238073482 328424230 419868003 744789372 323668895 699331884 471556874 591981021 291006157 584782439 363492591 454540450 489099385 954653693 873043997 939003895 913298342 953312261 959968079 995951082 498684622 895432924 58706769 803589313 535894222 638019653 778235329 829990720 81088637 958976193 772770715 957615994 829281283 845349286 204198294 456437703 689675264 967187678 122448239 567342983 427961459 545422579 658534237 934796041 987897858 993574789 823620530 893453798 62490216 539991884 703124260 832441551 38646459 51395059 23795736 995931940 288399288 875085271 477188940 796140253 540781107 852934621 520188732 975071644 586163152 874076211 585915407 935051250 958239106 982592223 359945084 757410500 965773847 987354063 407801504 827907862 606513284 810972379 872727860 986222968 756473141 999085461 711647289 821088270 820482438 871669428 47764842 638734599 46439940 335342891 830267607 970634395 653455092 760870278 177149002 442357510 558572567 639569576 966591533 984649496 127690274 780248674 41552498 950887143 134128763 793709764 467017512 965001370 124196601 297741770 543358465 845998499 54804655 830924149 875358178 966032411 691880287 872187939 195933575 934612392 737515985 744015641 620571644 817465980 242341603 386726434 193121586 467715820 19505920 869477280 915100162 990065453 144689680 800633740 182959355 539747908 950564895 971910089 100036030 283181096 851900332 857508327 815346157 908127385 2401482 244984753 539823742 561851696 724245866 773495948 549300799 852544451 86228585 917548585 818624836 991344785 659656953 723143929 928620982 992483590 490037082 706345372 920069116 958203186 824008201 858108124 620595441 766149438 429613427 703354481 671423443 900425173 306532716 963817862 387274956 794623601 492531720 714460957 347678827 956244240 357789633 926867294 21629688 95000956 93357425 924493107 542532314 644753494 585456093 964409431 444800078 904964654 704994272 985588405 537231092 703135700 765262796 876241859 909652572 948683055 716049506 958203336 724168221 817715094 584453692 784534913 294646842 366809554 664117584 766106692 31435092 381075900 694760437 699621669 756500279 983234433 725869815 940495030 271381622 932280120 830543972 830978529 512883594 842550757 792854469 844783032 706840884 919504520 914986517 931255393 525356672 767806373 923278239 985212190 287784706 491906372 627046574 974225038 994801392 995500603 335219679 622889593 241048849 251379154 400062225 715646103 341139392 906474563 564418392 758596200 504994216 772096067 153868563 369551318 323918537 988111866 350956094 488333876 609310474 890734598 769447573 944382560 174497713 727051129 240290529 886092630 918151617 947735641 314056880 791314999 626658394 772900901 405366659 817871710 524130640 657707358 393466207 866424722 179491039 936010982 285723070 363648134 520089221 860601425 742392557 813178285 895476276 954163885 702053322 852973006 788652352 863969071 245127333 529449128 242195128 249113448 542721133 557696808 956990304 963997583 806762737 844240427 273237929 569136714 622320721 956138643 302962195 805437404 649663105 756762575 655002010 881257307 338435793 867633799 687211147 857332483 225650595 377945261 506992839 564985827 637822134 703869979 25577407 148251306 310187906 320377117 526460925 782851431 402904018 500723172 640515575 714834960 531586112 636494558 978511104 998756646 998015539 999819457 722728556 955555059 662526983 702280023 996566149 996970136 985392168 999278630 716279623 985534349 115612824 539389750 794127380 827145957 538511875 939999312 629832550 874130743 922335485 990936599 221885004 864990408 309223921 501916228 551927261 938403444 619941507 892702144 306643103 431027938 731657936 921603289 169844516 447134258 79871554 848513025 967087847 967093200 861939265 926344964 469270589 851147423 260106974 473168620 774086018 936412072 340848519 507891019 94530453 986573273 384518074 953505705 856815344 923233116 160603189 496890613 775739762 931801625 681855199 766212548 274827729 885706057 333840105 955272282 990746811 997056512 405443961 874127674 574340287 973335729 536061832 960935920 546520310 865030676 863377155 943405600 459462597 508281835 859922257 956972421 863648111 882321668 176539073 453068560 652688231 853124197 864659809 990916477 329610886 686541646 767369489 996351273 765477607 797006970 931337701 997280009 790878193 959571632 510227577 738393437 184882964 903023226 144446475 568072438 641777440 805845152 72663821 324860234 273484268 828126070 622256774 793653568 301925059 523769983 276453968 632074204 929574743 991592522 67299633 796387522 444629650 736187821 845311911 996987862 892515907 990622781 55148668 314085764 547343459 830122547 593982399 657173516 593794872 643363865 869440466 884544418 390991523 939877371 260416230 492381617 431144354 673163072 901952354 976792547 555986118 679705764 685556931 812925170 946293825 961184565 181558718 736701342 384664218 390187190 161826890 468806649 349011898 573327439 67262353 163775135 520152549 933592218 11119907 660153574 603011944 623449006 178611427 609503300 531207711 850665099 256665104 510705140 543651808 812624871 742776683 977002667 777427723 789362611 528603463 588375326 220192245 824108617 694798193 767914433 214506694 940034277 120649769 495286593 48867135 430191577 9412148 908262200 695405142 734358459 576779558 746877003 60585260 332723525 371952815 566964586 109452768 667229801 931185318 995289129 317032244 581133487 328446890 514926704 606087375 927753445 920161190 974346434 994348739 999051033 606676120 871586712 367683970 636598703 22692824 592646937 374998207 648755369 7035441 33593072 787384988 970771957 109003214 776833134 902857599 945016275 333038099 675181795 309588362 570270317 515862110 519115180 459306167 608037781 336726449 473249038 821721063 987978587 941970693 959114702 951685203 956510980 482818610 853027766 430423341 678981076 356497291 610312624 435232975 803086206 347884685 433165954 873604712 940350442 878611615 989260398 564990842 917403569 29462094 389831403 606547303 987012995 431102658 742480071 819875342 906316471 776702923 781105082 228839705 374525243 919328363 965193188 80417446 101570428 668638429 698538578 214247069 838557018 411852072 647218834 852692578 881336907 708706313 884667289 923963465 942862607 537786513 967145177 518482920 743718587 603183855 809315612 42101065 73327016 649386416 972485155 282309325 688982787 704558546 834574600 57609640 825492362 557807606 605285945 688653876 741207454 702422447 995353072 419385172 444194266 239894525 691885356 131810749 852884872 422971066 808911428 375920751 724252685 912479032 986747240 164030380 168315271 916513811 993472581 371748434 995688985 856105466 922357176 207770144 759746542 678029985 806925795 239845947 724545110 824358213 947711022 283341584 316258180 791902923 818273311 590370892 906431956 6956729 678100455 849446055 973607278 329909133 930961583 542006620 901888235 371695319 516654789 435429235 934116893 73422655 182265042 33848234 300463928 320001996 414913612 951758392 956316123 808815779 832203277 760152690 778904473 932588198 983002128 34256319 41439079 965898779 971000066 601997609 826323369 256816882 582594336 741414001 891549108 912105162 945353769 616864757 769580003 87403602 863105161 567525956 808993569 505620137 533420793 503751748 719980529 108179591 230084783 236167145 873980069 848319557 908915206 480786951 797217369 940796273 958752720 758844758 780414949 553648258 913611941 199425444 315358446 512079186 551829222 182871671 926164221 724261939 985788895 474084640 765387726 65848741 187588561 108418401 114078438 788087973 913360130 588939319 869120549 334679573 536958599 995640855 999768581 89072574 890061848 876381816 974808242 532664659 768425931 970271381 984018989 813575067 890762747 242200146 497328393 397542767 716392933 609876940 661133732 630590937 963758188 285380895 874325904 884262065 987266887 448539576 464266342 277194867 814396734 629552813 777487591 887971733 904946270 882665593 916490354 590320992 713534733 964063297 982235345 48238333 955237654 284078225 529365796 268476145 532153217 836443520 861186900 759594477 950708128 913354512 961421072 252901926 874984650 224640228 792061379 780161018 865384526 176800408 848564694 751953706 858649544 909204766 947074618 30848004 706144172 849341093 904127160 212767147 710327494 176887918 394622235 336857534 806869766 145124789 495932715 863894887 963043887 441054621 558977365 428763474 931582986 659377447 799449583 745775485 765221364 203417013 963386057 750626319 893788048 924185646 958811894 186594291 219423110 701374073 970690538 999167237 999693497 608839962 884492423 246535859 446145388 404848589 793675463 72898116 181091712 606804185 698924406 73826136 789863765 969298083 983103728 164787555 781785444 806111423 844336473 235641022 560093184 708466275 995225104 638191394 850542972 676461191 830687725 153116386 514784655 418423231 461473247 863778663 998143347 116744517 339324937 334272535 499895490 751126479 856522328 466859576 573787498 506590500 912148675 521431239 903746164 537134094 633956603 366734992 950268917 725466509 864453172 252075265 297423967 185721738 801773055 710712689 830031731 541331884 750311805 553775452 698009323 83744120 759593240 409285888 755077524 953754774 979183708 362867190 619827164 906272484 961745480 681394020 920847324 275691183 975579677 148412020 427488474 676636693 831475142 49702354 889981205 774010194 782484209 334560640 827139323 982737945 984893679 510616003 604582730 111118740 742072844 191803347 710107624 298547077 881088452 704398177 951045791 600073526 651663241 58236547 972454468 665725315 669734436 605349545 919389773 843177007 968253311 57642342 699994837 726350258 819450758 541957536 937270439 920190209 995186934 96808446 894678135 281319350 993793059 955603907 986184440 728536853 845911752 783753060 789418201 942556013 971511417 108633194 222553969 472268635 713269790 881624313 891118702 631930704 797091793 623629184 786131396 343846638 943917047 506905210 814651847 801467708 993089004 757691401 987397917 740175781 744309057 452014908 682301783 84450655 797739746 450819605 975312544 21695766 524235771 374160777 878862689 925042868 944947201 922923772 981026336 770129025 991004613 587216231 897512388 134225848 824423829 261600504 548724164 413872586 449569479 270961019 590208497 809267530 948366448 38742702 689625936 693317182 832952373 475797252 998325677 504244688 817027132 752542783 982514554 181416661 835370843 677163910 826880652 552952397 671452475 729282605 935876575 456056074 885745877 165243528 856882727 331831861 802864542 526630461 555822509 645122525 782139005 110187355 443902190 618599296 619285987 958560176 982909783 947183569 965322372 901047836 987801414 544349385 926313371 102560785 167829246 225876519 448570962 391835451 773139501 882060252 912193806 57882155 819645600 213437319 585161010 220351781 579082381 7299050 821827794 262919777 833478018 523323213 813898220 574087498 581365479 299370352 706291388 271610160 321925560 331899134 557624730 255633444 723555523 694188027 855788110 480502638 512556657 592297233 602356957 839053046 922987586 185076378 597764052 69891552 291594821 656526691 937812296 11874872 510877384 303954410 944886063 556152362 948741609 600669983 835689892 168890087 789699931 408395437 601226664 1620286 942439503 649054427 694744653 499189898 525400765 727025620 772805909 962623152 962725231 908870663 962656364 415357937 688041843 586823183 757310693 525334909 584767879 486832202 496064011 168093400 528876497 259019082 864984714 262210855 786886977 196277342 319896726 355012299 869986136 584143861 682010670 415244111 701245894 391313998 891894746 772878077 919480104 187749890 895739361 721481838 945633384 92847405 952590571 269569525 275791554 779878413 855803077 316310830 349414335 71123694 533383885 218183070 748444013 654341450 772693824 548474212 916783279 748575683 932492053 25655711 529634168 173263901 244456395 155606598 383938545 548895701 860499064 814977516 997950612 941954417 986195886 428085111 751829154 997643410 999486227 316169094 503146940 95249431 410073044 786460465 788457733 664011556 919985522 307217069 461227472 908079386 932582234 833984474 870232970 680138332 680693669 970168227 994689321 670542302 936882033 869633450 940760491 415171101 455718779 615465650 885242629 485392252 492493584 610004861 890764476 956359666 961175547 508027423 977285671 596264548 755228204 244114184 348217383 943563930 995433679 605535410 976057269 637176841 732858995 24545661 432031494 68738903 269541299 143694199 543917912 374212778 782275981 367453582 585236919 785529403 828265976 815190074 850115369 284530620 600251337 779860171 831141888 692222134 878424118 230199287 489798702 228538296 753561267 704451542 785716089 584204627 918555517 438159775 708498624 75092337 203290195 562073144 899345212 19215009 765630372 817405364 865633767 182493722 752946418 109298901 109354152 173930278 895047402 265963829 926353450 331502013 868831715 645866385 670506766 906181807 996515871 457182977 929853824 123878579 828833422 654832135 906034650 334388624 780067497 678645235 872422441 619447425 995432485 966405499 991023836 899406025 952509827 319244622 720316112 718364235 788277019 874354985 888472434 361192141 732035723 92027806 825288116 799863593 828888695 226390923 750808375 93344321 189153621 604607243 757421180 771837009 928844184 451210382 580645884 493836073 696952396 488435656 930855901 231254728 635574552 764636162 927362096 737697691 871060067 814864205 909611990 411394988 988427775 133510040 717548858 238430103 366416805 38923779 802588539 164921357 297093078 664761543 943272748 983439345 998042133 256798043 460487229 767174693 849850794 657894077 850306769 948501915 957763244 831552456 879348085 904494746 992548101 764033973 870182882 472014608 928745907 189698525 501034662 561068018 629977996 300946739 732447216 837682760 888099462 341522093 748445818 779211665 817763520 101495878 624448549 255982837 608385502 918788869 960488265 136404599 485467841 647359342 898768958 373946974 971561531 579642830 660590905 771776489 838705819 586515320 757750512 181141139 214628410 900493888 933405041 268236080 816480987 671233681 965351514 645029808 736597126 67465223 314803125 682404298 823188841 996981537 998884888 449583860 539136704 779149341 840623580 530505630 540454527 663836069 807720545 192890126 609515918 719172579 921372405 319135486 902900803 833594647 845044687 24941635 459840516 360449563 696940068 517352997 585484802 956855096 995308630 285286393 612837158 826617624 831772613 65952285 843277700 959631092 968233941 798256061 976102974 69119447 211608246 506507121 998903980 881895211 960335505 890919139 918895786 954269536 993246953 152084371 743777612 220541545 844070616 167251121 963336678 720802489 903352844 581719954 780305214 355992280 567464617 852545573 982948357 36968802 281625673 781596558 955389266 22938986 292636520 858412003 955055196 199539665 632060904 493211959 831491572 756368458 909155897 175052719 523796744 124173527 443504181 667852378 678423362 380720551 908089389 365493557 436822366 586173935 961705617 111502018 951069644 987427807 990496573 406060902 893250620 681408278 733104567 98150227 457668291 985311326 985446928 238265944 559683178 220009256 627327057 911513743 992409184 878754407 883870127 821708813 958398799 20067670 34051604 851227478 964910241 304694638 878943345 969803901 978163551 125107315 919368077 117991790 350350730 972304175 978805068 557196579 957881879 73005287 442690869 877222724 925002766 458126924 532558378 868238534 925171874 91482322 934192031 732252662 842697168 339549384 534699311 362473044 882805444 989330639 996043501 488135745 733607266 48305905 561610430 12185149 580806334 850915087 943536624 597393742 599355747 293331418 684026316 703902485 852039301 590829671 852946397 562240656 969042096 720908303 981743456 43328794 135279205 305283581 776421010 463963677 664678264 768002854 835137237 97622290 853773267 47833063 974336121 400555676 768536118 404785392 427009545 856124685 957268542 341480314 443691953 853916253 930649510 403643172 640897831 448797605 704770295 11637845 214075084 554412840 764803827 189791688 834921057 726148229 866844094 136950049 966833418 540414197 959186558 737193891 785402335 576897360 643549653 519075167 654973267 752983054 940427472 130854878 221096357 458080302 611483926 431623368 742015789 14826721 199140401 51885027 856201059 746754545 976899707 726627065 975613266 4608914 25464816 220852336 660351507 852842494 926204893 735194371 787104097 104904188 504451057 844496280 846532072 552843356 810351217 794149350 934784601 828611454 958998275 197074607 638004280 593932091 718224723 443108544 830770538 26991352 421091559 117045875 782380249 903237297 959164789 952112347 972360109 719829226 774428374 335675320 798073336 382053288 970266956 585643107 992981121 979683127 986068288 977142838 991626031 198816417 384358858 145935839 755278147 546768338 702285689 602264892 722817925 668140294 927236609 847508117 935767023 723915916 932681921 921728338 935357430 97110458 520590895 634599909 874883828 262788852 489494135 133389131 951942584 455402901 846582449 472317884 968127445 750565218 873378212 330319691 671808962 388743989 832903318 35369853 76218614 963973917 981864077 237317643 466284488 784374993 809103723 46178059 836826340 936484367 969124268 427981211 996697150 660617455 875805248 123857345 624024541 800536460 833663505 619313422 867545523 687431675 992584526 90699965 330614787 628412785 676398747 881146636 890637389 520346069 801940603 410562516 908369105 482870422 676855854 423586461 440641408 500909644 589619191 281934707 847748775 941966652 997441186 644429484 832579708 262098765 587877534 150233470 716507909 828238153 930266015 299223491 999662806 344717325 375401343 822065462 998724662 549037204 999230287 265268119 598350762 42978617 993962555 354014697 448999657 608936010 833494702 135317263 450789419 346694318 583334334 248369925 456660405 135989309 925450875 315162844 778970648 484439847 736420182 853366359 968969310 910965881 917102782 421743354 895568365 869133341 982620419 357414603 799631415 213311251 280994919 813598443 863257819 671970819 868895299 123404031 981433800 21181956 639169957 897088486 988639111 982652419 985265237 467063017 557301316 265098019 879045195 583778657 731583165 643340953 829585183 170585206 706817946 77785135 227280646 250888599 575340721 56152255 457562217 333831081 915171011 374150202 422420143 881525664 890570203 913989289 919738278 241804886 337341307 107822595 668207567 740186908 988022790 857934189 950626691 796333582 877800660 843156004 904447425 589461112 775277180 99320780 568293312 446545590 683968090 526977659 826250825 618932740 790402714 23952204 540296754 325917867 689662030 452410268 530259293 57859660 664879508 240221875 475084404 477905202 528534586 942452144 977288293 265455604 862962971 224231683 933791672 965357110 974014810 131307169 659137551 227779487 782488981 239216956 913534205 72382156 412868589 705761344 792394270 947303539 971660956 295342471 391076983 510409795 930541409 355924657 825588501 927917093 991677060 240619988 815601677 253783476 921306807 199757007 602724762 847275171 933155883 320868556 373454839 240615368 887137671 135778131 782488783 681018089 984416371 193653269 293693371 426522879 824378175 77012052 600912886 824404155 947153392 384298519 693402894 492125349 762862249 430808035 545221054 591880980 616331610 71048491 619491888 966731869 966743156 225761852 563523515 162461261 374713503 216419654 757721881 512821224 677828251 991437951 996766178 466144981 727356365 425343897 433603989 934697699 964845871 753221798 935983570 831856025 853692586 135347401 869295267 719309305 779167452 557586828 762210254 308751008 329916639 144271168 533185063 388970395 772277995 480246046 617438528 409717743 715326190 137395556 438370697 485306245 559815612 383164509 417411517 913066864 988423933 219811730 853779846 686552217 824286749 494660517 560759731 309613118 575662585 682133454 844450879 130713508 706882334 949221581 964120023 390625213 891263546 723069226 804115660 554252619 641103102 966028554 999492738 90452137 828551356 302274000 717834631 696053831 716181385 28745112 169650249 607037146 688211974 738840663 886819147 607016738 873756618 292569206 354526707 965013667 977365615 917405166 952150800 71487343 194043063 261863835 581434817 807821011 808699558 538762654 719918108 120276676 872247702 245155274 706275034 447426640 463157830 603412404 850823026 603292191 654100300 406633581 501377865 615137215 791901095 972460560 974837988 528152444 633591004 74597886 831040228 949613710 962631927 249216733 343705237 719610042 982834872 745237771 835945055 42022849 138816768 797105485 942329467 428276017 697208487 457113013 876080035 328102097 405658948 215531363 967388643 137065916 269705986 526012235 606807945 152279478 755352435 858536255 990694324 335249655 363129615 3666195 485975498 75784847 900902667 647538882 997664298 493325406 632641759 797635742 859398374 422824234 525463285 520811128 743598292 77542531 405168950 425632546 684956419 886527963 906871664 879259765 970731572 444002109 872618061 289368251 337216596 773881880 997590438 512509259 749020482 112059948 576964565 531473354 816506301 591359540 930445620 909134388 949058666 307435444 447877550 341437174 691777209 495996210 667820367 356276119 812368906 149686160 183216065 779517401 874865633 191915241 452285260 433748557 735350864 502112255 853012276 967655019 974553135 830754243 884924411 727035381 872404084 331434398 609976796 991327490 993084146 197971283 352122590 479027639 544414737 585141051 931239737 228040867 909285684 641812873 989315820 43018004 245177804 304799174 448369934 85429343 780477240 292353756 695294532 645021359 697779467 79051065 891668612 263641337 782382548 388958346 505128797 812649408 983588102 412804226 988481362 969023533 969347006 143068981 784304452 823167022 932497475 657713523 833680575 970649603 980643625 855380126 978641654 877887097 917409524 33979016 456428081 620130570 851498355 723208918 848773741 296727684 965238239 487986700 501254684 946852244 995958394 259868130 569524058 74210556 336114005 879044663 906907340 253638311 851913250 913864150 971455319 339266758 864664096 933702678 956900665 927551311 984491974 713258418 713793924 642592084 839808506 855786632 963183776 527020357 794600980 267335889 463387939 207466016 573696134 895977271 977498296 574889506 694793463 269708456 321057341 526355500 916625519 693311752 898970291 616341562 705649230 748214038 858877946 721102918 846278436 256739866 791675494 305843428 367339800 315959246 502026192 383867867 718062426 757048767 971779100 241560886 996144808 201329883 334710023 85969300 662437962 482900787 823059865 578150023 631364083 62326266 212245995 21543141 360761261 78417771 716061882 413094170 793722865 503003015 652715025 909018001 925783006 313105676 322953586 520208580 986231960 719773281 852464966 430590121 956129036 726230746 957481505 68562151 883071132 653764063 905753909 263083617 701436296 934436698 947281867 84286011 464541021 508422300 929338556 288728544 330210065 449637576 884878051 421723648 817324677 652371860 959612460 633383927 997888356 919183951 996234036 247315470 802012797 459355567 880626762 737489150 818565397 939807195 993652219 761601820 899389124 476487581 842920579 858236644 983823292 57821 611282979 734878509 816601155 602137456 629875514 299107394 493730912 939641208 948951230 150395745 688196847 150129196 567144734 109258840 279325812 445650179 812842324 898971641 977456649 236988206 876389100 926559990 947128291 56892621 743008787 50807382 692511472 133402185 588703698 576785451 758924065 215266065 614196215 172602964 933018077 525665951 552442230 548448365 854407841 533254624 910466251 93141120 802193862 564198473 705238268 528142914 823361744 407436127 981549130 716886893 919877875 780544680 855026646 372607283 773836123 862892608 913454558 733249889 798659598 647517908 662682187 777706513 819106046 703517077 769752111 831972643 854512829 701146633 896382022 455126837 509285748 938120568 952347164 431550266 822611022 817153443 926901417 921505206 922143436 34311061 146004219 470322685 804089813 772083123 790585192 564984472 620707701 351234167 742000833 532279545 983969355 919053163 950052860 709959167 913554273 625888615 709608972 537082743 866065643 155914601 468074324 209671631 701041386 914878447 954578820 710766711 999779306 34637224 162112440 64702531 347428084 563901806 750682967 875415015 999568176 678995365 979165896 735002605 766555644 351718693 827726293 477325987 498756450 468856318 968786420 502608951 868838627 892925620 981884321 198470772 406083257 164374641 544426815 216202234 465143164 177165077 297317443 379767312 577132128 289544734 850355374 363952994 721639330 946548450 985653269 383168327 899513591 547868467 615400320 502991209 861760764 565790008 907943525 828536778 837529317 241885570 249241490 835597239 880281934 958315190 987503858 285431985 910573662 568010087 631034936 158173503 166700940 90560754 760047450 404002159 985152196 945709072 948159041 677089793 698761137 403818161 690012501 347494486 901807103 502200760 877632762 934769929 960634105 549810287 667059564 357643613 730315315 423919846 948575906 529702519 854552857 609942635 621767792 784300218 801239825 348874783 384824905 383060815 656716580 827201814 934387034 386336534 514462551 884294146 992690190 922208049 960332063 756656589 800437623 288171846 473420949 400534374 720914131 866137797 955657751 282040027 628323923 739960671 928212511 960662496 985390582 821122971 924858716 373652245 391200380 289181919 664956287 969846030 979158034 527047440 884723670 582168818 688495078 852833284 926249880 123161148 708433032 260617662 954130139 715669090 982090052 276293122 840899448 382117151 989390451 906244031 990206786 554906527 768979967 420858562 901521285 102569569 456261453 532268809 718963773 409200992 886688912 812042810 957908551 11738491 785340651 508315594 706496958 422343249 861856200 655183386 852599359 410793047 639750282 342114417 910200687 239821047 638341857 294966075 697922809 132340393 900836725 935411270 943696377 312273632 590856079 917891965 938302038 990537709 996717422 260414095 875543201 885219885 986210896 241101543 793852952 865701887 938674371 812835044 813696962 468521815 501860418 694134711 986599142 432124234 798373130 962116745 977756474 241348795 324798006 913753959 981073468 812765181 872023160 903919662 910369988 493505578 673732456 259976503 584363529 575790235 600500049 234877576 610921604 177956868 536307304 93489072 658416369 736519009 914364810 407781601 445187105 518355572 647509707 303358480 856583871 950734259 972361823 963087159 972412212 568882796 802117136 536766773 627262581 391698784 641346607 634300965 800689882 461613231 611758520 222749747 931343043 510952172 726204622 723925695 791891626 420801502 443368221 138249480 338650047 131785016 591161821 52347594 128053102 388876249 681511698 118750632 956386091 543123997 783334227 95260364 351823298 17848011 615506730 632868338 812525035 595428049 614156509 899562786 899956721 47310044 355552688 358477184 751839790 980634087 994274920 304741892 585376345 130028471 580279155 166829841 366184291 444848411 902002239 890187597 984252311 385951324 633074618 698758888 954012547 238615806 581183044 59473722 737262505 794717761 844548687 944568004 984398673 881200797 925939245 13363617 954319249 980982166 989635055 737146768 750213262 434351093 866215245 90215187 252115761 959683655 966049162 47189005 609993751 619036663 761585217 366852519 844999252 278263399 634542747 375300642 493063613 705146482 989656335 206117198 947991797 275649917 768623844 178818563 948862692 810878046 887845395 390995149 524162336 1031114 401475482 83001047 517002398 908938098 972661902 46363091 475953894 825516141 990686020 375796780 723742401 324277025 326121137 673246725 965814606 676660148 999992375 471930794 762520672 274625712 599482444 393214939 581044144 77627154 100526082 620462154 763015647 687603256 920944138 743982759 858188568 320207913 950987889 285666283 498369833 471042899 834200765 680576054 696620939 311725457 946432541 829214678 958293885 739478446 821506838 416213919 604042371 645270912 906283893 245871921 933363593 893885807 983983257 973637492 993733361 874849953 906096132 304176797 871163882 443152167 504055385 397436860 802176594 995181926 999171168 390143657 518794488 336760485 394476943 948046953 990671653 610687473 713625523 305388035 437109964 12233258 867226961 605540723 941865069 254331043 935157975 416275672 534170937 277660308 473133908 145446757 453861440 223394630 951358646 141189593 141654696 720225183 988137128 264600168 817378483 293001578 984191403 353184852 921430071 74959070 207473478 515625034 918898427 260106170 592213876 5215629 913874031 511949318 861073568 332656230 744070415 124380042 428259406 862399716 893776342 639198910 936955675 383266531 656594194 999102738 999580876 588996039 604809426 252380179 977446212 255200826 503372863 143849463 330488223 957285270 970014945 212263092 524664769 523541277 627217939 62407736 222684958 768383777 834449065 457478812 718359749 323449264 792326473 360469867 866158757 608224806 988173535 920262929 989651717 54612675 676069905 905836906 913878272 580973490 734660137 52519402 875774837 515334518 878064600 372243418 815866503 801351586 952454036 762118587 848316570 136489984 214163720 207210620 637351893 780964667 913657112 891822017 897977305 222134492 898238889 12708485 370383638 320791898 504643310 237392722 832444451 26696966 575915974 620570555 761635604 878374509 879179614 159410024 385063470 251668847 487568856 994688856 998017964 194371400 781018536 891440661 948331994 987364234 990325458 844524227 976907860 753008117 762769646 77315742 391958406 92240705 811451952 717649804 741982568 520953909 537930881 619563820 889464577 620384956 701684007 909219149 953185718 746161856 964127293 521571523 525812324 291798223 752395072 963923471 992368956 802266176 852418148 989174815 989637023 596115320 783745051 242669247 775091204 3261044 864564782 491702159 584707592 55069234 337027228 53872448 879621526 437928728 523689476 510470835 711066097 990537027 996316730 57962225 530235450 477200083 811537657 109489128 323394521 582402483 655536185 167032369 437732687 771163905 805179216 379198522 653541418 915884022 917937487 737480489 796639221 508160587 908155322 790493106 822688038 352610216 707440935 72268125 233334914 6242332 569977320 666417428 763319067 992548402 996850616 345214275 412047437 322560263 896135955 445999966 569894466 833790235 846393938 746724195 844968340 686753138 814891431 298518899 795225582 353048403 839555973 556445862 781223655 597138036 607931344 197511399 347923006 82537444 823787386 48700358 97490536 151950822 622529311 537268317 582050307 660251058 786152402 743232836 947046311 146970446 480169065 621308445 856640240 896118350 937781604 990913558 995160867 269263474 291279460 783647896 941718463 103374572 740676452 454739814 690782481 909620818 973184673 672585353 902071290 889820766 898102811 66042814 933795654 421094651 813024712 236965384 261496235 813749670 993572904 553570835 609145424 920261542 949197223 690737660 975933240 956397193 975525967 876653088 930643664 754483747 967509103 364981641 545034244 445215104 941444082 945396874 982174624 519483467 965366974 783693281 822322579 614233084 644577888 844304048 962574685 175069243 903860283 534827400 661879965 550660032 625211341 724123273 853813682 898946499 996609335 800583602 805099168 450596590 717133641 594405401 599142991 424846035 941723589 954821893 961687185 459921916 959964333 372037616 837501113 859670544 925403872 455769211 855531734 509621818 814393420 770186172 976303557 706075614 863530189 353585329 852530087 778734302 954035464 924364949 979167053 20516339 333404844 291326550 912148145 501942611 569542989 317809895 351007607 810887963 859661192 833430319 899441091 9762349 509185070 63846239 491885633 614432671 690505804 769099211 839023995 663271284 893875744 167896369 990598335 552551608 873781749 900895179 936853898 582703450 897292528 733077816 748619778 498400864 979789869 432810907 509963411 451280297 522699633 413837139 879935482 629738373 889294599 669718512 732749934 367241515 701058017 458522560 936799747 736553572 922088137 959955010 973067096 333631123 499127503 809009938 916812642 116694690 906574197 113842732 811416820 395863962 578792252 523708773 997139626 862888742 894801765 430663689 929770899 32952109 754804595 983906481 988062456 568003553 929785752 867141220 874992695 472992330 966921433 658865343 886301269 470086889 998162038 546140773 773520567 412660000 603003277 739064165 904423645 290877045 903525939 246861610 726055170 787821455 964102061 394164925 847925152 619141002 746970447 283302699 571888703 614054242 953071783 55750270 335345500 257817217 683282095 433786164 899391589 531768763 916706130 90632475 576865697 39678285 399023516 251100625 623220284 801688608 853517811 955415534 974153352 361358718 458044838 23969176 250287643 212093182 625605542 490267763 932107604 500913987 590097511 104607112 716657862 655038798 765867937 550390925 904206105 47426581 715817115 304676297 764179532 658457856 722478823 812763079 913526434 980265695 987590094 258913777 726059196 452616659 597773640 304383453 509974377 406636770 934967928 912219823 975409277 246663757 476181972 432736872 764475722 640961117 670051793 799392525 997923772 73612448 263689418 450561606 721036413 263346285 746163969 60982543 906568660 78328522 986836536 388511275 501709384 392885487 503887795 613562203 819930404 398567111 806227914 776223307 863048289 985086255 986656554 172542590 499748122 803917953 816129402 241146612 962548675 833943270 922130712 495531637 664384205 291091103 510715234 473287964 562502316 210726603 464162531 44088327 452353897 252868587 664497071 182518888 369167710 256831278 625217387 577714430 868468578 304076041 999936736 15489479 860709361 765076205 882604471 127710395 843387448 33606257 91933978 222512003 751389656 52592639 552438852 976122148 983103006 858844612 936426244 744236050 810370966 482130505 968350530 829585388 938508613 384704425 636423145 832665900 992327284 260484045 955811420 730042499 736844901 286164801 687875966 600819269 662455877 849136646 866622032 656099721 840619974 860820394 916090409 103792005 760545335 300673862 999041747 202899083 444252229 583843879 606457336 91107023 807319252 838338536 888703675 288433869 660564225 609071303 693464196 753542009 792347100 800078733 937851817 823360972 896750783 95944620 663844654 135630170 329187999 451781651 864470030 754492852 983100508 760371221 830934379 802582625 854193562 889110496 951861197 373265875 689847394 173705261 506292687 181266219 407421684 618675691 736307354 103425814 654675160 807992576 825574416 297716166 944973804 693315545 847915880 638422202 745766751 463054630 746661441 55230712 716454551 32431632 586290216 43260788 428848390 909959158 918582383 873047396 908041164 838119306 882973128 717768514 986886850 985268098 993827774 371470131 883451875 568247451 764788502 349219105 526742954 363546833 692208766 362499797 457403932 975788138 991554616 80411212 185367119 801600688 859910565 327629140 474185011 138162791 909290545 154659023 233790877 773508563 959160247 651098702 752725359 390866103 487516155 736755713 755863441 190939486 915069306 368321858 497768466 919884009 946003751 456759448 999944731 743518755 933384250 822882157 940913411 751128244 813665514 312539577 660921495 533404231 899443317 283241473 906007724 55974383 427862239 792560144 990512008 907323204 923128285 334052551 488610552 27347632 270740771 804143370 988558756 874576112 930103245 968433552 974266744 49290426 888921090 32458396 328296694 330636681 359013908 293209632 702919036 467250432 973047898 340281189 577690478 173517808 274295390 548781004 827029355 409971104 567494364 405000156 731982632 176131547 790222708 536257764 643734112 62566668 121317422 504715522 686516527 71746173 704691024 189467672 533903691 146321168 502670359 864828310 957194978 60839830 578597291 24941485 626362404 199411328 608007929 845263893 845890590 457163910 629671258 127166666 381476916 24627927 818005432 356958827 941326333 716678827 877210279 261598809 261725399 802315002 803549017 237359679 285282821 106005703 711362623 351704210 868656534 487544805 916983942 281913739 801767749 80675248 267754773 291851081 937237145 149151780 794136923 405804684 619643108 459496526 725012053 666377320 942465682 631034051 992695569 748371188 972607883 288034139 904648636 779164203 781199533 953279702 995616811 992047448 999122376 625467243 737817997 586531535 891611257 206747518 352208991 134762322 177280832 98824040 368735963 398786685 799489832 2216675 436868085 911900962 972947182 808738964 847796084 803673908 977642337 184241218 847907793 243522969 600593632 975484412 985500113 34765327 230627461 576270767 723301463 290485808 439000383 87748726 805088472 965015335 994647826 186795560 698564293 486388727 990997518 385334795 916266368 689434658 866019114 620734881 631673123 256107963 419980188 54659613 427799441 591279247 672995336 874066143 970736752 264507612 280147754 925021845 925062612 81450839 895401164 758313555 971152757 380620421 397329612 838405687 900527448 516392842 920902936 528422025 791923669 844978873 944285735 770260398 967001688 596181719 941764442 398837430 631021648 953124935 963562036 832380506 902892421 743945730 790670540 518993751 609238507 218735770 758998050 50586589 665642176 189758235 693734778 177616430 811468033 11715217 258626079 300944051 600779945 286807071 292759822 549719208 570038626 172079299 176715596 406299409 586009458 603235700 670573054 765178716 900456397 556340621 866953234 963168014 994038319 831854666 883710935 983887179 988107458 611284970 619547971 227653296 760539209 996023046 998007671 289060605 663845852 525351235 917703590 38795417 101265438 568572752 626777993 844504468 850738730 981455109 986636500 200594202 269979732 981797541 991266726 178743711 871985390 928700351 953369818 881272542 909159107 164183337 642231573 386352881 626348627 621075745 848047194 457092670 660812133 183789290 958727140 268723096 355002008 942879357 962516761 44190544 398281528 975371887 983888901 645558521 901743238 402744838 534440496 290400906 548409454 69196932 795445147 824109088 973430291 334244615 528585963 457949769 973812359 926127891 975797148 662785426 886440285 750643150 819100825 865508693 979785563 409710945 453209965 715477057 885018000 268958354 990036758 179951775 725977630 803718773 872697997 131472502 414598945 274136068 774685571 292954952 641235368 448444253 473098353 798344776 931926426 691831258 956655754 292489408 493138797 629159116 718014279 263416526 625488141 896726406 924181771 42353680 487667995 666322582 859662338 940259726 964153070 665234491 992098759 622765977 927207491 735247176 886149186 804779705 805794839 367665451 821657080 824294634 875118436 720237254 835847168 660823806 990124197 305591283 394779835 116511881 703210610 918432390 994858786 424333873 591129120 217383637 380638187 841228177 914125578 961949581 991511992 892842750 950744862 967933 679315679 474320950 656715846 480230525 665216439 647393954 730334925 93866560 185477721 957193611 959334023 665344094 710567484 582291429 697106395 261935416 836675581 699661059 828463839 663222119 912866822 629590981 754869325 238145826 270928482 350679144 791671698 682500788 797433637 506550626 699833802 925295777 999099542 972281139 998123214 963939018 998262010 57597463 428691428 527074473 748806820 584287837 625427316 956688968 973746097 717851160 879027217 564258934 816771924 474577589 631553989 51079216 749400575 838558025 966534912 827669702 951616784 922863434 992961788 307399093 884624898 301062189 921927938 505588156 909824187 764102452 963492594 136672128 620438720 538107481 717603884 119986593 493484686 66123247 910178606 873372529 949312026 444917602 453339383 701667136 741413178 973939471 993298930 905711428 937493896 193209383 583975471 16285544 832193586 96855973 299596129 875372027 944176551 718564505 985096717 87101818 474753600 759359616 850326875 122027110 507376794 514993241 812692402 313445300 810891418 524903109 903720029 249264103 355171821 636705045 953731987 953438988 965778918 388289763 990168167 292287004 721814251 477210927 481674420 945031801 951899377 842977045 925017099 160092150 383384757 562950189 575761538 330913217 478078858 949048448 960969405 594121767 740147181 350088245 908122228 138846904 219409082 300631323 927648852 264133962 621172841 415953513 694940376 756289702 886483624 612395944 765752285 825942377 961826187 903921547 969221884 431642551 532401100 224998520 673345836 372969532 957226669 795215163 825290273 742092386 938163546 187404266 445426791 991459700 999963642 867343213 934694955 985126772 998179602 291202505 974294116 417585249 510682696 558834193 828869448 115185532 365938002 585624117 846052504 831357125 965613068 152018485 816311678 306373984 906198734 905539965 970466855 943220186 944242244 253872582 871650368 511725442 553023663 113513669 745122264 533113648 626142459 106876096 467425986 420562752 607173732 848097366 907016302 591966647 901134616 922532764 997537874 710327886 928688882 547036387 711768532 253312588 372866939 31740475 658820283 679174040 754562724 130844678 340088883 901233990 938907279 695813557 982586686 656493606 785098918 789898908 949048876 222809477 526064857 153697383 606082747 699095657 806472404 72320160 666917942 392133771 982553251 976042467 980537223 909489174 984803833 336411657 745487703 788293391 890646562 286426268 715482323 635818610 794108168 773180363 897855936 506762398 592875729 316817550 471970651 781039331 887778445 139063733 244934322 387760657 452731287 880728217 892065946 89717205 775211107 261921379 548197829 26856834 544830699 901845822 948881722 497765621 499594279 237117018 981679510 666652145 687802046 173839395 530139222 576606488 597068872 413918989 933168681 718394613 723961381 539938380 993616033 368617352 527013774 385949311 899407399 941389221 946736182 714553601 790515599 627989041 852081229 512163414 781065234 134496022 978921881 450675501 844739338 892023331 982722814 636319234 819083708 119093525 860863396 311166982 794636582 2223568 250024910 564033268 662812284 737231039 801852736 789451378 984623306 640604491 673733945 711407815 965597096 478502383 577987107 363630374 869955389 307798745 789652143 760190220 920388915 24963480 65952706 968412420 998931865 609070003 972366989 200916033 905368350 373788618 506042180 899905817 930696846 962470031 993893799 151753329 845609553 975323246 986053088 743422947 913570121 923333237 969087505 441153275 773736777 789514402 906626040 114455978 122351294 850191657 993644364 874262304 890922578 67604067 336881370 387609543 863565457 35415996 456327961 100168942 964011711 918002083 947340410 556123477 973655673 42831926 479046020 656660830 661309221 802277540 873250636 304866472 780221901 202639530 957446904 406986900 720133552 274893164 910082589 764631148 770856638 493469173 821241674 828464384 993170830 796741242 881632430 875380062 899888294 999428810 999690521 209627592 546067190 661977693 962233864 68222835 306301011 533578766 853003479 924123758 962519630 392435836 888089691 882920387 953006297 337851558 940621005 578457546 801808048 342533338 617001909 404108678 618044921 267385898 972775425 602288170 914608506 904362649 980138587 205980812 853311795 634647610 835170654 345907751 477244898 687663118 739161173 962676581 994785505 509287652 737899382 387373355 616473476 685386862 824344920 739941619 899710861 707160091 856694861 25845443 699197847 337732197 602901509 985423409 990866399 565634796 663430072 543578208 930689879 11172303 287667274 386678552 491383225 717791329 901723806 909144482 985295177 674625959 714471471 67992430 758357699 661228865 869088777 36903558 969018752 982142264 983288418 575313923 758028861 917366916 924252643 562331764 601566850 756772191 972894742 130449923 732135962 372368673 746147595 311474285 571601234 292899004 705704608 571646168 969592610 813743064 975131304 882053625 883848611 715738824 906322838 214202659 635189302 630474511 704685176 458767824 956556453 458607321 823507572 469533034 607348564 206504411 970200065 625538861 926190655 798695223 838120673 780409142 962971897 254155168 429035375 264433349 342897782 701981142 883289858 80091216 593708867 892996960 905031627 292050185 309027200 710614312 998175192 726800090 882069430 32630885 145265475 290327772 628395340 730934416 742768890 934193164 938229881 74299609 751965251 407516374 718570113 926552563 935517200 529606079 931345169 571784904 850802996 348302273 461543047 259989963 364135657 353902200 594539669 100411705 210399299 759203399 945664607 733128109 805975479 216170962 800613091 553414042 557034595 824234635 838105687 213624462 355834035 652129310 800625488 485658923 517568174 245731686 610985479 267903537 501094054 312775710 562195184 648131038 773668919 610403062 748131940 270854677 969552518 865103176 998616994 880741089 955273495 179029054 591420328 559435661 903560529 102904516 630501141 997221765 998668656 841853276 942481572 544779166 617446268 356526224 776616303 759342045 894995152 323322616 830584601 306147066 934957958 819620285 902403215 509415201 794087844 342487102 676119699 907845365 945481682 255896221 616816332 655102153 675705161 189131816 915384742 494357079 723694773 654022976 826093249 841737592 911086630 859269816 954869650 867624310 899802619 158327843 938170722 214367257 524494132 721293195 949352148 372188181 636076886 475362220 594261785 49774475 871038245 587961753 606007579 321117678 563775122 820272350 859530507 229224043 924521256 994588205 995822012 82062540 872995852 509964519 751326833 905509600 952701295 534016083 731500328 729915060 871685417 597604617 660166767 472409414 580641641 998779844 998916943 413988374 746869332 171277150 888421822 137415264 501342815 397505464 759085937 17675718 235668249 568185859 630032818 122259959 564591475 933587760 962809263 92593639 819573286 142010927 426328529 972724776 987490072 751160087 839435455 105358918 547034322 520325747 545007023 724934648 769902235 456082382 890386944 581085083 744431378 377702989 391404689 864006249 875111451 216586773 608140250 768427982 934279292 899207734 972065968 993626154 994802544 95074463 111768982 178330620 512033928 480395710 652452191 323928140 363525765 312305491 789278009 939838831 976678976 208078922 299324979 401974025 897908452 990356480 995544690 699184673 769125133 839433399 907163518 151646998 904510322 334756943 604705198 404794587 503610816 357654615 837435371 744375335 951263051 142113765 981889233 123079138 902847782 471946376 855849644 136257053 444689132 171381125 415592461 146840871 845257580 764327443 766295012 14356575 333319785 864723946 953444078 819350424 847359682 202083254 859267114 3779571 707291548 989079033 990266402 923801378 957096329 105081291 799139640 455973644 984479423 82366193 742722166 810574352 820133980 911361901 921526262 680096905 685158167 878478681 900743506 375339951 677991403 975971995 988488831 501659810 638835631 879936562 953855812 33989373 48109573 404797150 985199705 849520657 877967904 825385032 850050019 725525713 732394160 441137806 880633397 270197319 366144655 174680866 915966693 529072743 747687960 772089872 859108818 7845076 866252796 654152523 691898283 663027377 810050420 561122351 633342078 675003463 824909035 842238379 940793411 111078688 816233477 753108907 826073487 946928654 965239186 802794108 978499220 482288567 654672285 442466236 686328907 574972314 807611579 810937201 984365211 776591620 911272343 396288134 877605175 493973541 856998245 960771529 978419460 946029657 946552251 834787423 914139208 668104358 967523347 348758088 787486701 324506813 345317161 761939353 820746732 623992374 844845128 547102925 791297594 262180545 712250973 133178820 329242069 806778781 816070849 528995620 532062887 42136639 740371785 807330432 933418007 59363736 408059244 471577503 828252714 828075671 943328185 366063234 370654817 984786702 986001945 896267283 978816747 342616270 951499298 232879977 255946540 281303048 655347725 304904612 363786403 131966128 782175807 518725831 759000512 608807390 747508685 468155894 823723330 725874790 809626436 291524518 355169524 892541318 966966028 223455293 937222332 574242362 839964417 615307760 926474861 997936718 998275410 440996896 557237167 967166351 989803543 559945152 692650328 987164265 987524939 932688872 958451368 637159318 937662904 338928108 426564929 466795408 551254125 766575817 798942056 578874328 679202553 203540856 608694075 285823014 689697327 597666235 619898755 21253905 33948099 278076641 433281128 35279243 983050076 941129478 959870726 512165001 603100917 631216526 828289104 513725772 601498469 190522173 246860009 220278402 828532036 409578764 509112920 654471039 682871548 354435867 980115232 702009314 831358059 575382272 845627686 622730078 892842641 104307982 230976248 760338500 968870182 606483168 942529742 844786019 875191040 529856209 972013071 695896760 999762010 30703296 60448134 31553859 598648973 726254784 820943194 534833197 629098655 29060007 198806596 546982454 928076873 981790617 982583867 32353200 283762673 536762178 612878571 526377115 677724274 517928734 619090215 594797084 629157378 317152405 822909278 383415558 806755084 481861207 612579578 338931039 568279951 622222869 699414504 625036693 909390582 143637184 630975780 829482670 833109797 427091075 879756104 269791264 996407764 755181502 940560853 907485791 998481849 121751541 589942724 132710137 943398865 966022997 968401242 660023975 695774218 214489832 319626050 33661077 922201933 871912125 952920048 874645361 918320359 616557006 971236608 173633039 768806867 786975993 949123944 509470709 773080819 238990249 279947674 336566512 540683244 662464661 694561162 596048573 724465072 654534272 730895850 574794568 809297566 507031778 871785190 977233208 993872369 906153891 935641409 625062017 818769483 400399471 991782385 965598049 984039291 881688539 965920257 776055962 816663100 624636986 887963646 858321491 925709865 205273769 411017921 344758416 835534829 257615591 518725713 405956355 487537253 966166846 987023779 445612096 512126120 76504836 165502535 384510963 764633249 261792902 927685282 955580913 977812060 191427071 516354907 892326991 911034014 859146263 952307444 547417414 776096277 48090462 470308812 515515718 572140578 388650653 729021028 940760904 996943810 677296876 738371148 44784754 241416931 498089085 690073847 169175462 290771473 328134064 918271957 96196860 450544043 863592058 948549843 169757478 274806310 869363978 916960568 615658676 618700666 927287962 972100736 817439141 830956817 25563477 319330075 735056190 805974738 69102127 170237886 835644077 968066301 421849433 616483523 668727843 849357696 540496649 763559488 699845892 804366916 176131257 700250081 248687893 393618150 140337891 926560760 582918055 915163708 632227203 658765841 902728173 976303045 414389772 557198515 120348283 875485103 749980570 788406015 395721687 622809031 216314151 256805279 340268505 522056654 656007784 828010467 512567398 940913152 474515864 984055733 25889971 89489753 57374464 199691150 501907151 996433847 547924823 562424318 891664940 955570829 890233479 941241548 953297180 997638183 711098924 819755382 228918129 589336015 927950054 966089935 691622807 836059775 978584526 988647478 195011267 741848156 998119243 998805069 179147368 181956679 435442873 469158739 351166235 671270292 619591941 995017799 922347765 954714825 221032738 338474469 420142426 651961759 925118868 947686086 650804832 885398022 261948505 590849697 129284134 236820853 403758735 748264784 549073983 966998909 264785735 649682930 572027162 960118497 420085606 507807014 665254052 930488264 105577402 515360243 237708349 317116324 103846368 876769981 888266399 932581155 456430100 624985373 172202870 268014681 533862613 927276521 911207756 936916044 699981420 901837335 869288670 922169211 966374298 980100401 12683123 537347083 844999075 930879087 329324786 836866604 737163688 792639589 683511103 689088272 604105755 748363314 366748283 376937198 635260104 768963791 711742376 936798460 884996106 974235356 630254868 695893549 259125848 985168415 868253105 934886893 175378544 564217578 455488748 859947118 538166524 750603611 818272487 891132861 270493385 649557947 569533391 976476526 365164533 830832915 943922631 982485377 876784972 879956797 776529342 847728201 538452579 941311530 753038487 998362274 221078970 612493746 214881866 704785766 357543077 592913643 868488955 908121870 189983732 502442888 110452815 501122667 913939285 947959517 614911539 905597518 334144890 696439472 279540318 891011750 27570688 840362583 1874199 256139667 829508387 919403000 268937055 650439241 352109836 613175260 343618360 938429545 670516269 861294170 140499652 805881592 657483208 715527609 682835761 787834468 132583274 969859380 212892425 274474366 423068243 688958829 517851515 921014498 486658495 624217457 642872760 990557901 781102870 820503402 638994602 679082511 603786406 866697866 643557559 866613550 686608373 716326185 700483903 762644189 345528545 710400855 168944958 604693855 163561986 527045260 342204891 708883425 177701308 572277606 827326081 845599006 130535445 535921392 959411164 994939124 596643808 938277094 279947586 691684685 656054591 696700308 410367115 666658064 565623897 838454449 416709159 850037951 444437740 716724283 312341280 869919180 440382145 998324401 348390787 589722828 597512062 643771608 315897947 687731047 601362379 612272065 10844745 952551149 664497134 876462980 984142714 986451115 341272553 795259728 490336111 676748912 209380763 908707744 689395460 935084074 701690189 709452595 269382581 582841267 745366269 863425655 93392340 226536110 17850328 288832888 974358781 995838263 144684822 586647433 542429280 908972599 184692019 771942479 287558632 946988723 720767059 880510455 253480349 561671683 542486419 612948245 617581459 794056789 891367189 907492546 150109071 344449591 647162560 780852936 111386172 926861927 650481660 824010986 14090413 936157865 923025037 969312576 609392305 821397815 270390471 442270376 9637439 510707197 662971844 865581877 760458687 921087007 460439779 559104568 294181671 508878979 620161094 719857657 803309314 947827467 813946446 958146165 740487663 995383522 529848241 857650193 728083755 765102147 339235984 818842623 610279769 683253253 504126923 929815446 95390335 611569389 543313781 657420096 644726179 903759978 182723962 372141452 914835279 966172916 432615429 836423311 901871364 936572304 899280792 915819485 109695961 941946465 477371617 687355290 563615069 735933836 203508400 599517039 614335001 832992107 292034243 973224711 413808013 584991908 257011283 596946351 572495426 925700977 926348076 969524713 531686215 833814527 442058924 468875410 966967287 988276696 817096660 996751016 340301178 886832768 520786261 557579906 57592874 134842297 367324091 487577364 596985481 898281034 475963665 953641029 179177632 397861441 151845852 409325698 928590951 952431614 231829877 874186653 949186770 976861925 567168763 602848221 993407215 994367511 877014107 965976687 745788107 922174293 418331297 651275452 750507455 893741592 207181815 644110453 988566468 991766506 694845959 795436173 373140591 575632864 312396448 780673423 392976455 792454402 726997561 745585809 46150630 953949520 968923254 991679827 488012727 622232634 823507802 878145659 12417017 957936609 525117611 655757852 547071807 652530757 60214842 583436278 575612534 754847944 819384576 957256090 860499610 971918168 421452347 453263269 421744387 661107723 537307444 903322597 187992746 809696775 958206292 964777250 212832932 768791519 73408598 836865813 46195087 125116409 130636966 741668514 699350732 977508294 52183005 452554515 382524643 633297924 521904388 976037462 513468185 747152310 571568538 775437311 871325104 964824425 109591054 850295038 363058728 895729152 748401734 900354906 383984219 823082632 122141306 307105942 967736366 992731623 699305203 977397577 209607782 881776461 267709249 748138307 591736328 942790637 328974562 607702685 598118448 981314730 65323876 988552468 397294377 671311977 637388307 680806250 147996796 752121123 970361083 998284694 804473916 824278800 549150828 735404459 955818269 988301494 68038343 282177057 609457454 722224413 723852471 832924767 760860784 809850078 8899584 210609582 527379021 619955788 44414685 234307883 704064609 747748292 971284045 977229305 538723571 906620528 188305997 997622351 480960431 886755557 17201186 890275611 287685137 669063737 38590632 420403561 242217822 524991118 526799576 954935678 373001897 522861495 781513405 976434358 960695432 993060358 61545853 192253568 72433231 485701261 869646635 993951064 279658915 558109566 782472690 914499966 303873716 951377533 313080948 766313828 272743191 947398795 158059887 898812290 314135003 401319062 662040756 755519231 550101477 843850401 601725927 752859260 4085449 181249407 910462399 913560567 501347436 529092072 380140820 674062487 263253897 984099447 298593292 742771377 606582917 804091236 62424033 486821193 154968659 835243273 180843262 310254277 567045941 768508300 42363761 581275727 717655123 903436233 124298760 262949584 113084547 168940690 629454080 661007546 546275672 818931496 774499950 837124966 828777629 905943555 3837320 725263569 802313938 869971110 550732605 883444753 976348740 989352931 542165954 706104736 227731848 747655886 491735814 874287837 740201329 962094383 798971818 959183251 260799686 775485023 960031634 993118947 426492934 640017414 916241203 962807849 215949679 307935189 77266702 885021058 476609946 852567917 695693298 851388013 105937788 202965107 829266172 877199177 667255396 789734033 137937566 622468672 730715359 848042414 371234017 771937950 399705898 658439354 168783937 517749215 947026653 965893400 959612965 995796754 413167268 617980591 137193803 540001014 251944575 692057075 541449038 965696763 570268267 690128828 234812372 575865964 342901170 934533652 261808209 506334034 873456053 967710318 552884581 561297430 671209994 803793950 713372359 948517623 719905875 852367274 79722116 214701974 915244608 928069501 219105938 913977553 80065257 296995540 527986259 876124656 840998644 844247382 545371766 772019391 699029727 947024066 589785806 599549570 265627165 531665076 801142869 938750164 18352092 277815197 913988699 932284199 481563398 955106400 482332044 766327542 527011338 699721431 478959146 601443633 893695061 948628028 842558258 916628758 694673896 865802865 38946163 809771916 969197833 976909465 177026350 210322763 336899660 608795131 484526084 721490883 105831347 971647683 992840511 999252504 692502894 847965780 272417540 878127895 789773442 918662439 503770705 861352847 771787996 795174837 586538056 974697204 330102217 481695573 390573087 456308621 729683674 865714238 820706823 906214333 805213932 824357128 77280015 947706372 268270529 349600040 260240157 602847672 608739713 686569852 901395495 924984013 186427166 948932298 901692355 989506160 666193887 797657688 164646043 612900349 842145129 872530366 188578095 881110246 154495121 426316908 95273938 516179266 109594736 547927997 278169786 498554345 418676890 984706753 926950420 966281480 424905917 745234371 145267660 148304164 511478099 694410718 185951964 707711405 51705088 795040005 661317756 894928560 735802150 838196997 668498972 891718513 996870580 998945579 13998133 635326625 787017281 818952813 379875966 443265277 820885101 910767191 25785863 987505900 213811154 829081176 316926779 884137363 135468092 748881663 419730219 460187324 425869028 918350788 393494370 629935564 20769812 382173832 946651340 951367167 355528686 984304212 76496040 685855520 459294831 638245955 671726602 982706784 361667242 670609768 848412187 975748314 375944654 657527300 234133226 501376732 516268519 838506930 710957432 809314617 890356603 943671122 308565364 830246945 593098882 842002137 431930902 606243937 518436540 846164538 502267353 920191921 811716442 946490478 161321252 479633033 256723085 426821548 415578477 884089408 895307530 933674389 961035934 997262407 426712840 962015921 431715048 605418739 164272939 204179073 853614199 856817399 955192349 996537790 57233445 510490943 193021276 463570783 155817417 861598050 238296734 414567439 479317646 537771432 807348703 966530160 798682564 960028777 968510085 972304518 664621791 733183271 93623267 526455615 824053695 869123520 436353828 495752555 286533182 923160464 134431877 783039785 145873957 332894590 408188763 627256575 19797283 648843450 146379290 855245389 212463529 321834966 691607247 998982386 267120591 948819746 937114242 937816009 487594559 921952851 984227710 991255742 610809439 636306868 765333032 902324039 116330926 553917092 951356382 981394517 136761333 789610312 52713557 330827080 586531769 806416671 442205250 613321829 225387984 805096932 298537474 618034393 308704627 712385980 569303153 819367867 227051561 252531440 253066814 303479725 334135618 922830952 104039825 776321440 102267545 596525286 15320432 48146309 126746781 835430963 629540125 935066100 266883067 648612026 838670162 976799605 275868037 992412276 829632177 973898016 437393645 850266696 334750246 536313830 123107241 278155530 806579910 973444838 334409744 367399201 161987589 603283416 611809205 855903944 889330501 950058711 135803138 802333557 504453922 826334204 631780417 844970611 167742102 946271126 613627143 776199462 95485 169865028 841034469 847887353 244374475 595929512 457988020 551645640 439944830 491086134 27200266 907386410 816111518 856816528 67894574 508071259 700840677 748129040 895488129 905098981 537208990 955362983 139820843 729403687 550524278 755219390 124416152 761492789 313537727 702488589 407861001 668500325 525963830 609679478 61583179 349762337 472343526 807306699 257985817 486213540 878053647 944261534 327620439 942922445 712458802 900816350 674538520 979793824 676497403 740205179 55609483 948857760 565415144 726516565 52492626 159861035 988011008 997881033 132118097 601093616 621859407 987172391 225182515 278413923 537753583 644066128 354715482 904140005 215653566 565602444 333614297 464013903 982840870 989493846 543320351 821026470 651687197 938371024 465552796 748680785 757610318 921430676 464438104 977056560 171896318 330695768 446019908 700729315 888418704 919284123 328395868 877112213 788339004 844969608 325738153 892804412 726667519 907390903 644647071 705516705 249809062 912439943 982763004 996874607 960816425 977442226 939724559 972933208 296858129 323633995 948420646 983274078 17083313 513016236 172132087 555775191 679354709 980531025 832973703 890706017 541453340 543933945 462441094 892114980 738219329 846837015 995041690 996789936 526558310 874728271 221644128 750554557 984487813 999360382 89781108 126493339 329642368 900430672 561568965 752627141 916075918 917119931 26012977 760310081 662226644 926605179 407062657 865611304 173901650 443431486 744153930 760332909 695738397 834040992 38191079 484124203 934498675 988434909 885803488 966417864 228562624 904089477 590449345 731529528 785136143 803017620 327661843 609744909 531071182 937172642 396356799 758844458 561576933 850323339 561066028 893066103 306382152 378040606 830650526 915509739 145126015 945515544 640269910 889010783 58345799 100656930 299152879 430687977 314855678 738675626 884687866 998068010 736275244 765947299 731975488 755249561 328646807 959060243 413935794 629743373 154235060 892495233 466967644 500613363 404494174 554725998 724787062 730527032 710748414 927677560 866482754 908962037 32089258 383043401 230215909 682403608 782028515 846526224 669662231 859547392 814590880 974023601 433952743 476987888 650251714 777145256 228491357 513471054 320398930 973914516 8982300 474865672 845166221 878480910 841507086 901688542 970530240 976720809 692382225 938317369 258672947 604393974 977182599 989901875 900393630 968846215 972727180 992285328 467424589 613278960 710570026 772912765 562957106 898910562 323127145 460924438 535439134 791882127 65868124 129736537 722638498 879207469 978986396 992321953 306902209 859838962 140436871 908099876 234559411 597104386 876913256 971667091 271459041 798955540 617240418 922337023 534457501 775991567 394278778 631953227 315243986 925858892 634804826 773814238 933065516 955598141 781016025 842115708 590281649 986266262 620446134 649780391 695454360 993742205 719407089 820023624 316275419 532755248 666823814 826981257 403792191 613706656 397330295 571428374 872459771 916392241 575624707 858254438 110648684 539077766 587951012 980461116 2738822 604443402 737841683 838711656 138805165 884238342 164412969 217129336 275690989 882116427 161373036 871263748 909336048 913783260 394018775 902725618 505556924 898053416 719347240 950887549 169591297 313140831 873990168 962164876 715378622 874584615 497647863 651721809 615130034 868850548 149603066 600513900 832423335 960040363 604678233 626399272 863412685 957053868 811085492 953640298 529010344 893958412 243339543 514433459 178206523 582590557 438010425 717306133 293372725 883522984 60340720 503901989 452877895 605597244 118829612 704548710 598563939 868200856 552185331 771526235 687408751 806190241 950128828 981828639 668300257 928093684 727499549 834054819 637387823 803211535 174755692 222252043 225342507 328067214 977779509 978827748 812122117 962262932 377287546 516340965 611836375 731613570 313051330 742698004 190735422 594272735 771272026 931839427 996368019 998772553 568002995 903786336 910363838 995661143 213197201 989191767 398926765 566358290 497058409 543810909 600371401 753568495 188837546 744449803 239917491 593836100 496300182 673549807 47309094 779461859 518981834 725475656 930927382 987747202 990159189 994206475 403127639 817729208 454268805 526431899 417633406 969184077 9350452 701637886 490194148 979652765 322172510 780714556 367070322 376180173 39655153 292329015 678710621 839543117 947842500 973018077 593014549 629851974 490609874 521909206 192476767 322881823 273577867 499506645 899563994 967010614 158705133 568937162 981232645 982030142 886039735 900244296 92765616 284434369 94756028 406861470 306832993 907236498 980685366 990218582 973510842 993937272 354696837 613691690 884065408 989156777 156820434 807080081 237724262 238089791 793982940 908828613 246521038 856404716 538828092 659997648 808900501 887864814 415185178 578686429 869743340 977760929 847445203 944423942 24709915 852797903 426200680 672949077 298779109 382165666 833531349 874026790 903193594 926565631 626940941 849501556 611977740 654405647 902171111 927721893 117660527 384164276 63098940 272209139 269425109 394965473 95852595 488085274 466824400 829186951 350308163 791454673 150178607 411030558 704691233 822367965 491467500 634426959 173970882 235426864 138811094 219527786 531722239 881279766 896587923 989845336 708197630 794901439 969226494 985931004 368095703 550137885 429242378 902290089 965999615 973971855 649104722 912119953 535473279 692918846 848149855 980594537 406409 230868354 173453174 367408067 137329533 936880974 232680295 299155799 588566985 798260901 742736779 795962168 574598993 985804999 49439415 679947936 548903325 918661969 459309695 588009016 711283136 922140020 279351920 354415682 645689061 684395099 762485053 942589522 177033078 641711475 666044578 872318625 753531313 980256017 511216377 647713948 947848256 983489777 131110385 773876174 823569995 879425694 366578976 577468490 481625424 499115152 151247080 813151840 303061266 602724284 855401079 968869409 182602226 245582534 494406770 944179793 851743951 873323857 944000855 960693382 188184174 649415500 328888557 950424470 251897177 941713736 175786086 501544842 84429123 208326447 296746223 546937394 637896602 808464808 988201388 996891156 231182547 272349041 619048644 896439741 373240519 943034550 894491122 917226784 211851749 517198075 270787324 625230222 374938098 462338912 389111152 442218128 829102815 845177735 505188226 725734826 74453123 689118566 591003425 728127869 19305642 967870981 915480962 930823967 357323304 989762880 147015605 148571270 474517498 669318925 123914172 959675344 3670846 56456002 404894815 591974687 548993029 747211675 881105172 945811710 401896153 632268387 905165247 911330109 900626520 942434722 853478460 854201479 707775052 870872078 437996916 992611478 566083548 643348158 773075384 909029291 690007607 923245446 933028542 947448598 789092671 812968317 328258666 625526913 124596225 227421940 67285882 593820966 784186170 844642467 796582048 804141565 624425023 893089016 503745136 590149199 331777489 459408819 787809900 943140773 576188633 779430819 43811878 857959640 638180799 851565581 973996287 980652443 665430889 686554361 465887213 838059274 770963836 918026041 854179731 980133763 466619664 798114874 924153584 978632161 189790069 442583349 322135263 963704134 614662956 955935602 741750173 789669946 703027986 807480803 213496993 474974007 211849724 280319373 840937761 938330717 486416385 751232913 73655027 243725622 339411927 728407836 722656000 852195728 94158604 515112073 467098164 829353628 495336217 669982578 540297929 613010085 396941504 585553159 209896239 770436151 529267395 565898458 774055692 792222815 103726993 295044225 953610379 983861320 174852050 284516518 769429203 849321898 885268552 949083347 857648146 884966608 478122041 648432026 200132422 767812887 262213425 606903994 377476968 511123147 827783131 842372107 71003130 819337953 965738360 971336790 33551383 178070229 707433363 992441513 204776673 735736958 774100276 962501458 128881378 147878658 341985407 613125810 275563961 725874651 922427327 928805756 95913364 279033941 557969399 573441990 25297649 220263931 626343810 814379546 404505846 569801632 392130473 833374116 524609928 782352021 878438169 894870844 852973592 910536773 4626968 894234755 183487371 519338512 948840911 955501016 489488055 960413963 297713005 341481613 760581843 955414962 932935878 965293828 696209670 712584497 894172210 971497889 169632279 524470802 589444806 646400813 837684703 918402222 189033077 502549363 155828864 550726450 754655854 972567564 155279391 636558129 651816222 660973635 810447135 937320904 454482485 688374020 909329078 967024459 917481260 955589313 811487788 899576138 400297670 596634064 911610822 959123118 335612762 652842434 34746249 579308268 937631038 981867994 595801479 859648663 981456615 998620093 508427560 690039809 195415322 264567544 526843084 562445580 924557182 956773352 874699890 901005505 782149863 821949065 552516165 676640629 464023207 990348504 544916465 611191914 921468429 983541976 43785839 290333653 65765003 120473359 486976795 762499637 87037796 372417340 587634895 774958349 928320981 937558604 838329224 970385866 135918677 892882509 574987769 953381010 44858932 967166166 403726665 506076008 88512834 421606358 761660335 969887599 30768482 577109883 757264651 773825965 745155257 961139887 914819945 970897395 703033495 852557459 754876646 853912853 314627803 971686837 127135371 515314996 32784678 80360631 604812128 683075114 293256754 911027775 950790922 969169031 478139700 621260674 479260205 493876631 716866350 809214959 261168146 583882723 980830114 983870659 112996292 989381398 490625846 644269567 299903589 416266126 142840188 659649802 351845816 673516524 117093937 357348189 423124679 483001361 427753223 443000338 791358149 985841660 553626158 680082921 594997054 773485416 67023363 555421013 566445759 843250905 65751226 472310635 758149913 861238047 86904370 736576239 176847328 535775602 703177706 756194080 464995325 601047016 902757556 991854799 757568330 962982715 837806430 949897687 778494766 869835559 503323624 519227489 251900846 625638531 245083032 348770764 711940066 797095204 462157212 735521414 434415042 880027890 829640390 920931835 196760231 712119174 490894032 899421321 20505128 585758790 354819576 391190198 284857750 838215266 333210439 913992965 708995688 944868214 271865104 501903648 739053934 940640412 213077354 262518217 185576017 189308511 616600955 715267613 80809619 438650236 961305670 999010884 588298145 810511404 592654126 771579123 205757752 253074719 331084139 698038038 26660089 271262041 392084745 844507054 996283266 998410281 349433516 355474259 983341555 991869892 744879640 831196121 862175908 932313736 561700958 652640316 360615211 841465391 686874399 960822856 91498870 293771681 796647365 917989645 676830705 892966225 302956995 493169415 335791284 984002951 330925007 477266839 95515780 524599884 160351128 294386466 943754199 972904756 936894551 961763634 861213441 950911792 930697019 964827787 522937612 934222247 490910770 727888777 464280910 677862337 930687538 947716740 883133813 946870904 65197619 405215829 246594847 999741873 997340718 999137838 695124492 719069107 760809813 840535768 499740200 720400273 697457777 995093397 867357212 898731031 718871102 953997676 628373128 774579771 62359696 160963772 536591894 811996021 758611439 799424736 465311588 607783769 159198859 751021866 84058152 503014206 533947872 942276875 600121843 718363687 881416253 894872594 109957304 474581592 270535002 902855303 540795431 932825703 912410956 988966530 883179794 908728690 321553579 783696941 205457870 395283286 584560706 824564267 392228900 657254631 275313600 976786422 151484245 986545449 819165941 861874821 79983630 655479188 860396130 902309011 133046119 143853258 906019670 956149227 939579448 985864844 965621310 976135618 129059778 495245874 438019772 507176823 306845735 549731010 757549464 822928087 766390811 972285042 97865969 580928721 186759115 545627567 483864885 491591845 954629193 958260456 705881020 934167147 283319356 794875717 78812580 367164469 375657691 921882738 658232791 678303597 700612525 996648579 366544953 683428112 458265036 865121403 341432026 481484394 204458752 916294565 380029980 720772638 182345566 849817168 698078752 840389462 270627692 480276001 510914925 940297733 931017751 986883150 112263390 371265444 608767665 615702126 825113760 854336249 304453441 737523443 471305433 723731321 912699648 914511088 412958489 976912644 833999927 996688949 448415511 723806983 303384091 852364966 915891251 984280446 493589076 630462845 765951553 987797519 553613329 973544025 276698598 775984051 641207105 785049822 324336735 360394527 515188783 806532777 955027457 984772202 707578926 852853558 225184758 938071984 770745844 845848435 890064834 959652405 897864192 944168869 59886238 515629359 254118688 800800311 167033066 717428179 112259595 665973321 502483751 703335126 400814237 887873750 758230186 760285056 625866668 924550924 596816541 608134106 42333403 553114779 955336685 994203202 426943514 516791365 810175151 884542014 976152573 990282495 461348376 599200072 1484295 862521318 809111136 917975774 355398938 545712171 899884589 999982492 734305801 995874785 509202452 901887231 319396873 340165183 306754817 522608743 852305581 906627908 499368975 884183682 990061306 992572948 943159158 982921595 237533518 610459352 866151881 867368489 614515243 623026412 333345868 766166124 213356950 759281701 306906451 702932597 476587604 557128570 774278986 942720930 71647165 279974357 620594596 906277823 648130976 859268633 357885089 403519083 353261340 536995634 11387047 954542393 649943045 692501260 191108381 859568275 736790214 878915164 434147168 937957468 587906818 832716841 928557674 931829263 672255864 941884251 67518735 641353920 133162678 642029900 31546939 979718386 774480778 910425011 273852773 710305726 564218271 756067115 789376818 962798859 191698864 251229400 603041998 896659237 816737515 985573600 90341026 194416323 385888340 540353059 35480220 969475325 477939467 588989089 440097285 853324460 469607550 778050935 290193431 910418496 92312783 786149013 130866788 576198299 85873538 789192282 679916274 842578633 167010370 601250345 268696352 823600159 186582249 375295524 447670120 841502816 571307592 873543219 221980399 321512634 483113890 872005520 66296413 119765098 277293502 637220888 660385277 928101999 172270495 542358471 405882848 893693036 242303754 926858652 401214017 596507703 165590165 633660718 372515615 588179700 550757700 978004561 257117748 627614029 439186652 855838449 60747986 865131311 527443118 545191295 415088159 664027360 832659852 986219680 98476702 424119794 189546430 487523217 894466815 908265244 655719423 900122097 227091788 358405779 24114790 848220059 644137402 645074636 328446525 898960155 357908844 769544345 240912876 585157105 325241011 807123936 73134126 573829127 318961662 511778502 329737721 972692683 340405683 759430995 343155498 542980415 197378018 565431296 719108355 839155009 74711628 514757743 819002800 924132683 608373880 895208355 209637425 857585471 50424715 238017724 450810966 480757597 211725984 246784998 783813277 881559366 163591574 353622088 591397200 865017996 56149787 373012395 392893697 859978171 815428063 844478650 938816277 948849602 915858850 944628983 989343512 992106639 797137148 849759306 585456126 720829557 131307368 407457580 107487434 315742789 283957333 410880175 518907585 569984053 506202107 701331474 631117107 742124070 683763582 684467378 911537161 927123036 180290341 480750261 770530643 913706480 585479444 894177543 966865183 998247321 882168068 906928599 295663087 672499041 115169795 579811611 586541788 633845614 157223593 594467732 209798998 470585534 58780639 178961749 343158814 374779135 812018646 947410604 153177051 803145761 30152165 849874310 199299932 893765460 295677322 870306299 16611293 179526910 115144319 694151202 912992828 929294681 236695783 920070354 742077154 771678487 463485145 736540300 487755061 914575010 804724411 961339531 307869094 411105740 375962874 555014370 209801706 857374490 912567374 918398182 355751925 492673587 827700380 919171593 513117425 910486303 737014734 768543385 465931935 481662784 358683825 576040222 946944340 997810950 677400591 972693687 42206614 75935080 385158913 827566127 320099671 476378945 282443330 776593610 498161173 856551799 88206706 386119249 137635192 749472175 827327959 828093742 773807807 853210856 260997363 433252097 699902413 816080613 524951372 838453234 504742789 619948347 225376579 342881413 739271653 796407962 685005218 896041496 991441903 991583765 546052203 879649461 136847073 738356284 855932130 980930510 395745199 681290694 957652375 978863762 547650160 765181887 243349490 297638221 774065330 929251378 864994608 905882135 477975085 988270225 832594432 975227064 10685834 276441670 698167086 700023012 683095493 724781084 404100824 692234822 162531298 895271751 275359646 645084444 596454354 675683470 438757219 521201319 282166534 920155083 920736509 972592549 507733533 642763907 798166470 850709343 424289921 778278217 217589819 606833157 18262103 444769501 269804612 276929480 640088770 756551833 7573724 497410940 57978969 770826681 517106441 917127664 60920349 361851982 848510990 943928083 613975529 971870053 839850049 856618246 53627523 754705251 304293825 791588391 944064486 950136720 858049599 985609739 101556789 699936742 436811381 694472157 568250138 765311370 256211455 917494494 369643938 441508623 979540823 989461643 560198584 981272171 567641881 815767856 652194247 814946828 818909151 823310600 792427449 852465624 247472725 399155827 526394384 911261569 809770745 814291715 409774230 794314560 304916844 795905189 55535443 143363521 601109624 866396091 904548092 918161941 468093249 681082893 285505932 887909522 992414018 992519135 637757836 846843164 395719033 517785102 634163511 672553642 651120425 955952453 874173430 994717338 132251241 977942742 403650368 954132566 813227320 838746191 305530729 616011748 567825648 858016119 716678835 960441576 196814725 790299751 377327396 719473353 124402920 427330770 656363409 845184273 967251975 973650429 365882535 836652447 21315256 403321144 997856082 998103347 268305613 607773106 432007402 791063324 559192815 674465645 428647475 554974879 227006952 668176042 173848634 894104395 112238906 249300936 869617219 928255938 517296461 523711828 636887646 747483991 768750785 941034645 483683737 813865803 730324263 982226248 223084433 488811497 961422186 979677336 36473489 997517724 13546094 768308317 872435857 932498260 153021327 634804703 56333974 616953252 13630661 802522018 359149543 791860067 902075566 924085984 425060339 681645487 913336058 999684778 911104811 922931539 641976403 735356276 878628503 928693853 824233525 878580707 994760363 995779496 36559494 258877112 213019707 962228331 618759539 737785530 932162109 998502462 911437498 969061886 757314617 907077435 267873038 594794756 264140427 929549165 698679013 971792137 757162380 797770855 807994444 932914922 753160465 895420330 10995466 184851819 75402468 840853999 564419593 715538804 296822390 366576701 241604205 784557998 483166521 900018882 709382247 822967639 318460448 863057019 262846189 733298606 660953987 807522913 826836140 930411953 281869994 663947676 771616160 992131208 799705219 922899516 802300126 827711703 604808428 629815758 966741638 971255490 226017645 344770036 340655715 711635555 851890895 902961112 52166305 249924730 963075668 975806980 106110656 568710727 979611447 988909531 363845681 544156903 953942074 992404677 47867310 936608774 190631039 243437092 923777601 952940588 728409043 999605840 271960305 800216160 257346004 942846544 337351844 701676211 160756116 856329921 984413105 986162284 440768174 960787533 620073980 666335410 2021376 489956198 495194650 841673602 596873543 645213299 218240110 504592441 187517670 872053106 444160207 937588928 401617240 872712877 35552814 708025078 939892006 945968021 319099863 832254107 30809707 612410592 522507791 969357508 676432410 951665904 287964225 340508353 895423031 909715973 550294554 688738551 817685172 937761024 553066921 600019736 872898634 971038008 937438523 970141035 502725445 612869403 801013709 941220415 710016761 831903414 630379101 892825026 15448038 552151924 606031038 901773613 203640212 636776386 578002720 625154095 406625086 983032457 648917130 820157283 981366211 981535404 724186640 792209451 312306860 510144634 395199095 951807580 309314782 644033297 555472217 741475187 264190242 565894756 199312267 827203888 758009656 997496806 602555034 741472884 885763917 929638867 156336928 916000148 389093749 511807687 729739340 904413710 79701525 248425468 473523262 724495080 813205453 964431356 176396050 817309759 361119278 494782999 940149508 942380791 18679417 675259273 460680830 613811736 164473366 972890329 678628196 795379424 356048284 524460659 823039 336489706 322813416 363202553 879957066 891387281 252054622 488171010 359835766 707423401 419912722 832823192 519232604 688633262 357022601 896915390 12882507 825599786 657415659 919609261 280557688 840699568 211209679 759996542 272144784 544911109 610846700 742916071 520038628 622747098 942829044 985863685 635469440 775489417 345867205 609118396 504127936 553169791 363171025 582414185 530870908 840455535 129196560 933232870 156002560 723116537 364536753 856546556 353541771 496098757 569479516 905648858 684433998 748784403 440961592 734543795 519765368 755396539 623639607 708935736 958284136 969474923 360418087 413503493 264386590 858166720 592606097 740121937 936642756 986129111 264524253 330120725 181061435 262864397 456910437 501708314 948196839 949702301 670912111 884913377 604692100 745256321 976724836 996482886 838996496 954826541 573147100 746816419 274716132 982322629 648292836 947986172 156746463 600965459 411941079 960318932 405232962 896425113 285770649 394007855 674561365 719869140 901793602 941377381 354734755 640402021 283224923 766283800 926605435 981445659 491209419 829395912 488035409 599530654 586081770 730779337 165169023 488952084 307461259 813895048 998733919 999479996 290216201 943557707 618104267 903553234 403424283 478853287 812937109 847148333 708199852 787698334 750963854 838040685 300045961 879981584 525917004 987122062 85277132 245344750 8592376 438669052 561572903 931540876 477321054 594709217 305722763 485365607 80828734 808531278 758769728 849512282 181401010 229304602 164791474 303315848 783307888 922914377 254276142 856680324 50001836 526933282 500614068 882367052 595963652 846267375 359688387 450820920 932127729 955353371 159406289 610213842 367518855 456723091 134997038 991392341 757034234 778888710 841902063 935078811 311613872 623074418 818295384 987560692 17165446 894809081 294775358 460311475 391932874 975209613 232094277 345989809 83891162 394996070 51280368 639216611 141227022 919370542 338447208 973222637 842378317 932478059 934657744 950334438 640859066 893433988 358257480 750897524 512952629 981863819 553507034 683493762 912549240 925963930 226532533 300784909 709378690 980841252 333358176 747183731 990427972 996122037 528709586 622537929 897413083 948958438 390479174 507304120 289452456 533174969 140542661 401697263 473877052 930881564 313111751 880319718 621222963 626580128 295438226 587832803 68053508 825546052 419896357 895881617 710349517 830314026 37613531 296999843 416549799 799849319 995886899 996767048 56379881 360261656 29257760 958371769 490303781 515433558 60380609 110342014 505509570 582093260 388399033 471732865 885004066 973046264 562536394 690234150 245222077 898287697 691562231 763998043 111403439 333054478 758583958 876571012 112840081 927933920 438433711 831268741 979809939 983683014 496829378 548070856 463195012 912833057 115554861 290938167 233840478 561279886 408549184 970739625 404785177 925686223 6306137 268163464 537970309 539976516 893362456 911032029 63553202 523283105 980761646 996317244 243096860 632887221 868715301 960341537 214574216 661323216 365736621 464571604 467602823 928679186 809637673 945850530 303682713 758117563 172500214 303181809 815182298 989860249 339175694 622257201 502256470 609977446 682097574 787667453 455574754 908131565 969357686 980420960 402665649 642655306 652052442 810738209 701304251 787780424 941535921 978990500 95045615 678761448 400803139 577560674 787453649 874259230 843116604 951974170 744279919 890826715 504346138 691180550 808601123 991470362 768627067 859126619 539987760 891029627 737050453 860822704 76532026 663268018 43675381 865504232 180234870 283542846 716554073 806533816 78286215 732334333 788517443 994802968 59041730 156932581 865239755 976270015 612594030 867632883 673997835 814432830 633166908 907000404 205839083 664742813 633552162 719000044 770835905 899826507 296936847 939792464 83628543 303259742 560551636 588351281 876247978 886747959 459985249 780844400 183543957 627007923 801879240 885477768 171255791 651112025 316025213 697636892 584617695 711497258 177150379 273224436 660366152 790401754 85512100 972455479 128628487 367109445 23182032 293087273 243098972 851687079 989851673 997615354 260685488 389194941 150394381 916926152 616079849 657026903 551661284 951734869 591188268 912744627 431125064 899407731 406490396 889040482 14129102 983595653 509625757 692698484 705753271 958522488 321570213 965935841 100832416 218737321 175660533 607318175 550360032 794528368 431077257 770329400 263323850 281967938 811199251 859426239 909148194 943180429 399373187 847868861 323123501 908326370 154901234 988919687 104044296 989508860 429865148 962661092 802962052 880281529 799743135 883341390 403652968 407780803 454143311 634584957 572783801 732069442 819464536 897335241 332447290 517640587 787363263 891598509 170547880 564693716 309587437 787544430 632534764 928933817 865889112 904743045 739493185 974823849 884489129 936851354 93196319 367242126 180516204 711677603 31481763 595201982 729137059 858849774 281362615 711922152 892299571 908602231 612598509 701624846 805956564 881229721 747998351 848963541 384586038 700451444 668175391 882498765 154503353 455728469 462593824 687184398 879056952 942121441 793770761 849638786 477120452 999581359 84847529 495347335 782078308 891951365 301678121 323560900 745185906 999913268 361796618 838222408 788330976 795540911 435618863 773253946 70737390 664945358 144982949 345667602 373145222 661090612 789557309 981776682 541511272 924737703 388662290 993438107 662099463 755889601 566068673 929679755 616325045 674093166 600021874 838281049 307248954 371179568 607959727 740578941 620646787 923442501 734181123 759857264 480812817 685713465 79631045 325981347 877609692 971901220 329802241 636300073 628054309 816265847 361338548 459394082 809471536 838833886 120946698 699084269 55110069 491572591 20657988 672983017 587141047 780170218 952139035 978143514 374012334 922266553 78155593 354949721 295425609 792255741 628594037 694900852 294808797 396938329 152053177 835033457 75356021 820145339 531878434 813299492 540175757 774552828 421740950 490820622 288665123 331569967 500574873 525295880 968028688 991837773 15811944 384046561 412009449 621323688 760264113 819883161 353531679 804954482 644409763 746902688 413810559 829292722 200913096 442638505 703731001 750179713 843181007 980725575 180145733 456393267 985926634 987849270 762146993 992670012 566280168 696995293 109889825 311827632 493172516 804633399 243107766 750504340 731424937 961385261 409748619 683292628 58843427 950007306 870436337 936521903 499932372 527780863 182292990 897679272 557369493 673344820 883991611 981068215 314232693 491032276 282080889 958024743 111075274 974364356 439149641 635740125 754732579 783105885 506663876 833759863 318490453 436409633 18576209 136088351 114120927 312908237 901638835 951107044 900268574 906355628 711356980 846460800 934782502 992679961 12647891 288792527 697427976 838930318 240466716 486898737 779684657 838911338 218534188 999831942 798867333 809444428 995398470 996271415 429963310 492980519 453162278 810702954 655971057 931456479 815436526 945107215 748099280 865544198 862513800 946009244 5495600 747362586 648387159 710923124 782110931 820514852 584207308 781919053 120596181 439494508 789282876 960011134 395852860 760272897 827323939 849366787 968625847 993318267 352247152 659963039 516108009 794009229 247929831 626891848 865583454 913222008 185398964 818970165 167857100 716685682 287205916 687414885 555039512 660941787 648818549 701076646 415168592 937617612 582181566 714528910 397887145 723176103 258255089 261787345 725446017 779936222 952706791 980805935 283915108 586051958 487206911 573173224 955395820 956133224 831337875 875781473 565616937 878486093 260161917 384711483 385647996 761586398 938475219 974785366 440383993 742359280 2183403 399457677 279816986 849556411 331207932 842794458 117325984 886400115 46639916 829216119 238641179 948199403 177625357 366794646 284209099 406416675 957797706 974696076 511461619 878106829 252780439 513893326 785967814 800369824 85831346 909115117 613728217 753268377 415510436 927391129 339939342 958422207 892020623 916697735 616976793 997606307 33136084 335374866 524377882 788712366 662644428 782617328 676319429 896040467 836676746 948575771 775285323 959088613 377215554 508367916 847464110 901465208 324093504 562311061 449560158 566131343 298711239 316619441 570732522 684962309 123460925 509557662 204148886 676821733 712461374 841957423 216394032 322537637 908618287 949588639 267272355 863754972 165089285 880558899 213565602 552095171 807004596 936585393 913467540 995990768 337868195 770266773 712928526 902295151 763363391 998066703 393023820 875777391 98314155 517942338 749644850 943945484 375209833 753335733 278847059 774924626 245973193 964655068 766857139 970531473 837016159 916300562 233122310 742181289 566803910 951553785 358816501 572121804 335050360 723165455 997586778 999003654 764448174 773873534 683086125 968116469 299972845 974767907 17213414 680992189 961383303 968527343 426829796 856192018 330298242 834510001 805571178 988716324 627370052 692109072 136729051 456836699 119573896 289946496 874070465 915954867 92168129 278692904 632799150 907321697 987909527 988288337 322443062 690959794 405974291 484174399 988887552 997035414 374944967 531464321 291823768 855096533 167925670 881087907 955288707 996995548 378818104 630238163 730442492 891283463 70376297 90900184 54586788 87004085 478280604 878695038 847695120 870279456 598784129 646086428 382322592 562166505 525360970 573527949 533295822 787769817 239478333 313856268 918505658 993021375 651040330 757028688 17259011 184026944 987203305 999127935 563580506 931159185 538410108 620081133 267946640 873354029 415821057 442250598 161603423 396697215 756738949 824621908 183311787 698976714 882112308 976573505 619099652 899059819 913544807 964570777 810897667 982863081 346241744 660734491 474490644 807454343 573708022 909737782 337467310 581298068 161485771 557835839 876571925 975895258 301556079 680009181 880018906 940046490 498500010 841755882 692860426 754890111 622780864 651604550 538286570 575559084 918567136 967175299 624558132 743850183 825080448 945090873 578373719 686435285 108901133 614332175 678866988 715077750 506662113 610221145 185224456 978971204 561183491 937384173 679724708 820021812 823738224 955545369 715283146 745052908 45812313 464086087 603526352 975629238 46239355 119646212 726369187 730626271 67978179 342622594 951969619 966636136 201954746 424687552 534547622 948482271 760381998 921987233 888810729 899939964 160734027 360563843 783339965 842467540 179020349 429126685 833254698 943809394 929866400 972392224 220085020 649729315 914305294 943565085 117592037 372407589 148977571 380609521 949782096 972011886 980539953 988534481 272910221 789404333 719021524 738886353 814118958 991891521 364964000 604537609 97586195 459553448 12820635 195493057 13205006 531928001 716172230 804503486 877332755 989929116 913662331 951326743 65197520 263915052 744040450 752233055 730442322 958298326 923632086 986815137 528145310 557786543 59444992 909611127 740576433 868880261 539411650 825635309 390921018 580275643 227210869 932920394 766724412 878694291 266433784 823429123 193331802 235356656 615516428 707101952 799652016 900890656 292305809 475029141 874290904 901565671 565347494 615238807 487018478 699354883 248928734 516529046 485650831 554674569 338907317 956171574 937557872 940399398 751193568 788026749 458073761 661642407 108034293 888821707 705075606 925624681 95780807 619195149 855176193 914005612 370975671 961563564 792700582 871744732 648032857 855714393 527479418 550068409 603103994 839997760 911331288 977552073 606933659 654910135 830513333 890256571 366512673 874196972 726314803 767694995 191861194 714135498 659320025 896021343 912680240 946228523 236523082 521690043 453610682 861465884 804651696 965056598 879075616 892430454 315873883 962905244 920491208 972499498 671658805 672557913 455907163 700028484 934202962 998200059 540352390 792283606 902227344 917625117 492103301 732259111 250071806 442469167 951995083 984798018 471062015 482007724 713665162 845067886 792107488 956867616 829669700 920008701 914936849 995150821 61923576 69828091 949639202 981472795 712822299 999591482 469801252 499848895 697898860 714878520 664190067 886668340 249382030 286529018 809631194 878621868 626934635 939076240 534582470 780140630 963223298 990285834 408552714 946271191 639035253 714870807 268610658 317534022 239423813 252214688 32149518 371522239 853769206 927121788 231968802 584635173 380477749 566327648 249989273 608715058 118023013 847632987 159222157 350766415 310475566 408160189 494371646 777589192 786569279 954855834 219274244 366227866 918939658 967371248 316663040 830215003 920063947 956634962 560620642 793561189 373626652 471482897 12281534 82112476 100824249 346383948 302891723 796461911 29629822 551068687 518083213 685822708 893291864 976459761 938288026 958787619 671163214 959393441 585479787 847924870 548540915 608503484 563984373 871277195 874010592 937146310 67338285 328573559 801490420 992662349 857238185 935731024 806793700 905684452 511911588 609228937 29544506 39061329 169457196 594868287 515590511 545594257 388704102 975238232 678716039 760131108 478829973 745110971 11329628 926018236 118212872 683995565 642602384 788530481 525330140 762575094 963542471 965616141 423425551 594285261 661140379 905536044 490274960 603805928 825050131 872407281 447075194 667917710 330812756 486296991 404493379 681590727 69155402 852042951 7666945 785205979 648470451 779234147 645579148 764323731 339812944 491908867 798421262 814249681 228304242 914222795 980028443 986016589 56178974 724321054 113695029 945749383 128415914 210154980 762649324 828427848 261433449 888204982 972464315 974844606 298830861 563746170 975037209 987627500 748106374 793668609 459980222 924395568 745442170 820821392 674057697 724094892 674366628 806888981 294011655 993885481 127671346 995545586 715423765 736122788 556188685 866238651 765977049 975637558 963756848 997614823 968022501 978431541 540036781 974482989 699762410 886582565 538321708 832903783 484044320 834958594 124973685 499972896 941055988 967656686 401479145 492212281 625609067 827944550 370137755 663362608 930056095 959707803 27293727 863843331 354468410 951133406 275278043 646505310 181303940 913641356 930895983 983782762 250636152 910750243 520748478 728424998 885459073 896242446 162746551 397457475 76112561 639693319 50551307 300865938 199719674 369584840 683679238 864864426 697520235 733531871 961906101 987900021 868443792 988496298 992483320 994774065 292508215 470614157 378542184 924139707 342787067 729275507 204495409 354344381 52701641 725516688 607373458 867543058 492865143 892832625 300340048 622867479 750270573 884766195 81009292 999124397 55949212 924365595 883811572 972307911 789305795 996832854 339094391 719635588 859947479 893519318 96793970 113203914 472977730 721972370 554748664 956928039 13726290 598789604 72119883 662184154 321395937 454415129 418463459 494380087 679525885 860965882 776733303 982864554 972995523 989162732 738916769 836808361 707660544 736215466 798982709 933495082 371497334 959298364 688419422 872864956 11723539 139601172 672115728 966785594 464101774 747627749 212351689 981108596 823475779 868327556 587131331 993045281 33114469 762374097 619444840 997244800 408513386 630217888 400426485 427960473 836211706 870842842 282390550 798911657 795013277 895291707 813646588 980986322 126721257 580952733 952221525 967743425 946027419 977647109 669337574 686580636 168208189 941176365 623259123 858084682 15252404 341176542 711028970 827083611 447026923 502288377 355751866 795729573 727852580 816161539 366399782 837424192 944388654 957460825 551684705 910800476 403272090 891178204 723043703 951780997 759173316 890408228 469212716 655043432 858109124 972410333 575347062 881361831 362577661 944439862 960459466 970053979 911519142 979929072 489532298 916689049 704072115 900011497 348569682 724424968 209421132 950828723 130541219 740026442 729276373 807451544 250487510 923521314 466350056 805944493 518457355 693909700 424597646 581098997 466521915 883834602 285917318 663618421 172152317 179721714 73800561 865589319 341512148 993589203 831596235 837042448 683643464 721793914 269500159 780760590 636530683 970775672 842361325 914458077 261404564 870689202 950755220 986011665 150478261 996100598 808115336 950644424 92699182 159972433 728680691 989398769 858115870 997648259 327749811 925932324 58812345 61763473 313290749 337020109 929690192 965785606 849148549 967534962 456333825 557708313 852062209 905059185 141518137 927976706 466658294 817225798 151208264 648197133 778526263 995519266 472388480 805614730 284718981 496560997 929330152 975510901 36237227 668610064 543240727 803493194 658611235 825753050 109574829 898157736 488320666 640483659 55240295 522587413 551625526 838400191 856303068 861507721 388477791 829822859 506603056 558793581 279467978 571113094 526107871 933650425 300094575 576827580 357288658 397468401 463796486 748100325 441252375 585210571 316476409 649399252 36650399 464729511 990330091 992713610 169037458 231556072 460194114 623206346 848774098 867466612 236693054 822189288 590421897 692099431 888879508 896629165 67439375 462666192 5270645 80403346 569879450 952960346 935988553 998859152 25901855 498267308 978949546 985314235 762636970 888051979 314544259 958026318 522493293 738400896 234062944 776633277 443691595 507386034 705675277 877816151 370121178 872320888 467339828 835749055 575662421 688894940 722404468 763798250 361188871 558575861 38372639 100372176 70817659 751873427 707692928 737422231 28997842 417104381 362054594 982711957 33740761 365544420 194512675 813082805 808485693 985165193 976098247 992289267 750936119 866235036 20585188 195753934 401509389 683530141 409972965 426798039 525337836 660502087 130467522 972256305 213435247 283965546 921261550 998770164 485446459 551170718 43115247 206269323 250869542 536537354 781080514 986281462 815097169 940068743 166703654 854451726 539807631 935049532 50864311 65527549 522697246 962437852 596120968 922833272 172071742 780882746 40090654 126972598 519031072 776080502 790652210 963029444 76415576 780969701 354708899 812270859 535266045 634887722 949276141 952720347 903249828 998574852 526822081 552688502 106383555 768024167 388645223 462860910 593696869 668813031 978867981 992151732 340385846 793463938 852177894 959036601 529264227 703566854 991142771 993644987 678390442 706968963 184790512 977062901 543099359 755035293 640367448 877716874 305663868 847059416 579546397 604583131 879940281 995980333 120304204 315572287 874937320 927063802 630333693 716091925 484926123 692528500 440355632 658383928 870537245 909192229 874837351 959638801 596389172 949282577 585770265 908455363 375030156 465061574 169454191 811332368 720667021 926360850 141642343 740821419 326533991 445495820 317706507 861255918 153331443 203523450 132147554 407348965 34919004 638820950 253299514 448707769 228479277 652765372 873955791 882970263 16017051 143042139 575489215 683821144 595525842 925306932 239369959 533118788 547484677 779675551 585648925 791254843 73780213 237953888 48877919 553107646 630960737 814378142 81432550 990651356 980846625 986254700 762443730 881403460 953732614 960960793 734893021 919815681 528200964 682901464 711734288 754911522 41892266 504647659 860967156 915048973 678937203 894166056 34439908 176794317 804380286 903475038 103007348 746043403 753300201 848090381 908895603 931982658 873747661 992337857 119642038 578514316 282712415 930370008 768178803 800982365 870972342 985912228 276847102 420425448 314974569 467318091 834348471 853302511 801313477 831159493 595434605 881651898 221217090 252683725 910695617 920311694 875512762 939861525 241464860 275161277 378117460 602133912 538635905 787517274 241287519 494095830 550138653 900678330 934519653 973948141 734513354 953591679 328159085 659301893 891490249 940116390 939604314 972773217 815470481 846256491 707683076 991198317 979525435 996058906 894568593 904423364 937937044 952976548 740611027 958677936 511604960 847658973 626181366 785988210 670347921 715649374 157219030 825512837 850651612 992597068 198194957 291952291 725665364 925797354 220125723 932282226 373483091 927209009 881331028 949224420 690525186 757504838 477792934 888516240 14056950 574021600 702142680 964173442 687083001 742606044 789546185 988686936 750993658 912096970 261894313 863223447 999795276 999880557 878696748 975493464 294152346 797709208 738834796 985471744 514464127 676450058 76660327 203004949 481113895 656298283 567898610 825054928 468472676 720271095 39683035 579051594 78181096 905070799 425200797 876661578 856972242 959522255 257461761 896487613 465384033 644453650 93817531 404479679 186267546 391050851 707391303 717619547 722825378 726244345 352087708 465765684 34706077 698642616 686758376 777480086 683263375 886135414 601779370 715151999 3459260 259691154 375002288 751762782 489495433 713610674 737426457 786177311 106105276 685206755 692932436 738012304 600101551 883934065 954742556 978599969 580500541 836960462 666802991 876692569 150408647 874360905 808760252 886686391 409919356 536367080 116479631 198520622 195663584 844252449 196486905 315698000 692266187 792757600 873097833 940706547 636350616 987312169 112504690 651483191 241403957 311701430 229944157 773064218 468888879 842092130 621349829 734091583 927404764 974632920 589557837 703801740 376716165 424530488 212471520 266493812 65329667 500823696 341605551 497231277 598074509 923704584 332792524 345987963 394915065 848424735 996175402 996764572 908101199 941108396 158895029 307944529 506961917 944381101 915214138 950425900 317236316 728980438 388206823 634865545 936156080 963127516 973254253 991300646 426947285 692132993 709679382 864202645 131909153 271299405 656712699 770360306 343648576 771066319 882566288 884465225 746128996 876798050 381691996 543404334 282077595 697271684 259739956 287724111 235676503 616351807 808123132 823303057 291365166 668780682 41836175 526373245 104385816 214988104 379304353 985918546 575909544 700448212 400405827 415928151 257629683 679788980 963730321 975113384 905443366 951943469 79755669 123881667 7079355 141987407 477505719 515610362 268345208 463390665 131269296 313418692 555693737 638159467 387973880 975568488 140853602 677565970 964380799 965941710 315942810 935663975 405044232 590775462 587579657 932330548 551305225 926059854 521034531 552139505 564192797 952779827 190391111 196978211 219433225 450732323 594784947 629532538 945696160 997120677 3659405 828064797 485551709 786139514 997426214 997975253 674879119 712433488 251728746 487370566 631936997 880027442 541570261 644243042 666352858 683623000 156662519 654368171 534620705 912745387 574018137 610146895 285068624 581259776 997713565 999422862 301596724 664939516 85588554 665387662 349929792 680361712 757354655 765027417 584101792 761479159 417801429 766710776 483765262 945458091 719082121 825692741 132445486 215782283 697391793 963635471 689884689 988803283 943921027 994576089 965796606 996921909 300100657 822082919 217272393 591636662 446284652 977069290 48602703 550226067 686238321 911969343 173937493 834181824 173653832 701037517 105499081 207576114 401885158 788401348 155006382 286183845 69193638 508787079 983946787 990607296 306847988 686427847 879433395 890161327 267089530 987392730 523519663 928011399 21024086 755068010 913467618 976700069 655667434 998731089 423386850 906018640 910090224 954997313 480362690 689483182 15850692 882691824 674345777 991678022 216449791 851186016 583385826 932953810 121396013 195559541 822851390 990534937 87332034 553559599 295888035 404806985 552993806 980132636 815888008 934931026 605224274 941945427 747025672 755615061 802384848 971957205 916681081 974912892 574772817 995959956 171742486 188131507 89611770 317130332 107229497 297888719 492133306 720391869 177011648 259598522 84419441 323756920 277479518 886111013 747621191 930154807 391845195 860293516 896490351 907881063 388468739 623946602 450539460 928195277 898176246 946573593 331062274 789911555 435854471 906572767 140343667 651903368 134881084 606135313 570113253 852090636 545344307 865762458 95630732 985693111 714023497 942665460 78354210 196233536 994369847 999691848 645993721 922785734 464850303 767896556 960801505 997598366 666304433 673649179 174778345 220458490 647236750 766444120 951350933 952583232 483298394 891537459 98295915 427860629 943845235 960357160 994756871 997905301 189405619 563450088 729678276 979361224 524388645 936019218 134965864 358008213 500238343 754144516 990076481 992485248 775593922 895067022 764504141 906192979 188470712 265282727 982097438 996299010 411574234 500897553 401077200 897599831 377299314 972899216 994230769 999738421 589498323 735602168 841389182 912342234 120312696 989878135 136967509 803196137 540140396 658798510 872481534 959297884 898349003 996844576 661027663 768727254 765898243 989468167 284886339 430298325 105153058 954510569 829549980 850775684 277525702 487107007 327543601 964719713 21215082 808159342 791359431 900883961 102395135 542126463 334316549 759496116 209058596 588728887 748954304 982563107 442429193 780280014 813201039 928624545 596391401 596442136 795779509 889660026 542828164 710183137 654722228 717593232 464197675 472844741 912067089 967848287 945495117 996102655 330160678 726393419 348790676 965395326 697999444 969947161 637631782 689024275 315745923 779290575 652504837 752856460 20111938 662520946 822050304 823653883 912155600 996266857 460896327 742117058 829742144 869338463 787374910 846408092 254589780 777434907 573354297 837047399 906758729 944508247 603178381 977235060 240235025 257128680 419231750 897142272 286375863 302390991 827065806 842437913 38209725 797266140 730465889 820439223 351339846 836537663 685081664 778718198 811531863 946825208 741025233 751745678 100871790 156401656 654360842 865834702 301699149 825060234 287823312 373941540 560276770 678829951 338962296 925127865 938206765 991685301 576508828 798063351 969634944 980856419 136636278 411345071 805775883 992930264 80455338 336760371 732779887 795206879 22663173 344925150 453022102 606458592 277822617 748184177 823158986 993857065 869938008 937039617 314413562 779710219 516607062 833569725 578816504 700093481 512355710 907978972 417055161 989626220 70808986 777970089 290228822 533163694 633041807 826476728 70836669 864012083 418055677 593718417 316487999 544129970 246136553 542526062 223303547 837664555 158347167 449476816 35283195 706776437 40164500 203384980 972050936 992284598 563459672 626498826 243081085 469760849 564393468 867608459 696417462 718915183 431991950 495449866 546483652 813722698 163445126 946721790 992007415 996351380 98217139 650118034 415264395 892735712 152735877 893499181 776221954 824484768 573483169 736062530 737064486 757234246 971629131 987217906 755477115 804942709 386620113 460962309 837547882 998112248 234897349 253173209 851866754 912156032 582661772 665912608 118713570 412305065 294491537 437748194 178550536 829277894 50480199 734451115 484270927 494530766 455226136 584922202 857031809 891975083 968762755 979829648 735354341 923205685 820778126 976389777 770094741 818596256 256132896 653890844 138655207 855290532 181908564 819586147 781708629 884754953 46881702 231363832 848901424 923939114 348477896 830554918 660114154 792878797 532498873 843433416 374352670 991461338 621567188 729752428 3773961 344396919 608636336 973136627 995859111 999879163 603210282 705362634 412720122 550843523 111879963 479279034 241369158 444977171 998300813 999911215 365549563 594674650 926075238 931097826 173165010 722418890 179988137 903221706 777596981 787363493 458365704 663207836 280732991 676359916 789316626 815210341 948190254 977287083 511116480 791604633 116436208 703332900 13946469 282236928 189767547 854626004 732950898 901409050 121031927 638578443 962473577 968920189 24768136 769226195 509632297 585344571 232662860 538042687 330635551 860303872 173872683 390090112 222430255 768120423 321690084 602695209 224129257 693995152 881591392 985353441 519355826 921097436 874209663 968197037 162718103 923790744 732874043 888439740 496003298 646539914 17854510 874977627 423803334 525769678 58901741 783208551 56556625 304476632 344499310 714037866 256620147 660594506 661380572 801323369 387506627 522246265 916723921 988865151 898508248 931786893 294369783 564296944 196095933 770610518 17431568 570559326 475942998 779431028 762255764 982243239 741687532 839861919 477019770 631598399 9094415 754966686 695853768 997212464 544975919 686954407 500966525 812483657 2158528 919566953 357336460 843234110 130084054 828747713 846903303 849982609 938953656 944929862 782730566 809727502 237756461 297660564 57111810 235632610 548344851 706678463 998903275 999102384 168188226 327834736 252058879 771281253 372819923 940644602 756488860 936409328 223549189 911732830 409235113 750526170 45686002 618021199 850280395 916188331 823111520 914945215 502657539 688413881 967692735 969146104 408596053 755568535 24509247 112478502 780474707 879117364 68974861 627783873 11975020 969764865 344642989 926704535 900295802 948777933 884263566 973224741 388631226 976219484 99584202 780455158 842949813 952227203 93913611 517110983 921009654 982228052 14637165 781655283 668716763 883714689 777595302 929551691 259668643 510129578 488404355 749266787 531885195 780193213 968384035 999146673 468618199 607629170 982054132 995789755 623004279 865793062 871669103 979054227 17859296 832342862 170670111 542174661 991925009 999595312 828704649 974161082 394123936 539278691 999745444 999879227 506508469 933437513 634276903 652803579 922226902 994359674 346591477 509146054 554131305 806159222 960358398 997169534 26644643 450752271 744676473 829747226 228872574 472200643 632258863 796885469 656357272 987689541 792645896 909746235 46548085 152007419 233430618 870950545 157848206 299923469 683033769 743977992 22871507 83398554 30297814 988044695 499756496 748533820 857295438 969649796 628816257 701269342 443384495 546249463 402177247 795188558 604952591 830726391 677080740 788784362 339647388 591046545 158064722 713252746 916312197 996924613 363034104 384357835 286255854 338907305 261056083 635800854 765823240 970393039 189860233 744044410 325428213 749824822 516370817 556981286 795915127 982802597 23950928 563563356 737372320 966551744 499897820 574579457 426686767 621885236 867040367 956410872 992249314 996607400 16923953 665209834 763473608 927978227 816535369 817770533 583643418 744377194 19607658 630483164 631023234 757958411 782240698 797204078 892533910 903592788 98149967 375590679 860287013 881872372 145061543 609860934 343320579 961644461 894137643 960037319 761133292 899091677 229755916 424344650 67526079 962666649 690555637 846041141 589726080 937299139 560419894 923124034 312072118 400010211 561485156 666221381 414860642 814399110 561717664 683906758 583361753 923317841 519858233 681431684 882202007 906065519 348293656 966637614 351671903 435575692 788331773 952691177 926759937 953827762 23789384 577345816 59702662 676132803 807061991 958326253 925401877 933630219 199050166 892950477 463955370 689757574 464897560 671854011 818343091 908029242 260659784 580551556 124170715 131676620 806418484 987416686 241056500 575936773 281972106 291425256 190902397 230941789 775381571 801940830 9618810 412315677 482206887 514315386 892582098 927644553 500664063 679734501 169708216 452926940 508124652 913645952 983851551 997796617 187258767 879081362 181473668 335555890 625445985 893300436 46207795 640253425 877286764 971972846 736114529 805510648 347751957 930453395 326433024 772770555 755439895 939340983 523276813 624453540 424790647 482034887 411342801 487664184 670108868 768260115 896144014 950214116 588933302 735895514 131404723 182372617 448867718 984397319 852969172 888350433 755370330 945411053 652562892 870899973 742100968 779647334 11154737 87720630 852021518 879843487 288721109 362686793 392459059 851094578 927022807 942229820 630774827 643575196 589807992 882181356 491378226 626305389 527169738 997574565 822945223 918574468 210981255 286893874 342759095 410049313 545946700 773164738 430833012 454042361 750012201 925230330 852401500 981886627 42624165 365574964 224362281 368201713 254689914 687380462 472606137 687796367 318100839 610156506 608570274 955265160 512726570 608391020 732380101 813950628 627966472 739107396 714264419 877910028 420823605 428296092 692414674 720054215 287871139 505572240 122606933 134367602 940760074 954705084 875282133 989126734 320513871 565238189 445841528 809222996 296984743 363203540 461624533 920146986 70556304 611143926 144243925 748748145 485197050 573357856 304701190 661588881 469636147 777321375 521890716 676811451 261908790 438092944 961771177 965074105 208462640 704756506 804811588 816666816 10935508 114652212 306838976 432986040 733795272 744447199 555350602 907824669 228389296 511043427 874463769 906158336 381326252 834482843 727016613 838617900 515577252 831586512 857674764 886312760 330027467 715132211 753222596 765439632 102367705 700163879 877064926 964255296 736327894 971961779 951815711 958688717 835314978 994779236 667419261 902620548 105923723 754934338 773575986 870455058 804932002 874473205 847448571 919246314 642588014 938423186 222505967 959889070 840330951 998589809 154242035 691220583 369877172 762214646 423861134 864719255 916024445 921784230 537676911 637154710 220227902 669880264 462727884 674734856 313852323 449634781 63985003 113766443 567509783 581352120 197457054 518168858 527159877 567733004 597132258 999403102 653195198 768274951 35990546 718010048 884828060 963964575 906440043 934714200 700340572 811496534 547986714 606985310 716479469 873776781 45223391 600316737 658735606 894856748 733186822 985159487 404395330 721423717 787169669 813218573 386966242 522709980 219413190 262615324 617641903 754901568 762400906 865512625 790059644 979073168 942589088 968593241 447588585 611326421 968746252 992333485 30733408 766748430 390291336 403822569 10886631 147232841 869825054 903750363 34898868 632889725 108986264 875067502 907658774 982442936 895225362 939285894 138054248 331261650 206842558 960313370 988786282 999289726 417656040 776377840 355641834 616303834 558006356 691977698 862967943 881041650 422168223 929795065 349710883 650422683 103772419 544610583 118353185 878734692 656039212 690525480 760771288 964842710 889420097 925619103 961264776 992876564 836008046 958470954 446286716 694593803 991747674 996374668 506004158 522174172 294065529 602222828 950525047 998369187 372652883 620949967 725367577 938068489 183432805 546759250 890808743 988020094 404873962 721418855 343367727 508358694 361531390 918860604 501922228 858584607 881360394 961852036 449434218 927542963 242227163 249472776 732610459 756062380 145466708 396059395 347402526 822320623 821146811 842639995 140348054 686680835 910884117 969404942 501848979 704818550 397782855 892971690 931487228 991255187 927191892 950252238 852701574 912871740 446530822 586813841 104620611 631617148 838794440 850504001 393585045 626543575 460324563 702111400 725214636 876680625 813063456 910378967 574354630 967245161 94033212 733906381 210646995 237017969 416831141 706521514 682209084 889974394 194156900 805534712 595973046 681770973 329237795 781807942 544770314 988359355 430283449 988484892 959772030 992585676 86622865 254630768 774874748 886742011 597373344 953788164 238044110 834406954 620362756 824289179 112131340 997109794 909082635 920425167 790692576 926815810 142265125 420204968 81527282 871489848 24834844 301295438 671186817 735661363 141195978 985333371 622136276 918509857 230689601 511942118 721188907 908650191 777768142 979647526 53195574 298633153 128095056 849887665 501862374 818704824 570355757 642548357 159032226 931872057 977375124 988959611 227255039 377810182 671837811 901804214 344637893 352727557 517693635 801074686 397412387 397890529 544514787 551146188 697756874 754488244 519843856 698847444 797181735 900386212 724096645 826201913 424125462 916862289 567986969 754861712 340674505 663693179 79273593 95750843 176320226 680447284 303668162 472986448 316848869 456529719 807982912 937768195 736743521 834141621 139165087 270361496 503114155 524720190 53707412 477185949 493331803 974882717 498983866 692965806 143425056 591000806 739312885 878587350 303590998 905592849 314124058 364093746 983512534 997758469 500332091 543363809 202562024 359935844 903930462 957485536 40281672 573409175 931497659 932601104 720853584 869564554 960932152 974028095 357414589 580888632 328729792 454396933 46436987 69705715 228262789 483504517 807380704 839160998 362929380 941974235 665220650 995460840 885427750 894680322 799193607 962864940 535648895 610589496 47586436 425874168 34497422 178199107 356423289 754818142 278495430 386589604 203929117 731662208 989907572 996892333 935557143 971342489 794934800 942794460 739363839 964251543 825095720 920525355 793780475 833397150 356803281 457786000 530683482 749181605 903394493 990919675 251038239 685381764 486988825 518415240 458759523 775775081 138169674 890069551 324039708 845432333 777451622 956438015 990385767 996576511 846262603 976982455 80980087 672870115 641124797 774069320 674435648 745592457 39343373 91069581 259335647 798738682 165791262 949514330 264134403 786334428 876138961 918589452 610262232 956569585 833555696 990162601 89238028 300641162 415782032 594123574 70568374 679965014 146657274 334188329 687268285 733158787 761201757 778554259 943513084 998825884 419645730 851767007 700789731 981416847 237752066 652927834 695063245 924662389 811128384 923793985 111664764 920360957 945175380 969788882 209123509 534355011 257770430 304948173 97843837 639672664 980067946 983172864 773905714 911296199 315726144 793228501 242070202 409171582 843438455 994627878 541057310 638058233 13205904 537271617 786137804 972986098 195567504 324911568 293143379 756634586 257682314 952832062 94547170 439460254 340942910 722820921 34387139 142897177 841229083 970775575 320002203 974073585 384443264 999042961 59673250 611905753 608887538 970504743 238282304 323052449 125104431 625325164 35459010 143948155 51710284 609585938 205039303 774541604 469478771 974703908 947515477 980269944 253716014 822888809 801090970 834470593 61847567 513377327 958046727 990358101 341635355 933106375 350172744 802897216 629773479 685611577 593857626 659982828 911949026 954280247 575114655 775726361 177968003 861780779 250089 98908732 78145326 513044835 762183651 950013965 432237007 432598333 13620114 608630623 500511184 571338526 430001674 777708559 326922118 826233236 43963054 921672043 909960673 939027851 227538772 750148627 345894553 698022656 380198408 775967652 359475699 569324331 377492469 462511200 710849691 849999695 92527493 255985216 63223043 993931888 707049792 992404527 356338417 375207223 232220977 375458358 290287402 542547244 565500363 665477292 132760077 844805977 727203323 882454403 256114466 970120159 874639999 945424964 683267418 946937403 524578650 654239520 912906192 923023893 159517585 574447939 510321321 754466274 31253045 969078574 946249895 992756738 578441956 969306870 307046080 837026859 35319210 303580958 663607020 797802310 580329872 906870452 652802701 970258368 59315332 103083925 324467343 602274161 540705846 598619290 500045671 765337308 482527909 640002661 624924473 699072702 207826368 241472499 401104160 913725658 315778813 454427918 367804143 793028206 400505572 616774655 752484109 912716419 452905390 503905377 455718192 820104123 9813518 172461204 72434668 943594406 977393637 978362795 493429725 926309845 977728790 990282206 91169906 623737064 899849001 913204235 453986184 512759041 866502823 937405620 343333586 633668804 486229831 924455649 628690531 867299287 260494682 841476157 517303705 712322295 486104064 622297463 825785863 942154213 278089183 947321800 506312811 996044722 347348039 443264258 374183528 780062834 289062088 919222361 22993606 411647139 55401890 840709940 691171818 693180463 854813223 862663554 716509974 772259784 529157198 652437231 256078015 298408347 442243867 872081787 992773105 998309838 475072432 942742892 162174450 587070059 217465127 362895091 920269472 975557556 856542037 922402973 49683655 381569894 637054127 919734034 285946889 379909137 701854723 962838163 136175801 565556544 494551141 728417797 63853641 719663153 346218373 687368483 739576520 926530479 678832066 970039560 390193718 919900513 769833224 913845331 689767004 900298215 53157597 967450327 178217634 245795935 116593271 769004624 978157606 997375890 577919315 937896606 216829245 486842855 113156549 152710334 805171052 862593119 708072297 733631218 861817509 963728923 863257534 930629004 707586831 721283383 792119844 931314809 103251526 108615452 169559540 357053038 945380473 976189825 702699579 989183461 286984795 697452473 123063621 456876846 279155136 862774621 667468534 692235464 385263634 846897697 116084438 377541684 392368456 471083798 829568268 924704128 701154551 998480237 983380741 999748050 837218007 917783365 138996332 349281077 662328646 666864216 496078129 646711150 744432857 763235065 367819376 506595326 639913435 812156843 124207558 230591256 666624935 792111895 518052572 601153911 641975576 874293378 943792530 983500286 220918641 945403868 27439197 611463292 912132039 931918626 6725506 202983305 857070360 889100699 739420374 977678642 209775274 751605222 806189183 866463290 508905394 779938611 461975796 497895421 191969175 448534018 266699334 683336769 114342448 211007040 642093693 947907244 517773647 551718541 130114336 662973189 132332244 933922878 788431418 923224547 741274073 999131095 293455941 379532127 512016671 853307806 854436143 888773437 523404967 548296330 153273679 213201727 230099229 716212028 795862827 914926911 302777271 738833630 188600944 211655340 257546147 982972750 558801988 851365956 746223274 965926908 426662186 565504684 15921883 179883087 442069314 736561505 29327407 386030905 828999550 985269940 565166863 946643823 683474718 965230066 574179216 873370085 624514737 719702702 21269920 499219769 141972171 184692919 223996754 866574308 124148253 425546658 430200064 996599493 530114170 911252231 290582636 410580104 721585801 943515674 692092703 740313977 571807995 869242828 310674647 889361048 534181759 570875329 971386836 973428434 521824916 631020842 117933569 702294809 458569220 766998028 269435519 805089403 928520684 935913289 363296229 929901674 210585751 852993358 724126004 767806921 295486521 305274329 836226409 891456671 29025110 881619434 352869097 766607193 981081601 987753133 967918317 990744600 185131483 327121034 267990234 904536615 513756267 647855531 698805347 903153366 145375254 459132890 539620156 875957360 855998555 968704935 899267922 939357426 339697823 469569763 56827365 996723624 519490316 784928963 477674069 667928219 215688747 683949009 935501372 951538000 818761044 890394142 158908119 217685516 529302730 565957489 195775116 529236242 778184392 858925752 269631168 372659183 778816491 959350247 573401774 664887576 635046023 861865538 606975302 784774410 437959004 488008649 202681164 521977821 935928894 980463337 643445517 671254917 883137688 989597335 141264609 766225484 189132989 775354910 814223904 943183265 636110510 830516684 929496914 934395987 533285466 615390625 860526874 982613113 79125653 272144266 471166348 572418225 953169450 995652008 372754274 811949093 675183270 782377167 55622189 116258035 27245201 739250654 811957850 893510650 875931598 936097030 132273929 760197999 525384303 639747061 187898816 192483503 320773887 812486859 483940856 918662384 616389703 793802598 494775064 893159998 36245189 319399620 450603173 747986874 227819895 930053834 246869175 647188381 244641876 404583363 406555042 897325783 5748899 870781568 349175905 994142018 766297039 938741737 24547989 964292016 209184139 475942491 380388958 727857751 308917091 458967450 576691752 890623484 559751303 958368966 72290739 276263245 39001297 846853955 725852048 994047444 362389903 437504548 273500612 574811780 345492113 704698064 14841102 102993161 873363247 937812129 650401098 983204511 360853579 702985556 680135785 985609421 887917222 898915009 800119624 854895969 555304873 701400101 301801361 699974368 537697694 819287539 681036464 702967079 948172303 974880958 146362636 425543752 633690614 829379733 800734235 803812470 225912838 242109571 755836295 843794937 644714986 667292997 966473577 980103495 471034280 931755779 171871017 349614592 630644503 832857638 399854630 569442752 134619813 876134194 496715679 757554459 334655706 438139782 32918834 835434311 335923003 622758631 861826889 955679927 249158106 600627780 554565981 692940226 533570061 607061039 21654101 282542146 269821368 408033660 776250158 948212831 856709874 988280291 145902833 446330448 907877578 909909430 936062052 987547664 171244287 913406759 520771788 728806701 630452057 847274099 916710022 926609758 499927479 726605158 256483474 414983010 543948627 866331189 844848542 868295228 87608763 259048885 596528166 810474878 600120210 941403802 886395310 913867911 748871682 921746516 138314872 625339214 764772969 936172123 530242213 760566266 307943602 991535345 389802819 447038157 487693204 853615299 172043101 688282779 157486085 545961621 787738465 904981766 42593247 255991916 262871363 738656802 653049871 805428257 30135286 215415750 828166671 939885085 100565006 568845468 820546362 867636327 839932876 951630960 412959776 589713898 653043730 990996990 459735750 935938547 10646142 267845562 487751902 973366404 410825196 882618189 866002575 936067039 326538795 451430190 354439447 675300819 549798335 871188266 293873335 351804444 896426430 914123363 757745723 998602479 624985445 720770335 717871262 840316220 191267339 443920493 53980873 925032601 698100166 972791384 498030679 646609754 654777028 826991123 235510606 882770131 101421041 372702398 789809757 825759505 826027668 915522396 33840158 754257408 439320863 688778205 424510472 935115869 575386772 931095499 851827519 906993670 410744170 615420138 915550083 960187541 847320853 868761882 878247400 974731325 887961190 990462356 702679704 847256611 568345660 838668888 479032354 823734908 740477308 992826675 777527876 982322069 493789720 540499334 399253986 720637599 506996787 966686777 362606136 764488645 304106526 707408712 284865203 990064352 229865630 816461598 392351262 670366630 394211966 983201750 251187026 797175439 467377610 603463994 383398363 607428034 219515199 782991933 506058445 722482357 736384617 740175616 35503508 945617478 395374670 946724068 281524326 290648154 588085184 999449928 195408927 666199931 493043233 816799447 71699713 655510636 994762120 996598807 234881537 826445895 183625095 747067697 536456982 879708180 782084654 831614981 762399643 973394925 289950388 954652691 902062302 932213340 279092566 627139020 134441699 282756404 755888293 931152817 157155535 279617967 630325345 752352401 259794221 328957661 76837159 258987618 871823220 888043065 486943179 775161259 212229845 704773820 379583194 672733992 182476109 738341610 481164671 880574183 567686412 695301540 928287714 972137476 591034579 651772871 906423101 994224095 388705237 811315239 473383702 762212080 216768295 966552903 580174789 610175747 393615013 481454872 90715958 813526903 605011600 778791124 755056105 907173464 617448664 761972633 807216950 855896750 199374005 670890528 633453562 655418285 649247985 718534690 340705155 670581424 103787314 265671708 14684369 73281888 276208097 829602172 522693024 895136174 593147985 951565148 843671230 958632774 462925111 936069687 876715921 919402482 266488409 654604916 103949246 910515780 931853335 983924247 454572531 467381170 114067882 891392920 625283176 639983085 896138424 956850670 398067534 988314604 422732022 854432582 547698662 958947361 754473399 936115472 483898155 484022309 856112402 918134718 786711738 923495119 961039990 966639863 384001899 589708573 682464157 826107969 777441170 782563916 334332847 353570118 761153959 790776354 591882259 896776136 751635384 815304745 279998078 864129127 956923773 957881747 458230796 898909400 792747990 897036050 662345188 742358392 208804615 647275182 408090158 735774998 792058091 924122843 578975357 695077935 561134740 811929080 326973928 567748654 285897632 299996873 52947199 276660952 985486744 994062768 414640460 975259393 844255953 999120527 857420503 920804673 801012586 803942450 725369829 903572775 509888749 983920284 470244834 701462543 132845942 890640387 635255770 792447499 363576841 589148906 632848330 650551963 895036720 995213452 455298220 610228578 214460873 253337963 21089766 743364937 751259751 852124130 155678575 911411715 480528455 707098434 989230336 990984673 720252829 849719173 428372484 644103909 702172536 921201319 674181521 701344504 413660853 516512224 252986788 300303873 288564699 347403419 123563928 605535342 939006312 996724824 68115177 607202355 142314824 498053515 934350747 991491136 913590449 977590763 568133853 849524016 262386192 369869878 787989816 986990061 446701220 742013674 427117948 467678369 268387333 424136001 18877766 933934102 737796418 849425688 652910060 830759040 921884112 960741129 192227532 487962044 317201715 900585086 170884548 973341392 790368875 948317158 314632659 488304508 136736050 270364481 523117689 580992339 893974375 926001679 734437268 766970662 798811006 894978021 144993208 789160279 528071995 811313257 416102461 605175311 514166942 523222113 599882800 739953611 176579724 382966666 14612854 163730886 304591719 556606576 240629253 514930867 938086313 942590526 42952219 214020899 284531628 820873937 61440040 402091964 249503008 594080885 143968984 725528738 673912327 960546543 652116775 730605196 471557299 528598396 401301309 743679579 765724167 798596323 872864190 901045082 68368331 469752482 605004658 709589536 155668591 760469879 360537525 515120394 112588246 158589053 603989644 850984495 349266951 563775456 890838385 892567165 16449264 636743643 315900560 655390431 724736640 862770274 884660996 960574776 978309334 988644110 52950810 229850752 753545917 911566631 757543818 880189773 293457218 836526005 430240436 979691766 408539306 600440876 329968616 580318394 658184704 977735047 787246068 878991940 589089885 997325211 410068194 792178888 451315086 793526089 598664388 974074250 410467267 824794667 242082952 561382811 558979387 699011059 121194925 165526757 136183812 949288325 698281248 941667576 555020914 745674145 152653729 410069624 554725294 713132033 544369274 727201411 670970171 928126111 959618072 977058528 754377926 943245140 833668072 994823341 520330605 827570111 996255358 999854116 299802177 640453009 154803450 186356091 607460058 647267941 505261065 739420863 793155312 833157105 659803373 679554686 621716975 879015880 154194873 871414946 920590167 976534187 444760304 984394318 909022208 931104451 271443817 820457657 862912332 948856193 863849819 967861939 771793393 867912789 204652166 335724922 156725976 993985045 890047870 903970959 718485067 977900603 557444639 559735074 274365228 932934072 737828238 820355700 666491465 948367909 973962416 983190659 157856001 334076734 396599159 692170165 409841658 842113203 695492301 856513389 114115513 598001357 16135236 408337128 43106889 633325895 90776303 185005831 82026230 113157864 771174839 965063889 150701540 587045553 344099750 523084648 691907577 838166527 37411963 192775703 159218854 564751697 967780734 985498398 2503686 967162316 863065222 995385946 673246939 769266259 415183770 930673638 698425732 951057838 552365964 596544178 426985547 611556691 405742838 479894466 663958843 703569200 450126591 817183033 66222463 597881632 909138414 917858015 104462615 640380881 895174738 921385066 827694909 835188055 933280125 971733102 76919928 653383192 144174208 194981327 664285974 868930177 52458537 315858422 763881483 943325365 76545597 915584264 555125914 727483459 496146008 815445069 208924715 871510851 463969698 827371077 641769170 884218536 32056404 481554072 356376891 633083057 290467354 609528068 721573978 755160253 911713834 937575209 175194373 563381074 765102470 864090973 79042483 388720407 94004869 354215409 446568541 602109613 997534592 998197271 527497740 657277159 445530659 684655035 130408544 803814576 392554543 807164059 594358960 962955098 208192698 897092711 758432110 960785536 469685373 850154561 9860723 54672483 683315250 815120274 989971518 993847064 391554866 757889157 83713727 487901568 148919675 742615317 591872732 608594370 984590767 992693519 429262949 797963732 566212542 826567489 156756452 801781245 781805928 808417977 711853789 807058801 986598112 995147671 789724810 956023488 218582625 511205409 87295039 548670801 666218211 711737715 562943399 773104946 691258355 692051590 483799006 875026935 125090964 724640483 592416092 897568831 414412848 707480528 179302091 296356093 563691062 917575928 208691591 965426966 862133392 992971862 858817834 891384084 564693629 619468724 390142771 734977678 418945403 555783157 863853127 979536782 185196611 652135519 135843923 439610045 962397946 972057243 149099820 200125058 5999138 50814647 186041914 723189712 731738648 827184494 574357622 828480138 116689810 590639818 869672856 943423299 655158068 861759755 588649942 620891434 147157054 269540868 836495489 953456345 585167164 593825430 304561672 663544329 828938791 914059832 736880380 911023413 777327497 925270423 677263642 800019310 579528854 779138041 731162986 767611342 382288417 663525676 690285515 857743139 552871421 967787825 886253317 901291426 162830726 426097705 896736538 984698298 727891417 748469496 872982032 982226071 512899707 932377796 591777950 737711831 591020093 627678287 435455645 451612838 491540900 505890771 323407748 805729214 88554168 547760666 565458176 610577090 247313517 552910409 484720128 772750025 546715524 588226777 821772596 946288034 89977207 512959687 337349565 851520708 196525287 810119396 201760584 823013079 155587047 550847542 909297973 938857320 446836934 989698631 951590089 988921288 984329239 994261304 709992289 975542525 344848335 785267846 797257729 986844596 20417241 763779283 676138450 810563276 415507252 774814937 372032265 653889677 113636392 685497624 653467359 753996896 429943632 561978940 705848326 951718089 417913793 831833197 474562075 679312033 636414851 694506051 290862947 775023652 728096409 968494873 252944189 811089875 881276061 883168685 531650099 990935577 220615489 761371588 484255092 541100096 803390385 866607630 559712744 764564530 116841734 356371343 533757516 703435895 552456948 890543811 955121104 997459774 957964155 982705424 585720686 859174219 899298866 943386099 224970388 721433485 97704376 102448828 513332739 793793287 347367099 878138225 111896449 796727377 26015899 552766445 130175853 827654391 372152423 884241906 144073354 186501238 690619100 838194132 492092346 881812942 457634602 911993021 396866311 402263160 962063622 966626354 153561511 925331392 900394592 997449040 809466997 888214926 884487769 920797074 613959550 640986538 827081040 867629381 899849755 991953089 959048981 978587056 746674694 971171412 140610574 573504857 172658495 414665133 489126013 692463987 802076506 822008284 914406660 964027146 765817352 767030369 85513620 412504498 159872618 909771297 500355413 510025317 83913162 842671029 945529885 972350400 257825342 525622131 21651865 408196598 788262568 852978389 854601716 925833282 162171130 760825036 204121995 849891435 448043160 815512313 857500979 926742421 821339612 839289016 961133272 968712733 314182067 361210380 931132728 975189648 100156474 911531846 977496477 994446596 496896687 570843536 680710912 943880072 191841112 407678963 560540441 579177576 538286504 626965840 10111178 732960005 486352813 941559906 18345085 463159714 403411002 574541087 631302169 796795328 116339468 673989408 99967050 162545247 158814182 554627144 592703187 785500110 909838218 955179664 981793981 987058290 921310144 948832546 151312539 369228084 164167533 819823285 581459009 830889772 655803800 734291597 545431270 945022246 972738213 991122428 260537800 867060558 356104606 477151074 247948997 621909644 782762928 887867947 77416893 371919641 899477459 977776569 546381361 909092281 770411060 772181665 570700318 895891988 965911835 986379359 765268674 790661139 16879867 659137387 969893420 977963310 844881849 883192657 342289038 757512579 998691322 999322936 158659798 477308305 613321559 713008856 40791763 171767217 670098983 671043286 20520844 581000468 777365920 908670565 458060666 772498302 319535633 949405611 551571924 743451592 969569686 976793467 66853519 185488400 531009265 619488484 500799917 730060428 146099560 354246036 331428690 788468355 163522332 230068583 950931564 998031285 988182082 993786308 769399874 784096052 6719282 86721070 35227411 906101018 89081371 183322291 166598733 249492981 908217999 958177326 734150007 910726980 200620237 391036296 401318069 458993941 496964132 770625372 828154261 905271294 877058263 903878547 95271290 848531504 31536654 384414684 57317456 328336610 469837201 564462569 592174186 712760217 874183831 978281186 32441084 663790803 308397972 523554963 860455106 974770261 163836879 967832759 924547073 966198558 180417736 714918314 141962016 518248816 747303715 996423175 548140158 717657430 139863642 309543951 328447019 436170452 170449839 929366825 945370091 998193537 40124903 164300921 934853235 961047901 368364989 682891102 290435315 861046018 98124023 984924870 629531419 876251060 114102507 513949458 143717007 179613410 167045378 250132975 870568601 972885745 571989647 986988322 931698961 969076555 100238547 947201638 727388401 739425871 943881524 960595448 798210033 956032629 979103343 993936540 510065431 510663002 689739858 842622841 945218356 974750398 652101883 753775330 856607969 952862617 400246890 541664602 624928382 968201341 18749974 554233145 857417509 967575658 128185855 605127607 800415414 915421899 187261986 206458501 707168240 711241614 240098895 876936133 903696636 917190030 437322745 832561910 678631997 865667406 599231857 652959407 581146296 854667113 32941960 44257870 547423395 636911267 627455605 707413305 845775623 935021297 494414262 744614115 991939268 998129409 447151994 553362806 472806902 504502481 849908800 897635138 329431363 695759209 162216304 378918425 606585800 910664397 482301919 869894890 595560416 818275521 208574078 233952307 90643919 770461898 694473966 743044747 442466928 888245582 648306319 919933659 703179203 930986895 770773240 998695815 698918678 962672863 226162904 911998657 789682208 820554356 268429512 894188215 623612193 730002573 203844310 204041238 651509622 803954919 800247444 874778374 775363290 799559981 371550238 624285774 412686565 791309764 50806403 146639719 581707891 734043825 262323902 540401781 295601328 672910177 569994327 861715014 905158008 989324365 182748135 326786704 89676694 481189211 437157481 601227071 453031803 599640970 668254401 863215863 905112643 907170698 11356978 76741176 204898850 631944949 566198297 795817689 360700681 551381328 254881841 435980918 494228675 845909665 366542030 615238406 36834967 396724028 430406754 480057242 651559352 694072768 187677406 900288263 232039265 633411454 476289853 987935513 391242867 527440349 408696732 411093798 93952558 998808108 223316975 567762866 970911429 994859058 230258734 454021571 7516979 449934633 281274364 382249441 744242282 880361038 753945221 999398318 649761892 719128119 493106889 632564421 979245147 988647498 334732232 452476700 674876479 750087012 48340118 914417744 299745825 454865892 213712897 321130502 439511953 560700500 154481851 866335109 804533106 948741275 686452161 898741133 548427611 981458199 542499640 596202773 125112140 378960662 859060474 955337505 216817518 664100664 729306260 866260952 369852846 761821006 92722201 871064287 729981399 793113240 467162386 542567497 330846272 971936057 460825483 487168589 388969605 553430597 49506249 176381290 281853983 665421723 265722599 363661862 804824855 914061854 127298938 572601441 308938262 390021482 281361439 681387659 858100704 925557552 186440260 862719684 35179230 684729855 304758888 833151118 583258403 986846272 160225748 774640549 59524085 735976592 23783820 99795318 424231662 458034527 789409186 876619268 121725144 689628827 2758065 742099955 914124520 944907131 450597626 941503907 403651889 886166930 361466961 900630674 903827804 941502417 225074950 521112870 781377128 806916533 430636006 886332682 923706518 933974509 204061199 290259125 156100952 585540723 176942536 907688773 484499819 639415538 510823273 660773086 353217585 880927666 126155061 897351644 214372991 311041406 643336857 987063978 296387979 548643033 640945934 700041443 786042181 804866921 563633152 873702959 511581454 742442774 616932318 967526554 19425899 328251611 507701360 900263707 715202092 861103920 790041223 966579886 744677518 927320281 903082859 908701832 715622246 750997406 282849738 416816787 392818307 556444262 455029878 512164302 468102390 959596605 179288420 405142938 609932908 771194316 27762743 264031002 840606359 945561161 800563066 986826641 238278899 860294087 326323860 636483693 429455971 619682305 350002238 376889242 981517541 993358207 386354855 628883041 190679535 678145712 415380609 950920813 606542138 711831254 679905182 717583055 796564657 966512163 634272456 709901556 151643802 154423174 23318442 734185107 257881221 939921920 673539559 895782121 629409007 871138640 5337483 479740214 642810585 883955177 637294841 918448592 419102277 901730684 169216134 192131147 942915661 965802585 965269695 981606474 972436159 999521060 426691406 729374291 595515465 821463699 213488804 676728377 504017105 955992906 162929098 531371120 307872946 410311969 246759264 686364624 29785371 531973225 673420130 723366519 130009876 313365702 676282887 818457012 280946953 488546567 754395156 781479229 227164603 512320821 31945758 643736617 133239427 203457593 691126453 886301403 282488820 444596653 810934688 938464907 259322835 634840847 946108633 989619983 124260302 364154789 333657376 887629286 108435093 446462719 992988266 993467702 647886667 894724972 650469032 984230855 462627484 566360284 941327355 977558750 549953471 636372354 670110392 753118606 465201994 523667337 215092064 966865197 407401868 474111861 655063542 657741015 988743444 988967642 486419235 920871570 168524873 353903651 380092118 445794249 195432505 339575394 630829764 680763236 134717274 998289230 556821268 720496976 863896163 938106168 771438983 887934388 23427487 44780108 754819328 837673298 918297368 967038339 18643886 751424570 316164618 331043498 856476224 892847193 861137549 958292761 480154377 644367499 270896427 778295476 275171274 285425683 21565169 306145131 384775344 644015500 529798789 667307252 894909199 937160735 511538120 532883858 564460239 762353305 664140718 779529385 950547385 975133605 408760826 740038177 434618857 829521494 152080446 354273352 934040254 942037975 627173302 978782855 533596579 743647037 429185918 759050149 535665273 686936147 407228402 656440250 785070638 848884367 777693597 881022248 630394584 960509705 541702095 968774993 737293063 743115155 263295028 554599151 323263636 577965525 855914735 866624909 9316850 844795842 496411683 682757748 41398246 648686023 329258077 368910017 500825493 921926308 341552932 786942639 802922662 892759341 87022984 871479874 78371249 199542224 563410302 944617694 283935831 729753024 117146072 586062501 121999770 405825705 296898460 473449405 208366394 738614798 132361467 494303607 137249122 959180564 401959744 834703386 374123468 805661933 552994689 800114754 154791003 626124934 656125058 819365198 951220993 967272515 989926687 998936431 230323808 614110208 397620360 936083538 665734466 985799609 409370524 717780098 952835049 956166862 267759385 652938215 345439099 915034568 405020778 963901355 48354166 793263732 864445546 971705776 33898143 408833630 943814922 952134701 208979198 611815683 511122146 891762911 476498903 867230900 116306728 611465653 878673391 936793130 814126012 952920254 705293189 891235229 673216515 709381672 605557891 833884073 397934343 653496738 26656325 496346837 975951385 978627892 156349587 317176255 850887487 933658760 897588889 907439932 841568228 918622257 720860398 740061193 204184068 272792934 533084951 929435187 704760219 919644042 316672287 503040237 596284750 699095801 396643279 901757240 32186943 968182066 140306455 918036055 635306785 982781456 941745944 990885159 575677682 640319575 831513776 881533783 498565100 977326997 693012233 940344221 620893603 938099179 625106566 997030798 641000965 843632747 445797034 561083734 871740287 933286468 638776967 718633534 26130333 519192468 647135066 699662061 732890184 776086125 309160333 830793785 54201053 352371751 252698726 649215188 802194554 843311080 500149763 660229626 982474081 983047803 455282003 875644609 377446357 605959049 5987364 230368825 533215968 699552967 632726328 642386554 32707348 973388326 633334038 880615259 216626941 518424690 252475077 338790836 887705713 899478300 104128569 995487294 387878224 956937506 450398883 646248881 530003847 952774500 179468075 912639414 158004980 491603459 171523760 578236505 578082756 749816538 119091223 228118636 636406051 713631916 806681024 919552993 704725033 863627726 357305037 695248074 497813792 928561503 985090202 996028593 736584912 947112200 157941353 561755201 729514289 909801989 431223147 529566588 861701334 871561847 777984128 978501523 785831003 799080627 464673234 945862498 532199842 836565774 839523234 889523577 191047775 459066835 983075009 999830964 285491233 881683078 326807191 782041137 85958427 966161241 209144737 561805307 299080844 700042168 765458593 837055264 366541509 670828092 551716890 580988232 320552793 958400086 393468339 901395218 435418472 724297861 208912125 899599289 426654220 593970994 204497408 267163716 387830039 828876817 502357149 674532902 977530250 985484784 57296196 335724439 103942460 249726280 801680294 970169668 506576093 749292022 953995029 975862760 889973717 995568252 913031450 938181663 853425015 942234045 135967823 187826529 107028103 904817595 880559075 937021629 914589641 932617848 329085682 750248577 245507900 728747802 461669135 481428976 501212050 802901832 782352882 882458831 696855693 835150249 833732275 952465018 588864809 954569789 744426682 770589729 822055564 834429926 154673241 483163914 826558961 959538502 643305676 969896939 63689278 787418375 583617313 921950703 217693435 541944066 896312661 929772269 999716302 999791383 551142331 897865344 564424690 716949039 481048174 510072058 490474550 823131485 644189318 647872255 690012117 792910454 41128047 603613738 255244584 419715997 53278975 797252205 26575620 72999909 403871260 901243457 609181170 622792654 769629192 988708542 130344687 292124089 714108488 900553916 510015032 846897102 398722711 738619122 848222399 990737831 300085285 750062762 740960051 890555034 76808023 863760356 546444558 805975845 720384062 915090244 299069009 576494425 85293196 183499728 230778637 521563236 631556575 634588653 807347011 909675892 17507053 270644374 632237399 662274814 28205065 996283815 218651489 559000809 345527226 612791422 61221032 399678879 957486826 996282855 412928822 489912308 94044048 752506722 262098084 527462750 125963037 765736238 286476869 714937942 831603725 874181930 872215660 919208630 761257049 958574939 833073019 887611083 946379456 947897083 505147245 708402023 281199829 774783320 535454740 866314672 212404133 981626248 300317276 911909698 465113893 919224100 229367189 263009518 127931816 958680870 168202426 728340081 51582381 747944049 118477166 700842261 752191285 844662416 639787371 674215337 569371998 866636449 7146985 451844756 13884405 243875710 954714531 961328069 274227830 887685267 898959467 946496495 626614822 969137293 968936588 987136744 17019056 519638712 601531080 800990827 943756751 965297859 658129860 766779682 815904956 945549562 538919065 800959672 674384879 799262185 94130959 234028788 78821510 943256969 229242806 334449688 947529185 989341866 703121751 970367094 945097193 985033688 954758491 992963561 462125054 536372425 794273468 823309085 331963019 916642299 466141303 772290320 470806353 856068924 36647626 440250745 532733438 944353991 675342274 875265067 812907002 980306501 125774139 966300806 305651558 505042059 543304734 557651168 535712356 799110336 105883945 208229299 984618075 985366518 58985949 610725763 189296244 299803321 697466586 998929646 219292694 767186781 946630746 969148769 257242452 574519246 291653717 628051768 359489266 731086670 370431386 705860663 267610709 526785491 407707891 852697358 369688173 375830019 516107497 953646631 848602592 863968875 441913844 631380984 300599100 765919136 114667118 546944450 682606266 737029478 808285607 849047453 849098878 984034239 47965527 855864355 67832593 978654003 686121327 713196331 919469763 953824386 752413273 781568197 557542637 569203452 493613659 679799661 588855840 689180614 94851316 613421060 440298845 993407176 469675655 742650803 961299201 988369321 746372203 923018685 867506835 930615491 451981411 738497040 863482643 976419201 357400768 944632625 726064699 848929841 583901671 612659258 513645060 669312211 376006687 753307695 894763082 901504400 626865871 795087018 255955745 970921414 794910276 979835389 653776984 754296900 421914247 453760484 837524723 862946076 461278940 707009903 694050835 945155333 737405252 995077726 516994044 744311385 157355515 895458411 883306806 923636324 137990447 786711455 778745884 934043665 572320733 997179726 581784758 708399841 729702567 748738873 301614914 855030989 751329548 966172290 785800749 912059083 722823178 933179171 454092299 654354585 840500104 895711084 758740820 809118794 783434487 887560976 674137832 892997557 995959637 999279494 423999093 461823249 981384284 996315314 143316606 315193591 863374110 996620875 801204060 942191373 882801534 974853545 586604501 668407276 513601001 701002192 695299642 756339385 675856847 718391946 292622667 935987237 154142227 644151099 909689009 922092011 10356433 920532888 463355585 601359219 708054572 813774266 485194754 512443152 269506023 650068383 783605494 999452109 930850744 937572431 269938576 991503448 323815083 584159409 213097012 452219626 567675113 777500555 162514109 678499066 192160974 661329058 139235051 553274311 554455395 845732966 722534197 919292004 117179696 406044479 291699703 812379573 244398365 906385116 228625569 851418654 340997582 841589131 362797808 672136829 821019534 885190000 955185260 984827948 780699366 992505535 409792246 439762510 902165311 913611957 58038196 700029548 138564297 419419545 122543297 953661236 86223424 532344723 504456942 702247454 328416329 732238359 305537446 721613190 732167263 740005653 530364136 755752571 194410408 965462885 279997794 426627024 604033997 923532553 909910840 910660606 508259096 638849355 474476504 913795561 558537582 999439090 7346817 910665236 492650393 817210650 142344224 734383171 411649331 968936143 140958949 150550737 793508591 886665146 440865502 571019672 47574875 543293867 734246501 953854708 321713673 704065416 472870144 687710287 283563469 664662476 126284348 524520809 253343733 459439979 382287059 977610957 779196376 957173727 667245683 744667592 949436762 951572364 600614087 999760236 745189051 900677407 818231570 999147371 16365597 234586772 937491824 946875632 249474705 867991522 40289448 786528177 456728712 551538075 940574195 956237279 938168123 967420695 418537843 434132272 503682532 937507954 416441098 699077934 497721614 951854149 29999781 607594590 343067644 776835563 673620886 934537707 625068741 700392808 955621071 993841581 572788809 730273103 897102004 930673503 499701112 905746455 921889707 960704478 421227725 786913686 243271861 614379925 804421724 994639865 709425656 723516757 484067941 712371075 930777869 933439583 538934878 638502383 195844368 727331494 978591631 993048114 548551169 899919849 708226905 914282178 359287547 467409675 5857967 161469575 365222137 883488423 813833771 988053816 5518614 814669673 699803399 923165185 748351377 839013190 838359376 977389843 575516161 609393432 490646988 965096602 170076036 367806432 304661232 982632108 238796207 817263307 936759944 988191016 962209569 970915236 612261705 710003836 516068957 664050518 536557202 809079649 178041505 363524574 925844351 965948986 581220436 585632662 231480707 695688015 871055847 995655437 181230349 546058640 342511156 397641265 132063601 493523127 784992332 862616619 532818976 851178990 680655386 725650792 346829434 819592264 713860841 885826834 490798663 952583893 153082695 240727809 11343774 289580048 107304401 242768847 814144795 901650823 301959643 803361298 195663102 521572777 884710822 965425553 32297821 807275011 695057608 962915094 31676485 687495529 824388981 836614272 354523798 431309018 890335638 931371492 718603109 907480665 908030490 966930825 723966260 928345780 408277976 655576980 540218424 555683629 370698580 910323478 512249083 883274140 554299977 793024114 59238957 596830959 269889700 604502357 981396873 985969626 142578616 804553168 822506482 870424584 585607710 966434777 270865971 716341916 279988734 484355642 666145447 990300270 718248346 946466015 922134381 922168326 283989148 879169229 440042914 798243740 169527981 572014001 431016976 949505749 151430745 772224577 475704786 989632308 501607013 526841078 250366579 953596311 584670618 772571219 684375110 924386803 340945022 510914039 897315554 959894928 71371137 314034139 964270946 997731893 201952459 403798962 655595597 966861529 607454331 852169276 661214373 893266806 26749340 605823322 327265423 645520366 369890699 702897938 84219160 861086244 361850199 391749716 741441443 864386590 39714005 248834926 275972401 633796449 34506560 752642627 763548438 915896810 214072860 666689910 278949551 899145754 852926155 911038181 6505093 230198039 280844120 720231136 554685668 780657562 599582314 992048409 434234562 644783584 676196186 761733756 67921927 313392685 264278815 594120174 831360098 895908092 453711918 800947910 275077492 819509832 136236826 777865864 589789350 630291128 811722046 827033225 24795559 819787376 286639628 341435199 60028686 399072877 190778453 416498114 711583274 822735166 803768162 913324616 371932552 830324782 335788951 865310482 735210457 771549359 119192062 183808882 296078419 473351026 277702772 465759089 92987764 907047676 67640174 690374972 126490770 621642278 581515746 952624336 893441016 951897265 56700677 661176841 298369189 448824950 919666367 960548993 805121569 835415045 403972723 698567686 180950826 630183371 489343047 507800924 867114425 892740679 313114465 774067151 478748339 584110747 141280276 620594780 853539640 988377952 744935867 862088251 60024167 903084427 343204599 540133651 539557174 926204560 348065229 450946858 108149893 604027501 907541694 974280427 925998430 928205538 639421752 839055912 449898211 796493073 547299078 639076503 429284277 908123188 455298380 614481834 168953186 343564106 787114604 906360329 910304840 917106250 982797458 990912880 220027231 833762601 200606069 997688838 704662729 716607652 252733897 675576441 302150180 875655287 766488 134395886 183669480 690886651 389919809 852337059 347243425 765610361 788304894 968282766 323364839 578847458 555164108 846765672 890115233 948036623 935113833 991790587 160285745 689960469 327323867 436427671 821526655 869236657 611210165 831873812 808575044 931831511 175036127 364827676 624870387 737840439 157956691 169756408 907329354 975026150 291099391 481282973 174607141 601536412 880670805 917701859 304974193 621617394 888537090 978607312 112115305 752120574 808156175 915692471 501732059 972518881 48877710 740861385 866333409 958721279 171142212 313477162 433735696 844394353 366921727 497570812 392784912 572774568 302648912 492411668 236443254 897588578 744791325 904248543 316372670 558163134 111833406 182325092 625599576 707862543 112710919 468729954 44526886 693036602 937058067 959518678 912199902 960160173 835360279 991636332 14903964 914793123 240236486 527685207 843852568 971808321 863176109 935605439 2887917 529267920 747016983 803934794 215292009 365290808 429880735 496502446 5720169 732109518 955465251 976530684 511555508 761091486 891009106 971394073 307347683 443771189 702020890 768179959 132300191 213515620 357011389 426040681 513141901 604115042 18769803 332987649 488720575 819789974 205118007 678981151 492346997 966070356 357505108 571036209 367007676 722306863 48697324 725824355 779257193 834156316 693109264 725616959 815045682 881489456 122010527 648993811 225029688 750421359 134570291 572861379 736893828 844867717 615279131 627987203 177558393 217946938 116181568 454734590 695429149 886725676 779095831 968587614 118844790 753282305 917736385 948371874 188375241 253062915 255524944 549285315 465984461 753366232 545250686 949117152 329397965 940302390 756545873 933683799 509629688 915143437 489362551 513780798 132903454 406874413 66003111 226466538 874525412 973377132 823763239 947336668 169478476 357491466 515699888 813785950 259633734 547061031 890612032 955036444 255103363 868648017 881707823 989618090 534120479 860960420 937127551 972460654 851911023 902737684 382887640 403695856 901346381 996016704 938429533 988350918 82389076 629577603 795356753 850793637 497235826 578338683 120222578 392628809 86605275 255589607 924511628 945635494 38615188 330657664 359988332 955970876 706798418 959709875 741359594 940662241 545154668 611629818 431908349 558609438 704063666 897458155 639960891 950342563 321529757 765279529 565901875 922779733 168714654 592613843 163311268 222234868 66191575 312325137 653320707 816990771 398133931 533999739 805147762 901402066 479892125 547182920 997819928 999256140 524855069 967744966 484889481 610018331 484929582 561828544 915052201 996890335 702741589 745675834 145317595 400270919 768831990 853030407 658740869 865463493 698776693 760792792 140050120 294967889 278260568 943589169 428632707 894437406 23996864 703685737 814665710 868360727 345436689 401561206 94842077 670125860 348209594 825566861 840112618 999372981 112762132 761020088 387590091 449395386 742414855 949559484 36586781 312914176 426153226 854462944 799670068 905421521 568550592 933628788 263793192 439212881 358644119 590495307 160173394 477925545 734976032 869676796 715525916 889116544 324254179 934129702 89784388 888107521 14704258 491942815 736203014 833930566 574789737 876842293 729375127 799747651 657467007 668807620 721929150 911730388 963308498 999747877 762288462 953301146 938385518 955033526 563378388 674467863 750773842 939185025 924524996 942146987 700738591 930885338 842792925 923401820 184334584 824887046 933832537 978554627 793637167 952817328 412770743 527174275 332361831 749870299 149448491 326740611 35106989 492182418 857311518 994218303 159567355 872074131 331107149 490017269 222627051 868635763 566704098 836077488 888176044 912313542 490850278 732012985 271086880 911022584 697132919 751571730 682244904 744183486 879287287 906157537 404008558 436773275 331158674 685483785 181123071 559512019 841264151 850074691 937611569 937941081 743419630 795176480 74103315 550871681 94200312 755091780 694796534 728815042 624148086 628730144 459123750 866904484 840340958 965541450 999614014 999618392 196028374 533927246 892631752 912090647 639547987 953866695 204728265 794058091 925244808 942276936 267107282 989749443 595919565 715445060 892241033 974664659 114119939 880234573 931466445 954897003 360736684 399553155 540144815 626401042 83885581 376999659 289780416 581919705 795258155 831803543 283680110 297106011 663293639 773236093 645274675 998184995 866184181 872434747 793451872 843760886 49557115 345753073 691402088 886437903 460827504 798369081 985185068 997946531 339684502 444541824 14592797 293780468 425657931 640741981 732729466 923229014 626813930 946284965 759304233 853485654 479494950 491741528 271586154 319724362 226882067 539417868 488870201 902273762 63638368 223814595 340966355 419838909 171029283 296125045 237755740 960567526 945431424 979424888 297057103 533398825 649418943 999145126 424048116 991156774 3743296 349913768 219326450 827952999 808572660 976093426 229566729 328737085 390264192 836952205 520291673 782666084 876511519 935405465 719583345 787560253 545316419 676851010 416583642 526826790 466913691 793713749 110383969 385970267 945925007 965809056 390435003 460739791 132635701 763728507 554141849 905506171 102032780 519354864 790319267 857116385 964592805 979113148 515251992 880713207 687613742 904186174 326189712 620256451 215442054 328880651 266251273 998078038 11068089 991014664 476546185 500322861 922720181 951434111 549841537 722354790 669138652 716135974 987506530 997220022 2577696 645355060 24252792 111395921 12394654 23320630 82962535 608182748 328587893 395663675 713342861 990950993 42980021 76730569 452682042 894960783 398273769 959649036 526657720 907467712 495846782 509850113 735482888 990803310 628642457 862813993 163696679 370975759 293225008 828073353 109715888 636863782 514096411 789263174 594015385 791643197 775169449 874115590 977301745 978480950 52626435 408021435 646392722 898529916 144631338 308197636 738507947 880781799 564501725 670877253 714621069 791448976 228418508 575723453 233061405 868544169 423444202 675095369 692493000 999862766 639695237 771936909 862855220 934078068 678651400 893933584 492949121 623143385 533501995 592796324 523574253 856578046 107068589 233025984 142638840 520941918 110985714 672415501 94869918 518532982 392780773 528152733 423231105 621104165 161914114 723980479 206242797 272216056 819193770 902444634 85511475 536203304 630118165 729934181 250404867 972065729 888033538 953561097 399631829 708390412 745710844 806018120 251665312 668827097 452510953 919122772 890285777 898657316 918416964 958094209 220682738 930352041 439500650 706792578 877644398 934855967 782459080 954675476 889569693 921722165 328745431 622502030 384344201 956151466 853934596 943070353 817369487 839310721 711325804 919252585 595482236 664562199 55156676 984215745 406910251 960198243 414027825 931375347 590615628 960796444 786844386 981754527 300614409 470608604 156458332 536580890 603930672 975946977 389260900 600394094 955002983 997080001 279738407 619289348 517565882 836927165 963899002 999540091 964418859 996696442 133177226 526974406 483572771 915949949 79084228 523540160 30047703 76680235 970338753 980513335 708046871 948204240 254310009 471232733 956502564 971501770 950890137 964040051 196208292 407832796 188099070 200994054 986911090 995586007 183995400 598299659 102049862 492815613 352176281 734336656 472195877 683432759 238935502 743695039 489887907 660959824 156896748 727631233 432234137 730505744 455737329 575720425 418489122 640648194 262533111 507149646 410869605 638100331 524591527 892858315 622456081 904473297 770441222 984803235 464001505 870658069 414664235 670483495 712518637 751999390 952246308 963339166 493498740 562640032 892110865 914479333 411728079 414927176 919603147 940520811 788708831 840451284 9460812 495902868 213016272 468129878 217339071 539418217 986540884 991478453 9126275 184340859 211816514 958919495 675103600 943566972 869917830 947042920 845228377 858870840 736843756 958773561 268261736 680686675 38809022 290585307 318308284 729116623 786148398 862298050 990598986 998623636 823719997 893553816 552600583 626640940 236605104 630817762 407735140 447489703 824334972 925644933 955686480 958046684 652391228 754773380 351053205 457524357 529019942 802260295 117708722 832308326 709104121 976514440 758875417 882543795 117900820 251167471 178194081 766893361 828134487 831062491 68460045 453465087 942274927 954674489 39301546 311594313 353037940 787893269 66640081 298699174 243857625 402358770 142380673 448891036 184969312 697845125 423043309 515446956 494644220 935651136 272434104 434787472 233910453 654584623 33333360 652007673 132094049 293437944 505208608 579980121 211158734 864923156 596098045 891964111 41173385 136603189 204490163 272062745 858709077 965909659 528265883 912156670 886248071 886641150 521088892 635122959 813844979 907479620 291912619 644572405 533146541 628375132 572269520 934376701 920089636 962107602 282733120 440828442 224950176 937390079 484424453 812072973 901417409 959430883 215250067 866442291 369429495 791349093 140475196 446323646 328903332 976970101 451096793 817207405 787208841 918886874 127280074 227173944 419555189 633277930 608313669 619199055 529865651 671154295 653241285 898419800 638271714 999852955 685168212 923360269 762822574 834258633 932112682 976464991 823398498 826082689 946380424 953669128 841720304 950846882 236830136 634433728 447268921 961038437 365721605 474122405 241298665 653404456 891440437 976172813 89048822 939641820 385159058 833743884 422415609 627772142 456897996 926037922 433489113 957960894 227821982 412717453 299671074 714814593 778427978 948324503 391794629 790240621 484793758 989058718 658260417 841833658 381500704 959043227 267873456 354265549 154467871 854605230 338662419 629977039 740870923 784532116 971800854 980384842 801077919 835418090 780273989 995188121 592914415 787718586 414594050 628294811 156765806 751761586 602164102 604611661 301787567 483811785 38024925 240538391 819815310 904064161 92882363 293141435 676993845 744115543 31803583 777279517 949761477 988722922 69910510 765715654 893752242 894682527 268589694 521046832 207563838 624051976 223762308 288668921 579959111 829942390 197546063 707572220 606573538 970685204 747807859 981945340 935032438 977312856 805791992 973373424 505551706 944439023 679325531 930623310 63098851 787835574 76536668 711931749 237340439 974038223 438794869 606466530 1635190 609967464 472959013 996690292 806541898 996002814 823522037 927979217 711592577 982935031 778213137 832979506 232872904 274027089 450546821 680641064 171683934 310635639 94085061 250851385 42333324 115669065 359311621 389787578 228631327 823292491 157021442 377724224 808198686 979654963 208180769 246130714 257193364 564584607 753675662 901239696 323862126 713110808 251678847 851240093 919355815 927652560 646556244 881581630 349869165 896197141 495168108 709387776 749723006 997039070 664466862 872149800 771753923 861399775 466649353 621753141 583596246 633508652 376545579 887741401 253912383 694781228 97249038 935071922 850081585 885237477 899996106 925023719 761469350 955003290 712643402 975636103 51798533 677466231 425641789 455667934 680224281 985599230 312412914 521249039 699416425 986258406 278739270 738200430 35874854 523474714 502131821 534562479 226904901 474723150 36999760 277534383 968072954 988139378 821458358 922791359 158734699 930314257 238611740 292650004 588716524 616545638 60220456 783229162 372519424 815285969 5488635 346415738 886722345 910416415 220728844 232125840 525806588 996021974 105757585 128950859 793764060 805468416 288266784 703833757 979470184 990243469 480582973 545140880 404476795 879080908 812885418 923623055 427216852 746227010 997882587 998058721 764920330 815083760 606481726 709205310 124267592 823758231 678860165 950155735 748143214 748695467 948255817 991142303 172602177 503678638 413917031 726016607 833911261 862283893 130887890 659632499 742896631 824271070 353079243 604770681 62102156 423325055 285142319 384381442 998724606 998850188 377574902 391462274 316585324 343012964 139904943 283765017 614854290 677532843 576015734 753789666 763465892 783429394 331061322 418116587 150855815 466511372 580755871 889648016 673963780 695432030 729721178 882991235 904361786 915746102 855815660 980910058 305052652 578688321 638678236 828184512 795377537 826323787 325249193 902221249 139325005 976132407 595966456 887780607 781882526 837661459 134404472 326105646 975468936 989490572 477062902 602362466 386471556 429630748 143018937 744372966 626618507 892972594 309097174 746431433 864275304 880849460 500105175 527945304 13123234 185184837 685722029 886070831 225369697 871320768 979903808 992732333 871737924 970728100 513882256 586206271 758119630 855168883 426860770 816709030 349600661 842475307 41490659 173523743 448739766 528825299 321872891 801770310 19473342 556877530 989577720 992925104 616148748 834003646 807220702 870588738 204284969 997125771 221344221 656290231 892605976 921995725 755068679 827478312 650530108 752734940 755919718 771443278 180501257 653695066 622281470 700431037 398179387 551875807 522896750 877404417 638922880 894731608 359276621 545454001 976010557 982655245 815240077 925040904 770519568 881944742 815289720 956897914 422472092 461700167 197245044 451941827 265251405 957142389 158465623 316384613 862440617 899696322 794997069 806581593 514556442 559079824 526728540 729023309 325319237 794995632 560168679 686696005 807646836 979341453 145509358 996160430 481602227 684431395 842554460 967028612 3004165 469836775 293471952 765253972 880757614 981148671 427104896 441726154 594003818 884865994 711867028 907224595 822128008 989631113 348177666 675152156 104507288 838304262 610511735 683709728 19169494 647415773 46446952 195188083 966635519 982165224 291324437 887684064 898275127 942746937 759336813 839735600 953502969 978144106 351504262 570299594 625520438 713500410 641909316 788998031 902414348 934375050 447651093 525855760 69936081 117769993 993686062 998787104 95738309 296260022 134074241 861769485 188261602 387172155 408405162 824133998 519573848 614521920 822155809 887738628 899657272 969791870 836527794 945087975 647067007 884621341 698962680 974187145 159082144 679186881 973511571 977376041 47101699 758103318 869811346 877895647 28710236 861912713 457664391 994898148 2696894 240789621 191315432 723083525 479737137 735642383 335335291 363309335 441618966 680539366 901538560 989099790 19971472 891630810 15591605 978976378 217634616 880613785 276225735 559230870 943425219 998557592 8801841 476045744 851284899 890981276 850550220 894137200 60627669 871261143 69271667 609029085 257813305 290936878 588766742 822088037 469709570 778545716 275880628 930377619 423004194 991131437 309175493 668988307 4680341 660303444 279599281 903073965 725707971 779486451 195131485 545126412 973960926 988597633 328282039 427280521 218450878 759436821 219654170 380389569 354545286 708231408 47982318 994613010 488020480 737404004 916741779 937398892 881992570 920689958 73089320 750663207 65234974 257548671 730100096 958304226 59890778 500504362 953078752 953116344 117495319 934901730 826526485 893944560 525970067 663215544 550968063 633289438 134360323 908387815 35690111 191853011 886334485 963072716 272458259 909306164 208464627 792224478 905151478 957787881 347826511 397293374 154794711 240080490 630669801 764565359 36510428 66178788 422574716 542846408 888656335 975465724 399469533 456057047 904484936 951356736 221158315 848484323 335358413 355058583 724981457 802662628 22524995 52031075 810276584 995502586 560591838 967049829 941450259 979250392 331440503 665822604 497283643 868943784 814944938 935759624 303232966 903281647 788771306 896843154 841275866 861410382 813581775 951806499 695756863 813517899 691600114 917601851 101607174 900029607 599541111 793687390 393060973 432208164 704148048 790427788 294299092 712762701 626546563 889142008 915510223 961486036 555045245 802856525 25267817 639863242 354916064 963748996 974269874 992551335 499967976 971417415 951297422 998700877 788149399 873917064 531480340 756589272 815862560 889272077 167974932 696310553 695074546 991458727 979297636 990825339 660314604 844253200 654530167 749353105 341921686 598408582 489466901 918208547 488356025 816183500 827867766 849256018 344737602 772713325 695728794 802326748 361870374 387251021 143815737 973471642 599217186 952523129 366435472 580863893 364906016 766860290 764073787 841265986 82154884 312010917 964464544 974907654 331743592 496579230 720444985 767273285 191603252 709802286 543704312 869485169 24643576 283098331 388857053 964578337 311557346 900581050 501042786 527337428 452139212 676858133 740713195 824032548 697214757 981663821 167459060 702760722 217709021 917128062 985556899 996110219 172437077 985330096 975100204 998754021 831084640 839819019 542285597 666737558 465848533 684997290 847328010 855078681 67263868 856940843 740845359 826630923 475655647 896819233 81219365 587056191 945292659 954169027 329823432 924916077 79588307 706342710 943117089 993295162 608539074 816239334 898907152 916966060 61514512 96700564 874534854 897693591 93893252 704396875 428909051 596327454 211398765 976378888 326499655 444051383 658655643 989715308 100880420 457252791 598443901 678478420 605748621 711283810 399149288 680131872 874726821 879067826 509940348 985306817 459882278 904519226 434354669 840193910 566027496 834995313 531091291 713083261 875558653 925422063 32587898 460757684 204625835 715914110 462331473 807134684 402387082 984377314 556349640 886205033 886110440 974430667 95368909 267347691 813760174 998735347 749442846 881668562 158241019 754314559 216394742 964147996 718994743 771913834 444822737 981194734 336301274 998349504 214136836 307657888 312985579 753064112 637115685 734391323 410061610 415998969 222664275 609595733 615054580 905003703 976513496 996035295 165444449 534768403 558661534 935242524 582387713 637827863 603356566 808645290 622730158 773762714 172991586 282533933 178229113 704089491 529053352 745508242 409931345 637981010 697657986 915223574 421904717 685115781 573429523 773041834 773834681 870810891 868236705 926455121 362079417 675235101 339259851 723088036 24848888 226801127 707364821 869675027 337881188 878471993 555106751 569125692 720464350 917061991 621159674 785470566 111947710 375293522 686909354 958089986 149790888 570708188 774833810 837669103 140601893 898270209 164625165 301915197 493554623 536804118 150236222 324524735 974470813 981581849 343891422 813402023 145834039 749127008 912485434 984079831 601397058 805227042 455486058 520923062 308621116 945060669 480866723 820106138 15695306 942808434 149789358 268909503 556590261 713742939 713835881 743296182 245793714 852449635 865297773 940225214 893539800 995511471 870753951 933010485 928272683 992449610 348515694 873030043 390250537 971028377 659546621 687324389 707547490 998082935 487448851 494539254 441250410 680572131 416019557 657864348 42107734 761954905 633051171 979101632 38946998 517540983 705276898 770597325 571472646 985372772 782552172 921116521 882218078 919877350 846784210 888181081 427853199 453999385 126239490 192611680 367680922 809417902 589723273 601967707 497659201 603433516 902063530 931986564 932201548 991783037 895020333 961426519 342651771 752076257 472713427 660082983 504381153 632219453 632857155 956125015 148286929 846454806 510732919 671666737 402230384 424604721 569006903 851309464 883848143 903527503 142758627 465100173 626505853 740213833 462925405 824107870 611124879 749791885 314976987 320667772 574704267 990713677 441557100 608622742 253167834 678731539 43377724 492312446 225836819 461437435 727155786 976271457 696890441 771677707 433645301 749109810 252558068 734116602 316321018 787763893 210896649 937198308 25417395 33741900 993534694 995528547 304591825 654821947 376074933 466634480 306936533 476216447 441315381 805772770 901554290 917494561 377763080 952122406 41114741 47463037 84657200 722526363 661913025 810397664 810488217 934430323 233758782 793986082 490980609 706768583 233635946 845641218 197075817 464162417 272600266 578695878 906569966 952396237 879332407 936036667 440491171 507097025 596106487 868501142 2018398 858284793 924511388 945078035 941128832 950681613 557059950 977986538 212323504 802973581 587374024 925108459 653134774 700650058 606318101 930892126 744039112 825152727 399846394 475793879 971903239 999907807 561789251 896502674 141216734 842760960 672313793 926390977 935419712 937068764 716508693 725484816 981737195 990305976 280168858 825290405 154745706 717750968 396388504 794005825 328955142 572575147 977352728 992506135 202167306 639077571 683740291 804617488 782862972 790794157 913012773 926290933 183439691 192529803 565661092 726833145 243035181 523951305 715076267 999278572 507143206 684958036 924098755 932615968 530932539 774028803 611532784 632291809 122259990 659120856 102291987 919460854 705769094 921566959 800678069 830407818 848565800 902929005 989601032 998518811 851263774 926758346 201394797 846919500 783444524 789765676 389552006 626827955 373703497 469228000 690949858 695625971 368197851 638837050 541276520 867157017 966285683 979617274 240312196 332236145 181838269 223062064 794881372 844310142 13286740 204066869 375569036 987050856 662748377 862692527 121732553 513644816 409302084 853943060 887143825 998246928 920455179 992171985 593375807 609223394 715706873 817724637 272970486 442691103 757961705 837664416 285106577 409850390 869652641 967467704 981934550 998753318 320685266 790195261 345908876 598325723 827566968 960299413 176193640 289874750 341039090 945327703 186706252 362331207 971085410 978098190 382862780 697484930 484184993 502072297 687510512 753870091 550396380 846899732 825334461 934240762 685433824 810137038 242675795 614635192 320939045 446981787 827504111 837669107 620242509 666896861 193754311 481959705 939304365 981984730 729804022 909549255 467292305 491003137 130278917 175188780 438222265 887568837 880304112 914341185 365374134 960512391 770954777 967340042 754245760 854009416 170166071 500788414 254484596 667737955 110775050 467547299 900566893 931491847 933527520 991728625 185385706 641773330 828151512 980385839 540361367 639487287 92569187 606102037 247832192 359053296 241218194 468396328 747756382 980469481 41028576 97050746 889836475 905166613 730575857 936233889 38278346 739858182 811498676 832790911 385397228 714044907 98969350 315182223 371625335 980340950 880980888 930884185 226024264 671809239 81119656 863629676 570200728 973552809 938499788 938737204 18949976 889362484 57368934 808556622 74917163 94879943 326628056 739811559 923416314 977252886 216307148 651682626 626533819 743876666 490898289 870863373 606619496 702162580 387997867 798683717 914526497 928119414 282943229 452668172 13852323 22350271 852663099 964644206 365001916 653044719 947184091 954574569 401740670 669258119 272705795 611374434 17375315 774745000 769686645 796216863 882167221 995258867 331443535 627199574 483882364 793644498 225170444 943395026 860424423 980821655 545520872 563673352 537072322 828912184 919162332 926931588 457072241 527556919 457467231 679172361 300381346 339263954 119569519 195906547 72535624 215981349 965351317 972057130 603216147 868159955 449744384 904832846 279394111 955392025 585758971 830227055 328237293 442427354 620424958 854713656 72706944 983644935 304120159 875695290 392019613 532430902 679085057 813007485 990055140 994249688 239339518 532644844 531344549 875961472 307324462 357327907 35771012 799287445 5418084 797882092 337315779 485247478 735246852 867739285 410764899 533908910 821396110 963590695 233517638 714983936 263679502 353235284 26187220 533206757 544081602 859495073 973792845 974564047 783973078 954186059 155291732 986180387 199456180 242326606 702300419 725969776 76705651 757477821 766296485 854524537 853688512 860375936 215559673 618968715 111883676 558697642 854618491 936266306 108779902 909397337 349127120 501958083 800642873 995567074 859362847 933482649 749948875 966640094 737083685 947005679 974823605 991144927 737045569 890222474 216859361 989685516 571915071 756464299 584236742 613287548 864839145 886907627 658072498 898171442 112332058 770996837 493934511 796894342 594522473 686932923 471823482 657955762 302692186 730222114 182508361 403343772 576139251 590564353 136819922 451859646 197077711 738379288 963662813 975693714 574352929 702488957 779651030 861002679 785477066 899108468 626688113 758485150 271721795 874667956 542275648 798618085 595862842 947204838 525461177 543626521 594632922 994565898 852929926 888722529 172494552 694819149 246063082 379240832 708663971 719087346 659806517 662358524 707659311 933415332 486408429 608773259 61480435 757347849 976863621 999211390 679984966 867477904 866551219 890567660 932946317 964089370 89889278 242352361 336879668 622178674 782913258 988731379 488418989 856423564 490322446 931558580 102485394 956136016 615215646 937051572 333959307 696336358 389976167 604210805 749794060 773713305 567981036 884337881 749938371 765390620 1080868 22476822 894571443 983622485 291867410 625915004 659999306 719728073 600776930 765672423 116127917 559847762 756448132 920560160 701335153 851133113 931225648 963563664 115214240 234112042 589746919 616085120 662977875 842394618 970125384 998495899 557754928 800433578 795100667 827167471 13404741 169794731 997671824 998605382 120526543 617624453 41328519 95035244 238427250 697793153 960838890 991611422 176534813 689478122 671625316 976646031 392097704 807323651 645144668 944487529 989214843 993585815 817980617 885395513 700621318 815253542 308923722 956054168 730830785 975824235 233943959 270846802 954307571 991668178 411986407 973211984 366994645 623949890 938756572 990872246 733934852 953814869 646019851 745822356 770114385 953835196 712216639 738415696 199214669 794322194 202987501 899116363 250473023 931974842 237375325 785595764 295130728 976236693 568097234 931207147 172817511 321619513 950750894 993796652 745360743 904515531 650429633 842132285 978866304 995630501 426357312 636777350 391241505 450812615 492721949 824086940 998884017 999237683 856384106 857845345 911253798 964514779 891841907 925271764 542416537 695609453 259166799 960274281 990689237 995934521 252581844 290917709 79112661 815996472 780097711 999616214 388015363 684621077 920031198 970342163 294355569 921421422 103345449 808171631 601482622 893543893 70765419 232128743 437156245 618803788 742452767 878776041 428021797 809451363 270803579 402022150 269742664 503459011 27245512 399159857 955075270 983293762 896691251 957148957 381589657 971406027 996807356 998269215 963830727 965878911 834397490 839201615 710443839 980648877 450711468 962072325 98560176 898469465 535908268 967923876 109816815 734361573 112137631 591457190 800270433 829048421 967773563 967931963 656860500 802265253 887087961 982559833 734371671 743620990 189733884 944109524 676110164 715573994 22877367 227996649 794692845 894438619 52036827 143562425 654444423 819032880 117011930 898659573 156637909 249812437 911634691 938706326 10343140 205327143 780041247 886447318 224650915 345847878 988860802 996484364 572670248 919080992 525978492 601614850 141984991 774932166 899557053 969182167 374159516 447372306 601862414 662004134 366979137 763692911 151633658 199978009 877793134 901955189 968164170 978345935 207749524 995589191 878086435 972730815 204848510 871252074 483255860 632617104 959984129 964083100 479963028 969254941 779300059 825925233 303419641 512844729 297694404 814955791 547333063 916916432 69371830 999093399 822578478 929604038 950184712 986066777 332568338 939976398 487047853 988753435 67858110 206344436 87339779 241200379 910999094 943169198 739522092 745033573 449897365 564163568 297484084 970612465 873269239 976222891 929255027 936204361 253357287 588819813 711851804 818413873 623083741 639238769 100280705 838687452 184491385 463722017 371124491 832955193 618540221 992291301 769734357 783306682 975146360 978474935 504641844 846378221 319802713 628014650 987987318 997611126 153375849 205073657 208691947 652611414 513205868 661437830 848058966 976678966 530245908 960080440 140137702 508637769 894321224 938455135 438551378 951948573 624362505 691937575 508494983 831751170 218593782 384552473 697766672 722501376 300414847 342861547 170604668 714555990 582088739 647835526 143996358 847093178 431682344 455413402 387101578 569277474 208164465 983818575 288582182 853852636 885003922 940284105 593670794 790042679 993911173 999850905 297760236 489462386 349566817 436143325 925546854 932723357 657393768 861461384 652350975 715290666 365095881 682139790 809256582 916021628 549342892 869081580 799392894 947446431 630870714 863326509 39587581 289855798 226562756 364313444 302520083 470281849 939371727 948862706 250248889 801396273 578481401 933023902 539868257 767014564 2394206 668261044 521132136 685537055 70715063 192502616 521241752 861161750 590664009 658156074 521301501 885113342 585724518 741701354 83823717 998435140 21503568 155838659 293764699 697346354 620849159 776350466 722028808 853451709 959040155 992683684 647348452 698574377 343446332 972095268 887179705 934788484 856657919 937576777 78821588 404083366 324969555 802033755 513702249 826574008 90578310 610304997 479348669 524916228 177045925 830569872 726617928 943817409 654308577 791043637 570934074 878274244 971562288 998984015 747934019 938927997 393824783 478765017 24145893 212242795 139871614 676595348 315617190 499899986 165373053 819305676 511122599 630017566 449612359 882562240 923720020 968192970 969210202 991272389 571787229 730052459 204018198 375812890 683626965 705291635 220009921 614823497 205112320 664218674 771097552 986896479 715434754 982169912 909626007 959829602 432392604 497846647 506046138 907897793 344910925 896872623 63845255 679783997 825504697 925709180 586860532 877844569 198143984 628151631 15477774 145591875 418997314 788963440 302266434 738846729 279575161 803062404 413904871 444204622 446217372 956091731 458884563 576320446 35873478 971621970 253561395 327955544 470328384 924854287 40189919 121608526 427274249 444026629 312374275 514665250 287311253 415380479 180120061 595768268 101393087 603721955 928598569 945646685 102275214 280647530 806208378 957772236 279803746 704907080 691740806 766278990 163623736 421481101 510131055 930012840 456344399 846875396 42643392 915614122 569679773 901044881 807261441 972498549 186511207 312858818 726009234 765088808 774952804 991367278 592165514 613632499 409686381 409689989 756203980 804596586 812549528 821404452 963542412 978280592 413646201 843340993 358396241 569879743 11679332 839722201 939481407 976063512 781275415 861392400 175019958 213074832 424575390 921448433 996627979 999152127 979036751 992050632 5126394 661078159 383210768 938725374 406444421 660698115 638589950 844106366 545328185 996448473 31576266 316719072 445084975 845907134 664210724 979616014 88795786 515566808 165206560 218554167 231728785 438609857 114424838 722229204 857213237 961577017 307064830 935902749 588519525 925435688 560380868 888245268 50920483 435924381 504812481 791208894 418441883 599561158 59357165 661137521 78804044 312264389 893496149 906687887 511351311 811027957 755515969 781544162 313836822 601463784 607803666 701892985 277182536 957313812 336250175 675084914 772847602 950150997 640484559 644777530 780328192 984358859 757930458 867813483 302044301 444723338 860280685 959321050 220590739 697603233 953839320 967835571 26522202 408512868 644136631 871164576 862364442 938785880 445913758 711601688 406266366 479905576 340923776 592886423 405332013 594159936 524295897 815032694 925675999 996413362 267766217 991056275 824220271 973093401 80973676 233307388 820281825 944893288 951454173 999715797 820129462 981921578 488806287 699564974 341179245 939040548 772346708 980636746 855913384 941842023 150769389 914426546 242262563 762940472 688429481 813401013 236274974 703847006 168700367 892077713 574305825 987942891 465921742 934796151 764272426 773115122 437286814 497386874 314541177 595473412 206257725 303690934 182725480 709431226 579760028 675939046 732865208 843976960 380353886 762404192 567670320 918682986 655265850 920993655 10439108 796379325 925195016 931729331 348760500 426294135 629589246 876643720 661865137 761167517 779104836 785124834 699358477 704258089 631914438 879419588 746954435 753140497 884710862 993491282 520799293 748135999 689756029 962410858 781377078 872064116 812915291 839286328 997236991 997563428 349885117 880349779 682052423 871509749 369663274 517927628 214591587 658889410 283425390 807138422 577886044 839336897 928671717 973222159 654493505 769255082 825378972 903691827 737377626 962321435 840670478 858562330 813353411 927194328 55453198 71859476 57218344 101423765 361532660 380848652 489376430 785513681 795179677 908244091 454748491 676150026 832522977 927840067 961069850 999365603 986125410 995269442 137297409 677371292 424545198 531132044 755113856 838826628 203125658 211398923 495062052 876969265 756292821 847944122 179122935 450498982 230656441 616958046 44182836 355857539 730944675 875609090 434022389 642611444 518321444 755698765 356223239 638705429 514618735 514706328 412540275 524266727 578994386 728196913 889117458 995648266 80775182 767440136 66527362 444871354 128391865 948231186 19314671 810730384 28681587 122497327 353155723 645954614 626347626 804614866 921271520 954088759 414440480 796472041 197712165 999100428 207608327 811371046 228710651 343370019 71029870 380811350 231131568 255956441 593206789 797840036 80737154 622335585 827350892 997591924 434742 872464654 878301909 993647885 218999670 877602711 177631196 504937635 2370590 645103065 371540475 760168785 202031099 288986848 854218712 883603270 939265454 950670179 704701751 902823979 491434849 514640990 466378008 859929009 226499503 601927896 101336273 181159872 707140665 765708519 259947916 330694982 305552312 338154947 493476053 502697832 640854902 815642704 809427347 881879845 865491872 904354867 553784384 650884055 313388898 540095550 357904704 802320631 348144487 577458363 381333283 989818805 242807206 729495030 845580820 907554963 371733198 460262419 692998643 936049298 25176534 222247057 227238493 246205234 340449069 679799126 405348003 639709364 92927568 468586075 161663098 226363027 799089117 999504344 385951024 885558248 744032103 852960765 261837536 468900529 86026435 103236092 907492983 960102534 858055879 949738164 287758477 838728542 814316953 875624928 779121882 944496022 709350996 760231645 827493836 914810114 80222427 844785223 828076569 897504681 166987989 195588808 256219246 279644638 29689138 533057677 992049142 996709993 195498588 226738872 325569503 497816428 263158517 280773874 974113618 981769598 763858680 873986933 352821227 859632042 732251857 782155570 812959609 886897554 811280789 922767396 442703850 581355298 372085000 443641411 918224925 926567455 921808525 930663894 406803164 929368234 454316507 802748774 341755896 494274070 30330836 82973477 913596144 918228685 761617472 964472386 778264012 855044989 76453372 864870256 522402465 559438026 295784481 442349430 912736502 996318305 849643844 966175412 687145789 977261427 231870053 435938651 316881620 349153787 348140055 783256395 397917046 468718220 333841495 707112947 424493016 592806439 992062492 998808288 900656434 972349374 666531260 733403411 16334909 732082383 103646655 935626800 650723107 970830046 556983071 985845508 841334682 856683188 305897600 528057554 280316096 614274295 228749776 462642844 978119767 990880557 213367119 628780064 264404155 741166422 607833887 619259947 612362895 688985132 642033743 944671523 982046275 984543719 645532393 837344389 459809481 643977556 459785097 551968123 919737664 936401110 753597395 917668796 997267731 999601712 748006853 792778530 6130259 46279973 731916570 927753522 391658072 716278795 537872701 552234568 772832639 869844770 126086465 548928276 918213295 928208145 300682306 334643122 313483470 864622720 65548128 575826020 553241213 779634281 522907918 861218015 491326314 710178992 471402333 604854520 220728805 467867550 408092876 842012166 100493318 199782805 697894249 712878633 221491212 580795140 455909308 624387135 785689752 887874641 380401155 518370743 671601548 859335283 935680994 969880334 626232835 990092175 425217434 856515846 404160343 521837682 206817114 870649289 696295141 957586914 979997112 998085288 491294331 630684243 835840321 843991907 894919413 909193062 560427109 906926421 613496897 954665387 780623739 996617419 973180954 982507184 745020361 934525149 204164826 582271615 704167708 883120167 137291393 343279560 746345678 979570966 549559713 701804961 345859626 896407952 485614960 551280890 533704062 733176754 460906989 882510188 942108892 954093238 81188527 750928661 425876603 945854644 726587176 991888837 28666808 103076701 922356982 923381731 24166527 755092793 874034749 939379264 15085307 57679396 598648015 936324711 981536234 983474694 227557090 757837981 269806304 780485676 943210945 998043725 418173480 463488827 220927528 618088931 659585499 917620010 282918692 430272894 331109028 853920854 216442987 791957958 865670369 932037502 258558490 811152249 387540361 516494393 335241678 363771661 934376087 950018876 231195988 335311068 497051379 801009814 380280312 981443473 193864918 758753524 371054394 975645703 117473690 249616090 427978821 928312757 280432060 617666969 308137698 436840675 593123153 812647477 394560618 426252495 136299951 697467471 772086662 935727129 502389100 861259727 975881563 989101965 307509667 387811980 802031863 882675758 502704965 588373326 514431378 813080805 352260089 687797110 17963190 948107194 447209740 905094518 336468498 508348607 499894499 939531179 446686149 742506457 275686397 456909755 222260528 961407739 943359058 961242927 380266367 850440691 290720452 792341247 465800586 616504233 164952334 485846041 324353222 971632884 377570068 732229997 578519244 658951848 954414763 970798546 770581964 936905385 797106129 884915488 555720421 567458204 176974886 373420201 356980637 668349737 575787141 955829520 200993036 828037363 771871844 987811337 911549806 972651679 215111053 697738242 396368790 993968521 349263245 689701522 677489767 946681062 398633452 912050674 370398006 881674358 391839605 563064634 14190254 302045744 805002819 908231133 211140701 327489338 471034305 593155768 87501544 158782807 536775217 713222565 141415915 788214853 686123949 930808451 161736460 530886810 611560298 713988608 658221337 984880122 100674479 202633848 596734935 977489115 470631262 869972435 741887781 762867710 809320180 989016724 981724190 991747880 687091897 978926894 862524369 914116798 413601504 788608946 577408081 666905822 356279670 466736629 218681950 566880323 533132192 882620409 608402936 688730266 384777977 446135242 542835651 710706332 415584068 485279217 48742298 836805910 145484878 272528626 182235561 285277367 792552438 867436192 962483676 999753743 731870587 890485190 715688654 818544459 155279105 910906834 697350518 848863270 584154053 790395207 457184394 864806764 578845761 907246475 640336186 900009952 160456997 724678535 596262069 677136258 313896989 999493907 540630325 677740537 512785681 887055180 903912205 982978909 281980755 469440361 626496470 869552164 119693538 122584529 140060256 879489277 319094186 800183369 470749948 838180971 189012414 589027393 702695684 955699264 517085118 647912348 898708813 981692263 473846779 503703426 876582341 886158831 534140110 633643597 971739824 983416321 685635678 717631620 229312257 984554187 176056766 540791551 582201038 773962530 8675639 878337515 279198729 716184400 955713163 978593864 372075567 878358027 911678992 989973881 467735359 755743588 530719893 701834731 992226602 993522987 834652008 976861940 864812902 947471790 511441215 514679656 545357127 969562426 201303881 712620737 873047307 920451690 42883819 986317133 327210336 458034173 853865393 932550124 390475137 409021566 380714096 933353715 204701228 870671564 351816389 905354667 308207089 666188463 282822299 618579563 666993850 670583981 359219078 860223281 212182981 526936988 350145340 821464071 218599354 549149539 59485752 992707988 242105077 638446652 801884373 857047401 884326202 924149507 295695379 408127766 823701855 835092773 493685878 700556386 811439017 858562940 754733951 971800126 289237463 391741036 486992160 901593584 880115643 948267724 527394021 949709471 343526540 420759410 790235436 853444196 563497645 567903084 896295743 949542978 429216568 878807712 93021775 279691210 733267443 952315443 611568640 844349987 945694256 945796914 545306011 839126022 902449198 912411225 341832397 554054653 464074409 676568076 138257113 437401090 237825934 803181414 343594495 351760435 81372323 659455022 264817287 418375745 707685348 888503344 164511683 540909526 539446809 605656934 941142937 947032165 151267911 742405403 933634951 987851176 376202305 471842379 479818372 999003084 272096216 717482480 674501334 971956149 53730760 775718633 823846046 839852274 509546603 589085961 841469454 966294466 320191071 834367145 276241956 373425950 371339462 448970523 115663853 898985554 743198304 898588344 592348080 881210600 43200069 454170937 960337644 970464464 359861233 381408109 59384882 110029193 143053522 406452547 48559759 953939967 695898059 955685227 8815317 545975429 73124062 211763211 580847735 649117800 892507506 953935416 957608577 979595766 310982159 729447511 247161431 579445604 348661593 527929080 546585770 552792621 973685181 974886621 786874382 806208761 308841271 357894334 23960779 318025694 224165894 532939379 701766569 839046065 29535710 624503153 700150711 863706891 708566858 946043253 627534689 752188557 623826325 745269433 776856917 971793707 304583744 305644689 797669837 883014543 477616094 587119225 42976393 209857289 820673358 999668354 199278137 636253198 977269520 990229617 413461760 579811186 493894999 919877840 640290851 648357335 452625055 476723403 811705247 865861843 424269713 468179445 520922930 779880397 949185597 960345321 42341150 876384183 248364416 808177833 200955898 462504235 898430983 923963016 350618474 446908907 527728143 768207888 458648443 832558956 37540325 499635190 194974808 226957206 830880326 931427571 899427009 928125798 109830193 672627438 406204074 807722153 726714080 776780456 601832817 846125288 402353245 744492250 733188187 958090045 837181596 918821854 823128051 976875804 83934572 765868923 612814005 999469647 496729458 713608499 953561534 962100892 560257740 910113423 183735235 869367658 525746641 601512090 845127280 993979310 843203255 971306871 640611193 964477827 681873124 811963479 600105385 947279880 667247425 730691935 476454734 543249735 695102470 763297067 661693740 955157423 370042438 484504823 781170225 930540733 841797135 970844282 905044267 931482948 363548544 699995393 720488303 993637287 92891131 165653017 449989427 627694879 35217413 449791735 501040005 782515943 993832632 996803195 384506747 956500458 880765421 889861427 264156277 361804612 586145866 684570527 457632345 827600619 384137920 409453657 739339744 747656777 973263459 989953018 658345027 838742562 392815942 602987678 543148981 645993963 152419115 821988331 81139663 296615072 96388427 919159521 663082742 947232819 769421761 989338994 471597513 841550242 446799019 454471021 882594333 920907862 179771764 916869835 788805606 970396106 529626028 757159912 850160132 944321455 101481051 230484657 519367445 978808249 721328135 791292652 172823597 577683004 927584068 986658023 162796249 754217062 861698623 992793724 978797313 995577918 531095233 705000623 722647450 837984680 33954712 558088558 738976260 960715543 746076230 755297126 986526983 990550928 778075315 861046922 757301996 878154721 931929164 933913944 151414431 833827115 884242824 941694801 826937661 923113209 953496747 965029772 983488346 991780225 660655079 996250621 328506411 479825226 675821929 855649500 76957104 439516731 169480064 281814987 909660529 985758065 532864331 604697420 535846481 604838902 824183431 877376545 660284834 954531054 402450505 412850205 209170594 476953169 843522430 978266958 804605893 975548242 718228538 873612603 686256974 729582319 285987541 527232273 39835868 726295435 758704568 886215477 626219972 740983191 929864123 964366268 371229695 947260626 432519950 948477064 147174102 417879021 154777650 965332073 634062775 991974789 505690043 920179123 939150289 964937428 207104060 616968893 45909155 508154482 319840559 985623970 835647785 917923135 602635598 979701523 808149840 898671219 165202757 716905464 790706744 924900971 674716069 773162735 39041761 964513923 977791298 990518312 159096501 741331351 58157631 369929563 187301860 415977579 758980271 944041415 994673747 995215589 627952504 768990307 451186619 688676939 248053576 970437817 82730579 868044683 429124602 461065343 467260653 812677500 135584445 140734226 658495639 972671024 475827132 837481544 765796341 884447245 829503652 965189606 244783337 279754986 232234765 300384017 627610601 850710721 274490743 649227618 727744069 910764338 153720760 534149498 178345782 331676998 884004519 944244982 585868855 925190000 714771635 982777168 945019961 960541453 101451518 279226846 397027431 553080408 754624024 997711648 804710253 857535466 84151402 605147043 68274922 785101521 363315203 621170016 129532860 557385707 851629571 966844174 296427201 722217628 297416401 653747390 490020713 858166603 926986218 955948484 42160386 787586045 164775331 377570758 615530158 839332184 832162870 838687096 753573445 879877288 850429037 912794964 150459355 772462660 488315013 649053599 220274193 924525593 908899061 994449280 940596800 953398810 97746375 383910368 23337468 85661456 540689150 695636530 878865897 908757038 664678184 730531133 208265111 691941645 971519165 975506392 896420760 966020398 876242878 961833903 123284067 678075735 395927015 763845823 615147521 707076436 201707340 408119247 835578780 836233737 799842847 841178173 542238059 664969919 335639185 397254919 194094445 832404891 84795887 886176445 729686299 802631799 663443436 686118223 886477969 974600548 28092491 370471438 338503443 436939813 133050981 544458519 463942350 865431108 208577390 646968255 648534714 825166752 817627810 837955394 780049853 854546355 845420933 919546632 7088846 301520320 405591699 875864263 511687299 704891857 369480689 948578820 144468466 557368799 638215746 952039064 492115157 690419339 374040660 575986983 720705607 752867929 240584824 932695191 407237382 888275339 803392302 911595001 519690338 671109231 330849864 516343039 481235614 559646826 848374021 918696493 117561799 126383721 474290938 537233022 798743027 806124629 785390245 913308421 14337066 25836562 43773398 787814865 533705758 971400475 702873139 809601534 128131312 386386626 82210915 608893383 450937257 876005559 868050388 973010288 78566770 574451155 960125825 999080883 331337308 671946996 839486179 940041358 939274753 953215760 353099388 794122208 65419783 293170406 410911705 618158105 537783464 956052053 796140875 942212431 442681577 498940529 488645337 921277132 539064436 915536838 2663026 51156158 48329713 664063200 3426315 134093310 667046943 678499560 939255439 988684812 723288669 990301079 187373842 273983652 334771114 910824637 604913298 755530261 826286039 849018336 492307437 633213990 382632661 459184379 246708658 780173252 796099907 910604683 851227377 994468755 202066696 337329077 359284614 465813185 890402006 948329705 697978329 863133093 607402288 784800076 797788922 833274539 158222787 434506011 280250925 971822192 739573447 831895680 560889216 582935435 35112675 979533845 858125568 965053723 597082908 887247353 170842595 360694420 975584595 991876435 892046845 895287115 648772210 853241824 995991408 996473441 876703943 882468132 638975164 796873079 538988461 543246030 164303464 277452250 895205130 999343024 79022400 460017179 639300702 819984007 777823273 930979493 241792047 429321974 223862977 471155050 915353384 938489959 369020968 446807926 458212836 831035378 84806418 267563105 79696753 692491954 53338731 975659342 643605516 857009921 494284766 555469711 794767066 873931286 988860578 988883652 188461280 197558739 36550449 896906381 123077110 599013951 630624973 977927073 631988610 940391105 490491641 636310138 370520330 929200771 347310741 852084267 884859984 946371377 864863195 976688670 293480446 727175577 234276104 605786887 627611418 815539945 247255830 872238100 659334884 838802753 268922332 741616511 791238068 938859857 307599858 992243866 885282746 933061817 691000633 753815649 41269857 781397190 689956443 799900923 18149551 862891571 959369804 965309156 891700642 934093744 284334341 358653424 564813388 893610589 630051925 756900963 751242260 959899398 888474521 948257523 978479745 995368091 975270857 992615277 33092723 566884285 651579685 949136369 329570171 642068104 369326083 810508025 121534425 432778002 740364935 916641662 551193733 647966744 941422645 958289138 429001020 443851802 375941527 909468846 354595398 886898851 320084600 585201697 507550486 853751397 161038326 630087125 476463165 857516330 312347496 870428318 242453185 723096893 666310155 982431454 875834695 879604013 569419731 687716393 330630764 429872509 914114719 958574159 536561401 874301538 286051993 558441015 345296036 922238567 300640103 801880854 678145210 993989888 356250063 908102314 422707011 973506230 325555000 639691919 912170824 941050857 544054064 745015127 647660726 665591485 1631794 927800146 587411412 679913227 476844030 664015244 653083447 921323368 296985052 390496903 590956357 903804985 68731436 949574452 110602537 148777996 355565835 634838893 717456735 979826666 956296588 976239980 536187189 580087567 239308453 351966869 979981825 986852600 963339874 967576719 566712392 727132124 29956290 232737914 324328337 439950597 245648516 737762630 295762158 910838871 430526936 886109847 718511715 733245860 223289656 321071231 957733381 988449795 709937599 909018005 96795498 576773080 567181226 787015909 428477217 977323278 422640036 821907404 710566296 779138002 972963970 986996324 295243476 591059323 927218425 930671711 339824056 374010020 830635591 999374428 264901998 433467371 223375941 735690070 15341865 968226726 559139529 898515308 914026772 967818165 966462751 981589198 224968576 583485756 281105908 520927110 89226007 983143095 351921863 842114061 825483325 863400794 436443983 765990918 698119681 754277891 421387456 510380991 203162519 221910519 324800983 558224308 88165500 467991944 824960770 844395085 481222672 813344374 260009860 892509261 806003955 839210279 519349202 953099839 186557659 687683969 450229175 481739826 394123192 522617361 633041540 977418661 106142289 377502862 207938966 274581590 268170416 660930000 896780988 979820249 947241478 985585895 539203963 688806673 529414834 673856453 824898405 865588046 500269311 637302479 453498641 593547104 952593783 966495417 673658921 919145367 486376563 945275085 326732420 848379200 469617852 918884531 488452052 968797402 692083172 764932555 159465581 988018263 269642166 445874722 147654294 688313507 603307508 836287779 672103046 927524228 266458426 793906276 971813698 975801676 364431292 598954023 675058904 833041596 929653796 959021825 91496133 373896241 540486196 963341358 900879706 921551257 31599954 895527573 232556427 531286474 369874102 850894893 756098654 910380236 539600105 643897132 386036234 399148656 900754376 978834860 716846466 848755139 379693401 712371455 107720517 660598244 708041334 802547166 953012647 967235662 113346922 415155281 800909939 977963829 297271889 635032078 994602849 999272738 787385453 906716241 689343457 720406233 314958488 802313903 497423100 737373365 406854931 532837301 151628966 505115563 456697988 896963247 496738082 590259556 637132757 844384622 532887988 895189174 320125963 834812446 316733250 810232244 35409796 723211161 685232096 797115553 896579001 974971042 319895965 722000550 1698667 102240027 142379124 302221986 320194750 551523890 508401067 592540073 937879 96771240 125751268 901335310 201717337 921040117 151656209 630505289 489302990 859681151 196570072 305045975 740670606 806783863 683630590 859319673 121970014 335048118 602854525 866489951 509261701 789282792 741695647 871153100 403729457 671331894 76598287 391526703 678613609 696926612 766846413 772864381 549471188 635967721 768182193 921766102 386054926 942788300 248457768 521997302 302535826 723211687 470760978 506709935 19554769 802501584 953975024 972493703 927936814 940797177 811476106 922254017 106623169 612136720 840822479 948599599 152416302 332989287 464058321 598178338 687392289 789733343 632898815 847848171 32109531 420612104 482185825 773222039 354334484 672327094 730565190 991951053 998467536 998834989 178203101 986033530 868217523 982088934 1483256 319146332 937667889 947516572 913609626 916352925 769654328 858608523 179939698 557667001 520853957 880861604 649265303 758015087 789006920 873828472 82812013 221428055 350947682 741868104 546488435 850921759 49274491 826461724 916046994 918940971 404604781 995170748 789037597 857385312 759704541 993140043 71001217 451976708 161782041 522166272 725167908 949359070 365691319 912803963 947960794 949198638 393913746 752776789 285263371 362561816 512955080 764814006 456624308 991164160 201977727 754486128 37775917 183404501 244588628 720302379 448085224 778910516 484873330 741088233 947960522 976030662 815261039 856224176 522319584 729318797 569332161 896682971 404305599 759499394 40521756 827073183 476407924 681802610 609520319 859499048 583275167 828827441 590601984 729234131 239505130 274705449 286144322 525887103 776095438 881039305 652357960 827220163 747237285 834709694 356747717 918512420 87830965 390353637 272382666 605941664 833179669 904347438 741518074 769651282 561885353 605647460 664512535 949224741 553243938 943405609 217167552 962099617 320704875 470204927 265717593 529781474 86218709 997896969 661137438 786083060 13022966 433564120 766239565 779524882 77699900 861395985 961986511 984993393 823271513 998451027 440861755 656176985 924663009 926545444 660211443 824064703 512624533 576932183 565103168 764747572 284669597 657086262 132765281 442650475 813044820 995848495 228420125 274924156 167009290 742337028 949288650 967070283 312029252 394276505 198570449 412434700 130448121 413079024 909708976 944764499 569593041 638336797 859271114 975906404 43195541 744266805 924498361 958334343 507794028 878116421 793915165 887185987 420695254 920519017 730726413 833520804 466081235 869267294 980229975 986294986 297492954 754053211 233968087 240486845 891748740 975443985 206596422 950594282 94967208 601125697 295225468 560222626 535433717 858376445 214913965 842564501 594648523 856997594 315204373 738039245 37600749 443970301 305515268 732690003 210459436 388016327 435103836 510928993 161785937 741526725 843704362 924163825 658234520 819849292 457144200 946130769 140565174 295681930 920417613 974259298 960599809 968637987 142544780 208254462 550029630 774125947 63190011 100551373 776620511 873984146 90726145 305613221 369372217 746327245 168819781 346000978 756936603 901961059 730355611 816448456 429446518 978220344 556822234 891888792 906047494 937112856 301554182 963278499 652261271 695289171 796067356 936500942 931691644 932286350 120606131 650750446 962436127 979713546 368687583 923516026 252872799 590393656 470698004 736374417 710927507 929843552 630077368 840910058 157111816 696069467 707279474 894040591 773401864 929521226 950336615 951386259 768036526 826563082 188512214 780855148 508085427 885212611 913144161 940768666 592259760 989343283 761189705 933018490 640242904 751366727 884803106 978861924 711690887 786533443 206329498 662196647 989679342 993301424 550079109 810962120 935259368 994582243 91649358 274434637 734437437 807967228 563467893 829546118 414980191 634345831 380716766 980981600 107715609 596626129 859848224 912091611 935073985 987259619 926112001 997611998 244426691 617692602 649841259 900671661 712430749 826768392 715975775 805127318 858405366 869369056 414205955 694175622 561956866 584017630 988282178 995459965 863018027 911534326 250928047 924979198 623246540 876624407 982584967 984358357 626474122 974724908 379669802 803105962 335166476 690017037 8980426 668969974 568009498 788683194 222103317 458835947 170794299 734958297 347602443 427056103 974664807 995627576 39348914 538764399 469109045 771275902 968400906 969372286 444126796 553606787 837157248 906946557 901940930 962587721 269501932 283888470 346444187 542518887 665092494 751602629 445314471 675618711 556278695 749591005 152406796 607126257 68387285 449733298 182416551 519987178 447231003 831188421 363703263 889938350 770283419 816575508 626410399 679087426 281252053 595440814 269791180 591430324 306168558 447101386 441563249 748035653 468385081 671588899 170961551 491040190 265927636 965112002 579264071 903958380 512688157 707681238 574981146 605494104 214972377 505840104 991171553 992086920 787237626 931779573 211130849 955021262 7045766 429022608 84759048 270679626 2720783 694848958 505201455 676173788 847671828 875392451 632747450 784287012 436382265 953037353 592081036 862080746 364683873 558744859 921915230 987152471 507186940 763299525 336384552 717115264 339445574 547321193 376666349 721340494 595410202 919208867 190108365 796064850 763018238 931935081 84311797 919215781 60393375 307283865 320917317 416743981 691496700 915446484 963033985 995694829 56908333 850679557 415230232 915121692 410864365 653722215 521969499 724214693 394676175 567595772 323673507 768644436 595142397 760532542 798071287 921457938 786280533 825924846 455285175 988235599 975541408 978527318 105837964 766653178 786710278 798163884 331233731 397886793 247908716 705112456 168025824 569901762 80934290 647159158 356856863 978811748 272053359 642870535 448641949 471288352 411845994 926284380 978633746 990843022 121551170 572665451 886692440 893380550 232471975 720496479 783821612 969916352 592069663 792314566 898696028 969867161 844214756 966043107 111565200 757902879 860362687 929825503 53121038 916068425 847128046 953571622 238712794 901774104 590399150 923495495 365799076 832308284 112605021 922038590 311532167 663744732 382531426 464435968 54725324 151925020 360247392 689714551 611723634 800715012 550505775 635774536 631096876 690920811 600801017 813054059 178556326 782591542 532701499 894885847 921619708 949992136 716165182 735419723 631567594 968110720 270331326 544183572 201788760 927988043 107969488 741615676 917586063 994958223 218943665 250292489 60198028 273096642 217472451 650401472 296612186 424548904 731642436 926912364 110750414 781473114 294421860 451351861 583792374 998331375 456899631 932508451 567260455 633022249 914500008 962438390 127603465 754501145 68078113 157299407 86172471 388847392 788231288 898620784 66428464 932403914 778315184 811219355 786425994 860057806 517346811 544069988 835818614 887293077 427725764 732994781 978996252 989487709 976219794 992587592 782574125 802487249 444934865 731289028 762995501 937000040 472273361 511959107 293912800 882757098 631856460 943398483 598749296 746276137 803484831 834124177 10923584 909683291 661349987 690221152 15740729 251862857 969367849 988599692 216782421 376603472 23100024 945349867 608315589 775839432 735929321 760915873 155982230 376491938 557673509 638291966 612500793 994323995 124697434 615484012 576858106 709264095 243263737 940721235 538910444 860420239 181608674 830942570 340708418 638131250 594635143 926566656 563007902 648477229 893740111 940961988 854957643 883518916 726245105 942087063 280720300 723471862 963686674 989291579 811131533 876095750 771924256 915381723 88745518 132313451 264019510 444914704 67641651 658147934 970373654 991755862 155010789 467875911 106425650 601269878 562701328 597733666 408145751 675783552 83401132 751576783 570945947 996086323 26922474 990920625 640989578 748108449 736908853 750039758 417737941 776352708 637423701 678354864 869439550 893937167 383002321 572505621 963172986 969061149 14023753 803076924 709865920 799122277 684935290 789175386 189712679 902397934 717249440 887799697 385956543 439953973 636947993 983848507 58704104 907750587 279167615 476630653 772971068 979948047 32027294 40274408 122774177 372604426 929099425 982613497 881385523 903588058 117600570 779116316 318147719 680264479 273635700 361949114 685481473 706811144 253584534 294393210 397224090 454145033 193665174 665934941 377840229 640939879 700934548 860368220 887882728 940413183 203971178 319369972 874335337 909224696 255855516 931138204 524967080 811694101 125402280 362305427 972783031 975104448 15377354 812861327 769996040 967280497 263563453 905794277 890250877 933134188 856278185 980347564 345328674 778507962 460431000 709096613 612293014 886562979 75661347 913705405 992162690 997550541 162554236 325660732 907286074 989911369 239397026 996676767 426037307 597612081 502236826 538573062 547644500 894251775 999320021 999484048 180747147 773734486 155062264 164960466 415691371 780143642 836842212 844876405 441800062 501022631 232474378 432986156 662152335 860977231 298333380 753759428 83139652 488358855 375505505 603433878 777650339 788245428 568762192 581748024 701106959 901693761 202667489 646548861 38407015 740630930 557310155 967193836 327700489 747726721 568344558 790287160 795385490 881140156 276033700 504949410 453267322 467215703 653582483 982313192 604035779 928036439 875114994 931167361 337025721 658088452 871484960 997417791 87558934 546613111 113886049 319784268 282276973 598525806 584759701 947221276 555777050 710121946 340435594 642513273 288556521 371380355 158668403 757714114 551790614 707720278 114528906 683953386 707136506 746770918 559822567 695055496 884601165 909975127 89315776 725071627 865413261 885342243 146400945 943191422 938068084 959673512 802148445 993146421 397087402 703946469 296696468 646750271 607647199 828544222 163618724 460790152 899137942 961373667 233790082 976599293 8168370 964924331 826991453 841933336 540255146 887708898 140512252 247202790 984936436 988553590 919397662 960079600 487805639 662632448 757106211 876577851 463538179 791722648 836406671 876489169 390606472 684120955 892984553 897323518 549849738 792426453 780641770 864096467 370461630 567048566 791468805 898693534 529392350 763520119 533853123 826190138 45005071 846052668 698160993 745749671 743531758 919051463 595465162 925416663 384373519 662950774 649560448 684132370 956522319 962533750 992576922 999509972 687389962 771211053 447912569 682378592 463561407 632720374 746066938 821860335 580186950 820727128 362885514 417724826 663475756 680883827 764655299 792135653 247608151 974172634 27870667 201654043 225118648 771688964 165249704 655266274 223976747 375559052 358534919 904999539 43122660 734879244 464459528 802356922 463030804 565053815 648368986 770933009 44587235 45007377 425090555 982391132 595909938 723750033 982972282 993722024 217657641 276808002 426933495 723051765 684845099 791954961 592365510 723788526 719669377 740055170 319171142 483372913 935107146 998316880 84681924 885931977 531582973 982255177 699217926 825631268 167736296 428040421 792174090 863609284 391381269 508999972 74720632 329202946 463519285 516917228 292895410 935893044 680363024 872113070 495996130 565359446 410495505 828798499 643211348 741292735 637524922 949138945 38401975 42153004 407376567 977469605 20696236 774898783 63095351 970079367 770175979 786551384 950314357 989424950 236471948 898133705 934243325 971531011 128832069 447761535 314437615 738119199 465847282 735726275 550748085 872865039 46944552 495702075 846352887 973102661 378162289 396231695 569851006 636965709 562202042 840451892 536983343 680041941 434179284 837925743 790053031 793762284 168152998 322335203 532184709 969751735 418440673 553862373 434842319 825818138 685594527 735552934 911685945 930249280 485159072 556540541 672799947 834160381 494063810 748012165 728834759 814049314 593462934 680085221 874644133 903390247 755538269 870212402 412146578 862072005 610713803 960951107 558166080 793167189 891348051 979746513 878274086 942780791 594762073 793676195 688120310 850708264 418313574 617862410 968307828 972033744 233234184 965684889 977006543 977827733 235791061 251695224 966163024 972895452 112981686 452363793 453736420 779141914 560822991 709490021 929288264 974912166 166252294 816156827 789077041 809240761 965523142 970887479 530264218 595303366 669625922 965726119 388523277 998484366 95533685 380746442 126930602 255003977 39252722 367541930 506120627 670007247 810445477 878840859 911405381 956435466 159664901 254235157 685670146 709083502 82802995 615625324 232664426 536292554 415024546 976399231 690776056 795838965 424629586 473217181 614349089 890059228 983570738 993487623 8964238 139322465 830394447 950678438 768568153 819496910 250458562 270957829 562165032 739987071 695248414 772325277 841765620 853415760 734655092 775712278 33913902 525875846 849568531 928540628 42556572 158086951 936043729 977655467 916234987 959127222 863012318 981584846 837965163 971751310 869287254 948068765 303000594 706257744 803577394 810941242 247511378 977353229 283315760 932462365 635516415 660539819 983723679 988822727 670268090 985416701 753519321 865710750 232672433 390124121 879975048 902060085 231331712 782512272 343458413 364889782 730445413 777454380 989100514 999001518 1746052 387570387 481064489 729218947 363028758 880568761 826687759 844753540 568196057 960938648 44296507 972442770 300981648 630651876 967369699 968942463 719440924 949573153 968233578 987989165 869693387 918255864 197759755 768681444 543387058 716500603 525710073 669980241 61603036 965371442 846894692 949516562 327181348 344118649 490474360 695590457 958535291 995855635 588582530 902014712 126567538 695153418 518446477 883560836 414858288 787107918 689909725 747804990 499825287 770604727 435393916 879493985 560377750 927284074 99424895 608221154 140757810 578906101 256666378 430294810 891374009 956787407 482669177 708616567 440039014 927470352 849437758 941605337 170206503 389016479 600741973 789978187 885238715 917508462 806408359 806792314 33267334 140909011 450892254 774481754 836945696 930342019 91074920 314185911 367035774 945985988 864469252 930893858 124406024 463799446 370361759 924335706 872207855 899385086 338380651 728497518 610873504 817589578 415021710 428341431 70007878 441723252 371278304 636439393 760792889 929229348 926993655 937097101 288791149 489007935 940879320 958618857 232711773 308270870 954142371 962745891 605799103 870727656 62689473 602470307 716078918 904026061 399849409 916306981 468475360 528218749 231848929 525323996 904778697 966404749 311687535 496922219 425554972 717176208 862079524 882206227 169922614 746149644 715545829 771407423 191968423 477931449 876868805 967378542 268791597 352782637 32110403 208206686 46138185 622395740 613062726 643534036 380777993 752640691 953168347 990171727 103186821 474521922 50432919 936896753 428838183 485228241 862199367 863556671 655923634 837941511 978264299 990926179 750258021 854358364 207843572 885789008 559483903 697912039 379435360 708973012 928273488 951557664 544137517 614708479 169262775 737769677 377422258 805955700 616080275 808276133 876868694 953434239 181047442 659609888 325038014 567428820 980928500 987857118 121583111 809495865 869241242 923391594 308325006 565729279 804635083 846117073 361200921 429746360 211890064 652019398 539381394 615221774 506260968 786095766 935116038 953130070 84792789 797862722 723532609 881161608 536540540 542486624 599215229 784986985 625333323 800234071 299745348 961388418 157790908 636520750 351559326 447517355 215536799 775211627 709094382 843240642 184882255 431681781 707467798 984590760 934193138 968066304 894252210 915224751 932293357 940483458 786704354 849209384 985637796 999347085 356058713 828295922 752831042 878456824 330302075 927558872 151617801 284556973 681913678 701349434 69388339 366975551 449665527 942746569 880942496 907393484 315226445 658337962 274848936 548201642 631908138 977913402 634075417 984010557 802954610 896292202 252246886 836598867 215797787 981933784 175759608 211366126 22489336 360214782 168115526 886334810 27030144 718188865 850044606 979548664 551040385 802992132 731877447 859649960 483151196 872058350 497383513 933973740 581965071 675324053 803986239 843259073 7432833 881129085 987657062 991698620 943910779 967714421 671023167 771035957 24693608 465142991 687241570 805781356 146394207 894906572 266748167 676990540 407665714 535095474 497972774 758145774 756397716 948449759 443043795 834377773 992218948 999574034 359258090 556723884 38985237 175186156 401497289 439596002 374187610 467176990 255099920 695070409 580232178 779304244 131879444 544683756 164644877 272666982 803370120 883795434 236905885 724799672 655298912 690542535 328788114 334726731 764964910 840648255 996027189 999295460 296722177 355757118 438721176 782529843 927938166 987389959 659421609 784984798 311118692 604452675 693042932 713496731 740416730 749668870 961232229 998830718 448767132 492051672 398866886 784347541 693126703 884087427 422884236 951227459 539384181 803361054 568213212 912400083 588483282 859877438 456503184 567647574 292843834 831730040 190689878 459186240 194141700 460013041 108259564 757156618 645718431 656286949 563600832 947126145 947729049 980404972 314948088 549300209 324010484 982160139 752082945 792799457 960449717 991839577 539711053 692599105 119776085 483337586 750855005 910014826 581699955 725907540 213312684 739806328 370241351 749467466 216731809 809717270 501145022 908065086 440333590 475352329 873222984 928665506 137703600 621912204 72728690 846615116 147481831 372237226 193721332 382110325 529137118 942730119 448101716 519748845 350986085 412336914 854569356 983715913 82269917 218453240 291780921 843599369 765285315 984696670 55481926 208758522 987912967 989767782 847708849 880246921 274757609 735748261 599453229 935649555 854283316 999164629 964513183 989724267 247376490 604811642 76770759 760707929 739421081 914170455 718391319 968155430 374134390 486758426 894718264 993223111 521145153 937171230 145083916 166222772 174311570 212176943 214820378 860124123 682070357 880290323 974926021 976989633 326800835 483759013 837649713 935820231 790964166 902289846 75607468 817088023 790685750 907282799 331129610 386256924 904519663 942877536 936800300 971434191 18521962 984765351 31687376 254317135 340425477 652251501 605702592 805709370 674786819 932824367 691672129 796349583 922523673 928125824 995021334 996954484 268083809 650037410 967681147 988417794 490979872 797321754 758747509 930920304 798006683 988865370 695313962 708801377 213577928 600943582 941970302 962720416 768671649 857566681 440425963 476645488 791817662 840692467 558959743 754428371 360154606 538435147 47057534 68970593 40576885 777727232 897304396 917943820 845171775 929241004 417536443 802261240 322402780 768909982 375092618 805307329 969650555 989130177 604963736 847431932 883963316 924447584 98254519 593170926 627825969 706526924 264712987 535912218 300829591 715084900 832580370 953790699 793589035 810814512 497627268 858247909 879347023 971689511 254927875 895026845 288507306 657511685 715980915 923214955 680082749 730727737 513699221 523878904 356962706 808726404 957522807 996688736 171304770 252008105 51917315 522340744 725845076 952710548 977393092 989928362 993991726 997290023 563403950 748524333 217491722 584380118 123782777 509238824 326357005 543821970 703379096 758739086 298307312 662804079 409532180 580383299 590219755 809881372 305251860 691881022 892855570 949397852 700111911 785226527 440423407 860638835 8996804 608499287 606201406 669652895 839034064 942670052 501198152 589381617 859511645 861532539 336718774 699981431 788974969 809497597 827799336 974017480 241779463 738335467 639317788 893963671 120317322 811798921 509452833 552908559 3837275 246497580 921544054 963015520 587068969 810732235 226138269 912420538 572992826 912189054 253614670 558918143 325153673 775179247 976458923 978143109 937566469 996631474 445085631 640267249 392350627 753347083 12981388 913839175 905986420 959257115 510507187 521706516 979489121 995943354 770430833 846062660 226776121 252428826 341458750 624516967 704412908 822517757 548115696 709945911 694895291 745286345 446671339 770308744 756626851 811965423 88212613 612376164 237131135 317187395 533628079 798206848 615815341 832927395 632779743 704629067 597825831 796961401 850302624 963460202 170487308 471560786 290276599 580742877 611265566 647587686 528554433 552787240 341554165 573339880 372980221 736324538 581136477 864102913 323220169 686018580 465723121 993356337 650622587 781647680 105242715 919532738 323222474 936406862 181236824 739123606 154671655 214041184 170375573 173227764 821476936 843768428 964223497 990333614 640122254 991325025 974669998 975912758 984006750 984092838 146949823 391179466 35252849 88418600 919976645 945370837 771017597 838900303 264870055 874828328 875867784 981629596 544610287 853397697 821918666 940655427 323723254 835807560 556877640 970954104 566538224 645603224 14273777 565934185 644393864 894444256 6693581 302958853 701831087 863822474 595148613 939956731 444040515 912299680 435794101 740083941 383527639 936238885 316765450 616330340 871363820 963133401 621007080 894566785 942463115 970367437 275239768 733712762 113069199 488001432 840668429 939356737 160285489 970041879 516367590 694094668 79667409 471109977 980435103 997080553 11532611 46489803 931916781 987455521 463721422 794929417 971440329 990847934 357145590 470694326 686498841 736646659 114039649 319031404 371809178 752277116 215704549 818140052 86884194 178659023 715448689 738579639 841833263 848433442 978724251 992420610 661420759 750793211 361523406 954366699 791703787 879671317 360652197 598063882 534370049 670677633 388119649 435983156 306785906 892612878 353122934 995197772 818667153 911774117 119500500 373460381 535530893 736328808 623086942 897025873 281289977 313719393 23266605 796602684 257518118 570476181 323090762 833643492 529264764 628980162 809494830 962829503 797817433 970382959 153118627 784282296 134907706 374346188 314516708 550902799 116033376 568701448 625003891 669431559 385010730 511965986 32551887 318688124 833631131 855699854 553549627 832707444 658006903 710883203 569065697 930785510 237717593 635817466 616777053 637944347 980961507 991825003 500667079 809680495 381716113 750587749 492739123 564299820 680102895 755584811 854608956 928350741 203871312 483154402 445788839 711163435 676486506 727200110 599721350 861069960 794628205 988602542 199077182 766869957 117765171 132059884 141938099 756400833 856435793 863899622 606250497 878453126 289192202 940969103 556453253 680600016 947287852 971105721 891767065 893204625 352182856 914932008 744854725 989518044 485122674 625339009 181697917 866231196 608631930 800484579 824008288 940742207 990856170 998778381 963982154 968773871 653753232 934661934 428233253 474350714 757524031 935480710 780680157 991018433 344409662 909293645 240789914 571773373 769937054 929278251 390831840 721672646 913822347 945187363 238728509 358457775 383985802 903245902 136328420 555476544 759749563 823074824 396691998 756629393 911509890 966581399 162828914 435864301 395526777 982218094 805741439 894545239 482298501 675531161 478090608 866878534 740729115 914510301 507411423 534030178 302512072 440729546 357579852 802377096 894729342 898414324 556047576 580902096 813405808 843133480 319528260 412025444 427880188 943124316 623901324 862181597 304298379 685727464 752499697 955156903 873544889 940918100 700124316 724929812 125970663 617909568 457884164 914445304 196862166 237245252 463779915 595777190 946151373 980167944 45101739 530363969 230089274 980697007 295991763 317151178 621733297 855446457 496135831 520509090 463729538 648754014 436354668 563862436 830032935 933347928 92356740 775103015 2347191 170266361 7204576 9899429 787996150 894894421 487041888 703508027 851466690 858214062 646837429 926704487 168458859 816642532 90043347 437682538 927102618 928277999 866574651 883117471 857962996 887344938 334418389 714105086 641984618 902999153 569826266 574908866 466483368 698762382 599197299 625548154 69013250 794167997 709879711 978965476 384964781 513969549 67602610 887981475 553867926 965128312 110462795 413493101 28868087 147511377 793627787 855708885 615693249 719663522 558906667 645486995 744741399 854723972 373046528 480994683 502325343 637347697 364456661 480945291 879067866 935056791 741370646 787782769 482706642 905910755 393281938 430868394 794632268 841498353 10266245 853690135 498364816 609065945 746975768 840472628 445105966 864004202 977504154 998389767 404732967 575837860 457411775 890204974 678220750 927778886 323348964 424098942 23562230 479641647 913633609 963688278 98398039 931347568 14720493 451672292 118655930 501811136 902908448 982911193 759060404 771904370 369390259 769342911 833502394 960318222 431824302 772812665 669589217 857327714 270428652 969490098 783680239 935749884 647598656 672852917 283909504 779164823 206251412 324338052 214525962 385856531 418123205 715663277 791545728 994363751 242659314 310785891 982570877 997388321 231156092 417273550 193900068 410264756 556769483 607622577 637099890 949270162 420063832 440589932 518658622 903488139 946268828 963173861 118653383 460091806 466943594 812794690 885702341 939679546 904732792 926314888 730572595 978822916 621437139 697726426 274960326 522993733 381862293 811655414 69522366 942915760 186725061 821807046 381792616 669250268 530373535 680385339 232332835 808595015 230490786 659239776 504290856 592830278 8726581 847283515 160119162 414481996 600340463 857102255 146914410 626487255 686147024 970717500 750445214 891189860 65575440 575009094 64420580 588910024 490516060 722180591 423651625 983755213 305186795 474726643 472453121 737223260 747263801 968481120 731794153 860962539 632625534 827876862 428316611 706783099 876048461 889576370 182744680 647040063 863472311 888875426 18341622 610982493 905187118 956694350 769432088 978518519 951705723 997525366 832924689 876642577 536046703 577035292 384325212 533080942 857179274 977153695 159587755 774398993 811174176 900871049 54378284 957046371 120363148 928006887 390335591 923540723 413672648 717184150 193468529 212383354 125234210 270771911 62268175 327919590 235474163 946478375 637768179 749514071 12098822 255890916 115071914 645101991 50220807 828895738 40085718 564856389 377445661 967165787 483264139 665303245 494833869 693973484 618079102 659214045 956602294 978787286 531241263 754686334 379400406 549338679 437280798 811333035 748526356 810996162 66258056 962810111 286413294 359179193 983234418 985723385 175667818 955805914 147005918 740872139 719727906 911512588 785448552 793692255 777703337 800547728 903486893 910515764 538412929 701263660 976463885 981584423 160746184 298823689 645907026 892931933 527917436 808169819 435622202 800978099 955201613 970849259 729094366 775367524 437483623 983540590 799630062 813631114 109272035 742943246 723961810 985310506 363691377 821865638 252630304 966049596 7786385 423337414 397032717 962531744 186185109 741464480 690522444 893912586 417560765 902748488 452407825 870261997 935993050 945174989 876515966 945238031 708049072 953197316 575806611 658743385 678908109 957220921 632352854 714980088 962722707 964021261 835877787 849246502 344867046 390538245 451368843 716089924 105218887 779973484 116799024 666194816 442538140 490008095 529131521 713708178 477672235 479951252 196206574 995659090 313215423 451528438 223574633 634592776 105070625 938072010 841583761 858498931 330872985 342688924 320545589 680491878 349796871 621843543 436075468 916728972 240421772 464559841 411863049 600680642 195555345 386689549 734984311 736729143 392750271 471125890 501724630 669261718 683405036 935726025 970138147 970605972 893897144 983139958 899433908 942742664 970807991 990709613 23316545 728766681 197637574 898394869 950923837 972008833 853693154 899260334 554414673 637750299 511118657 872577581 737939298 832023464 356025158 746389709 107997605 112058882 398105751 558714803 137214796 151969485 624931641 694456453 614674594 683586402 96415459 761515208 816989076 971446453 211734679 320952160 520714993 804916150 224751595 923737553 819101737 888157294 40072969 387303271 999795105 999964779 749352522 871336082 176664177 609582653 635918372 987166269 905653536 947947166 533832745 834103572 148708420 903996368 615368827 645820736 640778096 953971151 427683856 918646685 715640221 893960483 701402871 811692069 725601245 798953332 347112805 590208364 698532531 702859771 579953357 811215484 366931789 689649469 838328225 863246682 878763545 968753309 949624199 997445480 260326993 807571923 329314537 643826749 817262886 890151089 622442488 784982189 500271255 655760312 411890410 520451100 663408733 703696149 689622098 781268398 411098034 509151712 446675810 553637691 502615327 553230444 918353856 965448536 217038178 682661531 510533936 929049938 454342808 468856363 599813815 916237577 411149690 483595303 824818953 969025543 712252397 916824308 655610852 917330624 60357824 847671608 317092668 591355546 520804087 954972007 193113789 285839657 310818489 813444040 371512549 868798346 415016936 772219667 258351607 934809185 235620245 323029935 551825392 985336601 943780777 987284180 312820103 428721913 361539615 965094725 545217300 590159155 532204226 618441690 756377397 915633243 507783295 947326769 998194530 998918750 782964400 901492857 111303146 189574234 992145289 997621710 819809311 990797668 604809867 655939392 509711134 810825470 284001767 828161590 961715749 970798259 219879663 291981506 67027892 356224493 52904953 573088183 822049531 965286846 488531767 915597703 200304155 643062814 496529802 504563099 103549096 738694460 208752029 790549218 89943135 340782034 259351083 312956426 711886976 964741716 613073401 715911345 594453498 937725638 149765752 478688997 251541592 856948640 689178297 767309403 423418243 926534815 443561642 589425413 659342101 855636448 49516181 394382344 995001199 997329660 475424246 748578863 960758135 970591446 430947480 804531187 770435884 949818512 945347966 970868316 470203958 806425217 33696001 194470458 735540004 790724558 294628700 567853299 632297188 915232773 972932719 986977164 545307816 800575058 640855739 800558268 465927991 904829377 975279600 979354856 908168184 912690879 981298824 999353541 410206309 940460835 408808449 612295150 98979931 556034916 521833765 932163941 722814993 758723211 566623495 754104890 534320875 549640531 426609072 572308847 100510390 242386880 522328092 618935047 64528574 955570396 972785021 984335750 331668098 625560294 857205568 965646274 899901439 985044656 338748771 877372088 480204248 548729382 741591293 907584595 918155782 994124203 458184968 962165622 91347542 567335460 905822643 959247610 237064293 288246375 927354767 958413878 823231983 968775066 459157510 755470710 262587959 376129664 554200175 686618235 824087476 843732878 834904796 960033907 587236148 878170049 711284366 784813894 603414815 667025421 608117515 692216907 189130095 878767912 435701984 761894340 667966122 688530121 654133791 830156083 768520223 781295141 900523630 934566078 370001942 953395823 880897396 886014053 3932665 60562627 304476762 409112122 498516291 580951883 665860425 978564394 642290944 881308005 509183456 787410672 535267034 557410471 446078826 818243369 124368512 496863413 939035399 995186252 422266028 712105181 286595016 426490331 183246447 245062525 421819334 954768773 678038075 711618968 556816376 887588114 359878200 843177474 617048860 668299827 69427797 550845340 581550067 837185463 405197603 941725229 596740623 833742906 387933796 404301358 54966718 253697819 854912007 991915812 470679240 522621575 126305441 938466629 992303881 995740186 103049871 628192404 442662232 878882878 321172629 581858504 549896554 690486303 221271927 618168308 161568284 673101077 195840481 398791810 808991096 827160749 222860599 359018616 869591325 947507459 570390254 982121047 960590049 972522895 626694923 647939761 153003841 657489535 995901917 996810410 567179496 793313574 469948725 715253556 531797841 841793213 870886006 992222127 416019654 490293878 990870177 996602394 947366875 993867612 721957762 867720160 589848343 995954937 328425323 416079922 449757012 981627771 600410789 706922123 725957240 965480148 906199520 964007610 135540044 968195890 574916020 629845611 217209960 435496437 232193953 452013816 523594980 805971513 315199888 788095197 167413168 236289958 263636139 446529241 734821497 811346143 733098123 884470645 280393018 394679777 807186244 920947952 988897743 994364943 186980516 958989465 499712481 610711870 527527006 646535968 967508860 990485503 218596854 744801793 458786694 472641567 536411555 986545888 158465724 868986989 742721737 959030731 302755442 875459952 904633295 936017297 24440518 445283134 475565506 579016807 949104220 971910560 78005743 947152173 528300175 570955785 957945106 986300686 733501263 998150984 154034916 551799267 87148699 648870204 6792760 82096811 232111681 832221402 997321707 998596828 559918708 971661900 530249736 752829593 673178648 887287410 238054924 396721775 522583602 803916474 266082822 713442435 334648009 783762112 922940713 980997997 180879924 785736003 916938507 976381750 905564113 923130228 178344160 181776214 262016184 499109335 919740003 979319481 829611431 927785068 34404410 113330342 821641687 900818535 685350788 816985012 41959712 948144355 856696885 931563103 378702361 889349585 619390144 741582074 912362668 957343980 199571313 637303051 438839934 568750479 700931161 805188925 485601209 595682691 350731862 940532517 19316877 77652661 261530089 878956024 526575456 950346707 103782636 601470807 148920294 815398549 574708922 660163770 434513809 483807557 601036756 908962781 303580976 755250632 906925697 965544461 271957137 705908139 905015157 916032608 900538408 979942065 388548953 671898520 529571663 745482827 570374573 616460804 157892932 407096160 38312276 180818115 868625951 870977735 743920545 805890452 505513032 789307330 838008134 990490132 612254500 971757305 55637921 116145857 767329272 979481263 845588039 922186785 483223760 865013829 348200463 957414935 779743477 788432145 956090426 994842044 221257367 844389096 498338906 771467091 783767319 824920669 753411433 800147525 701717789 923616274 14308797 233340251 58748116 205269397 382873044 939529090 51307503 129157343 97686479 704433015 160118002 165512540 261331096 379943663 697070310 701138909 483705292 686615977 619110847 727237219 468998084 948386898 87628477 590047298 211004054 433198675 294370959 389258922 974779898 983221252 733116324 808746230 475560878 599520534 519717134 535560398 175622501 919842236 267360702 553621759 51080156 350075991 516582120 756701261 631658499 659452095 683873688 823903107 760512387 960562520 659674216 730108980 809388640 932591428 662064872 731593815 991293911 999853860 740491452 777083117 620041079 791460408 965929041 989624441 646935028 942786799 369590031 424000987 347958029 911139230 837402871 899031466 710008780 883298618 223924290 724677354 979223376 988947441 988240744 988620031 962076576 973476069 918600493 929884831 296634141 743817363 944178083 987716582 341453605 356983577 897040312 933556810 114105169 434870888 72222141 172481224 120713930 996782972 922493191 971925242 662723694 860273332 329557451 470004371 982087245 987627518 945285477 991361932 494058827 830593458 895160193 991517421 203102588 974721772 497049039 610003376 327782150 454301191 290795758 995821544 974042365 991258783 731200244 878398929 130252736 503727531 78566587 622069853 129486647 417248295 777326142 781354465 370966365 458758150 216280955 290002825 647363735 887759988 854553767 995952189 318765357 603289373 839947895 937041361 346075360 458612562 370869686 468766954 260250589 875746104 258965029 878974912 441310979 592266260 598635756 953526458 155286753 528114095 997518331 999050277 810378285 974926911 608788816 750831517 446471244 549471247 45891523 72655232 627806261 674304808 284398844 611471321 998426282 998996697 582666976 948424607 502847635 708330031 646046219 780320005 407441672 943328685 328411955 691345882 152714312 718351278 896880046 954489339 195645260 897128262 828024035 895475426 239577622 595409623 62895869 331017835 89792705 120699153 673909243 821247087 566354412 691652192 757516779 892034208 205522245 893295174 524106770 761235475 711283556 882980423 556406680 913574371 103046807 787155330 320087422 787364485 15735801 677697602 9438136 690894038 565869395 574998997 420287146 657948566 902693227 990946291 284963671 658426745 229228550 487956042 845501307 858431792 928220708 989990552 394676352 673406141 397801287 613958085 738439770 832134933 483237167 888375077 994449788 996911604 465403656 625826056 137123797 610407772 506623719 801631472 195928721 834148985 808397266 974776747 256723836 745164741 841437561 921912768 688881987 968777475 930156690 936299737 175362556 179194717 53130285 401086873 281400041 418705396 396250190 963059959 891675726 961875962 459902526 682346282 120491424 932566752 13994467 977447963 652539879 855806522 962516190 994114435 897601895 908600219 326113548 397793823 247703626 712172757 60043021 378336229 12016288 973895938 600813247 813335080 102744292 758116284 186279324 303398613 550915363 888908343 566855771 731473411 840552608 941812188 903572037 938766248 742041591 961900124 970848829 989243257 892154607 965059501 877329663 986373857 625531074 845103209 462030810 884743052 498672122 621511995 34515577 815637950 271545489 926874944 946344694 988904009 742309435 873324347 979106262 997163460 71674454 867701066 206852078 492385053 684146340 937462533 538485259 761193521 240568686 545290685 851927481 944652314 677082191 843415772 808978901 813770078 800848716 878744874 284664899 322489181 303257723 789571710 935154529 939396553 554859065 718892368 859727687 870818713 654456711 787820189 596045003 705445235 417261471 488349679 469476134 896872021 619221323 716221229 102606380 193422089 14186225 437136409 104995531 581686939 637572756 940692988 735803434 953517005 836636147 845602008 4984766 598537288 25706599 298680829 692723874 815014397 577198488 870117919 954932069 973861207 877525750 901451772 105350448 224224800 972366071 998734577 716098707 820865634 823174946 967346398 570710798 837836326 87494596 307616990 710515625 780726562 396200262 435696949 594720100 896345076 614113138 672161417 269810278 786219849 908782209 991386780 426365887 857029799 259240557 362049991 901348541 964168648 340446468 781579981 686240067 812007763 27414592 872153109 802526540 965557265 385346623 650079036 66887577 225033673 431741825 461049023 940816945 962124110 925765587 957394541 444203541 788042138 156387729 558114946 896506612 927473381 839875782 958549843 169661532 174105724 676863076 847606443 303156988 324604593 314371829 477286155 946447411 998780168 592212844 870198918 545041347 929044788 967831618 997974837 131001936 160402152 363362030 666073711 217457820 582771000 118189730 399407226 659469404 906551903 80193687 332833323 75638876 87687100 598864421 924951619 828495500 994653005 985135630 994076074 636223436 668723252 90523598 118410257 855110327 983942874 923144255 981909664 450834611 632026959 200632938 979857063 417826954 696385245 608501359 751515990 314711717 714789359 206188953 972748654 124884901 662780267 662662410 900255900 776001875 909202609 516472658 591701065 110911755 426451712 716528696 739566964 189529802 692622513 629253378 809216778 27287260 281482994 519469683 806305699 557758454 582811515 338370914 442377428 426915361 758039602 237156991 246544321 791615990 945690362 721348826 792405844 153767633 370761953 811631675 860385565 666835561 804833395 814871145 977606838 348945467 545831445 412940647 886092070 556497149 994713865 627221041 875051211 390973361 653165680 278548138 889171417 644020426 720323252 19759025 414543557 254486299 557660666 304672397 950376492 577923065 943803160 152690270 504960988 989604607 992291150 111654157 752291130 117498184 418858355 103803196 829633248 133344694 634074521 935025253 957162313 752653035 870150220 589222373 778579696 713973228 770266541 573631660 757375810 756691751 923837049 680073642 869807421 852829271 882631117 552118619 555784568 134111161 246735665 338836463 857532654 477966578 524174067 77725088 707273804 58792020 769842267 685763901 854986861 367279566 457251088 264664084 440516043 755679351 831993511 907508962 913916890 148168445 312603847 733459039 763312418 839745290 896609517 636505798 775464680 822567271 876222556 710556251 943891693 692114602 815037988 802682332 894727456 431958456 693746313 446836516 653315502 394941738 929562772 488804432 948212205 249807094 852056085 119605376 436257659 854961406 955241481 428860895 718879666 901976383 995208612 68190115 970924241 441448507 916283279 535190515 801925997 348210852 511660063 1054880 60340789 412108956 737830335 277081769 351467855 258060399 983621887 617338869 756092540 181061538 592589761 507450083 787784680 694551702 960232111 314424154 539011877 11010057 99366809 974376946 982195429 268170278 948470476 427921250 526930459 230753566 244589379 618623655 968844729 337026381 426433007 121576798 342592540 455806592 544772564 767399593 923431829 826490648 945774268 500892225 960800021 112865639 907728016 942601227 972119846 528769632 811509806 912946920 944955875 962891891 984097847 934959143 983155995 310533979 540187610 223521937 695782379 665800565 972207754 428279178 495998140 365943062 673911048 833756363 843399299 751505924 950389366 46715130 612787726 754061985 800641086 354028817 572151001 609574397 610762849 427050952 816285589 501303961 865526650 74054234 331107025 807067584 856977125 973068742 990584372 550523132 978899235 550345667 795174786 980210202 981369970 901373803 943652741 781212062 917640043 666800183 711161851 745884212 862510824 65302331 143224992 466649348 595930234 241335134 862930631 822328162 855291079 320641943 460540032 629558923 812811123 513168521 683547615 934972400 995519159 332551644 792743672 192016826 786902433 73966373 267252657 212145115 520475236 815631633 900749259 829665529 885436719 977757503 983961386 584529177 981083070 941485877 958037443 391743387 827065879 879773964 988796291 372999703 488130017 416502253 741577116 486779329 720531802 813550539 996360574 687337926 928108006 723109484 795804414 978935597 989985012 545581507 815399849 202708020 569511009 287678374 980121366 240408971 733844507 758909412 837466888 84606235 498552826 522385272 830675923 143056995 344102353 85607548 439166109 591171616 986252093 381694562 397457079 653028055 793492619 827048384 907977240 20064834 412708318 760053289 842196975 977138010 979241005 547842913 923322481 171979291 350887747 407286661 588620383 732749271 925411578 150629682 620962973 365503655 929043356 75042125 708845327 55159429 655782092 72525176 166352418 670372610 898448256 943984520 973780610 292666920 475882187 559808749 768091611 860909151 919640247 225313986 973947936 49682559 536746104 545131529 636305170 227515124 653319020 743634904 850177781 373995420 903964064 969406890 996775445 634263093 746746229 935964094 939890168 571452207 987896219 249712628 403116982 974625114 995380298 782495036 968090420 80174549 970837255 335168997 392135205 518499736 879324447 600789664 628120169 484574542 927402134 975087017 981351730 369180526 750084632 406994283 817136583 367092030 367969363 839827641 846974433 280513115 592745884 929238244 972603299 794698122 952130822 505206889 552062199 608157518 860230121 567113996 696804676 664718380 666824416 999731017 999758053 506904737 844545473 459267276 746562137 625693105 651786145 937657507 996538169 224181538 886628683 325754524 644895752 505443200 716838131 637374900 814623658 185003863 481377246 151906031 894780717 290891214 330230337 342473174 985917695 580214276 729771913 262994769 750077835 613266877 777751704 720349686 807282475 48367508 795447986 159750240 733680286 125239995 298633340 461654970 952711688 131280299 490220372 872472914 954458026 804896485 875816851 890314551 990635177 178735061 773944110 534271656 761765188 561075508 621365104 486277306 918311481 473610904 713605292 761576412 921374755 344482577 469122909 845595866 942205330 811266514 820918866 924901973 971005352 687026599 704269809 387103560 655257552 598296908 956521807 27393390 30687691 88597520 978848906 514988268 928226408 398847431 660410374 651613635 803642874 573113776 630295070 231834701 955463077 893827793 944276321 737413554 967681289 352391946 942604707 763421198 917926324 35229177 98634949 970289540 978149514 743751933 959111243 970835118 982892038 698619517 847448462 701281553 862514114 329249512 399714482 35339571 624858179 297988376 347619680 965620207 973295411 23226882 179521943 697060607 720266841 809465455 880704788 677369884 686264463 179158235 533860230 597402027 685375640 851811876 912946059 411822293 702008834 673379388 955647238 492177809 670174348 726354608 796269505 739050148 808507977 231923843 420909159 49260843 775665394 70384855 838878096 956425116 958431326 625460174 900453205 599315007 648557855 408326294 898147174 737630478 837348148 611458266 766038966 272111978 365851226 257256116 600682197 502248115 598401635 251483644 518342318 738389885 850181537 702785092 928599531 224864992 806776131 110481364 565977078 962394071 999300926 205189541 796814726 31675550 434877370 84608262 451248675 527765230 986534509 93927398 907629633 244067115 506944956 58600164 690687764 750203259 854263224 311704348 739381817 141506354 849582396 871596157 909791039 258782458 858556098 223428065 836248047 129248636 758482177 734293681 983456854 791039817 842151000 890417185 928692805 431310157 896494227 636850455 911943009 559263606 767813039 419550415 921985811 180906844 466064259 850280158 969872470 782041890 800806518 622397787 636672847 914077398 944352415 647778716 949348181 27527910 113196751 952486368 987250953 744300247 950428672 999243497 999751790 867818286 935739316 263244240 388108874 180776312 328891789 200131739 907092040 689135880 793089803 97048497 673334636 931928045 985983211 419303586 951555022 330035195 420238656 212191602 950389361 646430290 824957096 527110162 802390523 250337891 919619808 860228770 905151811 476835394 788083842 657501155 800397015 598113510 614964232 685895866 896057383 171965570 527100539 185572016 859508636 940145240 981688087 107654362 659002933 957641501 998019185 595767736 877386855 291841732 451336237 663139978 966000637 273943987 368816695 693354194 762092543 689065159 757140857 373753012 901717719 271041468 502633107 401876358 857018671 73672124 777422788 238928598 259597201 426303358 546376116 155228785 331257472 920361303 970413679 303265808 655788694 800209544 905786978 301434004 867940998 218518317 396919990 154948273 630472307 528065677 959134136 352636298 519768604 809505935 956716411 31394484 362227024 736072382 974308396 971851736 972038900 721229803 751877558 682724168 867925918 16286875 137281240 832657713 991708273 426899443 574110096 436351295 438271934 788468143 820198846 251990208 595919529 380074983 839916525 939761441 972914214 249904186 642589659 729040659 967796694 48357267 426070318 94657960 688218603 673898882 875470111 42230067 309350684 419098950 455363306 459963374 939836775 613954326 783642743 92045900 657152503 632965613 898537704 500526174 854983687 344426152 611220736 763482978 775973337 648046641 973871952 418833018 465667641 787067055 992326061 55955172 529404643 627453745 911536687 520019974 667886130 585394800 985421825 499381271 878363145 461496961 571863403 561626442 667380447 608271857 948875043 864239671 910005951 403639136 453742368 560518859 923002921 801595889 835684520 714956552 754788196 183970155 476725542 878100810 981814583 933199086 939511742 967108941 991240860 63638879 376652424 492058896 609481199 710034127 853950940 797055665 809153519 664750689 955479697 270570774 710466749 449465140 903032935 633943164 808834791 591087233 929044506 40748735 746310438 368201999 742496331 906266463 986446043 473912246 765537385 418601915 479878982 728480212 815108526 791678147 948479432 274162810 684316320 601742162 661826514 459584618 880828640 723130411 906625285 663226184 778674587 221641767 384543760 67335053 300180847 716378135 817822248 324211796 700836895 237324419 953340396 94685542 242309879 646187161 947711299 437845650 475104049 404148999 452180442 644530018 656756584 303265025 971029838 792931347 904412206 379700247 838661338 421677068 924281074 692263282 872585155 798596644 988912569 179006649 405054714 893700159 952283586 102579177 135987845 602902318 685828273 604519996 988199717 74347362 278236075 148626127 706554210 630058751 903593450 362668340 468864132 981745715 997833320 967836480 989288526 90507700 545437338 877223031 965997462 274914306 980431310 75477849 479310093 516549366 693737689 671152476 911516641 462079422 879727263 546511026 782952797 693658884 881746685 201724174 545979614 472979066 982966381 697908385 821792252 449743042 492064219 284747153 529124583 882291482 983934064 847732841 944347792 78651829 263050986 159027157 770109071 709536933 907753558 220581821 801721262 637231764 821785315 999548947 999969545 564487187 816029792 301667307 853568868 791530472 806977967 376886279 629789006 617262400 839123828 804620630 818305304 176401134 618687341 592854517 642935010 467524407 496802483 521880691 717035931 173975580 566420292 311021265 766042676 766707294 996735968 624967516 783435798 489705035 585855584 667984260 897718629 646749145 713883316 142834119 149843612 40865227 805531916 111614962 260031266 655587411 868451609 133297632 161758316 186187323 631614744 39498692 394148328 878155054 992985972 725358829 796801220 281847767 940368364 849818048 864692860 775745952 879175015 879038088 956972061 250396951 914313097 201092806 602695409 395033600 719319283 336624926 523460671 260527762 988104785 693611883 935242039 542385249 914886484 342179628 702586147 13394516 713867345 94252524 176042031 34981271 437982192 461547619 571933491 819389312 835278379 57542252 920263761 452103287 841133830 319938114 928699927 997977987 998099054 390147134 899989810 748427366 753878284 766546734 953043860 529208606 900031085 378319293 417676531 502887051 677073586 135564023 891584012 495130793 864625573 508478534 870978305 992194874 996185978 426279215 538723996 748715846 971895947 932677253 956369878 913619129 949182597 466481795 601658194 399310268 427036783 6847143 922286084 964947483 991225616 829021034 856474426 327850989 641926751 406371192 659242728 975899680 987892806 601906707 933546944 296591482 733606774 28136577 140037971 943539620 973402110 180036803 455573632 335036208 471035660 434720027 776691386 132194955 812220291 605613522 789483371 336278878 875779510 785286024 909590099 414311439 529888017 883439398 933721144 325745483 356645970 985336961 995945033 265796119 799292262 960636621 986780864 130581322 395397191 554616846 953790368 787842019 953668830 210960440 219337912 471895991 901580574 294550544 536485688 65866932 597866913 457897547 711437520 558973104 798482160 932319819 983551343 106952325 512266317 628575289 910848976 577649607 616366128 35226905 407992009 53171126 590836794 124238452 439772685 190249222 387062162 126057122 488872201 57117403 672197837 980489816 987256024 234212553 484163400 558683698 835758014 403514190 933528367 792773957 891089075 602406613 800724478 576990264 701628044 147212619 242401495 175820259 947690441 224657544 844362657 969009074 996477637 653954482 873294177 534039706 804189214 9260311 509440527 524588952 790748592 627947076 728991529 110394864 834821895 366020924 853552196 11609282 22615398 459967764 985434174 555269012 759077351 938515081 958923296 366118818 720019168 118885667 596687734 30884653 436576923 600535817 962781331 50330781 891809494 184141256 284381977 139062833 988159256 270770194 492092200 483260374 794243926 70568451 619060748 97528175 913375791 179098148 582167250 224022055 833787675 226238960 600889117 177901450 958887873 607247340 608886925 564458883 866143612 280222790 592155012 822872269 888980321 405769900 859397088 382844466 443259949 675608631 828769961 121022516 230319177 373895367 896019833 195227694 434954563 793499180 827492451 544904406 964117559 310272103 971852075 949478497 983676131 99265260 453681986 327327293 408000086 467497986 698713948 587358092 664780490 207643721 907875684 928712621 956882659 290431444 814350290 574587781 922148507 351103838 696153838 213494530 334440708 229608330 348562260 497287407 733014217 855905427 925932947 907710435 994245486 954459684 966845052 25280641 642756726 827123554 932887289 282224514 430906226 930133110 988749094 847975723 859052246 560590383 566160680 447550204 479193634 43723310 672853121 832545067 850127494 929176298 990697047 738470820 982335433 243737108 376099955 335352660 857809771 72683891 415833310 814137064 872837310 638558354 644209779 793763325 984769946 288694071 529256368 96919350 195666276 652394561 719783192 309935779 999411632 813701101 858183362 314733196 528733576 218257906 277905685 474767191 618875599 31531485 169514063 403562219 625032595 329442272 754995835 824956014 965650730 744644516 856428271 474087410 515750556 977237777 984561264 183526991 244930993 690622276 980486623 24449502 397090634 94237497 238226072 120028490 936405927 204026688 767867361 488423478 878675305 58747735 91613630 773049867 845656563 843427107 925454022 538328323 586159178 330204919 819878678 541032253 703346216 43246416 719062893 8186050 594174466 437350942 627887623 669637697 850295308 183679591 609699596 633355010 931559887 748639073 893029339 695542147 797208349 702267355 796908519 791965532 948092248 193832315 340641516 116278171 462750607 493607239 550948788 749295404 997067334 642700443 754553639 185916071 304313801 600924097 869242593 950685726 966996753 919500522 999376812 277690823 990682377 994728790 997059446 469747364 925442843 909972193 991601761 197409702 511659895 359806162 925696390 416975138 574111289 945137055 983242046 525896637 767574273 546542030 934434395 36520505 125166351 753499979 964506178 836990389 970837445 189351705 623935852 898287879 933546111 853609165 891257284 749652417 760581719 972556354 991240237 571365120 965518526 184391878 741685153 533285470 796843371 462716129 750998441 986776811 997911884 245343143 414780082 106705927 304000297 218222754 903690883 343142037 670352976 34483057 973463393 279447922 498037823 941079445 944300691 975014855 976459455 984340860 997618839 939458354 977829049 830210211 976908992 401656151 820729183 569470444 917480819 2537078 574990401 24688180 994950244 85240822 323189769 723921144 907030627 465173849 959444499 893627863 913500144 169652566 788162265 793400872 961845809 38505483 201204122 36085107 667051936 825042767 916800097 194754983 214529276 16542888 656145643 501025733 933788492 195310610 605391483 200615106 599649335 295927062 827930486 834789037 957216592 36650943 401527480 765705483 872207740 509217881 703798010 25525650 636245554 477456624 603745176 203083116 762771977 974593250 991654005 878800570 950725360 194297062 809049604 368541503 761167316 810772317 893752229 307190401 594553139 600134536 608079185 594452242 741434985 290258915 816390582 228089686 650871720 440283163 715057317 392235408 525647933 767996079 787821290 762757943 841831752 633960427 857967915 917886284 949945629 971287105 978929802 220989715 394967023 196886688 919820012 391384627 603276947 432355370 900698037 360226772 945406080 805106750 974591111 322275912 431646049 581071115 893563739 278700555 724160242 666071385 724865183 268717350 293346896 395806035 721080752 685405086 716961685 701270741 775419235 327598082 754648208 884994516 969013396 597124912 941090904 880976763 945230781 192545928 967513048 709927032 946619349 989863806 996874550 222092136 858796156 203899046 461402835 524203258 559401236 659942566 829125116 938664249 960789184 16537088 35287193 408498677 707177771 539514554 952290579 978347606 980169686 588533797 641907032 232468461 260194687 886025255 903117700 347567558 586173027 69717209 942023863 867641119 919471954 334303057 389627188 348870533 657748084 184532043 577284997 950091488 967694594 808235976 840838513 145682206 409272607 396030266 622228483 708320333 988314802 210639921 367661955 578084924 677642559 695672418 994411249 327158818 599718426 75763732 105651787 240069007 884242594 710398065 727685780 395440532 633726081 537929494 874271737 819276159 834680046 330538717 643393719 562879035 815099299 777605396 927648925 209438875 550379214 922069316 959616374 439331032 629804766 457571007 650585308 15725175 737132161 209992276 624551854 556243077 597065037 62092991 645476849 530579042 622314660 706791235 770427126 508594626 829374845 533471808 950700386 169022616 352397359 701216384 924132576 481382425 746319402 762281915 892338596 391506242 498093590 224969884 887361821 782776113 988685407 554740224 628764547 460064869 682743285 767333456 779601572 829134085 912846768 66256107 379388257 979788462 982472597 117987469 408033638 617895876 899844056 436458163 512810164 926394492 977462234 209779795 583907541 672206153 793245320 578301191 588523946 606000418 988782876 448840957 792174007 288399821 853110657 939136816 965310623 157545814 838635269 416493327 690497301 69777456 732526025 512905845 759895743 599576807 767602306 776973433 790564727 52210731 804544008 810275770 837259559 186144419 275415928 154909764 316426696 727355430 801982288 341319221 702917231 851429854 905015631 877383722 994370141 678421434 769303122 686250637 709531981 363799894 614692200 361987776 420258250 22104324 703654520 483343551 848069041 184066827 926286569 757377443 766039067 605287946 959845148 309966525 731370255 435536156 893866633 672522967 910653712 858767941 862327259 392154043 593253518 135902484 432954876 331280380 642430935 844717365 921864539 170605893 892741820 7756850 519838183 414412157 707130586 577957221 800101698 11131153 87885145 653373649 809028935 351069989 578914473 965702867 969130874 644179263 745705027 274579891 299676947 612710804 871783765 278335257 582449952 971402282 992362207 99656641 702495099 992387781 998963477 63355420 684365289 68384967 972586795 917682775 971594297 128399951 139405049 978067045 992497776 650169503 821036584 510471379 579823910 958251009 996348572 157861989 979785693 656958023 989670044 72170934 971027592 898742463 958870582 838073747 886062131 892602147 966761378 449003703 731507511 243951882 328103428 700146010 841574988 187786691 777335213 26670900 269535665 401783632 823888007 998004656 998246823 302574794 678427441 916501530 954014682 203204154 533536436 505524073 735929076 568402083 760376373 54317557 547259165 298097208 491221114 507314815 944716106 84798126 825325418 463165779 881289908 86820455 899055235 881966739 906570091 892587866 911658892 489258894 869353564 440390658 445945298 966720733 988601129 29854842 272500438 256806982 849046673 772126208 947137447 821326464 928369277 848802689 901616120 125174088 907054593 980119563 990998175 581822822 952630212 634937902 936704935 433209162 581636219 393763630 513488051 773199890 799588885 65904687 241405693 159388195 478844428 256866544 480331872 521598394 947194690 271331687 855523787 997848248 999032924 861572982 997537239 827488300 893980286 527416671 939712902 758390772 960158799 606323055 653425724 484765912 683973274 678897874 946546898 79107057 506167353 835646319 965223522 210872023 431615756 103622222 213392810 289159189 489760132 964048086 976779562 69209746 158860042 47915135 988963846 524790458 559809476 228356934 898490544 237714685 900511583 316238344 609068499 445098995 724043963 460496782 917412718 147785883 687163160 953584537 972001653 64006526 244554139 64220738 78970102 803358431 864755965 146420320 647664872 395331950 531556356 400884412 452793242 784628604 802958103 148969573 169966316 61133758 921677538 511665928 518598854 568952246 821323155 486921423 962283814 722969332 848817560 61755229 296996881 802994384 816616078 903440948 926261428 445644381 689335992 499865219 587510332 845241241 974063235 110733312 879905491 370781880 921288043 541437986 557110397 788584885 898306263 74177935 866557921 938794666 964200713 128247561 614257588 263536529 866093087 555098365 917983270 968178602 991162589 199038101 592025816 459154223 718544871 20271631 606494870 969789472 974191904 898373228 924496117 58399404 158956623 118276606 573002564 222114365 947101025 990468534 993582548 469321644 808245462 801048531 807509052 571968180 731240266 942650620 954240169 842524559 892054542 633294252 973699129 337931385 876187716 456856643 577741671 981687256 983449646 92383006 318779363 717811890 750483951 994914248 994962541 89809276 413796670 721284137 949435434 617763640 853329106 427516155 694335250 823646874 918152883 581523592 977129077 196539773 574730863 592681863 793881264 704957413 827151006 386195474 894652327 10112707 911395227 554015287 878030165 148803906 925105026 933188461 999123666 990892916 995101630 457888173 664663191 752259410 975890850 167381706 810966448 450729570 790347910 143522278 790157032 364278156 676074185 734101967 972135480 307036685 712248257 598980997 692195138 388434614 607099549 677439647 777794188 189293357 414250298 348072430 832834609 155157623 968905058 146355230 310367707 267859280 360547018 533379253 772083157 591776260 960795690 654833511 764487417 787770259 995581713 248182348 557896840 410116852 482809939 210198000 503732388 358406897 780449037 932702501 942078535 251708653 951736006 217690455 814890012 649800592 783038724 121028328 499065603 225051670 340930330 511593137 548504963 670049173 801868086 947148309 951487636 622880347 837747712 634182416 712798579 199614352 406455437 258514569 675410977 758677506 810582307 720527589 766651307 854663257 989232136 127439827 900205760 993921711 999249802 773056550 833282240 760016713 803658762 473722921 887755710 769764632 882769221 945418191 985891483 622948160 898834927 960668482 962102125 835836348 863518347 714311652 924344582 592309861 866699292 13157867 68349363 310824136 454923942 796720357 903513300 936715465 998558679 746447077 846860337 845576393 858800823 473768110 866674026 677535421 773247393 289763976 627560425 778722364 941751886 823731647 832475593 24891930 928567998 132794068 256243511 660994248 919189268 643233253 753066749 336657211 405616167 280958590 335655440 816356047 921453145 336080038 455246902 253571785 902994816 136207090 631471202 176592536 641445374 633839130 952411338 912640825 927244150 461101899 810387651 496798290 682081497 728352438 769649788 721666426 925610897 303764032 967550186 785285066 864998122 391259554 921329069 106393830 613119040 417655116 806735525 986391239 988378432 811430735 816855618 222026102 529527982 333550188 653036999 106299827 773361135 935195766 955674179 87023694 596538986 482593672 642774228 384787069 626950877 268976238 984480533 39229346 832210035 934694673 939848860 33283158 714858335 284825816 847702562 955665482 995030769 769884352 862928497 307600681 688273079 879144735 977792824 502815038 927702020 29164141 753461748 842647475 867382491 945002900 952617619 473417714 775771745 3636266 505410076 896935164 905062210 355426848 475019382 274627928 711940008 263860182 698330208 324161224 802108221 352336608 382437699 410024530 824221279 242435868 858818798 521020347 963884700 43886752 519162637 185870893 851767096 427441881 656689543 895556599 999413136 215361195 896391179 479419921 791597392 192684946 737019477 252819703 617126162 482432208 637818173 950615671 952492306 988384888 991581814 37999684 800407727 310066942 397417276 861042189 975907465 24140101 410780913 12954445 855790923 403536332 577969772 585830022 658755273 266293566 360546467 154903068 793216877 446493227 986894825 765780749 784176157 168647870 452585259 287116765 390278202 707027359 884326610 16367258 684045334 496604221 693533262 135461118 773738154 604759784 629757677 526959149 844549158 384741750 438425150 18565499 22480928 425860667 964112269 998016148 998820633 191731085 236728981 800559227 880440581 594423671 997805540 402342887 859942578 462562378 708986768 932770853 941960120 233918268 928446750 830694002 833281895 748086887 894086188 883788774 922181500 416255987 752831413 56759498 214127591 64142210 78536654 59146018 212775294 527801575 685778890 245806293 556326596 832476992 996547351 872701112 985341038 540506122 854057556 777780593 985095199 914801483 922065025 95772410 275985207 694085870 981371858 418365523 796434107 909370094 931110141 698570030 930239629 114784782 443158262 450690825 553780024 600945025 706510657 938693533 976109305 768478342 887010951 938055513 947027615 956092418 960308393 687749197 765376785 32717075 577554236 834541083 898924431 57256720 638066637 776186396 798079006 457208168 829785942 446671431 750978305 475885040 693730166 689906769 912438215 681950064 786121361 136329682 721456996 315774495 898221251 842184336 857850152 834382047 969331726 952160710 965416003 317196663 528414994 620449546 806088635 620862974 715702649 250124993 890567097 704318094 772021477 655270991 984456297 338364352 727670719 905725973 970940119 589161062 899429356 604495041 947272851 201616641 282205860 346336482 531571995 524203437 929324989 309314708 559431952 609466037 711207354 973181585 984964990 507732994 969643304 308754398 913626547 182160550 791201335 558564507 792854170 581398528 702754319 813742293 899266643 450647853 994805635 201487997 908802931 996388318 999364689 16879182 749793125 373938848 653543525 250833375 832663998 908403038 971115606 565763356 702462748 919185049 971806642 101390268 973600973 689643901 869196238 635307413 766988278 204160830 756764987 857802163 983693846 581952314 704971331 916830443 989272977 943362101 983777563 442501452 656581845 639612278 861059799 983940528 986358417 971257145 990519896 590149207 964286851 888113565 981663855 126614749 531429164 424432723 697323266 572956955 720772645 307825444 878895661 931739316 964383221 178004071 472373636 660895925 721313851 346872764 428445514 521015907 756676545 630262219 637002187 770366705 786168561 910463793 979218061 166872183 662019257 980288536 995673783 3578469 773977203 905152984 940256720 157451013 801681013 858802887 969727452 373046760 720495699 471830301 976458044 368756757 899021961 940647137 944640182 39052983 328071241 240886490 582820526 484281064 498035876 940591234 977435822 956704942 977031879 886337804 918362383 225556302 657636748 402873050 954984418 746537382 779121196 432731468 820596913 820440703 953874256 980997662 991537492 363502575 768193216 476732435 664924905 891533760 965520296 487828439 973042733 951020789 984675075 854774704 935537852 672831643 903322134 663620281 978287555 642305169 751390670 740366157 843118992 472748664 527404369 916242689 928134267 173090545 825383776 959519045 989724657 735535440 961402784 273785426 838750279 807214708 827381426 451395895 737712438 473416920 579448130 731491959 793425793 891003661 898156110 202810889 549205982 566573118 727508255 785257263 941117526 567226734 832644024 352508432 441092635 770421687 996574764 630750642 993930940 30728497 306334863 72257943 525681569 43376013 540437563 734360320 835463910 722129568 827772227 301975247 633061809 11368471 748104118 974210326 989820220 222391347 364078605 430558153 993787170 470394395 851306875 388295684 925892323 496323053 730742255 636367767 875945992 267555983 280386283 285121898 685248648 377046038 756606191 372450578 726380403 247470923 374476411 17894325 691567935 632621395 802318448 666364353 993543773 935033691 966017176 164262795 755513277 176880843 802741615 260133667 742719849 628768310 787260021 812060465 885110216 476777836 629561611 786755122 890933771 101322423 883276201 531056820 545133448 414644347 599622745 232823075 255427941 288661342 603007995 604115594 817883721 264158735 863637455 449015462 894698638 458618246 782105218 143665572 702463332 722241290 986540761 283660485 923251064 34482606 146474192 897788893 909996583 384618692 861193959 483885869 817646309 958044497 985959225 829324430 857526248 150698165 501095965 856088846 997435203 871709955 927922053 635839130 761417934 175334604 201107351 594222052 851877578 979985118 994202512 473037491 586262806 915729048 926093509 967795357 977904507 466666391 832107298 332967635 665834214 502250545 982570464 354759592 493803837 827611455 961369391 161475518 246418945 559087058 741889514 162678126 726987241 861913954 955204665 832545759 937623083 207290824 717606473 60029705 180638537 404164492 854843641 653055805 886813828 641120888 777668070 223303856 583696741 448232286 718555991 368974965 780759529 494213744 598993240 827835196 876551390 381514082 936750850 274056798 671796699 616622676 970952570 302082142 378940783 75599902 676800322 257447750 392247890 418515338 897083280 485329064 653999912 412827921 574448365 529102290 879815750 641881019 757428979 921459600 936993200 751116230 901501771 679452087 708992769 772246963 931732049 464069371 882947961 153084039 814461271 95050558 98377427 294321221 841335005 866804950 872201029 783921699 887704245 483727514 505779030 896412686 966695599 169374680 647940305 531057963 950575876 390888650 583425599 157792075 573201306 588597151 986739575 646250951 784216904 41515839 612911511 814176207 955998931 991296154 991888079 887744954 939477235 662528592 861991735 985691648 994024839 785655115 968028061 207724959 891794449 988473501 993419428 598268757 926409920 174504813 501401460 490008861 940994443 21425602 301918787 695517348 794914549 912350653 963026606 74390138 585552801 431507493 481295955 738488932 782240158 44959060 231306031 63042358 588794007 390329018 521007549 552147188 640143256 594299114 594620526 745321673 874915374 90711886 117069262 644501746 765902366 492246215 853839797 946280653 978880420 824324645 950616323 291799513 752131298 594504481 789887441 537754916 589052641 344602520 962531061 891663507 937955263 862101244 998958937 75434017 912431397 834443003 894360496 69561722 697737282 983510447 986395281 993224597 998018853 955779845 990424399 774803896 980024212 488983435 803799763 935708339 975494117 558346793 851384680 764159051 853194867 88106341 949652445 561184554 747761118 567684989 798971500 931279524 986652037 585542876 799776092 529148247 591756934 559381327 613343897 128152726 979005072 45940082 877276887 428414137 855706824 713113901 856810940 13121711 143439723 450500101 515575539 708680607 738564788 571318852 872954658 855207854 969154796 863886113 936582567 940760505 961262769 463476989 879679674 945866473 960464441 186290101 427187149 660304395 949245782 130430151 250314809 295522732 658013318 643388271 900566041 958959036 976285364 225540562 889266066 973492518 982448279 486736932 487580599 490942836 670446460 853527630 871352966 295707287 968704391 881696821 897818509 770306852 857462062 462285376 486366612 427537702 537206424 582972712 898406960 126364524 315124728 390849469 690083342 116355126 140701594 205456807 672317758 995526763 995618677 357977304 529427970 179961964 556543685 903367670 936642529 930361690 946292102 736461034 958898430 852172060 979846733 609978934 844822611 754160215 948123125 536501168 588137302 607350701 806271845 792206141 842718282 405373509 983213808 712259818 861301435 778326099 957387322 199898811 669492215 917522696 979232445 28192956 303753116 745521242 775128681 458001563 839093256 393508706 806002626 910558759 919417849 253833337 317174053 919784294 922687229 539543319 593129418 282500372 670877961 894822522 896925266 843454988 854688853 451973570 501535443 96982081 536894253 74353210 942272722 348863489 686902872 367855619 751552870 807893577 983046163 104637651 646375432 276506885 919766323 527472850 579056660 674699286 868551804 243286204 878269129 205965270 547753050 323872750 780779130 239423989 414904968 387774891 944047314 855827409 948398181 842364410 846564684 890523959 994295839 116222592 824414892 865433197 955679535 525594531 624560630 437499185 664747739 369831509 538263647 601677121 789724660 976096841 986809308 613560610 905513944 910230927 914485510 89111978 742893161 84154574 917220089 739791093 956627149 274320214 729187218 708867276 721121213 338447475 381811801 715922349 789171538 377642825 645572886 414447709 448631858 715374445 716530889 546135792 753761015 549164010 728406859 524775290 906376989 400520886 419347548 751531504 775432234 325956294 474020203 933049676 958390970 817260926 969804172 272199289 651431180 708492574 803201722 580242431 845724296 308699466 600263234 71709385 894963149 409504412 976375000 910412177 938408386 693994272 978349781 483876577 727683672 661532734 853921925 77136984 571856981 374899726 547030784 71929912 103451764 943282015 981756611 889196509 975789843 115046579 989051547 304078731 438219310 209282768 345653842 397734705 969395088 221354375 454059773 962106928 971119817 448498956 477524418 241683971 589281062 283619567 818817152 246322384 544036485 757851258 789703986 454579919 775530077 13534987 30207109 598766086 792839202 236479188 403870373 387358879 699472500 358803410 461895585 527335224 937673064 233303088 635885315 934617343 961531835 61717116 478283402 494677838 892405373 692209829 790138230 140842289 835277062 769709920 933996227 318282696 731856197 561992005 863511676 775556119 804320362 256320250 372711742 666065070 729384295 493486730 614543100 522184313 531070321 167354478 721022793 576400602 847788401 557571863 981603891 834189141 848943156 522760643 596529940 982185616 997300291 897453658 914658924 412202227 642556783 791564579 816692312 527955560 829653386 699482405 986166510 482860541 603774035 229594564 641898675 638792599 696787036 577706604 835199301 599977779 969161507 722129948 770186941 773798278 944052334 719136786 934575484 422519092 479407269 642743972 835434029 838499260 952131647 765751070 899916089 835216772 908586335 463666396 961740772 260254866 473214283 812430362 961186807 827760580 930827883 282595186 530582987 417386079 996530172 942280524 995502570 538676501 798756885 844412693 948197276 993863694 997330185 633006265 904806075 733379827 773000795 631690361 830279587 851532491 969326604 939259313 959865710 272188654 627396444 301373578 467772611 52100997 681583858 67448091 239567350 146487995 518288763 515956691 856390442 703050757 954211334 432987753 868302145 835238659 974502544 395483439 450387249 523173151 759087707 662150305 979720126 552470619 738212285 840144626 900873010 657693906 868910222 87894623 665287759 254614393 816456821 375377543 969752885 62060213 391095506 783037718 838362316 13535689 426306092 229995657 810807126 252126775 507277775 161822108 727971805 679789258 718386882 607018372 747392390 910779366 955231026 867345976 919492582 568384515 651454170 763712430 985746353 943711539 958744139 943004184 985149177 942647701 978697036 147988195 448113180 150481526 437639233 56540430 349863507 204815298 550310179 763571334 976899750 299797488 331271751 833675169 955286485 344295148 408997831 758684264 807996059 685903757 968835892 425452237 776703320 898203804 956521637 880357217 934851567 942940691 969576219 110877360 840268262 778487494 921799415 704179851 990841788 575698176 674054486 141368245 224946387 535390814 668581572 647932173 851570172 145154387 274084211 290261100 562321614 684486252 800735667 606069426 673747764 282665359 857889674 32194067 247160270 991788689 993664887 897740922 922600102 985536236 987463855 428250094 755043685 504359569 923214821 985575142 985856839 613802282 788454188 355191704 456332999 455592042 859774575 648156522 949660695 11988336 413808175 119546543 667721976 863615859 946640839 2788129 168029345 331946092 829381793 557789924 911919596 295976105 881576453 484675804 951954934 14112090 323323339 80650014 365105304 764649328 853742294 102261428 873193976 752862988 995457083 285205066 336731048 125491471 594148005 465458897 670363404 754375911 797491389 809388218 939104864 735519468 758581791 354662309 742163583 436806975 544237612 17995305 580220085 511317692 672812585 219979822 456282637 346820688 943314924 559424062 635094228 653221657 687231966 174431206 221132673 187385330 365679185 443223322 679589847 369998477 678262887 193172301 288902377 187251983 881090742 274379593 387392453 516755109 685944904 615882528 695143975 837229813 838108587 7979415 815386887 770282677 858542194 941262897 962504620 235126354 430369061 924557410 978543029 925131191 940430239 90897173 965292715 25884259 836400754 530308220 987923168 48133796 146707654 98498879 620383193 112201553 983842774 128155616 567325102 448362358 718132502 641055687 695534650 139129857 970975617 832703438 923741264 420992800 667144999 419327837 940172780 93626670 557578178 982036921 994071020 228797941 588604454 131386638 271691039 673912198 723687354 61913395 325073878 5553698 756019962 611570808 822442006 904321688 986367030 98126198 267849810 246481302 573827399 476149609 531838348 331141091 637135422 533440765 969310747 558904854 762782397 766151147 903683839 732855670 917365096 869501891 913297462 594532174 801436072 953919326 975711083 853732112 972633051 896428288 976051463 343953165 503727471 437406024 889676824 258946682 786094829 157437576 573256655 933590180 941145811 114917267 196524572 381588348 603920336 992836393 993523172 83486453 542091730 452941325 626736120 406549346 854635712 178791170 679750101 512547238 591822340 43873986 861907118 785618654 943744444 677493557 927483298 734211914 944532472 824016143 873633866 193468083 349997066 136781794 764466476 871986696 994708218 384046182 466505563 652037297 740666190 567523717 703549408 988232755 995877491 77779214 147131149 49174559 718212400 455036074 688478651 80854377 240082696 266466037 853804636 325721837 366055270 962585430 985179960 176540742 739459125 697863821 814570448 586642023 668980106 716410942 881194622 296507565 698738422 702310390 896893250 786833153 836021589 870286280 900233127 316158973 954083003 698841896 843257940 554580056 641987970 913702691 957940817 94912352 808676785 627879269 738799880 326928314 416191751 669894971 800770837 766153439 897856671 260103960 358098633 314296938 575537207 995478678 998793544 69388247 292608892 270396929 778328423 398431070 448552487 69776465 524148395 952883127 969303426 6993266 787149836 18238799 614017375 329710999 758942341 752433186 876148339 72066942 662454965 158636680 807153830 420952401 825734211 19774386 974231164 16485501 696500643 931327265 963164696 664322317 691209595 917774521 968779705 925399345 977748788 167119154 290704956 848913357 856248270 693487809 967624890 395660130 955924723 902565267 935500473 565789195 944817897 393795719 853765404 640246309 955286763 612930839 842560217 294014611 729773860 532248946 844442776 820209196 848262902 527890656 580370122 420066638 806304519 581191247 732709368 265738834 480590035 251433129 284455947 31706191 702005937 579285403 946728284 961719743 981349616 187688587 534113267 408100315 768890054 46466362 196940813 908206896 939368230 529865245 560318799 789752204 954636056 409510738 520155942 722095299 881271563 255361160 837522252 170946527 444602378 53138663 833755538 491372998 780243272 239180412 390581159 760413613 945322518 186469487 951257204 893713918 933310771 693047304 994561934 592283907 829944513 472729133 542329784 444333675 725017884 249459737 476080342 217340397 368044751 732062766 756030822 948515976 994612510 4738204 169750348 540067606 593972587 33899586 777756993 370508723 800074814 369976637 674966420 922513478 941378647 796080128 997274298 533226549 855554080 834787898 840129549 300958335 981704661 502216315 631438728 780649667 914579933 841986392 847630390 684906842 927378029 149467558 214570310 143020298 964913307 7473718 919332229 526403089 832613442 407163591 971113686 356538126 881953201 928114379 979709313 635077964 636663118 85230831 531369668 649521914 987990740 239750681 980155556 496787071 640083013 647097007 726755801 498563413 811952895 426661240 487355195 415812626 675098037 446515108 921862481 794249131 885769950 97595703 787554749 26045279 106008992 401848909 801478844 346736105 596054930 693182863 922865906 598506380 609040898 484579925 837440971 878676552 993155326 712906177 800241271 819917176 848171576 422356880 662308334 463150762 791329418 744607625 944444245 880270938 898351040 11952705 926012798 800618593 959357628 700845091 836162008 709493483 766048226 301084903 984197019 958120891 963615080 682354075 743497524 176685686 572996986 444570255 512657546 74268213 110385946 760892816 966676077 763886949 899377571 287538071 564956907 517110293 560933099 980056215 998202755 642515740 704733451 490617077 982321765 142550632 678321269 503584028 614394620 960218708 978477171 792363618 912367546 38762391 345905080 207331772 971514303 861150860 922450563 831451312 976806848 755981500 765621116 79603666 723641897 42258050 494878607 312218525 435953428 486734708 704151528 6362038 797948688 779916776 853870352 845799952 978246688 614265661 816534215 34191952 883577912 300329137 833015654 858577499 917379529 104772816 266998345 231050541 597721641 113711558 970676778 202293825 305316022 435675412 880494468 302706434 985298526 319333828 510456259 838431395 937962643 813460967 916951732 519620331 535147522 128839927 814574090 486057773 518474577 186148724 458934539 736348762 745539552 260185417 695850162 560658850 636728350 476156537 841289823 562300963 570359757 431646964 740791528 34954659 40231848 855812422 876132754 465100483 509638744 649142581 783033164 655949317 753418343 247764055 994292822 854509043 936230081 224822096 439886969 207844618 355695909 654523191 957104268 169804380 419186226 307633679 768471386 915111913 929976092 500037824 851220284 56291781 348762538 964762166 986950538 685016097 759590442 817184628 822606389 616985445 714009402 35368885 546865949 420789671 912610697 434608064 675732891 142075138 830821123 323310021 550379212 537615037 796963680 909026612 983979527 705467203 831227257 288663030 306415098 447554044 693520425 259588395 754835802 796931269 807894941 50151717 948769834 571649346 971464404 290635967 525501257 958688574 991090372 899973029 994607185 441254064 449020229 43217964 628362694 878136626 957263463 471466734 566779432 511752502 885891916 347426517 903605310 87053966 723140173 386288881 611189456 130900751 668478809 774926168 987850614 439894585 749487689 738309087 797408974 634896295 787817035 597181055 650497175 513623320 635821344 935784737 985589431 387667166 879715452 984472609 990617545 36830440 104237337 207213490 248343806 527878375 767332450 668198245 806871091 38059818 431621852 122997396 807268099 291186990 321451093 317328681 933764988 389646459 582297586 903354055 930043099 216764075 605547740 941283564 980024197 415482678 483902969 822101148 971262722 294066933 741843495 104032703 796747538 761789236 863253795 277048033 755146928 195064199 750595087 862685176 988381582 179698743 391006590 707040781 892229255 688108000 726148802 15852494 928717520 25201859 330400098 178806581 361258694 289356052 470964899 569931257 898827782 446327115 819193160 600294443 698220224 312173385 483799899 548358400 731460711 970972402 988070692 804835636 886342596 913293831 991212467 552256787 836386746 43008413 373239668 716330572 955337373 813459582 981886825 342091410 406616466 806513551 988908163 790298934 920624528 163214446 801211616 698446603 878198308 159919335 899475519 602744002 675039768 595614073 731316806 291303261 537092154 239761435 966999788 928077828 955573350 930088239 994645627 446071348 841441352 651175949 833534281 213986866 312727974 658537790 676873554 67849091 810835245 522229516 768602179 564526872 967952786 204742228 699195649 658789857 821288636 894768112 939228955 937242724 953427344 809221026 869922200 725873430 746385227 779041389 911428886 506959336 959885247 37001420 821325123 999253578 999821548 784580577 813622101 189066042 782153354 491845410 559517419 230067757 252790836 41921104 663914327 89814465 578862358 130631416 157506672 275107756 411133219 732993737 923987789 276837488 789912751 468171424 784955422 367416987 979313401 207997153 411740180 25812639 335216347 984883309 994676805 142460754 727054719 945683040 979056197 569112274 773725202 56269621 439584933 485082464 946394172 4815694 350338955 68573600 800999918 661654027 887256165 910700729 948920953 23267398 159962294 480618961 947646487 275984848 330110337 944481293 969280239 594738221 598813732 499449175 803922645 188550703 385562655 616107869 850785548 885731953 913644097 860761792 963506595 881582775 904203393 653792073 980667674 546244731 817475945 972929180 998366545 598642453 643735187 320352861 509173954 318628168 820580007 572887732 954915372 413009569 932966577 314984801 972357845 5573479 825796338 919787375 940869652 373800105 611086597 514868316 817553458 47435131 991783913 805284784 898977620 380554753 877183315 974589991 998700268 788108300 888696245 591475214 657586526 497464786 843808310 413697665 529213593 833478142 965074138 306678544 637463697 73040196 365835508 737425457 945569764 482998451 740149441 734763171 783448091 635915514 690621102 207327384 536258537 492582920 875642260 485447634 590653161 474777543 524078109 609831754 990249492 958503074 982698095 338206319 601323650 469701753 881149081 457745824 929910002 484971780 729595260 11297972 288033873 267210060 870358355 116801886 670390864 600423946 904185627 956724747 979626229 12938623 265531946 705606387 778107712 292157856 877495566 815025599 982204422 747583722 793507588 650682325 807116500 644640653 681355600 958530991 989008104 851892251 941706249 463541696 926314339 45979893 979889571 934610615 947905587 137631755 648877019 301175634 510955165 110958881 390770202 537848323 582129787 501950354 748264949 457859589 657858247 119592823 218354075 483999573 671694951 465847466 901542086 20801560 558121354 678857398 689691847 678335165 916236836 853518496 942064008 489312827 765369824 33670142 367482870 924393950 986250920 636920799 838391068 185670097 937968951 755156975 862663913 520953495 776518500 842382941 892935530 82056046 924923143 663127095 671540247 401668700 841324667 381304644 843509279 107279535 642157906 683569171 753273834 113710486 143948180 861535500 873279654 167089189 369624372 263634237 396039627 650492246 914149767 421715736 808451110 649506101 751340870 191206555 789280095 126482226 633122482 306798361 465979759 387832080 914170581 597389218 781348864 406084140 665875521 736180096 800497606 805093170 897031344 684905665 997434110 599944184 853545533 634913323 792953341 623090962 834518110 610916414 844275366 66322633 597306057 202499178 247679554 895540581 917646119 567549308 902073934 175149151 351493711 202730701 782528630 188308550 306347161 938250017 967125444 436794653 585345709 784904472 823787319 348488867 806693170 1712755 255469503 257008178 364972828 299615285 821834748 410626106 445242888 888074858 938063668 972411136 991034450 149053799 847009586 301820490 772622107 263137723 350198404 39218788 397308243 551217802 630651079 54365417 228798876 775280761 830245320 366752266 471952144 857652734 976521838 949500129 968397218 363141394 554999075 567851683 976844040 893323778 950360701 565518632 974645144 888044955 936186577 633353178 878849024 285493056 531231037 613804421 899858938 762520808 881966824 544722793 979047385 491221358 884960914 189039246 745151964 651908129 953925864 299251306 532772399 977498409 978228107 184870609 578893118 766558640 796381187 291658109 664609874 918953298 998338443 712450380 947887486 865819472 965822382 231907256 953091859 172965400 813375044 924605516 991097307 949458343 959729824 763670708 933408927 248306281 644730999 376352287 581533211 4235552 862237742 426141414 936997773 208462800 635524804 571128875 581613104 825790475 962889542 640267378 642295173 772542203 865287123 249100841 869140318 119317802 339966558 422085732 987464866 938799799 978483906 49112662 260801104 625924204 980937896 758685642 865514154 514042249 933908872 195578728 311430536 818860124 883985231 848889753 932142111 618283266 785370339 410230676 814709653 460140438 842416674 346565455 564636277 454598958 720530602 548556512 787105962 459088852 873486850 391114647 773455697 293521045 297624816 104455172 981017321 383602890 974157237 130494153 924926021 547494366 918598195 276506024 419019205 293318454 761471565 787224575 979046125 203530670 728697353 420524636 582564113 986175733 994631494 309096773 505828755 72697 227035690 497806394 695226705 343807225 450060453 291293640 454532195 178279691 929234298 545262088 932394374 659532565 722114594 267083261 279074933 153425746 769551231 955796060 998923066 55390401 228922684 29626704 654063525 679783635 735562706 172398605 214492608 868304391 972976135 359480999 655175718 316617582 518249611 369061295 569256405 326617470 956535044 559419104 650374839 326993403 734507318 324131423 984859597 805888759 848686508 469148638 600006167 138316413 286007348 754383622 948131836 661780165 841154785 203116016 609770162 120237696 303484131 668233319 951851141 813603505 920630089 360955019 816207815 569532716 665281629 693600245 812207854 955561756 977041601 309004884 847836223 2236667 355258672 482319952 867899060 995889808 996686089 211061422 856400059 64994218 153487690 444772603 783902310 771616414 950418981 515563949 659971220 552467695 828420377 469398444 565504601 377199674 395578711 640642077 934822494 99511566 687590653 838091883 960395186 569428464 660417251 154895101 679700673 640264814 861233502 471776267 831385146 437607989 508076626 839319362 848327412 370863563 553101604 117839840 251285407 750878206 940095146 878185964 951008874 156893596 196746541 661622623 789374906 272562171 953513001 256272583 971645736 187102457 368375674 253765267 783282749 630580206 679106836 383524196 857173600 866463816 924512830 925986306 963715262 588363975 919193638 587277300 928587487 935763172 936044729 420151156 799840965 434746810 516826719 417312203 430065926 573067822 635462229 268104493 907237330 432462757 975533286 840934093 859137504 711774219 935300968 494470082 799861874 266577782 933689524 147013646 456543453 244433816 293233437 285338009 787559674 731744463 975230448 748504562 977790261 562250963 766575666 304298444 342197278 897724390 994182409 501734609 622111183 132956509 482941841 794298160 874341037 615825950 819908352 869403944 909766331 366158253 538455908 797867041 897805426 43317101 171024058 98720804 290700198 441628329 897924715 860287311 863704307 330680968 468933802 562499371 585852455 930386553 953970998 503843470 775226741 850876153 868969320 220562576 744853218 689588752 733350428 963432226 996022765 54232061 145355325 908951435 912592985 856766229 992135401 902936509 964591891 588606536 695043101 414300851 459911242 772704246 891019353 927095057 935819526 162783854 615586603 962947446 968368287 871086922 911642704 841982566 924232995 168571171 328876526 763677187 880372710 663739012 828633304 587894238 971616532 773272926 807595430 218771932 675481296 636546032 750335447 545474358 643478342 907661925 979578343 338164207 465259023 653466793 970559188 658325984 861243003 822250795 850553748 474248518 828996332 208607458 571432469 54628726 588886010 586205754 763522339 50228129 574473365 640478141 655231704 911651166 923168025 506022926 750616212 603615682 659355446 860514244 901365146 384307353 938690684 149727491 333629113 193889700 975812454 112861680 350965799 983617541 998887897 374880834 995338651 170563973 733503593 599583247 971267676 611331141 737233299 673756730 676596571 314610541 797730967 460521245 768776067 701363816 908982716 351210057 643783120 623412358 915001253 54149861 436976059 635226692 824019397 460292705 992292110 701740733 942313290 545561906 669630024 926150870 985637677 874577006 905170221 268542084 961751308 516247411 940000938 547941489 694484927 205308773 749446818 935563210 944553326 549242918 570321053 152903282 656292885 500244656 556219927 111087208 404094796 517702751 542495287 764987355 937608589 546095334 933304909 555321789 836444181 903441990 914525073 290264425 965924259 833288411 872711461 518621968 727459062 509092137 575418293 744093959 955086082 861994284 899216261 156076498 750692394 564915294 609126560 626488328 689808479 449990240 794135810 702397217 973899806 506935906 531127396 328586211 579180544 919150650 921159521 297042765 928951976 533032558 843472889 643169422 977117418 95491524 821595782 568045213 862874999 292347769 700756217 138010391 517141961 860060123 958103346 474083608 811622485 994200311 997007662 738383182 910414620 60920606 267345063 106257584 417158684 223131322 233188835 330028856 384777051 275055013 796595610 839724532 997261655 661940499 859861490 281307856 531678117 454999398 458942588 658828753 961096467 980230875 986404043 7055713 144694054 266889013 404215947 904251056 931499581 695132427 929226213 365440830 875189308 743534859 831880757 381920018 532327618 913289647 924664829 510828000 602858577 295092837 722671252 224377727 915912597 184459534 467182089 123817421 815630456 386970823 408903629 674790650 970627269 77578141 386252851 819039143 856541777 112235717 317063165 360320114 675159913 589931400 979565006 513885512 593995127 718573271 976451704 175894453 478012041 396443281 666063638 762616741 915940121 595306861 691775997 904483807 950188377 699088730 764359948 780625478 979009314 809032305 855956372 61733770 766322964 787829493 960939896 997605275 999819339 235720497 999886026 710557977 848464292 437182013 931283829 500177720 941341856 422114558 442005178 618547325 697739396 58267301 962804774 332569316 361197614 399365940 782009277 225916759 511499154 87622171 355475356 806230837 834341648 167630083 323149905 337147353 371112525 583357975 667127511 197747636 597855492 956766479 970869657 810424882 944904383 456659626 722798748 515674692 567581254 953300797 993757834 827917689 897991277 158830642 710650758 64007531 170310017 747744330 811197690 964807463 985497728 454897830 726168549 232829222 358440506 973757574 993244595 145375847 231769850 885495101 904588846 876379378 953927221 646872255 857461505 231118738 840766646 799518796 913072536 965159734 975662057 481206135 520502042 657070414 941312658 980130205 991179785 377945326 519909116 466299546 509768231 708693220 833845051 669299506 878347745 185598170 351043997 225901405 888221797 570871775 779202278 571454233 738819485 121381077 901200946 115475624 274906972 157019015 988874078 452408834 642828666 185603725 858207798 901874424 930554402 958756721 988444838 435413324 722913328 307163356 366938967 639977723 694365607 96566380 626889323 58951485 146631485 436397925 710784803 65399000 755317796 664990271 833352603 329960484 844390938 360641953 990423949 425466062 668993671 457647199 704089696 112895415 309670779 717345078 952326356 154357143 802472105 888994435 928377068 592377774 745257820 405605386 730736041 348309420 893514975 972386326 988334713 622940166 636651040 359778342 394750112 629498033 914820943 363049221 880780203 461184784 570619088 912862637 953842944 85017997 943967854 604239548 691232685 193832987 997942813 704852254 922902277 723818016 864788248 886180514 995792718 727219302 847029782 442526752 485433093 757969315 978130330 372020410 983351562 888420838 917995915 913561975 965966689 963236152 986673011 890337077 957988178 655804676 870546390 781656243 803681847 186704273 999811767 449027812 852229104 513393736 928293103 82463813 611441402 488517289 733997919 333811146 852893906 438626875 831773422 894666774 960589019 284908510 398414703 146258709 303535318 102677630 460249237 820734639 973542912 161671448 375655990 515544473 522982749 248744861 853247310 799848516 860769169 498940970 720651810 53611380 208749637 959648868 972974091 789564272 875287481 438160831 686917761 756075253 915281211 84516539 674532312 958819333 985544263 571633212 924794520 982090948 998727710 814199752 993300313 413945536 666239740 801284575 905492592 565991775 978622276 892165504 959484838 67223277 294293558 189108686 226406210 136487421 970003855 111441285 287778768 959559090 992100674 910628584 949328321 129368970 799123000 959955833 992196328 272193816 764331378 173546623 204388515 831185468 869192172 794774654 956214272 559240672 903979352 924683176 980250759 62118405 388631276 545082915 870768273 422441749 841597860 882474478 954651024 130345653 287312895 434529799 916893868 75231971 451178050 46907342 942546676 550489943 613367754 156515078 562500622 870394101 999725986 541895737 853761894 511648971 635331725 852130808 992233934 246540097 722539928 861398172 974457482 535672373 602864994 286466075 625328717 95513675 568377167 34008789 379511977 537689686 730382380 41530746 781567735 932659216 948294654 31165081 934929321 852306947 944011619 87264950 826078602 522727772 549089898 871453891 988433955 998854384 999798690 397694725 494128034 490315415 612581697 27347506 515227848 836389280 916139248 141825783 355903656 678375429 995370886 35915300 631527116 789690809 853659394 624373689 944399599 518527770 969056983 269968570 470234996 658237492 800503233 852055246 939616286 876085484 970246992 310890001 758203048 584468882 964644188 348691644 407769952 662362557 745183235 363113953 606591780 81055151 362875365 194183563 500552795 197603034 204438457 371740447 955640909 557164790 729387050 662222246 770586224 473360457 553255703 866259334 986524102 138896019 576724434 551253128 793289619 396484019 777078720 452737944 560741202 414209005 831750841 675411402 898404275 639749166 856614328 894807624 950452095 569787882 785037611 358459501 746167023 24062079 704917104 530638642 572849609 264384405 957291109 56024000 844921901 897318191 949476588 727349749 905323310 312247532 370967625 334915019 670781900 218362176 719479471 62929142 522300290 766028542 993391454 917163777 938409837 738433701 996059544 577890211 627969861 889551470 931425436 617091564 809418156 316612806 323531569 218774751 265578405 698473695 987545769 17631900 755009802 188765167 490077799 395913313 815042547 263629945 308685200 133750442 570964591 335272324 365003927 458494739 693297821 883393179 922816288 897571345 986277069 226186335 503624495 509877576 577379282 993421973 994350208 991499092 996293203 372569462 966613815 514509996 838488038 799278850 877660625 104512477 433402191 520824151 650683119 131746203 240332795 24641650 769333923 965584694 980346668 297361015 965175879 157220214 202029284 79256706 503600700 498745473 666132723 405269996 458888549 606085637 854231950 576038227 961517118 722413932 734189561 287474949 840445637 571906667 816308723 220229615 359983615 822674658 860229335 549654582 572056418 5726604 907068018 643014427 960986916 498523024 526366267 341926069 343790188 579962750 685296062 621483735 784499249 889440969 941028718 118154242 627153777 36676128 114793461 443429789 817841033 743098335 795287528 529791115 761446369 994653165 997423859 985889128 995796567 65962040 767025334 425544727 633351226 695806494 819377326 314111600 674879188 630689801 827749612 644756878 691793334 631596782 788183045 695124083 811354263 329815280 711115636 138556600 208946944 924388610 953776093 373240489 586319893 447591077 885623522 115683090 672974474 985979410 986256019 334798935 791591961 822322047 863853061 461815222 870908526 867127106 891196360 390992572 766841377 268548802 428624300 549894571 789152922 750609373 918819156 957973380 991515991 613520524 713616319 753708964 768452973 229587660 799233922 352390173 504694587 840494108 876093613 401596018 855026574 356413278 660916303 537711591 897943478 439432675 622416162 274632007 442230792 713837547 920576969 714043387 734439016 957297850 988864900 838458091 889546987 290327534 993193706 464617362 878669079 935539065 954754892 800603290 968757096 681900289 990855259 600729006 693429948 500806326 958609157 655443788 656542853 962948329 980663954 803893549 995944805 109534100 977446004 71145781 147210182 171570628 580846604 970808420 972691632 96544059 140295564 204910595 350899852 511441226 758912161 700965917 958189700 748110752 963424552 280497942 546057562 335284956 895636010 71835754 236205527 346972422 654875433 823605054 883369637 768625402 903964644 586590240 708221206 611901402 687449318 183921411 791896998 258259141 476120364 443396130 864596460 80140652 532132343 614613772 904153225 665187270 924177433 343802724 586951431 698152555 806529289 475872770 696329896 464241146 472787349 605825219 953624379 290210945 669754456 151745838 926869486 403467182 772735498 88464493 407290715 482343774 745600162 831431340 908901363 704929430 973663744 652460818 909947286 869535407 935133614 934316422 947704694 697934684 967532817 517396747 887188525 868465335 989982068 534009340 585630411 146272032 641640833 987116956 993427782 744829881 970841882 120491973 278860646 467624564 793133636 226383295 488497154 750139320 981848883 278150083 595167843 293585241 896044980 384285026 704310456 341745728 402469950 710800478 730069890 226300423 671600829 323238817 477975154 22042273 748662445 47998106 675955218 816796060 823239867 793939881 881219901 295124333 878169718 867857501 924500109 326924415 602444379 934629040 985688033 752774366 845546391 419281566 526653914 457329959 524118459 367194490 463045383 363902771 893191044 44161980 255433875 250983022 818890613 887999581 928993835 295066219 760379357 892216369 972810049 957480202 999926857 56731860 488545132 277733933 822909237 932143515 984174366 241062586 868686732 70907582 709390296 489160590 660564074 654942069 915709054 127367080 816934357 921146333 929813905 942403116 987099577 714499018 856245186 522754067 605444103 412643937 969664575 184602519 257434435 430685094 474585875 75908073 196147253 970451710 976216282 480519782 943368004 368051172 784100335 964876657 979216389 890929899 943238764 394219178 401540185 393671630 499416044 659486196 738721906 27170863 856700976 372259501 649630276 799364510 958828434 660167461 761803479 514494738 915006719 697032080 862261422 327043373 409586742 704576908 963471601 998606001 998859374 753475150 903702748 769412225 892462532 390700513 535948453 27344431 371021963 884537223 895461243 853041853 959702997 79141745 528093029 174886682 896667061 541558236 615002822 190409535 535838442 502580777 687746688 311205902 393340880 110496172 418440543 880645062 925085946 184742011 372384179 387307776 851341334 880501130 976466862 600457448 714860630 860777103 966893464 737737398 906394978 449942395 450932572 945517094 963361484 13904184 500105998 447161381 823866468 739243692 896225435 391380729 997206542 768212376 897477546 783055052 935541095 375892903 970387948 800157008 953685331 457343494 862604900 784582102 951265219 531825515 840252693 774398104 917597969 460687407 694861480 687825567 752144437 225161209 795883239 443777335 821489465 827308916 930976243 466303160 629976423 209837577 747020517 923361570 989266271 221657758 747169083 359247310 620506358 370047585 515278420 536579932 922965078 278550487 540022551 112582954 419431430 821587443 955158063 730181558 830796440 273629293 800899025 39588699 891950003 824499708 852124222 649159060 817881130 608303694 699175855 373628936 885944874 624065641 862446957 646381338 992866724 710170328 852474758 882465194 886355656 260100830 511440662 865994974 936825959 454357150 513443165 499108772 926698677 546346192 942818088 439579068 782756233 301211947 428587795 446283130 772770251 676676027 902843972 794511657 970436137 427687676 994271767 132598894 989201873 137215533 426061063 16601411 528342976 492523790 932952580 432421435 880062603 943186738 968051992 675480705 799875540 421325432 554680288 728163324 840865951 402201064 699565670 286191566 595954843 195645948 830629078 687693566 712909521 146837383 527321578 821098396 947574014 594323608 925157288 345138405 929147265 781650465 867633081 777315963 902659459 4512274 878470198 550860611 603966215 98514996 997931413 161076797 954970625 520226751 873128189 765398979 962522758 521947503 703644798 117048083 447919896 48767756 290127907 376376321 750116602 592072471 918482918 279324720 396639884 982046811 999657070 233499181 825345915 369843836 880010284 904047317 942746203 293181705 849152718 754296749 910768819 601661756 910887876 243106531 297888642 763545286 884697507 54020163 787846412 209112272 395465869 798065606 820417016 895243488 924267217 816198444 986576253 990807282 995025361 538410649 715944036 205412563 412625782 470724554 670707676 792563271 903963391 944743670 953173411 664120525 978920461 806829540 986741886 336740516 466366141 97037542 262453355 140986359 194438889 826443455 876907265 513978651 817746832 533721496 650059264 90125208 435227713 439173616 690337431 397950337 618387597 977257483 986935304 882579399 982482090 260170837 841791483 442126402 679581606 423285400 888703089 824817192 858033735 799137367 914692258 977117561 990125296 854099673 959076141 341185821 658373504 863915989 958320690 433623347 843690854 618225273 621276621 971782280 987230172 707160578 922181396 192121992 967268903 143195714 898687028 670749193 752134054 250799009 551051853 549865670 725353136 792614758 961639836 145658 846119928 653187981 890667392 187095419 660269495 885028741 895677871 533003714 889584227 597729588 678622098 730719980 888214116 650192165 917074092 827587996 917041717 61283489 513428666 187707995 902572766 986810313 996270218 45135032 893389135 85933621 379747455 286680884 404231153 636165553 694177312 186648084 213346819 498318532 539401081 945200357 977785695 625065810 999675510 698355237 787544578 265790515 469919092 875453668 892654070 760242429 869625392 414805555 550762341 965603486 978273873 856641368 928657520 722001286 897818173 454715993 472669393 603933121 648154740 759833516 790201480 799337825 834405400 484671637 965843371 307448512 639679526 328920078 530840491 917757098 924866183 586272286 818755414 281917116 889401790 163747738 172805867 771653532 825173844 678111705 890130310 288403937 950554783 411697565 603535949 330412742 439373641 142712986 357134350 180984426 728954355 322322418 918856436 466365835 945139245 831824298 911083456 765162470 797438528 677065297 918634804 625217681 690042990 87830137 856219964 241881564 249748456 717786796 731927054 815694899 825211898 399359622 433316593 774977524 855594061 853893786 983779453 120615359 463991231 788601734 795784123 156486703 354168623 660543347 720425937 700525987 882802668 344150431 985002591 227827504 620324691 840980274 977670166 687568017 921200025 705568398 937973779 192122290 990613794 130552939 953820806 649146133 877844185 238158545 731066100 929443516 979084113 96647140 349410982 181292612 964642074 996158605 997846675 401864205 785146005 188189377 741887928 552890813 628308483 463085533 472432565 796333436 831799273 297633511 994903069 412839768 653119302 683809183 774368378 208455033 587445123 506746867 643703340 994289293 997866482 530747306 961344283 517387014 680529739 127297269 418668856 48011754 955602952 878832270 977979020 455405191 990710835 709643467 980361302 803777365 807384071 123116342 602035952 577250362 833938168 478891493 797577676 259003887 563127647 619742586 778318607 64808861 879159670 535944002 544779153 122508313 403711253 130627037 431445530 871611317 915850170 876138290 928904915 740777783 872486935 39024316 606145259 655170718 997121927 217823938 277581568 654051212 947348068 751491470 914997978 188300646 422554888 414077957 573627301 371333452 854205097 580107898 846986599 531265706 695761433 801471456 971842524 948328981 964219669 203768489 628280799 529000561 850957361 686979405 995764704 786843942 958946667 582556877 935159168 13261079 43190049 94397729 473239432 308509161 402438291 504167116 925196844 396702605 817638062 594197111 746852251 881207835 939054567 291727435 446928119 547637211 887280036 510319049 931409437 496854695 665092899 214099882 397057280 78333311 394402505 431595944 800308520 739484648 838477037 941235963 992581124 937053290 974121136 841502349 974410278 892218256 970436456 517652561 599630769 298603922 784007117 173580094 661037956 242742256 439314683 102376572 300953927 539423205 805472555 110883000 152896466 711869131 967773096 663678436 776830003 559954869 613392498 792167591 916687504 997926059 999432168 573763737 663780570 947245297 953377054 278014715 607013249 664622529 868586706 259670605 959396403 816139883 936067354 659005512 923581858 303100081 955436333 218161263 788748673 379304118 389242193 31588223 999069596 304220569 649792776 364134262 809783911 665124781 991523408 696044160 989609551 127396446 964343438 73908906 686718122 385361477 500165759 408671559 833443798 110675419 302113034 306644053 917336239 530150723 992516627 144135678 998791537 641781928 919985812 781063759 981245344 838330671 902927984 804801119 917532825 224483552 956260995 297989384 664786943 441751491 797835334 947173851 985948923 737618597 815405069 779659890 846312484 931449723 996693657 391199302 643830942 628729098 847461891 474653825 792604523 569253876 628715280 670306460 807508951 485447557 834948723 660717037 693601717 428852366 840884660 60376729 698266483 195073714 297525861 224238451 887084324 222871731 689465323 849926971 935722469 802281319 958475675 2015177 833512478 749910407 903858354 20402057 788861529 612417110 904710596 222475966 339617250 10062805 598884375 503727104 790772154 591895531 707055002 26111879 207311528 391276235 590317901 804138861 860873665 677878473 936366801 4684986 123471460 365261493 901606973 969475030 986727810 457905441 487124798 531117029 756729257 638694890 703599754 412661072 522043931 99576496 642490694 682791615 943998391 211202093 966200334 15842830 171269886 516199936 729449753 769844288 987069610 247469980 432845125 316942526 787483348 208234419 883481123 87699061 547446864 150752583 518709471 923225616 940342986 963150623 985419639 231540274 896176992 999498618 999874673 570139339 592720116 628648608 635693013 291494253 875036476 441566503 616125300 201332744 483120593 790005666 997142143 491197798 677128875 221410118 478048623 14817974 473290922 952853512 972296151 409453846 617704177 277264364 470167324 208164673 992528970 306785723 802530896 141860070 636615707 328911818 487548677 310064714 430410608 142671276 654631853 856334634 956620898 931778589 971314680 236713901 953703181 12429957 285707411 377294015 672790248 207436892 512372964 618953547 746615946 222129242 806064026 485346534 854975004 420430486 730461427 984448113 999978222 923899234 977983103 690530021 938325222 971625082 994129897 814751536 890116538 585269497 641114336 912603673 940934829 68167016 638767378 183751759 713588845 311115453 530924152 554797823 814133934 500843632 631866265 508791285 689871159 460719340 691746716 316802950 319034200 875582170 893955561 93608276 900884747 417917956 817005793 185027524 774751228 391960384 710310173 124584214 333540691 332143350 841527652 185284997 896994159 461191610 717726060 214061076 530323151 503050327 564326617 400549136 878310640 751860770 763641945 450744400 713423259 102971944 505600396 749746847 875991021 27913999 43042586 251996124 274886744 744563848 934544975 682203997 797897499 809755346 815059795 831298291 961280344 179929833 547303020 541390101 872139547 582779995 889621404 251783993 451945612 702747410 829894334 181739963 371673619 526322861 659161605 526718996 827655675 383958899 393363787 384446410 697493730 979708765 986295819 219105034 891326240 705078513 831303797 541666878 663863070 123831944 784624934 955164950 986287373 682980773 921833136 193848842 709965256 537858157 553291236 190979242 708345656 476553401 818417369 48296786 395816427 860007921 941205682 776940542 940443787 878155765 929151786 11189524 642276258 286899231 906527414 410752155 908939927 191873153 813337997 311008698 394379130 139872244 678804382 404120336 834857172 565548210 663074236 989027726 997019671 718276345 999428722 532122943 710067035 121099960 316321542 252245473 985260463 978614801 991840064 453645451 951136598 197463560 686720641 897299117 976501462 618437502 811684815 444493947 686462047 568179930 877655483 915128695 951704572 850119907 936584090 192204308 995499363 627033375 751044807 262531077 988303537 393089132 734051031 776413009 853907926 335003985 500593041 686849592 995679832 127648415 931195381 803655294 883224552 945994207 951459134 628164858 672225218 102031412 488725798 808008944 995512365 868368309 869641884 359990652 534205823 498944397 542946518 869135057 977989443 605147699 830896919 409989485 566165368 573539338 919598188 530009943 971499387 126164787 618971324 838088738 971276975 510203267 882611413 866268982 929894337 119059949 160464111 507945968 963439501 729019438 838687683 807894975 900378147 48855279 316736661 203958141 247809992 529770849 555185779 410084325 604182406 243403983 882200532 35390539 442443296 126254734 554476519 690015104 916489345 132441831 889089595 768287669 919470158 664824014 734622311 309181409 590797840 327874489 352100381 498762782 775629523 446151490 448197625 317832640 857949888 957335924 984681500 792755072 798729605 669080514 994254766 644594045 867026711 306660754 832533352 833064051 958781300 834966366 960879913 646558612 746721936 383014190 661261722 262327502 782932265 128734794 828973103 920225988 932538490 133845888 828696404 6051478 306288699 813728697 958169775 572471296 997555747 423355999 986749512 234734992 775178800 855711743 906045333 140949526 327532069 792258074 798146062 124501217 796835795 918833298 969052433 480513902 982025884 294502708 921347455 895961569 986664833 854251172 874640515 206510561 593878880 625423301 629031234 882538136 954938221 241652871 719367011 639311542 973030911 857831910 935295172 177404921 316416573 566101606 655704593 200999452 231866641 34554603 75833471 79842581 566485165 854138640 935133726 172162759 268823701 335379021 947296869 630762660 745716462 668490234 756491921 367331260 883255636 211845333 435903540 735236512 940196640 658362099 964420820 267276637 602817787 564027653 826304405 440456302 590755152 925254239 928737791 143219823 976502093 185770839 970602152 586361560 593593012 204176694 901140647 494859104 915896337 387639960 455902980 676681507 921795530 986928487 991274896 812602858 959052381 850902933 882090854 46992586 569082228 38234992 341931401 977088439 997634347 290487369 489546933 74966869 350646759 390230319 406501380 239973772 379750391 1167846 204424584 762787472 808887287 347067034 819829082 120586883 354430077 241941255 573438384 615852128 987997762 272672466 506444847 393076642 410804113 503305548 714292790 902296682 924620454 637563534 805586852 942901229 990841053 221023347 850025001 452636925 924693348 471121840 706573905 936419450 951249617 297079866 627670466 790753602 843760340 818737071 969079462 515997258 768508323 749744680 912318592 624483556 707806006 997097438 999183184 324710483 428853055 197524093 296194682 244107828 670441876 752429642 968295047 35232286 787163849 989104150 990141241 358238688 817243136 446871452 553753844 70891934 818890833 882411352 911101610 233226607 574329269 331779832 513538839 430334827 680935030 446354578 768723947 242220939 271196273 698192743 948826238 843706478 928813296 279460704 609272580 489675558 657485551 776288296 883929430 747806902 846738233 635564098 820027274 193774687 995592559 782083594 977225943 683106427 941436186 527731273 617805264 310565156 319515242 340214558 769823846 72988244 363648556 529707019 634517302 411707176 591350425 504472448 538239279 830835639 980867521 466923652 609852538 764121462 956836895 356751117 639437044 453069492 488498751 67740700 700216562 404312103 956458041 208547674 883870812 722225432 733422627 23138377 228558041 698755345 821275938 273812585 876147276 240810324 391432474 470805992 775583767 964917600 992740150 46079722 628020157 921619194 951837296 268832985 487532773 927028870 928993795 561404357 761579671 814503394 944697941 425913634 944040424 2958678 115673487 15422222 401548440 581182507 821305836 15691221 464652553 718620861 776710212 344371612 546930184 951491253 957447855 242284344 884572477 7798974 935827325 384630121 762010947 97447135 962184802 612032419 849892087 398029120 788232037 344337930 954835932 210558312 253292575 133170277 388321472 159598674 202794888 53799743 921030719 263539617 370604204 313704423 990979409 413453811 948949697 573712207 866499550 842667490 983449478 760822562 931622427 416959374 577363682 176209433 843873817 452052826 673329243 721858860 893741890 190077153 942573673 700381625 713208400 4898983 116739693 597906876 961489001 265574288 394658751 152846150 597059628 943082137 958710758 726593311 863753292 930360645 989674626 555813138 713823215 853027406 957058929 482606813 579313777 622069558 653483494 35704790 969758996 531001372 596496327 811687987 867273915 844087212 954575811 736556733 957310919 798117324 939223185 92599774 772548912 932312351 967240926 916299539 966739073 87484811 971913435 843333489 903125618 744012951 894525115 911029488 941826117 505673110 704637734 837189419 893940603 681222366 975052207 513805797 879955075 984299873 991607098 555530854 777721032 917328693 934271550 836487046 946766051 745256900 917771207 452899800 747425856 561621105 762120360 461310594 593948751 797342955 814482968 761190612 905576836 650172989 733788248 604676986 924721316 96315994 938141421 303953300 535458094 615765890 871340518 314211949 740082136 177988429 851377766 25268690 850990391 460771406 849205977 437421325 840360928 501315403 650642590 98066366 900527186 359497861 568476590 816827213 843010765 381190979 606679345 110665558 856848630 503129767 541251711 429439666 481698158 604894603 633298988 172762557 766328340 466863368 791411608 55900477 394305129 347379502 964274744 175716784 514593004 512487899 632996900 650870803 993871282 310628347 416214259 106238204 900421882 777739163 828617799 9850733 824193261 558583053 946535997 851598750 889208800 213538266 618169528 663402511 808924296 377231201 659043935 358071198 387895237 226423576 234649883 961660182 999164803 14897571 929603486 897177457 993176353 712320057 765595355 600195211 988437332 137878050 708254803 927326660 987824048 383375404 418459672 933578155 944164597 408974355 477386088 345526728 776282068 732729453 972782336 606492230 973152673 644978768 881707532 280711041 780927808 770271123 815093752 746695403 839759466 517464803 959996963 787407426 871966722 908859478 966677462 246496006 969507817 793613056 883073369 707499033 842087150 181030247 678326008 667443390 798350685 746699687 947795242 495491220 651181192 112569315 881144801 878754927 895029788 772113422 901815282 571231270 780186184 146760742 604415167 162909704 619831062 896930586 942414081 938877360 962449973 80015096 765926519 406535758 736712702 314011358 560345045 202568001 779475567 571971477 812270670 108237824 288591960 490905957 663350124 329486607 727074723 190384339 586168006 970819801 996826940 121260158 953434619 943835377 967187868 213706744 766000058 771728829 836133748 369624318 653290070 193085582 362239133 300447708 521709166 95600176 578460306 570455055 655119343 323936339 462454236 328349303 694748808 87809221 168487820 924200568 975329014 109014753 518812270 370876731 704632444 940133062 946857607 932047592 973188201 408688201 658746004 80154157 137061321 223175463 436789779 562509053 928587130 398598152 721315662 496726886 801198329 988004128 996164219 990857415 996452065 421939927 622003871 344095050 432154060 424764222 752500846 906497417 937454183 636323141 690242878 500117579 832647077 166043672 716541979 530795994 656478952 115628923 432643134 72937948 780482177 641588062 705140598 623950534 835563429 835969711 943047286 275857027 902411254 333108828 842775055 459932659 668909760 441128281 999094634 801230398 863336880 100249878 477588650 724409948 739888303 792997811 831749063 276672570 645315126 283178097 344697047 484572499 705359223 870740574 913436011 771283424 788346688 988625491 989228705 739109133 991530986 836176962 946433007 618477722 832708263 146563865 983113435 215567603 328659286 889099620 900302134 117524942 570947865 152171607 225034367 199633379 551151695 654925290 768958472 606525841 717279727 226161066 475480489 36304680 949852908 206279134 243105872 479647807 997255511 871267554 983572940 313719006 447355673 11082041 203313915 306224519 740412532 14189954 638621850 33148641 47277557 553885162 821072935 968528253 970129003 378555387 537867592 726841860 796416589 66036825 720797365 165221333 801725725 328512251 934794186 439240018 685433826 406020001 509477748 405744151 694612364 613010704 879405671 864728972 890448403 189604885 726094130 661362684 987301170 608345832 654350879 822908547 934332148 514273189 833956459 6487733 541997760 173107816 245713665 458686398 519699013 280995425 728491368 938790047 952316971 43360291 132931170 893217584 927108660 831440526 923624006 301600456 655038178 652591540 697723531 867942159 951782609 279499988 816366105 676337896 904980446 434913503 588230039 597034809 978858877 628976334 936886149 444246087 831927934 681343930 861441881 566502972 808591821 946285679 980558284 532003935 759959023 691762764 950179606 491627278 527380128 204535790 909186747 128796186 887029435 559266754 712595655 892332768 967328883 423741609 507693931 844220506 947029320 131257537 463379550 506391468 949196317 146642621 987038777 266315261 763956598 555794316 996096116 634502422 872970249 259907587 262310164 441961933 446435014 562203257 649160478 31269009 356286383 162840703 249785177 697700294 906821283 825451999 864775524 289351859 807868078 536443099 784003855 258176866 295108888 796151014 987249826 133833766 533256593 307611733 374694925 836723370 910059453 676275290 800046553 464778428 626729997 60018440 284763323 287833285 396862521 295284063 614619934 892456894 938781150 641957035 849587297 946990657 960439592 504235240 548120595 859650283 896467728 819784937 856460754 558180521 769115295 493332595 775227694 229381854 873677776 142970404 790813511 929410229 933833737 158162226 799555112 477782807 556918978 390175507 963200304 411511005 495441193 264042841 436842294 91421329 745107317 824757334 953632280 199829270 664045780 124508129 387904878 66319749 654621197 860229701 906174586 411095336 423530071 355950744 574654921 10014610 551319705 14793927 468375242 336972921 569167933 189889936 608340575 897442545 910120239 875750203 898245661 849185565 881298162 469777516 894209723 286821485 998258021 155566825 880876839 654182024 822609588 488425797 622604289 746030546 828553972 653767992 997349263 131522179 500095213 433452557 522613160 432059390 483679823 445433213 952156716 525761087 557172255 853759796 968683571 333071445 896215133 861780593 951447097 272226534 455234848 463806259 944265280 118161372 140335204 817635949 920649910 607195477 753887681 304240500 953432689 449713818 953939878 61792161 712454781 564543714 627448048 338043984 876358397 991743289 993940817 679686572 899371721 305411364 920464951 254838271 275797087 277820983 432563128 775285253 998204822 367468860 726142949 218007976 800740761 327659516 533306004 300594177 614446330 90736748 785447408 173288499 714943840 556902805 641807612 113880048 242732468 6324738 549870574 283786837 356379823 810484864 865880972 990553703 999756322 558803266 709293690 328150199 506641754 126445727 494404784 854699779 961386885 921056050 924140813 550239286 802095934 532779187 618778811 678621507 720776365 351281528 605093752 439588158 501196805 791619053 876986352 64205340 428631562 621581630 647110274 670710249 885309619 140929013 266654275 354470571 780342239 292415950 541315750 289039325 445645706 603259731 813852164 559496575 968116588 536849521 761897758 947783489 965735330 990978246 994276870 690838459 839551255 244545703 423534441 75298327 376704683 398762487 646022838 568115040 623179444 419791819 602570240 165645959 408936524 409893890 590057995 39599494 256951846 212792193 287927458 296855290 754677209 765136135 864755028 816695621 825071718 364160150 595876280 769897342 921492836 349142445 888562776 584543238 954124933 83818460 115556932 376643803 789012872 223699554 930586684 545267719 821988656 227700095 952431051 290601750 393519419 148409311 594415743 844431019 931128402 949678404 971790641 845131179 892105182 191560566 348159420 83915260 700414376 899445246 970173263 211148069 503873554 185104372 562466648 834866627 910273507 876280128 936104083 828242690 972416002 246508131 357776714 653936339 717995151 947483683 966810393 342719622 664817170 377646342 549650498 10051828 342443026 759309790 831481360 944160594 993262581 138750417 173967466 830746725 992467030 223549993 659091222 425386316 877893962 578353724 865314514 105761972 456143848 857722253 992723839 695795352 728545574 779104000 910015791 226984014 355853214 453439639 885366323 537995991 638186668 49836578 563818850 807355334 906962715 177291740 567993229 805116775 873958862 950669392 969653978 692615556 990189407 482348645 736248634 802999871 946180796 918176535 940375340 849666733 883372563 600230398 879197407 473384116 726668735 454361153 871634836 698126349 700287031 311292818 405239858 865572391 999768926 862245208 942848799 227489563 875267104 446906110 652314072 393905395 639128405 185126693 189206140 92406994 712116675 128372805 903525579 427873906 636613332 621708602 773598504 931154846 984362755 124700128 412462621 458635682 925467118 789701101 906397001 709349731 829270766 919296257 982308176 112790082 646040012 615427133 839846287 710220962 819561714 512040241 613110813 320082936 630528644 194035900 387351760 731581488 988837543 745635763 839015562 513663911 776186147 668786135 943133815 376009966 683858169 315920453 469694727 133722321 819065866 682069436 766073965 459742596 838540257 289774762 609064101 344499418 483552721 486049908 788694588 955974492 972038749 850765857 884956592 434228102 757981906 150953389 634079385 498993770 768404011 410966289 585909121 766382052 845990725 60423809 886409642 287201998 410280933 899203905 962901613 129571520 880712263 10823828 42955388 722927703 848966319 440100712 484999829 656321753 793615761 231720670 285541205 676196677 766140434 9935481 93941877 419490481 452914325 704665131 904433061 117355730 426547608 660183057 804356926 86066080 907307409 931432482 949675534 41268948 343450548 348870384 683032611 151286279 456339131 542392007 575158967 562167084 638347855 434549675 956394650 859756794 865590146 347878792 844597550 73850789 446626132 186773977 507053490 378838097 832003706 609265725 984893184 53324633 802604965 326968423 373629334 238991184 240627255 969793404 990606445 544974119 555471454 564623024 942598711 245850432 412844974 933969185 946482021 712990875 736156177 355871421 411796014 63608829 784551260 1201168 553079686 558854993 990880554 791692742 962270941 516227871 933926113 78321371 518315561 776538922 940491308 589322382 641485761 169502705 206457391 384481216 922804434 549559494 857547938 923842693 953324213 306100059 502753579 514012873 680675089 725084467 797852116 326817719 777588552 602724166 673042613 571917368 720199783 796459764 904447136 621114135 972740953 299430071 925395516 385768123 925620601 657892888 723204255 421318818 529334065 445490088 528561765 86196875 96607157 828597657 948228773 205745086 391241552 390862279 598319922 913989152 948940695 446550000 988045617 610919709 790088683 632009400 871059017 615343929 827695137 911398841 930013605 869221814 939297902 429407994 637746652 114931914 530378885 624956604 729456684 946547873 958743554 252014365 596507259 168835740 605228098 579876362 587704670 882219213 935682296 664919033 859887295 779513488 835915128 581163701 907922871 310825593 430167493 421497260 807159539 409974041 586965619 171786653 341830758 681774156 845372616 909754382 970342359 551755657 728885909 918482828 971126744 710006967 977804582 313961318 655141618 946076180 980923845 204629915 396871798 374967524 744294264 941308984 944782408 881235258 974673179 559758402 910545382 293879719 571841574 557984289 635123534 11940429 103131537 153322897 768965615 667123855 719354350 429043069 467180503 565997442 586084325 402171259 909410818 210607950 365819393 442032088 761201139 110870028 541922784 192955033 597976841 182025845 987223774 350592452 606720362 833881876 980029374 760212437 962272026 54162421 555799736 114440846 944555184 27939942 165515889 867129356 990453893 217089742 887569967 171070084 761579777 421473924 983589386 756038048 776680408 276585899 317149191 701945362 776146651 162851201 170733190 447909236 881341384 490010765 798152681 437849508 636309601 742090093 931798450 25401984 223256621 111769847 978802450 737556816 816589245 894308268 924976504 834042695 993007361 973263903 973609978 932731766 954448989 94869550 162247350 709569278 734152964 879995102 891026088 939655674 941463528 385012252 783597034 112496613 970385743 512074999 982721749 388296836 658503226 134794536 702968525 270067363 704137771 333293369 863253735 615089357 872304323 891247733 930367018 392197590 771871507 815576350 932837938 856049767 920172832 772107572 966968629 327934071 663103472 137143821 774744183 779457049 946792838 435268049 893496341 366034813 898545876 111950869 150626681 284652587 358764369 856703692 945400092 895207514 913279945 303035802 338204254 925505475 934862267 728501695 927422118 305928953 702702117 361837878 616828326 797040479 940013736 823150067 905822860 509300051 767930759 484440533 573896514 195581318 920166612 597023782 672773184 125252605 872753840 145739086 535517100 353948111 458850871 792706129 823102055 525392402 842278598 273318523 456902943 96160799 120280008 612642607 750029289 654491736 922716467 120694898 534153026 934413893 979540130 961610342 995003901 688863620 693969865 431880520 682571001 761603867 940330623 752019823 931889235 397906365 539994253 166186043 817071430 874868702 993965570 57190617 985335013 943548416 978369053 94811525 948889785 630270144 744983046 878318804 894050900 55133574 613480688 865616076 959841402 132834711 368261369 613921142 660725467 478068720 589992757 460170752 493016033 781572829 833976305 983822722 998996168 41000039 897660443 483603216 895537647 624993651 981281518 927758486 954093263 399424497 750589188 793826143 841433686 96061738 720886107 32816347 317946638 953950649 965916035 542453148 892798778 794607325 960177364 74129464 783342239 871895038 941783479 550708965 700108841 575507981 860592724 743480886 923184349 763470456 898671360 7538712 227799406 492055362 679376198 512242941 541577630 997822702 998445636 308918369 767731556 516078915 572420000 327936705 938764740 980077258 998635682 549250532 791601353 709842187 800316485 761757116 865138419 304896266 895971161 48963002 413901818 82459093 516552076 316859058 969450723 583833276 789759187 864871501 935950416 858650825 936013518 39477030 279070165 983326993 995843438 972046245 979972478 540792756 886113632 560504790 655233793 356450734 821306195 333275975 408687373 279483210 315542354 382141687 481862203 631980944 749502017 603872559 748338024 571492925 931950851 45992778 330640586 93301845 481606770 251972422 686695612 936315118 945671431 481831758 886939095 196867 929876763 694141154 852135209 411011742 484277367 46544827 853953556 549681057 709763736 725445621 845140414 228231761 941447585 125016517 497839133 972166541 995250852 430355379 742421111 144153495 635144035 280149533 746218464 505396843 829633083 5310691 20277153 718310359 786382396 49791225 652560518 433149432 892082988 668279612 972533024 819147328 869456954 709580105 961342820 553108243 612448300 269030425 476685240 711760063 909482715 151328255 618224521 990395046 997592002 969605944 972753680 158336930 826415055 86089899 248957853 306994701 779072702 659339449 966025715 278307558 922292297 576410647 942404281 929250012 999496564 293558398 829743240 76603385 975870462 93351466 877599287 449059781 921517993 959740534 978047722 637450289 945067957 774734177 857259995 712227896 761381246 412545118 625736417 457922244 536500708 533455106 555429210 106464007 907771387 291249028 978256146 11274309 111014871 750309702 769319705 579509469 978363617 146643737 663097082 847816060 977998525 86886342 178147419 565535464 727817117 437201352 623031534 367213508 879827077 368146192 592286142 69658468 873800334 742242389 823191027 966185682 987056899 896860019 904453869 844125917 907339782 796760124 972692434 618423086 803746811 100026164 733331544 29912713 191374786 149503495 476913757 686818809 950026589 5999529 93862334 792740820 886779494 611951867 987779222 505838419 971500247 574044430 893876757 428294818 534446556 227095591 952307058 519090489 717350898 222001158 826526592 156145287 568946810 501112147 917902768 867856495 878690227 367004279 901574387 291375859 298676683 64714334 380879412 210421104 886375156 384078350 764305866 379199080 847870423 187465752 824590476 383698287 850961385 877932415 994848941 986715867 992015955 238778376 498310115 440035879 505661695 474696686 852581823 851574297 952602950 597883542 702120359 600058795 729047530 226182058 252370258 451433552 457918997 564851238 976600888 967779330 971455819 886268789 924201080 713402453 743354716 990758909 995998742 646561687 667630672 744504485 958926386 663475511 811414619 944230953 972579959 726351505 844717987 234783767 857069585 695446974 881440945 176379336 298088982 416187100 529542246 717076524 793509325 206274138 266292561 515013570 717978479 415361933 900238509 410794241 669572350 656634797 896324866 499139038 688043403 292786640 636288585 958823408 997887970 508437448 818023662 692586653 953913407 917501441 970184345 461484061 735249707 153346587 618946336 983222689 984439414 248374529 467109902 237467638 507945081 162806547 214528261 906319751 981702012 856406994 954938319 334785969 675299080 292371360 511427391 953075581 957750771 755668489 855921879 205253119 824542673 916488395 929690536 399293674 482025737 551982740 645904637 854220142 948563617 210135771 632764373 909422567 953552297 183049681 648731932 828863302 967100361 547319440 918438587 806079511 918244179 73769591 146073843 444388417 478577276 379669652 965674077 74005552 845447298 396391302 470395180 904433955 946096302 941286716 974986074 939493359 951804549 363003547 609617772 498973768 612830370 535983125 672204914 346741178 990483776 983366658 997209346 703529133 951551070 983536784 985851818 403107187 630506252 978491693 985107939 439348476 653922267 168852720 730738258 36392788 260421695 350450308 741688405 938776200 955925862 795625370 913392395 870933374 931949432 526827258 929910329 578049770 755688733 264119023 451017833 740979074 754551960 261788050 735317338 131980048 242316370 372998694 928186441 151949632 365045179 865846714 976418307 679193298 688226878 882949391 980111898 48350760 932821345 279037947 421333468 155967746 454113012 392730408 686130478 268738939 823703200 12971919 890772000 494729605 910104036 948514080 985771791 73316147 250548238 76169111 706841088 40923023 742298169 720408420 900197954 771413119 965811363 188771703 287906821 580982920 977184862 194847509 501267821 53430561 423455706 155223269 579550357 207404234 846436857 831603982 976848804 636830543 925900177 230781391 644890289 982046134 998403144 130719641 383437728 505764123 582636008 728999736 795222618 649365531 955289460 510026773 942063271 304678164 369560649 561701400 825763153 120246200 491374303 553654969 595745927 679486859 795417886 525447788 679742238 457392002 524874388 924833187 958245104 883643721 937523341 235574577 487157084 405354968 627970364 70548664 732877615 820259210 906778802 442277517 962889044 853283245 864981036 932943984 935909031 699838156 703341186 600955410 926850812 704491805 837722989 543162570 579293613 329160358 864229157 394140716 752166479 963115660 983712314 489854861 885269137 772268581 950127129 768572565 861098471 194672288 346077607 973655677 982831127 378820919 419620282 44552469 245275079 366197571 873919440 913271364 961675790 780726949 821356096 321665538 816994492 810656157 826761069 283083337 382706554 858917804 924789800 542263994 746290870 119052726 315901181 440351237 561323910 185924764 230262337 305474414 737769206 163074679 224755304 855148520 937505003 371152752 652138416 53434921 539143810 941902913 955796999 221521046 470435383 340477478 668865652 398748517 863331334 972180406 975689854 697470772 934116234 62029107 621056116 213930198 401691096 487503185 720446460 16085217 224205127 146187250 523361602 296525763 371801402 301453696 308458360 63122931 959161727 747483719 913092958 826968407 992596351 547903733 963860182 462950497 754975748 30794921 494165175 879623273 893987993 277291125 340730563 348239297 641978178 38804287 806982962 699336782 783725968 708630922 844309633 22673174 32620721 947293512 983257217 918072702 925047289 152807056 218372200 913021674 927684938 503305754 527815479 27355689 69595326 545056840 955222374 800991280 883283808 439962270 603573430 628382734 957777813 956290788 980993326 912007631 966983686 910678495 931755482 558223754 885392387 350022613 691404310 536388907 766240365 811388024 985740281 512996689 769443902 916028096 939955566 922010753 977430137 916052927 982333599 340362266 723114807 327198663 819334647 540753475 628096556 906107066 929770428 559355094 801312335 15191280 480029006 577765646 816091688 83944633 868538796 450743269 672036384 9935381 862283375 174529961 904737537 112481263 208683416 324576356 445435350 61430242 718410589 854218360 905045417 743655029 975481049 349377930 830773492 599911095 704726554 635124710 880935910 13829585 938293748 321754367 835622101 146077804 560008848 517251658 963725327 437173109 478368639 876301071 898759043 288544647 814086676 24945127 672487315 449964410 900863992 433865687 632049334 173837497 211310130 262172976 583166309 600253363 747807426 256396119 922831091 479675987 516709243 236811949 371442925 929824938 953286872 705544329 747998602 937934641 938704212 134151766 938153389 259792858 828399146 800134826 984332454 338310428 552214089 165513150 802833616 253004063 535032628 722601660 880811999 849825170 935431184 626069345 870345813 165481268 769918265 753260440 765147352 472682860 760183745 896619008 961747929 909171693 932742749 997480174 999028856 596651422 768379963 298929146 845107641 982057678 987696329 16122900 655076304 8221925 856160445 551059501 867105522 971700959 992635249 569876446 771079539 851532627 866131674 672749205 796574182 586641287 765421202 962660622 964019592 916150449 991668021 962918690 992151962 967610133 972114129 632936050 976225009 68303002 519533094 186876267 220265092 98357960 945748851 688767893 893560905 965673076 998202207 414422767 548663591 291640040 597049354 506660750 842614041 832393756 993202776 254484659 781501883 483729086 847440198 157119789 975078741 755938194 929356060 830291040 978661731 58911001 393639887 550974475 615454387 890960356 926713565 636775115 899838751 666196326 860480139 35279776 44310255 255551763 881620044 20722811 463945671 366253242 638523001 700861510 909783608 237808127 903933111 774158129 906375809 310043305 633061553 775487825 916593570 222495182 409247777 606316462 754457030 142675912 689601767 149426088 914882702 301518474 507337774 603927172 629450083 611515535 747692059 92837292 974591033 683484184 777360332 514562359 931242064 292544519 697911674 139904134 436572584 979960825 991821044 612939997 816210552 159860230 800752551 822608770 886548396 929940309 955837931 344166357 920719679 900693105 901827271 821972706 822710898 189295143 372269091 11161950 875052725 579370292 978914225 593389427 805221198 837761426 952465882 970534082 983497644 123527521 128871922 127208366 682821305 264323670 711845345 774248395 879341238 98268751 110266490 620542790 837999016 352329908 409042228 814903452 925064533 576153987 729696139 835807331 930289059 773983604 903580684 926207605 981226172 770183603 841735190 972796578 979055681 916385546 960103275 166626417 674145483 903808881 990890124 700396694 811842922 123190668 572867576 327872359 615437597 332083915 917900712 35115470 547997151 383323138 516241931 544492040 994695369 629032284 776414436 550525963 953508896 252724277 694843796 75679434 262349224 509126345 959896134 811730130 927564146 58036026 313455542 643905922 969446700 365539184 577662718 388437446 791084508 140378471 673620692 632679043 716930944 710338444 983579557 525031639 869408370 587250354 931396840 878886030 945937492 520956500 828294426 665995174 921751341 808943338 831102656 741181541 901270894 672350603 948804952 307701082 923745027 773401199 799853256 282103297 861900342 337835419 608204612 818041052 848176917 597578948 785217265 416511398 826370390 595181930 644037794 377186865 495540485 454566018 648169745 507131079 624985244 256174675 515039115 371961544 628366549 968384919 989792217 577578743 912442177 811942596 928492876 192038305 365878571 371499831 710539104 48030519 400736594 284847307 484615986 905364505 970977027 18114300 542996663 971357817 976504682 111134510 854042606 253008435 678841182 489690347 753135067 225027761 546465755 647094005 841398266 139187949 691369392 805578592 905975202 378827227 523043053 950541021 978597425 754747549 979071285 184419690 920490078 136747114 935729244 652222249 994071006 879709258 941685780 647195746 651919765 600454390 892448897 973046783 973861567 523121780 626245266 778537589 881439633 929791142 963328146 692116472 826282162 452200500 977037756 502174011 860135285 708616086 956983368 721796391 722549023 157143174 486871730 838001546 937839769 230831527 836442907 101631221 176326510 597797406 970984403 996464300 999032672 245024138 576319068 752373095 898210060 903682739 958298302 351848347 554677801 612799701 802892879 957447569 979005801 23918398 240573401 909301332 976798639 654569553 857229527 51084571 950822543 667817504 911349025 976344130 998350215 354411629 545615854 741891594 991394718 442901361 475739227 51589611 739384110 105820111 701478975 853187024 853782750 955212663 973344513 567723301 748172725 158390819 470502075 551103935 552380696 29975665 253287151 470539223 893163701 511307474 789734739 93359822 237601982 521742387 925417512 455047361 959054834 630408863 761040337 395760514 816186811 498508026 730374235 315769832 818578295 371542099 617242293 193367456 367681447 95407451 98726434 358158017 887639601 34411498 552639484 531207940 819380710 377039973 947354906 410067685 540559648 346408056 717902589 604339070 859197768 18048293 45583402 475546981 743144915 689228442 933791212 691145112 713639538 472464631 705219957 168833187 727807941 648875931 876283844 720145614 914416532 810909574 969470949 349249732 366900088 884338261 941822224 897773782 943584239 992835713 997391235 785798327 846751852 631961445 738640727 613101108 887706239 371979050 910421439 197190858 586863381 972703305 984538707 536006257 642565481 127535531 639842484 860728262 902977004 202961812 539875291 871713876 990074490 968311034 982589013 69647698 444419067 616464584 957047654 113032979 665904488 951130299 963644601 776793398 806614992 444580482 605679610 232171109 349731570 143469744 190361170 207711364 377008094 87204380 778094491 733529483 974722919 224352135 356370867 406560500 782729431 496626269 983394656 184169751 502610579 592103294 924175149 760173738 828815710 30649214 47640515 247424925 568709392 333699594 789566537 369086621 551846786 372362870 832143918 20310877 536584375 795311641 828074571 421550207 932195138 829954996 885682609 516058361 999985821 693497919 731494984 975529214 976353227 400330749 505628244 400871614 718442911 481888579 675103858 378945386 498748708 398921548 901826003 20314430 306776863 858820925 985398526 919805129 998529584 655637072 785654221 166711371 788177580 419483440 556053738 703458727 813686643 851995266 904023915 470362404 806423371 20741043 923745666 942351897 962632220 161254270 666850554 617628317 938628032 556148963 602404827 418234319 782325649 567137651 644531414 92052999 502553097 147332172 782299518 1013863 879848671 438255612 725182849 550894852 991097990 417353842 789435182 814122046 936438294 163551996 240479248 243662076 630536907 267043955 554871053 495574426 883741059 85791203 212852879 641942126 827823109 975081032 985665243 852453492 962618142 922535943 954667415 467468810 864923090 622837835 969538430 359330015 680420313 846170091 917880874 531595114 562505233 800186187 915903740 724821506 899489255 11124326 896352836 730797158 933394224 859186375 937921377 812143098 948965948 886753122 984255554 66141962 544983392 959244118 965907036 970583659 988737498 975692559 975918090 136919581 286384466 703724811 801118456 195695450 247053806 850592866 945643877 902724157 955583954 531288794 854644988 712868217 802221625 465059627 792289895 219492759 495946746 406742761 635054964 242680968 743616270 360209450 916116944 490275050 669922565 88098016 637021360 852569155 867063888 89386037 205653926 543960941 602304266 504326579 705940854 451946091 907837342 432847526 725952177 677216061 753387668 175665447 197140331 878242246 979106919 3207566 431004187 580899795 763899316 380103865 499646315 238310726 630818078 829374712 990731815 423745957 919860852 324773041 684208236 890567822 932815553 965001243 990590234 850629517 919356544 448887925 916475737 595540462 773760654 69050374 674662620 214262773 463594160 781485526 980902622 463082179 781351589 717546314 937373772 214132638 714869767 765492922 851393310 643849865 703873254 504291897 796534829 990009001 991998695 15552455 66892132 782537834 937114025 198245995 862994565 55820074 551477966 561547849 913615818 342080204 562990762 822633346 961249510 601763026 639563686 17953996 434274558 648177739 814449447 11948738 936839161 304112016 812972026 262978094 530229296 733025552 962317947 195459655 269011598 703706272 815802265 49053550 391037975 854631597 930094030 796856197 913508382 82331950 856127627 98286908 826400743 3554420 75702523 200015975 313343118 699444536 810739241 485946433 897419077 589450385 792409606 66132019 542505452 328953571 636293986 901685358 903786826 419569569 811963050 961956159 972346138 505085554 658881082 284705869 459810520 298043443 631552057 605428215 886212242 901305013 995686001 544831472 805453122 732456458 947122152 652448661 715142724 975116574 993492476 134772206 187741045 543253082 844500795 202071626 334354214 400062098 912602202 460455823 771382702 306674437 472109411 160593411 599302532 786135594 903297136 687534632 726980643 884305762 943102499 954436473 990717031 822407497 936201075 138881184 286042552 375141505 451122284 452373631 975041301 553385637 923438006 18827096 813860554 519428455 732713733 683759093 755630686 175504763 419218651 198458783 428971197 715980418 779912129 182858791 999449371 622730220 909323940 45241263 376958086 251848621 574626932 580961267 963119948 383476156 912121727 968633518 989316300 244565212 258244634 78943183 904542544 419207658 656279628 814927271 884957510 237390868 539560446 541433813 998522973 654765227 834508365 30935951 956626326 551772610 808157659 931701788 977817628 663919705 949217577 367422675 933602637 640986446 810378719 359457583 697410787 297675070 764348167 133838937 682688387 469351366 554544149 811113838 967270872 313353163 430102249 981833463 999292025 653259312 715577006 127083372 743828343 188165168 571513314 973003755 978903291 836533127 885911313 928970270 981503582 653952562 762961870 761463190 875941711 328367822 516492850 529688750 559553250 519424250 691743804 642979142 907698698 984950526 997718557 124669207 630963498 670176033 861058368 340381952 948819492 778220001 796035441 55139449 652120992 945314533 964756544 293533121 714272695 627956665 816055645 958770975 999815243 494056946 582594355 947064401 997684522 827922951 912635451 724172648 739741207 373275740 697182693 717179072 995576398 658816664 892420105 789585545 895059301 498933426 623992472 212234561 418630714 697111361 810029550 502051940 577818909 560751608 845446934 510895021 722973347 427345706 638576832 206923845 367173644 657895714 837609381 571966967 690554231 734181879 904009093 16668527 187802761 769227921 846129618 241922907 616207647 619167840 937825469 916119156 939033866 731682882 966429170 753276945 786130517 114158562 531538841 343098830 849526000 925878998 932462057 437660699 558834742 269861071 441229785 82666577 452838873 471525383 749655224 714152628 720835440 911526608 921980128 549179675 593036536 533982657 792228648 794811501 927017641 416306901 482320629 142571662 962811489 143973606 435840921 406629516 568407076 912921132 980296481 961136547 971018503 290523785 956564835 572238975 790098933 480804522 975916345 287761786 595874694 798450370 962724192 449141139 725744967 310497702 986271738 957311422 986677973 330384439 498565697 380304868 490308452 942098596 989861902 719553278 895007483 898765354 993908560 153188459 957754844 141659122 825965949 819213521 879931849 55651247 862410773 294983292 925923431 658711208 815625846 257632522 497474970 237175546 254425549 252750391 748727615 36259070 213268500 462549774 946915007 168783113 806860935 521004533 883999425 810157905 893825473 437376607 900078884 806856594 892995421 155840842 911927362 566801347 578222785 652932018 936873134 752663981 905840611 258520473 750666707 348766522 351540189 629569026 731939905 909289484 914236031 419000733 605843163 472595661 485562420 60348319 351051899 969353519 995951221 422195403 719276594 5737767 332012547 487711528 939930270 980695317 986612560 862444603 917509604 945711665 971929015 617610851 907581254 235826204 292199218 838106144 956531341 674184169 972677879 417258083 889943745 421215682 766919789 182154016 999649197 106086169 575757335 686586496 810359488 488711208 643538857 517882452 807793631 143639456 633545785 456963321 662995174 975319214 996341049 378097947 768110163 124752482 383346936 872254528 907365896 185165600 630759368 782597047 816854558 647340400 920096767 881569376 955584767 483470087 682538582 707370411 907194753 27986078 335994749 753166667 756209313 376252244 679283519 375446866 987049758 270686059 962204322 988045852 998874855 810397064 999569150 335437581 761861042 787330773 957766855 763859019 867257516 706689350 870713036 993210720 996704637 808590490 827842552 555117662 922546972 625921270 853192983 846141170 984464726 89188463 913692122 218942120 246925422 245021334 962258820 771984870 962076989 656958478 842278276 685765596 740450961 784329180 965007406 871964541 915436259 76264139 90296794 737154179 764071436 581133336 641411747 541435634 899956864 813380020 974287677 951835639 999216647 674347784 708101646 917856178 921255153 309196901 574602029 434234668 462519113 238119966 639889037 438778147 522678174 763389570 904192361 765779987 963452772 570936719 654762753 666223642 838799003 159654083 920518409 339865193 615753307 285136106 694270541 690541889 780288763 230365478 749460901 504531840 738007762 751321387 836256311 670697769 944154047 256664245 481281439 857840222 991154654 970287696 993196918 617098767 947071222 203329107 259822750 961033769 961806251 503173942 933853154 770928755 870434883 829376934 977072766 155753091 724930360 514580334 865115820 149337987 334676980 762515568 798488699 169425805 709254080 28303134 806576989 839557430 949506296 846806982 870471139 693242500 708708213 795347113 984224397 887306582 957278216 832688143 963654982 357459099 559449256 518980857 573040543 557929927 653800088 849281726 954526312 214589123 943032266 936917173 940456551 925235832 965785568 611705023 956345687 591765129 754983834 83128746 483414057 102011984 407538391 974813219 977061964 305310711 525437052 980248932 989597256 977678333 982397384 490343197 778672439 961502696 981398894 159158443 918753988 608361537 712777604 898351497 934974878 907878325 961075648 333821631 974756723 302064490 704061247 250068353 251118863 125460413 661405668 222088207 757598733 292610019 797596556 373785049 480633249 792122670 838172866 455600968 933894479 299515167 308190758 302420504 342805537 746652791 749170372 515511678 702652712 907404081 933303822 350577469 672593689 928688210 983577740 317248863 403668927 504841083 852914538 951238806 989285272 466995959 795226743 718833149 785648459 373362179 593284573 113483991 240401601 756957648 876509632 505848440 918057168 314857592 413810440 431626344 485818046 969963684 981820764 408068393 610852130 135973952 969158820 969679807 974478975 334265103 895089659 972138649 981291271 959942863 972721230 809955163 901157340 75035619 718143248 626109728 981844516 991029321 995073299 293992378 365988684 146618120 643035900 282592565 321548426 425085904 723490624 420349962 869841709 615480983 916283301 802903972 934280087 981551594 985385001 625728280 886303638 862362276 882478137 81632212 994588724 96377691 711855723 591958638 991343563 661449161 717275161 258845689 646263385 751273508 845033506 217125982 606561385 572269243 946970602 645513686 927314937 814661733 924012318 341200717 809762269 48532226 881116040 970686471 994991616 811509029 903424262 682247902 756349235 150167960 914007250 385340299 466866047 767794574 781689040 296418474 373263183 503651980 707540490 674685779 969879170 682199884 704267680 861523959 886411202 197074962 533805047 793497751 925945745 748716761 932587855 889898559 999479828 804601 157862058 458727084 598796706 459100631 883978500 850371905 974867044 114885028 135903427 71308495 491432366 720610540 830571887 570456029 743302768 688229733 845202718 357139283 777628370 183935590 414677289 875599123 902751748 780132553 859744824 321406638 593862385 406338698 752946080 335274342 757262220 773912327 786151267 128584761 829442936 645218067 886852089 873090345 932706723 364677292 784858634 232086045 724832187 131956005 425565380 320440752 621509753 588631530 841008523 764293569 962844795 631601760 832280307 301809849 662630009 793272116 876302778 628063445 835986031 213397706 747072985 290267893 624523524 796815841 855096885 322257447 383489507 388931874 772971840 857484165 891449258 409258193 920345095 455331202 502251398 638807965 937571261 145478165 693319073 51749009 128156815 152343464 800869010 523109120 804995733 609352609 760819816 375328152 484563461 923346174 959099256 877063752 981113043 960014366 990879729 504557232 851548895 203304821 324143762 78550426 114948219 639941813 913914423 267277743 694612991 706800109 980174879 66779698 724369106 105141644 565820639 770000135 824987170 203072543 702575003 654192890 738427461 219801751 243217519 804240524 813098742 810267996 951441283 852564430 955723643 17661160 334369016 595366758 782177534 553905523 826953363 12468699 431414466 138438479 743582089 440866981 840401435 357738181 993159594 317789359 348014565 724902770 816689486 450511093 775162091 306223561 904437676 49075102 758439031 950796917 972194013 27103621 217364643 980130650 996898601 293831179 600690494 935754118 947892132 529807577 993961237 952870329 999899910 707212049 868809032 400115585 701499757 306537728 458118181 14588789 780566946 878837450 977394316 524792946 877590024 116765882 569683293 94617478 335483063 476197602 619471433 561574069 782210913 248970584 293622883 604149599 735681214 795052920 969396386 832204889 916260422 252680550 683391065 732610519 750159848 344457990 552997199 681265272 884536651 671683565 836472744 458672878 609755939 962921614 991383564 310690709 638630495 424793970 960709982 850808177 891587283 26567900 122935720 204229062 990235354 426497394 992120034 540606560 902504454 546985607 609544891 924943957 955550411 924074482 942095320 184308003 194328364 850172569 860922494 119931453 317734197 939527975 971428568 485321773 807886704 625560142 928374225 727862330 888447168 171296740 348788244 680766161 769368835 76438837 787348511 176706766 218074157 896225706 998678257 142694956 317866528 439270826 560576205 4777659 175611371 761449254 955176801 25926495 970134330 970350187 999559968 597734700 783329664 677294751 728629561 400812280 699122445 806422652 809667634 805364033 813523901 526148035 625975371 588372269 980550274 158743702 371125743 4488387 735609821 505607625 948237811 418831231 922671586 21165634 834227608 778857443 995763144 992382567 993727857 229874993 641214469 468455977 974236182 203623504 904773335 704907572 859040353 710974400 937623914 535898464 809484184 70427203 501452937 33717986 413071810 808898775 921948960 242388033 503823841 878373643 892724629 808503053 967877051 414968192 797366362 414877238 869853367 441635742 740861539 865201265 940831472 375647528 746338569 864322926 880157587 104436903 870387942 831251853 949243567 840612938 929873124 4721374 720970366 298723636 358217692 996368499 998581865 197438883 701467349 459099310 491931251 376431958 877145447 442457302 982548108 829701082 871976372 268985890 419722657 690985786 925363062 575543748 938567523 27123578 149082577 146795525 520640302 981623810 984848921 429437111 871257610 735287837 923675106 421203350 570497825 39966054 375895032 227037723 277167600 161503703 177324459 988330124 991970576 386853239 553274645 350153101 613919449 873563389 969145106 822774885 891353403 642109942 669330332 952091987 964736356 660575040 788950338 694694609 905257391 488366296 609893604 893069947 927107437 675094663 964954208 960933705 974702220 532286150 694404179 289239883 984583132 443710941 963754728 77770563 859786031 128984743 913213066 395060857 837433794 610559613 644588556 764213818 786017956 299859957 915682127 153595654 380999181 811238899 966843749 481709894 598953687 912625668 916993647 333727233 906132104 285309443 752460693 410042665 523373360 509729104 624114633 136990852 219170271 821511729 841101602 689565139 857420687 855693568 866690445 855847866 866917351 20729485 627771293 171533347 430287559 523923515 975248366 888809825 966717220 680273520 938867007 276876598 961155198 61992147 575712800 362425712 908676280 425096177 655050708 354116206 686735900 457927713 809651265 471680108 590953047 396145029 866827839 599882805 986868561 958419216 994679335 672106179 941041710 897042462 933309594 298225970 965901985 507573325 894901651 588101544 738307555 376829857 696116421 47234256 380515330 346379611 449532729 561915827 728353338 784554849 800482533 744911006 786768292 906798507 950333721 677198268 921319141 983187354 991954095 235777955 726872972 90622038 766116772 228802635 423253690 932348104 982741746 455913421 613068528 106662788 487737542 940015 598501883 122684296 334033909 118397758 785561631 461993737 875466810 252863305 777436961 868473919 892095152 854465085 975001729 664430467 777373394 415252808 479096724 288855274 509005848 678280985 939018713 922286411 970487561 849053944 931125693 208697941 699966176 85730386 353134787 873299305 901984439 924646052 987191462 473799407 536339807 821390087 879253041 92227040 184540915 523366394 690234869 443002285 892546279 430300290 702647080 908908693 931176903 109025174 971735378 743579134 850057301 469187358 855792085 955123230 997244938 693192995 899326653 261457898 311433194 418899049 871860628 734800011 897063843 581805132 686650445 554345190 746500104 502026788 966076819 531997532 624146606 535127291 571102496 362177072 436283789 643660019 935012767 970082756 986897892 618579132 854054427 299480900 462867283 927597013 997695006 329520827 631652894 979300060 992715302 420558286 464911185 143499771 768295714 747661818 859082251 675549830 917734481 444825261 599265095 400456998 700933118 477502807 509230009 850330703 851455038 324856160 997579266 650603044 861006033 37255994 132044973 546143111 996511034 687843303 702928316 292851997 461986206 627704064 906661162 648612005 853547602 756960734 758579897 679584790 830535770 579219164 982208628 869706873 954079446 404364708 712145496 917024551 988434041 954928066 961174299 283977013 539681488 940553050 956204252 112815901 473502856 744209373 826823097 191781359 344456765 868969298 971806475 780229442 994207219 575287037 607353638 47539275 467423622 703945747 901587010 909735815 939091394 649802933 916725640 68522144 467010869 514992148 939961265 842123356 882821659 181556001 690625773 883915947 954293497 650236884 761898825 770374023 793812911 170548975 337251526 329985768 565081158 927289633 981318800 61942944 250197568 73521322 869778877 526671570 698050284 244972587 944143250 919056377 923215224 866046348 910533244 122167869 485804759 872880250 947880025 966411100 978902906 658149206 676508570 889735112 957498412 203983674 875131794 499380560 501015884 349119430 453374371 490550904 954650831 52660842 536640655 62398612 293179771 363392319 469449008 517990941 904388078 833215913 864645105 607669091 645657805 166570096 190887991 854567677 886714332 99425224 294046682 916414413 917990761 320296542 564542953 871760347 955372553 625800536 810500399 991488163 991955640 236538566 711814432 661758915 972804587 202021933 230665906 830456301 995321482 951968102 993995366 230749943 306657273 962281348 988431428 963015046 964035314 304265303 895408185 120657718 789175712 810593671 934946118 396320445 537140572 802458017 827706751 280399374 650800592 61168309 126718390 583828447 768722727 180925657 308380519 448081596 899840390 3929453 710350484 432090622 539246056 682702256 997287560 209213342 882971064 191817625 282456483 301048250 517062178 929437632 971038957 87850409 851309345 854963670 865557095 167127897 974235686 257295008 899132124 645410092 881293771 91162351 903212902 628578706 775527306 410770024 906386650 741900672 962836232 496556676 677580917 32646124 745536465 100319246 390846205 311710402 402638042 766383063 998136400 372468978 874327901 968354998 988308437 755342899 820749828 370820121 671925073 347644753 460749972 293851452 667211711 976375360 978878610 251246094 336098856 81351713 873962366 523761828 537462057 760521155 908759865 13385964 78099355 74882579 861253972 964121223 982278104 814555512 971367043 690680532 935315943 200335993 610529308 325463291 810325115 790424774 809742782 928509217 944952808 506512595 851278913 794158844 887068854 615671410 941358910 427711707 617021183 386902876 404041377 81367178 105946108 85028764 233376775 785193589 812637544 644411488 898146081 143193024 170792541 337189675 386706678 801535753 815289491 969549148 996086726 689826686 842858176 709888491 821992452 326798888 892480735 408254745 501132382 163866702 204466798 14378059 983745581 271502305 620993992 362322822 809468628 374462813 978973358 8671349 154152977 62282082 941172771 137971100 310802958 640407225 841119492 202495788 494219332 849282391 931384703 312138609 704603677 520638815 620361263 903383175 975858521 145188467 665455631 843824206 897462370 276427014 504596106 901873523 902517679 593176457 709992249 976280189 995287021 219629520 466198829 382705767 925039961 525964273 749026032 53839941 740631501 274714075 758927770 435068540 823413200 950391848 957058244 23994725 175923982 738955227 911053963 403723760 537269483 641859645 884027002 159364190 834136022 271076641 944354799 839603475 895340767 730182711 875409399 144152414 924550362 911477629 921591514 221400118 951427311 883164716 922195259 525878952 868762419 4937107 979032780 880263717 931142467 572778492 920057817 440540727 962967912 514261217 913006356 257968681 527453130 946492937 966589793 931663507 947382436 981270956 992771200 209263185 770210448 912165387 983442567 591872878 765843322 539270267 758300225 581697966 829753713 783953687 958767393 502855508 786485938 632253296 688632275 10055669 211395102 399583660 597183919 303240179 981603013 12269011 627915829 198935227 353361475 758826206 847293666 469640046 920836373 895140019 980475701 319801707 647240113 156332006 913214405 607677139 673821608 443250360 912963775 54676544 105766025 162953618 480188293 257958307 785574761 277660845 587702902 896419192 989672194 877370083 979869750 834253054 847339498 120861799 383441916 343746762 357128808 980001964 984088691 968763446 991491233 121773989 952616397 577019014 723081153 505783462 868372745 610609863 647010047 742777518 760455661 22616003 239941154 222072407 941562058 487099723 759417162 5601511 289701926 343270830 638920077 28095293 384071332 804547009 874103085 11151823 129381473 882618332 966073507 252957151 965794866 997273889 997579813 250144073 759634133 794701085 933282249 82361117 232333930 206502146 211094551 193620743 237512041 327124338 793521769 219480412 388620734 197527365 974886905 357446761 422609603 93826190 980017335 39651132 153670268 521686619 804267919 25591751 760179414 962216772 997939246 121026674 802223746 509263106 512360085 998178465 998840168 512043746 583501949 129315400 770657406 759179211 883271460 755269593 880266805 904491630 911224134 645323720 877861184 757585540 774763171 379331400 574662091 499027395 697666343 644632590 841648242 145161287 444439802 504043970 630175548 131657531 959514207 244474230 927390465 888645362 952025293 202979647 829730943 880274360 958566279 808347136 920594417 560851616 824268883 989189643 990803477 723041922 726847189 408278825 580083723 128459379 272068298 157912666 195153790 715934998 772813020 651136880 727662528 479267286 693420946 77417455 204619116 279503235 582404158 554738389 834581207 785640657 950599105 829024025 874096934 283073713 419611169 781527038 929021578 481641198 514179387 214399348 215530295 211396463 370201206 828689938 959528323 72021003 980119400 644879076 758661360 333040249 472449525 341305128 856066545 897458467 993152969 489013467 875270680 382552298 702346257 480270524 653522968 181415250 931560271 544212179 750399541 53633991 749582253 950062666 964764468 81459935 117341419 290879504 539987300 728847471 835076737 323785237 936950246 437279786 580193859 772152471 985825050 412397887 700252204 435603586 546294877 407206885 999654656 294783063 530946195 824913671 851609896 77974891 379829265 378814638 524018286 845258747 961418073 433040793 793805961 977930876 982325504 623068371 685838711 856262422 967822344 91675021 150826705 652603962 660784133 159164765 663733112 243874860 652317712 675629281 935673726 476711719 869835630 533382731 600517375 157775812 265921794 537021696 654839139 793075265 797417176 589932222 894747065 31084932 107932522 563566621 943712338 933605889 991419672 192470994 812315784 532022886 965126868 390511030 552090866 551573106 951340052 232100619 718678902 417549841 555571507 516960814 533842611 474342052 707525881 302304807 516392898 204696128 493035774 817174571 969583881 231043488 241300478 942860589 953486871 147368822 800161785 635988614 639174608 329463705 768091114 132414403 258516337 25951744 449138538 465304089 531555031 477522241 913131146 590116323 887697334 882134841 898150471 107364441 513234277 161518946 418529457 745144375 821666149 788319431 907027129 826540525 890207565 843409702 850042993 338015309 481427409 462358022 653371996 438928531 754444879 133085432 519208821 543791781 782731214 113195794 409440834 284187126 629634770 880054493 933515935 918178263 984166280 83776945 167338602 899129470 944638187 83807081 940943661 961780340 973868010 917678348 983665721 933788090 974605511 518542147 778757703 89802593 757092143 25809415 35281887 215044331 736587028 625423292 803900206 861969495 970899188 549832003 715018995 950119108 993783915 958411384 958677203 426383075 909510637 757796306 815652509 757266570 762368200 787722357 897954868 4590613 900541955 68142709 606652987 660203575 814485639 817379423 902083429 517641005 977148504 677952032 979249837 468937492 703407287 522682253 816034903 655979434 695691335 668590026 796609776 695795888 938544611 445181608 579033295 327834874 508745766 68528725 198782908 564400303 735436544 717954654 879480735 698775365 891812628 776762127 906681424 751875725 792241748 898938906 990516616 297436697 513354543 281088591 366362257 986945024 999894685 719043062 982349049 427573917 579343325 326825116 969887213 843574943 846418346 585007527 642239716 674078459 703199438 723323958 964251065 607385819 673028498 542078784 854291473 418941938 640616704 606284397 830109774 800873865 950530446 218553269 733900662 270524831 429222908 624731742 733461714 993291865 998885457 670005356 687000155 905619567 940389384 680544686 791471034 118553600 995625932 666806806 725237151 790795896 869516552 627691232 802457046 29707045 736627501 35789539 961863066 972764151 989277451 798427573 936055014 229695799 472800239 107321849 576856615 924753133 929053832 924130551 954988424 770613827 848369653 166144492 847223122 479111052 861968643 644339398 673013010 524239958 623655794 29636569 782100551 798020444 860409686 878426704 975119328 251792343 379099354 196441447 565368917 99496327 668599683 437232455 640734516 424587309 538914975 364353284 542157572 748448440 868847466 998792497 998966446 565809273 962459642 940785233 989509423 396672700 749574029 128536124 291047540 779054971 866707152 328613431 414059025 876694335 940379878 448710154 694613523 748474000 867839043 335467558 662697065 867173093 898622407 326100248 418056614 643133472 645538901 579677126 852151057 4981616 435634855 704884535 806366181 706717652 768633958 364287310 446311811 750948945 883291530 231707330 396012764 331181707 435724376 383804793 675544283 592791995 848729373 852143610 883369589 189229577 813299891 436229917 808753032 14243746 487036085 197256253 534947483 250230575 798484568 404159428 418256632 491344138 999942467 215403727 269758185 465664874 596174096 880962881 931152130 764999781 916994757 209972480 700983140 799624436 929068562 757770960 845183114 977257966 993356293 510759842 645676353 268860902 580010070 389837327 836691848 924636715 985873402 240889000 335859465 792916612 829401409 635227964 978116632 316551435 515861642 25873052 421351114 570421348 638262115 955427406 998457190 411329690 638389491 824889349 829073781 437118459 442043757 828097731 961937141 686649654 922929728 360608912 630169128 885319716 936460289 954236215 959824188 239300694 561032616 329069886 846032466 761045311 919303289 257486016 564033630 458373344 845934088 589954021 595879168 760419947 858323782 735910388 970943168 918759949 949804346 149803996 778397163 129694161 877952470 178498533 965319625 226438388 434793295 799219416 919087095 171667100 642357248 666690280 693733406 673166106 933258474 143423942 672362267 613194126 950530222 766227400 977347167 837900957 988225592 322376752 897322054 513881312 815834279 599798245 709870089 455644155 666885466 556281081 752349635 306323521 919224594 659873375 781098717 500358698 954240847 28816727 375442222 214543727 631606817 391131906 464944823 911729323 979593685 156659084 476262329 185480499 391063637 409352257 471711484 421940228 787555115 619429512 720481112 875424927 973986277 61275627 124130006 71303496 960538431 664673664 669306633 138892415 514564221 42223820 166956756 847048022 962370907 73805195 479895665 781973812 881324628 435937148 792746301 521350003 889919528 506753619 897292250 269402618 504228751 71061832 184547290 843536908 883876815 930312685 979022334 570626568 676339074 961763366 966537455 385408383 414607598 748841814 938517207 289627395 553262993 564344692 707456569 996320984 997147042 539300877 582832180 39569588 965878282 942639660 952605176 762084777 855463940 707324110 976065302 452630742 969360751 355514613 978980328 809582146 845363399 442708136 757030824 525228137 644155817 779101990 945790861 651454521 716976148 82030617 129095734 151984835 466325596 99799602 854081234 880618149 889990095 726927785 960362445 544751546 913152113 340934529 657255566 401943780 883801043 864664665 987464207 380660968 604161146 260503307 642892411 351759847 816331491 160753646 517893213 491784908 800631337 323778950 899675759 439047705 994881378 337927361 686188213 672861452 726892645 183421432 209575341 592272568 861472915 253011510 407105677 918729857 962379368 908962031 996542793 657662031 669359397 338485693 741635816 808054365 845331933 862462583 947868197 850467236 973713282 837252345 927943055 852140686 859345975 826987690 832206889 26784827 357045854 346264447 793310568 745844484 807868496 792454536 804679044 565616767 771236066 269750240 858833595 852290839 949689685 8259803 512323759 481394299 677324064 435644465 609810225 980180123 980255236 730153948 866301240 996427564 997207598 985892523 996266837 298424677 379294239 999134495 999589640 608729256 995354577 204270828 774618978 681539834 878767465 928087341 987195281 934419141 988188371 549490984 833228359 301305331 994321333 693641561 965267229 700198330 928557068 606393009 920350867 281443504 971245338 267235812 809560075 104991853 530444871 978273053 984870359 332166805 705085879 518231386 805534201 451745322 746632346 343215026 625330419 743143759 773849724 927274512 971981538 617064564 657163926 413858148 805010597 281374637 797299164 184751224 560432256 779244646 986002226 722763103 825094530 500384729 971596625 485166072 848787049 108194209 881761578 307391312 604545647 275790460 740222763 399690130 691061354 451227979 487026645 679772671 809800385 985020323 992822835 601697466 980836908 775773864 940562939 988996602 990444716 47457413 979640097 23828010 796928404 208939632 986735228 904761519 972154489 562725906 822616936 896313951 994088650 61680286 694374930 79749691 762658902 112730253 425064282 146884200 530910087 811550935 845844926 619471767 892392770 469006769 613943766 100585173 386656726 735987157 977959045 647630034 988882403 219911011 746925120 252710574 989435137 324637773 876845592 208990450 849209503 180963544 930377154 81518822 369324129 428949914 855697593 818026209 871538650 21141381 962609815 528436545 599587347 553126825 878621264 971318021 985166244 612401733 955808869 24108858 441038681 116730526 566180156 910783521 911562785 783756939 980336705 822435384 829280034 967024704 981926147 433757614 971263349 17951351 146268683 420010549 656367704 820292929 858476944 664072906 824820767 807371686 996553399 263373449 594604503 596287131 617987465 951364236 962554720 149352190 885873055 203009276 507718949 693470220 965129941 842871083 924945168 160388943 600740433 582017720 632250320 827017456 955985198 336186214 539378521 69541139 854771793 866524079 887311933 616742922 857487708 398294147 602822778 121681980 741904298 87919127 297742840 788732983 872230553 60881312 421302708 734106687 735070025 97836144 336434707 981573798 988136490 659279897 816943031 434904691 517029021 246558607 420899708 473556231 678737150 56495738 642409615 438333436 858122331 668075166 709402839 338183855 746355476 436063449 634373350 534199182 645537524 619102352 824400264 862617094 912200859 576892213 742697040 192354772 931972414 517942739 745910176 388359212 520518515 24276031 158299951 425543484 881137073 166162343 241320684 976279227 990630968 95827846 703231549 978229196 989470032 377372971 624183677 306620728 805271899 979270959 996256967 92811046 650844630 743554257 768664595 178153172 651605222 760917769 960245508 93958105 634195952 844298451 868196015 266241863 426787631 295188677 671732839 141026457 516287383 5648999 388023283 840572470 869791644 560735641 912620026 916732505 966475074 903578967 941982578 851948290 866011118 954017295 998196641 278217996 772851703 975021125 983307998 117903140 659072781 276093900 675784730 819140679 968628529 925063763 965296281 96797916 267852397 556344655 785548364 205640474 229724877 881867217 997010633 258212294 708995973 363090877 600203179 915675173 954804727 177621227 298979958 952131759 998979013 408913384 435636054 627569074 906551381 131364880 400301209 577688250 816193501 869554486 970984546 12296478 446829464 639348127 843130454 963493553 987782104 184453042 547005234 535293633 599469547 561320584 656801559 912743295 914798674 155694878 989199755 815140861 850692200 306942988 479072543 116087501 670726237 147697003 752615201 711997470 792360605 390581919 998763658 286799707 461323543 477229713 565239256 582763697 814106717 398557403 964457609 256507558 616537904 883978881 932912977 903340294 958798439 438955227 907523869 158009469 307558658 995203733 998995990 172325040 927212558 58189453 922888276 730992226 758605459 367300434 974509761 127659089 855874516 685117571 838979999 272637544 467039366 496131015 923682992 231643269 901906754 952391166 956890151 9380513 992869296 43346284 922360116 974280332 977699145 748722559 889824640 490142610 860061564 553192995 959097862 557831940 586245939 131237465 830782973 558525960 961765631 560528692 665089605 934736002 942515358 719489208 985613760 258830065 364727467 321260037 766563532 247822479 716054961 440084693 735588725 576487193 673953618 541587384 804143471 368991026 848176096 873006871 985723924 188184714 771116295 933029184 984503904 565288946 874191953 659725031 784347872 98865218 872783087 624584306 986435792 977184413 994815139 683615862 910475094 81693755 215651703 646298683 971154462 493965896 622383277 398327843 872225706 63707783 358443851 771706095 869449575 467428235 657497224 279929991 579034123 591692962 642918562 89983304 101123585 47113090 316634887 260814555 320277478 137611684 648412946 240294955 990007749 948993581 984771658 603553562 699858369 707250863 935558309 568787912 614176613 642503726 831236751 633387439 989952766 521540811 730530530 515474639 677473259 23043333 79798799 945681172 950316362 311484292 477428436 632824954 740292558 616962114 936085767 742452867 834292580 674258515 963467761 88392335 364183727 790360655 808829918 30373754 666837438 375431860 543380429 211070509 310591061 17290545 453413655 363866338 403476833 119123635 231670464 877024091 953871013 450392939 857780533 748415945 886368653 34307959 865975941 686685754 984748128 399730688 753695284 338815641 514487666 13134013 699388506 863748908 916997721 437928363 862156675 687411831 693253158 407899227 533487289 317148310 961582150 920494700 970084689 418537857 981768103 841067795 844714512 710690791 967592126 681055712 794675141 610306829 884937138 668699208 956594569 291300159 836401348 984854734 989880427 796836723 929505582 835161820 994502574 508940 176751616 598065173 867623065 823668279 996072698 363734828 507075417 842143339 956962771 852523359 938830969 719412392 967866912 174420201 423258603 750988300 891202421 774785643 960944377 507003327 878804247 20369099 787688113 607988165 964251046 170288703 626444034 58291362 719080746 644969590 716958166 393794617 574807758 631378018 890334013 245256675 384310750 238990589 685240188 797108927 851776427 952574652 973481927 163043782 210124529 496812623 974672152 68576412 123172719 543902643 912239686 985735166 988259396 801992090 975027707 678820386 892223399 924025209 927859881 556366066 836567988 393352910 521931025 347416075 781829806 385064380 668800671 863746741 903104561 864439021 907762066 319436713 587382303 236162938 424510922 606803537 703813116 446278951 595323707 390104630 678341680 242132918 800785964 661217439 947935616 517656729 819566150 427495835 720993385 122692851 532711926 5796363 333319776 118357872 486761531 566094123 677575359 211894990 308574260 262837747 414045108 747256226 799608325 212123096 943389333 593088268 908469840 80678646 168039541 165648803 566058694 914748292 964527849 58014734 822863374 19358546 330899038 305757705 433539536 263678810 968716654 454391294 776171355 772246720 969960112 253527954 626370814 668263661 683428779 415316302 736433786 284466674 796110968 716899308 818170027 716454786 733124746 10159347 402078342 582891922 814665268 908973029 982932208 519226695 822860288 284193806 538798615 97666945 899865189 196199019 947428788 57399513 495289177 534253364 937107257 732372406 823988021 288784127 317592531 680912584 980735152 52231169 357331031 322997636 566268777 669072471 692662287 228329613 879711635 152196216 449226718 137896546 940655066 722137609 967126764 298548791 397467844 758904267 891991666 56288169 796173983 569103293 615924345 749114018 856458774 403877122 696055966 80957409 768162245 202500131 815456641 665909411 832538258 132907505 753320075 75420558 349539267 971016347 980608130 870250844 879091519 530117462 635562552 17605146 394938582 453811981 617586365 863533890 885410509 886557319 941813986 870122599 984438431 840926841 939775576 463851707 596470393 966221128 991689764 914179146 946343021 231177193 895830460 872764367 873200226 512603063 991283963 170159566 394728321 22594551 532408492 239220736 745824365 942253086 969354529 17104920 346694841 236326617 850722325 5360426 241023382 532193875 569013917 39201172 205808070 195493624 701593500 466948089 746242212 919322291 922603532 36587470 956668922 578958554 857670178 680680987 966172060 228975530 295553357 322438095 951054926 785144126 965952969 365201743 885660901 192106739 359743715 773064685 854655563 334123305 408257313 646893747 880206270 634406567 957854508 364776786 490019579 344673522 554762003 364534965 562176510 95785980 529368380 84834858 429814106 843522942 967151898 815719712 888200440 887267040 970626422 408221526 552428055 264914268 532826052 213374294 742469498 58967728 989191879 718310620 844015168 63682288 150357241 819009809 930924018 488440434 797598172 494345327 576470422 376536595 531852426 645270558 947935480 205144488 942292481 731525126 867226825 675898285 900406917 77625215 521363951 833113750 942887456 218462229 538953252 716520725 926013216 101804753 254337776 261228004 748236610 752202092 821130842 438543820 445097091 116939998 740093291 496708164 666063933 576855474 792777522 679553790 701247757 681164091 721685950 23084950 760884555 514043358 600165853 65866523 529185588 541384638 840168549 128480814 641329394 596246642 933562054 694015764 760850065 476710619 746814959 679039731 755568925 305469411 628964045 995710950 999570903 65620822 637159485 514988433 873350719 295204134 326187180 804553049 909960530 874842982 888662052 494964568 976533380 704398209 806655746 689259818 835710583 974184405 975835380 914160981 960297872 13415815 44730962 3341863 941722117 591390909 828971950 27066970 451825418 737704939 938541138 756500643 884820524 855274379 905347434 421870894 828227085 968666156 982492260 704548321 874300452 519064207 929549117 751370906 869659997 570093620 675049328 314223412 446387861 10105441 54445233 248505875 997606604 659977034 932934449 640687641 990167102 28493406 983936741 817092371 908851507 221675699 689470020 47524750 945256500 223993868 396634809 922771021 944758649 321038634 657770873 666901570 736147080 629470216 651768017 953196235 979932865 300108323 979319432 623013756 752913433 898610489 986463234 25826597 895149790 369760206 496342468 612854143 947014556 158306418 571114925 366951257 536705460 104555267 994919717 691762796 966898434 800483055 918259344 995875077 999710580 671200748 688430806 505772104 797409244 702593113 948254589 632845325 942319796 624078205 756515169 701166603 844367600 926559419 979137965 757732356 963666438 707618849 816900617 36411248 129720400 891650624 915922599 648927472 665788965 796483 465901157 246755842 952324326 255865675 351271604 349748717 946680445 370540115 422161808 718736373 919836019 496595867 849329785 536814561 862381293 637759244 724970121 680205712 733131803 160540037 434684949 423411879 953358762 270337780 594154652 524393117 664908242 476945064 976872024 970950342 989823413 378791681 651770500 522535477 529462895 940623453 996976026 763433180 927038263 265542264 869961654 731611831 804510029 393299318 677468413 463751420 688935137 498959768 853823582 415182649 945684303 401167533 675387845 856886012 983556323 664050430 987704486 13483458 737300457 375911810 610201448 467981414 672777804 494520798 883154606 366108801 823539638 850256090 973290630 746730212 876076011 621750502 782338017 815040391 888857130 165195146 279199390 890883722 930788501 632673705 749007978 665081987 977170626 628859213 636214135 459357265 956967826 326446812 342736005 989074289 990183639 320582687 809509685 555631176 876032197 414102359 840926538 501301592 972380396 297858539 722360638 586308535 796281716 709805776 919745026 124440816 714433468 368994367 509254462 133249826 452106146 156894177 725269463 260512215 639178804 8477323 835865408 546642873 779137216 764818023 846824214 992531627 998969006 560241215 912898264 183155808 880235817 779089115 809616093 779832618 884668076 274657754 396481950 210828522 706842151 927960820 975351541 925917771 928927329 497055761 727363393 604583205 798768656 209281559 572314286 44118647 644723425 175628266 750940626 545553154 707124055 898362651 957582551 226917595 985901155 857648875 978591623 666810944 854872039 565947944 653778357 684800125 917535683 987523633 993942685 152416210 519633549 727546077 862037134 648273431 940227539 185884172 480036948 894575485 993867101 205868302 996218227 233198722 548083292 879297246 936381949 336479636 880563767 953874217 993943302 842319582 896032748 725008380 883435935 746893221 805704338 460267126 787260404 943898360 967078715 33808705 266272424 744658312 991940696 31381808 731303101 2733325 491314412 678485766 830176232 704853214 803912452 151020043 189218489 67805742 422047359 644765551 668354914 624497294 779868788 69487040 700978977 728135014 963766095 191226849 919639504 971695272 980171975 849557490 886695847 226124825 277732611 609725726 896059078 741377636 915371195 226433124 841942915 930544414 997725714 224572945 846160819 283491534 765812667 824780475 890617569 995070717 996784684 787133135 803560154 555049334 569688195 876468056 974910996 64671255 986590099 518411467 708067675 942738740 968464841 639572923 824748893 291439506 826629858 970495424 981766510 742021120 787881699 551418275 878838106 949950746 998413170 268453074 472473952 601065766 947691350 954689542 988399490 157254667 348578662 61472275 511543295 114047235 307201360 205335874 369979279 992336913 998539753 559595596 798380581 263889606 727990281 746196317 994387762 592299884 861876068 712904560 987310379 729025485 762313530 441632999 549235829 923280512 924870745 709683253 997165203 405004443 905074062 251831607 705451295 43607692 374939233 542768521 723612471 997119080 999618458 626726736 718071402 857102534 967120251 554653875 987893916 798064380 969338254 310862126 551751758 50216453 281462873 304617999 810467753 71861834 466674038 187992808 582375677 173090339 744693830 603547289 745598732 327598032 767961801 478327505 602651102 377354496 402236126 432463215 942179402 743856222 999569491 951566981 958401238 19099726 100759837 859312759 931611547 724689532 905757325 693990632 910594605 623010368 988638638 870176099 960993666 819050758 988669719 547301820 614016979 135817035 636718686 700334738 787758770 651781301 735012365 363873104 550479742 359572703 602589892 382106119 974446919 687153783 943250356 851783067 899942726 755715135 987471143 756605410 858832062 257997014 459281851 136571229 706796489 333318459 536693374 787653541 877755964 43947012 402869878 590356295 621115128 280914247 358449989 685152591 901225316 211682791 764091411 34152809 791778064 311261756 414496098 722131290 757030626 470982507 730949789 849081515 975184231 351498795 825528033 865530473 934998041 102223157 237039090 174697971 985992215 916088101 928153570 517434887 792891730 79671115 768668372 617973404 936253002 21784625 494428810 715188496 902867657 648752269 667040238 551854585 594976881 438203635 737554277 207128156 731134924 51127577 547859462 986127523 997572338 768686818 961166858 26635121 71295136 176043370 734062692 797773053 950169145 730726995 930531133 381318115 997484054 138941451 904479876 284679207 344519908 878105624 997343414 484282292 504948817 188936533 281887477 807367838 915723127 616599278 824803337 309292753 648870249 180859438 215825425 800425263 967564851 68472225 513910789 21252155 767592025 340864246 368302204 888450443 904574666 454798812 634867676 751295958 844346119 294365199 676660648 766682748 870086796 833082425 986669794 115722123 366200389 194956517 807229430 793701642 934443439 904621293 968170895 72944268 499868699 327496939 383546670 187770247 918332494 970829778 976043408 291365839 726881516 157848120 970594894 423310430 527054726 448913812 531608398 612133962 760607515 840848465 996000434 988373147 994791577 38465533 62433876 439406558 570481812 853594186 874136037 317623280 708439514 896042747 955037224 265720334 270414645 935430180 968989713 406048047 542902319 65042494 990848043 326567806 848110029 964934654 997256746 572846501 928993953 180970193 682228647 772906259 940783264 181967019 392950249 388750541 996060690 155415945 286006623 110207296 725671405 99348265 519695719 225776949 268119877 663452504 671735873 523063474 913041166 512778195 700682594 39154127 480523067 641455418 804767625 268505175 470328054 386041734 610343893 358720246 985641012 477760439 613742418 415038460 966532934 111320398 759545653 996609603 998042489 42452007 224274717 775247979 914902909 393617917 825475669 36157032 460214909 942542378 943845488 57937903 496036925 673652678 779776781 986834850 987494539 495371416 797062832 687353017 935928156 711554178 882020285 972136664 972281990 156233364 920452259 900960497 965900930 476958471 557328209 719503808 859910421 190162976 595684929 437585826 542654495 749319451 996403938 764084714 973259644 837967309 950273952 237329945 686425158 358802580 554029436 336052984 569437761 541340807 621083137 823177169 951697254 167257860 629337515 359357489 624390502 139304212 770825330 894857829 942297366 411208190 641486138 752096937 771837124 477201601 966475804 75969308 470236687 44972856 492207508 167374056 994401095 373165229 714902768 845591853 996079582 431505474 572795248 438043972 945503146 910433315 922980825 183252205 295579646 279114666 610301827 219460457 287806711 459434248 553404621 878780944 970804213 609983653 726643508 581044923 785995058 376323558 543651347 694796437 843610068 794526963 891021510 303945141 641356172 843340226 846743992 885471324 929146871 878159715 944889876 243170069 467889461 774928123 804923185 165021860 513567832 290780999 309329752 16810595 420737030 546215462 840638713 248793977 865234972 891158075 905208261 720960965 788321376 5298577 825110965 620208164 851490772 446250582 730714983 494705575 897368047 932346829 994363239 429927483 434560050 495356319 641612138 580290640 786694243 309472144 310985590 999559967 999879128 977851380 996907334 872588462 914025327 751521641 878960700 242269749 759355839 648845800 694780162 56163868 454049146 498453076 542567441 430578642 909717303 339542819 466620159 538508229 621467668 633908433 995139464 293240282 571630410 431307161 722849451 87781032 599273024 500027101 635909983 115318059 838301103 811425415 906173944 336534353 977854820 161995154 604160493 565819098 879847345 558056047 630684485 353378404 692580210 678505700 747976926 369778713 731347744 958058281 964547438 633543467 676123530 87612536 615122496 380438710 550305724 531082501 854847515 233861756 712649744 738040795 825972981 807943236 908447815 947388593 958123538 993885095 995060204 636465415 692424082 707390219 749875918 795145638 876506197 769263356 873025768 62648770 392639542 475200792 774096396 764717871 873055180 803784692 858079896 928670170 940182885 618980979 680394976 557324291 876929656 512152922 675125924 443702869 985902273 183397695 803174748 520906600 664808095 132036479 825406029 674689696 689933499 579446181 787428307 958045726 962796545 695222060 943700514 61321215 828466158 879639045 911144325 251475748 313818144 13422945 715652219 148219416 504214822 548629510 920759319 69490980 724347861 242047863 341319835 98810129 122384450 888908505 965970792 291351571 884848377 831924042 880083472 848264529 985066704 675447985 942116548 744056398 969961455 103598281 718640226 133180059 156427762 885034319 893330606 211669553 767900193 564846909 802703398 213921083 408754921 164315845 613892894 792018912 820802048 349323606 371594597 254344264 897322330 109359954 977822312 555032588 825568461 358572171 597744385 59190231 367327143 301080207 318222653 191058363 582903990 444195576 900102051 424352375 816480233 680335210 741986970 907126876 939678006 82596169 734294098 387518882 894254479 232467292 795361054 97704712 104027418 82283156 379223890 487618929 692530202 260807826 270877689 288052201 718140588 981659708 999944750 65741549 953539958 747526250 787363905 866360671 912174866 530324802 896166428 904383685 989082307 738862053 945325088 276552547 771016586 936739516 967854715 457987044 893588396 315713573 988539948 855909980 900383093 299755155 514817157 135339184 187690993 18984637 833802261 594355505 759143154 568560949 578163435 827264640 895319669 758331670 915454594 535986836 655180943 370388710 821447991 14129366 968855654 653772565 922654770 600446949 944706526 51768364 374188372 399860619 852418700 735417212 853451106 372656659 857141961 600038480 626278192 413286257 859582623 328402509 498887743 6622046 9264403 496311991 704269219 842704287 912176955 697267075 832551596 448874220 813499713 766574432 767754713 360232497 947188771 505841961 918072142 677565446 971367710 685840692 852470880 441727778 697989168 217040022 261118009 465680498 560533159 919227660 942250560 553114976 803025778 241838362 608575119 880841070 903861640 730989041 888187074 733730589 811609945 648565208 807809034 537878720 592192653 287714534 560807754 832180050 898789018 446801188 805170827 448224528 541476366 224577265 689281707 353604384 382642702 664746740 963541784 848898834 890284274 249392057 569638294 432287003 557607500 439616673 743216891 674251907 842786530 855916020 869211604 526456117 977267860 627729425 756157676 288110826 923182027 936948261 968369870 572157614 631813510 973761764 997232120 742395363 747345706 232069711 934650492 101412472 618164260 248326705 397292203 183523889 251325131 120213451 984049589 988962219 995686124 760761915 872080982 597460963 988916365 299377031 455384614 180337203 817409105 653191212 786786067 709016683 772371804 87755563 726561882 322450565 470698370 803373117 965809135 259507104 458355610 205406925 787110548 898239450 921905406 820836554 891904748 541752598 952559414 839030199 988844393 400670234 849611575 538286375 915451773 247011217 988718712 235846286 942855534 767050368 887381170 837189856 975180396 72131081 814043219 11036781 691231410 780694106 894576267 392616725 999536856 867983495 948597500 877087736 895792758 971463481 992598376 883349755 919321534 74131909 662809855 599096027 814112020 203738506 607847863 777359124 894864358 452838105 492072984 560804147 730357218 262809215 350128129 874116745 885371918 379196529 776086848 346284703 680683511 937489424 982461677 177693254 344241232 662972514 773954694 199009224 716237175 41537781 759524698 764192840 973354890 506898727 669603013 243573 534131146 51292371 699755709 581493609 813574180 426402017 912916461 181606047 933804878 70975019 252194779 853567988 991769560 342568766 947726940 914226748 942103512 971501180 977867269 342327877 951882052 642861153 833258232 116116985 125332586 386102360 695178432 145232376 211579479 874950266 912500963 57051673 737501783 264136314 997689913 283368072 394535537 310822 820495111 386652031 536579628 566741301 837909898 368795384 927422706 124223083 567973358 802198928 836024897 254111191 294341955 68740473 503532456 199779282 577224829 351749074 811186161 373936392 876736780 18244592 748914849 517907345 871210129 271024057 410260374 883655029 952835981 72371144 608683413 559979145 783122836 134073955 537652731 420655373 770215194 296684822 475627484 733888867 748078539 756246276 809279022 428081535 645207061 822238762 987173951 928411636 976496243 169574830 627109219 324333177 984366049 670483899 974611010 370168577 816790791 25022748 322396818 503407780 789057012 853847186 981333256 13839114 399867370 422502527 871853526 978216631 980338097 555270280 984186076 979855943 992073426 638182231 959443726 504442728 530363422 26297723 880015524 126625602 187242592 846681390 988435099 265694366 461780666 637244248 917333407 60653088 872398153 490421022 771609159 814355635 866265769 882763935 993224292 411859539 814754471 611827745 990630149 95104008 286242232 929855520 957193567 695698921 792818750 430841051 905217242 978971128 979027091 623242326 852283124 35141377 906686921 241126300 968590629 968501500 994768191 382181332 698320952 576981707 886017802 565867687 806843472 297286153 794109607 807145454 930084443 17581644 673606671 44997090 720516664 115131533 930554938 160114715 329762732 116543270 641004563 613364341 862612332 365669012 575344108 869871932 908377553 21111537 279451528 394028022 492305976 90597969 457237226 335048339 850379180 244075855 546942920 203626391 479594479 951126141 968808528 415448816 928132914 4787553 481910114 464864733 752291918 443869130 734187477 523715932 616385687 546143913 886679206 383515943 987011216 445243846 524195365 686178676 762717866 954385089 987593219 839588053 929665555 147958407 943666708 338083883 943979407 315590088 746674056 696789650 811065571 562761436 698313321 320569367 381885310 484200203 576980928 971918494 998218063 333628866 527168387 835140749 995692617 869650589 885158122 394921519 646361298 473829897 546937010 236953384 410363023 54320681 524944714 141136311 857353916 784023695 980107065 15268391 511118779 174254427 657005440 67182162 893494084 594010019 680436256 634456222 810007220 911847067 952666735 732678473 767699888 377698049 606376002 486106672 760633547 64340947 862638265 223670089 378862377 51786273 468831074 723186084 797444563 697289533 713979821 418815154 780964660 309452849 781066182 680623280 946733831 470573761 852478714 94987461 198770876 530606177 942326326 768079065 784168668 325229407 879015901 805799030 889347283 692192451 739812922 554076414 773275211 851452087 924155164 525700757 659227933 893481516 928041292 357783042 623853850 164090598 883030272 786255701 788713337 565090736 730903920 573007181 912096198 160280714 986537240 890554028 921076305 62770261 228936461 990884919 997612807 492747655 968220862 141865392 375590996 805299359 848376566 322721133 396436952 642606163 761649489 84391971 263820872 967619105 997717703 765937529 870191684 507115119 597902320 501167148 918664119 697561122 930837387 357143074 778603397 606756567 929101837 754796975 898317129 168215342 258970878 632507443 943742267 815140519 845602344 458337029 873709964 138612107 171216605 836344473 992751506 120048408 524837484 88544688 388912352 397030734 478348129 588365462 658143621 583958692 991983299 337074918 931552395 270307409 630406567 521760687 545882869 899552470 917193935 912150718 923295244 559502262 639335817 67579487 205890641 586438186 702471203 812187230 929543971 410278747 802328214 779421459 787364609 272479576 327858094 175257246 816535297 657842994 686251326 506183823 580156981 14823816 51285019 997910846 998370995 711364866 875334337 617837972 679810900 406461649 412559458 463445444 483506048 295757261 627871438 327168559 698541440 969426816 996446599 982870872 988623956 38918877 403759243 868598933 989603159 48133951 486952044 683617835 964653746 925603871 972475284 300099250 947741981 920012333 933102215 132374933 796695419 274279804 858553209 345247919 848201056 649250596 769164700 105702845 744227554 834083085 934195098 12860344 114095630 889969515 929469027 604147836 646472290 991911380 993381187 628894923 865978493 900633239 961248618 655025033 935901331 719694930 954881457 577724731 652544916 779567993 986137820 383972264 387159952 200487921 778152167 83193051 783308070 525525518 710499808 402763502 831615976 590482028 752612911 716358423 910830244 671130519 942171225 26478831 712371626 650871817 802453724 815221144 928844288 764918299 853678597 124537206 787276298 172122931 456366241 334623389 612478710 81582801 931428945 302428775 651464974 41499902 362555482 486763221 813084712 134936225 175474796 596565507 731331393 194970293 510538807 295390137 609438944 551728391 908910071 826321948 970390637 38130516 107610658 863309886 893173527 351574544 614028702 642471873 755063580 79012574 676346272 584165575 971025817 49437939 920340514 785028982 836172533 260647880 493312980 160564002 186410685 244681495 634408333 706072259 997168511 395765071 922199223 2236928 244684384 241288679 812857618 194402230 376007973 681963177 962403976 123296056 590008634 120658290 285428719 52324350 750074169 421068065 515746585 935151002 952272329 32268511 292869208 934126048 981940321 63772416 395455560 481287745 505333535 589538589 746853305 155533295 640876355 55041689 579015907 670198140 879349972 136941630 408905423 220638837 561501519 859013544 887724078 122170699 377349796 823421633 997644878 769185723 878967107 995083975 995296292 877227906 971169903 276702857 760935347 444206884 805767974 355573504 909065572 739495876 779125489 778150253 924522094 757952222 780860317 550891124 655131897 499483248 733212055 534265764 724138564 373541955 796427603 46917737 387413809 555760043 962811944 23104982 931149037 38602292 910697637 807114579 832106383 33170847 351836300 75748320 876283124 176861104 643365452 444799588 517109063 607278877 986570676 826962663 946952006 343374206 883377314 553569948 694605387 423415460 426971187 410938817 492844605 293351206 653349604 412193633 959249510 302344048 890182678 930318526 939043705 539867778 670194712 976757902 994991825 367200064 595410797 587141643 715037137 524158630 856523303 427281135 633349937 223529381 886373733 431303197 636299315 950946969 960265880 576103069 744845447 582876925 950210999 754315457 881592547 32182983 457851123 108785333 748153925 745784378 819956768 203664320 657812321 687852336 823301968 615911228 966248273 303485861 915929137 666203728 843683686 757778743 899750978 55112407 122801563 327617800 601137225 603974415 623716403 424176910 562448728 654885703 656163549 567315336 618561938 787768962 879391728 114916305 452629219 807315103 920208690 187383923 855099519 163046013 188117825 837497277 918688074 472150672 711118333 191748841 266127055 527420797 896662718 664074677 921051271 386104294 406851074 410833413 416762898 109606087 834133172 885617377 895446987 603740518 737390859 877442738 895940188 618855508 641481035 658960922 793510409 559120680 647235247 262362900 963477856 492729465 855682967 895066544 944179492 407925541 752710069 144626455 835270656 193770888 457102724 514576452 915889437 517452241 770045227 625661778 876627104 594590315 753717431 460941172 583519188 780929639 935750883 597360471 927613926 870758286 906699236 237405108 367353678 354304243 459592416 47350092 671511691 972907825 976079277 457302719 835632626 408351319 726065574 708427488 904167788 552028257 788787057 293796964 647089791 656546088 912879959 772490215 839971438 431968484 504542410 764564584 774832441 249443644 267181855 942291355 990331319 301289526 632231373 707589453 825225465 787142896 986570073 425900540 537752263 532410533 655264438 721538267 750705365 501706813 586066981 38057228 883510027 286580922 343766947 222185242 781769431 336329100 500591625 169791677 573508660 26374706 325101924 824697609 987322756 845270724 973001465 41923460 479952980 98864260 867099330 299068705 469270992 844049710 943987200 452666842 495822990 745251277 967847381 123496002 250531296 53592322 968113517 995208595 999782121 825456941 863313109 695606023 996256646 994490938 996671520 722636571 857263447 249078146 722721687 460165135 471630340 731523334 962394093 879932972 886151982 965095162 990496547 430756674 863448655 351756120 416314837 210398118 932653188 245107256 999203356 838573005 843086972 568197420 834187271 786914180 997314567 625919566 788821646 880730904 901724437 886871871 969109758 56243157 652277827 321895546 707120864 337971664 480736299 690428992 870485477 8612642 914630655 779488943 829002892 491227346 962175599 712512748 912694272 569993605 896830729 793859931 950385220 105552507 521549214 172819920 840433815 928997000 993793588 583997995 879089373 551945432 855040877 461158157 633337195 22414916 695594254 834389565 976774055 728682048 983717321 730985364 975123626 696382412 996085338 820298740 878800241 383018239 461758544 871098184 971079944 293300794 836943602 805074596 905791984 665433139 756742373 528015905 730645767 125014451 427273540 923890784 988504859 819590861 985818073 332913696 636671554 320913612 700126159 34892460 741419112 398934495 777987787 808862697 875040308 587507035 674382998 456701203 920063848 188217224 863618824 568414967 777503617 540089747 760851130 364790278 685770464 775620123 992585593 608244171 677702126 697289584 922294210 249132263 714722584 178530878 234369254 951042044 985731618 135718168 612244262 303666956 367460214 822411532 942001373 214075044 682146835 622224762 970720344 126313261 615102977 956451146 960307222 600494558 899822453 31412613 102597812 962980098 999003240 227560339 332174879 508760946 577328619 650763894 673953297 22166578 749926253 540975257 845268612 134042088 360431010 242880693 455425336 530734816 724099763 891682909 917366476 338018060 988543965 614191164 908297338 910242353 925403274 910586296 913732905 575234747 635384094 937466571 941466696 883915714 987471843 714132310 992367244 715488275 788408196 509974372 984501636 835586399 853112211 523367755 741336339 222063725 429818243 500841541 521188714 271282242 318259181 637710040 658134537 225288146 908691650 100287852 288539142 578118907 695655626 965278310 976235938 369670189 950537698 128080167 273003807 661357269 779784698 611489657 997369468 769453528 911925198 603033038 676938533 824789558 832023875 719416995 856076635 949030085 956455204 176396817 541851488 23181040 625200105 234898265 890301800 832396004 835282829 644763673 963021235 383651105 529873151 743779877 755515783 669693323 999963869 535611805 598121408 759857286 990100722 629227601 725781124 358714770 894499426 596176360 663877059 682130156 988019827 261652319 322753939 304983006 355746153 238229065 617738451 601634371 652140264 496833949 834995306 7194796 927838532 715833043 770776765 964748111 984190972 358453274 563280475 262289933 478482103 964350381 978966281 32929105 289847653 299631184 986771840 412883761 771072009 639464668 964236822 324412558 771100474 842168559 846933732 490460776 582905801 702357371 936321412 323081500 656929499 771385407 888225001 843901632 896665130 80260048 81801667 257942481 389884802 110106036 248648924 803155559 810104478 432886876 734385637 300924098 570209934 567379720 875836145 239045445 608005584 756949962 938031321 340119659 482024292 679344696 907912258 149256607 285672124 996917843 998999680 68185260 441035558 64453830 248184078 504243087 865964596 238055818 249551436 680649965 699139799 949093109 957723665 813509582 897234729 137560750 920268333 961068523 975280933 31453484 475093479 722216136 753084954 395974509 652261465 583290404 634515426 844638625 992795652 164076450 185391746 654598695 994533631 348811469 707135038 64546688 491804919 961518234 975959414 754784247 792589408 635958938 923428727 63586109 965345546 826962764 983773672 206187370 822157146 903295967 976457478 18397105 840732160 338747899 942451671 604662030 873349584 318466275 463058544 28601303 75794301 205382429 527686332 29990510 377926252 482385392 623074979 816517487 965099698 533021138 738436523 149798426 963675484 492458580 801239519 382374722 562425771 730533472 755691726 930294838 940755865 730995985 797202618 191070175 971112132 708783187 960204414 593400959 788107136 664530331 832620213 863868915 864009599 510044888 929271696 584127802 658815126 314412281 657200752 583274385 977614615 939524492 992003467 677510063 791835371 170699202 804410495 658265304 849423826 481924606 763499270 525822013 779016659 325129360 338335021 648659998 793434639 271189543 476695487 38917570 171696282 52531755 275440796 150992473 868798336 961678621 972498249 200984108 924136093 958905586 966948756 666996697 890604882 302011064 506329152 304896711 317112814 919179165 977180487 260949212 455453428 975012232 991311698 210504623 646243832 484913001 640552155 36008519 562475559 539216006 711504291 899324820 999868932 205324775 522914642 480981698 597830073 787226556 975206876 112978484 722095757 548981965 813161527 991135077 995427073 54372561 143844710 893238552 947026810 482430645 744653372 656939890 875093857 853043039 916290673 323130189 840394833 415491914 875120746 61407036 317743023 817896804 942810628 789550700 971824203 812870121 866021248 194874527 391311920 218536110 527048032 750179097 928733597 873859242 966009720 575884154 965115578 938528568 996780275 72347314 898832250 541645662 965554905 347379854 747313078 919015103 973233986 940930969 945456081 321680599 698486343 810438384 953118507 653872891 958827081 864176672 932550114 915607024 960477540 390091524 884549984 292121750 319134414 972871231 986963555 464698830 944992059 469415708 960578065 729785309 733324463 218753007 738933728 243945342 813709289 608370123 653599597 156228373 831918592 667791907 916584494 952180040 963245314 347117527 895606320 543124312 733643372 376266509 835961220 594283964 725401320 205125550 822728242 177659384 572786913 192456559 591113746 725255515 805593370 462598953 851476373 182557114 591334412 508944586 762669442 367789495 512089429 320798532 638012070 554814797 680842368 761140379 763948130 88923282 739246583 807204125 955115807 864592964 867042392 128271347 839018055 73661666 248407791 128630208 567873576 101299674 521286267 319966804 660348649 779239788 839023779 407372913 845621835 980047878 994389476 376617691 999520627 105575038 209105231 36476684 484400924 804970263 885440374 567343494 887993354 376749621 388958686 895453811 922540682 387064594 984736534 432018633 709571761 794754107 796212920 838503024 915303857 658947798 866897400 899339365 899469621 603516635 738536004 213061348 583736041 937575847 966473345 984653490 987232937 293954297 742885684 59989666 910303439 441562609 593337193 473242170 790402315 211482069 648874936 681880180 855342576 37782680 134308817 445855058 718701666 117063664 322339247 265438909 435166884 835673356 914987147 548431489 844045574 11686699 634533794 382788599 485911346 142844318 860844762 539883123 918613283 503696064 673351160 20063411 832872320 854902897 962719189 686548205 879872520 609403197 865370896 635669035 986848597 916847803 955390488 833872590 906711600 247591629 352802433 738251081 887104637 667921945 889919955 192982755 311741269 439954893 628490120 31728602 440651967 618346988 968646825 124473692 185660620 729022109 810932889 312844637 507357703 657134448 687525009 59066757 907682867 831958919 899419780 203087729 457658921 898810458 908301824 655173461 867034609 362782241 519630102 660681134 673444584 332973643 898363270 152956816 583716560 599336839 876924561 488560546 745639304 141526802 324329821 937751217 985484294 914499918 929868456 81594327 907621086 605878994 727341881 367548870 944381405 331032715 435460872 109457812 752071374 936321851 948599000 918666774 941389096 820745655 997040943 846053702 982793285 711590633 987898182 52217203 475921576 998366143 999434549 648748041 762875446 454770109 799725261 569759085 731185588 85490120 599754438 715069219 745630075 696838196 801055454 540990233 710827011 879026748 899490464 948670688 961301809 902786646 940084857 830743986 976826297 502150204 574046554 377614339 478743436 610382186 869513544 727883538 757354381 981132359 989534247 607069761 768506457 499246877 793231989 923251912 994419932 125942005 450600782 582599657 994054317 813470729 847676337 362709607 980678694 143861045 752460693 553636815 786216581 315440712 791036309 264300305 871955471 104414931 114849805 542680069 846565139 434670366 904880215 622251788 926171829 863479300 977095318 712393425 869560770 115105180 901196049 359083351 916494754 287009742 880203372 715775823 978887307 304128912 986363742 560059536 887642999 363423908 581590580 205117178 853041996 857469272 904643062 771760559 836791200 5259427 162702839 663903003 709566421 230327856 560951957 252970034 950763674 158004981 437480924 519944836 921723844 241779492 731894691 64664721 906062167 196165962 916438810 214709687 343368175 703263293 852788311 982858920 989919374 113942319 811731960 432183989 969201386 658300533 942758198 825563920 982008308 364679258 841609314 459506989 847984250 174922122 348641848 931248128 977997049 538516046 732717279 913360316 947346376 72163925 339313768 946232958 969159341 364898754 776293494 942097501 952672215 527254884 820153003 908291237 908795884 982523485 995418754 680091091 700408836 35489676 389444876 672008591 808460621 607772869 717146329 969755380 982939938 110758776 739269147 606711769 910360426 651474168 920602767 809901338 818345463 666075485 881050685 361250997 773471524 687892506 739710300 926756322 966571968 519047636 561289018 9609805 753092291 945095019 993091238 701671603 928341709 621544698 946549521 957112218 968116774 622279065 977064924 89089555 306016875 768190505 813857833 519947829 941385007 301297804 986892842 105035725 243805164 607952437 642057982 947689945 967788961 729134116 807231215 789449543 911175239 434542449 639518799 135196907 447519711 41728781 267995402 982761459 991883034 377285623 868952925 411374857 945210098 727761071 903509272 951199850 953033314 610478247 797931552 626356842 854838985 607554220 879459115 608470089 788585509 365597740 981915845 883170344 942352670 932251208 998324930 755929955 977608049 138655314 274991791 556422740 701490083 785423418 871522218 968041570 973828683 223119930 897167377 527899170 601255914 375335780 590175987 101506743 806859776 664772966 771552100 932305337 953155649 972432648 998653246 915455672 937520343 279665063 376672057 907023019 965702268 162966269 747928068 352706414 832809182 973561471 999323648 987261993 989624353 954088686 989601811 446368445 746663923 227778983 727823871 850488063 934998065 462223638 895864544 137469180 736926330 625168232 710106995 352809940 433678786 141946891 268369867 915146624 966163677 61867086 724521457 944308080 978473177 903752445 965159253 753724804 930802880 919009819 969127034 383371584 466933427 506707863 620236746 775523900 823136149 942163937 964185241 786515285 943147577 863305401 946148589 161355545 565699686 579114127 650929809 463556376 506508627 134764059 303678499 175813128 497892976 557358332 919570254 453562725 615883394 81087790 173977659 96175672 504519534 182783433 516080419 776086411 830858464 808845173 870727809 462770841 634958058 764668557 837770044 182008804 428170223 792763230 991847950 413436606 504735178 501814696 927570320 102007542 525231156 545753069 655855016 507037801 960365166 552204376 661921015 956950488 958554962 944418215 947981512 975100090 981056248 710453878 823753361 579660564 938434253 901161376 936773363 113017490 576614135 290847481 563893041 664505465 851174615 882236455 896971679 387902287 763532926 26086236 805888651 166106964 913223289 9641953 648962634 8957220 905646393 157127127 259589758 506858880 743232930 544442248 551738436 909768605 935458661 406583168 717968216 354368467 716361644 525426198 926842533 315392723 722954972 953075880 974449391 22266618 925962787 110955618 201041362 288523059 561967472 952942496 998625904 434599651 545078763 845405994 951750031 771591211 922583440 76911497 223151849 562157981 875821872 543458272 610043734 540731938 558784050 872026632 938985173 373398319 636583978 205065875 210282868 693486099 732311863 999914994 999922858 975794279 988989371 466532992 581307115 796686028 972082142 203368159 204060548 757710866 962175416 678207733 918809195 550173108 711609285 342797380 379347225 649134233 938044742 94863615 204527294 912045238 925659525 746947697 910224820 124523598 235689901 683040815 935030831 772556814 832318605 46001750 782856572 520182605 716253945 979764375 986863169 915869830 926120115 983482088 984925432 253408644 698437742 62207625 123298775 354795320 864242553 339160698 835265135 430092096 646864195 698293903 859047487 595243259 938295015 673392246 686736108 475539420 563707632 250569663 925443738 40707178 509548257 988161755 992340694 993439602 993873369 719272434 782388240 934295530 950494795 91431196 481358639 293449674 508138993 562927097 870648528 456665816 466069751 835824479 851621205 904169031 933529403 230740869 686454078 796571420 955810050 8697308 803060831 816471272 839680094 174972437 306392904 602174905 988856202 96077425 372107677 98339061 457734622 716936179 811573716 466041236 907093482 214174294 903185155 156754950 477775019 547975434 608121876 393938551 457347843 513477644 634811430 149124114 297228596 216882699 302575084 607160742 881385115 135839882 497357089 204466785 218882065 75272781 834459827 746844863 840615268 296010985 577295316 490083065 711421332 181848105 193881517 436212779 877468160 899346693 970638451 219127831 594005885 888584791 889839246 381831707 846164982 371620117 603718283 163136734 257423019 445760614 967361679 511558506 883359627 210839152 273437044 652108369 719702211 245867138 972151657 876922625 922194290 246936639 557326355 543925328 832268469 27719145 147301600 912638844 990603452 366048860 515604329 912014298 931330493 292665602 669156124 690217838 851996796 107299069 375556375 190367353 366754388 423364430 457866762 126728241 655656912 135437619 866704418 280280833 932348171 800816919 932012014 341932185 988964887 685012345 873702257 93838033 493098958 982349698 995892945 969327103 975110798 612905341 746439295 718988154 752169337 764902211 940217560 155837871 527129613 667139473 715051336 51726777 331113839 381967645 755326327 691664328 804331608 589580643 717661506 949809387 976329070 815764043 916364997 213693555 744771350 587730638 653421479 144850416 739045306 948284106 954514854 503468976 989871048 798836406 936265108 386135532 386760648 324681733 482584730 301526277 306135192 852571458 964811902 863330253 953245354 618527554 829914152 241999563 753631126 788030451 925975739 600534787 847171115 485251222 997129370 910707292 915126417 354262004 648809096 451886811 677801111 333216700 997091758 152652809 996469782 830469258 967306167 312049711 932988605 698193774 888791881 332477988 409665461 849463215 972042710 427320050 761137096 108488385 897665206 177061268 633432149 419847456 457264975 114168607 786247459 478025781 819001108 194917627 655795888 880408963 975131506 917460304 989643843 522108737 957954633 12488241 76814539 603612055 643666219 7281541 272496693 43744794 536288482 598951348 852799243 631688279 777455762 856717516 871924474 568727068 974879410 66941443 768099387 673663629 991999520 491744885 563397021 657229913 987223723 960577325 973184598 846191882 989403019 307684277 518901580 913948428 948410698 920303100 956690815 129196076 145963971 75055325 364078666 914223311 919741053 920171860 979435560 852891088 922872205 464215447 935508398 264516541 773646464 751462640 939529799 180607727 291776541 532193134 645479029 29527231 965247839 579612880 970820324 939075117 944632082 417410848 873182136 694375718 759256786 705545871 770930619 563324748 893623745 317429049 668340397 909098283 974907788 540656173 665201980 378851113 620179890 897414949 972013598 149346523 616069714 644540000 996224474 646591187 960700228 246233465 306344453 351566169 367051090 117232457 207208213 966568164 980861063 64430641 511031586 158865474 656938332 202479228 666878023 127296904 541647851 217121911 831402536 727022540 933468696 184770135 974664988 336208333 474687472 394693998 820394710 505429716 581942674 446441449 522057319 672014921 673628598 786990327 888346106 468152834 564088795 977003149 994022760 751651818 933980709 90006071 537739701 789159371 886950100 900537414 908943469 209775113 485963746 611748426 669608144 547635181 725976176 34801251 627004954 873360231 879819082 138382783 935384006 232084853 791136271 628479585 936838460 542374295 612208046 824723838 996402601 728352407 847204033 478578669 716839865 543832318 891159903 805455494 966096339 92430111 151418891 297217227 620739147 328026017 980598905 247347091 331790991 709160527 760588881 148213503 715993888 895051661 960082314 358108439 768935026 279056850 594592455 556265663 893842164 241993745 707209953 936231700 973781664 979573957 998466990 667272321 667797105 525871945 714303834 356767082 532783403 893332501 944052902 892704650 958735153 221277882 549490403 164294851 971595752 933231453 953282788 137954681 717263984 468921371 897826215 289524195 656039278 204686164 511814597 839502545 991976809 816673956 937379090 428398748 636626246 133654175 667421046 53284743 354255545 941852631 992911638 946091879 962231967 122831926 130949990 889659030 918816826 762395534 789798523 441739754 632712807 829811860 907225783 464573353 967122552 492275098 859514275 974542160 977894383 284862987 342333362 677882262 986028116 329496891 467209416 883189610 900025134 277679716 631130158 765073714 994676830 23029093 507749187 926305128 931619148 574381977 746024933 742889020 937257283 806270034 861745425 893193721 912591603 439640889 864937896 118158678 356865066 534815948 715945527 671891938 978934129 958905326 980506498 292469459 935749642 917065333 992271094 27989660 866334422 656223208 695685660 422888258 480679271 712808270 912643019 81482442 414622261 720849151 824012768 324108306 856024691 665555980 729415753 332225331 891651021 834501255 883801709 934076973 971063865 18933476 772688331 642116915 843648228 528208247 909147756 995957085 998544198 246506503 692338549 653072478 730543570 121277135 423259452 111435445 191245087 496529992 758440043 701816991 845020396 471491363 827637284 125965879 501087275 840717873 882803465 767300915 933308324 756571367 792855339 880642233 900415416 516624999 575366956 662133204 695067916 494757867 873686361 736740552 813670632 522869607 996885526 707875428 966439747 989971294 990610631 523477629 613744659 921544344 983630601 957498983 984304227 860944344 928959678 268189059 305382505 319606746 580099901 683048333 881404534 300641957 837718307 97530973 696295144 224866064 546247216 677944591 804481671 903907414 949400009 516896517 783404875 362566547 827746214 805707649 861877139 845184260 986403679 517336972 787562955 554926080 881143035 984037124 986596873 425908651 864395310 150880597 437751852 532619732 968913291 589451272 953342018 481141274 834548531 695344041 907496305 634921257 957197356 59798908 921711872 930430056 980863892 199874774 558549957 306524247 619355092 882235029 968421015 156263095 656290005 33059906 495915673 291018271 865989621 966500300 970283283 303350118 659556428 40371195 797602202 328637828 405533295 767588553 902762842 617617501 620630189 161953080 645622093 79546274 559872318 899804189 983132106 637164808 990737699 927555804 961197336 175668326 857879902 779692183 928127124 619232607 698532879 781271110 959716114 780489919 964207513 952045400 983501483 713774941 820643844 741784762 902275712 597765904 916477332 366309668 589557658 24882906 372108807 49952066 679142683 169133110 904673039 179704437 738957679 599967559 701421830 520142725 639495908 680600601 928491222 576418768 633518120 482027020 502585759 613389907 647591281 177509657 223039087 610890314 908846032 393551580 849200977 385022068 423385984 983371214 998391945 421755666 950334609 563900142 932180957 605913031 906642863 113208243 220955637 822477224 930384845 675619916 687760925 16745084 397401715 552928413 787363445 275647158 867855760 359585981 703738394 394389135 673889066 282794707 390089029 489014068 599607108 516658616 681782300 263470771 947712179 658055031 901221384 236430524 314655215 990063609 994219200 661447838 907762924 403558386 631887327 460946615 726506430 39970341 74076443 57902169 529693069 19377144 271103074 216002782 272227232 636985136 832462362 47412730 385583686 658338069 777105288 524373317 776453721 660117628 783174253 971401852 996864696 768222994 830729417 92445974 839613773 113431303 129908402 964000231 964486329 332532197 775229323 201036842 816998092 814798598 825968066 231566023 623933919 158082473 643938680 793478551 879256522 16201732 69044204 13647117 493829563 605736080 856173296 349697136 439744052 125668605 374225226 927449768 975432469 46636156 386272803 129646853 215142817 976644468 995679068 66344919 785123837 342380205 514209007 822350263 860816456 820991300 898634960 847553429 906889793 569502238 967169309 470445298 769615072 548375666 761034262 707734176 771491882 351323026 658238796 676607779 770265059 21531064 264141024 735046566 736955950 308577003 996771167 5703658 738105705 630443159 826337149 19120120 188669217 941533052 974609629 154611151 526180733 384281771 569974785 947114850 997745185 135776022 457569060 617354471 931307200 449267043 854835911 360096905 928162604 869378633 923334690 462290926 797395997 499248438 632229330 868108014 887125120 441674085 783850613 511551464 521796675 500908229 848713680 40610669 574358594 220198322 893788328 760170234 835637084 34023672 614545226 34867581 160733721 745227795 859761569 429841838 492392812 731561134 770331686 784280922 884329458 773129061 787657655 137941404 702476521 859249473 901594020 981077229 990393854 770264140 775284344 370802253 508412621 267730555 670576328 322611917 411042641 644877107 879229039 785394672 913336265 45642777 512974573 431233729 597326261 450698101 986958412 427591330 562891743 972545172 998267680 446693294 448301980 793217379 935066136 722679024 926972846 297889317 677534714 541977002 729566841 463772999 924790531 25924544 340820761 202397810 388361386 700078742 900575763 962245043 990628382 202890872 785870816 850463768 967159442 102836825 310016464 232369991 864089328 720894051 731351313 252694433 797536217 498302179 788998244 1868276 950029482 988732735 998286806 956692963 973459951 500784207 724947286 129614207 535222369 170440789 457678281 859062846 979577286 748593021 861521964 82935969 967580807 536666060 881570424 147079075 478618154 787075515 809139303 425652646 737136612 293188375 981156213 185601673 433717420 151795677 294346675 869475601 950024191 244945495 729955045 497230688 555778868 416734196 724420765 871117962 976238471 556163947 937926338 542894777 953390304 798881247 942131244 819279484 953084664 75516095 367520946 600259430 981864007 911347184 921872739 662589339 754003406 174731214 461862253 874068934 949401719 813681529 876145257 345897094 738826561 284944675 647565912 196598152 779835929 726041707 908105783 143350610 211422269 997039851 999651722 111554848 894809750 51005371 387978629 481661587 909890281 942664616 961460739 192963831 967214717 675509228 885884025 523088661 754257175 909486874 952757345 947633359 965926707 864447210 915032026 762047889 877150470 101810417 683169357 316923093 663993909 132750630 240971809 867602890 955527609 462077907 821458799 280212969 649246853 842349792 844150250 674887388 681291610 732171458 790104905 459011009 585087009 686118917 796454381 743753407 881969190 610599315 634276333 579970439 714200809 536925776 900322955 766806386 928206301 540279961 831198702 854672675 999325388 406177111 651915438 746964723 997746200 210331602 694783908 798319528 929321662 695548998 880333347 415044997 580046400 28176255 699359827 192868470 837475369 3156943 508404776 125915266 680095500 137741133 909132583 872468333 983306867 887717081 942311447 224423328 291473547 877540157 923838737 487272175 607712371 672745262 931445443 426147591 876230768 318141768 854896609 427795254 806209818 490197524 520701259 293683476 352842309 772393737 973093121 204758407 741188962 674774342 730022613 505771383 917637956 258363496 854639732 579198974 828971405 950549224 985647906 441856607 547861343 333866109 993208539 833942435 850572171 3816474 485280305 99987703 576351697 526707684 819710200 246140558 269260108 141771351 979953735 883524556 899915042 462268037 941106151 170392593 657127958 895142492 915483258 982758405 988066005 631277924 823584346 165697538 710803564 625169363 660691909 730933636 775278640 61506865 710282389 944585651 990107686 294431967 889430177 999466920 999810109 699603793 796432217 257293541 616541231 281647360 297835404 406502485 823827162 800204626 995289037 396395911 477872428 266073831 395515177 778028339 864067180 312157735 973231211 122504263 986359721 883680777 999098974 314956918 936298581 802195288 822743701 913480874 948800245 42399870 129370983 836392046 874787782 883824432 938509165 38732447 484588540 854450828 946362604 140906100 482699766 214485283 988376147 940991424 966032778 894777547 983534461 317479645 567732034 767446009 834787776 544452015 961483637 484004588 726985157 179138344 331252193 546423645 787954214 695063977 704845192 888301735 909488052 421603274 659701561 257442996 772741985 247322438 692881197 829765488 851048385 491655727 697148458 51700047 607367335 959720774 970929232 752627567 763709205 735702437 851439475 573555770 703411036 943404904 948698603 74350665 153049696 572713782 593579995 426228690 438544701 887468971 898076411 162277759 452011254 312875066 848479879 379508733 382830217 141791457 839756354 507325461 752600024 829110480 948261912 838654941 874594960 462893510 871493145 328983612 622475327 935020888 966259057 801187601 877308350 337505332 887371641 348069934 425206747 322819167 336972295 1244737 741246790 996955480 998876035 338582754 380456659 378483939 744802488 454288572 565109395 879768845 928280798 711823166 834725146 729468864 839783215 340438432 795047868 777681975 944520390 213203750 912269720 697863085 851519683 298928663 820711189 218281646 545695776 407552507 532905498 16072061 859743557 471777122 502048505 210475589 259354711 675140113 990018811 244508292 849968321 963978499 991801901 841829155 920075529 841168594 891094415 298637565 917876036 451432699 462194911 730278342 967238156 650960313 870673278 31241339 833746340 362811627 858726077 473726250 613572028 639537480 751897956 924085503 973171302 430750853 728251672 524117477 777115097 907539845 942578652 78251643 759901181 594247201 707656236 312948476 417873869 173770085 774498873 508998023 649878243 933417417 993097978 726948070 797467991 191330140 499517788 753535308 774270955 421215084 868374969 377889872 767560265 540512905 578589412 365501273 678497163 582664591 777861502 287014412 767664864 494335021 699432439 484380798 702142531 447979258 449373662 242891364 800120744 971156092 983500258 301900186 573923124 344772965 426096722 643591944 870035679 93213363 601847947 995155397 997955745 440271488 540402960 935210329 949862913 737278069 810112531 85061344 729889052 378241458 476072784 586039812 907094709 479472798 737682836 464914173 700332728 41941831 104172449 148686066 730155859 352715080 706634489 58561054 564969161 512279213 619309130 216354321 538572979 133909086 393184933 318293 404353782 385813317 945801396 331725385 396021616 79902573 346962189 885248484 987472067 361840057 429978662 228978669 849515887 468554180 783483293 92832855 407410258 969822119 997197123 690509102 732726767 104884081 789350920 35420352 580307528 874555993 934335821 283313360 286079851 969086187 975504887 785045573 982592573 836786730 987778357 660436505 781053353 859270272 891223787 689039240 957495143 949351405 967646395 414329938 876634177 727487360 811954751 409471652 538071318 857061305 902901140 566597547 983242006 929569152 976268418 656376682 829413288 77057925 619183358 819559833 822393306 348922653 489690328 506659982 984301247 537011837 933670638 32438198 542463690 873418922 919830049 550975324 954915412 807509903 861936347 882139387 978146263 176208515 500938671 293559609 519617943 576191502 846806147 703408421 762684555 502309901 762055906 356702120 982579317 678459546 705631681 531457338 596509913 90546 87342797 265201279 370689434 792048530 792258930 439567709 732175686 473051351 782791778 18698705 271050805 664705888 975923963 295161237 462650205 324464968 402048003 948227414 990703767 130816094 472385878 210708079 848570821 49208764 807133882 585036755 944667669 469328542 562576321 576425809 726167867 592469639 992513025 593526369 873012912 525758127 984951317 648222984 839260311 204412950 630440348 866059471 983754577 803667636 813622563 528993089 949299508 934912680 937116474 549556417 801511154 696233321 888612401 94272078 665690576 982753654 987381319 443999203 825527209 729389983 772849295 126731056 872087351 601835650 659175972 18507761 931810281 202008926 502612206 579407622 730355580 655781014 780037950 582011078 926537576 817177882 911038581 566038219 932820890 274090123 660793787 718258063 768766549 468268205 653216841 733547343 839395467 311085457 680303008 450952594 968504629 775324272 960368144 665293479 987811713 194592466 198543209 860091059 937950717 558430525 988428474 719546580 848680227 169203269 388723622 205998953 805880083 400235132 842443531 457127943 670917811 215135407 369805572 770001572 930346352 607126512 704031452 979564213 984546143 420245114 627705187 957551259 957834380 620587649 778542130 568950015 830589349 95733936 176170874 347789230 662294559 989859216 992012036 709813896 880633392 578897001 854406913 491154843 770022124 455485288 749422866 386399820 540082844 364605269 464400933 61769821 446579204 538848093 642467374 141429349 885239032 194442727 691909034 289669 461493551 934363576 971172214 799352172 994757231 306046882 757184513 998582534 999143182 406054356 612209844 611326308 817147240 389651368 638406787 974487848 991764967 862658188 885508167 921061736 972136250 954384151 983851050 851210192 856573347 830701551 899584390 95724988 764249200 586357208 839047978 577424706 870022561 64828409 889815507 196485937 555811441 813877210 854435613 5261162 109363758 334757435 964001513 264359355 388112895 514139995 619424698 899998661 971109502 163817187 452904075 994969672 999255900 375917509 862707096 813740212 964376941 666814615 823139156 472873519 511131709 319472285 983646243 439287528 719446320 842225711 948608385 785927504 944789735 978141326 994503727 327542676 517516736 60163311 185745605 975678330 981723928 261987825 631646449 488232043 755660675 894882662 968986359 450624983 966416122 721258765 739996084 293988840 570945759 939497209 948532878 624049303 933431957 996876130 999558465 94765224 581867086 842589131 886323530 46794932 488298902 407186765 494528645 91876672 174154785 2927568 588269635 405821095 464156917 171682575 881560339 925143014 994982313 663268105 751529735 867381449 926416508 345632360 975890251 988639746 995332656 219716663 874406383 750586248 764034527 420507963 738922825 840392930 854494034 603295663 875743694 549224964 951067594 864687361 907677812 888714923 943109298 317461667 384422621 588270637 864393135 621071157 690132761 961216119 966965391 126677543 627669213 628323302 686431918 767258446 883483026 456579295 622614666 871697899 883726539 103878986 909961576 251158916 935444980 207185709 528867106 853887068 889244419 394313210 879145990 476093807 614393546 729780387 843504487 53904827 987912350 338685852 442007953 842614164 944082455 339451102 704358620 136216980 716665578 224389633 233399269 987212128 998337643 581529946 778932258 950272500 970836476 349295611 729394713 520527289 942193334 426384801 691693601 818891620 819666026 710656416 718119390 156326023 401410456 143192459 383890482 834028101 924545266 735306356 842390544 435138729 594639699 949570179 982298578 291220648 750658601 581246135 919084093 908712382 965670702 283775247 541723275 344057739 625084347 796612850 944846026 119357724 635849365 602382689 787390223 828816951 906840108 433415929 651117327 565312462 568211220 203071825 460927258 301642915 617709506 295893191 299368605 466578825 537824733 797041322 841734139 286688433 811585944 834773280 982168410 148240301 538382378 389150955 832781220 13316648 226912267 114609511 711497646 683575379 992126488 281912648 428334079 158766683 948481470 805633154 996344663 905256461 907577796 572567719 798174527 775108785 929867796 186262878 474586109 164198072 243263041 485366590 673608825 303347196 536207948 329107114 934433669 687511279 730195668 792670150 804346099 249846951 275871890 481581951 499094974 694825435 811304340 698076208 711912458 477608727 769122109 958747096 994263790 663922380 934000682 693849872 955415558 309560500 554822442 711162728 843862687 909256609 922167338 563807145 891467177 208441706 487747004 437896362 453835311 270635316 391488606 664741735 791470632 932698502 949864715 975046079 988247446 180294295 831160469 186929875 911454979 663804771 762358540 761027003 784932155 224669082 636214420 477706026 840284764 195769387 476542977 612223661 673125407 815227667 878460657 862418056 904569724 257426150 272182906 90475548 693262389 937295703 943948419 315233865 707931620 617331432 635675628 609285573 612645680 495713874 901434132 730701538 836927229 799349603 953551865 374865681 901727479 67483515 789739190 848736285 889305269 940276537 972518175 96699794 274066999 250781037 583975960 852528788 934951841 924842230 955092437 334863731 551394810 764157334 871935865 422102636 659477940 285258713 737695768 219579067 713969734 12385183 439848051 398921596 913069269 176097062 349299073 38505856 438558149 207656201 379419485 979496510 996460958 827444513 965557313 50403658 372541743 987952376 994333743 755361944 842588078 949208461 978339362 521061976 682540486 387342523 759646955 508142838 635706624 167951513 909931698 741738378 757551484 760963461 856743292 644512619 681736502 708375543 744006424 715481047 757104105 95821767 201705338 804299611 991709448 863506924 943171309 819752495 899542084 202900718 604580289 640177532 856273166 510223320 612512982 520260901 690247463 392577699 714644402 922490113 960798735 950321584 957880620 380919973 750741561 128304526 570458600 632854842 682975421 986037877 992344502 937780267 991945631 180596919 742183516 522893677 939678325 991088513 999703097 768408978 999750150 903242144 917521017 91034595 900398183 767213810 941471466 61430387 797524954 630151660 748138726 19156052 990311278 175252957 542049103 596996679 995865194 187510351 897199413 363028388 675193863 850288220 953146106 855153478 862780227 75738911 658509367 946461031 990140058 96965890 280889448 845530463 899803759 344792456 865512403 998864562 999636391 488977192 856268870 624048406 707907727 800433071 904752634 566623965 735010553 244879081 687905205 727385291 851301468 110357242 877287685 440118790 886086853 602901993 990995253 934022794 951646162 189603514 648607183 76497006 293397452 284366914 881956542 283030893 359625673 834439688 870897692 497373619 818399054 22665791 151839564 441618561 580994063 110265923 404403977 309689404 516791574 784828112 799019271 119677134 370681977 551375024 679799522 762379926 959345744 218657896 710009746 779559834 920321877 601058517 931171854 678655117 927419897 70848190 592791850 71013566 273586832 802529485 940281283 937220282 971273447 237986653 514430465 715166348 780244204 607570603 649508982 476319349 513235762 815397320 934061460 39861227 731056820 468137304 770057847 793694073 810143388 705560106 831178342 642594479 993533314 540389463 602132417 676327943 864794957 394906914 796805342 956198237 968583721 928622421 979720534 198332949 671960994 654141216 958388445 111058042 154915165 168643623 451220410 965178232 968257874 575038613 588380952 7854187 747460042 807651325 850559544 251143074 702289521 24747851 687785774 57678229 691801534 57858253 343667709 877053688 987396283 819677548 878476209 33203556 239904431 128605430 265309168 148700634 668425935 866453603 871530009 477522311 878558269 9702582 428706165 659938653 940883099 849945912 857251656 477677568 904892367 507338812 779746990 256491638 851961048 213996747 724177767 117982361 873230991 318392116 518550980 712760002 955792500 717969815 772076189 196916672 306226385 974692651 990596406 388999064 649231042 50889709 473102838 989137286 989246815 143796 806104771 203408878 475582970 497697934 652205057 679981405 766272553 290766447 967226721 424210500 798248209 257953557 789454770 263254106 817241448 52711 401294510 147130453 887062506 739616221 837767995 746837619 805666914 269248526 346156226 899117074 975283985 719028520 773255559 207403932 405566178 761020847 985074611 941726680 978674800 127684718 233376425 858308610 861419984 209007784 459442912 886975166 905632637 42059932 286795005 352648706 496646263 159991379 428959856 40404041 387158235 744212760 970822151 233242229 754653904 798693723 856646226 682127668 907278459 112066754 836610856 562891905 919325865 965913426 996963725 348119791 811426526 394773294 469395073 864250644 952183640 749863386 835633619 542751444 802022386 285054953 319904072 530367348 706778637 912601977 949222758 242389338 419744382 31875460 342524398 946183329 990137248 183938688 206593794 678499752 833101492 334759076 889616968 141460669 569393334 468748914 654305660 294322060 804036122 498760602 915441291 182532550 499529646 259940535 984185473 915957676 940008682 680869609 858812750 50622332 814182308 288371310 592209852 20314716 940163965 194701939 889659096 635289857 641339644 271129015 676758569 780624131 876292960 201944393 204738593 331677406 929577038 148957236 651895105 628119725 881927083 663172107 801533929 802111819 921898786 579300696 665363652 841738525 895900336 407726398 691807073 438807035 750782566 206255765 543407465 946681011 950475730 241903050 461251469 749309531 820751102 663117000 692734199 56499379 514385145 102493802 538320682 353384778 912979542 636879281 786855096 666413773 962910789 88609915 444905022 769504103 987636246 276787610 931532306 755764366 943668459 142480023 868458651 944087248 986594915 448862961 485113833 972649517 979649023 365588678 971103375 839855757 849583129 767403201 887758808 849181680 930597365 881412882 939881073 646732462 988532028 594034511 845673336 941576734 989051000 817659093 963138129 295081376 443736582 634941612 886585281 385853554 675667958 102664191 767089487 507154346 841055986 634490299 837063224 963314224 998936878 640927029 702623124 841505280 933414734 466580709 668789683 69064599 587680802 244897134 404775734 701853575 946105739 670611438 716614665 581730884 709997856 423181440 843475052 480227021 962983775 670512564 996093161 542560385 628166470 722367780 852723024 135911243 781726595 453330437 692249461 105125074 150924579 972547195 990055704 676472708 783468851 484801139 626780995 509673240 648918961 707319087 789730535 556897105 663876183 366618825 441130284 129123147 901264654 105463172 123449011 506354209 574997648 757050919 774882021 73708774 413694007 100630946 226701290 665576974 677845344 287285099 934531397 522959584 816514134 604838596 944895324 706760797 925776708 502604503 615516850 904984146 971268713 544765958 603221960 534461618 848849644 955377872 975717176 260406735 611094538 96012253 503257146 51645699 600969193 107381950 178546324 592865550 926155419 535788204 863133212 790568133 933504343 457023869 499082604 734000306 792501457 708471767 750865603 302867564 574806188 56261683 471063002 449273378 638490664 444035241 550835681 384985243 931083381 710839666 929522567 567935194 577359299 912616350 921485274 614717629 750869234 951949570 979460749 133565434 293644571 51246133 97769712 442953201 547216874 291818347 910014087 133939099 687581760 96417463 326157302 338452025 681091560 315428783 605907201 980922235 990587745 567806587 943233692 345441132 349272208 786795860 975449886 127638062 327112011 800664224 855027263 340207014 833074239 519716516 964710227 366884777 918833833 742597864 955234679 439464071 763322653 929758644 941188058 227155569 410730441 677307748 771180354 491537164 666392390 809054776 965386410 795865489 866040839 862945803 946406602 487469834 889618361 693661269 958092806 599739900 793900330 207445586 220627633 887908941 975938858 256355836 657216237 227243464 359734565 350880826 567083863 234464785 843521073 572946538 706936597 385596835 597142056 496237997 967852880 907285867 907325238 489687665 646782286 634199862 841672321 555065286 729679808 367850954 914351758 551339154 977867925 402698649 725983484 41719272 556792770 140949447 265165605 846613784 878301775 709264392 865376823 413259177 718320718 381967366 740643039 982401916 993132691 900916273 960515176 919003117 926781741 426475059 533863912 781881529 857575223 898889435 998509263 992108492 995066102 682763225 873406894 529445318 895364357 920377955 943448160 722221884 845755133 280792739 630080000 560293355 720693812 374916435 957314352 427689973 510475597 276137049 829931210 630982699 947466331 474391605 621734842 233915053 453271637 701523490 989004302 401450800 642558306 912394932 918034329 495044025 687505413 572073350 718818894 514845273 859526844 648909996 753718315 3757245 844304427 381496772 701055153 104329921 515886736 135718948 176953163 670438167 837413759 436280918 846967193 22877085 452802557 780794730 813835893 650230259 964138959 280616094 915626228 708154167 776698491 694742201 941201963 916866944 991574632 209212512 703963528 537189351 828788656 24774573 738395778 901943899 944718261 817899741 850487804 261540554 520773067 93999208 781629201 160748270 559389640 288582699 784339598 948385114 962207641 185934438 758567602 824072748 892863630 654437195 797021772 719547480 986020889 125233116 249370051 947355197 973679767 950441034 992567152 712464441 966422640 622657249 665633274 678146558 938717867 605380647 736754719 114500561 276803797 862434992 969588894 804545414 887944141 735756786 862491678 350066851 957764681 411470204 816355007 237924142 771493136 134330787 819327994 618073885 978311479 261942380 834221111 416045814 840921170 508859565 903947300 914569915 976410193 38654829 153296375 168067659 711768457 276844229 611752512 85567023 960645251 914427904 928471867 75212560 695718168 204794104 781299367 209628983 298345702 345654654 838271871 680231910 818713222 363816874 434415561 73248351 976736872 906380073 931363508 927927803 977814499 842947737 853828167 728826504 755307001 410899065 601557902 753021402 796037493 338032483 398490826 228901913 821128406 22470284 739810141 795869662 810602691 546530557 579721864 473205362 754421824 399741137 647841857 583691704 657519460 33131339 963370774 348660985 920039320 186588247 620822664 372119014 703488574 359263952 749217147 780265898 935780771 623699255 812732605 884838250 987289102 78253373 267953161 995325016 997315799 567167795 613496418 665162794 811096433 674973830 742274827 168256909 954874049 6164798 526403408 98900347 361581413 650460596 754946776 862588258 989385678 46202946 260013105 133286460 355931662 274105817 688462813 60799362 498990828 297380306 333362063 489187486 511396200 527495064 956977331 437270911 738451997 462021341 598551298 992082881 997235744 544220213 874310084 469895936 956783847 410314610 487880987 446275552 834808190 125300276 974563993 733860513 973724155 287694837 845080168 201047458 350227352 805652325 990279292 662906819 884394648 606249669 744668193 471654547 875902433 92278550 761947201 529850453 662309980 725385076 928861142 479302247 946898486 892751913 981570300 685413481 777635980 967609412 987532523 310749537 439520737 721791058 970208020 531046737 635421248 135596032 919507280 971208628 980286525 731760242 939697414 810565916 823874438 56901465 797873640 17208798 708389558 648727934 798229857 56153439 123973470 447841527 860248602 229092211 335620168 285283933 647620761 422936124 929335501 311213304 482465304 93678223 849485991 59618000 139254954 346814536 651014537 682416386 962938848 728984941 976598492 404479518 705570678 719129879 930503701 744741168 888082022 404882256 701569351 660811384 914470417 33320234 402635816 66243936 132857607 386190253 828720367 90991967 715678466 749815478 812291112 29514426 252756950 365248267 692644987 925887278 994914639 447135812 732099768 611361776 760567036 260972881 959560531 36586534 759951439 209710640 370562931 61274186 278030353 904209769 966846509 817687370 932173877 254884282 632188861 286457558 728429660 133916137 819178579 546366128 815138590 203651268 839923012 867007092 894028581 595041801 662773855 694928117 903404388 365471607 550310879 487055435 969161934 545213590 744683615 799900737 820193853 519934234 673981912 516043447 906815709 341790746 938303649 34530984 546746879 234514398 810605221 904484708 973190979 920849634 979536565 253680157 865190073 94418538 996498624 544319264 998891146 933435791 981357306 597202343 934440600 805543227 911319159 485087019 938339205 194152663 916334133 634687442 806381728 665666477 901013092 629160652 927757089 391798943 440319959 839512419 853709728 80662555 936913443 763802335 850507886 871532236 991813586 36375801 602995079 822317585 971892905 921432040 992230679 616804947 731498374 573642458 783533320 540418610 645834774 534972879 905504800 181912490 259949780 727716083 960555963 38917395 552477252 256832497 712794768 996378028 997105502 526246587 856509400 929214437 975863748 957202373 999876048 778987145 927037519 723995856 872683830 206041824 480066402 966220223 986784906 458905145 838136076 432558649 673373383 480880859 493085493 705382672 801587009 1295225 555065287 786858178 907643139 709660004 744708856 874496332 965771512 805814138 906340733 270947356 460786869 79733714 244115763 809574006 990119656 732802496 918757144 440458706 665657567 420430259 740381272 363624752 456379709 609313690 798125319 412738373 421211519 306923858 818089666 916470644 958703914 794148694 817214149 763371245 965417865 274095850 662679321 966462043 970579951 852669242 912439661 996129197 996570384 477844154 781291751 47368837 255512689 109297634 540001108 364737634 599288721 257694903 659640806 988492253 991233967 396873483 493752780 265055941 636287309 191981948 249804282 293365281 849919158 75288179 890660396 388634091 634546883 862209804 899796666 529255057 754128267 923133282 947312641 10804983 684046147 992064232 997853514 910693794 943621439 79453369 760215634 497092770 911281730 261188356 459150532 101988716 270245734 918235359 971860767 707449713 989178766 38735825 338744892 260639873 315317153 840956761 890835508 11025958 166545091 227716783 797759809 782636253 832402722 140613101 802149257 757974783 771674951 113059023 858123303 625141445 763910636 424129917 934523203 612929419 976041356 225477425 316369463 929767614 940336850 567519022 905087905 550518122 636520396 877935831 962757058 906240847 959064141 979565868 982072893 519449491 900033749 599785166 775123066 559500214 883607604 456160553 646780957 537257618 590267018 429122181 674903983 629991365 831802079 546756118 762886572 17645262 33494736 936261596 943698819 928473834 989681599 955982872 968814611 994142853 996743843 824362745 910429555 621683118 665595540 355761841 878342543 299007831 455838725 507665548 656641036 101042653 446922662 837278570 907334046 712720051 982483944 257957889 674374787 698243480 878552898 994250321 998510081 631436480 813995532 442703867 996066899 391850301 881799101 468820383 678234685 840544258 856264234 242925510 342222586 881025081 925758146 708389467 814116306 737216063 861914812 502009768 881048830 159876145 367335881 598108920 727836743 537922948 630371250 900188509 913072344 437057945 895583583 110153871 380094662 421367946 642495916 979561900 991041636 632936775 795709220 637850590 970230150 554746799 618016003 651999374 676865732 399464664 915998087 328256521 830671410 192036754 395027930 488161349 507553909 249040504 769004697 428645347 703676346 824568153 943790198 301173651 702557796 674811323 798253472 627523131 729523615 192073239 926916746 123064096 170216712 281225014 360610654 70306256 619759088 537228376 803434817 373383963 531000317 72466987 798178634 182791853 425462471 100049677 908333802 325768088 564227508 618687126 921302128 479948733 602045236 256185798 468504618 13704756 346952172 459962667 929610488 933261817 948320800 411795652 927433392 879367559 933549149 318292047 847913718 762665465 942979528 908555117 964475736 701862584 850253609 947101592 968346644 909589423 946802444 474325935 533327241 467085287 563824604 903830962 932344962 563954278 810787725 835154834 899802489 769006066 973369668 11087391 181445626 412335405 847550672 278585494 867284274 297669232 787546084 758798131 921128357 794115969 925735827 442335780 960215827 912243845 926492526 98685057 600871734 977900886 987670468 252315523 672219974 783188510 906743425 228229267 597266713 243690066 257543111 272054650 551893440 99115469 510723070 168993063 314368006 950654658 962574708 18094165 270211337 268868808 720303414 683208127 952804094 796905448 948650287 814118503 983401328 336385542 674728594 793164883 836681638 545464285 768503477 936555249 990309330 200758285 981258174 599248180 806278550 51321840 121834926 559447984 931510455 527931968 847963577 83859528 929914034 505599085 674945057 745852880 761905442 466323318 777616322 13058780 238251922 990606027 997995254 591609104 686158352 115395371 196641561 809965966 941158645 48475021 402996207 30629462 788827816 975132185 978057292 212614480 732331695 290578867 467045728 744103636 965655432 119254330 781859241 455252548 890373014 7921903 779032446 205994024 905531764 11092391 678041029 585955423 877356850 470541938 632368450 371779076 807693217 71985668 184265008 275756063 772173662 44340030 891874555 751236757 880642874 711592347 887076265 934754136 970631781 804953611 902783724 932097964 964156564 67100488 861798101 881661275 910130929 785224148 971507586 377261865 424980380 688576640 769053390 668956874 882040351 250387831 906573810 758196333 777828156 256746373 651063900 201842387 418675318 17620844 734529350 920411652 981779187 882851078 977388516 247441050 645266533 380221277 397342878 934849245 977096717 443849359 501798049 405889842 436680009 934947595 986515877 500268322 742165865 831655450 901208703 26197376 375643840 812798811 948078352 553084157 750888086 427603253 572713189 856846204 889721915 590131773 867402961 434282871 697547510 870714018 871284721 31907444 723511748 306059102 796667197 72411090 967161223 970997309 997605939 55985612 471111946 713039802 848856512 322238534 517428946 461618559 842596649 350875267 489826365 940530245 987485988 569634637 959860236 134762011 737359266 752985041 941613367 215940835 734764711 641139097 889944881 686273030 848786024 341450104 627466548 239426879 409503946 764451594 894506012 701229501 725368368 993922980 994881404 8466766 746989561 969907577 985658304 23640355 218718756 293288764 807156800 234107397 348365429 753059045 965339048 101538071 475608530 51801333 446285307 556889706 917014829 67124678 416487627 3804248 970113713 975687107 981200768 976945572 994495666 931623599 940430885 549311730 884931074 836120757 905397870 339127290 729510453 643802248 800261552 197787260 315285733 111449978 528543783 701200353 720820951 247200867 726410881 423984486 711679642 358000829 976054681 121793398 652979926 827700856 955068744 515867903 859609953 124095107 322990295 893835627 951740219 28257795 634640505 13682858 241393438 534029334 707884986 709658966 815252195 421188237 887549243 870063293 980842914 849068259 857374116 638169317 726344032 413144734 812655188 571158993 807790211 376312188 877444858 808299745 926679049 306666400 653859770 619776454 940610507 686855429 852754988 836269310 998677365 745275139 987230063 614567975 653795454 929707748 936513335 30626177 778816262 51759808 414169981 23797393 771946627 18790331 938937561 509347401 861160865 717188218 931074665 927665948 993801956 20209463 86147806 665697837 938430934 291569128 888496922 833554664 962630481 908096556 937895965 116040342 381375461 578104637 815831121 650577871 914988773 788342901 882434849 355552173 582632116 201618588 710370729 810302809 998919730 103995740 611022748 73926999 625193047 146250925 719445448 360971495 811051984 974097760 977539552 949046847 993121270 130942530 500271217 87663968 646489934 221190295 841297396 990509446 996777215 543880272 766016432 474660744 833663809 896307258 932652665 826256597 992713416 201942281 982504000 123023362 533520838 648313114 798124747 267434790 490933768 205893820 240937853 859551879 859875791 329899680 611860519 211494790 637587903 451922840 813985001 241067012 803838571 147113552 342082210 321751375 429303242 644715129 791549772 622370479 913220533 182985786 444292429 9378150 191100659 943540743 993788992 810186269 848086684 759460342 824079821 157017323 981818491 297190548 360557433 821987288 918612313 828931597 962439856 790824820 893511641 692029497 780835475 783966206 986321666 323814254 425633974 396700792 577068224 366421508 938602906 758182144 898194401 464597565 697147619 732007499 852164152 360137204 671415775 144079982 687869501 818996757 912258161 975869799 981305735 221645721 437258245 152148395 295724045 155817514 690194977 759385838 848629226 203985870 681567511 4425232 189218107 367412328 937203994 842282970 929067105 829106048 997315625 406272627 739559241 90503018 492050502 207272257 664835754 696049746 957578506 854265559 984102701 992580601 994157244 202134018 929818836 429499545 722749523 792775267 884366839 506409068 817431163 105413281 884375368 295010569 941279933 572420919 869915844 430678311 992364089 504634607 819316251 52539629 644356612 719485716 757043216 184956161 648599796 335718804 937828056 201746013 992946828 104718976 407752736 196260613 660786208 282968314 546335946 227585985 890865566 298114094 638535847 954555190 995782836 499757391 956212240 925463396 942462994 226867220 319291382 129923676 869526500 963169776 966276816 82914965 791478783 629932979 884374209 140625739 386854754 475504573 536957165 652076837 676868066 325495592 777811527 139791797 896809807 959166337 977560628 150943397 877167861 66242798 559897864 304214390 483020775 520592748 820208655 477069194 765673670 304344943 385093131 269325524 577109304 882739999 992696920 959185784 980031136 977255632 981848038 298212885 444787783 439347151 448908086 337918509 799192397 40331205 878379962 443005868 512670855 782154406 824347501 603951722 694676636 436588781 774961484 889281462 931417538 962653199 979528646 459147743 493062101 901473290 936730110 203422826 566154601 44590651 984261648 876497170 997541778 351758412 902184443 821223767 878142874 159326820 529810494 78502008 908615639 105800564 665084334 302331415 462606166 711200237 861077617 592001382 976325499 725363936 741662807 247508659 462172669 868944903 898761780 176992697 673904416 956006120 963620911 948980800 958316529 804400953 838079624 604334309 641614871 497237143 562963427 3912663 335901117 433350495 826242274 968735499 986672021 715120661 898050924 909506133 976397403 755333926 932415325 787016319 807314847 879333872 898579585 568033338 848920185 902777526 985037613 555393925 897024013 798718103 993826015 931313796 980158447 267182845 607135248 305654916 477867848 335187646 563806488 552071975 743743219 497882550 891424164 482129163 911435280 179525287 602935755 767587234 830079459 439161641 518274691 284979241 804598844 337486358 844231859 220126801 520804866 743932966 956526332 681047766 764823552 746155898 765852826 576516419 803313255 861087885 873881212 55942648 841046750 414898966 615739871 868169183 991722183 46802700 414537970 246242402 655029040 322091824 363274721 648977385 871874560 626172730 768435201 92189569 623823636 224168876 779764101 552410551 600801135 676297788 992053428 4468903 200781080 874168410 934162595 147186205 496042949 228863088 601426025 220485733 833608942 305427778 805217164 579697817 791124312 130079787 335659995 49811749 646654123 730214432 985180710 87068728 474053713 859078436 961225913 918713669 949872244 931251334 997276936 253619708 551253127 646048244 983381390 282408318 981875703 778172954 805909190 387165274 750697596 318937336 409415554 152756593 712090985 983038161 998417971 713564257 988390703 529195358 556272233 404597847 781426979 327513231 941817966 594458082 797375554 579360323 785177102 710407596 801332997 450969813 718504725 945622132 997258510 311781923 928602523 656240091 702308104 535839868 917718927 445927295 483868019 660640232 939571539 725043665 847042390 172777414 610306273 965707769 991346159 630750379 715298790 621275243 842662079 628515976 814605613 504679395 510258955 639394898 665203811 981993027 988221981 495366995 883475327 225477574 911216887 557733171 741644539 532553337 735318007 33543105 945067059 299279863 408677970 178530922 932447711 767460733 835048149 615554958 810440100 955902374 998477859 236798618 792502554 522597247 978796498 534361128 632764092 282589703 359773637 674312605 746807227 183018462 665555711 20605582 791807465 488383112 789298458 419046746 784940628 971414313 978811497 983091364 995955197 360686066 621692715 919924764 984660193 785219610 845460157 170627176 454647273 655361282 929506535 408114286 682923255 165362751 626482312 596480303 808466447 381605967 544230474 945367538 967474649 254257164 563071119 421626686 644945232 772234701 808982968 593633925 888260153 315729808 957826323 912452887 973932305 410698672 845901583 177185083 183231830 867946675 885938305 400510646 621960084 167416841 366967927 923564529 989412331 388060879 500820830 159247951 588639573 669139165 997023773 919341751 967207746 285100546 611390023 280004942 538708019 771911618 920570412 573567367 782156197 356577848 889539854 750590402 996665851 455973275 524239843 505692281 932497970 882275948 915347346 642668400 708740275 889900657 974544358 755826143 816891190 399445285 892170294 321742003 462925115 843257358 942901905 252664541 652863671 974702663 976823711 904544624 986893675 948219170 974367273 991666429 999659514 883764709 891792641 64063737 916504822 644604721 820920174 878211957 925581143 378163013 613893205 628218948 746712950 45160139 558422346 31398858 488173472 335429385 407006674 740218314 744646209 838669295 992307848 758629536 865307942 430766209 671870397 208728973 371300624 661541858 990816314 207314822 699919827 733245313 843596973 226325284 663858173 516184219 874666275 874875476 998673099 677906279 699469219 51721861 164301676 422954791 806072905 794112759 899688372 675739465 831979828 106997340 958106819 829019238 855648478 32132108 510590384 84676383 849792653 876515179 943194456 733244844 973203758 863946277 909317829 580421880 704394291 894444460 949483685 923017429 949385617 675818755 987080502 75433769 484231347 190927084 198594190 360426070 874561621 553862186 868515039 987893681 994973000 848512211 922468898 835976625 846501570 62778669 215938030 726845957 815779380 852904169 916378158 890632555 909289039 448346039 819172581 804523170 908976384 923754367 975881009 233668202 795187400 931993222 934136126 202689297 869596806 953809061 970027116 77842387 667268359 715477007 947762520 813614053 993381227 146216713 888407306 928915492 955881169 531955003 875112076 957281781 998624657 865590402 919274981 960981245 977241401 203723261 685053180 242589104 360421958 776855398 851965457 804436073 934652570 492755704 706136875 145624937 356193405 103376020 670956488 853031381 966815092 465900386 811051013 845124513 881812053 486947173 610975100 348168676 816836206 507843746 737847055 742352663 846235853 301539232 957538334 898192719 937403285 507969319 962913222 384635284 474536642 759300566 893972240 758068423 774928855 580160927 882029387 493503387 513145731 254914656 562216642 244153618 938149063 858938150 935475257 59203435 89854084 306733414 518401979 337885453 935703759 763169264 962855767 649757386 916088055 344439373 655140071 148710852 998007060 966579644 993254419 55426533 119089756 719243321 880084201 801112621 801147945 556151594 658007740 149542251 875002808 806609271 853325899 530921929 944053541 499144061 540188841 591270738 895066247 326316629 898621967 685148372 798520999 499128661 592093172 371843729 384301673 935159540 989109711 29937128 106976187 763703305 832114287 405928181 658296449 167349865 708216131 612060103 612431664 729416680 845522891 903677339 922434361 481038047 607062178 690191763 845357871 865272171 877685611 936986222 953148432 238223688 483741695 239200720 855372352 559701868 669534498 736891319 841205548 422609007 575275820 824888004 885813999 238688551 355011556 215145126 391456511 402586510 476441225 263528575 440055870 627349538 864745316 263477986 372549659 957647652 978330226 415136569 958379900 179977472 704118931 237300790 768046639 720001519 892918643 409782489 719990112 558431447 823181918 87905468 286453910 731278695 735760034 945009605 973397670 965828408 976338202 993464375 993657458 932985530 993785285 416304494 529388060 648879357 812758405 591662116 730873547 324732065 793117020 546122827 748678152 519089941 968349750 267099481 737620516 461359385 858491864 668679891 845994033 506504282 636364365 35806955 383995766 707300824 813319147 390589960 741432856 747105657 982353976 660445448 932660198 815899099 825713164 270188255 753269307 165440280 176987672 978961410 993910340 651695106 750164723 321131289 591157940 691332030 766440582 115718769 465655230 150405914 776287961 112758991 197933231 951398628 994343344 573724843 892216655 423594669 761409761 651068677 941509558 109070698 189026686 940203055 954428956 849803816 948361952 919119814 934711401 123222696 720454882 425497953 875269949 480842924 729485810 173027902 221040040 781621906 856583309 188641335 891250475 63630000 671765264 175505110 869923068 769267162 931958006 250983597 531225152 486938020 556927542 818595644 986539170 376946388 689295386 333210356 571941199 651875211 801458540 776666297 986579380 286000233 820185418 20042167 626195004 222032090 643753320 595660436 994598271 456900603 800198985 98968641 674832776 670232721 702677065 774642911 919400256 313377539 951244198 362808492 377350443 749029315 790332509 82222944 249532728 864999189 915749628 517865949 808542812 766341916 965439431 601315704 637932698 665355375 780620291 764381534 921303674 412021891 875348120 752774608 831685207 970049313 999423725 908363369 950475080 762736269 764828425 360386885 422630373 606745674 852292822 317857606 681810797 485229237 533455161 630006932 733470712 129486498 558055766 767111413 955625716 866948116 943238945 711771592 958216683 519610441 867513721 557742490 747805350 466239158 787689661 301125713 733256249 891689478 961010452 834408015 887394509 718055435 775341157 707324608 934950202 424554099 658710937 849143137 913385901 856102425 863004852 489860279 660698799 667793753 995068115 927533146 932791771 138198543 208056744 208377437 781612752 56950126 329967853 924988135 988013678 300065409 848587219 827103217 940619329 584906960 618824519 436717918 819522795 110404186 580755988 427013471 813275197 105328770 358347807 595174497 961275922 749583375 758404556 354075336 404868417 570309829 691705213 180180236 220986904 373428483 731989869 400395341 588454664 114326002 345205073 773463551 982755510 263742878 670057470 470417830 648837277 365357786 969226193 669318201 841698329 665190637 691690647 898125714 945407634 854633831 862020446 979886668 995038459 406631285 652708479 468189657 470601527 354743886 386903544 963544661 969008443 8549460 588574144 833925138 851422409 663153401 945944913 357795139 516032638 949222591 968699616 638414274 864384302 992843545 999814576 959283842 990539772 870568419 920683842 268967298 458997443 675387584 759024215 953384251 986803793 790721658 870223167 100192620 439468876 870177122 972889466 944956728 987479892 77261746 441838353 370679965 630928669 804596202 823915845 633818532 981917973 283346654 727752708 273021776 874427758 582820572 987708364 295335672 509998988 634137779 837468157 777167359 939403292 194315622 782390681 218833179 351595636 925639032 984371196 522131572 578589932 683236054 800491443 246865028 544782826 555540182 877905053 366027469 693132930 709510157 728591075 169298830 764822489 927184903 959948323 500566126 550462141 983332161 997388992 566624760 888893863 208809430 852507128 765121581 827204663 667914067 995281842 308943008 524804327 792980564 906183747 148153184 212978856 820111099 846313066 503297975 753221760 243415120 598599052 389157715 972636242 969648664 970950673 354290147 999041112 538491821 559335983 542417592 910382023 83293294 221031434 205118011 744226695 426528039 990548362 198573895 759696832 691477151 717588193 25897376 969595623 138311284 614525016 734818602 967872538 498179548 903834655 189232665 570686092 121777826 594527853 188464752 626441697 337590731 468928214 426439230 617118591 569305267 801737219 63504607 405197608 46176543 920658822 202130340 405255273 553191812 999089120 597196120 793101564 926854222 928825783 147099416 627378050 173631430 540304366 907116714 971709827 193508573 956818877 909842393 976041866 343120457 492649098 57974428 92849650 260331128 919841167 952294882 993314396 370432440 769788030 118228942 749488729 858821113 977783318 774481204 858816071 733463603 748986919 883627815 941364652 930164331 955396713 643095604 867603836 514916586 745501133 374319023 936692848 105190863 622452305 198830506 674712330 512723045 967708192 705886907 885074205 785502295 940081002 408115498 611215433 140584530 713659533 445927345 548153986 651779993 754870686 793995441 909362410 218202936 471533457 543589255 680367145 658361922 986446786 534489768 785084652 500088154 756659438 41412200 344965554 733268590 988459452 753187345 782854474 565764027 826822516 12199904 325695199 87469032 566246161 328254373 762494824 138222639 446261049 53327640 95777693 271449296 614362095 575620000 731248734 354259916 574669252 374371129 627050502 66175919 487670179 808053850 819057843 545309441 827937670 463492849 519591755 684704803 851925433 936393853 952345278 336878080 731467393 117224703 805633714 789690612 979524964 473462990 776086242 357814358 523890975 18827893 593273722 448822362 811516041 334700406 935033696 708196457 872503059 474561920 947677042 809270720 901825401 30282320 406678885 993092492 994281449 809255087 903809642 212226461 471274121 144286178 323999137 864937827 973564424 904897987 936657102 304964264 540120413 413241186 586033132 205804251 752786465 716224691 727195720 476295480 981083585 528557699 857829121 110006019 725266251 54973645 659071354 436085901 490422986 972921115 983878924 26980331 619073364 455072717 848842698 407151399 784832132 848251045 943521209 316518985 976975455 641562008 768087846 934079955 984978571 855549753 988274285 28610576 573317643 237989226 656304486 210029935 373111171 536429513 907859952 707706855 787388997 563555723 663954270 364262200 500838043 887654821 983245130 252183549 353745836 357462136 496413094 73304570 723655281 88815519 131156872 68774397 351021304 392284244 833693110 654634455 661533653 485111350 785843356 7662157 716821125 589745263 799483279 891599976 897030992 989981391 992284035 850516885 859413705 13606139 495912104 363379956 825088696 713530246 805873896 290794061 319697792 574125710 734871591 185304847 914346468 155465039 265675139 763346498 810653228 627979538 667666646 709317 979556943 639040414 717631498 54239747 213662655 515895161 919113967 644200289 720077123 831838913 929052503 295366758 650371345 248597463 280191514 550513630 864881468 415858469 640058771 762222231 831437765 116336958 135573019 117138631 294918656 205559285 333867317 529913400 825903947 717643008 987797938 901124070 902993474 207633382 712520231 273127458 566882246 313716462 620200523 199521343 947374300 995277854 995929514 782885881 929621843 745502985 943891745 353424019 810371959 27175325 405773109 343613560 583304709 397608623 432362947 612994303 836342731 518362128 858182433 913154062 931657466 346954563 369668369 934030980 983314277 195502158 313045988 421051353 936667521 492836167 747104909 305753293 811710843 566126948 900390468 307784722 322967604 151562309 574426716 704018342 879516598 496784539 912060638 103038599 275817020 182577767 953852481 860521027 914386755 450030874 589357509 897494525 936573077 11722141 806275496 823023210 842366551 626474265 678923786 345899701 787792947 717278704 852924671 276043195 468103191 104434021 525691403 437454347 885278725 470802617 817495200 741784527 934107419 155321414 826724525 484042637 979673230 573384387 598654289 605126736 653838021 902520615 922395996 247788169 451312870 752275654 891674610 276363405 337130194 835218712 873835618 316804515 385377613 208532388 628140879 743215790 988434236 880541759 934521865 707136595 913835785 747042145 922912743 854148897 872347678 745360521 855028579 434023817 924378318 63662381 606282969 278643243 317750510 198705053 905375807 613441085 868640111 662976494 680231363 915821104 964838524 303937804 858745370 785522895 790081282 771737020 865282151 933551201 951366192 144979225 899688733 681499419 765995976 731854137 828883927 681738413 995660238 453459925 588516815 768264881 837686413 779472791 825972152 333701335 696412489 857841336 883942447 241541857 556988835 510288352 812411896 158840190 216349366 263039376 786802371 166781361 242544432 828064172 863383508 885728219 982177389 139058474 844527074 874863268 933604745 882654151 946268484 721544141 756530915 139663215 498706785 363623044 983294067 243079423 324126995 984477704 990843401 129236185 367729288 992039584 997214982 433719387 457393232 30095959 521300248 381572625 699789150 834741260 902841464 514410651 981211209 468941335 611541036 976427809 992316536 413949952 822362124 159337190 923610316 539335566 672770756 845656340 952549987 8122651 557119824 189524432 683423957 57490280 478079571 870869786 931589237 465633046 497335852 961038016 974648686 403880549 697726813 177371837 557989001 227783818 503436915 698010611 745474074 597786918 905945402 296337292 565820219 493712797 736005838 145647059 552829098 685078680 929238284 472368309 850975228 153600468 986467129 257585185 423171597 664857454 717880172 934557737 973238982 200185032 441443870 819835114 852087154 752075004 773805451 198962645 235959982 153413904 201813002 736727850 900519793 696260940 896346335 182402230 939965040 921583939 941833608 168164681 172820988 429097965 689725282 349808393 775602694 883721097 931287959 795674837 891016601 105001289 795296162 348999565 435263674 679229355 785944891 228307128 788782515 424547578 475225923 592487136 621973815 189828594 610394557 13476669 777532607 96092207 637012332 541615433 564979828 182840558 944586002 748368014 778370140 590143563 778974601 801489725 868057209 751715592 897624717 60008352 168109346 521746252 757364402 560590329 899409790 828044094 921152324 735480267 776401574 274199156 959265446 632629450 866311953 216300448 679468457 385953525 851449217 529923416 812462174 904818399 952412980 354225021 754541826 687809376 936477753 502171646 647184361 6349095 585126139 29650970 768555452 87294766 572070711 314632029 829496722 62971429 541403491 518141410 677720368 256792682 949376542 928419513 934266369 81524206 931199449 906944646 942932212 198884842 288081637 630881540 755492911 828122897 923703358 110497850 376912736 75798430 390860876 537333958 721690512 495006349 964536658 486830584 671686845 909946254 923421085 776643261 874722977 489418031 499089130 712579281 938202240 835309980 913128102 341801490 440770636 300167486 737585751 212155749 315609726 268179500 780566494 366043219 554959450 941956393 981499976 188525305 332076969 604166644 821051179 6840092 476457740 491678592 614377417 43766269 696851298 325368895 566905936 890036220 891251494 440166826 441253743 942379414 959547665 538268622 790239108 644496940 690634912 806480824 974118975 42453429 460153854 216165797 814396404 896260907 901275403 938103809 966556086 645394248 802978827 194967627 251312829 757534065 865074919 370471573 618914416 315117783 380966371 270854053 440080314 80965211 837863615 730748503 908526569 934666188 997795309 250157401 305286803 237644100 308527185 699748208 728299842 823923712 935963654 821650039 824759845 969071419 988582224 730266709 960142460 842485558 862272643 638944124 862363287 455566917 596192417 648312414 995872121 939864054 996128348 793682622 814301219 262136486 987336506 394554361 755436635 818555373 907335412 356653720 879732936 701368720 834021725 145408117 638952347 317895682 964808255 713664291 745872459 929540378 991762301 745811075 874254306 24062357 796525244 801108614 863808940 952817250 988180495 28445866 937931439 755042543 983850611 46972548 863492481 336084380 605453683 731338795 869146469 839472963 990697764 254039621 356850938 309417985 717526734 159181922 523666798 703037424 748579460 187827406 871178142 19409922 768517330 789490298 836627148 226520685 888825578 261900083 825067686 628858406 740953243 344968233 384673313 673980810 955938558 413066245 670250285 228725640 609210704 166830825 858071909 274628397 463213614 771704732 806108737 75272928 432581511 94644383 367879633 264859346 537343309 338101524 845323649 900555543 947713065 308472877 446726381 56320887 921824981 190373006 834514043 79612419 450655564 944279974 975631913 234897414 460207580 876085763 908886851 684622720 991410344 990744821 996046996 378742379 525556590 147630902 382437796 731553914 880679651 832769923 864142757 15380215 972286435 123926146 771104239 639565949 687850753 303898379 939481383 613595535 728311887 311899767 354534326 310202089 318208047 225105993 313584716 559266948 821908805 347095943 462709722 30321283 78161512 323739048 930987567 727943749 894106346 847664101 890286751 795647071 959279909 507280030 635111243 771566920 966970668 513399748 928829485 355104530 486157097 243403062 733637790 667485846 823583856 943527613 973587585 250750833 281620617 480149416 601043184 507918248 694314493 110665410 858891227 778179505 782599569 91854015 290277147 23834997 625300003 859964489 977195983 397500858 443080188 80461668 133376804 439023647 670681813 906264061 936246488 951134445 993683009 713686896 935509243 567455376 799862588 674008498 772479719 907220056 914062428 389115877 890209187 570610887 752434517 545474582 804210297 296321594 606720113 391666151 453894290 627600624 789023077 801113780 948024975 416416364 699225918 867060276 978194429 465885939 713671976 389631340 952418430 871758959 882666768 570650767 750808651 935124206 970426017 623086542 721717289 120084127 262539875 171793362 557735803 134793340 472474956 696275375 891790259 935570883 993166636 399749416 627978962 989868708 993975993 885715809 895403871 783199458 854453265 868578550 894449130 851338799 888885359 96210194 331975811 985104590 992972107 88459405 191323717 633016572 816387210 846890284 967856437 788554457 800829672 565935002 843355155 57388738 669639228 290606881 902234212 54741060 594910703 388473053 928341236 642052559 979528928 790628431 828039459 324825836 491049595 254438787 550203255 404925343 945418579 374897876 896135222 862238252 956446283 578743361 975272071 543923492 666205491 457781666 866441634 887024866 973800532 169532608 388838381 621251379 622505327 371409342 804181627 341487231 696912145 550731721 951077131 36201051 104435450 683743956 709542264 183449418 821721050 947181287 980010885 604720311 728031550 22389311 540844727 615052647 800551035 382082578 846258187 109563502 849570972 338031578 442408455 444057353 604840023 641762733 965088726 241837150 810670362 200733606 504360943 33745240 846610694 436662902 939172087 459009352 513012044 691418177 741594836 404141127 669542846 595074710 803883357 201831139 443315586 919660399 985747376 11472335 947389491 95562481 699584002 415107945 606005364 259349965 320187924 793808928 884958873 618410556 886224220 54814720 495111162 787626227 981311540 410829144 736395013 533844216 554473549 395106690 651069800 79114763 469857723 110992843 621232889 258601980 459100652 722990023 980332331 607644715 813290011 509078822 772479412 874340763 960273235 83696806 595683580 12044501 919473824 695270568 871448188 249989435 779580960 475158212 805761501 628982395 962305262 871279000 892346029 623915660 784837933 634935735 756883089 83894201 693661226 964805946 974586075 359868800 941272268 4731171 205558728 783742084 870571523 233724743 861522756 567751038 670401605 328574524 408609231 114538646 411041544 968923600 972308554 793230510 997158243 72966989 416074043 97173124 988357064 108641390 702420849 617936100 662766342 886978121 910755059 463032729 914768832 286659157 638646163 509331133 645913357 443847350 514695090 572594792 899842612 824223572 891160377 384042456 829326681 815802624 881680625 448116018 859295832 842855653 917002798 187651094 897621218 579656052 592729963 78678023 654553474 895499600 987855100 851869083 918715683 637216444 646197341 890756660 926624631 55162903 870581157 896548834 994822799 816198042 957200793 198767616 326921054 443893376 789163918 771864790 775193368 68477622 714984987 957012016 963219962 924869070 959440925 138011439 516281944 695067891 882607852 997702676 997849227 594804221 612322670 747896590 808786700 178080723 791213852 499410499 705356916 471853996 493884755 484827965 852171546 998336422 998485100 675566132 781849350 813150712 862973987 355531713 563741689 931395371 976453646 61401394 515617520 296896593 674775795 736474348 809264862 911192474 914960752 645169206 964933626 417735606 948756118 442245031 793403763 516728575 738127855 214313549 695699108 373119766 833372550 623482055 644316747 117940343 143406390 448358592 511082159 560499000 603638722 791537213 980802426 459285382 887637202 464190683 811280102 807663338 881920000 175333490 398906856 248704614 666374168 580800539 837498286 110637088 663811518 756156260 852379639 444603935 783734555 935146342 952120388 346945951 590202024 523928852 866066292 912711548 985541969 160564259 850437725 245238990 456197991 185222002 471800980 253120773 314171486 476517808 808971588 809220617 993614973 446989857 933018616 737734643 890032272 996934787 999971681 292574036 473288151 851203949 880989195 813011836 975875568 712585993 978682822 705269957 925515514 506761710 964805452 180409183 439010684 634130321 701359787 64722575 595867740 858176880 963141304 763690697 770413916 859994273 887869489 836797344 956921154 327450781 354528129 208858994 588989024 999284714 999954852 579303418 947584607 568585518 976160496 736253975 780016925 64756403 181887132 344884690 961403731 955860027 959248085 254828847 745820385 463785738 714122046 745770646 884605300 618355934 958527431 625656138 964146181 833927728 967235590 367716899 826141359 678859475 899958329 988460152 998502918 276642492 941957847 513875683 628488855 6153184 797755716 110296155 577101500 456135087 478374368 845868774 932226427 740832560 742223255 271394274 770112788 580925369 713826482 737251332 887577399 840470626 902828333 783316622 966082456 508790605 907814918 571024790 762941769 120134812 470665493 167963807 360005148 831510654 874098032 192015959 339327875 110207384 242259069 88899009 439505135 117953454 200122099 670451296 889586507 61691094 94914890 893750979 947792120 797494660 803118896 43244976 850063142 11491499 663093627 154722221 955810622 550508003 932811167 708956327 971106355 944891043 945510772 140553206 349384999 997364733 999620926 775523396 834367758 859628215 955575923 31571014 899102130 921666923 983702219 720092474 987589972 351312418 535958234 305387989 885171609 310297897 370887368 117361674 511682823 725840441 819251442 97483242 965389457 51098655 247012150 17476692 427745527 693972564 864544290 934579092 949044387 157662524 878830971 241496158 891371012 545585501 796033585 690803186 995406346 842467649 991265880 657463332 954098150 997800978 997814369 177884915 342256353 132175706 510710242 256792664 552308332 113317357 980898853 743052384 863045130 241091760 840409898 886892150 904645461 563784094 581831381 860177735 879846990 824779313 851169301 495674424 781036084 248665804 478143760 56373294 535917048 773508192 789867049 543930218 665845622 825228602 928231947 457226643 882056376 63540966 695148413 932840519 981579678 551544689 721864642 762888626 974260850 563044388 831047136 777496958 960618912 533228391 572010048 658725122 905303754 930506936 950204632 932378420 990564466 879620067 940567828 882206954 893686588 792813697 932964138 66592534 669503040 503773567 599233356 993247034 997347863 514474078 904101026 724792900 907858067 790838562 800801261 972453044 991976430 881086071 990220451 956818140 977075144 680960079 806229605 14688227 933087241 929894172 978656324 208950211 484968189 966531367 977360828 594631138 897132118 819157164 934547597 701160179 711795014 794220700 970666274 50722640 215986653 438240501 840641845 268542093 953796195 969648067 996502004 955727436 972904192 770917127 925703962 19657219 404297496 966992232 972916184 195807416 627883691 539185397 610930807 397238663 498325707 467722591 993229542 295010172 664419849 90676663 893405390 818922596 885555667 700969718 959571843 78995442 608084534 805921895 952898068 39763168 269218186 705420915 747016544 341986038 755748809 925086208 976977352 183013275 847489979 767782482 998000678 839772254 957589284 481437156 512355054 495821729 956935306 102945738 687271724 361489745 862091175 710956163 920108363 445361525 967066877 819906299 991084859 62586792 171170638 719463799 860802085 770972398 931944312 505416654 876426606 334317319 776561144 972806127 988720428 741539405 765665601 374794351 466400283 121281577 652884779 404612869 688232123 438942360 997782333 996457859 997936693 53774301 341728686 220469218 917461031 533153177 870537246 218958048 654730005 934552043 985380816 624973652 883840910 528232491 699738566 331557417 353184248 113822124 195456932 476287665 950539784 516257359 979012661 994855203 997447214 701089602 738534193 740113547 993548025 742492398 904254619 85084000 414431269 371297988 617098135 342984065 610817697 221145345 310512247 498443331 686974889 283909439 302044278 637843655 733233271 242860655 900042407 744652799 771506085 566730193 818428389 986598305 998004834 666080614 954941540 275722221 835129861 903402540 928289991 559679273 869379052 956355677 976023790 375074355 446336586 480093577 924859598 701952049 781203911 124769414 377942067 333522946 729414447 46342434 401273567 630515346 959421243 841866389 976910436 738669350 768386251 208916799 533921042 970011107 988736792 813621145 924204478 169162907 629631626 601507317 659735208 270214371 651732282 826453568 903446581 41551098 758032929 375142912 853424740 844298481 957170576 572394792 686934259 511551510 569394767 275240923 840313000 531235510 820482523 763714066 961408671 912093831 967722287 57943416 293045496 693486283 851606948 577698343 709830284 869669010 920174024 744851600 970878025 316743372 934479611 424530115 658042347 908028795 964404863 574610796 998117732 184305393 243577692 5428068 598893841 857643133 973808177 155744554 460733555 106611006 314191460 997672412 998532245 589091379 909397950 436902581 593191957 470400761 701491009 839286376 844018520 413989439 505604853 582827802 931429696 175784464 946518863 234974159 625833615 674558687 891014014 135441888 982706618 731720758 928389402 647535369 983553264 198053959 422394165 496695818 795348618 379322263 715507551 52695122 202280887 271776706 627585546 291986172 929644391 524654898 775786488 972994512 998806019 283738605 946064027 551169991 842655273 836479868 923224102 216274760 533017184 611647852 780702262 278751102 345792668 487518596 985236810 943046534 953027431 304232375 686560575 756737717 922596963 943551555 982834510 277679945 748236708 85130720 412769671 276167016 465089896 543781534 698367643 608212018 675742808 356250895 863101660 544397907 650753767 223282040 797402828 591122241 687319868 840343196 857707972 232319563 859588157 512362929 805373783 556098617 760172268 945640856 953423076 118096484 662172817 982688998 998392775 435388753 516438169 606274231 671894048 441186278 648387017 992392710 996499614 453123766 494369593 765179458 937546769 138775951 617462513 442054269 827191459 964279027 979729233 983806729 985336947 748911744 790002618 46105961 313306765 219826865 807304477 545071046 799468795 509764393 832676085 859165777 932962681 81550465 709484420 669264492 804277103 907617940 978703457 458316574 568220457 325566351 469345395 240091688 248779175 253937294 523834691 368976607 774652528 623502934 688103678 434209283 908442526 824288093 972794821 461564298 945566717 38473597 693712478 584322392 853325362 434858660 570365953 678295268 686756103 362001601 570477703 440453451 551557128 899355360 947470464 885801277 945606253 916147148 957491857 979243709 995608773 330637693 622302832 446893577 826824278 493440466 596689137 699983104 787739126 527480469 828854298 535312713 834664449 522457176 878373655 301909990 742619797 87348786 108193833 159705330 638597878 680017506 930164409 81498180 96837429 735967965 967879011 257024356 394407327 74372064 831800001 550146487 939058318 472588607 660777018 675791545 886605029 582791894 954392645 180045202 619032699 578488832 686162468 725728301 840858883 755353946 990715232 106978367 642867767 229857316 996301320 333376148 362222551 190545990 464579177 685107672 872517586 945671853 985170366 421791655 678504702 873988897 974767612 770958460 887681305 462457859 571589349 271860658 518030783 5793553 845545654 363534858 786513384 817168700 887462246 24702387 921896133 323051541 557963393 670033666 974947368 660386074 745872292 70650341 719983551 374110222 573812599 561040750 895623911 263443755 394435367 413753049 562054425 947453099 954105536 279055461 662528579 471364538 919243760 173991420 875732789 289702816 842370572 674085523 992057527 997266191 999662228 304025438 970300872 899593023 939742550 574704441 781801074 687627040 973011958 533399143 596025328 306042819 389240055 41866282 648435443 496681064 690218855 321055772 396166342 57267792 209598319 886979827 927152036 940752180 964738539 410009983 590274169 533989217 673344985 203715705 604240714 305832566 960342679 411173365 966436444 877156893 957384391 53335272 705349200 484190662 817979758 713561232 784988339 788832687 829229884 365262666 481414888 964306310 965209791 158270850 558497233 457957599 528127457 406220137 925669535 176436633 669214689 893565974 995594319 903079584 976940149 781205324 877124990 427119293 445681264 833341710 924587175 534154866 558351179 195531062 439669708 68220837 571815456 308300776 987489992 903581606 976028097 284857265 777820969 796026153 992350075 183904194 226796765 882957087 930586469 263452228 675578134 693936247 815877435 575533618 613423890 562994597 640047542 197041747 231511536 486830978 982954284 356231013 762074136 46345319 332530187 563011288 989459040 522694887 550585475 821893106 948671668 389686230 640693540 730089905 985568317 546718838 641281147 702272818 792411539 717636938 885982713 523144454 812085660 812173128 899456726 196732152 271606735 865071564 932560513 444702728 567025822 772749952 960241745 304852735 845186425 44136147 49254330 3084752 558643416 244143686 307708169 252387737 746799518 579430129 712564908 215346697 892548050 433629206 486019989 580717651 908058353 686020225 726174654 11825191 397080715 103433817 290222416 631945573 833811754 424670540 631373760 258895154 912991168 357611767 467634503 539245697 920080033 365641460 703199217 913428208 987077450 9639504 726827017 815992290 908736444 331859976 797298551 222870028 594709483 706240698 798047955 836582402 887388714 176283374 392733429 682086912 855094418 776782093 911530208 965589151 975915560 728282101 823142988 350297527 942440040 363647149 570824251 865169148 954619352 46271509 451638926 17717984 600955929 62384733 337250546 940571771 993371701 882484487 925087785 608550751 831286283 907788556 948768589 792700752 905905141 527356927 677723753 772822667 943359338 890400413 969090687 152895518 430285401 318360678 648254564 862000766 862497565 887148014 892567822 826770355 985611032 844627402 917016643 173267179 280677183 554565424 829552649 936338682 988032115 790613511 894643697 603396191 831468996 266836520 706016694 35176815 359600877 447271938 873547810 450971756 923741892 228314768 954215566 451086648 493371175 541924836 823851400 42196395 781821268 491942459 711755933 744838403 806229350 719079574 748553238 827014257 848702595 706225090 946514006 102895910 349870138 93742985 919623514 191921062 819615403 247422949 359760460 967609880 999622108 990794761 993263368 52559551 275823738 491204853 858236699 635151309 802351376 444531416 785699424 63400701 296365542 360825641 941576309 983251094 995336543 199915998 483273875 129562679 236957084 357601622 953162142 218330174 783066676 131137244 517754542 238789856 885365033 5069397 847791571 578948382 753118325 823335929 940447522 118471073 447841137 690187944 835843922 189451909 519471838 788352275 848673535 563840443 716595024 778298995 886271457 952255866 971094791 275344333 546447638 930843280 957581603 909938545 949892557 835151438 959983553 502636622 600656799 487214583 583560563 865713140 899559576 998198696 999745790 797549408 887480984 864369732 871602809 433871928 674250973 387323820 806171598 827961816 937143552 900209581 974080253 131797994 186255422 320020974 352530928 307472250 356284146 415951987 564584549 138915044 713381978 849888545 998166686 614271409 785978952 722684664 777568503 121839170 953126361 50523355 252248029 39949420 907598902 893738940 994176312 240798370 802685151 623818889 892467393 986867377 991379258 249602225 605817543 874017943 993440618 220069857 763244143 298069839 605936630 646035630 907673398 403864345 469021940 771282689 928361375 176916428 610268522 700533410 886943779 247701642 782903891 319918395 823307431 486240470 744942537 162845592 948504711 31756925 102104811 599631538 871017747 927090000 941831497 816055562 848798367 388819206 956039899 159875608 692254256 824715971 977328180 227218291 678934785 56008397 237729139 904647054 999092270 929909343 992122641 666380374 883839684 459154877 736786204 280039946 932329615 31724953 615051020 277352632 612876483 606490765 640525719 872327241 926121381 491875213 717244147 931550248 987070354 818511031 953889751 742230242 810539912 481373590 755915709 723972471 881502729 809298372 929754541 54243728 581257000 796224334 998613302 642192343 675544523 507856633 985513383 125240510 482076273 606164045 675743352 916853738 959346619 620056011 795351551 470314215 896182767 777816015 818867604 433798384 608395373 433778924 685577913 482140171 910244733 349600646 833033838 213108782 921410861 37592498 197924239 993462353 993746770 488995091 935361073 296771611 669676477 238197313 382059389 285545482 520143258 594419730 668605570 192384126 562812224 185023820 556693042 10134603 523731334 560268638 926108254 996932494 999834908 463905415 969047920 797458099 855384185 640700368 959981276 203752434 252939023 536576331 708286728 530059347 868769644 238108939 703645869 103910829 778542872 936159380 980612459 289690023 718669291 338017107 844217887 198829101 397028114 272489079 656365101 303113990 519499696 744631803 863894450 125640630 190368878 911985538 998377159 309905098 379088260 856711150 892534155 763991971 978890879 735212438 859002352 108981834 695771999 417441450 843624076 560032118 827690904 110595779 925819688 178492911 805113389 242706358 805416952 531137039 747392039 803154977 897375871 360188226 383163800 829766459 914809251 422557535 554473765 240738964 562326591 699555283 916696422 880328507 926537308 882911625 958476960 305315271 956049598 425968718 693911225 454679356 509679171 14810024 95433513 659845377 844908108 790512745 903964362 495173436 675108533 335174543 420746080 514138908 566111084 394768460 741606497 840837696 846768688 380918971 780601390 71068959 629986323 87867582 138227914 705091242 824555063 594458351 897167824 459344214 602829599 470697511 838135703 851238257 922376656 499035452 979950837 669399883 708161108 975339138 977341212 621031793 813663630 864765413 890355593 37259314 106491681 372063590 434248526 885441941 893510115 939552701 954060882 746218253 960869334 255293434 774950955 927238760 932178244 62765389 309549138 386572357 423418255 18068548 75385854 956676348 981788332 703955166 918703428 549017024 903329698 34812717 72361767 77105765 296089088 744746361 954846369 881283507 899566424 325999443 444598314 381362630 739464617 281797836 921556310 746370366 815208460 667902801 738887726 684778289 774301277 551026017 878791818 222582703 722868253 572148782 933395201 204830435 497741682 382945939 465802387 638308971 835606177 792668765 841121210 132559127 166975137 116297665 368355737 822476277 964673891 538654549 850176920 103772185 521470856 180753340 256762010 553735859 851113407 648551190 912141328 869296527 877581061 889165956 995936613 831496043 915493920 906172524 942218502 235030402 427595754 407461163 517443832 751348785 864645629 769563513 784773819 644411538 817677753 972928092 984186350 929651528 997429797 841894145 918598344 16940384 921216896 662973917 707770766 991394819 997211874 538279683 996315223 924509771 957608634 452313253 485245262 913188545 956752628 240507155 338457853 987862331 992590313 382914146 947985486 471601409 942685391 198714563 463403110 48636708 613983080 657260915 928468022 635533226 959156231 926001433 986656251 18528915 75530162 489755512 744257503 226148215 891181140 611241994 694442773 980456316 989526921 875818888 899438835 562731632 927252478 512629421 852244014 582265492 921575129 408487874 875770960 459339485 537564707 310158751 329906323 766299678 818187882 578729180 880873605 391209332 436867400 719046851 975242793 746811651 910781562 89872809 771515919 446161799 968216513 794266013 807650256 958913750 987903346 143805468 394159209 116761257 781439586 738212553 766521396 483860189 977644680 979906605 985459743 267009692 437881266 520122267 871653149 545570720 879970330 709676048 825735565 381884940 658337481 141011454 804659629 272775784 810375643 324541750 541282775 573490158 851382689 509597344 583930898 89585979 507349434 890495781 999871087 624449654 818054564 929216659 951519778 373850526 569919645 929951461 946119599 501045543 668117110 85695794 130021027 895195322 977522569 946961413 965101180 907782745 972390896 225696987 507385199 376663995 986604973 215739118 640639380 884623756 988567602 307847021 447447075 465620048 617025506 289430614 523757917 523499534 978291093 493400997 522414279 996389646 997356269 27973597 198636611 395169047 961183324 318511015 498509148 645722495 863409942 262198971 618729594 703460974 766362093 255238925 623045838 665622277 997920874 224493645 235969552 964795224 976505257 57752604 91738579 493559078 834441068 990544805 996090121 888190459 985346441 328829925 969338467 173911814 651491648 797328265 826441426 42953911 931438723 819557148 881938724 925514147 961791175 959592503 972002917 907093628 931986059 458260227 482637336 139751535 594827349 585345730 691367873 672990498 701045718 53818526 907557906 248060218 704771021 692665732 803451066 544954958 962616172 391327963 525808323 13004885 287468556 87943523 545753371 596283167 627927145 19806027 176723868 304475312 796905556 785870071 911041936 652486535 943964385 803518496 831112442 542106489 577002709 704638653 750280187 424584721 661440513 828432703 966841224 11284642 510482329 617253533 971623069 612390988 913300587 622722399 849135569 992567405 996444382 40730545 898530075 178687428 665976994 873388221 991177246 223247168 282203005 792707960 981328996 980880139 990069654 621684306 980858271 150806348 642541182 207447769 472627014 672001201 906586719 902442034 975880741 358444469 930988228 693204730 929818514 470449754 695960837 777512987 953096729 532364538 742638684 216017446 626585786 648417350 972168874 887965257 914167850 26529356 717641541 859833281 993227641 12917900 990725542 812371139 971435380 864429800 998733225 136347724 552296685 798434178 884860840 154250583 265117610 296471942 707783174 165182087 725965894 554576107 626721979 451555010 573630560 558006110 565705761 663663951 672676569 230702338 490582065 518785339 576674413 589930602 996878719 570652091 854701718 431787475 599902266 490272299 902475331 127599954 295251012 576864181 787618134 986807150 989739836 16660823 489079602 987313941 988894740 248717697 732526562 628160588 858700711 509109360 698234401 178434458 297556235 892253772 933073882 627221626 904504152 3567512 272416509 772930471 874692777 600119469 672575829 563716441 639204651 43118922 190629921 144054913 611795148 498915807 683909134 683875314 795780459 400735979 876460908 787869792 953202859 233511618 310143855 650711869 684816757 414377047 621478233 512923192 540794031 91462167 211643369 437140045 513454120 674697435 906743694 10414034 841063657 104203938 685767661 763012022 774593629 528706972 579150449 806927406 853609838 625903154 807422610 51543753 405291011 42305750 567190683 659228915 754527054 357920370 651818159 513543490 658446376 353042886 434030249 834443184 986951742 609452004 818623516 321010204 421795147 984005612 990346732 147364208 843559099 115482902 910733458 507916449 635660913 923434395 960624342 965431128 965543316 133454009 367504099 777141091 827762746 130924062 188457425 30635403 39466223 296548139 773566825 571118689 868956050 581118545 928806367 218430203 491686444 714018132 736748448 718205761 808768314 423354071 901037346 197531637 592197769 698325523 978491178 379187187 846893667 220900012 349572275 769785101 770125333 273520545 706892223 241349852 497182892 833960121 886375162 312467724 440332790 557394498 924545789 103661880 501121459 376028428 561966701 575060800 687078513 704610276 938655019 235515593 521566651 361503913 441057585 293790395 924423203 989476763 993583113 683690571 879684496 210164693 662416694 747655539 878326169 148822193 745585028 176478703 929122625 808808134 924830896 451718793 567065655 423778770 918992313 241512999 846035697 707616249 897422630 794092853 847646271 879095293 942020757 589539507 959594847 491433486 578400627 971583929 988548856 539328252 951055941 388383685 745510750 931623180 988619921 372767388 419745833 72539785 298409832 930586254 988976233 592828971 707807025 265152607 932643468 249808181 366551451 243416631 641993309 357638909 453755080 178863551 179595067 488719104 996121001 710161608 770007582 747434421 869087384 623667143 855160203 744002081 963593059 638997006 652442170 456932355 774247245 721809539 915191751 930107888 931034113 355952782 500766056 5014651 416141040 833923065 920409256 666906019 708860320 638335479 891387441 853946069 938983513 169141207 416322186 373103564 435975736 12249993 293526404 379703833 749913196 404097218 676484666 525796938 762308835 820943536 874090685 392911718 602372120 427131365 704379497 206149892 430626733 923477719 964444141 506423254 525931610 911434859 956325754 433280964 699930692 672401081 936413390 916346518 988239756 85078055 163543996 39405539 484176482 662572457 897639716 357931899 611166387 883876989 949600794 905716607 924310440 326250858 621672939 501469724 932807160 693546945 831282560 316602230 465051837 883658768 901181560 120340448 668017816 159978337 317780852 176015638 728729091 108501479 710531512 825490183 938586857 734023234 899151419 528525334 552264738 313844741 633548745 625152356 746433356 516764527 835752136 509957149 557274220 694701577 721609689 428849856 702216170 292031630 861585099 914029416 916489435 77540928 988928056 688073075 693263216 55379846 922512155 52518092 194357766 127203728 649559717 754866092 913860698 457084237 733980386 501531499 829766954 688485003 868853114 471051116 537099326 686445619 767561756 14035682 840752979 245586534 870478987 371217202 996769128 767988600 799327980 838488019 992774728 357671143 860493384 512003100 851386509 374652640 780258986 727924005 972957871 534388949 724310009 20704392 713013675 760425135 898937622 626004652 751225118 365396155 647990201 589680290 871774633 583615815 729130336 689162939 878065701 940841607 998741133 511366936 725867113 292060615 694302516 846134211 996795296 500485073 513630806 561048698 566644876 221363267 413934898 348261545 979185945 922905600 964602741 105734800 552024374 664132800 885593742 474025925 860170498 380077418 944338805 922461409 951936654 466953989 922537316 655417285 996326862 919269079 979910196 648154830 901540373 254633567 417426901 435761655 758223195 139170971 261625631 991705147 998070869 38730431 627318379 731496444 950160742 854395338 996202998 716766062 963679232 984088797 999451117 657648439 829384552 50391540 704664513 953407187 967855312 435801573 615939351 367148124 947059814 602705969 957820351 396036458 750071860 696533304 975328006 658136385 818183857 861572766 943187513 42146317 816685110 985780912 994003566 18315630 194935818 446798962 628902505 295134860 444264909 165829933 936493318 334264032 909687354 461576768 721969980 400452354 580887862 541764629 632712049 263696849 369822057 701952970 738294226 163487850 635491276 395802082 600350974 719074005 981865314 45319790 51876011 452047324 650132520 362936033 548986367 420403241 892964278 93289169 534831843 215092833 664556089 956778985 996426470 831383738 899499946 546672248 914477187 480248690 929077370 581171311 683650981 992493343 993663600 818647269 835145782 190068259 633211773 79001263 522537912 58793263 188928689 667245217 819347459 135796669 397179504 231780324 506021097 347351787 434616834 119096875 532229927 251727792 701444489 781982879 786090979 36691824 769949584 557383831 688268743 613291596 722314759 456328318 504483698 279578250 707606777 89100333 969187348 492758958 704313689 889025044 946997442 54822176 108040624 720811574 872218013 17164011 564832000 935703076 963042449 115493685 686567317 190481124 939911197 959360366 978923059 919883431 968403428 4836947 614821068 230797472 257403455 73277728 506459839 249688199 917981758 272485532 525187542 575465341 651070443 986213456 993645652 261543852 903798208 547529259 958369600 584151134 941675890 340661522 953427509 824964109 853947835 340391245 360230402 279189650 371164290 489291547 651245733 559134555 730603729 200867106 415057645 437490524 858205085 536521097 954630959 746102790 886699089 435203410 446144503 239457041 377061762 246141390 398196403 700453718 815554367 931075162 965650172 517571448 518328517 888146021 977737132 865094230 870189904 75618907 788996574 141653782 909797714 328956347 622063321 438314101 621067831 78488350 517269785 639862185 812169445 261966968 362039515 345614901 801040768 949837428 961317991 606488305 722727749 277137774 937945680 796548155 971048331 807607200 970200288 632580768 708524342 288058372 925749293 689168012 780831929 408661840 602747357 562389044 669264421 888703893 911918983 236526564 914589566 124876418 595212178 465877410 638934400 536136619 888622128 678731645 881502517 827253350 876570452 752826997 795841596 462844935 767285325 48050609 778512382 214594064 349932513 49165970 945098534 854697377 895162457 331995148 613238366 270618541 274267459 443730203 800333774 379558271 724633774 263352446 357935570 302922390 886728718 991093878 994374648 909344160 991715058 509873067 693184087 417170975 431742289 552465810 789495969 608412677 872195975 274033013 752817958 239259552 811545295 857647323 955958042 358072643 363232450 658781650 982834594 322519823 484368848 714566434 970680364 747778188 765196700 134139452 840624648 313662023 393676014 353418681 811151080 92329948 98897822 158748134 461643096 540840677 587087805 547491340 548322752 141486757 319201267 732690519 890872157 846769706 965532577 737108335 805022019 344989215 615874478 851888789 975650350 712042543 951749098 540599555 671781026 680842070 936819817 847787113 848566841 31277758 947175106 484175984 552456931 632837952 884722985 152570962 154672588 994668384 998046457 256503196 731902470 14879626 243957815 582006249 884377257 746860010 765926684 627190050 896409420 380574061 461898389 220316143 724022712 896804994 918836063 936683028 944898756 117538422 908204419 348124860 349559850 568464925 975358672 77031964 606652235 799030102 995879062 374974364 546365174 421742342 966680703 921603446 988660528 147180310 787478065 589413285 830555749 785984906 885078804 512052021 790488835 288068845 566651242 242668661 612271717 592213572 834625752 83219981 319547767 970455502 976796908 13142541 872473074 866670619 919175293 210324308 583249498 76802920 855333807 704282539 977309386 752821823 812744762 935655651 946016513 145885384 422100646 213338005 782348025 685496638 946076233 705283927 818816273 751061550 762528945 739251256 894249802 750076170 968656674 457508829 889449268 952286464 980844607 318109773 399871074 7144823 648614058 939991367 953509807 341222043 587264193 955349410 966949373 270301188 426090331 121271713 973664301 630136912 952700412 502964671 945244155 447187883 804871032 210216553 268683277 288604597 904818916 75157711 935877020 922057706 971562040 129638952 686239814 784627373 810659167 12804425 978714427 615476567 904491260 300795935 623457274 964904281 980464303 94546942 606157044 481942519 751170626 282721177 749267207 736589952 750440495 275269724 440867062 884785 954650655 746802522 756235903 941738670 989646395 583421754 810734182 178536924 755533920 297761691 705617367 88220987 763981991 39322901 607393926 272169571 526414570 467596059 951856513 289071685 531519004 457654692 896683977 914266705 973228044 976560899 996110000 595178599 882903100 476105794 578064961 703821156 801862403 94112262 915799152 521594871 826155201 363399171 566075832 525155242 622604068 259414963 608197475 378921889 660990096 581371701 695840569 232423699 518750854 935424278 972752930 350890702 905484248 983756860 988689149 266516219 819732601 855702946 979917909 334102323 794827580 11634944 671543248 293764245 791722974 283570914 758307913 132471400 700574541 678574612 809386776 883939498 894372938 387739545 766197287 95499753 787867700 535023402 632602683 768418211 842838019 343030826 952767556 861759478 926374795 637689350 861934422 171479824 196243282 261797665 691866922 883850898 978074535 375293954 962156723 892830804 998669835 622757205 667038464 467816177 957515136 836626309 944656608 25283865 339597564 243689076 872203696 107862627 463113725 346752962 404274663 793714129 981381165 371652728 972292690 366008995 651143731 237609244 547529118 294640825 894624165 464195514 902009512 978049463 997347856 310880998 953296067 968053834 986693139 4130287 121603392 309700367 994188053 503586543 919270778 370581307 516861388 763853565 877232388 94344964 691825551 835807915 980462465 93528680 121026789 214334677 851379274 556999654 969305649 218109659 621956049 288106059 511126750 443753681 838586046 561430034 815724015 442557308 794421689 716941953 732758541 956859085 990383425 450255826 818593120 513882023 773513540 258101281 656645173 94982403 465848852 335407558 708283738 677259499 679520813 227723114 707967338 267375486 569853682 367051982 489250600 171948318 731488029 894317285 914217562 961676087 970185345 612004154 869349895 20755113 788075879 926687501 955005499 600173960 768515827 801704011 820595968 873636620 876726546 665429428 796285335 619484936 641663523 832794068 994293679 342371569 949932000 485255115 725550194 257522057 708022533 774158888 979556733 51907442 144471628 476089455 688060660 40917546 343027771 754078391 780395743 567404890 743926432 15269804 726569255 14596485 853544690 1180825 832788721 914266190 999952096 723452853 999711371 636826596 863514903 840817004 985721233 24063427 367068999 171429028 653199566 211926654 413347876 471096346 667242081 434276018 859988155 329488371 723492564 473234432 968514884 600976368 837743580 387423596 936807649 694054660 735474388 380853080 568853736 465506631 902999453 718509284 923988982 938787890 967978941 871195436 934073282 364585148 922415711 50867959 914536297 421954900 470381928 823714262 878042272 474048201 881674720 297154005 532460033 63734356 65791541 466033461 779227844 855335665 879565582 826521994 842337061 79244152 929698038 696375654 818357622 936430265 942125766 930629233 964386461 700467924 760868355 672790261 782123166 725039489 811059269 558807668 585374257 104309629 627305774 419310068 503108919 724677775 860248897 498111696 542180124 737124415 985436872 576679100 993939843 279417256 749103659 811786336 887463779 121573833 564351649 801862926 829078868 323202506 716400356 614391963 764778237 962450388 978090550 615365828 648700261 508635403 734727511 228287839 638471932 599487939 629898501 884970415 969807925 916910798 958005221 351006121 807614872 966324636 997876720 961541093 962207811 735452599 969061455 690135016 975291812 855827839 873509276 627160273 836835551 304380036 835555958 206978283 771084861 317544150 624654100 519115554 859960473 172014620 964828483 556136157 874792913 852549317 928302227 510675789 957527135 932661979 995835194 752623134 986153761 897312700 964502761 928974355 975670654 431836709 438872623 470560546 907900936 133345207 890385500 495875507 892367156 888641302 922082410 7651070 344715410 792681802 919664815 962373189 967792304 371867983 461321468 293826355 480781157 643564916 769418933 295150128 879496178 640644065 783351882 637462875 830047716 791911099 995044714 197674020 963206269 528078570 716697862 581649468 896749610 115293101 723550375 99237795 629655910 284235252 296279062 812864740 836088244 353151621 366093374 789605617 894747471 69112102 114556625 556389966 759991676 363363471 712038758 730004076 889637408 643006966 904295811 505828164 695131261 898382130 971035045 868804963 979964984 573525966 935141041 687529427 970561391 54929305 724834242 152637915 322821012 879776840 966031612 580332490 970169569 980127636 996059005 779758048 883530240 955770574 986809083 214151536 221400033 93828693 710491987 446862502 873948793 942686229 965294880 239472678 615134248 463456868 586558633 190980720 619866118 449223873 591842495 595895217 903124686 568742515 801389786 874364871 924840649 472193962 897674244 764180811 971969268 185814479 885271579 270418999 770255878 686644449 951920091 309901696 372728460 521968950 752258013 103900183 238364282 274762530 718563163 518666172 695228605 679424106 679836430 510528589 804701538 645874387 708061331 744935038 846111797 277067721 633386434 155926380 675254698 54030375 67512848 615365821 991334479 221697546 865413071 875922493 950339677 434399489 702064094 113419344 852049441 55934413 433902285 952070517 963063413 103034883 897747129 367913921 477934828 82217514 589876766 202004193 598879507 717080041 852290626 785182291 855435017 69614398 782948096 483790860 644136955 544924616 948488283 429605238 678057893 793940515 822913948 977822831 997308546 804338518 984162938 439631659 792516111 758831113 891621351 129784727 670662186 382746110 798891298 697594469 922987086 996833244 999293583 456525844 652327590 12178319 279381531 103281277 434029138 168177541 286362081 103650271 742745062 536480303 666797863 808503947 983128424 426275205 890269782 908353331 955940751 390620958 579386076 299195716 674448289 67072010 796921129 600894527 693917055 538938591 894409266 978122427 994512864 42005926 303537831 608050612 930093869 341318234 477472831 110150311 808119297 285000737 877040532 924800963 926500237 919118187 941307361 595444992 785799590 803125936 806652842 25682322 517380273 144725808 906993427 714202760 863834615 718764345 991980707 453514907 787223680 11416070 463343768 867121489 951124961 976271516 978658851 373904225 856095166 537982108 575564871 724146348 870327757 793724567 918143233 76042700 543840351 953360865 992088745 920530968 969579949 218612978 977461320 265775900 910486156 428518753 580155062 562537020 788770853 411036487 924274472 147191982 559803528 26414376 793956918 386734289 937834126 847687413 974596979 845370742 874506495 704365197 871982220 944049054 998590657 465074807 620545000 950178696 966572613 388290121 950508948 85003222 911997982 580699231 658420294 452755211 705714937 383341212 845813779 697762656 982544266 51808258 852394577 617490323 866641606 990452229 996986310 775638727 920210950 138488194 748906525 176095261 918998463 257614295 557951454 552385204 964431639 97335471 244636138 117121554 647948402 372557000 795907846 251895265 428477891 987380618 989423035 477996438 952899979 912127458 929813494 533489410 978133549 547427733 743927701 163954406 760124732 420467918 430171582 537859742 748772594 457093611 994581222 572449747 869871152 431962617 768376741 812759819 821943439 328242334 661754077 614019462 696143756 400953337 895633950 709709729 817362482 220888487 725323283 254544219 505656620 893548985 914435165 837025468 971295219 539190527 889052981 637453387 745571106 946026397 953132651 691399941 922912095 749058795 751990451 419880989 454074681 83979574 285247214 231197402 814863300 467171902 666280479 825454867 839936779 911117941 985654955 107054079 130740366 261053265 444098813 950390308 977499115 119429425 799831536 150755051 413420371 378385047 978934062 893290564 906844868 570115017 891207957 518776015 773965746 998837049 999411677 76075514 153671527 644445267 785154426 277313408 741924731 860231842 990680903 720727510 811711521 303868501 540195527 644649338 681951607 585342890 677435401 872668362 934937601 457571360 482956875 761232935 965291128 409203040 959186891 427228671 611914009 924692030 942053212 104166281 836384659 342018294 962063211 852976876 902538013 637621976 994255826 526996913 928742218 138777471 367000001 561474188 607467528 805485462 982642412 435203082 587259943 542441210 794067384 735756041 801321423 937710814 977319846 218975566 588859806 119269477 345428689 793205882 983888569 359661867 393177508 490788011 521006362 538663612 551438288 767867515 780088616 239855460 690977102 817624426 890125370 275891975 421163575 114179889 664967899 357932974 998139985 660269720 817625550 199042190 311828003 413199600 822690336 745161280 862963378 953446791 966751211 115423088 276989219 145902974 194137253 273541856 400706471 251935753 498204214 204576667 445667132 420780992 866153702 876473890 903111229 889517823 916324991 452646535 934457024 86753202 769373445 517520192 797331272 734553182 821578624 879495458 989255847 211556219 619629751 737125594 965145288 257738084 994790903 847029196 939045829 780978110 796050057 739548995 896719721 593702299 731416048 541324548 553308560 498423186 509364758 236078583 382771579 594500333 807302083 661603763 741640152 841397026 897266164 827521789 984960881 311628178 328580660 713511889 822204787 458110007 529894943 245998907 489467186 414247043 655197019 327815510 368820609 110093401 895955659 598649875 896104830 845068409 968579183 247141492 843180121 336578182 421492762 878392228 981806016 503582250 728245873 920117905 950115469 944841995 951270926 443928614 482333836 815133345 834724886 630206112 980403240 152832171 324045802 652371725 906763557 828997102 970376424 874316919 947123540 620050912 644935889 896283307 903551347 756334243 832734736 718174460 942190669 820612956 945098000 652811676 755376747 595103664 897159299 411464066 552019784 232070143 770501743 140165724 805588157 118031313 221710194 613231702 750290938 158124464 920046088 757140631 814528453 52589054 551969838 430215595 438728162 351795987 612514228 80070393 219064599 851388955 966507289 172017445 543142661 667476075 848330402 825569488 972552469 62198808 817232234 251383936 819019638 919041386 957557646 438205724 956819993 188754198 787792712 537370109 618741300 994817236 995655444 530821956 583747575 883784991 904342155 813161567 977210249 67457511 768867949 665392872 707764871 268913482 810254225 30363809 32562303 188489949 190527131 200190883 451101882 893306493 998740339 1926092 889523308 890786706 943788713 947535769 990129647 22575269 636855901 862523973 965363325 710538533 872828399 823730947 912471462 500106245 962746738 987869784 999749596 50154418 619954416 707636830 806888767 977206925 994850547 941278427 973386952 290613566 924363198 209756982 725604200 357495411 368424680 725711073 919300768 974057769 975433423 245731704 673792587 129733318 387727441 616920370 860029693 794485111 905484677 887489294 957171473 20758639 175367956 404209597 968466364 415074815 920986472 508626355 697274087 738031729 882107341 855853150 869522252 728781825 734164424 775998657 949309085 330198123 922614425 222004254 986141410 128032243 522651514 252831055 638982610 317766568 494438183 956688088 995815743 970983465 993514038 940070949 981094655 477308081 552580458 898931079 999716275 979790315 998839747 41369912 717118387 623869529 698457290 495807670 847079551 911112413 919197979 894788338 996989692 599265395 915720580 624351887 848748140 844841918 869832656 595142478 791569708 705014300 874364728 875528525 970457936 646791331 864623890 499524981 916834685 233583686 705409732 197656932 698580284 234510227 641523309 94898310 675065675 3330597 899775518 397391026 832410682 974421695 977404646 159210386 527125605 607940960 735912045 577043565 586001486 999509640 999922536 519060290 539990823 654301158 950310362 354027240 754379663 999630589 999933839 26596249 375575014 884078481 955791057 960347236 970921710 738024589 832322257 159333602 222301150 342224516 845008804 914706478 956195644 967660437 974729959 89218166 984633362 675219620 902704819 859498001 909424306 835334443 913083687 825469650 966753924 383365263 891125006 824261681 997761318 691124042 866443876 75613760 908690523 721379925 894705374 389813011 897319094 442705487 627189312 24398454 84137077 400980016 924655282 542281836 597300114 474597395 679894449 834663037 912357904 49111940 623948732 624327426 882232319 899573367 921457567 868836586 878553367 136001175 870416767 493202383 716035218 573537043 791964551 46263769 156047618 741452681 848194274 6384435 113133231 792397610 867596301 626281460 872472152 178958848 819135765 783257722 953288542 739127457 796066800 60507521 159372650 534843999 979509121 644217511 897837003 570661956 959648919 522536392 789342520 283485301 598154037 722511265 798637648 402117581 806123148 879215970 929579152 691804688 763485743 224650845 749049202 941097718 958513642 722651646 940891453 284692601 812853557 875798146 915612750 823947672 860520729 743847622 809473315 449615127 968860117 774406182 822869180 502153372 825138760 421943560 525951345 666655195 799418595 15981591 301471110 771479982 784668490 368260231 558491160 553929024 826175155 651247137 998537532 737479320 741376953 604786219 730707863 283080696 993712111 164572831 329940661 13488801 705500108 215891270 435966451 736756680 846968802 998800423 999640755 942749850 979286450 842770089 991747501 670769292 921986420 493413586 717064933 505226022 864411061 856601822 910305262 783184285 869052603 992641955 997420267 314628691 659130739 419292271 895256142 608842141 849039709 988792547 993272152 721408216 940851697 433668693 527744518 541565637 723980638 241643507 656168321 299817499 310589481 846471927 990676877 853783697 950658197 431973875 661738780 765020526 826456027 417686890 517828803 467853038 901830436 497612404 588811221 877524427 918239736 532567641 626955002 84100915 441648789 106828917 603968182 85246607 700585684 580938165 746837323 117455298 809218049 772250396 881980243 420710385 910157792 861273326 914777571 514053202 620182887 913051429 976920346 999775759 999939483 725293128 727126247 790926846 969248160 428565482 830685322 558099528 944649084 309499793 835752766 103597878 498632102 788610917 801114468 52849826 179157855 167530041 371505169 650893608 861603411 183324676 437418977 36806407 603936094 787951102 896478695 698224642 887157801 470802063 498811528 309038931 519458144 450765457 815504116 926336879 979513911 909080502 986996169 96747440 799164765 462002671 696708841 712619235 920528526 501835130 609522349 890884983 909092746 742024966 800005098 238981567 470825037 464955554 544488491 161855910 935114760 365611957 578094355 663380194 803842613 144213390 151127411 545239109 986072949 61255376 615760892 32347083 218744839 262408204 529673709 780758512 979418886 973593308 979542571 263225609 749504421 184617147 353678297 912360367 970171571 901610172 942825758 174352222 967535528 512690120 849878736 667350394 802234521 652589043 866671512 131018333 174402899 875995002 922096758 336340810 760160782 4037499 146777377 532679649 538574543 411131775 679921046 768547242 825151903 122341193 280248131 987546678 996344869 327574391 548556755 368492253 602842614 602112344 832535712 192776857 983134817 310421414 925622208 438564059 585429934 758895211 854048150 333068953 981809863 405670699 736689848 602510181 644413077 290670470 995312442 918133371 962228405 823406250 856624027 227048236 479337421 257468648 842421402 253155850 908150774 254707110 546207189 469734156 519141790 792596369 815642856 828800342 969813666 143202294 537050002 50663583 315282927 476993885 739694414 87750698 574804677 632349556 874390431 205370300 798718139 813163421 953101003 768150278 909395572 864438720 875943716 333862288 443298786 635892812 882589869 353554101 413646995 669061455 699107269 754385259 772065691 263658653 693135126 533336700 867512258 447259866 850092089 628879282 916818000 247811279 800018760 226926278 719576921 171025443 369469860 247793738 368757639 988409580 997089084 859267539 904321618 982451631 989283695 786490925 918979359 973313562 981742253 430601645 761632122 516220881 590125642 349532250 944790150 425722573 812895462 826856396 981798824 826025154 904202847 684526400 714390098 514560210 810833620 14974518 879368350 402782200 938233243 111139477 908452992 101423379 797775436 702701393 804871132 781858579 901855646 738501295 803571338 290420774 894530259 713851526 844040667 671375865 925456032 842671609 958537163 348724942 476059841 53413979 379506991 433310174 784564766 974651026 998656742 309923742 959600804 196169294 907020917 300002965 893812690 514095041 809430388 784432397 803676637 330312368 479314290 899805410 983872976 942130803 947578758 521764159 848425030 532752285 718191365 772355140 893291789 400822128 971800816 3795995 793146598 471443408 799426058 791245190 870503112 683330085 956677042 376642519 926143077 671436383 858352520 898060531 997526915 463559217 943509277 705202752 734708031 881276291 905833211 955647847 979284675 835211209 901656856 496426247 811866493 741298533 855526509 492877873 686288637 312704425 522118784 32668876 413648080 176003069 210841246 607380052 697903079 804919041 854952979 282232743 508654916 3703581 916886693 236035096 474395807 423551202 447251737 451777163 897560999 285905490 598793476 383691410 611636642 11578495 548252587 774724547 835328742 34082095 209616239 178160142 818795954 941852113 954926329 706173242 821686026 620183786 907524874 394307267 860431084 221256969 395178806 951542218 975118550 911945427 912631018 767002821 828539323 346472971 566679511 435588846 439403084 695701483 882432827 804453533 904519689 300841127 789263112 928407537 980144028 519376552 570091516 94619400 522195298 286190223 314651652 979891118 981252280 743801539 840910262 700817906 754288387 88580210 496389930 379679975 559268667 800056311 840689640 458150024 467645193 291574364 745107150 763434438 782038133 509825754 817151801 428589237 822953099 349071446 727204437 668097585 964308805 980596844 997880620 405554227 729698957 282067072 464921795 940159898 970609129 194023211 367700715 119310176 834916061 440810869 679493395 521438369 804896104 762949957 969488894 121356775 549735899 589218820 701658345 13294923 615306283 411050350 883228830 728254766 937970075 823024522 895388748 862504771 878905475 924487973 990560202 778484234 962787529 98578236 886798864 162530498 306460329 112142147 743522192 557535666 989121723 620519565 784400921 317994689 384142736 355534165 843291733 892306833 981013804 600146808 748295532 845593024 971307607 670500039 876085494 863521211 865658183 534835281 604656129 439013883 576561084 695198443 943913919 108768978 140614896 123805161 357337572 8015645 415099538 83445569 608231244 853733874 996278054 354277349 367348111 714716742 803978886 187518647 671468513 194192131 677320496 53372706 660451733 181836247 776675124 196443827 641965645 614799971 794006413 950213367 962198597 15684069 19534524 592873864 955462275 72253012 123351439 772820844 956310346 507191651 821172537 328223321 757851327 184831063 668623405 853712033 945444958 675893453 754772884 910930283 948775833 819066844 947121698 427373707 986750069 944223733 966680742 414324207 945785241 640752270 827968942 104388990 651335804 517028865 911171719 205441262 548343460 621023448 690157982 655427692 769062808 860708783 919269076 981666624 983245669 532106376 721374584 450702124 835276608 670595159 910291585 569089314 758559622 537635646 570354312 163332011 194672529 551240611 607076124 764217350 880699394 442608509 687109616 892399719 946822255 574423597 695912257 326563416 375245140 102252689 808622303 791556079 977183247 584836950 931500185 328606008 329165625 96946916 226186808 128162805 855740988 871876089 981693633 928800832 955838834 684498304 936272205 994328429 998744459 899655554 929216591 943648182 980031602 944120814 958647496 398647640 421535453 744092337 902340466 799880975 973392596 993376198 994122708 516172505 896035344 780148537 902626855 956267269 970853919 717237665 963012177 614607558 689143865 406494307 620666220 730953104 847666009 542178948 780627924 445956062 618888298 215387682 874271378 769321216 984451243 450718575 738567278 770061412 932621672 690476689 974273883 50157865 487206489 545079549 911205744 818652202 990339398 213765853 255656936 766417532 945058153 828166245 952318468 945628886 962367237 417407880 437418357 931391805 937970141 607914045 776182545 197113557 389902127 704233125 902738240 337645675 975234691 823896085 946670498 622466906 948949452 43354788 388223517 97252726 288839486 649526719 765399037 566565256 706550709 262263520 774358343 621633265 790237227 355248115 412135271 823936751 974041256 535721772 549527566 695571105 791511024 951939006 954200992 185948996 636432791 474020448 505686782 318222707 840324289 151570662 724616256 989125648 996977234 582413213 899005092 249145222 726215362 977730964 994512102 466584305 882870083 159676868 979761025 491089345 845075130 752212347 796267354 576421075 752677472 729299773 961555381 923111151 975954088 423713160 987813399 411213158 942172691 152950002 218017533 955361597 977306316 483876000 522465862 910002551 984359910 182495091 672081037 150886495 608831524 249606418 609736195 256409556 331355510 831150275 956383013 657644712 710718236 957872234 970128077 149307797 993590836 639046882 909773996 372002733 624447512 667795973 909782022 19453872 249669046 499133037 783478831 911912771 930129407 915030412 985406509 538747321 730607153 643036422 843331122 250077900 683846702 96652326 534276621 982154563 990415317 895851590 926259274 947871874 983310460 834711198 971570403 455718677 826092233 147459140 542588856 703969742 882620633 812651926 815720312 979433850 983572198 454215497 745647057 944236832 996396428 156383049 179997233 537041017 544627673 360111317 440845068 131469674 158605637 124200038 641493296 619558351 784587260 140212649 422346852 777806667 784871525 71894011 304279213 152246886 557323395 632621859 945607027 768288828 848991402 348564436 913036114 475929257 955902757 222120658 989484268 456010962 532237607 779356335 957118515 320447838 486048462 278768636 944628467 54360872 236362616 656084622 799123555 986182134 997655517 396810426 977439185 461265299 605463915 596992619 624866903 486964387 629672972 839835617 944570153 958010483 973410033 47005929 293478750 157244228 305105208 95689919 199356085 371276313 963397228 300810005 955352454 996218139 997536878 359201967 837200057 725228473 787001985 762657609 916153126 756725826 885250800 114472997 448476444 890119231 958020288 727781244 853185960 446629634 927155433 899194057 965131584 79873023 648777289 384915017 509935997 681837053 819315784 105367751 301843974 792901048 941175293 920625290 970692443 703447708 925763486 458721545 694752076 609455426 754614450 850043083 890744050 516723297 963295761 304147063 659139362 352999482 933093436 43500428 946159573 779654681 912917205 637862363 792790399 514162687 808560972 33888943 490581867 607850875 815257289 538776165 643362688 971191307 979168952 270825439 905495395 478081853 982516598 996507371 997172495 473591190 484193396 156819338 300530313 671107159 992925889 935216741 998098930 255349788 370649831 360935228 653868877 217187165 722471468 357271994 535711571 116886440 273430068 472101951 760459147 915783061 961890500 277399004 483565919 916952347 982404443 580145556 921731462 614905485 725848318 710745389 767889545 819268139 969443563 242780690 415107584 862706122 933701609 236270888 621616837 33587402 373907808 35972199 136565520 430745549 685830084 683892254 743882334 79421134 464249260 884313321 966226104 529888850 837738437 958741690 995775759 303890210 309240572 949876124 979814544 124047065 613194087 888777258 939301688 970430205 997963376 5338125 749864319 973097058 999593652 56350060 646221705 460470360 979732066 974475571 984407551 720189448 976849474 635462367 882511626 304777659 971220200 641514256 659766375 525974974 669568086 44598902 763883985 889730189 966377979 697114591 965011535 548804375 830949093 637920713 962862902 457967220 603213974 955720119 964324423 970442037 994218129 952544473 960862467 184812623 410791131 18240492 588642322 140606483 621340833 413520594 966384570 514272068 838661778 280229811 504686556 595954798 771368936 160606563 549466319 182299394 888230891 729939803 850806204 374606687 871250982 26235414 482370053 218464544 895866341 876289099 895349665 139668394 989727393 669781805 820536073 397946198 424296499 961459253 980131032 711342716 883368100 538776992 539312477 723385820 810808873 598224417 665470881 157108883 479414032 233458653 390152665 926232451 999570135 761028978 955273399 808997097 917154243 13752048 112942787 609259480 956210136 323134431 577109385 452684551 633851889 690138350 789543028 390003865 856473195 986622417 994923244 355214124 832011168 945385312 977119170 289668910 891843370 579021485 657434893 668762566 947584671 272491299 572289213 502400778 832533194 960277416 986918891 143456264 870354217 247744328 565383306 127142322 778902137 19910008 816921830 37372566 66824511 884102560 989188126 512052683 951057947 18126486 372521427 359708242 955005929 1242343 431691350 718609539 809798836 144777298 839221860 994437545 999159784 323288226 995104868 484356159 636835532 316710577 687144830 12654807 700977493 113359460 547204780 444160868 646409279 426701202 970248592 853886872 961638901 338400267 696791672 879318015 928877374 807664741 907083915 449755236 479115952 198126987 274820897 267397747 720726134 118264358 917121057 638246448 883671461 342982859 535057212 300027538 771099424 200336903 954664077 281500919 404879347 36853475 691071102 569749730 718956441 992154700 992364167 973838366 986038002 452942206 479970117 389785308 500660643 110958117 556915962 328153122 740319794 312873178 351332039 677027723 702828335 538776944 565429681 821052401 906823583 451719442 566448922 88294240 138677387 619794277 890352243 118527632 391884189 710976806 803389015 456049511 462133797 123954950 137845028 885434439 945360372 401031184 401704326 603657343 939708555 442832930 851074458 352544960 760357106 622392928 928606228 808112 253690787 228307083 504776063 802137805 997918246 820497613 903611368 186153567 847415465 424483367 502693201 987628644 993088572 413707712 485911684 705902100 875121766 592852755 686029568 389301806 750300560 29308132 748861908 465668954 488886896 515492701 697810051 383906784 915311195 37790174 338615863 675816916 997768185 631546464 964553136 848906216 923388351 127114757 229594107 613374114 965919000 369490035 634447043 740536313 837741080 174853212 761179967 571414246 631125945 985185504 994567591 686400811 992085747 980951658 988243753 367038997 629064534 686286598 891647942 1254870 831395340 473612649 960167153 454063264 553016811 24847172 348451516 428590346 567009415 296001235 934222421 600383120 918450231 172426222 547388961 43615229 290094744 861800845 984038617 733601131 861974883 55097132 658156323 699580662 904093899 460013654 512487894 969689152 985291363 709117400 780633321 492898657 513861060 345135586 869354352 153377536 800941205 232657060 473009352 666045161 960824664 779201025 861104312 720555611 871685186 623253535 718347330 326606130 980732122 75242902 207407599 647467696 907557149 793396359 910043478 711188700 970699206 702648723 963148198 723587474 761396500 577981465 977371911 937837291 983405351 216196958 589954634 264290786 880356299 230520564 662253364 158545169 787952400 63226989 630605350 882062989 955006968 86588722 875683770 268960473 981691471 105897658 501428749 451102325 870327770 140558735 883265411 690095703 752338640 262465166 646257615 293520162 927344441 457594292 779427192 822210813 838850108 419610446 503767255 265285399 345068278 321533054 880925254 978885944 996892503 74832625 758954596 539900827 720654519 136620657 598008106 715893622 935743967 720569084 732404633 876198426 899064384 228002900 940188177 535858622 686697769 553413837 938577700 133462357 392779643 883392169 902682422 406867776 999955957 582163270 990043578 497784352 840898149 720143572 789962326 871080716 982977279 497772351 742764061 699763791 737439898 667332357 876996954 580178168 600117056 550460503 717304662 356562785 998478198 951936708 985929232 497394373 866978662 964294783 979018045 532688342 805572144 880202039 979618646 882567299 914895449 804690370 904702066 266959563 878724659 230564095 505646117 399268798 512063116 15880370 534928769 712528892 822878812 720101652 920431136 798144107 858085159 357995718 945583240 959752905 984325919 176565600 252201330 845230531 923926570 204564947 275332157 867579412 876975445 435376457 654492638 237330088 525258041 908717141 926513378 389897792 571822522 623718973 739504876 775002102 968143313 617775832 875981757 411278474 424534479 591594511 881147742 679051727 868633465 841537901 890021721 491790410 826586488 307755931 904183623 779078290 939533925 672180547 870858183 641171208 773506411 939308681 953630191 750046794 788673288 523974680 934699607 216054832 572001171 573549022 664191330 934098990 954097849 827480187 858748843 472137970 527211359 454576826 781582954 244845847 686669938 489201814 574493948 23429488 405359281 296037148 632510700 93009396 717928327 417609361 743647275 345309752 983734515 885132794 950684098 343730045 870633177 122334886 199956819 949013081 986438287 403399082 840845373 219260296 506579225 41436187 780222337 911486651 971784370 417810440 621809041 410712294 445361175 100903667 707255581 686794774 814069297 269028441 939092055 462163364 543798466 262612096 396639901 848814870 994970628 642172895 937065724 209323022 886815672 555255921 625328793 484501243 962009749 47019463 884499808 380042756 388282318 586891530 614208236 64541650 742282247 554144008 781890968 998796793 999213699 687465287 774896875 855828469 889696937 626135549 851898187 577211738 938616026 618684510 973426488 539736856 745535618 852652518 967282182 29711990 390247443 709510176 895998935 124585372 335801934 53216922 459794258 671170980 863411254 374360612 513491978 916053815 975688850 456663037 592565913 876846281 940339476 424973379 875920778 393675318 964261753 334503773 847377867 942920012 991949493 86104774 209735883 249674788 841974872 846752593 966722847 753002028 803719718 442029131 443478202 611284635 759170527 499270440 971697445 334798906 497441841 376703075 586512827 684814730 955057121 278623219 997116505 836697140 913765040 960453674 981686940 767133380 869294734 689632355 829644823 58120763 922353331 416003797 939590510 861597239 975021915 57720937 633015328 732839258 857553955 774885524 863356047 528306559 915601826 512664620 571785125 120101881 174973613 76333035 367879195 457423621 596017853 140318853 259547189 129425559 132179745 712629022 773319164 691824223 950513488 30296282 154741982 893555270 967309673 519295367 588015174 235712228 423160662 347157972 617397124 816937453 871114048 533777672 751473862 663056419 930101012 326234791 852507959 625282889 643930731 208063320 285267251 194881645 468703779 831637417 917100530 986521369 993256861 208124932 857215786 237585518 272037024 373791549 400105266 120329083 244779030 603801448 964937560 132969112 242480323 412896574 430830047 871779654 952926690 414140123 769871289 912328671 946144307 673006061 881981509 632092833 940204658 773534684 857372107 468872246 918563298 226168503 350293634 977610534 997542668 431493198 751147760 713806303 886576254 677742282 989995530 531559179 734725759 719750271 814250451 214824919 308254022 892335158 918076927 137122546 985107731 503401990 869571068 975375158 991730941 917357975 930679657 407312784 429524166 802250944 824691187 54140473 445607206 607569661 856632461 683228362 804369687 93756292 428853790 120338054 417688544 120439965 566501025 184830971 836272521 772876047 921714963 3546919 652594676 500145577 640187889 854991157 875299829 41370802 308634711 516536926 809168537 793813256 952235805 299876428 965490721 111734949 745020471 576856511 976736309 145366218 738954014 677241969 697969013 542394001 974152566 90567887 574688573 553388644 788457295 481703805 862855268 117264213 282653331 601567991 814415844 581327756 771269000 821708868 846074763 273533867 554769031 842735304 948222324 203366686 763322607 799736337 893371479 79530939 952474790 72905387 313712586 134244203 611483406 653123226 676480907 361176798 362298578 35468036 487087235 113103158 488168945 619585595 979039109 710777960 768379035 605105386 898043634 692224331 774597586 833176368 884032689 685562848 791289404 106216187 894500249 802155814 984696814 952483948 981535190 17483976 264200925 958372713 987768545 599018311 968917297 743947378 839789579 631863831 964517802 896079039 999545828 63666655 817405774 910632354 966362952 757322381 814321865 908423836 950134404 875878235 951990583 346101823 639631454 146451113 631397682 464188574 555960475 308220906 694137927 443507422 650010178 899760187 969015466 161287452 866669208 610055252 910128146 763004043 960895313 993966287 995348518 982481292 998666496 302666675 834390212 729608880 735289489 983603292 995173853 583535792 623707541 452405166 762085168 816391600 866895699 935283616 941846638 296134780 367662339 875240789 960440504 470000596 778005236 919560906 930528239 999458696 999473019 222272936 437638423 616817726 835026757 291452545 790664946 979444729 988072124 360054319 940942690 833787669 958150651 943501483 997104958 125908750 970033613 4357128 513874164 70600804 142533594 118696361 969109025 104876822 796352925 69292970 310942777 524284784 956658451 483016480 804068848 918889512 986063261 757556201 943898289 645721002 952296007 422053149 657331209 79790796 539617987 61571731 590058181 311321277 711992752 351355836 676038552 684953863 804094622 26808717 48179673 972440745 977624108 455555665 740383037 547695672 790763272 214710020 762815461 356015214 531218292 490233792 592398334 420451336 500655484 401704949 841959850 553430412 901110798 728976461 868273284 909945836 967503838 950353708 997364923 431188112 909136504 467761945 569442642 100691154 138518882 618456709 697149720 169225956 402222644 951890282 964799412 799604630 939413741 855227504 887613591 698453030 887415065 580234497 735387188 489159927 734119599 285067813 375903479 656940163 812011627 554930967 686769719 830803288 854773454 566148470 985871707 453370299 477751649 138862818 561882238 525924321 749691170 85893766 450928263 336588596 803900363 842681933 852634846 81321553 716220158 772592510 925098774 561266791 917977369 325349432 918373873 630891122 936720241 315072941 829707521 557383577 589180138 105996851 724298551 488852423 980964260 511888712 515443743 810408240 882718252 531457567 737876176 554542679 908102666 610529816 967503700 631979641 929105587 422259177 503909969 208816574 800019213 552863869 793894522 738671548 937129932 632023126 812092830 49302725 689560618 149587673 170900868 547315848 591138359 255852022 464715360 703483378 952330089 212360976 941067551 203181965 682561163 796130521 932799299 513033081 517904218 937315803 941409267 397410689 398750619 590404119 703063790 972477262 987339358 340708207 576180207 100648124 425129730 270292808 943249883 629978143 900397550 556310777 839156182 831046159 859268717 65387132 539628102 735168213 938840193 641210030 988225911 676514413 897971876 192338333 975979031 434848726 705270147 271016043 676430922 726030743 794205218 991683934 995438305 551224658 733563785 877109668 939688235 911276705 972473774 649819031 775375959 181465381 400018473 516222462 759261737 828121015 929301517 781305308 934747754 588818889 786485746 462126870 549139939 787342454 873136163 860766212 936373182 614057481 998267461 52540062 577108224 189047188 329879159 507830193 790240987 952122554 958826189 491454834 648596735 674518706 842720571 396161194 612895109 657853506 788583578 236928556 632374602 376422959 562092434 342664890 868891361 659997220 909596074 563411952 651103598 856629445 980815220 622078080 953253585 211420265 446857410 199954046 663835719 918737266 994039004 658802273 859842466 254447853 985542666 279564004 545581278 25463230 483146684 865484409 873851146 89610082 697432842 461235556 741748008 419252700 593620383 311693459 845612559 410818760 701660965 367966036 544995651 126435542 316257843 377455675 496284496 5817172 720792809 999238291 999987903 207578066 716746640 751200045 982848739 420100158 420610245 331789792 978672400 762226186 995180199 660907990 831420019 216587776 474215718 172506968 895886636 63912308 649286474 952471047 982996102 917273596 938959738 674359687 690632230 502319471 878159018 443748878 772025929 116413875 676334726 572062669 899606984 204313631 698998055 174844103 609249627 998147213 998768370 984509709 988152780 524213211 623693011 966362400 988093661 990747888 997038746 122935462 753145596 273771314 987293636 288656180 755581619 884495642 958812900 170849441 308905495 375399244 963507858 972871617 986765067 907274163 930612961 392026821 672313087 825638590 990968162 155845419 575621681 238443063 310366728 430811546 833837984 217953795 962644246 324558607 630208728 219092389 702023030 7204995 614675712 163151435 767728746 705823576 994557121 241043495 272831097 398270087 478879811 229214956 634463578 545097748 759331451 167509806 925603150 900425234 941156515 83129386 893792431 839753455 930953845 676274636 796252700 653233357 954078503 849619268 962699859 725157335 876306854 153987485 938462225 123685571 834257205 805014017 917277612 611282756 618022819 37260306 871717786 71543557 135112669 182665922 190272030 386111124 447433514 26919811 977209531 714138743 908622990 141598121 861920875 279177249 929014086 257528013 506664660 289017368 865590546 417658606 571443078 856841805 860167112 380385989 935648955 731871870 959154930 366311075 777160898 830053129 960034624 316107792 791502271 169665809 354217707 604740846 608186205 588240435 934834790 98301887 868489195 932417348 987510284 829896020 925412347 735052296 939302901 545898852 629064143 881466220 926148318 609608941 871318265 64496649 830830495 426665711 929816058 390979145 831957366 146934391 329315498 384887699 693469694 625387427 765604324 416600331 515715967 355298879 771520078 560186040 663667729 377360986 556011913 401511610 960871119 653476441 919710163 902228363 942995476 537651274 633119010 2070352 356369670 40800173 613780152 213500494 893843195 956393274 987491236 362001879 381381321 64884553 258643133 903985335 907357542 692693602 753992434 966471770 995593759 318316144 862323311 371989188 824377243 695747791 943378214 163718395 893827230 845316763 862910231 554216429 967357995 13127386 418829751 675649031 772615557 28974183 185786967 16429689 597891542 644921907 825098088 198621588 606609843 587164991 744259795 390091608 912149394 334616874 622161759 690933243 840855989 234522789 299118249 508061560 964927959 273074870 943984644 648509885 814498736 49688814 244839434 294001729 623876686 8432756 151270339 299720963 451206833 895136129 941161571 452895574 610866005 355935818 904968451 25041897 479804272 374616000 964731757 837572407 952355453 361373479 364606312 754175753 907584665 104421752 157425568 682841589 779753142 723252335 838919472 557867473 832801415 623303484 638056743 693136105 931760631 345712258 497167985 709722127 987959228 976866376 986605081 546111920 939570285 385840419 847878639 268226745 727489420 737129833 917189812 214329178 742493515 52086435 671165856 926357883 947858020 222141879 734222163 595037957 602879796 846184480 998364763 100797033 807836781 671495953 777278842 259291725 377785960 886533892 929967056 371957334 484350828 621546357 919218608 223715455 325413241 754243473 909018147 792508251 805666829 403162917 855370936 315703671 428782408 644518799 946725673 294224759 937228480 972970941 995416072 349157287 369576165 63579185 311097161 286856434 601395979 709107116 857432019 641648195 719523092 871160751 878835035 166139375 627555631 157700771 760193076 354652592 773338003 613729233 962566636 832981932 930302637 463176057 886977195 337185289 860267015 885733602 908036517 248308859 922194689 379389661 618737795 377243304 483977528 237546303 833324247 599633352 621049432 391002174 605395697 400949981 987632218 555552530 877534815 229720595 440465437 399490176 972882238 101303379 726361169 482461548 527034179 915475613 969463897 586404709 719404853 966816028 975013373 190667836 498452067 378773383 489068380 152146437 281051787 676320210 817784426 110198433 335079676 57932108 572235514 528753457 593059543 768736158 920609699 816917284 898439412 307510469 878953690 697318818 715459656 998211416 999118501 441604149 827966200 261899902 909639398 1542636 450532734 493847598 537872671 233193057 836810956 110979670 225068300 34979783 178293594 85368495 771819106 719883903 840411992 139387540 449333739 743159479 807032487 124698260 726016067 397972846 511407154 987362317 996456435 289817290 763813653 533164815 928623855 502009606 736061501 740506072 978467127 929579197 943966671 794225901 975723877 835113746 983795850 654714862 794904334 5943929 854685872 595053202 883909302 277891098 824495289 118919673 780784810 117109599 370858357 232205550 960921018 743849171 967390213 852487525 868361362 898899909 918232457 32607600 638756912 989486313 990779893 402838613 719902724 631076737 964934781 227482995 847696726 139399373 658451563 483044817 578905686 861145483 955824264 196732747 856776206 176948230 722830969 275741256 614769159 231632898 897953991 112229358 437922744 537212830 676683115 674245086 903598602 983225387 994883447 827264952 857306822 47273831 555624782 932274974 941582634 775106040 930317572 72874172 129517552 560173732 691151491 216065797 664203221 757379429 902204020 443992483 500774745 360729817 577472845 881118181 921747053 957348211 997415946 17629059 912878310 867870529 883568904 328959585 363484658 550812670 929371269 468350792 674334602 98141366 141580925 234661027 974236826 849299619 862124568 83917076 351688442 559160479 754179076 812093414 838606748 517821307 763720706 365272980 728513250 447877449 838877178 705123506 951530402 40603306 167981023 132666657 611464041 785662793 838177221 642223511 687107954 875929010 910607165 517818344 693486350 344146784 714496918 125505815 512585180 235982403 885503403 627167457 733669211 466112015 513470327 734049888 777744720 196164315 832494742 508313426 589398998 87691288 348925734 626598586 839831375 100065822 393756541 41198238 844145607 963577011 970728060 191641778 891820690 810204717 928074770 228759567 642143538 926854744 933177301 74815058 196044073 239328112 284053236 345944424 622925365 558299977 903191309 790849940 843723245 929645762 976133817 644642432 648811612 226133952 437137979 852036644 891255671 777953662 883179723 624693179 728008522 795996999 908254909 802578651 815363825 853360197 940473098 520547051 862560404 346122706 986181608 312383088 619708166 953929104 990860358 516553976 994490576 801744117 897782189 556380344 853231062 46135956 213392144 133153950 493533291 239217038 903309901 766269275 883131911 712473227 871207041 150752489 182383228 960402858 995264006 626752221 803488033 65222312 875897721 699230982 706044329 998745728 998824236 225640584 724858559 699312709 930120764 232403452 986701098 578877362 733898777 527571120 743616092 762053630 880873963 618261871 796848148 79684598 131165014 196084696 681006508 416992296 708257035 38629487 758463840 964874241 978182251 567209476 888213383 731695955 888222773 288669800 475315226 714925084 780621306 458262863 749432899 266625193 984961773 738498679 750841245 541800152 851640422 383081418 964176718 532692230 800100122 979808320 981135379 61987843 229260217 338896224 859471286 22688446 554095108 286033149 425062850 59720711 769918708 371319093 488118543 444115597 831711209 371425325 884754361 649583961 802060198 3715346 285295408 703632357 872586331 137530866 937283625 311117943 771988642 786975247 840291533 438555658 641940508 217135639 368415022 815669471 982809811 680300411 861866454 234713847 366811991 838203658 962716964 662904922 902257165 177024204 241096243 711548045 983440948 378246657 928080596 347594572 369357123 421535727 567217258 565884036 650098558 3326725 775959319 662242103 911466513 429187246 682784389 239908452 642321273 109033370 627797852 237200145 543126205 478952723 565855514 470277651 981258591 524566043 749463883 647435412 997675886 313522416 546752273 131069560 315569834 371215402 699078198 691601242 847960120 528194933 900715346 750485787 963639102 285130612 495032957 592116457 709324252 488205576 838405957 986955008 996077998 637619261 969982192 620900812 733708831 887124314 929632386 561063934 881216528 805770580 983460039 905407948 979420200 879220849 893101007 552556157 919975386 78772602 121481400 379123679 495130824 928406921 974478621 712778925 939206256 725646462 854538728 740610844 965441983 175500049 899954547 90592364 510454465 290992816 886521864 242007085 616006674 248051945 329155930 24061182 821185166 653825411 862205003 527884978 649694298 515841535 629453722 774482111 999319580 855624077 995235967 416268147 533383123 715220791 717911160 974473953 991841307 503300308 803387206 681998501 799986451 555356873 752882089 41189825 237297351 526276540 954929084 644579794 807314707 887405481 944581367 748334566 972508923 664344182 859269801 607881904 745285967 970357607 983813048 151866825 238113608 837393307 969455349 378235422 892024868 516155247 645178028 656862172 894033632 725182185 811682452 900479686 930705588 662711542 958706249 943280952 972514439 540976040 789415374 379118534 702801027 998865836 999855584 56842235 531556414 12716130 886461285 420503318 920299147 530615090 837961104 156446062 609848370 142687928 598646226 410685750 472031728 482986834 720495927 422795172 885376915 453837943 602430629 86648538 747687993 16764150 165405274 168573156 527744132 415676919 807582886 2386316 834517949 386956396 740061021 362509325 752086633 48541660 497943941 814747341 992657579 971912489 986926716 590299715 593691849 312643734 328273669 372343186 559435430 525698019 793986553 381781078 782720144 654994723 983648512 901331661 978440011 915936086 944628618 807873221 920216338 690547927 790110058 746094100 947955711 812011331 956319327 63415489 883662052 43883552 140402732 56578499 991130852 324169553 533410167 20892494 806233782 878000527 964803333 542773678 663153020 863394387 952840209 327087810 575769544 335773187 680441019 458964890 704118102 534455425 863242773 243596573 681102713 210746133 803768915 210323577 435066385 209244755 461467914 309003019 509400274 411124907 599735419 180052613 428331605 366988976 769134739 851776744 973756859 595022329 775898999 295850906 554009745 129399100 410674993 27977531 890326912 121851971 960833816 628471638 792119118 60799147 536224712 5742916 528696445 651722812 903334406 196170692 800268035 342071095 881870420 485624822 764046293 296454368 732355575 819521299 906145268 370588142 637963279 345401064 861301791 419992633 560048387 340416700 566339251 734078298 750644875 625052745 725516848 370042195 838285256 676535212 826609437 758227930 881718543 960856935 993681738 500479101 598316519 614056469 767112978 816200199 835335236 235517330 994102420 262247851 468649949 995887395 996865657 840662708 938982248 330799494 544889380 390895223 986939261 766009647 966350744 357294334 604710902 732240580 817307947 60590727 939808322 952467114 994077442 658625648 701364142 136621273 409615277 958505603 980115254 324859077 945606486 357764494 573071804 695184653 833245642 702948088 860359450 709215848 812131090 275941538 814963012 586882757 777173858 872486650 927868084 802373302 817972250 336277944 523145169 307043160 901134826 768283731 955824327 707521752 876122669 725271168 897987344 770799513 813839690 422144101 937301081 288411651 614624915 923229837 977429090 214905842 315974573 317972849 615521659 826365463 849418647 443450777 643442502 614657872 695151136 666602163 684382907 59808405 889179160 197828630 632009378 61698741 831767831 729291020 736107244 132012300 614377147 451226662 923309840 884078767 983341564 60015085 207565703 576629614 741275563 974669835 992246121 550613133 953698376 511474376 729598704 47445847 671652720 280669583 412298718 422112807 837410334 622500205 786113987 798722461 813935695 138264488 917448627 372820066 931021963 527196069 546247542 715116276 735085937 911029832 914424917 152604805 861539536 617045100 788463432 534763955 541014705 301767877 837552598 570397164 840769062 742952835 896699338 907332422 927991727 826781308 869411296 417586268 902785065 39492238 874956952 960703496 986970389 613955793 684076678 799471864 902772912 559586352 949535104 653174396 833632027 351961047 557533522 970614425 989814958 735556504 750511823 94805249 890930398 782506085 926206571 471296371 523475881 471267483 600523765 40922894 585334923 306697128 545325714 419495619 671662219 969207977 977909222 577460048 874260508 613586328 913249514 689528935 868566704 408291819 811215435 316479239 719608637 579909066 729009733 110404106 336207302 829526393 883925034 37981404 718527631 756904828 939728063 612650921 988499543 394919843 747246603 273947404 680625015 765469112 913537330 4556422 138581515 65738435 714185800 57833453 413035248 295738566 364163651 996036649 996703057 817819781 892566296 154974926 710295629 899583843 973182787 322496160 392732455 102589873 103357305 280805837 529489155 392906095 811020958 842130070 969346762 988824870 989997852 627045250 863764396 862447691 965114684 620408894 956968858 681713067 923245985 399979206 978078602 461905234 581550341 402586485 691996205 298374944 731559592 36089531 754981674 812198911 932831996 721818397 825705989 83787186 849610697 62519211 109523641 711255339 974287007 510734642 525847233 602063934 882026005 773211953 881543977 414484189 643301513 200162539 522373347 696174782 907810920 519505099 807894630 279331858 829598027 671530765 834859569 917216920 981454647 469543947 708961357 429062952 449460152 983394776 983417238 853972360 890639445 524618400 650850538 716026936 989037106 445854568 528658405 457206195 780054075 282157853 440162661 579816381 752821996 457114896 821054044 964942040 981452871 665445526 919498701 543080021 842956042 556465200 912745839 715224447 779866356 732343308 831877678 462993262 485362840 285986990 732625819 214882680 374282088 797411038 920484418 130132207 388776425 526015141 869899053 514519436 848968945 987426155 998700435 919143783 993802228 613291227 723812313 640821718 789284200 247008268 436964127 622329215 860270104 980556071 988340709 412325732 870003818 293362950 904150113 655100041 773705382 989090097 992898201 373388538 800975245 577405117 876121334 665115945 839891687 89776034 804370737 623662568 868637950 885988432 957362074 353618130 506833969 988820173 999113817 235992147 251137195 6593115 52744591 11160150 475271169 17836557 581357116 887020893 896651614 150882013 359474706 622079381 999041464 457906408 517409838 145049350 321430995 274820538 600332136 300680051 647347956 935298778 975450436 134190271 394309891 956231944 991150816 739146682 783007944 136867200 555971781 627367502 791809974 644989568 742073024 118715762 566507299 909899543 925566711 11752818 262097683 876901427 936330153 555271096 725002945 50203930 888426386 922187985 936878467 668484575 770131135 718240396 766172082 851118465 905883243 312770268 946718696 643904059 791871461 533732126 933159870 357749784 740891939 42274046 952816764 446878191 565368705 576573886 647270409 351286059 672158733 662563803 997840929 950528326 998243497 511718628 838933879 578968318 671784650 777810397 997103921 702599156 753823400 731100299 863826808 947008751 963174549 88993167 446559568 336593160 964197227 735220154 784830732 427042222 965821252 737812325 754824086 351301988 608089335 467172358 696474958 776553702 919719793 821187768 980815383 316242402 511496164 182683603 595375072 547860246 631480887 300807406 944534115 590966386 648924355 677663105 788400564 811443511 944238378 511148608 934307609 551560917 838725082 287809751 906598137 775510394 963822522 392612413 643045684 655776507 693732936 947964168 962069529 302674906 896674027 266747088 274470976 516009481 577143823 978227062 983616680 862738787 958989671 632041247 904267062 751830090 866980226 407650151 734236373 636210847 912638655 849398588 947099943 812892284 849678669 732130296 859465094 505377664 794773995 661597417 891081022 988759610 995661915 453481026 487391889 812133281 877544871 883003780 991769443 707317357 735137245 436519182 864726524 124587663 521758330 697510496 920437516 523079112 825392249 663550045 875997174 462879978 634465422 585299485 834789108 38517212 384426572 517383173 978095407 307731001 496931676 960966639 967784633 371026330 615162326 553455413 869542215 250439299 818087576 155756495 482802734 111367187 556185088 810111370 906857796 453172608 476697657 394388653 769644884 832174159 947620640 12482844 412529523 265174494 675992055 265960897 359684013 501278870 544276344 859437072 984871800 535331142 545793397 210066225 674281859 602932413 728046643 674926760 876867771 10987622 250535955 510860908 675976289 356191303 976586722 934607302 983890553 17917725 639090645 833109678 917878923 416652734 704098961 921582787 973095481 9197327 517958084 129552517 790286324 757774908 868961960 299026062 764031493 670601043 991253126 29317016 817005785 466346824 698864279 709163933 776797451 912033693 924618373 141862619 752913089 718097766 994234580 637831320 755627163 666537499 763147453 75888379 409350564 875476363 891914861 207961924 795962087 378934874 966996337 9731944 278941619 385006592 922160699 783883638 818052415 32447813 878864424 487810938 710723456 229369070 630696114 94285454 946084284 782473931 791151656 928537012 928825820 362441437 540712064 833625110 970060105 431544874 870274218 446047243 584091339 693595511 757669408 323198235 559613795 502383347 547576393 241177002 838920288 458678937 650646608 917472848 954806808 533299204 743311715 331065417 828912219 98982474 591465891 632821860 835386427 696580787 828823892 145128824 926057800 751130174 918870384 19664988 845228555 66049679 866918540 140260502 710442125 244566636 276305780 175284037 857716774 653803719 759590151 232794535 547438901 855683100 917810465 729134482 746081525 970187157 993535072 385219827 442207370 284420097 397711307 331496470 384716952 844937912 891304199 676403232 986617174 77293598 999031903 527600357 954925045 658320628 870956529 75474406 502351632 729505416 955833017 277481838 294490014 811754483 983167916 902857704 952384078 925325179 991368886 366701966 947634059 640189253 992489338 550695398 873752551 295590198 318577961 654549865 761605903 966251086 995170562 160289624 589759471 328258410 829983497 703939365 706069551 911275108 988623004 553623894 845281931 77579048 554488027 817476064 840837672 294355419 552781087 770224632 840532437 100361927 985908433 484713405 732022782 18241491 20128183 39404030 894048646 492757792 908683598 884799486 885799121 628952720 688992173 683408031 767590055 886235115 995839029 763675087 962649523 857791529 887823617 535202607 911742334 156392857 984482938 629070831 843795409 294705282 594160896 107052140 769827202 73524472 420258783 715213835 975649797 564309277 802368786 46515363 119947144 817642931 907543041 115007876 212209444 568647399 907319732 582331410 668435651 399777751 955644204 106160112 701687124 296660638 749047900 767528451 885691197 414673982 547365626 25994600 405107858 807293955 821004363 173769248 252205111 318664253 874711489 387067489 678499625 587033352 939179855 275725537 334551135 46536733 162261212 797405791 801849325 74312167 310363264 778682394 959064109 324680694 638323392 87323355 477635749 958507532 994707898 965631482 994673583 332539681 628079883 878811370 912970378 518077054 881508144 369074235 391598640 353174825 923725109 719679593 851957696 422571781 512933806 590833199 886633776 883315304 890293891 537029137 898454532 576591991 604300879 687297350 927499468 220092398 386825436 999624954 999643838 198043717 899257463 120208798 872447485 679492040 834763539 219834821 530117172 280242634 579857256 441391044 913227021 8762175 302725211 562213812 706462036 93303098 623660923 581401222 687276124 784535957 800755736 750338743 904825776 594006481 733920729 955932296 984235116 828898840 853618883 24412463 201958150 177007220 650210327 965621531 989718441 978421094 994242118 244067238 277013650 554365710 763089495 268977779 417324351 81795798 731797313 107649409 817649098 220106792 242874757 712916555 929386877 58052775 376603041 13704547 517605555 206731471 486540649 634615626 864354349 592712303 885522076 429782324 514464039 139681877 206724648 342895916 421089608 708702829 889108342 930686000 957519673 278996657 982964460 842007946 957758469 2938622 331015487 653871363 688417584 521587034 667899049 428040397 503650636 564426198 753694538 473558918 907830847 167432229 469714769 805000388 860369852 189190909 534705846 699341065 976796320 219938502 453214737 388457796 911859469 501323604 814883981 669584766 977942391 807786002 987752275 530031865 881314673 279588905 936681553 189381637 770083019 4205257 993411187 276287709 904956244 824752907 922337189 683541975 811156100 161857780 736914442 607060234 960433252 183839518 921114450 194581421 397238182 944627591 951492759 994886268 999899316 569935974 968626999 139759332 179807053 524955399 623003258 739716475 859796317 840796236 937576941 923826487 958038099 513970797 845070600 810324613 916794803 412463348 442058878 94625694 581126011 20079955 243107703 225242652 565727873 190217283 756218274 172872230 303258199 129427650 955353490 774043331 775416570 986258240 991840706 403422655 651125535 2738526 706031393 639978057 739392361 38492110 921590918 958527171 980886630 618140209 643624642 135001007 626657571 555270203 861306705 928172441 948657746 181226603 233797709 246691740 735428233 837353762 869525287 548085579 830351468 490430229 835751832 325234379 747207946 258677002 259121713 530252643 870279969 710148880 916139264 194453834 759685688 557852847 691419925 357507158 921610450 972108572 973770273 777270705 989474698 256386425 467726076 735326312 903203029 13718825 719153032 145040303 265040302 441839274 529966622 420578662 846469324 786373955 930777375 411622918 441912830 664186455 735382161 406600852 425462536 745194377 904484828 473947058 789133168 787583140 857987775 484957754 761089842 850457888 855369892 659011867 999399711 424135709 623475077 459097863 900776305 228115759 538346519 172524583 481817094 775379351 881533225 523430378 910914363 713834440 995656470 42142852 441226819 243104484 850801048 147630599 282695140 467890627 942490307 297120626 454492553 535074067 551207728 387993441 767195425 528684296 752710214 494726564 914502599 345271023 675372607 751484763 996571092 640920704 680269034 524903243 862713269 413817472 814813652 947462483 956313087 141822498 453377976 513619628 834403510 210998143 562571877 193216771 914639472 426253794 682759543 946942021 972651139 892580088 958728916 59158603 330614642 605303202 816539050 563911536 977908881 228891754 821628321 338401099 536343890 684485734 931483814 166454106 995186824 970290161 982483839 524795942 851985532 639665204 905417840 319228780 493533040 811073333 927773111 979793888 999693875 834972360 940210334 580349163 696613694 191481159 750053938 970042120 993489839 269979539 700449016 156507793 682784095 42501367 763171193 25316195 806313437 252653120 252861956 516113644 784813276 498472000 645988347 654615163 753296629 488618139 652715764 906507324 944029210 599042528 741918019 447563406 627807162 99636329 955066695 875983359 907114998 307434493 824267159 674600852 940440649 327734280 948636411 47939288 615258240 892977334 949650916 481325105 940210305 399718857 810340653 310872172 856143217 384544306 431353687 444361894 555703524 580612319 996918842 261572436 730613552 621622588 692412950 830975861 920270191 410631128 489967903 209476513 886211247 639681968 914410479 777188081 831658328 348391707 698630977 180683632 857210272 308783091 806555935 243078450 313872310 450117736 822750381 927241058 958096392 450845857 662733515 887439967 978532490 76268310 860294827 261677965 410439786 661438680 759819095 889525648 970926630 316785784 988420848 597938891 732495291 806961604 895740582 823823421 908743994 518402952 721590586 733914708 945833721 799003010 865205971 685176494 753838455 413271275 441273074 461406630 468184731 143475830 475442182 768707451 841127014 61956747 969733965 111097817 559603228 581644536 647785127 240303132 965797604 439846553 856844080 145237898 458563597 439710289 849979258 756888655 776472845 265064749 507250484 420958757 715721403 854419675 899455002 167818832 951292856 906841189 913874189 131143429 525348149 841365941 986152917 862335721 909590967 589141145 744356203 933200637 975596695 362815849 710507701 981697410 985001009 244421209 421665134 505643986 945918880 16607052 862648032 353873714 977333408 983947869 989195098 832169080 925408878 51428978 311350300 515240702 959615798 791455147 886759674 738829074 876549680 706104212 735940975 280167444 586850245 913518963 964730738 375750867 727861155 197650474 827807122 144879117 541004864 967077036 982314223 200368111 234860009 113014843 857333388 99843304 526287446 407387243 838579758 517767147 559731504 207680491 754251163 707328195 941420978 583451100 945868536 40710571 483899449 422802292 787831362 447366070 747335689 261872221 469793658 672617785 914811283 413464716 598011436 2751698 753270360 753086592 946541775 56154949 338747512 442382001 461959238 131603833 448369897 912329197 962241377 460920581 889575078 905143226 936703128 149579768 312076563 950931701 988165706 140933791 787870394 551779533 646985364 473373151 500970064 739429333 760115034 607303821 732720774 24107443 451332689 153666152 724337497 587283911 892649079 635574143 724794471 785131665 961919776 141204651 891348560 167133199 650620874 92812556 774871475 441718808 570598321 430482775 709007910 852437431 907802285 495390954 805487886 211936109 549671575 994838179 996233357 571199906 956689470 982983615 995832136 337526579 820292347 740552922 830426082 369027224 899466477 399619893 848643721 616242902 807696965 687688843 898200017 176078081 545094085 668401482 956043256 177608204 853784439 955854184 960075737 572210773 703096774 483823148 973955081 770881704 832396075 423699767 800584975 917505231 972052859 877816697 903856983 278814562 734890909 54934029 533720819 279266700 979238647 595407915 807173015 749714104 867232367 459720813 743257331 447167311 595563766 543790104 737797252 264462401 561695642 553519714 698187831 953342871 959161437 76131995 529964843 921451723 974107036 129593636 213675886 789264717 959902484 53248838 704890202 251191239 813000471 104149309 195396829 162804831 415701156 150024875 695277037 381118484 963444848 814313058 894976378 568712945 850142078 334405169 936822322 115305336 468269743 811264255 869665143 981662226 986928922 559496579 774263926 949563137 974006467 878001036 922140328 484074186 606730970 332413395 981184700 557376553 980829181 476107082 935821318 580333860 966185366 949658534 996326583 101865609 942160778 254786171 380651703 89354310 955702684 378640068 831934690 64373885 582610244 418211802 779868571 983824186 997530941 209596429 963066904 394665816 912580652 642098974 937236295 599710535 819868051 466286332 847921873 587449831 761222649 662287398 672700422 937473884 937694818 955872903 998200351 76752478 970236625 796896647 883330926 307265492 824432337 164670238 314061495 525725301 723708330 350261432 611395649 256132636 817685877 684672412 874130022 116004093 944058855 465356699 788795408 697069428 952387508 442569756 453001301 357269847 412989544 260007735 541067007 410181625 539098453 175542194 695308860 35523249 256499040 337486185 920175719 220794122 813053469 612886878 635709975 909464876 972295485 823132961 848706963 243839966 980125746 447856164 973558873 478222426 892422050 512760542 535096430 307462084 603631539 529584323 659900135 920179881 963423204 148843446 313479851 890145924 989791077 997348222 998078167 507886616 612833292 307524484 714415085 650173339 971760765 321020225 848592475 944640374 961808413 251985679 441760820 540251597 574924838 721899093 909433133 951468961 968822511 329005371 553331850 740189378 934400677 252413884 325696073 661761839 718728959 24097876 60953553 122674209 288249965 278202208 508521289 996295988 999745879 599577570 683375344 392341540 656269152 186192618 651446748 280972734 748988878 789048119 847593480 827564402 869906015 985005018 998689873 195750727 649391031 549441032 976650542 38271773 379357345 877988310 969732949 511701193 864180136 693335803 772383876 708883081 831953868 584001401 700082838 354294592 719128216 992290642 992443466 800426675 900402723 726646275 790363525 395783594 973130131 119750788 140359551 475847592 487443533 90458938 754982680 403445828 973123829 855958269 905762228 328334655 501192029 833872922 858320879 350600489 751459231 400248732 413107023 253108002 940416919 676099872 828054387 67159299 701108408 838360832 967624510 99765156 827285912 911703891 915169069 36104454 268968547 928275548 992945336 873464171 918863360 259460305 426783595 887337911 939457524 180469309 185188837 546679652 751659683 344122513 892472923 694240781 839399404 120198981 907607024 178293184 196852573 796993352 952249182 702240606 936504806 711504629 897290328 710162674 745467256 26591057 324058822 931880691 999786985 181197113 386375984 505029507 815674509 639583030 994617892 832989489 960826585 435465376 605419790 121672610 271354641 560258864 613612709 435433944 538293075 96030328 320008156 253085429 581794625 348805371 499107083 486376623 971204325 887813540 989442407 646185208 937914588 854942314 977204518 490007470 750319665 952204040 992228341 408826235 549516356 712812632 849760098 61921492 562230563 521191626 996020339 251388662 268970798 92568593 447009550 440186781 930497349 272750117 508426117 203696732 904159736 858902054 978224524 686640978 779129248 173257200 201044289 164542603 639107474 513410741 655010563 92735558 450315942 651704118 992014105 32174018 873354192 610891892 966852658 991630464 991839100 695505562 774459975 985640933 988313357 677979029 766451527 746232229 920939172 496759159 895095643 157791393 393580102 600770099 817349036 416840490 561892363 24340819 910356100 704855216 833531765 289851670 550540409 97367219 774444751 189495271 297647389 85442302 843437313 135041423 422884024 416984858 530130183 881507820 926928530 158332593 969871440 496593363 716784444 680442528 902437281 153021533 734880992 360165881 558639321 825367009 834727645 892401821 971230079 246704069 939331118 769478474 995703497 567204394 793101604 354979092 934072559 378146990 669431708 651847554 711231371 765757597 969228216 718731753 867544324 769043697 804264642 129498998 187047435 519227509 886341308 136781109 576577424 547102452 654784834 378015699 932054798 283782158 531037317 507939057 669931461 940985473 957011184 211696673 457150411 374237945 859527694 430956761 887229068 532701776 801223807 724129842 764023842 718094565 808316082 433679588 985627409 736850404 841777764 833877109 932061576 881118201 896908330 272102587 818220662 781374940 915584340 737540845 782533827 177560268 539947431 321411858 768734941 182256341 661104215 29384651 167866903 300674204 710206021 555600874 601517730 961564847 977897474 983726262 986958415 565182140 689044759 265108630 617710280 569596166 643497274 84577386 748315317 877496231 995976358 290567333 477403293 762058706 950423957 687195965 928725422 975853993 986889392 207533864 244027135 619790437 906464759 61180644 579426882 314529505 587424944 224660678 668005507 259580202 586056512 936443379 944221734 119894287 352886719 442313593 925048658 854969109 869006539 390236510 776116272 494727888 922000945 352968845 488584148 951141855 988547009 679007368 856584039 404869610 559473760 186899524 480807059 291801916 518995914 979018380 982680055 75209524 492337828 389624390 823944495 569732599 919061341 677345496 906397771 609609419 692816290 858509417 870527997 783136273 800004634 271997522 727985861 366991743 821137629 621721535 964634895 598671337 813398511 830284553 868229198 959056871 996215479 60139078 907010232 807565931 983707740 236281078 473857589 23846572 990109728 824368453 932824696 150848719 931279765 197275672 693690527 627764407 741439021 172195928 423543512 935376681 996173049 644047360 699636253 420677737 753552507 500389515 818154017 293861715 350676117 56099468 141975640 561826284 618528120 538583896 924803103 937565184 973550107 447759111 915166766 823309788 859506074 73744973 143573135 927972590 950362408 211679495 345700011 405072617 513986476 212121350 490589841 595949469 883842102 827208107 845415145 644129813 805241054 273637773 928661757 272617491 298957622 627375101 793240423 137142072 518226677 988685996 995213984 377935301 769993724 572773328 609088623 753347669 814327681 608819790 667576389 129048824 439043686 318592464 336301631 153531633 467650410 388942144 657103500 946849694 972380870 490305972 875041472 565618892 726813819 242133543 995431580 198209979 321217713 854763251 868643578 575676830 922292308 26973275 29747535 506244521 696716763 411838968 617221530 740484008 748431737 172237201 757391793 724451790 779822841 361050026 375928468 64601010 133768773 819382058 997327479 950537070 993038189 754237678 939224762 101854715 646829027 946330824 999076480 425758440 988816401 537205842 643430469 208490171 542681100 355318599 571037215 876986010 896204130 766639779 912773441 497691873 693679864 794846498 956152922 787542719 805733273 73633023 833614419 566319678 742405956 479795581 860877380 555799747 699841529 262159601 335771249 388255865 615883251 361501580 464433820 924076527 955003181 353113391 704353927 653679938 716606765 285124357 444547982 85403354 334569829 586728115 794847239 522454595 725664803 903990136 942423702 79811531 643949382 373642931 747686048 287397177 360602611 393148925 509823960 550867247 855106178 677935074 847256430 802157987 932044125 108536058 774523852 856944719 961488148 861247488 887020276 216022846 597609438 339290196 970623363 787589991 977747558 333241545 894327574 865730154 894103742 973751916 996825140 746300237 752443824 30122909 292745041 328139907 966752356 299748115 744971912 956650437 994253057 859547562 984753153 781612232 897632859 322491617 874474484 644597485 666704310 561822233 976292969 671975971 831356696 958262099 959309554 336252449 996591046 733592356 807301321 419995222 783602533 588251650 934980652 414500127 883948182 66864603 208349675 224888607 992996456 711450464 876328728 741500913 892482786 832257678 991662394 362890768 627961629 93034548 970070379 623578162 896089631 876878909 963789079 165211841 952610579 201742492 848851290 423578306 689117629 695865886 994039800 658215947 830050148 801055767 962197942 589958686 829392669 932829631 982057318 807183794 924126428 417325944 513772456 503540850 629256965 908862497 975501554 413688457 616866776 546036142 950737999 586641386 896361250 728681967 929036090 337085433 488645237 858544794 966595025 877453042 947352591 12682944 858084351 343945200 558832027 94449492 747395803 285612176 334464473 406286281 874756641 125912626 266977925 816676316 981813414 9424770 35996710 352900551 975646567 241532236 891724931 759046858 956294321 376887042 625310441 323606165 735039572 315891545 692322323 931722611 984999953 551731844 819395231 697114317 754798829 919157751 992924172 748015081 861266001 685795126 700310656 612683515 770870453 242236418 502375407 302997730 631709948 581285434 847181158 62213735 451225936 239311507 799119780 382927572 831203932 301422061 933389474 928747151 942286580 400213713 658424305 951256209 977495468 17577794 212607884 163619388 998684481 541400240 656875942 17914959 504908411 394766482 983927311 982324626 992927867 284334267 508454319 746112025 864621751 850654641 946666142 983514183 998035805 950559528 986576022 110775427 358740287 698768165 942963745 131758827 407738241 981682121 988976715 412422600 569847081 401640518 652651269 245584359 821771609 329970505 530930137 545340150 737166355 456207374 711221633 507971479 943132531 448967840 677118599 569984665 990208551 391268280 703879242 654007718 694790517 636160554 870090130 57546522 885688650 550458902 883916920 520662081 699446618 13578516 546604693 387500910 829403718 836995295 912214457 869816924 955126275 372016269 944174568 621148469 886474648 944964230 964627286 443265019 448212122 759313940 806550558 608723702 841936739 268519910 371708060 532289535 717047984 137335010 492941169 185134731 849916508 89878928 857447859 635278895 876546296 722760605 734311908 85448122 501563798 942035058 977821840 539725464 574427352 892044062 981511297 842552883 975483393 314295280 902719696 480325737 565959916 691240531 706213515 62080920 658168435 755385766 802521748 823577400 999150055 359713187 968634476 960407620 989053829 908860275 952292455 531351118 772982778 827290683 969322533 202727659 613027566 969552051 981094919 336688327 561861790 936652038 945728847 543164011 721120351 961738441 994283432 365740762 899116993 756925462 927680172 373237707 399487731 58220469 782650460 993650400 996876358 692898702 893559556 47113768 222611822 557859630 978549336 260295087 603757310 751586417 807140864 200417552 371447807 916357215 998698492 995187107 995207536 164893014 858709784 480457278 962349437 863195703 938945455 633502620 846971680 350212590 368796781 447807670 587144822 33383033 906558681 140506664 240178770 554978511 567785329 78518136 250575319 567090013 902644181 444123554 498069319 291272650 806816391 716114966 718600313 212682048 951796204 128664480 559275187 581525955 649144838 750596738 930918234 817227639 944734046 676050960 878286910 499626685 633828511 970393690 990948888 116871199 290635875 135731360 713918682 36232560 880607569 261546855 408042949 802771888 939225076 854468698 964558300 416047413 640527982 384660497 544357411 289350594 388479420 631956260 836224864 898771865 967954076 497622043 895434142 894778836 944551045 417729451 933540755 8868484 574337620 839116978 902468328 417355444 859023005 490851591 498437244 802496080 858879052 63155751 79532281 674328270 924365829 289742550 603043280 834232207 981585149 150876359 863129611 803654695 938162547 800878922 967415170 525363022 548324652 580210518 953142228 99692866 216987630 592382499 785660860 510996371 836336588 650154995 731115255 530165192 873780736 201000487 647458028 715850086 949837695 831783455 908498684 884155135 935828210 362980577 399707068 659692698 709933732 735282838 812239696 171004142 301956667 324477875 580571110 467930880 523540839 228692570 979969945 838572113 959816882 102517632 903712359 449114658 664123715 456291698 867859673 850374657 911360358 969866798 987629901 850923788 954330851 133521283 145151913 323176528 428359557 712038268 780146852 587713800 763172019 524215029 553082094 799925394 865891735 791052984 993303662 949065637 964539405 277681039 748515793 368422815 604077434 576974543 732913535 877656740 996651032 192317086 926772725 982457921 986639443 56555862 482680811 555459660 601842444 654813689 790012026 781318779 954370971 908503571 956146673 722120502 962966790 871706287 952986502 54280918 671326350 960903642 968111423 547742957 548696827 368823034 485610236 991352728 999646199 518423392 927221840 6291693 346761009 73719909 721788952 872923144 906362499 151657565 522241007 339094472 510410808 904708263 931339149 207452507 282178036 784435161 891499647 610426567 848569812 358308868 806359333 662803590 683535697 717566689 777322960 491315644 942180630 968560952 985873114 828646343 889182066 706189455 995407625 213027117 538753217 599157305 865140582 309662984 490723993 957038535 983164702 350634859 679517444 225308816 735734928 697609047 908888127 109121189 938229157 897249078 978920847 643939652 758033367 552874267 639954003 159075529 645910469 235437719 549923764 397972927 736415839 568264217 942007177 615520225 833919543 259927168 457564482 481555911 897358234 13030853 26446614 475577031 905378817 524606301 639203476 119558278 941513685 421176447 742282695 330785331 478007741 753618342 785919765 190733124 473162792 460112992 504989089 504325920 695153284 979649779 994610521 425309301 451920491 928031454 973994670 259046577 444284260 450847088 892999490 13725159 126723630 942538921 993899177 781782797 967689155 788389840 793315648 934514149 975867543 690990234 775927465 667744985 885670371 821457820 984582592 127587604 789813002 972997814 984477751 605514527 905138721 771830644 991405452 417077942 677708799 330784747 593275333 526897137 597898550 15989702 342122357 222442257 347012733 3338704 306180433 226361393 461931325 181699649 616643225 118644101 474046343 149464042 821372695 567160364 580665456 600138578 749674383 342639451 612806806 548092106 932114181 433917167 789420647 593068263 798651242 289993832 641758137 861025545 969434282 57788550 380201002 689162716 873833786 219121467 486326067 14413237 488816465 435682510 824926212 544202518 629880021 469521325 744804385 239051692 855203572 633324836 905501188 53394535 315918851 304269549 777059358 451403041 736258523 638698965 700593682 39031853 980728094 898030857 918177745 529890482 962056379 167623353 864602186 542445705 613092634 508557513 830287812 910470776 938326535 965637884 971772495 973278180 999404763 678229083 769073444 835854579 843861823 956849528 988464944 487402618 965715676 531212127 889236289 954408384 958606426 606619063 680645532 15708161 623534004 604611044 675144605 20812304 537809779 370118034 695749773 69966837 337888949 977042219 986254576 123557242 769074099 57972846 373806307 833080571 926433788 74162740 225196658 320756969 401088827 862268144 936616241 129458878 493799462 497505889 564029057 979530711 985680926 185853317 497336716 116420255 214800454 772430012 919989183 384664112 963773048 340636973 381846545 535027227 863584185 446227185 846274724 542922267 856470325 435582382 445165622 130286650 569502151 172897524 458492951 89284649 652229846 842780936 982671993 29934536 350181940 2244494 181203028 922662962 966659723 280504528 755371037 820819977 894614219 239992804 832954204 722421422 999998440 92475535 723027141 708711390 869855677 974613317 985690604 626493311 820030810 554826018 806050365 16353113 530025322 247156807 780166001 509863962 738729754 245179261 823257208 944477465 972071235 859201616 941482710 363817690 908528045 271963922 577585161 741739268 887534572 538090375 840841873 107272439 266651270 935269360 999936549 213936158 453740539 577338395 845482482 373272961 450514963 503281348 995534913 430923716 453805365 40541568 977911062 436373916 713067966 618906379 711150438 720802692 796766661 45161661 199131925 52601382 276578026 337326638 579449053 329034075 330191976 546942974 930714047 45007967 470566976 677156522 895336011 927265563 942174892 559915380 981108529 849206216 863134805 499769857 880248031 392246761 811745383 322331807 542639820 838841159 900612221 766727885 880938916 415047215 868135953 564590520 819300109 272314369 685694886 249618873 910259711 226394908 381307009 138239035 256037910 487078656 988092001 914868273 949877528 309817071 935890622 190574779 836529309 800385049 908366390 345392918 630806620 510245477 715115264 997966629 998719190 298768360 546029055 674578978 727220881 764255786 963492306 706672232 813931383 721698130 723815900 765550484 983838949 721635787 751042776 412736416 723287073 762399670 959710853 811802900 916685458 704315294 983581107 316682578 810010248 891870789 911928206 599256478 766048050 969334543 982292276 646902940 760345272 731114647 856751429 959819863 972727456 695917082 980859434 353984119 798174392 6394610 380813639 638358350 952712468 427926946 587030147 481251457 807937539 50187144 236049826 512752251 603538561 893916972 986075000 887996921 981881350 594939875 772910832 735833146 964350950 190321584 923998339 386891370 606088929 955644517 960233558 798047503 903869077 916390501 980896295 173411043 535707774 161979672 744141933 928934491 935953585 323607184 644109292 577021413 938668734 536881996 856291987 776719176 971540199 753438165 883592040 229275800 823983649 23902427 639637862 160164507 224577443 654650484 657950879 803701545 866041516 702960217 801813112 344716249 974743378 830780179 834464275 269917851 741502795 789984024 840518860 159793523 782305390 231309651 972549130 739282210 861226025 330952346 920345821 193289840 625629626 371379648 767249311 791192620 852933574 138260810 633027666 715971619 760487386 266025454 891064699 461747333 898050353 310441187 934629173 811752045 813454218 887793670 983583166 537384758 597336370 502426188 545731188 424246891 438897434 85862464 778631389 964808815 964911760 247447762 273745775 211967700 991529519 522078559 540253650 452080522 512168551 147017708 198319420 592681072 954288426 335567562 722802257 918379335 923587026 960910970 966282707 532547901 825680519 355792234 549204678 503276645 875940574 282371676 590290220 637695775 728516013 950923850 952848110 187976094 323445986 708093816 799667178 724488338 927437868 18307638 981946748 358193749 619057534 158573976 243601591 720064760 775605430 608212080 763442778 479499915 592777354 973338748 990451449 811522339 900067526 705880569 997433342 217278328 618916239 965281277 989719786 745789825 918864681 424335277 634119634 880898035 925592914 292268804 744406262 744462350 870635600 372172287 907144886 618073460 970296837 982832559 983918636 751007067 869516171 174446344 332521108 170702400 176221556 224747158 754727129 928203728 985530192 353484547 647057755 642694402 955127652 738346620 822238222 237144247 637814510 528871943 603219057 272930946 550072818 679994943 818827540 800135301 979541934 16643550 954894272 948175451 976909087 573644458 715148585 741142640 871731465 79155421 327414399 97296868 731638474 268458354 895834470 229447045 775158787 30056561 885296715 372314853 634780116 96252239 551051627 824941719 926675342 913291617 978457629 472329506 590172099 943191115 981543871 244616919 362676506 791262553 928335563 710423880 974081047 22449392 925729443 104135431 530881273 981246501 987457276 934509392 965521493 711937874 787319127 238770486 702608577 181169580 693019109 601093845 724249291 742179145 785931228 759313609 777326456 334460594 769859919 3785361 741246937 869103983 990874491 685285115 782604783 981394762 988862470 572072925 749290456 391602160 548508676 788035598 825738967 450144094 897010448 757324390 852578879 263514589 566540429 394225278 474322132 520928038 807838999 247573283 435394445 762219296 792063840 638741462 835437552 14399344 189992882 580990326 667602442 599407931 604920498 718273113 893100899 574387589 778583314 507227309 960508464 256365471 469081971 535111506 582726955 62138813 77366432 553865306 570112079 584906550 831191317 314835811 437686396 545812817 836301820 887881331 902595442 895611386 907279316 100647953 961275449 529457402 712235909 626078456 662905109 461194921 907388866 797774192 888484938 526971442 944907090 288747749 421724876 645389362 836349121 543451956 862569459 84167399 494519878 444277165 997284878 762387254 881947908 649400292 694508734 81756268 559782251 707339162 910019550 445191516 923920294 279473737 472044741 185206334 628866676 941605019 972638269 826385818 928998580 150152239 231088562 247365891 733432350 104605982 978705341 717665180 924704614 604280679 707795415 153896966 305541494 773371636 901174672 237983954 443485490 690138301 928481591 567509206 961586819 145062018 574999913 597121725 622526158 9600624 832356727 322403366 574903732 148335700 543815248 479416433 582211303 5705199 617055891 857419656 869882773 191154302 202983042 750703470 882296195 860843090 958076217 25426866 999605234 170402754 322861989 900728820 953046702 5653880 32422090 393934060 836135174 192467999 861892971 237429041 288083150 360008233 703213029 741857867 847011944 766670847 981925610 39699077 350392859 380662180 533509113 880742744 913398408 45224911 514959486 49125197 793807332 987054343 988089061 92325089 937596629 305413396 986528585 777860566 994650097 735661818 943182598 472464926 581608620 96857858 919993016 243980520 626499137 774138021 826135777 324312860 980251613 56373934 622882444 721710152 960070183 692741591 860203381 178863388 964774727 822327095 995545925 388981211 398681503 559568105 576556525 252801302 792532893 4887263 518450259 869841319 872462492 80253632 498579296 336286460 617353101 542534625 727871954 439519425 632905966 258520107 562155588 826511434 880516195 638990362 989065898 72209440 283770245 722144094 830021949 132602309 403757280 859612603 978399575 712940185 808553533 87799151 140838341 811339359 814335907 649408423 778982883 445751581 666659305 547390450 593467541 264625706 457294666 573235641 774272538 191947910 815571565 648593303 775206829 658737747 768941256 140614029 386332095 248875090 307126924 85101469 727271863 672467863 785733324 84838655 352987817 503731040 891510899 405075946 828935688 763383325 923848237 726381469 991615063 261194934 734738598 371870391 385826454 648911376 808349325 114476997 336951367 36258040 683528746 353545036 970497731 408969991 423832018 463851654 929469438 961806148 995117393 55611804 797947446 622309144 908250195 530474730 568522968 743582648 754019131 36991696 346808776 235607203 845541482 429228307 633668491 499143585 864660137 160004876 532832454 301371769 522725655 225379727 607191136 676681649 749541985 409720779 675718938 877260552 993485940 704670771 739221482 225054000 540474670 811861125 839431869 282848071 284301712 513778368 983483758 650235775 662676667 457372924 560268532 692024204 871613430 239718317 316722292 761360146 906094204 497529549 759067202 365679460 446871421 393586841 859142571 388948417 801032026 10334340 916520873 619024872 769969442 987912096 988117483 119564903 814867369 701656422 938100883 915689470 944685611 873368694 893181955 319687128 666802132 557796714 899751808 48104110 768316519 439104523 937427915 858944048 981447133 283305160 691905496 864460003 872349196 811842616 848432250 267389372 796437980 207173412 215787300 466381906 888012216 723658176 759173593 950442369 962205651 907466434 944869708 295325307 338878983 274609188 673501456 552759490 893821390 493898179 718522342 837687604 899425953 203603577 470371320 985689298 996534331 865873642 903438118 87424722 661083835 746267967 873105842 396388568 753985209 944087396 999771638 799046763 856253093 87478293 161589603 301758600 401159730 881184341 940582171 935300621 954409440 338394161 427933836 478072358 890761464 60354046 168548327 177339674 224539126 851477162 927745903 884214509 967775769 735717279 789369838 637128316 675148428 574852240 975117967 596224710 660889434 294627313 498742870 918959264 989496918 758372563 950098244 453179806 900372756 539663883 566102257 473887231 991484716 779499110 962140470 708710109 897303789 417692967 612872012 606598304 766777401 228584714 853210796 576839284 849556089 374295004 992466701 506723452 536634100 644090577 923742354 189052243 514286971 476457474 729790149 318851367 517955604 767610503 856480422 379611624 919673785 808684416 852142193 865536920 908242410 210940335 716760525 76441570 587196580 402566893 926636396 151524837 639340958 621920089 855902312 777961 832083058 366337761 996359985 651706801 996388849 152743946 987395283 369356963 694857123 674939975 974494967 444033937 753119222 466434640 624968486 648911710 884534224 649241773 663940381 72675818 988844782 28861508 838903235 936869328 943649586 486581947 592918548 960123462 975772818 593804712 646178498 360914400 566436899 483949240 841437063 211774999 967200628 810862983 865330543 96644327 718375448 794271385 947011295 628851886 838081910 802174839 862041378 282597506 641660241 92149988 604411564 974106324 991335646 652369458 936766583 245589214 314121612 81749028 904335707 233726013 864410044 326182886 655093693 42937052 867161238 63490626 524509951 680901994 892771281 900600776 981252041 690796194 797137254 832895004 955675253 309596135 975921823 366041822 979366129 201805924 854899593 997570465 999284321 847383324 851235028 683027554 695833391 267772456 880062746 619584819 818966527 299966899 490489854 458438051 978498040 674449271 918366042 723232575 864393235 368676077 535063277 703458522 830215718 342339619 970198167 3072442 267482723 271848730 574577474 655046990 969968733 986015026 989239579 687770634 955056091 516387868 921111671 102216051 489424356 278550559 530556484 336397990 486595433 531637663 570459992 356974080 480829656 650748032 996173351 234668818 816962932 677157708 776157923 117754082 781169716 539326799 900386871 447721660 765199271 211126513 915702225 888018844 934012517 306558558 852033064 945172517 987675832 91584836 165754635 20717368 75515586 15073204 723697278 242746114 976075356 594243205 757415420 659988223 903011100 320767695 485375931 237023567 878327574 23821058 584175692 828841160 990599791 190121260 946580090 321148526 348319657 688128130 751852681 306910200 527736910 521227833 919533337 848859342 895697891 766281800 945200458 774863369 970625368 513489357 571447631 170301186 461987999 183114144 756490570 267508595 725464009 807153570 808523284 432017714 780351742 344861310 630887525 127227353 832387396 577362605 741660704 556357648 634558747 737376664 932215203 614035723 789067700 643055 517622503 145549603 787792855 56550343 661925339 328806478 689885032 559626327 737388743 784893480 816344581 461628080 658893378 429154273 878579671 367158494 769365222 710963289 819945780 207533682 859976629 416472403 445096490 382282810 651563198 151319197 174848440 968480375 971753631 851163760 881981816 749840785 938298647 245489347 584999853 881182881 973881643 383317899 764855166 988774253 993776782 441603368 466757603 422890544 509908430 938594293 961268331 951131942 953637268 431716931 724007602 495147273 549525983 447011643 953531329 436810463 867730945 750266622 996134645 704158558 747649166 414544353 885525768 44084848 157157804 969340175 971411414 439362768 470303150 128092723 812813626 958735154 988766960 682254940 713842882 804619560 926554888 666030026 683603244 862851195 977104333 506714547 872149814 198005880 399754832 735361935 745603490 51764368 519276535 766706494 892884264 366598495 383881282 862247713 876434611 422828210 699978290 722573296 765649753 7479221 947366982 131937251 714578898 280458962 615941028 328258323 562532794 946642427 991419261 916711390 918412549 875856250 968510117 222433808 900574981 221453354 904678364 568373003 770836620 903721625 955459435 333315146 930807014 650351008 712631625 12264256 796003012 230808378 590844071 281788277 379516374 467002781 646731030 87468075 629087657 717651075 923388296 583665359 652714266 67179733 843468667 748204398 813543779 924450596 989639612 796847775 817869390 206006323 442476071 842443057 912605768 775701336 851324239 778317574 795118580 103055483 747870629 91241963 376102238 882203227 929282138 647038256 910054140 255583422 258000435 513542107 939878963 834846079 875651213 889207400 989708676 69487476 201579217 87558041 833961753 375491136 981108860 992991124 995390700 421214163 839642432 866800904 953376768 766750291 849709735 326967557 347135204 87122623 212002782 639111637 988347555 133944698 458433040 810792483 927574162 256973821 573261365 971969305 990029436 889293832 959754447 729031531 983321964 436872926 925426513 240172897 721536075 977111390 994113690 312004814 559513770 946534677 954617273 627609859 709826100 78378188 631778364 813641911 904726602 955337701 993082100 15952753 668675420 377438774 871857970 75726093 626081394 866904935 884585042 469987020 512988745 597693522 746528974 138866884 811159745 806878943 882081278 74660609 175385062 966206176 998404191 987161318 999481633 674385832 712090892 770098795 867784952 996628669 999254064 551243232 635666432 68995458 982188882 536234287 739027793 105515432 552058765 700500819 913673502 363647808 617991467 872407855 922895731 277314777 394966367 772521308 809356846 324553120 799151008 80334309 482924173 630846005 944948128 757183056 915161576 197714403 942527261 680671271 829809325 454717232 871307382 415020061 494869146 699661563 869909313 352796763 864997908 215834600 714190040 664864641 997877479 78611325 636366923 749270294 958329849 599478878 843822970 680803849 951860923 14129723 719993666 362891658 652325758 814101776 962058443 578954514 897536152 822245378 919888769 76989290 928540722 806821132 978862021 356585039 803222683 792467506 902217437 531844938 765149094 495152072 961179092 82820434 555571787 773260792 859524987 398074689 862450613 332622828 816485281 410942184 670817624 458691781 813523100 7161867 62556974 244060536 641154877 995258013 999149834 474353104 545743345 3391013 137920778 233644647 305156045 733271509 823805535 24084304 805351477 209038167 777691177 710237186 982463789 342140006 670625030 634034211 980383933 328627764 980751377 520593673 645934182 586762405 905769307 798651314 958813454 704271929 865373647 396768645 679075462 75106959 414335120 682694555 802090122 286659570 884077683 633237887 867671392 314089329 693260528 573961114 615138852 448639590 953233305 476495115 817890332 275967712 755203712 637358609 976882087 855527391 856536239 890976526 941621860 99622961 204139275 209439587 454091752 235721447 361336303 531207678 757903525 775261299 935660191 599946945 721137456 391867337 827314014 700720331 992668706 56459091 129119862 290562784 474960522 43196260 797118775 477943838 849765612 773525734 955240381 618936267 828377881 819662802 836872959 781526746 949524958 393570707 951128205 564592283 927274765 159061621 802438659 818991996 984751580 162104333 310207146 864687654 938206319 13853656 646236650 964626517 969053224 847567309 941210294 939095777 952660831 217943855 812843007 631892217 732373336 676442616 767654209 454769182 782740984 190223594 236824033 999755917 999983505 125487955 144542275 977705854 983686067 699907259 702258114 777395970 868553705 273500412 506692165 904135704 952338686 156138903 947990479 984572469 997196851 159018078 623475528 467506671 908767728 387723084 953086175 663707521 889779031 216932299 309097955 787503099 866240201 307864600 568378680 267457151 460832901 486820135 797906372 95611327 390607116 201150703 614136228 947064130 991213528 834796225 917839202 301049872 447529593 62758288 488903789 618170822 935525485 44836449 562412786 781946529 791686311 805238138 934593158 811867636 815935916 407649347 471037627 302483797 772976520 254813550 620489581 356103801 753339202 217323977 250707794 44448621 186405216 540225602 619381615 559421705 879225883 481944472 969418291 433293685 892799705 55953047 184814802 97709346 326606508 222271446 534404306 755251430 886569509 586844448 712217326 124147985 891526425 633143351 900903173 722046220 892662548 973742274 998494107 783595033 833254572 463748652 463779663 621414282 800919611 273082785 919536696 839653332 949705225 247702423 373737452 543361134 863641367 810283841 916176964 326992715 372638299 631419031 854083991 794848951 964630260 680673339 982592030 924257953 959108984 518353872 589337693 814468704 841862370 989125858 991455524 891038465 971022460 852414960 885443022 526040555 763884837 335882120 981577102 324409684 411059738 68246812 549836205 553609664 959092348 904962247 927070752 808907054 895554220 471350749 898892274 447123932 544469748 253127242 355264543 980151293 986913625 248602816 585097609 561596074 741178240 72393291 599146875 543290670 887006204 852912262 958073015 412084582 838897418 376308362 489412757 351620291 743311729 407078205 600933267 524857648 555628400 973297874 981448565 465922602 975534458 479717176 611687575 641603623 995386853 729435029 913131425 155275315 917261160 908324640 930853986 483668 386261691 875402067 885763334 997827008 997996492 944141312 986105542 761887664 933502981 346908531 693269268 343433614 514588744 801224197 809002132 451450843 895775307 287824430 935831457 917424389 938439615 839192735 911344826 557289596 659434057 87045017 633662537 629471058 701369853 361366912 523915329 821885157 942021667 568209631 768919286 599074096 888549421 419450823 508433044 331964825 351480913 765226583 818589896 386911749 635548265 34612711 579081583 565103149 575514010 609794430 827533098 346469018 508859855 981326174 996359788 540518032 773459025 343725420 589366118 301001084 496167307 119865049 356750919 570679414 921979762 466591722 496848222 351349347 755292109 722968851 956610703 102991575 248982290 65230486 586772379 485015274 601883100 479379558 889975397 314811197 773111041 428584105 735413186 925801969 957913531 726188436 758346870 142007470 641501359 219950333 374817660 30687999 133906076 493570640 888491923 498430668 690861051 619769550 799577877 802618741 819479421 69680388 708136774 356323328 548490188 932059852 994108765 604705378 988561680 567311335 646159901 33249507 961191567 276313380 775611818 554259568 629259266 843915067 853961437 891822160 908484461 104668899 317993563 153059161 706090576 484466820 884023267 497138790 885187756 536391283 707953074 936062569 998754629 522927292 730601842 673984165 719375529 267374502 818250122 217962100 656347110 711979336 765657607 486081692 505798316 928256237 942895881 701806052 770042452 397637928 752465171 950218436 963151470 385533941 481744372 902001810 903138875 597319156 599300591 279440802 932810324 94817096 374387161 617948263 744945573 598217872 931106702 104063021 505836148 145044560 499907289 599840647 710739974 998192729 998320992 523103239 911394529 838775404 896801988 194246026 849814585 89530708 319218100 973631155 996544171 522060545 626480917 511938131 849104675 565544881 911269587 628225546 941969879 643435536 710946274 818582543 933250861 71536809 801994835 22128557 506703055 638327316 791141687 761303762 946839001 295519412 952133022 845329824 967408462 409594848 924748309 484697034 567133576 212399726 245789206 135919965 658069603 72556675 871908133 588397308 798849827 232927571 267346211 156900626 786123884 58199743 429247662 756332742 928549075 151361406 441107878 252003022 322618195 878048223 976145089 315808281 712381572 118062163 985719541 817236459 969018682 248674603 877599715 534919895 770404767 885935074 917121151 90702894 185260713 415585803 602920957 227781186 810533015 933718605 988789297 731415169 955696193 534936354 971188702 22924592 759899932 983330363 988726826 719720887 825448013 66925504 571291098 764036225 990987988 789650642 995366609 939503235 995157769 348532001 740873888 967202049 981291877 798715920 842714280 777498370 954229266 318517424 515208352 146951257 447114507 884500698 932353377 359246983 932935675 725210930 933478084 279131429 811629152 192528120 694608209 528248744 575285440 450722544 923954869 708885376 931716904 648982505 816795234 923298432 993814636 274022170 381454261 558932230 658048247 297766938 508889685 589827787 790301417 862425260 871337744 503766415 798420276 442614721 599326362 337245854 898059348 119748925 754493574 232328797 349949779 943575035 979249827 538802735 961674791 308480670 983009010 163170504 668538969 786931498 932130476 726656935 824404595 2078289 538074980 992222649 999970561 442976556 599220122 112239997 665848821 278461396 728149791 936624886 960570748 831065401 951557831 145391116 682800750 449849927 869981093 207163055 951014191 271693402 905356021 317008221 793882176 28856295 970662629 725174363 832763837 613180222 829079626 157924876 473679322 270588751 348629972 962413673 982703357 541447017 790122477 829455875 892724594 980406069 995212185 564955398 669393379 76204140 508636954 832743062 875093534 899551617 906634229 497895970 717305763 507656886 672576408 318069194 567196137 445624093 940862067 462569714 580354602 439381981 896088635 174741735 581697173 698267028 749601163 778848219 928618893 390418615 453947079 753785426 955491702 104639071 515334816 455712077 759532923 76580990 166824495 569007589 928502148 824926400 945594519 649033810 970070232 430168934 577836417 89961028 269582870 952243947 978051923 215196777 816715116 224767389 239895187 784301891 873930266 673996507 891743840 424691231 713531169 536022975 778195944 147815460 621078160 905876204 953683842 302297003 369380998 420512922 499063023 940202990 949845631 152150713 680325161 241264729 975569839 260298622 927179066 68781107 828492742 336000232 850839892 523766942 712636716 717708838 749350844 474863402 601195014 971292184 973939856 286995031 635335087 588303262 799156523 294617707 588388361 753177125 832016110 444864609 552553723 967045482 998572018 518875210 846432386 66960040 434199951 804418506 865770673 464060466 561684505 484142952 851415261 523320354 860238757 991556222 994296727 338260784 957703180 642821586 669090051 829286555 858599871 870994954 979426720 681133257 682179964 199607408 506334142 646860379 745464585 580888273 795984492 242020063 355671069 629651344 648527116 908703646 961077059 826625526 982520734 790172932 801874827 802879802 994093422 753793895 921480944 347834711 355274873 657356102 853754759 212179994 753655231 416540192 857659893 736429001 971401692 958217433 975374986 716727923 995045979 167593085 742280917 905473200 908214213 53766014 188365886 312126794 579443751 534742211 812027104 905675749 990173046 119131069 907632684 601886790 615410421 429956123 757114235 452161798 568429363 457199075 983092584 408585473 849225478 373332607 831745970 232082218 906194583 829344436 921488415 311608323 586204070 410653325 415580540 574090144 674580916 328756069 473646466 673561111 955966160 435305532 913964529 307994101 536835526 657574225 783838471 277985026 485311530 828089462 962506702 804472531 947671134 324180884 709190759 253101314 789502961 246512056 503000981 673787285 674028619 999491176 999776112 336825020 964126467 228487999 807277898 264419946 839369527 219065344 585255588 9270485 492813472 522643620 962643441 386671473 403629234 566331206 743843279 431918252 708062951 614537890 836144911 619997410 625783729 475445347 512705740 743692867 853382931 244961660 845089952 292780348 551416290 529145704 891092518 531370700 837372464 754513188 903097809 124727530 423229926 437924665 758300215 795924579 971755188 166046108 205920046 87750820 220110877 829648018 859233710 908554194 970989112 427369489 605115486 243013427 567319826 259244726 894662759 64374098 174726649 448010787 776683265 8556748 475918890 948462177 997885541 807364143 988846046 223609079 699362312 449840007 528129958 560215148 663866530 938075831 981584067 544177433 846964551 320525731 970846830 919454042 985282968 170734542 271155640 350632261 672686130 655055460 725048039 76465342 894284309 607096475 795765197 361438488 678539253 78212149 217380916 299287 697191392 420568474 770801793 709294799 873699229 745800546 761309072 599329031 965830937 817924945 971828137 968158117 970667913 661230057 975263328 771465709 999215257 600666783 696373125 616619234 852280066 416543849 792096022 426449380 836835000 854777726 953197420 694467275 829476829 625244241 821898138 521893716 847554066 625594379 887381272 784961603 850188757 853974787 865102791 52001125 705621166 118608970 771910560 866116667 944104270 408061923 963851409 77660068 152241645 950348957 996574379 48204349 209441379 578704077 665048412 511945323 528885215 138725918 726893923 981456988 999136055 487273831 543422223 625204516 668032114 225953830 597102136 712401453 919023024 701599715 702446740 41118467 413423483 805743382 974193169 490375154 575172636 357569872 898505578 848732150 897669991 326520109 637103919 816181035 992862111 195616393 345392026 111805624 295197981 874275558 918417871 124243644 434540421 423328791 975808739 87306852 968952303 230495338 379396143 312434873 708018550 707696093 956143028 810801094 925318895 555322095 761914293 78325494 413882219 141426764 492207021 789829733 931554571 984915078 987237976 442233055 614995218 985823092 994873121 666671023 929478182 491452884 633039127 183613336 952870438 977298444 993969076 108848525 498909871 275616602 574490476 102585317 694043847 994978393 998617932 189922525 286611243 829442618 835108318 714444924 878057937 343665587 623517738 166823081 692574778 41913839 254555203 338300508 441221690 18715538 137180668 507595889 545000816 837355920 838801796 885175550 930948870 467586909 502119976 876141888 940527859 89461084 458686175 148488130 945598296 228405644 634933944 947205823 967833509 189355701 483538918 86964351 287489490 994280614 996849780 598970978 894125253 96011053 773382940 806719260 922709069 87144760 562301054 962792259 970777161 355514370 356705090 458072103 812844073 706768341 967276945 665935247 952711296 823237076 882883819 613907827 993658369 148839751 571846358 560080357 812664478 505824636 597414094 111393082 522874148 202798433 328987219 73052312 790632430 151665156 473378030 749120414 776781802 537868935 941013796 795118005 864539183 922650807 934949871 279188331 779520912 712677198 842128485 161975410 318193979 455830241 701463757 948015795 961511219 784822519 944641096 549459654 963989401 540348821 719928124 296790902 433721885 192563614 324645426 839991303 871199195 335507930 956711050 922264473 922804938 138067972 506907147 151357133 726977452 889625228 970066493 936250667 998451239 175578760 970887168 512519533 740260874 586829972 656273792 628784458 657176501 934480404 989636356 559429677 962685112 977142212 977669992 637027124 901040890 724977822 770463768 51763210 472006728 964999683 984191398 931489273 933211381 671581863 857106104 565451952 718297552 598793207 616987535 219983770 232113327 954555415 976750726 226134938 667858344 223100676 497435019 839478350 989568697 34648884 196721872 293927532 670310178 970919282 974471012 218671286 570721394 324660149 672223738 391806608 803499089 7854559 353789301 488018023 837472076 995919493 998714161 849422379 965453203 538134966 625407381 440901299 760370705 292805136 618683542 222538134 649223086 235759080 912191334 814148120 964019715 645596660 965921591 359584228 528116761 839196471 901087835 522274774 581159347 753746934 883477389 947551466 990009373 337389120 965141192 216389530 534885115 489883560 910697026 677134600 855331620 124713021 982720111 213365576 931314886 653124536 982841620 248694311 387221075 276269700 792932952 64324154 476753957 852552792 890902789 172677116 710358173 342717478 599522881 680972006 852219359 314788772 985342203 348618560 441943892 496214421 720923228 609573600 727759963 313813822 430129193 265499790 833632639 679382559 714326739 244178538 488900387 237477579 943636367 81206073 899368485 741332970 772195861 243207441 996399039 91817998 364529770 488806178 966483691 11735990 924366980 249219693 381401023 162434402 686028330 320133845 762415409 27533783 130963911 926167279 985489829 902503917 980231370 611691815 879982403 804299057 889083820 393237571 649864295 751263080 804378157 908367688 938673538 326417520 652873034 355203293 695744554 480554853 613256726 303790463 345605500 866154363 904073298 442989550 818849456 958993124 980763436 795258872 866893502 681266390 968000121 480867786 564315981 420252574 533810543 698054378 859990116 425390167 915612275 662236324 729844377 939943621 950614421 854577592 948846649 310127424 326498955 204303158 238282759 48186618 227795807 341384452 903809268 544252893 599326521 37774465 962342670 656613880 749649100 350461925 683221665 96246462 378285033 843765484 889070049 153414628 947374997 443791179 807706983 945017349 983061801 644914240 775931396 561520491 610465695 755107741 978212637 507584244 818813109 526463071 956925876 910206829 929038986 641817302 849074337 873115556 955662665 851617704 995584500 991879325 997415180 729002649 737768890 841332831 868755481 457059693 958870034 247450061 590978116 523565613 610601245 46618842 185673036 650890460 917703267 712746837 849934071 261046328 498101187 717047722 997038679 461227307 467750286 375366953 647938031 142605634 216153047 246174179 541916105 287111262 876027884 753813215 840245099 100866534 145272135 388193345 589488414 66734447 605993841 303041325 822161052 363289342 582945571 262422468 277935641 115489837 646137326 395410727 716976540 441767372 846143529 653367225 765540748 857919035 889143511 746990643 861729163 482531160 907683317 343097737 491602231 914194553 921495982 493168767 799179228 340789990 702295197 530845423 963946275 930819205 937942479 943938421 958820696 924135385 971782384 977079009 983280545 703599416 817123705 785678757 817986484 741762687 933475202 859383148 936567392 939910492 982834332 48232833 154076324 539015521 769641290 189294441 858243858 441058280 453204562 887917809 976629079 511478439 936551129 505597035 830157490 399959409 542012319 694363561 905007815 57478280 815783816 698026593 818909001 653491075 878040006 522567656 554411033 292979105 321196803 174954913 241113613 922579192 985729796 170719552 397014470 484712211 531594755 329855161 877519586 586485916 928969157 49758665 377148351 883554142 929856127 871902293 893775557 56063929 560447613 723816306 940278435 441043119 472014835 524430058 723474568 795147490 829462020 533658914 659241598 333734564 435166673 403675805 430386286 810894942 949727610 215592398 816437445 524453877 636243650 221727506 412765031 600134637 671571212 730602106 751412140 387502773 858945565 316035845 842027292 780917130 951239772 505827811 510789801 851301197 942323067 351594427 396846978 146680390 410100336 263670389 594319867 645000488 878869718 37296626 164331143 473892935 757141762 702114900 884753916 333990296 956709446 316298228 330585241 18698401 239529622 191278480 243588729 645858429 765147603 987665997 990921324 342697247 971007464 85746892 552937797 171477961 352354304 141913077 422547947 319981457 474951984 432958391 961276982 715875652 820463808 903397563 995848787 27134170 185486319 64274603 411571442 548962564 827698777 213646751 400775720 44733393 49025178 358814642 492887768 925398146 932577434 387806976 522040984 520548491 634022234 89107108 601832172 509400247 835278342 163438360 372677796 874981626 939130590 787494345 914839405 189091734 242608361 410474901 438104684 890071901 895704617 999029475 999987441 876327278 973699588 789081763 922549434 841393495 948656150 78713834 231528873 3845991 699906350 932866029 995665344 629717708 637711398 66118695 996665370 255037106 573467870 664880111 677607010 335819744 594978378 285701928 628103605 185055336 314528032 691302972 950711231 749018230 823207167 185219089 830366167 460205966 499799176 609317603 879736342 21036726 161939548 343460533 442786030 686071481 844601236 366208353 940135264 98695027 180102522 765430407 839957475 736531087 917100194 812779537 995838108 529125815 559053648 614467549 725597475 220782050 457747499 385353955 943603567 739109348 810516884 778984969 814652332 993919772 996789659 68323986 211396028 622309132 816649463 26649197 282923845 829135707 922579053 12405902 882774317 28784080 612481015 282504227 524431347 72428643 667489993 114809615 965611236 561010140 877715728 521423635 757726468 521901141 743829711 761182113 928341437 980819851 987218755 257794682 690934208 727587348 806026084 155923233 223513683 494138479 773319952 133454117 582170023 533515605 933958895 290329008 928057951 291242728 301661645 89953189 927213298 898788683 921884682 378096571 714901375 42799659 802321716 244103970 989158787 942724501 981176964 469566252 808059205 870844137 967060746 579689230 777017914 427740086 971804489 99342604 615216443 681010199 819014787 405351601 686341647 2581251 446823601 509778006 692740084 812125971 999437416 537893460 986919046 418420613 486805731 426588269 772767101 549850033 588487655 567904988 569303544 56388817 853519481 451463831 474363597 539100602 641066808 616290922 837437893 508515933 840557868 27828178 122864436 57267288 521896960 918236813 998554792 541922190 835672731 316383497 506785041 90103436 806615715 81733475 660607552 115213358 124116815 530543769 697587825 764959842 904778013 790167376 820186918 596067429 725743612 332724424 690332395 619051000 668675117 85165047 227894576 659739344 829527376 808231533 840046092 811448741 912145393 759300500 966490971 714622931 952356551 694388054 814815305 97904434 797902795 273243904 741137858 768001923 855223678 621618183 803837311 898081454 996228776 292079110 671358497 322745198 338873778 857714005 987089032 644771951 920538931 850774058 930433115 419023271 498807145 700116459 910239251 584631616 963929818 630294772 802842627 721195456 725405929 855460978 900025769 234317534 676196597 590625746 954567429 107214928 654727331 692457541 873052783 494210367 822151020 633098115 865530920 217046788 716501600 672398756 699000053 36654193 731946894 867956498 906514416 952014122 969623891 171749113 217526013 773279297 825150786 591276562 718131216 350733174 574801536 960383299 997954260 899791262 954797150 667319770 976795709 923567606 981442000 530311739 792158409 64674478 161948453 602484895 982771622 718237464 877112451 668170001 852523561 893125070 906921568 280850301 554794825 777236933 985314130 80427194 781087736 671767619 706536480 665558744 827962950 458146900 533616552 625115645 653327321 87347104 317773714 567315079 639351664 472323449 756631128 896558613 955034256 850069356 904375905 388539709 613355578 295787905 843959199 487455577 677400525 793387523 919098813 602901170 716190902 283479668 852253439 571815346 893534258 183841200 965869127 445393626 860746182 1449791 975469810 477038136 570802745 721155219 821221703 446787009 702150593 865299277 911396966 7147847 811514342 11804459 515285117 785768139 797452243 468125263 932622850 237662214 410734582 793557726 859464454 484207108 775357345 871638891 965933168 562997373 986522025 301124573 374427889 545217313 896799084 586686151 667053249 368612214 978874541 40952191 997203025 692924653 931761426 903132752 936980777 734780184 778203676 115607052 548131892 119731386 427008328 228686193 285306179 979683211 985904029 700117098 723301329 527710715 975427287 474883277 705699209 20931458 281226944 220380524 527294448 171081611 277307191 744660269 899316014 349598113 569100870 633624039 829209708 248104264 775250083 559455688 611477205 293759342 394752107 57565018 267455058 855847509 963873391 579953443 743239756 310624164 339569397 668906762 912892775 139120040 824817732 857681814 888389709 844885224 860848811 173624391 767407000 722282458 767471905 892614985 911469725 174257709 301805679 567930314 971043991 818519395 953515454 289752211 322331565 105078185 919029577 709528318 762741389 52623071 282748873 35048543 194936692 162087485 556673185 6487133 69017889 716190007 873183381 707762300 876608324 972102948 975246760 527309523 699034338 911317615 942145379 934340964 946717012 666656562 720697094 439770223 851753246 992820526 999768056 394590771 835583527 551033806 649901190 515174213 929793993 821170076 834224115 340060870 588460109 479770961 964086561 277506895 626579236 309434093 631914530 260406537 277301045 114110778 183756291 33823771 400236304 85526288 921331533 994311303 994720937 797137832 826657368 188822983 320657620 97867167 981576268 424575207 553732635 419116958 995142926 504354278 932911177 874246076 980286173 188610990 253016872 221522497 272239342 56465592 861850075 367378530 675422322 599926618 725705258 247595499 710674074 761227468 856672020 191086589 870396477 858565352 869818894 391860265 906526775 445815821 710321869 977655214 978333016 216352305 297809414 24427383 133070463 800502525 875659794 539438118 682128832 511888758 687342400 320056753 338650852 23897417 965588914 106645025 270555773 627252261 760361671 227829234 574357661 801715735 972427505 67797618 309540723 308647132 377138931 507511609 985696130 985781652 986676125 903916351 936369394 995753722 998408542 497064010 692027921 6602762 236064665 219510907 744441821 54842553 172766005 105527219 420687480 877772158 997476799 232134243 765901611 347485885 768623490 575709473 576122189 200382911 935066075 736959916 854903316 866706466 926960988 679120636 940028346 458266885 912083080 937336332 939097100 969643503 982097818 643814569 930050346 467537366 938132384 939649819 940113910 498672245 950582908 113999002 805580893 949057232 961158236 738330189 891853362 713850071 936024298 943324694 994542438 717993531 760232076 213444904 348740861 113272194 972655096 911500088 956915254 828586170 930382478 848268520 966684125 702763253 757996670 998921366 999707963 294019419 526617780 535592703 775548572 796599083 968464538 113399544 123828170 198935934 990993435 872074268 993506462 540951338 847966622 226314192 373181980 361268884 626850000 294817527 396725904 515078365 557445233 588932273 971705584 76771007 925939984 909867663 910926964 503657475 754362520 553710418 678696476 929566119 939290102 404790296 887923813 825062423 990603661 207936680 944835045 491546361 853437789 156694941 782171694 904282403 968649656 619107261 709410384 729754246 753041709 79993592 472272520 145881515 976384203 185914398 889646990 707818056 825905882 233383038 992465148 594050781 629879742 915724573 920160171 969629819 975492885 522765136 632052190 522526240 715495091 795160654 890786851 394742935 881202280 469763943 934343956 397834465 882160614 712665433 776328202 631195815 636091267 729151517 799781872 837177422 921881462 492028202 607341324 988875463 998454586 298577021 723226593 766705599 954929176 688818655 862718950 154749033 187755202 347984206 989102848 435248069 579671454 155144397 300236490 992979173 994615424 142335375 426745405 509092289 877723290 9023718 520464510 642928956 662366215 812788905 917469065 200443988 542583103 262959247 743518658 700764093 972252498 697161974 917237131 764932376 920133744 806107162 955686620 628148574 648370792 850592062 957042502 790329505 868816287 687753752 996753880 460587123 795232826 437615983 858613312 61315541 720099468 113467547 563704033 810059024 969160013 210504308 709611432 218238385 672679437 370313302 558041821 485476732 868503375 837825942 910936465 245599168 306241734 389085519 761287374 726785610 960383345 451764472 564173332 788886733 944899887 139291497 173452373 18317278 567679000 664138632 810872353 772807456 789898408 872848868 941183159 607329909 783233985 329221785 796707232 79302860 381573091 101149201 739687646 920017890 961203837 743349160 869629245 322764196 361137977 692833091 967264793 561454332 713608287 465883697 913789996 672037382 831503638 348578541 898456300 37022832 940160681 727091327 968287659 762201455 969552337 18825362 127094736 575082887 825156620 630273248 973057893 97791384 870623938 720113659 865865405 973593039 994772830 775496318 794538535 486191732 969332684 749869210 925285237 561845294 617057644 492872716 819875287 973907301 987144665 228945899 779930018 346926350 907789682 491120490 792428463 300839966 921393023 490941602 696228993 814789529 921347982 756534915 935307493 571957893 707079903 185405171 323485818 654698545 773093374 202186126 736900437 94905679 797598799 820068024 937203056 510506274 615230151 613992213 905139678 841868839 899055702 245791991 809584224 354437778 760658904 757728433 910330900 169366145 778511752 70111503 354225028 40324898 851116933 53098396 693207440 160472681 778628599 535430592 659504012 998816989 999858733 203622263 834877299 24900144 452167124 747403662 827979249 9056401 930920317 904256564 907619693 322837094 754830299 110136810 696418451 108234886 337726959 81071467 481819838 974892615 982661602 858411169 978402229 919494876 970757656 221440195 670223855 338168672 662702633 766704798 891533950 768009037 801872659 29885594 332322807 715102945 871570434 671280495 909852045 989534600 996161733 161598303 670483100 944197918 947749215 310936528 448280406 465643064 532110382 704273058 848100320 969546375 992157865 100851650 238829640 37494293 876903275 570062680 843919006 322509708 518396321 120291685 524437073 274765470 859283953 488713857 739323707 702676086 816953948 26696041 50728580 944725863 976742765 277962994 484330967 992619405 994620145 87802223 821292619 603079646 826468489 390042308 478158525 232375027 555922136 85228146 416915868 9345834 112562831 102796986 733627077 207106963 282363398 843531328 967282410 984228936 986179564 486973675 913215823 401376692 404502274 957972168 986642566 643848849 923226607 405224922 939181087 371746486 768450314 684384027 977206680 407388436 570350121 37037425 653640692 710554224 900562527 918153775 974475361 691194004 862944012 741164319 777150383 213836139 404712471 686290304 961860586 761984222 818819174 650812445 988565225 518683483 954438522 19919182 116181324 527784665 627092390 122145520 188247315 827300644 870492268 523216673 844080511 393007671 819507043 260377006 394631810 756169910 940629466 190016226 865482888 54068541 786580025 746106681 895391812 371293522 730251667 973726171 983692178 395282516 605899248 732654572 963733081 924933417 993777723 60905264 822790025 364894768 521899195 278703505 900485490 501984410 823604487 446523923 953969337 220480584 335068969 619334659 948362067 605933902 621120397 446084618 734746656 486702544 618396786 493070143 717354792 503801511 663316570 326919441 525168315 808145615 998741357 913123197 922118541 908445806 924028478 479106523 597380408 873590287 961068680 772960524 926603891 132989697 185078394 176474885 774877471 567866490 838080985 131992033 938758109 813242112 883120136 87581389 822737872 331616142 344785719 809976068 992303665 610325796 614649700 338448528 680575309 458075377 547905274 114574759 484269277 395179890 467491640 200954473 406353221 533562073 722250108 42836976 189607311 259800803 286049599 759909785 923725225 697934939 929377019 26516283 368268690 597112474 759318896 419275834 635857727 276588935 792752692 117597158 737982909 947133513 961590009 663268541 737053929 903641064 959692499 312168692 400587368 883859049 905608364 68025025 87749602 425413740 483834768 331887209 358227613 348801994 670368146 352500181 927092315 382632465 862325873 984429067 984695313 742709633 899560251 97070221 547914697 605752273 655844845 683981878 836002826 404159549 681363849 132196475 515798113 538289226 848317455 856392718 954750157 989504542 991126305 473596330 506792431 206175576 224091752 677197541 958894469 567332950 990218151 97619071 188313627 326488525 825575060 126652659 195947125 999496955 999716990 785938229 892729683 622067464 777744372 958952247 964654159 450849588 739303772 718760344 965097555 661123681 874050230 487822287 993900338 839974301 929123982 643873211 912931752 885643535 978917255 772771238 835110426 588570932 738353674 689559986 920173515 667517301 936498711 744160506 966679968 107400578 243428370 535197184 955851545 335236990 944529189 806358911 857003711 740909597 850373446 87206553 397491052 273146487 381988318 360128768 397964909 692515254 812440504 348246867 641084520 134603997 552669277 93239375 901267645 402079690 531027810 912733170 974398004 404641376 422169607 183887949 206610591 52142585 767505397 256533749 526941157 156978461 886104446 516767948 711733296 328438966 451229163 871183375 899133062 304329669 754558047 369972851 710430323 903009534 977286718 278917420 501658172 75277303 742187900 862528071 893077722 679210462 848342584 896337518 926232419 76955269 266384021 957362027 999675579 886889250 917210002 892713367 921428192 154789366 197331763 747297653 798868893 513435895 685140117 302488518 899747140 606406552 745068746 852480451 891164300 588397938 965544316 850779935 995649890 608829918 683618962 468939181 627156350 417480554 955641154 732246331 920386851 523391289 731061721 144958102 643195265 582198387 793845789 945557689 968898180 59912467 205443629 189692667 355958429 475177942 799895369 323348843 521348319 297653229 621844566 111487117 967334971 578450741 744552726 780381677 920005698 880798518 946260263 953668272 975105742 515022591 914461136 726706954 865360797 204059369 601036287 195223086 304929050 778910489 983076408 310689696 517514641 625811600 952634564 658963861 921563757 400232784 692469259 583890728 909472209 7553925 848189560 393081783 941842815 571653567 816450626 848198068 939076007 979837349 985171674 44148482 121751142 747787809 973990859 76259442 775223288 288845313 634167830 676334338 917726055 100043179 319721660 944682812 978455148 942248152 971062697 8903342 604785236 655478382 707627651 659062523 985671871 880941093 954816931 469831978 623866086 261509629 873628237 909406576 977037181 747524995 786425548 236224837 555725193 143375867 268782081 509525521 931801790 53018471 773130904 498697360 514718601 638176582 917978604 522925061 600757498 671520260 776406060 577535020 594696434 940435373 952438535 104918048 902792690 168275648 605859096 785062488 838650530 713304003 797615423 671123302 736702813 178445871 655271241 667786426 855574420 782907512 820937530 288841841 581407445 433814662 559097914 263264483 671734972 774862398 979510237 563365992 880396184 102563649 119560245 478034549 922355493 195289221 924764802 824902995 979788763 435852175 549189534 39263311 330806345 783429515 922737581 687443900 698575798 76773672 433832384 181827913 184060625 260755323 739212307 203098385 838484377 931204962 957990290 789256594 876698224 133935610 449497009 567732919 885686772 239164389 651789225 450444964 722747454 585913456 980078144 263925033 827827333 784648440 818271229 961555488 977010055 409910148 557239484 674514638 950746227 202525434 966700428 280839853 993055472 271849460 784911029 865104346 962884868 75093984 137449891 174144343 235976248 98614544 115355948 51470352 104134988 479918614 666520565 735104025 921300564 823853932 896942404 14264419 290618148 571355278 964049969 717466170 953094345 105742879 675893510 905752630 927379768 795326963 912515636 142481166 650501311 167434282 619513067 602130886 806511588 441605619 699125449 680628132 785697639 862806199 934799503 700845824 871605672 876240626 949117021 64450492 112737754 690391916 779062685 31119505 775414545 600585878 663669756 849513538 893318509 277415970 571908465 827181237 911005903 937379120 939108014 308705671 643766593 896107704 919553782 237286736 952313672 13042561 586706490 484735062 701905841 628999880 876452494 606835471 693210630 826214991 939257147 211117979 548504460 590999449 953457783 254515145 318920244 622169859 965025126 270221065 467045761 561010762 679879216 692177393 887100071 32446892 929571100 550444163 585789572 756167780 978196826 712934442 875366325 207859628 274982372 999390013 999415579 699265935 785015741 580599870 883099095 115717356 236540240 877045441 964222402 975034850 989988482 212351037 920909651 287825037 756410241 606605532 689926938 224804963 394373938 32321931 943951426 300140169 823117926 855750602 867928953 472448307 554132921 346893045 384994978 476175194 855561520 546008784 929306319 522574082 684922025 365573238 571498748 151256024 592082235 294950461 750066279 4798268 30887112 864503710 953500132 904560109 945446592 381044402 801498397 869181188 925003420 227113724 415313436 678308516 753283121 350513912 408208707 451788295 871219397 287226664 414466461 725412477 752380533 392413516 405897404 62778468 642663222 981579007 988810393 611160976 771232118 165756324 527662283 460490898 760853557 932015085 937600216 209488291 738572184 638274091 881466790 27292172 631561783 889690964 890816926 434512527 526021797 805918568 948704324 199758332 309009377 770940858 957291375 756151012 956127553 216910276 613346378 34829816 865132660 307798799 939305224 66018220 144814279 971839725 981379099 249864408 638846634 687577259 974365218 908076885 970881677 643155289 675950428 846163500 983011885 455855966 787057122 196039087 327448489 516087106 697596096 515448533 958815528 33032479 125153933 730625149 877798384 311702439 646199587 845174519 861942185 594935877 623195074 320346941 404323937 143665314 563189553 958426615 961562258 127240628 971582934 220194382 249584686 625521264 760398996 831463902 979133894 13238363 942009493 248292785 371849058 530350563 537756110 977550686 997759486 718364359 922014460 800392236 863490158 247359089 376072353 782826483 945883993 342096343 496127718 741215580 974008950 608189554 819589105 105077482 280075453 660648811 822000056 436560307 987571671 680499488 877803001 322095590 478573269 568405005 631125659 403447646 769230292 421460057 987024719 578267252 846810837 957537221 976603953 88779596 699097353 996598243 999215418 860074986 990759528 798206404 885962101 296862139 359947963 919398791 954752304 766629624 926391191 284481753 371687797 498574462 861442182 81193406 439087127 47771587 704710950 846248502 989264258 550908171 895379641 563493629 974380109 303807918 863054626 287693608 875641254 260853314 633704817 211018175 346670074 304241629 685335255 390500153 715638761 26984785 347268974 568852074 808704217 676220933 831702505 446061133 884430917 910492488 971723783 470729595 548173174 759636800 817728973 707706584 820742242 73617804 826569451 47365659 659003010 399362559 766435509 80007693 388373353 573299690 709487208 629272502 947662230 124913147 970577601 657567376 680295697 971893371 996054243 277761514 343662267 195771419 332374980 485503558 798952978 728407658 811558682 746044393 970941767 464441699 668918354 591281534 925325078 729627976 803716461 208820399 552534995 289842774 393464417 567532336 712620312 145980452 336523300 481815406 687948044 794728322 795383368 929666104 953835263 656705984 969791462 391333676 419683245 727863583 773720799 913974682 943948068 922689089 995087622 167091990 605210221 393973452 893993639 291232365 355881196 771246408 996057161 189220556 913898393 473465139 509436268 96272868 371948594 370881187 394722417 493234062 933027010 135887806 387003773 683899008 882557869 338078162 487375521 384820253 988323380 862675074 906607473 441168641 709287054 518862674 847193636 56856548 749349825 868138363 979052357 284905763 714752038 878026326 958083567 181418611 317468981 386399549 397874140 975862352 993742047 702537874 759565537 233060498 664406060 838447024 884251247 870901297 943985868 942514266 959962834 555872862 579727583 714798089 936017628 808231487 997859976 40945212 880224471 529944965 552092950 705222191 809676410 357999164 989695752 80124812 899797141 395644391 667575921 527031260 682577274 857650222 912479206 562518233 976452640 73900714 924922237 82925990 397351447 163444921 848191279 897395391 908546425 757394163 961448277 119627603 625203475 201762624 417703731 985351992 997039061 1525973 452630998 691467476 784195261 94562744 864460676 20858819 616044663 850910970 902695722 925494633 948203216 633044466 758952883 791482325 908935019 702694286 972337223 485199237 818340403 741438125 884107121 166340069 248042679 419881267 562267066 695969982 946944797 912328989 956144358 365337748 623528763 762830616 800605830 596402793 782252516 423954556 519414760 92120277 341787061 661143802 974970842 258172985 312132329 537128319 745014293 350066166 995309729 155670318 568258095 421843631 954067501 809600519 952035639 298969721 884190586 827754448 898793752 422535573 867931772 217649568 535631456 207157086 567996087 421460558 425681223 138697911 588641074 786369318 893446075 889382414 921664038 762262575 800246174 672326708 935551077 177990252 656628385 354082250 538036731 101491308 498449155 471661585 710897134 915096415 942776651 951969668 968015444 160413927 921070695 62203596 629348462 313173078 593963079 948829822 959215338 537119085 557018635 206547912 568084863 109390207 328936772 36476762 865085918 752270147 825305052 950714392 965525592 151229707 343017133 123396291 187231496 824132140 874247027 924883681 977342918 324298021 982613550 810709402 965231223 56636719 549185488 948992876 957581992 795557810 863974193 347025161 768720600 207194291 654083917 555708497 977041596 696922053 888097186 950559865 999874805 463212058 990246522 535990013 791697911 299658624 352527617 718398132 906381614 690297867 907402658 169642746 590504668 439635972 614158553 580006558 995768139 385621059 769337410 658273108 921233337 727006360 742330064 866883491 975743218 311681614 970405425 299422234 813914703 701496020 754071265 718938231 820990402 314388072 954900313 466776448 628462058 471258920 478511632 432939432 958801050 283509567 889844061 715875992 762007093 861881504 878044534 449568539 994816357 776570941 825390717 472727379 589050840 112244057 408219821 100823462 644194542 147102833 797931423 555882046 818817286 356628450 856680670 992020026 995160266 10308602 360048179 846666650 868677628 833984856 934333810 217277562 689088829 523466727 699368426 869481630 937059389 888004436 941193777 376529888 895067775 476941089 572741150 773878002 874988906 408136231 884336522 471304009 983734777 376555664 949767225 684988579 815299794 594550971 693468109 820131687 959772391 186607455 865584170 731080907 947426642 208757473 681069577 16083795 531659577 211761880 229772548 88188228 453003174 366169944 730277792 122378002 639027267 618428028 756162323 92724287 489354322 802085295 994253833 340752142 608646198 86620757 732624482 54177191 91038183 515872873 905152678 287505725 882705177 646193547 980225903 813459293 967695099 290526938 688218363 867056374 923571529 37169425 675256967 88587600 417820508 845022812 877879095 511121047 757219747 170944744 747919825 208527308 929743952 9101551 179891997 623726585 885649177 903105373 957069874 113956887 434501457 149091406 750374420 495705265 594606358 912670393 916338804 146933831 771099378 928991684 975319864 750807280 837113137 68242732 168752430 966840592 974416129 549990879 970429569 858815369 937419282 479789495 814182284 724569281 773031615 214279142 433210558 955594431 965552492 801106185 930263107 239503055 622931488 242648048 395393452 695905791 885048669 76169048 112736421 354926552 548946912 941706816 960963736 190002934 443448956 539549067 586423160 451855633 586100739 171510123 243222277 433454634 498443396 166976335 421280302 251063559 415004196 425392081 842940093 585486101 982433214 500364633 957797772 175449315 488448641 86531392 226087399 374107233 891788081 609581750 713087509 371281382 497836355 516620949 557732898 720238223 792710899 625173620 957961246 629632148 668123220 183877965 554792913 273836174 402043059 533377261 620012349 147395814 902065727 97847393 777164305 502127028 881135337 402123218 543765755 6201705 17604545 844044420 848422765 97657732 914733700 87154544 385458989 85339790 841590585 293984865 726346475 127424022 532900358 799558345 990536134 927489954 946046136 175442279 397315375 936776360 939627899 507621970 917021693 803952241 853315710 13787063 916842348 785644922 932873292 559887817 777548207 204788796 742267750 130643427 441312524 230129941 326076622 629475164 868640998 656910493 914126169 401536501 668751529 295531072 510174425 464799406 922548974 466600557 856960819 233728392 886961566 449501469 931890255 574793457 975338553 226721224 901903847 860663789 988048144 915721564 939268815 506525269 791642733 985085439 998029808 630861171 939956060 995026936 995810137 503442504 910829441 111066085 833272182 516661586 616535660 834228884 879859919 958463785 977696846 155020908 201885267 800288081 895415744 909925402 917338750 713818990 787122203 721323577 788045710 60477135 222178455 738122133 785543238 295961202 313617126 605584097 911974424 248821708 657409078 970509047 985844637 268607419 893344279 663871283 854420857 981728882 984551634 33950581 451310358 999539094 999944736 492301226 838659096 736837263 826501499 247698375 411008896 495411469 995005449 532739952 544201520 487974508 591291088 831102622 850458522 165831756 993895876 608548083 855425676 615145074 741987071 262496373 783366195 391541955 402133178 389174359 745210481 69500979 72622523 841766864 994925383 43588192 52281294 509608871 564451375 930050291 930411916 578915391 843134244 694874039 813967671 475681259 494473642 388565474 937333185 169920360 497545590 884671967 951791149 850934712 952831786 724514411 965846265 269536122 695228078 182789387 417536022 148074715 899311811 259838405 664974286 443885803 994821238 108371631 883943116 891298189 902498818 538558472 751688027 625564211 785380051 394261727 615700354 845508094 996160494 294601799 783100587 915985268 971122174 762466868 869586575 380157224 876643326 895279399 982030746 212196351 695414439 4710705 938855213 191322292 295783699 181550440 661339235 758535630 835877889 875629883 978367567 943000988 973104655 978090935 992917563 537476309 685968641 376706635 558408128 262359246 697564994 793482922 817797413 557039727 959711089 96704932 946622053 356433130 403010868 183531314 673152993 25164248 599056077 222616522 579535987 951425725 975661495 281077863 633889495 697413156 716980964 265932311 645871123 394595720 851455615 166995487 816156760 989111014 998678237 304329502 737133615 163954537 643512349 539872308 573364866 314787475 721091942 977290140 982962901 497720549 912272343 307547643 426579285 426804525 574435010 52080304 736707670 534868276 812224207 135357100 251891924 843173130 862281723 362406284 751314904 982902120 997175699 567466901 572953101 56969774 296009932 163716236 915823635 832342267 962082453 624212583 897585252 36586545 563843454 202694184 422174372 156448260 785053247 511344256 980790396 962664885 992210322 574329355 867216829 314576603 506905038 761814554 977109535 12971759 263981975 97809322 532212490 284356208 968187409 93531593 231271283 244111980 274488419 292451399 981166608 256914199 704661413 317240674 372969162 678615170 710987673 674007645 938658612 638542714 718612000 425415680 749560133 711733912 851774066 910586908 991381227 960608944 964623038 465096712 509529869 489630825 531512636 226538423 930504823 438495513 746516539 492305160 746201355 147028382 714142792 547836068 867073515 383414159 790357000 467763376 702700490 237265234 238009895 942138931 963774518 461019014 550927116 845502885 849223500 953107327 976219079 874607776 890888801 72925251 441736698 18384585 998118488 681104242 901854830 128677607 263073926 507360472 724592676 840878401 855896140 213621516 566764291 767252151 859835813 596809483 617925479 134281953 884451077 558258109 582408744 814170560 949790875 591822438 848555464 496439944 502301269 964686176 964713538 82956239 898633172 5029943 359500593 642508640 910172571 935432505 990511490 202724625 572736811 872838229 981386171 845717223 958348346 620075554 965950984 576072815 889047314 219937562 746316729 704624315 914587371 496071287 637476550 565431182 588925493 191239192 330203683 989984599 992203600 354049786 409000492 361141916 555559637 624619861 922089172 73015709 762881792 137902708 801039135 997519066 999150639 996065180 998595913 546915172 814396236 638142275 842883075 891660474 944619183 705290286 959450240 899702471 946447520 714287940 881380772 344828570 929600636 109705866 839036216 977407188 992432944 295134747 458374153 116454529 185712954 923875044 981238763 730797927 841419697 594920038 827929646 613131252 854659558 40066385 377541398 604496161 862180188 78698520 347402491 311555217 498951747 32130784 524855425 778983471 828473513 861344789 957150518 5475400 481149171 977930263 993740780 190688386 287652059 558882548 676804555 810671490 840887608 77042683 103184588 625590613 704574709 14293473 595164171 472849101 480749611 68572652 186890103 979962642 996818191 9632924 532809528 326456414 933917719 611726025 809207201 665868947 805475596 440769498 839322834 485973034 931634650 242849843 319594841 734266172 867238277 483734078 543720900 514681506 561503628 222902686 939199919 473764342 895825247 878851538 964567539 333469054 768934647 608521646 988229367 476099478 736992361 283474653 585084214 130303677 820588113 668572246 922497244 382634071 665513683 955726293 960152839 267840630 768812368 555673819 708851422 415077382 971634333 911282874 936288079 398107727 699349572 926103870 961490844 174158320 585358712 156940252 209974002 111764347 543260666 460478862 584938783 688512980 922307852 643176138 933574248 933029135 937994043 135834804 887220674 215008711 410810661 573223388 653199625 903256478 955240909 265212673 355943919 470778122 477889203 152059816 468304724 229159160 451216688 972111565 984918453 334693514 655507320 442369096 462969261 668452964 690083751 741112145 853791904 587695801 839331730 904356179 971534863 682946910 790363065 984923156 989264080 575757845 646986250 557281720 635008161 623119078 668532074 487876012 969179077 957478167 988207120 227109042 589551044 112398869 331914468 306655964 995661988 915023525 984033607 88518475 324031870 99054516 395514542 229456438 315673186 429859874 740621617 694470634 959316051 942105804 988936431 389104706 907152478 452517133 691761673 199585153 487132003 433953057 466714213 394425726 601025017 605202732 708106037 401019637 730583630 726701383 804850763 746014373 905301020 364800151 914264786 94157424 335771538 856624560 930973999 235279802 400394349 354001359 969292208 153187439 356115447 508310755 762877264 75026219 304477551 738031950 755217094 894223369 989414527 304027438 971997564 746797658 750411747 229794682 257444089 225251909 422005247 88426545 998116756 886717854 965086169 552467781 813728886 135672515 846246940 554284351 695978074 41874426 306986188 927136672 984839269 762120037 899533902 279634316 462098264 987266402 990421678 627207467 732187956 120966720 654381607 151424501 717286922 600612730 718859687 114388142 524025225 391371731 461896164 758992911 890177184 961555368 975154982 113856212 336722974 100290414 391455256 468978426 820568658 470360485 711996828 868466326 883013698 586375682 684174272 70727771 311845429 425355399 621922333 593598365 957556252 533070902 721253220 788445132 950741511 143432898 260613177 755785393 986225972 657751445 744492628 693353534 833834381 430640238 884787813 958626815 997098921 56215395 752755228 171731188 372036744 530549605 645602612 643131611 770804392 134296938 737042408 376122664 965690472 180976230 880237705 846779430 902263708 384578038 582300789 846302423 983310083 152135688 253811708 876556546 885675696 366027911 751801879 386759831 927236906 842203169 902994933 954054422 983400920 683316563 971083610 997133943 999766555 525094916 655606702 926124351 963308836 956808524 982881641 76874292 511583270 876465493 933276922 96953114 163800731 498297371 877782593 150145083 913886451 624160692 706231125 870712624 931270389 732845910 734101426 762978156 836798721 857033900 929742788 567554314 876929291 209580445 365747669 607774680 905725636 506342459 904108710 741386704 874469996 837357509 879760274 507154830 897441042 941123843 980412939 359640027 445426238 441496127 455353117 917942145 975343183 379507994 995807515 471289858 598081507 698186383 789136378 662429352 929906290 737137833 904267124 947075865 987520442 511101679 839060272 39852937 847255284 886852796 922008017 787148996 940984690 534001413 794515816 261870888 282625030 61987505 364684545 663692967 684847005 360842340 593490722 693979428 877451016 768585987 819259314 68966931 345084551 58385014 207135645 921666270 998339359 663340490 690804552 306284638 721783181 759728539 858372003 971497949 972765058 568541787 800724100 962233401 999074037 723203735 933419838 510023930 936659063 965364996 984890088 665209030 871832871 232730267 783842953 210031969 521365296 411121282 701178482 377711984 444883348 151859665 923215499 376156367 379745274 561406887 790170898 500792699 533034456 971668594 991381380 212045884 745783653 269551110 484263366 141506884 881245199 507332132 668925734 272488039 654007527 666315098 848357664 399754509 992264331 614738182 670632241 398766588 886181288 798692919 826348063 613670833 677018023 836593529 885036856 631599466 932547694 799296095 938055789 298324969 594198605 846871844 920162269 627932910 749565060 370137536 946066177 892569943 916050633 619456194 820197558 638196829 791166661 807513195 897907585 493502656 788826264 388095949 685316492 704474680 915791411 532210575 692752792 362928252 433679443 225168301 476846743 389772638 991829385 781057937 970453460 331163837 988765546 382371032 517023715 164633515 882650576 774818950 886231201 157777999 795614581 338136477 347844435 812553499 897898464 104690985 306106442 759933632 944494838 219618047 939793082 689783437 964526535 181527938 202631456 765588913 859881487 864990469 951679059 147268771 490679980 817380482 844276280 162532249 913350946 689930684 708590862 322222693 422840646 844818922 906519910 660381387 796738175 661740535 728334953 621680144 922866557 431824643 925856431 365135454 778539178 519607898 539018834 666400191 873501404 568716979 725826002 698952490 891277107 839118941 917651564 857439802 942142734 776431633 909961200 630698702 895210912 700122683 774044025 624059789 759509454 848972033 871334255 371380125 963751807 656586053 947603188 961828038 963944951 893928947 933423327 749359543 980732976 391889930 811438954 868394886 876423217 165326241 962599480 35894980 479754974 938356201 981701398 957790966 980863722 260622451 805514500 369628062 507140020 792508231 893456837 151245524 386505308 780605536 887941348 95327594 908725216 558188729 779081706 424080238 761951445 643149745 741929213 138467205 404665970 610844070 919703300 645714300 854126625 35324761 398431915 890989353 983752642 368807829 387343844 895555195 916351069 350877788 933704487 197887667 337218385 852353645 925574912 837042343 891355853 262058548 316233008 90513695 601093332 419610881 505762714 657692242 815604535 588109240 600060799 454397143 575358010 637805885 948962797 868326906 962955024 694678162 997877910 405954777 701392854 122111004 473715483 788693299 915760550 533978206 793559759 853114599 862929226 569444409 712161006 212986186 660228285 592262115 708286377 361000701 963360029 200915149 899115410 277614409 959958078 219539409 602161140 52433319 441696895 529867353 749072589 352823772 595175548 85562986 634417215 130367369 879846433 282870753 802137405 260432674 997658254 763890765 963060594 853109391 978290580 836160528 940500830 723203109 725162052 207968629 229819144 579479433 925780619 554116169 717267782 666827223 747680926 125356549 975064061 759299047 882587583 451036167 861793425 203770767 991205760 52683130 374129969 921095332 970888252 762762131 784131279 770917468 857873907 293890728 933492190 37391689 891576006 366267507 386671248 528799082 550468260 37659449 217728757 609804707 879306297 18893216 541689767 920478891 947151932 789145063 792427904 787973098 921982464 625606667 845827891 840132793 953849848 869291656 971918087 907370434 931646138 848322337 995735897 272341513 958055184 431146447 985192649 91780884 401573337 566337126 834633874 56623929 843016530 922210399 950484268 362801192 547557888 136071278 459723033 776203965 864937346 785085362 843297199 532946271 656005722 270496018 910977515 904830065 949372214 344596405 685326926 45402338 211918417 384953185 736410489 280179560 443589496 925783611 954500032 759641464 845412213 633131154 976180580 984213563 989392508 987317054 991896654 944748327 949935439 985281957 990729814 869796222 972347710 136670495 492828731 312017551 642563932 540077071 930686052 113852193 761303029 979016211 994049257 101650267 236155544 135717621 794056881 622692779 984785183 892612797 920879601 786761390 832947890 233129978 904028455 357015830 527374644 605305082 903340029 224598667 716323768 146044530 542892273 546425120 890357311 309614079 940624227 429291331 448166345 695801946 920425644 368710451 688958237 92891045 627375160 801570968 955671739 317889316 895025191 211914799 775870045 828823381 987337232 854291067 875279439 21330917 162189504 49465919 546272624 292969601 324489640 441136079 526625594 237811592 911325231 174501335 306105463 201142340 446643396 198862039 722472333 827944330 942051627 409128331 674218206 394277322 962079356 909213083 988665545 814956780 858377197 912776690 974238854 791313911 889818613 555427203 972641837 53335235 483220164 650647431 755113653 73765325 141716489 522774434 854523920 560622753 895815553 319968394 894570311 681957677 956419182 881965396 936188281 508648496 944096418 416471968 598195648 431194505 977063858 860129079 992741455 12364245 724291097 132303671 516334542 42237074 107281118 703654752 709799936 578520231 617030670 511260999 755219511 747199217 821010316 332853735 373236874 723265927 856297871 987684633 991945413 631455443 993847336 145471428 163658305 473287719 688178853 259436031 622901439 828978190 920678890 814814227 900379636 244108918 811559527 321628797 450643510 636675658 768018444 367489340 728735308 479898399 841329393 114124521 798464556 565532852 574383828 111992612 879571068 559918229 968914044 13593767 745110899 43158612 617478414 304648607 680880728 269156242 758171921 856767219 902512460 929214082 941230866 914132699 995812079 935687554 979519507 981138666 982492449 631478734 829252938 105437944 132974269 272009149 684525602 390277189 612501439 225672580 921285105 629677230 766744341 294190669 550826198 529115451 947178193 677420592 839240595 233566938 683240329 103107133 383177492 906286207 989522909 14643826 365897131 229376748 734494720 135566304 333512539 60371311 577844773 770605138 834058834 48588784 838561270 566779150 737108675 850678203 973730592 503975635 948884096 332659746 386324886 479150683 986999837 502734533 784972585 661432836 764639693 309025351 970112576 74304896 372024734 480347899 484958025 833689811 998869727 732856026 913027649 703027122 784914701 26089677 49463077 459325227 761530673 963635892 986948879 43667859 443704909 773526742 789187725 340950798 723737047 735413114 832490517 699774243 845868022 954513378 991698612 661152127 902029020 778231810 925695039 600310681 631753868 499071400 711790698 477250172 605914432 621051957 911702201 961982956 978879451 734590135 862171672 803441142 819433650 403089670 685425912 519541999 546904295 708566862 957389713 458720362 824339897 604631345 758756235 831063342 987033234 77549379 982265680 984178803 996376409 809336160 953461938 175355336 283219309 507651213 998355499 437628406 458338676 902668053 936918483 389325040 608994461 662994805 901313550 985902767 996177833 816440638 906572102 262243802 590985814 470916173 954945574 736291846 916049054 707951569 751348905 279892371 332442167 576286816 864692697 923689458 949179133 354032748 647955346 477489982 545623989 761622048 961167667 478685135 700498683 32931790 169495009 566131238 819412442 76834399 159330970 507721563 751199328 273574671 714619247 331514223 585032065 223575759 969704377 682312553 836370142 861500369 982571700 804916706 929939469 178307475 972957327 522502325 954027825 879050615 880289736 861782727 971294393 745295017 916175492 634060245 786058318 724447118 990303078 673794311 921691351 265221490 935531411 613202937 755674766 593712289 774647231 999370386 999659425 51652991 439975239 354459686 979671795 515613391 744389122 109397540 768448457 103494945 196995855 758161537 820212061 839533248 975802640 957961051 986437155 683385415 856830617 598743315 984835340 557532758 763562218 363011910 751284542 228661884 358620507 433769635 516794719 996482627 997936981 594231380 706811907 150313635 901585960 307197972 748508180 947364044 975034424 409897553 500918404 975180391 980208625 159426550 844297922 723083641 886769665 708307256 946845623 389750659 730143696 271557083 815691704 423968823 619720587 306037729 406885034 598755971 953168224 478076432 899017662 48304827 634543904 758570439 843680349 809113250 981493192 288128114 318423500 647278904 707604413 605394798 736340378 421008397 621600886 730558650 966895404 925208785 991381829 654642756 777025169 876664075 942670899 703656644 926370561 502321066 699332599 618763617 689985128 918588498 999584111 780460215 832850816 639108559 702468285 686376005 757559557 563707455 745266181 773119382 882128258 228758665 924713519 883753553 920557109 940158424 978361966 746202907 989343858 717675281 869559630 622347310 953309565 80206433 241707700 612077002 784472135 891022953 912336463 320126952 778680101 337740847 815590993 628683091 689911710 198179328 213808418 204826587 882161308 99017887 903082442 978058181 990493601 524893065 841251843 65166035 434941461 591908522 726319287 930815579 955684915 819845002 961399177 417628328 436497028 448111253 967072574 829878759 887787963 680524000 870696386 580414236 600979040 330526859 619317470 27547637 879382477 59721962 342010930 693692794 851596044 675436477 891178098 178797239 257071007 534492248 837493842 287040749 745737530 307786317 889488186 764840485 769549417 456432097 844630622 771241545 972036785 435405461 656942792 342040826 681592821 640705331 813763134 565692636 927768768 462490836 973705032 420867490 613734536 634261174 886340609 46765209 62615940 323694728 725581271 595694861 840790132 462900470 909133981 879350046 903537375 200807131 755468785 500856346 885579346 696667106 937659046 435987299 594112230 712734881 931648141 467486321 704455453 33516733 276455603 161117119 340209479 120133622 482976528 481850184 747842857 636874899 721973389 100791644 937165383 135855080 441073030 983960128 988217254 802813043 937185186 683719389 909361834 605148713 843640450 924161638 985439466 873066274 990641672 465447640 753836060 39440026 213999923 331184417 531809203 725662936 991869743 852097771 928661521 42855897 782914409 922981271 950797628 794050574 827905951 535297015 836937061 889028174 966691877 876700225 891952610 434713890 914067866 912076483 941997543 737528818 905839708 905505127 960540921 981677006 991230697 298544404 620110019 694013626 907700949 652054862 687785383 753624637 800224212 92721044 234469455 277563603 529301887 34173050 986558937 785420335 947829721 399085982 935569465 449834139 613012029 32865839 659051347 390426529 859539841 421578966 898273664 817796723 860551248 411289385 877298192 374238372 914920881 277903255 307328784 64627961 139933215 574299452 915286336 225632697 268490893 315487757 998566848 529707731 748302072 485726555 808279438 716668278 972694440 422432247 914339516 575421468 925539662 551907518 799920294 492877054 760265863 197753794 443926661 437168345 856835705 77498495 295476280 509286648 773178162 270775140 760949117 466340891 865240176 681842861 909084185 504132527 864080923 381473825 892647724 604436274 834011993 900820068 977202683 574230040 765035964 328214474 471367469 999166299 999457773 429621930 761159612 652609156 979636783 311277223 522872230 107542515 323369872 916091530 971264999 110476254 200273389 561114329 702698508 835835748 877146298 839712733 953999909 264984324 963292215 20130033 868382913 140702181 374048772 933550236 972929222 860476988 937079420 386511924 636456441 680225198 721152981 139992939 503883362 482057319 796668110 606525455 719362133 110097152 530100988 841600582 903422926 289741821 602001360 556849110 996099046 206783561 345891708 584316191 914937447 650153442 843799466 694164956 706230409 58720212 917736894 10615769 176976201 344381552 963017776 944500567 953918840 475661983 918976196 866927787 887701764 762462531 997136347 207221498 952449305 958193256 994294581 593064272 802917979 101524894 323114609 36065579 757973384 689922354 960578680 431312031 451204409 523918030 944261497 184911140 915074375 416430363 958476183 917576405 991247762 258453186 760687272 728932372 812091310 963794112 994052191 795156408 928168253 98016887 941442323 565553368 762244490 73801800 794529749 77652433 620327948 602653763 869953083 695189397 869956275 170545157 260615845 462602735 687599589 397264694 630443655 804262985 824380974 806898559 886292943 156564245 284981172 139429474 272769598 997335536 998313596 222731913 734688416 941862885 985702042 706946148 758157708 471782921 926105046 976335216 989107235 750835593 946965155 844148796 854730412 919853961 982850739 441328608 571627855 58266472 877780960 285026458 893858583 6298238 642699693 847997032 955926249 948710888 964088618 756163108 972279749 909116838 960917515 103142307 367098120 859582367 992667807 544047821 916090841 354198553 692966526 17286393 733807193 20247443 489843096 620861916 996458678 921319639 963680901 678952620 892631963 306980198 735786053 466694257 517190629 568709516 823306696 669685904 983191820 296447833 960579156 385177278 889198448 134809122 194870327 64620176 528390923 130602101 158732652 539890896 875432529 436125628 863766242 781004536 888122401 959613169 987294954 419679036 584140196 617194065 714549245 910884031 982225001 115780400 403363919 144995928 387159740 309703483 641467773 955646992 960595892 465613945 715875044 954168189 975562560 265669556 450118793 971752674 995263712 331622210 556019749 347549475 455085665 207054238 609092896 906136247 937446909 615953683 717837782 261624686 833636363 900659620 924522588 188166724 315447400 318938780 855963845 505746219 867893341 556930046 682816657 703082889 880413736 273239217 363362228 887332651 903055161 731174072 786978264 968268194 968613780 147964493 900547105 600845847 996285595 63409430 818104287 328368537 993202286 372323324 993877631 998327386 999086862 106331661 435166286 294399230 295811949 250234570 996571265 343069439 410077611 451859110 863909245 372310671 891139367 553347552 790063930 93307229 798032759 979375413 998642113 481918006 938162012 554816781 772600365 484886256 530513287 154524363 329457697 259590259 549274727 76124328 369943675 860195761 902788399 155846353 517294434 89007180 935728429 501278418 727020844 954577604 995709844 680471162 968274224 231905197 970293724 922801837 946691988 757550445 835771524 854959168 971437811 902866867 927370122 902945711 930043865 665145552 862116521 50785632 597669296 471567013 497960162 893653808 999350668 43948332 169565806 372540483 950462414 300171682 989869673 290375294 734917390 591798 578530357 663106087 925998472 39448247 896004787 503976596 695116984 96415841 409807895 72316507 604034393 459719569 739384653 837253606 869054442 10384333 290874250 528361995 548678163 390637470 742007729 720459839 918317758 407246315 907994317 40736187 774040840 188957326 533021085 480355032 535339056 988306781 999981318 444830553 928429745 877127424 935270158 652392 632746111 811549112 821589249 696774345 784515205 590348414 640695804 886304751 981566945 862432646 916250117 427992609 512347984 330188413 514555906 740820562 797482043 433279260 501509657 882293965 918673434 20462940 555399986 433863593 494386733 705182109 789042086 75291307 863946061 783661478 895398154 680853760 983769880 615512197 991766671 350363576 412626830 598208208 686743634 405175694 729734869 774254832 882291356 920430036 963976472 401930969 611747571 796517315 815640606 919969906 952292042 320033922 559374430 793531923 869002691 263106185 473525478 391400296 933448596 651601736 739859519 40530903 869540154 440144759 660360801 341887488 755364650 38956966 335531708 123718582 377608162 789454738 811212818 361113923 562653481 214965277 457486559 806038539 892832716 844861030 987951665 458583345 510170708 96784878 470221991 723318719 991734085 759372387 866071329 272752947 590422583 663259078 709885614 256971459 265271934 315309657 739389329 988135128 994701430 76720273 337743870 222703344 409106865 380352722 967521558 706258678 902920379 35310830 791457350 754713018 796839513 888115100 950091128 711789268 917714103 287911549 739202948 937944800 968303615 937173239 942750642 445888068 640869889 647205794 880420546 657020985 879418194 318142111 569349743 265640097 407461556 516149884 824457254 654912469 757779244 648139895 959018575 297489032 847695916 961694763 987365675 395702199 397515354 161222763 292982602 501993588 610476732 830773801 847655138 160114172 595967430 763252640 772713018 1260167 883136624 493785371 551492530 89362633 739647677 136663732 336621529 974717817 979738337 513856206 839584551 60076040 251453607 789777712 855462392 494227712 605068649 559674891 824577798 140575085 880625693 501759260 791724819 188470112 985908385 975888455 978528441 959560463 976644698 82784144 675036406 945298313 993836441 176071726 300824461 471055462 545716898 497212101 669033167 483111253 568579574 37928415 786715335 565554528 765130679 657696436 708500330 791722436 893927454 814620422 946281466 267243764 444273907 92997737 406576718 494808556 601697200 15120680 662665450 395212159 950614023 959241805 970867103 732726350 918813778 655859925 901499754 349679961 758104957 145162947 722972083 859098846 912028183 364749081 587107822 860554503 999619011 807715653 912785196 820314399 858934247 757627608 870940434 444086754 941461296 355903299 751664057 690346354 984384980 799890507 995239329 167668149 480518727 456744630 938425157 623499963 887095401 408049417 854983043 566495551 583318191 571411231 884038582 181686198 380050202 470159338 911831676 591835162 871158342 369250797 563115504 281865112 791006693 222260462 305427952 973297776 997648527 266030376 530757433 892310667 947617014 277959486 889344804 858201291 893930974 342954527 748765562 632054460 851092895 761036788 916795967 565640964 713733663 556306616 802245222 433524726 589905554 132830224 230436417 558211989 689750669 360251108 669378468 459216638 975609366 422428830 659240872 372446761 536280948 834096405 960340770 761350552 978467379 495683556 504866054 471088729 537346200 34075528 798447900 303196033 402105216 956051843 972368549 210767321 375059220 960367874 962146481 61320975 108913911 133997056 456229118 998336121 998782286 82332580 112399013 928920067 999223343 22624999 171978790 408351934 828940414 323213340 673892285 392873152 923241770 55881428 905534459 261751206 318529470 124737311 158021163 432853282 720812051 386371683 884525040 359705918 664711804 5294444 378282040 110253993 520565463 413119843 627481257 785289182 994581670 119517077 856650771 864922001 889962412 740118461 746417347 972108512 999764525 775332371 831937540 718396763 880449513 501695294 996786583 978074236 997556510 839803192 998125030 480036048 916788489 240211501 613776844 415022962 648387987 736124419 787829093 322016766 900550727 874864166 936150706 353383014 955699160 288148288 846483691 324173004 798958735 697532612 948142258 608150697 882796306 15582848 403560585 579432070 754424774 771873158 789840447 786636657 857553444 194654729 306100553 730050095 803501529 992731873 995592761 901582126 964244376 208757934 359788489 45051982 103191651 686524497 742784033 870242977 990194484 657955711 677780506 678184350 711640962 139509603 523081538 781531475 864656977 700695725 948505284 637141904 838900685 542769260 853466909 123110126 777842173 195499479 741714161 138771997 869376647 778454904 907601021 752385489 986435158 841786446 947416986 808865015 996400939 568222370 828973737 196588459 551901583 537885757 690727935 158407797 753551498 687521089 795699694 23333197 700322745 764110265 875875640 724249198 734653426 978293898 985210822 783517280 799798439 4225036 797784069 206991660 448431906 66826296 538787875 910136204 945657476 366533004 810179819 790028907 869750703 34826455 585828422 441491327 912268112 33057305 881952423 299281025 757500291 488218065 834234637 494254062 905698053 459068441 480500845 758089094 879098358 51999963 327189014 248882721 465621426 16190674 307855221 231478809 246630044 187098724 215860064 758230815 767522782 677853625 891799269 123706223 350144915 857529200 994430604 650413257 860517390 463037945 519653052 351951506 378089051 136153669 398203946 350033080 481447178 389728577 881391253 284254883 316780974 785258815 869275841 902176045 993839086 332124570 392559083 728606841 885387350 731757942 799992217 153190560 672960772 360184974 430200849 787730810 960484052 771444858 910226948 997297965 997660794 632771595 954722672 245268387 862793481 93006067 732098557 844533944 909681870 356133041 886977563 721117851 915143362 900088432 918621285 68143184 731244053 660114809 665336013 567416987 932244729 668135152 720510601 934351671 976561168 68931109 245393874 169320065 821411196 307578413 747548532 151332298 811963523 587649273 887388452 472118600 875181847 744814805 976850107 539683048 895676774 756088678 966779215 566098027 703824279 110989530 946662959 908029161 984075669 679487231 959483468 904901896 975522028 237799638 459069714 413374382 832004277 615062424 993441426 315498907 743266384 772530258 955935836 41079927 527156184 762287981 905949681 554331973 832472191 759372872 855278995 445980287 837615199 522192210 676922078 286827205 756807293 778632564 903874180 679814476 821805035 929941829 993335588 419298832 551430648 991077259 994883867 20076755 436995772 134856003 711705131 690341681 781289131 189979580 322623754 916296224 979506136 966724309 998681229 186973754 386513708 276088668 667134978 600679182 954671154 15996070 29452062 568677893 797868640 767515059 893326339 1503164 301007320 35123874 397576083 524299645 915464028 101816435 608666388 223767000 507508824 327755576 367278782 618763260 639812767 396188838 551515943 383679035 940623670 165551973 670878738 656313861 895280166 756229372 899363231 255245621 702220689 793960368 918935441 818681239 843965262 818235418 823518154 194343709 994935705 293887609 943378940 536230456 813217285 719517326 870419407 259543687 620092736 855651703 898330105 999494664 999777296 735607657 881775227 920694824 932552854 798318269 919582111 126777126 381956428 603222288 956708968 735591356 775348545 152407599 601331598 698775494 842094795 164020482 946337908 660140041 683648890 21657025 103339566 12568214 29519967 876676430 977088470 474658457 707654908 511107854 929015166 843586076 929043781 605634946 648526397 303164766 405755508 440429609 698787421 486419104 877771008 996203436 998474854 865437859 980657766 551622261 821063166 349092476 748216704 68905023 126079788 564064020 985114205 119695275 208027646 395324210 978513503 717373355 913279338 813409316 894767501 137716914 441930502 818181539 898363308 85965740 995649859 68066377 583148586 452066810 812980913 699995185 758270639 546118197 973203302 79678939 576869666 638740341 724812969 106742863 827532054 810000887 831513459 57905305 284593520 297891625 953219653 763612247 927245002 534463107 697102871 456023345 739378701 920575105 991336115 149782319 738354297 391451420 865159331 484600174 537817870 98263964 831910741 14273391 529623519 991698343 997905919 803409950 904539796 277121440 281124019 368024958 509428479 576178657 817764368 527280760 681367814 797434736 812266832 596508589 880324672 800473206 922125315 273936512 302290415 304463347 362401095 792218139 929676831 716364295 898227201 296694408 706851094 548057652 998408937 838190265 931326772 277240998 321367226 189379417 199687542 745791811 973420040 76126854 978230894 337141822 919070021 153884477 500929412 888176804 893413231 937683241 984732275 20442015 404315849 355810387 945241842 610957153 898454758 148345336 874928932 586865812 607071327 407646354 872456079 44296674 971234228 926378209 994993476 934187232 989150146 305071973 981474307 912997482 966856009 892405901 903918102 700755921 854777235 63005512 710023020 130324780 275196629 742612925 810911816 429632401 490640343 770380526 802878616 413379498 623683348 514140373 540438106 813573951 835844477 861743444 975111729 524287855 625950117 555797541 658781335 990950734 997878739 810929426 897516092 94448662 462808033 811405522 957668464 703821315 829423699 531423097 804096481 769657276 811074634 333770809 661763192 271980063 516186858 246711888 957769039 10690725 592209566 28045238 126259308 403257337 804854934 706135605 952213962 427572831 463472735 461069503 993218248 383583264 660607383 319997792 664505347 299301827 648391384 732671275 999402704 852831639 941282525 317189188 988053894 164107352 578032722 549207755 571037693 235467085 894872275 139041807 937216998 141500472 704328865 306948363 873394773 302697657 343089222 646473933 722304151 694277405 930370825 994155959 999264672 973074144 994980370 466940001 588394982 584100039 652995146 866964469 981648143 743888358 924475678 851163541 873685403 232711237 542727307 253256740 593909411 42665091 62383706 865240896 876289081 664918551 772511477 912703665 999402559 496566128 857977383 518825445 550430953 627018457 706078557 144286300 360809456 281677106 446098598 296024363 723875963 82438491 253280009 741703132 821227101 547496790 918534365 717620161 755363934 613232302 891128797 807477841 866158451 546411435 855616350 15096266 822073222 749903579 873783895 177123100 951318489 815150923 981648272 63557660 321323543 519696246 591981140 813070526 996859048 593725329 708480582 328077690 701777838 442926961 658437266 868050167 947189688 536994806 954347497 693065336 883133751 418695277 743880017 173551772 549380921 352767330 565055005 489528706 837933703 136998284 539610288 484631089 747871734 419911818 931234043 361845074 829035421 384987136 877180780 248101878 809115440 943655377 978187291 55666390 760289404 571787446 590876149 118044200 865591572 572098693 715426945 855781259 925823491 625688781 638286568 672068211 759039200 318949617 944382618 889969152 890275951 372561083 934001077 678147627 866485483 752274600 790841456 259420382 959515075 339820023 458446451 620776792 903175092 106578112 550787892 242793070 390132364 311000085 734730397 512668242 910811173 316634470 909841069 99787542 524672647 365752496 611453075 450471195 494381356 948656831 980429113 37981543 142160456 806572739 876186487 667022229 983982202 715563139 875544512 653135323 973559915 623630286 736269112 504117641 967658532 179790035 238018857 136170876 393821693 436512763 992741001 163208612 748975936 700676027 887217005 228243099 640333314 884554221 960488722 664465915 850095948 962511922 962558540 579303829 841116707 77026213 567522857 74134587 419575322 938538356 953532511 502291347 658044843 127719686 387011020 10667268 153400072 246481024 713411596 774029752 844931956 681783863 908306719 934003542 971874453 844749332 881195028 993021326 995716891 937039116 974448065 405525702 426825413 384533051 718408803 680679175 915691417 937844956 963488998 181940769 411457632 215412169 367910001 703745366 714703589 81243999 479509392 213357335 753241995 189869721 656221500 38290752 954982865 328978021 416605402 751947635 878141981 177440651 877633623 861094016 983758212 245967772 314868578 116840817 785415675 846542560 969002909 658252176 927822513 162739861 404187427 495100026 584597647 876653656 993922665 892226504 937964486 112871760 419051887 511288833 814631391 197089485 749108053 578720699 702842376 550691490 845573533 328398432 438120562 906486044 913665028 540086282 622034957 698529269 921417505 277639474 835779267 306733984 619701147 837256398 849785902 9040497 319061012 521768744 579730164 919944118 922762938 3062742 666720935 84802554 338321300 926690621 942768553 88807154 411845982 909566868 993732052 392057943 624778323 339090000 553092123 528165172 648868838 886720704 921344534 229230086 700944194 68435814 189046077 987534895 999401780 100422308 483228622 491648003 672835243 60287027 157089383 417272293 971986001 788239259 900842882 134525380 216986753 27310399 725523192 596845864 708704205 239285860 262090223 235169325 848717638 893833606 979024112 704454356 840256953 529241257 872742597 997809826 999492119 184206123 685370186 875214533 962557513 51223298 155596340 316116061 744543185 741309522 755506383 967860999 997456616 375826969 931002108 817773256 961066641 498523114 904115483 233857870 585217466 278329747 322616981 239549902 286618795 716239866 996182702 388559552 818506233 706569768 895112125 872731098 974827728 292616124 977751498 589029322 932420780 115306129 256746378 474284786 908443087 106244919 408536411 459545787 488826047 883636359 903285756 77683599 725688744 537383072 732045781 329328054 937926799 112186795 187906137 274117196 578935586 584298817 847508271 590314257 641240425 348077944 855138313 726248090 772840447 781301896 905974534 131984517 808965686 150102300 244389779 942273587 977440707 926159911 949077606 854887316 991312409 849462648 911998956 331606999 913386237 274497792 291203131 702933041 789878742 630346458 771774550 303089483 767182589 39580269 348217417 792167045 823172868 618903487 646787107 879936663 909351975 787666362 805834968 799844636 807324767 630417144 922200241 592119670 967298766 148423824 559993783 925824142 940194084 464225367 933288426 160355914 499871302 510356714 666083494 257019063 342226084 38578495 512760161 793776037 831075664 650654703 816379258 966157381 997540126 321002159 978591020 914769282 969971461 190622687 584765769 820403131 836277291 453939173 766267440 941978987 953669381 822631388 889875772 76146792 238539006 960707577 963220954 54690064 410599231 276061667 622526266 971691473 978811266 261856950 356712331 906918739 942359103 978786502 999349618 13827878 996664191 910455403 925209630 564098564 778938635 132886881 365175686 465794110 661652353 788176792 806411588 317533205 876076227 909825394 955437588 22275484 125526830 569480327 973706171 768780130 880054075 915876672 979311011 290545677 856840905 720651800 791740976 962657588 974240629 705036962 885752909 691970393 991705412 600299175 789256995 424781653 822532600 270264718 947975696 927660479 996101642 181654042 402037432 720067755 761603900 980430223 994890474 445012728 459031992 551966469 623000950 751172319 953419611 748204473 876957940 215029871 867087408 829148199 871930112 1955558 817629742 675344416 817667755 10684382 54820990 999003906 999091669 283235444 798210966 259150841 979927511 890264731 980074270 756978286 983569645 106764849 214338407 216261173 394080800 420549886 756555715 580830366 705210168 117863919 632521536 320528326 458222944 102944791 983647291 283319440 633058106 595767308 668720346 190988854 430118621 158666995 735781292 570015362 992360643 626305083 879469921 741452443 815675169 347473162 927606089 79681646 726534097 187190797 643653372 817035463 883450511 215732253 999113074 888677756 900119412 291817132 661411723 237654217 943495886 135783519 748481158 416640407 524845738 957997243 992735106 131209668 203639463 691396318 694111753 340444647 411857656 35002633 932150547 233672365 798474361 736543763 753074227 531127650 943196439 395707916 911138689 633556514 701974139 103882853 109355716 417587528 629291202 735590947 797284916 545636230 937796096 516211365 760085478 409686201 699802332 948470222 986326189 667870419 965373497 930823695 937504868 909757574 927700751 251360710 427492989 668935506 702785047 849689547 857862188 917946950 947933739 207792502 358145997 845362172 912190120 511143233 864314130 565398196 687747890 771599133 960083721 433244957 711803039 158552323 640465420 966937244 993403525 358973147 535707449 650378556 902079957 454500449 948994806 784052935 787109901 533668079 554676150 335054687 853706596 159797534 814267404 748557187 861469721 568318689 998265291 144919030 916630175 535809435 991358569 192479975 520913070 146453843 225035901 160689335 385112881 572333237 922329923 87900013 399332571 742865467 837912272 736455332 839852697 670814415 957048284 381831834 813528089 570066081 836442195 566805809 900624148 331500657 520246911 640601455 988888942 353061308 925389027 487432278 663062542 394061238 870058405 494171954 614547068 175656174 880363564 585139858 800789048 849898911 924946827 746725483 919902603 616258792 991391721 375532655 875439298 156675425 673892964 466618382 662784299 588341990 861093554 544653488 705484304 358454859 734971187 987448335 991648439 214066356 978944076 854605291 945808626 195635410 270383100 564498792 792605636 966607787 979154738 846735911 998720340 620422524 872174677 774928481 833340132 957464138 957887414 670635720 816987677 830665651 919827661 256378389 517660522 959178169 973594791 397216184 901512786 531127056 988832901 209451235 881359978 124262719 626257653 484792563 754834018 992373054 999250451 585738707 718213679 258675206 478849985 721253704 903514506 248230596 279663682 874963123 973331278 700791626 935456224 300712423 668036191 533360490 997813905 499467449 794749470 526444592 914608344 90402479 879427336 184258473 310060731 361391192 739722173 290046520 296872955 283688642 337593714 132537980 410607614 232826916 745287149 168689303 815259271 612746117 821125661 93718918 533665724 145236344 571131422 895850115 984954607 806653679 845966534 15230192 734358623 3838241 596899639 767915901 940732918 22673801 647246155 388584723 783382428 150150401 583359626 929981154 980195612 965508298 966996441 977252906 984083392 895449468 902068321 360398918 488802159 436695105 582194021 426718615 790442460 755905653 921913509 519645265 679484585 952598206 998807172 126482942 374814025 940242452 990952203 857834908 910410651 677241677 974630513 363803614 726145036 851869412 981769818 647741278 981259594 84849344 923097100 10451780 856859484 81029693 250510446 366400465 692877929 669507591 718573223 453761149 691342552 136605845 480321621 653056200 901492720 850952723 924446311 823476055 877752711 857921165 904362063 677979481 735696302 950285332 963377550 572274657 869452790 638779112 712108969 918019034 976100615 350736823 464318888 117049202 179575187 127786555 594017667 472435977 983886384 270765663 457113505 341307279 390371176 256796744 886741927 270081627 769874522 865929847 973023724 536514945 682734770 579406309 863782795 919385947 923125630 992463738 998283798 544669690 672055841 398055813 667837606 56624946 552554488 823272543 919706215 392735364 742540344 209390357 462744108 753476372 924078156 517892844 519675851 221024015 848325594 514804751 781455119 719144381 964647249 12627241 702267052 520015535 644598435 117735086 629201408 372721618 591639323 296499897 992693343 976719340 996572425 844190792 910907298 572392556 781569707 713149510 762200110 340546744 826682826 34488315 653489576 881774568 996482541 2076388 974994119 632827533 652979159 664232997 728648925 278405165 661224716 777657159 966022109 665263067 815137587 318464435 772526759 794120113 971786562 721190193 936363819 43528810 614023749 20911653 163902836 377817700 915520658 125570961 722425605 566957242 776955277 177481318 791352327 913862951 957744400 643619091 683140732 392419901 469959265 694139355 992581463 421755473 529227091 220041758 467250937 442334374 490858111 329925981 776142590 595457159 802122438 549462938 865114694 523108706 992171437 750713678 776210950 728559609 799982724 143168579 300274483 83536799 593120591 916780216 937604546 798567039 806427024 919597100 968564121 683056508 740228223 224169906 835553448 422772507 493863376 812351335 894508249 452470234 684002703 908213931 932337631 182131732 580670253 543110251 829890454 581968994 897831732 380684203 457760115 562244782 648914366 422177782 494254632 686419080 823193860 569962941 753849070 247217417 758160172 914220678 914271388 173520437 443886096 357955856 922344350 890004457 997012531 652350569 914628807 422580585 534013320 737692107 835398149 648576265 796740638 197704426 502173902 497107102 872235091 171603002 421924231 895733288 946319415 836924178 879315783 673261865 940914664 653707438 830916763 875862478 941685346 395923059 797005883 873528667 903519480 415549498 706919888 573669073 710817435 286977302 811608183 759035536 792246453 364051504 876144419 278040215 673929401 843652792 902231717 942929935 989035777 466420336 827973645 70134095 879918012 800990492 904307644 272604735 984478034 913733468 990261770 559890542 880186155 15710689 848488456 242052987 384525905 371426592 531276896 931586011 946410649 683620428 886165597 571860071 789018729 136305419 923499007 173625150 701772307 508244761 790180456 618828867 843082185 724774515 826978368 148737965 890114927 131783809 671156999 59195747 374918162 319148425 747413892 135720249 286768902 963336932 975032122 801892999 837058210 789428010 790962737 894766968 932956540 6199117 896953478 381653540 784923167 296070494 981059159 750713802 890176178 739182914 754341485 881580542 936353056 419625692 450152345 632602489 824124135 106389470 607528647 209148786 800992778 184792627 623211375 629565891 889179336 809519377 845379282 29440345 815398522 667626775 940027594 955653076 995273674 82633411 557821197 106745383 426871285 132403194 720564223 539774677 632140625 501856505 913039066 865785145 901536270 347810576 821652895 289800948 942285816 140432822 790508372 540877153 585956872 285020612 845423744 91307924 903475631 50270054 68807158 364531547 620880081 510727501 538339748 751818246 857452509 752583313 892559883 147184930 197956878 846908186 867694232 4452209 445862366 373769994 410290343 95122294 286086085 224809860 901381348 71628903 576260610 622948746 883104895 763933085 780439109 418396857 489875691 156961924 329556175 527987621 683518892 529448489 866937237 431328539 967285966 331920567 778529578 679716853 901613139 498056318 534349879 847740074 997090181 947113147 961173833 908201820 923497381 185108779 823415530 24576809 928453322 98339541 992405966 338830625 606713108 548895693 864090834 924612926 966043881 42833939 360874640 172403885 660457095 577546319 701982895 604456668 845381583 844302431 895732600 37885552 144157367 911839882 959052504 433193987 597191726 366543921 627693344 348027539 545430946 903997433 991957687 98340833 334942357 377885070 986747153 315056608 849388645 482752133 726105734 380601904 932291759 716874705 885535625 710410933 884146339 653685328 886741632 452598572 492695543 758260811 889939322 332220702 408147426 361991108 754954324 773325133 960342210 933679525 941407688 708992928 787971430 857719816 958538002 9825114 696548978 468906112 702900142 505114467 589820935 746997541 800671903 864784282 929986907 903304366 939554307 77291375 962906214 984808271 991434625 502662970 909574363 482599067 971821875 745824664 797269203 467049367 601309008 35135934 476604583 290981208 662184352 400781920 736038294 691822954 695763386 126527895 939012498 372590153 876083109 51669185 447645591 688442651 995689212 220190555 498171410 626101140 978920852 377211100 533758710 523584540 726582418 256752871 816599303 860254464 943617501 364847511 520867107 48990283 575033716 631288746 898199240 24938435 46399417 968436773 999710710 109606645 384184889 721327185 820346725 821601432 849150022 293905312 651634857 159980990 301313429 609486102 931063399 113421340 190113405 518393618 523592362 221462867 558389913 228464668 457830843 165572770 582703871 828740960 847606819 524017419 915964989 97398848 881610962 958616314 974453214 569831396 994630332 707027919 910930961 696905720 795178647 605205791 848690950 518619503 702616393 969049265 979589019 937205557 989752514 804387606 976950978 654637863 792044671 371603236 828112580 438494201 999454762 412030353 661549839 426133005 897582080 821255580 897588694 989973084 994305334 190622764 859341414 379692552 558981024 477891179 850923502 706110912 941418067 386786431 424676883 537260151 832386613 43052320 732981200 166505145 487182604 821409981 836061770 467241732 817440295 324921222 393368974 995759562 998561228 230999372 364894033 406464295 635659295 521774447 919421619 426291172 935593395 451811609 814785983 810220437 811908517 263644763 296905815 23386309 629876928 938394726 959302247 514397987 888628308 672439466 888734183 513017905 829070957 325128234 455372432 516736594 916395259 734953725 917650312 575304324 875231529 207410659 769500109 579877194 766685479 6582084 552240070 176694678 263126135 67563893 486279064 966334195 972803323 376568209 823112612 477540704 722140644 87836983 428482783 12217264 933547166 698689035 979362442 211184013 326017012 215375682 633472545 962520323 968692798 170759624 543406378 583072737 845637795 87419615 995505419 440319119 617624279 692772924 778430972 269569606 469562917 919493472 985430910 580236142 810501333 550777461 611499165 628169447 786215897 240210965 885747341 810081617 834444403 349246677 669548895 862521683 868893987 53165341 160290867 508266149 766209213 216164597 582417666 303869445 672981864 181196357 343322069 751237987 878549228 508633566 972905473 461647948 828982374 214765018 966886043 327276191 658742677 282476043 298886231 873605032 888930094 635157486 943497869 970150914 992637238 835581456 980375744 40725439 973834017 30210760 848128538 338745254 725131232 930221645 933308266 4840324 973391583 769835369 857935900 960837485 968182877 494452951 561594208 367346870 469493306 388027504 946022626 813163433 971723436 899060351 921367374 901636197 912536929 129710035 568950397 277886968 835201974 174996238 263412636 650818066 761272188 799282892 931881186 42595458 901386971 47788089 690717264 273016300 853415011 255976953 364958727 189636314 276500581 758624845 843702821 838173003 945860073 547351155 775648277 997838146 999993474 107076726 568644337 842618573 961546326 909665400 933876510 78250422 810816124 440552864 675870654 712211160 982671912 439342524 760422239 825308732 924750297 696525551 938731135 781327814 891388786 470760730 998699140 505336896 877206404 54202342 787850827 22703138 736249998 362316509 427002586 415890907 483972220 453706868 591952982 423441351 629912196 952578538 993576327 534539076 918153600 691079246 962820361 952969522 996369669 609735460 890301578 925757747 993278376 134990936 474544184 763297052 785479118 995750966 996124407 780328250 902786051 623035581 942619062 57367526 277165440 125128928 636458065 33617481 725917972 879157146 946760864 46410715 609929334 686701853 726474311 448145933 745395113 481274953 644113086 138574938 984095881 861760429 948892465 71279145 345313982 221858056 365756117 705910989 923725645 607258856 830057727 898578251 921201387 77331636 679236395 879033672 968377938 901467566 945407948 364696587 662075140 238215738 375814134 367210388 669010855 264064375 668209824 164277739 876797934 377271753 667842070 910846641 965496080 306195713 620136784 278246459 676114319 444475299 564382466 681607943 856421661 563031472 696214184 973378245 998276172 505048180 677494849 710341492 711893906 696436659 728161123 707622406 935002657 286640310 605813355 203077313 759658070 2300499 496610075 264617075 904703000 581561696 710235128 183128165 871344744 557516684 799100295 773977507 968800159 361828047 898038762 659862965 968317369 354013465 396879529 209716992 645218361 259915954 941362408 155880874 728904338 959079863 973206501 962220698 995776548 924606312 972711966 701527605 952840524 558643369 833571592 540374231 832930741 930274891 952252188 366804849 553506694 559111703 587346769 123326666 732745034 782739060 845173606 438332629 689715971 891740083 923523744 296607872 618922018 693666688 778591654 1486262 444154282 210484025 482201900 788384384 994492823 965650551 985423660 442813558 968567116 839983 942152961 415072814 703697007 681631012 722732263 662016946 674586212 951712262 953789295 927498952 977294377 296278897 869648210 358302335 496344924 249941486 776094135 406283570 597871249 697179597 817477790 324088587 811913060 412273590 510902007 677051016 694228497 943888358 954092163 133102141 602886979 63138280 299656864 229719982 759033203 941059069 999007752 598798775 728646873 855693513 950058476 950954845 998302680 948246704 980037916 160699863 635502315 502585227 744920133 290792982 611296932 974596092 987441125 269178110 361220987 506964781 660979253 138348195 413554352 814606746 878630283 347117656 829251944 324390118 387594540 882409015 973852229 659806487 774405036 439398324 492385397 3961723 800053911 606609688 826323008 849678577 863788691 256657068 903785358 756500157 934341153 641525799 754674535 748036165 885806755 218673031 908486321 442372586 726833662 618312572 821285966 83233957 587808172 618584193 869168404 623396645 992052595 584182872 915892909 628418939 802547262 322927391 323377805 925706884 929100522 99787312 821365350 221936318 491339363 360976355 639076193 528148560 607711313 980374060 985431905 885160227 923149579 36858427 576324177 388941584 552994438 140280014 572011152 2753678 8865125 303360880 748977209 504461323 679850244 911256359 966508728 656222745 809903101 330265344 620039131 435539160 626592892 700581727 855941515 942647988 982421520 740863658 935534281 615839497 788260981 560369417 861724868 460153718 727245341 186131028 558995997 464494662 997693387 786845038 906923374 342688343 509233337 205947558 684369201 816747468 835465259 146876019 353289712 463038648 621795770 130879653 232866374 863575396 906440542 550618518 612932296 242210289 317966480 685561491 996852407 778257543 835666602 501277134 650932650 593997962 767086904 312951832 907449139 187030537 983258022 722604665 871478461 963003449 988978578 220724125 996264546 441036883 718424381 80403369 459008725 260859757 470075547 368085270 567495973 82663306 645453694 638882637 688446160 447397521 857958260 585182255 715466378 231107980 812439437 297595561 640632192 269814241 725614047 777661883 876484354 458297553 525314588 314792288 942303085 823842014 942186900 242920082 965400215 296097639 471418193 770323049 933528897 689492863 709666470 253901618 589076355 258069598 851542214 881868868 938141901 721779327 988498064 699796329 973439020 336459578 627357006 558130384 718621520 231983413 944680190 740513663 814670214 444643421 790203949 77590772 156991992 153208569 603057998 120274436 971793041 30355475 813988231 683138208 846200283 289642826 900104040 517794150 953282362 826132382 896739551 150172146 346444895 718996908 730048455 393786199 399476041 329162377 964631020 2574442 908738357 231134610 954392410 261727598 946703659 180023349 773978062 857656737 888455873 861428511 942762091 237080894 748590976 341348525 796673206 810358372 937123834 803124629 806832045 698396621 706582045 889352471 966013394 363754886 410632705 482079410 557037671 556429831 952209912 184060131 946193524 622950749 723197603 641821391 745273839 208035060 569003092 686719258 706304642 777373229 959085368 720969410 918190922 132027633 440596565 125216685 267686530 549263420 805695719 517662683 541435732 439306420 563511873 523870912 565451347 757089042 778982470 173891327 396897247 138007880 602780900 343123980 477965819 36797338 944551968 938357516 942431508 336555820 774580062 523136610 984563458 694722994 895336944 913399179 914141676 746416658 893247923 77965883 779956536 849445984 872883447 186196578 286883874 144614060 289168211 605688180 904960222 138704430 288872884 863177885 891310862 716095767 916930951 445271125 673844073 796071242 890826534 783604447 967125305 598478039 920104019 232909135 899382462 580708884 619455608 718573440 893637720 48442578 433140944 947105661 986838604 141975702 762163372 492052624 845380166 647067753 936766500 475977193 711944912 442184238 711350690 94647127 685230380 889433813 985253215 467092723 558023354 306937793 500763768 22830192 491232866 391502130 893238794 434752184 811005151 854841494 906967843 968360123 971294916 154771043 803359008 902843951 977777613 506902247 759194683 122404579 447484283 760186628 950063184 520436938 738846139 850042753 976848490 830097323 967056247 416853730 549408986 405853081 692467924 284462636 653999442 804954234 963338085 539667227 918912970 122570374 374682899 705394474 792055178 476093449 575344819 397163771 641110599 678892249 827246703 420215771 749538399 809218011 939451182 778992135 918936370 66462750 491506267 235860607 438596056 929684920 961657750 247647143 902190666 689862553 998146986 848750401 924705766 686736964 783771648 332875924 874911069 301750768 364233703 635279515 649095384 957156401 962594730 326822887 591289262 674203175 815764650 165201550 776646622 467871483 661585655 20392223 95723060 848416094 995767195 554136748 854365176 424263975 996272781 621764847 814024444 341082877 715226778 819351138 869743683 548094524 745387181 768135405 880535433 496925677 661628580 668542008 843955867 774772205 862213442 1500671 214145123 605354791 658567260 829789417 925176679 280144447 915415905 916272468 935428868 484742567 583509092 579295162 817017113 96240971 186244405 867874243 929717252 514784763 854194432 166723537 520779652 942959643 983090306 524787233 815993825 836704280 982861313 673635256 930445866 636721590 975112280 328639130 871860180 51572739 672536124 476005207 676563897 456166572 465144819 347758471 517137994 748717815 932379029 301522539 403182929 98627707 772408900 121287604 544330285 195161866 672244305 122670865 845913882 749160672 867797730 498146352 543890092 838203825 945188290 945989722 967311715 670209038 715873823 316987740 478090559 754508406 793428739 845663327 908709164 423212944 442271741 897379106 961032073 690684802 786825790 913624692 987811154 801444170 828006259 504284430 692051073 527264320 811249932 232104944 998373395 598957027 643905837 987850626 992254802 306963292 684881582 27979538 605044175 625394507 634307599 313640127 550083847 87479950 882824286 204487632 640482962 245696601 638827587 535770762 749625063 975110010 990740666 881097560 900457925 834981708 977385195 550156235 754550632 626146179 665247201 888874275 889528931 192793708 690709145 186133875 958906801 825563436 917473678 794317583 838523775 76330220 624123034 254190996 501968715 158950369 361639488 312432022 747810883 34915143 331822019 727622709 831116737 160687878 557480899 937654743 999336049 755802868 809613404 85511541 550110066 436187924 539756761 156388016 386776218 929548162 990713570 543826671 770499664 393117253 802861186 186433216 337976973 190913790 366242604 773349808 845443795 202585787 896125803 662392207 776435336 766851008 900773447 705965295 972229173 958641436 970453333 530004344 861498602 525816722 882242497 88836755 243748849 698288427 706308974 711964371 984969803 784321134 841416888 919678722 935856479 388474900 804328328 143757291 161004577 979410927 982071395 127001413 799378654 953531263 963019123 56622220 317504102 880083485 918081707 548355281 995030843 414896014 897867909 882339643 906521515 16559188 917140030 150367885 787316552 791682917 933445350 284519544 534959477 498310272 563482709 847202090 995740165 935202217 946238356 179718778 664377086 664547755 732704631 52453481 134017997 60140314 146355473 748803840 871002603 316099093 825580379 493894848 804114524 111575962 568593853 558752850 775239301 229413873 396459103 174849604 774701274 848322316 957477653 930499308 983276649 604904368 972488148 342791756 659165317 238775099 969400554 823018876 967028787 570292314 923600593 448617084 881176697 301175598 968300642 257104056 556842155 52845010 782973753 903286263 918188370 616347521 850834825 982714393 988886892 38163792 638833188 4316681 818471486 353743503 683500440 435764190 971230551 93299702 563554366 142831762 978939575 70929102 910964441 153186391 267761103 174056515 235962400 523050798 899124354 839739414 963613833 506749617 613458128 400024467 963330864 396939345 691025602 832661268 888122141 777518685 993117985 696768210 805066277 414426556 952936294 533177058 753837762 792399991 944543848 526649919 680312093 160589830 921882980 207776956 739549994 40554948 945185561 758287106 993873530 233337501 915361779 179501141 839425260 547715493 783437593 214421416 998236635 82868538 114711317 209508496 244110799 517154546 827505976 454360165 818568285 354205844 810136349 162884286 912492942 7872164 908743047 154906248 560603731 998811072 998896198 418584207 643931266 403470959 517258971 184466644 776229692 38385650 429530317 756369864 775339530 306498853 367140113 464557834 835070553 497544078 747131476 909867568 960255740 877953320 995898544 106216453 532346981 732178541 777779848 63767462 187624515 784588098 856652209 92162769 593633528 469900542 582992724 644671734 947664930 98029306 972773458 587737984 910393225 59504773 644200702 121227256 962490778 40819054 557791305 858201055 897264901 289239643 365649503 923679724 967067566 82731162 553086665 879508698 977671275 442273220 731950771 330337785 724919701 162593876 746277802 550682498 846354452 97724715 326677084 62508436 478960147 229455287 826307700 563106504 893746435 383971892 437551496 24581568 899316664 461324254 875685536 274882088 543902537 701515429 862107332 116051350 893948511 673960287 875080456 886162493 999674518 348036470 614849153 777305608 795227255 101202288 889464594 508172879 696489727 620413019 713678978 304557174 427377103 971221932 981516054 647413676 902089177 841302078 975470551 467064807 661945951 71650090 851212181 198349776 498563353 694495561 999971993 193850083 198335116 550759500 761355698 986184442 999901344 542111489 758050386 716059359 808426714 559222637 879118650 449708040 757076653 424365038 594967798 5655713 788708962 392752435 837810249 129153255 780653938 62443387 163455898 866927148 874317686 917785708 939527654 262432676 350165084 472941200 884769807 580809175 798531232 371593348 451536645 680374505 945600793 605596989 813352025 157859199 855880750 550977906 611420408 281122673 918151974 622553788 947757233 405176534 700817503 204327705 864380318 782637792 962906202 181519579 964007434 719666000 816612057 796613736 905670992 112994473 285610172 175083319 760945584 141614904 271342928 183896730 246028923 304710708 532137637 185733996 964045667 971613890 983072236 617317093 800856003 129197792 281810911 257238938 696684018 398077637 724125557 206717681 364508319 28100009 358740583 739904975 890333198 584030358 679761886 549783924 982934021 650186385 759937506 639960619 831224138 127370611 436434026 63058044 217969618 741428230 916887741 448919515 735998319 903972568 924598700 207744914 737440445 300594499 783195203 647549043 931883204 5768854 126055856 182417560 821310243 564593230 665682742 122032964 662979026 447340330 480157895 858897017 918685870 57587279 310561015 852312293 912324331 114324691 169768426 370659964 967788324 924513972 933305605 428102834 463652671 183027558 981745687 704091246 755429867 60863158 409384307 196938882 927207278 651182166 973812900 352122323 872567528 775019394 992577037 391993049 976179448 159849678 950258933 140255247 392155916 626684557 895576693 317843470 792892316 578614307 982064265 813037042 854138668 666809729 815872326 959530680 967558389 527216968 588144356 344250159 955252125 583611811 732549589 326947056 415933306 541780043 757279696 461522490 928504805 526065897 701817427 367334792 902850453 263432147 799577615 698166872 885123306 221347245 955999653 463220119 724317639 478431767 644058893 270871080 630014765 504454982 666278695 789514703 970613563 688426653 873509771 518397608 920471548 52009266 170965637 737654677 959248550 558785190 605726298 774973595 945372536 938031680 948393780 217119487 294518892 761962377 965776798 438719795 445301254 966830505 972216664 359470475 425257114 326180613 591364064 32581973 635263358 730951285 955389385 420183376 949104911 313045328 731238546 828844943 896806707 91905092 428628903 612620489 989544555 119669989 622447812 915730161 948211534 682789357 774414623 458751105 586996978 649699054 719066683 735781938 743472598 443692893 690455961 975348884 993267045 465728415 533794919 916615390 988767011 382999185 903064690 704725143 989630017 210043385 586877035 872354539 966715720 470944920 691545150 614192326 884752637 45653582 684764522 488281464 682025748 132051406 947327294 472501916 550567265 376506325 625180850 727805345 921225928 548962792 637317526 306576819 534596823 479452419 556377412 750606956 832142364 99257696 586726530 70257239 961079166 789599590 834954624 645545114 706772237 951705889 984309397 396908122 961112661 259069782 587962789 108319423 358817805 485886185 804245790 99788860 164931831 272668598 554327841 667260897 997380383 915965755 959276426 335642969 617848183 524785772 777297086 543166194 797017639 140861907 408678110 895749312 994277968 291339547 441705957 295676449 822598369 591168064 859343964 267250080 471081428 855657428 866450048 225057629 747749486 722987830 916990995 236820649 751495143 997254777 998363711 475328758 958056932 337721640 548106684 261823363 533191667 54021073 456749720 786873257 986457476 618642918 924672874 645777631 650206153 910330991 926430855 655104034 874968689 836907919 866855090 491566374 912997998 751471571 947679737 597326068 659840833 724790907 994973207 630511000 789793586 302527110 551554778 995375732 999824740 290019417 447570514 785420704 988158257 400450971 519611108 347234355 831385902 973249687 989599442 469600553 916031425 331405903 576546050 228088805 376665188 688422712 945461623 12312851 92205295 27242473 701313430 789386226 805973100 138124967 715023026 172642746 442039454 454872977 648114281 574466737 591088095 635852065 798891179 71702633 157311680 752006682 861520666 67522735 825409429 907214578 931092051 787395751 822837305 718648892 740119431 689050641 948531323 116229868 791726123 152406602 542813060 680814596 873280749 184247379 965929863 629737476 942074733 609688082 651032794 466389726 908795299 15757733 167416572 865529180 924412200 505223992 894081885 621093071 895268649 10061763 604082128 584747613 769257402 144684582 415417019 716044096 952946593 38520928 573477302 448132757 543745306 838182886 940171378 836553864 858154915 684626761 810370965 786426303 812298586 868020805 961366259 387411081 551474559 626428074 883097066 123945544 891478894 45453986 718674632 822199463 854456935 523704508 729069611 653321913 796751025 290252217 963112402 555300079 646717888 43202345 355399842 475244256 989890022 172220609 986395304 564699587 929012698 707358932 712415185 355579628 658913300 738894756 912291555 27907341 182534667 689305792 806658737 725890435 809774027 159020636 873172562 758543601 835536177 693986431 968693027 549828762 689996402 363715191 473039919 972953798 985978300 477788107 638573513 288551833 812769321 714180940 893893342 332418029 445617960 258841454 361347761 346392317 415290389 281694278 527811326 514613805 701221666 518491930 936077631 871693856 944796454 437608935 682262375 327456414 749430407 702696235 804948274 365644180 501853075 451606381 572247535 582729125 689049993 678140874 856840648 293931387 360651799 420503943 635977161 852513412 926847795 79123650 860087455 578369143 761341248 421026832 486348022 395118840 564436499 435496323 530435173 873166533 944844432 292127283 511032300 45617229 684300275 567673367 625182763 285485782 312548974 752660678 947156932 49063001 205032319 258917047 664116712 616734986 886992508 305706906 399804842 247123610 667857929 555219656 771433444 367261738 974951558 592946999 998355605 506627485 517158745 963058859 988435863 853932173 902653316 613933286 640872161 94099892 345642677 286785593 887824194 92921773 469618603 724947983 855081762 662435877 851144642 438852268 785653417 433586320 527199298 284741715 560446401 152440386 510693197 771969759 947037684 322952738 397781489 681510381 863878501 388759328 751871683 447045755 707953981 350832028 654998886 371757934 893918395 430062853 471245260 898689953 938997253 230291661 237855548 637055868 802010132 358567386 542220470 471581445 631616341 269244353 549238865 245095351 681569487 815816074 999943373 407233493 955525045 143262829 371513204 882890706 900815676 636475107 698057194 506734672 594581330 69853519 295126549 268146591 932589669 97693037 299227171 536470297 721321247 53011016 868315324 519464882 836622239 606310652 883741580 118974350 656767505 396358831 536706670 626727991 809604452 732289219 735819767 676780904 967742123 231602084 376475567 469062570 694426066 312788191 920957076 833268483 948230089 858125323 997731010 989869409 990492324 814201005 881902789 566178363 632102733 992708848 995612189 65926012 743963503 551343817 628911127 98068121 392257825 717842398 987476199 932466732 960973377 215789343 868283314 705742251 861739138 925783785 975212635 135850498 697332887 420196625 858461770 897043540 994527984 749873691 868482567 493903656 901124982 374228485 947963308 686987512 944971991 143033887 966690908 535691695 562412055 238084291 740487104 848571021 871620692 27250452 161854094 541669980 931959174 543624712 951230234 317835039 338393101 609913737 852822527 946799168 999171773 169566754 234337385 764761305 909174307 645890854 860255150 276066784 576629636 50140022 891408230 153621862 634365351 132960019 726309524 916741491 940773222 387192191 785156912 691158932 851777329 277903370 374901554 548906002 808104471 238930458 412565378 578553570 878753639 860685651 889599094 195193497 883868177 298154783 393707367 723986729 774272669 285573872 720832334 457215616 823654586 155567477 821466700 556336354 679723295 318997082 817538698 734165985 818785426 885075515 953229359 807669731 961857368 967106848 969574558 891929367 985722184 271049980 497900938 348065483 792766121 313090378 948174404 640229324 890655136 652413148 660756203 420781155 460140997 587486274 803283112 796000570 933339855 292827847 546194029 2103243 723605655 181109116 973373685 203525182 652329333 47854718 914383014 839983378 951083567 978729693 981852400 619655526 824712059 125233230 252734972 540003795 775398319 918385016 998714843 259612375 473382372 415358841 497522733 243530416 993953522 732921521 739781219 857791209 932257058 284473010 998945940 116136774 253512431 879683499 945118042 596590104 658102954 708283415 734983891 286517217 292946131 88726215 175560619 628675938 962515886 36428998 194874683 635449760 988934144 36977063 88111354 24338193 526530738 932531039 952983499 991201771 993980178 638359874 664444811 529778762 859058996 633234039 636530459 639344794 840352210 823587516 898383552 329255989 982297343 388357693 872636692 74871576 834562464 1386097 410025455 316086099 928463137 990991859 993188844 208867540 825481335 173023018 922351594 360847013 924576682 374716880 685159097 53694610 412606467 926281088 995619188 635622612 708347592 749379862 801680719 636387950 752665468 426283585 792714031 671808382 906725047 911068002 940152703 630816958 656557947 753257573 784224872 408566027 699388748 715010728 769952078 565438852 919134757 884980145 988194763 203727355 332250645 822997031 976304706 398384250 556973368 988581748 993036366 531961745 904646056 782942004 805287949 975484759 984317925 573355672 703690840 841115409 945247188 488819585 973024588 477053757 714042263 726302834 987031444 208441274 536420695 725317596 763559478 566372759 943616465 309992050 722871277 408567349 834207002 348919145 533796440 739989925 942295722 596492710 941283117 768747284 795957285 290002101 990261750 721876450 842139518 435132006 735352022 434688642 536802459 42263955 991178670 712769217 891401911 472698094 937137209 342580774 586862312 233982782 860682350 851261624 937295735 645772399 677657913 784978959 824770243 847411022 888366693 997133733 997743343 92813198 142896513 250007842 952690003 211970580 293785713 378595178 636240192 542928076 853739765 840800866 991020736 356852529 634773047 725866220 909548523 195363100 612410682 693852381 794874553 877677861 984383817 81961745 232922857 440534325 746865439 174520348 736203505 757321200 800830483 72100101 638514634 455481138 652792081 951114190 953748659 689788391 924470913 589591612 710010102 178373101 281317800 495018851 967207945 497360461 620032102 517780997 568770599 22398753 315990115 268116189 991206258 262914842 795311037 902794422 955168009 951981325 972935838 118591179 941872072 972694727 980750473 754393281 966767330 874688325 904359830 212486821 615511312 17039801 822544117 63761930 976409096 758037557 900827602 544299935 892606988 337833960 363374119 513690264 661065761 630922947 739210182 384992234 924995332 962131489 988409795 592477119 964530552 157445548 845963565 781589396 988050273 536716623 977313753 947243076 979204821 340521445 860767771 227808051 421279715 337815833 785339483 822527714 885846392 740716327 835266195 947805260 950629620 625709621 654231553 968885784 986784612 297313729 699115300 403693921 933573629 930374804 992146715 420246494 547614893 526254474 741705023 758321592 923291166 451472977 682704810 272202185 905530072 447578619 933764778 933424972 943613368 199847592 700210042 536695958 542177455 891134640 989803253 264166280 270734184 255345328 961989110 501941490 813836620 505267460 574081887 261929157 659963179 703705237 819877091 103942657 469700383 391329670 417065787 509588447 621518505 279005170 831240528 127820262 714360370 223109210 553216827 730975099 795047712 229941523 283494350 65282246 267307785 73573882 435503213 858471784 909607292 977130919 983138546 784288775 829429022 943731084 989223587 507359188 989090360 825471985 921698356 456020840 546254889 574446490 983822480 781229196 970760511 95957183 467668344 751909481 761872092 383252779 618985216 928858275 931692126 522923741 559441396 135882496 550698215 547718565 740662757 960665490 981702505 835364037 892846562 356716100 598440524 488284577 540701586 165761748 861704826 130786172 438813591 213646910 702883776 896282558 971000770 774425897 902284942 274900563 821539597 156342218 489257890 345165227 472818416 183149215 241220680 810855179 933527436 878885693 945484600 312524694 374128571 35578372 61879655 106104265 535056451 168992537 578461705 236029436 871993223 408730296 461998327 443106713 855713781 223457546 789123685 585895029 763312649 103848704 362930344 929891602 982334589 67097724 839921427 257310323 269492127 668455154 978784588 274550363 431706047 48850487 892846444 74988218 987664751 980710792 996264661 730434591 754632102 491108127 792160917 901808223 987725495 837987716 963588486 693131048 811428797 251849335 378407164 671646822 806417085 633695945 956836085 711529384 750007957 826869876 827779815 731204996 885713068 542127281 970665698 841728305 868053070 579579763 872925142 805329372 860496533 294034091 587819924 185929570 984164511 712055083 900982523 159108107 240315047 275614822 484636089 263164038 507694762 525181351 594623122 226071013 640099952 966819770 976004743 419759802 747443285 923504341 963549898 278974868 577847682 614926705 963351489 705291751 880533250 292021389 821905187 69456722 503603380 400411490 401484078 873165141 881183675 105658208 173482884 374256929 556238348 25466549 71588969 636138511 771370126 373058441 779645993 983646685 999760922 311179017 593017754 334349581 472747959 445303102 546989533 945190745 970025400 243735337 406660888 228864036 461865904 56976083 520524860 386322780 585550794 905703753 991267553 993235510 996816029 732649853 831304080 790671912 811787001 887037807 993886046 362378494 406565278 706373758 754409133 581474451 732024057 37165699 483826608 549823641 612401113 142897756 726193133 691437661 870569644 852319770 929331482 520284940 731665066 885086816 895669962 335599532 652957622 158887739 539127519 97960073 796468204 3603985 807752220 601315657 767003996 718557516 889638579 566567511 671913112 93900797 346474214 467735735 671052459 280735166 640988007 282129899 385673964 404254114 699781567 24376900 71712559 663586093 706304280 16324733 629725083 833128269 990221634 471469028 877466851 626236768 667456746 454366708 704843783 693326685 868144820 526543946 822405098 641186284 861494964 380241153 959443979 197405591 720605703 29437026 559714821 598765069 648406358 311447204 599690205 565653260 921717905 289543092 675577435 448697638 971019902 136125192 183973225 840328012 859834192 558741497 924925028 121419543 397866440 748958082 792569144 927601097 960174632 406769160 735817345 193939186 345924267 255759911 982182518 46890655 969779370 64293792 811667182 769453462 852681984 743507861 745271049 576036273 933640504 600003654 622693410 917468876 959713834 147586592 188840945 796283220 864207569 758035651 949258112 271155628 650396469 579740485 867719180 737075669 799050282 702292865 747696645 405917387 487090804 281083823 593626293 21564381 291588870 895495849 917711272 65697473 568413465 201759560 521418801 612406621 871019485 648174257 813711462 746952157 758262484 660285451 843567542 361449620 860104149 534533514 744671611 399901782 877581420 383924728 601609360 415083296 976299256 952607194 987695265 91714167 319993619 818111141 919693753 525805660 863953409 312351644 484152218 441948510 953135636 201024193 680570790 604327510 787596847 338547270 478171382 471381005 948561161 242847612 984441603 421459075 964231688 792028355 919098106 273720505 799534326 194725831 723313888 63212879 229843707 146693206 789330342 688194671 933259427 825719391 945680942 313281230 944700763 917437343 938572900 43261252 376348441 622217063 987780297 480490031 594819568 823836678 873611203 627359740 777854784 259413041 324576950 951082706 983654810 255349257 889463878 168125212 420742154 227442183 917384741 895630649 965337506 924998632 926393169 792158342 909411690 225191778 666830997 734248690 900397762 186760375 941103729 510799908 725672333 974194175 975130189 443877772 739435416 905228737 969316912 494232112 848415195 445309205 837805683 201537985 299546286 503543951 506802663 54159408 135980339 316551862 519287511 775030493 858384611 478119317 667873224 297877153 699908819 199090462 688374697 591994441 691476021 368327286 506753078 322486472 864052632 793520960 831287483 306655 765619773 28736740 360591080 467903433 639947927 242809602 352530132 763339939 824920372 702510221 822466568 227332355 850282036 424442984 523443417 858814358 972267080 331352140 751334804 126658944 246897879 126406469 247131594 37406533 132240370 202578033 658963210 810470783 817221737 984894451 988426452 956527048 973048052 486616788 619171310 12087999 259054386 503714217 523540921 99083945 140437487 759894490 816449472 994317408 995601522 121223309 139162066 723334051 963875490 272978427 306651944 36635500 743191838 900906128 997808482 676780514 861888816 277655131 333043704 697623451 703078462 155660671 251327143 844472964 934389480 309355253 678137724 364927137 782718569 569458214 728769070 542777411 576361686 441905094 664794047 250647007 303366711 268042041 949524224 533193271 583841524 934456314 947606922 151933885 842203198 874652631 979733953 833741325 915667993 374595293 613723492 887628553 985963963 542881777 772132577 102056743 429567992 360221323 384101780 864607024 915031413 250270332 250744834 756505525 887944043 272418842 549510914 993054938 994848055 135800262 407370540 958813596 964328069 854862410 963698625 846078815 886972907 646621075 877887535 629606930 826875342 478967874 774659181 102086730 265422019 490856099 618351400 798319144 946196613 695797010 744631343 778828629 807139014 760453877 986133337 985173866 995250628 58368208 856765046 266125067 611394137 337082348 886757551 443075179 518765101 790138791 791570743 339708242 834212796 384745617 930312346 228238068 895328408 809680326 882171485 443055225 750911689 496923856 957823013 785078566 934696269 618197473 997349949 671976864 728959960 171625926 398298012 951977744 956049736 427796874 814093740 172218529 377989515 519096578 670804148 182926428 780938382 440300539 894653065 724431867 948034188 691708125 990847433 567374251 937537007 420151453 864303879 583341909 748902072 749502376 937429548 597717993 658700185 473186125 731594233 506743053 585316151 395305545 776251289 381374064 710312924 220249035 446631810 616460520 723589567 420814513 793814131 663817162 841668399 978079589 983883919 548949822 684156753 854250876 997222254 786770326 803101206 237184959 613585212 894330712 950372417 152901853 239212940 932766944 990094096 491835379 594493807 714673695 740728953 561980532 753281143 943365692 964898645 284606528 619798677 659915109 810661350 355078823 416122475 473947682 535966932 693875678 891645559 845362862 916411053 6084994 865740065 130802056 531648425 188956204 701819297 254146808 456522195 20151669 454519458 989243831 994505862 675951624 688597759 136394908 535891361 251586944 391128308 309963675 726313398 576654764 735052893 682165937 872537245 456419819 636290451 785149477 936019515 405159499 998584368 60164636 607217310 571561408 857957883 613695388 990762484 56837365 810367446 814300426 965538666 671419523 907421097 778750092 915762034 534632073 614720927 849489036 932824501 387054029 826593913 186043877 349057041 239247011 410653434 578852319 677673273 473015742 737692080 523381509 617079823 117845427 671887558 910725319 911244719 939698855 972926050 141942874 901447271 360376404 901544921 160456704 496470491 294598816 843542988 935006569 973581495 404416766 720008252 943365307 951043561 740567793 744311884 458912508 490144567 35625126 844682647 209502645 633367615 515109924 725182551 334077503 450760367 343235451 811675385 223536151 659924185 674463622 814797290 488930958 532254573 929540329 941569386 766481290 974607589 747777131 930981629 614301085 685218618 134335881 256259290 973704968 977549741 960409097 971228784 698711008 902228716 391604986 516922220 673728115 709459880 835957048 992004816 423928908 967189693 336902401 570889013 522159730 868998938 686504512 719347914 699789232 827206100 964839647 987975538 740711301 924197332 868599097 927317997 721674609 943582819 232603002 864395948 458682533 905277375 363897884 707641125 305145634 769648034 67913108 856564190 546589519 578700997 595322395 894978269 576700466 965016917 152404391 392271105 320862179 644298517 393597028 979262781 5322813 544655106 419331405 698347992 976506694 979792644 102232185 962420606 749579917 997299827 55118726 623003579 149891908 626955987 760387444 999048924 372327292 798155341 476514058 767114984 38285021 774381288 124684377 199219699 748634459 890247107 967373966 974601489 928758443 974174959 516285234 647640658 514376243 993605637 535746415 847213400 827384050 926755914 114956444 917265060 741551709 770920175 480424870 919866905 241428429 800538450 27775129 617784814 651475412 943936180 100095224 157602511 766327997 773054889 450693697 944890212 367288052 645542269 726617218 999139192 512030803 659172028 528769186 582917026 556273013 804974152 111616138 852450460 804138743 871731071 405061643 624371210 877528003 926447466 241074946 774564568 156520934 337830846 651488786 888137788 724604163 928312358 514114150 559619486 901418009 949775339 280436913 349310977 810052071 846170455 750475366 938785930 242668601 390357804 34013088 50062753 457350782 734946485 795535300 880685350 98998756 997005043 591703391 887513985 463593422 552464058 723584213 890640509 576892570 759634640 737665163 789590292 297455897 402280453 849097077 945128598 272819333 807411501 699208885 966824606 986803520 989940570 399815899 956103327 789023165 939114916 646194948 911425984 141577855 844974407 512051142 836294486 261475912 998215106 52603035 532773128 130957931 951137588 737010600 850747168 263904406 567824669 21021330 534946259 643295781 944644887 3059686 114154628 492056071 814230377 233940826 959475641 617517221 805154162 657285230 977560670 843565276 998439481 88275671 979811843 390710257 619155162 227190109 886880890 178078717 334692177 526167988 556323535 897500413 971301490 779773595 869141021 482008457 570464767 10210978 737647753 941469076 992693584 284828829 704826561 236735005 339141447 135529135 302566359 74642503 771493584 903558132 940919639 952084754 998568515 529526433 762161917 564071526 676825856 750415242 885245867 799833310 961288944 815012241 884930309 798360819 969046461 585026969 904829084 923963724 946060118 346392973 435244697 551504906 791614703 971831511 977799589 512602384 876822085 618001787 781153922 22188957 991319750 290161687 784282050 285324775 519494557 940462007 983408243 488241474 857278387 267873206 881871125 629270230 907330493 288285159 649988292 945856683 990867074 824797552 988907076 775713262 916345977 892843701 897374661 697403955 704484143 920735115 974569705 100372531 586672520 455089285 673325990 227598044 925761653 842397954 929855169 988038968 999998862 862602726 955563120 269141884 444486945 737800563 868553390 200136073 309962094 22338978 58846474 331569530 818928782 613078927 984944722 124877355 169274797 843783477 968642933 300876688 880387754 189885666 928301532 186352473 218538318 699454021 733804447 333314793 345953663 922462507 954748286 415773742 778983048 846109671 874803472 647715796 760413263 273329983 801559530 844988113 919213658 503612791 824560001 614982021 979002376 586903467 622304648 675106608 731229631 711477699 720022383 326696328 832032149 700105017 734596492 787792579 841790415 853134525 983390979 739405786 970729140 948279700 964534693 338430854 883406779 167541147 656015166 936203607 939532727 988288906 995776921 20075472 191198388 41264994 889300884 301049078 631310183 567401927 805227637 91317118 225912539 523202180 766927105 586206541 662351263 218465434 882016872 863459502 918814292 480034698 928737227 641672900 762102189 564532827 889788837 779265000 848006135 675420562 877616855 932006619 943551313 223635891 525153889 203576967 380752688 970701341 971445888 265205173 353122060 139517984 159415217 857384833 977084706 753522852 877047319 378052212 525696433 277963489 760397950 736883045 841919679 841768998 842784306 356977192 735693871 802010188 945441597 891975093 996297060 49023111 156907337 897858189 943959380 207572932 819275116 538669666 606634153 369148747 994912128 788230871 856329317 696838771 731703164 681280312 793903970 468369520 579126236 370103007 833635141 465383045 638279922 65769982 500907446 311722339 954855528 350323137 942606704 122148256 627735284 708831134 835787100 146672684 479259897 913833470 991926646 221664347 536893545 177597441 527594160 137124422 930398426 8198120 577222304 531961600 596883967 5411878 243875228 461181 744620260 492776174 930350655 200732388 517455035 349720508 746005735 206032099 611216895 672586098 764794631 558919486 859718595 888244042 979914267 909790814 955906933 533497636 690817110 892757868 926464939 200600593 297372953 501395152 807226403 615515205 649042397 752902916 863487102 927286403 972668603 887154108 888180586 533625536 704068541 699791474 884790864 293068101 548814245 985574576 988652121 52446730 363292260 681182040 784484887 259866218 806303477 938949453 966319093 432159544 691875651 920741082 976440745 66399975 669845310 778991093 924925156 42237781 340817226 113109531 898921015 5686487 503702555 374497032 472648392 298159621 797067467 823028404 887831780 116497401 818388447 290725584 809137480 17506730 926721181 729847665 931171209 887720222 918562835 145379795 992010712 2501572 347600663 763760484 900020513 552110425 639282571 78203991 594837866 21579861 243509080 768556116 778881930 642212294 882924041 242152639 283765998 301127820 684641032 590716193 688145408 826307113 886572229 16732110 370495915 459955409 950955707 355291833 527293152 47941181 157848224 75225164 178751572 600050922 721640335 920800913 988412133 19552357 588636950 494048406 690712615 878468128 989985716 315272725 922793551 171274573 229141302 497355121 955467760 162118804 685962622 340598553 931944391 196279936 907027156 83541511 476453009 242445758 930313183 535400696 794291293 192244575 336937010 331926533 698670102 157764220 649577145 175649489 971058154 691032070 976701712 930512505 946392922 843486564 859675712 362394526 369236302 497964791 777377530 86718541 813725644 564886646 629606444 243807557 670242694 628653240 665612011 543452892 724149928 285110016 933640735 42646389 997374787 436201284 665469331 46217641 486875547 544742864 757029116 898806174 988308071 259641309 843110795 944585014 971648393 259754415 318611702 425039546 874562921 256319270 864930904 469095724 919911876 941025588 974138870 588524211 614896158 715946045 751886700 387052291 595149344 574097849 824656756 386211550 978089935 291415683 626583983 984270209 987004301 573370326 758125293 185663173 523465959 466837763 566086017 589078258 887722362 202972882 637818656 918842953 963910674 584825865 780631446 926460066 943614183 692492597 815226561 933821022 942305855 344972080 537915320 24036617 794578445 392675589 736306888 165025162 623594084 432410505 921977292 333605810 941526946 686191142 721474872 172419152 695059698 603714091 653787813 95160968 171759817 373586466 919356780 396015851 729549161 771719992 786500703 53124734 544957471 278480138 760908821 465202063 966027736 968205065 969546047 444815157 501684508 361348089 404892558 67239021 792424965 214428055 348446774 408209590 844422591 641848234 788866853 558487658 772333200 324513039 368582448 242007271 290568473 328163533 332499668 641189420 677069327 365183582 629926677 510952810 937466106 357256039 639654196 258251067 865395907 504080284 778633071 752148266 968851701 129059662 759467788 413014943 526448150 132491341 556245817 950084207 989639617 431265460 920354922 367873973 908857556 428853093 939761959 236081572 492312233 933615800 953914639 62073044 979100849 614887821 671235039 852490706 901946134 21945087 480919319 263425046 978111395 225607266 327859224 951386568 971254462 434065933 818369480 351978942 600710920 553817214 704261959 278170635 598949160 85268900 211625165 257532622 277552495 189365405 396039417 626541773 973087634 160262132 250223950 605180574 810856525 119540791 478691021 936144458 981315642 226901894 255040606 43957217 630172218 93995095 114540069 95596781 208983694 844368506 907319747 955856373 979925181 816644649 894920013 962210751 965346481 758100431 910661868 631160405 929232480 681934127 784772860 93222907 485777029 388334123 482670374 99891099 566498991 486971522 775379878 204944682 687112492 659854292 750248909 739515311 884309891 179053456 880431702 129498318 810035148 768966073 893779880 953392853 963287186 823447820 839419338 624116626 918018540 705777425 985890751 975097357 992460089 902623758 984500115 184290989 640734931 197941172 414063139 780446837 946678798 245016309 290980698 678760774 709260784 58201935 177749537 332722982 841124202 652665850 864615456 861142887 889792839 829278793 953758812 713955989 978592881 644136103 687580514 659235510 752522665 810441821 873561939 539085333 710520847 7115227 166163588 677350194 689146465 421896447 898220858 48101026 443350088 105656504 768482561 73026922 845555723 918170811 932282173 276187693 654519258 488001746 889645694 646081551 850182656 440151473 844227198 362359945 816314016 382432789 718069304 147214783 644483916 582654318 653900874 122646668 379469035 21105292 272937660 49143492 242179212 882382834 915058512 924460400 955754057 486439495 601318637 64079504 836254338 237737072 559687517 854981965 858025872 681191243 832774295 554175000 561497753 61764665 722933123 390201833 617077545 820123615 894453066 255785150 632670733 278307875 884917847 854984172 970302314 952014150 960542356 241879957 512270368 161387996 511051609 855666237 976942251 625669590 985921936 779787985 955708628 654540007 913086521 799257599 976642172 628838311 706751688 283256995 872695747 776816950 851550041 479489843 959380927 52494758 918761322 967895817 998411083 806337480 986805561 221996635 408113993 672249933 934030453 983807554 989955787 951647527 959175023 228832259 979167405 342883186 597272109 865835852 948074035 208024085 865380256 474079793 799218825 268640389 988371630 109549321 304855283 656422703 865259350 965905493 975454769 733501664 788108038 464053986 876683039 328176846 643809017 912018383 972581250 797031867 998278605 292891251 508360687 624293140 838444478 619707901 636156301 960928070 984014213 579885311 814800911 192388703 897200923 306210340 353618311 803170476 911244970 238211750 667787056 613546418 655671539 735725319 814559562 395958725 572228455 295740567 536523545 5274048 365342115 23381884 248954709 215086440 372056129 888438412 996048454 830483715 948999447 117093376 736531463 202559148 751737556 704538235 805253058 510467780 766895307 495963087 876297254 896546642 908250726 575719036 756397865 211538923 433741755 729367619 838318676 174749225 651165914 972485731 980608794 895614103 901266298 842013372 903279673 954045219 992854469 383179152 399014481 113554136 177085255 264357899 876765278 432725535 768488791 608217285 909006347 79426207 870445483 280278951 810244439 826306048 840437410 3701582 220419209 952001971 998972758 56069686 248177669 282883577 644708340 388414395 692955183 675093620 945633471 388381651 710155011 710116675 780282094 850137770 974380666 225072757 548890859 938917162 988538763 601966104 779872666 449076433 807347801 621446827 997986858 186436470 762905334 932127334 970171541 622860409 755281060 540298228 966686754 521026185 794840453 570508060 871226256 749294586 804376799 820980165 914952908 492520942 594014969 276308697 506416939 147848347 749497456 511575666 577088418 66673193 237226938 568676076 651640391 679994565 823654027 341252432 782626020 443453150 460162846 20343078 580401603 927650387 972145074 714139731 961959308 710949830 807185507 230245630 231904867 220672455 481807687 392839999 732792892 31863258 388098415 122116011 142752391 154932208 216538951 613007972 710788589 703737158 717706864 28610607 300478145 125271903 192006186 897680499 954276089 186734777 906653834 690430443 830405211 399550207 491340863 532769878 578693955 470774937 804194219 501356470 919594431 433637214 714108297 404635544 536835827 612144986 785129570 907214374 966193653 58652201 814651526 564480169 937063145 777511688 899339051 366181700 522563421 122994345 946684358 263341234 417051637 607670075 932332046 975408993 979405816 638830671 690401152 478770799 815702315 491881521 519426285 211211098 667948263 316290949 408414982 476709921 782263641 540821684 949783540 732651953 925904493 991536943 992955270 47063028 656614215 443986174 545133156 274035019 608155676 96235226 301358975 719792403 740544857 893738343 906765055 818175004 872950254 852873828 862497414 203849001 685497573 374790349 646300959 642830169 935503960 639135247 770005751 386724711 489259897 412247442 988491065 260735883 950073746 899130864 923592025 492281704 883893650 908420811 908473901 40619585 445977790 199275867 875878418 714166600 782200189 310260373 930155431 10732545 17765673 723143378 795210825 120313920 838113360 354193146 526609092 84603839 931645433 206384692 423875911 88791009 462442151 260434385 789618730 255339904 591381484 600735997 715208733 490018399 921395992 290509746 621560909 953097564 988441854 27187674 111201113 281995992 865059658 174692398 708431658 724406327 788834793 90581974 906864616 826567725 916832966 376343191 839793777 528338287 588613087 746417378 864864040 508516803 683106441 277432657 792831302 872988638 956151859 758186253 965975429 60526605 302703526 99372352 252671290 242534132 918828451 603761096 786741156 817540855 877227042 967394239 978501519 817659185 976091394 12139037 448201260 732934736 856974378 400628546 568534646 195504205 213663335 645923648 980053858 697223037 941614524 34482668 668916668 434975761 708717505 987008029 995058965 276602876 941144901 229860621 894633516 716169575 959740597 701849178 962691757 488775970 841273787 55297265 211476054 267880589 853277317 892431166 957213785 516726265 632258535 829875141 999452404 10235488 217690456 636404300 862677962 612556493 988539927 520937216 626116873 201933452 281236833 765258638 812454784 512224414 817712062 871283694 904895573 913100331 967731191 506642383 855290309 638152274 931156513 582434772 691771195 158370527 523093427 628998362 763239301 856457276 870804745 511660365 993288042 767374121 843701122 514718541 546898758 271364304 911284396 680306137 899434618 942105326 987593247 152052704 339558503 386849559 422553273 66709283 150828791 112290444 138054361 108735611 255179643 355268594 743964802 613409922 657942479 43721524 573127837 277991570 604372238 924922957 940695493 99190931 981913090 123175906 478180487 101714483 467489835 33479582 414312162 18479350 464436414 484214237 508326556 175650168 298718513 281619065 827963922 616950161 789993962 179118530 837190376 29327653 491261549 800059110 953295412 79974144 378248930 607034171 662305681 647140470 953950437 207809721 957131754 713109594 713142504 503371893 883961621 684156826 804056142 179511256 187258886 881965289 995583469 155336445 684159492 693529204 696358728 454043320 795850802 137847356 927390306 349470146 977461326 26391019 603013936 417690054 738675842 730137437 866949199 875202301 954041338 895284474 950200148 512825771 940852780 233476308 520212250 375199744 469867974 713578952 922352588 889945545 974023292 51982222 227938304 381382991 601451580 204641110 708708773 773528281 816393015 174387878 960185887 123222377 601980928 92802501 560954779 490900936 973942369 415352019 676311420 853231598 926702846 1282629 746740334 378785374 955684796 31283273 947356234 562195785 729331250 221052833 364245187 457666997 565515540 717627562 821097348 591807293 966141106 851909815 865107334 699404807 962576792 152710651 974106863 411884365 858397145 865172818 950569123 908030006 992271641 129606805 341505384 257273586 700801411 401357567 782539630 273226014 527904468 693869039 942637165 132779491 994949521 410742189 949632523 36732003 370203076 271675870 638002135 11874380 552878587 417886135 652619685 990207998 997774491 41618504 799826350 863884928 898509981 618304656 777247361 390868209 603884157 561552144 617934287 363866896 958655941 631969667 687109754 485788640 586675718 915547684 938877348 495692457 815095430 604780812 892493235 172907465 936121096 399701077 915382621 363382434 744365505 480682142 723691732 762833700 810712133 369666146 760775982 987756121 996589809 807436899 901947106 619903038 650112661 569539915 861516811 392910582 820154627 638810042 643640571 514077492 639886886 676995953 754337915 567975691 602027489 194863103 464622204 549246712 996173125 578557568 733437994 705560393 731741215 529126703 649877324 647437848 729370773 695240641 876520314 238674816 620742465 368952711 960660248 237005204 540135340 490131458 787988701 874372580 880020637 108179701 786901698 794201112 898493056 556200820 850277984 181667341 661893522 351673094 960242515 786445549 837198932 645508759 917677932 916402116 961613648 450048885 975439391 185974893 782335605 259722310 416331696 81631429 756935793 457532444 826479763 30542010 577237076 837986216 844030199 308552770 556913133 230393943 678526801 548335910 675775377 122902776 504282478 119162291 228091103 424135066 904132984 591782464 717037697 289905999 674066741 928273867 982775764 454722274 658419519 849126969 985113227 646140364 996296554 698068331 997714301 946741024 964051370 390851086 689030949 483527188 660233933 219885051 822337952 903245200 963153283 217027173 634972782 87249205 433100522 606153275 956727030 587585706 878354056 603396372 893662371 635368152 695491823 56345989 839583558 77995631 456089339 915423358 950992479 650258800 986903234 501223898 553499255 961009363 995190869 93312231 482201911 65393022 420967201 504735537 669053509 501473369 860235796 853698886 912559082 305269798 465297666 710180734 816486065 902669455 915203499 81522610 136942059 868420621 998106952 344512425 375634782 492077036 861134124 243518767 569385840 290604108 514804971 541753722 608486000 630911729 788443105 987597974 993563303 25560220 434919790 129102575 973268842 148822320 711964400 946408503 962763446 503216320 644969763 701088777 983427197 820148534 990002870 232085338 325946031 851519439 868250730 253590146 810012601 62521314 474663519 1468613 837021122 395994071 458299463 235339388 238772130 887021253 965708194 201400381 218066267 359832930 698898081 138189692 648904115 158619111 962411796 978560345 990022344 105253521 955789828 941823467 980087757 698595492 988004138 859684664 961755170 323798173 725324094 207382444 427043242 377555932 602164828 948592966 996579004 295871754 430675180 716347147 953008177 408585622 792203843 548649704 854835561 558528503 961459899 442841978 996325817 886638570 973554999 33339262 354605949 618905864 765275873 765714581 977615842 907436804 929184087 99003370 344389704 422904192 896203321 250470694 395484695 128702406 774271077 280005895 715501386 621573221 737830605 365764975 887623902 918058542 951867852 105993499 655740807 925958964 993677882 553242636 820614641 37512842 585566415 107280089 188206413 343269597 502431791 565388591 847297158 490363233 626392008 110308652 121944902 342511107 489906807 918543493 990294175 566881452 786126426 285973790 811186714 686863723 774011422 942648469 996064907 374037976 912474014 188723463 360072815 609237150 787086974 25513439 288801781 957979170 963743700 554478050 800368048 579119294 913034990 731220597 915889232 540975259 992112681 292640347 831972789 203009914 576023760 393974458 694782035 703713192 783473118 163198810 736825492 140364171 884895341 743046769 951098715 525368976 723084391 958898461 975227422 215743686 592903774 520277490 553496228 632657680 901633663 396343263 842257168 480030523 656771079 831655823 878887554 331830910 545120162 257760387 576250706 954218326 984743483 367715340 800430893 983125277 994781785 480890690 584791972 581073346 934781382 854431413 857397871 423704705 880903690 458980464 754242547 208347634 430497014 351916936 717403778 78783394 496010054 681326846 962737160 854972611 876962584 622921696 785435162 449841757 512914489 642849175 933542343 814975105 829175038 740347450 978720322 48573345 657660571 689771224 927614186 651923259 956316730 233181095 280109001 428204963 727112288 766086687 857713145 3816395 472655840 752868165 892095812 243783807 335149822 804614199 978396384 882319768 897113583 684608714 818951814 688304959 983962646 113272324 317122961 247433259 912796257 211980588 946663979 903376568 920527844 826719269 886056684 74403841 650593468 341575635 918489848 723385307 936474343 310092033 659755926 518472663 800984645 686184559 704899428 133465877 748833156 8507830 908953713 688303090 746849374 920136901 940991931 731794033 974936186 891175126 975483737 534157602 816187735 815465101 828050208 714091058 993333609 463634704 720352910 195337161 609071552 6581489 772019640 958846489 997402824 847146593 965995505 231972629 343074493 695305994 938735742 625075805 816705025 232061698 465141796 730544704 958939885 815537374 948279207 171788758 356277851 429150007 429158733 463844836 759337152 719948354 730738318 198238793 607741548 220822788 801972543 815133860 846239669 179565974 239443882 482618276 802984853 213373986 234315385 583757447 764323483 773927129 938441969 838769552 950041442 680287047 802032762 898229740 986698885 206939615 226590121 225860311 771944786 107115594 860623960 658361740 906877665 464381509 906932288 608636066 672180639 387720846 460982477 23544404 296993829 604556123 678133953 213745238 325630469 376299535 482254890 441305207 939797637 711251829 966044531 853913034 920346851 876188339 968496434 152741835 297794493 546532195 888375019 450894034 649863356 125621152 800201746 94767528 214453748 229924265 814891057 495385075 697888882 328081303 768553010 153015889 261174652 479953290 490307531 566076862 805450483 578666354 701258306 951891905 999206177 594736461 923230767 577236045 877929821 333517413 342146581 634183600 704742972 216667487 837923476 472911499 986978194 426408455 816808280 435379607 518365718 158284453 221534220 329408868 542209533 73905625 334607201 639394578 803725739 786726860 992925552 203579920 618282886 286172543 733691853 266196220 606184797 455634639 755706883 58947445 535284543 137380840 644497797 689412556 710754185 911193408 917562982 51441070 152263868 822821232 860953009 209241768 441770051 127597287 191182498 421328003 567621859 382696413 944884898 708157170 797472216 626707982 926232622 239289122 841579594 242131243 442816033 441507693 565694187 108155440 783220528 69296032 202349954 925453061 929213132 728234675 870374060 87417201 580988954 181042833 630843790 335665604 770757482 988494854 991448789 705518610 917310004 443817906 839662220 742459629 987086010 832960101 874528248 304537691 526314637 249549433 646308925 879709858 941957329 91378781 733032940 365154108 445560931 898621277 943456743 275755204 755460026 62749716 719274231 221602517 779852440 611448626 721421736 685570 382962186 422667446 825579438 250495038 679243855 233699989 561122963 120983995 695773120 233336959 266489237 342634062 429522204 820640491 846335514 528307174 799462690 645478021 979846179 112777779 594107514 346701172 626908589 323003354 696805308 46166172 152506744 514876419 968143719 415514793 597981121 897066616 949351620 920637101 942343582 450849131 967794289 991043067 998515123 444259453 865310520 30915893 104003865 850211179 908686974 100961785 219220154 33059744 999404048 476678845 757387639 501454265 669710267 112780876 933679052 338217401 673448394 410868040 615600543 411893 649929168 812941459 948853476 315881058 634741178 789813289 962290065 137505252 811465086 367754772 410760611 497765992 565833476 830511003 930936803 723094356 786730090 266640919 718031334 310270730 708472627 362237677 556172772 919526563 954527104 790581018 861782976 813179311 942569507 844642716 912164805 985748437 987439144 576407484 739305315 292536110 818351103 346488445 703570531 962255743 997727025 895395102 921336375 160863797 346771654 357000383 382507174 117835665 238784394 311568433 457320828 924057570 982365228 631931532 865927338 448822701 941504969 211996405 911008246 49165227 875820098 814507851 910757268 904871513 911395492 713999463 850009551 590120635 980056145 167336304 728564992 371070628 457001211 779097275 819171092 778315187 802441375 227588936 298953760 626136656 914365381 184599418 996961739 645430301 943812138 505237092 758267655 324162265 806146652 483037756 858863611 196040640 563655799 416929401 605265459 285175129 456506321 717897004 893483893 907671580 969336506 94840858 946514790 624393027 735313727 381741634 502102604 272524504 924498513 46914601 648768269 266530893 710652985 366798925 796984660 806422128 909999846 473861655 970244642 899735730 980705930 91945866 312968286 498418474 863283120 403897069 603137425 602123055 627403646 829873355 850896063 993331791 995624008 496935433 991152708 849509478 855676729 998485973 998866061 950583289 964243204 764320618 949811563 322978804 885503783 303929258 359382485 748748110 815135196 105097768 438861148 552353565 698798683 632077294 645565599 699191155 786806390 525144360 667087255 781928127 831425172 361385834 978758502 233746621 938108437 752765046 906031180 144324472 761850907 255179205 743994740 464758547 903317401 572996160 814439281 631108114 873258433 493452969 722805691 254984477 599433544 856805570 878653822 465881413 877218872 13891606 854384557 103074126 120351624 771317969 868106267 175359369 221308740 160887515 356025703 792642810 937201917 436295243 967956225 285971581 363882734 19396495 384589870 54319980 261334545 760742690 946044252 384198732 575664889 65771930 850518545 863781655 936906990 79559056 575757572 919556207 948536641 311049442 311353921 20658389 472171276 403427158 476981470 462546889 506558123 246756137 917547851 953948223 970473867 977728495 983187036 118451683 894033767 937121058 937634262 679784245 717336015 715184480 806924794 376913529 560750306 428606230 597137539 47077882 659214764 274814763 801717461 900666171 918525711 257462124 977562092 142122014 843834643 102415645 887163694 392015917 624715446 187253458 840320760 787730370 837000507 782560800 831389484 200945325 746834712 132403123 457109667 405306445 852645717 597286135 809447847 418179887 987571839 302729685 368307461 96517715 969338452 803504377 835286340 518358322 735958308 703243657 944263146 582704266 784954859 364309263 603134517 420060740 715606851 57117606 271587909 496291990 856576832 973429777 993319136 268729896 554810129 546394469 652362564 974056720 987459780 328815739 604735854 511670144 613809002 961312474 978257642 361735980 644192254 287443673 809687672 86571099 393451762 527813740 843997038 66618540 246789767 961071673 966836870 593359326 688486670 359172177 562923318 559830764 564811412 231427824 852949025 966806279 992197130 204417330 450367010 588765885 609733105 61491127 539007871 467489660 716958163 531110295 693064861 655807140 822974100 797251168 801860039 716737408 750189463 920111618 981766489 928990370 944960544 752557352 939904361 162118555 496909458 78524922 80899787 740422822 833230233 30181686 43034316 914078964 938726173 820006750 933056221 658305945 725788076 28045515 751636462 315846871 476752137 101348644 561656750 633769185 983452536 72013812 802902096 719048217 974219728 233731469 648274322 608473187 789753516 777391676 872053460 778715273 941819918 111212535 788117024 627591347 765927796 963679375 989750574 395637845 419692919 498713518 651021060 395481376 711784492 371509288 582692141 420229279 913210068 648219976 706192439 664676917 802653139 46206046 778907559 256998067 932344450 715583839 801136912 962466837 991825862 992239272 992748603 91875535 693941943 599063422 876160677 134367316 332872166 537310918 786852158 723721230 793387674 136418281 297959662 164388598 710946218 358838439 624132744 136253705 346361676 880565051 945451976 539085248 711517950 359468440 361916055 105357715 337984269 507677400 823269108 795956255 889073129 70177979 490396045 380207781 628963213 524138211 865410915 32504306 73919427 523436459 973310456 456320117 982084625 683435464 974728062 863475311 871801033 230388735 610375261 149335945 956663649 132431038 658090293 453288306 755053368 216519187 517359980 658274067 680453970 473154326 493399609 528675700 893096262 620033936 783574073 938963850 996689303 307044317 912575937 766130330 998789231 270533083 780029446 550354542 836485042 32542121 806029037 614240167 901749953 877841749 901872589 786279846 968506052 324928581 399731285 448208496 791658422 735870513 851447515 143158996 848681233 256906075 524751860 520400782 682835657 206885113 289273367 816534280 989807997 488072 558814326 25878507 234939329 564190437 803782587 63424471 203747490 756734228 979137365 178573929 440029840 771904424 924108128 493400765 845786720 135677683 381240886 542189403 968352424 11624345 833568147 632916610 677085157 764083111 769782727 857263972 900648739 981578419 987004981 774522933 843945501 19282200 535362117 990612833 997056760 162897654 763082403 614064385 915910907 118727843 812135372 245386864 817120224 886209627 888669476 458880376 493278517 843143245 935044544 839067356 891510460 235886680 710218156 917702594 976871980 791770313 966141971 907942499 971109641 913005613 943035124 206166654 437513051 904367620 975672430 316880675 399044382 63209366 225006072 370113220 686060509 266219238 343583504 553023768 911217929 860620101 862382076 551462772 723905713 480528576 647553056 932925238 980231267 237121752 823323802 251041624 975257360 928385342 995275510 577505866 910963179 103678817 573692030 786659064 912069757 168193679 326603687 197982889 711230291 821783530 881237120 679661504 717839916 993527442 998137256 374366563 774184674 344528187 705856860 430911746 904604510 180157837 188789291 38705237 445067162 409598808 786906143 541736835 840906068 278203953 819848849 724929848 948794973 418745276 735814290 976551655 995099223 644331115 947272987 87153588 926609469 52863371 261960139 895505922 975675076 923116686 971003248 919588302 967720052 180635734 597879812 995093016 999143710 737308326 783423138 4898231 324034022 228266177 260270670 200073467 964434849 156835484 635375044 189364481 904687603 902557607 999654767 27984395 592439718 487075149 953404667 216436801 699710152 44418277 519942815 262265659 661947603 25949755 504056588 263114794 384235977 177490697 875371826 823393617 949835956 75905811 402061039 640130397 741017862 759511606 977268390 839149620 980465657 83049661 998334530 587807682 656238736 688569709 772968855 544793778 797647091 368787716 475412556 637227071 787397021 11596026 563618487 221367233 382901546 934203774 997005637 415727370 839277906 418925004 920916490 229085513 311053868 587183507 769542326 449052486 877543401 441902396 589027062 203553949 846569059 131342455 801102139 904837266 909377755 46739506 705620148 79936014 620931329 126015141 956346245 773406272 971790630 674736407 923887760 657338106 947750526 610742873 699994357 537556266 792249542 340732103 568805234 438195999 497389733 32621427 610818139 221953272 533845451 841376393 926354465 224413633 767977886 672302122 960485601 127465431 786134903 339052048 555791586 601888381 702827329 828307822 871577751 258611760 267118440 827736863 930168727 389061147 776863325 371374697 984845861 644093786 935122302 26541755 755354570 986231286 991263883 857022497 899564747 484515863 815127635 108375207 221649090 440864997 752648279 849999479 957761906 629459729 769217814 824060872 862278842 764682251 781993164 609754926 976024295 514877864 881167229 468271814 884551640 866355938 964490868 33365867 816194229 324374242 544878731 469662150 779662400 119904150 491451083 37982446 380155440 766353746 820211141 419537863 668530895 30269310 320620992 581961485 585691083 805135325 919213914 285296646 483337764 534960967 774271513 624091314 801542539 795610993 814355767 383539737 987149107 765954961 998784835 127909744 483928272 35988421 175335144 48920221 705652734 920079418 954015382 349511241 424672259 405669659 824954611 111104610 570306625 905446980 947255112 18303830 801106306 326108664 526667313 808090922 820505962 839715341 859678585 782514114 863074436 616023572 904561423 232754361 933438410 59180883 87448080 17407844 951428240 890000920 919985952 943756709 957596604 277647871 716487565 296516101 529638620 225216542 315285792 92831730 994330230 102523550 355910654 206165079 244043013 178811274 708193035 434535709 684498249 785995388 985309858 252181938 890163337 414129145 512673437 975892768 999023408 350044446 455029283 732602858 761275646 474102458 582307209 964528599 979119509 161738300 485240085 769477753 991417299 89853120 354685106 348745761 918293496 458872496 590181523 884002862 932858112 112398474 189426676 585666409 602425353 983319938 989589860 44993775 260487046 793199797 962563110 913638318 992361861 142052026 982521738 910094699 931575286 767680696 912538462 409714813 538421316 270417239 810184694 966028319 986879845 866750477 918656501 545783704 895935564 97350522 303300962 322538471 789499242 903429806 915636911 941262701 954027958 719417341 850300759 54133178 164551109 856020098 910322422 537401639 768778125 949357530 950235170 878515156 982554494 331871207 599076983 558683876 974547144 489094590 957044042 871867562 932769216 455131988 610065484 876616889 904395692 641207365 696464621 639334099 793272054 486584924 719251414 801514318 883758192 394644306 913996006 752826836 858358310 121971360 830370549 665584335 911815273 791098010 823311967 569605915 835572144 854416937 993015666 116369426 252437904 820318219 995459136 850717025 901051302 382740647 591591922 919936303 985446185 799448252 926982154 819616122 960351743 232247853 748545448 286017430 899692702 751898316 951101849 207374323 369374828 652656840 940613988 175421442 731679294 147021487 446467897 244909246 533906049 62721021 258762440 582117048 696346676 872562084 970989840 614262514 773950559 950062918 966626641 151952909 765767590 530224755 815221048 628671775 956970719 327590597 801465291 208548783 737193876 464854429 967674307 177579824 291959374 180906069 244935999 995549005 999288245 7475363 648990956 903379436 982939302 50942237 724042617 799824109 932757669 474383863 663060007 680561674 844889727 142431017 742740541 107840743 573473281 389750773 716501829 95757199 999391496 777688445 989909032 457039515 506111891 371422687 739187773 506804974 995372774 257174550 291939406 300936552 629437534 33272094 855291643 761363549 993843364 296182422 709412844 476701626 951025965 633175556 976116718 615723087 913107595 459574363 867087949 899895566 960227266 310667759 884040622 538190401 538399078 636775814 729233392 235798237 252505484 70617334 764828359 81362530 249630312 220260451 316855673 486853605 938414693 265509457 575686617 984115494 984452135 114468619 364005485 268977730 697404247 196718060 379195838 419389040 571386344 877869110 990069015 367486322 670100413 96508895 472008471 419740779 935485877 746250928 894233532 106498869 383884455 861929574 937528347 599147413 820310086 247749962 559957387 118379728 890061342 747012887 854623913 451569601 776323829 987478962 988388279 869760498 986119295 40796394 106170945 49270723 947589177 619451800 656171808 384553806 773392502 694490045 740653273 377820273 819318409 379936937 828194376 466449340 520251704 985380789 986710569 937538235 956339886 618850066 958568626 752854287 898563423 570301716 974506198 152154402 372800341 602141168 873794327 776189405 810388769 444536865 553005701 741000961 858745609 327773537 494240124 963398039 970298782 813060152 873974159 390165672 946127547 4490034 172243616 219548712 896904986 500870293 923603041 800363952 869166091 531923107 564722899 694649682 994075125 665050302 866466824 135874428 742706012 850433718 997921256 332907487 602111292 59369309 164592246 297317057 620188178 71198244 549628625 706712123 964532305 637060093 998701390 85785961 87474511 354577127 850699059 224337102 667967531 115000988 293854076 161960681 170453372 364795699 622766047 412766383 809702457 784016879 992515142 186553823 987742546 889866290 973461525 111211227 398425063 107468992 432844641 178052042 780463859 903892890 979957351 336293269 405444312 3448786 88492987 268155377 505489261 886623709 950071934 671691230 860668777 943353388 996000368 829830706 879899909 305727386 904680575 735533150 938973355 886924910 940659599 758367546 767216017 125536070 293322945 548426362 569999698 183235533 768483632 897867049 995315567 875558845 965432290 869890229 899714214 83279585 992933828 568241135 840333007 109828371 477291738 855124946 923918305 524837266 890543530 197744687 610866821 523890366 529385552 895397687 922174670 760494208 939083837 899096419 926876080 389470414 685545965 155967600 285769385 53966068 447418613 314608304 856612078 192793076 729894795 744354567 788019498 960149276 995022840 832558200 953697962 96683105 134765621 429563912 893949108 273692296 292568972 332611293 818552463 290459969 556218723 699925475 708691172 282449708 596399980 330031239 988394802 792342721 950200740 309384241 675046738 336801262 696697988 653809028 717992509 478527995 901957444 951771341 953937782 197034103 259138430 376743452 517970900 989575972 995066806 945745015 991025046 271030538 460412645 574948060 984189529 918494413 982892735 690101151 980716554 145108267 924044293 29348162 748168558 417617492 574411400 783267519 974444744 711002797 987718553 940334229 947061594 48566816 99263945 41516494 483618607 738403565 833965703 506425902 957177107 59956374 263543691 841290202 862931951 610434369 966276271 422854848 859744965 431286019 602208520 387374062 468634420 976374854 989269802 289802394 739300374 77791663 884572243 617693748 808346843 487058753 698061087 760238675 795808187 532841716 604048687 37152574 194644435 670674292 961703710 732411817 793449194 70009862 99386968 198494057 822455086 17385553 61347966 434064533 553859979 16097110 756285084 681072722 896456739 965183132 993668270 437354038 904770140 653663010 798404121 733208327 795887648 16400153 816291002 153929558 955618893 620303166 848892060 659730207 713631094 98147818 695739140 353620441 793449585 114607479 819744924 34487195 183986940 3041009 48707963 132779403 153403171 302820442 636710876 385699774 912315238 297640310 630117753 467938893 986319706 12393371 520363472 369173870 647416368 839600104 944137784 670398047 874506588 414527514 894018927 168386832 220353874 564326933 940894060 15362209 976869339 330647532 358842258 838566146 873495064 539546884 892230823 579876718 825603964 974031681 985379994 181715497 816191446 348852679 450162039 113167601 690474308 75249649 386223504 399182165 625739382 38390425 402936704 485401277 787230468 862393793 933224928 563020913 772499732 604991159 821056003 453877043 810748954 535080140 631384727 241214342 404988602 144032379 841550592 811323649 891571242 983074695 992275437 869487354 948643636 405132516 680969137 141343350 764307798 227724616 512664726 920435901 963785062 511110211 909128485 392292233 446292184 157926014 443764483 841767931 973424536 877381632 980181717 906728527 973388006 982744567 995748091 29127885 40976054 858436118 889234149 199388401 380589489 397406371 477346932 813971147 976726410 350872088 605337262 25270275 145966059 565382882 716425635 560943409 727729782 935151676 958068379 568463769 948435472 910711018 955405186 169211234 268330843 98212101 659906898 981731452 990004415 502124401 509675312 844474863 857925637 466818097 692212516 607216622 852111344 293200701 910490705 229419809 563916356 547856104 581543067 770595694 776944275 952951879 997319968 127113009 618671158 133158148 768064228 584640775 685781032 883109180 975140903 767355139 952741740 991702620 992833963 85986259 379523502 582394254 980447764 334132325 850309228 190690253 401807400 361047559 733595604 150760378 434200312 373481192 397937637 191770238 800239428 662060599 741850273 38091804 90078803 244472062 981092892 96617992 985414311 818463380 906982317 429879581 948345120 624777212 816830335 512007538 743807997 486888269 531392569 15032838 392287299 718295393 748308543 547226852 698334431 746634809 879800921 522086206 855726085 754491928 818564511 841345058 931488105 672746712 959422415 159866841 930132155 650881178 855436310 762174352 817642220 757375828 984093799 413316679 856531956 351908537 763270641 729972198 991245609 572739597 812150439 207669570 594619335 141307812 811167146 622154672 656148420 408749797 923456257 971880756 978499626 75075735 999926752 141367260 328478176 340150674 687429627 904995067 949793994 807360898 923433431 412574698 792813484 120213955 449036401 518932480 665231687 915408834 945923960 927806158 996545363 565922565 973929314 401357965 997627069 738291859 825193218 437310470 963431938 610920851 825781710 742925446 765948782 207959882 227066684 647962574 804635524 370187005 580776399 354344067 887377793 351512859 415910141 851890507 942355670 13496734 196120421 873979932 889490745 739675095 897873330 926017601 971371218 414338225 484765495 639642256 956009760 435608549 702322818 294010039 610684743 745867210 836671691 800866703 887897441 505654905 964769981 966105575 995659648 99908492 972329793 391521374 666002558 116872632 373755689 644406550 720913126 450162444 825436804 601860680 983267740 136657666 680520137 366972102 950162670 738778521 798430962 894662070 898977941 24003515 619080700 38528861 914541281 675703025 930949829 252347163 721321110 339273947 447295312 6099109 624501088 397440197 448857145 726678657 867982387 537071253 934591835 522819665 823018504 403341493 608460593 989809560 993685987 582716977 859769042 495910724 931033874 257845751 337628260 520300180 535508525 464863501 702980636 154310906 631765617 379121188 670254958 298371301 593466682 799160090 929613469 291984300 457724510 130709054 875399331 616178892 919060083 760765087 866280794 160319498 396185010 180107822 422453107 817984846 899645339 430918497 603972198 589018047 783273303 290197334 526065912 139577928 275439413 916028962 928886401 252902677 779775532 667592696 700168069 533851649 845350595 736189491 891058456 151379254 539972384 929408174 942105844 928669043 992857747 648341889 696657559 792995800 880112214 308895702 817573228 84962046 437154311 242827653 637792615 516475131 646765418 421664592 825486153 921280629 976989788 458460801 650229808 466123643 985218720 938231384 999255996 5814852 582885758 800142317 990063563 631714367 778810192 928672209 962288413 143400568 943567246 937537803 948250155 270770625 759047425 264158005 672562780 585745874 906089249 342858481 398292644 82847500 982751951 760798026 971325706 731726536 780173802 388134976 731481525 547750255 925706881 702617903 753879433 644563452 917153836 570354884 796597270 576989262 776036456 134270346 165565104 235666407 268760381 234364066 926411173 997975667 998034843 570196073 749737265 566811824 994510415 423431616 794894820 977536282 995055328 615654452 758539185 837852923 886031379 160885660 803215392 558880096 796691215 296424746 925201654 646643301 949755373 596804271 848797485 583214559 783592973 892576331 899628898 628500670 768118067 256460478 442672862 935314098 955870613 578406426 638013030 944355616 979126017 553249286 894451092 386756459 515886828 365700742 559570074 278530300 379117987 626843595 926775125 851477654 955385882 588439556 699133909 176556679 675390778 875051076 927473136 95209712 894853563 803761500 978406148 807895317 926871984 892608260 924439858 341929780 934201829 356442168 851027431 59578782 503149342 364082458 760669895 222848038 929698233 182463654 608117967 227635962 707717529 519418944 773391928 108647386 426931933 227429763 827754709 364864204 734143538 783563426 785620832 731906135 968179907 836619511 838443673 352406184 743317228 793113595 953197026 60127026 426048079 17658529 919482029 587009034 591487865 336046792 684925696 840569120 911624857 778390856 869075451 57900310 195110370 838352139 855393136 810346757 886707332 900466081 913647002 830721544 859810480 916307366 966137352 940655889 950913167 977661909 979570651 32336178 358785888 126833147 577610643 789798952 865986550 185686723 564076204 993826397 999125670 537665070 973280771 518585119 629201201 689403557 822897489 617861350 997908378 403609746 676799197 829776783 831055866 620358183 667223277 812863937 878895567 611927573 652884308 944489899 972008041 413125154 470301823 530856884 982047962 841550935 984455952 106716194 875967665 782025868 949855259 898951911 957480953 895855601 979971415 487615576 927914443 829861060 888711680 863049972 953587888 209894231 532415923 399308266 978804704 433746829 589239395 369297738 549407502 312273528 538410273 479141830 857419712 580030528 742757081 340707186 970894080 469504361 872782183 873344828 980804718 816520474 974282162 57097809 710569498 760093598 970047221 778093770 943953853 158052115 837380651 323678364 854629969 96949017 203972081 944579578 964432748 245683388 323385473 989377552 997299859 302735279 843722145 571926291 965701994 777355555 905665942 861281489 892454946 405820075 505442313 542040157 619758207 612723568 868184176 377253093 379609636 569268340 863909736 660150495 984131861 821605527 868418705 546241940 640497997 786996072 826117882 458638038 941219158 674462493 959785117 744436993 989255653 92757384 115250556 133894595 907188174 818099169 992813129 578282752 685515781 798216652 956299838 881088891 995696435 609339668 833358145 2650805 875715977 113536865 992226005 3215534 725390402 695245119 801471251 254335642 785881938 594042876 689041794 757958174 892599054 895269212 971038611 665700445 825791940 635442484 944325783 33357192 916278035 163585019 271837814 706813958 871580558 466402157 991216602 663982580 712921305 86138408 333734460 650457188 993071431 30814937 336156905 151534442 953829864 153133823 634218276 868723334 997951507 42231226 180887050 608091887 909617004 179666962 967556711 239760383 515990802 418862305 469586050 634945192 839035473 346832637 932446647 574691845 714001306 449831002 468328777 955942831 963030485 767129499 968885762 733890765 801224504 814394385 982559580 559398659 563646760 676517369 933409078 740712873 877759859 130406225 609724173 878666639 924951366 182570457 483092141 364280420 897442288 217119417 249557774 968813341 994524565 111383197 199384431 54620332 200628571 483783627 874620987 247252355 885197443 165642663 474494945 787791503 820993955 600107577 893372686 65801601 916908970 576301880 922896708 29223437 590803470 982491256 999059431 917871182 922237197 79631877 249966369 258327241 386545357 417985203 793269201 876651842 920111691 925496430 947291548 418796214 859164856 861528419 994836844 438489620 540042308 926509375 936172988 966609012 992738913 672754688 859287846 236814918 844474360 1575097 601369885 281597409 449614773 894417911 940404388 982394379 999793324 398553431 511943235 509170788 540612295 408344563 805881839 54552432 547338728 534263045 899286109 968541787 970994387 252189634 993060216 737205298 758844791 770205272 791019737 530566558 759796807 449542999 883376077 23262083 75555419 79345144 907248542 388513121 684142474 677926489 840450303 570510193 861371006 961291055 963956030 570966455 726773293 914835850 970449154 985332528 987066745 366987651 585551537 887258651 963500312 946465005 996702638 500047648 506384783 289770356 883688544 885760315 988483652 232755551 282977135 331128230 775990304 205270975 551984910 536304194 877881303 247978697 788260392 562999087 635583268 838942161 939450021 498543600 772018130 269876849 933181781 513694000 901121838 828104634 987407160 316206955 339966554 785436749 846693488 642995190 731939725 212135602 324702129 204378733 836673543 123244166 354505344 357684483 767125670 982587664 982611152 762248280 900327384 486438800 638081964 969791705 977283222 384869924 617191024 318225464 820372163 124022610 459413344 826592761 832975723 210203602 557587061 775022962 780427035 701415480 940961596 911873144 962006890 155403572 946607463 350595472 497027132 120381243 374110708 690689847 752686350 679926472 738714655 291565509 291879011 499622385 522957653 637872234 714996595 205913769 269617589 691127121 963452008 591743094 803825248 515382163 647647242 124047183 545179756 512423469 870281773 123040967 963877372 641302396 846757957 448425582 840717681 266332392 770864333 19595598 303049902 978955423 981776995 469556218 618007749 46141058 162002366 163396520 342731498 530660956 587499091 948774005 995555203 487569734 907901578 854311619 976179301 866714469 936087008 950509428 972078001 2117947 639923397 545207257 794785742 544813345 692150094 479488723 856526761 871284187 915409295 863173713 913111004 571726280 937313848 633534344 870581632 871343012 924006716 201614369 704055305 586683202 904259328 99767269 590225944 142299531 751327125 393810830 857002664 273795250 396783559 974366756 998373013 78977343 266796055 87313079 478497922 703719768 932294304 330844919 970055795 692056347 893021138 727840711 955600536 666445742 874926164 845548717 951997548 315376695 893251748 261342553 289469408 584697706 663961017 171340663 866965614 846585903 933781241 234965846 290260007 998846379 999579745 739100186 889875158 639502070 711642176 53225224 386037301 498135082 618457097 588447035 948472126 420000747 846647586 797478010 880153856 397079913 901286357 755870570 952431839 207149308 333327771 617229196 955762737 306000152 758133211 27205697 156625603 601597664 956265453 172582276 288044984 388152503 516197860 105645257 897148697 674064145 990312943 958692942 992759536 296077149 972353323 585905260 673841144 196148536 966996221 855461684 928508292 876322305 888351595 433502585 908304978 770606641 963733682 716322415 833884489 312745475 589522252 92045728 666777447 89113803 945781173 802829718 886546881 67144748 822901897 387641771 872407135 235414276 574192388 981001975 989133435 911343950 943316782 823284364 895616242 980742414 999546116 773796997 969893796 292344230 718445556 833014928 862187261 607850038 676374443 701541175 755667472 123029241 226041599 661611321 933324186 572647165 693019143 682794248 967099816 502781484 663391849 72509760 933752609 944036733 972654389 832530414 929307943 815722955 895446163 269412330 922230734 382041675 817197327 744766866 891929973 536358694 629282161 219684845 715980126 350120732 714258639 1494073 167462861 663531616 974240792 786647814 845157511 688150366 748229885 141113561 610968803 625740044 772161310 170268845 292297970 45020729 707759925 313527534 801921946 432035451 446378031 321180577 987851842 997649294 998964343 609067924 724658040 567967339 619360994 265983353 833146612 205545025 616048220 940017208 972411579 607508104 977746083 722438726 930082601 627432140 749348191 63723797 268051553 693799653 743782497 456298795 768731682 246276330 685909639 86197838 723203571 903433134 994392601 512600506 828963327 168045551 373356195 794501041 964505785 131659632 162968081 87381811 737329415 87793157 185002345 620142567 846930151 731341017 885656315 819412419 966431340 168321281 208731944 122043576 970668616 654944700 929186091 845970107 857466539 55601341 855910876 724932408 821126257 732842967 888828177 715958247 779076040 357587206 507739654 519602613 727245807 507073216 650102199 397428188 512987569 411362826 996932337 556881521 804993339 8404172 44686138 909210477 966631570 883739601 894285867 700567737 748644342 963753196 996275692 515236489 569864712 163447511 966065323 898980098 904587741 642613509 962797552 775000871 947691095 386887261 822506503 388974792 990199521 214143383 816251285 221157220 958916608 754741139 822761387 552891694 714316578 801955661 912273333 392742074 603230973 239384719 735971839 18668861 486055087 307229405 901757221 396059472 902508808 86476427 342416689 117678796 861495951 730402328 990830319 96433182 122092612 965328841 992568909 910906665 965770414 417468788 481669696 267314449 337855925 560026165 883059286 325512035 650433087 258824720 597053664 501376752 890048137 196592022 971964365 540896748 725790394 363157593 709070003 934078987 950713780 816906214 868828761 770790953 883652507 383557759 522759168 688589145 816658362 551709989 729088434 635007544 794451283 593488821 931888046 756661550 922822999 120843481 756071471 361364007 458397533 885700233 892948586 852565136 998697715 650854071 952050524 279362806 922323730 567810530 824711163 394922288 948027966 3903054 553606519 102606298 979398270 502573494 987820233 738296206 797081940 710717295 992999660 273019453 678126099 880839866 902986586 231093311 763050889 76031674 956287789 453958314 782843464 134871478 635863545 137692938 339281336 955362498 988486141 824842700 925349426 140358670 374041066 75957430 355530954 422803997 423522325 83447686 796557556 545996760 807507794 54398775 905748442 589485936 782313769 875259528 975575871 627131191 766474059 614905363 955383658 199117303 599917799 585060609 635328148 337714589 556469725 612744199 681388183 841802706 930840763 561374606 593388591 754510677 887815046 474822753 727905020 668943519 699345329 890660596 940585192 88815421 379909232 471579962 534347282 646960342 802865436 843757063 922526019 606752713 946970438 729976003 740803216 669569896 885891107 16719502 884968819 759506057 783934725 188735757 496457583 368119844 585293650 649543942 735197735 893879126 976027765 544424651 579904396 646782519 967957540 95756618 244866947 336927173 581649510 923368980 938368355 187589768 677840992 791624534 952251596 349006710 489940006 325034561 523435560 853217537 929937675 211170098 214965820 875355913 941189267 208883412 814179197 791317210 894256631 947110858 990978616 584551770 967770687 117400401 198695205 165221350 449335134 168951920 437905223 300795179 950421176 780165818 894293846 570023625 849012744 234980496 441310612 555368506 903198538 778043144 921539155 14151295 196756792 734144689 999166138 795015230 829500119 983378510 996987353 434794968 437252347 460059160 617717092 30483978 251037997 409168068 448701317 308191160 710366081 737433208 866918688 982282356 996335752 268621693 555859188 769274972 883652853 121344051 860108125 5794540 449434427 646731313 905347909 135066358 960646789 958995022 994697580 859968182 940603390 141189194 734387449 162038980 758116403 758129292 880300527 456563205 507028821 380188883 567080790 470768387 569341649 52730638 93537661 410905976 768866608 406361631 820562617 204334595 360558326 103227822 198430704 196321455 671534445 331529949 902566270 364040620 698840392 316962870 769530189 520317746 754770864 885279188 958207062 418873932 993474199 424418589 546822023 860553194 890253135 541985251 690015699 492936904 984781470 280055717 702954828 304243998 791702122 274502491 328898678 718690162 874046957 586912725 652874586 42441274 55146735 31013930 649392452 827374966 940142196 210182556 526766324 586404090 866046266 30616876 860302181 674289275 687620883 283792220 464348527 813494635 861960519 774734348 970837921 578892983 644157494 710418470 944012332 724976324 824298469 594307302 621922812 378081011 409237716 641143514 991731754 416211592 884468829 55621553 323831251 175147247 385990813 351813363 872313733 273154054 948626839 660481849 842163617 942003150 952178187 555412939 565502420 343223885 489921157 714096261 775707748 621437409 957530081 4078300 252772653 875773244 899325415 853215452 908571330 338978512 725094148 461282561 839646641 9733169 565598045 64821990 520308375 958595805 983841375 425870352 800774827 193288487 641509750 369023485 371101596 932665384 979820216 764367187 909809936 98207139 630128936 433612499 483582425 599562210 617046802 238385225 357700171 164455170 720031050 949013302 998336796 854767537 872010791 342194914 441236749 473968665 755778813 566658280 755696944 700142983 793749465 472461634 612960782 282355653 416603053 90406596 562861006 11314229 731598613 155901257 408739862 848694300 878164544 861865768 866663005 430554357 653379669 372218715 513407735 711668055 979830522 733274156 856005995 573045 596731759 989373281 998293178 710878892 868475102 710367065 711419701 824544051 895853202 566843273 627360061 202497621 256838856 141412397 953865614 74131781 243295377 552681637 783684025 17173453 311660383 935129823 986656879 387768696 897037417 658406908 845247639 941554068 950889268 725923962 910799450 565708459 972679756 952151872 962719618 305837718 368190743 340328649 886121136 549189248 674162544 595626192 729480969 387991436 636853904 742585666 917350605 688138983 700740883 785189731 863292893 580260800 913275938 102105185 637602112 275849198 728661636 502593564 816594324 959335402 970984726 549813182 635112429 618821284 880888822 307168388 476968725 553394528 638758620 157666 849361856 199675335 276310830 884485209 968257482 132765307 747848982 944228819 952429791 858975280 982521436 813114557 870141895 179947451 963256265 139988913 543654973 402887633 612567971 837697404 849643409 811250588 889773647 145522715 386345750 188714406 238569321 237869090 899013789 233895165 919782703 767347331 817726657 336313886 448064643 385847645 736562189 973515034 984934997 145779875 508193037 520825232 900534661 321244895 509250238 161765017 820112376 310609521 977052770 613313787 719625450 379958293 736482384 453476061 877092012 243077428 994364200 279143383 856816994 350823308 772853328 149624502 686897202 361095428 738312989 837744377 881615715 783228256 969523265 40864630 967511980 80783449 154123594 937290560 946194762 995290935 999170903 249412508 404743227 398559632 904380706 934305736 943665994 998006142 999479122 131210583 990398574 800505751 892070667 222609281 827642472 567421046 684633935 672301099 878063998 203398529 904962723 952990398 970051934 601263662 826046703 183334448 751638427 166260422 859979528 397472622 696319722 440308270 814694574 293975855 931435565 16352705 800346257 861692262 873935997 246459361 836668592 258027885 266106064 953440017 956947756 314340443 399105521 3953644 702162459 437502430 732177174 457273738 877976997 133232683 579513751 795800113 836485804 631054086 761552066 55941841 902678566 979239054 988533560 778757089 805833485 591062026 834201141 608942496 734956953 502943196 534293203 872687612 971715208 149366730 776291610 361288983 710591010 868816099 876904011 12841682 230405376 15714215 186153108 336037510 777163080 579385591 671346966 20435244 574787663 992371159 994339742 755869865 806715983 316236300 639372452 933945336 998471873 14335074 591874802 261178198 650345592 500339552 956767884 238984882 764673294 88404128 111148984 355375668 575560053 106506864 201304003 243639155 244843623 584781309 635229750 835243169 873217931 971889318 999903912 637410902 866394466 520607801 740816267 351220076 759835226 989932126 998094092 555628814 828133140 448826601 595207727 668436593 868503720 728493459 883370532 321730662 604745659 151858812 755028260 968933884 992901859 788947425 846081975 374978943 661955577 859555163 915209154 138690852 579961939 827149988 992613593 207966210 282661579 555734168 788339696 366178537 852629650 494358471 866469554 303480080 940465388 148865159 357968403 629854213 781186360 742378145 743698118 53216382 675640115 603621501 731186407 516021014 931651449 370101154 474538661 372501430 404399389 71034480 420698135 66790233 384399860 244589512 856343680 620830592 892768043 211553694 373801166 53197445 366410191 718150240 924850431 536822919 572441604 157236093 390583435 479121540 865962179 706049773 756348387 911793253 965484208 237859512 674386139 311155819 642941222 264785060 537043941 702685141 952285037 431657111 855821371 702963901 946042279 656027851 754594614 386495784 399296210 359452821 587760123 692601605 845355449 648702966 997779507 805830869 911757576 115992555 387731511 483990274 898395390 536512916 958661912 126451045 655950307 389284452 988308039 998771444 999978539 140883766 578768366 933731607 993781078 327348969 624425709 906586915 935020485 911916562 938725391 710345670 842530480 756185779 899467972 397885085 427445727 710205309 856625509 394794304 928268544 167425596 196496605 679722863 769239618 620479108 826820837 898580041 922565185 333544973 848722553 697183862 870994652 612537968 943981679 240671367 656343541 974066121 994551384 912022809 949697748 443561201 968072870 737333871 820115617 590921871 753192914 264617432 978028504 608719564 743007653 122276758 788245893 826074524 845254454 172730338 919126743 206015589 485254775 124852543 245591003 505086484 609591836 56975669 254828456 478223100 907817150 762136316 828993583 17049784 201000912 225387847 707990139 993978251 997260853 302244381 406303723 343423641 713852629 82209003 613386334 893905965 953592462 544612905 945741140 895848004 925387842 554217261 791459601 762934298 838786365 455454464 729431088 660626943 814182425 200801960 257176978 395408266 992398579 965120844 974699757 116442403 475917889 403652747 603100929 381831208 945911526 153647947 261843057 800621167 874332714 108894383 903628588 183074421 789823074 769310130 824051683 281886727 893379996 483670778 737055243 506712670 972144730 819951230 835288285 738539952 827192648 785229676 915799689 859287132 933401167 394302254 847595632 462572467 641686223 537711621 550104569 618476160 958242551 249202974 786379059 502566227 717051426 124878525 372705061 824054218 826939624 852592350 886385953 346583500 871534157 592554815 656439050 138347163 289998814 169034692 833923726 349197145 916644521 596312804 764227749 559384105 830513633 288487845 583642225 640202795 676867708 430501968 695055180 70694676 444345671 637203768 850751742 772598454 927459706 11079059 343902128 488834067 858558312 580821978 967807123 345644448 992561958 538524899 554139105 414648746 808405701 140637110 207891730 816378365 903724394 169697326 432635544 78239455 268364549 228432054 425241695 298308549 656371222 258388480 944162669 477687164 590401758 779955179 790371772 691994250 849832204 326435754 882937864 889295712 964196456 883643922 893596644 395668333 486141444 164201093 337730787 544762516 569038788 666768081 755464002 856818292 913995360 493422513 780118650 875000721 972945223 314196506 869875624 26021930 253628241 874277334 978077099 199124624 332369592 266331176 391195165 783836764 878297445 757584849 815789058 935209478 995820895 258587219 324562254 15913145 403844467 394012815 805386450 889746308 973769460 274966799 699598632 510981793 541289950 860453323 928690862 885919268 893136487 270727597 506223694 770851220 847580219 729590713 770966529 256291925 670129983 179979044 826688806 580982011 857201592 396740125 613748449 499264981 883499296 1017808 377049429 271171044 512216240 313023630 710693386 950625578 952424123 409497518 855782904 988909255 993931463 904631742 945384244 10779029 213733215 976679117 984586129 166189933 534702069 83000424 551784295 727481108 990593473 322671228 993737933 666268132 790047436 804012518 862474573 53489415 501951786 580248256 719870382 629242041 808757069 131614055 556083253 752098005 869407263 24369364 494888156 164245375 583054391 542359567 817782004 695246677 706859477 808959240 889354974 600499562 745122714 562679965 822034918 972282224 986998858 487343129 782866809 826855830 909672105 758984116 936222868 360122301 362514981 369320475 385693118 661547431 747480172 512316802 633339495 497013449 548409651 651262154 797682665 366034363 652528577 502835152 631658845 854221083 944533048 332876069 831189516 329486979 554621224 942011589 987932479 241967563 873153788 371947276 535348006 941548781 991546598 84790229 483762521 437081361 550967790 162954889 476370165 26981 270323792 727612346 868968787 125829559 826149305 363276596 812101353 800557676 967027051 855512221 952029393 124305195 755316973 196229969 377860640 949238590 950427602 981087437 983670189 758826953 927661628 990581839 996215406 152960904 424567155 168634220 658203903 859198926 946208199 119793360 343637120 278929034 519672779 277952717 837764701 119087375 905082237 134791457 356057663 896807249 988784656 749345761 837181564 419797399 819704259 439591919 714844604 293315917 612974008 65148431 714078099 551596190 737915635 896890791 902495967 150526614 807372181 466865984 558844747 213252438 419174582 318303018 522210189 264507335 456056110 55672855 393701704 845918667 996252548 481975094 869070767 738483330 887547128 500797051 727924465 940957875 957435280 799972024 918269805 321148498 529409537 142423435 998669607 706793612 771622922 90826905 419766052 948942686 974892774 406836323 817603627 467702436 977918961 717187024 784903918 569534879 939392053 374576517 996156046 907940392 921783888 572153906 863467455 827708775 886475255 866529820 937553591 990291158 998825301 580644062 685539083 631603204 851942615 644857173 960203689 14655553 838541300 837698780 986050846 141843980 351642848 389053667 846233770 454838661 465150684 471172261 934451208 4940065 37686265 956559346 963839281 766542055 873520854 265452060 889595656 480087585 961865979 539930360 859842238 903529528 994059760 215155024 632943594 41166102 154797431 905226698 934567166 534981117 665214833 855805871 984016143 238924772 827079482 344825249 607046378 194935000 444446547 378703659 410783868 254979452 866908436 522981727 600524735 165200742 797325301 921031524 954870784 464333635 740733595 940662923 973844228 818467081 848944888 79947360 662065117 291457834 773415902 595590203 680427998 143011833 741487438 447191473 784898213 960819891 991317660 927456683 940515508 355189790 470137888 3918158 81124330 473598216 593601572 982628933 985362508 185953888 999328227 633711702 980182135 939273749 978230958 497460124 524981661 195494205 611131001 709205226 764881603 676238111 917643877 418622059 573123045 656033189 853342800 928577392 951089437 415002415 635817773 977849374 997831216 134429765 196859089 454366079 585714456 892167571 901292923 840086794 887446665 781480984 922828243 342938271 566108528 601334859 800940944 281064232 466281253 414152202 922641532 602105031 995936095 659242208 776524554 356431222 742962138 475152032 666219324 536153492 911332676 905544972 913809883 295462792 498105592 370587046 585110516 746436650 877129330 573647638 992897899 38989345 285173402 384771446 679042007 603827325 944540795 228399866 679219440 948687676 952694756 529689879 704169927 261554362 315529285 574451423 590865984 713125047 842129313 203589446 803585719 445066377 815204163 670151621 803706123 819029392 975891352 171891854 414022509 912908230 934937642 713490897 925234366 313646667 593768423 359694406 454354702 219790515 515001648 222382640 380583844 243574461 367627257 667830973 949033202 352021695 464961940 110843459 479049185 606085014 821545640 906236763 941751393 786939036 847373321 953116774 976210750 194408920 201061540 757995590 867821853 601807803 648213443 77660816 330536202 404934884 789200219 170050947 358467106 247049959 828353224 381058460 573129257 525694017 826824233 289527160 628770881 750803256 957588430 895936855 994091988 994427128 995795867 869004254 931126481 42618337 342318829 846491273 905546106 332226461 738215241 146284774 334928123 713806407 776903615 314924869 547132496 368417077 686706512 186833317 881780844 887227882 888427423 324442205 873888053 463026234 464374243 135818226 447035809 511583792 524057180 574121517 842175255 932931146 998147896 318937964 645581929 73007072 340994200 564922278 954055272 111907699 282942337 922432405 977635177 787861233 844003985 340078065 600786191 810447838 958691745 259541137 773381791 15848844 752460938 142532922 167166408 52414283 392505964 790814971 933009842 767622443 857067557 330694811 335706658 310814743 831965785 991068838 999901962 30910939 373318886 416605278 957665292 975864386 997498414 390516251 703171350 925777091 989105869 55720271 827184029 891712698 918801027 588273974 716134057 343173499 895838992 282093112 918842268 940027194 943018178 49780688 859119641 576280485 580944110 934169082 940525654 404995711 422167790 361217381 810853985 698252715 787572383 823465132 891392703 6664416 215142084 353462231 608433930 71519108 651741520 492538194 841080587 313295769 393761720 39684885 344810456 485384309 533164492 86605753 923984962 296556618 442313484 222472216 825038331 327034281 435110225 108047317 411269480 864926639 949188167 915028380 962277807 470651400 988291361 731019917 976231569 469663892 832863092 218694461 256882284 570939289 697464280 24701935 279179633 732576753 881705582 352065404 817269759 380142210 958163700 776190738 787225027 292936631 553858280 47863282 620836462 603968522 736636794 257684911 679605905 150143915 529599269 833539399 867082305 871639195 885535337 71086118 737515064 523104063 732121117 351129760 770260916 792724436 856005702 663186095 940417267 871907703 970854849 104001344 452303601 141604118 797522007 570871977 594725908 868661662 995072971 401982444 931804358 562096903 631493268 600130865 803908283 842369071 882526702 381347197 739066341 113633701 133991184 406605510 514700748 762252013 853415211 232874774 650804025 666903614 988232116 755785448 926082777 373622302 928630858 110910997 776321228 755706259 870148360 93135095 700095809 224757320 900395512 489485714 514127280 466875813 751292704 962576693 972553922 577875488 643008423 628258112 948886242 63153274 408584736 564669829 982637959 50168248 484511092 870730288 922376724 851187888 995122156 790370063 827946472 626670959 846510664 98481999 173837975 440945086 884488191 222285129 462687096 660107396 886588046 654883834 744989449 690051467 887388898 39511385 776176245 432910469 786409776 443100710 878855388 298095415 979910052 65983881 876334652 408496735 617454826 90008950 995770359 402072216 901514850 292627828 344511711 923327344 953547266 566570076 637031099 671083095 818561998 270768275 995081700 101245247 386451024 218759217 803728423 295656184 613831816 520060108 928294337 816130803 929234086 97702085 581909983 482758029 876081778 188972472 772442449 16265739 275504498 652882732 658627568 551106933 966316576 822474622 912890673 674252762 959337608 739438438 762093709 417640230 547326656 593703352 753421471 691207008 888083087 138666566 168897153 591318386 844300847 597282431 862695431 91788358 221905680 499509266 833956202 783738823 849909977 503004816 776239277 32970713 910267667 588623321 851848922 517162132 779383167 169730001 554335370 467503830 778966730 402491276 806890233 14282909 488745545 641410302 992421806 448034961 743813737 280025706 897598893 701137433 878997395 823368615 889007509 233787889 275883476 695639419 893625527 372530514 548705260 101903744 483818019 81601861 815415433 506309820 908018500 968909034 986462891 777143585 875244746 578132282 792234301 858771149 863751872 404915163 677052732 748844681 993406777 355801069 657216192 36601023 262639017 80307212 476167930 42589076 489638676 687250242 879712410 112441728 228120320 662781349 858087372 636772776 782039023 638086589 738183024 409258017 922890626 393466168 712209319 993930685 997596288 567346398 914036087 599611772 659614593 491563787 525654170 797784579 928955536 587639886 656784329 316524008 474496208 61702685 760008631 758043308 928499587 32791627 882303833 367439 651913593 145897019 874383993 902804678 910125539 559943123 584069158 926101698 947497156 189013469 924969846 706924235 862285317 387512459 888829056 792864858 829414512 296958787 456325165 288178385 552350985 832510873 914603758 884504070 917007805 376967806 740807914 130913082 510278620 515629710 793278078 363041172 499668290 634614127 839971967 795702159 880709305 838248188 996105437 84441944 215338265 34844706 882236377 597262063 932056068 470004943 882562637 4369131 911259627 810784626 922898105 6967756 934956910 506489494 597219019 103473859 815838925 6458252 57265935 478941812 959230249 1426269 65859539 584728505 697027308 126652310 354312984 539942213 546212726 246113271 799730268 404594597 910876871 960565775 964063596 707521224 976472967 869008676 970658838 567757396 792169211 759139873 915480427 123887267 160825015 351140853 517191327 423063554 970773393 253169908 308012112 587152668 618518732 793477619 866502909 455055256 739007558 714017014 852372694 284409111 326592141 797046511 875202427 754982226 762046895 380204170 534564689 863814343 966873820 937821394 983785358 30154121 525858368 11945986 318492024 562955637 954670537 623032546 985588447 568005677 909770379 550279081 777713824 153107244 921446793 635529617 912397928 47569963 332174103 46973554 773043976 84906963 869803765 668482025 679236775 563273319 680149061 793077438 934585714 185845090 603516563 215926671 386179556 534235391 965526074 822813972 825930651 119121449 384465965 184750521 448495407 723089183 945863303 267566762 988769052 715560975 916329444 42602248 822192923 931996154 990432811 33398311 817834530 183730547 807431673 718352770 827443517 136773000 548982415 765618057 909592477 454500837 976471639 647953836 838454460 786445929 817072819 65742877 456320704 234920056 961707070 498886381 634257346 485461768 816101463 764585808 823733421 998074235 999964854 641145070 716779486 683525378 967494733 287244302 634082388 501151541 608347942 274353864 396016893 87879673 349407912 164850799 213233648 234845050 562650071 603193392 780995265 480126475 693952458 143678019 892463682 23433222 527473393 555198215 879270273 192321346 990303054 105423508 847868754 90997650 501246185 381106050 771789466 712443564 850068511 132196592 876794235 223073109 433639329 708654824 953315658 175726338 911851314 838550119 927087755 767854897 776844237 158012217 213482078 265289636 559084611 21591887 675916844 723181847 987692614 603187001 824632605 390356204 508830694 424570327 565298154 616431158 887079880 940868159 998702283 878758424 979449582 836965290 950848327 90344413 816058138 582497325 585501539 439005532 721221916 424211662 742624815 758986664 835982624 443998709 528879945 184487354 413725050 185315271 891995758 496872818 621418603 790459388 830613727 485825873 841733002 127176433 813373948 324038001 815294816 351352263 962416291 963662796 963675065 725037388 976618676 858231989 921309094 486981186 748265437 803962681 860327448 312416060 522285072 925154991 930121558 39230719 208541773 75974777 819084599 807784316 943962851 488831076 583166783 843274196 935401006 797305713 857764328 905032720 931027472 416672251 819229392 434538919 986729099 624348188 802376633 895451379 944715359 814148785 830956813 369044309 501357249 675514139 961503685 477765677 962463308 968963562 984758246 945998084 969030040 471885198 752747735 8473886 193080197 621142758 698680096 622033869 920799577 451000938 462440471 20337027 635958413 573542971 911501096 376690413 516197139 751683363 831047853 755315159 992180906 69716319 872077371 840795926 924012391 487931960 991653332 459208807 648651172 193344117 686571504 251098285 502451479 256080152 722833354 604819178 640467246 529487854 698533073 192322918 730004051 830568154 871262430 653249751 685656232 580771389 693456693 652383986 955624693 42936280 194174074 390837146 896529402 832833319 880490901 480326399 533533553 471947879 937012791 786584269 963967907 547217002 868194205 145201775 378563238 795204581 831756162 91980396 694366341 931300944 964455990 808537555 878342327 48945806 571851227 861469524 991365330 370381905 520038306 740875925 854976545 739627183 752605227 404398125 446928214 79508552 428187530 719249444 846392399 387633298 428404455 235422075 406411455 15638195 538497296 566377094 895771389 788573404 879855554 490460228 847707376 220321472 829476711 922656266 960839049 403341657 958141191 118453978 935409966 892621982 908073682 169617878 875625744 194514095 587187083 479410946 889356173 6785444 317878608 748682277 890776235 563725119 726865135 24154350 877788584 73890800 173170596 96414568 267761541 703492151 757222580 374208402 950043267 190268818 650164473 43903713 247421264 302276911 842041515 153148628 788999251 156564728 159898750 624134755 681323381 206612048 511322343 830858097 856890685 669329834 714713267 981560230 983659280 246539503 615647602 672619545 946705862 226877684 494392792 757010887 786604693 924983255 981749729 526312328 856875038 739654625 785965346 930830713 938260793 74723361 990983710 459350015 777575376 530253636 846866842 25077114 645525234 58659567 830086095 469313973 764420053 566599132 736355023 155578662 578515229 830703444 959551312 611297184 633401278 105186003 854115931 918190084 949161127 322207919 448649066 216080592 535649327 190797520 687374064 160992522 567990190 30417822 962004807 310912116 504999111 205531929 901680021 561699576 674446428 896420232 947173513 136134503 794943189 318900444 578751673 235118226 422164287 947013967 971387554 308347498 954641541 97817337 893271898 766722821 902571218 625146148 915516976 24003107 915694070 55856548 870118039 505996126 733861769 23535057 802301758 474691210 669719136 448998519 847702922 288134327 476996825 222454918 615273775 627498540 961730427 238761394 512154205 40028636 292956356 537908895 604001668 321665129 903473655 616438047 714810240 628123580 805921023 900676930 968677566 620525102 721094804 355228967 642249616 946776835 952149166 292760280 346359258 642028998 671936603 686387985 867588797 57903858 311482867 295959988 433644177 579545920 762991980 876053653 903761693 632270518 712194697 841365143 926021895 602052324 895696304 601161692 792077913 349060250 923017539 267860915 526777761 882014500 922624515 904790747 907886875 133653156 933895740 24585699 624891322 486081033 550830456 2880370 861636525 961806525 978537461 848311202 907145550 285968271 960052120 733792809 921762122 131277852 389736790 358240659 997746111 110648355 405999474 395901073 752628287 41400800 193073765 448566647 971381815 535709878 772769459 354434904 818849871 643480727 981917981 884019244 913403225 198236641 241436119 733106544 738243517 569512375 998733706 381599172 877471259 843148252 947288362 702231490 860704032 17138 24027133 214657038 243866391 41602618 773793131 263091259 763840472 612379482 995214354 155671380 765801630 68539991 309770823 507721414 662933853 714619204 990740128 510117162 816101691 140772527 190528320 359860506 380985775 941358138 966928253 610894003 717953125 916920498 954153434 824393721 858884666 999355435 999357569 43655396 528909620 621305540 778815283 262082706 983533625 768169176 844441668 81090835 332436976 110178637 177624275 125618187 841011345 17398755 565835092 881954193 978584879 637052700 999236896 337949813 437537011 299899718 351764813 611798087 641137581 652085980 721207540 605728231 619171696 56772171 680429679 184299493 765449519 205736427 426292886 691671090 776005497 494230691 519992908 647692793 964728737 370677444 476089868 990983275 992713801 28320183 341838334 17507657 675845472 308269712 673451857 325954783 957724907 819781675 969406173 617609302 996243306 582224693 919484899 396507082 445552758 844849563 968542123 115584210 807513840 456361527 639200536 977325326 981167794 50041169 527705952 36109096 266449836 422254543 928048011 726084902 963450464 804514754 868811512 300584326 424495678 717159157 815678401 709661688 891098926 391712865 863450652 353202142 929218488 62741647 602469345 247161522 927153533 746874833 910272727 118848012 737508689 962324813 985656958 680458899 917701836 905802946 983937125 248242104 613508877 70884996 858011521 970113944 997889323 32019955 131525122 973078745 995384379 427877510 481214153 608161857 941830773 689203598 813434923 324485827 950709091 462919490 633858350 987644870 997292365 688905747 953721821 125343115 378651840 401192272 461905675 341332819 916603904 688742482 876766638 848245896 957533050 697785467 850642451 529593321 569419818 95768952 207294514 191082149 910745865 761141109 872082817 67821282 83182933 716146536 824444154 875955098 893366959 619616727 727906791 696742047 713567024 440338384 908523636 186868563 398975688 426943675 570891018 472267330 958244232 404169402 743367853 505166842 858683583 781485266 897446867 849259812 942166788 409396968 936070117 249037959 934270776 843733271 904998474 473092096 777954916 955851128 995094454 435541461 731050950 962176255 966305731 662392900 718247300 262616088 682045199 190235709 775807582 113377759 908431312 682928186 725478713 869168217 921491755 305464686 795304628 609658562 898440846 462120843 960740039 441221482 936153225 293677598 681942813 381965580 982460487 209738839 946073734 635120703 712023247 587086060 739577289 352341555 830007408 723688684 834196174 10836587 591024928 134155180 707341657 280240320 934098263 625476191 670884576 160073522 602034773 333906309 482955701 599557427 810331674 124361323 548336912 1706621 169067817 960387669 989729508 223877012 580781884 372568768 484006884 772798795 812438862 221000498 438496978 449364026 730146919 122151597 286322876 144166377 939253501 918028988 951873498 162923703 277042059 708737642 954489097 511934079 912117112 853580163 985723778 377268252 559976671 838724686 931682966 120811813 870850482 594887100 844437592 46579658 486608803 599769462 991168205 484722162 990107829 626077523 748830350 943668005 990083085 123545510 619606867 373654714 527564518 631125809 967065861 896482878 935367083 333552303 827176974 174146298 673558356 865622650 940547065 195212988 607747354 197869675 565389018 523425885 954352069 927493326 968421193 724653335 787892373 27449040 690062911 912150197 976241052 597401598 906537373 932023795 992514505 739955091 874380422 664246086 990362434 816345022 977870958 647590511 660517651 468290395 774719763 367941465 686265480 275793697 364573475 520313174 757159471 934094800 982154412 905415500 993223405 605087975 910852662 754370108 878977680 749413889 964941020 679856135 778608420 370720551 381901191 22477379 972038230 788868684 965327907 385654660 724612577 636195931 764816927 222908463 663718342 797213142 926570853 437258522 841260971 254072946 677123670 757971675 880013197 831359704 928948578 212130603 282414423 451086394 627086403 412990244 896847406 396583665 865127125 482049370 751133582 140080404 555123263 172433388 614097279 400595663 726872067 128764395 327147914 453070454 876403856 953219433 979658295 685475225 746923281 506068004 899251611 634713004 892194260 859484130 919825976 379469180 666069676 397512481 599418821 455516028 582207897 269644673 617121199 540057141 784199662 836455278 997605092 103857766 553123447 377490042 602547793 434536719 673633509 367123384 947856797 775844426 873633632 947379598 999968425 442670868 973327493 296794482 407039117 668730564 946021033 420926459 766868787 877483220 888958954 21204827 657494726 357240769 984564158 892389117 927342040 464133144 482627739 82570772 372890857 971057412 994170280 452330201 847818973 96225181 119255036 959331610 976553078 884030736 922702516 892531529 989289059 231630926 755134831 660572047 743170528 397412640 832418928 777926713 861691296 247728875 327447062 316438393 316925146 216775474 548186202 731264654 735949596 179665743 210139348 395880291 416932563 246311187 970688245 316547001 719621818 842241995 978131450 73890968 388502650 774823512 953184747 653933601 993475901 140415218 992610671 95284478 436949460 508108486 971479239 615535017 695437356 942766305 978339686 479784369 487437798 296915547 532588024 614523473 980000727 24582487 766056073 55818258 81833180 709603681 762916377 719013015 981810628 680028603 714205013 743813686 887976056 957856519 961571362 322151197 634933719 201538244 616031690 272955696 835638666 928577345 970450506 613763253 712652116 162723339 944718895 439664120 781886524 603357186 613100296 379640694 881376560 291839527 307836068 260002021 322007996 11742721 398240279 416160167 744882898 380061940 772806983 135287460 607807569 253739343 998200659 768280242 963776636 224709938 286865407 737932496 863948339 707504447 960112416 108169007 558120861 605355402 934700743 713391330 888111322 105201388 493791413 731933755 967696892 542241442 554855552 448847958 827725986 239028507 840408278 554962359 769535827 438629132 770319782 107587968 570259664 897119480 928706128 352911671 829011759 919825224 996077376 744331787 855006030 954917949 993526145 10749542 62998977 916638586 961889762 946698149 955176202 755120054 851609769 595494358 899200678 5207339 480201860 323779696 471089982 371986364 905494460 364433556 890072745 120957797 610387422 760966796 841407897 444265556 909236270 967839949 994829874 64870391 528250293 473050172 667282493 239436461 597113434 907762089 997341176 788101924 897033235 952862464 970722346 262008001 343254405 385210012 860973031 922961105 994940264 976849479 996727638 636284098 758303279 716913188 776459512 536756832 886181302 379429117 729447409 91513361 923796932 490599114 919432426 946939307 990725867 961312937 961807862 657317509 684603148 333133025 421533047 897770027 914944604 840998145 975439412 130020913 135099429 120292602 205041118 820388865 900015458 32269624 650507164 211094995 298421061 297429823 430454419 158100600 487347414 822988202 945611547 231418658 851265608 856852632 903286411 164571322 695175567 178252820 361248958 337866250 375807742 906971893 958403476 919605290 929111315 64200075 931491809 700250279 888350922 789143324 965899668 498339805 984600555 893108647 933441606 582061601 907721226 363251579 820719452 992933820 998970122 983145613 998947290 899627415 924503618 299649044 446380479 292637565 365849876 646948394 808565742 769227897 903607109 422510597 449784148 188232381 410616674 235641 670010455 186608354 929921255 49181650 961850750 535424789 970435871 98085278 807231067 801343425 868921255 588167292 716999937 476037265 648215449 816137369 822928325 656530569 885227623 948766013 991035867 899792047 984305580 995977111 996456131 778872051 901382937 110244910 364785152 314069740 838263048 640105042 650791223 927833656 958252916 381055939 684236476 197912206 997998256 962747708 976579742 85635743 960561141 672390512 845773008 344543493 970830186 360132825 530793577 93380704 679894024 216241631 662784098 601823327 773552104 930710152 943890116 121416593 442564141 841778371 956737759 188020198 662689175 803471613 921652616 193577198 959854151 607663643 887826182 827088209 907748552 740592795 797745408 328052684 638510770 115081107 396356449 827630496 853758501 163977545 234777553 42687342 610576580 298586871 686969886 770129815 924624659 878076157 987544829 536327902 801109214 543459381 796805427 151490017 458615084 342536199 358318693 133094069 292384563 434786202 808517336 559433033 664738749 259800358 911796680 65311993 471987377 27008202 767151610 412435688 503303882 935253504 999526219 57653373 837162232 841136751 854505490 238382455 771034645 976279833 989594419 61007113 627724452 739956972 772381056 570396766 618238824 83255651 299541298 429969642 834893255 471274449 965288735 742414363 928095263 590114580 655767754 50043874 854204477 883786719 992268745 794250178 900746379 760648274 789968371 634577609 727070978 512136448 554806372 354666635 638274964 512769750 975881112 730426732 836469154 53229755 895139520 26444814 675558027 338712481 638479693 900309625 928768019 205582671 897293641 294494642 992144146 30829048 399121091 384247890 560488939 218140020 568249843 6936931 107159252 527694120 546942161 136139976 409239886 10326209 87278914 209939304 977259245 305596418 477136955 129832994 845994929 877820473 929674669 938808031 987285720 653109581 758743397 691166017 697803038 345919181 384986474 267955833 447323761 912258952 929463476 764526856 769879009 403372590 638083582 82059660 642073739 436357543 830683004 543309678 717597769 125913363 868334428 132201534 733725847 968856747 996703058 524962282 928753335 902377133 978226299 837830699 988657432 248194899 253147079 291985324 366561551 743878976 844549718 368383290 691505408 559532625 804023473 276197355 570316886 813480888 836116786 259292019 514055661 228051943 516598622 955361655 962813302 196928561 845770514 330075575 422023041 924454812 970376734 847034246 931894867 853768935 967235599 755253297 941874570 844742776 896447062 827172713 917005888 354752897 788035176 537275798 620778801 662276753 769550084 196385663 418350529 225882248 482682402 833842335 873473038 377934377 868543322 448676269 555948199 555156641 696365312 383853494 948188485 297612194 879690378 35140588 574099495 83686848 235608008 970907302 983450345 301490336 975125693 225730750 644854882 798899137 997213478 502624855 695494638 651964459 969035598 99619046 179502829 120330598 683260111 511225793 538590995 902778673 961716785 618284766 807733227 726657572 966796404 201995860 829752763 211238406 216767269 4011853 478325268 558618967 823411639 937315713 995398225 906413536 923645502 2248287 513178575 697745681 706246448 705519520 816895608 185897088 700657494 102769607 266730512 514954212 637114516 623055449 708822555 219043732 823924845 121320394 219142249 554662183 723834210 620142134 989314457 228086700 307234387 357583027 941607329 814629665 859942362 415273451 630670525 920956452 974315663 167997928 184259980 135914838 358887981 237687545 637350759 307877617 704352165 70488071 258690820 819639296 886222861 789283077 961056610 773408683 861318912 581130390 970100624 517932751 759279917 396989193 480414452 549013043 997900272 389861476 860741075 828173859 957226021 544063338 997792448 358515561 560962840 151788673 571586857 817975711 964618849 802599579 817372370 624686662 880583260 304555732 866501755 172954216 248814149 489327458 937430441 144253393 322646707 605685100 931029650 57497629 83640606 618323725 669661389 491880694 792755111 772103903 821338349 197136362 378553074 630420641 642217172 335935798 478181864 294749969 436804321 933509322 966241097 911099777 961314308 686887613 929349474 195612228 369725296 552804002 724080777 420968509 584824297 882421629 912712512 655962231 907012953 223997449 790467954 894306092 967930830 56886590 818012911 969749849 978669954 447769252 893750842 97412503 120950503 680513602 782616053 887326654 994264306 352720426 712699109 397261323 832832057 924327637 935296343 44229982 406494108 620238745 632297935 160370172 314301583 547591703 729912701 767507887 786754195 273436283 759889773 248810710 564289397 875742775 947386065 433910850 647180732 967667301 998467531 16431226 506025344 228226714 914992695 801971788 918309425 89313683 664036177 273737459 556371993 518187455 530644101 644231459 997906539 959720585 997319165 58640798 341913050 233430197 713963438 753261007 952326338 736759071 962836742 595198635 973808770 826494027 998189040 445171857 561083985 306980688 681653262 220567927 340912116 294851342 488518619 345521451 872317870 644531826 867921952 983084445 998386310 239611096 322277388 768751899 926858284 424454285 731388399 98378726 611590879 430668442 669147404 746019299 975703372 423421461 578415723 966982212 988058405 520773296 941949302 983385814 987957911 380134336 600506773 312371158 336639732 491684679 728370420 315058228 530905214 625672432 763947273 436586459 962022507 168019227 183344598 842806936 871257868 313596443 816298312 736152266 907908238 855753171 889675905 690221603 781436621 112017528 444613487 89931735 836256572 87972610 701283003 709444956 959143924 413027671 609837325 463203828 992096044 938560208 946050819 693709338 798996628 303650266 794714122 579003045 867021510 889259960 941430442 776849328 796501030 87066396 999659654 360842320 763027192 163621646 391996930 688619333 764898843 601696630 748011214 734889407 888086628 414593673 826686680 61026882 794631554 291944096 427896772 859775194 920674893 123914955 504026652 790456473 953254012 133240288 402462453 245470826 923409290 372712914 673929189 79253145 827593017 951351574 953596475 72650108 421633202 713272662 788174517 404035228 437720399 407728262 703642191 310410610 825596927 66039363 934491364 999455417 999949498 421169779 991717003 61012287 190341511 298211299 444723200 960027807 970855293 968927948 977303957 463003388 815942803 200569419 821901752 789895229 878843324 827848289 937377354 873511918 941895753 647636394 962241638 449588558 664020019 660045541 704617990 945689906 978175517 450895940 603565100 305454251 441459174 645806240 720131196 829022123 860893937 11653661 87690800 76216663 791390659 917713097 970364370 233695650 354597729 141108665 830192137 596776783 765799845 657179846 840215900 482141353 988360190 402465446 898637634 673466280 707518924 923062986 970392678 538915126 590444943 601166295 826468867 515231838 706531318 744307492 895414278 400589867 444476215 258072890 974338737 67438751 411288288 26402148 477917877 496036758 863013523 394811737 625539879 347214884 814677101 46251495 420984299 516466141 635955931 598245005 755425302 729866843 885095816 222624202 927862231 983733543 994478922 849625876 913592714 155777019 636406457 866339703 879075174 631797421 871266911 680458479 993122630 773319021 882566147 796728725 964912862 696953775 764348177 852109544 870449334 760514398 831739360 480091414 797942410 682600721 723995095 231291958 753257456 302261122 608710527 998319590 998336259 199883836 257753005 520393575 852302405 625906921 782773921 236363943 373897242 705354297 913532192 274897209 667475187 503648619 822100693 496386907 899940909 19014632 318308196 985710731 985722366 313644678 573917631 645507039 973649654 1368779 9677832 815049287 952466225 190618908 430848515 510878411 599462989 440014259 912361081 9701929 995945816 791741393 808507176 866253655 969300369 907784741 986984647 874676184 925639445 795856852 857460166 505293210 943981220 469082927 864736821 187713747 872816526 276345571 620467951 29304099 665261780 923122784 929001268 106124556 975119167 229936354 741896758 225273052 900321260 466353702 835296319 564188313 986507551 201719867 386040852 596828144 911769252 667039323 690994723 587692048 861950367 840788022 980454117 793699158 867122002 971493688 987263635 318251854 579732326 110990252 489290053 795937249 826045291 149169111 273810280 379095289 493230396 604452397 647921915 297815959 347351675 428527807 507125252 152595759 790212387 101367157 552911963 64118097 651717949 500098924 564135290 854891392 930309222 131620028 259786886 665061196 809993408 747399313 885574619 46774250 584692657 151492769 386565645 38537720 175564455 18929345 176727368 635754866 666749962 908970812 966711980 73079618 461071700 194183985 769127275 697983384 981836481 320460384 654296830 576085269 707195540 482590407 555365658 887402031 989756484 292670038 492285704 502701304 656325451 308257496 513061465 631125246 833137154 855458504 953114082 244982113 258743599 686349654 845180783 541049641 869168395 332567066 397439686 474507125 480921998 210438156 848006670 533599344 640790659 539296256 873966723 530087402 711861116 434971687 969042910 579392660 669426643 708920408 930080829 823178692 941987557 529098500 959609738 64323034 453445683 160072935 609826044 300159754 398573035 528027719 677143675 547303387 803254715 610620087 806202293 506080658 948186883 240279835 746966328 462123936 848665873 253414456 744754236 984410113 995565633 353635733 455988911 370780757 951709661 500783042 520156663 57352680 939699620 563060810 656116777 71244913 569787933 749693766 977152415 532835836 852510063 760713618 861010039 728213851 843964419 969678623 989003449 214961862 735357964 529531392 697046951 729583584 945073025 88820171 373099100 736902152 880215342 268837171 469756601 901847322 988603351 786913364 915725756 624740232 818410076 608530156 827790038 692676915 759576715 894134007 940472445 146869220 811409776 439878467 989343693 344708013 498233526 887545823 971306227 927345617 965576565 382386796 682762461 83816756 459567595 971418111 979195067 293679664 475424549 906826869 995312889 878280788 924143575 192495971 816283550 735563029 752649761 845661555 943559409 153384329 566615311 527193857 904502961 557450051 906480786 380147251 703222542 640348991 910284670 44831237 885734542 203197124 389339775 843618803 883706516 313355507 462701683 878880729 940534614 495864262 559602734 303626315 511108111 459484045 637630209 345890606 816914529 67054665 690352817 703141849 942552444 89845601 576225633 863556025 963722748 892050505 995599332 493143005 550344832 880370325 884432812 881878564 910815383 212460467 747854782 612742739 785930217 150160308 389977135 202908198 291268958 214996072 983174357 485893250 718257970 283657260 482656012 482987301 898773346 862275388 902214388 126768634 655037368 286222323 921500495 850592193 914236173 21834942 745140871 310762186 693152240 631614682 924467063 145650521 392272615 944207885 944481701 6330186 594472428 255941158 591111871 498304728 538426976 467831334 789317041 40699728 151741078 610668451 702144315 733089559 788473798 157916439 271313740 877890747 993933525 819967514 983510080 253181198 418629249 807048231 877050696 959727118 961447485 277425040 547789888 326146367 628058168 331998505 947889262 533710222 695676409 781721641 821740994 167367297 812554021 930947725 998296421 39849784 344220413 78662854 986283433 63209497 678772661 156265560 272509851 191950622 561050868 4156019 433055779 243799385 315060035 706661698 968582232 785957829 800541283 845891051 945450046 512025693 894309628 757041548 967050800 512896991 830188520 10661270 165849216 258875105 846580502 587875042 784689307 473383262 996224349 912686629 987599823 249534542 591607669 633578790 957474608 121952209 310902345 541356142 968440714 557450702 842181124 503327120 944086256 340798852 842560567 824308734 876331165 781199915 941915620 209255949 690134656 816206097 946835589 519837952 607001147 266003518 711748777 85244123 758277376 937191473 943121638 175176611 920215339 305299172 446509991 135334130 838415180 373462943 391093901 563189035 975645963 937541459 953927905 927648851 960764178 761065358 878500952 764070517 985372741 1348969 589212394 586792887 732193169 662741667 784002832 894225307 956512760 533324763 827537330 826024465 840219119 91286639 108085288 438713805 766261905 225195415 952019572 657715414 929328160 399707138 996458683 65045241 174763130 652312331 751435435 766918646 902541180 487592116 989736082 993159018 994716458 587184831 910543085 911795130 925597179 771206073 856550110 457132201 499587618 227551114 609837767 154515348 396868530 747619950 896514241 545436238 695835471 659460057 848826931 438022363 876142722 337628683 905248912 798574312 801562203 579655799 647775393 641775052 961255296 924486908 929921268 919658064 966042733 447483145 467590912 890807624 918056115 399294939 511029941 316970621 785625776 443412875 912627391 88757093 883162981 582971357 843926024 379812058 408678339 806587423 877281985 523484100 585562107 468108329 749049733 436204047 496059894 58222721 650904649 5872154 867915182 281015756 385555226 723612643 902749990 773573221 784993621 550416914 577324349 705425199 903509955 405356784 532094904 285335807 290568223 22667022 200135843 285990636 702517471 809096484 904079934 365184000 370164458 283299968 776632441 663936363 866798972 169535728 520891473 547935455 992429783 650948419 868566646 170206047 328557936 489669929 544934930 233250942 864186177 627812258 963995486 728285029 918043045 683463497 752483181 260612162 309786845 48494953 939954876 546345054 709003588 655283627 957846167 167403775 566748802 311208421 598309776 172025261 323763115 49446725 840022914 246374177 628399159 541064978 864145045 679732073 806294545 405759382 990418848 428616895 482830396 818367156 974649962 888334878 943105262 840603889 874780679 261409353 417037610 414630162 894970877 306566684 753952426 760421723 841614901 864585439 981558199 567325961 732992246 379353767 523341208 570908821 897740388 108663639 255491870 180519788 696881048 179383736 215853758 254890433 873721961 959944967 978244350 293214796 399660023 705415658 746442503 59196406 582710773 814720001 923720569 659768099 935566654 271501756 313140825 271075564 272193559 70096848 405491902 377755822 789335770 633833507 896805974 985182407 988248746 129499756 416865472 771251005 822192965 804633379 921768155 58078283 538944803 119493106 728051295 451203252 452676943 295066713 483569917 86197614 126526159 372812485 517073604 509383845 601097460 405848046 481399407 103239040 859066921 356761429 980488251 636569902 699797695 677473526 887992764 260838679 878327450 514627435 745212974 410640479 739135517 562039776 668277073 123857483 157035702 105054009 506597688 69804748 879327475 468510131 563158548 27840443 81255260 43859161 134628827 438294690 841471788 837277726 905263265 722656234 812555588 695362723 916371892 933076256 964063638 694238461 973642310 806897832 859237224 691360964 882804097 65145702 89112990 293107959 936520697 365934308 468889377 222788592 870472517 155734628 266638955 616993151 751804014 181987573 717407332 635403172 902546560 689258628 998889228 646331596 839990876 86599866 712055260 306435074 652767262 888536628 921872805 697202320 893266647 725155441 937801398 151575379 898493401 575540032 784836597 28873437 612263919 588660978 695546797 669418297 807379789 629010122 746746376 860128216 982185437 428041752 523137181 585786066 810048135 546284989 975179079 332959160 980043464 535533657 873302863 485408206 978368352 693473947 795609116 656106838 816658673 608532067 683499311 9609113 763821210 808690503 976228010 348168649 575749391 739390763 906506328 755944103 795829724 225753112 427811907 614448765 741676339 946761342 994344645 699964430 872250175 783490230 908436420 800357100 829022328 433191161 904477001 862448678 949988333 781361852 790500320 925561220 999874656 771198292 843790497 984043523 985000070 933416347 940725770 536726707 970578689 727116071 980735547 275050047 922449372 10100367 293747323 32302887 120909072 208144872 662659990 917317172 996919953 937322967 977799389 468174521 835037543 260540968 778418960 378876870 461614655 994213444 999185615 342042566 382079077 689702731 964802111 312381426 660907604 956302025 985696221 83866067 422860134 412854469 736361418 984980583 990029317 558174281 814531273 53783173 896410015 274211649 490360080 110762735 609525988 969990768 997141513 782935408 890214781 816772993 965502094 812453586 959815607 438976246 676213353 599177533 866934719 363665481 478317555 558101902 833004539 65757369 732213313 115914796 597353942 349359482 967853728 23329977 930929725 142758821 300656704 323181520 766037493 918833107 957489607 796733932 935352933 442341379 805793834 431314493 462071367 99396294 531746587 376711800 433994642 864222698 919513629 350173019 591065733 732484651 835782345 636475580 714206512 809500937 969273347 973512063 978060437 39654330 229270089 846285719 984942564 140988524 686120135 216703250 673574963 863184902 866615854 665875739 738853909 333649232 592965393 289702447 584269493 609952972 720212599 534090322 969873689 343852898 539752452 642528696 994317350 285882599 636480407 745214145 922780195 909490220 911468534 135891473 730319563 473042246 476696464 816213525 943862044 3352277 619465366 882571415 989532537 200988401 498824911 823426140 831203612 249385452 875972002 604918526 763826551 175222115 852427828 202324955 430090712 37082958 389970655 340547707 656157060 329620967 780712563 952048489 970044411 637947673 967127064 693467704 860648520 454793543 658638796 551287782 672302981 149057722 230900848 132385116 928586999 262951622 440031726 650528933 728814045 688253528 741075591 469370574 931926400 617299229 834210396 111451095 727122061 651143158 897814891 203668985 779759417 953789029 989506556 707915882 945551848 723856899 793758618 121182900 938435324 931480909 990353493 626041983 855151778 994482807 998604797 894166769 912485788 58254451 99498452 825279871 962414845 31953922 115057732 974172717 981702294 445389386 651907490 246775138 279946355 309915002 592616891 994182622 997244954 652521303 887738981 981942540 998257751 760206612 788141325 215909383 759689103 996281341 999430912 728678515 898323110 865132303 877121350 207554088 488111940 880078438 905770152 769093901 974908102 975851179 992582142 294973298 717824051 444903076 728127266 938033378 981961451 246229270 344724803 139380164 158211163 987623833 996298610 750697198 940379588 491931713 501407012 529072657 805642130 231503677 875269563 767875781 969108870 667024752 972294192 686950866 991537170 166750310 831023574 695661417 988522412 359984199 402645024 478703480 889328196 261759914 405088243 576356750 882585866 583260549 820786466 17845408 920657012 372256606 757994785 653151008 703924090 919692961 988798696 957488877 999743971 391001162 572406122 197838191 437900945 602579007 963066171 335377992 365282754 165340325 289525350 512962807 850078500 307631409 701205114 708793843 984484010 747885312 783295747 457942357 576407306 535664686 908675754 730863875 919747792 857691837 916693042 506922658 520398136 558891853 836783183 908827111 946141881 577174336 678120512 268980232 280205150 609396958 687628030 13857225 905765820 482948840 805816760 446361948 538603967 719980642 863859720 445424495 517632172 567927831 845051231 621592373 772272203 104465447 934518157 884430748 956952476 227942880 919163950 877024174 903023412 506247027 686338974 560490309 855188980 533159996 739185916 166637669 204382519 235804895 255681305 656810694 905195662 300287844 883434368 423520315 895021021 166646037 971433909 498578623 559129281 564576337 761137263 10589468 314392737 81700435 602029169 754968923 783247801 503432353 588992134 840844587 889871299 485708594 859149384 515204059 632525749 569965612 985139550 937565492 978394265 198157289 658032193 854028306 880281502 939796064 972312360 632687450 711862704 803819176 972483567 962136506 981586583 10184055 296362796 74633189 284477352 536191588 583036617 31139344 713756986 620621301 756736794 326629293 800300823 725688189 761246405 189722635 221418433 588551470 653484478 904635409 985226806 493017233 529294649 451077673 706209682 585550659 925736295 859089943 934825127 511877841 683293397 744229541 846977739 664156654 708453366 882497356 921116619 852948390 962524087 853370809 986713018 172110796 550783933 526312775 733188227 407739506 654954481 447015204 662855600 722930962 750848468 534390074 547839796 506569170 785000649 368847842 907115960 16976260 314500620 292168732 822316560 276554352 302699046 35491334 561015894 537466186 788825090 466887181 967605109 893142943 903638879 549892123 977790674 51398898 749782133 421081137 440458134 14855406 671688010 271603025 350402288 181584258 742896959 869283866 947508427 546709334 784145900 472323343 954913341 451581688 688024643 491446758 715898992 914712046 941495560 659357583 949865990 72236649 677874867 188389176 973498534 778544089 805385860 50807371 904350517 367216480 901522610 98882652 543145266 364293846 442405816 421540686 459286774 988979410 989623896 824005896 855689422 527564336 554006167 757381402 850074928 405056601 827176386 103959156 613979380 65521575 377148664 681716415 805161958 665973335 964162919 730638642 930463979 176917982 565094375 344878842 981808123 343763707 589300260 241213623 435388480 30492186 263562079 34909959 904534221 880176774 963878840 921471167 963069729 993790590 999455116 207978536 568753037 830961606 880156357 837272535 874678915 252565249 606773223 920262591 988560975 684791397 795898158 907649184 985611069 104526257 416270787 874241840 883738670 593769585 738738518 839167609 962642105 755174369 765708819 35180713 694905210 320673630 421320488 430144081 449764312 965763409 995987017 223223594 782826215 576530370 929818852 476931303 619780835 135506795 193791836 533739832 580151100 758365906 781006575 315064013 891988362 977390712 985269099 310048449 826503925 73496081 766754806 705569931 755924148 183479017 776246470 785298646 960000109 97917441 533925872 858378100 890456433 762377777 819884270 846408771 939384651 609004400 776798602 403183809 813493381 40347312 430250929 908618777 976480083 607902439 959612193 363018291 879997769 920427260 929644289 173651949 496550290 687257376 767514322 600936697 910584167 82935799 468648425 229961537 243210820 30009550 596448575 344091177 493963504 925206449 941415671 227828415 605375782 693792696 887179043 488237118 786741756 22794883 203948168 873021900 917749190 466253809 876910765 106808966 457810064 983427507 999272812 740923708 942683567 956837273 975841494 861750162 926879590 835518088 938230549 228658727 635416860 256657678 268811357 965912036 968520922 87124634 418228833 734027088 956236728 98016597 295276609 521814938 693671377 152970513 887655258 806793491 899728805 118592896 335138089 894144006 954787663 664504642 683715859 870915246 918443746 532101070 760022115 938046216 955706477 569334850 771452623 13436943 456987300 993702613 998824013 877945195 887579523 75146054 543921862 970528386 994962072 794335517 870169396 909595211 997633100 908246139 972336533 771493767 983350912 354920916 834789736 534321699 773917359 649581316 988799944 736666337 850031444 693872846 894663582 265874389 728139240 248769414 652238160 674246193 796994603 483852519 992501679 605666238 741185669 652784404 739963265 822071250 916019233 487855889 812270923 465823168 723432930 756123735 882077606 375726667 627856108 559949650 981197959 988586724 994762611 885442280 885467742 361763142 796974745 79952968 604757422 84278291 199572685 235929853 690711025 749458045 901887704 287479834 474727548 702787977 771158188 610987818 680323372 901989129 918651193 449883408 856814335 881518353 904418266 932587699 946223948 479495511 963184064 441584607 607608133 454914179 562576805 735515621 776739759 247993097 448194990 147211296 986448366 891411257 940896969 670777914 869463558 332270177 907634821 629144358 711368923 492296482 618648373 265787873 872835808 564498799 938863462 63853411 893215803 131387626 608661687 138360707 456400819 942640784 996967726 308569690 804503546 334984738 868424951 545154702 837733469 234367006 341065111 506698706 703859445 358288365 785730986 894623234 918602161 252668247 274618247 63616438 140853521 138500997 795932061 88968713 621691325 574844556 700286290 211643399 719886376 127789394 501936389 394240723 660031139 6586826 889618516 283258920 872848946 862737814 879130960 742934015 752539459 566227830 617883642 321434011 870515173 797616440 868184886 882138371 884966335 556850048 747701529 498603685 595493071 981188925 995416511 205256111 614509042 522720004 941652743 985592013 985654238 340551026 566209511 369664853 657634007 930714235 954100190 231831568 873443371 258573204 850613398 64464523 615095846 640972548 704364219 965704931 984839177 866589240 929050529 70119564 250894703 984285584 995297174 361017703 613635713 908476816 920182329 371867024 686656820 977173929 981212050 35580930 220547661 997711229 998809544 807527349 961141751 839646213 922034111 106358501 813165321 135521253 352285851 493480936 996226556 314029433 495941943 102335697 737093755 359377504 424704332 39859718 946943892 406692663 764710868 467899982 900240342 561658491 635271859 437793432 501275152 124429287 650835340 873409112 925202247 402838271 964303944 691663980 852223687 920772880 935838994 214653877 613822480 935743158 989883192 677193389 887847447 223007534 785040521 654555577 816081798 307093631 468508618 881666452 986667046 197956968 385770329 567461393 986647737 681769929 796753732 290812860 926682481 774131940 894002089 321176155 780751696 349512111 363375863 765363334 803708593 96379775 210174275 752608523 914711155 547719800 691738885 414543449 814692633 401841192 436894208 548954384 666854706 774413276 821254344 184817607 491899551 553513690 642144626 209974492 369067741 571711440 665214409 865493088 919522017 826405850 864209923 935138545 968827202 419655980 995490304 831849148 926556819 347967788 990414069 757497174 790757544 700320559 983894589 372637525 630450505 326038158 538674055 825032026 895258209 249719539 738397104 383490112 841621312 836011237 849346875 477881826 925175344 53442608 696955997 281617875 444955070 229690871 412510938 855829362 882113523 691005693 715606759 199160497 466752310 991268093 993574065 568899355 645471735 945630993 953167191 525523365 860288975 640800320 701032372 915353555 944676868 302373148 563791327 241752363 678924251 589330093 647266068 427737590 639211311 12426599 304244495 396996917 549133776 127185868 681335888 870598444 925286768 127367387 177475486 881130096 996608793 161295310 744224056 384077873 386632158 41676448 706250503 520265028 692305425 344315907 774217924 596953800 735511742 221762900 692431270 408195528 906440065 151089243 958890358 162550732 885297984 863129750 902851233 164309043 550755541 107698747 856580267 104267710 892243087 699358452 882647329 420039851 566519002 730518101 916084453 617079410 916608670 161445266 464223155 851313697 994917473 545979807 628227430 766216891 949844605 685971128 911760224 243246963 999143925 847281698 997254129 275118677 548902370 574919307 874876088 269571584 385115891 561748370 669929682 664398367 864692530 495223516 662271377 753221806 966283266 651308968 844558151 439633070 685726368 182327699 265235155 193886487 533155625 783180426 981487694 889008621 952655466 89598185 422559681 573868077 813534216 35020526 648840690 959801858 966530498 751161512 892861678 360001812 880522534 682398585 937328581 881681527 998544353 715891644 849035292 151765809 397002323 550051982 559543480 946911872 979876230 722970319 770618347 320764623 459278178 991844236 999643337 286487475 325015834 166272269 190852143 962957960 975940570 249818686 689805784 668371897 725632792 276893197 929057441 16838845 63120792 79430036 599167797 939805525 987636869 344247128 923089173 390523183 414423757 40181683 630794236 938367844 968504539 273550120 284521775 647738365 826420761 735240740 779218148 414508824 731670582 946378610 979476134 805546231 961134422 211040139 658996980 594757846 988628648 36465416 640316698 519739457 625581334 385727625 992614738 293051217 326942540 9100699 91657715 819359550 928978231 620781676 839693346 847564251 995954435 325322222 586035946 351407758 538509647 569957441 917242645 173161494 557762862 537571415 691833735 846620133 907551554 458489951 993380543 374722804 681299282 18256325 184044298 664806249 713260737 920508735 963360977 610165499 954483323 75488672 518839556 550468545 704469017 26245508 193288507 530567071 997921852 123270345 379957667 668992335 861801644 691796492 892715318 727037513 948675954 574334134 820996779 787555888 841210016 97580270 781810807 370158520 460544604 896135444 925971906 410579903 455075297 643084611 782323862 292971010 833201196 795032781 919310821 439651240 538611821 19168858 379734226 556235263 706836130 459885350 498746505 767709698 978938388 614452188 743614395 751621178 876670334 698851041 914349747 978608373 990976500 481420757 925775931 229452224 488481000 524413720 571109242 745709350 899122429 412974201 983302332 542150044 580535871 980499049 980557529 746854217 970914485 906094456 921037314 143042276 244747061 343937709 502389751 664290623 746378313 754689935 783524532 902899082 969721593 30386249 98787826 511276778 805763841 318343866 811705696 735672568 828148311 399603860 837961572 872089523 892110632 922486401 997780273 617903720 620706306 12442086 35961208 407866532 828022573 316515049 499364226 487466737 506664218 109180101 267043187 28959028 642352565 785987366 863012439 788049657 950772690 803869976 954450574 826077492 931078517 944614383 972499260 789778993 888663497 759825153 911328023 717589168 877529188 334827027 505686741 249263692 399724661 537910884 590082416 529880600 587620112 195750693 227869001 625856256 963239887 196552917 434559927 953269519 956782618 227734503 315572442 956555046 971657388 185063546 510123048 391475696 639580630 252650157 336677975 12748001 135728667 602482123 651536486 152749252 908107400 259383354 986788182 666927235 916881932 86684226 968685328 796944737 903407658 805814887 989004883 209544341 213454784 190884451 651846628 666881364 727014057 154615178 786666339 625917333 833934667 454538772 624423006 78390463 484882700 199429930 467371370 35831170 918045698 82369258 465479244 877272792 879793902 957101307 995190039 694172380 771557131 630418031 960238263 621328260 636772781 620563981 803631834 172801488 290648834 446566832 924241269 558782279 654919393 577427730 795132021 523925082 986969622 287334576 349308018 998381926 999816349 286974039 556581275 405888873 800612813 161093225 291786865 784242171 971379175 370296179 981256449 149382916 297590775 586197232 762588283 665667614 744915002 668170184 970835835 169512756 723144926 934503648 979684976 171751852 846933723 238848731 389260362 734114920 852755137 449702868 589109463 913001599 998132573 523301210 925827019 184576545 536240796 63102996 563559453 151924387 859738409 911102121 964956400 652632467 751504653 487093192 995814593 42600180 995561606 611788050 786508831 345293950 561563199 367905626 901740604 717576944 755494787 374038084 793545662 44829142 827787278 557025193 831176879 155446301 889383430 153581152 840602241 852945123 925103552 460542356 943283773 49133809 57294274 992361803 996714925 894092849 943972117 923119491 987161714 813424306 942259225 695585792 985772302 412119030 930812729 839661966 868045938 96013548 473588028 65538836 925651989 483811498 836727404 784765392 945071126 592504219 742487344 62332282 953664450 127666756 586515965 42632895 929029194 96400843 122483094 785707658 883604741 58832514 323762255 934690511 979330667 194858093 648128816 324928572 571329344 623222363 712930251 803910529 874258029 870103705 986136201 53322853 82949359 906703808 942360376 659547753 760759470 465456839 687024282 558625853 911698831 732539287 789188206 968079615 992431712 851295966 938820330 641579796 736318140 317851028 326229233 284459620 815102811 620196907 643923459 412147329 461383956 29521780 164550162 976616428 976992911 161509097 969000326 697846416 891096405 497069374 933806446 280321215 743558230 154279857 828947245 23660425 482914561 428333916 724203799 80013487 839210705 665342934 829095800 899314872 994793023 389430849 748593287 553550056 732716212 209617381 369405425 85865245 517938870 378740 868669716 594891327 689695565 384646792 632660429 489281237 556763189 34010859 402595771 46858407 525797376 470874650 852253069 29937906 44700256 894815727 937815034 37684291 879089967 750962936 871088226 826639525 828282080 853861227 872354394 265781589 398082064 716414629 724353887 458201687 832625793 299769912 750727449 271053676 634960993 120694973 411349110 700947299 767730200 59928889 195699380 203484803 348639841 710768203 965962772 503386008 989378791 619558833 820774706 501606675 514200686 820196104 898594107 114001497 471564222 95188074 581632057 541847568 987896524 353653857 400360552 922626793 948013600 307545210 668360674 258464393 667627334 571056495 645809966 757794278 783254859 491198500 799674803 351199022 760922038 161767100 268205638 229110687 450453023 844219744 992136490 56421977 808221714 709291245 976978103 568983086 586809073 194237033 957573593 277286061 952737319 42158592 230487883 156007826 219583807 955280571 961327566 327222813 950666530 297331010 538366535 105491031 420352534 449620307 919441556 748938181 838349923 256414736 462451577 9622367 593352060 833016562 930867923 684729621 942926929 820490645 860481280 372138746 433872578 443499360 470165752 454440327 483656504 204877872 840157295 668374921 866208048 981310876 993397552 595844503 806090259 925995364 994550606 905697878 957001023 973993766 976533282 29617339 352707193 362433298 597826711 815678666 894645884 124161065 298304192 294626512 835823813 279893304 575844948 9507370 23765535 322940637 497611007 131625273 478752015 778836866 784015452 711067817 903862515 785807654 902674722 365858481 686048006 346442626 832826852 9609087 681284328 603807879 811782746 6885718 120536298 686959545 903612772 941893926 998039515 653973210 886576092 744430888 839983959 72019844 661010883 81836990 922505764 912312689 974803369 376978560 782689578 261504681 935799284 960257194 982432292 742523152 938383008 401834613 872918792 40735453 513897059 911727152 948611812 398113660 400703096 807670647 986467772 290570353 930081418 285444870 768481677 743191076 958630267 312824394 348984368 364516626 475638847 262715127 639739725 573616866 893072350 390030103 451058515 416220726 657812825 121903756 415364114 158409552 175203846 582564351 620665038 828698634 977687956 220705640 728773870 180840440 925708951 52530893 800243574 904536551 939034086 551792411 801840543 856102407 915929847 971145593 980879157 137618585 272960321 870082102 944041780 47339930 996462478 167668306 735458502 766221811 772757808 616062648 713615420 247067746 564232852 725997623 878568590 763080577 973136998 454508947 586323103 630155276 719791850 668208799 733824129 185853813 909809299 120778848 944046011 658617087 778124609 108731117 487524397 269018933 890005367 991607627 992769528 239202057 486997292 471069665 891371012 472358382 835092725 107630701 301376012 193054477 571424837 417741277 700735151 295925204 417748857 494317083 774734197 836692301 900212028 841413305 963705382 721410223 928259471 86505584 322410464 802999773 894442726 874307391 936504649 750998187 886854681 516016540 932501436 960694330 988971229 861866383 957079126 579123097 685907780 35324737 83877693 136289787 890363532 788870326 970113881 284343850 334385810 628908307 937534405 564806622 945229705 901609971 999039981 255914576 770250704 905705603 954616126 992034710 992350804 914282811 991934300 66693707 93011549 106195119 540137773 459306763 482476325 376064517 864744778 451269167 683110669 657213255 691085195 562983309 812021194 99427996 815659825 489408671 547515397 367852237 771576052 900228893 923962842 269971698 995484069 888093959 896997005 800665375 817086506 179090544 933798965 980392713 985153782 200568274 693518961 694217077 968312142 986323744 989919387 977958242 997714871 193875429 262770165 210545547 545700707 334491922 627216291 546927428 939289140 704413241 789111400 367019638 411812091 313627090 874833249 807634166 898623772 434233369 853375539 443351828 714262476 320766254 808252734 217396358 721439131 38639198 855471320 973637158 986619176 443446450 668502503 22210242 509567497 272693390 739893752 891886744 919586978 849509333 974441260 21417740 175512126 310981681 426705252 607406264 652797360 356034731 652284126 23780333 987298488 151113145 728140853 188204984 858411596 255684962 417093567 124158476 773286971 337997229 484200038 916822204 956205764 325865933 959488195 895274652 956641743 953458848 985700456 606003682 610235228 225345450 829391938 933679167 982141271 477723264 892132879 405589249 602097261 159787790 997270314 189172505 562586054 891470930 944033291 13966322 390917091 564751066 946728941 112169896 757343840 841520363 862772659 823378813 998035018 855571852 979803349 9136621 231702819 177677953 375439424 641504264 784702644 606384973 872987336 159648834 847361628 50434592 800261153 520487093 653873145 603809356 787436959 243370577 744234390 231780045 269105476 530293485 970354763 328351085 397062454 925002707 952192227 195953329 667218591 74293436 958273177 896796853 898374527 690194847 833482017 999522385 999935161 945887157 964762057 39657662 799295020 928584044 981431544 877154413 922212710 913378859 976376314 538467261 880560805 846318062 971043426 474501010 504383759 531216749 539755467 418152515 522828293 221615564 951304372 855147751 855267319 697798152 974571813 206954245 786744957 609710236 874018053 712376278 884420267 557002487 800067511 482346189 693993831 789319986 911052774 448756049 822417540 52413309 180639803 758042929 897059050 481095079 931309057 454168588 748201459 910360728 938013286 688373168 980428330 111260103 225667358 919048244 937689175 987270987 987949134 691176718 783560537 883827738 931621933 51801232 314916130 532134775 835587720 515574978 955703187 476558706 517046559 696095860 838434820 349516780 922171420 703032940 930097477 419219186 882796715 48892954 725631327 226122634 928702719 221208976 454924313 17089127 599947172 69215630 193363297 7973248 990754667 49771836 912954223 405974936 581423063 775956448 798432521 735716533 752346851 213447162 997690160 579820827 942723315 326872291 551418835 436252890 937068252 826894205 867419320 938747012 986039715 702120726 993250812 37258127 753094434 947770367 979133890 46856152 769400369 463736768 966792782 913934877 993288233 673930109 880813935 925471961 955968957 613762362 836841718 995253167 995447147 807172943 922563063 156471978 425690759 177218770 454282450 274670190 411021581 886589357 919697954 383396799 590529307 746639989 792676181 638174627 885249143 232122670 530974943 139818771 333752028 254710832 776672671 269936024 547876559 263425485 710470112 386974795 861822019 876854131 877912942 292943226 370304834 226688139 373776036 614902059 966655852 772009661 829845045 342182393 409091980 528165448 739650176 585925961 940366060 435925853 735499967 602027594 740424794 916329032 995993559 547530593 637995515 250876118 845610900 601711974 993683567 194690483 889551630 140702090 597008070 397871453 543278133 283470218 785167853 128068406 878809470 638275687 686431968 642624488 797588113 41762684 684106303 132118614 254688092 673614236 702006943 327092566 968329975 198133163 590711711 712247911 997472817 348026238 861034958 591232251 651229977 101128185 940683043 959748736 972658492 900378269 957589303 566201248 828733483 455816138 504626362 47386420 574499692 892620851 969527462 584875334 976988369 822168213 870410737 724949760 844006794 208893050 804803633 604181033 724396670 292237013 354145236 148502950 825678219 826558451 837573359 75447084 972629016 819229334 994411495 46927440 589771980 613455119 906533199 387608580 392287995 432561637 560038131 836001151 890246609 790909346 881315167 851845078 977622819 276014552 980603844 267972746 723757116 7332180 509611724 853548050 877053315 171307860 959161401 964967039 990435813 403817638 768588470 156401637 228614686 694263952 843471339 131786810 906255658 544428779 947170218 257293764 847030200 84698968 690831877 103317585 866632818 455515212 685572128 880638948 988234850 139270812 442978905 799435529 967431832 310603183 757219642 134776903 786055799 331791473 464724147 307698713 428702391 920581500 961235518 721734560 956136598 136885988 375119795 418386387 743906889 629663719 964086080 625379315 665461005 46683506 297934194 768141957 878486803 907185375 916454189 118006683 326085782 328460793 516385235 894456326 919529611 844464717 844585933 125318610 140020048 717825208 816041834 652132676 769419637 892165070 992550180 832675201 943934300 416620759 587754006 269630552 437030011 934272822 966150672 386599923 481239818 696907686 991592733 930607324 972655619 603533488 816292307 488709730 624618274 437765121 460421116 153080400 862508930 411469566 836718798 175760454 252273148 972735680 979127163 313685618 554056932 373743876 822829808 76567942 768486230 83934779 547535787 397290520 759763109 776850375 829232855 635931537 816006589 41411205 416672729 896618673 994873463 537807584 542873892 61066173 867555290 88405742 522441761 640750285 851721753 985825663 992908656 376154653 685801161 515733923 832548496 155777189 995420893 908105346 976518864 166819757 328926177 737897027 859485778 83918754 305546363 217757480 286960424 825471855 896325638 587124555 876857223 803315645 811546481 635127561 661961344 160683515 636622160 136568612 666077406 885411526 932849110 864946494 926769909 973320851 998605897 873703254 926720009 789460791 825697423 989207492 991963178 624549892 822313784 991554968 997676839 513641206 568073443 695212579 757686062 571403402 774280726 353001326 826778875 254838193 800296173 6810830 868005887 158175620 787991155 140570886 226888333 597503152 822123031 357178216 950510135 3360029 488138042 773932789 875720779 908864002 979008006 160236249 986236505 424914027 934894004 874310164 903454353 301043847 350680178 612488673 752782167 67229065 747973726 292887476 526693925 821617677 969434369 164867631 171216579 516988981 551976067 873207596 990805062 263005386 686108417 204357902 953504957 40726228 478278942 261788064 916572618 203866005 549699447 799039593 891377067 225287824 698531448 595682739 764751010 953804662 967491788 168118573 864003645 629045712 760099769 481781514 749866139 58755489 135642031 151106001 816534269 458873461 768248307 311815233 982767849 449197709 581142858 292118851 900205562 618222978 985557009 90754369 500273303 992100056 992639301 908162191 977541964 956065069 987536822 835594799 953040067 830730790 925898922 199562320 429735716 34047626 349893479 790737426 955000659 653173499 749538266 337623264 356208947 683897798 770296274 754549028 816027803 750163216 825149855 393506712 848897018 483964206 857163613 850813611 993598564 210653110 847396637 307304633 841482203 553254137 867763078 693710633 816873205 80186214 263990004 392763009 528605087 178269360 858073241 696969888 854535067 79105983 786981896 746656548 914794557 419795843 473242579 205764861 680225255 579152132 980635602 842614565 969713717 111413180 832970075 103824331 489468941 41845838 834168201 343430634 612758877 864656127 936571975 482182482 507891759 801769116 849420352 798516611 986816348 901819048 922243360 131455185 228084862 622144423 841148624 929969932 997266475 377565590 412132733 4186762 744260267 168094070 315881055 513517485 988937488 274440882 797740775 616741927 728792553 555584096 795583623 484227355 674455556 171584392 623077520 828434560 991733256 224407586 514094536 735571555 797062529 290024918 298323133 800675699 877593892 208695824 540858093 658328765 697910977 685872439 809220575 252227595 358945882 778556950 952068514 678551855 688069984 645164364 867608443 654919320 884334024 692397232 977813700 213180119 338214099 226162140 348987767 308641833 526219490 772368903 937380600 130422910 312994625 260656873 659103447 661647299 805477830 922062576 962684953 440700006 924062904 968938695 996510316 859305593 869837773 496817353 994136557 594144593 944365171 476658319 565628057 81495058 209504304 399006743 451151339 732086059 934270283 713669254 818497993 221570843 688275466 260197434 878150277 883768092 904723029 583158890 843273786 659777195 778101207 427003979 608231482 927101999 986259254 199603662 901221235 912337279 929975512 797126644 911811381 516530593 886450479 616571470 879409022 302192182 733584195 769584993 941607330 775082682 941683885 581307515 709516745 38806342 655569138 282692494 494468704 470980680 578685510 444640300 856685885 675514171 829279726 123915852 532177128 920895943 976532979 95220646 803260992 4519607 175109324 63263742 445703117 692474649 692904042 495396410 503395708 115673398 656022202 537771885 954532128 118585677 132103118 730083943 865575469 297426461 661306826 958480561 974263869 233154213 288216343 98678997 706037261 568891137 869741682 304286174 541912018 568203399 706674996 936183261 959851298 942091249 967526979 741781883 840234177 140915881 330931242 794640049 886444594 435704517 946598833 863843033 961685615 955363924 998114152 635931599 813363928 609380363 682252990 417330987 974310929 475446491 856285522 402521696 673358148 153362491 468925053 632745466 825645366 561533450 999706364 411048534 487113659 90632760 892307641 192780190 394639633 530101547 847482055 395091185 983019830 578503038 751133800 868510846 910050755 496656551 640724433 686113908 978085209 897406289 943351268 515023609 835804161 113964875 360864110 11757681 287045089 11765004 711212658 704876459 725166168 799075657 892519841 492018566 834402925 987053586 993279676 455190366 508570473 958491028 974883500 910456651 915143832 220189381 242227064 658899251 835909715 80724021 694947207 492045468 644158001 281014385 716962654 948637731 975523904 422401383 857862971 983236770 986968091 549095492 834710315 713703585 770082350 656664641 880756537 479130512 830577178 539521127 655347818 885647425 939933530 411324427 417983966 175329304 633759903 458648237 907628840 244315771 612622192 135247672 284384231 85375603 217148227 557951650 597162439 26835702 893250450 281159047 634641425 744337511 854231654 810586268 865364453 834752612 903352638 899940856 976450670 64139719 871340317 388610465 568117796 298389325 469929221 16962030 248201751 690117253 884378526 38097400 382953794 976225696 987051100 800021150 955208878 162054899 382472036 727457823 789775299 698746561 806064952 681158847 762419510 962241790 980504657 673424164 973654800 58956736 689939271 724328366 762540772 508594002 778298776 657586642 717532065 690662845 707691521 562744234 727133199 593760356 626134891 371831587 478992716 221847822 885949374 839153 203771617 30892764 307329170 750278868 901240006 682592491 809588266 553050603 801985626 760305054 903703411 253304989 923872110 859596439 991150045 744589969 772974021 228718002 428307939 229974837 842236243 145089669 819408281 196374781 907611301 154310745 923604926 46108571 475538594 697463118 811005017 114507616 460460830 817247712 821355071 972137419 993319690 247196093 772439188 501063667 913285449 412100400 553606980 574670483 767037061 280968089 531166804 596514462 817942615 784646180 918330078 241492527 882964130 721894041 913012404 381252782 646784466 87414457 644253539 283385623 326765172 292042346 983029279 901743361 919650652 435005886 803456301 528584258 904966567 986219142 991664820 564524382 607429204 762524749 886835341 45910207 834448059 359438719 650990814 913097950 986231276 465605152 778881334 223619254 633311545 544643848 715746733 277195748 668200836 75241921 329298000 900104973 979933771 575016570 867755770 713747777 897672975 43453690 215529862 398719052 992822133 494026053 522810489 144059524 972250890 172349079 198429171 976530550 984058973 981565769 990025699 76117147 904408317 161625494 169855326 513567472 937926243 249527545 630610615 236706007 561744701 169302071 540368048 927608170 980232846 944515675 987622875 963966463 997829372 763127852 818443978 245210560 980749623 449084191 476567762 862274756 873784744 79802033 809867616 272104203 429956493 346702572 607163932 508651211 602823743 13777789 135170800 794100232 825442854 576933821 886300559 365806448 688257325 960732614 961808314 337250282 826600584 254679319 982843090 476202717 721163411 57852718 922376308 49380518 942713313 659449502 924548323 965935109 972261456 442437871 702780196 367772810 840780329 692607304 780895422 193900702 220228500 222247545 921558074 180729020 932726567 147754106 428543449 103396186 342930968 272315772 913570043 634600479 949800861 728589790 907968819 840811593 899427495 916304235 928354373 333479006 801478225 930344736 998631354 473661294 769487194 233937770 449161948 2418055 767952650 964283106 969802065 171305305 375693024 763002104 974137305 77376144 988725320 91460860 690855858 104249979 570926418 310396961 446771415 78183048 785751588 167121482 813732505 711439734 792015967 283898183 396333032 565440492 894536467 185638967 586077897 528063388 639783125 4771140 278981741 768411167 963744332 934231753 945141574 128042152 295017668 480346912 934855134 715216789 730962771 164240262 354566518 61936325 746326618 502983393 623122132 779739770 942241712 136255760 781914288 25485584 79426757 302674820 847649992 881668687 991690513 219100895 341935238 241618297 847819460 93407001 139376825 294055371 606490097 598354502 858413310 228211309 609301897 202860884 873934958 126874978 788613532 805533357 975382175 423111331 778850970 458141363 709543405 885715204 970491392 525068517 547261213 988162762 991275979 161374967 370335975 273672483 564122647 923333533 985383230 346750789 798039536 936031717 969511524 94141361 538387190 805684338 819129233 351741050 881771794 296986097 738874206 481144631 716319385 893480273 979014568 124625392 779505777 154781778 289257979 166473722 722451501 330246143 773669786 138686810 596934685 480431084 557755538 667697100 953661138 195768675 710347261 211082258 636834371 157404364 195893356 56926481 428930291 387575831 644886400 929694503 981330436 282489360 435244523 327978122 894901172 531296721 958281180 680397406 770117978 408594063 814549863 376391030 453151818 459951185 946068095 520411149 838841066 609615779 817273447 764742531 777544242 695658890 840957907 12398706 522083348 894951810 945855884 795924609 989014071 284591054 707345073 871687368 942675507 212498222 583364481 642276233 745296019 199678725 789554605 705889262 964324893 234584221 574626529 544900215 909602914 846416246 904256802 160231666 455738328 515316588 817990908 699156071 825021399 90012620 633081698 29214900 611619358 487887038 533362059 321986796 513375615 903223927 973409560 288686548 596836548 678133467 922742713 610403667 614044449 574023257 664716297 29635693 556332621 392439626 997899935 294278018 817282512 287639255 651247134 690322456 959766082 645557685 738031247 288427102 674074256 170270941 847064534 111172113 688754749 715590905 930408358 516139182 519259526 645584836 879236379 437459922 577765452 19413048 352457917 298883788 949059897 661875307 766243220 621523543 746325537 212769113 775894046 749657052 945739351 195422486 735867148 210318730 628597327 933057207 944556495 93054169 711201628 789847016 795585585 558636245 886042766 188930025 808212842 411861799 831883550 287097444 776917924 10449472 886262297 474295 298576938 434674232 984629412 728843646 922844520 119978120 726673567 346034626 455652843 880219142 961098445 206278702 914350706 395121860 903496375 101238124 426258343 845873014 960583152 984431203 987901808 19767022 483793671 967015270 972257415 679503126 683678010 482621200 738793675 385702278 423873277 231630707 657120841 284720323 858610519 802438944 952940341 455246501 870025459 841616112 951218425 70916586 727460005 468064002 971537893 494087286 739671665 47111812 160285836 284477911 911625375 779325406 865482889 61415169 849986155 398469780 607739443 203260675 862685680 803805565 930612403 199098085 998492377 871665065 948205276 623447760 778698067 486620004 634542278 705346634 728357829 668712359 983455361 176177668 674663454 121624226 499890076 959983620 961560746 325243795 976862959 800320331 863367040 748663678 819774710 636675915 852219782 909003729 917260404 655806006 739155293 672724173 848800818 592370155 819246448 848510661 934029421 872272741 966831982 278203618 957412220 147941667 718865658 792477042 800833356 981730087 994419189 830886476 935268209 475788950 835259415 389941204 614016040 507307929 787045090 924271900 959658251 311707507 841300079 64755013 925701582 149412201 343967411 334285596 785894053 37262928 521412228 893826312 917604718 310220423 633627284 786778773 954696368 520418595 819470444 521741901 886849623 65197415 333737870 986703245 987563122 558555206 865318048 363040296 519826542 775055909 993592514 246997908 599610459 642320457 988579880 240747572 964358581 732892566 950945047 178885137 692822108 732679706 951309178 602738233 851555991 381789625 649233409 16232695 611168066 868023908 927449594 142152518 296608363 14246794 772099877 849829347 921031053 443695219 806412225 440999920 928900803 394400416 817708351 876042112 951633390 31059689 582361425 705186663 910555045 233716228 338894548 414737045 447936380 542921424 733911906 745369273 968267370 236112974 447328115 817730927 991726802 174124338 383259769 994292554 999304379 687711988 703121564 139721811 719369777 768159906 859145209 584194215 862484076 521193772 935118660 595109137 827869340 866521070 945233154 766193561 959714960 372458253 451302571 762375331 886874877 468656634 956406834 480962960 501007536 209155994 515512663 602145953 947559126 157358456 995782429 685751726 697253408 110163590 929556520 561603715 612760434 642057760 809029513 393161458 642162074 757529281 760325484 915246524 932326988 820956049 988499879 879248440 975032199 990156661 999913429 894487658 997905855 472895778 510779688 787879696 925877618 334639181 512896517 418026105 942159024 776762587 916807701 880302322 910279028 854901578 953246563 568669155 597555748 151968723 755009143 725358239 943761022 677191227 841460072 981577639 984069937 665591291 723345789 658008639 705486455 371422480 675924401 13110492 293273632 493383268 908770791 585407854 752975544 771346118 987996911 973202243 983480890 46918684 480917363 869690033 942436726 848893616 981513924 132471420 700135250 208526847 807470794 887386792 898044070 856748366 986775167 948436790 979151987 180452796 844640888 595814418 977468364 421017785 913490008 42228444 559123568 346251194 494562880 35542865 188474284 230990743 415911633 925202993 964877129 125033465 839666546 350303979 549835307 132007526 617817126 505220773 997467238 855049613 968468194 657447070 737531036 648053614 670573336 521011301 892486773 993003115 999405971 57732667 265922094 584921178 669043668 398389645 734475095 559978784 878909756 561619763 594227259 469940406 949954620 112888951 240513230 910915540 992980970 145210432 862970448 923667921 979544458 732362821 777059912 766233000 896667290 120487563 686080851 52955967 201214568 513860477 937555807 225974752 556486842 122225502 303213574 714276861 779732920 642943202 671243484 878660782 971435354 361124564 606796496 223658893 880231621 29504222 796242899 189446978 940427965 656430436 711823348 755404230 903255601 432683307 987502329 13571010 232821020 337704119 493649071 265944753 391819632 361246370 673452947 360353373 966966088 130207109 183984870 295404707 849311042 356665195 493054645 453216883 605593910 112886009 966786955 461154362 606425216 640783650 838757764 887095721 923573630 873661019 912247792 5861054 400343840 665349261 670180717 718611082 880267608 828205202 921407557 428581823 469772534 445213650 576517926 509174728 795528973 63631973 447013978 501210215 872149383 115063746 789676911 110681711 889970162 687226855 900537901 322065830 916275914 353938249 886478360 271810730 440476065 799460620 970454952 372990098 452008659 935142080 979129868 317316817 516687122 666592009 787579233 589156444 878667054 671924796 697534742 351699192 945798229 240467551 826865476 751109835 946077820 391599546 579087748 144840600 371584779 35897178 728385261 139970889 329042653 986234795 990649203 932920324 957210327 157078564 285941547 313184610 371050429 459729747 983463100 645049454 964923080 149586767 458925826 744836076 992528134 906160601 987165506 424381696 977387796 847327454 987727357 696744455 993222303 410214500 879699182 246611366 306233099 444557642 688966703 771507619 956351420 587296487 633446939 36962830 929897182 474025455 748917744 144511049 641969631 721078262 988125824 658868018 705257643 250404423 560807758 731977259 849682213 381299322 575836263 294431094 859257332 215030096 780559393 724393061 949476303 66077090 415848729 603564595 820710865 648383204 729813030 181498553 283404084 927157906 947228446 272632817 448535148 234586654 639908374 204482761 920181128 821178849 863672628 864125624 963935254 45873585 392680955 888433721 917719493 492649111 849737854 763849543 896955629 664489134 893626878 108656502 811675348 668338183 831024410 939223093 998854378 916600003 940786015 744668167 890666906 806058040 897634755 871345290 968743365 362958073 494395653 434766270 732556138 904163308 966060806 717490400 918630247 944219201 951324608 806344349 950304061 33438900 241714117 126105515 848108349 278973590 987733858 527363630 659893646 152838976 237316354 856360171 987684479 39722129 832197030 866035594 975630877 216595887 264294114 14955054 429831261 880371650 886994630 601337966 908101651 904740170 945724177 880330240 910038207 748494147 876129889 574461590 695962121 262785492 826794267 202019044 481045584 927998761 974786473 339672935 655193096 812140915 975718427 107550066 774234969 122964965 651948552 591816122 792804719 798203227 853931201 575116992 984261650 457668852 570693621 624547574 677055263 682821609 777932101 642635916 691032880 287773468 707667156 95145283 757184306 160421859 462710507 972012974 997607424 781507361 966572142 383096216 814874562 541383528 570356704 211228634 617097986 445647994 711804650 349714024 518415474 947270715 952889051 997423255 997524408 649861880 783729462 492580511 615997945 457312866 910334555 834597738 902590995 602392696 734455910 908457605 932864619 166403946 862526315 405183253 851955429 337001201 489005259 825868463 849017827 215183254 988867984 444568517 788770022 79647777 832763730 504531454 750034083 378025194 801609164 484899553 940997615 231181602 918778713 487747845 756109353 780292752 934917087 601131565 870612306 589394405 913607838 932660288 966584925 502982771 714875770 5725278 36241367 118152358 222227532 160398291 623318457 272084925 929043204 793323054 898688326 78018737 727026753 958453535 976279352 924948576 939449430 801633668 907556451 243689417 994141934 254143458 871862317 532728563 862329767 930508278 988519028 117740327 818694173 460856026 633671599 74550554 727463790 238309206 927719973 923031162 990116786 688487211 944154687 194782822 712075285 495283502 879373150 305605220 446557157 73932403 922788071 105074479 849590245 324714189 558716912 440282502 943202509 288586115 973048225 358234502 389756392 261632863 999489029 981721725 995508524 118104174 961128597 74655245 529468662 374046045 448481275 539524496 734027079 651906735 676510184 277595365 963169125 109284454 779798640 995360737 998116057 96582267 258654997 194225455 902059254 636816399 716013641 372572386 778210571 489671322 542390339 484290180 877022751 641202852 708981769 222391754 294879498 285710726 520910383 690101139 997394723 124641833 697351767 968806975 983507695 379064958 834408337 235708006 904914712 315895935 964680989 981317405 985256450 46327350 434250863 295164203 625884910 932616093 997354070 21398079 959289725 586458256 936583201 27453580 398895849 159604809 940842566 464955010 798541990 616618514 714446898 492806667 713045800 817736805 851990786 777204136 798111565 488105082 875081340 40844433 122454482 358850280 558771826 332777808 831573674 181365801 281759402 485115564 700630043 176907253 970289805 357534844 410892501 86980248 148004783 600476392 775329634 57336023 515503171 287682710 288042893 398805 463996425 426110224 833925369 757244429 783205009 905224170 924364627 206128862 543025868 310571861 716272948 390878749 733111418 107776153 386193929 156846043 542728187 375320607 741984340 79744064 774396034 504137511 909622797 108113301 225454876 991063871 996880796 536289161 882850318 227749176 654708994 446028248 735603768 262197910 723638178 173043988 214273427 550484735 997034644 428322630 767200598 774352267 992702405 372781692 566640039 460123198 481151893 832330741 954864658 68141337 823436747 290094070 320230609 809254125 966494596 837524520 964680133 731100687 938664082 116112812 345524998 772191046 813079043 470109197 675993870 371812139 718961277 19880576 854177274 30263751 36170972 849506162 874238815 697019306 787623280 733203860 769061898 10853562 124325258 269169702 984017360 507762424 524791351 291316477 564264020 645825409 739266462 838998781 921416376 947269036 978883830 25362296 697113024 78431152 712923718 387954886 847730899 780287388 856613663 786005929 952945071 825537387 843301613 882958827 899835039 158435458 179043854 304953047 794388546 380468730 394401962 417939283 718468154 278190109 563825184 782255146 987463052 119568588 828424274 328067161 799566852 796592965 953908026 329475820 852797769 242856148 615648753 970099786 972094004 165978463 253011015 917319447 984222716 977596810 991953616 900276040 965068286 654272344 895314058 817192081 857704014 692783992 911135628 574102445 913588461 937025025 957014990 238022986 283416515 456489131 908934675 69270058 682308652 689174665 957143505 441288177 926994114 117540065 574017172 980288907 996573770 932283843 941225663 437251238 860321399 368373853 761776342 26273037 112644169 221255622 941458941 98222643 150764586 873259009 944213168 167795430 274489468 851750834 915385316 664332462 898837343 974639472 994678704 581314304 662116838 285415452 990776443 329049247 825364317 644078327 954939676 279438354 931223517 666728506 916136559 611517909 995548475 852924168 880711377 421374592 605235247 471792778 600550465 394662409 474910860 756493742 965785571 60937970 512351674 77619543 338994158 574213956 663667775 171625155 978142310 801220830 944479558 139224486 706564360 132677351 996980408 341888484 730513978 806996394 931524830 656782316 948032158 508373884 716139020 201328290 975273275 282408313 328470285 364476883 840846672 818043938 936259157 96393723 306360542 438049721 916415612 347559520 375994325 60332188 759993123 986774248 989839015 882696864 947578801 355379395 873664546 658778479 705104151 781690315 996072262 596052176 603048148 929448709 967094519 132636523 618070741 648929835 727011620 754114777 884805514 656762208 692057100 279547495 887395554 161660890 251140068 13718798 637639975 974687706 978524315 766486420 892664368 639242508 664279733 39549639 449936755 638728094 929001269 318226522 583538151 114820982 684197763 320822121 416076242 936646517 945323408 320140199 446951752 161780229 488598928 60108214 402424390 86340653 299425461 299426331 980043593 720362528 914368657 102976401 165495561 160040352 903267409 612598348 880538470 147899702 463424939 82305666 330437300 61757484 687914252 350955201 463609312 884912659 897723058 936932249 978037129 167392762 331766073 825328430 890272734 563853083 908392645 132938244 203841510 865033430 917323516 32824074 428232378 988670584 997065282 328814183 976248067 279100428 495025490 771419244 991077234 37617494 281861445 837082237 961902647 777618714 865370091 244900002 607786319 532876958 610294567 555487275 715829284 886190951 973921572 402605637 406024008 365340050 608645296 373555529 835788850 780754263 887084649 528946801 813084935 374212447 817947854 794345456 897210051 342929128 633739804 664804735 910017533 486886127 890259530 618644908 769197890 622757602 893522374 175481595 503234795 973934038 990884355 806841872 886305650 843278331 853106477 207681617 285792088 946892068 972559504 510590061 604416636 517763568 525461259 369539644 723326277 339936929 464164850 734693639 863315083 382973065 915836488 171326605 702689826 323961777 940887648 912402995 942912084 424864079 453947376 620270933 895802183 887394183 961845632 105857739 770947759 364991800 581795331 254879131 751850366 955933615 994704665 765951514 872048147 879550395 884825359 54419431 750717498 896594467 960466429 431344401 937887293 987439534 993298957 396546769 642155804 649911029 975803434 299722485 934076806 53202593 946089298 131751273 218664053 617634497 829426598 982067136 994720171 371086550 690307490 987219813 995072770 586488466 772853828 290221213 779392110 327073170 904779398 552910139 785621483 571979535 945852199 82400228 547895077 804185803 938085773 870481229 945598168 259382298 288003816 400266010 544878759 267972076 546426417 894884020 979484061 582317096 790741463 757214935 885214241 845306039 925634748 361562466 756435759 297483078 995512176 903622642 962615018 72026447 235762081 586473239 795724428 463670687 987249599 870322608 911476773 891395938 897863732 652090614 977397686 823172724 938623153 218708 837127399 152726141 486002947 282716981 673362240 4583577 243451415 803133015 949020855 892354750 971759585 482571643 910001532 859589564 879514165 624887114 627193734 335201267 641924575 908784847 971100351 29061986 174471114 817027713 913031304 190571530 692279091 946256908 972033931 454268220 721335460 613391204 836438716 925392129 929601773 438577888 471431917 895005205 895922266 142519958 453086596 592661484 680168830 989247800 997424432 950359806 976978301 612837889 999467541 86569701 607562302 868141589 960512718 318727592 858563008 140995445 571559294 667553114 950440200 241300450 335855563 383116586 588651834 200841143 263108247 666606155 691770803 852889541 911718356 857427393 915951529 118708219 968893582 389407718 828458754 585782891 643000246 343488384 457919292 789503781 882737390 505297894 817187953 929520077 966465053 727924570 936631571 206314704 565482192 232904166 524929395 296812113 460741083 53256279 127272891 154622360 585336920 476037721 939491384 441578302 764471326 509647773 778408615 151123694 629713331 574018135 580358490 832349184 836201236 510011440 733832716 413949175 562327729 453335254 480569307 930878411 972165689 612441616 688117321 252090542 937813261 395351185 873803714 955677067 968545953 355404890 883622845 164170263 708185439 329922110 816114001 937538083 965434545 605304793 639461808 615864639 968502787 317940499 468637702 920439734 941242564 855366001 887065293 459432388 551480097 120102197 451543489 901538869 928867153 722441549 838833565 202358148 402562617 16626600 783388191 346116307 968637076 846064903 985057227 163399737 824289671 353954961 666191015 307895391 759768789 961587963 967380957 522727306 569467968 98449278 694049873 271991787 882275020 540079147 729093240 196732252 640639788 301524913 349593586 228501516 462511294 300566709 702853221 939967814 980775621 395938495 697099089 708415640 745872438 187111037 756109774 139792322 994432610 771612047 856428570 761577960 952633062 368460512 696903780 439002319 590817107 361614345 757886259 553211629 617651182 488552844 865402976 843838018 977391061 568296713 960935503 645199036 734415327 699995791 946661919 598812312 793798887 909967358 996931064 670703771 797954875 649322835 798275571 595033848 733209575 900854160 958677107 866598342 872274733 57092286 133163634 344647690 615346794 705263735 953133495 713158012 764436421 302826010 404158793 388907630 773556365 631063615 870243874 822667922 955107242 5610453 763219723 227155026 524295411 980943734 997202191 717908029 918208704 245520831 546374854 778609420 956889346 608368307 678585395 26309709 990401535 477616530 478133119 273741166 657647742 736232002 908047371 415104800 837192615 77286405 122529123 101907394 553405768 240304698 444677706 915262471 974960493 790204610 927064285 258084536 452273276 348416242 936594591 250574933 542386030 503005648 756601896 220075755 506605051 696356677 714422647 356678504 655040057 25205130 838732802 538049418 551739597 369889704 638824856 464314407 732034210 534114184 926051375 376725876 675017946 768061623 776643740 91970424 413514173 994711980 998516048 918489497 942810454 834533283 852840484 14557163 817710333 568401154 582545304 287205531 835246983 381582870 850463866 604907668 883928082 437382217 623491250 350534302 972987318 642360647 975277783 107574190 712612132 894440607 918279708 390012440 405506362 722861813 920982417 698384709 791933848 485208308 560124833 556156393 881741096 610875844 919663553 469927540 982854353 606869320 924875317 421514338 904753193 567723684 817165081 829009935 922181238 898855126 917818443 352880128 438944229 539795853 885058626 672761704 766227590 956466312 972298242 369705489 427392888 830085904 894723753 987177988 989404644 726734159 971864491 145151861 582375115 492227296 543249618 268047200 275865836 492517275 749573822 768086305 954719978 107115495 262369293 990556424 997582723 677310042 808223173 547914826 772589831 12981482 738417399 457327175 495556402 555957084 900303622 582700620 727401146 430556741 831883939 647860663 721914131 497814509 694239004 942079702 949761795 884724114 960909424 787760806 927311843 735212737 868533815 883448901 927727089 495884121 785609694 529309192 957349811 453331680 778684066 151051707 505128189 46014759 824338884 940952102 946810955 887501389 959445643 509788468 511626492 353867343 465052857 609255197 737667701 704643364 818028951 936705912 938630418 834140651 843936064 942339154 993563402 598464275 605274869 301706805 854119313 874580898 918373124 438146359 468727262 552007035 794642450 457371881 644659618 293290818 526848202 18292615 609687448 993074025 998727558 228318172 472505822 839171160 961615085 389025984 860265338 629924899 908151829 379842831 720025409 373710309 747025088 459670721 950980930 467344356 540413437 387516690 887258602 424657350 541259866 91594398 536081196 676022787 693947299 443718543 599711575 380779313 751971653 418914456 966933677 545950317 705145675 860999778 902129597 319005094 718738041 86144365 977256457 410821122 507355350 570510276 786533202 841851843 860526215 306556726 383194964 908880927 952241597 375066927 378428370 60894402 551209205 514037389 701061015 284013175 544742302 836443556 878044686 339191650 651077200 7220802 87726438 825231498 994232284 128831709 432430209 471078021 676369142 950993112 999262815 615013446 721855100 801236231 953634212 613942222 732187359 542508022 876981310 696987655 952509407 381272092 785757384 514724847 581556553 972331392 995439356 647117035 836983906 339713560 735209619 735944929 799867728 586206127 848802163 748624861 899308259 138287352 964168331 182973319 698524128 978595745 978769244 621014905 695849775 23362916 223816525 26023142 820402558 451862861 470522424 576623621 603752208 653658904 908894805 59471823 133257561 935928141 958077544 867458256 931155893 869670529 935914440 394075769 726043822 766749678 829330190 607771465 891029445 827341710 885621390 20468357 615177343 984240912 988186029 207063735 610047165 860518333 896669358 911409344 977059940 167137171 387495031 87027554 387262055 246009952 579983779 453863319 801216440 843261797 904421027 428454878 466490393 372362593 443815137 566169185 690816497 394384791 580999366 730433843 983183080 22910608 671353613 751266545 860688409 597898576 706022667 287769583 861323366 294697077 850220774 598566507 684185231 681839251 948797936 988763661 998622814 717081689 915405422 184316787 385227440 805581277 985890246 45862435 480303735 196028274 990314816 856484621 984436287 725068174 880860575 24896980 546575873 431014243 541157814 954787636 959702355 465214070 597352175 70740450 705528496 603454192 829333914 478213357 557312844 267404431 335095126 940659119 971131000 148849805 984466704 915673900 976831598 88605421 100258188 679643248 964175004 902377146 936556581 874935355 941273963 974697571 976598956 15034170 133374513 703034611 842598787 952554472 970676921 157207304 784323067 247820234 666675977 186998654 439831837 978789991 997706067 787024835 819943957 377824031 576243814 324246004 666753425 156231593 634473502 541218927 562561074 296612967 456728606 97374842 158819971 348730979 536146208 633606350 778426658 530932939 838210934 118592515 189288170 792972248 932934278 816006512 872783319 967748624 984013867 616563710 782366913 47617267 459435617 234886530 394816363 199684581 549760018 965461864 994865194 264355760 878133544 803706102 916618417 821967963 839434326 4835176 42359580 459901627 671397842 371493481 715533397 490746973 693969070 617115807 728400043 446787193 530580563 302575473 928742153 136931657 915501283 11776630 380387866 901032136 950996524 194583454 948024197 69626006 214128701 131738748 695504742 218853935 646061289 397931544 524504680 756057540 884522903 139746032 937658824 730085010 855967812 592812257 644688922 237824377 676866698 948211608 973437461 443679813 531497591 422290977 564896818 557767993 779036821 946152826 950070351 691521094 813206460 965412926 985428558 506225591 851853882 610816142 787131001 210273746 648035143 930954040 964847452 632519698 994588249 418538575 926230959 365357586 394462805 825043763 975549966 24038832 598726574 663809033 683592763 965230933 994254497 326601034 410700052 342274845 613656240 307450357 846632246 47253246 543577036 617148251 757456060 455136520 692395707 452336878 835881592 347859518 467502466 540504548 812161318 756622875 991769650 552457995 576580479 256377435 613578117 354530464 733558286 11722365 697243613 917241146 949476272 42212978 248409491 61643156 436199964 966702694 975803990 90842549 157257676 691863305 752842268 178960101 425905389 585520258 712790211 618825945 717515118 221335272 836006661 535706578 768021566 744683683 817735130 977153369 993331858 150365441 193527670 450502957 816802247 471754299 682023751 8378975 879931993 485721962 831167454 763316369 910617125 515820576 970567296 721431172 934388182 196090986 261299988 738368168 739778444 571162200 640492137 72624790 286269061 637350666 653630379 815077033 841129647 197619801 747738970 856422395 959805480 700598754 930340949 803983601 912088001 470354996 994225942 768821701 967803036 775991730 805101167 249448869 279455922 884098393 919201684 439250861 760362053 684038051 711974417 981540914 988467392 914673365 963266451 536318930 592757521 471190408 687467431 652686581 705594503 836343364 985467242 904125967 969120577 881606853 983806436 557221806 962349214 595652520 682141169 846945556 878894589 917620771 996118435 593559223 893711889 341305646 501060757 26919870 335304889 79226773 755653985 216879111 808739357 881967684 988406905 624632101 881111681 908716909 975912556 980641731 997893970 17180492 469072451 866821996 955963834 148879104 545976695 377373905 965842832 436847176 651741701 8664527 930435510 715740239 896454835 853978872 992770444 332059311 954528969 137919050 620466505 512057597 719274297 950438478 967180346 191163401 481401121 161804014 860404414 208626970 768587480 546797568 895453467 56185980 565175374 631706973 851089474 45867654 142111991 85894189 774528317 589655581 810238212 15788954 885238157 703523807 911650232 145644363 823094191 974023237 978598129 118653664 545203760 465157078 951762341 501754024 694970677 646740563 958214100 451039186 614779279 901987233 949135807 584950599 966412518 651810947 954877167 64789989 495078037 482777506 867499356 431821910 641757500 289717380 807670165 443853349 467734442 168265291 369391750 780525437 907638239 550186259 613031526 866089618 986610131 413552846 414732978 517557424 940373188 693787059 977629112 213581521 704117434 733103406 836899043 326099101 593680565 54407467 297152713 834549189 883969547 749368623 909704182 764604277 846207540 609013138 648371155 641538043 882903968 769976844 875573153 612470876 909482370 961349877 974690984 421945567 648256217 481638488 918610823 277734009 636859004 232690547 420494966 566633953 937051149 54445044 287266547 895146296 911546458 795022548 868227373 56898749 897215449 384095031 613877990 578633794 890680777 753138670 878391912 37349528 522947169 20591575 539854707 661652024 812106426 869113994 939580988 630893927 813532883 330229728 556617699 667236849 838295658 826796377 833445208 339190191 478539756 870582707 977287050 303829546 936425615 927411083 994377364 147941934 663536030 955990481 982267342 631726010 675020003 573318234 848987573 711140160 956930088 789672912 939782662 782782031 856411898 685516834 820778642 749778103 875029659 636536310 821979256 297183119 881970149 840606367 880927650 401343947 911220626 984748452 987600245 960511522 966633633 306410125 479564805 499546909 871254551 497615465 522275943 289379893 680306316 773316652 918971468 204252615 368951625 934173953 988993960 276140717 950616247 249754346 271680615 227333607 436959047 71684002 806176382 614021605 718322336 648625498 851411004 133988158 594155269 720036696 972161085 898724703 922353437 919980321 930981132 844981357 863024229 858897297 864034429 863177398 865314055 713270307 840005156 541560572 891144156 774130547 832767754 79549878 420597601 837090053 865437207 966521820 989505545 693435400 856368927 126489288 968486421 304919632 362190382 538456 705892904 689602355 742456988 247202267 498153547 951588678 963361513 625311610 694103138 659837264 920211410 222550355 846141185 675001048 844968258 63294931 86067783 117468551 918621890 695826496 735845710 850282618 925508291 400550380 978617432 81382778 97856285 718659093 805874782 234874972 587305965 883166333 998271631 400061764 882130825 239844982 891159977 632364372 884542400 753636856 862178775 728242298 962457250 130453328 642880017 111899196 796177395 585774555 908143958 829630413 898503136 261425258 552564826 932170731 957170378 202343282 975556422 670190432 801708319 972595845 985082668 151004824 514365863 759033408 867231345 900668432 917241453 5650256 487744892 802291199 947940528 685660755 934685637 758262676 858595890 277379439 862534333 400340164 914739716 975531936 989859800 591091674 668576754 25442457 435241133 535241976 616716328 930559374 955517332 262212854 839563568 765172012 851298846 51963004 272964125 316147595 451723330 506083048 613379627 753156193 985753105 897227263 989945883 929038329 950974055 148281653 549572091 81346670 172076552 341721228 421151294 28129850 438062123 475989114 534863604 378035384 419720424 851588302 943047404 256795983 549648012 803621083 922838183 549647808 807065060 260439214 845617236 350012548 906091907 462448555 796760835 806252802 999060418 677602369 762994506 575257437 785710774 320833157 605790891 440687235 819164576 792108151 829840522 910132991 970653518 800794831 897112519 270468542 821367894 396346299 542965021 273395051 905605473 850661993 919060484 900380481 989439168 719724310 731601520 887898052 925663132 34153862 722896113 641475314 995383152 882264992 890052007 44784744 215637248 59031567 251349065 450642698 679626487 421659877 772546774 118720805 512779506 485165063 596142162 452470449 940282565 67308716 531965003 152747946 243125647 88781924 450973946 217764674 557463134 123111779 921064829 25594147 145713869 842785011 917078459 222330210 806848897 276807158 433936874 682834251 851126331 308803891 727823019 249795624 653427297 473994663 611983131 531320221 807762635 444462974 501809809 398511227 563464573 602017037 665886874 258944375 394154997 537254073 732473175 46945859 314808205 301864085 462683967 657469474 856844829 999113337 999987835 180210880 904427173 705200990 988570006 364591297 919540276 245079176 716461547 442550909 914713062 365723330 409232907 397038333 574609583 377983519 741219870 760783364 781352761 288453324 489656553 899540119 986993968 296550155 414136429 982606089 988606003 592741979 668309060 279422504 462223563 105065954 180355531 789588048 814160612 98829851 868907621 743191903 782889757 408687200 875750241 141038637 244269493 26559598 629844558 972333410 995688586 462839398 705933640 46532150 873598656 822140815 928742305 567230742 681245326 792440817 908125731 911239536 973021401 907970021 921112010 929141736 975658546 939863336 971235023 511273492 889020366 957585041 977779671 37493608 467288215 101837928 648328770 389979158 784007849 300239786 810919610 123723928 734421282 615970277 930536150 774809586 985797625 383172595 886296033 794183157 894785271 722255748 845315386 552970324 727685423 562695998 824155918 738533698 837280614 528749957 876387721 225092295 280539712 379442480 734891156 64132715 922114236 595233722 604359743 611499290 893660315 633090428 716133394 361541105 651440669 589110012 949849206 12559758 749967179 527526591 673679186 258543599 779746678 852714430 990324176 421653756 617444270 78132339 863180762 701622768 759387668 509281059 511991926 62985529 65364866 388542914 692766583 31357110 169594027 411634470 474916223 742056157 762485684 631443968 936939562 555150912 595753575 488195905 527236417 283249066 653066055 757423753 966248383 994351016 996261220 409629510 643071050 49081192 998078867 400775318 849768340 651271759 920780061 45233744 711033233 880519425 882125173 646357453 915103427 949920670 959442715 766984726 800860354 767371741 971136639 888440219 985260641 724171092 853767214 566185164 958252133 802530141 899685572 955942108 982165479 558031734 609285118 965326775 981618327 926114460 983677318 188686339 390358768 510683457 822056898 831524781 919214522 23260779 501377166 877119911 921626184 498963941 583157969 899541846 944331849 126840314 494068280 687356215 965139915 379037038 518871230 492803982 554911701 277067132 887195496 593440822 772766581 892465317 999892191 877256016 994175925 909303609 994077108 26841346 192143722 696731277 826614051 263674885 741121497 937361094 967156810 900800238 955055421 212596936 777149815 375978922 602692964 800631010 828806017 870777099 917538136 332954123 755190917 154462597 624183901 647559426 933083599 510450756 578071636 873360383 886066495 624085828 832802845 431391949 927209871 311439379 400045971 370794033 837493109 668408250 707885064 935167655 955432648 528014908 701270130 907085940 965263107 455513954 896750842 635217212 877374640 188858115 912076945 549972292 814447598 866854928 990062633 813059717 910812238 704791717 901174588 344076732 725094468 403133368 664542688 951223066 982580042 105655814 393375023 332963574 833724176 320907461 517032525 647922316 812631294 347591750 562264202 137921046 712739557 932537964 963323813 662196595 936901142 744234950 759763810 715683654 994070570 808555014 922316152 338517317 753863524 740974136 810681005 739347193 885314855 178540803 508868426 362229638 709614058 444205859 809801071 723516117 971667555 580283476 922565415 957851305 973311755 874998929 890832559 812684521 830879205 790838076 895260975 688277547 929389803 101274934 706615900 611770035 619887212 690600693 921992366 788090189 967537669 73142306 350548524 236693054 937930712 403954117 606501787 923318209 989084538 120947260 878759624 91014960 894495478 155160057 275061025 730153646 781381107 57513925 94332449 600258826 660509925 239470789 752623379 52420741 698752557 755708625 831371103 727550196 778610870 325205965 815085456 88778636 971047075 284171024 738635400 15926667 344045720 166491145 756145999 571630103 913007585 465547937 773453137 905717859 914373511 812543504 887581056 803051852 992068621 701819425 905530509 246304884 288994348 587247420 691494825 89148035 868099912 989658599 996506314 850448143 861451488 211658965 833268942 756230003 860581060 26128571 272868432 839799756 858350534 604452271 721971920 759110246 972429033 836616005 893092335 326212194 985975089 68698771 311199164 511258567 589979339 419709453 812225181 908971540 964963447 690025501 995399619 577782441 960104608 407865707 444847139 766911873 969615051 745887095 792875940 150446038 905972113 254792749 876568856 663059014 683584425 207454884 769562979 727084013 946751598 33254423 624818752 366103512 440466401 937116378 991425090 46947803 265359400 98932202 126202616 406278970 609353816 600468 24678763 695970362 775492974 186589241 317712834 879746963 932431400 562220673 594258524 609873072 794724370 160451202 852749906 14604319 620355581 578279060 859302580 500436335 802501936 709881889 948815068 987199714 996433801 521428131 740329464 911474209 968493525 784192668 797608238 527102907 617481128 589429068 923724525 696285651 735538167 422207340 660865899 683766000 770636819 272115911 879988113 130138747 689339414 583665434 923610797 404016443 881256742 781055925 797677720 847546742 888915241 825970693 836891174 194606284 196156755 108568813 423465350 456768029 800786642 328705039 416817842 125283332 325996687 228697966 523756980 185542629 723106373 861248857 932090867 664861505 796614702 967611501 992073924 389462083 868718381 182142927 378706023 96558705 391319426 695979894 971520015 272564788 959804739 143072022 258052559 701497859 927616373 294469288 412197554 622891244 764632605 612256797 812440465 178574696 704658869 121961919 223167192 393024555 881802167 583722828 869638487 304036566 574414659 597849706 680340696 144173037 316702618 305760639 639333117 821092622 983563223 544370312 823912541 375135408 889515533 705861330 850578847 222423494 950761493 993705021 994028727 990142905 999369833 788547220 858515008 401215640 425255883 748741846 942943290 318866553 813033968 510427632 976229292 902915826 962532926 237903703 441374520 299171495 872237216 522871279 781714887 763627546 897269874 223061624 586685341 863739142 893349533 128294528 506596267 884129128 890093792 891106864 970866870 201672324 767153094 589035984 818014427 480315309 881083926 54122586 152100152 575990261 894700779 510654980 607005075 108777386 207127741 306761015 415095104 923837176 940401032 322604519 325130421 905523654 972909900 962044674 962083061 735225362 772103261 854039670 975070219 87818293 363837669 978988002 985372152 721968589 804714414 595296191 989888784 244736608 642084411 733889444 890265052 501035699 595538889 309287321 651894327 394615547 927475987 304773619 392504048 321624239 829176749 475959347 782695875 599457973 905484781 757243683 895881210 633386768 724822834 212780640 452984376 154336524 575931659 351138801 542216639 971065655 985317422 250602968 334277029 138510336 809395998 450936237 643839482 400408897 996637253 391636261 838221314 319239145 460919039 329176326 772995761 553862075 955621665 612725486 902727281 382161163 735273301 701441587 764375189 975521181 989914578 271180726 813350400 990036830 996937266 533338349 964528080 498112581 757413264 775743284 920614440 474207836 537003489 660164970 824377362 569759271 633940802 18749406 186798921 475738639 605270382 273093093 781809477 434551860 929288761 640141772 979412757 145685139 215559557 790616119 960125446 132323838 969425158 663058824 817976706 725436737 876910017 34822470 698147674 72177092 555683481 357194879 652476122 319191422 691183143 112437331 643974429 999984880 999990323 816076173 874150298 841668514 884829805 104673048 920504178 22380455 772332910 494645805 662593846 411020573 633489551 329861523 707000131 148247889 566824921 891543453 917242743 519887101 910493836 43176242 434806209 37122790 771640647 496063021 514143094 558114213 875180935 902856541 960818223 881612749 957665808 616081898 912077023 192866465 839540729 881762532 983202941 981134569 993324898 993849448 998729447 752933574 885203611 763701601 767486036 203650750 483203008 341106663 543558271 143420289 970342968 887721501 935376060 365057892 540296737 525230099 737893196 958835255 990222014 884706806 943849747 270248728 818525097 956926627 999000944 147166191 736790582 67112437 947638408 103819300 267815602 326116235 932128979 955362344 963234707 244836377 854337734 674409322 766217538 233882869 390878029 672944301 769873102 257256197 771935465 156328260 254445583 152230269 611786263 875417594 942262262 646749533 772849438 222620022 526042932 296809933 490285953 178994755 903348082 317700063 798390558 303023200 822278186 771587579 844306847 32832652 595941852 65856984 242749350 387780546 585509421 347069470 456814511 120738831 753524873 859027284 891764898 754911207 931608233 92860173 420298739 639192119 717733819 155986688 686523059 650521660 852378585 903601924 964455123 592784429 756415099 85186268 640251275 681408215 916736799 763244947 834296442 337777651 624221258 457523504 792622007 220569211 549765749 541890649 822590581 54222855 475396154 863558219 898343628 815417497 985688931 154973236 320064130 171254198 376635898 568846190 949150959 356782049 988757245 32795760 157112115 893136396 939309126 601569101 614731567 605986653 913891625 696405330 713046309 448510784 472794177 328747586 542055725 889813065 896786705 873743366 965552936 67977087 606079443 178465660 323939927 714383810 832771623 348379985 597863530 137432905 960619526 574509099 795195407 639597465 777607696 594486955 856455878 546666202 663349394 85864059 129786578 720907289 980388470 383987943 618885716 172419479 234684703 840265481 850200772 478974284 608348054 525846660 840462463 726404503 792575884 764994160 908178320 560714785 791350071 425104778 899919757 682614727 952497536 111793071 858488326 640158039 648428355 502006043 694714155 496485725 663203227 549289224 784932638 587255749 912979547 546429628 739229163 304869137 507163745 239478652 681520994 357256966 713533662 259541137 938160884 647250936 790844222 889129570 910734935 457413467 707822541 869312184 956604382 32958138 695758107 492635438 804160061 996624220 998143476 830786985 936618607 958214193 990201868 198030167 371014854 369471318 735478289 188233634 522358405 273049904 608650229 794453252 816393382 520921243 917076194 789767051 816112199 264574752 699784362 290706689 529646410 213559343 727210426 693285664 700057925 2985164 245079307 687053687 910556308 587649113 867937934 234482040 379434822 824959445 881626078 601802297 834286636 797159780 932492105 956382150 992790450 976585052 989447090 738840884 794808884 263674773 934772114 111752251 224576954 42095893 854140412 843051911 848918434 330685182 752184734 417117069 573384798 36507705 890198873 662274982 676632581 751617531 847267614 750225249 954662172 82647064 155370518 207475998 743513450 715006034 878828600 870303924 978480203 684358382 734436377 766309576 884468934 14814688 830852581 288101689 805626996 512495793 908434634 204688148 789242164 964673851 990744298 290347238 740633263 136895090 407467485 590879819 849992438 68546313 383941725 762805252 796163564 243749946 644618143 446782297 723000585 991430555 993751279 782763447 790977667 603744007 906240461 842662222 967588186 895021276 970858998 940430442 947696513 609446265 637113291 521100284 816998803 865699944 943397974 744750875 785505970 305953139 463076217 785588155 882759115 200234439 914620018 886522305 945941721 612065676 692214983 797852877 860790380 523979173 688414098 301989710 443079859 334665597 805796016 721692073 858068051 283452989 521094189 339676834 923094357 971104560 988214186 795769770 848097765 407356195 867491299 58095716 988931980 504255898 846129851 739525650 801267233 311231344 910242886 128047882 389646099 322555721 378061480 839141036 843277421 354605734 721936821 682691654 939759148 325692817 493327443 118828447 951740582 971904367 976335521 520767628 725370852 168690086 719239099 413441837 993979356 222223695 933627697 887318398 982896229 641099561 738127180 698380286 796122652 683251823 891804161 938326210 963171436 126565164 501013873 93772392 768152344 77191685 653957915 664322023 731578721 999559009 999850818 907992919 917034923 728714370 927665065 67508495 798899576 840701208 958192447 10260423 829339664 43472812 484588664 796714437 932590322 397821918 598927341 424270425 575868829 14513985 719284774 230568117 694360878 625390571 756346346 816501706 883827993 44686939 101082690 577084409 645742581 375401929 384328322 643940360 713901222 343260966 476818352 41023863 901170810 102642501 950156255 970878239 998883125 147214107 623398700 876912436 989106727 231972477 585501151 841553652 974573998 169923721 385959877 649901717 797453567 550258450 981935822 138277102 150821075 658757658 873778417 185302517 750091737 358877277 656528763 39668877 206029176 849298888 922567586 493866102 828045473 639621735 986326595 308270143 883750526 649605121 832315573 918254037 924357691 574810857 717111668 327159149 814721690 18847661 354543668 688014354 950798651 671225769 784512825 450779788 971151041 383314221 563586412 874498617 876635564 871656845 929664008 959740392 995237667 219864157 785274766 567992697 968234072 699261492 855045655 53511903 911566605 260192625 724440159 483629618 791830456 727634083 744245281 765064941 885843528 585196415 842186227 900113148 943120382 353950501 999533963 188590260 513242488 156600917 584281050 144554582 629991573 840091708 929206014 57869302 250090178 506942118 707678049 670772601 691611324 25902417 920461182 945187781 961751338 905149834 917107549 360423778 537702426 919783228 983274076 345824223 736995489 952486260 969658883 807979043 895816045 341075264 437458267 46667044 621921118 628854953 840950424 352332397 373348154 625336476 845021838 479434010 655530274 311978131 481710770 287959857 328896297 798723560 998258230 641236820 777456621 86084886 189522476 813164071 849915197 435008816 589047955 428363608 510729588 648651847 655689264 180928576 984996667 797832197 898670337 376439169 850244832 273976752 287235018 161243826 293832545 755376177 841794725 394812956 559233979 552943408 988403407 689500175 829482122 492726696 628711282 86210642 600237650 217901961 575857737 685266809 781287659 631215960 925665572 73204682 714345467 631764715 789911884 175365534 644909232 611811753 739442336 981925085 987836964 238876171 710862707 942546285 974721437 598661462 828551693 516338409 746706696 532098653 846958581 834236424 962128599 949021987 993551067 341899077 860724401 766128829 984808774 771721759 787626702 609855901 916026483 377967154 848328278 471043211 953012129 421699312 897926834 378383094 713271801 146870204 975625399 274571564 437115832 516081532 952062780 62517301 380340511 853069924 901138453 581347169 733915207 791170659 970941576 924034483 952452896 267134971 341479978 521545160 672645101 277419845 908248264 837126114 876103330 816916217 837194620 126889516 844093443 971559780 999203165 55519578 410424206 639210040 704116427 191238133 741723839 277760629 914064370 275647948 398184875 818680471 965325329 148408186 741475312 908916329 950988993 437502752 927809303 8639486 357450067 348423341 674535275 647994870 836143634 224908067 251717175 658725470 748459676 478930742 863712006 12273517 56356396 661302622 852891637 13283876 467043296 198725977 617642981 244945301 754813765 825887026 905136652 468578899 854955956 203386511 636929399 806529011 944100909 22210861 632084583 713669772 911451820 705945165 818998464 260332581 888320038 443150252 702887328 880928188 900762612 202514023 803090961 279068387 331074856 350350993 657041713 698733478 806131630 824632525 981444637 173303243 213677473 595321142 789062888 559672581 643066827 41323329 505051367 210646227 438943333 709839857 789559754 903793516 914643593 429969580 572025989 129753384 219365380 288858158 529220817 940726467 984409864 57784941 839560232 1025899 127465609 879287951 899034271 369057785 811810046 358990039 952023537 157881489 567019582 902443428 949927777 548953155 844037230 730034237 817663531 229321470 292022926 236229933 470983497 743400401 898402929 35648335 243868661 310971887 672314138 569153210 952292533 237514349 622444389 350575322 965120138 16719609 874785918 671675440 872653501 627861748 725482272 973932482 991719758 851753563 965074568 45268735 964157188 887055348 895083310 850465409 867072782 227690298 954191148 215093977 552729888 89183955 494862583 618565201 637849849 500114747 690724801 711434352 918016245 294970053 730246936 764907807 940850232 351303996 493534621 656116958 773465936 701482906 856919507 560626254 888802425 859673681 962653893 526238360 864586613 662557577 802452635 124794808 142406975 775680226 936888037 806587121 975085972 696062763 954493572 457507366 935724517 199862502 268271245 788591950 927419846 161691574 912622163 256703067 862257180 165735552 367810819 848761715 883795553 77359881 207236005 192865117 803566004 79174432 929209898 442185649 915825534 779555024 856941903 188445696 401629411 231193261 234994386 146664160 695093158 934621271 937732807 771255113 930481404 911601629 916414546 509224299 769368566 28649414 458429210 621435269 949597792 683480870 977118792 755700611 859812119 831933420 905005035 132570137 374296295 547744956 713222755 860290138 946641706 403261382 779451541 653002455 722128883 802455060 904438419 682648779 784906697 5543833 774200442 605113813 717175461 793467978 806971257 613445486 945654447 301350174 579382049 437974271 611096613 324052683 854363543 388277133 497671084 304123039 493126975 39516123 132627897 894300470 931189029 125047188 877238503 757532943 819344704 650398030 890453176 202688768 922344936 234598542 802472598 113116024 180244512 450239792 515336243 816255086 975106694 894511154 900035095 540908496 712883898 759543215 800302372 685844245 769890763 251612557 977798765 171630432 622978477 8712189 828569128 541975738 837445120 345879434 782264437 309824045 443711266 227052086 386689092 371828653 477443190 988222049 994679388 748023234 861565151 222149469 825615841 342181827 920594061 396319557 626079321 827252524 835565228 595351615 930891068 270581238 855784478 969343368 990185402 444865337 989379625 207048756 848174844 898875574 961729451 129526555 757115959 359301658 947352565 394977037 890535268 182380764 929590092 641104642 644955093 340694390 874022578 905478123 932017085 698702055 727546870 440729827 885647497 743087669 788160872 538883750 608775999 466188640 594097942 954198127 988429059 226441491 610136919 555553621 719477124 752555188 927153505 712020493 785246790 386945068 884490477 498347505 773294021 885644416 972987404 426247048 465422863 809859872 842660616 777932521 795735934 190168265 197442330 1436007 789357259 928618729 937041660 833966952 917624989 511981557 772967373 874553946 882598214 345007928 656909089 500837736 651694230 935777782 949415281 783856781 791355900 78280113 100861918 867066077 917766366 438904556 821322614 183673263 779354669 532459818 869022996 724791991 838891046 106866518 524832768 484926479 908240819 173133810 530962507 911605000 990807355 259643967 582693201 632348863 645443869 707134246 985856272 741847312 946316912 523746300 957929195 678363062 751568283 320783962 479059780 778023203 948742732 609128832 962740745 932193602 993279516 535530161 983963806 258623949 736651300 221156328 860722995 750734773 940413756 949204126 956498247 452553891 692247558 118606306 562826281 38371139 180070389 902640989 917650495 689128679 796651459 225235458 950188522 358956775 524927711 834557976 846999834 238999825 963793427 487302514 971010896 231453236 606157750 681468206 694617758 762610675 819682107 73192893 868325357 563124699 978620139 22566572 220935496 342468499 833477562 54398179 438524801 344838740 845692965 581887786 746335370 927412835 967840622 46771522 540215798 617561971 782648094 789541212 846910707 468025806 920884200 793078047 819388587 103589404 400474556 966286114 995987620 355442526 475682809 760329925 818275843 847810463 949848921 769595800 990398341 855263513 897578567 890438162 928256234 600348215 918411059 999612372 999899588 139812927 361883343 734548648 843846981 48788238 452908736 742145382 882793190 117420877 391033214 302415753 404458965 577984314 656430423 936494098 985250621 933216130 963439939 31918527 767983617 934328380 942762154 473149163 781874596 816868162 827141429 14953839 823153825 591538346 940624509 2511959 151417451 309291522 521612380 114973728 559542638 604859887 792131505 779787013 847396235 507291661 757719094 57271972 172108201 153005516 556185837 67156986 439633073 169371688 517187999 845782234 946225060 741573617 964975804 406934221 964162955 151217090 949684343 940924515 941315936 338149985 629796469 614075873 765681779 102835029 242710780 998684306 998977328 901967111 922119262 359551229 738625740 555132001 748379264 888118381 953427249 858565037 995166892 564864376 871145641 71431444 625522175 787978324 806744569 209026369 613850646 523436418 752906180 661538947 776219550 315720100 780972736 479009049 636875807 967057319 997668231 16994214 535709192 324982443 343057911 824994366 872979541 179595467 192095140 403834587 477871909 677973814 774650851 191049318 808825651 340826278 772975631 246166186 907241752 131151279 560856524 751971416 821020500 229411881 649137792 278172264 783440205 197192143 546888277 937143684 986654287 404353057 889984720 578507380 646445156 262151240 793533090 939748077 985500622 123803271 459405113 622820422 930799733 537674707 918022747 319702937 496811652 101668447 588943811 647049761 968463913 120214154 326019627 682183119 831457972 289717409 709090859 598125319 792023347 637708004 725571243 307683359 752241135 979358835 992691321 546611986 995777962 838043707 993755692 935631008 957118496 969610417 999703584 906729329 939379900 634362863 648591189 133453755 297524028 303282588 895736595 326112767 937226013 228314413 308432565 835939461 877009914 419808670 519746884 978664595 980838093 400239548 451928174 163220469 920090606 94215488 836694245 965495793 993796671 948213951 985461872 27392323 248993341 198535164 731590108 678372409 941418135 212275080 586253888 838978598 935988812 492109497 966121670 397340176 727224529 238549546 831792008 164831664 261454708 657330532 905718286 630295065 775922521 631467089 878782454 917313404 941588558 516367976 863406827 962618236 992623770 580576731 870932353 625176368 713710150 665111567 821414806 683450185 811869496 131942972 221614979 15532819 180600991 493087619 614119351 492598226 774478969 638699360 646047931 980079443 997461741 170512131 792112843 924507061 940918546 556092842 596286383 425502894 725065845 399863769 822757675 950681013 986437283 807338546 864976117 83525811 927334193 679114609 853966167 300810731 984680304 737701168 964217482 651410642 903486208 4998370 632040198 449576941 998885406 16936900 630682476 124410607 852835856 236221574 319844570 93320106 257422426 144929435 348684066 517703179 888977290 167965980 173143184 91843376 462901676 462206395 667833014 729671837 814647880 997336396 999820411 678961174 998645456 849550115 924649225 922125378 934534406 92373867 827473868 379947360 395161531 814957626 890192197 589804658 832860756 225898577 990971140 776395513 925714867 395779366 790955285 651301870 858127633 412486534 955625526 498595000 600570813 395113316 471884566 512244314 998854063 600284699 644167079 239009660 250713554 928310237 977361664 669040793 683326043 635111138 731457838 738413253 816246593 459199275 553329924 13585188 529002841 915234024 934909537 887297547 992648030 649634700 681181191 642888821 742984351 550384227 753786535 268532029 602223827 302586182 517301107 139222388 964304255 839073213 947867272 134504599 160223330 259240733 449786275 764573710 976967671 956122113 995336835 148525281 707032687 387451993 727031876 917374499 989989946 499852210 727315416 498748145 699377053 568624920 657622639 430300264 672241187 184133670 562166004 941086110 963192869 974564491 990900978 192040900 760533966 130938035 605915890 822648936 977741712 640816995 752309109 534970061 581410008 855778432 905593026 195543975 623311358 633747228 887790801 17992907 933585442 11094713 157703578 759017177 969313689 288011009 515960339 689995573 764177971 701369375 843248500 185518644 996987319 189343214 558316792 853702097 897964369 237069879 701386177 152841923 275957874 591739599 743030671 488498486 821369366 623302503 958292769 412479200 809476553 96539754 233333541 906639820 961083406 642471143 664092690 959370375 973079679 220045692 512981935 911426110 984694628 668833353 760665050 650909862 855031693 245284938 522481119 568429381 800437290 451926950 720026191 93136016 510542910 445958728 556108274 850394761 872284529 284820425 805494078 817140426 898679027 198300742 324175616 70665085 182613834 526329570 918687392 562720722 692480522 585304259 746780116 873537264 924963597 808687864 852743544 421983417 663667803 288122302 379842398 24213409 406950055 79073624 570666607 18907474 286409665 741626217 806585827 145781919 150254858 5889051 291903301 379126561 764006663 318645275 919357730 626243338 952822812 762649761 857728647 484773086 995397981 458705589 667626438 295208289 450737828 481383676 985946779 237371549 425002853 163647194 219491724 613257575 801315816 403919630 534353739 227918438 673148386 36750807 304224857 253752133 860103712 214686164 886014895 961664235 987120004 563849862 988667423 134574049 308816594 620466432 903651417 69683748 757256131 985485809 992248139 221047189 823266305 23206982 803976898 751870808 884208357 82487791 949703560 625981568 655073289 563492317 748464016 533250426 723315025 476533400 817119831 869432345 982913158 227866849 363835477 619059784 696897447 134682988 452374309 787952959 860489158 636015346 655445626 922137165 943840458 681093590 867785993 794667395 879718082 62375569 209093796 631391048 653913531 151620165 571686480 112221 260055928 819615784 822265096 172792813 829411117 874220853 911825068 347845793 830524132 217100037 262244507 785275828 908315021 943878315 976605587 714700676 855218519 379381204 737246682 15449457 223264140 392872965 399643082 259592052 883715408 457841347 716874387 807921177 808508678 286408408 857318159 717056259 847746975 421085256 868202709 610236324 713793571 10096443 853801124 841085082 931363629 768654473 955557655 98990694 477859946 534680372 687074443 605323658 889808282 780960459 918572884 445572465 904637066 117986971 923227023 763475701 908620758 92767946 546469294 561950348 760876765 20981951 448709641 832350601 933160406 307941579 519327710 541799570 860696968 940849892 983671012 651201004 792178262 130942886 142175467 391753957 431156886 89789388 665008081 712534995 872826318 962011303 971261151 850285414 869204108 937509707 957629804 689528060 970500538 524037396 996757237 356086913 434150858 589511211 878694420 70655000 316723760 606861769 732531951 218333449 890196835 942198934 984557074 570585763 666622891 977494321 985840671 75686771 273428044 323200966 723350653 864401405 944463695 798531131 920524453 897919759 929968312 431614306 870860271 365199414 820785549 559642835 773225193 502452781 595964567 278598738 979953509 853526143 988820392 605108817 880653650 846771272 911752557 942377024 976976302 291955044 355965573 510245854 585299222 947460119 966359716 599076047 999041294 260395167 289308541 684482566 832802786 200263408 962464912 876005242 989634367 271885770 892591007 496123665 886759704 882730332 978011328 693413889 730168868 552099341 808589505 261196503 836579018 716047674 809354434 654845804 673609087 26556343 84398609 361592502 913084779 983904366 992343734 419188127 771449142 794004687 889684885 419583746 536279727 882538735 965077013 368503420 839430760 730762697 913874673 304225386 311518314 470132724 656752052 947558553 950862447 136228371 872511311 543228833 815801776 686815184 912339158 752547387 789003670 668213484 889696086 267271607 730939720 588257254 619749006 107351531 793482575 952861476 960066146 135367054 557720366 542365213 591154406 882278514 946784045 29849232 889954362 423209703 604402679 156945161 204241831 82803313 806588737 559176494 980405723 711797545 887763191 201549284 661291872 563952262 977659026 352099023 690294500 674009844 779442793 435361395 650086265 435091417 753862956 807698101 851178283 801266646 908291766 467071482 979306042 419146718 854898659 878032728 973930381 950610032 960574107 171748913 635099375 938489917 947706212 458292895 861286829 346889495 802793985 864745521 900614308 760578526 977008349 850724844 916377525 939302290 957358307 549137235 739985023 335966548 379694377 541101441 933047433 321477993 882098345 343930085 866139290 428569488 925227917 430533594 733015472 243846930 373259733 462506789 660410868 774167522 868620876 721224369 792408527 412008541 739355948 587924731 861253910 160594091 452552623 670240474 868857032 225936417 260730933 775213233 906121788 79222317 114608595 711024827 981047162 464477965 667097193 56561144 671421742 94790422 859750673 491160439 637730448 355554834 721699397 622961259 769498335 837590790 976221608 435081871 941899000 194867408 846315592 84771943 519378272 205775932 286686374 959665676 983806774 111614957 915963212 448599671 753845304 911914994 920329375 440466609 926121005 568656176 999282029 716099682 770695543 721772003 765405377 570070962 876111513 675359388 881281135 901612768 978480185 477810197 678058225 416098090 508752460 185467847 412528386 338939286 881138594 210593180 328899742 480321467 523660086 802881149 901194216 610864587 633558413 13497942 164632688 608762693 854511186 34461932 997571835 750239839 870961061 164197362 604208650 54208483 711604794 938898678 940553183 513913665 916711242 396205479 701750077 568264468 736637666 280371582 689695243 605027210 985530446 397941242 682464966 455574522 888995443 523965307 709064107 974609035 974853337 564451295 844172274 234508205 293466854 30171900 665434680 564427339 841623474 711139224 905231423 768750961 974324390 614356421 752295087 172753581 594862712 545111486 722846000 870676955 875690033 956218995 996314890 635311311 845289972 13536321 91440571 109708685 832167236 198392841 411070866 737288817 872568378 409711412 919145831 452258541 897204477 396534562 672545692 190562737 216227675 282540743 658234452 533051644 942494714 322989377 909548048 277843091 845732635 889618765 984574233 92959413 755810681 364357784 680917545 634130024 862060177 881684291 949752769 322291508 871649573 670023538 859890167 38222882 261586423 621421666 907334827 18430063 240516116 248634555 969138362 730836498 945396284 590512146 595298673 555933969 972258118 890175194 946068732 71807404 602012318 434552451 693985064 414783299 571727943 267475471 836709450 193842362 633315141 105289283 211585160 949068990 972535903 824186441 895540137 239042290 935603276 405450537 810713151 209860809 976888511 69884256 438818031 96117220 189525774 777668173 838389899 586318660 990881034 683269134 728232842 11861254 46645620 572386439 887996285 76707072 224821319 596910132 781004421 924275043 947153606 609227278 791372264 477356008 890333235 71505172 600738917 393300396 870768432 406895327 768621058 847233040 945655194 684513796 958284539 567261251 966568698 363135825 946413645 113647685 952326182 930827000 932029293 679231661 846913529 531571478 874099559 315028025 401866704 187955033 559226061 945638113 956452684 805083728 917064396 648118087 670863721 260592564 997361560 48852840 922120040 422620065 650290076 325075906 782263041 546561970 928633384 513647428 592940635 548641501 988256243 41931521 98005047 409994516 897408890 225032693 346814295 72054592 883332498 135079239 689369018 247819304 454089411 960303366 967181006 624762850 680205392 7254502 945218029 315340641 605546866 868617269 945304995 53215257 712002253 323480912 634486199 879732583 994983782 5585963 782603710 451232277 552987075 480544654 797421376 573660332 685786356 981493178 998046792 714832384 932780558 178882515 542057322 769659065 957691175 81379862 701914484 490766321 892029108 924160110 949369365 508443065 905369638 533606772 728139626 24151824 62022930 965365718 993209799 986341398 994022379 943672459 943710006 164710904 490642940 304285441 658424959 21766727 428998423 399915017 466436082 797617384 938723301 460707948 825837569 951154 668905602 574665467 768625823 308607126 568960135 101140525 672646913 849916262 948790728 472426408 830927883 955085032 957690200 192618440 990352938 819197578 857824303 491742542 773886814 935894849 979960372 116409603 425598231 739872558 872081444 216979160 713043020 366118187 918228463 112472790 996815114 686213407 756157366 234037132 529306339 216653826 354209254 963422072 997251802 835007676 848998132 438406431 752647908 251098197 467375632 676054221 822582832 942534743 960324239 653777876 892428318 265452160 546888386 562738561 731088205 715595208 800009117 165268022 661276427 44685135 66756918 424870148 533093351 543931987 739223972 456056003 720119091 180056795 387790827 72057277 325041820 947472736 984424752 409880954 549388942 995593949 995799058 965450893 975066762 656044682 777673446 222242726 701220795 445571745 975657559 584042180 698164409 172432589 828467252 362815204 815915360 296020043 366057809 403688354 878472637 967841183 978335668 325960838 619769948 154162791 530836293 935456495 981722034 466997658 787123413 634853854 996865576 801402689 808381992 768297966 970684698 177161691 250493957 505071017 550175966 627407554 846633780 189420238 225704952 8868226 279740481 418478899 479788696 541372827 918754704 999403610 999756766 629878691 669477581 57624042 695531637 265833512 455876906 292859096 799907242 584572783 706368131 822723222 905006045 258378613 329287045 938923697 971264311 968646419 986053240 80012107 184826219 682164632 914935175 421721717 527288165 523193131 660483597 942809801 958700675 759466191 912962205 12065737 627190501 802373676 815102421 757341771 860624807 566333716 906380634 855393070 908504200 973179014 979385182 611790618 946653505 427368738 453062376 416547718 612209687 872310544 996051140 288573364 975360650 833707470 910577608 894305589 979258100 963895912 974587508 558199862 907078316 13698027 649317814 365092882 502668295 322189298 865863385 561272271 922079923 27389216 836681198 578691315 911011440 338316088 987394661 865711688 927313314 148956786 441327194 400823182 877718822 118118945 378237281 961035564 962899549 517168599 993098893 849139431 974232217 421269352 685845873 93039963 746649637 413002205 877826418 554157041 582186099 611430946 982425436 922684551 954638508 778573329 791980990 81852434 161051258 671936215 989646029 907066106 912338601 494864214 928960763 782770780 820337576 374056859 456912959 817480189 826825538 608539726 785607372 565076127 940728726 356966475 765901763 521656620 661903225 884104598 982773621 498592852 803827852 226682112 487538798 342325800 997346394 821996477 950309842 704171902 784886697 937714301 958612449 407145782 898696541 20336363 903259371 803633799 891346747 896660992 967662916 69930780 712467050 768563276 894141666 108667843 255718467 560172983 767630062 153907946 358478710 109698424 258486512 116940333 700225448 16201471 584073495 53830696 734817594 761917997 776882824 945152771 961144672 792829217 893782575 811463460 915160247 669441363 953406424 180481531 455811027 726560955 808957595 677398780 852593737 717598937 738407625 958371527 999216855 576892768 769813408 594623660 669285472 142796329 445752629 628642168 868370887 42133416 254934798 197372373 358771489 610445030 905434935 602635653 924277551 146970878 257795824 542438877 687229770 446461343 725914691 405663440 648648627 719058560 923086642 817958110 916417385 314671965 406192979 15030021 781262922 846578590 884279828 529720747 739590226 352882728 701386615 965273033 973683842 301695125 339249783 814401103 904699748 143001142 145061396 620869442 899847080 991535386 995921350 39729405 968653576 604957241 927567099 581145203 969392463 970039454 974638482 883194721 993667173 934985225 943606460 664668965 995872588 698722650 890211531 305997937 855972931 924890308 990665736 785025058 797262932 918533824 979586623 264592158 792931008 948102780 968571447 238346192 861793375 126111656 794660228 733531526 772125526 388395592 849803732 314620461 850677679 690408079 742740792 383030508 735152100 692786464 860116258 665320594 844209970 977255162 988315308 462355587 728127771 911090709 999775364 569525083 944987539 667520292 719489879 81143033 233607573 877250513 985060828 534978556 900110069 382558297 800547605 280859839 354018697 145036991 330946605 902473273 995220596 949917757 993304368 366097212 458849884 777806751 889826914 866184186 926138124 430990530 610976802 371026592 400033318 764068777 771868194 691029624 907271211 458432991 672486985 998041610 998205737 737121598 904438166 221915636 373285315 983395314 992245650 60620883 761630143 985164536 999197598 243404440 370136775 898292720 920410058 878408933 971057277 225599699 491080256 103800096 110677318 679545577 815359687 287211068 513804657 93142446 480436607 567091261 795221124 163997630 465035623 836398184 973620815 657956120 891946044 958741595 966425358 480548647 948246441 727868719 854576037 943448152 952535513 261460467 839187089 764428526 854308034 965960113 987885949 916977870 975513421 263887736 736277008 772998245 825303159 900851838 937043099 352892627 626066487 661189501 740361875 444286683 617305681 851292499 985128304 768558340 901579298 166330433 618543613 721689365 935521546 569571327 605600750 830664831 992901802 435428434 894452744 594983044 950567584 999205390 999642308 513395693 597049210 667287995 715239679 731712022 969918238 390669407 595709502 510330270 739686672 523130886 608139298 314632194 367883252 864838625 934546317 89627396 753128077 553362256 713425502 900076756 967576968 913794182 978250101 482063928 760822199 684404485 786319812 20520496 313133715 660617098 813217359 997776657 999713332 108170710 596338696 403981282 631815057 927373795 932548015 72396903 763536439 844195797 861512517 822700534 905594400 138153745 345312305 847022071 880787375 959541200 989203363 242276648 839364066 378231968 963382074 950379368 989962439 72255046 837623281 811779316 971262864 46918581 780559104 38271137 714860925 622187841 697529351 107277429 550196102 503609271 724562643 96679210 951146758 166570568 176508269 944043033 982737291 291375311 806675288 42151495 350567787 390638851 665821042 205149069 578418023 272192962 352080334 924913165 985073097 676242312 684811359 132049263 966745806 420220560 970898181 382145694 960537720 698970033 959755281 526597603 859240138 633012289 773078409 33488897 955716898 389931194 759118589 489967107 490434049 571806708 921338256 95654037 110605473 771294620 894326908 387964925 709419337 717904609 877310911 509003833 531242915 290536800 914756927 906837987 917340484 46256986 333441812 985386674 988921442 860165055 907044967 21065133 964930325 789950333 985684705 769987795 777919042 522673356 577209811 62934613 897776224 80477276 953162392 965141758 994195955 758434790 859379443 156408813 659918835 9186004 64225882 580651075 956535203 811320902 992785281 827801495 845850829 553599483 593728691 779011524 939343020 988891369 996065906 14238556 18804747 390032333 569694083 486696492 519851833 126913061 309008961 927836180 996881951 863114801 973363807 835845943 875781637 630014442 868222184 20095588 226558799 224091891 238713922 681108197 706158720 936361287 985712181 353220793 685791516 341350927 928490717 815122487 914836715 574845617 681592334 828801941 978602228 889851197 921032760 497849458 627951774 312246007 980363535 448761919 746687376 538678833 975611798 751414593 937723299 945014163 973714658 296149649 497696499 873375328 917328892 796452113 904805275 922430350 982939940 485923694 571699221 643110050 896036027 797162545 997522826 481650369 610082193 347943624 948227650 813525247 982209078 549871947 977450106 69031150 494314337 196170996 961041640 387576693 913786901 517240898 877136321 380302440 918242557 112976957 556858010 816070550 930406436 693667518 985736224 779329722 800470863 499617927 880649460 445854007 968663293 701201454 983997190 478383448 743427692 29118318 738692518 948213677 979106913 109694120 154294497 302140669 572227131 478388712 802539395 7539272 588021302 327808722 433720245 920305256 925606245 970292914 995060792 14475094 566974257 404273643 985290862 867405058 873640872 978259365 982933207 754666099 931109125 993109155 998954484 961679925 962586585 983285946 991366422 483361179 532057328 106940403 820910641 996573714 999010350 810782358 940731818 961320701 966635835 41924098 251220399 979001283 985230668 519673030 972964984 55462978 368573477 583270069 603893671 437544438 676838169 795353145 859332785 57658069 288446449 85362600 920442034 727326545 809464590 176429151 645166319 255455668 294352350 448675867 703812899 854663355 969431668 276262872 923914172 383997463 440783973 996026427 999672378 792897333 942898648 311817949 734320113 750776987 855845939 626107011 817243250 411559636 707439643 221444838 864634808 648352084 870271783 822535643 863625172 784377502 858225780 54220335 702805639 371157625 704344776 225755701 885107158 151221802 875743158 650607686 851635222 211173825 789127286 303391336 719249513 68414169 677126908 152993359 741078817 377078801 875954054 235196488 578340412 629170292 850291510 678253307 802537806 153326419 762627832 692910107 948544258 718813920 789819552 481936984 995376891 950592478 986084156 86861470 911726006 198064758 476000548 783904021 894540307 980459959 996333864 488302558 977526313 275434582 959034855 500046619 820772812 16127413 594940760 553510793 729826852 823080525 953913724 979669204 988831768 611913172 885226482 149633198 602589948 586554348 865790884 229733693 637087350 981528843 993929067 670146304 969436578 442638244 565573756 378830898 992712165 420584769 492274448 348517531 503719058 14605792 812020347 285221978 853278230 446785997 909127393 809358961 829563914 848767984 866022522 788878834 812315421 873590368 960952231 442592101 682441471 318206802 751009409 336374374 783524391 701427598 831514582 796742310 967702845 715355114 930546689 235696862 502652517 225636926 589890978 853736451 876145976 46279383 837906564 950850314 956457905 314928203 883090806 909145386 954109275 403073697 404533290 645841032 652108490 301750486 699977288 536456937 965246437 929149668 947185686 687046141 912597465 438765085 922470595 466329295 503526802 264006418 660670282 19228814 337495550 458629562 556575870 614077350 882433725 58866000 963484671 602784965 634162241 582337488 811578378 354043716 691875697 662866301 747566406 400476865 987642608 371408591 503808910 605620303 632025719 808571011 961886172 225736563 968635999 109796444 796979907 274766436 456271107 5087780 300912622 937751711 944382623 696541270 863610713 576997543 981099034 71199056 646239580 881564191 997785733 924070122 949615884 112652880 446364554 655092936 849003553 938953805 961942859 173533819 808494381 396217711 717640396 769335236 963031489 515369289 653224991 940127729 960791674 339631780 506219527 20585314 769150122 231946926 418814782 197772246 787508581 773603504 922071027 894877825 931043683 714645047 860449492 509255157 615430721 292253301 687639428 224179301 674695654 288940526 741417072 971454983 975484350 909768017 913982227 378659225 973252884 924653155 955400554 53848965 713242146 924607144 996507485 295658574 418662980 890390214 983909319 846329840 863894464 285218535 501505184 373759014 588367515 270579501 548630817 952872544 966808621 365160239 611478042 45733111 884250572 710417516 770476192 874321106 989418711 10352764 985459529 749197546 819840740 903126917 923757741 428168020 908909603 974299276 983156902 879796746 992442670 439573094 812435466 882823467 893191040 80602628 652414485 194683763 686188027 949912612 963492591 814584305 944060923 823336373 931931169 865160351 971980090 708605919 868664027 339555475 488807144 618601086 896447686 1059662 730565616 102561313 326344148 22083569 974467649 206417954 608140183 984022381 994400578 800321171 866777454 476031660 980662080 546479473 915127133 922713196 978501012 395928966 795124578 264008195 516921660 60460600 637106417 462850527 878392118 599109881 887558265 638258010 694270785 230739799 447072482 37807439 557885395 313468799 948761334 313946827 598622687 632046840 693777796 453754370 806810317 56909395 792928404 858204486 867483866 789238899 850279090 198636418 364850019 207516374 771614347 247973750 324331331 439462056 517555888 631953605 939397961 205513303 347609882 288366878 313272417 197848301 441862459 239277369 410043199 437780128 772935226 979968810 998949668 281423847 579561021 510164630 900320718 35790560 226763382 99533132 551489282 326660590 464749023 771667206 897928395 653090990 914351484 861999253 890938414 594239814 811657757 537243211 880184713 866186643 915216753 447448103 766950844 481565852 542693223 886943975 916204762 457718525 744164739 163844471 494982651 528077980 736788406 237970458 958404718 801814995 846499786 307050326 856374287 7793429 250350172 317281282 485504437 692125990 960744253 947868208 948561618 218608272 555232806 670548527 774762538 764646039 943155059 423964685 885801209 195347484 961140387 943180913 998994271 873497459 992243729 378704950 567594996 825627703 969174869 660302117 799894727 274799223 535781126 551559380 798335464 270788668 744929574 678206499 949855414 258618286 308958560 713776898 920048939 501866515 567522745 521836004 745438429 990195161 995596109 208747008 610625210 933547448 970118012 89709117 169252677 526694247 711238652 13015809 147285606 735626853 944305412 908635868 948991595 258719151 780527927 965857400 966095961 120978289 959261416 218936642 591145896 913627067 932575164 576485531 871045140 56072683 344879285 609567571 940146027 618002198 855898694 685231127 771274269 542291372 989800738 409281316 731712636 363802383 659900835 126082399 264498776 221171104 916335935 554134162 915306756 46614877 533000383 93130103 989647429 127712272 273579474 85935810 646070967 164875393 325795036 927871680 929393734 977580183 986816323 123107072 847960754 178562063 577444475 668996903 941522730 812427273 927402825 537745720 760061954 379951445 646849266 786404953 914824369 42826730 917367887 506146876 952610182 729614988 996183807 842605716 875329051 710748262 790723334 907133717 946321491 30109323 173598987 865814007 955101024 991541091 991619277 37783935 578778422 856860661 975280452 805462639 933884930 737288164 783043718 260075815 677918443 351135500 899749924 825906759 831124561 269976604 761656844 682190148 881919046 644509933 914742790 413406165 541112407 877952600 986536697 821938708 945001462 201592059 527460545 401538265 496351656 330553683 620970079 630452772 734095071 556422 294365664 866580080 975301854 826184387 877004069 976918585 993506188 481217516 759479047 635543025 935314947 923187203 974893832 239334535 697520255 32984083 315698011 61940539 174776862 361967001 799046363 82404028 219993720 457506283 489695746 972832740 985003094 198424825 720680991 933897019 959023795 392564944 714916202 953510366 960176235 896980427 957536556 934845158 966195379 684978421 954921191 453642908 573603906 846265118 895624655 238052125 926010588 430095327 789364282 583875532 780284135 954022983 994324096 370374660 407366374 728873335 896949904 551308214 803309033 555731312 887499247 561670848 574835649 568249479 847549013 42864876 46614517 770496068 881546119 816209653 826661206 234642029 814557195 686318849 959682040 443719814 624637782 377171724 702915465 334110618 904513174 887027140 929978486 693271146 876381753 802386229 872390177 116171536 289294149 690219245 739791216 260923247 819343985 317384274 504400225 59450760 73734542 602575923 643003732 449427265 960257309 621443800 695351663 684073650 838693453 262823845 588029246 668117723 678767120 118904833 767876003 939645878 982068662 882903351 887922985 80739794 677770892 81152579 689942049 218613508 389047826 985143020 988120105 12898431 321903533 424920836 691797259 943514186 944700537 552048388 925417545 509025391 826835116 429360463 980499305 329819642 828933671 23498790 369910883 399163203 968873430 934180386 946390546 12707534 927122716 756511481 889168663 734086816 828836239 241453688 474408273 859326630 944304090 927515297 966045219 859423778 955480053 594782016 968233518 330371698 664022487 977719956 990013585 730522243 993634175 351144425 986515267 550196826 936738533 480105676 560292787 329199374 435262540 527889989 880928577 725512159 900620843 812374835 957707421 476322031 483566583 192607153 534557927 178371501 636658078 123901630 946508838 288516111 607068995 421668552 539558751 394089863 640262100 310076782 968707739 154539222 604046806 644494088 788688732 475180593 601069277 436176684 779751559 467067232 683083951 7567924 476060539 180216835 251433824 612871111 857583689 392594139 971431447 332363611 382190629 252642061 353839044 789520250 827711038 21517511 970669974 864697163 991355568 341923840 993032346 380543768 871420807 265731419 381166703 675081080 696467260 552553523 724546572 177558640 245333587 783056746 934080903 856798116 948255177 486504564 800768202 239169586 690088705 279477142 944629498 391844438 780831281 665009303 799518295 805766711 894214906 997598952 999240223 652544755 911131718 216504958 999172543 165804758 555198237 963857530 970175122 691395942 955235833 318410067 334188339 82473357 94322684 903395204 947267593 860416447 997906897 973124752 995982505 440622517 957635737 299578386 957773096 812457244 958311360 577610534 977041982 295870531 981246842 337666185 667165035 362638665 593376659 941765355 964023250 522994727 853970066 133177799 146076433 906323810 946118969 468359915 908721326 598582212 995732050 922330669 953149233 139076598 500023953 661649579 793460521 573492590 581987877 728406298 899085311 861640267 990837477 588486351 634116400 532793153 960290738 76489108 239680784 754321450 811944045 802006157 875949863 825670623 933913486 551559211 817454795 517519218 905664266 532548360 551006108 230829721 932628099 163741965 658300680 88862364 519548580 197175561 517322387 326397919 956644458 792790690 882779418 366991452 450855178 882602498 916440286 946676941 960035666 6918916 415553239 171563220 604228900 258303049 559253884 715700042 781044556 310078115 658686742 852571764 945445527 942127854 971364689 17309904 648943233 805217824 954271065 876791643 965095160 965735696 980005344 968298885 995560715 866212217 991528746 212480033 512312703 22553806 143467979 121067302 748478035 188860746 423751789 464914243 945866476 816286868 964895299 986430799 992208201 590174951 975620287 680088121 758283856 431879222 781450900 36419947 80007667 565993034 645874989 287729702 320591555 284956105 632590879 484212697 649664960 771011851 961501233 512915964 571645394 531269083 996643762 199422174 451189465 802453608 997802521 341023512 720122058 879620744 949436508 614423714 815516993 729490755 865928810 98009907 476883695 574608465 614239283 914019605 968281777 211955101 752359185 144075664 645793099 425725600 739951705 236972752 313906445 975335833 992620912 898982349 942601108 322024739 633425695 163466207 185583847 669692660 729697945 497527182 615964385 474488058 977085907 98032765 202274508 473627179 528579186 397491893 945451356 375636081 587235936 637383263 994477460 452258467 544581982 420819085 475346148 122601357 958147355 780031525 898263499 82807505 245885489 338660019 397259178 693888405 972356255 739763436 761200626 674525435 686492299 222295114 954214311 696206018 894696745 758481110 897814800 516557589 603967211 105200701 461249214 775417160 845653996 531945364 704526005 572560572 755974851 171613291 917704303 101553282 166634812 428459295 676484966 161266074 553598169 710526572 882732198 583547753 613880521 208241773 766192321 278273399 678345478 404932499 409359132 435246194 998208458 318667869 733203375 628289601 713437558 351312743 975661841 636531224 883179384 898498797 967875274 309204597 627750800 72545530 753763092 794310649 982166074 913098850 925131644 943225954 966335969 828149598 951551236 765427948 938738721 66213762 607937535 989652778 996969816 160321143 295780706 342481229 804789564 753468702 920597302 270844629 527286301 967778508 983966431 642057457 804321219 956134111 959291671 912363252 918185542 354689778 539589499 980693071 987563233 880349212 941047180 821060154 885631485 31496005 463965992 877540006 967104278 968797837 987273872 960476026 988118998 822964711 879811350 657906157 660897665 451983456 776710243 629578627 649606118 930584977 956210486 853755088 931113077 266743996 715400581 451149088 597103466 896270743 950956180 867627939 885349708 984171605 990915982 893787663 941253837 75160937 524428903 291412171 818324353 387926929 460006949 338336001 692640053 537619365 604975910 67392532 409452589 822368082 925277832 325267412 576763781 89594119 523806933 785027085 838288410 740341447 741286767 394214211 792876516 793242497 883429435 46381518 665857543 905790180 910365464 587348204 792950785 413406227 838162768 803986689 931856928 955744084 966959146 256775644 519018095 269341893 533390768 622451233 888517304 864131549 984369184 437984632 485474477 437843622 792932335 127881715 739908822 287211910 526955524 627880210 958506115 173346734 801200930 143274561 145545559 802150097 980345179 837482473 856782494 37211962 915891893 345395993 965487392 82399321 659811830 300148491 323761809 694292318 922033041 102285459 502873049 563540550 839941040 350837039 441682228 54139363 73233443 236702861 899200937 663604072 667910062 285691433 306593252 457000975 652087941 507143260 682711162 905392935 936338308 175279626 488369193 466528464 802662135 748057905 860928264 140443773 918078680 213206766 279887523 961303171 970551245 280981386 292263249 641701644 727720170 433818526 657103438 670062682 949280682 739406213 831519720 298091089 778596530 671696422 903233434 141336385 169758707 691994569 850878618 880801133 954623790 593806525 902712827 797741807 836356093 641177395 674310930 780806015 956402240 668400741 723768634 794870718 810125903 145612639 247268385 230382448 325816394 9776923 221613319 859259427 917140702 676432234 723620982 347557557 691525155 53665063 765025206 264604448 558579953 442673056 742415619 612169705 980517968 795991667 900810993 356937445 856364940 188116714 230932458 902490410 943079764 820027792 956724712 203786957 648349049 404291590 527279842 27468141 186081770 232148869 535540465 312530882 484117514 645080339 981939312 623951055 628793124 674148992 757256970 331454752 751293522 563404526 965321552 357588575 469341104 711183123 731036051 339461264 683909549 958516504 967225930 14990427 245152489 59663602 902736923 900050076 993376711 438414356 663345309 936919543 947520107 660087075 941182405 172118170 688577911 867164357 959617750 753148524 789284894 133163228 984591770 988604938 999581508 301468076 477051528 973713038 979075330 770962607 965068621 607056892 714920321 201177872 517896188 387069207 671971118 78470437 989690488 874121853 935268381 662079114 907024780 906916361 932619952 615649188 733362309 347971666 916718829 929922447 991533118 758063240 852457771 694938299 750450447 101978765 699199835 171888278 972217423 478859813 944950664 176996404 750669778 562051067 704882484 856592595 996378571 104478298 113372710 488906579 846808791 983699969 995691608 341741342 507321982 662559653 704297643 331059548 516405726 623468754 665987740 251599555 401163875 572908117 775045178 282087476 944967331 937516947 982568858 428435233 919500914 751466922 758437574 189858350 514307483 642979158 762442131 644013486 764304425 8682870 212111000 759038950 819600245 799972326 973802530 391996370 985582057 447212660 703338986 343865380 965995494 48036021 924973618 995887944 997609055 712363679 997354352 351391316 730998136 830835060 863247078 245089101 519625277 121413230 148365264 947009893 955269878 772250745 970914159 756027356 864473740 80046562 533129823 982058890 995801524 162627869 845543066 849806978 902300385 737431952 971046012 872953353 906589957 306463173 716414940 555317121 753490692 53045892 96234574 126990330 988870051 838194024 959290209 836989142 949099362 96251546 202909460 472939974 594443605 921071190 930417132 630768850 885684601 651614943 914406872 150088094 692389326 346860223 901011212 149654558 234772882 734010670 859819555 936771384 994915576 350108870 732657630 131285672 288051456 33964744 864191492 725420083 879646266 807755537 886405313 937102571 940792936 8259109 242079100 593284962 595878121 660662191 796042940 300346619 821030064 109392406 289118775 986406620 992366161 638044074 935901011 410148998 557837857 84760885 799493053 191320749 942414695 172769819 937676367 423827080 983614926 894203677 948366664 332920558 838164220 763598996 962754936 272204248 427977396 775887089 964812910 532575109 948539278 652952302 701726911 630450483 672313820 452861637 588783542 83320108 731834883 712190338 844105429 15434381 565626496 557141041 682025099 163172072 271116219 420869372 977244120 449256263 689915079 791320082 956101896 821944034 909604216 496682299 739024410 19700041 497909082 691713550 921712377 572147575 928301108 624529857 811507112 792302863 997812195 957091618 966418399 624134593 778193983 999821818 999828872 943129246 966192877 217305706 319813101 491071701 735740885 966106416 988464268 95413885 263188471 964107950 995159344 373268303 968708809 175275510 775669042 246743392 827869286 664504436 877756209 861310611 917550981 113420700 116888332 724304867 727242898 406713985 956238111 8167841 583182671 819945755 912559540 215162447 729447662 339882092 482240452 636778965 998723584 954668661 957779222 963861538 975231466 5360376 111585348 977482320 979688296 453021814 589799577 703110869 836272530 735840669 943317641 493548895 769757387 406555756 591874078 806853791 888144035 635330970 998191383 233049344 425574670 304626976 706302624 873363426 977587261 208856306 996639892 642382100 900083225 959736200 978417562 860211617 950795895 573215817 793219534 583409985 674834818 625140452 626599064 942929392 954251733 383617201 532523730 291287059 411076538 59450116 800352477 229311371 474074621 254887478 364428443 919198173 963416135 249564358 353613099 174274067 473475904 456504682 464812980 843462814 951661293 638729501 985100547 72206262 359017804 74797409 751038765 6794172 819436117 298832160 719152392 658875189 944258100 571577049 973796626 68885828 987126469 118300228 895692088 91485132 319448865 570889532 638033782 445331870 497972389 820119460 939065701 304809813 876598266 673259891 821046939 577770556 689296225 713278296 894420590 962956013 983009030 139743831 948593740 812698249 827881067 84020069 492866165 375672867 798187366 377895614 875379710 507036585 691993283 806779803 877898499 888184684 974968396 105853876 330468019 708459591 945843678 230342521 509301762 346655761 396582574 196653574 865982352 549587838 558523117 117269496 527029563 160138672 178908107 568229153 767433838 303295747 305729521 428791961 989730448 607933067 850526587 164792170 874023472 306747602 775038355 760793153 878726493 620991251 849647327 964330679 982200272 31944095 330246798 376129850 456797739 39660835 954612953 133104371 845091063 947168703 987005046 169253009 319179174 573510652 843773335 574623596 786585369 847941601 870216219 237773732 658161975 427590576 896012849 666586053 821392857 716914574 974523003 350514452 932047999 221462810 853976075 812502802 944047921 253464780 765357639 691216521 763002456 275023653 855426561 713021950 751795408 92023764 955590146 485985987 780182976 7391435 48870656 814136230 903098155 886603935 915068622 482206097 880534493 877301081 934383978 876344407 940621149 286928669 500181237 817874987 852418827 912875506 978803854 537788581 802173501 515939237 976578677 412669562 438954777 335083209 615451126 417514775 831031542 234758234 381401535 108315373 124557741 985514040 987776640 229219350 758729600 534861123 594067796 704759880 772911619 382678900 848177182 487039370 585642721 530779417 745110771 513427176 592896432 103650743 501280967 77544195 296880865 405668776 458256163 72706958 764920681 148754085 337790281 459962794 868521011 248669598 605328775 5524417 150244844 297379452 581219206 464411997 491168285 90125913 740878848 338837990 970953562 671291489 969003255 514792392 811100043 978071327 982531056 706020695 983867344 187827593 508390221 572014885 625966739 566107182 634907899 773346283 778463430 133170547 345146440 70306150 397040079 629915026 675465256 367918942 800351261 842043176 844545431 387179489 459335389 949578753 973817576 819773686 920234217 63599058 473026310 824039973 833823245 942032259 986110056 865120528 985892724 817038347 851336723 647048478 712654751 252241417 808101583 361438029 775888634 222431120 356461995 879262691 954716691 528251185 695313912 543243371 550994563 589936766 937354036 785995122 803998002 69701572 846968583 253123443 817578827 972455827 975132132 139592244 485987851 83529348 603300995 970075640 989707505 14646333 748437614 4110876 576222758 46156768 82175992 263852711 395280510 287676942 807449277 6362078 913335824 563098687 768631381 471347535 675287951 819961567 917520603 750665660 792523518 822992558 829739762 813859157 831812024 45228924 594374805 330231560 593365222 683203881 981800528 930907286 998042247 3631366 246889780 906671535 996819504 819339193 962841174 13291534 406039122 234452071 710266289 126221901 859811140 708662947 831320288 753764006 863578973 423774175 817341066 281134246 600776796 322840492 923039911 195660865 270695851 325613672 841474737 720025150 975602462 46680376 126022724 185134871 397213588 966574893 974197538 806097428 950161873 791982491 969264195 345729156 543464740 551361864 719986901 943539083 992849872 818723862 982830348 330422755 553292999 633396090 640068627 938372187 955269044 582844245 957311837 415300036 497922148 90260389 742301826 470916543 494596610 254929830 551953913 596211833 965140396 699883077 838405067 922722762 953165657 464173139 775902653 782522959 829380570 703685584 782658659 522052966 601525119 583433771 676271120 307574412 596598970 402410221 996075159 359412384 615442123 992705576 992739361 120112563 539622207 191802823 945437610 911230683 917597703 601768506 979155528 405722898 931420848 68835942 208700328 427046640 840299331 973481432 978368120 928436901 991650191 283143826 538194362 707028405 861554112 99484290 582664757 122836847 213250114 892139952 946814198 523596748 680637146 902807952 923766050 501280929 735149958 183228731 684047376 271843039 975866723 381405992 623130985 225224816 490559517 967012842 979838703 535005840 896779243 494831322 793190355 693042981 913501262 990308381 998532367 736693098 843729965 159273474 666113345 407854394 562810275 177471568 991741258 837921212 868186315 618405284 881739613 858810766 918204761 688742779 764671449 779722566 971773905 868577457 913340614 702446712 819466250 745264391 949844550 884584464 948714582 1644671 749341141 723948278 905291544 691660491 938801327 752585840 952999178 529512419 933287476 120024044 768732399 451343189 827655407 779409057 915295315 302476968 636745300 128423519 898523579 823729277 988581307 918719685 959645687 732774439 924967111 7833316 638361814 304192569 428775985 730773405 802491760 982118484 989460764 410260856 927658440 258984744 899681779 728393391 959579396 957523257 972475822 441033805 724000882 884773536 906972969 503892551 817674303 85685509 172760401 476300073 844749522 81596230 559942137 337973635 758713889 369554602 757076009 622719367 969144179 135260858 731354198 59875946 466897998 377925112 428628171 998199033 998302025 317785233 432253829 630402882 826795350 403716761 535833223 808103426 918408045 177564178 526210813 630461730 660717275 122170020 544318252 49525084 952683256 705508555 949857918 34051586 325586087 792417062 905113290 466261153 661633831 708147604 804847819 274742769 991071377 732564332 948367618 965659531 985154854 90826140 234305534 83672336 577046631 688816529 900113072 537976699 933159011 125604698 393903090 134032838 462673151 576393487 971069844 532165361 875702848 978566496 993079832 277913335 575261762 163691459 667824552 7197281 615700759 2050182 149277433 948849726 983525599 788159456 837685571 467069658 896890569 324693869 678528891 521621914 648059982 656859068 791532677 776287416 943904095 352002442 824381020 799198529 858325698 65465796 800659519 674357229 969168101 540373594 582980969 170757314 504516351 398030961 951626497 973260931 993374060 624547228 952207266 492360925 560415358 714392179 958814867 85898835 938761921 833830966 911309710 579483135 582202621 144109684 631149068 911129498 997114595 646736785 936227745 972579469 972670442 437608557 833706731 657481808 662898419 378373612 940130531 893978447 940401716 568755268 605710163 802881631 886021595 931707235 960046514 388804075 880850915 194763588 364572529 752145227 886834889 45564771 547235609 280655057 694518716 444073327 489238959 677487847 993320874 833372144 894949099 918551848 928851446 277445377 953550640 250437745 855175326 636389164 910030614 572458295 867633437 990936148 994184839 257889721 400021025 498369452 708983438 436781716 637759298 666465510 689594689 424177085 620565546 720590042 921041825 263615616 769578904 294560751 776574768 238253493 461276986 436408735 616410990 447966197 501829380 923658143 997027796 318975827 516031570 747297875 809074540 208421942 395296493 954884226 969980784 55501456 655263691 594970673 689800124 235197951 744257546 782551038 900126117 301956419 584572889 964400072 967426015 965707727 973999503 600196894 835981117 374858880 972279405 41871571 885824146 987813905 997970270 845461734 929270148 128342978 588111498 654368949 870260940 438125756 982341691 204947937 383173750 884294031 898757896 831586596 989815313 228740388 731946942 119837617 339394286 621495110 701523677 655313385 764530180 949902124 983564622 723581349 992566491 166408204 966759921 400048108 946561790 615636247 811930376 875683806 895748011 472094273 736161842 589502484 685569386 761616738 878883106 69341555 474306390 713021902 788181346 344454921 549534900 3193957 693901889 146031590 710641586 703984371 867034350 405039465 748981416 407461595 796139375 971066192 995213085 753000108 845821358 64687580 730782575 965852318 987807266 767108592 979875319 165696722 503901620 157134847 969467539 802823983 956952528 205581471 662761687 283565718 968026601 629193317 828704554 882302992 923912602 275312333 894556006 384055731 591698714 540141007 653577739 264956463 826283212 354953407 523963989 852564164 869466300 541762619 657982392 562024210 586429294 159025735 493655772 799496184 945420364 69777838 203336618 584267488 587774890 152891062 272654260 12403086 220476217 696976630 776926769 747631051 857222019 594998030 936746749 900445772 989701889 979431285 992310487 425952701 619745605 130354641 818390823 319807493 536614989 202452118 285729431 553786536 682261430 755024559 954574768 501186824 653448518 342353194 375852621 559000042 750311330 435262978 772545598 569010673 764619494 431763525 997511160 574330659 756281604 915440058 996895419 904746663 938052083 258598386 351600003 258349164 351312842 422474261 802368129 412664193 761625747 994108154 994697984 323887687 732607690 341463341 773088867 601195073 734762841 244269915 377830655 494843384 943366751 727939519 998250103 852907201 954869379 424613356 767439028 542385709 722953983 622110677 973083547 158680514 952327179 552097266 734650056 712908230 809376330 596537987 851990864 746035647 884334838 425775552 948154790 917693084 918569970 807456160 831283401 104227900 321670382 234919981 512152229 795355345 946926997 17589031 71821755 363523280 527341471 646026303 996813768 166630055 574818529 794929467 977302313 888337243 990065201 646451701 851800091 748777245 996437001 551377926 630101009 721172384 914470768 129478013 764861366 53010061 925640407 544466517 874736111 217541423 538196404 78531076 790045479 392052302 460828544 324219887 842551356 148864438 314950449 210173747 554895785 35952620 760928404 689415230 774099893 121807637 290445473 900305775 953471827 26737411 99976170 218784003 279865228 978433507 981474825 140478567 567681710 575477922 662994407 496885847 935394834 472253270 592948707 841796600 869148587 572775166 960648058 969462507 972518002 812206990 845606642 517254039 940902652 833940027 930926972 132431232 265112806 853810537 865730089 786935357 801264491 233061923 524114315 233583473 558431501 665356563 692055282 642167440 772794655 232698579 372908473 20082759 353893776 608698381 688195132 549287901 678218046 577571172 778782895 925528810 985872509 443901747 842767525 521898303 653481445 21132597 174103276 832972402 986060471 834456649 856215591 510164770 802362265 881990076 952659388 286785918 322172841 440059511 967065009 752969165 808452231 221023928 774343258 817627309 914432859 101207915 168498639 76727388 990875215 572350613 750469363 704137838 815799279 150629621 877974134 111316987 542292963 832825431 965107266 961609267 985952603 590975677 856982580 109430070 689776550 710333473 847874965 868925356 977188136 119062080 163673634 776376337 891253830 513875319 599027963 69876523 271926577 262033727 550897187 86655782 742099565 46861372 118065829 562936377 622214523 222027363 636592104 605421549 785976281 520002862 830111296 925702565 939736358 38687508 772404920 647481676 699886391 213523198 744898909 507321796 957725633 405840980 524651500 116387339 977515519 699325113 789673961 563222237 934110518 147797694 660879893 871025723 881997079 367433478 384400240 3283837 392697511 295894580 850817438 163636948 988804605 476648587 602852967 192822398 585579115 81405895 170791874 140062699 832979373 699014944 727992701 709943448 926400607 383983762 915876611 881953876 906203140 222677162 716932261 411625625 435786531 206923391 636253105 146299304 948645779 915771667 997780323 983798625 999161923 693070617 995152600 933009248 969534953 471213391 938566395 149614071 797866592 963780879 968985097 112188104 736544923 385708929 575237618 48706017 651290154 249162593 552870825 155118453 593623461 297210108 990051471 874215370 994853808 785765670 976896570 976910931 987050187 339805608 644560159 660147461 807833203 301176286 573180759 712788885 889468130 771105998 938244356 872891434 953044044 591015268 788688505 428573989 968421308 740975060 967528945 193766094 915241462 447958198 798930847 841349756 900885791 345672889 477931876 266543064 685653966 256277057 699460477 599212115 687239895 664048317 835108804 161093113 907062516 208923289 878761939 431163174 601131971 409194334 457906597 243305762 658662711 847480680 939932898 617087877 689884365 122517703 559431424 883301748 949245180 458772700 553506158 910189074 918291933 620861565 936575317 8362669 445551050 532748315 722819072 271697096 540484331 10777741 561751430 978545357 997609173 43779431 225863632 93577026 246358681 62759581 165426140 443584399 682035802 465311249 772182977 418910110 828750065 637113163 826113773 793241113 895712117 702207739 784146829 193061095 438113629 376488081 824022075 996198195 998185507 43590853 858164093 624776547 674727811 49242372 977194727 290591096 311157997 768231388 896303714 72614604 702476536 215130317 834899788 473794847 658182708 220686811 626060315 66574315 834395872 195519092 995398274 355278347 973398080 352146777 861726826 935150329 971377758 891390551 922689585 553166673 666847855 379020 859306536 911990368 990385235 272203717 658888282 65669487 93565777 941055835 975003840 800897877 858744160 930194121 956145542 465764000 573251605 420601820 434467179 870764139 981771590 546446060 616099750 996916934 997819698 424433227 991199725 182884711 681201811 11576143 526703080 519087389 583488786 522853508 826811146 325584847 985835002 267834861 323948748 672586732 882546753 457088981 479345875 331497912 595083258 822353801 966857199 352671340 827975543 850560906 899810489 625425240 999494155 134249043 250191869 717575399 919696733 179030792 322467994 564169737 986405907 385616552 639849942 507172561 777925663 959942771 974544204 891140878 934441721 562278433 687119649 740245992 748591702 564095257 804650048 113584898 369216956 997865615 999226500 258828255 305241146 397131191 623711337 935800420 974812391 295770775 411803959 955787421 989861735 36456745 336584570 477341996 997974791 291125098 902731790 941870813 959801175 20464449 157318790 248720972 541928451 99712525 153830923 66311618 357085908 426393154 933618712 801330698 950059897 634529027 960692697 579050598 973747575 548362039 751632310 231622785 248652040 140258818 596495489 828043645 850869748 925314914 978421113 757412475 908063508 515931063 522433634 146489705 180110865 988206742 990606990 208327706 766136958 707330559 985744644 181471592 911771465 367353156 700366177 252936590 608131186 674834628 715230515 573620192 963776481 995631949 996349313 798435509 978493245 644525214 894992133 272578717 637038336 807475075 854979428 851437495 991585010 966360894 983743819 128585894 448129580 588397041 969928349 770065901 781183685 111056303 440159782 263357704 265137954 141335030 657982193 981427853 991802587 691674566 937134357 431579583 706328152 880456030 909225832 21823080 434184588 506279334 654564191 31966973 695836740 43480356 484476964 489093409 586326193 734069613 990660567 637226354 995455463 771476583 780604515 36247605 387179559 115729587 438979783 79829577 711107039 443570483 749320124 859782278 993872109 364142015 716548285 173588613 673749933 885831854 971162179 187253102 208531852 396708236 749712731 226104815 508352794 54375845 832303655 172888882 552524633 173301296 496052692 402027781 481232936 496062707 881738670 785595708 886330007 613896127 921521599 835978753 897733939 231252548 876928320 295638194 678643661 626844314 730084013 821374415 959879341 184677683 955021165 491463899 552268709 948120351 956078343 46098115 777694054 577406994 888829269 918425764 955218156 709456931 899842436 331046903 527470735 387505529 555078877 792524662 817300295 474565956 792551163 793737441 944145032 761105920 950235317 153421908 473387752 331335538 786021458 38490207 816909523 791063593 953023431 849050223 895321990 387019177 712995709 324965035 438173019 310850411 655218460 288922302 894877566 431721532 453809278 242894008 861418940 24447987 270755388 113734674 773617441 161160781 278417959 493345681 867984461 263858681 794233709 907723625 988217990 472700863 708604254 992050992 994646935 640028350 813433851 325137555 682510061 7929613 68214443 84252186 784826766 916525057 993120027 278740064 963269372 559667921 758575773 454074905 897862628 878984488 898174664 677909382 697425323 568214105 910283072 338874466 701496738 272206769 482376477 855891609 955656262 815323940 944051826 688423006 824338021 817296193 897438570 514940974 962599400 678195338 778692416 44374555 406227857 226311950 787314231 46675911 667048874 983337025 984690335 60921469 128711464 572148224 586586855 977524495 997278034 393662432 430158131 348426148 457333191 399541993 801052671 540997571 786693146 931235992 939084361 222058792 656477526 401406669 827923379 387277126 905409741 304061750 457461736 987400802 994066850 231614743 969877510 56522424 717536302 879441127 981525061 212362429 330050206 392819408 876538026 180055368 631903990 252541588 498116333 175081743 661840578 793622726 996945058 429279701 859947475 586676268 756590708 647912489 935779497 713983393 892197187 458494388 641917344 514216301 629622383 465599094 742938817 387499237 391967572 968073518 990982965 665441782 985801130 368171427 567553030 554483170 957789827 324138954 894288505 899111224 963992675 552469021 839843049 698432903 972709624 618187969 680005914 921817673 959661876 775698362 810064757 921422711 937055992 337083067 655706697 171369724 776606825 706369612 947996768 293696407 751158508 543825817 634975512 205739747 662506832 910472684 949219404 86909479 154956884 545435476 585165853 44817342 424513270 814826164 917096507 837319100 918528911 776927508 982455034 811102739 955293068 661213464 874263443 987978134 988878826 644591706 761345300 936791418 993670390 889580244 972622418 237750091 323665243 771641789 831393947 910008608 971456890 113495976 633353683 141919092 638494579 74170752 347935114 280027098 959950450 33092981 347427865 349099689 749229597 170591470 522447841 885426989 905548320 887526667 995939314 565186845 591429656 998013818 999127535 653935609 977055245 909427389 917826476 676139223 743751730 4064367 46573453 297093507 524992500 986094799 988377446 59742226 230324077 354653232 375311126 614100533 766706487 354628803 441043418 562676149 941384267 287117618 728450187 265041204 395695022 277702405 475461961 965335095 969306166 564169606 858636695 539619274 754245494 582070768 789761548 17626278 521736025 566898077 992679720 635829425 791913468 636629599 819538225 488069455 852403081 588934629 868405333 174120882 873434100 99088121 543695849 158335083 243712279 799596127 956434788 842435311 998731867 414747178 454760900 981010527 988679562 23767839 353914536 801158015 904859263 691532494 924150960 172738250 449894380 19795520 568001045 131356859 653896294 511961325 652732647 330394250 862087171 235671865 949574894 67580290 455468346 187632142 302025727 315477186 540388367 315034665 763605345 612946473 892333589 508665480 942925537 91474873 672206776 262179835 760565485 186321914 528812849 543337017 579292530 56779262 324303983 315594416 961090830 863256791 961384762 246339838 790636064 733025459 982469174 919222977 927397513 367405320 376438874 78778601 256991045 256327242 403101452 747957260 896375037 904195591 973582660 922404552 968832598 705009297 883033767 826631734 957289583 541345078 694254395 427769662 477030947 9954057 470014240 926172586 934147081 699388423 879117433 420093975 801986872 920978167 960285032 208078162 718400395 589817327 897555089 207769313 213944114 553393017 645313380 377445743 562299639 322779448 591831455 635000813 747075958 958973933 966944357 107509890 730688835 671227233 936920835 965521794 972994092 93853943 855395997 436757559 576058119 405045855 905585147 731299353 937128281 35478547 97663930 991916430 995826927 449571111 992770412 738894312 856273239 168294476 296819612 680151010 824276565 931982072 935709272 672165412 938649430 697892908 799702478 158476204 391238508 934276726 974722351 377672056 668940383 697253419 793770080 960700447 980966159 937457005 964203574 804006992 939674511 317449202 620171777 728562388 958554323 62226571 719417862 311319328 503726001 296891807 788178805 4443625 348548689 477711430 535794561 558061270 937875628 369801254 403845510 316156420 852519664 750467384 940857268 849814858 882259127 604964286 726938199 847911996 957964522 701972897 812646025 465105279 468821812 605478550 946755077 163714456 817315153 390652348 884435509 494930304 746341344 256116473 393359993 233180307 840788230 581934165 740456295 139955955 150481282 732421873 771815747 787623753 961973332 421321719 602988855 799030379 861825474 464837073 504191109 303592411 509142741 736098879 756849716 226785998 264015719 723183653 813122625 930892662 995895342 397184808 779956559 411597532 610933408 252623325 548777053 166897770 560970631 602928373 990963176 975627537 986791512 354029179 898256226 618947754 704777193 278065155 613626487 747558018 906854007 373793627 638034182 482194016 584366768 159640980 651712093 453040314 934743339 539990223 870914451 766252382 833270146 691233743 781541970 44090341 941199245 192835467 462360518 925748093 939824065 927795785 948001740 283924550 287694380 263862527 774303037 129714464 447206754 454437964 869384950 931333293 997186676 970393480 992921494 183540435 872287371 419576220 433199840 275275533 534001723 921064332 985183093 180826880 829903543 757011847 782895771 207053945 352778221 67333444 515892551 867644480 873443749 758859683 985817394 49688146 84706726 742716268 883716831 120541621 863353523 400828669 765186133 58656228 927918410 957738117 964099208 468117293 690678476 441759256 790497132 308308908 429073106 773186783 876700859 842332219 936814734 143882581 228231557 431430046 813296442 294835607 742529754 662282963 708724699 286696409 397294565 316390528 898214768 744909445 915292557 91786708 615224475 220307937 946656474 223547500 963196832 556780338 627972689 41945635 188810590 950053042 997163729 449261900 599502720 843265201 953256299 927249308 953801835 130014538 786127336 838064213 998174513 18156175 940360114 804157271 885783322 907155720 916961536 199166996 630810482 786314283 964210906 792101479 913659471 795207154 931346870 296766775 743080283 613922922 994341751 779419231 998576378 288467512 796463561 406479193 649096871 308452202 939734724 126056711 287232131 707225757 983502208 967078498 967943404 891582723 992169785 724884748 875807995 749566715 829228965 447914979 650599103 73528935 389306654 31752363 450299087 204775021 663284167 614093372 714163182 77615524 547344977 748184517 896844673 323900134 351411247 685819464 761415038 237572012 557908615 129703238 321060182 361962357 460389975 706650851 722284937 969465927 992773942 597603728 830678620 153713732 775294365 692870591 968025372 797894898 839193808 759913397 966058140 630153899 846490873 536139432 804307605 923664396 966195482 283998404 988724541 484367968 922871710 862790290 886068760 405985658 587720558 555590951 652126618 43240889 669322619 946684450 964828041 619445094 963452561 424125150 821613955 599180686 791998778 992274867 995857017 164023315 780071524 882273644 889672185 108135709 231112687 270278893 627523934 370621693 770319301 776044771 917854590 480852464 514053558 451845886 606587794 93922512 484460202 914376569 936419228 702843337 745776942 979417387 997297641 841544361 854059370 440991066 949056069 481578743 824843546 506585242 954251945 156752223 253169456 814117427 864973524 476755785 904404986 102122022 605624836 132585102 904841097 367221647 655654907 48160853 828043448 871374153 948915475 974422376 993712926 659506956 860658008 133050826 621324860 295548382 979230934 323011454 987293533 718307895 724723018 335376276 499046873 927814604 990475570 952459768 990946503 206729474 283125922 811360839 913485838 505896085 867542786 52996847 727923370 661711052 785234386 971578876 991884630 85872214 177117507 571079779 666903180 580485638 769025059 848997293 966653982 710041438 827792385 313293479 702877503 520618907 633827671 412523492 774901951 636831107 999419049 118408584 600026161 960714341 969147722 627591610 730974081 330147165 924476879 381003328 656479782 14359131 692656517 311521012 852379795 534775380 554598160 967298477 968517527 507258995 671325505 637167686 909520119 785141087 976485094 654041157 849489402 106511661 306308705 966655324 989546028 927023823 965490074 198189301 865428091 53289907 510038012 537171917 854584184 953382438 989178889 652583110 715885386 150781799 211322008 765788942 863728952 956916559 978022599 728599315 832043692 733986529 790020291 590239315 701901073 50373486 632097559 11414942 322722966 282222361 481319105 36655363 102681754 328604260 691037318 524130424 997051665 558271187 803183854 842070105 905226066 37079505 311228551 536189693 982995556 57227048 487036050 295538369 713653754 375092783 494812296 632520906 810836191 585292295 981781629 655461262 815066446 566873918 852483855 635077466 888795713 720121096 999980676 625958576 830802656 334089023 759411978 320302591 392123040 80618906 574561679 544927801 596262029 68406707 971890033 763214495 910603270 235354823 967667904 282509247 323059137 666569141 890347953 743935724 942989502 44916972 438229425 233976950 241833807 986044238 987452984 623048475 657600861 494629846 565703783 999063309 999465894 46532296 349044408 507815288 772294265 158368296 992135438 211205203 627101329 688244787 940424689 431785470 440651257 825488033 916818486 39096212 737980439 255542737 310393123 581869031 599058282 877165780 953947512 496151344 562487275 568836982 668515682 167776551 421030429 979779656 997304160 954103275 991992901 965006607 966870765 498504600 784301682 536859506 845776828 114731587 528788718 929904906 940540083 394711182 843449536 670070407 908888359 750819584 995876033 981465647 994611760 904484613 946806074 282933525 823957692 760274697 923899489 614601427 734406514 679896587 988077041 687658724 933579659 180494862 188196421 784331360 868901740 471737936 945533781 540639423 963352352 848692161 866847815 962546263 993255672 578184445 719047185 890649835 929784947 621676627 696039923 569293678 924966697 447015763 683087567 55180507 324671311 886353015 968145310 346604327 594982924 341422534 610067619 476057128 524648766 440002514 603048055 365963146 509643395 601505008 642592117 324211767 863256633 992532524 998413151 899587639 903901346 835016508 981290366 467095685 928116480 555189780 671802074 665200829 896482599 49457390 491843772 434775671 725935466 897132517 918426860 227545681 453194848 269442298 822360643 730668886 773912884 657528561 782827848 575240934 717135049 79376479 395144841 882086204 907796929 499738209 714789483 15823028 548780696 516860813 920990347 509769912 697857368 402132774 879578367 450430780 713497144 910653447 929094436 915077100 979164646 294298347 548551920 291379005 717218852 992615741 996707778 504684173 672489063 345432978 534955596 360244866 795654222 458104887 925223051 642281148 797980776 920658762 995599347 341657736 810551291 906237225 977174085 589661007 833324906 418165669 965650385 457973706 504566343 752811264 983533968 204760536 905595964 95555631 175949688 611075839 894506319 83130116 429183847 986762429 995458409 4175935 880956386 342310041 850652653 88587944 931151932 915142743 954618424 37490856 629124937 76471921 105121412 264576837 730471372 130896141 331065807 61291448 212367028 806512651 956695738 896993014 955503433 154374418 576770571 320918405 722181800 604630789 635923145 342970769 450069111 588431129 724910243 585070483 624258438 291639023 384183242 846410475 975818805 146559814 705268117 958999474 967745125 50125620 774881883 387269199 688844081 937002163 980076009 389804961 489765902 724950322 854986076 712456138 825924843 653892391 721621595 86033327 138482670 901411553 984641227 629985992 737466677 868200462 905174148 442540793 978215477 643954985 683227382 727096591 933335653 160983960 557108493 395696857 871131878 719278629 886859586 620152655 984047817 631546731 674660480 727777571 947950853 911869877 996830113 33237329 345221787 511618558 794516495 51092090 856471157 351016622 986736312 582341099 756045812 491087433 820994794 860379260 900248437 703087053 712603153 845600533 959671946 418431427 885908777 179822686 992451577 893471093 928709205 722562836 881432391 699490967 778440074 329865931 890489858 624801936 782913088 614978640 717197441 208877328 378267913 930575263 948654093 547428297 620384323 47736270 681306887 651302853 843165084 646313149 669030610 30448776 608778494 329103180 454519439 779336506 887954803 972151882 979608499 873587410 903042621 327590518 876653068 561377526 975228733 937124080 986365757 62163986 145888981 939254036 965137365 608646921 991927291 197998741 784230806 188705634 884815266 587397243 612354808 468723440 709680840 93693414 307260368 701335898 753849151 273800049 792744353 734179715 987943730 804110598 824749864 484685525 634730008 852144170 913504959 184006700 793438897 61214010 558085336 945879799 953666643 46312579 600776874 884196819 938950622 583252120 685159851 295328348 935925670 871770290 955118830 983776435 985212996 945526601 968502091 823208422 930582482 614984818 946928793 979678736 981363127 193541963 264567112 756834926 768798490 349125935 690260162 921838766 959940707 445702498 458545949 692469517 933351817 584710017 843081599 566362545 995148178 57846397 813989788 650074852 803465054 861106893 895679190 300707323 694126711 868999966 885867556 90442024 636891255 411207513 871758485 735002174 802006815 660745701 955195058 130901338 469436926 621271447 715900088 170170722 447021974 652847624 932068402 897691853 912970678 372071275 779272958 796483426 937062697 374234426 581398898 646453172 745940010 742612109 836975075 9342131 789260648 922890958 980942005 635423659 641359495 101292423 990024667 787495068 953602895 419896818 536797252 585647875 706491533 920163897 944893277 898557485 954239128 857286738 956300862 825999816 929581091 209310532 211834094 767918263 966927852 944831779 976609017 453558218 670543528 790883226 852477570 590680905 854041632 236158900 371463333 57734356 152083079 362004609 833648447 699504824 910524396 127780297 885543543 433761189 452202968 406349339 655464035 751909623 940424168 790580544 926946277 855076037 926781567 551390515 891269290 428875630 987916262 421038222 704427836 371945153 796055429 727450860 749916174 777201683 827045697 873115413 921168971 904576104 990615702 688411351 873060422 153098075 754178735 744989247 912569563 583530961 912128328 614839279 738844076 459344240 775108518 396397089 669557337 713987686 739882029 907168808 908033096 821269747 902016815 170063849 293914878 852934360 966022090 6300802 569481703 918221486 979782068 634976138 658650875 845386839 896787620 577712936 947901714 603852296 840013068 371259677 598633893 241628854 906170039 926858425 956687489 738880518 793496580 263981601 287246518 987928701 991843394 323022047 555062613 704645945 918102966 104509545 721962764 539919242 675095587 136661084 411064107 731397195 966987993 296363877 970722075 602011351 799470521 862921879 985959158 266304978 954401217 49917589 679730501 976379794 977859917 172391464 755775289 378033559 479811285 550734068 792979336 269978282 743802967 672115476 982598893 880682500 975105050 164268943 554575901 157230220 701965878 804764001 988667436 303496761 420548427 189151516 983392726 456251551 611281176 450624673 598498970 912449241 962914881 616160265 692857638 698459350 710692412 104786234 407905965 794196229 823191015 589406152 985218125 998923493 999855632 747983041 949931390 565224859 737430911 516076308 924100106 538802107 976764745 788631836 955751550 472172557 709944537 645120330 711003305 572685351 708035864 327768077 882374675 221198797 557645648 933323257 980714457 912567297 937964544 983258334 994531414 818223931 976011772 242553138 555042924 20215858 306013896 250270610 273545886 918428891 955710004 41215284 509033267 653055038 883661903 906874575 930565162 780382035 785064260 824918289 877386252 350203754 654735385 835162969 914222646 681156683 804136858 741507556 875804066 907351904 954437089 501343070 545243278 326919036 822313211 270329443 743790343 895055293 905401768 431805695 683550729 948610838 986463272 75070352 437881114 194681522 556038865 860069284 860305463 870222204 890743630 784868502 887041140 739895027 930979621 908153146 940504615 867784230 957592933 852008000 903339358 441157715 877434490 777119145 906887987 404104017 550911730 136189063 226966151 102068574 695657239 76544670 613661892 618738738 672744510 187549627 419223010 602147085 997200661 858079023 979950015 107986859 578341143 419276900 933913423 680691831 988497967 644231676 896585239 556705523 977757579 187173085 832290773 618013052 888414587 805523084 906566414 811488284 979470236 844615197 959702330 752090042 839368451 402900909 946796094 658157694 993086878 400197266 536638026 954870040 956846440 850015686 958064520 661888148 951998715 437491797 631782519 150378169 306121885 958474474 998920247 53525358 751950748 937678478 953781234 786726221 900850822 469170090 688310191 417643852 848645718 430586752 783778237 546827693 782538852 911710461 934982114 418901479 936327914 124788529 186991310 159759970 825427040 329522610 638425261 792061543 819913233 851166213 971122259 227077051 673284704 624196448 890267919 145393328 523820098 468020494 937251910 21845004 177512885 903744139 928631589 135545620 333749051 42059312 756607818 669971932 805084487 196911740 894868249 871877050 999332947 856909885 868307039 618852319 831430706 209980247 791981423 233202558 799520380 128516910 295805390 733933321 870279831 221371967 890024157 681248541 971135895 220505236 845851189 450327679 790794059 457523215 587702095 888129744 942129461 345226635 448462447 883392382 887262732 285757413 350119709 752362261 997526721 64398306 107785305 209057372 873860302 709344572 752197705 859940071 972033643 247900832 473429297 541140470 930448976 411518166 774603253 457492527 956617477 616500700 768617197 56010623 456275698 59340458 912533649 480759361 658589681 353428380 401190992 565826624 782743671 904504138 928128002 27148287 703944899 905061970 999253238 296414582 696965827 511446427 516295241 985553186 997564384 882170571 922598391 265885996 514517522 522202133 928175381 325890134 884468767 762555719 773506183 947660426 966387858 777537367 948027553 981477336 988166515 567343977 668422575 855039055 940293023 691774050 963726553 310598171 449525364 912711500 927184210 358459981 493490045 799022259 924518070 212851923 815124905 936948493 945244620 190474734 979898797 58761533 62759575 913824943 933363298 224625071 800458567 601194613 820385272 523320520 708736258 636146419 944907788 265279168 521893161 19476004 88126582 318099659 433109818 226037422 452619794 458672388 602885908 341807534 622864820 983869362 987861934 8386555 649312349 740448928 891672978 148449135 658796369 388522402 521815999 849544674 925105209 145297576 935809811 565425043 919939494 790366893 842266680 302574644 689952129 254810782 655111440 222429929 351650360 223473612 888537611 303271170 406700794 600233854 989606673 963624394 974382264 404239904 903849554 943492679 995470310 355481683 600474636 529134212 856822034 360665943 450242445 282722879 286525292 501769555 680868679 327471963 759712017 986147921 988108825 35547036 924016814 874460927 988401449 534577439 974252198 721748862 878938391 284418295 482178979 596031720 777949416 427965513 979169922 15106312 321224093 676486161 979226273 514522290 761036781 434874392 902384936 454466299 882930707 101874151 920919368 486317258 489650594 108019845 182325833 114566046 965913076 180140188 822219637 844363315 844378353 164146722 912276790 731117153 778253374 720370964 752592882 209183480 679854819 451007456 483089353 734753634 999273844 902855401 963109425 277208040 942767930 136323554 563913181 131358023 680107438 188838837 401054437 856420308 889435848 580310899 981741101 376531905 447967548 739148506 922457392 411082481 916044602 927924977 995673700 327921251 832483092 203388701 602947714 860714385 933218029 715979097 827809279 473559094 557814368 103598175 997248957 382930413 556920300 557938358 597824057 834589190 968440393 952867525 990933966 297976807 916071471 753090783 941439505 949847554 953138384 685032066 866389707 177499227 418008981 21602665 772287095 897945487 948275724 254098347 985791211 390126189 900679201 836312425 889445965 293758953 806361325 673627514 905116162 664069025 976210309 417690982 914387871 839330665 883610464 364270920 415870851 153710062 531960452 523918827 704109465 868858023 879876183 272658081 721092646 311526484 672550216 84489258 569731115 799874405 925990847 105412752 148235566 575308172 845883262 819462951 911080688 743715103 887560477 95610425 505664763 495597339 862831657 628123274 917450126 202980275 562170640 810178831 962481753 54993556 682333982 829836591 972527056 182474578 867280894 723524360 771692693 41066051 346900250 29531026 895699453 413830550 919069967 28101078 483038493 198053154 404973291 801323013 824211149 532245889 787963051 514249509 734656514 290712413 869174559 551370945 737810263 994273786 999960696 349584445 840282322 119791917 824582503 484263620 674117820 865284681 872857164 76569670 243947328 5173959 453561455 281884210 291334040 443912789 661715531 105150147 964487312 642584051 735967932 74559025 973808378 796064450 961400027 124510572 847058577 701519618 911616436 681920510 942012536 449792868 922907515 548317224 752500324 405139268 946131269 50961508 698229086 558694234 866706728 766634166 810012300 451263098 970751014 585727527 946867145 282326098 433646022 480996365 503092674 137478129 354077385 261612044 538748496 290564489 459487339 141975999 496770786 878723528 931326416 101086542 587091928 130879047 421038563 190971248 565092236 772074569 997416407 134939433 747038606 217056500 536318501 490904196 746386648 780082984 992104641 759236053 890552102 460589190 616348164 303983112 418570518 661243695 907505600 846747267 928299772 968742856 988202026 130770428 846812238 559886497 948628035 907758465 990589809 527991109 838486335 580662268 886635687 790855514 963182317 123518799 846295714 70461289 448260420 22577810 705157279 28639469 669523298 873582078 908897737 96275178 841201024 219390841 904225729 834570776 921005295 510457616 528130302 166434996 623455185 613057908 969754216 769279928 826424262 366014965 758729372 492911287 686876124 268239618 476329935 552567571 679426302 968303843 993461475 596436508 643960805 545871622 824711443 7327067 391488049 991815233 998894013 268643464 698608768 36155981 977991335 191801248 258944758 232384022 791728910 820517123 967534362 501498566 767998987 810652900 962161046 303521106 744365718 888475674 900092365 139726768 487836885 22987598 518437815 431072025 540848046 836241925 843643452 474744794 514174725 449740735 503767139 874768293 936460324 125219016 249288869 706547572 812102612 269746269 911308219 738505164 915122007 384470033 400176871 83604604 601815465 497707597 828715043 186048712 446827064 5476390 425521938 41021708 375864797 137261719 810429031 981497349 991097768 852301223 885236893 857747283 986057841 466893356 732960531 560868800 816541776 112786377 410545088 712095142 792741767 494172237 698027890 244160487 891280847 573874497 710628572 955163491 997279922 368959285 413517361 691236588 784676608 408418445 475603891 607306830 944091647 590850194 863122434 382914031 545322353 807528745 976204881 999437207 999864346 180934567 635046136 471026491 766184853 852273601 931714717 155655978 273805801 892239902 989752657 794206101 853490971 922166692 977294056 99756570 154728624 600761922 623724502 343126499 478974288 382699356 437734919 762983971 787156517 860379156 970385000 191640886 853689840 147538344 339797594 533830755 939833755 998579349 999588619 2688462 929577565 182370890 525064093 611782381 620775874 285059031 548398484 786210649 906611128 833309898 902667424 14185301 150409257 715779943 739333451 794000829 936972275 329593283 924164009 456076710 701236468 451327005 849857686 19167567 251983879 571580077 836421542 357117755 738400407 120897393 538781929 593107986 644330386 613889405 737326859 581521023 609125055 591038033 672394367 155953502 294864236 672908734 895067285 407304060 597889200 198297244 435475987 392577057 992941948 38275006 176018030 667828560 940859442 219310325 574352987 539391710 821639140 80791785 622307927 816276411 913469114 964625260 983620363 429182950 893836168 150963690 443954323 496959127 970439981 982024761 988740493 937800608 963696475 801204633 879813535 940584969 964522360 653221521 659885704 392241481 393968426 703648555 877073880 84440712 832462377 626452105 992531302 582344029 653155508 867778251 870282496 763443806 998361586 36897805 803994968 996901941 998486813 191368615 660783094 398734927 929952469 980427902 988707452 386190107 871057903 728663821 889394714 66562080 255766588 407806343 784783968 198823502 665308022 439589401 481219727 543706577 950354135 900869636 988697605 413201883 416654196 39206718 409129339 238613160 606221819 534223604 977992043 759853430 857798229 41983123 92195308 695408114 804799523 776150910 797079957 622218960 706748140 809773677 829796855 66007260 463538978 509583429 658116541 724755367 916415887 830975553 849339680 240712416 483477326 854074296 895534548 125824281 868767356 472481569 830153710 672619266 688716308 819964022 906057371 682545620 930381846 860404229 999203233 446274530 841769725 324446956 927916133 184983275 343512308 110764408 850058439 979813113 988625813 479573503 589193686 295490166 366598764 164673026 578969629 709195941 947179559 693809143 984856828 224616160 326448181 46541147 543708107 338104673 957912491 413235245 830989506 115470830 749345877 95421741 465944985 308258088 886291480 439117209 699596277 32682603 699952797 214697017 323051252 289472302 973135956 246193796 330969270 726963755 886101557 528100165 913902018 680585518 879479292 239908266 693369407 561000029 882036686 134231395 839268870 81693730 429685616 332660779 952770641 346222267 904255558 156658631 831658787 139677555 145018673 976414011 978402997 84490680 571042615 564914063 598635273 43433965 312014607 62733026 586907511 851128152 875057756 440842649 776033475 660404939 903057094 535826873 973873821 542072276 796399970 95228418 671967673 365970349 494925263 213440666 701452601 895120711 952753784 383738230 446102192 661612187 958543745 868107091 997539290 207621351 576609344 148527681 745656019 527498966 635070183 866843347 871044380 871593795 948376868 966799283 982969381 960700924 968827737 881577824 997845858 538616544 675775402 180057177 512302548 386868700 706535761 824237975 954827159 449441492 846617374 713235914 982333655 893210538 958276022 218035184 514211446 230784844 902960637 950553460 980149449 354487093 409307340 979688721 998395814 280071505 824644846 183129656 337775696 732602714 835381484 985781770 993388236 674942201 773290483 693695681 929697368 260595355 713135594 512452841 553643735 720238168 770948358 45341594 837846521 988853059 988859056 102202484 877824202 529537020 744163199 261366033 342993464 425735722 937778522 295356513 721352040 536013187 573943071 617510795 734374683 847897780 915811386 567807715 699925306 256427230 314916387 606028993 778615240 354377405 957819151 45114676 880106078 507749948 719413702 594724810 768834449 578262638 853179372 306542774 497959411 190719414 490964373 602061055 746079682 205743989 423286043 325538290 655510152 373833285 533718249 166434847 714799001 144405435 661395424 100493276 150462458 313336231 402409609 527048440 537708060 593341308 909433633 816651630 891207243 722853925 920123361 642443321 996968870 286280145 323487397 200974379 535866861 213489982 732814918 466944681 811400760 59948960 623624619 454759604 641581345 806883202 921376427 814284078 943122667 516341281 957666797 698460918 928006928 336683828 605288474 231710014 837754981 137247506 324961053 482159955 728860993 707490865 804159870 274592941 458412116 889387380 934563412 361710292 822148762 309694002 871098044 276928705 364811567 221419185 803553423 978023833 986933088 772659160 849359375 538400854 867345038 156549837 356433156 109720467 273220258 87138663 227154924 417686159 738311546 834973477 990305627 703332805 861930144 539955114 803916899 835072958 968693037 753851903 928602670 633848911 804993690 331103016 994773351 576302395 799586162 598550410 890041886 159212272 821531915 97834751 191517531 820773194 872950278 785452588 980843951 227784777 837765424 147990983 627184672 144059678 728008622 796780309 943247202 147249953 967799299 130370971 639244323 523459447 610631499 946352480 966138201 89987404 359697263 418501437 872173883 548964529 866748874 210024014 762743821 617309440 667640795 320325274 537776155 242379146 572963105 69507771 137676053 67548403 786437825 996680268 998965537 906018039 908160898 999018883 999496825 645522749 899055184 341950416 805843617 742803797 866041382 227378231 797995273 295339298 886038992 774553908 825477930 571037642 801913874 856309743 983192920 625581245 781946389 564903684 933643226 57090811 751419497 957083342 986209182 251062354 270555760 183552816 195656260 536630623 710804294 814704731 921227899 367221119 627420024 358173141 721740713 515674692 552939012 177862741 189283055 291090012 481931034 327105809 658268169 256838255 281422909 263100561 833957441 632451185 916105645 866170242 930425032 207195628 624077629 400484980 792939404 219641387 907831038 664770715 774597492 220275362 510768963 250162353 938229040 715700774 990477020 949342641 958903763 36340532 840444903 714350513 718727841 311658744 437723637 55478754 860999462 375138307 573755613 513571147 713049415 855241000 925783233 36267766 360375891 470305165 604439241 102534721 991534491 594388971 911929501 373355927 631896215 776323804 787984951 745341052 768293581 216405515 302183092 852261406 978780894 489557855 822994294 418741686 698591072 796314211 999821606 501496584 528883048 904473425 970529642 241896003 535670740 623777109 866097384 780700388 917273521 157721385 816402092 603273003 870507978 34167716 232464402 360274935 965515530 795062234 942710329 982556374 994718967 721946335 983267961 51315312 608022685 645080398 693022129 195652256 241183448 822856899 872476941 475058778 882229388 426778202 639731594 923060299 953648066 623843629 834965639 460180971 533149346 433188000 790005049 492752041 632758050 416859863 930313149 404060052 757274453 211276976 606666435 234026098 327717222 785520155 811946286 94106122 154282609 515239743 900621200 310104094 729469075 972178575 978580928 185342117 215585596 799968618 953654381 736418489 980616485 182471750 722713266 465215140 689846678 483768360 967701921 628139335 861974605 497872497 884974450 128340914 715564966 8295877 365635462 261151639 308126643 292644240 306999176 399980172 488026561 264699327 331874881 495802892 737142289 952161226 971874735 486458001 641493435 381229889 727049054 995794286 996807311 982423764 987870599 525055185 914737124 428364437 983975756 878967808 915551254 18826590 251109395 592955074 805467442 527067025 999163320 413925933 755948764 620842500 832070155 621574622 697960424 920033206 999225201 987363541 993103433 66449831 525350762 746506472 927141567 963105882 980478645 698306931 777950149 264973614 945416067 890297077 892962672 825758056 980403775 133411697 828094925 966300839 986604944 843991229 887217028 607036587 915152886 684872576 979838621 552002614 584141025 100440991 336182360 163581171 226582718 871143420 884556544 56590940 453841833 598738044 746629172 401981286 459938769 591143277 836449776 350976687 360673843 419898641 557793228 239248528 795936870 761256155 950002445 696463080 883108970 77953628 353704859 20762097 327519724 920639026 956032463 589020069 867219138 232803622 273207195 254935131 461104190 73147370 311612386 775045647 836427462 40917440 741315173 25152906 746883460 791477292 799380808 82033749 765412757 556418860 837285830 665916599 901161867 140695093 452338557 273125952 373492269 97029224 98452562 375495116 748457011 876167978 907927665 722073569 924801731 906928280 911610376 351125830 647274099 780939578 840461215 145700580 193002637 215972334 383894191 545737279 657657918 271922857 595797902 914647067 942130718 22736008 208722002 800376527 876370040 466341078 576098115 204385466 764097569 108800511 155819970 191267268 707712266 810066675 999225324 816022000 969790382 819556774 959316314 999168750 999895493 572663507 723463774 901606192 963834871 484988054 668789551 831133433 978137796 422537454 555446882 484499268 764268759 705250607 922791102 70418055 497476218 100917541 639327110 809469701 900684044 461837491 532792340 158328019 691637448 490462885 787216875 791819515 896752306 288839586 830495937 924568076 963063245 547883601 787263719 591890066 614577901 666954819 713372106 711986209 767155441 864423155 882201663 824553088 825479617 167418070 989311501 811851519 860955717 858731306 941253612 649409016 732670091 549504829 790695177 841533336 928696429 117622856 356036985 251685440 356340519 79284420 425645942 646663010 726394178 244173478 562558325 547609048 602830215 818292451 964399965 765262529 884167897 803464774 908644690 602800875 737964852 756070045 802673450 275113035 522147390 619846709 638675304 926233223 972186768 987170362 989144128 812164364 889492065 780302973 986160696 103209703 523785995 325259959 636529105 930540904 942428078 235440753 856023678 494420489 551051696 436165353 889681880 769208239 909322515 116572791 712494183 133421585 984409604 334342857 390930201 366134549 516756996 796821547 914377648 696946672 891746019 14294374 108384761 272081065 310912960 110219978 747368337 434053634 897490847 304657850 405574314 709457327 806061103 613178332 957083483 555131928 904262056 332752263 994248214 75074519 461001682 846983812 958757007 423223708 981735932 617883422 693100677 148841218 344864773 870154987 889115437 956142308 998230828 624995601 699009660 743954470 848704584 329038940 554042846 499614957 762659729 758654379 790363129 669153498 889838790 297225255 903170863 527434587 835274350 922498866 927696784 884495298 940915628 231378310 387917618 213545268 400380913 359890575 581594447 535979863 941622757 731913772 911494993 432400525 715627844 490607335 836227907 987467621 988582972 471697527 799967810 9434053 195403476 994004595 998760519 416589602 936250535 349128503 361360171 243768598 343146051 198040323 220230696 783710396 845098129 992651500 999017992 688730068 790793933 785490313 848031822 587310847 637623848 992835722 993078911 156242713 167741567 823557111 972470700 661896343 851435017 603773587 978320915 463066871 965774137 717063916 864964878 466995636 665406772 690540328 909283786 374115603 464773421 360094236 902883396 271352319 660657277 399059343 988507523 894740967 981648601 207570604 497926927 829907505 953959941 372854182 669953488 190403242 627335163 709258644 827932290 848737537 942589178 540335090 635430235 298666962 906312747 375849387 913454292 565386118 867778213 728627082 931250335 706516600 974351873 255433993 602850823 159874840 546775767 249086490 997820774 23635106 39406448 895248502 957463060 77366632 524716188 797200996 945735332 934021192 986518781 652021217 740941658 656743399 799219838 452393080 817964677 448044899 906958162 763309792 893675911 975958535 990321117 318669023 555173799 281345888 610276905 951483733 979162031 403794862 541246453 259687414 956450052 155405306 837226590 419942404 971298328 461852810 476037420 63083180 750104136 786308705 952119514 588709243 830283398 844641769 932742600 147633579 685243694 559522945 670989746 761890257 809298506 307811000 428119983 46236297 244397651 629848605 966725816 795925928 896770010 961512730 968970876 560042331 708115226 759157910 822835068 636506553 657530128 960942765 976833849 922903678 977552907 793539447 932361872 499921034 832925894 124516477 640084989 275498552 427081278 660079831 897834477 296082509 728080930 324480473 667366784 110550212 298701932 945508598 991624902 285521195 668618414 661307405 961894756 235241114 658469660 87818324 476398114 849300541 967006415 493795459 580786879 310853613 909249444 364972413 521529201 197667905 300155202 842417124 858579500 339270270 485333427 928380658 990309231 135269949 313147001 267536490 712025512 437702533 522246436 647062182 699146533 778513267 924170419 496205951 600609966 674063445 748254675 32148867 333270618 33877476 866838403 973227943 999254491 382281699 408656926 791916529 899134070 401492514 577935170 343331801 595487719 774615295 991023696 787908068 869893179 939637299 961108364 199374976 704088842 832058729 943180295 453294193 621666504 240682283 291861802 176407481 185401813 736817753 986843386 194650133 729009512 974568695 996865842 321032146 911426694 237063648 543920276 820708981 863803812 190372578 425651787 146721426 530088342 378134966 697225450 693284062 764332225 938207769 997854635 866063856 994242579 176500005 931700364 718138280 971314739 554713260 767699145 243090805 360945463 343134351 724883030 235309699 710958142 608550032 916223749 734457233 839091988 600093457 614661976 593007395 600489806 740022030 879043141 592495076 716841170 838087711 882255743 171357503 709937776 558844459 969010433 253619864 284086431 81810500 508521028 971225436 977675952 89604419 230544076 584280547 643335500 159187895 626434858 894522774 957281314 164230403 720347776 384579636 814903888 460652428 573128454 680269386 798911663 605892135 623946347 880229664 909783480 501251428 819574992 127856068 676465903 474108620 954665631 291545572 993994461 553965155 620692310 763711736 827017751 959068661 971325117 639590103 668245198 30312639 762811955 663921292 738152684 651944545 655044879 537966365 982811211 590832585 708399993 372228267 386993417 177297674 795200808 864083891 980442092 282966392 894019735 493887257 668486671 659674699 674115296 690339346 997519338 859026717 973201267 171979223 854857525 304542606 659399264 693518169 751925001 505699411 911693894 140416689 421093626 381143084 955132070 924448214 942388052 130733664 377581307 205303768 981084992 547795663 862543112 97094087 396968060 160861046 708173906 125095090 689119878 198955105 740186231 956165374 985703725 353551706 868793958 450755021 947096936 22196966 98160590 722138677 950227398 648838336 838392445 227245933 395145748 849246526 894484465 828952604 931386655 496690020 633825609 178728015 340192181 17193564 614567146 431329046 640172600 423162449 614359886 512863845 885131622 564802354 826786856 173107707 426832720 159119252 616700660 481601618 835950628 624605825 739424431 402892364 443761638 191559417 686829761 645409603 969552492 452078022 789240425 867421039 920486276 919775708 940597794 553244083 562581169 444900588 571148752 684425229 712096984 560556920 670433403 766862860 877020378 267698829 293980762 690944922 764357767 808584595 877137262 52356067 637367467 323383982 762994318 509671858 893543849 295598567 696756729 935245634 971041067 11335908 778432396 309717330 813033813 621027283 645491095 865036895 945513661 248392554 420291861 51632765 342247913 98839874 384621965 776507498 791291626 118198501 226955349 742408771 782843546 551440342 962713265 841874202 849073528 473184143 776600720 148625029 953667524 796322071 820556235 148704533 667571796 295285934 452034851 903206097 907384043 110522045 732683858 319736254 899187729 867963591 971075333 601886355 888246385 109441274 843779102 169289842 310193114 611523897 713988651 158407983 287717940 402053526 931298862 668962637 672868896 558743456 773567351 431978723 825089419 902166232 968057241 945843282 976130421 391530467 805258424 992776596 996392227 588068501 946033310 96538279 830347047 249334625 599578066 30028141 486859356 10334488 124759778 693023156 868173018 17995994 776113526 391449184 935315028 651230069 768181133 310144512 635673048 372839565 965538927 97166431 289504920 833386025 970526298 924855831 934582498 660888156 886851748 327869474 937457921 463917377 551712822 888631232 905886140 591579255 932308972 437667107 577044417 14448386 818371482 371987872 740293181 542587720 893876558 141806198 448565512 268944968 381333860 895470408 908005059 687425411 885634021 783143903 790594412 286914073 729646041 173077040 803347755 315164198 569592901 636845819 644064882 286057892 664713527 771319787 915926978 681322305 847965553 507473045 866740253 283979560 315088322 229577358 339182674 171420379 894622889 130339633 256250680 904407270 904624067 859059942 908787526 682160716 927784686 932472942 973431951 84905987 793600713 324763390 340913097 815806668 958221989 955409269 964736048 589802461 702172550 101573898 337771902 286113596 311429078 627654654 995373079 627105267 670978702 923021255 985383558 639394502 683964983 843895461 908766917 909460986 912062964 321876181 400376199 449189970 990252637 451270153 756621717 308738387 466606316 636936177 985500475 897311284 929230589 277635195 440803171 304324666 846754610 50541177 741095029 281706996 418205353 332340503 759214582 55365465 799839043 763588046 945638514 715383449 839511482 974210117 983459916 786942932 952019631 997607190 999083904 214055951 618739100 707385988 952447469 629084207 897390942 810965888 934139607 299802848 946730863 252297286 441035387 489290106 700419367 883640680 902783435 713305270 734339791 969728661 978726174 682502302 868562653 214623419 953342485 828432377 930028769 529125625 622483072 458902916 911952015 867033653 905075152 646144541 848768548 493205555 533886749 445023130 569660047 291036915 346464821 756514446 892739011 523628629 930967438 66591333 451554979 626150286 991925828 622226062 759978164 940961187 968328434 438511093 704388655 509810261 710234385 37845473 752336801 816359188 873428435 609750 928600425 212460521 978355287 62610428 941242578 312074619 880286654 555531450 916482903 909288763 950018810 520211372 839767997 851529363 888740100 112144215 327806313 552165257 599952200 627170095 860216533 60022632 328119742 228341560 755533659 581882146 958090305 634127788 749342716 148186760 561561717 380368250 473752923 186836246 322766687 992033346 999810360 660077752 901729211 435970172 541601976 148976128 626517348 18782144 702839587 193996018 219772128 581103194 851290430 349494840 854451606 500241922 536094921 437810201 952830892 975063333 984194699 91217423 893140997 606492282 957977400 152141099 504682599 396443933 772239680 528608622 781096517 864582809 999086106 439550856 658701333 872107711 938272703 26027811 499399584 250346941 722941515 424517417 438557071 790621257 884522852 443131691 605040728 266552628 583103222 499854253 814605571 719760419 786924929 314034612 634053190 566323347 604842611 449328342 878885167 836179495 964447942 658772111 995766857 419626129 928731974 280292683 732645826 216917099 905068304 206953161 985706007 805249548 938136501 922274805 982833526 136823227 405548271 278454139 684850322 820357650 876992466 281551164 622497009 454949365 594626923 746438356 970327029 335231331 459266328 618552798 960424699 574120882 872637307 726006420 847220282 284072408 764118867 709251708 829199980 314534565 430093728 104485568 876662851 747738664 879630933 889076478 901225632 742521848 912919302 217838573 851629422 470875990 477301899 484750719 909333333 815345182 858805356 301929775 441641437 779830201 841303126 78364553 552618198 598885270 917195996 426765797 831612038 193834752 949861954 668108368 674968234 677509076 936127613 495960298 544765769 58469443 949438861 361096778 651328471 185596309 981602076 33032497 327927687 789206211 804465765 603243386 754638529 808081141 953572384 760922637 780922229 348351498 979482194 890143547 997644931 51720216 997223999 689042977 751524925 498808929 922880735 997392626 999702653 64180060 575359265 464462225 819347639 561458705 736645336 376395613 633971325 256968110 737325451 851934535 893772441 493884912 719726855 197289627 982746897 723257189 729413341 2486616 26961644 457406619 565961297 365361618 634049179 757507284 984215315 814725760 843222614 433852526 881140062 628168659 695923285 89766854 999057285 367436139 530034358 993774716 996443425 636569571 890126193 605633409 607881208 389986393 645107822 655517103 975390426 780611761 781036666 853511403 956594975 735447926 906710283 631885327 966159482 999774995 999925952 600864047 961196374 7734074 386909254 590150912 976773896 440905548 803711088 931755715 947373666 528856930 981979818 447041009 805562494 795816316 979116121 478167663 807808769 629426459 719664546 588743858 725664512 936230464 991095951 624301480 960500969 154430750 845467204 993119006 995229743 94822819 96010053 535164675 650409525 955609474 990460381 888760199 998723576 496759057 851094548 537369916 611578495 437501305 832033834 690971720 813839655 113775343 608142236 652378669 686584325 740667088 842096935 528632067 959225650 320540247 832781679 848848763 887254192 843701126 897966080 440685422 683300388 569984334 737628239 231698756 596851627 269065536 271309098 680741489 887899509 186201969 952445862 587107571 720788918 78331289 851175039 535951545 645078192 577119512 919421867 915416288 946552086 331270566 492256201 331557327 918317896 731274194 946717958 142576174 461807337 540792074 785807757 109481953 820795218 398550943 736854061 396354855 464758913 90185452 989263813 445865531 937042973 964959689 996065152 187742653 294250659 397488608 949789209 234741999 415460142 803387279 867560582 187794483 263487165 535838751 962793333 573566615 731592859 882311155 916162505 423604469 564695048 692995742 961198155 620433989 942014019 932860780 950372759 988781312 999393577 222552341 997454046 67224087 272452175 864642292 891472047 764942415 787108481 224895966 299818661 866891150 895517586 587115466 863575515 178250180 918709492 635029424 805452748 73509958 262710488 745260456 879949641 273296166 990888065 181725031 406653769 618633227 979798812 624688995 917719338 41490107 953347758 196841377 963825446 867833819 907050471 635213580 733615440 10557350 310592249 306973663 448298218 501260925 502445909 740074147 887476948 144122908 381411031 801685734 895607375 164493080 245380832 731377640 750636457 636141361 827132142 601135439 642863168 985910960 998979728 557996170 740839456 576197074 620701123 396726790 555064898 202079957 221680941 734628888 884146367 138024374 614899483 78636774 965753457 758949303 787310450 575278474 657037444 457697711 497952126 301606120 628303147 900734737 904047475 397953646 838357989 550378104 911460605 18606457 773637686 626287474 858136179 87503834 978807733 117868242 904949721 248937771 750778057 699117313 906818092 703274156 734352877 681282866 745319255 902923326 974401543 69477200 79004117 98807119 993433946 77952398 978333437 274779422 879683132 436660827 870102071 922596906 971454052 717776131 960706022 157853025 167547060 587154859 769682225 104946843 506762397 434469924 837245065 944444400 961968962 944259263 959802195 830670255 917039858 713406049 713421567 591497949 634594956 632052991 840745243 954278178 961763888 929851377 986094593 6613174 250446241 782978350 916433762 337211043 727807860 17619761 803785194 863102408 980741199 981068224 989214600 719985462 835020971 656984167 771999736 264472264 971263514 523011305 874725105 133771853 861161263 269615937 445669013 494413551 925043674 83026020 456942890 802990068 859421939 577649224 739082710 661554466 689532219 191925487 670079522 565130882 840097819 840532678 929528503 824162673 883561908 902490753 952175954 696927978 913329042 829381403 915747789 781395520 794624487 607435295 949689183 155983930 378949377 788450828 914663081 521760190 538188351 354227409 534223502 937272562 982327028 413730718 904489456 917386364 985469339 553155122 971816524 406037124 640113257 810251946 976166654 781233674 860754095 660832091 915071386 868816320 887576254 487891998 732354403 217259992 348011089 291216888 768992794 836077444 917623341 768696281 785453948 424151288 885423643 143113416 455934183 265330078 823976570 717372569 852337779 379613780 647585203 281497021 988307244 122392127 930361403 260814374 457270980 541994893 724647999 924450757 977638769 705210203 949828529 897319447 932790149 841213136 879948531 753256512 917108484 664471481 743302169 492042719 936330863 363905505 844168528 396805262 769121413 725706548 980486263 219482526 442803294 277294795 428313572 524696877 787402079 498518810 773254043 565213980 629102377 127686435 974562034 969087159 981729502 691271508 797011844 226197461 687796375 934262691 951009095 831099336 995612505 219945293 300149216 210278360 727955039 374833514 549080842 291538504 977574368 573502308 876770739 237628375 384649566 15818807 173430345 74032830 692601778 882236460 926399410 508835579 677208106 210509315 668036990 213165307 930186497 13499363 943471733 10896117 262169988 89375020 734950026 641869448 747379074 132227769 730594294 869349894 871442441 6322689 220177313 329610439 616976325 184835923 441606954 5459976 83506779 192913065 685143757 937507387 992748022 382627687 661778286 248998216 746254457 689623441 802859469 511917488 618225557 795335437 969313413 470272692 762422205 111063162 953056417 257405120 822524645 609634006 810858054 247724845 725108747 42109698 260278331 604214400 751574479 146314530 345608718 123524634 141380684 873213814 901561284 402485526 529133149 658852430 935654641 585919837 866014742 990120815 999569485 11469528 325361304 250180480 509821552 174157112 788670941 483900897 687607251 918174569 918805645 199874832 374362103 239779362 820753658 871702800 946119520 492662155 652160054 147069979 453555763 956613267 978922625 158307583 852532935 151304704 595581741 726472248 843135691 114501789 198376673 105795164 405836146 331659427 369451709 758118784 996708733 588323752 769814978 732596091 806042681 649956742 994037530 932933377 977895098 668283212 802268415 217613204 256758576 59595641 462452894 402781645 829837021 364808111 423736672 857371585 965415302 407471805 856096529 341136604 886155524 154321922 816022815 749412586 974985200 869853811 988222345 744033029 764679354 520550313 523298152 942159763 996074171 537632311 972064836 824979816 983427798 534799022 826107104 145513766 227124884 444467821 753580888 813456456 953959752 967951236 996776270 365093338 466452382 98048396 530743039 889602393 995704633 34167828 411025626 566155851 879003673 667887582 877640949 46570843 416591458 27528934 399208072 1492009 564989324 457660757 834213141 784655808 932157146 305387836 706881645 802673710 833186655 978474276 980998245 982720340 986126601 597328175 806592083 192833288 607553938 853274900 867881170 967575835 976897266 526359257 535538512 986933046 997128014 135236746 758020368 418457786 518693296 984681376 988299129 568314252 712997592 850199303 999344619 571603320 936443707 947630594 979685014 406784361 720560693 254577615 817957083 410426764 775495950 835774700 887360875 687467248 691505528 106974514 851873293 663762248 979502491 155281780 886396835 27603158 847006258 281400977 632352954 22684477 979436528 581318818 774927006 734419961 931619646 373605044 884546743 973428198 985859087 180192461 623232300 146202214 617895864 232184273 791254533 997837667 998958586 405851840 509966576 406968340 870475749 829217824 919572452 269971284 607560015 50844361 302463606 61572316 827161394 386252028 575025678 785048126 963093884 323135136 408642860 626494846 773406413 408480710 803815025 374906202 998877016 796487137 877803288 631749669 771544698 402515340 855937224 617109999 953876374 337425444 483793303 291995806 612142693 22986063 983806167 827429094 989633341 318758477 985690617 759911363 842928605 580671041 879034454 170244920 219371502 804664575 977237798 869588514 877676324 1758134 199791911 225539384 966331096 159497673 189056316 321430103 563955807 404537683 563212966 376477738 400314382 919860516 981606746 978857127 999505079 679443631 697648556 360190577 931207950 853129556 934741165 853279587 861029669 663808914 675879453 930272358 957125739 163999301 238664672 342417268 420281859 722787568 865027738 460079613 549929102 144692629 669522626 68582293 103171348 213724344 866111900 877109908 945491546 186104861 642091748 133505678 648803941 223989748 468337579 166187414 785317099 433258826 973607439 397207786 526813901 507437301 573323888 685397117 826005390 516044126 805464991 607082472 932860673 466744675 474942461 187090680 391129377 456246419 870017627 483320787 580000561 349117071 658146423 79928318 124014664 505333747 555582322 620513374 844945444 782248384 943655386 496033720 794185809 120102563 981886173 436422973 538391065 74020525 775238719 506426098 727180742 746894389 765537559 667311919 980380447 995557982 999225328 441344659 527766839 546373232 653326625 462228451 536667763 409825874 908386731 411869687 941274308 768410685 981795608 378163645 414966780 812020269 995958779 684425260 972076945 651982466 922594272 766182385 803969843 395309859 671304645 967008850 988255402 472301259 698358617 642968994 828116868 756912163 879916335 990842788 998710221 877315326 913702642 304083580 563229062 11466228 463200405 593241988 930387151 164449939 941786218 637185197 800763038 256984384 655857319 748078386 879523850 651252233 690234807 257367541 360247722 386647359 434524382 531317383 756927075 84091203 579363437 447471974 492566438 537525037 979598082 845164727 933443754 311265475 797909617 988697849 992831089 241908411 426793132 601711217 696098241 600099412 905112479 305437587 324038290 867515413 925519244 186944285 885807093 82125585 697233888 99241601 844971394 867658200 974858141 530813559 965972658 649332170 840594850 155605092 492132825 14408868 573261947 438094024 443046827 359885991 720264375 820968149 883729777 736809906 917542160 458727259 934307516 931983138 934306177 244421937 906809430 25518866 114313980 502373209 817243924 816992753 891346094 623502216 690207941 490424912 954964325 246383035 636698578 362689285 384859341 789727299 992849164 166060719 785073838 860452956 988649702 344472625 542264091 996767386 996904820 394049618 616886544 385114386 777513110 605891212 968360377 353904084 884087344 351315337 548782194 545545483 947571115 624630506 637518802 86321290 291189634 996452749 996888665 680276204 707271520 694708350 814195693 962065726 998347959 768969128 854830399 494373963 714208658 693564239 806830170 760961281 812904553 580710108 766789593 960946084 992752394 753696849 877761463 460059320 824621806 231083110 613648480 398561741 694776953 257428863 471721617 929915308 994802707 275569327 686071277 455891812 667372827 642884913 996842055 107743013 995841435 804762317 971692919 991323881 998795533 671189654 976119422 185738539 281750284 428205072 748919200 413110255 917595929 272022113 993471113 646036018 745277924 319530333 642075879 940822776 994767984 817017985 907657978 681950134 841447604 170696205 565111149 649719866 759727496 522666517 913641577 164939906 244240708 853936368 910637519 37915559 325019732 416381137 880778932 775589228 960465394 157272155 837445056 133105961 770887791 742828630 904909017 181515052 497777183 635699036 662088725 192904548 670411621 739341477 951602133 216000443 921619104 935317671 972657273 860097545 926844933 278839159 939083111 188114553 471339920 247711735 716530931 29666328 385709040 868567265 986757413 333886755 463386900 299722215 942985114 695376678 714567885 844837535 967701378 942038245 955266405 203856855 937662414 138868363 714314920 726772987 870531809 116399217 302276010 487353863 708978697 53087439 284930529 380429808 505177875 463337099 576360502 870779979 987305450 335866767 827807883 654213342 915269494 971545986 989657749 889576731 984729561 272033059 545730527 607454912 676142967 10061394 502792594 705462093 756073978 144684372 443724611 810633494 876658113 90545831 573178058 131178587 827322911 469940660 569987769 870988442 924572996 925482876 995944223 366833602 500701287 460107136 728325809 224638802 581525881 480786630 982726217 301114341 448889810 109261101 240169148 253748804 761953100 2018883 230346087 901559760 921821684 331181610 867431635 598362545 937999515 206684441 753660589 373937610 758681346 566737318 912730190 896945278 924283724 454043638 866532439 886596131 889656488 904826986 967314399 642926772 926236691 154580836 745649544 501365982 560528830 819053344 967864473 47608750 607726646 650640088 697070288 896343893 923230294 292512868 360994978 450224777 767504952 949681806 982966239 201201312 628099649 863345369 957326320 28008994 519719658 893715814 960088199 655846102 973919855 867008318 962724825 746869119 861128573 275537035 429162654 26623845 79480695 649563130 984259374 328457909 864137528 363169609 379535870 227523139 380684505 27814916 629505794 169951923 300076509 675800870 731153671 40806597 51982180 510076843 904743492 816976038 971691564 142769472 397489505 581320782 883977497 263413632 913662499 10527482 234347492 168846557 705190319 130834059 827475235 754255144 999787753 280202917 923124354 256450329 440256408 424739429 980203075 648209619 997562165 263992285 866044835 718484480 985682320 474579123 752061058 780907273 979717090 722383026 887463258 486300219 556643695 346274507 769253652 766680898 767408211 407327558 632374500 281289909 516383155 267440359 863995132 403754851 576589895 958031545 991359338 978656703 989882227 422346624 698258131 533378064 934482509 728390072 870156751 543909806 569328751 939138824 973537259 898225910 935854835 3115047 476099491 399558744 790225310 249136493 531981292 946209273 966018378 269800850 653548575 160155106 221642659 288624075 535473879 583578386 817226824 923786540 954040149 273064757 414139986 557400885 679832075 44053562 75825451 162265354 889864055 702706089 897999885 714072764 893194810 183094420 430618444 728291926 861584167 858380479 867857359 54491978 543789952 256781136 611320025 41629272 816179835 287173088 728824889 803132841 881718840 503157722 882374404 56583410 545825721 836411063 970196619 824764138 900850341 144055156 258426948 670142898 869934094 524480408 832355066 424927329 973014960 450485778 647878427 353785568 964062262 797790254 868132555 362690145 990935188 727591493 932634078 670286718 939482859 93535995 445311068 155405920 247123246 966014156 992584049 652160459 786449557 638909574 901214858 710364921 972738122 527444339 941776312 489800688 644182133 546720919 691316867 959923839 961654570 110279941 479904658 686047854 861898644 460763331 496753283 280741955 825450690 616530525 681358917 285711403 376950977 938817125 998509292 480386404 556137670 125124461 987178350 722814142 816785237 928414010 965869038 946481825 981921997 323987236 466361562 755375275 808589840 130389756 958836329 450595213 994565893 133111584 809385547 623865817 988039172 457873887 478974394 799167757 943934655 606414205 990621229 430568571 507589056 979609495 984991520 401162385 630993411 179705935 477139823 329625411 772507152 583404405 961411113 19832741 710048156 90813936 372382438 60358669 92307125 894547484 969021317 508042922 555442677 245072606 280038007 244892995 283056656 88183391 414396811 424077543 914686410 440965694 536811166 983506206 999948912 614808676 943792353 216667921 561527498 85475351 519467012 806853830 858438051 234479913 747315231 682982200 998733242 411244405 638161794 572543002 857599912 277491104 394294570 172016457 307589526 462780987 584119000 744804821 888746451 458766485 917308712 857000595 889367158 149877008 911605727 859826441 874829051 143333991 663072966 795486920 883848039 564862756 616023886 26457739 46709472 504246154 707518995 212267991 221188526 616339520 794099520 708594253 797937032 338952591 566159760 140059295 400371052 20748011 135676546 554618165 783167556 287916005 378901906 577690946 948782088 309405710 715409508 959778535 982284829 215240258 944255596 82418219 446634299 74835871 935659904 643714083 996331624 160203744 352653139 949298258 981793025 712662489 987512114 673727304 798927630 580011331 788091823 605155183 943537470 931209458 944362731 225691362 521951654 175821783 240601419 403126721 818379686 865225647 917553817 255268837 449499456 746235940 970746613 417792676 449563984 791766870 841144849 381669374 514797628 25796045 880474005 391940450 439581627 128347365 881286698 964760828 987483452 909078746 924190642 899914565 919382896 571301326 622351134 161290720 309869105 420115446 982248079 119706792 400848450 373378936 418472853 31664521 885981576 870532005 971964860 947433985 955030050 167728424 510239191 929281256 971006985 246876975 509491789 982721647 995882858 412811878 834598082 221154055 568554632 635234612 987209038 376380497 838113940 126953635 786541696 276610175 729627256 141813673 958846194 135862395 548460610 752980884 768683434 737047925 953265310 914348996 939851313 156357659 180158221 318059194 879533330 972693623 974172626 955926390 977457928 131810457 908564534 323485097 945320470 929624141 990768818 334662276 735354269 100943384 105586287 884682342 966320198 521199246 544936315 627970199 930894340 149160847 747177989 623759944 666068518 161929423 837363233 939064120 968909061 764336446 861369921 538647067 763035030 142703802 352899708 852063047 854980543 253374506 400597126 32257761 284182119 946573583 974813485 903605460 936499872 804442444 987033867 286803053 368710513 210248864 445266538 963763682 982863559 144095292 354829959 456122751 817909876 724988767 813974370 772797927 792696308 265006866 655357879 65739796 534104190 276141350 539879837 11260231 763060726 161536607 861715846 913505396 922521254 633576072 906647804 402549747 661859271 236864226 920313620 579280324 644834715 318067984 640705328 916452800 994383179 368574576 851949966 681067831 706138499 16796803 867527571 123643163 794258934 908736093 972979806 402803388 834223793 506233663 663274369 483759178 935779315 568923823 569766522 14821077 77420541 977533002 996546266 520201721 597627496 397255193 520183125 44521340 269821692 366374197 679328466 218214194 932165601 217480004 991200501 2378769 62630110 241180070 869365154 282560643 966039002 386842782 966736459 70026453 262669921 92625891 717124747 413062093 731984990 85229114 517839318 36039171 737478821 825209577 830424428 114110492 512804878 725679571 987699709 756770520 996610914 105070970 705209846 321090920 561391522 740436210 783576490 164598401 905724564 831813125 990483273 943090562 953447190 674104634 969255742 959834465 980500316 572546270 664830720 263629807 993284168 632488713 907344227 705051795 962215304 846148319 947846891 406659399 992624500 664701745 835115942 41600904 163052143 531877610 977428423 560690306 803465919 352679482 423840580 114086336 250603832 63476321 178441840 996651156 998654531 873626786 941076232 320132724 570509124 114967260 244716687 646486522 864272152 837658302 871512418 688774718 705318631 493515602 786309721 921677527 972883849 946996974 951040904 833394398 906239229 438001707 591436017 480397184 579961780 132855171 640328835 629372744 962139947 466286733 502623355 742939927 850172929 581481429 708698725 416198735 584113477 466889850 727483777 629600181 981828983 999206189 999867755 559176881 595569703 663526228 938363583 848193244 888304834 370979628 668429155 906380130 940023795 376070094 481161737 710718741 753176330 236403821 320742471 367681158 627097911 530440321 878481361 240686844 534585262 659189261 917916681 41437102 141014986 287842514 511713204 385253203 842058164 46661068 563547139 143901477 857834584 274867533 806715463 774330142 932291256 148714547 781584984 371531439 845010543 341733775 568707079 111086066 966955285 609465919 762379418 281040233 298722166 858723728 908313740 516537845 541326995 793480196 869958365 817595718 974557800 656728487 874080378 410334566 416657497 117470644 192778431 620842510 655208415 707329849 914179595 458924498 484247425 616320927 832718707 505686892 536147862 194788672 921466366 321827242 788048445 611080047 904595794 511972914 861785047 67047483 455422580 120072555 519235794 680855255 754898892 82762717 832156010 636176318 760465154 566356921 737185836 459831018 646568812 97598895 740150939 92766956 678454379 134216288 596464642 376156200 938389253 258825310 473607652 955580116 987193600 120837595 678455013 474831891 554402205 330453891 903885525 100030996 396188928 434246586 614600320 129819477 820615969 690163469 913182018 182900663 280713991 254405952 379436908 443057426 595785682 430475262 917848711 542976953 835902766 218974791 746791887 786956921 932593259 756779647 969527030 694706412 766093556 949409094 958412934 38964671 972659183 319446856 724954872 406025619 757696885 769657638 846658216 513967232 648636474 15700492 893023298 853314118 893249211 469461651 799151876 928859832 944460397 298766786 975834471 752634170 768097772 166208954 768419661 277357771 453285053 380766902 762127317 940638640 959408773 556780299 563922292 401712223 829445807 151411989 363405583 517137069 835790922 505851231 929149766 743467489 856597887 618567435 691121964 495580001 818296968 632026376 860334612 909798913 993728969 426353495 708827293 511694590 921640723 560393614 920627707 802897273 815973451 238481478 899371064 962097517 981286926 671796771 715339655 751332358 838544628 953673762 989969010 445237512 802057859 297080586 675144396 956400284 966605607 857005778 865339952 555320507 752313759 457293507 974073505 228632128 498839950 237703633 254193757 760533204 803809711 193111226 643149796 451034755 921144069 81793990 980099095 451046995 574173490 471179174 824982427 690123704 863400897 590193674 948705161 980733837 983742392 182997758 454539064 930787514 995438884 155698761 716461083 963708276 971887602 317105431 982800586 655502384 897021102 12008995 17765032 367783039 467824885 354833551 901799892 55385636 734860752 557653417 746068797 576189899 665910236 121770659 666687532 37828348 446258401 53300899 207157492 241015050 683743481 88318930 482230673 418880041 991365358 614626002 901472798 826016547 967649357 276251286 515524958 297309306 804881019 464209727 566015819 768141519 838213124 503930920 867663643 80289963 423199568 518599661 716865412 173398790 709668093 568832338 889031248 365326122 414947778 142814483 750142165 99525830 999272682 308624902 664783410 237035753 259517902 987315051 992487204 631917832 738359601 873720899 941065992 709826580 739543737 641903265 823139800 334187699 867445494 593817644 712108365 504265928 632341186 590346412 877505534 556908837 778512625 132491007 433083420 994316055 998689012 556655970 694892332 294886146 378919801 41559028 661216968 909090281 996205860 575751595 689427211 242167100 997625457 495552500 845043625 966994654 983470588 731098203 835317934 121390838 416067830 793732521 915734058 481452008 793429808 571123359 954757084 442322506 683562353 341297327 606109336 541820192 887090257 271209207 998587341 939909544 952491906 253263947 903692186 385468470 865872933 342124086 902007207 939885728 980686945 951639375 976812041 71502549 751437630 290107278 421039862 977897567 988522275 400432415 734712266 196889736 583564602 16061724 400233956 590361328 735613515 444735432 800356700 836096091 947261872 313138525 991311527 784945940 827693894 269589550 332924431 967604889 971793223 785206860 966495525 485630886 769175460 701930198 824873366 984620088 989767287 91133682 837546575 311118884 432485834 821324867 901812195 361719537 492425887 555150143 854096036 310667867 711100891 597117982 889915034 334276345 673913965 889981463 929078265 512762369 812896975 966197494 998825620 854259878 878778725 855722620 907362134 5845487 647646822 108305180 451919415 28992171 601507569 370816250 583643620 175488354 922404402 293799046 392424307 718708182 922994623 204227544 335766416 950821227 988696594 509714398 908539893 703457386 801369906 157660436 626683978 709762517 875451597 22397472 865321407 387934626 664054009 450412803 661884414 663200086 820621489 877613579 954706759 483412824 730944746 464337800 598651293 108602792 552299610 595825023 825378530 393031565 399644532 758340124 836578178 368635932 956754398 570628641 855380318 636311325 667619924 544340317 699096823 112493393 319143242 443911348 959106473 344309692 784290668 238079207 401243764 647883889 780637371 537528759 760100045 695273670 839331002 846485055 995126490 598778170 745724933 327132112 572908170 128110842 756387615 564827308 671379349 13762179 826571359 600126037 704556691 943535554 944810073 24429770 279092859 924506167 991176311 808114218 888003916 51855278 357539679 617939727 668475738 499477134 903316648 19089500 720974742 688228901 792869036 214222821 639471757 103774122 644938047 17980324 443472756 344231990 447551440 901536170 993359396 855856531 883571582 478732875 982943659 581880107 583112336 608043392 787520109 897654221 966205281 81843798 92277733 377414575 656687148 721061756 862696005 633521103 765885867 953776403 961215077 642810563 759599157 171606799 793628483 962167081 973721979 38784386 442147216 207065019 838719631 462200730 794996956 233853717 933962687 587209356 752786414 502769720 649880407 40021054 727079633 333172841 987577967 798268354 981746122 165145581 505902409 255694164 380023256 930615385 964292834 94583983 695947232 5554612 108468118 160793202 574960782 993614059 996274452 554879048 875909946 143127549 333479240 403476617 658038677 356846578 736431105 633968297 961843671 190691018 491314980 874841301 927066204 878487539 973796025 736266753 941073208 437736619 848852481 767786745 790726043 852132560 896961493 722877858 769339142 666685200 718919781 63008869 242503442 434730139 788821501 466999539 832096355 801349712 895975926 506086621 575173977 218960303 309783090 403164544 894608929 4366593 670024267 322124435 821829014 373880849 811940116 850316946 855028734 211296092 742985137 346639553 976751320 727375764 737622038 72946632 809365047 442356152 574805583 383521796 463405578 837279064 883502703 561455623 757074510 489382106 918720139 8243218 295250060 266900902 390664399 429573946 642371044 230771674 554893083 631329740 937113929 745307033 831439947 737134565 923237474 521874869 791783401 58301321 329952060 802225678 816367841 225271908 881318548 696773639 933715855 63050387 463219447 168151601 690090834 869764836 945777229 708543890 972999824 577799419 600269694 834485339 976084018 441795261 771281418 25315965 704045467 302167188 433873374 470863542 661682172 349770585 653112993 61184082 824044469 220014691 333448000 669562255 984216499 448312466 622773944 600274320 788330025 14197360 669235748 980018100 992486697 811249345 873571555 694343449 829929837 660560554 912697542 756357936 782716782 815581799 926981804 256340628 743488078 488053388 953319622 678274807 830217476 865639616 899589451 890017695 950737538 891488661 929948546 76746528 855730968 152027571 548098765 768385336 935492016 653289768 862747818 67747964 114758473 458169793 970496490 805804834 883571386 746624328 926952657 868156624 913188425 392997619 787893167 632491939 871744984 551623724 636465607 650383966 730005828 35954233 928706844 513721025 915211782 892997537 924889370 528824844 643995245 528569273 885857218 385924818 803594266 855354827 988159849 600748590 732181637 193228617 456857404 413506984 607823030 968298765 984969199 905544707 987985008 736484022 955113802 667700074 961438264 508911183 834315873 467889872 694652918 363354344 773939472 142490093 980372743 680811143 901383680 801784113 910884402 212096787 716185762 543063380 549156292 341245580 422969057 552218449 826422308 432900963 740210510 473025294 916228202 203397715 726937238 94159275 726802121 332918881 490256585 281623613 504288024 26149919 905124397 982066884 982395631 440711061 903944240 660889292 661082706 205232595 828311936 790241796 791379030 773927274 933594024 485216447 831359030 484715700 823729230 858638391 993437918 765527222 814169963 612120979 804639666 908019324 908563018 913611746 930555558 301131333 704105100 451657938 758361172 150796051 843143164 501360670 533724281 696177881 920587896 326502660 768988876 792361778 948800233 425311093 940238374 843792631 986408775 261746388 978617215 215003768 566493886 793298325 987893020 941295443 970515498 339652220 547885329 436669530 771605421 896025000 959795415 573637519 945015297 387836868 689026931 58638981 666910747 691000771 932647708 5775131 526515230 195947773 918106630 319047744 320552326 928587643 944157874 941685179 996761110 683179530 984664588 431082551 770668688 316009249 827691835 298093683 494386712 884008846 946067208 314140914 746517780 762777907 992141332 7433013 518170363 713614117 848588763 415967692 999425344 310386110 950107292 282881386 798549899 9953691 243409869 977511306 982338317 709039832 777750771 461542409 665709024 676310155 988412670 902093619 975853805 454008083 656106956 930567428 988406210 158028274 717194019 878460186 926903238 546862718 707255941 735736987 856019546 644006587 841686675 51657505 509408417 831804733 939874837 438471275 961400627 792024130 878204957 226324981 715378882 538877877 832305613 4398597 567992645 448682467 764528302 345279095 485044607 609925473 748982025 246760116 683192361 524936050 756685866 365227683 490697458 442514026 986637991 479730267 569207699 471593322 539481934 158401420 619212081 725074001 777002545 919327722 943890314 396956841 999511161 494352302 655832340 438011870 937154997 538062421 672614853 904344395 994164429 387064989 730043255 969679908 974389640 689476719 741504558 208527874 446132571 822717427 891197979 135809114 787747844 450930914 455333505 867222252 899474822 511645328 638966262 373945192 516191634 355153493 523541062 502564130 854036334 660281388 720698041 995458511 997184347 239791076 869919649 935751837 940289535 58779492 61352816 932149906 942444520 297220544 915103771 155623968 555118595 369252078 370405711 172147647 248500030 714250308 784081002 406941171 657191612 858456334 975312405 279439829 938584475 984413976 997889476 24463902 149864144 250151085 798731487 870889550 877757549 215691483 691494092 68807533 886653673 594102930 790542301 67592799 583256372 699358448 899787430 881874950 970799488 87682839 816458926 894828005 960704734 261018101 782195404 503696301 610627870 952921809 988916154 302827440 569093192 162595388 364808577 513704384 994622257 210122363 477653659 930560055 992722729 14470597 421499049 729283297 756214586 730081029 902386372 75696224 231575130 864043771 916841739 653869641 957514979 477579795 795520340 345303603 724155006 139789863 146423222 931215002 988593944 704804676 997977060 376218900 769248452 919596532 930765830 219397423 990433560 186620216 305504363 53319052 450121427 532806957 655683887 347693684 626426055 503619733 659579215 907871465 922571272 129966014 751060071 459036907 511883908 967041858 992403106 762167517 877668219 615854081 921020431 553781006 565255181 741985803 784907418 386807753 455594688 550551269 992843425 977664504 996514151 448491400 826586910 751878512 989333836 499951847 582827451 352240821 953978028 133159601 946538202 631326960 993624031 22548798 315965107 776089295 838492254 212771036 987261311 38626096 190085676 864613014 956551201 150136162 541620534 850346005 941751488 991307687 996587384 820303250 889601025 567122569 887610290 811527123 982162948 190729166 673482749 196258468 769853779 500167861 671582389 418146964 900447627 819150391 905224569 989507764 995687295 780754237 799491896 447827656 598963848 263170875 681880176 497471640 721538075 3029570 363158953 384567446 581925223 876115029 958325674 556988249 768679773 215643190 485817623 749020069 807307176 448634099 961273413 59087822 108394475 484938810 729262380 586748396 642448144 115439844 804846918 652440811 826880014 440278200 582829708 338010074 757449019 468467548 657696435 198153152 430484680 178215702 381450103 332890800 355191598 26879113 219676408 109141396 148128494 90374573 764256463 860141673 996917419 643084885 930394020 990953206 994814880 707032115 736889556 307300459 756141570 38831525 648786566 182076345 806561687 294540644 919604765 737282886 794058006 377145596 425131682 474894903 908720966 120754031 390738873 673227762 890635427 602594148 996727405 824447491 956107997 706514916 906276970 417937442 703494030 917444480 973295138 698243432 849891778 760381879 842094575 91931781 226697923 490730291 822742796 117934369 220939361 756062374 793049609 592439357 879891223 638132576 787076739 990068195 997431411 690644639 742348073 988918864 999319297 80137519 827556222 526381696 549758522 891094626 907989115 694376796 904347010 334373337 877970115 941931546 996712439 796207229 910248997 379739180 705259051 676136365 921585044 64420818 567043214 186860573 752823643 106001536 722712293 770365899 863117223 71489048 489662328 553455967 807114063 796700312 879989041 284930174 964858300 130702088 606805985 899557785 967734866 764145451 916202674 769959994 881561457 113382771 535906332 876372066 904766430 45691541 500465002 520079754 671916761 618714764 999424129 306021481 490227166 388931893 851747898 900945652 983756906 104792731 960941873 432372732 890725572 466298483 688498389 698746503 758715583 4025473 322878234 401498320 910927868 977350126 987975501 137254266 589301901 55740122 248335124 427111453 486642494 389364789 444936578 134732921 209582425 816730691 889489250 524281554 632787917 60356464 852964493 139394148 205988938 114462005 564349183 758142435 919979406 960050829 967787693 670214445 916232827 783614619 971660324 330603646 829774079 815446291 983395657 905767365 909930551 984187147 994407184 328502317 855022895 232342509 503587106 458517792 648227811 32872966 325536414 5526337 555082881 678038895 750408002 415443893 648682724 949834724 971049276 60754239 532134713 801394753 811796011 456994509 676927417 718987279 904819761 11481070 940085428 663873140 768968249 252414570 469669130 796712436 850100475 509818821 880181487 778070057 803744434 655678241 990185855 378891584 475642404 729606258 734188324 615392282 887050508 867787309 954920281 964286361 968742650 626338428 959571064 58708117 659970580 703801745 772346481 204710405 793231304 194915048 452080329 982594778 993105439 631221483 841268591 635228140 814613297 617277428 794592253 208011662 475143011 871745464 881936883 11993645 990615301 843098629 998672360 902815210 926156994 859322155 942415059 272895390 382896223 871782340 962645328 979709621 997497870 590734861 832192695 145709211 218816900 419115524 813818707 328804234 415264664 809667800 890961386 983198579 995952921 439703542 956193778 858246666 875542632 338720432 681708642 888444611 923092954 148100498 841160206 297498622 722315285 975476879 978254161 450887646 530770521 66895270 225170169 594422898 751467098 445687431 589764134 567924656 883490843 670802280 994797722 507066426 804521246 424785374 544817014 469761420 860997805 546531770 743390174 442960307 602326538 27829795 128454850 545172195 779915164 964236317 988788599 440451527 482221520 794030696 955115879 488292849 755819800 575470352 785126320 510665547 608696423 671318159 823804477 443543864 795668728 788369910 801282760 931226465 937298352 939583100 971822392 553550823 748661221 841401681 854613945 239795600 548611084 598731720 766069956 89480442 959371297 349455993 455019240 576309664 649010327 547343994 751239081 775057592 975831566 185168523 295424115 164499740 495182237 932200929 961220202 601972397 782632958 382945193 391130996 510608071 989355561 947113154 977960278 981680213 994759074 222367352 896716811 743598799 971264550 52746006 284126084 99569573 455846205 309145625 885010009 824051238 996374646 293205153 802376569 705264479 730599735 538221215 650580707 251253527 503853149 725466701 921447056 916593006 965851798 49304424 118973111 214439445 762891775 57932079 664874120 28126758 40885979 403595661 533620222 373069627 624383562 516444093 964081039 723024130 990757411 949054398 994577796 527653127 605728461 817072948 855556391 150202741 429895503 457891997 903305629 807701980 968514226 361455741 769182781 350576404 897230053 232623742 909514917 503103403 874451945 924680135 984639210 773827138 786881080 550680070 833733918 541929201 557767234 579029724 619868363 580131915 892935136 32116654 965273128 195315600 235236973 412879038 666661173 740516067 940896939 821055321 951110497 133576499 258170065 596681480 951325843 771298451 838370817 974030636 994759041 558162663 913043464 622219544 663054814 824039308 857740217 160178966 664924746 745441065 926378570 942861681 994491120 660365018 700792003 261123174 360012713 427244089 717838527 848503019 887588824 787968823 960416985 594042887 821204201 314470404 901198911 735470835 757359855 863786092 977782227 667606178 891144274 567567145 916717156 425575055 822133754 473475470 834519765 684990121 920400707 549649141 828036451 197763973 841605888 378862812 487284998 209116067 534262842 631699580 936173092 198262632 980518786 31415616 710456439 104824304 809755485 506550193 557161747 735199486 873391672 789826911 999726133 763009146 902658579 49043030 903523999 608205167 930572510 148059820 497548658 547979673 884187484 945072495 974189778 343425590 730375489 885388441 918492083 875008771 973445367 324847018 485445111 834499567 844947026 695056120 934015363 96814421 391928957 431564251 561787038 976931825 991258442 188663012 277573828 512026758 655760436 924369343 967028112 399601132 731007171 77095297 630967591 858229913 996385593 925185511 941368323 641892703 867927828 239040178 438847220 669058777 782932319 7124999 853977698 986074361 991768369 305649245 515682841 571755486 818265353 574794480 620079982 219538496 432273845 186106989 348178849 647416508 848787972 829552745 844539936 70395446 724628289 18700311 639931883 415625290 731912432 873218775 942064292 529569412 719392122 730171295 924256348 463712368 627935657 754275128 988152321 766115096 889061543 923133538 984203364 446906511 937090151 348174324 596574325 959514098 993163223 288938463 866839552 418284798 514115336 202367372 318611012 844739077 878546248 170030165 459661127 264312487 656353399 767883945 919663510 763625500 932170807 172867637 406795677 904869366 974693012 185211653 703353567 747555534 975132343 200755078 883005090 518740148 573243187 956066042 964704082 523653569 710126818 52115916 162642212 390383784 902737798 465975403 472203000 10620658 868287477 680492122 806779963 402224631 491208900 471823255 959257027 243605641 297176827 748103943 881992236 162049351 607959829 302303377 753646298 712928559 731336440 692987153 825595279 257975150 833540017 9451563 653724144 247479344 307270611 595862436 627718269 460827308 844264750 788380366 914736792 781479537 786814508 611383947 793390968 445130100 767499216 981866984 984247850 244758400 946564454 730448551 875597686 292726786 570018560 354515396 522463240 868117539 964235495 475187816 859347559 758625417 781969945 993214702 997933895 736978459 750705616 906242838 958245436 819940455 997593705 543814486 856165724 50007894 709206449 389645532 810144794 675760608 722171626 587987206 628543570 907076266 998293578 735800118 882106417 841569816 964317890 471332777 900927417 624728068 662919992 501688718 517589093 350432538 682276538 435718357 489521031 374812994 679527274 12673779 398241996 489058207 654504062 801326845 853556319 258162947 410943442 745402865 927845854 688723096 693153930 346658344 444612391 536918232 832693707 730633335 983030468 387627668 985393197 309684099 866451011 832431011 990729083 392203570 975777865 33480745 316929179 507426843 702951897 559186860 728650083 80516616 534116646 361310208 499916966 773190000 959464068 817099611 860260056 379824768 544237014 301764676 837880697 655005530 756002396 803306703 988361320 357065933 880053907 940667115 958023911 443409519 625448702 535259503 655748435 208406332 347885189 411085382 511689711 727243671 961178276 7549012 16474478 730323624 797119991 981515601 998363566 564779792 844262911 207014439 702058875 294759647 938294237 501266036 806996274 293519791 707431250 877109230 963843100 247467949 652254823 228681274 913292500 278158756 615476835 731308880 846799196 268552012 738661074 347351047 860182887 502064109 518884774 892410953 983691826 925588196 985551046 846958896 910204682 538977794 754067292 578009747 866838372 252875251 319830736 783427197 987952615 397994677 676898638 913654638 936505874 422940137 968350388 1476993 232317488 501499825 873246943 100446744 445239010 807893429 870963969 900059894 930739946 844532098 930495070 823889414 940613666 678330808 935079191 131296751 579994132 75271187 448404097 161912072 828409139 628186865 885129978 659203306 845081579 868637630 988640267 459514362 902444547 426183217 500221706 819249125 990291559 652093424 774200455 863573624 884850733 307832192 673636169 643590997 994663135 229212883 249382157 644752642 924736870 999863396 999873922 430744832 562292592 616967101 850924238 166393017 898092303 924376800 961795851 907115194 939611717 9074380 785615416 314842952 847498979 784471625 927370904 956705840 981782159 26288009 452887690 129272879 291152325 298707999 766876829 470288607 661268019 313025527 967696826 212504859 848042684 579278906 622541701 391905662 692119799 512377916 700673118 366095267 698222914 757379477 846554652 640040246 988298930 200495910 998465079 58777973 805309832 915694021 983235260 813955703 927909333 386907426 931289645 718010586 898850996 892435851 923203258 429736144 810235957 487270912 970710180 36029310 290364701 329735595 548340496 769503905 925344869 385892069 901429512 330764687 549271349 555991348 999847347 281274041 735320187 493054515 921278910 150809459 208819881 965245338 975590223 770392081 832191071 808757589 881639712 912773481 975415221 555709038 660542525 308295481 310575105 930848105 985320376 521341578 781414701 342975020 808026296 772888374 905256794 710909585 954071721 68411246 923695984 575303517 601870619 936417652 939670257 434631271 994474907 821945929 853841462 117414826 685472673 223403839 808871681 406505679 486364571 954185 738283836 958375857 991835890 192649040 440182343 793949070 900925775 525431628 631894855 25157181 608535227 870147021 879413637 675885321 776124666 514311925 751492280 387414865 497329830 981119520 981983565 100314590 436460469 95164675 459419961 840528366 874571363 38786990 276481080 352896491 946133938 884002545 919782941 402837455 870443965 475610345 907625854 877934604 909591770 91729240 292704029 559921226 833067708 716749081 744311378 318524754 694123081 763478571 946112904 363756417 427388940 89509223 736164712 353082588 699748907 973920041 986463673 507305413 621341462 706867524 802213992 50225698 141296722 712663636 972269566 943564902 972230714 113532527 894025231 105361585 914209529 922379851 989298793 555478761 672603923 104684268 290038867 155757986 818586143 881069668 924587608 871440634 906725231 314286535 516392090 100211353 963723956 240102584 520382234 352346354 782944581 288876761 513165321 711545816 712691988 574921192 990218998 366725794 894283657 72792390 877099665 353031703 476214495 156347940 257042558 161704102 611935163 720917119 773166853 862585983 994834555 224121356 355565571 473767434 718589906 584606248 964295687 755466533 854313002 654871506 949990062 314488808 592845908 338200012 767541667 441169390 658704747 536594597 785195814 324410702 438375041 75826923 245471744 898237427 959139226 149328020 713638892 439563074 624810901 607840624 800198331 861063857 916213589 232800419 654319997 30286467 649613418 479662331 855365391 220130059 519404964 646412710 902641331 132380568 832166216 954998160 983714733 975545084 979696355 879400971 943796848 75780005 650203101 616354252 940917995 191528367 994992689 690503658 853457974 909047107 933738694 561674782 927727355 767421975 946580672 233685651 480378968 993492070 997347035 450798789 714068385 436543279 438317663 848766880 857498361 248645475 294086262 443348895 552382834 916435179 929131280 299162829 502188128 588238854 835954896 918883396 978682681 81740178 859086756 28374840 146538629 248609735 769391774 21337406 913836934 592426151 833970864 205350702 995448467 738456791 836602160 670257772 866333449 760897533 822137401 849579691 888579680 689976018 755222036 682949132 762129712 723619248 833807259 666419800 716718722 501449478 913644062 779043607 803214694 288289649 419836691 280705971 433305844 205612853 238601412 921983417 927913609 208754285 525677645 358081134 473944895 505109718 590380526 411243768 975848108 233456492 363359401 890402106 985217370 26728045 130795100 454274025 799151764 890508799 940874248 50851965 650223446 369173040 432977958 13902371 756670068 905962872 952640032 812018118 988871425 128121394 897598484 513617429 914817828 411079044 495815471 824213291 926841390 629097255 641822202 358290394 448146329 337115671 392734648 493195366 999085407 680200531 897720938 73792040 621671362 456145790 893539539 38563319 614453726 876844395 977766521 239933702 865725042 693861345 714312556 829799594 901406298 395274234 550863405 774804656 908683811 448458886 875762292 793248656 969238727 457980532 927014624 801294188 818697012 682265363 810748349 555179744 729603953 473974770 935071168 179481586 968156995 321424666 891639680 231708320 817576837 495626943 894508275 581551377 857428403 441544731 844844130 244490974 418139311 83836569 930556387 502796201 920922036 212126442 846466038 70381259 909461487 570037618 725721310 98083244 540848945 813154871 852533608 36150535 260578222 338487600 408503441 137331715 521963340 287391770 676661700 426695260 847439202 287232065 374429802 25582757 285262102 21233297 623972098 861727184 950226749 629016698 993660931 69173655 527240502 987896418 990272343 735237323 887619319 933387397 967623216 851128868 910368808 770506317 893634878 662076349 956641933 204888809 662918201 627764897 956852811 992506395 996217798 283333454 689014216 556187822 876410271 518361696 997233518 414182565 416675259 105663233 802742805 656914865 658485922 549681294 552013698 826618082 894629197 730545736 910499772 450581695 928363657 336680682 665084604 987829488 991982939 419354701 671784242 285187513 661352602 804694214 904438444 590502961 804872672 629626019 881908483 870304618 947078737 539711063 692414726 61456361 615716240 805106960 829504423 182688500 822327525 998295397 998439890 765607949 857106980 850844768 927210165 685286134 751515263 443731729 882171908 656251834 952481388 883566107 922772309 61586646 87474074 853727243 906960341 699924973 745481105 542948515 962906520 600589410 975496796 55435867 260762725 939603082 981245740 695006711 876372302 270131170 996427065 615028609 991535199 19945237 381956232 751967992 938561986 459454668 790463694 401949167 496094854 888862156 906941518 675625466 884131537 595918228 802057546 882948165 979964610 219083234 306285697 917314276 935939299 958411295 991407668 56227173 970730148 825213597 865133357 419470662 519460264 574455913 634059281 86505244 218407771 989888218 991356148 666646867 987780794 699458097 992479313 994473965 994922349 610902748 940866316 874038624 893674183 916999839 992162485 423576776 647785948 982123525 987327794 757435672 788479527 547906235 856382570 185944475 755186064 527867114 801341900 385899203 972587026 72697613 693508121 530322541 777893409 900489098 996740239 743662439 889981467 771255073 774396254 960594758 967687740 628935203 807469511 121451135 860787417 486602336 855572703 79345039 702262828 807931188 896087100 25787909 813920541 622038642 885088344 194089313 791236233 646359818 971925359 977469010 983144090 364503797 426164422 593467335 985231810 430446238 579471007 396480630 533514340 963759883 985790197 895936851 903086567 846832673 906120342 348687601 441333996 534060051 796555490 596935514 699144400 310927379 650952039 614126314 862915271 830198903 936745668 53504291 579547781 35675410 311631003 564625079 793833914 886007293 894087291 179813483 895574017 857767938 892185571 269419314 406259743 281148191 949052176 391736771 753646166 571853248 839228669 443988952 846851521 759032729 809979599 33092288 305933277 586874440 872984993 291652307 656251972 220906659 279531272 657163882 897262029 444175482 671153232 234404143 781687255 623720306 868337341 857464030 917653692 493101531 817286803 612712111 618947635 835684528 900477974 862849179 934322298 895577280 913545835 762015703 924623297 26799872 729829549 938268536 985499686 526231466 631189422 637307466 709468170 46169655 99181777 545809181 545912428 97937483 664935281 481551194 862918472 286838107 632303121 681489121 910803498 120803386 326189387 934149061 958977883 20985483 271729559 57422932 529527847 88774967 282239860 111950954 357031530 589383959 965533989 144479499 942498512 957798372 988355936 181747923 514543207 511309174 632976596 641923624 758263264 1502570 139042448 169171140 834290327 663194216 999069241 346243315 842127159 164686968 988010556 503084178 777909337 715344263 922028857 4106654 645939038 57394677 698621554 160666430 867297919 172075675 830051674 209155375 626883335 225638619 466812880 644867057 927107839 347064621 643636734 895464087 971259818 473404223 939402015 769799099 966617649 53285115 883131687 871527572 963512575 367029703 516497335 110541541 183860267 715016477 880017294 294692220 642243441 624488851 741176937 136115786 585433891 177372313 381337809 283282385 960676249 834048261 838850136 71607921 900857290 665000976 912411839 544271487 674974516 914251498 923126046 800925151 882386281 543690164 869059547 910150822 972905987 107371893 923208832 754398976 779417050 90127155 221577438 738956683 908335716 326670712 391916356 398627967 425957658 67117897 348919387 896909801 941725116 775872573 810720900 693669501 714511486 153032783 655954609 327998270 833079723 958859451 987578777 780795732 923401907 186308042 240969234 194105514 740748581 291243251 605148001 100214308 437740183 744832147 804517914 740444211 853152068 21470798 522859615 450019537 538535913 464640214 684332824 757904697 890930641 400613529 993608736 187677986 835689522 677607437 745361657 911556628 932872083 237416406 603531195 449396577 554477621 355046135 557765150 300707385 623601247 114650703 928653638 858876462 872836309 601442857 644447613 472257970 667065384 598569512 941580528 165729713 524606906 314016780 351239933 875894087 919594807 877031677 995889765 776431510 991681917 554518537 651804223 349886542 393725783 710582756 747248303 212704313 320008036 743015434 827878478 248324865 275028817 163688032 772235895 737224848 917897503 212510163 934632869 580056011 745027580 907333922 978491835 466999158 722708293 935887633 940545599 716443477 985512296 567668799 861706988 232760124 276714311 452526314 856793915 823044199 953786359 67035925 746039315 691227292 811543721 625686994 672249423 417599307 856805532 518590146 684717221 547773939 940245361 287797802 908513358 296680377 341915069 639070338 781395155 947906163 975142138 574847832 997781148 351728113 580713059 436980342 592518587 524993315 693885793 421438590 854070791 140348971 860812001 914603306 982757961 214129919 893594421 64409449 366263660 363258769 523820460 911617392 927487130 186468471 670788845 769992901 841045281 641137860 676513184 596398987 883002937 60854699 95382100 856857369 963004216 161008486 704918731 487231026 586019412 841022588 958226940 455650353 995460830 807714265 824507248 454530738 679661500 657697944 748175314 844831484 926450690 692433225 890753337 266596724 441722925 894041610 978982130 23850373 93976647 999540378 999980863 8397770 715844536 32463565 292310001 526506166 526742647 477519920 656687137 826453544 859082071 598220140 873345207 915549251 916807721 469156407 697120399 137386270 698277729 368790616 991032235 842124795 880636201 669198860 841414575 283991976 712802057 512410017 759588957 406276211 884744090 909665492 962789333 551892393 746924386 251484539 818206745 31784705 658505769 670396752 756775563 614517053 987508701 451443619 752942692 476835458 833431454 53184295 177201329 263498466 599357238 572013331 924930110 162081919 819387157 308722062 387128112 49777980 604228312 217108463 805541504 933975565 979045004 641446862 992533061 670913964 705544100 762469139 935444588 649578285 652639913 535495857 982465944 43665586 821185049 389065952 620261583 798041340 945887548 995237243 998487470 198741653 580546107 188272847 536850941 447521560 724304657 318676600 841441442 896798490 972586222 415050910 915745807 114850608 678823391 872912243 917511442 474088529 773929973 613717776 667934416 54321349 496052514 709125440 948424419 725213954 891059850 642366652 654766272 19198369 999382422 413116083 549155114 334055550 380330608 591375653 838111480 855280536 984562862 980013655 999359074 497583856 541884245 967554648 974369578 665221189 791416519 707958012 910164892 382244452 878547807 874710161 992975639 845733470 858580886 89006836 595046616 684580994 980772352 814417815 998229234 752122895 923092949 525865254 663813672 245114465 403144492 317749670 420500388 833600 543319034 676236575 820727536 34498934 967273268 296268852 881922566 948228749 974838331 66812858 728093605 260901172 702177812 316944828 524318904 4022376 626414583 580756210 834406979 532419982 851230522 572859930 793872092 805537014 999137418 461108882 990476518 635838439 803727757 947245416 962043143 518705903 924776681 999003132 999767088 528987830 769519237 301116962 983107842 193848081 400293967 423572688 529955277 550061543 630827164 146716129 392361276 119789577 299325181 313064832 976999634 302058809 344384859 230616125 377369416 286824582 408416642 507706517 959201394 567911934 842922572 318402958 747404155 899516593 976375351 164352778 189628760 416148439 861720545 382097099 472942274 495158477 943046057 62744359 499675495 630829269 952958712 322598591 381975986 923210680 925623022 241449632 415158731 779374732 842107438 402459688 929483495 189463795 991111310 387476900 903896505 173834333 987759174 382989276 421224718 605898980 791325693 806453511 835480808 295559541 637514300 318149153 926746184 721508119 877796951 892988651 897472944 602238015 866180538 621900781 652320563 697699790 746571804 703691712 998379895 689702072 711242057 880383591 896656196 958310209 973113750 376026724 832079994 738450697 818134107 201720866 674570033 292494693 597813482 870931583 969784063 41907820 699675648 544689827 711080832 677982284 793393922 716037312 824127062 315847386 944681982 695174368 969375832 489713483 518430784 779361676 936935914 951495897 966928103 648502704 948938046 108126007 429610564 961113184 997730911 579214912 912108118 586518208 783274937 592830365 709659163 603794964 864588461 349536925 820852876 852852586 904711955 931302439 958772039 479408532 989292713 487234176 947137516 844604848 888387417 827424302 872045366 851442127 977602664 799166739 833386245 43665456 668701270 712028421 928651611 215659982 353287162 586649952 802058052 129406660 311374776 600747780 706290426 450295626 908331234 188720710 460942680 283030470 292289334 957255590 998631998 870668090 900871425 306274871 323888092 146173873 190595635 297743580 831291127 64816889 272800200 392025448 955787843 669587065 951984830 891690394 959591078 433248025 472731038 992351746 996483104 415082601 427324569 899351240 953978278 66222819 179569859 804533494 825713217 481296832 900927245 595225064 710019182 888720623 978925574 409878019 809092558 874607027 975458158 595078120 635474060 451296766 973428457 649612954 869013422 190105240 662094972 149736228 508606202 482333521 919555448 71747610 102704978 308848397 843727110 868808552 905551177 10737457 334706737 653991964 724236411 135846509 668343233 926582897 952038832 496966573 740479334 450593157 683263776 427275619 659368398 428547885 441874415 814544041 819480455 822856177 945761412 288471039 609087310 302014823 728706581 489407149 660905708 682327906 951313891 292550425 865894209 872282700 889335759 58247930 723295483 238477534 543099930 651203424 680281163 40595673 806310448 508514856 676797538 165864124 707079956 395613642 475311219 285968370 528170029 899393335 905211136 457175975 558636128 309051211 659317358 966328665 975895550 244437874 342936362 358232589 572527371 63110099 313261290 93274763 548733186 112151480 812930301 999767334 999810505 858828519 897019686 910812593 915828266 992798521 993281618 262211591 860151016 4423466 337849798 766012411 893785166 749006023 968593020 298133032 821918674 273839997 562004913 233041117 606290795 142257888 802988546 616302213 740359037 184757960 385146938 108393381 855332872 331934836 666604854 608476772 726410500 430237282 673976627 472045168 973364146 908541379 921895414 160880366 887680500 765560948 798668894 629020489 743493628 983185454 999673139 177646295 469923078 640228108 697734126 101493516 653035332 568321064 973188071 907404050 914359253 805024742 853497226 69466432 943675676 714303742 768392472 63758755 570106816 328485177 667703589 799097424 973136596 166781752 529469082 88063503 899789813 136104290 741794103 26750063 704224291 351652166 879815417 439986277 898212273 142403469 609057092 899032530 925851395 599074587 660248739 38289704 105097034 35179663 489040431 789677956 973051660 881594380 991351050 780906309 892811634 846737468 913074647 497659389 617197518 287687026 536849549 867116523 977606922 65944082 847774704 869721371 908699600 988233730 995578297 6341963 547591763 2977166 882506822 116347809 423873743 455267411 788006750 465177269 827613847 576141889 983559637 505150787 880458500 546434827 923269689 147216715 940822436 652362136 981224129 656566932 866528949 228157661 598957076 350013920 924415265 893239219 971674726 284027472 771026725 31571372 841222582 291534777 570830949 60075609 515273241 209048983 711213310 423313522 534035393 114802683 385592520 948808948 967063709 650980753 923185646 375382785 538368316 137980392 665436372 793294464 936000592 538471772 673467589 393605050 396586667 474026122 946788151 940622139 981907735 467823151 583916620 962060893 999082200 346275493 866314709 521432976 994403461 941424687 959787187 625579065 695462387 891899465 946658391 788384669 899293219 507584352 861285577 205946454 444805488 964258269 985082211 629179837 629321357 26899910 240506391 427933394 914309507 289379918 842884839 494515339 804124233 737734888 890522513 111237692 883161438 153189289 939237880 509984177 586951032 988959603 998670459 516072459 876232800 193853015 646760704 263959390 953532220 181759242 427238252 214617648 975603433 83829200 579656651 178868608 660542434 847951227 995726225 955637006 963222406 225929764 318769716 659638533 664914413 51784761 578923563 55731311 963152794 849309785 988263917 784316586 871693878 358835031 728883444 958303001 980655790 527539214 836728952 427987797 783055696 934664579 998966851 206526843 686662597 396032999 868339026 397571691 750834086 131245928 939065843 172941504 385335571 881790900 894376013 663551428 919627295 696833558 810630534 372397468 435988786 136538358 709669469 842479694 910445670 52508493 77992774 880448940 910260210 604031151 935529700 971423217 976693218 331746294 478515827 367570066 882324152 614531837 768702369 681208165 989457449 86352129 801403241 642082861 706598335 902310844 981369706 104088569 835057589 522435018 748796046 213361139 298348304 866233508 979261344 171805997 273033705 379488951 558799596 975583678 996460478 301137759 894737459 451363360 615718179 987801918 992986678 760725075 826217930 373120586 827819450 250090308 997441209 628285155 732503903 614328069 955630366 429044724 698932306 354245718 941665674 770725467 868859696 965083194 966329027 704239414 834862285 73395305 794187109 556970852 713140842 781034534 891127087 837437012 976964130 299663792 847316375 801987890 803499827 822950075 951117811 920800733 989493610 861943929 980380937 534086973 701307472 352567889 655370889 8385226 115198694 972578119 978134338 557100032 789029561 349314907 425240356 674415384 759768227 683882573 956706282 148720417 906198856 17857387 407503269 287289088 828386192 323151504 544427019 988146316 997149355 33186459 97161899 454983601 981217148 933544781 973406626 912967995 952736835 950417062 960693142 333104987 729466996 543853791 763256292 404952655 626410174 765449432 924157225 841240740 989372475 918892661 981903942 578762540 776726667 984695384 992311244 407611999 603032521 281033496 295235591 138299189 192860019 456428959 907432203 42163017 481135174 363365425 823516648 599392770 611217533 348276805 439360290 761851822 946288018 277761827 668892362 56981794 815298031 66967848 430190712 830290727 929675747 353159373 996271871 424688608 947060263 192287127 528769952 930247486 999253131 231750489 283759042 62741060 332182092 706019413 825808232 608763313 888370397 503923107 701598010 135449750 797640988 835722952 874805875 543926716 792745496 77632720 287421820 82647736 860475001 626600530 800339667 866300181 978091176 59084181 98672116 691481470 706344222 72813991 171865779 905333221 940899427 395278777 891824922 414688939 902074074 8614031 92755747 694955081 828345265 875156916 914898509 137961022 995844480 522320515 584313014 283865242 361545525 495900147 636467561 744644322 823863577 733749739 748447672 239604683 974741954 910065379 944919282 221754761 951578166 176752109 877508311 118274643 935013788 741352904 873877831 225816856 702880736 612266021 952355166 887902464 896582374 170610879 944673465 35186765 379414078 854670609 857789749 142276048 192138006 584260755 737763040 433265150 784827350 629224400 967239324 981220020 995404605 777150515 992215454 641684779 672241697 65715594 623460598 961418298 990503749 587952671 906910456 67978647 365962217 184664265 897290605 865804573 873152780 332229865 440405453 874581084 914582218 935926020 943643357 778347619 789979293 107837249 643510792 602260391 650982629 491997662 938475889 44750820 619543727 750056189 860009210 614630820 618158209 562260033 731635841 677114260 750894189 638953941 878921762 344871142 760623528 797887589 860085811 544613217 796338272 191280470 524573951 70385140 866943531 75171411 355548947 892518243 983811487 309956618 847268852 934558118 978244977 86543884 692655913 905675127 982207736 293595459 768609618 776428483 960609821 244418298 329306586 931646806 970005527 738339817 839825629 376712020 970344490 94960648 301454452 614120210 704179294 511672086 827532156 19220995 173969441 58348700 596546057 991382747 995450422 868806699 927623276 444397930 612578565 910191432 929666265 566792639 697469212 625942948 690331406 721763562 753727023 90855353 629060086 485829955 543805333 967014086 967449897 491683869 998730546 932721721 976910625 543799031 779094009 121196367 216856830 194455471 809862289 451444166 599099260 66467818 554252608 45733700 528683586 794381120 898190514 264457994 269367692 340836703 611827785 514697954 544828451 833234644 888470635 808984612 836811613 696596730 986365520 35639175 327610273 825355626 965377703 690325440 765041443 246900648 635157521 494910764 740199397 620158208 954950415 648653316 879962653 655488323 692337125 963644249 970471476 222800194 240041009 190116338 518266481 87786819 768041146 297217038 816867593 861976966 940549568 327503981 934982071 247930620 433575517 738976151 807852631 51123227 434809589 236265220 862455052 168412102 721065769 651346902 841282814 78902223 566335317 391019721 529990272 621629951 950939670 995126990 998258641 800912162 956876437 78839777 942799959 683943248 917303762 262177409 864228829 937081464 987515416 250991934 941946158 893520268 966699698 598117772 757693351 430937966 727705085 697928465 949270394 38500204 129567066 472911386 595075229 909274260 970098864 720488648 764185467 641859023 964530509 913230701 928875172 674191704 691174421 165917340 595731010 58777866 501136933 620871385 765812894 260639237 963096205 298266030 619189124 962683533 969552697 590922471 938384354 539563772 606204979 886938672 948108356 448106809 681357911 217072730 335733664 471162855 482801845 655752154 851788292 912568618 948106816 833450066 914599685 871002596 974614960 602018511 653344783 57368305 993559809 988314369 993225255 708280931 904807335 258114497 623613993 845160179 899222302 294761115 845656672 380461413 463231298 599858750 928300517 296178206 730204843 961514283 980235384 928874220 953382805 515762528 737825348 334243717 927584672 731291676 925979647 86638856 391132349 462108455 506402354 373243578 574516926 960708564 966535094 573169208 653376268 672056439 998674983 344609857 796295840 280845386 355130947 441817872 920546675 626761582 815543930 961141683 967581762 217648260 486875394 151341385 521283493 13321315 101504681 197301817 372226017 686540833 728600426 332098094 339509478 451293883 768745956 809747256 809953967 382347202 972007525 269126975 282991159 454808182 764647677 406323352 751790957 849226700 919217204 579172918 638058465 937019552 955952566 337118385 495012140 311778157 623791090 746160772 801601055 183433676 642069970 342097801 398672140 658543432 944267234 218465852 280731474 875448030 880959109 31638656 351213005 745936134 791506104 151245392 982719892 942004512 945220913 940787480 957879167 138386266 197259642 672241306 867447409 617444603 986278197 590628944 627691024 447211328 528931382 350832701 613594202 257651491 934183742 808354896 930997976 677587696 992646259 109379096 605293978 115723518 645365512 191864555 511755312 203844177 296057517 350364458 649130886 19117835 722209760 279157467 448327650 628063965 877712314 399819729 710029674 366053806 687947911 379879210 874738418 928514726 944252762 485548046 857560459 39531720 425132524 285562307 357780055 824045478 888769202 294494263 308896157 856130333 966354474 724857495 955288421 968182512 988618242 273786388 414962636 843524820 957126441 736941279 939957212 468568092 672979729 941671709 992785089 160735576 531491801 145433443 621635793 409079193 657576192 647434286 760140371 601460093 949180097 805123167 923036268 667106969 782218039 165231641 819404227 91018884 976564866 830703307 939750819 641929343 764196178 181286218 254846985 743100304 949421993 469794352 517139662 578573222 902015517 246442555 566174889 226002317 470516223 610027511 634557929 511586112 632164708 356147086 554167384 552651841 976395991 431010049 554935565 56587573 815151953 553450965 676173396 76323427 619634367 653735010 692650636 857392492 906270542 32268051 61975113 459828250 557669882 423560127 717073408 18654216 604519113 635869528 811718118 329699551 693763873 456907525 574927454 777900406 809010786 612231640 983304593 481135517 558419884 47083059 287590907 243223946 287651391 615715910 897591845 960016461 969913632 200080632 333873621 924371354 927844434 546039541 738310328 933077012 975698828 790313918 946677305 457043880 942610376 992466019 994402967 971204582 996167734 881336120 933789493 59939222 338212785 763189984 838616107 307875133 815259982 59543203 423736091 90122367 772268467 694095661 994920237 150100331 915347496 321976543 508774051 874369284 954632503 822931308 888822047 52954522 318139006 625255030 925047541 49991772 651520276 784448940 796597481 322916257 661660369 921685352 940759062 787124902 991949416 292417666 542892617 50038884 94692508 161756990 509947674 943361770 959257555 477071668 847073885 864202982 867221739 928141446 959125831 647908674 916880411 751983896 952709444 241667605 691244420 888619406 901656332 608779611 950674980 570723914 812850823 50603561 508196770 178035975 185938785 178457058 636104102 78545851 808262872 36410700 701132865 708484725 797825663 464608805 488837563 249960564 355230582 761698860 798028694 465565525 982746216 108196373 836240050 450957497 814604611 277394375 527004132 388993316 642715729 509897271 844327727 747216081 996925594 365128700 944170494 835674257 918569595 572954704 808960067 116705872 311960985 382170213 881955504 129333845 353947540 163210228 722200703 760448288 901305456 692027098 976224948 950877429 958592595 459030073 570563737 732435682 965039753 158943775 978010002 260572369 871962207 507674427 756748322 350009213 969456694 562608003 646724556 971918803 974956677 730149724 815564289 754813189 918289993 276835016 651752289 607047403 960467477 55097786 570969612 345997081 488285563 201566781 226590962 981021855 983432702 716507698 819474367 64211652 875562844 846963470 875485219 845569347 962046047 477194689 867491241 506860003 867221060 376139855 817281840 399799994 717560005 222233098 252858157 148087557 553447883 78306304 374225828 66055122 891809914 49571912 503711504 225047197 536104532 968787713 983736529 559681746 817288410 729992718 733182434 777661868 801005702 25172921 713864199 644497559 738994118 448529744 574210163 42165845 510282208 144991118 895631720 871861094 912898062 101663785 638708210 510210292 754808631 863272308 940982215 618922378 863525789 341792272 513493011 326541843 921483551 643450594 763376734 802588079 894337870 370162680 841773397 896471371 920960970 526150636 619853631 950846723 994222396 789575131 869304159 169669511 537543779 174563339 720514968 11676892 884048973 341525575 517780158 65995349 547187849 498626214 779251630 403754101 747457826 522141752 648902192 929842282 961756883 391405883 980791490 651423309 849899416 981404115 986844811 292479648 740377954 982905502 983015984 477956060 687184146 730415908 943738726 251230735 828172245 354106826 566233293 780182119 897605147 721114778 753161578 448420748 927919032 103968863 238075084 529105334 982451664 971421474 997755578 965521712 977577935 362107032 433984611 439320954 549545821 69823640 533078859 937023535 945473379 12839687 610137188 734736818 992340181 400364822 812815123 593861144 618336579 58132269 904614707 715026081 867227543 178902261 461587639 630093217 801251794 993171803 999957368 67260845 363625811 799792875 964215574 194444203 911037945 602997477 819180930 351475601 986374091 347181306 845610147 477321534 548065578 762356189 803381394 79314453 926119791 657490845 817704101 971604175 988461561 847416851 996646622 651184141 826720811 566505865 881735354 167115841 244505488 703018161 998205906 75096704 675277875 499650491 952594540 557868196 638162980 711132901 775282455 906457263 936165497 730270979 849885089 266815701 764229665 67924510 715590315 142186542 931553081 730814629 962509096 513256255 529155809 661460254 718215755 859109141 861664743 406171089 791451058 155786583 626267303 295196309 490470389 616861832 801497272 437463587 797146623 192238116 792143781 88460389 755422819 957288065 969334842 853503278 889050399 902595802 924897222 194672794 827611816 134118337 383406126 93624309 376480696 985400728 986111770 259911562 575081987 214483888 572978485 459613733 814182412 545096321 792399008 487960664 797273792 146131263 809221726 944946866 950374872 485817921 670704837 67816850 247136473 702859907 935759521 984778179 988248355 406595766 756054292 332574283 635298497 322351451 599242744 934980372 937530891 327724749 995081518 9606999 214159262 544088728 713265462 856279254 997724989 24838320 697280128 760442615 845786115 548888619 635382090 13787712 873108548 280078136 364110890 138025448 164181543 495703696 971524937 635496755 801902644 163811990 294838830 417053611 763575577 387930650 522553814 587616939 905808459 464671427 628969573 235887319 569245062 862803154 866211731 350290758 540192696 498839192 840201642 13327086 453274056 662606621 778417861 997787013 998070780 428164080 681928885 562016462 734075481 579921985 712654641 975646940 983075475 827034955 921646760 13816136 597138521 483101831 767816541 358783743 936489830 436196925 552492152 455062168 726867882 782985017 870751394 545675165 675062784 531110598 935200829 922397490 992948183 739762539 983854015 771979437 998673687 637883264 680215136 62765036 248131297 55210884 351297701 406638439 576346542 753269388 949060262 148006938 827382652 261328372 767487663 12043352 403575375 930467731 936857344 954097529 973288164 474011156 639035142 954312191 968074064 636722896 910810149 442232939 754287677 273917221 314070079 748681695 830864308 428410195 584848948 470553071 926877363 886486787 916704214 708067621 815367486 760712777 830461327 849367333 904472810 488726771 542160221 167139181 834656845 983321945 997347326 539943381 658995450 21572397 353915161 730608099 977428781 483229501 774629100 499500854 691845612 34674779 664783893 950984169 999442990 54792142 364504423 171827213 852911922 426517921 819748240 313454100 750485238 292881280 604514484 119507178 284773960 324387630 708732571 401540000 589366775 3450742 47449838 864180080 925106931 585610401 870055621 916094889 923072065 644986425 758901241 222321490 774195984 522364487 640003779 926236685 973835501 615961634 969190191 95802813 737046442 912291223 982702488 956139399 989026910 819450995 891134608 66123048 764112134 280414432 784063717 568579107 760503907 362523806 986810917 527385732 920226288 854188884 991580988 410094967 733839200 620054392 761445507 764113814 786671493 989980231 993104009 727434778 908488836 460095100 871405651 828786368 912176889 91931515 783871612 756751984 902735816 110810316 382294017 387298414 749172275 71474615 345658310 13496214 928361488 575746442 764121923 842241328 919304623 843170376 970729247 703188387 779310843 339325139 930927739 508497771 758933170 638631798 668183452 536311074 879451497 215810673 437531896 18771509 172302778 775187682 853644913 402059469 415855436 615787799 626775676 137479869 675134128 614649368 737962014 308381542 835066337 358077644 369972870 91632845 118179498 620459036 819473774 372346965 864331745 524031984 950613807 719384912 786028433 602074752 799860070 32330291 403373066 449352519 920159231 643588116 970734110 733055562 762834295 955783742 998936514 459479948 755305190 623407317 674638699 6729095 714225482 485384466 768768407 154460833 714031307 665722523 839801279 742389953 798554141 306277303 530267951 280603616 846995526 626693559 651247918 475978000 618681033 844375489 932747526 312866760 434891436 909113133 934781572 311719329 406865556 701144003 743688713 819397028 918210933 737636252 761533758 773200977 867399821 874542806 876861945 628277482 927035200 54979430 86210971 615445594 716280240 383252493 658134792 333155119 668839761 564070988 976873466 385166130 464677976 971170173 999591330 752458531 990545098 960880194 978316334 20715391 268136089 758360801 784793083 375518080 532668692 746808807 847160232 749803498 881891356 683510698 687947150 601059183 627637593 769548368 872530955 642420716 727759890 869962913 943791406 412393151 772603467 115695617 577963074 11358835 930088127 633920116 994495488 561232417 687304172 949766248 974897945 344969494 888497257 196305552 763412192 613312228 815377947 532546028 988072513 918542124 919764489 560213732 770840570 543932322 653585074 905767699 979957376 936431776 998523501 930100638 971225250 758908785 824577835 607217590 976593296 637633242 653515358 156161904 428012184 855485942 869743394 78403453 702480692 158280243 734556832 141630347 756355869 495533067 989213633 880101644 969261046 680285798 997269650 687405516 769752300 936889466 989324217 967080728 988607817 1944432 701094494 281524984 364502209 365805639 947978075 926201113 963779480 845553063 869690617 435739740 648916625 477704548 743436525 830595576 896918539 644238200 746136321 306136145 379802430 757256797 787361830 834947819 953454986 124949842 620701112 853476162 913708989 590158449 965530737 927962045 939919220 928248437 966500286 510822506 928047566 515699428 976463129 422833850 771587543 687109459 987735296 600851693 691052039 518416086 655343583 352144036 569198278 618021708 679855273 350705090 710997549 707882111 938582923 883872389 990761100 339602131 594637590 640527930 848092491 628906197 690928120 659290646 930409648 639472042 966304017 269482196 767031482 234176788 803605793 696736601 729526889 233254645 360557060 366508162 518919272 947007854 963892348 800285233 981456793 777614757 905840294 49455243 170476324 770400292 847778248 188995982 258287829 903675533 992070359 878172787 967479399 812863149 901191337 956393008 960411084 739306934 991575529 811958951 872090136 444938807 857997901 380848344 397356970 380739251 694077252 378450074 576398027 421281274 466549595 99140192 457648689 162036193 895159455 436839025 528653818 677842766 679240240 539819778 838236335 108879641 514579363 612547847 624345870 671015278 673551744 809310903 966430437 394574325 509282031 270427529 272022213 280894103 932085058 586382999 689104722 564670376 607485956 127058697 661003496 562917431 563711289 769448533 957344539 281708272 416900725 605904594 916080904 347133336 637638127 964149570 969331236 272031435 663320147 860805089 873153994 996987667 999788671 571988229 709478687 409175653 915663801 335877563 637172384 588131384 997746749 969617896 988050515 660934799 813981622 77286221 111626386 504230723 608814413 676763796 844790036 200235708 923307246 569676772 589877011 446144844 494461223 637404059 696661226 24660694 515151728 58186634 767229884 138477791 477589956 404743820 677531353 462743360 937957737 995682011 995806588 540853684 627060537 426408730 883807188 301706809 673159877 724692034 738614690 551749235 781401873 79458298 748433233 569801661 935922285 66347744 703623474 893773392 973426644 760430087 869530604 609839422 623804565 497481860 829962861 321228185 938680631 10777296 301662876 143694584 654797387 669807194 981590648 738851298 805695600 272256744 961214164 51494886 848111410 504235910 515844177 180173934 729650833 823576080 867127060 408243291 569602317 134758156 787725330 517927361 835986080 21896225 211411195 268282035 918082275 250405466 933174691 632953289 690402443 851327436 988163255 198789835 362348471 461060696 855123699 656366370 803780522 353663862 551082036 94327199 558450362 838354540 864806377 913481045 922751592 476997965 606516348 573397534 970149440 69740360 560376227 774473033 986150505 679872730 795404289 903180108 965088780 90363509 282939728 540770703 910021796 874103082 997336413 155667927 840435866 134391048 723132513 886691918 930590945 513732497 798125169 788988066 944489579 438204802 910230788 786241430 817748691 777030867 897201913 174274089 766470477 797309428 948332467 559041844 776153491 883392490 984991398 530701316 601225548 253803639 336248316 875930422 887897723 160898513 715752519 199816392 673993540 875764939 894849721 484869543 935841381 990471989 993858513 478389234 792368204 760900887 801687016 632427548 823420794 321524475 462351989 564618647 808266809 565617518 783678800 342214481 530816350 387428026 831556708 427879334 896259815 634675476 661708404 543674000 787685894 46441744 530823301 198076735 812458756 192172785 724436075 367611745 699812832 422174791 493921241 540074548 628466517 516113028 653718701 241671470 766786060 378068082 570002154 3609545 158171861 91429921 278125255 317102381 530508134 233895316 440385091 892131013 945276632 238977429 448505318 870672879 884260488 953578059 996767543 541318691 567035284 17756452 162873894 86832559 941685502 130251145 251468794 858452343 902371763 633024559 838678409 408351673 968863679 888153712 957381363 740435769 777400467 843141486 979297222 196567337 644060894 165743832 194711930 918170368 953536805 466433735 479572071 974247696 993928162 781621674 963969004 853189712 896389609 815161463 925371906 195403836 497212150 946322743 973149910 459102837 535526520 397705838 452719661 303250971 396835897 789210103 870026198 708929072 969629606 232947005 766504658 173843380 273776331 696434072 697993137 797833157 835956722 999500214 999578403 879882424 972156990 779981081 884542479 139178917 737893880 889821556 965046552 970358285 970870973 270675888 894163657 473336436 516397238 127192875 717704195 52673081 523111887 723645055 877949661 57417604 365300588 995353561 995959101 7258574 433053682 432728956 852791333 876675280 983226115 96291132 198026141 496741779 867909835 217674250 575282493 676397614 718004389 539185729 657329422 696134311 812412362 20228615 73174773 520365800 643321260 29146053 676895009 254066104 649864869 693445359 822131411 49781451 82636811 422651053 567679721 947132722 998679116 612329657 720591547 208418958 219737673 313995537 701697901 801518168 878110654 290127085 912144724 204533900 292422920 712978189 829458041 181977336 302379138 678706369 905092289 178165878 334607215 576668283 788425754 596989612 727504811 960922529 974501686 809599235 826212126 378248229 386103397 822534042 927444447 630270585 663966432 832431594 933987842 341075133 807850750 65540865 461858462 93319899 326417993 59116652 223274050 622565580 715272121 967734823 968406940 223865374 681402748 149425564 502964469 920755280 998294511 75407541 896471546 563710022 722950944 495729231 560991032 595957332 912122690 838275068 892919966 868462212 875244006 423094181 565152993 167613788 599760754 862921915 903423154 545919460 814527167 8816961 116125716 911432558 976810006 732488387 801464337 590939256 653227231 77620407 434709870 299347078 418938439 692927670 746507070 766163522 953910642 771960295 837491590 532799654 820960998 401338512 500459103 549976559 784473898 660871369 715257771 44247562 867613375 53659758 651441489 575900305 967035832 660096957 910221432 402882012 581008043 697449735 905531336 421655734 629616952 946697761 957893704 89995305 777217821 295464857 386991077 858158282 944548490 358772890 881962796 135927476 337603492 733600817 955679883 492780105 853633188 291712052 869317163 575324289 833187117 82961990 964883921 840178571 971865949 736337072 826318915 565386024 877885240 490669686 885031720 800758804 802187307 590106436 599571830 197197633 726243326 154531567 754806852 656308896 743499830 475094353 504762614 869513599 927420699 5501009 410203442 124289355 710554097 918890221 936081522 115218641 365281489 336552984 943318556 469680521 602944540 372710989 473918956 563527239 807055085 812472921 875225408 445436777 774233544 153720317 321123383 327326118 961956596 277327190 286714736 446884702 803637600 590729861 905319690 513597000 869393475 51934471 632720743 889378804 919404494 744470221 914490370 519990746 996809635 895979473 936268079 206049394 505205224 9986683 829754816 915578860 948871772 345388936 669631027 401458220 843917951 289398906 765610798 378628927 548478537 394041307 663662143 886140725 996703287 840236000 925122166 364790940 837752943 522197267 801538836 437339031 505884240 39513975 761165570 495278113 821337985 968092749 995495869 555579481 740130621 630954308 731559882 702687509 949507231 197947612 978074325 162170004 387153998 714325295 813986850 371214856 937573885 216271175 709719285 718783644 982149029 721766916 835469657 974199892 981044058 420224494 693526724 707843853 730436921 275811138 743420644 907164791 933684380 55217875 920526339 338234651 645092739 547633950 593501890 764222498 869818172 489743709 799218281 933888955 947581438 905833908 938473270 394687270 481299291 343772693 463595155 755283967 952980642 120548519 715092707 594843775 961974183 66702263 370379064 112543666 566074557 335606063 495464178 747314402 837884326 305956250 804767963 89577414 258857836 705302345 797985620 649291787 821438014 206738020 718907025 342823093 602148817 641212787 643971057 772914415 813100490 800765939 868497797 588091800 912408289 658314761 738216099 27786442 81193435 655427151 982344553 853770369 942419697 596693354 785516497 288014369 396415164 505809549 629560431 242136593 364683526 775241657 952539636 470835856 744534017 886071042 955181401 969659778 974404062 670865836 671946817 244166830 727957298 55589396 632303023 692082197 976515902 8651181 524068847 565167100 762186074 909655946 935754752 779014289 779276987 929436729 996906815 506974456 512600156 936808809 948812359 323506951 666544165 249928002 554319669 638308560 882441179 207085357 921382655 861251450 880449181 47879092 581115227 127725858 513055242 572410884 778546634 164378838 433017624 2053309 204336779 115746073 533964511 377830162 927446986 710467593 950968707 296531238 296553285 956229826 960891539 178360940 702513023 188537587 981941097 989146928 998584733 112210345 309800701 760625805 772744692 177419924 772686925 511906989 991128859 771672857 923810934 141827440 159731399 147328137 992790460 599186016 602594397 304586174 512223650 219616884 589849419 477972916 631645104 563302015 881573093 567940491 951653362 65923840 696826202 391578797 515389791 99909798 470268318 430027992 521622599 62397534 901578867 71229824 580891199 972113236 989855852 91958842 144477053 752876691 765272920 35422551 414689690 317995231 874773123 382818311 948884931 769689806 867514539 988445110 995814707 337280351 374386270 129915901 819312082 820613548 906387262 40185846 306924367 988462152 994800515 669122713 994342830 728968685 729775733 101312117 248666143 404625359 593229678 908648969 959848990 937793263 949456629 669927358 821816538 27425530 179356910 393561072 854483577 249159743 837963621 221917820 501656448 794342166 960555320 924428750 976641477 577884468 921552845 724295447 889334818 24492516 545296376 300826347 313953142 98782305 763055599 492773011 603941055 599454417 945236087 93541596 433949831 757732134 769847088 518399279 743146924 600761549 932063410 48764225 685542716 169905635 698976824 719429138 987346039 972166819 999745411 523323494 734503036 945886095 977967366 425826508 891090399 352315793 439988836 973687125 998365891 713830521 897644762 161625819 549446107 66201501 818572026 328314276 568672818 974895821 994935535 347840843 594877169 488466064 644458442 882072446 972332694 414282891 885976393 648359874 952770645 742809595 916320796 179316881 918335137 786620810 969907395 920076481 948022920 160763984 340934104 429946046 759899130 938205007 980528830 963807892 989932398 707526729 853248754 246161252 272459584 905829729 931647816 258142014 723329368 204416752 585189141 409401912 902894020 88689004 460352360 627110653 931772245 774585245 955007437 638045979 690733783 453888756 469633097 259616373 310023780 550679724 768313226 824962759 990796630 11342678 503324880 702396444 832269005 98250004 514747840 811274851 834696403 269423379 986726956 22614550 425646220 565649584 610497642 736882882 922077770 844886679 996427841 510902930 788603030 93566181 683044641 660834617 768544542 839334856 965091456 134144955 320921554 730262151 861033922 470111004 795088543 318307399 705010606 277499208 631140056 641296800 840249760 714593073 895310167 69736482 815460970 852263094 921590376 411261642 772078726 62247202 966461266 363836773 390305299 475196916 721744481 593081398 893970912 525913295 658125491 948785317 959328377 8990211 204694117 810524877 850595410 604130876 626097113 361966572 601572344 413313130 661876944 311876323 953498843 160715871 185842421 814304561 839206930 45256026 369509940 384494229 699709133 247379720 905870405 554450696 754378023 417814894 754541392 560019402 878569945 564972212 981619830 624370043 788925506 973663599 978954244 292036333 824426411 763755281 920612914 775633510 873464753 837447927 931960467 444230923 860875233 791883550 871038561 514310850 601878141 990471890 994053048 86649011 555491778 316677145 993930749 486953625 783392529 32090813 613770345 748613133 870431373 149517895 305067157 398459757 802610615 332576957 656617489 377368181 393409104 361036769 682120718 606109132 974386475 22816128 593657773 126221057 726771149 241167093 662823267 212994827 879028120 829460866 840836333 513474148 699862383 624933737 667485096 283618087 569319673 323226640 835716653 489688211 565841491 452172977 788333571 767763150 834664968 17143991 463251596 758961222 863018862 323931961 632948114 517463873 860562081 797846580 954491738 362565124 471690418 558234898 597140188 642331231 795715130 880833984 938802747 338860585 625938634 733175809 828544199 790024968 938703106 63890319 288725771 816304860 886059698 243561899 990475660 235577013 726386045 584552132 885661012 919878140 982759077 855970303 859213882 298904297 893624812 624328349 751925490 968765596 989043187 415607251 541899886 677981575 771422511 178178737 655759900 470798245 833112756 878845888 944033123 223748310 315914070 10016440 146446949 460251957 952896293 909236836 912207349 784405280 937283659 876478662 892079307 182614634 502551831 621634923 683397899 337063998 706507444 971866821 997042779 119555249 817545531 141862070 565126065 768166836 916538997 346922280 782391709 612545864 685968386 191564977 926359871 163816844 921389021 191735089 786626037 744994545 745351033 645478308 877353891 272810341 801361097 874881622 896143297 73772840 120851221 46824118 952908860 733099009 749416426 48449582 897770297 4663067 515616132 599905600 607026321 900817318 974079823 216178524 488143630 20819758 974823319 754796615 842127669 423044058 966450814 781485187 794010010 645701388 872111351 516502653 572686288 637324702 917564396 665987401 835713082 114632913 641727977 205734100 654939364 805680751 809409254 349412665 643927957 773257669 965064965 312695603 860594073 208414534 578439548 691648942 987452014 122511463 392188379 89658234 455777473 927808291 935108542 119426852 827598871 337566097 682655354 35747340 44131486 768351484 936488869 213468838 996896863 160085515 722370847 329465213 571635146 183471328 695578788 560365755 647123723 566389849 810283315 201382527 411451126 263324656 417349828 443922931 932966150 996002791 999891091 620512283 947719154 540405433 579135110 62580710 689838899 936955137 937128800 567596865 831888084 185352613 688876682 890114019 976759154 870092502 883627574 650752488 661698134 95032211 142102914 45383964 638803753 593390873 864966706 282734917 600105492 91268816 207326722 587586134 770842249 691735693 944713785 299140479 449399802 231053116 746878124 259219472 833966374 779730049 881873821 114618225 120546967 28758810 938541127 894467995 991703892 524977044 547025411 291653899 903097256 355161230 847794824 743634574 986277702 78890549 721378960 662357948 746291118 45588584 959420255 4419915 814574586 644017858 752750350 634294439 851400474 207384706 727248736 368212583 876047796 195926835 277104788 48128943 964891152 656033700 829126428 165409626 661039527 758018533 859873081 732737085 992004303 575519626 917969425 776782305 885800934 94973932 646538361 531202078 802721296 130434822 526192649 827873684 933400537 544142134 662490195 681885926 942060669 943414536 949648776 188713950 344805553 176818862 950810185 843062704 920768778 964466452 988779450 589681501 912539004 61998917 592263337 230430458 711104258 571228857 695378207 401489525 662518781 639771486 826749280 919866123 985059257 735376814 969426796 245089880 590990812 960427680 979859711 349123012 424284627 262607706 634658744 658129888 850657738 274848726 374155197 512874780 738215379 877691241 910844357 196387440 325115338 805655614 909954912 25571155 263355179 357705761 464971750 286286893 980784474 710469108 999130399 856727408 911193049 953193991 978461258 192077678 764610517 70376390 525308801 349187073 421637714 677490794 983798391 892324469 977039733 166342739 383534496 576562046 662084162 858620522 954744512 653406482 865516057 43688463 978523367 183951632 476110057 166542481 303221210 614510315 791050759 108534569 656495527 669897884 690402616 118551230 502781964 638190494 747591547 221886844 685968802 368850838 761792799 838225016 911448182 276615833 635048230 414224192 542524217 82687282 748431534 402656252 997875324 415865100 877272097 618097466 979991865 693848907 699197660 749828729 977938543 100682520 770324793 818757276 881737973 271895356 365141597 277105804 519871644 911873117 950918932 846040299 880271822 551402045 808472395 101052702 960401301 224333839 292712191 617064747 977820870 180523358 573697796 902414842 962193551 124728064 774406204 837019898 924155360 59686193 528161197 892861375 993192733 437553450 547698318 940650404 999552844 320241079 585077374 622069822 908386429 864519320 931400995 99615031 307403835 717245144 784398960 42835734 155669526 182775124 196926608 229588838 887863738 877219694 930113207 888000954 937331386 402104892 639500041 948100633 975440417 119297883 183967925 626162331 743516317 421967841 885816174 36832281 228212931 629205218 709516848 659885299 864673526 297132520 500878712 523188255 936241006 349450207 619402652 819456497 967217153 875656002 905733844 813023001 923494227 38305997 416710805 2932490 982622048 768652439 970369429 507498481 693582863 971156445 984132522 544738024 998982982 776371225 816169658 282860760 822788260 39692234 622073204 100338956 166887847 297567440 737508617 569541780 848628348 795472658 995561292 409486137 659653580 865986721 955186011 171443276 758892219 240445126 813546275 354726205 824595759 533662517 935857183 277874269 350123895 173140068 835806353 505813358 612077480 208362508 790722751 398868817 929118787 902021122 962686604 724017515 731408808 173755987 783290708 240546668 931937376 661602441 722310413 933349499 983905109 381289370 698211986 748376034 940948749 815762544 871361211 114974155 690420926 96587982 634985640 432172193 933225530 242016497 752582380 895774540 984283097 348384260 521248145 543485892 726718546 420653434 934738872 206408756 916645170 221008878 967157577 645080230 942318852 698146167 855015177 984548496 991081110 86636542 421002534 54602433 748488221 588213042 940757943 782286679 861721696 66972818 486813284 275444784 458269173 992912376 999678039 693871478 708051139 23676391 558995459 475444308 920624870 500163681 818660912 300771723 624932279 233037867 871432439 971947511 977563858 27579034 774772655 652998280 737908368 723775720 904133180 731663539 974308328 901359472 991268259 502977770 538696397 552870680 598028267 714988474 990204858 699235335 945654554 617789052 683993409 151132125 746801278 29250956 171178000 995934786 996403261 954701500 970208604 699154260 791984236 858015597 894718647 437896847 446979116 413311483 955885299 404805353 986544850 413414261 903532460 542754726 580270397 532678884 944522743 87777282 723692836 382380699 934203961 848835583 864332786 293152719 606021168 231824431 773399393 65163490 829443752 349797543 778828512 708798059 877128358 644449562 926182057 759197248 919936657 553450292 866665558 941631775 985181157 826262320 863098791 379021287 691441013 217273653 982112286 370867885 907317505 848634819 939505060 990524994 997638771 606015387 789694649 123818698 413821867 245128511 413093741 583409114 840804668 448068377 615517147 924897130 956227895 504795672 644077799 982840601 997244519 36755761 667903795 464834453 927099495 196787535 265762271 735822744 969333144 22606258 212804458 682481957 875762054 224507385 562971020 859862619 948127181 587207358 629296397 919497710 940507299 540481250 727789265 183154607 520409279 605714326 874046278 228026494 489366220 366040259 871928485 410791260 892037087 183862204 605911902 828109650 863895150 611564363 791653305 164209913 639415457 691208747 934367247 98995949 696100212 85595486 537490887 244890819 590557664 291512622 749307647 275415882 520581602 708968885 740562080 922675915 969551364 507982965 901577091 295063930 598985724 574014335 732191331 761476507 820135151 748981346 968067278 605472331 673189132 895812155 996962309 103434423 597707396 240938560 322143618 27011309 30102646 537315251 850844627 566607891 682329342 266351628 472966551 548354702 606016284 996785556 999390402 633104627 877012288 697328287 792269690 33394025 43029480 241144610 862880948 887307676 952018465 171869254 770257130 381949354 895037159 532185437 580756709 960615586 980508292 943446957 984435733 380468633 471550430 877237498 927718623 923141584 948218804 438060982 649091673 652091067 897566534 468361908 621325275 881434116 929747272 810290255 978638260 813037099 906369742 919804111 980256754 948263750 993458165 597728139 834322419 136293274 674923041 463823863 976817971 73155002 182643045 135111677 404553707 340547447 967095801 527294194 601325198 534848970 964836479 772663840 868115386 381225509 765377354 181181361 236349371 386107541 857411422 976505470 992758824 496533694 995938914 8688939 629393363 71140843 222700784 576209686 801796031 657038186 687874873 114405162 457920126 246304179 654221311 852252245 993374223 719383004 779113154 649897196 709760507 273884312 699608931 301282856 909961582 332980519 490528894 293790887 892996357 411108247 802998329 204856551 270353296 751907536 910900010 486683709 542843704 800927066 928862710 814077722 873760924 411170945 441774075 120242551 440158039 324713840 381041088 459232365 637768776 521704793 888961031 900451220 999454654 878682495 967062014 930331334 958655070 320876286 955325143 722183101 858854515 8664777 411170948 1346453 837942195 316605123 608443338 139473218 990768121 145959463 452580942 179067316 575486094 924328236 970317913 422312226 462734404 47130184 345208255 683581340 922858885 809797828 892615626 704256729 957466670 906704727 921366652 765732379 961594831 521193338 754981769 614489568 750384995 578799138 610335526 562275810 575986090 257830716 727618851 597189213 987852898 573362080 606954868 906179554 951688781 640229487 675662765 430624164 883512135 336963897 428927538 251703232 909271784 127037430 201003785 477360463 827365432 439169444 783234323 951290146 969303844 201792385 224014063 287802643 839768228 588722838 994432225 867138530 937184358 595007710 693148056 964235847 967177360 50466359 112405819 338687959 370739185 130628457 953320580 108851291 346714211 306303091 526199466 572414007 750901164 416422921 992177962 7854822 283024981 599673213 658877566 647836211 677940727 227091628 797067824 850631551 876138382 953843463 954692090 986033072 987522611 815744795 996945333 68160686 253844835 569762358 605191696 624940316 817686352 911712036 944172044 735498328 762000147 484437254 543354558 435380903 974482072 234884004 652888040 596153972 939846045 980944967 982805440 752681470 842517825 303858369 838597219 571846634 676890227 610953800 934702590 440186293 447667498 269145403 922435405 931764652 988563567 419097793 906568789 206999549 453559886 183838136 976897808 788687379 991733381 481114318 549347398 250535541 369474937 922357672 972983686 315483958 381193328 793913720 990575073 285806280 641237768 317623094 986043234 886686228 906591856 703532172 923163101 312598605 577907099 386999095 671330955 219009247 338563445 312964529 994297614 256939982 513141949 719158840 814062214 243749135 722345846 557538826 640682932 596945848 830256596 610155247 700341759 284599822 638478704 387696206 955157371 46341764 156116837 335607071 360258422 601343580 769700881 326168053 926125091 433760030 624164320 59815229 324540840 933374393 989265753 517248613 653914571 776236610 862121087 121286584 515724872 178383652 554730133 866973286 985331463 957033444 977806462 804327358 856461679 491796229 926607091 937468220 997176823 320900833 399606159 648207696 915456472 908370703 931121084 393284916 898808157 669879071 975191896 663780342 797185209 701375071 814809407 323236111 603713855 845353390 867828635 873880917 931051753 874266839 994345030 549891237 963585286 408107543 645703073 367998129 855306765 955756842 994727321 940999643 952711825 907615557 966385697 231977802 870508297 162230598 265207809 687490894 938292623 133134741 534280078 938230411 985051735 937302045 942151466 101697043 435353012 423244388 498032984 142881821 158192936 193835907 888920866 684000313 902791721 937818552 966229976 851043463 947660775 509211257 817415127 720411333 978706565 626563987 777383145 62713636 467914745 829006932 929970629 968555497 982751769 698758467 796885978 828333633 961146157 54128561 346890464 574936457 806074272 753065243 814758703 99141419 192985358 854956513 989602464 628790563 654389536 802691827 844089667 820581839 984287952 562810059 942026723 311596192 731243814 491571094 515049308 875754381 959093754 37642194 112096693 746329667 865596711 346020839 581965895 921542650 948829458 647847876 793078578 271562609 959598144 511607376 767937442 849066959 980490923 382297951 455958141 91644421 820706644 444353808 586072017 52136136 732298745 646040003 824834350 311965572 381458702 275101368 426565094 141382253 294903985 294322005 741910265 621062673 983611787 132304308 884789041 502210541 809074811 54041802 99375509 713014657 801147151 286059694 866163518 798816625 833568667 116100944 542334068 793763069 911514602 803343086 821522266 78066291 713506227 646990205 786791356 601740891 896005762 560382235 767774428 696579000 702846211 807904586 865845531 645404196 890364299 81575160 864681187 632895801 705301393 232271847 831654224 385247802 844622568 328859558 867054018 636188762 637776975 585043386 733491147 154694916 725534450 486219562 981091916 360214879 939600120 525978720 705373205 595731192 685029783 54794293 241998767 775464280 957519244 543016589 786789329 813530097 852320332 516935529 535578907 456207548 787357819 669413761 889768320 958095234 996940739 984312745 989156640 315852239 915224107 966949301 979363028 398835111 503335523 784690279 868317358 805721409 812466630 212109392 930909521 644363516 903333311 51290326 742616333 401598692 808042050 113429052 943616883 679348299 683300729 708332224 834773606 896511366 913320693 16916105 603266762 564872160 653180861 427775483 663104883 668168473 867838421 8955296 514302330 690497990 878751700 474529910 985831058 697540152 996893977 684431946 841914552 53222825 760158723 977202095 981372086 949319459 986062234 761906017 833483115 542376417 879248618 119378995 474476279 593384701 746413047 574360135 993730850 533117646 796492266 741843124 925279805 131269859 675719859 983741177 996049472 50909383 764449022 812405158 859663141 74631461 557363686 280144288 403522714 954179479 967297870 117190023 602453363 697463189 991207313 312993204 406143846 791200838 918748695 106703231 925971325 767817009 800775456 295256428 842475763 552499187 844557631 443059247 630309161 512689902 937690842 56126245 318673293 648787199 682233846 721141919 772279266 28092340 265075296 834786216 986989758 207943599 258615010 876643954 959557072 46730788 577681053 189334270 193692085 519472213 857256956 341589043 614713219 31447152 353967878 179395815 389559693 64866922 837952975 327228295 655695885 231130575 664555618 927878141 939308170 752677577 885946281 376239804 678713973 81763888 281346007 922046234 935532601 702345434 816164309 382084626 787849203 53414853 514264600 846053386 928765139 693168830 793090629 111362336 864694286 999940189 999992330 173788517 318836088 414409592 548125379 31116125 468328918 731152800 800559779 688578248 923917288 267453992 344747971 727565567 882218472 101948860 701021684 516865217 656116520 115355827 708771661 717454358 756925903 689073206 849637669 272625033 874726387 10062968 686894754 218650588 737769481 119807616 531551404 29216667 609917917 688823291 697538917 820963288 852033124 75548286 759364548 984359099 988285727 228332553 972188607 736008414 814407390 189381774 533940223 795796731 857548250 160276767 206231162 3617398 616022141 327396213 683809264 896860516 981642722 83313877 501552942 237974847 785589949 595412517 639955992 294416641 913443618 224344818 666629316 750596837 931042578 501898838 744619741 290838273 750684473 338311874 914171706 462594800 689282777 731885512 775653123 60513519 357331664 986601809 991687686 738621 940961539 388623823 544179492 351096947 707410921 857247076 877622773 201278237 489643870 756524203 883404618 155369801 619034550 244607638 827348289 997459908 997834352 496253207 833775696 340570360 656432240 368677366 701128283 312624345 808753054 39215609 986152199 743760798 851941455 124081797 596600370 900660270 992883405 495854087 629039244 580100664 669282152 740913325 942381727 798449649 897538684 882900952 985052530 165538267 726087979 689311269 839551371 526505542 883639277 671242440 949921520 650405580 763847762 290874096 501735762 173324543 999160814 964492513 981948683 649570735 833237684 818422950 833281838 628198542 910408139 845819429 917326993 538328726 992841686 264309253 421164136 172342104 660846393 391265774 397735661 249197154 629850530 756987752 879681122 815562647 863992450 688725274 950518394 658969056 946360468 589694487 652930532 991092417 998073802 493473536 760906233 506161409 875760157 744058237 782102457 69938324 461880985 960534179 993486740 102949563 120056555 709640981 820633219 614289220 692467522 183321666 879337658 268434684 422662358 481093888 929150701 706356903 726508674 979799940 983259162 115839525 956081553 693454446 732383686 351316423 606931793 229892949 771154846 907993951 911301637 449369138 839882022 409222299 786115844 854684487 963530083 321788615 727806895 799374 280856311 282969017 872118372 14768220 676269516 25991096 729698224 462398768 762847689 243837241 619203529 185785528 874218245 619386325 729318213 605320214 959457709 266187613 863824700 997384583 998195940 779899909 928150319 770062061 835679337 521322524 735960462 435894873 705403629 983589210 986348134 725426604 866405974 808187304 883701307 629580443 819459408 573183388 755875776 559527502 926055471 830916923 898378587 164934496 291056217 86572351 306246718 708082553 949769386 946681108 949848363 830086837 891863143 861544926 928818535 378899608 512006760 865679142 952146395 115424537 282485776 530931511 684851433 646507707 764189885 881188778 926440938 962925933 971140831 108550093 840675721 481900790 871031371 886193917 994972423 563818792 824816816 628194302 687139977 737606474 834136944 368824273 819040832 11933594 387964947 627140593 743715687 252995505 579496123 3449261 432867435 460561735 499436997 621736541 817911343 165514749 329804833 358034038 584869980 262709495 916738618 936354868 974414819 543328875 752293503 897746602 911263346 57342258 427603936 253371251 724042796 485853362 769352347 957335843 994700788 56597620 498145805 603425522 676408519 47900187 866624934 36983856 513167506 26495101 379899566 11332990 16063442 232950833 393194992 712083493 847887923 763133416 956668399 318651412 792326805 130632283 286044710 383686661 913820734 371602676 728431485 828500396 955570853 791805188 843267647 974352948 994529261 219975640 875113618 719050220 721278189 228151753 812535885 937196705 946205420 879897181 901238716 339381413 674584830 473956898 946872897 126735690 405546735 74126593 528662148 526290781 896369891 983997690 991719123 194734857 913127552 620216580 866030383 109979722 411131240 82638444 440791197 413129487 839696441 337458122 867031599 626465322 687702234 128516968 166689971 753819928 889136538 272171526 835086232 226766345 910303470 448794582 913837576 486903129 768895790 174622751 452088838 111549145 815005212 455993313 610929917 460064420 583332567 973818385 988531009 659653170 944993198 101681857 840180999 941499 434494352 777627958 962129291 401365217 860009305 352286356 622562028 10006726 490928997 121843124 302575357 441043585 491860470 50199965 342771829 746579844 936675631 66161949 987908772 417858023 497149035 96381631 902512581 949479843 963989022 239807180 654716538 973690850 980560481 717058666 763067034 598544223 817309346 993249264 997823712 59282572 693482155 460839739 810853440 160867178 232971765 343030684 446536936 813987134 845358106 437351436 639315467 542655523 551765284 565993839 886596480 96478142 590279942 740509282 955445329 129386511 348627095 775644611 942788214 388394621 909475779 558688106 741727452 80974959 399162632 21118805 581633921 822672216 955363097 102276693 345307306 60145924 256683288 76634143 434506242 546813022 675905040 95173450 323218482 82401375 345884380 172399967 553466179 792563222 975077302 252680190 842816045 639627823 725650884 727207323 870830109 920102478 970612044 348674966 504812732 935736136 993173525 683539173 926649017 109888358 330750988 618620306 976153344 170223310 674192656 974171714 994765239 537117605 808529427 831630146 925834154 192368639 367536262 774546819 876837083 323239878 610327277 49912316 477196706 389554649 478096465 750494707 856751777 946093898 971890672 434216706 841251464 257518150 628856693 259682678 700825553 452722680 991416201 390976171 659515270 686914443 847330613 41965353 891955998 557502753 961592984 972676226 995981241 165882177 349669375 596839712 795135445 768093803 988507224 668616199 986737738 871314267 904501036 118162690 296785394 405265196 673879306 130356101 449020377 360277858 432431419 556597668 897868678 90974176 755617917 539393685 744452789 249121850 326791385 211688905 398737655 10196092 813957021 417839512 728528433 785552293 865428427 489005867 907278281 996573022 999427517 60385751 689904769 255827181 699652169 932679832 987932826 310673478 938989502 87061376 655768355 621869395 772130924 854609915 886473327 158416159 982776158 993131589 995307479 653872313 727148370 979723440 998640338 427796396 437851012 134249746 345320352 357417781 858707541 710286190 838359494 322976624 886623000 926776796 981736109 150905817 246761581 467168648 720703679 763506332 805826194 253599197 326861727 850569218 982935091 846973833 999659439 948630398 958249244 172773677 738459333 628597921 728313708 442700972 772739517 848002334 902784089 483048617 825143697 39666699 379031435 234462130 892197589 848044289 968363775 406858660 843550150 41178485 318926093 539139050 746879959 284292135 453014121 303213727 500383966 490388087 914066611 664171868 902626260 419651135 429699413 774529279 785035393 643561879 786545420 141825361 844422059 257844950 598348293 415054315 945346057 672185183 816119622 293563160 641257549 29984806 536258999 112759390 331619935 885229946 914351144 869013621 988102615 59842113 745367684 600752430 902900754 686613464 870608578 241818317 463338742 158711042 452875690 626509473 660516597 694663863 784526195 142378559 543822565 817778860 913543318 665294268 779703846 660298158 798167732 416599146 693095521 408662580 733208894 187240560 501725149 367801175 839818630 721227302 898967901 355781206 782310978 953547543 964379809 562481777 861706450 472680932 619724288 60034080 169537584 836464692 986602288 924000402 995868228 126017830 876403227 987978759 993307445 658828509 993336898 697339375 737431430 616211552 633829158 573380952 941578860 227743246 340652120 610568806 717939390 693219937 762076340 82803585 195612356 418768639 845006782 454213779 695135534 420945530 454264969 415891509 802681251 599286520 670957758 187684138 513531495 604751859 919028965 535799185 732118353 59734605 971027132 33197183 381061657 60622477 446468949 112216469 632642194 399297564 842015756 812592019 897866492 561630939 851223070 835026501 958752288 691397112 795803484 940522364 973970961 968746023 972378329 415524432 882289696 815331774 992965914 982764421 993014958 935646482 937861539 330746187 489806807 644884648 850538044 354689327 584125458 528805437 585659067 244022880 948784606 976155119 987426067 844526147 980621859 491202115 812198284 500352527 947368396 601714621 899239861 462198540 757521152 615809650 938713701 788281639 894167222 835892146 967106911 523994508 738058051 287953058 588738999 250180834 654451916 328230646 973573618 289920528 401940205 365547673 842778603 771637041 915348875 979527286 995644645 662384468 782305859 225450028 396908542 323094099 426656587 933190320 937776969 693331370 998324669 825996144 959580689 838905203 976679775 19829269 787898160 274905261 782992181 553520737 793794836 951217413 969988049 307796362 893940728 736354351 998355740 379287332 822246999 177707623 441786064 257416633 918975770 575739245 797007268 150510338 729818739 351184552 398693556 40969669 450689918 14114914 668787103 528536827 561457384 710634659 974095116 49521857 269765789 973937222 981441879 288032843 580676337 998413559 999147177 726025742 852061884 10453714 389431147 591167362 806734768 894661655 980103870 640802666 842289078 838712297 950969543 13435653 342322762 483955344 739051455 962125116 993030282 538119280 788097314 359621744 550753641 998424930 998660262 657054263 766804441 80609517 411342207 264055367 461695826 553152317 682426136 416966139 967315646 244787297 291798403 356860937 636182555 31570615 992394323 92615440 795004756 195155370 773754036 159253770 524201026 273295311 318945766 624047702 681975350 950162471 959797552 171978508 210387804 395780582 729134623 47716320 648973686 698726146 783780708 905573358 971042456 354236071 613701420 672241940 838856821 901022532 919094443 160142860 218823470 760380574 844664283 104009750 705108263 297168629 957858042 79643394 688410036 139053539 155179043 765296313 952515879 967319077 978428087 397130478 512191542 72696602 82170240 998850843 999614481 726452605 901965572 594595613 755454424 747090474 933351009 656901665 841489507 199776209 630321894 312585027 519169568 349495691 672758814 35080523 805505672 662811746 704743040 507902787 884923297 765016369 948300268 908814794 955573294 452719476 787504270 793880198 954138161 382277896 711312383 301234289 954660320 541251381 949376918 147958703 327238108 551982060 626034005 438296253 495855229 576283456 965532373 993545906 994928999 195200966 397526596 909064769 964458187 724471035 971647088 162400395 940996554 982505136 987066972 162388935 443785364 173047107 948770111 341246747 563117020 211601299 671941847 824712092 970480072 428250041 644355301 443723330 857797008 262716742 643663279 853308773 905116648 874406639 994261283 549628978 750433381 339894054 441846835 382658666 594845068 270417653 523143109 174977753 817413764 312292166 809308142 330596048 822152945 209824259 945268035 503045401 573940119 16020979 838680739 803007410 817218206 691380510 806792817 536317773 706545065 974771372 996332188 63345651 715747582 466923187 828711985 15216179 198530322 168951458 321063624 780010253 939026851 430426367 797068388 155840665 380963803 617452442 702913990 589445972 918605950 415442207 830683699 973024941 974984476 429590797 732691290 51097504 767170217 124759392 226136625 710775269 886846506 910976869 923948387 545381410 641792940 645089035 822939943 155962112 768341026 770421687 865144051 331539038 873404421 941530553 998664486 391455034 588956375 600388993 891190231 7624802 662862503 700406903 971629925 982833042 991322836 917923947 919951614 850829062 964412799 999865599 999944118 27646644 500824418 812696574 844306996 917722692 941993997 251858280 936748354 714193754 882955888 265370939 879302426 305120530 396070210 597851614 647270714 592494473 603180811 224893928 474800463 237645060 802545297 130151012 395000825 398600242 501753920 53990850 836655500 268864847 637940511 784356885 825964543 135088614 601137186 74865383 809664414 730163276 896125361 550219132 654131114 700802024 963422245 487856691 764714985 932438854 991842069 611676122 642134097 596334422 727957496 210336412 468350459 124457949 207765143 252858021 929963356 470196005 584272753 405548008 758086059 776172117 862049838 881270511 924020786 69086017 346825587 687382473 734790405 445865990 889987928 843670604 963152104 208984207 301949137 11832243 771089461 384975637 396384332 403442461 574154331 500386844 609932022 389599145 423719931 559256593 801247418 476619183 951273395 265235206 551567533 878265606 900614074 304740929 548556748 857220554 869526083 774429072 946192150 884588690 894823323 18434069 591181934 796552363 895488960 603866930 685568312 456671066 722722227 195119629 848649448 813320343 919187234 525640707 814807704 885375740 937768695 281346176 532385721 121295448 235305815 297881998 757695111 299690837 898017615 287332710 849589337 689409816 764436530 947506174 974352353 169673172 277424010 298005469 773441850 636721982 996885961 705310324 779752911 357972382 624012153 555605713 813710800 226863813 696923674 929118126 937595745 450629939 954201175 477570793 933052689 463838692 895000203 60167931 723022994 709669534 993137349 548029168 766840755 926724486 969639441 557497028 627196245 944697767 985419746 362025883 386212470 142670508 528149160 859877864 860029834 133491308 904307444 926077335 928731941 98450613 357954940 139696091 909844105 770252036 961150026 870542506 965994379 992021187 998641564 702656949 951387519 53204558 418973911 909648510 960554756 130749533 744962772 677718422 923016959 981832982 989389127 148619936 540210019 448621855 770736666 619683565 748590446 720413713 854106061 295242337 405145045 511834661 976604542 38809652 191368562 679614404 987658815 688020200 770538882 167888653 345511852 80304570 152023468 540514994 658413461 693047430 785398338 469673645 529969582 372379481 858070117 190666475 374875827 898212248 910616461 927596306 933001824 697626949 700715907 406666481 795281749 375970153 860010068 658400340 727056191 559739974 678718347 469247594 997985590 39339996 563360943 453160469 633950865 169514722 579282603 209167098 882068914 961324942 972309809 11251996 110448931 595454137 770045596 929722405 960908221 913761911 974670148 625214840 655335042 290622068 972460465 299890821 421896643 771961725 896846396 957954768 974821138 904332912 946810867 897532980 898864084 86562104 111354936 317184331 457495224 726400493 848373659 161675437 523940727 353063009 666856949 538441447 690200664 638075937 938443736 213579404 927218178 587618363 930814703 894179711 940633981 765874294 941118429 130504596 787841101 854562359 909049386 592090107 755711766 196519408 414845001 174783065 814776814 260128201 934183733 790672964 984115122 571182463 871014751 750480753 815217592 49150474 277224605 490445257 945936474 945535201 966613496 272729209 430746829 604134953 801366183 368235493 716326073 429219075 488359659 784305007 893953165 745560002 816542014 593673544 682207395 164638378 618978465 969255831 989563112 105036667 502427236 709003398 743664175 595263925 660340142 846713401 875413724 273819063 659173739 898732107 959688171 552172883 607558217 641498043 760262607 481325597 521010295 644123803 758884121 877461563 946246806 746729855 944975153 442212695 541918271 133422458 611492707 293945590 303484854 613233510 802146308 445587127 537570496 951628547 972449884 996730487 997801228 164908550 860472146 383267396 764156509 43047722 183732904 26308742 912956331 594789661 624744190 830929582 914933666 267577361 571991166 654443052 959302137 914294102 959442825 624707466 992918367 455242986 587343828 652261450 958160515 554231229 560013963 902309362 996264452 703811650 969039513 385918189 513316174 621382701 871097609 146589061 438342655 828813637 957698412 658941739 667094849 651742450 860792666 619792705 949476942 553757340 654161042 620509955 783027196 33444775 701134014 349814671 548187925 515172329 643516035 11183209 734639119 765552230 919200614 629827767 979182771 804573334 891287451 877886904 921784833 619872807 785868402 120632917 647499080 21764849 72422122 786995433 903219343 589441433 981698404 711264066 909912433 667630170 988935609 136894393 575801636 22210199 461967452 589869059 689402160 693824420 776926436 490611184 724550544 387700581 431901930 85052959 971389576 241139247 740332570 381220112 756557587 525839569 641831298 538119437 829584846 816509265 961130080 583872202 921029330 563493363 912628443 757526431 850481827 260924063 440508073 305556881 539979777 33584089 296034386 603569550 950713331 831867112 850534215 66951319 535091782 318423456 865016059 660925549 833518315 569695475 708053106 663532071 689332323 952160002 980684886 639896558 656376245 714537248 944098671 731368104 997687551 785363867 844139949 57393790 65156058 310840553 733999727 550028222 609360348 190575974 875053531 503651064 994347177 785661915 897970304 991853530 993167615 835442602 919902467 682040362 690060516 528045410 953779287 728110363 927345285 963519384 985926714 367595659 857500471 4921899 627222381 845354011 875996030 331090265 694637055 563594103 747165464 55063666 931764124 470923301 646821072 459163834 986716166 653394138 826154845 673337662 677785913 382729774 756457594 753851082 785165156 769853916 922203406 334767371 856779213 430492090 702014309 465276892 866541200 863024553 896456886 525792787 594977009 300639323 644069153 445135387 790196295 86903245 681303667 376867518 691120484 345751986 620647732 314272284 745401784 877393681 953221743 671058032 942200970 117162854 939417681 385352137 493417643 104649295 172866276 556804057 952234579 898724362 927032973 258220171 288288714 36617794 772448149 179534093 216295187 75343113 938474709 513973111 739339920 603612427 690716622 848941714 969468892 895861454 936814747 257744071 317776745 289305159 345290841 329016155 685944108 641976200 703456091 383127411 924638371 371889154 851995276 59468920 714963845 817315313 913946876 529611541 869258602 197523583 715838334 735655622 900020466 944426878 961414364 239786269 463667308 586486125 923383728 625230352 874635803 152872683 813723731 327929221 803835269 329456722 723134360 609909607 800262293 881389532 964925201 129161936 344109130 219014038 299223776 604683783 771289457 446798137 606251367 550732334 731982264 237899637 365799119 359944349 386688294 942891666 968713404 954553289 990792068 365211926 731925905 123717241 689173388 997174548 999440774 408830829 768587374 709116729 990553899 911962467 985279352 314069115 526191586 671455537 739741953 947051538 985063777 545134992 783395043 990636572 992602999 223865479 989193462 25685619 485900874 151592141 322525755 566825471 710727920 324323240 573145854 745104123 884393322 489166228 548288938 370220583 644354059 428053832 496617929 834915108 876330719 773125665 926673335 463343932 705131148 800016599 878921356 585890997 719363406 12437125 877914018 447661865 699647898 212773783 814839474 13853316 996836948 878829994 960570110 949966474 954576726 607863446 637744456 958250656 981606423 786117740 971609325 520157151 834943602 47545011 667750486 504396026 738109202 45936989 136952274 922692387 939284948 54333525 868517996 835617158 838480515 497235662 827144082 817677890 887926194 905127778 963243310 798189983 845206019 257812744 714135134 200167037 448225537 190696271 777009304 141754430 354886841 107200394 418010629 718046242 907352376 318789430 631180362 276999572 473830737 160884529 898047398 971365731 976670869 39406143 398184588 29401076 166974913 330202411 882689674 778437584 871447430 818384796 899448937 270401973 868254840 642180392 805908095 143411715 404523188 597417085 872892510 155374635 544985056 49985604 870010846 940619417 967061877 845233115 935799746 476469091 991371978 849290455 939243089 879264067 934329157 524072079 966298932 516698394 990603439 785447053 938359533 79182187 495853995 957020312 962873426 387860121 480139857 150505734 266032738 659755881 867892234 735704205 864808465 165993821 859022615 790707369 834057364 731069372 792253638 860275317 863617739 370283093 765621635 628242508 944068212 987872423 998336660 214499553 806081498 502302515 984509203 806467184 991934531 956622128 958158481 46624366 468481089 581798036 851368180 832716862 918313144 940472521 990259650 591378146 846254182 993129606 999259343 417943721 939583900 8733708 877902578 58421216 525725869 558235690 946490588 631095814 632740430 132805142 437668066 92890119 466506804 220735332 974289427 363670668 829571807 973992270 975684802 425008887 843544033 922010286 985902347 363060723 498248994 357342816 931926327 824316447 863129275 906854936 944747664 596670188 746359741 143045244 345042428 648118946 955508326 749067095 976028251 791541016 902489832 875628420 931716175 425552264 931411331 124374468 291045363 153466112 624751788 645160151 974391808 864538974 992058487 890292279 916361908 486868861 692838856 331789051 413977790 682205896 939041058 856308348 926372460 392847320 898297816 738562327 974382527 102262504 854542298 884628190 965580611 965316564 974985345 658077275 865787451 632921745 936372921 136381905 290610350 259933230 695210822 519763014 906784931 309954706 727979876 940773162 960758409 215005027 586621527 44527113 849343691 972665557 997966059 459872485 726286543 464752040 857810746 970487945 970699759 216049513 804464444 996848784 998332672 86932328 296035028 615606161 895453471 199265583 356689712 398873398 977940352 782755771 785494794 680028971 963704569 444851152 452254118 470442918 596326443 362013257 450679679 598843486 841430430 757647971 956593919 152554652 843755415 684177200 719375172 924998664 975023902 207918447 514895075 962987720 988578554 367837407 827601502 708252321 780819565 837337119 854374208 492058914 888073637 729016996 999189798 195002190 296544279 53072136 231561696 663291568 978858892 697458804 733870002 32862831 816937774 318581179 436724773 276488997 310182003 852019629 899322068 340185369 502636039 6759204 235529764 47650456 792930891 274650829 440835639 508074554 839836480 995841505 999771474 745091956 957161943 417587379 611443193 410870252 703198019 47985917 343256015 516244391 876856606 623945932 879011357 809593940 952617579 639536654 950668528 637172991 777753239 597709820 683997534 5782164 92677693 988347032 995762815 879882790 977959431 206362537 447028341 807939300 935201301 779123990 948704918 705578221 929510412 696330423 803142437 231657106 945700100 676348129 694730877 31271882 953917286 539614080 683855823 473435755 622604637 364628432 798148785 76448793 564703536 540827014 570622275 266368724 976736736 818987651 982754278 747606295 898302131 744897285 776311633 742745210 948238132 86101606 234989784 850936200 986104533 339390594 406003672 710636593 998550882 797130160 832149654 209795154 522413155 481544760 679576762 512804456 590639004 914060665 932696014 922888551 932045536 62096205 635540187 926639633 944306236 821716786 873067740 542307917 690962966 228954721 280301011 664945682 792804658 616418416 857793146 282453458 300355491 818985292 977214745 616457164 935886746 792030067 880258459 84622286 272455721 846378790 852256183 962694546 996318299 964275994 994151734 612685460 970798002 476657581 534710467 507418424 581606171 700599252 806316530 750082195 869484340 918759389 982284218 208079993 696458771 770296267 882421317 474794281 669832611 464649375 767979592 550460734 736068961 926986286 944267026 650179054 733780872 76969823 526196077 830581127 975000189 924708757 959055100 288893792 634436445 553283861 900568891 938765162 990704907 920395186 983758218 673397022 688205439 862430134 888049465 680809945 779707866 979470116 983591332 491131546 923704856 716631727 920340469 557914688 895008920 735114111 932764463 655535699 869058561 362149550 828073655 279831358 463002176 699320340 998781811 56837848 399236643 426715087 517019241 846740173 942645829 791450715 907818673 570175221 657193322 920179063 970685357 38764662 963316479 758039487 780380766 223435159 999002431 632879224 731315119 676969234 809865856 816421707 898713212 554901743 669292266 587608869 932511084 757541592 857979201 173220629 257950897 729358516 865701068 181524836 973134938 135344762 540659909 116037250 847280307 663753093 868451442 870950065 932253905 295300668 552975319 812121755 814884717 569874141 953336157 87093367 533930438 245507655 481758189 675688283 827660328 720674741 857847898 429302418 561744099 8177963 585776425 184631268 777473724 627986090 974195195 299191506 562968071 42996262 55875620 544550501 915053934 27168997 277639688 462647670 591396336 120698682 605985188 855056016 944400556 636603738 799445899 557935277 605561321 550964086 595606236 14970034 761549353 769503459 806231842 421818822 718896503 57476890 291312253 381044984 417478009 559421505 567367696 924374880 994697268 620502126 775248465 513986047 966120630 793671089 986650111 921467872 937703996 222168805 232654071 480520439 990697886 18960705 832320943 289566790 676832530 416715477 922360643 638993688 667965147 30009069 573368946 758390312 771481242 312583141 848366674 775677840 895841027 783089087 866695168 286927739 292426697 370689461 641973349 226043580 506917149 380510080 906232174 520285064 957734547 754271612 948607839 894872508 999409839 438754984 745611832 705214247 928816341 360765908 627165463 965373075 969025560 870642615 908574324 754216395 977116840 331515891 853539339 685466262 907680031 972518067 982950978 44763974 96435563 326449236 754014710 320547368 490765648 499874549 925865851 791141537 970608674 930002473 983001307 92429815 100036952 699791860 739014289 420256520 648162665 890975276 918543897 814611620 897970419 378843940 583169341 539041130 929483412 882607597 941394923 387058041 905104399 928770131 946056854 130769917 782492777 66994681 897742760 540946775 621728800 470879511 739631191 871325131 977068775 889723274 912664353 616064650 635565391 137637803 235853912 478699482 763456938 802562317 868929527 657586005 820651125 109774322 619291500 425044587 554506404 675325640 735767436 375550353 908627688 974592444 974950100 430270944 930940940 6461090 986594285 657224194 814820880 196267165 328413076 1917550 84389680 437589375 590931760 748616668 820861913 614723627 865732842 200600635 919840789 132255244 348986673 135730098 815609306 977318384 990959990 925266524 996831850 338161214 408964987 139819678 606103997 245129983 955728768 96139759 840054756 377407287 609585685 736842728 809526123 472854254 704528671 34320588 363408028 221668860 645500219 243463151 862598449 247586897 709052413 536536248 646703126 197777018 642554208 390477137 980261702 333351397 793900833 581508273 933637165 511454435 720579699 233899107 502491962 968694514 986357386 704933665 754665325 997188800 998814182 384649650 577818468 103418141 153477899 368060595 388078872 699909873 971320229 603825966 739065660 228705567 465487112 707486981 811412521 487287685 658724143 60381652 663872626 205294086 230605312 721647545 957219733 682493244 870141842 425520004 629242148 787579954 844871551 537039663 982692892 31912572 233549708 556848898 647941297 701895388 812077902 927679359 979068116 787628928 937043179 844866845 964965463 620571059 844805863 835861299 924849181 965060314 980845530 547146718 669282943 412222680 494267238 588258931 693364465 497890920 544415353 388634427 543780724 235549013 370278294 747685783 967752107 962564069 974818198 61497133 272327577 551004005 845001134 828047235 846860482 784176027 987225378 499469006 897196164 53352938 67686194 979871972 995910355 513999324 965577153 708419742 726786187 904757651 911526986 654477886 756416120 748347428 955400257 367322112 682422420 850978585 999375533 877187217 999603730 551648898 775642025 321287478 996176930 426554421 910266925 701724135 708725773 439239727 772426351 666201179 681010951 77947690 715594475 300300765 397534680 544698591 558764739 429189037 511212090 773355566 826054980 106952445 672490213 645992942 832020205 996585689 999500438 661675389 965440224 157384287 630729596 37340640 314181140 885462431 894248647 267781224 799947534 622905169 696635892 294325708 914524622 872400419 971330199 205657284 848941020 208073482 708439444 487613612 593398836 829509519 973677398 375737392 863349468 301390884 616144798 874627011 880824303 897377438 910838849 897093127 973322198 390349778 847946279 139376062 408654985 506622636 640741208 184903970 940977835 920636687 929580042 133807731 564022513 767783718 929178774 515679066 781870582 153399659 415118635 977384165 993058871 276990852 622411156 847581797 873305449 214609316 497448476 294376147 722330120 264745772 534390858 870225526 997496763 897719248 949003148 756536882 941381335 190002438 221470449 954965534 962597367 15500515 846902816 904781898 988764610 165171675 342349434 66220686 338036493 980663464 981183621 971401863 973966209 834483841 917820575 101545910 798976697 777404646 974055334 769072114 792448593 226067538 815904187 31055218 427856151 289090411 526492512 681865300 714402918 591949266 757974209 811430100 852723747 364905496 996296067 876432241 981050052 401570489 749585681 664589192 794322794 396511503 826354912 868542691 974734005 790012213 870452578 507663326 727170175 226409980 562357217 150153161 161492745 862855832 897598110 617925451 927610188 665321331 769905227 600194887 646070570 712456495 995779813 980564993 983981119 738002622 953582881 173350137 814270095 631840961 878290515 330929457 571780542 823279283 908067838 511451901 612038821 69758693 894422011 806789586 943903706 722832158 754726108 169644185 394362501 858797836 985607694 693363281 802105802 423358083 492782639 492606193 894646543 177777980 639208431 39771258 680830301 742145805 935113137 447871831 771685383 255980995 413032628 982588455 999529527 886783561 898360763 242473789 342402981 270764816 432225149 91972265 430870968 931918013 972589236 404074686 869549839 622751090 852530636 122536189 765786194 661780885 922143459 840064177 874352993 4842708 538908937 238822786 762677477 577079155 905546400 484506982 559945936 955765832 962049785 430248821 936781292 713657851 836478023 279503454 466324931 397949618 683150670 609418256 833588098 271241530 437772813 813172370 990432806 815361651 965082208 170719059 612327110 229817454 512919793 164599734 549783057 792065637 816037989 462298341 477826604 345720127 844812794 214115431 348793719 696241015 919709936 389535060 640860010 338476195 700558089 325900636 406864743 559983824 997126451 663063823 807287969 275869695 543385700 306694861 322939622 770147215 979631879 852461558 944637911 482240236 515049346 911951840 930611165 603377184 680610009 168621667 957378703 83440122 608562821 92548008 167631345 275075530 897234980 893972382 930190962 613334313 810875443 131208811 761183291 628342104 643091492 639444185 973801569 234652574 467630665 333218621 847522882 360702247 573935157 470492934 951944325 260961622 305494578 228628357 351048386 125144288 721852078 825132514 993484355 984967065 992845846 264359360 509868104 19544359 971495813 806343871 919213480 271935916 951934829 629236057 695193595 162251535 214034091 847897501 871831030 722038780 981838175 504650589 640085701 651522666 752132763 193937571 350710836 864227278 888825260 920783026 931635791 822099023 864335865 561719576 686838189 521550731 717448109 31976447 499725930 912482953 929348889 121397402 671772039 829554948 940987631 887582250 958243909 297395369 892967343 395085410 930502010 936595344 964949766 853345650 918687463 236415804 275202622 943109167 990321614 157490198 960819011 158901800 161510408 37358545 674340336 913409934 964984698 155369447 434205367 692276486 729289935 617658713 808416902 262107042 747925046 709838324 921013649 79228523 529495276 244123359 761997619 752742974 851466729 231547450 612731689 358137438 370296235 802729969 871459161 448669997 497809902 130652106 165789455 703474499 974768759 254171769 464654800 953751382 971276333 439217716 829281483 73804923 275352383 765552276 977777320 411683178 824925465 367641158 640458966 798235829 937356489 245706216 623032944 684791577 971294446 619443164 620384877 605534137 606062533 960981051 963859743 346475274 769238700 238984477 922910314 367893786 872476525 179691459 979049271 291878571 457920245 211767253 247822774 609000091 838359760 681637854 984526952 548262288 980956603 74002649 200603130 777840868 831030103 859143421 928225790 848068066 976829400 656120934 987581938 122216011 652837745 162092656 281381650 193676667 778652835 472577955 776694218 198046726 983875838 556784459 666503547 50547800 784875220 930148904 932271483 483028100 726752883 673584266 748414212 647508121 889534270 12061849 429519291 880390662 894810087 312429067 462410932 890720277 974000930 328093010 894303913 574570996 666612623 808506808 855622253 989993597 994912213 478651923 988744619 560610140 769355558 236728102 741685684 930383921 977186631 203575733 635252269 375817718 803694216 541531249 677448548 252344339 404872975 683701996 876928935 833950302 901133990 427391527 646428164 865199072 923560639 506961840 994823443 852012289 921242526 43559659 634999249 132663578 686384306 323500203 815626761 368284008 527089210 123393739 479520050 270767974 689499695 300423541 457414291 996717980 999221228 86797519 142955919 847648758 848324053 84998258 791228353 302275631 556947542 384933083 553127069 578838628 598058853 179885631 891099481 300516578 647391620 990611085 999559483 688765556 732743026 53433412 250371559 597126052 704061165 331136744 415671199 450397855 685040000 54496775 860751888 3802420 401037199 549412519 593854290 601078093 803559861 783826101 860871375 78366780 754529713 858884436 909496690 610542945 874457665 767274903 940709347 868662438 882500142 532010314 690061339 977651689 981565917 857888533 950605417 183864822 986130946 35784561 692194351 874401855 958727657 557795017 845084540 889953671 951218005 6956444 199630053 139038707 837665174 359183378 910740199 818666973 865160097 596558329 773544802 5991822 794362088 120979182 404143201 513565282 793329030 857698961 880389308 753480068 895193005 790974370 967021427 659738358 708371788 550831640 720903437 286740845 994439179 721724939 898044757 293146021 521519446 571039915 593102395 80387454 260311233 344820912 847955008 366529652 603200002 615604577 974098476 147862050 589295565 330656265 808923060 750769783 834648356 667726950 726533618 884489090 965530243 555821651 779925637 168169693 370688459 715889138 727977842 52830174 82783745 892772285 950482853 809494761 984891266 900624768 967389838 424254450 591616626 395660762 752180087 591030013 672629600 127886959 835164665 117260393 935630487 129520192 307661458 110847112 668177344 365073287 442645769 690255005 735272408 612203266 659663261 601032658 868356620 220765756 326959760 184144047 685644603 668553512 669948802 995297685 997192716 22144397 208561580 698412594 771086003 180063076 222116417 263908679 309442302 25250189 734748986 644191131 669791030 969725727 986264297 959149387 997717415 27406893 155371012 334439554 954085618 808688922 855002629 530283007 660955182 870729229 930630548 309723360 598724345 224711338 456357961 496908162 649454363 485551037 967347663 989396428 996272218 4550393 769886341 444895911 639625170 385921106 829652684 26066131 735731195 428934036 555404865 792959755 837454418 115162965 132388241 530951502 975012561 513563505 903759113 982801837 991712954 537364588 631047992 797936570 805952968 301753917 502743951 772024963 774462802 359128761 890697463 653176061 988207563 78175092 560446279 195325951 268437309 100720770 456144762 951097484 966058426 815081196 862785144 814015418 861821661 510214440 737957221 320132353 683689973 269357762 863854243 852257601 865584448 338411819 623366342 617372255 768829488 112503266 817715210 370269941 684101784 44340026 284670340 277618457 458579465 60666400 298182828 570267134 994922142 852203221 936500780 974842141 977958236 588773966 679917914 899581269 956963657 81153708 576009362 350229090 990930036 590222243 678091710 619944201 632033832 815258525 968507256 769097646 956968739 149076329 873594093 148203602 624737664 541697058 790512679 81367737 665629757 862954441 889965033 743322719 785867007 50162741 892764424 533697998 676983576 465972424 597172266 104199550 807800363 779611326 885855215 734668973 944164976 60777998 990610461 688131137 916372656 153100333 181453817 701399058 835949684 547102364 702893835 466159547 642917976 510635303 949998109 494412687 603523967 658704314 681919369 304369445 807998298 493747758 876376589 610802117 730862018 826307087 927218895 619523498 681006690 657086281 675748635 939292542 986650535 662034947 703926617 652576794 952796033 693273718 949012207 107603069 630540741 941864787 946844242 968651865 985868149 427989979 828856354 166534779 863231417 625050749 988999472 77108196 238637405 523722796 949780950 730763393 781185981 744919328 917584361 617280624 667379415 242885687 442868300 973653158 980696963 522381870 726277499 689687391 831472433 317701219 975390547 32782809 379680529 580504813 975033013 98854208 584892292 523791477 742617898 803002575 940086103 810232243 874769123 610268233 902356123 391114526 890423456 126082462 625760651 591471535 796447700 713643809 938070947 771584388 889779148 740137916 898303133 309239355 706794327 394673190 686160043 726333216 752929017 151479781 452369695 225026629 581982997 81357921 221252969 429755569 593133616 200566062 389932065 512218146 524956170 289545443 776342048 711850870 760545152 860381236 862148908 38188819 565185722 783442995 991342132 478014047 968601031 772187058 855723584 987176186 988592639 141786663 369960110 150996943 872944495 287333904 446029539 869784138 909290253 922458379 925901429 30445987 429225043 723128761 775747978 965234454 991232152 137343506 927852137 855834069 868089930 910442555 979238654 312803676 337951589 793682239 869745626 837382642 853785720 406217107 712077080 913264404 995672354 484338816 608160051 295383002 427530192 302876318 612369252 679827150 744509944 930430357 965473310 134150172 903361678 888084160 891544665 257079389 832744922 531815824 964356562 218429570 536013807 585354078 648562893 567211018 663311369 918565159 927215522 873037606 957164639 853612130 904063096 250845997 808847887 183838310 433560450 234633755 972140529 415019989 475486327 342077884 874355044 139518420 310060155 617722211 850933433 385352942 587897739 145768034 224170104 655706504 887607690 436115702 530988097 685099004 876404478 121398893 380294114 494256600 669962318 731043843 896801831 583353655 636299096 489915594 847838325 758686090 834676676 90314279 328658501 752573373 824476395 109850000 776804313 604907368 618011073 252283800 310730854 379405761 487745556 73921110 363271493 634592900 865605287 216856832 797129691 259847770 382952587 93011066 422948680 258577254 545900271 667866662 823657283 746374956 901531501 781664682 795884249 5773686 25506385 942708946 973478854 27731248 122976514 787864431 788606907 123264397 475388679 589911850 981007498 412858776 807225991 608442392 875313511 104534568 589624975 733354381 746094522 202733988 787818817 133010872 301170868 58457325 925807036 207062471 630513932 963335735 963363259 401470028 814094214 842587382 954716154 874067329 945987022 239013877 354232252 485079688 865624988 469406022 833084107 180081813 699095897 294766642 761022508 167403359 797510161 872338931 970121658 819093932 869559247 635614451 840419135 777270519 919987343 804054952 960864553 577802971 681272739 709781162 955536112 870992728 984445140 667256681 840381761 530828722 758005168 812683319 889278508 305053682 723309255 931180461 973817656 267450139 737798988 659729362 901998463 667160954 681532068 453868158 923549952 381360102 769378700 180579889 656530570 625773491 901510975 123568068 462953060 57143108 772253787 707565256 997395369 100630300 565901772 284092211 833321602 434820486 533831074 758103068 800949601 517219483 551533288 360590059 848803287 784877697 825933655 800388681 918753282 544877783 595253956 659595596 896555998 132430119 225990995 907870571 954853970 719881380 875350636 76513550 830279223 16001046 862772490 501353349 713460024 114059578 337672698 614952397 981502068 332738484 661957932 686436284 958917363 832085264 969550960 681277714 746741802 22751044 602744318 174968120 415040178 492237190 743270581 183152896 600293268 46062407 926999918 551953726 951217367 485690580 958270020 391295822 933439848 126507125 731258666 995420570 995542135 865048069 957017517 702090027 719835515 929278546 973047568 573201553 618665787 680056835 706197380 254872187 279292709 67686643 394522369 817166266 933549743 674773608 728170825 93260174 888584486 790796980 973921588 592266227 630625500 975253466 979195028 6147227 843842216 887286457 913461064 538223381 833276176 219077861 957681893 275875648 752507722 375802527 567170166 896997425 905415070 877706613 952175310 755290370 773403012 998005051 999608865 460457816 603189180 653874484 801426805 991854515 996587255 623850616 921363656 977980570 994724332 519035251 692019548 638470947 674698412 200876419 303325972 791995618 905475988 679670093 680510820 102675816 746683096 183965469 840936474 76754071 914771618 642923604 919770878 452169944 999902091 663779093 857206646 5863938 387413311 476866606 896539840 741137756 896470593 493764713 989663242 285085858 625452938 63396041 99558853 366964098 751169431 693401220 827825701 340946856 722267299 784984727 942314889 58251868 386995407 731449285 795924171 481607251 624642733 508716379 772206515 673286924 789517045 787058751 943862713 850867179 984980656 158269972 282515789 620631256 924513852 256928436 384335543 439648373 693799588 60187720 535731580 174802530 250715847 386373451 582211930 293140017 761886248 515883299 860899175 955988565 993393282 399239639 509265521 592991453 738291511 881263474 937865037 171469236 903346237 705118610 808987004 501505981 664013055 594908117 935215474 138012569 823784917 384272112 641812160 431199170 663927052 940793563 946069863 750363634 781872111 500706019 741927840 537518496 915976195 431090441 576770743 843175113 882159663 451723697 593038546 360969846 924256402 885229466 959638903 473060380 883589742 910626919 932392107 93353715 997561572 59430247 416662267 55445315 212556749 727419056 943781439 909570144 982271298 683337486 969411202 571313490 881900217 929453073 938180938 160141531 996231161 417202351 793121132 643844771 715558092 335634532 830638059 719907457 979808515 204842764 276901225 545628035 642091666 687526575 913049698 780949898 965846105 343364909 863519026 821918464 837805851 960858405 978084655 360685909 468973753 131232912 821324053 738071953 967501195 971167687 987170190 527572904 997178055 284477006 895933785 271600960 586017058 674257436 902247636 515927587 895627980 712175064 988856915 763628005 869648031 947159000 958716182 741730362 849012618 281039306 561132272 467100353 604353997 742863690 844983625 673844641 838122496 41643696 561224499 416545437 712514474 466593171 526801580 981553883 994755613 491520673 885204991 234901111 394062779 949730557 998677802 791732216 853229119 164233340 871608500 623132268 951308890 910254339 987000817 27043200 442411680 130669255 233927233 624760115 703215712 577061943 823610644 3234524 924032832 429422838 817266061 748004831 871457423 533882441 778295939 717366431 971812955 714870815 928416299 321550173 981278948 822299518 891596390 13441588 165855894 19525601 624356957 665652788 951907435 832493826 876185899 260799833 985602633 801708652 976472409 173368490 908884068 227398210 735206243 846081586 975846067 611950507 789436236 629209195 709123451 620141906 862497296 499969116 515891450 656348643 774425931 139301990 864918914 46625457 408630922 431969404 823434443 268029833 712827913 80140999 264494949 763222149 768141305 397319437 939626110 636803211 797109036 209560627 295439208 289681166 847674835 904157436 912916539 519214367 798432510 142324882 887762792 20529616 190900040 128657972 561894345 558753032 716635448 157032054 920417483 975455858 979230475 579347243 785056429 821555025 849465932 130594151 845839969 519577013 969448182 269383560 562240002 442795687 992235787 231903797 944696337 309257723 548728064 718415718 983504837 715230744 937652873 542926462 685418969 885985514 920022581 197804810 618424461 888414214 959110759 675998154 883007103 67653004 218368059 909611742 946018962 631938793 792305373 86649024 629553323 246088855 855069707 505536745 839833756 203085365 551775969 127946580 871067460 914389005 939388676 720576558 956265289 114717934 840754166 543070879 735511592 944692371 991393677 580213999 722050663 653160294 918130690 705647002 964250026 303903935 962642834 111905203 936442754 378809970 623153300 764549429 815979660 82607377 671022991 438084320 773040719 770921370 849950583 224737007 576256420 544597570 684134354 50616906 942306598 19011299 352236415 425258668 841592918 541484871 758214104 764622794 978122964 51905048 930676069 996041570 996195748 151453663 410304739 388175521 856337754 400621715 765049079 574238836 801053904 791452469 847803021 994132298 994752132 654481560 807792219 884090411 903016768 58528401 626843130 415924873 657887730 508637218 516470584 22072171 415200739 772167472 952164280 408973317 534019656 213761248 414381778 134551494 170473946 167302440 814786147 185603748 674703393 74271365 202217082 859974446 941415290 713051068 817337276 980226856 989099001 360405569 874443663 919053174 949078642 555160947 632660542 725471962 807867085 82438068 209527875 949286399 999665201 306792218 921016071 629865520 655672886 734119816 912172765 592778703 608225818 366343338 996056252 114641765 727591876 492038745 494184811 415501433 522745114 935902927 958310996 332844414 582469073 151444283 777722493 393601349 883606219 330083680 768500975 827497866 920560146 594156704 684560273 994431583 996911721 795043001 963111683 414566283 703793955 27499790 55530595 102480401 540238350 61085860 782845071 248504378 655072025 67699879 654770168 433702834 866261902 518443706 565661820 439297625 971483482 80677817 635604586 493032493 511912427 89068812 468871569 560291060 949058959 594855953 923292914 47769668 798773459 411297379 985599503 514547756 630763976 905086620 926703352 385835246 399719175 395436359 755575054 811617988 974768111 935792490 993551656 175327005 531992037 80950643 173479840 655624533 679607666 582326015 657898598 912912140 940864335 5053665 619144183 531860610 674458072 437069930 505330236 241316798 425163691 371150909 693378210 412632808 471204473 158034499 262111198 292348715 756483630 885286434 900425742 937748139 979818969 626842335 776742294 654021143 996847323 561598078 923981020 837773760 922995113 532104335 597199645 288978376 380856150 795511863 908165832 202749037 429186522 998902896 999238912 479546950 733000169 340666159 963784629 864257029 887650595 789659474 983597442 986858816 987385631 957223133 998307125 134307330 258708268 97876568 931446255 702526379 869147125 85582311 831973906 372444066 923353785 767527023 828710489 177828361 517254550 902953954 936651106 663675517 948865359 936389604 991453766 529264991 613813282 949987572 960818381 885108524 900218601 726558907 860021727 560246738 987200473 465735576 794322946 749741853 839697586 509619073 649176303 415402537 787905178 247918892 742417139 49567770 856718744 387671555 451151645 59670257 386061426 59514562 638070101 824279439 998836952 380111820 913803133 252309934 576297576 485914709 589360720 652107022 681668868 618859410 807574471 367812160 986395076 659194030 825715641 762135 650566125 917446612 956906967 925884710 961156024 807869274 923745542 980193825 990539033 265684573 664540646 776478217 872820044 160996820 864024040 442002860 578134279 779918604 783225245 556259320 996995331 8594180 94754418 292698501 328064583 637118345 742015457 332996171 786986454 772502254 999372689 886289286 927696285 877311453 955041470 305622350 536059879 15271255 495285205 450040547 855880808 441955487 850150881 759643331 762996784 249110939 652802326 587921283 750992559 35189324 654759279 668337010 777686124 545670549 995615920 411781865 622612539 822147105 901352148 778230491 868738433 334575912 816957103 355617100 707219882 676244466 723679671 921072040 998151479 222149103 228239831 976563239 979363554 478278080 717401709 157107782 827252688 742540492 768956416 685884346 787629257 371124108 589630644 418103683 916950873 678851953 690331856 734627996 899198862 300724445 382624121 989049144 998250404 937273890 971372182 359723722 908603841 798893866 991521141 370410830 595486369 161834522 508906174 448156251 988011680 239356622 734907324 197947224 286229711 800348236 841073829 938565694 987603052 417266329 858099539 495199510 859927413 836343070 905223106 679887643 928432915 953048221 988591366 628168670 959845577 452578867 471530728 321393696 453152194 762447308 952435758 438891133 490446712 805702208 972928182 366871525 736185978 943847834 997374135 215647575 521852843 92023914 363683370 586370746 913460410 845629304 941806083 376376458 909406567 554755091 817242183 980509874 997618172 848895071 884066557 681619455 856678843 652030583 833292069 345136493 626904699 513093793 994452657 998846635 998971009 233646136 273088474 763847291 773960043 30222142 156628488 254474340 352537888 761697813 989285981 244995586 633821519 898193826 990429600 572824410 710940031 692345197 750596845 616742510 870240470 255837332 807147666 777029139 777810793 382258175 881709022 107500988 541873119 750678726 841471814 634835289 846631129 318642839 817067682 733681733 758094340 600356098 600808759 13479069 26574395 358559336 551002345 42269804 298810424 109779100 530193513 186878135 750182963 882614972 917013477 512962292 723780269 356541019 931687341 262552700 522311839 614747720 792019348 472932019 877259096 439789716 466307398 680906898 913028327 513412984 952155710 714585925 912117040 798502254 974652745 403077261 566635563 422818484 430910350 108889289 792230805 805796728 874166914 167585926 976840347 859729292 953474842 13870675 121002786 94305250 252409654 440171260 882759847 533866698 747394477 373679284 821263515 805859897 971737112 549957793 671569021 344321001 425827696 779246515 838023247 998096121 999480838 506940623 740435666 737777599 783012191 452219741 965486870 752067414 811604946 555994513 777715540 628543188 797408391 972643 538043892 1353991 43967258 767538741 973167815 951104650 958868960 47584452 664201629 817151658 940518086 115125976 300897615 578473175 899657421 530166182 856768417 270781355 568107821 202825361 727937814 485457412 780787240 901053927 997999681 860535560 894467960 146089973 272823611 50871915 953548815 543109490 758161077 633202711 996795776 258887220 354294011 369570518 580344015 44055863 424780070 992702241 998570210 230592091 876568987 429069192 615120669 818810617 838953910 773136815 827757849 197416662 705862959 502989799 775129188 416662701 945478217 485422750 791097944 38608565 227173171 714297429 865605417 105880966 655432454 349650869 376397870 571251156 677338343 103046186 395071476 587901666 800804677 177123168 333152181 315672491 591061989 532195254 924254468 677856575 805053760 127353384 227445481 969070806 991990770 948655729 958099546 779343996 814585073 846003440 951195409 183061345 916404234 767533204 975958238 325265390 529198803 206532520 463741902 330232580 393037520 606502861 906440600 377397492 385842444 67382630 257416398 198931502 960333844 469393507 940071877 162801135 369090100 898767952 994688352 394954154 967986066 376243544 574307859 86514279 124011989 553409198 974355972 722752181 960878150 260963974 382394408 681272518 700297907 906456113 957625890 905650987 960403399 762238362 997217501 437879433 813934605 489675240 672478903 502086012 537802891 960876832 995607864 728999678 912503482 535511563 713518985 62712196 305012828 985398793 989147035 288797779 728375418 334306722 798299718 51521173 906758680 35289608 639962728 118107413 438372776 750492461 878863603 871140447 955378063 147909879 753567195 12546445 871767007 31670382 481885285 43521417 304924889 286062001 672496280 76099111 517654666 607691559 733199217 39136343 661814306 119444922 558198264 963357147 980318674 177714949 886019799 491517546 886880903 786274770 997401083 717343957 731043070 660313689 970841351 127463788 306090904 735074253 910297839 277174278 374923131 796913988 981915262 668931580 710301442 669848057 905739749 622258133 628500141 632636105 651997862 700611968 734675089 223399351 416848373 253265289 583555241 894341181 913196276 657814528 954433287 622022369 783571334 512664604 697655110 49208338 638948538 414060532 419210968 876588618 932858416 372586523 732062234 482842017 555711885 112282404 187849281 100379860 877478619 29171735 234886710 185360357 504618999 155013258 276970049 105670977 437256418 203051043 397456133 446084126 602052104 466288387 754177419 276250719 526779667 904193515 918819057 53085473 962713903 745994785 815307255 562337493 576513676 87334480 899043917 78233274 556496564 27010980 467797844 396041663 398655050 454711104 930124306 581627531 655769173 157251119 412687778 404770205 573490084 302496331 753018008 396007969 779950116 67520325 681059281 31556159 169031568 233544283 234209112 960270992 963313349 926140186 939402712 470045649 787975034 251059493 591595136 700779025 763103161 464595192 643255886 620348254 779830269 154639227 757241081 249795741 456042984 964173518 968002663 569338509 962799574 435792184 612079876 867441602 948228120 259256030 290794533 579939238 618571551 21963477 858534663 424515089 433583960 225372848 715607123 718026102 781879243 365240625 635498414 341679590 848634804 301809638 741540493 874489756 874880661 456262961 750633580 944261591 973875117 960317436 967020127 668907459 861393544 420520499 472780702 334085391 538280268 278887261 503105309 305913272 479223342 418953799 672415897 942611539 947914835 627993943 856678622 669850271 725224866 682165069 868660903 182726173 591458937 762121605 807496024 202036236 498276332 522732427 774367062 205697594 775779493 332431512 569249978 367786883 635683507 593442660 806716549 171313597 838865468 198464464 485425505 523674860 745164233 667356142 960599456 250409871 986485076 723483127 878187841 693786697 856088813 98543643 174898707 753906717 921615159 857850075 928436061 705143395 770032163 727279379 754543278 875114222 921761090 237488235 735074350 380299320 775636689 856926463 862103599 338820074 449033934 281609680 833771291 389542019 959972956 264781818 722657051 938426719 995665777 29654781 288380533 5125230 141702245 994995364 998303416 791172931 954528443 306141929 677852161 419054809 607453996 426424760 434805129 937082536 965433470 984759457 988261212 171642421 961660523 120065729 880776448 545284360 870519013 346374775 493941388 398714786 972395261 639910740 775117392 375294982 913827494 965416232 977609804 47135818 725957431 537428115 738007077 780653956 963300465 385874749 755786369 125957051 729694638 285753104 938854714 147551805 482962548 504931546 955048280 769320539 775424202 918816349 946120577 929226757 946674549 477336573 927482687 644164637 998310059 330052493 459575605 932461678 969688600 209009411 222718127 341617457 900848595 260458219 318410136 833610734 963036550 675300140 923786253 156634792 173564219 963370815 995832294 491461194 906753840 744371679 895752417 971436659 984002612 642117605 661873809 35255999 932472628 681262518 808253971 700374921 701653617 578315103 795581101 512868588 552668860 408991700 817102061 767146030 817105564 568360065 984386938 426406943 541249215 72993697 696334620 575260874 954526879 841691718 925260211 24008261 553172092 460479903 584724822 984598205 988085823 996443574 998636357 356566826 969164839 846400878 876129349 453537855 836735957 178861664 256021310 313557572 888032790 179724874 344335217 717796177 781108913 536277569 631289489 929230511 983708788 383581688 518629666 34905152 404507737 871289401 980401146 51838132 316681880 761312005 983193422 967171089 997898135 627296671 798593085 641187661 864715652 924991169 938253819 493663812 972953496 773485784 812376716 198744211 663885523 125209449 488463094 957256014 991835319 244240004 546832721 29742941 686669986 171635011 609082589 296685617 586715436 377914846 505454990 245821470 277555263 674551606 708814853 333381776 676472003 46755023 276916124 760028665 831944553 754153262 968899566 881520919 919640391 849717019 892761814 278613005 752660965 549749791 608254504 552072836 808811908 360274161 648017320 721528382 941829762 605586675 935905730 658848820 949994191 938874512 965327487 350900721 718670294 363572058 722822603 557402952 867199976 66823863 255013049 702933224 782924554 8181998 132596553 379520126 507773589 73999423 458291514 270803299 539722035 201103827 784279956 835385596 887320241 970571061 998479540 653936015 859668573 857772109 927882538 301319584 750740558 252100793 755356901 351136014 920873955 575658745 710826322 586915395 778848619 367791569 564001208 62901377 210194257 208395989 357891927 84792663 763771758 90344746 831482576 335570249 347621246 176582049 289649076 213330195 238420532 239356905 515297927 388352297 762314856 681107280 786711366 212486569 956963690 241554234 518248968 788774856 904339204 255571147 923886018 590197676 738456632 266783548 763793680 385551606 474114929 515968806 604723978 733494879 907429563 77902216 110438933 328244321 747332476 148972352 272962307 118163594 604005951 218785671 817014575 555610203 817234735 208188796 526739786 889794090 890087159 510576648 639696381 163238541 667005807 616943200 787246122 97270619 343665703 234846253 717654437 528693613 653845421 818295012 889219637 232109100 616840463 206929012 487721970 535251709 984879512 830522291 978675379 793411621 852845104 721334610 846525732 223101350 225818003 386215982 658727453 937114768 942023626 352852922 798562935 144503723 619448134 36659982 223531663 641706465 704207080 319088228 534445002 871891709 951722948 467314620 555910721 339231726 756112844 898325673 976573898 218689914 312257809 734119708 924536754 233096143 927551315 952768391 985287902 951113143 970349293 44376314 198770482 907328965 973730870 895536103 952322170 240996567 970666348 109206148 922736125 744928759 943849124 745716382 779119299 117172657 404140602 638220390 994920343 766657423 835190386 87515655 610595781 947379521 971887670 761414766 763930313 666975978 897197978 24562935 981985156 280528009 877511348 743650724 975354764 654041325 875388757 345811886 691524261 128586019 641131972 463194709 495345153 753685132 924111576 32683235 750795997 861003606 964765015 683960136 801434845 923113256 956414565 343677782 472159407 477608223 607815167 127902175 377384245 911054249 990103570 706127955 863909004 126344105 536900776 453443069 591604584 371256574 832981238 301534749 765103686 712315862 906398206 44889407 635629415 25842650 130356341 361504920 407699987 844143617 964375795 718911136 921518742 146907014 699915783 244545309 778145704 500147778 687209791 639678155 949003866 259064372 857014468 305524165 981133105 181065104 441768305 500556196 731854535 566035789 912106803 749580257 924563071 936339338 975814066 754765896 782531834 189166541 513647666 378911410 552953998 379708122 532436109 41769354 141110587 489153299 863649476 181639680 742236648 185946172 360391418 188145388 949839658 638770464 976703061 363834349 854955458 875383768 957137763 349459973 669445301 797154041 971460246 831382010 859205882 216566267 634704926 644050709 652673079 160432054 425413604 452451799 651975648 933945014 935437083 962517725 964042164 587396022 735046046 649484232 810478204 876986028 887314605 920612744 936311316 788007920 867420777 22587979 128362679 868361208 932473258 294218436 496168587 775913681 952146830 694619275 971802406 321175871 808224627 536441529 707525343 126422581 945748607 614788043 753411071 43053907 670634328 854160657 927977005 381710638 837006760 394976253 575591089 474121545 602987603 491738089 824353350 585081550 808171217 537326864 599882304 632177337 688665139 125582508 371093965 986461917 991589454 778690619 861658527 423685126 687649165 168109486 360304418 426755373 659717470 771207631 798136923 803635681 829511390 273281127 475226392 284488791 990955139 232405690 832230271 948215826 992642299 572575739 727714458 890642688 933995718 534263175 815301669 381301369 719453787 488109224 894646739 161012351 699397568 134360892 811328041 954070342 967447592 858196515 874245009 110909163 721597833 701981741 971018178 936720201 967675054 96323106 345045370 936793009 972159295 242565490 747033314 453047275 717365459 573659234 965623064 863128510 974348458 565419404 921536634 427416003 466647442 538319996 918910187 322861809 536694598 722428394 821937651 27317828 898217711 222275278 616983335 338089412 430772542 813915368 827348434 156668626 764419813 210976439 362811771 649812756 832587546 53369620 886054556 615706518 753398207 6203216 418368852 140568650 536801991 782794791 975876229 922610197 924089538 135690730 364944998 326086855 993802742 207340531 400723378 579831448 652600272 762978760 817515233 96926714 894029194 61185652 488439811 10656240 502179263 948899996 981496017 988767707 999821163 523023248 739635444 948911407 973625824 87742980 598162150 97401676 630145137 849783565 933115396 418712605 726509181 187820209 702328450 271523657 598844290 205514470 752312554 876883240 880583410 366213118 531782695 845634074 918833084 665659833 729993934 17248068 676402787 782671692 854695125 257932875 965081307 687833351 942344542 591520779 987239234 532194447 884769664 633975589 897226475 998389524 999310316 600727865 632901179 194859750 694547519 934146583 950438047 998481387 999957035 113104892 251059377 452867989 993071759 13492867 179882427 245876124 908694814 275036802 324792925 314044169 926941508 240967047 883451871 620301248 990186559 703579543 990606443 975510822 985360657 736004622 814986421 516231778 947631262 792033641 799508191 834989645 934711455 985768148 996776821 393585008 716132684 192988813 616157426 539449625 980020300 577525172 660313377 21847995 412360674 791526148 870649478 132551661 677143880 234782928 572037001 294462458 901312050 500830779 920073859 674391573 685118257 24597632 319134808 659474042 730027216 717998061 881316965 209139251 528228394 324303868 330440415 728857096 861985512 109848478 477343501 895998323 927962848 989534726 989624577 772942953 849008733 972157272 988534009 276105110 569621987 828187548 963688130 70949456 128416297 381171754 738081553 139458618 415028288 591147354 623271801 359053425 467766927 137152895 256273328 797001155 860694973 30954609 161669855 215080188 717324555 144226616 174020954 930472416 991578941 81897600 804023896 475940656 679142072 7051302 945703561 562857032 989429773 546980294 752061573 867106576 880952964 508803474 906831240 172548376 424708298 991973402 999559705 119973071 839347097 462614743 525825223 340047946 512096857 677705080 847709693 764105640 850290020 686155511 710804747 486564261 992893815 909952943 950956227 848395210 926080243 521133685 682610042 888657872 957508391 445413670 945582116 166444316 375577734 902831299 986082656 756483553 858507326 36343295 558999364 840476697 983636409 858722500 929271436 426367665 792237676 896592393 906569396 501844368 511611832 785131944 914263534 806837762 860811126 200603097 376136679 190031922 264964021 865672349 950608331 12301528 381070681 218631996 676263537 238210248 908061193 936257399 972425229 471270721 684919585 969634678 981669968 299044725 860654251 315149565 323845085 880717652 901505566 176949475 449841142 38315496 422842455 899197611 933151940 224711871 777088129 66252264 778190668 493569556 642982847 138184308 904869152 946426985 976375981 222048659 302288137 566503387 618806889 187697423 314785907 903509425 978541577 398268126 548561897 611136702 875961307 176965384 578073827 62936995 849444389 569532543 727053623 123812578 860208403 237503252 335967873 315674700 529359125 400764728 863749611 54205562 231001040 404069457 527406560 228891343 601067503 796740159 947609599 412663723 971701589 410653806 649123848 952393946 953219398 83827281 960632422 2773598 279346847 720327188 861052212 237400879 506099449 162627645 608820790 809586685 895630270 562647214 884972475 52951496 134864660 556867339 954203729 624182015 842669212 57383386 774417660 406475818 798447361 649348704 962513311 352168830 886832492 798836367 906539292 831270254 870725771 114363893 869512110 651683730 762177478 387097649 531597029 43279383 715356902 138018917 845623758 918529080 997630082 528486662 716574610 436114999 846075920 907702373 948006587 900293421 925277225 669880235 911359508 717893931 983914346 446187567 575808940 743689409 851408777 726816417 742732367 322614899 739671717 233192510 732329488 297516126 987843688 824413694 877512939 84851715 712565291 212790277 813607357 589535326 941886623 349189381 801501951 630725658 874749862 133986643 858613004 312664387 635250350 620187396 775751393 890911656 949988165 471698349 923870231 156066525 735813409 603803999 719950170 574034875 780428230 135912845 808255078 122547529 913688088 490951664 799597986 514681095 719617452 264446139 622900284 890629763 970261491 16193163 43837438 203194446 982268936 686534611 735755387 493905861 874597649 627602315 867325709 849885646 984575554 173338084 672236913 850521512 867621378 130320299 670738482 847757336 893713220 768454592 975223119 670686001 816894377 9193977 91560478 266212333 421454065 320023502 689646624 552151194 966853140 113102809 211775535 304533298 856118875 875944733 921639106 448060671 640257624 419555898 733579768 571484462 590522978 694481545 712819276 701818190 933410975 627437145 936067116 360011372 556241007 264339544 942217054 881760938 903085972 570325125 838564548 753416564 902461873 198761172 778789389 62849423 148941463 604862068 988543668 881906814 951554086 10399249 664831564 50918065 991378195 437026801 578454968 605463683 864666062 449599780 758389106 810590883 828897795 992428847 994414111 402661369 805681966 872723606 945570458 30297261 946400891 922707944 966096880 479865666 797492162 465099966 529897211 77315809 742182077 914278253 973856455 930535357 953262974 951957388 993748270 546164344 929003452 353510785 649520240 559278788 656084528 439874708 837186089 516902146 917180851 638454232 766344529 877436224 906227487 574218437 712380784 611306025 837776619 817895622 955033883 188500963 805232579 664004016 686366579 518138217 857575662 224098464 339713077 127642589 926005733 344148732 689265439 326436814 341219761 67785584 910351162 235434314 360892621 507512375 683678691 280201801 429488259 77452531 822255887 764997448 897948867 906342268 942162720 695623281 772752170 610884932 978975376 185245658 204771035 360544732 643471133 325134924 822556576 319633005 790892012 216100222 787887811 772514722 885019275 63970694 790117779 29910692 481769546 525323327 815722328 899276646 938446780 904768828 932789891 598104475 907804863 219019366 581847543 941353427 975219191 446771301 583896698 83293986 315105695 23099330 773377842 56528125 863344526 598927886 968632673 102015290 313143176 254261412 484926692 262388676 492041360 792743206 842694596 644646290 742577770 469607342 636826436 309749297 591200013 636691258 875915952 588547333 990179385 329915374 520124742 506357023 631053021 467394796 664974321 767686755 855882643 59635252 952720007 496078526 692920064 78034552 344642346 804562476 863900805 14321544 423179613 427729400 554711685 599070944 738364910 493909358 722554635 780629812 927873384 74711205 156034465 230962137 517213468 137888093 639165835 806000563 993753067 416401669 665301844 412968744 986760007 394930970 821443335 548247534 930022856 915673481 989554976 534809502 765953212 308515209 831630139 273201306 492992718 345193573 771489696 253932198 345022000 641337249 756168180 455251000 837306660 792402566 805791928 454293972 876832870 885561495 945460486 345315893 408950943 342881608 937116493 817094858 897285974 60676930 551989831 807544367 959777241 747787366 918415928 783157702 986896032 624870689 870658610 15283602 661522861 877002184 947913645 416136599 427069528 790761242 876406501 550663965 589289576 283339223 916690091 91354893 388562182 995643554 997430635 87860397 169543892 28327750 758065126 777591265 867593943 74632189 869403165 52806901 528566750 81606251 763591394 881246087 887168898 819690001 869357860 198176419 368934786 642500437 682168180 159101878 493939324 497346084 880431651 1533271 932329932 506298508 568191884 420251059 955653915 113285519 731155619 754787142 845587226 151972914 892446731 399717753 516407782 13344038 872565002 603177530 979183013 957262123 993059821 447490891 481016008 908196826 950436440 212669275 843603603 894491440 901594029 440066970 870876191 255351643 728806400 823409122 889163155 143494818 804077130 933399164 992560652 347714346 974813861 371781820 972781246 54747328 707281868 512779107 828099144 179507540 504956094 282023285 293932392 338885712 613891811 635685864 789689110 838498778 921029636 953369991 980326754 937198276 985162578 4270310 721603383 542609192 931250766 916254752 940733250 13495397 400552198 118041161 474086200 156431882 716809798 846204144 849183294 443909388 646036980 252220507 995682034 225263889 592670552 661543440 921654170 491267134 955873975 927542783 999168708 819120928 972847153 781340711 986226802 399978517 679984531 55223216 648005877 414019331 871637850 579775943 630185810 284150925 703217551 377859942 560337692 472547053 824861545 764289022 920463476 576314567 826724478 995191074 997047509 351395626 561649767 620688498 970871170 170080252 431770861 748086332 884495515 793249339 801861283 805822105 912715406 889396990 986674342 207317347 830027430 208067244 998327872 298632732 789331874 921302596 951184960 174251761 474046002 661314383 789507952 857244230 985306066 498682091 959715049 378384161 445648084 508480442 857240727 721107645 955038816 170693275 871596044 725899 878600600 608801318 693326997 632824926 943717135 961785382 997159192 50555332 241261551 216526616 483596256 945545893 960009742 973976388 990988873 93754605 433896339 181495458 781626243 357866390 432766697 669053963 775729238 688712867 923516562 966975640 994821839 449584433 982161250 23387736 606031099 611965000 840938048 916546713 994056273 291102304 930289700 371593809 534266107 438636240 564637863 427359033 815958068 622524189 986782696 13841229 543743342 220116807 958526481 591578546 896055197 572466794 947084992 642262607 876303636 353504219 957417521 767892947 804117692 543801590 819889054 905562786 974098275 820763260 821716886 808505770 997316564 180429413 814279142 669556731 840896867 281315131 372217869 211903842 860903334 103031957 424323329 465836049 754878701 456031754 557203303 705980155 929998842 335098799 708684628 878902330 980901876 233482621 704501166 130901152 466331043 349313352 916374041 296737099 627272688 969948754 982698984 676296681 863027169 701790611 856084819 363737665 708766651 406737324 588705854 675476799 800139208 244368512 368572898 804336632 936177598 664853833 688681724 690990276 786395999 481617873 624826268 413973556 474940934 486307218 635208010 545819075 866258670 504782749 591649645 865284949 934052028 274640351 960509650 894783625 950871873 652129131 830877519 650191707 941460668 127271081 908714305 2193352 645747161 540090526 986981511 122800011 687512605 875131726 908717706 335475052 840773233 296983597 619442675 677467090 762917050 654242400 806196000 939102548 984752123 656252487 983036830 584119865 669926887 412094227 714901464 86437375 989790777 745703902 970201997 973691880 979439671 316670874 605960765 114391459 844220288 421992776 539645454 872758144 910749156 701084571 901645279 257716662 471797633 925777224 972115041 266857834 646072940 104646582 467234003 956028845 968459402 501105530 704447400 792329805 998629032 894405375 958597425 94984183 449922531 570604470 658190445 421251181 884199690 868678476 978153889 864879418 877846076 277450572 959665996 130368069 938430765 837196093 942526812 899618465 957205347 766765578 961484416 814896815 932637347 162450095 982629580 200695272 329418703 79335920 81003753 205076715 896847906 29773834 994693238 332073383 738372325 510978100 802337142 788275245 839121320 450340084 488953923 949988215 990713960 307789883 814607295 368189174 690124211 946092482 970319303 508597821 810313030 89591127 956162353 669830261 728320882 2469091 134613483 480921385 713300461 460237820 649285588 633852061 842632745 72779379 816189511 179262361 569750918 544813645 930678857 766843186 863599906 933059293 964591560 193397483 301984235 988231338 999682497 625574669 737755723 884469449 966187046 117060949 706764894 293813689 510539853 561390324 955367062 785960268 888101498 879122805 942809711 159837798 591270905 937569143 941921466 484252592 782203089 921130850 989608083 688990537 942746553 88448212 162005444 715047734 782734348 876253196 924301642 826876979 839786723 549009835 872713924 882107626 925671275 940143708 951009667 797603452 910884072 246552988 444373215 198868945 986629585 200140064 843936304 306421665 801501093 517647131 572926085 15355611 986446884 91004186 995142127 346633986 954447620 53587796 386792473 269036186 882074437 777081308 863398478 806597604 914959632 578847080 982319615 656066154 973748522 635845217 638606798 543375385 933988815 156626022 634973691 843454925 861674531 38451648 420824103 233091938 614117576 78413524 85085961 132008509 368732681 321316432 498293550 63979365 281544542 524221498 956898670 158990344 545101083 727862779 744304512 289993548 550394413 857540412 888368834 773446120 932212145 569243246 784163691 545105629 724983477 613682785 822166664 55047697 557989460 252672996 318047867 685341162 883301595 857376161 894436425 841931107 976691603 845086817 936745699 733614941 950854995 96882569 317036068 608441925 653077507 843811988 975631715 417836782 843862360 859317581 975795517 995115497 998889834 933991282 975733877 805183825 953588917 704210328 767230216 382974278 614777215 693181167 780928719 807329920 897250303 130956762 402974173 500634913 859104169 782129764 810496409 242755593 610624693 550670973 908772699 408460532 527095193 856122391 899023560 240473255 543583799 289207842 682600672 39720107 962409991 487821364 608556001 662629485 788182574 583164239 972781023 880340627 913829122 26915334 67661454 168314059 710038875 552610929 652426682 746737047 800435204 99989789 647113253 594712089 884968257 2951656 888988806 155421899 469113467 94480312 363708132 729754668 899021645 336488040 774739838 253070895 538645638 291683879 655375561 215868296 922857733 479320244 774081946 558702609 559181117 75174813 121304627 101153266 953571202 981616193 991776049 983359903 985480931 695526617 927080563 602310888 619168567 488887265 581692292 638245262 652567444 860532897 872658973 534845859 638541397 56008944 233062218 377131674 762724677 479095109 836841636 197418845 715313715 159109387 570527502 583680590 773946039 999284513 999496275 859850160 974283760 177279060 332403034 599879447 953428266 761975484 952297768 24234585 379260878 678004746 952021454 889687341 995272129 660454274 911278045 482975434 860386988 127440174 641866360 198591938 466179575 452782270 745042527 402791284 473355062 157737042 427719470 929028349 937195213 610833579 987528973 248888668 653660300 73125675 595197001 316703699 999284849 748526570 919701459 529111768 933581762 11982071 336854525 60725740 871826350 330057081 521813459 355201980 375507340 715286637 765092279 593296680 734185369 967134530 992740573 445302074 502954159 893681223 959848678 489179433 690030823 294724684 507538556 111914543 808794717 78335667 353198703 943065891 996764334 185159507 440866312 678618976 920385927 454562578 517007316 481071798 518557149 948628522 960336524 72813479 862224283 316429805 530163978 995797271 998730698 203655950 685427781 112675923 949248532 635267065 877525707 898096285 922568918 986787036 987173450 638186124 729981412 258248013 366843535 201977070 746732696 379533671 590825678 152402993 240996014 686085379 777316505 409333231 916252338 72988588 806063306 409446307 820742601 791049030 892404694 599898765 989392799 846118228 977865142 244928909 613564175 463697631 673560674 728411787 957293038 966458233 976214810 638073078 786120511 855033369 993025440 960088618 967601271 543317441 561761112 183130307 790774926 256106551 756468646 671910014 928463848 309530628 501803574 234766043 694584271 704803902 706804545 475498096 698942908 23423218 254430723 425876094 746517693 980677398 985640365 646368630 936939403 972183765 997627343 630413080 664266078 451199965 845280163 345461937 955339543 55931872 362821158 714339368 804618416 619359549 726286191 727825133 935835659 424857104 751482091 657984971 974805140 672684727 996971863 2814385 672808749 922044308 923006089 699469725 897719900 2661295 516436073 621351999 918782550 768650933 821084974 613998221 684998256 518879798 787472312 413925931 506584415 500160787 519915935 42084107 876486250 290566546 553516684 594635730 903482530 623700136 867899024 264074000 751338694 967560020 973361861 192863071 747427027 853776156 941431619 305293273 740465590 398949573 524298314 49649295 463571077 408501887 774761330 444201156 801325580 720173929 971835966 916455516 918450698 166009986 781131923 13978308 788861378 388762201 504506163 785718423 887589947 177416653 858504425 712258909 947929233 480684433 923801578 343992549 420438956 717993841 931859923 89013394 836743732 988334067 999967222 254199136 372512386 446253619 480948025 842498305 882200235 372147797 863925630 335441016 672540825 917524799 982706243 16366464 83912983 370275127 577320981 317313641 378811189 934900812 973615502 455497882 660708698 388502427 996226166 318813745 909780252 437643807 832714076 42967970 383372439 913075514 995018036 908509458 911476523 408137348 492449595 183505041 968842544 397592488 624410759 18778716 482409307 521456231 687081076 7549794 118646877 333366898 897513564 709314958 855813347 912450645 924283912 522606421 624695674 31010478 161798597 685301347 865907456 824931731 960568466 43111105 731038221 588691175 631705955 284410480 598265224 706384392 978215275 158804833 515152240 105250515 759772439 113593740 530397948 312835496 842453229 354816692 782760705 319999751 840786195 843508147 860102013 607647276 835968534 401604086 939779236 23364093 692024589 446465530 723032064 470753534 523569673 728876529 763103661 333514144 438509080 935659972 974456449 132564798 602624373 216703556 385841342 548220079 596108273 703140643 744404005 985256953 993984788 968613808 970552531 395610994 587873088 148943752 748769810 629651948 684024576 851262559 995079911 314622124 487814692 104804414 547000195 75242860 690386334 963735270 964850360 415128983 644038200 491301991 648011170 814579675 985519845 914623932 981700995 443145802 460250169 576426103 761010406 688880356 874005247 892613739 977955400 855204455 905879168 353976474 790554221 275701849 609341041 224408995 652153778 88598984 139058183 560580795 779755393 564456194 761132557 374028724 440690187 933278428 980923050 884606082 996195613 82918601 613883750 25942024 842513039 738400611 862605493 372759267 495987324 138396170 392560805 753358846 952931696 597617746 823912487 467405963 754431278 664869300 938862839 954739656 961690153 537706677 626541786 945608917 971224218 623466842 975572374 838176855 992665530 404099431 714766420 509543944 673864358 113547962 271713801 306111537 810965502 103849215 182298152 763805697 998813230 977384763 999960822 867353966 936351606 569428775 731157499 54969598 453034035 163500702 715361526 679568421 715300934 432260785 498805063 37504864 612472410 93568176 978650598 72240144 111908360 899044110 918256155 819448280 925021563 844323502 878263802 788364690 800798324 778381515 985359345 998321625 999374130 313653554 411716088 898491030 981729352 417167068 690157250 592117333 717750534 617830377 695101189 492379077 545376769 55480542 101452978 881539412 889094074 377895007 387921545 841544221 847186290 954909873 988587272 492542552 881667214 49872432 573114776 383721721 402590401 597160473 818915854 84489980 781894477 712802099 898732183 746888214 854052833 939072769 940138060 587122502 970369556 275832550 482169964 862492845 985822502 866555140 978869139 721460542 816151698 243558275 805676312 707128286 932484213 329841451 760256530 643708280 925491185 335574870 868063635 722299132 730323845 472453622 893627256 49082595 388869817 557037619 796466639 869577365 883016831 59512191 203649190 854342737 933942697 664532513 705019729 294621760 592458923 12017887 88433666 700147621 803579754 1099938 952368327 704061698 956071125 237771949 803572841 295745201 481629570 917729785 921210439 566868150 724489746 290607319 528213488 716382195 797802708 18269618 825921566 307109690 312878917 994629385 996687855 394920495 438119891 264547201 276806587 579072879 647142851 185008820 788491663 647963880 898536004 53033308 612208655 860525824 913757122 438940815 896183325 544543978 714051267 468121090 928848604 263706506 503507637 824741110 907705715 838095355 955460024 186730634 461384937 588335828 814904543 883198394 904483390 130900081 664158284 227751416 560915678 831068261 945197829 688392111 999738240 978592868 990923291 80125898 436330394 62386349 893951708 743707044 821531946 201313261 356059576 641427154 966401822 518654785 956052653 855035050 932571124 998948934 999480854 291815694 806351718 430426869 533961737 879070513 987159391 442549159 525661427 578793427 762585518 386212085 669568272 545316255 853940902 622980314 723112785 478048471 977493408 615136032 780024713 960904488 986130541 855034271 940506107 186386718 234631122 613282212 702851775 554863421 662497874 969673655 977169492 486951969 935798507 744644178 887602887 475385072 952273524 881103231 981816802 803808226 818752403 60016407 119067983 681565882 797051647 208042467 744373193 80043173 253379880 569740953 878815763 158600911 576495351 408084797 653608778 654401088 751856396 558056510 830468197 567896629 625974438 192182460 507780652 704307317 736628015 906532410 983711632 601351297 832347928 473558880 488975966 656218118 745238358 140755001 793395898 145111445 586449976 193754179 854305385 865881250 960839310 126179606 369457073 852011761 893438763 210487468 679998885 764070400 870008789 719307259 828631028 707554314 812602449 637363773 850456054 1228820 203464897 367371117 923070281 377474938 654029414 381892957 389195768 21824409 382109479 708606260 939940402 363819342 402373524 37109826 832693777 802658519 900753287 720635785 912398425 794258958 976609153 526621744 605968563 241008106 279106093 914117195 958939599 367825583 981969095 343363611 910194811 46593355 70238902 22119344 32594415 634063284 674020946 521548599 614698127 641166078 708977167 564180407 811253998 701198790 930428404 637048906 954601477 135407926 550323741 914520828 989127165 961999576 978024195 266867239 593070673 930561450 953060620 394292559 682087661 900859116 974146236 758790939 980966446 250726265 945023289 239766763 812060842 729931917 982138837 66328384 386232445 622206549 638604054 119676116 418947758 83824301 129516657 762220072 887942596 560063929 665496897 444586895 835080300 11021290 252744369 705547294 761962176 25641448 813576397 972410987 984290041 385779637 527958380 733573051 814672617 297848233 588400434 381686263 839817316 190501363 510219507 484292777 786677985 690274158 919395591 769892059 777762555 634046639 901732299 749445069 970447293 343833363 859380368 597408613 622398987 604853118 995481906 540012836 765954203 193619232 451965684 954843340 959534916 708741909 992665466 399902207 922392709 717066396 921669467 933924444 943041778 761934090 793170995 512228796 972188403 286186437 540860320 447441664 748601877 642572789 831440726 246405811 813236603 404865962 849631384 68545723 517916313 821374757 961926025 449639868 906587105 394605227 468350704 566391566 566903414 581291485 670494073 419742500 828063821 507309869 670252668 50307287 832094769 591849655 909073027 420176318 671555970 222113515 784340762 949727415 975904394 104208559 405942690 768683041 889381147 540658339 614969301 190197774 849150853 998297966 999485121 38484296 467654146 204055948 531027575 442885724 800963038 497193792 731809503 469358749 525750361 178107867 910929988 304235603 637073376 256950391 272673367 599559597 948425543 397616589 719532772 877600125 965566782 418526453 555751107 59011122 323219262 16038910 84763639 228965395 268982226 89723340 440969398 770516055 956466442 498842055 803235276 322812214 953901641 637780851 864800650 162155918 432649600 485969096 686249026 772160479 827076362 910746361 921684981 430443628 676424164 848556837 886658717 845638747 912874928 431186539 523342144 683690661 927267487 659857903 826759940 879309654 981725148 168280346 920688610 698994001 910023179 771963673 814306961 707093460 985323354 602312666 988127129 742387616 814482957 535683977 603951804 259402326 684673271 763576018 924439664 305698388 875507050 422060052 869664954 732068330 892771071 775217947 831447075 276562258 733083046 474213937 529805797 753388691 760078817 691302596 712626534 406280565 743853400 8332615 834810534 520980155 547992237 785286093 876514557 354497218 575537106 991540777 994803199 468649239 658368888 127395503 811422826 597357652 712164527 172356652 180462891 994851065 995985030 18714840 871908700 981292557 989738097 344911848 531216605 81540869 101848703 669475799 754429766 153709759 940906582 548053337 914550435 934610584 945044540 214624449 747531665 295040181 969100169 119092441 311748440 176025210 839973654 548790715 938888854 117818778 614681255 111950654 149012935 987827418 992942412 224125694 653765925 214577735 362711041 89049379 474197386 437523867 545053436 195234470 428266112 399422535 594898902 75484957 550293791 93878880 622800357 22434708 149313657 704519475 766532411 809355362 851133529 683278446 711894833 70685619 478358491 66333030 288743164 561932527 586397531 799219297 984783373 229966602 438243091 613646415 623072306 306702790 562427413 370922222 511082121 714534169 793952572 507317203 649038756 751238498 893139756 553789560 690802343 209274278 231162229 620507353 930298094 645054933 912222363 533912299 587805316 462551656 777368457 31973844 214575846 919888342 949473687 66533636 995885748 228935208 321419094 499347393 948781456 449345844 877004163 969275149 996349716 879680804 981738784 489667821 554097788 768906199 963542936 809163221 848011477 158564388 356379282 866527706 882903362 897311363 947139722 92809887 179921745 910550728 977883686 124897594 176905056 425896578 515669976 456159091 851824931 942099590 944266305 438653877 560249760 727219854 991504114 424602053 745533055 952174104 980239844 607132343 686952658 544162566 795335366 598066166 897595763 296022051 898355563 600162981 976291554 224761614 797354474 522607014 697951906 351300131 378207049 716713220 728622074 946852516 963329188 604488325 680017240 545346720 660925877 951954560 995739451 524364609 767415329 216978916 512439978 479122568 595810645 275472197 462151280 153504330 847307954 480624345 935951523 682075166 898933816 90303860 260964032 950174614 989065301 267702974 562573742 252310894 389494653 168166718 733574151 809814699 931299666 161339933 290620258 707011409 993132729 822235768 948056998 878206697 942194993 200945325 254686494 18910053 537207035 533345780 963446229 52600260 71152577 20349106 444717541 727662460 775997243 690451114 857523122 668132502 843087533 660963876 730214484 168204937 877335858 719799015 889731606 869924520 936887985 91645828 354575118 776377028 871268497 363559285 447817907 516634280 546798136 150471200 550079818 652698943 811898819 595390796 705030396 338995442 450044590 818162640 939962892 32246303 346425088 268659520 640474824 229543858 320113942 591915921 779320383 220316201 729914933 847465769 873637858 521302861 647655567 601634836 835052626 720649211 795500391 921303119 994084919 426644601 907809171 615179223 781702907 968768763 986235676 363372187 748314761 783363800 872866055 155303227 536924131 908831335 931238630 124457272 703299011 732268199 767697519 131351949 619207437 995346130 997259858 911871343 931990219 681049847 749249023 326227698 680079203 550907074 653320502 529796329 651092355 16640596 36901556 587071465 762115843 992334389 994886437 23838788 955361390 236460926 597529152 286940183 560281342 525617167 602312798 218146017 420356019 383035026 893404637 403303982 970689108 419674490 922046082 191210991 380290174 60033361 955561548 286081799 509341097 731097 93406055 147074209 651390755 395910070 572082563 268269936 985675323 470248968 973750356 423257332 582589210 533989039 845663120 139332208 246152548 368179979 492049942 175448293 177017641 203957076 296229818 521748368 574985055 382409735 931360202 241117468 923673875 51583343 116435453 691839190 798803210 752875746 758202090 613266546 924442352 748285422 887337426 130504358 496952368 350787956 921808109 198379091 982033490 685156583 963854194 624870911 894691457 647144187 840069363 745466241 837051963 511993599 882865459 288952944 798882797 597916627 786746911 607821487 977004175 439716371 441351033 494449096 858807762 358189414 869255079 333425438 817617463 152238984 471014531 545161386 705916776 350268605 957393602 846776166 974015370 695649299 942526952 881092587 960937137 961002730 992682546 224349546 733766473 437279657 993044723 450685086 599398989 195134175 724790037 513074368 742821439 975478688 998617273 7417949 296523628 4136180 461444207 38802095 354697065 823578820 976103519 123983768 246629941 84710986 993450129 976428311 980200746 758409682 990339323 275110708 705125055 592388442 905070652 744358347 895570071 205428927 422178301 813036425 962269729 734470944 838788194 900166516 918507700 810919206 925349360 885007191 930314585 113451471 913924636 819220125 862893613 509734647 881974818 126881768 256886554 120043688 122769625 596105211 601607160 546475782 771680186 147257789 990341995 936597645 940872218 630877215 835911981 159738512 379424404 89788700 506843410 786314902 799410336 639938542 834107089 807301347 863050154 274346538 647370298 621720665 626587715 47341382 744100857 16896590 652559554 208595306 493634281 390896525 597987318 839323261 841597732 288666941 891230508 333683801 578971853 303557547 707567748 225263854 519440945 224182578 432616488 910689477 993071316 627514945 997852850 115872587 700034503 338640527 418764244 540748860 697612269 708604486 765001382 343342505 348075170 286068281 997954100 473432164 675470393 859620808 981052153 831202817 850051264 404701738 864547485 494965776 563598106 984443226 997041928 410155914 426013383 497124041 680616470 141463697 382027748 409486503 796593686 612696469 747771668 155953738 242166397 80303490 136248799 820997023 924380527 750823418 753600269 291243973 559723850 597643507 614389087 743841316 859458295 105574792 501177753 961432754 962210054 437784877 723004156 335828497 637125086 439475582 901701570 395119154 444408319 720240520 854521986 535782342 912730934 993642639 995016097 355303224 626127335 12329488 537634377 921235956 982072515 133751562 165003671 41235943 789793852 519392307 981395381 65371894 511897285 380131852 508481799 580474880 914637495 555706654 669105565 159267449 819950401 176053656 419862209 270348455 388665437 854053953 901136322 792191329 856884636 454955450 894917631 709302798 722968491 548535822 905376193 676773054 961063643 356400133 761085261 917465340 970743154 629678490 796991502 890779117 927951801 884082306 981198730 816063347 928634367 454692159 751140920 405346894 772893014 815799280 833788641 316774946 388148460 467879881 723538167 762837804 910805282 722069577 919507077 372651145 671211291 719273671 964508105 958144301 962271383 112767932 326961629 254161103 853500346 159983680 387963396 628882161 941428482 780565643 858645414 234438566 694500906 870160068 933822308 601730344 959121917 989809438 996735437 674904343 971155490 225739045 609058661 687692464 830942642 598110040 896909212 478599315 588134723 869053935 937097626 372310274 427336319 177064222 201835607 406871998 916241216 318122088 930906311 450846617 958661305 51687626 464354937 756030051 957219139 962360163 985681031 321317673 946959252 436394767 816972074 549083986 612813967 519193391 705616801 625060769 700503679 444693448 891401673 187771824 425510613 688269325 755694950 46441450 243373429 185004549 779722247 530112340 891786147 74014615 280440923 38245401 514545700 995855904 998148293 680680076 828631844 106587364 742094843 653100064 788921369 166991095 647392407 870259065 900057568 484650932 743975165 111756751 281320348 880565483 884855902 160019252 534104644 373188645 964414892 281825384 518886592 509187640 961547805 855667997 935685583 530698978 535821866 62883387 114089657 470184275 802995109 285274946 299558992 351908060 448970660 33244303 497122721 221414850 453768227 806139797 987122965 862615537 910774880 753761946 847419599 443339049 790146731 58741567 535617716 388982434 625710253 686509533 713217235 605725595 936637703 72688272 303393102 216701419 977642411 834986026 977210671 789825883 898578662 628107099 875190885 376290610 535415685 229659240 678329332 60454056 557339480 751007296 824497359 281537586 691448571 566134163 800657941 856161123 860760511 818210542 818723557 843091620 948012357 894478287 936461759 725037312 995810649 222355146 713155787 400015374 809156382 391124182 485399319 126676714 610868169 955100368 991701658 793649560 819714225 581619675 728815105 713020747 849006787 420816027 462596658 376303644 789870536 261476374 584429240 183460613 671520295 56894443 207867972 880648286 958149571 725702742 898831586 991358375 997355419 686504543 898023485 413157918 539865665 29918091 828796133 542398610 716417861 520268766 544488025 71248379 299154205 146238092 631451427 647240240 963657070 718235781 990710701 765978669 874530507 701681210 930115143 996044369 996354470 268501333 350821176 919071665 930838531 916256441 940060926 337308985 785952047 237636566 770275818 854644837 973851604 38319273 864100078 69826217 933062562 664998265 873000646 513898881 570319237 792551439 942289130 469443356 552486362 630353014 944454242 719746952 896259314 553535408 594767542 857091713 870866132 310009367 536461083 585975584 598231846 639658716 813962631 819514637 826905384 194078604 532798995 538875606 854853243 375031628 378989457 148106318 167954231 888637356 899421540 931062180 960892662 860942061 892761207 120089750 133123300 381886095 591450994 171117246 298627278 885071961 916785739 10404389 636390196 470161908 487188848 97462108 214852573 364242766 373109900 794078021 922722306 828143094 881282015 530181926 644130772 999603767 999854034 441672968 692941065 975814986 993132726 941960815 987435480 510789343 644301756 533405021 787662604 63008313 573743107 636590135 900173691 44285226 581440628 816392916 906387915 35581723 860745886 849577993 942871709 164626899 446015499 101725174 748198751 741640125 779891432 653874502 836346186 662082556 708778909 836269691 872888842 912770990 939437223 114145437 354890250 928586079 945284539 846358400 909726933 368593358 854286968 841002975 987029072 650155414 718927045 706714038 933583854 975814582 997585630 379745398 960956412 883643511 935044706 131187780 190245368 646319264 690886422 10524372 953700275 45111690 609957162 548819929 589712639 8298385 105499312 812419439 994525827 533828200 670136476 845105410 865432304 676524647 716193897 958158711 978652693 533058719 692139049 303065711 635881675 198028474 721577655 251294199 646943155 265832752 584581393 306566779 870132275 38259268 822558486 294427099 705479706 116992580 225837684 159265746 738487753 846066359 946736693 47792876 227850967 204270527 960387450 762568361 956525331 262740452 800865503 51672381 776924788 48003676 536334004 620503417 935229175 210327642 783722404 603765909 939132280 793855082 841521064 940279330 975461671 886181627 892058818 394443121 475384811 928629175 943931277 358603151 509483835 854300837 907272619 845407239 871100716 732796411 832103012 927843218 938851451 290540164 585920905 301148066 898738683 941679984 957998677 35755795 140711904 396780112 696228495 896922601 945982748 216257399 469051647 494602888 786981309 936561069 976534482 275589090 560489203 274896786 504602038 257915887 436817324 215430703 594466961 898284652 994352216 517111966 896523880 46007949 133795608 816384524 970749789 595259339 681137064 267316888 279196087 415331759 760501781 680082144 851753827 854833718 913334576 512256596 858066596 917231694 974059892 635167188 643933308 558017313 921910295 582568388 703958368 267750307 807097868 304563155 753717768 169473474 623460896 521906575 538492086 491840647 763280409 713710847 781409978 901597754 917054769 691071308 845709902 186136248 518205123 263504692 679172373 486050972 717612759 113929226 203990458 333885747 573704631 645639928 799663135 807187906 978650041 484290827 597012982 803010618 894431784 585790293 995779297 987111537 994773229 514478922 618943204 624011196 681349613 868283421 870165416 8435954 230745321 218932956 444394725 871155243 882961893 76869125 146864166 789784563 806439445 477200980 873152838 801908776 881953728 296247993 955429504 372946388 666892444 137920757 436087525 563365567 893861704 86949430 648881794 59249173 660438714 602540576 776684285 780697474 948856501 467416965 829456777 53788606 923063234 510250077 902284805 983457508 998311720 726104649 880317491 280141234 827412936 788801383 916072761 740647243 933161146 505168673 967572248 748731838 931388603 496586278 801679572 496301630 619658245 973229108 982314526 604782221 629705302 122962747 929343922 355594105 473028152 250076121 965118918 233709247 635404234 997359944 999030168 164674303 605082771 796925034 860582600 842337059 956218756 229285947 516240272 156150500 476626623 786644762 802023760 427605320 485540302 395882646 767402038 340252180 879072393 58229003 577066845 176800738 300167181 102012976 241504740 447820077 926564360 696035192 916066318 671248564 967305929 366995764 904218925 100094926 200791521 913905223 916440553 689502500 767291866 632580618 902690950 647111242 759052325 875620845 949062273 658970914 661442468 152354551 402671700 457721628 665317169 593181213 818382888 479834408 954217438 114389236 963287601 569116604 778030099 183380175 921933098 492585075 554276153 657875127 856127567 743254737 920776900 363820911 803399430 408810349 809658295 259895947 991483537 788816604 855080890 521918395 982773082 238590155 680637228 244800561 662207047 889783499 966453049 870838809 963037303 481281627 944855400 789541756 930607611 429742821 464981780 280974962 564100982 808024727 917942629 70773958 608715785 77722319 391986839 348332459 573853358 944616475 976348328 741975698 781175621 285664650 372836880 504772062 639794843 401671710 591613816 485855096 506695058 451728166 463881519 213915601 731304052 567276241 905690656 748862858 961902588 538033104 811936946 731313190 836890637 606237765 846161973 480742777 974164874 429248303 638010471 934830067 993873507 33544639 140548238 811108348 990959320 480651900 952082244 789570755 895229218 728203669 937329197 180274473 581146293 233196473 868024281 781741087 991971383 297473065 762120807 926435708 960678386 547311346 969853829 32672405 446264260 454801803 733484236 368562147 384153672 665726534 670128683 816679394 903130639 625728570 885535142 852342967 887624200 780386181 987951001 781409090 840437274 852500262 870834925 871150514 905188531 517993241 856765391 997699479 998852777 577058169 944300551 97381004 960946394 60866233 258003300 814090238 849074110 250627140 859839483 789380246 849159555 209666406 641172803 220719515 699059221 83724308 783112856 902400422 920176507 97978522 597131537 759467131 773456645 923034909 934791332 25330669 100891896 680823286 864951587 221859894 642236195 650402777 689217009 362422207 424386225 673337184 792406210 579508267 758660668 574229566 760069110 735977289 892312998 195380579 524775348 234212293 806104562 598936782 662348611 523586709 974980917 166616029 866450571 963499823 995009325 398748825 624327149 373043701 635053262 600755353 942313281 633303121 665158463 915974038 986370765 276314888 453016409 198537945 453786111 62588813 724904878 579539814 711053299 758754774 900879006 403499030 990539219 858186354 986758646 562472437 739569016 459927874 729548055 519608583 765854772 30979557 679558001 738806633 755144859 524890993 974245191 335885284 838803462 671660656 751937580 759695887 819450773 657226100 919751601 303792337 326272775 248368329 918451014 820205858 893329945 88379317 574046288 13374878 899132775 475432224 484615391 47564070 53442048 766059035 792325159 524892656 720820474 922599545 979479867 715493663 963068557 54176497 188605868 209537765 996932598 777477995 997416042 20382581 355923558 852681346 949847361 466164233 654139319 78775275 341535414 355474280 990010525 619999437 659769605 139980422 236044147 841073053 960115191 283033018 685941188 393334176 659438018 822598942 874557829 574426974 966146060 852214232 900618918 612691788 726053443 785654823 934052385 542625962 810651582 556074963 686405020 172478385 464678597 979682494 998611648 756339450 857725222 661907505 795626656 145563091 172432551 210266333 765445668 321160754 396726219 307427196 886198187 941863897 957543498 39378174 694657571 178115418 556203411 313254068 814112505 310305810 372354227 924986737 942162721 15437239 213972773 710431314 762044955 657771380 941913553 411305732 836515487 694412429 948361614 800313512 976340742 856423885 870741284 259446638 741564738 964727483 997600488 593179851 792831716 9623598 286247540 215730858 754629742 480071432 990523079 917648882 962777874 218762423 641950983 27132410 199660564 854144791 913540421 515624163 748402331 918295657 937613415 60748481 744972485 615177555 986211701 705221941 871554761 251816187 750244315 428869373 593624373 721411765 842401762 254664321 441768530 591132725 723176407 315325160 432245236 404190760 914915434 529648987 547771634 562938720 692460448 837310313 855299406 759585585 860523785 632301298 678763615 185404401 816697328 153338406 646305327 485173720 670836366 930205805 955549772 864631262 993663694 378499213 927134519 377888511 526633072 955124526 973173742 840750279 895192170 841147584 955563454 504228766 711101337 488682324 894378083 355631629 956653089 580538343 907682750 839126283 877358078 567017822 576013275 232236025 723240668 843330076 878469959 915140772 998627050 287492648 891768229 111870928 437450728 907187295 984171492 580661841 712742513 586047804 615495053 426145957 600392471 589046880 643327500 954084850 965199207 951678007 953463294 550735799 679955001 115057943 797380439 834220603 969795485 489686179 843074086 86730713 138569550 321421910 782271338 786205284 864708744 608769143 832769140 496770725 599631094 695546522 753717954 838931242 909283245 522057695 670180880 952521068 969435096 564242361 795484011 895038351 900741142 119110304 545914396 340711483 500855134 502121556 809153803 127399584 596928550 700398571 747924550 250953837 417470599 964573974 999275882 827534121 972661405 371719424 388891109 826928279 908958999 631185648 683104126 504495777 784164043 258224465 932365383 288430840 484605131 610462168 737885908 347724659 562161573 9221331 35209681 653736381 911604048 612722602 743982789 935532653 981839335 472357848 524533838 526637257 898652594 136548065 221289636 638392664 730323369 473025483 522155725 345713412 524274044 265377577 288109975 392331176 844682474 420939880 686791846 454658843 745777115 265775528 989994871 854958965 993026130 753681775 995062754 241989430 925234418 594733565 897794940 796071966 796667318 23663912 102945437 636573920 686959312 60172317 556456047 162351433 725020551 577580818 753225819 3188032 158152081 219910055 815787029 756403867 847165642 304313821 767161842 857543348 877311215 662592639 942096043 238293862 731598718 586905417 932008005 486523672 881331813 289718200 534091533 387065632 561509090 791490118 858602633 283378626 348575638 668678991 772722932 917318812 951295259 233003631 483706443 843770085 983482263 193385093 734587780 630300547 821421278 673386891 732424618 98600759 593550764 4259347 507425962 843615432 968678179 158246858 500283934 346574754 612448593 183300043 455665855 426830052 981002795 114869718 132692233 241620729 632229110 581562840 669456871 634175252 689072758 524954748 815799828 780374625 935215001 165983248 442015202 812382355 823697234 904543193 970341188 643326400 969744430 262027226 537042726 419864704 445654880 893537915 934222975 180790166 209433698 240613277 709707754 199781890 250230185 101522825 356935205 675747151 711824003 993923842 999469672 150132459 845390173 231857055 897855883 790927819 984039311 588222118 656995317 735164533 945116410 545557752 958908863 928840329 971310990 876680476 951881449 757523560 759798870 66662478 250041598 651814174 923071870 50881047 115737556 544515321 847008771 197507490 603125026 526479067 714217282 401412314 446571456 293754719 410041299 264952703 548658193 416789169 965806756 221835995 381139647 751907689 920417685 738048810 997869489 229755774 650811294 190137838 789747012 320264082 801047165 718155469 767094001 667879039 731893481 219865204 858123918 140703052 505302683 396170728 530988399 713305842 818911746 28979488 418338908 449135054 936858691 534791195 985408555 103991188 506741212 933422407 968485208 375730641 846513253 959426273 983134303 7090092 725957912 764509985 818168063 417497540 942431685 212160840 316454170 664579235 870750370 409741980 498644421 773012964 934023784 483511675 823740223 456995907 922701406 43063597 991429043 915889443 962469728 72529300 177211627 350787212 745240379 272307471 702423017 951791370 982171208 889059573 984547861 240528339 876895324 893213811 996126309 104661439 493070498 467006741 485588002 339799371 958992131 711671130 858847719 326081187 836295766 621487624 646891056 761882815 908774152 992029408 994705636 278896437 378259183 790108139 969361133 974386262 979260025 655466499 978877924 910147292 997683854 552964200 948736235 398772434 434076878 242633198 349462097 294784202 402337476 547380345 580107011 103066636 564286613 633777025 875895512 462355905 901381781 165305149 309623501 823351153 842113337 166770616 985962057 383126075 452961331 106934062 143762928 895739053 972032943 239677715 605396040 26192937 716612747 864646193 930031950 889036144 903372153 678619601 882322868 954906924 968307689 281214836 558599396 506679571 631199031 870034332 915089163 686560657 998139939 172860031 325636333 860672764 875768493 921209764 966537393 342429508 636939687 58431034 723243717 765201699 803012624 833517830 852754511 996678594 997845246 568677732 658557787 839431220 999318839 526915168 781722640 526987879 877507068 570390761 996550562 964989177 999971670 747456662 872312689 8205783 634694229 76107541 326931290 3303566 63466415 765834533 781275723 817169615 952026482 981119379 993367430 343457575 750804247 101400903 416826033 26496234 484471323 11585369 598868106 229846119 837330188 115183371 397428505 941582075 963332928 748687434 839907819 429828451 907891859 766634236 960181613 298454503 649383199 581695422 762065417 995971174 996209052 644664217 709610687 436277991 854185300 664750034 869231855 696323199 981881400 210769914 826032182 195375940 964573955 115018959 974106126 883899717 905401551 783900963 858140206 478575300 972255884 679154999 983683874 509555590 558639077 989372250 989619407 176249657 862028579 505407252 845969649 321878760 734611049 691820295 793427226 699894333 825688267 925105133 955210070 403568114 724346670 289915884 574141767 344692044 852870442 83701973 464967010 558986469 601742181 165248987 619205623 579463752 607393951 722917436 980967216 276790550 305747678 370257208 691121899 172083445 281380472 24249993 850604073 159563806 410435552 456350471 833386296 509976820 937611607 688770579 893097465 811553199 977352125 453964909 823432763 705240898 948418014 286290528 633294362 205285074 695203391 465038778 912601125 971391443 987156151 247886831 402830142 916731429 948177216 699843859 752595448 829959128 965662704 734110522 882905606 658204425 992110611 932357181 966128980 544229698 726799912 396806 790635018 504230367 743797258 919776504 924322681 543467159 988131806 436210062 447486974 357300535 812421967 587737989 707341193 213078806 750260218 345100618 520250820 997388549 999938502 956912217 987921683 882147794 916890943 429594195 631805334 601814058 673264481 756310216 834484653 842295606 985882461 804983420 847728016 27601965 469376294 642377959 973532891 94185305 626572013 401015658 737526686 657397945 867349497 138228898 585658637 404754348 993847655 77668868 779947263 487045677 806560066 159084794 625590987 272063610 511052644 406602665 423679491 888440933 963736831 271951433 618059188 17871473 685916313 983363353 998128417 906257344 967522370 645240007 683677990 749001951 833771349 370911599 799931188 854723330 878485654 61704632 755237672 462837246 889370884 914570269 937659621 443800493 759166315 535145538 954629852 998507454 999759690 925502258 966994753 964791594 981571265 757711768 986610967 548911983 720555644 948531474 970342437 845881299 911007112 557508864 674271190 137548312 744637061 912383152 960381260 279189984 594889522 902814703 977635852 679371260 931637222 600923784 713923852 377167548 696736918 376512749 761361684 80224542 540564609 56771894 254818862 17915144 683325851 559811906 843242193 338102579 813869119 694629567 965852579 204179666 702259823 965348004 982936439 563359103 765108587 396317886 734226619 369238498 379677414 189778149 664145152 338926271 929413106 933807167 950749740 649617814 846832695 696686987 897097088 48000631 125868531 871370850 885734688 547421454 696503132 996095498 998632222 442556646 664729457 836423703 955935137 411830635 519594981 758501898 852365088 859931748 902013448 600894186 706035964 56170914 745494974 685918087 827885011 625723210 964379365 905943899 936170776 275462522 888215056 916853528 933816737 72722004 800108304 174451269 512411264 557323489 835456092 782145587 992259681 546639002 934115772 894741933 953686265 530914390 833368396 949333655 996612227 692307986 747135254 969679627 988604076 697910950 998352624 754124120 830862756 257567937 692021965 436091814 672056848 590919950 684031447 770906618 841843236 983043722 998605845 93127566 273880515 532087866 660824470 831292882 860614731 373723494 865253384 755553365 860266502 514778557 576508386 575577351 744528185 10276780 379639780 419005167 831541943 244652391 404103230 897766802 970775584 679680432 758004478 763228446 827484568 364375307 638282176 238673930 801782029 132012884 714509402 269354020 560448715 658898685 948434787 877525584 952339812 23387351 862397226 195176884 947197207 312154201 841200413 662280015 855158902 312635754 609649185 824450956 883313620 71932741 735623256 304927892 614015812 688922809 938841547 747813136 833495741 817724974 822150815 954883277 959267070 3080713 226648520 802940467 849854352 837780666 909888511 973725006 990121080 217113139 662046727 405385940 572144853 827663525 916048752 805043123 972292537 716082504 973637970 133166168 238285395 583608971 991407756 776265221 967429320 880939245 885022119 241292717 557824962 75444477 428294394 790556070 951785858 511320523 990654353 621588220 767533570 365993564 719804368 805516723 825133368 60666550 216144782 892601540 950302055 513916422 888271225 672711271 961441428 790640576 892704252 812283058 906230435 462656420 731830147 603480909 608263986 391710767 432481562 490934030 835439389 747663015 805902301 872956217 925630910 214221218 642728656 516217037 632446578 282164445 682755651 552457927 989138832 913255781 976292654 366152769 976878027 434306464 513566164 932336997 960906418 250531197 989961805 701244249 889426991 383587999 962160528 507962146 978092284 526430993 834350519 367165703 859676123 580539831 768434711 79219239 191150977 587156756 658544527 939862430 964076487 432734970 587336819 275065846 774973758 316552745 554031318 26577599 47296467 467813407 700044076 860591708 908523528 994482267 997935975 335074557 557931287 149549337 252553270 75875516 356480821 975159064 986102060 78699275 950995968 533155058 536421765 277034795 719951177 667483808 850170289 445688418 644134656 637419431 713972742 280098745 315752880 996687474 997834849 594951325 850218199 577174561 687120761 572653169 818067245 368885254 889296615 71083534 723062418 117008705 215164094 510135338 923414038 763728245 943220184 235322828 579902791 898604088 934827213 549307514 774399592 174496363 271638074 597260648 809768561 168574402 470865559 208790399 366903782 246810141 614997550 566329742 804059325 421265042 499256776 119560932 166173973 522410657 935398626 712590565 866296303 308939574 685658176 477172732 841397640 955253296 991136913 472984026 691034629 775846784 938977081 540579953 930624574 56618481 908047461 239926032 294279606 769859795 976409141 25038853 435531632 860229978 866611667 769162089 830346424 892976256 963346262 343210084 828730144 5577729 753019317 541235269 958301040 348698588 352597989 793693150 801515304 692319568 873097424 175319806 528835150 819243483 847288583 89636048 893212723 517208679 553387494 389134841 921304331 876388374 970836210 44212322 537134254 511788339 631618058 660246427 724771632 789369791 891570251 564778725 834612764 350082609 631298966 102955715 897449421 421811606 773791940 529820256 990271240 569381319 818413689 958342027 993066087 489276763 961449293 356677220 890859877 555345093 956070167 997468864 998225973 246593990 869338448 533625219 610958176 341332466 637163732 839370159 941769694 382496476 615390049 702071273 838300057 251335130 897254265 199940093 621448580 128924707 751514316 253506388 631875925 532978673 649292243 928712561 979375798 939028846 952314779 581366763 819757832 223745301 808810514 502738555 647519093 853550249 905951663 253292039 625139261 641383310 654537829 592671423 705739085 681266891 883441122 530110296 836201716 74184387 849575188 712965603 968964239 314706889 678182600 506041774 893505132 848917354 871839255 248409492 782968404 493370036 502969806 783492514 874447907 694704568 722700855 934747079 994854220 516512941 904977906 207837290 926731720 44506192 746905425 472826320 818395296 715861002 742821531 930667129 988099659 747669445 804477580 940188364 980786357 119988335 337195538 135859561 782713952 221970108 403997603 790582167 855599336 441441622 783458310 557437223 861279242 584341174 893096515 131664587 710924474 211685023 551352538 562000786 986898113 134823980 575650717 986448535 992397175 711720907 956137307 231951967 438242071 655525033 975668264 127020298 790353384 520685221 864123593 803842380 867534248 803843121 912286438 428970471 460045800 120529019 321547639 550217282 747179615 615332940 871826368 664773729 910954326 267890548 310010980 730237972 916208736 666554074 945982615 912495266 991923225 75519824 594522815 884240812 926803679 825298105 943365780 717711316 908089496 146866809 940617181 325161562 578585867 17101217 558917357 834371765 989920492 486986039 596671576 246429768 666178884 103737788 683197121 315346423 417680305 305963211 423365681 565667368 898156393 651783603 914619027 8874351 182981471 308797676 849645230 705012888 788963598 126228808 349819844 818975186 999289916 404107110 777121201 781205228 929914566 369937311 772173769 467385300 469207624 930681861 960481454 474887179 763107389 240956304 718107601 265510019 422720168 183070684 818200986 277464475 414551480 18866179 301324766 958879239 959897242 874976455 945555860 229070272 696688827 985642252 989836727 32635308 442398773 616524247 963325366 792682302 867571437 895004712 946179574 902787679 980395603 848201208 962346822 631724659 754211927 271547623 941389330 410688867 606290488 803058092 879370741 954041157 972248646 535921584 633476633 649445007 998930573 866955442 978835492 977348036 999337938 192314589 213683398 283596440 824208133 847490813 879289805 44181091 714584040 651503950 787032083 774932058 925706147 537103754 942917083 277883844 386233124 391491501 801767850 696379933 774011027 226377290 866161825 470561845 472317747 617644636 618439348 719151704 839464269 734781334 853998987 38157470 685089385 547293120 843468215 344287457 597311566 525608624 679009518 454957691 831487561 688479928 742312912 290831116 744485467 320908890 498843841 157362121 573763557 493426903 973450697 733469702 952120979 223191884 991948245 461381116 557311440 206105200 881423708 815758986 993138921 855073710 894248602 712247809 906251184 87850201 418551735 138745162 322676415 140998112 901425138 814088176 993193634 323548485 775089502 607899541 934914086 209933361 788413024 301529802 662591090 795395211 915028926 121616176 184680150 209698185 294754788 91536908 621644006 791069194 976003348 263796804 623775004 401963941 880863001 867769328 921423191 728935731 995721905 979617095 985893436 840140166 990657403 944372727 954594760 175585550 540982569 407253388 604709279 311412646 702996984 455468953 739938554 621089495 714956188 711372221 736473370 256288709 781662029 630025796 770028187 669724501 925603687 155257136 172399847 692250124 973859511 46773457 889019325 897225935 942819562 947158330 955988134 549517938 766248914 908757928 982205071 853321949 992210864 183616398 694950572 909348112 974218311 223914394 637676334 216245927 263428342 830042778 988433882 810874847 921816013 522099659 811480736 656280041 828960366 842950749 965323800 780642992 857394489 893650158 902982027 823133113 952932345 936910349 954866226 916414362 920719048 152403296 206490448 804540760 943373310 170688875 796114066 89457710 784445841 412911466 661263867 616533668 802088114 100832300 765629570 146459943 947230996 250805275 479555522 576537087 833718280 562966377 721472786 563457914 837420090 978556038 985932987 441586713 745454753 727897411 836024502 630241291 780226449 323661736 994694790 1912768 103557722 253766334 593526824 743883344 826491958 432066632 857207362 91339142 865660074 514683225 907878383 664258032 878563430 996479368 997680390 832105682 959607041 232521827 537930574 187326425 523697179 924980239 927527830 900768632 964379204 93094428 953213378 237562882 993019139 193130794 622315873 694274740 875299490 335043621 726435115 387057958 602129054 662017749 775330684 99734470 104385147 85050383 325570179 556625539 614529915 625479117 888282791 999101943 999866650 763756516 893466721 285522075 374215859 702298663 845433080 934731193 953984794 816976148 913673669 906531518 994333927 807651445 972300708 372810141 970886323 286751642 779292243 256133912 675721069 537838699 991255932 759069287 781431336 83877753 845910269 378706717 408316527 929195577 948995923 414295388 878394329 358771983 400083762 752548516 992410824 482935633 508280440 348801283 574047572 650775777 683801326 27849753 756924521 530786999 611699044 151284981 692174466 969669368 972843570 541784055 814077339 527266258 693656556 884461183 885464565 188575722 730326437 528646830 720371729 782777034 880696280 455365572 784579600 841635488 900015825 902972198 951935109 288582967 426136001 14467383 769961535 860918792 938054130 772856579 979659616 8545263 688579528 436910991 491694901 174067349 795792594 532086821 938262657 449496694 568868459 851928699 935482130 513865344 642683543 19574200 756230889 792491489 947956172 415350424 629252506 620325179 812282888 828787385 882074183 53450429 804546084 118139943 132854616 188607267 500114546 692868032 901194179 919931234 980513387 490513888 999027490 207135413 677350481 353710519 789407730 415871753 442322033 44934717 188902450 508359026 579348185 242823372 344782869 507823557 593927680 760930233 812073980 728190922 965975745 715171875 975545732 601875193 632264018 664542891 808763868 619431212 911114401 723833501 788282453 196391185 749993674 112397713 200823287 484466701 526455423 309398393 504154124 684713924 739448587 499443517 634347044 128905384 948470959 987433911 993694734 797209211 882810332 748961117 931610180 572212891 671622295 133992349 413145775 293460667 392925710 834230949 977711139 648936245 819111304 815486735 934920430 139816646 515802342 918642706 951981534 760954111 831997394 851258056 928480873 313088958 472708116 742259033 991549658 94173186 209349974 118944633 478768298 506502777 544990914 907119120 953944371 897037296 967246256 97551852 206525725 800331966 851866347 947791067 969360740 508264338 838140647 863024262 921882805 631890926 821406883 223845017 568710731 440699530 725245321 655956832 985472319 477826946 868339137 962773560 967937246 466072880 910001724 748741107 810621179 742713672 785052019 734337235 789841525 290006719 580449552 170061948 929933177 277999906 735572950 10205075 217406195 628523196 754313116 897842286 973765568 276313529 484721786 304878876 967204485 597177713 918769422 190993800 610569609 634199782 758756580 861818946 883798734 907173225 975009049 774782105 822717941 874339591 895486664 419998177 918240139 996635211 998544937 589023260 665137112 465865059 484230942 200858277 913663060 370538059 954832952 599868920 657746676 949930185 994538256 477841540 608369137 27051900 481632149 415659362 796884898 402819075 730881146 975338476 998308958 655875197 748437462 474557540 692083818 192008661 682136671 825765306 915311656 753185688 813512672 15601265 799350031 561406680 941127674 519260427 878794363 633424003 873531584 280097361 313588551 793458148 978452039 289323652 390071901 105295275 519884932 91877493 952757852 503308234 624883488 193026771 708059707 52946892 532140313 644909587 974122511 973089079 991712248 838981770 893594123 251438953 451438350 315028551 947562516 38691450 978403338 679997540 839448803 190760052 316851053 29176694 612887056 45884555 701390937 494356609 839076432 647173041 849363304 187516445 915925176 86437626 541273489 518377908 910453265 510143183 525926962 274440481 543045109 122291883 700320889 467022162 665865039 517529439 718786488 513991903 830535839 424525543 835459055 539660119 923474837 812767722 910520695 547878258 880426347 169074042 329234504 69818278 368835582 798068032 806871520 232550939 600859730 503028772 627118893 926686400 954111638 816529543 865751032 677976038 950089252 233417835 302084823 957738173 993555954 214908591 945725698 344449080 924473610 413748021 436233709 747131996 799391025 937087016 973450127 928475523 941090662 300480987 480252723 202472239 638275884 735423038 747474128 790874738 991579405 169653264 839249868 888394206 986002871 327073934 535928578 197431257 504671888 498815814 702981948 416645720 983891769 502251276 567787790 831831262 976831431 685144926 931772820 746527866 937490990 359950099 819575516 927321862 957483530 530649452 740740445 30401719 639951908 194978472 528676016 194284218 771350333 798613166 940938893 485331604 810662570 7083633 930090905 361812740 987451399 681187045 771498347 914007415 970618709 902867367 942310075 115438156 333646953 125763388 233865098 818837572 843989278 574507249 860984228 769475571 795181403 858271430 937349501 736102467 847935421 164340980 557956765 192601285 624541775 206965439 778707788 695075135 997805167 200927392 372994871 736692308 794267528 422110485 519373916 884892950 953553809 538128243 655250896 239760203 436783360 852173405 871501938 409001804 692146642 996066250 996404382 713735223 975244518 775510764 791357446 438126012 529166744 999762906 999791463 673471094 935789360 158205878 326651865 53013896 752429454 792758274 833991857 899484216 990285209 795465444 800830527 899901248 957904708 594945246 832647238 192768189 530782267 208104816 221831875 430512252 647156482 714587395 787009264 82395175 656761263 184816886 468708416 827799629 868674818 398358213 673873983 677299009 742602260 582247145 763571085 596806813 838121650 439035496 851496052 927403080 943982263 299569683 960669938 244276743 466868082 105298462 252160723 443564957 478434789 347139452 412070903 309291116 505124988 269938894 625854372 442345142 643959349 438829766 844580541 45467165 439429888 137817974 267533510 897347955 917651884 668183760 782034413 41842420 87524033 294085379 660832121 773059039 782377076 32544679 651415452 623856137 846522902 111786378 874518690 520865345 759892691 828200442 940831621 334644994 908726595 47772584 89858129 654845111 670899326 166930632 676958131 889402029 993781104 320733002 514791168 112072148 163415638 79070411 280219714 152483787 155887844 127329464 463629264 754291195 875263913 115669071 292947670 95421971 870803829 980356208 989468000 16840880 423611253 832936730 875859157 684634521 773618842 805382278 861707855 189345525 658174934 5016824 222167975 511292484 636745047 887747626 932962713 742672754 763743116 79141257 710601266 919451678 952956966 970999209 997135024 481882291 882224066 306586784 939492710 977997894 982152055 586523373 963321404 577722118 826312662 684853302 747204882 560885167 907221442 918804150 946107062 698012731 907949883 93391401 347317524 497067034 577210263 209609017 757630271 951887108 960660736 99111120 643417289 797004046 858189490 459404415 840963515 474123797 517982887 912045259 961238322 505717374 764860244 825710039 983734691 382778248 466439807 48768889 799996969 776146294 952732883 819712200 896915316 402192486 919112036 275954162 751153884 938407058 950517692 870839588 986775808 51803984 351067146 697639576 832991004 682075772 798839854 100884671 319282199 564769697 625451440 741880604 931558904 576678160 886469519 527834579 953692031 403003585 880260194 19038250 271903097 421476657 756861341 448747247 889921179 15175834 293623407 460720755 570228876 935225915 980106029 123834539 681650136 769171675 832755853 774578425 881993428 979189867 998091028 466314927 857367139 641450720 689700482 555261372 651658051 159331381 174145258 105758026 802182109 213461893 342679911 926660874 929620737 995747159 997129766 272618087 358132675 61425937 626392022 378924570 524951180 971680642 990498184 210162144 571528082 551896671 613845021 846669093 906631181 636108938 800701355 246263632 862823116 203388580 807582842 298641459 508720460 860370592 899627193 832535372 848264717 476804277 893005694 614034283 806084158 988561454 994256184 991721452 997766266 808321544 873320664 970553417 979667616 899115566 969882602 615215873 679420889 657575896 742407584 38363674 204275060 62635740 90965650 175159580 663839673 916324960 959297870 558975339 855834852 991890732 992273192 286799241 557776560 224678477 483913989 597018876 728048318 872457369 886960795 367688221 970867504 956521765 968033550 2753894 143715973 128613642 312344119 396107786 854505274 570625304 928343516 785544040 810213906 647507425 819610875 500335701 649115705 24319853 128557674 798275418 830632976 942666572 989882279 885338448 938720069 777471083 779558960 552950370 571957453 60621097 747991181 523286026 596976896 152389516 579424868 469636771 951896041 178352981 430713847 48092412 405388282 566332365 867555469 136584987 884396531 442084058 794625100 174517660 571104470 487326403 890125040 771894998 914552221 491168801 741149016 551325832 693562887 385153367 787135232 21676996 476518723 663546990 772084160 990746159 996179937 102580079 300805736 760957473 849365656 462576732 836440575 632754503 777592422 61065828 442813949 375523728 501574052 68357597 825576420 54925091 729502059 239363289 737770814 692852736 879342563 14742749 416973520 508517134 954303850 666860042 803239135 209098411 777871393 477656781 815118730 368126106 656750775 573101580 856750154 551846745 735606931 71057663 565499765 454326401 672122875 437095848 861835632 405979816 772148017 937988478 975019924 587517882 602275280 719241243 844164378 247360011 411499159 927721597 949651993 236691764 803231932 150001658 766704717 546391713 646725475 18064510 523384730 141206135 900349787 99321452 189336029 980725470 989947049 466701363 527861427 507063056 778414382 300464905 999476648 497090500 509014050 727806037 865319611 287527420 535570557 637513512 788956398 866037593 902351909 43636015 815342914 928516536 935727423 992498759 998074170 77709710 809233215 520288935 949048993 187186563 888949631 271145602 877085181 741930297 789736439 112017363 704061499 393324180 844328502 662783298 755115585 362091016 786298382 602863870 965680250 859092910 972767913 881173774 928859124 653670742 770320710 525784255 616988788 218692559 643153185 741867036 748255415 322490766 371093475 672710527 822391275 760767592 812367554 323286650 826976262 791389678 887415263 302386024 867713904 942653311 944177540 527129614 811893676 635316679 828901625 771447992 987193887 822841279 869402627 566025452 931295957 753573888 866253657 191096137 991003120 101715106 642853870 420393905 496403091 142817979 464496622 391815426 760359694 13119415 78371949 182826027 201667395 129170746 479688210 693417298 889942156 884450569 893023174 159213905 377126805 388494004 785707789 343268957 790759839 372097755 899273985 610804958 669675665 961669476 973804334 360877816 377382471 741410179 961159540 227193546 874505932 745141695 894469778 143026605 452879234 619190301 796422057 926939250 996598107 356100323 673066222 724308879 745229376 940575461 968462885 620934921 962533549 705726360 741113916 298606728 809693914 227639049 661524195 67888452 988645448 375954253 681908969 492008746 517297317 586258777 664930100 151396241 239618705 384249510 940470837 256760792 790533544 78197940 258413368 508069036 808909437 77030097 510115983 293610731 621843019 592111322 866043360 928451695 942040825 834110664 991824667 143372536 993734514 587919200 880918237 420930047 965242593 41941721 407536736 948772417 949242320 273164929 389053267 824878371 951762368 299730030 831888297 139490926 482745204 913809423 987660124 434169861 486573639 948535014 982278924 952200350 954086750 821436222 931670009 219749036 348150166 179153290 632118631 369218733 392344085 941245863 964207822 926494219 969407597 479579142 970946894 734656699 738901804 417692679 694447106 837134174 996339239 736714425 970893473 786221925 895313835 541539975 567981192 350982677 501522650 526223471 846667312 300497226 314735434 394259046 800143634 867965741 895378963 103163628 716393007 552184530 874866109 501868309 609311387 964071891 993580900 820684185 892111633 89966246 274585313 956847853 990952141 530849480 727640694 9472126 632110455 102062369 861395515 405620575 930105326 906586431 941738300 387483466 888010374 703262086 894503493 859017457 864161308 44964541 302310542 840590280 993323068 664422157 893480791 824363327 978122124 719414751 870857185 163773536 945561941 178491166 595498282 26023421 832880185 328444343 929674777 548125114 967964953 10374968 40992651 438050022 811687838 76162151 640106813 989805237 990676279 67381215 963267450 599934959 761520959 336771363 495940331 137850324 865382634 101838461 713843187 837995242 897636438 628338962 781801209 48449287 189047942 206709701 874112718 523466368 943390584 657830499 843306362 764401773 816728227 390390152 906808154 53556917 626371721 531509858 918294818 394090915 655647326 424986981 741605932 876400979 924528140 508584773 821153037 490193507 959715225 821031890 995669926 65918380 558575679 661242742 771971675 382627523 670914294 701936899 797885584 187184247 595076516 859013647 885374194 594270501 817962407 484983353 561954652 390243556 867008776 601657651 918884176 5374569 829006727 225385911 418702482 879587596 995862061 423205934 504296741 970078969 994026052 425642697 704684066 378697209 477820900 130332402 544451183 39159592 948527297 824521096 952528824 487668944 506017003 628712610 921954210 953127441 956307527 779585006 824075542 91793627 653183043 820507064 952448147 944106673 955757983 667746662 916130696 106625994 914468260 733964598 790655639 284060762 390181238 986419955 991644101 514107551 989918042 61903227 756337410 223010118 756179530 93719043 260749493 991313695 999842387 525720927 940024564 899474898 937205831 657852396 793610693 964699478 998089237 639567416 972473275 670361491 733242513 780033907 919473931 536290641 769947204 348931134 726621435 653148075 841798973 869503792 912117452 605365827 617745230 33531110 314614606 135972852 574760108 816267062 971873590 609208339 988611045 948439727 969207210 769873928 960560219 24063895 992557924 631158217 686918613 227817543 661443952 898689975 974142278 749249782 855218432 81917948 453697855 131639276 616398442 580292109 661331264 853171415 959131601 567608961 758907597 785186400 943671491 815355693 970524874 615538813 674339333 498965775 556356737 115598269 922446803 470285138 734030130 828511308 936430664 655773081 660722071 10586572 901985861 179474550 760644322 490249652 785850390 915517872 971305147 565722834 920136198 725397561 759452953 411256058 650582870 263626846 926458329 460087309 788020940 235362727 987074757 212420081 539601684 640437200 789021836 512949279 836876820 384971352 726967549 909728766 992860472 389463158 924406916 799556728 998439178 131661926 960608258 631686960 892987810 197625075 749750465 943636188 946082860 226892358 766655902 440471434 502143539 858381016 983560441 330829252 785745873 297616878 540436520 538042206 603211033 177915563 763600203 416898557 800249508 423813897 992920722 938602998 981841030 433138356 647968424 722471839 853107177 273036161 409453591 257226774 320804903 827314632 892847268 994994755 999930106 791817551 797945295 86786454 271917492 3887323 424556107 781139219 901083398 949025024 980496630 608355907 996114391 196024136 397422023 515752392 643950553 959226812 979572304 750895258 861984459 198720156 395702311 736294851 909131048 83553236 726708526 805178434 940530496 796199975 851351520 523488223 798890830 363644581 918699225 509711687 820596769 705825655 883157214 886584984 919548473 262269318 423182105 788295750 998725245 263765788 834172037 568640841 743844358 658614230 830418276 866172883 935934721 197790087 617749650 300031481 493820027 832418547 917707747 700421440 919285233 421614228 721006653 153152278 831838850 484195302 828148706 997119361 997286701 823918605 862205514 795924766 910976506 971343851 984517812 410610110 538800842 510139885 795867663 887747049 888698514 848228199 964289402 885526299 976939866 268606150 328305730 339563850 544468164 741608358 869868621 986296423 998614080 913012182 940799459 854090228 875823723 531702061 830622962 126535854 229857594 781808916 831276363 72439955 362802661 895082584 963719549 51372662 917189887 369646422 477603814 847916753 858338089 451258042 608113957 896792046 968236177 972045703 996237816 750339386 870853034 102233128 613821982 591604507 673083947 588640665 801404098 37278802 415769839 62735159 787893502 411058692 838185547 295410953 951020157 110286164 490177798 616417224 986388914 591866884 942771639 371877768 411441200 925650158 970203823 120659875 335007762 387366713 835931980 946069251 985429942 529357038 904309319 495868440 917314264 177653286 424559352 251045784 485961543 640846931 824401302 767049690 992837955 569688585 713623790 887400722 964882335 647074216 806470068 127879419 636737310 376541373 722252331 826577961 958417864 342413631 565670487 844963282 984100654 642642000 876647722 673816815 735136947 374272931 486247325 459192022 685328074 758245944 872322019 856274425 988817286 766975974 805440357 321480137 507000936 231347730 236865039 722349769 983844486 432364125 784697939 711287127 721051939 416111516 446083246 949490298 962361244 496485371 857595408 184816188 694986943 707214782 851828468 281337506 900144670 563495229 876682885 41490655 130668570 151355506 639472867 22772284 659142878 68260837 386800417 300623725 890025032 517772436 677069502 116155834 385428963 867246686 899713636 128219965 131894656 112238055 918921201 496337854 512770168 431692394 767885384 691477167 882716712 351331293 954504234 34627861 510282358 89601736 255022662 320821761 964430477 364397271 524224501 474541855 665877837 320139883 581128885 44912760 749885881 85480962 782702901 922931017 994461765 110255650 431400172 303924607 940361960 531973907 729579042 837531898 881576682 182895651 359330055 274447623 323228384 695170658 970783651 713151787 864120071 551897746 895816330 996199790 999829523 999473735 999869067 667482832 949774790 163698227 671981509 406520898 411932440 918792199 928333666 679970970 722243680 603426895 902106260 815527332 960110592 32300289 57129178 401192926 466723232 541881037 589988025 170074796 187836026 182305253 659871006 962132154 983612912 410398089 537967662 804384711 947617864 256896632 918273434 971435879 998333422 329390980 483416111 628239523 956650100 681763984 939782301 701342473 925809856 149273662 604187225 999411509 999995773 390632093 494856882 702683514 756699003 324854494 536353938 26649739 901515751 882947758 890926531 906198643 980450657 868616036 942728928 802916861 807632455 906009745 983244064 390250384 984294510 552445976 881759776 83675773 922520160 617512856 880319055 449097029 892311351 122832719 371404761 968222055 985887246 282848696 464780657 206356077 589352155 119652671 396923088 982519913 990763841 205785688 408405517 42059018 976290480 507113057 597220606 849630353 914111758 983089591 989576408 84987152 546090646 546871940 697595165 8034922 563946751 657374539 688566208 593996234 661788195 491643139 674126643 59376219 572527026 855645262 972543719 3035949 307706562 940462720 959978902 597016026 688636165 918239315 920297338 640688588 856937024 99447691 472631987 116601466 463581517 474411757 669055818 924719076 972663591 243306645 340221459 456973841 961588447 677154 647692867 361709357 653856473 62923689 674531687 616123880 841435832 178958515 922973744 99026936 860099801 371924206 478471907 344049384 480724410 707407209 896703581 172038266 223582467 902847244 924297230 943262642 985122404 773806936 919219916 853338500 977612394 316769152 974633288 752020474 830621342 98040072 211991086 5894846 307040924 829511663 870092318 389104724 750289210 294170144 902514436 377942643 970145660 468959960 904829981 836396303 935903796 739844752 939152364 287097060 331590081 712398656 939677481 363189554 450453731 998661169 998997793 596608432 798052287 133979278 395013234 675215748 794787554 314805645 450891327 843064182 967430562 342421054 980659060 242165057 331486156 594388555 905017944 398497226 806597740 842537701 893095236 164389395 824893359 527012071 927976445 864368101 936279284 805235511 826238900 870212803 918959382 690867743 866974889 328909741 496523121 299316949 641549730 622589354 742582400 931114499 991893654 733382787 782250694 19190228 173751965 854018901 954256909 611692544 913780961 653825108 720196034 109981230 211126248 818610195 900583566 437499628 605011020 81620281 517369028 198775653 326261201 380579137 704532412 247914229 727471259 572065764 848182139 749938148 905891582 246398277 354972060 761976130 975619969 342358848 817830040 168850089 621790551 77130568 669928215 154716282 477681313 373535920 969532212 627171844 995716881 182183114 864589824 848284580 926698128 224638729 688243903 159025280 338085674 944862394 978932373 906313876 911487950 173901311 266951546 972667162 977056371 436509434 592598629 266087099 988723567 371267015 574633657 318394989 970189072 808228755 920204561 282706258 638558220 864199965 993561609 108954205 561614274 964973844 980895833 668716439 978941897 436214839 454941091 238036963 995379890 622659898 991992544 617756144 756515939 164340952 273169661 382252608 498411008 801788472 918871720 804250768 872436265 471377119 536440005 93729446 769722341 842882148 848199698 908017511 935132569 475716201 956896267 790223884 818617795 380275970 955775284 915913505 984043380 754922067 941432440 641887638 664390742 199188626 905355941 172012100 392715272 695534314 870671864 541064873 567700706 212278532 892454504 248829475 572398954 225011355 901512164 711411395 996342649 650037593 705364988 248134584 896330522 208211704 937574741 919915402 960390152 848403939 957776381 39070402 48991344 87059123 886059590 520640232 912519116 755083269 860676230 940642504 952592639 652201039 846788292 480589144 897091356 553661239 736321158 804689865 954480762 316010528 323892719 764119147 955613667 786358414 841726387 921435051 971183422 639217901 840272209 42507475 58589826 633512335 872288793 595930971 735453916 564288624 677659150 391451531 522208374 348871261 774751938 639186651 712772029 300977666 556836984 17851060 165874573 824922845 975583858 430454836 809216946 791465973 920104939 408500894 599545080 72424048 975395176 320876496 460836835 149840244 279773599 200594195 880468531 145286028 863480557 818645528 861206316 405957805 712893346 711372358 917703106 312770466 710803940 863525176 986170225 255928561 312066362 661213803 826557253 163470142 498825907 37722508 693623210 236210889 287654716 779061898 974958501 717958468 780777649 619795145 654105324 35248670 952966470 846600271 918902879 749790585 854821044 677487426 824001178 655340332 729794650 88793474 871824462 167133983 746356236 89192074 558724901 873557524 883886779 956639329 982864457 616106833 726824174 811910830 973275499 70081852 959442499 832907894 956712372 846064858 855704147 475372769 535806987 226016523 955960941 294673811 853811650 564853323 928504921 635463001 683834379 225155026 492742403 563696693 786414208 656029644 717152439 38376365 459939149 152627068 685733438 386869474 390701127 559719620 893181969 857289961 961358061 620144321 890532255 413105307 595934796 773619481 992003330 938208058 952053211 46939028 922504998 983654128 987465864 935041874 968462164 77077208 793690092 652041842 732967141 47962496 85249829 436155951 637075618 540792569 903072083 398729342 606263752 176519265 966157410 201020522 273769373 837339761 864491095 774090348 993500063 120631699 272841634 973538284 983478961 443100890 460614812 858940754 999390237 419133103 534020982 30536705 745706485 181107862 649632810 242518136 623866662 475092490 976362431 818108174 818572926 711620030 968965165 893890404 987812431 696908516 834074608 645963620 962203177 182509766 215317400 916960533 954245759 904575947 987366948 461682007 534704277 983850433 987505080 916181564 981556719 236296582 318238268 836717264 974714936 58273292 780330461 441750022 469023909 843170863 956477781 665818956 818005443 950987178 970607472 444712051 604843242 263675617 685666803 838649020 999853891 757293144 933590047 275126616 419782012 276834655 884714096 573087774 977463466 374692914 439058154 455414156 643615381 365190192 716295163 638511131 942198187 180917702 351905628 615449980 899320376 756626437 779287491 985478161 987895888 474775392 814242043 822154406 947499958 941958629 975800788 660190281 791584918 799628823 859542752 728538920 749161104 366669836 645270127 246798056 500594843 838878060 891067396 223518164 328523786 340510240 489515706 485578071 565796746 436664638 729510969 16207632 729466999 704976198 949648051 214723962 226396755 731642344 852843738 466787444 813687438 874639687 876518788 516780033 598803429 305843917 947543705 201696571 691044314 259912796 955756184 797045102 947537098 471553081 642615634 668779922 889592715 566331438 606612509 246073178 793331015 779099740 832115606 392523866 558731602 703158572 904965616 14322666 342917329 404823817 485768615 158092967 188245429 386686785 869682983 958505133 991425570 449202800 577101975 274807906 652998572 936435699 989096321 736785094 741418042 769671690 818143237 85879260 812297497 947544610 982522369 676706216 734584927 401133979 778481768 10960640 254580604 265335215 675637353 266230283 617363244 323762441 625847515 464897225 953047179 106116470 604749270 349131148 744682627 832807664 947396326 32533628 800064373 749121949 916004227 435920564 630317027 817131518 884773495 224557222 658561727 191766521 590803185 886540545 942369184 285884516 439983122 174539438 909750047 378114563 997596534 486076732 594217103 912437892 918479358 302742336 801802837 191101785 274654410 453788294 560750467 819772623 956889523 675142303 734537911 7581803 696883132 249079513 899819704 24152294 510664332 951331087 986028962 323533073 724079867 509342554 975295748 308695907 830580049 177485930 717820577 772500337 903530810 407943236 811959867 473951537 802178137 646155836 997750061 921998112 988980905 369051671 671850471 206291187 804894589 822256156 845925622 329772424 495618338 782550680 963938576 602691571 770384044 112049517 526340538 499569488 999335370 253647122 723689896 668699253 941572206 272905690 965914782 357457645 728908433 797064176 837087634 108869335 219305742 886347821 942101620 400744697 704902518 450233790 939412252 407886811 749697210 853230126 940685683 804905778 873237164 536811851 609250044 431064310 844571949 702766416 868225964 292575701 941063239 704999308 792656716 764596290 896178337 345490527 873405874 932734721 998982976 214019297 740808647 28703359 633350045 791314047 848408962 45011969 979371066 48111630 92222305 640581245 995168705 966727857 973279763 411572648 592590956 539333063 723528489 220324219 366808079 923594856 968011232 166180876 838920988 883800182 911342743 413998527 507733049 423050990 434880894 422788807 975832512 773137138 958151245 898213310 941916482 256159209 928247221 577352360 912200932 756669067 860204890 758970369 850590795 460477660 895044806 552934250 837318102 950321084 955423558 779110287 954660217 290109697 958443827 955890877 987731717 436325483 462351720 53980108 796336644 156540655 243765796 128258364 971780599 786536786 834628059 17973046 912814517 754054290 987894378 621452809 795366324 460463303 756860790 984083524 999893029 869023403 948393216 801728076 953860982 517214062 651406752 892225334 969728752 661425543 678719530 549324571 820899645 108522105 564134695 517071386 912195492 380979713 483503732 998250012 999233760 753502185 961999815 419451708 601174635 748572300 778939314 343121002 725572952 555428441 886451237 479223000 591814117 239063826 637303991 584988233 842541223 729898183 863592021 7890647 855733313 668673464 803400315 502270121 602245897 454642168 563258836 757022061 895738143 567239481 640588991 236620169 934010032 173532036 527081654 315537273 876960194 473202957 538798318 227128166 332518271 290496468 680380659 243430339 479321640 135149095 995079697 928353248 948686226 979003609 987368687 328856133 460254975 268020030 724288813 229563205 832061203 161879007 236657786 241659679 940458117 536209509 916929832 806695985 909209366 254301336 270805168 32360069 211372818 472760263 954236112 510090091 710871445 336728859 987083466 514011502 735465665 875587364 926281242 52627557 802236460 776308027 824697432 355448412 675340131 756443446 890778481 397885957 896727717 91085962 913720875 48427736 244051356 976071985 999045058 989744702 996650586 519608801 520267760 757561970 940400082 467147647 746568905 356230190 531009668 3622821 100534537 311191609 902870778 731809239 841328858 603343793 673965422 590245668 774889374 817015950 914833286 825160342 893591314 971675713 976254719 126996867 437105570 276074758 546431720 74946627 115746618 322624579 406689114 518664817 793968646 782446087 809522488 526752277 941607392 601121233 867321506 875628630 898023399 84365199 370803558 722054733 781740107 968171464 969661825 160511807 452533438 750832355 809767620 434700636 672653227 98159878 178662982 989451314 994571087 140082837 438892217 519617973 887433058 710200827 869386419 760314822 776409899 196319880 438288545 537009596 693315616 58176292 282155824 416661100 463232538 800161772 836387200 743461556 876769320 766952648 917162584 198418188 792997708 783132028 867705545 151534102 529606958 173406910 529081493 49449801 923345023 785349692 955332950 89295387 904351218 50889715 308801360 655249763 960552797 631807653 726898910 922193089 986219149 232182635 939266282 346701541 896586982 643951359 920074683 565654789 955500113 269861207 930914819 219180620 490234615 313573995 981213789 155251488 259107762 843212917 951044236 720234272 967629332 902749067 974655595 399835619 951172502 181557777 376412441 283645051 763782847 684401154 879577339 363637733 706638851 144574944 723228346 123896340 325911410 707101896 895730060 437852295 706003005 819502982 921075070 641971230 765393734 626853998 685316091 352492084 895247890 743191214 799265036 811937296 979703285 884885755 915707259 386615513 565270543 30568890 873821338 470308307 675664622 445977347 458486712 902002567 953512598 756663160 850199675 129954031 945716525 831067506 963279184 236720321 500115733 959981406 963729631 365333909 482169648 325346194 934017187 15262451 462199222 978595767 987613477 555786261 709512018 899265264 934966191 683633074 697241603 401164056 545198590 326298832 354208776 570450169 743861808 667135503 956139319 255016257 475311488 537620278 963129760 648375575 688902413 979245874 992953974 8509931 222552132 922233337 951032943 950374374 980133654 697447110 718186193 53339655 199928231 420792985 501570694 757948072 906687534 150412200 263672897 588109707 665436026 12453313 177628704 808086703 811680531 150755699 664041875 529878088 660797524 762567010 954754608 26710278 470326825 334676269 746888103 669041336 926428271 271198448 435614791 600971167 633713551 136597432 686131296 923025953 950935022 590721138 981687417 924553892 929885228 576050306 902022385 594290204 804767306 15705607 701244416 454013635 857668380 658214752 666790118 517206247 832137285 390873061 410219154 894919949 984391525 756158699 998401015 340809125 843389542 770985391 949328769 246078653 528452790 872336870 942967645 861361548 934752030 387225109 429045169 519122981 527630964 862867274 985085190 765235278 935450587 173846232 863069824 496657776 904681592 625021966 802971582 1511654 334514045 243020167 547843031 729004548 758036707 514936898 874672846 581807020 664032240 650006513 965478360 819349398 947197107 545770906 605610168 424231299 706113678 97072979 386416801 627590228 949922766 175977639 291874616 74305782 939026406 201940566 415453586 220841853 614905738 70515968 349938719 570088673 610714120 907271344 993559290 779850220 999726191 237735971 692924545 773513471 837709955 446827787 499375980 344554122 463296407 986148680 997288660 555950411 919714232 11664714 79015034 388555368 534791771 705189144 726653956 546692074 567467523 204009182 309791950 568936576 890363260 12030088 247965031 779888523 794135508 142938529 771286534 6195769 142912679 194144589 418011513 968764369 980904397 446586486 678439434 31801515 524576808 54889884 900491898 345085671 944269438 715290544 815556456 873151684 938439891 247975607 411135921 928535733 930713277 108897451 764009923 488858242 539252393 836188542 837827832 431913877 578015505 288949057 719362539 298928289 594140819 202548030 680038650 508192906 876926964 47207914 939461511 529955660 592195200 335852434 732922101 685386080 747428590 995891323 996530566 818798393 819798649 703480982 939598133 881527319 947401163 605569642 700610932 450190388 679555441 43141136 532175032 917060424 918811248 819435960 881393640 514174447 645422056 410835483 967292672 75091500 904865236 887625421 968180149 658862665 662896310 236262422 999417223 706377828 846772299 730007786 978166308 380445179 816543272 814581041 978040278 738210012 937175980 374012360 720956515 370374919 585825740 194333446 860715344 400864534 808943328 182398427 360910904 51998001 257235283 593549889 661126943 907087680 926788793 526605368 965277102 150410296 988593298 343230084 803081507 451780511 567414318 826333012 930865229 581140837 694219277 664614244 895545153 34416245 465619557 109402188 820399343 973852792 997468741 177717791 707364909 250768988 434019627 550440720 928582314 169603408 876239206 90728359 139255758 149050406 183513380 599754405 830389778 254943710 460248356 127914965 827461339 331991192 739014010 678589292 991818847 768135008 963048544 22203255 45279121 443821871 497515092 892001632 961821763 962399444 979798823 80873912 739104920 971137995 977750500 681078095 784211798 487347981 563026242 420064216 582383291 65818858 904038671 395891830 949350677 548068077 681794573 975112739 998916481 251834408 384706305 588277580 706131081 109669378 116426735 107274718 483056659 54026083 137929789 701287166 808598821 970679715 987016100 447062964 823560452 999348291 999876694 368107569 431556225 585352818 973475849 167656890 535573896 641714824 792812479 548255174 707687434 467200589 622055708 451871055 855965163 331698123 611819884 868161864 879693344 577083238 803047338 704893115 707598084 296132795 439096700 21009068 436178025 618146734 690431213 147456057 608605534 510839238 831879892 216919155 325600715 739109840 772759992 315133139 723519464 163825857 906459994 154198217 964654170 776409747 961363060 809015230 884366854 522969982 793703853 896741150 991175499 599414218 738381724 333616211 651912887 658541924 973305194 651307227 962024057 901222214 921336197 870139587 991118544 373136980 999142013 84260624 403598327 227419345 939162914 549232731 560960355 412359180 699088324 883492234 927735435 247590700 791383576 595823951 602518646 769678696 829043483 896109424 900450029 119247657 864148553 331234312 809810475 986977617 997832996 110098708 954661139 306693479 908973826 206262739 607234782 205342602 998093188 457591097 753123396 40002103 595351352 951778040 952904369 898597375 993468123 923446529 962603833 160313974 949534386 223087967 767687042 121211615 961419926 477643417 558327106 501802094 735826810 414624812 430665981 458340246 799075704 359261175 842816319 258969004 767653469 759149166 810222422 208373321 966078266 121024194 381847916 684606001 822185870 879898521 904744220 396314467 655340540 292902395 924762560 254178175 285583075 834794399 854239625 869099788 934053838 754193433 876985984 505104412 510548641 884137369 999973642 95497351 117885025 108520873 217701340 818037929 848946784 996475701 997510527 281622162 367142134 286636495 695255327 826024863 884178915 59137271 143995776 589737317 610554639 791890086 972478326 390049340 435544689 44700567 440920953 296325741 403180477 644205592 955388027 249113325 413037260 765621280 860754204 910745825 952953504 151424140 902636366 383842797 447006850 81323611 591072515 720008492 881143494 436566685 477081097 32480954 698876456 200430884 507888585 406767985 496032610 177545835 586884401 930408340 967764453 42948516 866804987 568042327 888245785 777674746 826844680 52256067 539968842 61097050 939504299 510483292 572894352 120629424 854713047 446479281 791398307 445645156 556153204 644663229 931572457 135744842 834220176 271834865 555398972 209697122 820210643 833524756 904351313 210290206 900365197 14415146 693959492 799355698 837913917 728483180 962329809 447946579 677447471 458333429 799704721 824706594 976452342 885338152 987982353 270054002 739747918 971703504 987077923 643662499 907404749 442169443 877844113 961047646 994100083 584345992 863745820 609800617 863574746 569158928 658846487 312028966 969316913 578274594 786319353 911319868 969488638 764885463 793478111 536543160 832442324 892411669 899445333 811414348 884645335 306509111 365094764 621578432 717754590 424158724 693673733 138079778 342503081 19636838 652842633 234949320 937213538 959039050 987961362 45733083 892897561 450069625 943445319 955380276 964352476 263843989 758026490 519832709 929635591 335340996 890157116 323647799 946434156 666168129 993090195 199610427 965146802 40686374 660244161 398026660 669290334 625139428 966584411 491579940 876955417 181322620 864092524 416595556 736717449 49165205 159209592 335877955 387723779 356810960 416543021 179377242 428929920 315986330 627452967 258573813 480751914 440165719 643649332 771355208 949985371 699062949 802025233 179447409 847383547 854044840 965630167 104580948 904869239 906784484 987390104 165071505 584974984 21280849 344196841 787172272 862186079 186587478 204353096 241540090 264577430 11649110 746452342 196092401 207322551 780634692 822732532 709814699 714896894 219785723 384946982 928317893 958990046 785316792 944218556 351400491 673288195 896642829 921191004 942113428 991179230 596470361 811718054 436200553 914228495 851271778 919997837 622173948 825019339 754567189 835368933 532151841 543760534 544384061 688741809 367893983 670538949 826284398 847266763 641382094 734454625 625716648 954486209 603776082 780131879 692874692 802951275 273596991 294467816 443302512 583731659 921128322 928681746 912071096 978307535 939187795 950399891 704758832 998713922 42036790 955888037 113623719 781605282 814554736 918876229 246702501 562495150 29662775 777773036 162920842 263950646 679265407 911111383 57677958 613550084 556255321 612359907 546666762 820914621 864272059 878179676 478472296 583004973 133089610 268457765 130266913 375164913 83869796 698580489 554115824 816216339 835413551 965711881 109028034 435976944 674136364 893506449 98911832 787927515 936208513 950609556 773905190 879097325 929762948 935442202 562635108 581268695 3602179 505937720 106843418 937269432 534912981 870404959 45369745 893236572 660394429 942755538 883308052 902031232 607368894 642618367 583938116 934969957 145305955 251053165 665668405 984076349 889764942 957387020 425725501 980869789 268854476 966030045 459917348 514074832 752485975 792674911 923225018 963653427 213967439 895056875 69958410 197725823 493338913 772258400 728867419 851983841 596657219 663893596 402950708 835662652 597966534 812966000 750434701 973271484 623333726 832295837 884027155 928976157 342877758 571344096 263124438 314961626 699607916 991971898 523393694 665942861 408853021 528797417 510079847 984225117 938197627 987565037 150102105 208433949 789687840 929006263 34589494 837908272 260272976 722435300 465929912 968021304 687886504 947466040 381258878 741105699 531840189 968905163 425358631 743046668 555712363 750553477 189417526 726391585 111124588 335500930 706621613 919482144 175376260 511972235 204269105 552083298 859539291 881340669 506246087 645677785 295673234 421940560 449163646 685940460 31775811 425555408 323170470 577922133 757266771 835795130 711830352 831889317 219415518 864646087 90210245 778848518 322050126 680635377 243979862 284208185 760837376 782140221 789696233 789998971 133271612 752905167 687572913 891994507 467069393 751347901 782576905 985957612 505778380 819715393 429797004 801385322 887641177 998470904 431981333 528947200 10867570 256708131 386659195 466787442 232514732 988941990 751915194 959817415 404530199 556019383 66088735 616027404 708342616 989020292 442439852 694575437 343228284 697676957 308271332 679461658 239319201 516531652 852425853 936621839 31072504 537454733 355158287 947953128 501876778 535726040 726873934 918544805 776040310 801060349 589983019 639228781 652295440 959309632 850063247 914847355 31849003 40618837 139821323 974017469 867018243 995892263 610734430 743128448 254048320 467755797 886091056 888295835 617565523 905568863 908501185 982377291 759900759 903661338 834456730 848521824 718535066 948658051 365179745 383917397 676196508 696023986 39789340 91354542 306895757 748312754 70417373 804108510 308969040 575946321 357688205 685492357 492263969 924309334 644658121 710510634 966189509 987515295 941655352 971083063 905202879 919299607 453738284 647532214 281205947 526798785 60915024 444816836 145979706 473984229 509608711 657966044 880438642 962574611 189128849 778759976 568139592 751129856 821763503 930234376 351622410 717408010 788837967 805106096 257657541 580604221 890833908 909542064 263186444 630654423 139234379 595140916 958589096 986759051 493744557 937745350 15351065 256873426 433926672 950883229 527601486 605195928 118076719 769733583 158953040 214364426 581322856 782666520 951803153 977263058 753567906 982796284 760605727 990138828 183570263 854958984 380881662 685645683 988027311 989257237 623605310 901114503 933434746 953647854 312782889 674002769 824007332 971213591 491126791 581634060 358113220 430984320 795276753 863656532 634528778 848649382 411807880 590368259 331417795 523089474 751631663 983842755 597216811 870311839 868294225 983240899 511936144 540116703 838964435 988637038 10352652 251732704 715583519 907696847 588781643 845261088 811923524 973122932 610459144 651739653 307436721 957043329 541362687 811233099 347555491 489523254 836337223 940238221 517622586 733236318 103212157 623442145 759025591 887925540 202899961 355896219 107522485 211232449 211529512 709718532 407744291 943086685 468924329 522558311 47940081 617604266 127092402 653310748 596184199 987672754 801536247 901288990 128155037 439325871 754752237 843822654 118915660 834984645 978888978 999423756 54800517 964524543 545806981 575484461 313842596 415493205 969708404 990802590 446054639 932668826 290003810 798029557 502272093 994680126 506379361 578425608 333812407 869771217 55371828 704004161 355504662 378844881 267147458 286802061 302733797 943906514 753823284 912877187 653654833 917740329 273685237 617034685 450044865 897284269 166812405 985568160 997365820 999113369 298941046 562185620 206341511 752605322 857454065 858525518 465550535 855768647 475341749 800962070 289832306 905027166 292628358 560309222 460241468 993262298 318892155 404922455 864603649 952524360 398847249 922017814 527509722 677897370 914491076 948321392 580793820 748118349 706534509 726631153 115041319 145191498 5531427 642315334 250076915 716211810 269579826 829123947 191528092 972933097 579491896 768260430 196329609 928727739 488263502 990665081 722858370 998545825 490057151 547303593 527838882 854781263 185810516 496491672 749496337 959104973 611048165 618186559 192577292 876401468 493403590 957997453 967436927 987714672 578343176 688037553 915503517 921104468 938748807 940316200 799527066 843463017 697523413 937322179 777317703 798887239 481507189 760170555 62310570 554013306 323418365 659952624 828650869 890807549 332271818 911687201 692178318 908301952 382539017 749565365 627069357 959770789 363942830 928460244 625839171 800844484 661613194 795527396 366396394 468023550 262389572 450689463 392003474 431407850 262927030 385437216 530698177 910342005 902450069 996806350 343071696 578737912 565188800 937565044 943283872 954386891 43468027 731398681 925304499 980966989 722412214 757002422 665976524 801384155 773818211 783894106 875254968 943591026 23696500 608346150 258642100 838955594 867176963 931861531 522404849 859723490 723846412 977517273 83719456 586740601 312321997 964715033 406244730 528670323 639269647 838326003 684328914 974962091 920855555 976874134 151017012 546294071 955255358 974030000 648720348 936808363 372343571 973256456 703558873 962195587 997416540 998488598 823612988 910776999 178537989 271284742 527588277 871335178 545791807 671855114 499912282 703517312 51233684 100122950 510834503 560969742 961457647 962671863 539975394 881073097 766291194 900764447 202701973 367605148 48936216 264694723 319588772 603334041 591378828 771802002 519586417 690205837 587268367 810220020 461615953 981121981 671634761 934566651 38196367 177837743 987230990 987455408 838457234 906266842 322505609 417044267 587494341 789087006 615575429 744960980 355797114 591969315 119361109 272376960 169028925 631030102 952506006 997380353 879098733 972437242 512689385 533560829 972481444 977666406 881136788 905404566 458205606 788491904 384622624 577444093 181508938 795596001 470798980 495627624 877204011 927541128 939773924 979141688 151110804 894248992 58266903 689883034 823836549 887786056 760278976 898824040 156826720 258214934 880548463 973214771 215423932 963653863 254152741 679924061 641705808 680515896 336192843 856287351 640522427 928601784 269465417 640343674 101111942 807436467 166147535 606522999 635567267 863064749 699367675 961601521 645426701 883497550 97663450 972962663 866187082 921807258 187917391 437337869 113248639 282212894 291484659 419262216 472688405 517339357 628520206 964097326 379326319 878787655 440661877 610611807 295102767 422741885 468766680 515189943 505907402 623306288 992791843 995280899 121743214 948264482 205473310 361144110 609662444 863575291 459269905 606676566 594063269 746732296 673638282 907189939 621393669 743532209 908749248 944710709 975064363 987633292 408792537 424853081 311580401 874243445 418374475 750899185 969135037 998812974 706577103 850780246 865040879 869854799 822364628 910749454 39857941 287979345 333976194 398689677 214690911 689192045 545507111 574222952 364440601 928391775 494468314 837843470 780936958 795973757 177696824 748016955 268729322 634616993 752881150 919512579 807036128 893481631 425231585 615908038 895145 832783247 386020474 632957494 171402609 953215385 249968529 592172442 416361286 707760143 306962110 526334934 358294828 676915100 149248007 567385741 443701328 612224645 603582028 960489697 303155288 460723119 117851521 474664910 750973159 961792933 732185886 946555309 210758371 948474593 487319337 812648574 437287240 503320428 265348229 647501431 653398706 998436283 527020228 819954557 19565657 681246732 978696711 998479634 871285891 997351937 370402150 637929468 838614694 943888234 812287708 856629536 698850339 819112224 215113655 594514683 287689608 623452862 901341673 973466636 450453714 591605765 424035409 832967134 366325504 469342704 971569782 978406172 365721039 931390172 295956972 804892768 986672202 996896733 882843736 889111642 358188228 653272381 721200061 779192295 199898743 538586235 277358500 581392623 472281444 768742638 798189897 922010379 511648221 634575980 869192423 952653986 982232230 997866619 237427944 992545382 670556186 799677663 498148929 875826274 400950493 458679371 910773351 941927743 682819853 764909454 679774362 780255319 693434192 839605582 373871118 725688864 215080149 717876835 117400220 233508528 953327477 981046878 34906618 632622699 599094385 703656134 811130322 868525185 250625157 913081992 166056755 256673974 283614211 445692331 800440345 907886630 480148914 898260979 860842250 921825349 836949427 860929133 115387399 546054700 813719983 908188788 297108463 621674056 661709390 877231790 625437122 854858346 368569579 948336885 722068787 995995506 336387070 942434371 939078757 959565434 427517025 723083376 486011037 547200358 728417768 803350122 633878307 998330637 726850949 903129671 87611443 695898068 277131712 664362545 684210195 821779291 981681845 986299540 77786144 900139675 92772249 471406473 845063434 900919380 853439920 960287739 596839504 952628668 944025722 983266388 300038092 312649241 506402502 559059431 592395264 763686298 64753574 540426477 436526106 509914297 197753100 776675194 604679868 662423793 530315736 550000859 184560941 439659752 205841819 538382934 463688046 664361166 211720238 435608353 190077758 933268812 556429136 576528647 646448660 690802780 807535754 868536361 375988917 687178246 32173692 809859342 17457783 245070894 565473762 786568953 358303596 824005970 283087285 841047824 160337075 883758044 228785321 902746119 884585308 891692203 713229163 938585877 635867975 659565962 808863166 932261891 558139017 641905057 633578288 921689180 14567815 684443100 595766356 799025697 296578939 494529568 9940270 553772297 359703227 977756978 367077431 991543080 865230995 905934505 44700989 215726309 539754314 875392171 751943005 958082563 352295074 699841957 973647128 989684647 994401194 999396045 369191215 635949695 52725532 206030619 385146661 396901599 95409029 730428095 143863975 191066005 458336346 759424640 405748552 899196131 445661144 639658127 784642585 957463871 220554691 614121839 413689110 683417989 691872223 739080765 713471582 739639460 459930433 865474810 884683062 970287501 428983518 776169608 762822306 934490743 82242751 575109894 561618435 825378921 366710561 568201692 860528475 894198692 224533865 590803080 64946298 541982589 433475723 710462601 598618105 827707034 257724855 750269111 801508690 957778939 154339276 586177431 117691891 504477534 927633335 973690243 984781390 999692293 747965707 790425446 477644314 995558987 253280019 286075933 562483140 775098858 769290255 939852452 384670138 601925065 608319836 931475785 502630603 578289464 762209634 997174524 543657236 899149916 461252117 787603613 111548850 309132454 834836994 975746613 897474177 997569595 450047178 933856638 957680780 996139235 196420522 966876508 641199082 911798662 673560505 837170094 872982594 931803979 900170327 918325340 31118424 962008477 133850812 481166029 349686354 981899598 482681472 579579995 330090002 488148687 722543246 777084080 761923056 945251666 612075318 980705060 366992795 536707350 164605545 438529227 616374659 618697849 461212393 623558910 847023714 929054250 276764489 958367934 796124083 940607049 538641005 985786728 111686041 856120580 11835480 750119174 192713853 485453664 9407732 973863383 406437559 606341551 273811414 427144810 425113580 961078716 818826437 946956119 958267112 975787767 174114554 527595046 848709673 883452317 814967289 942489707 759815774 807793439 233652632 968166805 761279223 764332044 122344359 778204039 64297880 105269978 313702201 460848579 895697172 934190387 660577906 824353730 255569877 339981039 747971021 869013470 234039970 655796945 927520611 945439634 615304080 854490270 459361167 982983094 835124688 885514518 356213891 513259005 933824873 992691415 502288342 980954905 447882205 685891510 496107455 722337854 37145589 189124108 72436236 589784303 619261750 874311365 546261568 559082284 140327052 934115444 352325581 910440003 435082640 750554997 988934842 997265237 610177814 870550085 214005552 448695605 926684746 931150483 439175137 866757884 296058879 998034597 608860929 980181496 104146302 302280197 96970530 824246961 348946422 916366860 610416748 859147399 539310677 956055993 122416310 904347951 856279622 939600032 665579735 959602037 509031278 674748798 934584743 964410748 367294657 631846116 638513116 764357917 184713664 596062071 768056008 940728622 44047409 882160154 875009241 916659357 20126566 394492246 378057058 622932453 592302295 780408070 603185554 801496242 71577271 266794265 835785472 878820154 449216322 644818044 408258588 458212802 123112279 837816064 998827691 999184512 373658582 682906823 424332387 891280140 314996883 651839415 958953639 986494362 148726398 245265720 444477550 763638983 634645195 809345689 426309009 451320728 89976001 670783530 770185211 803963832 490087378 558721776 136451199 455828796 12433797 508639188 778441183 906860131 154459420 530834637 153570599 962959031 755969692 843468106 463827022 769360777 751740733 991126541 417304674 749236923 560858168 996277390 906891633 945438170 420490868 476471890 24230640 244454699 41315949 85238677 97300944 869111780 275072748 434471586 942854043 979513957 388450073 806281990 514403270 873120681 249715713 435665268 49382365 696640792 505788030 716544496 84951387 848839965 192415475 455890573 555667713 926074609 974573375 982697371 775594125 834974465 223698876 420300795 978199430 999948537 297904932 615481972 802891521 937217498 208866474 565059057 267852623 830091787 693243779 870400501 975676705 976930625 383629044 802269086 490959939 719267255 93713279 748357188 895186607 914580914 718096603 820713642 176741037 932286964 256504402 280821311 498123254 958577014 178491196 187342460 630832235 832131069 390356158 593611507 51990323 257957316 306180995 545615627 910112859 942365749 547070987 913468755 122473701 955813507 933343917 974979508 520738225 677375007 179842327 742677761 11830202 28576465 870949667 977232440 677534127 885892657 40699373 531113565 850017605 999147636 921652793 937277992 990323824 992993641 754817397 911075517 431256828 696327263 298985388 358880864 119237983 916680426 193234209 700504807 997649310 999996032 749024539 793731118 73005918 741644883 665650506 969091041 444766995 511465993 378635242 803923569 87182803 194603726 833216168 902196869 900929688 979713226 632076708 689907698 89993276 486755420 177941505 371304231 466232506 944217148 624692029 754664413 467558403 905480594 119359682 202891563 302810964 858658363 890749289 958200933 290318733 584773710 624679093 670226454 679597107 761497220 980953802 994596378 860140103 904930130 148517000 986261242 203414412 939918595 359716216 701635502 872560902 933420838 912586845 983732706 240164857 832535942 830073977 871536866 272274364 316265946 858957937 881415470 330329680 695431329 629160449 821563509 58354401 553095088 566933477 692261318 88652609 603775718 378590694 790689447 862728187 893286580 538943078 571836497 474041331 525816276 479155051 673012108 485658177 905084447 939786364 972183023 834618497 962226280 173018481 904096093 76994164 936151138 397087880 510879286 875582378 957276027 325248530 412520159 891724287 940925903 105098198 828706028 26294074 760630996 290745963 874878608 108223706 330222997 836777370 984198760 232667351 887148651 7486873 259681167 71868695 573334830 222357860 374374264 480373123 856629009 364612574 921968112 188282343 817211351 511989596 839744707 899159337 950222308 186138795 420919679 484793742 857168018 557730456 985652426 486209124 976317785 458607117 698163869 843649957 920734070 38278062 777704569 554730664 741654001 978512307 986453619 298223853 723013544 762075042 840764278 238515677 983708118 813525786 858722881 555377321 981703921 925149060 982758830 628897129 994788446 364709247 460151952 221780796 747047368 533398532 830150618 265343561 755530990 584896315 786957018 665151834 685813894 531497762 672643788 298207750 947628978 546630410 847360407 170492919 753002463 96324726 747056220 181227183 430870235 951305431 975029667 622887768 700894400 862107677 878110969 841096566 873982406 354527653 837077717 209054096 472412092 107368372 594690342 596593426 832927340 970041194 978195841 754171635 915966715 357830411 395188732 486702065 882027469 270809448 938049260 229613488 794836763 783500863 843074211 16299526 584247769 774854042 806033660 298987349 903906902 708110164 907365012 996357541 999137712 705690988 960580452 899663018 913482708 815891149 953113383 751680733 777265264 375202028 555629652 342342020 760983263 250908511 481827357 597263812 975475391 501500499 810554220 106257695 626266241 847807469 894129897 555587132 989953055 985735278 996669593 233954281 864997050 429531512 957400934 135883860 205108607 106663353 671761166 736250006 770649951 108692235 230411743 490495594 870308414 12031646 417983116 409339123 426298827 908206757 956006303 950384079 990123721 213568907 507708387 879542283 983519683 902864298 994163087 276199423 921527201 422018927 821344471 216010951 567460896 258699398 452000619 57002778 98178037 894416257 928872108 599635538 718132680 211160885 277921589 901634688 971294836 385883856 844908566 892197645 926532045 723174725 830130516 981954990 993489361 66119842 529573276 180586083 371350886 111607175 549394994 431918517 659010453 746257808 856785825 900466124 933953055 283619107 833000535 909019042 988120823 668036915 964694120 360678706 680196165 760854889 903708651 366859034 460949349 999413093 999968406 137502663 204473243 585060893 691584488 241489480 440182908 406824189 556021269 612439189 789279454 547919237 731092109 442527289 806297707 915479000 925417922 461000405 921854161 222093060 263286536 735203411 740664300 598279502 658094807 400564302 733830194 124922469 801907208 186125697 507278134 661077154 937227691 376908411 406661740 456809570 898001771 505199050 775839334 549866589 967506087 506045992 651985625 912028429 970170707 799483691 832905773 139503032 697742132 224389418 230715990 716377512 806275870 854643771 998895157 227894181 885884500 457375238 464377458 768862688 804849526 446194708 896499078 658815254 692838717 225190870 546124166 993121076 993431345 859365544 998886670 981469716 991659077 444722861 812522367 628249795 634308093 657730696 899693965 149947940 874392060 354236668 502818214 874986080 927493984 548768148 574737064 205368292 924481758 617103297 935966672 340613867 629831288 6478325 867033110 834670369 974063441 372630325 707520794 424310408 810053038 827050429 943530823 677929122 919289156 346477428 645803794 329626818 895222375 720884709 957276258 12988952 643493629 717376373 985991148 284328338 336423245 732118873 840760576 739725737 817883241 360151657 789153068 452771610 888192313 497916291 662862825 764582286 996053280 653137802 742669808 503153211 582779530 182531992 858682185 313773241 606126555 919435432 988083942 920935583 937638400 514158152 789348222 329871781 486557669 452123476 700339858 273087085 607761601 748207653 954412073 405448893 695069396 685658227 816569925 708648090 882974169 278475971 364782171 74144823 272783604 851300935 906129612 719833076 922018488 515195589 857767258 281295294 697185323 223873348 922016320 794332805 867414735 209138272 223562027 913422043 915238143 176302638 267961496 356534615 828970377 375822287 696775867 986365762 989761266 297928996 780267739 448028696 687875662 402445963 534467411 613759678 914461842 290922116 301303316 147469326 237295696 301519341 861959799 158917227 776731405 366191534 767982059 197005796 215821732 449622653 785712525 802280666 870393591 512051820 680908898 765930965 992326737 430930260 839007184 737284602 836205038 650651149 776832249 571905469 623023372 478949985 501555469 226617897 865232485 226934593 616920362 656403261 975424256 121603728 761867221 114145951 852841801 402271041 708602380 112036818 566973089 569649086 845474727 780585167 982009569 962989442 981550031 392751869 477616968 691789271 820029891 344244873 441766345 458334552 519365640 82356042 231211142 715603651 733128549 227028387 866183033 302753033 880269213 400556707 918597070 14010305 866661925 704744974 828069338 443352497 583725238 920291136 943616135 281486988 959781948 497211312 912270313 242361916 361562327 608645498 829413770 798734445 868167417 618674866 702800630 534812834 940229393 332208088 425704886 89546794 849335467 7420561 386057386 133401326 163439513 836620652 864699900 15827037 989216196 202424136 946821076 2042914 301939376 399056799 988203858 26338401 138375700 945320080 989161398 873404045 916897986 758368067 974257491 699704836 796040989 939427879 993783862 646772767 656963013 427069877 605885480 211973689 789055526 150537024 168242968 744301156 894124195 722926471 992793002 350669656 650390738 616809192 698603460 261452606 665734794 249935194 957625978 692260922 896865525 591437423 911981023 472549194 855981889 1499328 978051559 369412168 505803384 636009907 957040058 223997761 296458448 88957299 177354991 108651222 281978426 145383210 993750705 120953946 346297116 806759374 954672927 684895258 737448225 886153670 994610722 473236488 942466998 44197841 300110123 858965029 890680963 674522901 798280039 11832716 532251468 989798852 990708125 268351659 705894334 973256157 996228246 774549077 821425595 639611974 793590444 528549356 536143593 346942391 631474521 509834328 740200292 808415015 913801556 579965032 696989580 365448555 748034335 488251213 525174573 484676064 871864430 944928653 965544052 695523887 864322929 277511231 282330333 168888047 400721345 683073753 891475772 239694186 960596374 526270589 920014811 995186219 996587374 439119947 804371821 272975132 669217133 124572087 281846032 379600593 510118462 574720749 632918121 45015604 274077184 725328073 989033848 744049800 796509496 598883895 704355633 370524158 457666126 201900130 546171185 402854968 610639053 369821794 472401693 460712883 636113336 501842660 558575364 402151800 906862883 980742509 983882658 745140850 931139892 956150128 962771134 78544632 550507085 351622783 721721025 41245078 451099486 377668408 663555523 936977001 963334486 810779758 865839964 9053546 869435986 131766875 315419754 471552999 920519285 428999107 599950022 959701762 986831246 10808526 301304998 566620661 675431190 84146108 669498146 299978597 383437559 27968249 876322965 398336774 534775712 639899789 852254226 850749907 921158339 46777005 742208071 200382918 459131733 892680187 900527736 108079591 777249750 336119217 800132463 683957013 694510948 606729140 856979921 330323964 760645842 532307134 652228458 426540771 724717112 503787631 633248333 731441657 908592873 98270614 360543435 295504827 822825581 334809528 528144989 235435256 871036957 643175567 716234779 959912749 991858023 132295323 394621571 668903984 903308575 124701550 945474336 114980645 580484894 255886098 700722755 953784520 981681827 624799290 671290386 174383122 428803675 587418205 639972893 666220563 676221243 294254516 385811747 505519683 798236208 508845132 673446577 45011738 752188968 218124247 752270148 590653451 618803889 630330224 956086225 470211422 476138045 422636654 574519903 759417742 985443085 454580108 459368570 420673767 869712938 642631762 794339299 26069672 43246532 585876738 708276841 556285215 932343423 936175493 957257553 421395525 837296319 457864367 905449630 167896526 742870731 172806785 972160976 760498501 894239708 206438025 659662829 457760882 988032542 730126660 787366794 368429810 690560562 292046841 942260549 485858031 939616397 734776973 996649996 333500549 676845862 30848042 344734343 31607391 614101832 334133287 600329678 650467350 987843898 250259548 857640938 972794651 979313050 570145895 876431560 447996253 482983164 975972545 990989374 195108632 261462949 443253422 886786699 416860761 868148008 969741108 983202549 679819446 855388725 101427078 487540768 314984287 920292880 924961154 952243242 445787407 753625750 710440195 821659340 744233668 748146025 987200218 990543759 69404533 474955542 174311833 809004327 960690666 970055530 55553450 282934606 109016079 245076431 695350082 766480066 370071317 794041737 345957877 961416906 68526800 324073175 353752768 611417624 625906942 684201461 348951119 957597294 460842937 471296062 531163726 863316019 386375237 749756865 37448709 662936598 734400442 934496287 644345140 887180907 734108372 853430961 871942141 969999730 149237380 305557683 101381981 826763969 871147152 933374186 548809319 651796621 65389553 849499118 398128640 846689708 200913136 757162427 127967150 141000360 683575888 984561802 288187605 928132212 541702742 763228590 217011049 522080993 398340814 690865861 548738309 762651590 296068718 430151762 750684479 796405815 773300385 861190209 678683509 802098813 462040859 741250116 266855722 293474577 507053444 865573865 776078408 801558798 409727400 859421640 253039189 991546684 741744826 968219731 772101598 885585695 792034722 904906688 168286440 659613025 127430090 220737119 283118771 519246948 106279904 454418751 300040025 454446012 910992559 913494908 999594810 999669389 365968614 762867852 743095044 912740685 208431847 795565635 141305237 532232618 191475215 249256774 463136862 702579685 11723384 883201162 321533528 793803511 450930447 694413524 724245991 800239807 227382657 752806361 295787631 839718715 789138191 872896724 441469065 461480631 845742595 897920185 580692603 667326136 5787965 817594052 753235341 963137785 16957035 683680134 425107445 663293582 631174073 976466773 291041864 728395417 123161943 296244285 667403922 727062035 384693908 647697036 20570228 806506205 641128987 892732985 673879373 889032689 827294648 931666322 609573074 730277734 443869275 636242896 406823125 979141453 412118904 988631954 409430077 514559028 776023509 935822574 912643485 959501174 412260164 822490606 498794314 845297832 950796948 984076782 136873758 289533777 410075117 626148783 571273302 652606684 678788102 744160578 778559023 865140121 662634626 838088754 50151837 55141655 207535691 559259872 930192999 947353896 232014236 492291745 296522516 582493250 340188064 964321609 625207180 755759372 226589539 252037099 986954899 993489538 284097854 715937571 571144669 892464107 693840404 928108636 708925709 754609563 225488754 478243187 269294838 314648050 930093947 957359944 887125245 891044292 314023562 933730449 655379199 922756318 716387800 822678931 698534931 920717407 522164690 577071554 850157094 866925643 412259827 793317813 758681650 946292033 673711818 755075272 301962206 464188104 886340113 959590725 699445705 822464393 168988043 916604165 870826659 885566658 552706339 990658715 396805818 553083590 672261158 737440444 729716037 940728285 143167764 171637606 586665288 618244537 632635300 763272714 641902980 768189404 179820197 881159653 328405612 674904569 896582996 978698092 111283437 613746574 466275334 547769900 722162484 803778110 680452803 705319987 356761939 665672688 674155591 875706126 615759542 826532224 504253729 633452881 836538679 890458244 355883295 497145679 917460028 924386475 301108295 879521516 917957183 983216131 247089876 695917118 808541948 934872877 178865282 572062588 791632701 928764280 121941916 232822984 944846589 987101727 840174091 894920973 141272686 799159870 728006561 845468664 607422076 921145526 307017774 396424206 543552528 665973209 959807465 977065879 688936258 809913813 55696661 83563775 192863639 226237491 136355728 399609585 887985261 895972628 349387466 856311927 919089322 971025340 104068820 588838013 819911355 856336032 771745929 796827273 131314606 527244086 349376191 991353605 564134254 999661274 802466897 882766554 229256122 774208696 65996585 68449255 444845337 721870644 609555358 732562688 941031084 988502753 225329565 360424100 412480686 812667885 374391002 579754816 536535674 865953880 842491559 864841398 716782351 846796737 398731044 945567007 248031651 902213782 395569108 992201517 191074388 590419847 799360336 897300915 501853356 859624756 3440175 38643706 487489583 529335069 912442287 946417591 943584711 983584293 739720709 968479278 47156312 295997198 939018478 950516009 882404775 944977336 174701838 517762226 620732833 705695955 246537617 543016683 686106 979631417 545180116 904906260 213773475 428659719 326578486 991454071 875830608 957759353 280174456 320291611 254390637 334053377 323950294 457631651 342492006 865361057 489833723 946584985 417090374 868006131 677768860 910646094 221108164 539147313 920532414 965264565 795159086 824955292 771509989 777020191 440264895 864121190 608517522 612180983 745616510 818066897 589082127 892284916 799765138 986602581 571813852 718188557 267957541 311771968 825665800 852274892 415807850 924524969 817428185 899197680 113458243 697948443 35370760 154413918 816192250 866901395 758584903 856852083 576520017 977708231 724907233 779508847 683991350 859588775 542470201 777155621 464666194 908371720 493326369 905680470 745943620 907798984 995691714 995803882 245405706 884328684 405738270 678320077 627392237 829836851 533600123 931228110 89006158 184148608 160010600 967388454 389330542 942646835 55522437 555452722 449772491 502319990 65903563 712203847 977689327 995990984 278869175 710828374 890202332 927096960 416659920 842645773 905984965 956135157 700498935 980208080 648852601 982756753 344811414 621089016 910974821 986416109 368154726 834834308 94112483 708988347 495257968 772322033 767215776 854030172 443293404 713677578 392801034 888715158 279286418 955309180 954722571 988417336 636786493 743687166 139661587 642951827 359013437 393678984 752521823 821269472 508563187 790048266 245790060 926276707 390469046 538682450 858965474 999227910 405232241 725157197 871901018 913252641 580439775 593410813 652640499 786260078 723094848 785989837 630950117 871777878 264280859 407347488 414300504 778757087 675695680 868633700 225703740 282004222 940851041 965612229 556811796 871144799 304802230 664520832 165450083 673853769 925288838 945240566 964822274 967161957 710759377 773506317 831565589 889919992 941713069 963972425 5233112 753681959 947909441 952202733 636825091 717308785 53078064 451508029 378875719 726937265 482169296 560120793 808244975 859247119 793302337 848597339 178246002 372282303 608723375 775761743 121560503 485194078 838522168 972306017 253792855 508098560 232471334 788766069 810097408 987067369 929171768 992193160 749304539 932990831 428690979 830643192 207147129 632484989 661025563 743995997 232533391 855171724 418542740 540729109 434332283 492502790 291026199 643246019 515159650 826314632 906731456 989629817 265507639 425056950 321528151 517349183 780526618 890966205 101555658 551801742 962938203 994121427 108411725 645452007 561879656 688530324 51914769 507285009 767367132 815866500 659924592 952786864 487605371 592512746 700700205 907834168 804265451 928136641 911638564 919709456 91046630 826284128 219268620 434505061 619726854 905246205 923671449 990679291 791941134 950925872 701617655 904930543 883789968 969268592 330457900 626322681 691511868 990622402 906476788 912496859 334943811 614675253 953108521 984410711 433849121 533139577 497125390 702413440 273242901 467323506 472470875 865894428 224998222 773633932 804991294 849142857 36286221 821284776 722309335 909924603 978601139 986737209 727285315 838997415 271956707 932765078 158957685 273409605 951933516 998099077 835002975 915106256 944832195 972385745 626806682 944300834 326269777 951636011 559849521 678972297 921222927 963200608 108898363 882152120 811286577 873852635 373881066 831647088 648939236 674340320 512193672 754354039 516919131 774563709 976513844 998179689 440555074 610972012 396503110 646122550 491055229 850280207 378045995 686488245 623564492 839441022 142714308 880363340 31995427 457762252 20755026 240213810 817582855 856746031 422865993 987250522 558525665 788333500 362786383 706774763 899221250 981280761 593526098 827264154 394216915 826812087 378942631 655306334 124644084 199961661 739845958 754068320 990458004 992238078 796454745 915064578 330949299 610778202 391483054 734682974 724953415 784925401 4213065 716771427 93812001 870400057 41112934 409768020 433470728 672053376 985055120 994058841 275402594 958813238 943842181 997567761 691921866 858563864 499732547 652090376 75215674 408839862 970250200 980076535 138273560 676918128 656663377 988064966 564506897 785679440 184243298 534405582 32190542 440044061 98737561 122785716 56813838 408739053 239288032 332883641 512579867 907913970 47405357 214842466 587298292 979242491 902360197 989302517 627974822 946906863 729452372 974304278 98337499 370003151 460070336 844301222 391867282 939713484 86118927 479010073 25663377 654945606 666522052 881156461 298406030 627263240 87183684 786411124 24399725 275241601 891570528 913556170 727530528 867105159 254262708 835673058 3713049 646472995 942795593 963691657 275671351 502792750 531899081 959004214 669716964 778973315 422090556 883643972 304422577 492257690 740936991 889768341 361109960 862313114 403422365 635536710 527533297 971498815 138147733 422582694 678760506 839201064 617905693 897820397 669074544 996987739 340350962 871931524 362964645 894331383 929207593 930766257 707426451 824885482 786870106 845326744 206183472 608424378 424007261 780764551 979150570 992617198 429400422 855672419 736822166 854886273 884580635 985587913 61449771 257892502 770596501 922732221 215853024 813927284 275758717 432152821 306067921 346593342 967767387 982210196 16613323 870214933 655079278 661140915 252267761 449820104 936003559 987140887 783125574 949582871 888993294 917142652 73315717 366904491 936055536 975598184 21419286 526894165 354067667 438686951 887829961 940940487 158052237 554948836 225360526 768412577 662344111 997664228 245145093 589523021 38914403 542482236 614073146 848041098 184451357 645205535 556144754 574015692 750308510 826238468 87249729 781555042 352888136 639660451 569568870 586791232 261809343 751738198 163769468 627343948 743664726 869445788 954817363 995526935 467067495 596977133 8009714 784770649 759818071 935994912 861052466 929905348 343149528 519830649 401080598 681162335 692464534 940984996 228926618 864241674 66441676 534775362 158830582 834425578 150828601 188270805 420877619 503395785 915428417 966192793 505315507 684598587 802020117 994260582 905064433 984752156 938622808 943694835 316544165 637668869 922238403 929165281 487422072 692551720 897863569 911484959 890322240 896771925 539793653 642747530 269138602 575138494 43620474 732071436 979008560 989061954 40372307 974315278 809803806 993898059 529380157 673846512 437202999 648404490 801732131 886900104 696550396 792185506 401095817 404914482 129894896 221982191 514376614 926970106 799577872 879767210 650959720 906483959 45567196 516602085 826971478 903719700 25050992 661043707 471449067 521804167 902014173 978914167 459725898 925909573 24425778 723885861 464382661 913191725 522967057 627380630 800068439 986451972 828877265 890884887 205070038 482106939 357383320 632063534 187911506 320054467 728483660 878892559 310981782 328122453 934657448 964722392 170210723 204628642 31041850 598374625 700556679 989117423 613832398 845520799 937238179 972339405 169819245 666511948 150124399 743649406 319500791 830940963 838800213 955267306 787006943 866123044 687265042 776456380 736960956 823000651 796249798 802639990 387791699 857156208 31480825 83822226 838044712 963420703 851540250 898956955 856263392 900573926 750441380 816990477 841182527 937057926 307484836 950591521 664683516 905180126 784590635 904096154 426445597 808640096 904542668 951714840 94479054 636688406 962905872 970193929 883361686 979876299 322703028 903102258 797585289 798804278 88005855 138394113 719864900 752453930 860578428 879912361 526555330 621425688 574496209 859481682 403748546 967119392 191003269 447729262 116144519 742300958 739255504 744109175 494780709 803571103 927163833 963418555 491114973 971386072 761104331 974954082 3000764 764555875 650227864 976953551 245946814 332442098 761412004 775103512 633867454 664632503 454360102 935541685 628929151 912596046 770648707 960066602 189441973 190819501 570787091 792310133 785254120 974311056 413828617 988253294 992369225 997343838 837049750 837155809 563391907 819041343 108697461 560762023 827543922 849152206 550390942 597022220 925647564 976677620 373073596 590376038 310315165 721696528 578755204 948551646 725391242 917484625 816897106 897154234 507863111 598705252 521908094 624530554 830486465 976618833 897952417 976145678 294643558 653360552 284068277 465354552 529009931 953956114 913733473 964974264 674029316 899808938 29106671 225962287 663599172 954199898 674938393 736524269 190885211 937549985 231334619 867144996 915895736 945055653 154314499 161362916 551750475 592926049 445471243 833407632 228483802 785967725 993955967 998114994 674731733 834804618 453003901 940317816 9523763 271245970 430015511 729281541 790478836 871627010 623883284 902531299 259631400 532429564 684730782 866088109 175927925 828790922 731690150 931216846 164059509 835254554 835629553 950151382 89293026 850674046 57481573 982159403 361096767 964981798 586944993 768536287 235073252 432569142 201135904 427189748 458612436 825145452 870804838 888749800 675509153 783548186 123924158 127961446 512753622 688416608 160284990 592355743 63457031 341258204 87613146 92235782 127571581 684699783 455329620 488403367 744542050 784923277 396941922 899460471 516389676 692689531 585794475 680233423 755589588 893324453 294105137 922578133 528724589 879612790 627098555 707306144 163094446 505309951 506328105 775429102 241282035 886474565 809392568 837581956 730264522 855689743 658117427 800455847 389910686 545570329 824338515 929936473 531201302 990627688 160203706 276936630 831986634 899707655 494264193 555128029 386863013 554861614 261549427 974384897 391577757 433751851 757024191 942334587 163770851 963830832 586440939 793154583 556569096 872390428 892291912 961734671 93828292 178711602 497195661 857260175 300733262 946309360 387270773 771866021 691228898 780434210 988536138 996472652 796975627 985058300 71862862 504080149 330670453 387059039 30038037 916520004 141963689 234306703 963790412 974471328 494901522 897097910 981628037 993710930 82514722 764663357 843983646 850207656 250888212 534603366 160610819 443041706 528183093 544112518 596811543 767897353 847839745 983779483 647884089 828084132 39452614 939348423 150216049 749122935 822047678 925739771 43220895 661639555 290121564 840390503 479120156 686583210 565002209 680952656 199120008 260399436 536016968 634324535 823751204 959885975 418307490 601290772 183065380 957028200 847102006 914704456 641555694 823392713 353433568 670236426 105915056 899952493 582340604 861501447 286936638 917423511 216317614 414503065 906519323 939359349 482170764 950799330 241595747 729983722 325694604 559855683 451790115 916378360 325984968 958918745 806840864 838600882 908103730 913610916 277211695 782798848 903880814 930488685 897573229 938267274 442593458 868074597 844724157 938018358 647548493 857608109 24016297 687100323 921062351 956103695 115350424 548080302 653520820 843578434 959619199 969748851 881304017 884718252 675140533 838089852 833268947 846785623 775889895 781363796 399665781 568581697 887511401 914142631 14553307 300433830 318248458 403031577 665940470 903934834 130529682 413512083 691226149 942030886 828097744 966878575 878024239 923490591 192023210 420165447 543458163 578301151 971941019 991408056 833563661 964596933 368308232 764011983 811541893 986118820 274284206 528137932 680679730 890273577 2728634 971205475 386582036 894467714 32380362 786822729 269838233 282251867 241334251 659197681 642898681 934472001 494402417 961621908 700985139 718992345 729242152 860966483 552959941 868278140 95085303 126368047 205523234 255433647 775958293 958254531 774687853 991322663 562607667 769943065 640708592 752639839 527298641 770598051 59524208 288541005 227158167 761606544 805976592 934685241 748763212 995813795 429790067 942949068 772298020 942511621 23595579 590012537 473059971 912565900 126502253 149688154 466148053 691108628 658348466 937792652 515663995 654149313 583496213 972111066 182639423 355148528 499168325 848258213 473414619 788027084 105630098 283530384 353350879 748878048 183747853 394736942 387254844 622973459 645385723 713211893 978303260 979826063 428757554 854820942 795571299 960505497 622102367 846491371 586636192 690767031 843273633 846798835 885925556 965801571 163291301 848535391 906166938 974827677 868522674 993219572 219746182 910439567 664166684 797595615 606444430 831698134 398079260 914863560 14597753 82357792 938396201 956632616 838160240 849428190 922197330 997139340 445078592 586773678 700387431 933736033 456255352 613344708 566478983 718313886 538068596 861411372 29005843 54962275 619781908 705229161 93532647 285195042 951714733 982982773 765246525 835403639 441169303 647604929 943694203 949052952 196628755 354102927 927259523 972451845 638754051 942925490 506197833 580608185 193472479 744387948 338459566 997702664 751517902 982916162 402884953 843007846 848890479 887859613 900315150 986135903 847275138 956884740 212766792 790178281 714449766 724368858 704021125 722300170 667573090 782224399 246468575 277230909 660516506 785379858 377034693 501731775 996984179 997010124 37598617 966808539 231939242 337830914 913534354 914658253 316767441 507607256 697342180 868992096 370039326 522138695 563954337 598274607 149684367 993287787 630211233 683741781 143169673 764008654 242238986 816224576 398851050 954780022 371287833 519992424 82802458 574486645 432443954 740344969 296209840 656101415 321899337 920235174 239858796 911199260 857405225 950036559 380924926 384444516 354441423 910288400 596277637 815403089 38507522 658594585 381439448 894300515 591515314 898793779 435620482 513292453 395402725 978460750 671579659 815322943 136078201 535191848 526079198 705102644 139766436 241331538 777605424 795124039 117733612 521994625 680443840 913777497 689138912 955059352 513475775 833850475 757271230 999019809 408824232 791702585 823837391 870937045 799666083 936473756 423203594 987206138 929789570 958100588 526158970 756915049 374423246 671616462 125221 204852751 986294430 989511302 89841959 828350912 46163001 143016423 214690089 536274173 629016626 662755914 446516776 723093761 551820900 575175456 113601887 603081614 561065802 673590234 52657942 430970709 359849373 624851376 820268777 992986079 15057087 384764105 808235483 977896322 263005431 372363377 317066795 332762454 511370528 747496746 588154014 786737389 910527774 915425945 11265564 546433186 984711577 992351187 486916885 817909075 856782792 997235216 496129604 540919124 551108318 999335297 458357936 605774668 513677436 718713536 700668232 764206373 58708969 68406765 167787952 377402789 781802071 863763363 959382344 974338999 37058974 217749516 243048955 289826914 949910966 990867544 882416579 952477353 677438727 946988074 115103824 133161970 767684570 990404242 846079913 891527252 819799927 841054962 835961612 911266437 312563301 980719823 29589971 257133741 207690001 278848882 210529047 656814449 127252847 200228222 250503310 728891129 709013094 781387899 629822322 944126861 708184220 957370027 96712714 174562691 75196160 103023111 779557241 982862582 176266683 271403573 249568821 852413966 173400586 556477985 598809224 991221309 205706573 333825545 682725138 834575294 954062369 956394147 234296515 886505693 285742813 627688117 611397431 920035926 343724127 400194356 281329597 794207588 516179132 719453357 592624418 718399007 831377757 889054016 452942434 646260629 306211507 961411094 145232335 546523843 263977572 436477350 559929566 781082726 332508632 332784268 294435785 331379634 417329681 967462274 997799237 999897925 433164702 969853306 127574451 445110516 825702483 889411416 671440427 916736649 666525376 777333044 456358074 829934848 296055447 990042406 294504233 860167052 508644836 976395202 633542629 760258768 589285490 741293212 920742178 955218806 177961742 621986470 867687662 951936176 777685250 809442380 557931240 873347564 76396378 960591367 727906672 859233142 851059515 914972893 26453800 794507079 508788399 897383109 57502225 974252258 523771075 716680439 651881714 959859098 729618190 861503540 667443116 782977587 155606772 909290616 444960863 775249158 78855722 815303669 573388348 604026101 819860240 863515768 777817747 964938302 511798131 784101166 691145536 964934396 626462770 647696278 714672185 782225845 235655523 577448192 105291950 835316426 427142363 970816079 126263107 232072778 96164964 398044189 175131005 861846568 909718758 950693797 380061417 709321583 100334587 470809400 613295620 955544457 883263590 988170042 767671134 822667274 314731278 411277690 352571189 664755774 229403990 603055566 488771343 552479587 404215962 799474320 558301418 945888277 65251610 660067497 415349570 450229512 948145727 955725290 989034816 999005287 362969491 458072402 763707541 805317273 319898954 889014618 691161923 967677122 686835939 766064703 334040361 796746911 135426531 905076729 689546273 762101882 149159232 745342365 773963784 866282485 718346462 785673159 149428119 852999335 987388626 999079916 16883807 864292371 562463832 936977309 15237961 97469417 202046178 432673979 923786691 990482073 488653845 778577140 217591635 282451479 954692674 966472769 292150142 944294443 14383899 561959304 98354826 393084907 627554587 901296107 154321063 855928593 374195900 591128355 963967121 974177803 576982726 740210655 317754622 441343926 594565514 714249089 350832468 931526675 257585407 765893043 939025517 959085340 42242308 324069034 990250246 995646096 865061685 885055684 147330852 208366179 960941435 985629614 31417427 105641529 708036430 891540454 246851017 779051857 945085211 978400387 457414229 710491827 262333679 599113752 651873928 961598473 25502128 133903178 788299241 793954941 491596247 544817569 38544394 916956546 388222079 551213407 415667125 451453057 342767209 939578502 800214137 803769306 609899691 906710492 318180339 709774090 327492428 353662302 5057232 42371091 188340115 915494427 252828211 324411175 950093637 969078173 979725650 990167399 806375547 814168616 278395405 392151409 964141872 979767927 849538727 973475356 207756771 510944011 664473626 741884858 877969763 967427863 915449546 940035931 958583579 998750498 478169874 613276474 669184947 801022397 943816790 944109194 336069179 942849365 806385269 811883050 478112218 870706170 297784549 507997936 445220151 765693675 619946477 734551148 233317897 739839830 125810962 582556803 358229510 998804383 443914550 903661408 806852496 836346119 915944609 964958108 818189314 834716787 331271931 897957406 872912746 980045716 849238253 979091565 275015386 732095679 215861641 630735991 620430673 641519329 469846411 935880385 395373190 967675955 494209379 515329109 56321356 688287748 280834816 340861372 869141770 990403440 136112366 300917169 770110316 930106850 834063828 999294751 200897438 783160140 954578690 961851213 949496978 979192280 754789376 934631771 85264709 165020891 527018520 796237119 342295471 857306442 63354735 861948861 274310139 415865942 67434191 634042045 8717928 591448196 470856078 821649916 385733662 866076573 112184111 137231406 190389301 227260453 846745212 951360408 357737692 942042533 181001748 447411600 3567050 133228531 910000517 989678193 431328312 474132471 799790115 923274983 985709560 993585395 855665628 987603379 177996227 388427279 474066268 946756445 319237723 626375293 47645795 91655190 287773721 809436990 892733960 992597204 795847588 888775010 663665030 719360311 460771532 947237736 302891072 869594946 322672995 421461967 195908474 849826196 146555893 840449024 110759104 201805565 137533232 527108295 355549618 559234437 561395278 633013006 416457898 530701885 375067365 611042367 618475552 787672014 954348144 979495340 454547573 921079901 346323460 573021991 633828727 753080886 179837500 829399148 345370547 688865287 366908359 790328596 642945791 762634280 878102534 993264705 882441473 886637877 959821517 982593605 966705738 976246060 634953563 739071706 665679979 927404209 437082404 948239144 498218510 526849964 781128539 929052795 276346789 969207261 665841080 719425884 31038044 826932686 628532277 676088009 402302929 477216518 953005690 961171804 669409134 777440962 237820074 244881023 337791591 596715383 213916964 546662405 857922089 987275664 579537741 858174526 131404979 331163708 197944077 401176527 439293695 947297645 360035974 361234313 348945174 583338009 192661163 717123290 729507038 813304181 597599273 694572349 750307493 796760312 829121289 837137366 395428018 569875767 401186770 584972720 561373312 663728610 493551684 724091580 694255295 767723175 11300882 30633293 667661879 718574942 674022750 916543513 499591673 787298948 624392614 969855235 585225699 645437631 128756589 514052272 881367259 978632913 426065932 514027326 485270416 673497354 618765912 665939105 48443551 102955490 91498420 933420538 64929326 772395635 19839322 183146451 14584378 589078095 217638771 431415044 727464665 908971945 313546827 722252831 536854046 701070420 32955961 660560771 699932216 844444369 243184837 838280533 39483062 951985384 410768549 561972391 44343675 390155313 362006357 580235801 952869665 979680307 997974433 998913474 95915938 618180134 375850189 869028372 224076851 932471657 530742888 732838236 571574792 883928246 190523196 287488376 931002573 980133375 825993008 900622403 754930663 917506456 670116162 966360366 960959059 982472356 726241065 976250990 257036689 945674649 969690226 989608441 541418391 712815699 931387891 987877128 905247269 907012252 824511215 824783805 429503123 542872606 562123075 565417913 326908572 635871795 176983166 362382282 303260773 894982474 445916592 987458744 201090105 703275623 108471974 563226395 810179593 836710663 368507370 626859089 797088696 893903675 319579827 728454161 325214679 375551826 389985238 495379523 620927357 766624470 21718992 827446341 931926479 959687109 447090912 881718232 122705367 167199591 786009585 885704656 726462175 970213710 604699924 993985634 520508794 524119739 316183046 838623748 67966537 798298705 775678564 918592321 974221514 982168434 950645294 961532728 118868232 136022216 118456799 512182750 609749512 965375659 658821940 963411436 848226320 900316749 558535805 763882869 308102862 812598971 678146674 935468568 682719120 889042365 483633278 811402768 592124166 953612157 484189668 799265020 607526113 704051576 591968916 974376387 234705428 308081523 941628101 999887414 74976205 891433870 468550976 760446019 850338250 915629060 778299059 866319758 373855458 531573218 577285238 626832294 668810113 711773594 44448960 633996645 879736651 969591223 294298619 529538301 6402117 842689432 2010759 967612604 942909573 976196347 10773326 35399467 884154806 908814897 806915963 887345512 740812430 924580752 562814518 940000020 738035473 812647211 107993373 225845615 813890528 964937134 49490306 897061838 766731827 782626331 202211410 914727827 377397744 845365405 238794889 269144638 130839110 821656692 964830523 977815363 648391112 711096921 843008698 925479893 983640426 987939673 456630779 726030113 177450261 204904751 197211130 781792300 523752301 915651454 315611727 801455839 55781381 274392085 520086902 835047746 637675505 786382089 16948941 655816407 871642554 992684875 669361398 983406809 120785934 214405170 881103268 950411365 611715186 758605186 508846164 793406953 812379106 901684999 842046947 948184743 560382763 818688290 750105247 833026324 69718310 336052008 904508431 929155602 117054706 962867797 948152642 995394104 138435076 750186429 927736269 932319429 527741848 795232906 609486332 632574533 384289632 950046386 91678512 168176258 883607006 923079028 520944728 948169288 984175279 998878730 145056450 184797015 901039892 951386069 613316401 702372492 842133591 860219792 785122444 793294959 442901293 724883082 545368786 547574509 862732193 919511313 628274949 973433351 320801291 961214688 659848365 892477028 130812622 407156245 912813134 922205320 333415689 911889226 782482713 810111999 736481912 861642419 102005068 861154899 442029495 886863301 451792878 968345096 404453040 429969466 426615838 818461417 636847688 903692056 917492366 961484978 754848220 940197736 795601123 859731276 529321651 580797976 529182542 782313527 62467962 211213746 79246351 299601397 556399460 735157585 897269773 933799122 269637119 341915117 366831146 582638796 948992293 999347272 301375078 794974713 607869408 965895182 149998438 194921393 417067780 983140648 723682261 785353157 423478870 811700937 851109015 853254814 92130671 916170249 267326633 748830317 390137737 781447615 288213461 992067013 643508554 863590061 860786417 872655536 914120583 999865636 391163268 618378688 54347850 942324625 431923245 679577371 782893386 952295825 910906319 960789855 224718734 718304336 692203063 904947319 926878226 996484895 798134608 992432799 330633707 591508721 8490635 546075461 126765076 945544138 778018636 855388355 249052720 801743005 324566907 947896583 389467263 822099194 354268082 965617192 493099543 992063161 733843800 964599810 642369519 907878014 94137746 247955105 513844439 685135392 175276461 239040206 938570345 992337069 71148093 952708242 49122369 904764829 677772207 949206737 840841963 871458681 874082212 969695155 606636803 953021325 577391175 903477560 593997456 698712881 91568610 902982419 680371474 939148629 91921851 424090492 912962380 999511887 575944798 692161603 230286214 767310434 370031651 882304863 18032212 905810478 77737195 641167579 608585103 855001728 931758640 957054900 468125868 932071047 482723829 820903583 52235954 397769061 778204431 882188976 25472104 641200064 712252283 931310684 385317043 621188323 430520037 920999888 616150893 688380442 339140802 628695251 131428382 274501180 759331444 984130254 479069226 915140129 587965516 942654005 686032811 780569588 403480145 487380260 26337365 130712148 509560018 832600437 962628108 967615775 806042272 854072402 338859267 377898834 793686484 880714424 750287587 880968663 384860054 481772214 601675371 698993208 365622968 434968275 417791521 843839054 786184357 823142471 679438879 726286803 639826878 872757343 77192979 376894163 241434642 578507081 854274163 856627238 348972042 419169499 662312055 691640461 705569917 730137228 337228137 579849379 973037701 974519177 514167050 858003374 472817551 850747702 711516642 833701714 724256414 829254051 906191272 948776482 804985238 943031729 504836318 940625077 226923250 465935754 652156602 679248911 265223084 319242492 473672765 506327377 843416450 906501749 95811081 572539894 283567561 623637797 570329270 799216382 107333700 329853623 42233629 750402911 500546072 513308062 417238818 668155195 125199247 866660136 174598375 576830757 61441808 693526749 166201139 833054442 474700380 844316830 119454884 341889186 844022176 865509005 809064129 914554787 410804000 508564826 440387050 988157959 501280846 579040260 23169809 798895737 822263158 998540195 66840197 696276326 863194389 972550144 827597845 885047749 205807331 756198601 632260316 896656858 701313360 882506605 54814107 844318437 17897320 188150079 384424631 863634811 956945090 957283363 255197813 829139708 877984946 889433517 936431501 986068638 821745625 979773461 301229332 970405839 929831539 937882310 899899880 989578681 266355577 655649873 72244311 748291613 974207351 995977340 146756778 674339032 847282843 854917771 93214427 822543933 32809746 411251584 370718580 690234107 71917811 671658799 93576792 806495792 561778957 853770700 730753936 776062149 864391649 894126174 985809600 998594405 525066094 631529585 880283109 951908307 514418441 660896217 826860238 915708177 380694139 852197433 85586580 926880789 42807358 456780485 532228829 610482077 740747687 978220466 486045424 954470057 916459821 997897523 395095324 624838677 938536002 987865338 973513804 989826183 699608882 900607499 824577546 960235115 616624946 968136258 576171548 979392916 426590490 700396186 812856757 816284986 455370367 928446929 952641143 997927143 55616580 125446501 311768559 481779980 749314210 833861330 503663627 660697122 167194078 362185301 388881845 524228316 981772970 990468328 794839369 923481874 818747713 855137605 26172505 834052892 180453140 951201485 873372721 898498587 489001567 893133311 894656491 933111972 299748752 791071428 622171431 625986956 532173273 915115780 154452735 935466211 710857580 794696271 409764096 972899830 300712657 922274613 701993619 970895803 656581651 968888118 780200011 940767008 257410283 643397101 334267537 838930667 263444682 987169882 657037791 762138840 45575955 622740825 457140060 661277173 589842124 984680829 968884011 999281177 950183433 971607856 778639711 919550771 146837669 959661621 473728171 612097437 38243071 911182084 854235853 949052092 232349269 600682916 481077790 550186700 523806011 721214220 545012086 922211015 529060959 987682627 470097449 529837086 464861816 727427295 132451915 529608911 990653607 991887668 636608681 830224255 850308138 854262581 822202735 979711436 87510302 273065606 962822845 993595003 665261558 956312566 504122401 838172032 795600544 999922001 848955025 903189322 213925585 689214595 691994045 898145773 358831835 542702889 223782450 668495236 493343065 690991763 555026090 679801993 501216394 852927197 661778594 729938959 935928263 953624725 25100276 399037918 94744117 607575290 64423534 364477020 362640407 721106235 462760970 965043615 126698858 997874855 257224316 908393590 768070666 807975212 359602246 534879015 358142606 442825446 629432495 738105898 134907525 475409493 454481891 982283615 95128159 134797835 717904228 982694132 923847758 938852024 442686615 987648092 605140393 812308711 999595742 999921662 57794010 66345376 185354872 752537503 377011156 680827270 874715088 965612223 387327342 719791949 387268237 929244586 779307417 801163841 976976520 980885597 39745305 922114364 977636894 981459966 89225275 267660597 112582085 672692057 675730165 967178074 918207572 923787506 617227355 881413632 119951303 683500036 924158980 946860529 11263412 335713965 916862569 966953943 35890713 66881448 156080065 250983314 814784435 992444348 972824670 993929439 502039912 924950807 796431573 899210479 341209349 890468850 176775618 429484917 548826319 706483771 259990334 672830106 128111382 592144491 615624719 692241942 491418116 716484135 197396840 939538899 119596601 359733460 9283240 853795378 453812557 462396132 262624308 595013979 768819374 814366633 6876738 82234571 642554826 642748683 687205203 965220740 391685035 671478335 17597303 45707507 447288205 552039901 371701868 952004877 473791249 965380078 446330262 488559524 751522404 769096615 2015879 417822540 375792573 714165591 764440344 963624312 814661259 830931264 104614092 782341009 817737974 979502948 754017359 936520462 101067967 233816639 861348351 912639321 876242197 963953324 888732626 967570707 845097400 970419077 602904055 832999348 323896754 854319197 214443225 304687067 144616857 502107789 880926708 992069818 695547132 819782785 864067322 914388192 673768407 814452995 800334481 943812423 290489372 777480559 149878844 736281778 830700701 977909389 810179849 926304847 992094446 993490993 23574482 452393555 655647067 822114460 132232937 186301559 624476411 755256463 917902253 928597264 498525664 774874651 994610196 994622774 798058576 820171543 932451697 995388951 478690697 860377787 481574673 643826803 187292797 959542083 461422162 752298420 769867840 944847667 624888402 794466281 578949484 635213448 989933749 992432240 704657856 842397701 433806643 812794975 429085810 968221094 30486058 45791126 84280051 706240549 378297343 671289809 526382255 988691341 115015422 630505644 890125037 932386857 680172473 887007872 487078673 817229104 999662685 999783568 450885097 520543475 403891445 444379277 744115242 856210397 119327242 974532722 672939757 803815599 189958226 990483972 192344452 680352572 696724380 746064363 752749213 834621944 380914624 427247669 302765542 464146397 752972870 807555433 603660747 908410894 841224640 877013448 974573956 991079326 268898303 791944421 467918264 724952982 354386762 716906261 310643931 638394899 182829449 755254389 391989908 870944047 914204912 920166757 716979680 955609142 458530678 858981886 880832585 985093777 645671056 718884105 534310557 764101174 82723633 857555221 416075540 810149218 177061509 238752072 652457971 756527560 538578238 931159241 960976137 984869699 232807973 501506639 245798348 870068160 454408884 855507530 544638550 798450718 328198313 969694413 979935733 983987715 552253727 687293744 331262416 968171851 799160558 881565273 642996561 794976393 66708275 346101917 352986113 756508852 189270643 811780795 591136635 965026569 111970012 467281325 801148671 972882129 525366167 921567289 535867020 704036509 267275856 662753277 981175701 987092121 159822244 941930861 401343895 867478995 71813658 663800513 534507920 982777863 833988378 869500843 313517055 620817540 4563469 198419099 891614788 917457045 695760458 945387316 478464111 881969158 669227320 913608553 18320526 533425291 976801189 982770783 65066881 431342489 982651151 992031240 712768976 738124455 616262662 968343208 418299928 791648353 703849514 769018888 636048135 767761326 767061602 868712689 164491720 421627314 269748755 330841811 59367172 132626945 894105923 937983120 604356621 613506715 113853536 295385052 214127919 420247090 191704580 938505669 650265589 907439071 938148596 993933021 596791262 838149102 81321120 379272906 719019372 814122476 468699232 898172236 143329573 972373440 578205765 599672814 526778414 993279129 344430733 350392094 544717809 988558235 123520220 173106307 748047479 938069473 92709451 922049778 69786584 351310686 52090374 204347682 655260263 818939815 140820532 624832815 835220154 939581895 239031816 565010562 436709783 461904234 673722114 705234146 904003630 983559382 968001635 979492947 979436292 986507359 325344008 536000892 48960275 433248690 968176544 974655920 701480595 901592833 572524889 979371263 582503335 810909016 32115031 934412867 854238520 933280998 156784438 359882230 532176080 942536027 653297489 927073365 393019375 800377254 256507924 659668043 722135597 997796261 337024847 543276823 623571018 663313858 96260363 893121234 532231571 712711102 575816852 759520861 577875867 712705184 115472097 613010592 560108019 918841951 880560670 944467661 444503591 982135127 805297422 914085697 310451033 962120439 167513254 660818814 150837207 715627255 297380705 878016158 295367151 589517119 841287505 903338681 15999492 94309706 752048172 774455025 695441712 885996413 798548549 943192894 541166313 603632474 876021741 924150382 59640481 71705562 634717372 661461512 783067655 843554492 68992894 583159247 954053046 985171894 414157023 597592516 639339552 754539677 243859984 835062598 22719395 456915715 63716811 100930904 25305700 990759377 86680651 356583537 565482454 954570728 425302032 911175529 618864572 626999403 518208383 849644165 455228796 486527043 467687650 570591374 11852742 29071120 704562771 831938382 100765800 117663909 356635191 835066379 708616910 942700146 465236394 859044994 972396290 991156126 877767299 939397304 644125453 838762290 294968086 645166357 861700158 952089943 825806411 931083787 867270359 970823787 75652215 714512869 401345090 912813260 724058724 851077062 627446309 941257478 485176979 520219739 870630763 922724307 395830682 768343465 107538550 895208588 72040154 826595413 698027989 832043274 247231657 399433830 679868807 863782672 628699148 973960274 515256670 769529744 823646894 851764891 877405544 908541049 427787649 904375106 962531901 984935992 318034115 653574513 719454130 882923451 760389414 980722208 405066810 770651445 784752883 932228788 822389677 938834379 188955183 608870312 523523133 985192796 165515160 268643785 103749169 595293792 563526776 690165274 20142539 20446075 940815284 945247691 743524400 786293253 368737034 460443506 905124963 950300416 560379808 653979376 553077885 893708897 788803131 853084926 200578350 301767772 776459463 834001243 541264499 908011226 113666247 985071788 325571139 746394722 454889657 649535209 674618175 813588774 482698327 893478338 339213127 412349115 583880528 841853835 876846770 881682539 609255626 655671985 299242705 839354519 438673539 727370259 952984049 992557132 459928867 595196182 602871083 793202102 275520970 660820418 224465537 860144471 762508016 927085798 608974281 778963540 759509185 924739253 345465062 976863339 565777435 686256750 815660235 819671607 372505569 849680670 858194534 859325350 117573781 964990270 211930849 649943270 40122996 831242388 351813024 763850416 154190341 267934914 531483172 840692569 545476365 854407317 133668031 500915844 948609939 969740781 791599055 914044758 267177287 702484764 499493903 811917376 64818634 102293111 267875346 561787968 837201414 930845743 876017545 928356785 730911847 980797891 376045555 527721567 222941934 723557512 387315899 652673783 810101728 861335719 34412724 621224322 529900755 602399652 386533876 916283021 51814677 684448739 936385653 939674373 172450963 924251690 944729507 984898970 348758213 710640942 336553097 764697864 199878436 674966712 978361474 995584003 76288346 788642650 36949054 430436246 121285264 765703668 717970008 723512903 379319036 501421638 264187217 691768076 329808346 970293324 876638680 956942730 119308343 485108942 545476627 727144389 246904606 850552633 188678215 470185726 55894268 315796568 445016255 649668209 56326660 644231871 746472570 951296575 235926777 615338598 407681402 893376810 302920372 804803041 733654759 906411758 207506806 776195243 938702203 996126363 659248525 795298987 896840908 949186411 813900103 869933216 697754076 727913430 901435614 997834860 463936153 623326804 840636271 925363182 568245728 986107462 472003228 808699580 534140628 816732742 65361548 169433457 408181462 812742701 18515666 963853996 713629014 859431303 32539406 788435948 44987548 620887522 865312899 957063136 356270068 455077595 251895217 670646060 135757565 981378706 715246924 808284299 78324269 92345059 315827163 750990716 620503518 711293201 141923180 390013180 620483654 744200058 830897285 853243366 701168501 823429308 103557455 537322201 9763749 610101999 381866327 756464529 189112674 471907941 54147138 377340007 548618641 846836689 684958129 979930139 419456976 624358347 370263890 900208424 508837659 608603520 968762973 981083774 111214640 504374842 500167777 602557342 288990221 530973163 987806065 994528734 28416312 417609880 558739956 952928167 350256815 487106787 984811153 998861224 610314134 923866855 97643263 969573937 987686559 988632136 744625765 936123052 446946447 543556892 629775157 907307337 640783202 834517673 817326895 845945184 264031114 855277124 69170292 878815200 259945956 526674992 107478509 868164018 954992948 955914412 771288868 844191175 586060780 863623186 783985000 789838896 134425082 838367650 951767048 965477403 548677921 776496735 942636000 945090340 364323083 408008913 442403682 505314361 496309798 840903280 685378441 941693994 531761597 751637923 820191690 923767963 701232852 752753030 422162519 668496797 191730138 952348567 141113528 753557709 151712529 591723623 854421848 924603032 486082621 669496894 349705193 893379510 408247834 486665775 16418191 67991003 967057663 981597268 674310848 711820854 794914008 923619491 847126604 994205484 295337664 555398042 378850856 812976308 718167829 938974162 706641362 762827592 509252972 971207303 349714495 836858218 983614184 995685740 39768777 655722675 289821047 461983668 675070039 750787037 145416837 910991967 319960588 952157138 802524777 822451022 860186793 978061613 784556512 854502110 380548220 496284791 50422033 423399660 61768542 285308427 144164443 947262711 463309160 941678722 619974255 994537682 942295055 972140592 231762467 645867256 433416627 872025899 189185110 769948409 923592729 933490171 126049140 155241698 480603423 586051554 849663004 855713835 65881046 767787509 174480253 462725544 400994056 926105316 291709509 426115948 780951548 937670191 942691568 996162497 42565106 117938115 312069583 638490933 826914046 973866987 177677572 711523127 981304282 988136608 833091721 927773905 541631433 956955003 481032023 601115370 703661039 864983273 386432040 928780602 599189932 723844602 279862651 778520549 305328657 690656342 490315141 661104304 485841219 915090760 427045897 576534465 50752120 813017136 703311525 980042196 300199074 335279093 542758182 550942041 715003283 774460986 759898173 829059201 904964883 913840468 483228256 557334772 397919446 965934889 988457262 988898828 600778358 733025824 127758154 961888935 233951401 623978282 137112340 810578454 889819977 894702304 848865456 994772637 349783156 523693448 25894624 28281668 304941607 488168374 976865874 986076128 208152549 967119988 387249056 621930264 330251595 411879610 886918897 993534523 513050929 702728343 594593014 993581807 883171171 945915207 371925033 433043184 824032197 842811421 825435570 906902296 48737436 170304563 962313625 966326940 724693602 740729165 62006152 952853289 932359348 983640921 796833624 852409132 112398931 664874932 150142693 196956340 777940445 914446928 656713506 989976545 803027355 856317612 738444455 745842507 345222627 403560865 257385205 515072626 890635192 952300258 141243945 888109902 327345340 505339441 208787523 588896215 505395312 636793351 830767202 994351610 719355019 798146483 59197163 75543166 7285889 193987081 229882720 782696268 890810596 994139453 537656259 829832727 767779772 830299788 968210514 993657576 375445446 387581784 380627814 570731078 941067550 975166989 574909426 615103027 962473539 990153715 394362265 567063492 947105179 954482299 51410930 705955586 56561785 972515074 381439390 588522654 758560482 793792799 674722118 693282245 529926185 964031007 795095376 843123866 382358564 751704940 598597419 982001745 433138006 583419267 629965401 921963334 89288109 288832339 786392933 841413688 212898449 231425254 548001855 640103143 232519434 510364078 955673079 956531413 738430754 845522234 621696070 686716223 676368585 728251273 244971162 277215245 197739781 257605604 966169136 976903747 647218995 747971296 601304999 724416035 389655748 742463474 980336411 999800749 382330898 988484385 227741454 399817439 780222963 820177361 580544362 999974695 749866810 827447933 133525890 134969421 724340121 947590199 765538369 912123579 268086731 587029685 357781267 598964412 570804880 902957780 274023840 725924397 216607055 855805521 48675057 663933802 260848954 308944161 433052850 496853967 454101799 923661039 706649727 816452097 875647869 923108851 966332803 987215543 953222014 964683556 24340926 852493240 976041366 984476863 736086662 906139160 258134210 382202676 56759399 193606484 81638780 691443505 568545842 750940286 977125640 987649693 638489336 822499433 459560895 640258329 877157418 929314786 228360832 430385869 899292242 941162364 930994542 955016613 887535071 993661835 813397241 966258478 300362301 551430181 333908485 692394874 515386758 542220874 99345933 393900775 367854889 781867067 987243909 987546176 257144338 845448488 572453861 591395126 128069666 557892848 299393878 789039739 851005370 938170818 425077829 948545543 160666127 954890230 277488921 686704769 1328157 399487518 152682153 792484825 800525749 918150414 136558988 243561765 655784069 702587201 262101714 427230654 525200523 883532423 123367206 609378343 62851493 102868950 765093213 775473661 139017872 199596137 862508750 898715185 518333121 722470527 269275898 479354580 918761190 931882729 732942150 935247807 515082974 593042924 449088703 675246221 473633085 950389863 861391203 962217601 53676134 991580636 24476571 694803770 775704806 952012539 12066518 377977192 175796063 669903311 417948993 958736982 329279817 332587699 193664664 378163560 635875294 881366295 748802346 762773984 588641921 844101738 93589644 392659518 408829682 822868157 260455896 920312174 367364198 521570097 687913819 890886333 121735770 374107685 240983815 813245993 178111927 187498832 61346608 683898881 970451851 978996221 323366944 893686062 977753819 995853452 299320258 437587691 420400102 663670562 791553375 889912114 406281155 997862359 19449321 51329467 893494903 910943589 507458987 900729388 644029623 678079139 979102687 994042174 674995899 902829753 721260776 920220614 181033230 976027517 928324445 972380182 460252161 776743827 211557632 763512971 423571444 856587479 647490206 706696183 609593591 834574148 545916304 674970316 338682757 833360348 335142115 754647700 453230530 889254110 346573570 723415038 531699073 540882851 191725906 435673710 655929968 790638721 371930369 837378526 481402960 757309464 49458177 895337706 86402508 369189826 309576888 416672091 137930424 859968362 696097130 962145198 488654850 711520677 515043735 689595897 136315062 483866873 135618617 727667539 627241525 982119032 712574853 825856347 567486120 907943088 108484112 667891051 915101884 964055351 873363595 902181366 472638623 896570281 120198953 204798097 722028930 943525922 132414028 253833503 527449610 954076016 941738291 954093440 534199437 551387806 15925329 904740241 223397627 640425621 872798155 925128817 70787094 611764527 534243366 837048157 602493462 763648274 224712874 987713625 423925790 709174331 724295049 814016608 327574940 757809850 58784282 370503922 221603221 780785173 723448994 810917385 87909329 304884598 105464664 963513386 149774492 207660647 282314559 615464711 978298274 985893611 518913967 787921384 909539527 911172854 738633766 908825536 109576825 117390473 134176231 782625467 592487174 615460148 306791998 550779660 85785276 119159553 585257108 629429596 415478040 771797029 829435535 942168985 34164574 525549459 163583370 429009529 802108678 973295179 385206358 671232308 144128074 147880461 454224495 809993210 717812146 768651501 39791447 812001290 978163090 998495530 242461642 979048473 344422542 553022672 972612766 977191453 935711922 936172198 371501397 953757285 100507611 866319200 962205422 989450609 175698531 699348048 579877026 893209028 199849320 961850657 972206567 981163997 430723461 842715228 991469206 995836031 79250533 694804451 857385796 866861459 95223 890128794 426074172 988200193 934041273 992801086 967253024 986566614 493697974 765514508 505152430 690890635 790310924 928249583 985496231 996993067 107951336 334427372 208680159 565552563 162492599 818364054 40839623 344785808 114202700 565504746 950528052 989244937 33710675 568366532 730944038 939905599 282987348 924315857 742375598 783593625 370097647 389610760 550749605 925462099 694463295 701699408 568953750 625534549 771932573 972896640 873735945 984136012 647287170 655198218 322575829 679649014 664215310 981264703 187977111 942836056 538933117 836599702 91012968 466573141 660410514 876004949 437958631 709972554 128497999 887296391 626171092 671468249 288064684 826726625 444876286 735716703 572885358 587879091 443028781 883403870 640803117 747659491 78748250 897222027 111130221 375859085 930600858 991502875 142865902 937194475 182835844 364222215 258803121 345755055 393720466 405701030 251789703 392441730 947911237 948630245 105011440 680534136 337151890 803829219 538082564 998137028 602503322 872210076 32353470 266233015 631316841 879942135 412984559 956032289 724188990 894432009 668778551 933160805 141295849 655836991 674388238 791971579 849239395 854782489 690418260 750250519 279379511 685524022 901003231 926220539 957041221 985161758 552371192 705263995 768321000 918979550 207247241 916404232 822623542 913761744 984933384 989374143 240538921 672862767 203129523 936852960 453681737 846245082 186583587 705186553 845661351 847101290 433086713 566046077 656505314 930130440 499630424 539298607 842938343 997927286 827352018 834285385 484749730 561449089 403139573 737285269 853025766 945377945 350846531 489394853 735361811 911962144 107190690 443413747 736688678 918939567 86235525 849538318 628952090 925143421 785255585 963453981 928066194 984666242 380371642 977274312 119202218 434828424 119277251 562642891 451836577 467174355 660332465 703015666 24179971 412640007 246637925 381304948 882061725 993124353 409776631 922328924 474503625 993614017 696682758 713777442 504573439 620470338 933717556 991174686 959355078 973911031 29367250 396256586 550319644 748919938 691520032 791304055 6088091 167210095 226808184 897283561 878332826 958372608 815599220 936398909 99048461 213684481 160716026 251635857 824615011 926466111 134320725 349846006 919774348 951713430 159237059 691171015 949152021 975710615 851474628 926935662 878128076 911480029 383724309 732639785 940083732 999021158 404112117 469528532 850814127 866473280 506217321 946489213 618338795 972166513 36269001 455636665 288323308 471878563 839932509 863228935 410406296 549435325 561753799 563410924 554385900 677285329 940403902 969667641 330212026 403214499 564904689 802383481 408601238 602949537 380647003 573600505 547023026 937998557 333699287 569033133 710724887 990834837 500575539 868024726 201106994 958678331 233105780 486335845 964085420 994357257 44258724 821735308 440645914 966172020 496802833 981706982 449311244 529391660 28082491 869932770 638964917 981892834 354221541 640088819 380566869 886080579 682353330 890429070 272671156 407222745 901777026 906255899 588924269 830183679 754364216 922215043 145876435 935118552 574948755 886407064 722325135 838037091 584014130 944591131 74945193 945034017 202655806 209055505 165796784 692037603 450071893 548902453 18293905 237029800 610792344 688523615 915551094 966517282 583191203 757469414 861878166 895607431 979800229 982777846 455277555 710180648 480334083 742513023 649926497 721290567 398827303 627493609 736247201 811357198 381832463 980331370 118639983 278147027 675584534 807375894 209081231 967217489 78057750 439871493 455741104 853814892 174831379 734993879 846309698 964859602 624348087 821918082 915579063 944575190 726897723 768201280 24194629 332358713 670224401 834088630 461632977 782736776 885902285 986350929 37270215 202593457 467172156 482822243 601109712 777390642 399241969 909574018 461979528 494724850 955317382 997122498 674988199 765699424 409199748 958028554 26394168 881154782 312510134 373059829 228103366 396487615 423093366 523334612 57123984 552235767 742537594 818703288 930991444 996496891 992346185 995783913 492246864 589030860 807600953 824492655 744335267 774887554 401243088 786233990 159363572 659109015 650417220 730416177 681858191 737447313 38419215 89796855 892645139 926184853 739799235 803877995 4974745 33692869 861521350 929052643 779402804 820461902 632999517 727358482 63107941 942955735 287762958 627989188 187283587 625292119 437555082 989108098 936989331 940374527 822721819 891742873 836424117 895958934 494030403 925038745 705199248 766568464 499961350 701926047 560353073 795195082 364289935 677842226 638706932 893489084 442982013 484255485 422875486 655091552 314647544 467520858 785423351 995773623 961675224 982298537 359801815 787492280 178743361 426703721 472691035 933034748 15990130 750486960 611096885 848175592 641019290 721182655 858489888 934000744 784691467 974661017 655726016 856668210 215196580 999044207 263401448 845398479 472264638 474777682 279650782 458007084 230535245 452004441 967530924 997982665 752288929 996331150 508640031 911755220 220201842 698895285 43151 391586026 210305665 426545668 531289266 836297826 288123319 826048322 433373983 537130515 611054781 703242169 747336126 799649423 895776135 995704274 394783927 496926376 621636901 872564270 519672585 842013021 77455 753983519 63188242 773387047 811439052 870977706 184129998 433069645 333841552 560504512 283468414 943351188 402440046 853144175 575280282 827691327 555559035 767215690 556833638 818351146 353807676 701192639 931058709 949248747 177560510 901889622 982672386 986460965 408709431 997057471 49608964 750660583 257795578 867531828 925603671 929378606 640839547 642998713 367286000 843157454 943505493 979161947 545003381 816235703 745547176 922034897 778636632 975166924 270062381 374981919 543103489 771992298 461277709 989745399 938917260 997023678 877025254 980700274 358877171 871572940 100226043 732139380 754364213 794019459 38480839 385591210 824032601 871817791 869773081 958254682 450590788 913845056 639484439 983284600 893337017 997105184 493207253 648133162 807086060 957420995 175313780 756175016 555767591 902709108 131076201 888135033 240178937 556865344 796661755 868758788 75419245 753575704 441310618 461596139 320260748 755604833 412877682 673511874 54887111 473182310 431220158 440770011 541135971 649536618 730319492 760144989 846023363 873492334 760817359 786713782 321771002 457526292 654033285 665102775 394230547 508837329 482422562 936031087 48239293 775252123 507024461 718438051 402131113 516869042 465199918 700898157 862530759 893197611 314197182 979491746 439389035 870572086 201819708 524153908 154243521 915674735 467183599 569324166 170395016 609341207 992426312 999120408 37136091 353306526 672262187 927734080 959381941 973508435 394035236 943163840 385793604 823304945 212218039 609181460 882302555 923598489 265024411 743197874 587528632 658630935 638085826 773621767 210237295 702772032 501788776 600654811 928239085 942796447 831921012 986366669 953278601 961603714 948860304 956250209 450013939 636086427 513371507 795711636 979265615 986662676 660241295 735888113 580996536 769750741 46069227 188497868 585258297 707077699 916310192 972244807 896450682 899241176 982961516 995282491 679926014 761130213 408489368 749332185 967020486 989507171 46846295 162145237 33287877 181614710 674263710 830078617 661635997 891057932 927623832 983885207 728804472 766986580 649030989 877464334 816506482 953665997 619668700 638003009 421010186 603618105 730479508 844519020 311818699 977467858 161006233 317080810 997831893 999156249 658511183 968874884 834766668 960079631 348577042 392358798 331205590 646181656 573559121 808575365 133780857 805611707 625337223 729610714 104274095 236679895 315481236 887989584 42745142 971603814 392996201 560025934 393977072 568444248 827345139 930638073 95118222 917110503 872976356 951858549 777113651 844167011 112479644 178650352 114050097 867233264 970584586 995706250 181962604 652489943 968453759 991908377 77341246 460488909 417841314 619697254 518309574 645126940 894938326 929825910 673997045 778796503 71650213 823605846 363144563 939901669 965176875 970802078 915858583 928120027 335642706 701750019 408027386 429973649 625231436 904019089 280074027 996341006 266993207 504535316 105447066 529616978 363719107 936290983 871833693 931112882 904412188 949543349 653351169 660863590 63310007 311829280 402984347 550291346 716840223 741847277 992127797 997801678 288094885 982368920 985065922 998803486 924329834 967713076 301777736 434570300 788151223 939811176 478616502 977677756 343748941 693916072 312146240 496648203 298940612 543100726 35945473 703079600 350104612 978750406 61122776 837110701 663821593 696774939 96547314 851686593 937205321 969382643 331949700 964415362 233551421 378940468 849375972 882546718 915188513 949646897 104486570 625891982 482968719 534649888 664039040 697541046 214311880 567826509 417339061 903044346 807595365 953372888 702165213 779387502 710483932 808174089 830456853 922551208 209665169 739367345 478638464 631783493 807847043 956282595 291097165 475240255 470798983 587009126 946415444 970907928 490761718 719054427 952510243 997501781 195243315 198028135 826718033 873944122 61418637 631043445 159714978 594432748 883469988 949274464 813235184 863668086 302071544 963334302 475321039 875864534 712919175 765682545 763270314 856814509 973861047 977430068 906018917 911134252 344495566 509271051 410642959 917490992 586001703 994348461 745825199 967929977 296339974 802599516 397834961 476329328 775890838 953615991 925233611 937470313 1741879 866555626 867959485 889695533 20577150 955504530 968732256 969878233 311674637 529310058 977991910 998250035 407480599 892289861 307853338 828996888 930142491 977417274 385980220 765453895 679098041 715215593 617301391 625754818 452904152 586120194 902677828 989205973 152531380 243803558 440643517 625068344 291189739 814299674 458378304 861688637 747487510 994349451 545548711 957620794 939352548 967195302 1181378 26317254 108707423 698685221 867677707 905047681 342051491 474892461 606221978 622841102 301033414 582121976 538426318 811760109 899479322 957046421 818739494 868184447 451034576 544093577 724571629 848037597 190654305 502202430 828387772 978683328 14446429 565086287 976210539 979594917 36245679 69154425 291119540 957540202 26641689 814147082 220044493 910197126 661654007 882829937 872195517 898919230 361176011 659186430 372026486 454764326 575952729 598516478 70071336 635897858 953619429 962003635 233666751 463441909 909449255 986935159 468286735 818130600 383408110 487978261 661962310 819210538 680753592 809255650 244990357 535537554 59381254 478243659 869877423 937473835 38551218 786964506 22999087 502282664 94089697 143859363 4061052 379320981 69773204 666447770 176199196 878011670 900454731 919118598 943962784 957766440 597801413 732072639 918492137 978139133 546856472 813483708 909937130 989939311 309143705 970338005 998557601 998721433 708291548 984871484 161878941 653850508 713125096 934789010 567677396 904595259 686900967 983419896 594210357 610396906 443497108 735048916 317067667 823496488 361864888 579511293 19358821 416812450 699023820 878112698 716353096 956420167 553656555 812053721 202303114 485432742 258913217 831920258 974460947 992687217 107198557 259269345 956048394 968166261 213013257 734298850 541425399 633387927 900379627 945256569 329542315 545723348 286428215 799648360 818750939 991120569 410111091 763174212 247835924 988034554 50763879 532941186 369335551 556995272 782494949 863734012 617771645 689864147 541466346 609652400 752460671 836929334 709175442 845933874 870439594 872049163 902263686 920326738 752672626 894287456 744298133 944539459 740319590 851598843 368619749 711555382 799986260 913714504 642172531 977879482 506582286 880132219 337047077 919998923 969208720 984041081 357064275 800157374 826600431 927194827 642008634 694564227 674163171 788207423 557319469 677982386 370506097 637059056 73211095 736443510 640167856 654732712 490169615 851419537 671656053 844458758 680514559 840347585 355553746 793694461 640037995 852855455 275077865 291969939 542236550 760028225 747558852 887856092 408024249 566962585 65880539 730606220 571960199 772344628 643627983 700501806 241546453 924578467 985050730 991260513 392431424 433027674 577830007 626019034 811917531 904758472 75282027 180466435 57557786 792887646 14290884 613074147 703692270 973645900 130426365 993437770 174378574 350442692 7684780 894277130 986629659 991491137 66924105 283931109 444279305 646472502 49142403 870198933 672029598 882891918 403073436 639473270 181216458 479048226 658248956 729541053 592198153 993445113 649747921 901191971 201654982 572436788 340417336 716208844 113980679 997445345 398542160 960138494 940854392 995897825 298164035 895172698 826854329 925121134 178037715 232342026 48673673 906793428 580541204 931193279 465880533 903588241 785424363 922987214 157405811 281339767 960117403 975659367 871914819 986885555 812343669 983101303 709117363 974091528 325862606 700664816 913441293 926285534 429791817 478813180 639392762 741299183 983458252 995073769 655011706 894611503 378658849 837193807 789430929 966123072 277601434 683548409 798151538 859310671 146791043 763531892 193769059 727885705 402682972 783062742 598573069 742125238 574201031 841947026 86195482 622005158 750473389 823646478 918787746 949744137 44002395 286639249 842420431 964868956 148429383 794438650 135045347 274096576 814424332 966201315 452990054 945107954 100287167 640197327 3451014 669717119 570585810 745239896 780109823 946579304 252116717 652007643 193234328 889356237 875692291 930871562 869859282 976535924 211339108 663517636 326005334 550306164 453204297 558925964 302219542 803570183 320106864 870160367 656524935 764965748 888514010 949153481 253534387 798442428 623283028 856795597 801941553 994265100 317141431 910907936 95310058 184095866 377976897 597667690 990904715 993626177 42804117 312187005 535654239 540213586 246249080 796166464 436559803 600907383 56036187 775093529 606342282 713601437 364189266 912023732 12061728 184073261 452530849 637675953 644335809 721267557 297168325 496653430 270689267 931587182 992487947 998875638 77347395 465240975 408158762 784927460 626634418 719017838 527286028 824721568 864541375 934048549 936622590 992776620 789857831 799108075 761914401 806065675 231433829 681069443 887142070 927732803 695824264 775116138 216485795 245263605 368137108 612460398 213092196 417600586 326425053 885969133 59049613 131840258 431415390 467270050 500281097 528559751 147575492 474055012 669010749 703830239 848055562 890202476 821754013 925565631 349092931 630457783 18372876 408261914 666407743 876395941 179644651 683777195 635229039 829997996 230902856 893657869 778367102 917276013 162988805 986549907 374460436 986705276 918732670 932691532 125764354 846809327 634594213 805829700 762922609 934492906 807716747 841198420 599672468 949138018 342791453 431883152 429743057 707247253 622190008 784339971 104517901 726210826 837748481 863854962 657069911 798597601 333242214 463942501 824584365 865460648 192284861 530069665 826240757 886941555 218583669 786162131 990954769 996248845 314039177 576726989 708364385 773516399 67718629 924351721 699954187 818539283 975350068 977470351 401301507 928786727 478997001 665177848 850318134 896445590 457549196 717810816 636226500 766055508 681725144 798827767 323888046 988019728 124253832 207345648 741173369 947681500 301565228 513606770 633218495 668055315 948491360 958258535 568184705 582101242 544770001 826950219 724392788 890247892 124317723 691179427 61994680 798483641 565848660 788785005 691868387 910590278 597147458 620932519 874208192 875294601 745199677 858152725 661827793 883984457 448926008 538420688 995952632 997783579 441174981 651683562 108500949 281390883 544100194 905760014 675065199 690260060 57204573 920823898 197253258 262136348 684999717 761720533 657813300 947387980 821616871 922211723 290031508 567384959 869461663 946306664 537307849 589686416 61675391 543455656 660778484 731166340 912362615 992206819 532967758 873393179 48095008 965640282 863179596 902092873 197057046 927006142 346704560 918382599 853433272 929340732 908011872 949798051 182872356 506997818 564890816 819768646 820627739 918394725 948736931 986461617 439753541 536059622 53249971 240664900 831936220 917212873 150614738 861780034 524746117 551844117 454771663 989384480 642788228 724239116 457156955 639901441 855347967 856078091 131118593 252652314 474929149 519118130 626711385 896869809 367029967 776337316 672546780 685668115 614832361 694202947 577279446 814915313 446315684 971630357 961420791 988700621 725565589 916241276 164470362 822989060 872566399 973651520 156231629 470501317 299801055 576807763 190602440 517032381 674544511 899141919 643510282 999360148 257695856 323662492 152255357 272015676 9643339 277027482 362529769 617199380 25107956 51810482 519740702 785757868 921462814 946902075 800875101 937953971 178038443 735429822 724140326 864023338 61393527 399369151 871314737 929521124 44293612 755553126 914272873 922625703 631713304 681794988 747870625 790023523 143142284 927085242 453003722 799301698 242652367 742765153 99911704 653461601 454528778 836652482 29887846 722812638 771007296 964049308 852348764 956810419 762130112 769434207 112428215 515448069 568745052 863983096 254908324 332640081 515590616 515931390 234577847 295737041 32309240 267062221 686179298 714450272 591700483 841915215 709969157 909194989 484499505 639008723 640283257 855982993 962751283 976328293 71448318 879116065 193465721 260370251 559337565 732094791 202211182 461560891 799745660 875298010 443159832 972684758 928900923 967730746 891651813 938348976 624213844 963662421 386757352 390357736 365819285 893057437 407846447 443959308 311405781 948808810 400060749 501189800 576922591 659205367 490706187 526511593 939367631 974195028 49286492 978455201 485561224 599417403 246064588 972146128 475894532 658690701 510970611 648091614 606409911 738415580 142714121 798884352 75930692 581914163 912577122 922613148 980429489 996684794 564167908 623809252 497900429 631981422 853804834 872894343 259022884 684559692 58839280 179398337 665154413 928078137 368711555 651728394 365540685 429099586 455449177 461295647 973018011 995780982 934709596 954262136 281131608 407007825 69865895 509838584 275286190 674736294 770821896 944637086 491928589 608497403 126274633 494936345 630803078 840035599 434535345 936654763 673525579 847715180 312353731 789517721 600185789 954118884 675156437 745129270 363087671 701199637 239303051 966576405 949980161 987156003 447069931 672469815 722263428 775891720 454313394 993415194 460018304 800156073 665234437 947220569 974562898 995313238 494283001 995601602 162405466 447087502 962167351 996634386 359884583 390130731 529945534 983876129 681219123 801857572 856071500 941523039 785769505 995338129 735490217 836962597 488379654 729673348 207102573 554935626 955356711 958352630 513575938 770660230 568574634 671262907 88632363 775058185 353161436 776104121 698050132 842550169 285479281 455098237 141087745 956219772 921672153 981398354 110903081 734744796 15438877 17151786 890972313 988333680 484757357 635434217 542972271 621363791 850303603 971000712 457551916 502967493 621252621 959536254 27920940 29404240 752960975 968480007 848683963 879624609 697633977 806581295 321122674 465534707 208518043 263844268 64474485 379751161 558041516 674105018 279458971 439949568 69094249 784808783 170091556 471805303 947896066 950813099 308540275 807839149 232449701 481529026 998339854 999169081 661127965 914088770 998965992 999580684 162901234 454495657 406313659 410762508 955101161 990212218 633494448 684286024 122693561 431631910 937124588 976102926 121225456 951019944 80729392 821450626 121711041 382640655 891141740 913850971 600254710 821429031 176678209 630431639 846952372 894064436 89787591 396642860 212618420 997116399 877841881 988526103 630834393 967487045 694699640 878927745 716745044 956128898 679670897 716006429 478588754 949702904 945709940 950791803 245002803 271482028 735178582 831183547 331867224 990560763 60080781 724159896 169157501 508136647 561691642 640066790 778920598 886337941 919278837 940123888 769226867 952255778 90107514 535014954 507995960 648336395 806427345 880965481 939230693 963860143 881119403 998581179 939367884 958273983 467089769 909264241 379443509 897878177 988176121 992103347 542259240 898435544 35985874 504960473 340138870 646086560 292029060 559596704 404054926 706887753 245617537 661806586 203887079 733292053 587583589 851268899 352732619 643045317 519049389 688358952 400520198 939719954 184117308 302602993 395930098 713475787 374126989 610112230 252466233 501043101 956763054 991281607 410538127 730388385 879909274 925649256 161869129 293723719 152440418 241575141 223578016 891929636 811812885 963942581 838940640 906844136 570505042 954990276 554192291 619488024 875344872 993839577 338121501 735408658 902916976 935605554 384073319 835502584 957002003 958824310 465336562 889251560 981649802 999101472 312420375 454620214 2719283 139771554 338743759 826470936 934603453 985460883 546721260 827296157 422248184 688051696 687621384 903674042 975624185 984995716 562933052 826980587 284110115 389877942 725094929 995923966 713166209 874250237 502999613 825838638 759786781 924648087 787048165 887381926 237926386 461457241 501552735 826857742 984219709 986060230 540860744 719611823 367394269 646694761 65661072 702943877 454360781 674639773 34525153 505940996 243520492 743989890 205946016 953517327 944359856 982215703 695754854 885876009 813991635 857744492 113461310 320694807 129445989 232412961 289653431 888028938 338509664 607893657 490633658 783822316 313067627 864284935 987255676 999029820 449085618 929662935 832666222 968315339 859572477 951135225 170394867 986420427 929855179 992737561 216331827 981670057 597945815 832534550 426591864 984745460 985396694 991859658 307590394 368359717 567319192 789877441 35626232 176653277 385381822 579347542 883294384 965039349 922728621 954972273 735146004 967721426 671831601 824318189 746721725 883851585 838773324 985856416 100005211 174634481 807182442 939270773 646521244 666205070 735793373 907389808 567990815 852877717 585192555 689954795 424047471 647866843 480759436 879497641 680050961 838291431 412999202 768763996 270838590 642342788 480453768 562164500 309073545 906432234 529414089 643957786 479827351 735769990 165154729 560454488 203838355 276203082 211644939 534899889 692478430 746499828 933434112 944932944 169212134 315856820 9902299 497269229 36993350 576887360 672891825 758951192 480163156 749365728 5730527 193731545 3447287 276725806 492155681 691349792 485042601 568321682 752436808 981882536 198579017 944928677 47698869 77385373 754517386 849950202 853157282 874168811 17556479 631506980 637023138 878465899 753636248 957261359 171020515 848330517 43012444 63780303 764891362 966049177 59516025 657730446 603281908 658291056 609994290 808828515 368107662 381045883 637024927 743771993 749898754 960224413 940706810 965212841 641796153 665739076 774268925 784055217 474679368 909855603 561036107 831813523 308779197 418361294 250151825 569056016 296775010 494948981 740512531 883431972 715668719 848862705 34923297 140767607 211175538 398961128 985703856 987338165 463322567 504531494 254151190 702021828 398429852 802163307 327743716 717323601 993575508 996167740 979863015 982819533 40443169 128624390 462892338 875739746 257402043 609281063 204350826 651120149 62770899 135501561 192719363 346451084 679381444 952067631 610095964 621195408 521858428 724518388 418887628 870477898 925238943 933644386 802105658 824453448 318192693 663669624 678115189 692851407 282581833 653121247 374329861 697464773 179567688 779115574 415852982 448407894 834189216 933783544 190645460 911496786 288985870 896342160 899235613 988257782 686960333 828099784 729474798 988821419 684931197 873629166 82698972 443830774 548620613 623348552 131511239 831631583 252899410 970543507 353717306 446264313 28570669 564100514 419822962 686741076 106916935 361524286 921637573 994440258 703385698 849489067 208362700 769231460 601965100 839519215 675820987 934115147 545151223 636563234 546197764 795755362 961822155 975255467 218429689 932856577 827096323 981088892 791874800 796209139 466401469 592503765 185577246 481319600 826574282 913135245 457606518 929654723 313514242 619322492 191612226 503625762 417015897 649161198 651957049 733061809 439195082 474333935 663093547 763450859 369619280 786365741 496988226 897660246 676997133 997993187 960972539 980151553 719801907 882816844 901085529 939985156 914281598 979965009 903509182 919092598 871033003 961380920 313708884 665258283 243877776 520517631 407653318 642950584 660437128 780787903 510231971 642651020 79124032 166918261 378632069 435246286 281506082 798994222 412396137 441114319 255109380 851720276 782399730 992013825 97283817 444086124 114546734 199778213 478689161 787331223 397208263 425799562 677027522 804178052 903410076 958336726 216550591 619997826 67467506 605457945 543182197 555129223 658268626 982793969 443505100 608689764 663074054 957163797 801650149 995292536 457060663 705335621 369492089 393743736 541018750 823117283 301040489 901303230 1932275 109752779 888274287 957097239 250010693 335622672 736019869 821686839 43379674 701566122 439284977 620530579 946712551 979887996 882532891 932489681 552125042 702983868 167122770 552666165 317156073 712138574 131106476 367926429 581852608 744345195 74232970 612907739 672249382 697367277 820644416 894416436 457145019 863110651 456131682 596779315 231103601 816109061 321655656 983636996 511778104 991379850 176344893 606238439 401766533 880365994 96109976 882096572 793478554 984800115 637572828 914806260 504542978 845860380 126716698 825373153 799932879 921769993 469051662 812927275 945730078 970561777 206969358 978407433 970930478 977163177 57700731 215485851 366531818 829729497 93499362 397066111 860840700 975325242 978900522 986450410 83895447 834448272 725747843 943181184 562184345 777716360 230483347 271777176 121678488 875275614 510086569 901364307 445097440 937391200 187072676 219412233 508341033 924412908 193854629 336942103 752364672 862830056 595563528 759487158 179543931 348823837 919368424 950235646 477150500 962628528 815988461 939121831 199884992 821156051 148778476 320341743 912730948 922278483 302676159 388158339 487319326 547550985 965220816 999432337 593135770 780704515 561289499 773220189 298844451 766705851 278004833 642396353 781349954 835441884 837002955 857891715 641129326 937863951 795296882 886007928 195184699 770751691 632655189 924718794 537938967 584090325 294569834 659116684 775309936 979384686 342814602 990721746 891519732 893897894 573809143 834251624 671772194 700087430 929995480 938728183 665626464 966644964 468719246 524923428 284766502 888168751 747695933 838512736 275692950 992709906 677053462 972531228 119617228 554670415 884721950 901183681 15079845 534023342 589158318 902448227 109919683 357650110 435534097 673111308 933581006 986655814 564617553 805655322 517242546 976687621 777323759 976536176 214107759 635921910 124402827 717943151 210103585 672229585 956074520 995869410 375755199 883508171 542194963 712047329 392813718 950652526 383411637 991657574 206430008 791384723 110658496 792747537 923044435 963570492 170067056 511679956 144849255 656759930 661788208 874670540 42666356 905003219 884269035 990476220 760356904 783599706 955868650 991094497 271581142 295396238 948557207 953229089 107592921 437345684 323112812 663722612 855179999 905672714 847943436 851481101 732739597 879654861 367460484 946901113 134198207 579034106 414827388 551377615 767252141 811918350 230663051 322442618 318817192 869760839 600512326 757948461 817575638 849394864 461293397 528021611 302851685 583740130 867665666 952523650 87780377 527703724 48587185 252087170 676492625 988398521 62819896 181711384 204455483 926633102 521673422 941530477 65538531 438450640 617333866 624451007 847654012 997435997 829010676 974942349 86254775 660431474 892667587 971296547 590232380 759688495 287161345 720706921 964942166 994979332 738309448 939617430 139626550 174876459 50984475 88503395 888340160 966416098 327671228 586312800 241086452 866849143 688432026 771757293 5089802 322221357 642428302 681743628 874616566 895291216 886631960 898899447 151940248 761544619 114838209 505828223 33683778 942092056 794847643 969345994 453256119 766977168 673884800 744561525 343676530 849188658 285534425 891601746 105474533 517306260 421142101 843563956 341455404 595489105 946887514 980625748 506467662 790365927 68288681 217209921 282542107 507429035 65837589 378108989 563530126 718345921 229248045 553322064 817579277 915964229 679538429 765810599 679254034 970214390 69590483 481986624 990871719 991396164 86308086 403491821 597843313 941564515 837591224 997031956 633733871 938815115 685240030 743482694 57199301 682229437 917528116 939956597 521912189 546098653 297879493 925228032 48311843 330439330 643335264 741893976 628251386 757034542 281381164 291234719 124872536 763197534 874643792 902815835 767975743 818934467 313419297 440735479 362357279 743212891 185170274 285860373 293548741 463169459 413740079 611423200 717196007 958035482 252268837 382867502 215536659 990422359 352208085 747531928 3650325 481923919 863678567 895903908 232038219 459432129 979765279 990858234 438738732 485636538 454623857 903275778 912209594 925197278 518282653 618327856 332886899 877954338 97279557 277347062 587194161 659358822 400815567 771443960 283440649 778970661 344467776 790308994 723400752 976882562 589764908 771605821 63419713 424039899 882477894 898364130 944932593 953780180 342396868 803259605 260964221 310872866 46937628 500419525 807893189 962031393 358052006 485512359 196008169 660985151 390112937 845085166 680194531 934042660 968768370 989218054 687145084 921097590 912862703 991789051 658212481 749235171 507292901 986125676 932091470 932404509 507193990 961612082 920335653 963045619 125417207 468782349 193347308 308264794 291753588 779386704 706171055 988240300 604105389 723715060 422039542 623199439 34376230 611517492 117480860 694984773 656602932 751535244 31570632 84229720 402671236 764856483 108913057 738868732 51415921 938266798 761881807 967801648 113959881 938565139 835356595 876170136 784435631 868465325 269925714 665663090 77732193 698983161 240252965 936202169 807815099 969709325 947812416 990085395 691618455 743069808 829921422 835153028 367560693 878968025 471127958 879342633 989589513 994320706 215252320 865757794 990798016 997759856 615261942 706005475 974432852 984278689 56274501 149939983 776260700 839765570 163822555 384277713 879769088 903366060 392363829 995238063 118307451 240167458 611191202 875351952 274990677 651904378 551588242 949682964 360786042 961211404 587333287 947921206 897297642 960176181 154902436 409454723 664028766 987345282 997394423 999590018 265396703 977769855 943394432 994386611 480683866 538197160 237376764 256793057 424764230 525966472 786859634 931989531 157557716 570144180 900245200 999972534 657732484 739300221 957942384 974812718 226901328 732562434 43934077 448624477 224804029 570487793 377044603 815970483 269393259 352921184 492104434 689271947 961466448 994220308 485110307 572257270 786491799 852057111 398358896 764276975 483774766 753569082 629085390 977668828 915378179 974656122 195232795 273910523 579942850 780508749 943912177 972619900 402951630 903515639 469688049 938825909 477146807 803165829 50646495 257153009 736574939 957299346 107283644 177402081 206598435 636447277 104584292 679512182 82331441 213181513 262516216 324676436 90064487 904028029 460868613 542980799 775976527 944096719 524969953 740739799 755801085 907613640 423486402 710090655 374629383 393667421 14310798 680331492 354359648 911272695 330685517 487924485 677314182 808353723 559749015 889804435 572602916 835059965 762220930 864386824 512417744 815081364 69252915 494286439 690866061 943875991 724557871 985419904 291155777 468593583 692991895 923794389 327804495 903785964 314118598 323731060 303198993 624698984 772719710 868601088 543880646 984437518 437807621 791855287 941349222 982346468 219985720 819576398 286983324 572584822 131551888 583165974 720888242 983892728 215090336 515726274 499362087 502206120 132733900 714456053 23185063 62435530 5181202 655904150 639753837 792637730 971819085 995527410 19587341 164139560 501108178 742608036 128110240 172250053 638010600 987393490 433685992 554347764 265199997 481522578 846051743 905806921 300829803 496440110 280871027 583496545 652078984 733093883 818225968 864528444 964907217 989073563 547307170 996165172 54856771 313992813 870286267 986018422 104149393 501264338 711338779 829779633 560201258 611894288 631642630 851841914 795896572 991298854 809781596 843606245 101517179 544393747 876448933 935000225 923361239 993274334 664435035 913813012 396354338 960484009 652200297 673248726 979052447 999679988 670084282 813494615 666616066 980016552 412716077 890087843 65933885 552487410 790872689 930437282 302646036 922579865 379345977 380072218 192127597 233124424 370386335 909878367 103805526 481192213 171630289 503534170 184342730 233611293 459803856 515128327 138020726 271827686 540708809 540785980 213914690 913391276 295992548 306182428 393417609 512881412 253883847 974029577 136446697 951327818 348860530 922613815 606190837 746081646 176744334 672206910 285507699 574486079 383438433 432544483 277992251 952674552 651833823 818119117 146440081 586144347 450882571 652208376 979962601 987466532 87317138 820506465 537408994 930744519 863918335 901839485 186792333 214931280 250303197 732513505 59753607 819638991 803042170 953079601 998463648 998556192 765098009 901306681 206847654 654219406 948102413 963247674 728876898 983587619 922208633 995200390 544911048 832535694 585999917 786250309 520152095 980578235 466255115 752933346 926786166 961462978 791581516 831764514 172421137 181020486 502983861 892231650 850245933 950656730 677495364 779746466 860443655 909702491 646446993 991989273 675571033 929594568 727229386 857568226 792027132 838552132 140050898 463536201 712701155 720934136 388354304 829943190 350193434 429914332 648110319 650459657 382457506 463221153 768975781 889315497 209961478 886405722 982589662 992393459 792134675 893764693 597745870 609859494 830620562 948468351 211352004 307862165 247563252 720100205 402256538 578814270 988481325 992462628 757473741 850400409 282708758 355085398 804806844 832504577 736130118 760012114 503893441 613867289 350141420 401715529 656134166 924783030 210598964 626778823 665647946 801945481 340080376 740425204 131655084 620799575 92562980 522957534 899192565 953804026 125420223 248013971 424909453 540686245 707046937 766609134 661795644 957403812 598504469 789351222 640730242 725691289 382114046 470227553 600042744 611682963 79868788 395660363 546761001 874353487 554763134 899963722 821876554 906844100 199749364 282627137 96741351 964648624 800278091 816421986 150793109 474462090 269990387 690106462 790756459 848738659 26982350 874923464 24801699 709331225 912958964 986771767 160985176 501559931 973412883 981905529 403469182 911909699 75509495 646586273 551210491 724864327 766961872 896075988 233517506 394248204 628045591 982165476 956089037 977258782 158333553 406630228 315539703 919498009 43906213 304641722 941322712 945180673 203431163 859542425 939088254 945862633 325293090 449561010 916236703 960303320 233249556 972523477 876727994 904052689 467013882 514701058 447711660 919505467 400738872 565110840 280099516 336078141 696994323 719081457 620329642 654282462 56664446 643169591 597454110 730871970 954409756 988790752 137922243 770970525 503479324 908749937 674860289 916089600 600551926 859867840 83554679 538535982 372651976 814649021 89064544 594200841 566715808 860599809 59401816 552020251 713109028 888742949 981990135 995660919 152833858 636164326 998419081 999713914 509570571 579314310 420118477 733129227 717113719 764025708 997971490 999221924 862339165 887860842 867867246 885762792 680709496 692354759 584158992 971993019 107844544 505596003 63508224 102939727 191290260 213011113 690743851 915200335 364267701 403564147 613562284 853226365 911558632 956115564 63266870 104630207 882728459 934890568 985191328 990560200 187993066 387826979 252218934 542465417 902733731 946576472 560516189 664507077 398783279 916265104 166269100 347307697 385987023 816423684 285518756 877186739 221010680 944927501 776417311 978900859 201525077 771240373 968940208 976551334 639380758 733317652 126824017 315053762 134343097 706969657 165765987 878327933 455237159 502131874 763475964 967171258 585438845 885991455 637889853 705816807 652114025 661860499 266293960 388686666 54386587 522749816 817142324 889131258 506806805 769529063 303013743 411660493 356393941 364250846 198435767 790403145 884130283 890677842 101527397 660275887 373215398 912586785 277990625 434640590 535038076 844454680 804703398 817470980 858585644 875101598 609141187 849602378 927243055 931789804 32894380 323807408 525861849 995607876 942024377 981248591 743111363 745465707 273579784 923843468 282184961 685308867 777306020 908213506 91182364 310304547 932337878 991563473 139984233 611397924 543725859 835983961 437981266 746367737 872994178 934193902 195181517 354231148 826254022 947087880 183203448 890151703 624892729 751378653 362292509 631915650 442109502 574618000 300471699 585117600 666798142 795891397 705585524 858008670 27688857 771169130 45144802 891152132 243141448 332232270 377142033 453299672 252796130 400043402 402508221 870609961 425953139 610143644 48513224 356157440 568952609 729684122 784995411 907524279 368425765 829796500 716865274 879239537 670730996 837991340 818032739 984347018 343576639 382949751 922624572 934040326 330411261 370610745 309856602 716757308 913667037 967149369 177660218 864706456 160924774 862160999 761292107 977220495 533707855 547027650 86998030 189476231 633125353 851822045 433066650 448562871 119752008 444855372 951876062 981846909 404437015 972221081 643262349 854722163 927666558 931288927 729429845 729534378 27601107 566036089 107590008 617752912 549781287 917085094 693043571 786219179 25369916 926673840 384623161 971225467 400414541 746393977 211151724 802262433 839031187 952820496 555148897 609111775 17928905 768262686 882825444 888021381 53022611 799379102 814533783 895862221 556894644 999287956 312451257 450574184 417041686 724425380 203134446 511601077 883780146 930518498 777795044 962923217 414279440 705542472 40283397 541769671 45171038 394511608 812365716 849138473 890332315 900771092 311902809 983315841 875393782 951381287 467063829 754691363 58970477 682950668 924345842 965576847 723584046 915437041 3488047 83375245 481112542 843165652 761816280 846821307 602217968 668791991 227709544 282530842 743538464 756972583 200282686 970384968 516351283 813647622 799550327 983593277 361412835 734898718 434100644 775266781 665248816 697319496 140334967 661890133 19857009 800757273 451590129 476135762 546461411 937777967 485224972 506303873 35819664 322243167 919162440 952518703 580578015 743860255 275832351 995867918 929813349 983787275 115846719 629514411 343278950 743515467 385339825 955392319 956246053 976320629 246379053 386152911 125514688 951363887 967514965 994682602 764695141 879561586 887975065 918062589 409687412 896127373 869313342 874833510 274761691 997951951 348619651 491172689 34262698 871003449 527225615 725161922 17499032 696671984 72234980 169763706 697449294 831070345 441803263 559078700 240499737 862675379 555876512 732228479 156766357 465460112 907680168 910909610 448165220 872346218 483296761 603803146 527296987 975956791 769475274 946147107 214587511 277867237 572778474 628932316 617511409 869258872 583195607 817092976 589782446 904432017 369812434 392457355 667226407 987337758 713697367 934260802 200818416 866529510 412377054 428621072 836885492 922074302 470862052 638293868 186350218 750368964 876409667 937028826 447429339 755016081 26769014 781968946 426001667 693718637 985473085 990080098 204702263 271794279 951807869 996517500 353813131 894904958 532162565 657180498 606616289 653297149 822894786 939611469 99235745 311888323 884708698 975494954 234306671 514276836 143024530 679568749 763898748 768419284 772990084 931457325 869458752 999395642 752943782 889553506 481764936 843646283 858822062 869468236 1681110 503070542 978632084 998794757 249351732 704389444 305610666 336567706 603627665 643344670 211468493 552449559 284356730 901600729 37000260 211991334 259282092 483142554 639203564 951667344 652933169 787326539 204129293 217555916 533321129 820530996 501571098 749259187 64095885 170877193 403034704 821895173 801359040 821781365 169488555 377497883 981902983 989756133 477978096 666888164 446445033 845592221 359267440 373258250 136897413 484584723 629845129 792124960 253140502 490217741 229531768 991361023 90666221 132773410 793792455 813235072 272853616 705163336 40739823 473186299 514737660 999955814 24336061 102176629 756654495 782867830 274718000 781321489 894071949 976070540 113387659 610723164 434984881 978555767 628963844 696276262 823312226 848510533 367573037 963891439 150971469 852723238 944555476 986123473 511406845 592882011 914488665 934189447 608957460 746817981 433664189 742379320 747466114 830468681 681836075 925698067 626054656 964150881 138139800 334407450 793965789 981964359 223895783 968787250 71724466 229018324 810755566 936196023 783752353 920072400 305305982 933471041 466762769 750488694 138334307 223935351 58375114 220757893 790751164 969299828 928914641 942184211 105518104 303738557 226897149 371422094 832405614 901514788 802270041 925410152 257791231 560652815 804515135 952173884 174024538 953944560 992856327 999807198 285535313 660258611 90411853 937273722 869249112 933400311 809986784 935541752 363827014 928603888 835458554 927317762 765289065 874740703 113113220 289369252 35514875 322774995 16989251 72587976 630258360 685742213 776410768 925550847 220833228 756881544 951663317 978638537 409945023 874929045 662437022 910112086 593459380 853988192 376418978 824881939 98182972 975505384 743709009 824702478 641656915 859210828 141780257 698425621 835045643 869208212 952582082 991704281 876891255 927286737 47101809 641604838 715069608 979440393 301394467 816642685 608812745 863776402 916561058 950533071 980514714 987969495 776774131 886704107 305535177 727554686 659870099 845895573 996463549 996956117 979204561 999327451 60682242 141267261 929804714 936023488 825641354 914407727 159422925 207158703 929456407 969062144 773076926 908219947 568187189 909663723 28427239 703866898 388821286 483304902 381193681 427823101 530364189 673607354 622483947 972138509 34349603 550717222 542990394 617993827 678512153 848425645 796795413 995498395 86119482 526916958 882186438 993672270 720859210 959571994 718871600 786510236 752688185 943492761 793370347 922067533 396176631 837514897 586827513 846944337 310515203 646491577 250453676 957140806 332242150 874566310 327086435 547194326 206078429 760979103 935022374 989960891 824351230 932165401 418985093 551405608 463839500 736803481 853227271 912508553 570091499 992280769 319710727 573062980 203816993 651798506 234590492 735928850 479400267 527134393 12800593 680238896 592014422 694323130 270869165 505505121 876520486 981814711 91319474 753611415 817089235 868671742 277739746 671336483 955870337 985490515 845108860 953936837 937467260 966631917 301912479 837615477 548112291 905275883 459806145 760825831 261780835 423193262 286866388 388789888 29937756 431492460 315009621 554561011 352893860 383839382 751049180 753238351 904798616 979394481 353372074 910824526 767167975 852256673 272535489 491220384 182560885 802702763 912175945 983871762 644444846 646299498 839750304 903643026 109401026 827125701 687785473 736772770 785438133 800502741 343269788 433826607 109717897 169143579 479296154 690829008 54059388 676741984 434077357 527409778 872009116 933202909 879265804 984033765 794692459 840812100 816184861 945093131 553587512 891229045 959291332 983896695 558025588 949389816 876464433 963437509 543077641 726571163 113248848 240782816 463728115 596423711 625899976 777807048 180334835 222126116 296389825 992632426 927101092 939020566 929484579 978778702 207334108 896775667 893198009 920435443 113342101 750105454 364943297 434095658 505147299 509026245 44512274 932768920 967556810 969369804 927486486 961862980 333335727 689269555 194550632 420063450 261843368 445399963 447606183 774045458 680131887 725295813 994302781 998318982 500741618 945820372 425627423 921685069 122305924 898486510 296894043 754713771 602005841 862047321 472361891 969127810 830228812 920033041 83823303 657179238 823896132 998815206 862730433 926174740 491680246 742768835 2416790 247021738 559582186 889258481 567362698 822517645 666278374 982672855 301669281 482058195 610890852 910199837 165153769 986206106 894924815 952592341 157367793 305227874 274581340 601921529 554564697 582832345 271790203 726141699 584263345 981282470 603048794 753954545 121674451 758457378 870962516 893901229 65010901 777335590 384453693 563013284 463937641 503844313 901012969 916649940 957720533 986267907 884573499 983131150 54971748 991648165 971233806 983900127 544481579 933222938 148776780 670144137 888093710 980056605 909295320 926057075 70103881 911052569 718042631 824059933 792270612 910338042 553364065 998122077 538506905 569670828 177655196 509476829 450286362 454520179 801829620 940358450 756180522 961498661 947226468 978229160 839488512 958751570 892513604 995612846 650367531 974678971 802471217 867544615 470088340 711359640 55791286 855073043 709774610 987354866 803531808 817934875 858412326 986238365 626515833 912772417 743841987 966977780 831266083 840009854 450611325 507519207 10698727 60729562 258207467 904079509 907953538 978471249 386057386 418945495 866258166 954366982 684701567 917884354 279406324 435483142 216107898 422293547 616156619 938257619 211547035 265633004 519798683 533971095 9058435 260579520 447049641 759230842 448039803 776854601 734807417 939409780 779215403 810927671 85351171 970873344 524978820 576623423 357193152 652039070 518735591 552633322 33945721 952742756 538825986 809851480 634527992 864238223 211756305 469002269 760633720 909521844 59924836 913826018 845762301 969110391 228281628 372646291 202220025 316112174 668235353 762325558 719012420 970065373 744916494 988990354 121127526 819758179 919236712 976540777 83039477 458695078 847120628 993826821 213697369 830233953 968233551 996215529 621749819 944985808 639894143 910512883 124072313 960037809 380417729 902338211 136747986 722471272 14686223 646103260 498212093 734866175 802897020 948337593 51348526 968105334 648544448 666060693 963171903 974324238 850649796 994172654 518160931 538346726 476725174 938491349 913837886 999548694 379227357 758509974 375880936 750514042 987397095 987548691 657249510 902889812 529208063 689939966 326517386 658874075 979359744 996565966 26913106 182021421 518182236 889848798 413836242 417446717 939393532 956482847 427672741 571453176 290287709 457114512 853118328 975563868 651022642 974110871 525639013 532148760 618218810 825638521 442938019 456916229 828328059 899529386 710766314 753488792 655314995 802050977 275662153 550760349 359800328 498632134 321996280 390560990 34440738 368034115 526773899 622637424 569029183 584265997 366259172 623769889 801305955 808078398 31057303 835178392 151554825 526223521 714160757 846337800 756431368 875901441 430401394 651819202 256305250 382462329 144064353 262799069 26854884 526292314 633557082 861112963 176746035 462625744 109442145 581654468 777612289 920903707 948382502 975320779 167927870 351479542 396564107 547980099 578879704 822606156 36239519 86244320 770688607 911482605 198487504 650537087 214327545 992839819 50657466 379218340 914923406 934554238 108535786 593398915 175834255 548324738 632388625 756066011 210613220 552373653 849780432 898403848 36205175 294640687 461688727 919383863 942721263 988853828 773279105 970591584 669846743 765281807 383878681 796144460 858102215 970735964 418552257 627706111 578691515 796591955 488395970 780874565 169784193 601440822 587050842 858517007 484234177 932987893 139680016 881507558 821908319 897983845 229719431 403108604 292885176 560346670 181589068 192303508 523674224 940071543 186911999 444460521 472060398 943134166 234113813 595699666 871637577 955934034 329847707 646102424 157070674 284722909 443085645 448714005 700504703 934549810 623288886 818320593 162080413 187107965 615769287 732813106 234470588 330860050 569522300 580846312 491622736 892905809 334581521 735879928 401553539 824199479 185962315 781070188 993066187 993149750 620424896 747479507 245498213 991105851 163270819 576444533 278732566 944142776 643136186 684360398 445063212 515727296 349127878 829785220 271175014 370488415 712183365 931942574 523533744 554630893 183158208 398883111 289381654 684842900 47158285 889127307 861144591 868209572 902297181 940494994 47454621 814842341 496413521 803504346 517908220 758400331 634527080 917363682 866715794 941539841 464717465 985165270 653941347 809609436 225176696 793661210 527938330 981516026 308310023 682589659 180531347 827918028 163314105 312327199 287985752 582590067 619701004 742500039 951910709 969954133 756619824 972499830 915707344 993661227 749165845 785421954 971598972 974660981 119463194 721786456 215626223 879725848 222365192 904271233 320061629 617956481 503887250 842132531 770685366 889784187 740395327 927440235 513801288 587697464 275351709 793105347 756171170 902775353 967735508 973527144 233225340 376455132 722316680 838849134 140404138 208369171 439140900 823659207 464332665 868276010 244589682 736942343 816565010 959327909 21571961 337665549 138713188 754349972 326088725 508507718 711337875 789054285 907488325 938593347 27731633 116153291 446956399 581002042 360116548 785593091 855847602 923972496 429924726 500881060 114298099 562363913 254841295 912367750 717972353 943523746 543779758 882430428 533588901 989766840 687061320 971387905 889235176 912409436 490952835 794328679 965244380 967027546 794874286 831133778 763560979 798578806 33355600 689478779 804917817 883005183 174956305 573483569 197074534 515303626 864242690 867932740 237110121 363620699 308117636 994757936 797742978 816570765 648696435 696819125 576980662 660751117 717598554 810158512 15198724 631786960 284534859 462786551 9664391 22286997 125323880 883952055 296254065 849814664 565868586 730524476 547056060 758580157 386329802 472441055 922082943 955298319 229112780 615695121 629826103 867312110 680887480 832605892 431696967 659381004 839485474 939375832 704969493 806242753 695109353 748872687 444423163 535434295 19617592 680332596 805533470 878011968 640705855 793438682 937173020 948945278 987439703 993542671 160981885 829425876 346887358 440541117 812061501 835816320 126862302 233594132 83789447 379741114 748484508 874550609 863519967 955527345 856185952 882134678 99487921 117990636 226845484 863369118 143064593 872613316 978597951 987931865 311496070 845082781 466027266 649205014 549004191 824551608 851400661 883912232 281404211 378928054 424274712 855996214 286299900 388623362 469382948 480534358 510740600 887517470 611732998 862641073 752695587 783818829 198377182 252463297 664550975 803430508 26047553 203608302 230607200 523354385 186118693 461452262 955208260 998554407 85595975 788353982 573187137 995470227 216051537 793479986 313463957 493578428 772668481 805088662 914540910 916016614 731173370 834133078 702369112 970074184 974919393 999800578 752126402 767718630 836478497 862002238 460147823 895191782 487575851 620637979 347837814 409477055 71037322 115584694 573921956 876606278 794636201 821845885 697788938 805903376 824916052 841711994 890079240 954286155 246598382 833994964 368084211 625568204 121495618 285259092 11895677 206971760 344254971 592081431 579597787 872935793 643317350 724169241 490570685 888680085 935907057 964147487 724324715 985883284 152337227 378137939 764066324 925878042 3488758 892599596 654425703 952660429 795898850 886985938 728554943 835463602 76997882 263787990 54927101 193214259 8142155 594247102 100133715 211217939 892242848 922622965 73971010 216147648 348416827 499264178 281988359 758117424 878653107 888664317 852172054 915332707 889731561 997230621 23730105 474163481 660758325 831757825 914196380 980679066 398056939 641050851 421326590 792557343 720104988 769245209 224660117 857863252 84651181 667439693 147055318 677483961 393297590 672359579 181825619 448862170 41544754 701349162 207266039 383778872 485254824 702862857 916622877 946355453 754969100 902794973 128408743 292314180 799200977 814605678 156667390 694688173 23534569 411393262 774422178 813013463 644592277 778239770 444110065 707164540 857148884 992654801 901407354 928405112 130363431 638813864 672571480 677139277 181461508 914682003 812740586 968840359 572455393 741909978 361353756 632338809 160763032 729524763 274109805 329778618 289195540 649405596 355404018 499133547 564545939 584048081 50642147 325491449 346271423 753354502 848853989 882244475 551936990 601279993 402377142 738156317 250412169 656826676 162322039 576852593 790658792 974717804 659768757 870395137 66134864 801700853 816222230 890404653 724385810 848637332 101283566 937392397 435783610 943179968 602804092 986145600 122607258 807891659 391159992 819058252 776751673 925419548 491135631 872446554 113309113 490959029 309488388 869476052 878582781 947135528 171516852 992374116 933607186 975615874 920874723 934053190 227100774 533829233 185072910 319567574 622072534 856357011 617478891 788238326 395606572 557125633 182024332 523311255 444862470 932916623 22088643 387428932 7057732 612824004 987849476 991471435 514161648 643035761 168996670 849571647 88408885 375919592 506708321 745456045 996038764 996651916 222221841 429679563 84383911 451752087 417944247 601694432 18295558 313656454 449300289 515926771 329181832 463130510 590556500 919295578 623678787 808041975 270325547 677058710 194224821 424868750 118259726 667195309 957948006 975914469 797531563 834245283 54912906 645238659 134785879 790921855 774049536 909367009 745926322 836113052 737178957 835107356 346707476 820863680 978378400 989091613 810346059 821919835 113674174 802813856 569029354 656990800 946722347 957480023 482652129 895999337 949871080 980127433 566864456 654449424 892409409 930429398 372045436 642853777 884655630 890928820 361313695 936823547 497992828 856621502 152426194 718643311 783132383 942633199 214142929 836503248 593313410 983999889 381886981 898116680 319215463 823669410 935423849 952503539 215248989 323446462 310657910 424797615 46651804 334486873 435573684 857017523 99578492 195400369 425879863 861611988 720218776 790181601 673886819 850305881 620230862 804027478 578418538 666806428 994582746 995543279 895023222 933984820 244613255 721285970 98051253 116054200 95198969 950261059 725238242 779417667 241234495 852735282 503482205 612926838 437758778 530161822 131617349 526754702 556226009 855373143 339086073 391653143 255926984 972845660 616948936 900455298 460266812 877686594 790731198 792017245 495690837 994191963 342368133 607834468 747827878 982087540 362994604 826626312 666471149 956608581 312223962 906234631 692277292 743432444 230132096 789160856 573594901 678908162 897423911 901933531 28201219 253191992 193785140 273124594 109037050 518415631 860988146 905659614 772345609 859585185 736121711 912951557 662021731 973149867 855458963 929004612 77380615 452633342 895263961 978273491 963947834 986366506 35752180 795107305 909178434 938177162 708991782 814032537 842284379 906390751 492378556 576312217 601819289 751716180 685436125 888297005 303777470 788194076 271337783 365307495 16687416 715465108 364124659 716984173 475824033 654203684 271165714 858313426 77840551 492825578 360707666 922327223 462572583 617246042 273318190 831052305 282976553 529299654 349627879 554443968 312074011 731816814 405790187 441680006 581436998 680423633 604848827 995515095 945009515 958539674 408335790 815737209 602136070 842827012 242120988 472287345 648938471 957973003 351028588 628415839 401816879 944846807 694154417 771495060 732243509 832841068 77193814 404755053 973526892 979084028 693601332 894215043 813536229 975217347 182376822 802052768 882149459 950114852 615992795 908142472 913037212 930499600 52970577 979809130 141152433 293111090 353322653 431169993 649624935 842651384 86856606 113272336 460593590 846893293 535268893 693994301 286638056 837250920 741056594 990287037 642420996 748428396 278504923 840409575 61229481 670608741 324435158 771377427 554994168 674849734 961258763 981830291 7420093 609676600 794750203 818019045 878002705 947905938 715322457 864543962 871506501 928160111 303648947 885740876 835644675 841136684 681425872 767182990 367543138 680184857 334374461 671616432 628678733 713575201 867637956 915706057 932764934 960800027 124684691 179006876 106194451 929659317 75043307 762072935 587720177 790411310 4250602 562005471 508464283 543889273 332102934 685521325 200514186 844807801 14237148 924192199 104337048 348644317 211458388 712360387 93156183 759978266 1674030 538975001 215447874 679954022 60841744 98911961 946872464 991181752 872534881 982064511 267848305 904090154 255990865 284909116 979518361 989133537 723136625 945760471 392016002 857489522 222001465 609669130 105486437 528640124 433070368 565685256 630900886 926943812 379632178 438994996 813312553 992584732 979566811 984025580 304493296 625011193 245193431 643896731 809295517 874902431 953981523 987793689 58819680 131685373 333728794 976709840 325742620 741633601 387520711 514786078 303426169 784215365 91233286 620897301 552998452 594950108 582116664 913484474 339583928 890012123 750088160 782091681 926178515 984274427 629087204 857225450 88664630 634176758 169504134 797109577 162196909 490454106 958182012 967056151 615031561 684024991 860359491 941570097 382146709 789355753 351717827 934312625 845711827 946335006 651156566 819522130 949481737 976749713 819865303 971096587 160055452 743656609 954589138 963402738 525193155 795731892 757106730 918082020 84775506 558123406 309112514 980352870 761441715 879125206 535253866 809593305 193924815 557077487 890694337 892063605 567537658 822644381 211332894 894083066 293470613 827029122 706388663 723557537 76474004 395080614 94893839 243667012 529654832 690668440 936940565 991138761 460990951 750867715 985347104 987832582 436680661 739133513 957961091 983093630 56216030 249595982 170016547 382823014 673381104 877423390 673851207 883082053 893491942 944750335 876807894 943779327 991880460 994608640 140894897 779074601 4807548 962893470 543530660 704651582 517290685 748019923 399497492 945618310 57146331 58059067 14645064 916771424 708885953 767249774 387477131 422374880 635534182 962870710 167406888 576765262 535288665 651673504 35185241 864667285 876220695 934920025 656838770 819590698 891405178 910466095 592827317 829267982 187267278 298943799 269930688 276864164 101839289 131563856 843094940 860446911 31687973 474476395 987088363 999561173 701567929 791540894 807143254 928870550 847992702 891969433 849405186 921290862 376112052 707096253 180614043 843870448 631761489 824866104 375300964 607879386 228780749 276284806 616535687 958481091 331649044 924305285 520215851 696461423 70878359 962714324 818978199 901409231 408996950 605589592 891418456 913170660 64999440 402703086 227955578 692686783 394621915 936096394 286002954 976781951 701156247 999131181 663573527 903671122 422578716 619804503 426526791 559594937 201679874 566503392 496402598 552836467 615896328 763207649 82303289 189255358 449858589 897995998 196782043 635565583 709975271 845689279 915461685 989881520 403189103 557655355 784467637 792255053 36218197 937105843 689827025 754739739 871764659 876196128 340797366 638333035 641000583 949017990 524112287 746749900 340387504 349004807 291715588 679474632 729975420 787062444 591081069 695341286 46881235 342682032 589038188 850010528 54843197 546460668 678413413 951591944 500281947 957883329 442592570 902699523 9991030 935607748 980669766 993936635 531193879 754839028 264831326 662380511 782844025 963233236 19634263 91425938 132323485 972421252 88420693 691841252 149869559 991555997 904599117 936413069 440605218 512687876 206115121 710876543 78539737 624819455 590168094 680967136 989226191 992767535 255985488 982690533 904430782 995561113 93825039 506633015 247562198 881291608 977419296 983775557 241733321 549874991 320298496 924236787 259542128 937395424 557101492 906736357 665876514 744458995 89000414 888938505 319350470 555433857 875282274 974796793 875859459 923420697 805344158 962060721 827706293 992119373 997350695 999991200 255829648 662006219 6369474 985063181 901132832 925728574 359106923 739203875 23428452 101089745 367866747 591460262 485681771 499663385 781355806 922700063 770691258 937645792 913671460 957279603 614561833 797849017 592155675 699858730 802838167 978156491 555683507 825754217 977234832 997413432 229303991 394092223 602002647 720729761 891747772 925798917 281364454 701782736 521066832 703556914 955619572 965558863 525634549 745921016 199358479 294195044 881962874 945897644 392354339 939342455 410794009 755112894 825936579 905089184 85045885 736519492 211254654 658606558 677531756 922815653 121286040 479544313 943599516 959613270 299498096 445899850 132798337 873136827 939811760 968831832 610974594 645753092 709038773 805020561 816378668 908700078 745545901 780769868 801372844 862361667 951210457 996849590 108924945 496589424 671440372 954422462 619869199 721624099 91897860 162594852 884171712 897467889 16064442 334221112 747266278 747453029 180130136 340207282 105092344 579292425 847031072 967413461 331483324 555634862 393908999 420640026 753516285 864167969 910545976 978026602 166907814 810269760 788771600 974583076 198688837 552164286 244020224 918950710 412780390 686077464 310623444 319843377 604277223 762319023 633467068 943656523 224764153 918896333 851870691 959542497 700081162 708605023 471941101 937398289 414356892 772615620 822887227 879683906 644123872 855681163 809674857 850285563 545817962 550440019 937069500 963874247 685008650 735550678 17562132 619674973 520439826 954523293 140957972 564356898 77707221 369932700 450644990 684607298 995423745 998500019 805493321 873518818 987629808 997760932 144429153 339295324 252315087 557318660 942670336 969165714 137862922 250709268 428397556 582925537 864024426 970945739 520578062 735927527 818601548 915543377 566553555 658169292 537112092 889584435 569066535 780636694 260747365 855483057 571900333 995031025 344555159 466151190 835983706 877481752 561591175 639197750 278435865 989132598 30280229 958057972 162771866 314111640 364903288 880980702 738612842 983600632 587306793 944684710 290740149 395632195 276842251 481975853 664553469 964323599 901533175 969244919 768429827 822086264 333262118 636590874 310373555 591773221 467753287 817506869 492852532 546546832 791279977 919165555 373514520 643264069 408161193 556175977 403930415 552184156 984040693 994649198 473884454 921715723 579681192 709214648 783979603 937806337 291064486 967790228 309645779 392729136 220497086 396928084 110199225 972105872 285203679 589249539 986839162 988218524 280671142 465892691 308743770 722461102 897102868 995714679 677346284 723039502 907585327 935683672 804574660 838193723 15908410 381556721 376752677 744770292 409157450 414499988 929621894 940617674 211548542 283729238 275980886 328806376 855046173 868841387 466652425 505213370 631535159 704524091 124535577 290131667 316351803 436824650 625699069 742285575 632012761 651422390 679432581 950600088 203278549 351914719 186888680 553303562 107102615 481707963 45050231 661712900 933664587 964918167 785456457 815642103 183161285 734801660 378864201 892193930 810037978 973895305 69004272 503762309 368790616 714776298 722103800 926773311 481837350 682173583 765690249 917450038 475757467 541723842 865901798 901763509 860035575 938686544 260392416 380555530 73536031 761547114 396117717 861405815 176515134 344813989 348447071 650906055 573752994 897386134 708500332 854167110 534845167 853096796 912897516 941144077 492660624 787058778 514975311 733394182 917119744 989474460 235317885 508858161 396795738 853591907 345988333 863026638 358944415 364372049 402604240 897350295 666378002 903496743 882436094 955376969 504002807 866738127 279063275 374402339 974187221 992880555 674878895 854378314 68949943 441864539 203747119 816663347 532951547 966275916 377439119 604742939 926308501 926763477 45574831 989911857 803288527 893093852 453739046 725035283 143021520 564650629 784763300 932048993 83835882 325093347 623899793 910234847 886383241 977837272 228383326 762031991 785947097 855481748 579788454 830584696 301726437 412475280 694356732 895685245 839135958 903624058 785304607 855830143 982832658 990643048 846519133 953015190 19640873 735512865 414555563 486138783 262552545 754253064 938003205 999499415 944327283 958418866 45132021 847425184 622383258 970111372 680489658 729406442 337381145 391838380 622301327 736830366 516141368 769485481 265421073 298793696 482367110 534612935 614371483 957874755 626088454 806272262 571372641 793175338 530331597 702177056 752246739 871431259 431008834 709105500 522879962 758438739 618567480 760826863 434123572 830057867 723861862 973855807 182703353 485193475 656968768 843811226 894365633 908738674 733300813 939026826 916141065 930675284 67066845 758941258 768434989 853945430 27663856 278549147 766965736 901888141 568164309 586866918 596276260 737898805 816087547 838947628 262689879 448683808 200609416 426795530 967181765 989749514 299799910 535094020 516889758 838497059 523368321 963768204 544761802 929297165 729434965 968986201 332451897 744690440 926867147 966353211 555741803 962532719 674959264 771411144 178821266 237770698 130808049 349771353 971165546 999202398 536380119 684067747 708053140 870519275 809023326 949819454 508041144 736866120 994667690 997145939 900945676 926581970 19066676 333256295 791720545 811224115 346898288 696676299 554582014 666955818 362632811 788404309 682702389 867128144 166906719 168672975 243417648 939876779 83763695 391721804 133305345 936281885 995948458 997902478 31149161 481415409 262683001 608806212 832050533 884083301 932204865 940378989 518476570 813716733 253920033 553231072 141516202 646038248 910664641 951150098 838367707 938892535 516745967 999367324 770270305 965874402 295340386 635614575 722616295 779193574 162827152 969358249 244696921 524838528 639821349 984389793 93996072 212141482 350970650 741032957 205501580 385335800 818822403 971969815 843420290 844832617 561407084 887709398 862630788 925797220 831903554 924188684 100086801 569334113 945942431 994125313 870398616 961326027 985248943 991669125 836521353 850182668 86605199 398270434 183572327 421386413 577468120 632129175 100018947 537751966 320874551 856020296 180586709 607110481 39151602 148262457 427904245 449678624 548004793 821443775 326471172 618297571 829599130 895591667 161264039 171371640 229011098 565506443 851636740 975143628 368108326 456030466 973205922 978565287 660626877 909367271 341579651 460436909 483617918 613813628 747448220 791207705 823472632 845625422 992573172 995598417 745563253 817313588 99464491 248945514 312951215 918427757 956307992 995144541 363503547 998988164 508384168 996740508 270028924 312673870 311837688 482891581 299732394 355418865 333717763 563342982 922202015 979337995 546035255 621326434 433690177 633194686 211636217 617630726 802768326 904286679 283181505 657454799 153307483 625388640 883596281 963315047 422498588 954842124 162982278 570684095 144910784 883863685 130233933 930406635 507024150 570593163 825076384 909672456 187705951 638652881 675184196 780109574 361554915 677074477 979923421 986687133 836270197 892456389 268300412 528825910 456343027 496595749 897326184 960295862 954972435 961928704 990732531 999657281 600589965 965286695 801974163 892352740 112052432 143891618 847585683 891537855 599843662 915140312 409130846 858721527 526770568 810137321 976643904 983191765 782321975 986801589 810999841 850661505 238054554 551764332 324352143 619804517 910394875 925970392 222520403 377396063 549406793 923844438 244171404 279619310 330526304 610897247 177815781 717915298 546990758 734510809 731052218 783803292 529699069 674207791 22679073 871919516 555551002 802669072 237161807 300230996 731929902 889797531 510796301 914106589 105960247 868666345 590553420 787840351 650781941 869322843 369134281 427815485 434796904 612150767 839167010 851239301 458439014 618565189 474715694 478702158 755273093 810238521 372021482 833549234 603615042 649797758 130424274 628499181 394586519 402092385 948622223 998944106 686469507 917588821 151671850 629884169 188822344 390914771 518807619 814845675 227639790 521856863 257172852 407383795 37039249 570501490 952189421 966739457 866266289 917431682 521504497 600620983 368845228 775571640 871837996 881238144 446328701 763742428 916892284 917505191 15682075 684814570 723293121 764789734 787773349 893128878 801211974 828367581 748750662 772333235 730468849 896975034 169547817 476220465 631895667 800911411 301997785 974844996 926329770 993546457 268121987 709707061 426334465 552853784 345058536 577333214 515327509 613148144 453559016 667280325 868032921 983526141 232634235 725001770 703870097 933551355 987463424 991708104 645021341 715751060 183953126 641140433 236275641 611502158 371237845 744503197 882254413 989756463 574521948 954700848 682650899 931107150 161692333 222246824 612319893 716723412 471533108 781527357 409363597 781187980 155441062 576634457 718401377 796836503 459666400 574119689 307949809 537544882 100736634 587932734 737060351 831896541 28084439 258553222 302483700 317800325 898517275 946947132 788269827 868267210 529745272 639268808 11157423 158691548 11831315 350503972 292867041 762089471 300939944 950269467 91998531 161011885 446704900 681612078 949606390 988531677 674400834 797181456 240902870 843718317 659904313 767983445 207423289 556455870 618694810 691244144 560347758 865525215 835437702 910336897 361583565 487841314 458257921 784700594 933286639 960624924 975619003 998326553 269047895 551634771 803644698 835860945 269256332 527957304 976861481 987210613 963856654 995123468 614688534 948508171 906510944 915227839 169031668 187470787 482016146 752986914 594184378 798392773 143443602 921301310 695328317 772857528 437759975 949622073 728190621 927620592 787922932 983814798 171110828 557756280 514244245 729805142 365074728 773712814 453694912 550479554 318844469 438605119 263966968 270671134 115054063 341076881 860291585 975340397 327321221 677775378 559297531 958059152 323842897 872259233 539459940 704033393 473878587 834898870 426441180 956351410 716253905 747039246 989819763 991958928 916893152 992221817 914435708 952920496 272058577 520917161 163712139 646897209 9883075 636348394 620394115 786390813 638629734 909757003 12160166 231229465 544826802 724516682 952622536 995107382 703933521 997242773 215385130 506069368 341468761 522178811 978237315 998794242 183882131 913908848 446922516 932054310 740244709 808351210 784497365 921857552 662382871 682132595 404421644 498146331 530693251 889190232 752533085 906233372 708791205 727589990 138923202 434360561 883847650 919640729 130864484 216230117 252723196 365421657 922957758 987187838 139523772 627543988 316370999 582660463 939700624 954261050 817022036 872851969 870543793 946420354 625418636 745805174 691297302 923653498 160003974 941503567 26445957 542034755 634320471 916782474 616807487 704836261 156376836 839518036 6369171 790911711 857467844 933261050 43863491 824395707 273737737 992332878 360829854 365034676 307738639 390300964 710684762 883066471 734642410 774060047 396047983 853778573 605360505 640227129 657373733 961427727 483795568 603199636 902751551 936347509 808007582 853743224 352669682 496463745 907091451 985628912 824155169 982673193 801381945 880259568 480064898 834204974 934204264 950886697 407098701 410740714 98530031 345295474 507440972 800325917 52274353 135681308 889052664 936870689 862068458 897323207 817002077 969247107 916342176 972926837 807152034 881270285 874612305 947987602 68740463 544469598 787206799 926387052 593808007 990959206 267775100 453659929 701939136 816438819 322695750 694737010 937451753 951953156 605052164 637437944 632256574 654321147 608967468 841527063 866705487 949777042 325952084 351118059 163326922 729062196 683961695 696378734 472227425 589457849 298619542 456326748 788956357 972613298 530931083 924146658 331772630 545696191 303715891 443297970 836727492 969372888 877294519 930043591 570628562 984120309 87506857 800791142 668954100 683723037 286020636 677011446 24824320 789408310 227823524 987031908 335231491 821902876 238329685 248672050 592499187 941940573 892839691 978030423 210201321 283498522 364408603 687253326 85728860 947440405 93145109 172991965 86677289 936894309 471601329 525308580 144629163 570791205 797477800 810899389 184094405 426762162 621315358 880115323 621082937 887019966 368099302 671801419 831708217 945244278 844937584 899966256 367327075 433713186 747893119 924878764 623422871 700969330 60255650 994073856 439788580 766030787 698742114 833078010 579913064 712302134 402377690 549931934 871385191 961014587 61177415 450760709 796077936 801628725 741564379 966402989 288324907 718334297 516787247 858012325 79702044 663577557 365243213 900390222 580002057 820115280 702769194 754104100 983270939 986794417 253816186 698946047 779021178 784851217 950857484 984347388 657101983 812244416 723343146 909937815 671612284 954009398 742033134 833542739 308970410 414054269 208107935 501283317 142612297 489573717 764516863 998860428 116020088 943322154 942838064 996139087 594472137 613569393 981079697 996497622 972653924 984516249 414530859 949546511 629383841 713947170 703412584 969018555 313639257 847596973 88249530 627041779 535239213 913659893 738556412 765120016 856098034 923071323 949152732 995619149 135459375 583111948 645785892 819953639 305394707 770797931 826770721 956139515 838190128 894237906 540198229 895032454 6588805 356343894 867072897 869074115 452637012 518799233 227957120 493526514 257579609 368171273 103156904 169108901 752695990 947189517 442960230 699521197 554425119 604006993 839659843 879639404 984797624 992239500 528487527 837806645 405192688 689956852 529985597 823457905 847342830 921953948 727813131 881369721 813179760 967820974 492074799 785761353 256386716 613296019 182120300 183449754 855498337 971670134 851051395 914432595 58312178 316432682 431652446 887703982 447077638 877535204 686411863 883738249 711463175 782878867 883733032 998397132 534997121 786015168 900344114 985729398 596878524 931003865 446140772 619107434 219068697 842569259 599702743 896313351 910139192 967204566 246894943 561177623 254751151 260309256 878942568 892857599 867485381 885867039 427684504 668611165 447234655 743454325 219105850 971473135 653305213 688642319 455931590 938725674 289481432 556900281 948226885 984813466 511910478 549815439 828723420 942655111 691622965 794487524 648413280 930609538 164655529 395663392 959690333 992388992 601633000 620607160 888250529 993495009 686984431 989089391 784943715 828474238 938203421 941469085 252489434 771053201 628919214 847800502 139219305 211582799 456049103 838246095 904443519 963913082 741129101 748908710 312923357 825901226 948944680 983517219 576184169 688252413 248892508 571299666 51122825 188098636 145094499 991096999 63941341 459057204 106314023 931136857 226102761 533763022 375241125 585102165 716004661 781907080 318130512 861530104 304775464 683595162 24021920 597691872 499248391 785815588 222728203 428115107 275108156 800255250 578333834 846746713 998957076 999769887 717770760 858686012 198924363 256896733 304440191 802400583 39973589 369402203 343916396 346478881 735190147 758666766 872469434 979256126 64141154 794713348 524336996 852457899 281839634 821889624 123549856 432095623 343184704 912845855 354697502 852097053 857499610 946917225 811080241 883854701 734552732 765803860 889149441 975240710 9519018 310819923 379935775 897153631 233198052 918927567 22338825 274979470 493336518 660629340 672528911 796613920 144376984 769120177 460143123 953649292 295893673 873468891 754563050 914028136 564473333 904937384 287215260 451671126 496465323 570441740 215066616 948774646 572761828 895589493 63197509 129671073 581983397 710890189 213601341 798985572 958951325 962798837 743603713 901922510 358331117 443488728 55864119 931979806 122009426 476821781 447743192 574710780 616111214 842278111 423310893 632434167 794292074 809584408 843300476 847489506 80896866 288712709 324049328 865679432 628952613 818315854 107116563 431356500 687864668 728938281 592978553 658836275 279019578 901417352 44513553 785756456 761692008 780552083 728098290 750119844 287182981 360286008 420802569 462007037 690286771 768547230 777994442 895894440 923984531 971439469 109228481 639082170 374869459 521345091 96647967 706058440 319097435 509537826 620798784 898696958 880713597 973292838 560904064 638042663 420750499 529521502 997791025 998344796 884986572 916388114 376029774 785691495 897878030 971320089 11753863 248976373 665061175 694516080 605120960 734220385 285370405 823673378 254040031 667665212 752056175 997074760 412143849 743744111 734313792 839013816 796167839 837968950 472090642 475063017 512710392 798162426 171702529 905062577 420148749 739505548 710337022 978775818 704455216 927906653 143212437 799535070 790568983 833690990 405748615 743785501 313248619 789151936 655032408 724313374 859132421 913626606 899735897 910316720 19359275 80741533 662142726 950782704 497864723 772184269 349222190 692463838 148761313 832773190 737898665 817890036 282395651 863058261 178692984 647769903 823237981 850695012 500293126 715741821 269069499 941210661 87497920 315396019 234878562 564466124 907917435 992304582 336468938 694781697 83529401 695166143 652130081 988226009 889617479 974072337 759986481 944257702 838511042 935492084 282325220 496426780 384243547 945740959 78862244 875498169 133924729 535154855 895491228 925697107 872247645 963343511 624915413 940106962 417131360 805904467 797122132 807055691 981662677 998443309 638159606 881729508 237045280 823494179 677072893 866325676 857348339 921208161 788498155 984584598 394047455 485949776 139623491 805623738 671901111 788489576 338210706 676745636 845358075 845642710 454707735 790879410 319731774 488512156 277407667 597051376 423952199 911904171 217709633 441909770 47235001 84985931 743912881 910433196 418320546 754551753 715791385 895150602 51849185 444953026 605257173 863073697 371131081 507895284 929042711 964510146 593325040 980474305 411913095 969197564 669279129 987776915 402173348 487308552 866328629 971373438 760103016 885583244 322995929 419690788 442316664 588917667 308053108 329761093 526067209 681051803 280111824 438944833 859400598 951437175 38557408 297954936 234003419 318774246 519372169 538416531 884990134 960472282 481843216 705125711 556296572 866229483 908398286 944204278 91047501 176384186 762159805 945744231 345828840 955481178 949629366 966157125 23456952 921949890 389449147 811581249 270895980 738654416 912337514 997563069 599144201 712992722 948983975 953502574 342833919 548548861 855355796 954413700 37805735 477493827 99010306 472672189 761185656 824652548 634580702 995517294 23723865 75686418 802138710 872941671 28495128 198202910 269450715 588945267 726235392 750354616 886757236 915717689 943731684 965774022 479944056 844434812 673755854 809186846 3769387 812820407 890855484 900079042 460356725 524297558 281546372 529671024 748604515 973345829 850613477 895218986 208539199 258799097 433977667 973500124 568026235 586158463 355615253 601373576 615524033 630303377 345039244 696744103 632945595 743983351 633875628 699706173 31886647 825843622 186980697 214765779 645001923 818120203 732008464 982563594 798366042 925587393 34889330 765247871 468333040 989132502 822476495 925875843 458471251 548095996 740543001 849453790 722196801 764699391 97446329 385007432 938454360 976291402 898340011 919857291 8114013 137173304 935064458 973420301 549916205 756469092 36611775 348600815 471810453 578052196 140907896 379314136 499440789 531428285 860265717 960479776 449830749 664774706 955958960 966969020 470108935 629321830 858980581 919075886 181211838 366701772 359254167 454452392 501135281 622937963 127640440 180968323 924906169 960092979 667357181 827109680 196619875 436293130 775597620 942708150 42140792 756181076 257276456 992787766 745998904 765742836 173850544 753568701 426032814 561036010 768549458 950851024 996439222 999920675 941840731 948363589 596721554 861109944 648130463 806124525 309709599 636318705 829628502 963204753 759326449 889096078 273505710 590784021 362789194 982653460 139492819 472711695 37937446 515618815 69919606 504048944 996973135 999908824 540997953 563120429 298984789 384019528 980693889 992353845 813389056 869488204 942630258 992695233 813888143 901543038 530119892 784360623 387663286 729044591 997532160 998014221 590812510 864671050 454572566 697665166 850283186 948571638 320613991 625796923 628291120 673079521 439201104 670124422 156555352 426496104 667906587 916313140 481888185 840332294 308240068 790151400 631082240 698135631 557800516 952590808 412812600 847149580 467704170 891666326 640949973 996784642 719361226 844138772 429345441 436022018 927138974 941849858 374304909 774255292 841355695 968572469 702302652 836958537 580132393 884470428 938811303 975878364 347102366 801591296 197449237 856982992 523973095 550489916 702811493 818739931 223679628 455221124 539075532 888511449 26690489 317216449 331176149 893898668 771388447 917588975 693610135 807067466 641904262 947615754 531649756 583222932 858807249 958949172 133647789 231297713 845420569 895830747 17310019 680300366 219285251 297486822 995416819 995545643 64329642 82731974 906633104 998893982 629322706 882679774 346669301 395294799 625898247 743384068 390850752 452932904 573992749 771187101 242073067 931024543 817055164 904536157 794201398 930876310 900232842 929256910 680535111 785846514 831612821 877720419 857462337 993909195 44073566 388000885 921469348 952826313 957397016 958114741 858969885 938958518 471336977 815533733 35236827 629835469 741072346 814641772 191233664 719568908 894490879 986869653 421993347 502475782 545545291 885081090 334666694 732568567 62996361 907279069 144831286 615391120 203605572 210422588 865476633 954851663 755765105 810455745 774135673 983841056 696521902 936942959 987624250 988323149 367521080 925783626 645113306 663586742 637706929 997326343 262556057 586937799 941694585 986793315 394516819 848938053 822757833 865348586 820880955 843856347 45405339 863949967 755935414 955007460 896611612 993210795 541760608 676881948 588256963 698515516 658440718 782289017 152297888 987844263 57924104 782757966 937973367 975813002 296289679 555649480 66779129 487833948 32598904 897922853 392779712 668059867 568887623 621008485 857948622 870533473 506601007 562181470 440658145 526856268 467406929 694965399 823847144 993154123 51433513 933160110 722256773 886893783 568784936 923379441 912878973 960750699 57326844 621156844 22779533 243514085 912672532 975989484 313799174 383203515 833961588 842270077 241575657 521949544 763668986 835453110 814200985 987814944 304171299 910936653 34624364 94355370 234641323 458066926 186811554 765303975 625127399 974362425 442724113 999479922 173893221 204930250 96139112 878429559 516428001 691082640 165270510 929494653 101892856 741500079 42111989 100851815 211799527 699903055 732279593 872174296 130767406 520176045 303440263 703455863 437251709 596965435 377184538 851765149 901955910 949558920 813693390 923361507 390975334 520524037 900137119 969242727 601732905 706764605 230940954 924365925 602031088 938517065 162070887 293867554 774208274 992332805 278397211 552209805 965029971 965432671 850245600 916468538 889395955 977684086 34012515 884550076 704013667 906825126 617297988 875253607 460316471 669132964 381479407 698346705 929976061 932647902 230620610 630884601 365017919 520595428 884274893 918157024 756222800 882603875 964406213 976040366 143758996 177552263 128553548 390474113 533251005 635438171 368271207 689630081 34482053 857425995 542727013 595253422 972983386 977263703 888545 124692765 636940916 813630023 860946508 930393685 499118276 915016531 361179216 787876956 52034518 132775152 226229000 729946622 245723423 391475891 695436150 927952029 144958832 990226308 225724884 575833066 651410154 676325421 855890090 885973230 233272752 276191078 956529498 971147279 920959477 952044799 414771928 765819395 719895272 742874189 179778867 641484960 365309989 875761172 800928230 915693110 957260465 961520844 594083576 823186423 675529443 729155100 519275104 583867684 127820987 913700996 946926428 963311550 594978494 643246675 345965671 544490676 574696496 799510894 427720143 453910067 58087792 543563961 263558184 287458558 759398022 836951756 147844624 714768414 673173535 972398247 10810746 921852965 582003442 650289582 795687587 882532354 680658934 929903398 132903330 223393784 201102260 272027502 441237160 782687193 59301054 240542257 554558604 637054554 667844902 975732112 491686488 565396297 949591074 972043013 418891691 665263812 651604885 908771552 939535352 945159917 448539788 488328288 670464629 846906958 514975198 674637792 949889659 996043048 986564606 990999697 922874987 972551661 731479187 792246064 797364369 926732796 252739637 534508417 619379764 781427163 781474030 918134418 435326612 668053867 372903307 731437082 392071652 420284553 855369225 973923589 669418520 709360163 612489408 886618877 195469054 620887551 357383458 472777281 621884902 755272170 24036274 392046874 652230893 761230077 524308552 601068875 541831205 623199188 431325592 729459385 142932372 220094526 996729772 998153689 540357180 630576508 139165195 725377208 619691208 972170399 218435042 453943433 657241111 883400967 681774015 957553983 393005916 736101362 163579679 529790617 610803424 635901936 807440539 902183428 794513602 918016529 93636567 188237248 170325830 401674096 945766066 978074622 634822921 902285623 606171808 740001003 259146810 478211690 895237909 964650484 605289664 816821238 792288694 955677540 7239909 848761517 985242399 993263811 702449572 778148069 887111210 970200977 613509835 649020701 248116980 366163883 635597916 919086828 384477500 934183806 956877519 968815778 972304700 998361460 828793900 973251491 795478647 810470856 259343188 904119070 585864841 683876438 879584765 987667020 161860132 412734134 633075889 669497606 479657975 873678637 542428020 756704495 928969427 971456668 759814497 848565326 934729085 950839546 10545341 459613739 373329301 846399418 60758251 701275435 326784818 500628451 717214499 990600575 211085416 240518862 102952942 921263409 906242319 969902511 678177470 995686298 374738787 409229159 731487881 844760921 544793538 551783801 794500072 872335946 962646115 996810379 266134850 313490096 692105150 846044756 999083231 999900170 851647686 969989424 458341134 802120997 698949944 876167120 454003749 471476435 933350390 953292445 457212118 461930151 641333965 841611995 437130806 554189114 414723295 601705994 912767431 929903995 641658326 835576356 757079367 984695572 232905536 245549945 958878436 969919566 127004871 648569876 252073706 609634424 759005543 830765714 206518447 525102929 796539180 929086860 354681651 929953263 427959000 943994736 148521254 415924064 730160648 844120595 441769195 828645418 801222130 924652771 874943831 943252074 449822885 943797654 395942344 915821545 913186778 940853015 90702890 292476247 786921926 902660765 578423968 853176218 755137138 770895582 473594671 574208300 150062732 336873158 884402892 949252148 131367127 479397596 978162946 988674777 266576903 347459072 513570832 658030697 783760447 968890978 493627989 931777692 355491492 381702829 995906461 998583457 547225570 795898966 324979507 698205078 738210166 748365747 584192705 846468037 275882850 611422979 835856882 894263707 866264611 889607672 873686508 887387596 479898307 630926742 240404451 397473006 498800665 952503339 171201025 266680151 876136059 929421126 582225494 935771076 208610402 400887451 108355243 456450389 337994814 526571169 147048313 550308566 654362922 823233099 715636675 929115156 219520338 425714390 270511461 678288936 996541708 999694008 617898931 881421002 809950560 848599656 237585844 286883849 451606106 790552062 277669472 692445808 616879794 686764025 73995262 119296700 164042508 998797584 332674045 938098081 546827568 845722230 252770639 346475338 255432710 611805973 99714795 997014881 86451950 688780901 628263974 639247878 35007711 935619757 477990768 891080737 460014194 581638482 527375934 656946094 84544537 703910873 280962087 858765214 916497135 983172914 142163227 889483676 158196108 495512926 852602881 868417255 202190632 251880379 88718075 755232078 117485895 927746531 94610573 774320887 33622228 404448464 705369295 870963490 674372512 880697398 995311973 996538911 125830638 191632708 588964617 945438900 707195069 724994222 811037470 937511538 869156501 955298435 137723307 348394183 418476306 967200786 21467070 201383613 88780625 230195492 833473384 997658617 920222693 983017186 636236626 990257718 970314333 999277305 947821329 953249857 320915065 452362236 559002436 816203497 106707345 407505998 755599214 945625313 522082024 578432610 887592154 934028462 533603652 619293080 23352543 682994161 18543273 279830102 646871993 947309616 438028058 957002107 410729969 585395316 22298249 948562568 148654791 856007544 218475694 574027354 205468698 723433412 61980348 83655424 129354910 327046861 995690863 998281304 158259852 368853140 611987869 914150542 625337941 857224342 601954570 688286828 215444965 556675068 241009787 631970757 336361279 975340271 236517899 841224889 656674332 678660160 740979102 748696685 342871886 927279299 872018851 990808354 103899361 399719317 723227689 844394799 722499446 730146427 947030275 950453006 180554063 382504078 168641930 568450763 809392234 875686419 341083976 592649655 765299928 805230971 400895163 411071335 981045732 984110553 165292694 796610596 374941190 625469068 270221294 384511684 424637030 851744097 162043521 408313053 904296814 918858307 920378298 936830532 303595519 818707587 912589214 972213434 340104777 913533741 998778588 998981447 554180010 689202563 598395917 925984137 414907357 840294205 4169820 421593656 850586397 909192261 373213394 578188881 395248716 934906458 480937400 728052768 582913238 690101693 337569679 635906115 464207544 750263079 138109641 980558505 645150760 777755899 943793584 960571025 859676940 888369910 580438530 748246891 43619126 995590824 210878948 733850659 988332572 999231291 90587062 560410042 798359716 941740137 603553278 828799972 194482578 707263152 974549335 990365449 430413527 558782101 269292584 834317316 796828047 874421455 677214548 932658285 796327752 949184290 492622809 843277504 914818046 965943553 644334883 883236929 862314316 892012858 812460409 858357329 460776006 574997635 189327898 504254588 470866411 932778651 244070111 962148644 814550568 938119236 341144683 390959650 290921211 813126496 493486221 872320975 837218896 982809747 326753839 580599780 828846896 858809814 295071821 358851154 82075314 691984892 181327281 817050710 285991664 626085978 562108520 853643186 919561146 998220378 338784430 957211178 831784146 835381249 287737022 665262183 873194746 887312777 750374710 818011236 882775569 989032783 22075429 931268744 144395237 239151083 293660472 310898454 55049791 748209432 444281082 627725542 226146463 762868640 235086832 660023348 612416979 635266453 852048314 961222495 719492715 767891438 703483498 790722980 224631539 401822147 317830295 952917290 168030888 634749218 24781880 492339111 7845737 353824481 831419334 953212149 200741093 609264753 965581809 994584128 724789596 908831301 898528966 964621750 430489109 986161524 211057999 836187997 810606073 922266107 750343297 937961693 415845391 560649853 114369426 970658381 98695978 530574394 260977104 343906791 138526795 792137990 61512392 994549954 792215400 812514804 559624139 925827137 154848007 417492000 490899887 994550448 114077207 947123566 381269684 964903618 826336462 934371051 814424408 904278643 113868335 672618792 241553044 741675330 145306799 354142863 92120667 801352830 670743831 776403210 836439095 935807537 625051075 836778451 296529619 906056674 144424934 628908906 92161483 200868900 727291122 729357016 655545087 978672829 330679263 661865055 490606748 838261165 389951725 489323385 553838239 983606779 744185328 835255861 768633669 886689645 466619960 989391254 657163705 924599205 590575601 922765188 640615669 735525263 528182111 898396571 292261661 701832112 603126310 676885171 167818827 707227447 669855325 844087198 162035705 977010809 110941148 903062591 937892055 981166596 363928566 776608154 135176748 567994785 313699872 943091609 199772894 633126297 152546549 797855922 735250066 790396430 606926365 795459555 989333060 989504660 289186003 430113669 217266533 387230009 557030739 977855972 986621015 988813040 558420573 850337420 859464791 924364299 2001640 203594735 526766313 623586400 539890130 651290744 495613003 700516523 710665755 992449914 616091936 745764861 396324393 756900728 54943399 551475219 727840778 834367408 177955342 331301152 196346777 353576172 380966637 461188956 174698483 269895936 959894319 964045265 979011976 994447738 103147989 453111116 11322675 750236207 316908545 732046839 435097234 895005428 557745424 933969307 216484353 367763599 55262780 812054145 270907083 835821488 34149035 79157008 554469708 907703794 367033828 468974129 58565744 78174025 513086590 716954324 733205558 822103645 668419099 846208826 455394029 626453075 32914377 857664373 555520934 870425883 38127983 887388649 465015884 921127765 549663084 777307574 524204349 596732694 516607105 852838500 111504181 887387076 762640566 884353498 237005310 350502570 358942980 860213976 865502288 876175132 629910819 993575339 760329263 951815461 633206540 657174077 456323655 931183570 458624348 719980094 443260452 624455259 663556156 840348660 851013479 929085127 472832902 505483969 538369424 812736214 342098343 745495955 131670170 531676635 682024183 848343522 774886916 808219754 905858982 918688380 647287605 762742312 68528608 364733294 884230895 986526285 556386486 776237290 925297866 933540591 801110048 838241426 639012107 718218469 130109098 362354029 286262488 544065186 892034015 915293131 763686647 949060116 70922570 385957641 351135125 628708200 747816250 988915031 288922594 920855247 173930361 224918259 752007478 789016581 668368642 938546786 605835432 980883779 793490465 901253391 237489034 887281127 941316453 969789707 362965620 817078318 634473130 823350822 535560406 985362101 207184621 476960140 862901381 942236503 722424744 980037449 10391555 681337186 474884265 663261594 469077685 828362410 178237319 889204136 797841355 994018377 569102341 946708159 927234424 979135186 682826757 949583694 349991069 713564159 320499110 865155172 209795204 314393333 558817478 921880245 368365196 532600867 445414186 466544129 663123824 667825207 209738821 946175290 58317430 521752287 569241313 751785443 977491281 978848095 135334067 638315368 429392802 631387364 220519750 554930142 992727438 997602415 973982460 993163983 855927917 876301136 866602290 986307470 561216164 828471124 140818676 279508704 88484648 582471806 503889643 792609046 446571694 450308090 288525485 558615890 138437386 382113273 563694469 828379154 281669261 648884035 623484116 940731053 299436274 523083938 368390122 864348909 671464622 684504780 569520419 972404779 635673809 690945937 312749834 699085489 620050281 811148914 326991949 887114684 768795173 988759805 866970036 943647924 119442904 572274621 136159700 873119846 164351383 677424293 142335177 952858784 556578837 646344882 939880772 998347661 802806265 839329195 996615599 999803103 61196332 316206615 794156535 913955522 526933815 630957793 489026891 494717518 234523552 714072523 926824545 987427507 249786005 906006741 537784196 919828602 242474247 795154483 76145303 232037723 459198717 747633560 74453014 188896143 917382411 968709378 872150614 963419727 642893443 652027275 52630372 505955347 912616722 974820976 356045155 361885730 257828323 911305146 408653904 682991807 711166963 898482936 229927494 587524524 31499256 910431166 576641810 865313107 257681326 617438026 137671186 157372514 15030688 537933640 475073820 963056228 343552087 698493760 682648195 970961795 390894965 699387556 334681821 665180708 234931280 648406619 87550334 635185378 696950489 902004684 78084117 321501941 549932584 810798031 532624183 664575040 40435929 538578768 168906420 950416000 5399582 977081426 302141528 940011091 917306835 978148827 290545583 581289376 796786990 955957436 382066041 479722306 916985804 993263311 892530652 904114416 324973839 354264186 862031607 936695761 396053019 703692892 897262012 944178291 829274922 834520554 42479209 648859381 976379997 979650316 940832060 946531686 973864996 989441638 579306991 694437548 872764488 884176195 620793409 811132559 848859703 851832039 802800420 840526018 13068583 899891341 994170183 997643514 748040228 891790938 97136393 471821477 66583366 405572544 443769040 672939886 651961974 834046062 996229517 999225972 542292751 737354000 829369732 832175721 134728431 667186501 889800763 954663418 337961319 364387625 123793611 978057828 849966279 980947926 729383764 891270746 43977746 298746103 941365327 943259740 419767053 443359339 427626414 746142754 688355968 958592454 40337772 216465958 774275290 839679622 615389302 963138430 562494401 768757803 748658963 903633189 723899512 987864590 916248593 982523650 436338430 741378110 413229040 823307462 907650969 976617166 173268564 325366068 347788915 480931590 788308639 884694404 520625729 753884088 870974222 974835198 202392008 335685082 556407542 807097247 29238879 134965630 455803233 665049257 705827672 812402084 556701863 833514500 375194700 560005144 7016116 95973512 621281922 625557707 339184968 352478208 916139110 933942089 250778335 673161574 818493834 991066882 996771257 998310938 743480094 874094057 473891181 794469865 353348019 980562858 199070923 535379370 75608220 548360178 55875665 717374169 825886905 864164971 35561628 684320805 614148908 902166414 454842586 893990951 658438771 864167927 635757613 684870276 130772245 504523206 710770508 729936735 954428396 986333792 773308102 967356973 751272105 884924476 821670526 991173569 202951274 520003744 803455082 991677120 377703844 520920387 556286190 556769132 737876851 850443226 407326477 675284910 241003402 531189691 101905300 641549051 716000076 804183370 197537411 284993284 616620243 720817495 323073141 843126613 191332976 774594196 804933800 980666557 539225900 966729240 957188293 994778986 664140146 785367028 420574822 945318940 342646027 472756142 213200452 979635533 744507825 854514989 948339817 961217731 366834985 501261837 95138900 460548575 499410367 703696937 279816079 527346381 316208 446143058 939877920 966908249 874186000 937980343 828821490 926579211 171573762 263575536 440582782 965077057 752594906 916708766 770012373 868819005 662017544 983489948 125805607 154673265 524926375 908404823 958596755 961892072 657071270 671300988 78591325 301065534 946361393 973227778 543565819 927543245 183594547 605566893 439491346 720689513 996733868 999624205 431192738 653886977 445228462 448320891 429212208 635874078 598924953 912667968 510538910 511403853 573345374 901126190 302744699 712436638 629223784 931040977 625632366 971121468 117646270 999970554 893085930 913558800 799439987 911985265 404162555 580097762 235671911 615474675 946952374 970396305 256449932 471633770 288508405 736703930 31643341 156591431 808098838 990960234 322855799 471778303 448489782 938393177 102602969 243313033 718165202 801708797 326601382 546058141 542256385 847981638 303680161 826627553 872397912 981419176 996890753 998486090 514853934 529987993 715678897 754035100 144999188 496884117 483208829 942360795 486613984 921275550 615215170 711075533 463117077 951950387 565540739 779280231 772039813 974825352 30580126 713048001 26081522 337602805 739822408 838022982 349098387 774697801 965651910 999360598 228227530 980359242 339512630 765009945 74042076 460747181 66819551 143727784 693022016 693430454 829209597 871312308 247317293 440756268 991844028 999845457 65827952 93539641 609872881 932729692 819122756 927476597 161005182 227701449 194729690 672237307 812789571 830690158 591384859 881380865 173296589 317572707 14866974 905158924 942587627 976116051 963048728 972936978 979983798 991963845 218562354 236151591 451561660 660204072 649190947 832941670 359775523 730631204 677335084 916464151 204951184 908712471 87887431 636551163 650383757 997749907 912256647 994910919 907807750 925457538 251471916 459081957 178512332 261267886 726492767 986929756 832730659 859270317 731448864 950659272 364281496 742664369 182238111 348648542 251486252 802713256 386553577 506768452 816388821 910787967 155366516 921876738 480329853 783160986 380986438 756240406 158218845 284181479 461457146 620481812 103519164 209388525 931684420 948550766 842061661 965927116 801799875 946730594 69332799 902866941 574862413 968581828 989831626 992514511 721579217 907853144 615957713 669660603 50551130 404311403 808362157 964602598 869143319 906115127 992114142 992589455 601337288 815052334 467902964 719721512 277352010 504616941 835069329 878748663 963425581 981227364 57612745 547800157 495681648 901225880 906629873 978545397 798421433 996862268 78657186 740670435 148361222 773631863 537394015 713106876 932432750 967172021 873508792 931204330 184817434 955989530 598653623 655582555 505877644 649899071 864081943 880121344 150025376 686323521 139585749 786999349 87390449 468885924 677857800 832900896 793904502 851635711 482436715 875566220 507875098 958206941 519346404 550478977 338326255 789981594 208204876 646647313 783692724 858332913 442646843 680224485 399143471 756937671 156806025 349512980 116720470 848690084 450997152 578276469 214972470 748794634 288011133 927822062 524576801 662971506 330817620 990191565 410645649 806401511 623440514 979850799 774004474 886105408 872467228 935030771 345936765 946482238 171803006 577739043 903971013 910312707 900458991 985572387 383653806 623825627 896080173 946937462 784188928 974096743 269927229 598287712 181858694 756016078 735856044 879045488 356081785 685189397 955774514 994089035 370832413 717439073 107248695 771989194 401716157 590370813 259187632 367821587 691698414 778418255 538160787 951899763 473061820 848023659 692413919 942774883 609589393 751622724 226069501 689876823 232847182 902861383 164096788 758578671 547247346 949083871 817460620 921177478 454917301 818106822 339147229 901039693 780569660 911685932 54933151 422204837 96154092 176759287 77067819 506160667 370922329 940906338 871277947 909307060 100325155 544319622 8270371 375731618 10342210 427045798 951668139 979597526 544708618 895469137 711572628 724428933 750440914 870170806 209861593 385087080 868822974 990895915 954699571 987860364 780026523 888066926 468844264 571442860 821906830 980309037 30309224 914167099 60136717 820625336 683557389 949459864 404605548 597777109 644016268 742964087 543700383 862095305 980617602 985986801 995144859 999623031 355584379 772139223 350016814 957830050 469601513 997128539 626714512 966363208 921450002 935717783 616703600 632884965 824618493 831568206 485703600 513342365 11666151 197849913 886386430 934597978 498368442 521905367 169926711 291435439 383316401 858880023 5226919 414743477 630045936 911185226 347889368 518592539 603421078 977427473 217903646 863933915 727817957 766131523 742105596 809274501 848245951 969653258 549461855 940808698 739654494 987131267 388210006 955963716 308254615 638600788 826295814 946647803 801856608 923762847 208650870 988361065 214963838 333002871 444531969 696974969 860007994 887004479 322688041 807161436 101851952 881571268 997279237 998538755 371524191 528905583 414027406 704305406 734079392 926129075 511408744 807951004 698200112 940372888 231174707 938093065 68986838 379265208 785620356 954300362 879875996 894320771 429168593 557372418 676241377 887380906 221795127 822238932 453584453 726164380 923481296 970749415 880615474 951884017 458446723 963736836 208553018 804159690 332412937 606569069 746315832 889572106 597628828 974076327 137747663 930315449 19596964 498947517 255006756 940559257 697172108 817283019 786568060 966065862 726201942 883477200 406274228 968250060 540556565 923720151 248675688 568753524 782146503 875933394 480044073 705055504 376477214 525577670 559348037 818897339 663649219 803049385 237393660 330996512 575754105 592433224 711482015 781889256 999482210 999683650 687794994 952871711 267437166 808829710 866447948 942723478 508352369 895208049 988757739 990315224 3858773 990238756 759722574 918608506 685752789 961093555 54532849 857723149 246493562 563514088 618396902 814738639 134186803 639252377 258130418 412140058 70997255 355978499 842207173 914662573 525436550 626867073 965665356 987173224 835525405 874635991 133940816 590764493 39108833 750112925 71512861 954538491 714087702 954909754 285999471 923777444 421767470 936916914 328291902 613132476 354013658 830204517 795726604 976673405 955885203 959930584 999909762 999988755 804624038 942665478 458970779 718980264 878096279 976815454 552374119 589112600 749457296 862604646 695002269 734917918 556170945 791038591 198957803 947564827 889718639 984153741 578974792 803497899 612050993 731174812 774114974 809553407 634396339 884752989 89609047 740783787 784487112 872615511 6349082 559911386 971646391 986968014 149725310 500045622 272216415 278664830 814610530 932340153 80791330 424712609 715662467 996458535 980893174 997139804 413679404 925021453 787884468 973409272 619028021 686677113 682027265 867462679 675827228 786495788 905047204 958827415 488107724 920194741 36356724 111858912 607190170 999954613 469718507 586684227 300741161 417410765 447860917 865324809 629813738 659600987 637289983 745288474 751240047 775527868 866309381 911660015 695900742 981918682 596329088 767109004 255421264 869688848 763318871 953343751 381581359 815152454 667302580 754610934 454801417 900512386 824928526 967388090 288506049 314288901 200615620 968499862 434741202 572551049 626547112 864446323 566994859 825644776 825946059 997467867 806351437 960095126 759688730 814986144 949248788 994584128 251835216 564567019 448754703 582898688 749888750 774660738 297045456 737878568 211260089 995104372 33658298 557742252 129260563 362295873 97584557 932078185 221765223 313362447 266380676 535822911 920489564 997680555 11827217 622500512 239800993 652135197 604306955 937599517 206790524 546085026 989294593 991366712 964121606 984758357 901444327 965396665 427878237 485400602 396580318 662185014 149978730 908113691 179447619 639018444 710262513 897501726 632648204 865179616 533317079 586327979 766794721 786874373 86073469 834607250 995004953 998940869 711938710 813218195 286058196 298223830 870677569 890965193 532316641 945610872 118966027 239775301 799489303 868384809 251173607 677936611 549567083 865164068 518304759 818879146 85700504 339369446 224220135 506589381 29166165 587722869 558496358 976761361 420328296 633336791 272034655 750345397 217466984 857195711 211110573 952336290 308856550 495553840 972644809 989479958 197677296 283558610 245153049 308116027 800445266 918762660 844100010 984138168 816990503 835415887 480947634 878444315 554833758 682437038 532417768 905045750 645589116 816218650 37280579 193203164 195616342 464088409 704382709 964434867 97735236 582192156 777055931 915221873 142339432 715523914 308239437 761825042 932571579 981690213 242118844 484249491 576945877 722125079 937754166 991322124 978771487 996484493 756792291 848964576 775192207 980482261 917258446 926431155 155506052 711673603 444257813 994744920 823157120 919390044 171556147 186789717 204583629 854979006 633081504 868442652 120973952 377327486 552710318 607613153 7875943 923377393 65886112 331156694 425948713 904692178 197333651 238789494 841247445 852062447 897190429 939381189 907319009 936464055 859186957 958409025 263642024 391748548 550016409 676432186 888075609 913162788 897750814 989139515 726483120 924308844 336441752 486130803 991307148 997922152 120253201 826067555 62449972 610255445 281786325 951860048 352103836 910705472 334923567 412837745 394026982 557850976 481209402 492818567 722393188 925466913 169664111 211913504 507660184 512861838 63264793 228887754 277426125 663303062 242941764 278975341 792264308 831184375 534165771 696648987 404567827 935818444 286650910 791858104 462026255 526229071 527760310 966032974 813350832 917443984 669634423 970467844 643578038 989619024 940792093 957537841 813894360 879287169 706863182 804872272 460532697 737767894 838958248 969322293 431007926 802505308 819199471 846976111 255825889 802208571 306824740 729284175 704257734 810339849 565337590 932266403 482500267 811866668 774875861 780551476 283242070 301585872 1386255 889486213 65243241 937189771 167493973 984313111 632793792 843602803 905545596 951570196 237644688 614140505 795074817 954235285 819719207 964652379 986841428 999561462 308743987 666478991 727631318 746584993 532852351 931088679 876385493 973901554 678850945 790969471 76202992 325561940 551947894 646297922 462587649 903686897 219334255 466203167 13288065 428516557 424574060 934253003 171604564 741045189 276562849 938882737 507746948 852105449 449695844 544655841 950023516 959623239 949734224 959081700 513971638 859454347 667103932 772381413 267200165 389361351 361099881 556721180 103334093 680436835 766788048 983566418 673083922 737828307 143910210 213490910 126586231 707645052 401371565 888219386 359578582 483944582 785987731 938990236 401509272 470693664 77598377 738325305 764303263 817088179 413690155 604985480 978748490 993562354 443646820 899530696 998785889 999195839 151820524 635903553 594329091 957830059 769929169 965908709 163404267 992507309 33643074 680220923 131121805 434453068 815096403 995621134 435259719 815448838 275782202 851592543 572900557 939557480 96199967 181306447 168165550 867539048 903806090 982037240 982434329 988620105 445393393 515163816 132340947 166542694 590847387 690378612 252997763 414613220 237762151 854043786 12538442 819148341 761194450 837615115 455055411 939343135 774136919 847396041 789808605 829105988 752201288 865046897 669296359 840861000 321621559 918937487 807682829 864526500 846623477 932063861 284986120 436788130 481083105 775740500 455105487 692707478 301767857 721024764 24233889 688533778 502498888 920820161 600525072 666958162 457912959 798571185 581186411 976522171 665928044 798751966 501176127 973282127 166632751 420004407 177821141 711840503 598317274 909778156 648877643 667857693 963457898 976071299 617024013 723469585 626587247 627131129 959564997 980308704 190257250 585514503 421707601 968878450 834780763 997657562 271960240 928501551 748074143 983196617 37298685 246966053 19452320 181482516 324815530 779932103 291250923 323156565 207857162 940016091 674696661 798640753 854831602 861962231 744675718 800350386 799669514 893031503 77466974 265016266 31541996 264802582 559008881 953220182 210423081 340344202 236581083 622463389 749218972 966971605 701384045 905294220 974638826 989252155 650611326 921995233 599557120 651705891 912964797 937821315 258141930 836403324 186052575 731604993 114880108 332470982 408497888 590191082 108832760 715240871 190094599 432880680 435181526 602967736 748735124 828975072 976554222 980489613 445678557 595745947 203835586 706577189 17576673 564467608 375734269 520634005 969931407 978823720 474252980 527961053 799773870 977998198 161126161 846857735 350628828 909653515 969192843 976802754 720215351 933391008 583458819 967069520 11625769 238174385 368733769 771417773 800522435 996752648 990509565 993793636 860128087 982174992 936093819 987737812 790181007 825135992 975431795 990101514 485843350 719854573 345193889 587778327 651619950 919117067 862905058 988896397 896187265 971980331 109554947 217340079 994428006 999075659 708360436 757409476 900687661 976647492 566703031 814384571 877968630 944211911 70773451 117707503 4078573 243103516 964881836 989107999 402644064 992569365 103248456 622387774 967180149 977395069 392756642 735690895 311159431 515262105 983683891 994323693 993024287 995535856 213373903 580084747 335006708 543400496 372351959 553326308 817589538 966565464 677833249 766713019 267298557 905074265 733268381 897478135 445427173 951989325 27911784 766720501 748650442 890290585 246408163 674106571 514383786 711334670 389701150 634453919 237445344 332217751 412211429 932459983 13776635 570325061 43587788 968600175 187356965 464041158 671994845 864250662 8372095 969398249 778222723 849052909 154844043 884016179 770478055 866768898 932808157 957886718 170021044 692373630 161968755 420090793 609996021 627660890 495731248 963330513 788474178 929410084 889672277 964119293 692382473 865535378 625157864 858215623 42376538 804278199 659483150 781923811 465595777 775537678 107150896 541529735 934887921 959886917 538295564 741469913 979942523 989384218 831318960 986895063 832330231 966088978 394722783 953955794 875534485 881427348 848733431 946545265 158440799 697428783 888317516 960034118 848793946 873702026 313016793 515028012 815174930 836907556 35308363 848737250 562615965 777897506 500633910 607515940 34675178 676588502 29518124 890558198 19395399 375056467 329638603 420140416 945994331 950623192 809486666 942755844 279193831 992597574 723907649 732967368 698172129 779340417 468929421 631664172 293667966 431299208 327049710 844501238 482127186 612595655 68963932 117467750 898790592 935104898 374246691 825681669 856567699 887155454 415113079 542986042 269721289 979255119 80550780 512379518 221120715 492404861 77155018 296372532 718737309 778077277 942822283 977915041 281770734 674238608 660727215 675440566 644334775 749566108 723696417 904192363 970954661 971883335 536058446 808671527 279550498 369471625 626036821 785984382 163066235 462207774 796777434 800871905 146762005 659554854 463071357 640822021 655796601 992333297 335842053 531157906 414616013 926450265 380747782 699886108 391770159 516443248 851500961 958760684 613420894 870161128 786217859 981835031 281998496 745598791 370047547 450833697 948403703 991694269 326382923 964195037 384447831 671366358 489599983 864516145 419240412 527681690 903827731 934071127 984831061 994812591 295875316 537074486 630849243 673794519 343283399 952104543 341977247 891425691 872806669 980401777 830588948 938666947 833949982 891131203 929202113 982150982 565523378 583302794 939657725 955144424 812436697 875802960 602436598 813412109 308945676 564972556 304208732 919874315 346132612 449402484 893278052 975882471 494821470 981224253 125745846 598656430 271346292 506041676 727977833 829053538 968532908 997794260 732399334 994820174 517411339 908507329 305213481 574312515 161814198 206337344 379652779 579485995 781645011 972839023 941365404 977892043 376144735 792617940 834613230 988232294 410376375 492942930 182426196 695763601 524265135 913172882 581570368 883279575 869343574 927894431 830923138 886431494 649072901 797960684 71447622 222061653 900915337 949486342 534243141 955360848 249184717 955619111 535358506 993598403 716217474 749945507 17163865 722156601 675695653 908303696 946656361 955180639 45672929 407187131 636411264 698681950 509953147 919684810 481815933 551293491 64429099 534245002 781619175 943114726 778295569 909880678 504118481 676742564 920839872 931136373 484990861 942475919 518899072 672348746 383109480 422397314 157756623 260949860 743915282 913110192 881077352 988303532 821957934 929840078 665219908 811352636 696389260 799344663 271376994 654419981 26747279 888682873 345636787 919900233 433136923 598090311 732643170 921290207 606425967 972335760 554332158 926010746 33144787 463061378 371532244 834907668 643115833 929739193 954663765 976334404 804208713 962631103 187377892 609067849 270861281 311666597 3414231 700995902 238477664 749137278 698186154 825016090 282052276 744322628 862483763 879388707 303273566 559934333 214779069 823484944 379104778 950062727 207252862 845361258 913823296 950468955 696040196 846594169 890109843 935732653 895439685 958749070 563070105 929966508 308393036 713399954 573614750 925557708 678306429 895918287 44563254 631862853 522421087 902864402 944055643 986854110 160522077 798501647 378548592 521397805 844153560 946800342 628107896 719974354 120199487 557723573 446131707 907728164 895330830 930174302 466262536 576984380 325882793 768355482 276650469 797467285 118072299 517146587 480254067 983149695 339500992 494377030 533406191 623638596 852930986 925718431 672600320 827785393 446433237 722941085 471101182 485840932 923999297 988302454 86918585 492283486 637882770 773680913 573193079 806661118 154629832 596384367 124433515 785198332 273162448 441779001 377305911 654923864 804140452 845372975 410860528 820539928 484936147 896221116 813301231 959285393 675519645 722342373 878514774 900499807 218121578 336903049 990613017 992920589 464365247 698436049 584397512 790699198 430224893 767655913 580261608 867525761 446254623 739479137 968266211 998291794 332336234 443836243 468847144 724906605 757194871 761641345 162973622 976051153 477895387 512531515 4100285 676971038 181887926 754882056 978690271 990945180 62356432 120655503 310057783 675914576 740257250 886224753 252855242 865891676 1051003 286510910 704470828 960213949 921252715 943506833 595287864 677453397 227824113 498115683 366679456 915153954 347520767 686666076 704380479 992153654 333918888 669429148 648905595 837900905 729396012 896264943 940307448 944730169 501487970 978419794 687795180 868818844 948769962 960485186 395699112 462165446 533592504 619494744 137907014 591751250 95977410 112888118 680265321 977283629 528343138 820080292 902425669 990091146 464178799 848932423 357799425 687817345 268377956 762368861 418846200 893530876 649050963 682319599 14730281 593271192 146642753 984098159 872367940 924789648 441111107 930452226 539193278 682200131 147949051 521943598 617343092 790309447 335248934 394005568 501701201 874137747 38011448 229113373 361336828 591381952 496199251 908344576 122796517 187919340 682972778 885439523 91505156 901376042 220331639 412909121 163558808 370892877 574746462 818269669 620951016 996968414 154539077 559552060 740234695 857147546 444884152 975012299 125643687 826521892 263878062 670364502 635218636 710185359 455624457 966463559 504685671 911859536 849136766 936423732 899114378 922840366 46357309 812840499 130806549 132008727 370592623 950059569 351098170 721698615 483154923 776546516 560177728 954366505 228300774 305323697 249941699 782010644 136074319 585890422 456275459 831344773 8278989 602336110 351567324 882014036 345646433 919382334 412787481 877480204 535986664 903073970 761200852 778760321 578944250 601625543 188205169 685244158 903128245 948032852 674761528 893256288 396969461 599341472 361743549 576603799 656677580 789534312 311866712 872728294 249573001 253845883 196002062 398515259 39186050 710401640 629182254 820156970 605316083 770751440 991853196 994327230 747734244 798727416 369679781 549631638 263651420 837338167 280549506 637943185 180525263 207356316 555722492 818777274 229597178 856242363 26919308 207308147 105104160 984507043 789117777 810346253 250103033 616250334 221458826 879086901 994816872 998557345 141966090 582820138 813809757 828078552 111946225 470776997 782294191 974703442 527586734 789984801 319212679 492071046 762843012 877591055 340526778 692635666 407893661 427075631 772786481 883973238 406886483 766851074 977999160 986067606 942407847 975239260 208004837 544633727 625256702 942900238 353105218 925460200 263230150 383942307 798113497 989706987 614697466 633977240 741082205 808598770 560582175 948204891 847935522 937982162 700734466 805088239 322464988 698373769 21207310 639429891 871451476 903931064 341635111 845862852 859823113 902845837 949430628 966575982 359388328 422670116 802374800 986208748 593337112 746691046 13172308 214520558 794112173 940361399 934935963 944233742 605271771 689745115 484542759 949743446 77584434 377357874 510988937 761194501 176708105 539129030 988878926 990021587 806692024 828374822 210604867 841461736 391651532 545326921 213477684 615259188 48317550 290994858 227974107 248065909 648226130 671090990 672970675 891957013 237742561 406442938 106828193 201430666 883028715 943595885 934141101 961370477 935442252 944543246 307881492 754635324 509387916 873604301 187710111 784342599 473179377 476798511 770955595 988586336 588132201 648659181 376641803 903031303 511821124 882757240 314959594 980198674 821843689 949656545 313244174 383970756 521053955 845821219 229483050 478421408 852050024 972082481 600798384 943725210 847647915 854146371 261648509 897601801 121421168 312401382 172170245 467879618 841847826 943356243 648905303 703243098 947319948 970910020 417741701 797307296 139138405 499334256 298207190 921734645 442006059 744584386 338990297 363062616 368194414 694027670 876706635 946653842 5841812 867314345 952846439 992639150 684916582 697712206 74623659 799830077 455551586 944113880 129031998 213769727 352842315 940152102 539727087 981890975 573645917 992496700 124589486 455364108 990576348 998351083 567686033 798684183 729356463 897701014 780563915 910754132 569130814 876909645 129121265 961643974 135840826 663325818 977387975 979240597 985430119 985462452 502156377 758114939 642248439 895690925 889857981 973802438 908082366 961150126 250610988 262784293 277863419 835853159 218045897 728324579 75995851 222743330 407672648 998485970 443536648 728378478 198535106 974957275 251270515 739059316 91023706 286766623 371073786 388240464 392494969 489106916 755999931 897653868 709511177 857532201 833631523 925642677 495244229 822152275 493880416 787908215 172815086 830552200 177392143 631673407 305252907 614439903 241210761 898048528 852923138 873891487 344738323 530754505 582016122 694647690 872660945 949928814 804466708 811601408 635688583 721053989 876541104 945156444 851074168 898969374 328387457 613456055 538957445 765671428 107351966 745393398 479549550 930304456 743419402 929718428 259868281 550031021 214006646 572784263 546903317 623932409 552445413 618210487 84787027 276269792 496737940 938939853 718664017 972683480 704015582 859285972 813952704 872980933 620030629 690507551 754153828 995003217 669622450 700161336 930726472 976778993 366255517 403814895 879853364 912311498 374020890 947843642 21112913 69499190 785101194 986115512 621171999 705976879 640096654 753307623 93307604 695721187 897469279 918146975 127517783 471570322 625955263 842477993 606407775 618727404 553814760 904451788 653664086 910370302 820303544 854270514 740615872 903208696 353306014 586690620 379958925 715642949 834453031 994709573 760649661 934523319 954593682 971506863 964432979 996394453 328172661 517575059 322640319 335960778 652287214 798529346 264107787 409121513 150888899 921454982 381248157 812770620 551052463 557827779 213812446 954333956 89535538 997706648 910912045 995771764 294102965 945098875 890036513 954637706 504254549 962925439 819392398 864902779 336582864 454191908 842462792 881178859 356562198 774329424 630374648 836024074 177051698 840715072 8119322 551736784 498403820 932019168 721484281 775842453 973535300 978564404 47365426 581014808 181819475 285698889 261603294 597716126 58802605 916148246 696942267 709688131 237003990 294019847 572688395 702765581 27098647 203386865 96043929 965670438 732453082 758278691 92427192 592396090 853553211 872453238 97053121 840984919 988004862 996933166 788828897 840766742 594351813 821562306 883903241 968614793 586981510 905054893 960541782 999552108 519652288 813175865 354598105 435423994 579396011 660877482 262940620 561543885 742542996 912601997 245590214 248128235 980954938 988116756 784354101 830590948 747633416 803187869 141091704 443390864 805497329 810963414 997369707 999271574 3479187 482940170 745459999 762617513 875384391 922380992 249108732 696475675 66488471 901249724 305781743 989079919 374898491 802429745 19773064 426636781 645336943 983197430 949238615 987379313 855142301 894581941 82083427 616495982 424352884 425220455 684319187 819822328 203078828 767250925 317288280 370404794 621061837 739945818 609610482 862313074 944571414 968641487 42908358 409998979 135077680 874497152 783619863 993803317 122089066 996681163 552989035 732876266 840165776 896209605 733144635 968166139 756745418 880646082 293682559 332403520 520036661 750981641 962218012 991868863 640926665 842882827 877881825 958821102 483075095 577459977 716715587 800641983 311754440 818671487 259743842 869562671 874799922 979565948 444865056 787849274 879068520 933624056 293723448 777115586 414465683 487069407 390431415 703540920 401462546 672177238 827819291 854579016 335165863 923414265 565724483 648265984 578869440 760173557 435376112 458670694 346317542 678678127 807919696 945816071 710864413 810810566 911518720 918608379 786914822 942518829 852097868 860444831 250761662 417269891 678806734 878427123 450647340 848334560 87691018 460856597 574015449 827372944 245710202 297492754 287966114 556676922 20638559 944253964 554733231 735465774 221852354 379088410 993355616 998706932 707364804 811464621 803166565 870548654 382632389 498944845 71726086 853225816 625925036 807570401 133690023 759800046 524881817 529841762 267955947 611280945 774254992 828730797 639969957 732522691 206969566 643982907 473205840 647541314 214281657 970534654 588497738 757775357 326964920 350684004 429752557 532821135 110712233 373521079 164802210 855633687 353639825 764732880 883933435 945932832 902954838 966066338 711955786 722769705 248823659 897159667 247403395 574777884 512565858 921062662 178399095 868186146 794994314 974710201 729831419 904759956 656965879 691272441 688640138 854406564 513073813 860015512 612380838 833287138 160265146 917442617 883368145 929853035 111194769 125689010 100022071 812971355 831989171 938616563 148691320 262051211 575403473 626610713 328840085 909134920 388464330 882528592 235186455 931603307 115044297 917272789 137627255 215611168 703348382 828353827 296479322 661523909 901669173 980496912 973873264 996496156 434215715 692291996 712601292 801137590 420711736 500441425 415238242 563141562 118430446 554687201 541742444 742243325 619509158 696842057 317072991 342965617 289720647 449725947 966196274 984975027 482099405 610697410 854838525 960680530 75106022 379017011 679844846 698209178 37367382 651569018 449924685 711681257 460283049 936363311 148262098 391352166 70735789 940728593 840550917 961459989 325750849 604769641 936292018 964132517 908450821 912505666 254178858 573347009 886284780 943590967 368932461 970521495 273369675 355337285 883765294 969100036 623322374 650771766 179482098 661015046 920175787 978779327 509799193 571336609 543220136 889090144 316760959 662242945 996262162 998726325 415551787 754975909 740348740 911499857 62980593 162150215 242687546 775251521 648220928 909741290 545144550 937041134 386957160 451146638 746095795 789693976 63372872 901601245 170899080 787416641 881406294 896412306 256348232 626079898 359361024 567076687 385908528 766464377 369705246 856651001 580805310 596817369 137452849 473609465 880557810 955918457 316184851 849433240 575619530 969849893 937471177 949065074 993854834 995088950 224577184 455852732 278652249 893460118 560905975 988936565 781765623 875792914 152432680 370906796 544642916 793440628 458645824 883142216 548530658 977030841 794557242 992686799 65949062 481636005 383192450 973653416 242519264 472528583 837827110 916052777 31753838 376957212 683493793 701017428 770310364 931660268 545560737 953399741 770032813 936195255 507169822 893439714 450645465 835084450 368830871 577880273 789641039 824813529 585752232 919413697 25337369 688242918 112080105 487176024 713694300 717263812 24387145 956109162 519523069 726047431 99131628 463083783 741780736 754255452 425845348 976734385 471062122 646042302 860995396 992163664 538707725 790983545 406920196 838575593 175222789 735479795 831983505 924748411 41562913 455533498 238911772 491140060 234808248 632066129 99998271 812734202 522441957 661779776 16754662 580448665 306660122 372238983 300989815 605119188 938990976 953609319 656366626 839032811 1455416 225697147 350604477 630448458 263179409 979099080 159406630 670388477 680999556 700903785 967793615 972929708 253253917 594715995 501915717 646150682 11489787 746022432 520795486 974995703 942042710 998685878 421161374 610558482 310725462 717050177 326259068 713005348 938330775 954313905 745081791 969035637 884759270 945334187 286734669 944226414 925156155 993039133 833884113 915593386 59117031 400210412 291969323 872531239 691304270 741438716 184395605 962218235 376804620 410367479 278247964 546651036 433725891 610230477 300616089 846203353 913126677 973537959 167853082 468340960 341950463 704158792 865173783 954107659 526381633 645846054 407887777 932686068 629469371 856081619 943155466 967744880 895878820 921612708 209306688 427510635 199129910 599099235 921576761 941568487 253339620 465267874 69193780 516713430 124431043 971738088 496505826 651484909 821899743 947634999 308399226 466018781 325709957 371492908 943332243 986202520 115501132 516096805 819596872 928445178 994458871 995380158 936203189 985056579 686628894 891033384 225939651 254781056 357518953 746989732 106320410 694896702 454403453 988254285 497076821 695306770 222528168 535959569 525700057 765051385 828664634 913425363 678914518 806307376 193030263 680967173 896622812 964221412 171534605 570682706 46281061 754352227 505532419 548937509 775729899 827204132 77852162 244428451 861566655 951665912 341259746 447289945 332906113 740243505 460716573 920481746 473892183 478866477 947928347 997889752 359122582 711988016 988628557 996295732 203178666 344834708 216738857 772083545 69582245 721020109 562407366 627776154 112760365 455567678 871592948 902448898 964928045 990330609 232498438 422406511 840233572 907050624 261739415 392096856 813467838 977252470 505281650 741796938 56050121 97155200 835946378 858903005 414803902 955855163 940372894 977382929 984815181 995824221 392086237 433718184 692430576 790404123 710215550 747884240 613653365 904583688 170054955 863392187 164688674 582501198 719485102 921136813 525406395 767311941 40474462 146822812 885739388 951212871 95711744 273903239 926646226 951922406 470919946 696686537 888287252 990120482 432051305 763089712 963229090 980717482 597096111 680818094 254021909 397214066 376257544 849682489 259336795 413876445 896136070 922015270 894505266 896595929 535566778 946813145 894034709 981993560 273847707 938144279 471908302 729697940 1730445 561290353 824945596 878060399 700248921 793414868 952434740 968190681 59476648 889093781 623111965 813980673 564130567 735254668 696639235 714382792 228444240 350412338 721118642 905025402 547079152 871495946 221492993 659591305 912701873 978736704 701092033 862041952 656363955 926826106 86257404 725047529 513707635 622327170 960998241 989864718 798142291 997899047 874926662 985821419 836223060 909696945 173622269 979422878 287663703 662768941 556269862 783569069 565838414 686171947 356309486 928758088 63326828 386751100 69509625 432926747 686225612 706463258 349351080 779637457 807159826 941726152 909586498 964146591 380654089 758990445 76958851 153895607 955560241 980981434 11158375 610594193 247758408 469039827 943915510 990132493 387565631 797441925 748397841 920705399 779832794 906056293 532415017 684835616 816424989 820317895 484408888 643294790 711814314 864960880 845520932 865096293 943641297 953173561 40193826 733694433 747479994 889415271 162661782 266182274 709220231 736874892 813948419 856310994 362523393 808840943 552594770 714157451 340162963 791752727 581086933 855957287 171286583 862890763 94214989 394515090 672928914 870141685 631773681 944421809 832726841 837604745 339234873 698099723 273499468 902178105 236058029 952827849 99959733 530935115 311604880 765317776 453947042 516286802 178260249 472583247 363084751 943868409 513979851 685943447 73281378 630920982 551316216 599143308 336180667 862859250 943161959 997864721 235314063 347739635 484468966 581739048 16032683 771560661 870177972 986250096 848237818 901733112 157723422 982966825 553471131 964150474 541239231 852170733 148684378 520816089 485942271 771800526 251614592 345744650 87331449 453177829 112274392 756434097 87810558 205216090 413588268 489999666 79889284 905946819 987999411 997284773 983731106 999220461 407140324 706195214 735390702 948691045 996562840 996855644 294838941 761511541 787347092 864656321 427218506 809282841 914349708 985474633 75270830 804011688 696743584 821224810 525421193 840072131 60218947 983768226 563305140 770672801 997994940 999125017 305700698 365869897 24032383 733638955 612135353 674892079 232935545 721483070 942429362 976331203 378090783 446513187 138441983 755445632 527902526 709313092 910761193 979430143 61875279 714170015 678612742 997888616 883237351 934717130 456100048 992683233 423968160 775219148 970839221 991742519 626046430 867998778 869724000 973129210 693950694 849675069 332476784 675822821 319460528 687931408 274557281 521816545 82926937 917727612 438383660 880270035 701753931 798451804 27303838 153421236 768946030 820359916 347389455 895853364 122316312 744896699 298317202 504811241 200018904 565365544 176089950 891044289 619899565 672174356 878397829 892548907 438651410 731747187 3507279 224974490 377981480 546989807 806407343 940399201 196867303 402500687 407542726 691064883 991330453 993032543 180984060 601236340 237235097 979836024 977575959 995983393 715708222 965846158 388306814 484970709 590920805 612611053 656456071 796396894 200334603 563480654 597356459 899306526 118804392 313979482 917730568 980369824 750047929 970052827 711912929 783993656 680634375 904614929 198471274 805012535 598582874 978206718 848399356 851315354 739425459 802479323 534543906 845194256 730010416 817204986 179540169 704229206 343350821 360761673 447869421 813127514 101959646 483736739 961821018 967999263 382735793 862804669 207326951 897137036 748953414 827977167 720468038 869553475 808847001 838953847 711138019 983096619 682018331 747198593 906422554 986461426 849938869 936177090 533143406 859523179 770331508 786860999 338664703 837337889 909717496 931990106 351202144 625183503 277419793 548897581 769383999 883513647 172564658 906967266 787498540 816730870 761437032 897766490 387211183 880773360 493201047 663653066 514962897 919283685 751800977 781040569 929956270 966472178 645924927 697926613 305570807 848864769 755744631 948664878 772561003 789013086 727602752 734760642 740919714 830723172 763258276 823083576 557320266 921952771 854005063 943338701 301151259 887033131 330895568 584136869 103564867 729800073 800806962 866141147 926699411 940889861 105658583 367289614 632319608 916516888 629794967 632644956 222412895 843198770 124303265 686060444 186161573 923055684 510440799 569311956 792343139 880221193 578697043 982439135 479257222 937299770 449980439 855002336 998489859 999086591 638926723 643939237 913550985 962095653 121694283 753562104 631328096 752212394 99256830 133141777 811916756 838794999 291549971 451995542 76307488 712698552 170770696 798142377 442124027 958689918 158960900 921950088 531897329 541593255 362460617 666156656 581055219 716933770 867460590 940942606 376218417 673604924 826914233 865492486 430647723 953796740 149634322 837099966 586543108 854769043 60101829 901639024 315468671 922786043 393389257 878249700 634260872 791849285 712415762 991454404 204187153 328152330 204681075 384367014 984613891 985087992 320555127 543556485 346490308 664292626 140279486 631892622 972666667 999141649 925888967 998643155 771159411 892552818 594920454 677073818 794155178 982805624 804561113 930363484 540592085 928118266 950240618 992077246 256998206 440580726 630388684 739758940 597224707 909116309 72752163 347513599 73716621 382650098 340734557 675438394 469368915 909921532 897959050 908929309 928174691 961572338 498808562 586160711 275593954 684360255 485507589 928995068 404334627 768678288 573818953 582696204 337480761 992130354 790265233 929902075 328769282 763502661 124643517 249078201 485122011 539260849 976072529 976659167 277954481 356694674 633213600 731701286 206788813 571851673 62132725 207335343 571650203 747959635 576412583 650734908 395191645 976539496 965104883 990361777 990902694 998228741 474063917 585104912 873551025 885029234 795117588 947277305 58908130 116082548 344306943 845272975 881780395 936020414 549796096 902193669 869819788 977777183 25710098 491300750 808970451 946675121 43417339 686697844 712194386 867523193 420385040 894627180 386767137 744957369 200958209 529774255 71181290 398441186 186810926 598884919 195233408 462642687 525018539 948997205 413450321 513445106 435257176 712355722 142085878 853881153 176322357 283092730 597764625 684867549 380195680 382784149 149478543 733443111 661219574 994857083 225906127 632121635 824312678 839982664 659917922 754246579 426510061 659561866 379169717 577869963 229044344 987264913 199799781 631326521 478014088 828243672 216392017 908975139 577035780 627571060 595190352 701406431 19492945 632362017 74912604 183758694 443689589 619347789 795648127 895670583 910720869 965660108 358375707 366269015 32810386 192012622 442860986 472914104 924241774 965006415 728617544 958960502 248156081 576560368 231099221 808389852 532406341 965237744 373962837 419689728 769836486 878174123 334859151 509300604 8579257 349371628 711780725 896439016 834198663 867129104 305526660 793598428 48935729 457179945 421349793 965476531 722235981 823413914 584918706 618544793 430950234 564041804 931871770 979976480 805542263 930240560 99539385 101313277 674535224 894639538 264975901 775585351 240025552 972632890 801848598 979142337 486948986 779272336 474431466 900567252 423043342 540023660 712073282 765190894 98723911 756271949 466795313 684927057 805230197 982967145 479278383 531595284 951497603 999471977 598448818 691915692 981651564 982145969 95030462 863165058 173905694 294398311 213536071 218395354 342076598 446901950 120342721 897550708 895182788 920740032 206031401 637252772 283270440 612992552 552230317 747081376 859645910 913336336 995710127 998676215 150591026 271035910 415046982 804462212 450371009 966219019 715203816 996880896 918362982 944895316 106283495 160698482 750635035 894310628 89499948 403193052 545129575 619799369 780268507 920006113 202735121 511084199 540894812 852867925 670594618 796408265 703750526 881985793 909892335 919915841 995326636 998546920 894388941 992792852 268630524 655716760 413398629 903387831 601674278 971354089 932744434 956562927 914570386 938424664 474654831 935969697 295770855 851279116 513438400 816227619 39417358 470611785 794866738 885487867 809616583 907211000 888382533 944115105 793825895 892637338 321590146 934256150 134441597 481140554 34134323 407694045 648865947 795623500 728061873 930381018 101249044 345470592 579376270 899231144 406379625 941857085 715327365 994813148 679898274 833040680 513023005 736311694 591956219 812326823 660539751 713715444 516134323 885732728 103456619 876114790 622742827 922345970 474591985 716209607 549090441 834614395 940466597 979521312 138713553 241726807 985261613 993969302 41148263 870102576 380331345 790076355 217335199 417976539 997230372 998226367 768621856 827264115 89308241 927103676 270649606 695536091 850258389 863814112 534646341 751159254 872803657 880179459 935637453 944031980 67091797 561731963 553851474 855330688 614950957 913990054 907807161 969068458 2657490 190920777 899444629 952768476 932933724 972513985 223186146 590398064 57089673 957189903 369079047 970481762 868024050 948598388 873139216 951069267 73588863 764802052 277819529 358221251 882095200 957454084 623430316 785593132 749111917 944824193 314430577 644286406 511095825 628981965 668786199 757692421 865796464 918153672 498631958 936246153 423105881 678759626 445372886 659495334 909712768 943437429 487551418 504376996 733729855 932760843 504771642 767227411 164002068 618090142 825284548 945745388 481290552 945726522 557421106 868167385 14937250 490449051 331433034 459316215 306433450 495900471 129935108 830921018 209347352 689387849 94385557 125403013 122427919 461165327 238208276 365337758 525815271 925437172 179076967 593462864 488280896 580626101 131106024 512918652 726661885 829156489 871768262 963532312 584404390 951719205 629777747 963512174 394591707 494539260 540935425 928100800 74656269 606550622 848625785 978026412 605565638 661498349 827576521 906064010 820826317 875772166 519817478 803010181 838007432 872276870 372346941 755847593 427193540 456033481 963012691 973409049 388039530 784946134 837370965 856279839 540947513 995868851 803040556 916295368 999710122 999749554 293796166 837549650 658935532 984086869 767883612 823113143 45618967 147625688 614053830 881503072 703631954 996766662 686455861 859430756 604938205 856833909 708037990 892525456 454556274 781152521 205794134 762013750 261679609 824200943 435415730 641960508 53451706 575093907 730585472 836378908 380232296 477130553 849209102 853493093 83692529 915121232 607582508 853665741 326238873 901885910 281312912 711672823 851459264 983054668 958048894 980091983 726178271 991205576 985915820 991931996 994626441 996469962 805063709 916464050 186439263 300242298 503826739 634744857 106343895 706519181 630872821 857387581 768082649 768848254 425086990 998237136 134528590 193524797 486225508 939224387 801867955 960927571 163073609 744902039 687603413 911004787 942183443 947184163 428974581 496168031 514065537 532713058 860285160 911560482 353463159 818878364 644898379 934114268 439815237 895686118 858191324 922820892 475517621 736339238 271802966 448095699 840043671 846025998 54093552 424287087 591201817 853860629 492068305 635530561 687549355 985404247 501085928 667588887 599148506 655027515 893830876 900326941 48051961 618973710 987615862 988686822 932482744 947610223 285828894 373351730 828279760 846760552 356128827 928493178 735405417 909698928 535157200 667321144 987205180 992520226 916985190 919842044 575499964 902611183 796701602 853867808 133870587 240154951 515693369 728211070 855468302 990057612 795442802 904509925 906235808 923904686 819611731 944323803 631459654 800341150 617195557 834461158 575383441 830004590 749539848 766900635 450168514 827370094 945717302 979949020 676245884 961527030 806431747 822399880 849139289 917203458 712265798 728617389 586865643 770759944 580576870 599930783 313768714 837056108 655663663 992786703 97903075 394876709 39589978 271103150 87926822 868205283 803907992 939359962 788817691 900193120 79568077 277337833 984052071 996621991 244468370 364842570 367518698 687354699 353781618 897676741 457528235 948159997 137851147 698628984 20516603 283060682 490510555 579338216 363831089 484285171 349867013 605398619 190340199 325195834 926482540 970350895 911126171 923900725 844675868 871409683 324390429 582624697 136556869 194702247 401190975 817801145 430410452 926181006 444097798 821430098 583971850 998194218 598791024 702419802 277506748 411870738 541186486 830568803 665826670 847996575 58704249 778004079 57469096 680060068 6602343 552747679 220728945 532938659 160158397 844144298 286260127 678609107 889734379 953481208 247281076 483218095 574281284 808696583 743474301 970630774 841631239 936424129 147941413 217107125 213510666 457479492 754566864 972903435 126175037 869029662 317119542 718156457 327521542 931324003 318175647 874238843 306710513 612641000 578362350 840492525 367913426 393485194 179810674 724000189 310073522 741114188 839071146 850344124 494583310 964942222 162580017 838580632 339310719 565776494 186542127 443573377 372404045 911921718 975329543 989061750 109130688 403065014 249863487 775159226 823212285 984865173 685279404 850639428 52175734 148538563 531375602 791013756 821409522 871008672 380306649 526872473 839602776 906601276 427497499 453986108 809307631 941526916 749228926 855530520 645002223 798745285 367850630 535309597 854234884 955536279 518468102 572563739 726921187 841195485 369525395 580162250 888952118 994495753 681010280 808854689 299257880 460618278 317337543 910701711 297279356 809695848 208670044 393420859 678824149 952491345 336293995 922445613 393149101 988263439 361148452 778085587 407737844 476870191 263188032 828137019 380648847 755398438 456195458 828108397 882691213 899560988 220473115 496250839 269548686 416364926 185053122 874890704 689002944 992381838 478395660 596830405 379390637 631313391 608792278 715762274 131978234 133768101 777423908 937996530 334284428 587196014 407830077 533002070 736085200 737629666 117581108 533588337 276686150 577912157 454286713 758501509 113692444 457278021 91926872 153120772 445003354 698401748 770081836 863451859 763265616 881463197 59339854 522512263 102141897 685336678 791865987 927336021 251065946 288418005 125359001 818786345 856775617 886172768 547673976 698167636 6362185 510471622 386457775 431826429 190849734 740545403 708036120 749034582 341751981 561731930 588738255 633543725 347067308 454693760 99172389 448591846 892456050 901871575 627769820 841228940 15764320 304353672 908563786 979882750 480687674 938011478 693051522 714609700 762043803 794664205 847361189 965277116 162163106 389940004 860366446 950425549 538495449 541591145 172584491 370417292 700240032 924390929 920174554 945306829 690719762 748986366 940418803 997575485 962690843 967569683 545085968 552321191 580063475 692157754 394344689 580798663 388281112 405952761 337404603 752912292 322784566 905691328 854739519 898228898 896879214 936104894 511126541 583571701 560666612 877293777 472492655 971009559 125788611 782548734 932842838 967699338 750597516 771050578 286346861 613169420 844649461 845922368 313115067 888090569 271719783 670008698 394282702 434898349 639339019 687947272 974140566 976803609 348383500 599784222 406815972 941682900 151311062 383590242 997905156 998129391 957463752 983928812 915252417 969619749 152507820 253011026 185205899 610901534 92364786 195591715 648849079 682145136 502836604 622947422 6010393 687048107 230364471 473685949 212890673 720879085 904135639 928755522 180138758 752337648 196694739 844711005 943570672 956688714 67521641 721729905 253782020 591908053 760350272 888657480 104732625 436359510 159621923 971885017 123600614 229077477 566886605 652847657 24429503 602649304 862437018 926450011 104296525 452785537 671432197 745417445 847986525 976312771 14343490 55899223 805807614 861498779 66578312 520782913 385537603 535569897 563596144 970448593 595193637 966061127 538150129 710639642 150820215 583684277 166058416 642521451 317537446 581558992 890368802 950811614 48607452 129994746 925694734 944098997 502721930 805551103 936349521 962998700 981981539 992824881 190774658 336832612 779302484 819615574 26580159 979241899 770620064 862806118 962170274 975827532 686892542 689869645 983260831 994079873 118567422 444102962 270044918 582042474 88983092 153499410 109687268 917635672 6824977 115654507 927647364 989222318 553755142 820329781 322321548 576235610 483901639 815600285 392031026 930914244 726835422 867363255 952996804 962604418 225935755 702115668 7799558 557895084 245822680 741772969 965474177 987623048 989811740 994405404 988745776 993030656 285673088 522320643 454359465 541097035 995302869 999962678 54628914 207809058 248487029 419318065 334196712 796155735 28151631 35280912 947088993 985186067 188743088 403288082 921500631 924103414 65247205 638850634 579340715 951051677 7882499 936639705 199679969 240810586 473437827 702392955 632111372 679337935 377233963 648439947 424650013 826376438 40666814 963684302 40529715 72492548 368517637 528886073 263606102 336959673 990360507 994980488 62883455 231160162 93845196 808869791 321219942 880707168 460929219 914616113 873554722 980138606 3790914 512453389 138509251 265111143 431697219 745665206 972711567 979161203 424287115 424633034 139548116 585726757 812747263 928492031 851196181 856548029 814592435 951563448 562425433 583441147 555419655 838390605 416889507 980221844 733906445 788965828 568452258 663854024 950686649 988077331 969800065 971773893 236159490 591029350 935500897 942236360 538277754 758758279 345230244 550701304 472624176 949568799 974536367 976886128 49362203 155974380 157425138 809597718 957013576 976500925 229241024 905925309 914955625 979233000 771296982 875157741 389632232 945214380 238748410 323132492 873372720 876653028 662223563 755563220 298926090 680235821 546661332 955027884 335977570 989274641 832422599 911962943 513548422 531703512 52804715 190803065 330221371 851857311 171184788 620880191 154792403 212418683 365256716 914825568 115489613 656621119 778032174 892444451 583891580 744002712 321846219 727081346 140398399 548315119 80474961 86328344 22460861 430545030 717164661 983877172 671298291 731563505 943228374 952265848 497633196 632442502 686978190 927211221 438386418 649406626 998902635 999137197 295007851 355299724 190042493 555993946 161438313 845253976 6856390 293384306 689914625 851578791 126173041 911454197 23206446 347708424 241759744 850124342 677193692 871058953 338603687 566481536 463602758 552205851 688397400 765005673 164051094 165791781 874479071 895279317 595422768 871923195 730584657 963334892 196169044 812548434 280056011 554676140 917802969 986865053 928316712 975648946 705784248 721015625 857108016 901064819 682811770 813839605 696161948 702858259 91606890 969945964 718890945 794502980 705421019 785401114 199684372 353628498 964517058 985114916 658331710 679182474 839891193 861143318 680311844 857683431 460150287 727134151 955873347 972299833 158819329 651303999 644617466 882650460 332717997 841129494 806378917 861272321 962756026 981552649 764205803 784409239 486116289 897950472 60502716 409469710 253999623 647671818 926720100 996256670 287662786 352944834 322238092 697866871 566111426 752605291 367013150 762596914 829395043 945541014 517922506 751955198 254440604 418555505 75651438 744856286 990821420 994554208 528112664 868617974 518426641 949645904 817179561 855834890 210499574 719483735 411785658 695221102 363632493 440138859 255669111 744069677 232422874 233652062 581965204 583554380 668121764 836879879 451780446 936637020 945504897 998550878 289057564 423696241 703380372 797211839 711262280 888673609 885601642 952087169 21096484 96929423 905595246 982836928 143402480 654163049 393136793 894932780 65499757 958060847 781463561 796734002 780244054 961359332 72702570 558323653 836654806 839237862 692263733 705130770 245741606 908371026 106408929 708574747 776566641 959250799 688376 842410857 414899548 627924139 623932559 734560063 912945619 922627586 838592791 995881736 596299862 734083046 686409464 747079574 634719920 746464705 783409842 852700637 42962073 312608218 766342473 798045188 233473964 428869969 665425020 866957875 363397437 688881993 97401082 301550400 910317864 958465607 589113380 698779726 278712308 815280412 540435646 654431457 500961868 534163755 714756725 829139917 364538475 795433214 966388781 975406114 940616528 969822581 766667890 919848664 11121229 324821833 486587711 615465699 975058508 978811356 350756117 661608640 402062512 827481824 959185909 982750537 522134437 757393432 481354225 569830917 275486153 749962864 523611539 717763596 429216285 441472203 341479571 604448662 790323604 984415723 419665400 794861876 653288493 970881577 6647535 686201295 801737181 932118358 40212129 386904981 294529380 840527913 191384700 434403911 919350320 978943570 567967082 574376360 462108336 484893073 709542128 883552415 670546405 772411943 876216459 971634895 188479706 435798460 61130226 129297527 910664684 950549984 310831707 752998846 977767822 990830999 311225568 957182033 821813290 918060011 562151235 789557150 500548378 782320140 929947520 998920280 688887098 737715509 893322910 992698551 342219202 709378579 669278386 733313797 721445864 797677101 206915308 747425906 142369513 917203680 904779801 984553567 456881227 639551779 870365782 873334485 791182289 821551388 908850256 934947270 90132985 682269909 836985541 968627409 849012457 866755037 75557690 311212832 836209343 996940585 344507600 578847651 916615875 924528056 707279309 946926401 152709282 293820583 365787080 587681514 634295482 646616463 350108749 755368876 889914931 927295828 818945706 928797085 700953391 849850065 10904646 169596044 384472267 395304218 910614704 991142591 800049582 866035902 36931895 709720746 238443653 589834351 455924522 869183968 81579802 391948699 474132677 939394214 811036076 971873530 938531316 972225043 935342800 948352051 24481761 412903272 530670888 601662023 572546309 637941073 453415182 505578822 736068734 988373390 793793506 806295460 80450605 704654111 87856438 614787531 388851242 727295179 633572601 745123943 167990779 798118536 826874427 965924154 566893456 696330421 502323950 998078761 115616056 726079270 188937983 820332957 569307292 697568849 232994279 967233096 270084930 370917498 486717739 644629265 108901268 300796111 599364361 729691140 80674325 104707502 931092898 967149639 711225949 868488526 787040557 944710372 105263039 526726697 242424719 987844245 138351755 179777784 348968251 507131810 804718962 968775903 427794702 926854802 56519425 502679697 934865794 991105742 435535180 753816709 699206014 973835506 377740873 963416957 239042552 749617207 791282582 830309243 142763719 791616013 684335962 935525288 530779162 958604797 913167094 989135074 712171705 828928563 185200791 670394325 44931462 986303244 376252574 526726823 181674230 653852176 940921095 976716401 783781589 887227591 560354057 656625795 590791853 648405062 152757958 412294750 988037285 993625741 916583626 957675777 381821181 821713113 770035450 845452374 31035088 565122077 557495957 924577249 159592948 688019662 608619474 861054137 269931152 591679613 503040382 743726629 906694349 998602887 537994078 730133581 984382128 993493967 582170789 951505645 967208886 969284740 442615535 616264358 574874807 611569442 310431679 327458151 294729124 906946609 273768128 290390673 245981048 602172381 424905881 841706175 901185464 977014504 245508986 903242245 338965771 464438233 244078171 987803086 957310759 997146050 934850214 975740284 241126923 815817347 496616023 982238149 408189204 626771985 526326101 692672712 833022844 908092387 630123544 800540047 422946029 490853519 278384423 286982848 957078695 957426917 378953932 990288883 759359453 929951225 981859972 996522828 99170129 856310293 837464505 882494897 501046657 842092502 302597245 940796928 169705869 875743450 861444686 983919211 714190989 757699908 883455003 915279628 758498815 916354547 912218190 967973410 174671071 751286667 468342983 800585560 796461712 806103772 607282960 675710027 718629980 903534644 994598095 997109173 414595587 958999838 550483229 994481336 355889442 480472209 76323153 490569238 581337041 689981882 57548976 696115577 764207813 773114565 600788286 944592345 169290155 474569560 881585388 979245619 8835864 154981124 936758467 941128701 175526864 415272078 54525912 471572918 196688724 568513504 235377099 562410246 437998818 582459252 762599235 786449501 670420839 791947070 988049489 991448455 775031400 863662747 491832295 864082353 794071923 850877817 337173041 753902784 120264782 736931425 404192466 593533895 934324882 983454778 40211576 591092199 773888597 824704850 989152570 998282807 105888421 465592259 124106135 485229541 81250864 355460913 292377265 804914767 119999070 129724302 880541801 888045998 850543809 894519176 726604584 811884602 660745012 719440296 179976443 431930532 934789823 934993086 96095107 967249691 248357399 444972723 958851474 985748886 508744421 872880767 630752872 897324932 702527053 811259670 391378888 696634688 951097056 978830202 435013103 874641171 192346359 406985855 303050924 325155605 113839215 985713655 914953716 959538358 174158904 487642450 415570720 791169595 345280645 758020967 759268563 797220688 853735071 924325427 235624413 293079849 258758197 522183654 423545298 935613165 501512441 637235067 53664950 348230575 683051339 956475013 475635560 791184269 799333803 920701735 393925349 733994410 245257171 941929302 608304498 711554612 243953062 477712992 103693029 476889844 741439306 998703976 822216906 960305420 41472753 259711034 985303653 999472964 762452796 795039780 102904829 264431931 420474608 916152872 944315223 956125746 951322532 958666917 693620891 931655794 19523172 946069082 84315006 666319418 391042988 486975492 724130285 763019504 92071659 276927234 808085098 972530525 385451644 974737827 534076029 655404843 665328450 925029463 145854431 765153779 977361034 997316611 777568278 952131387 360275268 444870896 800607467 860464171 848561158 950956479 624505321 731919567 110407274 642927162 933389556 968906264 471266935 693540888 403675258 554620095 718469021 725125906 402925242 944062469 289107137 996370495 544621850 993595770 410279398 695554763 296412392 512194672 81027206 291946386 4208097 439950732 231398908 312248934 817467532 921537246 953065908 995557726 592318550 877948832 908019212 935086693 617924104 746936596 103293748 325919608 677666709 961865901 81523298 368442128 294925477 460810684 649688022 946630440 900531885 950726474 608444270 849708550 477952610 932129520 437817153 873314706 358451332 935054024 180957489 740290468 416744425 683174575 18792851 387844555 97114845 671395068 549948473 639090290 225290046 311613523 409301246 905023379 677165 337330694 311377735 526266769 31804211 715793624 985210861 992216691 337982305 940376498 568181033 591434292 16784958 746894838 737445266 896041453 273964340 484617840 717373384 762393821 226102716 631303907 909217506 999230259 275269694 381574528 827190717 917695310 698510074 948053106 652253159 928979322 15965208 911127379 854515068 987538849 360446121 521388732 396803627 822336157 690665388 793301146 975433147 979722038 655627341 901699557 569972071 745427914 822955553 831412083 654617149 724663160 555738964 563248676 461395154 829373882 977270632 992735141 369377584 952148548 73928862 882094088 706904261 846410816 769865960 887220632 542672311 960275794 116495195 349099765 54705220 951943080 667616661 752546995 530560081 681636164 172755330 755110613 589805278 668591459 260136070 609460437 809760002 815913651 809369383 873949316 83360830 373361460 72835927 236163225 51154782 712376393 657008584 988565782 453461230 916467000 117807078 133624613 922932535 956127733 88036891 456733194 410376092 643320993 515109653 840004281 826490502 902888918 282998221 306317562 713429910 846513666 867748124 898650980 191144751 854757550 590775313 953438306 304467715 333638321 374289786 998519104 530614750 821174162 391635200 466773030 521657647 825962665 831888404 927413820 459651353 957204271 219373721 254398718 334729375 575805596 760453212 771666258 289175304 645200130 882535612 934567567 425272510 640460764 263814861 808950828 707639900 892695385 91863145 156581093 303973068 589057686 6360572 891514147 228719542 558803990 160289927 576117444 234831 823204104 961102502 981237927 59799753 297381062 276679277 991131328 268872592 494586024 247919019 409787689 527542070 974198249 939906327 978034904 109615818 858998300 59581282 787481887 355567626 934993992 234626222 841447405 915865519 939318179 503730819 683153789 833123117 996253693 940012039 947656905 291490308 624890099 639013753 817930049 177729826 966319742 198043730 496175222 520749105 904720986 385335159 479974576 193780777 636227821 644872956 655488313 508534342 657246395 252584502 424975900 938051749 969605647 709142390 753561129 864961641 931939160 123497604 293095357 90077510 237413034 123445968 486641610 146090074 211031581 898667473 943208234 735391078 812536606 237329017 365798859 119792767 681940724 288467442 792985902 433852509 929366416 676858006 970617155 405803276 660236730 775371731 920728213 659339220 957803189 347929267 413149798 60299679 326516127 249239835 914830025 960281554 963418580 464499357 872003638 897204429 947888289 226700871 541792662 53828436 315485631 652814050 957051706 654499995 788745636 676156190 715934189 766230759 864621061 502286798 707372550 83075915 517090240 698264492 870141383 273962352 432604594 625934188 687578973 564323092 900049191 462267930 841237557 63612260 909039365 926969768 934558156 731343901 819060152 521585968 854651758 879276291 915267049 538971885 954885486 211720099 735355944 829544742 969895675 827627909 993378995 455062829 680374382 652737883 884402723 41130475 484500341 759788054 975502357 573350217 728396635 484369016 570741551 11276886 455605794 524830120 790728334 366737498 793348065 327204081 501390905 262768020 287922479 185553789 424775782 410672716 631921473 361823193 408719240 7273018 822973500 947212510 960518417 770084322 948524845 892210839 897052430 538225882 592995603 213691092 631243262 778668145 811865308 511621520 620395344 613045614 768402746 733537298 904781699 138144868 871566836 449634218 650802436 376326321 675083331 824971695 930921876 265594371 559482891 433637593 707140865 330366569 962796596 66091346 672350222 271892765 617267898 93147703 323560615 727001078 892690592 456883418 887177911 572427222 892228596 334213786 796498317 753936270 778709862 999044574 999394218 683020847 968279232 263406830 306253437 719620170 944832557 229526383 575387074 464048843 665736309 305479281 733644544 334860025 337236434 21747219 854779178 29924777 261095534 534752666 594167854 443868904 840785705 582596517 905354805 152109009 820925028 453187138 827510595 226311833 983744995 342854204 383060890 360835410 431232547 406179486 527535946 333678939 993371849 499245703 537695072 34882439 398706420 855517804 930758837 666123628 741826459 129720593 434189561 317497225 547890796 522792467 643830525 618337668 657135204 332862359 600351862 125512178 805271745 39442800 817686557 490483878 807684456 358820177 686634100 823017023 827964286 505424875 517595272 105812532 380105124 982411235 999966812 470516494 481497269 507273842 756889408 172907622 558891868 116257568 891715148 933755950 945125014 451637002 575731826 144145747 802585599 42028167 724022974 685907700 781576968 602464231 624487846 242447908 490853924 681561598 934819475 24775691 278655044 558862321 915922159 139849295 816549371 964694305 968757595 230808675 501981838 350826102 525014090 571129825 804328650 45457590 999187479 563375595 970842207 578845266 947069979 855447839 880315579 956331709 985551536 896717207 977525454 177448816 244769369 890097887 985049470 662631424 767667348 871169142 906214360 589869238 913862248 570049897 938375105 185928719 636074249 948101300 958006288 725507507 814689364 276252731 284641869 986424046 987485095 287014203 571561479 641616765 997586120 965616958 977277393 298454189 603783483 376550510 900539981 919757750 977252723 562797066 767272604 462846208 533573558 930611232 960940660 117310870 594848303 677015332 906600238 669326891 740836924 872224291 980777916 835437094 911816184 511119437 870221361 38201250 64414814 143181574 414080102 360565066 376554243 190898730 614632445 528478792 942210568 969834061 979634780 875453014 961281947 626410535 648783994 966637302 990791287 407548074 948701335 258762715 986908148 853857586 879233411 896990697 927159796 841526605 949028958 980032690 988404378 807844510 839718006 840831689 995707499 485967744 788140617 704112886 838302694 643774742 970631775 213059916 481293846 134430270 588189883 103765741 658844208 644285860 874961243 551001525 808445985 834564339 844509571 11002937 585680815 630886521 898705987 170017530 731968437 926736039 929615525 918652570 978610588 27971686 499540951 417105302 707159561 403432761 459566897 438249297 576543293 330688598 419148620 77166039 355661996 973203038 990021746 39202928 571426080 923334662 939484071 579715099 933223088 559986966 723657621 92418429 128621002 827898088 927092917 280954865 624732668 323730380 325219563 2263485 689037784 20210135 698809749 185866550 669152666 168461577 702672659 764868242 859036777 181976392 735886930 932406552 988229447 896454832 960844349 318231141 567394985 60570082 902464789 729817840 873520885 421856599 512227723 429083311 868595767 575598415 980564690 296150797 958979468 686508023 802124445 209023545 751252081 710857221 902600411 103016900 860343816 909627691 944632015 145392262 819045536 344619476 895765996 960516414 970575716 333002054 986203211 163481273 569198004 820312728 856962498 799341759 983408315 297165934 917862744 110411812 449464497 649210220 653676256 5312038 330241637 691052873 782193772 224248811 480125978 457959295 914056214 18392315 727921263 225529657 801028955 103386518 133451833 504795084 761361419 711584319 976452340 139496183 432439124 364085028 750975119 39142418 685143001 147899881 250243954 951364525 954303799 468031480 918329695 727739224 943419981 834792866 847186299 259057712 992126814 774756295 865187704 426011710 869705661 796294892 951980309 195883720 334783331 212056794 633293216 684709149 978241726 362642707 988220998 491437331 506012337 179945949 464738672 484566934 743182589 97937238 735465052 479872931 952476460 733201230 814909303 3088526 577881182 535147640 544844888 783199480 906742624 321491086 594771612 712358950 764863840 736249239 744089162 818872044 938079967 685985391 833397592 497275612 506152173 574751585 978431583 894586832 929380146 557154584 640369857 653430243 927141039 424856705 479001136 28036486 970084660 257952228 499858334 318049127 553721067 494168456 932442344 406427482 854016035 379263408 815575141 241005529 345612541 320486033 654049017 975647873 988007349 347790686 940555339 714722050 913860657 540789429 612779137 181249019 665685657 778907568 973909077 980788303 984880333 270036081 749845860 84362497 331257966 164569442 371440849 193520843 811889527 7625980 285180513 9095563 457753867 918455550 946050743 841821931 877184461 517558259 881701320 686004961 794149710 392103004 983002852 823344173 859307384 448546422 483267146 767576881 988669748 857960625 963236855 986336060 999403580 125136468 328071566 749461515 824246148 8774084 252242854 364559958 651950428 679725585 852353477 115664044 138554484 836863432 884418151 218503344 868991403 975327453 996050144 256175798 850467708 885514615 980074835 708674691 849291102 70048297 467008785 984486197 994174787 991860301 998312864 686984892 869258004 616678910 923949892 74951762 930988807 436331473 514209445 785777599 831001434 192439289 967283356 387724494 985515423 832528997 945485661 195929465 625100403 237222567 575883121 767329729 780720996 927035192 998628956 288464005 770192323 581108864 779759935 13555412 951438104 359024450 784570747 793745545 883682410 33733553 644676040 939216294 976145135 410854797 799644202 249068495 863748096 700989300 997925282 256943810 568356564 198513610 937620106 347522244 820206126 452824164 725655910 952818478 982939783 848938017 987411033 512136880 867301091 512366654 967233978 827321310 966683198 727933962 979685814 350248931 923904233 375227770 560961983 505073695 937925900 613969211 774696144 730777394 918857655 412021003 800716956 151478546 937077250 177427841 971276489 983110644 991411647 40830585 558576984 737118195 912555845 852626790 989841127 579292528 935928886 998696545 998846730 159736870 788925306 787333759 845006105 159213449 870237654 27394342 319170835 799711646 918912503 506726946 823489741 235981090 549409465 326902136 410715706 442580619 756479094 154559788 480078874 641330433 839366687 450901234 811420531 720009797 757876585 206029851 355344857 458068948 798629814 295118185 683870866 882843379 934013263 750339508 968863134 524318542 846640639 99461190 138871851 467274955 685617465 255870477 984840147 321189088 743749056 681533561 767303573 182337812 386485931 552916414 659880176 817325522 845397311 746430343 974722615 51294767 763568645 671144299 782954290 722117287 931867809 984402453 992498619 999836963 999876926 116654722 641412882 427986594 635397259 912153404 965605553 75370347 410533685 915093191 985241072 74386305 251044085 272869844 317962204 462929607 548369926 620940383 835807891 666913919 936839677 918600502 978089980 390953492 771084305 301886885 513645718 811804054 814611798 279757975 351402044 703158726 951124100 78544895 645540637 80506227 448937574 612515005 752077312 133118358 554664283 343708749 706676157 746252210 906016633 680856852 911834035 554584549 562600569 965592647 969746229 708579281 752573033 71085729 833027012 513466166 988456885 687949827 951314155 108649749 948972911 830859438 867090798 781925312 828816311 100647302 271912404 953816270 975397598 810536659 815171029 684996129 738153807 536213942 928630035 932711970 952238332 984145705 993126024 145799514 340144483 38119311 949866851 95080316 354332645 33914173 456636887 733190795 969371376 519494663 835994797 413688406 980707557 457503722 853597833 140636299 257334159 364754391 490131140 323399109 599158187 207879339 562422775 127832338 988861086 760199300 809994036 895354135 946465872 388216217 903979190 997458047 998779347 395835943 973200198 360239023 672822746 781462858 881363275 152022966 542541031 95842564 398388411 907423538 996843559 492517959 915816447 409537879 587800008 919626914 929994715 318849340 351623196 608384043 817538975 601621005 668320307 895649140 946795793 838489850 845943631 148716405 412786032 97722082 831700465 415725463 432117386 324411735 423707464 455527995 771274067 234077412 844902872 641420872 709617575 258133505 393853953 700243851 875325081 780119461 808224979 195668830 475059331 31141430 158667966 736833370 970790546 483258768 659485290 531590261 539180334 876207543 988441053 413054392 807204491 375401900 902100071 905125484 964375738 5975670 381481631 749725808 838065620 159243787 847503558 805680605 833954722 520371820 723159157 694637057 898085853 198822389 783203461 494744634 699693558 61791544 979059356 48011565 281054441 788395230 884895937 169893234 177579923 357950928 562099466 551025374 995835317 366287197 428079121 716819063 952125974 681756450 940912379 20308149 542701827 971188367 976780397 221957046 524800277 480060679 806597545 607403700 798276007 893143172 951714617 941319050 968295114 553975003 555662373 81092393 202994582 800862369 915545666 159982861 914251322 581695813 836551722 958826220 967923384 362132744 364750670 819212276 820641370 381962518 810824261 710626261 972445295 324892758 441046982 147977632 983345094 407508506 674611425 244946647 940016315 185297337 730729751 88723255 978108923 738302654 966217543 961266525 970380595 16781642 26747721 410763549 873244386 63596475 206399388 342926328 853944610 971258175 998782706 13441569 109186484 188836127 235031942 899240888 960257051 919505787 954675132 498409776 684993268 334443163 972508491 605476997 709609973 512590033 557282725 610618954 843164753 776878397 869787897 295285560 691300140 472504500 876633086 34490389 326496227 113502446 414696779 571770475 838104631 453042760 694318464 561264272 690307047 780305147 795173421 554170386 668532534 470909978 994717613 204247693 470910376 360396973 837834479 859757132 897476334 996909905 998099131 103298921 788411268 36498432 753164050 271499916 525393936 586767949 775001318 157072732 483449965 663550790 976426823 292920330 563473551 516517705 859123894 165205615 790457989 953425308 964363452 472826256 965416526 869400893 913216220 342417317 798337511 422026000 675292727 476478058 781347890 328131987 777844535 683819277 983745840 882212427 922210367 207388718 403314158 490532377 711058104 660506099 876524715 338445314 919971031 149564628 295234656 999640794 999831835 944158006 989217240 247881391 352820782 564938680 950392181 318611643 377642339 588241673 648177710 584058139 793497140 437223503 786662520 306890777 690991061 108728122 553667460 354007129 693182512 921263862 980652191 187051755 762488314 96583202 866548796 942153606 966351890 231937719 552413092 434168335 548385699 237641038 921496406 504321441 629900954 968810405 997036465 714627346 990621987 334678097 950013706 169147632 883780643 291032921 968670035 480478719 628219307 283998636 535748414 940345506 956772163 963558735 987600390 730358597 908900674 703648391 800847024 716568706 887847342 410524156 684882296 556986804 648803384 398768001 482724290 445179584 732405705 431630549 597208117 548103590 563855706 537626963 756605724 328602869 572401384 994836013 995877068 932518815 965196465 276241510 618186273 654880006 715200581 335319401 907008847 57725430 998762314 945642171 952015067 201059821 518849012 58621202 680388577 408079625 503525312 35839156 835465613 131186311 737852211 896511533 908301296 13311285 540804672 198161755 600795324 680750490 773828641 864649092 876556300 121213688 127598034 192857430 537183757 612794545 986720752 782269679 909367005 954812822 959536518 251714723 517960959 187263214 725756599 612410451 895568214 361762692 767107793 240859838 785429433 170410680 686411160 196596134 330330470 975047723 983757476 13859509 421808542 569593698 737172016 264440808 628691689 375031773 694571633 740630530 925570329 139980009 476268379 787630830 793321572 792175547 835343962 405360857 639126317 220364894 566809485 369676249 434677959 283774779 629532344 916684247 918661484 917490117 985340128 445292005 624409640 456649740 603734464 996570871 996788928 823248110 945740093 797157767 828280265 222699976 790878257 710762737 957288734 978401882 988214022 780699776 936207346 148633531 977855206 155092484 324487510 200574051 653239564 32411683 68023745 408522111 777651490 656253535 791619387 980738738 993863246 332679186 433261792 874726183 908026073 580050127 726407956 603915947 606660036 427215152 603200951 114963057 669719286 730592846 763057875 206922940 847260908 383619296 384312543 294099549 438889920 724250852 939288721 150751652 508313989 950245373 960562866 753449828 786829111 703330784 914118245 730173528 805749945 231156917 530411970 450049782 952486687 338335958 915451244 479076141 558115965 963024402 971192372 983770658 998178554 696467588 860539388 320968923 429292434 622562244 925920065 245873467 722489752 571116906 668674492 711646936 781675600 158159833 424325241 234167108 410514989 48565233 871804535 54786062 647753504 11610845 370342513 253742891 924169656 951837187 973657333 250414134 462513319 729825190 989426079 888508282 914149837 785147073 989948243 994217922 998290138 877669074 928724866 892983292 902749475 796664358 902891813 75716677 980375427 816769680 851912352 625617090 725043125 876119867 889638235 277030634 625789466 900497535 920787586 138173372 524974228 561860411 762932283 703021790 880365079 822129629 881703454 662380884 813135546 753943003 790270898 996115374 996768690 854325399 880254816 847840810 990818968 206512039 320757588 402751009 456384341 361735014 982442016 829785578 992681376 730875210 864121938 265412889 731237613 728456806 822643745 87716375 522349342 142618110 704245305 211181865 900548491 96888237 425112778 696554590 890408951 265535448 942884792 410283327 833442744 207946138 773975482 924819289 982718375 969790488 979082185 814509359 841358163 441209741 886113623 220488535 838252466 163871243 753133439 418644089 578979855 273841452 407162647 227450057 872813445 739047498 798640639 229189312 722616173 44198656 159760275 548556656 652476947 279756458 418605339 102950575 413769233 734353125 752292521 476812784 703533363 699595341 943591122 9183610 211769724 940508667 956575546 446786182 634384536 842048843 896774443 922448781 977707458 972585212 987320522 660323372 969024064 551987697 849781336 831282373 921361408 499820501 899036434 323122735 683118999 983330985 995634555 582480055 828844934 467161931 523113343 75200254 279584384 74229123 169049857 696667912 813241148 612344164 948295309 148843921 500700914 724413631 998251736 119978298 880885473 316474014 976362883 377007128 551590149 36039838 433371495 617092552 617491012 302744356 803021918 191626948 263791564 332604319 635298635 174748680 553375325 138427331 607367238 691227023 744504615 735778927 776147841 984362957 996200553 615894911 616585625 38088454 649392913 662372066 819089212 386976161 973047235 925255683 949467449 897630606 977549400 185908448 900745890 301797698 442744949 975491381 983709702 682650978 900179671 103129242 425035654 952075680 984434381 74763870 931701979 393241064 575749493 991871176 996015675 462910340 992904401 991898338 995006438 243975516 878191061 497680108 527944735 611706208 967510054 597439614 847713537 352413398 859112028 552107970 703086214 655842705 990857131 112211672 469683311 253655434 632601526 936183117 967632052 972411782 993628173 841859443 916060583 572135453 761402346 810249228 946784006 32689034 412091471 268996293 800569665 110008947 283411575 129937899 880337403 747864013 984222940 608568548 933257679 598083325 806441933 985475299 999470259 63877393 166662292 735190070 973502946 560485274 863259397 884644870 929253606 610946310 735219294 116575994 907550607 373769728 699335747 143438006 304083397 80323339 668580096 569836620 619691475 614603237 702353011 3144735 258593056 701104557 835474328 826106141 902295824 619327383 966609075 897216800 993016730 227579631 256208424 945093779 981028597 493329385 937936271 219766240 570275289 148207405 418338971 36501712 951862924 617157746 735275451 944035961 966632387 776659036 922016309 926235344 947728369 848872481 896298292 743271504 903577039 637685929 946267214 924436183 996058265 715964013 725107098 836972463 982152722 197115673 460079684 316846070 494035182 711384904 805498378 120909891 736596195 849249868 981071996 580998348 728335799 109557284 703026650 967620882 981651588 146764054 732699990 538695055 762777953 723127767 737999153 446358068 458471752 978949025 997868703 155091511 441374057 363085884 529510134 514840834 820207082 450996860 739691079 273925421 778420995 432568575 765517994 188276077 931764481 287814313 455279308 342101050 686809570 634175323 751743948 267102362 944824610 765705619 996975331 973757771 991524544 783566275 893386965 831261254 871858053 394294113 716320445 501239695 521770272 89677297 596913684 397799065 787303571 757458621 940586859 671702636 719503210 952575969 974753644 518021658 589237426 648050240 666255054 506661852 804736604 764264719 915116668 693552023 831828510 766394648 954024432 216750331 360202115 138779248 348562771 532400953 817693817 279937695 554144855 895299131 901625309 131161270 965610125 681316278 686977700 675624282 804265867 609442478 706459352 45958443 762980965 982895420 992960806 672490995 829961223 731670046 796129899 829769739 877264546 466512839 646754892 621420075 686704719 198410258 690768763 53449482 217432711 785868025 806618708 408243565 606347618 898935336 985122606 430420902 575542708 148018798 999983713 344947625 463891500 656699146 688637810 599266687 807386778 609355949 785343450 82206318 897171131 990417552 995539932 550379903 922867820 286837316 325716719 978061001 993493728 374005715 596117783 268150535 971919373 105185612 220249943 244619439 811572380 829154502 982559239 86387957 253607071 478295722 657914755 114720533 491607793 618703238 653821029 598071709 713230023 168077168 992298022 961379974 994181780 334858156 494854376 620670522 931090535 284148195 811209694 422448390 660524817 988396545 998552882 437557699 951549751 45099686 192980168 998561009 999334831 360556311 533586589 973021252 976159351 772886068 783040196 305115920 525083544 691851646 839407604 334466076 877836126 730621199 819378794 543925514 613107856 38123631 840037605 232481679 967588886 307530913 852081796 805985052 834335046 329652562 843733600 548189559 731486311 437893968 959962258 858065356 963387384 48877848 904388663 196339937 334129949 167235288 952382537 142217146 156365744 539743567 983903967 356319087 385523576 13355187 553848034 362064828 420642168 819750929 891354020 177773397 410219462 924407700 938796286 996545819 998602022 589327010 838992591 428130851 582104729 189496534 278575677 666254351 858538072 31413682 253816566 673756255 721527867 786875743 827545622 836552521 880938894 388838176 565106807 262629690 440117402 208498664 514267891 295319918 442413710 257955881 541669616 851857189 954774589 596684970 607916940 707260981 974466941 272440376 475989960 375111911 846755020 739932156 887075110 872949218 912102104 621671721 627421109 684602967 748191278 85227883 793785879 260578983 799446405 785173291 974827415 890337980 997805562 246185539 975712595 939572632 976182628 445864858 575523963 61186479 447334141 444888451 993631952 404999545 722170143 845602483 901587399 92289314 306550936 561713417 990104267 204310785 871074929 696351283 808157859 297324166 501281287 139471362 221172341 611728362 773793566 805689081 858320147 335999968 405991700 576920156 751128548 609350966 799166113 583115406 585543753 408288515 922894829 880944028 964173204 963659590 969594103 24962186 949338697 377679627 758644144 630835875 910393051 853663436 964666449 289043469 971145341 737092572 813390149 950397989 954221581 702873393 782132180 321515516 702727660 24553049 572019457 124636972 574945972 852875380 990238270 647305441 918582804 328371269 380081122 717154739 761855321 60696235 245988981 339502830 660957067 28201934 950468966 659613046 692967704 735010809 759370546 565958902 655319959 278329877 944969458 226189293 747677968 805110636 846610277 316326336 866367054 105070769 123735477 237966017 543742821 178457799 730035519 330032431 544751242 79457270 199604927 527987052 531151744 33369276 399969323 66916121 360133051 409631629 772311758 823132084 888501743 367927109 381553020 657407009 755389296 23954338 263281010 464068218 806406871 675741977 880783708 515679990 699793493 192623502 772791332 483572183 719133087 416539464 553789293 948576947 979595281 868650509 914256258 61617544 858412085 141588239 739686434 523118361 532435424 702971602 884571172 675480032 987979925 347703040 507819728 706266267 777301463 23165724 30179139 635035764 761715816 819441536 927874334 534553317 721752461 426011258 640192886 82448838 98147012 376472152 928910383 481876841 512828240 122030836 697440112 986621801 996109391 702371118 713199449 628062907 722166789 952216300 963703645 41567548 764674113 494426600 768631146 580374960 581353771 796301071 815461641 407567439 855197583 297144542 909912009 761527813 970111032 336877689 360232585 217235255 656257268 696575097 911808957 994467459 995286483 55924766 932557765 869779470 975788159 618862756 898423646 736529796 915301445 660865505 937407213 170640209 803286730 195694909 201353736 499122141 567235791 191268120 928169988 221529455 696439681 334828383 491328068 205204710 579772859 515137106 625223907 373369990 827340956 775096336 979932845 74676189 905538373 864230014 964264410 26387950 66570219 173694228 820004051 880072697 969326018 26423611 281307154 711630826 819111375 963540255 964781695 524000432 579881192 574455614 950537167 492403433 881091380 854320964 936740611 114600707 598218428 737016434 754967652 506713960 842443367 662575032 992924144 731993089 754396865 309178082 550635117 384070623 756116536 891915005 994095549 627816169 892232708 104919657 338128676 541633150 598369235 438261485 627544591 860703041 876974632 807864961 943311444 686116370 799362908 501641523 665970249 582761445 868016722 360125685 829023164 783829017 868348134 396063946 740672490 210006359 312943314 781611892 868047447 601439200 646207544 380359945 949681631 743049269 778955921 116366786 422102687 207880070 983416895 119553756 555704025 829418903 961572879 790789434 819394433 984649759 997999525 515720005 544858777 87000860 504996000 293784480 937681954 927978242 968430940 663653584 885903630 376994430 404217596 198816224 887602226 491120241 625288418 562916236 753941756 42016416 934314940 903223783 960202024 48262738 199268028 412366179 749274696 628484775 954364462 381340723 799792818 189000071 344311962 838915402 905840792 800283173 836803602 988200899 994224156 819210853 837548051 255924941 421029276 815589759 841238463 141342865 206396125 72777122 599337289 576726953 830558222 956555816 978571542 352669996 474380122 800868410 965742288 520205781 599525453 504086577 718244421 302379851 424900053 667587894 745959085 73478326 955839497 724920544 875784132 270774725 625599212 864140515 978160602 504072490 555532730 818607043 971622815 172638771 978956417 530161249 593694934 350898288 795551879 262346297 981284315 152907355 502000138 551641829 893044949 524931471 967970871 891490516 956570872 449760181 649786227 883360718 998147713 252325275 709318914 45937436 770597980 335125332 967394871 851286031 851898627 933309883 943807688 505583020 839070794 698201258 914853877 271938976 405195979 480997533 593420928 97123948 746939482 562991737 586083711 820610277 850160445 4058328 393900057 31649918 291630508 511620888 558002595 50137267 653495667 531716229 855476648 111758625 800241983 679203183 888710992 553561036 885346496 138067649 566362909 539840679 789899739 599961390 905130290 200126273 776401055 127525640 394173941 531729702 560250115 734342147 786793206 396816593 959698189 435622200 774237445 858710009 871304923 72774876 375790353 840704864 931023087 112299141 521385225 404873401 448655543 227301080 827757034 834023106 955538585 347796551 747163217 579037767 913461737 20449458 65073868 874112994 907083454 841448032 871667399 438923907 482871934 197081530 525903457 475426533 886076216 237329758 507186724 777798838 966221503 235404117 985263157 617214065 747729408 448887668 538747508 643407228 793503771 857594153 964256386 202573069 789466210 995430869 999836252 425629076 604455593 326248850 574903029 954993023 998273114 954918197 971247703 302405721 900118705 573450018 858099446 15167141 261870850 245812268 485245440 60466279 108696922 221424805 529800833 459739218 573660620 50063398 642723449 358410793 730257079 230951074 630790612 124130989 307947378 736511320 867264191 651052971 835588967 177083395 260900716 420803758 678895171 108152227 882226995 720065698 769787906 890417806 990953604 665881284 940640202 280424998 397972802 118158797 929592480 235876096 503217556 913910603 958936899 769585460 932404949 26401945 740333959 52741059 791061648 679409487 821588566 182665693 630115326 178483179 665511024 174214414 828975318 381968004 461513257 391634116 576973308 674723688 952474691 896624044 999466375 116475790 399801463 356547310 625876781 548646921 838104273 941386532 942417978 98581475 426535346 187091288 451469825 596374257 940006541 607693028 628749219 893720290 945411879 827213541 836109466 901916141 909917696 808173906 875443145 990833107 991924806 804330027 827740275 332903458 595028471 590966651 710684876 256906223 811458973 243949832 258751789 757546506 786754302 274059213 792889202 250560934 971487990 987274005 995642410 788263140 834359492 37972263 539530388 191371237 555360048 384484063 627457514 775050235 916701032 503804181 844436225 552440066 664576236 524533318 720118855 320229802 597254722 192093182 313624955 698981894 701541848 572796374 747253403 676661939 682661338 548461169 694989812 636378208 737847526 66854338 794857479 663564735 745486124 872921250 993447048 738142156 904711077 996911789 997344420 443545023 739086320 124699083 905374680 42492935 282269541 527132765 921045613 418363708 737993843 371737473 742182601 580605639 711978759 769360149 858985808 995595265 999305921 648427189 786164199 115303178 907607210 515664361 632255726 730204889 823816033 96236832 623828928 265048176 874137263 220433643 478111005 444369885 900316485 218276288 445197399 171322083 211191852 304069290 872982161 136831885 681978008 717979629 720227004 428000637 497685260 809742692 844840496 197023070 796695236 364503558 405574609 44421831 894537850 761232338 959984501 786003547 924592831 676002798 831910057 696402458 934136837 834293958 980543810 334830684 445739641 311985880 879003251 205216452 531509461 458479159 637907715 325665574 373976791 995032618 996881227 650025234 706314607 871257861 992853243 157053320 414034448 270803210 578046046 404833867 633105577 916813078 930955827 96615097 902711147 880834103 996541803 698273454 763186746 368817368 674281435 67397350 138539459 375211230 442467898 354971182 735880619 638838262 998442686 124680820 875200178 288116512 808741943 656832839 756446539 948549281 969708850 834063961 888069341 431920398 966029089 796203115 836153558 547314975 929761410 823823759 910997265 300273039 684423527 491325317 635987226 951656125 974084277 178465904 850495557 610255930 976697462 591245745 757777459 234637737 527131552 800199285 890238703 22828027 635816803 296899577 913610959 87222378 531284356 606874677 941582061 629396419 638684772 304133523 859159804 5155272 891066104 890817413 922664242 304292340 973271812 222738968 992968763 949328417 952677428 871545531 907306536 605169278 614606120 379192342 637208728 592819629 936958712 61042889 944688187 481803288 724610304 504484532 908459227 526048598 553203831 43908457 77866733 409929191 657903777 974146590 988628914 195637059 522071906 343995693 976975723 778579215 810080781 547260580 940052900 636156961 938776907 458177077 641267213 396914965 988060615 372685209 829660249 679000683 753238385 52800311 722422317 780842790 953000019 894768137 900400281 256570278 977456891 812343619 951475553 187480557 282175513 958580371 964443203 835792358 937683864 732058725 844483240 327907565 845233728 566547993 877598496 422818539 534299087 781426425 802143538 47478546 823862920 475636955 915923297 833661972 929041509 970156440 981691947 428431660 674699730 759564333 880016363 559064234 859221181 610189980 901114400 199448476 857411884 262736989 535857727 294607534 834401819 999638795 999683181 850569813 875919419 956895768 980135178 952679957 980085750 787891349 967343464 316309521 909825018 138666121 663344166 63652282 734937477 402824518 883758563 642691652 786333307 61740870 791296538 37985172 356750905 80710891 937961990 886298727 890494114 564662691 896997285 323579466 915887315 477952537 827052821 92187291 511407554 98994630 304726618 770803788 904827060 221921570 406724097 394741320 766390617 846884583 956681500 823787582 825150962 420164225 936117797 484628355 496243378 254908330 340058800 990670061 993022122 356311897 746240075 173686937 719287024 933913806 971708757 647009262 884441644 597965450 945552614 840824976 973592687 436292468 869488928 410655198 429207176 560597627 938231332 183310487 875449008 204935684 740270455 775637661 806730554 841361610 860792215 326838392 465922114 256035253 366962871 564988008 728375425 679692807 799620870 281132984 902848996 698733018 744337296 19878532 326854071 73924725 243508011 260385308 520152760 94734830 266837160 196413187 501401080 921537092 926935467 675112337 796377862 502205446 797748954 49879757 301127906 484595786 502321375 799232001 848289146 507957075 581880764 716169818 894877493 768824740 834927180 482644892 612189856 371056534 693918894 57106220 541280120 955415246 971977573 813359125 820148388 729477760 890052066 254394570 464853480 482315501 499163712 778276298 873050827 190058835 670733610 83861920 621199362 804739236 995222749 727616806 944366650 339922243 888109590 323734008 788481412 31750663 360192826 312205277 474334872 481333691 715233958 210261106 860567925 107241410 334711705 9779084 289927431 999869489 999911181 831690088 977340223 125144192 576077660 399737744 942820850 453541255 788449785 804499827 905092153 980653942 994413352 985057649 997325296 765998412 975729332 681323569 888275652 310511100 686045110 347096137 471863774 878463572 974758664 539376465 813859741 99292775 511178945 520819359 629408776 473971872 834427110 235283825 669080750 169832314 711397753 118086951 751256690 847279558 988699575 860406588 909996519 161386433 589068431 632293673 917137273 22162468 108253348 513226891 831239456 294389090 880703929 446937619 716213323 611834806 665635705 892390065 913113408 878725663 980472949 419380282 579678756 858826791 877323575 79024630 277562999 764242266 945909368 131747220 617448066 739427329 910917133 904500329 934518918 886466957 895384216 239451334 303212356 358300761 707423633 704277777 838820157 954547029 988851448 495769075 888619717 626030804 833426777 175840236 484729456 515189064 859496636 108805569 230016320 868565968 934706779 368151653 415040262 957605711 984738695 978253908 990273728 801736416 827154078 385073367 455636451 545426802 672323550 981938001 983441128 331116155 936863645 532280174 894528148 109377680 424640123 9026162 639135265 415717552 824875059 909894243 948101585 451583634 451826197 872710494 943585654 268099053 625077830 857897711 944910429 631346712 652637235 706638549 798403920 714055454 808066359 820905929 878660500 793035264 839556118 472304637 934080776 562268396 713232449 66673072 805487162 351888128 851426955 48507248 105245407 544984713 623358358 866619018 976127046 160161669 704376423 169932248 923832313 210710157 373257033 658270015 907674642 293301073 304788676 24557 86647170 365580253 662788696 992709468 993164962 358396743 483786499 964685758 982964526 501416946 585504381 156879787 971481672 207343843 505719299 112689505 511866515 533315007 783962782 877605042 909294632 925058942 949361687 243918883 818837849 958894663 971335642 248330463 528114607 214087509 477503689 928582782 936910469 467080845 705164056 734192179 879041286 731377194 829390445 471614179 899416085 59421586 629605617 288225941 972121479 754363445 902373462 626279415 962322138 550503018 736847739 854362233 918886395 594582812 671482916 774725964 976195730 473815774 748086700 198547459 908142840 899853021 972353732 539565412 909496410 65359487 350255718 724050155 833573862 16874616 639620617 764281070 832258568 67700553 277884648 807365193 847082297 63645040 726100493 310750463 906169428 142294113 760922940 266225153 366373278 765687507 851136797 453550747 717702623 4989127 298501343 673416842 943332570 725782284 776529565 370481924 541308331 703322948 945683132 8773467 782938599 271677673 618012878 133191358 530521268 90034997 692779366 802313975 805078961 344882623 719549090 710515146 899546964 711724266 893170058 973621034 997465074 479509886 779598101 704007541 895745344 662436861 765684364 216817095 442241258 509943580 603659885 191314797 250465867 100625239 436163917 416934445 790244903 43404476 691685438 912086193 935892500 949274913 984245358 874775257 973925204 617570736 732745677 828834586 980721673 116627606 378579286 594122385 760638782 499598596 934455603 359140120 824319268 834188047 896488566 441333130 899447684 411697233 672912431 309571896 415979178 734299448 812012888 545299338 731593170 513610835 573009397 57231986 714539299 383667324 396217723 142077530 771127035 234194320 719683041 654148687 662029869 194508817 407848152 141779019 822997614 840488574 845809707 938475121 952730642 155077975 328305410 954444089 958767153 182445269 939364320 875207918 981235482 304408723 381739270 693096468 758443687 552137931 908487469 578231989 996231617 916455643 930340716 464226372 662622704 960438817 973449268 20016773 441373631 864059891 883086580 627161765 654463261 36774123 201334845 303505809 565320130 602116198 720694673 164306469 494571882 607384289 901060553 944108002 968396166 296541676 991335316 539834263 565177344 447501314 459349485 875052766 909089025 227894648 651776444 83757880 787032982 8927667 580612014 350802515 823150761 602116686 676764496 694236162 973533719 175646295 895506580 999310514 999547847 305722983 894129682 552665995 571668607 930304503 940565661 678435828 741203330 27141376 31483210 495767681 813756423 671610100 855054860 732285914 789337149 474079640 998422865 687864556 869872208 322219661 984917099 606033355 776881433 372439424 582322232 133269914 229182577 106668869 534287918 74252889 305545928 412097130 470523893 301311664 796682709 401962188 967395682 644670424 787560580 988302789 990667272 898798519 921663276 871803391 878202676 53621745 664631011 181478925 598893060 207826801 682556781 931868731 956282570 687527091 767146314 58668805 535225493 713107201 714379659 566607522 867642539 579842797 738253286 752807483 777010030 889843487 889926483 911942239 966602531 332992811 590155328 259777366 866019492 471138856 594436218 737376343 816974104 256280405 550512678 603854915 677906298 345858521 713207524 784490075 827184382 573174135 741545487 37898112 837472945 450429023 601808067 965728911 978333925 24811019 825616726 672858414 861965257 332499789 815972051 803232241 989090149 502986557 815095105 260238183 913755132 797466704 967091293 211872785 236586815 769996133 948819133 711470095 986950631 121036899 177727354 232137417 946642651 824075144 909004062 43344919 148706097 335036854 701714571 444581819 760862992 608772447 800702834 8645467 425813367 231346520 873321890 553341982 632185233 487139161 610476066 496070094 955363469 133374563 755603992 158515233 477487072 651086404 854453564 11167386 147070769 250037353 845264052 504099393 749601901 464686370 917301321 792202732 953844135 65231432 95330013 584522865 892501093 604018470 636565729 755495290 865583195 530685991 552894639 826705929 989794992 629968595 653580826 114442997 903267246 426941784 930744098 81731747 428198977 836461076 855261159 895663989 904476535 320118411 778329255 472743725 562471211 979871758 993540016 596887416 913928426 591981244 895479325 142160604 579880859 372594149 648603118 28150549 383678433 403626106 420525215 447572917 841305466 904051099 923875678 258868631 356631366 176045690 628229860 198145596 787100991 389607055 823220573 770170000 932345364 69949950 169241682 268891497 791682857 848242082 931104271 321722712 433874585 683409921 723442375 481531887 694407547 360524385 846641451 695435208 992081128 165846626 373916411 135355265 400745802 147353800 204009142 910992667 987029094 61239472 781840345 972316072 992933807 545873042 751391908 485584849 880423873 348529486 497114931 456434664 523583944 815170602 916961673 861145908 986258600 49101400 857447585 166511645 972734701 981908155 999197797 720704463 782908264 852591832 978045253 256740869 337432329 240681389 878202032 34639501 717210325 293142958 786717839 232073214 974883154 138993743 753540246 96240667 457188279 570668585 979301021 607576225 863924912 843447813 962151664 28146482 580210432 732189036 921228840 392149163 691940046 794320013 977843186 369736128 621882671 770448839 774282238 846451053 860792749 104054640 172308415 172975074 247220559 711150137 740992874 292643182 924767248 236879153 259681046 743342054 938142924 567030076 676312543 902879277 909797129 103111310 572764124 881632482 883137818 502877943 994198317 653499147 956155058 250234129 440868664 137561134 612869552 283553151 334531965 150436692 648204879 292587057 645164992 345371582 776969553 8586257 546991529 334550476 714791583 590216422 619165522 943044286 966544181 823813134 872293861 823511679 957748554 808838445 873685169 671005672 975191989 857752740 934072916 734758486 783948732 581956209 934827974 870511918 873921186 62284949 152018038 711500989 998585236 119240048 916945355 111352113 692875304 250256602 853727317 540098659 665403010 2011810 471232291 375355457 581473440 60658942 499068672 189402312 385612953 748657640 749425265 992552680 997669838 975950823 979011202 501939787 711654552 577975849 838923966 970350074 991927419 892755166 917393212 116936263 124684324 881327188 961871757 83431377 94315913 112076265 999075063 676270739 994713691 674766112 750008804 716866892 852261384 500301476 901663161 363072906 407890643 779270462 962038135 491379974 583376722 43881861 300294068 902823711 959887896 77428586 500643020 135584819 924445003 576227521 750375682 35442360 649281503 500963126 788712235 924105005 973182348 1838738 588325415 961297461 976230739 201959334 885687388 241127854 489298956 483961941 660579982 285869224 464294367 698287453 916762173 785199877 807524453 132589461 277007660 363377354 912473340 570633957 681756053 744884985 841061392 804774850 982665225 139460552 745783565 296265414 887686896 638411198 711211045 219004927 843210286 221493943 322056325 166853493 809800801 674359466 812462602 749442055 849421378 181149623 553015697 452289675 715471320 876359135 944130027 320090699 731359925 125237452 175527710 154054747 442327557 752353186 913370116 604205892 804042018 512695273 784405712 673973063 748158366 746387288 963169352 724434603 927017437 640476666 670433167 778509129 949364861 837376346 880375556 15137617 438900678 569436182 882117023 297068148 357709833 310923692 906385489 56778622 288505256 601150082 748486128 954245987 989416370 564957812 721531627 973105605 979893625 421237938 422987573 408437657 950793291 423093066 953499443 686161 162846182 391960978 932153927 269333814 601860371 541624425 979001965 252893053 651076451 717412584 900925642 890793325 943014332 998636030 999325965 661867930 735711045 567869063 925709717 69192687 224971813 746333467 855231839 788442166 925183037 706443480 899595647 114809743 957258222 697921176 887337593 290602185 410953922 873424454 993259994 201633250 583423150 867287546 919823920 22450885 782278581 277087071 497948239 793761495 838589177 433463028 903398875 167472639 548502938 431327779 452154849 600811898 755355920 330381258 415925229 710325028 825359111 642097771 803590654 621849424 842593004 512892346 740083793 641898134 645698627 343168491 382715373 854903200 945885235 524416354 868963950 937421993 952238014 471870877 769020355 969704228 977710608 55765869 178107289 292747183 628128982 565674545 747854619 180381223 338948883 524565825 945990118 692283839 908133652 206079232 692669196 284458766 644190266 606383971 954024147 120950895 897826418 388901163 983707732 465527734 980765648 648308898 992691648 480393086 818653487 120227812 626682519 300873871 869693157 769031341 771481998 103916363 450369843 913466472 953532918 558286407 996402412 52913172 980926726 992006525 997418945 195180715 390176715 716510432 874208723 266988598 603541493 740208202 818687822 32718566 849017363 47295649 213814592 648530213 858642645 985560688 986860958 855740584 941977331 393766755 528443764 251994463 828712664 538855800 964765393 216759417 945940750 157687453 766757135 845263483 990765864 135528411 573815496 178367408 937041618 340809625 694731145 10000057 526518556 621149816 732106880 146727043 670589686 482185743 789877910 375463580 790178605 231105330 664750543 667187847 903605827 650745242 726061447 839395904 905702975 584141795 598181903 711667902 939202398 644133311 670007094 879882727 913831409 158148678 685434827 898379471 914492171 236489840 834827057 504239668 953153567 933558631 948726136 762138944 839888528 837484018 956085107 148156292 286489832 844279982 908054155 28396279 409419602 309023043 894844471 852461800 950325326 586210706 953483202 56544102 504465485 787926739 957416524 29651641 979314961 302031366 355506284 938465347 965355849 884018706 944832217 552313579 949262368 637274018 758260672 234576515 849784448 90662205 383787504 634466381 765850983 380583701 520497819 688373204 785822256 856252836 967821356 515865551 986793277 476031047 645166700 786255248 917112713 606090342 696540100 717996572 796638176 623247631 700178280 232010151 715697207 964814081 984660711 213932991 963114400 718063521 980105302 400152051 670419033 468058617 825117990 738142035 934839237 911112857 950655195 461050456 828537994 186469073 718993130 796248835 992909528 958555443 983588145 581733912 939631881 316412449 933617679 648123055 804903259 104683331 528613021 640571626 882255874 960437054 989708403 705317224 832904972 329181840 726104865 715922082 752066783 745732730 995125715 332424184 481580944 849765943 943245377 341937413 808020197 871489732 923016730 230745747 679601948 569191271 852500952 705019657 945733725 892573208 986260191 713431773 825351904 779867280 866352911 394652102 428926407 429443692 524198181 179137818 906688046 727503679 739814250 829692227 941961659 837273539 848606950 336246295 844957939 106475089 142231042 935928394 996830628 597734365 603770041 715796532 915408926 326359368 711071633 454058334 957769670 346603102 886480212 5686898 145624676 762717753 808844415 898399051 965837217 81350567 295525439 491949422 501719632 273924485 887903648 484624190 894573186 105773961 710489543 949466888 965188911 169660302 268172453 78172951 178282735 119392474 235093468 985219758 999665045 239126842 404557241 683282498 814066074 77957881 275985320 40166051 558619804 821249079 836763552 659054665 664443707 813339694 939955020 493448265 609722979 377599292 416801730 23894967 658494875 595470980 773665682 336272836 607317382 434211574 993666489 507081984 909121729 523135252 818337806 98380251 508345446 734803836 956590332 892322980 949327659 698667584 839811144 56315799 626554087 496305566 880420358 778452761 987435705 158744702 164254527 737187290 766644407 701763356 727268042 827342567 990279398 913944096 942418096 782551924 861319023 889119064 994134844 800579640 942584874 627038255 752877188 875389722 923419073 643433429 781081822 758685320 784968476 782108677 862116680 300026689 800324158 56054159 284053631 726296356 883343263 252839818 679895125 103759787 500912865 764341883 791202136 383304465 899951916 454488331 761048945 482851310 492180664 369195371 544870318 108108273 406515048 57172660 958553659 602168469 853779185 522891330 681812641 570764566 783888126 519056939 651322392 72072759 409177261 69274819 465607282 745629353 767293482 389976547 919185488 822148737 912515553 538305910 919445420 844590886 866760835 818018017 863176834 87560977 523594330 792513724 964685225 2312553 312044563 603192450 865386582 983814679 995972601 789102353 822249148 285273248 743166662 396296040 516262745 5356077 838410878 387269268 676305182 266274262 555298219 730466804 799729556 837430518 871587654 762182366 925092195 853589728 885156808 237576701 399313242 940828466 978655636 895862241 991377761 981994695 998045494 222585900 959353467 667445967 940844447 139139466 211257755 80268557 818258415 346976833 621721174 647284428 795015454 996896579 998272757 855493042 985692963 497001761 535144703 771712879 784968275 84009285 668175117 399629283 906496336 18742485 632015730 518087664 720642096 554537861 605161197 261955678 434538485 538964012 848675264 476524542 832613033 836267448 956123226 221521323 440494856 372699768 688695840 659417814 960717397 324012713 786603011 545474533 599935319 59329709 446024388 670804009 893674266 813467173 921713653 54353570 888842758 215709933 993585660 504084668 923663503 770416341 957140426 384612809 792709843 303936254 981209890 355249407 977514930 532247294 594268879 75027524 222927608 516440410 714717880 278733224 969430494 568814048 835443759 790180147 974706799 616336418 690616635 916802117 994242938 376240187 906462337 328680638 368927494 353079552 537452855 712873747 787108051 301558254 853815805 585144046 604014781 754742099 903896457 912261996 920890018 74909941 361802140 89264793 536140281 66110329 179704114 402140012 891933665 804926884 873952512 845639958 953514182 774887977 970498766 461994300 775514168 86886215 732230298 726142082 943213831 253533668 554368477 510585580 940013901 419763932 459309590 690851680 815595457 453865895 785756033 751635438 753994444 172233249 215699105 582968430 993177478 146775507 585213536 893616323 941223845 958787987 975471754 157781374 281185346 603730412 871971559 237519233 662308562 395316897 937182377 39976976 313611625 465536249 890885952 497763439 772403854 766837636 894045514 60180694 134339658 338032912 592168700 784329659 939031042 730029703 850327561 869972405 881230251 778824646 897019491 152342592 681749503 956938007 965552055 479803482 849146767 998873427 999785932 975726977 999640285 357708586 464766067 944942916 982993446 758131685 797514520 46054522 750517807 606677586 981305640 976230565 976352584 857217518 870700335 434280404 886517768 986022492 993977589 793206695 919568245 234737430 882854072 304003573 850836624 791109413 944375279 682274583 712134407 111620088 256748869 25481550 929699833 948388600 970212877 309835333 623297398 705404201 946311905 471846558 720204379 820417139 996928707 802320635 906914951 536691276 543132072 262749439 501679036 590383478 719486216 36513168 297117585 539085999 733396951 385728207 653020534 183514383 423138095 921761950 959271925 144961247 406211555 409388722 440699531 637723814 638131655 870534304 992495756 829476106 941938153 423061300 794720051 472292275 924250643 357806828 724355656 598232315 663971051 554661820 897673632 981811512 993197748 618690208 737393293 327579441 832577847 487318625 950865354 570465846 797495663 250493192 892862673 879706187 971768268 956488410 965088693 936373093 936855550 149186138 925485016 239133968 784496686 780063333 834679271 52575044 706351509 221595382 767302722 456383621 924727401 887282159 945696350 784828209 801274427 660112389 768536843 620614348 768120231 761445396 905701679 791080485 826480119 81445774 786236138 745220390 854919400 488805362 689877337 291528884 786572727 477211622 590717656 156349260 306186525 228844640 989862930 66023957 117698392 48648807 435700191 656875105 897082964 979022034 985696212 159111023 172330541 146670764 321623607 660333384 999716363 109050092 874419979 281643871 846497132 468395279 593559504 922344721 975841901 440532870 992619750 57641116 440913644 70425136 158848196 360614808 739621638 963928761 991461373 727941464 931791611 974267642 981947084 812534507 977056772 6822954 200752687 94542534 252082687 923196654 949343123 18935847 198608721 339190316 650050864 146266312 762612935 65412150 707230708 154179923 447205606 337185192 734068670 861031375 966120348 944153161 951264900 550424741 781926588 942037807 978521757 466287178 680102686 821348670 925039176 938505082 999948822 76435854 554700001 405853529 957351463 152767716 954581461 815686835 935665034 283688850 404236593 72297212 300599513 713672153 895383682 393544635 528749275 416854133 640283868 211932911 745032286 826666234 982983748 205852171 265342098 865953385 937146670 754103350 793741547 613244614 657467653 419352450 518359746 933584871 978279917 733741508 855923642 561527085 748064558 221239854 705133357 85505601 602969398 528361512 629475669 681893633 844330284 668910957 861326503 755887639 865132014 992210778 999535129 514245951 922103155 99614052 923842094 507623124 741356547 408976652 723292170 763356407 823944496 710908628 837612726 336670570 442636009 693566650 843751446 667698695 941472224 825606616 975528537 792050829 962696158 269688363 460349898 666526214 869885531 782758488 784328295 118915542 860841523 235634379 963013860 104676696 610866612 922264299 933749671 592941233 771768314 460538799 974300957 547689906 886241244 664852907 963894627 853663465 995457913 424013238 687751629 739145091 749126056 515833782 530534709 95224201 290744666 394606990 733805661 206528155 763933046 835680138 885141713 500995686 791881891 406815530 505529392 436636959 637363509 758180978 904662951 297915927 317881414 899599285 910754255 89167926 111819417 412791113 916806285 548479128 950206895 180918600 871574109 414239278 587209365 413123583 890792717 757312717 926872682 56541831 515945228 368828564 942711962 976125906 994716474 287694174 618064904 263117338 736336537 199618690 296618686 186206290 929089790 372077938 722376910 557542515 994076812 927927968 936536597 583086777 747283498 885897127 957049252 240823651 562543109 213210736 469985367 373058156 823770749 336450650 765046056 250661948 686301393 193982968 367217387 236049742 630745592 581481299 836486991 784500608 899385175 567853834 603846601 482487496 756241774 911731076 976648228 145210305 223789234 312810346 808938405 714587835 922750727 259705085 594592779 974817328 987850733 991289625 994920009 65745315 739117036 90816622 591204479 482527460 552534429 37939528 364398606 320880877 453737924 591256819 792256490 622343332 981502126 461941042 912803409 561905243 643289915 280661204 321040404 905777807 927583396 897102606 911078423 277071551 303638588 8317257 842972151 426595989 500788480 725096373 826756585 165434937 748438881 408698784 466145704 654359459 686845413 25993149 510334161 118621275 369869623 134656875 614418102 497798739 783685097 156905436 906376970 576760741 605730421 49829772 286489305 600089232 999415047 374958559 752969592 197625282 902421926 696873544 904080344 453379115 708498293 448948876 573077455 745430832 931258734 971689747 978103190 216962755 943003887 401027602 621883763 39211435 77966122 775109140 959040752 391220666 673960935 365799418 987833890 933781995 938421608 664636873 712961964 982567981 995988147 119964532 270712615 904406680 943299849 953237989 998921380 920772663 960201186 772577227 949589416 222088586 834321064 709660887 888795229 868965902 977027186 439648715 473993622 127471902 887157065 78498385 772967990 267849127 650401469 747643050 991262421 2730701 470961659 739649490 770416238 177553194 696287835 869158091 927365918 139918282 908207561 178938533 896525953 613253611 919616274 483868095 520888929 147970443 941317623 374077305 614422147 960583417 980314084 27455914 559020330 838892232 971863045 21617984 653930975 640469093 774409343 213184628 315729721 107168720 459062720 611232716 724079093 910420777 965596184 847229415 964046057 799634942 907595700 65674665 447285084 900614293 927773581 318712743 760245745 221288961 694468905 434762786 938261851 530132491 716788124 366913997 541179508 888445567 990768443 844766421 860425697 704084528 922722325 160959398 262613504 942736301 990271787 180899079 840658835 265552950 322765109 859503047 971688031 203877850 991518146 955814245 967582934 402781801 516795779 719812371 797395153 641511890 903017594 149900908 691027147 593584200 874652301 986061068 997849641 979647109 979945270 138107324 383172602 816012896 929220494 547190234 634604953 232872794 368982820 203223579 830561765 3826443 6985995 874075878 916000662 253467647 717636391 456648690 694537901 45597287 884469749 149794602 570039339 598272445 979847308 971280562 987276041 729183424 944020844 612480109 790705699 481459208 883122989 927861182 962711251 542761008 903470451 64692023 825992424 256102985 466021791 498839392 621087635 50020904 762182656 702958414 860914245 373992692 562528593 506633298 891561074 241447955 480506922 367983364 498935072 282431202 460699656 588625606 652095237 773680717 822262877 808100449 920546877 384282099 822015622 46604775 267774550 463358254 930354836 867743667 884239222 43147500 657994615 593728043 674597496 244502306 986464613 625071603 828473539 843692486 898198576 488694191 861825827 457281216 913919807 503861143 997244267 797815853 907052535 893544183 930133957 655425711 910408403 884612778 935012460 616462500 774603203 76834611 946362797 548913273 685330993 214199611 975075693 716085150 977098884 534513842 810222165 250960966 815416576 844079781 930424009 223227609 641451412 328799090 685433451 950187004 985556362 486582506 954198095 185520019 648316557 250436156 608141790 551102027 657708081 194431401 445378643 964214039 994182323 925483000 942328814 349270772 573473501 420575204 776404242 491274000 569798015 563167748 804146948 935221788 956078598 227370504 511903072 95166349 915509886 924634012 949020733 330114812 937339672 904423802 971178322 12465602 948074256 496753150 596460841 702592765 866934381 836900336 898873507 655522890 827076307 734496458 761763121 756998540 770446475 915996470 916764060 530243072 595601514 839363079 842076145 672328694 742149952 711729754 807207485 512091551 775424868 42999696 784810474 249629415 667832928 194241763 237212490 113108314 470588584 155332569 690031753 965959786 969936426 77750851 345387525 565979320 744759982 477250247 862298603 864153150 995876905 382861343 392309260 153810582 976574026 193851454 470456667 319384350 597526217 250139622 806757462 679819169 964346871 566293068 870625657 920908634 973796636 29965846 230516102 899851430 998286462 672895839 859558985 13230105 944880015 171635002 942909467 791070424 992491561 608349292 848403225 585428463 840696625 855821985 975635254 190194063 756330964 526021150 791222858 407842054 473685570 681280593 786002051 791923139 830884770 839904629 930706207 476014512 487283729 358498212 666995780 827162965 914987730 367749707 696636338 92345462 605605649 779453218 946402346 696953428 978227315 338021468 856362004 371468095 419724525 447905109 450743062 169434109 875640931 291308066 677927981 135986752 832714269 792835146 973300443 542897346 972525928 925109081 943054928 994209723 997197163 497069711 565972890 898528819 946876578 498886057 713164483 486495337 875430061 257932426 819672738 430080897 830627422 218283112 423150157 531933751 856129785 502044725 924484711 136817129 979455963 159097792 535937945 496801252 601706364 38908626 706023478 413027369 767729419 443706265 763956396 717697807 827496585 863908651 883253642 772587011 871187645 455061144 462399615 781773621 799450848 894749564 986553110 562504102 659362348 902195724 932450806 739128711 879442323 214754358 511474980 963084404 992521124 406195653 429803955 906816840 996587383 542223879 817510189 870347272 892466669 238048361 982252945 100171384 103739718 180199821 579896114 634469002 838275305 294128574 831003529 351553174 671774675 862410913 987357927 906222130 917429915 376370571 964842888 122957756 997429606 622676064 904950115 610062340 971999092 782690182 984301328 674069877 768646726 333069329 643871453 617293831 939114114 752211794 978649968 260110280 946466656 373739697 914573379 97848284 325458925 624779209 725388254 724121100 958804752 191003590 567931954 649900317 700664746 508365003 619919653 993863555 997811772 746823654 929385884 241340504 361788718 898877724 927991385 753666236 786617872 70102882 622055460 102467660 568770166 984727736 995110091 180245278 460428172 444341947 831577802 685262708 851012763 469697521 499384449 652915096 718232123 870504822 982378592 364004078 782510239 318308831 677743017 239913938 565618531 184748063 885382603 904764099 999773645 607154048 964169049 79201073 162640638 303378349 509643523 519570249 603537252 988352984 992818995 6625916 998441776 375540183 564208366 272913924 676441299 220462371 897164197 584721831 945346310 380472333 838430156 787241202 964376035 304313971 936590172 452588449 641759817 680569529 853699548 764860041 822463570 878706982 924432115 112827762 507328211 535818626 999511343 371620530 760438617 75716419 360367520 117285539 305883523 455238879 628175556 407362210 918272329 132964214 759292327 116729744 579263142 386275537 650268197 791514388 811433572 728163624 828388324 671666133 693071015 25279898 349971402 591681466 892108321 502059287 845178295 105289444 912658998 934942231 987173945 330943773 652196006 151180296 992814219 931004279 950395491 71014914 609113133 961571932 997200386 254847853 493830220 226901483 519844782 168025141 207960937 676212108 874900967 657534112 820609134 553957170 657506941 998146177 999253230 803459345 954783802 836680860 909626449 294428963 798550148 778765633 850826806 807236968 950541358 577663600 978823048 830652513 972407912 885100676 982716139 964528171 996234303 143433189 506882073 917102342 953958546 436990219 646865090 80722053 214149868 571182595 726286087 488511906 779518698 562493374 818766740 971345160 988382106 980508586 980743424 678361950 917501338 894810435 937841787 837759378 886771940 313467246 586714750 257438552 864134756 383232855 622449560 819318976 840498275 222366932 488326737 912499659 985902415 862554974 989893746 483879832 962963693 804035892 996732266 299451956 311140612 446121643 724346181 511981215 961424914 52508073 638174084 622322312 948980857 819910379 887716070 928218892 974977744 290922693 557331824 534026700 697531774 735498382 902526856 333375560 673618406 23433167 890491704 210294133 781449349 204520158 597770132 395595327 725065023 70525197 955492947 993368990 996238924 680558599 791897514 792393741 947636875 42898410 237675312 853942678 904658812 813827041 966637505 507551399 711659376 46512165 336694776 942367304 969743503 622656527 623740109 605454236 643584810 786058981 798350537 769540836 932523058 79458865 299243595 641379796 715069920 598942297 856349897 63347917 197825336 694486010 908677687 791139960 946181911 104833447 420592014 918957009 990711891 841910344 842812724 468510409 962204658 271887828 459354064 262928914 878189140 690052611 830744386 736947118 754863068 506658366 725272565 365369469 735164323 781218368 802842768 551392826 560473422 863467885 939968595 920857743 978295373 235676101 782171445 201908634 852428952 66404424 208328260 921717830 924160930 499108945 926226709 181080983 186351724 541531964 602754031 431643887 934377464 432372583 575734634 390615824 728257883 512147285 819717585 971541979 990579625 502398913 831877516 754024343 892994253 821775463 997897094 36470681 559308352 364602559 435696175 426447879 591404072 112812907 972575538 334994564 480483844 622223176 773543605 304529111 540064100 741517865 827734314 853357264 863146539 112265280 893319241 902180990 942268978 386618395 886720637 142333322 456520900 826634329 864166622 663675470 752111407 632503922 992570522 491766387 932041359 689319951 926575008 847588072 902202151 154594544 500077783 644385939 693404043 308273000 371623675 483071178 793077897 76131651 201771160 969375845 986009897 124387105 127290955 326417394 423517090 419516929 794284428 541077202 763328451 563887333 829721981 747910624 910393564 288776551 970144684 572125931 805455016 183347235 967443911 529027444 697912416 6852958 368946927 453981314 737471822 228194057 745137293 999920444 999959440 804470995 969164210 120026583 824374111 856811243 932469346 534599984 644857920 953074938 976951256 89850133 427198373 508657468 578228777 291366172 813369989 362186254 946902464 121797463 350783145 726801986 913098274 818082153 917855217 128766999 291958430 66554561 204121151 418145919 876146974 478508183 564707120 595398558 925383337 546931906 901330627 419067708 693980353 900368315 959455421 121428682 709741015 565790082 701303853 167824509 489559651 491601363 665164460 787218513 920616768 930218400 949252707 930309477 956770122 85702690 137161560 670886716 861038540 541649938 573950676 369065871 631215439 508131689 905292786 505088722 829503178 43798962 51463923 956719181 974151880 197370605 827097528 237892153 496696915 94255393 664565008 986691879 990279452 44949143 459241710 979531175 996983537 515211151 677136991 399005913 782629190 409692848 793210915 54774528 577432302 230003881 587794647 182875736 689529852 640158529 863806433 922855315 977375842 340617630 398661427 912323314 968804920 866387564 871986811 561102208 947407734 752753195 964492627 44869052 56153095 695462758 987314467 793398635 851106354 772980943 921101337 375943420 664680400 135038879 747102468 234263967 618717217 307482787 560444409 48355410 313937430 368791991 810092783 415423612 938064483 207757027 993654680 56863411 881838506 572019542 751237108 175044668 880154087 479073953 925459047 332791766 781676833 56971637 200408948 929627166 957797140 233690263 937510790 548714241 839492632 251321155 270092217 645891406 728846931 342563249 799599081 678498266 729676494 23066267 46377490 721339289 867134107 420000310 825180565 316259283 872722391 55902653 837250493 671992270 738714028 733583509 803523698 952269298 993747060 179430005 562004368 902809638 987426325 279950824 395343974 841487818 843837264 550225721 949848816 271782024 956199321 156150686 740987940 404529676 784241726 733127466 889133622 621324763 923816094 903388047 905089436 845033188 995679141 324221706 414280625 825343210 956980861 751322384 934445489 770995150 921839323 564790560 758527123 386551002 437789246 834405239 886437566 733966709 906183729 714655236 811077868 195627106 373586073 815843767 955100876 389084608 904119771 64130297 578291373 379958410 561356814 247871847 964834352 489451065 882292862 850207267 998558431 954720918 989676933 173163211 264192633 63010911 854729211 172532200 486484900 288330117 461007061 167251018 606766292 498047505 796062842 246619433 706539235 956551986 973887088 660330063 766245613 452785085 978942532 565143199 852007967 591561842 766736247 421082586 653425072 62469875 447013212 764718754 766921203 999716520 999990081 158306632 724524615 39250041 703870044 346737797 936094857 683112684 738750928 262207581 567486747 248825729 712801606 467298181 756360104 703125499 922180753 584339104 907573349 746929583 852013148 440161438 502040389 858115731 970817993 145531955 861936246 710400712 922577919 753977271 942186285 790386097 818244080 349671425 367501844 406575429 444335009 686565834 825571176 977714863 999185237 368987748 497143455 74005219 233714790 249287358 609342025 259078985 375685855 614133410 881626129 708690767 748860622 879201533 924511638 462913712 539886354 822714249 886651701 965900911 967646059 521650299 786353971 597232939 720283747 792528320 824294842 178300538 621647450 673999452 813011474 137320490 652273048 513593231 845297863 212602747 374860241 96504745 349250787 966655263 973520454 369133032 600606081 930460663 967785031 218268615 255723904 948521675 959038313 351100704 710797346 707950834 942069155 699316928 722812588 413714958 828125330 819240200 966388246 17119898 419080786 799381029 944123871 257908196 980895732 987653027 993218856 977804692 992075092 358705668 817578067 130687506 160789662 928572437 933980857 751577710 955867448 199270255 758502112 982230159 995944533 166931730 831170220 229563824 519644375 341925072 598655705 188746845 812969285 856894881 931644004 502380808 658786866 930733805 951489209 555789027 583211623 261405558 759239236 903090340 965794425 520223273 821075112 965068757 970840755 327147622 554389892 583143246 994892497 461196694 697709094 959538984 982721968 840586684 977720005 412437662 647898106 110262978 460895946 75566508 140219999 979792107 985506373 915387449 916444894 375893871 709163361 665990406 909037802 791335648 929310449 282239604 983413363 571382887 581464406 556379164 767276464 302288405 696267473 567659349 788718710 737051759 771121284 440457383 684545278 998788593 999871956 679831924 824316085 435776482 699568191 910959059 999213641 686582452 795627381 911305047 935892820 308485317 565406164 615546965 722096835 183318654 458241433 499539248 696939633 969766339 997989875 143361655 287510727 524395056 848779930 850873688 999492610 357673947 475056412 416265854 707467201 916010229 922421188 827753707 834145647 477921439 879490775 998036533 998630479 328916765 380175539 335937242 873630912 535859337 930612415 448082829 782912112 978793987 992584186 183997759 485850650 530494640 704630424 999568233 999663462 687580814 973489508 112827280 396890367 944993468 972321665 790944319 995587722 634399818 807614620 54840327 162115763 656596723 783930486 352868055 427238299 513384022 915061872 27162683 535805872 142842890 538731386 858681989 901345547 286544313 661844761 786796562 912077322 395757744 622960933 856063519 888187498 299495201 346757924 196708120 362582120 535064255 763873488 562372541 753645938 887248369 921662962 667420276 836215977 698749889 714441421 550617836 970426988 284429478 426951584 722728440 842576209 838347393 866176053 484048583 534148944 631122595 796566038 124558448 999102997 23977661 695526664 828780814 860621726 2757826 628424807 431616048 451028838 793792513 980718446 783764997 907543708 215956431 750245938 942966864 966981630 72362017 756426307 986108934 991649288 414475026 923729603 823039671 906474027 117649223 120291741 547014914 897000897 582619114 797885647 409407990 897728901 783624982 807635612 564313828 833616886 110882342 611704612 360926442 721220400 434007412 525098821 245204388 473198014 990730948 993777031 229474551 523112808 492951459 788179263 824737602 973072101 190821214 739134540 315042467 701702222 844000573 897288325 473745956 779406943 850243578 852444918 763057358 832185206 325595517 684983993 789223976 831777457 757684175 817378635 844183391 935244741 923479713 940630363 75755449 893558823 457425796 690398444 439407224 740339750 167945257 760610847 217711511 615901717 35104003 940746284 592392545 993621518 584747247 654061270 108078687 796699443 847135223 853343900 303601563 377720469 917826189 982532945 721708724 953135741 478201701 876286678 827698689 853942878 103516491 804685907 829239832 928547860 896808277 986319091 69662840 736983593 799329515 905241093 715036321 731798837 93428336 316051544 724320075 997548937 193536942 793584286 267631259 713945133 965499497 979093718 984718354 998062587 104900413 652003410 107047156 676358925 895253187 953069130 637121062 898293716 560530283 634706163 345460016 859942196 87443658 747119062 981216981 998153736 525799651 668258153 991257020 995635635 490639340 895601804 541199472 935494117 736033631 987326083 755790717 960423538 934478325 948853263 818940222 995073698 482942366 658918114 499057979 540581172 545355930 941340106 527884885 925156469 382597924 687637853 829291280 913755502 373215677 407439070 737499315 962648752 312514659 387769303 330974179 720438343 416115901 892157053 204084345 445296055 930682513 988331545 753356141 787539913 634840253 713908943 19069111 103158685 356358520 810121823 571223317 989712543 815379533 860060763 639056308 860811782 390234396 593466567 890942663 931813237 967021066 984363314 49324465 219393235 739945337 818697858 58289331 378084272 414159603 899977841 184391562 799360317 928530975 941147352 995448962 997836827 763735277 915882914 6936229 545234369 270487175 406371577 690947189 776152902 164526918 496790184 182443000 560218260 91397798 826863486 559417621 730800248 245233272 735454702 881167154 911446187 507592714 706543255 665571814 743105061 333365257 854234845 366261873 909567310 496931728 845258352 666195232 939024123 258976978 788304565 925849114 935094032 678049670 683130100 594741291 696263736 327832281 722123817 210088585 517930940 268548984 312935135 398508010 786688984 536409440 766291307 239994027 378712887 123314626 764630384 707452042 933212480 108777362 946787736 99671091 645171689 709766028 767171092 844473026 870412509 749380507 906299556 385408792 644126431 134935869 426385470 595672968 768738818 936184856 999175923 61784300 450204352 647414987 869178535 625994702 789119302 727674334 817498273 471539277 574717027 656069774 948197989 745015828 826916150 354839101 598007888 724857691 765293725 245672032 958535101 77030864 791359922 595928140 692677759 33564666 485153803 456092588 674448319 306951064 375029954 150286698 281024087 165964477 783789161 663406129 882243981 466114173 653097749 560374431 776506331 483042860 821300419 970411093 979635325 92308260 719631019 304005863 365055993 240903632 624512461 315542868 381097624 655361696 965193068 641214458 790885984 749898249 791789736 429792861 795186154 389112549 828180289 664740356 972161147 208780872 590754160 606142249 746640057 713165650 864540000 995284655 996262578 174837982 192549181 886670681 970897823 981745522 999495436 608409694 849876750 913333128 969882208 888653373 974082667 924088064 956763937 863090430 991708909 326143280 677740016 966736363 973305730 554478208 926471165 89250551 976719980 685805069 765218843 761854561 839149875 408331724 839492987 968168101 996061657 403788887 550517883 340022307 856234882 841644809 914575759 575234429 917526708 504383956 998369620 896771938 996475363 747816895 976812588 820352780 873882992 480649583 723547020 832614090 855097967 691965447 760144842 663203643 801446323 387465477 961536737 850594821 893328514 32765740 792099835 841843276 866534966 890926635 944616745 369713450 566715421 763007530 828863482 447166875 776388805 748404868 948900075 528489090 694025037 563922915 917200850 899256533 907304256 17742895 845289170 62313533 737544041 532509538 710595325 851407146 952294063 598133393 871184273 496358591 664780634 167495947 873638459 738905956 974998688 194336022 609397863 226848673 496252045 264019922 918484070 280973792 409390707 753719547 881575816 178113499 563006528 681625264 707205167 60362537 778505867 275955003 559355294 40234141 655130581 506522374 544622441 656247461 831633357 858056008 953976364 290712776 596987757 226265252 616016850 195389725 754147579 385828579 735273447 276249082 987798515 816087677 863561308 104024645 228238171 464712842 759186432 283687523 298149576 905774937 952575609 812892334 948010103 5997931 959951011 874142117 950695754 362307334 571031666 340589876 660551313 464318772 532618376 143330383 448206523 291393926 501227344 259912185 997561456 248661520 263554453 270178877 350661811 204010612 266246580 83488882 264835524 442783202 931836045 168570785 986248436 712440116 863071358 3857884 62322506 410196049 787700139 353577322 958311411 476282462 825809640 378654202 790862660 268043443 376187348 217129920 360378823 955001261 996127713 439326642 827580492 195887860 829587856 651393817 949789073 410191734 504818560 816254883 917619217 214652810 568934894 243958978 448455251 803889353 927569887 890374053 978439291 189772902 564181813 403040195 446213139 453374023 941540802 566259323 624616443 114007461 444046349 655203611 978526137 229671688 306381645 87533496 265889571 290173176 926210556 11891206 358829671 484492085 760612631 801548012 958422155 781828601 844193903 735375986 861679663 382045586 490688894 257275028 333137484 10338100 25259563 721683708 840618192 287542437 533320683 863527817 906791466 927285335 962921308 46654827 757957850 239240601 609882030 705658736 998899703 757327577 759327894 417530265 945004948 401610818 674510727 36265731 689495399 133775535 759506179 155869037 849007314 851511303 891443822 696446419 696793225 692839274 707057661 517710848 721540011 918598768 949984279 327708777 429671707 422946135 761315376 135094814 734312781 282138287 986910025 585262814 704744066 651581062 717440674 987207293 987387609 889163403 925610719 547970169 607055507 866981726 959499347 469422647 592742794 432248224 461500423 552871764 556113141 522167389 804531742 766315334 884515928 232029796 998181697 679795303 684669994 667729926 808339284 414541599 994677948 615612205 682944199 691461274 740998105 578671347 894525621 325600166 642188260 319113671 728362363 283745293 886457554 692371370 864691398 846849015 857134984 384123365 623777840 17164265 242722041 91396456 223634404 77694997 401812639 237253515 724542506 668795595 776498614 255270677 456260203 148757324 493058652 905826853 944155844 727547596 920394316 978844588 991439150 394245436 957355577 429945603 774470466 882098870 929523957 831405249 839012938 168548787 816758541 452414611 950625642 192553488 259493815 329583116 379412018 190602290 706888503 306593126 495874735 431558216 533847070 328185797 394183179 278430672 641977727 825982909 891523359 810726853 999092566 678651649 928825959 535323931 622850332 684156642 874596804 602085368 988806700 538251107 964239533 124167409 130539035 16272746 197549468 757289056 771856713 5082650 335200466 966113817 994442218 235322194 314356932 355564956 624442709 453590476 706087039 298074232 434497531 268811552 422785548 493723996 531555307 36900224 482016047 798967362 866323678 519285958 953361257 218914158 839755320 938023478 999449884 985314940 991842210 235816706 856552291 103473733 907820965 979170343 998015873 466782410 927583548 934542238 982904760 354851772 543282395 687843304 991836955 957096063 959392121 971980244 987281267 613009133 760283017 179709437 772604514 204723405 699120876 588076249 989959443 851155944 966000257 159793302 852307417 765492775 835358074 363607442 986472411 989736305 994562729 169976948 273588453 636188984 870777236 226878844 531233665 92859194 317790408 209740398 910153969 348221788 669607044 952746486 961780184 270660469 983725392 383952210 489036227 119431796 120736919 609189386 746467900 56942698 432069215 478228347 625764305 291923406 460563539 786124236 802231394 920599637 952183390 270324139 953043836 791370864 844509311 129824338 634245826 265806636 798045488 321151041 533267282 606400830 702009320 743123508 895862890 96197208 630645220 237057797 891686901 891021797 949110959 233166712 867454750 146919324 832048313 293598070 524004151 2676679 147329989 817706339 818176367 884219476 986661505 80486422 965352847 252061196 950233632 908736105 931375571 992326187 993740562 860829126 982380743 347800950 782664592 431693150 932683375 769513279 833667910 41266180 368226481 550076620 823000793 579184141 858906187 726060122 945808912 545014860 834203578 297452399 512651528 282243161 964268240 665016617 772495068 352699014 489066245 729554915 936911959 623733930 699298877 151663588 444054497 262527180 356097557 353018502 430242167 863180920 937716069 656151644 947282423 523793711 631303615 40974358 490962032 745197728 879803020 528397220 678661112 964294266 987222015 925532530 947333937 509252324 842532781 560791520 643206266 612545558 756666375 540663767 864177562 571277711 692889077 199110989 435818955 458040880 931593554 710314070 836594635 960115581 964278210 564524863 927063526 846866699 904138157 362173088 485547483 264324861 625785258 804006515 862046168 492230806 927907423 615500858 616192347 536650123 740853016 544175640 966500171 974453461 990623689 408201516 660366353 645271308 766402099 474509919 848636152 118928 522316154 608798129 935587801 71301301 571718120 158048139 483182920 551986413 974650180 354136574 485663553 917624507 959718712 728061425 941293669 126307036 561237882 198925091 401233161 612057335 743312404 666753886 902742594 782077866 890212502 962915062 981124002 109841330 458336937 289016818 659108367 75682285 273926873 202205906 212785472 866305382 890931866 821924554 839804084 595472932 704596559 435883179 541138748 702710035 995297820 54769588 302543848 243065133 837006788 494315022 510019509 702535425 885879323 386318725 567196552 928789950 967816728 356588353 365286031 207716048 861045879 851393043 912807123 249332017 912052698 259727446 311150379 103664717 637832719 986251177 992259841 390243817 776817089 555338786 637148418 832147415 904123801 895668366 946368301 618436100 764427113 475390769 886941600 198023354 790872027 194903365 536421048 831578926 897308130 267431982 699244582 572489803 674693327 217154475 803685397 965144006 976663478 742499704 858004678 60422636 656368339 230800647 493379139 585932569 784457531 377630765 881704764 56989297 545315121 952959072 969886418 83875831 306790092 619736031 776669163 346288800 945922392 535639569 892655746 430213943 751417405 83960800 191010348 476086068 852312465 956679557 962291539 582866060 808915869 275507076 835185206 40497939 769377223 305319986 345812243 345369064 696575904 948534858 961326545 234903169 820852476 818736542 886181062 272909100 422326688 235523358 307432595 946385054 989804244 166419912 850262498 182092953 219486390 463514348 919838333 776441237 807341447 495020199 684823804 202352570 592720161 631771359 875776016 888179546 921451368 330830037 987028427 125628206 723180527 472696464 853638642 811739168 925305976 585184091 919480554 396057476 857646848 40581006 324268308 518692614 856493017 403337861 808646623 160234441 370462075 414318558 807178536 64428512 312634859 529230507 894138869 391858371 744874858 17745597 545344691 182794727 352706068 229434948 624448895 686707317 946140146 428835827 912577502 79097255 102717662 241516536 718912523 828849914 848450284 954940999 967939021 739435042 750012300 609564698 640227586 901114883 920833848 854953491 964590087 410210560 486891970 809572167 967033764 694121717 700066552 825755400 860186605 385343583 755754292 244614975 560259815 738593091 972842805 498776661 948482766 827510786 862445244 629787491 692469206 833485149 904816994 36692826 776210684 495071715 880136318 949824389 997670596 425766725 955993198 237560782 906022903 807556545 942259337 940927631 990321589 228100646 524209703 661030937 837416356 578907559 825056849 229768658 557688720 374808516 705914482 997087508 999421721 747430569 912323591 927000922 939105844 250183442 722719131 350341613 555130540 272776972 639377326 864106803 897880759 447023687 894811484 826876122 956937938 900570525 981077172 797420510 975870609 903484141 917824420 346725560 455709393 32231763 760626886 543307698 866355599 594516056 957844758 329306016 951919790 530269420 889535045 100019204 187606036 836111025 986926089 739415963 955708745 644172791 704132993 27181210 365894856 514867841 708729450 270693281 859828338 245634024 842634767 280603532 812893581 563912411 725880549 515620448 709236450 886998384 892467077 19217570 278436089 931269323 946207080 510592982 821087193 692328055 774318535 525275315 604074821 231677071 506375802 292455191 536646753 653712570 861615380 901360215 981871205 965193264 970620839 617532307 696933855 30333093 691199408 855028541 992301252 6417944 593201185 190749930 808709628 338032426 881493601 378573716 568654967 341254210 993803463 681554716 885153540 873233384 999454469 44036167 76288921 671931478 871782563 805099158 995072684 998151778 999417329 771587793 934839203 3196634 455141269 516566258 807864494 791554447 918634517 49173192 902905142 517471098 765500951 2925530 773834884 693757855 927275207 861741141 875421230 645227390 966042722 407886818 600546211 880395276 963028527 405067161 947214158 18504051 425125623 941297032 989158791 472281166 584224090 948047247 999950889 382445789 981868544 171815124 997135867 175776936 678657105 724653664 948200359 804446891 970919576 140958939 315703181 881646111 941335248 432617474 932436159 338750749 546781515 885464353 964198722 10110978 322252393 4627815 543577126 521842576 967945626 772210479 897976241 307768225 343500439 690757911 747688546 626218057 796200062 544983166 549088277 16489371 360756883 657448763 941200224 96384763 373287640 768766971 947739682 946075697 947138070 35921438 485648987 303395872 343266072 551104066 904347710 467121158 539614103 887291442 932867067 351945775 939340256 933920495 958845469 328414499 554904415 359092780 483042965 536514041 707220051 173756841 873403239 860539457 968857553 36359393 165783964 52630329 920220218 674226783 970524284 323644934 547125290 521027466 801232602 484663882 598985068 389258957 482713715 658178195 769218730 945462544 976308899 119841794 422646359 424346990 957189382 634211826 875243611 238300032 905263369 116043268 148196759 847817603 968522020 887786155 992411441 153554388 390815652 966779593 976054008 753877736 954016346 345974380 819854237 686641928 765675281 356523204 472554051 221010837 504626707 945904997 973571156 500154709 506547051 210030654 212320189 509005181 959653379 375483661 749934684 615378920 766769809 504349212 695352604 294664360 591211221 996679032 999571377 926594801 971331223 106868090 319831112 419086127 607707291 627505422 800813998 479475687 845793512 942665258 993640759 250744289 725150917 529855056 833968915 861318957 868113231 993358576 996438789 883359385 954689412 581985367 593320500 805807246 908214500 646017158 819842999 906086428 995234607 529584315 890224064 999348444 999546849 504628320 972669733 624776195 754905302 644114128 959507778 283127103 451316363 175865638 251162103 154787003 431011812 564403524 821657607 68100254 783144435 907377494 918328281 925275312 971584249 75324933 564349767 17783629 537416678 283972017 665499089 576445412 930663404 602194408 822687035 170433619 912888267 307432879 416312584 705904693 798674951 644413074 914754932 842102822 877746452 383793349 499762067 742033097 853221885 172521705 548929607 21394760 130461087 429551333 565958707 535447787 982618365 809485795 988656253 408142920 703464343 452159789 560153505 873374770 989475137 171197806 586122944 346554590 498442849 210516147 661701431 581123786 825450706 223612085 426039540 804527141 928447077 19177548 876168460 577893051 788854222 99452073 763162554 442850746 563928356 797694165 949988169 410431145 913823944 973425919 998653123 476672886 948611778 340132176 704683069 409457406 582403543 314471618 728083102 834398512 915258625 70458404 902527389 934649133 956744727 702048056 965162796 230400004 530658858 464432721 738920137 130566957 367423009 550514236 982299477 925865685 963124207 478157212 763599016 798996078 898726368 318082456 336549524 657781007 851425012 957289291 980210689 798800751 803825050 375710798 946857913 197979929 693998335 140420363 368230141 737407990 796541119 716206189 945834721 607317855 692617184 906815925 959627995 170541028 512016196 584073532 764225823 402501227 862838786 772168204 977032324 316765276 845606304 822728182 969898401 119408459 418824797 302007392 538882441 135699739 239818655 748238396 976598339 392432948 685144919 396499937 838205774 541178363 558477020 990111588 993991639 71273770 897669594 646387738 915726646 257634469 346637272 217341017 681847281 279541832 745736296 755889042 876198430 617101124 962326839 315530782 945122585 938131239 972947960 42509451 411790732 958991229 980387592 860573017 987332885 750957921 808503000 505139416 743238747 531110637 637033132 264636983 756393413 250540488 974900687 738923553 855784585 643797342 932891843 638810578 719634292 503439283 944868264 884013686 931370682 568379183 590397086 896766981 907441017 21683526 470863958 509001823 931225061 761723659 794719057 679162257 914926855 700058760 944909850 556678189 734546042 853245740 992960982 974502253 988123268 363825916 466617127 118648190 825413068 126252865 459875360 157973982 996739159 516757075 893511775 608506649 833349270 566889902 920293622 538984751 554794898 97044081 608463154 135048063 658506947 810419669 821584354 665969543 835974992 752435246 799698028 938967534 942149726 887792618 966875595 552111991 569750779 699492425 728956142 817357076 910997967 4512539 529758106 805471348 863187456 744426239 784411622 874958738 996481240 933177254 993423033 36864162 767960436 851675399 941192443 917444169 947903207 438898423 916402755 121668403 617289058 805742062 830106507 777988152 990457403 260121403 404128761 834073140 920567085 897534187 971497000 628566294 976181243 102391430 477437581 489469347 518440454 716023068 876145043 605469759 672302609 160316678 591894807 896749767 967313144 140637430 920226558 917399674 962936957 165525676 671603445 193737231 839238855 65363582 523968090 265278420 722443000 185145247 895134149 774270268 974429299 295371435 567017235 89117858 912537264 397547865 728405478 97016373 459434455 640433712 960028381 817689492 895440850 214437573 803297858 684490872 876523334 514772371 786619413 311810118 742899793 601948704 641400514 12879007 434041652 408705592 682709870 394288142 635180670 842571539 968848293 92379694 978441045 104293745 524720852 684410379 884689446 389567012 993253513 26494230 976612344 870247824 948769775 142121496 408412210 772236521 880919414 408003263 578685159 987382488 994076350 31218096 681901670 154526577 826783044 704730359 942589808 485695430 765290792 922702158 923659953 508077002 578146562 455472660 558570947 799205888 982561192 585680702 954639592 784866428 894535967 706196084 886317695 87706064 698987484 468614331 998428626 524709946 709879607 167492039 212467848 499449946 772962202 972329941 993319153 722879156 883943732 556409435 661985195 995131808 996681469 136702090 400773876 418956039 630799911 556109881 783306497 41594637 624361430 384719819 513391752 11220968 266102598 640831822 828125441 944681953 951979490 271798461 808120076 710185284 917426565 385454030 530181444 983443867 984473405 407329302 596178102 65447980 125082965 262569878 570573923 844451170 981216235 468681376 950464018 202940718 787521489 692662885 980829448 333194182 732394265 481807764 521498331 113246193 927205758 215286015 873503379 429660498 619243798 386623692 727827580 330737848 581929284 392681771 455390356 852020294 916292090 896315345 949716195 407909647 667760411 479782248 786133270 159836436 241371057 329685899 487157867 400411979 776847637 15576225 320774632 451620898 973430140 239576649 667861979 900356634 922655819 185210574 972833906 908291788 957718761 348118804 503994763 386184142 845841270 119035950 212623353 104163603 655581220 691239782 940049288 235420135 502375647 649119731 901548022 58116169 236158856 358678530 659294921 589206755 807508986 166471095 459774841 652654392 834271407 660029866 739908861 201245055 494602276 256000652 560120287 790170905 873769382 119187419 651362389 268110712 416676089 663966469 697793793 942935285 967591507 536016965 568907915 113367371 785329931 539673950 908666003 595777277 924903635 323432175 741153724 541207111 595326445 537198994 819294489 304236176 306752303 904803062 908287546 644218033 987129229 137487900 961820655 808896906 927794823 766205900 800395468 9096905 740605893 69579302 319232243 937840059 957845080 419134965 861325399 759548414 827321398 391343291 702009085 389977188 495184409 665994316 920996114 737897405 794314276 568386808 700931358 371201929 716755861 983090778 994001537 420104006 562187625 240791377 328794709 591783016 767100435 317643844 789669882 927209521 943300660 584790532 911851815 259944696 626249315 211991459 840918524 237494428 916936988 799448581 983929828 424681849 966286873 587169850 798673070 819760242 822847993 109316304 365462038 845038350 940015255 945306589 952490985 387572594 667462636 384140270 930596472 307591647 590174669 889168079 891877017 676551263 893567838 650275410 663640807 477319943 758580493 508022246 561548106 369925885 647226201 528213798 962324523 481710387 672355204 330394371 806799321 826725904 892577195 492191264 959859176 18355134 931125989 858488024 923344880 622761656 983038976 371374513 582895742 286948815 723339811 569905069 617214070 818874097 969522222 773657865 994140564 383174951 467294431 264629771 352534394 704240281 807473997 368220130 676101641 525394349 950147676 527937271 671163616 44745804 768399834 935903946 945585002 586682169 669065726 604207915 844028404 606616043 952096306 385763499 651951522 108997349 942017331 765830995 851734023 189045836 420299255 440800141 813995004 537832464 549699493 965858799 997420800 545342502 941987282 617005441 758019029 626324822 712392111 982949061 993923239 30992764 63754548 439413718 567636607 472910012 531021897 300328220 993876230 540269921 928695245 34882688 939071419 100529483 624547425 114317310 557891420 91591023 245451487 379383148 450982466 726772857 749568552 776322408 844023905 299752702 988200107 312242356 409679518 476691867 828615217 913790221 986288557 147904575 385772167 243085324 415887043 918133631 996163670 29750277 166216431 503906704 945303049 182175481 467955339 259820051 855971321 426922289 627225010 141278514 291626780 343545541 835201670 42521865 711952289 90599611 652768595 709839874 762982445 751241020 832843552 589716124 696009151 803879897 885443120 260648526 442053836 323852331 654628770 138757984 422253194 119498736 750077504 678900978 940937214 399836839 587634372 776613142 987532169 734626910 758025732 230346741 783893499 125931242 581792199 471964032 506920664 49231779 654054383 493712926 687662282 113377813 318465115 876006414 929603311 106774204 501514948 342818998 935265594 593170578 627001204 487832416 961903238 356356824 613709800 130627895 577153952 753913630 823764176 785492006 794683030 475940074 929160939 605589122 968190779 365036696 379803634 414678141 473730450 537939694 913489817 227012511 705192021 15807802 414852163 575210868 890793661 908789973 984874295 825616252 826809447 732790433 785687686 883617860 905054203 848447251 851071006 221914500 675391798 633355771 788466679 1458101 954072349 828417546 910736017 630492489 875703144 725478468 734840360 333169987 617725425 494735 510524320 630808903 651684619 14256049 536833839 452371384 793165012 203017725 315112500 456480740 637263876 535447449 889142979 418355571 934870305 426054184 901162684 987070036 991783990 966888107 994486063 764907399 970474768 810371276 948186462 36180346 502305438 132634169 617935701 224092720 541127179 356817908 593294606 618345411 985331632 987541193 997342317 630460792 998093989 43317304 55519657 296160473 584294426 930487858 975663580 47776554 630807478 730433109 788675285 664078748 846686245 808281961 969763262 412411177 952064908 634836335 907206039 470652846 478560449 627918790 654819224 450233615 546567290 912766269 990133205 858159139 990342264 537180318 769723763 391356801 392008021 59947946 217969684 457619410 627445170 386813859 988646423 869501946 877287068 869678401 892162719 571338513 972630608 111196299 289646071 716038501 997145905 800304290 858045633 921460804 996002855 908742213 974149846 551295326 984260749 724643214 860694757 532820458 922084479 898310241 980495398 239097190 586971243 534825985 622508742 920886535 931037970 558262030 651805521 316625818 961453308 620117797 631661842 692050390 937548409 381262706 467827257 301550315 490162157 169960669 579411089 342222179 782418760 564730028 820551124 654131027 690943163 631350987 835366805 671503855 714923757 258924186 413712677 620968800 747971113 820302465 883232733 773059151 822990926 408244948 838005999 187802715 754245568 78459669 906737234 223030221 824954436 454400797 654323535 20291476 24657561 585093827 614603656 275620963 499407338 918049503 920743969 815914901 935181331 915743127 915969400 564001887 594058081 965743047 988729315 499718031 590997253 334974742 876507207 968405343 984136409 778512694 939697675 834044060 863119456 306972638 455985414 881085131 982076102 221231338 818550066 451281635 771702650 967280517 977444116 145033104 334413390 972274426 980410879 719829885 863763319 872368498 880362940 212664262 755377765 75324165 567049421 693076233 954229036 997762959 998213712 428199759 762977915 172739573 475006906 431110565 533898739 43306665 249041061 732962693 791776560 906750329 934744749 293158317 379598087 857420183 887477059 275517488 678921843 905266727 986085535 981019603 983612889 386144305 620261755 353800344 535100330 291531877 564059426 249810989 381251444 102722055 427941662 396224912 519612683 924037400 965352569 596360383 683743294 800867463 973261976 456964129 863810646 384176499 887100340 476198933 503503426 352265416 788782164 999807503 999837926 629370542 909897588 332883160 609304756 454732815 847638198 520202449 820854756 436452876 967315305 845776357 987487316 23153356 954924675 56894282 844765965 724417855 951475850 673242734 876414856 896491474 945860469 199646519 386616942 993909847 999613851 559686164 916660542 190041643 497433072 984358524 986159299 542191233 893506201 455629990 604669875 954443253 998232222 233479341 276375520 571719927 924950496 396177708 787449521 85383028 956538319 964931961 991277993 769489405 945563601 497472168 768439333 370125810 636084753 821450234 918923680 688455644 900803909 690838642 760796764 734860588 740718152 769607422 968214004 754751924 851716256 321547111 838543500 259257735 427689107 812543470 814193031 398072828 458471112 745478470 971578017 625509809 940883378 794668044 959596406 822978181 886631113 694585970 965218526 819825262 879901188 655704341 845497392 901646334 983442081 307950330 872288196 432463743 552429128 43943756 697896411 68438465 535150004 626769315 801720565 473125111 610410569 717009827 789725793 861759851 964577741 463736795 547951653 332113163 404581915 895033150 903704557 133348549 548757683 666747882 952536639 28183453 950765000 388375873 789082147 460032251 816157007 155189522 959203648 192127608 849390314 771267990 988441275 569723541 785445487 846794930 961706540 217724734 859671088 499563515 896814907 434598613 970902659 582756788 782770725 910730860 971245620 441900256 903171093 769614832 821246745 118204165 125097794 807703441 900463215 87365848 175902743 324494705 621404379 49409760 776275589 466386392 915506630 194497178 875334587 825226402 987273259 535007322 688404388 840740958 911227754 18795407 22617312 380389757 466773481 774993717 825967119 234478031 376441874 73011595 618056074 516826125 829740194 121341140 594220505 173807374 951542603 667501100 705695709 454508750 949415252 361923221 570584071 424429101 854294083 194056976 417741953 787875041 927571359 379962169 794482723 721136327 773989846 673494907 956295468 719072909 729498439 177789799 981125983 762539967 859797691 517990426 784188458 33509711 188124239 667489825 838689110 114433442 855553340 973036142 975048049 4387882 128809815 764841509 962455709 474793291 873857923 592709985 712131598 844203810 964145872 247474417 622428937 502149899 976170194 352203993 356663135 575756915 895310953 215023690 242246477 700861381 930377494 241004313 755991136 147929469 190333479 377827664 530607227 519925699 642682870 791371958 942143244 935124317 949072313 321616569 351427265 956824234 971082520 479121622 871410635 540747952 606479146 941356172 959749111 912541195 993936269 552148471 974328015 956393778 987123417 323303682 914998100 877261709 895214728 29420339 874688773 131350457 923374999 601572602 730507822 396334902 993604447 103445734 691113918 584848733 985946352 941278483 994190100 128552903 533030999 310909626 997234996 657968791 765283186 577583845 819094108 778401840 853892957 181550917 663297361 275076482 303764749 773102709 815578225 29696530 962126397 996935690 999368628 256842792 448385721 262708913 670143072 347434015 425552492 690970483 739234612 976356199 996096199 663653463 964017787 986687134 998070871 640901558 915890803 968155432 971591596 151140249 629099356 664038624 702585139 257315890 372781137 289613417 918782927 352940714 637764553 765907626 787926170 497326470 973792743 650436468 678230265 784948819 933744657 381833561 941790781 685324504 720461626 20752343 126116159 440464802 524640247 624022746 690933433 973088217 982047444 526767004 654270839 531499899 865613573 769051988 830244683 478322294 992317950 322779755 351262725 987521248 991266354 119912477 671141247 829826060 869656395 103522287 746986016 988065678 991987031 341106250 536491980 118356777 642666665 16682767 64970073 442394433 526917548 994108605 994596173 663312740 709283411 931147328 968408147 376496452 815051251 347482048 657332293 748383174 798257552 111859374 582716248 14624920 983406189 385427588 787684645 454149123 614066847 134138749 682067467 116802902 808991036 356829359 763836298 95187435 852284680 388960116 601069767 611789787 836176586 337515844 702720819 507773139 632565453 696266464 891678077 594280923 944785214 347242429 374048914 723843649 730021307 603228449 844753083 75095693 546883194 702281823 729372375 94778673 915170967 263050062 567589504 107859995 782748830 490673759 910082217 768575424 902285896 549111654 849982503 403591689 757865701 485153983 825365167 910584091 923878413 230775442 833026657 535622128 956725673 448580616 901588550 638741023 775806624 672919553 689589556 318080243 677727379 978590305 986345926 659106277 811853005 698532300 914011070 712036725 917125127 176277739 462728438 629027829 731489073 166059574 723043211 625144659 791982804 81150669 596035753 279149876 335460308 462727827 486339326 16349108 649767580 504484680 597879611 959359032 960703930 822680075 926596697 44770200 268172967 204951285 295780802 765465766 960474853 330279486 856518604 357413871 627490775 583307230 665189114 889559828 991541331 874324938 960902785 964109818 966932215 585483628 960540201 440183261 939442863 145514143 785307216 126681423 943790728 968162030 969953550 384822758 915629125 723879688 985376004 882969322 898466637 685339328 812207629 298442615 626645993 337625311 792426956 299736750 780012616 728036943 852949091 906086143 965496509 735003824 987758658 11680764 447194399 216093851 726265291 276440467 306661822 670085382 722039750 841200682 889387742 268513280 289607959 695372572 848410780 726476099 813928740 388646904 808750133 898211434 919932844 191081521 496610801 920438756 976045074 389952679 963784050 602880300 697425610 281842574 546807113 832380673 889621379 836841291 900937346 238895277 366943851 614329730 972545482 92884866 419194091 155623919 717820415 350226368 367262871 757724346 805878859 766014909 789031898 588405602 811272698 935881165 997271842 185873585 518174449 292848649 502621101 654918615 914393320 685927448 890995839 21954656 157120843 639695124 795681476 667358579 761357294 115272810 738968400 140638235 745024647 165573609 861556763 573236160 985376814 203413694 940788469 414702002 515868231 318605471 853301027 530190490 683353536 422965764 922980001 234308329 764352585 779670278 947369246 765673824 981433355 32991121 471956493 627387016 911564431 742384118 910938064 564643290 919961927 289022376 853387370 993793553 997288753 784383903 955927594 722003620 880148862 501382336 539857196 436095271 560345568 772977996 871155337 626104294 762382935 212295781 559711869 941260767 989643563 600380535 830638773 747546003 787384126 808560435 987594362 504930697 885649957 748164464 906890982 906094788 961800688 359643638 368782002 459001972 569468431 73579567 267508354 225105733 418845958 723193474 920523168 162451133 318862167 925086429 964999805 68993223 577697850 531055161 608840621 424766966 718812265 80234823 809620700 463802043 521612321 93963713 987192399 832611969 906559894 967669949 999994447 881800455 916197313 751616159 847454175 96230009 964304645 979942819 992277703 715492439 839106969 982145273 996966617 226452003 578268528 778870925 939335955 222191573 633765817 137968311 879167740 737405213 997663139 630998570 656627206 517595711 921411722 119360098 816016249 543515777 952067544 212651068 543233889 421049462 531324325 949120996 994575697 494234743 804281860 116895791 970642252 890612178 936291357 307265940 626183222 316522343 732926668 842337209 935341241 602836368 713295505 963869668 987071901 991207808 995700966 828148033 889010997 69416957 794126506 845356363 891658209 69311760 394644260 309344647 552957081 259739379 541932909 32836565 427528225 963669404 994330493 105296201 801463752 16355340 98000949 908253641 938430356 621680820 829532403 602423 966857932 178102673 887716897 825100187 826367271 657120436 800856422 464517555 778413836 647768012 790452542 93274502 450819759 618991553 764810496 908017348 992002995 714204020 748084516 408598997 992100801 241242703 388488646 286344250 484462351 850989374 946934612 552453724 760384898 120204562 670116437 732271356 952972427 737747506 773028496 950315910 992545777 475726131 900888590 946223010 971776065 364117166 729821960 67442997 977535725 993450357 993997496 812991189 830469497 386500516 546393067 250682027 346315506 906388777 982749110 196473131 503769246 257734491 664731853 569584327 575446335 204796258 872108115 550953266 632653724 845809391 989922495 951823219 991048912 132519585 966724206 578847844 785074575 418894295 576911160 278322618 741901120 577396829 767550640 369324815 880917842 829171806 986383525 391830255 405310463 223482402 413000451 402309751 674265479 598126156 940699215 563751780 572445278 62930022 70929063 556944511 916191965 838942826 971734663 275400292 296454386 594054653 901017331 896727465 981599025 401470178 876211590 811679103 941885700 662484575 895474897 644250259 962329526 623687223 804267090 742202768 974280328 834074139 984349640 681334806 996115268 267706836 913702944 405180448 697157951 946992608 964297534 992169396 994101915 416701519 547857808 49740225 938830433 393839364 598730867 517459223 921175063 550818319 577580107 911357510 975722138 195358968 334958303 839875091 947519569 654957111 808552613 36818667 165357449 136755858 265465391 498169066 984029043 244877219 331185653 569073212 968414855 497102134 846399769 642402552 656715865 836131650 955521466 33922442 805862039 300899863 872105247 142463265 781911964 341089750 800057012 969141669 985501540 823743139 934398841 714083316 905587158 569509004 994059905 817212544 919929536 447930882 454122014 356572420 461994958 246439084 498199725 500300739 730718811 458694208 691751777 153994367 363006843 267811556 782947652 555111192 613037388 270764658 380156894 867811013 952852558 513874233 775318065 475457146 829095208 527651674 574370025 855335127 972814004 463298837 713358419 882948973 898668161 244033332 979913014 59573461 651444560 200636346 604845609 116411282 368771248 762451405 911872897 530427275 546267253 925761925 949204882 170642055 284294349 302227246 728217999 307085296 375627375 914470429 982401958 87372135 259182074 716047465 987160400 675358216 975212005 13242748 952149773 635596498 910288500 956162686 968919684 429044450 757818206 296124254 900846979 14950678 219876499 686732844 880614572 140716653 977824941 913256084 943468627 139062858 945771929 878950827 934458307 654473184 791349423 868239887 888321763 627228530 876385414 554674225 986205096 932287612 946472750 60774549 993157180 939663565 993412758 43615451 587329807 65842616 551504394 669858404 878196900 13232346 230095128 321752527 917016916 136389715 756621379 848845272 911594792 464428347 833524126 537896448 547688087 819605550 929712430 52837811 168944525 852509359 900187798 772773342 821378460 999217288 999262826 307566699 994618715 734161250 981777039 983250587 990808389 22026887 104933946 634213637 815533381 847848770 978171678 962611439 991505624 720916867 962179287 72030238 631207355 124324272 226079204 70926981 428731251 282601409 811453242 158231131 375307112 477298054 566885699 294168273 926513177 148026578 703383970 589118446 791507699 450724520 811645116 323698846 469305085 624322961 902978743 386557651 630679389 862848661 958254722 707783024 833332862 973755674 988662568 625432273 838827087 28822435 566495066 513101547 683745014 84830338 152961958 769831036 893042634 569218029 910661946 181814270 402172787 388972785 481287450 256346258 762313409 79710648 843074854 11755053 348575146 901686929 965474335 45521829 957184679 287178428 490725915 493661465 629273337 205460612 297103968 458871548 909110689 883153690 904969561 157042665 213983219 419927362 705331677 826421636 910788760 779800366 975200928 81331339 248606939 739809504 876154146 887860800 914930738 594215259 854779325 330760934 468722890 58034685 165487440 315299466 487983502 896622329 983650340 910254717 926820141 62294835 434993456 328362462 492270147 894948954 929989210 999142089 999489404 722320587 791407389 375668727 758068613 618797256 997340052 659188713 933311264 538411669 998468049 409797737 865221784 934306694 989482918 408775705 985094288 827200637 898057923 855415363 858778228 124596262 766362473 47683938 436782654 645839359 897799803 933625270 966430407 249906747 385273594 207406722 467994500 979388494 989936042 69264856 980607244 666129081 683593825 139005555 840215531 53493835 500087263 709020900 799976788 435594601 646614097 73991111 228428432 160814853 167610506 636177951 992206949 950964131 978752283 594642530 712392498 959637878 967449219 790200424 946289149 186160865 911574569 953545371 973518464 336705683 359201364 116908640 400993129 494616572 669186446 774014205 819728089 626042431 984602371 842633847 974619666 499593116 761327806 570436063 940783517 296777513 348480646 137525703 556634802 709582491 892442100 505559658 914628266 419247270 861296639 479518393 515444967 883194010 976457377 963760721 980291431 1666738 910953708 92800938 968614038 313163252 421676615 76956752 827317871 40540456 686922420 666100861 943894703 574103970 997518655 72136668 969709111 844063338 856401849 22670312 117787224 599027822 648491122 760294182 771822146 318660610 545109878 920166227 944765351 25861966 320250205 831630978 855753029 489972784 715929746 97961023 211965677 314223855 859366406 105163490 358374782 916889437 960828736 965543624 990105869 862094180 997895922 584607608 976278996 61017841 892656947 105316715 820534575 444309297 946436788 834304917 970426119 227225148 494306006 648880929 751101265 372248040 595766426 728651616 979859230 275449455 326575780 797266713 864526561 720617815 902677698 174306915 224749694 186968229 425840079 273668372 770230932 666462883 846681234 491143857 905907925 174272048 923472021 429089202 726314228 530247226 704719328 718425528 811391743 805640339 955886628 682360841 807979056 149609775 583692907 235478736 809432556 977930759 989913738 814272701 957239729 354059330 484421131 844761048 881036616 852261468 913022084 714678447 782550192 891478801 976440757 667737433 929015867 530500456 872946720 186578620 395488215 274952075 402890336 40830286 924244649 328359676 741726647 8960206 229814158 907047556 941703945 105443474 388385412 705317220 985413945 768374163 817249592 534597523 540607857 917919815 998941125 235128514 546635127 939359267 982369982 265707045 703037505 6842434 188064916 151451673 487358322 334761643 647053113 535843206 918218666 82034547 127809151 899468484 928707129 583853502 655607066 297441389 845671949 303474009 732261558 592088527 721719715 533808950 855672872 985946840 987750711 293353827 557856793 442384000 818602648 527025927 809058798 701355113 722088451 778279422 980786650 918633617 997392626 541076429 687628129 881845434 967375098 168842154 556843296 758822600 933212715 850540346 880475171 518203576 761878082 152812002 971317268 87602076 259746290 566371195 770767237 877053780 977100547 184096048 417995819 767399281 808846307 684916074 948671059 116877145 714524693 610365914 646085993 163959428 174567048 744208592 861479980 260189360 527579700 557413482 602499618 799158389 924643198 635513633 655250121 110044644 991986245 454993502 809227202 333349750 729524702 429275112 990881010 612660421 924769823 363317787 416190010 265322904 477604461 229546347 940593604 168065619 956510609 472939251 764079818 817004178 921876554 370027540 980916304 100290064 619221228 461093448 960814518 810123420 934995331 931302793 949222263 416514479 636323136 673477102 777727453 651242406 817300734 432084924 862303886 858141563 867432422 439756649 752029944 889375533 971492016 862859372 930525089 37981525 868960951 929417650 958196311 254050753 768775068 119211255 482094142 160750499 702207074 126171797 866777169 636611439 939962148 70651436 174695416 879453480 890328636 715412022 871970138 786232038 866280434 799993166 929549601 598562384 706224969 10161766 975233144 920888282 967243298 189908222 945269968 10946353 714445575 95278057 326393944 117328505 273336947 229408736 518084477 209788186 276397500 362896880 652778247 4491146 225075098 551913916 819330901 388966267 991242821 428806321 700988691 537356133 923499331 281980765 578355892 393098036 927740415 746796312 784172032 597424619 639861571 942148964 965007899 260457603 752051718 85527673 324110920 99759622 503385221 389176653 511392531 556711541 568315233 563568236 629693298 575989250 660336414 193236282 443034845 217352815 585933404 626248595 941490238 301115617 902729097 92091546 742765335 580944928 854197919 132552965 752668856 571866977 982798136 743186161 941992284 149693188 466192910 970707741 975086472 120802337 582745498 673387036 758565827 532127118 705168953 875116465 982189528 460180210 823175716 477473189 884590670 98942470 564352062 870182415 894833707 903671662 948054494 482059471 826133713 320695385 627998764 853327503 969165182 546860053 963799407 9396141 674723756 409517569 491212466 563821600 743814524 879493701 932244639 127142485 733342713 960605890 964140724 976884419 987276598 488388019 921625739 306120053 332610112 87198319 179576941 811231029 877794687 725398106 986721603 338568462 997969124 911506133 949775283 937595109 992383215 462086984 947999779 812282021 953867515 411589163 725487524 869869299 943680898 310120347 988786643 93672687 408857830 468230616 534594253 573871206 667099654 737026469 904989852 60783140 452654868 479406994 862984349 751637832 793477837 602059478 965279813 962751771 981279942 675216381 678786749 72384802 438086867 659352364 972658938 884503213 905445039 342361475 890209397 663842524 863438226 320900782 855088386 461125782 726663692 893650218 950555571 804222860 957785776 5808107 83012502 328072959 947309641 121954263 550248854 705925155 800013550 343303351 560198539 332165501 540009420 966567016 991495030 368434007 857133629 716329319 774652117 916868463 998049183 841110897 976998327 937814634 952617272 69002458 513136197 583057984 740656861 926277157 948913751 515471320 761884317 478663908 910909327 376124924 548273420 323410344 973750285 105417090 911126387 993559383 994200651 358546696 524017350 419122592 925332056 964929063 979526679 687578219 830028730 281017129 583597652 732741048 829516982 873810613 939759889 535334100 855741063 456286123 544158857 634811794 799007880 117128817 914630500 486204429 530392753 630982989 898818225 520931302 646962337 59538259 256104613 291362278 672378040 944247302 999782593 40588062 750089986 552352042 822012662 513243521 906589742 375915443 565490627 609677744 668532492 372816203 537805158 572090654 859705073 141666490 831019053 118181117 405889275 927201463 955647074 432327948 601792536 675805044 746376773 853257027 886786132 957250379 998131228 195860016 866551940 988136047 995646619 554845471 974305036 701607320 964897340 963282973 981243265 622069316 760986951 974239831 990830172 253950217 573483065 381981293 660103360 187329856 922347447 938399099 977823940 874897677 966624634 634766144 756696649 674644883 785211285 818738530 880692669 299139798 812016877 630860864 789428875 411735470 667132565 51066137 940667507 926109602 927343789 578366348 624344823 58793019 978026581 181259787 212224190 520219940 699953346 181154747 371103658 705558834 783138463 908064596 976722521 950717913 973367994 770295330 933855216 955678293 960837298 463793422 872817243 599468235 749714931 527186030 705673684 913849024 974561661 990473608 996170575 901750888 987261890 872063034 874861150 105345620 253265707 971898099 998435563 902066212 974775884 184249312 671871081 305112005 846371078 116553457 606076976 336468727 894064197 13723155 257455619 915019699 924939845 725197929 959785120 982511458 991193430 442816526 672930007 343237925 724050102 662123193 947192519 241667245 397254572 689135992 911693922 16042051 214016277 665023327 795740541 488243496 684074083 772088887 946728148 154286020 951469907 506348945 808678886 742509219 888066197 747969088 969009091 312278836 731433783 113974393 565594625 906057747 933394577 857664109 869154067 590225522 715124242 405528131 521295146 590575582 611427792 235651096 803837667 697536195 817599025 493520448 959834438 784161478 917421810 572261185 801459212 884696444 904247993 304769287 500785793 288523913 924566414 822376855 822748999 47513140 290872028 166085374 307888087 784140310 894684730 672297888 746691297 835121000 876683321 508908627 811836736 841959259 894811972 530383023 922159028 293638638 872973202 688050244 889194223 86020506 347349690 717277997 811555254 691976605 787900656 78416544 904414286 533089126 764848633 158787102 748630875 329247755 701688340 576887352 587207094 406947184 881630681 838739032 882483745 448507794 495074300 549633503 674622559 117988796 181388687 940546630 982311428 414316129 678240783 84219748 207737603 465281365 561658822 329394881 728820439 504072171 869328602 611921019 725777261 804907069 905843069 573430628 996572043 307071256 473628460 55790862 206771864 239301736 416933087 341392744 949635439 55602239 924718129 842705617 867436807 989574197 998977587 784412827 841803573 418871694 724510477 857163570 872535705 550887472 995762978 511126110 588622612 563425265 906303589 719959008 946746892 706410650 843627841 585727041 963588186 816420585 855734948 626528225 814219294 706446766 985459416 222226794 364360039 486255390 619962728 638845295 834343593 709474695 996688883 383293402 814435459 222069754 795776406 45343711 330874257 336904558 483165426 837927841 933591895 147721595 155932560 611310362 760812737 950178382 994413724 366338033 871696878 811963511 824648882 413249187 598186125 920957556 922076295 239722232 742104678 990643801 995118165 121441235 274017926 244991063 456374748 900829903 953855382 863664917 885444027 3379254 900005699 181789257 935054267 899277573 933240886 619496680 877384902 502137360 701834928 572783956 658354389 137517367 907460372 411158220 930186632 773600175 930990492 284576093 408636180 832961074 888434251 861433468 908422195 951282567 974250243 762447769 908928055 310276028 570483417 721169769 870131984 909202384 946608060 64368417 485515810 650704887 865507962 576672751 847203193 538622140 833167612 837782413 973668373 286549542 590505391 576666 813845475 282798736 768480521 677404642 859139026 598359474 868836937 262509164 936040806 214197888 917960083 160081111 677891028 778641425 985798850 721561789 947184746 781472318 875966154 487259782 972349446 6217294 397408543 701500927 926855638 312923433 594459744 742095229 785076078 487415855 489183679 488676467 883132027 539162698 907589447 95857085 609853414 408712321 644153182 802614051 825256915 783340294 987239545 553933541 823889505 524675422 634226673 353502897 904578458 246301331 507598849 622245852 738085903 65414200 639390240 427244176 666444524 348729486 669522517 81635670 556046192 583787226 759727270 118814001 789296901 561105608 605827568 923009236 980535774 883986130 975469687 604901332 786287471 251512420 613048859 517921304 883289896 736930004 747829265 425556642 612808612 562108580 915463886 572339420 821747404 897182710 917317904 525541028 823518758 566159376 833260348 834560660 992724080 81655894 578229729 491618657 601263235 746925623 798632465 971896806 978608546 607549471 662081936 162341716 794813062 762897957 817194099 189252207 420410188 509779748 804902114 402855277 846881188 828285184 916616603 776625513 839772625 547885330 883242611 472179977 940281884 623724822 970787632 796579833 994573685 404025508 784741483 443247489 799027042 873451452 878050598 830666895 971233547 82458826 400558904 454224218 500416535 417298225 815062441 86904150 97848006 120757124 297302174 788111244 969588045 457722916 651313009 92476604 768987494 772157001 793299482 228052307 384125761 14615024 200876256 164027564 273652899 273954953 725318391 120421102 416167318 908529132 927889551 278737607 892225846 640838227 786019024 398214917 521376667 662624787 705969895 782546718 883604507 204793101 987346383 64907063 174461431 855639158 917114029 414552293 673075830 230718587 666011359 464705817 848005703 234469844 857215600 574754025 793567571 875854028 966887463 114924070 509310482 466143731 697083498 514482792 626034060 490187862 891176330 237929132 708507120 989903528 998833773 982368064 984859873 160595295 955646508 63318838 793866056 141282843 868860100 423692689 712548926 839123952 918838863 599735352 974155076 626294138 701011917 645175976 749377906 841159595 876705990 793560868 825841465 518833918 558099440 66777059 985874796 109480998 770480795 674544320 713719583 364549441 657880154 693643818 822445683 711149588 847458074 615578959 730644490 84137194 803180081 799754829 824662286 476188395 529148670 234149896 570667260 814968686 975783437 313045708 535842320 772953248 827574716 783647984 875634103 716264016 723265658 34690668 365151211 297948134 714437415 126966060 154163349 652732360 898764142 579646309 727705116 979048858 983513319 648834716 927002062 733820643 901102089 373711389 536571692 325893665 929718286 185278361 480859286 717520081 775892402 405896037 846480134 585011092 716850859 179485946 461175213 425522808 801039474 94928691 252680809 160510765 918307222 612954922 920330581 218743564 651315324 7000798 734578619 880673608 977957684 981154694 981232062 562731284 951412587 404330573 709993629 579089165 649326962 375334717 572332842 536243584 804693732 257027017 732731877 36814652 132960605 647535369 700946842 519102563 594671799 684926622 985670932 415913963 526990228 455994588 722635063 803809810 884114350 949946424 955386233 802403645 926525336 345444166 593932889 591333600 711737418 871248052 906587497 23679243 963296528 720910227 924678870 287129155 867443206 928950679 946014720 13852389 899190232 847329626 948778672 395014201 716105472 987548643 991778027 43849647 853820895 750049029 855825843 819242566 926872590 924733643 940263729 416177516 469163089 912080335 953206163 659575688 868689581 409720032 469034523 719133964 974656558 832290087 881593261 295581368 302838188 175514403 846593965 960045816 961557098 24149516 238802613 392817885 475766596 431810321 758544345 700785921 761716605 88557909 105640374 220463190 495318291 218737454 545819720 791780312 861926485 440823555 685341696 180872794 844321431 629094035 632577522 969337704 997518923 335894427 654422109 81180015 472493686 408700383 810361837 107086597 827235576 911267712 916957140 99330109 533287796 661914933 875749658 343211586 639900791 96098764 512376819 177706586 297920167 212663861 247376191 179974320 454897339 921081739 981509638 343144737 767857323 965224373 996671362 660880383 692444180 403257858 477664060 667233772 904621430 215650170 629572035 239142148 849124760 574893085 763884108 131786463 625651025 566211483 916596335 814020415 983095696 294616477 420633225 209651168 309614762 978013747 992557865 76387625 109745795 491792830 738649354 621947061 965551463 999299691 999904765 158196809 245049715 881647076 883853237 891802636 923185272 981904031 994198609 24771236 410804060 792623387 855122523 355364842 792678296 197059461 784234753 990601692 997312094 139239081 577810291 758642737 771434211 344221848 676878211 454635491 720560695 657145902 659340186 760205766 988789532 116095524 342801867 995371994 998598294 214065059 758268827 145162773 372731619 337716963 575557762 494559544 792560790 557242076 785586169 627861860 991934774 803726597 905772428 563762430 967703845 368472350 444839529 97632560 563232550 956614207 978246656 305214719 495287636 182450176 412138313 168530940 421846606 686808772 978989215 892570497 954997298 449018266 935555228 95995899 563201370 474476323 613153199 483609302 628421298 609216417 655228766 601632016 803574958 910469773 913933123 106132653 768088117 833233406 843902840 155143418 620664507 963193570 993344594 319088113 912258709 768866856 773937621 669704330 725752698 522985077 717390515 548167068 792908166 164338387 662298197 567041407 594446294 655620615 823062392 948390271 998019960 599963965 757831060 947764141 949992956 525221703 777524089 518223714 664319675 328737482 867312432 832904755 967922472 589506281 859058815 921652392 996735210 173587708 216802133 530896863 889648463 608039822 771349132 593974878 636928235 12083478 185053038 233451095 933671816 40067163 386388298 86790725 312751358 642693566 879574260 160689808 176656307 616587242 931050481 836650368 894387161 167432152 507933509 296975910 323167635 93668922 266139359 778055173 942707110 628345408 938067403 991168004 999010978 550122828 791040028 829696735 906451193 221049409 650247571 625262056 850755965 671783879 700808011 485495965 741155109 878043770 946300229 752713207 756718399 553726302 965565683 78454839 917459652 300154878 594066536 758399026 994370118 986113036 995920384 966932740 985129280 167095624 442068668 329680841 479525485 849502480 992078569 73778487 452478890 852374514 890926518 270556878 805595701 484519681 536660919 69558825 579102248 459574276 462190450 419141012 950468347 553251913 930262591 418547556 868373547 349281598 681247918 646722098 674519101 218640759 742376760 306536168 399810670 754700529 909232861 807077743 874771004 84105982 856700067 437958082 647087217 953323730 966991797 496688924 701817982 889360635 974124404 153086427 445124060 451258436 623313308 523585604 792724749 503803153 520040866 370606906 551661940 671491458 725998301 943181089 943277174 451973135 779716737 246087881 627946980 866198878 943237645 501133349 781629828 429498077 855820792 43903086 700148464 790091514 800526150 140812212 987315586 139576090 941078210 725614005 738636999 115637819 889621976 655402879 968196034 155750613 668459768 681017682 779792320 592491677 800715244 937005901 977014229 640002726 768805387 601685569 801944301 942497664 975015006 120058438 521435291 130729784 409593884 770426352 795067014 822699663 941804852 940662209 968014973 212897506 793309655 29619739 176073013 819069491 831729755 223499086 529367924 596910582 916648037 234050089 710279439 136144277 234291280 809985848 893406423 337216525 402983239 647094955 775211149 97388708 99132646 808809112 928502746 219343210 373742847 657549823 844232131 72079362 646321235 961775744 977319525 495871690 665535889 265027343 372495139 648195084 692667883 442012674 811416293 942916936 996410465 604190699 688117466 923328106 963850373 57053802 209221605 382133034 765128361 750463572 832771362 21428566 852911919 280608526 987593056 230577567 459373733 10791984 700647452 350125604 498124718 877313820 899095179 515480765 558301167 567021873 755448191 757282254 767602126 740954974 831120688 517510144 937888374 934430821 973168470 815752276 951780301 39926080 388492819 564800112 593198544 85060987 251403243 528237622 578455747 157812973 380111970 368003399 847086256 934553591 975580593 6837977 392360013 556965620 905929673 315072326 626316548 919422314 967487203 450877874 469240923 70108434 104506419 660874283 776676195 904009061 997438480 996664035 999934546 501994466 698317714 39777568 515013111 125887940 649031684 381004488 482570253 82883559 346717030 700389765 812135836 902366056 921536277 501287364 525310254 822853481 883855656 832035249 902004524 563218908 639124161 824670094 850690528 518167505 606779468 95346331 624215374 927775395 982035962 924520091 966751276 981748483 999199621 576923152 673064532 459360982 844782394 453075369 609854433 269621199 324438403 892088089 892928034 535448955 825918558 156981407 354439440 799574327 945288578 274226888 315504744 961517306 962124301 215396408 807259077 740481304 912313737 698905637 777043961 355876073 825725312 422206787 955021881 694851946 778623526 752941122 779230843 12888763 831584578 516211764 976186667 581691113 627855020 198178897 308975938 947221154 983897166 180098214 647130342 915095339 975027674 214431342 858792525 969382749 996307672 597260140 766708732 882260617 980474313 562718750 773717441 729955559 854771256 555456930 651933554 322443206 375912137 338825858 498010145 869051830 953697969 124671397 751459077 406057086 962817039 685534881 705003574 439951970 489535331 191346214 284438625 372327925 396424272 694099664 889097793 962090483 983715827 958459859 980566817 771874055 785287115 246551529 982045457 277440686 585561182 810319826 894544224 888631839 994670677 243596120 403007843 176066966 649550965 12350476 286976706 814487960 869465786 455741376 585985279 838020674 893575558 61487924 431774490 993722955 997657730 342273021 832841837 858318762 931341252 532701053 568702586 343336552 926714505 541903565 771891775 654915100 963826014 295496507 519188417 950121231 967884027 991422279 994224578 967718613 970880443 220999597 773231618 412500319 899640542 863624498 986276439 246165026 353729104 580663378 992528708 716764272 999435091 352655064 857219044 440827324 858452805 216858052 965945599 324604112 845672032 415313945 449062171 124882658 219111559 426803869 988923161 801581658 893492352 672206670 867941263 745030030 933257290 142229740 725088310 557781689 941064511 619635971 704208865 540359253 656349470 525914246 898522777 15643442 21853921 705891103 836569910 53493594 215938314 949183993 962873585 643908440 932149491 780210565 792298449 170493491 244124024 194135333 487525282 469463320 972406535 915443175 970761687 257184206 777677055 364048494 958883022 763579739 977253722 335999548 915707249 581901134 845778674 136841176 691961413 129412420 893766276 900901935 991819523 264891566 799900877 927620193 945216169 46167449 207128942 605312939 636280656 381497125 663871351 23715896 808300176 761326377 885472470 635544289 819074544 249416855 484189402 928972883 991276689 876345539 959852848 432977925 808186683 57827486 744516103 528638748 533501578 739361405 811198836 515505582 517463654 823816926 857250488 548144650 640637107 145885075 323500146 453163378 940495386 23295392 723901211 137546654 408662792 780964670 789602328 77647965 551194457 794811686 932314362 596409332 897707534 168968858 931590554 269212463 479621884 471381575 976606308 901002439 994378858 713660621 928714089 108358610 213544091 559218882 934299689 375342145 643076654 705654351 810119163 173707704 384507947 270755946 377903239 790407650 857230064 354322348 377019153 643505866 987386750 497873360 969007152 137264926 267603437 870447834 889912817 831600836 871428284 711662729 804149489 828272875 936438443 192818000 448425674 178124090 372475030 840857397 914026047 417306332 898115198 677068217 990813068 379834269 424769044 13730891 91877445 818659400 829791918 856025402 949128720 629269023 977043250 834564528 986640264 604009279 813756741 223657203 362697469 894364897 918813452 328006552 335992288 571593082 640004623 314835877 691133628 884020142 959742966 558610033 781880677 945093997 954239951 984099358 993756454 430358652 522998071 448107128 938372741 791038110 902198184 858943610 905425536 895392693 902930697 518337731 695389743 660010670 903429140 853927098 935213366 9571221 151348703 632557222 923807220 739877431 761916702 991599971 997902918 443302440 698089069 224937038 931537176 58168781 930091255 265006147 651116414 352249531 703817016 90696760 623354833 116919194 724417223 928769221 947341029 432572595 451083300 953961889 960606832 514549806 785450087 644831186 812035748 402575279 450906084 578748553 788064213 172041665 808110496 144693716 602756510 752112314 919956739 863604408 874166548 210084438 774991957 343617358 710858563 459903765 763407039 63090433 605793784 122119526 568620563 318784016 563572888 583471088 584429546 697817333 745183638 949876819 988309420 316805316 416585646 103779742 480320850 945850386 995843051 456973144 910513389 81158456 142468925 944561303 995737592 761806446 891846754 195770084 783549507 367788797 445197258 76779582 615871740 638307230 907166753 553167218 803276672 976332883 994639053 255742732 554319632 302512720 820908196 776046850 901856857 39228377 368434760 115942008 325931717 603274653 937493923 50773303 439629254 21392627 292367133 589612487 763692572 381496416 596938198 529963937 858433669 325179234 354915386 59873641 182999981 162734264 465445791 414131059 553948819 237562927 413621544 626543955 770369032 889377077 906070538 414233002 788950037 102025323 875076052 719196124 974677892 458834886 620345326 649041814 903469910 492545214 959258586 194681304 199452463 80643941 327077711 901107732 968255721 680129641 971158621 65047890 75063935 375136907 549211081 503952399 699635158 578253086 579768001 961728806 976776893 904884444 921968696 617535192 643379574 335594049 904554172 219368699 783185996 819520580 919806186 647015656 784609619 34915060 114159315 453387287 897727082 479521686 622776175 223337064 520543014 706016085 818859554 445097309 468877560 314482472 493995790 522491432 752979559 116449972 214252073 802390221 914165381 90379882 112669931 455139009 547666737 636588234 813537675 353318163 527736966 512767715 533741348 895490688 936192106 506161839 995280127 427657481 913382201 468297302 917480625 180665140 385932531 41537278 392610717 148559514 149480919 50813754 250513560 164519995 987430519 181161691 731104058 172982097 804882648 51445487 502412885 136476010 208512882 487051185 821263373 496420431 758565859 111055757 230060824 183915488 370366373 964552634 980246106 621676849 930864024 331601057 671583911 28451054 360728944 57186009 143801977 652135824 697907303 190679646 943531255 445974870 789008694 971556992 974150097 8561013 827434089 253093745 867434723 417206851 959008594 267247707 912738420 875157575 901975572 411821509 604307416 27059809 611288346 359643062 846576154 28467325 399737622 59711894 843197415 191321463 629441016 302805395 650998945 303876514 962080799 341690967 981748242 501976892 504040920 705364804 778306172 833089440 876755036 278389478 467632842 932160576 977410884 321642079 426305059 503877893 564974922 128410044 704633932 965618932 976528603 654808203 706779889 583489822 863839988 7124302 262919279 446793667 937536547 672024788 866392147 731038059 990269898 173422667 441712692 514707069 672702149 220768586 650115354 953626484 975664770 520821659 643107522 9797992 163250713 483458366 967705780 285101232 787477096 397872021 911350580 199185859 585236564 115903141 219313240 829373318 868125366 874164529 969375098 519147394 532859464 13385805 946654390 712101585 800171677 652941867 843283293 104028112 855533743 31029231 673698750 186463488 928868547 290034988 928739206 31272216 135794765 4243925 921559796 908367467 930372565 236543420 585979334 615888418 810702056 923077957 956275103 7385627 928535032 207530429 929951091 600485440 628755681 889156938 932238929 664530220 689885981 829935309 948623444 598277966 646094203 995188483 998840911 289277408 730759579 991351539 999716168 878404016 878490987 158182356 445841737 84916718 275745595 857782655 936054833 966397565 979497825 694811308 987352659 901859685 915589753 663245231 988938613 597823674 645113460 661692167 800722032 506473009 913590214 54038111 520029582 911847068 956252132 209522533 455282744 967692779 988374170 734357549 763765314 667007742 877876388 102869416 845293632 268467375 915070032 189966499 588408065 259847994 862626544 451314470 539052419 964548212 982414634 733937444 876291617 382074627 970435629 313556385 898285272 446678093 575457773 272914771 896625347 584008675 655312017 800771130 876210481 249716865 817982601 127566337 328537195 330891311 533407949 92901808 197524634 148456942 162652609 936044498 999612587 28128615 459095465 255944623 844506518 727348256 748949199 231145496 874141265 464540727 605473663 844482625 958781703 31463049 278389206 37917587 749018757 679219273 778126888 532810863 943249719 70449187 808424150 198479597 647152392 549553833 876341763 304591986 912995156 36086238 750456193 279899566 832529397 19536764 462663851 241463571 988559600 566229408 945337117 700657786 860097562 553800124 560108623 777010020 904887939 62326923 939484799 17277059 764637457 419929437 510136858 111773050 823179616 279369444 562442961 670707661 853235167 952172073 993152448 703842055 704447383 92542680 151363064 898357368 915439235 989269237 993255992 514524296 754985219 894349378 991685652 723692155 830097782 104421683 416294776 317692774 502752481 726404542 888339062 331934869 567671772 646106729 735000401 82820510 580132830 283996066 480450188 745875985 996946086 925924757 948361747 905630156 906836275 936918998 965615222 876346253 970662351 176932755 301741714 60890452 744933272 864847678 897981851 654410920 902071312 893763438 922978012 89175712 959745027 76264037 578939079 248792519 369754608 807171202 811948056 291932299 759146232 879429137 979764260 489711637 946691014 974908248 981182568 365706569 647033658 37057713 736154008 395893444 602523082 734419594 905259447 59933332 853581452 252384265 621008181 301364369 557975235 424325172 637884129 256269117 580912062 524029638 903577800 60254672 148213893 389695043 639144976 412377710 685850604 884477591 940148018 571739637 728851684 176792384 540011973 699626913 879428608 264696378 440756424 681700377 731878512 626837274 876014024 490589845 871157257 809198704 995247141 681191909 896454368 4062975 769088577 376874527 749160424 657880462 709191895 528111909 539892546 678322252 701962837 610266960 813234470 248208036 561645466 581526335 711451299 840254044 924476148 942809129 988418932 817023806 987423908 864182950 928356802 289231322 679998026 397817438 548021849 905783013 933351750 101531846 339621385 750193034 997186720 444943424 930801273 860908972 977709232 39183973 706925361 841482988 844248225 300421190 504408306 152270356 578685884 107680589 420442811 68657056 853433234 267550162 464169173 639308118 842178189 964484012 974843887 37525101 860001931 972840064 973802105 574300335 817310473 677380731 957570445 746570807 921046543 235453431 735308650 938573769 994994019 814934130 996395478 475027431 781883881 771488082 936705715 549193474 659040863 119021611 505715819 962947471 993608976 997821708 997969741 550555141 591262378 187145756 629981165 3223727 834281973 390872792 430162900 81165783 872872226 460042969 886643570 93802808 121090608 617724715 808556414 155975460 877111815 942655547 967294339 864526642 998098009 78248695 815718342 242725946 944625091 7122671 454228757 439783523 558775049 635593969 719799493 675705055 809910643 367334465 804830524 89040899 282283759 420262630 934382055 520317677 549701870 812936595 821178937 350153503 571822710 138180491 234714496 376504245 980114493 448662945 562527511 626460529 743460650 979013052 982334533 864033511 940453332 711649886 925008886 299863141 309820584 794434162 804739227 490510425 642274289 688500140 890682358 287017022 871109787 467092970 868135606 296452744 898299596 149422487 677962751 544346237 787397550 159021857 176795882 831390743 957229694 479210662 815706648 875550785 925433302 803299213 896465020 254627506 386802667 108449475 139914415 809132058 827572761 931748405 967112790 738745552 979501314 168007975 242992190 138779714 528904090 825120868 903603287 816733984 905598126 42614481 863082849 911874818 916678885 353353431 649654763 816278887 832346689 262315136 898654021 431371088 654448875 332057008 961367107 677864316 789406758 176972937 606743530 70340555 642362769 586874601 882296780 269592729 371830204 719244742 987361387 535923110 694952279 147898753 485626465 119176540 964630978 638064951 693100450 488843527 791850794 248195099 714168065 3999208 128640427 624771077 973257836 608524305 915414296 976487335 989303931 398417193 858442445 923584800 974025929 767281161 950313751 128601531 587806818 343893762 499407530 364890550 536671251 997343529 999727413 449600516 778890180 176756435 268664625 914887895 940147153 118073862 372522631 317424374 917802830 734131093 885776275 249155944 616047006 929862995 945559618 469338637 503765332 507866837 878830730 677959594 698231000 610202880 618811875 890314811 900232921 547618679 757184062 802157898 917397201 960991950 970805165 544861874 694306459 103782578 553810265 450793476 467504842 874716163 922216256 305290084 392274994 928920532 996713431 329465378 648452101 404743630 501078368 803881463 855527480 101909623 563247707 517064034 657344510 60777180 426846916 90806193 132699147 114864473 420811873 39906933 332895388 718106173 948491317 761133324 920433142 956046457 968812475 940106543 961564345 395949826 744535490 166126163 826960877 37494115 316400453 869242066 989399079 184503447 381142141 633865080 649810468 522181806 809738939 154225916 211629082 791104109 847539642 935598084 968304871 263585386 572634558 254736952 482424660 37883854 876415302 790468140 937617104 500632209 782731762 302044686 610629291 731075200 934688620 27901788 573923140 131222020 698937220 152968369 465041597 649004872 842753499 56291307 951974623 680635227 892377902 516640982 962160063 551292164 863254411 841228479 975552468 116639829 758178635 627713094 676815513 712059347 791449545 400973903 929635010 571673419 885787879 282750844 394971798 446878182 669066719 569636004 731417066 449589958 991614058 374392819 989167422 967476043 990663339 314333486 640110971 801784874 989264729 701870553 914183598 881763144 913743450 470032939 826407510 500949486 651821646 227433784 810937549 797417767 921985542 258460254 320395891 840437595 913290813 486294325 560724454 108357780 753794103 324226561 834695839 686683369 795785139 734796055 819962291 105062862 712092492 655645615 742375506 337940950 685600110 811723575 905088546 131416023 241285293 779862230 843610550 418969959 420073377 797856459 958378119 870345253 917237785 354522111 629300249 196142184 549675521 606720867 656660386 572699038 810163797 595333815 760914120 284595237 502081514 67144417 380198195 818922026 848223177 71013410 851578883 141862932 634083780 606477015 848381064 434956358 759273426 14081521 260451511 338186403 357844413 754147886 824212338 681095339 695977653 873277567 947347405 693981480 989058345 640336078 800120093 522436316 872068337 339010199 762103651 87705129 648883367 805646161 824135112 626478914 897388100 717891003 808606621 114625241 745538180 753363028 754502691 174109801 363935233 703798806 758490106 775992482 959824062 157366709 828895378 390728898 533884975 454250579 814509288 232695171 816596651 355319163 928005336 229848169 719342868 833424193 916153363 298858788 772360163 780201113 824940947 384058243 390046376 582549677 919952954 193295238 372491072 15685776 778702444 995682606 999538944 511786415 830922170 518894774 570994986 71074684 241846530 64256148 293998098 698964509 968014348 60098228 354375284 708688309 819113312 164499571 829871624 574677869 863944758 498847292 505724382 620652148 697694662 197110359 437107292 814720962 825521552 86172550 389120656 429754073 640421664 355226339 684740825 200937969 749874213 843495383 979436432 857591430 982401661 474091485 818146211 47094130 557251152 29139778 503774555 45011036 763267658 992364909 994021935 650125349 964956881 14521057 233177598 364979826 877303582 247629498 365750009 633220641 696203607 565810409 633298168 539672359 604680468 276984157 552773489 411836386 911458970 362744055 969154565 55843199 319929719 724324319 974677406 417593043 424140172 553589051 598825285 900679542 901611925 519767379 784461501 789052366 907641017 272359530 818326550 782522718 979271943 499839399 616072777 396214681 465660733 334836734 720134047 898689113 921768138 210704205 980408216 567568664 642480167 722159229 865110619 738069322 932153899 746879147 937988748 897779765 908459750 364548871 937971704 665503070 681127737 667613231 720504998 480029426 844260955 87659928 468231055 180520495 517478417 34782659 879852031 137311722 636509420 472254794 818475143 951550003 964873883 481139691 604487358 810001256 853050402 73618597 203383719 783333586 931265455 894172554 986064983 699247503 713463303 648240608 740906752 39617694 999768013 597828998 994592818 293305081 727447773 96905183 186691585 538594557 597204002 445675178 908708652 296357228 456111507 729710668 807794228 918899801 924556704 995370284 999235226 537765187 707353493 772877082 945178031 69618084 380084183 859856439 878091589 743590296 977527669 893915416 965198183 710874846 762403071 942235466 974446298 169819968 483234820 845255068 887557263 890627537 978246528 534854568 584115733 524632495 830304845 631793331 743350959 841770590 918211978 733505985 958043979 7017229 210364924 715213239 968814061 195326998 933733813 399099774 804484102 327762302 921558798 635081318 752978344 766277978 916883838 251064522 918852949 378481017 427555359 66682525 259199215 16292372 739706011 422248108 516227502 230287929 464193410 77175393 513142280 40832968 818673244 784807546 975460467 949040533 954049200 544426011 968843320 595505212 995326271 483216033 722959258 491591556 788531599 960526380 969807285 15757458 315526172 480759408 813819262 701987433 711032628 2700795 890084514 13486901 876877246 971291912 972609903 475170138 835905978 554127879 836189156 435471506 696825392 680132813 865639938 105554846 212186425 404575521 755444671 597155699 905728210 174461580 215053894 245567253 558718640 780970171 819972666 299933557 447258914 380709489 552036564 835792595 868579821 510849367 778775235 30634498 472279233 181556493 464519790 342211699 908770238 895199603 914015117 972386596 991469532 56573603 218495887 974507843 998820974 815435572 866903547 530405394 949438831 410790825 884075150 567219918 630091446 125052065 817377419 241892434 999323895 829110243 984895834 391842647 845845013 876743120 973557589 795553083 975660570 355253653 951108554 266661793 843161959 673684537 899937271 162807259 550847261 659119522 951161251 321391534 516432757 177648365 899450713 492591087 750071058 412195783 419219770 5324317 914755711 248354516 394616986 661780909 832147563 297673367 586994814 981687792 992130025 15908707 280238677 531157089 707105476 237030847 890757935 496759114 590196259 671761464 798993236 772597750 918179619 108147949 942827089 74692631 833216337 97512566 772021403 465898475 511094192 293279069 483730719 504735398 805049170 268460906 609803181 985614970 999256505 282349113 445692093 879694769 912669540 609256793 833203919 410837456 863927378 182541130 294965661 448410405 996751607 275230471 679217278 169663583 319987838 591469140 830710123 476210610 946270781 349111837 848967839 576932084 694735514 502498352 859817694 502241052 702302670 944071870 987068181 906387076 997682063 368568008 768519318 231959442 680258717 723277721 885412906 417722819 850223621 961318923 978348881 147166369 944622970 444579303 822800809 300225084 431409508 322617510 347055650 914496055 983694128 114580888 916330909 380142864 780753101 760306864 893498995 792789556 873250576 65291185 945083060 992446727 994817252 763238472 961466802 461821597 878885584 778590506 811926674 568935664 576450155 310550705 791702499 580228912 998348661 767999488 968365008 692832192 709396735 99515943 402982453 581650288 658731859 295543057 827060597 964751561 965964664 726727022 919062316 989940480 999789025 715349002 826510148 937822541 995442106 501289682 854310940 921791758 965588591 245001026 267730142 248330314 886928443 707676241 836169366 699810883 876455651 888786638 895673669 443881665 850464731 852948216 942853961 702770132 963348256 622746909 749151645 292015439 896599675 1593089 471608054 631764151 927762555 871496462 871948701 344097673 662866036 37401930 251059773 37599751 418099461 401128299 464660626 360651383 450171928 277747829 536406463 657708948 835276790 9448085 461053796 809909742 828394938 288186103 756619807 734937758 936277500 683587303 855917175 847010722 877496048 603306527 859542665 326147088 470235208 155318194 800654710 807940107 958399797 264571216 376294122 550448556 685494173 236929041 438286082 226056270 751820136 642229047 699111395 569348877 730102321 671599016 755332199 594682701 955695811 665019164 675789695 87096074 919161617 732408700 863753392 444670786 736799566 282637192 948132798 821183050 828172825 253269721 936175476 709319755 952225170 141041979 349187392 349043011 424637227 58845047 75655829 775110228 847807345 260653784 283545666 597746367 785278904 943325772 970061683 656154010 824456290 131944807 474017828 149711910 642638220 71151932 526430917 346721961 512825728 825151878 984345743 204359854 731950308 28441788 400727010 175651554 618447194 827275984 881216728 268343548 854454491 390059090 804825130 633958978 966507702 151019953 973897110 135076669 231033566 460583217 750227792 813660294 930362938 390400886 830590545 856599511 938385212 46887300 657511873 299373146 303209017 335808828 562323742 992118414 992921242 712937696 933963846 706100137 993819322 131096248 754931133 440184509 517187869 581528968 714795365 121907922 842508291 849404206 957453102 517947985 930636605 737434473 803676883 944828793 972088169 268962254 967839392 180162181 844645158 591442316 938821865 945323059 971554841 408112693 960153893 451615322 865137863 660700530 843251660 168004578 568062147 340514799 807946248 259163092 718579065 564406020 818250126 346675021 599764862 352854371 973912463 876511614 900643293 260079431 973747262 39585667 688379925 784581419 820724964 548320824 960151518 24692996 336379049 995563815 996872384 668952672 686258751 159601828 743044346 804476836 919200265 400377240 653857587 872019360 981758739 139223253 617781785 330758367 861650208 152221717 601480164 672153606 706796445 756961970 811907427 661706556 954525876 853284878 912843736 347647268 701186229 900538847 920997063 578044841 704566735 192761295 329771426 921363914 939829076 240884985 873266508 675877663 808790792 739484979 749383851 491862138 948546659 900314976 921680115 14548091 875111400 991026015 994570071 222814770 658096701 59273158 382130642 770903089 931109383 118576678 277428655 112303279 158521311 398068208 784240483 610360538 980385279 535891865 701969160 55900999 661596751 464757215 817569915 85963116 221649120 202451790 669536918 17307976 526946295 400985787 580771083 61096556 811404705 252132970 549543724 297127425 668494055 374926004 918077210 668174517 740673413 631559215 957012287 841889230 978268569 787606180 835321047 916747685 953373465 697494178 737998743 806239589 942583187 583504897 612988832 336247867 413553471 881874434 917660714 85937709 441803009 682839160 797711134 58643534 943103936 922945561 928780131 539621512 746242869 283443026 334128059 597777154 826829944 495470544 868375278 874339811 970292975 557118052 914170932 498534607 954580226 664582714 732237630 188172155 850512684 993157891 996204954 689754196 693244481 312534177 928711859 105701670 231761815 374390577 437021821 831377642 994119039 166701915 300440578 386593832 568892314 93199735 687929441 181210606 863756166 632152476 860221595 558768184 603190027 273518100 942337662 314830282 608576288 413488047 829295529 688706167 752010784 486701563 589916403 211824002 368550523 150884139 832944881 322329766 373005409 791723957 943708055 225033903 376847859 759108087 902948761 684847625 964719165 207934870 731663245 372840518 385823052 12615801 474462759 214986763 304423226 798358242 879123227 889122684 902028404 778751153 875191696 488807461 636125568 82071922 201318691 72940688 188420945 740672932 865433301 673906882 758014397 104095164 764138587 82340960 981143216 911164576 931115415 455461663 566282851 597855276 652163114 350881579 589656223 876893832 979528424 105073066 891338122 288526086 620635240 697915569 946887534 415049048 660474069 315996320 395129807 793966902 917912408 995283664 995630828 991456371 995916659 637973580 649146908 54560062 482763481 770304322 944081453 281565979 582125565 603505967 817663220 590277000 735767700 173409745 446269639 79613465 705050813 768722354 782541214 273591876 980571439 116764036 431999512 765296051 858347211 269501971 331042648 362872970 426424421 319473674 765392877 284835767 521589345 364738710 505279784 764261802 992657544 204598917 377953366 159571540 913028451 779862200 984440626 718391892 838077454 292578807 986427334 530219636 801726080 889585249 912617659 439585463 723162362 504506487 505602144 41770467 851316034 102811356 569689475 474272798 689507464 272238938 335179693 807614273 847790930 56737394 893170316 134116825 333311270 923877048 944104555 177659765 928307365 348028271 904583183 681189292 704256107 949959642 986496974 615071936 978048180 336397111 970355210 853222043 861822306 249279905 462940731 169500244 885190510 508373001 927433673 772049704 784523731 40324842 259118498 129492680 738928575 487438678 610249982 382403305 627864565 197514196 423048200 266132826 635300572 626063638 718182526 818059626 822369653 817594914 981214804 14518370 463919771 807257391 875784723 391484563 498597737 799465814 982612973 598276966 647846622 206904810 441316427 372034437 412944059 758430979 812004712 458194077 721302159 120467095 140484949 556630212 634373734 860660599 865599201 320101758 984498399 97472289 642971824 233403598 233962967 475704500 860152141 467416336 794836251 306502734 759142569 130924241 499468759 749794618 942571600 258242100 367420204 625353923 636495424 789678113 840917382 28268030 723148105 883788087 906456797 384376451 705490285 415571408 416169284 206902896 583220398 360027568 745536827 262282915 870821019 52007651 341795888 744029391 846522866 524541504 567401784 30675468 641169840 786304333 955410902 238327026 861208558 858382128 999593116 542718419 753631162 769101207 967140949 902408828 909555571 625755054 960923967 315302443 564477689 42163 279117421 357479223 871166393 71706892 843321840 543211182 770923029 970905750 973865276 566667834 696372472 876255682 908484551 987904798 998335162 668124040 835570138 172237912 586817950 197763462 513126877 941925239 972744198 47992162 987148112 803274971 984994074 444262093 984139989 582681445 879280963 665129069 996141752 591340481 635390297 592970997 673480122 952117833 985604855 140637560 795754505 523726527 887338617 7301055 392721732 522976414 863419080 198919863 688949932 765306496 951015416 557880992 807933848 273498326 487767493 269221792 657757513 666128302 686212175 42910108 631195115 88677503 850843486 580917168 844332276 224225569 426912657 895890676 992463098 908239404 995375370 551713293 925470380 67479224 262724141 389177682 906072561 673077454 798081394 163757614 250616899 220675942 971710231 355055157 489601653 672228308 916302170 542858402 690955107 890589461 964377989 481037295 799258020 3841999 4757485 783101932 890369623 760179989 880226816 336873945 813072066 113910143 780743442 375412382 845312598 182445761 888876519 703032663 954939732 269781029 822771042 441308508 896937100 29702069 504304559 438801019 683565179 527052206 798509592 232540194 618611186 482207511 986209606 367662967 541960342 682445944 885624658 655721461 799490619 67111751 766834042 323702249 528633457 159282442 482462329 146982435 215630367 314291223 490236350 261951894 528021536 467264646 601857113 154626578 809822884 176174131 583835439 541283119 645799464 739276342 997300845 970740592 991760573 821292199 898630333 530098893 646206659 601896088 717193007 372530528 640171731 977452508 998511678 839096082 871134630 119951320 525875925 220353582 767654426 378977368 918008680 624095199 894784636 226013558 477644238 634096852 913423237 529578842 876295441 625985702 793150015 753583172 870544542 1237057 359176057 960680662 998360797 820230439 879278449 230577683 356356042 320746627 710006923 533128268 720184472 888025412 961054072 926211862 943419550 80663830 623735219 59106445 583384648 19670316 733830104 373003614 904852265 963596877 968447919 377715528 582790024 398839792 692893892 98438027 934723199 576168339 793816522 986288227 998860714 537109966 997771894 208159591 746287320 136412880 746793019 793842107 892761817 547236880 595655613 202831019 940382330 947066782 981823304 141348569 207556129 609332236 733359158 847264047 856201309 520291486 562879060 602828140 729033314 675175518 979331972 781298861 946916368 223549165 225858259 216063588 799945559 265564318 777154672 257553516 706661766 950053845 971478083 578518226 760248882 993799131 997123535 443722512 865731579 972576038 991312886 884611193 947372930 597376620 743051613 511663617 794523491 689781298 946774022 33179543 986408507 338185176 867013977 116375998 818412219 534659021 575840766 635782016 932457485 695588436 747303179 481475421 558364544 841523194 979660742 737463280 738285293 286151061 781032377 930653911 997131250 127220541 752525870 468211271 693008566 346382496 870208927 37947808 725456024 558319470 912777337 41747130 103810162 615891192 912374327 189816480 355485364 180810205 556833587 778158333 813787308 191181262 786002862 117967513 697022062 524202379 993715064 288237417 427562925 110391333 705828464 952621244 977569991 395148030 484152558 13360381 506824954 108092822 653858492 395339390 765044649 749802322 858629317 147803111 957351464 521553912 897668313 704490847 939497043 861877306 931411557 694246155 803544923 292346645 604587448 202917281 356890679 38547388 143840610 215355495 473736887 466931755 713646640 581868205 994121299 332888364 578819906 772203315 773669429 941493178 977722318 470768887 586169416 158994733 483769883 348730941 905820635 987173430 996143160 300280582 861367661 360322606 763335569 555256904 999712244 834681734 921141205 585395848 644997496 150112270 553342825 569525208 831282786 630782016 730394320 779660981 828813878 995422267 995840057 744549630 934995676 954505720 995989455 142054329 974753883 442036408 991767448 130003290 749623901 860499009 924574401 448023890 489041108 612157384 813892885 729245097 985165854 410076215 653500181 483560949 741278509 313748621 601405841 709973918 726314198 134057021 299903093 821244026 915274754 438604904 548730553 973120263 988351951 418377112 547120003 81816628 848202828 671287588 872991155 831104995 902578434 162016820 269116683 696651555 759006909 407493851 540689854 160223804 640095017 402772736 841625433 549333210 800962099 652752035 789555578 149191720 830947940 850247953 985743468 161993832 473076659 569851711 732685379 250186842 590236037 891733447 898711633 451946158 884219953 601935355 682228936 19233262 184726037 925582167 987632873 601684009 694079894 166543104 679582024 890065774 900122428 427058308 583853371 261471841 612010474 560142885 826576458 838327727 939164215 979573306 995624063 387782358 990098267 259673532 849290051 92808757 599291438 381237681 748558011 662096865 923946136 494210743 511129555 581596760 863708042 358222123 397099481 292925952 382410764 486795552 754352384 463663700 560368100 325764611 887094595 482090449 854104688 3750531 209951598 853636566 929322492 154476289 431261767 819923533 894758646 295549522 672157889 411442685 703521752 467760437 891425007 560079328 663156717 240186385 951429442 751160767 942261618 997101741 998224333 922996087 999404619 688325236 963705123 73335589 622577618 57046293 595488327 50476076 998854363 604866205 963394524 972510953 997126471 465829151 882901274 221412206 695871113 638836128 813843644 212304794 584910458 810546800 886521854 491981036 957407455 784947647 829652754 404973344 578916824 181835137 226777405 936690749 959482331 887070187 917943645 855375977 870924188 831199330 849398658 488646329 709785659 809054101 815668743 705235836 923588067 581108563 600196358 128767785 302466741 819398304 955670118 623940881 878751406 683271727 697161653 25503976 506496321 855080690 874055696 47596888 219326588 512380458 635612520 327822382 792506535 641085464 944753323 970878883 980129606 943818565 944935795 715371924 871429150 83387563 476563504 937712049 950849229 148716579 436079333 19486252 507810030 281908595 819964387 538241754 559425417 357234900 519707435 751534426 926646691 18183478 602908278 58230024 960139544 413514533 709067837 587903912 869337292 527740805 606471976 69049639 317569077 263345282 506509048 558795070 927524353 754655955 853683986 492842971 837974421 374534961 456126128 663423769 701257537 353280021 602165555 728724357 890639138 707052047 797372639 569207577 614444249 105245760 295172637 269225007 313953192 811877864 953799798 269110137 888132587 976816235 999045997 853110944 875378689 89557870 946619714 335875748 664831617 703034917 941206668 360134333 917692431 955901492 968208595 174087869 301460638 770400069 978151597 890240126 998756602 258560191 374619284 344933058 966715565 141581457 789787406 572608895 757653518 436668316 459586017 47381985 648155627 51213061 63463202 130850082 649846401 90491896 466511323 935535745 992457577 270190525 816145101 838771447 848455881 532485149 952395696 577943974 918068133 682886814 941655572 889282686 944407616 842972926 896357909 433644182 506837184 20466925 655631160 479592844 553076267 689451973 875527107 774168529 796324450 106845815 849654006 157118101 571225910 336838934 781118125 74365287 292024462 683827537 944543741 647554253 802011836 562598541 849507895 342718309 421692173 79264083 710292411 658272881 782032242 956396210 994321569 494677987 901934229 248100795 669666503 453982550 972421792 214593423 477510771 126480050 858407743 899539649 998037490 126551608 719747452 289519491 322802094 857352922 976499890 832872948 989675041 540273702 776337219 959524890 966740535 589650510 766473765 830808317 920716449 241207726 801498113 707971725 847893102 506607734 741963059 847057260 889864786 160894090 205401816 817905509 999165313 512672037 795419609 25531908 154844028 280046482 782246296 62083166 467054511 403077481 671015608 808162000 808431288 880439738 960278776 381230373 595609581 456987220 482424356 544277512 783235481 470688629 821880570 616749494 843003494 429282972 485586401 424186323 614297448 169629969 834288994 640823247 650773418 989264137 994290835 218069124 219660522 398315281 538459270 123821967 269427481 765113215 999139628 741339386 839529526 431757356 491365709 619515532 716692410 402462434 592692777 654202588 743342100 949008540 998317006 196087328 777247059 941353853 943409538 494514263 990817627 964422634 975866650 351031893 421160869 928333631 958900803 732152036 802828309 47781662 262339998 832567921 872879344 166183417 180431979 923842986 995748172 780227063 940821852 464045593 476004570 724235563 885504212 824943430 925584409 245129666 380189124 901807679 931100061 341157433 803892590 828652278 973721383 175114616 871921313 537154191 678952742 638988291 706838144 86644505 823462361 423950640 894750585 52870133 394350139 183231643 937539001 337683278 519239870 666535815 825833409 760062393 780186169 63276348 483998597 115609280 571349173 131351253 325622951 995062848 998362548 132032111 184624445 425858907 670307976 372121374 673330954 953101805 982690602 7030363 902248610 857814190 909803659 845795865 972723358 48842515 618649149 109648475 631376796 654707998 892422745 42140446 86528733 308928696 420171605 973195327 989236833 514462525 649974892 101834344 936231067 985639901 999646184 707882537 831295067 622732910 743043553 902013335 943921978 625421117 715201137 721932688 905665422 971741851 984492731 731338511 872382178 598423374 861101614 6579201 276150371 935084420 965493663 517982309 894524327 806976882 906332152 791996970 876026363 649109814 847535810 128401035 699642992 862556000 928959167 949665731 960395218 543759536 733246246 330237444 734324770 139401816 572514930 192834694 383428073 518468490 800403265 287510491 680058019 242198341 398166437 587275532 595749679 285229837 412144967 929108392 954305560 256363950 864404377 6606893 907114171 130883961 722566375 717857173 903340288 722140721 951959390 136301345 619562320 725078716 992977619 753772962 874653960 574147324 894320528 791408051 871710486 79257956 712324892 384351991 557704419 137861797 188540710 271309999 627316983 683438626 685031044 747700116 900716778 33206172 787848249 178113151 716146130 706758130 750799521 450499331 927953339 904692677 991545345 57387176 479812175 79371220 973258334 65672915 785401178 558989877 589452521 632177490 721547091 284995695 286287525 52304640 201031902 116453257 863841471 688800916 960556416 809313368 987642189 921542595 985834781 722921900 933738392 49967003 744440547 689354045 746101003 696182074 858935098 337308141 711766565 796039622 845444457 767487139 829965842 307865328 919249962 112689797 738071775 948397965 952006628 830471542 864234514 347607714 443519037 528004192 847006176 579573772 871360544 436691772 522521837 588260309 702778314 887460712 899416865 52020127 668184614 910742805 926047974 70212119 525831987 768031777 823067919 735370908 783520966 476094427 908803139 751676871 910472363 381284950 797123359 751901423 866526023 496066271 947575771 237743261 786027852 971453865 990731695 504800859 991730077 135854896 308505178 126287005 400609425 97670702 928304372 855898700 898509248 403696518 421392134 198080809 821623026 923253200 966960317 510154979 905941878 691727981 793091446 239240098 588897501 686165776 774452526 364974347 817390025 534712454 971263964 551031252 671241550 765695523 970310730 181659535 648763438 441096116 800021405 396196310 580073431 618764850 907963065 725349605 746213127 721262550 735938298 820890285 924086575 756818435 987050972 17463709 783980287 687425322 886691328 77762119 234267031 187537332 424813529 591686952 896185704 51370224 688460442 625131781 877870490 6503021 645578348 825335041 975715648 54053645 991317578 886979697 909852232 943015636 950872966 524113483 646964553 815811193 980674242 211367826 576161669 134595130 502149471 377254030 727376392 688608796 840176955 806818257 868889894 621038323 941657527 448119973 506320371 944173372 948399896 544596984 817880436 919940087 989660858 21413159 486555210 801278252 878783442 415810201 489156746 453251156 943892917 482173633 648822498 19583145 882760815 27008456 260855576 408432175 706504527 809373573 906321691 649190875 707272764 672519002 864415414 280075026 535457055 628629944 781458396 747770291 888609055 872793723 914695483 519491984 665391083 850032479 996137472 457894687 482852740 984439781 996793535 951939480 959878627 940128058 974031175 533478740 824035982 390144818 503832560 987171873 999235462 664703869 729151777 784316788 970882789 891247803 979526874 737675845 763981480 310033242 924132318 541626735 765631492 253291282 686842363 536755573 916474004 162514362 858450543 50964548 880581157 632557716 648308563 377070664 446870317 251558523 412521409 823576555 975344710 220641056 494322855 900394631 949600394 187616942 824340124 121206982 719210097 949674019 979766932 631811588 952323154 111684677 632384762 547480403 760753882 375146409 520418520 974649847 986987106 372649356 958356364 715223330 724596688 954571674 992156629 45269846 201841324 573078271 706663573 527160276 857022384 725806971 795389407 2526482 744091117 155612747 573558426 768121488 922645328 52813024 302397121 461948479 973961991 154923622 635790916 661330743 710013204 238037761 844284499 463368494 532462472 134457703 180082914 629865614 637047139 926936859 958569350 163322637 797993981 207590834 916540066 438478969 882939932 183925485 196253322 168093122 874162954 192640412 603521033 412964870 782273226 569779197 725993549 954262336 982456806 608177560 861731958 744027056 892403752 401172144 458993935 950532997 961934444 612907058 901380576 641954313 888806805 23725913 701644704 200020259 567503617 281657437 906793032 322660400 801273509 961983246 967096392 593399640 835013138 291953804 748504260 640877558 725462371 422292708 475253836 457193945 478083456 825812901 837262075 819052263 981760840 455957476 839545828 274163919 658254743 364434652 404649376 429326744 911794799 687580146 984755076 28906923 90653533 796635439 941780691 282180914 913040597 500502024 641476823 873305392 885144647 188838320 257075667 976572610 977278364 483028655 853717042 839792957 849407274 252931794 545642988 302915773 592666102 155458942 779473586 921767524 932150774 68329911 929818015 260414032 612719838 11746944 202863189 360112438 963989503 837305825 918645597 581727926 659723590 211968761 306943609 793571191 920736614 484383066 746340921 165588394 335872722 673427327 681887875 380476467 937238216 746466098 831441601 298711640 893396749 515552076 639805099 315673980 494627810 46080503 814805932 558090969 882936693 327675219 929302679 915505277 969256551 451156971 754383651 510853821 850883900 353163658 602206677 269269200 372287068 550064911 578545256 952088380 985188264 472929297 925550669 863704083 991232298 103826106 252891125 547964625 608937064 631477456 691116070 704432153 715521733 46135475 293587818 413194432 424109070 51033657 922200977 473414934 487781209 992492407 994915887 560347382 568732094 180636559 546333378 535743129 729591340 820527581 909323178 159685415 382186125 54319287 63655141 646466667 697550495 244726983 987788654 594795573 823410681 854210254 917308423 340662041 375820322 49414674 503941170 352146521 659210769 951690766 992848481 736140075 973070482 712909882 819654624 112702086 158128029 80054203 262440729 887730714 920582682 363375189 803756392 805216723 982489529 544136298 841783074 458583436 899181450 110610002 775326125 110126564 331969271 394705184 566664693 415210701 549529581 397494417 997925195 566486114 798403272 488735502 904511136 207252711 319575881 877844846 921638697 920931896 944092907 146908604 548561614 138484188 834201928 232863630 824091196 393171342 510201807 844180250 886652599 854779413 919824273 624520836 878729197 807828330 993190369 817336336 972153148 834152299 883652695 148853484 455636850 203977590 329893462 237958751 342863705 938264903 963945161 967941939 989600339 936408745 979987774 665492287 920446463 298502718 975125706 592361320 618554740 772142667 969748564 596124939 776041481 756230518 855434580 513806912 853303618 719707906 948919253 752085301 758230427 153169394 894589925 717285433 995791508 367546639 559835169 443791052 831470890 174186441 731792733 365839773 517079628 943600347 980695947 259239521 269987721 411313390 672624525 104320133 776931665 517721896 953134149 268347857 810320788 183862374 323366797 807600485 979838701 782592750 988835914 849177513 899968802 111090669 955265179 232641626 478670392 161615824 943053888 78246998 538445916 886187311 899716945 464984423 995708507 2686479 402118482 469293266 975227836 178843298 542272732 527650422 806827316 164803596 943190024 403533072 938689859 598313604 768137620 976946773 996390625 405809807 716873166 218331663 468380073 469219686 806458121 233236293 235714619 950926373 964339050 365274094 921775726 667027588 944704454 898220893 977061682 890442191 958258718 781691553 970273261 333488419 556708908 90540232 713612517 599015613 913337529 240754920 852072179 150347716 740348357 991014757 994246002 936689110 997088745 847301682 894815531 872806603 958305755 757299550 817988111 225636971 263790512 946895115 963740813 614494142 929122641 160777593 860641967 744395839 924677824 776247647 831898451 106463133 700064989 162847903 715478393 790037543 914100480 774632175 998322181 483338813 546144668 888875284 899197586 25484381 345663638 980023421 992153400 84432901 284127805 21796259 349576544 282698477 326271378 18751950 727668962 822118896 960677183 507639168 751743640 271726107 522550323 669516567 983106923 727654151 741464520 554673607 931698807 519870408 804410511 336673559 938873791 951390749 969036395 466649438 622767936 225737597 943716627 132429770 705215698 267204761 674060975 287331207 706845684 326060325 991070132 850872938 990621820 686120533 733948424 737678563 820865287 797743195 828527652 420005561 857616832 756776953 893255215 438601815 956030427 303230393 392915558 830664549 955466045 179961397 734505136 927363136 954279157 686673800 936323841 226387169 252601477 515436551 638127349 842894841 913315817 19559908 355008969 759094079 824808953 192399373 266280434 39741977 849922900 200615315 858666282 409598121 979188496 358774413 639950300 808778936 882408968 857799566 885897842 815039911 890960115 530972953 876690240 705230797 973584377 880316295 909088453 435579827 707863918 891042795 963884757 673255513 956545680 78687333 753448289 486571584 900084361 778685317 967456410 547919829 775362825 710669915 804243438 382324463 403070626 547624919 681403434 600528095 930316367 460076148 990908162 879685061 942559058 436256420 865906548 183785239 694418533 422096844 959014419 792206737 903899164 524113884 652153483 221773144 658684979 208806153 531759878 396560452 563964772 767686121 821080145 519250214 929222917 333330813 623970268 977735219 983666162 248094855 866125536 286987226 628316570 958205461 966067087 434579647 887282637 97306441 263848806 894713644 918902148 432266614 691699336 431002236 577420050 81636629 807335155 580346114 761250302 162205542 774466358 448399380 669662417 672344620 894169226 61470976 461832212 245810208 430922058 991150485 993686469 692738291 727656908 110966142 497911052 533327682 734523020 656129100 729937614 451364598 687103168 880247786 970327484 200500116 950993958 528068099 645069336 369777894 448836585 81842093 148527076 232674227 545285782 342738163 700677143 608500442 962802478 940979890 985368427 423363750 612135850 178501552 262829394 866318129 925238102 220474863 640410760 966631489 970995549 665330539 832921027 13229052 988005884 778733103 982121638 358165112 980692907 698575455 835229051 145313502 739407447 734836945 906050851 649925470 660418838 45904473 344196797 900841150 958160280 337886397 564361139 334275333 890157664 302354056 597497351 553795304 580159621 857097032 980857037 614632310 707848756 5293843 617938826 797775525 922122125 5121115 210467892 245934133 849495457 384405675 719603461 287472040 629007886 712995709 963295655 579162773 897967453 177174125 748595927 790440299 918761975 802239740 978572183 593521627 634484801 113340390 646387840 857548295 884348472 284390802 446817758 455154531 660736195 533783397 543324024 585554784 925611111 23063133 405844614 272689290 472822876 60408079 880448596 782083628 805537654 593765488 847460844 674619594 908870023 294931361 568128550 927575089 966038074 703985962 786685870 460611982 521184870 552470367 781796874 767931545 789980782 467171532 608815472 702997074 807721941 297689218 739734208 920154592 990115779 762552534 823514852 236428470 256809085 651279203 708751643 288375323 477964845 284872382 918342678 612346194 870569832 293642772 998131240 441260846 911141011 945248511 949074895 678522160 721997409 687082296 919704350 686334893 728129131 716138337 787860083 198957031 795180506 504739875 968214906 541179767 699330186 166680796 185216880 63852416 221403212 370875959 703652454 25204803 953007765 675842884 804728358 218953969 894994766 411271505 955544152 312371110 852295360 832224577 875726091 551880969 662718181 895092069 983333110 459586639 593689768 827500190 854137161 559376869 705532575 299889654 819401216 727913722 978229250 987608424 994522186 86268197 503105236 472393218 698835444 935154362 960889385 722005038 982288258 596224317 726872225 548672346 750374073 301548078 632680921 598098750 739259580 825760547 873752240 612261223 895656301 476501707 508436503 877460758 998698714 92485055 391180294 649948749 984175401 619386482 655928249 27086944 371684086 484964051 757858840 416565123 902622486 742043599 788206511 647598607 894081517 896256687 989810880 802054021 869691265 247356228 276261241 906443608 954870166 862691135 945804799 795225739 875175813 38499473 230115135 947826160 962930064 166401970 801374221 820532018 893474637 211404259 954076734 228734408 294864339 255178645 747439738 305628127 812621876 499832609 679990782 691377619 711787396 19858112 213307055 593688454 611029064 204855800 975204095 353632349 922336401 234551454 758363070 230525585 242535058 243638280 455412995 162436858 318247239 943730564 948017158 839868813 907185701 429217801 557821184 802250393 884656981 372177918 661492865 835232271 977468309 854716766 998543241 139568370 414112583 354102200 525840712 2025874 449254139 16493632 763896750 92399687 982894411 142983320 768069524 506860190 826504296 172551469 948410813 883690047 886437139 860071505 926987958 826936522 915157320 837460880 913484225 505210297 652793689 105018383 478309830 318810946 760567261 596420897 874249600 426267754 546771048 599642980 841462125 825533613 960800083 204838016 892591688 302748516 770153473 852429536 914060275 698682877 871202329 841095743 888646150 21811894 342316019 263298902 724704266 384313924 500795522 735320148 817772579 691514030 722698864 681486567 947203603 372399893 918447824 248736469 831179134 835206146 892468649 124446545 413452037 422679783 486704545 661896959 953793427 515491651 553703245 398554506 511808033 212268232 731477120 869285654 897224326 652481553 684893453 400913357 779321659 207093381 451442581 998664868 999635463 458228232 634638207 486545829 897520578 300850757 696229317 564906984 688157839 427007193 842229206 668548444 865194543 156930102 889644622 400377324 608873246 739658341 776465172 584539819 719825976 427554302 838021140 695667844 837733668 181886734 242779288 975768581 985226988 542387815 888613826 334032238 703336649 339792366 687235159 233231764 586120907 977530248 983563673 910448097 969890142 758013731 898288380 104502405 399831601 636362677 778625230 387663621 804644901 904414926 985655168 17521764 836376960 883743815 968494095 112552295 733115912 28510364 502286603 397423139 525862312 222061102 504900475 526169176 961541778 859889414 942441762 252374469 259557775 87899573 419619878 934041912 985584296 194381648 219599805 991763237 993875443 238976711 704741577 148546670 515356761 240462061 274336947 783357723 964534986 452893876 687303326 799286521 799997021 885939082 964402747 462952902 998034453 202677017 318957262 411897820 839461616 187857214 625062845 503334925 717168989 997944184 998253365 420614368 639325762 391790083 472073371 381931760 642131775 618984150 879785680 422793464 854229981 455160320 480744632 355837129 657679976 112642115 383293519 887712306 946098560 665943948 806424288 448149610 491521852 934772715 942524615 117656356 292668144 909370006 978074753 100300036 353333563 635235041 907252011 221623186 457561763 387361576 985852608 245744201 770612443 907415176 919693528 115835981 983779023 55911789 667168428 636781429 980419353 371813633 783368720 357265622 454918737 345480129 955178495 156526504 516133892 2802506 733580186 158983823 347569926 30570888 759043437 476221269 974423138 907685837 948888698 329219818 758215484 841294469 968016799 820273894 965187814 698217937 807683800 976066493 994416742 245399965 895875778 111211365 691953903 542196881 775351593 857248249 959556147 424250406 778735552 382002124 424618107 423271506 864621277 462292884 701387488 620667851 811527772 860628631 899656101 829396497 879874081 175590310 500701424 543126646 758507887 154445107 295154518 885125635 930604368 436700491 526449541 244277724 706318145 713106490 759471943 738633859 945636878 596590335 673106185 810884313 884221269 930515934 984388730 6211617 120804634 173542761 533427096 628049113 882056876 402868264 746553366 480443166 854895640 256593618 835729345 829709889 932948318 127734278 223863644 509644425 537028192 493373053 949126061 611488389 712212617 77784511 300430473 516201152 958835932 12116899 919526018 35882527 968253532 598034329 639897459 128753622 639338557 560810420 701777179 646950770 839930422 260850328 305447473 808661652 964906006 877216495 967444478 279323743 540698811 644146145 768591044 552499376 968534645 316307233 389771666 699412307 888991413 403728609 514938883 695585600 924844618 270943092 471270971 893954273 932117871 787072574 804150823 593986211 983164416 194073921 244995150 250822740 294951644 727642603 823908944 165260796 582422227 424144630 813492543 309446918 905053093 83293193 112131982 278133102 510655292 588568535 647055628 188731635 954138729 611367279 938592949 211662911 963049185 499539276 608908281 861561411 959620423 770009777 850218473 193761884 976685254 881932747 953978098 214389757 757177985 256122006 637957664 59760614 498112089 114477596 769618064 472615845 604817735 423880507 590012183 671868765 997421013 32926047 566136871 507198332 959906470 16975511 669997469 469457840 488438241 993527526 999800561 137370033 886789597 986760195 994081539 158057846 694244287 482771237 888643190 104514540 532225190 311158347 785276587 991965909 992492508 456514944 774524028 951443327 977657380 405257841 850762593 92094215 891913631 335329064 671509494 169958462 473105205 932853901 936462623 702920887 940902920 48576240 695807604 131894754 523060842 156141759 282751096 234324638 752275549 397554941 867129947 993283986 998176291 229732714 333083996 987203517 999783229 910244084 939527972 668603119 909844848 752854429 867218267 97011736 187250755 788761445 966829609 699082802 906710634 198065412 611731219 66721224 244071480 881710337 902130019 23827036 383160566 470575559 699717957 852675123 922965014 438810266 608225028 37465468 338132602 500894547 543723191 684586533 896010661 956143351 983761116 832486271 900638726 986777160 996945129 240998311 293503020 164032289 566747346 42450721 140588301 497769521 991072163 752665951 946255644 139123853 515259581 285841678 329437919 734605840 987209156 694485944 901333427 762553684 865750868 45252757 475821352 75759235 807073682 38795483 376370544 830138420 990072165 435222439 497207075 778417655 882784593 222091759 677141514 281872017 940135084 717533597 902121568 89233594 906075047 373903977 472163106 702263679 804512237 577736246 843725689 770590366 838084763 231227849 667822905 129994212 843663163 348291989 810588382 699052430 737252099 728652545 808684800 945945884 974271995 248515898 678118250 109443327 181586329 417985762 902352546 830367928 994150471 65588468 116579219 484385381 774228486 754595243 770086085 126267567 382883918 54937640 340574551 215124536 999457062 981358806 990787528 902464508 923316929 162340283 308646713 272012300 490471675 769957839 869224773 297288934 494458396 590067643 973300391 235025501 914668082 679697567 870290705 620214592 867269064 71319881 608092013 522965162 739518645 847089266 945381763 637035807 918084871 316166826 613701387 709439769 811133184 969650450 978694004 21689004 884599796 328912847 996995469 410638130 648903447 717148594 951473002 412489199 985691735 599673475 797421154 510986479 858600688 930134033 966247140 496357241 590156220 364972744 613378930 777479133 973172566 106537640 478427094 786492997 789497274 350432120 605248813 113663772 874183549 523807931 607044115 416852176 789677641 817772821 937406752 105496806 642490643 389400010 647607999 40915558 853607026 996355978 996558727 92265656 565216100 825677923 891042009 335779088 378217922 708853779 837470043 535602710 968153075 39028889 775336080 278937685 305153123 127253773 807903003 195950244 484397310 766608066 936095123 399252218 773434012 415220879 783265157 226968011 266866355 799860999 800261081 833088713 853480437 651610297 888586730 891727131 907141554 704347766 895625125 864676601 978771560 60386316 147352058 391595758 867963470 782652272 944589527 999969128 999970186 371957151 778712006 259017850 292963701 802392472 887097266 755150727 930096920 260674115 401359761 600865539 866834666 990392733 997426414 165528323 822187291 916582628 994037114 547787072 570520679 133949935 922244545 228304 729784557 454358232 949425123 705347988 722555728 249628349 573509970 88528276 597955919 943951300 945913732 607843479 842128867 54753342 996230505 606570036 621735578 964076958 965055061 591965952 605728367 845850798 989338025 181928588 712088104 29516163 104270403 604832618 710263169 189830166 352060072 940620071 979288935 677884533 780650605 424212351 744367073 131845029 383561375 602057956 982076876 723923475 960826375 482396579 518433463 624987134 858478614 587457958 748369085 800512821 851015423 689034532 740848663 20031223 94320839 387966384 927241302 326181083 441389539 995126492 999347980 24433759 62224796 967158295 983059229 117168817 376948660 225692295 747215995 781454882 958410265 732603146 826937652 944812921 955563640 132244472 966922761 427996909 692828941 855371831 951932196 258295501 989442267 313717270 973548141 690646565 933684045 184668626 428039779 295617014 572295106 422107986 969683229 848688079 884432042 935868697 968615278 315590160 954680600 895551101 933231733 719226563 986233384 486898294 736799811 356933321 921184135 481363885 875580623 784358526 976220403 79263613 111503897 521567716 927016295 794692773 968863597 695662118 777940294 169039963 950409333 865376963 870723127 987252419 994841030 695258267 768682901 344223376 513675780 981389727 984711101 6336217 990627641 254669905 847175507 402757555 521065241 830623595 999657641 441439192 990821185 597744777 699205380 119759746 688893065 520832126 710974956 455233427 988510419 873440456 921325743 202814741 467443842 648134828 867343127 593914075 831486508 479177143 545243888 110450825 760641750 109521211 766362495 695474589 860463943 439150035 462820573 283296497 538874863 922184197 952964488 730293272 880230065 874206793 898849064 894303469 919642950 56520897 923220119 683251203 859583691 878975507 884517210 857444078 910195163 981759885 985635259 532418991 576119649 953702992 971311843 351644074 361443361 339502073 440494050 878785695 978954602 971061882 980718017 886667579 951457313 720795005 762065316 758841875 803961042 35436331 298993988 99902270 697121796 34875384 690756614 840617792 881015842 130356255 157111324 157672008 166051540 730858045 878137502 577581997 937692402 750197928 978728631 709115591 797804104 235511063 418581715 710391016 969308382 323906024 329126973 314323938 860914550 391831773 506705331 462340783 743248377 859037990 900575279 341289080 525295250 120283111 665858375 624214977 921293672 58077388 490036999 334799823 528372567 601655452 722780886 642873399 901028608 279213860 873393439 947609649 997703077 577810880 836493134 141667636 697249352 829456178 971751926 679430676 738904424 852127602 970072882 856747826 896402165 137305423 698418674 815565258 996409961 940859921 943186523 969378256 974697655 428198489 439212019 461001856 546809663 926767756 986762823 281530347 613185414 221076171 478366508 650128294 893422824 900855827 953588267 284180661 514207867 551426692 888650064 767271818 909822272 897643785 962584411 773928404 902427274 872592633 886568233 755890889 809346798 895826498 904038670 839446970 892989082 512215698 919907361 390119383 931056383 74694851 297119657 218541048 531367203 209241609 711524744 439239143 811617912 424077121 500842537 340161992 649187379 188424695 652628719 570309820 996090555 390072736 722862762 855753411 960017370 585486985 818707165 427419983 863275282 463434875 798901328 133227870 375383257 844720291 999972542 843537000 992572904 833243731 946628304 414095069 950724945 72705072 955130528 178657285 640224103 45292793 883626059 864367062 908607134 499147417 836105576 353924533 558785125 974808321 997007642 763488782 930058885 394232786 747099930 464114919 860521925 671150825 900680224 792066504 894911085 3623471 458872695 725499093 887097372 164967923 561430574 363836429 557584027 358716353 649836631 99980551 310439812 711833668 943045933 284925174 685656483 806562100 963031031 870660592 877015097 30956208 745282715 912457079 934542495 694773768 783438156 250619380 692346950 642121220 679073464 559586797 630242064 342440526 603432596 365721124 502738300 385303572 889073914 697608870 729400806 528854455 562238549 964070550 995111367 45180557 225037730 793568777 912542531 940273140 956444674 542225952 738649973 525242084 972662717 27826152 485477246 532092867 967283963 380985731 777867945 980205211 991815631 527426208 752602121 121555724 340415720 858247202 999065243 656807754 729515167 671109545 776367389 217333045 499230430 52562533 405871434 673633730 994825852 463434852 954059651 188720274 946106433 525448112 850312049 590456090 658445548 725815320 834750654 8060272 351057737 436110372 716055740 904326051 915038653 480143560 808852646 705301606 916872058 732585922 908376843 120043331 958484835 243844160 967844690 109125289 480258072 314470414 462164108 386589444 394324341 621831556 814813779 852195475 915419667 607286256 716377851 838237725 983030216 29990982 214009484 682941221 945421165 529419101 583543725 651900725 921713769 551212980 747703815 400521916 969984783 727467212 901000070 844524101 880281668 947296952 959552039 511185859 733037847 881056459 912789706 202689314 721397285 816524162 962518652 673233922 859246573 454398112 788159001 749693969 986933266 855677371 941372993 448133547 634555511 240935699 821211920 826448650 991282086 749467658 751127529 470089430 875595663 395996860 991462824 939188298 998390186 462141053 913443415 445421046 907558476 358088692 857340300 605209254 850935371 538850078 713235718 853867722 931863150 238155290 487368843 208681530 386452809 906432137 906765076 260265737 699346869 888769636 988200225 46390669 569426097 13043254 904813345 197191307 927840480 193092174 963095021 286129389 351534585 675194101 676118115 526379833 546110743 539580546 641050103 215700459 461599095 586453866 654676780 386934452 848227904 80918060 81978839 647683856 877471302 651078648 703978928 300542365 923275232 509110238 759693277 518925432 673677394 301850643 740789085 319167719 840133610 279008832 382253628 158332628 174391325 815873473 933558504 12492669 565199859 754201851 988938486 506714843 669795968 590389110 758306322 299293453 949431525 402573585 931481508 84321063 858739380 842501199 846111901 801399620 995676635 208119688 402182060 542545024 623208219 545234657 630959323 70915684 151538432 91483459 120909727 8740179 856446765 695207816 759167114 146640621 391424442 686572627 801124363 897786250 920881359 925424086 963562044 299819807 927609672 698472151 873064638 355777027 656976331 650326324 845105092 54833052 849282612 438801038 798793306 425574961 441539064 302088696 367106915 262132460 344938520 681952620 789754033 503018428 926357063 939964466 941025242 723231473 797364155 381805198 450214558 954854793 968935098 326039834 333889829 579702056 887171831 975832391 997559418 833060261 926206481 111868452 528598762 373356360 787431673 985853525 992386842 276298737 706807286 789346283 961478120 674220712 906576212 381358003 411155585 196292482 750932487 187595837 494181316 947273873 970007379 287036960 355896696 204835135 985595679 769910244 802744103 576217217 740160678 30553164 152174295 361438261 400820935 295675948 298983837 770470293 969863526 957093394 965071293 860334413 967237748 681821097 985165187 910326104 994282796 267656241 799071403 87411539 952261101 809204056 873534536 874383279 999910382 535681828 762366193 988456633 995900761 770534926 824547405 338112040 414386715 442666521 476011589 722642305 864834158 307297348 337236528 583464761 990014214 806450512 817594819 785194898 973982478 938064644 995075353 594184054 704793925 686278526 830622290 955770576 979157626 584881146 735740837 798795444 974702285 405513956 423146709 123650262 164294122 237003477 613016526 29162293 393464895 301950242 333666734 966997289 995647029 708069600 977868418 932530976 999623632 495284885 892651113 531542027 699071336 386766924 667088028 681419870 890736865 782123994 853283810 953675897 985284354 682198715 781379103 167451572 958254017 768532282 851999402 263332044 624918679 20508205 279108233 492965090 681493461 947412844 965357688 861673870 995211295 168623525 194920353 584863970 864599111 836451235 925410884 827663930 858542640 67168756 375238644 742853694 994826719 612580613 861988723 945508019 967989024 484834815 604419699 696218583 957863942 362142983 982067935 839155274 847723010 861190944 948926505 534497626 854108676 990744418 996551582 344108297 440547337 870749147 892438381 82279629 801753656 204866138 772652185 403334564 556189947 319220993 974892768 972330802 985435907 831586990 982229188 447415419 633355331 403339166 888009754 582537288 837659366 547549805 846286112 705708967 970321422 720327150 801987940 585110732 964224062 901847173 923614221 800994496 913427888 606986319 653402389 479415891 826615703 360874067 860669671 456777357 651256504 472294703 766403745 916576313 989333134 102211865 661854213 110614404 773268139 484205311 744521787 173129940 941110180 323323041 483132918 611912574 736071115 424552694 725691195 891480471 975568576 10452026 111013062 650597706 765458917 775752350 956329030 194192761 449087483 919474188 980125531 947509652 974932804 574512957 650674606 7243018 81220035 415589625 618027211 908465625 976242574 227060532 456550434 996114047 996151593 732248843 801400077 334860697 935752134 729890003 868195231 535390700 735322709 28997449 206050777 782869109 821766031 116694324 169627880 190414130 479882613 803260720 984177470 320055239 855891171 468976382 902004970 165761779 638066193 410385359 848147032 265081286 457111560 536891774 585158224 515738910 783579404 387103585 750409054 921007942 989832512 243126021 716767905 548307510 870461908 761594221 822543478 597337915 860309184 934755406 970041794 246428897 599421874 142691806 476302522 342399150 989570078 279902079 987634076 174309691 595438024 171782125 694186367 423756532 555930977 986122520 990617578 304172835 631173938 416168416 871677776 225766970 691848272 775927007 980720321 914377730 915180586 536272227 587418364 107038062 287790114 317549411 861963161 660228926 746298333 33049709 336157314 545972268 930570325 814901941 986872326 284273860 844388834 698562575 698719199 488762582 944668941 310312226 822129485 620679493 636624405 875162623 901465789 85813181 304783107 762422380 825130833 708598430 929029661 150697265 984506972 925912154 943543465 107044536 909469116 762153253 956442592 593395258 681583610 426149070 817384672 708103604 731339934 271314578 678395098 468301238 497446043 332813864 435525399 888287359 995054369 571817790 697098360 231738592 800182212 370732711 882664195 696681548 750737281 697941222 923784445 908242993 986115783 539951187 557214636 269976761 927993843 577958623 656420763 782401305 877969517 398404108 509900746 536011771 881389860 907245076 974081482 11471639 500094673 133470888 484427344 939448241 996318388 944934034 975281641 63282392 484806207 897620177 934633191 646002632 918544888 392622270 466389461 629663788 815460913 827231441 879575436 309940215 709574989 39219096 298215980 420461668 456641515 525720272 536195431 275273729 769773177 584269760 683364169 555499929 984465392 499260467 773004359 724545765 907268407 81718359 973170201 629627078 910695129 446028131 557678853 189412153 937358873 151030769 159396853 801409739 812010595 276046260 439485073 596281201 821039364 395127762 734807377 507488741 514161689 305561857 636653065 362823277 388173591 379408820 977593854 110452126 188682268 400619667 488681344 105979598 616662749 636490862 814550383 886297797 934506127 44321480 187136066 280936538 302118020 918728556 956239262 863013996 942805676 48348605 892741483 880985800 972395320 619033246 943008668 53376553 305895444 760270935 916726980 747362910 802391991 676565757 879708609 770917563 965691071 599608909 599970426 66329614 797615356 634329411 679888300 629880373 997981557 441279215 554290685 730812153 758132812 743178140 957672573 659997479 763655607 481967803 653179907 181585027 884776182 925587089 961868131 533370396 985279883 94976810 509611225 486418251 981013667 192003553 602882521 405789879 835089423 483893432 699328636 464320930 677677670 461371634 700239904 817892938 880390000 177059361 527865179 676682245 824862295 907331512 993668638 469279485 960408869 529580620 829790445 414787117 707755131 414239134 414285462 522575664 838480341 676593136 772315954 878895833 907575311 575758166 706896306 174930930 921192738 98537495 191778922 239873608 932182767 240212616 895342175 795002251 918696822 134888430 807370960 483618614 907123053 732111020 842724310 379764281 501998300 500095178 653488076 849520857 964884364 468265316 610268904 17432097 334638991 872597497 992545840 323674871 923129790 542481169 670380293 612126582 832098208 324156971 467381445 3023896 237677982 920920725 949613147 439390217 751658820 374208301 724108618 121882918 423487791 749921362 911271605 439053533 729303768 531344795 567740235 66014812 738306001 483027096 526170643 75836245 847954479 202792321 492036977 152154770 279033039 316984174 352115762 213963520 388165253 218498197 896938747 378883551 840567858 664253138 889664172 113660929 298105369 409360811 461481961 123384140 837073571 274982154 994754922 820245419 877536373 660640680 911680671 624200082 884600653 307346861 883465666 152607147 812892647 660267163 873197846 3223420 303805829 310021941 515788399 572957704 850757682 757414503 937194347 951989078 958602145 508921163 700139510 227944615 457910731 362392045 590655470 428295343 776898604 880255212 962959159 203586015 763545654 872440116 949944070 910224923 971177622 558382230 754760098 744091469 903031587 277685762 719718186 960626702 962280909 181602904 555301551 1350294 273826680 167829050 584115770 774444427 967261999 731664588 805366189 242284992 322170387 952125625 953391527 729657371 854370946 772786483 946540481 402798292 995175204 168158557 280294964 3188371 864705705 73860889 955736073 607988016 905806257 112497427 137099589 826943926 923006716 893732350 991607659 814713030 887485210 285697602 567578124 348016406 953555231 786259024 819524738 557221869 790208081 524812738 567221788 104730875 855470083 759643917 807946492 441437107 503768841 291178039 979362054 104740322 427328311 755060939 896697620 50340319 658800166 673786731 731264402 32383430 442304145 484284131 756444078 635619249 658687650 13703533 272548286 633697541 677148609 727439873 798214755 560932432 909595826 240293377 265346138 348262264 716746632 800743719 846196494 671322265 887191835 650512054 998817297 677084265 813258787 22775282 287465469 472846313 507896108 696779427 971176638 130114991 207271022 961845241 989261860 217902460 966841425 944296021 952757070 584804478 698514725 475384276 982654492 579858592 862022269 356161906 921660833 881649045 917085436 585629068 667684620 952211580 991728537 1861313 173554065 881864566 977611598 398809840 510612959 259635054 463824466 398725233 749625447 605494885 626854684 795245927 943279231 680480794 808196937 365847404 662162788 576517577 623905481 557263650 970339973 449029176 533607601 633086656 846094043 939561583 976139004 504380096 723913250 410777605 731170082 736436462 898969687 31089474 314318839 948493746 981016042 459825282 558668737 377664700 535144858 291489672 476992038 178671415 318783628 566638771 973140771 684430049 796998457 761374986 853073837 510639118 681902758 544633483 556709998 277698719 626974900 294295166 663490528 112879446 783362739 80900626 484055282 825330872 970219003 38459433 377788292 961313689 986075280 569638570 719510478 161923852 543092966 249595124 331917958 291351474 948956141 971826823 983660154 49764375 690853711 425538561 621630263 261034717 913719174 77695307 558062697 766281546 954172071 605084586 648305120 840963085 917942819 942824157 953646185 870194166 893140668 643694276 677255877 870070369 998350150 270005529 782931982 306015464 742461487 118052020 618072910 965080866 969100551 68037232 793414173 206174247 432456054 683382015 996815701 352841592 736257505 850083485 948528821 275762536 663043872 299200279 707580625 698472092 965494429 241279085 449802803 565468803 676581396 724826251 991774161 815521765 950958890 201315023 310451552 192906590 897773996 370531456 397422153 417763974 662816623 233624891 735994637 702276471 956363290 236722836 449049404 397816528 859857871 855432268 934790019 195672460 748054460 915001029 923843067 686139090 781231997 736013768 962105531 474136914 902024767 485315609 547624193 158106065 594157475 569976072 620680425 439189745 526855719 620945109 645337893 613843428 703804424 515484557 980648627 615122063 961185056 567013172 661589884 470448589 756155807 753743552 766519747 472366446 493870744 519147594 663500446 501540180 512980842 650956767 887485817 272053075 385537870 647402583 895164983 488710650 808615511 807963565 916336286 844835007 994439949 520334053 554889991 878616327 894623010 670553664 682069403 443430963 509230625 220809698 722896151 221228837 859871905 724355396 728103933 87138208 580859762 535205624 868519537 593566046 904132630 16838682 676809195 833584016 993525096 770463479 881626888 888865592 940821549 272920214 364142846 424381767 745657160 668511057 947939152 879511380 891815786 134531452 549297716 564093316 897520998 753793773 963207149 868549705 954667052 417867106 972448149 104910605 440982922 41103709 425151759 288245685 501847950 734540273 846898907 420855669 846570834 274743347 476017890 883844919 959480289 438024896 675005858 192574578 725190480 879923159 917373977 199036161 299458384 234241907 437009680 426268461 860078282 424246542 899683029 845787231 970687684 958413032 964336817 186224778 632089289 833015763 833859096 383660925 649258112 815503836 885794462 338923726 648606522 575633760 674728998 275076187 934230990 543278715 984433293 243414608 604204735 774924799 981731121 470588470 694849956 586454927 892509414 939537662 956743616 439872799 948292459 316420967 410040936 317493291 687009903 61253111 62596179 856733835 980407788 753283781 927817088 996938799 999096414 522009006 879459660 48007351 95597221 889827713 893731463 651493555 781544474 886057555 981968504 212699899 498991394 865311649 907018030 252369595 649920014 780219602 864664730 222021242 719080443 295467107 729567011 409865987 932420754 206703504 607177477 84070056 572933370 716221734 859839863 751088794 770263463 58960792 684705448 248111840 258951316 362854147 794131636 136649548 434564294 770309308 809308191 398974931 584709420 911268884 939709340 746932918 906320623 332836537 649933681 644623839 924424886 800827147 806906856 221830313 973056689 847638276 904449000 284790287 903913544 233395784 259062996 769824100 869999059 779071642 843326886 605542855 817737548 304295053 988485310 75033718 342397056 46324276 886738698 178515946 857314691 713697116 793868009 838495972 957388404 429631269 562536489 410744567 860611048 585504507 702115642 79067219 154536918 662462612 804185425 417277100 831579768 887543247 895868710 926379403 979617748 725011785 769241937 203686678 733054970 517540822 651353621 943627662 999010111 360263304 994614967 28752690 434840014 88617694 781519719 641732065 989082768 972665045 982608773 913026376 933212370 48895934 248636299 733358987 979120241 695160990 752463304 455257091 549008904 774039317 852684996 528236615 847777978 446256984 663660678 635348769 893882166 136653679 571750128 511031510 549904301 915911694 990070885 308448804 314373466 593473889 751188133 859282729 940894176 866691429 878061288 524404547 948581386 910117214 934500861 230280436 991279111 427424643 812270662 280200630 599516871 287212123 806608854 566746815 662198572 707181563 881623216 519021977 823741457 357907718 626625604 407926155 928304117 796262685 830704392 767245434 894467321 513112165 560189967 759397630 966769055 605315178 934479010 134321014 790952309 684491259 709722312 888017390 969784855 83504042 184813573 969388359 991165495 446813369 651003993 274956013 500876192 967521826 996876832 388463414 622625679 687222678 892094032 509999408 726341113 601078636 648673219 389614255 660789918 118408612 740487452 101768890 662079274 321270141 935397648 602989094 937545265 95584303 917963327 760356941 865147106 415182212 474040938 280135241 567368212 910609770 951717067 706317681 918702405 838097354 844573827 186089981 300574084 609720486 805788733 84449491 367899306 747698284 959288630 372759470 396320607 592114880 888984091 865437568 957476942 539251993 653515656 810737600 896483355 87029676 684129497 869583936 938878812 355915736 924816267 597699347 924154621 97662514 214905126 333878097 830113397 878904763 968050384 874929670 987420005 304292276 637967780 725096067 862599158 75962523 985432511 499207616 990491651 451677746 988915397 952460462 991213958 862804368 992319489 699118213 811352699 424804495 658172844 763405184 784595360 831546471 964872723 675804310 749442895 543065618 971450388 165716040 697877433 39416201 770331940 561118967 590500256 521978519 561928881 321402576 424558130 563537048 966156963 26715551 657090744 131579781 987269203 169634408 968636140 669643593 844659264 604539800 717710645 302968947 528916657 905580757 968934901 795040173 967419511 528267175 600534223 783970805 892876358 50313348 157172224 869885744 878285533 409284098 882033343 855336329 955730644 24663053 640066749 717920936 907525742 803819250 946729532 204597294 536736109 279648435 323120552 597966323 696585185 76937244 714967803 333836088 765403147 505398433 692719680 716346248 754815987 895243938 990566704 55796439 437532185 975213896 997475227 341152670 850654372 102981117 584964695 688793552 808888354 432707034 714089006 864759529 943452415 960107497 990226798 213391651 680929310 927713128 986835713 757479772 940435760 954488119 974681660 342895666 706170843 719160347 867685975 367622484 423856678 76410410 858784368 543428297 784352578 577344247 755232781 549355655 579949809 668772453 849853100 60737181 190063661 271501884 477822304 390840163 390974896 827116641 869437064 854983432 933808479 748438130 883788697 48743001 902219981 101695242 312333025 920479945 974046339 13060455 210483395 532770713 949936348 466657005 919579345 295157745 929420474 583446137 591628191 326163170 845072521 699327238 912643748 644822863 827431409 347548395 968673959 32344975 228079489 159309403 542506659 593203687 750834770 591206312 748082329 254817842 318965190 466533439 785115145 623248037 878897573 225261704 936771037 260711980 529038749 38685410 170641749 449310861 757990045 829955747 990889819 626690178 901340751 155347293 216230799 694351313 922067403 166426707 618883314 113410330 218950052 613753977 613978790 277605834 769812573 492553030 970632706 816277548 993415570 7590322 579261466 1596871 955217937 880705459 911715162 579205015 627214021 942473493 974542851 231395965 541271491 623284461 920323177 389297660 792392536 728602391 951499079 623451089 980514923 316701146 864231762 832235191 870006623 279093099 795696105 962431311 974304700 137111087 432715512 266072655 749505435 702483686 817737655 394902969 497309152 516542277 666937867 885698127 897792302 979877615 989690775 623369311 920863596 590007060 651482390 876406512 934193085 265216813 424121569 791049706 982134469 562293226 621036777 293998741 428012919 421252883 728193462 660227753 879508549 304769889 816279166 4722915 75433169 328640338 710588194 577265430 707146507 172426493 394917565 629522689 727122576 375311109 940377307 503948488 548473129 584997933 802838496 804009233 826465339 418668757 674091018 309370748 500514587 485349639 511038994 569516821 708132529 118195187 350608299 6141860 78508597 457995951 927138596 663063943 929384822 309059863 809416055 761146534 995753646 443998024 740690236 815709627 989122342 809503247 884754314 87982767 827103741 940705991 996814475 318564471 983402162 857451018 910830207 38228876 645267204 951503174 956387583 659951383 713362915 280338453 353213879 274347435 838632843 504719407 835878949 323956180 753600623 47012436 593354186 907432140 975671278 84088165 947881632 32861544 839351439 948988012 991685705 568033172 569584388 976792410 981763454 492472305 766412228 108513864 266660491 477213955 806215950 881483364 894369070 539857277 662459365 488884263 812444672 123562898 139037169 202328389 859325396 320461100 444588502 256502896 578941231 693282644 935137418 742409188 920364887 104091116 115063282 633566981 719693504 41457546 522114602 650180049 920544960 51174998 730972159 374239276 773470807 813563241 844943669 625141673 843850590 361784616 758265044 584108886 846119356 47409372 134159253 557945808 648856445 273547546 662655834 345336757 985373525 645966966 756381104 788425631 915808263 942157836 959885729 599130282 889761064 934778840 952224814 813357277 960702847 338425969 543776474 630625474 996042726 286694972 593514175 73020039 414689038 42443354 552714745 810536342 992184024 399652539 853561004 511982083 588223851 65439987 581309081 648971828 838284781 527147457 881792071 335957838 819339052 586468345 760953396 156446418 865717189 645351600 691268957 249965969 295062343 839251999 859378288 666489676 868091931 316292955 533680745 995806598 999710829 587938968 924079671 861498466 872967752 950818507 955047530 491808362 652308474 210824170 678326753 855963600 997030620 476540705 703055318 934165827 973755934 104086778 477118684 886832287 979553924 469291387 873636590 91436359 221931465 660397350 951853559 66043132 488067517 182134443 689148647 534771605 722007382 688154711 968018078 616626987 783901814 130717156 192631682 819093462 882710907 439009009 869612223 505316498 767514758 932162038 978695128 530840223 852088552 623109882 782735291 950931528 962860879 875854540 962872985 692400931 940826992 268020897 673920061 408503079 783187855 364685003 919109736 980168603 997926524 572573145 843017852 109706714 150365669 777116968 832622999 736801376 941267039 857883204 941841208 349576871 506685931 379541870 644917907 837427847 916981742 577722964 712952809 613272663 855788555 997233501 999353903 553608935 603351720 125775302 938221184 35261303 107917376 233683377 323024221 322677545 567780456 183709212 279474877 195003963 307794740 753274050 829281820 754458733 789785430 965067083 967561705 883234108 912096496 501441130 970405246 146788925 612369647 924777374 954715859 284936334 809016003 246694481 978804078 122761696 421114637 903394651 960428710 272691563 549357590 439647016 502553547 167648598 182808084 939033629 951071037 270513181 550986111 356852939 922855668 311441689 619632228 249094645 293424771 895279183 901654320 326741742 764697198 620502304 844962613 974306864 991770498 970311773 985733512 992133056 995455422 197634698 659607194 805376722 836366083 637631852 839600366 304766579 652598662 596932058 976563951 112698638 583723850 468486868 545242229 819795937 982738460 146397814 628835884 319936097 596995807 86917293 112252331 31275166 987258681 353403106 632772194 675648656 690593880 404741614 735017807 743915947 885129983 285068923 956812524 230903807 912046479 212416155 414363162 255086732 797761220 796477722 804464143 856477485 922417855 927483680 934676024 937785930 961812233 335504350 430440462 531576300 578172708 848890443 986484554 343394980 422000880 945686720 969562181 302509740 820654722 614630744 960663898 862150500 890971955 929632846 977234007 950163616 952881172 112041680 228399906 37687302 138132291 388648285 908627754 611969607 816839631 15288417 336832918 137413108 650785096 505487284 817751729 497570289 552329953 480227763 509494050 503557833 919046893 962427758 970126615 817943392 946854836 593109657 925480602 60385667 832984968 900969008 919593354 461177284 971663075 132216716 456370339 755807471 893362104 77741753 509588402 511732273 758170895 886729274 925962044 912469904 942639991 121009063 992356115 800578696 960673104 588801079 702225856 189291554 270694049 149388849 979096107 496423767 963818930 870991241 982322362 88821829 238733559 155284072 675467510 960727763 998113386 638078425 950301004 240656517 501920712 133271676 927736073 235839095 262375100 513896619 785612414 134246970 801517490 652906194 915540077 56953696 506451572 188759680 410860891 308642313 318928128 488131867 667972631 913487359 932114728 85798370 855675719 700560404 767419119 644313054 924329181 342217253 499232963 158961650 552632070 922934441 948369393 608646513 721879624 86253609 400075620 134851848 226283950 739386288 752659426 494350845 887937341 686185487 891256695 258755251 993490217 239751597 927623907 603486943 855741636 952902136 987001712 585456309 950605600 934144800 944784517 217711395 354953146 820482643 906654088 518133024 950022239 897130487 952577204 65287245 290514560 892400615 956832868 524169108 940041652 671994226 780256657 969796505 970131468 452693179 791492568 849099879 988848033 893256816 975759867 299478271 729311236 913724464 980475319 226318834 468261234 689526479 733292435 697398624 838379918 777408220 969374641 302468639 691922925 310613826 560844441 405066476 918786517 400179954 597272858 599994676 802136806 660418502 990537505 107252 14333399 452204850 562833310 854947317 992754461 392764380 664406584 448028062 732438169 407335158 948564340 967727840 987391356 411780404 688593668 243865359 436417530 228894054 339202936 788510981 902282772 692234760 938792433 96947965 345635321 133723090 588266122 172733926 335070472 495512562 613468961 778103143 854821485 330916520 815372659 343980631 787249679 726963854 919859153 205692656 221018404 256418583 757598503 114847409 937740232 448378278 771316229 650052492 828467694 817283932 855512492 937535670 967773774 518308343 683447910 157686653 973915271 959345695 975029031 295339830 793351766 976320362 990256920 136845803 236091407 55724211 705226933 286423454 315056488 194830861 727777363 150165822 729987436 258773403 577734840 775633251 787516527 877465677 966283571 480241324 769660263 176155493 384725841 631942910 946861791 959888360 966242451 693392471 736748252 858934122 922038461 62735478 238802826 144743564 922176235 182731405 844928329 722289553 753283925 381294176 456558649 601437014 974436620 395376001 639811157 453923699 735139364 475573346 626216309 59003992 108862145 199198332 772066899 968523662 982099377 384618401 462872567 280441633 317157717 266254765 399294592 426658350 863849159 33763216 351471824 540226173 884948847 299188416 681773667 93633306 958205125 80004270 655981844 185950437 996579356 162927841 277356161 861703640 941996923 153480005 169825437 285676345 667100873 955205727 956214923 433369242 759595650 491634461 652605564 16860826 436074877 294744678 895331633 726495110 740498282 549159457 889764817 326459338 530438732 56773894 653730521 995835957 996726306 285218866 660447116 128286872 335901707 198508780 598830899 738304571 875904829 494935129 919916721 186206190 840203561 750057657 848752509 884233966 908064108 334262300 889264993 884938491 905785410 261734182 504212432 239981856 570849150 931734202 966103611 446361225 826036430 790865045 907511771 92083944 198017515 543366304 773577057 652123974 975480328 95276059 636286213 977580785 990512313 542058222 883853086 538430042 798731594 973635022 996219236 484541456 897429175 288863218 684671135 151233048 859295470 858554343 888462233 463380032 635501890 873022532 987523206 701807252 988976260 143353682 326450172 871814674 966726461 840735550 851375670 77917966 515530031 756150426 915493469 538263450 776905800 62392012 130117748 888499424 941537118 349195862 416807021 381497279 753222686 536989446 886649840 18817170 184584287 389744856 526495608 196390417 325961762 867970595 956534404 629939195 913896203 553965923 823878164 725523378 736908521 646385127 693034685 475259647 595095211 451625609 965258018 343951587 562260618 307976786 958005501 898308771 985166353 956366942 993670883 601107779 606972514 995639717 997610762 983192254 983586055 522684663 708200796 856068401 880719392 932183193 970353479 874645765 884935979 378266867 741657603 734787458 907589984 680233541 958906512 507256418 977827286 276610931 881043018 239684694 870878950 613159724 785538219 666296803 957422301 706366676 784569679 279663394 432793128 539307962 655389475 287352185 484836402 355778851 681564839 255308368 284083279 324052396 765197718 912941972 913700847 709048603 948654696 183618292 496882597 343023741 523764062 228201907 986653097 787977359 972905915 979866208 986426470 997459234 997711880 437041183 675581511 88333043 693403760 614377050 835518660 156737622 673962410 724579505 725936227 492815421 913255284 677150482 682647556 736179786 747289847 578995365 791752604 379620677 549878062 277448280 880402057 418053831 576276609 803652879 857542231 624540811 942850065 38294903 61988374 502646235 693952922 330073620 493111139 235599345 332123582 840947891 882516932 186534450 522294276 310120877 724915320 402356061 693834314 630372225 643776087 804294391 820925768 887248512 941226324 966225160 967016289 992669386 998397904 202997518 452087473 229012325 979212057 190725013 910144761 944819692 946787858 34213506 640089070 742643502 821635468 444475038 546740683 604359817 748401128 653142769 982538580 571451968 605074115 355819913 910896345 295483109 922985691 184236054 931927663 649141611 925203321 501888131 812453768 348712986 602303572 962009316 972747265 745689189 908585231 691920684 939945366 763035862 985369189 18076864 183749562 82098051 820936278 337174710 549062950 559513466 730386529 169192824 643786811 366125682 641695940 770164928 839947744 84773437 743264594 857391897 958805391 784641724 882471570 644624690 725503629 686448123 864903564 710138608 972149177 213829898 684190289 527048464 760756300 67134468 69546590 144655876 792596049 542508196 875495796 679750579 771719633 184892403 860805885 202997916 248544340 69200771 243133814 890896189 909377481 947991375 971148142 612214848 742021500 574339446 894342941 302450150 791024854 463405651 746765346 542412529 841284625 352745292 971964262 821038646 998703897 651033497 876122943 501535149 709143343 958305532 981801095 339471004 841553521 952886786 997314154 160812208 516322376 14896124 321338230 621175903 833317427 600818033 941916764 842041053 991465877 832964176 908032009 858046207 914823076 133268801 628712032 347633225 572707022 781136242 984412308 642912213 842637287 669849934 836962814 498880630 767517840 21968729 191949713 971898290 995333262 425039756 762100060 159425351 677266263 599895003 935299289 66875928 250155397 905500619 941603581 436128747 871008971 2879269 828585947 418027406 504961798 98458155 353271865 832410107 924252547 401195289 640430747 197097737 450232773 858372257 876625221 370883125 733894019 98733003 684372552 844361319 952323353 657714278 833748654 945121132 987631214 489826197 540921660 99353103 826203906 170350820 791895642 193020770 541871503 520086863 833393283 903861776 965634641 225453584 818207722 246149479 506466256 278187531 469618154 399322942 658056431 194679022 804070913 780537202 990660097 844996496 963465528 213168674 707108615 258549788 768979700 691968967 791527493 339266233 661224229 144128518 767164319 428597766 789471070 668571079 927656670 847376453 897977651 857681317 945130170 121919681 139979427 753369355 963384804 74777305 249205926 201041668 602155513 290994263 802878030 540467951 573827626 687822555 886937779 24905189 161236848 925452293 981731301 780206988 892638486 387427222 742983886 792062356 967240333 524772003 857242325 656119953 894708703 28204859 286760916 691791725 881017296 715033296 816365696 643865525 808936639 421211533 675452006 18197242 726262630 921622964 930739752 228620020 953741670 764458367 787694219 708182952 934705009 475679070 612797659 273974641 291123445 715281504 920409416 776804721 979507673 130132538 151460379 769590003 821255692 92092661 453367604 554931539 933774040 688156216 777554636 208529755 453515197 149949787 363563229 558937241 708313568 142680676 423652721 893937132 971494789 295455692 650843877 56708495 242058640 164216155 570654663 156219816 225261647 327732021 520704234 899414234 952703498 353305618 834886348 159718475 943379857 263569576 279860814 333763833 957505111 626487659 730550650 332727265 677377455 640620095 785659777 167348208 700264726 630296863 997919718 54430123 692381082 494465618 811016166 444811184 770437141 758453238 836054526 926499332 946752525 645734875 885941251 574387713 803431204 952586486 991142049 304932956 497694701 247926057 332351666 475708532 640748598 929906705 960279382 871991189 960304473 116255771 877575073 234276121 405836308 313710383 664718559 626879941 878490839 876884052 902418014 488483274 765164248 842377721 997370961 413297402 623902695 150478005 721623735 816254757 875586426 696187018 906646267 557131336 852605507 374025446 656621837 649270937 792755447 597852714 724976054 93106025 821604611 366412788 386734939 79082224 753613118 910987737 971855400 496239807 931278651 343907734 668110080 841314693 985461416 907504366 972657539 51788273 918086251 620404796 815327527 656958264 775820359 545875896 992839072 914867214 964334559 703104238 824426586 306124738 933167064 357813164 704478712 173704900 299524514 416420339 421029471 42602580 981186221 894512810 921938859 289180501 824541750 829859412 840881641 286329135 298532357 219908083 489950442 428436772 465660870 736204311 881159867 172705964 828681167 210444619 587765734 701747833 960289916 110730122 498114574 341396202 943751098 194072141 617893009 674582753 911657518 830501406 923157974 642315785 801687014 679075242 968050245 983844442 997132957 291961343 716223958 855201440 976474406 372031188 888576530 942967052 944792188 404733538 876645744 790027480 793831460 533753771 611848542 316699429 334710736 282886500 942761128 335596556 339610143 954958613 992880263 860469073 902685503 514806838 843057604 488452747 734601405 601198839 781142116 196889386 449810773 939624885 961328025 712114042 922299605 961971388 973354817 50005530 673547810 931780989 972095129 893415131 905601696 498937910 824921986 545023447 569752786 587565998 808438575 995936182 999012992 478773701 561925904 67328708 795933233 803602312 937442451 658131716 741723130 516577182 862353400 364224514 776281245 562823353 667443658 199919840 437708689 992901675 994716559 503185826 865519740 928529311 996452029 174268090 262619758 615747103 940173330 249521763 797425152 112646267 795634082 596017706 770076855 749965465 872870048 698090107 908066488 342137343 956454689 944386074 982925128 950877541 995306550 266710524 387264490 898092884 955336812 772727180 952566375 527915766 559495677 558027265 834794175 57892152 560792245 654350122 811503765 863609127 900014949 200062570 221077980 269467097 610464142 857798431 990019566 659063998 842852590 933763129 944416055 270658349 917906151 410513426 933934828 970073538 994766351 497041356 964359213 416672593 897140042 944677858 969166666 219221175 256585173 822485329 891662831 755063608 893673017 276603601 717384274 294345694 482797071 34493852 957582270 400873628 625808560 589210613 921487135 87050570 704121873 492323489 990481157 720456612 986417999 652230696 933822644 846625039 946817288 456117582 900609941 350380861 937160506 665893951 684641143 486512332 698417678 340668436 801228013 5806398 877201717 523215544 678986879 779314137 842296535 141457466 404534918 313692199 485134253 693940777 703210373 634344326 772155945 520538590 929848671 183990875 310716174 756135960 778776375 977013164 981985172 107696610 437301630 59658073 169712297 313144786 984504451 672690210 854464663 984657458 995857017 572045026 923471419 464836654 871969314 908290373 932544061 112283280 752971220 280359257 537996965 662364200 886361538 844834805 916859294 764930285 973050730 727724082 899635531 4112050 479698702 862022259 976475424 601024013 612285566 219064798 975444070 832805404 991546053 127115432 566238639 118781591 546452256 788326895 814546316 657821943 737796818 714759596 913197249 457353009 610041254 121164777 408239132 342008835 886754398 321898212 647435400 760243117 827732495 324806238 430135519 745471497 973807310 746663326 889694524 911553729 919534206 370282891 413491784 307484619 328561595 807548435 852445348 639021222 837901712 288006967 506187759 768935081 828148706 948487880 957458189 786563805 969213494 36655499 846097804 618712490 746292019 776381771 810401386 905338099 929557481 242747904 849056672 274898784 889775683 141756261 820036603 106727937 609670310 887518508 921860956 243789199 269281660 856794291 956436846 269626192 994864270 196371595 400657426 74861722 741444962 57689174 796668272 170125144 928531220 94433388 365900554 142161434 406401758 668423328 687531141 552381493 556846844 34970007 44661388 636056150 941263369 242921202 435792848 364718244 826546710 202509628 621439080 773209282 901779665 86002617 870771538 871824829 900461260 190851239 361996078 757837084 768512067 884835068 968332020 525209429 800471829 819170770 967393057 659426649 700178570 737678691 890775572 3857935 119322934 896242428 950405989 966848043 975399453 229948862 371144177 871062677 893534094 486966908 712346658 314998345 760140571 933134209 994765640 315047038 918963337 559654636 680189456 807158452 921302231 376793430 610209710 766051080 849959928 366682771 402855211 47643018 241866932 766899434 966174734 273541780 663154789 936233956 976618528 287592058 978609519 386402799 475908207 852035185 969297848 416462248 495728772 381502295 521653957 582351108 977028903 676286547 876762868 819292367 906217838 454370261 861555040 781419962 902055636 672047911 725028042 984940515 989308029 16060468 151826996 472530888 551472150 959589741 960514557 978612709 981835493 114443894 997907688 826930297 865918160 527827228 606291914 632328754 788266527 320014753 705108099 694268319 855063407 592947236 795161144 172032904 338394180 218289646 447123581 531693830 813926795 56292068 490408386 754507110 784205701 450665897 994392565 526959652 844951559 197735225 765530774 765089326 916816681 656725280 764594228 229252451 887465214 190060813 833485492 652242370 928412688 685971326 978594707 244337799 554859906 912477569 982957477 259878214 585837857 679246711 781227321 228788193 273718418 480284798 818867013 459357443 765101144 313247107 810384305 404638117 996944143 968308474 992429846 609036067 928976552 125449917 741128300 900285434 959762737 440328496 478739680 124881927 785024216 39335448 419299403 15531383 196462409 917083991 925904820 64739657 625979826 997520776 999863851 684608648 813463369 457753098 939361722 591928908 973699581 725235440 919966935 674290784 975218535 23492637 187657175 699000346 950265923 940318817 988274317 393785103 771624755 614998988 668611527 698552858 982456039 842957761 934448971 711865971 909139243 933210165 985349178 980270469 989589990 212928019 383108553 658349328 683941687 854356226 972293482 157119037 248529966 525652648 579811435 266057719 612154323 8207927 390550136 850658535 890123669 379448258 835711571 79329787 495168969 935071833 960646245 493330934 951787905 373767210 842689777 801934785 803028319 314050616 330558659 346383790 436506262 460926286 534677179 295305140 784313578 387864694 417601659 670397185 723829004 215147848 710669748 528154937 967129547 980386098 997496296 495750273 694223788 308217795 459120352 462639587 748469679 203893871 813489430 883871881 912697622 436178236 816014118 485738786 569787173 757940473 825835221 180187282 372075372 715274086 796552134 66372142 588777209 381156057 548089034 700879597 920650812 323945974 915764030 649049386 974926046 164311292 618379510 42562829 414818632 741835659 977873587 555375316 697793036 752739538 856954256 620600687 642331282 997626724 999506024 308013846 633826540 269825211 730032904 915851285 917112289 735326445 941134035 557695599 990023294 71822322 441421899 992580042 998737089 471507557 748205928 484430047 782831103 401594598 959388941 278550782 874142219 86996732 94458705 854845051 913376462 333914109 452379629 972240389 976284096 76951002 977183704 914988457 959030159 892542262 977183036 934210155 974691300 914669250 958181832 707576616 835162995 266194123 406840692 317141531 821896525 116149818 525986068 783851789 915009824 438740967 937026398 324121933 547139362 43546378 827165988 792067440 883295552 433909117 654275398 261161534 490318074 633164012 821749133 949965613 998627232 155219964 503010066 25830152 558211270 851902538 941947204 219643299 802084972 602541228 751678574 660121523 706828345 552064070 725810894 705787192 990371298 200656824 612182964 923730488 963569729 671927528 987183037 582287461 674835318 242912674 526754165 217139797 720727368 627360217 713326336 393178417 476035920 97290652 152149729 721655489 932093212 882519905 975266286 57144944 525792827 422503297 807955459 129421477 152265473 729873926 788399530 724369687 787750486 59395137 488390498 764015809 868672181 458412824 661332355 484596363 515673115 289803560 427079969 52270589 760019242 451675748 936326853 642001477 645358170 738169284 968902146 504140198 782443640 243258173 509147003 114882765 418794971 578239881 600561702 456828778 822256481 997656156 999286208 235178390 253657334 498241036 904088054 919423847 945588303 34012333 84687824 751860028 783840347 854480832 856116126 886435923 985203879 1172509 557304289 350170748 414990958 264907506 906474497 294738839 957611275 497101472 874477254 402612237 536696977 690645949 893691540 780113709 977200505 475643649 857058853 770728865 905872913 223036307 257912578 266526436 393265987 341755958 604670955 127923730 263412286 228949827 458597243 317216461 499768887 278955831 954117384 971839164 989277043 209785848 874129684 575735967 955403613 131178562 933599228 426008999 886105484 79688786 98871810 98853114 240413548 398719560 714925903 959695931 973686991 650668245 796242327 593606074 895643109 419951470 965398134 667389181 815068098 106981550 716079305 753654837 796189728 660505044 766930599 78920313 789418889 378165887 599545733 788038434 991062769 729079306 973522482 421565809 669193611 779612444 816483148 955191976 976981225 735121611 943022570 480779588 553956142 703349333 923909089 659367388 679961271 872443224 887234337 806700080 842322137 199671361 918442934 741508797 955313858 494528044 972805861 307600986 920432728 581225979 968720298 40053758 542061736 235133965 302208445 467961224 957450853 547371824 786816358 409546572 735082989 638034748 872678982 57155793 193824772 166399851 174020086 972697909 984754768 891368571 902629852 273909702 656426572 134287547 798237458 854367007 855840354 978174561 998422780 18013763 86883220 179256729 374096075 77731471 870478221 164228303 714318739 321964639 537871848 418443377 982024464 537713404 578477161 555331202 991573879 24159994 466933644 187882060 783995492 778963560 779414489 378489315 926467252 224851956 696872781 269031993 337270305 643077483 693791580 801095426 945998359 949230366 959838623 918715416 967909553 908166831 968009990 60355106 601473531 899044342 980576675 823051758 887636443 745203113 956029186 278176460 304507491 228922213 459776225 356050204 836363662 3516571 207561120 825268151 996816529 740480890 977120959 773253907 860943229 999745172 999801839 55865263 645563436 849798066 978141763 110260705 532247326 361622485 443411127 483757181 994169210 923320686 992698544 607384871 650844557 513098585 977449175 35522764 875084929 882170657 917503539 702690886 847603714 841386834 855154703 69960027 514060345 589619541 614037931 670084995 805165613 329414116 891912781 792918850 941629988 205785960 734429534 866389743 995278881 534037513 740068541 790336341 979519605 481480973 507232188 323642572 634800389 691667570 824903252 738156209 949105960 609832058 613041721 910010923 965938944 90842224 601600644 161746270 248772109 30861098 628926433 417743766 861771366 629168881 862949259 559635101 620421424 616219801 783875862 149819178 700580495 20916833 463607409 610172120 723682805 848324618 923451343 287769363 977897552 221048531 764946355 310406481 507666173 308574006 344164983 531052254 721018495 465019275 777003425 795090547 933747890 335234846 931421537 855691847 894549063 672310153 730885912 975860800 977314497 243754374 792481528 480100628 497579042 84232844 369037922 966711794 986162002 339243822 608896606 109300639 169910096 552592042 798826544 223516211 865493728 168101175 571572586 180732454 935289028 229849878 964444257 935343220 961421188 387159243 581734363 236122273 395013174 372343507 860657268 690210178 919979369 965407302 995445060 69105412 956035896 774458460 933461581 294911540 908145966 840864671 971662938 958298656 982342101 54741080 307575495 4784974 473665717 853961738 890528562 261433227 891130447 632123473 891384763 939075525 952249640 452996085 721552409 375151942 556535409 812276541 878760553 954458250 959930834 800498423 820347789 174780022 769097708 244277471 321181304 618479132 723547722 908388852 944915061 903452070 974417269 505818190 592295862 461769739 731808054 333819787 809996975 946504775 999857113 455810161 775682255 144136978 960201309 215336322 608411292 129877092 489693778 365105823 645595283 874164863 925207387 135805388 828143874 419274634 808631313 715102058 749609946 668569466 750437807 96830221 630619700 97423918 522915510 915064835 996122000 32781813 376500707 741906705 782313913 330283885 567385024 947953233 999308926 721719869 790887434 102771118 354740869 110419997 942846308 412208482 541012822 311902144 951835768 560335160 775610759 319114222 887168353 67823021 536200325 581919970 629324081 105109093 156716564 593847664 619156602 410312160 786303168 669106741 783639403 409378485 978501908 148570819 471231078 350110505 734765965 681230564 838845427 643924219 954204853 782176481 830095527 48823849 736861007 736255232 924394254 6194862 249107000 347695133 840299224 886475791 936237294 974502958 995114940 754018644 963283608 822990729 960882235 707434966 996949986 839077844 982342595 388045003 681622777 71061128 115102500 416945800 428803962 530526841 785727646 902240272 949292033 374529100 483232375 569721603 958240639 324593618 928228068 997684532 999158155 610263989 877636910 118574107 122601574 953437389 962021249 315693463 830479198 991521686 993199272 673910936 678157451 258315713 364433914 855409224 953553824 350825107 546490109 715841809 905700976 697816350 997093595 391262896 678434184 944843422 971972856 327292329 613603520 795572478 861175486 97803858 100387323 925338296 938016986 577129748 704878416 500512215 759350233 184371037 943221473 128527221 773361114 272993601 661478370 286439800 738628536 719831011 750849838 188518627 481390444 612845128 664279288 497458696 881067841 140839737 426485458 871822917 960926898 187076483 393083083 887284052 967950965 542124214 706745032 107176753 188764935 164078416 786970465 751031761 960803538 870619628 906658524 683822286 761583284 810825030 818728466 930282053 992415799 960553015 974160420 321346793 495719037 938690200 988604791 358744024 470210469 538533215 630533109 978301429 987987543 858911123 867482621 10025826 174431619 577234249 767630247 503154368 598176253 147520521 561997962 12663746 734043329 26921185 124846894 167279850 315127603 861875655 899143466 605497803 928410130 473761567 729435581 610940699 829011587 298225533 587606905 423376722 866925684 372322436 544658344 28198759 894789415 624072425 740440166 817571814 873903305 735444368 766578039 27043126 744168475 616993138 917683028 814193189 985868046 198326475 701788000 639904318 654944783 334500015 532650901 641768129 818464643 176247454 446117355 189188197 601863606 842335636 844436873 445555222 456391149 322772022 774386385 38342380 422373627 77513335 583164178 122230806 254861976 335821580 702059656 164634829 477462696 736407902 992855011 127926827 735738048 527588537 576805376 865479845 914106173 842278642 847964139 899780254 972945731 615558143 686833982 701815375 748411204 414975223 961402511 957177801 979908845 983287415 985066992 479739594 914286876 739529338 994417334 244067707 951276183 594544222 924679263 5790124 865697641 385094105 470621725 976126472 979494484 255628151 534396815 845607037 882654876 17826628 856574104 648917093 822926258 537617754 558251053 360764594 409126279 688092366 968119675 114158269 298703078 820497139 823580358 162689111 624396561 349288726 510443621 121767841 720821149 681592713 955370514 934140648 980846118 222124419 634306580 912077995 948226160 271984729 507600662 215758288 701278724 935950170 939767811 143506429 276977865 660795069 764657703 68909751 127442073 613523507 807641595 872599603 979510245 190922609 434444975 862296533 952604881 306349752 394446691 535314155 630680363 564670999 754811299 484665231 785753962 838102195 947611627 658016737 900334511 840188017 932372215 741225220 874930751 484998847 792405901 53947033 533768209 1345509 711410266 156248601 510638758 732852801 852752083 983161567 990193765 720896313 730728814 662831277 707330297 38584074 845624498 444287423 833266295 367950225 731828076 549507777 641089664 793054863 988869747 842790259 906327550 34624255 905969349 977877898 999004268 800486766 920116933 329921321 649543871 112418818 604054092 346426185 776664600 374971748 457712154 967533611 970577196 158005199 694199660 950270935 981773038 882522174 963062842 183655560 926826405 652838899 731903815 337794000 953278554 764438553 807578319 212068307 902143816 650958712 797296275 13568843 816790158 551885447 917126953 652996080 908701726 489587285 858728762 463060843 464877678 972143203 982665527 270568906 360158344 684942361 941005062 769599463 921987350 750666705 890012918 908767534 934204339 545156116 560307081 933048789 948885259 223789320 575844503 862322611 926988919 938548529 999135412 413638293 614581538 517508509 670393556 249204836 519592636 302684072 781799284 930041604 947414525 536863862 825873523 706572057 974948138 963445605 986012767 119191510 207452529 497432482 504081576 31180114 518400025 154436987 680218763 312218689 664817054 258772968 956896094 642095005 763802226 893585501 908813128 23118379 483713659 842655453 844518875 836542625 859078865 813496201 955133610 260863638 728264757 687921919 963568440 306365311 850367702 133538040 597230282 958204292 959516619 103689403 618981739 791384103 897659204 519717999 581608307 824076789 921471030 427902207 780766662 131144254 897089158 266361554 756598095 123142978 880297648 237797872 825725782 825805196 829663805 62783488 175424805 201462702 598040357 505252310 549809883 715500403 978403164 164008807 274875522 54740389 881119611 334033325 547457086 901898343 951944510 408010737 601791897 270457480 619362855 620378872 770359249 791869134 971210036 466231987 815074549 887638249 990611520 286369581 579789781 328334878 519466976 497272373 519249506 970394837 973372839 749672254 980077730 552403894 579979032 695332020 785531757 900441663 948284342 688567943 697593930 728420251 972733157 312762839 954853562 171856533 830046331 340384993 674576118 564634730 854345640 935455676 983485766 81346045 487275474 811545717 976866807 330355937 418045622 154865165 410128525 28667476 491761896 241844762 712848299 239998743 947230574 638705680 651511828 324715666 961000279 434901607 872272266 850738854 894577580 199325368 904875662 602385806 995897955 946064775 967696935 310431487 983914929 380633787 974322695 505035659 562077755 587594714 700665307 433697746 740117526 206891348 437475840 326247990 536113862 899583731 917697926 29992118 280759041 9622633 254489557 987002066 989134487 374414618 855180571 807485582 925613898 378029843 470729292 296895812 491031755 435825764 471736330 98961313 425169720 58675741 133859637 600707481 826211519 975561311 995356719 304116405 767236222 539627131 826855670 6953610 567103774 174541469 970931894 211141123 263479972 48142757 210689502 787710064 833604443 536912062 783462433 487534289 489440591 418507751 464242967 402438860 416434304 323212273 672084644 358137788 654783129 854494014 877600858 564887168 919018917 196035624 364494772 979142189 995106358 535069572 663126124 956296746 958497531 358416930 945020707 834539876 958315704 369461942 504831609 925142922 980802486 541208960 670386265 682495079 957072481 653444633 742839887 321329088 978149834 601476110 999769286 57307725 177010890 988890722 997312754 160107139 838539143 918701692 949387839 291268762 973551304 383692899 446833091 193253193 245401054 857428881 889734271 754939911 764402591 412868753 488409100 588165635 694089023 16664244 466436458 152799310 423692658 376849715 484565107 283845795 738316094 542140357 676242340 866288638 929720546 707439197 974109178 907362660 975744273 334931361 563771108 468943344 998634097 703423491 874221920 667553005 991017744 767910379 800200748 710726114 911906512 985846432 994113401 135267084 460781148 55769703 960792809 29062050 279232071 260400569 526846975 705025789 863506068 703483775 759049445 25839046 755670418 939771513 972015312 380345763 472482514 186819548 862303758 407763390 662697091 789314425 890616503 421523149 693617127 889172796 950599368 495648859 913174508 19862687 472476201 208115545 418548730 618142542 678469181 228065983 838256969 525555218 568000435 777497046 937527754 281507636 574769240 477808654 654920113 256192852 954689588 707943200 960097959 665207496 851270579 575721703 893771877 671120323 835867133 384239239 926468416 208665209 942495710 212574199 471468106 453545131 548154418 590334313 997473471 404276788 693616945 755998171 986757300 672232697 850261939 86321318 477976121 123848476 644003334 851963148 876800059 798463546 981389608 689540271 936910770 159309514 287026873 60640259 460269388 55898361 999674501 593331056 781541626 451613562 664585808 421910623 561584029 746197779 910497838 782453658 898968980 142552563 164195364 324801969 845153311 691640806 714555443 971480792 999311569 513411369 895506798 199575954 707690339 658469871 675856287 997677986 998235047 459815447 661056489 425102533 622981014 478509099 513877965 859517455 905589809 362760277 393130733 464837338 968489144 685189068 999692286 596051852 630874454 851813558 977351827 394953469 458522267 982111035 983836972 567624806 695238581 897684745 971984813 24973475 408116258 110312724 681357927 581975540 585272435 49243472 976136504 768521728 816981152 212557649 455934316 406350788 962791927 950315863 994393158 28693224 649244068 231856444 438435210 198089047 896508062 906887230 923126689 701901932 711043177 38839423 945086438 195846170 783708361 658021690 971409976 652250092 833429272 911641002 977963477 285954098 688669248 54812513 383398859 216223510 742606294 853161256 967725905 183970871 753078741 171323906 690899585 747503072 797184381 250252598 675245764 73260831 522757707 162024509 293618656 573943540 661400727 835138870 878000536 860563308 989236645 873580106 991762030 174422919 188646163 123074513 337097538 379968123 447800445 973957365 982510852 607425759 796437218 727407319 770584053 393770835 922095419 167019247 219516693 375249899 878610351 785636585 856804188 478698834 511827760 735579060 939643523 807957999 985032693 366132169 979073465 192877997 227032182 485003652 553700183 640313003 826550174 279428310 622072645 756981175 967350372 660050800 817408396 659727737 889181915 404905296 632630796 841076963 980196420 881602395 903694438 817390829 938734613 830940231 873916255 623950020 796994023 232074480 850328807 303810248 393249418 838708623 860590916 910334106 983448901 785998802 908602327 476345417 482388124 44803161 554481967 487465190 725696615 538990976 689383782 966753459 999081307 826529512 990539880 922024607 993319899 272771414 587123365 410354364 742595769 735857748 925799169 551241611 622445833 640162386 937641010 62449592 743037280 601897514 919838016 170261072 364750172 471961615 764208185 630615867 856897947 546779881 574361870 129192012 996668809 463582521 713665561 740157905 835793624 796088290 890127300 552504205 951245578 503406720 569675176 898881444 987847385 977718877 980138209 369616308 796891339 693485394 966286808 391821687 545109707 45904413 236036674 839410763 856157799 420248207 501146257 817696907 953678855 608975299 842679234 316167199 814042370 814837950 867005306 521287477 569228691 226898424 535605661 225095189 836079504 252366490 547721163 364983336 902300650 111852933 980451805 979390776 992494109 692506410 774104114 836077911 946230274 89982986 390836393 417263621 885827927 252408358 708865228 138969201 590822338 515848364 713446791 665916022 730537499 945283192 983318034 619838981 660877914 284237155 646136167 413754592 476385663 345730986 676124955 130882562 421504949 663860610 816589853 469059422 767888788 300374278 443772397 794147778 936723170 877323145 898937325 218064858 882216333 857590022 946178881 305014221 461899314 889385903 944614564 813972410 868823633 503163422 892485981 149937994 620857611 124733039 884041448 30214605 241758149 646458096 899549550 559431614 633591653 970580457 983442101 210728307 764766251 417983601 634402282 492367020 847561251 952557913 993210666 894649652 927463287 591653314 596543718 662186551 826161501 499960372 692320368 969439466 987651937 225310042 387810173 343870716 884437193 142087401 556793891 169256243 735128026 284025043 886584093 826403457 925308993 725417231 771404283 569668099 959719568 938162501 990901308 457484850 648714678 733491233 779152178 513681233 615272623 590305135 980757431 392416610 568662254 971524876 986798926 856174725 985237661 369422584 733223821 827585112 936536909 931482318 972864945 163794330 584083861 795857192 948106569 404291849 720919509 188230195 340522118 481309536 511831961 998768005 999213984 566998295 811982332 582354986 830569239 171393641 710020999 814150796 988561509 138687203 244244808 927495718 945454644 173047182 806903346 55492035 893341804 770999752 774086574 942750352 983909843 33465613 604183691 450475188 663552955 599331077 916316858 531164878 766010780 569797028 772839102 865080852 917033748 875963513 981290204 210571188 929562195 556845402 723287916 738162839 981005614 738550621 994560076 212831296 475404238 40207908 124166456 31410574 557192329 637712674 862250442 499706674 761716327 126235435 617628502 346008567 789481437 64117651 442911525 966379200 972219206 830446303 939130330 688066437 911890218 558695674 978510401 844916471 943617325 704726058 934976332 811088175 978914762 9332269 485680956 742655717 759765967 214824259 228003179 417534918 841915523 890054446 937285406 749224634 862144186 64145805 551356193 440534365 643493853 325019587 769221428 100686337 491357823 919707724 935999510 701011071 845982774 942055030 962413904 678972166 942167435 725962242 926203959 679009852 904559914 856152568 953700852 471248691 762620354 462872185 886818925 119401089 834907658 465346550 591335233 358018794 579842617 910320224 937402877 652391297 926952810 393525198 479312773 706581263 752778105 408649981 457477834 719964539 723708622 677512038 713902127 650467888 943942894 836812073 904069822 439516379 853374967 283283667 626109292 713326021 835636399 101423362 602763784 351143743 933332757 401917313 512497542 950454045 969450827 357057594 934995190 306635963 720761154 836028701 944916305 952185143 997823283 144415460 194525655 865751247 983615568 839264173 885439299 365590110 977863480 432618727 776432539 519716930 534495371 168704298 432312546 98920657 208520946 22796438 476768763 43880121 328311226 915859474 982167766 71886182 91607352 59626298 206658705 263973674 334594572 615201909 992481165 69749890 434876906 449652601 515705667 512977445 584172325 534970733 884220485 753829657 883519932 325270815 668909276 489515257 845971661 695833906 944338352 661211972 850821496 395829678 406174592 205758069 710785738 779163891 956139309 872404457 908109809 822376725 994511578 260811768 265829733 753104179 780613794 96275785 979526278 658382002 887775602 660641537 832871970 56960572 489336703 534459585 787794540 506828082 517280102 333904629 334445934 488123125 636512709 565583035 858600081 360767664 749048204 848659664 953163107 421593986 538278811 879077132 978738686 96025696 738893543 949715246 961697212 115857111 539405505 82890046 234712102 338731504 519825426 94954615 285587978 924882307 985507333 204066462 419404884 923581569 946614802 21328330 544717907 537588461 762387715 496427918 952800213 696041755 925901456 39473953 782740637 895191858 988944751 358767298 484349024 142014395 343422428 880854323 995927540 262240676 527553860 526739591 653999022 664896041 983933485 585100785 761344643 844883206 913271779 81285717 793482583 900671699 927009267 440428115 636166617 689835935 760095418 722550403 754426583 564018069 835726740 154031068 831131184 986037371 987104673 387481332 749551458 849915647 966091832 435089614 532617076 582666375 960648997 287834425 779628831 787675637 927774060 124039653 496254387 513358289 971055470 620678589 855737223 954365929 954532169 778221386 985136408 444909134 777914999 889484919 960992135 409650109 434491396 450211046 785217510 388101621 763251463 690975584 985693918 687923849 747757501 340752099 496331288 462514193 718584937 633694092 816684589 172922599 646439459 786116226 980989771 379401698 848801530 191869159 860133071 829067010 918467731 307907606 626431655 690232469 836610411 419405489 541443280 705278703 925753657 868029783 976989498 931929854 993571684 730570268 775581301 893416501 956926222 406915896 477644002 136232558 487933091 731883417 948107590 56378014 209167305 580811740 819190477 644619073 938223006 179759652 734791782 170596709 375985767 675508752 967306187 132279663 232768614 944781701 966393491 723781636 935770138 529128038 598351686 152437983 601833110 544032475 750578075 877746978 895611199 61792519 176113435 624909676 754662142 700000596 947335724 364927907 958429811 978051313 998153322 513464508 862639513 466668435 539090261 536890609 908903924 433071892 434871523 965527942 968522436 402921108 763374414 828559333 953552042 352363783 784206153 357089532 822426237 318415034 494124090 211418913 292104525 483119457 675383171 622560092 868236456 793134635 993562031 272526865 549499735 50258464 662464965 960176438 982604081 614429604 918186426 603854993 834857399 224482301 499224364 848604566 990359270 242441703 614768696 448241900 598285603 623585502 797690633 911040529 961437283 341450794 654170984 398953550 860567915 881966 193754434 339546833 990352931 477437866 810739921 120462987 532346854 394027182 781219715 876028040 897543706 74996965 107926381 231395546 489664482 692453799 883637125 900281947 916979049 471702178 515208717 492087195 854628545 596137628 867195801 904762039 999292220 994377357 998401105 905396033 912957337 865714600 890523383 396138900 605260821 169292565 612525509 39052034 426679723 694555412 712157438 671636218 969021479 869205381 920266661 549334195 963576703 366697184 791300239 867328485 901503800 177667131 497765988 372950004 558957057 258911103 494859758 488627039 719705563 819950629 936153168 679251087 921645932 285630759 616976755 832639707 891997478 817553513 976995803 207195026 934152596 522110629 909684206 670389561 859206407 558401902 776092283 459380159 973123721 429169893 593320464 197556507 690264068 516573635 752822111 767311305 978781083 629779475 931490623 899960701 911520299 700687398 855290987 832893044 978330157 205707166 593773011 147032125 727573126 671643306 992602142 644941436 993158993 282633620 335993482 122389976 378177746 687813438 970878095 346740647 785204120 403406279 529589516 478662158 565094097 394371125 898637399 104907924 813371475 793569092 818388432 763373693 997867623 72335177 653757097 332109139 601693437 90639932 742428432 677201380 939693120 648382210 890123325 966176431 973190743 342955583 917055770 424522573 469605686 256648741 789756795 507932272 912722827 793033501 869527299 934183224 942934359 750893029 772854226 271625204 429212272 829531322 952005565 888054280 916010092 476091270 975981099 33312409 929577224 109284569 226442802 814042354 993590580 233664212 575443564 496802220 590827116 965070617 985047192 69473285 206275691 361467053 664990054 723133474 911669902 877097201 999623321 195594053 294366773 176158217 350927782 9134916 961527827 19614803 465267657 935728834 998872054 547516421 997702167 894447939 921954557 288462273 362217618 405769359 482581925 294203535 532233442 914061440 987750929 152813209 601579916 723989125 739595141 154493485 252480646 652400268 890666228 216419026 502122375 683355488 807699761 395854499 616456024 549136215 840836342 266585144 445236157 185529986 662166997 930297159 939521292 90724123 941575766 45087266 823626107 859282648 866425294 294147041 801849749 868418418 910111979 759440275 963751690 184887671 567136878 12588680 943155723 152804901 308078403 596207576 717686002 261469039 940348909 278963045 342257511 52521915 759353412 819541197 819957048 752836581 901882806 319776927 324956245 107254971 905423934 45670196 79326428 126450828 525128098 599752164 776887635 876890962 949118791 239898955 563495472 62692264 396711328 140378184 535407928 210021189 969275277 477660428 900716879 335738842 865706837 353353961 788152472 25641136 650148755 730868969 982686651 727758297 829766302 83333003 758124227 923184141 938831516 945377958 957177230 846619193 912918982 119288395 637453273 651710983 996817313 877993812 911515909 227164410 571880015 121878542 236346457 683070687 970429647 62264464 914863143 460686788 935938113 346943166 863953437 624355066 769129680 366730608 684179995 523320859 841588984 894958445 921734354 942257004 986130061 491139692 678430612 506926742 791398409 940472440 963080149 520314042 926888323 618358598 784553931 291557886 384440143 880710802 947675194 708222209 894664091 554757537 592907461 874099328 976369263 67905843 909625414 228749064 800134321 742312904 820375193 562856219 746747226 515479650 694269866 397432152 399873636 987473182 990180272 436964276 622943582 340291977 642860617 20245974 541217025 710541150 719643096 728233873 936458676 605692201 740612428 233514229 518786026 851840385 971043667 870643661 923401152 539995422 796116204 356753202 681560357 321743906 461172284 380731896 793442653 824201973 967241049 95584623 361073683 866267432 993890147 7984833 320056057 987386379 999097171 625797042 688047906 709131204 737829961 642284660 891379712 351923274 580842348 736942674 834919348 716371454 802053225 457530211 823049148 707306881 891450499 593211466 628167915 500855667 537823421 643433464 705119850 958869757 962682148 337637313 448779244 244526237 281719453 511000239 828909599 307249124 868376131 437048484 446207416 216330411 883282937 207617164 751745537 540923665 897009908 60639548 760220659 782562597 888034359 282905102 781590668 209612299 756262302 87556804 594202633 557499519 624632982 870346561 935626726 987854287 990358699 909105861 935781103 573302959 727692910 701451479 778424162 494631622 951561416 172274406 711411046 29780708 614915418 8933586 60304196 266369849 605525651 374957601 734892525 424547378 825704523 786882952 787652045 986085871 995925832 79731111 148876945 794904413 926090937 733123935 956688914 780736285 781835735 127747397 290915842 356931857 441269343 164185747 913800011 702732971 981348135 552394467 840916390 245088958 555282083 561382418 684112303 214514441 735480743 164338731 544002197 938755262 993748670 220786897 537629978 536125463 588485370 863902452 989383024 392474237 419330636 11662933 732222086 178927004 467817084 133563487 936067547 123179178 370877534 996884682 997848958 985666490 987143604 664138619 992651159 212552299 912511690 353274619 653822102 145869843 261492541 207439080 250201206 76586177 97082979 472051599 888405287 17342944 892758446 820650671 980366268 904915648 911762404 665493211 679602672 848471095 982274666 749316222 900623395 913342385 991179794 145135494 582818931 255686049 689049033 265017578 497351154 303138464 403756607 45312617 273448927 986660216 997720452 849506028 878252883 514556229 797175908 127309920 841111740 633929861 712320239 872832292 983533246 551059494 580986164 394387209 954545277 316209999 669426708 926419636 950171068 590758881 740795073 495221068 562032292 239053739 507271477 608259060 637628188 32060239 721517591 128377868 484822079 632540806 723479519 706483420 824412965 208602941 761734716 246107369 770143953 330842766 642597041 214957457 771404134 711061997 797950325 356627736 652686374 768572177 945067832 218842136 313125475 282531032 652512335 994551336 998993979 108088093 259750961 452618086 501150489 580885476 890037747 969685290 988337864 460286402 672453089 892969974 939172145 88075923 468109066 667151376 866877335 262334978 584038251 214949521 688210578 820648836 890419082 842757552 939608705 764387543 918917357 751975614 764194868 996608366 999128144 348154290 398627334 717850131 905201427 591167712 859702655 605406910 976573015 811980441 899164012 463317207 510644416 561146297 602975783 847700585 964711686 443973397 793985575 62016918 671493493 282462912 980430132 411414485 900858878 194615192 272382946 97795382 477531362 938344042 992478888 577979171 587236079 757489795 906708002 409510103 737169219 673082432 732458295 455725294 996130839 626041124 972961172 868188382 914402272 479339629 705423121 88567547 794979979 431956489 992899011 918658189 980375513 163268104 720327606 840808873 877873246 729970988 941764247 646216271 964692128 967647324 998802450 969768530 987649450 530837611 593248587 887170808 941547417 916708647 995956635 755535672 878859552 129519546 631980168 590904440 796645819 607467180 769993490 369328920 860111059 355045461 744662297 380251069 600798641 521542953 578080498 329569557 638720958 766001808 915487853 427106652 937950386 274925917 465684544 21767599 180103512 840064183 998997874 201794575 218367721 318274457 700059370 65835086 628430972 606770597 738303457 651152160 663182011 523609012 544489591 254446439 350959014 205022167 291761678 293768278 873760007 711547283 735566114 352473221 931135263 557751234 828544764 585723545 976800688 762522614 910819034 209979127 668568929 903890558 981277002 946319132 993040836 102711047 937627232 2116887 822141902 527478327 987577404 203295199 578449600 540077368 604653893 25127802 461591348 561458617 731887504 150269379 512490641 187822977 225181593 332003745 844426618 769014262 886963671 580870650 821302043 101508900 114801793 167181704 237323162 865807210 875189893 626355193 944241777 194276807 442751496 230017741 830605079 550075295 910147159 661599826 733276752 228702127 955949091 375675758 603235720 428143817 455306952 232075658 350042105 4986770 786094999 116637061 961938710 146247035 711633289 416550382 790405052 518324472 752848225 518433362 855352815 693470878 942091559 294710322 648045674 593419208 971864015 214998739 549707094 319095035 718646413 643239841 741174002 36504870 240322824 216491796 725210608 83488930 574606253 84637037 719072126 360105776 885001310 555289285 831573251 920192442 954385543 728039414 735148775 305152845 853104648 923363671 962704735 744246323 799585547 680333328 734387303 666564701 855723773 931910645 938380527 370965586 769674330 905912182 923722619 623556947 860049558 879427660 920780819 449062104 809510223 270025494 865201098 394045982 426679524 140320768 478966346 704723146 827959921 500433956 715837893 721329318 965061118 466028116 572119996 82210739 385097492 590802509 987280727 486888747 892534593 234851410 302617930 477403174 863742455 155466366 690512653 603316833 643791905 841518758 998347140 685322560 748234814 85084456 934656704 643808375 795271195 382218710 439763861 402680592 630088893 178185732 556773101 542477043 652628043 79562659 305139768 374325675 821274064 526094028 721952157 481696611 796410417 502355859 690823956 412443828 469948416 665488808 703698824 594147105 722430473 553383156 578596274 745451776 934517966 373464785 685523923 114448600 825790482 493495380 662168466 989193498 997977496 492280285 525748690 869299411 908035615 719745124 899984852 949996526 997156414 768757609 799475563 515874336 533700940 487154810 830329428 765801637 928721407 471424253 737906525 901798984 950728888 77487353 524983646 992180344 999978769 851043358 945518178 895724069 992117668 317919373 892374539 666733669 762345721 436733998 707553743 963543881 989700085 320955093 409807533 666293991 870301902 881630020 887054790 459804291 682505980 815934217 945538916 124595193 769586859 612852046 754377138 948294624 986442566 682830063 956847401 569085073 782247148 447408264 559246354 586834042 801420713 329327527 338056928 58718756 566811687 839359337 975062109 529112725 579386958 581028335 659874557 148287817 385369655 186588195 810706544 169116931 333230028 348587496 481368255 354027519 396418546 247237630 500314427 861247576 955497356 162802677 830079413 465234397 592225797 737568754 924126600 954712033 957835245 335593591 377543567 352053982 972470655 322535982 403802630 467199896 775948578 158729137 787620148 368942040 790563231 873530608 961618859 314195320 582321176 363736125 433751979 685077706 942791848 20546008 174254084 75751502 416020159 677245624 782538323 722002693 829659118 162260298 940338749 453984164 792687666 840876603 937913330 479704877 633196669 947300592 950675849 388288196 841378099 950521673 989917338 839926955 983703239 39462208 429010529 888548867 896787686 363801850 455257140 500559984 892170274 976985776 998577555 577218112 870907449 34351601 527419486 477998895 575042816 99473099 211213477 507562239 743577563 25767583 565166464 630997461 860175302 940444272 948182402 708009113 832768588 325375657 715317069 458694963 654867397 773990115 821115739 52482328 218428697 51808067 117993618 747150871 982156974 616863246 980386106 523144261 820596677 122698761 958786178 238621269 349415705 965627863 975439290 831181822 834344815 740787445 908644278 689056382 865079111 714379141 969568840 176717410 612238613 125340786 829810970 868759327 992537681 504663132 864577081 537178746 877039839 625390712 998294340 279390164 369455791 425583769 654280030 318300117 459034716 746593831 910097377 289126214 724615347 696908556 893180707 699002351 861795628 446529884 563991473 925791577 925892820 898694588 941811060 527819550 694671844 20928321 391129583 545417443 673647146 662395928 914874138 808926513 947449917 791790898 963912750 565310975 735628045 584402912 783863848 942020870 954447884 470898866 554502280 168735268 790929737 439472459 919610784 828340221 894119988 705960835 715275046 347088849 387284505 739375183 927723044 908864858 930752789 808654742 838703224 649190520 658201744 919064763 949675624 285896366 602985385 634606877 787013799 555018768 581869064 578585220 584847426 956952528 962955081 416810719 729752557 628198205 866464075 786869445 847376896 962045783 998742913 478612600 489472924 902803100 965851999 564623079 908244853 416684516 808092052 800960590 825431642 460159261 646446473 544294195 868396400 697924726 890339527 545216398 576199445 178382099 237645644 185498645 248486683 53173589 127227243 653792540 924706595 396741788 506743741 569514609 623155825 802543247 934292916 635226665 816512208 611625957 973033464 368863324 937866425 315056686 365323819 419787317 946569629 524582975 951560913 801001060 906154413 742648543 750406645 592701517 867472063 151870169 648372691 760842078 816190417 952641540 979333937 791106619 792794310 917014555 970013926 751505920 907824712 739618353 824898196 551692720 983173293 970166330 995614870 77876387 566746709 394947877 430013731 238536690 999702506 843508903 936456640 108455314 495432729 341728716 802712645 35446087 137888000 406824385 615797898 410453397 501821181 989948305 991873200 959426685 973223573 982739359 983682261 631172499 649649922 715330004 966543008 338487316 607881395 505204177 825051184 206165888 551554046 894327840 920973353 212230865 350414886 349047359 417064131 295314653 636294032 699880302 872588432 882367024 963908722 990173075 994196688 719924125 884620365 258565249 290480393 234578764 335671452 76438897 917371049 488679520 840485845 998474864 998893213 478417479 944472561 514656804 818589721 843198432 923647411 335785844 522845053 928560899 948689998 454007381 965659653 534779892 634153464 691171516 835047881 138078555 888547020 814101409 867095159 830653951 841829033 704877585 823696895 564799396 953750537 162506832 629466960 317491697 993342179 397405203 678632792 350588638 903170731 437986645 806322525 44598850 241694227 469549600 897272239 414465740 866608940 929636351 937858546 324802805 400993383 661600054 945479132 174471816 418211389 438143517 948490339 417320814 451971549 84369610 574170538 201942263 949900656 73862509 208258596 472396852 855897877 758225321 880215242 998238925 999552233 15859832 179050487 815883457 819657604 851559866 862636853 644567438 833140965 198671229 822116997 215120298 553834278 608004344 930901520 895430869 935339476 395546090 503747943 441008935 493828226 19454634 511665547 865512618 941056628 340021300 971972372 262740070 811618098 548975491 620082686 12524256 621235981 37802224 451874186 502845191 867685725 778042792 958768700 473722797 887781181 99466831 849392558 780738963 940671005 281452182 469563124 169300755 957778654 312840877 698518335 250020057 355582145 329594489 963494122 504273805 710595955 853107380 947700245 20541836 161864536 264408882 520992235 529261605 831200092 920797418 925176742 33064346 385871566 459524528 794608042 324446690 627282584 157938528 245685078 502595659 519694635 307595973 932608767 275557835 438077353 63831783 555199316 412765578 749815074 635048362 811011002 892821414 907158998 708215639 749003291 961613298 969647419 700275972 748790197 834920318 917294318 761573482 948773101 664009869 741200694 250821113 824361146 176821151 855363560 846451892 893453951 734422018 747319387 196456782 326302542 616440499 916411292 246515192 768269287 61412866 619352921 546121215 751303329 876338449 982685682 257567652 327934080 797720620 933190940 344276477 636504836 241202312 588238774 554688914 574565808 344924076 957980173 764163889 873704670 374442920 448548730 658780839 727060212 561884410 806247744 872046531 978159188 123305016 398176945 76530213 372904901 473391454 581639867 424445248 857451160 864325605 995827393 568660258 952930575 857558797 972252866 931915846 984629427 424110331 533979602 735916610 864824406 458359573 636723811 266806718 570188626 639910475 697884548 115508234 278232434 241965014 355719622 780485074 847987003 983355038 984998281 853264103 960173192 330791656 494401753 247265729 430130634 448932773 573102298 239192889 950573394 252890156 893993870 805238861 866190496 71988815 786372669 151542411 282243306 26155709 207584385 247061658 969653374 941335601 972146884 25456143 460216421 307441770 647299468 704635038 710597097 559046615 706686390 919416864 983706587 625834798 630616337 557346574 795017040 82760432 633199983 646097784 858648497 748518011 832950248 170098883 911310806 248168211 745684197 710381482 742125331 562669517 929326785 541811748 783694785 679123158 846167790 999519272 999834522 368901535 545850221 302106899 867686241 362076684 882957381 773275631 983187978 395118748 532539052 355217714 687768475 479810805 786081304 664796327 894821870 433247201 745505589 491022430 557088931 86807211 988737085 43162159 184875866 767064881 940719346 816825803 918350700 178598027 679771269 55858671 883389048 446366175 841173583 304733143 822334217 845586835 991488642 923591923 992366752 873037306 900056830 24195469 986114251 677353469 995960428 713288915 914146689 463379520 985016704 482644918 776619185 88610938 509035402 482332422 983876424 948059665 964788652 657270393 765708758 672062101 740100479 122364736 827070754 599522235 940208317 976081604 997058228 620572618 775761118 566545087 607912556 305906303 765780379 954764989 996586262 56652291 789175156 358704126 586303473 645126684 681349755 321977590 594366476 147734328 813852755 135205388 487237072 99186269 671076891 181607796 384170605 701965431 918106030 270276131 369878786 785455058 979347030 593715704 703051065 839297960 940844559 814584047 879328986 26870395 246751108 174616776 831818593 197016173 257071251 817002184 883153239 957915591 999696930 819856961 949109924 882671561 942711738 593846007 669086766 23441459 533881960 677290274 950833932 217971994 438067434 801708500 962752711 30236226 371640886 138160499 745026409 440128286 825256290 144992036 308353334 429467369 801473393 525491738 925800538 526722503 548811978 336036930 742061750 116418207 844492678 49419862 279534833 151607080 280828560 890300425 896288292 720404378 779301643 605451262 619740033 35297635 863320659 550761665 718572011 416559185 462252287 284924148 832216232 501032234 732564333 590992493 893362811 177234664 258561025 785942584 900572934 638620033 821545717 796676125 853125531 654424338 878915583 613612374 666859358 391783363 480271673 307378637 640162547 717300449 827577962 379865221 415286837 122815158 922334283 954048718 967110949 132684268 924660015 266128782 645896312 678275298 812509090 948004173 974485266 829989562 982042987 732166196 732657359 623076752 737443177 30946022 146447533 224867485 637387526 55676576 590288984 611224758 895776401 559120644 955189996 349258117 383813258 178485321 708893401 596452098 711710751 225953851 510517507 544331335 934981689 651600277 886353170 25762749 114029449 980803356 998236346 382145413 649828284 981679933 988673899 567830586 776416617 449385243 749261576 133580040 579447087 263574740 487242414 448508359 601495433 479447991 615114586 662526589 738504064 710397995 802864949 92579673 861435385 108873384 567221502 589196441 790576110 608207249 810472930 292589960 439255724 440865726 926520102 117016554 360048760 181031553 403980852 4031674 439874660 921544329 932057420 989368673 991269148 923423658 938167016 12835616 520701365 676013620 745569675 251608822 423218932 743472281 873317734 228428526 588235464 150315666 661406587 921469731 963888843 333133558 716082583 95140907 376801119 870998333 899187026 875549953 949144582 621982542 727483629 871317276 954936774 460049589 999724442 575499360 805989523 763594397 817925109 145511113 887878363 899214459 923717070 443927836 846880257 27720405 577852251 222332478 670977344 728051664 991282333 541144695 696604036 569757779 695283785 436375863 484658500 609676854 993153562 481720544 885205818 85829873 684300337 120722368 944537182 866534095 974394720 348564906 873426588 820219610 940980064 740552829 982277516 551626315 905425061 18955133 462508947 322233999 453466546 102398856 251913737 247546580 923661400 545739283 991837078 8532030 264764763 97841377 610613603 116867517 552756149 767187192 827161674 291847921 620264627 639036542 937766153 960896238 961706238 151605641 530605150 819266820 961787893 904686540 993683763 976209393 983102319 147065963 148133464 20283883 185849738 659399052 980261963 977890063 989118939 96292787 130926883 997540668 998794331 980400928 989216434 109899292 677937083 379700338 692847833 224304776 902335748 985804283 994862137 30743592 746955833 723808612 986834454 117541279 786007597 525774589 699310664 51035474 403554979 448661176 580222448 568574802 813237176 99292403 236108370 663124287 803573599 931988229 967716257 357708057 777799826 382435994 812083651 498696426 854775800 936352341 950311762 58812625 170936627 66509057 472164088 645948705 896769567 215725898 505854875 525475903 770830607 804703768 869089370 476629964 497405811 733056093 997490780 993467881 996111386 34443488 79122743 519968138 619503179 225655397 737934972 97306845 230169054 337822509 581591730 612792786 710138307 696411271 876610261 767030500 811884304 266314375 652248032 314110679 980575746 711459039 758178229 903594941 937186319 531840932 686684407 691179100 945322333 825545986 887659847 751110004 807985528 861905370 943177000 669444352 672347579 177208774 530053827 870690407 997708453 455268780 681153258 301401223 906223344 934269857 993853484 295861983 454491109 752880821 811197969 454773396 889982226 557099732 878503543 13332151 147722111 259487626 349076179 466173459 825987007 422382853 805026237 597527377 919584925 240102164 800218399 827057091 839066278 559513594 741089180 381785505 523218569 562141461 604312344 651625781 991852057 70765274 673935930 30803489 553250075 636627895 743758603 965786224 970376158 55459052 243938115 205233164 294702146 412702854 474293947 768383910 955926284 947936448 974014368 313527959 324779207 883433168 887661519 338338193 759842467 545846882 607368602 614669236 678925697 411748599 854759801 677348087 862744595 844669870 917404081 639106779 674423445 689803864 928412187 205752439 710554218 265917175 537367809 718459655 794377622 965317229 990237133 447338844 585879916 406366725 440626730 694229031 799403961 147066004 282949663 3821479 204861152 115186813 810348671 265259482 490201438 615608409 623567686 942707792 951876683 65971949 720318863 395364122 682965023 261532770 554203974 489329846 667195875 824451057 994542128 812230725 925263013 589452111 985295053 801377431 908585007 63445003 933666017 413557849 739566500 915096384 943590672 811346082 878856472 559751189 962540061 720835137 744258754 273059881 632687028 132957771 756820597 474074669 509900607 717238561 871165367 52922722 501730140 830517912 987879048 812251773 819476214 19296221 888213767 959072709 969912501 267241546 525115304 419091467 548029173 490245051 679389888 872875913 976186017 347470749 937009360 704066232 705736105 334018264 791889000 480269545 608480516 404561861 428615566 538428456 575562053 211449045 258097487 62309235 506161632 703760289 796976064 778018663 921483351 323006275 347889627 963719232 964832770 12118661 578146478 975901945 978306791 656288784 952778113 687783746 928510912 615415231 863789571 856120692 920975075 547244306 889009820 283942887 736821545 211774571 686096504 272522801 634276149 569653229 983367086 248664797 278503246 934094678 956640169 501895560 756363274 612328367 902343810 667568490 800630077 402542365 755267216 502151009 521098951 164262545 221915238 945782138 988884826 135822708 258330392 564913311 577745528 216302364 567831349 940834840 946736117 968865552 973485072 21104234 753349430 503338154 894216085 26944675 92816498 294575512 562549139 800776226 996623876 888954800 976525219 401088994 936608375 477021103 673416482 118510118 665360457 690861176 894499739 594776832 737227580 195043337 566288116 269699858 840879673 787730982 790507677 131603110 358915255 695515218 939577489 325863457 918267870 614366001 631807853 983660596 993483884 100177897 471473779 318787945 708491900 983344683 986901440 817726258 895042635 523510577 889351608 236827817 390132394 246414197 314935195 89815274 762184122 108438376 195743237 774687683 873265995 486396137 860827434 626372276 947697551 867681164 990616470 135395623 750804270 734589443 776327704 951472819 964298201 521871735 878816169 556834951 778666276 176137039 776704509 168918238 577315229 575543606 580157435 589044389 677268171 211578198 249270396 900324610 959496579 624010676 798250643 90264992 261378740 104038068 633141602 300243724 924958908 501205148 777979456 546481256 723825670 923122551 983393762 450705055 821455367 90462454 162290562 421542408 937110542 846990804 922843945 9784454 736040819 540524062 724425209 617582093 894042467 714787970 839801356 919365902 966441647 517106616 900712384 470100986 534743320 979181169 996052179 170653479 208119288 694989412 953549075 552104585 622222756 758151996 976500471 164016181 681825258 911228332 925724817 853588556 866695396 469787706 557756014 840316992 911147206 719278332 977136051 341813242 938820768 768594162 813599771 122385768 175205918 25859688 728826466 824083828 889427856 911315679 962536289 769686055 920045512 485603016 506828068 493798372 987092098 358330811 388511111 632065613 740879620 963616533 992925054 721930778 888226647 417377780 631631174 368536476 401909929 156824882 515803451 31223699 425488448 245503348 474757290 618828974 969131654 13428370 610414727 357671364 360923829 423212834 486249180 545722614 750862623 279834258 544312748 410114476 735728148 268308213 771242502 378476215 390845946 674028126 985296628 800678287 884092183 926105265 982992832 452671066 807365579 844901049 993981169 722037460 906182624 839360456 895685905 976190469 993785997 246247803 566727798 219435956 354082019 744083123 946675510 784435846 864176525 98634959 329569201 638613618 930072957 279148239 901427440 297116029 531208941 291362888 946179929 535744032 812387640 179490525 727954248 462057470 923313528 544246247 656440565 856234861 918515871 721826063 814894425 928019009 939708584 418171226 651635856 927793567 985134473 51865106 342136603 305816015 691506018 59392352 256673880 830293726 930851999 207813234 864690866 938065861 984536054 774745939 851481753 904724350 929562697 943355058 953864539 559827403 868779525 212450206 393938945 318838855 444062118 541293584 718765127 414941039 653276159 276415274 458370767 709948590 862705686 520804009 623899909 885908820 978481109 851131689 949333284 535911204 978543586 884015071 896199468 257658812 318324337 656272923 874130876 511149895 540358850 608367182 805622541 857268525 902727767 869146549 919147352 216000465 551552982 250692647 871939997 683596735 688564767 385782223 870087161 992745191 999283360 412187755 815355041 677087410 764865854 177304105 853729191 691055644 726633191 216341996 360082304 523801455 807306093 462552881 883934427 371138421 870002729 24404703 901263428 11709086 19087444 724469101 922110305 199030473 787048970 935275748 962492203 671516088 897040855 627423808 766313580 457228313 736301477 99085804 413369150 181892817 697706727 710241389 892697588 816861617 992042501 106717762 125545784 845551876 999633274 685386464 723877232 643827208 662070148 79508455 772544110 811925134 857283826 548373049 723488858 557378685 667005479 975546270 986288030 206349567 474293021 810671074 965163276 428711328 509249755 842001517 951614754 646726148 875171095 836442040 955392820 98832454 542059087 121775972 524588131 2106715 27397664 808329205 871595187 129651875 462919341 872057418 875996647 66623583 489145666 660360768 852132764 653294016 698802258 887856384 970880435 872569517 941188598 134684092 396420276 735179586 909149466 822541950 921731525 658497743 958039842 970353270 983691235 74781538 350739332 156786912 436020579 776694475 865407719 905802593 988551285 25384365 248465452 581670242 663054415 296394229 738419585 44648642 610411996 276296571 937053282 902132717 943281019 981475250 985461868 97579856 989850150 9542602 97173826 857156354 898524184 158447884 582627750 648474474 967916575 224422363 802715165 604692502 838843892 336321848 951713135 372402660 656197237 972008289 984939905 583450997 957138102 743494520 944979199 40166047 359628574 133711337 766816564 472763744 518992836 724903637 974389901 364848054 836600564 747777741 828153639 610279284 641893500 829157886 852124714 184381886 230758045 788022795 791462630 589956933 786790276 308604870 635838562 358167158 456425322 30735359 977118879 892207035 932213059 387321571 834162771 996191643 997011984 506831758 510645404 462152565 578326542 340898944 617448439 774712163 790748665 132711241 958698100 482926744 621065751 286553087 511705948 54515269 288428622 590671266 879204850 60702157 347492467 858272801 872026276 214740181 729206524 288521801 329430883 358872252 824195020 373533628 584604105 670631458 791396388 764353777 851994860 562946213 641755403 467025433 676145918 306592197 866381745 181926125 211760246 850710813 916864222 946347844 994511979 286973832 762556250 121670173 292573066 937041786 989705965 652667364 685127796 537096145 558220294 622156320 768388267 227946027 494285282 67594852 342112493 83849926 767518120 254530438 373620566 839162780 910453776 711577271 776199406 112480522 674106102 838640713 983158645 977007183 978695299 329440685 844373539 481777147 694682261 732928895 815910698 904995838 969434591 225289003 335885657 319292376 653164142 849381829 918165975 999332748 999537346 439612603 649157817 342996852 811436762 161078808 394668157 100982252 443735304 815915634 825359201 811941904 899404649 416993866 949146761 941602344 942722964 999554146 999812217 599334129 790367221 10396407 455107588 718425304 873771315 538367310 625623394 871003605 979116269 326286834 870267738 899820336 912743574 26652957 544296130 471178250 593101471 693837030 821612345 255290431 672976138 855607209 941108520 108443960 205325105 192591170 717555828 247561903 763236569 794097316 868522860 975983574 983035568 401360032 663224381 852740036 979581226 850478503 853657749 441826750 741012190 644194620 822891101 943248771 956115855 53234354 775085398 764316722 892205709 926797670 978013581 585927608 803893840 558243863 983528275 720970610 753494744 86236544 571275987 233846138 881544219 812631294 863913180 920803991 980210561 765142820 914986168 365134192 428053913 498234443 917167652 372118466 462305142 864963593 877762517 341490827 677092429 527740498 728592604 743095330 976388557 578194927 931636097 273559182 856023685 689692223 863964719 988469164 996898242 691173368 773966191 994552098 995237050 637585892 738160140 252095113 446638603 239378441 706158313 668733768 913397139 169911334 327821806 906079439 964774269 489886043 654911063 704903194 729113899 558192734 691671396 146720447 710833228 615496355 678199197 739647335 972736099 475661965 490784406 345208396 586042330 151396465 783577176 610593626 612121095 622769315 801661367 848184560 861338659 92015097 944944337 21511833 742465327 568298108 952017031 298489329 637529807 50120549 668666272 49865294 98272503 739839747 941665376 86383021 341024863 587720761 597264610 363158075 480968330 257942336 299022633 697508394 843824747 397420876 518457915 775709349 858901476 247609472 302715094 174655643 566575077 217360205 833515530 204658754 925119989 938136405 943814246 690868930 837828174 506533309 724149897 685961875 994199507 113967591 777493779 370893382 479414885 463997271 544588739 479119509 543441899 162409174 817425240 163648194 628415833 394920989 452070677 952423255 995222662 188639730 873356803 196023528 821786955 674393402 996532738 57572636 58376398 560980536 803776568 783072053 977647791 386186364 693968988 404492120 984128994 873564768 993861341 113373007 231534714 6442222 769447977 790593762 968856265 851057204 976530127 36291431 460580898 536474339 969308735 842656848 900882705 245219076 443425084 525068806 929733440 109838180 667900308 995872582 996154552 304834926 616509863 672435042 968429761 488311869 801871059 417186824 433968988 979362502 989120539 972485787 974352133 177112036 962367446 74154540 261065257 920776830 955173446 337744251 528285673 59929455 170107588 328223397 593714786 748551982 865826653 71749389 759346100 65378361 359522921 68428621 616038240 735589897 947684717 526606786 816146266 146279463 418876654 711573261 818444245 948278449 950119806 119320737 706892036 612774495 880830108 914595905 996205347 777406187 892886373 176845753 899410815 678937741 715649790 103197888 450338559 956701109 985945929 734013372 908935975 172915901 966964644 171881939 977999863 716638352 952512012 457800842 482311264 296621304 355518290 79198041 999185207 933239429 949102690 329080250 496905338 47052890 161572896 994322209 997256242 621913131 733062001 338199844 427402673 991993305 993180730 647359968 993082848 708419928 963701905 109622962 607175715 385038958 799025248 155537468 184499732 221650574 646364218 336692026 690485975 212955833 226302060 508627987 811277852 7376486 886959562 940937963 963883917 148515140 433212063 417805368 551211000 232867090 634282348 584166702 804011466 214886364 335102655 282870301 432096631 340984439 502183071 88041610 918661155 929768554 985275645 361192328 602879057 760724847 954600717 947861882 957884856 799867841 912507753 803063082 876430981 195452265 445072533 60789600 837551806 870304777 920468315 653552313 795416675 138050126 586980425 649197302 661224589 952102805 989011482 434816601 542894647 646578124 701746235 406801983 703390627 893529085 931098966 374992961 420318810 590441616 898272660 855364687 955685115 894268572 912468743 941343686 994451315 510664692 997459818 377866142 773678824 629607082 770667328 519273324 912967710 149955861 852876420 688390910 802022999 506801432 861712594 917178591 958112394 745804336 895098664 637933512 959824125 977444250 986337272 512644369 934025179 652716482 660137360 127379122 650472057 106293952 164007388 708926585 770960738 687365870 762397727 33283925 747465554 355770688 593942442 144847395 915090769 670673195 759926481 265166082 863563363 567713842 616168270 302907980 530475276 138606547 338059470 553915559 893525670 431032598 617582557 513709815 558888314 701239029 959876663 952735752 971866340 675328405 889804468 603034362 605016850 922359601 975431494 674520414 999822076 250954424 276888397 321332059 551599949 448287361 525068802 910184705 925159112 606483494 673738041 872479999 995425497 382523871 622021614 324431792 722650370 514338383 578918696 481775476 910383754 114887872 901620409 49420843 815121001 425644084 644255311 93813339 256575938 784991909 927556073 553444130 817209761 269069134 818931515 215569658 290053885 500171510 609993100 977684689 995775689 11083015 275280729 804201355 980279813 422930072 473052764 71268115 334485553 672996252 888790683 709049858 953013350 626807766 692877496 322346148 593379465 869433607 872137812 891863305 915827505 284270418 435286190 552874151 637204249 163095252 503251217 6001016 626333357 230872603 443553804 396648335 462195325 301879622 510866795 789452927 810835567 819912239 990242697 677160779 712128189 585775119 648393823 801802149 898117383 523013662 603560188 382194732 689204795 6507456 26784514 894970371 966481828 855205879 943075683 443057711 984127943 877520344 894772985 885571542 946094572 634898366 739066123 554322194 801707221 119466858 753516435 950283091 971818364 504813582 891953922 519750020 626398513 889397342 964115832 509645236 974912269 854881915 871033740 383404563 474763424 765797005 776531193 621472548 930219934 507688009 966309345 623175463 749160238 392135198 566732745 964083766 991926596 95353795 604221586 607094764 633161974 843449382 897143495 962554739 967567408 575513046 596387509 46092209 751799373 582797593 589883739 560441085 754638171 805383968 806342725 108233408 476714350 863761317 920583361 704573621 734654541 948341067 950325560 495926078 806435898 634222236 799588847 837098868 876071274 451606098 559377021 316159527 675017939 423110400 425915345 965314696 975745485 62300301 192406002 179913405 875268737 862809540 865234488 818913704 877416239 875109247 919953831 799985006 888492360 462889589 948835619 938289136 960896186 194783050 378322399 135648446 982899099 196183412 257921148 438933140 786399135 329147047 471740316 367164116 440531974 427949770 997215380 671940277 935849190 186439282 822051487 291411772 532985675 89745356 819011043 605439449 991962285 809342802 815486682 352486180 769078722 43557710 294072690 566221612 678813880 901144465 921933966 117453981 579031880 283089143 924289764 356296040 783912380 117598768 765325283 591418401 955623231 660139840 664563929 203906866 673368840 861903224 941287989 247204895 987459647 603637347 724291436 129633885 478328497 690403446 959424970 238389449 639549333 825158325 991897666 917397461 920198943 291418067 493327908 157836151 559011517 549845411 968119706 259622926 282398304 279218081 560861538 629446404 883759078 102557725 640035955 890846622 950602594 493199089 500589694 771466372 971788551 428481840 798735374 701490788 857345004 331421480 965552780 751027023 799281242 443205016 965350977 169030557 575877782 575597660 817211278 851621715 896853692 569685001 930076796 178966340 509336592 380743388 796472383 195378189 373939144 962475011 991785911 163783243 758592619 448870166 570399185 169908010 332927905 654107803 712933834 450383070 983255533 352153978 573355254 798035873 924050824 523550084 796538602 491616077 951745127 640199562 895189613 29980141 777116254 133654710 221205944 570490677 877634074 316977342 617567825 137230703 854571305 459778924 882984295 458205059 867527393 863792546 958229274 508656404 757303580 170525862 255811620 324669674 381186455 120788547 651935541 448393146 450834979 774788944 872147333 833918428 975764639 421546252 428137304 521348724 738091823 958373115 983390119 97916132 367889494 131793391 375052175 49919005 767784382 392086503 933358394 439829440 532824468 73653332 633720137 144622228 573756948 660088898 712730697 434587418 589112737 143122698 304485169 672487302 841036676 491432811 952616658 696691108 868300748 80238606 844832998 49865183 205356621 170993730 439567666 193483244 922966108 278958105 495789060 321626499 660121310 48375783 600535057 228372377 230821510 350209074 713401531 61513852 593132971 362959146 544963587 633714894 688716852 488195178 526681758 867047498 981973388 931623633 982876153 491519719 966798828 637601380 735550237 592295031 605296831 148460674 791296338 165174011 871780582 534636219 818351328 314222046 403125998 83381304 904140284 785524086 997896121 811879054 952320220 175377332 464362991 13713692 887680980 591426729 976824092 227773500 572581358 319220325 470392147 958784833 989161108 182616754 540922192 116400646 526437764 570145905 946155820 300931801 476364766 616716934 885403457 871225632 926411762 833176941 907329483 760397106 765349738 443333716 587190699 804797543 932819483 929254621 936735480 534367698 891745362 890861238 934366763 19409349 682115654 472986213 946020638 371533108 626885722 349823595 716311374 490803701 952364793 623650158 880463817 362945151 463369041 590321598 948358665 863581076 913020034 868848722 968951996 795469404 998289809 626360197 909377564 182423401 370236895 632414987 707292817 796270104 956918272 770994966 795308225 794252574 797561325 92190163 114128705 252967466 746545160 964610393 977222647 860001537 949524952 739896464 777992634 850446781 885579872 930154491 942922324 239024441 895064323 597954224 989074185 773010193 944684038 415768588 836373136 739950225 773378416 473234422 763335278 281737875 830076592 907032603 997792592 307184903 726253738 388373036 727714753 779168012 977876425 812454486 884392495 579993470 664264643 147654850 549687295 501984767 570350497 198474103 581569914 25421549 983619423 199993634 204263569 592092716 741907255 145442385 873894069 626744011 927827463 121355924 644468363 846582865 881098899 114769158 293607320 555497939 830639699 771958902 883755793 217640701 854927533 791438740 889228176 388554395 666955064 18828527 540570959 234108185 414404973 741862710 745939207 592853316 998294029 592544467 956447486 576236717 675172083 181449732 359269249 52518898 382318170 871385084 906075917 557720272 892471293 376350741 588592541 419193286 661638757 758119854 942277715 27526093 731977944 130778112 546813299 46245485 709298586 864544270 956519275 687555260 798369674 178373867 220273693 509946937 720389813 629301186 961055174 481383254 901392715 126086992 181725439 749666909 871364884 808271506 971786559 777292730 855881445 928088139 944182508 90594290 296812934 726017396 852533665 704659847 784476140 541130101 800933646 477067048 530827915 228966526 568584089 669427043 942948278 284584835 356582674 588726239 691472986 878118549 982076612 535217647 699367616 285613404 512876425 138122764 213247902 661352986 969437089 837745594 857740597 581193554 811008178 302127978 789630084 414246085 920011581 474838395 520899402 348287856 414601332 205555107 811580362 777675150 986444406 542927499 646223521 604677129 741707085 170311843 226718531 971422656 990800268 783793615 852860151 548681036 993691039 523091347 788070455 342506461 953311617 605042954 692066470 495133569 834002309 545728081 622708266 231632919 595605224 887867344 952461134 538774221 859726657 454767598 464827549 508087920 528230905 769613028 830414560 695274576 963631239 586347273 718683397 51673447 598232685 897289926 935157608 699879037 837900465 448876730 694175601 626261791 742762535 261060929 825254817 763833878 784118716 911745083 968766185 617012139 859046004 54498721 236125440 768509211 853054637 610329012 698000605 527129541 872260236 792029124 800155050 484256019 635509037 745357000 959025860 674822091 874888164 171620576 266159052 214159401 737015403 882590673 949035271 765099023 767007512 761812879 862759910 988359369 994861199 765294414 821028906 494153029 789373244 910731126 968103838 186459231 560749398 129721457 159067353 598706990 872817903 528817255 793345962 271570344 721760164 432072600 729803957 78207851 344333508 815815865 827734298 498131809 978955111 864512075 931453889 994719048 997250361 558343574 630522989 52813535 710480661 179843464 511535368 17473404 605528103 142680320 812547622 130362915 246585902 996597727 996851801 81702030 534863308 167620646 697170729 153567990 652618285 521920024 895190677 453846484 478775759 225704101 277113250 622302527 673676875 398554774 688868170 73866569 910845062 502335688 658888577 616771639 791160254 731486253 830810078 225707009 778857924 455218795 654133433 509782766 868917958 468548036 736048616 952213646 976481759 795026170 884434725 907713517 960521820 566548958 674334826 907886406 920721527 63258985 501970750 753498769 859484901 179932134 908880398 646886267 936362832 828765690 963234492 956185648 995574189 979977466 998654326 510186547 924499914 809787664 902696066 13334846 559208653 82399400 290707729 53553950 506538425 909500682 938659059 920188606 999350560 66266931 569552830 473265297 748518958 652456805 790787115 624653604 834275899 384192127 592493524 538515641 763464996 349140589 564273308 847324973 858558900 339545378 897296956 460809727 502608862 915181891 969057084 327400736 937449550 951888941 983452785 900251533 986993842 363797468 511829136 505958305 960854156 508551447 948372986 829137129 893743836 839802155 992847535 54930300 780703742 759873364 988186981 652493879 963490253 193358715 294886648 803848239 890869346 150870208 930480568 829050827 898816720 222496553 594391638 730790882 753206837 763744005 829756900 198893797 237301476 955054308 984820226 631779139 657648697 596651241 688086517 163508270 283922943 854196365 896032029 95787305 571638449 230819632 691460582 953315871 975022751 742035217 875044382 846356322 981161313 889026644 889883393 891664128 987672860 430022825 541431450 487573317 871916709 221781717 971119271 654714782 786738833 145626471 868060061 398575638 762427886 229942058 638997077 905197957 957981835 644994858 683231899 256756090 992610811 619141961 887824995 830490238 912750970 142411453 762654817 206029267 383580608 580346193 980853556 573116027 765170012 597670210 995031232 152708543 661601601 701366343 796474378 381216350 641506506 418753673 960357933 698005526 957008000 199884512 865086409 65463215 417682032 831597103 849734130 879821831 999815412 247088688 568770262 61764020 376523703 555650906 832192812 939309211 961113721 684739887 853560423 623216167 799465482 411975031 875140351 617858742 689354713 443957586 971654437 844194076 908590553 589532247 790147579 64465812 167747056 814437862 904900917 451056316 741481909 934169090 939311526 819805047 974817132 789181519 951777939 170284144 744718750 266222517 851691274 557332435 831137650 448877932 926966517 107339541 651677080 567608123 602994533 248074164 854938020 93950827 349223297 180154395 480452459 459132186 636123379 854770614 910567764 195748915 507124466 744368807 936424456 477278278 646058875 520392009 807450683 785592533 877264581 394912172 956006439 359560178 534911242 411925265 943233452 521043436 627433418 442254392 740381093 809894740 863007526 564653815 937410433 486127153 692045684 615582146 669522834 268650839 336472855 425318029 995379815 102933325 559601396 751888035 835650331 94907295 966511623 557987959 880732281 312527753 637045595 716817396 957107479 433703780 933897950 275920621 948447196 299828549 904052186 666278245 867410640 934412361 947775355 746427529 835571923 487194569 562670039 724589335 864933978 12914828 288291695 259452541 436863529 957803819 964237900 775297132 943766058 830331462 878061781 488641615 747200307 451944757 501656946 15627997 352578965 645682104 779625941 204251016 456957722 973328914 994985590 123612679 227737428 513011892 712929193 938851314 983171153 831523844 908748723 604266901 687984530 318878427 870368224 920977545 983917975 805944749 866263893 140460812 199317538 154822553 362234055 33623851 740632894 782443906 837341391 187444747 844619243 523172818 905297122 265827061 556547805 99716767 962651986 891603881 978392291 576434886 698401115 801350190 879334147 320256536 921987278 88201238 569893855 913277147 981988471 529772699 663398983 918741812 950761153 407789944 743565990 671088502 962019926 706580983 867726018 916312955 998649779 744575656 859878218 516512984 999476811 441607530 716360129 599406252 611888478 987633865 988133611 787995943 882550528 580018473 987251109 322136363 977674455 1932895 795793846 785359003 878743162 143790381 801771906 456975822 684873027 888314791 985870617 928550069 978654761 363936320 528584671 790405283 806848408 406611890 464094908 911761370 963680743 795046873 973761717 288023435 670943229 990152940 995950041 159397349 611535928 722940213 813706123 480368072 942148736 302594345 475637587 194145822 260457310 889798512 930024051 356007307 639542809 496715196 598003973 945211530 972285455 35556141 299076509 471036981 854896419 909301347 981693877 700255338 865817364 79204157 222040388 829282367 897928473 594498628 917460730 395410739 876778280 851278279 858721534 912798505 968633300 755862812 921322147 429835252 709980387 743310385 876940405 658781472 850508596 360493205 925978917 875139142 920786037 28263930 208103886 455323016 977493808 182426290 722581826 933123703 960896835 59730381 675844472 891394525 959605365 832748452 943190425 954347263 959786816 918393806 931685673 815418541 880359838 471946554 865628717 821964173 949942327 410009062 819758209 353137609 797274104 449317045 821746322 193077552 755964993 63396311 804868746 219485353 756025725 874902555 934671281 783251651 799098406 888087827 892214728 177431994 368139516 900659672 948892217 271522743 878451513 637724319 791418630 57025344 910279122 933973197 946880299 670741893 917869595 874033887 901325046 234890725 738348050 160305186 391927861 659754500 700502502 758109001 798777943 23507651 710526435 874932631 962813268 544476740 842746962 298615632 721830721 474722460 677134947 201640378 889318036 299060999 831932177 642351904 984189790 467544227 940835674 763960576 830038568 537318038 852716553 148181232 495293986 919884698 971310370 496786513 866909051 994438781 998244921 370439304 868207364 678575802 754191636 453506215 753946004 919104126 958866840 610653323 801568937 471640846 798325256 178574875 569153372 531621918 579258774 660143673 834038113 135544217 608397693 317821461 536609283 363665422 570780467 820019733 869063233 448515138 813534983 819183291 944597185 268412475 906442101 867147491 881721176 328811532 939185868 270305584 336307186 690825382 984912352 837411633 953470503 492340797 814970628 579601504 641648718 326845184 607731000 954686035 961686852 340530835 757143002 791379370 962151737 766679994 974474777 182569884 243949933 656211622 857460050 302263251 690485831 829669929 882945585 829017499 977328207 817551812 914361663 85678347 494334066 448191020 968194129 451983268 769532991 448062364 774107087 946360567 982230858 38749592 387801116 862084694 963639856 566366726 891101329 303490665 678238051 986511459 987795010 512929959 725012515 152984844 724833584 629203983 720609204 643389855 975146041 625951154 869929273 693472183 982235686 122298917 719404359 76173587 813259811 610130639 697199719 413708619 503307266 115166583 733955515 913021103 988273443 931571447 940904654 33407434 174321894 879407000 942951019 435700990 930613879 493825059 972417647 753664962 772811259 723575372 741319684 933171907 940286228 791951721 801820539 506268920 680477057 653984830 846119798 211454808 839269120 309505312 504788420 933299976 984271709 248330257 624324782 96809387 695737578 67100495 92710290 539192107 902293957 804152190 877604455 768803025 855679128 143483630 747989536 122080451 680471329 456530945 883873508 158002573 609156272 675866876 725771537 255934410 627713175 550106092 765642384 678910212 685203823 25027487 782583929 964571626 966747322 726780605 943436235 763495726 863033625 296288765 905094880 692423568 983021012 715308065 859945905 645516320 927381962 97099707 514981496 85329797 436328176 567805875 997038890 671542460 864554349 985869990 995502181 415729916 816676735 38977876 916613698 614553391 996138554 576568074 600982959 291115039 649191077 188596726 647699954 519161978 679095705 713480576 945745435 261212350 758512649 842349401 865149687 212242283 621817430 280902407 877083694 400026439 780117013 673882008 863122918 677237448 733335590 776558949 958232453 858280770 932472755 111931490 504761167 714842048 992481834 102840342 960671929 255786454 986947564 878730206 988047976 165276039 585804901 209338628 268542871 632824782 641913069 67888957 646652271 217520985 522909019 24180582 435592452 42575991 645271132 682797583 879910025 571529963 991818526 295327275 695188610 996611574 999015239 464219384 529453460 237811567 880948010 180231012 497752069 757817428 826459072 654491898 683777151 9760314 720860834 662678095 890171948 213595973 756277749 690899338 796314018 255579567 296606154 543518725 670093874 27710616 980749981 311122358 833235255 212901539 244348862 665619885 733813682 719256971 957617038 386430178 526391626 78935360 788583587 539173502 611524513 710179467 806699394 607885468 622501042 247890029 936539184 319369487 583290107 20638950 365986556 432779845 725551871 374013001 599135050 322010319 502260151 573973889 671861349 56392863 797761365 162727516 351189093 770284926 904327044 810443136 884891891 315388084 355240163 451610605 808348470 762427837 963414116 962557120 970613210 707657721 961271817 373427161 538877371 991818655 991947051 930989710 959223911 913693663 962122529 983037022 999919659 738502951 796923029 484185423 904850185 601281478 748774876 500506029 760536401 158653481 230880924 943034693 952987466 373992569 873636813 424009329 561377129 615309363 891460666 582184938 843701376 44931593 354561447 679033178 837665823 842686742 931550934 601648377 629360544 707351400 837016500 503673427 922086124 160470733 882147753 71909161 798475587 253012459 693081772 967099816 982321732 675257383 920107472 828459300 892298294 559864118 821248372 606758540 955490413 780953634 781416652 746824809 757353981 121244419 150707806 974177828 983624300 337329147 700164256 93429188 407208245 580316386 962785325 674436809 913703026 427569556 466668149 223223573 843583286 730750857 856048011 997524424 999943389 556494712 817319733 240803846 455606871 537707939 958584387 360551459 410951303 316531853 942412727 444370741 529508205 360769335 529759809 394693840 568878385 114695208 532769436 872582871 985184900 881969840 886286721 252684084 958143717 734988189 749491112 187134024 923972602 350312326 401763696 17400597 932900277 727535660 842413911 318190151 967906334 67463116 684687498 438393422 448715854 921486853 936436237 901247566 990778914 390924661 774173021 869641911 915378618 910455530 967702210 72803160 145160126 841064109 940355704 176493275 236648752 519303628 598536272 338889136 826281490 242909652 404798694 121168818 286983601 869479861 960073897 608545974 730628433 486816566 521832696 733414911 782256766 591883587 949048554 335506443 550804929 914028557 935776593 930473858 977223542 810415686 831278747 999116096 999568700 899888238 919642553 879042188 900761960 946807488 955547984 277329393 882314199 280910460 995250834 520258216 750345969 923782952 973797295 439062125 630452495 779024942 903852507 207865301 838900270 119610768 352649871 251354167 896858064 927131373 975276666 182814569 270721757 137297795 760316449 838583635 857281453 755344578 793822609 59014314 718736085 37589078 730250676 516039455 703154687 750894276 779542943 246991263 637340217 937700774 976863282 110593542 404823471 813726459 870018298 773043093 811460345 985690540 999875224 162562769 717319379 901163771 935489279 197379585 467410319 193915061 667229421 163346940 738018661 552100775 841004909 390923838 868329934 7787369 657332768 200336524 539207727 651972958 790542015 926690937 973251986 8920678 300736304 763563389 855744271 719342008 957413288 177168609 241449045 135861345 254303423 812292307 931119424 85953709 834715983 842828006 999392371 985505843 986200134 430963118 615944576 870127348 877119320 805726622 943472367 355323950 476046917 545923908 609662698 963577631 996586442 99598868 578902983 880118131 891108935 744710357 872823109 505869553 773851539 78701480 558733951 774147441 821259853 370343110 916083820 396137076 494759099 839639370 924567364 408736861 461611499 259666308 600225770 714830633 879304400 751705886 862558236 207905164 947073983 75966425 80534124 817493098 838388915 130259024 874141386 83844534 903972998 743983387 923457423 425507086 735003814 315352861 621913589 731821835 856250065 613232206 988368383 795531806 877794661 496370951 501387012 436486524 672777270 99497375 992775867 962261879 988084079 659753449 752392823 614475520 779146287 321249989 372736126 633530694 959339457 745407220 806289514 291200 886580352 495144685 647262536 150417956 582769167 779455323 869847950 128772636 172499024 684914571 945877960 958696956 959740009 660132276 669372667 55950235 431581796 943905459 966710741 847323663 894326836 276555247 577499046 555920644 715233660 299349551 989177158 804456862 911059719 788689010 822187966 720682870 729078025 824849065 970867405 717025679 728705052 779750984 811575709 641818050 724436001 548035367 715351719 219389947 739920772 640054174 915887039 687509622 912953803 11349284 521815995 225092595 672942993 351504972 776567602 749303390 988666215 446854976 658170357 387548429 681881093 197031289 238301831 323750312 375231957 28097810 452388435 454694582 860898115 883137243 979733049 452963987 593755218 781848082 813796085 395665340 413713894 455330386 707114489 434698975 733904392 85844350 119381605 136812018 370337183 506032714 663958185 719507186 982028962 723201201 732014478 579604287 943991600 441905075 912059708 98565504 708185804 720607700 921913564 577724762 674713696 4335092 882172696 629340696 763331834 30544033 841158909 520640828 867562979 471429712 996098585 692921344 787424060 605043272 796085706 284791218 421857449 458168471 649922573 655854627 816925054 143587119 592404659 840283149 928571021 378186107 654020994 85338980 549092190 469183129 907207018 159393893 755380070 159151424 746434208 767887397 984129736 382736140 599873641 563102436 722157851 756065452 897701021 312161821 650287749 274908511 724127418 405675902 702571988 390647636 691880990 607675608 871435106 344549727 689046295 232787363 681023046 831730438 999194845 505919943 657424023 39839711 529769820 249840827 305171004 586870490 984252877 597656027 752346735 20707141 686158405 387207363 801353159 665096858 709146749 474538992 724722312 833565048 850569185 496829224 742004171 914800228 958394156 575643493 837654563 432915159 446241058 474654123 535524248 513634264 768251457 414316903 555942275 389304834 903734420 353990531 882019413 145274300 979842202 393284179 647220523 647868435 802942748 835598034 968759981 254569726 872773422 167495630 427584648 797664058 867556673 759889370 889878743 850480621 944479678 180263537 265840437 153319976 643642541 44185676 752921929 852629866 875269720 309763131 434560942 297713209 778484773 887452494 974550167 723412473 744427875 797217013 991965524 320550892 777955610 255355093 685309244 25095413 790634736 834845361 867600426 424084589 835175619 536973031 550402215 974958750 978638250 566308810 926539712 542766067 806653397 824857856 985295227 252898212 760601471 586968889 842714148 499463773 870845783 300402201 884239506 658219594 708495979 477635246 846156404 68473690 200314737 354203373 430601498 660636157 918197084 687241642 884124745 600984680 975751092 911448817 917483125 593730471 956246345 719406594 769319926 955954816 997488080 402521563 629451919 126001946 526124042 35163475 895682562 121650718 383352220 971261644 975292071 320897207 443903308 723085925 830170868 909298995 938329689 330784338 786943707 972709840 975781750 437475606 469936432 576074159 956489298 757180290 792727654 779840657 994601334 844832474 968237647 455827150 819568472 164892662 538342027 405754802 979114972 475920575 908524962 490868146 961632699 953931031 980587096 998577909 999048530 340511629 438037369 801344579 920801230 122043113 216355814 924348220 977766236 79784575 210983077 484406017 501707496 90990896 858386115 393515329 730609499 714925227 748867705 462389192 629241568 896519826 906816742 937888166 948098878 395199762 419897583 453511678 732414750 628079281 650625934 331275001 340439157 922010875 937380418 660487847 712810458 726543035 742594835 147149117 218425935 335061544 971927789 431972957 923859097 301962868 748080018 22741005 799596500 30717411 431827949 890640626 987757914 333648215 726273272 8689245 791240339 543414551 649120293 95898350 482534211 497959342 850572909 536753469 829312207 52890336 505646984 38210537 532427182 472042853 925828226 997886392 998434993 784267984 922580410 964988772 975956683 256112278 278037277 121083094 684193568 594560492 663717556 527850696 938861770 571092781 967333023 838660790 999856879 832472391 890214715 948106092 968418172 215422491 458641978 471299200 743967672 260885403 740383065 595513111 644572229 544906245 655948161 244321609 548835448 71058599 936464098 593232478 998979788 31872495 134434015 797942960 959920713 140322334 729294077 314662684 455633103 912542501 941709606 145827487 725964267 157474427 727030100 887203084 985357737 349259240 685128243 266073916 629334416 43539262 100351405 829705967 958628481 39720729 986507235 520334685 727262306 466577490 733975883 588117906 849407468 218145992 764987941 423049191 925146307 704012261 888118761 140494360 439905193 324550390 673870737 100863633 400978943 634376957 732282938 418669575 903293980 844708121 982527506 720620810 921519028 674442580 888958245 463449630 887211305 975489544 983849775 497179807 823326318 188345671 990283876 461956260 976825787 568273254 921552911 206051598 671156039 193863308 962855057 12976941 993502390 484899627 955052786 125563795 896841956 454011194 773104680 412308075 844131100 740391077 914984454 643867482 948757053 456575008 893005929 272935531 872729489 292008548 692955839 165813271 646780090 384584983 676525959 504745694 817653817 434564219 555968069 42007421 958999359 287513991 311430242 141081618 195690869 878315254 958196485 557989597 577690039 607595083 776174120 299117016 907085700 875684490 989584971 902441195 929997154 656753232 703166575 407275948 958678080 645906371 833660174 751595010 921753229 376195626 932008699 488093955 925549266 465652139 814742996 5736724 183869454 865623558 919616415 702710511 844131376 486020769 705875937 722947752 982422099 987956484 991301012 116042333 123672458 313203322 586827086 888169237 979001037 621666947 625501256 463493413 502778159 332067499 392224283 602459536 882953019 862157131 877306304 296811606 590680418 729336230 730705594 390063099 715433982 103054586 369973506 517387928 519312426 212919352 462220907 565118841 668912537 362184719 504323193 161572464 857339721 93861186 463140741 501031704 840929148 15501286 367515580 697326822 892952424 357071169 546542803 131014847 965971819 457645489 932046294 933527968 971917168 240324090 347406165 84725501 103721173 458446198 518269780 601838207 872405982 688539590 790216537 565749864 717288323 784166863 874657547 673964888 735128420 549689590 592658816 30737681 348249926 569631783 780730661 345711650 590748216 466639872 791643829 685803081 860519124 582344717 756901779 796258086 843974265 5730395 965193575 416999530 603660715 561074257 580068932 808205003 943598037 675901108 701420253 584178054 770497429 207696885 611832370 418959192 935819269 888164556 907675744 611968143 774688260 47448746 443707447 862360957 979540330 290684681 464594195 360411437 953374164 396631935 495961885 511396410 669078901 576949550 776676980 447803351 860395513 749960718 998448385 651845153 975638795 772896998 983716852 851759213 853459607 716398427 766399978 325137665 980374241 534490329 986587318 19565499 862694545 765582168 812286951 936875983 946722661 870631516 979703209 241793436 305447213 814512463 887035995 294589142 769752700 605329971 861222887 173101893 224104391 771649444 913783809 553803419 655611912 349384912 796242688 10941972 388152897 363346264 497804229 49270729 908219706 519959651 557385550 360564374 938665864 28870059 97566529 658167205 681046331 488176798 580198341 196791934 459864445 187407825 914848553 660757340 980008673 454648156 458377372 539992162 684749734 24818474 130032358 851622312 929034237 49892566 373457675 727535812 937974187 209980562 628738194 270051848 359763873 269512204 993235345 270563139 427129367 49879385 379236717 398653925 433817495 485973672 626125729 667072226 859466382 73179456 804185395 74384963 686172572 57514105 513835322 514334955 920204749 104798357 268837696 750895008 830253930 451876054 856483791 332102987 664728244 614974551 772684081 123874352 149814154 725454534 745502053 528015668 891402663 103630796 924349014 731115669 867032607 528283528 589410446 287513956 483695901 727640395 767653266 739627783 955116685 413262746 792860395 815535987 881729920 825387451 960353873 634973960 845989619 694282427 947163095 451510759 757584134 278795518 325094197 393537463 958635727 17301728 671683045 435287335 498142955 199463012 459896813 414202131 435642211 309176082 965238733 207113385 369364572 812262704 917597319 269819578 309466295 89868183 639728536 698020499 983984459 207663906 949906705 26358389 888922001 253886657 807170740 851644359 950075978 372134425 991078384 617066691 839616295 167491638 783807218 16023548 150040265 11776407 908413224 355779291 823109619 482249263 500495177 867096722 928039714 725400228 999219409 573214566 663933514 748706493 801846843 829860507 873236974 645355931 705307278 819789358 922241911 227371657 960262010 948397883 993146475 527583281 700699204 589365886 867447472 365555051 543918162 163909216 848337256 846961964 914085056 10957355 391626792 905576474 945453992 677206819 802982452 169514825 180755558 558886549 930986073 811853735 831986090 536036187 770163994 540569562 671997318 763613721 782019891 276811313 809777878 311784490 578404323 115208827 732632457 480488685 910026436 693712882 854960462 227872015 360710295 687034423 690187466 183980086 800602552 560205345 727686366 362364313 366026263 431470045 669735901 239889827 476250328 394828914 587617331 101396125 586275659 703636863 717294454 782766450 889066398 285460119 836513471 319700780 895160845 214275376 240709921 581924817 789157713 331722201 582140806 40537818 950249221 240695294 457791085 796967805 819697814 871038511 957900250 283541106 349429673 392935347 703853415 499043870 680919932 138006106 699548557 166323534 670123964 580234959 797005783 586370554 783415243 890147271 921975393 236718541 722829967 597537417 650294708 302931542 802683406 484341052 713174336 378383290 508876352 797028593 888970504 437664870 739180215 62183248 407607235 18043848 184268024 545456807 697575301 225501235 985031458 691126522 976020319 814713401 879703100 890463725 939361470 65406948 236625618 364976491 603989451 409306572 484384587 670166592 911349420 236938016 967593936 515464822 736892856 928637217 976185654 217767783 218272023 859961758 888022980 283366968 848995477 556456887 653856832 946844881 965062889 544829963 565233127 129292012 913369514 123886133 259593886 450435688 651191930 446264093 951088692 185738058 224380020 146782617 935294051 804880980 931627843 334344610 415971243 700014993 855392187 115056783 124721681 742584343 906931265 510467174 842609264 690232101 727093908 526722106 983544215 280198814 292495247 69089647 781231747 645380929 721454469 846811147 982900160 762214187 964936075 62077156 443885493 585888363 976966693 855383281 985550306 664749617 933690520 191605712 784582684 50201770 465612413 839916339 870257222 756253526 783343416 364366589 749444543 557513444 825893011 692954283 916813483 627802847 677969727 734600578 996403858 315993957 704705331 547505066 558984308 79781168 136906234 408717579 447232712 296148214 448265865 666313015 864371817 469814548 687389707 330922268 361225686 221119611 401721343 603248016 678840220 2442462 99825413 220983182 432411523 313061024 422355328 668349347 988418926 45671798 542701712 511982275 799948953 565985042 848923604 802184342 893411530 525828472 633844500 998398961 998505966 373071945 520817395 310415806 510451855 254871894 502193185 639889945 962494381 335527184 365680968 595822363 632572006 62141086 555539661 699709726 791596990 418930441 666009329 337414492 612669651 14036361 53495809 687810499 754698063 825656834 970324546 558418510 939743269 511480670 601219665 466563854 485779671 30891056 323378209 542678890 747500378 705249601 946431179 29307778 211142112 550713817 951572558 789165638 883084828 245447149 307464507 178960807 668297201 174897283 484938320 93025657 317279174 224004867 517165418 655705304 745739445 970612704 984473356 909743262 990956257 173395282 655864302 490548385 616651386 365465756 402608472 900730720 930936205 421205697 571254454 855249401 867575440 603994754 805125182 380214105 530234333 664548712 820130189 410858959 418706008 348772265 789243411 751993195 884017759 672780389 750803925 406722453 582680085 826712290 977577261 57368195 821322857 697438099 728561856 144335421 666694346 714701481 829812788 107415630 623574020 851554651 974653930 912622300 938518387 768627125 959064680 742076720 939210121 839819601 938482217 631113633 712604096 464121895 567934971 603553374 990506205 462621316 546653946 78453145 653373326 264176514 331488046 569209959 721718120 538539763 817193894 183691871 580739952 320037541 412879057 19958185 519564475 875227236 980894191 423212308 810420080 322545230 338651463 331115169 960090892 110052136 298597190 74616967 327482226 296331304 554300974 567448580 850576674 672377365 818596745 213447531 978657932 842984089 951590047 691387917 956897616 70026308 446052129 549426012 851179530 407699369 597234573 649906878 963975495 374540662 549749891 323884084 634808821 893099425 950459234 253507726 965439743 844605701 860102002 810921241 975117431 138827487 608460170 624727371 859418470 93469279 394210005 559246930 922071874 39973644 501212078 787228511 847335917 408534494 946185308 765420270 788212466 463473833 797422322 406139661 940306987 376507433 732902151 280783694 993268349 405428443 885309241 901829223 939072657 618525928 745464265 483885061 635085540 244645725 801790132 16460322 843051016 476520266 682457584 23735084 73966939 232462623 337464446 579317674 903111555 848818062 922142323 769588551 807617773 796066353 906314705 40154565 865742941 684923856 967711700 595505495 777657406 496671374 736647804 901464150 966066846 873952644 955954482 150351627 580666042 131846384 136484644 51495080 272346943 362067951 500260426 408127748 758534442 918821333 941351180 613590695 702789486 936156773 965029871 483195664 660099813 908623901 964029695 222468294 879324510 940299124 941782036 454541576 738548438 825057964 923438318 7568578 422470937 756655812 785985504 676808891 682503137 54009707 833888001 810760366 877973863 813259102 895833308 104207070 690057920 733997782 800782781 891437414 985642260 776949242 910131237 730924331 862681452 668901324 980151838 413764962 673204907 680942135 753977204 830085724 869274451 720444537 996923661 32324449 382206696 162468049 979650922 49156108 685828402 146967707 351547778 900986144 962844130 922187678 942621848 846916863 939414690 574205381 991096112 940561521 977001471 310585903 608282802 177134305 655407481 406961632 579773879 851264272 957416518 256774135 999616760 775912588 799574984 734818196 836647481 384367970 947705343 177818959 426485146 200447849 946178003 181913744 733879664 868763467 879901517 155437596 762671734 228103739 516821974 170450484 513617678 140848710 587497475 452758458 629433660 445273312 631292049 255064969 502956341 505555235 539320542 340359540 824085162 568617310 852770533 925672528 992182626 775078896 865744296 805790452 990148665 781358190 868882287 197133231 418791705 458895237 599011268 162494331 538229599 764734711 954350288 252275110 593047757 98533130 621176672 749698020 949848645 866630733 962713843 467870217 987358827 280489415 364016181 342757011 872911994 58995261 79201666 108800196 113965003 650131526 928625848 488492702 683194444 260471771 885618617 299905352 838347657 184490687 430163227 877287812 938070635 254039435 651317405 603776735 990070545 199520953 246305746 836586503 929865744 613931565 790215872 673136024 882693701 565781038 866959283 152481812 234092728 260715462 398755770 56771587 316425122 691707913 922118813 769314420 929374871 848416439 958519719 178591230 219990601 609271984 762834324 515562085 918792780 487259343 530114693 740750543 799471077 606163436 965459615 330236974 390860247 901242897 919119360 250478031 722558312 453778945 565863542 574206315 800098891 680646655 827396078 575900588 809733366 198893891 425307300 509524165 637666737 903151020 930941306 441608317 951153174 655530714 728859632 204378048 353370706 865147690 886625401 36125773 543954283 184141068 330927795 42816937 99687706 456333144 954008784 634307905 761013365 727780493 823614288 727241950 845936635 635606059 820021333 724661577 843131097 454736219 528225003 783466244 894814630 501871970 933504258 591383464 821525505 262356774 856339261 665574583 755403093 279173862 758010368 389603932 427013899 455622526 980683219 926373193 934727758 180523794 751494137 180694680 361794966 696164939 722623541 394493807 961355834 355758372 882349781 226469659 966269332 202867291 214669784 156539005 517133170 221057889 527547235 629636163 815151897 612721525 841723750 203461406 328346353 166099744 265500561 430019894 663824519 721685472 785785241 268226480 717991006 401328882 938013262 812685892 976417493 654110077 702506594 98091588 154734032 297421876 580226591 559881307 832673795 782971381 934971699 174975710 800781237 532021614 908737604 335137636 689462325 457083919 949037742 655246913 667832497 11721135 541849767 639733957 684412290 770504143 931845176 846007079 967735219 549583529 889439174 480665374 836261069 530734413 692183763 78702746 874081323 539504625 544258809 794432552 939740203 483521170 488394770 845800856 873054916 889819654 969341006 393500136 826780701 601409986 767347362 848594442 887806351 155492923 654147734 314338963 427276190 812628778 951613738 995409426 997749572 454874101 862386500 99976312 311557778 245169626 930567564 842386380 988646138 703593304 749556585 466575663 870396226 198344537 692749680 651011694 854765013 622384757 965247645 969948886 998479078 890024918 916856677 998847138 999563426 208900697 951932013 156350627 688574869 495577949 935884703 45750499 314673888 24175793 706787734 966636132 983002601 492099084 862700914 238978256 509057673 745297558 959319821 371990917 781126086 267414255 273137664 207336188 859717132 349151002 902954601 288704348 431547328 42006937 567989148 929353265 945905211 462608106 928155303 143501581 602008556 841465090 921052354 728400682 861101666 783087168 864051216 757245207 839619333 115004014 204580905 125989032 669766381 600704754 852415160 781644608 948230383 145209066 303739182 500853420 978118664 356161329 778257757 302072864 870260963 833086322 934623655 940195922 988378482 698599792 935015059 384967512 769729359 346010166 940095377 932890904 979850629 236822499 262528751 574275274 646847280 774231333 822277926 247246979 743776476 496990135 945859234 228490536 359054531 507249811 518438222 515275625 997226726 839150381 878248867 207616133 712215584 956206309 985196592 778561138 899078180 669617647 694579083 479686776 531821568 716829941 774890826 124111476 801899335 380492248 987183516 142001688 635836024 962559955 966947659 101093726 562732303 255497194 965105770 255321264 544849249 564944597 567191487 659650391 935092388 185483179 192863743 178487376 660623613 413008657 460941289 944474574 989809189 625318031 709285742 204904135 970470576 157083282 529001187 163650564 678158996 961555301 962945412 882324124 904226661 451708421 959406222 328523052 922495028 339546239 485445954 141002560 335577708 414620564 523285484 965540682 989665313 644690762 922969916 534002596 716366283 836929766 902884879 46534796 980667253 537388433 582126631 847483781 959009610 884541548 976303689 627574045 781182478 728212652 852330567 664925799 867150841 774214 638870458 149309685 167365532 631001495 972187069 760474874 782205659 161450122 425099297 163371909 390142574 980869253 993309355 541567340 725052016 411175833 931746054 667039943 730829767 996273079 999794470 828715449 981965375 41446847 471842653 683588470 801213106 707437249 851723183 463560714 713325283 461420197 672268394 916450621 986130484 665485437 783110549 925722886 999470938 396474972 666842845 723697715 838135573 860394527 898715989 118199867 388736483 85109627 527791664 891565039 983559683 953663456 972020702 595467721 634488794 49349421 645194467 993147310 998084539 938499274 982729748 45314264 182404382 150161209 480232062 663659998 749292945 587120392 950336224 848360044 866054236 600022302 673331975 236177165 837572241 886421125 950275957 123880378 539169881 275386552 375620861 28841151 261732397 279372016 597816285 888194261 963487294 102055592 700777315 859779146 946573362 170316375 836376730 466636145 733611072 565455801 609694924 746755397 841081332 833024555 885131482 620440983 821943156 363428674 516898186 721735775 765870503 184848753 406961584 411874205 881839897 749492327 905706139 119919061 152069855 488939339 652519206 844793133 899074865 223146149 934964084 925506582 987109789 92216160 239722030 569064823 911505283 82616593 376543041 752998266 954044959 623036788 912113187 946425052 989112687 127489537 298304667 680076183 800894536 938871314 975570269 834907243 980221166 420352710 711628129 429305484 621911215 655472660 677370670 649184972 719274677 216367390 832099796 603572959 983016161 890872773 953849939 269114810 799235313 987980644 997881825 918919662 987052784 130118297 510046876 589170995 783633240 380240519 896854845 170667094 613350849 612505517 645794581 892650284 957286299 279553409 688636007 342965417 344005679 777250885 838860067 363754337 800447545 824898768 909698084 554771205 781451454 592142269 834129296 283459185 709818611 163419924 813905169 165529736 519017359 714937310 884890627 948855232 956496255 634827774 721400610 351245771 878836520 698487253 792351115 756630089 764833491 742477310 838621067 524024971 728544111 598426782 666112851 211538027 931484249 828573451 870591586 309992323 484645082 63202199 507423004 531468252 625325796 726358452 822346624 665046544 754741523 888881174 973714508 876999775 945195558 674526346 858325487 195112884 435945577 536885013 726764729 118330240 728396172 643101649 732061533 945747870 972063864 167725870 909956626 927727113 978771088 974710601 989566724 347052283 473535061 757171465 817434413 610728917 695817851 496644830 794096359 689422030 810827905 246488583 615177306 678231857 777548091 565756756 838355916 64355740 183002124 340164999 404299007 85638962 227120392 154293452 850048223 233970843 970588621 131017170 226630458 977297063 981756199 611320645 972208912 565770914 845504262 179163142 927009979 530611982 676935431 764780926 787737185 725588270 814716313 732382365 943727034 752839888 902721916 139154519 262250613 592352978 594663559 710597024 832397568 938265964 942572314 362947331 382425389 84105026 350364830 167333703 903931586 667682746 672689942 938981522 954187973 588882857 983540327 43609611 713009460 460374814 534854707 835227493 996484585 994820369 997060228 847220566 957913572 368173912 373187544 765105437 899965831 439796890 620042628 121851379 418709379 485664716 742983940 441948918 556790723 522357391 888233426 8223753 665857239 709566284 969874994 906723328 964400816 414326763 823068372 723308559 843488028 259080124 552182707 973067085 989403158 886125288 954397189 836729864 958164958 197753500 970590350 827661581 896226932 497954881 878964144 364444912 850217760 905194761 912283487 71338690 651345604 136200542 857492682 581856619 724885850 478000464 995925489 180554894 290764678 508689830 799451156 146936476 268193542 936360649 957128762 760297467 924204665 442827453 625348890 979637627 981722180 731204969 900534111 24793628 724689003 32520400 816977097 832892026 983852755 163238780 591133231 268817072 761359789 853256738 878404357 907617642 933143488 946975449 962089911 343503750 810939090 910526122 940720273 957517660 977697208 692825658 839425934 611260022 961411073 573909728 749568899 642925376 813907810 809998611 814392921 846922543 887278972 986463184 987098566 618694917 767243286 719173499 967660014 807604558 936531225 349912795 837792213 787904723 942439434 662079146 888366520 163220707 503507545 625409334 881687470 431138245 794396761 319779944 522306861 209056699 860621081 308008965 751963524 447361978 783876474 127401160 893015472 264041170 295853631 853049825 947292954 407431309 583567778 599883878 888158859 161498231 237263246 313795455 674795878 275188840 886683889 525738941 814558018 34897652 736626693 938592251 992150938 865493058 961327883 824720012 846915323 145782512 262958541 736332944 750717151 490013773 644782526 419986465 579238169 34692130 135892292 772811045 979749795 968923544 985793653 222199223 858995063 863666371 903800443 316532928 650434957 508933189 919211717 928757889 994062493 549580263 653527096 31778253 789233570 655917600 719188882 712089193 832458436 124050898 636154330 736760444 772625392 810486670 897210953 944338681 948005102 993927341 995093931 155187928 226897319 362030557 928015784 217992266 619557304 369176217 426850594 824499753 920409347 305933090 334636393 496626363 839157263 728740600 824809414 289110750 689341114 24273519 651824841 355012827 844803410 766614361 823883857 833874718 910996070 889931242 934618922 181377285 382071892 303394405 496289204 810653299 947638936 216244294 357155009 627427867 933052330 688628176 966497121 378992773 739950197 542337849 769591434 312446379 884710748 318488416 354367628 407573164 463370827 851178825 949540083 959931050 989058606 702828722 765763453 30286270 596508429 715503220 754628356 306081744 729721942 500042094 759862046 834016746 991130107 184937465 371114893 939995403 982221828 53266027 637266634 810428261 855988478 92618327 877597652 403658367 719128545 409212810 882898822 816116872 836416851 692492942 911741227 694689339 698764323 417976046 879730817 205420845 937371735 205508801 353755154 782720622 945302645 651914732 845884546 671804452 808389037 325230239 629983821 122781992 129910420 378556897 821754463 103537506 995830841 200298437 563173974 751792796 908841590 124570738 525072946 854500246 947369356 113926044 737423071 8692996 153341027 77683400 914025818 20000820 644721865 315339436 370285504 950629775 989571264 724286463 867991517 978213318 999534472 15469193 569095217 465930924 482111109 860204720 956891161 928854121 959689928 249444651 888898345 398652724 436653369 853889165 891040382 432594097 578143625 547788379 650928885 309225871 335772672 73099512 520309755 72996042 889649705 497547892 704947318 580511462 790517915 547423827 807508222 292525832 769995712 111401418 289208232 977731787 999334688 237987774 439925154 84315259 211347072 580205410 728305019 641633092 937028523 112154653 653577319 838699820 890703535 44587871 575792235 310439390 709201892 687944682 979607833 768766948 855384991 56899342 88683928 652588937 962322187 929355006 939973207 692234636 867244101 158332396 712903729 889135090 962827896 983015987 983266563 320641217 645033754 780631289 857240047 381393376 878280144 577570165 749774606 888572468 944409452 852728800 905152877 906789004 939787735 828180350 947293246 998303870 998744146 407505878 557450463 143283981 965335415 273555428 730646767 386231888 488895503 595588246 704902249 934922053 972690812 97849106 654343732 96160016 650844878 887962889 956450934 11785476 191849855 407577252 913506513 327087663 838601543 950281700 984269430 789523862 942305655 365493430 726391969 240368092 896861145 992095194 994716437 506048142 612508374 897612131 968463191 830740215 888407828 950251415 994428714 226721557 595302842 99952470 965731438 947059057 986088561 847718000 943219676 625378736 924194392 243017322 499156199 425775663 570105924 563584460 889050900 822815540 905512674 580584906 713823774 359875704 951386183 428610579 568966993 75347284 993565008 570074820 952063118 593885876 890447383 29512942 268979040 608931773 632294073 731581655 877237763 436125291 834050797 342045104 393033292 389884607 903727459 39959572 118927949 825064073 831464942 402168202 700649369 283458558 511007634 20466878 570447467 409682575 457251935 6565390 419754718 81903244 593943078 724416854 921863361 463777926 694683137 459702859 869772906 248330730 764528944 989359804 989431470 131239689 207639780 52464320 509241964 84102740 268516355 373283467 651278146 452867931 642487506 855154705 914662106 762443065 862809065 342226603 913466717 894975613 953088104 955056688 984732581 505292517 550286717 974053954 989745081 524409438 698586381 331805968 719209862 604730231 667614524 128755739 403493105 761870562 886599519 852704499 894741188 817119302 992859823 27396082 586261504 102721577 606904611 51212158 654947493 534511922 905505293 538154284 915596176 9753439 402413462 505629157 508058469 298494578 615459985 535104062 984550104 147768187 513606057 616686918 743255917 83009593 693006233 159013889 723418026 28769019 916656654 507025480 807603342 572041883 822096304 99734695 189717857 796804081 872085606 39500647 71989441 157153441 831822700 929778888 950472389 906352666 988626142 721826069 914230784 955208280 987663163 194171317 404769659 126181883 884607142 732014391 933842385 430406729 706255078 651116153 754939011 379660882 879851466 801205917 964641311 909879799 914293559 82907446 616274606 523812121 743061444 650995337 725989900 19428945 253508525 605906814 634594534 719032373 821365187 132607566 958266916 220151403 668435692 508126624 522186308 801396111 973550279 310202186 479046285 129907784 940213150 129614354 259341285 749992941 860955398 39657491 359195200 174225528 965216277 505132098 673224072 242287536 367348795 321084743 777550056 307030832 526081792 343795644 724529251 389101346 423543854 299827034 421383793 465571642 580115264 766308565 832885017 387543633 905796956 830932812 865646851 517821023 622290560 363565905 637637645 733103775 849783115 243123847 630014301 432909521 553189334 356792227 780665788 94675989 736701916 313742922 857480401 439065536 947948243 337494025 661525838 951914532 997166482 892552935 979495387 111977564 722151752 707674436 852537948 307668663 391007360 796581564 850242787 884788837 926931648 302692025 693012119 533701642 608088294 407677581 963770876 482098731 874178542 405072749 901090756 939963471 957232762 783424009 808429352 594163129 969203127 994561404 995542905 650183712 790504867 750664414 883966198 289348137 394628373 527906103 536725586 858007089 897885763 77840960 396915350 813468692 955920941 474259851 800832899 917163575 968158184 61829701 768294434 449094448 632478785 681740477 944495744 867551492 928519066 918393723 951819800 678024617 913033849 691138050 728688038 604839131 622745191 288655576 463585837 132019583 233801071 952689329 982969745 257262138 480988641 881696238 972217042 245847876 367569257 569420966 960839698 162580792 291933917 954486910 992473257 34913880 727772604 507491727 767814987 156501951 707208232 740690978 896371424 887709486 945768842 94396683 220965100 83593916 356053056 30759297 449922442 259379132 333364376 45290161 934912374 992562407 996177211 734459532 997368695 429328023 882137968 132393119 666631973 455601014 618345484 751512166 857373762 103664307 629024629 273994072 338820049 698679206 894218914 792436460 898414010 625510780 627135469 670813322 845666741 604961476 804788253 422437699 748921874 976694480 989824384 417828178 663092791 507543262 765351066 51749422 363978478 392218353 928851994 218716902 737614632 902947281 969982324 143721230 629868928 141317639 970994772 58805564 470537675 372867591 954865422 45640071 881008880 753439628 930351205 535779135 721037394 774805053 817588542 166589930 838741514 102528530 576141506 566757953 673629441 799827277 947200776 882723412 954392295 308593687 362242711 463641902 806793655 71667817 581419002 871252617 966158095 208180373 802227786 553245076 888581117 5943428 863476551 568839052 611298952 73551245 978873124 934125444 965802455 979312157 996244440 931353475 993565290 247720468 408262309 698947626 928406483 82372034 133244792 470059820 815706657 910970232 932241641 385840109 486591918 107892492 341600478 149868995 335094335 907240965 983893014 836458366 915453084 697758710 826056607 81772469 752937937 991032687 993530317 971866541 981107068 446104787 953463638 2163836 312712630 299324067 588176849 703232918 966455138 143522539 169513346 51654137 171547336 970141962 996415560 996366371 998522886 357144186 779857045 995234506 999271923 445740923 717899163 840481927 891058711 164964587 611236689 555886140 566569827 704837638 884998398 452814983 630577031 496968422 942295809 619311185 754685224 748961205 895667189 933064192 992213508 837613006 993510418 707773339 778155912 872451877 993707367 566622314 703757540 797365353 939543289 379610760 508580061 342138073 599445752 6959285 279910817 70471870 912100800 861304548 957040193 445486251 718166939 368698311 428746312 327566553 862744201 108736111 481454194 170978344 422910141 49275375 771873426 972438023 976444177 133246742 474284421 277548677 953234930 742377044 828843930 495168572 604538806 150446602 790425747 778240047 882253936 945939192 952020258 491587393 848749527 930693218 952491904 491608812 792192789 912594399 979911140 232238226 704039409 167440773 721543252 481464976 854666134 644259584 769870413 313995744 883562182 782663463 977615684 650294200 899027465 408411431 417643041 454498173 644020173 382821031 818251366 47927648 678765068 720081339 940296871 191433258 892001636 403108083 881421642 459269461 551036115 370565047 802924200 994887211 997006801 705526462 743861840 818936310 984795332 294288593 807531606 768109272 940823374 1545255 32779031 795352400 830322837 314754443 834521232 501480953 599130188 437503312 741079576 690831826 958102705 982947106 984071346 32737835 407092421 770793763 798319195 680516154 784015596 994906704 998426278 663287353 776219023 709838519 926611071 48090317 343483735 854013404 877097804 529065724 956060341 766082151 901008101 760659865 987565786 400756852 732304452 785307857 902446099 889239680 963636515 788499706 898232988 887312818 888015700 37811481 323425915 86471181 825778045 107273917 520499353 855265137 921861753 44322298 711159491 289085075 689312034 591451774 777284893 268835959 670861580 91872850 257095527 892702267 924039981 913668646 953450136 448529814 570913878 875470888 954765503 17490515 895922299 817035411 975263944 93215506 516440415 480310950 956528587 830725903 925635512 479601346 799717545 630762918 870953741 600084405 736969295 289625932 885618998 373752170 903603844 866028287 902406122 63733076 123194822 256304201 883548018 531744965 959538334 317116028 576480162 782656856 937899094 281182427 419841639 787668315 907495028 259270516 451965671 448791411 619942061 678908667 754011398 287955897 929766250 9253843 368549925 127655988 902131096 542010363 773276789 648626089 797551837 781913003 931609241 927536817 929245170 415983883 790264526 277663157 600904145 298712775 752671760 928433085 981679979 647461153 782045917 323678014 698130557 227717980 421771280 272288790 941495461 159277828 614599980 658791776 776023029 517497137 795970191 960866764 961329314 891616896 899931976 674338566 790165261 617565585 791068337 187995262 516971358 641360192 946652147 608176811 667833748 462383756 491155631 64633074 703301826 495378116 755412190 415655158 830478042 210467640 987701602 679397531 723504409 980081692 997101006 72499320 814749197 901149104 982220491 633911599 907101655 415960328 464680986 790528063 873311364 910357239 969056833 999073388 999931010 879266270 933918473 60165490 147929443 10495437 685735762 502428076 579436207 972996492 982673930 518901198 614732299 59723591 576513376 566196274 907218503 674887341 793640496 741788489 891806836 396003521 789853644 358233019 488722889 294513421 728168270 977909375 978428154 580966667 957555440 873244988 901233047 204797834 902098646 945985112 977661903 606645137 692808185 606870293 930708350 271738701 549384827 440950404 705428358 182007606 462236570 780038413 927687496 43525113 185359110 351773556 824985852 660848807 688071850 809563606 816563797 805834266 927116377 888991148 988055053 835790518 894137167 852772620 864393451 991776834 996389938 993251025 993298324 756725808 767589450 479761261 714580163 224998296 712664490 756270619 856056090 188702495 994002769 481764605 550472471 516473644 703626108 175912447 507068275 732711104 842745990 786036714 990764085 494752255 607019422 84438038 118338193 61740906 121870950 209807517 720402693 986689419 991112307 397551286 808692845 62892102 385468017 492035952 987317328 238427071 298379103 19947359 529468352 311595392 690331956 521105128 665727448 338233087 667420195 855030602 910774487 981360201 993266625 98851784 685479980 535258564 944373067 749157187 781838456 599265103 720254625 623773896 904162655 54817634 893894352 525702472 752533491 281468494 912763360 991582768 992085757 145081718 331455759 102497316 738996474 631962956 707304178 315790448 664807477 960934339 970553809 190788166 540104197 535813043 622932705 610620786 889787062 274957456 657512049 511849952 790270910 622477432 701537762 100495281 907272759 162183333 187885587 18557968 834934039 53652970 74381325 617404124 983520774 751323347 956690997 236653842 408977358 435767470 822130213 402337836 884659994 68951465 823236713 278468074 517574770 588822402 999474337 415029827 585715272 167547357 623320953 577196468 973711435 311503855 358379849 332758874 871253065 672742090 771513436 334160999 972252542 243991574 321210125 473324817 846678685 276805889 425244652 521682907 551044613 338244000 725512957 623845608 823516035 915122149 989474527 901409163 949157403 624807452 666747199 395727902 705763674 509647338 722385891 66603002 615379132 586063445 590060011 703599469 713700578 859281924 993767059 692859626 983112855 328432173 968009690 155417818 353853267 403582526 748342489 755856427 894440257 491042067 668447879 61369653 838776419 674075952 715760247 57218010 222474313 235236819 509008387 720622198 985288951 646903522 893686401 390763354 462931526 400553924 542765557 490655101 992516060 779250144 875830340 690555635 800877952 430659719 737565458 819038538 994464190 442168529 479060078 510449920 725616234 802509245 822242348 598248652 773981061 874493696 930738052 117162608 655876738 505560351 547441086 609356388 958968300 377051825 427799812 888013909 980634393 722921222 784996107 151313366 424593708 815187483 882657456 719179108 879043061 411342464 492917379 355293022 651364958 465228391 735056762 914123656 978276192 84921554 112400679 198420213 905163847 538434213 965685908 108651848 206088886 707428016 750651569 162577300 513443532 593785110 960520392 421533551 968766760 63776858 600710237 214738617 309560649 243191138 278074310 500923557 939352473 170469980 420803970 70560170 582111732 304461864 610319262 241215653 739566322 462518217 958201842 125895848 858216830 532569783 749156899 124176240 341811063 829701563 886985036 358909124 786752299 833790229 998619170 317661081 398539799 684361325 965429310 101623562 537385145 354363244 364672719 847760809 998868869 194219416 680141199 645941991 684120416 683973095 813136568 615629165 905899459 790347816 829745950 685224252 689879577 473193459 860332500 475345149 849637817 541835865 603628158 588351447 731104618 29556000 160097942 523679035 576571036 864835077 976715304 946363226 977423030 10667335 829101522 677525363 998059624 921149073 966184759 576361372 955285044 306086441 718630936 941415999 947418021 816133997 817142155 226530754 491844426 940484618 992522575 288227427 393240422 624315623 894935098 857864500 865179072 926050772 969061292 368334406 664237485 315133532 829732191 629934697 861434927 77318726 885803047 485248203 956501489 257423319 565389696 343389897 533199208 939648456 994625382 53098578 476652836 618467695 796142993 130345860 813627128 219908930 418492050 706753735 836981514 704824830 794229232 284043587 738046518 901475201 994658704 449863982 468925021 490621069 635904439 915067040 989046484 124876254 413732840 263543555 767058266 412471972 952218136 441349504 861625663 945450145 948269118 477619728 725180004 646580297 929108782 529323198 977225895 26660988 630500992 765997229 917977599 427795259 598793441 191575045 701270081 848292529 952571829 216915065 562006443 141610902 198153903 601748733 627940479 72778090 162407042 131954577 413296782 277394506 996674611 637447993 780466403 895465524 923407734 966232329 982354638 59560525 891311242 796189897 891073447 212516635 777033018 853341958 996307002 616035825 980876652 46028006 938748315 27323027 78772400 600565374 825974885 701918920 708521875 355713107 796485426 742466099 838227202 426268268 746666635 124852547 657056352 720881546 865123044 742903796 935922889 203378009 770272297 458906765 866638887 671342955 839545577 949987611 980845429 961450363 968579475 449607224 867943847 175288953 613655012 476217511 731794994 778084885 875797302 112075923 969045638 549044359 748303706 251325287 464883378 678204889 799414975 515534347 817767927 291792023 319527233 996340570 999493409 496152743 696283557 945473510 963211015 532953676 870574928 579922544 622187904 549497449 754785913 623849457 748088849 132572348 550847081 586719940 912819181 656993741 741320364 405937471 518172435 168527412 469000088 950595251 973254573 62451888 257491600 605014058 777044350 276246228 441547660 571150744 919996827 504657029 941302783 292789459 434229664 265779203 782744808 178383296 514947992 529282479 811017574 694857315 971539587 970480080 985016426 698903148 699256738 958537642 991029695 552953621 810538567 971770774 973548578 178250984 593747258 791613706 970701389 893011594 895251675 392053436 701916419 145837284 434250708 651385817 942059467 237379016 861877943 979784002 992283228 440106090 718591551 875413955 902675250 923647562 998345153 50944963 770322278 310642043 975370952 832781784 973523998 521568445 730147521 750294537 932067051 928897788 983418637 8120295 897207839 97343865 619624343 596136975 849094277 557707805 750557616 464898793 987051798 576225041 613946663 922953686 974358443 538447222 566332673 895886167 897807016 318703986 831092612 835777780 991165668 727075982 829514493 362730775 551778555 218088199 437166491 973187324 997245100 448804290 683562957 530463170 637243693 46148988 422266672 967718726 996374704 732852813 914192062 654156971 822745108 484760495 857314714 807822877 863955620 332203902 955614667 364539371 857792128 74067824 933738861 178248427 300193587 249659484 321940704 777198953 938391231 521014120 697973838 809701435 889237873 713329132 875034891 270079169 537686377 970012086 980456945 611657227 952723017 707468341 954270903 4747126 931331778 54693096 162759431 886110540 991095705 507978655 873208727 828577436 867344283 438592873 826077716 924125169 965217779 553511469 893098331 357363889 418774920 914856363 956323688 45260102 795552172 834247788 952560910 277211455 997104311 87133777 899337355 893018076 934399063 43052432 128357734 601059750 843414691 829745375 941239866 379578714 555111240 741181279 936411353 181413452 291112886 555025990 869111568 600433076 981463395 948594309 969702324 87079677 339862802 359642025 691033352 414482214 772520806 229379179 609968963 218116905 322044538 102436625 177850980 185490929 614980773 637588771 911313017 581863144 851941601 531645453 695729709 305684524 484322924 934996690 976849377 495455116 987978232 789745828 882504929 150089858 744891803 173926539 652069796 84152267 890065409 194908668 827162031 469594366 638430898 294232882 406061847 457828194 699460630 412532720 934519714 16328100 270494654 836783525 850662172 818770475 890424656 474957771 996280927 313161493 573951661 819584094 834887901 870674781 981572767 614272674 723273291 762735355 894155657 104144658 621740554 30521366 534140394 794129605 980734054 928882226 988137392 660857494 805671826 433442867 986023078 363318672 911063414 503651524 799219117 397726778 689230004 297228468 994837511 886384298 921261684 830608369 873279668 592470214 619846108 476340052 599665183 941477088 948411429 697044159 972590582 671411424 840741872 822336744 862127593 677729338 783379770 592256200 740568981 149751850 887771293 308651387 404619843 690048763 767479657 73874690 915225548 255769116 611479148 701728790 806076995 716532243 977323757 649123688 827493433 378171213 986681837 335375888 603476016 848473754 997519981 544793201 832394359 632685866 884429388 50329011 496962078 198365093 786463798 354590713 908803668 232464517 821532424 943816213 967177730 397422222 989906751 371273991 856752714 580588482 651321099 869966637 886801580 889798502 958114212 900455636 990469319 506026150 644343070 189288699 552568455 47004676 752344774 552375655 825093961 865963726 884408343 952688607 958245333 752207991 852406761 569806311 739853367 677904173 841474373 442694709 863276568 522724241 948072351 559655250 633302652 340149820 673044946 127004532 181075362 520005224 903687140 775190795 889169761 141231338 639075980 900737622 996074525 73002673 930299425 715391546 963813759 160845712 721484999 288184706 500670525 634615127 724570143 111221306 157107378 123497664 633303170 359606059 561106802 273068589 585698523 810088389 976774160 518105442 741068064 144712241 618814028 494263941 978699339 99238738 301435380 69550329 927822070 158442313 490618828 857213121 996911492 448505277 681810537 664789947 768183494 370721612 431897799 583276827 991118945 384810427 892765429 876408833 886679475 842732593 979669010 780923099 878403544 320432637 842956494 565612571 896673947 944927513 958749431 763498328 936445481 481497787 517887134 330153678 824304594 207822129 978614938 247419973 416543948 135959090 768306794 630403801 711063720 744291483 813895075 654097282 989467563 744677292 874301416 276227125 783854493 401259405 607426866 663941797 982542201 201866712 665046720 829188880 969879489 899628701 934269601 658511931 894844091 848562390 890032518 521499153 523518780 913491495 999344845 959339648 984595331 164437729 656797986 104715192 477668643 985335987 987721716 929153172 982350015 669208965 969888927 497903324 753543916 290674731 299121469 198713143 629300450 445831712 533234494 145537408 155448037 241478666 442176640 103177660 686200632 512493913 708805455 364939047 378135861 135386172 689600401 225599016 433004636 564875455 979296285 651790550 691788883 276000139 350054879 72632516 905356327 44556644 608537816 98387069 438296369 78527508 159727530 986440282 990286507 868987844 980261891 609877957 799997085 50285108 559143747 703219584 965795353 548435213 790941541 307482984 743726513 242672634 617730526 121202207 732403631 740520750 996954299 879737616 894396654 156327185 228448343 54235204 943846725 717913105 896910866 440420322 557800092 320046712 404619912 217416062 774980384 450242201 538202712 248337555 716631905 28381721 348364330 878494994 960620093 710054211 729994293 212544712 631675294 892478165 971757951 327082745 629225465 252086237 317956391 765648622 851392617 378711660 875363081 647794548 768446072 878406061 989326433 152632116 247103245 225496551 296841776 930253933 955907482 589254965 738157691 423584042 555298295 859246385 894049592 484461949 734933558 165935742 961879111 10716350 401319119 828527360 862930244 257458189 676905959 476486522 616819807 625089103 893161887 667764238 772583288 994777224 996081242 807361337 939486274 111306157 470466549 723580037 866012818 261684878 874358702 913410109 924253798 714714252 857384421 290218592 385244240 932285687 937032113 804054484 858666238 464253553 520519724 538400306 912520860 740896229 938111567 891449455 937481214 811673689 986646637 681919751 693054795 597796936 832153637 910146032 988818963 326307404 624643976 829414959 937011968 581139017 758237046 183201395 816478748 964528216 967779407 534830223 987139386 688280729 902392173 614080079 620433151 339201551 710273845 163679819 411024610 246033283 846039523 55869941 876645192 249888763 718592146 976538609 993420497 559168429 667936764 348979663 464776316 666986990 808050055 614078936 805442666 32704608 723868838 92754852 171670366 357100399 776186830 284928542 617294798 760485531 985544284 367575951 860834312 302655600 808655910 328406032 818821169 591379402 613294392 938286223 948958242 680439983 718833244 357047055 779381831 979374830 991006637 959500625 993798734 672243940 738286068 564780040 931838241 841202813 933017909 162719555 754245371 181804069 493186449 9826634 758285396 504087275 672765511 126253991 700338101 36534917 866921912 634710648 990664177 825200626 835808577 165985996 444109264 366744606 597038944 447285862 460518349 392562315 664565222 557405558 622090550 277125329 587576431 504596576 620666778 375136565 574225856 147526127 740595587 938837266 996853365 891885700 905761048 386604539 765805789 925860737 981491585 530069436 960428914 653269721 752123201 774556274 826326697 234047952 518905129 932333355 982682753 100075968 229966069 553748359 813549091 563129892 701162788 400980263 568383308 528035505 941139139 652032021 781723278 864104969 896979236 519513149 685073938 439327182 674931340 432686830 847578036 925283179 971937238 315956439 954338226 322219582 647357255 583178949 868102884 715438360 914082325 712614711 810180180 287335140 904226265 17433916 974574327 907388118 965650452 873841961 949118249 377917199 873942536 577294369 828739498 919264107 983414862 977202552 996430249 612785320 696664496 170479662 931050919 616192887 624567592 750772537 957265760 173864731 292467315 816390254 972329349 589598026 770385522 575632515 670269576 816261265 905587584 291874794 712481619 852461392 897160489 578393082 775402754 509607292 663947857 500986425 611128259 539397681 816023398 503624495 639031236 650816646 744904075 984170724 987675010 202728554 659955195 956168206 996513880 93217671 878621570 267795233 553977101 227214850 433105672 796054288 802012735 264689037 750435695 754753684 856456637 631847383 873133781 69806858 244402175 583704953 690821070 598658553 810465507 218618410 343455755 427963857 815972882 561365674 578616490 858215276 924887795 336314824 655038458 435231517 808745079 201961421 300775415 598415957 855649347 392266919 840400762 480092754 507432130 396693127 615089700 35242610 291710445 689078943 750272117 138801429 145931685 761079835 846855018 991468881 992387682 380398653 408408985 517511527 806178005 398803260 578886025 233344272 722444329 903099091 977304583 868537774 904612421 147776819 871285232 955414564 994476560 132764055 450743934 891470814 967218009 255889909 404916644 380800070 396611347 422499379 962097628 459356524 634580904 301464673 950581824 739690640 864434178 647879297 912745025 403309330 690357347 609501864 620066238 777496127 833113265 972505568 975721151 637904009 859464813 625948520 742057344 839655699 964618527 736141460 787535846 665136181 909443696 28035395 790558241 309879278 815081006 740421003 787844990 989768734 993033988 844661310 990026038 873072689 961842698 488268912 574382793 417860415 713175168 534850172 742034560 841173965 971169705 392531932 580548571 558493462 693981070 216644935 228899008 360280115 570486915 838543430 999305190 812076315 824380301 956382589 999933576 696547886 987311745 471993331 794211550 856053053 965118072 988750558 997822275 164952235 753947213 199050671 556236752 557852729 912871661 487940285 847622638 425447599 878152666 390223384 811977282 637388969 923947086 933356546 993381446 368644842 719708976 722056183 879821877 482587992 749062546 97419034 346083956 432569961 636858033 75313512 849473374 768028179 873164630 820890281 883544734 653516756 674730479 452862640 892020286 249844630 829974186 590731154 773678122 369025444 383063741 704839063 910294423 846842465 910024987 250927633 478978156 605859143 695841024 251268267 547156793 397779464 697810720 284541249 775816825 51402908 847993554 367459535 799823020 100781855 855787373 800602739 828155029 43166385 684269316 77185904 333905549 358555903 624639680 997095543 998200432 195262802 398911751 196816029 526234458 333806323 803438178 947174404 995249095 888236287 950893608 849552999 953765891 234723123 700396409 616904992 670573055 496045769 593574782 631731960 842945207 317720679 950733125 70115815 920242170 460595419 539899680 148724924 366264142 953902010 989106599 34432967 534648544 490002454 637030740 97173692 421367440 161477899 808969275 55446601 323342175 995870506 998060271 14871889 451351487 374308474 375837439 937159244 961310140 768233088 839893003 943850371 967963755 609239029 781104932 886409141 944274686 16370024 206076985 949174863 964871497 348771963 702110100 203572949 416455841 119192701 355288548 767857373 997957621 506582560 696275454 37254856 846423060 401178569 541947291 735786393 904981406 327771261 782709130 525249801 809649542 851162661 986143899 554097953 890878167 284173035 923302711 727502102 931363119 131808457 843254655 837877909 997420772 517656630 783141539 346698417 440431243 230019623 618457290 787088906 998579231 491497529 700067743 785460687 959437854 621642564 919659246 327781243 904248379 650696292 988120155 128320387 283327533 824769753 886771562 563646826 592293444 904114445 986823244 356188580 985185825 33755165 218392492 828675672 846071363 385589322 858674511 571093846 652339090 862863410 914236249 319531624 644264689 315622247 365902922 906716790 909577280 603488009 734124134 928194263 982383042 558289447 799948890 242012422 488277978 879277528 947457910 790679129 927639642 254382014 887132977 89673286 795138960 882822911 984547992 461397856 919731915 903097028 978067886 834727151 915698779 164810538 768584859 139100319 906789172 871203666 966735466 141500647 374230899 329007566 375454614 819871206 904842306 333647242 928124537 362362272 410474142 475678147 929909544 904169761 928540578 729148896 780041996 391998313 617549433 809312762 931533087 95194655 745727770 549907348 776539935 30020869 961752635 203835877 645017842 382343098 726235362 62411794 486152849 892622077 935192972 435656948 870050011 226532577 684624905 45872221 823040591 744643919 846000976 690248511 707781589 603992396 851052415 462828816 936305528 383645520 906820362 658260663 717576563 803126143 996844553 402450714 605190512 844429366 867976178 769427718 902417975 952886194 996128196 702314015 926362609 851186883 968006950 37058546 681305189 690021343 836967822 255181238 395379519 685511527 982156029 758718867 790668662 399012622 518927733 927593593 940586105 610452744 778615581 909614274 964180864 167205524 306291083 267016598 746677581 861992413 921295376 374809778 425911148 293657482 957914020 596794374 646361124 667277484 678206717 354104941 396916970 153438208 238124309 313913917 804745472 331803532 524661882 198189942 419446342 306092471 524864766 941912837 979840087 139018211 239636061 219970210 572197859 544092727 930739296 480819131 975423142 989004460 991918516 243013895 990658026 463322050 737024154 527618123 626053619 488095882 699760274 480240130 606402886 777742593 907381788 283764549 487094578 951648488 988578855 354631933 565311899 801754552 905434565 326860599 628649988 996526793 998906738 164676713 985421252 396670875 605967705 424942472 668071743 832093794 842878735 692082863 693948070 932345670 985753977 89704062 415551098 977639625 977766009 987400765 997427565 685501128 774612761 699141198 760120690 16805096 999687069 936359875 956950760 417129940 550226473 427074330 595770627 760005026 888753269 165370923 645644643 103091277 227886385 129539057 170596357 857029805 897944657 918960092 927102830 150873621 559340250 541807042 762875157 769495302 935560560 29207144 307060651 319287699 869955780 323027738 813154033 643097085 880653367 151841459 298996584 328830783 586630564 60982871 964190481 182837726 941317153 422963439 509271265 975394457 995829514 303199336 587429074 271631619 476437777 596749383 831084487 957181301 979469846 467856053 475436799 938929093 979638876 571196997 646708774 322632889 842503393 182112878 646241714 398309787 412455993 93709155 110552361 522833373 535483346 132726633 639550577 343747047 578201300 992177451 995093267 183217345 653467332 415909997 560086393 986941399 988297916 752528244 899949652 991507197 993139677 993823799 995706855 924269902 963938030 410311324 998325269 803235585 859318626 741369220 854779329 102894895 179846242 751026355 774682716 227956550 533770272 864894159 890907147 637008700 805692720 117474364 197395490 392189647 481574107 434374374 902252986 161074925 431836239 385399687 539648145 57641340 723469614 301574513 609390670 128425231 468516574 115241273 820726306 783157130 899336767 942373811 989267803 385186294 792896572 989052300 997465078 627386268 825330011 709794995 912903318 22441546 294506076 892950347 994098180 40735548 100583126 813670635 831168276 448122480 926988206 928621035 968033889 310919715 945830733 315594391 560200175 662006022 921321309 846304823 875287856 624029427 850266478 399457218 623801449 253899085 898891949 722648443 796727166 623556985 702238033 863656488 901519166 779711500 870883693 968996926 981856985 545209992 865284565 246832583 561338463 96091806 721433995 198821875 957199131 197040670 758333042 732343996 824364700 902268571 939209441 965695639 981921908 431124116 811171740 771550892 856082172 197243881 873885474 715040097 857444352 341214367 726502650 151033908 458091871 27163878 707457765 765800980 881494850 211551911 288690518 556883119 784020162 210249194 904413670 26297152 855145823 476237514 876158781 995411249 999546561 550455610 789363911 569267447 677111389 532740319 907052784 472994796 881729284 648505593 993276433 302626655 874656786 668947767 767488422 713705559 714366553 765263489 830447129 143242074 538044579 356613165 463130493 900953334 987224879 742527646 947991745 536552952 997809571 478710055 986418128 375647337 572342629 956350414 993600244 754302026 824600454 194226048 685082010 640689218 993370773 807891082 819134267 932742114 961709995 315496198 620174946 261384311 334182875 390085643 832551033 125824949 326710434 934754061 946239612 544204779 698908544 717987916 862946369 280375637 512672211 131175098 369497121 70543289 786778257 956397941 962736258 635752547 939696473 252184744 882819282 645650590 912164087 263831243 798658526 54928253 138743495 920781781 995661829 955288066 974456707 527963215 883643548 549747399 777446767 279656568 779657899 434929734 512269198 136406672 717859382 162054857 953284655 187799285 555102839 8599664 241540571 58267048 830373818 796061695 948737066 360626789 898920902 857100395 947831173 53995319 355389490 287110290 914533523 515964974 919427980 886492539 994991867 959556498 977792029 377211918 670729450 509404800 732002623 410517213 440459424 609925935 645637307 123045502 565532493 353976760 422563098 518618142 711149113 493966425 512192598 171996585 961004065 382623818 828691526 481142854 878769196 755100285 984416120 154341275 452023750 501747379 710352364 240232035 999629933 481902700 553317344 442575328 992494081 469191022 748943739 270946506 951697853 32820334 219518235 192358041 558685658 237448883 614029409 119618229 504203959 527360892 839019296 54165313 895359203 964543255 970721389 364494325 596003475 400786133 922143947 26800793 639734698 66645397 996837234 242838359 418568525 765312257 878220436 649187922 780352969 126940967 252057970 493342477 839251192 56613084 763075237 189160253 307962653 512569749 705206480 252130434 737928960 861704667 896666653 145431336 436303455 551837021 727044235 767353159 792535295 651162154 784323713 841542527 994457684 633949569 710612016 398574141 608153414 739731211 958693813 223947637 425601801 602578420 986796255 81632759 817504928 76731133 727909329 190375882 377260300 773419548 816656553 44243471 271835818 715378897 786335838 944984366 988850796 828850105 932797842 634938297 976847520 447320100 785042751 44386637 756790376 613022109 997783365 503337334 733226557 560319418 693523053 570421860 668025707 106963516 265266662 671168856 818199575 878762780 970702250 769415605 914856178 908870957 973925162 573984889 702588539 345057385 674539401 396707776 839432299 65535391 299149451 514215936 984094271 289227793 702130571 102928940 721827919 93697832 888748657 795323895 814127511 347395211 595768615 286225778 392030048 909860154 914089903 876866702 880149526 784937922 899627965 454832972 759097026 699738960 989824456 581365512 835114683 556473480 925517029 967881288 998845535 583334349 817998033 809867910 842824603 518523333 893625306 234473293 992732737 505232604 660456537 670109018 929352287 89233511 433356895 274386220 832210358 697531822 892638794 551420898 978285472 418227855 839118162 392990068 908078327 812694161 921140258 804859002 917658219 712994196 765865659 839309049 912942381 249441054 692565377 606816271 697620581 472070218 640616346 560001664 800603356 227035536 414386148 24639908 545748091 43830717 182188543 992778123 993806427 216316514 434789983 843545853 974295024 568901141 784216162 832361998 869288432 82647974 669546249 218669643 240903859 176099554 733324040 380050537 617485698 552133064 560594734 848758806 871821878 585684626 887709468 850925252 968019408 147936681 522937002 468116618 753272521 568209616 819511039 372536503 588485314 356734223 872947600 416816577 431748399 545364331 986823767 674724791 958522285 105332558 710600818 145706450 879868315 799241620 805720332 670625407 994870177 212350225 395469722 165959413 293225646 547968404 687431749 231041036 608093241 624599335 823592707 757238653 812473968 753371033 956703541 986439789 998880801 767131641 782365013 941925503 949210128 337383421 531307621 172864449 693100732 426205103 952831987 77392401 195618980 814108375 927111400 199436857 640354220 288656719 663075418 876827409 964394794 294154569 759442428 99141425 374339129 370107180 422509610 70905142 148159733 985209402 986529130 976009036 990961432 958304944 995401560 432231774 549767930 408291314 766663042 919342481 954120874 20350501 966784190 434962566 849705310 520370334 528921018 198582342 423717368 291984881 769452119 644501679 905013658 994140028 996972390 321704324 539439188 602838687 868782828 495463915 614449075 27462621 353303087 422092096 997622751 757664002 841206875 673448847 691363639 51409306 589825528 514318952 974979873 611080366 841199037 920842079 992563894 87454374 569316129 480235092 722878129 160044069 501010307 621681486 627749208 870231807 999314441 424288968 699853640 437457922 865728231 806027880 867239950 24334480 908633385 370145551 529775951 744821805 983683559 639986840 712794067 977162623 991777719 137074605 663802567 420915922 720006859 814298337 902092120 266194817 926137319 686361607 849323577 567229947 847014055 501517474 765293630 213048833 561138071 126813309 920713732 370150410 524077937 663479273 965703079 657578668 686982950 891387671 951333590 395161690 600595834 74526316 821003868 857033069 942095549 727306924 855539710 25886209 966893499 439722420 759569043 674042280 724044784 181919930 605345642 867560369 888942682 397743260 461968366 401037369 457593886 548515761 598828325 106790278 986474245 101544839 691121977 281719189 346785772 710090231 922978721 44740585 834058679 979889107 988402277 394331506 769263352 502798829 781449998 272404913 650979995 491990016 673032960 806016510 897796162 511500070 802492634 327518928 590860202 616971732 989489321 359911067 745813103 633839410 879185647 801676191 895487168 662916052 785396189 400540104 616097872 182109210 817644745 123560123 313037668 719050950 888944384 394583624 734955446 893822278 915549448 652827492 716645294 145056400 732207990 202444096 998558871 821623560 829442060 647138317 959381704 843251196 890439911 571112946 645716662 820109666 924671350 955491073 966768965 999997845 999998859 153369220 253397566 635085321 813045366 725651634 980083415 660722272 696112668 39879466 496471865 71293094 790429001 689501020 964941031 370289115 697658459 87023709 678359767 516349021 935485099 917158403 982320132 265175163 773441008 973879139 990922638 986514775 999072559 667998247 715283088 610517835 756252628 656200328 853987627 215146638 229707600 975710678 981745290 827751315 914569293 403937702 995907506 717838165 935009659 612135177 786231362 177079092 194020828 395489493 445589612 679323996 700502605 223836879 867694310 108234588 529887177 608336640 660615494 248962679 261259626 353496177 394525290 797644258 806127938 846063059 865192249 425456041 698536505 152826212 767482219 712741132 985317294 52390637 576725715 568510911 877613223 326341686 337858365 562299257 986018900 372365876 409596693 302877371 505785515 784973764 974475870 146683933 432441228 923948632 997933614 732582922 892489335 99374268 404292362 381260265 721398037 556713020 885390309 221518378 901959284 450518048 520599998 784814459 793826635 155311084 488475752 915647533 986566367 987231769 992935760 782619847 994193411 774258661 910628653 779323268 818397001 728123624 820988304 983056356 996683273 126703651 625761529 446887933 795267809 619975439 690500800 489146197 966689322 883119828 925074894 104252834 107593262 647288953 961732670 986116192 990736801 959883950 975032164 703908558 878824375 849359709 972271017 528328710 594199466 78638003 203972832 720389073 940006814 670497063 835026342 378619849 930432344 308819869 593462614 485598479 791927009 841477905 920152589 634145145 977395142 4213548 449327391 388755701 723845943 941147987 986949939 287401116 609182021 622011372 664881766 420724786 727363169 726527908 905118668 373971528 690767044 518354589 807181738 973999208 998894543 441531343 504831234 130655961 652570997 642130217 819131011 822382803 915599690 195989580 299373290 128498597 493794101 67626464 76594193 141020386 573584015 694425396 732104937 43557629 316166929 35951890 888026351 164466746 641948639 577743658 687649057 514624387 899980930 682944650 702958064 704927265 735437647 578161584 704058304 593025651 997456414 243077678 401201300 79030721 772915344 209138184 808843995 24252375 96751328 942546024 949651833 721164574 774065722 682120371 948829949 467619702 962098763 922292128 969821408 992301045 995712074 251112011 972023426 442895051 685549164 414756009 599737420 655275887 730172012 66636450 607421541 573780118 846857920 71232383 774238048 551675871 795411183 277404957 399248699 545220533 862751671 452572376 516018009 338522507 865054457 852370607 926345724 247931696 969537415 317275676 649132030 72497018 379257506 892958523 990199357 238737837 895494863 668098650 988945641 835017484 859146707 28388291 441322312 272574187 813167861 765318801 907404850 212994709 773925433 13878489 869615654 317500721 625301716 755888834 990682891 487082602 806122425 355133933 893268684 884903285 984938732 399884721 547526805 882067890 943224572 587021657 889709731 977093457 983869413 366090484 726834007 402997917 788959479 556085484 894234087 740823512 996375345 998927325 999871028 655737150 754932533 505404556 845681885 488926826 902818670 491814097 745733433 983482384 991795679 256863213 616993325 38730192 92222933 389611007 804404548 230118566 514937206 277205878 768473894 877162998 936677404 498271116 764924658 556435978 817142004 81790432 466763936 723974215 809595349 235407121 844177457 129660005 940426221 59754781 494730050 898244064 973633681 80581438 824775316 470439403 677148866 263043830 284556445 744297329 990103224 233335663 239877238 771379797 977969971 846805746 975371830 545350739 973796384 24378149 315720135 832592039 856742394 134659320 518083852 160574245 297057505 29489235 311439166 310941371 918662160 755713120 999941417 729148849 774866413 33980294 861780093 903242022 971087552 551416668 834440605 628508509 800820909 457452588 727621138 751729790 858889223 945897914 947767496 753637455 989455449 212121429 704147334 177719951 699580331 85936359 416248572 260465189 588525004 509313860 872055651 45242959 812444672 86397528 976645094 913720358 976182714 343644065 403861425 900934221 962715329 45605251 311577618 60981943 467888694 846362657 949703671 337967196 431419377 946328617 966565378 747475882 949278273 219423461 937857059 220239877 981439622 497506082 673759332 217947651 358353174 601969646 871737649 664949008 906797457 198047616 895629104 553534785 580344784 729297731 970513446 55133579 622190656 694879777 793654474 33657483 381658941 449137291 615620037 313206708 592190004 975458063 993285383 316843116 869016546 119602253 525004695 515302479 954060551 434381100 899972066 14523335 454980792 888715781 951816479 482971164 790644004 197681235 556469663 550644263 725535421 566994740 850942100 484230327 562770022 984639607 998616689 799671659 900070841 188871756 862558723 603896150 863054039 681323648 729635026 838158583 973944136 988433450 997449653 362070036 841224516 641958367 869736856 903787246 984710703 604994701 913295633 597595641 963366068 119586167 893399053 220704592 379601325 881870959 927713023 284380147 486963642 227052019 853857697 92099403 237510132 416789557 937272199 317212395 567936916 947605479 993624849 112258403 481814052 943479683 949927339 651394096 863069585 560256317 593957022 644816293 728571331 416824863 537210966 107478961 826606914 623179351 879944303 58225732 363424386 164832493 893291166 787052347 988689126 636036132 704462993 167905722 921626913 577934257 671086677 594310186 936521194 646962035 982480006 360059865 940948339 233525593 634771322 994946130 998116228 105480412 860093663 57625146 734867615 886048969 963268751 950080561 998844515 893813656 959114562 782496984 899535007 277718153 490649956 417885268 916706151 200934820 242986555 271347526 481586662 326527804 838960621 587513879 647158282 661358468 819231119 247873989 319215381 974933438 999235179 171265684 668653111 92403233 664094857 360019398 603008313 462027330 525887984 798904831 816132196 45997873 301512449 233635757 585876158 249322374 350808563 278236542 314201807 958435889 964752868 51060591 313246417 764886070 779338814 350305766 452920271 571656272 769992172 782139813 821425301 639189224 818170322 339566163 422242622 80382546 633834787 266340772 898188592 370022422 384295661 398694683 750928222 642166356 918253022 558073216 591739359 281756462 307986308 842376848 919758713 434749036 980029669 22218915 973858324 806352617 951538806 820099091 835353769 473587669 550473826 171125504 837575131 303999663 846832609 603216054 991448699 189107061 928459122 856250430 958129362 603273070 826060047 746976542 797032761 79454725 145493602 505832324 518703937 216797139 909317742 479194311 810103348 699065428 976469989 642875122 739783351 227005570 413898880 580411095 903718056 332404312 930524207 990338018 993993090 79231706 442276583 840901288 940959844 295063667 646510385 932787964 979346777 466939681 843242372 300434713 317866043 401841130 443835739 717235002 818572273 476399262 492887628 542813147 567350062 677804277 786117664 89522426 872268998 325536980 786505599 423015313 593241654 679478899 893135420 503892142 682752020 362191566 787996056 717715423 750453131 144555050 939632154 553793813 642426867 125033613 722233295 107324577 326281666 497729636 822575131 791130399 902302860 620216202 955122739 978348972 994457337 955746 789442123 463111866 550269088 34490432 65461074 613032372 944043362 789931497 791386147 448266562 793474350 123212412 240760182 112343551 975131919 230738082 236119517 74756097 475566682 934132907 955726461 378942298 847629598 38996393 696381943 441199145 567700348 112100488 868624913 310084514 871013519 285387662 650654239 735477859 806306784 467954593 787889463 107911778 170316377 415172047 501590586 790658236 856256572 595822461 905032527 125593323 583636412 968453836 988516104 431148555 841785371 861261619 948653704 812135970 928850128 379720544 731962361 237823671 996428050 299768339 642920826 410443340 649353063 518192148 694367872 695908253 916436155 565639602 609215680 583942910 849883487 624586628 671251181 165393700 581330101 824298903 898261213 75649097 629767722 101560255 227758384 562571375 679951479 39840237 787074305 786525887 870926561 248135098 832260680 218244018 532193858 396274870 590548085 724747577 911753198 371727349 938141740 374435427 739705376 296669907 944811454 409780946 985687376 124354804 962919129 599098027 744970603 80157536 149085526 290029884 986341996 401699118 479299480 985995484 989118644 695320915 827102175 765067818 865305708 876526209 998587390 964894894 974240592 161869517 224366447 486426849 535930754 830714910 922966753 64138553 846237651 974473147 999437055 497998662 578608721 596490185 838443720 238815268 441562161 64826439 326894304 407595700 871604383 525947586 629074873 247082430 702926718 148232693 918529679 129885071 296202331 652543284 825209068 321421827 566463832 733702181 877459171 541760674 706054852 480529975 547499957 500059989 545673663 831423774 895836337 776696391 822603224 982782319 992085443 406081260 516858141 599229311 961311204 947480542 952309544 610022469 893134593 310472937 317227478 912720663 921958409 38995074 199524513 563127669 894060351 402988456 800951016 321701137 456664275 88482842 815681678 713121994 925059645 586254135 603356538 548048771 759915024 955082173 970396453 735118262 886702281 39024364 424417589 142171379 941355566 92444543 347272054 231578177 367140759 979921387 993452938 528320064 663458950 353963376 841977204 499190597 817750917 466752469 798829935 742354435 947430414 231494942 593211984 782859525 989666533 112106994 400546054 106048839 319199261 319127027 726421620 809384021 841041287 101660846 963669110 413433747 687260242 898893425 912319420 371481697 405299779 349903994 833765018 599437632 682192630 424584029 930113776 313200433 920687187 970972165 979535193 583929053 864935462 398805623 644685668 168812461 631505785 474485461 627853582 669549318 769376814 388491789 917989468 304732468 464815902 469477732 945020018 427724844 690127531 89474158 929758944 562386724 944602179 555329435 995335155 539564909 960168032 791511132 796047254 854010081 868591843 292220648 304357578 39492117 523751304 93244406 176370393 353548017 852724057 738887224 952452698 399408818 780606885 737565222 915458120 620285002 971090302 378346262 708445069 483472886 601892486 412706668 938837170 464314315 925325977 619489370 917596207 696305955 943150751 261415273 863136339 20403096 42167059 481014783 507710597 194478078 421347411 817429435 854347777 145223688 198306871 704399676 780686820 993000980 993410972 720449885 997036022 234613824 450884599 622522667 692103060 670773544 990578970 615327682 785406210 322264254 974248253 421062169 765937182 51239659 952319738 106170743 482527061 287759083 828172510 106718582 709810402 297648866 989316373 470495520 924233585 591248889 638937970 989784835 999455305 322295678 733188970 590727473 723535900 609733326 613375115 657740579 704155483 643605787 713410381 455390172 956760877 484081337 955087537 605448382 841349587 730741252 830705328 413597452 640070448 882829270 930803478 250136792 646808029 44844957 680319232 635912089 835290010 315965648 827415741 421879507 646584908 305122820 873578084 549580564 995114719 832429433 842065452 410064542 876325807 297750520 424906498 707446558 938516891 566657976 685732323 938790778 959224869 337170957 896813647 15381090 712700919 517770860 850046624 314799341 681913483 736185232 738924402 182915881 904504748 50443914 121848948 711521284 744956088 843535269 882121836 442860295 443039825 678934021 736077181 71786917 721140600 223977325 544318795 280346019 479734451 502451624 718927969 47070449 420622229 606167537 991116571 73904706 187851686 986831109 987694332 658509540 726062641 307157125 693052604 320182429 464827181 73294198 113387632 848547702 950128536 45764964 48221088 473340656 884482149 767938760 900933146 34440707 744569149 461203885 972980035 689010343 933075896 391179258 760213367 776819708 825501413 437592071 761844258 119874511 605996067 481147908 954985051 730912097 962226371 735453349 787375064 899164682 926191883 91321416 749686041 819198210 853458707 915941039 980658662 411949978 547138530 710170850 989506194 961734787 962235742 534877733 842953627 277072915 702432744 588261938 738672584 937912647 954435282 244405371 707561905 62897562 860559703 970829263 975495663 331300104 534025980 848441365 856868116 309065214 558111976 623968814 711088466 105825050 360402942 647524788 867337900 851311063 892537090 933048667 977227644 191160609 431597111 552356127 778831092 153463444 992938759 114642741 723569030 441656508 766955565 819076683 955025715 766067645 957286771 339377065 560500913 598241393 674143601 282417557 634565174 441501606 921004532 896450160 927997500 810014859 938053917 877132116 916949239 271269962 347891027 856516582 921503472 715808929 768145383 790011533 820009936 626835598 941357007 682574678 775373150 597616978 928849993 501763203 636790189 722729621 782963525 180407121 221609172 865171092 944711293 350524857 825022908 340656554 955592934 650243529 730710142 696313775 890959881 943183799 954709578 341356453 581605625 323929732 599474068 397607190 811045849 482744398 665302396 401880250 581132979 277512061 549883842 821469435 965788724 21920707 194415223 685899305 731125600 515191493 811981208 298402603 850699109 520276369 574355519 210879548 654532949 31574777 871790868 53349100 79929200 421439667 813012466 707223903 983981754 269076894 296740162 627430674 678112216 22237985 175630499 513040437 574220736 644586704 663082483 879883065 978022888 678945810 692911161 312243767 423818782 288121046 701975492 621373918 653425836 314114058 546059727 277709359 695553913 665567207 712378479 696444582 986033316 245752048 874862488 33041023 566650493 143319687 952522373 448538724 474814072 676509170 912161573 226594627 928038754 966126642 971364734 312330942 805829124 933341402 968537950 770973722 824192292 282410072 753011805 970542823 987026256 700129779 910121767 33583613 257428951 80487896 404159065 333817327 703369284 693089438 876954441 776483081 892200888 915477857 987273815 983397582 999578743 170796037 497607028 381601801 593786265 665009889 729339649 988376648 992051569 806152924 958678264 185134056 235230788 135987419 362190643 830256459 902573241 903720971 984993984 283284558 480809238 957205678 996976527 878762513 937952334 598032581 939544630 217308009 656192247 848006330 950931029 494464255 921953191 560852641 595932237 46877949 538366288 832929282 932663762 821755352 924168512 907212342 924584315 261599011 344788742 949207510 990300741 462096167 946704505 23600867 337036734 80639166 244375622 639856314 896873024 175477863 486181535 794799944 947276841 614491983 794588363 99511344 745846030 652359271 883575936 273312798 451751294 829006233 833832952 716074294 955434474 938322968 942790676 900757808 946871710 103577590 210903443 268621745 492083523 754287155 827167098 930660582 954962859 119857648 156861263 400409927 597204662 889390307 930010983 651940404 652833794 734431046 786334109 943982084 983775940 181258213 864399656 929893124 983642057 640473399 753343879 576872250 784111046 84618312 778296085 924763296 967712910 572146575 976456198 614356724 878849199 861762979 920175173 286498792 717265727 519465663 933630976 153685764 793896040 431668645 681142031 624652414 861666191 759572355 971934713 897527653 927035376 643691407 878840266 318556272 404443330 316556074 969328826 189131762 515056834 641085912 997376905 276370475 533268525 752916709 952626190 557314185 586185039 112985626 880345530 145036601 656546878 266120271 662601487 649036954 704382552 570695587 937822548 961309398 988910215 216993068 290195201 495473386 831325002 975203984 995033884 398175301 408562756 830514238 953655966 14549320 484535967 940831933 973176498 105227603 367983412 252344614 344952613 161435756 819819729 604560898 838133120 392771390 820874725 114504211 270122961 246973432 911027288 287657215 344816099 385456811 478507319 832831697 904572393 265845878 834876552 641853159 933157269 138663534 857430720 156503301 776941595 972762927 978877687 976409585 986710645 791373434 901463027 854463595 912542942 874816986 931479693 82458616 172829793 205010344 703379612 215752866 941572194 17435510 203443266 632515391 986831774 221286348 864021535 449025862 552922218 542944400 639765499 291647899 394813930 904811612 938459983 501408370 938889325 88106274 795305519 158365898 404550860 915893518 977837355 764889979 928876263 972050457 996446396 822827594 949459842 571591317 978218951 430266067 957746118 235276388 302728122 593668684 737492097 714914156 960149160 314891112 512062439 975554051 993588590 587214123 701499091 102283116 383601204 656869664 805225657 38373981 50176366 286689767 447711019 534743298 600808543 439022221 439289420 97685785 103473615 771291761 884968823 150733939 746957766 817029144 833494707 505803307 927489155 7180396 39998422 641163014 973463288 436651778 955375804 343290964 888666506 15328685 803826770 416173442 916363373 471416202 494950825 930112690 969549469 802088506 836553440 674965622 997102150 293634226 899847667 749527636 840894709 649519490 973944377 373351924 411694615 237421363 592766004 879170487 893291686 866112408 884742074 799183791 975015163 548146543 688299604 705727562 723591880 463155337 912596977 760141480 870694746 922318849 932181003 506362168 603738475 310937177 752341992 468836082 770699512 300067205 346166905 435695371 614527865 150576135 413666320 450083803 487084880 606422888 616114660 216884321 243432114 88724891 91869494 969897711 973136292 545721402 934044851 897647657 993541280 419231841 550445991 821599612 952964021 927238643 994344415 66774918 573255743 851790629 886554060 68505664 481243615 489100857 629940176 965992625 999861425 706224768 837586761 63504869 889987765 913220526 951689869 865504191 928384098 85712653 804606909 463649561 771096150 107659256 990164609 798080554 896651881 662577704 701531010 471431162 538847855 846646649 892819422 504266826 568503872 268760015 994233374 619044719 704438358 890386138 977926995 899546493 917540414 242407282 665677416 347977715 753990697 308464952 727178469 102513551 180224777 14184069 374425675 324084430 369376474 724579069 907955887 981533592 982720783 108708338 351836074 737529553 993523113 85871027 582164379 300524778 708836827 429613200 579731058 414120514 551746101 243811844 500736999 491836183 841729613 684351332 984878625 972211809 981031353 465904406 898151119 671809532 906717874 563771814 564662070 473599205 499204599 262052106 886553572 187161885 266397293 533770887 937964129 842364959 996768731 59972348 412709438 50862627 729702231 560795578 935589826 448917613 711037800 900231534 992386261 859395512 880171742 259536406 755231563 194788575 347180957 40315690 829429981 930544451 940412334 326972079 394157096 689713751 941652063 776160407 840862733 96060887 312672063 450871967 984061714 494999126 900378928 253260459 345185554 154444369 961988377 466814628 593184269 379117175 817118730 31194100 408260536 253299124 622305703 661169030 854744302 351871533 608736718 376577162 557183809 871290853 952997474 492781292 502414089 178134474 400969343 317585588 743277401 715520539 899496139 566140988 675212288 262615382 346735885 696023915 865897517 112928315 921894229 765165057 825228180 465163077 829298192 147961879 887820601 896974751 959443194 653493255 710885817 306330924 918654719 585333260 746148510 612051755 868383051 387404808 952212074 899910922 947668617 789579020 908616747 808969402 928921767 460178266 771154811 525881291 677338941 504368810 865597402 326464260 594956287 399511293 714651948 204473268 943869512 809621028 928041313 85199759 944412004 716455116 963061843 41942830 173290970 362915632 678655680 362827859 466593133 567029354 813051151 489320734 644476989 740959418 972305777 26907548 591870496 346919867 792114785 276758745 303101945 510063665 556940878 247054672 653815451 729099907 773375395 544134640 909777330 641137693 689809748 733868626 987440742 337143685 798596918 995135859 999375464 271317198 953810528 972061268 977049109 666600936 935877161 79294375 419366470 484029071 493798188 365374187 423521401 727245041 827090016 887989048 911144209 760640741 990219707 507440013 878727968 402948857 611469774 855685135 913531315 415836507 496607787 316501801 933566079 970651970 975138702 325230233 548277556 484756447 604185996 486242778 676038096 838475888 996565032 841517782 888726363 447979966 505301421 963874140 986000597 521189842 679653779 584914010 893588832 699927180 819452019 200580757 747251450 168114199 452240214 583076378 631878190 27919952 420039886 446744174 805837937 423849031 704659206 625391914 799492707 798704444 812822789 32852237 412211571 410811836 777861919 625070049 632650568 86319001 299406445 364128110 825652690 895480510 975353080 979011966 995901807 128791053 672818044 101360177 811037230 411159966 594095285 673947797 974161085 998657121 999960470 685302808 856836991 758605741 830670540 760215453 979021421 187309061 416569263 848501210 862384934 439668839 560894045 927038654 943842779 994052049 995461489 687602065 776459266 499977647 948545909 673786692 943089673 749431669 873793984 146181970 706793826 995939257 995957694 574900514 661254746 896347366 910658432 405088458 930236525 778957642 797174281 605382003 919136147 319887431 846213676 661305280 682842656 867677283 934577272 430910746 793211279 879416418 932846350 903491985 916446465 734776475 907614703 230935945 261685859 624878904 963751057 198857084 282446241 37438992 638083897 196288839 588283830 652964634 676835315 166657810 351065392 306163277 329242218 720736659 820108369 798702277 874595744 345179412 942368637 100511571 217104875 100038617 536637060 613589998 917245711 654493124 893625054 930202360 974115820 138404458 412265751 376926573 441096445 51146675 923546855 207314231 258402274 824228153 887041495 322619180 708376939 900694776 921634857 894659215 974725793 941814073 957845085 11668753 480458028 54522381 862651952 263941964 561185900 432127066 779715827 35020731 96887824 730019038 999345750 772470513 866414179 624130488 947046796 65050532 243314130 141826616 882863270 283719780 376218019 969422821 996442025 371102151 542760188 504617181 793137625 265316841 877139804 70296988 847632662 428416680 578326921 196586130 808375486 926483026 930774078 309352722 874048455 262246887 346230424 981800359 983328925 907979522 941751428 27618327 189814567 754752129 917597239 711512110 965264787 797968168 892541803 980376212 995449301 379338310 533861949 197950043 488759651 870903540 894171314 102125798 598245079 842779278 972855590 434021543 938922714 376851691 651033329 133561399 357553523 334003875 771163243 847173631 951974702 837407732 890805252 126822178 948300573 645020553 894206753 900946964 904499448 918254852 991797222 351698869 701705923 405730093 944665832 574060180 918244700 142753688 686314097 90288280 581386391 367119120 874745364 855564039 910968036 238648048 633531173 12047600 801583091 960763308 982939332 615815237 910470914 450071269 956562213 657893248 952482853 227110536 351418772 605270969 943932829 879001332 908400207 710138254 860251363 237853158 292116238 948915488 995688810 454233681 698346508 954698846 992751207 245243965 808036781 703229623 756967659 32940027 608101405 41004287 243717862 891137060 941842654 757899034 825676830 992944543 999876393 497016016 545763926 361344696 883345237 707216988 757516280 520977209 535053045 274937769 960416944 795478591 844179464 331116298 504140820 167804149 860242317 753568863 905281065 543655934 949501114 322766894 469256182 945418841 971814704 244985560 816871731 269868254 355072689 426627617 814157909 533542985 656025798 636717192 643842892 221541496 456678875 975726079 979253561 794563909 860177370 730408993 796793830 114494383 305957128 319410300 945852891 906500504 909137824 816383764 943983576 437585561 576130525 763173394 912229888 15054044 436787196 195450105 399522183 243548855 458353905 583987413 632867837 177829147 928015014 863369272 891690015 259466434 432902597 57601064 116561020 828791697 995330696 388128686 576338339 505535826 557409959 802410707 997541806 944636848 970023760 154130126 206597082 240153594 517697951 729272831 991163516 831121882 879296915 99958832 277643403 52939373 707437239 957117881 968197459 903827932 911640044 10767048 395461699 830874572 845758792 245665785 902638486 701340020 862150963 885586001 985134827 90160520 559467288 350042149 767848020 484796591 995326837 864979411 940096832 339417261 762510029 507903301 887586106 877566637 956691850 430540508 702945013 872213254 959258170 342490776 365765988 169686330 197251551 245776949 755620639 393954446 560169228 378561493 410587072 759911022 893764205 940682708 990708266 789174863 935459131 231886467 777572480 639003783 798790412 805466639 927717078 464438958 782924576 303627620 598398797 402294145 837775304 160028282 594491378 131774677 157954547 296977263 850743202 174224418 277849116 319283975 405912555 936336900 957164642 410344037 613152025 467765997 817479158 383480734 634057516 78404955 958115382 447051631 530675549 890287567 920115861 594865433 942756921 699294571 885843684 349791363 448326246 906577886 924868552 437609381 818017936 929279496 991809364 631070151 841435145 559329071 701451388 658956953 784297629 196632873 830604554 94741095 771757351 156337643 650194265 272152015 656957974 739822156 810811037 804778519 927921938 69710519 880119764 112933899 381006462 704502896 865318350 737768892 793354694 359853076 786355681 254032032 495634441 214452260 750251747 17350056 523320256 314374211 526138694 651841766 900170925 937302508 985144746 930453297 948114730 215012084 260443680 781173414 855122012 33109229 64192636 290792004 849545246 359637158 586221354 393080728 555751776 198179841 651137510 880008866 919307975 620153743 839230080 678735861 782187799 816391321 917484864 154351988 352694064 308493065 979362585 314147402 836230426 710790508 764203311 397771595 930295403 53274301 144311187 145644803 834402460 594686665 913290197 967022901 973644115 555246137 815730597 172136455 602211409 494988866 581267743 511764923 945933317 607189160 966377337 673168384 869718956 597895119 791353390 8247129 162782076 847239392 865251477 917523145 920067966 639941044 909704060 478267637 773289667 317795719 524136896 788212817 966875216 961932585 996107575 491686162 864531151 633586464 641921252 587748660 657292885 193193505 819375362 699278807 901232190 834202769 908882174 193227435 315226274 203045503 974155464 417410054 650562552 707480699 860543072 266882893 875587421 678155028 982887456 765535825 933064761 930889335 966352161 945261544 991046518 673403129 804467475 133564689 945118595 234212252 915747728 676824117 716902298 136572808 502348014 259191399 972290380 323155944 593573810 590898678 805894543 913284717 976780594 539528003 890605643 155438199 675510477 314150509 765008521 953248051 995136925 689591139 971014484 243132639 682114635 772290734 949672349 801977350 876861163 71856020 406242981 971116104 998420169 453940576 976704796 208002860 780743986 156435604 867159748 767890525 788382513 322476295 499717565 864078804 979616560 439023985 896629941 375487278 428486318 723548193 978576902 660426439 951984551 754160573 757999076 894141906 927452997 637272626 920294137 267118617 537719528 540374863 647879697 153919676 241724921 5306758 931608714 406703732 475542489 638929391 654325143 127667221 854842073 39279593 439009175 293239531 911780102 936158051 991547903 731711649 787961357 582724868 994760217 377910938 679751520 841200364 845205039 612607948 936718129 781852614 936664988 399044362 766654374 850392862 965217688 844526347 893840455 409790685 852206277 154120233 207330964 910363835 965789763 840491237 932380041 790537424 857162795 399377333 921281419 687292546 795530153 59873896 641290956 402461613 874985331 933215793 978053648 672116706 962709141 688537689 832704475 378789431 460926250 47298450 128298534 867296422 871831897 319100273 621332929 63421798 414831260 164552094 731518315 12289384 666721165 803823382 941458394 719621328 970215137 7774462 799200664 245360813 776668314 869794738 901111431 781196015 926285685 781708918 835396190 65768227 988814593 948061006 968657871 991604919 993517780 688672606 963337662 790057061 813709032 206344205 653180817 377312211 509066498 875380095 885376591 551594299 699288091 505878858 754529257 438969699 979355715 931387089 982647591 782981883 884984317 81344972 707052742 793965805 915358269 71175176 390503229 994495165 999548327 764101267 803871738 331202698 440079709 117098880 786859522 227022007 685074078 713506879 790564011 511114121 527651127 129850031 312873311 732838891 859248821 457741503 560941592 679432551 847400459 162891816 488152492 181000038 855828316 206478251 924238150 624519235 838279385 19077924 595341323 210388936 448595350 373739202 612173537 700494193 827211094 643783957 844146910 161381853 620128941 574124779 855692856 948741501 996220748 808757736 850140757 347065634 802934540 509328335 842937241 870521473 874652563 806838483 841302481 699316534 891612475 149486313 355779313 143167990 978071572 815967576 987340202 432500915 735131502 76438079 974171897 593270903 768653194 640282993 811170239 620391393 937835154 186915327 376397384 711361596 780420029 615597644 938350498 262172755 444938003 703041796 841744026 470761450 712825965 28029537 122852041 431653560 717993351 856063830 864703693 983392063 995485557 668749621 954092655 473915401 879599466 562698588 893898287 500632442 581253092 435924147 902213713 50094017 426661811 178536299 285927724 130454110 763301534 148464809 894636344 451276738 768789692 45079117 613184480 230468106 966280870 802160916 914646162 274798709 383797696 304474746 634849976 739022263 925980910 410419376 693348884 733364637 879179685 943251953 966281193 93548727 361526878 710017171 790229343 867040910 899778037 18504224 834123297 958399164 965536307 315021241 324689852 692845126 958345675 894531425 940030710 294961638 806391077 614271689 872351388 900153853 993759909 11796812 904705061 988364943 991774446 850121895 923331713 880194075 913235391 871613468 882467669 309222532 793776699 207938611 598681008 732652929 955439404 257118556 742042595 593555892 670527102 513839913 675925545 349454973 391179269 678411131 717832316 682725368 818566351 115542504 934667217 54999298 266604475 639194103 757349853 209724369 471091204 638695111 960002033 805462286 871067559 706266052 972858729 437008449 611602241 883394641 945901339 241178316 863073165 718456756 741222624 939048478 995759856 346134970 724810009 449075448 760320957 667324227 933578731 199061939 910324414 989915596 994275834 269252401 272119575 369175091 658979673 758137178 940577544 937881518 957566767 524992464 606411068 565301 4721877 652547815 779167772 268155421 825905143 140260545 414174230 367153002 614325728 744294583 878728917 434631164 946012020 183719048 350290296 799213258 928882601 139454868 498916212 857510411 987568425 303171982 611921437 340279011 738019263 975596159 988453708 475499709 640239340 818744230 881782819 591015790 987629918 313343675 871016952 744192442 837773511 225148459 252627430 335142697 471437674 333480914 498829874 617113161 960569556 869562558 928907660 615545023 934702898 847220098 879234947 700157938 807654008 655442918 925209202 719827330 877219488 671953978 687277595 66891674 371044206 945611403 977403399 507215785 764934121 752520045 819663445 839484913 971139333 880210916 967263750 320754720 700198434 286900444 436073207 381551266 846480345 495740509 768504043 752991422 791580971 43993192 422802939 378573447 446596539 176297769 893983893 752938266 863307145 38232292 648822120 14378313 75007945 961694652 976276982 814710994 842520840 950052528 988828515 2655686 204103296 751937782 817817726 86434450 305433424 393568436 812584357 66919299 623943740 33213486 994862873 335183732 979778384 154521621 261973586 171401031 995448974 476177548 823454980 523254375 866433669 433475266 762867437 556737212 962845434 231177858 273188018 480145016 610150938 983546068 990630800 330858413 531082674 93195328 561426159 702467477 727579363 329639290 772308601 274053237 774286286 927623605 931557208 346463538 932657065 232361634 640787035 593733651 946882224 667755943 996687929 408438390 611290272 671013463 735324980 685760425 871010734 280135656 353630254 18163178 624048040 800062354 992906422 4447451 478097962 470191355 844800504 775476634 821605684 742142908 997405902 762891206 889359308 648554758 947788409 774351702 907915275 955305851 978706863 811866360 972219908 802590035 835497236 581828154 988838636 171013024 547455298 163643751 206312764 504544278 858984720 386998839 625041876 736528111 860020163 552737728 902811983 188196907 667643166 544229065 735121128 192143796 195728744 16735229 165185927 767433097 994376701 382780730 676614446 489084446 845167518 590727029 651185541 425586961 723152946 978294500 986007793 203244713 655385848 635632727 868678309 910423156 978004943 47392900 214896989 350339822 761878569 38200426 975382415 708658626 982138408 613779879 887443085 401020564 848219732 952809082 982400376 567646954 980319117 49780185 693924358 121254365 994768166 599949853 778691509 212319832 564469506 689943416 762570614 860459720 886796141 945392596 974059998 844664879 940421471 768072553 871166843 982426883 994190262 181397374 438414872 248579089 931483027 629856440 934399843 652815922 922604632 874349328 917678574 167428314 470510867 20285299 730948387 490713755 921194875 958939306 986214306 314906283 456214948 502422336 513006371 358196077 935463544 421910301 584766889 439766851 612246693 80615957 113011882 664641607 711848035 946725062 992429038 928258103 995622500 603826084 676416970 60028269 753062551 745667263 844996560 667434071 773878838 157060619 344436601 530594777 854544262 12753269 786380139 126085973 525193200 390769009 705748187 227423095 392100717 335692132 981315306 172971287 945821450 935161209 946365234 904056842 956262875 743741294 905631215 676264948 919091688 219930176 396203406 236669754 709876699 721121200 986113873 485309968 540343815 628966808 865516851 114716310 341201003 296424726 952331300 785587905 958179349 412158397 766248092 866341892 950793842 7583774 673355343 38699344 432788774 855905982 985820232 242660278 359544967 766413374 789697584 678576770 787968119 393557350 523546133 274500315 341646345 366559456 615220077 877298221 949756818 998969299 999794481 364540082 987013147 843435194 888745738 993554381 995178058 459887936 883064501 409691877 957794667 899454829 949882463 117517934 151470156 486219146 584821203 773380808 952640032 613387948 850735535 906163231 956286817 78942236 833425508 84550131 356030469 450244979 710491504 755532973 935703939 874704271 919856863 195492962 255545466 468531339 525036106 324336733 686273672 666252564 677569050 22959403 111045513 70698407 989144545 662859900 940980201 503514895 946715082 748562049 833827823 667135934 903540704 484712368 583559763 329156953 388087644 835188874 926199958 407255627 712745558 205462239 818895658 772350043 823333473 262425124 836764872 932665828 965807534 550063882 682348078 751033058 847715091 582690257 908288693 465694503 903549759 290885059 519565564 406253775 973494415 425652517 766759273 604741125 695344939 739876514 853290015 129025876 625709429 681079667 978824169 168711020 939159920 617371947 693180951 583893524 820747348 975083049 983057447 500470367 633147888 246151435 519113503 249895155 846936353 745088425 798137016 799618601 957686955 355385417 700761812 570419371 738711503 432763202 929400103 396520697 711254406 73032788 394380704 306893704 345154565 89375961 262067725 669236048 826097496 11456569 377347668 649310121 825528887 831989212 968707207 290884199 444252322 474348979 945726053 486126477 550327035 577537160 756893159 43660319 936901932 522445495 890896007 970782155 973992905 610477886 652247124 288094004 690313267 631471642 787601683 897514216 931420195 337030677 538626256 368671206 846819367 230446535 457745987 218181788 223527988 834157423 978794709 61488935 454680852 324754877 751710544 888692225 963548008 41656909 321550821 895151894 944551355 838113478 872315032 514169894 900155839 12392255 558860531 839138786 886156900 310330383 385638430 789565550 892059710 794448052 932710183 140512464 327446185 229292203 667663962 996134945 997269810 282228314 330295997 83811556 406393206 958900581 999137193 740126374 998224586 328959906 723112804 213240236 966256144 639074692 650059625 914179102 918219841 95303626 791436222 714334757 976476974 546639742 760928019 814553918 994731546 269271708 936446975 969628846 992364172 398686031 997777514 990996739 992900659 769646954 772905903 877423995 899990933 372074827 486225677 796662180 992036426 737848820 863581039 970910930 981062935 888191219 966217028 884481440 903251431 857973187 925718233 549495344 975851572 849762227 896231585 901041694 941160968 103507648 902534406 532194773 613399381 273357175 597814465 152620882 605079417 726965693 998210698 555466461 599000885 559376507 643950974 760018658 854320077 110991153 176538932 131828088 924998710 905594403 979105512 387809185 950490629 819238516 823582302 645342147 792951310 3097631 891879726 763616777 900426051 440579630 842846389 337438125 774113060 936679015 969715762 40987661 988193531 8068007 602268742 8580447 661138213 246411482 492768517 941029656 950591437 289842315 426335905 411163866 809126468 245648507 882570642 56643288 827252684 289278055 894457796 89785323 896224064 730864285 753679205 6797688 880305950 30286590 630517294 632564025 704442202 323954318 560029370 306812435 944670448 747195540 867924561 744534842 750767859 631538270 962211387 176168223 934645371 375301630 726055265 292650683 376879595 894797741 945132223 612500091 943491076 241720533 267146108 666794515 955337070 76201891 894959502 23873995 480456770 220882709 970792690 279933014 421285681 555247901 656731557 523241265 829904720 915655282 956250004 657540632 659772347 91621607 400981390 33919774 908491146 660572239 889837595 2131532 566095079 683460206 786370069 811772766 912311738 269918531 698079687 405739741 924782358 848084683 858452113 750147435 908920939 677150999 701442227 675187998 786396922 939687625 998678030 555244859 920957534 218851553 673841415 724649938 995782389 684349279 686403429 97828292 717954501 314781860 615784345 611492599 907532834 548118167 613192608 930336918 961426105 286909110 359715871 450422663 793138052 299953326 598579337 27011760 589938515 478376227 619568301 250183915 445905309 854678866 867090534 618746609 800904374 136778338 925470493 285412699 418810432 866567312 908780991 80359980 398013603 734845377 847975069 984567448 989976885 640091006 713622511 611471949 862531718 231931341 902869438 399057482 477637163 131830734 905917255 422761936 787340443 795229153 861598767 438290653 649390187 656726155 991724347 860417296 963323581 549545537 731701595 466968065 544137934 586695731 684438056 497040532 579320806 173975804 544525798 262706864 999954443 780832523 988493695 216483125 256477824 190701614 400402897 240961918 817210598 29651248 726437731 382543287 656200051 860332549 942651006 484902398 587414436 579527099 698581470 638426389 758217374 927801877 960703915 356378730 582444728 788967453 940402326 596609909 658871685 980292744 999462327 934773574 962629559 131536022 689027319 80612965 571438074 276847536 506519872 402584195 488765281 644399727 880568177 698407332 711467264 952320322 958115366 126879913 735570396 30973347 199173249 448248428 932946922 15975411 73385705 812002969 942650469 806443892 981200935 384054623 552179141 138211221 852297681 971475747 974708771 231601830 984589383 818674134 915573965 841571331 872675109 449354737 739330997 763284823 856069854 249818825 754553415 329372712 496782468 5551054 544986755 859004205 962832906 573783587 746188725 613580329 718327350 901468793 920601094 443862686 548683835 682571261 683790679 395069083 729342292 941745463 984918035 951395800 989514310 296786350 562091455 834436868 861664979 767751668 873883154 767110096 834179601 449760631 682019547 807166346 908786340 744464702 920519567 686811271 727413929 199362012 618495416 71618559 840736938 62947050 860581411 472724279 760505102 299224795 967399120 709422902 946521857 170396471 983328094 638480007 873183494 132379432 505459585 396925429 833878570 243723642 696300563 815352594 985654571 648338194 880190361 104387150 549716120 687711745 850705852 310850839 856827487 723153065 813396286 75115117 392692601 152800886 860926382 262111020 488394861 353335105 751460967 640197540 676332749 267318168 896887665 735559809 951497586 818031066 970171749 536289818 638464850 696004367 758883107 642044800 849660515 286861895 474633096 172608410 996638602 908987319 926499330 248153281 254557092 26042528 44062619 454787511 539879844 728304948 991272579 803912858 885210304 968697103 986949131 528139013 658910714 571506060 576339346 663537736 803965673 162761985 295487269 816318535 904372803 212411557 954623831 809568695 883269488 270863761 801792373 320894408 560936836 489955176 789351492 353708197 428908644 36289320 482568128 751249275 909402026 875979348 878395702 543954532 981853741 931145292 955765587 117680411 905038789 816473323 842328444 705082989 832482375 548656638 743000154 617143422 871704764 199072207 670089273 16185368 912720964 920822558 941501692 304428233 866243240 802891382 807738358 434429778 997257524 321010434 435956618 964024693 991897666 224003077 798103237 401051183 836810817 578605784 766254450 784176251 930554799 168616675 788887094 867231615 967457380 973665409 986077748 57393594 424400788 5641894 746601475 103642609 246274432 200918651 280693439 187204381 339956324 72440150 377334076 652859020 817493828 372264195 459851768 104888050 648431673 94722693 146563933 325370259 552371747 777544307 865086569 571523760 697957183 350310846 847687963 41462092 396399121 73881145 540181685 58943755 430623658 410303332 759651127 611170623 831255289 132441339 358946642 873956633 888272937 32751353 395069931 408743973 714261452 981957298 989632387 457148910 851669668 918423159 920061533 161140585 650430881 665933998 794315664 262997405 364909324 304440014 675710386 688326643 939904424 478629223 886336882 216046524 843741106 957793649 969223875 951437355 962165718 448833120 934746235 630600164 634696995 146944851 445175305 163422379 579133537 60270861 983642945 784634852 869138617 562387132 793176354 546393553 935615634 308534358 958814778 130594624 392165202 5100898 750636940 119818835 774790074 953816243 963174978 573513018 741314929 10661429 433552412 60461334 954535877 989909163 997509963 841569453 886053103 562999846 898585706 901308460 956580491 4347765 917432209 65930024 746881448 570535285 662047528 705745912 763677037 41753625 786149467 141718182 184976735 917959667 923345153 101423168 739767486 323889231 569861130 360633024 962125459 628663879 835579603 988250927 998082874 757704117 850577066 439680112 591975719 820941673 877988116 999604270 999757053 137005820 468906575 100644324 273872237 119152582 212496585 420552722 701899724 466028849 658460650 410873205 822112184 644661836 961353350 312075837 471746392 63294917 947160925 593915211 918811956 868506564 956705866 564289218 971708125 328598056 676998148 617760914 945417322 919273242 934593538 238542508 879588403 961320059 993167739 143846505 483854660 277436841 899138294 695227302 808608095 115616038 732802229 997606887 999755847 548369306 927368920 910572507 971683698 994273789 995475058 331356899 367492808 54830204 340752738 513196721 548565040 277134502 940570208 439759901 679315108 259056822 600948082 417865123 864950615 47172161 587663501 590484788 749965269 606837258 775300259 660659793 871804564 866112913 930475993 276966560 376767811 705849869 967786265 447885527 633928687 568902179 704378549 121672733 521136023 334292636 562171610 496551620 670595598 268449288 512652098 872110327 900581032 988616444 996751139 225505136 627018149 919875959 931250598 742020368 785897118 528232241 745827068 467824007 916908283 792643318 999973535 679144788 738976117 920940208 944336626 476612306 841277842 619705088 816670863 774626214 947294859 327481837 356353789 656292433 839191712 62440224 805532152 294747432 686695925 119548396 530168103 925740707 974805677 57440144 213322933 892513904 919136921 967317569 979908630 589940129 752105261 641051394 902655716 996412375 999606734 721242373 901330586 946751703 991251445 62185554 667434140 92139736 706077425 633400171 767302795 969797451 996486202 621644719 718041029 655904649 777525900 970920644 984573615 970104361 994360304 628917560 773163654 618063847 698900036 343560490 910529725 44149783 962702986 278452827 344720080 847638213 934796287 179863263 936325878 706110461 915868256 853700447 931253261 159043077 742813345 769163136 877047752 734747935 784732965 384420082 391288035 966066069 983255249 106723880 218442386 731146847 826357893 178267691 553007096 328771241 446546240 528394763 835808218 536309683 903738134 233672977 647621507 508330278 518578248 42142167 300925822 91284801 816940164 353068646 524770397 329294334 558873871 861590540 982397282 213501011 664175709 107309569 437349861 552139620 634784886 289578560 423192272 494393810 858620561 670563102 856617608 730243417 789110437 44760062 434116127 458428457 655981272 721407615 818961041 677417362 839957686 837618270 840774235 799047077 847641156 479655504 893993472 867609813 984786546 317289673 320172806 97697421 603658965 243952110 954563275 431320198 453640513 643240005 644015833 349307884 467466405 546171144 998030252 474168405 997015836 554613326 567976158 763226871 832846465 596727207 620592490 891015355 938643183 446216912 775102280 314951734 680215934 971556159 984182585 839251441 890171735 247270261 897835308 551978776 917349407 734417527 790717232 248553738 479284471 657381704 848790804 90044570 658800153 836439130 957550268 75868851 719312103 933960174 946608762 994876196 994907273 178038438 775195232 798017106 798981071 896282210 912220731 614455870 688185678 682713655 904010153 770659356 867698426 384898937 604465003 113777298 786830537 232842450 696981349 389318557 777983092 857744465 956677329 570705453 723849599 223310843 706717680 560820910 658803309 876441452 878519204 28834551 668178677 798359126 888031745 661445632 956970264 33899205 777812533 453581986 769821964 20279514 851327270 301162795 534371945 877289002 949348847 705008950 854221920 227756222 380024894 394727660 973289059 894311397 990004822 194780230 823627956 137394324 958787397 313771606 373105654 419943134 681675687 935913918 947436972 79697928 793449682 779854849 847038878 818837363 969605518 39061859 960574159 781564163 797950832 781857328 880012977 890760272 929390300 827862447 995966980 401961230 636835126 857096572 912641798 906539752 939464153 462709859 680692444 469105973 600151687 333914915 457143201 280185200 614859614 962638321 975185829 52314562 785844650 496800968 518080606 632255493 677576030 159294921 245269111 918938115 955664591 773442922 808534010 819980295 824136484 164048589 216409170 349798350 851944433 736180194 825479913 132419714 369767810 549379478 813848173 823333087 879516336 997571155 998115306 897339168 911076420 602866282 826762648 97005855 712627414 377037294 894747174 963771822 986542015 635457569 800880747 514929287 935582844 666109339 713325536 619178251 799676338 496880136 933722851 32482382 405679607 450856895 509146874 906951933 927363247 125245952 982586485 64506429 478723762 95740989 971612054 255272751 557045714 425016530 751946826 866887196 989518092 584473683 914987671 89656912 562451714 109027018 624726477 966308292 972968095 547249000 620006455 710672108 911616086 735316828 891593480 418444541 990454487 691233643 889908345 173491606 881274102 779100422 969519781 383924566 522838671 186409524 833951789 632226374 720005744 23465221 101338980 791367046 882810276 441981709 688830159 732470770 855155378 412842015 677123244 588608222 717612167 30346495 40700099 572937767 870375480 429924567 700212317 102063977 620732749 757948800 913907123 392310623 600302845 939999813 995718286 833485173 943810634 72034428 293259152 428903021 742531660 390904111 848019429 81699705 538950572 881929492 940330593 984894461 994874273 833494478 934453848 167321786 841985852 637175910 988634756 298868460 381729817 168526494 638060951 260643391 261513459 94790485 301486941 418005396 835948105 934395537 949782067 970846942 980315259 504087091 771145487 912872942 939880581 34701234 859819246 353353294 424534082 953832391 976453589 627080134 938861930 42028916 716727661 649527713 842871444 924536117 938963074 195693098 954356595 747756340 807194984 621371079 867037357 419840315 757137175 487067710 776144457 744147919 879138229 261822735 766107510 584970466 764054526 969802314 981819813 72190643 569640767 223679051 945446554 805324276 945147185 148275326 303939145 445875819 685052264 291297309 404073527 352038575 598466052 637181255 904623972 748594879 982778505 636501580 953713248 406207681 651671440 684946354 795999062 81077777 709196292 99078443 843071615 861269605 873867449 32214028 864387058 757351680 843642881 642528363 871980514 797332204 857449730 987706458 994163920 428838333 658588626 510477891 890093700 888576892 905820416 174732854 837360938 386786728 634217233 338082612 783428536 470980409 759865256 349409156 471519052 55727235 149888982 938654315 983379056 33600287 857436463 83978543 384149972 615865709 996053150 156521294 492585086 68764841 960931965 808016392 838371720 999521279 999879526 275510712 525642576 11905913 992414188 448595583 552081087 680329198 730911007 93873124 114619681 44776025 664577086 960786862 961571791 138826316 704223021 377048876 919958110 3865287 424687993 792048102 992952650 103514743 773145149 558013872 662605850 438764181 654314974 365492626 714743403 791082279 820821530 81026575 194748609 123996822 416617914 6499546 433497272 301299030 745082486 897983570 944551787 617640058 735376934 690332383 837072238 627627831 708389085 151921033 937303437 288785920 936644014 658630277 979642565 560218093 687728350 526983317 847358302 104755575 257549388 393382278 534233806 5747127 861850757 633997617 977808085 269738390 840985602 173245438 677899972 813220274 922654445 785052863 786244907 585285184 595617534 888937729 967768734 656165957 862861610 437533845 673510407 49101069 688914966 375119161 609139870 437433781 968694254 329412247 947894569 230404531 654858594 837276881 946488978 903007998 972315536 866421986 921083103 388321541 475135243 296464802 607343377 858525371 986089448 171446536 603199599 672048267 829187348 448921054 944833291 19545849 111284017 130775879 774000028 217718148 279100653 31552522 59198338 892922010 978484021 464922158 812888712 271907904 588968035 644559327 665717958 196793450 834402538 689001626 873957349 324807939 337563898 168514149 930704206 576918323 787844327 897292769 978417247 66283511 788814837 936267722 944762030 272321860 502315437 445199189 471970998 635060420 830082866 264129129 488553907 523020977 798599375 320365470 393133008 132840413 914106110 723324573 899792606 337620029 404068532 784308466 968121742 587143390 658173958 38185639 829232213 629679209 902154432 892944360 913842069 233446357 740609388 536759436 679026754 896110954 986677375 524305692 666983158 167526032 920926226 129285473 662396854 744162316 872571641 513848727 537434102 78892368 372974790 327819546 541619783 194849681 642090997 482707473 894557613 284664913 688265035 374512939 893143742 956939577 981252119 257052968 314428717 728201287 828034967 261297991 573867049 566908471 800663802 143533722 150448762 290336171 552257853 956363709 985871243 973026053 983930088 304064050 613794674 756514916 882644908 443176083 731709371 170293757 974546445 151027393 796865663 51522586 306593813 292144454 482101114 784073072 924488184 423211040 544297530 387736653 602443066 231733949 777227247 835355470 862660426 632345094 852110096 639405375 923727971 504303354 820723351 169097233 417150013 895555412 999914626 99075185 845037519 387372551 483739852 200677903 407647038 708594917 766853536 433432974 748058296 772241763 795414009 808795711 892923804 258957757 487500814 487662010 519743087 245857140 901102031 822316926 996842176 128390791 534707190 442496954 919427110 580290322 625908057 94759848 662466616 710409497 832732121 143688588 610376434 178267140 569419534 438161686 927764086 885458666 934270579 701995973 789462706 868552135 948746692 454402587 958274559 384825495 933866554 602219393 833719030 816630573 909300647 84561261 258388443 622338295 885410188 699408905 963156477 938863788 985831455 343027339 355785797 337924401 344878051 882418210 921144297 514741800 624630715 976188793 989660778 257097675 838833252 870057215 886395884 830064754 878888160 630219186 840613185 364443663 537954975 270631222 697120713 71184512 381248955 83693483 94451946 231141252 802149326 589999180 638721323 727460799 869656883 707948277 845505002 612836998 718517983 409923198 681931556 984315538 994912581 740624712 764919149 359273095 583668257 586804083 886057916 402559472 640920677 98905739 106441861 679467472 928360196 581582024 980040410 916487561 989063109 643723076 911933410 195606096 324015828 23900373 581418913 841143666 976151576 923847575 934989770 460472047 897221005 822200758 982325416 592887955 673658871 827799887 940937014 651755700 897698371 141229278 851161743 156597140 425478355 327342333 356284002 82072309 968010100 346539449 641132888 690871552 764076502 842056459 883806437 400266322 680691589 340301974 413293529 313040980 988651693 695786760 863314482 104367837 174781062 889854056 897300933 729209845 902467864 362545947 895155271 651435654 825616824 468540122 927655087 45108789 914595678 475635927 931867418 516060487 589221930 192466917 712912600 965143450 966474501 443487637 992482242 871791294 987079137 972309798 974346934 136733652 949507387 629481827 756337183 291316347 705747380 307522336 914359658 10713848 609057775 676913462 896306122 382629182 872196600 628532968 790162220 226787391 300142882 481050829 934744726 479598335 917965291 893372312 925165835 860701026 935428247 837757209 994403880 109227145 431673628 451032989 934266429 239157520 576880260 865706110 979966331 996175347 999683401 553280305 924501489 822483196 890038946 479965939 821921898 76923790 993139365 780243999 797728823 332822451 888771759 355869174 876843406 366561243 452069589 130381036 566262431 977444207 998749197 216195221 779306801 651760447 790273568 94484654 412538771 97190930 623220975 952426296 977982539 128705384 754932510 358258340 784567751 861318835 930439687 928445409 938888286 887134299 915180209 722599154 789748453 123499830 783173746 716651570 914519514 577116416 665434262 886144467 901089953 276354653 546495684 953763576 961468385 730515627 802879147 647839543 672349889 491797137 683994718 457216403 568867738 192863274 345659876 272160647 944963185 341463995 488512076 931454307 949620907 975539477 984549656 218643670 596380075 919262380 919880941 457263395 960602296 625722615 848767972 496208374 840652559 510392646 543055595 947561485 951775310 704510068 739931595 309962014 813514870 460846695 931008107 774755584 993252582 469985999 570093401 587889000 926562127 929375578 996218205 796242634 828899250 269981538 530628877 763960598 846442156 877751413 961255858 928675882 948337715 835733615 960278919 772374789 868747256 279320604 938249311 396129761 496521198 188760520 913040335 774874526 848395534 397573729 986568546 491476513 563049614 726062401 791322649 148621469 959892403 564963601 936773141 908073813 927709491 98434219 854856629 695607428 805158882 789801378 999168694 778780627 806151992 624418737 882312347 196807459 584077208 121395047 836681134 224413408 599012214 45722482 682710390 656894527 907448842 44130468 214185696 906351702 950040394 157503198 241132771 182741475 959860680 954663583 996869432 821652246 918271351 747783349 813612985 133377328 474606664 30403548 527597482 603295748 669769873 697743806 922633000 534409172 957301043 286470765 614094098 542445841 970917333 21347225 328260819 617067994 900239237 642340846 771939751 183617005 871807090 537952658 589274364 363647922 588990492 370208643 787513392 275429113 462393949 323837233 774478284 477055329 964403949 988814507 996160926 151099101 454226128 831588941 960199983 244461899 649151152 695681260 720434298 385528864 765017109 617271584 863957171 642742027 725331075 367008002 475736445 18210165 446141704 660148283 716289984 28550285 121950423 487234803 497853277 586556777 840756820 555158468 998488304 213447816 967182884 337975477 474437608 829283931 998486441 970186572 971412769 553818031 940878665 72958495 545969054 399953020 631109188 606092958 995277338 660756909 681928067 342018943 926423240 663338921 765880766 726566437 927759722 453903935 642433638 426199694 574829653 805410223 872931238 447776335 638300766 173141649 546795983 762963992 798835511 447342449 827273912 629955376 994822160 744726376 964091920 685967280 842232830 306224597 902379888 903682128 967115407 977022250 989708428 514769232 696422186 436455058 544235722 767270463 988961440 34017557 785625993 709978947 754918965 169867531 527907165 718199520 723351214 166007533 229393016 122023876 368293905 754436395 967262536 131340048 767204545 843675698 855748500 902030494 933424461 188678809 605806307 628099200 772659251 256154083 424148176 229812426 738569001 262730014 972744253 61361871 914926218 532127613 898110863 585233385 645249821 796489450 846226655 455293863 558055325 472516290 544714457 710924841 793142029 284159958 341072937 534244797 566091242 470638168 672694549 416206109 610895960 876718741 969178955 595721657 993964861 835669512 851588395 85892357 717271392 857816712 903378432 447484360 692965232 702126404 916113492 266063216 267300708 15608438 939995448 246720032 367809252 117967435 519433241 425084136 900757762 679174017 724866915 941868790 949882386 733018186 891968513 52495947 130222403 2644047 193269170 514086051 624982088 755211769 775186187 923428885 942295217 654056088 712751035 330294307 349464531 751835766 755552539 156980543 774357633 244272165 675229321 165438886 241237176 442971906 891899238 528130064 691686311 775877618 981600405 45341626 865858099 264760225 465096460 906755987 917648567 54403175 66616886 197850507 257020266 229340212 485989710 171023551 327474949 915445588 989648476 651679200 921917497 902677986 944460523 606732241 982074956 168520487 884557086 230295048 812907675 305039588 335434727 832347828 863008440 984165471 998033256 910183462 996028632 535775762 897787482 704041999 939341077 21984115 73977508 731474164 743853764 384073751 603573172 663137551 797624388 168869934 532046695 846997514 899438313 304658529 670333254 907385904 981253845 715609003 972454696 629826569 916439111 913185501 995102861 69102954 794565363 124314307 688148995 967296047 993888284 428014126 537282531 41066431 821504119 83392636 169991795 484765603 499745301 350176295 589613276 461510008 491082343 213808467 868300383 965380305 996478873 356136253 503842206 988782521 991856803 582977249 777597003 752934539 922297633 236979830 341821938 349753823 784977440 33994251 102273961 119873268 808933728 526687112 775707138 642284521 737765959 403554343 990059422 995623341 998490691 206991334 374480551 271830491 872668259 280060353 960273536 116111493 873621191 286128869 514989800 712382401 853452580 833572475 879361156 847451668 878467816 509887453 637642788 11972827 466397706 72443044 708369163 371910169 476605096 322722981 837905087 448926786 746876267 853293025 908050738 940594181 980301022 391441475 397464652 401124410 822140176 810646782 930643811 720343636 777466763 58897630 945304922 126217690 788344601 979294906 997678830 217881388 729204862 517831208 892569283 51812707 757945875 457971302 840682886 594603628 807635195 558084838 835045962 194590692 986436747 559244854 888199308 635027428 976928995 756519577 879308595 719265103 979318745 326423887 665743832 976080218 981031737 635385944 710682949 179507806 479037462 988448102 989473022 940952705 971613814 531827015 988742762 700040981 962802201 798888377 893684749 613739573 866497072 721221307 938244481 842248736 856079445 534702001 569095256 25181929 351680842 386003760 511602952 49279462 272273764 305938108 662119728 466366809 793160765 731238600 735849040 193985960 622674071 875193645 886630667 358018467 790565710 347962685 670575374 555909932 853025799 704076392 769424049 114615603 226055880 46883143 532294752 587841277 646608792 514916818 702259892 967158163 983089888 473320072 937787100 383174137 658850006 135998541 485201163 397839344 869696849 269561604 435623316 56726677 704574130 554437518 796371605 345238428 545299553 345217333 365609399 906024571 972289043 636718641 981985829 558683422 823987929 241575228 319260121 138049941 229268473 909388501 979210903 620956899 897602044 310844289 686061701 187058954 769409233 522313145 535848033 311083150 988839097 369201748 624317260 728962579 905600866 736923682 957828873 425868560 585324674 4865290 756947067 865236846 875045444 324406248 408787896 433160999 941020382 80966187 505567593 844438017 954206918 773063494 920586993 508265556 822996168 448492042 482615999 583075558 633774002 502520437 839644922 343149979 344286087 797536933 996687302 775360617 843586097 136168555 473866551 455892005 606798461 749114494 849809031 393198696 654357997 531094238 933555833 418519099 855649413 967955500 981397769 28334880 462909829 675692847 955220041 75180088 268606674 921710174 956568701 483046302 917817932 290868072 964510438 807592042 908708578 498113045 829877232 327392873 369527176 348136324 386050306 204938288 704326245 598187872 689180809 883547949 945561562 555225954 661453352 84856928 387743098 777441916 802038908 268236418 322596196 901924947 918572034 353572977 421028966 689000372 783591311 234844119 839273300 487322823 940842151 499076260 539329940 389244405 393972657 882163202 916338852 226871400 625857540 897473089 997836286 166931103 242901566 705311519 727721284 9490124 527622202 396617693 912882991 307088276 760639696 519947943 981505304 418920851 686871172 683496105 728824158 315409747 581201975 2829950 989429751 870315805 895784612 45916963 242245241 962158601 968889335 384796153 604824727 837449773 878772852 241918731 818337720 496589155 574435641 56798718 455801844 474990958 946251998 34101953 263574103 844752344 930893627 750333391 885725538 57487546 906356629 959361712 986838415 764102935 826851773 464589073 871766394 182763305 435212284 222318994 843584762 691509730 906850920 933759782 973229253 492717699 735446384 707342923 708608805 10361740 797344974 227725644 691542715 347514344 734668174 551090647 900550646 965556610 976003297 390356936 461190030 834950957 908633871 36483578 912723052 515858168 668934664 43928320 466832444 168923150 816072966 894303073 953025745 690801400 891616743 575131467 872172665 359090478 531008537 225957259 975211357 255980809 409747817 669922321 991344747 234994304 817434792 358903234 758140524 831548925 880938230 56481748 997783073 900452587 965680303 308571000 789001281 623100404 980827553 89740038 334741413 993101235 997430776 163681406 467543726 658996170 892442991 374066050 875574052 519961265 928110940 574302524 674661625 954205576 975203800 9641834 823123257 917450526 933803097 220821726 339240633 461630821 670534779 749939186 941377878 455322856 876910739 511500317 814833898 334243093 643970399 434711915 461064595 446989416 620561418 895674036 958908688 968567631 982127569 467764670 472920970 552595845 649925197 833493598 996592403 262152907 476373245 160447400 473161718 947655330 950966247 649543813 717924537 250296974 957557582 17069927 568608858 71951021 933595202 295170950 461782788 297920648 525397740 490288008 510323753 268046813 805093138 126434081 184688057 459809886 792246253 557598859 624903342 676314532 754617755 935005533 981329170 190210021 799172737 503400034 627058905 212090913 905377089 205877522 270130506 1413883 253620829 972519926 982516854 906974690 966837134 384100599 576089284 2414305 268974343 151311410 187630380 206213047 654852651 855017588 966263057 876146817 907266938 267683525 965824145 61930786 728541190 599984767 733909935 23442849 679230719 153455143 351819028 831042394 887990661 123379046 389246595 402094677 997623229 591165768 988900231 540122163 999669887 247571588 654746243 171531061 263101320 841521884 848552075 571875811 900018033 859189464 975449771 261418744 986138918 408029873 870125872 784122584 882271631 159192846 341373460 880993828 889794614 114909095 452200604 959713505 967682569 268233106 502049946 405917424 831842968 223662183 929094969 314258073 956881229 677571662 984794737 65748445 557879978 469380825 846061581 948900567 973077404 401028705 893182445 819267294 853710884 109904883 448160516 46395218 615744932 526329440 727307318 383430120 438093091 369271495 375553087 786895605 874454712 435355813 603926248 595046996 951913889 732140553 887002952 374940290 927746509 212148468 918354593 652554652 838415487 146461179 436067834 359989857 992664849 212402833 774310703 164599323 975715803 334485875 800149634 325115888 676402161 249016439 848288722 680854342 769267396 105842662 570800318 626448101 974226384 750290010 885565139 360552825 415516266 881444607 971467238 236684276 590109502 965361915 971003834 801030138 857039774 213884984 216558194 144620255 207741563 765445793 813466843 182946720 447002670 223969539 701723789 969795766 998823211 75144371 274717027 827930469 969440675 212776182 736701150 339467647 495000812 100172943 811926547 477861718 954802135 345413776 809941018 402872409 659970437 440318038 714032250 342143751 371342180 539174170 659770443 869494957 966227503 112824090 154066079 21979730 520558295 404052075 447057081 910074639 941228434 839978133 873266268 906708834 986947933 529069956 675401107 542506738 905150174 663630544 747555685 465268999 574708398 82397128 635162760 782497425 925753678 14731693 449559468 919730915 962593348 90163551 245727999 112025790 377779846 697678982 732698685 460147754 937692296 515679269 904807163 976700155 983779533 400603996 452547815 769480652 773508224 98784644 767217720 580909703 949792988 125617197 507443581 443996248 845666305 155294621 867663358 225209022 571768398 112938773 232462003 96324954 787137087 643500122 995761986 792714092 983063930 722092279 857313871 539382256 584947657 76892678 125036034 994502859 999061208 827896527 959437726 527944502 940959307 895754448 993684928 383717986 570212214 901846339 909159011 373943286 660588201 937321449 963713448 356826987 605087860 273242212 537184238 896996227 968002003 69974343 411882032 350723814 578063413 820791395 837813980 616786975 728220537 719008761 913125843 807635519 860409278 982116754 999746541 292310766 510861041 220096871 852779395 203099041 623667809 22604154 570024395 862690716 985251772 580337045 716314402 931295192 981355066 913707145 990591265 749699411 944551796 944731256 962622534 162353502 406951086 730214313 796047937 226860675 681283192 895583204 992917626 84078272 495567395 583327932 637912587 44444784 531964967 497851295 535555404 57249226 593160698 210853992 679486094 178789563 994536916 563838160 794867336 956381890 973403963 865739191 898932620 700607331 967396905 64076140 108109143 603213139 719383915 747937000 854860279 696377763 707193308 615875832 694750766 247900924 846450819 750592541 804628196 299598519 501419616 385383068 966065048 732080018 838309681 217576359 971179287 737534244 955598224 79293619 689346086 579822812 815613192 82644505 355722141 53788392 513626301 17113363 574969417 683176596 851419013 397288993 583901264 61414214 365657193 494497140 501819496 762966590 860686818 451760507 786173957 619489088 925207837 866592559 986370040 685411255 869435958 290303467 341878555 6822064 608697733 473380935 523728781 577804276 821676127 821902580 962083992 548527380 582565864 411083714 854944012 94181994 270210630 85039996 995353513 549891272 988004226 735104870 889812885 37516090 687986924 359769753 460359350 594306886 848668007 752447441 870105262 511101218 929265899 213532904 570214118 562694924 711379149 414048901 986541149 338084307 365464789 342013750 352834489 949206733 973699548 550794392 868397889 543157150 718439578 184964793 299772482 480780373 778876938 890493156 952166949 13741892 44485023 742088166 756400553 334038660 939258292 990764676 999427622 199489341 542542511 331489620 788601048 159766510 423479379 258536944 682107970 146311548 390367064 287257717 590832451 243747793 934273237 214382170 993866011 583317617 608609334 730687133 819455185 751921647 779446659 668840155 993285447 444215203 772228451 389141694 912864759 138042019 906835715 993293193 998897014 214398345 451850116 583304060 777326686 274811011 895745941 533550054 558111484 69949311 956144737 723185206 960164036 131196393 792252346 85228601 454588327 785931452 889401734 282808978 317625987 364496077 399853348 91448107 496811081 62727456 500871203 464667097 938482579 486095547 718463265 467973554 566810713 627076778 638704017 128606109 178216053 901344903 923298615 603576243 697288495 884287130 973724105 567326380 953964894 171460653 661630839 134400157 641393537 160252318 461792011 283149392 848527373 65965757 915762629 273946209 644519762 870254112 920280619 630081088 677038920 990380960 992803869 618452074 961555964 226379702 927071321 704457473 991844154 50741910 182322025 110790213 129424120 480654146 839809110 401296383 549634493 604196030 672729543 91135447 870860578 351329570 907386355 766208860 916566343 444971428 832556263 355357744 919602704 828993988 867387885 427115106 857850129 73368152 345771328 49448796 182210990 780055604 869789923 801478803 968496096 223658363 513773754 160892361 311923147 322963199 585222862 955914002 963299685 62928062 325980823 887769983 984937169 695457491 740001472 121545018 966199908 915442338 947780699 678643408 909780295 383795040 930154307 822631551 862618950 922902569 942290667 783709376 921151723 406320923 415306916 607256416 711540062 773948582 780535271 200649795 319895531 547940309 564742568 783187379 790660522 591181962 926097834 497029377 958941846 187270861 478231533 647098330 692741869 66293003 431259263 113102059 712353274 803709388 884289740 157213246 292380973 804260407 843805244 442380095 861003439 59725862 464817731 983134067 992524236 297112422 988465109 101142313 639140036 428300069 967799660 43510825 711061885 956063261 993735262 576516150 894496162 775039559 879695787 523540071 630318551 611120766 652614713 503600062 908462125 319022968 937825267 961360310 976868523 536379929 796141410 404206306 927610127 503075428 964265035 477703370 590336268 20137728 153923524 302840798 384244512 417981979 778347545 156933171 409262361 218783460 739630323 107905179 219186481 753617765 965504003 312590238 654787841 502296824 890088189 61911538 890264076 805719239 904346800 934569161 994940941 962599018 980899305 621769210 697912554 342435199 984960069 962893602 984836356 350856405 476932649 765914604 919422469 351847923 659510571 476656681 835246743 133086120 276076283 870740841 882300823 996690968 998787788 379430645 548746554 179235420 862566716 921838117 980038361 901514298 961952166 352783520 889031370 647204436 930278872 835235486 985489110 36611296 566307677 29765890 785626638 967840390 991538729 581419692 772439556 722684088 899632930 242087846 634049559 351525210 436872640 978826318 980469529 834530104 854206503 394931442 903664408 565020954 783900851 355858371 386254096 279763840 711773458 107977234 108077867 873825310 933814770 338912668 730893015 520301365 930569637 759613375 951653198 871194118 953697558 249297808 670598991 667749955 975965337 67049475 720907858 812835396 877492034 539132060 887021719 372124613 577798841 508642485 967147384 214663920 983707403 227071224 552698742 407204988 526989687 747871394 957440070 706013960 903649115 710676692 800262531 529796091 672343935 655869262 943817878 140011329 803049803 625365382 692286284 967860652 995161938 70946875 769866846 614457492 729316107 204746254 465807699 825477535 952831280 934092484 947879537 47952647 386728930 958211445 964035734 26383391 624335075 353315856 823624264 678511122 806352384 898012149 955894581 432535758 445766835 191018864 889730422 974264585 979472487 629890492 754513744 404540765 448561616 129768630 313567470 298643121 388952958 536971274 656778932 718952149 811625320 490502162 707953063 999207893 999569230 63775188 522000142 938812499 995925263 823227892 889257221 664000801 833581282 400088717 817586553 476938631 748079950 215842095 907838831 862727470 918908997 55666332 228815670 555586640 916468804 258573831 695106735 967470521 990006610 446010487 619783937 355087816 430367121 732190614 935270638 174591482 563842446 592488271 696698791 275440517 281057951 425744828 553193250 8599615 809017330 204094240 629625664 38396858 972323895 475843563 791479420 926301060 928302270 931218464 934520640 633988168 692363180 602838421 762053670 749117938 765682780 378419097 495592044 76297787 906029000 854172885 895513294 644684009 955763889 61265820 985016659 703435375 885707946 481957423 482923537 403232686 618475806 92365393 823947403 502369972 607362602 548196654 655458997 43444173 652124103 999541720 999970110 212674646 772548323 678771370 903768046 644940464 786340564 445971176 861484683 419044877 495714957 246098899 671983668 730752988 771146579 592643462 799345385 503648382 865609459 436138082 611737878 828613135 895200591 938504101 976031790 995107364 999796332 837564392 851489436 825829457 918026230 796673841 975911994 604970259 711737799 537408189 619772961 200162728 424595745 985319676 988389337 309585859 528196482 197072314 948103337 175155843 736207875 117954043 696137986 720267752 926574287 529259350 976412724 275221714 605968725 851759600 988647748 13980586 710537552 501493160 885196210 712054827 888170131 828088251 909463293 633776690 687646042 152197948 758447962 123103567 685615400 926777090 983514247 929737318 953647824 362214269 535544572 743236799 956809887 380959456 684123495 621630121 821838831 11941622 177469468 530164550 682926510 430799666 564603234 364042200 544473828 931932226 953756327 826117708 944271983 40990626 456483510 368271211 386182905 59909400 105517554 700469392 702141983 209288657 566754980 140788573 641683390 49250365 452293377 848785727 964999004 395793284 800313639 750297652 989574808 618886322 961171135 464150890 753857320 826716088 998237372 106362681 790309091 165081095 326111325 34740658 476229964 589946209 697670929 348253706 730887369 979977938 999966400 714295969 860525852 131114166 727614386 365565379 870959891 579145690 936614828 193828586 551349037 254023586 989108859 784766560 795218628 205263681 888892006 508481896 888084024 87864796 580529298 962559780 978184007 862924046 914973664 970782381 970922393 31830161 296209706 334478670 419129452 652159076 666840479 510483733 982088015 129438332 614142858 41327044 956121466 500392573 506340773 447488053 824131493 942690130 988265257 654644463 657851884 58377744 949172756 489899888 669723808 580773408 782254846 784744991 870678859 727061814 979779481 425602924 910496650 906524950 944967905 627368745 707495578 891245989 904928330 591204734 893113134 915963572 922229776 872865069 882882323 391786581 831283244 600889548 777107192 698756179 929801071 234881653 511475497 79918348 493245542 755348185 889658277 426625808 711750180 63066155 306966709 981789908 994794264 847699911 890838349 220829392 311655300 195378454 411014722 769129934 807443570 500403961 617979427 567358795 916671835 638671939 888964828 814640284 971800985 516426683 517474444 661271783 912308737 261421431 647737576 167426937 347502805 804531534 882162929 225156320 711907048 428743674 646104124 324536441 951696064 391241492 957482849 300843438 656142864 553262160 919358985 514214680 968671597 364652008 778386287 579636202 765391829 491401390 966604794 594857627 750570023 664068852 782536942 492169307 600457079 150198145 413682769 261389368 503255165 830960623 951330552 175772447 239204568 621374231 997120681 473440029 485161375 153438238 552742561 956908456 991042921 319242745 889075508 537346048 799798677 224635910 626573297 838096553 885925836 529726502 534853733 183431454 312276222 357963760 878293600 52725715 99383507 919819651 985092609 760317390 809015897 460249681 786831231 936039149 953033916 978244399 978374694 506157349 962268938 344345362 830444477 653726376 852875301 733593159 835392447 522821630 812458215 673306952 834568318 995707898 998686083 971113859 972316543 622369813 705789684 126653654 521381346 824158859 988628486 409378 590240173 181368269 801614844 689804686 946831512 769682788 816284643 37369186 604677198 827964726 956696139 808102280 831371333 179583127 412144143 574083080 928509529 440536496 871902764 367662979 587274187 79078984 433543419 125388125 245679691 78832564 237982446 627751241 758485444 613831739 691427859 721238200 952107969 719647187 912649915 467569212 995262066 665331444 936125295 313786197 431019381 211409944 244361080 345299814 907048278 813106969 969899425 318830961 946843065 850534671 967474117 562553195 692240884 47920193 798576483 934911875 938575531 610119685 671167605 169386347 309422824 197084372 311032105 20670238 324860626 28193037 364571088 529028047 886089649 994393904 997360965 900804393 941719252 890889764 981301617 588970812 614366296 217345673 683539471 77142884 997186900 797309912 857389332 255985491 660402173 857203693 883366175 652276560 755055831 408576961 844391755 389173624 457574022 272092758 690605872 121408949 888424298 133777814 190610875 654644563 730753000 816935832 897378878 113286316 306382354 241436978 535238350 338757908 433159699 667393129 817413503 736998612 971124774 318007275 950596027 993900666 996365822 780826623 811151661 301005141 621349842 365173270 395674597 638447673 824881226 970541931 988338054 35730561 765185034 728334070 758840469 367619712 790052529 934888871 996859639 244227698 467364887 697593704 930162869 198836187 861515345 473845278 946515513 999206969 999958834 104436075 648847318 362666596 844516792 331708829 452019629 652980832 854797934 404577448 959899455 478228338 706170423 25599967 44267983 164573389 316921259 223279654 410689553 622844569 822335348 303250336 483108771 568075383 646137577 506559154 757425740 500889326 540113585 611509411 819550694 976858189 980379514 319747847 841324159 826465932 835412994 237437456 975115001 326848892 910850657 760272210 853601594 424065808 550613682 871546998 969202062 761217213 989971054 880628018 991748559 187647251 529170058 172018614 657764831 997580087 999384168 431070332 883779605 14823085 317067026 193647484 456844545 55555705 280575965 432819585 927963705 141502260 462821244 649886140 788112032 96193622 746637142 655160694 867097120 907310390 970871658 862539940 988012311 944916013 957238044 287141570 661193264 655323633 910570382 769252602 924675502 277408867 970436191 767011684 832097242 552823460 920791407 45704633 484465217 277202422 798891227 273164922 826113346 903913040 969161746 44105291 973690781 27387574 304608692 168997473 981666038 856849441 889563386 904037002 926110478 756293340 964896625 357610821 739643917 50329943 900573822 801085815 910971108 782127571 990016416 124344965 337127021 261163180 497061933 397801105 694542567 377645261 969982293 994960017 998123385 263370128 611382761 769363905 903266451 580111220 995438626 233894914 729560231 820277841 999540793 864558359 971644911 100633584 687598586 217478292 775999208 106785380 323432826 730578263 860376519 307361182 879057610 642710334 666947098 603940751 969830444 746019186 972390945 265097378 670093719 871649648 995036271 504001428 909542482 760654521 839923706 577395167 721890690 502594060 514838829 864720755 981671911 768350246 838086053 561434971 947864555 683998207 887366828 948591422 973867130 346466523 661627595 710141835 952419184 828762167 986967644 865216939 916704695 594622491 873958692 78735614 320660521 948987041 986920821 508217352 797867295 666054472 704760586 388000452 885152230 291679615 690093686 124394999 218360736 936479131 945798297 98865559 112296364 728720573 822466344 513929428 987952609 569806993 729765041 63587640 895710312 183565949 472955410 982246401 983002115 477758784 503913763 29615305 552978183 75770753 484651067 776404587 988522344 987054888 997609141 951248133 956899001 937007785 978197048 822671729 934068921 653232628 995796373 819232875 976209369 639431315 688605815 798669425 942335341 960394693 980037220 983120646 987174977 297113486 849857897 331010816 565812956 684356573 956738446 572921278 788100807 682727919 802596869 897288112 990448783 575134283 804789441 14649675 242506358 610281315 739270239 329847103 549271551 279708345 653328701 954442971 999336146 176004413 489251814 50914873 915673875 674367234 676210547 899090022 914701580 471944568 629591028 246648638 696789049 589479652 823026755 967566375 996892723 255101078 785779074 508888839 559479387 980022016 993772108 198471256 714547715 890831063 968026386 23005950 617903839 754240902 954708697 138469405 554291693 684267712 927618004 995009879 996792359 86096232 222839599 376447993 960355607 142431331 931354865 999993072 999997638 183964439 963120262 813986006 842591669 616363942 839775209 460957609 951865752 574017716 797788330 490104932 897330097 248825279 692561717 382698783 775040885 230522125 236193448 348201143 644145462 240665884 360360284 233252744 708319849 272128360 596272879 23364730 346547708 234737473 474973184 669371096 768782218 58039628 182890135 674816852 995454326 920330266 969505207 811703716 976759985 835972706 917539901 651528675 657915993 148017297 276632207 110577231 657162238 302582294 860685753 387658762 531215671 350151185 661882938 903176619 909817267 380145465 828252124 566524129 925248481 403476894 800757888 138190458 839401429 20215502 440312765 40978711 464168914 207050530 983848082 470696535 776800572 988474684 995540438 835666319 939345989 60149787 464372496 434945270 955479357 198113836 850113347 700614067 970171143 766327899 940348918 964387052 966138601 462630785 734693888 928280006 946504939 984716697 999866893 313963379 672466696 542602824 882681607 777343470 986813765 509122755 818361019 535169438 753784235 487765610 744300664 552649596 645864695 954551097 955599680 258286892 261857390 397498574 898505960 202713283 608146143 77372229 962634689 855399830 980269745 802228790 846915936 165809917 322045285 954131535 970106961 969275788 977851705 979731073 987740900 291514913 950756946 795737136 946643303 389658794 715939603 304551703 434811313 712728008 759780689 136875360 331312305 767746312 821320107 931936083 976768706 53141420 268396481 415530212 742635315 22339557 280718609 694297806 774762831 596030592 958089659 368156779 433081658 47437101 453973315 774296958 835172931 416781753 751923786 722485835 967008904 245741268 540486925 896589125 932262940 920094205 922910678 583774325 703600770 318248417 347847895 910448660 961151876 728185693 777480387 615450790 858332412 820675055 896563464 542099354 899258843 380872678 592234967 603829816 936554294 997122292 997960819 517731575 563813022 238327619 528093346 989794723 992831962 46036945 653000817 868488690 934507453 423445798 979712221 867760056 992082159 653616679 875758633 988340590 988610213 68372879 684472062 605364013 793350227 270443322 575216250 894705306 968847181 852500832 928104556 755102221 900025670 808857923 838019307 395156366 468741996 368617831 387995349 670220007 866068238 737258947 767156907 515726178 700709870 84952069 795394143 951448876 993802052 782610763 850919616 725705099 850996074 388632964 769540708 121760846 393843197 107874672 838593710 53714926 685560801 314752093 742615273 983845090 990722335 483189935 956069224 822621730 933319389 174343917 691364761 37116953 460342788 697942254 945661799 62344782 619534235 368334666 843784458 11775434 48242977 528147498 550661582 404905375 638620975 166017304 957017486 406336281 442888666 361742041 915000609 228069082 927560045 862254426 967089065 521530753 709027980 746528096 952457829 998861159 999606038 37983714 456421481 948847652 987424092 70040936 990461688 679395448 933244998 539213950 946969992 524730761 767532318 938636666 962178981 511368286 867205309 544096210 853867472 64835710 257398914 284591319 892605861 739078005 782447819 111448364 606779150 709114644 775415896 145369564 498980100 36170444 296706448 804128781 936506730 425244042 894884967 791532152 918325942 413539174 687307404 592872969 931792357 252209571 340912268 543824388 615302462 384540351 750253061 238378571 817402283 524201134 772711464 379700996 661171374 376146770 934703139 255587853 421163730 984288617 989059123 925232699 948116144 31425856 188669492 974840832 977531809 647059123 868508364 717763614 984325274 895543423 945971413 468810654 958062067 408766114 799550213 672092532 918509556 82983160 717091217 312415310 550679502 427201687 759187941 792355590 987255346 123451366 871668264 690663513 705492813 810439191 940231578 451080557 883971377 13539568 671368700 16468406 60486263 765300735 880022085 486976529 565569354 800091006 896845451 185407365 801759513 656580614 726097445 201040517 249456079 106767419 350243740 308711641 821384831 161366680 656249269 483327175 837458795 509202432 863845441 160497438 818196725 135441532 174855702 580580484 611289948 312780081 373634500 835501165 963244435 358297939 532223909 816205784 985292411 531957463 726380027 224483554 679411284 837741739 969027791 117316756 587398521 179429059 535255616 735906935 762966933 178255921 603862485 584874694 616900767 472395787 826836393 482455271 893880627 96011407 797177601 294519521 995876609 454334380 862356633 737593864 797545522 521783616 928594143 916646885 933206694 495742055 516902522 12331151 942874680 888461470 897400361 91733471 603503910 930941450 939838721 310610305 718887555 426482964 689493184 953205885 992982228 794425247 923558991 422782035 830343989 897654473 927478700 701296216 911574246 33216769 538752295 304686547 635010323 553851541 932886043 258106457 715331066 240423880 986451063 996765043 996867618 992049440 997488908 883857202 981116644 394839347 595822875 349381828 548982141 643398840 907969667 459082963 924585735 628781456 734216056 132250147 437895363 803118415 915898521 382695048 823238280 177428729 309447656 506147693 563890209 532015320 923814123 914751483 979215857 384724809 546913756 849042201 877693166 325571574 861599685 874804596 939280768 186514708 608085303 389156314 998532566 855327761 996379840 112131883 223886066 547896750 657258963 922012004 926995347 398466132 829511458 387397901 783852650 813434571 978989092 413394716 854190985 439519590 480081734 652090558 706027385 985842569 989148686 373587817 961642073 904188367 935856389 885687026 967759097 92391135 515661731 415582857 433271698 200217830 221125250 874392478 876828502 923690997 977773085 303779803 459819488 334107740 839927751 610720959 874716975 114536523 136208320 957482493 974872275 277888151 556754141 519195984 947845018 811189555 970427164 72944100 791219544 44926195 790106383 611698996 783815730 105070891 327228796 351075641 404253609 725087576 841390198 969607050 974788485 290769608 617653980 40748816 462387748 672727822 911924665 218146337 686835701 610154230 874686153 990275933 998316230 249187413 821262171 85519796 957643708 191482254 765177415 822016831 900462918 190465489 816127943 345353011 674611923 351974283 751964185 566663805 638421850 262822799 951385211 747001722 942483438 654249734 888504464 150393179 681914829 780353012 868298341 942958882 978630854 673062204 992047078 808242594 915100282 281326942 789430893 171402015 822645046 976583266 984235538 786396791 985085196 556781293 911954225 576657805 976045969 854355467 936243731 888922023 978094716 193609648 884072099 143657873 290860108 200377825 967493207 941886156 946242386 635696146 974149036 213196036 228340276 354998731 950354170 154514012 372499684 561292697 873999264 245528792 949306444 405629631 872461020 124915651 776588695 739519149 948160145 873141139 951316700 906393459 997205580 217489623 330031912 267627231 543068805 178090463 421848094 980347338 990139457 590814176 839752037 592094466 864384020 529547602 708431233 591560534 956383774 338485902 750444490 508972239 807788761 9195252 797096074 63693435 694268839 958486307 976344103 594382194 800695533 573178231 640704131 387842576 709722949 420756029 884775645 790538240 970773450 377748360 777058002 986543473 994587565 959029843 972926781 18909844 573782099 431538401 719797281 44350822 59167464 438171593 924330850 103077300 838893893 908065353 946688185 374771118 524255738 839334475 873009368 781580235 845536541 554417957 701590453 197495731 274236561 369284995 957270289 3670185 956492377 66309721 222433425 674256706 726254228 2367954 821422175 929173321 954255187 484043481 969737011 825346328 870458340 378117423 896216340 534658987 647745049 939989365 958616781 512055696 752238902 35067639 570353686 921158821 939414280 46781938 606206190 765672919 924055393 652014534 923764432 722869473 773703382 879863023 913175825 556348125 605598487 706487748 972400322 710277295 745180113 232432885 405357962 702868954 948355587 854058724 920916558 772679398 787888483 650662143 751237283 421643648 909133615 289535282 371896262 809351963 858877615 98523547 887576041 237206433 730579278 947266724 986411793 421798768 580047281 230395630 516312110 986599716 990453973 165152019 700295253 650491992 767742796 19721380 588257881 394664561 590974513 487598079 576975004 444635926 875768451 90675188 943153543 459038345 495289151 48680542 262145282 755092496 926101547 930793769 988212000 535553453 989445848 535595780 824124685 747627713 790291788 859561349 964066513 69090765 859307198 430989006 517111082 123830816 696789758 903046368 947138220 849934552 943116448 348535797 906512812 113092006 113496111 268409508 524281214 28213162 812931789 49508305 114415955 184885292 707321450 716208729 978487124 187574956 447837966 713413564 916109729 260253914 708999044 553241560 594526871 104084728 570666138 200307315 816552379 574569780 688825214 443883999 598572679 424743704 631443602 280403649 301646840 208685643 409685862 309910892 507658817 467471717 602863741 179898839 395950934 373043698 633286830 491673655 966959641 559996722 753308421 711082771 827943492 875317680 900670126 932190251 957353371 716543469 796426525 855312998 877082022 660680780 960470264 385499326 737123598 207876580 536831534 685381001 794272937 288912546 345726982 76481462 122888118 995221751 999442189 961533132 981867000 920285633 980977695 662284028 966491920 470953306 477319432 715150162 760627640 47276491 646605040 234928529 705888073 783075000 911606013 975656458 989557410 671272286 847380101 229126818 940520418 99939374 208871979 459182497 531277028 30141084 899022628 970647557 989791076 621823664 829825202 295788609 756596348 973572424 997367178 351763474 561511158 279880474 878785957 384917914 765209735 995682736 998970984 25275676 894343216 724089450 762757099 991903869 998879717 176730686 511337629 800284414 918461238 920557838 937170900 605580232 714748592 493188419 713099974 603479890 636719094 695978943 871916604 81444487 575143796 185706203 622235421 942854533 951537928 240530058 459240697 40570542 812742970 169697011 924678052 796300127 945512300 3416537 334889185 250103632 813180098 143732411 587565369 751491928 923407186 584237210 629637170 933843915 968270080 567854654 782750324 159116295 218943710 999604003 999684248 51890796 581920163 499787245 705648304 685503872 723967935 139754255 978679633 301976741 316943634 239504007 736107151 924964414 935798407 731681166 942298143 564482194 721406570 782055869 861460430 473632050 926370719 464878031 558286580 709956858 847343435 156213767 950445847 929931325 972965440 221774693 881762399 179098334 832864712 967896728 974050111 176641215 436795409 905403263 912200014 146360759 883205035 214676686 224946601 817258399 850408630 280644018 391227000 502198494 630865972 915987002 949485759 401561543 801722811 36399589 791831307 370578223 427100083 919689659 922923867 781459531 875257747 24382600 887441158 528600526 868357765 943704961 995676410 238284430 254063502 602830076 708930949 205719889 952312174 516350581 872734014 880509138 991535097 326399680 732652298 85273752 616285898 890708055 919207584 19182473 565524042 973864727 984479368 152565308 245346868 664195344 868763264 95601756 179063197 314242760 477829219 494017901 507825031 855376920 923194980 825235278 912558346 775626877 877148235 781881508 903844706 866763977 987884179 254290832 769213238 588982118 872224893 518376302 852099011 243682179 426257616 808766091 907256974 245653707 796991206 269844213 607155299 17366440 691786555 217430921 238115164 364956417 696111885 132217925 212314687 792649267 990241794 949665418 960356931 913622357 963635606 583671570 606996949 316312058 781988536 367286261 832197900 855042981 964081382 546449837 858841831 573696844 965154479 120872884 732018029 376586238 752887037 808492608 931320260 417043434 722603654 452374310 849733507 539359267 759725679 486362571 801540089 177147762 967764955 385431316 611293506 788496791 953722277 427451384 431049422 99261887 980725532 533208620 865109475 291310484 977200534 337407335 936549585 616492586 701153327 327820617 902766795 708214917 795615943 279875033 925907642 640918160 827108558 155538439 770974199 460926121 906522019 828030364 896089638 33012154 721480212 211273883 878080710 835923625 992020983 368302866 631724956 646828299 815175883 311471589 453168772 626439154 666076091 927646011 993211573 589377489 812217367 90086417 789024408 536642638 589874727 731677500 906584706 220534597 710763976 343350469 407432609 858189271 865644150 981089899 981564739 618490428 802616118 878329562 944254215 677646854 786269349 983483214 991355628 440251738 911362005 975347474 992864920 477024985 674076422 372713486 452901969 996676104 998484622 702860336 999547420 307590230 426234851 756782025 948994719 102909687 563723436 548799050 698536628 418005078 438517082 402366174 926180158 972226922 993167612 258465365 663841537 570758536 663360022 750986838 895741704 497060145 611682755 486864234 707738913 491554069 848954458 86054397 897046544 35445564 662798654 309876662 469863272 205145886 672081267 445612080 651193653 134060638 898723873 132119450 974541992 265357558 441433351 61769463 712482760 690606262 725932974 648092983 871159110 709135807 767535848 361242167 989988241 449236225 635658777 674019480 787657358 451923676 582254440 273701642 353448240 822649355 889951200 503198150 582400308 364674650 717116023 846723276 976016186 283108895 833056533 401207725 746824327 845529614 974252441 605478150 768821732 533194803 581743701 828999968 942085806 837584224 862937154 129518878 900643812 810539040 991330246 17584183 528064670 657313227 787140130 962443045 984487249 59819583 827457891 458329747 696991105 250584242 948842563 281491762 353873721 324945104 776263797 261636539 868784328 151264600 541086189 327131976 431409132 499096971 936037793 813062011 835439544 133308658 408504908 162656439 746648074 36831078 212252322 114879986 935794525 883258243 911147764 384420163 591280650 165098025 435729628 395240524 642942989 198384868 895969864 558115627 969083656 301184262 902439889 582994674 767073862 963666326 995747412 581957293 829318331 950419426 996038198 940614488 982506636 142369783 426669717 877643131 951444133 343662352 689581411 954739828 988609773 146837309 295614718 465314570 665783075 995002541 998426615 404412066 908914302 475425955 882585519 444621236 680954955 699300413 970653137 207433387 803417750 510916269 591805647 987985231 993654140 620359296 770715766 55697500 501064160 75666472 996874736 733005386 768968225 549381075 591397340 898899447 902762823 389620949 422825636 476047987 723567559 199783519 675169308 287559417 527708939 179555755 580729782 981515217 983850487 840247991 864165926 497768456 922363155 105400221 233283266 372544649 776830720 332635353 376843295 83019169 496097827 785056654 932683054 455783065 836122696 943992702 961760287 191923313 556623865 363482395 470442759 46923242 943618418 271212310 547821183 701580790 961949941 884204047 950902145 241163701 912965588 144338774 462548676 160124127 508724366 648887212 767340384 79983887 499004778 375526889 966202055 263893794 284992231 293967533 607343303 70593104 459120817 176640380 458632665 488452837 740065555 909239697 992449793 830411620 853780340 724934079 727259297 312446385 840570337 159898820 463608386 430670271 671714579 959611014 971710370 196172230 372664356 840894079 886628952 515142822 754091253 238548234 429686895 681274505 808614974 843220096 944459869 728651889 947007633 415179807 445098756 591117467 972466086 285563640 493711067 433662858 598192218 230610573 599690693 992150117 996381565 775354091 807610928 832303468 992071744 177193897 239981230 566958189 956944159 392607149 625610987 162838510 277895212 252075202 911397970 175257971 412370521 68735505 100121321 809978470 854538279 977067405 987032218 141481854 761836244 7756433 465679858 101038531 806694582 712406852 914070842 679469249 742037457 229754647 869671846 208984699 402350408 230883861 640073975 879508088 899280858 5073885 678944673 285481636 757631089 714308711 929450830 321659500 532151212 223767377 478278631 525944059 897047802 395272592 497803319 12080024 40354243 741391145 796592047 181333138 610991489 120981449 893707822 809740039 883541549 148835684 594206795 980630846 983671263 507759520 600070589 202701493 410719343 59675811 472358348 4547653 918047500 227669169 647444416 168927108 418311766 142435016 889042822 639987117 987810507 964637319 992851675 524915731 961628052 828770486 869655067 592376313 708041483 791241013 878983719 686304498 694750623 276971033 650015998 738746846 919362504 684478884 796542062 279348718 836059130 280141269 880891913 351564064 392269046 185221223 456160550 898531136 969288760 439627971 605504489 592243788 904270295 161805518 616550755 78315384 268537238 452285948 750794464 577449345 579020098 110805249 518380711 858805828 931129814 905554789 917606800 773063791 893956301 161749852 822425432 329786505 899542595 746647267 991901690 972843642 998545201 588088653 648639901 781216690 868477281 903614514 936063029 737004581 860055896 852790138 955666252 16701993 69561852 239057212 861044634 550185669 900615239 109890684 153817337 876048510 911520648 684316486 817487355 500807911 543325983 647036778 791244803 30044921 800351646 315662004 371134670 945302518 971060500 906139860 971477255 874916721 908726123 179166781 718554401 715027678 873939772 342530033 492014614 696782592 819986072 558137465 562440411 46651501 200682645 451730254 835793210 439791616 518654313 774088553 984292560 64692365 489121475 234536860 375680304 545971327 903459506 105115544 832223974 824169321 899710085 907381534 927382138 950660888 952683632 165619759 512487448 129891827 731770471 530484243 840681242 41897205 503277753 932183125 933611779 648317685 757095811 365971036 665390186 201019995 222940048 25952434 661557523 335586446 414371807 159649130 277281659 861364197 939561442 636114721 818041962 715751574 827662803 173817314 238328228 648654573 747805781 852463395 995736035 365830332 815760867 469867957 697174869 823590964 939282379 16327529 59670613 226405556 496466917 205569162 417256958 310299045 702555268 962749169 998879410 622341955 758471419 955913764 983744125 581724688 927633188 171044463 986278730 779518843 853543565 880217749 882380253 287268482 563408110 475331773 578939316 109699597 907157383 629254784 904889889 226398197 419489993 108153283 962096442 744427108 846558139 911104889 925608695 3344035 364289340 195259951 368614521 88566334 247580390 145097575 234218455 222746863 639404204 731036740 812090696 989265241 994508414 814382609 849215740 602635688 847431002 102282975 559662614 853907832 876310941 269499229 358369010 874946746 900545045 721221925 982018583 657762838 809300772 920970683 957343162 651499942 651709805 843818172 969164710 656993326 822496680 872106894 992899002 569128261 969721603 344881268 828435827 969122133 987199475 833473943 896315988 65651401 557585855 955633047 964747772 642820109 886215489 9946389 832579426 72400800 518329094 113671043 947496339 816025266 895125712 971072558 979410378 176439224 292432484 504685890 943107724 250600809 534053284 931389487 931646869 529620597 956848299 80494765 305268365 361754632 538017381 860413635 980807114 222394687 328475906 17563246 931717268 161472810 974096065 74048553 932711064 666636842 944599332 249939219 811600136 924310766 973428718 768649261 990567397 970734614 977391071 102121600 957371195 426145610 688200679 465808491 938195633 201658082 917039817 762608321 918534251 86271606 729254741 731703042 921549025 549254256 937148371 836486032 906108698 342416708 982949643 604041336 777668532 396090529 838611507 844699734 965621720 694460137 848477124 489029276 848947551 149221503 535172975 914354054 930556395 248435689 843501692 442844710 487958187 43998477 977903256 403094899 858477579 987244145 990539653 399685532 961246053 969912217 993505226 813108988 988132926 171175229 852560868 224830531 610968669 413012475 982287608 456528759 530972627 410145683 973300008 303554163 724064316 872395572 911574851 600363342 643071765 463242164 580905494 334933360 995280086 130310261 801678612 951478830 991432667 350120900 918541017 967316264 985698916 355284235 709079876 156521040 686327090 514140288 802047619 154210820 321622088 879182517 987466295 492919373 585742117 771659431 797031746 825242175 986119352 162919526 466591506 627027755 833265544 753647000 789011983 939877104 940605823 239884177 641613829 762328118 942442831 501219782 517768583 8976067 538756473 232497616 769173883 682832922 997202256 410979776 971250687 537995802 812105156 133791229 607889979 716175051 946589081 760811855 872529037 552367877 971648217 759984141 892716746 563512867 797517652 613936180 776804709 114328147 927072678 657528020 921545928 65808354 409185706 306267098 374429289 133624455 854487481 89347472 992344672 315447995 347546326 494879844 774288522 286515365 713404365 515104077 737833016 215553568 406668407 465250671 641888582 687029120 778275876 483297042 546171636 102307375 230632960 30563339 53413406 776409813 795848823 234218030 786924452 314945062 816490854 621702151 860443850 835257540 842360068 308889085 357851119 91906223 557548338 955451762 973423231 442539638 999158270 907978789 995666233 412859197 433668780 6116233 233427501 147783690 503741047 486907539 894304639 311215058 451299206 691395287 862165274 992138062 996216034 875060269 979525749 173973492 351781750 983026952 995647827 981032653 988010964 504155707 840109761 152996791 320722825 889584580 993841919 579308451 686292743 258459281 521526520 22235186 568447791 546444245 998938481 180812995 660302522 241272273 844529931 672393628 782084270 337346309 427798791 64974057 584240263 72794236 238606163 286500167 399631877 50315336 673193462 404468459 987951590 261011460 504665588 352811069 882199077 119326608 511588409 56158668 532046994 461616256 550076869 794973610 879611546 297671132 906267364 480191439 798143130 920642877 962084172 77634324 922090314 94138032 902301136 10492981 794234485 976433542 981523375 18254912 314685136 821306795 929499845 954556137 990966468 904676329 997749990 411425132 500013134 608859027 694234047 109454258 292935645 198897760 275537265 705416421 890323570 605491603 691952060 863683537 870348911 806412976 876554195 77512379 471191141 481592230 558318816 22825860 233738827 664283355 759988820 643780435 671264928 27737761 820504948 740028752 803044725 369492270 655827950 11009372 452613428 590268875 759495687 984192580 999061276 693911361 981176970 158926084 613398388 200347430 819108032 748169275 771030299 227354348 780353346 278109737 428373134 151119195 699088608 804137677 999820082 498338805 758778965 710191315 765205626 668327830 972758879 489322947 544969069 250169949 456028951 6937225 902848250 221994599 745055668 485135474 974301254 185379286 613141041 100344177 731376193 590611294 894642284 300861211 613055506 133303122 443314523 800908715 992287439 601117217 604914020 275423546 930798829 889303387 943398886 853756940 976120652 611462001 964283698 420240096 603406775 353016256 566160200 287418818 334584646 580251634 852677323 244669717 776760692 868796878 897834335 668873905 772550950 695019377 723350563 696546213 797109039 545521230 776823930 623618124 897541131 72323795 289941341 652489336 685134500 428820 737582783 787487998 896663170 454295596 632776513 407211388 832555850 873672079 958888353 405163900 478988364 969847399 998079414 231529321 315643811 937679144 980265075 469111826 543355097 491239276 769311683 176747062 868619388 527296837 974212506 303871498 975622974 230489107 391978941 569138545 719532391 603686126 895029941 987347948 991734321 117723904 509845838 480567423 834536545 405256358 439299811 355398906 750095633 664094226 877846709 236893952 288568476 255143993 858598580 861594051 994988945 47614530 533787876 477742828 672419631 465241747 576952670 95693761 118547024 93295728 585546715 190466932 827992882 187031657 616880012 420111269 705403536 889081088 956410700 291365485 768982913 714443381 852805369 924376248 980980821 117136493 710840143 853861571 874015643 362619439 494791602 293776536 913777493 187079796 397724261 847155298 993580425 272248027 631921003 875604833 941548266 793477483 992405782 10822676 736467164 705576607 997999184 179286154 727432300 590507142 980242019 150071656 397622899 511158396 580975274 895324689 895738974 555673994 877071017 585874005 991765604 527852907 697856396 52516151 206860907 410783646 772358950 275034329 279973404 284987834 360138966 56627659 333966565 843235563 880560026 491924813 603140697 31479401 676770671 152625055 667410612 439717957 963059709 725023733 839418726 995722422 999880643 595720316 778386975 297111303 967912851 544329616 691997015 136128790 807329442 332223063 900416435 885069360 999804474 757141833 782077808 756778327 762842024 602596118 950011540 39255604 559459678 845489984 914987662 746489471 820309432 425373177 757900909 576572096 876627513 335110827 964732973 590795682 674604240 412340808 894358367 355023139 406409530 721184793 889238382 398141291 672571848 87494775 162260559 616346824 990376452 905744172 913692002 757728915 874278078 572409232 811924991 313395848 437110019 617590087 981523885 341575579 741174670 375137904 998240679 734336213 874805484 379597421 790467711 152607127 925157755 597183080 977514250 560439614 600932702 351519935 401185760 216190750 384589812 873858054 904411240 563003392 845984752 87207817 235473493 159843513 311845677 543902063 867302602 151564674 176040352 342254412 573378184 845662870 875910553 834237810 995019909 51022060 388697015 975658432 993376099 56860749 317205931 853558925 930192416 779462082 942082159 901678098 903179698 787757872 885265281 673377645 937782711 454123994 892921740 908136374 942134730 978790218 993560226 450175728 613189807 195729057 507464582 253074054 967443619 440313339 815820318 386998253 511027612 703171108 792134242 915778987 927152034 459440590 509375885 626653938 852569296 717705892 895771017 489784088 546984408 190680166 939849567 88874545 985507450 56907352 400569922 986415029 986978946 487944965 994931891 736990317 804504061 15566002 168135067 92097090 525367654 800048788 999402965 459738245 902968781 91660730 753985289 322837590 878574257 561608574 802125649 702237318 832890066 391619590 752528449 340622140 881418246 856001070 866953759 587154605 714081704 680517706 831994882 864928572 996792623 14314027 889272383 35641295 393190895 55832129 923407343 360934778 929865546 48106248 604599171 57467725 182686916 798052120 997288748 379844112 743780447 148789969 205993406 678301408 740449952 357508898 415044602 38482023 967864720 102281475 368055540 457860766 999120329 812306872 983960158 298966193 765145660 132467282 394716311 730383795 781927551 175355243 967966161 489890647 529224739 609891440 979134120 494114924 988161278 362884330 694396305 364401225 472797515 822854785 906938709 2625554 394339113 416419408 662724136 436557844 905752500 641244415 907258663 123841619 996656564 574986591 582217602 275007813 826646024 741473464 758589705 706048656 719108638 345231475 877132236 980108742 998408281 399776640 624308198 454331599 581425354 929609122 931356131 589524582 860141165 167448060 381755202 402693636 871465620 342359180 522987894 135181839 226817780 657169855 689734655 206229478 715850771 637281525 764789818 362909178 399229766 684127239 870360422 325306661 762972273 252007095 654231037 350232260 698616972 489703202 668415700 593183859 637693530 888028272 967452137 643765093 773316789 908773848 984563469 11065855 839172755 741413717 910651657 89218460 433021476 225740902 945046274 226931274 516550871 966862538 977441818 517572627 704305192 489375152 639713343 271768719 970809932 21485791 49643520 918422162 963516540 644836581 971075664 981477 874468301 657777191 754600701 250515914 714846563 330793803 470585482 306705385 370665092 634272136 914082477 599138701 729008536 969791891 998771261 20041182 883372848 108700248 736269843 371194031 483997031 854490503 916894912 183758053 787852100 944640309 968097349 816370296 864150831 120577674 124364036 698298961 831370495 237971002 990863896 186404386 327679676 973717025 984554435 343983272 434171522 638829953 679638557 860736839 938317943 111761829 260364833 447599223 620114413 663434267 833728472 722574901 845775444 863378082 914938315 454534338 552130985 196451216 683930845 292255076 973904057 474099559 723607896 365133887 506308018 863939698 939921300 57240959 668899572 504949369 597417663 655629864 902618892 848779600 969276150 490608826 569112354 569873819 879666960 355129761 891854679 331262665 852330540 428681906 847899836 950179488 988022944 309383995 336234142 733367943 795055331 113114117 619775613 702816978 975840426 356597728 994001305 575062460 807457144 845317636 959840610 800191596 946434961 438836725 820331192 878859810 886226916 238770767 649619426 73196051 890258191 281239380 476018058 546078947 937920690 790543424 871395105 296329908 865623142 819978230 871755830 750965074 758731148 94142058 627118805 839065373 926142135 242742310 277042094 669742708 827644763 562685280 710354064 925769716 957523951 336897754 967036270 919935911 935287582 90183249 775743277 516683985 657017059 769393878 827587095 15830585 739006471 127207233 147718517 63338350 177805542 775326497 955884989 591472982 780132737 619183943 706493536 591529224 949817817 202638909 324465106 603988035 665809302 768704132 912109660 67520248 299564380 555661409 686308143 814487872 892848443 310241153 894181543 71785700 506417547 281303685 705377767 29823453 650250104 41545247 682707968 105210510 782488474 321684297 327421312 301239385 797501531 98795903 118398943 706742753 723077002 298330249 435155898 9673840 400209042 150351000 787740953 646859104 935937919 517559722 642856660 963949040 979648471 775942191 904861511 580449231 986233620 703361515 853451162 321282879 538729391 211953290 407886259 426583847 752015678 902947787 933700388 480943685 958044945 980968230 997069333 573307524 625513648 538031725 594476748 91420940 960452240 119223353 415647529 614576740 773399379 243945328 585674838 882768223 891673715 532263367 742301705 83713255 310263769 489357428 994788851 542138844 984304790 372431097 702078783 693716044 767461301 608713660 866109483 378794795 573376922 990981342 999444739 207530274 251965137 331713929 798042391 216642368 741215496 971976863 980920035 117280280 623174001 427225598 815426207 418070119 646834554 456981990 673809879 238686638 989385824 898944089 949036481 42907772 193800850 251297394 805047941 484081655 799950242 365710943 923455061 24568176 417647777 512099282 569166899 655929357 826259042 669446249 999940060 899414162 971720256 487551609 615263175 423166231 666051099 252429995 999211360 890033281 923852547 152582016 955586528 288991756 634614432 582396225 959513040 937658127 979050626 149788826 442957324 210910740 441822272 989255245 989679884 495901654 976009315 734492892 956769241 615263785 781417720 789482573 843110718 238032728 943204144 454683927 891330620 458719137 590073917 281264416 715120647 174928273 603931521 790115276 936710575 485599454 677388623 696377060 782138464 148811290 271082447 926187293 990795149 224617667 639559321 600158303 991245052 702127059 936025293 577800427 908253796 154499058 342287218 1496856 563280328 867850365 967366370 984550857 995011198 624178438 945441407 601013989 894702774 363006268 814567617 444863917 654723701 777405331 900587164 288053696 984304366 759988201 808061826 103141915 596276183 494388060 689015785 683796063 735186041 869775712 993789918 726809788 745273462 563341182 996655956 610996335 869426742 851721373 894684523 779934558 974015834 597532537 866304184 97724925 525913839 910453939 959229208 602063540 985492259 900955031 911833965 951101318 997425956 196652323 594635695 115794059 717748433 957734935 996564819 177480769 450409908 632397523 739221623 732717697 874558628 245881550 904150952 276602702 557805570 648490588 983074477 260471957 997970913 129722845 296332259 621131882 927070458 814597886 867951974 931013231 959046579 44165573 730485564 890640967 995900220 950818138 996451586 55987929 582961395 805256349 932413177 42654235 486631433 83657344 717468654 75521709 133632797 499398984 545751297 914773288 956282991 320573025 650532433 368089937 766607072 376008607 470041723 654996463 854260193 240858204 475548271 842612827 957929997 762373319 951606913 901529709 903172719 326612443 852036290 467677078 886768544 526004726 599008196 196129838 770991709 189323817 590198346 380775322 431163356 276508921 922702753 723277012 956893845 111702466 307332724 26860159 919909551 205365566 874160634 590298990 721856731 120788124 935354370 947337658 982616537 551052549 553958535 788949060 914302139 544284706 993815117 313848254 769787660 639684131 904924775 896624256 983072139 44585118 152702196 998366051 999426126 751398825 961678770 961953259 976493783 948836268 977821720 933121422 989888374 449476180 967843445 105298336 285998602 514521593 782017005 105500922 489275679 813204127 875732178 641571864 956931614 87609718 552840438 469554325 589599369 167550456 518335811 514665433 736008464 863695971 985456981 730822361 990240585 503479597 781515648 629457673 919774005 592126422 603046442 374423050 695433968 650259595 898453937 89476751 901651964 66215349 209681576 912017073 964487639 972021582 978206306 807978684 965350594 107754845 866755549 456545394 987053444 907921485 935346574 413306539 424230707 320701453 764023269 582393155 623662211 891709623 980438038 148755685 546601473 521030514 571347206 89864640 869458383 842079225 994784236 374077445 677801450 320175380 800866770 407751966 551418452 488565173 536314081 225133916 408597166 285428458 865418944 400226947 758568904 453977020 779144449 3756210 267623765 462573995 920454835 220583642 289333197 234760422 724243183 988935537 989244098 983873938 991570382 10921224 162456325 274261434 968467036 900160625 970428869 831720424 943370991 810994500 914900770 504906295 956530951 862652950 945987491 851987259 860270763 322540598 482410315 790364582 865557344 394725986 437960206 935585693 995190625 329435170 770282742 151243731 358107302 885317777 955155307 537990200 999225025 27354999 489457648 836081390 837712359 428721146 597984580 750755113 969512166 438568597 461336745 134146870 806119786 54634854 544103855 734424017 874098026 280901710 992304971 611754576 924201677 679696436 897592870 69887279 948976855 933203546 943688068 330082551 498429756 991066787 994793148 198891495 754393580 137672688 422153208 122611977 838069833 191539868 554338385 807774167 865805653 562763915 639373722 883732051 886984728 699184403 954310481 98808282 675494710 284613272 389053514 938369878 990842663 719693228 790784604 907072782 995656073 375121463 735653512 483534252 583091229 399720210 400501320 256690959 293746296 535500248 550334457 143158964 320009478 218132087 806067632 929218977 935002436 107410852 995141275 450999113 530292744 691614481 997675328 475994964 525049681 148822499 524217651 178958416 272610001 872712096 916195881 639459991 807192060 629893280 759641760 637483395 733147677 494634772 993611299 359853027 941497843 167468719 567332921 573643822 883036679 71716527 372736944 405155995 735893234 53839011 606820919 446713382 595002198 485483126 678834510 938484602 981025478 203886678 387341994 655542549 770067725 214084009 983439452 195084167 733011258 981321096 996128329 116096292 418259625 486088553 908945800 368988845 864817013 771863120 872525394 902454418 970924774 21732208 516350098 781373417 945969939 69414058 844578829 839356087 943420508 528072132 630051621 851824243 995163340 3495233 332948007 1559268 616126003 766590788 796858032 743836227 977523618 747239792 976610036 998769355 999426403 373900470 844969617 153201182 825710333 550586049 594792168 102256021 758298563 659658930 783866362 243416274 806018336 751125577 779687542 231457279 646949987 924189844 948387633 143366079 707183322 775507444 909765281 827371336 859266534 148782380 686554655 477547964 953152841 992120119 994867527 967419727 989159658 737905099 938384971 655680221 908891878 621037205 719422992 204454622 465237736 189191238 233839879 762134831 846676261 437366312 519255144 778772531 965447200 972518373 983486648 585084645 784426082 741886870 871030012 52316338 906155267 788095963 821491470 549159889 800374255 361064883 874766131 125041092 870413068 187199232 842548636 551734839 703457616 723297232 978438696 883120253 943994467 492665339 805826628 484659509 629132370 487058402 604380773 579084175 606131532 136164582 300974351 697862219 723869405 533768172 953152252 187103243 812255738 291962248 857165276 716389803 799294136 53112896 126139466 229782333 659243820 958605758 982119878 147143810 266548914 424155604 701581928 869050912 997122270 902179160 973600396 100445334 120427404 639668133 968921396 535110789 562088200 869121700 959337444 906740868 974944314 470071804 843290982 185025359 696078846 48415183 316905349 948386013 952652370 313098500 481623095 272003740 864881835 944028472 980016974 173233995 877958866 629681256 939583830 868333140 883066647 331633419 558549706 981405403 998062375 95470849 981009912 238519819 677220396 450851396 896214307 760323209 800207718 751975671 846811741 395225224 679046175 953154362 957684238 541187853 712233568 544658511 778870476 564740915 658225171 378405607 990412278 230714887 393828428 616907545 942341853 758699162 892452779 640801918 860494431 509477693 568247525 959115476 990452238 84964960 774785883 33438559 772666984 689061078 849744098 925776819 974737679 897220088 949110143 533650142 687493745 136813483 278846044 352209582 722226711 785296211 944062188 13472411 639670663 204087809 832456620 815860039 898282774 411880207 802553476 314770303 724434078 960983445 995616060 794866852 917487730 660934461 686831789 577964153 636524621 109198156 644585416 772389114 861287707 719148463 784701624 843826299 907181831 154939550 851421465 936710964 949803206 147724440 893193262 6263602 957716974 637346758 986241467 435998252 725288248 221201574 938332688 798700207 998089262 108419717 833956985 288291718 599914298 919270090 946954341 841515135 920255396 269620457 520335454 87783463 375422226 529367028 724368172 306679454 332664468 218964204 249281372 270068833 384293534 716469286 879815997 344361541 961307132 348773617 523181470 108027494 108348306 616992051 813596276 697532266 817681130 609923232 896973330 159134137 710439412 425434525 680715267 223057741 712571255 122072125 393377881 548995202 585206607 276203369 950349509 784124106 937596716 33702107 242269696 672337947 714871640 481159906 682886063 367852790 665960594 687913589 733556700 138626436 608521788 690792571 846212119 960876125 996770415 938144048 988020949 186887814 966746085 18360798 184678432 995571766 996830547 109856592 384976440 29153986 591817838 527847772 754922115 969277121 986123834 884781759 943472856 913531970 935991017 603758735 826710213 884880977 980328823 964525456 979962358 24772834 768093463 569793836 827071148 246000748 942498227 75045435 432318200 954091472 959781520 831834742 989442203 214716721 680347968 2359733 152668978 126067284 130080312 680936013 911512542 392094630 449943251 728746947 814263930 64797205 850497110 449998844 806898858 687689596 778521146 528485419 930692278 518063983 956184477 812199849 906857655 772088428 967056779 349776493 619104534 189280721 836349913 241421267 508635305 296476640 974324816 986744476 995803898 283602700 417270467 32316824 989398033 712998805 766317495 195998726 920502666 52395288 964548512 348962992 653968668 776389678 914633939 357411223 825388571 881389542 954465718 188030094 593760940 931636138 959597714 821090259 920394302 54667115 695534396 947474061 980631354 46816276 135805221 263551056 912243987 708574338 920340745 173945476 333027535 16781007 523863710 681662438 915724678 337483740 967499885 162586629 354338844 537486501 679094262 696280872 869085614 542217255 591360571 563177814 595634761 504335112 785854517 337754653 649966989 295416011 798773453 44288119 403760055 143632580 667350743 309820876 379136207 777718721 887559213 23588130 24195448 645522058 928609225 875366493 974599030 800023001 831258321 201640780 580334954 155512651 186189234 124609897 944215419 305211757 874603619 233175760 545256033 865228972 990797579 334130538 882814772 821380896 942559852 603323613 772397065 28994855 296767605 79113877 812942462 367891269 530245603 800038987 809010264 239722551 805502153 126117017 239239476 442933429 446698734 230398016 802593234 225057829 476341686 155048752 273221893 489927934 923372478 546483474 627231341 939641250 990238892 957122189 964056544 210269469 561093685 213201651 769882321 970484187 988135717 137156492 423605251 577920573 586195105 539162079 821573952 463140200 577504628 617817565 952495240 187590769 969779023 445576448 987018604 139799194 908004679 881696813 881802950 55476906 492541426 482827563 797159602 27852355 308227095 251514870 252049638 453095812 500400389 278887841 418157407 395139108 630231966 299216663 767832211 884500436 986098224 721396115 952514749 398342436 861196016 128690714 753727425 447313457 659673942 377036746 875079067 5488358 66991560 722481159 987833407 648679235 921550167 246696526 991604908 928310022 932962080 765030032 913413202 493590138 525295922 104156362 385781152 548238090 714779151 184889796 449179158 218478555 568447676 110201875 744872737 420983408 472853271 242119409 780604896 928522836 932915140 675567634 885943421 124538654 430370928 508385844 744163296 468734786 667400230 367064474 693787039 161348943 301128567 28578984 314768254 724317020 987318584 323913166 734538173 631086324 908882392 685070197 686558905 442169052 723151036 270525277 373256227 81222888 591831075 523111042 814237681 211634607 846355325 499618204 661618409 354643372 994245000 356956779 450887271 424319869 994049760 289108737 700638334 18668881 858249345 650359845 722950556 545060267 901753452 976848801 994082955 317999612 547555750 374411528 421488085 342838482 550296917 512606077 659615647 590886011 827929207 697324324 793569870 547656834 901742505 90387430 220584737 941498950 949038255 105757292 836944755 20037327 701255732 106137703 827738509 507867886 918988166 198184058 374165390 650087555 893088833 32961931 679586543 350484455 880432358 526303658 906926669 367725643 717801479 430539174 505914471 730972373 935745762 486230163 761743583 743593992 807117095 200034193 433741751 397974536 821098463 868755917 889122479 325608954 350616524 605893112 771573349 973189185 988253612 83649968 707031267 534374535 770088461 621331224 740573216 920629837 987812622 728049809 852838946 221330865 785659524 65502319 768018704 387175865 886136302 705780417 819723218 687141108 694939967 93159894 601689341 544785586 901456301 549874421 570779514 754551425 871578403 585968640 864970590 497027568 790002065 274529960 834990178 702098503 948871450 544773850 702768397 80486330 793658438 970459884 976508424 136316636 181507842 907980220 925586382 294649775 830116797 664595976 753360664 720983186 826830639 478136736 631193741 895583445 998984867 877259272 952757296 766135330 950600104 531781178 879376431 186996719 602903075 235121513 238144714 906120409 939594741 159749555 955977765 327624218 809707375 483935783 796075858 807970225 967315484 964345993 967000956 515990063 825482780 453220207 978336848 383457892 524118172 794523724 989332088 885510668 939697824 646366830 672049916 777003511 791484740 294778245 908937898 969247737 977139366 754248658 948865001 786438068 949950178 421901853 912652419 948868707 953053997 240614105 686123696 171259383 297051796 923542326 924771481 139301901 552016606 441054924 909132594 969329658 976646728 887442536 900450566 683139621 900379469 596652900 755456488 205347129 602921338 1102678 358205588 161986643 876838253 955112041 969983854 892565003 893569448 183092828 724424667 497733679 524200255 388466981 928126271 800658192 923647149 690086349 718653002 633832762 842460110 200980874 903189399 897259491 936779055 352012921 694402042 488179920 991257645 413091756 648329912 211480275 256581829 46826930 742471428 775771488 897017338 43775375 561744213 140102555 287537818 676018722 794236296 801092491 943074531 248867254 251238568 240426370 732995429 68263566 223787104 144228489 590303923 797015201 812079962 142198942 841397469 682569191 955223528 14272851 505848359 80155345 779171269 646804525 647446204 410977718 881285769 994166150 995631406 240684280 695366594 157109188 731687114 966402849 990764256 712951554 770109167 531749933 692364746 928702468 980374405 534525913 610823511 690446510 781508504 667715168 749861049 963779290 979926176 735855546 806880853 576953797 811199840 680317864 683752129 831565355 836957775 970704052 988387920 161934055 724656850 817258455 871624480 333736683 474149901 767021386 987225029 674186868 740030953 817374009 918448406 492672167 853051006 704068680 834727249 844292119 983728600 810510875 822554173 217636608 479641184 900834523 954876387 687342529 924371630 882555129 938007691 772394014 823623350 769625754 881415212 487451124 550330139 285935772 681620131 699107972 909359954 778480883 961806308 819827907 834811305 449190749 600451461 239653916 818669497 335911510 660485596 969887957 972003092 848498913 895624810 994237017 997950180 875699893 959092102 255887777 956829087 485421731 982040874 356867317 477432427 792875287 823732784 996154876 996952393 385389693 781007758 687502756 863593440 358508682 901028684 802158850 870325778 581595776 987362186 640119256 925785926 637761476 700437793 919274028 982320779 778273306 975761083 319305270 899781987 150052128 923797012 986004853 987450800 448306077 492909449 776643235 988904323 78206413 620439942 488176283 719245505 590765995 656942591 620532254 903933747 181362745 842632370 940813888 990979597 132162300 169502437 372524335 793306380 401175833 771002941 943945371 966219086 136372485 164098566 466250574 628484217 385886446 569449906 311284577 521420499 57537594 945366087 561330899 831221529 550019344 571944406 279828963 365930841 604438082 679533410 20767963 747016196 867603395 976481966 613485431 814425032 475521399 546962502 266964652 295535105 466385648 498089703 525485985 708958636 379120025 564061914 708954961 740399874 269801162 935925990 545473141 765082878 934442509 980468706 546629606 646929772 866185613 923694658 482943479 960730472 403800668 554668956 406042622 945732516 374340345 418181814 580507313 779324784 66278387 653292375 304502352 952086951 326458639 330553976 569773006 718595689 850063119 961561838 217008964 676389576 320245677 949218189 955650717 978294371 169915286 719874589 650043107 859017048 98689639 960198045 291931269 630043134 294577161 538256804 408993777 532951445 491583897 951026094 809456691 830507596 421639225 813446295 127602290 798851365 300039769 341266734 429705439 698733631 714357920 758660784 881017101 926706334 816896728 906359126 270465042 771623933 244853036 398955945 911133752 965390302 86716569 310281313 4156829 617407277 293971142 926412988 80352219 753815638 999835260 999904754 658505140 943853730 99704152 359488490 849997590 872825847 661991733 868051153 493415703 954478023 23555976 996254436 696144214 885605035 584500243 659705806 484776079 870335533 415710102 732545858 988709785 990564686 518359233 923611976 716388521 976241344 458029252 864506931 984083173 984466811 100132749 952211283 778716990 999335809 527439564 562603854 145431272 338154776 438800768 923962226 518486211 989527300 886586464 966481351 829957960 903722936 873383398 879909822 528122952 675722857 383632658 554350934 504665661 857271650 554024221 912330894 777891868 868734561 327193693 471681032 172241901 467766683 886135369 939714646 640409316 879377414 478969078 504626417 765174124 771438245 617180962 900435904 352909110 592223255 685626673 738109297 120186946 198675274 385765260 871183494 418255228 607714352 48683065 242988988 977997757 986284091 244774221 554180516 524811695 991046785 344058018 474592090 779379098 884739598 331507895 804625612 199974726 620208988 430620524 974159202 374660317 494769535 604765619 882163759 933106340 955191849 608959492 847974802 27544064 259771638 423624707 920916947 741349869 743143058 628857702 847476565 774522197 969003375 90933372 921454902 343125429 911870653 766003816 790152011 669491675 743642934 776315242 910803028 44136382 75643997 700615421 891985871 801264812 928902097 46790390 732548482 822277737 998787011 665585180 797540877 465253230 740312139 198177701 798085828 22621987 357275398 799510778 915284168 595415606 969329874 796033692 979247980 601689088 610230521 757737754 843441134 838591697 889851454 957667958 964145799 279343579 678019940 478477126 592902532 946771379 998610626 250524286 837869572 313613308 641264670 865284589 967203899 332704169 879780388 269019176 374970136 118281176 162362745 252359899 342327262 979220153 997472352 267462382 746594034 412831930 783084421 622011331 695702378 6095503 426947189 123802042 430317334 531794233 889494035 263828254 980427988 317654152 976850724 544257600 803494982 215071165 618415089 248821649 870444470 585748427 811184157 282878873 913003927 135890878 456903721 793335519 975443491 557342894 814999767 595512940 801379036 736422597 945404518 672070629 938194404 666696410 839022942 960533042 964937854 183865286 502800620 363004657 619047216 39460804 72685360 581708958 745427908 834706992 989601923 900404420 952448902 967709847 980871144 569380265 602024411 944299856 968863967 967933438 991034376 412266171 419961827 21079910 263544422 529288005 778561744 442198515 806490100 861031445 988659394 469007343 714680194 970496487 997336903 112380994 665022964 124589682 725120284 468152229 497672464 679779119 953040160 428470195 539477956 356649006 954172910 601065484 984845884 729221777 957922431 961307078 991710374 133809512 376140227 38086980 78309104 314791472 913086677 510569775 960741808 576230888 846541911 647357627 754996547 572056392 895341461 360483095 876804319 383992575 693392846 268106855 502640262 913634890 952954625 683679759 707974963 224858844 797365663 732886042 896534854 447418072 493306595 835836192 937377642 516057939 742287223 516998185 926634218 481554467 803537249 169957230 456324022 985403704 989924734 852979752 991922450 963147251 970776132 984820155 990956129 760382198 996830312 232658246 976941876 557461199 722832997 150791233 622155467 904045756 976065801 995444131 999068385 720883873 948692138 502592681 625087548 393032309 405502251 880085726 974765256 922731374 927018948 461141191 923042150 821827535 893348959 732218072 811338105 676163220 740919119 980041658 982115195 57596054 379187802 887054013 895655571 459811676 962898659 396953963 629534390 307349166 926079704 704602347 773244504 784165534 887873888 672589731 684322997 449022459 752528772 673332565 938455411 634377277 925691852 126652313 618437712 890120464 945719673 447474415 850173060 31093868 32041485 357925462 491220498 575842743 977319201 835215058 925096527 662805560 719750689 21747118 988215799 784043777 992827392 99310719 740688445 315837194 560452187 486375418 854192505 257374152 791653683 724262538 862068193 18334758 181598510 576616783 906747935 942238488 992130142 337767883 436197307 466277962 989124952 631977274 923333211 257945024 488360133 974244005 989407778 17998761 582697472 355153343 528174836 104229750 509344950 736676595 843514841 843023608 908986099 232420819 718683198 652087371 980514314 265247150 754770495 649841888 985875511 884809831 904055922 271777991 468479396 299237735 787470660 189446872 565208430 122811340 919767557 861359962 930643499 691825329 848667526 420828685 436523286 261281649 573081904 757236953 801827447 39662238 926205040 643105601 840970188 823679127 932596251 909560604 931447306 42250083 613109130 511021388 604258195 992740248 999563709 25614804 666737911 103844576 859314897 511547970 901288895 690862293 939331171 582454209 669085405 97953146 199324683 7705765 603829749 453606433 789328065 7613055 868217198 486430923 686944702 917112212 996845322 25507583 830962302 947710778 970835077 845067501 868009601 121738524 633826938 907742907 960188529 309681977 817934484 63077003 940458944 888676587 995776194 999551582 999788824 845994869 949502724 599307373 944450596 436749757 794511203 234221612 773448155 256694194 328831427 568570196 813682932 698367099 728650081 26244956 131537089 905984124 970305095 782559831 921934879 109346334 951273657 587575943 842992006 851702045 890757560 35574534 971955207 517617340 740643357 163943391 340830865 269523865 301828030 234231868 480634581 348299207 802778901 386586552 857978191 191751925 832852814 202236426 694414297 47899699 366196382 387881085 740782828 774189349 882236006 545540438 616266191 507189578 549335036 916882831 928937933 207740219 257758534 837172210 922612633 661834913 932137614 729981537 782136438 854685373 888974580 790456591 827310086 2618852 574796233 398784409 691615653 193323740 237309183 156401593 202694253 359662731 650062107 975071602 995971962 554698064 739872457 916547498 990760463 580719394 640570299 979944897 996887970 714494087 849235291 53128908 804970229 622948024 980732485 528914481 875233564 509023133 802173346 324055974 659827524 871899753 976861280 459604081 524111510 645905527 692556282 245662964 357882296 989575989 990494095 696959984 736132201 756551742 995248389 370291420 823888919 875347292 894558143 346142809 747179801 215586393 707472211 869966700 937946310 81237802 649289421 404567825 635712060 888493162 919858465 818370084 923634060 129764321 254942556 13908568 602051055 437192386 791853706 250622647 491459407 781220192 826450787 175094134 665985680 620456975 940028325 372221449 893024484 196437209 209528709 958605277 961421744 546339194 760257066 832490193 892909286 306538635 720475097 108715561 456060519 337454960 744199804 753826626 966904677 465863286 928914866 697082670 845105806 969316978 970930922 616981186 752571224 536479564 823550554 138909763 971981300 583587480 957951860 764253283 873117831 42779467 589472520 174197698 400893516 141739634 311285583 729763274 732238370 694570886 791754121 501217964 525220397 565624674 973102581 976874735 991686025 447748577 449531348 61953886 714811696 671355252 726219280 962373230 966343356 922351311 978501268 470006882 992740764 925260801 996876080 785330987 823481084 709655509 791230595 371003491 868558080 527909604 894796825 407369452 865997856 410805474 667416211 125055099 613584612 318144196 378400166 701508395 897304484 867598234 904189197 529887333 744047280 475392147 898146187 264681280 803413488 373140437 413366872 754888314 865093928 807560817 954439379 972987661 985563123 725931059 955917315 663966046 864173708 783713433 952928038 405233196 609229036 88210123 148060798 741438514 749955267 633122491 692457203 234771482 706775453 399741153 842935948 338292047 339492161 82234152 148370755 665216732 823547763 161848026 219464514 90833939 658031874 555980390 570994954 366175878 757109884 215947300 722558148 599163831 896971028 174706544 922440191 486049771 714445118 827974643 974242937 668061182 921963370 583179167 868533108 329526370 508479190 319835093 510751117 343569332 405245854 813411357 915640941 422401581 626437450 379233184 891078775 504810266 740376325 655948059 718686459 176945102 712556111 271474671 982597376 254628800 836997623 993000332 999815297 62684870 459333518 253327417 420067752 333697415 709266431 590755246 837952933 915539720 942065816 670346714 946426925 184757401 475875658 171197411 401008058 828832003 996329254 901421370 995751854 384406137 872284445 89600045 465705858 503556138 726715156 649430852 807066026 863791995 922731608 839035948 850868235 152123711 366838849 596154826 609651198 347727175 988812069 380446739 646271257 833968204 838699715 415689409 702629548 269346574 998360222 572124865 947617474 965910881 988308706 832114157 864984049 495134285 794660745 390779639 889001022 830196758 911531377 608246868 721055125 135425975 305208155 849212684 871879702 135855761 784833159 818298722 965515084 873402166 908803531 564452462 774796329 784990736 837628700 468838794 891836695 966967192 978309197 469596021 605878718 27225163 152399217 330738997 931199767 218337775 426934654 481532520 677532141 696611350 902728479 890364239 958050955 955337755 956477935 788116249 810405917 432866495 835225696 213444721 810542398 560866289 951589511 770388810 879200000 406690106 960130996 332074119 614463156 659550987 674445614 476849868 555437627 374860242 608853945 886392812 971245416 996458435 998245487 779083054 893329822 183744173 932518374 859643367 962328246 54450117 135460009 376791297 435478385 411313187 441605592 475924086 513587120 824900902 947759497 337412430 495363969 158903998 922999066 918501694 949017939 110989704 571393461 475353705 938662087 358013726 892925011 444338241 914236113 147136424 806432102 7638417 479121061 616840996 909641486 571303215 677701577 48978653 442634415 417640360 564372139 694618725 862160935 440058336 614833358 640355145 734590902 303498674 740219890 228747786 387550758 933227360 940078416 652880227 811648716 985420841 987929349 676770080 769845842 416966323 831417105 42969119 150596825 483493647 924764103 372882976 466361196 450745356 541521572 673060064 886775907 408210483 967190124 283194537 795128200 217476883 491016421 892842444 900885811 199294609 222538294 846334802 902657518 518957012 945418782 279941884 697117427 899309328 913742912 293102169 338315218 113594503 211869645 693776658 889496667 580844503 739315451 776163319 981680243 83227345 724715061 478888138 825462928 233546024 865370388 537499052 556185236 239982652 469426696 207289154 749880314 951665397 969243898 1904237 160233766 774568544 805517790 802912623 837004911 358831889 642608976 622444356 696533807 633082576 681698502 824624314 971079662 349341096 672060845 970300235 974955261 424500695 571244984 371192565 823880537 99283965 508284184 530179307 602825290 298269032 623561236 187379110 787675185 169559748 968543312 873699510 973113898 516036629 644522375 940714856 962554717 522260226 627435024 506872946 507554537 85839811 301366462 729712281 947036216 606345293 796982785 678162503 815392058 206693683 425415259 944029802 980157903 480828270 808706937 243273902 308848814 266957512 849623133 854301913 854424094 75798989 522989517 808283835 818191897 426925908 880398123 174876367 373975811 650933259 787368440 190175235 783778919 548997519 897974584 441376215 611539696 914874804 974835751 507356545 720282274 291390491 922070717 106897868 700470164 462136496 801603438 931557918 933619520 705488006 845124581 948779971 952045783 636479069 848011255 125085051 482107522 226565832 797191276 857029401 887333882 739107286 943279562 772433501 919584342 938303860 940745614 472001953 773628154 841730453 923649809 707459209 710245885 416076666 763001868 571600438 948924358 819173924 946584046 259489630 504182969 308040055 415847932 505491935 990279762 739812886 871014461 696541738 958761735 316459207 537280051 872889451 943980398 397704838 445861527 907828855 973154113 48377394 887182442 614393852 705209075 283956074 716388986 221415913 365261835 34176871 510561498 107547834 274548697 928439824 998431766 410918163 428104410 85898201 103327050 905480640 994411665 254339444 358173766 153348881 774860152 435409671 964106582 651100099 755488484 816935157 887738926 306279967 620296731 201719910 703409535 955399656 964318591 170499231 324487270 58832649 441819641 636949727 932419672 655980647 996905342 88817173 413474589 171545779 764616191 467177300 471183677 828799646 962863149 561297730 911677077 138327772 592061755 351216486 658783441 794119656 943508245 972335928 987853955 254858262 682515865 431009873 447399675 497426997 755187912 585248755 756587693 98539788 732126288 892089466 995350964 152208142 602563373 327493075 432848332 646950638 750501468 925660567 990950750 514437662 983240271 532933809 894268843 481123510 732636174 807723370 940834957 714684471 851027394 586878543 821366002 904966752 990044797 400549780 541989712 138423289 923668682 76175005 290987226 141704980 629968292 278390467 659354090 633448756 683839530 784391668 870530113 734527462 787838623 493512151 746946417 227867453 262939191 111350454 984200552 250608078 594122813 318372564 603282332 997357551 998721373 300282692 304396397 441487539 450030849 76930212 422532998 799297713 815223801 288269934 315084096 812391620 830945608 431174572 813080550 108851437 857017599 472439849 874792408 771878961 948366520 368724426 844824719 647707091 739587855 704828436 856240686 586510350 984768029 652925675 849663140 760168531 822150983 927448666 959780513 571528445 628255659 868210489 927610404 943419628 993736674 103128559 874695285 369931085 993134285 490504519 870402816 913925623 988540276 180376315 201123967 956118932 956392182 632378839 837081655 246148501 544086321 567904035 619130478 933417320 939088679 984920883 991488400 624333992 976492106 800983133 949723822 462637625 932929617 452364460 562114760 625608955 626941726 208544668 600512607 21035404 520762831 441898128 648801817 11492639 597201298 305529901 758562333 198810998 560221657 466260371 892162902 868947085 951994775 305836952 383619546 83683632 954612975 995034037 997586545 920863304 943286988 331801526 900573980 905558608 914687896 881614849 975960721 356556984 732040751 20935197 965070883 23260113 996812141 999802274 999927264 826936817 936293111 824562354 999312575 47151743 565969569 922536989 998309088 992251530 998083317 294956818 441380845 644010292 814944792 736479897 869879673 482378183 905564702 745715031 755017120 839570715 912480363 479286349 648906808 160688793 211159037 941186016 969689318 288200095 677952269 951240148 991249491 740101471 835991282 519322306 833358679 234491271 828567195 360028861 527588564 540677999 888613797 342919210 923775871 331639286 624337084 244097104 466800450 646376226 996573981 183660928 280029359 767680388 855758240 333811671 431540188 429111449 927530136 123555279 657574778 359627922 507268174 252570204 419921406 192768962 850590592 562337043 742206883 125942427 511284677 439039840 750852282 223806924 806948106 506789081 575047166 783491954 860699211 481864038 866455100 757386351 878356133 706049168 846761255 611829448 752434834 328690318 353283776 166652271 606213355 117525275 224153924 382587292 409693619 315256147 508240866 484528078 902128945 267627962 499710197 436115039 511388087 666060914 897030025 82614630 193399347 992822898 993641003 26298378 28592692 679770816 712096174 441627514 996466942 622890767 840470713 775580566 844947237 91250240 592823515 389629643 516159071 111264350 765326314 82046733 366925307 787073418 961220357 912202914 994334548 594134392 711037011 523719054 865175478 434092147 837259629 713438698 933921268 124775425 549698619 302835495 449958487 3710350 514004515 326429717 405232157 310841680 464930706 627059429 722123635 259663290 276661079 866242908 905412004 297538927 973485398 798185195 833176193 574254580 581567311 82729185 736657931 343798107 350729849 997232588 997564239 776692066 935884349 344569666 383111094 448016822 626367024 814676435 916285856 647435970 793853593 424543285 698988982 451017439 455554721 811099511 857618605 825234988 912236714 238365440 573966462 646486498 977946662 195925858 675461152 751881287 809187376 166907002 884747932 569436577 999105602 218150193 827946851 159772247 744407685 723699125 825211738 378513225 418494821 367874991 899238682 414466424 484899119 890119549 926615322 297374031 721429344 761781363 794458647 977064284 987844129 148404674 521442067 184428757 542850103 323991315 888722326 177440992 880838034 861546354 971311029 275810184 830301376 186658616 195430749 399075973 567407741 626417250 695191628 3837387 585027468 593740333 981830567 928636256 966512769 224678334 367519295 645320168 926485740 80220936 318083487 212258118 718431321 567842711 903731487 911227661 991938155 565830630 657749630 858753384 881358563 548968485 581042979 928739280 933107545 364786985 902826704 184945884 978141837 896797846 896976877 550104852 868702348 683085658 859474683 786571683 825803351 652838560 886289994 641247831 787021587 866992862 879228721 894016420 956679658 754512435 897726767 263599366 400211349 607799328 807040350 244631112 932599341 179746956 963169710 888892121 922288483 653367745 717091351 609750226 835720730 489889826 533410013 286738834 575819771 404785729 854035620 499944846 931811632 400237259 721648404 786901561 967033011 260366084 686947579 221862717 705365966 160550560 981177688 865201062 935821536 607895094 877299097 846209382 967014185 495371452 760008060 429457447 660600684 733431532 965381858 472346202 586954934 423484643 874300789 587178100 774510209 601659063 655768446 755230917 782449635 636186155 907617501 223440219 878257350 605956474 794388547 847149111 904633580 395376588 815646771 874286696 989342725 551491017 955877744 32981215 56919613 242840210 577770506 703833690 992516748 636971789 866377889 406068503 832269799 115115040 806597721 227862174 860950455 279634104 293409617 5986751 762743406 368323672 416293424 594885267 657739728 774041870 892747044 654935425 755012106 984894589 988746721 498029354 728399142 967215633 992560839 20371313 929686979 739676868 790399108 119436137 959593142 844837438 934127428 890564379 981350317 311276316 837724342 405898333 638259930 581199428 975205409 418219092 528368008 482171586 766053622 456042752 585290849 941285345 979890316 995690623 996519833 603552754 617740782 252926672 545444368 847119050 996135372 671932840 748800355 54888343 335409741 420748313 608568178 101919463 720304618 614950579 973755897 581176599 673711765 749861173 791237854 649365637 923485557 890499595 910876676 443515290 476653997 117334255 897967149 810655164 915797971 199041472 662122711 432131611 553956478 571628996 768595673 242119223 893776013 248594581 721262590 572018423 916727481 408853247 528275700 432504269 903751285 3981320 546845270 843310382 876375312 581101767 621461895 398582356 435171121 973146492 981785736 670730328 979502815 411788398 631277549 584726876 969303485 732043177 833189514 994256636 997184366 841869872 986204271 73568549 459225830 921356096 942973053 220237185 392785119 855104934 930569881 398127199 545768464 151962923 531236485 318163504 354972219 721197212 889697571 721132644 856959056 791390801 865779500 697640829 860616403 342390335 406636933 572440004 812593392 509468860 976780249 923939475 945248352 995375833 998355406 748559440 907971336 363370352 464850284 370414449 782650779 907901367 949166596 866912319 897638470 508686434 950510095 227017551 743008849 908131263 982127132 819780945 887949923 704087180 976988313 621543726 898261398 461296816 967631824 176307438 244846888 573198006 758181682 104887368 405207633 374704017 629170122 958955870 976837125 536658785 633494684 965869326 984091499 875566816 928578852 775498591 952202523 325903125 628326762 784149756 945213034 180573630 219919026 237027625 730899901 821986179 922677945 689603193 969500205 248591956 259693330 845409101 994037001 409650085 942115448 283965014 528533392 665601364 854083015 64523231 480634195 263208509 617958736 414359397 793759499 598707950 906824119 315497787 411104809 761898411 973874796 663731973 970321916 522524432 927939070 941952084 945111574 488762954 549957606 327690740 652143082 112682453 728604523 571363714 962778747 712355049 853587547 767123391 993155091 573786262 954911508 789038163 822326729 347312139 371869230 884319022 941239102 933593199 942391675 219524746 262942928 529541743 957874082 633713828 982676251 558231581 821517069 751851568 838035716 521213629 766388422 515946371 802126976 563957276 700309134 515855997 829601159 435748494 690738382 767654759 977238056 407119239 916042140 137348470 508463705 263569123 344735421 59181700 209404416 272539065 721389047 522834566 561312730 632503411 973231284 680973114 872713138 316047408 649295960 286455338 497496297 883848686 929782316 29627754 707467653 550790288 594585290 376951118 623470967 405377085 756168935 906024914 926223027 441056647 774819502 995988543 999272065 608554625 682481710 284047900 447942079 725520412 921452027 475225165 800192037 370270500 592923185 30497475 381816585 877863392 982456088 368677410 462789065 653621658 924830854 866238688 936190161 57042610 877188448 550162615 693177196 719209420 826259363 828763977 994164358 198371349 201965122 561167272 988689225 936776805 991772520 787117861 919543722 708226212 997499574 640171348 899242520 139068548 409759150 902653285 930624355 53378634 765066386 15888223 334460778 756893296 939021914 524735887 751859601 897682948 985570967 123472279 883872728 66232280 411071705 835358703 983764626 818337015 911445331 124451191 228892331 609467369 801688860 116356086 710032660 569172857 954257609 120447812 939067613 151638313 237076546 991490585 999355717 2219305 794685263 222558817 789670803 667443323 806117172 342975628 651281305 775901537 851179709 736944734 855571512 879136473 957569288 105805325 284258536 431735012 931646564 537178091 925576637 620977161 767303470 923914793 962835535 256802348 582136721 28420829 584557693 314175326 380159894 700333949 962591228 50177530 232565661 623915748 873185754 389906151 416469014 510001035 706105780 266488272 824888974 588459328 782337360 228465152 809549858 42862782 769650415 540046903 810362709 200393990 893413338 461673687 553601963 106575506 782997394 894556482 976139847 304230668 544817701 987569850 993641752 998907575 999940949 390819550 796555109 398564974 843276122 877883419 886794908 877317752 911957834 500515533 979372400 973642521 993080538 239496349 828653608 923601078 953426115 35900145 507077118 702463981 705892102 413406941 658031171 580510754 612271893 7761617 462942790 883361121 971058911 31874753 287633257 57729242 258950671 565839003 668730327 684779527 791265832 230161018 462449462 970856544 997770254 638236097 736782466 302197340 924693421 225432850 845109123 593073755 992148744 494288647 957850972 921083993 999204278 926568593 968894385 457685365 582493139 142231338 246573921 515806690 519380761 342320092 425045463 677754219 868839988 530402407 978903444 599619616 980884401 780512871 879794842 820478706 896156965 817843324 998215345 24430381 706323479 152994966 195149413 600300799 932973817 107229269 578902780 561416463 955550602 656107082 984467304 288281023 917048136 941157898 974935345 66809212 272826263 830322765 951002168 700361 683260502 973572919 985184088 667896066 682391226 489307652 863576723 639676202 846312486 752180531 784521520 192778459 423279540 806365782 904782600 683254433 884530732 927132701 998521097 540955170 763252109 757909744 927293046 606069550 910585172 389287744 882163329 550572564 934697641 970940626 974615283 122679457 784965316 211429751 544165401 877396700 913616191 734315077 920597856 80706168 874439380 171985552 415934557 947362174 994926072 829121724 958822881 322702808 457120214 590006875 605926448 407039283 872397318 806394320 948830542 361897687 863457793 398004277 847892434 642640265 682050524 820563016 934811079 522113305 823010055 669401444 793983875 267691044 465230754 239246826 506549548 810767255 972059803 220715035 404339833 280015473 630373156 439856275 576736374 185187608 530678455 94073365 224296550 967481264 970402997 564503154 768164833 163134274 676263312 438829791 850242045 296937247 548044733 636782048 770818005 202961311 963568240 98318092 828290141 640358660 938352167 88063771 113858719 840109534 879386475 887711368 958662573 734228604 766074524 470674622 813413273 139990259 318603957 102371970 642088017 599868638 700840024 264345067 490953219 362706531 521189668 402628522 896122425 573772081 948323899 533343038 653738807 486031905 851410465 765382815 877431142 66832700 693868405 37546200 468479143 661040661 704182949 23006043 958142467 389429141 907736297 785341572 884181160 985587136 992865950 215506892 701573545 128171428 808977961 405070298 892768182 734160705 846389837 832467443 880304360 438026314 480723486 653373364 833531418 978629603 980550909 983598225 991198675 636069732 682237885 928714197 974238077 417753828 638222215 255631057 797591619 7295313 737001811 8322836 917920844 446067396 817562221 618602318 941032584 55609356 134614048 411260714 660124894 518110316 784017830 919593691 964959513 591479300 811529747 606093654 641346974 820885068 837071254 482861618 794269046 426095644 514242788 386163134 596157719 339426090 953207082 346343997 526593260 295075101 414118819 725832783 943584724 925893989 930096384 237668286 365681720 586914611 713503869 326671253 817932555 739742595 755267660 636229578 640749731 907679428 970306176 422367281 676225619 160479285 782632177 546054206 748872548 129852130 228341116 779641887 968624563 966225745 991418843 999957994 999961291 447711744 855086085 531300290 642011176 270153284 873340968 993977279 997118825 647440792 763709931 203849307 259967692 525168698 600201898 300910120 386625972 139236151 725342521 533580195 584936740 38151228 920675226 451366629 774849753 739034319 849272682 445231237 630195186 909088446 959647350 600142921 880361552 74770720 960328865 956213793 997049029 157582157 826954340 643598915 734727324 657006446 864120700 387432232 416023730 369012912 738906730 840752948 938600067 509981072 936372273 45394791 215258147 550521476 923129620 987916595 995648055 292955716 766187287 355919475 916502304 393453173 673215420 324644941 751963095 182654178 946919215 317174877 654416746 126395264 417313104 424417268 503346670 546019845 929727019 753999638 843160581 44658449 525681842 280775026 764550637 976299105 997801063 402265067 459459980 906083656 928665374 262879461 576873112 369749915 749015941 875255021 998635240 279903126 522975114 128829208 464022470 297741141 588932677 817919043 949979043 534856533 655658524 150545656 778253853 593689657 625961037 678561229 876681941 726717907 932673078 853348946 977673026 946978185 971327173 456554818 792083594 338940152 847794195 149017003 711597023 981999252 988939189 742703907 865181555 968247687 995131671 870490656 954053321 101835045 489431672 152957719 600679830 393851814 917136974 333311613 657263442 905832279 928701881 22900230 831954534 29522269 219881497 787384386 964030864 535496731 847013092 734080862 938090951 374111403 887602859 477869072 969953487 193388540 671186781 305959926 928471224 601051332 655173370 839715135 920597609 322229369 599240033 276053196 794904490 814958939 852425791 995006441 999404135 875099060 905749952 304978395 484410719 755818063 910243032 660485072 914611409 411730316 898116249 111842238 559376500 340892072 976244459 557419493 687671057 337223763 754470136 101794976 706318505 262656671 290012599 46481673 702030191 932527295 989582735 453913157 808183298 861871691 911776245 53361658 222020430 665403225 885394252 362642138 888193309 645114985 814194356 654259315 730280256 318940366 540141678 337181839 585798423 420060092 468633914 22367771 109029828 285591679 426415591 216155855 396532837 862270460 867865089 446384939 836619635 610540859 741590714 35289954 861170841 428018725 615040443 958481425 975752877 463687653 998960310 895725930 963476356 965509701 979809773 622044168 899692534 49525163 452330948 540813040 697089536 556926759 575202167 539403983 848584551 446701673 668387586 99263164 828839272 586991932 961387592 784483702 971310799 694433269 871053706 931411676 956201187 109004033 889071065 682496173 870574948 129926054 475910961 753332290 947417393 958669802 975180298 610011939 811971143 433784833 958655028 635672958 860089664 698136271 710324339 341881714 506073991 288517873 416893276 295983374 452344743 819675659 954607928 801666911 916198826 318521742 604761425 695352473 903938012 589872489 592437379 527123865 762148759 221277927 356532370 114035957 422199043 607774346 776147285 392484628 666660644 718062050 760636489 49224437 546596644 647495475 783234659 787687174 981051183 361932777 804059964 301195065 469020698 672006565 923458175 201384173 611271484 346709507 831210416 983322231 993902572 556394575 839827848 850832457 853577702 454945031 724780148 518016473 697563879 932396424 970225097 912721979 954037411 972852250 977488122 644837447 824548581 80424329 408422315 240661195 937974040 67967789 917972926 529796219 706018275 566081761 844005782 980685648 994891153 262001658 749848616 507912178 598763824 71130882 147680631 198633853 417233818 765912811 869693953 315335915 647280080 846746859 864529654 788535511 916831196 828214030 890177146 906439682 978546940 342581791 975886824 673419743 960285628 218400472 382474710 576388975 720534851 614138893 947901067 591572175 703613489 953140614 956858924 292836701 685300185 196727822 458475108 186694751 194209105 970406411 994201186 596675282 925225299 734897869 959276930 809302403 916103759 379162482 934884323 415630369 563336576 288777330 977213842 968121585 971441419 999932181 999989892 48080443 470211610 151593963 643958861 926749749 958890937 740679070 844254079 415269214 613688233 932826448 957853025 253231696 498866540 919709949 952944766 318110326 323657710 30681209 781151160 519421306 736260260 703411316 739838696 479638385 972734965 780660697 821482181 448449573 993693188 12038300 744199175 87874828 636636017 563181516 706544649 449559900 624707334 170164438 701519089 242970727 982373126 149623602 916750120 930793103 939943074 515502599 963235234 90270315 931403847 561634656 699253998 859733604 929748123 14944134 279848117 20379923 86563093 83709071 835595482 306005648 374634668 925075429 955420143 594908727 922485651 254993773 837258906 636458908 938535795 795840221 945179038 750424195 873960400 918814085 961022973 837716507 897367229 987283659 992545672 286692995 611391250 950227660 972766093 83021466 430215108 15416057 836243334 786917586 942398075 487086395 825173268 444398880 529647424 988872134 994389360 250027536 951682356 273678877 590279659 889465338 928004739 880770832 950160211 144972709 602742583 381649591 532004686 483613100 970405991 658490929 717680581 842675032 855046321 650089024 801174029 938367745 998568512 358226729 986393062 491426232 689050283 176393212 388192248 595048688 616423958 289541034 711825061 810053284 894045093 89487412 984387204 525871203 608122384 46851922 765120553 17877206 546357842 607083461 985677867 457429849 617459386 995205268 999737258 177866384 914867800 39226627 529605559 420728091 470164388 728511806 756375985 683833096 753319428 999761648 999958318 142515455 868301650 636706240 868722958 650740613 768211764 451942313 763509924 307214142 430654275 960523030 982859119 736118499 768334888 701287976 894641044 144196363 499066349 742198985 851387258 312466616 897895043 548511709 570826472 32301745 421180379 543817372 581778428 730783773 942554857 369300113 519894028 476603442 580123644 800527258 989990713 122351352 711081237 130383118 533973055 406660563 742200071 321456722 698717100 656413995 930378164 713400309 876251174 292278845 629870292 72376216 469973771 164819595 843948543 839133995 931862901 830761491 933321788 850068708 864922513 970974964 981822848 715137844 766982904 679351945 987250601 881473297 952643176 407986363 417132006 170113503 446431112 259854822 275495966 558804233 654122390 141518654 538642230 8634303 883583096 559687609 907552185 185086257 951860899 414364365 806693305 663480904 733894327 540342151 703042485 765338763 997309048 106275790 981813755 827827758 951036740 569237203 773929435 101688005 679081162 441046007 875351141 957726593 985861313 319079709 995588000 766341451 920455108 807978284 838020484 89274230 788617420 322592535 880148420 622302764 702166615 63727765 729931359 822714665 946164301 129174817 250365952 536527444 791940093 534844852 776995928 753643319 785732125 814175871 937801996 875841049 941149155 380977654 852288701 69876213 555770798 659390396 776626790 39899974 953437614 958707477 982832017 351984489 763973660 883824718 976281407 932949854 991945047 541326493 891124984 949527745 970730606 152178212 766002144 204869043 867220151 557818539 745260955 125963688 686540707 429871534 432331634 580020394 657853186 209464083 673889262 596611698 708926529 823800466 887318582 436446749 807160433 991714015 999580138 801981577 807266132 338698328 799212071 956598517 987573268 537891975 855556786 149827728 932695113 637182989 960866967 485401384 943501832 1801870 588562459 31816015 825406384 85275372 654281743 38151837 622104019 531004712 833346085 591774780 904273324 671343915 682781548 18487750 922601256 34627352 746120894 746105270 873563553 580754104 600304054 830664850 910741592 688940497 698423257 814864972 978873040 143601296 690697859 133707456 349798290 543779865 995425414 90532686 968270786 891948585 895038483 536588086 788382420 887467432 931411759 250502579 746295694 785444186 911825179 477542279 748603340 740029679 988102351 818428303 828471874 83769011 244052692 414169646 526548161 550318547 754735533 699851820 837672005 317577683 772323550 520722297 547392462 134923022 935177307 675183463 937915965 974393932 990500517 709865420 729655074 184787508 815057761 241603866 371956044 228330454 543112493 318577164 979447813 569851314 648572233 509752261 537317460 741653018 986591664 417412280 605326850 115385795 374581221 794948609 872691756 865729092 919484001 147881433 187658593 908515424 963769333 501835533 872148874 693039019 991652401 839470125 882146173 319663950 526996777 893444839 963243135 27105114 931240528 222511726 814679706 514383306 640389536 406058563 983940630 89884314 164842701 358058610 589948369 560891786 711382806 140600351 410047710 152530051 351420203 586591399 760265642 485281581 845694300 657467599 818388386 266946103 601556041 162424809 919655271 538751308 743475869 353414183 625833572 294130295 456941805 601950240 875068800 532026684 997255182 902779635 982136134 539307608 987799320 129322938 521079210 932496170 977396705 832541443 847567826 160173958 792583315 684875731 884896892 284459844 499233258 206791119 617010938 860291250 947324215 429970491 751805504 821592739 935319780 869443466 959019596 887048520 987692834 890854338 963551462 598296186 623990818 512300294 630652051 926990563 999976977 959049105 963495755 899060784 989983862 240808995 694325685 126252075 788917171 244771292 421683303 753511786 924040464 235797910 593533351 254035665 870472133 302316606 707300371 208968400 640494516 78407183 184441728 470859135 489067369 939398907 984765003 978290440 998938045 337437771 998886734 814537628 901522930 434063535 796014006 330634395 834547815 845640109 910776572 311342927 968390897 438955393 830079918 138945988 259916423 824027082 916424029 831612252 871195994 423969037 449525414 649857404 981595381 949850818 971153632 16280647 84662456 312979403 438477232 437479128 538164150 441168857 680877827 270696854 485468750 757461079 811293712 520799842 603446050 340573851 444935532 369264601 710303199 513020180 786994690 119674547 820861652 774805367 990114612 441275301 465922611 275100797 582229760 681839759 976541078 478184512 847395844 143630759 722834535 845399968 871906945 808873219 945569605 90350250 420381955 426533921 803683252 24657941 276678217 684923446 959569095 401222442 936768933 530521243 973339486 10558565 774364892 414677001 883691934 332708545 468801310 522921598 810804029 614309834 919894227 768485271 786068019 595551763 944090253 154049902 754034459 544679007 748177478 298174411 492800178 367150655 586423419 135095983 405956852 76912491 647886200 998471185 998737811 269782162 887423798 246602664 670321738 834965175 958198007 350150528 729969867 906084321 934786704 10479908 985361557 109009098 173391850 721716821 881696923 507398101 931592268 76312760 911542303 853070603 860798649 87117461 105058905 956643568 976095843 544217694 959476820 86247718 97234465 550058765 787981961 632883456 771660296 940810003 991288360 463760902 702554428 669160499 998528690 919305809 999473674 732545220 837188377 630413443 720511547 664936148 805106141 455237420 570235667 413920792 471399737 697743388 843279098 755179189 852497266 440622938 795779362 224459682 307331385 71996315 221610639 889572645 910981858 316571392 756351899 284757118 981656022 445570647 764768743 685440209 822776522 179767571 433870841 262930194 569204153 636639341 661581185 923884942 924258757 168250782 950821790 947867661 972860256 690106891 908847383 312214709 878704410 108280054 488368576 184738255 661507066 738850436 974349840 889991785 915627129 950275476 952190813 510626881 814191472 984603374 995799376 732392584 980011749 841916012 904200560 935470096 937475949 878615063 935003423 244579247 605265891 794989183 909803546 130805820 329986741 720764378 979611133 458874921 733356258 197298209 316346217 239133197 799480143 499506814 942692349 491805313 856281875 679009992 906941874 39017403 559581724 513757508 599640432 994177709 999480207 19160657 284240797 949458800 995786974 690593877 931998948 388505640 818608934 841089310 933201923 280261704 359936361 998105714 999380276 460649940 877506871 325548728 674777257 333393044 981110809 555080639 849777712 560347777 821741560 966214175 970570145 261497817 885652710 33181650 415979942 789505085 960455447 992173954 992418290 998426133 998529284 47744012 907863876 665617539 841829084 4512099 470921131 859384780 947810675 865266555 986868041 982225774 994777897 276788141 310213318 997514518 998246570 489002948 999628124 866584779 908184220 444711843 942244680 538556377 983841804 677962836 846951858 287569151 507426642 155543595 326392624 890120902 896940534 473188644 625101503 752213045 770299122 220085219 966458823 393377721 651889503 312334959 611320266 320182992 888731657 324528208 829514394 95889388 751496463 769876602 859892014 588828495 986273136 72845882 726873567 162453698 559248302 356045200 771833349 490369789 946803490 331273138 942376085 337239238 966248805 287476892 425625769 855380452 868027940 625012973 675036357 266562490 769410571 321240707 449601553 806003200 883172875 322328786 854984065 85016168 379325525 627996293 644283247 142887412 291403095 657583331 999487774 238168863 472645295 58627725 156212716 381876254 402200838 948352640 994188479 575782731 664179015 993726456 997200473 852686794 953753974 103945649 658947876 45700447 323832744 325012266 839113751 453780315 671455317 912540102 951249642 437617841 619299095 947579623 969428507 839490369 983122564 793308098 840732595 52983911 347762962 248721551 743626714 437365116 698612925 470948458 750863608 547576507 847049128 577886235 651077906 758803389 805447992 601938850 904310864 468400528 767598944 232780315 737024395 472291733 825833382 961741494 967122173 868845600 982746326 331515325 504160157 118086784 682465616 768840607 956483184 419339855 436080300 354105618 764409140 172478626 485466671 443418683 837651811 104338077 384168789 55649774 535286706 355954736 756853490 245938801 850825513 73509424 241292792 111457485 737987052 127886855 761131915 763835204 998020151 597422260 601390604 37584267 774726628 501688338 546145720 606954972 970448792 512644464 867484971 463563249 862498012 86095803 217366938 993480145 994093979 783812614 825863587 589641712 722298279 751795523 930305418 767219136 901268384 163029860 472629824 679018026 740554122 895024042 902099748 803137928 813724771 703142827 826723451 75300191 712959344 28810991 347966926 90229517 541469642 204600771 578967015 621288178 836738643 988016268 992974040 890608581 913090452 562208463 988692875 194911156 735245985 20461509 977843118 872550254 967638265 217918355 827012808 601751163 973789691 504528648 812256238 770915356 956896918 975374806 990062497 438958911 630209266 454585882 465556443 138364308 959437916 395683800 589544700 307970333 484570257 449488013 518783372 876319116 993493956 82594432 241464429 954377485 954440529 833534492 942556420 178855445 943794390 81720079 302644081 785412025 942405257 105869695 620971590 15439322 576887098 486339153 951298039 310416646 547496614 613431494 951163821 206852992 277487737 527396916 558490054 346221097 964842107 330637175 936853891 205420375 313954839 362169309 496093573 62241022 948056168 243393488 415672821 876043512 880036198 409688667 975601048 668244032 798442558 740517683 756065645 911497541 938159079 679454705 868450364 18262480 335309237 632388331 703333651 684600276 943138426 778393388 899662647 895698821 921171964 662714951 855345036 344442882 471744471 618789950 721888573 555361843 912375802 261206223 538110519 759930616 930638283 590505230 713227235 428811640 864316361 660932783 848549026 475984259 609669325 897991924 914127120 679785980 987698802 381729081 714301667 876297433 906933677 150648883 633065009 322485818 600030616 254446173 297546827 743015096 891254045 740764004 952121897 365993369 683840753 154664979 831546884 231462629 993243337 235429013 892102072 573698665 867998733 924578433 939148375 580942833 653144314 332677843 860114974 794940248 973333109 133914251 669599388 400655321 764263481 114938420 710040407 413934439 863495741 862666247 900142582 116077639 778085996 961459058 971570524 660898173 921636093 280908371 895070557 452260794 632243541 210778770 947081381 733782091 854054633 221635804 848667315 674111377 823155682 96554007 711203909 126860205 582922934 941307143 975339887 113737584 434920562 589186098 625112212 160126253 965379688 414914595 645896177 688862516 975595964 153727545 371511013 301371496 723490316 156922382 332708845 574122331 617353220 223742398 630997762 299753463 675476699 221472945 518159552 120150880 402100573 507056350 788614223 520629132 612516704 722886301 947065636 247271810 795669624 910261189 934193612 322646725 772495097 600168888 760181277 780295977 873127247 850571641 915430129 647176703 821773681 718364754 987183539 561095320 723058056 973183921 986283742 179494061 405424021 701043466 954884249 133792616 565494506 319664440 765050844 439992783 903344932 619376385 763491376 69483336 950643883 231090531 560668384 552728836 835408698 580499919 669348515 643761157 788932936 514250944 739382390 527033716 892143316 269038301 588860144 375600597 642448159 43058714 94103102 164200505 894028205 490781035 660264673 174053953 818634847 212742677 736231754 133558439 427169547 456748975 628156807 348352009 530486901 997689830 998463597 365401268 756368113 301482485 437620232 452141991 471375246 153998774 533482520 58179009 854296586 266801587 482351184 97104297 992631543 575624929 975200732 876340622 970499625 408792621 535377074 814049645 861571849 49273006 590988149 576901871 649707571 292555774 434766819 403572626 553015475 518253470 640551337 264831795 783532671 913579744 915456009 645080087 928143019 917015776 993233620 406609169 527552707 52639766 89982795 477863530 949030339 927456878 954348660 842277983 843034520 835607038 986207798 764558770 791454216 237205050 305416211 818117162 828355963 968316208 999701554 276350716 853487967 106920429 846561308 796031599 887087678 935245736 975321669 777610 666813955 25587454 263406476 22331564 762035307 311651667 801966544 16595112 485753472 429556869 641254026 129696535 486486376 340215548 380742432 462728384 844793909 150202263 291250604 516073634 827881670 318827393 896496458 859465672 911576415 210217022 387398287 650731410 676063720 172053876 313427516 944807324 996811564 223837109 252582562 282375679 601325462 390900918 447180563 819200111 882819070 288864449 417635822 225166188 775697166 479232340 926731081 69755332 280155217 589238150 955456527 748499066 767616356 13238084 951381778 990104920 999954445 452391374 657544725 290273750 743731345 219533579 689710084 712042848 748505369 268405693 387027162 268955610 471722192 759642064 999613446 377369968 988031043 757081395 861474317 825844546 863952647 883011845 951607630 57004954 940076660 731957407 954230072 766363992 938766346 499053914 821495831 949257180 974784999 293268889 727039556 138194990 160453444 10208074 198140159 283584582 630745123 466657677 725778855 136322978 704154585 859847073 993021464 632151563 879568998 444376525 772365131 314709890 537523751 351983313 506073210 310906157 431025247 885580526 927301477 531560049 731473854 596202756 971679361 344903681 451840204 268863402 942799400 99234001 138258820 74343527 713911812 57914170 839183704 99204542 934589615 519136839 600399324 398200215 454359390 137078839 138386685 263498263 660153108 999154177 999558635 266518151 357292438 622071892 924656372 54219875 168078517 147613459 201115869 464889440 522829554 312287834 335345147 757233094 924464384 605058129 757672592 980848019 996413257 719913175 923428787 225687580 667351246 392565632 621516189 935166618 995390810 944078077 954810569 432979945 695475013 742673963 842188521 686447986 935332324 162191201 868215662 699014510 735249045 542820869 569927115 897245446 960030248 171114238 481345567 579526717 724758476 315018361 810284407 747601016 811655877 58930955 227473064 522987531 764030437 831326016 919376388 483967333 733976005 740581783 749505503 217235220 471806120 430281241 530553989 415070687 936421798 920334995 989402288 225673559 724175813 584367464 969838247 952346656 993051493 449537357 797290738 428509859 721505038 675009103 841293006 30180454 626363124 223431619 917036180 917406223 937316516 344812583 529700373 448905550 952727370 174862836 289597645 313804301 567885820 575686196 939919193 842759928 929586444 38306644 974838018 171738440 510064885 134814131 630046926 143641472 542931306 716439702 957970985 592093793 837620930 389158914 858832215 757875474 809383993 254903586 866242538 727727985 853849171 34850519 294902182 381636428 957129528 550310549 952723808 794683567 829723770 733332421 752127626 769584436 873620231 278485791 531587268 374575162 618359887 776949846 874373786 154424245 595081034 685511499 727603899 265274979 651621511 38433174 813703410 677028818 845949799 86086242 594943603 974895268 986777279 516205770 695356535 596503344 708259723 321600336 363439490 595658740 702570825 194582501 342285590 414387246 805883598 583921816 939431829 347126559 752786664 703855628 876278893 62486942 805688900 193230962 275864263 349997619 673922359 509915851 708767799 824804041 846244449 777297134 880142650 809950107 949871600 975134861 994051292 507018974 757404759 259825316 326945087 175149641 814824247 399124545 782630498 478380915 631659130 792597041 904636445 217624724 323854233 829240930 985342208 53572720 120768261 891241931 998993994 22288139 999316735 690213636 877890442 261641003 914559955 483479789 856123573 520958782 529431756 93084588 572361260 256577940 346329991 578491037 676132786 932691602 949276206 360893529 937046396 201726718 335291319 548215119 593607080 818960793 987125963 442434805 879619838 766277084 810565867 235645782 636620630 795868887 875390027 854288559 959103910 147644384 560941540 203069241 755716102 204930320 843759158 784040595 935500223 650820629 999294281 843242180 943720104 43360364 207255107 99322152 309074456 208081283 498339670 665226502 807160942 587937026 866808085 44494575 734692789 399902602 973802868 18274363 545500804 763457283 962016425 487180040 935947300 137462821 766151471 171691780 483666027 20848114 561288201 451398179 854866893 298452701 641580479 818734310 830841323 161995612 783265274 135226973 949126692 802775153 973623057 34302176 783029865 125468137 576546898 392663298 524432277 669556747 807686825 691073892 757031665 808660342 978193389 416926039 836231990 729146270 869880819 950153288 973536158 241767508 843523357 307577135 548109411 236652083 352666282 395447245 771060713 593767711 652153971 121110786 371238051 587346993 683347393 735486003 800934867 128832794 337207816 881561820 976675548 629904463 706837664 919170629 957300785 701466473 842923469 341040969 429614337 837745879 912798702 897931586 964596077 101108654 497368521 712785732 721834377 291758 587895241 107812168 224875166 777791659 928825701 322715986 633019821 789767399 983729074 605209447 738498799 771770106 892575261 182580801 559976927 647275154 852000488 216406291 263972396 434512997 527764367 508306379 618648652 70658991 607251106 363644689 702520545 282358288 432677236 579099754 806190144 713382694 825508660 300297757 433936305 891452030 948707824 924962322 991880172 386324187 781723338 929438978 978742138 573872081 778257405 927688197 993468173 516073684 854436895 76214873 277999597 239148134 976433495 610666641 688366647 415157923 933430435 180385259 182128525 843144123 877260399 19717262 420776348 136097787 949513191 346465980 747715583 578547492 781152181 226011354 457783465 582657926 697123717 387045333 792972132 629190332 854010632 695249961 706458206 170751524 930933912 792980234 894613912 272274033 753856229 457643175 967438093 263376754 808665411 781739620 794557897 79612873 323752741 101132470 912325497 594413255 858701540 75786536 533186759 524388158 820899981 614791318 948223364 511149782 836287066 820987712 977441298 957101156 996046321 554168312 974790871 958181012 977074884 757746019 838454718 948502457 989153386 767996810 969189372 273473833 745136820 96579375 861070604 776400997 844217778 257243784 728049308 459437595 666025017 735168043 943925009 914848857 938649688 888712952 898438728 250458411 424057588 381167338 808362966 622692157 626516590 386028188 470757548 1486712 187983574 60169485 277154647 509858658 669362107 959609755 968328622 257199914 560618582 776465664 899339236 894526750 902308087 605788953 875042939 932930347 987428563 730285744 807614177 954648199 975193874 190476962 857109044 769691982 982053675 161864021 703274145 115342686 376500227 167173615 351386457 948199182 976429956 315302524 991854096 326475179 415030517 906726845 958788972 302019993 605038770 778117976 805923466 285257882 928619186 881022315 971667767 858795427 902882669 638374859 967769167 549980813 779547450 933713207 959098574 716164200 797569934 217995403 859777897 343583399 616593998 980541392 989130544 532041744 788403642 814567119 935143868 417600552 732848902 444337872 472112441 388528939 800240359 47808315 913044179 395146392 690009812 50076766 656213512 731565225 910480124 602377546 674570189 66335753 460547798 833792076 896181199 441349781 683769964 665025651 940579829 407156875 779066736 98561776 763470326 878575426 971619347 328334761 387275513 70007123 282147787 745643616 932689572 361268291 635747401 361268276 433584305 275929882 861278497 842400188 890248563 142905216 907256751 932609623 967896953 117162267 574971535 954693828 981803599 241805243 329651889 119039707 283967423 433404706 972673109 845800764 890439987 788450285 923006432 148347894 881040629 4989683 19601833 62751912 585242416 182385492 363645313 666903290 934955017 266912573 484293163 559967052 804779437 38756361 480194489 277920454 427173245 962822723 968841554 667616072 846499988 519985855 836326397 960887114 972911965 46942314 164284490 672673610 851910326 409767654 463732046 294617730 772224089 664206355 784339205 372779103 830744339 746291226 879706746 759220028 923840989 295940665 318399773 884244779 993489261 947730065 987799701 477377119 873006528 455654209 942790365 287244302 541868424 416873799 808931735 486925840 501005984 9167649 633283659 779314744 887546775 841012749 947654747 412839917 469618508 517240575 895603618 921042323 923834005 167090734 531143478 889207711 953073997 429634710 588604830 342805837 919407267 902858111 994946300 477140294 582751970 331111934 872020563 881846332 922831268 694696513 938424193 715449094 815007811 52875127 871238321 103972043 930662201 168967532 337549661 179676122 208370260 190074505 397875868 685866158 750019828 964628535 973701799 748057202 902105019 243567520 414795586 918987914 969963083 351541501 492195726 648965362 959306459 104234544 545912299 641189962 798125671 123122139 330028484 417648719 467215379 978708172 990264234 168573111 599207186 329391838 338332192 64480879 175102819 356344888 725101608 757524007 940136495 231034339 703155660 536209733 922605980 915051857 955130009 376455849 966701288 273765851 796159723 832201770 898063773 746482376 905343415 529959796 801746113 865406226 985325072 321987422 970287038 42301484 483837723 987625714 996781521 767141839 772914808 965558824 969637579 238276737 378082818 397302550 484415796 362724665 981569618 448208327 590304542 14503043 233923884 712865082 925558173 19735053 186758248 450601566 589102033 81518575 409846289 480050416 692671575 159922223 646367300 302534195 865675129 856130231 978687858 950109028 999973271 76712824 530938699 454071346 686172062 831578637 986164710 817179240 861540868 627437904 841741553 440429265 888625792 21526576 77535384 540874332 794275155 114827683 956076910 134000846 276713450 111573612 205418270 988455570 990500209 554013061 804905812 137273526 983413772 632724103 761588571 529617496 786334784 475364155 872702333 510752100 893068633 303749912 536094193 62277520 365317512 317616893 681843521 584174231 871070394 891171893 901601373 675878092 811867631 967542283 971928151 740317909 838347520 572176926 909063076 631420000 757471329 477703427 817303169 376989194 692061636 200028150 885778613 247106778 319549313 695335074 857425875 578811498 622367024 491725401 891443349 668820513 697081293 462470036 700706810 808022362 874303499 988752596 996136223 551883932 718839976 694049015 886963322 505758503 779656725 313787316 457126265 792884006 933046398 625522433 917455132 718754095 774411815 894817121 965468856 650079052 767076272 992744575 998752522 50768521 838787346 336758024 806021672 497813338 955030455 30648920 697535214 535402434 988139721 892155137 945553030 4415019 346012894 729992331 958902909 901784288 983231301 975860910 998095209 64601214 710658475 716616671 874203658 631029190 829059372 518922384 540328855 478822872 761061922 127267632 228848986 615834633 750605844 62374380 937109176 460696714 872957655 450767629 730431128 25385018 28428966 489093747 932269234 157025406 346543123 313622703 770748403 58032003 477132310 868620414 906452908 681839741 916751422 619465935 941666998 637224561 936331973 679161586 684391848 856640020 948197260 889801216 975539208 386401016 678693460 912798236 962854885 815351859 986800190 886975654 987578913 543641200 733124093 330530539 850757216 288128922 704326926 852186208 989633589 936932542 994619628 737517426 874788591 925782351 936463555 334791820 710421255 275750333 989661753 632821969 861403105 815220482 927873364 16116714 279519364 142657117 734949849 470279410 545208466 180007611 561486651 886041844 968434554 937109095 944213219 122982070 578150137 626855739 975419555 729133593 981243320 743960674 891203401 39754168 379437562 886855106 920568619 474221978 820445438 33937666 134060994 74397889 965583161 990054589 990399335 265207238 800898122 549060090 840543127 38370624 783561805 428141437 520406393 13919023 682401209 705928591 924260789 394913630 943608342 114518941 458642813 782626925 785764632 481881146 951500485 943285726 993501357 117097680 807795650 268203842 441702320 335450393 366550639 480714719 735785973 138145849 529970153 783723515 944285388 543857417 564554597 425973239 985821441 343582064 547575088 20751641 271484008 965129987 967834676 340430790 396020337 995105147 997493006 501882681 511974285 940569073 966621953 939566405 984217895 742892712 926858855 329250557 957732442 326299904 538587063 408931336 553247648 837511294 942762032 591246864 849347528 859478465 985015622 575687336 930839005 76256519 917310075 23871848 608278565 771259848 992866872 457351785 726418826 760583653 861910177 2298027 737848843 266208812 948563190 298758003 933036946 651778834 760947136 11558360 930186710 287696245 564205685 140995313 610547237 516697297 810165852 436129821 619307481 686299059 783113997 953386992 985367497 762970239 933331339 477298486 493167271 518407567 903645621 180815466 696907616 147109521 863726114 874876140 917070806 72281042 301816911 121793179 268395195 814903215 934496794 116908648 496185848 879408439 897077847 334288141 744978440 500451327 672771952 235952469 406824053 181450108 806635589 872875283 990384968 13777780 611762587 174355379 608461147 463616981 948066503 106789247 872009381 628750272 644401201 703149669 919650834 936812960 987760696 826592957 945839196 751353651 826581487 191596163 858727306 680526635 808047764 652495726 934174271 907047273 999354927 542472532 774180405 854110790 987175751 80302464 783919023 687901661 780461022 756857545 885847387 438832692 564402122 188285904 697854316 749265048 899189959 251164428 817131985 707596271 978343344 939840354 948089694 901764542 974230158 868461320 917584672 595447299 755875480 749784744 894900681 945134926 973005908 730831432 950794766 66025472 508916800 338583405 373613257 622457080 940915375 690469904 847419761 807967379 818970063 992236478 994870201 667009311 793041714 775600858 850588906 622161145 800873764 104307242 755024581 314574644 821807475 873630820 936238795 902122995 992419240 653055649 742933547 277232762 650596733 97975364 416306778 748567512 805424822 271779671 367762987 990358156 993475025 836661150 840370757 763134238 878633436 319511760 512961654 962607333 981159149 423997055 525205253 32946698 879231344 249112508 756843312 68562882 193233770 498740054 665486284 87228822 568392814 350144047 814172449 573491594 820794071 765955466 804693955 825517676 860727437 330515462 724970604 558219154 851776719 853304726 977638496 795460229 935334343 849492244 989942617 945150448 948745441 533275268 941356775 197230932 450375408 294829798 480786625 338520925 974931629 402478868 913920030 939990963 989817688 882358481 956667134 403386570 515736468 131256417 826293885 269267250 297748461 888195923 958945780 857408705 906536295 7190770 332399811 880997884 901818898 632956556 756248904 453048542 555978270 829481555 920981292 571518450 903836489 676997601 945370391 524923537 931012091 844404265 906623080 86179705 499929187 132236010 629281647 473327699 786802177 472522360 805353458 374031639 612563383 929873662 939245401 415213061 841268140 506581124 563360522 326817319 981057377 981756264 993677410 643695837 810621672 961461829 966841737 510479046 780538728 395426003 651661171 486001227 711974682 359419280 809600191 21662259 812599229 611283080 653546503 293838931 305357377 736961431 789895755 343158357 385076855 593495837 793845022 164885467 881382474 770003853 782739431 875762746 903428900 204942447 369025518 764196057 955593362 445123396 544555496 205125154 822021343 516459532 997155877 129303645 198921399 453797322 735023157 208207578 741162491 830147860 930725906 515748235 596405421 125777482 285584766 824420284 841505675 585421689 821901439 72436924 266017476 209009705 554401931 439414122 678241237 430090719 845735496 879713532 896446182 285804528 617294107 159035386 413042606 534094927 917618124 567590139 623861626 740509489 892046084 43754593 213297400 225674228 834392654 369319745 999988742 258854709 301341449 994925462 997336726 856790737 901324649 797341520 884724939 826439423 954060477 562858085 807512195 692016017 881859834 648782061 934388400 730025113 749593109 698238997 972526832 541248164 770860738 694476551 893785873 931062340 954962667 477711772 932158605 411634811 643706711 837725542 926980967 189448737 284587039 907959675 944277765 615038387 686864782 902332095 938857260 949812086 990989551 243372383 471222185 453681487 657711248 19270845 602475805 43092370 160389356 74484989 733449424 640241042 896742138 179435851 752622269 267513579 956459884 593164261 796218027 70817987 733886970 317807728 720173255 556557180 775589549 523058470 670674685 911898846 989196511 494974904 769631588 364375467 706205297 205410538 833737707 907172931 968629282 776531587 933506112 137127736 664771453 885583883 949860904 604572208 920552313 840088665 895909589 797796395 827787770 210375838 400156991 787580380 983015719 92766650 806466671 806316700 823021223 239884107 327459560 622119743 799101558 524016736 922409419 636238543 968118583 830844316 981864338 75291682 276813539 466031977 905720416 858726487 859685543 281395507 917244081 990358484 994058918 300503223 720410246 199653347 507647271 392934670 869065996 496995533 702309690 942584038 952215413 700415672 708414906 81646046 390281706 515674925 810145670 784712714 810684100 852564695 910170768 52427085 549037619 945449873 972378227 542390846 987899622 843041150 946545790 665718240 929383800 530386581 677253349 714585687 868292273 677611236 949501664 599342001 965552662 675050078 829466767 589072373 874073584 196147798 707606043 937518590 946130224 398779998 706257955 851113712 990481683 121066665 798767767 869989555 956190319 607416183 979520042 375102679 444936000 430146816 861517580 89222144 822850148 691074493 779428137 880361557 994616911 442264594 602081910 556864004 735784000 746014316 885053593 284491415 304300721 306121870 695480981 814881757 999896851 206094071 754895300 383145401 800613849 879987840 893872505 79671838 570358837 164752456 847645942 909311456 972450334 493187238 746101082 979183222 994795600 544697495 584783628 905274722 947804534 94969946 337349002 325414327 351582545 970994992 988540108 171103750 799205190 366216179 487517502 326860673 923163938 203156352 296612967 365994102 381185827 954237652 959074078 888691980 895227083 122333188 206006515 669913709 848376926 549772554 902382760 317369502 475036262 682848508 892605606 398930527 819368056 465794678 906198822 557672062 887485243 254538362 343027272 242045582 997798657 320145634 835999602 288228116 728334215 234591300 456715159 654484400 797959906 24297445 706044884 586698049 769875737 195784600 688236216 762145458 800556718 701191992 979562205 211424405 398585836 892545624 896805700 94434010 548904062 995491625 996677180 152620714 935346227 642489807 758900513 853518857 931319351 111567055 363147443 497101094 809661603 201294121 828196309 684098292 891390087 744635832 971755941 526015605 960679843 968533917 989343088 600658834 856576037 889332129 890920931 756328234 907029052 824281895 925547892 440895079 693961419 798585182 909984782 596508229 618682127 443805021 970844911 605549561 760279135 778348955 955704053 947316890 972387322 535376179 804105098 465194947 672514059 515143402 935469509 502195893 918669862 638118836 985553102 129197461 434633149 436660158 783150264 213420309 549566215 316611459 380306776 422202170 611029468 167107899 655286857 579932691 888727196 50787869 907224967 864947366 915963231 771097255 986994157 231332224 813616037 942597717 969041723 722819975 941708911 979714874 995320279 266752657 435264725 811048264 854133646 581354238 848857787 921339023 991066745 4132519 146973425 522967726 710000918 364327288 997766253 49845040 109759968 525970331 846288689 991884149 992393704 141836355 885437920 382024226 543517773 676118552 798521002 672089601 737554075 888130109 995723570 325501594 843109084 814069670 900034027 140786257 868307064 84640089 365246235 643751728 875926765 85700993 822856070 782882888 796957822 533029890 788620367 580297944 969749287 286994553 902641943 126912131 193264920 614235130 658883149 886103413 894732996 676545680 777764438 559919084 979913819 58496190 897689645 795428757 978410526 798562250 941904946 62686744 997625028 324432536 329506773 351738392 772915862 29194495 567735689 892270007 896976237 264013276 790919661 540187343 921245328 252082901 696629301 979197206 987392734 417988953 749570893 829706521 961843423 348141634 603517915 262474461 957718024 923904714 957664832 551266651 976382083 558932982 576487095 116816756 475182613 778895462 816628920 134828875 362390301 516379459 954258105 103529420 931115894 469535882 845564750 347033869 593590677 251842581 431274703 913994018 992694534 495954638 675849625 607753668 941345343 769888014 819774963 177593547 484397456 307013824 742159852 549380699 820812068 281100016 394875049 828457631 833305599 902248263 961583377 434029063 520167438 171385987 984540449 11178661 302702968 35518301 521809155 974573783 977276139 353778830 520539315 170542722 482017545 212933318 233993691 927163292 963741542 821715277 974727763 289908677 564651692 311540095 845073136 530651710 724524117 101778514 932411829 593064814 985477457 257676239 625569800 80743979 132275163 849452610 948650833 869815325 975431995 425410655 833358191 729810848 880602603 732671690 918966761 425220779 926081428 737254050 869234240 236415664 641183838 554105470 978356447 485040059 958630698 722412214 906527517 324210965 798121069 536097592 989353914 57629692 447836550 852486906 857255187 62849718 487035517 293959552 828305976 844993604 871472905 95554161 954178205 76524685 822920900 332901978 705038423 864651708 993789914 162322759 733984159 738057572 927896923 651728400 752598832 521383053 557035133 699765074 978986738 360506515 861354322 968368412 972498987 993599859 998608084 657861080 981044711 639663157 893200549 653011664 746332201 164145280 808176537 607809850 862346318 152595868 417814214 119083870 524351721 358554681 911073288 392277193 639062499 94050101 282805704 962125516 991782945 928146801 936113141 435439507 700223975 148313459 480259873 536146007 852494392 937077333 960825815 782557812 986018557 881748211 929910302 179035883 276007481 598635724 658573106 400962852 579296829 949712895 971784150 440301965 485794053 8092581 43201634 644278716 740764172 663219868 950244133 445515941 849869353 125017570 164817113 13406541 983677828 437081000 476076693 832462319 920229578 177151973 583278059 891437738 937527745 518446851 777834347 717262780 935281514 681622164 974984508 39988016 193582597 782707558 843637035 27679104 784647373 655721014 826195189 931539395 999793699 610698770 767241964 503795849 817376290 36438901 634946557 293904232 625466303 878071872 945141629 964713242 986802909 976015259 987204012 899744066 925022688 385845027 648262425 58558535 725289543 572408261 671317410 411716804 452329842 997814157 999347600 759311116 877946716 474340382 575870754 50578493 805151885 343593658 728147312 255463370 444993990 695181958 832147899 968910504 987394751 843634571 996247091 19286977 907653195 770218455 871031847 230276322 801968601 174602343 590519284 778866442 934275060 119680105 754640144 436052030 836180286 401006325 782274886 469384565 510258947 744031328 855019997 387184674 564137736 980972732 992619072 322593429 887230343 128466709 945875111 42928634 490739251 653724191 874255166 533281331 591805734 538534518 794411334 796435304 915363711 790410300 987146268 524804422 547834991 940490739 994006025 746352795 794283431 773982155 876879729 672028199 944441287 19981014 69099169 222287234 415948403 293204819 824924413 367655776 664162774 985533374 999809856 409308018 603894646 370950147 814332611 581471172 846438080 244757897 885312623 541900218 713143358 392343474 798049672 402355197 565839296 551550890 865563482 856942602 895458574 237178584 541979693 841711374 947922042 255008336 625320217 886549901 896697032 981406368 991603395 220977258 562326647 481774411 782725649 524265170 989954703 312851749 995816116 231230605 690634092 823354868 958780303 825900539 946652506 667102346 816505864 438831503 502821313 23147862 151812009 525730193 705143243 566123024 718126809 420708761 582626211 632952674 919838933 649809113 654368798 616061896 915776791 866237848 897546117 888433183 983440634 37559707 224100948 179828343 475364089 445047177 975200765 710704726 727089451 742276702 814705846 698044543 862252182 420457219 502524475 586468094 626562202 240048563 547849861 541612561 595110501 146517047 737522969 990284656 993312980 758486461 901068958 166334508 480106258 658534642 859834114 350065668 688265804 769931369 801650520 106184407 354757280 73795348 173495422 17460607 556346898 305808437 532905255 568518340 953583957 770987671 969743236 184165987 546632823 6732528 450515919 705851141 713691922 410274368 916661877 288698876 880419654 861012569 886151853 934814796 983832924 79365258 175715637 142995952 711980903 717935264 737118665 883469721 930345031 161541705 711446441 533914284 575444503 99514739 804028692 537095319 995806529 623695087 795826732 591573928 902729317 519744945 850168603 172532809 450395743 191969230 464644402 490974984 514619704 667968586 906886846 729253677 872397887 320559859 519543600 374785783 727562851 29750402 973396027 286804571 752735387 783333663 796508838 998727865 999910092 213745935 795677671 747745569 796407765 656293399 920122389 795653244 963617397 300654098 623053618 897263572 918281819 70563196 736088370 833158932 979069751 678742856 841805861 598664104 636109249 414567190 513610038 209516421 596816254 970714172 978904985 868137476 918668763 609274022 966024794 492617576 544797551 239251222 618291077 809475138 982758054 182710889 845392768 55282261 719161829 859054008 936241631 478708008 981521137 677147885 973959445 115066134 424632378 327281543 972418986 992609593 999214772 47296609 214758760 570203390 667595226 114343063 128902165 215627099 683091132 55154765 297845693 538591097 851387916 280125610 640878204 148766545 577022254 147145133 354073643 807221879 862558562 817693520 913888429 327914771 961381703 897383167 969439705 746719976 754305413 612062448 912796332 130733917 432386584 67604862 288643413 719318683 866793105 872596477 924431508 787775767 791501972 359683761 880199914 545548375 635578686 869282817 933796440 626031905 848151176 10909929 936385979 833762606 982248102 37588678 730915855 277649539 773852154 451318191 763679180 337618743 686744379 457895911 627777664 819592580 822199975 968935472 996259836 936578284 956416756 835586836 880685705 807991071 825864681 593454989 650763173 231656663 540019510 984336585 999208898 400760820 818289523 970979545 977709003 19151965 322674911 996532251 997756876 170805050 639278259 449496782 563271951 274471580 945056837 391844211 541701536 993282529 997531938 834883810 919768791 394764781 466942633 992885577 994686864 831651968 857304198 309347312 820465350 661840044 921515734 572658078 876248846 535504806 735325897 602494125 991801443 63857824 702400590 958061768 980506459 798224962 871200378 376444704 911620866 672066834 819797106 58634001 367181820 465679452 584032153 504634607 898358492 711142283 912862262 412844611 784316849 411592669 893578632 621141932 707576667 968989114 994531862 445322449 449491785 223670105 721546781 529202016 595673657 595415107 772674686 766842814 907170411 803033825 866662285 175464467 886419772 794794747 823356217 618232445 632237150 550581620 981879410 198336075 649214628 3893248 824335086 15046468 327534541 245453133 461497480 344681141 372617471 764793374 988695819 751599652 759645288 646700135 751236562 593725806 785740426 880193742 903537000 652844494 900686012 773005388 857123444 18411144 222558246 855510347 922778965 83279788 492882525 694749882 827912977 177040171 454879977 593353749 725543149 928730103 982855549 605836770 830192945 545482252 905620851 116502358 788725631 408637726 795717413 425595273 885049820 344210362 745435109 633917202 789334356 383751185 424153839 655380229 919598564 999506496 999684421 4103717 624275517 776850030 908984647 168586319 479495676 525708425 589674067 444138183 873485970 380459043 644405953 442796669 934810320 584970118 784524184 473583313 908306441 147588895 252357497 625729946 679627019 302461611 916813182 144069764 753398132 237586591 659077499 171705871 762408851 480524950 651298242 785877641 826709094 172131228 618796455 69946059 512613361 817486996 914952317 814360730 893522043 494544500 515189276 187669331 590894139 470754089 908566969 71827711 732266067 424161720 876264564 589811155 778038852 903516368 916237232 19954487 396447769 91933087 105258613 460201997 518596348 243296656 809641350 133620575 140244267 756809688 840045515 771841521 854515119 292907833 740545934 210964066 347499588 860449759 878233105 956685300 975347923 785526383 940319361 130007563 748870449 463229264 622467651 897670263 982409141 488178772 754711951 389806786 791944021 76489007 772629858 250391613 332911901 739093207 953598529 751106180 810372452 667492506 853636584 4435057 29414194 124923060 985761877 345931293 354927975 220054644 934880921 268962735 392802759 753329251 959421590 217751108 316903331 951230500 979967695 630767904 709907701 670514752 770931035 300920721 855669052 522672201 698152785 794712097 975981991 463231599 734579477 635206212 770162896 990859910 993322553 10784574 776848598 926955967 965268009 449529684 516824157 87192710 952593880 869763619 992080217 147306970 575216974 38813431 311457015 666896501 963054945 437327409 992057378 751135675 985116373 475508577 643180280 382147163 745507009 330637290 845709977 395554340 830684261 257162147 458416153 756483357 852630341 875608280 916313504 860810321 949156838 978047346 991473071 855740484 863749773 127907838 205083195 194659587 645646115 949562904 994085757 879248871 956908511 100377387 496303240 233990235 284500944 13779125 30687399 326877383 427563924 903617143 973648866 499755863 806859597 100405707 315692682 82731374 399286798 359156845 847809634 565290913 720879060 593605262 666627415 516380772 839862563 565406804 717937022 737107425 800335371 551268602 619965975 623077420 745236438 55977547 549711915 150222030 851611089 710302563 779715829 361970553 725897302 706804944 998756992 987592332 994809400 509052807 819346654 479138974 920025154 443444941 931979569 892464646 939838752 680808256 829321705 892378921 959949446 618041890 806527844 608339729 955614139 422251246 689259524 185397318 697226435 436699712 649890690 795546428 989300508 504938337 749197932 339778489 521648256 185346144 949504908 55088758 120652634 215935823 651696501 647727912 850489021 337376884 609601056 993015108 995403125 80606564 988423662 221655083 510476706 946634112 977678413 16081395 730786011 923822961 957040906 952072115 956511510 523644883 572917554 402525107 796910236 686857375 945383406 680415198 794543273 25567122 84510525 23855532 297572440 499630367 926657992 946562008 947449601 63114826 566337807 889540843 936890786 568546506 750926908 587213324 877681315 891562547 904876767 738540017 966428145 126040447 573463579 961373048 993894698 98166144 630138400 360727604 591511349 69469610 760306005 83010226 228292379 713651752 735040292 538582267 718644636 332732357 500083310 792325282 882975928 250668269 810003733 894327384 936336154 220441811 900428131 436829542 576775627 990739091 994703061 486379789 928749100 436570413 889588971 928769167 940590104 594599566 689396624 845814934 869738194 750028476 826133447 74738718 564705603 732759166 927833199 91387631 96073677 191514933 535262351 432389234 610724412 971499764 972782415 660885899 902416562 248408659 981003013 979113112 994581459 108203909 998042528 109877702 762888781 98287615 514254904 373692853 638625756 886717901 980383990 477558294 736748253 426440586 745140284 551550310 763652754 271774474 514629682 339748092 993240204 863647595 953683199 102911470 532540409 804988969 867767948 570799373 955901903 892153256 962169355 337335660 702520699 715887107 750463255 387947770 835805958 12666868 488889810 813240446 996501444 788960432 836315796 664928588 796658419 602413351 806073874 777362207 779241069 469406261 798294616 649546579 777882664 415563881 959136803 625456563 870004284 996976735 997129736 782704053 823145111 334047233 857324837 580911558 841061945 137733076 824485935 743745385 869164196 69122809 590851225 656779879 962655404 214633720 727401348 646657814 913454671 377481263 591839116 769766004 825635453 968421791 988324475 823171563 957407608 794548250 901720045 306778089 324480575 516993129 555792120 280471928 795262449 675944744 692044117 303298172 753573176 264053360 562219328 416649140 847553058 819966460 977213837 222394493 292090059 316609117 724610015 30666022 988901240 612767041 842757268 61461559 292499349 854234858 929647989 611962574 870922951 719760177 933072929 523058321 562153956 636228960 936050187 253852998 838792006 911329830 936917574 196328809 754292598 556619136 742712675 188857991 906985905 406538081 939922171 601102537 927825208 18018343 683246999 285947511 539202616 526263038 739735188 411286138 578521579 73325406 900856611 831204567 970361926 667176721 713865485 142260952 924587425 505707033 883071027 694368964 889078089 186526734 359726568 544127720 721507362 290852784 372825856 900082097 977048248 23080840 756977184 39229384 166034800 825120335 910992913 283542652 481432227 834326024 883008050 343055890 762945788 190167680 893253869 569307521 787923491 639835751 749093141 417805505 539435711 779421014 898914013 230260914 433152149 788574063 978351021 90847522 161871464 191962502 765947919 205870301 861888127 382348424 724587976 101211312 933262142 809677598 930283318 835210531 917762262 166719391 314320638 66414381 912355856 841817507 953761732 81675147 889029070 513111515 864688505 733427085 851273496 879686929 969405405 933025200 989645055 387793248 548957352 641842298 932035148 336879985 736465533 553439058 989659074 548965973 625636522 784209479 802712372 258103091 616477982 883603903 902826215 545193699 987247436 655407129 988171519 809327284 814629769 90390102 881712637 977914560 999818467 220370554 792005144 503705107 760954569 779064638 939953388 975699311 988359472 441593824 947916890 472348581 544101089 898128802 948052719 439938409 849358781 579737288 722342982 661969616 675307767 823752515 861445199 888938387 944058271 32450080 977320977 668001894 943542838 851048801 901378620 822527405 936099758 354140986 787008617 535389703 601980745 963291372 988956106 642962146 829321532 563242484 832522455 121294108 800126765 299600274 900589753 79956515 443762355 48280827 712746847 452495987 635671635 607344451 846991430 973065513 978309031 24692826 73875767 214451778 745901998 687791585 735850152 428086818 740178407 221079137 451713736 474208716 854028454 727439896 868154235 850754975 896612323 142017251 256796623 373252940 621263552 194526075 855791283 446460187 624306806 783605702 953477021 918517997 963211493 674513862 954399866 34919898 879904871 763145507 773652139 427381540 742594353 880746374 915599234 161429730 463647227 710128990 854683374 559893964 613855087 473438778 722101763 974697308 999774591 791791721 821759744 192184832 498477084 264112314 352080154 548528535 802403075 486643712 532752949 415763988 817588182 787092783 887274303 182966376 361615220 492757689 557826615 607269620 672524471 754709110 906649440 29226506 783278114 914496862 952032516 576655917 756841615 872979512 908857610 60335940 183349723 537893969 662986529 855191898 925286081 426068934 955295175 657220540 864304081 972647022 979271598 870497093 934033308 880505082 945466610 558398739 613997039 365233590 777010818 502436097 512855932 150350916 656395019 178356661 309667098 155823780 455137907 68676340 188946253 983138498 983818109 508044619 572838680 66347090 164970425 806210868 873433550 975756750 996887419 332229432 575994470 371731275 801279163 159898555 924474035 86495529 917522779 871461573 889777418 505466096 627023438 944371802 962917740 410488350 964059247 397944932 718356523 124996941 379613598 484288548 540630254 957002529 987233724 605105538 848183301 768266792 858804667 600127747 656409310 942161472 947953395 50359357 771424594 673979986 739401623 41378835 924690798 377226142 383430888 424067452 783477900 591776124 754199522 697722604 744681096 384622371 630276952 956317856 985549778 174265087 249983369 931038013 954484545 953959018 970032784 29006668 368485252 661896179 955994760 389258174 490727906 117115645 265119538 828007312 863169763 117233828 503637364 254628259 433924135 352167960 972383993 202067608 265409953 361090248 583487735 25852483 206399649 664071186 843511765 938855125 992955074 164276517 920731621 692906477 716293887 202182099 363255947 647266464 686065549 448108832 459559365 460364955 953824795 621244997 778824429 695873483 935120774 868342432 957259161 287450052 321524648 67355029 968615553 351326835 377035559 148330835 220854417 733408355 884909823 775821389 941470376 175560450 569123452 633292091 813158926 856758006 918178117 389417116 707348564 490353440 761457740 949684499 968389467 792745647 937467345 605195103 844390382 52801419 550835182 671010909 893776614 515568055 755819816 289603659 675791258 21961901 544408293 820114733 850835849 973005315 997074818 497026552 555493311 111239936 322963630 740984400 933730593 2752548 344178298 382426378 872657116 469786594 870789080 242554046 530106255 271017585 828968393 871261951 909041628 833092374 929560604 899060985 980288255 351275859 708069479 588027770 686621956 501867841 941342002 563593680 791383889 405239111 557602646 191115098 579378171 784609691 860474465 376891076 541401350 553583196 734328435 12530606 923149440 957227584 996831607 24672057 748070577 328772384 787004273 296253739 924043382 81647698 868465057 970891818 995639679 140065284 527138164 335625030 844454204 739003434 804887224 988748602 989083489 172635008 935225676 478208309 958954514 421718756 597744286 480930780 981403293 940632900 986091415 880739649 933813280 397394246 918929883 830698639 922194035 272468209 367727341 729431635 852170412 263663687 761981915 31579532 560970110 585030406 664646923 247058042 897869668 786815831 835796516 59545274 276992393 110338902 403600788 228074444 398380859 58852232 69065967 246324817 645071152 60985981 174116600 675890315 991327879 584346151 668826080 700196595 933078149 237706655 922795997 47613713 423638241 833187321 859149469 871920749 931887329 880498835 919697303 875743084 987838594 316167949 928436704 457333299 629146158 43711228 715341727 968978508 976308232 820377013 848798935 999553092 999921179 14750497 506895260 681154668 962452744 301278703 691053751 647944590 704530180 917518605 942252516 913811602 983350427 966954415 998027859 712036847 788576084 19127383 264753762 275805557 864656994 118648475 427580271 924074633 949451266 195733438 836330686 434576943 679304427 616983019 751970710 488844859 577808874 3412082 913943685 255388854 540718580 388004200 827417548 457008267 892668937 353077990 905219417 499777680 605071906 931125887 938294006 802685399 954041873 349620124 845035173 159668519 592397862 785219194 945676375 285105668 814863376 517973527 853100161 196391189 996297408 962574818 972847777 566783319 955953377 410726004 478510365 188911013 291601581 328370599 642526018 22419145 389592402 926689294 964904919 613535075 933135890 263461426 558425925 785305218 832260313 963981577 993106901 166854821 512642161 208269320 502336030 512576185 830762252 367548279 470164713 66722631 188638174 336735767 753272793 567579468 573147979 226640954 241008524 681357608 688094975 186560469 197793151 911315012 974049964 853998942 922851926 664977037 676695132 119319046 442323529 688672427 715651780 879796826 885744445 919981776 925486919 487763309 562724086 140550711 604749475 721327584 722844720 337585133 789085746 935679303 967219014 460167378 774224616 441505841 448992061 16585425 715017784 509869626 980189238 410585577 671347563 689615204 820261599 363563173 514370103 116969780 166857885 956190440 982003319 251501297 918137494 534734634 749196063 176878169 844419571 890751246 901667001 716531538 732258084 595685361 738005933 623881506 834867754 85038721 861858422 514703372 894205025 11991238 860583190 651663674 700123719 271759277 967789607 924825505 965825152 18582220 270904254 623415442 639039019 951767445 971240758 292582219 366259639 747668068 929806087 521043056 882522842 599436768 971614657 76033224 135970123 627017642 889613868 962102239 973856886 533355105 716014184 681457043 839656357 703171902 729144605 962757662 987151909 812932099 967101299 877353732 940054804 304582918 905520272 508074069 759404542 745550212 768633297 565872916 944618478 635395160 819586440 316911500 652597883 766368600 788709866 603778088 904620144 739826592 825512009 265257150 361704030 180330534 875569109 129654328 875141492 719921964 908841505 850800767 894183158 890041240 983149442 348511235 884812028 139734118 456789920 533414605 848060205 687308357 813944512 518482040 782205331 520913591 758983925 692246080 807680730 783240832 992632154 729959474 996412210 492053625 959349121 991611368 992060374 805269401 955229551 144530449 183865447 547825185 895900017 331535390 847250185 595742209 605653056 905772890 959585735 333654056 505484791 109303124 531821882 991989866 995339628 461616309 992982655 905075505 919876554 670926423 798762414 777435168 854255907 963889049 975403232 637786731 963233842 705646746 752592430 916618666 999323217 468754574 986158858 628947866 711503218 781673306 902885236 987199182 993298431 931161401 955682862 378469331 939966844 841516212 921911233 860083323 926370297 201321114 562925978 449507105 902408226 718150739 893169622 260718766 327132550 842880305 953250845 252135786 940695236 997890929 997981002 589889674 711164903 769786595 904740898 845848772 988829008 239521896 863448995 833287755 985106289 600240627 873105458 922384455 981907210 441336545 535553462 242394608 939200699 299437633 628457563 878195249 997821555 803319050 985824111 548526121 687465166 415055811 501712169 49415576 391529830 199725489 626760183 492979913 544987710 317911488 699420829 669606910 927673055 515986336 958475146 642898334 755400625 217334044 481556157 703377525 955811969 371919103 655880730 574401273 606471243 62780934 277937372 559557669 657740341 900292942 955590464 80314051 634398526 599202840 660004425 156441261 527726029 750720500 796157930 436351277 819391606 846333583 989941073 458060520 987779131 697318410 850741819 147490555 789119969 162095695 607259680 676397480 950801172 132451568 768521785 641217755 860515565 707280912 974933130 197429208 427558301 335960099 779107947 946242588 986288014 608125520 732078118 318740461 964965878 70251165 581260719 135194192 392077978 481298028 838080875 176325547 248140906 524480120 973151000 308410970 851579276 43999758 400006368 72388019 572104953 707819868 849907762 888915577 898638245 472591887 510218755 128976012 883847642 662951203 821807302 816760925 990363832 713184202 848936801 119081242 886140316 697326626 773188815 486196389 933799711 343294827 526452879 321017984 825183946 451204280 564239361 141961883 171445372 845787489 957949678 651954927 781909876 929620813 943255539 74478941 393724701 736284764 765330632 979011386 991468827 380249659 774680576 353384430 798109341 769389974 895615229 463719858 845877440 582847126 643892212 803887633 821189019 654506325 845441705 551568526 836424272 11506918 93750747 738174230 870353107 837676899 910270942 865151998 965080297 428987275 712630139 594919643 892793078 103473563 750438464 130376240 343087164 308919816 343659502 596148236 856126624 671932282 717906543 834804096 945804712 907681948 946557226 750465199 774675164 193321930 478270557 655249757 838710982 333555905 940434396 672643204 791789226 451319229 830206305 54989946 998719344 13682743 628369511 985826494 998422766 600561250 772555363 620244378 711574723 420496082 818426947 223860318 261340409 610311478 827091002 835063755 987232203 921715791 972007293 600219704 624624297 177570293 788728924 367125388 592520813 70679531 834799837 639004783 674499585 59739568 603605527 571704732 788912420 984092352 989187493 544505324 581723125 657229087 877652390 783950756 852202364 842394534 933889802 827580757 928353547 488489360 760008120 9896160 569473409 999618387 999879400 711765885 790193459 355315517 841928947 315518819 481566041 407194613 478623841 329906978 784030426 530454538 909862465 973930693 990843630 824255363 829720018 845166950 850747066 752419405 783212891 852925369 874850482 778452176 792934806 551269967 851165059 82163858 653386796 980865333 991622803 563368291 889614428 935726542 963176701 332154102 405977210 488750168 734880597 700901392 909017546 582907405 931778236 171837018 482829976 299382500 304789142 3043475 951143914 26382699 230614557 82288366 657060416 373217048 785020296 755088678 793430375 266731554 849231510 937143025 993640672 902452197 967897892 358246222 688621010 920130635 964828193 103452721 709675810 630367126 656505481 649665947 964839205 184538588 345822908 97341237 201976162 99204558 436691412 381869262 531061407 495146428 652351029 441998763 707481019 830911265 960132715 76285786 589494014 321657245 560723813 711934736 868740479 279245371 577029509 49474968 754845469 921509371 998031828 961865381 989436452 7145874 323623815 466801051 878699099 359426945 941704447 827708395 988024714 278895288 317889085 450478055 763851578 427125689 731919284 488065008 764983746 388444165 937955739 254318287 693798195 157816255 378629055 312959392 663526419 310964890 384793288 323407891 477180947 103330222 648711881 477199678 489828739 881217716 903210809 776760251 819010451 745334614 835409222 330506558 607094220 234069160 424742192 683664142 797353443 658112370 950895745 700343405 972441855 724455021 812449432 684057377 696894936 866268608 914928823 89293007 986610462 929667144 959319196 261484158 945348017 369459721 713539663 46039137 66675690 619880716 837575846 578989128 814818006 54005336 153987464 378230749 672921074 175454254 276131323 165423898 740385795 381706033 641154422 409491980 590156217 996682406 999548264 706302094 781884878 342454497 860076465 374085275 583140832 682793082 772851892 282085669 366429168 85355686 125029298 371205156 577000550 637943483 801325934 245769289 986228758 427392088 906852902 74530413 578030880 571856141 592819033 504762416 977952414 135227292 643884305 450240357 461085940 921132069 960726632 324831887 576503806 509262464 615211977 790680604 941753397 133974482 622414272 208229974 701870391 661139069 669294747 729733127 977425734 477223033 804737638 786849464 824605912 665567105 941645463 963986084 986382478 264742470 952569645 701502849 736852427 753411532 874052631 817228285 971408741 708465417 748667011 272683643 403411050 676136637 916562788 73415641 748822282 527331529 648849428 523045463 980841329 822744086 880504146 581262974 990682154 636132118 759053812 549570992 697371894 19009110 254569009 432496217 671570909 491613939 854231564 437552349 808697576 987884042 994218841 489382468 816271967 34784629 377476254 720091742 740375019 247944316 842570774 165221482 437925977 863305139 995973171 73434116 857278333 188231162 775193004 100937060 571968087 136496287 888983341 98083687 491679058 420685168 469715188 154672 135184346 583492023 604415130 94998928 333464758 852499741 955226277 971767426 977554045 423022163 964465450 205410730 365768893 329073166 606730905 115381742 185105614 325507790 907250348 597942349 857077615 222350794 691446466 218152681 559744519 485585496 992288515 313077267 535498096 388925664 578097472 445990671 576310496 191096103 261781389 59954739 857456614 563551612 974971580 291848409 521781662 47938390 818105817 270084445 272737642 293327534 961992036 856523904 888548098 56176353 252675417 877263223 892797142 340172581 964472817 763094065 853923945 368303734 984804031 537839745 909311824 130962709 452317660 546619994 615945191 166003404 914956467 298006041 414807651 959810628 960657776 347730789 558634865 647572072 953496493 656032990 733037397 475581585 620326094 300877549 419287430 798544296 837169530 440224239 515990691 381310610 807437421 975029556 990002219 259338630 498201536 198981911 416453568 567784407 788256192 13906274 536844478 246371527 638343250 896190947 953506403 471201683 925491463 753429212 834699472 505897346 775750305 107330511 996219191 179387137 901960588 258338336 378213544 258329101 297864477 487889205 520976969 850214039 860585410 603686788 735938944 752458629 767704360 695686845 892897928 760286670 779945761 417618754 443527526 921559969 987123710 198347348 687214857 886554403 956663973 986769063 988776988 20238596 140659424 981124618 982817549 838436983 893927653 502362902 651215008 93660155 593140303 544270522 691283750 70007630 158064588 726306182 813985499 138604702 526515469 11389514 382762778 848777687 858390710 817430981 862029893 402544784 424231904 747720816 850485374 912939402 981394345 157071663 231663094 788258503 984707687 179604785 238117062 476740829 879294992 408319096 651176255 697548068 802524194 965892609 965940148 810783270 929082399 135237498 842263608 566908983 806177869 398089472 649047842 859012486 940870287 262842243 937088976 195199322 274898192 956379677 965422566 263367701 632070412 503336814 668737076 669348082 977920017 185616865 660674777 235209726 437501099 168996712 922594477 888112795 980698034 377896440 922434539 701504202 772321861 209863970 920808929 719894055 789474245 68576008 90270674 12751601 837426402 53313728 873943543 29081815 72212861 270469190 529225167 667673511 892052397 417516642 781381691 395590516 516174786 2699315 540975299 989360973 991392621 753953179 880605313 885963555 954980128 668902979 830252783 632005838 909866758 971590270 986651212 409142174 536500804 752181418 855919373 10499578 665052311 690336926 839333270 441458426 512437721 847500927 856584797 698769562 885090212 302126980 325397017 508619258 972665222 746016470 822626687 614281885 898788145 421285242 881982341 233399381 542288230 717969944 803351164 560099545 961580037 835971745 917233156 31922224 706090535 708519286 739874131 817308357 970820224 229139256 900927258 91199014 726429093 174619750 341016401 78663783 781883624 42607438 643061629 339523967 435543462 872071907 958442573 501348865 821473307 244631222 329277669 924517820 927511613 71470277 113049337 482896715 543963793 8190180 480643140 70454176 551077186 226407681 420253525 136031087 587277757 339285005 341957696 266865324 724567276 697376630 821366156 513133622 713547781 182575772 546385913 475021627 678301910 537295038 597713513 618552923 677069761 940138456 973639148 336663 925634818 557146186 586063574 847213516 855865353 692932013 697790281 394621366 395428372 653450913 886117502 752607255 956457634 342177184 420974618 159804330 198883577 907365053 949716446 34480276 374922228 550461465 940484208 821638545 987007320 599968765 820502179 677561258 807884124 533610192 741728284 672844794 974685471 603970949 755206063 735419240 966902679 256224805 598237059 573851972 655854811 122461578 971210427 592917295 628337498 205194787 460198826 211966919 984632475 846566263 861702913 236598934 791239127 703652243 735711498 970783245 980214209 807035805 883573311 648127955 829217643 41922004 578527889 57405575 583495151 765875505 811615904 696815039 858208623 967718289 988326616 329989354 986579203 28994847 187327591 264206859 475885814 579688479 695912366 919111578 949447302 452632128 514886298 438089733 556641606 335890264 690757078 188158591 410232688 282837913 456104063 982510576 983985844 1549734 543561744 495347108 553659931 266783889 718212292 442907937 795806163 253044612 306993688 115124898 633979505 862659181 961794168 235033192 932796507 894471809 963639731 687369297 913658009 306547497 612210347 107984128 226694254 977813131 997943869 858933467 916731823 475833934 631738022 735590586 922673978 680841720 740672102 699690580 955277534 811239515 977729224 395582756 740029979 738758390 853762326 395395102 913232665 88590756 484935401 524261588 526299684 685993104 769480205 702652113 925216656 19203929 761842066 432149702 737639395 30610420 250806928 942249777 951997473 684213574 976942458 243219362 652726588 254812360 912993551 200675360 385461422 807716563 818274015 632939066 875262185 316838972 981000163 675377010 966849091 276046542 593612047 291349604 478127459 719809569 967395307 854167563 875309175 932826254 980209103 961727136 986900571 312526002 637202965 99430382 800402912 818895456 943699204 412403014 908017831 47722529 383363650 517027306 947104965 111745791 347018270 350264217 852529461 929855409 933869702 370560070 444352543 365457082 779092842 54697683 687278936 492644228 779120785 937069137 947724696 218344007 618784548 971667749 986868666 839774778 936346993 645225852 684889513 941732499 942000141 97012533 670215441 348356513 398573276 729077623 942898735 89342956 135151805 321593290 444124310 29670868 292561336 113540655 555559721 830938392 976970474 250601895 748586643 800664132 843584624 994799979 999876858 848714416 932799126 865766805 961244226 140355444 241107814 313533333 654824424 159763490 165629851 910578121 948434891 196205440 402697740 126294117 869759866 274886629 360913456 979340612 997213508 883922147 954053901 146532731 918617790 763996681 771449799 357527460 928534094 312395384 798028560 844679091 856047035 254404215 428079161 494067920 930103498 990159443 992073002 222152690 877378305 567013135 612882811 795410378 929443977 450777209 932013585 402214251 449884757 343581699 405174144 430154145 822527775 104587244 783356539 461452431 678808177 994175879 996202236 56495764 506069501 525629488 974956401 544312642 737088735 401991579 742115521 720308556 788951961 525508079 601753025 389889519 855579835 687738812 907177725 6967537 777045138 630739376 719217389 437703463 741636509 579527518 687347176 397061937 591430598 386259885 993046967 101767273 431709478 688698796 996711948 852507023 861615339 43769503 640201968 554525351 834896300 720977718 889361474 418392007 936722330 267089973 563155380 165361064 437043711 138973393 288152256 303747994 876747288 751469902 903985963 738572787 771495508 439334232 656261503 908463028 915990395 18579073 994708991 828860527 905732768 289874859 730602975 698473436 973736344 888929980 987374904 937980086 952382629 291377375 466961759 387602642 520087831 580925206 922164131 916914619 978914477 861197677 900122478 127279932 143259460 973834827 979125851 835902097 936123421 558356014 821784892 642683438 661412479 184967566 662226408 552197789 679207311 997853293 998220208 663250260 761511270 124355093 401193036 345094895 563826601 41051675 485234521 29279708 943556621 289773235 845594781 66387173 772483177 215527339 864930515 215766859 329377804 192644598 749864689 93048266 129920260 348085555 968910991 823547525 897867259 269278480 757657600 232175256 605166739 586817706 638760661 977311167 995079874 723654064 904308701 277711147 581768762 239250912 656946247 544707822 798180527 233729240 758155200 1088462 373189126 672351435 944860963 441430246 542144333 227045063 939316144 115743648 896095536 396882948 919842121 656028012 801781855 148039024 956004890 486335285 687809882 651744428 802372100 984738862 984756064 61391839 340163934 439270219 515835808 661775575 734752593 329140704 425756501 611132526 744031554 423302891 957334675 849067640 972670909 241987683 784539124 370830656 723472813 452634710 673567200 620687982 916268693 621870297 684875300 183360586 414689971 644926265 723501231 617076521 902561646 512957460 912486264 526689936 834867660 995225074 996713656 79174019 695547088 892880011 984772332 651666314 848415088 828123844 877862436 101410666 250685460 727490843 993309861 101356007 132131903 750689891 945198179 395516449 796979338 869271912 912478265 235709923 344802888 679220601 966040621 571696976 984931353 587301519 784881575 705480854 857755596 662639271 688265075 264686104 283003141 331170674 734872612 992059298 994426049 371225883 741632329 838592960 844121350 814043683 829881053 908666726 963567279 745979652 761624786 544997849 645502602 780716721 923706604 919713418 923896146 627668933 955056941 606003374 888108044 862471698 893420999 624329326 641502368 860773990 873455855 113081725 501999845 472733782 742478210 363224482 677792471 576106287 754907139 276908279 975270539 885310607 991616575 303728989 870501186 274813299 436133906 726098860 909558084 628488702 717450349 577964810 797415531 807786432 978882069 951444618 988335821 780006587 885530525 94454573 741265366 660376503 745093832 573213233 909404122 398359300 936921161 64609350 928211360 40012501 872637579 700133989 759314851 829689467 963828525 774674531 976824718 332139468 668490407 511847943 584989411 923017777 948936607 483979226 613094346 622872729 819117103 806097420 953893883 992864292 996538144 806058948 929735886 851423791 916414646 221512501 352428517 990844644 994072639 114816673 248062096 426319641 507808158 26736204 116307623 307384578 747220252 931683539 982415387 378070320 936202642 717586702 993825931 239211880 795666690 136831309 994405979 18831252 410669365 554706504 632030843 253972057 625728631 907144035 963693084 812158792 958614733 615876120 949282773 33681764 502392458 177313171 655144571 655908001 733566310 508838067 555748763 512316060 877547047 391561399 527476472 317239211 829473925 430642 450131428 379254682 699458844 901028204 951565962 126637374 330869522 112591811 212011280 945180914 960488971 715959621 891016883 796228141 843264785 966211727 981955620 446180513 826351664 38113698 640308065 77626208 607115101 272354947 711145570 483903130 946457032 448729978 736558788 369794100 658111158 59177696 78955435 810024097 880194574 747727758 766217278 377020798 921752398 280838079 925069341 684489320 836360849 537019881 668412050 291322365 316097947 134016096 729946862 996286063 996303279 79453724 829382764 581131861 803898021 175467791 191003531 772977384 783060650 945534649 949687213 120389343 402454210 688383148 885260291 866400017 955818114 403440579 687239243 277626969 635580855 649763868 828383586 822139067 871435395 825085538 894534048 379117940 554507602 929369390 942163883 259047897 415068058 489915112 771152910 508143871 701899110 189844226 669299039 429038325 711403344 254290652 531462965 51245050 988527667 449791107 458703190 781212946 915689261 713386310 776175463 302309978 957875315 908573198 944117127 554391426 664077168 887911364 985282011 893528765 902324409 849147553 902020643 634701243 676113751 480112183 671124820 888043012 890084713 609857779 671313230 590028817 858474731 928230893 979067037 799485176 922348319 658765490 959582916 179580798 274364691 362817305 990652787 752031720 852933248 541654192 714523909 192502341 927384155 736374846 777739867 470597140 601860970 355576267 813228641 814086105 967528313 966903723 984868477 6422917 715634523 845279859 893179117 871162666 916615817 695645862 765380954 798052573 949626704 38524541 308659020 670892313 980016702 816086910 868838831 186969966 387545970 184260251 249511781 66840413 132543930 645526325 848697169 993209811 995873785 195144860 451733564 915871683 926041866 437829873 638597574 337332555 473707727 803696348 891921070 183338895 369961479 246307909 770312644 256523093 870299812 886488396 983279271 986414582 989528327 140762160 150776363 991591177 998012324 199631909 936699345 309752779 883227751 68466454 378904588 317113450 913458593 217221032 612453695 768125702 841952637 457011612 740667407 286809655 479563432 930839198 962780847 904779348 921608926 894164470 931083159 350961222 606515882 588852051 809274369 183042370 902475415 600380218 669612736 560279788 685681690 270523675 347085359 38417727 787762234 372598828 672722756 291672418 960008849 368569708 896941698 362850537 441166188 678168251 967966089 552594404 706042785 793706493 813734378 780387325 959853764 512836251 689411854 887315684 957650292 579454573 850833648 837139259 950198364 698394707 967611859 462739587 568437962 862926572 924142532 994357847 994495588 377134999 400890970 504040459 863356913 241851127 751624256 669964655 797348124 660672181 691657479 666009944 987605355 997762490 999518556 828500059 838627834 54427236 452165577 874666229 946267924 186785780 207407408 567058879 884326957 991580397 994616245 872031679 948637578 211097023 263441983 836511127 896711062 232296954 441721471 216620164 492284782 803209966 958113204 886475289 891433214 244101273 815661555 961207009 962779530 442704426 842058212 957662443 971456439 474352078 798310065 264549363 876994900 698569494 788398300 340258878 911853886 743938352 872330482 541363525 683163665 288680703 939466529 506990333 865632703 722314392 742498620 288491262 939398415 912873796 987234139 580216979 832250975 724075716 996557987 321787496 599322141 857317516 973953686 336045598 926307170 864856449 951644964 72619027 866626208 546819686 809194038 227770703 868959111 56716597 307766769 272997980 457227485 831659501 914849472 981301165 985042418 860216539 997254703 988044006 991463793 281049479 370365231 820509507 986149098 356141578 830784353 638346093 908566428 416576626 424274788 537913635 673687826 948846582 956585163 925831069 956205707 49571495 935593602 272099694 713456167 408923284 705186886 898128829 995031416 508597774 514990441 284763175 376244979 856526469 914167616 975192033 981742737 176210012 852645928 552880388 743588597 457702424 545630628 578885024 683159773 158654719 983708565 824221602 872193172 173280913 933860611 672178855 825079961 668347362 749769179 512844816 801955785 389710877 546365687 888843452 975218189 476357554 610350937 873380692 932538294 55993916 713627861 610203513 738042837 461060428 890660418 232337402 830074696 867592938 906939691 325306485 555914832 201552189 574612793 407690410 463665252 329487052 977310843 966681655 972262894 547008477 657466486 69866359 799191839 95696518 210932049 32458694 407117229 238786850 501927430 475886788 998521504 25489352 507362013 191945236 466490346 206251413 594886394 669096859 883293310 279564645 499791164 145995309 777130636 830189914 977056160 784257287 873023845 790359944 989526484 894677234 912963124 180607331 337314692 150780406 239504830 265357510 991274671 55905310 777166311 551072205 972234278 220079951 499638514 354735426 518884566 886446997 897764109 44177601 722442527 808365998 828031793 861152770 890505529 814226921 832333292 742211429 994353902 160934706 663592911 192361628 333926746 794287571 997029331 802997464 971745106 368500280 882773680 453246621 647735189 795894337 847215845 198570743 269818078 704062417 879144062 433715114 703365441 343272682 440416963 441797955 596492180 466185410 526432313 392637227 948182784 400245482 414458517 639050640 747681825 937337484 945890349 640330689 754407112 156171099 788076293 762985628 995354627 678369922 824454201 517098141 614599932 370848646 507994263 149633801 779908367 256082903 980257443 226087845 407422204 948055985 976625543 957412645 992956306 308724609 986739870 989127365 997706232 653239987 661505404 949621045 990851526 91817515 499226790 747181945 967045432 907094391 918336475 868612841 925939271 250552536 631012630 226852715 885213606 562623265 751225711 276064047 923320045 882580545 928049054 79882235 647866794 399098154 505647446 268160222 490059017 721219120 914448570 588513532 961400878 301318178 525237478 833876575 918787141 361717501 772752255 518491400 967935136 311668591 761139586 635936677 779458931 510551214 911403126 36778995 470884179 380558955 453810409 152000818 502067978 633559693 944000259 622793283 906307075 798922332 890607744 333702473 797513063 247583086 908360785 180075121 585393994 169187725 383935454 660386087 949878550 347189822 623934296 800811398 991166412 485223744 536016887 137340230 371907489 254024427 562371162 900030891 968781840 365813806 397266006 318638779 396529535 542738543 877027500 753334563 783470750 722106584 764695668 135891758 141901441 474966380 745632728 665167923 797236355 281475587 739923049 212339366 978375643 821085859 927599738 17691026 436989140 921121272 945195925 713381656 950025829 205208418 966922460 104316076 610412690 105101645 939895038 639472519 682770719 504703183 765050732 478911464 591719239 226915252 400590614 287571416 294005695 969050475 989530842 672388080 723741457 866454016 934582131 849490624 913439633 821150986 994395223 952470594 977263140 913988851 914819387 273216524 970128554 946677426 971711449 905575125 981991379 566677692 917607801 296297235 852991705 113890860 925473896 102316366 294338331 48875635 671135129 393720991 828021173 151973376 572072753 312173927 626858789 992110006 999931994 266354437 298067090 212366130 908743040 404754939 446210499 847351020 936250131 997476935 999248413 364271633 795952153 70442075 78853382 39911249 261509176 121872268 798152917 14124111 65840268 989068941 994937589 185292310 841669900 344748886 406451013 130007427 529446774 926506789 963237739 384011668 819548815 709499497 807761705 630957429 726932217 850711235 860430821 229218949 312904175 791880911 868697012 618130878 759902993 986853149 991474529 394364249 494490506 999177587 999953770 911184646 954780171 465115982 573586395 288009114 291159253 291677088 507129351 107005658 447843657 55841791 762998086 30071327 78196851 365514425 794618967 72328189 916801991 460888432 998246171 747479809 776789326 64623467 438310827 673529547 877779764 969794563 970193831 490582707 500198833 490465839 879974939 916542238 972004680 145343461 542818391 278537617 640503028 814562684 839286730 370186778 784082958 44250808 153637027 160017493 603357952 413636882 855332143 229319432 741406378 564373011 998089360 967761093 969078762 350155286 679902617 192649117 586092377 850834133 997170895 609204472 854945079 518102056 988007840 958770241 960800073 182952904 368370533 836412993 952508976 456668454 606514381 563138480 816847667 85554087 279683409 850985796 899732710 151282753 246783965 351566643 911596627 912512131 978467841 734737707 946802031 944239533 964356276 327154522 642206722 494361081 931698823 254221368 970549714 941586868 970820670 710034064 996428456 806583480 960540734 606674359 778668913 145306001 446141285 162958314 399930756 776343360 994013237 252806392 270547733 211125286 611154816 758070157 835508308 946237287 966987482 285209346 560544337 57756209 517244820 355449086 655781095 343602890 997173659 425755794 969004651 360278501 408737496 897482000 966060928 884662644 938726359 743155682 918469255 943721515 993739617 130576467 971354075 821671867 884803729 991713270 998561383 357636080 411191427 282452365 686265974 688228373 897884677 447120300 734202580 185964077 540855459 487106918 839190820 71008146 848739366 268753792 615197030 548826508 785176491 989270193 998814585 866119397 939892403 721547710 983540797 640959763 923655096 162647147 373467091 809217994 864805773 13428959 820959499 477683542 559616535 733135810 880764416 116243351 132403861 734925249 830350762 219348064 824301598 804454221 911753351 143698380 600846020 823600397 854167438 787170942 930068059 824939891 954256382 964355097 985575247 546041187 953357150 621758146 743335534 237477158 412269829 159134866 299289388 722105130 749548405 128587246 812706078 128252510 703994162 88139889 891588634 227686909 362646371 63690567 661364110 622810549 662190140 690041555 842339794 536643116 564347965 455803897 617495825 504349021 609480261 631618419 927927688 719430519 735150580 217463477 926390215 915902403 996988846 437136029 471070321 433076480 960394090 309394055 692285752 788285474 893826788 605476214 773984335 468334553 930090355 646471810 871224475 22615189 903127433 531746720 835805520 708760051 993070472 193821414 947011295 889714676 974069060 86692356 793203407 246813493 979179727 665639281 718611416 914643078 996478575 940840732 958562579 977404354 985841280 449779074 730392464 221492693 929363659 5379494 899887948 79869118 995160209 175291251 901415134 125514673 132931829 43830757 621934367 988572519 996543388 9757328 909964851 136155414 543412377 642885764 833147026 607384377 652044058 758360374 786685773 593329883 677545746 261679004 502113115 632360434 893779972 63967736 204918005 83140150 162817051 992740274 995386816 222596475 862936285 606631286 836141306 355904701 923447140 437194070 526226618 421729789 845166917 386353605 996162180 921487122 989367079 342404964 776086009 887560245 910277102 780483214 994236236 991025130 995108175 852995115 958501504 445835143 908107894 720963592 894459857 183877180 327084882 571480769 663743019 367820116 819339575 651286359 893958128 145940763 444274537 210513802 310743036 206742032 347602341 196889364 682957269 239123979 413933281 37151319 284334954 589647802 934857781 349420229 521234977 886371734 891329554 716425162 786335934 303040504 519481415 62020666 649758404 925295515 977916459 832471274 967894489 788652930 797113985 202815883 424389514 231559196 408905149 379940344 922512071 57520972 953780491 805264607 966873450 426890840 876018609 703713578 795892491 595601303 940047270 544386126 700268190 208075926 215640173 812032409 920502751 969814607 986308696 950743201 975494112 297984415 646215901 893587686 947023157 455130029 565001264 261428800 838295784 618464551 654511422 770284285 817592732 414398544 821856107 579803117 706755262 637438748 890857901 859175525 983058746 89689115 100322110 703846945 939154963 586640422 812756752 425163652 968143859 987434357 995447619 883501838 903029495 496574604 857850220 29774517 634026780 984449623 991980071 253175154 583981755 691502563 696856346 186134453 708324512 518707298 844430639 133363617 930105307 704250797 930577943 421400498 952524954 886582888 890787095 915247336 941299121 961133542 961730033 166150101 955052353 49497423 708550029 977675549 981172833 314551280 400499550 781417618 861353719 468398313 929266223 561049960 697630662 752987793 761837178 160211030 802299422 96981411 834749318 821390671 945757723 978297598 997873373 547122666 590576388 683352256 841881827 900033400 943117905 934137978 968993415 645025378 937231289 296314086 801093411 314690502 766105739 508097664 818136460 487160748 516674537 826573306 997397997 564966765 976511855 798744327 861922154 874778421 946406207 952993096 987519615 283154437 997447257 682521189 741760106 695052511 977985410 411632431 783097474 665845313 787853958 842829024 934629259 984490929 997830950 531420437 864513456 82232801 548398507 151177970 919999298 800203281 929148083 604475378 658769101 632697051 827222828 499066825 734035443 170827110 691689887 783953196 820307205 825314904 923161935 447601670 999126475 357785671 889752845 96352017 320018275 887289463 910764162 379702811 823700845 909212135 959190704 898144567 997641154 557773076 767500145 537303323 903330001 918544653 995430156 117808984 424643448 201991608 796246581 409120874 410491197 966229572 984010664 232315771 407538739 963896181 965802533 22646161 692312065 834277171 845543102 40436694 915444979 902599264 955586888 79227421 553539331 552767601 685466139 274296348 613042071 254396200 569625235 803527624 914908245 668616163 807523679 748363520 771760581 776441129 902924806 918347645 994008362 105518384 740897917 80116101 404884611 893532357 905091989 286305819 384256163 399250457 921278896 411464237 490298975 264152969 397115092 351782297 618901366 562340999 884802178 750428814 759039540 337805355 884511490 229811926 919765710 219792602 642517576 263021408 369036244 527472611 829612604 398287960 721971816 13678872 248475975 708616703 786742369 625492157 659724742 600219137 974496936 233336044 628880691 442095162 843370408 254311996 818116362 512968405 532039478 274833516 682236686 433333452 570049021 182972190 645927489 739329154 797096770 797737179 803249685 611897029 787455304 153915846 162953490 274160373 676807964 99515364 148230662 860842646 976743158 987241937 987462667 24633721 912107558 455010185 970403486 139574049 819680733 210884465 865162542 948858160 973587159 816194904 936046534 170017986 689451580 864292496 987151699 334037109 859958419 129949356 623915740 286463438 404235550 399459335 908646333 614008106 810189301 734156775 834508285 98645324 834128817 740013983 882443576 136711940 785960059 952411641 963277018 273387105 361778179 872322112 947224521 614632440 794104937 835738074 881606302 332437121 527168320 357566794 493279331 710426718 941011296 357166880 707020983 761346209 808410874 317968107 647315279 892573246 971462369 199242010 643687022 911963170 963577833 496764082 603021641 783887234 891110524 265272720 808020437 352921141 997249655 244914325 723367188 769206445 822775712 677805626 888704319 274708902 527287772 349949410 620624734 43053133 842668379 303971860 379946889 189432694 815322333 97046659 289326850 489726289 878998345 719013817 947970901 42911625 348854942 70479715 207901663 304024374 970210496 493309657 974126328 55500184 980731739 138397720 907129786 79925153 257447033 728817483 892246698 175902628 229170316 247746176 775157995 925497167 977619593 127118937 667907925 216793563 431995396 426086847 430505123 481068636 725194079 352254032 857907995 228198203 671711971 244688474 400819109 55244953 347237931 833167870 858789317 402603738 984136173 773952345 850778495 800179814 960739088 72610990 854725064 779388089 857055248 408632071 651463746 547357025 592907092 284443075 428370013 729513024 981727848 667868687 996488774 926994937 977865466 144010151 495408934 823863180 853053465 273518685 517402257 300258688 816646711 815192119 823879193 884097152 890271420 998700337 999229387 489640720 982840775 393037280 400505983 868655328 876550009 995413174 998725799 57883973 405981243 148101110 195084388 435495983 535643829 527325295 833656803 338192067 756066200 63382007 111390845 405985118 460162389 363651108 995296501 649829141 751317083 188424690 546470663 853644727 859414450 827874104 869908739 856984250 985575883 922077940 938219210 321236082 542775583 495442988 886896237 707025767 836790664 207249758 671289309 910801213 999388824 673248644 796861050 886278477 978299905 673762468 808291775 704251358 913562134 807085997 913903806 393979946 842890492 390634988 416957297 44631006 311961264 552853691 729705463 803945932 914935467 904542181 907013636 283614406 767147306 501245372 666912000 885701183 918779350 127558934 878613124 269485903 449003451 262345446 774059241 31204855 149633084 327170349 707125745 277945077 368900082 308766976 582622997 343197296 406347168 918631189 956884065 365305984 449164058 802369845 826151205 733316653 986640761 585884461 663217071 881837235 907909337 770273596 802173413 955217337 995147988 58615574 837137744 973219271 988121170 932377086 942105471 177533372 620916642 649317633 740705152 241524819 651135063 478742110 823987582 613561098 961002371 333092725 851092117 677061133 804264708 112277707 214242504 582213279 995292355 422871174 649260017 528194390 648645526 955358034 962073788 239070616 267845002 56779032 252224687 53035079 912426029 227140141 478294042 825448199 831623303 3948174 226565285 803497185 903654396 484179676 500696952 722694600 863899547 908085200 983643397 354238277 543457257 957653289 961969415 523353010 839207073 30413231 223757313 983019772 989527874 559943750 741189826 982365063 999445472 439261992 878168916 808819320 818804293 975577854 978223771 68756713 736648332 438426835 671980266 107393896 607644842 184346774 862682946 761252973 941770591 795551957 967430020 351195971 830196269 432992130 533460869 665932624 866522312 211909057 680883590 242167472 434148289 245533332 714808172 228923966 260525140 438477586 931939860 204222422 422107557 312701618 442245420 256020070 708431029 104940992 482147766 39505170 229961064 960318669 989036032 803273626 839503993 752777824 807337098 115370657 789918506 885742052 913154424 30741226 250038430 89543686 522976093 191358490 210579916 792097055 939987726 867533126 966651573 799057779 829548494 784998816 936631220 231395939 562576290 63286747 493978746 605355366 944581841 818646029 976882125 390800020 690253327 94007480 444135996 297847744 734301508 314026773 391538932 65018329 234710786 651253193 986725782 289105628 949493242 209546447 400445432 726301849 785389104 536841719 735489000 368511023 770577501 710418056 872411007 285368798 568973566 834816522 912479227 916240659 980627107 777887812 878635701 124295880 504706441 421732755 603350697 333527493 533266862 51990097 691232831 833302247 926270388 130006318 930699884 14519728 273268891 959510648 971136633 652542806 846707244 240258414 752318222 663390994 796354761 414004783 710159009 165654016 816029687 909116409 999477472 528437983 967661985 608499166 748700579 100753831 407139568 592748607 745294181 648554673 916075083 711598521 757498487 102935305 967420850 704167564 964881441 68174192 806331043 461557152 498875154 311357253 795241001 215081478 710127748 375126000 875290674 673092997 954948484 294215965 350620513 688007153 973577786 527896299 875756344 444513260 687246598 6121515 302235325 638895654 795822037 912015504 937016598 80751141 947000230 239550562 770969701 915324016 988934203 382600528 827142838 110108622 924025444 80925729 487258121 31521733 809436268 999520186 999645137 754284225 774408785 406089016 414740766 69504549 894789360 179314922 941093890 387279329 560732048 169895014 269477386 473637852 812630863 263157216 418837692 120523532 695832084 862489153 980670586 888904644 932404768 626297988 945384407 455347211 925141451 353872501 792264493 445998153 971464750 503956516 518743473 497792822 874237728 72080802 238574836 215635796 225379771 260774240 403824634 620302885 970799509 390755194 427535880 314970706 351938618 789739257 958144470 638130446 843638182 463637165 764680569 506362296 575343773 493269112 901169342 513359993 914140049 16675075 199623014 504446752 674785039 567339863 888134378 575748183 744329971 690698664 782509470 593875668 752855203 148546442 304392105 170009629 937614338 853327648 926050383 955602739 989518272 632331473 994670326 672177663 773932315 921776176 956773237 829096669 878435994 551073699 658058238 43453387 368478298 852143870 892491903 605652727 634110458 890823354 994714496 360652454 465672854 263925668 524922672 438063618 758708520 585183849 693185468 628372709 941129382 999349713 999941759 482190229 800319421 999016235 999164109 59197730 403726486 573491154 875472377 642979609 669890992 801444823 883362545 546420659 596035012 104500209 931189198 357870514 508890433 676146724 940936826 604196394 693894597 333409262 421196774 505346652 993075157 448112431 920622326 737806962 770455254 964732988 995696129 967774558 992464279 302596542 442054869 202514280 231978244 443962159 929761621 965479810 997436858 610407562 745641728 398547484 887369772 171419202 797485045 966018573 990708210 792371152 958382474 163305016 729650957 119845093 333989459 407022960 807709747 346107164 371952752 833010229 891235045 306602753 601759535 106608277 239665397 428336818 850095722 870933560 957802354 967987928 996914578 118260095 392429072 607712 842282486 113415340 315314598 823757469 896007884 506518088 599015122 293467372 931099056 841024622 856576471 472763493 831200420 87689143 888513343 546549921 591989703 699815554 944425857 983429239 995899497 336289284 481450710 565901395 906690343 58996006 365371323 593206400 982998831 919692496 959063062 226493639 498982890 367294521 798223500 221311458 888407846 992295490 999377598 176192384 310322416 594144723 708674540 979288873 981334358 253525812 605959059 66017714 650064345 17377454 444280203 293622440 740057603 992419195 995809573 578339735 610050083 831063585 992192561 635955149 712414071 846698094 937133930 290783455 878380397 373217604 854088619 927676601 981021161 793720804 806239078 196476479 226974632 273138021 329167102 423585073 810925967 424608420 661331010 460799147 937128660 135044523 571955517 306801762 978636962 872875473 962659419 784352427 850323431 884566338 965107061 729177065 966326411 337095322 863181756 849973497 908363444 833571160 863123554 267589066 425981707 31270175 60480591 718775445 875892844 654767605 912705896 586458612 854401884 37002289 528404875 250383150 822128400 479030066 485831271 170433634 492255879 995905954 999061577 748113487 850027101 517619709 650079559 42904139 192042313 879585470 958891124 50754002 171061733 591197311 890460279 650625563 855933570 603405277 640840630 888588680 990026206 617965223 652881208 574116073 899740295 842609230 999165800 959288012 984144162 291797860 718840821 229239 130743399 766868666 913672877 978047775 980002522 934000611 959594291 355720960 689805911 437485272 933456595 185723416 904627307 996957855 998432723 176759046 308412670 820405812 907059748 319749286 532786960 566340533 708523076 781269539 990301988 233504444 471738135 78614607 162107518 61331624 887014355 196302044 430858530 398854161 673810669 458386418 555881852 765228375 779478914 447051777 903605161 770148413 902775412 82163246 91307532 475569996 591687214 656463351 703246153 118823518 882366589 748034928 783474722 906378290 974711112 829199588 882443633 654270525 803470275 209284741 941726487 801667952 914501531 622671772 970324937 645072694 680210507 786661227 999792639 272447377 357398489 255604523 811105700 722275333 888195129 631581069 711676905 599877997 707767006 751386940 964379732 507194007 813814042 342959672 701992007 479630693 857677949 820109236 934124931 977550790 980939307 846303747 997911265 483710076 678737339 232587219 796125023 157917984 374584704 210184932 233415119 343545360 580449248 18491146 992991704 623483203 818752826 258627739 478041465 212281413 501062557 795238753 852264222 955239118 994360177 333293618 380594401 561053208 702973791 501663700 887719383 600126404 855180535 909146196 963163166 199042954 433315676 982058275 986560732 413224927 588208353 256871999 926130269 776830231 829447323 97862730 463019388 488756545 731343852 647883596 736306447 433053388 463192351 18390644 772988257 807301017 855098374 709001075 740152924 29338069 961485434 575184292 881636401 737020403 864541093 557694152 799940964 369527667 852306652 645177176 885242772 808601396 909329234 502146034 972557403 141905247 440197011 923882937 944223273 764243889 909010915 71763887 639779007 441138419 517949252 928647315 978883695 245698709 263074744 918946303 931694155 351388231 379668155 580615834 792709801 431418536 523662392 112754853 410644207 716770939 819724677 165031441 478324993 155437215 316023823 214359142 515415228 573150581 944950832 606995000 649253067 988823352 989127647 873472963 930428950 879087980 893393378 160818572 339977792 392935233 494441936 118069226 941650023 488840162 971169503 937131748 944451040 964094301 997095480 18466052 99982205 580462105 643162054 496673820 758478903 157887791 968735166 104344078 586268382 564449818 981937355 603892763 836693278 818796514 916015551 740767511 755467237 567334211 639758372 85937974 692067939 316179581 850747603 537295365 630182607 376693519 545371680 105992467 193367462 656243089 824766260 675337061 697070975 912341909 930398144 11792384 368663925 795567119 890377705 123556527 992692447 821930295 867113395 405746362 808817714 609111784 635984615 676138403 693094661 689489848 974606969 586484758 980512213 959105847 973137808 396667714 742565046 396514657 745350326 800843228 863953154 166663797 932661631 515733729 621029498 282537130 383772587 385263680 891333747 927034993 935216099 698756103 840673908 617405048 751281985 465308160 956842353 300034803 834643791 540990105 768200848 795752286 951332441 618269757 999620507 777185897 990696286 450841799 684161571 855309537 918224118 843941190 880214313 211359503 487943751 234146596 649369178 942566161 970304941 680406134 845404318 995394098 997704692 820613280 956232142 997595488 998075003 300846710 719904192 700996073 910470305 344089856 776890570 50385087 406356898 295903666 774990286 504389681 625485834 166230963 475382615 651145472 880489049 367615329 717356733 698733621 981975834 920898773 979782622 367428849 372644272 987780274 987826805 47885208 494276317 863226643 966794871 33419905 374473766 985555742 993073715 861192050 893710965 924542168 996187244 352274880 480519702 179630615 827937143 389162258 492680362 855010430 978793973 304849489 551787858 45229780 152931301 763825220 807515547 30962774 764760320 610458623 897713252 140811514 328772183 190060406 969776730 360282825 370036656 885940143 922334016 415766151 573738892 910710645 949935438 676163442 760666027 803728770 999535185 81174912 322463332 917666034 943892594 971050740 979157364 82985849 730401174 832355678 871509670 936892432 973479137 768806786 894354699 593249975 803941471 720383863 835831975 993004007 997182066 283786533 576526685 462885003 527403879 369947011 979804594 824951519 932074099 189090655 228633147 784034361 928129442 455990631 942362774 321867116 519028837 125837281 224395738 12447743 246989754 872609798 996114662 166790632 619493033 911753677 941333914 400937214 894448562 99610379 817463426 551861127 614228370 950371940 980204130 795870 467488704 631227420 962771534 525489685 567143210 796766686 849792943 80228670 820771118 508537166 685167563 218898946 320837625 226583538 820933083 987946529 989889969 185199235 958511378 327648739 669437056 516543246 966365936 277175892 505506767 836343577 961772540 800789404 832686461 418214583 740161801 320187401 876508172 970390192 993266002 923804440 948033333 43572164 131190765 296829764 506155509 156114954 646911874 722893925 810438570 406827305 766090782 927051131 960598237 383990358 836112004 925766513 976431104 705137285 918615172 248210161 789889034 290555552 309755851 265981011 734559054 980538691 993290241 654580153 997915091 592501581 618207708 145846304 978755835 294004344 537050806 678416296 739032679 176018660 521922714 338087870 561942708 717635210 728426600 2503823 733125618 110250043 710455238 982591209 988212038 449073002 727756649 948644601 995936687 673421140 702735579 436253173 786955097 58780339 684747331 356772700 719094941 987138814 996757980 137545393 379304672 420098327 520142238 110645382 935988894 541882984 876514205 490059683 729131183 290799848 904150859 598017559 750830925 861276601 948855925 687766588 993071043 231875804 683537299 135961538 380197557 19054574 426592131 861944808 984197722 789736409 893945378 806328427 867161837 365859102 861284843 912676996 983090338 639637154 828696911 830197705 835005192 393891555 757093213 994523600 999700748 321172344 965707526 790452712 856946217 358790207 975003723 138586553 179373222 136112425 478768439 367707839 841072091 220962144 763398462 870992551 905386399 397209503 649922685 73413040 581527372 507759941 764651373 211717179 862591546 123559047 412216675 845256404 987056165 756293685 757532837 102015510 672824031 828724558 964480813 643160429 893245240 781769722 907616653 799868637 886486404 535902031 842227233 484778304 832180173 813069607 948184981 400165845 904240352 540651370 828282648 209705345 795465925 336387683 735278042 635976082 829062844 968276664 973425581 226665972 858779943 580806154 947183612 459522600 638846781 547511827 748729023 92478732 580923866 460574840 497875827 385545706 408005915 371895535 641408750 584015150 892951909 278397364 630741183 209281937 709831718 376471786 813865209 545491836 874585639 493658248 675096256 164228102 979337064 816743773 970655981 648758540 900757716 145660170 687312826 597253519 891191382 471737586 586663519 815879659 993870133 840658017 895395931 461673053 814153888 851038639 898104026 692468046 924742419 582667314 808875560 29442636 993128049 438460509 509612792 238524201 827887402 667525287 945631956 530177952 977014565 997604189 998999631 875754442 959565256 961112618 999061862 867737095 927067625 743977058 768220658 55888743 367639559 624345020 757068944 211840089 650317688 839441068 910932658 800266487 937670156 474632918 876396484 427177407 755956388 157204444 503524975 139907910 207199389 533398352 606103779 173876988 496339911 307461244 531443814 250089851 446063741 721675907 933546271 169947903 629608200 142943075 690809368 164708885 401041512 500260145 760143778 996848319 999449776 296166956 581327583 512396714 875206814 23295575 312141052 989236665 989635401 813062576 847768086 524916679 996838193 353937483 870308396 527225328 926658166 726429109 910563211 146472266 894793318 763075508 971106560 948881441 997382613 4725458 947960178 490537951 981052041 748057827 826041700 153715558 278720617 710793692 757399746 180180772 212254260 351894178 812517534 664289432 980002412 937867561 950749689 314026754 482074579 757978712 816929672 126611692 390505232 701769655 784145640 628589178 630356300 261303444 783086830 250424648 791251479 847133176 941543557 392816908 421767849 287067614 295131222 326740912 668537662 552930591 846346185 693391152 770028911 416679017 547370850 735661079 814414021 984493088 996319859 892670538 966921633 791682226 921445334 482821131 485612475 768849661 825568964 470163914 484881497 180510440 487660951 263937160 934966545 637805089 902982474 394816804 851318049 651980918 951774756 871834756 955586851 262609512 963107055 484426877 864341903 983333960 993182170 639710829 760373410 52180249 473004828 932746272 982007634 315370413 838221157 49399036 346885918 293930903 312050899 397167294 812946265 927164082 990104294 7217456 867175361 998163592 999964143 420054055 618972563 309195422 745813764 722687790 874091084 238474800 654549312 50904090 541870626 60686072 324751790 425282430 826592764 309818726 469635353 418339242 967836097 275582189 386386956 984933464 987395208 540713775 870955248 58702458 409018429 169864789 669358534 550357362 616522485 616142783 736106981 940863585 963730264 998625310 999242068 982779207 991935543 474008933 764003848 567386630 799769755 563475310 799920830 531908877 965304517 416671057 567750091 20290659 528789351 955752373 960312164 162726737 841959224 299677766 740023025 698112616 858532604 542577922 654984682 150234169 372866481 837240917 871861131 8286356 885216244 496092282 681284686 1266808 106095761 986637816 999374378 361939804 972437471 659597723 825627278 652522190 826615679 396069653 577878107 470213079 656353761 82895290 220673478 471068477 950789352 385135274 609562398 220159921 929963381 542160883 810411141 936125737 987705863 216236756 537367052 227015014 808302588 892739169 901336487 98575970 258265422 841705073 922047226 491122385 577155079 533979784 735305482 265222142 292819299 120866778 168070620 882483675 961070063 553436665 923171977 825473544 993098829 772558845 862842945 18196445 508385490 454489589 774732907 11822418 153334188 424097959 426539055 508464477 876773488 61136581 232590176 256920520 905346562 703508241 926441620 451905415 721393931 294377834 353330973 526850845 870445615 658452642 800481371 710146961 889063121 684403771 950370923 870796996 981310258 981079643 988178443 571736987 623739461 241430903 435975453 2139622 575792702 90419006 181818088 375481986 888795171 379407261 548381365 710002279 900143099 903738958 933737588 573133360 795872572 425588786 871285652 430750232 904858426 674130678 968487805 43099987 225362042 23337054 990949633 844516932 935243763 105997040 911766498 128000299 184087355 853460296 880018980 28102447 526257331 614089469 663080394 126357643 591356408 67711886 700434797 82691922 616518408 55008936 503823048 639894545 841591281 144031203 416631656 532807247 857871619 294773146 825387669 783381182 967484960 646429267 677528690 885082992 895363989 813099726 984873695 599656076 951788401 755493078 923509753 333553667 466803344 581442769 908130965 669567774 701376940 136412034 238363342 60174626 398492137 437925234 595937359 701418966 979069463 178797399 808692852 456270628 835139446 941074829 987213858 909044223 975221227 126187553 911535618 587179070 850984762 733984633 777544093 205228425 856852479 202343312 915658872 540336572 645386910 972372826 999086813 250308997 561418875 831399788 940624369 726161502 851201985 112306419 860034110 444132711 843455859 782646159 831979768 773633481 912425468 193487287 335913071 994310982 998906033 976934935 982662879 436637736 690803851 589291073 947253196 824242992 858986859 104552704 703289980 444528650 462856574 205984542 372420486 662662313 795864766 406504825 907107829 321286532 366297512 359350772 903883142 891232559 894499266 560166975 609025702 167801926 781168422 228621812 793104637 974008772 999070607 47340082 770794333 66928142 465300755 303789048 901086088 744681262 961164497 19969823 640235069 934582147 942961916 438874341 733390768 722537907 879499102 288238482 731839886 770298030 803065953 376005016 559237536 447994258 616216481 57740902 507651988 384621277 628406199 362631275 810927875 156799835 253316458 75083856 100247191 16805131 561093956 509933982 664598902 611968618 918318672 830511933 857256853 483002555 848628115 178760256 594115946 431740810 741324889 628419557 981056098 699861483 743224942 625042464 903901551 999622434 999820352 343220618 587430089 844034750 872067810 668881115 708106687 684437684 694264434 640242031 966292841 572902807 762326771 773720644 894719827 31881112 683989324 545803934 630594634 706606787 967588165 701853741 745196565 954126770 957472922 741684565 782281522 57031609 363792444 596542867 824418546 872108214 908826099 592650493 735841618 980945472 987781967 591409628 785454284 100583463 540583232 129522030 392311720 860392087 863151777 700604889 952489729 259499962 682887395 49781331 455191790 303134765 850411010 827568253 956430192 245490553 534090905 382983536 925310905 587192553 773685408 40701720 65429332 921818112 931426660 445104985 891792497 936101209 976234235 673535130 934484009 572845797 624437819 975258929 989800421 37150717 482350167 672015045 759129562 547113320 861187605 84813209 210334805 786421290 945690163 111984216 969802142 997970896 999231872 9435750 44501428 740808103 761731051 660988466 736366968 967396785 997989607 55979136 501287247 168835417 179120115 3810457 216890225 509587893 638017198 198260034 270863581 915811235 947987908 732633465 921007398 433919620 458191994 528515242 982313651 476692119 671588827 434195085 898871961 727537267 984419602 376739548 609320208 838685921 882976194 693488511 922248398 988546907 995471892 233437219 573333928 325907608 551139444 442018614 515697059 380786272 387226670 418735916 541360568 214543636 889480812 429538038 628540445 948905593 985254195 32716955 802000380 957476551 981656747 801019271 956225055 25288024 533193798 820901187 871844127 407821434 850813441 494736115 993411381 316236563 474876552 958418898 969829817 852833851 880477144 725860377 773570425 943652939 954528785 968472278 979934297 859140405 983522729 710442419 717601039 604321809 793427017 626731671 676121360 643621649 743327011 215493692 607089534 44450847 757856271 750102531 886201724 27659890 713047092 979225493 992033233 506250196 659847448 673511328 874709131 509853581 717414972 268259295 868072968 874769372 889366813 592731599 625634698 996465110 997024356 777322642 814243638 569531520 815299888 742633019 974466897 472113823 743567337 732654034 865287521 206666537 659173249 78604235 623814642 234301259 989603626 549710559 942692223 261779436 542826251 65213691 679574584 890124028 997273685 875916034 995510321 942925319 963011585 631817030 719449139 950454009 954183592 200860832 789159620 832056182 882953929 362910018 528406959 33353918 79236077 130094015 533229666 593746015 892062897 122574877 200052317 750257500 799819797 42291354 893675660 272143579 469595745 608349303 941231016 101610564 752146791 31437979 88421236 442705083 533656375 530608235 924528584 112420530 858537672 766657040 810858537 322677322 864269872 780094685 843760620 711135970 848128477 570709050 672193989 834218418 938855137 912052938 962818955 184081582 375145613 126875294 765751960 796280703 814701511 911699297 971765193 797095860 872532186 462231559 553907661 262305797 887326082 676274426 921053238 800642532 857482152 52396276 446953374 458890537 517336562 15954916 465682591 492881027 707767091 479209935 643372305 159031701 936186648 691238678 974177318 91416644 580545124 366110217 429126445 3768515 863717701 320835497 601841638 555216969 577443759 284531397 295826526 197176113 455078443 409256367 924852642 977004015 993066488 12921337 521253728 840451438 938968524 887004238 971068500 314983309 634993621 600299653 767014403 50110506 574015160 693130828 798023145 867621199 893993243 884682588 905954198 43408299 98595088 87690406 675572769 887498266 889536356 257140527 684161292 200956357 714551385 375722305 559005087 950105939 964363930 182791850 801239194 51845730 978058481 314942109 550623727 593917479 954232585 404497802 622327917 582509259 900487575 208147482 730613872 283304149 997026768 739852605 945486014 450559401 670800302 5958001 310757844 146669070 530124821 180222538 241684889 480821184 515117404 790045334 803157854 186781695 668836226 864679413 884532906 29335714 940930540 477735752 493289385 335484796 550256809 423418443 997086654 100264320 830177345 324228230 912471610 489303035 622865943 976383488 984311605 893763170 961564512 230888876 879562672 537411908 795053860 783774988 918196876 742378929 994090412 532885635 544347082 384547600 412457759 236960672 492198358 879086836 942086057 619030948 703594433 233937031 929643988 913213365 938185912 635053716 635979389 844061965 933756287 766290610 861503738 657135651 796684575 644774048 827333612 500588575 826892391 755841929 964872319 81317762 760429373 339852491 698623927 613116677 907221091 485627471 573473444 415386081 596712368 828212366 906451801 250820991 392691386 794688989 924576020 298313123 588402110 647805225 661821621 724976007 733882988 421811176 731499035 416324250 928479609 485729425 790694454 105270456 546183876 162260510 784498826 289658161 526249249 336954628 782663812 535216032 719076247 214953480 734730100 418938630 826373641 743658413 970157427 682613200 922991314 200827901 261022111 239361832 833025897 693818126 767692058 605154556 622857685 947771171 967083633 341613787 948986481 783450034 830879682 840702860 894044475 809820129 868840472 188294028 908812421 753716418 826668374 380417115 753143870 922501611 925086044 653292183 690130429 658459674 986549170 685087411 916556823 856315373 964323735 910322553 986752440 702025332 976094440 355712 23640259 95490223 465407277 365244247 779993613 829989743 857891750 76751901 560533824 815921988 966957667 462418733 684763795 489412521 955360521 278298141 701186183 323883527 874858892 469735251 628297382 96992386 997864298 896840001 900243598 63780427 120949354 70828945 276044953 649053315 888698557 435027481 918925140 960094752 973970872 815358391 843996221 422468656 677468770 16358037 55746660 219119184 955391285 997859946 997988517 755847771 774922673 490777511 600729336 82984601 458127995 511134354 927140851 697252805 963813907 233600738 283615129 315992919 436068020 186854746 814823450 195702738 456828466 943061505 944470683 301590519 953423618 105565490 512988534 383066391 417239867 389558063 969593215 501155442 521322135 10649854 486530933 652777653 866844151 623097738 894634096 713549291 851340829 588201527 957548413 36606583 933061779 736133445 857879387 43558182 765899565 635232913 975988528 683285472 937732725 900433920 997694101 635440627 678109756 663510445 934251230 379901085 737879187 161918240 827365358 682163790 955492580 959524236 982905411 885693850 898482259 109530970 919668562 203924105 996366189 72673699 700694330 713136216 760733804 863862207 912475284 604198998 794404364 362254979 594212672 84249977 346277780 657737620 829424871 919622597 996154066 355939051 733226507 284185416 966205543 623575223 753493409 338155656 659374851 98562202 154413679 393250390 953416855 367575161 679004110 433336118 546089781 9261411 208522247 428166591 714152214 634688521 914530801 766088943 968718712 67007178 931724474 628704110 710828732 622944545 783113190 578792669 703567552 170831340 190308941 753738892 754812058 100116357 900068130 283392768 574300773 193306543 550919237 166215494 934444693 137578039 174350053 913061226 917905477 636338917 833551900 168443950 702133855 624754246 794990916 742201844 853509799 530518335 959409223 805664800 914473630 71631918 556976391 793661111 817809849 118064750 359401890 328912237 408475726 346882291 651165522 246361956 332939286 924827379 998709455 244169087 487444068 340871541 944201218 682254815 784789494 489234492 624794514 865227914 991130031 323042017 862365186 665996312 775751068 703315940 874821326 479583957 737290715 46784323 536506209 314242285 853265296 864519750 985837162 744786726 943815849 465090339 894671811 374348125 775971001 630304110 729553382 555634169 892547276 648195402 873375082 370334308 558264748 975508583 979487792 903698753 989199356 984525062 998714336 309995477 527759369 227781398 370820010 426671277 890220051 222276944 418334935 204754926 923154342 557803438 925941847 174836657 292339689 39256385 940023226 474870543 930053898 273171134 299649400 288181608 484356159 426614410 434293944 421843623 617871177 514237182 604052247 875061183 962800903 231498216 502361150 208366274 935482637 807967919 925906452 982232157 993345338 346899000 357253197 418442724 708277862 914398411 916073984 391529535 772265817 762409194 787897956 548716266 733286354 238691590 580853879 879934859 908350722 332974297 735183578 17884654 994618251 768800983 813315563 158106071 475958452 14300556 753321259 216119286 944209132 264113818 819342670 242464127 495400473 532634723 566522289 906032210 983459051 404402263 740312429 600167785 820182917 218486287 681293483 915395815 961602254 865409735 954925026 590895856 598362377 103366482 250804370 679252993 874739108 733370239 828784722 53979837 974059583 291688722 515514049 302650649 834388257 634578421 752035215 208132556 988112960 115185894 649097256 147200981 908612592 341584750 484382227 947878857 950574932 743223283 856078443 11287527 993781753 952597044 965662328 975938023 986138811 513394674 841956726 584396254 973027459 390839978 570212057 643497192 654662601 124759877 227039977 865180548 996726821 37201272 655885334 302512168 408153207 378259716 945386027 469832708 921958071 995781686 996657849 4945490 856268115 706784995 935567048 94305213 433770491 670890640 849733336 501264846 924084493 857368210 925497593 959313141 963174884 732057366 876700226 328552309 672433382 379734596 866990545 600461491 930481467 708852473 830811189 707478734 970181190 254119411 333034656 2075409 522417075 180238566 232361465 838961040 932523183 39122185 965261485 323836381 343282808 401660374 981526071 659380373 890198307 159282124 556352499 753560818 812454092 907528284 976495554 967775817 987114622 430641956 509006202 819071546 852840962 219326776 505947580 986160706 986865252 140741677 464428484 983458373 993360459 506856863 508428859 357047400 528158755 548610706 834715567 656063118 957746757 223934567 932035210 845067181 972851994 298662325 401701026 219082938 703340105 532385249 681006890 397162972 825154090 769276128 778598876 226453554 511404801 528351244 717755060 697720860 712634146 668203428 831527299 608900306 712731084 183613255 831602675 639184179 923942334 848032323 918765265 678530256 865646941 323427466 761877090 261421818 885799097 568556666 714158706 614379358 730287472 881260763 928069099 534458158 832710653 921939687 924158264 612361259 881537359 326678612 993022248 494558034 896676847 92060511 388548777 931722726 974166408 833297200 962520222 428736470 976537224 809809793 823156455 96079147 219392156 930279838 983427047 29683492 678191621 9024587 211817460 575609104 753560901 699924518 924055581 447227930 608293257 966410766 994743707 718645001 742307332 526794382 887549828 474579287 783315875 890422972 895455784 721198171 973061561 365226262 893029351 930678250 965542928 425123504 625357362 850941099 899435903 561907625 872525752 313788910 544946384 687348690 813993903 908033599 922309859 8157655 279853051 800511023 884636704 462398721 931260447 126777436 916079089 833058029 989071791 523643078 927289576 246105841 446702202 162314298 772883754 933078282 968445075 637820074 697345666 811353545 883068426 943747339 986318366 620586071 727915441 686290551 978723112 534752896 977635104 901195528 942898389 577915241 927677868 476117186 718552435 182632705 200716189 924137905 992200783 677007597 752910041 153662343 588967477 255937352 708078304 667873781 739832845 216313711 622606045 573447182 960913545 573465577 680363734 420135913 701320198 628489779 998955282 128123976 998624837 622407261 755543021 813315687 835760987 243791602 695087870 66865921 294483750 89778244 640206100 396241210 977788722 732532533 863295796 522182502 742309033 216733773 878866747 97324246 199062364 559523752 830722810 553799934 750274327 798651743 890958261 493708096 623707671 786963784 859950758 956929308 994101539 39417374 217447752 46893459 724154883 364130461 542675268 295295842 743986670 423203802 780763439 549551494 814557152 189445500 887625988 569187075 871746465 227903468 822541847 83333697 757521210 778519061 917541302 353760358 805210201 541421317 850651821 95139713 345862306 547701332 781461201 902139519 919005899 5426103 212188070 116420873 179318614 612140108 623032981 474763176 985792557 174241732 700489133 952018905 992390794 178116452 810179473 195313852 404702044 291040201 563340506 974488467 977732121 928907367 991821006 279159126 674766534 29982379 481144469 61933641 695740772 726892485 841719294 194549493 683915923 110139660 181557227 679138746 985349173 110485325 520918641 966978411 999180528 49482800 573129284 320213551 959018078 114327095 973581395 741549818 828942902 980663408 986472742 350497192 637611581 285516545 857929230 975664448 980290844 102181518 452108380 916761661 957245070 627205192 655573944 643837584 668368168 835617476 987768497 686052023 847820410 512272662 836038831 621202351 997433709 107975875 845535008 858605336 863123314 424891041 938678856 229567726 356249076 206860870 270453366 747215568 898271688 128214970 917373816 259523555 357978966 201845349 384187636 661318651 799000253 367878554 663700512 415229651 910146447 836573875 948708527 735606776 811966382 559940490 599654829 200827015 611225204 746312978 978029206 337142744 884946368 987472330 999026347 965092011 996992715 111925716 226791987 88508864 784882599 282285425 533484172 213560068 649173205 125859272 198635071 434286307 845316939 912875897 927278171 587476839 745493768 908761921 984462748 754921802 863041088 428288775 793885097 277073196 499232649 724908561 906417104 794057791 924779613 646143524 858441976 834897623 952077874 988578215 991743705 818383004 894648239 679744449 690783739 761354460 977175601 364263126 801222488 625579654 841226513 229515221 822990884 163268924 679108085 346547928 844390462 380727675 907148830 250231038 739707985 689190754 768102460 820525817 874890916 952438272 958214109 87764945 530974080 687026909 735804371 953081957 968568250 744490222 749715930 887664384 983621883 710377465 854583167 533064119 654824105 615154764 734138574 166114737 547668289 954821142 955984838 845193030 863175760 394550961 428504599 784316294 812197806 771493386 837166586 295910369 997410518 842088782 966426989 69546665 701329134 418878799 929829353 728313964 838197141 50262042 594750873 754904404 809870525 568699293 867572642 610008228 803856080 828288828 885870194 827905380 831365311 826743626 857356288 690124722 991082839 246374755 639291600 71905208 786626966 149386348 386709090 719247824 966851130 786485615 926010688 574136918 670533205 59553503 976481372 938721125 951178550 121910666 264085783 923914971 935509112 615799610 989304793 195938503 355741549 100541466 140589863 217637007 878624946 468062830 730137420 917177147 931204367 746294643 803079410 417299181 478846271 122534171 627456035 672549058 949266055 531630138 894923796 771726550 811855091 330450339 605036919 124554308 545807065 578652908 646550918 649642383 862677228 656433671 757938188 382316171 987927382 157332934 607922440 938575344 994474072 545641381 929688535 146577369 502315513 272449002 278841880 237802152 703586622 216929604 218610218 441452488 521775796 143655794 549755464 863282476 946004415 634750285 862710344 564479868 975506365 116101007 692060091 404811912 846702988 889256217 904565194 209853833 616549001 33223401 236844741 82505401 640114876 107073490 375823820 338108230 560910707 217417433 697078711 654817141 685312033 530921356 539443467 633669984 798630177 246862331 663122871 682040614 867684423 671636121 868955965 307699698 739314716 658492357 810475492 136856161 553763790 350701223 622918557 718717490 989352773 128630382 837610652 44171532 903963844 782872970 951851967 639745977 864951477 316640002 947770310 244878081 596100178 833205114 942100424 733618045 975253912 355017521 474124780 656358875 968368220 300671289 725794894 769191233 862690522 926907366 955226469 920076583 999122950 958695451 991253488 438756580 457496287 998820402 999652884 940727838 982065748 269363534 837788081 612131124 627705043 571247499 941464952 662920711 960655611 280381306 538329133 881317580 918165510 279314710 527522064 887122198 990179686 804530468 961056822 788279873 977189270 746475441 986495000 280248096 886661679 817699546 897113245 891117975 934103341 857960805 964787211 977339794 979120840 224454461 826103213 905431814 926862630 257064741 784601308 788661941 948397581 589603997 672432019 242345901 876546530 590618659 635857750 926697008 957089822 959579681 992776597 849006883 960723443 724894252 735702708 689503965 915129808 721738510 993039526 77056320 80098455 399007210 645806899 926933274 927696008 453837925 626085759 859984502 872361948 205833968 977470534 666500003 682575672 437444796 804218620 96665998 916569391 427970175 978762750 313032374 659252820 813007263 955820977 715666496 736840589 913678733 921126265 456354731 672339558 850735924 909437621 988052960 989665504 663317510 908634256 837834493 841820722 180463991 769018359 571742731 842330353 543071920 557818568 920719891 986113284 304048998 583967147 63003778 542355703 6196366 16610622 770309343 921171948 596026908 599364626 473474625 839543156 998941234 999285611 215169427 787823270 145991074 424712194 623667746 652820275 130381105 632399468 147910213 999617370 481028088 647959709 836885849 971120318 741014522 925906182 735316928 861215734 404587114 908885388 805169228 972104992 765013727 769517427 683591518 804020291 709856598 889482000 931495804 944075915 615466661 618661162 408445696 474319093 807744515 928474067 374238936 753726677 231268694 940901567 304387113 611452489 672382719 971488021 855738407 882960207 298588060 867107927 864597968 923494424 154701249 277780099 324386513 702134594 217629994 572874056 343201338 965124095 603217349 960323405 486682712 980483031 858468643 915824230 191686486 953755404 424857085 659125813 674689464 965836051 888877248 935124993 988894653 995750825 930821093 951130463 77463755 389121932 579486074 645390120 272558789 366555314 150472367 180253621 59964377 841563653 217234389 763557833 433105984 480293676 772266745 892646356 8894270 716837665 935022017 937941218 549133644 608415513 100059270 571912119 18507112 457195563 570821519 975481709 797689638 900139524 223566215 648345811 842853215 846332569 78554667 290040543 104485471 803937687 109549238 143458844 463352655 564497617 227749435 774979711 563395406 614806801 407920696 628262533 379744891 470511988 545579517 666290776 875605028 926194054 510958347 638930421 349542298 490163231 739771625 821132819 981265276 997898881 191022533 552352880 103246691 394612232 929312336 970377191 321918379 373933676 26626655 773552157 28339031 743145930 156586406 164589849 549060651 937189657 871569920 886916813 492173083 530478776 691182213 778730968 845923551 868941525 897727643 985263387 843685315 888706685 828084131 865097470 803679390 846877178 220407419 732111783 763584594 865279057 500828349 621751236 911804200 936215563 747833269 964060203 460658587 575860999 873362408 947888695 405035515 419057061 335535670 685968241 914251139 983219847 964341043 977358039 685040639 947368029 465733701 527522941 951741309 984896679 905536569 986005161 870899255 920371021 303112065 986151769 481128333 887994334 656250350 672005426 601966931 868861972 581714165 678832683 619718683 904788780 109282875 572565341 491413636 784843635 806856342 855293956 907486145 929627557 315313876 951857043 144785264 955063202 420548165 870420950 605830139 783940476 745622868 997727234 145662393 909950664 200775062 778948159 623024380 633073773 488817221 922841562 593417229 754427097 896201659 938893438 969022852 982059850 299332816 621794627 500698066 967991459 279031218 894059274 590466517 803221628 542052916 663139725 179219251 625053862 138308496 900847646 23813427 939738974 889117890 905521035 80445899 499942828 949177558 974029217 119603145 815796152 556884177 732634064 248061981 727286270 808967054 885644942 940839244 980910039 308115152 910915138 1368006 886156833 306339207 732327526 196994445 905596554 918437922 954331291 188320495 330802037 541373810 890125104 774098201 968716785 553249898 905362790 968065889 996933150 78168436 289757012 334497702 634897744 849116061 923381087 708022380 847966611 895275366 953211636 800281386 993554178 240348182 596075083 476272317 722242907 962019595 966114385 918283796 962484929 6772504 198674691 32852805 706236992 111298668 129674357 478006069 574535754 361925951 468145922 369512004 507115001 716340822 985944930 453071515 555435885 917628533 960092066 794840484 917281031 792657127 876163748 197938040 964912017 408574527 700915862 750316151 884413930 429403179 602026140 563747775 796540686 646023489 873177082 568302593 831618097 714317708 978313636 471016400 709162936 990016199 999050458 985808723 986121390 681504903 819032068 298030573 638155437 857860028 941300406 753288108 890563709 901608881 935937575 800899240 947255629 261601485 609566162 984255921 989919147 518924077 771241287 82077690 963939796 795927562 901146287 915971757 947490894 511714163 892893234 620661311 808908742 674626470 709369261 404231408 762242730 459326502 785038330 139452670 686495880 686390276 973792392 38077198 115296227 534809781 780811961 618275435 965813800 360905056 515259580 677277324 818046249 385781826 827455552 766355348 812254999 595097336 920992935 552766090 667010632 33476285 863918663 205447056 599966761 855785054 907486207 76893011 958008709 507486155 917919907 494232085 496783537 637715849 849179275 706318593 885773803 312093523 871901938 392551742 908819618 275407578 316194308 400102847 679859120 604656104 639241870 394541821 716370868 153486047 448121472 287962815 787532109 63301119 871959866 541827369 866818904 203813605 950946332 614295201 768363582 114902273 531071040 656939042 819887384 41750174 455840973 656977957 959267577 837625554 924186147 660128919 735073933 68300585 635105797 210587315 986179060 866130376 996334365 420922081 992255924 207962931 962172246 867409770 900284658 710169803 976343144 744805687 976288281 173669844 427700695 536974523 908544995 16603415 200597003 484354834 530643051 619091572 657815655 577293238 683182105 754184463 802138100 407140468 954961475 555757048 733481350 702318625 851216760 253406090 812565296 559368392 830495968 186669939 326369606 415668799 871987693 938220281 971955916 677616265 818312443 48589494 524230913 805224957 907516533 402931486 608950232 98327692 947548023 963825162 977225807 12391984 175678701 794536150 981184305 184489932 827166388 14823766 298131232 672996682 768887643 835333085 966468329 493729996 805690533 208535326 979368040 697267391 955104941 200318241 219947342 782774150 991996330 787521202 933691240 653860808 798427445 922971551 948591096 603513195 906912505 790120811 940857013 903908674 929778326 486493784 993628932 205411045 870218195 180573163 846472316 912872187 974099625 328484180 356416932 728276912 805453128 701064109 977122901 683486517 953744955 7127176 903797696 942717488 960462088 719795885 726129682 265690253 832263878 129924398 672826620 425892856 924113667 655624311 991967519 988333911 994479486 136734870 326215292 504961296 520311974 866686122 888274842 214410067 941782107 461422131 695899767 507738026 827378567 842666070 972670049 691717173 827351587 453943328 591297331 26644094 68870884 27288870 711442949 126315428 468083722 369428860 835386687 353274149 768223050 733226362 751900122 284293043 825625851 253917650 420678659 578239255 798007642 527828002 815934179 266610129 390898927 152675361 607207655 581434211 644104690 580668954 984260715 938918396 966266801 957782727 958798358 637695409 774670651 896538931 942391159 625228404 911365875 166899330 991852538 911611780 918629798 290437524 779609385 99776547 181538808 573793722 982948386 546696009 642488998 357565319 733054603 105657578 764933755 912759383 940050312 597666248 738001617 95086801 502001480 115445904 264423499 839566888 850515686 749759488 907763128 642126335 949225081 828238897 879751646 616671215 933381318 114886133 360125823 802962520 953164201 243972972 837974660 500661406 923745988 511250185 984713256 252777941 570378024 42398235 854390506 114946521 726536884 708329755 972079308 883462919 941192100 300070974 833932170 363218830 578166528 133812951 842156424 865294639 865465701 267892823 848380709 780686038 835139768 865432476 989261700 894801619 982335934 968515853 999332163 193329422 861861688 798287366 868471525 190081969 786369297 676116555 689113903 809028432 873637512 758259163 975946667 927448066 947396452 945107690 988159659 5456730 301742789 922213674 956742153 399353444 846787305 603613534 819497552 82643376 956138454 449571055 840862141 538252548 754117688 937971491 997673878 851242551 906539617 789070613 981600088 522251917 706800885 742477137 782185992 83640982 539918542 456061252 557915251 51191572 774693417 244996979 335153481 136333300 989627487 998608372 999321984 731369189 897099693 446565111 527222329 241102020 791204057 972518851 986551371 690593771 997836845 166063482 722566858 534873564 971596046 201997269 595350955 76404164 201027910 270702969 856229012 818813155 937578906 444431896 778543302 617887402 905826244 856418790 921448582 745818170 905666407 380638920 633221900 197304758 520630018 642645776 800263973 370037130 494584256 365790484 719322271 636398541 856407178 924699677 942371968 853559101 975539328 900541112 971350110 835099806 908895152 169668309 778338791 335198501 593465424 771084641 926048690 331435949 898600048 835263871 986758940 286717104 710046575 300693736 727693035 326661408 611460998 882931163 949850088 259551537 489744433 639970715 982956426 1734949 594878937 372873500 403733452 531627783 617771144 12241259 47846849 658778873 674289993 603931830 938523322 354716543 635479007 598384510 855349531 570310417 800295566 898760318 899408974 650243360 888472792 69662278 469736572 431635734 943079440 607328073 836553810 536902181 730210947 85957479 568976803 513120499 989908925 59334037 411353757 249457339 649678502 928701917 997102035 368458078 470226962 511079926 711038570 819420198 828912463 916483386 928880423 859002634 995976430 16414454 458136155 662513882 849605753 609430591 647308316 309181828 516005663 711065650 819543528 924268434 980255467 877383358 893582687 897936216 954457743 122490678 806470064 794496873 863176964 754666423 902741855 605107954 940952252 396378415 707241021 254206227 659694691 559899672 670170897 622694280 749568292 309748018 672391903 790233995 910101553 622765038 892495025 479930267 974532369 939698964 962705954 820141006 955492770 879767524 921246355 970514521 997808711 936969440 961251611 540861209 761866030 574818579 616847331 198765457 750781470 224471978 815381187 194664780 399597099 422926142 990319729 306915109 694515405 389620542 460977690 900022603 936806294 471807163 622153120 66790475 833868134 415950523 733003778 680885917 776414258 783361505 905678912 614808225 802952776 572111103 875116580 782086094 979374794 426860302 845607409 741077729 792897379 587343627 803360604 968792437 972780248 51693567 190937689 27940455 623184232 202041688 992342689 879896079 897050699 616457821 990985382 23393138 852767935 354982257 879573319 723614955 864412669 3325056 168246823 818839053 942713144 793985486 871132861 693216287 907281113 138961569 165884053 297272334 669479019 471887840 828877675 815300043 864530623 38054631 560520080 390432991 905573012 888772514 994921156 922520275 948128485 740170309 782452079 593984485 825866521 809178483 912918709 44822025 150132645 225768785 355041558 90186676 813372650 404618117 951961326 554663783 641012689 497989875 574771258 463263664 931176219 699163288 911875909 80317066 703582923 582661448 922283477 321099956 748520560 327737041 985689998 570403843 640513228 828109217 890976283 861941275 892667963 473383825 566098979 540562046 949354513 864656323 929600056 92947698 859398471 559916275 658163288 732453024 950296301 147379552 728406352 738624568 752610265 459737107 921646590 360202247 828335754 797336181 837896951 135121896 981778476 420646280 893861176 697277323 935927759 930299773 972898863 469262383 503990938 984001764 992284307 358474133 889949939 967325705 979331031 439898601 763781609 43794003 804910077 183254592 534455403 677204923 801585948 247897777 452731991 534466524 989056162 727324605 812538089 657995474 899252385 933101618 942824724 575704179 621287994 820020955 963179533 525295297 531327837 592461193 891042894 633902599 854927873 995850445 998896492 498496486 733829573 77535786 194294602 980893141 984806305 693366468 911575086 710205133 857680401 465697094 489069101 535622866 692894740 736665297 737955055 922754079 937390171 810807898 817072390 151295137 802260949 51571439 321865956 544699164 597567596 78567050 240477168 655062184 946737050 10510164 166934492 626372736 891899766 496632003 621442570 659885133 946126099 61981113 790903099 285805424 338923066 918359685 918904526 598482376 859115985 24972048 435564406 457894290 463190280 926014630 983543555 787774353 893650165 834893794 893140388 458608150 699832181 579232199 922288758 948704360 968381485 797675748 890365304 58847376 491207200 536941334 665295534 703500604 764732985 514468416 535028548 553025737 764143173 538116605 862296040 81453294 980799393 395702473 654301785 87127902 924109430 968903934 970959226 805020025 869737332 978698747 987960528 543567082 654493545 376523751 619499644 62894653 242947483 43015791 991192705 90859094 609544446 58007735 145478124 308015855 676416466 49769197 649503777 106368473 958173999 127787673 263502802 159861134 902260660 661908176 678123166 526612834 827566072 679758792 755840386 320331479 406443857 815642995 901523502 333547576 688829530 28144157 515970546 678569743 930976619 209728850 325303600 243313371 511807496 891975377 985616318 375767687 725128015 965756336 996054403 133324027 287966607 607922170 970967812 487695012 976728044 613392024 747638553 757021729 805495981 978010693 992159896 551568536 952729639 216421378 493859348 998940364 999880714 922413956 972170545 624007060 868643238 346076101 416122947 596971976 744989848 133414981 816238397 606902208 851861338 428928964 578712663 654947009 846893019 475462952 814287876 515262221 865565652 117281745 973908832 851140721 895971191 143324039 755362372 497809684 645362285 253425254 823435459 875545866 911133102 78838342 950702197 960088638 983112007 204883906 851732222 93404729 393999270 933503443 974949578 824589878 994988761 660888323 933550549 41309289 268463339 525686171 857466655 76338301 911105771 157668173 957782374 768445081 866698646 122121637 311449376 612267498 630422371 10276184 724095213 499245103 507305774 997599930 997739889 735020929 742109633 838315814 846415944 988325303 995878021 317540870 338965819 815611319 893327391 70807756 939443828 742089172 928433131 250064348 833838369 528942767 986607977 379619375 399502570 598178053 873386350 623417995 928214111 555252227 908966626 841019412 910616508 265314459 368839452 890305428 977231959 32581630 119905973 727138505 764083210 901726672 918634220 873589821 904368548 666092390 794423449 347720242 791160269 651632515 757410483 402547416 864299916 334045870 426799785 718231121 961619007 630266220 672163904 549091517 873468119 609744479 734752362 828969733 910290164 818075367 888020050 992426678 993186725 364405013 598248335 198229187 794632986 397876033 621444088 45505879 739466643 285452266 411184250 473566250 957405463 913186034 916961926 101395289 738948258 821400715 899805505 597035244 641400733 244677967 650748697 183379510 937280540 24100109 798118944 509649768 860211859 213184586 590170994 451012073 626661575 894183250 951767388 720742949 981420822 795880726 951647271 274379969 572633312 845036556 898998634 278157144 558673787 809081820 981995838 120506336 973181546 546475809 886349291 293898639 583801970 476322311 592040973 788571767 988135751 259409559 305382234 185322579 551011277 542900996 918431966 425007226 961207342 747856929 819213373 388676592 477924219 776555748 886779499 453525351 625473386 829961084 926495491 426228559 506536978 302423941 595105948 881645835 973518885 848514681 872592522 740204267 921154425 922874259 930192548 893205365 985848679 148696510 656853632 832716503 995499102 852413371 908377572 660151324 912138823 420947063 879777542 5262898 89084721 818803699 892780945 868557735 911418043 55284418 686829129 848705562 931746531 333222092 690240597 772666852 943173867 79859063 824988625 77222792 178708521 280522859 368831563 515862785 928468165 271187084 632614199 667923981 992129109 647933626 951845188 812551541 924352737 412404412 937727718 194594894 914921104 522281199 642547458 586662895 714696786 215828796 953527307 738602780 844002526 528823345 779447988 926004373 929675419 927672575 932347434 732088466 771204606 619993246 797647779 157476794 168007796 147022615 487335288 472715356 912469739 810044143 880049347 801165080 870058182 210221118 260459817 537443790 768551942 986997211 989021871 212458986 979757431 898146688 907968490 609392516 918705651 172274663 744513447 475913384 495505320 751362294 831029716 761693884 944857250 706224572 751780734 980788480 985572628 617741535 844778952 11546661 645655736 487837035 942361667 27970563 600731435 174007301 608641594 469512048 688482519 627702555 796633818 677486106 992874086 173654424 599032212 177822519 221603201 91588020 680495276 645718355 937637926 924197170 990039392 940192003 970407072 910092082 967502671 89756022 197334608 72463809 250296051 844440770 949969451 92345242 889204809 238702588 560091797 289341470 724355516 613902767 956133277 524776716 719378545 10713889 98514667 134009178 696122420 641182655 850951313 457083745 723111990 578715166 895716924 250117378 980283231 425684257 823153804 991851491 999337732 35719212 842072554 457094504 570274516 89704260 439381626 12042878 950980519 338385578 632417364 699488551 891195403 352366925 441036795 798084943 818289887 882333380 993104488 114426792 735792647 610558922 651157294 680532096 736170609 799408826 829794504 246987590 993557272 438874600 661684294 514878790 926881763 145367125 361299949 221081417 440042637 340313701 437179929 256028633 928051146 630072319 964162060 289892004 548222888 117857521 458822604 871662277 874841779 725133096 727016197 625419522 817244016 964032324 982383161 278192909 323076781 787911704 792722945 337198776 376396787 225691949 911938737 950366374 978202247 922832641 959977656 987748993 992800626 191171970 726991172 781090747 897505261 362232859 798754371 875984648 951408234 669562920 898573907 979705465 987497482 625663690 901744700 788071455 843239285 694100857 777158224 334138734 556836581 989770734 992054724 284736646 700689974 509361440 688807081 698061120 982042978 438246342 440581842 270571509 922630068 861787489 978055797 966621474 978998453 195850100 671356933 311645952 399939244 318507181 354554835 81025365 910734628 413505603 681428292 633194261 657299756 500909502 806385338 988195369 994816585 265814780 696473067 971977527 999297386 527691345 563392655 403891564 494417049 171468964 544464735 256712973 680701545 838148320 934874987 976217972 978089477 145781872 428948675 954031739 968598055 316321833 748467508 711357576 824591771 889300826 966087188 98475874 489921235 949719040 959838353 992297485 996975579 39556018 983956887 602892839 766107494 861080639 937243916 297940777 649632329 88763802 430614562 522600748 859112891 67518034 555363480 321205603 911489310 202589631 327425481 364398557 828514192 198557388 922000394 482058928 526228857 457316482 914815116 552986530 894057027 939277367 977782603 484402600 863628006 57571430 547561217 108388733 334373580 875765717 908132828 973033896 980415569 290073108 724431509 191541314 770848547 759035945 820889661 338487317 678081033 155547556 725450841 682803707 757353891 710589331 792300991 451373418 633031999 886134187 955820209 69633633 811732811 389621594 747449311 624736887 676818590 485745751 558667063 1389687 781620162 300005493 567294028 350019489 931432553 629694251 700317372 488520471 596133444 739033695 931033470 872609294 970318088 282340319 799306923 657058849 797728923 442974732 626242670 655138625 768549109 692056249 785713707 812818672 944054198 192387248 407366863 236943016 854991653 209561384 874315912 901439179 929007761 433658833 572782417 621831172 864080755 946049470 987376544 24522035 51715161 219953049 908438673 25258369 939058933 697970393 907179131 228871130 788311985 325377128 495669927 410668247 504678277 744738754 850017328 517801281 907036446 695871548 779836258 753699291 903726058 266970863 720974532 351998758 771038063 483376989 711455474 843012461 986703214 930442903 994249795 72300705 566881579 892149057 963138101 764231255 983294431 712216731 930658999 61886175 522861672 430444688 670065229 505810828 901470304 153339816 411774317 535012471 961241832 591099674 644363224 507110566 995164594 964540377 985556338 639409987 706193255 950872841 980623903 731460963 770941355 576411284 712852817 524432095 774944140 753549677 898251787 887599202 937546253 219552129 909855855 833728899 880882663 363718394 757060386 668728998 995800738 350686 291204192 485033482 822954668 402801682 943466502 241155528 935793754 828106979 920257681 682586458 821821393 867713793 985287094 637524204 822311832 914093674 971592330 817390022 818962369 541713479 622869945 461805094 976839351 638952058 646446877 706628119 811633559 260664575 266542763 545605248 865476271 246471222 431187854 302577195 510495794 659086347 723705581 508975432 584025721 712469725 757996924 41731933 772440512 586368209 966570269 684473860 823643310 167207685 623175986 99077972 925391426 34212954 651114027 891534833 992828569 983368155 989375003 409316611 570070938 152227421 322350943 241321754 987777575 252130070 462700541 297321937 773981625 932442179 980431561 103624300 835674220 548058759 829920551 974674920 990006194 550007723 882795668 804626576 902253554 396716732 641690281 559663643 692155630 647656298 929713283 915124166 997235422 485851915 906591563 185116641 963694510 627915621 630815521 522962891 623002199 22598037 498877354 923842109 962838791 39790734 467912635 193020145 550742194 973495552 987037642 477532070 719322357 909078074 991623610 905830268 989805538 306326348 416108744 360495895 502303659 719459874 863416586 841398687 932115387 526595009 574264275 23892239 788692989 661651801 876454502 406627694 482217608 954499051 960395389 533916042 935119891 927992971 986741986 779040139 831825675 76927906 95131259 49071207 933580904 549541059 641899628 677439236 807356552 922293798 970234591 430429266 669550620 976410535 987234419 382803744 517017316 526217380 897690585 6473309 457291514 295926334 933720527 589659531 959272275 734804497 901045154 51787615 91323609 618845232 968589203 816843936 992706041 250654382 519339827 352301014 927532752 29541024 845894359 591950491 829871572 311580969 600374846 945165089 965757648 270654258 712415004 348664248 735246900 182723816 769728842 41679697 407225742 172665040 272102018 352232037 886932713 152338692 756061333 186158288 806690713 412805129 765701742 807762515 838633380 609874927 705419190 858862921 999705480 663595382 697087300 343159223 378538020 984150795 999322630 619738594 941408140 749772514 820460239 363859149 551605668 777154575 975707089 242220073 480791453 547409920 918010803 42734630 513436996 904560530 989157500 963582928 993977818 674701238 967844840 429341087 980015551 839173279 871258746 325854118 514659920 426578047 485422191 871073873 935621777 471890973 567056524 436385996 855675214 623982035 652541710 622193319 735649253 671054275 805163571 325834118 826088385 844470127 923592892 170485397 599111732 501931045 993033419 528421922 964924551 776507045 858643130 503417605 861351628 529181131 685128107 732267779 900819849 309155461 628459431 8000697 399060599 150355204 331082799 14167361 75927958 727497323 850212033 358446921 617659180 504885154 982533958 839032658 935444602 284571716 997585668 903293134 951530406 643571679 844629859 646481113 673274063 644241646 690660179 463391787 497700651 926467670 995477936 978154674 985291364 84840675 548596660 669299981 713584400 977925165 980667394 150723525 243003413 325789033 708530856 691194160 699642076 559268433 602715778 874520787 988777430 487124581 680426382 820752112 866657869 26337211 932288225 223769965 537504487 148834858 947030778 800184575 942691058 976819403 997307033 256813760 769588076 355668723 363529446 53321814 211110114 860207063 998361451 346066446 373050251 564358705 665029373 515732561 527786532 648977643 925821217 616606704 805666183 142729626 883305281 502186111 539068520 375666706 961131941 146409829 507277731 312637123 893210449 348145145 660579009 239260219 305483797 330488009 676387900 724526821 986119107 210879365 903970376 135943349 335153334 557616655 724973241 524568895 836239547 292694030 324033817 241340832 517302049 645579249 922204237 719154200 810284586 272476125 353678841 20918345 812286197 594737292 823313743 66582426 797558537 262932585 984449385 916786173 959718448 603243776 854591943 601857098 813074424 990924746 994044268 520505487 906038702 498519922 899017059 568395578 776811552 319520284 838433374 678292810 969711221 476916521 796369664 747205855 871686134 301094744 328301463 495320230 587781278 988626353 999632864 421462657 489137526 147455200 601203099 134517156 372127838 561728439 976728897 15225454 642748499 312958997 512625407 370340302 666898356 655461403 872802017 726943837 992693836 122366615 492284257 566892443 793175995 374456666 995163424 203869738 973159790 986726417 998431231 828008448 891339935 800719349 824200986 956576483 968238792 17534556 143064424 524863963 676145448 236667244 607932682 8361411 875309942 20249450 312807566 210098048 938899752 219203612 450663831 91132406 869658382 881963746 996332203 260472565 992707660 881716889 881815243 176914359 781884541 510529822 999627367 391776792 469570181 166145429 271060672 767411885 950450509 198141035 924213969 465672836 778462075 63419071 882780326 313139987 935502634 259530790 629285711 34910782 455043949 236357681 830488411 771676862 848828519 507244761 539440937 655237339 683482949 413006075 741486633 466311672 763862726 948655658 996436317 144081786 431266470 96038773 779848937 783066412 909162014 530895781 622867039 69774134 881857186 372976098 680476172 348300403 933278597 573735871 671522453 39627836 262389406 180586070 946683792 377778437 925613849 996202083 999438184 228701498 930574924 138869374 856900314 750300481 775030108 488621010 853555391 911296022 982218539 333204205 924668599 803864405 848263835 215301599 454484843 678796978 836377052 245787062 775342103 44907638 237916751 179219270 808006011 294536650 572734530 788496688 908469990 290265537 996787383 504369400 839286723 672153771 816836453 392317973 656716931 486679095 675907480 732642254 808247230 3812386 808516780 604861916 683674951 426217373 730586209 495322005 811608564 11048768 479065057 375794800 931126974 56472676 90486008 192322094 854073513 213851757 719144394 838668159 857244135 610745226 895468416 789693801 914826929 234889300 619740353 598902817 877724518 84962041 541727260 845335869 923890165 134511035 727947604 476073996 723063011 902027268 942768402 162553499 974833373 998190412 998838430 114199877 991005967 29603314 931331210 56551207 489960422 964960972 994917859 226754749 398443888 443969695 616493233 816457881 956496286 367736719 756631683 968804074 985134409 192884761 347541580 681381157 780960998 13330299 227715013 500575295 603542800 949253041 968039916 237681817 921797969 109512849 788868246 124846233 649980537 160502681 234306102 297114685 641750898 559902885 821100330 784422303 860761107 308236448 668364584 491809062 815787660 629818912 677644721 936086844 946328266 787007276 887100282 320179025 985569426 675796359 815713424 765801897 978706200 402667694 414913461 928421289 937244371 529893497 770400556 692481634 758331243 465835321 472196666 118439685 385537431 1551721 922234325 572819062 724005215 605526070 686024280 388371531 629844696 872674816 997632700 531373991 756438052 773397888 906824867 868172893 922194356 665325583 806119965 688430350 733071072 685134617 917917602 245152669 378893727 410471983 964518319 695026740 804074927 914267512 988192043 207397158 720865174 290399516 443944454 449799004 526440080 71945010 463867518 576350812 638011305 503259192 686074752 603199427 712790314 286864017 742255692 103736851 807565728 103921260 506031571 803744857 868355377 716153611 838316747 802879258 998049031 592198042 656015105 360942145 841424460 515544192 998595748 841987266 946515693 116103469 902149244 242758182 377573210 342808145 992104359 116325986 328874329 436877988 656674017 746016223 837169834 171089233 658206074 423405591 686649435 509191686 552707598 445446988 538079598 318765898 395018399 349615029 973039535 592659817 676327803 936183140 976342629 475959642 723199337 966849550 987785380 699702717 752224341 673751504 807193020 560945479 829997619 791961853 815477449 48531483 798479669 446948939 713421242 735260118 841369736 385290517 832882949 814426469 866596931 864754027 913788873 17107301 420485429 587706680 614414637 523144929 955909537 109513794 686437700 620606590 787804296 678612023 697375176 546631270 972736505 162126875 746655312 276332005 979636616 137392400 342973344 864196434 992147516 40343835 81000525 991974488 997401719 959000205 962986694 803247791 966120274 609241222 806498312 241398181 550352102 394168267 964952328 467149132 638367517 896989938 950178767 575467852 706704683 107530582 405245329 661642367 728553715 672761335 926138965 876501910 923618787 689836892 718061116 541145807 606448969 867393759 960927426 637480906 904864350 123297556 740804789 682809128 722471499 250121411 836485553 132951522 382451658 499765933 921254329 445694984 913184977 222519113 437472023 81742528 434732526 98116231 255685106 404703031 967604093 739066194 822085766 59660195 943631715 888184748 939101986 96625390 137264930 192402177 285669107 723940772 963002524 999090379 999436090 637173203 713729292 852885843 985630700 242691872 307377799 949672109 996368399 666825798 841425846 901307239 920956280 134486744 149782061 87258575 585443864 298918380 631882628 628041882 737156956 44895428 588121207 89521115 444695529 871251181 934097995 212814896 411156139 665879520 891514436 76429976 211260000 919993769 965354873 109576865 520750304 996371799 997549805 650080564 741905996 398932024 725214907 199242346 939839403 651240951 740480329 529392001 733024353 561364855 851279647 134300117 781784086 225813835 607319604 986624621 994342195 373736806 803313638 369975116 805208210 830841386 981800113 405339354 422718433 300895309 748331117 395268585 804179727 62140322 904770782 2948363 519702398 117007829 330394481 902265845 994649273 385600112 839544956 166364111 406544202 153586977 398996864 678069131 678695961 883002551 940277041 736373037 761670708 699701031 898647693 858166443 873151083 67033562 743528559 471050172 534660799 516998 842833385 844673134 892362212 436947039 501924393 384494708 692115372 178692756 399618245 531031108 722880499 187302268 822933591 504601220 807346447 545052377 865404614 922165973 973554002 276530567 674807676 627450609 980314509 58926768 484112559 11188477 754448714 769440963 858217168 849249098 911069642 62785845 938264492 194090470 384010703 982835085 996340542 218110414 257438096 262124330 268921022 410024915 640252286 916842937 974634921 717402057 887536645 59290151 82478352 321007306 970235465 558462315 850257416 235179450 695193960 488124083 932720513 794841105 976594214 897987064 903628361 566158610 986475651 483655786 678058088 242686092 304978823 904466581 925048143 372829836 984008939 814847720 939765387 233741990 296272358 839878220 945752396 607999279 760288341 17245563 451754019 469392923 597495378 776976511 895305712 108891266 142820988 455977950 733714607 634697732 792187782 91648581 971472801 883304902 940316296 229493245 986284214 728207979 911264314 165398667 237518733 19650559 839991573 926244854 945520715 851600509 996120058 910257276 929605094 901791579 996604626 891423829 944721792 645575912 767312337 232973298 986164366 93593705 237438575 497947294 717695981 202670932 638148780 854755242 923128081 191052116 211036671 10211482 420666449 94881519 872022066 928927607 952268177 384445015 397890811 272007404 544540100 171600714 571154618 425434342 906020022 861945647 965635153 114818937 328736927 699575738 876570617 311502050 507095120 902877800 932258412 647269781 696475421 89577028 525837294 641501119 900405079 976939508 989392411 123721799 615520924 883343843 934997580 650075332 868459502 128353517 856257016 306473498 804733087 188684443 680158634 824514583 938188626 471197727 490096692 609631660 867716401 373825562 888556090 141467587 289403458 211355395 545707319 206482104 381400514 836481044 848627670 643438655 854434761 185856222 892052316 159707027 750373841 992002996 993203760 658715916 673767047 349881026 474085360 348668306 804060904 964004913 997219033 455872515 820775011 443042813 468505240 279596021 656990649 310529733 564668011 24034367 749554394 236049470 702174748 735498346 808042533 656269415 777070043 804728879 968772338 93086706 218065348 936928276 960617325 4845273 877774736 375908583 517982402 377937018 528712788 290726030 356189577 381502670 599685927 321829154 716500213 692689288 908434470 131826643 354366547 864139597 947355640 679289371 825656254 923730061 961148406 458506098 620318214 550606338 640690404 335870162 700955808 760182274 931014543 365411350 426266600 980059599 983503169 719288500 770765417 459893448 991912814 91010495 433525880 362152414 847222750 541797577 664837338 546627287 962214353 929688217 958601544 546457959 586550330 256638893 646669090 959400996 989775447 516238130 674448443 694693254 934171624 741475875 969074424 20814227 598560952 999421882 999894782 680196851 963949217 831718594 949806592 537035418 730626813 164952643 729017258 419544118 695793932 745779701 984156256 618037056 668088413 283684524 544010303 496228302 912543033 325302169 577690620 74230159 465236002 862341203 935768505 898248183 904890426 208534768 386018042 921620974 940102003 859878871 921033482 659644389 889498647 318487918 588687417 121276158 203401236 218227128 413931155 754442863 788293108 314506003 611610703 212452039 952164513 808977692 831229547 513989371 840922854 147922482 533168147 553186651 831430211 239288017 516202574 412985370 646144154 812522518 900762867 413929593 463797679 15418503 236858232 136774645 912190670 333667105 802019561 433543114 461701847 885010971 912276407 77648943 293157039 587896844 846943274 727937892 961879163 907820208 966109207 547076537 596319383 453055614 875051801 265968242 403703013 676106192 969874682 385583016 439928301 873692047 910989134 616666347 809946343 991928752 997346051 80956737 451031720 862472917 949325935 760235992 964399596 271923050 325665494 971135644 980360317 552746528 767697315 167030994 762621076 582385816 763606131 430623798 449845078 643352623 720855156 503449924 644779112 663477761 866276881 284679720 459936252 578248473 965918963 89850436 157822884 595948569 734912399 667170000 810109626 852532054 954565210 360923644 438064321 817636701 924008232 586223276 887044010 288848415 914984183 56889578 836918266 144692464 961171533 901326990 989299667 840020726 932016497 659115874 819448963 595119232 688140186 571600501 969642039 829418047 960282869 314646945 594561796 423925932 609434535 45054208 446656914 187563388 463399444 819426262 930303513 483723836 614960354 451027013 823943856 30868959 826547648 798089482 906905893 812170270 946758623 927881322 939841183 71881070 754677314 519415462 873562393 675481935 723426768 237730258 604905169 536483466 963718249 344304220 561571112 118517754 203725103 496368084 963078778 165368633 534510580 818320971 932163578 176260030 415515445 194591988 291096017 757240307 952146993 86553810 183639857 509113210 623539287 685410489 744442410 455646508 915631028 651040022 660027298 132907243 273950580 297816980 857781156 61035851 394235543 453849706 894721655 29416434 533473783 95214180 617381854 972588250 984347473 192996485 703854680 735319037 825897043 853869710 950635039 542402604 837461561 337930756 569804298 536554618 686604234 990825101 994577910 9262300 220683962 130385948 833584148 122147609 379460294 382467539 965716869 441944790 854293417 358871510 954650920 437451378 573636406 636400226 946014702 414737905 836745938 623868648 815168254 380074867 415285247 958710882 989536414 254199935 636019692 299535002 299613941 456211685 708666644 652226006 909516743 719015112 872676099 612451089 994961512 653846017 746764694 799767505 843835796 85765304 354133320 536544098 927522377 746229163 976849638 778094791 793743729 235221596 501369309 511244520 847748681 905187883 935707408 457852943 987626724 112231623 744013846 537464308 814007154 990797954 991146589 841597583 997065722 929275074 948031079 422794084 980616456 853152685 935231910 783218772 956982717 586105455 589760089 283081532 528967263 755189161 777712635 58320283 486235063 520049636 685573558 243956399 932848118 824437112 930147466 158415614 987607178 328679013 972304268 635095173 791585222 262705488 899663011 343209016 489017147 644982004 720675571 837366497 997001581 7674437 250123953 441544843 963660900 327491149 891888016 776219003 789494896 737209135 766683733 905723854 914357979 801743347 856265667 39514741 809236631 998322674 998566609 471760488 840732282 957960234 973794197 341639223 793943506 603192497 866283604 27214236 181584767 210609403 509021309 477459953 592971516 898269232 981428081 540229412 757260461 989902449 998736090 358388415 524171306 204178512 830218825 972980672 980345446 407644075 612100028 320221908 965641465 102703151 178470101 66730026 114081726 621904127 792263899 35823273 46041991 584362156 694771375 984439085 992229462 806729995 845838959 97859568 318213621 112226725 614226818 25396809 621917247 849359195 972928209 194453693 545544070 65637731 708791906 749006334 791149421 672966454 711768421 774722788 791285084 83556690 202582579 559168385 848829916 140411348 446498229 465170878 531148930 257750909 547843547 619952913 647768832 900948289 934616983 531979583 598078364 703318687 773381033 792817890 974139366 844398344 973661815 229711654 720234993 499442464 693333357 115002729 131535350 354783344 744890212 364494689 688840072 728231664 917765090 750677061 977758769 277445862 646562356 870590355 985927133 543854080 642312799 885024723 980768941 542450661 902062502 952935108 969162306 750591318 896129936 748552902 877829840 388950697 488663501 171274346 726223423 506597952 859756951 143086786 863009166 930255768 967419832 25674093 30192249 139334175 705653329 226821191 930351240 129858227 873968103 22715653 82341726 282805681 555441541 418169532 484201863 179364931 439643444 929697057 930031704 524915383 883655436 675376862 862349332 793515614 835305304 79174233 812335043 876607831 972524436 326342902 934837244 683209809 896169646 668882927 839908071 448540509 703911413 782649257 869996912 210742140 314924901 482024153 702342875 591492740 600542933 617626421 710614137 231320509 341794180 372516605 820364069 61819711 213058042 630612287 809448429 493134437 936553910 674681476 925353980 53315452 149609171 914865200 960911060 576909389 843226979 534843970 831831246 717328496 945997692 963689539 990441880 119533632 345767601 784108734 798325833 405997839 629259779 636060742 826768283 442337379 751662909 804537004 832727268 351433848 439938359 802486656 963125655 917728378 971001856 308202136 661307693 19097061 209017968 763581483 795388678 296022265 931699022 735579096 812969865 747702466 816180816 48613518 153650161 631731046 872935369 949935569 990051387 96006034 970294727 777695057 966196536 793329489 878934992 751595751 873811542 860259604 959656993 454489150 694756307 595314687 740953783 666901838 872537493 464712889 599739651 428556180 867031301 528219837 659761805 343169634 806513829 590700597 711262426 152276197 804739696 669807919 935081318 130979447 225761122 101710065 299188916 815997699 907414503 594515493 694125814 577335989 779416780 287468055 492162439 947367022 995539289 762979413 958274036 786973719 791888541 554192992 794403698 957287346 974927017 875707336 952176609 762253826 986822335 968781282 993061854 400257852 771619242 516482867 633508392 160401092 822687481 70278166 362516111 678377998 703191492 579541140 839543522 437088904 526093850 283174525 997214127 927118442 972709657 932545781 977494729 936642631 986589614 93602961 336325110 789328230 889848054 113420356 960231277 758167178 934655646 854717075 956070604 977128552 994009262 660215489 995864003 941070274 951773202 979117840 982734820 7484272 517544579 968290040 994552763 143218057 381885991 494292185 638399130 147238664 736374474 107838336 590644333 399847185 709641020 524639403 596659357 789226539 926419922 645687606 854925812 315995066 624436433 89906662 509142659 807205336 932843900 683388739 795304866 644695282 992859334 42131027 586250575 26280008 112292307 48486926 72602827 961251779 977786185 169740231 541344323 839767780 884886658 158989463 770265515 120506930 676949077 242326400 248939490 264615437 667170216 108396328 389277058 716187134 961131534 729310890 933853373 626710626 846345556 124667821 885666963 903910764 940169888 533142827 838418252 960968270 985460628 595069374 826317225 549841114 843948602 480445310 915814451 976958668 980445580 887601488 972763972 719280948 737402272 514586279 784549364 601853501 876134266 778414827 872067402 712253675 773333850 58778609 189485996 280481480 933822977 199653738 885541126 800212187 912155254 757064664 875137838 657536104 769940484 828133939 968060210 615616699 756725021 998046244 999964181 485125073 643141445 765737480 842337339 543150523 741478387 839922545 879155271 450747294 499929639 991672129 998047582 472666185 526880013 823948557 908558708 806910098 817237226 658137803 868541718 36656698 498103153 199329651 555718166 895093295 920256592 763306614 849686507 45116598 360156993 166044942 568827588 943622655 976865185 460954011 667507589 573457937 915926490 156903867 606712059 681919696 935657691 718677509 972704678 422859488 592883953 884201976 903968738 366472557 969550903 872228174 890794756 254435867 781353826 504448500 729819930 36977816 157588920 702361956 988391740 538318947 783993659 345492777 992967125 45263101 364236635 145607305 413110600 942243360 983754819 130466816 243741907 958726858 992045444 940804562 964941727 787113598 924937959 7709765 511482528 591927850 918499000 224667434 549970683 333054803 350705571 525984709 996716722 700124811 929531042 435112619 636021779 145839074 445436430 917056800 979455981 139006247 815228780 106595865 195262346 341151468 345131073 917458644 932101641 283202283 479555102 820809609 957565533 142374333 833124309 566734212 601163859 534179977 863897131 410392440 820913603 867816620 911933911 681697152 944844165 613805470 660210972 375382742 717252121 546855961 900209400 507650698 676133585 960146940 986383589 519565254 679773535 86524624 494128154 197922525 540515073 74108431 563424165 402562666 719295639 569739293 675604279 659900297 872975688 246564479 850913534 897651579 916181921 170081657 910505491 694737852 886145074 198364141 592004968 308514678 769722727 504506799 761290801 708371922 925730196 320118007 774581488 738555419 861123722 789981877 894328857 490890788 666235940 685432764 918244352 421544224 744200111 760232054 847346448 687269337 740551967 346577340 364559606 581223419 630392555 253847572 749050264 907390447 929233745 695117098 712315308 712477100 807693732 978841359 987791896 65137984 551685454 600020310 923696952 793425611 814171854 693979668 782400499 469788404 564834832 197747296 567969009 256249286 933879270 591567864 922234523 685197250 856189345 252114923 517346476 66044288 825736976 293300128 312650773 406842854 420650820 557478201 755331956 781788801 867026007 734580876 842452196 748741537 805673964 34610603 867856776 140273823 299875490 427401243 779225389 879448944 923956579 472880603 534665214 469267276 475717480 473539657 756228902 311021645 437273049 519906304 797880974 983932136 994258741 831404331 906985151 31202581 414567563 69186605 658401038 618061102 906110157 841264636 985843464 314624816 529797907 742475284 753855167 892377378 898598564 113508585 566281721 564641877 933499697 119396338 725105262 318961674 693113171 664432441 711900888 461040560 746260537 85192878 670308066 542863795 927296116 568114423 574494872 485235127 804187929 479627384 755925896 334073360 993659949 419884118 752562632 313760553 731581041 677167458 992077594 907773702 939972445 175698986 706723933 132435393 957149761 313664544 781162346 206330116 950909943 10753692 659026513 266694827 702182973 454441874 656404714 603369214 810279625 698533561 914488576 628473303 946166676 996236839 997254937 125741717 315233414 360777219 849029663 681167716 995060347 390360126 808258388 856362206 977367900 272529120 397025768 750293703 873073623 218532724 528834961 651058753 747528321 920964319 965911332 566314619 865708621 810065084 846381741 375617515 499845725 830468676 871191312 822581171 831824940 622023166 649600203 299441456 609546360 794780948 992545102 794305322 917995579 287201960 921510681 666161201 886202220 221082068 727909455 465949680 949157247 369242302 424527610 657233307 808500386 746074269 768605702 516345590 750699775 1929395 384432374 314251017 621550798 971510208 979799269 118169326 952096131 327266168 624742007 340310623 352329535 175188903 744271134 441093594 883219728 640589179 856697452 390016209 923472874 199137269 605060420 643888428 741714480 347178590 645794812 70608622 344949218 853635583 910517196 196419510 682668594 624928813 896325632 984622153 996506578 548545043 842959927 842710490 984846380 758390120 922818991 931303872 988164403 363479697 438962688 86471469 642287469 798125025 888071973 115815793 387064690 504399842 711236599 571673831 823120035 943475175 951845784 787023191 841787718 197167910 903951577 591918399 850714741 704292040 711387440 917089793 944311696 132866302 400181563 688210935 930894612 740357870 993920722 186742805 584686008 164481665 760458593 609504213 945453331 765128087 772439196 215991097 347992045 587066028 890897145 932360976 993831509 562550130 964708797 410823506 683071876 774293642 781478632 408881642 686567420 857659 459774866 763635301 802691940 867476031 936388580 957443224 981409275 192434437 353222503 883114038 968093502 517645518 614802185 719908951 814255140 560133712 703268506 456276547 748257347 650371912 983864023 773573704 880106766 857832302 924600517 314097620 398607262 437375642 578066776 718464108 885026449 380278059 809954059 201198631 400103918 331514405 903613289 929021923 987148325 635434970 864399753 440457110 596226882 410821191 995625941 374564461 605199773 123318930 230004814 62597280 871248545 463533546 868760128 502243971 888326583 635903669 826971984 39511927 415153927 817324684 927027884 350344343 780978588 77533815 427539569 697856296 932258451 557533959 815147699 546828038 907017880 783490336 974200562 21625342 435864680 877435790 940208402 89388811 412784216 814290537 961040306 876744373 969758958 577748043 619706029 811610053 880299378 271327802 573619268 555414937 969790434 895511917 926540427 767555867 932621200 393583428 871901628 444427332 714654829 538319529 920933464 909438692 924489517 438532403 868245925 699695413 802772645 440965096 844402759 654729114 763712757 457997342 748686820 311399451 599358105 779771573 902924757 901735870 902379606 174686677 306311414 368096618 899920791 921290868 999291799 161784020 534963159 400615322 519287659 857473454 872561299 164334031 740765717 951437342 999914361 308483628 615221041 246419392 385932332 246237774 978051693 428687607 482316659 102988292 981129905 411436361 638057870 469174105 880698945 945083547 957740843 513534869 891103311 18087027 69374690 188213866 470618052 594338730 965956818 217743628 656999796 968973500 995187245 449828983 647091751 745640019 762271478 113736171 142178391 18840749 572806889 594719036 858180549 269273693 665121669 299560752 814364366 231361507 998897731 20587089 23885673 731108422 742499601 47048842 818552861 425538844 428779805 759310173 953248526 520641457 909879167 875393563 917751833 803329547 960276947 956304818 976454492 563962608 654762377 716715539 859125966 955922631 993666126 56605939 459992443 289320162 963178333 562011816 618452165 658521610 967574353 616750497 837685545 903974413 939460529 404233475 917939368 526600413 899623773 919169662 974918218 460282975 983532058 254177344 641734355 406688487 769388974 482765905 702050624 249794573 784326505 107653995 795107995 399625672 961588299 867327808 868521201 788330938 837983681 215220122 824175564 513579662 972728406 530606049 553436902 646821286 842151005 280484256 938138527 929375951 978765826 128805276 436452494 793173272 885417579 731243383 766893099 944942752 962685117 526347333 710459994 672427886 966482184 93219978 345812173 701664533 704684425 740729602 772975269 839608660 987736854 740597385 833936549 73930906 771225128 453785718 614200929 43816271 720473409 532171825 892810635 365526564 598497445 986570854 998494774 169447677 568635958 315782078 938322472 132428847 317334497 614288370 967490284 338352913 674060847 554808297 961952772 511373225 993837191 266769385 906574011 320615300 377731983 191662138 770143879 63703530 542408432 215224680 243296060 440500430 992426711 598942311 693679134 558676955 995808312 585862075 999231518 617978093 771046686 210066901 533092060 528364 664125474 783209048 864890584 287616032 635996021 44007483 793735501 529594946 951496473 398436571 981288657 53459417 634606868 285375438 395235157 194441419 781322484 353270835 826273402 619930578 964885926 686551058 796075948 627964213 736983067 641484754 845727851 527848304 731165638 207107195 379852107 274559177 473740381 291447222 958173703 191341853 606478181 189951120 733254323 768486165 821185571 666758156 698867068 971609770 985243912 549623515 911117267 502476177 852798234 199131539 986101856 823930772 961921807 533089249 786881672 491700826 746787039 522320933 575806623 789669264 980289778 387395 277558909 236959277 367132398 465472095 793082812 371188785 885009041 157009962 582776250 512636590 905943803 280054842 433864832 942499243 958066839 3760993 269853509 787894451 879374404 475459326 518537712 543968461 794645617 125243084 476633934 497916683 969120183 749235536 772869165 563060165 789785847 968687678 969630752 972051288 983181119 648531786 722537587 662491536 941378568 471166809 572730196 179980658 558541225 195105825 896256188 855970867 867736673 654185188 974744708 670529058 947920896 81770029 181022354 802941248 877113296 11416986 569653832 482208702 693285943 420846896 692563410 443019275 866901622 918692856 936406714 394818759 544583246 791538338 898450613 840999577 943852962 578459946 771085736 762595302 921807704 724206421 946785380 434782923 582940488 294410086 686244539 957005120 966967333 25375028 254572737 430602758 750763812 402760215 702341267 773801058 827566937 93701042 769907580 430761298 584368475 347284690 981281604 843316822 902480389 698483938 888605550 950713128 976077883 140493463 770676472 879594113 995415618 965922891 973491836 319223373 405654867 15261149 159420867 53885470 506049904 979361732 993751268 279896087 298316668 500361473 656105240 746698306 824621423 180420740 905617328 440644977 592823272 841595258 888381984 359214221 796772031 76221068 611374888 830043193 974553375 133640704 501555072 556981147 572643974 962148235 975216521 113497729 609970391 755626770 965451137 549207056 678280205 217310740 728152034 958991924 977932024 753301535 993607125 792416862 979487245 351942337 814258237 779851845 984238414 306726853 640407452 516288204 907002472 519106615 606768795 293579834 702514626 298913193 903592663 441234043 529749832 83691268 878270471 404442127 412308072 227930300 679618406 646177782 720874089 610087622 807994751 128776786 433694610 729409026 849700417 78707652 618003987 499343670 547224826 391348080 515016762 401767345 525732332 636036435 688333981 83427814 161016313 952641487 978621208 726604766 922264893 594074723 752300106 845712103 957192835 776612782 857378567 103491729 145603312 990161970 995877665 971708379 983399073 667643430 898781661 423781211 979942872 440497536 725229784 832389564 957800671 536581500 854140111 179907778 300582878 583442317 966719378 494352439 985158712 951570903 953217886 627349017 811083993 926153186 980130777 726155668 852349194 145757879 721967141 80475354 822514586 214961240 554851847 871366087 884453714 713233976 737778537 535845379 821961290 325700434 566263089 179509311 332902281 851933054 939331814 859313505 958377276 862418110 986328551 481705906 697046278 389689887 413388747 268058538 848475047 998952668 999161501 14493612 154903235 644565373 997181316 953339954 970798618 46628462 602977228 244944083 343640647 233103220 952190161 600367200 824096639 331307856 441201604 725841170 974143816 473931520 667651379 515555091 981467338 615054471 632879544 768674741 837739325 462162234 467468892 960213043 979930369 959767234 998466327 353076141 803937776 422666277 973250138 456766085 543716026 207114761 554495334 200234665 270621623 187878615 540159921 135794583 701749063 271380257 932140152 301384153 489245063 461465286 552455674 517299576 944472482 671373795 765044228 970858388 989813692 590981774 696173882 427490694 614416061 262816873 534358758 887824551 931581063 688445128 768801731 594297846 992466208 900667778 962924446 784970828 978957229 784643808 887995652 929598413 971562916 964724029 998840100 277257371 848157596 266380896 588277700 59493282 997747160 801258272 980535478 484431213 596039173 953316942 981508043 652869462 694168202 525223704 814501753 655378876 914517568 425773885 695589863 605674089 860966677 818638060 858697852 664624017 979027561 451062317 527281696 956223357 990391473 628524557 667116723 278997209 617935507 617563205 670879736 231826385 445277296 643339447 860530005 612072835 745942512 121122960 244975913 141152190 406032175 959405855 999352342 12279431 52806800 407059510 675057759 49491062 602055101 30643659 448056606 525831691 806262444 21232279 406671479 984539606 993272967 623445884 776761512 256537302 300490113 266598078 709090371 790261549 828896378 830525537 897145651 366254951 932743743 784754154 891577718 411060443 770499762 26591775 542450792 248011542 798483565 302283309 594585743 760289281 882773786 228454970 999290704 817329714 937801798 625260918 675088065 146898903 246540107 213506932 305094991 460911061 935351966 56055618 732813074 423361915 791461679 767438339 880393462 285855081 605347174 166618027 422384451 942966969 992753234 94691042 867462552 913763195 996108051 923811315 934497820 228002557 981091095 166363085 857285437 691365928 915481488 44363907 227024464 587267381 669904808 167876279 758234316 778308119 784852003 94056789 515007870 436644991 830967968 751767578 898777584 620980766 691480776 931515927 993038031 900356388 964518355 507146123 712111498 673912987 695949773 766935360 784507445 374799079 925591422 988294425 999103947 64146788 454070615 370252653 464299192 804303683 937585784 188938816 264546996 906381644 971824656 585098910 760772005 82892569 111086959 663818341 706357731 916571292 916843971 109976751 668544077 977997886 992018265 779272349 796102204 495062780 542943598 857226363 875711294 968242967 993553212 223796689 659816607 282641021 812189825 252636347 586161893 66126212 252632360 243800360 360048093 973238808 995553499 653885465 864797173 789051786 983037031 739533769 766329697 753956752 833036712 222560098 229396495 611645657 916781078 129110174 366518692 550303273 567575563 497106766 533902544 197590994 241649199 518745 578640627 577308655 697783421 414231067 417728438 224383606 942385851 818044143 910164994 36344909 275476970 812863753 973145216 704077246 838706882 729334482 782416290 532434976 541996293 547192006 604551835 234426170 449819067 883178232 972715024 993349622 997095528 948700001 976270724 641829189 862724853 860351782 867405536 545303973 850828428 430932090 539955946 148046018 205227699 218279440 834021504 525757203 723110335 6313149 445053835 125995894 852987045 530004659 942459982 190897517 238404524 358491227 565180269 552101447 747108363 300940857 340488740 637348176 794035457 55272168 491428254 915418583 969659148 232460658 860367625 771469107 961102722 846853825 867356947 977687021 987020386 70902991 131611507 339805260 924444849 970469344 994755815 732463750 835555861 602513303 960189746 888291968 960170137 552351107 658613224 7628123 478418532 77115252 759549573 923764496 934530522 736696674 817463256 238007813 632556869 854533616 874364866 889895346 907100770 514203912 978462668 316144672 674290603 829190315 874657247 236163624 873219795 701816013 918267200 81579159 965020132 479983773 781881349 760244019 773753524 881459461 932149435 647726776 711345636 965925482 981052709 383115743 984828920 920661944 938493759 921074681 922279055 114085379 885724007 923762650 987170431 58277769 475139956 347281267 497101276 959212657 978037579 612424010 984544874 337093910 778971118 873035875 956297672 113877543 149557274 752897604 896583316 961697350 987916015 973576217 988516394 736187984 762795130 433127401 634180065 532012765 676805071 293837291 450828185 50523128 946813920 739581563 905722856 97875665 393126911 813964254 946315329 921009493 930229624 935627421 955347412 774518670 815389054 887776780 936062840 719537892 817854186 702816503 826780040 899700664 956603329 176638143 249281153 522000621 748805942 482156773 804484867 373626111 706034387 644540640 728529645 44881456 740822312 604166271 832023311 337547219 367171493 904110715 926126737 13667771 451049752 191349303 663388615 828330593 944196753 765916980 900219577 469233351 578554739 270664264 696316256 631852966 793373647 381415511 836830466 157079438 684164119 582350008 795587242 208365426 722305279 778218335 806996936 358524119 898414237 162466294 842061423 82000070 487518381 239799996 950399163 711505980 747255082 542153472 927845254 344026157 595140503 552999670 809393424 707819265 714782127 93611408 264074874 431472327 842521439 261714837 640651421 494783184 910974646 161488529 989340524 73854256 441768071 407865444 815649991 757929911 918455654 842904181 968487968 259380570 477064850 629771537 762645607 960118711 999732233 238911265 479953106 99167507 830388117 972797561 991164436 263928665 656731000 888492322 954833924 163672785 750778997 782195088 921446979 48011259 873783482 906401141 958797689 593275076 595863862 485820516 921852941 948241850 955349110 91229650 904781121 140612650 947633226 590491867 609379023 912729072 964386028 772763295 796157928 203951659 412422134 188121478 624779325 455750203 921437849 158147031 206037702 176167686 886837455 366655799 716114537 111376412 975551846 496952021 567660587 155462910 580822936 584883216 621438318 582919267 857953916 391941937 865430718 485821034 497600887 850468157 855753730 519612995 784391562 602889007 693396409 597009967 957906989 769453871 832621736 594923785 999531264 200461602 476746477 42412206 930504598 708156789 766630808 952216500 953976898 881313110 954133531 243637481 860035151 574772783 732236061 836003652 900922660 177204346 925903123 362999646 385284159 931021489 946792269 22362231 391651308 523014043 912876999 62779964 607204774 778745832 921323372 471340502 491890973 888752465 957364479 958928093 979905242 807303439 974464716 396947676 618299772 21568673 375621071 218131561 636181427 59401064 165379204 139159292 709416250 986468895 988168136 876011825 940231148 479601085 534426291 734126776 924952535 799443991 940015555 219564660 819827704 429588149 480336247 121799924 508447889 419943486 429573914 260478947 947817843 420999293 949287526 221631517 605803065 277044062 930507013 612409394 614317013 202448236 759702648 53706744 95795468 627287672 657360410 567901613 786346852 435694720 763011430 486558326 954399574 462690408 487745892 130821410 422604028 19309105 531536208 130430102 345503157 415671544 813118605 52617892 804283300 187836313 667144393 648205345 740767315 110534778 337412621 295199828 759422282 378240689 878607719 520146570 882159437 135448198 792357080 639136037 841647174 602359161 938339784 456047324 969278660 974250510 990046610 138513689 421281579 383570429 625434372 280929229 716062651 54986358 239394528 570251320 960435995 262285585 369595773 686107259 837180876 303542083 724177880 232151994 342759768 820474162 909435731 475136831 483742806 188114844 206493445 113720563 709387431 127639245 887707180 699299740 884166658 620017603 830158958 748181314 966742078 498422183 838380638 939190445 976890565 176320085 634121721 985447412 996415020 405113619 475403324 627402371 724022871 804332608 918163258 545406162 757137015 930048246 943495464 558509558 685012671 127565479 448975432 176508782 639730598 663678496 951342253 387391212 840379370 630403082 948237529 436734295 687091498 873284931 877390984 184355029 690460754 730700873 752639224 381609362 424549137 731958855 776523616 590863792 849517844 290671997 858580828 611112452 970479387 495657789 809366979 746849455 999444322 340294306 640752010 11172391 162657296 383362873 643819154 180482188 717787815 154396539 334818061 149189699 615122173 102281749 744472797 58090894 488995170 912246622 931443183 654019375 898141251 60790988 250126258 613250950 649415275 535549335 654524473 348134618 909182781 616086834 994520144 257536194 872922051 561796693 623686542 179205484 313028796 994518519 995200454 685160769 909245694 249273604 505894952 193159247 484187937 468147122 499177252 989895365 998354018 426102260 515474095 278374064 754535336 742716482 936358767 501863281 729671048 526217771 799437131 44529927 737922644 685502984 759157500 376611155 586631265 533236150 649764782 20647711 640493371 711351830 819816781 403974511 895898268 502738139 708237811 515580758 571910738 980966238 986096971 433760942 454092670 139687651 983910613 611757045 776190949 455259193 905021755 663778183 814239330 998082707 998991284 47350849 323603971 792516022 919285516 983523216 986454872 941296878 978591713 505325898 911905658 411862277 734701631 256946908 825105604 508867055 997606662 961039202 976567644 181721828 806236367 653200704 919378457 224301353 724871123 786934647 934225805 466838713 518269643 776760468 878161430 629742941 825003365 324823078 568326968 703248535 803103611 775918605 851855333 801758103 911829029 308330867 815396258 215340872 319789126 463131366 480845605 228066912 932474201 671488062 862791396 178397153 189907195 279428371 418146050 525934019 629374863 600597151 742051349 267864302 998990460 102147211 428971242 135996774 578202665 677756389 704060116 784833599 978958360 224841783 814298562 147157637 707308721 720484285 836505034 211799380 635847096 947525062 972434404 799233420 986439421 543874193 916174512 433735742 483061945 941517953 993576959 15244095 62483920 703617813 749874557 315488345 821621173 329599441 879397114 879805026 996363455 735900608 802917661 753605974 957751906 615475755 794511889 201330331 296201149 900404417 914218429 670413525 721099488 946394857 986292614 24579118 821468206 452098709 551082110 380419356 458996977 314227038 371624130 680796801 721468313 337066910 692470895 871528675 928752694 161654805 624162379 615467233 988903891 987559570 995677933 123995958 990256503 194437286 821054070 33709301 920181459 2178774 164843777 801818440 849253559 92139825 689598076 274215767 998582878 695009858 893979246 505112603 938360534 755664951 925882624 932268527 963532272 986127088 996348363 76832055 362215321 849507794 931813943 76890985 902687494 888316151 997953626 587639092 908210733 128483694 807157168 739144958 759040026 100392953 603537922 223337317 807335803 452434140 912738189 361274608 834929950 213899769 284368236 316388563 472930938 940124941 982659047 255693515 762820460 293331699 932519651 21378890 688373256 512607873 699786211 773881060 902299275 777603591 855218820 464340782 586158576 770419369 854245559 609327116 989427729 213106381 993211086 688310986 740859709 896928745 904808112 538979091 854962705 670969986 768219830 522908663 678407763 45498927 385380273 233873461 404065235 262210000 554470953 902038066 998306462 640463126 916159410 973698231 992328551 50065762 885112589 883278142 944520156 832239852 982897521 376210869 913069425 338905381 920665043 433541934 550496779 622544873 783991740 316198426 960220527 632964983 642715590 346005800 493449506 991399624 998359774 289846082 825205436 272201795 352465280 715343962 718110472 764590022 800240302 407646593 714301448 502431665 542984746 382997730 459865375 606887787 636945933 1839162 4665412 361222777 720409172 480650338 926612227 739092442 936258316 410737414 933647450 353560591 377078523 446155054 530157778 695466454 986630234 232248958 785759315 669431085 978847804 243380009 553227808 18341516 903355284 724548932 989012220 651507957 839936659 498885922 517075131 520750616 704086609 69476339 307289152 52152036 485476145 876870770 891146589 574122714 660108974 412376550 637883536 602939709 747719405 393628929 990484069 435086952 582628442 567419547 899888632 915448874 961375350 334270045 561084121 183279262 591456484 501569141 895792422 298168745 370712962 542485142 634536575 138233626 914048305 405562909 951521716 124766106 472519057 383373934 798326652 348277946 585618630 698273910 905220538 712224699 772727334 561921539 964518469 302217747 482059361 747519052 948928486 910903770 983530443 328009686 853365135 719288160 906238429 462962739 480628319 599442589 668115024 985498691 995197386 934505689 935188679 993786568 998027997 129610919 209846452 434953631 595006847 408850977 885238639 610730489 924459403 81594881 837767322 708918147 888720765 523316907 634313330 627197418 811401178 844649757 978496936 170354899 944128367 826357433 987748450 532301800 950740491 153525362 349398267 390398610 983895517 74905993 845726670 369037023 559224740 253717047 285720152 689320396 948381810 503912846 985922917 76444532 163139654 859219792 935606715 716264078 935229088 855081850 870799954 942544376 971266574 34648809 829742021 382314602 505004326 501836032 958225125 609966413 664713013 378844764 524260937 206929798 684397457 992606517 998069288 106924426 988514311 484483044 598004080 785326932 919322070 691769886 909914012 874951829 976459278 536075955 833223520 703481238 848349086 551814810 794831293 842246212 911603830 388823188 759643416 708582301 714232882 661571560 788673318 698977356 970756916 514755131 779715813 554389186 591551708 388510207 665287574 762436076 812965517 48815232 583157978 459835435 958488879 168004761 308510203 588789817 967251466 496207102 874025854 443389750 953708582 117126129 810141374 928599378 936135625 470650645 503634271 74694370 367454108 840362482 978225441 853366284 973304698 101418050 682092889 139182307 337587246 779079565 866315599 324652201 835762039 418647460 539865225 853139780 993575237 923268003 952305353 561595869 838818224 820269306 932511936 359736227 542375505 726577038 887137276 765795133 852381671 981807309 984196303 315469048 588018716 917222124 979138040 844228121 917373504 967428981 994131723 288958724 387545409 294806399 926871789 311577178 801599126 843698194 950219078 698350927 763401267 538524175 748675751 832536385 890341244 589997714 986356054 414593502 415327638 875104852 957003234 530667095 818726856 569359217 814719074 119916659 831997896 513977576 585570023 558840716 577685914 557888362 685634639 619775242 995155370 109022433 298842417 616346222 638251092 449712325 752962900 71040345 107451061 587377090 932585573 412945911 647919466 280650183 518049025 483957751 506848764 859377298 987003822 615874312 724528014 501438351 806439703 606655856 823681096 250976914 589995003 995511081 996054546 395932604 927873013 492100345 664223271 214235333 680699697 485832712 855831131 879499840 999576260 240394593 649618209 455630636 590358291 765901446 980091743 301832942 776006032 408678793 423789905 861833497 923934105 489935056 730439405 387287721 831685155 291410703 304068200 602118854 985436681 101741861 605383344 250843083 456998471 469614630 900715018 230397512 849928351 672920144 889984896 661187093 862183646 867074082 956656474 672295477 733623311 969504679 980737818 90438335 794893293 939601432 977706029 485614042 993199602 754583651 982834193 720658705 985326379 969883503 970977623 947978628 966652432 132099384 175198777 928687116 973514584 311242937 914881465 799059668 867511089 533476393 729882260 249794525 529569010 971568300 976902319 448428807 517796426 246999344 315112598 387847696 959350016 800386384 834258294 333957363 556551741 885088571 975374823 275847062 466944231 135083036 515923651 240885483 559722406 241075637 507263318 944310589 988863083 927574709 928363228 718226887 849747790 591932826 910238509 467921749 690555945 827706086 879170119 329740091 726989955 790218941 891817920 823662826 973277457 994500021 994801894 869037486 902949667 532476521 962563178 493555373 940139132 756268518 967639664 11682543 962597254 748213816 877455367 735431546 917670514 234443153 764039841 432728722 760383830 679767564 918309127 667275940 989768941 224994424 498698397 883538832 901109556 953390406 956439726 621792396 844091528 297573859 432303407 262074747 984814237 784915465 908902257 942977971 974068370 309263797 503178743 206901840 931116259 444124896 793315323 847544437 870194848 320121300 715518741 148193922 750896325 11816662 930907858 622915287 694950460 516599327 767715351 868897517 874408307 250693174 475747388 468758523 723629212 518412770 687528880 97029163 320200843 920140505 943399877 953590859 984722664 956166880 995961463 945260217 955898653 364629275 464268760 679320133 691952244 622706839 880075990 19492991 680709844 113262964 393512942 596778500 811653641 283844255 661803497 148999819 827400058 506437277 750779215 83333333 614656667 887763444 921189788 204581232 416224808 350352066 811102947 453426030 961330015 420818525 459857020 621335240 775052611 830308948 897700653 56977804 92289951 179904079 378247815 174666114 760094324 268273053 972791369 770549717 787209733 212468556 969920418 715927015 767687628 616968642 676713568 17715237 643513850 971105190 980845397 951407049 964130541 540530754 972620360 199340738 810854684 496520764 990695728 668635532 933927751 712176554 820642062 638763862 684137112 255886303 287822221 620104321 845761528 737627278 767490613 31556322 809979842 419521744 786307355 619135629 833673078 73487961 314896527 882622646 968940979 452947152 748617151 785358583 904088642 72697541 159296410 832786540 840258135 84969001 138323875 113868892 121465118 24619527 513017777 360741881 954273847 815412277 956401281 945737055 965756893 202064939 946324069 402483129 478462450 844802096 882761220 854041384 993620076 380714840 452036698 893206125 970275669 748260653 879205015 872647355 890298937 925982522 973189112 694587727 781693103 213278446 477775665 794808511 978904717 344491157 362545088 161651044 671485884 236395081 417413624 141455051 422740481 172506181 329693971 339312577 394758543 857705703 939810726 101430718 968639025 876304294 909695646 588894501 675422913 577665278 621926415 679986211 769427231 816437554 938952272 446954125 582929841 732731841 891597246 20975827 259027155 553885570 762186891 552327823 563175400 921245148 979782026 727204176 972310987 150365931 593154214 854454178 891739149 594269802 752913404 903310540 944795264 223348845 440469289 585316386 736959498 687532930 710512990 333055246 388845018 284335696 591545200 186242626 554680520 855814273 942364162 286174249 504749782 201079824 808325848 16182904 711503371 302346060 973662904 625455790 988566967 734786915 753877867 973819125 977945568 515295104 583716555 281281881 885549010 810728505 930785233 568939816 957114968 48539674 230026296 720777819 849807025 532812188 921439868 742316188 900383403 881158158 995562233 368367333 652510106 131243549 896835509 64063158 990001091 382557279 468897998 668981027 923935693 515007318 892283139 820924884 965110787 727434841 767093105 897459437 916761485 887574128 926871373 969401232 994408533 66700879 147693736 683610645 906357444 374584257 961591801 600093099 818624945 407126448 900686387 723185039 912255124 125430998 269269110 825203961 939934425 263338781 775776358 165183278 542970740 603625408 874125079 820713196 916476622 12710340 329083149 175978317 411643000 851154291 903530795 610957229 748727527 356488352 861835523 787397998 970349201 761608471 915880835 479990857 662236750 619008087 713601310 631595514 972595040 905310256 905741231 494692066 659401118 749702966 988302200 522191376 813898078 655904596 683278081 723880075 734443447 528770304 893846429 7535676 937583646 352398375 626359564 166109663 928221900 456188446 794552364 897633819 936472159 411875533 489561576 105287964 728664620 460434518 792450789 911128182 943755638 968042897 995652541 766984576 778998952 551378593 949959586 367524603 933607614 6012579 574238311 252167650 667401468 542933563 679745262 976500807 979858000 13014345 500484114 498668588 652021813 448538937 668745922 579381369 614181679 768350844 850055768 569069240 708375792 778554610 875097931 643013648 839372138 245140837 746150414 83598394 307599213 306660314 658981119 345454192 778599738 314977495 414872785 201519252 266753470 320968261 697612640 952538977 963812667 751252163 834066563 94708774 664631124 423025195 507234540 70029108 496971444 356727311 452041638 684726251 800924409 628038916 906514943 63535934 538473841 519090897 907401397 211669326 973357617 404507171 554792206 169009155 229002794 839329588 955107916 730454108 922923103 754609955 994833504 297260243 929225981 165134447 470645904 895124148 913077645 956236381 970475235 114617159 378579483 571893769 807165522 302437682 510866286 983095909 986340420 543744620 774950432 233816420 275906049 186689055 292017499 150340795 767347511 160256433 787585280 354649712 708345123 810869111 936539449 850043374 902202441 36312020 915156387 67641309 359053177 431513986 995613318 897419409 991035260 585269572 623177386 607602271 985784270 45866104 486905894 829791946 858596968 713682890 958102804 596726426 940941103 465127036 802302415 461455047 976458467 451774682 815491601 48481114 250531078 783603337 862813858 284481219 570258243 662932345 722708523 251311954 773163043 725888400 784447731 617795036 679344095 713680236 890707133 879163733 903326705 330882768 560720860 97494302 539300017 592609622 711695793 632676599 796898601 260455943 584884890 949744664 974887337 740276274 960732148 542447464 826589101 156686588 823431642 87115843 212644637 360332609 788825411 945153279 957049061 450527686 553785325 565684989 876145149 668632746 719887115 264385970 389252036 556675757 670130665 866088557 902439545 352814346 896929963 947811820 953740240 242725991 397125213 12079798 378196366 856646912 969005973 79113934 687943174 619209950 985250408 846756490 960915779 511201053 836191517 171087460 250114458 158473864 514141463 866137880 981367983 942234051 967097787 626839922 817605240 292126727 359335747 871174396 975269650 623299261 863950690 649036067 978458964 20575466 286514837 675176971 883893077 166018622 489608610 539193282 996176895 109150068 579402651 44247034 451232083 480539350 655102793 652900472 995526531 477372826 944623471 372430915 579543490 447514923 844190726 91252573 454662260 477668805 877969328 302329635 608799355 659544091 907982999 968314941 986194772 242265449 523938542 534657266 906259836 714617202 779937230 447411177 792120468 640290076 730198914 220208972 638235789 185571102 514933843 604861516 785328474 149297538 515632757 169374008 558320642 532179907 623567831 242589867 338042565 487109080 790126053 227651213 567081791 924668008 933358647 268550255 373097634 403338793 676424797 900007320 990717758 213357418 402834592 328977416 716730733 500209554 529873010 771319712 866804759 827461362 939643046 856171111 903512969 133120333 993610480 390021878 984566707 201662106 760843663 42797671 914616446 988702454 991185632 97579624 235150251 171119068 784493872 222647460 583959952 447462806 863151926 448778293 566089725 999333869 999786226 40394309 59370358 728818076 861253605 902484846 977740542 213974038 745588399 634784931 990465700 340017011 577343678 702214741 718284220 180683713 505422957 561361202 877536896 228238091 354816053 979536444 997095893 387493933 493473521 536336357 835563912 607888657 990716574 383721687 477913120 402772122 583506131 325181862 491556193 226193240 924022597 467389522 814368659 989789364 995473698 957805046 976931428 630007511 756254052 918581946 921298354 737709431 750194089 300305719 343574774 966416914 970884146 566477193 757795659 819476002 856201299 993058792 994319311 138936241 901850706 156238354 443753495 176635998 744773147 260381452 882675927 362926892 434329654 814918036 968134475 517344771 564800332 185514591 490100673 74845422 704686920 16341751 258727139 25310363 467610013 526128867 846628681 943957459 990037256 222973336 737343062 690042199 860087115 664252922 792658602 94966446 631828787 588641605 680831943 264331342 614913394 634163810 982300114 553160915 911982106 803893697 985461865 521764203 792642990 667777073 997477345 952641334 977140762 594304715 865248589 323697951 415631040 660154273 702004459 48928024 410450892 606873910 777417587 264028607 907164233 58142954 968548858 642798372 660832613 689656503 730683464 970316527 971656898 249030246 377085124 363069633 562344632 715496563 897449568 843956673 982562821 964543724 991479715 761104529 826093108 359020511 916202183 349627997 819175998 716460410 928046895 224179630 662056799 78251589 745361243 302355745 302645835 772046756 954534826 206211875 574256840 585537276 937045880 3652300 371862674 628530936 951273727 564647078 836988243 71225092 282593315 775764147 978473821 392196418 557757836 848922326 981245584 627371975 784998639 365484579 575086527 896809908 943226212 519458654 890617046 728072422 893135200 874065690 902143866 82411286 810252528 629715853 632513394 941679771 970611958 19298249 242645308 408823826 663539001 378712487 871462956 37410443 533093015 218113490 742924045 547657335 776061475 655037172 818875376 525949633 593840175 936448786 971722028 978498696 986399402 773260155 966942310 556468248 823567043 461935124 694285966 105328745 610679118 375206537 592802871 712122456 963048073 672184417 703539736 685180929 783596542 264712299 708128551 49470272 727079880 963145627 992659884 95995047 425223035 280756063 504260681 828042623 921044565 546752150 981764146 677053381 738380123 251078722 485917680 573658799 764910410 893487025 995913159 86823515 511371885 688400788 746018160 399923052 547211627 900646389 939514501 519770918 656549264 107244637 424039678 56852900 514206274 784694280 797656233 287989293 556259030 920125608 982068157 488688503 976227550 331859292 395008122 291554014 375318722 331699452 654396072 468457590 744184693 687442003 843495304 93801102 799268056 14364961 814708501 233728951 711616424 195153464 361469478 827817770 948412692 79000161 778493427 581254151 734758306 117063997 712022122 403679826 498252980 402684886 694564120 822272497 954405813 767803408 941677242 172159989 896761099 963279541 974383497 26278238 774011720 86663760 562207967 634206506 777909894 411244987 759991494 732856254 824355012 450918994 803876735 438569749 891589889 289710355 414033523 154433788 640801049 169756 895038276 527793554 765626194 488980305 658696326 84060029 324274988 774708687 998362292 65764553 77425922 874456455 943491920 945388565 959966279 601771152 867929977 952866997 961926646 677409538 855300145 293429613 684667292 941137698 960299303 970078507 977689146 501389962 766140061 863984575 972872171 959880288 988241311 490158713 954951596 341235211 600668394 971654479 988300104 179954491 282297516 276105175 315672029 876515665 921921300 586354977 672561224 966745366 984167193 678337000 755479974 855183750 913384546 510388665 583873373 527883898 951079628 727322681 829359191 650899439 764730545 312130509 317526845 317769905 664405753 350392294 633937925 810693572 955919381 50034031 269117794 705582372 986526514 647731005 764212469 980240507 991816647 617011098 816675753 896875292 944376529 791711481 915305303 905907651 912677842 116870708 396115394 103340046 751104834 253784903 771823503 509671381 793647056 333173265 487503664 328113021 330722961 495040457 568184357 562524091 744097417 445749970 586594577 911396808 934095005 997390641 999905919 597355653 848811267 470177921 814435983 992621957 995669578 352909795 458234496 780538608 839414266 400445779 701769469 957846460 974868077 408692791 975978519 415844696 593698312 603616032 987762084 663626941 846867359 474860947 941452302 150356185 433729144 253261734 271508382 248880329 956303830 157427852 515995917 81006427 464897896 404921646 519561944 237366182 472026415 813037472 984415948 199698381 680711879 520490856 771381650 132757411 892220770 53911695 772746070 835507000 946914017 621934876 875115113 875033922 892009587 12334150 346658532 922785637 955298747 406071743 502436020 122806234 385164374 735679049 788948704 705100068 706307111 513582437 697940841 841859101 876570373 991818541 998332098 749608040 759402939 655094961 780203741 643791991 980207805 237787577 557848017 343776571 998190611 149919574 943960935 424717044 649865629 313817989 373486323 296348883 738558506 724722025 788092846 535594960 636001500 304690072 373550659 75891222 683624641 674001347 987362188 360815738 796236545 130359147 965773031 107978972 746885881 367836393 861901030 16280606 697203472 388774962 537955736 793723516 966077032 109445079 437465974 591323722 735096068 459165774 956120449 232148756 794503724 975611102 980635167 666314443 736181684 57227075 109523633 591191140 739694069 77728250 499155942 382211094 509900688 37256970 671104747 790487933 791464455 224428 381441075 792504348 812730264 962019049 970315040 536099036 628907458 785268561 916752187 920555724 979954394 562246002 817075047 86582970 114102243 617877085 838560070 727244097 932199571 588903223 659414565 185958664 627008309 205189248 710014007 838413426 941640327 494960147 685530252 869911981 872655091 488943122 815938386 947360071 974638266 801086061 858107323 328149918 496014902 161230189 330981635 699810414 840379751 634873291 880331929 633300738 820321270 855418679 946727962 777854841 997359849 315232046 379696152 352530671 547950899 235326421 359603387 215160339 446378288 443193288 601189512 484247856 925379797 404407076 462887722 324955628 574759839 656961180 889078542 622918828 810701383 202162187 272289099 698491819 702670531 888976428 937256699 722401363 944742379 721570676 886491725 751072155 936707144 134367828 659602401 927277748 938349297 929198678 980224228 543038963 911299028 617537382 924737973 676166696 692659157 860244336 878844537 156110459 609382652 640192514 650376536 809715360 860938008 942610185 999069943 82834237 630805377 996214606 999835347 583657616 792577309 81510951 849550898 995860957 999915919 770379846 891979246 779720689 853202051 360830904 705382854 1516143 236024775 412509888 538604309 931874468 966359859 515366240 586928279 616188016 825042017 37962803 757795264 456625643 830950578 421535691 452924617 514632745 538634306 44563001 255528202 588928812 972761003 565359132 668891064 395849578 475803865 976031654 998251732 465300593 845889984 531028519 779432445 616215500 677759528 88843008 647936382 742731824 912879896 258759216 640345703 334980105 619807870 366045186 742712977 229938840 992972468 742219821 874500013 513569794 561724494 669131689 886815356 823873250 995172701 219364027 914443460 784238044 936560302 809869867 935516706 876912072 935543504 79762959 598645976 240161112 571291640 139955825 336228527 95086646 529772534 766877454 840271572 866086237 978018741 805379920 838063454 498312801 647787784 595269214 805321469 758758466 888195194 118345438 510947403 257139492 516401445 69979135 478340025 269876569 957987126 436812524 607162658 540976770 771214433 977186335 998397394 255394971 825088604 503472179 750507970 124448293 938380997 772026389 834328255 206932092 642362328 597588779 772021126 214010913 499366938 474402943 975590341 911082393 990060386 220780730 277339303 107621309 223834252 661406616 826377780 264386274 808922652 662502007 850444123 411174281 803564091 404404123 449398354 131226113 572333649 631555469 827153457 616637500 999193520 142246919 604396630 609399274 872225564 968568837 996322955 67732347 867574615 865886327 875651310 759704014 955634218 790592477 796622381 337654882 812772614 384939250 556834904 474997879 633796643 719311479 979936443 532522802 879787933 499577392 771553913 255374680 319270234 397167322 702535349 467465607 882475215 405838621 853436886 984079051 984708980 506940339 508909698 288723882 651208666 103056790 198950285 644830035 828275949 253399624 858036032 270736205 855351284 567705145 645909637 806445263 855331094 21451869 329404029 623696096 805844752 698059300 767769523 849185441 893314808 861172460 943056965 14975405 794464908 166860574 975601749 111856123 763321256 502455341 569812114 921341993 940148808 606590059 794700940 871589850 929302807 805848550 875467749 176742996 411316145 32070048 774038586 473181567 735803281 506128995 744184951 168922638 720376093 222233186 466253979 916311772 945305658 729539172 855148885 553039107 570457877 69688593 571482986 367952236 735088741 915722778 999461240 969386873 975284316 455202016 888048514 658731979 832292001 579016236 997384584 850270487 915167504 442445767 697658082 230940901 411117637 536540946 928575952 71228570 485290829 715181906 778430790 572142276 700760472 256868809 663010306 364857357 819286191 886398328 967382970 406253734 596395901 143795987 459929488 573988558 695461509 780072754 855641626 748326052 767784484 100153042 661918575 783698621 824453335 399625205 895427324 47878936 271543640 529062885 999665682 32014739 479739523 257527590 268264681 382295988 442488384 933329945 994698168 193968362 261978681 71711393 688734732 264127473 953461864 982301292 996522520 458924193 605184045 798767298 929679976 609572619 821156735 314273699 342810869 863654236 883808347 301079632 413736363 845986413 908346012 595737645 856773601 342522410 958500002 778404408 811164898 498839241 882072966 461928818 940005854 66737003 909362885 990138461 990538212 976569161 981360865 612271880 749885099 858162942 967982440 745282338 757613686 70409927 693078391 608896553 731964672 59568054 940170803 662754380 808166210 902179626 902592975 374503643 886508560 464149139 900092193 737068220 770317217 863629344 957255404 798384745 810198238 140524177 986066115 998547845 998650293 938537448 958476047 909133141 963380156 229153938 831758652 558183605 681731510 118138924 839442222 797971533 906199506 610007300 954439819 76447719 516811036 910759877 929399346 509482388 944083721 666371245 966231978 872409256 947358940 4425625 639712496 423113132 425182604 704395068 836623347 755532262 859396788 806707770 841744148 880360910 973434021 359296065 365594635 556377375 947758740 249328301 553446087 865868396 908088897 977502637 980195075 4908591 430135117 794119699 851811564 794512897 977981807 480904732 534302442 877116285 956782977 844340036 900878412 592871098 971133756 933285730 997466633 780599123 790591601 888187068 910391565 227867330 362000479 553959803 968746191 217616928 459366893 388950732 831757927 662023746 898101887 483353176 613635694 35597364 146480091 821513288 923162821 917736333 939620708 817337494 858113890 229397968 634917820 333497140 769643262 193628371 741120883 887572542 933722665 735559652 778942357 821831612 942455367 247241841 427816033 879960610 894280628 585207308 703977094 286145170 683765582 736549885 915974384 711723711 900873754 406545798 609234337 603184914 739900745 767522292 821677241 210384899 287526644 154422647 448550476 725625298 863899578 977946440 995130782 619323442 934338389 408513599 814165154 596446245 775437182 335099483 750205413 811824047 861479776 998535191 999483937 558846249 823237784 568197539 957090880 526872429 777841726 764417189 872422664 835201385 884119916 226650015 773223653 57056432 859496654 707663121 852873878 143657077 671225887 562530453 753599541 188398267 956874982 520006293 821119135 250953627 826127758 278026030 518238132 34275252 98109804 7372421 598496306 553293376 895544848 339194617 937519497 691548550 939425933 157111028 859068243 33748996 887240858 85073041 427838232 240659314 348515907 91471530 680521802 324999588 636604462 5168049 579387962 727831107 930176215 810762229 974209015 573856453 815661451 114825274 844815892 486516477 807627306 310471514 989162856 957961361 995130479 169734125 532368006 184719487 438751201 277105109 793760164 345833048 691276710 489619495 832240322 745662560 902085064 537140252 931038243 835633099 861012982 35318250 693490025 589690796 883877323 614248725 714770152 5523884 359738454 939368404 997677947 633709350 792621345 816493661 926828480 813975673 870768989 48788729 864939743 361678296 409494357 924684835 940848224 332359344 692404406 311783504 667830363 620039002 637721722 256361828 877030490 280806592 860343311 597803307 760060927 657648701 997007311 140975991 721715341 351990129 603292865 891803676 962902799 501179997 973882221 154150997 754549888 317182980 336277812 691889382 916192595 62234193 689286540 129168958 178355875 131722263 524663431 936207501 988661170 578614091 990650841 894914055 963225301 652865894 726970867 746175285 973328424 350767857 400149748 735546253 775895057 930334821 949392873 336872621 743461898 251623596 885898020 523318560 587730495 942841504 981332131 577432310 771875198 255320753 538332294 591718510 703716556 521671328 888756374 341521233 747674129 955570698 977018931 54698263 146429738 357433232 734893003 548090308 667247860 92996329 490419450 168176878 210814999 345467955 604552228 306402907 809864579 287031703 413760864 461647588 930546965 49742007 327089359 266423057 670106912 907620547 948154217 725759963 960598743 195867291 871296290 289991552 877679870 695011367 708564038 605740570 945054251 942389085 974272671 123906914 638084019 188407593 662899310 697172478 946670701 884116477 921446575 726211313 784497121 474986534 536741129 54403555 875600903 457276384 588723252 114758739 977281734 953244362 991948211 859801951 945502510 901511820 905614001 631290332 766042553 917992652 983287620 630626614 887468445 542033600 917541309 936258325 948406662 208257454 380371502 329540008 968196374 625001692 641661011 951156400 952909022 916560087 952306406 615647464 723399853 577856433 624607841 364569991 635410191 707087192 888214302 623037520 788781527 598896856 967959588 289523024 703705270 464907417 842884027 592061464 756386113 908238829 975885893 516918765 992675353 229049918 977815176 729571508 989589713 843953516 898286688 919513439 944880488 273169520 656944878 774499324 989978096 94971404 483207899 740970649 773845437 25205851 992470727 114181423 538530929 895097777 956798706 440484747 987640245 625300867 685099235 470989975 955470125 395258829 735265328 340824922 472375085 759089615 955659859 111345600 229893670 625876629 745711117 274354917 300876766 894515183 985861035 660120292 878521665 609206469 948510817 787496818 898166905 805946068 943287213 257337667 980302871 725741037 828670473 863938726 964225648 550057228 749108479 866029967 943939261 204316550 428036443 827210278 928010443 633734125 912793583 322057372 669114907 833067420 908450515 264613459 999860538 528476964 744865501 301877783 724490314 685810200 929820195 187096818 858288987 878362392 953010735 101537159 978010244 114102783 523515868 933345278 959758708 183028026 514325151 847655807 942673568 828762464 910746588 330025648 837466888 328403493 924459720 614591578 724681250 858583721 917589965 388554060 997743618 414812670 487807544 364695683 512644514 810540213 856881546 739412124 910339872 832969782 833558244 68787554 635569354 282030122 806888847 628661086 832920793 145819446 507187008 920313619 980776162 54300695 149363884 507353592 885654886 53955494 104806977 447125590 753990622 843014236 925752919 750950433 935139103 346890701 492157515 82390276 292126970 887708488 953859636 672164111 887880262 215514972 709508538 981906581 984339765 108914761 632856178 331572209 387045658 506431797 829983189 95119823 175221705 288068586 305533356 47437138 963774949 193553131 269877267 361397577 735178872 230488276 524301443 429572368 955739387 360294680 953966458 648668293 739469087 714888645 837541740 243599886 393330495 597797417 855017354 65821615 697831688 687706580 991853713 139446384 388894866 326478089 408728779 938916613 989701509 457808365 954635006 673077424 993723306 543894505 722221521 546637682 942054269 712504611 754343492 989481484 996291453 509133074 728746834 697607532 697751931 540074216 772197246 956435790 958631561 608403763 952233345 109256895 827188599 72879451 426268540 465454782 691690057 383266943 845915034 158564929 651545902 734266208 841347106 978310604 986760352 507677114 764891427 688540865 997623559 240660592 895217843 330061411 438266813 265551148 723873800 151273536 966188212 206689429 247621025 17215882 757973243 447497391 968833554 399636589 588524982 79462882 349248810 767071693 977727171 588396837 596085601 356781281 914502411 782077728 851203022 691070707 748516386 744180871 918523414 987883557 994533449 302758027 440598583 927251620 950407762 956227897 982897550 179337076 726518906 190677008 964330177 919251454 925782609 100137862 531401179 198821630 638156762 691709690 790626151 483125740 703367328 139863591 662293160 934172251 951595048 447629726 603343783 702005604 731107045 628325937 752707571 848852355 856725455 666276096 736338371 292765987 722263250 728799133 844048287 532900859 819452602 641113429 729563701 155904489 889070315 712447863 825066108 642935090 656186708 92247673 264677059 673439520 680630544 635299660 843396196 963826931 978624063 936495996 972335394 822442665 953013688 960235621 970243677 492954663 693491415 133513638 213070157 158428023 395574512 13100105 499772771 77565138 711146889 350496252 911913469 919596724 986717416 964893937 978573537 785114346 903022433 152100888 714693474 576053992 648636955 662771610 902226508 139447716 346057953 513259275 864438048 79600447 446072801 933832764 942081615 969742495 970948963 731784288 839150420 450228751 902172311 960247870 965314847 148264023 547826428 113219519 349718043 973544600 990111243 603024932 877727230 673350350 894049600 795145420 985988208 297867683 892051147 430499907 513901064 383968429 521522154 432789037 568268995 412361589 964945033 501400931 544970269 559691172 766148261 322945901 809539630 895295363 937559153 761954086 803591670 638341786 842563661 177127277 585157573 662745561 897626874 620843842 756605410 718976036 867456402 655110675 915890392 41886161 345999892 408728182 415606464 920477283 941319794 958125476 988692594 415480385 775259614 545287485 942020587 11137390 637924564 325254586 565489798 521341644 945264816 740161253 747492054 307659591 531917201 292955094 522221711 337155450 871628301 444668198 787334679 87620825 800624161 49809258 63335628 926340044 999981685 288617100 454321464 261269621 893597723 175079862 384909350 880745753 896908673 623174810 948107048 170329558 940692132 683931654 713845021 496329482 713039821 852438077 995242791 541591133 846456676 765202667 864282985 102982809 898430173 135809285 460593855 14917652 336554165 894578518 964859080 496647281 590818204 776877190 821831583 891333421 915987687 945754044 972588486 646094604 887648042 71949840 178156053 515169737 979117295 999813551 999898213 959694427 983987587 31724633 453729450 618731345 622757824 470312423 653736905 946198164 970460942 550692786 721782953 50824917 881404945 45456376 640005628 842667668 942963756 717912899 858781614 208454266 916303842 583437767 677554854 665723067 834649108 984678387 992061687 64590632 929041781 875572371 938938560 614026507 766657658 730328081 930808407 18253977 478606568 596932083 711553936 566158627 623860435 269668172 286377019 423195389 814851074 321287320 553965354 475419232 585263380 404437957 937840199 237938118 659947268 200255867 688208348 228512700 246000281 372725023 766582655 576810651 883014523 613462103 948934271 947800781 969796998 89595482 928645266 906442932 941191648 941348650 964243441 466499287 637829764 118616763 441603422 100971369 191127603 556595342 684302910 710803654 724445052 700924293 828593662 39874996 389187670 17131780 314301517 305276043 956648562 341317760 643956049 126468649 493997442 735126505 800781513 210312745 553613131 485190047 854669112 964341285 971315809 118587175 532544448 890963366 903545327 24649566 310375838 798226030 909279965 989467126 990255570 246253583 329327529 383215859 911970158 664431477 879437510 490918123 906942560 396515991 803312198 432683244 736184128 638745687 883823157 744879226 800964842 626027845 994122457 220342526 802184910 217540993 882804315 185534109 484395489 626632336 762875246 597730490 942619625 911623689 968914696 583367222 767675471 587784316 691714303 377047133 896945348 743038115 811184445 231856419 579731648 429534435 431679584 78854113 406871026 602453188 792476445 462669527 517688215 954750547 956374144 978855250 979401640 295017959 421906857 809716260 966484000 172062347 476020448 261544832 920768975 356952165 405881049 666673496 854419398 388490296 788542146 273330678 954852870 860809655 982422116 541885774 931228323 32300343 125737562 81038681 505996962 799606826 934680068 431936458 441718918 608287127 879521261 356747362 503019849 947015673 967016343 573605586 579507046 532612443 573807890 983508330 992913823 942215892 960220823 546687897 914335880 828875561 883486943 796575730 837445275 108213904 447814144 512363626 768267304 478768727 723305745 219697211 955559994 824794566 868987439 261169840 924187203 847953708 912420818 88613415 624376903 318018066 411105125 187031288 352990028 487595106 522567586 278370980 665623008 655386042 965530338 153376482 963620238 287736968 685055917 429297260 664430416 571609822 856891294 922950941 943732047 991513211 998322502 941427856 959559835 949879380 979867854 695397476 989997017 43683913 463993344 57288310 867379006 696614342 699384399 400143499 885737809 560826143 954587012 824768219 891486944 60826218 678104613 729800929 902866886 983687655 990458956 747175553 929075398 141164120 800419941 320511898 498933901 385232185 414473644 702080616 986314343 887812012 988666162 392074880 396391269 123385393 566570720 536913746 750370345 200375573 505087981 942144596 964683404 945091647 950621199 266065895 448577065 31602299 956503226 135112552 807916912 282985418 356905939 50713267 355197332 669701344 682864910 749469362 877255365 993228703 995144339 989699598 992681048 860541587 974500683 661615401 803204097 992828793 997410549 707261770 720806800 931583045 966530774 805474637 989709413 784262626 900882201 472013099 519866342 49407459 539564618 96628585 262102344 890045093 910426887 666470499 915542477 505311221 889303084 28675874 613069152 605974360 607171737 45504547 904836986 36556754 561603153 235584882 515945831 801709767 871714400 30593890 628572686 166466577 338437917 737472762 926985760 963590833 979805817 577337355 894658690 901701376 967315827 290676111 536036167 491591894 969989749 312867842 956624584 506259288 784478381 293518783 489959835 916263234 963315103 355543766 925567533 227965893 955950053 698512735 892605061 245452883 256908000 359913453 396608008 269341899 519845068 946129255 978309962 795568946 953370745 874176882 945563805 28059877 254240862 333699745 653715569 880008800 970204090 549439701 913435734 387690091 634374230 237484756 251149681 356933030 970636920 365159489 414036812 845350503 903726715 254017346 738919982 319169089 656356049 973859095 976347274 68794841 729844349 991583766 997009616 900147733 931580158 956021779 976457429 70857105 987916167 646450060 939819636 773571412 779549052 233262610 370789128 685453862 916069528 405466548 829104623 262550231 318019214 194597267 601838516 186222318 443105836 102061941 217181210 608079856 744208684 304454909 801645479 389705305 921235471 669932121 907756002 302839470 376420750 595697275 860340982 463190146 511330414 357615032 448322928 93546849 680720224 868143536 928951380 204215703 380214338 341939982 466791910 168858453 407068460 850016333 871444382 15547647 50235276 117852380 733203360 359778639 793590002 75475027 337769195 107178333 601727692 225911234 945808739 499356958 763620776 602454512 611235536 718320706 912661414 848771561 865021818 472020692 780835183 434746395 822331004 598607490 665034444 468293543 712634941 245244996 527677400 449505775 816012592 213558515 741006651 993408196 997067101 523799705 782467284 524439359 541108035 116370138 845379337 385418179 441536796 602226822 649884497 303020226 504088354 397312267 785385696 619474397 773473630 771914252 883498836 550285363 559963676 165805551 298353753 587809496 898411407 83270097 734156045 811857944 993638678 459128558 693429089 491340959 978751692 899840773 958395331 689607195 944664230 679268213 706160476 862137618 967097745 337677275 765456211 41627332 43624723 407199790 831834358 640713828 795391693 979609346 984524839 263838641 952939408 854565447 922519279 648351389 687680019 968616776 973363933 662417297 829214132 466755750 944692624 723277986 954543472 615066197 883829763 754081884 913972023 132483861 221559781 750998510 947588642 108976124 654756513 808004240 825287136 811030396 863129542 899086575 973455879 385672203 744167511 710441928 891527256 917539726 956397842 627432952 786691596 240859868 598582474 315321539 341559590 166297090 826375557 737953312 846545478 849570227 887147783 442795681 585337346 124628026 936959230 918679379 996666919 319488395 644435165 29481526 960415361 206578652 703052089 86667806 481276102 947156302 980767134 975418111 985759375 392781190 679764384 552544175 925957313 214351108 769052654 613298297 968085574 886596445 919959481 185234908 336627509 288164260 526621405 259840252 363947577 177371778 585879603 52225284 603812814 81057032 968450161 579669316 971166896 178453476 517377025 743520449 946028328 641795851 715054255 526729522 718266441 522043681 951492428 220717232 737140631 562969864 917445730 517424791 736948429 654364803 660282137 164379989 703302127 455577025 759250084 392898644 403762548 348254312 806487324 880940321 945197268 606535622 829274624 800780493 849950627 645239127 690842834 681053314 808237067 124734681 747795675 138376727 847472803 876915843 942442584 180303663 904315829 403520846 931041119 197452459 473624039 467471917 917276780 842280115 930985800 174376786 637187842 842982502 941707361 452399389 914270572 624161587 740582738 926176085 948952374 756224822 961373894 620141065 897411686 51406301 901005556 704958434 927185576 792984289 971872461 79625655 230666207 659372128 951098071 34551404 264993431 608204487 919740787 487442642 783940838 476330459 582862957 114644034 611603085 628081422 693191449 404102750 873452149 576397480 678797379 134100761 412759210 916410855 978826672 573217036 955677195 667499294 931346827 463872439 756435187 735726820 937652437 296384819 526184999 710938165 735681939 768865892 869281666 309573225 454410174 837613037 983339247 696380610 923561029 291925572 628181446 515993764 996611126 845533409 874719246 91821770 765217798 589016807 944090743 343503903 446832473 906492723 933250876 108370856 495272057 661698708 768625342 118924698 804657499 251858832 850360446 743786010 920803007 628028036 849852024 551483995 843428154 871384842 980919366 9202216 903295865 427728437 697936859 606583842 864012926 106124748 500220396 353970353 779582988 675842228 781318338 823417389 996176673 656547259 833546064 384007657 782090688 998970362 999316001 934682580 958988571 657686364 928331059 955205941 961751681 822269913 947676311 675309761 945060947 360544775 597945566 808469119 826404118 325106434 503324898 855867230 902699840 868915047 886470706 182157857 443058304 236236836 792045167 165046825 378607877 474770526 642344800 450765804 783020720 476386936 576107567 691974652 839789166 393618299 654262507 969044583 977194455 432165212 683800167 242848247 646042527 353214380 476116853 163138462 714159634 761670535 967113669 791614360 991923305 629882434 720327796 316470791 346756916 731460010 951657643 184705128 224984358 539971697 643812471 888713490 940548769 87517379 763667222 337348779 571612186 274333914 938291918 188537950 738373767 686486582 843938733 823161926 964815040 873518622 928464959 576636300 652710582 984533460 990585181 102567864 460455856 580579502 979903344 743507963 761803167 445651881 888698709 205918990 551536265 629654466 736700095 533730929 723474474 163977753 624754150 341709439 600623185 542722402 930025765 168663208 408937399 287745305 971262347 414379853 431598715 533427767 714159276 253750025 275847432 617007449 939799193 217378486 743765333 604880795 766721658 709296390 728821868 749578301 782493800 764331112 947084388 674553854 972532985 305241117 593896947 498899820 539071438 317155930 563033142 722156294 999182665 362540925 717610697 680714654 816750094 118016743 458245551 715740259 949867367 605813327 844616682 420958116 919793831 669985443 807088129 895225185 985354133 802078910 889787346 235783604 953624661 125734956 611585023 220665102 579329823 753479120 772871217 17481383 870807928 27357561 580143071 592534047 917541972 533077952 758403771 449446476 653978898 820656542 832859539 395598436 799313474 656454607 821694200 420216213 446867287 266567885 926353292 985340108 986524327 588737341 598406075 973814653 996455270 277585653 991889238 974367162 998270753 332987477 512601184 999078995 999364553 449939794 722212695 869602434 959445451 733355465 917961585 494629278 684749517 825699687 979961880 973381795 981797023 911876140 993072702 128365235 344363829 430076441 574329662 240122398 265628307 582339602 904266464 151502148 797484525 113915452 952366992 137103177 357484901 105779382 900118824 303342370 388618841 434755864 785873909 485068971 506228878 423111778 972735548 979369992 990957239 893385380 969855132 295331471 936563473 561569081 652878591 407490959 419967011 179487588 807933623 252017399 337931973 669133446 924718980 393211122 622282821 984653229 999213803 764141990 966178500 507641123 583851858 384136736 960229122 28196041 525499248 205930427 562267954 375894608 575944515 957294606 957527520 240849032 312930624 108478691 476732039 364140199 754731357 467096515 467553491 398692045 925406619 88662062 926394315 629099036 896870097 772239180 916314987 596760019 989437334 850680650 859639204 980712526 991019857 887546152 893263650 728952081 814417444 272574019 460896614 598119397 828728255 247040627 955712321 220237579 286249594 971484218 980549544 511234487 955201891 379015069 710673980 703975414 954665195 284511008 551078188 48955878 208101206 346209595 864639074 676695025 958783709 81170324 691112352 159768625 492142487 290940978 417897310 927455757 937833642 731182414 999427612 966049599 976142291 297779551 545660182 406040358 781168255 739309295 978984835 216281117 756908976 185906030 865126764 969275004 989986528 243905101 549550280 871522061 890859296 323399049 693760452 561827330 882908953 781697275 905649076 197846385 403998883 508483828 696357995 551723841 621117258 625096724 789400015 756538038 920280743 549026214 884798917 743095080 934835007 452467394 829536591 414034107 582079825 264537167 531403699 333261354 504082412 635896408 814981859 549186512 635566071 857494671 875225416 900647274 981465067 496523641 948045721 615094630 807881096 26389148 226678834 894874992 915373732 571380292 843389979 943727097 958397995 819420931 873063232 514020548 535570674 358613900 410666565 241607440 259993019 332415483 759903605 712454141 835117579 355466615 355592963 860172027 967220024 762762366 955059397 90868873 818463070 275743833 909186149 284719173 995048371 667384907 975602351 95006243 457418506 971859701 987127090 368489913 436964687 309902315 695431764 343532294 707830496 287877318 640392971 677318764 915570825 691189138 810869187 494082908 693322492 51186943 975216682 341565935 552290207 34819581 613607301 768807949 786435782 369407560 419772193 347707649 997211914 193773063 269257348 20987163 195469542 990647353 998747419 229050176 280702918 552013799 644132815 239719671 468669357 339208475 449816400 506972658 628583754 559930156 734111919 281409679 688826749 978928213 988224353 396347924 682828497 169207450 443462339 195172225 718459002 285244499 366850265 840203615 881271325 17098313 493637486 173293533 360108587 300308837 697041611 79046721 706148037 553621304 837755527 570067495 959298849 973011694 996556108 949386248 967967506 416158901 602556804 712077596 992370341 855922968 894199719 273513090 796473526 982912280 999543346 735202538 978835633 825810639 899000093 745487020 927838349 774917109 941517169 725524828 900675712 574233022 901592707 417456771 910527305 95797604 420290961 762926004 798910377 65906636 744152765 406925500 822011183 437379416 782436876 989324903 994501409 357081814 564335576 242008486 867140547 550464825 632870357 263376679 350108169 715718781 885716968 105915711 739994414 989025971 990746850 428214213 672830026 135302974 645655066 695674516 940600019 423221871 703483870 438993241 631739811 143255011 516875714 82641007 855653741 964338820 998791674 378498083 788408143 946451390 982801885 518431190 597147712 663423533 934160187 53911425 817565871 963202395 982665663 133214115 733033238 668552291 798537621 772542483 805814307 806457332 834036944 722715133 878646720 450637945 488062424 445028898 553324084 327254680 967265381 362064343 648951922 746206142 898100093 699592976 914062611 959094610 999714066 921753289 939025596 670462835 960898147 547844531 748762913 760552091 804201614 832883750 910743848 657235249 820186301 897974510 918297157 540444510 550654131 378834311 746816735 399959225 685596597 924446589 936089372 72626091 965556147 654374814 677791745 412605954 454392873 712862612 891075088 869675070 899267394 517249071 695559009 714971640 787934937 178721205 461316719 361069173 502037030 775160035 918106559 597547067 644414743 195067874 829868529 183214134 380547412 494574331 901797117 596262956 951813530 329293537 365178486 753640755 807313187 980631892 999993435 16844046 735621048 573191962 820691678 20499902 917558072 230939461 649975459 22000902 350559744 395876458 999749851 575391198 613346730 173813411 333278918 903531795 930985001 981520736 993554449 696533477 965517283 45847737 641642992 679931993 839039065 260368079 492199337 69770597 401108007 562346117 650391633 231633162 246842587 17830408 739549946 236141158 292785731 636790059 689071614 38855620 604921287 81702985 583712338 974932176 987866765 801894049 821178419 153733023 904936312 601463254 823373851 591752298 605277855 221030940 966541238 319391133 348416724 221107156 975271111 264291743 491984433 354070639 374818273 842717617 954879884 248401109 550034205 39666393 768544377 629927315 925437650 74155276 250223726 134679243 786001434 705860350 798685499 771875570 874106016 355549502 896969435 70992200 626983652 150348116 695668625 605422689 732132422 121602395 584698132 3000161 874193684 146739031 575371933 892362375 929497655 429062218 519844004 998588068 999338663 71446745 166094085 317076943 915747386 248475505 430289723 662023297 929225565 77912863 636880395 734821394 880650460 187922698 421145096 827714996 993033642 133557276 332729691 651524138 905354055 302331994 793334137 327061956 595847809 340765535 379334849 82152153 584789453 827486105 950726403 562496216 908171996 108371446 919253787 876278422 979285492 702894710 893087287 228529213 381185327 827732677 886887791 334346771 863058864 284661197 670432944 90823384 382714067 364551738 691032160 49329932 184322393 301048710 982741336 91173321 437043770 217110291 686860716 199309900 857740930 265364567 618651307 972379450 992485359 693822160 799073991 394960129 586319496 806728383 985795506 357896633 830652659 822380463 872047264 331229453 975188397 34409753 491453430 122601183 562666801 368829650 938285866 785490095 880987660 74519918 268837597 272182327 531204996 553809221 612946317 602414989 985086840 16719305 90793243 587239711 710869863 678363597 835365202 94599398 94639760 619767119 803289777 155926224 836951271 371208479 864430735 932894718 981850908 994201816 999288973 55642350 139128543 60429601 897691357 548743474 832996077 450467372 602364960 865077984 922737638 167888827 852927697 914324400 990753475 805335732 878495530 243712959 391978662 78328187 387264729 521963287 976646012 441156638 888117707 590325649 647414933 654202986 914838240 815836731 977979534 267854654 537420373 777678513 969230130 664219228 710000492 781593617 846049355 4796090 839292690 175658654 267017946 501736889 953892309 272040700 545356945 625608963 715484029 538177268 909788138 910180700 933698799 293648596 795737795 136113692 869170975 442219929 454774366 220448454 864650797 586907355 939813344 183505252 602187874 281799441 743196607 775410840 982363848 349152580 843105338 946660420 970771297 961140518 975859295 220072156 641851910 708236986 868259145 458524428 544923300 985218263 990099984 285775672 960687889 649197848 807748124 29935635 627067172 194144621 959280739 671240128 910397226 548021785 884780796 907972166 961116769 300026055 831064091 391831510 402548188 768097107 980761284 786110963 941283830 176277176 334002910 2231999 823380146 69449008 336497353 137944432 895946584 648926628 877015303 950143996 969134912 620434066 795245789 746270500 939991785 273642654 382426676 564275031 950826010 308425877 912863218 34119189 646854952 73686547 326323616 425494904 509436472 540155214 918102124 438319326 661362544 376302310 406017591 711145288 761361784 173153683 830714121 110612241 373242675 138664911 167455282 672160855 799061850 824649538 875618976 400470651 866592262 84205205 240862647 455182911 888323167 867334387 974627575 36590833 996647827 265266613 344234451 20627192 46268259 769771707 770530697 514709447 915551881 706845387 796757826 450827216 478994212 95715234 659791953 444795414 999802027 278495858 678461030 193339428 681148299 692835600 790462561 480699280 902137181 580402121 637924465 367089533 898956469 667447422 987082389 522773623 993247533 505043342 603894166 461333643 715925149 630494796 868272111 903494373 947708509 519386841 576857012 339079962 441999461 888815549 991365615 95398078 155204921 139402956 383077938 451734123 470589111 425465640 474913803 330475944 365340609 803031137 842011115 578409978 979813557 204962992 631237611 298436428 524059561 612815231 847843085 875201663 999771412 733788029 860375894 193054154 292175704 663348630 926457087 299374883 414868250 8409688 439857908 263950272 525885765 662104410 708569742 841514161 864727174 160999880 202808450 68669446 753941636 529014169 867451014 94878149 284262383 388799646 569799723 190453314 532137382 30645398 152018277 922876341 953112456 676438875 929555047 431464106 717585100 136245133 424049925 328736545 580006566 828924385 862815071 411563094 625891723 339849836 738092220 350060338 594542620 786392431 954212221 675867857 948917073 63044048 818696426 262823494 996013076 716704703 799408452 19213128 277526137 745367317 831417700 148669863 901439364 943280204 987403682 206271813 360888755 109632789 354019437 168625095 266191680 43246127 923566964 952398603 975095355 522912053 904466965 85763799 554716924 17578651 453671215 574181908 678692176 401714541 683974466 771802263 888095228 635919938 830195260 922715003 989171830 345730836 695224169 455303204 746911638 289283916 582047846 114708260 690464445 175442959 361920040 352183814 811511338 102174717 527790881 174176957 322243886 461303274 630017713 672885960 736288107 427522760 467278816 636015760 688935237 90719644 480774050 347029231 789596664 237798131 648706487 541798610 960888812 567794791 718773922 304352974 310588223 360177631 627316279 128936730 471708030 695696289 976343746 115148687 598648788 780959036 785616936 642442625 912642865 318752926 577522785 579271043 933541868 168316720 879200830 801039303 816497572 408871964 907458031 545299197 864323616 696007722 949242415 986294115 993003344 324054015 461408308 826390431 998769273 830171471 858413911 319674919 887622826 638337294 766112973 285672740 772372778 621527036 653269244 644348889 708034167 835814369 896852372 689307190 962715964 754237629 773780954 801155573 961703240 668301736 833988639 105280714 508413608 334617261 398508628 470458339 585156412 334952187 849081489 712364944 959213880 706186077 855003585 928980567 992728115 158709328 427007400 270877972 578791138 690382696 922605900 575273444 748081229 359742646 990027935 153820926 159262293 565777482 586128349 159667515 656840947 551955068 634284435 432480 620524502 135529133 429908214 324279293 866449677 373068474 852570506 994351113 994729259 690610746 720050950 388719592 451873136 708148352 781151625 50659600 98602816 329692952 549900554 881468017 953093317 771617080 893861377 298342609 423763236 883319033 922097908 394098583 982306137 324502074 805822679 189246377 293851160 330851824 676341161 368761997 997030299 296419034 878690661 382913786 739121681 589600925 702423834 145640728 778020886 521918256 818432295 558897148 880300076 867895419 949742001 559128391 923101026 572210011 621906888 714340553 812569632 900823508 977658214 877307155 959191462 656712468 665387049 654577503 779146187 408160382 467592895 554362504 561171456 436946871 858152459 100277078 107012273 746703451 802657698 12661829 76497509 982635997 991800671 247744998 360625019 112788990 904130496 964683224 999715264 715200676 828869362 607735780 815070464 662689965 711265865 872581836 901062164 134844799 177239373 907255204 966967927 524930122 917014038 28695572 84884428 531633150 736240492 203093219 849494901 398352583 918043608 661286256 708690665 213267598 384104696 886180817 941254993 43465502 635973957 523904161 919915056 803469198 967128785 690442631 940576486 662089820 668824803 974393891 987334304 27390653 713452300 154317497 648385280 902011075 986902326 386568792 674568065 195120966 339688003 824622043 940006315 58685974 234762429 450541019 515353060 959605232 982705325 445810295 610614564 193032847 580794182 102497850 166919430 708881471 874904287 874380249 949996569 182798184 821545871 108499905 416184006 170959121 998863411 9116331 193421293 395662661 557093378 829571095 869454250 341632983 522847134 990526506 996238172 672011394 863422751 300965996 891775795 824787765 990341922 351415952 980362263 240725933 489376523 541768812 674545236 850524259 875211968 632070286 921585027 157082199 617997192 833364585 907593306 393807301 974396002 352233144 946413492 192604150 828034842 737897855 972225836 323557835 965522775 230970544 880417936 689003912 886192275 598705466 621377083 607918722 668970775 112172536 718823997 593780556 787889520 331548006 921873066 823461279 861764515 745117209 777463520 609993836 653249801 58558106 171807110 931911214 945303800 362244761 867931137 2076961 205441321 800009477 942604601 163202084 632755477 731044238 921818072 167820308 845597412 553598806 762938870 370715419 631087394 860297295 902745044 750291984 781544749 942246496 977545702 843070075 909412148 520131150 586688160 469467017 660801075 415186268 540697220 786439281 918855295 52462848 997027203 791167220 857936143 844732403 856125485 474067216 817250493 986546212 994342096 118129878 401875799 280901323 926590245 69527762 125265192 388184814 668154513 329021938 658338958 597764170 608878272 327112385 370137228 616353658 986350134 460104193 536344952 692991884 896104982 148178911 203623281 553460306 736902655 622786050 781977321 940519663 954349888 306697127 978416412 974279450 989656107 746391939 844682571 105967116 611425656 125358522 282507551 131539700 859328132 62649692 809734147 108292669 191143450 8530384 120664078 407070410 630691401 28133292 117000014 792265855 880161170 159656488 704279893 856236164 903921637 382755613 773555571 392325609 735639936 832395951 940179785 856142845 936552212 107808102 224847959 359450119 795418509 834963548 892605697 866491996 880106007 320371089 751816480 420890640 772335784 260068405 654198621 116293984 177724731 961633439 987526936 740759222 878030579 119795539 853306834 651444494 911172195 120924782 637783529 743740494 905493333 565347612 910050468 145831946 243907339 261731638 757797713 169167496 431972779 886068293 968537643 527139800 783349353 616887240 629006619 32470906 809169377 463887172 934647402 467520799 666283079 791145724 989789104 317205214 851731440 447867169 701160562 833688889 950528058 713690408 817233086 642851747 833365723 996796330 999148417 323015820 762475805 278557574 631675627 214400084 513650237 352348986 757838772 535141619 837140621 179318110 894026590 560330404 707666212 197000259 730514190 974340395 980176615 651854954 910340775 912460359 996717872 539124659 574713926 810147410 935967432 852869848 889792507 810091648 882884523 988048632 997096044 285026734 779938776 654647400 993529254 237472563 281779799 993621889 998588464 95250397 739940457 382297988 433695528 35436448 791989713 91651699 946956691 30139580 627330246 661742306 668430088 85309182 996302254 769762170 774929269 192426740 872093892 422721173 607390923 440070816 726958877 527183685 581931440 920384665 933434074 467802806 628728736 939788916 952773954 813437909 891904348 779265071 890799513 709735778 773314895 816161510 884950639 770679628 891019562 145321915 578876402 855290832 991504933 122345626 618927952 241118176 422861452 136432131 211266550 943770259 970317141 580759094 885832689 387843246 830397255 62275583 771999704 907088320 921080363 360291489 525454230 725659288 812435614 66393994 546941646 402125893 709127113 195014867 799629143 920933162 939570263 443323311 642649904 230941076 243927880 544120094 751820569 191917546 640601067 145657053 296169678 55583511 659591342 560943673 908847436 481666714 866468906 137008674 367154405 477985307 581758804 459395940 840131994 999724897 999965273 319753505 839707923 647596883 770917947 485161637 886211655 798111460 817266215 285338 686487030 568026743 907657266 576645605 908491966 909009973 959946016 504289705 841385354 440472297 620715313 916258483 917052840 400320669 930458513 127702659 281299739 94524085 965634330 202620803 713654093 707282237 722935322 526442975 976363442 353389736 371674790 221464344 961442636 193716502 848188639 118272526 894179861 879481459 968168300 93951967 163607728 130993915 414287778 529515896 701743003 641342825 918584432 37803157 831271964 856986047 976739202 692822188 980706270 583005905 594577547 2861045 800361945 301779135 519260303 277498753 328025536 906857587 933146061 473053073 652423075 864666134 995656661 486024323 853099245 84097662 629942140 576404788 830341810 997932038 998540199 143775137 816983020 815626836 957806652 286398254 564573760 418936297 834505566 674200258 824451983 199813034 883472802 306387200 904977397 868409279 947345063 206385668 695547979 871451970 948193556 968343010 983128376 628225024 865316180 825742797 981541809 541834859 716314324 194883260 811986627 63778807 631956396 874886143 965662858 989175921 998074859 338182475 751226984 155597497 854569790 916085255 931614885 523915395 740925221 137225402 773642547 457363390 709680532 729941670 749304706 711345456 798791189 760287438 889700469 226493268 490402950 465847557 785570976 576335667 662851708 797097339 890846632 474397233 779251911 435719816 474891772 376622825 540325885 127941471 340884016 392350050 919345651 940469212 940531360 944257929 971576881 256125875 929765358 543806047 786139627 559249372 688085963 965127147 992003941 890295301 892918469 920227445 921339737 484003642 889674737 428985257 768902518 412001391 481424854 785933715 808472502 174610440 686283114 602365907 945885548 522639076 916441289 761403901 887805984 695872326 978868041 318259067 488954028 635405678 810778914 226100573 612014975 96174633 768791237 143175464 604637521 820804487 839842412 179982747 650808729 632438311 878703932 524584144 584312680 584483094 607985856 910818663 995437019 826784456 948244924 680003767 756560731 977446422 991619662 729583552 842480922 555274492 584406884 285944126 854105238 864326784 989660114 685036698 816071088 386669799 758931219 91683392 561130166 324747827 985845056 941285586 944863963 716306758 925116801 877445412 931277559 923337862 992320418 449850279 618993245 246683852 437058093 934355436 949972412 523436976 812672083 544237793 958391937 613876020 692767716 751176494 851111831 96735459 823055350 882769514 966091373 479405872 560038077 827062288 938984456 491031947 559326950 991822362 992638234 509509615 849157248 481326536 738169982 695941849 861276488 624674569 705005493 1766215 300479580 773091952 899781299 628763046 756127322 207148860 791983647 731231871 888385360 850882513 973330421 73688399 298786663 713967051 820878484 628339697 755459745 296404682 409976350 972080077 999615846 36256197 761065063 244785014 915511476 985919637 995760992 394613094 961412876 554816271 973007469 81532927 734688105 524726468 748910077 357384843 818817135 442722826 459618742 639422754 818610516 175313311 678300176 835515382 908185408 475690222 703846072 140640560 210827199 668509342 870847389 128170294 476086340 93621501 573616687 826987848 835530008 498742871 935075119 28279593 770469631 582186091 730404224 158989496 461967671 967094247 995654756 162722551 994454762 194595432 245880940 823377303 937803749 960943494 981269103 603047483 782342411 884204329 984460600 952351246 985036850 935471142 973806343 311572528 526020054 541660298 610571128 556569395 791911178 999931698 999958034 305944298 448246479 563035321 784369525 90714603 644919722 782497284 928831923 422163650 987971734 351771203 499350369 591962159 698681609 168350018 840131417 559378564 589976666 812729942 964662130 455252649 608774728 390738410 493250471 359186081 607376914 304644740 791992130 889447812 926561970 514287991 999363631 119048180 640170894 472886031 741087002 245885181 616005800 966943899 998530319 686455714 692393676 674461473 807043174 693234371 791504256 254672359 434060968 791236236 939659846 630779146 747573627 931174105 977333275 469182091 930124368 604410423 679462140 222942118 847532603 429886366 673233083 503382637 842265191 791535091 942730410 507840821 754561427 481433800 674958384 561580036 606582589 109163438 444882088 258459976 999482910 250602690 815552239 80709937 355316407 876506872 930078768 101331289 981855337 705285149 792419452 522054522 911699102 690393187 829302527 308586825 506935540 528569116 643139431 347698194 548610175 510883157 726331936 527106602 860352410 121264912 258155187 39262120 194472599 366480216 776123907 104452810 210763191 375863011 593705454 830728215 862396919 43583950 669665032 733076268 814699704 44084861 560414304 627338123 738897513 684478771 733337158 846352908 892427982 500933798 729906183 559440520 795473807 424339372 823600898 748631458 838971167 464144858 936592010 915549934 966423094 673671718 733799950 241822486 256955377 57720524 669154677 498980098 553054610 325875783 730161078 141416104 640734623 574663428 663851384 51445040 412453431 811369598 893544587 462479467 721800934 712617679 982449129 503614789 645471957 793397547 943026059 789106461 866722172 509654566 546780874 316845696 835879500 927051738 928073821 502916820 521837522 343709134 883162856 144911620 557223786 417691192 667150924 675687886 877877949 278868690 445915894 591842796 811328442 162900148 617776068 755632753 868164411 739521591 921911737 747788435 868610393 24375013 564562958 840422151 961959533 655211113 843343942 448412804 593489230 278039507 759132232 122649827 795885733 457396326 827006158 732788297 833254023 200173650 684295224 644144335 900298731 679776118 806763716 504295618 585145575 820191221 957154834 558965418 580979075 987343149 992430746 952791748 969019385 113922507 889173510 195346257 338723294 593801652 956825002 750578084 898342122 377032865 752163543 559345232 826783398 806929033 936624511 900092970 973209132 789893848 855238674 373357980 620155621 793561659 971713164 772592895 841959305 23899138 541418843 745970945 871399166 817933975 830381928 316306210 421573599 30990170 758348150 39063647 977359264 142052107 896891137 186030298 957047344 883853000 890086350 884324270 913172941 364217568 836680700 835846944 872710721 264083747 879656560 778851682 924812428 224191016 980749935 886181889 908724358 362941359 721196521 874767580 948868997 757295070 966932930 345665704 803211990 27709055 139286410 357728066 540136514 6136727 287449232 902198905 918917498 568305017 630417987 252106545 584711354 683551250 824463281 107708059 981494877 302557944 763386111 856615209 894906290 634295967 993302686 247400240 867337899 849366743 970290363 368560768 920415038 553745789 733089411 416916243 879003375 554115178 862301662 514617888 691130189 769231238 922505781 717059465 752712793 583195070 609474804 341438478 418300994 554866488 733485211 440788868 665929051 197663843 629783280 484514034 649295821 458384954 868558464 951908872 964751319 908247839 932089977 453937227 970228977 770850815 826781791 159759154 920771452 170488574 812619702 780452923 849721076 803876740 832018482 344533423 711298896 185562695 318225253 875668033 962549240 148301956 765564773 401561426 801435697 695625923 935456852 421870681 928450085 596959140 908010119 659174650 806117775 601892568 979970134 451073052 746750385 575717505 770951901 260040177 761948497 302264010 402998043 580581711 807242743 337372784 638124215 559990592 996090666 564321467 931927496 318999775 591067845 203940029 895951984 576423250 706915551 769364890 886062952 27809148 45632188 690760330 852105788 916947696 993485668 654729200 897929677 779123497 905359809 93266332 826189842 656961585 722257950 442040707 581693686 690017339 704703419 189112653 992280655 896750978 939900232 386122520 630969911 934509105 945818420 75411902 647108073 785803189 787865945 880098653 887829598 584456267 837216553 519271899 753897624 488041521 691710093 230909724 455375573 865133574 901024643 594829471 893014760 610589422 672594905 449774902 471108565 475601308 753726695 138722389 355998466 461162391 497873964 317931134 891302505 940646961 978081616 327440870 519132161 651786863 715516252 21538313 34633172 905153380 982645805 152355672 536398696 695965321 910637567 687330172 954019352 159402505 819434834 692349675 865625287 965269697 988566476 1959712 808209115 683531264 716830526 540217212 849242685 132659079 940788356 559942869 738707346 687352493 911633737 700826826 964051251 122635705 519584426 265705845 924528490 577154102 600651825 253945875 762265920 218755537 535029426 855270318 934710270 322513349 361127238 850818098 900977974 222132288 816396724 99685108 491162990 977141050 991585120 707711396 714019083 260647256 802520601 675717781 891084368 628839172 900554444 677010282 821097609 217524605 364983736 889652907 917919119 668329340 818831050 311094628 789778764 259360832 809478308 940664093 978319919 443129997 581750806 68170622 916041555 457391084 458254760 866371529 940060774 950635970 954371927 278475360 989073923 882265501 924139509 156947723 341536582 155957638 565956263 4607471 389372294 760977105 823092804 346492990 490346955 821638675 953587056 919775201 923135058 771378871 890279511 60692868 360192526 752585849 891095658 481564857 835822872 561903636 872990983 330317662 557614953 993307073 995537992 111803279 900746139 122594660 351592975 518606813 765396057 952291291 974151735 743923711 825376082 287392330 721227340 448719994 499708423 666064497 871429130 895145159 945053963 677313986 758090169 969787843 983459998 890505225 930977273 412106250 763042959 818702314 886955517 568965127 996310708 566519366 634135861 357882126 424996582 788449437 788960744 485784855 994983184 214994415 393447292 189849295 275063272 160078960 347894523 941165397 976554305 946439849 975682607 282372165 362303395 960252053 973228723 489709519 799368749 207763165 431945041 625304986 870858020 413660735 454026767 126156544 468500732 230912613 427673044 755670923 879745591 618920943 898852035 248293157 256076916 648527108 891827944 392047981 942549967 172686710 622596473 41821233 501688324 236714687 351867574 386734235 389545432 963659635 965130356 836039295 926847736 730303132 776581438 399280298 864659958 129330166 444471190 769365146 825413623 282304547 451792479 758768038 920591974 85610378 374991123 352897579 863246883 573026850 943911698 230305803 456193309 126701148 283124771 761791856 868458557 773562428 842189725 970037232 976004231 158273097 588669237 910077898 925070054 188251881 423815495 301409389 523043417 863190889 951233802 600473386 733904249 462383135 997208378 439317132 894791217 644407414 961076470 280615776 583238342 254566809 990706088 461552522 674593127 938315028 986399215 189800230 215702166 455207753 716140832 779608352 893490247 688756713 911720356 361352086 574627886 950268968 953902958 52969899 383068654 664727519 941609097 715729207 754350775 31210076 640007091 319145556 382411652 291747946 618112774 876390554 973081955 959434170 962579895 457993715 620217943 868446972 952559132 185035433 411588803 342932060 785868083 826992455 942803657 519597619 771963949 501583924 859646297 123580202 665369692 275176102 801419909 882719318 913413684 849050241 856406022 920014623 986160758 893169940 912484896 787933748 800215867 22507035 956295916 23643364 581548943 389349265 579412684 7612266 433011946 809809668 836807903 125761089 574987628 388770691 871734540 188820119 429023949 169104766 237824702 532401616 638223938 742052694 831274066 327044870 648770627 542505373 782473880 898668035 916064906 373880719 733296451 23636827 828602300 815928402 888843034 223003516 697881963 519409632 614506210 789835107 791341138 458110802 461811196 617880854 850599695 790158817 899512726 201983574 209523643 65115715 564993126 944632137 991814843 875684271 942717174 148163408 892352893 692574173 892100790 300814129 990341031 705147430 831400398 979592745 981099404 592073604 947438482 656321073 816710891 473291555 952437280 595758314 606753380 286667033 400740239 462385665 675748830 112644626 400480012 881061533 965226971 65641106 373620974 596435989 814997610 799000698 806776030 753176172 918375911 885387973 979744391 997580795 998302157 362876435 939035158 141255887 402192180 539778393 896065203 624575984 980453256 372373512 889595251 336432116 817107349 872782805 969300080 894591924 905114241 579178034 735639332 418077200 654700078 75031678 480672853 846518306 996788399 549673459 590349437 425135259 990956218 115828817 851968203 162268090 936111443 386729507 701722260 205525692 586867947 68036765 360008667 92111064 789200496 685351967 997377886 538217569 972290319 712367733 819293564 491357541 786636373 905729467 934768712 736487926 885049499 836984689 980058341 587034328 709762445 176911770 477248167 967482379 999488403 237597128 282795777 758631355 977565838 740484734 815567552 679516332 958723871 21210587 862064938 616959178 896191221 189400863 242284851 784564474 900813597 940518783 999678403 514718967 720494519 296309718 584252417 865400380 917571301 240038378 509172540 404053829 803569461 636684427 863776813 601536299 973232721 782969925 846844490 908993050 997605655 961439503 998698266 89312108 920145378 8828703 186528839 372140346 587209581 950309010 985036701 549081337 697873613 745214827 809503844 716657956 873437038 934499544 938751210 224821598 903006314 332408664 384225956 613011690 690805053 738279496 895588193 438284238 537303869 46623931 276915279 290127648 878801410 840069356 991744452 432764444 939266131 521185797 740711504 123142760 857698786 59273667 834250140 16658375 470104830 415114078 892193057 631739369 702355901 135505336 302360388 969992404 996424222 578309384 699588420 796562550 799474924 755169788 861329940 785702646 828692912 550486925 762636978 78347463 566994526 65902816 829581247 208465971 967829343 418797641 839970446 107964843 334984212 574760038 897441513 621072578 674971531 86660756 586450055 389766098 761854733 175988976 283825392 454163891 652441263 948399221 974056907 302453185 634803536 780886040 839835112 271642021 795656149 288085963 335997639 266071545 984216477 214118909 377313622 341375433 680254890 342449256 747242597 396859154 784194136 724466027 747289413 347801877 930047463 305326025 697657781 805299552 868652367 376447929 451343631 237371476 308201699 816270023 860409604 166353963 411800727 705927500 856754576 916459809 962060668 41231569 883337966 228704398 427893041 868551362 931935116 776363084 808551787 232978939 602825615 958821168 976432392 973904416 998697319 442509192 760978279 144835507 162375018 738682631 797336686 591821463 803951515 470972803 892925067 686732155 917013023 412824382 753994346 561357891 670183120 124549556 302120507 662149019 927655916 968318177 992661206 192941784 560775610 563257381 970123160 525718322 938226255 909284326 941860909 159030976 362012544 607902831 910165180 250720718 884132426 90187011 983924340 217348720 713582783 522316584 589943575 415244946 444569351 884909467 939675382 610837399 967701190 691717944 806484272 867382363 935335290 33792443 90065555 453648830 834796985 931846347 949807714 194002885 253221233 510838904 978533423 976140886 979460594 924911102 989631450 193297969 593498092 813758892 814692286 516421412 774103992 358803477 642494349 462089249 487505161 898508140 924454038 370850480 381153011 555970778 950572056 125097084 141837231 537132633 683100617 905586623 923414358 468891237 718225916 778026954 870093896 644575883 660562396 874731978 966799442 268326454 405013569 650022489 901429251 687276107 808430362 350680244 623233458 253350482 402386044 652368169 763721093 737405081 961872240 471873692 655753605 185351235 792652058 615333212 770951518 80151454 95126967 311773985 648747453 265556194 844811215 822312788 948188491 331757826 924036196 297412491 539159990 92912485 427794566 322043542 563956482 168638155 284432434 881405079 959694010 906975944 908907423 599330279 877453422 610624383 739106319 434526680 942421796 727135272 828976633 437125396 686909888 155315229 377878473 378848654 885427379 6450577 457907458 330721508 456843732 269227237 280497653 835933682 895693282 720171170 866698674 123417149 316311256 639347098 780417188 878198971 932330742 541874115 802734380 115815668 490123975 207102919 619162946 314748951 379327674 378002676 901829358 52704464 614045435 528807132 532052654 660297587 861070161 803717585 855318468 217305525 481208833 891458633 958263671 331020514 662287924 670052483 967318368 100493785 182454521 822780713 923095534 389252331 804142335 293693196 553423841 813039325 943366055 247165603 694143756 515375085 602556944 719492204 867513942 711951218 865142303 892737564 926005948 436690355 974719954 21032752 855681999 481639223 594231892 903680023 999424923 508855621 915526878 17707329 399909681 869677379 927554904 613966251 759268633 344133777 348626553 929959406 988478068 761461273 903142634 259367025 391226298 446092047 909417628 707502818 893448736 82195938 186598244 704722497 967035692 398150534 719941319 8614681 592360785 249593691 917996755 184255373 773103488 680713776 688257609 482254649 797123622 667790114 988544447 783058048 811572781 882554412 892654114 183097437 450097287 890878725 987043173 734467689 941359378 362454453 703110170 572235097 745077655 964211810 986952616 258839375 826446339 273399000 588340419 489766508 543563056 966324979 992306268 152360976 215482006 9225846 865717820 353014866 363284445 390426449 457662971 829434538 880699641 341472267 757063051 490103725 607449762 955407195 988328000 204008527 424941872 878330193 911107358 798683585 894777937 968700843 994329304 296392014 591459940 423100117 522929120 467227343 502650402 308385602 833073482 914015086 946102829 475991098 512646675 534892972 939129071 180090297 547121851 701776575 823293366 305569752 795158099 205133872 511946777 58629083 815950840 670976025 845344588 892092864 980708218 119290527 653559376 525254227 761700156 864478802 974588951 833644765 854286221 551783992 855004864 727611103 907393215 224225462 602695403 170256620 193040277 174887985 937728377 471143273 620536491 384288121 762870808 566529663 981115254 21739544 392374687 769362454 789819819 594548679 672349571 530596133 855666129 317062435 607315134 716363056 895806782 520412993 848485126 608484334 718548940 463481190 646716650 802137974 943953230 248720614 472145228 504883227 800431958 116491442 462867355 613370589 902673063 526090452 869936116 51627610 194858681 523982694 784284045 519516977 536932769 186075655 186637078 567545271 610689238 465331717 761961647 268818110 531234627 366415607 706020324 799369749 800285688 379620236 896279445 6013691 941165404 191372299 743409176 910557135 924829512 434813990 611120682 102541363 856224189 229525221 260667948 713006073 946559077 121665009 319006412 113974569 879085904 474702723 936400978 758607934 979980777 39278529 97137939 272132239 707421181 173867500 421075364 423921439 433745070 422484008 812105334 788177606 827647771 296498406 751848689 618707867 681180362 206833156 213409439 779277594 823901428 65687368 323540115 381322704 401317339 303740549 305212008 114557918 605066491 791411006 872141782 248751746 756490709 950671369 964774196 111510794 467558816 107234972 260121452 940062790 985971325 42713392 804629955 304654495 917457937 164997040 341895780 12869922 820532603 636859279 645543402 370071799 747601976 866219250 992659116 366927233 891157457 582420407 684392985 179555376 436321482 617967330 712286178 579814111 610070697 311512126 521851782 603347135 841914130 143088493 506944355 377288798 616537540 960120552 977379148 389329999 875240624 269962877 272476700 988633664 989610925 678945941 804997160 431391379 656994243 222664058 815021915 236747528 915210021 129182362 297652070 6535127 995950451 98260732 720852029 882013858 958969935 740675599 928464192 271549390 566593164 524957801 659397638 338538611 362582649 92485046 973754887 600778780 791605767 868472915 934133614 909267130 994200052 160548108 454855114 637425320 857530885 777953830 819070411 697884757 739627730 709832651 766926172 356424603 712454982 575126181 753117077 821799627 873647537 258685697 456006860 179146397 217566886 524512346 528694957 185078143 651341726 151550752 740357826 693357389 792254146 994937983 996035913 420612666 767469676 270329620 399399886 623797994 835975761 641403685 687205916 408874420 579346696 703154028 933395765 915214992 938953285 508791571 854542668 229029163 463096386 389811300 419741730 952882213 996686794 354105908 562040796 71991470 217510904 74956633 918762197 670156124 855701552 150680422 288205578 680277793 685293520 931409493 993973007 641985014 869868159 11892082 969684075 598649100 902544933 425920343 848015570 704390161 826756816 926028707 933491765 279556125 417359014 768057288 862225681 949683009 970192271 434781188 488017065 654190988 759510840 818849746 949803205 947935887 978359733 729247884 971402868 889119906 925691574 720019463 968212113 31774234 983809912 696704530 883005327 712078270 904608167 306936076 645107117 476049653 948664663 856912573 950586016 982809560 998439285 197825730 799388757 183963293 441798652 308183410 406369496 655384914 668984407 127387648 239055970 360049938 955492665 669850937 726639090 368210564 870329460 261328615 781255661 37356605 968946597 69423405 463222251 922732328 984600408 628575713 918268981 725368804 966529730 581099530 581638869 893447048 995391093 657664906 899002931 523305616 759211420 217538209 702122650 598123374 890200366 524861592 926503894 681843618 742576671 509508677 836585672 827932264 833401622 705538542 750218490 858418246 947272400 339598922 953810298 78663617 300395042 811395151 847904433 215401502 721214938 154277514 531926742 542277383 955442990 842730760 916120592 543734898 696498355 17979353 950718522 184244336 471527796 507112092 981089709 682643102 876870724 5009380 304586224 120821424 396473808 813771715 835477773 921025098 988370044 833657116 972493991 191217236 781397993 204227293 270501672 184987808 705691448 220815861 473121865 28893518 116359652 356538471 781361472 542007093 617402897 713330386 953649215 232666449 968600508 304555812 456337741 92017187 289636262 399664372 485751311 410595173 708046680 505631222 765988187 705448040 849992650 160460195 381455393 364604025 621828159 668470087 758789386 795105041 882953965 623220090 806011904 161652472 338361498 726393951 935196673 368447378 637561275 794290372 988223471 31130921 203228935 960621259 975085140 711466276 804433540 270785168 343703118 856288746 859702168 394444408 516461377 412091318 666586293 912330319 950730136 778381038 970574118 62543479 421937379 536850422 973806668 359493359 721193860 679567998 776118674 514902549 831135884 875573386 894226369 8689841 86961210 260256218 585208822 471168447 859795836 162719905 691380727 225048274 960251283 872161402 914599994 340971636 559173977 951903611 957642332 710697434 987639510 227184662 770399912 461973059 662630146 957894717 958766490 916877253 946697385 741585510 891319888 35234023 462010495 419350834 737487597 921121943 944090041 601769595 652769332 355469726 652973399 512566735 892649374 857742301 929136468 41145294 473751060 364279647 532156241 450915031 573111357 461053468 769814954 770489924 780070886 559747296 821419530 866659128 963075082 812316521 864720551 523953906 992623029 383989068 923222620 324980774 751050911 283766595 846607379 983501491 986806177 541122806 816641216 530296253 625503138 517250061 877732665 811160110 975026863 472573750 976945308 740752105 827388376 1299452 67610108 443756591 970360957 541570505 699213441 210441606 975973021 836702002 950121435 58507377 229906225 568904352 740907054 901346667 965301314 328162892 918700272 152219775 335315588 89682895 377854589 135422780 987557354 171904839 685457985 699086325 812541096 199275559 217296428 355482379 525002041 886136845 994924707 728262317 944991482 308717013 666146048 459240655 654001787 116118685 203821898 642014448 750193284 74808905 706832355 976735005 986767168 795658190 817761888 518637208 716022851 887793435 974886009 235057584 695587694 226581735 471044469 555094077 641740784 697130471 805343930 233991131 411923764 398547353 591636511 220082504 717867956 260152650 844085675 588988515 600423741 432780028 919956056 746965760 953066841 756237600 934815806 687758112 952765235 887787 324019200 786159878 837464528 787077067 988822666 81370735 94215499 968149500 968699143 264741630 930880236 224751077 392741883 159851446 727525788 335814535 838365295 139158254 786144220 180119588 838837002 426645031 728611408 626013834 652954590 57243844 472146433 336300174 407804886 641343383 724507960 776042878 999272682 811992250 819479311 648071888 914160748 595563679 773081774 509742429 699804927 883947895 980725146 243399181 555950348 378840455 998072294 542235671 830984758 384327693 560127958 546670305 804500965 768403132 895942678 230179167 240842260 284766561 317688294 281780773 988318560 617354192 667510340 361706327 366410878 17996219 122967820 861899615 964485737 322598949 410254357 653079192 653431776 843772898 883548494 785119086 890537621 714026945 962994061 27045398 522566502 350256359 618728669 291597144 906604678 540321548 953902430 683055904 919708002 377995477 819779777 224994717 655203199 530928046 753665911 670755839 836797754 476340489 946839883 597871616 807276319 432141089 558680214 734769021 966408126 485156922 945044429 470454437 551765996 425136577 698421718 207827324 411474697 335603392 477545972 235150807 657358849 5972593 637808572 355599788 503971964 540298804 681878919 690587342 832344737 507114741 613763907 956032516 985008239 64970014 444682581 812696294 965291257 372608961 727623945 752299113 957507728 819710807 870676615 179947347 598463351 92741931 352057777 647539197 683776815 855664448 965431930 390854805 688338835 91029041 314039545 383220410 999937473 807833508 951618583 575437052 726405894 568889268 849028550 561098407 661653671 581331302 612625284 258248514 578794980 939717440 939804990 283686627 932129163 145481694 402332565 353378913 460764248 187747387 456512984 821032520 943959292 732770466 861379154 811553279 863290937 287457055 910179632 178545741 334953316 188127418 893863899 803570150 989424953 894411989 945525925 890661704 950695587 757538683 965170533 979242291 981940287 732028298 959928928 290707620 463241035 832409322 945346489 920953597 998227369 176397659 252045273 317588971 666754889 329681333 478877590 485323698 565067886 921804514 973272745 255820794 432903490 726362468 900367945 219998949 987247294 91684369 327924130 538128465 542335814 509193480 675258690 577402317 852437298 303178186 495919155 563389057 702220210 590551806 603499716 928999772 999724941 719731273 983814106 979556514 987527700 707539020 722115083 761043306 948167380 462396565 772726425 338642440 639372867 625616269 845159535 531330719 792375147 220055640 344107744 294003105 798138180 810984243 950118879 613338757 678484710 308296297 817114126 568040446 925302325 801785407 846427202 672535597 675176146 481757023 889682693 53677407 889379044 463892215 779817750 700626158 867614297 475350592 509963944 874012003 984516041 736809904 842281172 548255094 817497478 374854330 457129771 993792839 995167259 625735575 807794701 135448195 928555173 457096905 795951114 224203834 869342421 168302867 842489106 724688093 881602567 483717183 707566551 481699092 560742152 885000946 972131033 356427729 879134842 465028502 975733121 715817162 831019103 111566924 128164397 521344301 970816587 793416646 896271247 236517871 709553617 405805916 714094491 460319092 524916125 852777571 915503277 832049776 891752524 926046111 969245201 982770944 994901679 837511411 932144019 288147978 935713243 304348610 630203165 797906841 973436341 856664324 918020206 976766945 977754040 249676215 299268069 856191542 992982997 326794682 990166751 343787681 844084449 95236267 730680460 638543922 819275424 413429677 483681007 315722306 993064400 378309730 535133911 49855558 947382782 802337823 874331320 575667081 991704289 384406921 440604372 190229 733432242 39544299 183335675 250590695 354093199 359634604 477442770 1463725 418989622 147306961 307162599 164520345 689091051 811780650 987011571 222196228 587377896 19570706 844406257 82816863 139094628 620815121 747652499 565051200 711007986 599443665 982614559 161606874 376481713 263485808 352873569 840266017 930744943 44004634 875572779 729871274 751275391 415792577 976563501 396649834 526718327 101757434 990430039 165037889 694796553 645997362 884007242 819223422 995542815 339396404 449704029 646602903 772683835 46098406 720523659 582326422 851862206 813626933 951798346 348264430 897530305 2904080 47518123 667703569 895832458 669637406 881655643 343006715 441008017 557440926 723541938 140659627 285047266 765088660 935833533 269383550 678821271 369651080 671959170 677148338 684674087 31720616 983921624 472896068 512033680 461404872 473781989 843118983 899211299 989901463 990554295 875773740 911092867 853258490 991598834 201417028 332230894 628063816 978704241 705335922 768731884 765483671 780926067 29758138 317005935 721382738 859660918 213419250 483362521 146411860 560683548 794025109 878212432 742226950 965717959 580607822 842640088 769149898 930337669 297615162 553998296 764517137 870216794 594560254 841828438 228858811 714420919 631199745 660078191 647877870 913770101 468823204 664798187 837885079 926445070 967092727 996630488 534012094 677442836 557938243 680219281 256181880 340345500 554488413 572800596 217122371 821459382 962984937 995575802 419210137 517988044 374001621 581738845 637119159 973097642 970209977 983901170 159301217 870191018 265095342 396556405 705882620 728288685 737795028 795555804 820563457 909786336 386478455 554971585 297128833 826607453 687421478 747267152 133740455 207841447 718981212 926870375 990458133 999090248 559335657 964209275 859925942 967994447 121421713 873989286 858871715 899852606 910053018 985994794 468317154 546717596 814392598 916558408 837598757 902819863 668206090 921360386 137224403 718332132 644899848 665241600 363926399 705333511 696598318 973097296 304734171 682565060 286136057 911514501 933504781 994566589 880366089 891600736 701347824 817081859 998503089 998775897 267267097 698499072 222754268 556892321 99138330 158950697 794087314 887892129 628241374 818560587 682927443 934242804 667930476 740542340 289987456 752959267 122259406 777938877 83959577 996180458 53202076 531723723 164131669 806332551 49128963 647295012 397146423 593781725 413913328 615185871 610295571 727891891 486828379 761486404 331833198 559222729 235700661 285496346 498158428 774658848 120877853 258104123 4925409 650501584 968120516 993945820 569325284 977398368 13337818 566786110 658620641 776183580 232575136 393626169 292196947 969939148 845872540 906497658 783016377 826182706 303368287 675172377 262540194 492400309 367911642 650661949 336192479 866387224 207884502 229813173 886497297 888517789 434183935 952037754 211496888 661704627 660168852 860646530 569009243 773772415 549003156 810972303 974028488 996270358 821590978 915258231 303783049 581269655 173095862 215875164 445826313 895986148 521056269 615523663 7846937 127335203 670841626 936183003 152712766 877121205 303497265 917484823 41231987 815139261 974857948 981465527 147090410 556408747 653286204 762007671 987819615 990566038 689667362 808359205 670953168 965288589 720113746 793053590 271218279 822346215 362885642 519411335 607356366 831426527 518685462 664717575 540752242 981345589 771140405 946562109 258355998 620654125 760206737 860329210 112103379 647139733 808377044 913701982 683174964 846874648 619098652 870935777 401601644 563948395 919786722 983675964 90744545 500082668 782483767 915641921 430074080 631543711 356332756 904826684 759605589 945280424 549838612 969801719 27520659 561327141 917601014 976952681 996068485 996363244 152795673 314753630 410677166 545288011 78674088 800413041 230928946 267454490 847144016 920217795 33994884 870262998 704143349 758339888 852364521 972055495 636240279 878215326 530058264 757578201 587330426 958355427 387495236 686605331 94512870 702397229 146505489 516204733 648279260 942040165 654625355 772110239 155549192 488175713 963049290 996034953 334788596 406558696 911438427 927441686 540509353 935167378 949605732 977365412 476584404 883930265 753271987 991620036 735021103 865321585 82725224 568873740 881596050 941698239 215882811 432023906 688518510 973651702 673054985 750008611 517040290 736445882 993611555 995597885 505978671 830058744 314266046 749909431 271864609 638351790 659069261 671927055 659440003 705228375 580498735 713748399 111705239 394007279 841218027 864114176 879623229 916352937 443431485 739539296 654234938 787829112 350620051 871574991 670149222 916631627 984762153 992638903 332167084 633366895 181094368 202704869 258085964 935058316 894962038 950627380 936948495 991281094 740033115 865794252 948924234 963199715 392245455 489580363 864651125 911548986 962619971 978642890 2145702 93467101 672720060 705079665 498201550 599331919 152274789 158576074 460653827 963940838 165088253 887160601 175136327 271843497 395370999 934103275 817083059 876878800 619796994 666333541 987556721 997407860 549031777 804218029 804253866 959070008 415031949 891976863 831042410 850091659 837320471 929289223 351872296 905971809 729881084 814425824 259998678 658718091 962561987 971632948 779284035 857373401 950303658 986689307 596933937 984504913 517104373 903861112 277772079 878088265 706184374 763955931 814825059 843694713 479824796 749352157 603885535 822038209 126315681 253407937 574675367 750697653 40008278 467377838 8406657 747179146 521901102 863433314 494753354 600096859 826563668 832368194 868881101 909508479 509625891 896900253 794790294 831275792 647709526 869728081 96234693 162877037 273463409 815224198 791770624 895607859 947679582 967612218 165787352 421717443 742267278 941795739 445364073 779531322 737004315 893579717 641587954 723481990 55178111 254504893 219641059 668246429 619807869 982598240 754283032 893964149 433749676 554304241 370072132 746997525 905902867 996339031 604896710 797950405 392795788 482076643 553843680 678161751 497161649 517102257 728211597 842063485 245154525 281592370 529059104 957125873 57400378 665693292 330014008 365469402 405068785 876931832 520052557 907661062 309101635 575056026 439893146 705021443 840368294 933195093 631477069 690798141 876208453 880457209 646315013 814545995 772861111 944760689 860077333 994919439 512247021 880827949 121096161 829977716 747549402 805767865 297233718 973843853 558120956 935697054 140573294 414296592 657751675 860649451 81636758 477903096 269194725 820235638 500896563 584726483 437858193 753619655 241670981 708356619 234352154 961495138 399816195 576095977 822506104 933353290 710430641 961490079 208163660 848326718 971626012 978308350 581329472 786803126 339415692 459982712 377638830 826986182 502435071 959130772 575745949 820628554 622138882 758375708 683004032 885169287 347627144 532114814 106136442 919758139 862032828 913061375 513732041 785528814 605802225 920808913 508212147 964447858 486437799 590678598 872646251 928212325 812140860 929661044 716686149 770084686 37502447 405388923 156111713 202095526 795835774 870199742 599642998 952999910 761223213 814969978 99243705 266858627 414204765 718628788 855245052 968759071 51459412 588574995 754043661 861129985 233644302 609887144 249828678 661842157 563593095 848070232 251182691 553872471 817237193 982653512 925171986 927671880 496788616 628058064 935772868 975355122 470646201 777264139 424836228 975501180 341051268 870954070 904600747 974155441 74705679 484983502 476738337 837888509 366756320 826838571 908614218 914446080 866607656 942489419 219653178 736467488 993850665 997721157 636879765 973668388 102855435 583819208 371925739 981724741 129410599 259663164 548747252 645161017 884135444 930542608 548265432 812244275 243376271 489147495 838075569 956842539 515380648 875925178 130453362 850774105 354922177 848972664 539776816 551118402 501751702 900328545 968508083 968698782 83181832 954856221 250427723 512433154 500538632 954541294 445721827 572656482 279293045 928409371 90612267 565898400 451772673 991183951 27131278 133446199 270114299 982538289 599668717 804715047 321086510 574969009 982210854 990594930 624345412 993567539 353967307 914798882 581704871 947188140 143622080 688737352 539997525 896794112 596171838 952981558 359398809 368140733 100252457 328858554 177184660 477423068 569087078 880262088 468817219 684429526 248153637 553535850 166093949 578257725 413039041 894617273 360165938 827208155 722917824 967512708 904415578 923817295 126411362 594520284 193552291 945297747 584842823 709001055 450326164 495312236 309437067 984216328 136828046 519857442 994116405 995060268 23649797 563801519 210972018 854401129 409906833 837395078 97256514 673274508 131453565 549890810 364289004 675247094 577579581 831721845 360815999 694173259 659491934 889174168 227681249 648797461 921319590 986725825 869879485 961688706 159828607 940484057 444927376 652652399 509228776 586608205 94661461 105730098 169303949 379563920 300092328 570843486 705783509 996323854 720972793 804303410 753223479 834742380 427289881 531566423 356072151 596338641 507350817 696893749 453863159 859748025 794302557 897948520 229436798 798453403 269133719 635580906 86764002 139188520 475683127 974949051 474140698 806819372 749924308 863594214 632395460 932694740 847919857 981692860 357860398 948420388 279866589 939209043 576520161 833300495 118502856 821662958 768100342 855189610 765714119 974713561 944289219 954566041 273946474 968818142 14594384 292266776 407047170 446469273 304578900 922676861 401839957 610786491 949944211 974775712 677157053 705481042 659126348 844955219 950905817 961040458 534498787 997763214 173252102 333379564 367513374 664143941 899404440 954525612 25672884 801760590 724140654 830440593 562888652 944161661 574694278 982257720 266933138 475283821 580118762 624073393 743564747 887383703 626287878 914302908 971393786 979493148 137970930 845014306 196162504 372175148 188168294 914666963 127862139 227135944 913293020 925672781 943106322 950489852 651567285 883759526 469535296 704996546 44487261 817107231 607824855 808026369 630277390 820792922 385274089 601023802 798191216 943989045 66909746 569751720 818282056 856037800 675146390 679256769 277866579 594939080 627790126 732892730 741502549 955005355 159863077 193446143 494806225 817330539 637037010 761466082 52223674 635667412 201559130 253673149 568657838 824357608 678752463 914833904 860770817 978268212 645803002 765544781 312396316 673298299 408827227 425452999 809795493 958998707 533500788 758419621 655344100 844597198 447991338 499672834 962750390 994447593 684541371 731048893 702276349 732743795 442010839 877419882 525344619 728046009 969207112 989325024 713189682 972880530 168573758 379050501 461338290 884426213 136993472 764784872 505153397 759309002 815428822 845485621 830085073 831358563 838533888 926566631 244148250 334632333 277998692 685073537 214618795 845691175 632897208 740915821 646578943 756212680 338141010 491965888 875326052 900789891 649967141 797370876 533786715 752316808 750954725 875782788 509479181 614002541 365449634 905261037 869868146 888032421 738046929 884679109 635909550 958426407 815494895 982339221 438160890 601167910 382844206 839128390 389758976 778992586 199108109 834437132 229874466 891826352 819035139 922194816 974325039 995431569 611074125 806546424 311773423 898343756 753974247 989884197 693809282 958148201 233734284 515549158 494967594 882069800 856329394 952028768 167117016 388281147 745618088 833412554 634665974 741138344 575398083 772313265 321475059 781419663 907179740 962534156 239453961 250949620 868920185 875354339 946141050 961383326 404828534 660023252 447472807 494906212 264686109 433063012 312329533 862295248 794277435 985471996 841831960 975346980 969937745 978482206 587953659 706062326 321868238 599707222 469974025 693920271 821744402 832712518 802214521 958861673 398382441 498936105 213354781 726872963 433326578 807550617 343933421 742665368 835624217 887013213 636741827 728988456 468689133 939145026 136113655 851310277 603070441 637178836 433232546 977841384 124693646 163726391 527742500 891962710 991200077 993380722 592210164 594103514 261332579 455320541 520096805 736075801 460418095 906606560 238997436 848382663 536112813 982121149 853875477 860494554 598135530 942642817 824119718 968239980 390237380 754938835 630004046 863447376 525094236 798771827 732862353 799472648 887186087 933462742 880275891 975484165 222772795 538957636 145786829 486452451 744611213 955547554 2931335 207850210 938602310 985470085 865295460 926834910 475590765 775491809 339508996 539499433 270988857 558348406 604323768 726925521 525904595 640350888 247273803 879869162 266176972 969882257 33479877 79648634 83264732 912849404 685637416 822998101 596906485 887155518 791468651 831222828 258134165 381231757 274995325 446167818 605696513 869898643 777478352 891063272 506608097 526966674 49814556 838925484 892458657 912613322 857549449 996000995 444474421 723154715 316063010 997638973 612522322 781620044 335336706 364714345 314816581 330634383 961487315 986976863 460626363 505792825 971187397 993502185 730905720 843309869 210551088 781806882 270288482 516946660 196888244 268346496 903602284 916049940 94094273 641095028 839711200 998612539 573662705 645867107 991092548 997317784 261091891 799958867 468794605 940756641 415135425 982809604 247812865 310221716 325281641 473605542 753496283 807889865 320914615 529625112 662769941 663419793 190017382 316708630 627648207 983968898 208341586 892023859 482892817 779602308 90888082 541326770 974002584 995130732 754710796 755116094 755852153 768240833 599929912 923928345 756165586 798961668 249467974 313445753 534363699 988223937 71308456 304637426 886970827 902705164 763072704 789318094 690886695 811380476 541158290 786329883 399440443 766905184 434647205 551206445 820752110 929458126 416569404 767489221 723006920 783281714 340493825 688583209 498073688 536460863 999265981 999707171 456222668 756217234 567537513 808373304 744316658 812942392 182849934 815751857 748068712 765815805 30445870 854617472 668857031 898821847 908811432 943949812 221768842 959754771 849309261 862878013 29505080 775063684 624948326 742024361 801604481 864935147 746909756 829646176 42340317 584595835 775622894 899737631 997161538 999206097 410286613 855510461 743462542 849365793 731715654 833117011 315781091 959883335 290518729 426683493 144576990 739231718 374556859 933204217 875478963 947600208 404326296 615360527 839199452 950182714 951228133 999776267 871337930 943049391 375238637 845602152 894465403 921293122 223437104 579645946 445572255 459789546 4274271 171847797 944020372 959112230 583802189 811630503 237595809 835855251 312474176 916965914 86331082 535367217 622349539 674330033 589767967 631545438 309793516 849338115 677316980 883341896 867509964 903802458 550014200 935761683 690983075 894185686 654451062 826643846 739690597 947561077 710102235 750351770 866281822 889436342 786383485 923376097 616143416 980940919 982253369 991161157 567157905 586915704 351842918 961173751 614487489 766589310 429115212 981832125 201386603 520477799 415174450 607038593 272089151 674923016 237760559 819975216 719979186 934993411 759244661 768284789 386047171 998427161 347628291 685119808 367474330 579520522 869491871 924775468 647996096 870126032 652701224 825111568 64083964 896889901 997287707 999832284 362219824 487463072 22405702 566816274 294485947 613061172 17130762 127838528 881467553 897022392 835474273 859972389 675194634 838935000 180508001 907206054 853805260 872818402 499083748 561465269 587096928 601864660 621649170 985329168 117017433 857137364 914004965 949425990 931775350 944978517 625952552 778641774 642891703 904814604 16725901 352194709 751569997 918339598 702861572 990856899 421884845 819717223 849582826 896913200 740980579 925053864 853595032 958202077 792545876 836586190 463481720 893959384 415902543 701508989 724378312 918141814 981363153 995595873 55303741 751060773 981526489 990804324 600747364 890570953 666702223 892554295 976962408 992800493 272060137 820442391 994032334 997449246 570813635 957686342 760177877 785521527 793101208 956606408 400626086 599974435 547985789 747318338 969423402 991281723 768271032 935383938 869215384 898635172 755962962 975584041 407035668 707922054 484670713 997390921 291372562 711375170 522860865 820528008 602973769 603002874 765963451 924339563 40072598 775049977 800930620 973136856 449443199 828833229 33655533 794380618 358165120 449830122 293947245 757448119 46053698 762907253 8570203 451243501 549677481 647597510 309189925 668961439 612077800 916670703 928623324 949752434 108567302 685592337 88843504 385104660 759706791 840610149 421568525 571147233 60579859 216580849 836981435 942855694 873019553 875287451 865090022 900382952 551970043 751764601 434409302 470451514 297921525 912814350 994569787 995864907 186587247 729888978 70151856 885457869 594124005 824046752 264139613 753642049 737392357 801640908 457643063 544626384 361777434 698584720 873191169 961799776 150882972 627010025 108559965 136262705 445443859 857654739 27659331 142783304 610549118 850919050 346793471 544283656 63471046 219705677 474234963 556686722 314985959 621642141 761693311 997910227 58681383 617640446 731944917 760477966 784120945 996673755 195200220 725300408 88327041 798512710 557890328 914598780 685239937 961778004 230343788 491674521 77889143 138741577 120002879 534068063 641175425 850955577 580522818 940582328 908269584 974990973 851229686 917512956 858869907 985828812 180284116 762392216 808519761 944503333 946192226 978472602 260383342 878830672 289000788 614409643 670907473 817820027 105892963 333198829 702112528 772094036 964820855 995689155 519983608 653034430 975758726 990653676 394618188 699144247 662251285 794281385 829805328 877049987 680481223 981394000 84653743 143328673 431257247 812027502 64167554 724775692 805024722 809259067 916306698 974018016 650497124 980199174 746521315 792048658 56620364 427161100 8442909 714823746 152014920 664331997 195602729 878076670 267698580 774568731 773738807 814971031 976986846 994099569 358894466 766095091 53223602 609819787 304431037 869008335 492029200 845125336 660168443 962324180 1192477 679268428 726274216 844029295 372969179 875484617 276842746 506917997 109327514 933338782 463179275 752556916 315600493 795460966 422683559 989570807 265062175 316917050 479348015 692431362 378517672 650509694 856495229 944332903 190900981 592406219 200768102 902144011 336819774 811786227 211251710 704995986 937458 381564306 180758527 664754594 245839806 624829975 20312712 660840530 490029986 904392816 955564424 996710791 719020514 933824260 201928808 767933105 991761354 999295067 383686811 886999808 234954902 855312910 895699177 907882699 363125830 853242250 396125500 567704813 913752510 988235734 573366894 927909088 576864679 786105727 366187040 748359858 289434956 484727120 303462223 898243301 634008118 674871953 890576865 902055535 359541229 534894480 935068814 983221667 730887859 862044923 68318683 299982591 931183205 965190434 620001592 639707996 776024113 815739093 606624147 737045689 767241762 962204888 241398327 769225042 113714172 161484038 886781768 989429320 544219388 685457774 264256647 273809402 91555228 616900397 271963908 888285882 106482452 528301630 661730421 693229258 337688870 598312140 123301780 736794634 308716095 511861660 748485616 848295328 906317521 993800622 648483705 921567374 294242917 673446000 330157624 343109061 14884113 780052310 182285917 370615350 77813332 352811413 87709841 648850092 282692328 839174975 2440183 844050583 231545845 542077040 752561704 789438184 182840433 573238957 130953206 222172375 789673846 976880300 993757447 999100700 888945608 908044615 529236937 548572659 105248212 911970009 867704811 885310756 718901098 889209187 931273056 974978692 45792008 99633538 787821250 973758615 690315997 947551509 163296408 856949775 695662083 728671743 250652975 769231596 155811739 804417688 555871919 651461252 688136078 884085497 73073295 571137956 900156816 985772012 1823762 60800924 410214683 769051645 997059847 999773402 56584680 157802630 269690663 465863419 106510629 827237235 685186963 980705837 739654433 863227766 597729110 623096362 697297021 865587535 76553868 461973586 628448482 889170656 217052684 955044900 997407206 999613979 785273466 883665699 697583314 956361553 706942770 709191823 843354937 998284515 190745733 865329648 155780149 445709805 418286093 810808172 66901032 513736214 642340333 926559687 707879103 742302940 482083420 585351027 571505572 621201594 227074383 394425885 916991058 922558921 94668789 471229742 85407786 679739692 478382155 647757057 995567061 998681176 855199817 949007573 693843876 912551958 374284067 669373898 657131932 931276773 331188707 803048916 964238062 990310238 596329966 706231791 782889607 839846976 665032145 895650035 579764120 808028562 166382931 201849412 795855318 848168594 432014508 845146857 243766856 301221254 394079825 965244879 435127326 749507990 906012687 927435418 818520519 835273044 943485176 963308096 500572593 676804305 316582106 511232548 243223404 570571883 211659030 767587311 654403138 777032528 485861559 693812077 444310542 846231948 441163596 791775397 654020280 713279391 726750600 842633916 296394304 971328336 147486358 236892209 334211475 605393774 550475073 980644760 658427984 904533942 216353463 454557040 714845726 937700997 304325125 608001116 376714970 531683602 924073975 969762130 606959639 816973421 328873889 652166117 463524441 617655958 920926517 948769106 121147106 225400244 919164559 972001643 958793160 993638234 699610516 929874918 990946386 998626407 80623281 100559173 642246380 664146397 60943132 956526074 718954125 994805666 549025675 856856558 56766952 67065739 678902058 699411579 731392320 851206603 497702503 522200178 502875082 746607292 65043622 662787300 114133054 419635280 924085819 984511382 345807242 630594933 230136815 939035133 920706455 972691326 516202496 576163208 354749514 747377202 874957624 924014812 848217038 997076807 3478856 999058621 645065337 651475120 947995676 990545566 567407240 574316802 766398623 782831833 319112430 329856026 746137542 952955051 784836738 956868639 665584750 710644037 475600006 820569607 727733113 791471197 888481171 925682597 470495975 639545185 667715468 774743156 336339879 970088717 975146479 978952377 182889726 680000392 703918270 770863145 839806444 859080145 487312036 652975435 748551047 926582807 746093605 760246289 660096719 933036192 890721826 947104392 449658723 746426789 208192110 795832700 905376264 994748239 704974628 802198322 198813474 419666706 687738704 808268817 702119511 930082942 888914010 995164888 846218646 886821740 955263072 983876445 775320700 833381339 749766623 804551346 233208299 360914299 240126387 459813775 624419445 995690645 664991165 884771972 556605202 676314536 619718455 868816329 786656281 992262907 893012759 930697191 979862241 992696949 511709260 878608228 561898859 747631184 245268432 744875301 736721072 951087751 338597619 952905695 213985160 868920209 619589594 972393818 686114624 920650188 589988623 666305070 508611235 550786090 783112260 830081255 928920404 961849707 211006597 321781867 663299134 826576268 274682199 669565542 356002214 561654733 146204349 357623548 664585003 999466669 714953615 835994670 644664918 748513845 920929742 921495900 659224052 700114665 699787027 755831209 61229495 267866778 268699040 747774544 738089400 748744963 636570988 805540130 126253790 936232008 10044469 915227663 575753717 850644217 749931291 768702939 704692528 745112752 238567457 787545579 233904051 342665293 881373960 884367355 41697190 222574143 222574960 474134653 761094146 954519865 39960028 396473339 370668942 444925331 369896348 938009410 395349348 679625303 93183299 857821129 625021086 817675150 384819607 724689352 536565602 806637739 672768569 965433177 395607458 499350642 649748489 693840355 693565998 759378744 828753914 982675033 394619507 755481921 449097577 599949130 809621039 995823692 469268113 829726250 993257912 995172514 761766383 955108676 405535618 542275644 838645979 877792588 765109981 925571304 47701004 858267051 88271264 388301385 578119121 616647541 741730145 874473332 577435284 608180498 576404615 787142829 412258834 859821332 201750412 232730613 81170592 812273654 919423086 946440444 234743478 789769115 252521782 779715298 583458538 733023178 215854845 218994152 833718510 900469276 502542767 618719050 798591184 963634223 361489726 384482313 833329103 996124158 339393564 991687568 333136411 867706874 851705035 967412224 336759917 513195792 527617396 828942187 96731254 773536528 752852678 988189062 818571470 991832581 299002760 475245784 457940187 466745504 325423945 923573293 232831355 550436485 770856268 824803992 15089146 215348957 473282215 739901836 772083873 796930644 549473769 796210850 899093080 958068835 136358464 512814284 929033974 968158143 49271767 345620098 205751436 790525743 99574780 226433144 311666052 499549626 1490350 301626303 758701600 780646687 44616137 761408879 61655203 532619482 857568289 928151686 60787939 145975160 476041089 598028701 334522532 837446860 869118044 932936849 555134355 564826035 73281129 699211079 680827178 727628988 743187669 750585846 773109682 926552935 24086560 854465051 440112859 644629401 118402595 465666463 500679801 666486220 402800884 855024804 907429492 944017163 344573150 511330213 948339335 998343335 952205932 955277920 896057662 925848124 118648843 535571699 922034127 971329204 606838627 829166852 358272812 558209225 409192566 943999953 161491554 529006030 408767077 986119214 729607378 960901036 38743420 938502223 150628643 527581008 601038917 745260809 104398630 114737585 118876805 587636231 805128488 819123103 259690299 446059446 370577151 370960650 833842332 869968009 294896993 449223636 334101471 751192734 477893493 860884685 270241221 310911441 308179287 465952458 199983539 214504418 900933200 939356290 638645113 827342202 227596512 653469667 345711576 436100859 967551199 986215929 171715412 889712249 116292723 160651856 376495045 921449261 132096267 289112653 763095124 952440165 701337005 750160837 639042341 840737314 862514910 979756297 765202409 948026573 683760648 793938532 588496498 936278901 458754501 905174024 748955931 976664570 176742100 629624938 680071880 761082047 588129662 696954942 212099875 594662353 574013964 624947615 298779685 551197992 568634399 838079727 174149886 882970186 348450674 941627373 788995878 807610233 460767210 929205641 87372724 380289777 129815630 136914685 60701892 881580690 109184564 300948521 633893443 831476559 282039668 301896102 81396782 908895771 305328169 448248835 474287799 864932079 345624109 820447408 667460506 999840215 49127300 700405993 307904174 812415392 354636271 776694968 106597201 439120400 244673539 499169478 452624003 737067482 182941028 482580698 429551128 826704575 699226427 706401013 957104923 980136903 674817155 995080528 765335270 959611435 977457751 989713423 22505192 475047725 853032397 897658300 760447510 799032782 682410337 923359675 80228532 534706212 65378210 168856472 301848307 619601797 807603801 848567092 731766849 970943228 230694018 314341735 580708783 710196921 260890878 730138936 149105560 530033956 421980496 903803990 521285844 537620368 713335575 817037491 502877067 831306216 348363073 655545984 164485650 201416756 423104690 849514301 865791969 961557474 501674333 926042620 715087167 974681262 548808865 596616902 189930870 917729281 234930009 611035522 959202002 986339394 110543412 384594799 334550651 895361843 941243218 975798841 588332561 964255522 818731411 940009333 107126162 548225059 770441129 934615481 891802444 928984193 734055243 991461572 450165699 661483708 613189568 722670117 388636631 729583291 928679902 991594936 94229022 653617180 806645218 930463908 399577356 687531186 119016501 122107082 669354797 992209713 654632009 665597959 454513219 499238687 477504782 614948865 884933485 889927304 281081694 904252086 242914453 655715613 649352526 650884600 679299019 730178370 316879056 594472680 393452481 913201408 963778529 972025784 680862549 886183185 8742818 868939516 412976465 685316114 75280065 357432932 552293517 703406730 396440111 891536777 620704089 710216684 80823858 176614866 275109761 790933294 25560243 684337035 840397312 919952916 471742811 832933039 897740078 910850505 430539607 940872626 908241216 974090808 523079652 753498746 945371008 985168026 710254885 745441282 759873531 940997994 879833822 904480766 812804507 938001138 799524480 822282472 500425508 692431824 838571707 886392291 301046538 911826472 369559148 516963425 87328527 150409765 423477654 750161614 852495860 953321137 908524824 975856894 244430735 418618164 839225311 916352521 678882146 897385681 739733774 846579696 937032842 983026318 481250121 736582673 421693753 535545277 213687539 663086069 681143224 890431680 384378404 873170626 103723495 306204678 236310014 394927212 39371212 775192362 430579484 943378301 355303907 432686677 559180517 706227034 110175353 433134257 935315172 983623989 772641134 923506617 970800676 976289119 787107721 816896682 242271736 709331305 644286646 974342738 490411864 868855240 548805148 678570644 558775460 612759650 219013583 828094231 724987807 912944867 344364519 643890163 811891290 913457335 476172574 657862945 456878036 687720555 625691792 660419106 949708218 989247204 406088419 539365533 377020941 443840590 591332091 714364950 219921903 857793018 533044300 858481234 989347474 996787307 791603649 873761230 342315865 963130930 113288528 505646001 335384583 839807313 174650517 711569091 128356407 411773463 849820985 965703063 888264065 913245623 196554470 874017150 322943280 606413454 79868638 311919851 150057768 845411847 288701954 752849178 980867567 986242977 180698763 975792091 875579499 896582369 701271726 880624461 971675229 979336998 158121448 285720819 41399229 345682562 885531605 901225280 169270936 921291791 463840279 785856908 894736517 900167601 314298005 887541400 362272315 658547107 954098310 968854667 832396136 991568726 711516663 841603184 861647623 936263452 640998217 865561484 401338101 486415775 835513896 861665917 461966354 596437703 300408649 874048707 862142413 929219380 381106712 980956962 656908584 998139829 663151222 845761547 333885590 507321504 868565002 894639578 669773142 871382218 113360111 793221343 331800398 998667272 65607257 541144182 620980600 844424368 120953306 918952846 720118826 949200009 352302967 554918463 716597625 924760419 935824827 946464438 345897243 549213724 350206713 680273563 137871693 358425349 965840111 985648459 214685772 345926353 576448008 740352931 363637993 482377829 202247543 857517942 447753274 600550672 589349679 664091122 790738669 921234942 285863199 390452000 814932857 975526920 298394976 857316030 919513613 976724312 394348612 721175345 87014984 410348975 973152467 976327150 411259294 633784492 53902721 298580496 894940078 922453514 437174137 981322168 948526997 986047957 78045046 517232433 556001858 912384986 253469536 930876568 100974507 904106531 631587289 774595441 607339536 658055458 105191460 672842430 906866640 948281973 614314341 868791636 828310492 927460145 659331866 683819392 842844005 856733805 945168108 963955359 199314164 477718226 442047409 626710395 777567404 923442150 264494861 846500605 191319690 737213720 104910920 137231875 6950574 597943860 478360128 614347857 642409930 815892421 910351998 948696781 799204039 899312441 838905073 973588692 569424757 984408422 628987012 814366012 793348159 995050926 875947548 899776269 379638682 659156327 455764687 946046219 259235491 259841565 683216528 825087764 133196598 310118392 897570091 930095353 77226340 309826993 76034760 659610198 826080559 970254811 128107819 347678269 677582061 821494171 885635712 978570242 471135108 831893296 46819570 519449807 232356511 349570891 654201667 743444330 28373609 830808679 903364599 983359286 384280575 791188981 300098871 304124439 588726734 625266832 889821853 955890292 811668228 913162252 313202079 507045766 148067857 753905415 915024238 992280089 269922882 296039804 518328620 923011534 555986011 980037466 352384068 972535042 337305270 674595298 736949640 766215883 794251146 920291839 624765349 813523740 410437827 710909789 437426692 685758595 588243184 645999835 465621580 543366491 126809265 360623117 103424616 167559418 979466953 987927125 801797860 947828600 582081492 863484532 6387428 191503067 652687293 845418148 632644396 732873136 898172092 914322998 581545845 890720156 698299074 882341856 657811139 744686122 181209051 586125228 289559300 323282278 522112692 633941515 875656691 912377086 445781811 616312330 935859912 962495270 300628728 304223487 992814347 993598261 383814239 602962561 892102114 969877666 159398241 920442221 878988691 998891325 702414115 847685921 686506639 795555623 716203742 870144624 708626253 900985909 155994986 663613552 936980160 945088370 230425499 957155305 783738655 985372289 555215009 806027956 730140089 935746781 292135467 392471777 812540937 946383372 294978637 407693246 27187982 743812938 227897520 755274159 125906593 226224941 85970542 312345458 731596807 896115859 755237266 942910555 277854028 956801755 249995208 569439219 660170148 790449500 65534277 440408454 710779421 838404642 219975633 296662842 287453682 691888441 185876457 509592875 383917926 860026055 863836870 868177660 483723668 846253232 514945058 635430772 802278161 812634234 857209917 999383060 357790582 451294108 635990743 774586259 154435842 892530594 397103735 427421971 626644247 748743504 225237900 597341604 489772320 943276184 451544337 834143683 713526266 874067651 928492 452717119 957087848 982126706 927592815 982294620 403618367 660188984 662778713 829274080 168567432 742611283 72497589 88762644 897791371 968635088 740146987 873983629 3742980 953465962 522439368 591806981 535469012 753803698 631227096 831747658 625633636 676071387 891471991 896992319 382577139 676712585 428817690 504968788 968917629 990017909 274407978 644498036 537479528 703440016 752156799 910743556 607986971 997035016 667669685 732951965 492501094 979997515 377487123 651537826 913482453 951987114 762645265 795423828 924294302 982446810 191047800 241350113 403271166 871103583 224492484 890120775 872054998 923296543 35713192 277222809 438101710 708294932 541908238 766495492 12390345 976116955 11637302 721358194 238016264 706748405 839391773 895346563 847508566 963542978 652210406 700466114 177592789 675029999 281218097 294347284 401136033 633151569 111728379 310271438 646039430 897718913 341294275 905299955 53296897 705421830 389038616 470685037 839424165 888870645 943051475 980927029 776482300 933740246 394463378 529927528 165578515 203697111 178649890 787772467 158886420 852100749 875465654 905998780 659602325 860836238 678706221 931492725 174767240 404353748 123996668 292162108 422421589 846302843 726906088 929214007 422338833 717994077 312034251 326824183 858973386 994560598 266566149 697730863 69586650 895313211 40174899 368332793 533541275 781282586 286810720 851621745 110798265 252440806 47686402 534096928 245149420 537924673 571974326 810113273 388750033 505239341 122243619 808515301 623628137 895056532 73538295 253054516 494599432 593802902 286147540 987588512 926596932 927328219 92632123 679137677 87276340 508649163 892010564 923341164 713582263 893923067 879057352 996005400 998333807 998617079 380211057 799648553 411895211 432365851 828296010 906733255 143508297 546018784 903498145 936811394 140541128 597661320 663958005 972598425 368452164 629146979 662373323 926646097 380606473 835697430 576479005 984933326 566840993 861400419 652864100 726388110 611549686 818296801 892422032 970636877 361491652 935281105 561878985 950932367 133770816 799758768 815614432 975528278 904699637 988593491 1269374 345135498 283257814 592711739 728227292 873064190 125744882 764294550 328085784 840959188 89749750 753968994 575975063 995582280 767990929 911769574 948051695 963602340 766918832 782508101 418502703 699119516 485890129 741384966 420576484 958939618 430677110 867225431 162212132 479141062 22070460 711362151 146680094 879686024 327993812 380129448 6636545 855767687 968031610 975587877 462751159 542377881 497962288 600023235 418331848 626603506 685365840 907031349 270110576 681657250 106487583 594454654 763415137 810852661 767002606 937969102 407792974 628370680 213537280 702983039 641225591 747064715 279290898 429570972 4087047 459071949 718911973 983394779 809274502 899521541 749121883 886324307 886186274 961904998 397774563 905248939 816607117 998540882 639715841 941440971 820353347 976627266 277775285 421878522 311473787 471248089 236681913 383371736 552584907 929853621 902380436 947110624 4140721 80561591 945932317 987492840 68154401 333765861 793133210 803926454 644687634 968982918 170020074 933816863 119125928 378195209 171121796 372425247 491576552 904210561 979900959 995844949 797478279 966993110 633049011 700556573 956684651 970874664 52466537 652451285 307230370 465247423 881434654 933613155 536946554 672533379 752059282 844535738 93162164 368042978 984437468 991177875 173405860 189019771 260038554 664873388 672786852 797653203 573737749 701098917 937395372 987493564 815105819 844794783 52205856 509662724 32188089 168547117 735764264 818272237 976019173 980834914 233044791 636007687 190071083 484203678 684549398 939788991 766348295 835646151 276607712 286259901 709645526 733786927 704700488 904437645 697783739 910545033 63898128 453363149 606648987 993308022 103204152 793253426 211815259 497692491 165057834 688861210 34339357 912452862 490259690 686112935 695455194 711464567 711268487 794846617 217205908 347390303 716973121 770115065 570794474 973942052 342468965 534097051 875424079 913267876 929847482 982223342 19194261 460739895 664867603 960845292 880212720 914697491 647011367 899018628 697595562 905914296 771428495 803627549 484199886 959574083 667866691 833610291 392273693 785063028 992332756 995797778 439103684 894585242 420508897 684987488 63195529 509157066 467543925 667632944 189821535 940989516 320048578 866748419 926026718 973001167 861011288 986929384 355958259 687296195 335513360 463414662 965301957 999179372 840038306 985308101 621483055 733270196 12666821 247880839 596392635 919507116 905660031 964480644 750392243 774269374 666247667 724797550 118519671 979287221 210683436 938220621 390286528 942966800 305301008 590132582 515636965 573046469 428967392 972186302 75710293 857459374 331636782 454910333 115777538 256748512 567940106 632627178 791410898 972173288 472070330 631557305 708786986 817026577 614563415 732708830 322557258 565676723 880484429 979824700 58234304 290055844 696359420 871074892 803132456 910729003 212205478 327563513 756770583 792511923 774165010 798072657 453836729 715911667 286291475 545010222 223147058 527594196 743067515 790715046 578200783 617292100 629759682 851441797 132594389 161232584 86353215 926715120 962281088 981753798 138385841 402915650 912373618 920707172 641639374 985527470 711332727 743650894 411477566 948271765 499909781 717389625 615147928 860141170 9530193 746228807 175067367 714964940 155608154 975949095 795075997 892753956 121081414 121651018 42397944 502879973 621263776 855732862 27182018 616153877 291694177 466900482 159958541 403705405 105898455 178597323 736010227 937412259 2748766 598859687 588314947 837429913 330878343 435285692 110466799 348445905 511512134 568841997 902956621 979075010 292093232 578382289 237520958 286644299 624995803 919445177 176853699 667044590 433140950 888675145 541469957 901709833 579486417 612504848 811181683 953997608 153301995 329114521 332830632 489065370 157519903 888063780 331940758 395613527 344172498 521859727 801774337 962864669 415887834 780525852 901383157 904553889 342737814 606314195 655077461 989502722 180046885 386255480 149277959 931594007 608073038 760184151 707021430 947513815 259352110 352821344 298507475 955347112 111312975 761362574 487460149 491266342 49739900 386790839 114786214 650911301 504233180 692660650 901739533 940180158 844644617 852529889 503947004 755618410 471467400 662350657 712322202 761443900 7038305 703065158 16771380 887525791 7511763 504700664 667783839 789325904 78136282 957849005 153670520 281392610 793827304 842908403 669268965 852232174 71883742 837280038 747062342 984978304 186331088 897927812 134929840 665193009 384024379 870440761 826223064 949938840 413215342 910838493 970165203 998564130 775899934 971286898 629126361 859059042 128400942 476191652 713535820 899267844 383327953 569370475 957113348 975632152 45002225 219860151 403053503 812600970 158828958 591283420 365541568 802928636 437951091 725812301 232441698 540249477 876275244 903737730 439935830 509913385 773391000 924522416 354918072 511572691 568152376 856122156 245193627 906488084 48511924 119747200 362168940 877600906 489252978 828305241 930638621 970967417 97064047 352325752 232232815 412373689 79042877 367788225 548997082 954405636 730755317 965831265 689789444 960324480 150873870 648775731 996776765 997251306 963239435 964733855 774683069 880783276 70226317 777564861 827230570 883387553 744321093 989136157 621827626 822638417 832725371 834700331 715782082 990061219 786222163 934598053 130219833 951820156 44593884 346273274 297992706 593164042 960164981 999722988 540424435 955912480 857073267 951445012 168633221 528349554 929206599 993344449 239843164 881226161 301382767 460621159 336154361 652513875 642878956 697708501 64684609 478984194 815913224 834156196 974329318 984149421 326296018 826876641 119068174 987171982 840112433 843877782 903309337 918205870 331235472 824982862 240255575 468114341 683701392 844139188 313491409 403593913 605710809 819215979 627518849 724227152 695832866 750126123 232927878 626223572 718555713 858946587 969749126 980834282 953994470 978916771 832960264 904173929 644534227 781364431 353971261 779090507 589776037 595556472 197871769 662860225 775371978 790139525 432044389 993388223 193514319 919027497 977024604 989363125 387524412 747884962 436334288 488916925 517239621 521440585 151290011 808189118 368539423 618695735 598945291 814176752 500785961 799327933 117642429 145601985 415912463 505521434 969260054 993980541 536133827 727116239 579107774 883234910 609908088 658122584 482196726 967231111 596024929 931070211 780630994 839019565 642734300 860689176 551051460 729408226 675362428 830392300 69825312 220331342 526088975 727964803 246882681 963211450 575247530 940816385 665242157 831662673 235924863 436334573 616932256 993062246 104542729 419870683 331388330 874416335 307441211 920244302 868735487 930802752 977558889 988126540 889672033 914352848 219354503 887732249 601523350 728838807 932815036 974961733 738117309 855931224 631380248 742574309 800071783 992837405 367930380 706044184 621137964 706337189 598786644 760957391 837401138 941040485 295047463 330999342 217340750 321534545 245706955 957417581 451407613 963918565 146137815 456023532 762626986 822958672 209182430 739305271 332635421 573773866 420963480 534914804 193973930 527678593 48974191 140852807 109257408 385481750 119509129 452244206 224900818 709587169 927939072 935914212 8114072 144610711 487229985 852115420 352172091 758347881 961561988 964847363 447297923 644352160 84999616 304626216 240484533 309292133 314474639 595513916 958939976 983375941 763827646 919120661 308320065 632629719 720420219 898470788 694604785 813637139 344576521 351335903 596877277 965646610 18429289 163727390 988345924 990636121 784501660 956477333 750282499 829509088 89578426 552312157 697696611 756064606 89718399 880534457 198843224 541961934 412544179 818418944 493157008 693045858 796296765 917329564 732385831 902519391 70064482 92674974 463308597 853413631 749359024 834774162 267020694 420314444 870494492 986057760 307733244 619867712 955718165 965907752 466134110 772869708 665850170 903359242 638266389 669436632 941774057 961001674 607923275 678236214 387532828 529811022 367097031 795356945 420710076 580032407 504608613 891696779 715336416 740421148 906963016 977429918 338676395 592321441 261254561 957330962 642982411 813299461 346041311 697068183 369690016 423254962 189220766 678159199 297907583 892283559 494781714 597025078 440003057 748046632 397433674 414407414 642217752 687738849 161479249 346361130 975800469 980283046 164456883 201802145 5352840 907072040 829006430 922496886 680953062 828490747 286632431 738250988 430276410 769655456 213817046 757450999 189262164 741329179 271229477 543875517 974527288 979424989 273716597 676409855 712331358 841936576 429752958 804742169 44480089 860700510 453214677 529708003 296164387 465562064 331977219 576915288 484015351 804663045 846664364 847774775 253371010 570587330 987360617 988387910 862169303 969311977 548976842 948374551 345009216 714105449 606358654 763470237 398890943 845720256 605916972 744425663 910033978 991120938 506567481 716630247 865387129 876295146 392915389 991786437 170149334 775241821 169433576 936741619 19341735 587671822 639925983 768433520 235107113 470200158 40078092 834215410 530273197 670605146 384536714 554160966 691314020 891614757 226954862 663491156 413891975 640135870 352478113 850713594 213249465 259859441 732670912 988659266 585600533 745386480 159488711 607368775 312631291 459870565 650076684 894977038 770439339 989982331 741954345 934901918 38956545 524221346 489649372 703563695 465586493 496118729 189521019 270352139 626536676 790236848 580858934 708283881 36089552 526462138 782404840 856098674 169159051 535252043 360160836 948721545 343461302 617747489 911929534 995937360 624709638 875207819 847007889 980507468 795046668 814369931 262519564 847092402 208006655 727392547 834106918 983093232 307090096 379646161 288758658 551437738 980365488 990192686 976715139 997456580 775936274 894099159 94693089 756554843 577405336 683250973 36266648 653986741 865569713 979690406 101159676 488876990 402604274 766592443 911254218 913633703 256491684 555064077 467920523 659584887 468067858 744749941 695898435 829154536 372729060 897033253 572429218 946366948 939515143 969437585 772382240 971390598 85512838 317417828 767211388 835978420 463130532 760775429 189867956 225028731 815606899 822511746 740974245 787507960 902381969 976348851 487668994 732170365 38763698 471816184 856751563 965850681 443119185 570953402 697619152 942282492 408622201 727187938 427196388 984254539 348055922 705061368 699473622 766015300 265937092 288954598 173259148 974524984 719720512 833706627 202582154 842355743 355310456 573513380 311984258 655458462 173982464 566859797 839962957 964140805 593983376 883353750 920996774 975403408 799939931 892430550 824197865 940582164 895463021 910863764 770739321 898204396 312981849 358735051 804521544 999853438 344767800 476569290 501648919 705758183 497446797 567380244 413169683 942134576 995459602 996551612 528663928 902947287 893437856 910485682 830218466 994526393 796056588 918939094 419227649 877290512 920211311 980901995 56161675 222026834 65947548 989452070 484999268 785740347 697193553 903746201 13449562 988449656 370507834 870051539 3752737 779583556 837584068 961222070 89967203 370998152 40895104 203274445 89018020 859013908 493226564 913213838 519900 869342023 644344124 759613215 888730782 989235000 542604889 985074518 939402699 975764196 705588722 714549610 727178322 775044602 715389757 934926861 325831976 835594113 473232900 579217045 626433846 803345999 461597247 479595180 347819115 450152543 110744487 663931284 249320830 705442557 418467395 795785906 574726084 845012953 240578201 297564013 932378963 932634173 78204338 138988034 466053723 640688622 554990787 840492734 87923258 811882460 859190893 970200098 442081372 680783027 201440772 568116604 251313480 980468593 925877630 964339724 52691782 472036395 105984627 819283651 848359649 900478749 481944966 577551073 329833850 975088385 162565893 832380738 183648458 598214974 209747129 422022497 8488777 526467697 50693249 927650887 402687034 614875124 359753313 719208800 416064494 933528340 88954736 732980679 111004195 825866392 433145100 984495428 146650300 293192269 29947492 471193134 948490158 980389479 219337464 983074548 167959329 331351643 151925619 606431753 976180662 976194788 498504530 675481070 749075773 799241644 560696037 845595713 619027930 724172691 957047342 986469614 791559175 996513135 282720285 693305410 578702476 611413303 511091360 872719332 751101591 951022872 783855749 939944059 257712350 929041934 158166196 827996768 282510502 463262215 918518095 985342637 759596357 942388365 512479531 677738595 611771107 843235393 191590297 670080990 244149194 433031343 922324596 977572813 645181820 895028499 329559128 967739859 337585648 348562271 554111819 927637088 102434722 141030325 433805648 436302695 785496449 838341046 636010056 994249431 723886119 734613427 6252199 691048560 697882652 979267224 299367386 419037300 772853406 914637819 307667338 587794675 262647874 565887080 86299004 477934870 51590602 902306479 57409536 139580273 489039983 987184380 393622997 716837595 324570811 754145531 887516838 901339242 964163139 978564200 165533611 773072960 146974351 829499352 771170955 948796536 418535307 420774627 593570666 852563121 875600116 948492359 403808610 549388391 550352401 935721686 844496257 880282238 529222119 828052096 373144839 666925416 395495903 982980469 64324545 915421068 896592648 969983800 696887562 730573465 481099018 707830490 279579765 320312142 656953033 922124594 676008460 955856235 539541068 757819177 650778864 956489571 701066370 954770069 706525443 975634432 946933786 966677060 813146423 863092157 997354105 997801867 28074628 542330896 98663289 550944473 258653631 763287779 743607270 977198854 252986718 987205835 112545423 663717031 76513435 521003058 10517898 557688844 641446078 888253108 801295294 965916752 123603150 561617380 308722438 920987633 385849696 761035619 440337792 542980328 974838230 990109000 587554635 822223814 410125546 700660906 635971367 795301076 863502808 909785997 167720833 334306782 724490058 966776697 873067851 908782881 442179337 521928749 771959986 912478707 705492764 843872694 924154685 934397924 172542436 400500536 390504535 784039064 608423300 880241390 435863421 649689575 839201664 997974968 377664003 691265234 503113413 944500963 303815403 370682593 339451767 769333361 607126637 895483075 130588779 372641926 271113847 545248350 419266622 973376717 129717532 946319218 268603245 644679366 276077421 504177460 356308455 620595163 543791141 907365138 959242183 994035137 592520147 890434472 78738889 85133193 719184179 856249032 848972241 881307474 983227796 992319923 903703168 971080508 653156230 980465687 127015517 509732346 575786632 933644127 996165742 997586543 196480248 268706578 168687813 576436128 281598583 795767520 127394086 265795158 152112842 861092826 668016401 669979709 119578121 835968483 443623678 970169599 786939417 979058646 105701240 494416221 260346116 364905345 431727479 464059813 251339696 492386471 310451357 322109255 378134855 386975842 559335607 854418561 344465860 865423225 496981749 564185275 920424759 961996656 881797758 911656771 823226221 846738711 885380887 980157330 607611348 889432031 648938801 815261092 168089678 368628849 858203481 912293626 725875919 780345902 778559023 986564678 987075 727708693 273850785 678479259 437451993 748485548 418360327 963537468 88365188 989621530 599147296 842220850 4620421 395994688 877388891 940597511 720464403 899432346 70105155 748312497 704416538 716293586 698947791 761711478 317259973 858055281 419558199 984030746 229729924 893824470 400888221 624369234 157947463 448559062 317763218 626007148 349892890 809569438 928973917 980042995 180442688 675045447 123381150 937686918 428235840 947550038 325958418 740692401 725707642 923045782 60071676 727214787 915628186 987589801 447156403 709966457 645100066 877462718 375251344 555240003 414964365 927148988 723853976 924284998 524673010 951615766 667896739 731181587 713482058 805248743 959694714 975766935 575109852 582551319 672218304 968116051 281783569 875059582 804510738 945906823 14498229 419549404 167946446 531079654 441262772 937079419 305470023 745532352 899523771 991466979 614516721 801708040 44492936 601126319 376793634 425998693 209793382 432463837 989660931 997715196 480322106 997979497 204970318 221370037 961677963 974646675 618528184 980569574 835785857 858197220 9038015 134863124 174083016 447267842 408673422 826496423 887596265 929502096 780850455 814965166 958006764 984598828 982251336 991185564 669354398 747435706 415100010 554315991 439757093 476593427 647950226 917130867 901179976 954657330 216552120 980639637 321925357 541020859 648131353 686873204 206484254 490944570 354137526 690786467 37893214 667363950 85524591 473018748 915417586 928516367 620013662 877581731 84575196 126572181 273810410 398159024 469241397 544211345 149169844 537937822 826754293 844742364 628784265 707181753 683672584 938942413 881746817 928958234 273643792 301381496 12366611 652166981 354246939 847718249 706867356 870880580 241839481 383835333 985817037 993998993 690149113 813918797 871342233 960752070 482976498 977788787 515798792 569957471 644312173 698904105 163248629 922212669 705363002 931649899 142688543 530766593 522541849 906898454 15067753 33360406 467230432 912885168 202673184 780811106 384494409 425615591 487834460 731793210 865837894 899511808 203940839 494169532 214749274 567542710 706973316 756906647 436331901 481893250 590484402 975908981 249767342 285597764 635127512 687256209 808714299 828262489 338480983 702621535 185844590 354029738 847703473 987660139 699228888 881537583 52957329 937549518 533721194 919976395 747207894 757705207 534155321 562532571 754883790 892128931 232056665 594545040 411099869 738625189 736933334 776157174 634710260 749117787 1698783 882237382 728333310 977694551 156671046 641107425 224424429 416972832 864362504 902103142 101864772 675089630 723280967 792190871 513091171 890382344 5178740 918672867 118992719 936504240 218068145 960592104 339383382 997779254 38256190 158062040 241029178 967125128 803794675 910545883 987819683 998495179 582308950 910580957 396170783 740244832 524062281 678114857 461506863 561709676 216546883 420479272 58726460 369949427 787217793 811965284 675098021 705096683 566635229 817699289 673573023 791908942 118614026 580536339 484892148 563449786 354225070 707039671 627466780 682313912 927673379 984033225 890748339 923847871 43707344 796921273 316371157 373195028 426763163 507993764 935132771 953034924 789719885 981286337 616966544 790649764 34614180 80527668 897835455 981587717 226586186 796151988 146811798 305047539 628568556 742965563 989473476 995970932 671045865 745602654 171927344 977444774 828036751 942152509 81939658 567674238 651834135 870046174 138809442 231615988 338201636 460547062 938903658 980256883 888011038 972898063 355630353 972666549 636768273 988590944 662195531 862242853 888375359 942861970 676658320 773552140 429787891 953728692 527574371 537649483 305061566 853989675 273989683 781940589 109902663 961485089 709030788 800720046 9149564 46520224 606134627 949674761 397449422 740902819 635817408 659382735 185451400 365588713 575294200 765902863 694768565 887149055 155377433 828372896 365238098 624061116 91863742 114778265 346433938 844500710 430536056 819724220 305739932 802096574 142656069 862616405 269609373 598399596 941345673 957513722 244057648 783043033 727379725 839761804 44376578 336311877 75212487 100028610 669254186 874722219 240132890 883877948 1582439 237231149 249498773 318895213 192975520 452285434 884910541 985229962 437022212 701222139 803876441 913502117 997825478 999403567 242699830 661049776 129679505 923009775 492447910 770546340 927082644 976919216 447789717 829686849 908672576 929818749 575553394 964415302 949904008 954788671 715396334 797125441 594714836 830030263 738794413 997907165 941620003 976927287 96392464 958878806 975137013 985399762 754667860 935835315 77955814 957994085 585141265 736451420 622568966 971007986 877946471 885696607 426037270 618997139 654922835 717527732 408473682 752376691 10409312 161443782 770674933 933944999 987602278 999909847 237336686 769579122 396312732 984757824 858992983 881280329 87440529 92288484 897642814 915121513 473342568 714360260 426715823 934003042 467938318 848235563 901037813 929479845 190940874 772105787 72468645 992663791 244896123 361407239 399552931 749722542 729969127 800434081 560975798 756259249 593075146 774263159 303279513 896080402 678824108 744483155 165314815 330421586 840763792 973446244 747744329 786586558 700619644 878877885 673318797 769830557 874852392 889013387 629414721 919279155 333039943 360107012 100617251 314131901 19781645 315661211 421548450 681645570 436802562 507031525 827271667 926472286 475069909 902991934 127162267 799839714 528560000 839435495 426651596 982163874 605120673 844869799 951499870 955827012 444004329 899022552 905970281 960001839 446447301 950751229 242415797 272547684 438409371 609779897 361498671 722538002 343022988 776925079 416310132 521781402 7177049 873026245 392986840 784885345 215101080 875418814 128847977 190514716 55792211 220009807 272580569 655629715 719846011 962948720 366676311 480587742 159297837 547376826 506759940 845169784 916311101 971423734 960271578 995239717 591537386 805390629 666518568 747434203 188051478 885426840 762668780 836557322 891338933 959151465 188972124 685801864 189889378 992195785 52766233 196950139 294292601 711391303 120016154 806429076 712029255 843758460 871512922 888878248 573936478 868395423 424623400 766637670 641806655 858273354 647768212 823178206 205685631 499951830 464618552 560478429 673684214 976172177 534915368 939509673 714006306 867180076 406422338 815831646 248403004 582436625 991662658 995575443 943670329 945204787 189860803 791920443 973547154 997535973 528734520 862962643 965162705 984770969 859221745 971355245 74210306 825461590 236403341 820380496 631596278 724494947 295671607 646866723 824926587 835692918 431140176 939859353 589144197 799516050 754791568 942777351 660674818 986704934 362624179 773598887 624379128 989527407 411405275 446717101 945894136 951457531 861383165 904911057 16552524 64602590 670864067 846727854 840654385 874407671 246933599 502570970 80072603 107283796 726521076 862921295 99698945 556691981 327537246 385047225 34487022 211819018 96224719 988789304 845431194 939678163 38397817 166800675 959087381 996001096 477589431 814565685 967908649 968987391 446667803 887378331 115411280 940313152 940420620 989036729 822716145 954467463 163072122 167138795 45001156 846385797 880194696 940234468 364675865 921416828 855195608 981974827 142309096 286847703 671957858 901297119 837325706 955512012 318012446 940558322 648140018 649688125 223890751 701467875 631373305 705989274 285720474 592463075 248687921 529706108 870639614 956694443 222176160 542356530 715813573 810742617 807018785 929671312 752255022 828580596 286272841 509521009 898659442 991992626 417365239 678834666 176145359 489419117 548429020 673286477 801817560 873565346 776912010 935915931 453331046 572709206 335991815 367697171 253492120 404459031 910368141 913742095 502897796 834878794 68906280 719773563 702396406 705911472 891003989 962075329 413513353 458220959 787539450 994067517 587413196 635359310 718743302 851689891 530596004 570897192 105669344 872614247 163198330 218991098 471592185 575122051 445359219 916520573 474540272 905075870 459777072 798573757 133787448 453343460 608585459 864064778 176861440 966861092 203719065 474295312 696952515 939909963 586004128 757280822 323147268 804418998 264306775 429275757 159383429 528611868 548163539 564987092 483474712 980584123 543637541 706635461 837375677 955478641 667819278 981277676 275041640 628843065 317782228 810047033 805978591 855072688 431836319 462356444 407818199 590914512 81398962 95301353 168868555 562625534 182758396 636473113 209657084 783080498 599142556 632910198 508278948 882606005 857167318 858875833 361598903 824526600 866904042 915991444 337251753 409112340 232900282 623059476 748707726 753433915 520612259 739612371 85961187 955561780 846459776 862965843 870879211 894879665 255060080 934927548 315069054 760669666 830662876 913020370 735497411 961128920 158594194 472246455 298785509 373361277 978642338 999980585 243945695 931596781 750493176 796561944 892918270 974856082 829880731 967373655 830204534 864130914 139454688 401376774 804772649 824476092 815298100 954242795 866136288 928239004 416154869 759734844 465599782 619334850 448078849 451284664 221071358 696182283 991089627 991616544 768545347 893580626 653662680 987752519 2271398 874215455 359489648 485451364 498129833 628310531 136210061 682238022 453197700 810690154 427271841 553861408 661264615 814469924 113922322 618423903 601429376 697243131 805257872 818873725 778839436 793099743 449385227 493281448 401080684 522749577 21028597 462978025 919203664 957443232 507224518 829929221 115197815 821090026 333337748 360291610 451243703 787839857 236950704 242748055 595833960 989647591 919317037 930417042 25313711 773771701 291382005 976644503 628529050 771391274 85906129 699893369 557416980 805291717 557024139 859823935 96621970 132254307 412833972 516726527 88757972 631113599 465014981 780338183 39897985 627051949 773159124 951358153 444137742 555926376 140253875 953124201 970125223 977367668 494391976 910716340 444482640 660683480 758056700 800205803 727202636 851932108 533651363 669755147 248702288 813050855 474190638 883471515 659339531 985530822 899990867 905883761 86458593 889181237 614532397 789570756 158283900 744304923 394484020 459366160 600534577 747922536 83399746 313939524 544852844 594689591 617492445 622765654 833514580 953494833 504169181 541737646 321960400 920223282 340802669 845174791 835960605 943976754 586928775 758004506 237603590 817326386 6124609 175437876 838398629 860408073 791802786 997468860 484697786 718510950 310189839 677135382 547767209 646961137 562993860 891814707 55447880 188114125 678238107 760366344 469340121 515192114 367118169 546180507 618269998 691396043 49275948 992095467 195856413 892987149 451276279 698528846 856775454 882611147 334979292 987381325 998122285 999782185 418864088 615862223 100904409 813710458 412702132 998340210 579937801 667423967 756913436 992109134 876990243 934702038 934876545 938692379 872376297 883583731 682695227 779415893 190262063 906830324 538012171 676691643 416684999 575463925 560201563 642746128 65605541 813621709 859825134 979197453 169249841 204948083 847202829 986816180 378035681 851265245 623816309 886204257 501625479 562997799 332271812 340651628 553349563 967207063 902844990 926390295 895967784 918210247 4081262 677303709 973952192 989640944 645800288 987549126 393612583 506732326 477249360 521675606 308547214 840183612 846625673 878804483 445840019 560968730 999820516 999967734 54478001 114728541 909580566 932160265 29192328 342689238 465783439 516954505 72777314 737866989 796442033 924150250 903307839 910037910 460648436 983380996 801220081 821084897 984090673 997191754 312682748 876635018 775523495 912923520 60063396 218185302 723049281 765576880 256722353 927061558 168015687 739287855 577636089 642255106 50391439 812467033 528313406 850676298 491085959 769968901 154555464 900634121 505352057 902377259 870916695 922850838 191692327 729241544 85777592 472509722 139115888 802034424 584766613 752483195 66951391 982277264 215148796 855223578 688509385 824066048 936405282 945072725 300453870 929776411 299080406 856687978 768905702 779887608 440291387 716436378 64472005 402781074 590749270 960703048 458804030 467721497 790525162 916376672 463850265 993321611 917150185 981012315 568605498 902096187 985636428 992101922 307975124 867497588 585919986 974643835 531236371 552048067 301366841 975914261 601109329 793018477 47781106 674297812 895814883 948404299 42051653 867111844 682001594 743133861 673279226 980288787 828676295 944896949 607433610 946690216 932168595 996240874 997751719 998641596 990572866 997491111 614732594 862854679 931061622 988606216 665131676 781890816 634859772 925901412 573826286 680280150 678033223 742640172 77988338 905719331 265383058 744325992 447265039 998916064 500795442 898097393 711650882 940377376 344888228 402299773 962884223 966247407 304752116 731021793 723541672 793590234 202054411 587214479 132550188 906426783 738574639 835803422 721822291 905134995 327143962 935717885 528412190 641060217 452905899 823708913 756281828 860913019 78141655 497579292 38321412 532389910 180034750 511230898 28279819 510317782 945322401 992383170 651717476 657408895 157289451 958474554 25673991 953041614 243923759 633746015 203215434 481170143 90591759 667128513 139093360 813880011 715163796 728788274 58136361 403449485 204716369 458660810 784890613 798713558 823847375 983657468 210851038 897077727 556098955 840028820 129778637 838833942 645518100 977554519 267293492 496522926 355434900 559315618 235123625 783095141 963000325 981334362 442071465 611988432 488796692 752360462 962636739 985889957 757359810 849509229 299775980 343869607 304412946 784087120 179450866 929999231 178588638 517578774 836629195 924086618 252321976 360174222 23754466 751151592 600751877 672154052 54523989 376024858 189466251 344290918 992265101 993661975 786276536 795821102 692476196 938446737 104693029 911023775 182697788 228008156 23241683 128656094 693757071 801349888 344402783 712359188 491040367 740088916 270070549 954845931 758550468 890576303 438812886 764176373 444975161 547764967 128823089 580873044 718289394 746623006 368796631 570520774 546575408 748977995 721381588 948380686 345720932 858080145 943720305 993220085 137859276 246183198 950994908 989238669 672289032 846674874 357286808 471696658 554113265 566287810 179658338 265551913 112504581 763653602 258196670 690749499 662371008 823544657 995374848 998289193 804757707 825377380 944817902 996315472 614966117 764618413 992065539 999812980 835050970 883043770 676169424 908123006 399903937 589894008 398388518 797819357 429643753 597049147 866309801 927449864 899893372 978579241 152001040 834343363 737559168 877248012 590040424 696673284 353541472 869658675 144192277 436705623 81126608 785464472 43072824 950882042 294006066 897408257 550892203 655029968 232512428 981378199 448598007 600379051 135371888 570940483 781899773 826510197 835961904 952231636 54961507 329102716 102367893 987366993 298615338 609457663 837133337 896671803 372457202 670923566 377621940 777305716 481850668 731272500 18719811 640369010 172493984 987733845 773279148 826432010 281571331 881125907 927687981 977013968 728906663 853770487 989574345 996106364 604526350 805055024 486997213 865522842 76255404 350131858 60312886 854614929 360677650 944930215 417936191 656345346 863795310 877016100 201154925 925900232 480338845 923592922 563701296 724355535 655209652 894029930 929429439 974350118 63781490 295667556 469792006 519541533 251318027 795955439 302826814 765196342 197414705 501279409 696081663 806075668 660473860 933965365 494074105 767883703 67856098 345671223 702855685 781696187 446702541 748039438 497797481 651529029 438355976 663997040 28216831 367776667 845061675 936493177 672258067 824962300 349346989 845574429 142488223 502904607 396449376 572968124 726698032 821743837 983094214 992395558 368513560 714701904 29512316 993778359 68125907 353731240 869747857 954785796 294446496 495349080 316308839 651197043 6597077 295558300 217748964 624244263 880855207 893616987 195031815 570227661 16055589 453794051 929497895 952797933 655872732 865893047 601813371 730791266 627958631 841398972 744818674 765273191 677896189 792124605 735024331 885319530 890984296 924269982 498530640 827827610 325950878 771838238 600567491 718129229 313926832 501575604 910063077 931066961 24164424 873567171 80252667 569717215 264558652 372520588 410713827 771056737 15289233 643134989 6427256 133604174 364880663 868726082 175356357 264976313 735893111 816387106 397667403 613169981 732883727 951150013 175829039 770046576 981383641 991218884 103189483 619274226 329335196 875566939 777730921 914196527 464805161 822823633 162355756 301705892 142758937 959018337 209805806 476632670 892727806 988965185 856707270 923176533 242671046 524995528 934398810 935502803 55240725 404846273 750650754 760543267 765077474 898155032 31524813 984448234 775398491 904674774 553662629 863220647 642741967 804868671 564848350 847601638 356925438 926354588 329277207 499986976 585655707 936859194 110625808 354353935 11362490 226493058 117592517 132144845 698114292 758092501 555010214 722806672 780388485 834925409 622033477 960512252 294929431 442391209 513925729 691562560 860182631 882846682 786312052 789184672 224076101 307609407 475953603 960202471 971154131 983813914 702600164 756919951 871884524 951682196 294783336 421351778 758165031 972571776 679885065 744762503 454109734 519341061 922880616 940901149 263304875 436811042 600196512 742377572 177765980 494166122 665532243 980798318 710556577 787298403 145828638 217437410 321255686 768308424 913885903 953931110 374091241 767569218 167546963 984547298 132218233 204328062 7102019 396893009 28124796 692665640 609086459 665983260 41537808 962698572 739376710 958748907 368351753 950923266 772597787 880357487 317616902 349159014 756186982 863558450 516406201 795316348 935144379 968539030 619205510 870846268 955785100 968580054 617258175 683687392 178969386 620706652 436114151 669931465 9647055 624401558 579664968 753398500 228969956 807894803 978248177 996940427 147585691 726870610 550743183 617491264 517056084 667022892 128888638 597700626 685871963 765326916 642510097 983942273 584819672 829240389 370915212 559671152 896942642 943248905 326594802 840764383 403396642 915647230 3659067 268433503 85991793 450373767 883665594 902883831 453667401 664433979 606100220 626926629 572727949 717054116 762309340 764908420 196960009 242888000 575599542 987352032 573591443 956984992 495190159 988502427 214731456 678430624 57528769 145845816 690735157 931591500 949433789 954190530 162817641 460430315 284966813 872629844 818692504 850286275 124831102 667871751 915435957 997359128 701042401 967673322 391134091 953540775 382901065 978178171 321053208 810762254 622922015 799736753 902196773 943863480 353207636 400886651 94299519 890078772 671244537 928229772 878005168 935702919 166547861 757195252 349399438 432710000 254350667 670644746 613141505 987884977 979501030 981512479 74627335 146490868 967746625 993472026 679448361 785122075 703143064 738088450 924827556 989555603 872558585 895157598 616615796 780936542 829744725 855656892 66544320 855294788 954127465 973589421 654049577 796702519 942360440 943447288 906264852 978496074 471698608 656836958 411564998 869829382 354446155 552690871 756625494 929273381 580434347 790476089 563840142 862957961 212383621 800016586 588456441 634557603 7180663 693744946 864913305 893830670 340139359 890262072 909671985 986769785 55864897 483085570 233737613 583442842 359063997 953209029 361250545 656918647 337387510 978801972 928167493 928816185 278396006 859018853 765954838 769538835 520541063 802854557 678894618 683937175 49805934 975972637 383456355 689630662 906959434 951130403 528397986 993164046 995749027 996628039 596891014 719313235 418411326 664631866 62254983 888317661 635539409 782313804 699262450 729008109 280699118 925568358 593293990 974156481 531214829 971960879 746161241 977317982 891194929 917969608 116066922 253863477 87620015 787328398 237872209 501092390 364531674 795452572 264013733 338299527 230079903 960869878 175190724 845607491 498190250 620350068 893401297 961488732 332923986 496109639 713770511 726489186 769734171 808998990 310395017 712667944 805713352 907596104 701299673 926904978 210917107 517972766 178190275 903684381 118806764 121906918 628844069 788409540 495857628 584433594 892967718 908735996 784716371 942868377 766745500 886136658 592340071 948657354 951882052 985403441 310140577 755885719 728335942 926432974 804566898 894569923 107892127 541431695 754907953 897490541 97881672 764944001 726502340 842493495 103553557 395311204 613085857 802344987 474716947 998367820 696770245 846745108 444306744 960251354 699390924 970081854 146783726 870282036 711467448 967151151 768334374 895343843 666635828 824141810 834041750 953014404 527576482 997315154 775369779 881021317 379862076 914476618 312532984 879551511 211823381 729577985 177182614 399606644 528934122 784404174 981994689 988849580 928412702 976180688 528591642 631010242 723760549 734397053 536223774 965298139 739778356 873895817 275528263 402580095 206531359 765592829 713125801 826248095 116435433 554690590 474632733 907212356 372408378 844600925 207770605 716066133 390832715 799048954 374353895 522379498 762473110 914934246 99136014 432365829 631484352 722250874 626989786 811229475 468387830 903690532 658221101 945089271 143021090 518338687 410127117 574854800 859160751 956337815 159938118 778573222 431122793 489026535 642420579 872589590 438844110 636288062 216177040 600627717 669121209 859136527 322416705 959633146 231182099 311009122 37134652 557331847 279402471 424306364 892905734 980880586 192378541 677526719 450873666 637726192 286940662 764903042 674461357 676311783 476145189 798554800 359802692 409238913 93451439 766849681 630552045 635186819 345564489 974742077 219421146 429034501 581658419 719053686 517194009 883858997 90743367 897252336 68057449 457826026 569112062 584604877 650767404 994909955 744597314 868561814 183660528 748762800 453730105 859546078 838960823 914211979 302807239 949233306 715872183 983570548 140345599 732889579 34832606 267923620 563928323 860755049 995142681 999705259 747841993 913498038 911375942 989950508 958592393 960060966 444671187 888806960 452920105 709252556 755971739 834117712 923001235 927805913 995175392 997402462 641699577 787053516 755494185 836875049 880186896 927643840 782062759 917182602 606444183 677915854 4504197 67456838 553873672 605656028 556985803 643996628 973977464 988251295 552686258 865318455 899988479 915389637 771488241 998611536 555371627 599000454 7938754 544099684 271294890 687309342 462843588 724895291 954741955 977645207 60702559 396190266 608989731 635648851 244004339 568195002 983934235 989370222 242699321 371964926 60878733 854058311 355180879 961027834 478980878 951533614 617700303 718512940 898436532 961688803 422268770 579195734 866915648 930551183 581572111 788421420 422804170 542006253 982453569 985937027 619936001 882535002 270685830 443426694 703083355 965074710 245560859 833269964 329576380 793842376 703883749 875121677 879991929 932576001 733234097 961344103 548058873 699423597 66337355 97410439 480130387 515594523 678740440 954408826 502687818 504601383 895614806 895840237 125939978 454745090 228639787 927966949 481823769 519855962 901658562 918630670 691628845 764736877 984106509 987497104 570002914 623534552 755929274 947879346 767245223 781965817 921052040 995371667 708523819 862306701 364229131 704751351 444645609 461109357 176186501 896211467 550547839 873262869 50550813 789419882 26173690 720762171 196580737 347343180 175789698 528791948 310775949 401004282 62599591 700365460 618861767 740200742 781121318 881842354 280891818 786262221 251120049 923335821 81004837 192736564 825920484 950655912 195760518 821286645 821865488 956821229 722761800 729321868 56617115 284801206 93605281 301604675 870354883 882415843 712238459 756297590 470322826 591693720 353948839 634928867 585151607 709674902 83894257 734704918 456450769 572596346 263577718 490954474 175579491 643297437 150299582 367979990 621602076 748851023 369980594 818423020 312324908 582242333 454738233 986848953 964251680 991036407 494208655 822968703 444121857 543323080 914857467 973137262 247854017 975994169 699959988 770682102 287573297 553447472 633797408 714934794 143213509 243012233 968672849 979606658 672295085 859488835 702250868 857982280 655207530 848540726 737665938 988763223 130718031 602961258 20521895 107310370 179546410 780730591 55892224 400156529 807311757 984860416 73905571 421443287 463565289 519075231 505344242 837085628 527148846 555957955 303625643 818697705 44981011 846117188 882811952 998310165 189763564 441502764 170773445 771844758 388306158 548548709 92681287 819052052 696455929 791148035 424941195 877554866 332808075 797881570 405738868 467156588 525519826 768103574 994265083 998450702 947692992 996760169 515484183 701916297 573628237 929121387 1352354 956836276 873535324 889739366 250421764 492915480 265566629 691448245 390536841 964025910 378776380 595689425 415329127 734312687 3645109 314495377 776973043 803675984 984111104 994189592 554256737 904557448 678434558 806736823 167763535 340121865 423949056 471250610 841740921 976792450 717129038 950741868 232973257 633711845 594053733 687019360 947845483 997727876 309713028 311799474 921875516 978667469 820282799 863008532 381658282 820041838 261628720 696054356 616333761 706358130 684553471 812550132 321779034 625283883 560504211 790160203 640526708 902622261 499977345 975324267 230771553 374609213 562305987 736483454 440744915 495775278 932808036 985705669 687573404 885253728 346535226 362811130 30335195 888023179 30403512 445905290 696952141 997551679 910087027 912328232 863653770 907372164 476348893 655799132 665494484 909848902 585764152 809288623 388064504 562397955 663578528 939175379 344070162 760035846 431261777 727844123 359787643 556586483 219433474 556631972 617711451 742416932 881810327 925110763 759524283 772690044 850168256 988151874 764440360 938178501 650718518 775622681 832521960 854585212 870130570 959205568 827081251 983366954 988029090 998749202 589486428 718977301 880296540 989262819 495150382 974032609 136552592 138304556 937099896 965188589 817855845 955046197 882461628 928581849 426537901 549625775 4759256 349329892 497807465 945516110 785831432 813818825 106687734 907516835 297451066 854864670 962489292 989655096 348280248 790330840 438943587 459670856 663534706 965258663 194948139 356489036 371116205 542146261 704011082 831054664 20136454 625265676 609554729 857062284 622576050 713556111 118747059 623120921 313793543 874120711 482796964 966406640 233708795 948175540 116310406 895504752 35011906 221387272 51679155 953576825 359714209 947586134 809576938 973101917 49668041 778282283 346826596 771679999 273215522 949247146 956253868 957132037 338440734 450852875 315222423 801066527 664066252 792379416 367693364 820802529 547564844 996185592 623544035 945135890 740206367 957432428 54029819 802326594 967241711 987350655 992911810 994898689 280183504 649293818 767754979 861469693 454534861 741716694 955437325 964020706 281194536 463515403 129192714 481805720 186918060 426961240 995278210 995491529 881948180 943747642 553354622 961413161 886729454 998222933 394015626 533136139 516701190 632438851 538282629 671034684 775414304 907240580 920485113 932046541 348631249 425045957 40410745 631314765 987551893 997632929 355142992 825840945 264886514 448659683 311998055 389801390 679568522 685934948 65519353 919736360 253916410 758107933 744148937 963546800 783015040 847886612 30100461 821090634 438790806 484778767 956550695 988314865 655525729 890851558 853518805 936155944 379027149 430913633 968707629 988794133 80217625 597094501 426339059 810337405 810779741 885351211 963059733 976050556 920121252 992518318 824478034 834293301 793531917 853094558 420121004 880666208 617107907 948854369 921978574 976523079 922395516 950708983 395063957 852836318 8740638 228634427 563094523 581414702 855459981 878431548 523813910 908085249 760582858 801303853 524791738 600618998 109413094 442680459 343646129 660600104 897467291 933155771 382082743 789066362 386123918 828125114 574433805 816589964 231442993 796881565 17999570 530731715 166825668 183207658 198241823 747128376 90383240 400026823 729246689 852251918 447753440 979963178 243200972 289937703 555660422 617266534 146649398 215115039 846015413 984926151 373310772 387455292 813314954 962615121 369839168 814507476 557702232 786205177 736932384 984792228 772597197 847101648 238606258 360668019 906050778 954065718 81564454 767404800 463494606 501439929 311601721 624206048 923599690 989354317 535561548 881128129 650372916 782524144 784562994 809948505 526616024 945356407 35142423 115300644 94152747 698176385 346640874 544031655 26006189 492352714 193079295 422569320 126607447 853892923 655372877 733042773 518468285 922155844 99748199 775824610 87548331 979680521 338326115 697295531 534068520 894996144 797204126 825074900 399445312 886111568 103189861 618336337 335594425 750076198 278730437 814280411 666539772 843634320 169370183 952368799 159604748 951559889 208547982 772272553 106285481 840884988 70198723 226487171 904603351 938951849 31989336 36331334 521486768 927357132 468909422 497033705 728855554 787811351 375329363 744565046 507436271 991529389 668052105 799645945 664890118 955013494 671562509 739029721 367413475 704329546 269302803 705520309 865450503 896912180 741850317 883009942 592512208 858456888 289567652 953121274 433746978 518646612 801417748 918915573 377844221 645773624 268718149 812267275 426102393 790612143 833176825 899769636 539822846 781167341 23669030 758333917 485122113 951603653 906215572 947603163 245274971 634474523 975307944 990137462 731959687 877381492 660967414 816611062 835743605 982575733 464630940 578978266 820574670 875259055 553289251 838414666 236784929 833003130 487177291 782242346 277050331 782817676 983264058 985775616 749325093 834948118 174478359 571560205 386852837 630757518 84219090 133309944 838216746 941037913 647994230 926116889 704674050 964020508 384634344 442422134 37692908 477046652 781950097 856242447 508539312 568804370 392586513 735959801 579278735 687785014 507344871 568110332 472078965 692685757 442218206 597965636 463100454 910981931 855173424 890977921 709281775 915281132 351017032 506107750 954624794 977987557 534071747 835478845 907239470 929412908 954368237 998292870 273631581 384709589 8850883 631654370 506714419 690194064 654724207 984471732 715343157 822639257 456188647 851474523 677079704 696461182 936966291 996424839 325616188 399705394 600843758 768684969 382256188 554882886 870305810 879386106 259763448 912092502 162739223 418616685 588028656 762044284 592784170 908618866 362009681 659777114 60366971 881855443 964991991 999681557 594191749 743295713 627639463 736527704 315800111 646853026 743902022 996698763 35559786 947856013 845523622 867287111 549306249 549917091 429937713 889184944 938322244 962199686 640344503 651998917 176911583 396062902 660353733 987373674 892986875 972540249 429936523 793923314 839377218 947164159 797777986 821878326 172389402 567779610 799191290 878787110 839272568 865012438 167722608 178185460 392696269 450781472 314279768 423446166 295589374 775232340 267669186 774936785 418278211 746589669 596405232 717585492 585210530 945589934 10156393 300613784 424300142 727709321 24905910 110250696 259961839 322144535 654449643 943264032 26397000 813168712 527211779 667351290 10915766 359687607 346167396 560798636 693701855 719666192 190140570 594322019 6063039 457749782 685581645 760617741 464883528 695557411 907214218 945351489 589047559 672966662 163105744 391268836 864204917 990867805 411359962 816700217 493147368 974677142 367979932 643815638 910447034 940316774 699495470 756159381 356306305 560121893 876723263 933189660 19831279 679256371 347310463 911660416 321585628 884532030 81736370 989678115 559435013 598290256 213159746 322626991 889642151 958176992 956181518 993683162 133390157 405731316 315447825 717146384 94823874 347880175 451998897 629700676 968064853 989764498 30484367 367174591 449587666 957778950 14087599 263510062 229634345 617775551 400557457 606699949 35095248 805451437 695986355 810758333 132755366 684133339 761498241 907308693 917590262 970327399 279046732 384729741 260482996 732918605 874355881 901929471 27727311 867610264 777654600 834334557 761638590 840509327 104981051 498904479 486878536 876960418 920164206 993320858 618502789 793181137 291594293 369113970 317302838 468165293 410162208 774794847 625075197 745534034 440764537 840685076 386642544 939776150 967697012 979065389 370136980 918739044 69844267 696759397 494558542 738418705 338390837 953720439 345293826 761684718 955242884 999572318 673939113 957511160 332515152 503389838 956223527 956549349 512101121 898504289 223193225 605122353 836345159 950722120 546616211 808091966 494545222 848930526 88086304 153236765 416499498 883122620 483057909 727912780 169366454 187429435 440881501 449978947 749678106 973902140 298576711 902301129 857562478 999855155 157713837 945229066 843647025 878373812 241830875 918158988 916303573 971774269 87437483 555753807 537309722 637544385 264001753 961019756 61864023 297953043 139135041 975053080 571682529 576151515 399072420 709025649 10729813 966008844 638927893 662056770 115564265 861226585 421414426 807400977 43080906 50510426 521926850 572320469 382010992 967170724 472123174 947694704 179608095 595004182 560024811 695172533 501368371 627700350 541545056 914891173 298885501 495337862 969257591 995473336 459260943 904768764 182526729 308805572 801356515 976080440 776091986 986685978 82641348 252768995 141208204 680921258 720186355 988673023 782991290 842559291 541199077 772041965 850141915 970664771 672328266 682659877 947184862 954230388 585291176 962532274 941226489 969582771 724975328 851155898 392825912 764241343 543865342 661146413 32529486 811660250 311976687 346542734 413679736 900052608 560531639 592781616 860633785 903251173 916211774 936480725 451247146 573138994 194843208 281048374 572967212 771282455 16338967 333483112 406828378 831010597 266097572 626682250 580723195 850234335 189978611 326079693 331464300 926100207 580484099 808009158 817011476 968292560 29648128 881032243 10564026 862450472 540404693 709871306 393008321 573487864 800909871 937095177 434821330 843767226 620849106 884610452 90105228 747058122 749566221 939047167 952771554 978728793 28852204 346936878 625457981 926045594 546285984 915884925 372434223 589006590 928174504 948810867 737274727 946594338 376883349 845478964 442203494 791788534 788456877 901357902 398461923 423094857 852020517 964529178 798266153 832379221 800969066 935694041 36672693 352279387 311566147 758153729 556091257 964004281 315651133 695838693 28069439 937124846 8254311 493799701 445569974 538401577 833240931 901739196 365036331 662538466 927936594 998355398 202926088 621237756 560847368 883850717 861732167 907811827 281630548 423888641 461893083 634363859 486842589 634546436 94742635 217814714 425305792 980748843 336094399 704632777 938622958 993901813 811823443 882651572 238285783 598347092 36884134 63513852 39080728 301044444 451144008 754460948 808384684 871998121 568910921 698672657 698984878 805498960 128914068 635301264 6003640 335084969 178562291 595704642 912333865 967346532 631760350 893169154 352055837 613927878 992569257 994710680 217172548 296767317 179876318 684158153 903464771 994264695 716177459 938304654 786893110 799059549 913813040 918827200 475783151 984812628 775765638 992394147 3078861 240634565 505741499 842687767 690980506 829599576 304889355 627548608 377183143 959853580 559630922 585209249 6937985 205418306 379049751 694701989 656253889 680926581 487142496 643074715 938877800 986313527 865076859 908272712 158039989 535842853 822457114 961863797 933349171 985785141 602594995 756718264 589641066 948442660 683614957 749449616 977304516 984379128 589003512 650783854 713958124 793778865 240024541 388829743 230552675 453587600 184851518 486624739 505367713 744659346 400592294 406363370 147627474 218896757 537752290 606254819 213546012 732028665 60948749 559569101 78801560 90370214 308018790 935673134 615053026 910497301 72277167 403863583 346666571 362047823 168819508 756403302 70541638 337261151 45864970 912547236 299452801 554110189 871667001 934296549 880307402 998639893 520894543 937794835 950345996 969638360 636415768 965070353 7696674 492829956 238702830 742518878 981568703 997969148 632955055 657802042 987776743 999788115 475135957 810212495 568096198 857572098 73885766 930565862 569563022 933378068 824183089 851572045 9822005 276215663 490565912 523528468 968197853 987780428 276672616 449375134 508579104 510974736 317176472 642450365 325819129 957474793 464020485 506300434 403519238 754964210 821663919 958599584 515957564 646065988 476921708 729095860 909468538 915933348 926951351 998959816 60695400 580632869 771482337 804922128 811323440 963375258 50980731 729346922 608683139 668223343 303712688 664245245 821125279 996648745 536011906 660407934 262139400 620765458 956086783 987546398 437420647 796322248 329395054 528074738 984634871 989544484 576595777 716971239 9334772 660236456 469411548 783250099 435280964 985727084 491938190 831796978 702343981 834657616 100339408 426754906 160108200 576727120 835856339 895196528 837218720 945815405 736891135 743611368 931335553 938675956 430866868 964115436 256299947 383989351 783265076 885256119 353196578 454195495 24931522 32538142 95177424 596765464 415263165 655358852 559879854 788432006 591966664 983004772 43015968 178639352 719735278 896831181 310456754 698635375 564931459 588577254 182032682 996115613 204338637 298226457 482924831 921096896 389100058 963893072 7145302 665212717 691104411 703956253 980235610 999045611 700497789 730299211 600877425 863222656 287398584 649329871 50919107 922198922 301650645 656029315 973000970 973747238 796089396 909732401 679483174 992846643 342166204 421867823 540590500 596005897 101470268 777693411 711361367 781574624 518376954 568447446 977671143 998246265 809380647 890867599 69331739 847051963 459922085 510357530 949004893 955588370 136502424 507223392 571936356 798356577 912333249 977467498 677354411 937073534 611355807 757665344 56091823 616708574 944950429 996392851 123975303 132753814 88170855 942472540 447455844 489460276 253602897 699362980 593613638 903536580 918433968 945527840 306707126 362529615 813129227 974179609 115959652 249069994 67001947 375200150 404263342 798283934 998619358 998658786 898768411 946211903 165619584 329156429 23359640 465904733 723815614 962415050 884543591 917814690 472483652 671718040 798930103 997579913 840005498 850531802 314480699 972919646 736922247 820368513 427987786 576458587 795604560 938590253 695439200 968532434 259476935 561019904 608247727 832862950 282081786 731779555 907882127 923691563 659645764 917017088 903889350 928416538 227278147 659004911 363607713 850796480 168747090 898984505 849273807 949434985 973940945 984777366 925320791 947058930 620302925 903504951 192939626 302021884 6661705 69098423 22799876 38615292 418825539 556148793 855739704 964712284 248953519 423005394 116065202 262732050 255766762 607876365 412958754 601453894 187050185 862827214 102361634 390993593 238323289 281891245 806085066 963587738 718620193 946031968 645010410 940046776 648709063 989910660 282076529 428104199 691959116 732096054 646550931 968080406 941575575 966721536 713876140 786527047 590207297 858659325 594111345 813167475 779557958 997232710 863579301 984252017 329241029 441511904 747604121 957042561 868786963 937244400 273531356 296463871 525924946 554994176 411206934 906394240 213154709 458048200 608446504 642139358 745546888 820844996 314730828 725143044 336725247 942948476 337907045 693030780 836879423 977027571 813193526 978441740 660341310 705064572 510667184 586376092 1153501 409988979 455590324 693846489 366866893 807149956 339386020 872090389 109845701 748843258 465254780 558449440 170019747 471897946 737682092 878310379 314111192 831724724 384227549 862540537 30078047 931854195 583100269 723813812 908459839 981999624 810509220 951767769 360696155 664433974 437689241 734619123 150365910 442457295 438536393 465584660 590677621 844202604 299970579 740389075 34786489 365678313 206407925 831387582 896417784 900016298 596793260 856994532 802206574 976053102 700666431 838837538 770934896 802431888 715705343 817138079 574844988 853294738 331129336 969004425 106870369 189536183 927080454 935819960 105237695 607481836 804775635 880196523 536473324 953312386 594025234 706405730 631113793 796035897 433626205 918988380 287204176 349362454 192840199 853655463 119985138 710576199 978220931 999470255 738810618 798360322 459927751 596817566 352832822 890301538 529770920 573151907 201804622 980544516 299172703 661186600 864849452 893402868 811732688 837391616 509590318 526095279 816546522 989633314 246927597 699023493 431328224 535181009 877449197 976194219 547161574 757267938 9406012 464660240 871908990 874682407 559642373 600531106 546494150 926224996 577950945 634619929 333689701 954868142 353387028 777932922 280259370 293684952 934032507 991679128 92800939 845337145 383224740 934131152 271605134 349381739 459714452 775708019 716988275 755483457 296283341 846304799 949319125 980526704 668223898 802223478 317141724 779629017 531462519 560000224 346090439 968098825 346783463 784695026 468621026 599016633 885012227 897618138 584858445 611413663 488919071 769739703 731418209 982125461 742359087 836322282 860274775 978917726 189403611 553169420 889863270 962682177 401085718 803916738 225013536 988609052 301071741 421342688 2968005 550942917 272264712 284541131 210484874 666878438 944909105 959272716 137757885 377157104 143574000 154436801 313145785 318067553 286464885 866642125 114372657 845024122 104767259 817794475 59062810 417255808 671030011 973794278 31056127 455258549 493025949 979408968 516098302 728626118 605858057 825128844 43038028 277651618 55436141 519686306 629562393 773955938 369608409 872950091 644799140 671354872 902780702 918963085 343561311 434312580 27568806 550778910 153366117 772432506 876354651 921419103 71941788 388292391 706154256 736230745 930841990 977524413 99776933 909244508 25219637 41437670 615611605 935022121 981084661 998493922 642218685 854849212 706753390 992002126 74626306 906289003 336891556 544981486 749278378 973436510 633926662 800764316 930506350 992951785 686472859 781905849 459383672 669099581 379442401 568839926 179727350 241525536 243153646 944844966 497104565 766556546 553515931 913161416 262454035 771893200 182072163 214537352 961594428 983207566 223933110 488146352 728410936 915270029 131151994 636002700 356999986 956504089 204010094 597780532 52689401 280668417 795549308 954523404 973694403 993176875 852743202 925228901 788906375 888139603 847699192 992236128 824238217 934919232 270319084 563223811 692506484 952375927 286785074 999424711 194441620 604979240 738995366 924337341 943627155 988235100 668809025 839442238 323969799 750223314 132116929 312507895 980973851 992769297 164380074 418929615 726757281 836954224 406025388 979115731 440853436 908117104 120954582 650879855 319053266 954701788 640366475 847916843 699678626 922236939 981539214 987336591 889023700 956194165 864764256 964857870 330106900 738130462 891716947 904862749 15618441 278737931 902721583 952521408 383480191 442826002 58126559 521275080 575022944 606194064 165965870 703572829 770328131 773741559 734204920 968063192 779572285 887804431 780688040 807384341 39748576 937137647 431348407 818144649 775847796 981939941 348894639 770965013 255271872 521964039 181026501 559137539 72460121 168682677 922453913 951446495 958606238 991320167 706855600 909111561 763787651 941276411 188712434 372826997 559479332 606623236 74592430 304335150 368195210 727867408 46002988 969512127 103265011 963290909 195631057 789507571 314547649 390310053 31038817 552079383 85702471 511785849 681058377 687454398 834359514 930173912 856900312 878714024 652667172 713820436 472250889 688107210 522380874 625867388 660630722 996355674 83658073 603470971 248328456 322684829 11766105 769659239 66344588 252012085 797745653 911246912 755275255 969219044 748488843 888032380 762730225 776745667 169943571 890966294 386016338 941022951 943084992 946551542 331468604 659852261 553350493 735784080 943973010 964690814 55594490 718060945 534767886 896636731 859631778 997798164 163250407 585042304 71285794 514493338 50927086 997420290 174401524 547049063 355853103 718733338 319406801 653038243 503847658 533931819 237176659 450074125 432783784 825114080 558735026 690619558 847230966 916244716 539548403 752992210 510225434 624983055 355718035 679695987 57620100 404970714 782053837 844748692 705995334 833081684 500428038 817854809 539062097 994065091 493258633 931745367 210495291 229759551 135318183 695363074 777502966 936510628 453950800 833429645 258621329 625265576 819077142 845876494 858549264 899555280 346215681 547099496 491936680 625749293 279774480 806402500 601817093 837730117 936099660 945133723 46061058 581226904 78281456 927897230 739970033 970962311 768243850 907057650 296336736 505965848 666635315 681201938 569284963 893768610 847184120 988393122 111100070 701094804 720824466 783162443 552728379 901243059 339924532 463808197 366992778 739953869 767563060 895724903 788969409 935950396 367642934 525070407 80734574 281402067 602740342 633329613 469524115 625735088 589227109 701173639 169987040 881942632 602375198 900910745 271912552 688116929 907806486 923658703 414709604 667526063 326143640 365221839 279296027 459409300 45182 615841446 655122354 716612036 465667014 676558127 366786916 840316215 729846096 916658883 958210094 977332093 529490470 888443585 597262535 865672706 721485209 780745712 359778117 836770371 656139512 909280741 617210805 621621920 79681349 807837781 581524657 656842766 692937142 817539687 424482629 979783928 190810227 337333483 128171055 270194001 264761650 734032386 622979686 638938755 950804544 988536242 303327775 613526903 660071507 807081302 639204863 674310867 339741091 404520900 928624447 931317539 132533943 875289582 6385399 538704420 12568339 449404036 24545483 408482777 994998445 995264237 193706378 549682077 313909126 803834402 272338806 355144336 840984173 880690390 974407225 983401918 723155691 933718832 169607973 838776290 964550108 991074562 769485222 846070459 589016589 644820822 858037622 913521989 679992110 976825766 535569025 605878110 474131248 941885585 83811231 273788905 346627567 989914279 184928170 187821724 752038119 990014434 171900771 519300765 488463879 525229659 784142479 829301661 414849634 787687222 67305584 638137359 714002780 822521359 262060307 427637932 770459478 838357463 757377381 771087489 840810710 953048168 693996234 986734236 392126822 441883499 229216840 693784506 454620566 926045094 159918800 810892288 13059095 249912848 180477138 493105586 627741310 895811589 300857803 639711543 637091013 867944669 340025824 353837579 942024497 992227456 332583674 626552200 488133471 660096402 711237588 920173983 573777454 640064501 48980429 492750908 35506382 235378482 783565939 821368535 317593170 502312022 315665749 938680479 52944871 825469364 977978670 995099958 668139168 937810030 622870376 929770983 51677966 245540669 125997295 872267229 766986377 813090666 856890093 995117503 477614749 693025638 157373167 615026076 420802617 558154854 313652401 848786835 391154067 419038664 81648617 402361394 257065968 664140413 668684950 846323536 328901655 517585909 866092622 989667741 14555508 640832419 446331159 857754123 808523373 812173407 675522686 903151795 758907234 874392403 954212560 993396070 432051881 730828274 911227287 995591588 464710136 655909675 581579842 855961498 316689660 929820851 573299826 766525139 863671646 878424343 161376414 561462166 775245420 786259369 200924171 525242227 557151118 816304350 461785925 514399426 126106799 380421882 901184229 960918178 192872870 806324647 913582495 959473656 706397181 842349914 662262623 774167513 69467173 563380273 550010399 780538402 906008074 942955533 411924222 693977291 401613019 875656218 857351497 967300255 951010456 979044024 392771346 602540002 830734787 906414774 933068868 969539910 433524520 635622696 70884360 581128518 615500606 877564853 26697777 469367367 471519989 627240477 539101048 720971327 44201988 771767899 793866836 904592631 995037999 998193977 138484341 577950465 315730845 627241332 158046849 535594913 674934274 976183377 721758176 953281999 216273958 921922868 369228707 422203552 326591013 524784633 727759568 943754435 725564183 927545485 195048976 507036126 147018062 843161048 700623559 923926036 311553 420983495 416793999 588683650 21953571 325797852 350461321 661487489 226173596 970733495 337259691 633402527 32014501 567755946 481687483 687167431 23886711 692272444 810836336 814793037 307852892 383762532 108413430 647923596 276857397 315531108 465640014 868995001 269953575 870842153 929930548 984003825 999149029 999512703 784679977 861116667 467422482 604414699 50297887 570365381 310023352 704152944 603016060 605561989 162710102 619428276 799990394 991348199 130812132 409978814 891900779 984836164 724378441 741424720 849513159 859028744 258271009 314078293 280218439 900504892 592358841 838618310 928487137 947201322 899353977 963549898 243748581 265611715 896145258 956779280 51680498 147272785 608376195 817503630 971885017 982339316 824579619 838790448 147047981 540802529 793015230 817482531 338063214 768021743 989081778 992620951 945601365 956411694 452499410 727679803 588794004 929027743 973367150 979443894 447635489 563386926 65489073 638309791 221701208 567812795 370637310 639790352 208826064 871316406 98005530 403237564 688382825 815609927 841898101 992302031 429627374 723425590 163716183 387023585 792562155 840686722 69978662 707404688 394946457 669469739 971006563 978003811 517577885 598737928 568501720 821361666 74926429 976397388 55122970 852408401 846921349 998745615 462673625 479730083 329086646 640451174 780682712 855080532 636688124 730985089 296654825 456077356 152977454 719151561 124966291 667042543 816799178 960630036 859384133 904993487 818106862 902242377 910507522 944153735 654159493 705832909 887324444 956485011 992111078 993594344 31869227 417410271 581702346 697451466 747736731 901825076 510073595 545301182 487102251 750131965 264302837 683146391 686610436 920076746 598572472 711361318 43236851 435379669 42597722 863918869 440829010 628336626 676751385 994004430 918263104 952170933 497200641 735838649 358721815 998019346 929268225 969598141 344604467 956546894 852986115 953636901 224237081 324065097 293445162 462267700 928664363 944795894 582195040 765371748 531636544 551220580 503089376 650919482 301231451 756161929 446064867 884718295 92128999 501606222 657266437 787264270 949920933 979072174 543564172 644164211 975283372 984209202 529492220 577522130 660520759 863265891 374245725 397657522 911475332 977064501 408224824 637645788 89360252 665119730 647034466 939815721 682454940 787665095 226152663 325622050 438706565 856474252 462590358 845936597 384698296 427982819 198835598 759919849 435135663 804561004 567970015 956340812 96083876 239764248 701406663 791401229 73523179 171157459 629803732 666375474 989363831 991098727 932869209 932918771 369323301 649587722 872290525 880382877 775187733 977931485 324116692 519349062 682900349 874554259 934075876 934697971 818630413 934125373 727728258 879964902 284582844 701961777 74198606 815780290 455648443 995553418 507697788 569741373 748480249 849199320 378684915 613064084 531213545 855487268 818868527 925648279 298713829 378267279 248630512 356581623 689152102 740395110 399393220 438229885 353360144 507557024 81744097 154223478 663258925 950977611 36416987 369188195 557413771 563489547 125477464 641011557 2216649 815275146 635807699 835374451 339235840 474247674 829518882 841908940 407831737 966992025 150090543 683263546 999991708 999996408 208025272 958205538 843643195 860443736 476954549 879424181 375385633 736467951 902278197 973919442 664240087 797757204 283476340 547745546 638735335 909436268 52486919 606466196 890381409 925378592 970102069 995126863 794823219 902645934 683102989 905022929 122703753 837076917 656694736 799917049 229950652 255809518 242728155 702557704 903291963 920150245 893170443 967123692 318248025 591726997 673372587 852468088 428343469 941882658 71999728 769539712 336540370 992897362 635352692 772708899 319973767 776641065 746478998 789255203 298480456 524869851 187662476 859198327 788793015 832538874 819893156 942663698 766250393 976408677 261349119 703808139 435665821 907003989 870734193 987740068 236708373 985764074 175374895 771310359 525359684 709597620 343597256 929668707 636732921 764292980 607666475 998484121 973772055 999087782 916349194 994450648 621862841 798090920 495067639 591733333 445275591 699523875 460631337 494553310 690301305 860160570 405890164 635214546 355042194 594867823 41611112 273476150 378955429 383248003 485653708 820387138 217317116 840592066 913792311 991693095 975071500 983555821 160216652 879040707 51258521 354079541 779635532 827642728 900183339 918980040 622413653 856864198 207938067 628970789 875149119 917257335 348066461 716766082 770000019 994139460 654376451 810073385 65424935 344775824 686604054 990269639 538772593 897041472 195931962 579020521 924127298 931575753 686022531 716790990 849250443 883639967 188883115 355837152 818911216 887189581 537320284 788562281 809221344 998848338 949614938 972911393 687154167 845582134 991847029 992324938 761600093 921591014 198130938 837799574 283312565 292136290 958025704 965539696 420704881 864447469 528858098 864423995 567631066 926528449 114180894 897247419 347848989 746340800 750183879 771341194 519795312 716197813 10610959 782516308 758924939 774751364 180716598 883116799 94013561 858102864 462158830 719432857 348331372 735957018 981490296 991575450 480100326 676114249 357123424 931681446 532039692 681335583 627400136 650592380 7339732 841135047 662109014 707295546 591926050 702378797 910858098 991148402 926016481 944586007 451718049 722493671 793739316 843327780 251000620 985945360 885723840 909867152 70695911 515501768 6602510 626011033 428252786 981762117 770602896 966791265 166746807 849479646 621224187 706194528 922299814 941711877 374875794 808714877 609445712 658693103 523054950 717445161 306275443 438222979 933024046 960873155 546458657 680095890 334075723 382935752 490444588 560614957 367246876 414572447 962315042 994893194 231139180 865462853 220474509 640805735 404479453 784473732 321733059 632326340 529217253 779328221 109512018 369527294 157491815 826897783 933244378 992732295 549428276 967181162 33225428 443062960 881224745 964018995 361576150 778639472 784937926 974217589 60471539 542295309 892101214 981676253 903807119 983065140 984260452 985099999 532986093 698725673 643064700 795092048 482632826 660399456 569002481 898851876 791113983 979389178 903314624 992230212 899814538 978264153 400653287 556169243 973204455 974409969 248552335 281069416 809562794 919651128 991267244 997796463 205602828 751509588 328709123 943563588 40054066 957477518 353115755 829663400 932433440 937340972 443759066 529050872 296800325 392698844 108262252 968032344 109638544 504005070 841345149 964430196 425023935 863727536 693106599 937542486 359534215 962927147 747559886 782940972 178002660 860071852 611325273 936266434 499739821 746699863 695362247 903112705 607267013 741114049 751854717 919547442 211026902 979388083 210313911 959177700 938911696 945891025 173045882 464774859 262028972 439151449 20189222 932824326 406155147 451881697 229478156 670354354 578487663 600016743 887418919 910142244 576381144 742610926 794748114 853564732 524666814 627454813 204919552 268315579 296655260 680740848 674222632 701879736 980301711 981146333 422016968 552003132 361230594 693442885 864363729 984279564 2559446 972781037 625541968 769164449 524015311 935749046 104032338 968849528 668780893 848897324 51044018 308780571 245653488 949379840 353908532 734601194 53028927 515421005 327314400 414144207 672133104 838895093 378987248 707585637 400175145 611073271 616623037 647426522 538836437 731023741 815062833 845566868 497621350 761293875 35121944 892821105 144584724 903192628 415716506 584106418 248173903 369274030 283462290 833981358 645929285 829096139 494821406 924160752 958336997 995664243 119302062 834275526 38279029 69194583 123457850 204002339 650308837 811886899 461971930 533904154 682289964 926848726 813414485 964235396 552429949 665118240 977654358 989875066 144837366 259841505 215614278 850484472 883486431 893203729 312240640 801257577 504377919 817626304 127611673 428807838 685702736 912252937 3339851 619316910 114637000 827164145 536836618 941869312 201169512 515783596 876020760 897937409 820246692 988308018 418580607 517598522 473204792 731001991 203517952 974835010 426901757 846778286 528506027 801118488 887833752 955395779 487734779 910545243 900557766 951364031 676917590 748386700 646360797 703541342 516597298 800976100 196916858 992681612 555809524 744805471 74773798 85294250 166755002 548073374 612092927 965100404 386522377 871249697 122415167 749778338 593308001 776778569 926811137 978931342 453745581 592680614 398135796 629624829 628413155 738327536 680599738 811405506 721133015 946584856 635859163 937650885 944974745 969205724 461588268 980413150 754696928 896358929 634142857 650294971 789064405 883632324 797350012 915547004 457168419 798281044 529187127 863390430 294697264 532242158 337653489 779613482 862624932 964285227 64808636 967445284 692812962 865577518 631773442 929031257 289490497 916428925 889571711 901124688 824754516 993184243 958615596 994781992 742878028 747268764 766627907 990947275 25012421 99465797 954842518 960337074 632894397 760089542 775275958 838549827 783306260 964444386 481804117 750244133 460161980 857904183 507616494 627847519 754450217 894156221 95240279 402532731 225458773 497359668 484428339 834180300 231471691 412756535 433611341 948067863 8641384 795478301 236572265 981894642 383941481 609503035 72628970 766679389 996063475 998481722 883949192 916516582 334005476 373278257 48230922 206031449 537324278 762924251 38169056 248115457 366211602 484535921 925032335 972861378 187640716 551045790 98724490 559860312 190176592 848185709 891856399 936332133 328228916 557821000 20899622 967254444 923344619 958061389 594959401 636786914 6479178 617616757 426398776 551469749 959091839 973854510 558790645 730799227 916671270 961715442 776285656 928003996 524129812 654175336 75693389 826835863 818700311 867413784 280074383 998010550 885633190 915674556 578889685 977455306 561343195 983187410 434141629 986016256 693139394 866532373 571841291 866415999 773047945 906356641 238473962 566750295 422653445 956127396 768002082 969529760 197924177 551122411 306621202 366395595 885934714 886268166 560423061 669252950 135263893 760031579 677508675 715010246 761488207 817377017 10242721 983948039 44478181 523121670 929585929 935699060 547118659 873928854 416149732 578483331 501405133 707784462 798654270 907215955 544297513 776416088 782410527 993728850 129696379 977908042 35026657 292188757 121121084 832737641 384407657 914758633 930956929 984354800 835486334 858686059 381260282 800417436 946253332 997438438 252539666 845625691 460354837 970454721 238528088 975277620 126119546 992972771 757273967 993655477 409221109 823054466 189646214 557848415 671858696 883609901 904961196 927489767 850079213 903707696 603152970 836837864 203602547 849627469 619320426 651926685 327430721 751702462 86941360 252004788 688911270 862493513 688036797 773573162 267572406 752030547 330290234 831865438 455338654 929705018 631967403 838389147 291792837 792875878 144664373 686681737 79231216 452056582 746174254 821430023 408416132 636290544 776014835 959547179 630942652 820480312 761865546 786927248 24817367 472447635 482268950 965045007 686078273 756681085 951532686 988092204 463976961 567767580 626541126 953758658 602968820 707479857 236621751 798073359 254411642 973689275 774705730 780856753 330706767 568757417 625084531 667829998 582967596 653076311 680928482 818864770 135979081 182338565 375897740 721846973 147116624 419015849 120998636 190881567 770382270 821743598 960702316 995738829 433966514 708215783 675592187 753696960 968113730 991614847 977637070 981180602 568026218 639870032 548431083 635811549 549268811 918311362 285693219 445031981 180734755 799543406 623490402 769860051 437952938 921890673 38790992 891849511 985418715 988192777 29802673 499156829 103479209 160753240 364423279 535686074 157888142 729419755 344600464 636284932 25680304 792781871 837998363 941507226 961566332 985032640 715543792 990481598 915387225 986553847 54681107 925449643 643588910 797596038 892624584 951337370 260029064 970357810 116457237 317964604 571582282 925341056 497098861 918202557 733315986 792044703 453181301 763465748 570421052 898693586 957204586 998086965 388226008 508375712 823138051 848479544 982963668 999197190 740487942 815383425 686814116 732402769 363738869 586512647 463939317 858311192 72557350 974305045 351924910 912218397 63197410 836674659 972820037 999270054 411384052 893884151 896615030 901702626 222189644 766620574 462947553 716108343 671289188 886698625 518434409 977543093 492779726 786972971 16117015 384132639 209748141 517777570 917369204 955388588 669641089 892621164 416850187 488786364 58592894 984816420 722476396 907036485 624598492 879873923 101331716 664398988 34043792 493862329 935589414 955416167 99888819 190600916 898296162 972424931 736437135 869442299 664483825 813717619 562960951 749833415 766844680 912812141 547297508 590520186 137175141 218044058 588021522 618641122 933238167 953364224 348612631 802127563 379839658 929006272 355600131 575469757 387565048 626869039 114704177 424119773 384210166 827076224 958526996 983231105 547943919 594720711 336591350 668363597 131804641 280840191 463399411 941749410 39423111 636157551 429776469 993709050 456543332 927594857 602464732 834438408 306328285 617653539 97257298 745295953 978720804 984121543 196576634 520286680 539856841 582422538 412264963 650372195 583809515 971148338 820596047 910291979 286643784 299953935 415619741 708513395 32942584 977246169 779881012 834261667 8268887 222076298 352988115 639670420 18289446 91028298 245242015 930293478 253309581 394477787 29036206 123923396 292912477 996670413 600006698 709136397 517114981 750854601 718706471 825253504 246778655 544331519 709461324 723868883 70504428 288203095 467648573 917886239 934658490 948408995 371527867 931823414 220694013 738648151 417382594 735168929 815216082 918768578 263172025 631816951 248084206 683083835 599880732 856929596 178241287 444854647 567525604 943537029 97256660 535500373 216406639 382841915 192461556 354690168 866641492 919532287 885439938 901792545 668017283 706576116 58924777 635241695 257039885 276153158 175780155 964622085 150939245 724280529 359464684 573242355 962698485 965894279 492230115 894979833 359959676 971489408 621632173 860215089 921829541 968197041 476968113 991311856 661785548 702088786 220809483 323531930 546402116 722233878 306802918 703739507 407888933 559575033 710248598 873015616 156327487 319570209 947330456 964162522 277669499 915165634 285463221 794325001 680098949 897333550 2456098 740102637 231827415 461140123 181516381 811332224 128685254 764518440 540166421 578652257 549799634 661888846 262983445 797026102 358565551 860317409 333558516 769147816 881513319 986164729 440573666 719169313 103232725 455655960 190747523 648707334 557882028 918586874 970331130 975722499 416315807 756101506 853745368 862588635 861988045 918308596 214033406 689318003 643827778 772165487 943107251 971477146 166320080 628968480 995411446 996665532 616691360 911927918 251800460 576216919 769622827 990109230 453517863 481833528 903206598 934833183 295999352 752049426 132986698 798106655 423947119 934991646 763245481 961649986 428113160 609192290 638433480 728576080 288700689 307886923 39811047 512903954 81035494 771507624 705902301 847091990 97423308 334404609 179108559 687615192 889477189 904843956 664103001 811995639 380090159 619090832 749896829 756899740 677529578 857340683 421057576 657941714 863027648 898491110 285949368 456754398 455824697 664075223 216503379 475020075 484503444 564691693 389786208 605178136 869700324 979184166 236817177 528329173 142567582 801843863 787281339 900549412 16870650 778420981 529909654 568288918 706282867 912137154 485888924 548140077 143571019 628322191 27112296 386740587 847129273 894476242 299829587 671799017 102382091 150294079 218362451 360054320 465183179 919866752 209250623 329192425 394916256 494732719 16953171 625879685 114018340 328259546 37691872 976767386 575134768 666448593 912836552 984765800 877589187 982027621 197648097 690431597 597590778 860066142 361955132 950656063 555171896 845319420 246993472 450287152 53503321 275546940 296711146 399268495 752503985 840238246 830032851 931423527 749787725 753186189 221434415 895454515 588640166 804514021 972472336 979525960 825195779 889653127 141538879 148448153 474521281 929315363 158298376 801469795 425080549 831540531 559854938 775476240 759956463 776055952 618813032 850276571 696579731 738937460 257031160 267679025 814743456 943865436 735539624 920138286 974678975 995249027 631397035 775187505 994331290 996864058 687862795 883277277 179774302 754273320 487446718 657518339 396424283 669555320 421879025 444914379 929853452 972486704 1855434 859126470 837474680 978163330 569332101 786967124 975564368 997676915 585326779 590749317 617450679 717566553 817724077 880054926 880928458 918992814 570312555 940119978 65182055 960413708 340868306 381313248 993036377 993525919 104203593 500765278 25809470 776420017 151194135 513362716 737027092 850767023 946989046 997388059 450133422 598723787 661165643 831762699 671991445 940203905 907549349 937175296 142551718 558588243 944602419 970928238 821075984 943195500 853251394 868915885 926842857 937336733 192722769 769417169 230419215 600888301 31676153 967450663 970854277 989722925 580852489 759965329 208978268 995132496 77163348 114554599 663139172 787961868 235710461 850337850 861226409 874670834 703945157 868788689 680611915 877536988 887710704 897841084 105842392 341120924 647461070 757399400 844467471 947240528 805038470 870484008 118690267 918857275 521863021 838231220 195388907 503404760 862571772 894969453 437513175 824309442 498907495 502018382 40425119 430417070 589646519 983051428 278961981 656694041 258172977 900692311 496427028 953619653 780666325 846998988 860149936 962189216 429236072 503152269 925461696 990600579 505356986 604103648 777201851 860817256 425248501 523295966 757087627 965252741 915938894 918914036 377252514 544186107 89352670 953170945 654935164 778304832 321665585 335961246 235974684 567277999 215502041 421553586 472250000 989344071 342004134 575958602 66895570 300610725 170033783 767836071 919996194 942024506 408813800 643354563 641743574 755665671 347354406 756488317 707846607 814385168 719722142 920235470 860650453 863209258 158064997 718733305 712943850 810692944 219682597 544557926 127206203 356515237 529193414 993842914 737849921 945042741 247228924 764480520 138161980 475494991 656499582 919540608 33209771 236754523 531310947 558545245 737885765 754439167 264129379 905736906 965838601 979572117 56443846 699368508 342981450 710131536 514119183 934607796 448007472 777441531 51765759 369988254 461257400 986036639 195671065 889749374 519066892 870428106 249421772 525615669 362357825 806099711 446767227 935641427 814630772 964132951 10693981 730747122 983780160 990119450 686633444 690635013 260093042 481868330 486020710 521258652 516949570 754500692 775053846 917255992 62538853 144484345 573398430 640853307 995028275 998645669 807207352 925871094 663911576 794402343 942166619 971822564 847693219 905277042 204742076 413483867 30741174 280463533 288481112 401400893 570588557 797592464 260913698 563269856 715371466 993364772 909917775 930001573 253537703 344651813 894335216 920756365 898552253 997739813 403745229 838471042 18325387 345376534 843574414 919012997 504025905 911946307 986466499 998602358 686494912 746415998 546331273 645555218 554546759 559414532 124086960 581548799 775669305 958585427 274567960 576046463 351866962 965122594 995662945 999016675 275284823 749069287 392923516 742019137 119735761 644144048 212619415 535977696 13793158 941895574 974576614 986690906 121364920 443778896 728395208 940043370 87828009 420256072 160562545 194169467 169514852 424725810 309029050 848042943 797370496 962372374 316057854 994529432 948312070 978867387 340495422 564142962 842112954 914153379 420488543 475554579 455054626 839614848 336372559 840791684 625782565 904354853 314155014 881206346 469329842 761570665 581580343 877708975 756072507 810438726 826082314 882282489 184404292 337516340 461431208 703756834 442930237 539863035 370535974 713066636 49991960 211383659 577110325 977950357 425787440 632865978 44051152 269226290 180010452 321319395 728716966 777188021 79033721 118960622 262356356 512402119 402571375 614479341 6319307 656632586 702789672 988192245 400858745 748563788 139521534 413743464 979827432 995706141 650123167 930313697 198428547 449721938 66611332 887733637 273088098 369112463 113050547 117284177 331788623 710082054 372131546 622110076 828899735 960530226 730893443 741272157 550487899 771367290 322517460 451686941 112374824 833697460 826389901 908899598 445626127 482594304 996106575 998174677 916753844 935634345 189119869 818532464 118675593 335447813 731540078 913361088 921857173 957090377 210718825 392650023 967697416 991107692 296743425 670839643 625811496 698200151 603618376 765460502 716661442 940845524 627995139 661623823 516116468 950601576 237338398 249818019 178466871 852248788 210207590 501438401 635835954 882630596 910113885 990540086 506272381 892124684 185165 822286289 228109087 913135907 351284814 994337286 978727363 998550728 721365351 986503954 748704096 759152973 482718924 731673623 531828635 645636628 457807633 821296250 568178733 946704440 436140612 682852290 221752099 308853425 304974348 562829708 974523774 976841519 425650081 726292473 420058694 777860923 295545561 472768742 895554339 931522651 105169962 168800761 648538280 965445464 258935791 820041917 459466755 731988082 47628488 174670653 5650860 636959565 701668035 820868588 688114919 994182965 123187068 398804373 74447927 577977824 922527495 944863466 125059565 810080972 402893904 860129552 821650769 861155291 354313824 631073678 629864488 652064990 726039412 884865527 92685128 815597670 34797051 908147581 736460 226638829 67613545 655657375 578240867 918340515 305386054 886345042 456683770 506765484 975395853 984192413 869266355 906960355 692946245 726601757 785004723 937959116 907387602 979367694 387593961 422339918 15157262 885591336 479408638 653577012 328254261 867517845 117544839 861513753 826163592 830694824 538435271 908382815 668399821 766543388 402467543 459990580 145992061 298836336 194392407 728958797 782205320 974617251 326250097 467712153 830996561 913500765 158791759 883704140 898119779 951398855 656047363 769716083 379303232 665043735 684996678 817556712 764029589 931789432 536703084 959515056 118322507 665834407 574632386 934025555 808960658 992210931 461535830 580283199 712988694 883983074 184902974 719693487 381031405 465671261 579933921 879921127 786969172 966469297 291127628 448418552 5219741 416505943 1483689 747093289 4296290 666881685 530470759 930055359 928421862 962645582 616308583 902025574 185673826 201025500 414500708 863316343 329815451 807342549 460808239 637563672 781097951 861045358 905149823 958820983 25462697 667191421 895631311 907098887 954403087 997001976 684360366 858456987 281369066 457252625 848544434 967547248 644449150 795084971 761833742 857404748 733818634 975070808 673357286 757179063 560070131 796558104 851069291 928706460 788185305 790532669 455683005 460685611 33705655 724932218 500266382 778765436 179777727 199873483 320068560 819486359 128883911 537600809 33793188 760195735 105707259 374608078 2914995 908232772 447939080 795696324 192406486 580159827 741471664 984297679 905111377 993333247 421193713 964179874 582548689 829634934 344098956 447361547 188422404 858155369 199875291 844751246 358192086 674551967 116616589 551179633 253210504 256063470 713455280 748966435 127953730 929840082 476755285 728873197 339674834 843561355 551467887 861370841 643919603 756845584 594125670 987690347 669298190 879053014 215262766 897908067 592912196 684365356 188602929 758205156 235528093 653310265 603349117 721539558 537087568 628429793 863931686 920062620 288991918 648488555 871532390 973272429 161735503 616186476 175832566 544200289 468797197 696047432 5418911 753985327 753733784 894710906 559869932 691577202 425117712 680168994 322618184 382688258 738116475 771088107 1842270 503360113 646565503 662305410 796267692 976225942 406400281 523429253 566573273 827616369 902932044 964936228 910449909 991456323 85005773 883194216 396015054 503398701 790123887 951384971 133354396 588795418 915473385 944302515 794435743 957788864 980063951 986603381 326814059 462289356 947307921 980930698 907532052 948319084 412829493 927680746 742407526 929038915 779739864 988431494 920107220 990833228 739146459 820893377 266473698 593954876 545356318 643171242 11780882 622639059 63385848 961567816 27568041 271106433 404132770 833737257 117249538 124544044 351524434 423742491 176841031 428356248 573427746 734792619 87835596 757987214 84996665 374102095 76997830 644288627 719169583 850961617 630816465 971096671 264408295 860650670 457090667 921907322 459290688 914517801 938154956 947844458 156215412 895937432 29603044 762571158 372980460 758829995 608935842 899413373 449612770 831030921 278125244 778645908 889508444 955676817 212794352 992342291 451260744 855619853 676987888 693984550 559010266 742273615 83827125 799972707 117654887 280382651 447230872 560411498 499722486 541351351 944967216 992053386 655273118 662584365 56111797 710630906 973520455 978264062 928428077 930728470 183998618 690999426 478026258 533495002 23473586 669298172 669179771 875380421 982151233 994552406 846360066 998169872 292883004 932439469 763497670 891910602 316262073 917732305 504252308 689217236 495260069 515578779 437273008 876870258 806917520 924813354 270902090 904050014 274514725 897571725 520663447 961468931 277240047 798304220 827454930 948603371 753375602 791702253 112875117 166278355 290526568 355597961 394549615 452356609 248005046 765400125 643744402 916127301 289112739 811922695 22842347 705947458 350129229 780258961 748856907 784011425 252684038 504369823 91035338 606756749 403073204 632449862 143495580 446870282 729589093 894964462 387144668 735260309 855127236 963938022 408457885 433905121 36036401 465005818 546555589 740834627 689009207 915271054 391708391 879223260 123196383 746949674 319185669 505739326 467121848 567398507 909301327 952354546 880404141 946620204 92375381 150098761 298835932 731727631 531657130 676807484 158119347 723632214 754711753 927199208 575145719 632446262 940866080 944277201 256362413 440001075 216194445 673277365 508436801 517337271 998563814 999048897 639735302 808277130 541422684 665558013 871632536 990451584 291922834 835641579 460470097 583071893 2671174 882704724 941626453 991833864 24438651 35064097 375543467 848224051 832315297 935857858 403576900 828752703 483690768 570050254 375746626 555954363 370201140 899993304 787819987 824476060 395409777 793970476 204655517 730634068 888785875 945506766 706142854 997499745 492730599 722367280 717885797 967553731 67128182 960229783 936532613 982130776 174376551 347356611 370216347 679461643 845803739 939769637 706348611 739809200 698320633 764292184 871931637 928672375 594548335 905808246 998394039 999008304 173126171 286443607 527440266 562819913 346113638 781382465 601549114 735189639 703352295 954048262 329032070 903550824 309754456 548294926 620410644 765002636 223945078 972170748 289514549 789324786 60553065 998936349 263457893 792988031 701470918 723825764 355776577 722127800 522256914 855354355 961318372 971781452 508492589 556433391 312304135 372122102 725680918 871125662 951862616 975840975 217004374 908787449 70316273 294585905 437238012 979162850 281340436 418984495 782283106 829911576 940643831 974946039 538563769 596418320 266087099 808319726 402035419 944721860 42677507 593349664 253440748 521949551 988432548 993172896 266360509 424048611 110874367 801753884 374295454 669221698 427594480 535719427 993130484 998546003 277503516 476461284 592037002 646010456 702752805 936676530 801031101 825237358 611182613 927031733 412471110 576919480 55838172 443397524 946975029 948239525 651619997 846273201 706847140 939829491 411557668 681062816 460607774 604107560 28671703 129021448 982766300 989708974 228022788 747172169 643360084 775267903 383761203 949777902 990763089 991299752 663399203 768073940 315297387 608650632 527662244 769899907 617314058 813773758 523074734 825120499 51386738 336623000 772994629 924800087 167694327 599766301 48509420 230726276 75059763 759836886 189164034 206199587 458689941 702304652 619253795 965279092 851675734 999089200 769994217 921482151 498325287 526598784 945707714 948202447 689847083 850549223 738115352 908566720 931135659 995618072 964902854 998570033 422341663 993431313 956908195 994918234 58050511 445873616 496027816 589263776 606947008 793716460 742569267 746770414 161455324 366652840 165329994 824875907 368309002 516971993 209471383 307225564 274249043 490246782 933298224 997976742 698992708 876865262 973449320 981928375 985281205 986116436 973989121 976253196 513476660 625926626 414334105 583668722 535304601 797694413 164188288 466406022 665383519 880274003 339358842 968575146 552625229 623006920 307428300 689643510 660693401 675118057 337553050 703191104 581878545 772888524 604179429 740376726 17417420 456321770 152890971 742574070 627685747 679882808 739150666 750182234 868502058 909968752 222837802 812977974 255894559 814522461 129437666 925448445 911520302 955903659 478623078 938011553 228350656 350582349 817996443 890819127 151688858 269874542 346182377 930632712 804568974 892354022 941787957 945954606 858247993 997721115 625012336 792345896 696171836 985140724 435417187 983491113 276963177 667064576 908045966 911786862 434351950 708794834 591750504 937172931 514282242 596425543 986102362 993924134 468885003 862430889 949781161 952935900 330724317 713397798 669849200 716080088 86360142 958860802 279609083 348072612 131931984 448081723 725251280 991748798 247675341 832186251 807701157 817361887 566315800 607273543 763531946 945652580 422954173 722065224 61532842 764288168 522571777 906268754 403742894 839100540 573323390 830108954 687928452 706644633 151724311 786112724 385287946 841198229 877890480 930287762 675951944 833056117 978585205 995321361 844290142 946971008 405323525 923689714 466022825 966809962 478035809 647761526 578229215 928764097 899358907 901527214 475678839 726734817 472368932 539734420 682224978 970067931 972117014 987824220 481321820 549771494 383361409 694162224 952627337 967721401 614699408 782856704 347239027 665748130 647486131 833555708 956497938 999702456 965335576 968374012 686964512 870903872 794382317 966807173 46352079 817564132 81797107 713536725 17763543 109895786 657338216 954375439 731306606 972009191 418183685 504387124 796124882 972338599 937253681 988132346 403536350 838029421 227327456 426125520 816739293 862410427 536624718 907999646 904160768 948992475 118524155 151472773 241454795 704745970 143192664 439507002 138402496 184089901 416299405 977669434 467852444 817477049 148713993 197242436 752916137 943843142 372811434 816076253 69965855 841161887 382431122 744978238 546064269 578560535 73092608 542273341 810835346 894125012 682560027 835592774 298944508 706357294 767777508 967183711 535786955 606410660 725144959 890326636 626912347 676576720 447793051 895428433 66056109 82854504 413385996 847576546 656963479 728575361 787718866 910313844 341385065 754017471 893354408 965791780 670230956 726750093 75058116 299307340 305721231 479934477 613061193 655789543 795314910 991697635 511625810 860935755 693553845 771953839 420087255 519905652 587590638 978148670 272102830 931916998 115971182 234401681 235422423 776033874 825900085 847681801 162594895 283742497 599541964 776086846 280831998 672164389 308320457 946286584 993665628 995389419 57058453 576807716 754947984 917903388 402368862 816898514 751321740 960755432 18658068 117545191 942457909 987710337 156742302 184986844 130080715 267576420 712907423 982849143 840492854 954608472 200537277 752431368 684143731 982853808 632419977 877580533 608874778 609759396 719743317 741279665 310120039 363001124 811991149 817037513 770865578 851333359 340206101 776618924 551602216 943820707 794004617 928088804 931878289 991006764 985803354 986953788 989710240 996633315 566082172 876342934 100976022 691299874 291150155 344963393 462191373 752475036 682207073 810138958 350696641 720957556 597834890 915986673 299280248 890867124 469040866 650406003 198202120 877467497 556828152 984732465 524612759 562996636 560580227 769743992 147703763 574688053 2387346 480677540 602603411 910478985 539890972 802358639 241811527 677503753 978387922 998782302 432232160 604338524 319802438 961235522 730710766 806220603 133919981 297932707 994894439 999272848 342943946 915950460 609567463 940291278 331756442 926412798 581970068 752032401 722836150 897938791 166037264 512408369 207753180 948935832 853492227 915964112 2508274 320020880 697520428 815989173 958502980 970760468 288364309 465782407 964072917 999300468 715322317 732788047 572967806 701184038 950490842 980917641 143503642 395741563 528307664 810367114 613272390 790962835 584420091 732821787 72441585 533500890 793937657 914500819 142211269 239168858 980940893 982695941 559351308 912859528 339886327 645426657 504274847 638029806 398393993 830805210 504976636 569666341 260926460 554916013 201957011 332436143 79532122 266967260 100538563 562891741 183465972 629046912 223222558 352125550 516176952 741704310 92643325 190664068 577930455 943907913 331855507 718707742 366082723 502500968 350381441 371413521 294107103 821935515 833179239 905394310 397136420 694262329 929885933 943699904 3021001 305985787 256072740 928646245 260093363 863479454 441368192 779038514 576444670 673138665 678639522 807222401 989016882 997377855 361759763 559953259 949344718 958806663 874360849 898809173 57525323 434245689 425336530 833708563 92511293 559723967 489664949 915928140 407315073 829862102 75971148 740417073 26038703 826696442 914533664 950182873 131125315 651096725 757147402 970852551 203877473 359000008 272061772 831775872 737746224 902900966 919701796 944439984 573905449 771223660 638250960 967824343 343209496 724653693 177579341 230302393 858681565 996568093 190816049 952997709 461995285 697498985 516450271 587712851 389386612 791835316 959342436 994560238 906818675 912152493 574170057 584542387 369947943 433641235 695785584 981482036 14571097 780852029 531588223 540252974 436599550 907038018 56245517 217006097 303690391 996863744 125045727 317402949 733121871 767134287 879543613 900013294 531153590 777008063 954904844 987711812 844021017 963634503 328260954 558740348 414422974 945304266 935646641 954808901 690661344 816236360 484410779 830966510 298994561 728151102 53627629 897574605 25548623 849642792 693142411 939112511 612808341 815875878 876316757 899385397 115091863 189781544 420928608 954263712 519203647 631822103 536968654 717044556 546706499 643883410 211693372 329535280 183254519 654567332 708150405 963901343 495228453 955857307 183544445 504916939 427904851 843385927 624780029 738581063 902035486 998784522 857467209 914178202 831325201 919005954 588163355 934186310 456738027 887776434 237399883 241530912 186027161 814412584 929809131 996999091 536523325 630755731 607483626 998175448 16024820 198605524 493496184 862303011 540393978 759059706 820744376 831013096 195848512 524155832 624566500 941005424 138189559 502935047 79701558 218779371 966360752 981871842 124412242 264592111 61547656 976567481 985571498 991678203 226080327 419727625 536279178 877328900 637575979 801400702 630714059 687076840 945995176 999956927 140123402 722156274 967795159 983756945 913576431 992829172 594234730 926816495 840956095 917234042 550263843 770080032 126698443 469789789 790751763 946785765 420366360 759790381 229642993 431011295 50796262 892130800 677649974 749005664 276570035 370930649 259619388 308806341 401460723 798230071 171507269 837061216 624867817 874088334 493844869 516533013 904305434 928835910 92143907 501538317 539850774 858258089 783779557 995580247 56954422 570980310 897020906 973134353 567825314 814651382 649100503 887407795 547964820 881748154 130353948 787089788 193962913 906923001 64971368 534801232 105931248 783327107 546607935 835941557 938662029 943725578 545687472 902666134 581548832 896709311 736754610 743522767 970848335 982644920 495723204 549951658 597196101 993116167 765175397 842572647 543282498 683642043 457924765 515293601 179046771 720928291 376803085 496300824 570611295 609727018 617450482 965726452 595288403 747235420 873499019 969568872 560346357 897504274 3043572 147417677 785318993 930736342 503179588 546878134 255162604 505712891 792844324 858200500 829234620 837982260 163508199 649779754 535184033 553105489 641017868 953297998 649371196 806275664 307041878 382800571 913182363 921916228 832439949 999650673 877615816 935343796 895134782 935996551 360584859 765757057 943022372 954111413 255415018 914213472 401674871 853957681 885273697 898543847 310347892 909114629 896351468 946934501 155060442 720856040 443732134 598460613 348395920 883021990 68673325 291452096 939039113 976992941 634128603 903612579 785468163 866063665 37272746 298643178 754095986 892639891 171577700 844533294 523520979 879303190 724699625 895529171 255416519 890861537 55219067 214999898 942022987 967614809 148699446 959099449 446315417 470056562 333060267 591223536 900999084 912696358 48970746 824297923 273695813 473286584 490080006 821371227 843817175 865742228 174176168 402514781 934366866 960033670 457379516 809163562 903173172 951676787 239495259 746783548 440968798 575829385 630516389 635341200 735851821 986011999 334512683 346156968 938650691 960431729 581202169 967674655 194066528 705320901 620744188 946234601 316820566 673350971 481620773 589914090 492981003 724088522 740886747 749445811 132613822 690950486 917026170 976500312 693052411 945189352 917398464 985487284 403067730 552647444 778724207 818697672 255877302 816020750 661519401 884929286 766564274 864000800 380352705 853640509 990870679 993464079 877051543 990044412 279225857 316895424 815457544 992037334 408995896 431164947 361090419 846716287 265438011 499241808 545319197 900181952 887902278 920232172 791519586 868396270 818795870 949512572 528742694 615656703 697309943 935047737 880676992 991884878 288192815 462006156 877693065 890634216 857774747 984544987 870549552 880756343 69700643 512153813 819269602 828559627 236310400 427976214 827478043 836487170 890761489 967391285 973689740 975461824 226734078 334289318 557910008 656668055 468203804 755558930 917392186 925173244 606316238 747000761 231228623 670976121 919967814 943037864 805767242 948270643 46161127 336043958 12013281 65998442 70656158 228588516 893872177 973412874 911477058 941148913 127161087 286457673 795568264 999033869 91914849 596763794 666906296 927045944 289090727 388538634 618238519 931244432 267518026 762322431 780149115 987612987 876504817 879573739 755607831 946145296 616043393 787635706 304643660 736566987 832224306 980098140 397682208 617545126 930760313 953448472 904629502 979964984 502314355 928022120 182374544 608865503 205731477 750340938 460876630 598486918 918222177 987115667 695033251 926842060 214801811 311930702 525975951 705209301 623148951 778968681 658500943 889986010 919551556 973250658 510449468 537271211 133461037 405672704 166915735 461534970 151757305 757896940 742163008 767784785 417932753 443811356 288250799 975911473 81446027 383706570 443225011 742085994 104555778 484548090 160831952 199932071 912106881 992148977 541805715 625119623 601569469 747154892 923026679 951805646 787762302 897494259 423090405 658644133 525862580 755274936 738901154 744381087 612861388 994998868 627431874 686534562 262858164 687739681 224771833 246230702 888437369 973406117 513604871 918539409 764583153 985416213 436900451 847086496 821100559 956304694 646432111 734350625 841013117 964451654 892629818 912892426 556540460 950298285 637261891 643348196 212819412 231001701 630721697 892086525 432127126 553170575 904761125 987744957 606405656 866713060 953960349 974148405 638095643 656575533 896144165 941231696 23627505 929693111 650805774 909047993 968673567 995113716 611404106 790808360 339920519 994241804 368391790 406266225 511278209 846194300 919358802 999888633 277718404 513088580 325943933 807404352 766634002 893879840 638096769 784423734 696943383 821687059 781215514 849692278 433240994 955354489 443557819 664770566 398109472 581626278 91874453 819696603 720474681 852542286 623614826 917656955 232727694 494801986 297961765 652924879 183553901 300239078 495038162 565435803 400636897 737022656 810465821 939710121 654161920 969361737 652842127 894796181 738680161 904280219 689835537 979418073 281650166 632816614 228330809 586205250 474844069 803988009 552592557 736815631 387877089 646220924 534076080 947637488 912685841 964745415 507270398 555768829 999158252 999819891 336011241 612249743 493198865 910121880 233702289 801677970 947645951 990991742 425735807 940432362 209970764 438048425 190633559 891074676 68264113 680479763 8483180 320826301 35800624 294648876 683307179 894996760 672574659 800044627 956552275 967611322 190347449 481435962 474067035 721826475 155818388 963251278 590187217 900778599 943718029 966015523 252932401 690351638 890996438 940012322 81774767 409883574 912446928 924211116 714375088 926349338 99086306 484321794 518987682 648056053 170927361 861567868 433547825 791169112 160076317 246459607 608087652 995177886 889567261 981729286 80462487 729445385 970400057 989755253 848233003 896947253 867823729 962069444 438941613 948854750 468182050 597153328 827999542 873532003 718317480 965406268 307858221 824631498 175648744 767218990 307942847 801854495 442627219 454371012 463115186 491905903 809566640 822018035 903479648 964098822 937538639 943908350 452742849 625484930 887997974 959971281 779320450 916042812 288681920 933757410 88869779 408526979 817799814 959777032 246102786 627866395 391535063 929404487 784266721 837711266 324615263 858138580 359522648 492633588 197636886 562108281 800746522 872928150 701437797 704782747 488230688 669726100 695796859 718830239 647530234 958332575 596401856 972315746 279623735 683849277 345321001 741309947 369649868 541807041 914838941 918040087 723596106 816679441 231580073 240648622 417689948 672726677 928876980 988422288 539478441 984620112 251487573 945469980 183746203 370046852 480774095 760382610 119967570 900356353 358582037 465274153 986967358 988849332 344706401 718626565 598754732 722259164 12183998 765198062 844220760 955072373 324903924 546024632 20380870 924776689 588522208 940054297 683726109 959942422 774286389 896280927 88980102 515769734 649103347 678678691 510020864 524085116 119364361 542834944 15878076 404067945 490029531 761989298 305576321 348723646 330425339 602545285 367064655 601740633 77739395 280923143 328189575 769861820 308204888 754793627 582827709 650994249 615840219 927178388 362852921 959495835 379725231 834423982 130920654 832898724 333776758 704988025 963952750 966286645 232074028 732642308 52112174 241132475 774851358 913598990 742652172 743287343 175822781 383226873 816302965 876023729 521179204 535493054 648244454 982013619 836801486 921581967 842328983 957998063 716376424 835532229 833261065 850202156 687659064 897473406 370738155 928948542 799372807 913366144 490783239 721854460 670416762 799527620 716337741 831484842 137736622 498567039 225346840 419938362 951401675 973013738 417381906 954205791 740011815 912873539 489523949 638798172 730491971 743054697 800125024 822752281 101319793 372052626 442674376 943386969 231813660 246385024 846226277 940227291 307526115 710326971 612177417 975132397 494087691 611254125 508775443 887416008 332811442 887806781 527830523 674929217 918556065 974941476 727328622 755211475 204653402 224684629 483450188 766392887 338150753 449182811 581864853 603956453 972555287 994206953 612438217 968155139 710495926 861075940 893101988 959420797 795955160 953073544 368466516 644203377 235180902 409419331 658818464 678727219 128176949 723582670 317505975 664137834 476138836 731628109 18831762 812947632 446984193 543207256 169449464 272344963 676450579 836556268 154678716 415242450 76720615 868456673 356181380 808277205 216640347 812070786 131779250 777510699 899290666 980183128 70665667 846859847 711098501 891479810 197021201 904382995 34237728 256361208 526400520 581380563 731946424 738508926 433655333 477832923 185136104 332004782 732457850 880609156 628115102 791726479 167293917 564410664 807173805 914172694 966504816 973173068 668457024 792518719 719108514 916376512 407955752 414961711 135506915 647355072 564333468 761434229 297569740 464822370 482857632 641692762 315189628 484452573 835439915 919581433 52104001 424050251 631950072 675198404 103034980 848915191 239724018 455485645 932636165 974625914 773342451 914495921 57644890 261528174 870917904 879641163 431972737 731479153 25263391 597841353 344743394 578043983 426901169 917994109 241683764 363063408 779028493 940130435 747403268 974101699 434393241 692506204 681838837 900210508 312474061 517045970 761282276 778904186 704888050 842875123 452831911 840320201 931765424 956319867 111478278 327443477 255377777 600861438 845026483 987793744 251897858 550377134 664213883 775269638 587771766 710720859 648624097 985080046 134947578 264666160 194414482 633873526 700496750 980636914 173150815 666310796 692374595 867333389 97628553 875403710 145913406 375263906 702883143 810394841 140425556 922652805 924678434 968543430 682982398 977123852 191127441 664450593 58408961 921046979 788673460 893638868 796839005 966396105 582552753 864552202 42764833 706150397 620835148 731273924 895721932 902324147 468804609 833305604 125304258 961882587 754002133 840451606 908694630 979922818 259459722 931362231 790820519 967950011 329429052 688714466 936593583 944748138 533266784 822107922 249975953 312910698 131063577 869973504 995645844 996347561 775645089 891130618 551125144 601905143 978806279 991001255 604998916 958720132 243237667 566995442 681090382 839620029 999884381 999901091 935700464 968736366 647305151 858320962 563951649 711397578 222995393 445523949 922433866 935540370 131698674 374958645 737792109 839402063 759954681 899977102 160168071 967203267 311169505 835727478 406637684 568292117 370721294 788140119 615586874 959646054 274224069 401988027 98194790 915323928 574630196 732950709 242501967 594356096 181483117 638962915 91647877 195313489 350152346 739700041 500211491 697843347 395871245 569010082 449276693 718433937 587040159 886807830 844851179 967162646 16179056 823597238 184380510 698545693 198889963 812597120 201386604 813384497 988239144 996443366 736972019 874827790 269530662 651800027 248986828 502525808 597146855 699644585 148665251 552691372 578670976 583609427 378042629 680320735 103276595 767169307 800792910 887100784 86677877 603342287 375437458 469279449 217858781 737813452 862391919 892384159 968993022 970255117 104988538 238605108 984748416 985344842 564300161 750102828 388583823 455059133 703412292 900392633 598199805 966227307 574691338 656708109 18025416 227349573 881912413 992518881 448129157 753472171 433734024 774825261 28297151 817406232 417928391 971361613 530716200 592088348 616810545 961584803 79195495 898385533 719241891 724001143 419560809 702844331 361089470 933657339 100267944 732602721 714429250 844395274 107601603 410532658 568767723 802789645 431091820 530026270 701753175 988436967 395727366 749076673 95640121 434503113 626809601 709736941 522415895 672878844 753677876 770890862 734134611 876720431 214185279 386252064 885077355 934106389 600084253 711692648 209895096 968808407 823826275 935531630 68276915 239243379 680088599 719036567 592768916 732287257 372321267 464329861 642691789 843759174 382511719 746899601 578309909 710377026 310836341 801566046 256564093 716850684 964824900 969311309 635332562 654441344 767419591 889900687 309980283 932527128 415228 158032646 350190042 772846009 685524797 699440460 437049411 621344817 175452424 315314045 167703258 538952675 184943020 241485838 810073517 899757517 122657851 666325202 194191797 435015191 674661870 933043409 90589866 295774787 963170674 975751281 616635564 722196861 544558537 747786593 662475799 667213391 122712063 834937824 335467465 805406112 476607495 976768711 889354013 960052334 497628961 558659536 72934596 916060329 796526789 950420655 226832939 318278455 597343340 756060507 5257590 963931249 364162206 442547686 735240539 765794285 541093851 856892443 473874388 638318829 950846024 955431329 922793358 989759456 145270082 218706537 304811581 441972249 647591147 732122422 527203988 709446842 69001365 562578222 204072931 795261365 825724254 965491926 73188836 235686811 310015454 644905458 868896488 923602899 657169457 671001454 416429981 621075835 364309376 788283650 451023385 580560609 88411028 971250100 111351676 773407846 704713154 721835592 968213053 975912995 475150210 638283929 83451723 420276945 6667750 299552204 710887463 733268351 502490926 829369645 895169795 933063380 870741049 891423235 432927087 952221136 734610747 741957943 775605984 924806630 70647932 746296057 841860878 981593095 360429963 510043421 947456833 962280064 503668524 981430365 80555399 120655821 893156936 997573635 608801469 768969784 592736013 763443419 101516521 512371804 370918091 432216160 53215967 124178682 795579078 921619524 287449684 593222839 268061993 873860753 204260666 895240806 422681918 636749683 82743067 635845791 8395091 486571486 600357613 919316303 234163029 251429582 414769447 977269885 121133967 699930763 739757366 753776688 59080294 232304351 240532229 261796339 440083857 810610239 748508708 906396510 719203397 937094097 470706164 471491730 367455958 709503558 573153420 849713269 739094854 979003689 884833573 903385254 147306369 237027289 795046303 965082162 258910307 661595919 864157496 905891648 574414612 916141817 843503733 901257975 785035934 823905100 660189647 988752849 431895079 648304209 708617166 975268083 632544066 805005809 772785010 904511649 457933744 655499464 892443148 981080215 88127803 535222574 295756203 895541681 134321872 932884769 690863697 834032626 130968486 608579488 501731894 877698574 613523747 867629252 891259443 904046918 678632306 697695040 783895046 805254133 825416591 914166557 103708094 510945270 365295834 616886776 47629387 939128973 319116916 409762787 942827674 978586891 626434800 943946984 352512517 613596190 706115780 786896013 691005145 873417163 751741869 861666922 390635176 854321627 759740117 766221109 883513441 930311715 665025417 945971590 790344380 941239068 425937335 537903270 620489017 859698599 780119222 995623885 541926159 920129140 936580470 956197953 398040118 825015995 936197763 977955411 195317866 826584822 696350866 790319856 236012727 912852442 24466932 969289443 311179241 967601159 203828658 973597652 964431388 989743507 520977879 956503140 875163536 951956661 550378721 710408732 126769439 350165930 12155766 771675879 675614917 917628947 688833894 697013757 395506228 803108470 203886124 709670626 571113928 824112059 575470355 812863501 692415834 694026022 470150396 766261338 624765362 667985950 147360184 168961365 402690506 836160731 767584225 824904274 494170303 839372270 441042372 469630014 652631110 769406255 605462807 737384664 622927599 708282376 275888566 669244014 886322023 944564216 127011138 653616588 850135571 878785565 751732329 983623664 704279764 839809105 532797319 622129376 894641254 965504626 295312466 644032903 687849620 940164178 806295406 875555901 265167778 774023933 219691402 703002508 995015886 996378845 875066584 930365946 405378078 993106181 185774146 345995113 275380314 464440961 206806949 399405086 775397390 942955556 390961971 733325545 709261141 851243415 511907382 871136016 255708672 998568927 373428847 461916192 221523572 229305598 984418250 984655234 199116630 628214694 758869769 854480634 182380653 662660788 814215823 895012977 420963728 625413010 366342430 395302109 704728380 795056769 724463038 856770512 761440266 894243690 244759907 983769985 754472748 851641591 885377132 943478632 16715240 541175005 804222985 850810280 980202567 981107670 128883496 963994485 254226482 830298213 867622512 924235603 411579054 521672820 875323554 995500020 866217593 970639991 889873833 911137293 963183380 968109101 120109304 446131664 943126456 946185913 910907963 952172879 384479723 506021468 532801470 837793524 480953947 599693483 432175625 657868076 291941787 516464381 176419815 964865768 739817662 766800878 750532375 944133509 689535684 703143782 911852591 994359914 722366871 946092065 675774617 791856110 759573159 870042883 279750795 390675112 443849749 986845778 734928774 809411386 916955797 981316856 669298020 928516342 733983317 804572813 144133132 498167198 608193759 625090498 228612509 364593741 505731211 809945168 953961527 988518505 936980508 937250553 815344885 947566645 336399098 893030213 788172900 871037095 72596471 150955774 353992976 930236512 202759598 632996957 761608094 808880385 874401496 893900657 248521250 319174107 425136081 929491863 454981215 847945004 294807453 822903465 660999374 781083672 327983302 959091142 744802001 752223478 792694157 846162815 745547670 819422894 700316862 750604890 554019843 940444377 490152673 743563975 106526639 715812543 773619584 794010240 477249643 677552299 304779072 644038158 534655559 928508085 622166726 658765731 691639691 878792804 421489652 862579804 581612739 653729499 683502644 887395711 852627354 997226847 597281506 646810974 225297993 841188124 264499119 409181222 721256935 975869000 863581852 977713696 8140430 659212553 334220073 432219072 735424165 847973683 966645312 985337421 896323088 914831081 935606927 985433295 347899952 680180334 426818579 712710742 221036230 863607773 587202096 612458025 890330530 945318590 347696678 374917836 912283264 963112268 754346861 880993868 546490006 747551266 560779337 852460682 589618479 761071747 14429490 543462018 337770759 833023172 931043760 931534243 439548867 855830622 999710993 999775719 160217376 659827894 380032582 799838599 497412989 542293017 248768766 915935514 24967068 851358332 705123764 779751337 848280461 888984906 915695699 942889972 88542952 776371385 111051065 494536965 911001485 933648174 203916870 726879706 110137146 261173047 287945112 417705776 927992990 980309861 582378081 729664279 609053548 711002128 243328043 323431636 270829864 615314675 370954192 779893489 302566721 418907595 153373073 458682546 145231077 775138180 101356534 216872058 903212293 971336582 717575117 792950086 470993149 940343628 966951028 987642639 505806489 809317801 857690542 986875001 789324801 841391180 434958446 599783701 266775363 651342768 272423158 679746348 810308833 821105799 634399477 713975196 563876745 835721789 979746480 987887099 988002543 994078604 833740641 937337819 827223032 972491518 43178675 129731778 220133491 893261850 553969276 761583754 188334858 495761207 765606642 880156651 822449739 924551431 713441848 884507255 675603285 685470713 564906744 928007873 905940851 943850826 665333140 690545492 737200267 814498651 187278816 305148698 122178720 780283247 750786880 980115252 273475064 632315588 480040272 825289108 19519470 164927421 854099175 858092529 576666116 983353705 602683787 807020508 321012780 700394310 26460794 910831473 761643165 801339009 119067582 917751697 127769981 943935317 36472447 43489654 303826263 402345128 439513437 513365773 258814256 318982246 194852770 327639943 666954166 754120376 243850252 879076988 926180779 942831715 674708610 729720342 185356426 552257792 766914197 793490948 214292868 734385263 745545288 782105446 528503274 865949094 138766801 616549213 589147225 593074733 119178755 331795740 256580586 874859998 85025595 312206737 698510516 814257388 73214194 636178594 20688805 123165384 343096998 410058918 245630357 911100443 338198685 786288980 428431654 961224267 361967306 847763078 454721807 886223906 266837193 926329154 76010066 188453522 269833537 986167089 496554016 969730039 376914651 902136674 469589971 815007512 397755983 839742543 651369444 976165416 929526216 930277616 843669329 854412588 595494990 700877520 219539008 397523330 766562512 824587055 837508483 999934719 988717072 990992163 786261193 841291821 631850418 847561969 237838861 255097950 469227830 980257727 128451070 748491402 262900891 439263370 193246521 647963008 402911840 526882671 993179293 997534301 529336531 608249129 323706301 947583863 658177053 889665785 180150744 339236140 872230650 911015128 981530424 987258654 745397055 898610575 98648901 193582490 731241170 843801469 919147382 964830165 430363581 644912204 209126777 771286667 704400682 971575970 823329856 889035441 691596136 834045170 47328390 304408609 545884118 621220073 714290897 988117059 435470853 825951727 912643153 914738058 319826826 573559571 895028846 953047784 571243262 858838537 962024249 971710504 40193945 946562116 950608792 964499846 692455156 880906090 257557901 682104722 166498489 259314115 161357547 356148594 791432145 993749011 187437392 713526127 538143256 696702968 676554513 825738644 65313835 499310718 954340771 992962308 808509635 967972067 48382774 785970201 771954566 861649919 101232108 666988399 581454528 806451680 431315115 941544477 675371189 870676630 698700443 989467991 817980268 827919464 651381762 897999815 472540791 770679501 745353284 764039623 222656776 776849627 264448192 832544806 607406211 804026902 46131104 98166084 384995745 964231710 777496962 998613424 12094279 346561649 457059301 832085038 282900634 942450498 864378463 938978278 843688645 852040084 456484664 838542192 302976026 365798628 247867424 794048880 682080624 835554753 723702234 944170747 339357463 546308381 555675958 862887622 777114186 811480722 859483284 941515987 843642462 999537698 593920583 727486910 24165365 643320472 414152645 504304102 77999364 826419232 846657598 898091643 848248830 949649926 85536966 911643533 169499557 314661501 560543026 996463773 413204476 682709054 38567578 439229093 359520983 489362373 757286623 876254791 426390048 980994614 893893 435341776 413626201 543030655 320154496 784085038 501708307 569381663 491822199 961634488 496172400 971690552 810945054 901589420 922451683 937483675 165725023 811319445 412660614 908290507 470034502 834902143 327699085 571918769 184567936 402998842 129844209 151816534 805616110 930758959 119162540 533833500 489958635 951141710 234689779 543186994 544025453 866028864 447881189 545536702 267670802 420104874 489615699 790882785 276138969 545988158 707290611 965070627 106018899 588483316 270680337 502439710 795937423 913602739 720814361 930449846 129481598 738614175 33954222 522868531 893515212 973782123 187235521 333673547 291849642 474346832 805424397 884940584 696141700 952098002 420854995 591225715 846275688 954744505 955222642 958468648 715637453 949048159 924848224 958816977 118341819 140619085 906414863 941515809 160857541 247008912 397149057 871592175 731553714 858474505 9335346 864772683 152835114 548833560 90474425 194416550 465231001 906426104 476406601 907624995 973129110 981241704 416114615 541756036 384124801 818069113 878256570 957521854 665600243 705159766 332178977 672488758 336295776 374087199 945421057 984094797 364521665 724124286 913922557 922978295 443898227 599040517 296604531 647907313 312976340 565355787 226518115 540256228 682230527 882872773 468740310 843547860 780646796 862060129 566404838 963150961 531004027 594423974 51646030 645220806 29355463 600313891 269151784 788515382 922177942 945412690 889787007 892466206 890811639 916682470 678906926 762065493 362817662 775060612 755987802 854267399 558675827 798766860 765581700 859112363 878742968 892661316 583713423 636060595 216494323 271620255 977493412 987586740 868678606 897194716 929032482 994848646 88890703 568719214 322918831 612013476 180646585 699532776 724888199 943251037 801277773 855691991 54025428 565411715 900097270 953474026 903453116 989975510 319044999 696220174 281575867 939901996 257724410 495555897 347760722 500414695 96545890 470387934 721645311 728761271 635195477 726797190 861612928 945082246 491401901 858477833 623307336 764640559 579755857 857366934 925067972 980304466 110877170 471890599 743155380 850134854 848784458 890278136 283563856 461627171 946381013 952659570 369128156 690944269 407686243 790592061 745403767 964123036 623175407 905456038 721736710 828288626 208773253 840900290 519251527 844229655 838892307 892154153 699965713 899687655 468826730 685693583 688984837 779382560 91580146 980477727 22602931 429331749 880458820 893530604 233920217 430949039 145769170 584156276 960348048 995045529 121069408 458220478 166597668 992624547 101280887 458809064 106299581 198913771 280666157 522753653 92183680 376073133 243766190 307078073 582089179 657338786 518748894 785653211 34898572 944122459 860451558 984927915 618025160 773946389 393577918 535024985 51283212 101279048 350728660 580484958 767333469 962215820 723675727 768514793 952771124 976453886 288809013 290967727 933194195 955346028 753304175 816512347 389852831 967672675 271650644 523995353 801999583 869968389 183251601 765878748 393043084 427985943 250247539 526720524 427033766 606189615 796133888 912684834 752816203 953694724 106675380 744211954 998996959 999347709 978100556 997537331 713276349 867768103 34179109 341410292 768187891 821682609 434117008 466236731 113839950 776657432 725201703 994331891 443516235 709256817 765783717 870713917 862516174 863885008 940874386 961999226 69925671 917923230 490449505 811929843 810404170 924624982 225893507 571611113 762838968 852523259 376711238 428428827 884974326 996722080 807020956 984570028 361256530 990544574 749877665 901669831 438501139 447240728 643917408 986625121 288763980 622887558 236849217 259153041 448509841 965435309 69742561 927544359 204539079 371672056 989633289 998990662 785443950 799048554 273870737 342443278 608747948 638557951 728111008 859386626 682789017 744811835 810977341 828910940 175125676 765332302 188733774 682275165 271164816 385971958 451323449 990236916 516746159 932910401 409541702 460010083 330078344 362244904 587531711 748481261 73434325 283012081 755503605 882729423 705612663 879657536 749369210 767812851 385783510 845412983 363803793 368792512 714597584 962337777 33389137 925934687 207506999 668338916 868308730 960277827 37669519 492168615 119527590 505322496 503232026 880538250 164493425 441950213 53833123 192126542 241091210 622566408 107099029 564278900 628808800 646332841 725707890 927890491 41966218 790509640 847027777 990441979 317687629 362412891 501214757 916930733 734146504 848826687 588903589 667488419 168965028 921411675 687090916 792934970 440236899 454225369 541802498 641978847 446748787 997848186 571384109 873453975 964770021 999858280 128679690 336285836 838236894 944698715 379482382 931931744 790563439 843115932 206360630 295111608 700444221 787749402 792485357 962129822 454194284 607326888 981185773 981397718 861459995 995235556 740764422 968405339 639543224 681353380 436089088 458624239 616673051 959572050 130569732 323703669 338178888 925798897 977142352 984867277 951282367 974819731 871461567 968727696 904363870 929591376 923463307 972261963 293543660 847400283 939069412 943138524 190500388 631260954 64993330 805902816 358743981 937667069 871434989 877739976 64425033 753170834 320709488 889770520 742819104 930511093 7200056 916450975 450834926 770702969 367328489 774649082 69938319 262754413 912475697 930809008 160853198 391084206 391696260 896166779 222056572 856235491 66584958 369302976 872655036 995932357 25880504 414873560 485330697 630121724 323192054 912441713 162864162 708720955 118317215 492542021 409651315 515779261 646725115 807938696 236824803 291214958 437761090 897683169 95607910 865908850 268187853 643655776 995652309 999148819 977271254 995691574 879246150 953211853 388637294 999001959 710927146 930998253 885671003 911818251 255977106 334000640 922383253 998692962 563183226 618427345 688111985 997743727 656649834 686063027 357996463 721182593 261580998 410872721 895369406 965204908 602126747 830653393 178856961 999905962 687097548 861045567 303174775 769061647 897501479 914116789 410587358 725785446 2445222 621114652 549030568 552589110 919705069 988576352 500073324 591394286 624139458 913210017 221515661 486802412 328082855 466816771 115487594 506972590 315400807 765008021 508892213 584295463 969437110 993351403 57235902 814114805 412312799 558207854 734436888 992820207 41843545 352221069 851132690 948548681 347049036 599528763 633011083 728587500 633104629 758101451 181596087 928298802 738942630 912538316 799225296 828044564 769216998 855698667 997608232 997768704 311061415 692579454 594823395 902056184 433028398 910955697 594499832 705475879 400226297 525596907 325627240 921569075 574587727 745122181 759578792 779885036 779103229 936939932 524588562 907788657 541132045 839886549 318485163 576794545 388152885 442060793 429551211 449237208 235437708 423767443 308591664 314138427 213442402 481074233 655782294 699673992 404100322 560297085 445990631 547037294 639295801 640009014 489586590 541449772 241641229 590497124 873470899 885868468 744522278 792829751 668969344 967780452 433905838 729128688 8386973 592499907 8355222 787542928 788572852 956361216 275851529 972232498 501700367 645448773 569663599 585957888 409485859 787075401 936212003 936971910 619852385 747391240 80623462 748919475 898496966 909715702 145113439 911156312 88651003 872006181 461419543 952530133 949710063 999681843 331316456 377700928 593466217 864232923 178781521 846364329 809512940 862966070 650922085 877021720 872273234 972619507 838369200 971827225 349593997 787351145 302640320 325903373 746219581 793870814 135646160 912475328 658708977 694669545 839304950 872919147 600519428 875803340 591359418 703398424 226568490 353880366 83486641 837128491 63960319 742538198 175908804 420891035 865780763 891151489 558104448 972251561 187961918 732080953 323952460 668973697 203984492 788205638 70230111 795938783 472573585 581946627 566953066 700221371 692631576 859696436 716310331 815113888 740774939 800723522 863770636 936273495 941429343 990959673 30067827 283599077 137865723 460418312 944765265 966974772 375339421 512583335 469077709 656799001 261272304 482966361 634683048 922463366 92855877 250634424 830051703 883995210 360547212 668611957 753714815 756574095 776959652 890698820 458516764 519708677 313947368 354729926 641410322 797205687 699345645 742597958 697457061 755357172 781792587 967302326 569775073 588948840 849432835 887248439 732008606 828975156 30277180 714534048 618213169 922614376 421148807 560146666 77599677 166477004 553052706 962439720 6045478 902485120 999139516 999198536 441814414 820017789 786608831 793686618 766779021 915445426 2053980 339587604 326819908 528167905 442715606 980114740 613160730 725359419 817269216 960053638 275761145 820011577 128971078 535441887 226447050 935207239 103141394 482987964 16997998 362311045 421066539 620394001 844990785 892159055 502462169 720339899 427716841 597712571 693504800 911329949 938645944 967272649 221255838 296276752 305686823 980826801 124366178 764873532 254442301 820238501 893065179 937702826 333646325 571015988 108915528 744199500 590600763 613370753 457271862 688922258 990527900 994954166 789187659 811189429 301311975 920642322 283044170 309146259 473890017 691039261 459512995 543760276 94313835 680806018 148432096 478196625 732194394 940791355 634168735 697969311 829450160 903789594 561817609 860218708 543842927 735539399 842782448 881230716 368541269 531830433 4469123 935046393 230910267 238638470 80847542 767678526 270520743 824962562 208139835 501902908 419697143 747513394 574858694 917454008 437139201 650341547 540229089 712663049 759820100 789971913 177020715 235426595 34135931 907545104 741819231 841943504 497913573 915839166 380145607 767040485 692874446 882817893 317705391 649820664 450315901 966154678 88626832 201396182 94622166 106846241 30226641 711256408 10126066 718230525 753912086 914207242 206569935 389425673 881189150 901076786 970386927 990535169 857987926 918519398 600810268 950810581 55021538 616791083 939302242 979113781 978775327 980261790 72095652 776187028 683762769 707864938 470950144 805119222 261526762 821783577 290590095 442422814 362825988 674456101 952809150 976988264 944061553 972367965 387100295 581370626 931127741 949070774 68303040 167547349 868693756 893288428 471880043 825618904 39214471 841373627 127576692 692937456 991748400 992904240 423535376 891017324 725299166 727534817 269770722 745304864 855959129 899754708 14976609 369698940 660913868 900908512 522935474 592350093 706315840 915775132 666025463 934540554 519221537 895955296 22758349 101789702 972848379 974594165 998455241 998678921 609462099 901462476 677115909 686260550 712592667 955344127 275292755 318365473 506007530 660623235 563176101 891786465 357611837 847974007 819812867 843904624 862591635 939932235 112310929 143705435 987647948 990348808 382354199 793636891 888288322 899941963 730915299 810547402 923897569 931597281 300971592 977762811 485339842 888117167 149386668 195156141 88195597 489458292 449063803 605842223 277483472 828847577 621123864 708825837 548097511 934012573 634780099 913238614 772923470 940080961 283577279 767991981 36040351 758387938 218808837 709142146 979944966 992966060 792976690 903839091 805969132 953614106 999172865 999525340 77526469 476110845 792206684 974332096 893279813 958217383 532027148 889342213 43304964 274805588 26066242 818039739 359939433 895712403 948437892 987404891 893148428 947669001 555982656 846345757 476351192 725856617 913024211 956112479 932021992 940489961 475473757 972453086 570784779 747127304 999434665 999820228 604010906 785532527 825237364 989043939 240386720 343183413 206463627 831493523 944884168 950010542 726197461 981853275 630854813 642856570 326183956 461968907 404114188 543381090 720212972 805478002 190942970 619444816 943481745 948711720 303909180 887022499 547963543 768871299 284831285 514839584 249983438 505911925 116198943 528972193 549210708 904530581 677002288 942936494 554205812 590174987 819755324 880116750 781346024 800189852 163222063 985737176 883008418 995033603 8503880 401400927 241732937 932847897 912666851 914825247 353723866 907335040 208598843 860730514 885886340 904655381 321857455 950734987 745675698 934997560 43618859 463864573 525024193 964362673 183706782 698598693 580698282 724742663 75303975 793776695 267335743 336617271 348883863 585218419 202734908 960002101 326448964 904539051 774290659 782955778 144744119 973952363 42046773 678456583 500399965 671955668 576823169 624590227 691316151 896050077 308723149 424309045 625621796 962360214 431296719 825578007 953240630 998085745 227689349 342449989 731010772 922188454 506678330 732874242 143386330 676939363 771984863 900832373 691477639 762582703 617470372 789267097 417669454 923382990 245720447 961287731 139703609 378837280 770522500 843503577 854117843 970286047 283869640 925576519 257471103 855389223 275649349 576334602 78420044 487726189 518884304 595835861 427534951 822615337 831722483 954041194 982308169 997096795 59647869 275146465 447234592 847623101 269585637 761799686 669628547 701848393 804650431 855669168 370790560 818355290 373168903 700112298 470256396 639845237 367827760 505647819 335030112 546734095 90349983 810647509 792595330 967724695 942956681 946422290 924664868 951298337 867622958 886660720 881717684 967070751 70304385 141101277 518146898 887695634 539947190 581868279 690699288 971483992 342230709 438099474 184256249 790828883 342116699 444031578 997619820 999968916 7110757 576678136 391561977 665108658 383113001 948644886 224539646 439396286 244536063 568673959 414265170 629229243 17417349 989973220 458328494 772020322 599687619 869200272 571096900 980921643 57962476 141209501 706360259 978580929 933528313 967442844 882863199 902926584 801545919 907205505 94785231 189291680 679714541 962915321 374147671 403173386 606332560 724799637 766312979 908164033 195305985 374061423 60322672 309423596 876081905 902081833 43902197 65184663 504883635 702912393 165647402 586744783 388177700 518218656 844747393 984523662 102138222 394465023 188196299 385953829 750788671 975551329 373150395 880652470 103678812 657951469 764614453 945016514 978537656 980743561 431896355 636348139 940364167 951608679 320185501 708167016 317564227 463996887 838514021 980873638 982441023 995292360 190062730 961637128 354193169 433607871 610740327 844302009 513338937 528705750 730881880 831225808 873969402 982997014 618332936 850918753 510741140 603109668 445648149 843054885 328330888 494995478 473289759 643125408 257612894 656663485 633224805 727513741 143722603 617142802 433525299 461699112 281339199 995391139 41576252 815086700 719636148 827915462 514503496 581240755 632397941 710052316 474630779 757475602 877489012 982419467 56284983 181326395 358479922 457210861 933969187 978901917 891604395 906280929 476185107 691800809 916642047 982248217 380856136 611738943 594704177 597975524 844071982 987863349 932533992 957462865 723033640 883425264 825349663 867513083 140590305 625569034 815126206 988205467 227595606 636269710 204346155 920171850 900548434 927570984 961952308 999333836 892504659 957608809 132287125 598217203 7951097 444634757 382786546 783124955 345451319 378765950 704230337 784267908 519415707 666705145 410919123 412387268 837648253 939217595 460640422 607696708 451060649 870699869 584833835 696854160 69729496 643046971 40675849 984484632 197270756 442900859 217321337 984542615 318200128 743283787 279400672 379995451 406108397 960617368 141594842 220170912 76601318 786261070 354988824 594306530 93169324 618207168 287616115 519476530 580309965 736257757 761617280 843740138 308492399 901739132 555748603 925945155 404728198 840620282 786489141 977854859 363177301 902130648 806787036 960614660 233968719 595291753 747415324 881487638 904445445 998018746 429854117 528155150 834999471 908210886 527482504 852765831 96688501 895963469 854364279 871289034 110592972 977362605 568577406 864375064 775971081 783608460 184518515 227847049 157406023 511453720 637090115 846750885 436219255 452157685 315919538 765142159 144798016 931092418 377467269 622292656 771653499 972491344 638891819 686903593 380165552 602319323 31844635 200993450 885149456 934245732 984215484 991361838 447829296 636373644 749449526 834226260 380901819 822526828 833189382 878631758 889930496 950308497 519093029 860153349 790556324 930037400 351274830 737232278 964984275 977598575 623132013 720581467 308871943 400491100 583612038 947986038 585543693 602992490 170630459 714669340 384462948 408420017 216866699 937131217 841251053 847599321 896581582 964243468 897138599 924439645 628332104 974268348 627294275 970354293 669447917 943697970 423911176 471294149 509337336 688579764 45538900 172398818 565928177 977613387 558984878 659108299 871715867 970475918 91229213 195117414 591057657 688433357 13253142 492694723 949766774 952100052 74632006 910667776 115159131 301233811 55754192 857214450 445165321 531926467 439594885 583189233 4695181 654159374 239063240 335427361 795528806 987373287 649870140 861979429 104591409 997636464 990133102 991716527 525688263 949456132 211715597 321053035 569603419 681971679 536677489 610844016 58978427 150024239 29911574 855295815 319323989 560269026 877711995 956176706 123550557 425727172 238208979 619656354 542849741 873031400 230401405 846347797 574559616 961354404 428026762 868430156 693931291 732602078 195152513 434547908 714301820 806773639 909004863 971250119 588231786 819325135 508874760 852812047 68300310 599653117 702229791 824063065 968806026 978770019 72916051 891751818 614837508 752371886 53488782 389433749 717692579 735901386 376980765 687167113 749153816 974253213 464386880 504351031 847869448 929414323 365158676 932505378 371464959 452993137 34060942 316811440 944928010 964145585 162315104 361243337 573663550 969023103 680807049 895168285 978086170 998081086 76121675 392824822 639877219 936590715 757238404 834245792 277200469 957914047 292822770 469380873 502416020 912764114 389263413 798251444 937723838 944462915 796218717 831390629 644093613 802369141 257214165 691136905 957634846 967827222 625831721 732333612 12881611 568658339 93424378 463565394 443091377 575601749 184444229 309598163 453660316 773060352 737619180 934880782 249468025 701431969 167885771 766278128 809282569 976517450 877293617 937465293 929755656 951789795 732474125 828339577 673658046 877508216 537958259 875995470 726314293 968773560 12220417 201360747 432116229 989435022 203123798 736810265 51397993 537632686 40877513 272061983 352652189 766897098 70537696 543146705 781214827 896955398 199485772 942579011 657363645 968205177 90322310 635829721 455866284 491850181 284197137 861126770 71099762 325660609 13305345 218737183 624795381 820953709 175662139 876085043 786545273 870456311 878487092 966568009 873786602 966737062 763920311 855490824 505313874 648138861 684073694 987537880 483950391 974224019 997212987 997586790 958028458 965128258 376490068 778782117 397561621 742211734 409417956 615047442 520780998 571757129 446046498 808427040 913229162 930520224 439027362 976150840 364007795 471919595 729478163 732687720 189475520 615397627 211414337 682871307 334326024 768056676 636855844 760842576 763145372 918377984 614272227 747076015 350984505 890104295 108957188 635579104 883577320 997366484 168922924 920968043 325077345 819127952 77543837 699854176 113053667 831422489 661092618 755971557 251516283 256799812 270822833 771685608 328272169 753156088 28738524 901210835 19317930 50168220 802855391 841219876 757584750 796096831 329756311 425491997 627859992 908374317 590783941 950524060 761362626 909551055 731284259 765397667 272694534 297747551 639233080 994810982 435445744 436106235 528576486 733511162 87634165 469964418 286251933 881007414 163234405 501994298 903138079 935380500 509787943 585386076 283593617 583607660 315790665 761882754 248526595 468754271 11060448 491185862 646585243 761441488 720522686 829603732 243960741 823241751 952543129 962180121 234694395 494597572 883861652 885286130 965049265 973126769 723392375 923033234 7261720 565316915 112374939 771952397 504372380 979664150 246265917 547557745 570264816 828677319 876967384 908666268 243120057 479057945 211890025 657030046 588895022 990329899 862029678 952877449 515931144 893412032 30314544 568944705 231309718 574857350 46498214 727122575 842668507 898446988 572705324 575999923 20360418 654418490 370544659 819125819 960106947 972666093 225878329 844972581 486156122 529486175 799361681 803321483 659327647 690875938 306480735 856537988 12767105 433046836 907748299 917890750 61589155 908043241 924435037 931037327 560895018 903165759 441446434 458625551 115481652 557760406 891448214 989077334 153009314 522710215 370276905 790933197 141036935 293778499 813843402 879322556 967696336 992617646 726875525 803698981 751656362 816596998 114374824 559648682 257100479 628694834 494671134 632326415 504657947 763122457 232585118 909295380 744170127 931822561 407000333 765580975 980402691 997167612 277758293 921633074 359325873 633702953 591548932 912748903 397638596 469181923 90278809 928769200 824849898 897325644 232580655 778663829 28801813 175728621 339128663 884142183 997625205 999281476 117647184 872963949 846735174 885755571 612453768 670118138 693874458 777776321 229179799 867638507 313269054 428334960 4708133 457270128 853135893 976431516 239867595 793229362 827516535 915123191 884008413 976074103 175658392 268518144 470782537 654765968 104167570 845812736 94775069 592872384 330490424 545710012 670250707 977200443 721784275 872883226 296769866 604093490 311409339 608763681 386433576 398524503 922503204 922667711 870799225 884801781 340381818 575784526 666320878 779149665 925561942 974196057 295611857 358772524 788021686 796459080 510835262 869690433 724612528 928719948 629079480 888021091 29342660 400070409 782150626 812257070 173372563 792511376 357262291 938297765 470767824 712351754 281368863 866427321 446117973 619626177 105619045 587110916 121017892 907510994 665394751 933425989 529893029 709425807 307900976 468882963 734126626 946013708 346869195 906661396 978607433 982010226 816729198 830381571 947327392 950785635 286855235 931093877 78249332 412695821 459075646 906026540 755102481 787119090 153934636 224335845 233368237 559577346 777936668 967756472 58530514 872669854 119329988 989494074 723460903 800216877 19752467 761234746 986634926 996924783 209758122 767149626 392312498 911035277 366335113 885372336 330096399 571117378 391440440 636876853 78563694 472805361 557711858 826842608 947556456 962198801 559422265 629775028 553699636 568717105 212369409 901769923 939717356 990143188 47702135 121193931 191881299 935527749 728626592 937846798 371416670 712441725 705806148 958243365 712263869 715070978 905479914 946862157 949549001 991904763 506148544 947110039 219154013 891884848 502538988 584191487 696157498 753418435 915219287 970773619 78799928 435336958 148863712 989437566 765075602 947785845 908866063 915180689 844797636 868552888 657399582 853539422 971255304 982159430 939889455 947825804 274624942 681881432 526592196 868528237 241138387 857888495 749770795 901938843 555417406 947509668 351253097 932791898 461187155 999425604 266866781 524184164 333477265 761024194 80166360 879512178 737638192 898060387 639593441 783216157 635508509 736180929 544065720 746957152 181658760 627593910 408153873 880888497 908348834 961087311 116255499 454651111 225912848 672213663 271381036 321623322 489270886 732290001 638702029 957394657 550290365 564977514 804892662 872576671 74263275 476998462 51344260 844114862 794517123 970721891 319359389 511292670 826883521 944771519 63905952 470903953 970483960 980725306 529093693 548446470 25998961 445139396 779832191 973658582 69666999 650366280 923120205 945612682 570467693 874032516 817786526 919315213 393940105 625458312 447849522 570176778 239554267 777538237 471613829 724114741 926077789 935558000 682222757 876350604 775733177 833392879 413828860 655884618 130792019 423979403 343940981 761170505 1640845 284627551 81404382 847261797 572163578 859112312 898418639 905924967 377115941 603792884 211077583 236032425 269875212 273664095 723788602 989840017 566048203 989004967 355525509 364543660 476131357 619451636 48630534 546500923 427278584 494962864 935212392 975755828 748107711 764785610 661280846 768752702 841617322 861690724 751016485 941492130 277289215 939652668 835915027 993167426 479545374 558513801 566937769 577902527 993020435 996527157 43647800 469857994 259455804 942370659 339365955 818246092 872260338 885859061 206993540 701148976 890176953 977584464 9889576 964987058 211485933 225623655 709255744 955420496 265826119 691011585 179243813 496543539 691450978 895264922 806357961 948087566 452495218 805781252 962493602 998758053 590260152 860347381 137012168 784852991 918068279 978406230 648484456 995828831 711827212 974138386 878535806 974852218 10121300 975797889 271378097 458739073 459997644 760678306 89729337 617780957 168259798 443501272 650328901 702483024 905861141 964285369 673714525 778071763 178893659 646835144 22725699 751387787 505636760 678395836 564090840 583202943 223342675 996765900 982441998 991094485 202771557 236991491 427897605 743781855 527838761 831799715 312050535 701083436 628756962 935213911 831486521 878301476 374134184 695439488 602094505 685077932 215459411 489226457 650620052 736940476 129189630 430171732 805015580 941914218 27258370 651998474 630098858 835355992 199073370 259067186 822925830 897256488 199909841 640837024 62209086 272461581 889062317 955537687 550684645 727554558 821296901 946111417 352596431 907445528 21754748 787556913 178529665 377587967 544025349 882361100 588173028 867164448 95566782 209819767 637787248 730314487 517588595 530081515 76213852 384642163 551392715 761751645 542396445 640111597 355617195 355625742 315465564 706287299 163715734 463876737 340373833 558669777 466644789 469382558 752003894 940126979 546159392 650515987 798018820 884029532 699423740 783801273 602821041 698113705 997904347 999101816 631498459 676987632 469019451 925464707 929594246 948519574 392721403 492811633 449432199 613363950 304471654 338076962 286518618 784690841 383842591 928429198 292187985 842675229 929653561 945332672 797142799 932144649 928117699 938416796 834649013 951756339 905508998 955408574 686722283 801703848 155519538 332857019 181030079 339183522 960763945 961943930 55868549 170090084 28889772 648530479 163049884 269209188 511471351 932760206 656201899 802394999 948691319 978113916 948714230 959441477 690634859 801113602 333241761 978240105 609679922 852757617 507803358 695926499 301167414 542454681 754616939 860292989 793399019 912135233 849030754 956362480 12943121 822441836 613279225 931299176 364469072 733965531 865901691 988061687 421150092 909106570 294824750 881429954 874918209 948355383 847257073 947876021 936049079 997981422 600020719 707459457 678678981 864686935 910378495 956244316 397365809 423144918 769370624 814138783 1866114 50297427 636558994 656744256 615001288 738691384 897952046 928356931 442858306 612212601 184622990 706780203 350649208 473488716 21580211 805247368 497334944 514990012 13757286 899589600 287709997 455203164 787226304 849994617 502907103 870527288 584860253 963472474 820195101 909652172 605729974 945483612 575187129 795628027 349512595 868993756 994770385 999281609 960135941 972241669 209856896 438029451 844195576 878813530 411861492 843001301 213313863 713717428 21330919 877217472 710501717 887623428 334490981 897940416 675729639 881736295 877604502 901121778 509452720 909825728 784485223 999227429 130584873 601992810 485923021 763749086 819461941 927774299 841704719 942401140 920411066 994118040 800265747 998664034 493837737 578202367 602895315 909534445 603920455 766266187 905799926 989239983 336145111 794410422 817337793 955303447 179974649 232732646 869946527 914187240 354005085 538862526 298648004 347175077 768724627 990243268 935949048 939564502 615020382 901316389 380746182 519445669 467536449 990714649 81225891 445968928 324782624 589661486 290628187 767269709 49165876 723937681 512495182 698954054 609321351 807166326 244980806 465570637 151101793 310296849 954522893 957172391 597192341 765358705 319548872 983851198 449479980 981289445 602691182 888416253 858605789 981059760 93441297 101982875 267226814 400042376 814917207 975911726 585400258 780591908 741575728 846828103 951187848 964670111 14092972 643301838 273724928 376232129 408100639 962221357 610309692 650855096 146117113 357631688 1641848 865387500 838058767 987518962 712584157 728765191 115995492 873620582 649646024 668432570 267921947 851055720 274691943 949969271 199638235 737942230 753433126 770839926 875538878 956217665 224805060 656980075 645501802 933664301 957747653 958416862 937422461 998130855 775289199 984604822 994317015 996667888 436353390 442101219 81450064 916612658 317675277 749838676 782550648 986867799 34853520 507373158 445874910 486315122 298142065 343576167 817865084 833621416 848101613 970989507 774962430 862988582 360420579 615298274 931385784 959898797 709186489 867087327 511414087 923635047 702993171 823956704 309541534 963863749 130599266 510459361 869341667 972651558 663331952 877978130 691400114 861837451 790996583 973983263 31178771 892948819 159240188 938703508 84362554 752193978 679874701 912785127 390444046 915570514 723383810 856354165 944641434 956364214 146140726 959787797 963070864 986122369 873456638 939182847 42063062 241520873 719786744 973545240 23833456 923798500 483952286 746823583 36838550 510454904 555896195 871047796 741017720 813234635 843511007 988720933 706526597 971294528 919512014 956111068 155481695 485164963 109354662 533611903 110009722 774167074 440693767 731915360 326015089 350523704 819610147 923664347 79094649 485422817 532601321 772427008 509855935 703552452 698289038 737970393 938507475 979960593 674836201 901535221 373503212 748751541 730624740 890879779 17749120 784978041 762828475 787502875 576500807 692297524 221795546 381265005 514302174 675636658 292359295 294898692 561438676 829364567 838963293 851409516 96846151 663430238 659407907 834392631 123077287 205464427 895762546 973510806 672752161 711706092 606028978 973226890 709978461 745809487 807645032 870786722 653502653 781263994 778660877 872387105 428915257 585993324 454070592 797324043 326460819 387325136 805402199 952043019 348044727 425084530 537839306 995414972 318906249 504076896 749443069 982446764 998724901 998836700 46792180 807978959 290949962 742208672 322770985 389067835 366233792 639107219 737376467 845525455 114697306 797745763 645624212 841506000 602118609 799633025 246814606 362262880 135666698 284498058 228737131 342131332 973363922 981379752 973681771 984013012 560579130 607550180 315335950 559570461 823103163 945884097 226773175 516227632 607961516 877053103 765778935 928327279 360622670 548702470 913624991 920835498 307709354 903346104 236109897 475276062 633738856 678010546 40514804 329433657 478399742 976332932 545243753 627479196 247618456 534996897 138873910 939457398 665504862 857220152 97108061 825124693 524285377 650447894 660545694 669826569 832889951 842197855 568381887 627246990 280978358 389946364 485041021 612478432 297821340 903114765 685004257 965245015 234690762 543263567 425439166 462520686 529153210 639410576 365896546 970234517 584866509 697445773 439846751 783700191 633368454 898594053 542450074 792936880 796568295 848022126 83444550 886749853 208960153 991353169 3937742 968221780 772099295 890537428 995908611 998720955 431857810 965500187 702395727 778476194 575954574 741582945 269130123 335928152 344408419 503110197 867610948 907984802 289839820 570847516 499836891 800670352 497535865 521266515 687093625 711744709 101388631 977100510 661982732 842577106 634614837 860696161 364944587 696676799 789902793 928980835 850548192 933687893 740482696 966272330 230500143 626213032 329796372 847686652 958443037 967116203 597111796 781595904 372641445 760133717 33433074 35814578 931729284 944482789 193775319 647932454 325856410 948411337 783092736 975665998 738388702 885495755 376048176 830354726 990893097 995520758 758588808 957504989 905665345 922529118 70514150 93497160 502203990 919223377 333579336 341614095 976576684 995992183 729537713 851846275 365004731 767069773 2601790 250936114 61602890 885030785 825846254 973433913 948754584 978845721 820138067 997700022 565405252 769023489 289401621 400199080 172462940 390929901 342714020 918341198 758110345 912213373 468096425 870426023 967250157 985771550 897831474 941631132 601946165 741719792 954398177 955373249 409226648 805071303 269330291 596977495 460994523 775283334 396373086 774937679 716873386 974267094 78672259 497762429 20924085 908729004 447543310 936788269 141570364 603881030 545518163 985031590 954840837 995283195 591263965 718155510 615579542 927615904 985153340 986833812 750069370 771403485 525452436 743881768 136526477 692568927 243960526 802941144 589501141 629512060 777766672 925879991 819377513 898796007 795922230 886562481 478941745 828920173 247614430 617124646 6352110 860302858 623699658 989418084 706630256 777538787 309629042 757199028 685443706 714799383 80870421 270158556 560465789 720757919 347121169 917168770 73131963 813670895 242026586 518846164 350588641 915393704 42816668 862009205 306900681 421937043 149946687 284691348 953572210 973024323 277256677 338716925 544829357 816309215 826797464 837249239 820683596 911048195 650776187 737772905 224567740 662940428 884433247 912882593 533489682 749494843 750686586 861304150 980889433 987167691 936350443 972736723 622167778 760452318 539020094 608390563 671909095 910067840 568277161 730526594 969213714 986933059 75420647 871067839 3019703 195114184 4278968 539817042 780650101 884497861 824343506 857955834 634699477 728284312 735777459 830345639 734017888 917683327 696315315 712093230 927090632 944585701 899031546 976128247 779642499 948220197 714034801 755472585 569947947 950994603 304770711 755365740 34108417 727088424 853658138 987823748 922051442 924591987 16766940 707353913 695032802 891090209 755270088 921443741 571882888 853445253 757552082 940332696 407636956 912511626 204540719 926064586 356796603 709651387 395739959 886243353 276047379 279677178 770746074 875362242 592277644 717665584 643440574 972678809 24585878 270463537 237148756 495386044 929216992 962516650 640791017 676133255 46388074 787414975 421458808 726407778 513213637 982157047 165324847 423443125 84117727 767229237 81711860 120717854 916822606 927972592 310203518 443763195 142389151 447816685 91385679 267096331 697077545 814008152 204253060 745651722 489375192 826272276 553696015 874811067 550473736 769012302 519215066 867783375 141592471 808737204 126759388 685872524 859336389 905478485 569803921 812791347 914772439 964235630 312160587 899657116 214521996 727403138 232362957 238501785 333690436 545556871 432682303 714078537 896038645 934263201 138325648 497357815 581767925 669636665 561829076 996498458 333608998 857905844 754476848 842340345 261450765 617211004 840708627 961347298 718489018 884176194 791527731 908200944 67822539 447982055 527216886 567089473 881333788 946547617 822905783 848387811 418832500 983524485 744075141 879118632 105288589 903880996 910349422 967567960 152394170 840994738 368693763 954519662 327339543 702870071 350984605 399712743 849123536 938700038 297980362 685349543 73353593 262348000 491986813 953239872 749613904 781903261 784229210 929477537 962937134 968892339 300946430 621292297 983815143 991897286 198866540 356704788 96515518 257916072 555322190 711738211 252000253 300747095 6068653 645367809 82122270 677612410 439581193 484140806 583444404 938966354 260334577 580661946 228696181 519553140 744983338 815954887 981655570 999102180 137895521 434070191 525333750 707874354 473131558 520303216 214882495 887958519 630335996 837143279 76842274 892420518 955064311 978690291 430692228 654086840 509640877 919615931 993782850 997148711 400249522 829766596 90618662 793768212 81155734 503165178 902506595 949243011 837542828 851518193 229106069 711292848 785167767 849464791 860120517 980428172 417835502 779058517 823210171 943315872 17756690 795312460 155857787 823067954 916163488 987832803 448925945 706030883 768912883 973533318 825029968 826559518 828100762 995606653 961172502 997341433 611690914 664487841 701114886 892665778 67870312 960659738 600568200 942637782 92959512 851620515 404550390 674247180 251709808 586993236 661439646 871552572 898286013 913040585 775807853 871921223 660556722 805049819 370885603 681876137 110561833 587947299 778326115 998228349 942394985 944202163 474586442 503552667 119291892 947004748 102954409 639975374 601107272 843487208 129877055 578928842 590390601 819338911 983531101 983881806 556024663 710471845 427831302 785665200 410538350 957543000 802672275 951147563 232167786 753040913 903594378 956835683 232409244 401888827 34987171 230227041 647251577 682863251 9797830 785860464 553447810 912026256 117722533 192213567 897122555 905104002 531660977 861466944 840709754 850072279 65643391 173153359 115782189 717240286 852752611 925161034 545704867 962190291 202375613 904562951 588027639 944282282 891840708 910334036 217765544 604472376 749326361 874278655 589415503 819991541 97641981 560421118 535622059 623533873 153495566 361249236 917757212 987659310 112536598 919115093 693567097 967043395 73577493 297276158 799104596 886451744 531006385 817559987 296797674 734854621 391048335 573321125 482440527 758630822 972089591 992487071 623958848 816123084 323111732 465160816 968418450 976699404 206061081 464097425 118272189 414221837 937662189 989587056 732481613 853946840 620825893 650831117 9278206 257578842 797336554 802235443 556402803 652414458 385760285 765461013 499678516 857145957 241739951 585823672 176069291 497689937 759216472 929262516 133910950 961467898 734149351 994988868 681916703 826619716 791844683 969771582 644541919 953383763 412126426 885935004 352057145 821282003 391273538 736321608 692490159 705796439 832173560 853148522 643220295 871164094 372501278 900112917 462673925 691626817 606336929 664090279 802791809 884687600 998416657 998965979 147170816 496003732 558800127 594726128 157580293 355075510 71893495 878054063 768084439 780286532 498669967 726958666 288589220 346950558 942694452 983262252 843780566 936275641 865255939 952411532 366882279 851988891 639275520 978525924 81544780 997098152 469883984 568315687 429792664 994145198 6802142 73000285 478166247 604112080 589446176 853266006 358127106 963994225 336064587 491157545 838560953 966223316 218352295 994616222 325738273 825049202 12240819 47164852 398141504 514584704 510501500 866832441 995855431 998992802 949937539 954113243 356420400 602678102 395790294 738259771 2362420 148525696 337239677 947227244 433550440 815838773 366519606 863904538 176048571 176154445 86919541 119942869 227877079 382930174 74893082 516207032 755077728 812876602 262819595 516397675 739006753 890409242 541199660 882706634 468385393 768393351 805043477 970383551 666285395 739925106 694312046 874900053 540658501 577322099 730826058 907120797 941697188 986431772 55960148 700516190 559770159 650839278 236805057 722795521 303842210 313269969 630136125 656692331 223729536 942472239 527691396 628768449 339054734 799041512 878074587 991289043 625312192 970984862 950348560 957498131 517988093 623871659 629247807 728893963 455148908 659892693 374596940 460223402 288639829 879330294 883816306 904193568 755706121 819214749 22222624 508240174 507782007 803850927 457631386 894675384 348448668 350718256 785535607 989433508 812687633 998002986 464204331 769824551 114944244 657417403 368384047 435213683 742226994 769083947 266341729 545447211 256040756 413753667 437705583 749446966 127561324 436943447 626641958 885935267 247667055 596810381 432406001 512725500 428127463 672901287 673947631 863147349 888881143 959928526 754851303 799915608 335256198 916679230 184859262 585056723 275531926 287822074 848448066 893468769 493984402 855338024 968728577 996008713 682299183 717818878 932666637 966431833 748886801 754701439 12464063 593157785 273784667 282142242 761917090 955156528 222391971 555210076 190004939 879829987 179423922 474047581 462343387 501682676 927932497 974200918 313478165 527756482 797850135 822945056 851361612 872900781 428915762 522393416 788963459 946916280 370411778 688541639 385857136 543344316 603283875 733195268 805041831 828929250 7051227 589914055 178343404 404519040 218052502 967534185 805335256 966206432 235866628 307220786 172135256 434092992 929125847 994036038 535771365 813187499 181416591 471283767 867471629 953162445 688514277 791650615 217519693 421435158 581601959 599327480 35139703 460670927 598434093 885949843 534181441 684396863 760422571 934692327 965210524 977789580 152155982 903563105 245493423 303992593 319229699 698065315 98461083 828416251 115776641 984882264 628444561 883500761 18680902 682716678 259579964 688015515 635034919 776308166 365943780 655522971 486540385 855522854 87206410 259720857 402954344 870645341 852944931 921191177 32039606 465649134 766346097 911081490 668847421 764693799 616798205 830436065 116301161 624745198 601880369 655645450 249643381 802644387 794194264 923341679 420936052 518723870 447198981 637319163 706755529 835436256 596084443 841549968 756195048 907247464 713964435 999298925 930100656 944882833 722164562 837079269 980644874 989367019 915036873 939895560 979281378 998247221 707511103 719287597 916332174 918985530 373977031 655999047 35888787 823839410 416976610 529663575 612538686 906696524 338370700 421014469 925392785 991506072 447130763 663854132 715396948 850704427 791224491 960639001 530363312 593730363 54480416 705932499 376818542 941758244 242328529 873235397 346283989 895814046 718259974 891103006 392049627 409186274 597274678 993075366 150358177 707487409 178438011 326679887 384098248 722494039 555550202 805306564 168256067 435691812 322863528 963450498 974101308 983196620 215334588 505427085 141555857 147887222 178559159 606610807 574841927 996134577 827986712 988476467 624889103 712226341 860489952 982895911 598921424 611599053 811699809 890426279 373176643 730034283 5309319 175038162 571704161 745529081 453291571 502280809 998033980 998460454 562534325 721343143 288741639 820707073 684067117 797527411 958573165 959357733 424164545 648839052 837584727 985531061 76328140 621891199 627977960 634861517 320059891 862663205 558274254 936849228 153053874 323741202 304361729 420494283 574688048 600647039 922818400 924536392 962037267 980783930 799931643 956499384 226437439 327849764 552799925 854999716 173330422 810692792 875034190 876840573 277372056 548554109 346977512 830163312 486953462 839101782 924014356 933398688 280604485 578575452 318230306 847853272 724449173 771070103 110434069 387216845 485984987 797154575 464609964 775551818 256115105 789886071 771076639 813412453 110754698 399224022 714894689 969233568 213034545 588850611 529168772 934491605 882592827 971251869 563080782 868599524 915063718 937855897 643010312 862445571 506728973 899632534 589644176 710617433 607503587 802501837 430695183 474217095 608125920 723803096 983031273 993285240 963130224 999580237 102105298 611182373 178961692 501391028 173014395 317350816 700263297 742586460 343250725 756402517 34290048 735825234 360295015 472611702 735301589 892599374 326650465 546458952 830519935 986407125 802122114 840670248 540740635 958804172 69427410 305531014 280750459 832294132 715137160 889541760 419716299 531956765 357470267 489230937 83653825 566216319 288324183 781205075 298164156 603381930 58799156 760541817 866387988 973666585 911307455 952185272 442371290 741808239 97266512 661256849 495069506 904727386 88675197 248289833 785376212 789086106 593053884 660630831 263667388 329752143 139282415 555760167 760172591 815483768 180536262 902132157 469357207 594364831 960554455 990115606 24975147 413869389 750802733 842554883 797180978 950344552 422255518 619391666 30964660 130155459 981189296 989281070 374047787 511305858 135537304 789381338 102605858 116463071 284571479 580855442 530817395 901966386 96917477 267586821 679720538 848384980 442503002 557927577 155632079 884422652 697878485 704879388 423706643 977073521 974033752 979796746 990207321 993424639 624312993 936093644 310139675 646780477 686230961 931776721 285695048 653358988 874734056 976000173 473938041 771304349 861417941 915781991 489610479 693500814 209214983 969615071 660039454 730043603 687591800 923594434 416342544 633112540 845403565 860210963 118819825 467117623 64042195 993464684 982996858 994056768 139263988 560588118 77281666 693584926 190259247 257664597 262546659 972239302 958305687 981898175 710999182 803502815 812635719 988954491 249695780 258642767 705891112 907759962 297065661 560012232 552946628 632443899 890727825 999238706 975091582 986185202 614827103 853414223 338291684 856454376 242149180 865393718 515171535 762983033 863457297 882434914 1896494 120320870 609984086 951391315 862022408 893164821 894573507 957430178 476336263 645763697 10606910 115606404 927860076 930634297 146786923 356498891 873039094 936286825 720470677 898101843 602866216 714542714 847861386 926823414 196209731 300154288 435889913 538359621 200966815 995426682 318564441 587203969 491742586 665961446 485369149 955656720 167690406 222180694 343912309 695138726 90590461 353318395 522192266 704385619 20617006 542090235 993831963 994379239 296855811 506652581 796853074 986221567 683482481 992602496 640228306 758135868 632715532 834402282 841093808 865261895 629564556 957623963 999293708 999385685 603682474 678662074 855397912 857301630 147012057 580332244 114665554 470507339 927384941 978301428 432901350 435196314 427681416 537988119 878772234 893004738 755576875 863446834 686033317 833690610 920296107 996661133 133473042 226594920 434918278 568446648 992416874 995841978 148960544 151226513 980558473 994102434 516472380 576691954 846981995 948725762 660572259 962275514 484740348 808532402 40830660 355999391 723200412 765130624 726813655 817506553 594599836 916065094 334858329 693963604 450513396 743474593 49738628 200511622 477191612 843153083 647416989 821778117 378961176 506144546 164076295 385291885 733210251 965513177 431865929 444483521 324738846 466607486 914536008 961654825 580785103 780362026 956141507 977246955 742636147 998423933 473849988 861763708 518573929 728846473 59129937 380160201 414661284 538207486 802132602 974905180 71865198 323477960 400192783 528249715 155961044 410220916 427452156 825886025 210811808 799234384 286525271 908794811 775097722 797418698 751991016 888334774 626871864 692128269 285831218 442799946 781201805 841809572 695117701 849582201 733959674 822458625 426392413 700594924 655910296 761669497 444400002 960212639 25275052 540576752 663657922 930526925 959477448 985287392 266123896 830461015 504317296 718864709 443059016 970810244 52453385 933153037 194359514 942557427 132938704 871444556 386150406 569476581 590269246 832765035 227286416 505122734 669140610 785977845 99106367 930724851 328593349 417568170 496606421 820641034 209385982 317012458 703350497 781668287 672940062 824121168 34391576 68232140 768965845 884118746 826681382 905782678 570522025 684718527 485678817 587890580 729661502 964055472 402049944 755095372 128648473 962362024 341347101 409425841 219535117 522195850 951357880 970025911 862092007 973481579 557311524 874079348 358377542 469379927 546647102 994859195 678979180 856221441 751616738 776063917 624642088 952979325 585635675 586817146 289890382 419087349 759529982 868612095 720277968 940931013 575320837 666668659 936265279 946219312 459094453 968673240 909165265 989075258 376454129 746299004 325265378 859131717 807827938 943444960 813950018 914634204 530352144 973493225 938300867 942783911 106902735 302702434 612414612 640449879 718985870 783082263 364371326 640913765 863488687 957630125 701637037 824296385 243487939 304427669 323446100 400284995 410563738 986469185 819281046 900845644 240407030 406662979 70153512 114495717 382480325 896635349 431229184 739369076 405839666 936508095 803547893 901483203 994098877 998427912 220277770 257592920 444342610 546282103 52211280 989526611 976386505 992277959 659568626 953066584 443418592 521564211 396609080 878208857 451327368 667926571 949713958 967280243 526362308 972955133 651269921 928431960 809432684 868974686 61912587 886149396 729877660 941193991 795441126 838663654 391215148 843448200 192739597 210242151 705397340 882574815 50539459 320380330 396804059 704551291 769517093 771409718 446679709 864363657 83213890 904329093 247139421 456482138 133972682 170360211 509065464 788807986 173097959 875580067 668900686 952551157 258515074 525062023 302838651 925611564 96184600 373833094 324002447 420491084 562449192 796032905 770408267 964566717 745008103 748924511 576057799 741780936 967169257 989058874 364683712 757159882 381714237 640526919 471222574 513978927 20062866 698862962 139880766 197352417 337355178 939616891 566027299 736399205 636472285 678683452 282638117 616035021 854336369 882002910 245518012 933196188 667759956 740412669 132746898 213336233 608381443 694303442 544463295 700425567 233087721 764141337 272151183 568264146 331870972 887287005 468627086 969472910 660326449 730436119 303885004 505727290 692913686 934088098 817383839 893811515 249452126 678748445 944055013 945300607 540705050 720363740 407889522 974908180 990424483 999773895 560976512 785066994 51941467 902597505 367675399 370242603 195670818 661236421 200108543 295962046 599173242 604750417 1990593 623196878 35952959 935504508 604741779 814829449 741451458 896427684 653065552 773960119 890952505 943914129 894349815 926396782 305632863 957198387 376379086 508781353 204882037 470891766 735842747 999428342 883002240 980897624 910914595 964683750 587942274 895858147 337158073 900691337 703550640 900567352 163672531 440881124 866334803 955998971 94885424 908785800 232458439 751233426 998814490 999052190 560951712 892543895 681396894 770088348 509723787 533696994 71555637 771646605 928327692 977356523 618633536 924504962 247733379 451259936 251646810 759822781 286340114 602773068 233658313 798730889 561361065 977468178 99256923 100326676 145743563 951976489 871691123 938635537 29668863 153914489 252798916 370614662 339599481 776789594 834956041 954383672 434683759 899511990 54443619 563721300 334951614 456617007 446391316 739804509 202855530 486009385 499838230 871071038 528519236 804270374 313692431 663224872 488469734 657195098 907554114 954077213 237529827 844944140 212741137 737112181 651998460 753764080 676427862 742350709 132953114 377359926 828442909 997046442 436174681 920510640 190272730 635230814 740785977 846975499 66329956 433111668 289164882 571929416 328480406 829723845 850618240 976869208 736581662 893520494 329134636 657820264 854131479 957426975 647563777 925485850 314446979 716253012 546680269 842600423 577172597 808788656 501548888 906610867 71143496 665602516 655308449 821900019 753419736 776267850 326097982 850753915 779079929 847146288 472712413 977594380 303291708 491716076 359402213 505085487 714450821 965619643 884667155 885850410 741025163 962232252 405109082 716345303 223474516 626946885 5317995 613204244 340250290 588618870 140797794 866140567 832264371 930368559 350162720 380024282 295103805 745971055 806431333 850515357 831274855 989668669 535941455 656993020 202084267 323187023 220449881 432448475 705469891 816458233 290539067 808306602 483792511 921113369 259444075 633553457 945447788 963270097 409782018 624531317 195003266 575007746 833345684 889822671 592670743 785219533 843887028 889328312 607741326 691497161 856386831 947944229 154843848 790732953 235217255 528179063 179723415 315911571 64573114 797485879 924875852 935702313 673395448 695074593 170353302 221076967 178626616 770691875 830945368 981800183 346292989 923611391 428059810 916540389 137396846 805003333 632138636 699945244 403666674 697033772 400102828 584532367 536873302 944379501 666049028 818724708 185910015 525666588 458783033 530216731 693401638 969680463 387199897 857100070 640971037 862010953 154778784 517524793 64725765 781049021 777336652 786209891 764828940 956781034 811120449 827810843 911930935 970302116 89671386 303358364 292245736 668694728 326173904 782059165 485537256 568727152 852339252 982542862 870290333 952801942 458318315 706293498 378866293 434858433 396203431 950674915 739415704 891384457 76603356 313321682 226173556 849101174 562872525 712734399 995285747 999254187 614538364 979881544 243542165 508408663 471739672 895260004 100406433 841996575 314847383 690184252 746584479 967746216 257578815 305200131 989389965 992297857 239020707 434755443 494223432 709840469 862274853 986604833 743531677 994496580 244526396 752866259 847694820 911332567 807471243 983970077 701283315 798619789 462340944 958265238 776631078 781115824 200115792 779287019 304118480 934203906 397380080 443062840 698673199 727338714 668161870 842433209 398388072 913720638 795856206 979911371 103425515 803827101 712413052 755762987 206240923 346230840 670425724 678807880 251011180 581126395 597338642 699800044 864394684 893866083 730934589 892004875 156350002 183058251 471952401 905230834 228022447 831652189 681299758 752591430 728439101 873640604 927746418 955601255 451104208 850425979 212587775 930511026 560252261 604581053 884628282 939070709 151232809 967701402 589753333 978399124 406167117 428936642 705524700 891049998 702217883 992864857 536874709 937799097 521348309 792865867 384194723 902628805 470023192 817712163 738252617 970005015 149205109 762152299 496498964 597983117 639861432 968616228 411922613 880527734 276055885 527149973 142171052 320751213 196298159 806843046 68431867 302731634 476791742 969725111 586908374 888065550 203059013 649375823 923795294 957090851 244895327 430891447 63794685 643363439 595383242 940686854 118673383 542010179 606671652 681859628 90428322 125849026 16351526 866307244 80831423 971363636 263386996 492472580 70881129 449570434 17946082 490577037 629242760 865192565 77211576 616251123 979485845 979533732 669552234 893869025 493091679 720066413 197375834 941279022 265548074 482560565 371183055 582421868 898018424 961684132 622656207 764052036 43465606 658437211 188643559 528207980 492334819 930122881 588420947 713266449 824983908 833418535 700455438 739463519 869449157 917016374 266305790 916049266 672423416 834258458 576856973 692879664 378593544 681885567 132017667 415780093 609284501 724534748 231337847 333636918 159477680 239040189 209571620 527499143 543171773 596850255 5203599 805486138 443289299 980859193 562497588 838311903 849272533 866074255 459997398 623031687 357271508 548626841 908930102 939275537 667463464 982275346 989405427 997754372 188417585 369279484 715037468 805181464 368647519 801244182 294977892 625394134 504697802 915145612 24468970 528976672 731049360 922633247 458733678 625009226 111661535 296232381 488732260 758509719 338069020 517427386 814898458 954313281 111971243 705862589 866195702 897163641 265317111 941830281 408002637 762951830 14650113 800682721 672637300 843442515 618491603 874088908 876918016 879485938 406176793 628170174 161571892 791720756 988782022 991643514 622709193 778580628 332255831 667961265 57214673 864807120 898958847 953431391 271528549 974130782 626423221 842495690 90496788 694691362 289386170 306377821 32682230 332207488 591206232 804462086 602616092 795468376 931883104 959761559 75909969 624597234 899885554 933965495 167242487 442107126 12237278 542731265 731724427 952292724 87205880 427900818 700698524 912423850 283354407 926845394 561403330 932857119 121058220 778984172 773061761 881642483 990523757 998947670 819790725 982876387 25984483 762134782 716347079 963313415 142368875 567052282 169023708 241720222 364866340 447464408 582112132 873612446 53245775 774123568 231174239 271950115 338522319 912145614 353506954 679272367 146565533 399746470 735201003 899182156 235726554 666456815 301387523 958867437 166131569 789398720 869877248 963107920 595991344 619064906 903383897 915335894 259722790 511605098 375447019 506455523 865209761 959094249 487345001 490011564 176224667 610038708 859735048 878892237 859251825 926555545 623319491 915964695 986311306 998892274 14248721 556585535 910060750 919961775 655471999 883962117 123877259 889168156 6658965 883701072 456126843 603585520 585854654 843767042 885998555 926135621 946254372 966745954 341510278 788108353 516734136 762272805 812128948 875122442 569704123 841205973 989532923 994960142 304384065 776915106 859687140 926535840 830394647 959479506 332322720 559612547 85100286 255829248 153863973 666528422 849043559 961795967 788457686 876825661 855334882 963285400 263954212 806027394 547083480 681868795 67451335 728751469 525900129 708162347 665397291 816621017 795355648 851862240 684471508 847911865 328180388 971504764 265163176 323044442 585503027 600676586 861736549 896466826 358074277 918153073 808484997 912238524 954861800 992577025 501239351 863710288 705323395 964694503 125660740 795332578 66237916 568332120 945319667 949539746 427051668 622331554 415007438 673470106 173728665 362894439 688478497 771487911 130792299 792742567 19547735 337148461 746276425 787248867 179271941 214604884 483238087 790534356 767543502 884472204 596783336 780302919 686581283 900314652 344071422 363905205 431093 357208485 103086225 427354438 533815008 760997199 622144047 732643203 453716590 506596705 221268039 826041437 700270254 912208894 499885634 569654813 570665004 798744434 920581347 979950110 51844069 919266648 896025028 996012911 133057366 656942784 908759145 928841173 213533272 254009983 862292830 940459585 173290715 512966668 453921890 575325569 672533300 859432566 906851571 995274152 989788026 990527489 316068325 997414764 967984232 973708845 86366129 323656802 698518118 925008813 317964988 434349414 413508563 605304797 180257018 252509127 372180719 629493028 429486106 885904729 618128357 998437074 630860844 673366936 266678853 462804454 897321493 940356142 999406417 999495942 672030697 894979771 49238803 399490828 487817293 604039339 8239101 289457841 329841305 363786260 871335656 874375460 820590794 884464335 9228098 523875485 827666855 971965852 601604087 823099819 138930391 729660877 423614940 813083348 821392292 839230294 777057859 997952448 628869997 748142766 827058191 900685725 336355149 831014637 525866700 850014697 453245465 880465832 295783144 509336208 120371713 554914471 176315024 667549204 416346930 982456092 603504606 783235242 950845085 952878513 238153208 884211959 900198370 972877928 526679520 960534550 261657840 631978242 671282846 904863683 673844529 732698877 967172233 988975986 651980368 657700071 977714493 985685009 229231695 892729105 778210874 829299070 208018468 261570655 552483203 872194886 87542534 697735256 498529667 842002057 252300008 340977974 133891777 330386962 66590965 519283153 246831311 821949310 95607967 442929425 414097421 817465258 903796923 944680732 100639321 777121516 180604337 296467024 434830429 545733378 624881431 999058858 385512152 463963355 781318276 827337624 517018636 590641594 431120737 687670834 991732614 992400321 689096748 733735194 229996595 624607317 59226391 681338244 438762647 595276483 628371806 635066992 381371370 937562598 181789593 322848132 735832365 772724640 877425636 981538675 327484034 492867871 81129934 747611355 753210574 833645512 886461083 971515747 723960848 914640078 350281977 636685766 61568661 405887267 201834422 826491755 853729647 877068825 81279914 140892114 808615859 906069927 794628335 882527348 368675367 529463793 59981020 413945421 839966028 941161494 470014434 618883096 979555020 979774521 158202771 742919478 282379106 759569886 79794762 869929499 413406370 775144267 628943674 663301039 973516409 992688222 234546820 806299419 409933308 791818286 808646492 873153382 187266475 236995349 407122264 489369648 189936145 435306781 930835019 953229638 644312117 905845686 76104237 987985981 114022403 445268795 786175170 869065254 160216041 939364749 584560846 775403287 658909777 926330329 520183010 825300804 677258555 706729653 937301527 973906495 963913113 967480256 686502990 900759063 375507012 829716173 653045732 996072526 614614680 723667117 715895531 723445815 501503940 860328546 408064968 479087877 432219649 737294064 331336680 970796496 114407042 840624603 314628678 987843814 930269287 948089590 517556825 717175552 758850681 762653273 497791610 646742860 69346826 656288873 512998098 785393940 841977563 885823031 94231035 575892256 878490693 949740327 581411958 912604523 866900409 930684631 846534100 940875482 892048770 943598995 774379734 933458399 629415887 735154853 548537936 720106192 865891654 978306498 683775191 875498567 990748916 991858948 266818528 354527507 693732504 895416264 117006503 619687529 663947075 962488000 835819606 945552385 57757244 195128683 656478485 991850558 863104980 937263477 293739841 711601744 876262310 878602181 182274496 462674488 303689300 509463988 854275327 961084420 561057561 751441567 964352629 981525314 329791635 825668733 590901004 850985422 56951798 376482757 716488610 823148796 550614699 563547355 311902457 633013569 368990432 608829340 956767026 965710981 709166445 885835259 930694863 997618250 854962105 972861954 431919458 763329461 891988151 898882806 74821869 939035796 930285295 977344182 261133237 829262618 357856620 685736165 382133653 830974801 562357461 887256182 342893494 965627821 770576641 942687954 767756771 849332916 703552342 909634855 27063604 666008616 153473643 822226682 498655594 893332751 9225582 691536023 4551019 616905011 856563982 982477018 939512091 953946761 429038904 497212430 950665186 970665241 695963910 893570034 860696404 997933442 19237608 206534318 318162350 860113425 977204329 979748937 346005276 933308101 872098273 887365317 134372278 580286396 334296286 373901777 106515250 466884146 644475878 650099877 974664524 989405115 961069077 978349789 558131391 902373391 573114640 909384766 806901933 830562626 169678157 268591845 570176570 697234549 782598022 969189786 624432782 863216637 804886136 879659755 862096706 868269435 417629554 486496391 353140655 792730924 196199280 747723843 254833035 946006150 651598404 831539031 991621841 992176962 440869005 803412545 122737271 791076569 619847930 773938536 227699032 584795154 202920417 551637286 672010066 912030222 642829544 718712719 188367783 448757185 912766380 925785966 48302395 60278188 173767482 643264745 608773861 691582059 897899168 957456363 844154120 972279898 685933376 888637965 704144062 730691024 463829285 969971000 935185185 936520126 931716106 994433939 686094189 876733759 883517117 906656963 459874333 621963311 157888814 692121096 162327857 660850184 495416769 895269101 77110686 591756765 598571378 884542554 556004883 922657076 888778968 972146772 674364186 777038062 456104417 665482153 230771339 415637794 827514760 924245502 180360118 926528159 566196169 645257257 415630430 828778824 705938180 723001014 931563410 937856857 661247119 805388976 838726914 872977288 169059832 836376793 523642549 899791141 778508752 921345068 952321393 995342042 72761593 970452815 516668554 889718095 91304731 904159025 360900960 474406727 930616908 987993261 343392598 995734257 642483100 650159605 446167883 684195146 456037015 956054040 203973013 838992782 156691500 178404313 126965179 907670843 156310005 277138402 860667606 966591038 518943179 738871883 312706141 961034247 170758832 571775878 707482432 905453696 988682612 997917165 624623338 771872629 677517525 954600725 319214252 577608108 920060524 937430214 427521192 483691948 753421278 847166165 738633403 897492729 749876621 805013340 69104646 743712261 795454375 812282610 572573735 804254574 802383096 838959313 548546504 561976908 488367226 556169338 161019031 628923594 853174471 953863081 915529459 926774199 804447838 865155295 443582758 895528626 448283739 986753516 360110372 516934360 639867035 826086419 75054558 247777284 647014775 747027903 158165132 626266913 881926607 994526064 942688432 996336750 692057152 763241804 81314934 307736881 124091853 896727054 785121910 818561911 508244852 680744460 598194407 771508409 280991348 764300222 323420519 615715279 979112848 991862023 75775780 554330768 938777865 996228111 22083193 214827803 381887795 825334065 531171803 567906553 553679308 827370969 444225405 640433947 930475531 983928776 295108153 463513717 499428190 538195693 680984739 783488578 741522253 894046517 876061139 937988073 849406916 873792097 330992660 544991314 548117278 796886783 101002805 823853788 98621929 233159754 645413955 784857042 739712984 994124375 906236696 939193078 681731703 885073327 223881610 328167008 440974302 918900174 323895049 861069399 354155408 705548289 462137347 852432799 434849138 727037136 873741186 939484286 115763518 750040758 487613710 781931262 180615156 281463311 472287002 474867316 630615378 662387909 287613370 663441259 854776981 943447595 998290997 999022627 677136491 973393705 281476023 839502542 909281391 977002358 380992035 404530777 278126919 487276203 749914374 753180910 716042445 969457052 978307081 986188358 567761353 937965365 769288134 789433056 430926571 693813952 928796698 979017138 968931859 989211948 871336871 925214768 336654879 933606617 783634583 852896855 419409158 707914730 647665807 701828447 492530406 994250182 318616668 453162733 811893173 999627329 224393557 283686851 57031318 990533813 671658137 939300734 442543206 746330930 228813404 855390817 932984952 953216067 780244809 786875453 215574890 819335647 682811135 953752991 350677474 789583920 811060490 814744683 620803084 909331081 896440258 924440886 832289470 977210833 878869870 976727623 141000232 660831373 268948420 593681719 180310470 476820186 7278788 912585361 921021802 926711537 495352453 875831749 548905911 587034739 377201067 900683177 692849002 745839772 164879074 546318527 689069035 698242686 666275763 865925151 803242912 823863824 716735545 762831899 962718841 993361369 45481945 964411766 649753805 657803419 133828867 723192898 915240995 916354973 883758058 955478960 50321432 401887057 848585045 917413918 149257211 722767850 438824831 787648080 566718266 652970641 411944086 451240790 691000708 821289307 739773787 974424369 471253771 551940203 5453123 566531244 627234475 835755244 529642487 626323530 133926045 519568605 538648636 648194740 711526253 949967424 931255723 999667908 266067539 947898685 28091645 216908197 240327026 481084933 323491257 332617783 423073893 649200860 620037534 955938661 99742777 126785455 514017406 646416864 657507864 758303405 492926090 903100726 295384630 804408052 536044410 998709149 871882189 918917033 361043874 610365341 876203944 923456969 32165922 371485480 279062746 937960512 539453645 685064111 490796612 673261615 716191987 940597102 389022817 607113356 503155515 665895212 476729690 801054995 308358929 350595042 488062061 582001172 902676056 974945639 314942867 758406801 573354968 838170280 792186412 967135118 490704307 567735801 790780580 953438656 891326206 966592181 957216234 962184359 773074789 814336454 354022549 780216458 505205091 716029110 256584699 825495037 799249662 885862953 416472425 945489392 77530160 971460116 269617312 322100826 617419263 877919058 863800355 933336270 344990446 377803699 65294332 116915668 446054960 798073871 282304833 285212027 682977957 778142503 657990193 673268353 176539104 753998657 558976689 752939366 50482628 82157279 6654176 203220599 917592347 942413970 90472358 741438965 627790751 738454702 190386299 676982950 742791919 875694459 982670900 995673018 898091558 972161662 170438654 994069435 999572627 999896902 955676759 980211329 763768122 876404109 984664063 986357238 859784601 952303163 113939557 907343782 776852868 997193354 234702774 915101462 144838254 186267545 395910465 535570795 895818911 950862621 942217589 954677759 20898775 398141274 480380220 826903320 747956797 959044534 380182558 897033041 6216266 521138440 612359732 698523728 498337648 861456776 922684185 939231495 631869860 882998505 654682572 662839711 611310801 789441071 336262286 539501153 885976342 925620371 14331231 472949830 250560734 301628898 653617494 940703684 50473370 771028154 101994594 538441974 62914148 617293594 377430757 455384337 699663653 795124607 794219927 900080370 996687906 999661017 424279474 817313564 300183068 611703462 565656296 717606698 39678096 563431400 825265753 997006784 81523593 339294961 696041094 893527444 58517641 663017891 154926628 287446822 675274228 973086986 855641967 945728488 225452020 529493606 903028669 933879958 868352230 985961673 426917036 584935786 131157729 387671978 982312393 996548639 838879673 855929637 456315301 853235274 618779093 787308422 563415112 890004430 62820583 337899140 580293903 762901834 479347777 611442193 426625600 921120352 401646570 441407498 634804261 681086565 336143490 617574960 503315028 763009605 80313643 580312848 298463631 482073473 401257656 937370062 638698521 690179024 619090689 719796952 397072426 662874530 368628951 987215970 945747998 985385952 363817526 449191326 259992331 408069608 782205381 849708875 845910565 988898321 742560803 932536771 149187486 477173134 83892393 578215930 945807315 997978780 281875634 796238195 748345792 810336776 46288391 418361682 285560554 661284323 782699159 816977039 980684039 986641701 594866024 713145549 740672305 822729787 814956744 937780466 789352850 913314876 187776634 617151234 400909241 962380842 944673725 975455122 727503122 978355608 306739919 609800591 183030332 808479729 23508952 660942982 990761203 998578341 163548651 627574318 611327881 862750331 64098109 629033582 767022337 930618914 424122914 968449891 346115123 585335501 118557902 319896420 231623891 932190402 445853356 489420408 900182880 980303745 765275818 886763487 387905351 462097605 627038052 810058738 953837824 968823214 628761497 982422829 50166765 328271900 429402393 602159965 613903332 944743115 413989626 991767081 112045035 742727063 16672648 596848775 418627715 628512390 881620614 889237119 575824139 742403161 709869222 810145713 930191435 992184145 684852166 907416332 495510978 744953242 823289234 852416927 816470033 948997485 609168892 872695906 526721662 545960759 676532800 823459531 799512016 861418165 811022500 927919325 533312337 737045861 876145072 889716312 820819395 951176854 398312671 868332014 308993131 469497584 739789572 745167395 52850392 395853601 130399345 378765715 205334550 850998690 217873780 499013979 872555660 894698834 296001231 503458045 849492890 971670490 549542883 771458833 934334446 943034558 973734640 982544083 219893704 682393160 654152990 831221029 316006841 902542364 456314466 719345560 934399105 993148034 733241004 805821095 486766998 976151575 600400952 995385015 170703926 224537106 740805601 916322207 120115291 326351188 139022946 841840466 437564206 686794674 773109750 964420004 652629354 918135805 954872319 997837651 492553314 853138309 647746026 781378121 611728704 962772218 661403094 694282258 90966590 172243528 986538418 989392437 795745768 966453488 260310576 805264842 791846135 919277279 109053657 432343264 194223807 517268208 703968628 755826887 911819188 990950135 621440707 635520214 794835365 903453304 431956425 642407997 857378149 893010829 839884750 963377562 30452082 587560025 635965373 930585675 340092692 425548771 769086873 804369845 162567836 387597803 182573971 364860416 785698889 851895378 458112177 633896088 402521669 526693575 778123720 961758470 784944542 982980150 232284297 522248378 386880893 790931109 973073689 978968630 121304662 218345462 167693976 528123938 75166106 856725140 534015887 674466144 918001416 952449186 145808478 525433845 78588334 761938340 625421982 860223817 538467443 915635830 271739900 956448626 701216030 839664292 20854112 412652249 862285210 945015530 751343050 844279969 44894248 596924661 584126987 995552188 757066992 949712584 652395018 986192835 216621110 993866664 657591577 893051630 293458271 808304020 512671932 697615749 564742504 682884002 64484857 427947846 635537250 724533910 804295389 968337546 244501607 245639980 556368005 903477600 642562764 914075893 112963265 989449073 337297160 575891938 699089609 729321419 570613684 642210942 955409603 998569571 841631384 899126486 446463524 795687473 269381065 657644321 489821949 733231583 859226739 991502762 997971739 998783389 265629039 853961050 17771534 488133872 998284036 999383238 782552128 984554935 644156892 703076056 376579159 939231031 82332633 868448486 129959119 518642817 249808856 854562829 589636686 616525787 379157354 908577106 272570267 916234869 818829371 840402238 502618260 993112096 594339719 686407180 412000785 783437116 281179367 606423953 793672838 800254756 308386846 794758414 779205027 984305586 807783023 994359884 451430468 588547988 966696680 985031140 573002042 738292192 194168519 924865220 18093967 926701004 694807225 956094297 108217472 751787007 32458302 121428278 164488065 322132417 619764183 948580141 846196288 889625942 927602721 991253969 702325102 892743428 282604321 856869995 323380990 373668603 263706325 948217434 323215830 981225465 114980357 179875959 329928149 681618645 437464246 687470544 653167046 773299515 421735091 746999566 286490487 760920337 193198411 532750094 846062559 987872927 92048704 439293050 873876947 893749317 800897599 817446384 911903549 918338313 920909925 959871590 128785354 807240576 390409472 678660200 160710783 959808759 958051132 974118054 34821754 851732009 663533240 765205667 323901548 545453214 726493294 889597284 671854566 982039387 26654128 742159590 274240318 716508956 205396159 240291103 73295110 821665056 355689444 928225333 110297651 189603143 322127624 543338364 831467849 935701494 522701697 722522921 806204002 987514053 165144455 640057635 830048994 886233163 853016489 884930315 67423638 628676570 987523095 996792275 772327749 877883885 541024179 635517205 67607863 998055272 359242661 516940534 509185270 720340415 628294378 783434518 667650792 744249013 544335035 701504524 560009235 976894543 410301749 776642627 621437164 723708998 413266145 440724032 905981451 994618533 294642084 678239771 415283894 921766144 721548455 943683138 857479752 951710535 788888329 814457088 556226939 874870548 324392461 515525794 136165891 370547201 682837777 943807439 479584863 501106349 124346463 157723475 33252683 627628700 581960119 987402978 68299428 471685796 401653075 573078551 84148801 791335942 740445796 904399926 562702125 994622597 590844923 967851331 92624352 279048667 351811019 576578608 316206133 390512125 510625820 656396045 232155207 314558612 507629509 836758700 30310633 287548642 933389951 965134037 514963483 761141426 389438616 801090015 938811779 995827869 103810219 431946090 429312625 601670438 93665988 610987255 74224946 442309023 392981738 440910964 822967843 971750196 981511233 992778681 271380169 555931799 621746518 801308184 512195232 779426602 231100964 522708677 637718433 844552162 509430576 849195739 374001391 987917411 797583829 915570262 670633633 826151297 664919020 959646376 74006101 292073204 332655773 707300986 984928425 996702323 145612049 205123567 470523146 817365542 669228699 735877973 174967577 399741628 18478223 830393315 546699416 823388235 805124457 853066334 926362028 985207153 322208103 981909810 200573883 669918656 18230201 937243383 715839484 909321962 164864743 907182590 573878922 626017887 395955309 871314866 163023470 617718641 867656200 974565041 821647500 942910697 828437477 974192934 138971026 419290859 908524303 951022888 933507235 997071474 353277849 922258529 94124592 108299388 610202621 904709491 120093180 258453392 959323572 996073312 4452578 437445807 82359557 653663461 287403570 413786535 28760881 115229570 261984032 831301032 667586286 934701140 383113078 861580152 842129165 951752276 756718933 875835357 501530074 771525042 449065949 683465156 484346429 806566385 231623515 700992328 593087576 924060252 643173154 913945766 679030147 705321662 276296284 403529406 854582453 949653297 501849005 548911959 454032551 874853229 730842500 939611558 487461957 869367889 102888146 293648998 354089798 864122241 351762620 486922965 580237803 908413321 829549682 840491538 144940522 241774808 882025823 979023665 485742347 629862733 311291985 671462275 602323567 704159649 581594764 727561493 128117775 328088540 184285245 680876645 392957882 453081457 345851027 633310141 52997125 478133495 809302783 934340303 335727070 612821945 61975864 473181841 911268613 935341496 280433254 506723550 691257559 729708246 71582571 558592126 663337381 912314773 722401583 918924618 450483857 940457203 463609434 562712011 490236592 504002860 896099414 918259120 863911350 977021367 937539666 952812765 895794420 913868685 490702061 560644153 357467971 436414287 869370020 887880597 828389899 829841607 192402301 503814474 147301523 961790639 439275006 886847281 419071981 468024960 963212235 994336001 62191449 117231267 366428395 571907660 267736675 680455906 974041401 993486427 769587312 857038715 119304954 556913541 353251024 864423192 378799799 539775244 295861452 429383615 440526476 594983816 647343491 861564930 665984173 697428040 233702811 382679334 737438159 918474783 612847635 677465463 716030668 759534657 87233955 234531384 523188447 598630006 315439618 905235656 261922956 638216498 739671098 958955097 439493790 573319031 389455366 545945433 600792923 921519457 828405070 974823954 698402047 780281312 922796369 987340449 813051011 829637931 373749357 664005724 259113252 526109471 746359700 940918853 380339922 652498267 391060210 649702592 226363086 461439478 722078741 770916308 314300562 929528104 309495761 701754523 633961492 972920033 897799208 901129984 356806859 838669299 342227415 497806257 182679161 684807294 275213677 856677214 880530258 929482532 737570245 962242585 723836165 895902511 253244733 640279002 573093884 652747117 477760200 556231238 769674586 981066160 994922808 996233003 294703312 351386928 468109629 819091155 792690482 933974371 995021699 998642984 884830565 986308025 23511723 217232831 151955732 152336640 427971997 918246292 178916252 956135231 76355221 121510014 614155654 987046762 816965653 986951488 302685717 525920013 624451606 759374607 203807422 993388278 420208396 837199473 701237824 857434071 464078240 972511307 991189443 999692397 324785515 350191400 760721579 922345603 662720263 984717649 850622313 989405123 604816513 691612654 928506076 956003180 203829235 832867976 154740299 814484150 6909581 678497104 841817433 952042852 366020227 824560064 308365002 628146293 168770171 806271190 895221221 910739111 948651761 993502099 726663703 732666007 875425081 959022374 783501004 954584940 803763920 939140464 27817147 140376420 198560695 471134265 832787677 879639113 335313825 592766048 846821922 898144175 842151175 950361985 595618161 740485448 10889636 464252468 19049506 902355113 551412786 656708746 327786489 876782151 19310596 566450836 339099101 631376774 905907521 920187908 149900469 496645859 445537700 806535437 330944888 759132144 980732710 981963759 241494073 542012050 97343177 154072509 139571664 301130557 663095771 971544136 808450095 972376049 422705922 588947512 161547552 578156096 608501854 643168845 809005130 825904131 773941532 935606396 408794551 420063419 625852042 679821215 337916925 893208402 211079215 381793202 14259541 858772110 737054871 893484589 103105241 116436511 884560373 930878325 884154071 998659762 144051248 240627530 332835867 412409740 347322760 394077154 481019990 638053968 695802438 761486902 198145582 590800873 495270232 581416059 399539161 785419159 848297203 855675281 862886500 875663855 591694614 909384617 484781639 910435394 852469950 920648541 14178436 634046183 825008466 862568100 178427078 268246621 395869836 751645591 944013507 952170519 980289696 980655396 688990469 764692329 889308761 997262431 321966199 682807554 933544043 978129355 454219583 768587492 279131664 368446275 516951354 829162365 915621168 958940408 656230644 813989682 914514770 924710567 432462544 440295541 103512014 569030705 897760020 903569297 206876263 751774807 87699575 706534126 360244678 640360049 32867013 48011332 695485927 805763255 432836180 809810894 670265509 787503571 220158040 723739367 491387562 978873510 336551109 783943090 637439179 640730704 773122067 920766238 205055602 789247548 388292546 465232724 318978886 464066878 852175119 863550726 361409260 737662966 326847446 484072511 824332826 864620840 213425883 387644803 221686522 868829329 765947005 972894882 350248312 498083247 128827019 455180596 766622384 804352328 201653347 548910761 979833144 982687706 468362666 782362220 866544145 943395296 847256606 943323961 410819355 732662074 233405531 744611128 597494734 871807204 586405621 719765634 944320107 945963027 317204111 488008990 726982650 885746350 298320103 344368402 538042037 873308415 933429961 974164058 203998123 856708173 653467290 996116331 975201447 987907746 701568335 912558233 744962210 934096266 711903192 892504223 864955586 973262664 997859723 999970843 290857246 300744363 475432061 496993201 603956684 865723441 418110215 675058387 156334696 748694695 423594417 691203446 639214504 926663261 433718916 863825777 895137012 990099753 956886356 997554093 367239486 948063889 190044010 195385611 440866599 952166619 100459526 238650319 223725178 304916856 433315243 884227056 757936030 794415822 328587491 562899297 689518027 892629947 739612516 876969246 330840415 769029258 946025580 957394661 405602810 671111892 992422336 997344868 8902609 288994206 654331670 664953954 958461964 984451305 315220570 637016773 50163210 278795762 91244690 529744435 643247212 913328427 125495055 202367231 982827268 998343142 23693221 653819747 538149724 980558354 97311152 728957930 103434182 337344166 998371014 998478909 990224220 997861294 756631614 817560064 403470957 903286022 240562804 415168725 422895573 704618911 412901583 544629097 923595598 992262920 198793247 872835842 997458136 999544404 74655376 655377990 50608930 772953713 519588646 886315703 337643361 788228149 947309183 959753933 576653942 840939262 904781346 967552187 111453082 527203926 330696855 768115788 675808024 814158906 295125291 485689536 281439897 324372614 772566313 982980810 864711974 969524657 291787116 390246595 973118454 996113622 92022096 586441410 966632896 978606562 615684939 633727240 725518773 834577557 649198600 927337307 29417188 63474507 82025496 318297739 372484767 812613083 737381504 941093773 159866297 242341681 266396378 814391127 619433759 911777379 853717164 935684155 856138106 872277730 463343198 684329508 671655903 672484124 591279976 662631562 758588450 843559162 972983086 993807892 42677446 298640562 126002963 294564614 402389731 750679289 90895098 612000162 691780195 778998784 331749743 990999287 520277894 957611929 855924113 891231823 187967345 972235832 832239582 970389047 464983373 785100365 431133898 621209551 14277756 768706534 902486356 914442010 631897607 690900713 264284751 584502036 910812474 938867599 316664673 918236611 419641693 655970947 933696605 983932396 733998192 882847800 272516700 801245119 351705360 466130063 917449720 991843321 641667197 900471662 301710608 485864782 941945587 981767798 367925660 791782488 278363165 647998795 935117487 962508249 682456093 924105887 133907023 841354488 950962380 985733763 448910732 615726264 654767103 656944786 94402116 746561735 138577998 570518128 941712984 973600762 817803026 900503678 508742781 987923182 148697856 654932098 268599650 713033830 109493827 607646948 21973727 246232025 256160165 344896991 334297070 522800887 39138792 317068729 209177616 330579564 60654181 883824685 921914964 987450768 917096036 978982539 261348165 385883460 750077898 876563689 839158869 944101747 900850511 971832512 272124911 410762455 663742143 894432337 185815081 619855354 538200588 939763674 278395677 649938729 263106651 490443201 964587210 970562333 304832136 652516823 277636253 342653836 79144312 235999902 334422526 933200653 564563012 695896760 994268092 998441104 66115486 95778214 216346723 444330496 381639915 649749676 889868403 914413736 670900218 751647363 990744477 993662664 804135150 970528610 490904427 932794689 128646927 836178911 736891100 766215378 461136677 683430428 487983662 814236832 492193535 955582845 179921051 505515899 356412281 361092849 86641972 940976495 745661807 989366368 786720936 828706634 218827721 775656881 564613328 951593754 977439674 979939354 647225158 707083194 326653174 350266746 10908942 778638969 30589733 121992789 781300283 918921320 681025721 737234343 697629697 712961809 5814948 988235743 543112708 934723971 136876018 146372302 997043846 999738884 56961413 347122850 122948756 648768158 652583875 767597557 619389711 984191183 387639233 396803707 941319838 942792930 225237359 872933480 568474087 747575161 121092800 271568416 403994395 518984216 216005785 592532175 83757739 252954524 968014285 979549062 405206720 927591999 120183783 204369208 261652192 383800517 905023425 929510963 104869685 988714821 284275169 694353129 832467728 882655318 254747734 670272653 622319181 716968597 183378538 184421857 588914373 920251973 349448081 804499273 301559164 342856587 41107050 906306625 609083240 932944421 256950366 711981326 708439812 774716359 795458518 821388001 721932312 855864492 801872872 932001136 118652336 436790036 161082152 472521763 568102175 619572464 533892715 553450981 502882243 728496614 346038720 692028281 351541592 858082254 788495185 994109629 123315853 699894803 517505881 980907725 976154192 999488366 216525683 847713044 794335393 842572315 580692903 948938071 950569747 951993424 690602996 928767006 259779244 601975468 314523464 685955186 207339540 648962263 763013226 810270840 712141104 792854932 52774612 407856416 248689227 719430644 326053307 747790825 786557800 847262102 683139557 863811590 53004131 395534750 797728305 806743450 875888645 900617345 596216892 839276294 701465220 897855550 762870686 767993041 546850562 759906740 859399672 969471301 615798920 997548206 503243784 923906241 106019301 635092211 723952835 773590190 358420794 567666437 349766658 717005141 990968962 999181610 399892139 645769583 306631528 405143129 373815448 664259694 439227281 907945850 498234481 997895372 608576229 745799981 394851914 528686189 852725234 910455915 445013536 690322375 185351915 194645443 65882891 654810132 846084399 862081113 662508409 727712711 960164774 999169212 686093297 833592275 936780424 957571547 283505268 428110926 718781020 774927290 437117126 877689020 579011994 714488374 336191242 823731876 643241301 803814368 108887990 710113722 659513956 862762850 829966390 934320654 718713661 960282048 810875901 958584012 311233087 958040598 937484995 986887354 307591935 363562294 160363505 741070701 751559773 890631129 867097120 918157823 151884061 741836826 1533938 390154644 252144158 672797658 678473087 695596685 328395090 389226038 728201143 767989463 230267147 741076336 482553754 887395598 867945989 987190038 389892468 646535047 527718916 721281468 229448781 707851022 542355587 928778112 783878617 883292358 90025284 644997564 630185721 961999595 512549377 904569411 541907165 923165671 730711684 798013607 780641841 958157490 139950488 546235760 9981329 649618282 568201653 588049491 173097426 935131728 319982993 398926901 910589693 994561766 356535070 626668106 302178754 442907254 115537897 234065993 664592848 971185816 159627950 231633903 49609899 444246227 529360088 925104542 862869894 922163762 232005602 935801819 54500085 162484726 122128940 748469024 707183109 949655542 375538056 589703427 539910513 960453243 306023275 399634360 547963817 771117848 365314393 848959751 307453743 698234286 253066899 317005708 448228696 879992386 188134477 765581569 555708365 930331407 450373413 847393173 231365164 944127306 145350200 229456675 824892723 990838912 497819998 552888915 708962587 859200392 887048820 903360703 826098033 859356813 73493176 334648920 633328279 830513882 38360438 968172087 724987052 993344452 598817784 942467179 430458745 671346515 339611969 469642516 25966860 575206203 299570331 956588766 485545471 613274845 545028817 585199234 120867030 918469465 322683622 653870282 310704403 651050864 361576142 524666988 362377506 891566161 112589276 785317040 494254974 907136667 548933886 717335904 991278635 999344540 398969557 980617843 317763831 472651167 79076656 350111132 26717509 207639513 549685017 670281252 316629196 499447357 153204271 901857430 323676634 921554756 634238901 999271291 892220587 979084091 868253072 959328480 114767104 688080064 782224086 901430219 919225953 961185136 715158014 811412994 192462861 752359608 191896288 544799414 799765265 973153817 701159326 879843480 154717797 810219369 127104148 362902239 949029205 950421533 378388083 659614215 760972789 964052375 261852549 539530812 254172638 340924555 542292854 908763325 17784533 357351539 530062526 531369502 266461243 579322610 310034009 920097790 891281520 915197567 302461295 547609863 619151507 896957019 102843369 176267421 349660818 776713952 274621632 424239376 110113170 291516137 940314270 960433713 976031984 978193210 71076371 611326141 435546157 946299753 354642601 484581081 44545883 183057721 259969309 809275683 966856109 997433442 26546203 79562979 171923442 349593876 887920022 995628066 770673638 896745025 188974869 369795206 479227205 581666795 621950264 709429797 549560100 730640329 80721867 686631228 104828385 691904559 566641579 735075290 337823127 512814977 409201443 527533944 959705919 990263755 342787854 599450703 893955334 981755668 378604913 861119259 998489756 999361829 878451214 915976697 103532085 690790452 844122406 912414579 870643878 957443373 408092756 976678858 750012520 846978227 91206285 470651717 188870072 911915568 142446358 603153629 961015119 977639383 412899373 889374867 796693530 868477911 317842512 393193558 122870429 637952053 170645809 214891179 328210217 755899820 243168376 657224010 81429405 615186593 914586681 934692864 618811262 640927035 266062088 810949779 840776420 916416084 456591101 659036684 763958816 997406344 661036877 865207910 182334244 374316393 506760837 828996667 576127913 834182359 922783973 975130570 225698780 595126980 701260669 828404457 576831927 871112661 291962685 566509261 867342220 880473751 322099236 545021642 798364220 826607724 443461385 810245012 973138686 982620701 809474669 859785931 232225131 746133634 884073315 920595473 75165359 646154850 27097928 783177141 165922058 679358202 461456674 882164347 870742027 947673795 499297407 920506537 95199009 704099051 536275203 825533205 379256894 937255973 635927692 655984357 677961064 891828877 413746691 593352278 405085353 585911483 770061994 946920340 691855656 760638309 638056153 881186666 355397472 913316007 165223276 537351751 870651550 986781633 85106620 184765354 710841978 762628076 765728841 957392805 148807419 673048356 374793287 782072410 492213237 539334751 153047937 216025060 897515507 934785341 619161741 686095843 990083016 995758799 208292704 275277462 59931713 949125583 601942774 899620644 548705854 772992247 354762993 488679101 170732200 852546491 717662446 956479206 858754659 965066470 414842714 834961452 880217600 988141794 775100145 915646414 280684986 731003712 911449574 946012481 248978239 742259577 580512765 805413554 824451730 841897723 452781193 899283978 265857826 856750637 851978377 946165276 397995701 537989122 696601832 786477601 68066042 977748961 882453208 981896821 779858128 973361840 264825724 663646691 100303931 736247206 909379117 918234141 53687883 244194924 949972050 990502997 512923478 978829461 755103815 954721765 260245986 922081457 739829843 938882663 487000848 794702839 584135669 730697353 353433417 803642230 914321135 961836510 951953455 980266681 985935728 997344067 131724720 489979938 672048775 817564999 4923534 172922439 819610383 924564636 455204066 522031076 242853993 434474450 353973157 425509416 187175036 674174222 680794332 691859329 605492370 663094333 36238003 872491324 666314229 785752773 679631357 713428152 335047540 861567074 458321602 542781294 424685867 995278294 785690176 967842290 484757498 989270959 730364480 961469306 207381776 218625446 881880567 958044796 552787726 818768015 116256407 201731819 603386929 956315746 211355471 813651854 513867077 532326975 594689459 607145953 866904768 950755417 581671387 965042411 499443453 953335421 312432752 674232991 751514506 828770934 73443832 928888711 768207758 821678675 693533515 751874926 529494375 605602065 62154312 921056012 427375550 622893939 418526330 883822823 15813514 63245161 918948740 948254310 421387449 697526230 327025126 382811198 727808416 917050851 502933927 656934781 14553813 589214110 92703769 867403560 274089658 477389375 619451569 950463468 985301591 994581667 328459761 645146953 907794690 934922269 429761009 535770946 212354533 301339243 170814049 275371654 574045399 743512809 936292195 993577673 155932609 160919003 150573884 583873591 116992933 705888235 958615503 993783245 279601078 658021367 312340184 784564916 952994089 993092511 31679684 518979389 55694893 891650494 229800600 949525639 390519403 853874153 274135887 400039391 985268886 994584277 75894522 105333442 229690898 650330200 402283669 493463387 802528928 952774573 469066975 843532131 663171508 779417311 211090448 500914765 988935428 990296825 461690677 750060138 930521040 991503661 263638399 673957918 533303024 658647689 116108536 663687569 322619257 757761707 131664193 465507687 993485868 997784452 629610899 922708084 729079340 807421836 780049325 807910068 493618311 763926863 122237745 567333606 121753611 670830922 682606749 828936306 593908817 930659568 970131426 976945301 161894677 438496662 271526414 428909728 514827539 804976264 823746125 966834211 156768662 803566360 530642518 861657154 491788668 620704014 416391706 573701075 769418733 953097047 673477757 916556121 968107957 974780399 692661467 734637791 712267502 888597061 303403566 453742308 435863510 637944745 909674025 921930932 931915847 976877639 515960822 638070334 108721630 569125386 589910970 723096777 198356572 684972314 194809690 212996163 799062092 977313445 719120107 970818561 607095506 644489888 11257234 817485474 466244637 677506699 558825621 892509627 736469177 967575134 877364899 906722967 352499015 477591841 560399027 926187508 145406603 788038137 595302452 877938565 763999688 942410810 984325495 988524039 275794009 385407090 974229143 990400119 789886063 975885316 93702525 258014592 509262187 693670759 118953272 758114162 683334327 758627107 559905057 723149722 888112096 999950992 636751861 757475620 584505519 859865968 489686967 527092791 554241655 637092452 823060800 917732171 923973649 999030445 388227983 696218565 50764461 246595797 193874203 756389414 707970606 720458049 341914540 850604169 766194146 841041958 625682688 965631699 269412665 515046139 776937759 904296278 488616646 711686406 697696760 741823346 424866344 833590484 526839998 550414201 811101400 829839400 24939818 440584398 97539497 653631355 531386786 934766273 124321749 445794956 501571196 565355006 839505476 976598972 626538514 855068849 733017379 972335558 759628982 803659352 496869025 530666859 451487988 895032013 795283268 951109766 887254263 986929348 466773798 992440442 966601743 973623610 627434502 985364871 410338063 780822877 419916466 867652267 373580172 809307047 537199010 543302309 935200122 940671700 658003594 810024517 154787495 491112868 767592812 930131620 738180135 781417542 1811902 388280554 244406817 899222823 857034383 965235539 441196952 787553918 498988348 596475722 473301170 527357158 908885004 981230175 662556084 922235670 160283767 997514491 456445635 751512941 310022475 544269656 979547274 989277686 884377026 969379742 526708045 943892611 583515133 774861492 762658496 974552500 636532589 663834201 903627775 939368310 565275272 681063211 668662237 971347310 608723487 995714867 139265931 211491955 1752428 514820287 794656574 849302876 187402622 828610869 506839394 729516768 128910213 473486153 867997937 971446918 21374478 683803333 408636679 874924053 408095009 509322972 439490000 471554400 697655756 810415624 104833155 332033317 868171102 926104505 493344999 800515352 67055814 274269623 748394286 904108561 557827022 941339022 916996963 931533276 351563819 441101359 807664032 958133439 873171572 951783429 907137538 943783619 621572468 749137514 788623612 835199781 416803520 440035943 452611329 913645586 442616554 921000206 65608228 724056270 284734345 886250112 328209667 406586361 133855684 187986821 186270329 654775666 449984110 847406609 148293721 439144855 96685391 665393465 582892250 845114203 856318934 932916598 791599960 906099921 144360027 490440062 299290468 894997102 612871164 733037780 760387367 818066915 957807768 962364974 705318364 984102282 851377396 971064268 955628375 997758841 586403884 666012602 638628258 990157430 639515772 819697782 372602356 969106498 95187245 644428811 720175097 790955725 84137817 495709634 176172463 525719637 473256860 905617459 194257911 551717817 964300333 991491454 37831759 585632559 494613306 731330154 996267360 997281683 806786326 927765539 687220944 763129889 893758275 948157917 423206384 688047046 587700946 959796354 508875556 839080861 570404830 965368246 713516185 914846020 207545028 655798339 25229464 643351938 829646450 989589581 349620306 646084525 316905286 737047695 585572873 947741155 814986957 999687474 378734038 478462607 695221456 800634154 673658522 729132061 973391238 992029105 664829665 846149749 640290919 859559027 507099813 563751943 118712880 240367391 233551584 358587062 831273003 967785444 975278968 991931591 27035101 102548703 2840694 475711572 77203700 573885158 736399561 858414846 265301794 864186753 635909417 931365197 826484062 834448636 629512864 843198934 669068253 760559340 46562151 322446628 933522920 978352544 415712207 944771795 123704833 876012607 414904898 416032740 285757281 799780444 993657849 997544842 107670943 142284388 537547687 962048012 154523393 791960962 184496477 351279973 680940959 930152660 157572712 422364891 202269067 417283975 327798540 644148597 160336308 987463194 876466477 879199906 64541263 870360946 669896034 896330404 957066712 961706372 623288166 668833952 243481338 917475107 989187701 995685792 444196497 447297108 311160609 425891045 243674792 998107426 588950479 614188318 122979662 619903665 269582198 410195810 571070658 676795696 901365099 934306288 726774502 853870897 848256505 990108645 167648922 567185311 175153514 776284055 131878478 579641504 816612551 876063111 468711175 572972781 78428450 345185790 721887279 836682970 655434882 890274389 635233834 994551126 557978809 676814103 633145216 641890275 400201983 516197138 155560849 597741919 316762306 814127025 556021796 682638521 213415739 561392313 96745074 455815610 752495648 887505617 393953983 444841071 91971695 821354438 64191359 149429684 611104731 810945945 164539930 394279252 680969237 735130604 743599370 849510608 653430861 775469747 223148106 507251440 876051340 877148876 614501548 909369901 560003226 561122744 508854716 737718342 147562996 299539678 733287096 919088142 481428624 647581041 347738394 626933235 814308589 815067097 909468962 973077869 485585751 766399847 139188622 402463049 515600753 895422342 976439999 997803657 601080272 957237309 643322849 840928699 346969320 814379133 730183291 870970532 936357542 949143644 31908739 728108933 706767908 918475506 196867061 866010070 865932167 998893092 340341253 837190086 649295097 779676274 808509533 981395267 631027290 718878965 636403431 925342203 755869389 854866356 640636036 652190617 580893834 744426022 512234070 819878016 60852239 63292686 703570560 912590981 233167491 983269734 30840485 774015155 478478202 751963272 712865938 828171701 796088387 828548365 801404737 866490013 918527075 930032675 880444894 965450563 527816925 894387435 88220951 471782087 979200857 983227364 970928579 994636139 202112987 635076112 927656637 971293831 227333683 802343435 672598624 938465916 513187169 734645413 576848824 832905717 290141180 531347510 506273252 966379585 759327183 969991644 112030081 161137955 928807120 963089573 465227731 792640163 558968841 729891521 293080732 663920220 512052335 761953362 697350207 874872694 200184667 283351291 909257664 988529411 671069803 967329329 508461199 785442100 869878385 983161632 690852009 852461911 365235158 929343360 171382391 250235215 445972372 802781409 671933660 836139886 460873202 629512000 210496693 850818513 190991106 431404589 257893236 969179217 776433041 993476398 325933714 556428601 622670472 981747171 733782992 878612815 687279773 906397819 153464493 993733754 608445071 758958980 792308822 891493834 309654472 702061700 505999785 676733132 541984089 831249937 636991589 775476841 116056175 703895503 851695246 994477229 204571711 531341020 858639014 964889844 730698864 770781779 659160339 706301973 934630070 955402876 761047483 897133670 277730448 526818722 364106989 984913842 949790775 986229972 615088871 803832370 520814027 613705963 360410026 616014222 153286756 292035745 515365850 742457964 294421204 845756905 519418886 636181290 964520246 969758712 453208345 748241223 338693242 780303929 786463740 850742716 379899060 901820741 382347007 682567099 76025958 296410891 700901950 915042244 681347279 700216198 815011602 929842585 399953277 835183051 419264766 694881690 987460594 994719634 124348956 707770636 662609302 780181914 244793647 326436205 736646255 781048151 860287851 888708688 887401048 887504669 473596582 813827749 304615772 771345541 945385712 963295052 953988495 965890875 813663420 838552347 961051369 961640180 688909582 832984327 470396055 964355046 679589864 958817049 963089207 982280386 670419974 948527157 757033126 839566841 504093485 774772890 142490685 499369727 184212543 539289173 8902325 96888316 182230857 705898784 51683816 145655664 551762091 661539612 403521511 564845639 872943815 939282746 120618882 637842010 906655070 999167727 955843729 980811098 979035454 979992305 32937287 927806860 588280494 873375707 734453818 754140767 392947632 435069566 906975313 970412857 207441394 774020744 910821275 973420931 755631503 910247762 480281637 732719418 599047211 738942238 225717558 613131091 886391641 969153483 653315911 849024941 736191206 740720281 76655070 642111913 66110788 726121434 811954183 997875932 759071523 960219593 610398730 661106820 829565330 879877168 403947804 442185254 645637007 914968418 247581229 299200790 104587862 574352318 413669787 648014273 657189986 968883743 781959484 898633581 591602678 989349774 53963567 545489069 875168211 946281752 143537134 724886003 816784473 918424762 17612090 675993193 438172127 975537322 760832833 901957638 737735401 976137798 525977077 881882823 238869722 508383671 229631487 576582136 53729637 286376054 174042815 362196823 340468794 725697331 997029256 997310251 805557808 855905816 80641456 234525562 826945894 868061572 995503739 996191196 393085 250653971 958160083 987184340 632667253 676281987 657343370 817758182 318665206 367757522 9705861 852952977 947172057 991342080 623036184 643520590 584607657 988137030 870357028 988940675 542675762 837562246 503166882 575262496 640319108 855356479 457651155 811292885 773372439 788159250 884097713 906628781 919388183 952696338 245069730 643875409 785874076 878579093 127351418 531955272 377381187 814206818 497335410 920709429 423858334 993634088 987179998 990301790 432259265 875003065 171461468 937126811 689600274 834768820 968362762 970828377 672287013 755211417 916606815 944946760 317272150 818554675 480531010 642421241 45289931 68796123 957873805 973929808 10111722 84103431 912937057 953979897 995383048 998974628 53052798 614165663 79719320 301425424 572336659 726502516 480200235 971328645 891396524 913866246 172550024 431138096 185435266 842424995 528449132 965714635 368428127 604024989 236322703 534705358 55496311 686574672 562592459 671563739 447247166 658966776 625184523 710864581 29615438 233361687 639550320 869087180 723346824 847202488 971815265 990349719 750509114 951588400 300544121 919621387 952579473 985818297 69264592 560741129 896223540 933516268 602721178 685652015 203040223 632266278 31350705 486274178 999873654 999928586 890016520 893305428 648303766 757372985 799668322 988386325 519915472 963627919 277049223 856076514 683396342 710302528 166740624 797138964 417013397 610656669 718447450 842011074 182801080 438554684 835838562 946049003 898932377 998349722 770164080 821833908 668869626 693383902 850810991 978125350 182924052 816930264 418910354 554934962 370307742 432346346 711594084 948423669 970946582 982842933 278741159 820863865 516484239 639927115 863932314 982539301 988416671 992511391 777172778 942156755 991404457 993747551 391074639 427353189 209584595 447121546 933179455 954176698 596653273 655979802 91744323 675683298 671298460 921415551 453284812 490799266 259094540 604611152 124875429 832584304 970517792 991809372 523107690 535486224 363538970 969643391 823458771 965128583 58558177 598985026 362510588 728027026 75058841 714181864 924196429 968490304 194389136 524051009 152733790 973650947 94056539 747966027 161914338 789246330 629431492 895898380 70765008 976182169 183129182 194382257 847782569 905441285 672514920 823030598 909898302 956835379 555980560 966108096 512956757 889324948 484432713 691963548 927016756 963737186 419866870 869727112 62569029 693400810 401041777 910521161 205207091 867159459 19315450 562192482 456481101 759194391 845223203 917320460 976356046 995128503 813984717 824498084 543731144 675063607 41867138 733323265 892066292 927773265 329090420 904632509 23167004 440523650 769258133 929479658 238348650 602972407 54032435 595288537 285585241 703822742 215236161 815115785 341255553 499569784 524826898 945141463 986084200 999700243 505761841 701880637 906247557 942762511 581687300 647116127 238686151 252396729 842404175 892493055 153928090 805061055 721922518 962272322 776599407 907403698 825923550 850566254 23972586 980302739 479070643 611561699 664836123 760291498 831771295 896426988 805269988 938978465 179063935 794481634 68414741 694750770 427764731 816732420 336999039 403990882 69595164 933628366 996623838 998032013 168168677 919174529 406534647 561297255 557533758 822917480 107058207 127906383 10289269 679553257 160077669 579139390 121562504 343930816 280100676 816718790 738235649 874631363 764204265 946787134 298653169 967503224 647244076 833112924 351103437 797794475 933135175 935361562 884278215 928992360 228733730 771586335 125558834 961031155 401520215 834628405 853642391 920531089 14649807 690467354 819792628 983790179 613508961 631603886 702784108 918608145 251710541 792924409 811015574 894847539 609472186 743465080 449878215 750837169 434702933 681786133 182792852 442997369 458359050 616272451 129097495 511468174 925055426 955723637 486597060 786159716 671573047 674098537 111414282 469906732 879817978 909849700 139110480 518171239 316486680 924897118 556843721 650627926 7167224 36554705 656571878 864716513 527459700 774501134 299133012 528442129 151587627 260968512 53750037 933187263 225876129 700152813 153805923 891133364 546311570 577982143 400848003 780422086 7282866 993376843 570645390 994399695 806079712 861924049 439955582 952294660 432237344 885421538 212235935 659854414 370318003 380790022 376018104 480836004 772524546 830033116 228658987 659156137 264198540 624749741 793717047 843739236 210038970 582413200 642406991 937899797 936484088 975671940 768036223 976998445 644229811 698503020 382198005 452026641 605842716 623064888 364197382 491198124 838839482 945389967 596546190 670196872 313338898 584873467 184913122 669135279 219107848 279814016 517667787 729949635 541084177 997324799 935661680 972673116 846746931 868203549 469551181 753450125 966217990 979541238 833615949 901886885 964145910 988934072 46330471 946364067 248029327 826846566 593768241 790671118 316207479 953500697 748538273 766983979 390499843 751856770 247168261 284630517 396688611 719823513 96800311 426954369 895769670 912475967 23198067 423187889 368497699 483242263 647633906 913733751 836959688 934978139 509838042 749382081 203167900 840812417 512712209 529713358 182044207 943680875 987103928 993572890 345694696 559764403 950007061 964313481 38113915 53469209 128785185 648901208 947832042 992498625 441257503 572562975 978106060 987103653 934498383 952311596 378539437 507862181 903126695 956038152 278980546 943288585 184103453 580426682 837737015 904662174 526104981 705670015 147470730 216186646 140824273 815927288 136728505 216258092 602421653 653558164 955186822 964384572 750552057 765270395 878607012 914835366 66843950 348168083 306733782 454472513 496107809 694396106 678508317 754256413 647421861 885213147 499457372 637141091 388625828 605823916 909500626 971942952 376024126 643218155 868868665 931053012 76432397 232680533 494745932 502210731 738042384 790628651 169976398 280854517 562680609 807264157 73657690 824633559 524582461 892592693 49821689 234162234 993678045 999734014 437054582 874324253 537117730 818167710 992669458 998298186 124492860 793003942 579969442 955740169 480511787 919753522 923717025 969146582 261632106 883658049 967614832 979844165 749950686 985346757 224894865 383578576 995199549 995330213 933890987 992172866 467243971 658857863 378822154 401437922 348565311 897703859 353818090 738775003 967682966 985773163 401258379 644315165 924105568 924782191 100448070 885973125 69596986 898920667 234092215 549682085 163144630 662728547 203657520 372076232 551331726 557090280 135516668 527183026 114443366 360897671 376043401 413636743 137672689 789342829 278642240 623711598 802323214 829065578 124807818 913757230 384951324 618863893 247700808 563690505 989549970 992696896 207341109 975166002 540716188 669550868 237844627 880067200 285174064 812380115 535464901 876965887 448235691 945616565 822898622 978171579 64845011 530940098 502351900 970309038 359501283 472335779 86847715 475712253 498754994 785506164 786813033 854091944 546595633 671153709 256880654 680357375 354891734 959139527 325508542 787640392 482357914 874310876 575433860 652652973 33212112 76754779 703316413 959779738 335540111 776495281 788733313 944252649 319607711 786054079 528705368 927809452 199068928 769174094 438854323 872488174 27394700 799396675 89846684 508186131 648010002 652292434 10322793 830738142 11654823 362328113 88324905 419581056 951704822 997914570 316071380 779773100 154615292 643014265 395557552 397338097 729996598 810790551 111341025 224579521 214178113 825084937 612546809 818864090 553454990 949862574 987838678 996096160 171903861 266935229 195627485 243141006 834716313 908169661 554698507 731419702 225325438 674145142 96956948 562314040 51182539 329228102 616795831 717962881 780608359 849679636 646516346 845794244 781259843 863084450 103277043 773224045 463385337 725953512 520277635 929713893 311825578 997373352 419218700 943747331 198602026 658785598 106494483 119004156 265721977 466578045 738457851 744655734 500567968 661102275 335941291 811353384 346514296 812953369 568220286 751607052 78582120 339453320 875803465 900770484 952399296 988428914 903405053 944366993 708541521 844477636 116116256 244771272 792218535 902370052 784751623 817946163 455440757 885897414 357340981 783937064 862090582 898300125 680388199 740669376 539661980 763366697 324799181 838811151 594957838 984169216 341598114 530486465 322471894 586837575 176641910 236161906 914981069 921722538 457689469 701758045 605918139 907176822 307351842 869370088 801272547 825899439 541599422 823144422 873691967 884635519 7620952 389658546 362684675 525740001 350821650 676295302 401341923 681075893 496456139 774767321 167691399 169158113 636026263 690636221 465401106 936076566 269975377 912340313 304733349 639422057 353362059 400307693 810875486 905433167 99000411 208426656 614425838 807577839 859911134 925326832 812065460 962404379 839715201 986830953 807391688 885689744 402648430 716921067 317089544 633996493 691937314 740855206 292722197 960689704 816709445 853864457 883119484 966399518 156371310 750494787 715922322 937926573 203834929 569821284 711992638 767306517 105007380 208248798 814756016 968230774 571768387 894913108 341764340 619866602 817120588 839724632 196628794 812032278 967789577 971097416 990104772 990178624 654329472 811389685 938301020 961005889 488523184 498863754 659623482 702261257 766021835 992291323 475149696 654356227 266733537 489454119 350847101 878356130 808182648 951593992 992823278 999190043 439755385 779122597 903457826 932170668 214636560 462957182 164776774 855604300 520997508 561584174 319734955 786553254 510341766 700420278 157110150 991773565 650492692 926377309 785884063 945072487 805727516 953990328 149179580 945055981 913702582 965372373 842905920 987561517 572584744 788941768 664946865 756052963 542520103 981661641 300504745 472478674 556951708 886355266 97914124 674992098 415172436 549973767 250457283 578863307 829715979 912265942 308522688 606773829 62250231 612958401 249127351 276614939 986290314 986308195 46934878 713535866 269431741 289453443 344824137 694408565 186022413 276296362 590419170 917858061 83129637 350291439 621565858 890013566 903696044 920186415 549126994 870267659 660685384 955093150 435363796 635072134 505886318 789637995 574461227 618617692 146187194 978478791 225636499 831119081 595400963 808236019 651793658 897924863 309608496 598937691 355974395 926976146 457013607 588089598 469298633 846374221 756994314 801931610 932160661 971788311 487897323 632958646 647775291 781402860 211848710 568221154 567726522 843457432 522997697 786778247 983964383 996666206 826834900 993494201 193149043 684358517 946348665 970220677 300804055 359854534 565688454 947994587 256066148 726731017 105149183 250677926 756447959 816821186 816545508 937905064 925856243 945883133 136853284 669384655 137650613 930599036 78612981 418695385 822242026 842989694 27910753 687495249 275317967 707736324 66786009 756656149 100796901 151168264 87314626 310488857 614167514 969067036 743598345 811730903 202691914 482734336 635794329 924331492 235190482 828598480 409541952 875080077 11474890 867459238 742140736 924524551 921267900 993945333 581830489 831485427 712567070 756845343 912617280 945075391 660107232 910029220 779348453 877223086 731373716 745217013 883668075 899579297 135123997 971876439 542259021 788178326 848121953 937932950 203608393 696533028 554284629 811176441 316503773 381248833 320454746 372793922 953544918 959196753 806161332 929113704 385325808 448692498 619527504 747183816 616985975 935130575 400302472 995629287 960442608 992543187 642045304 953774759 250331158 816609007 475465223 552959507 78135779 686445825 449527314 635367669 575578750 941842703 915521649 932647077 515946567 733511247 692144823 981080343 771454732 897734521 982971590 987137257 819436155 875510060 898948304 996321008 655701843 984630679 662655571 935607143 551616984 738053521 670447920 966518421 645856619 668249416 726796271 773232347 984459910 999090057 230716459 663678145 961351233 967131646 141754425 817378538 950422496 986021893 799816323 826026610 216204105 446757782 195834295 775874421 189396360 518850638 687458491 803753706 817729754 992081343 542284495 586091763 408074917 553109139 500976697 686733385 717181292 796626470 178377722 593173812 493910740 608125897 677607225 760714160 954865182 968218079 430063833 905504949 546959472 885795336 479242171 503020657 459857813 523823569 894982520 975926725 974872364 981528317 540073761 624787484 133937 34148820 832066283 899847523 311975349 792495011 853000447 952848702 846094935 884680849 506768237 507894353 944718384 983520067 567035722 875850451 847978319 949013970 602793174 890493003 97391423 243788533 456826638 794246267 880570069 966415160 135095663 728745089 263401192 833015430 219394040 401863155 634040740 734821128 116204365 162416871 523641301 760350221 733506247 824245882 991641198 999636816 508349235 616676143 920109629 995949503 984924622 995939979 730538780 901103489 862158492 993954894 473683677 533127991 308237185 479423403 840992528 893228950 281891408 796094798 900567004 960840616 309531750 750942563 485317757 556608305 112494721 131148659 456976508 686919801 325584721 627747331 969498397 971160221 529429804 616183259 821693084 914718431 480612127 485670654 497723691 669176821 670550271 839498803 251173681 315850257 520029527 911307617 228367488 370669154 856770979 937599856 868235381 898212566 798694737 825312576 414689774 798680903 903424231 991228398 546858698 811143251 258012969 547874826 560980682 827011743 485427617 591559102 20720137 508913567 798490445 919534275 24204236 545291128 222625143 436140120 677833131 788763690 784486670 797745729 288005670 445862280 805261333 956034684 898789005 911338323 823820814 892106197 840482907 970927886 98712349 771174329 208315191 695751855 742243275 757716698 53531447 306786139 918600259 921668668 530123549 654311163 245201930 301729123 59328905 169013153 764727202 936967857 696167150 810916579 380974423 501909310 731530205 825650332 198362046 384585372 366819340 429470464 348282421 952904451 321060121 386531705 30349234 792267189 436023909 906815947 523948045 942110229 621199134 803942513 608110198 616197644 726005871 903948730 674735311 743183523 811726514 970545412 307192396 609880862 423515173 555411438 451872454 455063239 522988212 529839307 731537526 781528264 733395745 789976676 364017460 974259975 768778487 919479342 93792364 257554826 81832821 949441788 933926515 956517179 366645492 826120986 922172790 995163765 871986852 991939707 658357586 813894224 230612579 363032835 553605076 611111951 837573754 998054612 993944811 995124367 722200405 866767767 542418925 593813070 850241826 859226864 791330500 819597497 783034991 826944526 36747310 392687206 247187903 437327823 616725525 955499117 388084818 479224799 728350806 883160095 106389895 666555629 661550714 671501770 876853147 928025093 909073263 981283920 841741358 931488347 108186188 868128370 839808491 959607868 749502152 920603038 316332463 341775799 607727382 920335286 590169500 911961277 142554619 837340372 698593017 984090575 833940327 946811196 250481739 424004987 433480874 688554631 562387037 889272807 622967103 730934141 720349565 880523984 90466887 953897793 940658170 966374643 88930661 736250202 29452197 342068937 393953102 466116310 352233121 930783149 48872080 214172499 420878682 892487319 393382573 651541626 11570449 785632675 95678586 368324342 800082111 906492873 484767395 736053510 117760355 310646360 662729839 965685397 617311196 804071074 626143333 741151643 739429066 958195345 792896297 854737713 338493509 558964953 148798351 801137528 539545334 724671801 353618224 729070872 995378326 998333876 766935554 796551033 880451065 977542620 767104149 978865334 70893900 529812571 249449350 738317415 70640120 483330959 979553341 999938150 20967272 539603248 172569713 244417823 45278081 833467125 797684176 969723131 124000577 573934966 965640617 986702006 334910839 512990780 376497604 390308985 301858350 414817140 219217280 389416417 192510712 209694890 654028162 734419464 784110159 978826775 13664474 241179131 517361022 875438144 332994331 475421134 427265903 640774707 742388351 870657342 893765315 932033511 1076848 41223754 897944727 954427665 159617978 170479640 193381750 991968634 586136244 978065032 918196276 986673500 158403899 431752244 685727618 952496560 363492773 503819436 7674452 578622492 401588118 581223972 223135962 934810288 148806121 999880378 8273577 753349478 619890671 708063654 549308656 623858202 935830742 983698403 693314333 938372383 158645674 387413661 463984572 857202433 949703907 993659942 794333227 866502564 170064709 952119979 433620382 655745819 215536281 755721479 457283094 733893611 778045055 960378689 344944436 563138446 983450067 999779173 295676170 994590637 457550627 650002587 16617588 608004772 999014807 999176320 993754052 998738828 413432364 736144957 45596966 895034343 133930532 782844653 682099416 757246355 830777972 998948159 634055401 783558806 47349024 457247533 444365108 598774186 111262286 236945126 206319864 973978996 717699636 853728569 218716407 805540013 995269766 996843032 8069768 525156704 316029656 771215378 342715769 700567921 810531922 925784789 800322864 828616030 371672029 538662911 649357062 816691732 457895783 617855830 318735442 674976446 426780303 508023011 978250459 993988893 162347974 395181699 348918342 891646325 346426127 617537080 791000565 793934971 560020338 586090983 889477461 999376041 431879393 986812027 647303312 793106885 792184481 807274531 903169352 957856528 739882264 826209747 757784415 840129122 366937410 484258358 240733858 799267973 959481816 998833655 932023570 978548291 249245257 295583608 790438608 879584983 849159591 960651981 716596982 893624669 868594591 998425428 949901425 958222897 238069599 810489434 51187408 732305525 643246651 739410360 272832011 497908889 157039209 168392159 960537648 971043104 123454892 355136576 586411188 786744073 748972975 891856462 730249235 812690607 486427473 847659903 943522874 951391085 176476194 514722802 639606058 903353553 412428113 845149259 919265136 924903686 209112066 638238247 424319149 679621210 493102269 545939342 875314578 922359315 594277975 995765035 586069602 855311084 42502344 483809308 89517211 807464325 863841084 908361061 113242252 242744087 920889346 923756298 975720042 985960983 393713005 893507521 196075714 332439310 674333027 785771445 240213912 948217291 687102173 711877844 751105467 832762725 759813286 776115154 547179766 807657605 625337421 967701562 883591045 955430320 491016837 538112476 203468812 796236954 23550183 617915352 532846399 560389426 623192733 865224833 473656132 993852405 418324984 543086716 936316354 975645730 165554947 763694204 78358896 971198720 133740548 770425538 513672699 930778372 659099144 941657733 532725775 932491194 412883935 735266092 659892339 987293068 394466441 837361826 222288230 872928122 939910742 979168127 465306483 842983824 806414325 848899043 147007026 342585554 214828736 392645164 785379052 921051233 844562847 951991256 708433457 892301678 17824653 493859107 992854213 997410674 123117485 710783799 860352638 920945922 403435056 685329550 837409596 900987096 671143734 957580365 527524608 970278778 197355178 676833687 332740207 928494636 535791661 997554550 486552663 988220958 201500526 391941354 963577311 977281374 453247064 782881934 596399420 703084352 740743236 751013129 627596134 931742381 738503257 866908382 656005128 916710600 16380957 596812629 792599318 802595976 451069006 554096019 413372124 441461809 854420378 890604748 275303363 516286312 729076966 902833254 157340177 782960594 414128773 869769261 688851216 950923879 937945923 984175566 86578162 600081473 591242306 601400527 291551035 831974416 357342268 398138281 911394866 967739421 431479743 875282240 274418898 883015644 938774936 975738884 669752431 737673681 288576724 408445573 143645099 681964689 953894628 960713886 34285977 612953003 636803184 939983230 765730493 819053109 513350248 879596228 678515654 749313007 33061165 865013618 738152963 869740029 517993205 728182249 226097696 856490522 871367176 914486871 100127592 804175075 896504697 920962167 960242212 981622114 336261735 627999695 144952985 457984901 430994320 968145412 311634384 761160817 425066145 804767297 787542260 971644602 604474472 868697192 275139726 510557180 295033705 994915925 318646949 450905670 214338070 588129794 178057795 936469341 328338838 807818396 83838394 437869318 129815809 572948055 440621543 472811740 238642670 914497061 264118444 395147566 211190476 617541607 347713834 814543431 122002589 159340846 835797212 883692113 858129852 890871797 645150673 714985258 221285649 823345765 92564481 481061920 24174301 647372539 821789936 844192045 846218233 925793390 413988069 415972358 605394796 850394468 761408585 766515993 354446938 706535580 752110118 992483577 996893715 997053804 241271008 252427700 447076163 470561860 188553132 505158563 209712307 996291449 282397106 904215564 541518903 849102031 835147599 971503451 424590577 972858196 397408750 630669582 194344220 403893340 382753987 550249749 875935897 940832163 754484997 954776372 788359078 855386582 214268015 407112617 420991790 426173415 742994846 797429772 716146839 721767479 473478008 611321330 711683246 932108382 55746818 534349689 506400132 900913228 331067588 948850210 151762307 747436145 652098551 996597070 62655815 801962877 592863779 702385635 187130971 276645677 27726881 369385095 190338252 792711285 65416463 350227845 704103407 933925225 743322755 866227545 862614908 952964684 905362227 940681664 946112618 978665783 980033592 999274819 813267639 921792539 743630375 744886615 535898374 640415235 974750812 996942791 780963128 932540394 375450615 446499992 156551971 508880717 926254609 931580822 389895839 641519157 780284417 794724288 235475262 593989591 882207828 886741037 540117173 880909571 658048567 952474339 32761313 519790797 285410002 675072893 405111598 850521373 668559000 821630922 682655612 930773807 5243465 659977656 543049359 639184011 127948928 297168373 158568638 936034005 186740368 455769459 982134412 982137633 712568132 727729551 801568156 830669927 313993154 697146106 717002480 970463573 724600059 798684051 389779713 714539861 15927051 597651242 55779358 775233049 686902476 917900903 948076558 963132558 945829649 984684983 736661807 849068986 445898251 639426072 993827689 998147012 53848775 176711807 615408180 885856323 158593005 715720303 304731854 680561552 56947294 542991793 721734993 927822017 610035306 953254169 287076379 774690677 507778116 971946946 257847185 450596604 471051081 676901751 73491193 233140145 166021970 809323014 490963453 607484622 328807995 978218890 340540754 851284957 585089961 868421870 356880342 778620146 117482105 906659401 372359342 480385170 271274074 867732784 267964370 818372300 789746330 938139341 271247311 687044426 798514773 855921341 575427637 671892513 635491152 854874909 45075308 969836575 476614728 953797250 515313133 630371540 595217940 878867571 358807458 692742317 58880558 911248930 124321079 756846441 179976820 552372864 484393264 843200654 813547824 951759891 448707786 961242795 633776130 930800453 598311193 736270212 749140039 849356345 736942648 993043910 354760579 941181946 174574379 587541828 666244671 859346674 543254526 974741186 313703294 595305079 450444461 686500555 463927452 868904209 651759916 817905364 204048363 957610542 468292218 526397718 869420206 931887701 863600031 924589865 80877022 280580294 17917540 17981198 461811781 513803097 711636219 960241057 839335801 972910806 475230533 496597379 505442325 813191490 539940395 974184379 362277730 758989001 264942232 716846290 777810237 808865361 951621517 996115492 583786568 878827102 687565499 717797578 242630255 406350959 24818844 875442021 900341334 963194833 327096329 642367524 67727705 584076086 147839707 573183630 254996375 525081920 404001512 616906209 183110922 595750008 469598655 951432238 804162074 912888014 407931056 839128191 733771369 861188776 891886212 933024425 724958866 782256439 950393457 995305563 722198418 880163714 96858908 157818714 530936232 660050480 551997969 952891216 483306551 990817997 339224576 355642346 730766159 866956064 139886069 207856271 705191946 922356333 136257333 833909503 587791548 919435679 566939891 797722445 450005883 573692795 365346642 389257295 741458443 968346391 596425059 887121840 950701987 993241008 464762922 883279597 834571575 987836080 333038503 834030098 658129392 731825754 163087590 464725682 228039459 302846333 731128648 912292527 748142642 929660013 565543855 977259890 808202285 930964668 210203153 995143972 793226169 924979885 327375844 763410332 905119319 915908866 51213969 212716546 633803870 804217724 343328597 576676942 401311401 800489625 861519467 982106022 628855715 723661856 202562019 769292260 402228379 594231522 683321470 722061078 963297557 969460987 169189111 721349123 349840981 840791919 456287716 947580217 717806593 949399476 689255909 788695581 876224870 882411788 680792225 991652585 327382743 750638504 597376595 680859010 859424766 987811179 381120625 940850441 22834219 329458464 925646768 933803710 368025477 606475117 552073512 711723193 773482556 900494255 175287809 786884784 317251653 956047741 725581166 971272220 972578924 999651458 941771708 979451228 967992645 976869110 39676937 968289521 754217950 988547815 781958361 989109160 105431275 424936619 932613456 964175983 837223009 883756558 904824872 992516947 116151796 143076397 795794000 931957678 955352667 995786533 64740110 789204968 612770379 849302641 926168178 946155828 97456678 493646620 753418325 836730775 890986432 980708128 518127469 578131380 995241865 996580224 721484382 734337152 925137053 968748453 309062099 445304233 236892024 790256865 614487115 815844756 142880394 809899269 707959371 835058541 398114369 554427938 882085481 976259600 881506250 938096718 565925795 795507687 659465932 747597889 146672777 319812113 855935185 910942962 260176778 948703350 622265611 942364139 442862923 629716991 309160340 861180400 794743053 869899887 260285138 415744883 367658375 590441661 659883937 986528636 870986154 910370612 181260697 249206664 541299446 656889022 988054187 998059370 900948025 988305652 476215936 511052241 25857395 271345885 634763320 757497870 925179335 962763745 403999704 781857118 906573947 919388106 729666048 904091663 745565210 790335326 759335163 946026479 666545575 765222244 827189602 988707928 259423456 818631339 158858833 245076658 13574205 422255468 129308118 498398825 521133626 697388097 361556470 490354008 326342098 555915522 513717529 644234123 360597112 749130316 939988040 977984234 732671331 818427055 374374989 433042471 465668596 947442825 759672983 981441770 610122727 661306896 606992033 694970758 142660960 258683122 168602892 330832907 311464113 687062492 977618794 989552247 236257111 471273585 53725199 999152374 63533771 215138547 409992762 523671857 73523622 251400662 770540123 890944478 870694791 980478785 829033143 841160503 977407963 998633970 131348155 599200235 714485941 819087995 503518693 957089384 369350593 582814056 682113923 963229595 991158475 995429248 471871406 867674253 306484797 541381967 558624978 948870097 644801763 776928411 523373424 905444583 387322365 842688003 706010823 918140403 704418186 747977029 402696443 712616264 400233458 949272849 572683784 609108532 825135798 904691366 262374452 342179800 230158436 632466150 653435710 904235505 98390865 195570017 887247898 914314679 678100509 919754674 907176264 990576708 320642951 912506687 32827571 663977044 953669881 993881137 310473202 733723716 147797578 880432192 292584567 731265943 531011734 795766910 103684854 424000043 185197354 584823420 213086091 447328893 695721630 861735957 56179241 829303753 938884879 972524167 618261457 951698051 886168664 945521069 264837899 530258783 719195759 868666898 810349486 828448508 48672004 825302956 165828565 672795141 531008269 685185075 896389214 909551038 982533680 985172302 215001647 596387453 421908748 553737630 192101650 393545085 10546870 816851219 185868306 781229865 911894974 972288383 372070172 661915732 930779642 960223289 548624353 679618313 161477561 390055644 147013696 948069346 294670741 586414293 235228401 463544574 738949374 828386347 156854360 494288182 579665022 844601828 691320487 789871757 804254261 955452750 743429357 758472302 539196297 915088244 849950284 951379253 480727822 938205194 594850773 980360021 858353752 994163150 976204218 978320064 475949608 691389074 7770997 955881717 356795124 932164895 353074169 986133746 381160755 611790253 312067801 470392674 154000987 182996924 217177723 881756407 206389420 268632815 966036315 970153970 442680879 529137711 381217421 651870106 13107307 795328895 797110394 975711803 828058285 834429204 413335992 679017150 846757144 887846324 237511847 949794570 623040602 657441008 354285074 843320256 669235897 852973166 393840101 936696613 387352695 814632062 311455268 683608702 403757725 727824568 916032378 937031818 224292230 294714764 268137833 876598790 905241074 960373244 918243873 995991035 747465592 891167323 162825018 722668371 714931689 930237508 24428323 599660354 946390681 947402077 8231984 25288162 307220587 827060405 756117393 866319271 544220599 587967783 569241911 718867463 694897027 862618908 560491429 587747673 703984783 977757845 901936656 915943749 500050332 649673164 760569817 871001992 423116719 449314066 226095548 536103026 421154420 687809091 88034811 415638234 344848308 954744113 975080920 980247284 854837666 874300975 790480204 978985564 52097355 140441456 214816918 940955992 835716740 910309610 605221896 821479170 516434460 805437166 482262789 667497763 191306021 591605606 379783029 740906150 647093029 673235243 169544675 736146430 706166533 863069979 574986656 961689729 386771864 615834375 285379165 823622261 777494671 976937586 846844017 938660793 937622509 981060291 336126555 994732498 935623703 976525002 334636331 931189845 809399219 960210561 618850770 868320486 129001124 963164894 842350237 960711819 292862121 668199465 657093792 678214739 218615027 699426895 409677066 508132790 682441868 939845009 822390578 975334151 946439733 997770892 333125432 960339576 197908749 937296897 728524172 789311350 638739474 785512269 80337938 854478500 933699819 986275369 115705305 684326440 687580297 810775936 559574912 621838394 246476593 679569483 998332347 999064724 229064075 904364110 741442328 843139145 594264252 705573287 488927443 524392929 976681911 987217017 331162763 819286545 816017366 871519374 722618167 798727916 696384088 906967699 766588844 935443569 811629390 873150508 255916712 661405480 809117117 815993113 56409775 330808369 693229977 855550896 469667013 983288281 326786780 411167381 560764187 887800034 929646082 969837706 764878415 809796919 17128717 658240873 698634869 979614148 593602139 917725894 297078303 956931054 390876141 672859137 434518064 485743254 513408112 715373592 197466450 477464770 368242257 690448388 452529806 876823605 494110322 764219570 533396015 839639295 688441970 728834839 178478511 598057713 770185514 810379659 344381424 533445211 758267505 931989086 774841771 953794030 530888661 598565271 749255648 851694295 466488254 491580545 700406131 805054001 412328907 679897489 76542570 519043328 60322558 563546143 598817638 968489144 689525643 949658314 301459368 633293122 491000252 526824329 387718123 437654122 563573054 597463307 392861122 964943120 99062150 631498919 810093938 990058651 725803763 984264967 778196666 816890954 854894528 946494629 784423237 972001713 285489472 553355074 138478730 687951852 232260839 397569510 878023980 974267624 723561945 870966242 884742245 970966634 471293955 517960061 96555663 114205128 131367585 806363528 608686744 616242730 849571347 924670481 938805731 983716154 106020302 999818297 966869674 998264948 28564268 939580226 212109665 410455464 429468922 725309029 856193069 882597920 223079521 848997703 172666825 341398148 844286495 867462124 982211567 992256040 167752031 956677615 727674803 830551290 498744283 765298216 152361669 994364221 483196773 985064293 863463806 872381064 723963672 907156271 567303386 647978947 770376650 778696155 695724987 800859319 250522505 876503020 69526752 826757449 947293754 998962761 880009801 910468692 578189289 999131741 181174249 454038434 211116366 297041564 618971923 869874981 816995584 907363606 446663532 864548813 892301188 944500536 499354434 603185278 654688598 719307877 841064632 952973677 625079306 863264381 711699485 717605655 954990654 963492494 22904287 943611517 925555754 935082221 220637887 665207195 478147132 583913791 744931113 881207292 544391760 758986405 770076853 853435336 931508162 980675166 235420569 910238818 941112665 976501931 7114333 422007254 416961718 883354060 417509225 807656390 786135925 940162144 581482062 949957910 338868025 628840715 334884834 681204951 750520846 905196289 683851319 876260725 481967097 874936328 656391197 937551538 780095994 986202397 98257678 370893863 531958190 909053984 939013445 950760135 296950721 733287434 325392660 920854858 174738238 465938091 209645040 419953122 394380860 590244347 894593609 912740380 622714294 819923474 644305124 665403275 393890273 623493267 397942162 876019147 793497856 939627359 129643998 968097337 57324941 317982610 670407793 928026919 480988183 527203037 920238225 965341847 779040399 913024160 180190513 380190470 396975075 848031367 658469750 977672932 424390579 597487192 552455759 937733112 362894821 891951813 559369940 778852363 636439566 911603309 643132221 650379973 720090445 742751368 944266720 977582981 162299634 880041698 681283768 737462747 22026883 95435134 138128884 963606158 951440637 990662997 889079296 920086159 497656056 871370177 779241238 879011849 395278014 424020713 712294101 726796024 675221393 913361633 477502462 767055852 907958552 945683315 292914452 780294793 649573212 791522092 309736272 879844931 980472602 984245789 251792213 396096440 890335084 929433560 393787729 433087107 996334991 998861819 307600290 595935212 72119471 263949670 566564308 716503525 327575146 417759194 679959301 734921164 795866262 870851851 514946428 775457178 397530861 513214142 449337792 563594289 996606895 997514944 348051486 990812900 468624728 659826156 710229103 826298529 308922166 715706105 797780668 925743301 413365840 977060277 676527364 963490909 495682126 625443450 164787183 235493051 375690672 808773668 127835386 926278536 894586866 911233374 994709183 995828921 543580907 635745317 429282897 516811447 403070718 842194173 44947686 275682380 32746810 835090606 549644543 854650471 592959534 786798340 956238941 993944171 898518096 980019446 80364323 841368006 449717025 969927026 502125496 911657478 790583393 810216478 258588723 406721426 405488207 767618363 987533164 991116379 386940038 596750397 790426514 941867698 541860078 868539654 611309886 997527093 363667205 738439790 151492313 197031707 76385026 172833948 322346991 893207963 356598053 402619597 449488718 500604123 520761625 677665908 560682434 975147683 823695548 953523449 293860721 728689290 465293344 702585806 906744539 958888622 638569841 855642561 91287328 828471938 703142673 938090597 502873823 839868890 731806919 945918666 856622225 942503518 370397180 833030455 944062739 976698965 706510192 792705834 273013563 748242942 748919876 846272822 144540624 991918105 715833255 719717623 634144786 938599864 790858103 805984132 187970862 567779792 826817973 870402360 875201181 973259233 51152975 605193070 843653476 902359636 636326485 963412489 372109590 756185177 75683285 593592923 320427410 775273919 758588030 945877905 12210063 937312568 220131626 764909744 807945155 810408201 741418356 901533611 709748472 799255349 722614339 855436674 523937130 544155004 280877558 454328228 549606500 652820604 597911287 611701998 638588217 871870093 400907216 512596711 827624690 960163155 513473365 559811730 93320727 705667333 592358899 647264627 120928384 491295957 709692740 871163392 522353517 668274141 439846278 614731004 527048847 895402298 877925409 992605661 418436915 763278381 13350452 958960701 422218421 456850167 311136549 618219563 635691070 756910671 766771195 965503672 212880541 478054163 854266526 955608473 387525514 723462505 372787778 683173187 762714637 843445948 274622523 521451052 983091509 997825093 804814484 805457538 400540230 895874661 688331445 960756834 900732115 971325319 487290960 650403464 187068244 429161450 886723302 953485173 710823550 820610315 196700990 214020301 149532626 635042943 836821924 860398164 589005537 981375144 528688473 735524972 147744038 551644023 588203167 601188195 202278702 686389318 135906438 381963785 894970189 973386916 743539079 897977495 219503367 260018262 529132188 627557897 513724080 594946330 159728543 904430678 146144752 764817221 356045900 719295329 700691759 815083450 283670213 923404024 956315300 984064966 578618349 768674850 782182772 799605024 135285787 923794166 354985323 438903888 81371816 253377974 718385975 981382343 901038939 947446602 811367737 860877285 831457332 897562044 512403170 667209688 597283492 867263718 338573820 788266241 167981092 188018260 98781115 308751361 176828324 189857552 625622366 905592666 581307619 916466897 200800348 314548840 388208134 724303884 651841043 983645326 974056413 995957930 447654693 820130689 735154549 802491490 28847925 409063057 426855410 497814111 655747955 879763701 256962150 587639712 763029304 984337360 616914187 984239131 799250713 902865626 258628540 588899314 734958623 825260878 660881207 783338528 507932556 702398557 919821822 981210447 433528110 957679620 821302232 890947599 962976280 995188364 345607832 955063869 900895723 978573408 654447369 965848302 655495169 931671744 32068194 342758347 327297124 805884595 734185632 795324409 918077837 926614265 258130021 953188733 205365699 960344976 515826751 773482250 589062191 877535853 507404468 761974034 961704113 973578573 463809448 716188174 503529274 663895068 680878038 978332215 307805308 696785166 921133754 995006892 475954892 850772268 118102189 533152184 426216272 570546245 642447064 722663015 514387447 644537656 62415337 924664084 10401113 907595386 481374476 866194169 425256597 471847164 282009521 961552754 836207417 973673956 503130191 967310288 818986852 863988426 723426984 737779900 80748572 637539434 938036500 952068218 10285835 555176831 591757803 810377076 94812468 451068300 801110575 942355048 584541478 622075773 288146870 858922219 526378173 782888552 35369059 489132243 129500085 133700747 381573218 824053264 39667135 768003903 751850177 965392257 82415767 110304136 604050985 991107445 99648993 470322421 424062340 676367676 67172593 697523201 504958688 904490499 241130124 772576506 346430867 725466930 216994169 502109202 350689171 967084077 785070937 957746920 460495182 928175307 238816061 664265152 674228596 695506481 744335427 932645533 131506537 438946528 480509122 737076412 386830896 668341671 434477094 456484574 261901711 599802874 587557511 921689714 483962670 697032264 250798571 765510284 145469617 962945163 439475113 505612180 477973382 928939875 165375944 268179619 683941453 700774980 521401835 732452773 434893293 926964910 297190276 824630944 523289554 870543992 233118192 486439768 323116338 928376352 963755166 990396064 879493999 931368451 2414918 624566615 719763078 968745893 201745992 860472041 890413325 980770104 656541881 981860330 813045961 957375892 535110332 536739860 873445281 931310098 40229111 164717964 901182524 952338173 779919251 888511675 331998350 757284371 837394357 929403492 749773439 853279657 643766280 868723722 797564104 811616668 447185545 729954820 968050093 978988494 34966188 787843995 127806396 218558847 430243371 844287521 976933621 992872917 159238495 922754361 438510604 484844937 35333433 293408104 560525502 677219888 861421546 926041754 667241994 771472913 935292894 952702143 163203280 676053308 643117434 764504416 741628539 979317841 465173010 657583882 569507682 740666355 877578165 901927062 593316388 637392066 5336461 449152997 40115545 588190215 676906514 802889368 932663037 933588603 707005634 751109904 258903374 645835208 534090167 942039492 640024349 741055161 472746619 824503890 466355721 833828623 507827868 744098745 411319918 553564197 938927528 943761292 756569052 914912584 172036197 396010240 29959191 490982415 282643832 525925242 284081606 561473954 603473948 887935021 897008415 975774074 485636010 774185497 950517157 998925302 156017784 728819365 27215135 212745047 257465363 308893396 118408681 407578691 885324614 891456088 695405767 909985672 874760704 906142172 822279632 892513820 856614376 912105282 120272855 417448921 408263749 780466164 539395549 621908460 984508029 986031969 926586248 967879676 201706729 362278203 656506710 848119183 919467818 986392353 547107273 901471041 957144307 967979231 789080115 847054096 940489552 947686582 234139164 623692988 31115779 277314163 476995522 910458831 909822867 931130347 406828255 787576564 465556684 812264512 901743917 985201857 225084857 445144511 52583892 434643911 575807517 893349946 775193517 876092585 588893489 896702416 166473672 799790576 508974275 689804021 613931446 729915505 352852768 748500750 765396486 954288133 450402996 989579620 81820199 850463583 598670074 958942910 799861062 829811172 590185955 772960614 62683873 143919386 681951747 848005237 571120145 964142214 898798705 909033047 988438162 989316235 540117736 738493186 956960613 986012743 582299732 633232302 207339902 648096681 329664315 523260351 330960319 690788238 788576943 909028893 614836468 895602975 113184155 474137314 756087453 818979977 194081440 210318744 603361678 897982762 950937560 966855786 487029867 952848947 521378727 663586280 586984578 610755345 939492206 939927985 362204043 378216635 522419020 970207731 33484054 833439487 607380951 630336981 91719790 928904608 595708865 597403881 813338007 894173273 67035984 202730201 510599593 786089325 176040544 836840437 932487526 951074819 287790902 742102583 440509670 923093322 94366913 236281040 314077728 608120353 128326832 667657583 777495877 962563933 776996804 901212196 126442147 505819884 386570153 729346140 767842557 939763244 115900286 399784093 250801439 352210624 517466837 770405350 84026129 309621858 534283585 628884808 108278993 849429287 345121069 567055572 364466965 641041616 51027204 856020620 343883343 711644711 198615591 343136127 299137203 845381580 209629238 792629399 922533936 959251453 647666702 896219409 428579731 568659297 204481367 862966929 792741160 979495254 987699400 994766749 580492124 613344786 749208890 917570213 366963773 602659029 366674252 703295758 863160080 872327903 681244571 772700829 700063563 922387007 288191539 653059021 666416179 756199099 27619274 162023959 576935706 951529810 179886326 686707267 252141408 829497714 295993466 326931302 325657137 556911907 558705215 812875537 344899606 491421216 547100983 696650687 195444680 784276320 520298173 630241150 224864602 909148936 388533514 955015549 900808422 991690314 459040084 595101208 421801968 448202558 481217733 788779771 412732318 707829290 91672809 737239033 187806743 457949055 69964246 926631627 632834037 906684862 876239415 899232126 876735295 893160861 318652084 428058591 457662955 491771565 360489839 503121433 702634446 833971338 853758130 856847148 708250584 831274022 424428067 489535232 260873709 588294520 883474167 938473792 11324738 334601699 332270421 927992298 136279036 622480635 844863317 934343102 532098969 622319729 594845501 783974788 159183201 742930361 493681655 871945186 205959943 361669263 660648353 970080820 586922153 606834942 117083223 294915759 259660021 940941917 478733945 888272151 1499101 248660697 717613243 811565622 624477888 872892651 408271238 564109267 465142725 516009103 690559329 944140749 475638876 581496265 596358786 843240883 192522469 969515819 872570992 921461554 200150260 872548672 524358405 991455724 336605854 651695437 394895789 727977302 955195286 983895391 471474946 509300616 792556468 954167081 377225992 695334477 468736851 998810967 545687638 782183338 538559395 550674138 718596536 947758892 540631151 588425478 222114217 477146170 885994180 909353405 150036404 293098734 176051251 362359759 560769437 613062809 432908451 875233079 482400071 705864277 491099017 508573858 247977627 421296996 384969636 875423484 241712910 300185323 295451557 564784625 364443505 798078569 878567226 924729256 712364198 984607086 873536674 874082142 751845959 761174684 516353851 911654582 681318802 908415402 353671100 858764750 506150333 964103542 63269024 326828575 628495039 719964829 486016040 624121530 207015230 472287150 902554356 954601067 127544381 131833150 948910540 997012156 527004703 811236846 478456757 496152106 282044919 344649415 434592424 463596460 757477341 997136550 354057689 519289557 211147417 344068496 185400410 744234633 802481327 998820331 872756246 948711211 978202014 989463222 292808069 660853413 282386792 396975217 689797923 832852127 581137174 782878573 381812834 998570084 167478303 464129572 821723167 863687995 528619061 995623283 941710794 942632937 92838216 464328975 927123309 936592167 797987867 993920134 864628756 883139820 214418051 399753660 479152845 642909971 741432999 887664407 236637947 728335279 371558472 609896579 940515572 943329941 991546133 993621209 550453590 859917766 389445260 608646989 713856291 845854207 367646218 699242339 81047958 980084176 794229758 806178714 734085019 994515753 672321639 871470954 562998060 633451818 10140846 851187477 507523005 868691340 376205436 891076205 828944267 968525750 981193814 987501797 963247568 986489320 547445937 812223625 191748525 220677408 593665174 959291758 91678491 937030818 417718638 917213391 697034970 805705298 232487167 999224571 521960569 599499755 367967477 669064834 142600204 946490691 95717144 150410904 28460409 656528453 415565708 799123224 461797960 620634788 739143309 877935728 921432654 971262591 419674673 445813408 208941798 943157640 640632005 840553267 138691065 383402713 754953082 969005884 689932963 791775116 232792280 943818973 871409559 924877454 281813832 826508426 769896957 773678128 145375132 984060019 625920146 687818308 694224289 803751958 517835302 611968800 993141881 998898088 141251774 827233136 681814929 905319135 651260544 741998534 709857353 936101783 6217194 929317363 334890680 831214830 820477938 962120865 92364875 116235113 798390977 860891233 540483505 704865432 81841569 836279444 532109620 753383687 480333249 606378866 513885392 881588805 952094291 964852590 161994544 217022953 939546736 976247622 377625496 563248405 918552116 932317091 226235555 948770446 117696028 118916163 933426247 950777353 534840603 543057146 9990333 75435135 430966431 681877620 517509335 795767229 953939282 972249227 677300278 722721063 859189986 960403100 317374508 987219711 607473729 918330753 178488683 879226670 14933266 337417835 277983551 532923214 335135932 582035775 350068163 885090938 583488199 632354880 992449588 993858167 662908938 820810018 210024819 961798710 795098818 809983651 103913509 245719450 983506287 988478957 594122585 608362803 781230812 838948074 600116449 636350667 887783829 907067368 665488056 910292332 987398939 997831933 987562284 991929388 556072388 603383445 534754564 696172952 740950499 912857377 467592240 738116065 968089226 998435978 615613526 695262081 721962699 734640688 389590394 825940231 199527303 866617579 854565820 992384902 303539848 748752820 379565936 455222050 87162134 750237437 993162114 993936405 120810539 367879299 884965229 940601648 695625779 765999854 988845199 990721569 306594112 688084738 950910767 970384740 867229704 951322351 925663012 970522833 439675570 694022632 825266263 999747362 830708216 850800456 220506150 549019579 481085944 632901376 80423993 482233452 574886480 801584930 478789679 819460260 288441295 624334680 554530700 842795677 151003116 968780137 392782457 761302663 956437344 979413224 135367270 571868719 197815286 565521829 297415934 916101414 324014122 656297151 734248549 772107805 537279875 696018461 926985155 986582163 987941906 991817399 884380735 990446367 152737375 392282032 526666262 773749918 228549694 393668079 842009482 975339512 587669973 734643253 33571065 812196907 988483898 996703408 696352880 907489107 822823933 968330742 696981507 986771347 919818057 945087192 935773627 994657703 583746675 821497658 300121253 476220500 985861091 993318920 390335856 431278182 603515208 716082378 717193869 738602228 681181212 898093144 171088421 602617207 152720194 731228537 859964992 997054982 841363760 991426316 305679079 618308306 784817175 865478827 118095234 907332583 229843164 678434753 144957848 559827877 852177663 862590211 612442677 707951067 424286710 577272054 976335641 984076900 790031281 823730770 582578802 769313013 183196668 562700339 904568965 963980422 307151038 537018654 448049798 937192527 517333357 648520326 51706314 857020329 148072394 503972075 985931337 992978721 524545590 699101475 782815091 887878542 251425151 459233862 757477132 893509962 610283984 627838994 877325262 900167236 345692675 843106369 779383238 889790628 586676232 731907911 587601688 947369788 48171616 972106506 969147512 993541112 38933222 780776903 499653145 626644177 44175600 295978328 446339132 827742130 409320123 734840707 346825061 519129020 575993835 941041863 324699573 935159730 743010237 913666780 313930119 626450525 189880389 278611069 869326287 944854701 186804979 513022462 427269750 799547180 948494709 989941783 258293570 564736859 587944717 724743987 18378920 321172553 972507519 995080702 881037365 975564515 748220169 874555558 657572452 731981960 768977547 815860554 200246495 423808820 888190759 905970232 223644971 734079194 236950213 878238472 92874930 875243264 47269668 182896206 496258487 761949696 145249626 434267379 279640016 296584015 388651744 430918541 7128184 207439130 903165975 952878761 235076090 903238224 300279295 506730351 593172455 811779300 980073473 991037525 333554821 863569484 951822689 963585021 351160242 502729991 761852764 869789559 894662260 916961591 839179077 890640364 126389412 384069275 151122687 844136406 947884320 999979075 584189967 911824277 635037985 828165537 921596576 988955193 157142796 518867148 783580911 993654305 368231469 805528115 674073082 741666692 318260424 802786191 239670313 920035026 976806811 980497124 193900290 608145508 678772594 796093075 19802200 359733191 252108137 384233608 302515448 408259772 694881388 716932625 274906743 365478564 902804290 979464468 525351656 539183329 247285225 380145287 997494089 998892662 723295926 959158634 194903409 830020481 543987744 826589040 317569909 758467889 135570663 903522722 650295141 871089288 677253140 864302709 796007115 798160203 349405280 817396882 87407691 826953031 639046981 960646713 184189028 999687442 126730009 577695999 7237112 895333927 580454409 631631677 938398337 975404238 124450934 527278526 986646844 995776465 580838010 810316204 149237993 806942842 135908393 824832896 230430468 743918135 91891489 467313669 525609325 599312781 114353008 523395634 99044872 576595250 618281038 907783032 240094403 563302646 905551318 934700489 948860886 953587644 329508361 802828610 102254269 750675682 176338643 327348526 631534597 933680519 764600799 781044101 183092473 710089865 158013876 602868859 147659813 797606671 527239841 776774154 50778789 257434670 890356040 977748905 758105025 779893091 858889625 897181923 284140854 801520114 932777175 937885423 171642131 187585544 861233860 978183504 616426759 912650611 821706008 900154987 199527093 824897888 167829414 300303273 901894313 969094349 992967543 994702385 644653326 689422931 819175732 910979204 713422260 801462678 56953617 131362341 325937515 957030147 515671284 597962257 712938854 789596021 914577805 954003690 688228481 921888531 389874103 582589331 957209799 997517002 250455106 288232965 221550139 509564670 21986518 904104669 710426507 863241485 472163901 704334720 921980950 988608131 764289353 808786360 171290984 309900149 948483834 974461018 327932710 369306023 259077381 720806869 494856973 543136493 528965324 933243075 338645675 722292236 156071783 284729262 711424196 886165673 42803621 825514954 215751927 780753387 820180084 831362471 194338339 220418612 75203261 208689629 627050433 948262917 216798610 719923387 891135806 916170747 840207504 853301625 945762853 951151872 330403510 531617280 572569981 650562299 12282288 937191224 728257327 978035025 756591470 788138825 336613688 338915995 913828606 977283548 142113848 702013480 898022830 983889212 38798282 415706406 855030145 935264096 734457837 893639608 245487248 730097710 617280694 894868049 271060746 705481241 128377139 682454980 997810461 999569375 17478462 424877321 237514416 386897371 727233911 860062178 63350256 534419177 200760845 814784189 3429305 232106129 941594647 977827531 733437320 773658084 692127898 857623272 247474513 547814221 498194717 745924409 11542679 271983879 651083363 912671124 205545344 897776136 78290165 342278509 964089733 987326453 705959592 769324856 853180985 932940673 308732239 340963371 35092287 618786552 462609583 565604285 281753829 985971446 499573561 600219546 80379088 111074340 123301579 297386051 679489263 840094906 535609722 779596791 835680497 907381913 861821922 911819837 57115997 793320024 639561686 810223368 648145468 692974645 927755321 966927311 346972322 621673705 174655260 377997286 895817068 926535582 748148383 988974886 374056805 999333045 81557862 477313829 978384638 990247943 206924566 898234257 838371331 982637966 434056164 740641979 805732249 965236862 590250977 712390988 987254567 993220328 105302921 548409842 66377337 322144732 90699087 909685945 206121792 582461258 198275956 789349095 790901447 888102201 982981007 989466278 544993512 783128259 714773124 913093128 375751267 695728138 633483742 697180245 668378017 885334811 449482500 975973326 267911134 923866288 595918123 696429544 563489870 766079052 618172235 838907765 980791773 992962414 472405666 930908101 122110106 925764334 564389108 693850642 391653793 520821618 977371937 995111318 787423775 831272755 709408470 882570396 124836346 328082724 990049780 999370196 986421129 991960097 502242650 631876395 321502004 742501225 754370534 947022594 419476107 665731791 628624006 912337695 560401528 834253151 989767838 995233046 45748544 902581144 884182973 905927416 739881160 829241824 478472072 901878622 126567540 168675608 875481791 935556056 425856944 988586628 53792200 781985338 19479642 453506995 462185111 659853295 73265768 692486722 416730924 941308888 697123700 813650848 455521665 867011112 951911470 977054030 950984639 983539856 77720644 767404142 27344820 395773189 104473275 998827938 609932021 832464826 53274975 436153087 708592418 828526726 193432145 798694978 622092923 748840439 450248355 804722335 568445623 965639546 94586342 123421172 617881382 670984618 891895365 958095871 649416271 740583729 318501156 489961403 997141286 997557169 841404631 881342145 585794581 965579926 961503819 970991255 366066854 984177421 539556410 713237114 999704462 999741194 302221995 448096417 748350037 933732344 501347913 973857265 393891014 489570618 802389650 916378012 966599724 992131109 746322625 908056715 444383347 834168246 673444690 826530817 264777037 535989292 249851957 638133440 237998752 943082999 77141566 718889892 376308159 669059627 874416934 932730301 360870788 434844998 398664819 490286858 550438870 621592092 692158903 725646645 161046175 823616614 487714875 526299460 16547843 272683031 953060038 997664722 459694244 795571859 433790581 714004812 406820997 825930678 826513485 834458185 212902783 684575242 780574062 798186327 449037299 976155176 47415294 564635355 173530323 721452434 260951643 685130794 423940530 958188956 629729169 751496083 663930575 825208006 815004791 871833129 697028181 876951667 912885363 995986946 607048667 620038987 619169037 815532024 986647105 999680794 613427181 645689419 727235612 747365162 720908668 988170255 276554451 986484998 959873853 964134425 546983257 846053825 331018972 789712192 536840456 623274729 290621096 413866771 332369864 728797628 989142414 993719124 694610987 785934614 928648444 985974957 122913048 972725426 284896025 617502544 576099740 776313170 214089768 456951578 867005009 958102405 645884133 855134240 140611274 333716128 564735728 945349956 230888210 537781779 220033361 328936708 319056498 711355963 477067529 938672445 753361986 974528323 444331307 819327965 560718350 685399312 798179237 900557276 561931498 838881394 649074886 690364248 618324070 919345544 971246037 989590327 952185736 974152951 748446085 838511887 409679936 565297203 545170724 649624753 153284044 356622592 601560659 831903029 550852684 869956622 453348078 724922100 5577729 459739767 836302962 910620942 124170873 552412065 749972666 911241937 96095596 206304585 437920001 879249161 662486899 754811695 565803973 827464960 822744730 835114321 812179662 923362928 741262405 825624792 236906720 276863652 144991923 690140912 21038095 455688435 546102278 635036438 777122935 893021783 264410649 377357086 226414979 494897945 195504498 926303088 339438358 908832937 698319204 804214951 33116946 257849662 589875677 994497552 245086991 721196521 136465489 317122534 337875676 771049675 874480561 981627333 512431717 912870595 565766656 842657317 430630994 891015185 348228621 567540765 285073770 641444436 746637025 987744173 899896842 982336774 142804847 843323409 686521187 696565044 905951052 948745174 375006712 594334468 167187515 241292317 612841191 895228739 978983214 993056423 126188244 425929038 351263797 849114222 962774444 993456634 116238463 602608959 112456350 404045108 933997967 971562311 570336787 876691544 983398273 990688848 805327402 840164200 650768311 981740529 623819761 931964049 406183291 809393988 605714345 957280422 957195849 987525312 844363176 940194105 462442486 504964012 632505177 858593917 649321927 924760857 900632220 984975174 754660087 910776902 613477337 980868048 611786050 919749146 151608385 974441117 84311350 629819603 367137609 406233470 784851755 812420746 362991319 853717756 63846286 299453083 594457837 984371135 147268128 327871483 207000532 840892877 109142939 236136482 990964293 995891375 64998002 884382760 917133337 956674923 751673041 988727953 149189443 294181751 562404719 690176178 30926718 601822013 891227765 997362318 290083345 654676499 742793169 995148052 530913128 653507788 610252733 810280646 20138571 440848505 541980474 920345417 584202621 963293122 26150786 498641306 547405058 568272917 703861788 950012831 685767507 804403619 421930900 812216891 496107832 910344940 632786713 958274473 640001456 827765164 166075322 338900260 108540031 701694081 408054676 985773216 942072979 954828463 946231199 964968284 862837294 883688939 202919721 216867165 378486808 620951962 177980905 821769087 355998746 729075594 110664228 999330746 841267474 932772725 231583161 487875182 940914456 956456690 602825845 714356277 401110521 663296041 288507638 672529973 23502447 179317717 585000518 887394652 873041455 875948123 29546713 901920219 172945747 245965260 751119192 751951463 444221545 620490454 983540656 992702621 972154723 987944646 70480146 810690812 10018045 549288915 981494126 983023566 456845324 621334674 409875635 843620255 618647915 823755356 476096939 715752935 329034294 795223114 129615226 481483037 466415228 587255017 380123942 588250984 168652659 978551625 204805545 385593921 922918738 999872465 823511307 848648437 190378786 534571691 605740225 754831949 221150531 796787441 418233321 815044281 548313719 905499082 595400450 947499741 55541169 216829845 433194801 985179940 790704095 836989746 498784363 521583036 75121054 460924153 793682408 862215395 822872129 919900532 143556800 981648957 225707799 582283620 562034399 797624033 977712683 992557297 701944469 714908421 493560577 675626946 957018845 964658723 209330848 675843805 688281489 878880058 212296977 415441474 707353216 820111089 386651932 678114796 521128255 910810877 409736031 705489974 955997405 960751885 129684892 791049301 446426281 513810107 415350518 902178920 293302570 858405536 192022037 788148963 833432161 896136270 815081397 848051788 52680509 569109930 722557644 783902756 379174120 844237050 999255028 999931598 858624682 887685538 835713336 949090456 496138609 560643782 494190880 537831742 737420864 997213741 28558432 674734967 14148928 196152508 107760158 569891335 565382010 921796198 226390463 851756837 693589999 989829171 287838650 701310641 21694978 456615096 705929406 720139781 925255848 929817355 721454837 806898966 342171665 667896078 974920615 995313617 688348526 786971825 101673584 216022141 187360815 595967112 394571364 836395564 111875150 419988789 616152364 720524571 377107964 534092186 228483391 582439507 343062682 465364525 44828478 928541618 105651360 771097955 552050901 756753940 346149051 406512645 645544676 798654289 363384181 529993419 38297371 884600903 300097339 802422586 68998884 333722019 722750617 861195076 806341304 906875394 804646125 878514716 161430187 801720852 671787777 728846786 954792126 988242275 291445866 682392829 495963213 597988231 439484227 695432833 662385425 900411925 436278535 980177428 811181966 819305805 161547561 835747214 237758202 331305897 318844269 794959532 566527389 991488655 655948694 843530248 849123656 968344261 336582360 884318251 49445715 515618682 726515679 845914096 301632749 548105189 881833448 923886955 105603528 367703396 493788603 877771834 22895212 977107418 936828674 987806135 31790901 172951055 471679165 623066437 531137235 664731865 487856930 638176729 987012932 993759011 542127723 912250159 27483863 170233410 427302346 516220945 919850266 973370802 421073892 651459724 411629545 830527215 559967619 723501123 739651025 861562017 171409221 275178061 63462620 139479621 725583613 785617222 92841990 450225442 892186510 931086881 488080382 680502890 423379439 721975849 372450271 921384914 335840196 901373849 525467573 545890545 138874677 907198397 941759184 947680804 62817209 272358747 237302456 368273941 219617765 552061507 887904223 969895139 49040240 585256362 136761280 580658743 617668702 780511919 822955993 874506803 90199336 413794369 807534826 857634883 544929057 792629256 89952917 623691299 353739392 392574784 901967157 928808168 415031476 417084746 498901911 570882129 137064169 342518865 824756212 940078768 331307006 740455909 290533500 373754011 281641546 407147482 676108017 877758016 505566086 970645562 607006299 917312507 827332531 938201067 619538631 985594317 409770806 811908927 424671501 680263521 165107299 896286860 13520211 856876447 682522121 873815910 163850529 833710157 742108412 947922424 398755634 636034606 704435909 981169931 946709681 955728754 290551932 469516306 953892007 993710407 838493165 935326671 289674114 813959976 59433072 458635640 698880379 977189712 577359717 937593883 164895540 477232742 582216929 869088076 551351454 633557033 565725334 749677559 198870905 283598056 126454505 274777965 74128635 123887881 746301186 751980717 159141378 492321369 776838002 861998516 103191176 674921218 268601203 713235278 723977798 958403249 938683734 957047934 850601122 916347140 563243296 608901764 670918343 897647456 297156727 921607602 923081448 950397113 10219541 711664854 118373470 778811191 701419644 969269490 61851341 776783687 32219954 981548361 222732666 992454977 436763119 645739802 515122666 839075258 797349911 998440835 909446465 983137812 177855596 329548712 356932732 545370904 36441313 144985107 43917908 551314682 758915611 972721978 441305528 792688289 781976692 977103470 844155925 998324619 528673249 678270822 342804854 894783860 552491112 916968700 486706375 612297329 192553874 609467314 835811241 881265980 792393612 903467511 958526122 995733394 923376396 930219678 800920031 842356278 412156680 483008086 643878089 960135111 103218643 133108946 344153957 717960144 336245466 599484249 577618389 789562724 588737682 688345538 147680813 774284335 369301919 416616870 903359637 984603647 927035017 936469840 343250705 972057863 428734810 941341243 157799741 422992928 167870669 607248223 621025442 898269347 287354068 941081185 913686673 937674535 18383732 300792336 617819663 917388791 460553184 749709467 623515293 918804241 390958167 505484998 843736715 975148364 516529153 894674754 307919123 765685284 259225833 762650417 516311865 691349829 12125855 496316793 86916685 433267746 584825176 736510194 950204373 950936510 549793590 675785009 915117452 926363999 736497952 843701112 893001034 912566223 422567245 694345767 150777408 856764963 529905999 789364166 240935756 936253196 231798707 939606220 877214281 959797452 277950930 459715839 26408441 454721588 661914515 956872736 41693119 629596859 967213199 999904501 385965652 843701183 605027422 686064892 963066340 972942035 35830337 376444985 240898260 727080413 45119335 703688522 421749229 935069252 70466881 723295146 140068011 492835016 862501295 984495110 729415597 982831532 118798011 508306097 971945959 974648872 997698458 999839969 68665566 253868025 413835673 923684610 604449355 944604172 534637987 948835026 692015464 721620865 376910477 819979567 203948851 742045358 529430322 801586972 444621193 671468118 576196187 649610415 162045482 341825307 60397265 741597571 524200605 815510980 300789354 520660994 878659084 939857753 521734517 861929028 857786563 903803874 999823329 999966195 487437364 769048443 869656301 990130456 530109780 813574307 985335219 993931821 557325166 699841080 798821012 944712782 345844590 929112953 272837800 928303352 876283844 978067523 872384210 882428317 640399352 686833068 561427130 893060675 919801815 950376307 968070875 994628811 485689285 529135087 179673581 766196516 557132206 956247130 98751382 217038899 516033171 686254277 377358514 761578773 763365399 936682792 235768721 434853668 956900568 982512629 45823410 542313868 948497283 995262324 827442994 995027778 82220722 482193187 736399652 924746669 371456804 626634422 419539297 709087254 174317 41505666 874547866 968936158 920361668 944491167 317608996 916388492 207687037 446853349 734605815 944641819 877784288 982850729 603959703 754502245 951375074 974527226 963032671 994030527 713408202 943557556 601042839 922777248 852380718 917236648 364251381 671509623 103061207 426609768 641851367 768889621 677998183 745397259 940784391 988728535 314670900 500160045 534665760 677507424 956732713 999829845 563773318 912655016 199936966 285288494 392094955 716381100 682131950 824791693 373231577 984378477 297405430 314962911 443224268 984452351 188635729 957272976 556929386 702055116 739267620 857710983 570094570 655905637 548564524 901763172 292757660 388480789 637353151 647256099 76619563 425725920 572494127 874312375 283099278 590363218 94107436 723317764 665497497 824988773 351883674 480055722 843947786 844528626 77485489 121475939 997721994 998881849 610780913 638475039 314872977 829258913 857061892 993970151 13936359 314348103 197536638 848341680 3925248 154724776 570772226 704696680 348920106 857874524 418582351 503792596 920985618 931452025 367152465 628747797 151518410 411916978 537270567 849688891 610909147 747766260 232220552 343126448 236630461 465943119 387057581 469409793 583575280 766419949 731572107 936694219 880520226 933175809 531342896 604345809 958799952 965552687 43428271 430976595 438988548 723716946 140114891 177591243 522054724 925477558 364870306 446084831 366581115 482144956 854300808 972896059 723103808 914320378 121183582 977468882 903363157 988012575 40933949 469522284 685751590 805628241 40506513 386092642 482707993 660500632 947915943 952780205 878772470 887035100 709958691 918581248 31436949 629645393 161744817 382071164 402458823 593546179 832779202 982980800 192618949 599104789 966138300 980350353 525837911 975536666 125617872 131485903 609972216 810207682 503226894 855032934 291073665 961965002 787890702 891275658 576747176 783838337 701365915 731088952 565546379 772226403 291809458 675408727 667151193 872057966 381535649 883418646 37671275 401556729 347319750 790015605 424315906 580779875 688929493 800097247 218150995 575147069 140212940 805783599 301650804 742948231 597612706 603460705 434457836 579194149 932845484 983590028 231608476 794151966 409677421 503654427 25347909 569990499 835742848 917356957 206993747 482330516 741229272 906604485 798567948 831782901 884297790 953731014 232172971 448505460 363616623 728385425 938241585 983538929 459882628 615251493 622920466 839927448 875484043 943572927 813505510 852387234 317280648 455711063 955110246 981728287 106373975 270050518 291009856 429874549 191487446 200422080 214487472 800280071 805142481 839897479 835122200 837890740 45833669 567310162 565567162 657713903 350654806 648783156 733325289 810595100 955389112 990528126 380945451 756166776 93264258 571664868 364186537 538644740 673406884 764822921 21958415 686922747 894824122 953579109 51891808 239037638 488909305 749299882 314681998 422521811 534289746 756442973 444242064 676973814 407162653 947851316 135924508 799584934 83223807 334813401 974555282 976564775 18754469 896142211 316650914 976685309 733947392 838660885 183635574 640074709 332229958 525991839 320993142 699218138 532699528 856814613 728844366 951601127 988642051 998662071 302591006 980079355 677358811 716592429 273326753 452061618 462440281 819409429 21119963 60917888 787350367 800873139 485890065 921261682 388384728 431769847 91697225 575903794 565210418 844367946 353125628 746243722 214753446 431365387 20069952 317256305 728643881 801453568 865855342 893545253 475870810 726535643 675363062 718480547 726748974 854691531 728762492 762659936 600883756 617191148 785214816 923718434 733653433 838212625 388085113 925333942 774124511 858368085 886606272 990895400 317901511 332831072 837234055 990002661 611158777 618976698 634089689 760951355 170352263 966204548 19440663 893609111 635791439 832327740 510196821 571597503 836871050 967387313 653991021 993104688 314103213 695463494 87836888 485085451 628812858 751168437 721009255 823264854 675742560 709380124 104481226 159437594 901628275 997740135 413783204 426350780 113878654 568824148 19420889 949489473 290268111 379386763 279868582 428429282 658967619 893423971 119514375 207623249 761058887 972088178 252917961 995236726 959633684 981627924 764987152 932052731 278425971 789467450 643326823 918100384 416059013 583570445 910630698 983320227 820529015 957069845 4280325 866839065 576989288 636937855 899770925 958721906 954100248 970922797 938567204 939047825 615863317 879620968 840888341 893578257 789617776 850135472 896585557 946900216 721917430 952735990 676769754 691633769 309629977 492290899 563601252 729386213 76254362 489322694 37678170 516908956 950858152 988737932 999616439 999742826 169752262 677946598 651452278 771780681 833484738 913199793 861845267 892720447 462500622 745221904 113194230 829167118 380309715 706089733 303691469 342472971 283119677 557292074 185424470 923042858 215101120 712022872 731734528 958022092 497298955 694172154 367086484 864481128 151084799 878729095 291983381 432110874 823294881 942571464 970310027 994081153 103660416 955047174 784391671 839194630 542266673 922073099 578730562 758083765 304843443 807050543 189106880 818778384 770138181 936920378 892865715 958665097 316262974 506385828 657172133 875123232 420348232 710529625 500043597 851174229 97560337 845660335 411008666 972473063 385040304 623298793 220326563 975935197 717052192 974921776 274178621 497081766 461683827 730975162 782932300 796475379 62594794 337842372 308442432 578220395 838006211 927822735 868570903 948251380 357248901 547940735 106062140 701275518 777959913 843950761 407315192 425355328 968368426 969104219 575177500 825339277 35680783 107949959 825017820 919413196 970218559 980348677 65407982 454226988 222850319 553333216 97955297 329961264 237582530 819202021 88691170 415281447 913769769 925889920 898069762 951289939 714062687 819335855 432896424 641875688 902904865 905694750 133250436 819328319 266881091 913573305 854571896 870768736 144087697 325300994 840364833 929632254 825820036 996881995 923272522 972117568 416553389 781036271 549638 186188767 967672027 981827756 248202515 386306889 839453003 894973516 824755382 888788487 277568391 504331988 152484572 291812501 746186779 857611554 225063769 804270606 700261222 820244009 672543297 917503132 414368252 861949718 730910997 788376503 989546469 995016903 302818030 578257208 843284665 853150001 641398833 654270457 111965520 572784884 135106680 556639465 593420497 872858433 93063908 784797415 118822249 572063326 241503385 681566705 869138936 900000684 822058043 858423342 517394242 880627428 964176566 972178280 53304872 96344384 126439017 145642955 17132122 693147199 490331151 973915078 932073340 937064042 643226467 801051519 236661595 558666213 327424496 771177137 659330363 956862178 791083484 925933547 530644993 643856342 879742429 988075952 649120608 703106781 385328154 530967380 95817034 164443580 357411030 548226381 620126394 782642119 785407596 849502078 747318319 876055393 506868595 595180854 235029613 669578176 925688270 972683468 160740841 320291951 446557792 930506592 362698916 394796127 974579970 981561974 809325273 945281991 614829911 864983693 888349244 907007058 304754083 534866308 616057022 791385285 779275840 806422549 113718305 232189594 485567763 678360245 799763706 958838782 250349255 849353143 70568596 499918644 481110253 652608850 60414534 713959980 330549195 417926115 120042353 509001144 470578619 967711555 236594361 989302738 219804213 603859223 212050754 988540577 472403175 608917448 798579927 881177838 976739798 992245324 115988248 761825026 310768419 962335004 871045664 964698712 561599510 804384790 431397311 551864239 209691006 578852732 759074568 852498522 710134908 765603899 556125690 731984835 444172466 736225277 846061424 977619688 175551052 652251107 341169241 549490347 906140698 967419620 32714456 414698432 76354595 772956708 421869689 773275792 615313514 838656547 604383268 890247448 360880970 835676318 843713818 902393352 626670370 655791142 976209288 996332243 809497206 889024414 900475459 931621461 496454570 761283816 918109351 960887120 58136619 809708832 524366653 800478092 91675478 160550705 317600063 329788981 165931516 557635358 60386298 540978627 87961040 632496121 908604510 930327938 53272112 430338077 541923688 847061303 758512307 902982599 924956799 935135474 473917451 484681099 95579522 154054688 645589145 999918499 16216277 754122131 481054028 500366551 762895317 849390671 758010485 959778740 410992925 763288420 848203500 960277405 755401043 757871208 534406335 759145421 735439104 894519656 999609408 999853271 276178329 870961978 615473749 755270462 65110747 647048066 903272521 935105621 894420589 966778899 552089775 751212593 940157091 944272509 322797837 564317846 734907812 972383301 773659404 808954530 892949297 906504050 858651439 993211216 776607151 942946978 306891058 480173191 345887437 964686290 657798514 711809313 221926155 875091225 902467177 979912782 15520110 101544893 651645735 935289733 147908084 497689888 926148835 975409806 640568045 646665463 383909821 598874614 295703637 457561230 602049314 754021360 430507050 501394560 618301027 744273524 867824645 970210777 479860609 975898104 69305580 272467895 735906027 853474624 840463676 952773406 669768452 778889851 455933553 978668971 531586047 686341270 414989077 493289570 492526869 813403036 100253029 412495758 813002237 892251373 297493036 453700375 20023463 928065813 53218879 859748777 519829453 815336215 667416340 893031658 387682210 888413232 867375968 976582500 203852201 955820994 351188799 818784463 253515759 509681443 798520802 870532421 84909727 694680778 653930160 687788104 846723374 896480531 120689295 462706425 369441162 791527765 48464704 368412461 373881416 598908351 952473397 959714889 493913380 935840491 627073126 956991008 523401654 939759099 974714264 992001959 390464335 504844270 69710195 918078548 819194477 887610874 653242330 674070512 813994758 919175926 819819067 990126410 696825010 838655760 537588080 805314695 662485453 945023263 795759481 931556788 15606822 220657304 780448524 890457212 99063564 409627629 28253048 398568184 811206939 977734614 944824066 964009920 106538854 206565467 824327980 897990983 775580507 978004625 217128311 588710548 208818527 771394359 404980604 972818480 958237606 990415052 717100272 751416217 684859468 981237952 653481691 785509385 82813578 457422066 37635801 784208146 786400042 812020946 879521709 966877124 529475762 708148971 568468581 981353929 743441090 763413080 353955039 887091605 446238192 573163383 273073975 675676377 631123895 944709672 338660278 814368293 541668570 840609785 160031774 589505756 445828192 810421420 411873124 605351578 177594880 746236072 35600312 668426073 125833263 864168289 649608249 978938009 630505746 647045146 993294085 997549269 999087815 999910589 631882792 748428128 11117599 34468415 559034396 870735890 251827663 925268795 673805477 974684650 509386866 848082683 80512175 379361666 956413092 984462177 582655193 786490773 89400152 315432083 138416653 264346388 859783220 970151728 594690209 987756692 561128308 671118481 72383214 919256898 185368116 869709051 227544091 315069229 635616576 919389713 236021520 257006035 884651818 977471379 298783681 437233417 277694070 644353353 335857953 945707563 631455406 828864703 923884074 981159954 856875257 988346204 776270408 952097164 613298153 946715852 781024174 979956094 706490438 756559291 229217748 531347518 830019778 996520221 136832819 792635168 892954455 912549373 14034561 690603698 355276872 821969550 226065314 899415274 501167185 654227791 550444438 791075861 476233437 629828774 974103941 997336481 44091340 45086458 428948676 771308645 932628711 950048328 702887870 713723349 269194335 944592714 392158099 684159080 663816459 858646657 329506649 387314098 486651381 622502427 161536850 969272336 903289807 953934286 177480541 285304543 433434322 651505803 137131172 525455579 305669033 308548571 946892094 947051163 389615615 800227456 177272179 729688174 27602428 754784703 36412296 523702849 888911274 931405678 986599960 995381807 957724892 967049615 749164857 856959022 380534565 695984265 940659597 969957945 562400463 769138428 953874413 977470083 567113612 910074175 406665561 543475758 605611387 897570468 235359811 797697952 574444076 591393280 791520912 986467021 925348172 988839769 226370777 906927213 498808044 590914645 426062173 850920111 889597615 916973415 140623543 430466890 839729564 884573139 30894189 750331043 755393260 875668902 981829665 997363673 832685547 848137762 966091881 988231129 252778040 500474327 516714527 922192219 965643668 987794236 698150208 758337182 501437113 697335396 339940390 378920175 207012296 265148394 48949521 554452181 767112384 871121221 320510427 720423728 719847781 741724416 535794417 544380057 357081779 995985471 301873212 773483009 672790400 674423940 17661035 837987698 14890242 639334261 195266825 914691663 611429981 943469123 665555472 751551713 519437104 927418288 799722113 898679573 106227405 167025128 978174903 981184910 482071490 788560303 702897681 748448408 367884603 735567286 690221745 799642532 796584570 875057297 48176444 703906292 351968240 559134183 531335377 630661180 576050049 756697071 667573520 918897477 378517303 386651674 388190943 524200622 416646413 438535137 604862894 636558993 831241178 887806088 197960838 385353924 543236567 685268916 153997070 756821382 190457905 541206751 818959844 842563119 516718062 993171287 486044681 947524177 503244585 631180563 409718105 566946980 313521566 420373077 366770454 557684304 281545353 847676897 183082348 690872198 70789498 920872882 732655411 906522100 74312938 319279380 794389571 977156517 801819686 946424506 774724196 824637783 499864482 502590511 936544776 958705190 437409862 719905113 116196195 408868167 273844181 612034723 243783988 457042165 541862736 947792956 352560930 668568130 592676425 801103005 95929262 107768573 303789548 956735559 999034059 999740506 865413562 958802695 129397553 246542603 370322865 803865302 59248683 267827011 184480281 295983482 2700914 684429958 280567148 977026297 54701627 399617045 997329708 997645367 469828007 828202596 177396057 349579712 14966479 37906528 38206993 737730660 666753093 695859215 904629564 966657839 270241225 947848636 202191097 776630341 662527949 935333957 292824935 404164630 482295608 844271835 397084707 533806979 526254366 799904907 970879422 974040037 587076357 965156375 961623569 979958577 181252023 273380456 383529251 887933112 662852232 879087362 889265740 896606818 336348573 853644419 853040490 957478855 622555220 809759797 805262502 952885172 424731330 980469246 245315577 781785949 816519155 988504638 223791463 320729769 75126310 95042176 744143224 877342637 401752625 530693953 240797973 822279033 186383926 611442026 507748279 515698840 259360574 786000928 323470483 654540058 671653954 989188839 282569072 759706982 23144081 436881176 794588197 964711608 495366391 969373895 432732992 690353557 697161759 866555924 297735411 697957660 633335705 830444651 463614035 791688899 973251003 987413668 899927935 928458110 578226752 623203915 362684197 937071957 8304739 645497633 450726159 786675154 606759642 749709157 545157363 671194812 642706400 783660056 735392543 870277807 141387541 507163402 945667049 985142778 634960259 689991948 607432729 706789360 57911225 378879982 843992481 963174304 871535857 934308431 904984475 933065623 537064291 938410548 871833292 918308444 26024085 834719983 841880476 926627870 760885527 900140263 674180602 823694099 584963486 757472780 637263305 995968023 915720656 933658274 902640340 999175461 49551227 763707890 344473860 627372507 306463688 989327469 965553469 977025904 177865798 334269552 49935281 235627331 600960538 923430718 281250248 804489722 717159799 909834999 334741331 822739350 386411782 956672075 831281215 844883336 812482958 843742812 395573384 565022127 265979096 930086190 212521172 605562127 513857619 675339202 981726226 997500590 561898581 882811578 423137809 538857632 588318356 952957579 588580552 992753143 650660493 856253694 955619474 984165694 709806123 843767605 810624896 972201385 981662396 986299767 703174633 984844869 132532230 150859083 895559382 927707722 717110134 779375546 185363449 714973352 612732216 974143160 303204941 863202873 720200837 892025290 614419431 809382578 921702484 989357900 862363253 893279298 294249145 913218615 786009019 832014329 327374328 809303199 662557606 744875455 371068574 563189068 157706093 494146188 933225013 951733560 894909418 983774792 32304749 867833896 817288718 920804550 699274664 808653156 394118331 606840613 291333843 874955562 763873140 861428363 807579206 947849220 389791715 397874495 341158031 843139863 647658827 766479784 744786869 907801656 335948715 514597282 449545070 783367218 103049265 599188567 394866220 410356738 701393334 811785425 885370652 890620901 568474083 885332499 23990620 886364105 251136330 452920966 208146942 858376300 522700294 751808737 899610926 905870998 240010766 584577487 340963782 439580598 89881451 709101715 629995171 658888720 127167319 312755930 357675608 716899211 880809844 920967512 413079878 799311659 682296827 692050490 137677999 272775511 305303004 523183376 900213468 970055002 434328088 911097619 318553998 684901368 171209019 216670866 408552515 811853640 717347907 739891952 65993455 769176256 912557879 930534668 919761228 936225743 881658352 911100390 713987892 760928763 207361563 758639906 277088533 542259560 628245169 932711958 559748008 777425799 178555727 633999912 381562050 818420048 946251965 966608386 621382799 662677494 707390078 732447917 201324981 390699857 306754622 875669998 908104132 927342759 304762912 426298184 401877630 995019425 961823338 978331270 532992260 742086092 27849124 977289555 905710904 919355547 735099761 964404579 771389403 966171698 44613100 436267122 221164011 369517105 311292016 952447364 828311843 872041282 12820421 35509075 866017160 926456159 612567789 749260876 671172650 873891438 656391248 840640077 186434939 256546929 818579050 925307667 912875004 995982765 547504435 767385323 650631447 889382943 970431776 978340080 1356412 313729250 3053418 889251150 328842587 721065212 593114942 805537343 58775841 453177206 297305123 795728973 694299999 993695984 280874088 647717464 270775088 332802338 119238046 253047510 47176859 870840441 971762918 998311068 113222751 863813911 22080029 706733752 652792717 781377643 696688460 829439952 626149966 689993902 368456712 693177054 407401149 425018770 641869154 700735159 496341769 821164872 774330603 902470102 947320500 970961698 118800699 590364209 615549468 920739857 69411337 482660842 167019457 420770956 652344136 795883197 810478329 876337615 385364198 769014402 237749323 487404688 208948084 294717043 956857093 970132791 786122218 831693547 81939387 367427028 150499719 523025610 972177968 991633341 922700338 980246999 465558163 864167793 530260994 634662426 85082270 283768288 252650905 340066759 839465435 864422294 537170639 891066435 847890828 900822971 296166571 728282880 84881325 853394508 651724629 808646037 462444681 979966574 131300265 820408856 278399613 806856151 233399460 464102555 982027416 983399400 673896809 787190621 925812966 952836213 423437370 478638435 234217811 791727663 68977099 607470914 646063380 665537996 169216735 940916918 975337179 981700072 33116415 801788211 898675198 991996366 867362669 879472525 380893145 986244656 402700415 685056314 517131689 809104319 471721696 978185066 213622075 447660328 91743132 157902524 168124492 243470574 745027563 991367706 501651064 527791387 928038379 991385448 620428006 880952882 435049282 694088765 411967904 610054884 940124957 944461305 940794463 995917210 996985122 999597628 586769363 935732865 8536259 319988715 825415615 931899139 239984799 734026269 379215583 704203401 258482676 588838223 346577167 752522811 533296937 716545924 821844409 822720333 612383221 693491507 162735304 690729882 254998304 462936704 192628569 244260165 472507866 581867815 80140830 203907673 429177894 979720842 844210514 936951176 251300738 898964371 629328665 656319841 572158798 716389350 129134089 190699927 422441299 874992387 937515865 958855876 406494052 755870218 423408516 785604396 757692457 860423732 663399782 706619314 977923240 990581906 37225959 833328181 760397823 946387486 975817702 984879247 90347560 469531855 95461280 254194113 750114783 909625817 411836372 876422305 173245865 919531571 130967485 519855911 868858504 959980126 350309958 420693920 376912595 601508027 947343985 957260325 780718426 935824529 914950940 958806532 300385681 391678453 493345163 514673052 835768434 998707524 864272211 968620625 608662277 749787672 374284390 899132804 732720877 885900752 852452285 945803326 809406410 990109414 930762104 959089420 6024773 388777965 704026909 729288768 848487532 895294041 203751849 981498957 26088493 770940076 739423956 813025821 329479746 938005300 881584637 981812662 64971947 94924806 779328420 935876306 475155314 922046111 470748025 760247351 465783580 648364595 386680603 556799127 763653545 824311061 579121270 580010887 75617537 679026511 458664452 686187273 764923891 880781315 816585769 826886743 299976430 637133942 295662668 649451259 709088289 860207461 30919842 571272793 757191013 836707269 102879681 457529700 886077069 998530646 181423204 285205655 728821121 902970054 389070133 669331559 508932184 569523171 66206093 833210067 31476439 881409759 663292831 783757759 320208285 638941990 234881532 336423702 243977559 980436977 427207289 605528414 992883514 996988053 331552286 952420504 905871498 972643071 332763403 755572788 186309061 805420054 49803942 249191557 559076451 925719557 177162838 372574509 639671566 790708338 322647767 519428372 715023548 770125152 596867377 736250303 811010716 972261534 380079841 436516659 852536670 988946092 845701098 875231150 725457905 900901476 366973129 836466643 404126162 773763228 905462781 929201498 903824826 991219162 760484852 772559072 795340615 935415640 739924239 883380538 776271394 913219779 729283142 805975092 617326828 758114188 127221921 300506253 619121348 864659985 71590705 377483525 709494592 838767248 650766417 685895944 870146853 941336132 957030406 993916242 24254915 894099141 449997828 777527288 416219948 424502659 293075296 308617624 172404021 567627750 714212109 745075975 478485275 629406401 517865875 641316151 686892503 792524699 829572460 905937372 705775781 932154508 712244831 768316909 690996654 725189422 933053372 955171133 196942527 542694883 821125105 983859648 755026026 890688897 628504833 677493602 249245576 315419274 521324530 566461291 888812448 895955301 540720225 756595082 19189805 443810826 133626454 401559195 26359299 43672667 137287306 564705025 466037820 973540013 740918611 800878648 380003726 422610304 382884036 796833086 187945837 820543813 791516416 983277295 587256099 759308432 294063619 600097736 997046713 998909291 376289901 378719617 573184745 621600729 654785918 817334868 140171627 793605618 778206368 848851003 145822751 822175253 149235161 383874625 413305694 974713975 389214483 825962626 782810162 977535217 674764626 901643873 692034776 973701643 431252178 848645996 376547078 817547000 132686589 553517179 410263102 669033420 945181348 990045755 64902685 562695124 624189589 771454678 672943805 730836040 626603752 770211839 609774135 649230097 829163445 995496727 865355093 947267287 614945377 800559747 380088105 938376103 385211272 558627004 958468625 985196513 234719649 250807888 286934965 301879103 825131038 929406919 55385084 466366783 446239430 873972756 821443991 979039856 483218558 711241719 456995800 861897843 868963371 992321579 577731667 826755080 549392291 832722645 701579967 787898629 642689699 754375793 245451695 799340412 968109875 993863135 615485255 641737414 930107735 993259216 59838743 862459494 104692435 180927162 213900327 389359308 277442646 458095472 639070949 970233201 693887487 847243423 257458499 801828731 950480599 961199401 760073939 817176974 667069262 873158865 988058312 996953115 169227351 498277854 443035596 721109070 520633536 539618047 668655575 899029417 42011159 384006759 115938201 248052956 274136834 932728224 652241647 855201898 718649701 903946991 442243899 842970928 764933267 925513887 182059914 788279427 324092447 791120376 696054663 707036892 859151202 913133340 123032187 519403682 933571710 986240754 650707369 835057127 175104763 334603297 724686460 790316911 446588843 490117602 221848897 506204815 274385576 381747430 830665721 968075577 691386901 881063250 35232993 183845351 194675563 396577660 80059950 832997134 687744117 872637596 386925081 886955818 571754003 577409236 607422958 850640870 612332401 955043498 768506251 972968973 399039044 735611778 228066000 257218522 93477307 398677693 357034946 506951100 405664351 712695935 706093084 846371878 465639046 615464512 93286026 856406260 466372515 965742190 529905309 924277628 416878832 565437513 226561392 420094318 186811700 826575568 499700804 540963143 514969485 935987557 592742380 722666519 988707274 992463094 738802474 924914253 906351448 915839675 256506134 880592469 970576687 993934443 318279393 990791302 911842855 935809467 28259313 986807991 137527499 647985446 630030422 720975449 795285298 987611419 258877349 600217063 72188770 895698500 226662545 585119844 289378575 306548101 964087100 988618068 585657056 779703936 683700688 945303744 26959188 95956612 340743187 741073917 450969156 856031299 802950882 830290172 434291760 679484492 286275969 944161874 986060800 999703375 98592957 237938425 181170052 943582494 275743072 608349992 713334679 761639713 346946987 629812410 259183875 542576900 661233730 740753782 668435602 891089902 69154516 888653896 991620693 999544016 659570105 918488121 37009569 149965860 88773872 358921905 325546776 976838133 945119724 983907097 954339289 962396439 396607049 543907277 928083358 935609687 9448483 553936590 341455710 762847057 21728221 899308475 321619533 908624805 767857902 940667991 879218136 912290065 754906177 937423612 186371554 587830163 29201132 632351702 318814417 459517710 227358797 371783101 233843074 935210434 62752194 236096042 685208216 871816735 474340770 816212641 664704890 945151535 231359151 740035777 349037136 993271262 961978130 998987969 108269336 137230153 857628641 910383788 727040409 728851142 875147090 922842615 880860758 988496892 874515677 992843867 503147349 836879489 733954646 736659992 613033342 946110173 778431789 889044926 142339107 369447501 423318057 802605947 56540446 869179144 299932699 406007763 938148869 985628733 915227761 936688627 87595823 523241204 901778136 960192863 465549344 738485074 461937208 566741798 86837063 636178865 175024241 775119551 15161301 839251543 16367899 173956793 104544990 236159581 820354226 934729140 886233536 971666538 345903331 348515202 192913689 567241025 431299206 515771656 230965818 986193749 909118636 978308366 891512735 986742111 535595938 997904810 348854973 440724524 124686844 239725560 52106955 307935194 12267630 985874928 816944492 817316544 249982708 590275564 509557378 789129429 645075013 953773350 893708649 976680756 841236875 885343477 459418517 597973481 565623509 697406980 233542605 530820062 377504527 867196867 56657163 545415584 349998816 954726865 724113424 878733234 700896567 836949139 875122136 980017474 362283222 976876890 831871031 843377561 785001318 810560687 328622910 638637642 376972964 476437478 577147815 792973462 723978913 844953381 297224074 721761884 137576532 576166957 128263444 676210167 995213627 997600707 43069724 660185133 887559598 939948995 993070901 997995618 147185328 606883058 742421182 945242510 729707931 845008938 862338937 966571539 486593293 657783108 543480221 983781074 693561241 722780467 286787972 789609285 581457453 738707506 439827107 968435464 970876922 973674738 789516142 804031244 306610015 656632033 24565574 308071013 678628331 879186037 937194593 982355245 85863511 316931700 660850286 692416491 804316612 807844742 527014344 644819348 337312364 947014644 35219622 804373320 350789666 962439240 806317221 944219772 719260245 989615619 906948778 997789154 981053374 996029745 468731342 858309625 41461175 809829855 791920536 937829031 496451860 870863645 837724915 866773646 282922224 287117474 42767184 402945284 765423932 954424160 284333609 957636269 169734091 414395989 630634819 813494176 251222700 997793371 982032637 985114184 302233685 664307757 718299093 851115457 204159609 540838040 664519516 980549546 277432922 814640917 205213141 694498894 73902665 184342018 636922494 760571284 566654406 596157888 834336442 884611777 745626438 785071386 659965806 667881701 559831260 739655914 565511350 927382960 583567244 713780076 653295363 937362939 804102205 860031904 781751676 931043281 340071909 549708801 450256950 811863240 20912366 281229985 931270977 997863737 424799348 516518170 115319504 628176014 32980734 340943726 723038458 892573646 708299873 811174407 926148392 975599628 738342268 947987326 676005873 912058430 149968506 892323258 71591108 838672043 162205630 645752646 445739376 478842826 127699803 542644666 157189894 753979036 202426339 318864553 596838647 609763377 336623260 745761678 863027343 890747395 980846897 992065177 622167931 634923973 53853020 834447867 4138613 605690160 282233938 768093599 183789818 293781414 106673199 938025779 366693778 501138873 473012441 561707021 229876087 637536852 499115594 828933814 896455891 985540569 483775719 576523892 483762781 882723703 719735119 901698406 7049510 205589622 471802549 878128174 877482260 917811649 104135669 763879284 114640668 879230779 730292564 879560698 542733450 626412370 284751116 445899262 83028155 211434221 784247430 997730910 719640670 763261109 689025853 838914153 377907354 821640549 729956551 954026795 841298335 980543159 758436206 932288064 901522358 966744281 33208201 679579919 380167501 809520961 921178653 998865664 5105531 74014835 486196632 983394401 20241566 449052061 143301272 480265236 3561342 61978691 66741429 503453724 161945547 935625648 213106619 782307937 136259493 539390539 60818399 206147255 207494641 901085100 228822427 255016597 864011676 957508479 66785782 556130534 118874805 919614130 267377956 906168634 305453569 540219335 540817657 705410878 147533147 892848930 789128221 936985846 579962632 597994111 678754136 950622893 631289181 666165300 803094588 885285710 595965065 921067817 884207216 998991433 191676504 536214446 647278011 725432350 696857748 931341329 895744110 903280701 445770771 613384735 941046380 964684586 819686026 838371345 474454520 813195274 741322580 758885285 753407837 759471387 649623633 668441165 790036594 936805141 547389205 710947391 222985501 568564616 788810178 843723297 752327709 868951134 860205579 903791593 823338143 897926916 499265092 536143976 371930004 859077852 859874942 916654367 375879314 570105096 288814860 621117121 590667031 990628864 910735170 991667673 518807386 872864871 301578746 702302317 347632182 593780852 476027982 736241569 293932682 548040258 398179775 633331959 223003873 552124387 352757883 795954003 49473550 605231519 554037693 904688093 912073339 932850580 118012719 456789474 911337722 927629368 602222382 623861192 426185947 810361219 45606713 536155435 150527784 851795666 686795396 812700222 419385268 557227028 985572778 990202858 298836316 536178879 99733629 109342798 762839488 850809106 558271566 818194824 453556350 972580235 348071287 429443562 359986030 822544866 638251443 803470399 199701550 970684179 351426890 894819879 655195142 904508787 774346691 905040582 678539960 969490031 334788896 429026057 973395215 985904479 74995468 299943247 129375554 848498564 940997595 964820856 51125799 589620057 537957802 895281243 741500891 980633366 670613745 924801700 511937296 850370834 87906055 172330672 246316487 685327671 646601146 725003992 335863679 806247778 170060803 274226630 247192149 906794863 364930760 540481353 476135887 787503044 841810759 881849000 703892819 856902709 639536475 752777933 361751059 408722384 423775190 509058869 873694525 891016960 420750873 675832558 810401027 936034585 139859262 218899471 899791931 952659774 684109331 852486496 896254204 928930401 378292658 891073403 775241874 960042276 685770077 979592128 883037540 910160485 735159951 985173110 577945119 613961149 101651184 142147905 247247365 263991185 504331198 526860194 915698732 962380333 610675451 920366476 74546360 636283657 237992054 896806328 589172970 823669992 189683141 263319930 21951703 892966753 389074303 639162420 940281039 993453238 333349884 843986012 274139440 567034807 482843222 548399397 544198290 864514233 893300787 915140837 860682122 892281519 182853527 686156141 578247633 859180044 66348579 616782515 482823247 731241861 516661787 659094909 792818994 800389679 939336773 997396544 405846730 862035170 493270191 584472736 804948669 906560065 638516720 998962918 135431612 989560038 880658821 983880236 592225485 826347955 960929176 986710764 446108387 504066071 261853339 290908505 968614431 993294965 548330933 598625749 697066566 820870142 659664694 749624026 69520741 830092995 13183172 811367737 300293148 544900867 849059173 858918088 715552678 760071323 922758115 937422618 896284829 973715029 772999177 998261759 543894497 850010827 91501507 141101758 239685681 243612391 235158351 315910071 102076550 265302869 281798193 892564166 676699431 748056499 853931378 959608212 362999308 558086974 663290770 716487196 600108297 605797395 134382307 836551508 637165097 960767084 910756922 930492385 3684239 729571706 7564145 700853516 987635173 997251004 695796187 833777284 882590760 919321230 952945248 982521574 571929339 805133876 654005854 756452180 465664185 748058744 716507615 828341975 668463161 753056496 860043424 959431959 453161997 938090700 545843185 899210032 690372566 903752769 391514846 807310324 835772752 865290375 440373768 449024211 313279033 655113772 653824938 868019466 657306230 740177304 164532530 539001644 300088191 679804427 435263501 525068260 907507250 955424314 549233116 691732299 266769023 565431696 769608593 829238340 819381533 831894350 897878856 975358309 154616674 311601440 704011513 795874262 934516457 987424962 567453714 701254199 428210849 543501406 274770143 720301167 192210347 507163005 353406031 423721299 182841610 930936246 638129552 884829600 755676148 952863320 699611685 951451947 439347723 911573305 569979306 881772021 755810832 839714963 701309733 712289907 736499443 743276222 510461891 934515355 460789495 533738932 338401089 344525971 959265454 999636651 185224063 930531265 392779154 702646015 692863358 840358796 734610006 935809159 245087842 487930390 607849469 838639802 558476353 832512741 746042770 978284649 916800444 981664903 410229000 856858851 359811367 892635119 293133800 981359086 457297613 903145106 760934896 861656216 307052030 553621884 298018547 771192698 335962927 454079526 722106158 853084030 561209138 669103751 245184966 550361187 87962796 196166705 539760796 757785592 39630507 561337951 252763294 614007619 811545154 817110657 7286030 959258670 637175750 649338627 476173184 655570839 594121563 880090868 498441268 734219690 582907847 647723316 672516407 708671087 623263428 901174678 652358613 838528765 231043549 255864807 238755174 598908444 107364271 346626557 917277750 968223256 705181745 939435079 986564544 999332200 276774868 975632441 764807010 871219495 53259496 147123110 746076618 787964847 957594437 980077132 642919750 751674456 260747188 576927228 563395550 803788292 303308467 755119814 982658699 987879704 591018803 609329272 281401848 344061677 297485887 931491046 212431889 998402208 564989372 817224033 690842805 850888334 821175966 971326943 715258427 732238598 633676939 730433060 531107482 904686743 358070923 389321340 581596289 650185346 563096012 773032572 648091102 771831109 719584844 964697586 915652257 982102936 159043544 371284583 366553094 806323068 553234440 929043136 914524232 927099593 925326935 960940058 744097389 985065201 252390839 676999871 763665088 975236499 720378745 978835929 951469151 994248812 154421580 451024309 845860775 948449363 230951641 761799716 387648715 847806650 14445803 642614283 525432581 989661914 164420277 883594640 558776689 911090429 553132415 769267454 272803729 287164223 936998006 999953137 983995625 997210719 656761108 734067626 444426379 513462160 524449877 557941574 973332142 982524962 666533110 774381812 905449681 935302423 720404717 800159452 466855889 839974566 949377250 977200945 699469541 807483802 169212492 388546659 323559449 787457487 320243169 478449216 85591304 618353114 277331681 828646404 580773511 705539561 834319255 944843649 130330731 769573688 539386066 617036482 793966901 855864431 863695365 984737735 474203200 976327035 187400946 233103359 117401842 791268270 707698779 726211710 47881600 233420549 121014402 314311388 412935278 922567175 157563384 374780718 448412417 600037231 205791239 962590416 237215702 748047307 314240366 562148896 743518488 767078726 709717771 926088935 23220394 180959772 973794114 978492817 949794100 991386139 513888567 725410961 949597830 972769622 538377370 870287359 117569720 835095310 546729272 726605536 138108327 990732328 935657872 987776268 634676328 880030935 775495990 838812961 135845088 240058078 769001803 776923420 929287999 981763341 349077810 935256994 717341455 859456048 779522581 802302796 788039235 953346478 174323762 865737518 401434141 659289023 770884775 880675184 207025154 241587586 356503355 935208262 418273843 879623273 923812514 946276810 766880501 985074566 171105936 548378378 627925371 929918092 779089863 949924853 123116100 280956130 897043088 963244740 706192443 907136821 513771040 778024727 404397130 690454386 538985053 959291855 155292180 431271645 370062842 691388904 695940466 891576385 222316810 490174554 803483356 823653770 486568128 577661378 522170920 565322104 733431328 858664361 712504423 840665877 170772445 720117996 380695832 451515113 412129136 895261766 55631896 973372974 701025814 925942931 14571575 964068209 635123642 779340130 378036270 821703576 188413022 641758176 166351939 827383306 645900185 802232811 454804954 677292065 929912936 951856739 148137809 244793103 547567799 622194917 792741198 853768899 35257867 226608869 411539119 551110012 632997996 958513001 34547232 260046057 846352540 915808315 400167240 615965488 877368868 920827914 347882853 929697728 939779034 949075255 427462796 497987270 349743009 816839394 124089273 198077016 148892860 606681088 604551013 999146910 709202713 927191857 140411255 656425567 945227467 948932349 796538555 912535940 962922998 969234075 259250556 600363495 598713656 674562471 129925315 408422190 671287638 787288871 19881040 462350522 313959556 513753990 885409436 986372144 501151860 685166602 837420235 963292940 768228311 932125424 560653044 656854994 67755508 413749508 666613965 703509590 234323154 780309505 718606267 941267291 484563130 860246013 82844603 851354938 60531781 178127078 616157577 797805769 54323223 623037873 33816253 539923695 100903868 800003586 290829682 661003091 187514147 641638229 740045175 990577799 70263910 905109457 236354580 925881579 784918674 893951918 946918161 988013284 722085888 799251107 257433472 737572728 398612493 403510962 255811557 276829999 608920217 991490784 49983580 320337933 463122539 796356944 628953397 648068974 240856621 398805977 878845420 898391599 690813676 748632951 500554822 698680139 502632051 820098078 814696999 976249433 545077440 678001653 535607019 719595944 608671209 656181790 83327104 806614970 371984933 844220039 971440523 998101116 484567945 915430503 383309572 396335133 540054205 898519179 412159076 747134732 432802202 760846226 700967713 804043680 528307287 913045790 11732801 269573807 184725435 845218556 711005673 905055929 585152503 862073724 398147723 918736130 222912121 612156945 523974386 798335034 72482285 120101983 162803073 587802390 928340853 960746639 393051966 870809370 977673840 996985103 831322651 856709774 130107 741259021 667926594 686774694 881067046 967556642 798098103 859353911 958131008 961160122 391081173 741053455 524627913 964008363 392895527 561901220 911727715 916809297 896561082 935174186 957519861 960111929 908374951 961765655 401288061 712115292 956221692 976825583 180036168 197325308 616268204 667079589 562362463 950679153 66112457 237684653 811742786 926668318 322096365 955243767 503212509 598479516 35326049 276942669 591909144 962158282 26206286 998940466 982765485 984049913 906871746 958566005 97039397 982504629 111020405 927669829 831581060 954974078 590941459 929628872 962482631 973761902 333908016 747832106 151647153 204304438 233797903 811518366 611643438 788806433 916202849 992284831 493523565 670457539 129417962 277071131 921488629 946095081 875131485 977595942 207142975 605258993 323128185 393658614 246215874 747174700 380931636 456966781 342473837 356548995 477087209 596382178 998362171 999276906 655442147 655943338 187672819 261193571 70929831 680730353 600915005 846628893 200097248 894858253 425449978 669616908 405450244 432758668 982817484 984817425 516200194 925275406 3487866 864800935 303412943 819943795 578330010 641788305 15738585 778209258 884631153 948008231 112635760 650171184 426820528 512380419 371250098 826220628 171487459 482555897 201129098 703680622 548175712 646881971 596975982 684330120 740341110 767168206 707387541 833747089 181731908 442385291 946702520 956253384 885509665 886432499 418167336 976524168 73549658 301776104 209952165 713627979 634143942 753692065 488630082 720200898 802720078 893330854 351389533 604883584 428458079 979145665 880891867 890880877 874739747 996455264 572324761 680873532 143858585 621143934 839021910 902902286 878305360 915727209 56306911 877300821 3837373 715129678 462296953 777524281 629422445 704821066 915257898 961957775 863595974 907939593 790538579 913714964 405549407 774624490 925395966 929536365 236975378 804403044 195820204 376880021 115338843 992917555 649324889 664506223 326358688 592354721 356867701 631732677 198306292 444888965 229754096 695730813 956239712 962265720 559672906 757028189 169650386 657890604 326523794 574652487 501425906 807008470 966699436 988924715 440798096 901401599 135105746 472697058 874148113 875819858 853830755 970358378 670744225 879024392 224847737 709857765 221622346 519324136 203128520 801301109 233437835 414817231 676422038 913948078 46956974 756135528 524742989 657763109 181661078 284080016 763756989 903493119 107051206 918876504 341937770 792895867 86393845 710354596 830662080 969177103 157273831 849336215 401445375 893767373 202996813 240486176 564735365 919348217 555439409 861814727 136513048 764923605 390247014 862276294 134127757 371096024 466346898 997682491 109689791 473440957 230236656 779468026 613876858 877197125 414696832 513265006 58777784 335825550 574824822 951302617 938800784 969102485 118060648 177840747 8039210 373426625 225894624 704095574 104737987 470897884 462605795 533355586 488591019 843277802 610311631 947636245 247594474 395441278 537922008 805413585 620346533 680618578 936609375 959494910 975383132 987119997 342174640 929350359 481909735 792522112 757018719 788319985 464318457 494117712 926749554 928471808 513843775 931815204 690861465 842967641 883871213 942553899 947919741 988531478 807992991 982800936 678730238 887320483 304601839 861177237 932850636 941241723 466410684 877831016 632211824 699060025 67063606 501654967 714293319 822200805 717954255 959404972 544523909 891981689 191891305 652982873 374684423 733558917 471272925 548947780 506767861 844011482 681441185 975539716 932617969 948852164 901420978 948450209 387187639 799483320 752878545 997271913 115000899 171853066 689613527 800950802 501357136 971686624 958866714 988784287 153118467 589351796 31330864 816175771 208908700 737739142 428410122 584101571 737828543 908401815 35523808 538890462 617220761 900438135 710387170 907171825 473227456 638675178 28325593 270809610 943760583 970085703 111716008 775291151 568959963 906213300 294653029 974351058 431880766 666882907 253100008 716721532 545216262 974614252 798586119 921018114 776287759 822945932 801139242 865442132 606250168 895559859 834375005 948346564 89470437 582587105 225023819 457280029 479137186 717913736 775656761 929735838 941339064 963042456 110180382 632164802 561798504 582468943 875919699 919298255 962721193 985174040 354405782 429218739 940350853 952703764 465054853 938527420 247970005 581347868 120071790 781858480 142546273 191979674 531642842 833236857 776285568 817047053 377305011 642654662 480869810 879668118 328970891 659669348 297458025 788650835 767426305 995063777 497918212 693889671 259712114 417833441 78557407 240402222 817102285 877525313 30056417 864079948 375856362 666497072 197599488 677004543 619842409 717126705 418141474 679365716 708111015 919706133 137907348 369538620 862185903 920240954 764787864 797734034 755422264 968985102 978152559 995791581 666362636 766251601 284355569 556930089 403667517 907956789 209185958 690049498 143706753 202870557 136652678 351812169 79565003 640854004 658886498 935793937 119228228 197144915 820907266 867622570 748769523 937807910 858098299 911373192 869691307 944103385 713748156 769919428 837044732 847904461 542568325 573609375 762941175 787309342 565896247 655708064 697913674 752479753 604852080 738494674 530750715 564812794 817924181 897122308 872010090 954438121 211018225 524668277 182347989 567564252 114092008 163550483 855834306 947639280 156257325 428512110 867628021 919490619 93527333 454758123 949082795 969524850 589793167 797562487 54690133 343237687 78171102 456837734 210118363 395660817 817730810 985609025 88374376 845201423 302212860 406643855 549300524 967744226 893293112 988432538 758225775 839891109 992756405 996929641 510272788 699890331 498239762 888684029 576638486 721475778 767695766 909282770 316076003 388211372 517157980 946889622 133478369 539735236 207491885 526226715 904306159 957054581 796327835 890935693 276117187 960170358 146267020 616609098 207359972 606327565 238136645 265072078 54016087 699345394 315693831 672634140 822452 137615627 56582990 875005717 27497537 632324112 13048516 251134682 859751822 928827297 505812696 769414794 200001162 272227202 942323361 983059188 927430432 974571411 709995869 715224788 808551170 899266728 221335446 299949505 202506070 467912407 875955740 970595332 390980441 902323665 628624390 966532013 746863780 892680322 139969923 178528900 295252045 642396827 500436372 607476907 131692964 940476960 380205553 955850504 167297682 327070869 927715897 940401425 853179531 921873639 88314812 909628930 204384440 906381473 349469044 644146651 449543620 728811416 422637684 838024543 906830968 982126343 50540658 482542334 339748110 460472613 789883071 802810891 169225572 465067155 886927159 945740883 449675230 659167837 324903226 738473939 321800834 937090091 24025505 431770744 908109945 975362277 852310005 891455197 823240843 937342613 996571031 998314456 88795354 652019929 623224208 939818678 173131157 486787069 663136778 929791065 438576793 935794833 580913152 879923986 72479573 457623524 430452889 476814754 146302065 820784972 517816561 818359531 106187335 616051545 90922317 211475758 420861946 895773962 893011326 926477295 961859511 965722374 404015381 562005638 415984392 712321128 467193880 467929796 1724155 844220925 3129377 193359102 302591153 600639905 265245294 615591757 971617263 999242650 698798477 846860553 948748547 997409731 696379373 871758257 39944110 504133067 574778066 722196856 625964592 885935349 900538446 925715895 123991525 701725056 993573991 995468474 254296285 471523437 549920010 940485799 208294903 712621855 253348124 502757051 695223062 729454175 429135317 772329125 61492667 826543856 615292830 800798845 791262193 922339800 607608823 744153879 135443050 241018339 30442670 666145492 125269133 220613153 64767254 608691604 551142579 576773079 548924263 634020583 304267906 618268546 908988114 924039972 980201325 985666232 544182065 949470075 813853125 863939335 377825611 949286738 454457078 574690338 77682987 816167976 995342597 999152345 394870720 449024909 525374090 964818778 806175729 837814179 905326916 916090820 107425156 749991371 266327706 896623621 613268421 793515461 758737211 981133224 458234618 766184336 601497947 678463259 769048645 874013963 268078867 792198968 856084535 926984227 49978432 731099333 353680595 648870886 98054619 796180419 176240600 321107217 436050678 988079892 124453984 486382581 787545662 937067316 897283097 980873744 983502431 995898367 143061154 887441777 905509690 998560837 587689932 947332278 31532255 661926412 950355566 985589047 767311370 877476104 805072619 999426990 503609232 605349345 457470215 567006820 855603470 907207695 594288260 643133322 792732607 876134901 831753165 858745978 336911581 731524993 751455525 979342076 712275572 743703492 313011779 793861999 260745885 430734295 714142607 801743888 842775590 946456371 150303709 889010764 5288724 61711878 893116913 917598315 889579103 925338459 811503521 957925811 650652200 847019148 742900131 779583150 921182934 998004363 27384712 159536442 162753792 930882039 730682835 898079608 350070883 944885665 705729382 731299163 41372875 354168037 309063230 902981824 332101811 840704130 905245283 943289124 798411385 832177647 343405133 615442506 800234462 936749937 990772134 991580121 651323255 982558229 226621491 465834723 238594736 423111700 488980559 703395152 132383484 662047326 916762145 970095598 192096168 316561389 403075199 438625999 273973996 718105051 753705205 869634991 543159306 992410224 993843339 995667425 590125558 880892523 537522673 793217403 471434676 487704359 802107110 997820814 86231080 319570065 371375117 467335568 83827123 238752974 388500775 454550368 589756994 994091047 333999083 876895600 663591333 736670129 464032541 657936475 25147757 298316675 587917187 852713675 848965745 952655967 546056284 604739585 960586207 992575440 627184584 939034561 946593660 967676777 164530380 333369885 902055822 994982068 269029937 915053884 7135758 213690031 445231159 854120067 619437867 743131744 914534614 994530873 826343291 961208740 824607128 926531416 931314462 967925176 813041186 853222077 976921990 978463944 156761990 731012246 928767774 983489975 104107939 395351257 337452545 989747744 891161967 912577192 809535694 928469336 262444490 929517151 707937377 999933841 304220211 900200582 767025491 989750412 507430053 672048835 425138094 861236490 891147820 937927338 74155764 550529145 427813569 557524232 540921121 553174364 527548618 669919840 948992699 981828110 596235754 913154849 967833794 973451993 820900092 939043395 548664784 803098124 425691014 883037784 661862981 965008741 844861782 978429005 471164224 906649964 127816815 627520716 339762109 602090838 981722573 987750003 582810210 981769606 533541171 587283567 635814348 939518012 804665611 844912992 785397215 988712006 691854186 856028636 971307118 973207406 738165403 921946271 333991857 513419791 351316975 852722650 815507613 830966885 526759828 709369968 238643076 364160760 783549210 806354971 340025527 681719417 266815498 387045086 731925994 842183531 6762432 393075146 883857664 884476052 294246576 676793654 57433904 652475799 941279186 941381631 245415986 451062026 83881263 941653425 869410908 891120403 938770144 994719102 134669130 775773136 555097087 949356078 327621068 789682545 168930906 856651842 818056216 857133165 348505776 925124968 501480095 582898636 818285047 904059147 689989334 892360827 944194884 945071404 559535923 908839987 616707683 763277925 148916901 731090747 194644160 323924255 418128450 454083529 184704477 556431066 691305027 807516723 181309621 471847452 306827950 345038992 39126277 248598545 692058192 975870002 944917620 966922442 523112522 762187767 337082743 769075304 634761175 657399015 168993686 285770238 169285601 678168151 640476095 971141480 7864611 279190875 761856131 993660032 527446181 897910147 980891129 984049327 835610772 862081151 487698709 553487186 756910862 758571150 923047317 927899860 284185682 790584839 827806094 944224465 875129826 987025778 17039985 63480619 103600167 698395314 616173479 898391514 99363842 115890920 191725954 767474900 135318313 694353176 257845747 349524422 222944885 853123677 763118924 832742830 927131382 944913591 234764042 565008077 863917486 983072295 797466856 990380990 467645572 914344085 807536657 909114986 671848324 951118570 927623041 932082298 416541744 648912326 124486735 529078139 334900159 793075082 139131703 674598346 527992224 856843964 523606084 571737168 50424994 715802817 378928158 468983901 224175200 547186676 997390774 999421376 865194903 908970791 793332844 881261267 44330603 77017117 59196255 87186329 915403368 931492881 606801282 680754866 292896323 557579568 919570418 944280567 321799547 755017815 621477798 646330359 60049954 522589395 175633273 515454052 377395301 866334333 592282192 594771057 146181676 263014890 692660973 991284663 74274132 541236925 46008480 156133636 197507413 254953409 652351010 840570404 253445998 733848408 483558675 619888686 945339131 962258835 20854351 399124467 285333605 551925263 289303662 783361521 238808297 549576523 504286721 567367971 615243362 765990697 923398763 991394906 218490704 745286475 680888881 779632783 19209025 963601230 846376608 959702839 563212882 938519153 371525166 539051936 520717111 574739530 48165425 687120559 957834390 965788954 315456969 680245373 113491959 556264034 5366881 729960589 579184225 768466829 430075504 628238384 644475672 827596691 623255912 902089844 942941034 995625698 82773109 471064431 541684056 555912422 764302490 838712613 156229672 378386709 471919863 510705290 596458935 924830033 203705033 757495611 63257378 719840112 374673843 470229840 447415748 856636795 925704256 962860259 573389954 603191194 395576648 682406728 573049686 964529301 176922334 858751821 854477911 873411305 890851357 891280563 445161337 471353106 869279888 942296890 42909280 72692739 218624448 861175092 837065409 883783897 4919037 118449901 120212327 572113944 375246324 501345412 443664868 889982169 333839980 802041576 29026350 36236278 836906586 938867904 210862436 695752587 541176070 897033330 757420878 992844171 350528001 701327973 477725569 793876166 539935656 547778619 178935189 704037502 256173088 415622606 297976535 970610771 878654353 894402519 102585881 902630229 337020993 964852974 445442754 511581813 927900998 987590023 860368505 900572794 256848120 316826873 338848282 776475288 421633392 595151726 491270872 837426993 401567292 709469621 918766365 921117908 694699447 987065619 255697221 321073360 57259594 893695075 725750727 944148995 922889531 987579234 515536832 902259425 768490300 818946060 873747588 993942144 606162604 630984708 688982937 989783665 901595632 911248990 265662425 799447454 221810634 379287721 549160185 610205714 176067527 199543967 826955547 994221045 297117825 988909028 555829537 919125824 883090251 979020409 678002466 890333021 329740944 922980815 894939880 932134979 516681400 969357207 572964998 674191298 315082460 590182000 942997888 955280615 201188585 524029056 820841504 983131482 681194534 943239711 144832792 680886880 279525604 650773699 496188539 763252847 125951431 288234213 358656927 410327900 817930889 908328330 331979444 600038689 49689766 525892703 662431568 826872454 932817013 980173972 547103100 839249657 45324869 454884113 988478622 992482047 250505734 996502201 40055594 772637692 331547772 393655399 930475418 959836979 777368173 997598888 234757741 624195042 441825346 549812323 803248010 977101586 827942251 856061525 90054154 718306625 246232530 973561704 59093056 270693950 20102463 784176933 373292769 576271221 212401161 575634753 905667031 933875572 923323085 976276233 407494217 742297636 64458452 220596720 783509157 930926329 72033289 240752267 174080947 653237003 604676367 633654626 724803349 818784083 149612851 815778910 785916238 870783718 749152540 990140925 314681108 865962721 793175746 800205637 904605840 987384222 85215287 615582214 819880842 960413654 531298031 744409815 889306538 963086502 538752684 723847527 37781662 287867334 516248342 844317993 541206177 623578280 706590139 775176460 429453101 545073038 384204557 938416626 737750247 838218719 606515020 820333020 632714617 867572077 916963302 968470816 258907139 453036072 937326023 938603830 687625733 904201871 790354776 939898085 766346236 905225984 368075681 880591597 379428171 572763234 901992432 956264016 180363899 401243556 885854228 935619437 329178781 712832919 853379546 936910987 618389947 946926207 206418352 778491626 65644160 189650474 713599015 927443381 902132408 929570424 947802362 967061000 778268857 976349440 699139011 733004076 778963579 886597233 969144322 972246509 678165183 720438356 848326732 925530100 410587464 502457279 673229701 705613809 681309022 973904046 673151589 726635418 86454124 266298208 337695056 552436288 412197528 535820978 799607351 902805023 590440103 700677353 340934428 697448235 284672324 579674384 57644082 217146615 833766516 922263333 611240022 896721960 837327060 860339695 891535052 955381642 90879795 478810769 414755515 987649819 114697862 390266965 774397153 997188606 630646204 772556580 671808761 713112154 753647706 927611296 28224255 733621586 268970492 798861138 685488653 804958685 772877264 886452672 192935446 543250580 73579583 386159504 795144207 998893701 948927819 952896325 342402662 867753457 526588837 690086560 575998370 911137229 896978730 965752102 749383000 802414200 417442270 844540749 938647228 984780583 734639013 887704166 373772067 902790276 832884253 908218234 402879529 789507958 860149858 962386786 879392085 907181035 53760177 577808597 371585934 560396757 704506382 884357592 423727515 638507618 759174624 955428494 4094090 762821688 481193588 652167222 186515091 468843489 801713499 990002698 757228862 970480700 810381698 833720692 809821806 995399896 479111368 896676622 266989359 428191241 449439828 877445751 629599329 650224995 967148733 972090178 522040255 756256055 535007032 959068223 710504515 855875581 548012782 714868829 928004332 934189044 574990278 766531978 595816762 760559700 42585637 224514224 228723318 320877639 60463053 610647006 617477141 860371274 484503147 903013695 954409064 963407243 986996930 992377032 563699959 826741964 463443489 761452031 484068472 971219598 125823913 152167633 266722597 425415363 351780981 927842961 141790554 697287801 526123843 706906886 173736546 353281543 61010632 101302440 208682858 458041811 532789414 547805160 392752647 575065779 817400945 910518743 293585351 377800270 134157657 701813099 136660024 290045436 834823417 926023609 17571335 710441890 157080089 835908209 443416202 688613644 246894511 600265365 403836307 878729674 958346466 962809749 113637631 408376331 576551366 925708938 664906630 948523094 836471946 871252893 523039164 553790543 244704909 996771770 179781825 466842711 244589037 256673480 227607311 430917870 475848658 747962582 519650844 767772056 891058976 987423168 917067263 985612115 816583450 991339061 777985843 917449587 329208843 525335627 293535023 866806834 271056726 556003377 219042199 586673050 884100865 912341982 474213117 529955034 969949835 995116287 630084560 649896103 410405623 889349847 703815081 760229241 169060783 923596896 309389498 782824921 700369902 812322646 902674012 935590612 299969489 360510366 629014465 912484196 459244361 942817952 96207710 775623762 730672566 834357899 246072193 752658039 873840242 972934238 168594885 667797132 486270914 590705428 707805676 775819644 444288425 843141096 993688664 998552825 850512765 936978265 598017139 798546710 488127076 966436892 619755952 944763606 568562130 931566348 955232316 960793470 715203434 849253256 933378659 948411785 736170023 894292431 592314451 626017628 299790741 779957759 250316977 628136859 500995952 527347367 513615933 707337366 604859554 844049605 300613781 507651817 699018750 765551574 775781268 992634605 905286417 910242564 924783881 929817975 859553871 889890531 728369915 934019602 155208413 837879159 505982394 594691045 653804053 730480982 687739814 923483885 45909288 745551812 394008831 909517901 134794653 783204895 483062394 670243420 445855268 759848688 635485931 641997827 436552236 769362718 434466608 513629243 944341882 960111845 437097203 885900120 899455206 991482877 342346783 366688727 858918464 859203922 390166538 783775097 796805249 852150790 765676102 925126092 834580215 855768373 332158055 580752841 598979305 618910247 481523900 527407833 485492142 670564807 538026750 838648028 696487254 848296935 37960532 443677355 191398345 988623449 42535740 757024581 524725093 690557337 782301899 786675172 158486149 733036924 378285662 789096528 136496015 625223267 856867318 962204779 434273581 566905159 94673221 201583412 814814799 918180567 909318303 959701231 45836082 333254820 550196518 650961311 705026600 804028737 600719268 984626922 211175040 900854393 84714387 615317654 785362585 858812880 962755301 963715850 305374218 704232984 388879911 871678231 776959400 989568595 999885497 999906971 951481658 975668850 305840995 955503936 905625743 971619172 741470672 906751694 278701410 735542695 820750453 994887567 322808806 594615129 982978715 986564074 652712496 843188292 938556693 943497182 602937115 652215131 259274633 603027163 597845461 789892062 505582581 806887918 637530719 942001758 116396317 468171479 6788210 449393825 338037543 999327844 303657137 428240632 192542478 734703545 840515072 848164960 101209411 202828153 949622368 991954702 40945984 556712836 869289921 980852639 866584901 886354108 439889699 505799770 240928429 335737891 198435788 679246771 454134564 981946125 427902780 554163407 454794826 480451198 460473393 800146886 42163945 910661646 380532220 954559565 93013619 781573518 985171665 985879007 800778996 977677450 895424065 970742547 940156107 974923055 173840903 676905676 871055366 923487370 654506620 744396705 628788497 689520493 286732014 912773887 196863939 652075101 857449120 876294037 957596108 966666776 195798356 275354979 925110059 953746651 898509451 962065302 528261974 620034492 326482731 635617881 270401797 776780203 742504424 857160817 114128436 895895011 974059343 974175014 382810694 707408698 950188257 960077582 966307908 968951564 300854320 499583164 533780399 877395031 84986240 218408626 638042913 975168541 399039464 877390828 724260350 943870664 558094127 775391367 175880983 753757776 573076536 839240067 612222356 769357389 249606702 252284305 470995215 515321785 930816836 948795535 189738305 412878867 178947966 874682795 805503060 926199600 305955791 754048268 758981401 981912944 994401166 996987395 514836744 597075866 79733599 569277761 242660441 656449703 244862769 390964737 829641387 963925039 365472661 711585406 648413845 707090106 944663141 976491943 34115096 40370742 909043467 937421671 855858461 928375036 529782831 861228818 651058026 656679477 585776963 868828194 192744576 241572646 76632923 76747041 755205164 986540148 525415925 952991718 329432588 345013400 261790006 790334167 136886712 640469487 723573571 801636676 437538825 450482277 862568814 940718263 543406642 857632082 797072285 971549402 692910029 920483532 258967763 284176792 763319848 796745853 329430442 528694869 433870907 882063484 986207596 998514161 594019795 800541812 49082374 788064958 481650588 596183183 24809452 409998629 469409558 923587877 5272091 571374656 968928031 997958142 129742380 632444250 76861340 449605602 512533026 911187890 863018826 863387938 488070833 890768605 344315025 517764815 598295740 767744333 326040975 783886671 861738533 948182186 93093732 550114669 784357808 898400593 779463375 807272549 590699733 752741297 524041192 850862117 5143544 490900269 222799475 599800921 128676269 580408038 917491718 963103616 344548273 719893847 146395878 567787647 868362681 955489127 12856660 850064349 425341178 584849529 329040569 900833266 257027741 798898051 999390672 999495061 962493912 984097382 741360655 975008999 806103653 878950634 546543241 750880600 667829462 821252035 999036794 999410443 477993342 960046072 562580222 700169578 142788802 333704993 634026121 810267798 627953960 741708146 31304399 826262173 75214158 183596230 598928490 870519766 293286436 606770501 236177041 520220652 201103553 957958352 689397392 950220503 293072654 562265216 374893457 598638303 207765067 663817226 445396216 816185902 690026606 891677867 436780341 543674156 456019307 613766717 265902303 358754501 745872526 933387310 168374005 280908014 355411839 915399060 414886155 753660905 452713069 688994945 325981983 447894878 971036943 975390711 9092452 219164303 230111431 289035391 687709202 821193736 816294237 829829958 964348953 991181668 717059590 785395489 68166821 877271547 248260518 716234224 137634822 309037919 883447154 957507526 597248215 803868660 747675113 867398590 929408952 967205936 195692705 393088074 629143740 916312910 426230460 618514801 579664399 975866996 484958977 613973432 952268576 985332062 538557257 644737440 500655302 770826264 686852247 989108322 213597395 697931471 538716712 751919155 639808254 884077349 209688952 634324448 137510459 147135323 734078518 860186834 239680570 660361256 405530337 582966273 159145342 251584169 554048058 756734017 34266312 664127436 81143534 701236649 376224465 777096956 687128064 709251677 416380649 683634880 11152300 339629749 631177150 702091806 783910333 891323539 481101006 946150900 15890910 934095590 425954385 708668570 588863170 711922536 349693149 656346613 487695989 748769079 170202468 606820200 302151698 733320066 713441183 784600781 368484493 510630887 185856025 468178521 944598394 965739112 84859840 575169900 48410354 868062709 77242514 374408119 153851471 884304966 932033656 948036960 915228928 983331893 234110625 584438852 792740885 878189268 529973349 703727196 133669295 634453266 383944381 385234972 646186324 798947555 807267255 966170468 409764127 726592315 368171881 826896481 667681945 976617406 391020563 562414440 992006714 992617049 142402636 302766109 30055801 70337289 851247376 887656837 155486195 208487065 898450837 952847722 933614276 977534854 877237556 949715328 792871312 803527461 225930609 345454765 882024704 980182849 182020364 795223799 193690166 349064898 823872495 971221471 484358900 688715639 907083546 969012040 619158620 800914661 207098077 496103534 182215129 321724644 389303133 506740170 596613628 643751402 462170875 736020654 775155966 995037123 502494113 990144031 579445198 945271545 557821386 827108602 334230427 587831235 661525060 956942777 409524171 653504917 252418311 263882874 215573226 458940911 73057619 904348366 184729992 328670893 135710933 330318444 881753461 993834063 780124585 992013120 992589420 998711472 448509896 891488030 333400934 503837947 235585997 774197512 990449167 998353031 22313413 971216276 32855687 870890675 590586818 615194439 977948078 985080034 326806917 988312085 183291180 722185366 189072790 458458151 369022742 569339716 389379365 515190275 197556607 995786646 524422103 839989768 137474159 831888185 694591009 787447910 552442639 852596460 66100034 991042240 277137472 891820754 989570165 992189423 632533854 834908420 686897457 848280972 847026148 869708228 568195906 803859350 199661830 821146519 662668100 938390176 474271773 495028448 236936226 763036302 588432440 882650401 830372086 917460854 454115586 650082916 29910059 243952998 782734674 815646210 772659437 862511583 441940673 641605787 187683015 692301350 639522929 764045922 392533583 653696555 752207478 857401704 891988295 941449278 750556953 788943074 706662446 767531428 175802268 301316818 914787549 932907298 397141183 652343425 710894844 785097512 174987798 532863540 449675794 813980716 738767437 845407193 502459800 808812586 460606545 615109075 181527519 299812676 461833417 975416874 335569290 718500566 264682667 747048658 303779 465327046 497625416 913108107 604149886 791300217 961359802 963790795 705692723 837230559 880368095 963432762 609155693 702282661 111872173 943569822 248766000 679554435 193670116 504418440 663389972 726166506 150414142 530494145 156825685 189385148 856498389 986253514 751975045 890949425 779932751 984555449 350992491 652798464 60198492 542853952 88110028 876266607 871471999 877535708 587370673 995206297 857656878 910946445 559336446 627934305 322241967 499833931 58310976 427804064 245940811 919275101 958745549 979313490 506251927 770593283 333760640 905976983 719317831 835685887 324021031 439130194 679587967 838931162 122479669 477606908 888057225 924784167 393494958 704412389 496102382 812832884 618554940 965007757 640453517 742303258 475404543 559322766 705491114 720349636 84463539 923420490 896297045 910238006 177963276 359376543 702964639 904480531 924428110 962027880 406135449 615478992 451777245 455849597 240468734 445639992 623326747 946671412 643353352 726353286 280194304 431308972 281555826 329537882 524145547 931042208 476220476 560629200 422535692 493180479 970747383 976976671 977131470 985403606 475272165 510920993 212574109 727393479 659274741 678243078 945916214 994092560 689844247 848155775 6340784 524901068 632494963 712115845 461504268 886894595 226025395 410693534 201930902 882993976 269413810 314479462 530390590 966040324 409332693 436088311 710151137 989364530 260831344 645508783 444347544 775722929 510467298 938158072 854919562 947334764 942153995 992959216 36536291 525776180 598793624 719188395 170615043 453782497 610743273 636923958 12397093 231931796 986797203 995830338 595456325 988075204 867524374 971988379 292325281 454614129 172969422 826424358 412933329 809233057 714159828 936974955 34301191 703339257 318421235 557768270 736343194 923564012 374858686 402623265 700153969 894148180 730757322 771785257 801785602 849979760 217125524 650875622 598631211 736349068 384398031 933040626 379082825 980263361 163748008 918570502 187389324 791742734 727530096 970800667 156426274 292186922 445271810 558166594 612723308 891766196 279887897 570650580 44252228 135366531 64563325 166648323 103304001 184452677 695194540 756138348 546667999 897087219 79893718 764973484 476832126 790157636 342164745 943170111 892252745 909965975 748933115 804155140 245486977 714259555 926146521 943462109 202923749 798199970 187449678 557077741 778233305 817637373 751910819 769096685 744331052 978216501 374534313 406531425 586048014 840615052 463901734 912329364 523648048 992379078 595051000 743558496 314410959 639246618 771130805 792823539 792933088 959348557 851300779 932196726 961269186 985808816 614649348 910949629 367595202 445360143 213881249 523729501 687745569 826079100 163719920 351818050 295345212 381694480 552357764 785567240 514911632 904496404 835923820 991487852 967248608 999174363 824181686 844711399 30084739 442357048 697947327 834777381 748295195 753314592 78022040 549208045 745213620 931134120 712639133 779110700 629660800 689103493 39718367 916490469 919548480 922761037 123233339 216011318 407570473 719260880 949930495 962469356 833380845 910291144 412751480 750498733 759239130 874151557 210872838 684213426 477328656 674040456 112429629 740479373 607351143 890954964 181838516 643953631 597841888 894778363 179107840 716225675 707683640 844920162 752119205 960133825 713911880 814013299 986820612 997004192 127654206 714954022 38959886 547599786 387462335 415736238 302300004 493806864 283067435 916663296 942998833 954076903 435495683 903010199 711614281 930943728 712882033 783375377 911886036 966062299 102836645 107392219 115241523 680935189 978884753 994086095 25026328 726522283 513655984 602496120 19121447 476651894 880798865 998095725 27399772 990192788 832623561 880417244 186094169 817002569 902915303 960323158 9658337 26179526 782902402 792864861 729186789 764546706 258100026 836646834 515583850 809132350 500186107 843806960 363150720 780349130 91092544 525024453 516614978 593742139 172048574 931416725 698662356 888807583 366815610 589393067 200063143 630269849 594861061 712138136 494661068 645174570 233056650 393902326 719856281 871236780 909155747 968375654 321826962 742497156 772315087 986287712 217707833 225843267 507295228 878002617 32146809 748704395 969939629 972401476 993099429 995843290 645324109 759440228 164903167 892748415 150881602 283581577 684145919 809107326 813226407 957708594 814120957 840582041 664828218 884180944 769677643 810384234 815910180 816013168 59335838 732352382 705516671 943123578 210732695 399003667 141773360 646677797 286541132 955729484 327636185 423279418 732030683 857884226 933908439 943561524 132394601 898599306 210129686 551071302 403545446 664618913 483627235 846902282 652760066 859725592 645806219 697163178 728793731 974972759 398056552 872824345 639601111 807891612 474302434 631921137 135092175 995476454 859279297 982096999 344251102 669610874 918192029 988109776 794053186 825824775 816892275 894494078 789265479 857695750 602576560 696341966 338830617 565533252 434968572 787508948 798017422 818082993 594970023 990722546 627455724 812033498 984676023 997754485 555239869 998138402 731090165 836474535 534939171 845353482 634819510 636432283 609933176 903504939 811193240 892557368 334597362 449973243 229748593 676340947 80439984 971193819 531703788 815790326 72079013 752689183 415314278 817746302 567219428 815381627 75581686 421026806 188015152 655905388 762081227 861609315 295266662 651951975 72358182 616409722 434026728 588244914 314061460 551828438 988394755 992899223 454801233 872962673 528672962 891265127 996281580 999666804 195821735 730442875 137117347 251169321 862219245 877522930 961433791 977098705 373815649 586443049 133399342 702446255 971852246 985794323 439333610 709294815 365865945 410885765 717948984 730557958 608606370 771824558 259693336 446752202 757077832 904733220 935750808 956512946 790837026 935314140 173345324 923413257 193089075 360351262 627791639 763096645 872972497 950996217 315040655 500131924 470528658 814128791 958911993 995750027 593220929 661880217 306676734 443268432 643865311 714893124 456862375 499448530 597016210 680183587 6500350 304594688 309220361 572957901 450475739 985392037 112540387 877234383 116513908 578352228 553365949 915923377 900132312 964295288 222072027 586605686 436564162 716225275 940253519 979190060 757316564 857971894 88681164 432707850 909284736 915356140 189329958 458346514 555138708 932978870 671990686 764253701 755735182 799952832 22120249 742146462 925230415 982356689 383704735 732250415 230450237 910990647 940963267 975243181 651172927 868479937 186276296 541236081 885196393 960524084 492748747 987272090 240238877 596769196 85565770 492272920 314290875 622649094 340478135 567308257 278053722 842909143 95092871 227027837 780887807 897740086 244337751 866092760 838839935 840993237 74199973 902352794 654994136 885168887 261663529 929352033 49152346 667192098 768172325 891493281 213109902 616008381 374303783 653385944 118859185 185009467 567361735 912926774 637243399 867001388 157120670 303941816 72633836 144995995 452735922 932064437 545613757 788850905 603619272 765574535 174730222 359805196 47501265 129142297 764275753 914289774 88993616 846052747 754814818 798206993 452103247 792958391 119637702 438914803 430355172 799288528 60896609 326342089 439344409 490265227 483931328 539435074 140702399 873267843 582561183 661154052 835260078 970800164 308799409 324157323 662359565 726755858 4858826 898077261 872865071 923436152 561026613 628256953 877639586 948620987 762539002 765118716 690738568 780313828 153260198 878977086 683540271 844064058 132036511 519829824 453775476 714018519 690568725 885455915 117645245 874342853 974176116 978058492 691545030 789182392 763449258 958423077 304857616 766984720 725102782 763048293 762145470 899103162 669860406 742652001 553268352 792355424 142384289 413469427 86093197 610153552 250244301 343300483 700603359 957800561 309458291 491622908 528893947 980030350 884262951 891786019 167602366 821936699 67797858 824576369 17226058 755059922 330162549 953269075 677353620 737827647 190350496 479452514 953782347 977641291 161644692 675520226 186869915 608609268 157513311 185988672 382300596 473859204 336052250 602699002 205875414 839678433 733749807 737311393 121569214 384626148 257262880 792470457 511035848 865355687 738123041 837656638 938006290 990915784 619678364 998986006 716837778 853896236 874263177 890962473 394136374 930906830 990356192 997461813 974779803 985073789 459963153 584278168 788002885 865070064 370498020 530481781 323933779 651881432 262183736 559060844 954536789 985438319 318073462 500099587 28353539 416074858 180912808 745864260 533136133 785029705 771732982 976394127 46862511 846121281 619611321 997508144 113970420 811809866 165867926 264131664 50456828 832364915 388671573 579256623 48643959 858811591 144519274 863801274 639473002 703035569 572620590 829600258 582629359 912276428 618202001 872200433 511177868 632474221 703045352 861255441 469631450 583557011 285256679 604299292 350687453 568844357 71025522 767350927 63811161 252188391 914396173 944449852 359705442 930940928 97584167 466476118 677604003 800965213 680835032 934166485 860806366 916503406 487001854 815201444 58397430 87427779 618704444 815566659 116050851 498128517 944133606 977754796 614993082 637408961 446476133 987467961 274557241 281447234 235767529 577020982 693404984 823538778 3053845 534988905 680080328 832613768 363688815 987813000 698898253 713407507 844665534 861565928 206834051 424614443 470992368 960933631 94776147 785013946 668152141 724325293 95228652 440580170 913737493 952637964 248216822 740719618 635152746 713582059 135273314 625968813 827511581 964518585 983602016 988427533 221672706 558852577 628578496 727609675 515463022 582077661 852217736 982932961 610923149 631168647 103287129 151679445 305240187 599340640 778092618 806525961 98903652 382419757 871987084 993067269 394224137 941557634 884881803 890248590 205681532 636147719 646815344 735231736 269057506 759841683 156274005 193400430 492367905 871188138 103485347 190589604 251066852 455098745 972501469 990604134 88052215 950239163 485768770 785108995 667727258 756543975 659180119 815198834 544014295 738704623 458013809 895150864 45009254 324970266 240724878 519322775 61477956 667018898 15073423 338558018 314085431 412059066 377035631 806469099 258370454 269229189 587847003 751575656 601105810 729020389 15286048 422753290 797919386 872595019 369197903 940529899 567766532 946622078 601951413 886828253 418015806 699638506 282970772 763954839 787095149 787532993 533968503 807205686 81515411 840424749 163598934 773652070 978605242 979768982 569248364 828042644 584711351 886787511 325340846 856609269 581896207 837491454 434164638 489592839 359825992 770849939 965140528 974219651 484531384 665745067 705913807 802299806 757547165 978294768 149415330 226857597 446662511 507767972 897676085 992880347 483681302 958538877 843731384 936062302 367361470 966264008 293918038 525288691 349930496 691033832 647035873 898180346 935280591 971521291 101041189 857504709 739020701 833852616 886776993 924447769 186411737 915157101 641423848 985270819 911483707 978482335 872799251 928063159 558292214 784200723 462528945 681549185 132731822 192634753 803624865 912928493 522890558 808076387 271798056 285243054 349839351 946209542 491094929 833605180 437325126 476312172 308986699 699064903 335257526 363782510 375582451 670026980 34216070 625578425 421802248 451417262 391473429 609571788 663545609 960718728 357471266 727377481 539575119 831313662 281166960 706440452 108483438 410215770 381724394 699187332 425115125 681958198 928816355 978125280 491524000 695925309 80989734 992520924 753300340 860867745 733020118 874299967 756395215 894469508 671032678 781453980 924459666 952301505 404916184 809901286 984025224 986869345 752676441 861055305 963976162 997183988 798729959 915145887 36906038 528749430 597056858 693258898 99785674 408102978 778486419 996060321 945071317 988146930 901636077 913215811 271877428 409110282 864500249 928790150 903937864 990332894 73596876 450798790 213494486 896502726 329605647 673713776 718684270 808071731 325591346 545475187 476180400 956984853 421605555 865413128 899526092 972544086 347198580 368689251 619972959 818463988 691499982 981252519 668043702 932947921 298751167 428715150 640916996 980978094 613611245 977602137 997649619 998000783 263235676 697772358 757629169 778816929 719494287 972422884 506101676 517590621 530087327 633035235 813671784 962450109 64040529 806908512 711847071 845082191 432469825 710687043 943769855 997847097 246879244 743447824 246485600 655527698 181219311 422806670 470187203 997273620 213075386 239642952 814486100 918977186 356101642 640957659 981418758 989458847 276703147 582413949 499408130 530395510 859731440 884747325 254804174 517666064 493837464 865383045 759890845 888544416 302642792 966357783 69308001 829369375 153257305 836613887 443873521 930037803 77706768 192853841 107538569 533820172 580102945 844710982 107848412 266306644 584769237 632079897 752493540 958040464 349135846 827532078 338900607 660910062 990166629 991385053 252547414 707591580 120317191 312080608 353591666 751846955 619143195 927076019 184138804 381818331 623774434 649473295 282253966 707277522 392796330 972469443 357468436 762536540 504907899 946856192 122165022 143837417 485591275 727037441 652221366 948720223 154789219 155707614 893805217 964528162 896004757 974104432 187968448 756894366 889164959 954452651 595558275 723270642 170481691 171709436 862791084 997967903 142734198 646869107 341645833 890806222 583146110 963735679 307336559 861847188 630304061 807544779 967365302 985611145 94775269 447954346 480441173 748170160 339242469 360319143 765706189 811263426 472463801 790483981 874552735 966874596 172519707 880589715 108288193 279664683 727375580 800698686 206805688 416884003 219718535 937126646 235764647 568664399 238909926 962994921 939487980 971197086 766314455 984523178 265456639 770442559 62626781 424363406 382879834 941225462 762703882 799825650 111791008 116036884 950528716 965773737 8198935 42629449 448436532 927397637 809901681 940214367 509807139 945385847 525707826 880343428 251031478 469228404 849434101 880940151 726749407 771121016 209815989 808818965 860524187 925152023 697653992 859274570 931421832 984303447 947091213 972095338 83826037 951229820 172337071 374453607 861657466 983903668 696125559 728248499 420449778 465043225 851613939 866107370 405552604 847830161 429982302 548717647 608085555 978469340 518605090 788964867 95715845 909870774 415654123 696471962 417694812 532442066 493558541 855497504 168933354 768941544 949520057 994111879 652060753 788245407 262689449 442507164 106863417 783322634 455260197 542596942 588146395 919449753 917864488 955814693 682116181 757629670 547799804 925564904 973828324 988800867 689833028 826169325 26043908 827803128 51102673 625329818 686396144 980155707 704458548 905987405 941968097 945266519 428384911 698369068 987411611 996760581 266969658 515858804 285072620 609228606 933444721 936195797 876616934 949772633 610707672 814339688 537705000 974816825 320933493 602498231 960981512 970496952 373267144 976603972 699700119 773820154 326400734 651533764 558023469 961021228 625221397 717684344 702486689 781127588 79654163 780385836 449855338 499206362 501562253 815096873 491385687 679871943 533731380 900157994 677363637 739673101 933404271 935424834 499002612 558207834 390024744 496561731 668124925 743779884 796731615 932420290 987957988 995376251 993140912 997096210 183292666 500817582 266406888 559377972 396391700 707687529 231683868 600802359 174690516 783773208 237100856 622202174 485120403 855114594 592830739 993716394 480307915 497427125 649034697 677308151 387309247 909629161 162434182 193028418 247616300 480153281 121421520 181552565 449607584 711192987 101817768 932766429 405289491 627144271 770212796 805479524 660353440 869674703 116017407 647150514 797012493 812494690 765231532 833395385 111932463 718439373 610028930 927795468 832258932 849759369 707624253 869273895 948026553 998072448 94462674 766846344 635534218 932854421 722005032 926012538 497395676 964050875 558777828 817495587 76072115 438927696 758508488 923405396 466568452 672655153 954963674 964810099 293674178 889313919 324485526 655881241 453887616 743592386 253640698 523809813 206813606 798621909 55063785 522657389 588418248 830743192 112964460 628057405 634104255 809134151 430157215 893078000 518759390 800335652 482858945 728245838 819347153 971790494 507019508 702799087 296221754 811753200 393669605 656705134 589091803 886721022 921006164 993831011 41194406 739086182 500101928 540457986 170065770 804682212 948348481 997043561 408168357 682358488 924566482 937161515 175861754 654261815 724474945 981957692 768528934 970384656 437308081 558105043 91110456 427767389 742397347 895385080 820285769 990709464 525982871 820102022 471203528 541155323 930207683 997828810 668737432 810966125 478177609 845469622 943588773 992198080 230496530 264835579 768025149 891170973 718026900 829294038 94065245 564383888 727094684 809767282 127601068 350403055 923068903 991863737 374242591 385593046 699441189 957954048 239294786 790020685 508726736 593469443 705056040 780298601 908043063 915856227 12676130 67398829 288213536 454288865 321953510 414250553 584370183 866318767 397397406 522256783 536295990 726933529 863646829 865231324 855827456 984408255 74543123 527893553 661456468 970243931 230321593 669142657 955108359 977470980 85656847 208195889 517849464 896231939 974411052 980537320 338529859 787010700 314082706 654874911 499985570 646788620 590413648 829632954 33939744 992532495 809562287 920747192 800285572 932888161 75568346 867916976 143912457 240857727 306869491 366121088 657632133 895029999 856184232 996921196 124379739 410590299 390242109 479579094 17717753 509135877 609587614 734032508 516934654 849507681 760932082 849198063 823892386 882049666 552688118 990223599 149180886 296871490 487536019 587765622 404277463 452153768 711829943 820361912 181540751 720814977 952866831 974976037 940415440 995490848 886100447 985898128 79009778 517529595 8818628 222541704 511350493 590911397 947388132 960768956 895207628 933215968 747351674 922387048 632792174 739132286 648579510 653235801 734931607 989671126 454023273 605752437 314996304 976728102 91622871 779568480 172925706 723850208 585793037 874237688 1660233 281619341 375258623 497278214 915892558 951958104 144098519 802256950 758455995 926343702 815467596 923480339 741806434 860228316 340955941 829299059 694424116 974833196 122315650 202112225 345974031 775983098 554228020 573615597 124987523 454279405 948482833 952689801 218757378 347948031 274494790 833530303 891071314 960630008 869248764 902859064 139145372 403134379 904654866 917207620 354318897 394970821 457714815 786547995 775557887 804419602 570446310 855479356 750383773 769430558 318460569 560958118 882781066 974122300 443110939 794130637 129567390 655284540 203305361 300229026 963537839 970631049 410715982 465457102 908961896 995407554 366344496 616656804 830762089 987745667 277293297 563534995 425911731 942388589 875230374 969221784 3074837 912221463 817711214 827169768 41331250 878401117 408608011 534365991 242968389 950307384 91942067 867847392 508348677 719069904 800615810 832064313 667737515 951858324 991565268 998755678 693513699 840208537 106480500 882757780 876510519 882792296 676258229 785887920 948591142 984012195 351394986 684781021 512747654 727250346 974481698 976946578 354517883 927455926 807755769 857750395 734410875 932900389 752009912 863343647 617990802 798606276 680040196 785990726 855043318 988484686 307741868 379557784 308027945 688848533 690081321 890613269 239354336 858055074 940295823 982811606 229994630 468747731 37839983 66359475 421092276 796057994 607764391 899779706 946399151 959043555 369702855 548600222 148870997 489538332 336265974 819151011 319334367 686510085 965597497 976959104 911905328 986969726 509789796 976349570 274991708 902161537 760012875 842754078 669309571 720962911 122104665 962560170 556989137 801269180 392570560 721904693 71888828 411524361 275090892 551243475 332650653 942131621 79127877 848021214 923988815 986095181 470037014 747896548 633564883 686577731 172681436 680908280 11503611 800522092 303623072 834083925 26738154 750872910 212871324 748132158 454576101 814376572 366626381 479511765 556162296 904503621 981599953 984252178 703562701 932527333 161092963 862472391 851649141 991142757 365953847 398302568 875998539 894552180 828366872 885268584 560623743 963850067 797980408 826165136 999436198 999885915 783096836 950923757 555241805 602327099 907447692 996629949 917718580 954923027 976269263 981844826 331932136 660908981 555937108 870372122 211917279 672099840 441004350 608593796 683603287 724984223 752495230 969279369 47491862 800106494 78968235 821808643 958139366 960157522 437933231 578570611 768443795 993432334 349239370 761499493 275278428 564900729 350463542 396009096 228916321 538360299 193257071 794392662 96541630 942816363 451826083 464104910 771774276 992247682 501019315 684548479 939086102 962355905 313953665 518660747 92740398 97608497 551649645 640170411 803535190 840788838 285977141 870847119 161758986 792340116 544223364 941666490 92796724 345082436 702404542 931361152 724784787 928195196 209654281 341342765 201982986 523026332 933733450 977340306 406642972 529891709 221226413 413740490 483958005 541135182 173914646 862690041 57932324 519610117 672880323 721300273 746316595 759143399 350810127 644047171 475104587 838428532 639384765 644652580 700656250 737739908 724838900 844388111 743801622 895636576 400671737 414475958 83473022 394076333 760936174 876625629 182606240 668968889 581956586 693951894 249022895 886749378 99040134 156853461 861111061 867714025 316637445 339332208 5054595 808660487 119065937 126518757 115942963 162616837 927148968 994191465 168745024 792901800 463675017 853181604 119077742 701383619 998879216 999709559 924893614 944229188 601870129 707255637 614372883 649497121 395243097 498482569 12003174 870539044 351175773 392368180 727786183 996499378 174397085 186732816 587714886 724202868 20392436 986738386 636246364 722725688 499830701 697295250 805750503 854259149 256769659 910905523 606680616 810625086 865999500 948398292 123282035 669654995 227859144 341166528 170951695 278932862 159695074 536280319 706680127 953158313 678179847 829373382 865144800 971985830 430308245 928733450 98674753 977341172 502246759 713336356 749750425 893770292 865520401 919565663 351100605 694503184 844856879 999710923 863364042 877161554 574270454 707956075 103547149 963551175 4442500 410564239 521601931 810338447 206317748 512311729 730800900 822716357 985695349 991936339 270025588 614641781 986746543 993831833 663915763 896528350 120123718 998394589 256666976 942170177 788963405 860055112 355620221 713876271 375456359 756837542 603527822 674053039 655021182 919640011 474111582 915458190 534062882 736216030 979763373 998102535 879128469 964137611 332105941 849859096 990675429 991261299 273888342 473502527 52672182 175075454 743937949 868971966 501141448 613591747 950090605 963322110 22871936 645810198 782194197 803167175 896066866 959397807 757666369 932297944 471927537 861882010 263942211 334820989 352928330 518482594 165479323 247567673 804840161 813785113 726570480 841013135 937692218 979631019 484248525 769447007 246800532 573571589 689185577 996184933 881346956 934835645 212725956 269542970 579777339 973804361 397268937 902538577 169547804 871674209 285492816 881915741 86282975 392964907 818994583 923943797 641322947 803254969 417151220 836581840 202329381 842288791 669636329 968960955 735735620 984812521 511094291 644447655 318441010 701207709 850019102 865451244 184714142 710939268 251272299 856951399 855755291 861922323 162900450 579903905 983468032 995598267 452657746 781987507 285241308 962649670 777404338 838453879 204076776 771240109 549302227 988351287 288783579 646071527 381357977 547158542 272500853 305647995 376352954 581412553 192939369 525009341 85615398 200452849 925689921 932505160 434894253 463095981 689553459 700753652 650218032 859198748 115903187 260100383 425651336 829661013 15489916 87364221 968060241 971403964 210651609 615847655 517825971 686886970 904801116 960588125 451966285 873951857 508707041 864819090 249949035 619131477 212620482 846005526 993206612 997230449 333998047 941170484 982189017 998622721 360057924 362748893 594310373 967405924 338138196 837783869 938151916 960228751 848726142 858361541 992340015 994599009 650679921 665008325 972870245 996747998 737453369 825956750 626958483 729662092 229553578 594341487 803199245 963419367 584975563 622812775 302897188 985389300 597551084 847274536 504904958 569270187 936383009 958239857 811878404 989193434 811024046 943235782 309345928 754552271 70794474 600467347 308856326 368518993 10141100 163816193 298204890 646912514 845214573 881654329 439390015 927094217 509838197 687108059 378733983 909418304 874970081 884822410 851826541 870362329 157243469 472318197 634553956 790061017 73953614 271346191 666835706 781008471 747391152 839756675 180920061 333134785 840083851 961873075 851135321 998484570 741151195 978461978 775227058 955096511 863911203 958717099 284187500 936736392 785599090 890224945 215491080 488530204 830981021 997305851 143399638 842575895 959103665 988964217 474848872 924537200 866046359 943456090 417602499 691458385 678361893 718804984 554288880 722792093 319193150 343729702 955612977 957642076 99938500 186404615 151056228 490006340 399423121 867345746 212416150 855525193 289129593 484940493 723472753 918975708 65255596 466063651 782257923 882065219 706017002 884311461 313332650 316918956 227358401 899448824 813972505 937760791 316257746 421647135 793688195 846067420 554853872 598127677 221442072 955413727 911414467 952578244 470456525 736139762 876539375 915691547 228013337 565265404 259982654 335079907 296653350 525260150 283261797 462653812 185408773 433251584 34975481 115093662 228100683 514691085 424036564 888580079 627959279 944668862 257525291 887286073 897009891 973899122 983181413 995464480 891882498 909551240 395333840 922552750 386271513 808299520 839151615 898157929 492288938 789925312 739078865 834786517 470688950 787916323 140909516 714058991 521850569 990046961 269903835 453919445 428275289 580475737 341759924 887473469 166420762 686353641 812211396 971989459 838053678 953397875 450193856 781422415 708262465 995125234 387423188 517976321 352707344 935035810 466152938 588342497 540246279 636881325 336197422 533846903 65617536 911338648 534383404 631816427 52438273 348627755 361703666 544748881 499324478 807022577 659086017 718222866 705048575 743107550 787138861 859899520 437249149 510323373 539344396 551105422 378297025 980238237 339405478 871215428 77292132 802606409 355772623 564306342 879252230 934771444 739755955 912604669 528936340 790447666 449201425 852806064 379957436 568788990 232682664 407938515 388962315 637600783 209133695 387931344 554599634 707938164 821845995 992180948 419512949 506108776 662055931 890893522 770563213 862993192 625262544 880047789 605288193 806001447 890193903 989510286 355232382 436325751 443703657 601231484 125729952 593585689 721028850 922616787 374742047 746489953 903745944 961287785 197764622 557853500 120411942 350276349 874962852 882567570 335997743 918236805 241227532 677617849 789423041 871669312 588479051 841719386 25763615 863141724 631910590 923756492 693255944 718849460 394405835 754536375 853912692 945005646 377513610 551237548 883925110 910439715 571622101 891771970 98691734 712824190 962389675 984288334 583594954 728556716 900117049 902922959 194060618 199582733 651966988 736295266 220539271 977209529 86859998 153914854 169925876 368302576 972864202 987968864 839338572 849657997 317766870 836153265 238874806 890857567 589918658 850237577 714529094 757801772 603086791 709244259 243034732 964600107 807475635 960415052 874040111 886495299 935173300 994810514 345236639 792098552 166564966 225268280 659986120 667034806 291435221 827284213 115744811 513641557 469131833 904028048 726813756 921405399 619324147 961279542 568545672 706990277 163661652 440345410 922766839 998153073 269784803 365141487 920966140 954399843 669162419 795880374 423208246 660631887 377577634 776602598 137955601 410207581 31754260 538703499 724874759 739419247 999238332 999512594 251192690 276960555 295901762 854908870 507018350 742026247 810282456 841096567 497646030 521008157 109764587 192569925 676213919 711575752 396246374 443369489 201674120 374310188 518422064 811700516 26385169 479921329 160411115 880106856 920676491 928645108 771741689 780345283 197916115 591254657 210407319 502722107 496034345 657991891 745917496 903399935 117845306 900461810 485895263 884210023 428440986 433001004 93411188 942358722 711313156 762687451 873412996 925555520 706835035 751440959 345211542 488825070 297336805 745659667 758315157 860688270 325823009 686681222 148216345 556987357 50754911 524863689 195789392 584964985 506599231 965228801 553422054 933495137 272289770 827231645 751976973 961417484 889214388 988175004 898659709 985957876 210716669 317957492 93998373 420369834 593125237 602050770 241202938 944453729 688095618 977751840 743124435 880534301 274859391 805604201 447916192 864803749 541391118 947651570 680265221 813115180 160191322 991849515 628648530 805886690 600133751 751928519 559331969 819818896 522227632 994119708 680275620 736800322 592944296 647328309 255548097 795574539 909178416 936246025 677360734 834542192 698112921 968386755 763453143 981277685 246939147 437676678 660838877 718131325 410038392 542128584 45547626 689507830 854232197 995120840 90850804 931344618 324107158 570491578 125490493 225926172 361822564 645557953 116184983 862621582 66405002 750571885 632893231 853578907 261337399 992564116 206475873 967251377 518206179 871002609 973340731 997380006 429003339 451912821 206104253 376826756 483099113 837807974 79147903 156972859 93126474 290092583 841734218 902835427 901306040 983965295 853400152 907873200 991603344 996925661 398173661 485348841 202190390 689993953 939285701 964687235 439791306 583072918 395371286 719659310 807470567 898706860 970944511 988501062 291119336 631851132 179256442 278967156 778507792 898012108 586696909 997020360 969779329 981775950 519035876 767716585 61318136 76774989 832179292 904207111 51710213 676216417 784348846 818622020 525238335 923830924 775179622 822269913 665591481 918196539 894238963 999218331 478574833 595115521 261596478 690258863 754775860 775765372 600744260 888776161 435430544 862761211 925838406 949039622 86759850 295310240 899711226 964240927 834103422 868622762 152421919 932395646 558233639 666834310 267252277 983906751 277104711 472403247 979380277 980427333 39748226 448510357 441349005 862359152 491711859 721200851 551221723 833657809 560935377 921081101 809051915 892264006 922654961 989871048 726237632 798023639 974766833 978537969 371598364 531022150 310526532 760250309 408662550 580154349 119337931 711056760 116873060 898799547 398859699 787076522 225400792 296253936 13569544 426658386 366702652 429240757 386874908 400210825 259902319 916413912 766432301 811404499 116792938 716217223 851228447 969919713 883434304 959553130 897413623 978955667 814131455 884091345 227226920 638237743 253515936 755972815 234412116 672279031 521830730 921135739 397064455 998300503 840930593 895596382 798460964 946887592 235706419 666889657 331996594 513972696 907626321 992126153 888514540 937964115 480272713 925527242 344463664 675468035 227072539 948499441 411797476 972183231 541910629 576624449 926197079 966989451 98454285 601463802 406753651 966657796 899011484 910084910 996357814 997652060 774792875 859050570 894981900 982983212 525640076 687851631 877526738 910865856 855562835 930572339 207384622 484797707 183301597 981893479 646294152 732496805 359323570 529355282 853585345 894958591 343672460 354244114 151078259 292827169 575652869 985265993 184577898 205215087 340592352 366562450 855087048 952167082 715134289 789959656 365495067 386214667 858285456 877408350 405045762 530067389 998300857 999539347 722638413 881693605 110892497 401141690 685775057 803165164 91335686 440541374 504675815 971948330 280934518 886972398 775065960 777245462 405626444 742524856 465508133 917667142 639033799 678286606 250970362 396171185 259905049 842588267 708786042 915442535 553669800 960999335 415613905 721715737 957712914 998293934 444163839 607595090 130246196 818779431 776712466 860873806 834645681 846515614 968229942 993435874 91329233 719410524 142710763 361242444 400379796 789680954 723323158 950369729 631306159 801057635 832248236 914722431 332977397 444860649 508627129 544292559 479274017 711401494 490454071 861946487 750065963 992400446 555607472 810257381 489709337 897726368 964559838 965160669 190594762 640549864 362779844 951691800 85891741 783024218 645813438 675551008 185935463 582378409 236709393 766900271 869899348 965650550 102608989 242774097 523388087 547482248 566747061 738407282 380409068 410954774 898765166 984067044 763963971 934070554 487660329 834523504 186077574 906583991 214974632 902911826 497467520 939552004 893152615 937248912 658879822 920967160 996013905 998061656 529039810 785291953 445353960 869175165 855149779 950295283 744890803 807471401 395089518 457964165 283479648 970166212 707412207 746178346 375077212 895620717 373195336 760396905 750291230 975132682 749713044 820584518 102926865 302497631 471340696 943603688 47971000 342441044 383414102 877075143 767603649 989256693 505669822 947411544 883558548 913104679 829581651 871985370 604940743 772528321 253514016 479768213 377917927 961933260 17015252 165328700 803061977 841750018 995992730 999333426 696058825 851785517 224354398 718061680 915585740 929355917 790984274 914630944 304364813 455135762 476609477 865357051 984806293 984824562 380870076 969963639 170844518 231268252 426111371 810695143 892002173 938369148 736022979 821047788 568954055 703727057 591697432 695749651 437835632 629163174 547990410 954370927 763211909 771527364 109690021 198521190 515608699 685362423 725539059 969996600 704318657 803800822 774430734 854361387 720592095 725097502 376720646 983814464 921738366 931939223 789729504 895828673 176249703 593612591 596875161 940232464 230872887 749806323 94200948 745819425 983492271 985804410 741227492 873542896 120332764 568744060 31871519 354053925 789928932 997859804 994889078 996037846 264315437 842265041 348418860 741942294 45187307 521602906 843096231 968989824 585161813 919756802 625614692 792347747 116625154 820386578 13247068 102750221 361482692 961422974 447237591 594145547 801275908 821984767 329448497 541768036 307289843 934654682 303163105 764043548 314290492 837039253 800635424 822705273 916408177 917327126 758119339 973653576 923698797 973023240 441416842 673336496 265040502 700257730 114370281 428883079 624860162 737743813 889788665 952843100 982356846 991120269 667126945 899707595 410804277 935818311 130695892 847894233 197011080 310327016 799942657 887344611 691239557 911370012 298362046 492583480 85799401 87871134 13922612 137530879 526086436 613888812 760004700 984819069 295129895 432111732 466135152 882546314 201991290 664853861 296521299 909154280 843419849 871315515 108627113 686342832 928481215 961402250 557375822 759334248 510220904 959619450 190600906 817408295 50427344 460327105 621379911 723099894 710284212 886076894 215319506 998559013 863402324 868572629 192874360 820814403 323519723 328660297 497482103 822668733 58713148 333243784 504171112 694279949 153547728 460961002 982000825 999167025 502164471 669510772 190077587 704722933 786336183 894342863 455396054 959033177 403824835 828723103 438308092 742387667 208511159 723469732 659391301 981402582 603098049 611798590 412989176 990916413 234510652 340641431 465070165 811538264 445282688 819932037 975471275 979377585 814672074 995795811 530352592 751777987 36327288 228551322 577791908 728742814 317048493 762647692 471369516 740773219 901056102 962714209 105314043 692556049 717269611 889697134 626029296 806954499 911375976 926523172 547838790 985621402 542448531 561619526 583577314 599595194 688194531 858499817 949949191 982188953 137875652 240831266 735261069 926008874 233396864 790599579 404313494 743921460 125188422 419539087 238086428 662909261 503748644 791830477 591919985 819917739 542676377 666517146 8694478 183653882 718755126 766284932 772831952 933154749 422211589 973964781 587698995 594670848 827482616 891737245 716802540 879782064 710950248 867597382 200413584 702490702 387447915 453011861 634971766 908602298 493796639 942334382 574557371 829978496 423414437 705979440 536822546 671535457 138017694 620434258 35075459 726610922 296456224 428301396 306749666 758185903 851124418 997623485 29219031 396455775 599565597 943298417 669262714 986583537 132324687 915613683 660756128 684353980 152920111 689892995 842080001 871140469 672369151 931919115 553776117 799116728 13974408 963957177 957234542 987845670 376655445 877557258 295663554 904493918 194157160 574171594 31652044 598009952 424157916 960682172 407587761 863840227 203906220 903614589 713256943 785609968 752911583 773951101 747568468 758242713 730562552 939836196 786161680 836040569 851317917 974672734 450092789 632829888 101457296 995042857 739138618 800011491 146117762 384971670 280927000 313554548 594849182 659137958 141682365 272510301 171236286 717562609 566173667 598364696 914794546 991558784 281445523 541455397 471682571 915195850 918089873 963520165 291973366 461255092 506841618 709558939 336699413 531418062 138622488 405437888 769894850 848767064 870317664 955687406 587396987 835240557 779458578 907295965 632418975 818063185 334686444 770060360 610254375 993581346 764816845 908181184 298948843 810852052 683657794 991586348 427058124 636103082 386230468 654553240 994290678 995859508 545143260 823356509 29073222 157468668 50272785 97725819 88918317 666716325 14922647 105526623 839553795 926750633 906281799 978284867 532516800 809583369 756345851 917352891 352681126 378411580 387339621 662534344 411225891 765536554 55152340 67421369 154183930 957901360 954416076 960901354 443029420 898530554 668187821 960864677 827031807 997622695 141778647 838505885 898390539 934203563 156584695 634243760 930004060 939697290 888359429 941469393 577438248 969424379 239331056 966865880 71614954 529637545 87089835 731709981 423534321 773208422 805980763 998766219 232056376 704930763 725455044 748728695 113179211 707486654 851379957 940167266 164804165 743579401 333994281 613088244 589571301 597919629 820133802 973983716 513968693 930925791 309122049 851457547 899197095 958185189 406144648 536838368 247590475 450130980 963853228 980121795 340206567 976696882 541302487 641346194 399583377 567616616 997460382 998006837 775134173 938856139 234806153 521368010 631897852 797989219 869094028 920543716 942997544 952656426 299162616 645350039 844452666 997608802 872636617 932056464 521703958 684793072 991122221 997967344 70401193 118609660 531574394 877891825 782326269 889996263 359343860 759020068 680677524 879442255 484478199 891097340 877330116 934931047 772791834 879470026 872396767 935468606 770992534 890958460 665963662 995276321 833280397 852504683 903345685 985690634 580982290 608829124 666716366 792659736 96844767 678559267 403114495 606173210 439841956 974082754 507302790 673522665 953235618 964100511 988235033 992842240 76490897 190080334 683452880 934499276 415321293 636663074 119995511 707319353 252084372 978011641 749070100 850446884 886621898 985981066 257585534 305526468 791881630 873776604 936194036 956094931 953131251 999848832 673312370 789938103 517560647 890713552 19611986 417902682 414056319 909764336 274608992 468603757 468829417 580342976 905066642 964068457 116034512 861977380 307905044 771496077 864060898 946562703 720646386 861174728 534274619 731441060 455341007 888900387 71934832 738817294 161728649 601008065 880265291 999058125 686345312 750201679 474521004 916783855 738603891 929705258 826021677 829542844 627389925 768974003 699558523 875415033 729365053 871476926 780584337 947529840 24060750 937736144 335740658 615036842 12298191 678652253 766833198 786167762 554016253 655197606 483778371 840125738 880771072 959164609 304308162 943507348 903603075 930597574 537550167 653925537 926656254 979920691 959710185 961038629 374452767 498580658 492370659 812363357 105186691 620437576 671217520 814769519 288116686 746326251 688519724 781477599 144690020 967317568 85567738 354490430 428675088 744189903 267843143 688338109 916899169 964716732 475778976 561327264 132714756 537561497 213200099 885452999 445952603 568182046 734615039 772789790 554276097 680792034 203993508 624920432 265062424 905673823 112793217 300583761 826817430 978641604 996815050 997264925 727194667 782965968 808427109 966735641 813628413 935612688 334422055 592912702 593500047 626062183 669228047 685730888 638001675 905287304 905359392 998912734 27548370 850902264 574195567 765696479 30213170 996229995 534230857 891884999 95411555 121353383 798522499 858680312 484223933 710786969 49415015 508801561 840587901 936412947 791897849 949253738 902393184 933341993 31812841 799664355 700699760 861113929 334475573 948122752 324330702 430430791 793221411 873156887 505199043 866614256 667237258 681187066 233635116 978859012 927537196 993549718 429154295 964027176 721898 22641941 877522523 905039869 745023328 814070420 513344136 595325329 569638537 747958600 712700525 812869528 793559250 860132420 126600206 574371049 415063591 912613745 923348530 933435785 557986719 703015232 126033666 304256485 767318739 820083028 997719540 998007759 978980368 984877998 959072749 992355799 508084461 749509857 131540970 552093838 706818690 711597883 480451919 880672344 471358660 560539681 895615678 897015022 973444568 981044860 851034012 928152270 348088180 391795366 274179228 610103587 999591097 999808814 700412425 727575134 584856150 673784514 439621149 681685268 320640569 584541398 690331524 695982210 84020732 322890974 29908028 926789073 808293659 984787432 438995041 959487058 733032206 948595599 598874814 858839280 419038345 674579307 719625907 962138326 105538754 633185511 939138589 973097507 194409330 881215034 829843372 859150702 941644162 947683724 688814792 820680377 602233755 875043808 986103706 995650029 377740883 730481885 552903691 769376754 571783152 762561034 756301716 774541855 661862683 766328590 731305871 758406589 343681576 880107659 765911060 879740741 959806328 993250337 628026156 973346972 240757340 674007485 879105683 972087844 531705871 941239233 356570168 440051682 477644958 993003402 300812134 390508892 803363960 919401361 948338354 983547765 286910507 455557360 94244892 269164579 493592739 996112953 300191897 890958016 421000146 580525545 406574066 873832641 440494127 911336967 873451245 956550279 927893952 950897434 4342196 817274622 739687026 933300106 521393894 758923330 121965539 640379407 850375788 954416408 44057755 367306804 199947704 587376050 664697685 853892123 361568952 494831165 393122675 843032342 319294520 565498071 117633016 569632005 769622740 880226402 533418687 607717035 301965202 864444603 225169747 676590640 878122674 888013864 542046696 637193479 285924452 640247905 853290271 960863515 561437312 728280331 374843579 903467448 542909973 864540376 404099189 558246035 313841586 628164791 451651643 690488090 776462181 788191274 497022021 890856583 916733390 981144108 974698204 994350904 975630634 983775302 118770020 236980650 281445460 295147129 398048297 973261088 656722768 722354905 341410332 399186419 29469488 110353859 388139378 739074151 766867521 986021906 123130642 440788906 48659171 987556001 261694449 827994058 212651153 283841245 298921530 364661095 476251001 959992413 696534595 931394170 557821969 839208367 350471889 505471947 766401956 989672681 433626932 806899113 721524469 915352357 599663852 794829895 776722047 974487498 501365080 741466124 14341384 843781124 690621665 882353582 403271503 861587676 313876367 449742279 438002075 951681394 187742564 616587845 561540294 604171525 817974222 969303487 285844411 883819517 223438908 292094672 629452456 978573890 10688720 832638972 761514248 778187264 250261482 292370052 159089614 662038747 10162656 214446222 482849631 752325094 803027059 898479252 204239615 511070898 288831266 780258418 937484066 967691258 337186844 714428352 380298165 514765726 341405996 871080851 772504339 877558167 287216605 611777026 456207214 597290778 767134108 869646379 498497203 775582795 52346212 399262847 792930379 952053189 396013452 853150619 971854561 981572993 429897850 689110373 973198595 986366732 285073702 338245427 853215460 998231560 475509890 916632908 277199148 319582187 675363177 756540361 228714394 646853099 955919045 964433172 976169549 980829232 342367509 507244952 548151033 991682017 497724371 714890420 70769151 155556827 213173338 871715467 252467005 468221473 34805023 852186060 117612036 864761241 332213150 503518119 401420939 579857422 358917563 395572099 656197914 664487898 948182570 954135865 62654692 515002565 52235639 977894345 971764444 981798020 364272839 468112876 810005779 881103931 644401888 809095383 252772716 677533111 649383706 821512684 268266263 537025271 945456474 979913169 538838226 923525871 14810827 58724657 963245768 976686934 834207970 980624757 344387944 839889853 592040697 910853895 446618017 787352958 941532326 996938908 9011659 84934797 628395182 919798652 886017209 914781441 218629539 412722993 943238157 944678991 296364914 610181652 81728143 153054476 117924943 410825076 580582009 825692353 992245647 992521538 261801287 668952938 340462132 816172350 465548298 666362151 604208973 680609648 319295815 698479323 541118840 610079560 443656727 799952309 998816096 999823445 275647931 678445272 472905990 961091559 344638986 693747900 665624426 862982503 505144793 729894748 577388112 744073531 444120777 562293539 992034284 996383891 305382974 885207650 12902127 626916085 772718607 841772984 859757829 928098419 677961983 929323114 360292687 654300000 862025973 863210221 477294927 964489179 364240806 675839066 436945186 779695321 122190769 703981010 803635940 911504021 780655462 875280814 836409172 852766351 395812437 529849118 90549956 501592198 691097687 812339099 299479568 535118284 449424483 919014701 360405217 553387855 505318219 627489234 778734515 950825182 333759428 901971623 916538837 978609727 705073312 914273015 350602896 402470011 451527538 590614567 873825540 979985844 594886769 901421100 213348835 303429384 189336388 809438450 109460647 997156514 669038093 672424261 299330794 921933912 453785004 657041660 151093255 170051080 805779719 917162157 614948277 647059569 514546071 726113903 214205254 274725582 936012384 950883728 976815567 994367671 615779096 726424760 387005522 654279608 791575401 868990937 7905424 650356653 272981767 750416359 754204906 989491940 60960001 576122394 235015071 388089886 542573874 675911462 750997006 957843723 502149922 772353943 545974365 973633021 369366716 959299370 829154150 847471048 743048452 864807982 394596132 851451785 132566350 728531999 173538555 341104626 740250648 985866109 509225773 777685464 752259848 995337693 937746328 986558550 43814786 645656343 763849851 909014613 691812957 738486300 159913478 438508396 374632472 764741164 824878635 839775889 822037979 846290292 737028878 889570503 212636328 926640322 510484653 793165254 653127014 928733631 475386264 692258144 476007741 529321390 559745437 609721005 245689414 308231807 519683485 753406178 12597284 674923891 741257252 921378753 201268434 332679772 147269310 270514706 426022853 975380777 464237944 820041184 940417774 989135547 80548983 348534145 573514925 663453830 712294439 808475944 206019855 341268049 107795046 396381784 184709367 214381808 628627348 709842955 124808565 293225973 632104254 777451950 786573820 890667949 828034567 954646445 946289408 951778929 102889545 172937413 688306451 954530837 352550914 606470357 50344307 250713368 39359431 234362690 249949621 580830031 260107385 267107681 175970457 741070937 20178702 860907797 596224311 628041880 212712973 627674598 936296344 979128925 224010238 475491763 580171855 592861863 60856659 659516422 127464828 821029142 883800055 913178409 321468342 666069835 481843240 683980271 434390367 750358917 186092852 570423998 105782644 687683348 436208612 851374885 859070615 923100357 129444364 267718390 170361997 372929449 397561078 984500276 506313475 628439296 21837869 990274066 607631901 766890533 358807044 501734817 763607014 974629676 835191345 881164519 383055029 552397130 279444879 672798558 664724699 681506556 815551683 910111397 816298153 979079240 902223589 950393956 461919385 921770427 50065232 938734768 97574562 287809910 786564052 968619621 555262179 624744229 805922796 989895050 761349263 902984545 169648538 941500352 982366044 985485011 309698617 507977526 345392908 425994742 83268933 730984812 173933508 326154343 689731405 828796539 23575245 490653492 235853379 986076228 4671987 844162684 181297931 632018924 853136568 929378190 661859684 839199893 463533523 493645807 637263548 829574200 912723697 961523828 160699436 329544372 866533973 961799596 657254724 688420954 663342120 790895268 27673379 997687278 159036657 780453747 40806166 86150340 211994066 830011391 42302170 862126200 742647299 823440944 120767252 668343190 923342671 924529951 619775862 673288404 745091851 847736561 425343889 604733627 650869504 698587743 353661684 861358283 286897342 985580108 610874178 633910764 540454793 623953772 476559660 725615925 228333961 339703830 27863954 76894645 622307151 730582993 189944998 777284207 124129788 497096204 888382670 925695938 35894728 204609790 333402388 826668060 969668985 971439207 736007256 906028107 48207888 454062854 860693936 962123019 163198858 908612035 867641999 969233073 145705801 371637709 500624000 720563798 843648943 857597634 1983843 842981382 343737454 979353486 515210295 694127483 191846754 294034918 450936691 456763106 535117528 584504645 904168831 936629973 126034381 972630582 257992854 970378094 112711129 962440224 84288579 701826571 898701782 909456653 710497808 762715652 583238025 638944988 110203174 559473583 222153233 799986287 379447556 467674636 177149924 852583058 680999315 694253595 309328804 474699003 795544251 882707064 675819 638932482 840436485 955038384 497774833 551295881 468941940 691588894 837850067 980512536 952953358 963878673 570455447 692883049 354054557 963380242 630734237 824491648 384865186 863282961 901980036 935476219 245387181 441800913 171059591 255662928 785583190 798400044 622617769 989508342 878070332 953749220 592180263 988804977 183868921 955180018 789654211 896214018 212021149 958645986 746085857 895354329 359044838 798684159 357928489 544331580 391143208 763514786 632707627 956659222 213136992 401249741 288187574 468400363 436815643 821951546 954163753 978064927 138917270 826816374 73225824 112766707 647859 897182963 738973672 757629019 664632276 681109101 119920916 561009674 909691156 936987583 360568502 475133443 955265543 985547989 263890841 556131101 868489984 924747703 736708949 739067457 767718731 789597572 383950933 822578696 632834034 847225686 463112992 911435077 496786726 975805763 533139137 662365877 519001072 859477729 755907178 985838701 733366764 935772260 784252568 811824625 111885013 924138425 583666479 699316948 600556232 957485551 16705952 444963440 149515530 876465313 884151351 989193504 295953800 466151207 690604541 943501953 166163156 167927636 83118959 468845303 186514925 272101659 862188227 897223924 420833495 782682608 284620035 752141651 943666347 970889699 730651244 859537272 891229716 953302730 353740950 667782093 564044972 580387728 563275126 788211594 489746591 857217833 380667640 826485011 973197569 993997259 513121839 710677700 973136027 994984693 229298877 764191790 623986024 977278540 388810925 868668510 826212614 959054357 479868657 685670499 517127294 587672672 507577545 510696697 231394086 274178956 61157336 792981224 999769158 999809804 492808333 993171348 332703547 407849164 699584115 741084593 682076778 991828569 72876905 964474964 967543660 983623543 740716888 858125787 95009419 718767792 192326442 501560663 14132177 496439920 786832862 908281187 766632696 973478603 715404705 765016190 969124420 997432944 740043609 848054901 966602722 983104877 401008942 585618011 429322092 776814949 95692511 671525030 265592551 283696396 350401021 659029901 777491671 982396139 588415776 711336001 731789356 921029795 737236626 819583659 120861968 719010810 750347006 800891220 925451949 963542842 47335930 98717353 361431798 435957725 255934518 369213420 581335723 597878726 547731629 736482937 276842373 349394728 359289807 590183151 725794559 757811027 25334579 340657804 272670574 891829610 402126548 840292227 812491016 818542828 124372850 738527699 626493235 920294737 47757722 853681456 476445800 776005699 241686715 887945091 633178775 771377250 490548288 560636661 43412016 925612666 616652118 971360261 80708555 942100535 29554209 596434378 827695888 929064980 468721083 845024997 406683991 966749614 624232139 781745919 924497428 992957029 102985031 875892213 141595609 236598027 528474630 652049574 391412830 816069018 72923167 807394053 925606181 989628812 145257122 449165438 693179934 820110946 54825087 969178612 689933447 738582403 164447291 480940799 662489240 714831134 567781816 999309159 274817550 829357267 318173257 726612307 300407492 745742317 436732015 995382270 563238991 583981254 204070340 481181467 982617955 992523054 933327567 992202823 269756900 402951033 189783262 303371865 744194495 757518322 635902293 759896688 560657682 712099486 776252111 824066271 295232835 843791779 284603817 374522329 711683560 958548365 823850267 934654515 236452261 955389984 234330515 957528667 561711699 679926411 45421303 513514739 650569333 688036562 750286523 791717273 982724767 992910656 196692171 656050293 354578100 681623904 70906547 793023408 901489668 992971926 148297278 216956032 241887301 653559288 556782029 944921132 135185395 325566476 650379833 696261437 52355016 907241091 722995540 776853445 292347478 845531450 396860399 837980816 188134644 246003823 45139919 276817685 343625671 616749368 877057843 972010990 604973176 648312831 884067829 992309765 726406719 908332182 222799744 472398819 850841988 899006301 687305769 908751053 154753848 923232245 791378602 858292725 254103908 435989716 513365134 921289212 856639449 861371470 937411362 963083647 217413381 537855434 207147320 943538041 222572584 302815291 580320023 933890536 502309852 654291345 725914033 849464477 337683364 915901806 366665260 880403092 441836392 881070051 304777814 468777250 843771668 928805647 140708872 951643913 824620421 980244652 330831921 695424712 258356660 442802174 795375679 849851990 764857966 805410976 695525017 952623499 309268609 953358906 919285211 926129912 969896329 991650080 82702463 437195381 235756881 281141017 277945855 582116789 954496907 957964080 443816110 974937328 902777644 966313728 400201418 513932960 777388211 935007250 187662775 445882518 61313697 232700810 910551670 944892671 539244714 631072742 8104708 955544149 336273295 578661071 418170205 855931557 839589006 903563653 236821025 255708819 949731962 975760214 328282421 496663063 52387780 115380276 470254495 881402903 601168598 945177308 194265916 764394492 536834159 550883952 765233072 864837836 726281135 798780117 239511719 605654194 979128036 983195188 987835911 992363868 69771098 755616004 747251804 916530887 680549184 690719417 624718090 695315841 961885663 972204564 511156190 788208283 717076092 718770291 565010032 682087132 710541028 975021207 351007535 913943320 994068439 994818423 45268177 514393069 376075918 434539999 612132903 988878423 142814871 226370369 497542236 877663206 664391790 696324678 142520366 637325227 5572858 873825224 387319812 527391988 479627326 599577464 504073463 751166377 524960861 939893449 621226197 758667249 161918025 198535625 65731745 398404778 832542422 952823151 128923307 186089260 751534695 942944950 723015283 954265185 40911537 637374766 13672812 945298405 964668775 966596386 809088243 844782300 227390797 824510277 920480787 958454793 385501840 549741128 293865634 759493093 658728690 820631590 590028292 671040849 276467675 364348742 210774821 451682245 409264595 471489876 918925809 951564693 746005251 764492639 652182382 958427844 524743668 970783012 615656877 754410002 710302853 831030786 786300515 852637695 701536620 984373630 969690144 993935911 67289197 306865128 732106848 997831788 74754533 518663757 983159005 999858733 417021953 813568163 605765030 781838657 322135898 587118318 486422700 939275760 982434842 985502692 387874321 820965761 225884207 486988961 30269697 571225947 688150045 911139681 647192332 805932335 344243664 879953018 725342222 871004240 456608012 686664074 332327379 341667245 99164434 720909585 515453725 580548566 779129135 848713991 370643844 715102884 622888113 852563698 417097025 876415691 387003533 955991245 735067261 943397386 741868692 916279067 100551277 905407142 694229605 738320878 783483130 847076407 270741066 849396813 562668488 686571594 884261289 952992608 694913814 807269167 492748269 687580633 14594975 129797302 699446143 973255588 830188789 937159411 192260146 295512005 890574973 959221984 699680290 729270901 392744525 727543884 877683618 881908279 464892792 604735534 431227230 932480454 479867863 673682351 152669070 932184625 78651153 381706327 740012025 759184004 289924863 551051458 179250817 742845997 429593394 849754500 733940935 968865451 529655143 860867587 317672483 747011066 574646761 605932499 305180187 818624756 135397255 192235252 587891561 818247750 947567254 971102734 208439227 259822891 784270011 792113383 379126125 909272162 756888622 772451894 977753216 987345948 249853246 279518265 34304881 653532161 346130015 937583758 90635752 643087858 463733350 776161972 122447955 282987457 684736348 816869680 401302104 736815981 539179526 712121047 615440473 774010607 147150830 972397901 439927594 454609976 534270905 732450264 30814587 517413589 726511323 880984577 483099600 590716491 286636530 366763885 816690510 986323615 12899660 677424345 205405971 808614737 751411384 788751049 322273614 966617880 34500957 734869925 40967344 587754978 5802907 647405925 17039499 248540743 525942026 812469208 656473478 968483669 448311073 986946490 625928819 921274930 48749802 942146462 886339817 953783258 212232916 933059999 718408552 820998083 373777371 791800340 20015659 610565374 87591401 666555571 720792082 905294581 756803408 951029210 158836123 935782413 231541950 709958000 313733608 908211839 692072007 759486592 594156654 747495004 506905155 935956660 336161811 506140314 22865770 499124582 852447994 967864594 606307573 686314901 662201262 892307157 83762121 503725166 744466854 972324269 777073904 836734199 599639970 992692795 604175863 920285114 471017316 775460081 426301785 825180712 70580443 379425134 833414053 951418896 682727511 737888336 223500167 881439295 913794345 986390472 167668778 195371323 964037979 996259085 814809536 894116086 611664036 838548607 756495918 986597187 674324864 959216977 948960689 964986604 155689094 462885432 143625279 437841334 628594177 713356786 195148911 336338299 718880404 880704484 463482103 723544241 364161713 588605355 753767019 767065225 681497954 981750030 728565643 978370712 995081504 998273989 452464762 516731402 369931746 714567042 400935245 429286670 927428866 937348184 767709056 852528683 866968995 927313331 4543026 58060823 502118027 733497037 330636937 605788220 39518621 665597162 190262416 348841145 966054683 991726957 90106712 213719490 777532175 895026145 120998843 851195564 227252914 775747130 65028958 353563327 963704452 990198599 675464462 944742627 46098208 806455076 597822836 665555712 853966335 905184212 303484428 726420592 862597079 932312176 60670014 745835966 420093146 646081954 914214795 964801291 891626182 911731583 692087413 723080308 918824584 971948605 987791383 990671105 55025194 215330768 150369614 741223942 339990945 756814870 69759023 525772818 642551230 656803305 39990803 488803258 395420378 421456941 897549143 944169875 344889815 462095226 996271455 999656660 11408670 953861935 785297389 838442235 359207173 729727379 382919561 972194197 468745559 631055114 17161884 74707715 287492365 689635148 699797551 991891835 38477240 399111985 215247009 611074537 573674150 997458738 895702929 981163810 10834875 40838657 933457187 937009722 587873809 605042210 368670537 482980696 646781608 699857065 683239941 765814850 928986102 971335352 611206324 895255002 858618798 933690459 675127981 923701241 75529766 991738303 963635731 988814672 483185986 548720014 601867454 618847218 702205824 847139951 648023669 851305838 749952348 840149338 694291495 834553222 856238445 874980928 527867041 546874482 578772334 713613702 299108947 794198735 742824722 861862203 585705958 782205218 9322670 489990205 471747939 525420117 49203556 461901651 768517033 993024133 22308813 301652372 228566192 433561222 151854520 788792846 21329535 343289741 167580148 528434750 152312108 813053818 472509574 998360217 702082798 720847650 919458942 950413554 386216296 600844917 763824239 783322982 849192208 971885275 150594510 666084828 342029199 799623697 657551369 693923587 652613900 796130265 590579211 855794178 843083521 879899347 865311030 875905873 169428975 745513295 454993512 787262934 194443379 789916857 50346640 165698872 515132882 651533612 452390893 502732242 288048774 814554180 941591022 976735671 27380148 395813257 389852949 912560667 455241677 577843777 783928437 869681491 153975015 977490668 797875974 957154378 60183674 337092441 662722501 879072411 876234435 959453807 44306151 457835589 320836782 486251115 375761847 425564567 999212309 999989918 943904316 963008348 607907196 976517354 274378738 294390047 315642328 573018478 938502483 993259241 851771957 985081841 551140139 675248643 148448704 254020346 110391656 306546659 631850027 751633666 864018074 871128089 797309673 898028833 910072660 932162916 515247065 519279286 991413410 993625085 707816930 870108616 50632097 484471814 273555946 948465250 429936987 709938918 318382578 657615651 867042013 961878613 652106689 702829525 657193395 994323607 934861791 938742698 783198846 838989552 382624424 877973228 954306744 955328468 82826012 472226139 482103822 926051063 682520223 857581969 246665381 905780502 787258281 802350310 893093718 901606232 363879004 432911898 345454736 455034615 6742033 515619068 203402352 742955244 695053546 860621397 144812827 332242103 128016923 904694106 227275945 553919133 257073097 850595764 445002253 461143299 400546711 817604052 77845724 774385824 937751100 984154953 4676106 905466382 46751696 723863914 89608658 130942159 822193455 941618809 926393292 956999759 884897289 977776792 345596272 827761575 723707422 772246519 145969177 733690175 341937504 913474695 526766378 935515451 745257547 761173496 918767838 941099860 199443719 931593376 863405180 975329965 886283734 932994372 677589206 789008964 461934303 581459989 822208132 854900439 529354987 967247536 702377500 753015987 758264100 916560395 877606823 960393012 309763612 836044087 577095280 927576312 144507140 539563871 550457554 775814464 636571149 914917684 67648771 725975084 220672237 498233193 35797192 901898722 188091349 221908622 692634435 754370026 470007389 895880298 848803879 906416009 802841666 945918274 346793233 477691169 83112445 546078176 804796576 828906521 295515733 671080724 848645456 963338109 923086734 958120454 558476605 768833025 655266678 978221681 982181752 992470171 704448900 935072994 530436776 774223020 316328667 942652577 88395080 928015526 763222181 850901491 665810828 669083508 476414015 981915798 513098434 789571720 482603070 598443478 633495137 737199639 875944845 958378701 633933976 964718483 738255313 911789778 270134528 884933633 404233664 842369445 310586452 770622938 909760619 997034882 178194894 447492833 738096065 766253477 427496361 803255415 170964930 886675592 841162980 902143669 504236467 852222278 155022704 659739672 58050527 954243093 957404886 977151139 252705968 577295680 270510115 341889197 916065562 999811283 513409023 670929294 140295433 254042069 437834491 472352488 925350735 933307979 952712318 968713761 3409834 242094641 56132119 948753005 505547208 942409764 628655726 831847048 867779595 929659567 196049572 506168969 128016148 484999286 171265897 869057123 914312799 925419804 581836215 781503180 271380675 534655219 532030449 901509949 668609923 940680468 50184160 389854893 870412830 951295491 98890331 831328796 574665196 649524181 418440809 916665135 872240951 980001475 160179914 447782569 842461888 946971124 433364037 441043348 876236419 897232833 721983040 984850625 968984279 988364754 574790233 798692177 908811033 908811090 333664587 508622237 564041301 897681265 180645755 385371998 571051503 606866046 298268297 697890437 506701744 816390928 749292176 902961695 444221472 621267885 502654921 612194492 203417721 846094360 621736914 938618927 570655647 926185116 230624638 528686334 790805394 821021173 36615911 549468886 122357748 717163544 244080258 361494400 624682229 773748605 323912040 710670731 168895636 306982176 835066532 915674906 875756631 911240759 288451575 494298054 929376075 952768849 515161866 836427308 680813750 872524728 412810887 710558099 265774912 384431527 148117027 826067843 498758595 956675779 48951693 287607439 908667436 941264415 252553131 433106239 761591845 892936201 972264721 978655285 418723364 872109375 516924772 630133313 124394114 761724211 154770056 584261398 863722927 974271065 311674836 921129594 381141642 419845394 553580710 855356366 172157688 352730468 842199896 921349145 653223090 848776513 434982535 650387387 604043251 689277390 185040172 647006546 668891982 763713850 487897195 643552281 690716004 695469972 822476427 855829687 783698883 796761187 260236328 575495294 231822745 999127599 190359980 343671992 555329469 703793928 211616306 269003890 264943426 545760968 139105384 630102457 414391122 510472173 181049709 977117382 653998751 837667110 506451427 917296809 924795936 977993566 734647662 825037955 336957512 445111036 466967149 997560626 736451525 868322971 160342863 742578930 105670967 139767083 507913113 624035426 843495605 845365727 757940578 841710471 767102741 861641818 647963388 970525981 974944251 976907864 862848225 863527061 794449677 989433829 274282317 883779628 392570129 529711417 419034940 510463858 512596833 557731114 568720433 867470008 219194964 808975369 251709821 547639637 999178376 999321444 718322850 804578672 227269626 643344826 523627456 620674447 4086464 187504117 343604730 828233168 659325994 933519684 600244686 870847008 134827411 831574755 317500069 501161529 237904523 633626720 922638791 934269740 494420320 858850516 868788347 873095480 123254 933704808 696302386 885437349 78134925 171817472 466153717 541561967 2484924 140977824 342563776 700101384 677681016 919787482 501654492 965187731 800884691 827739132 8743015 758502944 484851283 502305508 488590666 830762986 486827152 644370246 203981048 980264003 106167631 237886028 867635660 901922853 363151931 603289086 16764699 876624898 696890902 744371985 982247588 995161873 660815597 986044132 69589820 950881747 233783908 497249530 771273424 880106291 551532650 577971016 385487218 411367058 578449137 990063892 809547475 947407784 214459514 596655265 148689246 741790527 733440957 919898925 725541647 814026900 277367225 475191349 968619358 980229187 297373657 843876500 3580554 771353884 999901335 999921010 389080052 658283029 131288494 679262285 293974717 300777828 665236188 739032258 842233819 851860795 231265932 499004410 791273250 943963415 232466889 918846735 571528953 576181642 308756603 939730789 82807841 472860172 853006563 992606841 988798753 993065337 224395733 610937567 381227730 964827127 356106392 488696229 882646335 969805144 964033126 968688383 969427686 978063164 806076291 872211818 466844003 700996383 167295232 371202426 536187983 838370481 787504409 791482009 201643701 524260478 50459381 784768941 640558452 850074812 531195411 599809838 936150971 954618009 200030336 309889267 234250537 724267277 83003716 482433273 177920671 848576357 824751085 897627888 488422425 507670655 99097381 838639580 986462983 996285248 676244071 994065136 536300870 913366610 460890564 964049421 748864915 960292648 742931719 807523031 382944374 967016199 382745684 807250975 738728398 893848128 662876982 721134137 527990805 792507804 348359503 993722934 541593636 712546230 745475689 900311837 800216968 925708593 301789503 821706948 555044566 929218385 718307890 940489494 671946392 946160051 437737741 541798300 632419955 697938194 291024111 656543200 641106975 642575324 925083364 975633164 789309915 991461076 218346901 310136100 283237184 863214753 56319049 509594503 1173825 341654026 366224326 396058847 123329665 160989677 77058825 280660236 319308302 844156355 512937778 830825383 272763073 748883492 15671398 509598914 209245930 435440101 838996289 981895413 591052425 712903867 765612898 908784341 718070562 910634091 472863500 710860960 815260338 889730481 631597481 777997370 581701554 659139575 91632989 262511287 489887422 570337133 345308671 850172261 95340177 762431436 293727520 931349747 3248390 525921561 435886279 647103022 361406113 771223166 947486639 986827681 112480359 762317227 985450601 991102405 317004861 726566994 374672042 391455649 228041095 560342029 341183039 441605641 169506559 999582617 549144642 940361735 499148481 547661860 210064640 796894051 413514524 548209759 485604637 643161782 643746263 717117264 146877880 997794963 930498867 996496329 94903998 155292861 807429802 998633409 705349448 818239817 951927139 975268908 312095059 771919322 181431805 360832336 945574094 980976559 676670643 765266155 363427023 865080439 696170075 921142434 428990318 811998415 399129617 717811331 54264354 96443548 307873013 638749828 574348492 809937906 623424971 771173071 490181040 734661014 11650862 436834908 68634476 695453563 386519857 701076031 479562118 879122790 672989665 715451021 86598557 360193888 356712460 569258381 194898858 712350329 355589054 946995674 648783974 824327631 407344465 457554489 25769609 594228275 780053799 991305641 690093284 895053148 148504588 910518077 939083830 961443750 5338026 330498999 133848484 142261100 252910641 358606193 814096454 993024959 285512301 729682148 964063266 994588815 624334391 896022418 575027969 825853888 508791878 832924703 627814474 763407810 846411464 853825558 106159575 165406120 864675245 944460294 293504809 911338546 850541746 977815636 222599075 903351843 225357404 816290868 396139992 753688417 687544406 714458974 228378177 374533942 734467809 740237425 431995872 826380363 361104574 368423799 930346856 968744691 163858516 659869095 513468711 773801299 505191388 715713823 168036044 739438829 648146409 843445812 460265524 519187521 807139802 834284924 956186938 961458424 838635217 954120510 776917527 937087834 83185350 357268436 982647529 983102443 983472908 987238183 337385204 498704788 982619963 998011942 948965309 993447312 16478763 423312379 152454593 592028823 285507711 719430464 291442970 956799063 118287019 479835704 407024027 536009676 350059529 584017689 257886636 768391717 986817887 988424868 47048456 808832803 996312424 997805122 156453931 601940087 417330101 655903565 229043399 931758087 679912996 858718157 193450382 225605514 382182714 795765950 251027738 317209895 899913404 986473590 586611025 886329770 587804837 853047154 759877881 784106093 813312188 957153231 575624017 986703701 17739414 732239603 784923983 886232521 600515111 916864297 433709675 571810525 755748282 909932182 42279125 603682524 71806596 649953463 888575832 957795563 179659264 703649854 924196889 990249923 812075743 997831659 539551117 666085737 625432908 836531335 260102626 941453326 383630212 644427495 652078817 672942959 215856422 275464644 983993528 997227274 70083907 579014241 933365578 955976671 910779257 976074341 615981499 627303005 138622050 210143627 708512430 869739017 34080482 470955503 421719719 462623007 772344673 999127061 272703214 350698862 307614500 896990291 503722339 831022933 85014054 230615065 633824178 994364941 751373629 821192611 878647012 883250464 291665756 708485580 864147121 868034686 659280171 809734813 432073597 432564113 966068808 997195392 550205452 560156287 863635807 970336183 934701912 997111078 402689665 573122933 524789042 964809568 971951857 982048658 303723143 315785439 111719664 460685918 649981321 883766477 449613694 878492542 296912899 489312566 153829039 505790933 269998834 771816913 440823479 460957064 116867270 997090962 825797966 859565632 943329581 951123504 457912970 899823480 228658926 517250267 607037151 720276313 926383213 928331895 784255778 948094117 302841597 586380940 347896151 909962534 86873960 524967829 662444837 965158151 684948003 997193450 973460594 987146840 295082157 584438707 927175891 943957914 694732544 989387079 446875270 720267916 490716548 992525062 389168833 798507728 193235442 669396978 60726308 189044433 999572165 999812024 312191022 318833044 766026022 826566598 299835370 832087543 540379199 921629369 250363952 750222743 112572574 636220627 860905942 874763563 253269671 508578385 39434717 68509469 147294374 588505898 586441987 589707679 819653319 877450564 767191560 833090004 36614385 922505073 33749524 915516811 898951145 901092384 674748365 919379557 976064901 998266266 648105433 731116174 603345104 861994864 886695923 930944803 837447377 857986582 410164707 916273752 238800414 863756385 476458327 580278199 516948840 765609895 482608259 528011792 104928639 814863504 235946453 268656055 924806970 998717804 68851272 314738085 16471910 993502041 160261968 720472250 919674206 960214554 295154799 596535788 420873277 855769100 643918427 866137253 446632494 934706578 746836009 932436644 874782022 922126523 921549537 981350841 760515254 882466571 281772397 891154997 91822044 325672561 392663823 792450463 200098386 209330520 215740576 477794111 626314132 942158172 353458113 422744926 857519125 942463994 199197906 753772922 475953452 859422033 857453529 922241126 827022082 975797662 428983290 899760517 713309333 993898804 382699348 423812724 72682137 95647056 740388807 957017480 193606957 657700808 983145838 994762592 720673817 776512204 831072966 975903446 85262267 552507833 54240828 470886358 644748323 772175199 426897119 665829449 998123334 999293416 561882665 602846094 904608723 945149812 105600345 428400044 400714541 819199051 179377066 875612645 879478697 939908229 753262335 984258241 570246732 966799929 397401516 898886270 999747378 999751975 145937089 159012748 376412245 530097552 284092626 635394805 890318930 907569757 750340640 762978945 692941285 987124224 653677103 709887468 763648192 889956607 543852797 676070177 878643310 899756226 704136079 945769296 853553791 979754811 977382743 985028000 879804229 984669841 886139877 917020843 675471494 941558920 954804867 958138013 461203766 849769586 750939112 918937388 762828089 773207177 938493209 989559476 245577655 423702678 642778194 661810978 250001609 775224996 648659303 951108980 748981982 887201920 575805559 776642273 134655771 190793086 244364989 787540723 133160776 206412236 928370703 934249193 396338478 605643625 329924487 336341377 628102051 644864805 999349107 999405913 268178902 293928078 982408589 983233751 842373930 976745689 199734421 529621828 745909069 938484373 225330548 789889064 677433741 900626543 678083532 866643105 412626631 656049795 362400284 710015121 48220519 530585587 826523981 972809471 153623263 726582521 170941621 500552857 68608686 614212295 673459477 691598290 803488482 961819680 969429602 985902488 270852555 546392654 359571501 910238053 432181445 967866290 820675844 865567102 227677971 442944855 462219856 587156485 732617697 810591826 963140329 971262158 323927381 382820302 842602250 859016060 862822239 903835206 867881364 999121648 429332680 737603394 355055849 773980441 725234696 991255169 205558210 902383257 140436086 734986683 263698257 945514826 49982053 882646967 418108270 925614224 972892502 995277053 43672903 455219483 160015459 888779013 167774224 408988497 958017005 975006050 147330483 780811628 749601346 750770298 541306549 748760688 133895791 970492960 605522968 611223051 599829257 665472987 12279374 768149896 419807133 844448060 381994713 440998568 171212010 714096909 190679250 649244310 176121633 992729754 387189193 856359890 601895143 630687928 246084584 691937413 948879611 953731762 941616839 952307263 966719943 977838371 981014516 997524692 248034773 976199342 984914733 995261310 927990113 969778485 220879275 312106834 406018721 550799915 510137390 961490979 702863882 924428275 501653658 570069216 70988130 110877499 490967823 765633543 959544233 999948147 580427449 849508022 187374876 854132672 643906797 843789861 169568967 694947465 201769139 696690907 606335154 977212320 523962562 667549469 790270376 801354568 468519726 516494672 4915947 114361293 79510698 659196654 232041087 292678354 586935930 828238581 930109555 998812919 296954768 595648189 934630868 952547884 432897799 731839682 971485795 980205869 207234060 300230537 827229107 845313036 177498640 234502012 87726803 686211351 863807997 924901095 855882733 908095556 434618175 934708140 559612124 759385883 260616620 590460714 910436156 994642893 84621679 844058050 674239543 971182182 848656505 935508520 362646704 722209791 462309251 807820133 946572629 987397673 635516665 830505833 839910261 856642940 832526087 941417560 473782125 974874510 781906293 902007640 891979254 920658761 948298007 974115615 678424174 884605124 432408461 621136288 449701974 464397737 675383464 868096981 828964810 922203446 329458941 423146361 989115340 992272812 190242144 955669068 319307271 352884253 733207459 903774678 209521378 289017069 670859558 836602882 80753566 503983545 185930231 682090366 140645701 987568200 422588699 594245009 573833802 758847780 327289419 888907300 272815247 327063665 766193667 826361163 765589156 889339353 105541211 390630812 698700983 724955999 549575641 851176387 173101653 704981443 209473098 551328182 715854521 856364726 744426755 911059265 192530647 534182532 267115573 457370621 941784903 991400121 969516429 986282954 175022939 538866352 130318551 430603698 298455863 706062868 22249015 952753742 731309138 860080769 644960221 825151194 477742726 713281030 891150464 947946557 982420077 984696609 75311790 528003950 506875631 870502063 1270608 977504180 603864633 779643145 815666578 856136797 519221882 972101108 757216689 828419799 851686509 899411153 838071047 865470567 755886501 939419793 756959864 966398707 711348823 923442366 5312555 588463759 226546759 529067713 655105602 838764305 34522182 69106754 107303654 195416547 899386638 937781747 317804193 797239405 97880967 452458906 356027611 698022907 169488329 449598177 855101908 862648886 561753981 817664684 475160247 877627666 852261537 970312534 275942491 404791107 703923331 893353943 364583719 966669544 917697538 920046241 431264928 888103852 483506183 982487796 935243875 993262842 483402507 802369137 555616442 564327861 346218161 992569676 602517362 984296574 114211433 330222724 211026860 806206089 742095788 871049382 255430027 872888743 633357591 802187203 906588593 972461929 650596255 759200472 235916248 401613015 773618879 794757342 828412733 975966294 426233317 697123413 410857970 884167427 151974979 876149747 665797375 870586506 939167927 948830641 160444261 280652856 409385500 738492800 778234302 788342556 769936094 961766221 976933897 995882610 717438497 823848128 659889776 888753197 406823927 530254702 57294255 397173944 373409669 719930145 47521983 971058848 714447563 962506381 852292645 973237206 686332750 701962888 98248964 951361492 453068887 936041462 369508045 472810023 659491709 704920789 348698738 424290140 469276329 852518924 46231988 519587365 171043147 899161606 346094878 639536132 224115710 601976877 613879892 888370248 234335703 300726551 439032287 992157760 240569733 476072862 84507433 921399005 197046729 794940182 129751793 299191458 475229571 741601666 652485522 660800110 44464044 683612646 782756625 973605120 262507703 862642806 148513122 514793983 44323753 150011509 529910124 831379167 845036463 994442055 367874296 499584964 721118220 871166120 309473768 320294938 183574519 882746402 947538868 951548559 587038678 607145747 917204310 933964910 329892097 833041044 449000148 964297616 126519030 894289897 120356950 586333500 606790856 753035307 102633144 936367043 424213299 625967183 763266834 931502463 795030204 915659128 648751940 875260604 696972768 763774481 941840033 949445562 759406965 780654602 16758407 348221178 786320203 794814598 351242198 731390548 398207791 842135829 410990794 619689468 122686177 209120904 117217062 590379908 220501389 501589245 805458411 955512861 600769397 835499066 146400330 623820082 731903823 773176879 840848072 914623002 540165995 580418987 194788117 767827201 235455272 849924619 647113224 892221376 704601162 949245512 111930044 805180729 750281163 838446554 465371506 959861330 49631210 626397887 277924384 285430646 966861234 991911663 289679054 915719457 723745087 982517273 578262351 765219669 531973343 814760163 450731600 588018055 355375403 451148829 411055327 489916489 179663353 426525801 577205660 961583424 676854757 728260280 915004673 953101913 795061050 971826497 703010115 764050971 401727255 513516845 384450108 553046630 474377625 557507833 151796005 898086815 284550668 406422359 717535761 905207426 891921591 985371915 316078253 631441261 829751861 939618776 390354004 786002715 305021527 737533897 240477442 937537379 467894298 731739827 517786505 545022063 564571273 590614086 366275091 479972256 936311577 950192167 743458621 988024849 172425910 892486314 442293403 940844047 576091192 799728784 107960267 240919020 693039002 714067878 346468023 913407992 867278410 868294719 7850930 847760155 337069082 861656858 295616893 453874954 589100152 731822192 439966701 919610238 586442712 739977575 621310959 901034659 660161297 966314401 561532212 963370817 569231962 825242668 63678925 590820762 50825826 537737173 874209704 926050388 692350553 853307946 993029797 994415422 193982574 967637590 114835603 604147973 877654684 934463769 902226726 984489922 499800660 802419065 150271272 797328762 976011677 978790315 486687116 890853764 507329424 954535457 767063716 838371933 846606187 871468352 126198763 630955516 410600331 614048826 799414659 903914772 789740454 996765476 26747478 543883751 213876352 952402437 476878273 952576353 764140577 911549995 98458107 733491878 711244263 857996784 245853971 453227750 155428903 634471383 988301084 999053119 187228192 232611605 588251717 797241413 190048575 899056732 491208666 547966864 646645793 750162072 40202276 189115958 96428748 904618629 132962644 825621952 425003339 750546072 352309922 777537500 157330264 884052729 157071944 765422222 731846906 893066836 79194901 933887455 807877318 949674706 566129345 776562576 643499833 729246458 262505087 591662692 409381080 762254362 738006588 746302879 121445323 581420716 928140640 985546181 519850026 814278503 690703785 752971320 341857717 637213007 482348573 691890408 586607398 718530224 617013629 747783444 826598474 937407885 54705257 497529677 563437815 919962815 947496209 999701905 612028985 798492018 60902137 493690964 466258564 962419892 488354153 670647660 464702346 830524357 616135590 763187665 128506557 742090303 132234291 621407109 514995314 635657115 121065699 939893939 978486878 988246919 121406272 677412050 154113567 445894305 273846360 678723323 175357659 427225898 415407049 800798630 923294613 989647727 398810508 401143004 793003760 840791319 654918117 682997803 102696631 445331969 90117957 116550758 123274620 612716551 446168008 924951663 573187801 965529319 565321801 827989080 483373261 505081633 541284958 754092943 198285862 855749778 226428587 370063981 475606199 485447484 620374866 705607407 798150227 885059577 650110252 702132019 133457550 331952058 534844567 777709595 268421636 965604783 353447023 416801836 414862958 629940289 266620357 398708123 734544580 751911754 678511585 993046549 551099776 842248612 977667459 984725523 916557827 940844878 102903393 431516974 848612554 852815754 661579265 765658193 873347854 887739291 253061186 968533839 606527691 768863115 484596997 663716881 976244597 997921745 192010542 603631897 308733996 712821598 794444908 961955119 709471114 938535886 863429531 987177569 651194792 900930414 417599603 850707809 248785646 372223998 340866549 930435200 192396956 412811254 768887699 967660861 368266265 630938463 865683556 918430571 897006946 951234352 94238085 608786103 872797532 962928094 477668795 969268528 1434630 821313723 873250353 992298152 249568848 470200385 425543036 841092312 995764379 997239048 823144203 986650553 917498523 997773361 855800080 881246565 8432886 331672877 490121716 857757775 691704896 976146014 970983866 993078062 181889040 727229377 110133211 760837438 119948252 616341314 84558861 619435614 993154044 995566608 368080736 952549822 236770697 374015076 131023443 521715856 77639279 316769483 119333416 573272676 166072154 761310213 598341637 700699107 606878919 882199865 451650478 742701114 443658653 710571283 300361293 814971330 66359731 405668334 888394052 934721889 629038485 833637510 955173028 997493067 394471899 770741875 737675713 933305048 34088801 354832662 984067205 985848928 170531941 423023798 738244983 916522425 93597705 228131133 565637010 675326132 3987387 152591581 839046063 922141795 889560522 943918698 196149052 597395189 884314962 955469430 817434479 846573375 894087183 950255772 819496136 974599874 772255567 940008772 463426055 964398457 243158125 983402071 691173815 988525481 864152644 900531814 154366419 924465238 698305624 958911364 635611332 840708291 26743513 252241204 944391767 978393383 636149692 908815888 143350853 862125822 610667504 814738822 197081999 516079067 844425051 874502161 817819034 839309000 178185901 441036977 270594893 511124693 288544732 646747912 120236980 152339910 939766961 943631815 538759914 585295385 811918793 868029719 510454439 643756316 82165844 433792004 477126747 641048558 104278555 458028664 838207427 916901585 931477719 979454582 997604889 998603612 463135519 727765356 902665071 997195656 850996263 962863227 807728729 915669142 706354769 854907852 45774265 176318199 727166775 866980969 816461428 987924158 858520441 888451716 516598814 594906857 98211013 612299429 197856482 856935807 519979923 649167109 517824985 566539783 864276586 969227020 764092514 880863515 769536534 794394426 317104488 948534305 556388418 829214650 220878139 702684470 485712232 894331643 394225753 786528363 659686244 885748692 215748892 293827293 871729673 883817897 671209569 995193066 428861723 505984863 733921240 805730713 292806867 306647917 609106355 840931625 12339588 314497995 203566220 559910993 99800410 338235900 468121707 871355568 402178384 945859897 731504597 842634852 5328668 474934511 205821549 867668248 845081766 900619262 640559647 909590497 381273787 487112263 968484180 998978993 683068772 717978583 725935859 839548105 749414950 886288844 716272786 793315630 485778032 783632636 996607578 998265959 675338117 915813967 343100945 380294882 407823231 828998882 272974007 377504656 320420832 611465158 333501807 939517465 878328666 956135616 975451421 996164934 929811513 955471016 51540987 947704790 539042206 948793209 110162485 678293753 215610551 324496672 641495493 999184866 168996573 382308694 945692006 947549651 214404774 696866961 965835363 980191541 582779175 752011022 582982305 598656488 911307970 961423197 709107271 948619651 933526949 994531716 801385286 826838212 713896717 927851588 50502963 932969967 498538729 969466800 725185897 885625428 263823741 503001534 62200439 648574516 588631876 763091794 81683058 896408342 872296543 937156455 787943034 867376558 733707069 886541238 57070886 684676224 558402925 602830736 706582554 940163547 149337727 752159539 804967878 825391456 287693309 971774659 656541843 749858205 270976889 512689494 603058837 810374628 439165842 863941924 381147247 863055246 72849779 868018604 919495273 937118659 222703169 675791731 284646974 981722308 896751518 993869598 433447313 715612363 41892824 446108475 657331382 726764537 357069040 748034365 826991907 845129331 882712761 888634538 428463211 867978931 839999814 933715877 358503303 480407419 548863359 835317116 274146436 935241789 493102327 749211603 868087760 898167659 765410014 890208180 441888994 946501242 816715076 818770629 87480705 998385358 994752092 996074644 236469227 784369922 79068925 544798601 499452694 595664094 387871077 774922158 205911280 713266726 283437828 696815275 905643903 921762974 507506619 742766074 859527012 868517623 746151770 771288039 964608439 989163250 393896798 603832524 622552482 691507326 654495028 732738790 259623740 953640633 193794437 313474417 566523372 822082949 567595263 908478169 684918640 974277164 553140276 819793990 974107725 983124275 679955906 709358877 669496451 910430077 911635454 913652499 691759295 860473981 702528641 718485999 591806184 666959580 878127491 955602323 640656204 987092479 624668521 866472994 376586296 722490091 95254873 157303262 617073605 657281643 947370871 955438612 18667980 29230715 719318993 961357754 73228874 177599576 527764866 926687426 573168467 831990067 604079147 863696559 792304679 858586262 541434102 742170574 486613335 518644931 307507524 736196728 746097648 771989384 862124871 896980555 479227316 835730196 314261289 641088130 12685172 749167813 223229016 350757629 330268827 382559065 479181195 622030784 444402666 769694694 612405975 879477127 155562640 156688751 360130152 800160140 997822334 999895675 534708819 656880459 2459898 144497747 999666502 999871850 206206436 862529216 776545046 855541486 710451307 948271166 759747826 792867248 500570813 605273350 688961354 893032045 314029840 721899505 308647030 931483454 434505567 589818276 770605490 838571998 435347419 546909080 838145626 848936462 147805381 292948225 651185154 896818890 208103550 496748677 909611140 947357060 65142251 781926094 612608660 756971169 902275610 964471539 39571141 760615309 684300062 703354683 793574581 894633193 859539620 952684680 914919407 922759222 393704270 792288084 785307392 921559799 38797015 195424896 856736138 937071902 151680289 399397359 376144971 812585477 578071571 594706791 696079251 761114479 280997200 561968438 703393856 916084992 654377947 681012909 266857443 844044695 176868398 756368008 152762210 692942747 266857597 765582821 944430907 957168461 349410493 601525649 361826101 810369832 393865597 483545110 836884852 992569880 870809505 988500268 226950922 858843124 854392742 875194743 866878441 979826162 219726754 625895472 531707572 595443268 65083172 627935236 645182324 953933721 307272803 661172425 639609001 677176179 53342928 335959621 193414215 731857258 999129614 999272947 762424844 814291830 425518889 875845435 198649883 263326589 278618742 740271858 713434539 870545245 857486930 991316404 259560140 770121601 920845409 935601038 693214172 909405779 358099106 637386068 157792144 234814277 16551109 642258907 62208955 886699370 202134896 838622192 129088494 757716103 348853357 746205290 457396095 875822378 458510031 659211739 257904758 796411888 39133561 341072373 886229857 924555059 653527966 678309287 106117394 345481438 794185278 802537319 556259634 710122253 768777177 898447375 685504095 895121283 142779728 357410870 965455785 996835262 372477724 635342549 38194244 53144615 123421149 779994614 556829155 595493066 369648269 837350376 612945174 619554080 132688034 355963521 16261439 743804830 280668637 295286987 623354733 998024138 830435371 831534650 172726058 985847177 108006399 438053173 953012705 966515115 819575095 937566989 658402168 781823090 217093319 493484826 18532527 314341024 11238905 655898380 434780341 468157131 953830206 960708158 552115010 963846580 896052914 990499923 404647424 472706436 792330266 906219284 369602866 767960955 978446989 990887355 25638028 115498184 360221788 905937958 294214770 420139003 511398794 891408071 973776616 977022618 757559177 790049271 268563880 516718666 53459295 168252398 379757820 705874460 303353487 528736118 129704072 483283003 106692150 548281925 205993551 940126641 808105067 995523906 450491505 668365247 869920062 957335052 289512010 879367856 32060522 761046568 522286799 859619181 294475524 781271483 358210515 577334386 20993690 376157956 498562570 919711062 101885464 146162821 658891380 895193597 238849142 865915258 837623490 869699236 252429656 323854511 317410741 755503383 978829760 991205525 413710791 570136844 970139741 977826471 438317917 964550758 846952342 910206829 463551326 799881461 563016567 601924419 504255190 524822976 844203179 899062834 460053975 730873085 693338964 997074756 250617813 386515061 253014609 329495884 961819254 975617220 557913648 643775116 899208007 931486063 916344118 981903294 332126500 929297644 167467134 580661077 467098415 779165254 741686982 904996585 147063804 761731794 851164396 917857317 327821698 380639909 645788446 812094863 22281978 988191263 694949347 706390716 374748992 690914470 474568784 539766465 607086190 738881339 996991795 998593406 551801357 627906760 581191056 673669662 549718696 797678939 590874801 931190138 198996854 987419792 227168488 587389938 499616300 626506325 2915769 265830180 687671399 880658665 653374217 864933493 23130019 217449833 343289268 864971096 537174010 736278689 384474986 447410887 862710100 968532832 365368427 459387491 605596607 984319997 125075080 209582826 583906441 899566634 906770613 950120934 537808794 715241214 417477057 769559429 191379880 559750393 769539165 883609136 88383515 722695451 353334083 904359131 762155513 985164768 770159784 821495903 324951376 831010116 575910600 625180887 87153016 551341284 193045597 291410988 695356469 711285175 741709363 937113291 166739468 279065788 333919884 945758253 711630593 817270286 188672985 852940685 6080263 806530226 778841288 973824747 498914093 947882657 362754910 654700362 164767580 378208302 431642880 713739482 619508523 700008743 651527629 693546416 440690652 723032228 353278745 946203037 149005010 365678368 752647990 789613148 462546636 952936848 562478913 759813213 296159849 853055441 608530105 867949864 755460980 781946911 172219333 584567797 949818070 964330607 327525987 647634773 328951458 395112639 371260977 843611389 339042899 921218239 304043464 551911903 757519251 932278871 696989523 697339659 721076602 766902635 739881034 880991289 262169267 630090726 266697507 443796072 701605654 806186780 438869326 502155817 222965230 328584017 684262477 841130824 968398357 996654601 705769137 941715509 208171459 739402607 429139036 823574174 161575170 339488931 484181345 749158092 714364342 892630542 867804412 990164668 737125737 744479449 149687938 857055718 727261968 926499958 288476625 670277242 786223287 942048404 839460044 912588510 63854178 833008780 283370514 878145333 380971227 877573839 432587749 566140529 863145729 878927786 126066821 998428438 268268474 501252763 438940111 723730840 88425193 469143903 844153915 892914465 363759069 484368880 688686627 903708943 30714130 237501017 893659904 974739067 623609655 651102219 485674689 918747298 504755363 542876757 338199311 596555685 231512566 659057453 275707294 723243794 140589448 825637562 234905912 768813746 212822400 287613808 259159351 373272804 618689289 931251538 730705399 856299176 802125268 957528242 471334251 795173851 231424811 632111507 658646690 976830752 274481036 967654515 330491369 538500629 261592056 625056342 772433103 909069734 27660648 108699270 850710282 933034108 413603600 861348558 150268615 626351665 75270921 141007859 582232727 679702747 892449330 991621863 996522225 999102788 544496288 928863950 963633695 993433367 1818347 845485335 438748354 984369228 949631825 970483676 537219434 770172701 921977393 938589519 688560494 935798231 768243384 769234016 455466105 630299330 75254151 624489639 384586740 716032063 156259759 900536312 679053196 769980883 298911975 661810443 66348969 529935742 13820563 573592641 556667998 956121923 545528533 609955427 208500576 228602416 359316935 886620548 733209958 927695873 588226058 832203615 645914794 711938896 498186870 644763490 625026730 748151804 260650704 837510860 474498095 815026746 563428713 676420654 22349433 680078563 441768031 596248661 510949682 736730257 409069860 428051731 214573359 667445328 976499113 983440839 274517398 823916615 470116642 611964277 71583955 753801918 987409002 998978834 761599079 839855790 29748461 826323308 123653723 550424948 947447068 986381753 743820936 901394601 426411708 915976061 583023679 922593431 889948834 987431637 217591419 314930979 734847853 936495394 670743723 791414382 272796902 948942467 676428604 735177165 102616140 949147270 100498473 102011891 437723650 986474277 742273283 816276664 91105415 822198191 564475166 938788290 919652468 953564276 725320378 886409324 745846522 817000546 429861983 679735163 630568470 979035413 928098366 987604601 215782710 571608228 822970020 885717108 257450617 640976098 435928603 899294668 29950061 888621506 613171968 685495304 28214561 403045887 239546348 554310847 577710111 802809416 4288417 819906408 582747971 739587527 436643253 711887742 253258427 342566336 243709629 250997109 219575548 510839281 314828046 933820253 195387849 617658942 282300270 384254395 609702589 691453870 258433104 459301402 996579343 999311147 107148681 527127468 535761713 892351544 600790713 606482425 83081443 831905987 214310609 515288120 216784185 303258292 958991764 989422727 482818079 894832830 919376382 953501621 179610276 700211233 276740692 559450219 522716052 976093880 398975977 748368301 749728018 752530870 600907730 886619962 580073442 612487465 858273902 905501803 926358946 962103728 565973395 811644393 750123783 907431088 203424711 685863761 748573324 908580333 994116762 998595212 314075343 512191266 646357357 762223076 836387532 986992809 639833668 831206983 970653930 979692351 109958084 328721846 536140608 741181045 539078486 557885430 577614491 711020639 776007993 881210900 880928772 957548948 420963397 594180055 740421544 940173221 638810715 987618400 297457119 873916780 859252109 934657155 318120006 646411933 247909126 285118989 677756515 946145455 488905524 710551921 642948958 990787757 567093679 800490894 348122774 817872134 487337997 820940427 26625089 826606721 456949207 787484935 96220151 846329164 232527169 295726334 495069699 954649344 645043850 694958258 140229154 468745052 985253114 986029246 607485909 746436824 441674802 859352437 656392787 964649413 576120379 807812014 101217643 390409560 965885551 995858010 605990042 733861496 401581177 434263413 450246342 709218186 470399004 708323241 117507395 286857306 3697223 841849522 343248028 897868690 314667247 596114038 245897804 964453251 751963832 822598802 520615027 598723979 412145278 625296049 451120157 965183165 921338880 945235826 257917318 501231344 429537488 516389568 588451832 628908495 464385855 922187264 976029546 980919141 451383601 678661181 32781191 695448594 196007586 351320132 897187347 904929805 283182330 465195606 463517340 798411413 425320880 680331204 486987014 982634267 640793875 871441961 895559058 936936694 818588464 952187105 556176457 966052715 972034428 998996827 963031893 980000735 411623997 437267958 404298203 484031496 187763489 880911735 587318087 964115708 637647554 927257827 702462302 927253585 471576303 586412333 748442050 882280813 692745844 862404247 684662891 699855081 121596524 957494065 779115531 850792963 411142870 681775019 35424907 698381764 326007757 916893136 6388286 217367839 923452921 998219236 563616113 589796138 442152542 489374962 592818109 776776825 862658271 863625578 232619430 942509447 395095620 454193130 100733484 663672355 79579552 400006750 731597388 938444934 778999116 947663916 472526370 972141785 463954625 812351125 822891499 955007079 402551052 841101984 425738535 996486234 531583932 832179535 718937840 980172499 627767212 863292558 960803356 986771840 991758254 998947999 182204743 435629342 302662352 819428487 255160812 584994526 852304560 901379750 808052424 864873069 137546881 341864154 694746273 708575511 383339599 960123977 145053842 777935093 311650506 996047855 872913713 988773094 796674776 907115558 720360214 780791495 863428493 929430042 540466368 830821838 129937425 612184231 216101836 431420216 335222842 555593258 650702968 865688348 337614520 678468520 194213469 244900585 655035883 734068528 419700104 450442037 217073465 407511889 309192936 658649261 426570707 770267828 739871500 982601347 500845699 537344003 388342654 459743709 914073510 986841029 691700392 870201267 929590253 956431653 315161184 672662088 806070624 918891335 800208928 809168987 68282938 891568210 165402438 199646403 545073697 721281455 748938719 946118055 310889650 646270269 943732264 985359042 803400542 979452432 100321806 731658162 765832858 768475211 8511344 752765592 15999251 797124849 314327350 694290668 860828021 871305669 636770795 951610994 440665150 519663133 768665526 809270947 701453190 967222488 756440963 973010859 138708763 703518665 114433092 454431553 979336134 980688319 746149885 957287896 387308895 644448576 632214666 868639461 192859022 298965553 174753018 470666824 363105085 509772703 72141807 456111954 809669862 812597495 903694904 954281845 368054313 580464324 163545282 454511236 942873629 958210213 785737454 964254461 620546849 775072448 959530819 981889802 446392664 730583447 514646718 726930960 907236829 989962872 896445041 907703258 809309603 830848367 228686684 416233662 957142540 966366353 750004789 812458194 595783799 604131309 515706811 924127071 848099867 852846863 851031892 941126077 815938707 851622960 640622812 857931364 14271789 326876072 541113658 779400249 545546482 570201024 301752012 565223048 195430192 850587399 74859939 449013200 586995255 938558164 808838416 939479066 92447331 397841232 928146095 987869438 737453987 777858599 859912087 962956881 186835093 778807396 124927649 468971418 224005202 976087037 255533455 857603977 485897321 785638046 301980722 579647138 875079187 948296041 997379734 998608969 31190953 363151303 293285281 295281697 353122534 766732748 488925651 936299438 699570434 908681216 495982812 842020093 778003588 886415286 219606049 506357224 557178388 637965559 861885145 948232738 96169287 101200728 584565603 816148616 532838593 618769975 567178518 762145213 536833017 986935994 193936548 249303374 900008356 966779453 602830778 646492149 205705218 630674865 290920304 746951432 15054853 771706309 45860086 572696146 669004321 822897420 550249862 663479330 746249710 788520663 849528392 942555854 982042203 997141585 750588112 772510426 700538865 804310127 110870810 515432508 496933505 857122857 597474645 658316673 757930035 822705321 185156251 727716614 199941179 255045510 43657429 870670428 269239397 475719292 116640542 354416876 747840341 785498126 313458626 408237844 40514443 764368615 42630998 563774733 446358648 646071689 218888004 647440473 653893828 685869813 21568002 975850005 840032299 910880403 843928251 901761561 545974711 897668705 770219235 852357731 557685916 769044242 998877895 999673406 237276651 812903677 855436575 992674026 379854473 747243707 151686891 785407016 665567731 952229365 98580318 739907854 558750463 761026489 281889950 728317492 662793742 678024608 62432452 968969642 281166802 651531979 798892494 805207760 604181935 890391430 566650711 854594344 29252300 204778033 41282027 684805264 406309833 838636499 92983125 138108029 181028773 773246954 174971828 443160056 676528900 816104670 270592170 444457869 736880588 978479491 402138665 765463562 864022703 998135006 647735495 897980977 190947502 637372228 309082713 746339362 999381538 999911405 621488263 895033282 276827449 998649228 602499940 887337886 777178875 994465113 912575146 990345664 850645560 941612353 628753292 722794373 437783939 483155190 112902238 379901312 910752001 988856326 620939495 855332606 975549660 987092242 199933454 336657214 576087195 687392359 143539573 783445275 780745116 808268032 320681469 557361544 259074171 958010199 397369272 623785297 221321970 513066421 76101796 514039066 840784278 873842810 936023852 948436472 177149978 704374227 619922156 793588166 611635701 739722719 263614436 916684755 419550588 481646772 221502105 496076467 726921134 903346802 311918505 690224800 222160518 251705704 946136007 982421414 50181018 349847746 348090382 856003018 172184061 213627354 630372870 756438334 615063221 904042263 207786957 778997368 468727291 703794366 107523955 300633860 265828058 779960776 844974030 902577681 534485285 657284489 455161798 701189581 378732658 865249808 931244810 979963102 799195504 853295350 926133089 973006487 558386966 665012665 650736986 726086230 35984109 986158994 7555580 589184178 361993180 539162044 785854099 804265111 969458458 977861400 285493464 743862301 651942930 829574791 568524431 824739333 933308680 998411633 661055908 937739610 277767323 457951647 661033919 972694426 832509592 993945747 251650642 411928890 103922251 632709493 831191485 901771074 739174301 833109155 736942564 835092406 586175810 631860887 864862393 879130906 434900081 443126805 632289767 688748713 661402222 742648031 988097737 992267664 808130734 897177615 934695217 984479129 249625294 653026397 254122642 711904547 228011157 260251735 223848512 919256987 209587555 397622597 451805367 910069775 530967075 919568244 340562557 854625985 981280073 982754116 782674757 807642515 814805195 946697047 461409391 611932138 974411458 995945950 99765585 774405712 712136429 719799070 299123590 737936014 152076226 405109623 449402167 949726290 909305187 979244227 942566822 945280688 906537981 940181181 879831827 942242700 50653204 990399190 916561112 959757647 5209979 646658736 195137652 956519670 282727094 933619898 223656786 783308195 958298165 961361087 903689353 931702429 384429479 448231771 687526791 837753946 595285961 731222857 858120806 954307894 581757797 796477192 890431614 912096603 727772671 899708536 387915996 633004706 261245867 983440787 819626418 955212207 621674356 785040374 211993388 797672948 911528386 913209760 928741605 934305972 960641471 960925541 989990668 998371397 682996647 876303952 5855772 64498307 867572963 896689951 965107643 992617302 157996963 948193994 816342036 943615310 532765325 998426014 805352722 916530068 652090294 765787004 853836370 973982534 596198375 920607381 876001224 905925427 40115063 956946258 908943705 921775452 661172047 688804413 707338545 831606179 345265545 627846176 976046334 995112968 542571510 671458035 539559041 933735531 960460883 982897704 134876370 641193797 329607204 584828168 767858649 911919114 238162371 504562562 199321415 625977738 877591230 896285600 517427094 895255770 130612922 570300430 346477626 447588826 347905772 829753037 210858818 841116693 243840707 926796218 175821950 537656684 912765881 925061981 340911167 430087993 42007212 342417312 697073760 953823998 453590149 717000153 279648708 753751958 684130236 956739310 788596495 921335342 910356795 949923874 333579579 494594543 976724852 987325347 256999968 324827575 734056611 885109935 690670700 801888663 242897615 955483868 669672746 963497317 725788776 843867386 629518307 779389791 883446457 985413847 18205793 341367274 842411997 843124442 12246994 858821665 652620991 686673091 901904408 931974167 230394380 565707203 812943170 868132874 606894823 708658627 774899680 776157892 830003745 883585877 552852857 575925773 512635981 960108049 836654263 863190983 553915056 595715355 616851525 892272369 802045412 898984189 706378963 813846880 175975447 256389966 578613175 940676171 348009546 518551111 507607653 944889711 349797891 378687634 540404000 986366645 664127334 919365858 175186226 564376729 234680530 466235336 672002482 865184152 3491819 398670894 496918566 521943297 775795842 881590761 797643675 993422783 355605186 943566762 971974564 975163040 981116244 983673460 988008254 993675495 341229019 500531005 605017826 770351697 416431448 770499170 374125859 375574033 698212984 925944364 926405874 970524353 976766652 997936534 73470034 863133093 319632076 398680143 657992795 704342904 239486649 261488628 643825418 731395723 240912325 343872765 922590761 976540308 271633661 450911898 836971303 846918378 284304548 902468458 244594356 792021247 168719290 453542913 503117015 736082684 431477464 513595339 477975218 918793586 89370859 642043523 475844146 917703575 396911457 521710753 178759301 380247603 648068288 774800113 979736491 984698105 474604220 699669051 465828352 888212145 673449099 769294203 172140286 250703907 795009621 829724670 137872522 148447997 939610761 940319282 872887415 944734812 977263438 988765558 811810364 887883413 119484811 680214963 486663420 982609566 946623508 978446182 46175050 854801937 409651255 464428829 374892168 984215347 867234275 904292082 10369565 539738774 233112844 299101072 342441883 951022030 59986916 346516271 66476984 519484461 817468873 893149475 584186763 769552194 342242036 748253605 633136616 704858762 934011296 954742501 222890304 621716409 502141953 507863353 888003177 957211652 909729475 957903896 4318239 583356548 547251249 859625895 939944212 953615443 471772551 608396088 598474081 617142759 618304621 656066433 375848622 551778922 701439777 746168719 889173959 896915307 585804577 871128158 426130145 700024568 824308581 977174179 434024336 972808730 570663980 810043009 657834734 904213640 152138986 290366045 718175898 739210202 941505975 956723683 549588842 747376744 477444770 750790962 930714190 937226772 379084275 580731833 556647185 882217532 585489262 822413166 489069529 936505576 639022609 785571706 400306026 907372901 154562384 979896591 972303495 995085635 72337501 847947120 149504803 923115295 56844491 753885181 345842074 684682550 732043351 881130987 981103721 992526073 868253632 960515704 293748616 401536249 950559591 951880993 133872873 204373402 925113336 983185046 258626504 484500661 845893566 902633295 206797283 597341836 701613320 773649188 234738679 675801030 131538909 362098279 837448215 894906975 981981934 993138728 915171566 983780158 311061501 541269115 510482922 592682236 96117881 745211680 388504739 939117666 982486434 988721074 229376205 253308789 134147560 532036733 510639842 853516751 901040789 917142831 401542823 914108529 415225743 796527508 905762406 957863055 770755507 830231541 805106314 829698742 169819842 413783487 974418484 979532712 277892979 339141185 718122691 959279299 629305442 980731652 346492524 756381844 718272480 798866044 589573125 784421624 943745314 990995551 349785766 982839242 185785745 318148125 265978804 458301634 805629611 901265406 25698546 492396327 47711585 412120008 280149592 596174781 219458899 653505474 281555509 659475722 934596907 997370594 683182109 724717789 937750613 937969217 203994296 853808448 797407416 992990850 111133946 524232205 815959644 880111149 827087082 867315290 302953490 642400862 340544388 447821187 988710928 993774678 970082653 985416530 246749381 905993082 202424525 249845295 541028846 692973416 960645732 961874602 724908388 775185829 566112629 824393582 577694622 715248284 401232430 659691089 870060847 873052696 756488449 766837558 7091517 887266825 651096834 935092962 683139536 944045919 588920762 906436866 112927013 791757054 323117536 667108322 391092158 457877478 477673227 679341671 548919686 810229553 753069897 894553864 293643913 539766467 183096490 188210566 748210510 899229157 156636853 258766430 106987534 767264354 916442862 975602059 47211753 384954084 775639352 810071793 91842359 121596424 807991425 822715638 746803202 775420513 179498017 760464670 731957671 916812987 577093227 597781567 229477590 845708713 640188000 661071632 845991302 987210058 694442365 945698090 325063065 775911534 50421545 958785476 298634115 755434050 946092521 992149993 140994442 450565112 664510055 865366787 582869500 599079200 417098768 542247017 86118905 290197404 127041837 538451916 136967224 934600260 198970416 369238433 390949831 910302184 761594757 775796528 568560793 636901374 417453506 807930496 964347802 982343142 935741667 951259555 373135473 564284666 815876547 985135566 480168092 845924895 300868038 463163282 749680654 977947741 919474737 962065285 177448861 921527159 535299100 563178478 770934327 983779562 965628720 980433928 509603900 992926309 371207164 865025198 130666510 226651401 452454659 797643196 565199345 995130669 13376619 640057637 252709717 540349011 437382759 782329248 838116416 953555629 555773556 951011521 211373170 289396386 496359720 857213503 457820868 813266110 542917227 633912264 494926863 970002199 144556901 907036656 208261709 675675429 881740045 885624133 827655932 947613146 582387280 859036102 199752729 533061719 679803991 898363951 137967389 613786595 638108444 877925623 386515421 756931441 573711723 994313031 324016097 741989227 900442941 907826044 526849980 756736740 726725363 982911399 299043256 792851541 703954101 757938847 822414051 909806105 439631348 755024288 365098937 682941960 869601832 870106868 994358392 995126236 513044808 779698041 16953373 21122916 335661073 876459824 763836447 922638586 597395636 872995283 154036035 495307022 116481029 243269628 797974717 909781350 977582052 988963028 533327689 534920246 817060830 968011664 481119937 664710133 768829641 912858479 160554519 599203869 714544093 909107309 437600328 611995886 200042004 369441220 791386672 824774356 943181867 967533019 978586349 991254752 475720652 938089649 318552196 368709387 432155783 666676420 620537798 773780266 35937361 621820701 581050271 743177165 356654431 614687647 510307768 565970685 131739523 216819952 276025888 540591088 607219640 705535215 222116560 513715562 245076053 724192683 364643017 427574515 245161114 482493605 71265075 548675606 493778871 872443521 803638161 955219619 972065747 994693483 963617636 983261112 68148717 680108487 13959791 435794219 502303720 713665494 339029600 449380522 257331886 527262824 740182530 989875029 825107437 985528716 743940343 989793867 60137850 732527706 30861571 872269660 630102143 984120288 478723814 492285506 565544603 677870165 249607395 395236973 702715659 898616286 115838179 903729365 307670130 944491934 414248923 860850992 99667502 691035101 407380662 454935247 984972183 985857137 779808500 950169252 84790187 958594208 448187129 988119935 563243764 853967961 808481716 926258949 423139567 598340787 379080202 494526406 871438492 967770178 973512762 973645811 915545819 994269706 886969545 911899843 247909686 309793561 878838605 950265440 363105880 447642963 838819858 881550112 148102394 204942761 614732113 875377552 831942143 881067369 732700379 816648917 224528017 888694950 72151302 262280852 904464068 978923485 689207604 916613160 936045918 987787170 965372692 979656978 453608677 877031183 741375574 764327430 428566295 883562238 892245937 988167411 976721652 978742478 722261309 847688355 486612782 906457687 476988185 906315732 61616664 792919067 390186917 531454860 197450427 230083404 371685872 469141818 105440609 544241379 738764856 999268017 493403699 820348101 814463116 941959168 44816996 851454147 693782391 807250803 485279213 646495129 29589063 473250396 552307652 723466372 869709492 999220293 12424255 666335918 604275856 861454345 488597283 529360481 916833487 958702970 796110752 842309745 767547582 932275595 441153337 554883617 891454627 934774819 36728950 716008871 603828190 879205792 482937087 676242232 216421236 306374275 140664508 830071994 763393074 990907983 598112351 783954988 147146668 929667625 307803574 520021092 102173475 715748304 283874094 992385002 154235549 859638843 694224041 706953443 4563953 164272192 42158734 847209001 546328570 995467622 597829863 626983675 268585783 687955628 991434162 991808279 864248303 943615198 248390464 485608929 266716390 892893566 44650445 945898910 216240763 398845659 814917245 998742139 104989192 398268804 212878606 925723474 903836516 942841195 955722847 975632323 991520971 991952440 177151342 312140336 45985297 443381519 226055195 692728112 570520409 686640251 13528081 309816045 496451945 814922933 872919080 880521769 423418479 904231555 692961742 910899256 427024812 817108368 656697349 870025035 743381548 858458025 280796875 322671029 616529130 997232713 809019277 998722793 262555617 380363947 785347525 821721757 956645806 959220573 980628762 984100376 215818051 823966333 905949226 953949988 595062127 823939318 648631523 810021908 353341888 718728469 410448952 631365660 504736669 944202452 970760568 971242743 912966704 993739488 654739301 796471697 343394985 478674500 163154031 422756829 55508346 896480075 740868909 784609681 850937234 862930040 536128473 673503558 799542312 870606668 724287056 994520184 817283896 935791989 223009550 250671675 124292525 222884979 725415013 799835559 421030947 837621619 459038507 827761268 528832706 976079509 591649305 717953714 323194990 991099977 150422525 812357307 611795575 975733714 117873552 350371010 852147441 942811038 577232341 678672372 960963382 966642645 453222551 534584573 888082221 936604279 137107903 305344071 202892149 572249097 556984911 911587751 47547591 532203490 185336933 934252393 535846548 577719816 391485101 510540868 226342583 777646977 669826217 871847859 80366942 462874146 40926130 413147709 5334900 432030125 852907600 988034577 624061968 797780352 333561640 359556710 290744533 943149915 498534029 544087648 81948937 356817552 517951537 657524393 428141449 718735337 990449865 990895696 562947751 816770324 148983184 946277564 908595455 911329619 988465315 992334836 440822060 932501129 274699929 705750452 283811551 861667691 668830502 690748741 182141456 992971389 953123750 963806916 886945711 900608491 552550393 927862048 376414460 890637089 240220260 851621971 771947663 834044953 636822093 699633976 502256182 523785464 499859596 751858201 639731275 663906720 509485461 756510620 988253029 988471402 96702568 236420313 172907166 198191846 81206515 757308180 601921808 659262812 842382324 994739242 523726359 607780830 248203516 598993073 785279959 910649546 126349855 236194107 352660164 496912637 336527749 866280632 972144229 988710032 180832681 467138872 987550136 988946110 173806291 469480217 394928952 881950303 350085345 769788344 149283747 874950112 898174723 995698850 537413335 866781257 18096469 601693533 954664484 988441109 991345553 992766108 484001641 872518683 547786829 805697372 187863137 778336454 122605427 668545214 941498574 949770957 84901981 442206727 618315831 731813684 424621932 587427691 319797137 353579406 983343858 998935217 371839772 803920856 632184172 826472821 542524366 560807233 566011088 860968606 823513852 949097182 317881489 473690947 957106541 980666618 623171746 929844834 400613427 490806643 493618944 985448513 766586080 869315388 544604934 922304965 679248637 703705998 303301621 543284771 538302665 648700627 12553307 907731050 712503606 980022127 890658569 898418097 678797710 769225605 233891124 245268338 327621884 642836750 175723958 843055028 204810679 845646931 245695801 347354162 298621128 697517627 291904037 323626179 375889638 429500592 921133288 946279900 647566280 699705304 998201899 999925473 505864268 583699485 266029600 684174903 7021849 566811911 21116480 199627089 88109276 914642886 163033153 246530398 878095824 933756334 727644055 734632508 500609395 640078209 851467253 917993201 560969721 637546975 687277862 764823789 407644824 907456445 111265698 552147055 130453602 251171652 110563774 384410804 68820341 541158764 592069096 993006861 533104952 862324748 108794241 755269205 686869083 990064637 21848448 54036993 227852669 234158642 701946386 890447464 653647400 778029238 694859083 819771519 167519135 651161749 240132379 532517275 748183387 825063342 868778783 874531594 910588993 916290350 28181596 239249913 113322798 300106769 398403948 584677925 719392733 772361041 348735433 858100451 622804136 718376199 750757300 973997161 229688668 423888991 544235851 640607784 623086269 858544662 682503743 752583833 114594041 589558923 110280753 485330020 724660576 919526770 997575738 998397968 92097668 760119058 574147636 689219848 418141542 935536779 207956360 681524553 718666191 844815386 468990985 490228657 84222905 902796212 461864297 474082185 177219411 860333513 635887788 875976166 88459335 583134982 108775107 885600082 314682717 816651615 588944634 800021374 996544520 999407681 855788864 941352166 741594614 948238241 471354521 486306922 95232263 447907784 366348972 727351993 759882467 837606107 973645849 994557557 806883557 848297132 179453665 514727998 469656087 998844989 277027631 896218704 677111256 791250425 454028785 482158352 840172591 940133565 809069769 947586359 71696926 156958210 560432254 861075421 502142471 640789852 938457682 964928100 755809832 913943400 156456106 972355975 804101189 901639969 136449073 521618093 630975834 746195736 175104096 510520235 976349811 999433827 397125689 973412590 339331003 552815852 932619855 989908540 845932713 969128584 632628268 864872394 428822154 969231849 404865861 565384717 349021449 856553381 375610622 936142920 737589895 848803344 243176068 761011847 85290799 124226336 273395848 687379626 311754518 936172980 800619062 863915791 554702748 899299669 329309023 973445266 441704261 543717843 290967523 694118883 521512874 822361453 654400599 932129528 859705832 945719338 562737472 962335582 932611425 965652249 506938561 883581388 645502806 849985912 939874257 954310315 887868535 968834186 56089067 280884681 873429264 936726609 323795921 980401992 812142195 870221049 283076235 821774037 200563651 330637746 300552744 883006385 770810420 941238407 102629429 994970964 864814219 931151084 984858226 999909228 373328547 525341851 597664044 892216079 433498862 962140387 973777837 992404967 124192741 804911551 214812637 714328070 13532543 344454842 73651842 952088074 497158552 805281975 620330652 947661746 119383359 389877853 483821248 752390096 893374513 907649901 438089671 948185399 389501035 898545724 16060169 601295822 947927550 968860541 101936160 933596537 678022114 969612594 757841776 958082180 750725846 893449914 261247542 461903600 946306841 992454998 370374489 868073339 482452683 769363004 71703821 598698668 829604653 919925838 758412674 793058867 195542810 273827232 219581291 356384132 710251761 953292135 643062933 885274991 332118002 850653722 498816153 874191921 46076463 327557718 490878770 970752548 731879301 820049772 986168450 999653477 899425817 997588169 481765872 841389652 119335774 536144311 513589893 699840162 132909246 392196941 590483836 755568728 62702107 662025928 271467666 897632487 867327735 936510373 941345959 943253433 654582599 904003479 542637894 853242346 502550922 619534467 211196237 750987620 216923757 642189314 662964686 930218530 693323035 990423465 377580605 928855394 758213808 956655848 879929934 935180972 948405111 968261607 963735905 968977580 842502595 959745666 566191649 706057237 643004598 777457168 920243483 955143581 920081367 927754825 457375895 839088018 220351320 790466252 960150392 996843516 633327146 784229816 287099412 907207574 453739931 854651418 169876566 358320203 469763708 620577879 289247933 767849800 542339024 661628927 301108857 778767967 679618820 943242607 70661280 352197045 810850101 859179131 130788885 735741281 40152866 540576767 265025994 636735500 697745616 976915550 332512076 338525468 997210859 999857433 349816478 439566679 169109262 254011664 819806410 974087405 438280759 562176142 793724793 970095393 844117720 874289464 977564701 982791710 981616410 995188086 508661135 717840915 47944249 852602532 662935683 935169066 311217521 654365907 289211605 809930490 834425056 858143219 205691196 411659929 145032544 859503742 317336221 868313931 160197633 570716574 72507344 151304096 462409954 701803332 131323582 298281867 754775736 871471463 638212559 792393354 343151968 481681023 213474104 438916147 847690245 948300680 175014939 873249882 571237193 721964545 411454526 424461297 169043980 963874744 138315164 716741623 575679851 624457116 482941894 849239600 306867569 982392535 43545320 505209230 935789072 971508879 587333526 757413713 604654819 984095527 998707774 998971910 918914328 978209641 448043139 502913220 257182463 962147083 272847424 286392426 575289940 838264979 623599594 668423670 464849395 660751969 897302898 957659883 841384835 912310927 234123355 669446117 910641935 979984613 518902779 758463129 28906583 373847946 322609955 437669954 133814597 145471849 495485235 687694122 875191902 914448841 826967584 932650191 90803482 624004047 349208423 467306212 441683025 482968670 274245843 804284795 185730829 186550820 168810765 816944144 402102658 467348193 856217521 958771815 542265717 607361165 59057643 135683854 656854057 789119839 483279054 658382978 471575362 942118272 819421170 900779651 60500148 739095067 365960415 787674454 802384232 896723295 305487980 517688769 541403287 879909750 175098729 893435615 340647963 782322793 701388806 820600402 750323661 906239973 680945031 905599063 799242337 864562217 850113646 881958871 979526909 993219915 703678405 965227283 953534590 998131994 224690913 852957536 102774511 964507155 956690405 976346801 978529649 987578838 574875152 832383588 144481687 914778065 219678263 588109896 181304114 870466362 97201374 645448814 821211489 952248563 656415768 716963658 132878697 324853595 113641807 236448362 537133223 666107299 125675187 582542752 738471221 893200642 794394946 840558839 616420284 872707846 286714998 455040074 810121230 830991018 86478142 807829490 152270604 760555019 893979284 948005232 846637540 933596926 955281996 978283283 653866385 918378332 654198218 792443808 607120901 639233781 535257880 918926738 124376792 770021777 626282360 862699005 529990610 570632243 782583369 861087860 272194034 673854177 294815299 858963570 105216906 621540011 633683026 852333128 303424792 885026883 466334858 830685352 784260174 876353699 565887579 677131890 17946065 908945663 94256079 139672992 515705262 680172300 782553891 816190468 158665200 673300167 504049443 633584530 507412144 732749101 423912521 589313922 168038741 995533794 829062481 843827842 239669016 260494436 469622890 496766921 504554840 642927338 370635472 632322358 376856845 575921466 116633744 789194668 833077143 853744724 13203893 849704399 908138049 938266164 566113284 985787148 211859987 304459976 984123736 996378507 560124896 902657371 191165328 372442750 159763976 447481479 226460027 939918769 672283820 800623976 561518918 694305373 437693100 737676931 459856941 920196711 41969444 742956248 489329746 524030703 336043964 524659323 16537144 289970758 814833067 855060537 304092869 935042502 217520519 884324440 289082208 585574662 304168928 945092628 620500612 756601557 52050734 119578383 780904348 954157567 225939514 389678318 598253445 994840054 984861806 992504463 855116131 901214230 195333048 923410424 512661417 709643117 231288936 807250710 61319869 436634163 686499261 866350446 724223816 958860534 34320793 759610651 516012748 919729137 733739037 877700551 494661921 932223298 670191714 941106619 428193504 490609097 535474355 875107950 227552280 298359216 771539190 950930085 735018436 904146313 594074739 602460332 310894237 806341101 813222579 865893938 83426599 884575749 759827903 992775879 278138904 491144660 709893592 883087693 522565292 641353216 848249563 940508697 522472364 670285347 494189648 875356189 492681066 724358031 632268447 889588434 312105024 848840004 22160426 891278468 934735015 940143212 846444931 926890073 787595350 964528611 537372392 939366428 391541741 801580753 858366236 927864559 59121587 970205524 960787591 970685709 90896816 961027078 750218863 870365537 859603624 997196691 186048419 863062600 641263495 656118076 852114553 894688217 156175411 409505645 826579640 893423186 137795130 210001406 789478685 854072381 318998797 681315118 947652046 979798874 79537565 634363802 292814028 414670296 102423206 103001854 141124251 372922776 847763064 979170805 81487883 478272497 347924894 384346668 434511573 665469568 409988663 889190444 551428984 703101790 924642520 968121310 433848204 924507145 999055188 999733491 612194021 860205025 215781489 241036620 191217208 784807018 394970948 685060550 640112627 779004789 517581152 927162230 438022676 810801861 371189531 514656938 991014614 997797646 780570984 814574134 754874902 836557593 725157807 975781602 849764439 956831303 271669567 362236109 64365561 269265382 66092327 834649486 690964772 947200260 919132690 930896409 386050416 539494432 356614548 654404211 201859053 312288420 584094081 867515065 331343986 669468691 610299372 995338441 988628157 993955586 433027632 661185939 318384962 406802199 320397404 571849011 767515365 805145343 414882208 537877573 934297240 965615343 647386173 976734228 754239072 856985209 638565126 928400702 290813811 579976515 296410424 679455256 43804131 656344494 196462871 307073988 187647830 357000450 559402144 941207767 258982352 887094621 937575620 944364759 833618136 869696453 527717173 960519892 454463080 608270264 994038388 998219903 293767281 516268762 52892482 861298804 212072061 463958645 227194045 252433473 224621967 644091767 869212283 971208264 6176615 220271037 886115036 894791791 313850424 981621825 93417644 219731315 229195196 533971381 516774068 566377458 999193481 999728477 95098288 104081512 589959926 627996667 204648481 604781700 142293302 312145975 856473754 960433210 102047222 851962574 642595919 838869240 717418574 752169886 774029943 815427220 206530216 777812427 260855403 709135614 324504287 880228949 73053769 590882320 125474186 232878726 616810901 955309494 114904778 974819265 779730877 989753781 597566347 865874706 674268801 686457250 812130601 881243946 113998237 162796679 135919969 795637651 836281255 895347070 477494444 998000743 862965970 968449245 701050747 976641944 956498315 998585160 842898472 914250788 709628421 847353256 792239231 908543045 472542119 633044236 722784415 962609050 20995289 675046319 89246398 297368085 312444103 850268022 888405469 921989157 174676882 371284226 566129508 959422219 523790646 770243365 813027190 991834372 163224170 967677868 969916784 975730741 100673902 214411729 798536711 834187861 878026247 901044453 16796954 956193157 770580028 897202360 176594070 241336588 474907235 876221272 514065968 938627222 744154753 869875615 432036433 438959046 366157417 626232252 69684347 751477069 557450442 830231713 110319637 220879547 981606480 994132278 941803561 968894911 217734858 947519660 35498893 996279300 72474321 290934474 493284278 948401020 583667722 729660450 953295989 982107869 676397171 685360189 463433072 939932990 853940131 998818422 742047137 834628666 70292474 133600755 983698866 992102135 450143866 870000611 737295447 869889498 238400624 338334506 879442549 898848711 223266852 981053121 702441436 850625231 150207685 409332726 830649390 980973669 208031630 951174150 825953652 975128916 906614977 918985010 952629513 954543304 282743890 980932815 526128852 985401853 643630923 848860028 740259741 858131103 888308061 906818655 428653334 762248764 867969126 977572611 216207316 381354189 569065050 592459475 321555244 853354763 164883086 609027338 437511981 506425503 93776678 306491185 380388296 456840222 168328888 433567444 186768756 858100650 214212430 419047764 431015492 522154632 389739106 946400211 367918151 497834576 319117511 893725906 809946172 829342845 501774660 839565787 526996871 811781150 572839522 960496263 60682249 902158304 197243762 365259334 383041010 977187030 712379100 763334979 797109860 882698611 202997179 755541816 497999549 564651893 956836510 981953943 583903124 878825877 422199227 702622123 649198726 808145609 827319184 873830380 691191977 989570257 822764667 913009251 326983478 574823178 844395250 959532303 139771188 201316002 774925180 951361580 987393360 989136721 19854866 460601108 934645170 947976863 353298039 838639046 895238890 982649048 341837900 601059530 560183056 936855352 613023565 756058280 40745571 825345219 942455950 969030643 490753145 528085613 861957608 876106065 576375195 579657413 36279197 798024674 284030371 726570832 614847304 954557015 150051823 414487812 987636578 993542488 218564305 388623736 388614701 999544447 832913359 996899236 398534649 561898605 107249199 223619133 963135083 982902146 368627610 517168864 206149061 242358044 429476497 535113564 563576432 564387804 722148069 913836079 444033961 661783141 484490516 841747559 81574640 689917346 744665596 824914379 838886023 886671803 74691535 566096230 708206109 718937142 663761444 722883285 937604295 959627874 220695443 750484216 924107685 966545801 189405451 257471292 374055337 402206427 48758596 266687341 221454862 700721151 616606981 642272319 362271206 700625983 995539939 999491066 869211753 970372855 790382853 867930843 948823138 996385069 770441324 866506166 904274254 962497809 371211515 769241534 408957783 511639866 48750672 53127039 285367278 675776439 592864701 609138674 343717324 763260261 623705832 823457083 784125236 885183616 853026051 921371012 23146183 777022687 33848937 787589649 109986498 901443905 541631760 645256737 526632097 615095291 996051884 997996901 417469013 590985027 646531380 794795832 22139684 601077016 46397439 166834847 95362409 579839752 238977983 450530469 740768909 872805386 738542936 767669237 431939238 668002146 422210294 794978737 35874019 743365827 381397429 699363075 492478284 806714793 78001123 597042546 68424040 951727897 103643016 977397542 213858284 453891766 221404652 775831185 378522650 413657240 739228194 822615996 35970370 863019282 421944259 959519057 785594507 965980260 31357176 265649038 716021473 740047653 122220904 230880735 723657491 773435722 940373610 953750067 677657928 833064595 488288185 852833036 651290446 776864796 775727931 903127865 705356052 889408170 259488632 907001888 163859620 672531153 377503947 961406052 226801229 705634876 111434379 422694162 189308994 861556452 309283692 504089274 130448093 975259940 605752704 945378953 705693521 869447079 958152834 963885062 671714273 939403267 898556454 968486833 763158175 897083860 978173459 998810059 964313799 987503158 557440433 823713747 217554711 577277612 912192732 932585590 569611352 899587563 882281496 967638776 271429217 730296875 6954821 670371162 887873176 898158922 79079583 391045619 530049525 866185066 38704689 788854179 742326973 826025721 369974367 815193293 166140231 945626738 547369985 746160385 176316367 825481792 832256055 922961519 418801327 653772328 6690266 641280401 789878384 862396972 409090601 862049756 504979770 540169423 259307203 926987028 194183919 896647144 477205683 521844609 920043539 964047631 448208610 573245028 907299599 952080845 333350906 902455786 206143599 374306389 753865935 947759190 989789353 997258119 156182449 780349227 746085791 849846256 313850449 735997472 388065071 686876328 748503347 901499742 796593692 951613993 739841544 893317574 208128139 889951850 513493494 739897890 633039601 876404058 946166685 991077724 449323364 481199763 470932227 823645468 562363394 910795299 998991753 999724727 383161572 567395061 832489979 902040148 869241480 998628454 796415286 950813192 687673641 822734077 954456050 965370244 210425411 858414680 660125528 828864072 508287483 956038139 373335748 900658727 832259093 935980667 247499056 577556764 817822046 874401964 480850681 498540591 89701926 867717622 823090263 833322077 135241714 185736293 150867682 397795362 91000085 226325772 396456031 483926320 149948205 750475340 149546040 390814962 410005570 985323877 969059237 991762219 981774414 987416380 634626761 782180069 484416962 539115950 880970102 958195380 719842933 954837257 656518034 830008083 845113974 906139170 864993262 889464795 638909536 999454515 100029639 796894338 633926245 701271230 461916044 575746499 316331547 537476702 566771011 570274210 500890936 975934708 756978800 995818897 95543907 362496835 686101585 790141187 233921426 813807702 485973019 935706555 142706516 309493242 514148833 552312047 718994050 888305447 488004544 552120943 642660758 999616842 993960867 996522136 531479246 905160408 793196697 991258496 944075421 962456495 338908743 626557231 284144373 405539405 440157877 893023216 215448633 648312376 406664421 985913895 821485236 832353715 746711844 892704301 609615716 918385507 472005239 972957339 307913080 326913317 428431585 679601226 187073606 956317986 377464472 543308986 811180923 949703569 895821872 953324141 635680391 814100685 967565770 994284181 108552927 377098912 206544146 563278501 804783280 933883822 914487939 933423501 425779986 802058799 751867110 903478934 322944669 752147802 88417438 647610505 677898297 710954469 773665567 858666947 816073551 875795446 297777017 324231703 550306164 579416910 495651413 965077830 619397375 719478244 780607988 873455993 801223180 825858182 96188419 263468270 636964889 962990674 964575635 978589423 818499891 846592881 902345763 989046605 953083161 990954584 843738509 905140125 342017368 877637334 557870902 647118301 367757612 703313459 373802491 910077512 189162666 388026450 234712270 826723346 213896579 408504114 908269827 924343116 170548200 778559635 828717771 901863809 501429707 679549607 121297054 613491496 978258248 984056470 991746374 999349497 166115538 924404445 68548232 891300180 414836740 990827164 267890559 611431528 105918628 378472108 389279599 687233498 519426587 838447924 148654151 737482958 52877020 993699249 388121308 394021627 853946026 946674549 808573496 883623639 761356625 895574405 164115329 549290726 882993412 936286092 592568718 702675912 688774763 876935508 992256521 993652401 708974936 727513951 448931675 992539252 821026471 881475528 892370783 934009589 350335127 800802113 679772323 975105159 695681949 881007497 123884113 609874434 475628939 703735957 906580222 915991982 77773951 460262821 577002409 999595265 3137706 626518575 653719788 890099052 556667229 896156357 74668097 413190432 600464834 829146011 838538111 876199680 782917306 847483008 283182595 616674075 837114471 879276238 171360470 185760820 555671219 739644835 906239209 951142382 657258712 836925136 930415846 998448450 588338875 859243099 713908342 764016099 145458515 436027126 817381191 957996858 44965125 113603249 322746852 804003097 102175906 751498800 409152310 537181194 408806717 537289433 35512972 361939217 760183575 858994242 595629858 666491969 477490748 611383892 147013730 502578138 786017598 974593192 780139775 977340856 282762940 418565616 490297563 984633664 9813595 723812820 721483970 943090552 108175441 393003397 219915689 333960345 576456773 903228296 191443527 282046446 588156841 820010502 957098063 963813266 736060932 770618562 956350627 992312409 204420419 251576332 199616790 778063647 635679153 879353049 12553354 63022815 82528710 821719907 94869021 107787842 143059705 333989957 682128943 925734748 315784560 418291524 967818251 986414299 109692912 815101193 114124550 207728143 109955808 677518607 354031519 468676954 348624368 890657944 807032622 860701732 803556785 973382294 517056023 966586110 197042832 861225006 205574882 816711859 807073711 819621325 785016691 968276116 204077835 555793319 63394135 602207946 788112760 959750893 415125467 514070260 266906571 289377181 532395046 542338078 896512054 968114518 967343661 980068392 587952668 595390865 201605757 960842137 150421147 890955284 450420920 723665470 197267381 859817641 888618150 997852124 434102124 712847290 914938492 991393101 519852666 981733629 581268587 955192776 239568902 657506416 17552143 609274750 810891528 933030169 886578445 992502984 122313532 514073065 788290933 853202043 8891830 538901018 815540618 859593991 608105810 767254611 46625968 785168033 99305556 371889848 336994876 998377079 438383122 545272657 137529584 501011116 774732332 842671221 397913882 755027438 749410826 877076086 779949524 983360658 83912157 846766674 792288923 950240936 782945567 927620484 307256532 671148989 249579319 550929689 164508735 607165727 639500511 841739945 249022668 592488489 399875051 909820036 814245946 935718098 774090907 984187534 439495567 984662678 153258689 246510987 355377507 575764021 818765504 957962635 111004321 712052663 791071652 822855365 806583280 928841213 960507215 976496663 289063220 872581750 349461197 580282469 295608511 462265036 669916622 916540355 459011302 736734927 773776552 790024912 375443968 726729398 486010404 524444549 550532011 861330159 519813791 724635546 576245913 863951220 414101809 761790740 886089000 911496701 335591757 371636650 385588043 409505892 756695356 977794094 124742700 491655720 844705018 980997769 432759284 781759966 25586401 166670145 163492890 181267757 683010065 928944182 308656483 709638044 319723396 810852375 178568343 918143198 139510592 283403328 990626 156993198 95373793 684174039 931990849 953665067 843557298 844505449 980730762 987375094 170868830 918498593 772571724 838949874 736439057 784514829 593679089 687168158 942303701 951488852 383855445 390313831 444568484 513115949 965678037 993046386 182958003 828867871 63956303 231269225 476343746 977977643 803343340 976903469 947150791 954735285 622271727 871146757 248778214 932426504 395128082 979742537 280866428 950463193 38471999 817304867 115305907 519056089 655232644 893546466 448456196 849449240 664931444 841780342 154719128 408902168 633462449 733819360 103607033 945225648 137693789 718893062 484404528 509767837 201503693 221857403 81720523 867074517 549336738 888181644 900076642 999143122 440777929 666078282 29362028 821270665 813785477 916194051 894163024 924283116 246766877 406620139 546389406 890610621 58779951 806574993 513539503 858262368 900602244 927042158 277796226 919186135 638777046 775975456 628110039 843785664 984613347 989316173 390855844 563040751 476585554 684151917 547160168 956573737 652598206 988595346 721032892 822224583 827412620 966869835 193377751 259671451 325894348 823544575 867989507 989522007 211972106 514489608 315747760 567652732 196566694 421409571 633399729 903831654 131083668 796892233 452311067 753968395 218270270 291874861 511954821 528015556 24495709 298464343 214677472 562825525 928237315 970939414 817138121 921737081 206716783 287503116 531694294 986609115 477904865 750393139 265334306 899889451 789683629 798406755 492975535 750669367 427255194 684132570 724659939 867976882 344535521 479138932 799212217 900393119 500370203 803342857 279755649 429146912 214341833 307305645 318020515 946817074 49016347 610408763 491833743 502046951 412898056 991554422 589326146 970311976 126115221 405680924 724023165 971627551 392303294 518743913 575287651 785945252 491979198 730893338 295288319 416427279 734081445 873330793 907904510 949651422 551527246 985698128 352930486 846733349 770821345 966385141 196026564 587093446 782516916 969391187 327055081 476446254 733861443 875614234 272450565 888171944 503765202 843274457 670377327 812703321 365852867 708579212 111770346 871008393 542129449 828553223 790244359 974788381 593884578 696455127 784863224 956051658 826124651 888088771 99897162 593717474 602955752 610995846 328598069 820565743 109446249 146311425 448357074 987985677 713741105 849655692 553294313 787499057 200125938 692788018 646813249 884241431 546316040 562680073 415386250 640409890 192047532 812322713 824307655 930843784 656679491 754935121 958717544 977418876 451459081 861880078 819769317 881628825 584507892 647828133 449211304 559913104 115129719 186952171 745286949 839927231 500504626 627280433 257919158 422751115 164971682 421997143 937411875 969196427 786162710 962266289 291218670 348911063 350910580 901979344 803962728 854236621 483622616 801499133 872316102 904441856 852776305 964644540 295435881 536621134 340581436 887177248 725470514 982103739 176709321 212428301 447340214 991101550 108772129 579418639 145124623 845745768 29146991 675921584 155314962 197034495 64556756 666378962 291161542 446982517 223515971 474537171 214847414 579318676 959997937 972264789 400670511 690751389 759850367 801500814 287132019 425474997 145211421 452536447 476007510 570611720 260559844 321514416 947291424 971597205 934190128 940368270 305252111 432263296 651531649 927364036 20598442 636933965 253911739 443897143 896880381 964787500 751356809 979032451 572708363 754911898 733400182 751189882 311143045 630488038 819707864 880064188 989527434 997823656 926897223 966676387 685430686 851195475 858193256 866016369 11671943 878274133 540191436 904617521 940131639 941160414 366342050 706078692 963279818 964594971 340892899 479538186 365794810 511948956 363334219 867756056 270079969 692681264 83459527 658758832 671567234 756780685 277384451 823146405 312158391 849850564 344135391 780969097 551799842 912102500 338122958 779826224 530041384 554857889 251487968 425233250 214383802 569653443 215640724 395171717 406471907 902980769 214657103 704945346 472920175 756146640 565968385 647152699 696708779 718764264 837115966 951290334 204107303 225845053 348649739 546241825 734251587 863433300 821105716 829361293 969055752 999838918 639195803 965669981 22650692 292162716 967213017 995455717 363590742 999828926 467829820 814453798 581076847 834917096 960558506 966650437 428237989 501160356 6718318 495836795 51643995 877353990 527517595 569446849 531991459 985732009 681772361 764039935 325924050 683208745 692512641 734430204 630942005 675585511 283486778 678929118 975049593 984724768 465432492 677311261 132815444 749655691 460451994 717623339 645514957 862378782 602120961 624536428 673532490 916530093 101151560 988936008 515295037 981020979 390692966 919909989 222724721 276491635 951235606 953325563 731464192 735021247 484175707 590740571 316014106 998784299 990699153 999584809 109220318 430932384 220338226 309027096 690020030 728163092 372348469 866550764 131238838 986810744 166799897 692265017 518253097 978977900 814250610 936723120 303391407 625912092 324056635 959714581 916520277 925126209 889399671 991650630 435135275 719974580 783909586 883283483 234478943 963989663 288954 914566545 493645968 965580234 273863723 367398836 22091553 61991303 50152207 657625656 946814219 971940043 307875130 990779397 960914189 974535277 577830051 968663505 867758040 909446238 503091728 621759045 729638464 751348424 455611529 624565634 636145651 658472195 959434390 985333475 197564822 535405006 76952816 925007828 152693381 924940026 139925415 441997953 940457999 999967500 106059136 825247777 201649334 213032346 534810945 700575077 336120847 683996840 117816313 245045729 873954381 919968079 119930659 804487919 79116823 384725803 591214706 739467897 688802456 722089244 134363383 240032129 874175284 991349602 682767009 848993546 136776281 778518449 108858497 907321716 976038396 996137153 504307222 981403690 431723100 960692158 869470410 901379330 878912911 992803599 15554356 30153384 129818131 148204918 642146626 706238777 268342582 497925808 451833917 688951890 364569725 626913363 258290045 899396072 853111202 957650704 49644616 367029223 966289519 983320420 581035160 865517651 244808365 837341232 763172078 976072127 75121743 202507846 997261296 998177264 899155571 931989744 423531594 703852851 932622505 946181868 709323799 942917459 473733197 498610345 179377422 522244221 750348845 791764471 272662563 633247944 120083056 598804207 446591715 602920022 612635848 948751552 562962483 808291238 416420999 627546895 516675344 621164946 829421450 873685755 721378338 756855466 904838222 933834025 148688931 151836268 51758287 795991771 807691881 871066923 257951603 639864917 127987374 498457520 47232160 871165991 6786192 345036035 500003668 902923630 383218631 587763065 744125867 814783732 392461501 722740085 805304008 943373763 280602194 738735317 99597784 410832313 317464210 334039190 190542533 556720528 311621885 792849259 913421030 998052576 900475139 981092068 819627646 826867816 385896429 739854470 63306583 867087333 278817251 437068532 276848639 496125038 871023745 896182810 321172488 953799807 39102770 457387699 901321674 975939036 774026692 979158659 617808258 621510434 977593500 989531915 453068697 784200117 252220405 742720219 827825452 849533458 775963131 794228405 417591878 909991190 402740277 680513632 787576704 940635039 785093498 894606573 896294257 938842288 230462674 851716100 131231950 560151045 117779311 909834045 406049069 538905584 438228060 531310299 967825570 977509505 418334301 983912018 724227146 993646711 532960425 698073073 636625984 948023546 262234422 532473532 516594779 887278494 199529142 442890767 320862389 358388130 33944671 380238210 337288374 762318500 770662363 842048057 250466263 929105489 635765692 919833061 725185006 873708224 236859368 673220676 18922962 737346395 675972705 985647245 537667511 945579630 22377130 532551769 384115580 785631903 977064694 991026270 147070098 823030015 589727004 938347843 662374371 713064451 763963842 947581256 934387306 947781587 806848494 895650905 298667223 327458407 548779158 865375442 60109603 426558788 456230116 963608322 608750486 764766921 873859029 938598652 729429728 835664046 732036976 856483239 18030224 714396087 312682371 411963875 204867861 569851948 776528982 873500915 657768057 946567769 776485445 827080382 529964359 731431614 827072713 900330084 919724710 941899873 166581122 864470877 675954303 999421488 458947243 950436344 717038201 735572773 388295664 687194589 430362279 544937922 267773656 559358164 824896410 841335175 581701178 986746445 555725160 926253065 4011348 224927420 89102378 523146419 433475000 826432946 608039130 944670653 715067993 754315321 977152525 997735892 697100418 983147023 217086712 436157624 197662637 246101985 607826367 898827581 642920713 901277926 762827627 870771740 54102380 644664616 5498724 253523297 161881689 375214536 168941717 251672771 123225514 885175846 168252529 938993300 265440407 764074805 563378687 772379130 527906003 988523945 330560163 396270449 966858900 992602382 496769560 994242907 867986982 983727089 777661286 816554546 636719343 808880213 482898285 644145493 571883639 910468162 51079173 162222378 439054857 545416369 109405325 992953218 71635024 938359692 342060158 819541385 653532593 808762839 978735243 994166698 295620419 890549660 103622115 689158599 164401149 901279492 240875172 665637114 450115821 826160152 325568172 665433001 597752854 790374110 349631313 497197297 595243495 676227226 904297534 967596115 284633782 862011348 82140450 539629388 641062985 847526700 971240424 986593412 680776154 819549768 799758893 906044287 4315654 622254272 716294696 845158346 17552837 969314424 795830522 819609283 98547738 426058294 120398105 570716117 896391642 925861027 211264748 297463035 462153880 983515020 168549387 424739278 384446548 670934143 575233488 579406506 194720581 740208663 513691996 825033861 242703771 936424218 343978430 524609185 899498633 910904925 367429962 874676889 888635856 908142736 260072789 587314699 26966959 348792033 28015885 281056876 211959460 245078976 263567453 364108952 283875952 978413945 902943987 960954738 761949002 905744645 255510668 282731817 831177585 953666347 546961449 968870144 745598351 911527844 202713507 633869020 316231005 938335898 775227121 939620440 937494255 985533300 920177411 960794050 959861744 993338678 892494183 984520454 492326812 678129383 301422001 316193925 551969260 820887190 161901276 653451572 393852459 827342954 415341435 625625001 302349189 847791363 256266026 872713969 986033738 990667663 599419297 696031465 328843977 661251197 380838669 715466410 389535573 994128511 260271067 578212355 369732167 759721206 894933616 931738716 176537843 606873282 497868929 618151920 8689546 743433009 576154230 786558204 502843028 558591287 125972134 990083054 136115248 412503826 541826864 858095972 31395505 174762520 942206715 995162892 127477968 380553664 289684160 859060621 814580905 896218862 544382150 981289340 206322721 954640619 50206376 88827825 171054710 642337033 22916557 499773378 94217864 150005185 579781274 789033573 45862663 177325074 370630495 705137487 606721282 684983221 936616015 942571772 256935460 314208392 52248822 346349920 597920975 707897127 823149800 965278866 561441137 786911788 679802143 721381645 925623615 940384648 920445875 958529459 537226711 614914944 488780436 606668727 178314235 668335092 714837946 962526536 735185494 759378708 771204277 939810171 557801451 578678072 317981591 895255243 712873029 773686187 612081141 928971816 391052424 819046484 670180447 961498353 270077703 414917579 722360263 725589939 643155034 961378223 720082543 810785616 933520798 964055433 196343309 651334624 179715989 567369448 226428254 399774387 364080158 738598986 722669987 917188483 714375492 920779876 82089146 123571950 865382303 990860667 42518611 906888908 729230044 837770529 387871906 577729524 221849611 595769891 251466293 668766549 720491495 750590228 178003519 979246324 893530435 937566708 534783028 865206731 636640684 844216866 780938546 851885864 154649026 221508711 538540270 584631702 289393659 655395817 435732582 840520887 248163407 483076949 831290537 919037663 84638779 821143681 320968611 801445392 176866495 512147983 482922163 783338348 702995389 836823913 169163010 823820638 871011388 875394922 577920894 778167066 291586980 492726319 649043297 682349580 162976852 833992450 478097982 574414821 605504303 798145266 994489452 997987329 877536673 910598215 524487899 707829932 473355255 654506756 295147135 961586223 284330381 622749194 850596118 900454843 487503292 504219806 383634407 942139195 217994542 780363480 833779086 973396597 280660606 359763877 321889558 943427514 594956374 729190363 732973387 965615110 734758913 930969623 82133867 791196754 97078107 884608898 151287176 692725934 833390901 874872486 7991086 524522081 935831024 965899685 662049144 983462733 188747202 299355519 160486580 711862513 669372351 867788805 106711130 213192477 20195748 570867255 259268975 421190041 181001860 460429301 435594978 812384262 540875754 741360727 111684419 293065472 543723680 557060451 256653953 656177029 262243929 298229800 174784035 582731539 678970615 722297567 476296655 755900084 859884319 895399287 109421012 825003933 26337039 380197634 486708649 497492894 644251466 870723332 129591491 728278088 949954619 951478786 862931964 971603098 50511500 424875518 677466960 821387237 919376473 983270282 786894718 946994826 993670957 998553682 649173486 704073213 835477208 973369249 105464330 562461880 430407429 779590501 344419705 977722967 272795275 416379657 660340870 950121819 190991998 879030030 627279366 766643353 164255281 532527690 326996434 376769232 443426190 757147964 269690038 768868714 825336567 907199426 615611371 952436271 523745068 743027599 120170484 806097153 887578656 917345896 967005486 992951981 196061306 225527783 956185629 991898851 178000358 222799426 157618035 445816809 440141355 966380392 825082172 834428510 497091924 535714790 380160941 791865709 601445444 854983103 423339716 617363945 311931415 611647742 569774798 666728572 607274393 992925475 308931835 618104713 758904106 871161559 448754479 840904442 512363467 853799003 646001985 702677376 926246235 940683515 787639159 844400747 889346587 942195284 651870509 965062376 907043010 917668949 294801695 898730920 712841798 983944593 151918750 804633326 257710831 279363063 939240104 987699013 130604564 485156950 772965560 839484347 266477757 656974576 102348828 272414083 861116203 942797846 583255931 956065845 974806415 981801759 384934000 393304375 303030842 852774084 325306305 577459922 596803185 924103531 477293976 805236658 275542573 469380324 597506499 656632985 565609686 905011148 613546692 946934825 536007419 786736730 206876002 363366884 118532767 732288329 306473423 619963886 875581770 954676926 23037749 398637893 829466687 998170658 259405485 444634794 19876392 137316990 182996570 587053868 300558294 404910444 675255258 883799310 652391463 800506907 973653407 982237669 503278072 995912222 581437514 639253822 321784064 641262692 712208361 995093740 520191422 652233657 840311525 842408656 936430982 990744067 366347522 697614906 920894568 993023802 531137833 715180370 780186730 889789295 549988125 740695323 735117894 742544947 770331190 825014618 475290252 780961517 362005794 972319775 941077176 960140746 948316767 977001242 610350982 995540094 250901739 808216612 607363087 702759103 556548785 606899456 920719920 934914332 336454987 982376055 7063959 944777330 272088683 861201594 407464303 501148381 322815992 812739439 362164031 510213800 475442101 517024699 826195774 943994782 844400857 894271512 299732730 843633661 71301648 612624384 1490194 311439751 167679546 320589193 972373054 999461836 414152327 712252035 406894518 521559506 178688174 247483047 333719333 846515795 577370239 598448402 596768966 854393057 21168495 94902226 619313518 809097917 843648667 980730845 628911026 907482392 245198150 855504469 827451270 835290248 546579514 595679552 626110527 804395594 686259286 831117922 88667220 966690185 524704529 622502811 633254488 975133082 541499735 871007007 54733020 193244898 48757754 764158980 478972659 746568521 853875984 935545650 208853984 728364262 686163580 714375131 822817460 864307581 429118197 551131133 526679837 719141922 582066183 689200459 905300047 959358059 263058187 827600655 524608801 626544880 776427512 949030099 367823851 508938179 687319194 993604948 539637050 981902056 479248719 964238627 398326984 666198834 927874313 934765882 471498555 702471991 656232940 916742592 877838365 997213824 837205612 919612960 657955531 701184592 241889289 511726710 4199801 906364988 68499820 291273872 395606503 423745301 815699454 928657707 214077316 922558092 218462413 507693503 930631019 969198144 949011939 957416736 521346569 617879908 132898022 449438967 701073489 702045929 291455483 661279856 485754151 661417431 534310602 713160872 139697094 690948559 206391668 771695350 124235121 445833001 582944876 899295719 891909241 956003074 470009457 869131082 713124290 875676382 3770554 151636897 660930858 951390518 217162928 682381920 83482972 313972404 899701821 961994658 350510126 984758580 169351791 953188677 405626004 523410954 164924638 839993615 874688316 921599327 585434279 951670057 276550916 953669591 606103300 968085548 114621646 864349210 924863825 971160323 17495129 639191668 837159451 855594807 567131671 776932105 79019584 362787455 571986992 738364397 51676041 486041788 396288747 762799927 721763219 802143086 623334088 986856323 145061109 460583285 896131975 905919421 517146423 618081679 998622722 999711569 304493648 516730899 743827929 994717166 57068567 729545248 708407891 970024778 611723832 718976915 38572433 318538491 219416707 735525915 553865122 799797371 678235010 945353172 918665676 992559055 884093918 892339959 173090503 940754643 980417174 989524701 435830645 710520207 597235027 952009247 220993660 308800300 33266045 383264890 722298207 741968280 682679830 994654026 960163515 978961325 240485885 778093033 717938252 926414001 825472899 989039466 158788249 303639341 944791372 973914317 717615551 736051445 63582487 483446833 758439512 884542408 423275718 613985037 348666897 453644593 193687871 267490307 824586801 932192213 295366275 935604772 150840648 667915468 468594942 615808973 69908448 479704877 490275577 990859697 500850155 716871818 681768751 717197573 367750211 692977077 980073969 989053735 381529847 452894869 947231341 988191384 241825895 740382760 337308931 442369956 955538987 972719561 778853493 987421158 193403286 387117069 713619461 989112108 572942536 912189584 391654725 711398096 705254478 853162513 835435798 978146249 180333789 650489924 528674355 919023503 299042212 839994610 993343140 994304833 654803375 893033899 246312792 297863874 422710756 513775193 700234150 959238150 420896040 788034615 499424834 927756526 540883821 704301921 767961814 769642491 335952853 912860696 345084255 369353252 78781856 654216222 237639026 305029928 796012679 853779582 251857587 944315472 724228180 758689040 126306874 218469014 216027153 500159476 591248864 822645856 967839448 976174734 343778767 870294446 407438334 789863846 324527756 955219025 232036828 801263385 757171829 893667271 575723076 763197450 653062284 938633202 586249494 709800305 381854079 480825644 466613611 947450956 597514180 781718313 967092066 997910983 487277316 531258429 139388527 713336444 754976966 910109350 912390419 953711129 976420074 988485923 860182365 992101352 670386421 676659673 404659878 981063324 2771090 342227712 451732835 879939068 522596282 597913165 226292492 779656014 255204377 298859797 498847582 567580930 579266876 691604591 642971362 845746976 76809184 505837835 983693948 991207799 372434727 444303447 964663139 998582314 240660328 861370950 104490463 955617149 419701875 878433401 411982287 784592256 430946782 784329148 137979682 376926398 725381256 781153581 209194920 993268666 406472888 889549606 128814407 718937473 525913099 993222230 323651112 570997569 201833050 712788964 520252403 609302745 753122354 799800278 36114180 262837032 270182156 296327153 305444933 384289350 204182124 762148160 458429481 978277853 623288158 919274780 334836911 603725835 541581959 603844925 946760995 979377638 643568241 738656210 78603351 871349079 727058713 869368490 888113142 889755048 459297310 729670034 277164010 698578283 122704174 292385102 360558189 651823709 239914808 339529256 497459446 618342261 561929844 932263503 950142951 973968257 447572481 871150982 689767814 981303418 273705802 626584422 859449899 945550743 160289292 699876699 358315155 785206775 95493917 969139375 659976188 921501750 733522183 792769779 504657602 594011480 702321807 752602408 22940195 100886716 671049716 963308750 912295996 982325556 810950062 986983667 994353918 996944735 219057716 658273314 177000292 288752798 88319671 250025436 37013368 601633765 831935213 873495867 281263813 981473530 817759416 956250571 2006837 881481837 538267964 623977824 861684650 988864246 642940027 740988347 664793893 789683876 988895770 997338838 576636279 621911283 203302055 910151502 880568776 958680013 946951813 979171798 574448135 651240387 47255571 841974309 369025956 616350308 573639219 733071156 685654301 908852488 811291621 936393531 671851528 851336904 141548433 875852536 582160273 686594694 791219292 835586795 575969911 750307430 758657945 874726907 12321267 223203169 490527691 955937439 880331219 919300092 20445988 663571861 219581775 810240671 30169309 442466224 321199123 355457191 346543576 672733120 500945139 967556101 443937483 551297225 541680178 914493241 547899113 852518534 528119321 991151267 247776035 563676278 804387864 899535027 788695855 873079199 618728825 805178734 714663096 784491415 589027144 731997995 679631756 710297525 556572595 897259825 803936900 958968614 416561301 528228147 529372236 577137836 486561777 649990004 734981140 987712947 978823298 981430137 545183744 721789921 720721463 922096050 470299964 742233335 599224017 917782244 960658764 984414533 124529948 303416914 890737910 912557775 982452410 993809255 104943211 994051159 35548462 324462793 178294306 463698747 346188044 961816374 353763743 508911389 224189892 572164556 717015722 748674135 214699440 958782295 827095647 944939731 261986910 815715687 715047498 811405955 879657714 964075644 48132477 957615351 801404137 831329857 923669768 936879982 658583981 836601766 119747561 788174279 907255468 911400416 201703070 500278789 393878210 626674557 696324975 930819873 959290668 990411035 888913013 895519230 825597065 849259136 15673000 762738664 955818093 957593143 608122206 987297696 871663015 995736322 460154853 524710380 700569213 720746712 648052943 910691756 998903046 999686366 763679239 992887610 624439947 682401554 128963064 947652411 114314933 713607487 117970101 172304774 297008965 991059373 758807431 758938446 376959721 785521582 838025793 898503730 289342707 547613010 171020519 368048060 971915449 976746108 221825502 260391516 294964649 549973729 65392828 688810043 826891806 890515820 127079557 507008077 887845220 913685506 795256166 913359888 702083856 846503274 36829920 979686381 930840820 942872139 452165967 559205129 188937024 194493162 465146116 778183577 846092992 959372743 490162424 869818335 258256944 550544786 464025278 503497268 270033478 606049294 926809069 943224844 282185304 285487150 113141619 929106370 607681800 882271873 44970808 208781863 535650449 951215823 521739051 893216932 28062305 688288592 311803917 566287565 940927441 954117471 563372506 796444463 81881678 885874950 821113135 979903192 677588762 908194402 671726593 910619144 355102959 921339361 798143789 817024602 364973353 986696338 299947112 325710385 576774510 934477462 5423105 936780003 136382793 784199672 484815491 743751941 345789170 805917615 897214049 966614646 364819506 472319145 124334066 965479892 813693702 872518240 783209113 983730487 513901644 629278763 584258348 753212689 571451521 860052940 401756011 409032241 460439860 911400764 131953077 524277726 331308098 538037694 212930500 711807992 154469242 936658221 770269310 779306654 15948115 698204713 560502322 920678617 324303324 456697272 746557161 821092594 286650719 509485520 595172240 659116509 251150786 766959476 118026150 561652045 833661822 954128378 271230937 504061099 550425411 838888660 367906849 424720673 890852154 935559774 756198151 953573078 227590940 623075065 516129660 658805140 339556743 940262925 5675822 62415893 154069288 511481520 543880418 797844638 829114235 864530364 181871598 886926302 116429841 225779105 332797990 883341302 840038049 995742395 694453709 779811622 647163693 801542500 708491737 716771166 614457199 733514206 926686740 973297472 590926914 688837857 694749177 790722804 288195758 719258033 303799420 329483064 137113817 608396958 430559017 838149658 821394022 888910417 811650970 864608138 901470110 923418550 470498712 930254916 226676010 941577656 965972895 969927389 78475426 518235169 568973778 751453988 845183449 904591515 453788631 608909440 684815826 710503132 315668573 545993364 283316378 574517057 612399042 634650663 459894685 546996733 633875585 991855004 307748057 758370140 845372580 856086310 415190443 670319354 264461038 477501323 606639591 764863822 737492034 871783334 76483507 172693013 358742481 604248186 175412525 475752049 702195538 787833460 788698830 925870172 538068132 999011865 957322713 995935250 728960596 763091928 652169130 969738079 387784642 885799390 716054727 861032049 381360655 763106242 828985221 881170535 345603432 789480228 251940912 709139815 62772636 189520557 927183038 965210347 612664683 950370991 309798607 435045675 335124040 794256044 97030151 108159235 315503854 815685927 916247274 970366436 302462518 879439440 469584961 778699439 786976150 986914327 965954335 973352849 433462281 996305637 471674739 797616225 119812359 831851580 826003651 999143269 319036225 557136260 448944999 600677713 606229884 795786258 17314065 554192284 99438120 527904889 136647982 970475715 74378167 515051477 79806261 408928420 193890999 860121652 34336753 122373530 969151063 984022782 471632953 924574633 577797156 678264410 97753270 393248532 850586844 937222153 833831918 987481650 165085602 595690284 507287651 879670171 138370098 632076026 435915998 494401780 597236130 920755594 20277633 857156632 994228019 994668362 164424877 850162253 814473566 831449349 115499383 943357158 182583936 277995031 980373835 982620212 72990429 272322621 579432023 991547009 335911790 905126169 906191923 924723255 316660690 627595802 126211885 768535710 1400919 959295554 320570963 601074751 466203888 559210441 652269361 920738114 304786638 888261155 406853675 433903911 639912990 705538535 911351166 993527676 921266216 936666883 717005047 835994669 742103308 909108378 967293372 971628016 865313194 968208813 111851067 891475647 807509636 860649862 939563209 944862602 780705365 818396603 164424219 569064351 282123017 390724864 402732411 945294987 810848203 963567450 572579889 865144574 213679558 746687553 762350084 868545082 250394530 420959984 466076290 683243717 229602249 415929584 164365858 337664358 386487367 528016586 776293040 779209343 834947431 892255358 788789586 838202659 740902249 909492598 574946909 657804551 56176359 688776059 12440685 220495938 684516034 785222452 611797162 655665453 826545691 834570505 511981952 619433812 239010519 956416105 438343470 940914429 490934512 687061216 14446538 820076801 478366659 692710030 530528391 763959336 767944669 795466584 954778575 960767852 414097839 433251342 33447154 571664537 530053847 655444289 458723111 522952798 963710165 994182949 636777124 889972566 67328932 393058471 230582321 294332879 197299166 910451466 248990759 883393763 430561232 771426245 768553159 903277371 783766331 890033193 179217023 509806728 630272416 644925599 82133943 904140475 218465701 824975833 961370791 984075277 927324910 944289964 630875228 891361725 455689651 820649971 841555352 862970105 62652316 641487307 934224856 976426434 193494744 624157458 943632871 945512909 448850172 760294027 222201958 813137736 6618480 838495811 150227354 486949108 252140391 459118501 16443458 784401579 143709318 716233284 763446519 958020378 441983890 834462990 506580505 717918901 200890243 227407616 599886867 676674491 979955852 989299681 839511913 857826401 714115938 759349603 210526606 721524871 53155814 262572745 223729419 680195757 133393695 409524003 610973643 828302874 649404570 752732842 684979047 962958026 129968807 323673125 389985259 629814450 655761779 935066386 214528647 258149362 922387427 960459539 81190488 581248085 897754864 945157193 979163663 997211060 712037177 953809205 9052251 942117834 511819662 595759923 781769135 844631751 433117379 521987662 993099298 995475489 719271270 831745759 430566307 877069150 851024736 963154373 693519006 806041499 863491245 995755883 861304490 929800221 290960231 991440644 755427666 938250366 821397539 952525163 575126108 633936488 530067609 637015423 7957949 52849538 213548022 315837456 2963401 683613553 639571620 899053381 741948206 904791941 820176840 913446953 762056966 865192564 112460329 258040787 232789595 463045813 452401326 532876814 77162795 814346882 247445083 573894038 421035266 492276544 67110752 397249830 182512910 364645433 75924601 786560462 113329606 959419775 570458250 629031539 370990954 574382056 594270092 953791643 649607504 764758303 428505230 648936061 424168796 810807418 439039038 869569445 502203890 582685995 630588859 993527283 353295913 952210737 624638890 887952189 722710969 909669901 104771168 724158466 417122175 521557465 894408532 930998417 299230502 944918451 851353317 992123314 226110539 914788972 640590655 824053628 841180391 876970600 780079909 976414960 674443798 953858556 73563647 276416382 936456321 940853995 753812151 907673682 115495430 917379464 549481578 698375616 819027019 835555036 506172300 818523159 349605269 704664169 655779536 906905943 208262930 895708263 18039806 317348222 834321985 908504249 101080223 641848038 516215623 913012951 312990151 390750931 54988288 697022131 695902636 754941652 945116751 951294811 436275909 614418539 326364763 970436795 693201360 820516859 468136328 993106077 274137945 796422600 300892845 374591091 436361872 557075791 528809095 899169310 8753555 149218198 778577312 875735275 503747677 635969120 539905563 989217727 378282751 667448641 51796345 615963349 543799602 583300074 11226121 596114461 152593120 895473196 237444285 715462116 650667005 911024992 957078001 993174701 868464039 943100183 373597326 699632631 137044449 913804766 413351118 529498089 449615353 928599967 310200416 870869150 344144986 424304478 58685498 101115259 724656696 805621280 622696595 696222515 805929493 824486724 443391884 716154846 299841670 920776919 212346534 241684276 179940866 660871387 267111821 728222725 27779358 493630935 280501018 905889599 813934042 847315086 644954889 785625504 653164744 990246840 343303061 848125034 149786278 554008504 874960901 983212009 780510201 785101336 563659128 898374731 959807494 973402430 559344025 742935282 392444727 496711476 495269952 689172899 140684220 455299045 529052606 967082079 378220630 630552298 402547842 465415177 168713803 384290162 745081885 888831364 253511592 957505063 375776537 872635012 17463321 185649276 885998322 990571970 271551974 981073364 247081561 874465837 838652579 891591160 223139133 456766573 512351648 627921651 959986545 975846279 50076041 427768402 246998972 880203119 628550667 692049586 610010528 770635354 896629073 923551991 966160498 986868960 543950982 685919281 536721467 827065616 438501441 705685805 140936337 400147615 43209637 353983344 27307007 789610331 135050333 830451586 306575744 801840070 24365287 303729780 588601192 700938773 878903005 926776565 398379427 612320268 296593826 673050984 60582912 287400566 97241591 538358201 788089340 983043098 920691664 997872084 126505929 148614819 443236626 702083563 966400113 978538957 98948114 190235399 799648725 839581514 664454895 717218257 23712518 446074156 655263726 679107445 963231634 981020938 642145006 942196547 187185381 391189152 523322266 941551747 150205138 703496212 421092435 632484817 787794355 795913849 899978955 958018746 238847024 854332326 363186362 637986810 46133951 764912238 328738562 343109695 107340819 448476843 689600499 931886151 739022965 944770122 74205298 155833110 209282954 770299564 963885609 991435841 187158213 905732439 17708031 332909928 896906319 912817286 561053000 709891331 446862193 635627051 641591062 959387299 938639375 939191851 27190885 299784670 47088202 753004049 759332656 811638739 774900104 863612179 56701075 210841338 863100611 984910600 378612549 460344483 766111942 876895752 136087885 175933444 179771301 683945747 630199038 759346024 439813327 624511474 211549185 408583294 710059646 859456711 654034911 701162472 292807540 814753436 919143735 975174871 307462358 925072961 812644766 865111672 498120131 783985798 659517062 992138870 764080802 943165162 816529419 997125592 179806595 804796678 186674501 409745735 161417342 245814360 212264833 941389843 828688454 836745594 506561509 758562694 4911565 754617578 121122558 856004288 760247392 841683495 291379903 870975398 59056062 318253349 211066831 456221017 931010127 986187694 158326836 536170102 930718761 982897016 579670794 781780434 836077172 855771071 246986582 536718138 686640281 837386352 676215167 681795195 383404722 744141818 623970619 639048469 440320717 886305050 58387983 274756298 156513025 571773360 361801805 919160622 627316233 946548405 362440929 709734580 383832411 495193141 772529945 842978137 532931738 906700547 511978437 675841877 965813445 970493104 714230970 991225134 8605766 971694985 446052191 914746312 253355306 822697270 691867554 812737910 524514528 561564335 7847882 696854778 176259075 625476486 779277989 840230765 306841350 482383350 155563732 416482270 65386731 297016391 801849895 890974374 867544338 987885213 277530781 609028403 780869426 996334873 673080263 734748420 322251898 406844240 273190261 280333298 384671021 740169352 58329066 577622575 843095290 865395531 787637928 911852031 879325322 975546445 74374710 708417420 51273285 256797794 147362155 659895177 797668489 995504203 893063390 982940151 441238872 921092118 71941204 942872336 435706263 648858197 141415036 438010026 238146521 331548566 484498369 738171651 218615845 459662196 852287524 854872460 209030597 538051456 621578230 676070289 90749880 645323203 966693016 997831430 896173522 956364883 339420384 612475775 444701769 798348914 850449501 967307092 519781226 721577572 395035546 420332623 289959663 661096198 219619170 344607667 490612880 563243714 996812580 999838475 286631384 375148967 882785564 955823213 328596581 425336035 579801978 660128497 691074113 940671192 750586124 858881507 658571142 715478822 24620466 641146607 324015817 923658238 567145515 767456820 261403362 792702700 319043190 514998209 927462191 953526315 308470249 712099322 302531212 389655327 909699377 949105861 539628974 545895516 867863316 896329269 384833276 979199938 94727153 281403687 501110931 683243992 565798137 768316353 470983813 549064583 282203477 382590193 600905063 686931629 142055824 441553519 507816835 790228637 334290090 774449905 467354333 704831098 660050965 732691529 986991013 990074708 901373218 964134430 787059225 963727825 844974924 902764625 946902021 969423757 1733023 316153350 339085079 452427388 929906707 985281959 284805367 362328584 263850727 739905806 976524119 987644529 765432498 957431369 83016946 285165242 45002122 99247046 314277788 511420303 779190628 953847523 173653804 196015823 64010571 780935415 634566066 717358330 249089674 985812921 8054577 337701712 717506771 894425440 994290561 995063717 632507678 940311210 464826339 492633483 756263462 814595437 697244775 894295648 746318011 988953841 986592048 988224622 550962310 616581636 752379998 826879143 110307829 222255575 742055006 865039088 131750523 697342014 885412503 953227715 829111662 847814984 324820519 792330832 621940860 669497694 429713681 475808244 928336369 954775417 271313208 502687862 704537576 958393617 131586137 371685625 775667743 777118838 330528447 336614100 692550362 821253298 834504484 977749997 886958979 908338592 30391279 197493397 468308524 603306771 237433848 985395610 153123891 217992071 516886663 620004682 34848936 599536945 744685885 989368175 472820636 476528387 447666992 975637473 81801589 392296707 214535136 892673004 496086680 582176354 355663328 386741286 980983100 982385120 246870122 321214172 518950320 968427679 756776492 932805067 178782404 515387811 405059662 763510122 245656212 679604858 593595615 611437651 25773371 155877743 363292489 742157058 90803391 546812512 127932344 653349603 762055153 992016304 221955037 942161304 542439992 807173641 191946334 787877841 26289182 488551515 748907483 884021216 9500235 774912802 379812272 532217714 240010767 399436919 518213422 562676063 306227459 819931255 512129254 845827503 472278681 899390598 914647874 974037737 728302714 947695150 910009547 945029109 861445615 956241480 141186214 780809489 496786644 926857404 515535483 825361609 898923996 995545000 619424013 738114902 584589183 929021665 194883977 698664481 269769536 670697293 978355389 981601419 691817528 757099350 494838012 540355455 712048749 718639236 473173172 573268323 978251955 987438130 32876250 77963060 856917064 950738416 661838545 846993697 730918676 797584805 967210747 981907141 632421586 837279235 49235705 260731465 670090264 698680437 257523043 352290540 828801139 967802916 972631658 987582930 632070301 952131028 925386996 978620230 169471197 895230264 717840546 838570629 353322014 472947947 42307536 592747602 901448 592925864 341407438 915494605 592750932 640000771 644962799 990811005 459118814 586890572 11985567 882153740 867097767 998339005 572246523 772697284 451547545 842656833 434687449 701178375 589067507 664599118 646949120 687720722 819399194 912557229 495378671 638472074 175017198 505837140 585949771 977148007 323181002 881596403 329706330 379146723 832915189 893930167 639132218 855726131 548156991 768180393 99037438 469233082 870441682 974194413 647846748 724687292 793237183 921725268 380699187 411183678 642695372 676274786 790864702 956813412 765810744 786921460 995159489 997266739 139872792 853907722 999303722 999976515 656085134 832295623 77961827 163613568 529699344 556178425 840577052 936807532 518650745 909110798 614341461 850712484 100553103 110716963 656208011 955875780 254149535 779713437 220988287 810054511 765244148 816672599 521061468 812035183 24746405 341498981 701152237 729005861 602262884 850470452 379120682 603465380 587687325 636896760 403177354 753763902 318917997 794347446 781066092 812779516 737742493 783572753 820006009 914701071 788391162 890250117 48591154 873260533 960792623 998718310 51711372 433485868 886667403 991160016 86775701 766500054 440227825 889924498 659905478 887936797 79056681 608104119 568425563 947546936 162868235 367112220 458408445 921033776 789824628 887171167 481449903 756803123 751198976 979445800 308103205 458055782 588608494 610203094 628214647 871760836 237357993 815921882 246271902 963360882 316343192 483291513 617520577 770353824 935541995 942987362 195666747 489833989 441805898 863865684 854489437 985824799 595433427 959987153 13351692 697613105 228186168 292758127 178036046 269022858 499337176 577785696 721370947 840476547 382972174 444958247 29784031 202124833 939371057 969707788 180661192 268059202 24411320 709226056 352834765 655770004 925750084 964152060 693574804 747637856 138186466 658447875 764422180 964993239 827258521 895322580 223524820 640596607 915372121 997092583 947822520 949415273 192043752 918533797 793810691 824021099 156716478 409044403 274768456 535496185 74886614 681997393 977192498 999573484 88053857 459162313 154090009 807511569 561415784 685399263 96743079 245721180 82067518 427013350 664293709 767827566 714327821 990521496 294421850 605683146 778750536 958960180 500601554 670076085 903681366 922196468 666291032 971770444 417613013 825227699 975304525 999337747 193021194 394770846 49596978 385805223 523701128 634587321 489780738 622791321 590781880 769825807 183225514 527618128 980047903 982960959 499683059 512532498 231944535 649904469 218526682 955117767 255109625 631916223 357191465 644075394 200734621 568860656 903053106 911588053 866139020 998018636 789769150 937315869 146041651 333935164 884656762 996623774 502440347 528254311 45799781 445466775 937109259 961802749 60836431 282430296 829892120 979363616 391783373 613071250 709740825 730287132 144769941 458021956 600675497 720692126 71390192 851144108 656708526 750043659 35452531 883212837 282955350 977890549 714198438 951352306 728971350 928495302 993353767 998322446 844798348 952847423 233309478 724212668 803616419 841513100 676631729 908990165 453471082 794754932 547189297 737900431 676558698 783165401 114137829 481110136 723596160 739500457 179464843 594818675 942351001 992125284 355494108 769203895 105185322 180537135 310430560 656929104 428929592 697285991 832754150 866682668 118863127 829921144 900297044 936644634 54894959 558736279 911487956 969484055 853371471 981760181 395218531 844666159 457274086 864909320 284332274 931559359 265522801 472747806 622191429 861580070 937496747 999246047 771685449 797962576 177235083 654182245 974158982 975490142 236152380 411769283 689118537 856956872 402317307 668933590 966229678 966846544 853284102 992310486 785622312 801668414 75756628 850593204 471909576 716671007 79548304 411708319 617924206 823143901 271747696 569429093 197784300 813300890 618640947 827777114 462933430 836458874 211500525 799801731 171058995 699643392 472257298 519381232 326274217 756581694 38027066 761647345 257432109 319193599 680591384 725889342 619171025 880759878 476524647 742344681 925438645 997605979 556995848 984823854 572317838 808511988 21859536 562829094 421097302 521308563 553450045 704378162 784600258 835476934 264753748 338700376 794218184 977032006 374257465 391930613 516159466 711595580 669844620 927411483 636238656 847417297 343681338 358060522 451616923 669334753 163714822 377176831 73720990 983026374 981638608 982031577 351823385 966304839 247651531 899930762 830333229 905210364 959973240 983414384 442662014 680128333 433780901 836028592 133472163 338036842 413265167 558254997 998208795 999681631 170765012 512696717 308287581 693506331 773380995 812969407 869020749 931084794 551325183 893402626 959485970 972268633 30946604 379328945 645178418 835782206 229606337 927218872 142260027 440210851 803553316 916815303 268167740 460273387 498343741 943228093 655001301 985066118 235802575 939069147 119178494 710863082 541728776 824827727 919349245 942717767 713830057 942743634 14651287 910084472 633836741 746765901 864916744 931787688 481560005 715066516 751686214 837626584 197879156 355436405 758330342 860574594 209679669 262755600 462407288 588801531 382486119 607442204 776895195 947331865 266029046 306935748 532720242 864829734 556466345 840910548 673840600 735186306 829806937 995861049 907677781 979417902 1560119 732046764 922280811 951738787 591182555 970449695 479663540 891047864 206833995 625110529 199113510 823414514 105437613 869680594 183689789 359795700 576607020 846641365 894158148 980801895 268290890 760883531 327211404 453878019 423916336 806683408 200917758 487359492 39349203 206450078 230438467 678350699 718713686 945650180 900283756 926942732 564448889 598393143 480412826 970009679 685929762 889071173 382643702 556591107 165035186 697904585 974167877 999979745 681233940 920503772 225155682 652847772 301964269 390205230 426395951 886754464 446977588 869276862 353614569 402940579 625604443 807478674 46091738 116449394 110967494 769534497 935370136 943761188 554538073 630092094 206528359 990863882 768046626 990205081 720423827 784868359 551327157 753222463 5246935 912611583 744318555 895796817 886982634 966164171 845781963 848949916 570311453 649171042 889881810 996132349 401687654 577568069 945462121 949807290 244581547 309255598 973277841 987513548 70897145 481556882 600002217 767253065 807344929 822381145 136641294 806910965 759366504 996633867 505933904 518161982 246103396 892011151 580979349 592809602 734717765 952062286 8534741 664184880 306414755 930199477 57170629 456111022 896892991 908709213 821912255 864167131 219455878 410002890 381021141 917903605 833996201 979831670 512118394 775383526 526689594 803110917 439372954 528340003 368545191 551002947 343121944 725973634 716855606 914561356 996270577 999338744 48554276 352540558 797456721 957114189 653407055 828932942 114280373 706423436 31204781 609553228 769009479 903292199 279591154 495727801 444270927 608222941 193129463 835694068 999207515 999271193 523479228 665116442 333530034 972243961 208404291 418608973 351327438 898982594 832855903 907680078 560736273 929811057 872944555 979356346 440246726 597098606 791969866 910535187 727467782 933507077 491399394 621274752 833500316 845102929 564261924 928285806 683841514 853822171 40579808 718225173 933496969 989056218 118817331 705981668 952271093 956404301 846462195 876609183 565577311 822759463 821479378 849701812 505731351 880418995 796404457 979688740 347320633 401900567 777085503 800307441 51671153 226021522 387014870 495078969 156873621 394375812 349421656 821328161 407066520 622485908 457236991 728638062 69722808 459592212 857291918 969858133 130499073 198912275 981331855 990944748 554831269 808255764 492403906 606400999 539258601 910764051 632853082 759762999 274375919 726183671 493727949 800402484 49800849 449223967 354551985 448666314 866066802 965181578 578517339 878611357 208783665 946153154 30027250 698778811 891081082 978802656 504215429 754910209 199998643 388641193 6514193 674624182 699121989 973538337 270246659 536133657 667752302 842659097 786277969 826250275 836422641 958669711 269088231 676909768 891293695 934411570 542773 176387726 500286013 934438325 686604806 872522625 896590580 910581024 687500800 977885555 3392695 579470685 770745009 891367171 146850425 921092405 867265304 914851178 745203878 942322178 73287497 354590942 231859580 375583079 511666763 551004967 860752741 956399992 400861793 715116878 871250636 993618117 413587688 999326883 660880600 680517318 887896289 904302052 291943857 413295043 189787959 731226449 853751298 879974779 187470430 297778341 907936004 960028223 532016779 946832736 532152824 655975732 151448037 477894855 640923927 918882656 204939524 231932340 625436222 896986259 833234271 854825603 34158499 593442215 52320952 957706260 995808464 998495670 257442431 894823573 547283252 934315008 221155188 585856928 901171684 970699029 733167224 961708143 668213608 946519643 559791885 770572991 837873171 854552596 227453399 604515169 442462026 660240003 678747974 749569441 312283002 771195546 652299120 829000698 875623 622236167 260530308 359164273 771344419 823999818 40138622 682661038 957200706 997414674 745613983 998146055 896361280 998631638 869729420 918607664 742986839 860522484 811582909 839268862 471590106 850337327 401962595 640045242 508100195 838314866 940691741 948111282 952860253 996025364 239855578 377429279 672809553 749363759 462403914 942748433 454637698 593679864 184787374 705577789 731175446 983333642 347782723 503732559 994138313 995108392 807912553 900488016 1359524 964732077 419436568 740254447 958278944 977229129 432949264 927427410 791294139 902304711 693807849 807690700 978975631 982740261 932118039 977521142 846879114 920569882 78104529 139799294 93653633 926979075 960166266 978937994 222139355 428991146 88047448 448390520 58435544 855304448 5805972 923897002 503084507 938164368 334363850 552638389 957695329 974414901 26379402 549453760 870861790 890956259 103221744 952066331 843566703 987869614 954024239 988999986 336913555 851506109 683415930 905004015 497900964 543845577 265370093 756282274 109764540 706238563 665008325 977028953 564845599 728433785 137967227 347654560 150716334 447998377 521420438 588476062 709571558 860714474 956242683 970699581 461085813 824041189 382992394 391745136 20721381 193158443 898493125 932718331 241914884 808052692 448786798 600705373 176706187 532177340 992206631 999901517 648560148 743356321 225402061 921616773 504106945 919797504 480826594 755933501 201084430 225249316 781581636 874318807 920545478 926424172 57829698 537328644 190061067 966923962 387411808 740140930 418759383 800886481 915728726 973662665 253183339 346950164 909304967 928815832 673630142 728888835 871717221 908285034 212744141 479817549 559625852 617731416 345898668 788121486 767025401 901595974 7536924 341045478 269301100 747515686 208858336 516605614 934956704 974894366 459188644 853588237 502275605 619478202 302066234 422811398 923594518 938616049 397622201 552438865 880413517 964777790 754678100 970088587 200821727 281816171 219996347 314465284 716370258 922279690 642639548 887449378 878895928 908255119 545233053 983856650 491599235 985612256 244586519 467634899 233079730 767956235 307106606 680680936 128023891 433678789 53887089 916778411 909009115 984007795 447081634 740682368 618192302 869829986 249799856 437450582 916109582 919767664 519690279 721143825 623574211 768271094 692567463 936460912 466712451 857344777 817596686 945472973 890098766 976255610 779156523 881856368 264317305 931141520 173106021 920869629 631147635 892152688 749060062 793564383 647838045 705075250 838408237 978491681 175553898 623639869 734112834 968797927 656217854 927457117 516136795 522068259 489681584 522627845 469146833 989260169 50021771 995866558 745822757 875443218 938278043 947071216 479612276 838705503 22675641 496927350 850828061 889835745 427141050 929036683 974320750 988130934 598090227 660367728 150039500 175222310 901863407 956419136 389914721 745402784 111475212 575913726 434773785 720922459 629660141 798334514 272299630 453502318 512627461 761558272 519018507 559150702 555956833 734094356 596930478 970236521 165598831 452047368 803526782 911834957 752240788 827279704 203168870 877021381 140344385 336866480 490761922 722741328 924306474 925293978 113546700 994415742 764875768 955730057 331421326 679416423 655430924 838166580 161160528 211009737 515872897 532887349 399872127 676490002 576214018 636875106 388551887 972674692 363283858 879128142 72842898 785875522 208499233 747360336 930285266 978066657 803600608 963516243 274167238 516838358 627712634 676616355 262492664 760877381 250815776 487443031 247831907 430625129 630288205 920043905 71120733 341194510 14290783 639228552 449552878 983691602 847264746 983677668 639753890 852142267 333428916 484123165 187341429 318505526 702517731 810977746 840227653 980972138 693125586 835726664 750867234 817471479 903389599 978638757 197434444 833596298 751580796 988297960 151529451 700435858 989520140 994594995 340527564 763511603 380550115 766703184 143519108 855801587 361334576 540220827 159482961 354231560 723307267 892653158 257746695 427625411 532055564 634655550 330477385 607400053 713864503 960328457 838774987 894903867 344817325 875732731 322192778 965617021 189021055 943564094 529495005 936666784 777649814 963898233 486868440 978729460 236137783 962889729 881881847 987263858 3052877 213100944 218500849 618256674 699867005 742256378 468962669 865906917 857185365 867413302 94528349 914087397 884217581 955716735 513954903 758684462 353063868 961860784 586538359 794727673 801884303 858357723 605153175 689708975 252649822 468123696 682516629 712023339 724378881 905305463 360346341 429064252 762555177 837538306 890522637 915979242 997541157 998117534 945323913 954424225 484962239 823053733 180853135 986530565 755801978 844559475 603668964 931097505 501427953 878033689 838391205 852990046 100286439 561541124 697966750 909464926 358165207 802553519 914204043 960790107 366095907 759476382 948819020 962465725 477258650 895685224 96686839 217592492 33536619 409011577 714722899 735166487 733386119 821825863 980517364 988560195 130517382 532337672 616311790 727426556 315738584 522212979 656036768 903496259 761308128 985811263 972232785 977113494 86314580 502751537 31490616 659364555 845850206 895530222 205534208 819412109 344738230 928483025 525201984 592298401 92685282 797171158 379640981 842907549 448871705 750839532 824205301 985391100 763811199 954407727 126685268 633542201 444733875 594066743 378821657 571199665 136545245 922133745 725335629 745863434 517552486 989638603 573968873 769199989 854436331 987006978 412036170 562879788 584193054 862083048 728902350 755243162 409600910 512260233 821401723 822040114 760110929 906535938 832239391 940488720 881006787 980554677 870795074 922615861 209660541 662322912 673855981 869084240 169268079 433844989 681190636 849510244 45594889 456703804 891830282 916115591 835095600 926137679 956082253 957198839 832376609 957490254 468692824 629524318 589242444 883550570 784568226 792284664 858277137 984713152 241524255 944528599 818020403 883199671 659151145 966987994 91741130 818901362 261090320 679475431 175465034 796925315 521727827 870865636 338730795 439174875 474397252 557218897 23343040 867563621 857112550 872511348 594522974 925806364 441815853 573681549 831075068 969287091 912412256 989266288 242980468 594557660 516517930 697609252 257451228 519597423 802053675 862524120 8865357 649703442 165094104 277329944 534393006 573747220 921331593 988538449 792316993 856296099 840075247 959821358 520507068 815112059 81438665 957908185 908219579 996380576 291173677 357174374 917744696 925020285 613692872 887515084 676894958 681426425 886126592 942674695 870948806 882974883 325143339 570867689 226672803 573876284 301781082 682324298 639054896 700072948 816576611 988393738 561075733 587215937 813253146 997586999 526433835 829136286 242717962 460226422 960811359 963488967 255290758 352215611 47385025 404969692 473397239 989925485 956574227 998947705 700494030 804774223 60221435 410022106 597922708 783523103 991390876 994641707 154264149 907148233 315925063 350107961 451484707 473141739 158697467 951431912 708911062 777959645 477961742 806771315 304772411 954506257 86145092 476977504 742662736 751168702 526399424 828789861 159108329 859730128 611153903 715204088 90433995 874411326 361890313 930760413 467466672 814348618 884847474 991891202 79776778 354028169 706858041 825453259 562201016 746692897 300500622 620796477 422388841 960826430 164697750 398217576 333504850 516849655 151317865 674159233 532937934 933702795 552287937 594976228 523925771 650457699 234276997 899019433 23244867 883586421 938308007 954881114 847416510 966712565 947942910 958652099 919061790 920300044 327371036 625865781 757498267 930548247 600809140 619371211 82638555 187825177 586564551 956361769 292427932 849079300 947773771 981053774 337576955 918695355 904416769 910405310 809723428 860257228 361202851 809690526 81066615 166553645 331943207 642981429 515295325 563901564 560266399 883513328 477450048 603693994 654476755 680771256 472450506 550591206 279607572 833983743 506589167 966384802 583854043 882140519 657108974 786830992 948229323 959342870 700363265 815658681 880038556 906747714 973115861 984131626 160217000 979520635 722295831 986515561 281680624 414573547 134285434 135759896 622485912 847183582 748265470 887520367 171669764 689090498 488074647 746034520 961730589 978884819 185800596 739261496 490873761 729049660 67890738 662744836 402808621 498869812 165039680 846170347 141345959 375782560 562017591 904495445 788883136 798663701 909327271 945910647 604981817 766628038 165742345 963007420 856525974 878985550 774565947 830836835 119845805 818755604 457691589 462134751 705920344 999181650 773731885 911300965 522900504 684938664 649101447 818313730 243255978 820164936 95239305 234886140 142587414 685047393 695561211 730151211 261754425 393182608 340896012 697534288 956692593 985452907 452475160 475482291 448426782 592052456 518205661 596483414 614648736 869033795 661457953 892305735 13338162 249767857 658958802 871310941 747814277 817171349 776636152 811410635 104715928 380165844 524407850 960891340 856602455 923802665 414452391 431190009 798444793 810342351 95899365 120615721 586208163 778402871 940387559 951307630 924196851 981130203 893351429 926758926 722343756 812424330 448896239 798237958 835056245 932729231 577721474 634440413 454336167 512214234 294167281 974499391 366790830 825609452 49164744 444375914 32390909 89914144 808429418 824172301 642540779 897795512 54492649 349461183 595987111 917896751 222827789 525696582 133858315 144574601 925330782 990966395 978827391 998151187 866822733 958899863 516550396 784851241 161052954 690014413 844148489 947635771 671621905 964234383 695292846 920622861 751068276 815424161 499548999 560799363 830250368 900689352 124704099 252028901 450495372 671226764 666585739 838356114 765609464 896773085 870177426 908741404 267873366 794583186 300426161 856230179 326979893 359027552 669186108 883513078 464648376 616023427 316428569 441688622 185735520 306197483 643226821 907013227 849761129 937130955 194240791 968708098 933366364 977861327 886429912 923986002 458344460 846237623 632444378 685735195 724748919 754330198 372820008 377595511 352975076 895480491 405809586 516251540 652114939 687847239 897522860 965315199 371929982 705008454 870238501 970700205 80669228 252677120 431428016 555305829 745851860 776391529 528387502 884481278 215587691 292181763 204316811 425021101 205412404 525650519 189371923 239687398 897319642 924192818 807961807 877472005 388240668 965740439 836737437 870613144 140119378 547039360 33991371 502416148 438375456 611411177 97676221 332903364 65378954 404529333 352329000 546482446 749026583 879343321 958863193 965272874 131852010 225217337 975669927 995029966 509413831 921811611 552011133 680416779 634216205 962083324 765235035 960079014 739196096 775151807 979232434 991420562 746627985 910967498 281475237 792896157 929791758 950866555 840611561 868393287 133091127 292604101 797762000 980737332 896006089 896624024 921404719 961553256 920341685 947302474 256591980 269947517 327939724 814138397 728276903 844972695 759526861 905782722 875895305 933729710 71305018 838700447 776995963 936713920 100613262 324608640 923293316 928565383 699617538 884495652 428253242 973022942 295127099 390991164 524655243 814636971 442964726 658504826 251525562 922704894 27748140 104330759 827553653 971630844 253841525 466730570 205820188 235340312 231866464 639284309 723317058 738916307 261918865 451703775 270282174 948734155 936846680 989408338 259265903 942423499 689641965 810379838 218999221 984152905 803942927 906656943 80233004 129168513 636919650 890382221 183839448 304573787 375701093 822902698 377163503 713039411 995185918 998300976 152352033 790970689 718521594 867353799 102600874 468954404 375656274 766266099 845575848 880056713 883217752 926795835 197324883 561854721 283565759 952628483 887423996 925455080 467051589 735709708 769985863 832168890 656510308 943517450 42189394 188656233 605279206 756806000 423768965 780800712 241333906 592598615 324252777 883316465 149114985 680530499 748299414 896670155 212318940 501784813 339566240 407961237 254694038 578353266 458732686 688470776 87669151 764939332 397370050 830285422 25816298 844019230 305006549 698121230 96745300 938537573 416740711 798716301 282718229 774814462 636918663 916921423 862321745 864223202 998642185 998676404 162411945 983027699 540377975 570698791 837386205 995593554 636061640 731147066 509849630 940505350 400700290 714635056 339909668 484591208 968588014 992694070 713277085 899606231 319663484 606646025 484316378 521455551 463409973 497840729 593309646 787674590 588182243 920026657 636069721 852086476 762986775 951934378 216485811 515084619 286003249 945086581 225829376 283650879 848760336 987228959 554511757 829085896 733250190 792306149 605238079 802398016 903384447 949136699 579696196 901105249 670439009 769365997 269757088 884199312 965016294 980576649 967514438 997477650 407524306 540495559 363786087 399552645 148778048 582313230 960679273 995918191 822547352 880246850 450708704 617674777 123319415 254769335 503670204 990331248 494565359 998316526 251378166 290817121 882444438 951696165 107661214 403856110 207520938 757158221 620213850 885002079 154889266 258977401 859519281 866118756 558127133 927921374 540528682 986150862 317836628 824655963 874124757 881202380 579934060 909971171 318024957 533181209 274673634 934123474 104678203 606172957 176100357 449977287 185770520 467287168 476649382 965433682 506997822 916130991 916518023 985930012 281934919 857149822 627163639 995918291 831727471 884250401 5179125 194011724 32079595 765529150 859106919 888896297 253984565 505851729 2657489 501815728 132021330 727638150 611275505 819725233 307824762 707575395 979120154 997372971 608264985 706158570 294535099 384205759 680962774 781037890 934254960 972952140 972440018 982696199 785484023 933795600 141148939 989027672 50497112 139823242 557902316 895023599 834160842 983277579 941967672 988724977 289144724 891710599 596108725 810869723 970663843 988549745 765755140 949487778 555831038 990252647 959088433 965313440 13125360 43812740 925797312 968033690 869678555 936344238 160352507 198437424 691920131 802562466 868674326 940917363 327166384 745725622 657075430 857288706 636198451 681137049 857254391 970920336 605021489 940707015 422668701 938368289 660451721 955567036 102297118 698755683 176209007 751117122 607329280 747846321 239259844 445324357 487215699 694329275 109838568 451377598 961295302 987347669 891851882 980178770 725338732 973655586 611032182 935411248 473944841 565833492 832001519 832851921 829730326 872616089 605903795 875692526 283901283 907694269 203900835 640815828 841870950 950240103 714773866 923106377 527749650 802534789 207941711 407641865 763997432 897380059 941050796 951672919 765529664 820467864 210343612 292670861 277811523 339064100 815774259 945488910 865878563 965558288 890125729 952592693 761564367 901678365 685529748 865771479 274162001 597592152 748723372 898756691 468721308 923497648 868707449 917582186 793683212 918761580 490196832 508658096 122596282 567334533 202293850 841100930 101151289 441936731 422477934 887517108 260693333 890326755 558505826 842266470 317266056 526038335 43204340 749299839 787893804 876613913 605207820 734719410 110755608 434756063 330644487 630244659 941836105 994877644 866981275 986542452 55347889 660155370 752320278 887524409 901792700 966014290 232040519 827456274 785568324 966782091 951609739 992090598 249461493 738698049 936645418 951264309 55452394 444730224 866758989 894768372 598981596 609732928 870833581 876271622 332076050 620610286 910393934 996163206 712965848 994183471 531021526 722175323 864100923 910212376 711583472 734167690 473992343 797995070 797236514 850826362 793149725 974005596 721251542 746940657 770988100 806664804 591553085 897998398 850831058 969435687 853705660 962847933 234685394 319613047 116907821 494947666 461211118 539284958 461893399 686388777 516661046 749613372 337402881 736123546 934691265 985087318 37339988 939838368 638528559 936602196 588795883 676445994 675270312 735137957 731302646 970492614 610897019 719455108 218335835 856603700 805824709 855805509 377563132 557335584 34204513 464125196 201692605 294638165 497976222 675395970 479306040 854202496 58026131 199736512 63650461 141701002 436705368 519195567 757512589 928444612 177218866 303871019 149835677 603352531 103051973 641891165 6715256 235643073 740872645 802053183 963046352 973481873 279441637 450752188 176624014 465930441 157661269 936224500 452610222 543492426 80454740 525556137 925225019 965359967 644688208 787192279 948304584 960627556 267878958 605452010 326781800 902932263 6909440 429052715 71373772 257198300 776547398 983976813 646677055 982894770 92454109 145629903 884702058 900402325 968396202 997296506 873602183 940626611 1953703 463437747 261482742 379288497 496604122 765137526 323475719 827571007 664317272 826581661 192504425 647178417 663540634 827670821 972497590 996755725 116320324 798281426 553804723 760025508 86646496 692580433 237116332 851670805 482720050 748372354 791672037 975666337 94723386 769958199 185540538 856123583 422064229 926680474 783231633 785298549 729544363 809281966 810270556 921412721 656696542 801653279 157148720 560911605 630640529 677850024 502778733 529288489 720831563 908819035 611711464 823880890 875520055 923884382 777195037 871180427 589105067 775581894 180329005 544357042 944122251 984268554 24621084 660797330 969007822 994001296 605921618 692269343 171945341 894638361 260158772 639042997 244155913 389253430 58427050 333024698 139394896 233389085 597601932 960441252 829640095 962886531 669975484 777546111 224469821 474936166 991046153 995575390 994855938 995387324 106972597 180670850 963446328 979740740 15360039 87933016 647704197 903394567 62283367 648102288 723941370 923073627 47666562 682626583 517971276 945023634 308481440 779239256 359547808 563054409 727993371 946517212 266751223 925701150 524459784 578428444 649996675 816534340 630957696 647957303 769000721 869624347 839113812 852297195 299862882 684649147 533621439 737433506 907059533 986813963 185660325 363330004 177570521 928025665 243847137 308580293 268579824 758622315 361535831 887232388 470127524 772319055 708211420 724894388 289610187 836024877 943115624 996757392 914117362 954808092 762226489 768048732 179776914 385037427 594386638 727956867 871561682 900054428 711210419 823573403 853050737 985579329 500690925 539345425 424027196 581703599 625006892 725051739 342633952 812235814 207399230 272272065 248521790 922728593 992147462 998401360 683776897 954774842 891971531 941733687 64932439 945202076 566107072 612004591 625147956 717691992 693141412 771665241 628614496 910832515 859012666 948115249 572354257 604597527 268412717 645715396 455510080 850813660 75480698 616316628 382648547 684608920 455299616 788833456 897654729 933058262 531605280 580873171 689382074 904749631 393204790 600745000 319842128 885045857 650425928 668762111 374625401 499178874 734295975 982131821 232099904 658951061 531279652 693321247 823359146 963568359 621512657 946922316 978328434 989561597 414805726 763911219 580720850 619575748 828069535 954965834 966749184 974305308 416037600 714089635 407125993 429338662 101698199 407892982 129278409 380684511 636279719 970359461 355105114 363039282 666428826 976470154 14026451 399659290 183751782 727341491 902011525 905128031 578264832 874071702 737830513 997179670 655484134 763545397 844301471 995664603 984105420 993655319 549190909 778272514 906279049 942167217 413744666 721251286 37541898 622009249 416892748 651294121 483645218 734393368 871448233 901473142 65356730 780670728 219846696 242378836 223032185 432141810 533818574 909236950 63436341 579915572 429485585 851766314 204266425 332520700 145853482 417488708 203934604 844418616 679781224 905819043 23913812 824814999 128864876 802565402 14986498 806492295 46040270 562999986 741228838 796102952 571788800 635288877 665909069 838283741 180468614 624060849 290419992 999360240 639187101 707513785 539599286 850840981 398378770 936387434 292843340 451676369 715254263 962599746 938607996 975703554 624235846 703680901 469102623 812318978 56597188 708276173 749321203 993996706 701470012 954353392 524416303 707699202 991530482 994774903 183244592 420431823 200989582 398612222 219385377 374671440 15533517 931737439 722867807 744396342 291263567 503705866 378900671 572302532 125765842 397239913 137165333 376947870 724329582 942730675 971391486 976637357 302822432 769765066 193466690 918341805 158943520 516011342 938052082 949515416 298614994 489826441 951476736 987732601 964376712 986523954 602519258 616213841 150464414 211040230 971141933 986794614 834892191 886679941 60942390 399046802 176787528 297394146 936594165 956456230 915055060 918044645 307613845 679164270 233442782 341674168 941482214 965401225 524683012 623956295 149020246 446107916 749177041 908989874 483316940 913039439 568120742 816754765 202808433 967651148 456681999 629679869 295876001 858411861 322806419 749466680 184203962 814536370 302586829 695040821 296515905 447864355 47337246 684714309 306709644 709496501 891893797 949379170 868272113 916333377 810278895 932722059 742860089 770179349 251611293 620242685 536027324 819902782 518970527 713689244 103734560 166870244 620447210 984762987 454777553 948599463 206355442 311379774 457806226 998285608 321532910 345739965 86518052 340609026 366761961 674787929 743480988 828351049 931624199 946745611 73265876 376997652 180158110 505523033 796228954 939390036 61744278 62525822 809553649 984721805 80235005 800242577 599321629 876437637 652866643 835353223 198072456 601958044 378417492 892986258 977875583 988523299 310573683 617479849 214670673 725439194 458103589 508922942 504972606 574965919 317889757 456448458 351756875 553652912 97898636 189729330 818777962 826833025 682781529 856864305 688527573 770494102 378826850 661257128 386028004 965709155 302100407 466390880 556639739 883121715 483976037 957813704 236672548 237378771 424268630 715819305 125083243 849391453 259567893 996219759 373782987 852579084 236564067 247419713 324816456 955794653 931874553 947352020 555115578 843115637 144021010 675117143 747772106 823034632 483515561 526464705 2706195 644654232 381610543 544075638 873502780 908772910 678591905 688809575 357801147 416434578 440771444 802707236 580448056 781491199 259279272 916934242 776867793 973691948 529294999 793575989 864836451 866734773 515940525 890114370 240341879 803956157 527241581 609040717 656271822 725999680 883575085 976512128 927230967 971364394 729101760 944485569 915237490 921201722 98325419 673735563 799369456 886691272 722145428 959531536 773674650 937312726 388168364 548656056 844090507 925049429 755570377 779696319 673917399 970234525 314972626 929351732 987741232 992204965 291780573 457053594 438093988 443629725 632807728 918094855 877182113 961081858 957823392 967659777 374113879 684275695 404744387 513012550 945481875 982222229 669252097 723341807 583146671 763330521 310909619 659630256 558149756 599938871 593082272 685368777 279650753 385881255 426868361 680423027 727413682 955519116 114990868 796040520 561575584 579846077 864032106 953898520 40577313 776319309 413291010 867982488 722775662 932014234 363733130 652682368 802349650 882219954 114921473 562188441 885796484 959405779 217105572 357846132 910120422 991812767 453213570 663725730 794463199 889197763 675968662 888242204 372428144 376395683 7348181 81681510 251996478 283980991 707019381 963415729 428851153 452933154 991377130 992293205 684734843 848634201 107125143 357053102 362135567 433923305 825646519 971095503 743327810 778745294 143915543 366113355 341369350 925528028 343187505 799902928 922781247 984266194 782458292 863546826 908063305 921863541 944230821 949908824 201523926 215935968 853520668 963918999 721612246 968388274 973245728 983304521 980209032 988640368 220234729 245463674 608604378 875803467 931608965 979026038 925747704 948813768 104705358 183244799 466176348 903607560 972271958 995157903 326037447 865364902 118988778 316641475 941618230 981473354 133631525 319514436 264406786 486876549 136074095 974968347 381178006 473873657 130754391 631538868 544696477 927904780 559481784 932770526 608667737 760192360 461638005 556948464 906666289 959245718 91656340 970973944 599389504 725792874 197070072 837519885 38022610 68591954 557822208 920052094 679752908 964571209 218391066 687732024 567896148 712397855 947221866 956257169 218194862 466569231 284199089 523468310 451111292 813981593 454319314 641617758 389791008 670909662 476042896 635078790 544177988 683788989 615828447 931086292 716728975 954152590 285911145 839312090 702959863 815575290 736459176 738515555 207747200 233662545 97239726 605040812 410886609 499569231 681710480 941943845 998761075 999906196 793681361 891695569 491928364 763368110 136956010 157713915 8650396 310228150 651872295 764976814 240677038 283384999 148172627 675435198 432917223 613414912 725804647 735607438 353004709 765955917 316068130 518963106 612422100 862355374 318458433 722294908 167193852 888750976 26535265 605474354 834395480 931913738 921560631 955483473 708859140 861955926 706246728 950649950 361304397 982111680 548561497 561036454 256650215 285094517 434687160 484721368 878262015 928129520 588905419 845245619 775313332 831272356 133697586 321976896 528431426 758461984 525675949 846793658 927759156 992866323 186171036 577139134 101855201 347003868 261724084 712681306 745972240 829822965 29928477 479148891 168775227 188940241 378869748 752493341 216856746 542267664 66962247 748759621 48251155 175199241 526375420 720827653 857400506 907107261 95098786 351412199 145406948 595992079 374596940 421796206 447514950 959955803 797962339 926562871 596593029 598576742 144080067 922456172 89143686 962824267 622747420 899086508 374015779 677264619 320642722 322486927 376629584 667970727 695472529 907446041 312907155 439200411 781071652 894335597 648417207 997262766 850247616 944162072 357201424 636112663 47722494 70480781 887341796 948426707 658980491 828249122 842578060 924199577 943560403 944773802 534902381 841456286 115396518 652222439 141824443 385305412 891786291 935935611 220293413 576937812 845513349 938775234 384493877 869363097 154330297 463398178 380788713 523617395 220694337 646338240 227069368 827415605 821592347 983881607 48448490 943710605 791183787 817300089 432969196 580334292 900480607 983407397 486869009 852204469 874417703 971292530 644182614 673872574 79767675 377830481 64991140 252907962 943998790 944235322 330976988 706530756 455320574 977431656 140810075 302790936 905132640 924679621 115918262 295688210 529026757 564003417 444386457 799708048 588149173 881144754 297931374 339651397 202633035 705952277 543354317 866793033 740626366 795362735 750874881 849251990 21832549 980559770 644737702 646282176 251353322 654580112 74225027 956007319 289682608 762706021 276185459 463808173 480498226 723161081 464074914 843475210 801460338 886313285 576670781 977233119 444271006 523113460 933661943 945752788 169107722 581460743 818788179 835168818 277798731 723200610 788631119 889103284 535050625 837669106 441690465 452006779 189148241 246857538 336480980 992425379 583474812 976550555 984942609 996199812 234086548 758249012 562493894 832146497 716294354 912646505 648146708 959147015 787599988 797311082 601540907 736774989 913785062 958634884 219800723 348331753 18526977 651953549 249013403 464455192 141884434 415634735 601246278 865437179 657345115 937886137 666772822 731412711 696087726 755826766 153993386 803257681 998379399 998694477 220772555 751726451 175933304 635628757 195176268 826195950 359228158 787433335 588404120 751973511 460710429 708976245 697319526 823476304 999624039 999933966 738102778 924027376 582860234 710712504 455263158 901297623 662330287 687490369 296735772 464902006 37154950 163233994 515477241 805550309 649228071 965672596 817341122 883826713 450783398 548570752 175428547 908386333 850084465 851916536 331121831 781743135 636358719 736553252 653089532 985927605 792295405 917006809 760771885 930138951 506691418 664983422 50365080 524136080 379331992 979073241 765720157 905276205 802851402 943349522 904149731 977658384 775776918 891728573 446143785 930233586 410434986 875792649 729227335 860579366 785140968 838582405 796332075 915671498 63845883 612109117 347917644 434028469 286848094 289958833 172602274 423138231 813236693 980854858 708607296 739101926 828961256 847640597 753894911 811584966 705776873 846271505 687635225 901460644 349908719 706146917 131621928 386769069 72846076 843840339 908455348 945488824 672101634 849572838 529730790 990173384 909922594 985385483 215854506 925368867 590909903 918049063 63858369 366920680 182535897 861086389 480474692 892610955 158998214 178775492 863471269 890593996 971867550 995107448 558727077 758013186 354893152 712856761 463977765 747134389 433781321 790363242 619784675 978883553 857825568 926600899 969964014 978895314 219846479 525031989 622768735 881260722 222461782 252909955 142205320 257450519 248954509 941730976 422812387 852859838 429049212 493378643 521982206 611795021 53799038 529423056 496146039 926075087 471145359 892785238 617497392 886878483 231759919 963877487 309924452 787818828 471158562 628875067 582981874 789716738 793024264 959475263 796315997 870178677 379231675 677874659 787844008 876944181 165034281 262658519 666549609 920540414 462055278 867181556 154931430 589994202 817579421 852975965 810970624 977266738 34867654 802654001 154310693 869583746 368576540 914433861 979304692 989669126 270697662 829375407 535188455 557980582 703458692 985912577 294926663 355535070 327111009 710413394 370549330 928666393 519583444 654905988 97259134 480171879 610248132 770989551 304124631 951685968 907914652 994080416 350523556 835461815 134612586 652692542 5539233 442167962 920205287 920724254 47294767 904120568 891344532 917924265 479753447 605154444 255643919 791990969 329319115 361009644 285015492 570759489 315911423 616102612 393194410 554397005 728138314 986490067 694482096 797469042 49937762 193898403 547533732 820759018 75089474 674047819 906463893 928593566 556818127 949884640 574817714 798014498 601626755 970938713 448212409 959590531 232893407 268074249 296088517 352124792 825215070 931972538 178501955 606731948 835047513 928646906 15537859 610859240 870344936 885548482 996329689 997941620 406419041 414943730 776902735 886234989 137068705 628123469 776099826 789013822 718086634 842286283 138638278 782160278 186091075 888151097 818010816 836950873 265435820 626377188 32800226 352634664 149346756 660314508 835504208 901436299 830780641 853068256 480707567 543745543 164328718 812000285 521242024 636329489 828613123 885475981 815464420 962042781 919538723 951174872 89460871 988441810 812169837 990173741 591267918 691922025 949838397 991004650 150554716 287375791 328422049 715626827 401760959 484875434 696354614 970661454 962251727 974860306 716884450 983893098 495454950 663753765 895284915 989466544 529054411 746564509 467635204 595410099 814812817 922237522 456203699 638419102 275171794 660802072 562041139 933728478 75127903 644368797 166832689 236670549 587660346 679700575 175152955 860691306 274614714 667943258 96505035 731944622 45581714 75002807 555932979 710658681 26326220 701328787 351603466 888974433 620713792 886018565 330311890 394980422 171491851 600230946 928943824 945400521 72169192 461870393 99676419 679754732 429499974 441872151 340465750 755814934 313098719 337651249 379878608 884935379 841833663 951634703 119448498 594148945 346040065 685641805 196184092 777515987 248101683 659737345 496443928 864244085 544917546 695410297 69224933 236951387 387047639 506750666 266891383 399825122 691265425 814864102 557691487 762605976 382459393 586431615 291211313 878475119 584909445 637862370 263762994 381225959 382900078 848682882 274946237 745340433 59164913 855123591 236947380 615154535 8872591 806117365 348823507 898641121 569602773 603157329 282559123 809664902 653750890 834528337 445824402 766781017 553343654 662271462 67828681 615446420 998937157 999131137 334255598 899742122 309908161 841250423 558338920 771691077 574476146 741789951 353637987 852822921 419543314 829788595 339061769 851093024 881156310 943378694 261734250 891977115 372484633 519368339 220629624 229930668 890853929 959310849 995154460 996025760 952492174 954491721 569258541 820516420 976481675 993583816 588897268 754489680 668607207 957240578 441327822 915766162 876708485 972116320 46116362 564233539 818937891 969212673 86756116 567655494 7888454 822156509 660620977 668842153 716755110 874695100 956927570 982925728 159580445 673911175 819372885 917564922 271532316 897615170 468403557 562044677 296685602 576812609 475893275 815465656 189196855 944530071 439048562 907073788 158988677 201076322 706607391 835644302 343200246 786950405 828812573 934188890 340281051 411771077 421311147 850553438 830611482 867912425 371804474 985636129 179346956 750513130 292874419 557065555 3086049 389693011 733711499 777864271 798010355 891069241 643997549 679010410 960851196 963470811 294492969 314548809 968118708 992210894 681266667 983032235 951579331 971393303 51953460 258890073 397718753 851526854 258736811 640382656 130647869 605891807 856634865 915128112 645560656 727504699 927986568 994315744 293840461 995929918 898183214 989023225 898992277 911296585 886328584 952199531 97213807 281033063 416007797 473071190 961741161 969106363 640151454 748246910 748910751 861204289 320195248 651351154 306738072 567484611 423251656 645788264 841815904 934599910 159673498 731342304 595536063 816054280 355315135 788923327 436154113 810911914 265536632 626004817 608982297 967305980 32189664 927709208 585640543 863985620 810853459 884482846 573158021 902369007 923018325 991905146 568082827 730155108 89806830 124198245 705293171 834576031 933668037 990431324 906803876 999326313 808774233 834471150 721791518 803203677 742854999 865582023 445058363 781372767 461143414 502218971 280357305 830407426 558179951 620213633 540394475 905884114 15388835 338892008 638513535 900289668 633726618 693282582 180082073 763076269 759686179 785001814 960551688 999191602 383350655 479729623 627112656 834436005 552644372 565430804 808687862 948331870 305065296 525638313 843273582 870952910 289819741 350813438 459456346 896329324 989577016 998978564 626762970 674826684 202370267 836223638 611629441 892594968 667194865 979841007 456505967 774823941 676530303 994598311 790597308 875482495 682966272 795870444 992418220 996378521 846851298 907981535 233039147 494025611 22408750 26164193 956352354 995715201 748416501 918662556 925757308 965625170 296326108 662019726 969389774 994054141 482992313 974823301 613005826 931234334 389710350 783043304 119918994 525620059 583530354 887960544 879883189 956995084 450683481 734579880 892593615 941626577 853180583 973086888 887684088 898763212 676882696 788185183 597574951 936867145 901032741 964319264 33568696 403449724 443693825 546187725 273589629 498724488 645612109 892343062 959601884 972144009 189539630 500585291 908785944 929671469 735245563 909884695 43101858 832312967 965174364 989690534 606785182 815231630 837184786 871053058 421508516 431856429 220402214 224010438 546571750 695149674 785412691 967541508 859310770 879447943 928854049 971279285 637450188 927161701 579769556 882127645 583015750 751669503 212758358 255127599 542466253 835441520 979772044 994655329 690937643 895289240 737517509 816817574 916903209 940946800 277964483 923761001 747762891 765348510 842946552 989089808 766211487 812265412 370697962 746361711 151524278 390514637 573010693 962900782 598222835 626612526 332646913 977961308 12523183 601262034 523795532 628853232 466897680 613359969 642706235 762026104 205381907 556429999 110152100 812894600 273885510 549273293 253499943 761527854 589835003 693971007 966882900 977251861 580762788 750909971 975626506 982121444 887682037 896548454 468329465 635299363 330263756 614234423 846376827 859895983 827895273 966749233 752639495 998201068 918094446 993577604 102038779 334858815 481025298 662157360 846760572 936899477 421026242 482914708 530660657 901135332 261510676 608367956 789393772 979751028 726976551 801277932 580782229 838345602 551588950 598454313 869221452 884104601 743014830 808043275 70733851 463349336 410915342 931841284 434516577 982162471 897187663 959005655 881167490 920632318 724680474 965341775 927289485 960138565 669859495 778476011 612524423 714232709 509038450 715306004 803405888 997583675 365767879 776332286 107373020 764326450 458701591 967802410 785999749 971954987 154922851 813317252 453122114 966835442 599738346 750064839 98128003 900256126 481682100 519730522 288920253 357078296 938646580 998626454 917226195 953125518 439668403 644181374 8947999 292982406 8040214 715991827 94973534 831081954 413298429 817447802 213370048 279432443 943650938 969886292 133948738 880612066 813045446 933718787 607834224 840917497 681324988 742807033 925077054 931083599 178098589 610444512 356412488 845682618 308155440 656434829 278547994 951113396 634973354 848185191 199820245 500866995 461702417 982741401 196389855 494957670 267578368 464940200 993592048 998710260 559811108 910337693 602189686 656147474 26194223 659433923 249354471 355012628 658840433 842436563 187198937 643434694 284083850 847271909 646342947 807622021 325674811 557830035 546250798 818279560 744791675 876182579 34166828 257040771 860710106 990268742 724115145 971193150 308348160 571511334 858441610 922058326 665686262 836708241 854325290 915410256 625512104 792719197 39464280 547107927 638361565 893459293 188165688 570176998 330548929 494698581 539104676 972507963 690751736 844940967 75382218 162232476 850429120 966008749 666997179 679028168 412717470 940015384 979423049 979520947 212838559 588858534 924784242 954204856 568182487 990239967 464320949 531263123 145164449 355383586 227909802 676413252 105706035 410909605 7183383 95317810 366224484 787232617 322836512 930966898 467239485 503951799 921812640 963453947 520415076 614673645 905664796 905876856 154855748 717631168 156505314 586282786 912535226 996861146 925618598 960729701 657891091 927451522 420562630 461080644 237422023 979302913 583535381 978986855 389821567 772521292 502151769 552822693 898521462 992926894 846914950 941281514 126190015 875740863 776812662 830455082 486472372 987095050 148599078 536111668 748836366 791164882 96858956 426154463 294477276 957499037 586858063 711816120 431946265 823570368 114934222 317953925 942048176 984284056 194710344 350189519 975611375 987313105 275403308 474636745 141189396 329103204 732221503 967763606 745939776 988262356 368963830 757152036 362733502 730925229 172602103 354120579 71727978 858949853 200090914 273970000 957444299 986755876 383711090 920316789 216533725 348189771 265811151 299525375 694710324 951206061 804967375 977331402 3373057 540789847 837323929 909526717 879830840 890438343 349957112 944425295 237513129 824431960 475401095 587417110 634320433 882071149 889747788 978378624 569708936 651285807 85592769 536504576 75184271 98621531 284681766 335245202 615525527 923706096 261593683 274252805 388849933 904260430 602730120 677768842 832121749 924752424 20160490 170625186 306371687 446864652 281939266 430849018 553867639 861798659 699382984 958282670 692511980 852319355 982755005 989393158 38007316 182419567 466129321 865163770 686800202 825988525 916063002 933004854 825626351 966861032 46556865 90599840 498663954 715497760 936055365 954130029 609539796 765433434 492074160 708017681 292913584 663788862 420309899 457918739 663808689 770848038 428609409 810986058 392100974 424530568 139141209 428135413 201295491 619113255 696750400 952078545 743856408 938526134 691111284 946209405 135421048 146208068 796114407 847989010 425732572 984124218 211673525 445319789 727875817 885599662 293290573 647663340 915737338 986984130 535750741 609091535 914243068 934117568 424495531 525524374 631668377 854047155 196705335 707472375 960521534 975807627 502685555 651334548 898305174 959319157 935982122 995563316 851729086 966435385 563512922 809403029 772387614 795652185 14938596 219697751 384327784 615110245 539366931 794044253 629294504 697032127 762000241 914444620 340888209 934141751 164730425 335918201 53171429 862538351 775385476 896536873 640327046 746778851 634432308 649396852 556885552 694015891 572356691 717944170 764496316 912808477 916775841 962327961 572702394 736730509 939618744 963757980 555760852 961628844 850935878 860745207 529115259 769999962 155613034 183730396 827356980 918998579 761938137 996372553 549171631 994567405 718845564 748528462 210943567 608480964 393927228 397487788 549786312 803775022 646495236 781824142 842088467 901347770 912398089 953677948 712502740 751506106 910433241 942989569 302439956 657463734 298692292 435470122 693057645 955818849 551225715 619792776 464225435 996500559 400885924 485030640 452956354 701506831 122446651 661319502 354966893 460240589 837994421 843614013 194041052 858299328 350776418 352253307 431110271 925908244 506350346 948808873 162579763 824045089 321656896 676520350 673896378 952559930 905791817 976675564 569670034 954302507 188669256 602741368 764588434 859066177 636811940 960300968 403965948 858633139 805868065 955055080 959929418 982516624 592804952 741822644 31164404 71802006 77460622 553195898 898171057 939447786 848325992 912822759 297642314 896942852 358870346 838130449 453770273 966124411 137091867 216643578 642370790 851076483 749947869 995365812 907358356 938066682 573715149 905103694 716469754 903327955 523205173 543961757 751774099 885716005 692759582 860578846 596676588 711851897 224483611 914662654 975378033 989148523 745334157 754674039 959074972 960991113 748129252 989583667 142945144 809869020 318098972 519123348 633823783 681204325 207150895 913971843 463981188 581056359 637685025 650135619 154332319 509982547 400833908 565612474 9031505 86832986 948107322 960312626 183144303 618927140 288919858 764888389 608596665 729340255 883263366 999241097 860524644 982290747 834605257 906951812 952312064 968123519 392681072 670859474 813169010 999557765 653918167 934996904 85549931 148049893 378881927 863316944 327601028 945109036 551226676 734312821 231223169 452945970 83778932 333348919 449139018 861563584 148156344 382567025 84125764 661169022 618436842 816700036 978158245 986847288 401788781 546136226 645906352 957838312 852311017 865199196 856819946 917328614 933355706 948100719 126037709 767822857 936853439 994071318 704131054 708116362 635130611 733714379 761239317 975824426 440472356 441604119 275179166 424568797 175615913 663086437 926121187 987396645 512175516 652229886 363864464 836489673 972872624 977308484 924043164 956257612 119447892 360222981 2496358 509825294 188487945 397365177 326660347 878646961 850225144 979796545 743960249 964039550 273131689 287967565 425087227 731675130 362983404 391883008 867240342 892774549 91558193 203243966 211053690 881209090 471887116 789888337 664557619 876039916 354860887 464561012 94592926 169395155 863129095 941243217 902162017 968665734 616012197 667254840 698979784 973930088 98037425 556676002 549691841 809651772 319382950 848203370 724702095 760991368 676615890 928739993 350619332 876925765 302399979 372234987 45376148 363756486 611324258 822346771 862396980 931078104 998164726 998414042 227275012 720138237 924098785 995357358 950141923 996071425 997510869 997697715 210511494 880741649 686719198 972603804 365369758 474838093 672024968 794486673 780261121 820238401 288383837 325545858 943978345 956243669 557145227 632591016 232468730 735817394 995803847 998332969 277855401 500158433 336483114 870945977 630738475 788871483 177996839 180438235 850122868 897803463 834474006 842292358 339046307 378929677 757094903 907457558 990356198 995109021 531629162 836673946 492232097 531286873 200264274 246858828 880461233 962848315 69312259 239188798 161623228 961446708 38903690 654330723 323759181 645579265 349341097 398519203 72196099 641619826 558644486 959469668 620959378 817684441 456699862 608164523 158797020 850323087 417858976 974833000 747430205 829990952 506359866 796056388 38081286 288219710 238326619 838101329 471883355 773332956 828552539 893693406 993803599 998605549 4747466 849364922 703774364 875128083 490952472 802194188 613468028 990959874 582097735 610013178 59940266 791489489 975837085 988217985 989562614 989926734 932752092 955483340 218546403 304146713 914929947 955220881 391759738 394745008 285645333 932846461 745271975 825285306 171950504 174342482 953497156 964925538 11171290 302181154 344542992 873747425 434606670 949584686 165021556 815144577 799670549 976466645 45652843 917270200 905208354 916532559 16136960 260390228 728087186 990714487 831187560 967031809 808727240 845684482 273672494 343777712 749676900 846603359 392030777 422521662 922459920 939558317 5001511 909849658 103734237 221492859 998773509 999111231 839881583 855400415 924260601 947096827 679412123 772065749 726052100 936806346 801876799 999421912 565349216 678378091 438006948 638140194 187340469 645503218 208969241 784398237 996003523 999432801 906498462 964630904 770184418 826711867 853277332 876674255 204237272 378201379 785350566 908671721 961382658 966763965 686392109 808738649 437920566 893225278 603374248 962454736 515657436 909890744 152283396 574358319 861821241 927759986 363268525 528734300 976848326 987680518 134398780 844284683 506068345 565915778 272879606 948816060 70198805 643642724 596579918 669462584 804351751 876287266 382605997 556174565 99612704 969948581 161296025 756129358 274836644 550807764 401713432 548099530 671952968 742857945 389221891 802003918 717302167 740600944 578172728 960898446 652553797 919545921 829207270 885198866 813819407 883561854 505514510 741670259 392770242 534753456 62700963 463946127 571163107 636258063 63769899 230358947 480934770 585454493 970418413 986264423 191140884 754513229 553746541 730479114 860129457 983931080 844537811 949512524 849444907 923387715 793532259 977037082 668542501 736731364 145917074 373907260 300351027 371532195 841698699 910280995 637111725 700720213 5668076 146116439 640109895 927656788 412358719 799805607 714399788 803212553 767243161 958148845 355450940 682522670 367573710 772000853 451025606 860504198 255612328 524929019 354182982 388540521 422545445 434713493 719580848 815078237 139061306 183129606 321991499 875196549 445233005 948391033 899929062 958714222 528430311 867101111 969379403 989168356 511061659 920500965 416985980 845002236 314002716 848875326 454239749 801365131 302130263 598626214 363110540 803892709 645265614 728106193 93102902 642283055 276140157 407018196 128636634 146369381 512910723 989906840 899343818 982312613 230046329 946364905 13883635 168873163 474620645 806317922 99893670 231882893 960014951 978235316 765408211 959192492 163828899 253343283 950142863 981634212 503426610 548459566 259416324 575741734 475610955 654266556 572045931 613678357 534248938 677421030 962534490 991535999 448681622 861245732 543446590 861477855 706925502 838623094 202724730 552935937 221244724 917360727 471004520 519172427 543769010 571081748 248705471 668173091 502982175 885642506 342800638 698752419 374639634 976687428 976138095 985807783 794199887 892700812 134176876 421655954 529664703 761532524 918854974 923287387 872113518 949761056 327793598 561676310 238741651 609721309 161295020 664432331 190019805 500256152 908108421 999651335 424905224 805689606 807944471 822935931 596323348 812320097 736203432 745584715 700902695 751055746 465723908 921665873 980409503 994471110 596864553 868281312 786241139 912413353 322952873 577422117 463599753 876403322 985987683 986167080 245476178 539903841 8392053 159182172 824478484 833109314 479687746 908249909 363110710 738225669 648803517 996377218 879452263 912989672 956878762 985887773 292170866 680547072 112097142 506058164 598530478 674748535 85356608 88480809 802578247 824644589 298613757 391900133 520968181 717098372 369179482 764963222 2822612 566803928 823523406 910267554 79666917 913317798 834620963 934530362 520262210 585748932 1341084 369557404 494665047 704059028 955839735 975542213 107130844 418014742 194111337 381641468 107335106 591547079 69898068 399877637 901179131 991406827 778475081 814839465 294393141 757177886 681142719 815309191 682173787 782752323 50406780 423013644 791878274 891282169 878202002 952027395 636911569 944292568 493666415 569327272 17081697 290108640 242179774 312795668 110918881 661822936 345357789 995237443 695033214 912495980 783813333 837819396 290696361 351895438 197270229 300726871 715251997 897407592 474989843 914518502 106560931 679121257 405862510 407175945 614198137 757030948 989433740 990910414 212493556 220271172 436611158 558351024 890277779 961942797 475486396 829348546 290106806 869312343 45804640 249717984 427711402 960087227 714736312 726272211 665755230 729168810 818931526 984231306 567959289 598013804 659227254 953581836 605131445 846329038 16326320 827821588 416165288 475812821 138149410 237355783 458134386 556479953 938012365 954726242 190220096 406526697 397379658 867209395 312771743 696986381 16015480 870869752 634600720 831132458 807224503 901666252 122896279 908587126 669646798 710090979 685405640 766230442 403739588 422908599 557169324 585984906 775925371 883273282 600228307 987972442 759938417 821752960 352100769 982411839 146833007 724166297 168030225 212644531 836047688 989418751 867980157 907856131 597991219 624862036 994481020 997072537 321640306 588903663 931294377 966781934 486765189 661443210 936031166 947211445 226623040 287637735 796857553 845859395 164476159 815793032 350072819 764587465 504082392 985147954 925607151 984033335 236856770 324890476 894323238 955564983 260798684 673510594 552787516 910664167 512951242 613393396 683210932 923923400 841972782 964837750 266081232 342199459 143315166 166172441 814358227 815645783 689355719 714010782 297326500 780970712 188598835 609403947 974284042 981919613 932808507 986882234 616980945 865377097 757022123 956395187 572275719 623851023 143636544 241461838 836370856 859228783 186764912 645855422 201762823 584213251 696639596 713121774 569190501 860846487 762110589 925341080 57330401 766178191 623104531 841161923 214185247 753147552 734515602 986453848 342691612 490518171 745743319 945158933 174334648 689279613 781096623 854218808 642436159 882013224 795954666 825414660 813712585 964464754 465607782 512336626 654765266 827756557 237199114 762900481 740523087 978659524 118895901 621435222 765093091 787476343 215857691 629428260 416785506 676393703 689673479 989453096 682950101 690502362 321315908 587030062 98111477 179001524 566839036 726318950 695438067 920382749 599981203 824067203 837841844 930542011 365621253 703576587 977050596 977107183 662016550 706111772 758922405 955710019 488837413 505671291 478392177 886433218 550924168 824715041 373509868 401115282 87701128 602399961 104209905 136244905 816277744 909781830 939711957 980485458 933681494 976820609 152555133 424110129 76018192 442504725 631138899 806630686 66770659 527287976 108084509 607521662 877621448 961364114 435486995 917840773 54084324 272865717 681758694 748072743 267230058 362367430 947587387 995664551 179205305 787400014 977817999 991640678 878705384 948394663 126915098 996916775 707925114 874333914 561923692 562418518 108261778 815897515 35126518 383516110 311974152 368808451 333087273 928293810 483990511 601832993 283253483 498275513 561899432 697145863 797917748 811148822 599849809 665976176 140271223 307107674 851604353 881551991 206156997 801225072 705027410 747669479 59092326 671403227 863377208 978210243 435030578 578810510 541334656 899923002 2218519 246555600 152069008 594295987 838972623 991357349 932589063 991255242 569848968 750691194 944587177 998031029 627435938 754816266 875638498 903035611 777597668 802252661 503615105 994574098 577261055 848542678 122038723 650199164 983707033 992572127 134711014 573302327 309330838 598604135 317133663 487373428 195926117 477438200 747880899 981478605 329846961 725282126 362945242 730965540 779386544 803187952 436697543 895300303 61302570 291287246 334473506 658514824 900786054 947933572 322535035 671971229 415943890 759630641 224518153 660334152 925980973 957208803 980408162 995350902 240223739 573201116 283115480 735837526 537419881 727585246 68891398 539132100 174749110 927156023 62291094 301576015 414733104 576061961 816780698 956522739 229840331 789777988 808840830 911577435 533878805 659513942 865966457 881355695 13667634 73877380 951584420 981677371 127197502 371496029 615716391 756644492 884041198 946454039 324420564 332635719 769611575 862319781 845215949 911603411 642889185 958547477 483318415 685401437 490762776 661441667 205321563 686051253 672528382 986761791 924669519 939282864 574366046 819965290 679181510 764727313 594595683 922205976 568050448 650149052 383083780 624688061 284375314 925643556 216290517 815297649 908112021 966909550 498644763 756675041 703229111 984331402 695358286 893908935 281378103 306913550 140022405 996144977 659719726 909252713 641174327 850456774 282021705 768362277 868633057 908624752 418414694 770310568 871074588 972416944 63223812 724960778 714720220 837824460 359127026 516878134 740236241 790247566 574329572 720661003 779935843 860334660 637890946 973221268 120334359 705795892 442130047 825261763 509704946 660761552 301646766 773975948 618865619 733944382 204035595 539178983 220876045 816410026 580710305 945680361 140802004 784488568 398811587 632089062 478165318 558855322 949575457 965788860 253035177 430957261 937074149 977054217 610316628 733211799 730921973 860551143 732441516 920726191 519254244 642712668 8389222 718188202 387608474 947537645 238765065 822204327 903846272 983270822 377352724 652241316 802032992 872381960 848571389 951201710 88846791 732454781 817585885 915957515 805838172 808878378 415218015 630234742 12718800 485641127 885373381 922115066 758808007 916213007 198021079 771031470 69005994 136005478 851662131 904794855 611083394 933389684 298523344 902525962 999908218 999982849 284652702 417355045 122692047 466672384 590985140 928614438 865774141 935285404 954980867 956556620 887488787 992038915 558212251 711927670 309424434 562075112 296763904 464955449 149027009 445611476 875761525 989441952 483359599 639402572 622527729 949585508 383793413 756511424 507410871 604373943 169786962 359005938 945891705 985019683 796935064 943289638 830953420 856443737 866402540 950969084 759370701 776683518 889144542 948451366 230724557 245566014 934229655 968740979 563615301 643343512 958483271 958585484 463526847 868547652 654372050 991999322 200678773 854406588 663512979 902288574 99928252 473165933 947125430 996793464 308992473 483926812 758944357 897965995 970878438 987170639 542065664 555792433 446865172 894395703 956136376 990727979 86527897 718592025 822685092 943045473 73120301 851795632 20698783 614963224 290874620 770972081 357533228 856086255 920765019 955933840 564056158 663665704 118163495 224949365 782810654 962465788 925422172 960857364 53623592 707813895 643859611 804452497 763345826 920167838 774583507 952690630 203413145 453281553 478214275 728330869 882512303 989183838 688282345 690967821 113823783 470466129 981804883 984255072 362489867 922036046 155150518 254759619 412782073 827434631 72069657 497618161 69955473 543108694 704484726 918745700 759427098 780673456 274938957 999634402 480105340 877299089 877955333 918451186 859044148 921007657 201957710 417480825 969440280 992367247 911437799 960921125 464923561 831243445 308866592 400490174 720252151 743720877 422389777 490042827 992885856 994471881 791580616 800181404 173021317 457968733 184072365 381523541 560135191 693185215 173730618 872596628 355654795 613097720 424045001 428780245 505689240 565435962 712472001 820715781 54091588 981216855 704818193 838298136 686583540 731596903 176842225 645079908 510152183 731742644 695983128 780529859 71687167 318221291 343974971 757816604 646442425 867929178 947021711 966181301 484527548 487532549 415811911 434591254 540713644 592427468 699678142 990494133 715052507 736193580 763220053 863000115 441587639 941643911 156057158 841896953 496030885 754483271 246901442 634307649 780055324 898368728 9751507 485213815 449423981 576614146 838665665 932221016 268816143 280458356 10826807 503139656 908857637 952668594 318687180 804430880 943778668 959666651 577807865 637955617 185044458 597766988 808097887 935159794 487154717 691030938 409251114 838697277 912148446 944084542 160741347 786325470 681284551 852725245 429873670 492216340 185720951 995491305 671132248 737835115 960293474 977101398 54965443 248473882 445331435 826520872 78563212 619681526 808683428 994133784 654813334 879172024 527272615 958866090 596525883 865665141 359477759 846688350 448805768 677808199 416713190 982765202 586332386 796636327 934208189 986400485 546623748 589347154 281866953 940729630 628381573 940659917 935646303 994202179 587036363 948464923 49814474 493901551 795605602 946627595 559639077 613390242 693868988 998989853 661468544 860067177 535142708 563707026 567640586 771819563 590472732 713212608 322014486 350306439 806103908 880346417 940270755 954221016 527127562 816735945 908817573 958197185 206169993 457492460 928170782 985098973 299472251 331905407 401933310 856535431 837062308 840695592 938046794 995542479 390905359 721182796 623386499 788838458 853633008 960532133 947462458 982241353 923618389 979146691 399355372 894654761 932030659 975018771 674267268 979672891 603697763 646288983 361521226 916099421 847637221 945276854 41294885 780594016 546604427 628795141 427984576 718431893 353689921 562677104 544748210 758083002 537116115 550071097 562091999 988320924 244267854 706713111 322065732 758553853 591608605 840500309 202187100 996953718 44908963 184996990 959662210 960720558 717047743 814356887 20081222 488516252 620555022 925821164 49517990 535268989 608220882 889590619 164742806 589412877 949497083 969390131 576837397 903759512 629625408 685672512 527678914 895298926 969445064 997621226 692950914 886849816 252065320 737423334 966774320 996169611 863210282 890349642 275564093 775546776 604082305 813659942 685599255 766673300 979778241 999803357 395695155 494729780 935360263 965083379 179953912 586344065 534468280 747527051 13106961 280442669 989984968 995773869 4699615 490378323 488618065 614160287 136816255 602544816 274675798 288119388 280623257 619884054 268254188 485475405 648017506 683493571 312150484 637564764 346502880 861685212 976477362 989211984 32830941 613320086 863337487 902386166 458316866 460730774 23924276 890280959 700961143 929892040 812491546 916998306 1604261 20521198 183741227 676037883 259553347 494537762 990538599 992809171 381328960 879090029 900137757 911662019 914640869 940970816 677750962 758381914 636719155 636732751 616577350 775844062 766557022 876617477 966770523 984551311 878515238 937909945 798370169 857456854 519736173 901276706 2055513 185079696 466619899 993244905 545772329 900555070 434436410 686463326 239917717 393059928 781862683 880615453 716220156 977057053 830739545 844476383 549142798 947874863 184027422 200729324 16014220 93889298 719700735 742868028 831281996 961522001 249538208 960902262 313452671 314210463 464343624 729337727 517158990 979316406 768655768 955669815 436821124 870172999 121558892 532065445 214028841 994623088 156463935 231032074 156887967 726799936 370623138 685615532 414240556 670632274 489770505 654144688 396416647 620113477 875401347 917607988 736960338 886910518 972275807 988656035 234246129 707539148 141852491 950051003 813730116 929722297 2374718 561446462 683001853 909292267 881970777 887305122 296228391 713997720 471246673 936721762 968873559 979094831 324477023 756980594 97981804 436203333 764732354 915645725 613422948 754117046 336000441 524979455 750610181 873427585 8933949 302404652 33363216 706438504 4096089 653764486 397465645 680597963 913962307 936330711 148461198 551461574 230591466 891341665 654395560 985332796 476864300 804240002 294490157 349049016 441649575 509342612 744417488 837984024 787157042 876054409 403857248 991375535 244875130 657541043 447594314 836720710 651680463 713526680 681986202 982326773 494572932 964193521 165481097 971582556 342562723 484684496 726375240 782960053 42123115 361478607 397713876 447954766 337621317 797496989 437713375 506430481 273998861 685324128 509270356 592533327 94769810 134958227 252690379 904850677 451243867 824332947 873552713 946175836 199463180 282160636 529738230 894354529 470776319 553806744 130632760 444961334 502827248 748316535 807087110 977631019 815227138 997193421 15538327 519998226 987105072 992733736 761805492 812936557 863674876 873249088 56567422 915898078 735829014 965140748 307398082 772476860 592304418 936303706 116969828 880961133 697236898 935502883 647203004 688577274 243318602 439360393 384810468 436212410 702039343 968726619 468464841 471652938 965847399 978142329 988610591 999351530 21821379 610232898 109282925 652122786 808670870 958890699 955121584 968532819 10809492 267617256 34667202 511502381 631773709 927546488 67620966 477857809 995220216 999842878 23157049 887405834 598757340 970583718 622657399 771717963 800758592 959327234 230933271 344894163 926679928 971031873 143519375 486007833 756730106 972572462 743627397 781627743 43083857 583594034 255249945 598627360 308631305 499869654 136915732 274564806 73037450 718609420 231010581 672623250 271154866 807936026 483269136 691473257 531856740 785137673 46159033 299157664 376136309 665711304 883817678 970197905 753978598 797127246 268609618 673893205 92283073 553351841 844854400 864237257 743941553 843818817 924436336 997184070 322597109 719885887 301618366 988541316 598193318 620400702 321551836 653043205 403555113 443678480 434330121 557765641 364798673 558480466 2843358 570166951 430257575 628917324 27894045 456925359 148372238 769429806 491955662 537287672 2536252 255073192 801160192 997783645 760612433 836606748 297143547 819195677 813721565 826177490 599313774 886543184 167489937 992549781 948909439 956020705 372445878 383973354 574368575 754795611 184520540 215357960 809225127 950843335 499320089 622173415 321516572 385823647 259263794 613296193 284297883 334748030 375216665 906650405 46985829 818148995 203998096 797238796 758097002 843509230 172752344 794469714 703975060 909191933 970741772 977866640 407829828 443704873 502265561 697283190 909993679 912576120 138323403 548525773 358501186 652339058 261150363 800582748 441261839 516658451 42245288 971833042 434009265 786325170 398953513 525948382 485879739 905119073 579827080 610321831 26700859 723009735 294190617 499080984 833237865 889194623 856305057 867437436 133839897 352899056 283611475 827697694 96764624 852903772 433756746 517141611 553509825 681453013 942181344 987233858 565362705 775226439 968841800 978411968 61950554 610458178 46531169 967482038 602638397 900768951 595174243 738242287 374043804 627852610 469684599 865268028 159827621 817167942 43301853 904517118 344920531 595359759 233564539 262326614 407377895 637567936 222750551 595172779 900389606 976223614 623515421 808946035 657767456 955739838 839513341 925748734 784553995 798753815 462080994 525433907 105360065 440808238 176194073 744995201 963029851 968926947 781314137 898783910 749544304 901039717 655123742 804100283 143250204 883506669 928994498 979456145 42540288 881439272 103483916 263470673 359998914 994896477 777998114 831703743 476439890 769348385 206915153 558888168 64854882 900136684 19535014 401394927 733623971 920404645 872484554 882172164 667123350 764861555 990026411 995228063 282079205 307706867 928303676 986382374 509685462 850899146 619463267 753052686 828393311 840159829 653095113 795873810 785039032 940056718 948150209 968661753 353611602 433188918 624283701 681755964 359663398 865544742 716314768 992337609 128270496 928082151 921270131 931662754 932857229 974608982 948655744 998362931 307273866 776756646 327645034 929398275 918595315 936990515 791405580 806290767 24468993 643382387 933272305 993033510 264481625 915023850 202607474 643575053 695558349 971297200 205563885 254683719 719539744 913185017 416909399 599759399 757581651 971735192 995068950 998478683 632910827 883787232 915027543 944945703 516271291 657860960 973541628 979033129 471985919 600823390 826434257 842063082 875677628 908283081 688365858 965336760 911331991 964988155 875312714 907371593 403896623 499804212 128682011 761103506 125401193 210012461 355250172 511870645 833291742 853234094 26485693 707800951 580873490 917558084 46616104 589285364 256045410 292636654 568309745 769716973 690872441 819628330 626950228 873097546 523769356 722629931 227459687 328555758 463538061 906609282 271439451 747659420 64495308 872186433 45878945 159675499 24693426 839456666 388925811 635997031 421462607 702841727 794414632 918100430 19237915 934922232 338663744 790009543 320008614 836708110 803301989 807598171 547931020 718823564 634585820 844582058 486469292 975113242 359132006 504831513 345274026 986219553 765678509 960391487 135190672 294930594 513520117 561660636 103159802 510058407 325670971 755036294 104939953 340379744 201795661 261991732 396818098 686105599 327616003 726254060 187147556 444895368 794808698 921556064 525644067 825614001 477018311 492264455 409644963 618522407 102219582 574210160 651245110 676080225 991893291 995528633 46744912 386902870 666118014 835550864 359838884 636815180 530222177 955001734 620960655 727485972 641110450 973501573 479324102 748542168 10135065 891500089 667970361 699943152 37593059 767254865 110842920 299065009 391747319 912319744 426475135 726234755 859569871 966862490 715720050 849030020 751234864 888966730 842237124 976493357 647295473 950024257 414142819 849534667 231226455 455402896 646775872 758288020 427798566 775754429 889440629 939514640 185497754 558900586 319475338 368697828 835080675 868605134 226106768 906802494 181248735 696563456 888317726 908737860 154847365 199010670 77589596 779665475 792439447 970438096 643288185 771625342 7339090 580389291 123238266 459307561 16079845 338777715 278496746 469343490 497336122 644384666 271500816 389026097 92452620 312577269 832899833 972733285 177983629 923325598 866377943 977900470 717404513 997584286 656777067 985997087 578423342 807520174 626545273 707072240 871746814 925124296 303314326 728143290 508007304 516490271 470869663 756307745 607506616 840063720 173854339 956442961 883045782 979149904 327241991 490197665 137338139 328349958 952369935 988329654 330101005 773204348 474258550 520269957 973785275 980634501 267553957 783997425 26288820 189183805 642972779 704984930 283624348 710748591 366958816 422886168 239866810 951622505 39788538 800129219 565298368 631804485 86173224 869514299 242711681 701063706 226282242 645375304 55769658 841880222 370864304 920699751 143249929 874760823 646561804 720584273 94271572 218165148 142380182 149043177 264912483 971163471 311346099 620516931 27255386 868975491 296128473 516776967 588171029 955542193 424217503 687072480 616538494 686165593 294023826 845097842 99215406 123597731 996797267 999850552 131783009 406890027 167050063 517190124 101586631 602435605 938608707 943916075 126369188 355444917 45659578 682672604 284892068 694337983 259228443 324104901 883583519 931220866 778140046 831956687 173231053 725463418 259201035 345098674 422041244 568201591 103216492 369053496 475721550 691212020 25770664 251352892 852285907 956217344 369987592 583301164 704132001 756458829 127056733 248884036 786526756 847476580 406549294 927914710 463861389 561616809 682584777 882407880 239160604 331688818 727882677 981353978 573778564 618006515 472951311 492014305 176063088 335920690 707727101 842500055 549986625 792653576 648285555 729321210 858348782 952554278 814475765 962566740 46437898 697873914 751325005 798657967 931170054 998730278 671301661 813818265 134237310 516450870 132412578 363928950 567419104 722564561 588650906 777397871 809535833 828486623 631693217 897261033 683022835 994915692 235129261 497221312 685497800 912758285 643384228 658000167 340727659 356542103 655695153 900563489 42771610 234042989 732355323 877229340 778686519 850284512 936543961 981633019 28368746 989552556 160918475 900586806 622337575 920187368 308320150 772516823 654076516 654553645 383831815 969891395 701829071 885866875 538868838 784344336 398700143 985467053 793339826 806127906 294619028 422275443 865282770 941184403 641144308 902877837 648535340 848581510 756469189 784648187 926031604 926426092 210984581 992866212 38254027 796541721 833108943 887854342 288529781 888847102 943044412 969987561 630043244 746992654 600932895 753214110 540126721 976280036 310865883 777622112 527171090 670876417 633712907 700412260 937452506 982865272 852840994 857952154 592554659 926593838 293425241 866102607 363499278 569645896 51605494 873593312 934013005 970056780 653335489 882741049 727478493 855900117 759867584 927225236 519109415 548267311 861966859 960435414 888846779 969184687 551096974 611569297 757294146 946454207 230305320 905153501 964305726 964769845 799535401 838414198 223575812 237760018 783945475 965436539 158207057 424285721 713945349 893592399 491289093 993974324 919558331 981636577 1544034 139583681 158288245 291954892 629597332 722438101 648953257 945910247 957293770 999335732 531436442 656564137 93122576 114307706 28930081 958209936 12681852 485052393 345055735 423911990 346229229 656891845 548279669 758822125 441383460 459947736 987111698 994178492 703334187 893229811 452972156 521153471 415865070 776677761 111933835 565255506 553569101 873478855 31348001 922227541 210102128 786428121 622260119 824538032 858169031 938723161 708781610 997020528 923554584 936123179 303877611 849764337 244955212 891606430 662839172 911017831 538089704 753575979 765791067 970373356 633453131 655783930 866160536 897821241 466502346 611171644 970580495 986677260 963532190 989837213 385556643 895817824 429668047 789630889 482807671 922503750 748107212 780788401 273644860 884779200 254180021 661877968 748389011 906780753 223131510 652626265 913160195 964706098 134419556 249014239 894439230 995606435 678484217 872102803 754003173 872271053 867227238 871124037 64307593 886132783 658642537 804843448 426369775 440024828 354252527 527775777 300617697 856686070 746357339 974874128 233072991 335626181 887115024 891810521 395825208 683059041 814399958 959947216 798085076 937678779 488059218 984675814 255599227 684353947 153656537 188496994 738015700 881918340 149815205 259534786 774746431 872074811 843508691 866461426 199923529 475448744 76201302 872037512 282779463 293801680 478310898 844817641 316890261 961016013 124602776 836873743 953865316 987447809 915194523 993470143 998554101 998659274 713543792 828953182 407189421 473043135 533140861 690138403 596164105 969851827 835628064 940224824 862213563 905726806 150330328 414825891 87738743 658114433 421104208 602871874 340719050 345423514 893523716 946440029 442018399 448948094 262386252 771890142 832612501 839592917 116406931 960254403 77789402 342301561 486518741 952515099 299322464 543228372 632278710 915821043 392318317 886653903 746232597 984546514 653322676 858968222 388572579 652516357 291153748 567190836 382050942 676168868 462098482 554699837 28943164 48984019 783122524 918591892 331947177 384130712 432051292 540149456 953136210 980676502 536105970 710809040 35504681 229277107 598466551 955155411 15310870 305781761 716689462 740414454 3479113 518890532 148211605 174900259 824077608 889252068 553030437 792246386 649732519 657878486 979972010 982712952 594310301 844469303 799478801 890614019 84578335 428312357 240397801 985048930 666472884 787626194 434742458 850106541 757817438 858016279 147037103 156188855 573977337 854928813 970844423 988126261 916553284 936256514 482703301 775117411 964362456 992871738 153888397 602773058 931935156 985570869 696435049 887815281 287853298 974926706 12352870 637669726 750633154 824974219 450865523 590009827 656636661 982358018 93578161 731421517 185678920 497578610 111773474 291143662 877607011 967240825 230489881 641188149 63707057 460230146 567965918 697256390 353722246 382964969 461405253 487099289 214357962 708265536 856206800 881699268 12901947 292541019 444549360 662733021 147945767 175057725 480536576 804801706 446797889 803350513 938991028 964234594 632147632 990272218 42919841 802153000 924143662 969824759 308173708 634975985 333690054 702167982 910789421 976333988 310781311 706760179 414619402 457711781 683813119 934345783 842934938 936851748 407024655 933455111 157459047 167942257 52466899 776295547 246080379 906077726 943998199 977938962 199328090 231648297 118652343 510935970 576905483 619933900 574486891 599391536 786575807 816871994 790323153 935641578 491211129 671230466 728823968 813568255 930443717 996557081 917570998 971298756 680646091 975316429 720564205 821030488 87950945 934985819 299576667 540747092 901991752 974088852 18778166 290455507 169649435 179337069 784868414 860818639 228130980 967422503 859326312 893067603 696963180 714216357 326384247 419544911 893355123 949242165 656865341 858145598 546147544 676412964 763729062 773021305 616558324 899685214 665756422 675222058 753388699 954314646 761768440 774843291 602631106 895815643 980766609 981601895 686616496 792714545 83888496 819450555 699292327 943114912 756258711 911087714 93380178 651981132 83269072 462891332 929739194 974361936 247049471 740431158 938177297 968129910 602820159 728891015 630202555 855075954 862371364 913126569 924566151 992355492 480024889 767734493 85918716 884093021 740856657 942093792 858582711 898413518 345303881 483395370 316623095 874139972 926738973 974424180 835101131 967829991 564410605 950443388 237786713 858507127 71164913 517533868 77002501 584241782 40647705 188141696 750075519 798604713 567894192 985397057 683394534 687731103 595297399 777192493 285065677 518889965 135497431 272984538 563007714 925931994 766647461 974593656 148431199 377473300 32930365 439312128 654010148 683975893 227023258 866184580 437339472 471532095 245352769 922970906 44719074 933519116 650466583 891248668 464254595 503782478 100228443 659935113 518776171 588147014 376308071 635429934 252493675 485524429 83625026 822945877 340023382 790255540 705059754 745231444 331206049 364481038 812520816 847300471 512475017 738317421 566872801 959858170 354644896 914231232 401453468 912614050 28935000 615695277 712934914 941495985 706564608 980317717 108564043 892450095 705601574 725211075 450533198 794342053 29496221 969410748 943595353 981127289 390538203 500420908 856509808 857290250 61503415 774157732 207253899 626985246 812991388 918648268 736018719 809916462 198892417 330841570 749212596 791084256 73093732 935142474 964462730 982805491 450866939 491288455 460989478 731790032 469377116 639738466 588737543 705516274 291730362 369043191 303914490 613617083 913036040 937308316 451203168 620385459 474280962 922190860 592742103 754655835 125278519 304217100 805170126 919243385 949922222 977951106 124987209 466322800 807072118 957342294 845941239 896438420 287776018 857895532 454237328 613112950 334181692 545121136 32866113 80995171 399353532 760693141 518397649 988464889 403671630 687169885 939092731 963031327 880239011 948821596 742956709 800382342 974477406 998785280 408238848 982810771 185855166 658848341 191974095 711389006 357665641 962395233 75202599 874201599 133068632 151496488 399429177 490788897 447842172 528021710 993857238 998096083 637533474 639811898 81509198 102649366 356577239 382600307 480633816 632771497 381930543 851204749 41448804 147510373 288887252 767972235 653316894 984505347 362026075 446177105 341622976 519216613 157778383 716457449 818616341 858032837 295170910 409029863 680741676 978189055 778097002 977143673 990347320 998114850 66739578 795547703 623723405 693639075 533332452 700037511 902902719 992696218 633329012 806810696 863165582 965019133 881290227 920089175 496688732 838639838 701344656 781868223 645904276 656135916 601626704 816461887 508232138 533311686 932477831 962254750 115242166 703218985 245781123 882947845 879222669 954235626 509126522 785711128 910334534 955857921 579221456 868996258 298616703 942821067 234308411 669374167 288079182 851011771 102303525 785144896 982204103 989796638 199083869 740304978 159563604 829540969 23559016 69497191 224779493 562236198 917146308 957485545 84929208 594689208 514356815 703795890 127953371 734574907 931738045 974774564 191114667 245567770 250698393 292911528 536862615 835392026 736639380 752650266 634922782 954789213 313692684 601231815 749128234 790682446 702552599 858327333 134999807 351618999 757064477 765205578 620206345 656801943 440049374 980293998 621559658 779704746 444468547 777920298 759679165 944077791 863809115 941762506 808435821 945970677 438686761 502934220 831601893 843480589 573022057 720075420 698637031 804882178 990969616 991319320 240895360 429950047 913588032 973576583 932757237 957926257 527891817 529619687 40093573 444240801 744258595 848127114 421890073 726631237 74128183 547109750 814167825 978388804 657907196 918138744 691503931 751385757 785203371 798324651 344361782 375347405 908781156 951261583 35051382 316347922 406409526 669180050 365315001 669667190 415679240 650274543 761594125 959191725 582789664 623620146 293119887 435404482 784990984 916336937 419809154 995083153 249253148 633979559 872333651 947844252 820803032 929175490 662818394 839911741 28199310 163075148 3155343 431979923 492450554 882168712 654254139 848451373 87454363 463033070 588152975 649813465 340400662 417357298 641303 189875654 902549414 963392204 565991376 602707634 155414585 764212709 417897593 433891929 648802568 988384330 506918597 729750828 426759155 941222442 21074990 70517712 333755129 711293178 158214040 512179325 129744055 368155366 34453432 471857071 854702635 979157961 563952259 667118959 333339397 710072117 418383102 749438545 778153424 984551845 857841614 942850325 826008498 945138644 68585749 290336785 531805510 660584629 474780675 769219982 980981888 986626693 432341733 808128996 186466747 241256148 533444065 597619962 478807915 953770785 286318292 384333190 670101850 839386937 633614332 864199679 933758248 945837950 896823121 977073905 371893049 439961395 566667679 778070431 565565227 803312453 558959211 860810655 83842813 744732578 339059250 917037289 363898508 520744180 775662814 939550027 610260088 951165190 608537599 615390252 837056832 852949128 815171013 909013423 314376599 771933870 433703505 561232950 762075596 768909249 308949979 535098370 1092392 686814161 685094674 974956717 862399198 993828281 902936421 916069540 162033793 364710111 666854940 671350129 375851369 670424291 715287926 975692099 341475703 886987182 844629284 864118472 982624749 997236551 6999521 902745712 119212285 280694867 65126042 879775743 280756178 824805772 121167866 801584661 102875784 719659904 954675570 963494504 745895322 914986262 703105207 735816780 199653252 685290245 929126890 966222942 494103326 880337002 494214821 526105446 547008710 630899848 273066560 400311336 495654667 933620128 38218248 494800847 986919388 996103174 415069462 621933111 163450891 407956428 284562906 668580810 857101834 922215998 718245721 953432919 384780005 737821162 240801455 575555036 515184219 803193733 280160330 388657332 959247046 975648941 269351071 761505719 846492054 982686492 232507380 281816483 94796349 353971187 539466682 545755692 636908289 669152807 281246182 289186771 411047105 788571007 67741313 834505671 832036176 939166807 384518452 911384719 492749807 806241007 351628815 599963533 787903003 800865436 16965163 742794917 453858249 903885953 732073602 751549694 753204911 979427038 203004853 613392021 153116306 241849972 760810045 855756447 628606736 811517830 993633625 999955025 874970671 908193366 564326731 795084703 522348459 682197248 8656919 554519795 703332950 841039946 301671074 982993571 342510768 377871153 317577644 759418841 364969651 825412115 149039955 378951413 502521164 825287603 311461300 555768044 197322402 972849064 414848649 975473667 901432006 923146171 588486361 730004057 739341797 946881358 160885515 950316445 37007555 983643448 828892604 920126940 148593668 313980341 525351292 658598534 821200867 883011623 227314454 965183240 777804703 882773139 701901671 869013589 582578862 707449993 451840598 767659865 452353104 744355413 543617113 969854704 614658737 760953898 446329842 938218193 973652413 990775922 386807515 789264219 944536424 960602726 62077786 368334245 983872357 989533099 9575386 303131691 326259745 330948676 818097807 875181566 686499973 867583822 777772192 954759060 652076977 810216801 276634322 567840935 996051402 996949467 391710503 901504429 165804203 213782694 375390436 975784053 397726856 400161054 136669994 955683105 541771137 633826242 922203023 985523680 921208261 937217447 651028694 719192203 340239255 522066503 283553932 880736172 652390310 958474227 54627740 311252992 265103267 957178785 508894735 966674242 594100328 960667126 25507787 75491300 133654987 301708305 485855474 905065534 508145810 660874230 400055318 766457806 499074986 704022692 350327805 604514886 227472835 443233446 27678086 159583211 374941894 904696076 520238253 595217131 744486314 921086004 262843834 857555537 284740743 990512721 399765214 616284744 42059580 831355593 629255732 734565847 729619877 941676327 600225865 791103210 608896517 974841364 353902337 678651129 728343987 840652339 885650135 981586483 329400185 722987534 253761211 676673457 818848244 821933219 480654892 567768220 219170928 356114944 951942015 977886773 633190626 700905470 657050237 748173305 136510442 732456881 808852120 860453873 469903090 594954748 464010822 553130644 480482837 897117048 395131398 698116051 711485296 734931922 685599701 917975077 493238140 673027843 30257306 849292848 642040237 888404311 298190408 748646337 182121493 854944328 680216589 716392266 444749197 857082991 57824315 439802227 201725292 684529669 172847821 653064619 394886038 486647014 158954212 979197262 619663932 661374668 474928381 946625186 352380250 711200847 114652183 575925169 25940344 168096013 165558536 749631590 442194517 656001034 65116306 262248921 622698729 631955416 411954569 465007361 812264778 995665039 906181989 953780106 221834566 575959394 917225672 999384153 109196779 248902536 530968745 759657303 244338377 675100426 961484659 967808594 675209502 682006279 945516846 997667777 552249737 899891140 856640869 932715921 893704702 923359044 61839685 867467763 769315850 874100705 929023365 962088899 443439911 797017349 371419128 648494438 561284267 632156684 370067437 760688932 119381536 358843553 322798497 641873115 141258613 508996906 532983623 889794843 176288233 879487857 929729319 976371453 669274118 786924292 738965596 745707892 682912875 888647804 484579179 877421765 437373234 823809498 715789711 907093603 379208928 583472554 292137535 583469454 478787614 611766224 682860129 936695962 217012101 695502775 948742149 966283420 157572670 820631821 661482279 928193277 203095487 873416490 283437285 976887241 649174863 725916499 361577965 632553460 238482376 238721012 115498811 979005989 798007026 842294803 500971465 968149611 970296446 974590115 672221455 947573576 22445450 783191050 700741544 826690541 421770625 834109424 772755113 989256463 960296732 988643422 472372799 635847420 40258482 48285943 470358933 898287598 928018395 933722124 137104947 414516879 992435625 994543351 545384565 865991253 325181171 714299296 214149231 995717522 716158668 792399547 779382945 950625599 784430978 787421984 200754503 530577273 387491150 880637543 227448639 517469849 446396760 585638477 395452192 442370934 319013103 583458084 158896050 423650739 962423193 963597119 215599791 358382281 993235185 993506368 605676309 911560503 654935275 805056068 632479572 678905549 801821815 813579502 91766033 930509648 685681111 751433624 447154108 697147564 882672631 914271145 198276999 205960807 590936591 594910588 320991563 445332987 874863453 996100190 333858672 335915373 287677792 792158259 900532095 964872052 997516497 998040128 522024635 621657314 673235966 994500372 656224194 930110319 680789154 862277501 606279449 812502587 452888121 713551400 530473010 937231932 104297345 657406301 615193594 847184258 757601587 854058303 3884630 567342300 100111652 446014540 99284341 257217179 382755945 570073858 31451295 450498748 985934722 991949022 435713206 703908486 455540183 630016166 324809124 527155304 689911015 764741965 770932129 778928906 951966511 962211487 291105596 354699679 720527225 946799154 171857706 736362294 522465435 933903769 65847087 329982845 362859419 643244563 625880802 967668274 685757441 842579540 495179154 842514690 84110692 492502699 239381645 875917281 837965930 846007474 370602712 526448326 652590468 741822494 846685909 848665605 426499925 715728785 441037184 651690302 816150995 835465369 892900951 902781195 990374671 991634472 677397364 992005772 193178793 536569340 452957260 681493502 437109828 627676786 26285050 347146834 118855954 257408324 286342819 559406555 561412542 742802198 574464712 574684007 348411605 500045381 529010786 626870883 173976049 667008296 215915332 386384260 808132930 943131446 797890346 944093591 987839081 998576038 503721758 761539098 864616260 937854389 561978915 704969832 998874683 999504533 41271857 869035079 242162725 914034396 700087404 750318168 524980368 976810546 400920099 456574280 837430303 896232020 184743580 350190572 53484687 657171785 849938750 962903866 440642712 659750447 173569683 407694639 63365379 422834402 975659224 988957086 527615550 700234862 889437773 947088883 581532901 592856953 736885954 995486468 406060664 930218159 662486689 720769551 408009466 982679753 411722561 865885076 221466436 320927137 607548686 615616776 224004275 961895864 662117857 666159246 938866779 984250345 878932124 992657520 826274570 873831018 568881165 717870850 425529123 859473251 778501119 846982406 799276379 982130203 586673577 874438995 861325593 997067467 311606014 657159362 866603787 984729394 439973553 646521278 187869836 376713702 941545905 987967389 374917142 543973810 12472180 38883120 284973423 991729526 404840965 601613014 194460503 817907293 588301766 735542669 769755285 936283758 593765442 846439092 884936314 979285672 811659953 996665057 502361121 815562931 930888464 966439066 611205219 634826293 354600848 619093763 228991785 247172718 87302723 641812504 145828599 301142654 43816485 868134956 568586362 738402811 711769654 896052082 806276917 887844729 560250413 875922038 449522792 583587502 250616222 656679957 126698680 311212581 466903135 710001867 322108705 683248019 129024471 444303336 270423845 748124874 47475350 91026153 232513182 894665517 935771234 994125396 260374744 313972683 591923077 650474002 828119623 835616254 178720682 390433055 561487269 664836374 631449486 892707676 197215827 765595526 868126151 953950947 56479018 258756556 930351084 969474910 529265030 809498152 582280446 844682909 171358931 232249302 992684804 995200090 482718215 590581905 88275764 402817196 939782538 940430976 57090868 622739792 583473696 809687551 329884147 953660289 380261766 586558490 673009722 907109019 379172517 669072803 15599439 652337817 132153337 811595479 918247803 959872509 575121641 605597526 261792722 307751258 810746930 837285106 79519831 786734720 461568732 564053375 999677393 999760471 280529563 772513396 631983253 766502338 571231615 944053898 32898934 97379126 215176698 314841832 704763281 967876607 698309076 785577226 762311134 957986166 762580232 788034049 228690335 973176560 673477128 802096263 489695329 520354920 904512756 980404266 430600778 705248138 747301752 949774519 498509637 641384519 135785626 523181908 693407655 849376301 564277698 759321534 237142608 744995991 620624158 986595257 132925201 568478982 633586521 726165306 893765982 994034563 902983733 966216176 683382728 700143303 171268210 348498451 97306287 146650159 318605334 561785948 146573341 881005366 87715362 924700738 32666227 263821742 307775201 842229120 505769119 846420357 409376065 568307076 459976666 487947690 325294806 580508408 948371235 987610507 283052546 491294322 722586391 768563601 536098615 844145989 385845166 817568023 525131922 666839260 989645928 993613127 479104414 998481557 620137397 962695139 260302371 796590905 847686065 863528878 199220125 659872199 833023471 871566874 481856179 545259304 639270438 911980234 236288003 737200621 581824025 761942586 444978924 731956691 889900786 908972247 337496454 976217780 656187648 896544514 159662417 614205852 230098602 236244957 795125704 845071367 842371019 953657525 840508832 863589515 209719641 951946117 657324529 995408303 321132158 763418475 868717881 873950979 627570282 767740759 947749574 982960325 901883403 998268458 989796168 997774362 762732561 784075021 359880948 492187072 611836953 920655316 503568684 540493385 819365259 859698159 691943270 800255404 602762056 834998143 819680732 830651982 372975418 722252120 888167821 982512382 294027978 787404756 875108811 999604942 125013403 180815296 544712207 774727530 812724879 858308249 965417826 981885241 960799639 972767805 735453761 976966289 264648184 861378907 453954696 988040003 234546565 817968330 78387503 861489755 386527106 442559445 964120887 975060499 788822516 809326177 647777609 931960370 739560382 823369539 187462286 525160274 783483585 804793770 263515900 933526782 185894924 365259917 114489720 456649771 352887024 508489760 309479076 435652129 369791661 700611895 10155572 819716654 696928007 790000070 200894983 866274930 528135669 605161566 999112350 999644433 511514266 695235518 855535161 983439502 873605123 960869043 367578576 377561219 472603100 862942600 334679381 728415718 252357503 617871861 449531675 514335167 320711488 817116456 246892906 595612899 123713842 873598333 682508547 819719586 943478365 988382059 512630684 630195754 23993891 611580354 10645356 177736908 366314236 995012890 785720737 980391401 140205357 309318077 357486959 479364165 676035778 919373826 73300834 337833001 210439165 956554004 853115855 878576922 291869569 964093987 697868278 698375533 837610591 890747821 749648233 977096262 659562337 904032207 352080538 711685553 339839770 477899705 279251758 992387216 674911926 786142049 165558530 221607283 614533202 622618340 256181954 400930745 447301568 854474265 340467434 866934893 857088916 897340607 645734219 657534623 870112755 870117955 144121442 260932589 173993001 769678758 851594100 913700509 367838531 867746121 614607350 897725364 222897592 847308355 658307867 797698300 307700223 960133909 123332211 201707943 579688588 843962674 616333941 779286767 776790388 860034707 353330565 691348388 427010986 683458755 552181967 796094032 991208679 997965061 12457744 920732797 387366384 949610350 808309998 950638124 592876479 829371267 343543952 802752409 14605994 42779399 137979415 992661676 829741247 865788925 706931386 789645740 278997854 806764523 4565595 975086255 831914648 883785499 402091976 501262097 725059024 736529502 213900355 763797071 949694438 950319900 357816299 487912880 753025541 771586844 838798001 942080527 97299793 513069821 421023379 505404690 995153680 997546309 780788662 910098121 752130374 892157192 452047229 945821637 131140169 680395055 590752779 816471791 229798494 428796202 248490758 485430061 511014793 614227089 855787363 875939672 191230575 252825354 264117585 301142081 382527129 583439685 712230836 799685044 281085658 595984231 560342422 676035423 192855532 435469746 515955529 695713234 528739531 979324589 973750082 993216923 435184262 867281434 309819893 482309333 216990209 926935009 942395510 990417764 258208239 399225866 952787588 997622955 167426500 894372847 847986323 928495716 459319487 717455840 829029954 901733530 92895679 783940076 834628509 839171016 21291944 354092294 678238806 900729745 403708056 754849802 902341530 974745051 308279109 373275339 946617378 997898280 224393148 795863141 424270671 926490093 712280918 784458626 394261928 591435081 936824401 963966318 641237512 939559240 280453886 343592857 876960138 973472186 48174939 345525689 110708241 882420663 326639258 506207508 365405320 918036002 747096451 935774271 172810489 186422606 611277315 645039695 610889258 683793126 968420044 993274043 823406589 903853151 581984820 962487626 989505574 994284728 806108667 948464984 24047767 124988661 979504886 999818700 981201496 991839146 211579051 486018383 522437116 791897430 457190790 487279582 482953966 785722667 456264124 459121486 65681192 532290201 692553363 701099020 759947417 801594323 873350660 999291709 498474556 546896620 881603442 975804005 316609284 752328401 193165167 684387667 859851119 976042720 560383250 838022963 125881902 149836810 619137343 812830889 941338333 974844628 135304161 522298601 209405428 693652147 31659424 912615210 484970478 993705384 133315381 492624383 57461887 197875775 923467939 934298758 187942639 542530979 455431972 667099617 757813543 983794560 498227655 808150700 708366209 887555158 587007502 906953056 390442683 788107563 586748533 805106207 341134215 977423760 955325000 972966659 59198742 930710763 540296385 960845219 493851573 914931401 999193910 999214908 205213141 632140535 451358458 699498745 308559148 725250796 278118587 494189748 523800273 966328397 914798587 932249243 135687337 911351706 477733306 863929703 830175059 915444806 402867901 664403607 816198431 937275733 681000118 844363061 503937798 526373274 277413942 519552177 363859197 429255983 276527897 317264118 288638949 324725739 196060760 894119397 856872708 931953833 755750874 824729665 147543723 795689912 683619068 856498210 848143542 990345189 600973337 961602514 314901466 715050796 435378969 731438665 813147967 885704964 67272627 416050597 375148716 657630042 216716394 693271950 202775422 388716970 292953213 363432349 857296780 901699759 378246410 577515968 740637193 851191873 917200986 947425376 164552238 958031438 726284355 821734404 480837659 541963063 785339116 817443596 190694508 770953918 674067805 674604645 782166603 814610141 412439874 998423914 9042101 981559376 442231363 823831314 469835660 934406538 347010529 882078759 142586062 228133693 156535388 931986107 77176935 794918489 862376180 879143353 512477330 680014633 425798707 462928723 615857101 759779213 592907998 769013690 981517784 991853951 606688113 937214544 451694996 825167314 329434163 823408940 725976424 903036862 254931762 967133761 310193110 992160891 420287509 457024173 977892331 979280988 51436285 448824908 656478884 710249574 712871824 974894264 466330284 731294792 67384027 426583404 257362767 937437967 395572448 793091841 975417236 995792892 201349057 483957392 839786779 896029077 950155459 953457892 632598561 633602062 979400761 996872824 886338382 928037536 679830144 793303456 448518136 875367127 109842435 209399838 668999926 982905410 796205811 934839904 484033628 650438712 26965939 743809871 441247483 466586590 706950945 781306984 97955111 805687924 328613272 806018252 374407687 492584559 598962743 852366028 794613877 951444810 467026745 649432684 833815619 882230405 178427473 793935069 536798420 945650119 517885097 535873813 902875411 967940913 157194841 801397697 736139168 775120067 436135753 469569958 448179852 708584012 69171535 81452471 20870278 43577849 983662661 991972839 697738401 744375961 304975861 643202042 30950313 607523295 135366986 150360221 794225332 955121713 295865937 796194836 559321759 995950937 136276537 670720592 219398879 694760584 842648314 989607717 191383886 655756204 739499963 826498655 825264312 894891824 855552754 883035718 128883916 395649709 143170852 627338935 664533446 983949741 569915170 800749179 6352984 610844748 79892050 545951997 158655648 574613463 889583560 918243921 525563673 934341298 919749516 943372212 786915674 812514603 66798882 902078529 837340010 854953979 697533653 997205267 736268604 799704188 58786201 801243418 773211107 814033241 546399398 713667579 216084733 286884562 693382159 844210355 63338730 181855537 549648122 831909637 611300708 883060742 1513112 762179677 711109562 738958530 795710787 903377595 119473542 179559257 260380147 379299574 216165498 361548158 742242801 759780433 852354767 911365797 956474020 986793122 244915748 554032195 125414060 573579415 272669470 996095756 328055507 910748138 454604359 984608922 166223222 562373596 604307860 826985657 258850640 809896163 970530875 974210410 229617607 240020731 682759643 851028464 303861573 904984047 951697674 989291588 588391836 746275629 13400043 872260351 426428890 803573683 212591893 241520355 326566167 637988138 347725985 842550460 183787333 598260494 537525196 966938626 724618308 918111619 824554683 948199476 60187562 577555518 47384383 841131733 124837689 283606932 597954882 764465427 927342411 928105247 358737075 965204254 833941795 977883493 683690700 823357386 632793804 774100969 501872832 916452179 180784619 351609319 897900497 916178096 949611170 986216253 241007442 983320126 923169641 930236124 224385770 320461820 806021412 949011992 300482309 373137172 451430101 517753141 830094495 949685101 751967486 786769186 692768824 757270151 474295476 782563114 461058011 679818845 524020517 620560167 865564252 981918599 971148027 981899156 846116282 984270596 527392318 938793342 293776977 606187522 686873904 819047614 53293232 422796068 295441412 374670768 101711791 243600618 735265758 793184828 232014532 915035772 829092397 897162587 473065349 881488300 83137598 132454494 704439848 992139287 189944038 755029676 847722414 896188449 59701111 464132653 162887633 321406512 676803737 912952604 11612649 972195313 747883629 910844588 696806413 761073410 188412694 738697237 517113470 714971537 433007186 943035651 566360456 866051413 686829337 756438723 474451002 777338489 463631552 716716886 677379902 752386688 919307740 929641179 561037683 659023701 882233116 900005276 676174128 819709149 300592154 774176665 387011793 434999942 498557751 846757278 25083302 266544096 953539585 999976837 101715101 386917969 788800470 972371611 824185271 830118241 376731134 805277303 334209551 657033914 320944224 847257329 482264104 723754515 97382692 518618970 205167914 531411687 18521791 290172153 523728656 643256992 952743925 962086787 513686047 814418365 693187475 813562399 533596737 888738693 365775192 459712555 855408842 860816853 85116872 377797985 195998929 721148075 228588762 269764862 73698860 169939643 757993723 918233988 583413269 727228819 595443833 781283928 242430766 780620364 625539739 666274381 203265456 239660195 118943926 329389968 55128307 360097384 868598475 963910879 416811205 631380698 839231012 879731160 196501192 603597578 720059044 925564995 554964696 859783420 96651548 476748976 419695276 519600091 535654107 692066394 623686806 836587249 374732705 772553639 38467674 466839644 148316712 909981094 533539030 999144846 988563123 992319817 966233578 971601898 324184808 743042907 774235424 867998391 557422773 924363238 594301763 713338368 646841105 790328603 748334670 810719655 90632773 939121947 73138766 811720214 653889365 717816791 888731702 930294904 144661892 146937541 813763048 854185570 951790329 967189423 757913054 970727062 937077283 978506628 502290885 915653345 308835047 365247469 353183529 794062489 150787470 604114036 497170077 519303975 97448783 671840380 350886116 764774939 343378238 527078779 250652112 581211117 386558600 904530679 991439705 995746631 477264889 748237565 923637977 990277576 124892770 617627447 993634390 999549758 554747913 797418942 917966239 954233712 102127881 441750055 676228607 981715712 56843643 861876415 521669345 895998182 371933736 682830161 991469524 992971550 304024605 941104681 344906433 405825427 139986168 811728108 290162882 487423810 982396286 987857268 995723708 997124278 273924940 635892241 221385640 548323185 574915513 825202971 315780086 871948141 454349773 687471616 516108080 796633352 878117973 935900848 849117458 932151950 944709442 950124064 782782671 984990742 490663079 716699429 264860932 873956188 635192175 708720675 310991976 789025223 768290083 894594025 613670433 788267439 56802711 118718823 317620552 454022810 71853614 524644134 368209586 714562281 537139487 787816239 521836303 971182594 39538562 938278014 426742760 908897612 998450570 998969078 74828501 601348456 573238346 688330373 494755503 868037530 813773954 843402558 360243634 511994604 27413937 83156765 161166814 497790148 246952743 934888503 761317483 835204088 340097484 812710755 752379015 942689306 678404645 726104117 81641812 671324931 110325284 684205516 719840808 909608788 963538992 971500755 809624959 837904776 484633391 931647130 435756115 466621078 667443300 797079237 715668601 873226445 659286014 982240834 909470103 955423778 637130708 957194902 632282241 728771936 83719032 149489161 569622047 896454304 536301558 758896327 18003956 552190863 100274488 909731080 519231302 728237693 629732378 873737683 336956264 619304018 881800662 943390758 1535080 47727948 767991550 934787415 422733737 579232528 915670366 988820384 599845810 621426235 924072777 924330979 622659603 804370896 195847285 782032404 854891625 952328193 526091701 889671490 134606482 907926235 550629760 989829143 476472317 999098359 798776892 977847496 697965608 915137880 670692859 956859578 898180859 904096765 832703039 924264431 818128718 963944792 959214836 985176046 609471996 977775684 333721357 910166222 322094527 722423303 719964264 995664565 808676986 877863165 403326565 707581706 377233970 917419971 219866966 587201551 101713270 899196777 9018380 405920531 163344371 271516501 951353429 985648534 533620174 543887105 448694426 679307361 962916017 972038214 269163577 322040562 914349024 937414481 383878819 540965218 917558757 970189202 663720241 915398396 958010222 980570127 601203730 643907062 626869850 916752633 231080488 698835715 967388765 985037651 415535719 718842652 712035411 727907356 163815452 232949864 386252767 637876926 388115976 452386035 545124161 965004463 912460007 939043244 767512761 811868063 910122527 934935749 365139258 447131300 451303160 904581771 380853811 605323512 799260508 975228666 359523511 813973144 387632034 753368489 754156111 833659564 964064930 983763466 676968686 983535582 29191206 228254396 157543995 445456697 4504049 86924876 936769024 950794571 330860047 349439071 34445058 931684852 363377800 376222273 365038416 708119914 345347216 355934406 300838455 685303126 684559861 859475286 504240611 541939547 144815633 440960920 377039706 977546653 824356924 991296872 863653598 928688815 313776793 498236266 709336332 761123390 579168733 935543843 270920629 858934097 982641244 997145989 740866953 778190346 946305589 992907797 594258103 634074404 913500991 938382555 502488608 885808913 839431252 927980022 464109681 721882247 282676894 971794831 242933225 904452258 966330170 972142261 72748709 362460727 130176143 204980134 977838065 995033191 138577298 139116414 438513361 731060556 670605148 942534511 838894192 957241680 271802560 772873979 782160520 918900539 731916698 947448283 878965752 970272184 471944067 628129412 490590741 691076169 689458023 705562650 921224916 938426293 910927781 994566836 784935004 934165008 374451078 622421780 291645221 471139913 479356226 751285658 745750406 901733469 850956083 981550682 121612059 990734218 586265501 824686732 754190698 999390326 888992114 900375820 108580590 561425661 403137080 540169763 610622954 837310347 532888020 723572573 736363705 853492808 269585466 648166760 158223675 887863244 419311721 980593898 160123199 737905370 772552247 917459891 519313513 840394043 545114265 871374516 651407546 961263935 916529340 950124393 589682284 786102845 510622387 866697082 995900478 999638459 620261034 789106731 391841289 690489823 576125531 654567450 276905348 724156041 598032984 907820886 930759033 963405701 740737561 888619965 357009506 511127359 732794998 956750491 97846699 987801500 966094673 981541060 671441468 824857084 401286762 834894039 799632199 839917328 222030724 763218447 784657995 903799051 880223205 948548559 768225343 991368936 268131349 615182025 660075695 705446374 532935149 840316634 367365402 411543141 291628022 910924540 982455095 998088944 784002625 815883907 568710909 602136024 597849647 669930225 578503746 915625873 742400392 930255865 30964691 254807563 49102337 94905792 227355535 988125724 760839464 962983950 575267052 739062284 116505661 585572467 231752456 693927386 933375010 962766574 998075650 998605604 628365032 888326459 210160757 398421383 444498135 990324557 82668923 214161259 722326423 761873424 981047666 992927900 160581817 169467733 437651779 898563504 274054309 399696242 106381434 589591933 658788570 966418617 72294614 867462306 233544412 575557259 790523864 844110231 228103507 299108034 322278474 816243958 360978397 931103479 645625828 777432876 808066402 913166048 403389402 982626491 340931937 895298918 305976300 645119372 727912536 752810189 627771129 902845145 595972902 972983344 357160474 713301832 541907692 838218102 303496091 381143991 523864224 856305931 163324663 516269686 913691849 925211728 351680103 676514362 673942292 971745045 896910738 953331025 175915156 922393504 265185963 733422342 58494566 539643669 82588239 648343998 737295029 983427357 728297722 913014337 583864481 747425786 556242793 559828528 482413400 678220434 182184219 736453207 167543040 654455575 189162063 538278689 408034663 991033719 662416804 833724811 3113429 950561343 720589462 741918128 204367961 852645825 860008594 897282023 313836238 517941739 224338789 820450712 32031730 214767623 53628014 997881373 488899624 921563333 216522479 295948219 552980677 713069959 855097429 953859250 908328624 973947384 189316321 881358181 88229490 927791636 754083563 846465813 412481394 610511679 98256482 859883985 608976702 723179138 115257650 330034196 414047800 684712211 356611161 884555394 746222376 873910293 256287637 774064296 812800173 994322124 143775241 195996931 456305585 601914406 343206990 416161526 581040409 636089596 455428037 877813869 170141175 543687823 453423554 718176946 349523605 900806070 830326036 949402716 241006374 767384171 101471945 610884010 48819869 187742316 46664411 649643127 327714903 568424420 143250490 954978175 649352112 991768080 937253527 981293929 266140176 416524010 233603375 443241409 757427578 863781569 110334043 815465240 82274166 491240170 146705193 471833956 996586161 998242418 245104238 940761387 970882108 981440121 573568276 842532285 183810270 878989101 630485384 823661414 836901861 887771731 511500056 891859491 615778785 801641231 10206226 444496189 391941076 589553675 753907933 819818550 227333852 425617526 726249690 911378534 743395969 942646950 901189670 938905327 246302493 573761434 306310916 860052454 683665117 972838352 495340414 588729441 900768726 982930163 757336996 989401016 15571608 794267470 40099579 609586341 372788800 460754725 261670400 652416396 899053085 955214169 960939133 976506047 973473957 976864020 143212876 491787192 414954902 441153609 571890189 589656528 996802399 999829959 29429696 582188607 15242266 806901304 947970443 967455439 353404476 942416562 831875086 864845299 293209832 752009455 497505355 723323185 437708194 996994926 160237383 730482207 509789507 647520563 487050947 556649026 300418943 460629133 464421589 775612286 982126777 992020207 169273633 289210532 888571212 989136366 919805521 936084328 177185449 696376196 42389865 989103845 158453721 484378911 124554015 962312566 600928797 944307915 923929585 955264056 516183441 916819484 642268418 866421058 739993120 878061591 657885186 794831611 591407689 892776703 347606486 365141175 141506148 227114944 394005052 962630303 246291409 861944624 965178649 975940655 141971653 402675490 724980640 729393812 476198469 708399000 847723390 958231758 753441630 763384153 346050757 385172699 342761464 963683817 381845255 687207993 218755118 430120974 733908706 809074185 443840688 807112337 166310597 874766652 634732727 895357762 635513101 885518731 229478769 827671527 265498405 776066855 497110779 743297992 665313329 804183082 34792196 993421166 789709269 969234701 125675343 819064483 217666612 737191561 431065348 585529333 489008607 586904222 833518292 941319321 583057448 773528246 387444104 587685055 650142502 750764158 289981127 404228739 424423355 913342378 162469695 666231472 902641291 945163750 457734780 577234060 690191842 853920235 476571418 943983847 664335794 904875734 347605653 483165879 585195915 705103542 45981852 187018452 14941889 301477167 756476857 816008846 574880660 802048826 880739365 900212552 237465970 254624761 874970312 921754362 397159299 559668819 424484326 909395604 591050432 747624794 69802760 507221369 497543977 902064640 347631796 915364798 840582659 916529762 620813967 686858766 641401361 814788129 277036274 801557886 630444810 993380610 366468255 675914796 981216632 986377148 129211864 861407026 902684431 965719744 193187949 674786164 643631038 730934721 726716727 926233579 828365490 888455820 239429425 304488605 732376550 789790351 160824012 381246305 629565226 957507971 32518385 343200122 920242122 944589885 793636690 816263920 218227326 345669773 624306196 626345479 741638464 920363508 854284249 970719242 865872383 994927540 702650891 834507945 836519512 863537218 818862930 832791436 620745543 698602261 455524192 745100287 898043910 912923075 123383500 266148552 273840275 818074774 331942832 506926771 769867033 885091003 800885327 933634321 449630338 783111106 838007599 969564901 26437469 836602006 999739744 999981632 295513097 652803908 134017462 458852216 108441169 794693521 770144740 872716796 506847903 988648985 680627101 810153722 853641195 926485588 981989215 983096046 728796779 808623350 423778016 606878653 897489578 972189594 696334496 760172546 9544378 441948335 736780281 963314044 778680169 810944323 986018085 996558852 781102235 945134272 856315065 913567665 415203322 997004482 848219507 951210573 214565368 691500901 412651632 478046805 374524312 648363187 49136514 450109260 920610557 944875620 392195762 846580591 452300599 454524393 560756006 766788243 752358009 954105739 155562710 484726109 21490728 47229097 633822700 733219504 580326082 638193263 604059850 632403794 547782553 829928824 532154218 837569381 21080984 820748259 343561581 996173970 471306117 851569337 246163010 677552543 869078458 894737490 157973879 923082927 329626897 879416890 917857952 950496130 724400659 835522016 254721924 463374362 809412836 982618614 914925372 980855551 807267455 843309497 609475615 942468592 687401400 961654801 935587031 958773098 226583464 698764462 358366980 475460897 850372299 894874707 325303269 845009650 669265765 757325557 139168643 919675195 7732273 134017442 533689407 876943780 924844250 984615508 8326280 219596115 565325125 842890974 100335851 452239057 433486641 731585483 21147368 469850012 73647078 82198174 933075489 994151211 639876343 962259511 502645991 562367540 361959979 416050501 756624517 954087566 388872969 713345691 705126694 763712123 882248363 955534861 751126988 914734250 97790347 234622497 195313104 668185528 476316159 696441728 87449744 183397744 256494879 905452144 546846447 931764990 550231060 953445440 755993929 938007387 244839279 382309843 358470195 900208210 883299200 925808129 723339815 929922027 590917305 925187539 102220438 462870517 939675658 972373976 728709205 866908732 652267245 774445455 307246616 683482918 992887733 998942401 142930674 510794410 381112263 982124239 764927081 925313131 28818170 921738255 995379182 997237274 883683474 985735596 259077861 742143649 623967893 916621145 692465613 994776808 792680999 855471767 937620309 943603749 834285266 930065854 132647998 954492191 581371900 852631242 371850415 402060151 857615752 952745914 607871338 944441004 685379243 933681223 92578920 882855486 598363063 911868776 508866081 830704053 743958215 992603967 736070385 757430013 29525758 718219677 841064254 857292854 715556725 740998280 719424707 941386959 371568042 576334820 58562675 342069424 241565283 424703691 695448342 713798495 602987388 814502847 573922919 832280506 340462015 691978327 166772116 719578011 730408942 981318203 326269920 517315448 551188327 579089670 516988863 723467856 833576721 904055679 991091550 995629751 159209018 935119599 492311232 561312254 729109387 866378950 319304786 522535172 958469681 987336423 132043719 540069773 737656728 808755032 396123119 710249786 90072400 945428170 170625653 182183826 917349262 979914027 724872133 923437689 210201870 501085064 82000287 430281955 533578400 669129583 191323749 999559196 622636969 865557757 291458202 597748420 732940322 788641794 367276708 763531232 635343641 784464126 812937188 897441013 605935764 945394150 894100076 939788045 483894399 762993783 975347735 986903726 547279361 723505377 742240727 763798487 476925276 914657098 620713140 931651607 504999984 743766326 680953262 912753451 105628429 645288200 389566964 577316024 417700858 918833364 842319306 902034250 256290795 716954978 620997220 635427591 953463531 993129419 667890687 688220135 99212824 977610965 611656252 986819475 384321170 464742552 160967539 519302814 766557034 955521747 442219981 555826752 641275053 972666874 276675512 767843824 990090658 996897731 862360552 967298684 338111876 537017194 568313905 695562362 745280328 881245277 994273209 999371425 553688027 702952350 346069860 464199037 562149779 992207612 181511667 740591595 461562239 652577825 226565569 423929069 736906052 831270449 594337529 690724832 492932618 501283800 561407190 631484103 899621948 939051919 10761985 853763736 816571299 862802563 293419493 999734648 337048568 888284348 649347529 894904830 435556453 933197696 543715150 756606492 574255516 854090994 665216775 798458837 44058687 329013886 516222341 570149027 662859843 950249585 662533597 951288109 837307933 978410350 481064990 732999088 724665823 816725257 35892754 820070111 401136192 937962905 33841522 242555450 100997025 690668161 154955450 308760559 837991465 934561135 637944092 941439262 760974039 886226107 193743011 819512328 657568533 872401932 838189584 908604752 767408417 930453219 473939462 505038477 211007197 723756911 232540916 303028485 555679997 929837095 82738827 357240902 988760940 998363799 227292327 534182291 520734364 791921168 4755674 633566017 337648867 362329445 988757667 999344844 964157920 981983459 312615543 510369766 108318943 444222494 620468606 668822860 346732976 641303713 660277349 978164830 75303177 759690084 557396823 953942714 913360138 919910152 689216083 996746109 457816875 820457024 682040505 740204619 529431349 552107829 5450363 551447913 456723985 873744611 815688676 999333559 940445221 993731711 152783953 864730564 325735544 527733504 410537276 776546438 208804978 926746237 718554870 935754012 196436951 876504819 186349117 946993753 887175787 971206027 354980333 361558072 130681875 769149498 9893938 406544859 464196688 947723073 691522333 701803732 528669898 747747308 969884225 987285956 961684691 970501537 363610727 365504470 586093224 891992901 772588677 862410306 614977151 820876156 710972752 748901362 478424676 607389167 947378316 990832602 69235634 100908196 523975219 562235273 571260606 982332416 567436544 777578012 646177664 796127221 642675287 742537355 946358404 996018219 46785693 781455328 452941389 505676568 253730181 603933075 614508863 943151688 206981200 908848761 262615579 392293728 520185118 952793976 191246503 585479892 443388987 891846370 672824574 792042670 594377140 961216026 866992230 986246345 888079513 893189266 316246371 412337704 22085779 726534722 940899873 988286753 682509322 976392694 816761812 965648661 577487064 880910566 893094595 901836879 789378557 864224829 179421122 875281101 759697750 960040237 187674909 189142304 830337635 919361060 301423098 961430548 353140848 944713948 419783649 742012430 680075972 707333150 967887857 983375081 546733807 829644291 891598797 944953807 144620965 364135378 36197691 422016591 133500462 495110912 537485036 597584089 772479422 885949087 124556586 533666701 78157130 876255955 413968773 813362927 458635522 547624987 158600704 222136634 122426625 838080470 908940497 950706723 460166801 862341051 749819402 772110848 414932992 596559258 342120191 883767027 650256484 958894121 699313454 863790432 741639014 825941343 783295656 802590409 365480574 744348107 689502847 781062889 330058648 447448677 22916879 794861737 764123759 847422037 994914693 999348434 932557018 954290509 642127522 659896365 169238231 722485301 642178209 936211777 470489585 515972816 327769226 629384814 84328865 599617637 891340262 945936376 887256232 978443478 267593533 994890766 426376158 456454999 697884784 996187215 965036512 994970310 138192964 954499404 517644241 801667699 149632010 399074320 835944651 949248646 725974894 768407240 445366440 654976213 124708573 881047180 320090665 419410442 920070995 978107282 950820388 972733181 111450911 782938033 58343527 856955073 478151834 752292326 159704214 538227617 833703373 883210981 50082274 285442452 281386935 498545949 694681681 845648334 142140576 807251686 825556799 847866295 49893724 491335048 975693017 981658818 669668980 881204226 692331525 750027618 500019890 737714542 225946498 589230479 124847699 792815840 479369091 674041784 867935761 872141667 526397902 738744229 918897826 962715193 759222316 788671686 207792884 791109942 356872425 702790186 211976388 311512219 352254479 832412405 231725075 710493262 908716803 991878006 431695017 950742803 871111170 914937754 504906301 821196589 487670085 864983599 465673542 824163615 265022331 503759015 554363370 741927176 750043572 922809066 187846962 402223032 91524631 830138164 714587211 750693217 751740113 952201437 124375705 449451515 501896730 911178473 550815481 889172982 237116545 309221047 428703744 945277242 835815705 957633938 530010974 808861706 45294627 807414338 194970792 775027129 206430416 594721133 923699405 924702683 503912646 536453192 158817684 946490501 490566815 838020456 435273147 798116851 370921951 401894558 858035436 894752733 410536025 834747446 281794767 910537209 995760126 998127041 421242570 763614208 972419070 996068414 232604909 836458144 455995022 847883428 979161283 995061840 475213369 662732407 450664952 902866677 680978265 695811674 604592374 953103302 69729816 392680071 816254691 899606841 754073837 900552070 29262328 432212544 953026270 973902222 284361167 336247679 431045001 723298565 363872520 540781371 665635324 901152408 743872193 849064372 146893422 942013420 808238392 951165048 111524638 504848961 528633790 957948630 526992188 772433687 590987375 766048143 849905443 937033477 331428914 505212140 673901802 971295485 894095894 929100079 433242716 764329896 43722556 905915102 266838349 688952370 269084852 417066151 542595923 814498596 905074801 942244005 623314906 914280866 47104542 326607005 566105073 738814294 738937509 744226203 260339527 987026146 402228011 545076217 136472542 729091971 587208162 695589385 653342755 850280188 309108716 541744677 943996778 946612029 342929779 884888917 901433446 914631002 239023143 565994612 744870677 776254331 834787398 914233514 60291607 529383511 86348727 630200564 762145423 793349607 368614201 420377143 908583640 943939504 998404460 999622715 8290761 990989631 455412079 805432099 676482936 919455533 615892801 855807356 859345823 890121767 152477103 556523982 161645480 862822145 270146692 582489745 438676885 804132322 861989896 899904755 544783680 829939586 218179583 814056343 397831289 704172438 163545907 302842434 778272342 939953106 34136377 224429700 841642617 968273732 238641492 594897666 135248118 548515673 240025096 745637318 139453272 679443217 167036729 436245918 106818705 902546570 166812870 942404548 808908157 942346063 621444165 798488893 267570352 930427413 754657166 850273872 121789689 791678681 467574498 761709454 597042923 883797150 549274955 595045082 371999218 738665017 280890150 416564205 341238203 405192774 735837082 759805254 584556684 726830521 514753420 727893595 665041533 935990664 217908525 967643891 356017527 541229444 507283349 532817592 42177505 263142776 73982420 483876958 474371123 821504115 749572879 873302996 358694365 662122396 150410515 275253938 238015246 503530000 490285759 595737984 992231251 996389225 532228762 651917672 912874805 968115932 227617172 363620331 660610902 943867520 445391959 796755349 806640355 970743084 20371008 773089417 126285207 222571394 447532835 923643281 820326820 931473630 645427570 835950727 692825148 703909065 345839112 641534323 513120824 821841445 713977669 770707028 637671805 980248177 938268543 977026064 424547950 874538536 399778514 408909236 588295662 785020127 103297171 863494123 840429993 844001565 235922792 965313043 155131350 190168997 904893250 963186337 910015839 912577890 683576312 943464239 446632767 508735620 76010689 930642480 428007522 749812715 976563487 989768096 311092526 453024447 680388499 867771632 359494979 799259717 55203013 936226318 306895557 991381393 862153670 883514872 56593369 725089887 687149858 842669857 697092699 916053541 282154686 299280199 491713818 706967594 108734978 531472374 304146685 456732731 634305772 688613681 434189964 709233806 517056972 759695456 404427251 779710822 474940188 963058636 385126776 444149121 172775387 314414806 201093917 912875670 883428870 885407119 680672033 806514968 229149929 601184708 148534947 982962801 854795359 965698300 24615983 192134806 344281824 917958424 573718513 951879163 608155579 687059177 401589979 896644272 179673883 863690264 799390191 872311961 910427580 918883731 335108382 944482669 586373562 993511201 681342793 891817279 549368168 823353955 575300255 743089625 117255039 778312062 700942568 853201397 815655735 940784278 804576329 848105716 297239702 941742025 503602808 924651681 483915515 616809841 895430861 969286784 658577045 665052994 413868551 432356881 815772027 977139715 205886105 732661754 15708831 180573739 639643208 750548964 675405819 711740247 674107226 976459957 548296996 916351084 26147951 911742524 279048016 936690799 192990577 972144730 195029334 433818043 601667679 649819013 307058316 574268622 690315599 938501572 391848546 398971560 517652028 726899284 466752079 733911002 860888648 979908638 884014523 897290455 35459725 388561212 5867925 330905279 719332147 972621216 277313685 739306640 332146077 799928870 795930625 903600882 460922110 479371187 545202659 631788448 419512066 886302964 981367074 991080446 707660952 950366066 676077155 878236478 141117257 906070570 213351356 332722949 38839122 532559801 64604386 562975217 356679114 773052636 929262678 958835060 852092803 988955509 179181224 576594467 494504354 777253433 688691597 898791130 852218306 982539434 569606126 814728278 618320137 930620810 181223059 505803531 887291589 951633587 380621879 551121824 479591574 546821348 659134692 938342081 369842839 759381852 527330951 846346599 250571858 436346133 669941684 860595100 136181196 802423356 714822038 725426458 662325138 811265470 735907302 967455701 545734627 560815543 678956221 801117300 936859569 981674634 798864317 922784405 394296988 856525493 241631990 826519549 702055949 899748051 305364477 674677519 3356663 219221532 697140466 730725314 835435761 999280820 170440367 840192434 776855009 900833067 95641339 227962932 787112215 865805874 640386564 931311724 602693286 607143898 739754043 812600407 309377408 900541148 757965689 861945910 643032985 949597092 463559668 750922479 468377808 478987885 338303941 567619263 537464020 914813908 909471834 915344255 143950297 699521999 409704448 760379693 986820251 987599531 494885065 740200598 250721693 461699796 247098645 444615262 581405975 856029028 206987404 945266895 521214940 742412817 527265483 744655888 852184788 943924395 429866579 642008183 670273932 981767353 91130767 201881727 877530617 999931761 253528381 276275842 356777402 812449656 992050908 998142977 308646762 764733181 657595204 884956836 29784305 474161216 111086186 428089667 197634694 359606502 435551749 864192834 656727603 923106318 725204616 897549375 384805628 796637520 877993300 942927687 751678938 811293440 133353991 555886425 490704694 686442936 484732774 726812902 828785885 967182759 359406155 714586658 359585754 507344444 71015009 177251624 202019179 913872290 105827428 346910584 961501992 983068749 508665191 611302583 340963161 578604590 28817507 149140515 552899144 704228698 619110663 907605044 402728985 446202645 380337018 817835527 542874649 586992101 605982924 830344245 534230465 955761058 218762276 493613197 668825510 937784964 394873282 796980883 880089395 940346715 678625508 899750586 474569190 924478872 539203380 946143681 83307891 951023502 175641872 634600107 575951686 719587507 660290542 811640394 457888991 496817049 166263657 763451302 184346718 632441613 651149562 979840400 96584655 686325904 573558287 920016385 513218854 827930776 964694526 994293063 386277518 972385753 796654195 894072863 78617304 281253282 769732874 820605991 140333970 702573876 538563046 867881458 344338283 391945789 279793039 333103930 540721463 891115834 634673127 802017647 385707021 797848543 451538612 829628246 1173204 471647245 177929849 995818780 768869804 949224827 896521227 898166907 100636258 161120102 860033837 953108940 860566404 997785394 287564620 995747928 406904226 721855183 446940291 758133186 276537480 315414679 763841263 802011143 56266635 291800360 125801042 501329004 978491106 997641241 377830606 780968298 521452974 750509722 657946471 937506196 833546674 871474197 794012216 826874639 268265947 812841252 522509320 576635081 139730180 453802351 520072181 680879287 728315295 949291167 515335008 608907797 560570340 905515596 847524561 853829113 236884710 283856934 680245443 823157222 964294098 997544475 546663550 632433090 204495542 898442229 538896881 757781538 370860504 753270961 488368427 676645498 802510999 927320763 390636935 664003862 178999127 784786192 594891643 894863911 27679206 699546647 421216181 646333410 341827432 950991489 352613169 770551384 524792816 730872147 532700766 695784299 195872761 665701781 883614290 939518367 938661934 988994652 940198958 975802945 11235745 92769491 617303560 621152668 793143168 908148639 956935759 958043405 568195943 630023095 927395653 936533757 472685016 987434972 900389478 955900160 265259765 973327601 217591158 341348453 558946350 958443685 685764728 778700525 910177110 945538372 2554971 916427077 61048565 977869958 577225683 871765538 221547131 643549345 543913229 559556839 307285333 722307076 440793947 634142852 862013440 947955840 114491927 806686235 923120584 965482693 886118170 970065158 854718489 895676664 718387112 910977172 855799691 912121537 298079628 394369786 888189633 993155001 645931666 912739595 76495313 142874537 628241535 947639020 890746288 971461757 682155185 843817332 655656904 690718024 862422894 939907122 685668623 734448797 124921462 350319226 668998165 944773478 948802962 984880245 751489309 902785330 738816410 820921286 941782054 996168628 855591878 987972454 260161465 961351551 865376564 929082374 203033924 490783224 256379468 663469206 608069441 877227364 330864485 819637574 923585829 937523329 883913778 973354358 493648556 667300258 889073684 955406648 155140906 804463217 86943316 222686084 895637798 952551502 220021739 460543827 773457413 965025104 998829037 999607006 219161109 723623985 460328260 846500719 59625555 888894767 94489000 486529096 163691631 955151102 29153941 337857090 45698741 776721031 822579168 858159243 479161111 720119204 993357416 994472995 23362700 677159782 342164950 404579307 894290759 997586613 318247009 518012269 993775274 998284290 662276900 957332374 116039366 146224614 198683286 672728530 184384018 933499053 947761941 971965473 592501601 851379116 923547255 975102935 788026335 832102447 732700799 827199739 705253945 945242305 355868303 429700050 513984126 580176498 114753255 126044346 82207392 345899396 598753855 626902577 888099366 909750873 43009388 788147177 283473440 425608197 826045158 881406113 681724322 793327246 926186426 956961834 991847602 999001898 888234577 987968329 381235038 993562488 33403630 769871052 528731744 977698301 219042678 310905716 804125920 917013549 885156020 938694239 877979601 944924053 861593411 980181596 368801741 930052631 119188497 191525584 953243104 973944493 564303245 661335870 525425639 642794135 665970353 815117147 523434238 705364483 457903199 669797919 986763352 991120569 862102137 884762640 605801215 702247800 892550591 970425452 506994230 957992902 958805057 984672502 334643786 862953181 958880551 972041634 453814566 589009734 33056561 507736643 704439924 859225571 506181299 583913442 963863728 980819485 716241471 956866731 669358390 955022379 787746499 990598391 250180325 359777169 894224521 910031389 140365607 379131885 410396446 964255209 313901529 547230773 259022928 754595954 397268571 428005362 306942477 973571783 93642456 515916520 147650515 235734077 5765298 95614407 642298421 973131501 254138580 707297641 856579123 903644537 7589759 763818014 833971769 986048932 325724180 396779135 775674833 948253484 749226087 966954922 970886047 993743121 767978371 805044392 170068433 525266780 314656587 940999850 597266989 754499869 895278069 903388928 602609599 886744823 634343678 919772292 392102450 834198087 931555737 986641678 604388291 752738662 261882800 847382791 590144457 744533411 943305145 945324484 7482385 323515102 523452776 758915082 632173659 856779799 262741953 422168615 112725155 989088129 694902510 912776778 582940711 774112320 729717929 860787378 856483156 908613942 585468794 985628572 625712797 752176707 562529615 796898366 109681567 543531116 645865059 698338421 187157738 190641338 138569146 532843025 787399790 926503361 294849823 839527780 788259340 846407004 382845322 402914437 862420127 944530402 369372860 483697234 11157276 754100128 337384861 966863049 900035805 949749061 304210996 965867652 94541150 675610170 292730017 867633740 453293259 882914941 962188457 997551531 566924718 873850916 79210185 703248444 646152508 754640292 439299927 855722454 964931191 998998025 88775138 742313247 422844564 477497168 889985943 916148873 478503817 483746125 850013650 994682801 666596093 940421022 264870494 751860373 348469237 429370094 675142879 685982771 922413297 965477351 661610137 924375977 2389571 523240161 271376894 735409364 179822563 939276864 187299213 268505694 249913404 404617329 531176787 812966872 51926066 769662526 710461392 904990986 832964119 999425954 861085912 861730610 585736554 860118149 582414192 799117169 826316298 918844765 891455480 942585659 205075590 322615371 868576805 957037551 507640210 902340739 699274703 964457233 235053167 967746226 287356793 297347311 261846727 685761049 673871396 810322759 191166135 609519944 116716969 982244186 565915220 763443047 571666190 985589076 300443628 405473609 310602169 970877896 154215641 829240015 954534059 993422169 856775185 919106047 21773498 898281913 101905955 928565404 498874788 533704323 498511534 632498307 722919899 865527922 890570730 938147227 801374016 803731503 666056473 783286237 729633913 811602734 130637896 569019235 439951106 774538553 283042915 419184277 528450004 912909659 3582329 232857007 902300707 979287743 941429893 990213549 572288502 640048264 312179764 846002455 418057195 899767697 608177007 646758808 786388807 940488905 454360139 680359745 19244437 808505330 398075939 519203584 651967476 656338051 316482289 766210029 514707793 516010361 910378096 929460618 655108514 739204663 75756946 757930603 596653688 861498452 796735872 972403303 593937864 652326809 873086873 913925848 488054092 586220990 461288080 585595793 217155166 487744290 426419555 603723519 730145513 951453910 438081087 441295241 224562657 240805842 703181352 893066460 965500494 992190285 644661762 664829446 865940528 933860893 70103519 809241032 732196721 750178687 118890972 225731047 941343717 984817359 653270156 988951687 862879546 987526665 410089369 521113504 288954718 756010308 37061532 297568360 14446124 489710914 189409916 939376271 341949012 467947271 36497348 478339979 658600956 681817322 700420556 871027448 119537249 747621933 498187733 618252664 959685395 993893860 351466215 694403189 865447747 899512552 846065311 956646019 256415224 829728936 992114266 993941668 266329762 592233951 82629501 819404320 573418636 923702991 725882860 816742223 717369439 935487999 67747058 364844546 173661274 279393185 448340141 992582801 55734580 564542550 421254833 705980499 714395256 842430639 998830741 999338946 932286094 936027090 602237127 673675518 542730040 890319206 45185008 484440119 40058147 411415180 459754372 710760707 301120089 583235143 929173790 997756809 908893949 954613714 19524902 947466666 121235542 615292307 379763587 725954246 484081890 634554734 887428814 999863717 770725215 980910849 791786572 885684519 572741256 575232029 909756272 957806612 297493621 689448224 468907641 525261855 598593530 634169608 613837974 878332666 48779833 868294104 964418012 995249887 981418493 986300736 279097419 693940808 618926590 918905772 15471974 360269676 909956238 924249041 444961088 988421943 831122386 960411517 549878840 792594842 825330482 854049444 583249496 594107085 737200310 762474686 815793983 845686211 558843057 627566052 976234349 991992210 450809701 738164731 113321602 567029003 965085202 982083679 995239656 995336734 309195886 629042898 810645069 989579202 779891602 994786491 927446771 987091838 707271695 713398164 504853040 732492799 204934005 725640818 235565492 485304124 18800893 65129582 773531443 947718632 748274021 870209113 356289410 614827947 838528404 936821065 331572616 566086567 425526424 607078267 925232983 965923016 231886672 869433952 155745285 837451116 935490207 999299711 512803493 671477951 142789435 153294556 340215481 675721214 349157238 595850733 31019198 857852750 165815538 724653034 675642941 921392204 989429870 997922941 30605186 707339336 436997107 860251165 625895354 632537457 675104476 782673865 159086327 773400958 358946818 480857375 267705889 350588509 804313862 980918381 589499195 873220964 296453791 685530242 796361178 906271272 959595172 984187750 726137610 769530020 861152321 912415581 809291238 906951865 499572003 758207390 130806520 564122234 175454756 979743256 261551418 927956275 763809597 850395468 392977407 641582122 992402070 993818883 690115652 698053764 755745512 861251124 688195814 771610523 513462713 566437786 959641455 979066935 317917862 543102928 192902342 728800490 231433248 785958688 741194735 961414290 285323140 551888137 90041521 349050165 326207966 553543309 177128793 251797285 844337303 914597960 451912009 528481991 461903008 711513242 118888750 760541683 254306097 429192875 322457586 727363916 945631646 992183844 951486288 983917030 115685798 438585256 168363664 933341280 383722207 608778032 999123296 999895080 443740854 697673928 767128732 847371188 75267422 428724833 705404897 908681433 203438494 523939609 685380633 812569203 548169790 894687898 364626813 483624562 850639487 867329729 119568390 224740211 854305590 869080599 211706456 808074149 48065768 812545558 226344503 421025417 182503060 562659359 381082578 857648750 908706488 951532689 883920532 989578445 45231389 766540131 523760288 729854936 525818858 571609023 592960826 820560137 988657557 997507931 264047348 594790728 383092844 652649606 67213735 140910557 161463518 806461726 970662032 986224721 333183570 939064772 60040079 292358519 985971051 988959262 999195598 999741063 361992426 928786013 795961721 855068770 321475014 421613869 435295459 843841194 357197493 400484489 249277747 872344481 546613172 779556361 37670529 950998984 314545295 829554896 910942970 912334261 441403978 946424486 19591523 494002825 324855133 335526778 367730635 483124537 73202874 800902800 23578327 999678457 261324666 805057807 950017480 985773530 527843206 692315116 720266989 895332261 499344456 763987934 698981060 771806943 72888420 914769346 455086850 494384496 335931138 970261433 297370571 490822864 89437595 587352669 939973960 959776344 479547022 804431706 103968629 165828562 359969250 496622456 35247667 772849426 279301152 407511058 442503348 999664496 423987200 538996065 598646411 936130719 727349422 807765629 969226644 989583954 601363298 745405907 215115212 534207864 713401003 996308223 677686970 681092188 900768094 930234788 986998938 995927578 884909361 945924667 7454250 919012462 53896246 675239647 146184077 777477167 717868032 934131265 879938461 889330526 695232818 720784486 98721306 127241603 694745728 904936697 860908395 997900777 977824881 988696121 110550858 286237629 314780080 953244646 888308716 902934287 122408923 828419430 732780433 950870441 29724166 279802089 612898625 806074418 973878241 991430163 617000522 731032584 586516009 778625866 948451895 949747507 649644309 996026292 980458430 986042932 73920529 375755062 863350807 908653269 918996018 986039410 398994223 757356598 323006127 681985147 55555131 609688209 924885866 955601076 434943521 553706888 865833235 998451772 72626593 513128131 278732620 446401558 163921069 490329734 429330810 737618866 229456955 937892839 547464290 838331436 332782034 483847863 19082165 675654076 460748872 839361739 389526173 948451888 651379715 765745504 381055506 491982996 166021813 589603462 375805959 743323472 316204284 804678643 235026244 395453058 353583729 902946899 877131099 950777190 940274689 999819326 232486367 565150332 26873520 938464418 448135373 523953311 993420137 999485872 380196962 577605693 300615629 800559516 203532392 986098893 741300346 922762356 441476630 569033939 947859644 996331560 168854758 666710499 907653013 945100921 379368285 734120190 833527825 939177867 516004485 804523148 654828637 893282069 44341627 588372164 81305847 601667656 741996299 908127445 103779822 242663151 920443905 951119487 32700820 902273436 3655746 777725397 655180876 881571384 800538628 975792648 826569867 870179189 37461359 712978849 670894128 712291071 180810060 950879021 826663272 887666255 762451653 965560603 157685801 659358321 499698239 814694587 818601059 962794213 822007328 937216039 642932383 985969419 327698952 579993172 724799660 777380193 401203997 958005684 411014923 749768538 457047697 998414514 648385505 825548458 420604210 489411339 571905912 579032405 17466148 147130758 28981203 555820325 378590524 424865707 199242058 332359810 943249762 980579651 286033347 453803318 651309381 851600176 420042907 493012001 971886908 995297048 282599948 622322377 544077495 625264387 284696740 613734806 67726797 729217005 858322030 976135381 105007075 543190255 316717003 895517016 540778958 885958712 485533565 601219529 580002250 711359530 462405604 535306839 307996981 391786428 390124968 431251087 390653065 864520873 415545639 505328917 999817753 999986365 690675032 913305276 402519645 465805693 805332599 894664956 375342407 713027020 608127813 843529058 575708292 605094423 487635356 528987165 82220372 721938571 138519035 982126204 160380987 535208334 582596833 704015517 676217822 702669253 773714949 799124314 847854846 975397967 76500745 491037219 935595926 953933812 641660721 775471372 817005860 884616794 219638549 430936187 628624834 992699745 584360922 952601857 334126857 470022068 634926698 785302499 94389351 901062711 80427 584030094 821243719 982241245 291706247 346525233 301175541 395735277 198857048 778971690 252651402 689677974 151133250 490588135 256624736 624229346 862890345 923763341 77912746 512133311 658874104 713554898 18775928 612809485 454029914 872710652 987152696 995566755 867867428 879141305 216402452 290248173 132642876 798222010 257952173 923003068 586151851 596113624 616325183 811724344 219392157 656875579 730325354 862867801 77248817 445925426 722307913 890496474 776410232 837487591 485154305 958964927 67994403 142437607 67339931 749933967 844158757 884637058 969380120 969478757 89843827 172407613 271816373 597034670 925177494 997119220 494901752 835362643 535302719 619543534 55343513 167754660 559678927 855175028 610562117 714077949 538969052 681118092 217192424 504422309 435281774 924469796 905423806 954286857 161085908 768734406 704465934 837056355 284663209 438634072 970153703 981858904 236752239 565006898 908251223 973355004 28189895 67341936 745731250 875570168 387158633 761718485 855657921 910228844 860059726 869509312 114539703 664520239 328777054 735722329 42109272 778323726 780611000 791527644 312768863 559553213 539849579 894279217 747298886 955190969 464155911 677430841 376276340 728057912 166900064 767824094 340921041 866104446 942747020 955272771 817480908 964840413 302835392 915655084 922535223 942146422 794067246 910626782 373485891 910920102 18395474 21059631 287970347 887513695 317361370 700880552 760591180 862149896 679315421 794838284 208716123 874376540 143578271 757473535 697995526 866698208 250665654 706952823 32819351 226127665 809000027 849714410 352569785 746824788 938976087 990089201 813772872 884228885 728149848 854932640 553370040 627891847 413084670 692276402 879706139 978046385 951838517 975636248 913141407 950903795 397061365 936498120 810588936 901119317 105983807 601000055 651955814 863910876 793320222 842391697 662508203 849271930 110821892 932443475 575163672 807346037 461436979 777152289 780303875 790356517 454772068 497623974 550061520 585361104 668962392 990691141 649977368 746009009 754607683 974569901 810762582 918548203 664483400 808144796 48802154 969484015 712767605 752752375 787540230 951653529 527674470 944166089 223885477 621567272 642037620 810709637 214848982 804571824 807922295 833298124 541935752 761964448 397302133 625174707 938912473 993595456 93924073 508038798 296810620 939678940 383010828 685661299 165078704 202783279 21400464 617722603 535029629 907809948 808949388 968447267 231902698 482704571 366078616 874701665 859922647 965317484 502528816 506575719 806283824 842289823 512486553 592098525 563027126 604170836 253155658 563161960 453000542 873275568 955154996 961433466 817549496 969750354 557095850 781500555 583074662 844388519 260543790 413549193 938939471 945208715 62145234 418357775 970785927 978279278 107440085 591715564 96345884 541503367 956472058 975915775 853488663 877874962 470307572 984318740 153408420 655972365 452252330 608616535 751042044 869136786 644562686 985458668 650780433 953208870 149427153 538281389 742415858 755533879 955408389 986945960 179495708 713868986 500692775 835651532 498405600 664548274 964650634 991079562 232922252 579562957 713617436 943789890 373128617 843089993 706657752 844898851 295932625 651740782 702931787 943079236 920059881 968484415 760901514 918510837 732427081 938332522 612301190 704436187 606429488 633433260 776562594 986255550 821612859 842749360 738207121 832842364 93818846 881884876 564771043 657180607 508656310 985940198 163720423 919561707 868800530 997573145 580117672 681540289 218242899 327833446 874417656 924684518 78355441 652602345 809855913 821367992 434918108 905764060 685265349 722754341 465817452 761492898 124161053 335699575 78660806 279036732 27886248 611940184 109140263 712162188 527662906 835708716 10422918 679889485 172334874 642190292 569844235 789891383 437578081 908070481 726307552 792808021 670286660 719444080 316381412 613918286 277503043 832072378 212382926 552850265 539990662 871293316 205543916 555076174 617504905 664182935 760303548 815950111 526323670 743355871 455505410 636080152 864453902 907740735 360950655 661009343 157952985 805415312 622199375 638342108 188349727 819154853 595038535 883637238 973291512 985682350 937783678 981204051 402236950 877931916 37991511 342137512 712995420 981285225 670544645 936813906 411293865 729048622 691909241 896844068 611458827 831228307 78895787 885647784 217008030 742047505 447228807 873222028 84815069 863475696 333511207 947149097 891042600 982051885 18866696 35126484 108050326 120202622 62409553 400716701 686700111 990100150 766608057 778035092 455126771 844333424 875036022 894659305 50761071 298516739 586361935 883419635 181694376 501477618 789263403 852773375 453640416 515276989 567187972 937070785 710902415 958703705 139658438 488908539 497255410 537175145 701394869 888565799 999623685 999769746 369817590 794046227 53158862 167661807 806431278 935756223 243656647 903055773 640080197 916748811 21286144 740668656 75299206 506597834 65781998 922230773 937656541 955464609 134457334 910713827 839186456 875044018 728643374 857674362 355113427 596806228 911262742 953368772 691578856 801611184 689654063 747350593 989079493 993120215 545030265 636902804 772301229 871752577 300124209 603563972 827994911 836317428 129198051 148880668 850551201 882400655 282813894 704473685 877550157 996354932 130184615 802750772 30965267 584252308 112654165 777975385 453934743 933525592 101742435 299274833 271749586 973468317 676843426 802427125 686778383 966218339 980224214 998773766 258627179 987580160 830989760 907079391 627790195 867252900 537767061 859448268 895544415 903447770 516787195 681783429 761578467 896266650 591877134 623268441 242731489 442360177 517434279 635660556 899140080 962833085 278981958 986031037 987744265 990717499 210476442 275727736 937442947 996691980 806115192 923016651 697633117 994568040 917303923 992481025 71958352 102091140 654599541 890505487 370561418 883793939 299939513 674003830 126403387 735021124 192886111 578406492 408278086 834890187 394724804 935161205 686710333 974345602 412681896 609217998 705143674 827452340 359012086 669497282 634250441 945486466 626691433 836315649 146729059 764453075 333787065 642615919 9030173 171618079 873035669 938289495 621169773 714447327 982537739 992012451 998850814 999531531 228576460 240837374 957923191 973224073 688812152 786595781 135327494 465966647 752129955 792627782 406037992 535725707 796781961 948601734 143180442 764591230 499657060 827442491 1863687 646614551 873836555 993350300 558154291 955433403 733285475 754042854 601601165 912794600 213041960 465079678 332520196 875022943 590770840 880222459 974874842 992835381 195425155 285046315 436585328 725714924 349615344 440705932 110519692 318792204 240534788 760340961 744520045 822999108 558170321 863658816 388222247 394304782 280467646 789003211 952211324 979539915 957952704 965277569 739741405 813008793 84517134 495697081 758085221 913077292 122867917 387661501 364117920 479104748 976137743 986549212 302920062 848910373 925202820 990150767 701880160 757302512 127595444 644356831 553984859 583550938 500361273 710363593 250429431 330078394 929232462 969774932 891764670 932767705 631348434 736161615 919238741 944995874 618952283 643081084 359956001 372071646 510913080 693662927 166961572 236158062 396311682 764466897 575109079 673947208 109237633 822834978 484327571 866263483 45155469 353211254 85888754 887163475 884370514 997744698 962312211 980476069 901645475 927071879 490283035 736065085 667711077 705068038 196756145 424545497 989898767 993299469 415879297 682543455 347136018 455968494 275853096 638529427 223785365 317478185 282103961 609769216 448488845 520146695 527096917 737819032 580993236 710536391 182349243 969588398 105975333 918668040 844008885 881896576 723546078 952306852 21529055 395841967 31216932 741773823 426602169 552242322 117704242 837408855 94929991 383828818 896940854 941413549 646248349 704083919 960013673 974468700 133876629 368705537 54022374 105134240 96407349 448157253 516946840 902943435 169991979 722918648 322844869 408096980 358613499 984961788 53607201 955599453 618473944 804056982 564601683 757491332 295123308 488927762 996685514 996963902 607698834 820994398 344048701 450676287 545440140 813911454 740410470 854998490 883305122 928194094 938391246 995048044 234039601 551502172 39453575 635205616 230265521 748740391 173460289 361108014 485691059 855989941 181446642 718734103 737643179 894012720 357721689 728199143 565455390 955073334 814682662 968087528 990375943 998298376 449364974 821124240 237807844 686516191 126116509 877964176 921633602 971440323 990401785 997874401 429806201 595262183 288748026 881102084 958207692 990163414 445979812 720084577 562625296 621446580 12121638 146923223 81400998 524744638 336998674 697264515 223681596 524934994 364251683 694353951 940754303 953551876 555654476 670776038 576490064 665176409 297940643 946949054 379982422 880706860 526125074 950608001 403402046 843266100 324290265 436706884 385346682 794983366 158526725 826374334 703689583 876171372 405900803 695252893 67386189 654477768 619953711 627215117 812294344 952549405 25598189 281727678 9187845 794503513 619450974 775423878 974684991 982282982 437045503 520464375 405001112 820894004 107141799 958164058 433421933 565259757 68809377 757345288 291116095 887502293 380843655 505041060 569928673 693913013 27241005 29657618 171095234 867494197 322256103 673718047 308070605 790233402 472030393 602863200 461647698 977254750 430900404 754667005 506763310 929752531 846135084 964326697 873698155 889571612 379952553 485561974 491632400 970320161 220554301 744142967 858419584 874432355 158906563 476222847 183562802 647962383 867855550 889605029 536801851 680125915 77100868 932106503 837367313 874857785 425384015 954390217 795290901 801631258 511872462 878021511 917984895 959136011 803713853 852180177 988350627 994234549 636245711 646657800 31219697 801732050 625646704 901206068 973455664 987649452 917708736 961895709 799938653 941245329 949508997 954439302 72689809 970567710 2752185 858670663 323998060 352683965 115013675 848004452 693433561 947243410 903017230 968069211 747547071 856400687 462762392 683869694 36709879 547274008 272576733 873841422 193847684 566492764 552045462 937736268 859150544 897190959 846130857 978962513 84831105 189034062 583275487 971225837 48558913 938584108 325212560 797449936 665566870 713646114 795558949 919964062 342261718 436237095 56794532 578061877 77999772 347243534 140137854 998432425 222805076 716526619 229250219 836850983 80255503 162965862 713488840 870862995 111765371 252924674 435665885 540338557 67683519 194898181 856252476 939274415 40637689 764863192 101825444 514855636 529048747 905262115 269852603 676777747 378676657 967315609 840518791 901065149 55359428 710989117 24549164 300290657 534950145 615496743 633555327 721340811 316835197 986768368 681686085 769622571 24533498 792039199 78143677 648533786 821470101 891220439 11384638 696785995 773605971 819091052 762652614 920335084 638833207 652709197 272861427 303912936 2254339 547544007 594004423 901176138 850895876 931000593 317471472 388533368 209536122 289139113 329921742 992534163 120468131 459128219 263169488 783130799 594051971 657819279 510221834 634567266 942720808 952964025 919943288 938421889 317102490 585239678 710352402 914802387 74512776 791381942 687820332 808298476 341172563 632766005 78688702 185948067 983783273 989143182 112228576 590329027 905180987 952104709 257667155 988220452 329889822 693438373 684025050 921416799 248094540 480713974 466662516 597871730 232300086 941975124 736729482 861761268 987894959 998621330 606965726 936972727 26647393 656868802 30923068 602132164 969119213 977018907 335078860 827811879 856476142 960045122 601625076 765503231 619333548 932793258 702156759 980780413 189551763 535647285 332682593 875192485 423989280 931855924 809150148 980334285 176713614 881739218 391817595 931201862 914542052 934267665 932089312 997734320 431696960 551577429 235355615 567955876 511372142 960176751 388113862 724961600 258336464 821150027 367838801 502764926 558934109 585291947 254060473 444859708 738893598 887643541 530936963 863492011 330890376 810021016 581788259 665622736 63992460 385544611 907283458 917708990 653927054 939909566 763155759 957814897 955140420 981475458 346517850 561444956 527942116 960710882 996501514 999300767 420647192 873553717 845917935 887849054 457505546 908179108 148910996 717140338 848812913 869947335 561360825 942946000 226098368 298698366 66713927 783530836 774747989 829418994 386628282 786553800 475602993 660629874 724689665 740103140 280158146 336019337 470456837 613215572 853383409 940227930 22577979 733081403 581145139 846466043 986257494 994546544 930963418 988842066 835333818 988687325 567111563 598906402 537825453 995257102 547036145 999257458 651503660 911501742 861772920 970333816 457300938 992283090 380758939 725061027 389659537 893160078 881950568 888646637 732920690 910005468 188590443 644607753 865573595 877384475 844360018 882968429 332081773 957735787 957077657 973988422 471198784 629552157 751465569 976137460 12393438 283386096 816797498 885836839 850066447 871211379 590860674 820223444 394900393 962505762 331423896 621238518 341243468 461331354 542585674 882600060 492583198 642623970 700026770 990287449 812625002 813928233 649655861 933035937 102534061 663644314 490430724 780988691 583372284 820993172 156046220 338133692 73438121 178830666 710389284 803091252 164978645 407133979 238233847 816357333 947979722 976448585 374805288 985435892 779612751 970606275 744650832 864667502 589647965 922620427 616853405 977095665 496395987 867996798 115790431 708219441 72035554 478289116 260424744 903796770 693522675 704136420 236974854 772408692 290928709 977376661 594767514 906634384 669912959 744986607 199593564 212789206 696542839 836431832 51133246 656954509 805330883 939107482 466975238 875244172 655390567 734002339 49469899 499951082 75257455 786287954 569911396 963117922 860632897 872011805 420382748 920462194 228051964 981385335 977068851 979147342 505276010 587898302 345217723 361429956 361516975 873665427 212801358 746467277 918422658 999013555 509025679 619277723 699331347 774165494 421589534 605416128 52516217 710495605 395292082 604023089 893065582 918757014 321762891 369230790 411036533 848723482 323228378 788400387 665728884 702331619 505478705 734681351 693136425 973489929 295821 675736079 115218678 453222285 944952374 962394943 891116035 978011000 986741725 996543817 476592436 809610203 327760178 764851436 263436813 860685640 182322498 500361125 922774909 942888270 260546408 810498296 275841673 687299599 44858738 731334137 326765844 900617705 175709831 984018356 863765554 900546485 240673961 519740723 431116724 891303095 94467405 834367100 257079901 898037396 753096597 788244810 379180771 857213359 643940912 986979859 408957601 633013135 790828920 943264424 268481140 553577891 924474740 957774517 836328963 865571978 568224054 590866459 226092937 384238273 850570664 988244136 511284215 598991192 946570893 959837166 856256857 987965683 591058973 739785031 268660623 593792761 757174323 820564667 506386314 729637026 652031108 784132240 187498579 237723307 972942351 982367671 37997060 156648969 717410228 884544106 251383290 800956625 273416808 701404160 552532923 955066774 294116268 947941915 100470691 681559504 432392054 652089701 878652328 936792998 888887923 962870249 135063127 581428289 73060584 578942370 80059683 99636455 763758583 984838023 19477997 851458130 882531042 894705204 944727529 954589776 881835835 965490086 503891837 884226173 646301927 879284877 935494328 978271663 625383893 845351408 408377967 486629603 368367485 608120905 502798844 885829123 873257152 961312278 52985818 815267076 314822323 813952652 856970240 987360906 434468574 985550209 421646248 497454784 827061475 924508236 974646012 998572422 318927615 994016981 874138107 908485355 268306686 491916216 622625466 842903264 99020857 795281347 293112326 804478434 531150004 797176635 14238179 234772979 457019956 574733480 609247639 649627800 881179089 928032870 764772230 792178435 934069085 959986315 499676193 834355383 829044857 882097884 741757576 821114417 200619884 892157852 881901640 923769056 468250416 704011282 86115605 460583167 338994632 740359004 230095177 870284728 490123064 769693501 229100392 318841169 171853361 322135097 592373271 679780524 459441798 845789521 173728819 523200227 800666502 972169788 4151848 70828335 321787407 369763895 383609041 874594148 459539403 822899424 452149054 592259661 983869048 986823586 269666029 567211255 48333822 112344911 303456314 367500955 902275496 914718099 845427591 869420102 487508228 849429308 148112021 722137440 671323989 740960341 21333444 552479671 371311279 851064956 295239730 791448144 995100922 996131315 38184580 502894479 498365268 804389310 927207504 986188940 863994426 963696852 684629296 956797813 894811514 930631375 172402110 749992524 568885507 877093566 500853955 530022629 857565676 996182429 445964910 583388139 34726989 572042744 580815250 951322862 6525034 119707724 303319924 375340535 14847138 93774320 364797726 749846310 490017537 904915124 87747893 148192861 968841649 978562795 440787311 876267535 410301539 964954343 59349448 385215364 907253967 998883164 469687442 961731698 630444937 689986551 59440332 739110627 418716131 425212826 963123956 975009172 582809259 866259778 745506017 916345083 854731829 926508894 626542603 677453700 895510247 947454183 840837148 917283025 840708452 995636075 364084592 549873911 84443705 300593897 708270302 723418444 940801269 957791797 290371773 886660479 78733325 472604830 210318408 334511363 427256522 973653938 82521506 906108124 243736489 475515126 680069272 728766930 862250921 871260556 576608273 865486697 201703691 975205721 752003654 788583212 132878563 954177543 219200202 296235404 703954362 989816535 478291067 770439910 21218993 265510249 570273930 960734327 812992494 910857031 438594947 938182835 114173953 774268674 335868075 765267205 590339186 655092822 242876 808320777 462199159 737946367 447980933 769860393 594883846 701011279 736703438 944444755 151883769 928182929 821519066 925317736 703130109 977155446 357557996 553349707 633923955 897868866 828365090 920923494 288659071 947523102 911724266 999117773 639411791 739706910 142040671 830856479 874546201 986771669 180872022 684234684 399966169 882380698 596819825 987051461 338282637 391723116 344040689 901457763 243395266 949167118 44089527 714959525 400590186 864408152 641991039 784020246 770647838 806543760 327768392 980618158 676502664 805459983 985044223 996206329 866763555 987195002 141515907 754483551 487530333 616823833 263459678 904962873 575930014 713444224 55048924 682279734 516971554 637679253 815966413 949591013 990515223 997268623 122453296 692592182 879892012 923133973 762877481 877858823 222100666 815887300 156694371 556548082 415533789 901927492 288118207 563016926 987055365 997273697 842338323 961797481 473874537 817988354 448483541 449797924 275779766 554063418 656248071 999630786 747980803 888476829 955246607 998202661 114080776 487496524 794041633 890199449 839026797 854327816 62190367 969689870 541462517 958636122 348284710 384267486 657111071 852362494 264462815 773143644 685641806 880127175 658474125 677314090 34849615 806382216 588875946 600131681 696669107 803820441 174953777 715433968 199072521 291455045 541274677 709015491 510002165 781779655 637350865 893936179 361787250 748180224 562747461 796586896 933260222 984535705 131010608 670169366 265470829 951150547 196499003 997035956 705332374 893547185 461681926 916125174 383854756 522491272 258599576 843306733 223414701 875337141 759242936 887925276 116413880 640642661 458575077 760210141 787093577 980657399 882666777 958290953 638169362 799237534 598814959 733885024 798995144 877503944 474970413 904774374 602611445 688296266 897787321 902807773 443275393 896326541 366788783 593990342 276550321 823953802 279392672 907471615 328116332 492115367 474971256 688105005 745409092 904571370 146992350 863034939 913412654 975097400 725851995 782083605 748207327 892720632 97487566 614599556 818043635 820562325 631776271 883402123 606358010 948687599 313337716 679248528 831935043 880806498 186359929 193514715 107884462 394192144 424342199 532572720 742519690 756424426 823691906 858869920 526244876 625496849 712095607 772715075 931333203 994000505 679937815 766421000 438451054 709728863 38322266 726948830 986847379 995805819 713547624 889611347 850132004 976129219 660361430 734658218 583042271 620541920 172116799 444485573 607928872 993479844 233928176 728324320 243147423 888919902 771666295 864350790 993026682 995782943 707234257 963796706 609751483 685639895 264179327 976615473 754099866 881560495 575381890 618523691 782336025 815544934 749622459 942731840 954335416 975587439 690311325 927614178 416578590 438531758 749417099 884526722 451323617 538262296 603354292 621423107 168551731 937735447 846293439 862057102 516176753 975932687 289728360 563082034 195471324 610537956 788091092 851910565 465340578 873030706 685213901 714361504 600636474 966966966 249755614 966780978 18990079 597897985 374543369 512134595 312812508 467626427 675543141 707607374 960958238 990372126 203404677 430767567 50507798 760276096 271815868 623092664 914966352 924265806 767424677 802922596 646915707 811522796 265973903 816334647 113195290 418423011 890694189 973271811 909174495 976153528 339866598 926574546 137696558 709099308 517780541 997282004 496683515 540214892 71737686 543679795 262355253 609035255 775671887 948024759 223195995 324021158 350218174 370449354 641793202 846712880 141095334 575495402 504819502 810164634 392562087 780509382 67847880 961789709 422961818 875129753 389752849 480952574 812210731 834372325 617494378 916344444 706191154 851687792 416352787 803970225 701184198 974060149 220927563 608317712 400779027 431728191 635695308 701505559 791240963 993233183 838058544 959022423 600340071 892929906 830521171 845799950 396807137 566716392 225102637 534208582 775765518 780518629 579368726 866079349 967326645 994160470 544935975 985120207 848319460 992966533 313200887 635446546 505394086 519144150 349944990 356387572 527279847 876306642 260397513 790356300 921381623 945988731 677219340 978013058 987870449 988582517 912432548 992868057 665392418 878068597 975233952 977300430 278211254 334778245 628229895 797954337 253806094 464283003 846285072 921314617 843348709 919498600 140405593 854095259 409565079 828132020 928127632 977103282 377874796 939805173 946400535 990853598 275748404 743861826 459732317 828738361 75089164 483500603 239670776 467979714 1127493 241554859 541908403 743465813 975484138 998723615 944395333 972156720 279931251 441449482 679238641 703359007 388908540 530711853 943435396 954184541 224944819 708343936 739851441 919654059 199210629 249165736 729039881 914175987 134064547 220272699 309897573 547173188 824700762 877093400 147195650 395234217 712832425 765498120 734000172 975472409 788282575 828629396 127156390 228761512 640373489 893480841 794673521 942938137 901087658 953814153 58360840 358441343 351765926 388041571 857930450 982687339 895219106 941090666 627848952 856680480 758700332 881988127 447118686 517893020 380762361 752816053 611540152 822991769 339277915 964506738 15035423 938007474 474115590 589317863 634825611 811407298 449263359 900519939 624983084 803322733 28840207 730389323 581214562 620113879 7984471 313040488 90292085 415488903 24230115 408001796 482749694 562741196 173903040 998406371 687377492 975175894 723989118 884622328 777099898 881930268 248870799 430531915 651042923 785825349 348027079 576793040 313828197 393431199 754769166 769417534 163824760 640072865 346160873 886083974 344119886 604952914 779463139 912614602 262405463 654356584 711185927 982684666 256989229 346791370 823738548 924478331 152453264 621171987 527499268 636357086 508096160 704820333 857443305 930860951 461211539 612545685 872771263 989597518 837675661 998604904 743207662 882920995 950805787 963692500 599506615 635592990 721507428 946355150 637645667 969252368 147978664 603953721 787535117 839903272 158369151 214551796 855864380 901529510 521288054 761636288 973467367 997636542 96948208 311266201 875994120 880684360 884511692 895618815 247075354 897453014 972334565 984070152 261289420 384059557 522703698 637069367 85201019 634898229 626281845 825137131 410076069 933311783 424668055 658262782 246820019 634583584 965976444 982771256 582750978 733543020 630910084 764229110 514465033 702974653 47638579 784368742 688421818 808783158 36578435 660197773 918241259 970838409 49286488 894455755 708307128 976465203 810551801 994597485 251885664 604655834 23785302 957808567 935252789 989367679 144816028 789008315 493696019 632836792 471719726 951120800 732124824 780777310 429304352 892648210 175940317 862415725 463103192 712781915 361992075 387233482 730412778 945223353 492071583 906984842 898564320 966146214 437753359 576058123 787476179 996449828 551208188 928952512 828029399 906071468 191343505 968405204 361674146 867048568 344706249 622619959 331339723 548470166 526144198 612274455 539799855 999142072 119851671 322466202 332726799 670839174 888698325 930527095 942456818 980667217 633019019 877127377 738795629 895539748 932373967 966089085 737376232 808067353 878163724 901011967 449833059 728387517 634083509 683116245 786879562 850705721 190638556 924004946 17595629 274478308 875541383 961529278 383469018 549099682 401602545 896215189 581082566 711857972 988573740 999273998 628727355 735785741 394662085 742679434 213162774 517276895 299085753 714761212 531619192 924825934 109912534 771491608 294897175 453068425 411718787 658746800 200431299 734098123 509951927 855759577 883878899 918418813 465156023 737256267 213724450 706184473 211662025 222957445 70587179 203653142 831834402 840798222 798995743 951190790 19132601 655987544 830802445 961539904 218977474 679803374 314304827 670952149 237094768 949182380 129476831 527823753 139622312 427136932 615006438 670370474 292013697 585932897 617631946 827308961 805430969 978620179 247580211 420515561 644989036 872504012 615172585 861049646 735580660 987009652 641412318 686842717 140932100 465239050 141711807 593502220 969647837 990559894 272024149 485348777 342911682 821093518 186205900 663377913 421514662 949249403 350169342 765249014 586086400 881780787 687264177 847562769 372650587 975033379 283792994 921464206 871969001 977446830 357818919 677224471 39107049 765501837 510010245 835615581 346757925 872451606 133292724 415571348 219555828 245339594 859752749 886528019 65700870 968323633 967258839 987230881 482689199 890517694 726267032 760363179 468529861 747297827 189810617 896164341 127545459 532417067 828710182 882127455 783168772 962589725 274892291 744061050 37360621 595121565 353978282 794950529 869496926 890446771 930500492 963949890 772953934 948203862 8466128 498622479 461072304 645382849 422290965 436869488 76077726 650546670 356823954 733696421 104443282 497407866 293060044 345135366 366984819 373071056 582972817 945286899 117539423 782100541 555341441 690625637 622854890 703697453 578094369 872099695 557803707 663951569 156052061 672696051 458044115 758843135 66437940 883168332 452791830 539720406 443668544 865171541 949296865 996018566 173470646 987705949 539946703 796509339 521503721 882822662 506570626 885464816 390023455 832644660 290214365 473040718 668714842 703193513 784638093 940667598 484609579 974643462 586829826 842092166 768348673 989678164 808174797 971009311 728214905 747942319 619410412 638980090 499348251 911166177 252038156 510297257 235937227 552152947 491356661 636176873 341099473 719826841 889261457 967141122 916949875 922969014 451106716 634062649 180250017 845915631 850823233 875692617 432660773 643127817 499961921 810132116 702359335 831353614 461430650 745971090 765572694 906668443 309932931 612486843 404312481 693318770 709492092 773248809 817490409 899822621 127805118 788924480 647888869 658518812 868912606 885834200 873249914 983399709 971303957 973575305 211571222 885594324 896873485 993799299 367730491 368090955 973636497 992434889 159481369 339960940 303207776 587986070 397675560 506440754 41577764 383782681 746689325 837442063 763427538 956197704 324215835 471912259 552504656 679229569 391372821 500484864 410461748 706789412 441360842 699720571 127008551 403755386 457685779 826376088 45299387 161731026 225968327 644093926 482938055 854100527 842542793 974484176 968437968 979972748 572035475 768118100 350350396 759610586 812779559 846910436 966560339 974759985 493283549 648556033 494883136 709880331 486668036 982393295 967249031 995096211 770994713 851791308 594200176 770877441 816970073 908189627 61761527 761178001 118799152 910513850 444749826 620866104 509100896 828126684 544029700 735776863 412745859 853062661 307106437 759427838 702123283 731013271 56899206 169720392 897499227 936252360 798432436 860714137 825154466 889826800 66224251 677703969 255932833 417985618 804369728 810707614 3976825 28851626 668893882 893400661 200515032 313902679 519027949 951525280 863340331 863918490 241267811 583974414 993889283 995199913 743771526 992954842 416547045 613437734 873156346 960630337 152807333 524658109 458122563 970352996 217165506 572746133 924624002 941158215 826761939 998180126 875295131 881222051 543784425 596298824 585670754 854028737 960104242 965763913 454712527 710890998 117867355 703398808 184440641 914621091 229176885 817232345 354834000 660618626 59137408 764060513 324264375 628177109 151015322 205151668 746623703 804962610 45424312 176393155 365254559 706802967 71869844 479781467 461969775 703735519 632032153 963628787 682210493 781856491 45645129 122482467 250810876 418221589 507148225 889385428 298372717 910674677 896663557 971573605 101955014 163074270 656762759 665607058 657865218 747025628 952952718 974958248 868625864 926024421 512927876 535144705 366898667 493426649 667472452 732335235 951352075 968003381 364033496 505016695 405799892 460512867 486975251 772799986 167541191 605311607 303014490 830408847 569101740 713784010 466285415 915026984 658169386 778640384 703262202 786348870 649173703 925137104 915972767 959675437 87068457 930040554 898717745 989444777 588183515 658005968 243103376 954447746 332315000 855233287 252098279 482345918 851443323 870180060 892925560 996182697 646926616 952449103 313891383 626865964 757224809 795874204 18463845 720253325 271718435 346786156 928802853 985029327 46485814 171120804 731346714 795836357 719447216 775206554 845141458 917359271 938487540 947337938 592359047 797517055 117255685 839701089 479338653 670588141 190672310 722602084 768404795 997301630 550422673 711687808 349141200 901763952 802791759 922692137 980940014 994373803 391517741 993018962 115423843 693918546 618099208 863145459 529289005 614355995 632832585 727490620 460409793 866157539 364362260 523964629 797779553 929441594 397311317 809859726 735006593 810995861 748843656 833031339 900333885 930235393 957704774 965955506 65678653 473599680 367937589 949174494 482783887 702967934 287684868 908350339 632214947 822721661 659727408 730109014 820158719 935325822 610477114 794069462 478400214 558280018 967672935 988324204 156014585 855584678 36052111 675844013 909585073 976969486 487418550 622110189 702158451 778256727 792454522 914920855 121333279 295534205 901316167 956189692 511847646 528332458 433247004 548694160 39543867 461574260 982998316 983242986 90682171 521310543 272089206 278613139 85668876 453556159 360036817 449194753 349236658 675626342 988913105 993868631 975510064 995469084 1315580 778991484 75205765 933380870 579538304 847345199 75363662 390815518 843475234 890364214 115757766 884027353 819895251 851001787 69176682 880424976 248965765 364864916 369427688 512733202 998351318 998575467 947669660 993297818 838395770 926371188 71354498 814207332 183385280 776600449 592585577 974258785 315345460 867370459 825948888 938182515 286316176 568498025 859579833 868435074 682851196 756626399 426227558 479472485 664060104 813393011 373485269 915598581 451396149 710315589 784054300 787844760 79932280 174488320 81217783 250516574 253866264 497257017 498432620 812641737 945696232 974609371 428937470 920627520 667172349 770605758 510667192 672634078 688274598 998858575 772482067 962002695 856057396 863524830 535746838 572839678 997771111 998823773 700827988 749697878 313740692 920377322 450836388 848888989 324894889 646638414 674036773 722947840 586795227 757021671 862638339 984670261 250490154 698801891 242849780 984548192 456776766 972210076 34407274 133713517 199925502 678826795 702876738 721771457 244798003 279023932 618165894 987511476 782054266 957156605 445561409 608104448 70046417 896095532 945480630 991821274 215397333 363296244 205037547 590042176 748758190 755390141 689282383 880649502 975997714 981750917 13123435 513018730 329826123 863700294 137393352 182554013 158281514 501755566 675377502 775974541 994587764 999470254 110833219 204692230 991384637 999073805 732073413 877069383 490791593 924038015 319663004 533437122 630505657 915160654 673062600 987769423 346127146 806081707 202601967 412316990 6907728 388233087 34669305 241671275 104189626 384234355 680599570 806820141 471658451 615843147 222611570 306759513 694431111 775731365 871559812 944481457 639389915 755873365 38041695 366169134 735624052 813510053 934998945 958686721 924645628 967104146 382446888 823949608 546860694 614292313 206537314 682490793 408501857 793050648 183296579 452135880 567666114 679774940 74906476 727572953 77251025 284517672 666189888 822840297 113923672 314172988 457776879 573794457 785861258 874286944 480379387 879758103 472033601 813191192 274995716 448654122 46410214 656323911 459899378 573961493 279944607 696152731 200770019 881664495 312681463 627662425 213522212 576083948 96638791 289240119 591492950 807708576 315723051 479114802 666277214 840440990 328110154 469652203 788470243 860814039 328615647 665173937 317131026 685349060 704510782 718091325 934401861 941024453 133463017 997254227 749919685 904473501 284267814 797553679 88581043 638165334 287785093 859319504 582181117 845184851 981843042 984383468 341269832 567913972 60240316 278542437 231472177 310179829 186270334 383487646 617044392 698672244 102367211 985303438 796697181 929448080 662324429 683694351 319151084 447630271 17237456 178243291 133165514 259387018 633578780 770588457 734808674 937911883 293718515 354738289 601354632 779107016 163245106 755575941 97049575 112174652 528423549 949453223 506302521 794549197 501444048 818760388 378341451 865427435 108395992 502443179 469771524 672220361 489433812 613939817 902424961 903403102 137416571 394927636 117092628 848852272 593879686 651755305 856177263 881812059 14863301 201670925 712983985 868078452 273915370 307736706 772812908 836208051 385710439 525380465 820950112 921379733 927471581 971632631 421470607 730398834 613196195 659211983 670223081 726837058 374937387 964571262 555346325 659339283 303960859 655701582 297423457 862034777 49911438 974068101 18921348 41217058 129184155 141541836 213555355 809538911 878456711 951968039 427699525 564094349 910668391 956298246 844972250 915986786 186033233 555949093 268773558 938018884 901419280 988148858 386776186 547757303 906956578 952557537 564471359 978176267 479822104 676314398 416723036 770701553 363929279 544087258 452649217 691971687 664426900 970268428 832746435 949923458 650378463 932137946 903627452 983560222 820459463 969114661 674027768 706859267 606584724 871093829 970374935 988502732 96297916 133407161 418832691 761893176 556990725 828779231 553978379 836706396 869433742 981770158 226121221 233247933 520646744 978008437 792783114 968754806 255958431 985488596 480169554 973589257 738889173 929362284 717206219 943351801 195601511 296093404 934034736 971851104 499987468 618694148 784110655 978569535 715727299 824858626 749655654 858772297 86090723 429171728 255178193 776520288 799343549 944604160 743620852 919973659 69418382 449828049 421621210 452034882 696380300 915104144 732894598 966381088 561398598 878365228 432311545 464653075 908126509 961476080 173871478 264316326 780715319 935606086 794992967 945221916 223041498 837845403 740056680 950996718 622157263 751630134 76909657 535040133 209428100 322567299 29409062 309314216 208314083 267019568 829739513 843405220 50885254 991797437 158516036 895824578 128725178 981902606 178650432 854014567 568752300 691126406 206660946 462314335 573408179 746641968 84446203 550249071 876644229 935040761 168864350 815834827 57734277 340156725 948295817 965254793 584834931 705293413 811929278 988905625 710179468 839658625 428041872 852124100 420768660 949580604 884394764 919031640 610537011 904102394 887361143 959020542 444951214 464357023 612523803 614267732 536679972 670048710 150750320 236084163 173455317 766127862 829341045 966795444 823300764 837468790 282011579 666516994 206968677 625450111 655564554 822335475 316364533 837303315 374412819 953859457 645348882 912747987 262823606 962103869 725835152 770338135 338658537 538343075 672390853 843734894 20400155 506902949 796588953 816096483 539944458 831032257 640737391 918701265 833194204 886731514 459153701 564108475 958475879 959705833 993899358 998546808 91741908 784243609 657843754 940590295 688787326 768461039 888409152 934397274 268061072 907275097 461027348 483403885 551468403 873675781 726407226 755570244 572095004 899532644 83124730 492003703 593147819 594788943 308243007 377222072 332815434 420593132 129004181 275759161 231565248 817572791 205366153 249325791 356522493 733966165 69629324 208645486 759520310 831025120 892951596 899587915 781814705 888204753 222145074 440561484 984412001 985435687 478437507 904835530 972567733 985860804 496311961 769939318 810268063 811979885 374668517 760477506 149767810 562344997 877454338 968730593 620177065 921509429 661874118 989387517 630795347 930957180 100597520 183104352 332001025 777298520 653969093 790833303 298372414 323569594 987628197 988430003 210414007 630223826 869018951 913208905 35831563 155218755 419808051 811451651 875614174 891189203 834463853 893761906 599027778 890617267 935424822 980764484 144796599 661805342 808602981 892027009 281157533 814937678 754682882 755630863 295364325 684858275 900252407 966324121 414498894 542623180 699226893 810978362 321876440 334907258 595476943 949154323 737518429 868173613 291494618 539269381 335150200 347321947 697629929 788234118 354488984 470051156 609289685 683104160 178554037 513735504 426190066 577421913 659300824 987908133 123068997 976635569 888660450 976749383 371499532 860651086 60525151 61128927 190810101 712281018 4571452 748140509 373739570 991704059 760245646 862511838 317317050 524231011 736000221 939224277 140298248 931381162 374369709 915064977 17675878 278788736 4063513 485419993 554214660 788440658 557634876 875460572 382810117 461369843 213973350 771258580 570793442 934436531 524331716 934484181 907975905 934162494 65485999 640573358 290242369 454691723 212094037 668681915 433514412 686502898 771158571 871676020 176729588 765875984 174692176 554000449 13842081 849596136 855011729 863842057 821880325 965578785 456556269 691386907 176266527 587018238 207722020 533130372 478297705 661204391 438761081 566808579 855085779 918565609 274151147 800190720 878236845 996746354 539075594 949745487 650636279 667946085 217900398 847509960 577518089 787633806 134109667 813995994 631622175 991004399 501042080 895073031 374381402 585866086 948457904 964660516 671123539 883601949 541962899 663098965 396838792 871243469 314428426 830383934 731672954 854200530 357564868 713361245 990729114 997647747 486070293 494412087 858245122 973486552 53994329 807524634 637166309 881083180 391986263 930595116 767464039 986304974 647052678 994910179 487752034 964067389 673479676 815188127 469442960 912907957 739713440 861424431 850995641 888554867 868378355 993776666 938734923 997495619 723059818 740812595 578235289 792479799 353715206 539972367 912408758 920343462 92962526 829661896 720201432 786069322 732085849 784959346 690147184 833736292 486778242 801282693 667938647 842333692 520813501 924947806 474843971 792009567 394879795 610313574 412108539 543961141 949813409 999607141 584824226 766073769 800026744 803032071 238762972 686710909 776109215 832975002 160392264 582263206 213258031 551832203 80852523 991115074 280122724 625213543 930123180 965820230 883330553 924211808 370018013 852115785 372414496 452526763 781380074 830593746 849964144 883132884 267366901 336938260 674544127 988726801 740843048 875776618 399214939 954767247 751771595 869652629 851364986 889933560 996052972 998108528 371574535 874143687 359661156 917463168 736953792 881760287 702121695 742344896 665935064 947383821 444759360 624141769 73444413 274708993 84646035 660836482 262774868 995661749 135039173 746412276 113036116 471488139 649383313 835759198 584698232 877207797 470678694 508177681 869561469 871969984 664859179 735264574 76993764 325366923 200724461 703107967 650168783 705322850 286913794 576464777 147866207 860877959 203448266 366713028 415458295 768728280 865190388 943903431 111900438 554572045 697446943 817393189 750623447 936645917 978344951 988781341 836710221 955819234 459124287 543951924 925915013 951951323 405729720 687439162 62698099 190313218 275590320 733796200 891392336 924049816 824295699 872648685 235871764 505740521 540816792 693114515 291881741 987918257 587496878 826534507 406302101 710667673 784794662 984720858 95016017 814260366 859550377 972447089 340721949 954061053 373787172 846054991 514407692 946697503 186801407 532866037 658200975 670403538 237187737 529112058 905066966 927804244 278181867 844052600 551007542 997068246 620278396 983648303 543571420 947982556 7175072 87372644 648853470 795769394 657333132 965826863 158800820 796559227 894082898 918248177 916172446 956469685 686216871 762566151 63878868 680827426 355314836 706841919 412872556 766592058 109581650 811483361 735778450 830736050 200740685 232683025 897006170 986200483 854711560 925534687 740170040 864034991 830364348 994214310 885274531 961061728 991942475 994299933 971440129 981247745 661034996 730402750 499243747 913409769 442143508 855064426 385980121 643756533 637420027 736418315 675280602 768489588 920975684 944993976 778068095 918627025 897028720 920864310 864283293 973913424 797421429 888074821 91950746 853268533 44279850 133341778 835712064 843033573 329943112 740678140 177085044 591245550 59364705 893897995 791666698 878939896 298501679 436909524 65510672 417670897 913339733 931326208 459339856 640109443 633402473 802097556 464236721 752841544 251464468 274623008 277329440 737017963 105130597 446575926 303583088 782821504 328172520 370578750 804713726 893303392 544444188 644895965 282941002 719807944 12128997 699089403 793418764 920912407 252191443 877719326 699274203 870901214 687703605 946400707 62516332 502222659 124343118 573256524 71833375 736241690 921421993 967036446 769169284 792776284 601347390 788130109 723747613 869357236 615531117 754225250 413490041 796309941 945842158 981127846 19773412 116398131 483560213 831780498 997367401 999139668 662470425 962592583 289669505 697514600 321749376 369094370 34107420 173555332 673378683 935122260 929323682 960513280 649878557 963592466 815843521 996840702 974258336 984811398 829705334 921810903 547217035 672278996 223478487 930676731 161610754 395512310 23457032 288831847 458860937 827856436 655773928 800088883 263012989 889272246 943071998 957327046 701047220 740819627 796418089 865438078 209470985 376079613 468877667 698617114 546737812 695033207 578681986 977048243 236877133 943434785 409395571 603655451 960488705 985648491 438701555 611832615 396253100 932099600 958749752 985010855 675808256 876068499 914460501 934149216 211830502 723361955 60049828 332581762 433529798 592559663 54649943 973039379 228529909 479458726 494876314 854366059 350042617 536368661 428864602 899686343 904619040 918593389 112494808 601095588 232215786 458062417 976600073 997505418 170941216 237242434 219270883 877698164 912859625 993470760 807762307 957350669 196207420 328386703 551848146 583170657 337336668 458060203 946544235 989647633 179875326 434401065 429711956 886098967 88404170 124390164 174758750 319853719 198749611 250536026 263614278 355515457 193883953 887842034 92746717 768635004 737826703 892578448 116916543 641395875 953221490 991110777 870885625 910634508 241751016 572192929 159100225 168063397 427350527 972167438 79514803 545536659 316865576 551836037 963188471 969221953 310001517 988216387 667288032 817849788 868653904 893321678 344073583 891445705 380351952 490127352 826168668 879742757 317597028 724411178 983682800 988195417 542223404 880219955 452481292 958755674 237590322 452906201 650660728 986804708 367698683 955364271 868893592 980748871 596733779 876111597 150850736 322793159 172638643 826253391 565870727 579239848 675566582 820785341 378634976 931355873 701798631 960318999 454113326 526153362 705537936 938056037 294275461 311194284 128944699 588302286 306051663 381628981 490591732 848292787 902464433 984980994 42205082 99818692 903682398 909557988 84902267 403432243 264193150 938431961 811170143 901049692 292102847 406039434 492662396 754270139 598536558 908257406 529643256 710243991 95185966 610845275 151582186 272766736 550671794 948528894 151808388 727717379 848091689 896925159 988053764 995834269 803112179 927782049 930150226 979577737 401311519 633061509 606120159 750767988 274281347 433674860 699158961 896810699 577929624 698066202 807538338 828720166 615583240 921690717 724086756 914520706 416672996 618600577 752969837 753441928 483299512 571208315 183496652 773217788 210814708 781306397 969942470 990930591 88844318 449975212 852280196 890613784 286653781 521964442 364820475 672053911 535501498 846880881 578399230 954842767 722755584 959232355 188555793 395660645 400029918 726329056 611214332 952845255 115265766 977146530 798477408 967312753 584015247 700954222 760135444 939435516 995351363 997536930 447622639 848714661 182799064 805452074 553056065 881685298 484146198 564597961 656990410 784233839 164743810 770408209 63187147 442956948 808925151 992351449 835677103 991708287 391004866 960902465 827200289 894201742 148210065 155836646 442458239 508245292 465642679 545447979 193652057 547631290 128325099 461742537 675712890 824232289 571962458 659821537 984588249 990266583 175984512 317257760 946132539 963636055 941218168 947385543 485568580 875500190 87488564 481769883 893808024 899526486 314459224 575887586 1673877 914591369 991377061 995458416 672250734 942253031 502017563 554596059 729463812 991209895 110348398 609814002 841599803 992885797 994146597 997339842 11028603 172709533 982525238 983879146 406651799 594294588 615291648 711538711 51269299 532065645 418486171 676130997 205897306 545199977 354214441 743697341 164926245 312554983 562168427 864923306 798628647 859592932 445620741 730152574 224326674 481483968 448173506 877771611 480341823 523110260 308530686 326810167 350094993 860357006 698617471 700787047 350298650 468229963 972193683 998639875 768648629 870518383 796883093 949732059 805854383 978537955 867250615 966035931 817219830 894675453 771958726 944614319 181753472 431853659 871448585 932436834 625294288 853403920 315534977 846480147 718036159 839691256 683473175 870987179 757627203 833205479 914031371 982601290 68720900 186224140 578300413 864443426 550193094 698832995 942622347 946401535 166481612 495891270 92227275 488014913 445342195 529283895 858117985 889531430 461540881 518056043 656956616 718221966 827907751 930396545 673460626 978436229 131493469 618505635 480239436 888874732 38912917 928623464 484611569 756785185 115053221 218513952 774623103 871780126 223931347 866279565 538060844 651187642 957586024 985223341 213757632 524339740 675605126 932860006 67132537 911950044 853823848 954647584 33273280 334500159 310195250 368680900 52191041 105336265 918486315 920310102 217696603 742644091 94284055 491066314 297426484 537826462 569274932 893347008 438429575 756342592 12136049 298237891 817227037 904002986 383494696 804525767 854823150 992042380 3450148 918571759 755854612 772116936 712085340 984296631 701095286 923155539 166131861 836222627 287959642 425241566 735702229 882053399 367960271 495503204 125609733 185840710 399511311 583772086 799548816 901805036 589414999 966824344 448475047 746147551 403622263 775568695 100708363 462981238 878573732 909056667 252618141 926675124 967286115 985342984 357863554 783798211 232291893 653538164 281705610 704274553 585486635 939554383 311020891 522269753 392285838 645186776 624048729 794049219 135257556 176967056 901021654 956495807 709317784 852709971 94253381 526141731 994077870 997325484 691208390 961393575 993656724 999521231 936923364 990525973 803192579 998079095 859746736 968262550 679920126 821256355 95954 126178774 429341443 830453131 12271635 63940759 929100157 966540408 755907875 777328068 877180996 944238572 541084074 800926599 98350524 495484705 596448232 599114350 190354516 814524927 313351055 468737052 994757147 998234164 630240055 803091174 264689261 905752624 304790913 382378986 841733900 995878652 866969758 978238888 486927809 740869793 215556939 940124385 576591853 666919617 794356875 908200703 948590828 968858956 420572875 894147001 171434978 560807760 876410197 940247981 683935978 864602589 32102655 76012785 895245851 947602504 703045229 716732171 130350858 589640691 145720552 659595424 832354566 886813243 52216242 624090438 940612586 947055398 297356077 762953263 869513268 879283411 641641361 737722461 429868996 611216556 97493015 597631074 9963720 747648290 113686327 937065444 810013293 975966028 38065347 829639152 852839091 870556451 507020665 793523269 502387163 800812418 61507403 444811726 684348820 951703401 899469134 936985239 345420054 400036111 747816049 762790031 879811496 960998105 79243768 441829149 995535076 995794558 780296300 984615059 73131666 498492976 846006679 935759775 857203499 919278768 981596058 995481411 314404044 938532672 538646359 682821124 392446172 702438593 115155427 622348434 901136322 928308072 294865381 984109050 797458260 892901267 428748731 816128922 913268327 984654493 537694863 947526123 662656940 673839342 457561871 464189492 549113015 630439433 647386478 838048874 484855963 610995593 932297004 965186993 357510773 946109357 663720057 941007360 916211292 990403049 311327696 669492303 308668866 334812993 268251426 511559071 375380270 982739942 627581980 806901433 681535593 793353388 30430592 442580550 762023352 786593076 332413641 460069166 974845512 998280186 909864701 910367625 431529880 873608824 210243861 506003021 331552435 958260536 557376770 910487300 222791285 857774215 793260174 967385187 254378159 455500544 588794339 990464062 367110091 658264929 50638768 701375473 729985057 852733929 102083788 854926812 760672392 918910049 610760182 722144751 185178838 602915959 844094161 930161375 489117302 963313311 22981816 823811385 276275808 484548163 6251676 891965385 954548220 962257085 902543604 989520107 630220409 653017615 91257321 914509007 842351710 974714796 864675898 900961350 60796842 324239782 617684183 825209845 946819391 996632841 501290044 529309570 780092783 835024030 676849277 893455775 951303442 963822921 310075841 633920591 439273701 496710494 904039598 931740636 981137649 997851435 914688062 999631344 31406792 323218167 730554654 760617256 605355722 921734255 181512578 611567909 899987918 968445726 184737895 303201697 506748919 637114376 682753021 970225803 639771833 782124986 193138705 905730535 693144402 880535628 642149335 937980675 231047598 363508018 352896152 879534874 685495283 961846072 266150661 574950714 668476716 674272116 156222986 959214468 42834144 480649860 237602192 651339665 37550895 983436164 239278643 929435856 518375953 933000473 439274374 645923296 668286745 723375385 127951599 572932640 572190413 691567340 920983003 936840852 74682308 228159308 640685597 946718097 978525599 986282895 487329617 589837335 246303992 882496592 413217081 818289588 978140143 983438754 268125328 323970837 225614884 450947698 157431542 888329200 556642527 620365039 75477977 338928160 799626812 848581332 260880186 672997592 577583121 826630509 914591894 963122899 958878938 971264365 558194084 926596697 723472364 979763835 851716672 869094484 945603750 952314963 410803336 694608094 604793902 935723660 431187804 555273907 556032367 795849288 657543763 707214358 828768570 957362347 145625195 340388638 357180655 731517652 336930675 930284250 259826318 795551980 80363264 797050250 875619383 937231730 387706744 906771175 874033036 959900589 437032437 441255505 35501027 198185342 692794408 976229456 771951364 910768665 564388225 704470681 821827360 980612261 415671115 761253820 86449602 510708253 842464514 946309888 366734578 390230256 55727585 187951117 201131370 377231756 54533094 428465726 134016124 595598334 108136119 202965109 398751185 853278998 793951762 959087184 649231479 863274693 841770997 944941747 980849357 991535263 327300150 613353254 921470338 999823023 775448461 998691316 97522284 912400375 264602785 513759543 713457688 813512063 424809656 566902908 933746395 984385145 397454523 895573551 116342985 381048000 927164307 944191669 817988177 907866369 563832978 597676792 96236336 337092020 713517430 778520091 352645800 910989854 684610994 941682742 891992297 969596958 95449794 610367181 192696034 440206744 365348570 632701427 725939295 908140775 702106928 831441354 267774382 897290048 358744834 505786239 935832537 987253598 478640863 880609071 510365658 892667600 655632952 773314002 769753210 976558360 728394879 989752448 958699380 984113090 140163193 189602537 482480325 567176630 977629838 982615765 623945248 776952128 649112951 943752829 945438810 999328602 471012513 978620946 664283704 905201400 823149663 824900700 258621102 567886943 658728561 947545629 862572325 966782491 387877425 603845420 519781238 607054142 244213387 670963565 114734529 593531161 693651621 857040522 806776906 975374780 484092764 618587939 769501850 884587431 419172386 583484558 993018650 995959544 4871859 388654761 680641273 811332733 74257021 722840881 603465038 674666182 796013446 825091992 563916470 687418476 661173015 700002682 392016516 771813957 388717328 577603784 800798062 911741863 657021631 913979008 592438198 925113764 700912750 859314250 320508635 778215525 842897133 946777696 68639883 323334519 293049004 755879796 502552274 640182213 843471313 959794336 563641034 942040442 108141095 911287915 406712381 948432859 164533233 204187988 125165237 279039951 796333577 882177386 156465346 562387108 204772230 732444233 727194779 988184293 133329252 321187531 908060261 918376493 651739335 710707886 833516031 913153040 61594323 678274230 384988869 533121990 316438321 927837523 754356618 949410941 571485406 852188117 714282361 786031568 772634459 857493439 263577584 906758934 92104410 945254026 595651929 645682751 668948624 924249362 97187518 725500533 250625271 898781095 218049282 716766722 40155047 286064858 837119865 922857474 772761809 941280156 980544476 992793692 914671348 928417051 514418016 550065137 273589774 940243516 252383611 284286301 112144943 237892948 858323807 914399262 508232648 772247529 679642782 818311166 977537180 985351659 946513956 996435071 467420958 835036328 520044555 552699513 368210397 896606578 763749054 923234523 810567042 814064933 815512100 870548743 945364105 994969214 397474170 524012026 885535536 934856796 514532513 907043934 823100221 974644783 65968462 959691453 897141867 941277863 785293204 962400487 516040376 580480473 967097178 981787851 96661951 339878108 755337014 977361897 952522348 966602599 216998050 888085920 601055695 757674622 768193067 977506274 912193657 928792817 56394652 90344453 865302849 978896293 660457170 720713351 162654814 385247060 298860500 479287022 313032495 910694090 147736009 722141941 652083265 925596506 885914637 950841420 71863055 556986168 161307973 886155102 186181309 930899583 677304032 968155434 68698867 997749742 226867300 444073710 765528456 938162307 318953342 769449166 762775632 854176766 899886624 940566075 473946737 843519595 300781820 532848374 16911030 759541484 385711940 823024759 479661429 875194051 358829782 536141826 265815966 457691583 112478223 192639508 726719608 802751938 171897267 501815092 303137282 944692766 22031582 475673896 110767919 394604659 582952310 962486932 78163538 948625493 32964178 595035945 533512769 550942519 212233652 256844828 867404856 966819116 337612299 658287209 712223318 805815918 996143376 996338403 110754513 718824785 4168670 624473406 830224654 902334085 946278649 959048049 68040437 202171391 655424855 999410148 782972929 837135387 200527717 450299782 677802481 854387905 193103019 928421682 3346014 167130715 66149124 723144086 176661854 883905767 484372025 623691753 508968397 701602423 977491029 983004764 712131291 917049548 361423302 587518613 625347805 860317704 323953976 715056443 943232344 965790108 135878144 162279779 269595257 408537201 948547154 971616595 901040141 996973906 671112738 858916938 408313237 679456243 129399366 726471703 547329708 979095191 553670361 907139702 903256245 908102439 855185080 989284572 294100161 909199726 711778578 789628405 942283977 988220377 849605234 893062222 252947127 387811310 294587360 322123234 394573195 698730909 4009088 418873448 380609737 838446552 843635542 916912824 850495699 937980920 157534026 279416289 835752076 901836767 126587643 662631496 512369858 603266901 851277572 898853408 724203061 918967040 495969420 819421437 235391833 472779875 835123194 880631166 469213190 684931569 709679890 739638288 735310602 882016115 886715657 947751007 337721975 917278055 66478694 810877904 346237235 413176526 982097687 982146205 480913484 730185500 279392113 514132913 288217184 943626534 215748495 985834082 471462788 831675360 557792980 786086688 812802457 863116223 855396543 969188550 66372522 331966178 807221423 850105736 337038181 776201606 285907880 585367746 545158786 699340721 108201154 801079323 564723133 606592100 366127196 660443868 908903687 962703190 709655403 817051474 97160338 782333033 429112911 549746490 451252094 507055403 794214317 850479137 170489264 664608741 819625393 861263850 765610390 926082010 934703658 968580122 974215886 983177346 46637222 136692725 496103648 555395760 166031124 413153986 85732310 908712261 316738555 409567287 426283305 952359316 125871525 712778360 922175583 942843971 669463124 867540045 62031443 812223607 215357595 373955814 892262373 897458115 474693231 803323296 456858327 919151485 561540079 599963802 20428670 298351736 921567793 923291857 901298456 969186583 705817672 795172149 865427368 910037815 547843678 937681362 836549772 876500299 881847427 931773379 355158964 608663789 815249131 864162720 138382214 256981856 550471428 591237246 259754434 391106787 156827801 945316347 963993972 967970556 734520453 892421643 332952929 918802518 490842881 538717445 593024209 757246184 980565298 999003790 522595240 623299758 980944659 984647006 882500465 933436920 241523756 529028388 393825311 872539663 404477394 488266337 891762336 974912080 369242263 471481286 412352246 612139711 301262528 362192738 898811054 918158422 162515687 911136236 476360958 523004403 870042667 883185212 986110920 998272558 412482330 862731373 808350255 826723099 382633888 913013092 5417911 165057533 713779393 961749030 503769228 619724371 647252463 805709369 778262622 782585818 141966375 562267231 628491039 660027499 648608984 748600616 423509688 932853284 492887193 693744099 579674951 775617276 632607618 666445336 247602825 569418647 995087825 997335650 256786553 318473955 270850591 693587914 597300050 686623535 724695708 869158098 333348725 463182686 53425071 889183571 232599037 714742003 832061747 989816842 706274841 849138190 414061110 609727904 373240089 494827327 811829123 864810512 148180950 962046216 935882012 963867806 98597300 765976629 371251855 479986613 257159762 400261322 469920808 803797395 911464134 931871364 34050283 570553870 766554666 843250228 199387498 378929937 434512989 776819608 83255113 820529431 588769581 888629109 857146322 967236318 778633193 889594356 938484316 969250954 719239806 967784021 39090508 648239576 170349969 797001141 287230844 630903940 693636220 697268948 932196263 932668135 376169694 980938610 835635450 848899672 571291099 663091706 828155009 950313330 393928278 721618433 377601417 431571756 55764254 166976534 535944163 650080183 282856691 841481563 417776374 938895490 971902460 999435764 941403559 996076024 808569375 955348292 88982315 862618275 249598787 545913601 185719163 406391693 577407063 638098463 4689672 284737292 656285058 780626487 381102013 625403034 136749356 507433862 71604324 274036557 588497813 937517691 362415082 423002910 711060871 837101681 763652492 778296759 206599571 382891037 517100614 707441347 816835698 943710340 298749951 326359438 749902205 807503256 503929744 977673184 802637176 960940313 932963444 969707674 641714738 899659949 564925178 811266534 878373449 892992105 994575660 997885707 924208441 929750993 770223959 963024848 641286622 895496758 91664458 589116899 121441478 386758422 762109312 949503106 713873404 802179203 357736140 368600824 432599045 462868084 558827108 900916142 849289154 995940494 337815853 903180542 18037041 727377182 792374039 965929622 91674519 242909855 214417838 765698814 416269162 801725390 806954977 902175641 23930244 896000907 636521670 831950254 845871697 861134788 239033331 806604643 456077302 812180748 323924947 692083120 168209097 578831406 275003871 757304798 45171821 704350622 405864416 897346826 490016206 644187873 995590267 999877794 994189830 997274624 195488532 229902130 195829143 914979012 452162791 696159827 490697245 895722726 639513170 956962900 989950426 998649723 485992712 901275807 566518145 891593275 633277540 679009928 353433760 549263435 971660955 978467167 707618816 869582873 994068873 999748557 63216102 811461055 447829140 874453814 520779424 917016108 580801108 701292555 698676879 792722605 596828251 976925827 951713015 985789978 677328388 909996824 478354285 960664112 327253396 671094414 843492507 913865219 396199081 910284457 444866038 587411024 778929382 988581835 620379449 935796101 477007389 837369094 524036589 717586990 409643889 702703831 165127266 195217521 93516266 315923473 158710019 593485676 661110517 748511564 789305467 992140643 582176771 991570598 939661042 973687706 377687235 906968947 361171281 932773929 610177393 645774152 132681207 762711803 24293947 706939388 109802735 516195727 841514795 864234575 674959170 895272399 31869634 251006563 838236191 979042263 906898105 990791268 609352492 804246083 328929664 731379677 787224641 889406547 674239419 887793801 320100000 876675571 206108499 278803442 746941728 855763559 886627309 965742306 468415420 701689347 856162632 978143320 449275266 541276911 53085888 500126205 445408385 957714898 470877635 737995719 716205883 860668666 199820527 786934034 950390053 983526742 825879000 859102570 667544168 949208800 104718721 922019756 883060938 944133771 955387217 993686175 656554835 887115508 22927030 277159671 533302943 691329103 378332990 483821236 859545515 949207582 379755216 494471985 480661233 932656750 103843795 899997864 367449818 823857269 367681081 520177770 326201679 495719227 609349223 819595712 922832679 976191939 145924181 410459046 926409813 963447069 339056130 622605732 40301824 100834778 320928469 419488753 849865427 885395414 993397344 996861692 277221682 631813910 321317685 791311226 515690253 634950977 670737177 826329390 265021382 400491078 71127562 582882842 244564221 680831065 969288320 977860966 637258677 855257185 733623722 852489280 900289410 967009242 314985567 421582545 444629944 822874088 831824152 903049461 35889797 482427965 985405990 992953907 981691276 982685592 717267416 760195423 154021148 872632401 642970825 894641820 565707617 988630114 610174505 611437412 887784279 974086284 267816054 327188535 537405868 839599281 744867608 957715300 172852681 951111225 641064726 707619286 649034809 858014553 414320319 838101626 311984429 397463243 797709749 950997067 685933327 771924724 576374384 828820518 21885819 953532468 460945588 803734089 547445223 718626597 301732483 461733615 48300981 225424700 812732976 981324249 893185293 919683729 822170028 988620751 569390340 878354783 443362695 836956387 77072883 77136037 31373482 650132678 931673320 969525110 49478315 91044588 196519913 351244243 615900161 876862508 222442326 327049263 412669077 773234008 528476000 623149539 708911667 709593049 442596022 851666146 915339287 953747316 115379686 504088798 225462886 988305831 208082323 678559707 745820346 822545440 819318347 878126098 850183499 906657199 868585582 918466816 74971550 499273609 136604832 240440051 179585356 334567533 63321112 178064945 322685885 610383175 265283979 313763707 466592459 562648878 848445842 887070807 160386039 826932742 76296954 100299712 825503759 903035072 610905302 906101201 923671567 987569321 152012660 962318001 144234263 303794498 58779297 335921018 797490490 979126499 103286596 843953116 110501169 564351650 1271320 273213312 204247011 991790455 260191990 776203721 659825742 730582333 644680766 960616709 366955586 857923252 135951792 911463206 865221249 903571459 151927053 762639705 783504127 818507439 794755509 973994962 680004561 769016149 128693889 819467481 384052078 543829480 125257911 310770149 503150699 930887928 595926941 685100463 428014311 669338697 713013551 885296004 973138878 978110438 526018397 731131714 225449755 426083102 14418912 136005762 872600153 966561544 863090837 864714041 382096949 526070252 168597557 818276653 166475076 697820412 523759080 858746705 736944973 933450298 240102244 678260115 432711968 920356566 875569927 888344954 943340541 970633468 923198229 951161129 709884752 786587087 241227933 498902927 962470771 981612660 68002818 218067387 520575557 956440762 467271462 785962108 993398048 994971178 16931172 268251200 353783511 899196926 838905067 933591922 753808893 997451245 587267787 882705550 942875105 973446065 803866230 962611358 129675146 640676990 150430569 778260880 576469696 613064709 401766177 961511374 601440358 739172105 264044909 597705138 145170710 544803254 103830786 457344966 769987322 936183743 334822716 534383272 135775193 971184891 662274997 958736777 946245556 998397281 227102622 427838349 863945299 909892852 527430661 631630076 321197643 901651444 207529890 310990236 320270926 426802158 558648729 762685866 720395106 998640235 184604413 903900593 733907447 790563934 72583553 104575094 370973111 565721083 367303961 975354067 770898160 991887553 142889508 876992907 295956284 868635964 688150784 718247643 80447307 928119772 7821830 844573514 82787996 456911433 999796205 999973184 621575000 879352231 437330736 828938124 461293542 780854079 449606585 734463493 53326841 659246835 786592768 978056033 151616706 566574578 30036311 927689733 590790231 882710315 84157044 349442415 972928203 977505373 695138257 852275964 140145518 200598699 193881442 857996712 216097848 851391044 809690967 926150855 396529904 961376432 526163203 648223850 18992156 513258698 585622292 975080931 53030109 490878722 681358822 745395837 180839389 737005395 563904833 904901092 559095669 728644614 772502628 939717188 228875772 359915407 370717170 824200524 108490784 347895955 900866631 930350809 372048322 914503442 748286055 781289322 553592730 613641647 951914247 994517160 737806220 986061307 699199962 750034012 52482602 802625725 772600405 928843618 435591394 735227603 48028223 979919958 446540624 556097331 487379 883569928 577798570 615756362 227509959 524129180 516244588 886949739 732671434 844468655 964015199 988603232 690328185 907228890 139625302 994215382 738161471 864919394 203170239 796450416 694795046 960944566 675010024 858259503 919974013 970500387 414104153 738322475 923066364 976701491 972200087 996109069 58050749 909839836 164736404 259895369 995399621 998770405 817958166 933762941 24491507 581001206 488359575 622863377 988565219 999698123 48504570 441117443 244335430 908989061 416215011 910689404 962867844 975830236 822531932 983961350 857019005 948330099 92380109 995421491 55610887 95534467 933970874 945589180 688064297 950644482 658851337 760553912 315521581 727539208 33832399 718276542 213974068 466253086 874482095 938438101 658200695 964882082 898228930 966459118 566149456 963249866 713211797 783738975 78936434 174048864 931571546 935721230 981227058 996660881 249992161 414394124 737595976 833154526 704738941 804130005 48362672 717052362 488045098 839340025 165568496 501632337 3210344 459730026 758992063 773248705 410536853 718719674 127647055 867160087 411019659 963031181 999109823 999760233 323166395 737803207 571800077 922672362 122016259 131384655 394219950 966371275 980855507 998287937 863792557 986833404 323762556 757107755 491257460 670606139 957387351 990956331 667510739 690562959 825749928 843097643 894616591 981439789 669895965 767808635 326618934 739973265 391224192 681875527 656615752 763389186 433976265 625482587 730459560 886313741 404332855 894312655 95926692 750394965 661376314 694481687 444292944 461222580 904296016 909862660 927937956 988940766 447824095 513128327 694343200 911092986 693950318 916348668 965994848 967709996 27423998 374004699 384900111 669827806 235247463 740222956 853585021 932367491 122734918 448301588 434525784 439327605 829632660 995491466 655863820 704246974 819795405 906300106 541301686 914145170 604797050 896294938 24730100 791611200 920803842 980104838 471188043 594068540 856371011 994849273 721803333 874566945 777004074 821535398 454700252 731280108 852912758 992717127 638266842 930007753 641933532 666747606 692380623 859169331 836255540 837458744 223959000 647278676 289760776 679315170 689552644 867641651 855441579 876358262 650352624 823241273 450872952 623541249 485422879 488071686 658436155 887985933 611036170 749586574 45263823 354134112 115951755 897474622 865646902 891114469 508470922 514663339 406402129 509748076 974823065 988459511 123570551 508938252 331895601 699763715 889981329 915185755 366741586 552591723 834652748 975607724 604918616 861438195 853919675 907894675 776433694 979937903 449028359 918411756 17625040 824717601 491293930 878547405 231129262 715006816 448438337 869546034 790668823 922859611 821481550 904937880 245340435 532663646 295924684 493497912 859146178 984045758 590067624 612202443 739622350 764872550 671481243 676261977 883639953 952340781 978278752 997180437 775716075 819086731 859689048 980281323 298648765 850007082 48633936 631243027 217373995 743376717 128616646 855837886 516361410 914186901 582093404 618055333 801073993 805882377 584987831 844233008 565559426 724161370 631560169 839690333 238847643 878117218 915438196 982983175 797603342 901529903 488766551 709613449 75141663 96551374 435315970 753200612 170398172 297367479 264013954 412042033 564207041 690781087 50427736 938171679 920791483 977758923 11525085 14145385 808145230 878737011 859100501 917447860 413479047 709311917 205639446 437572549 840969504 843090608 426305844 994285345 976528236 981314510 669574685 871322563 646598120 983900204 14901271 976730394 186089791 299207500 705511369 992271087 582472659 604034200 390709590 918332776 476362933 780703560 955881472 981636728 586706301 906877750 470567816 945916056 116176196 307302768 209910079 254910029 860688225 877539346 721542158 821891076 868420944 951531777 264355818 380693315 66002067 183405643 430903614 832974592 508216756 705870816 865542975 887011904 342806225 508505524 955964422 973996813 366337934 765005342 743957358 933709355 556210689 929299093 209684298 511688382 479197717 801492650 757721050 807789785 283228598 980852892 262010524 640225220 213500810 510235851 129644746 726547554 412396279 929645032 894738113 945668799 192864179 378446347 223798315 886526551 161052065 857461111 976843461 984667347 645465017 963287806 695985038 882119896 499081278 737391275 700577717 903778482 745360573 996603545 417442427 690745227 129921666 497265390 428216675 669473662 886691464 947100004 163275509 687840405 751099197 900665552 587887868 821055577 848973675 980981236 707832541 886649425 684892695 943976836 50972372 534963761 762494684 939393480 322687644 823160445 445204083 892850288 64763226 847184781 875736809 884468804 243181207 711847513 910845735 984858418 222366461 668768765 296259777 334694901 57555106 823802114 4313489 894750694 574266487 579876256 404536487 444419583 120810884 131590229 97055814 163516202 549126223 623758294 24347429 105392626 963103421 976382108 759020955 880745881 765314821 948405846 600811042 814319266 699303740 905685785 833842052 874659178 512239723 792762207 460371537 492183897 102290385 882588617 918934212 974476494 850555577 871460255 878391946 914105854 859435124 993030704 321915928 859950309 283086818 442988369 404865921 761063491 776498943 777660847 407687713 640241628 146326467 174259558 391208448 689788174 252783100 691987213 442443540 953191135 81398628 732745333 623537327 791561434 7816144 174634913 335641994 896495519 609695412 708855650 29655113 679677308 828675105 879838266 108414228 738480759 98619207 393308367 627593975 809626150 362485693 458515820 276438588 886944304 748978576 964422192 353613087 456903717 3161693 390512723 269635133 410016438 787138165 955769704 340994288 449818237 232137271 782197382 925469736 928122382 644602503 824898328 826507542 927381268 850383322 894587734 12084323 37197668 819797457 832944560 666808917 746111684 812693150 947591294 160939901 265678285 126961533 887294423 659443497 978442493 438941572 683473032 543314956 714350409 731355286 956369443 264303195 624660772 371748821 894723427 724510671 753854509 51774594 491966151 600358090 846861299 396687703 657488054 151129691 776526092 160729645 733872881 133955597 302661079 669695024 809455305 804415797 959820695 476717647 824856095 261262046 755772168 532807178 866958998 173592332 260260930 5344334 624942532 18366839 759471696 33534803 161948100 996648854 996998617 374408856 481351535 348253817 589593972 51503937 451169620 484480312 504199865 30424775 575519754 556291011 727745225 130718193 861585011 785198003 809820737 3726668 873453636 21621023 946919052 715813990 785269754 974865553 996215828 451694800 591319778 709507773 977676244 289589758 980323572 245287842 984679824 635138064 908565333 68725934 259688522 647295384 659564537 701023284 748799012 206592224 415954156 475929983 609868193 801108736 892385485 126722535 253244137 249230620 566572895 939450443 969149357 293459958 378865057 452699057 618235812 634360387 979355469 605137498 830984470 880639516 932913832 716666527 970797320 556483183 646230024 390447512 707686444 439920849 779032929 501418756 989408777 453533602 563149863 515627005 571119085 972377945 977857655 77790112 598474278 937639033 998777473 590238232 894091454 716181363 788159064 270858984 881024418 41655546 272429718 12406662 556525809 547292543 795611723 931640052 957615110 493933735 891329923 699735806 838338101 115863033 466016815 843093490 990527872 585625824 856234888 3019767 42565836 271127427 637383624 757631232 951531424 138139850 138851772 336223298 893729921 624690707 832307508 374109738 674786710 9107676 653061717 858214947 905624778 809052720 898669094 194901762 436836819 169688512 980513242 496269519 842301210 410566282 917002484 463816947 517965040 791726345 794560934 867746302 932124640 644834694 827352198 515037099 732416743 153585742 905535306 551253084 973569076 273576184 795822378 868334536 974246381 650547227 722018657 593904898 787089458 98119978 351135584 617167096 634827111 767575618 895828356 245331354 303577807 686007951 858756125 208397609 898915169 175498065 977617199 587782348 641093229 450358221 971174873 711778592 911858964 354571658 745832089 249687842 973629138 510119773 674347667 753070087 997559920 290927664 975217364 267150491 385111218 147034431 347839210 241650609 991720974 430619216 975300386 356986941 376317024 84629640 744430777 611378725 871787224 720625415 870935026 547958938 734565817 35838922 222449501 709033556 748042515 353905064 824375298 761267019 875757496 853419808 941358452 990970754 998693408 725322362 998061247 527541197 559489270 612141816 746857112 324223949 951761028 661327888 955357237 746370779 898115086 344620236 560983121 486299730 633739366 163049949 195657815 682277825 951520147 404008967 484869818 517025967 832686946 169231361 388375875 468539263 572531742 999952555 999960656 991078628 998143608 48682263 728822810 654388112 805793070 247113291 259732261 456206524 546276101 734924961 947606689 526441686 903283246 266149885 574075302 505215972 530800627 549574615 601811000 514930660 527796728 923011799 928213038 893974543 989893099 148196226 213252211 633027074 995135848 70800093 578650119 162743666 388295334 293249857 295269604 595789304 900647177 781710821 975455309 895890140 917597690 766030587 771734639 928922074 972254020 800408303 995181768 65861307 938008652 990440693 994591234 938623305 943045568 570002751 617864430 223239798 634531395 500212504 911236270 185571684 451055522 69000187 192499282 803489157 870191192 800940409 888622490 89403823 765767074 454637285 743455323 5673264 808641832 325539030 960173450 38101865 555976296 350434466 511926621 836882506 955974791 713708348 919297332 73416505 405920965 198937131 199715345 604942853 782983070 106380719 634012334 483943108 616947516 373585667 895317031 290989053 989933155 746064607 946605582 209879422 744860355 567088710 639465782 503391502 993372900 517919361 972236576 348155973 846980068 290504959 392193543 893818096 999895763 806093634 820266055 496982679 915604621 861744421 893956957 342487053 907295723 626352091 685377042 770341107 903663501 792267189 886048148 4757098 442167062 810454757 896148712 140123773 392981096 78951364 541790864 334730146 902021097 294781980 972256812 529928554 787720171 703356883 860676359 975113495 977908198 756202293 871641597 58714739 877319296 8192040 125732865 823030138 952394039 201356584 999310097 449543681 673498266 984895166 986552936 6692444 750788660 520747946 636326941 91908116 787543243 10102612 710899331 734060921 980637077 479005624 916789366 571810314 814139572 350643437 451947071 944010300 969977042 722301399 961682908 382780444 781117708 69219154 202746563 681684966 741276688 524898191 697322915 753359481 986847747 899858703 931345005 930410228 937915000 37969991 581623006 352195671 819700511 194976755 247966091 737743114 807716616 771862059 943316668 365304895 773823109 111628202 149577774 622802507 951748380 447004828 516412005 214257366 957152251 116248487 232067276 730538932 992598169 695630075 836506447 304865149 337982228 876302959 952387287 347583197 685526424 219400163 281192009 348876718 375351230 13582371 961098151 48633262 588366092 148025480 170292887 290261481 771402175 667916654 790493856 531461719 580726829 426981439 534558063 308497462 925119251 814640816 874018615 504661785 599126666 405378292 507805092 686008268 831483119 824479996 985163756 69597907 752029334 659562579 781567287 768458109 898708455 997744546 999719221 46822945 541513709 938254061 992318472 105997317 170818979 315926442 423162976 631938941 735477889 41794069 851483368 310987627 624459400 151957317 708027135 934597684 961385902 712610621 781832636 900481504 993741720 889185429 950606568 834505893 894172166 462246447 604841551 303488156 891947842 518257827 891527522 648596783 651847508 478587907 904196589 87814980 747551990 700555771 749205245 967044125 977878857 614547382 937705706 601752524 763428579 159227821 740377341 153453564 262899908 344925077 514604965 14977011 935754073 296986678 448281537 614953486 628593684 722804784 870769956 553679053 734540803 998728742 999959014 976642049 998176204 981448632 997292298 792835972 922886889 179690772 827722617 143159868 631802319 881862707 890314732 118714333 686962085 271538732 708751610 675009944 821143218 277188186 946133714 167830207 399967910 397763543 828988836 619421642 702023921 782554984 950398237 152055769 491531121 851510944 975743460 835607007 886257912 87002619 179090113 770300380 783499610 881800035 906335380 428996897 723754729 143081653 948839941 418076201 625295137 823915494 923897909 454326486 475646706 73377014 979414469 182784986 401445789 510805636 851044735 65935892 517416248 831910360 916818272 934876495 941462874 506742108 867793058 519587901 749723679 162074461 923855555 731124032 796934731 587791688 907141137 838131766 855081891 732224323 819740051 21801166 897692326 856310846 948550163 87893621 277071625 219280734 376404603 323221998 462200033 171314914 349755335 435241096 994442683 417713274 518939212 623290136 968146325 322463109 619574493 335387745 380786948 380215626 864611844 488645768 805293484 299949305 383411649 210551175 816996286 363732767 373776884 366364043 722964156 107336284 337217983 789111110 972866202 68386551 726338588 184209364 725880543 445841355 630347365 864487063 953044488 932266032 992891172 311193447 874287775 949618894 987875998 254553765 822598280 915870891 916413698 404508352 718297986 22899159 247145548 229416868 611139235 317679974 676016569 934883852 980371965 183773955 957387320 265766079 763592562 686949386 810251975 66104535 442228250 33249850 488670890 522847009 602383531 838169324 926880886 508007612 612389194 172806720 685439217 392148771 832721842 398111990 912155222 987811905 995055539 305753802 452681413 283188465 659534579 118549659 302376543 210452548 454474606 776083869 973596638 777568454 931967176 520737445 793237452 674025408 822593436 854001710 951638479 579585298 679487701 615105471 772492944 224723441 796476537 605047914 917156996 329107141 915888646 65720260 829230924 981770138 987739066 378985857 935629534 413853843 911610056 211817313 389558132 786106115 943514759 995954839 996132751 678283706 979074901 605535996 935645405 353959569 440799514 8332311 417606503 909468469 937024836 681852955 710253933 545880385 859880136 88313710 919122492 576220157 638330965 853458826 875858460 215062724 438000196 574753329 807072739 440401798 627226629 215392556 718470040 634659582 911318984 103023752 274165741 852882586 933940547 297920550 484495578 647677554 948948404 245817850 686121397 351711508 814445165 226411685 861099533 848156798 992580107 365542115 860425147 922465759 987096040 361874954 486400963 443705175 623333966 41708982 169157074 540392776 985687565 338981419 811021589 741337138 857608394 776085799 902390549 569752108 634353740 44173047 653010221 73798693 460672631 495661882 605996770 728362693 945533463 351168952 816070625 788784148 973550176 687815613 691669568 126922766 522606545 864625776 964064985 248307386 643094192 1705412 816120585 447341468 581528566 744012816 831337940 293512260 353230991 444200453 824006257 951974302 957018673 298510074 586441186 929767927 965425661 215076072 843704451 401503392 641067135 897657965 960633142 80283127 131212923 111051198 982291544 293862825 404441566 74056089 921633786 397679666 458580446 282775599 789449510 216029715 693200321 958899624 974736722 290835625 902034779 4904553 773401122 960671759 999570263 561718415 886729180 746377613 947211840 341527144 868685547 766189973 961380586 489913486 795421033 838600931 922352657 758412343 885805467 247927271 583712111 463314687 681534567 675907351 797007790 423660821 507491188 890244321 997799287 719012195 725927340 285477050 917382504 562886504 708808843 398692560 909051916 427814321 934750432 655688298 711964738 777181745 805235377 901805729 967215152 164299390 656979974 398116763 943786981 172154337 362857702 85084904 683623981 912880544 998997145 424650279 469614438 553662327 902103146 822430221 942226107 889376234 919094394 527724776 866198274 316072665 546760905 673021836 796053477 932901254 950045763 671568149 790611515 96434595 822946694 292716934 718700738 692602371 878870773 526974331 875266035 139727267 320498213 399046122 770548193 431083728 878510602 641749717 715935728 550562677 672717691 953808894 957443603 779780373 904407908 983277942 985404960 145310193 503609229 951608284 997185223 679653866 693366286 507264129 607931597 757914295 976014743 235840162 815724258 785116071 877008175 514295369 673510038 815024508 815175774 296345549 803765895 596711064 648329177 854742069 907756112 366954593 945703600 929176295 945604221 910785516 927187739 294431555 753050795 906969308 991069518 469473169 757739253 137402273 451519633 496309878 526062259 511411550 599567999 320815399 603014552 548499536 874982061 310475443 430456133 461110393 862207687 773442985 859710531 142263407 618599115 875385901 924560823 655584375 808096538 375166584 812415345 418501070 482204883 628287907 915157452 59770533 650212371 328243313 533284327 784985737 923624269 201420644 202427792 136520955 390405775 129323491 582289533 976149940 976342327 363634266 712486733 9498840 833878894 895811486 997327729 406474513 985911944 433803397 640962876 717027571 767361975 827302343 849563612 846321094 898604313 859218249 977349815 67424664 547202119 566949605 845218905 31275485 230740547 986388832 999127017 193042617 401195378 157849373 347706413 878140840 982936066 326372325 944885086 571811243 807499025 817345724 870305243 16708467 204546596 226522203 552914336 579510017 707051548 495147288 891617006 246164070 476622727 870218055 992748968 19388813 950189247 417540634 497190158 304447198 414108237 338549970 479382118 958641926 982622561 910948926 944853837 866445011 972308372 562302638 651032184 315900160 845447470 840793262 966551480 160777509 681208094 377348061 730089608 976813382 981319773 70414797 779473171 540561729 861075502 129787425 752415763 420671993 832362988 626705875 956177932 736637536 970601679 33803460 723414899 196482949 616221219 750531252 883935551 247945703 467409073 914026365 975349579 686768785 890571754 554990264 911473710 868640412 930629635 351031108 423042283 886773420 887357926 39824299 689650596 440602949 729384296 200017401 566403698 748090928 847501670 359422429 537849411 379740352 717204601 99253986 523129736 495551636 859181004 164305570 569039211 590098676 939768632 66514925 198737894 40323420 828986998 935393259 995765035 826934156 827090829 915844916 998723974 701564297 786307660 900497352 965719775 974657300 977795087 31387246 601491600 950209192 959135459 736735806 816740230 647186392 882325331 633372125 698116715 25490412 114541714 369801743 670758989 627125505 668031780 217306462 778133230 591771953 652362363 542658370 606117917 108832997 921615524 861438109 911484231 939296196 951107311 303521641 894173792 945858921 984633098 850324364 974588654 889524741 999638856 485162523 498585707 497215401 755293139 323049332 573868155 763971856 963864440 809964783 860572358 820646053 862913102 446338 509670138 573254966 781610664 564415495 796064462 381164129 457605746 176379742 593871421 736614298 763640594 633485165 654493301 822370813 938182203 708367894 947267246 367707935 661316192 123647563 214285851 1703093 307171944 794388406 948915406 724067124 767483494 795764555 873066103 866500617 917596672 871447229 951530903 65342162 372645921 917078762 962191322 428652511 811643753 992667325 998643242 39146780 476221421 243720314 793404270 3480415 484879446 244845131 621656726 433578259 476128422 481064893 867444841 554914817 801801246 534982742 575706818 442745913 788318728 441311018 976236044 800301080 837891612 951691443 962292356 301378948 988366033 928770683 974815220 140115262 205655595 584840588 925290592 301075235 828654108 53836535 289103640 385832047 748606511 792160769 880371157 540310915 780358440 586025731 595580938 140743923 974997808 482337965 873248493 359213931 976427384 872213374 983992099 132858362 324874125 313633593 836965353 114352843 566500458 899951324 935282768 394806305 555077409 225640201 889703045 367863317 791525457 125442084 903115431 904698724 915114519 453550354 845940384 733259712 957482148 365891092 651012221 156992166 614872629 749698042 900467703 246679427 311988738 654340061 918247201 901788089 990455678 103643287 497480551 693250494 997022562 306662365 313215358 587652022 644099396 801992666 916588531 808614650 820903947 921448550 956088721 833678239 851001713 900736611 999309197 876358396 903151536 226036145 365841852 534471013 616038452 996405883 997002846 331883447 428249088 109661633 402979260 447230614 661859652 743038752 810403534 467467580 696744312 820790760 868728284 9767200 508892819 553538865 876470506 249476615 845238352 638993018 732779209 99368381 397895007 483874626 975670538 29610648 798682610 126723088 749572827 939691466 971035028 358041520 370039012 774052957 813480509 588164107 720583682 802751040 847893213 683877494 945065770 831045675 904233021 306780608 448726668 187206578 496802185 572417800 896178460 263509400 445374367 995393014 998615820 740867285 992946690 374736459 575453192 869463651 998022278 440555179 775711906 617710052 922392266 842917756 925181888 843457034 934187224 221932698 965268360 71010234 522010552 818718781 920227130 186246482 278453126 908009124 976680641 346640065 611414463 12765796 983870834 790900463 940526791 811005753 882702700 403797390 720818724 504917357 991888107 291996334 485572956 868977379 941748698 759311179 792704119 927930083 956409297 337323779 786240059 422222636 601498698 366266762 472770361 541243601 550718502 589051911 919394122 633553915 657111031 556741786 559802411 704140456 963003850 784394412 799473672 128979666 445256792 480863315 733851041 638259766 938475714 93983050 537411753 142845350 636621383 561736180 833727122 857867268 880947050 666393528 826831223 227549364 367330442 205077342 850647317 58655614 778539382 41609308 101651518 66549880 445459180 953726766 960793598 975516977 994359012 704478907 889290602 337683553 597904797 707621777 986566830 916987239 961700427 892539330 983395523 224140189 898605858 921776654 945205320 984085777 988429217 476121736 838582419 179219992 184458111 839354279 856413396 743632757 820972493 761467178 777939683 163217226 512075965 173165912 292739431 531951972 984161773 844684657 931594644 957374800 969210283 298670713 741860079 188684601 733023850 325754286 739497889 244877097 962106279 176281411 923054685 834208746 959023222 378659505 520027575 995507026 999441242 473885655 521336938 238650087 600819635 275498646 947792384 272662939 493998661 723939986 733576853 527723956 582668521 388139073 582402863 761729063 797235061 876607623 890554805 734325560 972572563 95572331 982275833 37130494 644399605 775515406 940693612 602316227 753482269 51349960 848044556 341782356 711227635 546612031 994620790 473470009 927186060 681034346 750788679 322495472 447269189 73416276 322715450 105262955 441124082 450078427 881673914 532648514 682112921 299482785 411827275 98348610 416318659 136975942 746124167 101748808 481992989 430280491 777534870 939267148 998785899 408236197 436974609 105421738 899602042 844596165 972526805 392490238 908821980 641708313 699657166 944562367 984038157 282700883 683168116 708762649 850027804 241737221 655563963 521807419 941799554 652960834 778708765 644779422 664921773 963779469 985032146 74171971 633721191 780223084 945918985 707746395 791556312 222910003 887174650 151888566 702664778 615863288 998074746 785752670 919795579 670764009 798590357 695546953 727735432 434114201 662487103 395880349 618520718 117755896 715406384 316982896 399053033 784910618 982920191 263708104 342971367 380021709 831888226 297976771 309234114 321438171 473468240 627224902 700327393 22742571 299585925 454932886 571627678 704259418 976546388 537784386 681727859 299702992 810452169 265586293 720127926 223975119 787322762 426814119 859687153 297324413 812352762 509792206 797758508 961031534 986160591 313162388 806217985 963387703 984187694 290175406 329878096 22695788 919869328 106101594 745387686 518358365 870551164 648044463 936719888 857808925 933463910 817230459 822719849 992578055 996079414 94216761 308316447 197427533 738151554 413555408 980509233 17224443 870145675 510726034 630411036 41154165 930818025 159306337 863786728 356781323 485663304 693005440 910438282 7794432 369580446 99409899 131248472 316623547 645259747 830456619 972574118 124006556 909082950 779287812 938550032 143227486 404599304 997599341 998962456 478790539 820384177 542331817 861375582 350660887 534241734 478026809 915941594 544938538 844384319 797919507 864258978 451287583 529228162 194278100 506230623 560822874 565870287 138140896 692822034 414605473 834038117 927115167 950097552 135821606 378708406 956999492 993061084 547269929 973466799 570755455 872932455 614008139 646743920 695381088 733657464 161496016 686542425 869547123 888505284 353310667 895520245 269489348 487208183 352502200 631277182 753562858 769725662 4570406 475366340 952980494 982037696 758512049 895013188 347104621 618913604 549476602 677960123 599738631 727479255 609741530 894981881 327870687 945994885 278782193 649608493 251590662 973827422 812751527 975720662 756612517 950320042 942963657 990426655 749424391 823079947 76479643 702154697 218875756 630065678 459225466 938993764 576861473 759067280 137715581 719120253 115254348 357410477 343556620 804970123 164344550 584720289 567341002 974010520 759971607 918531440 479719449 746237537 464119425 477176979 744898581 939384938 899191858 988396979 884014527 969663471 98699294 446443583 270558058 278183766 161827307 929867852 185437892 999284366 913318234 955333052 644754283 809363953 545269309 591590034 726352004 786766158 177402260 425536121 322972351 851189124 199208568 837730014 215542888 593958301 780688802 970443433 937827175 963694772 928680135 972698560 611958606 831718097 515914209 563562177 677538771 699170438 70852236 611100162 38962908 158861182 828519429 990240177 884895829 934672677 924232751 960582485 530182146 538352479 634501746 891991082 21834113 571913085 648611189 972082636 775895475 926528263 943584961 974350189 187775214 233006617 184727110 211005230 674526484 884526427 249538350 987272077 512230529 598323754 762207892 804044744 650717040 696966395 843067498 855576200 683247434 760073575 564221653 693089521 110373833 515152214 933022013 979664308 668956548 918914171 808162454 918119973 438976232 602779718 371401787 924648304 274743762 990017249 104092500 230144065 145021516 156637620 748396684 972324489 833030073 860896469 443510559 648144323 668760380 794984185 387522194 850949895 205699038 714425727 65312223 752658555 884245738 970302145 631734682 903034444 472236920 514371980 306252875 825818027 675534101 978755262 482736545 615861488 726472518 843270609 262137588 841483293 958148778 962563194 41421446 702444319 371312382 702227425 772618745 895272257 59795055 840661452 935785245 983401747 808895506 890308150 982331177 984671111 203350787 654684188 337551814 351604579 129658852 170608618 841487058 913257702 768358094 820727818 586560903 641143348 232388203 611184197 585498297 965359251 431954705 759842429 874043115 906476354 193379885 496975033 204169055 318979931 288053592 570078355 316712543 903643375 98620149 848583646 707086706 930286463 303676198 400635477 666274850 968336591 476825937 646119867 912738174 981726476 843211165 956498443 452331785 911637723 644318830 794131276 599691022 767551174 42480040 818619944 446453061 912430449 857647614 893185650 995319098 999192966 159598838 729233295 193023604 844055385 733670654 865693266 443946758 641969346 398689766 553407286 486370973 498961789 62382706 835625297 945033511 966942870 118455590 899469842 950291163 991965945 341275928 709107078 650802622 757147053 491723714 756519407 863507283 939812349 667351323 731863536 820373208 906296147 852528872 928053119 94423954 315660109 22936885 145697705 834610577 866546398 329642437 417283748 905373402 984215515 779274964 865892237 292903912 750552025 710946603 737224439 848638431 882345583 775708761 823883713 650589590 769270739 751746633 826211348 937901861 966332836 415651798 424142711 11399416 548099163 842116995 927270412 409591150 693857800 611281512 914235580 187949142 472056218 560925566 869917555 995010263 995073902 47887187 164688114 127310648 400802384 40314997 414747334 58374567 212265316 467644500 715808563 22796392 649788913 547454498 624705226 294745625 405795200 247584714 435882111 932163781 951105555 519331903 920202047 336432807 688292180 43160772 544207434 751445058 777679398 321274679 772283429 337415058 645343630 833334167 879282551 546063677 586000661 587633753 658090588 76883968 142476464 760548180 920984627 260341877 266550839 230961095 941415382 437840470 918412172 890763242 939489084 506410009 604925889 236889166 961225184 421697493 782864742 144491710 779107432 968507613 983263574 704607135 816383284 311773307 341263321 24291278 357438765 667442185 945066468 725119146 883140700 94995882 633780207 949229868 968465240 768983373 787121768 854464343 896287790 942890266 984767373 332495020 697401764 897698299 929506261 380426838 468522075 557445865 819610530 836236808 936106800 545722765 982323937 551852696 590098267 122894680 456734987 609204666 684592990 354498484 779490964 863752923 993692628 556298641 868932597 24143988 639024625 88549663 413941152 700483445 822051645 228473672 300879218 766791971 911866587 381871961 448719324 14859803 39155590 518487987 677277702 970747951 989952971 866811338 929417746 885051864 954733703 157683297 675221866 21945390 440388304 151417774 180295442 856419967 873828230 244314869 323015822 263242142 402851928 107024956 984700444 569435637 754363409 512597871 694241378 295553246 404767175 149042431 668567975 336184556 491651681 489019364 848725659 908161586 913735921 338643982 621320049 540911015 664107634 841314543 947754756 551406568 709432748 424934114 583713297 769466723 788252051 710405527 876108418 390589190 566060369 24083058 297247080 704474864 979743598 576218338 790992985 535117162 593044531 893612149 980854764 979117027 989595158 67853869 932464668 89985927 555592230 390708501 629207167 400812822 413944818 959126096 981303642 508792675 757834420 147316277 747604073 242444507 300241218 235014633 865913493 90133559 399614499 387906008 732984867 116467992 621605876 763862861 922159896 161705047 431204041 471453677 834758955 493866152 860903753 970412240 989816341 497932031 930901091 642040120 705121462 586143686 852658892 222777640 289448500 635484101 912467233 769382481 854845391 982344759 998902680 274163186 959359497 847594748 930392455 424451156 709880020 143015563 283637979 704296136 889428863 591596357 857382836 667294924 820005328 68153090 591357069 70122047 833973179 131286661 532305873 560592613 958030056 755695273 888482017 184105296 977133534 989669398 991162266 425402396 834081440 312756446 893354499 103992879 435491310 85470408 454033484 108106313 313932925 385418566 850840977 808031323 958677798 911524916 942270232 312239852 710582147 866222581 959651297 734148297 949502736 773506734 956421167 931215736 968822644 952861780 997383617 816600577 902341976 367804715 882431537 3777280 189303877 221264022 986923707 201804518 960360436 212333098 611961246 397610969 918343044 240692757 796283290 854579900 938715798 190632194 317497451 642969499 655886506 23183668 73981601 78547581 890935084 727046223 932052782 914580024 980855204 461685726 468060852 621957583 636161483 81759690 462322549 799941409 956489029 910684766 973459268 430018121 848899241 30081603 128547813 401662750 454343149 789557917 931212546 307880721 863617804 771090625 772708051 615047273 742174258 599262836 986896934 234602274 753530508 796142127 824074697 564641224 871091807 195225981 810814562 639870102 848338456 495180043 525119979 949173275 951839894 922392404 973740922 34464376 382234384 869087192 885981687 826647533 931361483 439274941 615055920 220970133 921755431 345166422 626589363 756579429 803016671 797680835 813039745 883542999 933209224 340394401 743961273 313577021 666645772 635690086 695019218 161484675 575636455 919063187 920621663 731720284 744427431 884760105 894343345 536592906 975692810 500168723 931771936 314912828 599430406 982742911 984741726 170536056 791816637 381802446 907566293 198822475 654981362 498330572 644734298 83247540 539025404 64169933 749000670 513177942 806957040 269464900 933319968 123250950 799422508 238496953 672969726 224680324 415868348 699155047 808093028 975670405 979357359 628272554 678601874 925786297 942265559 704171341 880638742 863750967 866074232 616143097 624979535 113754278 376442883 525075505 530152196 61323171 198733597 726685034 870452973 632826903 712411914 431574389 720531016 189867482 873331369 310255920 319772250 983847553 988881698 22135217 947477198 493175404 908585334 543770269 960251228 991977314 995819668 655688388 992335466 755930269 938727318 444386612 590267832 574081700 968234656 171002536 564685082 102633296 621037935 885117988 949707507 236102004 525789856 650327260 720421046 123419228 691718420 707375648 957892030 735074484 982738988 343360237 376989560 56555123 155639025 753914648 944405266 551755887 659862887 746692743 997993830 543646529 631199069 639144595 764642586 150992180 499951875 219290616 716480618 50104764 335649330 291978050 776819369 206517471 475512298 645349024 828822307 783436237 943841782 531781632 817039872 11485115 526622374 80313459 953457626 129641235 216764639 465764656 912892971 650996571 768325616 918786004 957933821 660511181 857495164 237656282 593090612 18280639 642158603 150993611 278692966 565801107 611356144 162251385 885055697 336587245 943033304 675093077 931702702 75889316 740941124 632733237 680199678 811115862 870510872 986285123 989671256 410112293 413519605 979100083 984313065 561179213 904120497 921525037 966068985 538938135 700978142 23516556 913932207 101638857 153138858 971901415 999213212 176048265 337027479 510163980 831931547 241519298 446735937 402228684 984689143 884067639 924582097 29535612 856242543 894029334 996597288 431319865 904719750 119311610 180329021 872112761 956093092 712677737 835087001 934997587 949915342 101499252 917100168 614173116 621002089 229302582 971780724 431174960 496067086 762739930 870492357 301865351 687354443 735788574 775312912 824398737 897135494 843342855 972075017 770957906 822803693 60682326 760399383 753341624 777137405 412532850 469185523 414673861 605577478 607686999 759614248 386286514 862321818 158180738 629497865 446182547 558784942 596448613 658579002 269396011 347668011 83820494 933127584 769841092 937581909 479589342 642858720 910600123 997421443 197760370 299448314 144926138 745051369 199306475 815653965 640636833 727252969 856406924 981478698 155284163 733184250 188010588 230138070 203850040 579447997 53741526 916879488 314721677 505254986 231981030 512406478 751471307 947663487 798622321 909191350 385632601 689283498 698478318 882708689 377157475 551295381 533132486 905758806 906078826 914915871 143461908 767623520 117406530 182832378 280663120 939145690 635113997 719247589 952880977 977371890 189216084 854587821 897106183 924180572 62767832 426994449 252730392 289098934 318849422 663964382 872675162 884277050 877069637 937565890 572077921 765338813 739161446 769824417 169419159 907109147 774382744 942865064 419675874 500404410 869652213 925471763 617892567 935736865 771307944 882983267 751853121 976170376 4903118 449103195 244689692 342774209 49836484 280494619 886105100 903111260 905123761 966784862 599337943 814321016 121648165 176190836 381610978 953755184 540647242 899629032 519822238 795250509 132540588 646710363 122340074 446670985 528715454 629004723 537455415 585915862 465294110 594461767 633856685 951158857 806751487 818517910 396494738 492203309 920882388 979486882 580566584 599511927 594655384 681304052 348779487 507850289 299695351 955155483 542964251 920687813 921565604 949937205 370344002 652443564 959143278 980130115 961168245 963682213 787264751 856461395 312732017 315368203 423577586 628377135 556652937 957682793 208529145 571660018 264204770 540774051 325651616 571148466 658804967 662069575 41678538 761867994 17699718 22156851 425414985 961691562 742111168 969369116 151339838 238351295 689473321 800301725 208629128 946407749 520597564 529970541 111554373 447613574 560256363 632130925 319217875 976692252 848448081 996723449 80130043 691617154 415601172 597938844 599613585 727414437 686742108 896481675 9468775 579952985 890180473 974047421 885016068 922060312 486741757 896651146 994897839 994954722 179828411 733274973 535061393 892973541 735775698 752933787 780086195 978828308 585852372 855840684 194555009 885139336 427784922 649065301 281055801 995176187 535896781 604168466 797787987 912396233 882540170 939857967 469457308 845899452 32768232 944130529 520209947 760064288 951723534 998276645 322916527 750071658 277123085 658462141 154532051 888058554 930656473 989689051 666198834 950200569 356444950 918461809 591368307 760429327 539141690 928047742 808176733 844039881 215072980 368245223 848104602 962380634 194526344 700808216 593578021 726000596 46601987 471615011 67211735 698556871 215131279 309517742 882314234 920511247 348679298 513031624 301216860 632515506 645226743 819485826 366048098 960746998 914029536 998032770 702741392 716670396 777930051 994654766 852292897 945377854 262265463 297235013 327201785 648983065 891966919 981907156 938765456 965422468 556073498 572805313 660172963 899345738 352667417 816466383 743258310 920303806 368328651 826240669 178980100 713494250 895875173 981485604 272619343 509257119 621636885 966588825 235477613 539440218 600646470 897740351 792968933 990887355 413977088 700742368 22850810 314776880 633836282 654577262 716084925 991050528 399451523 861046818 167872239 311698891 674907633 863802466 883724776 923528788 472431546 865267468 809729998 882804157 614184914 690810942 153542221 649150710 776374055 832746746 614648153 952301938 74974088 172287485 355212743 722429013 229571636 856680989 903181977 951401107 716651210 822866705 666713508 974615248 924843314 968490772 8895737 121491253 206299907 879616744 304169316 367065622 663811904 669042107 894030263 904439793 793956877 925120639 818893712 952821597 914445324 953713885 554088687 750976034 432878021 791252952 662447010 676525981 514289622 885010829 930780826 949641034 915673542 987735810 428144137 907549951 747785428 875390704 42906617 849725857 700100674 762799826 241321132 286578296 331038226 610803329 286745634 449745625 269010627 558329314 750727263 758966378 483427389 935336656 625697208 658469035 871871238 928565458 703256633 986963305 978712907 979280448 278078602 354587537 572166629 923845076 747819988 911702999 452949168 481350658 164907353 857358376 661768616 849901434 271379458 423896257 126104538 376547861 935496457 981240666 508252759 928558044 177644146 580283180 871171253 915486064 2785512 910076176 347056701 542365572 436544646 823380808 120718510 895274674 683835011 817370246 70080269 654518827 764554026 880546904 752677160 882105400 456569311 627119273 558851182 992451657 101440465 374368404 956238845 992996454 74524964 157314799 506649820 694228016 971379370 991901862 822902902 875572032 935999421 963276396 407454968 746292003 25887954 813298132 873310385 959914028 42372979 61035792 415011747 492887527 780299788 805590368 692771580 899671435 934989520 948063773 67858100 507893896 769639334 900065847 130971613 323655498 245513791 816310892 693012733 757795172 741470262 820416959 584200723 725266369 297457784 587854764 806038183 914303460 43125644 914780058 773519871 963095140 862155599 862295737 715173519 737577710 144168096 674064423 268871993 845795551 887327284 965468582 848447817 879248058 604265603 890148792 639409313 837302242 385391475 654007474 312281801 373688449 383076978 585771194 601895272 909241035 685132065 887678471 513448466 559051110 919843722 947524944 820129702 884769820 115165500 746874747 757264270 928039751 368442315 496625197 534032062 554180560 426090890 649695726 212102529 913958258 430172374 594030941 583311790 895660958 476473511 873655310 319583642 707526015 243558778 991219318 211968262 356003398 111497775 260201903 228316707 458691443 392760116 849203418 523938368 836455842 222089404 818040798 117224301 915692638 311441838 761812413 384923521 991814173 687279687 974568762 189499372 462284204 93273983 158744159 535595649 785991568 488043871 496801956 536567054 605634812 11500443 118960197 116975860 730059307 51404267 117577340 245223141 810500102 392877931 471584183 443055149 465786291 532447806 682415829 185854062 231665081 726770861 874180151 313351660 758726576 566569411 746485350 581876450 625978086 599213222 938549981 644857926 984347650 806213253 812146677 113871118 840202856 101356705 861792221 275769692 297073002 129629676 354722767 26752529 849157894 983939500 988786578 948837044 971179208 169949063 383963454 499398491 945390914 218761671 946115522 860898632 905441474 224246356 616860815 792287767 935059774 418229887 607000983 517877977 877205435 506460800 985237373 976968967 988175096 349191268 411349942 327312014 522616913 74288511 181044068 624419600 719646597 312302316 814200078 23351263 955460872 423947483 836999939 948769139 980847534 510230651 993732821 505319172 809637488 796536729 856420723 900596761 971535314 142880567 723099704 83565279 336431523 266020643 568233759 835259195 908086269 853732333 963399287 984395894 993466406 684882945 780729328 582496767 887085933 607355554 966461955 399593098 855677483 28414330 934628119 789970405 941569456 170717644 485629951 966979364 991309831 685927351 831416989 156260504 999561221 71698695 103281566 467069993 725105394 460789347 776560615 867718215 983982053 548561171 598152112 17139908 635538056 88551236 438127842 589329778 928183199 608922610 847510334 849445553 942997916 451007894 682018509 382676889 526791770 115504104 286872738 361939157 634700043 42601821 484328665 333736325 361021487 738417514 850583253 736001256 935759140 932003319 981890146 815785523 932564797 756445409 973032620 594973541 764149712 522888101 854686638 722967627 864006923 823657525 883315079 786824903 966728808 606391234 711732486 705478286 822713989 711300174 882219149 843313193 887806333 519572112 633788503 523238513 907238321 571468931 882903229 213126372 313868222 732809309 803112041 193737611 479519945 606084735 747612846 958165315 984276436 829642610 955013415 749516075 824899114 17222396 216023715 255517257 284239361 126047114 132729293 108763206 797254545 769919320 777388058 813921199 930680410 933843228 940988730 505465021 609037988 146074731 658831153 985256502 988617646 533096572 979502981 200018829 423907013 879615093 975330627 303277819 687861563 722086125 754980022 770590611 814432871 573765185 884929116 111516566 683497797 918495251 973853616 973325268 991046881 697662153 956030857 86059215 492715367 420347768 924990881 120965357 841295325 929657535 986989226 155158679 746780012 326422348 918886769 272612596 813842348 660364738 921637960 273733725 678116313 616148059 915662885 886520131 925826424 166320781 469605000 68415807 303477539 488430178 871139003 602437382 959445057 57265204 566113789 35148574 915588334 744174353 783840636 37572635 593841946 161566934 299507930 283908188 900403353 721022147 819357567 990876996 999712566 919852826 980442078 911419176 985847944 890945664 958231876 728591207 987322908 373153654 903022986 915286320 937782519 934365954 952969504 453430449 783775642 242144457 387225668 704522688 969559266 787423726 857424255 738042847 840240106 305156859 782374091 775126046 855214215 380919089 903909351 74614678 416163419 14428397 865401602 424713205 811119889 481335560 723439745 223942237 776144097 689195697 984787076 692682663 891350894 35515546 357782225 161034521 713355155 823263597 868845471 305703760 501068829 185589810 607331333 529209373 574484174 653216023 983163910 768725511 825724775 135051493 868903994 302348259 302494080 860438854 977666941 459629168 900566030 807288998 896151383 826882534 925622951 454277904 889217274 880753137 953706576 402370139 593674454 693177570 938448005 861407788 913206815 697925337 823316261 849644696 882141350 827952826 940086111 102914986 889397769 997568365 998554928 874104666 897263923 616267531 747425279 473249911 481069068 459966893 523199206 527451680 617568407 600423733 856115375 560636318 794975104 509595731 870528053 706487204 730725060 253981694 484933073 194023315 487746854 399031122 591880558 23795874 305646133 630721605 632370306 449667586 648628594 917529824 961321978 588366505 893201656 512027178 957791261 674407169 881100234 631836300 923432922 658343359 732147478 630851254 773015876 289234406 880994058 162922210 931160890 423883161 556422360 301953043 590893446 299263962 895618748 960661001 968465095 243802058 585428707 385484110 996325049 321836301 996314359 746795136 762555036 287238026 310724055 904190312 984538651 584879155 870729547 889924773 925428798 147858731 859258238 370583230 394714288 729768245 851685563 946578445 986447489 459798790 965694772 265513639 971786176 865508646 880251148 229945060 486356384 709958464 735365799 333704144 458558526 983167499 983881864 490687226 957056163 275141609 460595864 331933069 866310119 432497119 833155239 740411574 875073100 327872062 982481477 693742256 992335637 473342219 752276850 858527720 914390231 998205719 999771450 551237715 818971886 139288069 688389589 656538097 834373795 23682427 732437065 391241430 834280368 2327249 635231908 779394262 812095004 190722871 970358196 432464007 843179708 512561024 924080061 825802424 947131191 151575526 232372424 499802377 688752654 697017233 815467347 465267870 964493377 84265514 612594189 145470244 187343819 588334082 999839846 519412071 725685069 335231364 977969625 194348415 887454761 699575531 710454867 782783205 884117191 392323990 609606915 525835419 548250402 444603393 647147321 63510275 506189835 891160813 985482130 249496581 744623020 735749392 892811014 394381536 520537389 115320977 414856358 628315370 700088515 352798613 886139896 495245383 568112526 225406740 805917975 76985490 976742733 898185230 929255826 207965502 283752996 384549774 883922024 494026043 813358267 717311550 731878336 692530229 711318798 623649505 869896127 144690393 548538620 720070470 964225205 484798972 817600315 554859577 873012619 686329433 978674728 858118975 880209481 981673074 991874643 971435537 988031525 940742890 985418158 386952721 602561824 167225596 800978028 879770945 899817931 233872998 929363211 732973591 830920546 905962574 997797241 946458162 999749238 437873901 846967234 650951567 981497840 561569737 855245185 547490306 954990855 741627969 792461819 875381214 948591328 428985237 514327954 127660608 130586470 953012904 954203283 82166382 517161650 11291060 399309736 773811866 905989643 52225472 288470243 57846822 103755464 106164129 189906142 275738262 294050759 465895702 779449732 312240234 581164237 453123250 791066952 606619093 728880521 877159108 985611618 522608604 563946455 441992831 644847301 110098968 618143571 522165881 756345546 371903569 442537685 405126428 466674814 267454842 746013500 88246086 310876036 696321142 733360587 779164853 852461829 8455377 632539892 85221685 208702346 651230668 753371315 105714711 402561836 704882555 988183568 58910199 514942930 27133568 875781721 40398383 73076560 385305958 889029307 315093259 415269857 159666483 339045489 337342024 806652420 604542459 707207048 395207996 678414984 801512499 900698311 806459686 970273405 823658533 941008816 402585075 607746133 763337968 834770656 13807838 954694925 771460606 871245475 590453133 721384681 519124723 588581970 830212266 900822861 27495272 145436564 692586638 795955913 461363438 602034609 223345395 695821425 436141059 793787840 462112429 762615542 617847588 683356257 176205411 587727458 468642239 829976709 956249081 978483634 540554802 771688913 189738257 788515032 84064926 120055511 581148595 583207412 791785426 989516863 299580250 392774871 781621291 847335631 570478972 925016205 104183101 362937271 580996099 770067473 777057371 906354593 261912318 739260935 496545702 653392802 781289819 936799916 148084920 566375688 920427753 962142236 792111352 973732272 972684514 990804075 894079600 937978747 889658895 904647815 170450058 726465553 359633169 619638779 726960132 976034588 286219205 553095650 339285663 832142991 444041930 661086334 586452936 895531716 310657345 534447448 420340063 443435422 345123074 842180064 751925552 953031835 175662782 380962037 851364629 932885312 184125497 671142901 28172359 832533647 399109795 854763814 66166039 66322698 512640618 696878491 980336878 993961140 346445747 516705447 573165499 971528493 871997039 979758045 543961960 984580099 830294243 978199408 157349623 451956765 823073036 872635201 10578260 385485318 317256224 765755429 123237879 252213381 799110526 803317829 760542345 834752185 779285885 814742532 967323431 995615183 911569418 944414068 813256133 870469542 295523665 703390993 770892870 834540214 55721389 113950256 563559250 809494503 86353250 369624730 89713038 199921573 909033497 922983781 392229791 507606131 931870618 945042126 591841825 672362104 345289789 788608921 292917709 379168091 868430047 901682893 54187105 325861754 823487944 864130765 631857347 742468257 85455699 97042456 399484688 526775728 477982893 641926261 80065032 355395291 521790758 684377784 18412358 896945544 228039888 966170690 734096215 802759945 881180687 985655761 557932126 694053291 202019308 723281027 915589354 956279641 444498954 629484054 644778495 667345866 675500246 727951763 347431444 851003371 951565058 962686662 731884980 950474978 850657714 923523429 222893112 291126306 226531955 229474484 933244836 968092500 647310293 898004448 957391420 987289199 260007149 953259778 492381414 972536349 714552418 922090433 423603096 740433726 165946626 543945807 138058259 271826878 150466813 986110796 762327826 984577296 686103804 907798899 357890295 836689331 383390269 489389702 894329800 905325461 820143075 890689112 834495985 879456007 91361507 232557224 764229164 849847796 142395298 295880778 867886380 933106473 536917691 962035972 669621818 864437006 874550384 952890242 774908642 914323852 890721327 923299024 164927197 568332128 339961907 755627970 161485476 742172460 346343871 501805155 751634280 874751299 389260818 756365134 294960765 611421759 966510594 983946497 630177431 976647852 210419938 802467136 856059736 886068359 183772270 788519229 895866897 979019424 577991363 618726596 36091336 72437298 204486738 651809453 873455174 932110658 632482170 746868646 721562853 725850946 106018832 903154348 151773809 603564842 898559904 993624594 274523147 619278528 650244057 782562100 239475792 496165978 846709509 987411973 130495136 218406946 894121447 948981135 962227752 996877890 470868209 612142725 429921911 921879597 193734191 308285674 425986887 808015430 840022015 992081931 231103649 948820297 960475562 993637081 881223432 993490878 534561574 985926129 860126932 944353036 414999691 888442286 797635302 930265997 652939188 681440018 76499575 443955142 396515189 633890408 875396843 906014072 316751524 493516840 685045499 705675199 902858346 923031773 254725566 340787897 862925955 943359653 735963835 777573205 201956555 244376590 706402655 853610022 653687874 768259613 47189926 60210926 168031105 592590539 158481793 880184061 718416572 751701913 39673229 135628272 749755175 986699434 659640464 783620627 833456756 868357142 90687100 752537768 369413961 697161484 115059013 259074638 151486307 271305823 915130344 927855218 128706477 229063666 667766260 848013731 406392127 598028516 158898656 537609894 988580002 991641820 660449315 976985050 205801695 708144122 829050009 981078210 547148290 777809798 789312061 807597366 556787768 730605149 11151985 596400375 216340903 704357148 932049315 953249402 734035167 981776484 720873534 896001390 585923241 914819560 882636619 931895246 952967569 995928908 18551749 229450598 336721171 389620514 839021257 849562808 213779988 815092466 650510302 760855311 311183204 385378267 405191889 564367441 623605932 850639640 922131700 929785418 262803795 597348556 927142190 947033692 643110529 845332606 725682292 914238910 217619077 856782014 379111226 818879430 104391752 400009217 142437579 513758206 68572935 610112759 618628217 657637353 579278840 602178351 94001987 882822355 111067246 817297535 226907496 589006968 396910582 958019057 958907446 984331485 563426047 790067432 188828099 933145897 77424559 953874213 940573863 947052003 579547237 649982081 767717605 864302163 253049752 702187764 214083141 930978952 483388532 489236907 547445890 811219992 499562659 777254420 821759145 837155150 517828906 535898128 201053583 979143177 539591788 594583895 488552261 566213613 775330518 918051691 667216025 888475770 861916741 999632954 311288274 418803819 439368285 962012403 171610888 702685744 214210977 300883026 823400910 881388083 727534128 867373393 560013815 907730841 58152493 873090180 656972526 873431797 279242182 716752375 990799321 992666778 993761218 994729104 284853561 295983037 809773251 900444512 231921675 680324715 922072122 976191525 311974728 746607229 818372401 963521126 728943997 780920591 168099238 574493277 10384697 561522302 176618246 644560003 261288730 677545415 445025781 828342380 365197332 783935211 420812467 680225228 756490187 913567836 991080867 996911510 592313642 939159330 888201584 938985486 770809519 790992137 790615106 972135905 624324993 976050577 361437048 724207743 979883570 990208419 176323124 678320296 646854470 656109349 309988227 488321467 967283233 972788188 820576417 855665356 243991895 580575750 563947541 872743546 461504216 949374310 913360262 949970627 109391328 308824767 750527629 829595138 694259014 775183307 607432465 688913056 604100139 690378111 730934263 887567541 59417682 605133479 291773693 760709946 900155291 902126717 355320098 609173579 459935502 540077289 399783987 950045972 672157675 887887782 678318270 712376242 397415688 405490770 904646810 969842049 119999780 917857407 372981184 741100349 374748938 383111190 318330354 922217287 654979270 995387329 654184092 942455676 50941985 662644274 520548864 817420659 393392558 758857797 615732664 718974489 386913403 807272761 676015621 939582470 162228358 876646872 503996371 872915588 491753747 519308221 252392296 883942558 5429746 675580378 866088862 891635569 978898397 992040301 456640925 501231144 133570354 328414198 400724605 980463263 704564091 722664659 498921915 854018314 976345103 986906835 414641292 582034817 946805160 956811298 238231333 552440222 932862166 949217518 575786458 911939926 986790820 996094774 373859918 866791687 800734469 895538981 247176439 873647871 82016163 825994376 33080732 969417659 541543965 776577477 26759269 604529063 336240569 684500300 256055307 752219410 610274230 819689788 935855042 978063735 105559227 698421698 849265974 982403908 696019743 716416021 309467332 631827442 337221965 890773900 806713196 855937379 154214784 614980225 195345906 214574845 705005564 801648033 651792242 990325407 347159608 663193536 908676758 933001989 704896698 884307894 349260986 741735993 453031974 662732573 862780355 872971509 126691879 446380298 236594694 820097425 726092073 830021755 757557337 862332162 199238629 786976123 918177578 951048014 958026720 983549756 157632733 869476709 656898461 980695873 517159474 639037281 940938623 968026494 615747755 623121400 455306195 522813024 268659051 958748558 340059338 478625617 418665137 569659438 153643685 971424457 118292718 179815931 433956006 894876442 664627642 688142768 604446536 624229696 315266358 386183642 141189444 441321874 248893399 379787814 288630525 853114641 39754621 401706953 375731650 441510650 541358117 876467909 119608846 186686481 721007553 892192419 275399199 845674445 623992434 838226872 35455335 318424193 286081248 643922277 636377044 900907760 835774313 889418615 670957199 731761583 308486816 959453484 760640952 932839114 539817544 758936630 52234953 283829186 431227610 580639206 244053744 249324898 702121008 926250393 128607953 683502032 32955683 744908492 287478373 865023169 462788769 675806008 650961130 665845579 191137007 688550059 426309642 673958617 61372590 687079736 181329184 702128900 67795998 954035394 148524695 821465744 378225790 641880318 505716705 537173033 564981004 765486076 914409173 922549057 252433929 913647862 848353084 991943239 779587377 969907772 679683079 783456187 528220413 816451412 328431381 370016513 509856843 567528304 349081750 698928440 474326146 753721495 10964378 645720789 829621570 913849935 834140993 902092477 977588222 994211754 226774767 487811674 562737169 655203567 778105171 921295311 91864597 746922544 570514488 860230862 603918327 779765667 636905309 645593745 791400283 796614462 337946283 514880318 299982786 907665505 338076865 526095420 146847714 834321124 566631774 838929729 241892811 687205113 505411273 951153971 217470992 657535162 901077953 947236085 308962672 899811642 290001152 346862492 678952437 687336900 527739145 594876927 228576518 314776931 476009425 913137435 87838775 764583184 986349125 995763326 636921109 972058838 635083442 912081231 162505915 251866519 670482613 984101275 164783325 437543379 820849950 881514367 761345850 977141643 369931067 941571450 662406375 890675989 352805631 642584848 315197162 917077994 607823715 770726423 309034970 593076289 337488558 857477593 396601900 999796324 180319485 190033121 375962189 402587486 158410090 725994030 55308420 675930605 834735905 857504888 1832500 814417588 546694372 684697334 517220887 661087729 55907996 724526291 479817535 558215476 294212675 509828235 502477944 548616207 707764725 795502184 865765954 902882060 344329439 949272116 358228006 455449951 274009798 537998746 383222584 731987349 175222444 676978802 481957 997896533 791761638 940413099 143045151 172478263 441703747 765957749 112205644 552216430 250379674 278782886 274549823 421966684 499885671 827736878 714953899 874106435 693070841 968399556 903926060 985606562 940260513 969438312 383612487 758604081 298642644 709751714 746530037 834472539 219963281 605932341 63809547 726860757 351029501 483015994 403061445 844918421 497738103 973712936 53555969 535949650 245319518 314586807 449336655 708471899 230726941 851419830 175242511 449516768 307160555 550930584 10346807 638090671 506392934 728795720 993874461 994641380 914204290 922094766 961626450 981307781 561129653 563646280 410783766 873451817 166265144 723761945 327787351 520996415 814536538 876342440 143692410 608271963 516901001 747024205 476571880 537602626 644336703 675460357 836498810 902779896 605247201 904536622 89657272 802942172 303198394 598157440 411150791 871881731 310551785 472064259 519128742 752687220 142309941 354236190 212456731 741134812 954824917 968443478 903248680 920867169 245646013 393712036 211453544 692110044 837493041 841440483 279571985 851145355 296904038 982871014 506707346 949413830 676410144 748988971 913937227 927922155 659565632 978277518 609187875 621075031 646780386 703583293 400207146 699073017 402330877 488955860 184365580 407197028 898898816 908585733 214609386 875091082 755275619 786218735 135525246 775146374 561749219 961795678 5099882 851322901 327136988 714121574 645405405 652040665 813210905 875285565 921567169 930798512 61612706 672825141 927823171 957642854 921981372 948285197 389161920 442565396 7177176 653903954 419027668 923175628 246391996 307526229 628532682 787879174 238465495 581677629 872584753 892918366 316876989 375961819 492396134 690942560 583420718 916088329 401811021 572064906 12985707 205832094 748092761 904235167 369597621 699799946 626940789 936090492 461402260 600571387 533185210 675836269 491149795 564500103 456054028 807695192 815042303 860590193 393387709 744421631 369995084 563577372 159790007 645921547 15399961 29372030 180672825 347951211 453687225 486788414 424043845 554328441 11965478 801627051 925674445 972523650 910745544 931696404 532154652 673574970 180906534 450567434 139884639 171687883 675840367 957544106 544114166 613891318 977659893 984502466 675073901 866168454 716291217 939321018 854788576 957284906 188676250 317125171 143473340 698144712 166200811 843502211 139275835 673861753 70038435 891016639 636291503 795117129 752319460 887753062 486347809 657315708 535742233 984166191 383334019 770057396 729665562 867257983 772036249 969382467 648167490 875035826 597927105 610531018 732128781 910613745 277279267 565528691 304961244 338366587 700039094 875741204 316996169 979975765 877527857 908252224 740254821 885936133 46965011 541832008 100235616 729545637 357448473 736384086 810967714 872932019 241502397 434285185 511262242 880860947 140453458 258406356 328406894 858197490 760980458 890025329 898105705 966546536 136811065 792217624 202921877 914094322 602886986 824017164 766301786 841778907 586331393 985365547 507482431 949957062 820758070 837636144 183129353 693082324 532895612 639611246 603435035 907881210 519558990 590477470 574767644 894489014 833800155 999897398 436148785 688713970 549193832 679889584 813407531 863504558 322170810 513504735 95527149 560821156 915904889 978423581 483141252 595636960 200473117 770756491 192404044 812797506 773560903 964344747 634882736 699073490 421817254 664096607 899498387 918150363 807420997 999164760 849519066 958851877 984831196 987652016 191310312 599908507 538587688 545825665 594655039 957824587 358673797 485428386 820198712 986870979 57443035 205206856 595533331 789416489 467879244 944597356 489561369 622292930 503421065 797585229 606290695 823413972 90976984 435769122 710172181 734187531 579316296 965687617 371255583 476858224 25771506 659439718 937741025 942286689 197653817 372217958 707031594 749898493 962596724 979881417 258157176 620483350 555780769 764780924 544106132 569547377 363736562 738876686 801220698 837687606 36946772 274241501 775580738 971538910 420564674 954387846 328390053 532697804 610299995 863752335 47974454 106952983 132532966 799618760 480283980 725445377 827646747 844823992 635831869 886920169 812164708 837111572 325327332 637931749 421000392 882130316 225997473 475575153 944509992 989565780 74493410 414094999 521325508 921516405 887094420 972561015 833032467 870562004 303312996 409371000 319066199 395263800 629302621 863647863 490757040 601262914 733318918 778953610 185746418 467333636 434052542 807974814 579716680 812192457 964485628 980945380 508740755 640909720 860008405 885214680 290471674 530014261 84206774 199876151 786492018 853023323 92897894 564629178 563718069 951675592 252783073 935980837 729690703 981205996 85367588 650068182 974317765 985729333 186973141 675560533 400196888 615602813 439946576 834363439 781944301 884332488 323946195 921987937 241970536 934060715 541472692 811275666 829030964 842649656 348276918 640160561 111787383 317679923 575954411 880168999 395199591 640260209 911348385 938323496 615664139 653514834 403547155 807273409 91842554 257200588 786115713 891874086 861390827 931426461 390196188 743835832 973545757 994315240 372793990 556535014 988430601 997103288 884362380 925851384 820313008 973378999 394750551 868331616 793105844 993307647 988522195 997202125 205882745 726614278 27241452 260987087 959373577 969488158 538006470 858061805 278875704 706975297 353563760 608984010 956920684 961174919 994159388 995237509 160396170 416486729 772340100 913439819 968367204 976991753 68827402 685018275 926317678 968818552 576044254 961718942 859615055 974197000 522136204 680025058 689390417 886317046 601761967 758954109 484800763 762950551 14490500 861931050 624430325 729701084 714298716 856643087 39328580 145088324 130667575 569694987 948621442 991940884 75192478 237714281 567978649 734212585 295773714 812731817 340374256 507818949 926460642 938154062 425871663 727947877 411589602 523974103 586873909 964798536 88945128 927145452 957449623 977417517 352455336 708645813 455156919 855173428 779014734 920107364 303772218 835648235 66772666 285632482 200819850 570698995 92052802 254810571 24457420 995895061 689637810 831184716 452664941 597785048 730942583 842294622 628938452 746589645 575374424 614815123 752561498 895940101 885346008 992371452 214905139 492351325 78948795 988640479 461371139 748977970 768698514 983197796 689643829 704637601 672612123 844609491 575042932 647497451 810500478 882189114 733922911 884045003 124158359 278593400 445947602 877128638 194338389 638480566 913994818 954148355 29128396 635173586 175974666 663779512 739285186 782075702 608802962 937624584 245854488 940372648 633425878 950371169 686014095 775523194 537082597 606572309 962855861 984702597 902844654 966985759 294145968 952053441 755964454 827870023 36769017 43795699 789793203 814305205 917983662 969365853 478428783 539571784 835984746 877744148 673238980 770260370 361775506 816375775 249114747 830424191 404745492 608190058 763325652 956526988 932747893 957714349 656577020 975836648 748383277 978243782 536628601 777001645 168418257 935247762 64076043 981189925 506795667 975988991 520683300 824544810 756701398 789921458 217638763 453381069 961816943 996926250 456848514 756412132 690445040 799269188 988947879 990340142 410209474 635571570 796555834 836068802 102309313 788955144 736521047 744540813 656084874 829486662 737734353 747647636 569989189 700000206 301105171 764882461 884038931 974287281 529409069 979058761 116233802 664848973 269145764 795408458 168789798 784613620 630442530 722301697 194608889 288854020 897203298 964056652 698625288 796252708 87188594 179105951 506611199 626393598 711468140 864562062 561185922 949408263 474931553 643429244 197122166 724871948 245807824 298866741 257749981 614796923 950980960 976459158 274822766 569367750 754388957 921377237 616670997 861784792 379070064 848810000 358039981 610390696 432607775 508829823 371115520 773711475 675548152 756011620 860927913 926306284 37982424 327187186 744378906 845557498 561182317 906856185 880309269 991384496 646555077 879488827 70970113 744181215 549212208 731877116 272390475 810350523 15122674 231901053 905426429 919920463 28298973 117239505 674626644 865083379 32448968 556280926 326681285 867396217 455886455 604991716 494288780 661642455 312255012 801160171 991438398 993739204 804844516 837916477 455989475 939816647 90507245 513021590 873254695 954408857 994188124 995972823 293642335 336084115 810400378 969540022 835588018 946100193 169954647 451481137 105076391 124243422 136704685 934036696 445365190 896018413 793266881 879689123 154188800 302737174 356185649 471284812 861750423 954100049 558406101 917996835 469990967 957946413 501369513 607418897 779463552 850451742 966458730 997125255 781149571 888239267 422541795 586613399 574832702 756895363 479365105 874681567 326409929 355667004 886233857 937861348 445058851 593138429 461427150 707179937 54954214 777885862 883775999 926273830 418125954 447784920 719901704 895881272 652925576 987240814 803902257 935047140 875826221 921450544 92070118 516548503 291796451 929158594 497956152 870898943 451937918 512049618 971682627 993896205 436215056 689272235 632194056 965780185 897214135 942397118 572826067 756447553 397863230 736427056 145867035 869696855 488188993 880319500 632390145 889322453 432168987 651807302 892292257 894203955 718736105 860486882 233174754 719418539 440149760 506053770 588448182 888223897 851064914 864514802 871690346 985765752 967338322 999554973 76253894 628258394 200227188 845564002 290195739 792338096 786457028 881695620 171597526 760854036 820715791 967631322 343875862 943844412 48784427 789797552 310934031 972819244 251246735 793304231 860237470 909621760 74137893 804412640 356021435 725427430 296778476 776678601 603247325 969204456 934897631 968902634 121046093 392586931 51364052 208759403 216412611 551510600 753424237 920233541 495790041 802327995 155736328 563546195 862264153 985312341 894947995 936985624 634498786 975510092 427898313 987312275 67861 732661741 991608352 998552543 678284146 966895545 519173558 706111329 822348588 959086194 25365985 468715097 452626501 797132560 819902553 871587080 178732983 407405426 861092394 972297709 391298357 686877826 197223514 739002568 535177645 634945290 173171217 902456642 157021439 577180207 43671066 80965153 552422227 849559066 516106743 936323415 194990922 563141570 916280499 916354421 281037462 699642157 301300227 319298553 799014142 826961783 292553776 668539341 402244051 895645030 350735392 657547849 547281361 794490977 682051408 838760248 101851293 331392809 767750620 872373116 381489205 492724919 823676433 939429710 606378110 768782733 922337452 945606849 819860778 831487151 997578286 998237764 225290380 575248310 671088276 911323647 851675326 993897437 911558580 913676700 462799434 618193902 298801603 744089723 288394908 680562766 137758904 629384744 117087741 541765117 524130554 948341189 241940719 443512151 545606088 874357517 141342405 892826941 229527437 482131354 83617493 508143009 56417476 153837370 946980303 966907421 923745733 981352272 377202715 765371689 303689916 895539860 745840457 979379926 440921116 725808643 756392458 922163068 710248417 980813687 297994848 780699886 343000021 617411243 376897237 879195918 672255609 841801510 286192039 950191952 589491779 754511380 433410130 889719541 779688265 997831591 405740150 596406374 300677081 793720993 258918821 614513903 727593154 767878735 906608130 924779558 672836661 829000827 695138943 697846976 357504832 555531461 129543927 607993334 440662287 751360729 530019770 688629404 396561741 598444088 57515153 513273849 397414845 880226148 467305629 584539120 621984869 707700958 339954541 648392310 877090174 929160477 174082019 854360835 894267892 990697075 77480574 309455674 890780492 966999206 833853137 991470157 468798472 545591481 304023537 609262799 268615422 893252739 271900714 776025559 25630338 95667506 276484233 822097447 704726845 769222825 391501061 583959642 105048190 579761896 333728731 462751617 385014270 466707995 915245146 990365162 817585826 854672039 276178202 319315648 807435155 841775745 625441626 949074304 772292137 988955230 483128322 798822491 419466463 725124683 251867507 541006777 964507004 972859159 749509352 951834437 475642382 653926142 854581640 950273688 231026328 368237810 949614882 985824562 179483271 266123471 140435301 831877325 82201833 892679292 819260091 861275432 318198873 861374421 126980527 170445182 95604969 743792358 535368496 798834398 793404670 982262313 600952145 634322593 830640779 962609812 246084040 359059801 266886479 862605083 989329908 991908011 201909327 948692492 494789897 886967244 754543016 846835803 537730075 990065445 354598048 914001223 398106296 957634104 409973792 620691093 16106606 839939694 335895111 847393873 392203000 817088819 190529180 737386675 827370445 983004139 287380041 782834241 610514268 776445034 764313104 812849635 369279277 670490593 538459994 820333333 608345458 749139616 415195357 634961900 864163620 891236330 587014486 887313944 15691064 196389588 508622265 814523441 942122369 946372607 497210410 768563029 261138842 379944054 488050396 626690765 405746643 748388122 129575766 691121992 347064390 928594444 721232295 774988269 879904450 928927987 182266165 815592684 402595840 680624497 775788727 801554126 674023704 906187705 535279872 809799206 706948648 991494529 411142589 688070439 986360388 990218169 795548457 867967498 747027651 808924982 417096627 955751362 310648856 469114895 366832774 390299657 768835068 942074354 661932745 752990939 995099018 996750934 562922808 796097131 120126881 363669229 374737282 850550298 526860242 699471722 331566417 770830106 947287295 975799106 868985926 885180535 791011763 853976436 235386090 789418492 423481845 652497035 565229584 992350685 703709228 735343143 346369434 507775023 454479119 540770489 428448669 440231818 715695411 874232336 725601316 945823366 524827255 586912428 742751844 925548839 410987656 559143093 334637640 853968433 921975154 995232991 343194488 971758670 795465364 966303951 697159744 896635459 33975310 397763268 843387195 910665847 288208970 500109199 870936227 996083839 540795236 976122021 665768472 756185946 453556322 846076921 449189856 892858295 298613780 721237694 712807844 909749523 388068551 552368454 372858159 805995432 514344650 940525002 737800441 772943491 190310863 948876158 22840153 565719584 103004841 816659682 189045636 743007798 218328329 291523048 949692694 979727856 299015637 936501774 236075477 500260423 644757372 906557104 707703307 868302112 28660002 538292458 756416115 929043896 806383728 977339759 514707710 768958249 224003002 938274903 448915222 674139550 224700009 808534255 717639945 782184331 382090015 899171837 347848166 703791117 649423083 824540825 883301397 940700764 147509682 365490743 532232271 548234638 466064230 915538058 154349515 246732148 786624643 973701789 89727649 365523010 81800055 711327063 528714933 733060404 309495330 615312642 592606697 849563455 416353385 549899957 694814234 853896479 248117560 912751432 620124726 766253675 506359204 687264246 583978238 964041344 265048140 692446830 716545963 821367828 853038365 946769284 679194845 785288201 383439036 900674739 194275833 481787419 137603413 657716549 646508745 892434403 98759093 547461788 301764700 447335823 363293119 429977985 779496349 964318622 101747998 920497647 136847607 564875026 441411491 471142725 26569396 75469970 361787334 586026189 314335553 894997999 806914541 816693895 713413105 840307378 895881776 912232779 624780253 921874558 756053886 885891948 359211753 968737816 271252591 838703001 27254385 613000224 348916367 694214837 677975655 766833007 924633791 963887363 971786236 996088175 696336677 857736878 430639989 431142347 187183339 212131848 232971135 648988469 244742311 867443598 959694366 990382027 396367775 891690908 527999593 985632186 51793498 821767455 139285680 584600268 339131581 706168720 561279301 929192497 693145634 769639985 717464234 910364115 283001437 313942638 491803687 594919598 259625729 694231847 937182967 939771848 13006808 860718743 557440076 733651953 718452774 898003580 767302438 864188231 481795327 617482224 867919281 902785830 133044828 805390372 128504664 882702977 134602391 652513779 605167536 958821878 68660455 274687006 405364482 560440651 757452900 984743931 213145046 253437822 79014680 491058018 623875068 758308415 51644238 841241847 733426866 893964824 799792324 854065966 16413491 75697043 368097098 802884728 608557565 875684044 538589622 839404462 513142205 887543811 711029884 796426387 471706013 776378496 156228620 854823365 716690831 835636424 737243268 835739369 122465163 416903898 910628788 940587097 776586213 797620872 941326253 966475848 705363204 823444276 247559754 800747625 963447603 973230683 581338972 762707527 506827698 832822761 963571941 965735353 544751179 819704204 110012945 998162757 79273189 342783122 496604130 683095857 121672753 284846562 125189960 416457865 538551494 833326740 366552325 938770927 37316782 605842787 32609957 221158436 147095941 215845130 324760572 975869038 904447238 909608524 188276466 692903401 905800475 978928918 592544629 678885387 519202831 909078920 157255926 161786897 90991942 611660710 377574317 805818588 832076405 932857948 861692010 953661688 84692250 668399582 846200513 997646204 79234320 876471340 932442019 938701602 725986265 878513127 103965153 147615831 1180853 523398518 701447585 919823161 365940472 530886260 754254621 858947388 908141224 965318198 800338723 825902354 838960165 955939438 31038085 64702660 160682808 621598200 117388264 453709482 82018470 327033847 609774807 830986605 390552096 504664253 883254563 890329022 686181496 836138224 423034498 832681740 413250580 790542236 747148278 904419367 462351596 710240797 471425946 644290761 823714253 869109515 537633436 759752929 614167905 657557690 79732128 188708737 332709430 829258679 199178552 496758174 965529836 966966119 235905124 888291836 490304926 543109396 483641012 622787512 196094395 879747968 705945006 719226661 393300880 780748777 107289881 305440316 861895843 892897462 842560569 843267596 83809745 897416812 495407289 731924863 486159168 856539836 877263578 925285450 463300469 909887255 653030682 677330953 802559362 996980709 699162374 909950072 530072027 734558409 771492978 804286118 653299199 967204037 676668619 870271018 369786649 774918075 258118802 952673484 542908528 625475633 696169811 988281902 982222980 999910283 640078744 980102862 685464610 745564573 257385411 430901184 785491894 879594745 899864098 987082883 75949432 167939823 896483684 926009417 590237272 826412449 654290056 724123035 473603420 586275375 695518164 851488752 340938383 864013585 677170888 847684014 613054326 850851183 417644821 944711572 47525682 386224354 118859813 779818440 560323933 631482750 799054016 815485935 163864072 440661662 929825578 973479791 275995669 641235530 206465364 226181197 236415331 728771966 718568582 911770236 287774084 361037982 281432072 959746441 530307813 723687492 798144162 885146091 745471057 942948716 388582565 670506673 668333032 774180247 120640726 579348696 168968071 295956530 181791584 827952004 766574952 864791174 8010620 244768479 608613406 710697576 945557959 993314410 963627824 972137370 501177653 891152958 94761865 625535608 832682960 966019601 63472194 552311608 170521069 537927798 180505429 816769176 931190293 998414460 326082027 809756253 138824445 598338896 415317337 858814575 16160853 565478172 327799995 641054319 756519918 833947526 457090863 622058209 516898061 590599747 443844332 528471086 560643101 767358721 680180172 911096401 350016986 888226581 850090437 943715476 639408785 768662351 172234441 766332516 829858676 991678773 523153258 665944304 225211170 676598377 595083346 657328645 825545311 848793904 597971029 901338052 229164592 366980659 649377718 784845874 236031641 992547810 452115585 577583502 627500670 688539548 1675152 614283366 717044060 898586302 422949769 565908843 521679316 710378447 804283432 907485052 302878033 325809620 102642611 542959689 122978677 223298159 115368174 808234497 25569539 731692908 89501865 765373203 40463382 72306760 829915468 998908317 794953545 921329256 305886525 324402181 181336080 356211735 921859353 969361463 125597677 602467014 674633917 744522830 451110069 506420966 187346487 752467009 748981611 756164641 785009178 936289161 132046977 218105247 722860730 840511840 22401254 770986087 476099097 884584671 287119854 804888546 424718238 917271777 270114554 922004852 799791630 991736187 781005551 941164889 885214379 980829257 685871495 809839795 876917195 899430294 717165281 745583445 666987520 957057032 627634964 889851524 363005187 400873708 942834280 958573728 598081566 912506951 813249338 926075240 779694753 848348470 921716359 941398956 734897389 868656559 520226987 658765865 866784607 942556669 700443057 964764198 608022599 628648830 280351396 964822458 711232961 758263145 598253105 603722865 369634065 975917394 207072728 895206575 479899878 672183268 427073865 865676235 715240094 764200995 668532217 908208511 724550102 907637200 476815590 790024789 394377551 588764077 299901371 959768561 677946227 887241717 542273993 795300684 144012689 642630414 752982075 865723704 825381234 853088501 456446254 925155150 471496287 723200497 875893563 882421169 787523985 977387647 355632501 908400507 419502399 576874617 160716468 996980669 552997952 943731442 847887273 929554944 594297283 887750971 148974665 384459214 490151200 872863268 210078226 936848642 7277497 435931910 169212220 710776601 748588244 868252203 524673689 980259636 202395214 423999234 75601732 333138888 673403481 832653870 366415638 628271087 120496321 712303722 168571626 575668884 641242764 885472308 707496244 903317076 601582317 661582685 769901149 942919947 444774865 575495866 582341993 778296357 306334054 332460820 265684335 551766447 334002965 952164662 484025172 845902237 802684684 891922535 304380942 687855171 263658235 895245386 504847798 550383278 656611679 882414380 471575783 770126459 620773522 677006264 712439013 919047265 417538832 499301629 74129171 128922807 47543109 147888687 642024241 980232459 301228087 514529993 662609320 733138221 472365498 864704739 608838123 790129371 831805832 951255074 576598066 891219821 219527161 289984536 811641373 835250948 879630301 977151098 84514661 986290995 5135450 800475354 37297875 672327587 250757479 406465493 242424475 620546337 232431412 449002615 750933796 977024416 950357244 960673184 287315644 862753765 779293361 814152371 458946308 592964003 287394986 496329511 526863553 741927293 200932779 594504047 957480124 993429749 646664552 663574397 557467350 758456015 39406342 785810837 154087992 624443912 370993560 740761372 727616178 757879854 486282906 737205766 909623347 978252069 550158840 881595837 555491982 840006508 901515863 903948397 288247246 625996310 601461968 848933770 889892370 930079566 191486762 571693672 820462580 975555876 43169545 970553255 186726569 870094084 833976582 981169513 997430052 998672407 686170071 976629030 945379501 992959664 848298989 866010994 98451544 407968203 619134012 746463681 430613939 863614577 180104926 492424154 573145631 762337166 744389277 770616199 288675073 748746267 705433178 984299529 904405574 940746025 799956204 915115778 456080101 590468162 1321128 378256226 362064109 389713022 230743895 415376416 54587153 210928292 871902198 889751298 727760100 867350430 781186222 854707128 737305364 788303405 110684134 320870189 791457596 805647203 241546284 559113824 558409841 748228375 279629765 370989971 340279576 400453600 184315280 710299262 988315075 996565472 495694140 898812327 339129362 352829478 303962039 622289427 446930904 996386737 620958793 798361560 531844889 937197305 915402087 937577859 436735644 707364471 551896081 847103669 359535396 782557092 572419936 869534621 849465773 902147554 86504323 440902046 162111040 350346519 758413598 825572569 473364378 800227592 787261350 809801817 905565376 936644927 56470426 407148998 126322190 342124217 741092852 763695441 540062335 787363457 207718013 945218870 468231293 956843815 553303597 970841015 621029077 983438406 660196129 985373252 972384026 985916771 261028499 674939057 429748626 757494440 901632399 923241244 735467274 804471751 180286236 904164816 910053299 920084374 728204322 836531649 604850848 749711433 547378311 760712960 582159848 865549256 388673049 609344845 396398130 513079833 264802000 766343818 567647891 780470918 991167512 997860099 645825470 686090573 579115531 892351322 138583685 210972121 733218251 746030803 649787277 650971678 179402408 732134556 298096351 842957518 98445368 983086403 813787077 941792360 592185516 885837394 607854166 933799769 683337607 974123354 318967812 560887583 128442228 516550248 677476536 905451829 929335018 966581464 786998859 950306130 405623606 412356008 958998206 988150971 536317269 821171128 973442468 977737329 266256823 476652469 169520699 745003305 907324621 965884488 925047441 961904274 637736710 930800953 654393326 828476893 542211480 942944474 247730094 992720281 373504448 673229578 203069978 815596031 431934935 701891448 998538906 999959338 940457576 964289279 455342728 625466050 263311534 943386254 338252464 616117709 663465793 925452698 293646209 783492793 236056735 945508239 320643298 685499615 314593458 689994906 66351949 396991431 441017243 517795225 548988503 763067521 770486733 850019257 600419714 765357197 958654291 987752592 165664095 879881856 977724035 982843189 480511458 885764262 742854248 976306427 946158243 970211649 929080825 941637333 460086725 650791964 140366431 333293712 289182544 638308724 357736138 485694104 2071698 790987339 327728089 955393089 680037082 911606598 432209187 739622894 64926084 781233177 864986620 921852822 547639903 857669875 177048050 621427946 775227213 988305889 639275057 964603560 532514825 803011854 830610606 865182393 589432213 698036635 583928918 894196213 447900022 874638539 974669041 982938815 831114311 880712564 979673522 996689755 197908401 662954525 185417342 287497110 571688699 954973108 465073241 497595416 708979537 839237425 923167865 972986866 453461894 664110911 816197643 838023728 222634561 768059411 619396629 823945814 577804267 635769462 228891010 853871089 901906540 996361449 43912672 537494035 536581974 805205381 252521534 771865693 551748510 613907015 122205569 940146816 270597402 486768136 663614403 965335771 296684345 702686854 441119641 749066985 694451910 816181074 853246592 893776943 521148429 949021072 386194630 851285490 435536990 462825207 239729114 864194918 188865945 201590647 291900081 556205328 711010902 772402554 186796805 691417686 504892505 850220363 464681483 677150175 901741831 984569689 24912255 321346902 145017210 550857653 204679640 446359903 215495860 371601794 562281894 653685017 289352290 490418864 492385574 736627919 76530044 222619685 127213642 541508353 110244632 582771500 194100420 566346710 69895636 595269257 937995670 996116081 973457152 994052871 670600759 874068967 184851329 206372648 777227509 946786271 118790330 396140784 348095094 467081249 844428884 907042283 233410519 682808601 695902373 912916167 750999272 921313392 846459957 984600291 36642947 371296411 298394643 573485092 186898744 687421130 172845844 645663645 139685887 157911546 740302094 981515812 339890510 863488188 87056703 477404172 491065997 505791827 858868899 914441492 470805662 571569379 957055825 988218809 887442611 908787390 677423402 774839388 728602748 772004029 266438236 883134986 979565421 980043521 473270462 861849571 63538320 566072090 142290373 501391221 28026181 525072047 525986548 856945515 645824498 788857204 204519534 780683659 932199385 995297813 380349910 693428536 599646631 876477639 271154453 609411402 654146389 821878222 469880834 608833348 548701303 632168585 37052671 712946795 593238379 799183560 51452985 989096122 228501005 724640970 69359669 304504289 986099901 993181030 836307135 890860019 129933942 867912348 119277330 669695059 862035259 933765128 382020075 901473543 813573455 905848307 41011430 254443065 726890937 950524102 204344511 871690602 655010511 747991515 578741708 709820559 160013416 706079976 108371771 956351740 817452405 820405337 331988074 524891238 897351365 991755324 281203306 837719842 495050258 954467243 775565386 793901839 593101629 794102743 292471237 666510288 80459970 92605385 146202736 568308241 547030198 639687849 981482248 994758642 85722245 629070126 225264026 277760025 364765179 872303195 947501935 951146035 768929821 936986557 794768090 996775482 915827385 974173543 214989420 774685301 823828719 906381707 217462280 935587584 409523416 782636804 882074630 950226514 463373212 870451988 990388902 993302332 176436638 907899906 595981514 955968057 558741547 887569558 813182603 888810272 701124030 952851995 155735234 604265856 649012233 687945077 29803166 960685383 855839665 920823897 279590720 393672906 276583136 729510086 234733397 907507676 752846235 911421954 204281960 819965170 671826895 754121758 958449284 968901726 517690336 857052736 709723469 737303242 618049314 724180030 88133982 391283362 461516412 724836441 93122111 940876792 63963400 616613822 619212209 974565363 434071675 757311822 672350264 750848885 857908967 940300418 820569013 970031474 934145697 975264722 690461092 851209997 985404515 988943764 151769094 437596958 75523109 359753448 449196282 519919330 962736084 971338991 825084363 845893302 891326142 944893585 652524735 889097255 541234092 750655506 689207168 910075405 730221790 949234049 660818968 968802172 513098662 961551885 322928343 561354536 40608024 884307831 483247228 573521148 985287603 992014238 444530703 905583826 709638257 983502174 609785429 613766654 113440065 864607309 1147974 917660859 729593292 750921018 339026018 377368092 560358513 618153699 818377746 823698705 781876433 822411345 593266701 759648580 170855019 260224901 91508652 173649151 898839188 960369745 438057293 490480728 95109610 228672976 440570954 846510293 10669445 939373573 189023763 530182922 767564465 940395467 233897919 538343841 189786649 669637355 975589193 994936781 164701220 822276675 71207597 793049008 138335257 892594033 541252481 690358666 390098431 930809888 741897810 904231282 138160977 734355530 677856779 950430101 149301156 888497164 608559281 763574200 487109620 951211637 410481537 882063767 589843131 772732719 558658827 708267886 528746795 944596585 801910696 838868327 521780410 743269531 914381812 922186702 267492556 737800294 543337211 601388486 198769701 849660293 104198751 521212842 577858575 608000452 900578118 969628162 957048001 980342698 471715881 680334357 701223514 782669453 758759910 926336747 32163057 755610332 354697726 528001798 696589582 734690413 53578518 214972310 872525663 996829845 375845691 633068968 131726246 548817318 379086434 928113827 556954864 700078332 552167333 900362466 832319332 882586957 75912948 747705185 290698261 951556147 801124981 858275067 429115251 992825499 987262262 993650669 622626727 947307799 532788759 577367280 156480678 381303137 764467166 765244058 845708151 908270583 139594176 214222726 582095986 759603656 682542666 956021385 435191527 703412254 885376686 994084992 179740159 252450566 695650289 935511890 51921999 808297800 158094776 892058003 555740396 921861448 343822072 577740523 448528521 957474231 899929242 952092565 617244131 761466297 62335520 874329073 631432087 667608177 652691117 844716161 638828376 969952467 510508396 914913818 144750634 274824225 815905808 881485342 188926430 908028408 730447273 989409840 431058850 456572026 304956385 923731009 285535566 938018844 634916162 709913191 6147371 484147320 182254900 275449029 224247427 585713537 339822597 370582727 398105273 539263728 902641740 915928989 342046992 909726737 498442133 722095446 384749670 909198382 228200010 761603598 630942612 691052783 341408828 410150644 366271895 540307164 369263760 515212252 194028050 959582630 237806272 434760757 315606619 710910002 718530670 992682802 185203687 407266299 980245318 995490412 859376353 975225764 287874642 803518409 599742442 668328449 282530672 489004566 473863126 991542665 408832581 416015529 751122783 760926612 503219940 569493489 616096916 637913548 331401935 662261735 212848884 625809612 52267221 308712024 275764618 938980502 268218176 365140151 602940966 855016155 954902998 992024174 764149774 890959276 919184061 945092733 210567590 346915443 965627734 976415853 505116144 903618043 64061582 237962754 490279386 853889984 221454331 967327838 121323745 487230605 29073683 705034697 346446241 606511651 399489289 764287807 259918094 563092174 69418633 618448833 630593189 808112484 300705203 525639289 406257501 791081668 925480454 981176386 540689622 975257299 601084255 889259247 328304261 959525963 732905847 937762581 900416541 964288858 616691345 990619350 161315785 775502867 151397082 299746716 399981263 471178902 655839070 987618626 153886909 868802020 746560534 985623975 541582633 976917797 365393232 715106881 622097211 834681748 956674670 985303070 877388597 901625231 202799016 277680416 87368308 552771664 60175208 268664549 675997968 953851719 841922632 873547888 406435771 647561784 794776216 984620064 881356643 931310926 315187556 939150892 400079653 612710933 954292472 986072187 601064565 803961518 157347399 347980723 953578734 998434184 705884367 848832289 651655190 997269795 39704991 712721074 949282875 966935731 539837091 642390901 407045742 906422525 535177101 733441517 412187450 479323000 504021750 545108465 641529554 715431011 899755312 977778251 845094236 968357886 585407963 877564138 592073120 818982460 926412633 939110937 936289231 976250182 739368683 902025496 963735173 986338476 697185606 901877400 770506998 988417451 767382274 918954292 23287206 491581548 842320645 880353991 252899824 278187784 516276776 682957804 468228621 615283664 138151739 874100642 160766532 423501163 197742820 628290464 692887735 993445057 141299170 857934003 624842339 877831011 310833973 344174458 932253999 973765021 582655590 612904975 267677859 369894629 155441059 700683711 615375451 728926935 56889681 661561521 390147086 733522227 790241225 852827753 332348547 650573078 293600306 581979433 617703459 664484105 762246635 887531114 398101689 945384149 456279867 962261335 945907870 973962203 784187229 801664383 655325001 837517112 875520608 963397338 264417804 375997790 604597966 659805481 888185622 946345569 400590606 591182318 640139894 974436737 895695065 959278434 608976661 617798108 326763064 338475110 575479411 953794746 83706526 826354087 182425766 514768202 643478460 745489572 158049995 936937336 809605836 836337795 585481440 772347079 792384901 865777704 580941525 971919541 127959358 876936009 288170206 782164906 695911908 800138167 612428695 830803161 468373984 495890377 611494320 865427596 938835255 949544858 649834604 985551388 569401762 921907695 187774144 314394935 832379517 960642357 237314200 794474063 813488709 922119260 274354030 662854371 649272206 750100195 483133384 898746572 374699359 625058466 203332716 779453263 903578365 957363846 850890153 883708588 600722414 956357430 545884436 858438888 349040355 891002793 720509172 914146448 373871756 557868936 759885194 888852803 910791120 926924398 767810609 801076203 764407111 962600973 830616751 862638800 990959814 992011446 598284669 946990647 184711829 483650061 991746304 997450693 724309676 946680266 935047628 941726205 976294208 982563697 299366182 477707388 491894794 495987730 200192944 872938868 771911340 942150139 203875496 997267025 361372969 394231777 483441416 862124361 755659063 824766070 349111937 761913504 121868645 746874384 748772924 773153449 874664385 985882164 242544748 346915864 635972187 801097336 961768090 977012629 287831822 353772575 228856978 858929777 852623082 949366401 776058326 849412301 817596184 999707703 503673530 751293280 468841881 750817132 980496880 982401885 237510812 899615190 137030002 261691252 66086882 159527600 535342891 811204356 104633610 460808011 994727291 998937029 808973538 869675931 820299605 955045192 436406660 915158014 446620693 484030926 321705886 754409811 69091443 554730939 57474432 295449939 799935807 888053501 193195912 261847159 452564529 779746989 576401371 777363419 258332151 343403695 487721681 804024403 452042326 661885013 787346483 986698542 504606138 728212287 539123594 967185621 466988294 978640687 67031582 71743969 723188455 772914595 881788450 976621899 585954483 869745440 299693662 926842471 254035895 970094569 70133620 388271036 993729254 999958348 206612238 958847424 641950137 820743101 644468616 657325885 13203310 730239905 90408341 191236076 649326202 929218833 828600150 927325980 870907899 879770591 646475904 727314022 61844663 292975779 312751331 468998603 967496023 991626431 353979365 852036196 642335221 816387870 44125076 853757001 56541147 937944097 949141130 977755787 715384695 889232232 453100317 664652380 974157724 977557159 583273644 713782787 504402579 657898168 528837462 566630023 964791975 992908452 645561925 762160480 818627616 890932212 96139450 181071656 941230782 971873451 488590029 692444748 459153950 864462418 428037265 992019472 440962326 914486449 226794816 286634399 892670592 918927681 903972851 930395199 86974857 646982817 434343535 867867396 333455716 657334287 376731392 662656975 164066663 544912709 356321071 687552119 95337564 509515076 137070680 506555019 706350062 709362565 843741462 940013664 761574877 865655305 148285384 237003491 748068626 959103838 54393874 711633870 852893143 876129317 251463645 424013952 988516567 997707982 302512452 857234925 41139919 737780127 951339831 972069752 340898883 977732734 90593614 614334136 708173234 945221304 721079490 921742482 228919174 804243051 758710251 994884012 843926569 918381315 523563572 678583764 811806564 879927752 568737258 967148049 824212215 825340347 580550492 791270746 898279496 945374004 518750665 593836888 144644562 956568890 610404749 831194928 844922686 900807862 77000464 479824914 158188189 354707168 435011268 848064463 150335714 818342777 541306132 582642821 133761028 922244564 561859100 774108957 272347386 490795852 234544302 994617179 817878399 823147308 936070533 940283328 84280856 694683088 219747455 240555279 462855740 860396689 512000933 569732008 706964209 749401668 758825400 934428423 806964791 887249019 714756424 857180311 21513741 803575165 38621123 297555857 558377874 578196953 883788106 904415278 763961264 883702468 567218856 926019131 72023456 409971091 826489310 848215736 366581389 880610725 638847335 793433051 690799718 699839703 698693089 816257213 872283923 949997549 263441794 451565306 813781615 840675405 410085220 706838772 405669154 945058953 833633730 899744156 306104590 798501633 697562332 869771246 799193282 825377149 811914436 981729393 131024003 635386259 227868583 961838488 559706355 876887649 898434395 949812766 94725785 724099532 766827322 820795038 449889388 519817201 561285057 984383586 328192366 850030732 106068489 242333859 802456490 978672452 116575370 782299332 733001981 876447847 792075640 907582166 903159238 918731155 59288321 781920078 642049974 736931413 175978645 707307196 145678514 623377111 25566015 77697742 511060290 855228759 442041061 915523491 426910762 799036219 90735575 786375752 882496081 951614651 875555836 903201381 852894763 971607234 324715741 907559199 977200358 985212454 92832422 536905449 965025603 994236405 946313502 995605580 289489419 596168471 496911388 632473236 218729614 843690745 440804230 701169753 147752740 824352854 584242305 660377334 74014655 325896445 569631896 911364619 655315969 752901718 511322511 527617934 155722996 766859315 164354296 406416264 328667689 700478247 125340232 977813937 489951199 490968168 76092507 158086994 108700098 962733374 994537425 996580108 856653657 997671824 409820900 567791177 873193988 876134510 822299403 915552894 450833877 564189615 956065507 959176977 688121432 812416105 221760272 576154054 91252098 860232872 893246027 965431296 618162289 952752031 319218135 342237519 258055814 752342591 980504049 997257333 550865455 856060340 158629711 411108174 87566397 792593488 861359906 949116096 978663921 987603094 821133760 830841205 291601452 399094197 820129304 956834886 899837721 946728328 726636940 954407611 580052841 860881584 237220986 950794083 5773948 903101763 485364989 840691712 821462170 911614047 806599527 977650030 980534978 984942653 373902328 813788950 125487321 137857561 32252241 75349956 41604479 604241275 348151775 776878993 564697035 725070156 212009291 225727027 411860347 641514813 787071111 918687224 55072030 140534175 352346332 967939066 614462844 647588252 80185522 243663385 962504652 963895264 363649052 434307778 295443296 374889769 701228892 789419404 982729359 988114427 978506934 996727331 959023511 998892249 48534954 593530311 688066126 747762349 431983542 996955201 948833395 977868799 573825307 890783254 205379390 356367511 878805681 997684141 709480166 830739300 858191816 957268503 231781194 637182437 269015570 987498190 911041047 954081082 859531053 906089024 14453034 569897443 81069249 391064678 722488865 859947485 570071582 895863941 497174131 510389850 391799732 628663588 844831248 917197359 695312315 914710514 431764573 670840750 694320423 749813126 677609553 734259895 467634122 516174480 641284756 887490521 318807025 364918990 644396037 929588477 855843478 909881384 795261860 898406675 350986746 846786232 196808478 580984802 126708732 172562770 337517425 929590787 880477099 968531587 114305293 846249309 872169426 952766868 530981751 869504595 57119412 371100165 35627589 690493831 723356786 975856633 383353553 849131800 707985940 796383488 704929124 751716311 816122345 880024781 365783602 489763603 678252464 728196810 58723071 516981768 907438079 974848450 595904799 828854933 873248432 980754727 57533298 379243134 376990051 916441882 712084065 926360384 716012419 950251597 42315009 136531836 981013104 991232151 725503526 758648795 928039325 949060996 613614707 669097347 45029865 518559217 593675497 937844195 988532244 996680333 734371779 887083115 563484251 862451350 15995374 335645041 762915605 896365650 398559286 726087802 701775342 854325686 12457684 560823893 901729686 907241419 887785065 937357750 618054674 638887340 702078561 740091292 670164109 892089584 579720339 945882451 945736346 947428566 647792492 763370711 195901261 939094617 895213388 981557276 571225503 890790536 604585456 968627727 489255513 823596065 840372600 905916621 237869143 414861032 723411607 783492259 533431532 541106133 977703530 993809464 480328961 728251596 886281869 965606788 311306345 762944714 235241414 950517726 211066242 399208054 155766159 948843089 515890058 973249444 876562006 881339678 641138491 810841408 635607077 801817147 953137203 970443541 557495381 938226960 231652402 866924216 773588954 936700835 230343165 390800269 603585088 682539927 240113957 631906426 425738395 470186289 182019809 310300523 300069781 396726552 297188830 359817725 281978481 418843693 479668351 714027142 888412678 997445540 613786186 887243856 490247319 597945443 293929050 822246613 370626714 407009993 106567964 247693440 591632821 747011320 101357203 350171111 263866890 371878727 930696954 933817316 16936620 723868346 644292691 851413258 621575432 825467758 65150232 315363723 565083691 602708516 517138929 846841349 439656313 651000263 546129754 882878814 464333753 697074602 217247546 908772164 807799919 911222163 265293844 347313114 678207810 710559494 63907550 280617619 903786770 910416162 422606237 933313279 681229169 960100086 653313191 717260787 296793124 315344415 725541706 735407376 65079104 901349214 897653877 962602168 688035079 732952862 337121496 594723456 365840948 800219620 639002398 886709002 65931132 908826024 52729822 450900335 587106995 765149212 823396247 982085668 401893467 813403853 574509944 854132715 75964304 586938214 7559673 162563237 87027257 218581833 787151 60166547 284970555 670462930 509530255 647815769 613956840 863001000 129898103 926539665 507194161 630699277 562123660 770425251 644604422 868895013 160198206 554768953 487785486 506065202 222835039 283448602 563616766 655143211 171766936 488171716 759593027 967073277 737287032 989816969 161471132 512604030 387775252 702098200 836163836 890432784 75659555 184037975 339993663 419778708 707017661 986164605 130307134 158805453 323316439 515980548 485454950 620812625 431556607 527371670 283798296 974778958 886964831 996940395 554170916 566326816 886965430 971420878 245395114 700931526 272157430 856997650 660663520 843983179 718979886 938042641 960538613 994309611 918080737 980400977 626121488 998049650 150968596 813585872 335741119 857984917 636767832 791855744 150734966 539967154 652661754 800157758 892473683 995397185 20972454 815346711 320024548 894741305 470325838 846123798 624691816 742178596 824293178 829979635 451902104 870277921 141663053 635029676 485155687 731614408 453748891 819989102 178868305 187062443 913726335 920053786 768886817 871500811 474196409 523566993 439201806 998623091 415228459 462625258 648532128 659455969 642156920 831971754 924696999 977805056 203984820 678660761 755137710 986167392 237960501 769855150 474961903 834440848 352856917 921575673 968606202 971530549 859296377 926214831 140652565 524530272 318222176 778649523 527741948 579772502 826494246 929189673 975937943 993172073 882157319 989250719 878829857 950137489 518597102 621742731 486772385 591940970 494707529 519125783 439620279 568501278 957307166 979879134 231094949 590277741 438600313 706773474 106987302 419753361 700499907 944468783 440211591 917048126 595195500 697100630 9800490 498498180 569312095 718615392 546569872 811654875 487242503 767982869 985553817 993722474 320302208 644863329 519796208 578678085 311334177 846648685 798799155 863421282 794626168 898094467 359052660 751085357 766090480 777244985 475828902 556544266 873045121 873761107 2615190 843510061 883164245 923039343 134962684 973963915 331005698 617915968 323126768 891631033 187005066 879696011 899640040 951320035 664064374 812732079 805038363 845831240 844341657 924535750 142489750 455872684 186063772 205689871 153448982 898341686 347952134 915264224 252230220 837899169 201632849 534605214 136772888 332467077 905153001 991411951 226677184 303365615 791769493 839998449 33601842 520311416 291300285 564174927 416319817 988643859 833283577 839478991 179427316 897212494 740100206 998073976 495978681 819124285 605687372 893749589 307754137 955735603 898666956 931442528 602175611 744732232 254943933 467751900 880300841 964384519 744090821 937822693 182047969 576548895 55436950 522784083 606754842 958816984 711246621 767247218 487615180 937849676 349700956 770482106 217145125 335348983 201880399 720930181 909220535 911757902 505808595 841059464 207978568 706385299 794521353 917556859 167189212 985854828 283934138 663149098 320066703 872679022 836121022 986967611 554341764 672970547 221585056 460355048 152143359 526290870 150770449 899071780 929991257 972549755 693216144 760695505 239167805 938695386 684087179 862773952 99207155 662134976 133250333 512644641 128026954 564814578 289984560 747000246 40609724 796501041 662590730 709721629 25671069 160633095 569933752 858967719 404311881 609108167 954796151 961555089 713141930 953078625 306566443 400574929 3111125 542990384 154644755 979309045 823230569 999959451 445176864 694444033 499464931 969331486 33918805 208074860 997243362 999981971 882191755 909356896 698855366 793180265 926820154 959236611 177866956 742877440 948143113 957742459 222772878 722849328 206226064 634041386 946540029 996953270 788437033 986801935 802155315 972593761 383766791 554932249 292955851 932547350 181838492 663929954 890295086 943525541 533155890 569230460 796844818 876972964 265523646 937532250 776482837 978903272 800517918 948238810 759273936 759667347 838734309 916600512 206957653 292717302 308053370 735751340 822337288 915770324 23978696 125754507 399781488 486746448 20125659 207706891 292825780 689768891 951551163 986547534 58327496 576752066 549859897 796987667 301499038 864343369 953126060 985834419 676766393 683317723 378758971 958511157 92068448 413173620 319708293 626427617 881906179 896818697 668678918 773292640 868912278 883094525 779289701 909163361 410287254 791906567 552555303 594518657 283812607 510441425 957789379 988994693 320787731 574675141 744172611 887975367 370797078 479839601 727645260 838674645 643654680 698116173 103745264 674939493 934604145 990506577 585065299 748789379 501167487 653954911 803113497 911799827 510465128 969713724 669974276 864175778 337710920 788521947 525964325 791720236 482266833 814161300 220239073 520494427 912750805 935160718 485722581 790019004 811190996 858008772 605931848 838736733 25485517 820635871 995064930 999576003 626105429 673012882 424509033 927921510 792062200 890563297 718537362 845183182 826401391 998443628 142559937 682000443 372933179 863694522 478038174 884596153 65540946 346698283 169350398 513111066 170203507 174465904 55833998 723419806 1612428 508565830 58977525 645233207 642257082 972876545 362600059 420395381 333838137 572125020 415392140 569866949 625710761 728154068 356791698 925888221 203670073 668531449 449334006 750206414 387705652 596865659 100906720 232378149 899391542 994106325 938772611 955125427 42787153 886144285 734502889 906021024 910424202 985986225 603992182 819251241 117658249 476195296 991627641 997432449 7441107 133592240 613493933 861396030 924318780 948474619 220748450 421514798 32334605 614218487 458531580 500664273 53972722 780159350 812189823 942133389 625150666 793364761 702435385 997140959 646436609 835643427 406973396 788550544 256463891 326167325 847227716 978881836 837910618 928974593 504139773 508338797 374558324 747335178 654966863 692972273 663464529 924560196 850855581 908103242 126133167 947996785 662981955 690696925 704409931 868300223 191961168 914514932 207179954 722413358 807494852 913011367 804469089 898124626 537860545 684872398 112034278 630885245 267340332 914696418 865735793 954116047 483086680 901230202 266951889 361508667 923941140 981103763 327455492 901716972 454643977 763568835 424472691 691226567 771829247 782661502 735447275 975192826 41661762 427113507 912986898 993333470 427361811 833712334 661701501 993793415 421033511 919455996 623795042 670090066 322245139 524384123 421553107 502459233 131518110 442102276 587866197 647471335 783445925 946013816 843378076 935227079 393008399 986821282 858381199 901372608 229597188 643554168 191335332 877232273 316054772 648014763 572492848 904107220 777498976 950018408 400086197 827133956 120114617 567772037 845554800 864087123 852130952 949210319 872490037 880383507 679220972 937882650 352454785 571079016 784581358 846935077 506665121 535324475 882973663 927386609 91512106 437762608 492219408 556358934 677068496 818067228 63080970 83702106 202131504 849089064 936924235 941414399 816336089 950332380 45122978 478183703 312314521 707393503 270724209 275837602 153552843 568867619 542424312 711797326 935621830 942768217 875394999 878622041 315554040 973268028 832445861 913900930 28579145 651051966 92236203 244367902 820017175 850911286 223389766 867793138 160510780 586084047 38513907 368288722 334848138 403801301 881928405 977851814 860403768 963245917 866294503 954757148 460586017 494736329 947577568 985132143 795045927 982437669 531682953 637258613 442640882 724115558 704219702 713411289 146200141 528654227 882278396 934514116 267118959 533382649 184328000 486626683 774340708 871869692 361437945 785104616 354696577 507314693 651338350 801830191 793395820 929905962 869060445 922933045 397734085 957229091 278553692 828257249 955357908 965950495 79254004 486404275 538486055 736315977 250522320 870672030 456360444 493896351 635443139 784159931 349864898 485464293 340924069 596880291 192891211 203590311 640543234 728199430 908089037 913609139 138932172 975691049 574415756 833681553 644293952 788441378 235204227 305539922 722101018 985313346 286688520 438917744 230462910 352835819 813379151 906116259 538523996 652162393 480212401 666527651 898482412 920724668 906246535 967364884 833315481 853483519 905220150 921115050 166658432 181984322 462313344 642039925 645525271 772837978 387323148 509859777 832718683 985708118 628801365 928558325 492989254 789312251 327611614 457696340 91712037 165470314 971482428 990247116 712137586 855989034 631938982 761335437 895442163 970317909 384565428 390229641 887696631 990969103 263750837 999479832 259649606 376621990 202936810 807860482 502669566 675175792 847069232 954205693 287810706 302401498 289093145 645271628 233206533 919641959 101335580 281740019 983062495 995851419 425513335 623846377 801735693 874795895 259866115 722406085 551615544 626694764 929620683 946870678 887234283 943012130 666003306 982547950 426021673 519869024 235135944 351726666 188513136 636018429 237395228 820539564 74914114 724486026 539776002 700706081 806366658 900510732 443281253 626996048 120371107 347701518 503573202 872176046 55157432 443267566 668716935 814518044 26435244 312239741 255101426 416861989 701842003 991679581 109124060 808660316 203232440 694715678 963396041 979110807 19272478 652223519 17245515 443504643 979461637 983907228 542584765 759546012 351372429 437141734 687274926 822719820 384763415 990166502 689929666 865286939 887648623 966534910 869267392 947844624 46255738 293632972 897196786 945574930 268329435 427514141 429262471 534129297 883752126 935125329 939865337 994456156 29598936 637698812 34584013 560093938 801220249 936546866 306771109 338872801 995605442 999399323 862102099 959614035 959378753 977252904 774822605 926866385 237908281 960457856 201502561 772682204 705888308 911991373 34368773 470914396 333354604 649602529 629765716 766752592 663803372 915549935 393727613 913545643 685451793 943948503 930712665 968948468 680498563 712781440 969449475 990357630 637574915 761891428 460361897 935903732 150061064 831868155 379154796 553436005 588417043 939498712 253863023 795141677 883261194 901165992 324545185 516645930 155268123 384972774 695179192 947585360 491247877 902815135 124891885 401711753 275871495 811218097 98311625 811229843 390472306 561176485 307878725 685656189 800705233 908894458 56548728 229871816 89576289 939004104 220548949 986998770 140979547 251459463 633783930 825505187 998053404 999117914 955424830 961761717 649531358 818054792 236017998 731792967 543298176 923308236 265422421 406394776 157663925 227593780 726352951 895951169 507411025 732168212 480702347 901934489 784625325 885572157 532458172 575428709 81460605 988074994 457515642 967751251 75258520 994449831 936825325 985811885 125358074 754656761 232961650 485134327 629886296 630706978 577939071 914149111 865638269 875873623 410578006 899580653 852040642 862272439 190481298 746864180 176693007 409142982 793905131 869041135 167714428 849084436 464722829 675534740 244185475 327403739 485539793 909339303 318335129 559795743 807459465 830318166 555817151 818792203 914707152 983872945 357993432 807405891 127637696 535485164 960634737 966324183 357879565 560736701 641038021 831247355 417538637 685750390 998541528 999026432 322879445 450923505 449015920 717496184 255887480 263494818 523846006 697791542 83503016 804935599 728971156 960785372 484006862 986059751 342071625 709921558 502732504 871573324 442938732 913130016 582108623 739539077 570196246 906024342 583457416 634173070 894299211 954254796 962037592 967074093 220828158 336254025 931004651 992699075 184166648 906087520 630523240 932987537 576142507 753103802 813078534 828894302 51931290 759037737 518416610 967656181 309950490 511549944 757096266 778245617 964632778 993504970 715337644 863756543 486181598 945002497 384258832 977579633 212909601 371768466 254408265 496190284 737319582 903497593 586502336 839548738 753042669 787470314 655598015 679189033 502241418 597560008 564202667 825093775 431756328 874611623 152420199 229869185 963611653 988003412 347509693 361925613 217759587 468101099 138336386 575578854 388651651 975381671 729994705 886677842 292563232 657561923 666274961 923784058 242716715 470713965 6506858 410290210 519877824 983826736 940950419 960549695 578070733 883242966 959399277 963689458 12975818 317681016 706772983 767231685 565028451 616075830 723103664 813049649 434839232 525384767 299709987 831511218 801221719 915954159 165501758 697526724 196969461 898152411 82937203 982653823 924287022 981245230 277151365 801005635 846045375 857620804 468429494 690039853 652492776 757121625 876198957 912078043 405026213 870780834 909791232 983050960 554183726 929941021 692154152 869356165 995791490 996145298 943189147 980780446 242428320 606239104 403048137 743787943 961520390 998464588 281531528 767917257 490864304 959977797 725847940 934303936 67920757 459804420 900280039 978103593 655372354 862333681 695965695 886982260 737268996 794410647 805491247 985027764 287946117 893773120 326558607 374701931 389845450 428158121 261755382 882158470 6514553 709741786 239613417 406792594 21879286 861950379 967498048 994782285 191113187 447953240 582899969 942019206 900210156 914244965 355297683 763535101 587381333 754644591 682636806 745039442 159375818 454993220 175156501 824946404 182478459 922960617 539535845 621279851 470459676 961905028 282340956 351810234 296317544 713612084 159504475 284884988 527248796 865173353 398498466 869870948 740410056 783677482 942362520 979382822 401861818 929052748 769823363 782387712 482606192 994644175 714482964 808187988 822339764 975330092 692726124 800600031 410362955 950627023 703553611 753676780 445623673 579739898 906886246 993639308 693569230 902392069 82019465 338331857 139310166 883948863 869468335 962871257 803324845 887449402 859740936 983923232 616824216 827219670 250212938 585416042 820118062 979871359 45326351 973098788 591687336 965273370 379088878 863656569 981356629 984848822 334821222 983647116 25083851 527625070 238856005 392371042 959391302 987014365 989091133 993260281 454774644 677266822 49793443 475024396 906266594 942552146 651490523 891290161 596896577 958320316 59868323 901631484 98348202 482719663 857947392 964919458 777434918 815350625 356745089 875933771 235327642 637199472 599662079 797091313 820686588 850894233 307181421 541291013 163149871 927817109 419485179 672266873 126915660 950995072 350792315 671755021 94435358 120391647 574796760 692410433 721222594 890040398 729139229 796443298 455759193 883406296 623699380 769953858 901693305 950876230 234401902 691868316 618625185 634517682 47377867 934506121 511609394 949872478 858115252 948321502 612786084 662862335 172730337 713029311 834987523 947909713 146251324 298261005 269099407 489038140 588435303 782535855 128121759 338298455 194481541 738359357 899206507 938484643 879600215 919565140 739192685 858513448 856377906 914301692 777800328 818951861 40576086 523238290 319559625 530072579 652970054 937098244 120391699 593896211 346122592 820610238 557192970 975895186 817190235 919930516 236543697 252351914 704670594 854422077 909899697 941304221 322625830 604399248 141619342 466609823 900406359 957363035 461850138 503769256 407638714 482885580 359261908 469497511 866557758 989835128 207516945 485837570 29436083 709821001 327839667 933847202 187293909 819634813 883041284 926484609 170181776 630679164 563372654 815545308 816143681 887304650 675652962 865281387 644739263 974304799 398545479 994302070 476358689 855844766 496848006 540402453 11948435 512780238 29787318 322070387 879900319 929444100 288624493 302953512 322810305 385903703 551928539 641078532 342023197 376063838 960912329 991771825 105946686 530887790 39880617 509041677 300614224 951995051 511538604 677186483 98164841 253366541 797014228 866607121 687619970 959158019 652748584 874506520 677254784 834825438 736754327 942355780 760555426 943173265 181292673 984578115 367069952 531282224 451370965 798396866 817125609 822750660 345873908 946514935 568369132 710021484 964435196 989174154 299292777 487822369 705356656 926147007 730794397 869589353 259115673 982769264 396175392 455931092 665258761 772998120 295474439 324331058 875184318 947296209 230875258 760994996 563429099 906957991 286263588 568073206 902022832 954375420 493837780 915879605 427685792 766501342 641262407 815821832 164770270 958336564 666805787 922822474 168831660 554796778 719379292 816754543 750309025 750774959 236318942 861584996 239419556 543989485 611525122 872297706 489476083 545305652 139620818 307927897 251485949 784161967 439411117 765879868 309429607 866462022 578034709 976717977 120453058 240826374 244605504 684642059 289359420 757683741 410930049 520138925 589074509 741158937 743331120 999253823 485352445 669514917 97015728 716478603 647554520 989875805 982520040 995334492 580675282 597819529 225724938 468271918 335001508 454362413 379179104 879612044 821998655 915376264 589203158 655281701 162031267 219613610 923861068 991809772 737895812 858753778 483794936 828346058 172733043 886996233 336153924 915685199 125859036 600634558 979869697 999499340 293345604 926392308 658736805 857759474 408191556 924124739 214439128 852112245 12294292 88584059 590768447 895097466 382550783 921928925 899044459 965786096 802827748 932395655 372158058 552709585 652359571 781428261 812052069 871382197 665253385 749140511 580654065 735476643 978812987 993727155 29061349 49066139 212821187 641883627 765048075 874593493 323863666 844728377 398326427 686413048 914349574 941442791 369658160 395198382 111604538 417223486 59370800 114423728 359203377 406569325 231337770 649519129 567750798 675522727 527683785 904981638 665322457 870046182 25224381 182600531 660084420 959824217 280066988 608941273 853238113 950633529 448885540 625440241 66566836 359587056 324585405 686571308 428934013 955821495 860100672 962085364 229295792 626161576 163140875 341954930 353929779 519149769 422309126 482855193 376208187 760877843 819409384 974399092 355424626 569731062 13622904 507389110 640153797 704726879 393864076 715106380 504743640 679779813 616095512 831824107 184857906 199323080 108165130 736871134 8976389 436766973 301218784 630845150 897098632 994648608 967402366 986153189 956327353 959370468 833219730 933758615 354734379 835642036 548636200 828019142 504563559 794474898 59380051 278954327 488778327 617925115 531235395 871659766 383582088 390825391 289411520 903661011 953915972 978071757 650993639 678937033 143482366 493139725 191420357 421164582 307730328 939498511 381967798 524132933 792603195 933865716 439896482 847881015 755409021 922705693 829943249 958568377 534023656 940340759 97127615 215958735 867166112 933247959 603842384 799732012 327621512 743463406 355647170 569760445 348418573 463097937 157049965 819485834 803301316 973588370 20901224 498542079 562457285 574766781 54974485 693751687 355493598 887807222 805757042 975096924 869470985 992456136 491458942 550259963 246678775 934668630 543134182 984732207 453170262 527748385 525899177 790237825 442633697 669744350 400844862 902154327 666966201 710855299 192835172 882829943 886715326 959013788 997963303 998824183 401380228 549201129 317707880 346128592 90269618 362076194 936298384 993820712 858863924 890646949 664559465 683183072 603108801 825551678 724010056 865051473 786087370 794956312 872299618 925012735 227902135 823915240 392659417 566762579 235456962 838339455 616685065 859391418 122596267 672644799 133045083 865521339 251268668 603764446 279477850 352324753 751519842 887807616 921665362 963936687 504293353 597126246 12481799 534011762 731255316 740664435 848127968 998632337 598121968 888437040 131724982 709279823 356011201 672365590 522538719 957143498 624335380 975252062 648058981 771858083 328552364 865465752 667883688 879295643 14172670 770728229 962129908 993466577 935981107 973504869 758400398 862855697 464728254 878318526 617811642 894019233 114205747 164132731 449036936 625088218 931158340 969857779 114378860 915772016 691266889 895591995 360058956 591331167 454750142 798715923 290666761 501576690 689977060 755043443 7003130 653662129 619055395 850162611 932493625 976618233 211444065 740473647 185206868 738713118 290121556 818081481 95796026 708920640 472747372 757950593 712131541 805398219 25505851 671043087 170010889 803691619 956698042 963097314 443062551 949824854 415880121 549260087 138562912 493088292 98570065 932078266 465181976 617083439 166268647 468104278 130400201 753309721 899613329 963933421 111501253 377052847 93185431 937279653 724901162 927229060 735658471 903183986 729555019 988276270 14733729 792702803 463806850 586448076 790610363 805192536 846500160 917417862 722407869 735179065 42225681 725230661 628499934 714121596 810658930 918224715 394785877 411850733 288060765 668664706 386271816 847182798 60405277 772528456 703227350 932035646 899227371 901247613 915797636 961530483 760650584 819103169 791602913 838911701 88331208 197943164 817384442 931314363 308048486 507897768 906438779 928462193 423741295 702351299 717177105 751849806 310726130 542471116 553644587 735232568 685515371 917837348 99807049 674323909 745503339 943229345 441781634 491684214 972803307 986528507 290915598 517568681 196078890 626183753 191885088 710489550 120993650 451087805 418979999 582703152 716568008 888209236 225241243 665046022 359896498 677341552 665512467 955722804 51966297 449688818 513365857 817018813 248732854 444788365 112060672 803678969 90913578 424287496 479114220 633812534 24932705 956751122 286124539 553222177 452443347 474067860 381966330 684444786 312286142 694354211 878349922 952502374 397851255 746197680 150461666 806380032 88245429 415453938 965753174 986398457 694631465 840658060 588650508 744559471 13808816 178625975 834306647 904741694 637093251 697999120 237176528 810291921 963840619 975075074 131951116 298061030 822026363 895692331 425060053 829477470 157618821 351924132 844089514 989374772 497828302 746290040 635463431 813006746 886055522 886526524 397084323 784021115 236005873 812390615 480749745 703215897 191896578 284081116 158250204 894908638 71425086 520976217 462060378 572431143 593955106 805360803 579644632 600532141 891666220 938058749 596254415 964999983 54440006 977096184 113574278 450195650 145885000 487598754 806216826 928767659 625284822 788101642 282373328 835475495 294141412 802685069 812540189 848069474 438012562 617290621 603470309 651083569 195760711 268262765 552597200 695298133 255129782 508918518 779599154 880859516 748673008 984915442 136065541 271360404 790803965 792622009 774363355 776421929 418670539 860011071 591592890 813314839 455134044 814210563 296513258 455122331 956300715 986044359 293414920 689928335 734200300 918005371 813090374 919775038 727726690 750543757 130046037 797456879 652272665 684874502 392703186 447784411 21322246 844219642 676911337 908428116 715270606 986206924 976746294 987751766 19724100 276836217 673239629 939914968 343437212 960498713 26341350 101983933 250444820 749357007 439686285 637960655 12267237 291570623 525830008 538610222 265876928 556698764 537781454 771768551 320596513 343518125 405529814 940619540 473015591 975950379 246965918 503180587 565518671 695783175 65719322 75727733 917719464 960410202 548948360 819582532 657224708 847991385 409249749 942512365 975914903 991620746 990354629 996186854 576116022 992423530 858815781 971092746 400263663 544706622 979777004 993276821 868586883 981572447 827192198 945617983 392846974 546968867 676831638 940094206 670579936 725634165 687915115 866593142 680112083 999773297 334276390 992412127 25640699 658216219 699363884 916455525 624134154 974434487 948120224 949263949 324931444 845106904 726315844 916899910 393846612 980774020 475120771 774727510 140163406 229729994 727926226 987512026 771238824 807246828 812035277 918782312 378520230 833615906 830374160 945628841 791317082 889295073 359597956 729319439 363967689 774083618 402062589 638552997 763655979 772749051 960546897 999271396 107185988 453321453 306348312 331313800 116480204 767811497 980070995 990124053 702545663 757876053 579895354 749689223 608934634 827650924 451956026 882870874 335630972 667172279 128565037 595007965 286430440 886644275 553726115 659503380 127525990 378585179 625479624 841421608 447022606 704905257 594258053 829030258 914408323 971040822 396216601 625818415 633181638 795309597 131874288 535229651 716494768 928182920 335276677 579093203 556722925 593063574 363851899 493980753 693309331 827768411 202263585 451560338 711150048 978699493 35662813 61581711 57080829 681103916 686460732 687219596 347831286 383035652 234219247 384933003 418778382 564859475 731177923 935512510 784351724 878391323 706244206 846515371 683844582 915260297 590485299 983106739 988895617 990291372 542254371 906990248 872118089 905673814 797955564 902665882 184820115 600768395 769045011 916728331 805805064 912254832 265276057 924236768 300053222 643756826 445972381 816426326 32365656 482797204 798064572 854349566 947130291 990927052 472597969 707596633 125540668 343160160 311795706 577370861 950324236 985149826 199686082 322754344 982582773 991258609 580168942 711581647 793455597 908758347 165353178 314687203 355282140 397746826 991326300 994285307 301614408 843581857 477435772 912244984 691286511 736084270 252388209 351631609 508015861 964903899 968611179 971421315 683045496 834295797 233474544 786628329 807653996 939077715 41832599 828290115 20291759 984159078 349754265 861852749 360103755 409283257 95362181 889568032 766464712 863789682 650393098 958718056 590274376 809654640 669039703 793198766 94904469 985007776 23976862 811873688 625270734 730220775 237784550 702222740 148054878 324733179 384818732 618192420 712297178 854655219 704710507 911540334 221402847 383997765 953135691 974097018 595701895 771233248 276922793 680566133 608675404 669674244 150280071 960566128 583469004 764581882 330175075 882522370 455104485 816221373 50196862 65946019 156963056 439978758 728487567 798595903 472329449 714915138 607275038 886472840 213577341 435764522 685628079 847016003 644194135 957712672 571488417 592819280 781788212 958178944 214123586 411986138 627036587 659460788 869506438 922408552 531812801 693777887 254212649 486761894 599472065 687209771 472772885 710496123 647223603 997999448 195932311 809360605 322190027 439600173 172366953 639767290 847097062 906233677 590223523 593685598 297340062 998533293 305514941 660971685 616368825 630580038 169391787 536892121 378487805 505260245 232651951 635824829 482120249 950748812 52546519 750397264 202084112 796726498 274351123 986668214 44637974 198345772 336771753 738684433 318348638 908501210 992502172 993294819 724474688 818757112 690914703 999656122 128964870 144504124 143669579 897529952 807019836 823762543 562853107 896926546 905302536 932936857 77407147 213041123 856422763 961054678 438614106 926323427 776114174 808244358 112967775 923897245 383039497 461734285 86042400 187272169 785274218 887275785 464584713 467557660 321759542 768359265 573695188 618570913 991003975 993942060 283138065 488510988 460291009 778973077 311889301 320037986 575664252 957190391 241415004 290701749 927867856 949920252 96293636 752918158 894031023 898481449 129965031 842654970 984322275 993153146 70389623 777810964 610012397 616748795 352387525 702741829 528293845 761209320 726913623 905546406 843901001 941847910 226666933 750140289 353516383 784070090 10665032 358182072 206505313 434502574 339190412 717805473 148139707 633178801 369891378 773586703 762006723 798325167 73645873 102061595 69657284 920406259 85825347 555391834 286943292 992550534 417162948 572527557 179961574 552045008 438593185 640392472 314188707 764009834 659243750 975029159 875692317 958176138 805452948 835790795 870409522 970423131 720857845 749196397 22266499 378045769 466173434 922742791 667303213 698492935 694616246 795088534 793181060 997807079 696597849 773494571 955826036 997958231 821444279 967593502 803324592 943853885 728712293 985663151 306263636 468838765 170965137 502443871 176773437 215355380 744397773 859504794 713813528 733759364 678132403 846307336 885658910 891753244 997777424 999775239 976279845 989915333 467668166 916282657 313458173 512035050 869095343 870947815 872220383 894233006 819114256 965042970 781938814 833552350 846743740 913048312 389140268 448515673 140479447 461473013 965490854 968957262 798682156 916984539 34439055 228463998 126162198 409205681 666271005 779447308 814305587 902271547 635946963 691501679 778292338 867947912 615399992 906367452 873341840 912676445 985024 280478553 424483060 864674191 157870269 508379588 173680140 542156555 124853393 951239967 176014777 344174036 992024085 996996679 629235702 976030349 87415345 160431632 571395886 949645332 11244883 916672922 417115181 458249459 403913956 752246155 861170839 881633317 559055398 687659713 523311557 864977861 455887888 935991937 384400423 422524760 321498843 357384481 345301618 643723508 157646060 660583272 153673298 955501817 436415255 842883684 91807967 519525154 98126546 233182039 60143173 578532281 372783609 375688050 870034938 987782942 108360636 219900862 354323392 775326266 60371447 587117442 355498094 965524732 875886258 915146791 622868042 917680812 833906108 935499626 687386970 802303658 533843704 922722249 396019087 823504790 481750408 753078481 74262384 856097854 173359836 250980260 570719964 924633929 631928349 803343732 935066801 968004841 897412317 957618667 544175915 665403579 171069739 188616960 437606804 942553032 904800750 913391664 442776626 640592369 506809592 576583924 727244443 959823798 101039285 819744833 209781406 276134749 589587536 720444266 669209172 683116056 196398780 613659717 216989653 467157659 357537928 377706511 592257926 917893540 880140278 998352499 706654267 784176394 910357266 952291726 656901733 917421611 957114099 994818912 401035216 897396226 326404015 911591076 366512343 973058210 913053559 931309863 380367522 988970102 75309315 727599508 493956566 551291618 696330662 807519555 419650358 724920406 19526607 212768680 435672933 563710794 991648562 996477122 635476878 800352048 117397423 184520149 582782118 642849267 93718557 853927462 237543315 809372915 281045659 871002668 904827908 998818318 649127532 651406314 969994743 978067010 330305480 486555791 338856938 736650224 265968987 277378581 969661736 979720910 487319385 822743597 61560025 674183228 264946548 961540125 822361573 926859031 466173480 542685050 224100349 558267207 533677085 734337855 673836932 909258329 851229252 875243985 215890298 437303203 552498957 812643845 978800322 994502445 530306836 609340179 540889604 658883436 742514780 931274917 385120057 667221445 85107224 713171004 522253699 692673288 262036145 790710101 488816718 745136405 584347878 965793972 477312664 715772134 217096328 959202379 29079144 178958555 647763877 835320595 639021462 859372584 913377086 941159376 472972227 957174922 687323867 767038552 309617526 932323789 817680586 896674864 246841119 572242569 230930642 255453845 873264664 911056525 230058196 869125235 694383608 831034745 625227200 758724470 793488975 945857736 653272140 982515892 604073105 648212414 433629238 563777870 24217474 28659516 929974743 977895178 332040800 364021452 334389208 743347352 32338051 979828557 894056116 922023673 945934858 976153078 820619562 952338221 157992524 982886733 924004802 995205479 544746416 703556821 56949299 134384244 810636485 990746825 173131774 694378034 771581129 806116437 923501428 951417242 973713371 984225254 57695180 93725921 682999734 728216187 277435509 299148844 883180587 945260482 119650685 657158766 88910458 602536033 761010490 959688151 559132748 596240932 1836607 901549034 229441590 541809690 862924404 888210829 714056217 826158098 125143106 683409389 735081875 809528659 759279528 918452226 187235387 597159269 882129243 917619812 60976308 933116599 317695962 730260856 531969693 746786737 283431957 426332169 947317248 955900207 464197567 539580129 840804446 995597842 671986861 851983676 43700834 643403224 503162184 740921993 928259747 934029390 732744513 875389172 910311978 949086065 176399355 256324199 293972608 336770370 953448099 962661099 686789814 857790616 867588947 921200310 36243104 535568337 807233157 970687192 408309511 847881719 277041510 998870864 986883750 999280292 558373626 761951673 903206673 949651270 380961022 673420495 301223176 470686225 94844652 937452501 261239071 432292698 731731435 945098096 698640178 790816931 777294884 873767706 402101336 972363549 322489157 350485011 652265419 899321983 619054105 742958686 55685611 216623150 160985099 303438068 285416496 918768291 184257521 933972475 866575824 923905650 614306146 942702319 55361413 779297066 206564578 951149157 707074873 966932994 609147957 694345308 664505906 960689591 59854842 195829692 536519129 931234104 499387787 631656011 649908469 868169990 886701690 891909590 983067656 992549754 951445536 985968771 679787690 713988751 294077740 894935982 727852328 968483519 64801937 620421885 326985014 654553242 130451916 458108559 390793171 528562116 331266829 896544571 911366442 919350178 565296192 846833799 695174912 844433419 832797231 887926101 659172969 719048033 329141125 330911071 284964346 819639809 429934657 487786611 761762144 797537726 99747460 597165523 641206234 717232379 634894923 868952148 813912527 953061739 718141421 843191190 56002790 322382618 524221090 635680732 245691699 772860660 142201880 424138203 143752963 701820844 607746443 767800810 740374201 875234657 332214832 975608850 80770120 260108107 908101755 955961017 330026885 640634460 426855130 846991600 786096773 947505796 82949688 133358087 229197912 909055096 998531923 999509449 816170836 825879388 520718894 817786656 75612089 963899841 262018186 308226770 158997632 192243037 872278554 927276041 176805889 718753728 894994108 980159195 739571608 827919306 410994656 762944270 436904413 727753067 839189334 907082433 684489990 749431486 565063348 761834522 155061666 598293889 962213900 970126973 881442484 890707460 531807991 871515146 920692085 974141924 789387023 799786338 131939286 687939895 387220020 474798310 424650558 683619045 22111436 78935942 542979687 612397238 157688591 967938061 138360142 759021110 354288641 778437921 233749331 568083119 818059052 963531199 550691195 773511024 275376024 383599167 934174979 952892784 409638866 611398496 489424340 753226108 944550908 967132351 710721300 744010834 547936058 950177546 241296523 271261621 544875000 841914377 88761075 500182809 980164083 995477578 12141880 581468664 94131363 841062370 371196877 630008230 529373213 947140828 21137077 802030615 804175811 978389543 166409729 467492044 741364469 788584235 499229636 908657763 408320735 534182126 429168497 694893513 713547402 999583297 109589705 989300833 191016436 525682093 883333327 970445720 864471357 890877615 363054721 680437712 916900951 978522324 67476749 652926602 233039352 692295308 388039768 918773163 868616496 909947635 277463674 593089647 757263628 975393236 269686774 816879235 205892936 237056790 588030162 838008276 26576584 291769730 448978171 947306777 886339727 904942719 756220184 956386582 226894049 970252718 231037831 547863488 271818173 615747434 64842508 980290590 490144485 751358472 389266831 865633225 936829208 966688447 165278010 742810013 53294735 517519231 340512890 850520617 340086694 577698199 486951372 857636693 741953093 804228625 106440162 317543956 524010116 736763217 964389646 968708569 867628487 867918489 673494682 913284292 670336051 780145560 816123907 888619860 419596832 530538409 885711796 910826695 660350998 966048745 79568818 799117224 930051162 982568065 17870085 194836645 417201678 890909433 898444987 940372742 117365108 868851398 759536338 859750224 446674619 645157005 919727444 932996527 231928625 967298905 118005333 952695744 806561229 916726366 470087819 510652164 8164090 575298596 620216394 732510275 885434382 926692746 612482492 725223635 226041776 989592021 697075945 995460997 767999333 805738091 457113851 959969545 128379060 281624684 242786582 745566075 609495357 912407625 565557328 652954915 808457588 846615081 720831592 732181784 352565107 859298602 382854619 663160676 226044205 377322606 537369493 552633468 25817155 152271252 714809593 930777810 41914101 182113899 738805838 836691725 681253552 925016810 731826846 972005605 286725423 400370764 838774822 903840663 905618024 934322600 825532405 846435942 168736851 277708122 389482225 425986020 46145098 654124641 967068980 987743357 164866935 579779592 524430945 840793366 166246913 256703141 527835521 946730484 914381529 957119228 690989880 706647795 319558276 981405002 461190721 680527807 33409891 53724517 788872053 853582044 996329989 997985151 316732525 900256272 529584086 719363256 863723308 951328376 999799162 999997124 215579349 581262062 381006052 572274953 729495673 788637632 276642233 835161772 120020037 355097329 759902591 927281988 859350645 919897150 823700045 961707153 444598973 845202268 375478082 458596972 269303689 710922373 120583375 374276257 558517606 993492050 367670108 441247245 270956028 636343018 626569676 770536076 293854745 415679954 481446463 669148612 321877240 559799232 626993590 698183968 795187683 840799510 551281945 975427731 39878542 834445593 927997673 933436644 362934494 458827352 876206375 938162707 894283876 971813790 250158489 720664146 449908544 636578332 613986150 618053445 836404669 853731997 94269254 571934910 223482379 441638882 509282297 537365565 826843520 992476021 96572862 291571787 569831801 703891705 645711069 851322115 429872972 462423846 918819233 990199983 933905355 954647163 230765830 989121775 222286889 370398949 203805415 766905549 866385081 970211585 870784087 873651414 481655769 594440195 269626541 796189009 163549376 252605472 730178307 741397091 430938857 724316364 319309975 436951321 512222807 803235851 533298668 812489245 713264825 866119940 574903221 750680089 768345573 867309521 386691843 620792070 883465749 888273080 512606751 614313749 652896735 992879001 33615559 132121492 27053018 589309485 154965062 864541721 80844673 954574135 748408565 922886069 445340341 546771058 150854133 498352530 224898549 710364142 793420889 967301117 728265800 939340943 885971799 921687282 401901076 422523405 568682577 820205403 287195754 328300682 479719128 833356132 757101228 950558755 832866791 878872862 3550142 870485369 53670616 88795118 409405870 716574267 166128663 305135245 984721468 996625326 285578800 601762975 372686796 700592682 920811152 998983478 491991970 595265013 80309723 288497977 352152416 943298913 911368239 940997094 768533761 821204519 159950356 932227690 544233027 805689513 182424654 544354646 632910323 678402125 259987092 848020909 470340457 720762086 324485174 441346880 940476129 947467241 702498384 749255127 473443316 743807491 277880989 732096105 749055851 822562244 107141231 519931334 638766382 667277397 467321714 944311125 836704644 966507211 845620731 955766488 948410591 949688042 521241675 981732522 729499270 919211315 219320057 960164241 369272228 819108524 290218761 850566468 607849254 892261987 337542169 751166841 248117259 290140089 8628889 760185601 422572668 697152866 625321398 842443601 743769754 961906044 43069771 877502930 50179369 577599147 675647355 764460293 507949143 603620101 664411293 867789945 570057054 920533150 977364866 996471973 572756432 598913193 157685215 765587059 420873100 768435514 229208876 959229407 51484785 774000913 462878101 647569516 87252152 635858230 699304332 747699798 488235146 499779357 974569711 992295066 14581449 546050771 930269899 950114341 876912102 889962339 405198743 954210458 414169833 786757425 844671541 893948563 123048482 976814478 861058452 931230970 75054924 566264257 799902050 947017372 630543939 783164001 238888564 971700972 985254490 991028910 969995077 984481771 921966308 938177890 878949719 974602568 995752033 998627030 521262752 623260944 206894569 754432772 861632663 971988845 790360634 947228102 507553786 739115885 70367075 775285845 460440707 614926419 229379117 468405475 449968579 701406301 586142407 904121262 833716297 958208175 384666162 407526473 54053543 642946000 351219795 938949572 861030449 877291154 163745947 208714310 412642056 959737369 114775881 642496744 101358560 862049523 471996909 616154115 19359216 328422917 612627332 916697938 750482973 776409073 34830197 238287075 612064605 814731871 813473752 910196259 77839870 585859718 451862175 833995514 473996507 602677588 382688281 436503588 721032440 799226796 643699823 844242166 850241780 914782546 736296315 789030004 53567718 498616562 823299012 920986003 664141725 900970781 890148553 922122802 220753452 456078794 667971771 759193109 424094572 813784333 26115473 348456760 14223660 580034457 962042003 972708951 876555457 924989461 957953414 965892624 966156865 995066373 465179148 876402382 951022788 952834234 644642663 753133712 835929845 953402969 567908361 892803925 821164663 913031849 625266 625136429 799934037 835238696 694975249 937272289 501114774 686499106 242301538 431212634 911803054 962713971 764461718 977702497 799431442 889654737 303388083 651374552 363327450 779780037 538556142 683652939 371640882 878953167 161792294 777493731 286779346 476941871 952218995 959543869 740773476 867198145 901757141 964755590 832053182 991969253 245285525 930072312 818549998 886751913 117146383 568970238 458255800 763105185 746834184 925625826 671890973 703198239 964712232 972057744 246909468 651206837 739350986 882220713 326605260 432636634 923580817 925780390 424376307 917086843 189642266 283859336 141796564 575388650 975442012 987685543 651820356 997961694 68131299 988713120 688111694 841531421 494674064 687365020 209463261 544807094 740999568 832309913 834461631 898647004 282004502 860826235 113197557 783400800 673451165 684529680 828490548 979245018 664283761 821545383 293082888 369889626 359955941 647515935 901066197 919240251 466415964 903255512 71994905 187159191 924706653 931411724 193699872 344091498 3534717 460128194 425860996 858543627 35067529 47818402 655624308 681303887 119075461 587105682 911877557 930040040 509095256 818448259 351775468 639723037 345986133 905621567 699964965 710494736 809268764 946950724 154911589 834387823 955269131 970026035 733753145 941738283 919641371 970041681 18539358 962544914 268016374 921590334 7528839 562648310 919917197 929387005 443721443 500849043 672065210 721116885 374378296 617910889 223237951 592524624 624268577 891459141 225756991 758174720 152314206 696354901 986274578 989449449 335805079 371191598 10802820 368477485 956084915 986839435 819969677 842711664 748357367 884109063 941641707 987514519 672463361 880683702 2104195 797024832 573576173 776613588 640323812 852530475 979540443 991732024 442611252 504113947 691322018 907018270 415816752 577760919 240915293 608585969 217167363 993774822 4234435 465137064 595553843 836215227 668061730 998217961 980244521 989051761 718319495 948800770 338137881 657005533 205025677 325705156 410618006 468377569 599855309 620514850 566914326 816381610 415352102 440396307 596692677 606096426 250056843 660944736 409251445 888588987 331455935 839707996 107738091 931185056 799359625 940490440 465550398 707810041 873068525 960874181 67283018 385241112 971699407 992658799 358787415 745457708 626390844 862503996 83565088 808413716 286691383 478631654 524693939 759500164 19853287 611054793 848861037 938932036 52936355 923080556 669990387 962075620 161291497 930241051 30110809 413861923 332319153 429898086 661124621 939078624 201925865 435063959 487755002 810306215 63413187 949550628 29531150 507885235 249788789 563813254 724268149 818593027 168141319 928962634 982028593 988671188 452427288 720131070 691580211 921404192 282660591 893444202 260072253 547567048 568154939 928106919 658209017 961950281 823952365 965269425 130398708 305145144 251084744 839467292 708951350 920340070 231754678 917185698 128904221 358513212 854611681 871056233 243304591 887404706 537965884 705910951 842665797 909897989 14259274 106373196 664169 99221809 319461315 994254354 268237567 316074607 658403148 953077489 706496215 720007431 819903488 864102978 389537999 696070579 444843538 996166218 369243407 541521446 309502512 950042355 606532171 921272093 201842652 507201061 397522127 819488465 835155110 863126182 918503398 969539355 102001658 370117253 869523505 929467258 192458092 613934119 132716663 404599736 980039401 999511189 309409308 925273222 994689042 998876138 152445406 570712095 979074099 989545892 885173148 923495481 581842473 637601444 942399679 982864568 592480005 759046052 600571272 629620888 968597510 994355294 696482049 740103598 277634011 493914764 147962268 938785460 72952590 861543645 797484657 853709407 712511350 826560528 961202838 994494299 710107041 935573224 518381671 883761947 444521097 502838750 177445271 506642661 649956114 973407727 6584061 656253212 797726546 947700803 409503853 811982918 184836639 615255593 181929610 400303098 560651027 635648592 41852068 740527131 728187691 745016143 13520556 949685253 410928692 750370514 115052885 529005344 799144014 885807071 73253808 905695144 139833991 466083608 710119354 788635594 975626256 983814283 156838156 948586654 521692459 657525795 757357550 828369573 896165845 936920956 545931561 741814271 138642563 481222850 146385817 629405380 631035513 964792022 984651872 999084608 337008294 480906414 604109207 624542077 797861617 982481534 151696900 662265166 999906474 999965473 821969099 842058566 251833482 314868412 829496648 843363401 567170504 693666560 128062988 551141055 20667549 98875461 815373629 896600600 516661754 556071021 78015792 486417477 724167984 731447931 63515476 382015024 853372841 993368773 757621327 828061862 895740545 923094115 652837147 924071257 696349982 920794264 597604463 692328487 704959571 866003496 959592337 965406955 64692270 932406441 980681548 987063702 160657491 437107294 247772573 875455042 781300066 884863774 466578683 853011500 718752653 744413885 688893164 766286809 277814702 870464270 887332567 904507751 328900280 780851039 995768775 996636113 593989427 729194922 621616236 957506175 855289279 991771318 125739412 632443091 918097314 935308471 452151553 689790957 419211824 842694641 397916144 628387836 72098179 484117905 270613086 891198436 284682986 634475402 178885465 941527798 9942817 528525180 235010790 564483714 106399442 227681885 632170775 911431725 737727129 863306301 974748046 993315055 810178096 992369072 817992623 971879193 302954977 484565473 9049813 46607822 500273620 796884769 616486481 683936631 107503650 326845587 458330989 586906075 902498034 909467524 156358784 283141274 321480475 764452129 733950183 772690724 82307332 187073911 474288867 695694652 200110162 737448276 898051220 984069219 381209627 475468905 707291483 929486024 184515460 658701356 622021136 914391603 792780406 821588181 52121181 948878314 987306321 988528353 345382292 812783846 216219082 240639766 636137294 977798156 589221166 609267876 695936050 976363840 213749966 559171008 614411835 874619043 240645234 402740874 140112239 937345340 177822588 314212422 39236328 649999217 677258923 750262031 197722908 881326294 31888901 74107521 968364463 997094128 787480294 876712141 252495138 683553925 702914980 795035007 779089053 954121981 426251080 758707187 687728876 926152247 782104668 869145862 593285066 782214816 133470481 554811919 222357849 545876034 667773326 790957047 307256050 770592354 227477958 638791095 155582088 209565588 258136411 993691484 224364967 302058077 365867566 578161083 892919314 984218502 588556442 711948572 909835961 924156935 25551895 122856859 73483678 670875229 843580678 921292065 476464011 636789640 538166271 699704334 745856047 952200903 695243185 759357020 838366718 891184339 507681143 607030215 771433195 855345494 506199663 629946983 250677761 498311152 416906243 478722946 573691193 909257697 170269736 268642393 921538703 929946494 206659854 336517554 426645015 835687090 302891073 346070052 280377719 357471258 467019278 669175514 212581871 247996434 166500524 494338662 388237335 554234415 961487983 984080457 917464703 965697120 336747912 790332054 201283341 504560192 378774060 468652399 345966033 537681166 215987778 645815684 485662720 846098775 716973132 981184534 82038954 840975235 874919606 986549720 92687409 169881287 970397259 989772646 530683089 981077303 618979891 855849159 399766773 716726985 223432302 525066867 692429115 746981172 93412427 482907174 960080745 998203147 992111599 993985922 99021029 804688662 962168822 980695734 265834453 564154822 157375950 272583552 279335824 785429835 236080812 453021937 792429863 946415947 21347440 329471644 943425276 978920270 597427844 717862527 688552465 888301023 697856029 943958384 423934330 500525704 647577906 803023922 868413437 953367776 222648784 271987189 886525301 994194224 545997731 627823733 523885306 843428345 539262658 953879634 582588090 910084931 464004072 665714643 106704161 419484222 907958304 975883868 154402207 166897924 729900249 821285523 795208310 931992760 47653710 283939171 199648995 317898141 808769666 945600656 696500835 935755536 208100523 724936197 29007683 57672985 719664088 961918370 241854457 538506412 927054019 935569844 210917619 374298970 939487285 969812107 535805868 747328856 448321824 704611751 382495731 915877908 889149084 957150843 4888679 904871817 149674058 828321722 214052646 405637783 179270459 511884484 915161899 948222725 900429997 920374289 720685471 887747615 134962031 380584009 192650698 438184562 716497980 877040253 433056530 967847242 844835645 856535800 341642548 800514357 357749174 845647938 550310733 755548220 852834019 963931507 497986579 962905221 228494212 346376226 336094218 716144884 778734902 847968171 212883192 938048796 121616048 158496579 924661921 980648696 834177963 846151480 202474061 438116003 789673042 950377065 429606104 810948062 203548975 206929462 367991453 451513589 291630246 709450708 876416457 968335591 200522400 872774596 835828831 845508670 802469057 863624410 970621923 996471636 645743555 671094198 939462008 969991513 591622674 769336382 613524342 998591412 968737059 991313066 815567858 819972137 857864659 986370239 857088710 926736349 393849051 837065854 913251457 992542923 76307276 198504785 489565022 804435017 795359111 832555710 218504152 804057627 105174172 594596235 284694815 656591137 17705630 382577060 259539719 764409299 379590119 741558732 748647277 751965535 87537299 483042474 601128536 762589856 955946120 976472646 650543994 957106540 538292287 852279041 804022150 828031878 799386507 992918447 975007926 982728640 805127970 837627862 312884084 538758804 131517215 530334091 602706964 634271504 834064380 849813579 205532693 780000281 913522969 999800958 194191962 348599517 345379310 865571676 688359188 882938960 819562327 986161968 493809507 874324116 878583316 884657764 161164434 565685894 171764286 374553457 288526725 621100238 496193720 697663811 66708801 642313287 397147956 681917620 146955176 262422176 221559131 673469661 534664834 597598003 705359994 825963148 303525839 488526858 651029948 993028493 443569385 851070358 514762806 775730064 751144317 964014999 501679170 572272677 956105316 963928987 49108220 142798507 245111534 767688772 799072390 979124183 297487846 526607519 592741851 966045041 205864098 423412288 941101280 948569008 380216829 948485771 295721685 561957971 702648616 707441077 838282152 842522246 605486523 907404697 422279694 794287420 898654316 943407834 754378692 998323890 430333632 887038954 497826079 733470012 38198394 286578043 117602263 629357190 681928810 685716060 42366882 809711192 727320388 835760088 650586697 723567836 182235488 788490577 367732639 709012250 717504170 844340397 964455510 998585441 28317611 71953079 943095079 993811304 938607712 946901609 797080009 944092801 543581917 960937425 760223300 835450427 183798874 269670660 352449664 408477101 911659700 954704060 538692345 608203054 912654043 974939901 726018911 906180107 474174804 843252768 951582473 991675971 754593910 799017358 416327871 498963673 328681879 819631680 338394027 712215437 453720549 612765467 965758913 966910857 170365625 185840626 949325013 985764552 551272002 810711522 867861220 973270401 839014343 842032634 479246663 982087146 24446363 469588790 189112718 568729844 62308705 927030649 6480234 448839831 607465286 812329883 430228667 774635881 436826704 742420271 141087057 984746135 648031262 870219629 895765570 954265879 522373454 956175936 640511869 836550041 493473561 618922118 50160003 391050856 900514425 926999850 527316516 823854502 792765005 901324748 429978949 730344996 566406338 688543849 366373898 462522971 731237364 871073006 351870838 981778869 297923699 692859440 605510771 611446063 963949479 986922438 440984746 491041497 760381840 988797357 751506567 830470740 308466384 722549259 466692046 802186203 955916896 987409942 125645224 608944019 286754810 419619923 483192507 897749141 705926323 948516537 946587536 987842123 134377098 669108528 571144514 642256695 217971712 852661801 505025963 920623576 128565306 482627862 963631759 972215535 839971052 895419847 793496243 847046451 271084598 371334788 485228929 927186458 391358309 915307622 859976423 965716704 786163638 828399825 770441744 829109904 114270262 441143754 841965090 912297546 119867092 509777845 949972096 956233872 136790498 915800103 178776582 930135416 620226598 860342891 573108153 775411099 426890801 443720398 973286840 995242084 253518235 561993813 420557405 632910769 532319499 622691597 771009245 840383687 828232813 885213472 899061748 996334670 713128401 771014340 214280108 765423336 69726790 917636271 272798198 588049431 79807978 321454389 83471679 491959970 328086756 697196563 990156940 994528133 138340668 377317693 837440966 993550273 693891437 951561212 603615630 626004079 397323723 646483994 642960443 973593321 845070237 998486540 187944681 334265567 925630304 953028446 87802192 566410409 337161040 951668492 483185525 952732226 493849190 727465715 201039180 736529898 26718325 183437584 863224461 932144089 648422252 925276196 304612461 399757526 121338258 819091794 346485861 689778165 456022290 518428205 151978685 921507743 591912772 885295853 591528651 966085935 266249144 644568110 5670269 842445167 119175578 421190525 619518137 758727499 292016380 847854210 232349298 442555180 698636727 897840906 379117307 910593451 268488468 576412985 853601229 887066399 78789061 855339336 978982723 993865610 259396687 425489566 406144554 501847851 557015357 751330885 29707196 909810020 430979039 626733146 826693208 892324048 321874471 850022465 677081957 877831523 749930990 843798803 705895601 873178036 212028279 908873610 741231846 816567052 942634663 968876541 24000542 432335305 31058667 902125183 410887606 804510693 380423288 852564420 9113565 913412058 360502268 598261684 770822339 971562645 931338407 969075019 412464808 757918511 727438446 914484778 783512716 943640809 3822980 132259137 711136055 771591318 120903253 363004939 425847121 755259664 960954922 966038381 862246222 899778687 258012648 833762540 677966143 761494866 621869298 957219734 689453879 921597310 84090361 414598799 858158871 970061276 50869001 533920921 257863998 801085646 539145090 870983709 175264734 225136582 661856954 949435664 828321061 831650139 582443082 741920362 557712034 591713772 320690042 838985779 963524728 978625973 914203376 947912387 17871915 721673148 936194428 954818870 134104653 797651724 118374681 400993385 513051464 690428330 292231986 731496292 735530353 787472642 844058959 888555406 832818353 921905323 533390869 821871165 316609371 673959103 988051956 989588624 695245561 818143059 86123032 732835506 435545983 901964867 811572403 841599689 843260899 995876302 46104421 139269218 405926455 898717708 191986689 987976532 167987542 227859751 187062904 829101355 241886296 249837958 562389026 663007320 727015167 739471613 279203541 287842796 264673515 387111410 516086628 571507997 794300309 992414466 99199139 239870779 468837868 887778859 693724473 768927383 839266985 907726598 718939749 963630537 159580007 302860628 237525176 303196336 166665764 233151857 821234384 945646988 972184696 997845300 55943310 806120510 80439160 910351132 961360287 968308266 236542439 719084234 220160011 666804990 541459246 794788674 704694855 936052329 384218114 958381985 922143302 942773735 674183130 930277373 737527428 793376185 440054858 634038339 784552718 901952586 432653762 812534428 868679730 902650857 454835316 693043009 622926199 980809859 621133675 963211127 163498477 279851817 144333165 247792312 199442616 381078592 364305416 996232012 73143332 280098111 567523872 751072299 456523831 657266629 984794521 988341954 579476812 784203944 523016321 658643697 528205745 984933892 823186454 827672929 378856738 764045678 864618893 903445560 697515181 784688815 753355353 817950757 177932772 643664278 601656786 894554664 570473532 837833246 68275895 408534061 945053312 983751013 960720096 995581051 239462992 531396937 682529444 698771935 391379474 918926780 624890955 881355629 958791366 959775260 49036326 389863983 232074308 236062457 615937090 753707655 603477107 662035877 903937395 994937773 978489239 996949138 47367757 997297891 190746864 303640389 217193654 979325547 298144715 395391924 821691491 974691519 969357759 982753251 951855657 979470751 640813671 784890192 416219907 670736197 410425099 529325053 389340840 960010371 739585468 786609711 988498176 998376872 601306384 732730420 41585000 936562716 332098132 439749359 793222090 821703489 754720672 777577691 824947134 909729560 995210164 995545026 923034796 977183562 288420106 924244942 749175742 793691661 576462514 679413190 779836227 900063813 944107905 984403122 683649963 694397638 602816213 786366165 246338860 485499011 390661163 640592370 853891650 872086091 972090779 998730576 712230624 758596478 989406076 996683925 402618693 425631998 290850750 354139389 227755952 665396112 847706772 885940343 955472149 977871838 715112777 896925821 968138630 981854989 215812301 219281315 735472110 741161047 361173466 540385816 261358633 991120543 103676695 647730525 710121707 854890458 303771315 663933698 486001842 756843212 436862480 510106679 25784714 169282741 417933847 682375490 377729417 465672910 56657470 951118940 945755233 952176630 487781110 585384258 400280641 473618921 893598695 907215019 213948841 777012470 453032284 612275591 389625765 662063124 844204587 924902642 793698516 958405120 675349224 895597915 809928718 976296363 261390325 785389511 433582036 457142533 900756673 952766283 928921863 929299276 82620533 189125222 287996289 408210751 223294712 305687720 494732918 524803117 192768495 824909716 215076709 387980396 742528540 821312082 266669710 553449507 675584414 815347831 950583737 971129952 479166751 995913785 130491727 152455520 320880279 920160407 740699439 798652250 353106959 756132941 335099230 418763331 187484439 520282856 903720142 910001438 252335446 769603093 628107946 840572798 931636905 939444321 182517828 741663588 995333142 996497126 492213241 519817186 823756983 867124207 891539859 984932110 860252670 987630166 924045186 956650916 917324781 980895313 955941016 968105318 225476320 853560895 289622736 911347645 74755062 500782912 499900262 550063061 226121956 825525334 918005108 946500045 691270121 974057145 886915228 960706487 301571696 390846162 458374983 479201518 753019277 855456996 425705696 543981943 926664905 961810538 460923715 603933758 355051198 824625456 565835426 867251673 695566666 903750400 656076001 656519047 883052494 948060526 714883541 943726630 402147177 934010512 362342496 949168656 9180262 827020727 81349613 801818768 450265695 831027374 748403428 956736409 583801963 945729716 716215966 907008992 271825238 894869184 565179704 620018192 451879048 808352369 185070050 669471742 711676217 825721518 505418129 998376091 63144109 442408982 141033549 999082793 281128910 332418258 443465600 732551563 915647020 982280299 379028284 863681349 226089919 325959011 411384564 823413822 581890115 917390994 491953844 963526564 871106878 916585136 296161895 306976520 141988889 462440825 637239785 787109990 660073942 745355076 156981304 315922250 310924008 327842980 23971367 421869683 534156772 598519729 952608814 957079004 140749037 718594396 599665354 735866056 751909559 864628152 857835059 983075803 105286993 855914298 679014452 993744179 145999016 158847277 720907065 909848341 732183384 755272227 921404574 940954062 871591387 896928369 832250895 944284024 85706178 216855048 847618224 998309201 341843424 753750272 935468398 937600588 942318768 954234321 809407361 839479466 132781495 402366480 323004223 467621598 252009505 521797301 654818350 673223619 842869418 983517744 989024463 997349434 856572864 892111202 888136954 980604476 707182390 821247359 610768752 715331417 974579972 999954593 925385521 987409039 891618406 993904221 84279282 111293888 400452500 916009552 496523707 862743161 413226157 972339032 709025603 965528671 923604500 956079389 970414981 979194409 465918273 501000199 501633131 951647815 912066818 945789193 999920131 999959529 942351200 959010800 562969003 813634201 189291820 399638163 197441143 719847404 929827430 986343491 594524834 764351251 968115280 990237400 781483878 811575710 32919671 788237292 746464126 954958905 717060590 965657602 297082342 897660177 800679839 921547793 615391258 772959378 157539929 214672788 306754001 962501037 640654144 905506551 401351869 827837939 772469456 811744214 572400597 585249295 169180684 828698962 228311494 858250739 582106125 732992228 767270216 851714806 891073371 961303085 949114551 973820254 352993806 473800812 64960000 130838120 796272556 881488943 828012332 943167179 734874181 866258228 631506058 950966442 103890589 559880146 972093103 989873555 889268301 974977004 702365802 862212276 143555486 544142726 626512021 646746539 447534373 803396513 475682228 857438460 375592340 869310812 449104132 705456355 125449733 608781041 37339761 703590860 467287233 501099872 149159017 665767019 947548906 952675855 88083052 414782774 251145963 643936934 914296248 962813204 386339271 872542857 69902316 153864669 7997094 310666701 595104037 772618261 401647660 661486662 714903215 897898741 956774471 960383471 752092499 943216872 147322285 239237868 424863165 714124457 345665004 784117564 352627747 918730273 116400945 666549229 52613665 234082151 570747194 842182719 120000522 683349275 385320065 768813588 500112901 639863645 484986203 731035007 378491118 614167866 542359825 750647401 921252636 997920106 558618882 692258331 673872074 706057379 545882129 785032316 976814406 985900572 903861532 953012581 676817909 999779951 498190622 987560611 512429923 942329863 642076822 903076408 876288152 954817106 895336807 900372412 738303134 979836369 130642526 624087573 804344962 985421701 209863867 688437997 612563361 728421840 539512091 941120309 564252939 600300650 439535380 675238239 223683202 255102937 48681343 388773218 453119309 955111915 362959840 738799277 313381896 571188892 729970212 881320908 886070552 932599782 19549990 189383734 948704023 949105764 482277741 825260642 538388247 763096542 21109277 88683382 115527346 478256685 243032711 291283370 143203475 544397511 228972377 701860328 163108975 767831469 968297502 977655212 395881890 602071324 7813818 827177398 729305335 746990172 453488272 881392293 529368011 806485399 438274703 456397109 861395086 928920570 847301637 996263216 641523687 788807709 133341319 671342724 486974179 701114258 605144187 635218662 195050285 945962089 879245810 999350907 246921218 996407549 751348152 959642055 956208054 979432120 387601811 518307356 740750098 843518409 537128119 864374012 235524172 759496085 53236427 955896138 333630570 590046635 773419978 875715412 578081176 833883460 452085900 801613210 925203892 983590222 780722267 801962462 934546784 967319966 158960247 643234659 409596060 632967554 113660990 367372426 874212828 971201716 119939434 326507790 954405181 962392440 729910867 905029337 66256762 145494057 518393162 620670699 621032814 670852082 786670312 873473614 519007793 769139204 1311934 174155037 963609708 974315980 170645636 825323488 854453448 971518402 726474041 879388000 427552062 785848262 807708602 845968636 947926690 986957567 43636801 897149898 356076475 482929707 676104662 902954253 211244573 306123279 998709096 999405744 735115960 986146158 661532227 676236304 404640615 865915045 428962799 993938758 491590317 817718994 736997501 873081608 319770660 463148664 755167105 807047034 229223152 606461871 216834974 547004532 278464123 940859337 779761457 991952321 434856287 767101128 856022882 998475203 308149032 944484452 726347474 851413531 711975669 798809365 528964106 986925411 103774394 869633417 966298765 972162751 442610483 859700370 35674683 486472637 716806820 902093044 793818188 979535840 839882842 913985452 925337659 954392357 107624510 985211827 318636242 721834390 768200765 843929091 555061026 790319332 934110192 935632191 25334167 604037529 911401863 986717598 1099351 395601993 251326191 547399519 605182046 623769634 441514335 510610571 173739516 563971541 148600725 688721806 794874480 989427449 863844462 958718434 965627083 975978741 388453587 778396737 420460170 785995659 745109726 986393974 966490041 981229740 200674121 751605013 694908952 820171108 843094993 858469679 253818494 727105284 476915385 496573171 973572267 985445242 790209920 921802831 319571519 854317123 625419956 808024074 208020084 676133958 199859102 668472256 673138319 823802772 946590088 994623436 478922473 494680046 454672126 989663016 351517529 396177655 89887464 589462021 619188984 831159858 856214396 900648146 50936082 70198500 38672990 403264066 25951191 232544300 589302905 983519070 487681349 561199696 296888520 645998429 700369382 710660303 263909994 604448533 415721299 544438524 253199136 325194717 56233637 458297825 944176307 998661383 517628428 743255818 241003461 447579467 655439836 750167440 242932214 488457076 172049651 847184283 608363455 858698559 382231923 710970458 118534341 938497014 701438787 759608301 965968793 972769056 690130450 946620659 576101662 757620497 63896565 499606715 91520804 428788070 706469458 880599054 748776448 980573794 878341059 913075499 252579148 604957738 117113047 123979204 416713448 536845911 711374230 952963146 962608317 994009598 360387638 934362954 239472277 359916806 580278564 783700831 428838957 651320545 183415711 916680831 850144327 976626366 715955715 938890173 994633014 996073811 395007662 861281478 931838970 957208845 160436334 439800546 817198652 874064194 231290481 906553885 344892740 622468659 360673477 476313573 79316716 878813989 536451659 553555531 923782014 950902627 922231106 988461580 19412514 568192294 520252757 923121141 925594583 946445798 233974842 925136656 455154357 990003580 488554134 916941135 4946417 893270397 351667349 669002802 540675301 930803842 78471488 329044756 471920958 656646706 376893193 897108296 792853640 939396116 961009435 997368652 626197995 981559138 934437946 948345070 82112488 816105285 297511404 333500943 574252700 815046868 467356669 572607048 655209044 781790471 938418549 955336059 33409221 557017470 781447773 953181923 81427187 494531230 43040315 716473112 761403616 893196141 900873296 914359358 294648316 873326091 712664852 739698067 741563183 778663552 675739763 682209491 127043472 493952587 690535215 723285936 206742376 937963322 7392933 614830811 124790224 843502453 779927607 922122252 964713484 991661894 575630561 807677324 701489048 709814093 325878574 367807346 887706321 929723706 930149605 948580989 214012337 383450785 547389655 643403259 283457183 991574090 110652463 305800151 92779200 198247362 127295072 515235182 991307607 999670039 779974816 827342998 659649994 830852615 288193127 293847600 888374249 956153034 747833256 969854687 293575848 385256660 70924909 942840399 741641552 980527948 321668744 567584615 815741657 843418888 672567294 966335477 888963543 891040590 51108651 315324835 904532781 995657651 389893719 404009814 668681570 888594763 224460778 880933791 606751056 963888756 130280932 772372245 139405061 524939286 383205721 787473735 223734496 807345928 444654396 831413665 26334604 420299160 379629705 872667634 241015978 985393576 468022065 814866490 166408829 391475161 869023707 966009826 955037220 995032416 393400119 596774027 643004967 737222243 366142459 466883333 21658197 978815664 794343933 796357346 136351819 379524604 360182323 889204153 194602365 263337781 659746118 848530261 386181111 545285468 817520368 844108543 753919336 790069646 804845418 895315989 542041763 888434954 80590624 963502839 694592439 921772701 576378480 860600629 288963784 556953212 303385992 915467113 847817023 967427836 777848658 793751571 273506138 899520483 763082678 891599716 303701619 340866275 961454699 961708370 537269138 627987832 611661176 804594114 306161705 574695308 106078046 941853883 774626909 826786955 411037877 776781254 582621179 735164957 598905544 808528489 550292337 967476427 719190756 998269446 51707533 368564694 227660480 609533216 569088481 773590349 253652642 398365533 584542628 682449381 645504422 851748547 941368220 968548012 158907061 908145144 795208659 913927511 140212068 583345666 310701598 541095890 395165868 432172756 525110453 844665161 369492251 548632273 642682274 861399310 33535369 435566342 577666653 675826596 996548640 999671399 902451532 938554814 972988008 974929383 206617150 773780669 783809134 979911914 459407012 869814786 517548354 706463123 764849582 826824781 261847433 773022901 890989078 905191358 34206197 357055796 387493426 641261503 689289943 972468153 994327293 997968390 838996705 921896967 375353129 613476682 928099137 953697865 364776626 890147182 899855672 984047606 752952699 856071143 163701189 564327804 628892600 643117486 148135805 555993211 777230778 815774999 81061541 883015705 174139721 863502984 712169904 715423033 100466504 842515436 645889817 770880771 680127008 966084233 512960934 599683598 754610559 906696817 529989243 993133117 968253314 999098487 122065836 736853284 102898249 363497625 194182757 483246251 565492259 874555826 248013834 324907858 325848828 990540631 984042869 984411395 232497661 335220837 566108180 593546867 913322651 953594002 956441633 972924292 460874942 616605843 900475542 979268325 865726498 953325557 731016477 980536457 329505067 863916829 895092875 991211965 196564222 270202777 519236825 961386254 165542730 524820421 819591646 826321447 676298316 933750479 237445451 387278955 281376208 443766477 580307553 598386718 454910505 926411331 578393085 851594825 541574554 542984683 304222667 811680511 300343820 629373801 428729082 513175818 797625693 975570384 23752080 742499905 973795457 997703913 613734822 979301369 84624189 625301398 374171769 721810884 806646087 979526552 769533324 782901087 144098789 576420484 802744572 949615697 387450822 830244125 927459159 954717271 101127481 444292580 844396651 866232386 27458847 931142998 485621419 677402449 491802703 882781812 744513575 974638134 881740270 999519183 765929499 888806738 208327547 389500443 679481072 918687579 984453830 989747430 428160572 938714749 600217454 988508792 235180141 912424237 577883911 767827785 975771192 984602127 327920603 701359165 79292559 684609891 745017288 927058826 435764897 606289112 48924272 69599331 535500899 583105345 747213609 926927131 736568981 965892798 456992029 750915053 671272149 800582550 870058165 942482929 675224849 996462602 738558595 844303329 295913751 740053171 976469561 979082056 257647554 604135691 424601677 448561303 718886008 840144902 516172418 759067623 706904452 768353551 666644063 714441349 983594045 993314791 424051896 427157878 698457165 859099353 830647276 895300150 66046919 237844855 669410813 769247298 955066387 968336381 758731521 989322277 4491789 115798160 855169659 878374649 965626923 984865741 558755273 768361161 364935641 691887673 217332815 845664790 721951325 828660711 116884881 901775955 410158175 737958547 685561613 829006301 877108308 936751344 65142014 164319187 34305831 965941003 335093952 976838129 293225996 418940486 966695735 996615558 440788791 459285851 696076342 889625213 925035976 985725933 212996756 710476593 696493047 826401361 337569673 768950171 61929972 93716037 260688930 502938102 752677756 976186336 934206623 974141710 749163701 964886658 916908452 969096744 89503899 695637382 814253813 876931768 993748494 997329841 985206295 986414854 753981288 892733225 879268519 994958229 697414218 763102350 200307053 934601241 146998571 923842830 651110753 963917208 377099652 732802405 90716954 424102565 629739362 820821862 472659463 633740826 646771632 740859972 842113092 878752843 25935755 589409879 61029628 905823867 397761546 860603598 682605025 745603513 534485616 687621183 455464463 636581213 213137264 530117760 663728024 995180945 845533224 971823201 199247904 264082953 848888275 955527257 340487103 603042615 515678569 621669638 30399128 410960404 985766124 993649846 539486632 991102187 878641662 894258284 815962865 950017701 642888346 920392380 535654776 728721653 298290159 939227625 298559619 475304956 648132760 932471676 273586815 739747352 600065192 946146741 112792524 443131019 164085229 903509883 216039397 842416660 677398810 914307966 371117902 909990114 324211731 712282651 179118942 997655747 269747548 432734587 880200682 902848039 249018568 587642199 516427248 713812491 379907163 604776846 313596522 677524572 323710400 678706088 522791149 598262617 944477960 973453271 146892518 460327298 573601390 804074368 633715907 945151323 949308045 974544666 407182916 706525320 567724148 792272223 419146500 581682451 339461628 735647228 456212619 960074907 280062451 291571211 910671772 911901547 525352832 608050107 133256826 407924810 156041922 579901668 712564187 819256938 437557669 888762299 419645095 458187777 474543863 683312305 677474230 903908702 516400432 829302028 865684447 979583074 372968624 547896164 923466408 946707459 654160750 962853485 978616268 992266047 52307765 304897249 632881806 744142134 902260895 972236594 231266033 291146256 729176743 954091782 798388429 896238154 130630102 476572978 393733756 754073069 467776688 790282338 157054910 188770007 862155001 937314733 748609151 847882206 725028075 783549296 138190080 195149374 192374284 592501396 669358202 750525726 740491412 984262131 859002532 957067339 297780893 489502057 511490551 956218087 779334703 798746099 104769412 429860894 954025893 987739172 216896660 635109531 452305044 713853548 451992449 868640359 244142120 966276228 114289086 291142026 798378753 806238392 848057139 848372434 402063908 586130091 849945164 856029446 885508616 933861250 906935405 955691001 788839050 914200106 424637478 462087923 430469640 781334161 708597719 759658872 84344291 759634083 349350488 614341570 694241281 932297010 498464112 514379058 386987657 707751202 168420569 887468517 368753693 770241842 381201474 458112112 780810506 865695889 924729643 996789980 126500252 970068732 976668196 977020103 563988790 923168855 905736934 994253357 286017732 644302674 744233400 968753339 376516556 873715434 187620016 511126230 609524762 838079420 293824013 705785641 780767726 902907711 171303756 693924065 396792178 493281147 830279595 904880989 949131093 999485399 675466705 820657925 138763402 499194549 809088002 898025725 343679607 710909299 162266980 611060372 376397746 841511879 916552247 929487296 545277697 607519995 472687510 611416356 986832550 987040316 290512877 645083823 589164750 818637161 877467820 973819933 705774363 892489535 769340547 916583871 789239500 947467352 673434486 698382827 978595734 995666180 432204306 475164018 869063730 938477773 639623882 789909271 222049037 670826645 877900624 990573475 81675948 713712149 39581300 105643186 643785458 896053961 521966328 835383957 448845165 505814641 331739619 480510772 929873242 948158662 452380597 667887279 893149938 894527802 642323855 999275841 918876553 977620930 78735654 388522126 517453449 969278849 239389465 580603139 239445767 836731419 60143270 905810487 232937850 938716565 390191279 637157608 575468992 830978170 41031019 347779358 199505311 687743531 259267542 280820038 553856638 698514215 65771952 972943231 959255658 970746057 705056296 985771728 465772227 997514273 541920697 742310010 215602955 350091136 301246930 720066160 591857973 659282470 180028781 928219723 917162665 978416899 643461656 899625881 481744254 492261116 388208268 797246235 367075837 368245243 97509855 134374543 93195950 799402296 802329382 868395297 881765175 907594722 552535964 986538027 857952808 940530670 387389883 776790077 70014938 539470945 693706785 914798114 638861752 805207158 331485464 983121102 967917357 988963083 266035537 329142098 334984033 887989716 685129419 819414882 276645207 464126457 670547351 697546034 526099655 703420121 55853375 476241307 103499676 513548371 55640562 923863737 317718634 713123423 578493463 855376653 500844074 664847859 158845077 315024676 973811038 984876534 268884596 873464879 864815358 881676499 457672419 587060340 949077053 979049893 696511342 701469056 713901427 789856624 740788759 894716646 24080833 787445414 96916823 289224192 104614875 175897888 873012998 976039663 688983018 893659793 597058824 994864325 102730123 283885328 415734087 714783195 472073102 659898028 985498149 985846683 173546340 563036360 110449681 411970662 325510375 669057934 619549693 718964445 969392397 993901770 856900057 983789387 121822593 871625971 573296849 849383840 678052645 825685571 872335818 978039998 792048810 915627611 652719866 770966743 18426480 354283570 848709380 871443152 834343932 965140729 80906722 99477507 442039312 698023292 333864691 891896348 606087462 968723010 765903567 905089089 351648469 426085912 442000183 464285481 243561746 640081492 280150697 906631397 645659336 919963658 941546305 991762364 335678620 952614368 49757060 903743418 171340310 967856001 515028453 780406808 266316225 958875724 935245229 963266873 350757908 646861206 68366938 157334576 160447537 964618359 524557140 648926500 862861757 961509021 63376589 344409648 784737771 969222764 339050339 493499790 308352916 604210271 351111391 773263135 411805391 423551074 906762690 989347321 10433391 471172010 249456249 400036203 37614538 406765202 958672435 963283153 76115779 386668864 398758918 879588771 471387984 740695025 338597253 919223095 1677182 787239591 401772563 832475176 119878046 434071481 313654063 929697971 209034540 756204280 647336311 696243620 386487583 802103314 66158201 544300838 957133273 970511476 567507809 826224171 463388101 946693511 767856886 812379246 898171286 938277675 372410449 452582072 895072391 965789787 251546776 726138061 525553145 750879430 687481792 697262084 539300138 572900666 503848080 712425406 103305522 393896357 813970970 898119888 636523787 826700568 337178932 748686692 128246018 388909981 584361141 728161883 582789637 632885285 788320801 960360186 766663502 783369733 163802872 927286403 131312231 195968365 525912707 702933549 266702579 524486434 311068299 552211166 489427693 714221758 688440246 826427337 683657106 831012953 745756815 809847874 257766237 559902672 215731138 244491378 675156212 966158433 632740868 963438867 972628912 990544278 435781576 586290876 254670717 647666744 223754071 677237193 299798174 321541686 27663577 573897884 334231959 409733878 144479402 163610698 881258437 911953083 520089490 937746483 209157771 464704268 652440850 971616670 639249462 897966587 415124771 994668220 725020493 871133577 380121035 529400639 338807064 512737657 433822518 725195378 463962001 549531080 966198029 986667573 100794293 922349775 750548638 948980064 664803606 931728147 304387061 679661660 375176613 894400332 926849833 968317284 480450166 604000320 190103821 559121934 266463854 676020901 577305479 669735635 754055587 889068149 787665688 919794608 646661109 666700888 675448161 889068132 728563924 998735512 655044887 898766123 233721499 649711698 707715238 845577297 859164432 920312259 199541990 841907054 409323000 562857310 320832872 582926100 535379430 696637268 372049646 857496591 201611474 861143209 277209846 316972285 785328487 919501372 541266958 637428517 94061485 950556479 472006470 630771499 171747558 530996302 579304604 751557597 385347498 411092170 183779711 242053353 303743271 912164354 917280927 989768167 17257519 282737411 213900576 302416646 270573252 964335624 642207263 926879081 161311286 174627991 452761874 776086172 782452077 991477327 393424069 399823981 273237345 327178999 204214079 832049770 437037027 528483584 258392790 302081064 966351829 969682279 530312650 837738236 40216777 778093998 585086428 877553946 327883292 679676532 399139325 428299808 464063304 845092758 830733702 903410896 468334785 730933559 655151511 747357254 274638336 628573636 469489774 538291225 938263208 975751841 931221212 989549353 376656618 690430887 345519131 568802529 974202383 986959945 295976987 860814457 433995693 576166334 8128275 425250506 531332493 675759409 338381488 547725459 643701843 887645424 637673617 746255391 220870122 908729438 76476652 457158936 65765634 584203182 129299281 137548232 581066416 620695352 335138720 768273967 136100951 454337778 22018807 878435198 752240065 877760573 442983651 475702925 124136880 265600824 71058620 877353158 716591250 835437190 264076119 380022149 44513771 933091435 723623008 760341151 499102607 777103942 620837166 641058198 916757613 997589306 882305120 960701471 933216478 959090585 392193006 539095944 359481371 480701302 74907191 272835271 967535692 985879409 786307564 944019929 466863290 772157662 407490478 650116444 456448800 984172704 724320173 889737456 21926378 87768438 725748152 986369380 733415923 777648768 847045637 869773164 184357561 517069020 408131159 722384532 204569564 286894241 703010189 954646378 572028224 625390538 961231340 999606993 413929410 584149583 104898870 207339443 160993397 468012091 238998966 267777931 878767432 958494645 900727401 974307450 326320051 735135478 126710729 496521478 392052477 773711178 214494664 929284899 844798187 847386437 345666811 896933069 64027422 193602183 875377991 907925800 200809004 910814266 441548632 689335303 420051896 794515226 972314045 995424349 53818224 779800971 400011177 451896226 2680887 390460975 831623176 936656111 883451265 911399793 785059769 799914891 154921993 444818552 212886162 775682971 856912744 921453324 443675934 684281696 465809239 678991653 187723432 555458185 923876528 940823033 813153675 870824067 827338000 836664167 606629210 810601758 249011505 762945776 246652400 589337663 607305771 915541739 61010242 376252012 292579479 430671275 846456846 930953100 424013968 835342177 770548457 909931925 921796803 999052176 654447248 882831528 526955485 905204272 698188624 757402838 341021479 938830971 301058057 765183271 405984389 738204434 126089708 339101378 467853386 550275672 385623796 861386306 409859730 973806264 813501091 881419254 225046363 741604723 899889132 906297416 455255816 698793993 798155820 960021737 599885632 950019050 146371578 513464246 705122661 888189429 435020140 907959042 261833291 375428297 629262161 746936424 418027948 910357212 665873008 681954216 937836178 969347707 82612436 623734306 678517759 953130726 149461820 920606307 972021945 994242642 368250194 393533863 233190953 580052574 751001174 960003241 966626097 988838441 529873666 851011483 735999652 744345846 228521726 685878146 6155400 457771558 230234439 701028164 378038388 962447214 91578471 229649997 987683217 999364551 442309824 703881843 249199098 378288724 995737039 996325525 339433475 583830731 308003097 587603145 718822513 779363050 136920451 824629290 304691875 669602476 984664231 996821104 965291120 968424454 972989102 974158035 826401772 845584828 341075406 863640889 87191597 581005043 438772274 440684392 230348447 429418607 631275024 910438151 958133344 967218161 136875474 241361551 875814884 955664650 179102338 722235233 810153485 883496060 907679800 969778760 742743953 775456228 973902161 986144453 873009699 894216661 825023878 923177926 851435482 944977597 523998800 584772893 854752581 968571534 439804099 990024959 775597771 860144253 765319948 942537106 295282949 950066479 130942648 399749109 568080931 834613161 556849751 576618913 858520189 940940471 259777310 781235064 434927739 489117115 922252945 968465598 365586651 961313103 384382230 398744917 583584942 914073204 841106784 935094043 298507599 799132216 862103536 929872459 759933486 917555282 938358032 999619706 407224045 959382235 33977324 133809511 989266545 992933884 804712540 920969441 785225272 988642193 32695691 651978961 600292588 821036805 152036171 743133599 493470018 988477111 334143209 734049047 597917380 599417677 828699277 852159971 411479776 734086055 569055223 767088510 418612866 421492336 776820931 966104106 122967937 128756783 18531843 590605114 433398411 689277206 591168308 881099506 983907696 998113517 48598551 678746128 60187361 583123771 667256777 774862810 876408089 986223464 48600378 145643494 472468267 683991920 426211975 860323469 172664295 464722777 845461715 940124682 681257162 993584816 13167456 902306487 394088597 597625330 928357352 938518802 662543052 697605821 902521835 917806561 70252133 935827144 725429351 895396773 289770435 722002669 447628391 618425959 225096190 473344056 6036658 832334175 625751924 947737057 147893579 191737391 980061231 985728492 515854371 638088773 428476621 721235062 698346485 753706308 313310275 527851667 917639930 933157101 457888008 820521755 936493948 997566924 23457812 209830918 22684828 956149962 875957059 908257032 658599399 710852819 185216322 757492822 792992186 883982687 581302876 725981878 524683394 808777439 66363372 355315494 862752478 927956407 622020088 641359591 967176561 989616233 910712091 980042422 151778515 161933869 395641827 598643445 63682519 736739555 955822475 979876671 199789667 226594866 945000536 947728106 883608436 885147159 515522068 711711987 936579443 999934315 631865479 943053033 220368600 701762336 220730732 512469725 627553989 885612245 875256560 915722320 788611030 870780604 735637044 860560627 508397738 892218965 652220109 666161113 478557878 586391888 812300561 885466565 979513719 998455053 85069256 103088479 552518769 674327123 458743623 868234127 897238764 907388333 774170789 896298653 445805742 903393594 381484240 912002014 859107151 989859504 262112378 277928331 508805434 949879543 543023102 723524590 550959588 987646268 113161874 872676343 154611256 514939060 377192659 518253235 954957561 975756405 273079952 316790600 349534585 555572967 629635943 861572891 52044298 570620318 129791947 565836374 219284020 802226774 713004193 732185945 194498332 501678392 823172983 967895151 838999082 982129767 230821093 454407332 861086249 919512713 213308626 761452165 350658744 629435417 167961633 461336178 378457557 668474116 947908873 954308895 606867694 831970633 708787004 897951060 792135045 924704847 1128885 179033752 24997944 958520666 451057837 505722848 538454200 711115731 220203870 268942397 559451921 837814599 662686191 759907312 467683214 898105555 63288941 818637602 420926620 647655416 347871521 593302584 750796113 898750195 52780220 118818052 74717672 679556677 732033349 789615046 857307367 979076733 962408572 964398889 728269765 858790875 35006259 715338846 487342999 940031869 213761901 498077815 503658251 860589342 13181978 781201637 936841250 951124777 875162370 958236569 424275351 896167077 138087883 825978456 867499286 986584883 166959455 484067545 799681757 880922324 85317409 693410472 143036555 256470296 33557174 127526319 920860269 973158578 825383996 937884199 859782070 923684343 226383402 837996184 503093193 794864108 334962320 763852054 802127178 966238950 136593069 832727767 721327857 928268244 240679648 751313035 131877523 154887219 305640182 730772781 550814046 811572774 723185429 921836793 163312564 259623844 672074400 815191927 34547933 873584311 220930256 709988596 389981229 710121506 823587459 900226214 406079081 728003525 315388783 348904635 964092864 981698415 277361262 798430152 898980422 926638506 215838163 456435088 322859255 982733922 380810427 504390622 994400681 999499914 484061538 602217134 733001253 738906401 255529597 366867314 562727226 928329215 462030746 672573051 865444343 973852336 305860092 441147955 880585023 898263905 447489036 799683599 666650746 714125173 838401985 914544980 997091225 998783095 144661340 608888859 31921182 444037629 756720177 929483875 132414262 457221804 211590770 350988391 540346664 610715365 163317285 727289151 696404402 735039546 487977644 563595689 519482322 774461231 417478190 502855637 536076434 795865236 1405426 665032005 389097122 837262716 91621720 719699328 852650675 905622603 418436499 991387902 346282986 364082971 895275502 896591501 462263286 586522133 851191068 914318990 431348461 475579724 773710103 926486630 578473099 898361517 504857822 948019949 202370134 397559207 72092246 605494280 232443795 830478742 885948668 928858733 724694287 827398764 474775096 650814964 723624696 856632715 169013571 517983407 246752987 943471955 311984393 335338748 535949652 623436999 274070191 785025905 864587658 917575559 485681968 857363853 63712818 155259335 699144599 978516937 161977127 959324351 276170341 935863194 123351829 891832313 174108171 753088567 503344426 985038396 298858057 418058362 478280371 991874858 367763602 387684519 397033102 464504092 26892891 894296799 609757185 645947045 980826122 984097579 835813929 857229228 501897453 942511264 770083241 824684565 794491475 965496422 660750790 781954010 579417257 585014357 463018766 571682465 71414192 785931080 529658066 886802204 181278262 670402026 100305322 902554081 385530165 735842185 940071578 976561761 827511787 898214845 545796052 969803899 906282368 960875135 305955427 333311175 798055131 988619147 637938460 897485467 820056949 869056022 969657544 993439766 194604873 504241963 292683648 383064144 758478982 857945963 180310624 938908880 493897509 860605412 415266772 720875704 47630302 872812725 178883355 248338929 703744475 996896134 719204232 879844860 466546599 903742061 360623536 887234273 780964083 901343504 326427011 594359644 194304026 855692949 782301736 850443337 637770971 762884837 233328637 503530138 335543995 951209491 125897245 150752031 376052821 525738570 111962981 565442964 188842832 559764063 22333790 584380694 528355142 869457145 93103624 120261573 668105500 731586966 274139087 933866248 653114693 977388840 537406415 993740005 395909518 598020640 540463438 595645171 883620061 893623803 6140683 169177724 254090071 572795791 992188438 996444715 148698225 410232347 924812960 982157461 48350897 780268101 627849628 696474100 583533235 670211261 22663682 952593931 539355819 609308189 946424696 964276928 575079645 669877762 348104276 928097744 370359649 383961405 368175122 889959700 920143122 997002966 327727255 517709597 164688982 554835819 286125687 839684596 75035487 940965036 258042719 633482841 740332745 930134758 559197872 983866003 922917711 951742786 38625009 196829033 49985536 965288531 370722184 775741737 70980562 528637211 948507452 993174071 874974459 946406390 514019310 811909046 328363493 919516086 981891371 996646136 107299454 156326526 143392427 241193255 157158612 386054989 663098806 685418561 267270350 753913422 465079902 766958946 658801525 953897745 573284282 752491047 735204684 833745434 685023378 781911663 47435397 855189072 495029022 883699639 209903514 659463576 496381011 971725603 751706705 875134266 356292791 501903475 593812198 959042242 52399342 287923122 112496792 479003064 727148957 944439115 527501764 604314289 169214103 530985495 498888278 519880592 161447366 435146046 943467472 968177908 382699012 715894191 783285711 990000777 3250979 518305848 334194931 752934796 388295235 840530305 870379589 981934977 465731296 497333885 843665334 924215751 787012517 914154265 352613157 463637123 262787026 634796246 29090682 736229765 232118396 746864819 59768040 890497094 601681885 625988543 151336988 659829658 528659129 657356556 881747011 940717820 235086709 849282969 614912660 914484423 724237487 738034253 101988213 662946686 477729144 760778098 567167318 692216359 290690937 619478475 52887975 461475107 459597608 935783137 450919409 941018908 675998972 842706062 212259631 229585550 944672600 966442239 889526553 974209964 997287151 999619277 282012842 740297920 16286371 234506841 427114350 473168836 610931943 757181092 114477478 582001508 864620040 912708015 354622858 380714892 628235203 652402244 977570076 993460664 770595833 983206507 286875896 321054456 314063177 995039362 400118725 425796083 41976428 454457902 524319773 657015458 279500940 304708268 424314593 428036254 833137996 846316253 758797299 903744108 396604917 418090279 777787174 901957407 430454550 516565282 206714305 218711528 453861784 937035682 27168550 453732724 185604026 950009372 275142436 379473329 403866359 553404345 139226003 868932196 123954229 466661892 772014543 914992990 234854800 318688221 524071212 721275473 731515009 917145904 764389049 967633379 730555213 837588034 727352907 885532118 712703307 936086948 392686900 519576859 304768546 530426645 277841783 481468030 246977274 411956493 287967138 413595749 608970895 653699320 592460888 971126062 701106691 892621732 556069396 810516087 881902604 896886861 205441609 670851653 301610527 629415542 348387993 426304074 106911339 816631741 214344261 302206068 355140723 787102027 406720264 584146399 454147618 652842828 708192260 930120915 206829446 964509655 744340279 960510832 589797637 937854636 94726938 382673318 546449889 706876132 629365657 651068161 399728214 403357106 979294215 998852339 822324362 871569668 755652059 794782221 390326299 920513053 608695136 792158056 156499816 894858497 108263473 916762722 849664909 883386213 983066789 999588308 737959915 919633391 687857077 890408962 426247314 442231917 560203596 636799189 778973683 837120740 308609889 422233771 500147570 850640363 547314322 655159220 401638006 602643787 645358974 903415207 14233102 738679186 880822185 912564095 372970359 521856917 482873591 503556828 622212539 681788027 513953392 662288074 351694966 485937602 505736266 755018692 377556957 418771304 175262271 956236507 262371991 988223894 951043564 955754069 287158100 951017131 794529055 911993930 607759838 885297979 95580391 583842589 446325843 515061362 621800862 834965038 297428526 612702296 971241629 984021268 71171612 497991340 315998480 323751898 666999803 790866894 947934482 999022322 126635049 831772394 465256993 930462729 332542678 662350961 19701804 465520276 102165880 874652162 77037711 924542437 929723469 988421587 863444874 864149621 620468487 784625296 685013390 788633999 86811388 448804553 481526442 975015728 924951592 937032479 107698028 970376132 49428396 932086798 730815405 986817593 743609895 888705989 711033613 926054299 875070792 990974011 362644726 654233216 842208938 919941915 165229893 961771264 446538680 666668985 324838419 754629165 94190740 685085762 20470024 330604293 960900959 968428664 533553597 612552752 652775926 929203508 430681355 777021786 776327937 855807457 528191820 947374246 83128939 846574933 939107640 999476232 495320549 526829287 655886819 922458982 268581434 293736765 765139291 820819420 964112547 980708813 480519102 740483609 217900210 345200821 281976816 742082198 121518295 153762701 867904179 915162547 498870671 705410676 467142175 950711578 371390478 841215921 19633261 838210138 4269488 807343142 891502666 983597514 895166939 997382406 500038120 718847048 465311202 945925699 456176273 781226270 635475232 729485893 752119759 968849371 57763198 922685741 345337093 956103711 569117175 687424731 521698557 729983884 768019078 995168449 945054106 991737478 255172406 461022261 642858210 900377700 645878059 859306956 524276529 853677248 68209321 485874240 698203072 840025381 179350488 978323532 460437964 806291446 919134599 994387727 989598057 991679806 369450592 795074036 847803725 913211188 800666489 964565183 912257222 961863378 881876668 898181372 937741726 997293552 619073646 968254935 125676078 958384715 972322922 987321795 757020144 852700823 514998692 637248174 235092142 256926020 963618756 978193681 356785186 469702172 1603826 804064966 509889605 812154841 592039604 650378380 169380359 187289983 703081847 936685770 856066534 906953512 971247660 981177460 492499762 639616460 870155378 994273951 7612275 701376519 602385188 618292590 708892993 954053360 824121384 908545325 644038260 721795642 506732132 829692231 875383528 937294089 438725329 892638747 368949661 776182905 942341613 980506146 905627220 995196018 930346943 962041900 24155681 35091385 800634143 935502658 216270525 600059637 17865586 573795955 517519807 973272920 923585564 934417876 437867323 988536651 305654715 615447705 784955850 866309363 565851584 687532275 748187756 769417126 468572406 549294685 957768887 971819450 728880852 861850963 823217496 858954755 82894452 100383833 146736887 884374704 779394076 840720896 658025324 817091213 434088985 921104992 218636122 297364635 244300798 990051274 686090373 970468759 121763177 575483810 202334960 438542159 348021097 962204091 246838642 434177268 796182105 987031508 681539046 851811348 994843107 996680692 869939536 974097219 994576407 998742092 653952711 940862562 534626122 858898205 365008793 817441919 441417 801693382 157851595 733896195 983976441 998910770 525479726 528956462 328372850 710245645 101532209 449361989 876713677 958699219 162829056 664235762 101196908 847714922 563050588 829625643 236336737 823237304 789552384 993480396 896289683 970479900 895514678 987772126 219916701 282776125 471480933 926769711 156500974 287487169 12698949 129999775 807991750 916523274 620253406 820519821 273865502 843454508 496238745 938167461 808704591 834508065 768089846 822081108 943306746 973391018 660055417 780741896 289839126 840051701 676467971 679359726 156756460 398665930 998710390 998857288 55153524 237901782 989541223 993717326 375633614 565825187 499365367 916998333 831309893 835318733 354394018 813305544 260846779 865936626 522779963 582646287 856047390 933781483 697151586 990066469 637472092 762198970 91198805 148714752 393295359 560944264 207368810 300468283 480942287 855462676 608560188 647163644 798885009 824303551 866524963 974112493 587867046 862351592 725084167 765566748 299133291 374127034 961508030 974747875 292481006 671084788 64410666 701869334 131996074 211807972 652162818 981096524 414441951 792825541 277591610 309834288 933262919 998912044 338654012 636524529 789916022 840487470 691454614 909602379 241503376 655048627 938906997 983290325 67117379 629330349 103347351 439251634 514108125 697251628 854994591 991159699 284164579 641739788 499708593 974241464 458614403 531609775 469750615 677386772 653981243 973375625 755140678 851274142 178348358 429615619 858343089 864533277 743036455 882709551 441910149 751946122 95230274 424290222 934878327 991287469 236112163 924480929 364606035 387058549 14670608 96991721 437902773 636025192 702614115 817899838 236138904 400254815 228326183 462946756 918196599 969832537 338330874 537870078 606746456 675847624 952630402 954073140 435271041 543159398 603847544 949003570 293344507 618898979 601719120 936859676 283824546 808715462 934441394 994839403 423166824 810546509 582808113 660142669 742283073 921267258 65883289 494346314 576359541 773862599 961111403 980317251 684027740 892911207 223670576 903671100 318820562 462569717 673146463 828232185 292570920 743038948 267421462 729568005 26624729 398538172 850192580 881212162 346026512 998551375 21522129 749877030 829417430 886934742 33422983 976702853 30071027 809821843 50198539 574081835 609832024 809720978 989321486 991489337 572453646 615748354 108644034 493818199 492895371 536317004 402183167 665522877 413584492 530392631 845832260 952540008 835285422 870469396 879560235 950534136 839753974 918732917 177067859 239409075 770570666 956262637 292790110 425734390 416415326 718666652 191148618 437741509 963132393 979688697 970847441 985449746 235971564 543215447 851051026 884800206 950162992 959664748 64294027 927905569 205108711 866516714 198899127 385103266 395478343 972911820 796664615 986863216 787585466 986234676 522827032 523743988 876216455 887432425 909086934 963797711 323058629 360943628 136415462 231413279 200219878 353199761 6461313 131945773 892910776 950955524 690175237 692946706 897530529 937511663 371179636 863013559 763801656 888266417 990660691 994220389 465104852 587797115 100685317 646334213 839784067 848160269 727382412 807697009 218436766 710382060 455915839 877936971 369832427 609257757 285878649 652722068 577234785 834406208 890645883 927787923 755142009 815126802 872882204 901756933 276432381 346652406 603972869 985018281 108949116 794301693 755234483 988534524 783368087 904251384 690642825 806543564 553641652 874559057 639170908 892866504 382275632 449200386 376999878 471189194 954294015 997365444 258961045 273227205 950307819 972215851 155349213 834457075 554097100 672611286 222913024 445316595 38607730 230601334 231363848 635324590 320183974 766160762 979348147 997851228 1614801 754204083 793496463 989816171 360441819 375360946 534248431 719847757 30351492 686664205 350877748 516720103 240633790 746754484 506736351 621278098 31268777 642432569 49558888 184641318 126988240 975724998 44831111 167048550 966380432 982066177 351631638 667394183 266226798 895694029 7354497 801408137 789208045 908996798 399115502 826343959 653538475 673861248 438163776 686483644 598726883 868791147 826276197 843362684 618748093 840308496 11056616 189994835 377725453 763588814 773185596 965600696 874699076 891184113 231009568 577301398 639034108 954351841 202384923 692253754 995513655 998811971 494763728 805005503 569153742 716766649 119902943 550300155 309699129 440324887 722000741 889361512 707826156 868820887 862143706 930482974 516877259 625776717 108824286 344627055 41689987 384837669 862765266 870210850 21969981 206756675 382952880 485110940 887764313 985120388 700453384 935156692 945344350 986161017 112772404 654032795 631695660 712051479 696779599 782194680 605116055 642984666 494218835 802308690 667906704 673599739 4595338 123533015 419428338 547934210 143519397 901114104 288038658 870209169 955980014 956687396 683968532 867669920 330002154 924051314 898580487 946362095 851736680 941305433 948570429 959052730 597520137 678537201 582849377 641173937 629429448 832141395 492111339 685806378 535189844 670257233 698194038 988541464 189886626 402307214 139968111 879726747 104023261 987282139 935633214 984340017 717363872 934405240 185792774 877530478 818985185 860462186 34735143 725897101 180109192 824831588 240661758 601384459 558602782 772822316 890133493 994835678 272576999 887479448 594639486 868692479 348916070 514842985 710893817 894114604 717367669 717852655 918621800 963026539 174923391 459988758 547123614 918415874 190413336 345072521 996142766 996936938 647644288 935600054 838477911 946678038 570514116 830859133 271235055 497005479 109009408 524641408 677568441 987620616 452224963 510494157 936161170 992211855 252624190 883046750 426922295 789481238 932320093 987598073 353813757 713679663 849440891 974808649 983253220 990133664 182675745 587069448 216545946 511112076 916258698 955378946 764732660 897218794 347014234 980790299 134029629 363111124 373398672 478962508 706394981 916214233 509331118 779250358 672308788 797399319 555835339 796194368 334945002 469993561 482991988 622562053 557504350 735426335 210955635 263387900 441585291 606023700 564840097 929872378 23112186 690604680 708055413 742937169 614117019 855243512 444188745 710396307 820389655 963740058 706267374 750016569 278478223 902753959 982789950 996291346 862985243 969127410 888684687 988980286 890233875 991420824 710090660 747189640 636931102 730168964 393374569 616784082 631488529 972942633 290100602 712861362 617262 504245710 401247807 546688694 67236539 829732691 252058022 977528606 383711894 626917033 377695780 706954224 77237337 150930893 605028375 721164935 691954683 964025342 534782107 739252695 462551006 886912227 805389543 945679864 960359427 990414184 445960122 861587169 665376127 968532292 728111789 885718401 789022407 846436086 458109149 895055303 994439091 999924376 112723076 181863070 303319511 784421664 302353800 564097251 51863896 771922125 93697364 100527203 432322680 745953137 450171810 810940597 277787294 531172263 956341374 987018631 424719167 949911794 111408986 746304341 134460429 467827268 647857937 724223557 171952568 283533986 243472537 724725221 814526643 866483779 622626312 887701692 749061895 860884989 84310543 85425816 216704261 459174188 921300729 983559462 527251080 948323094 40325851 263914287 994818701 999040993 621587386 740204219 131391640 259666914 255244749 396629455 344758319 565391732 623100273 822761256 462073511 980047875 709902378 967798041 982326999 993493993 366884208 628753378 137768652 750409523 852886462 922698812 154333115 622814308 640465158 742363563 834592999 841835356 378719201 987779553 99343958 142636176 883883193 998759333 326775562 495830779 746919750 898878191 257642826 522315108 886921281 925626220 823525465 883770417 550705306 603286050 694211097 863577645 49945736 749904066 781891552 824505557 489310946 909251275 34331748 45328184 974833506 989923645 660127284 838137385 281795673 813250284 19025361 739991708 784792712 968190924 118002815 843239433 795986116 874649447 758223108 881893002 518745173 539342002 933287586 975658447 897028334 909151428 187054004 744083410 25322928 826431134 825887 900919219 810928962 817543135 892661776 964978240 519000645 907541074 133734879 497219893 743044644 892392135 55803717 737925775 545081245 752862346 472449821 645753701 920737698 991754225 437761023 581239339 471741855 954893242 674457008 715411349 628671330 842668530 180417539 968154375 590151192 807245204 961105932 970918719 69581617 100563716 180969785 700455542 802894442 832474219 788713153 960062928 486723654 579004745 915832104 967687839 662097291 925346524 145542966 651739891 761258435 993603833 671516876 680284836 952635740 964513677 673477052 896002686 598262457 795083806 179800053 477401656 495222147 718479352 407022808 933351584 849620888 887900670 46354337 80999777 778251511 882709244 896228547 954315277 889377727 936346985 463242271 914581363 97286658 257086840 463600089 989496261 496670481 646862132 775564137 853332653 717134083 888419482 855513306 930697822 632874211 968962486 315638596 669247723 487208634 954980969 672274948 757478540 524411762 698990806 890070141 942698461 101928975 509265246 266183215 390408721 101155499 423057536 588147154 760434840 875117233 940443062 592263582 616007516 86799345 102041248 930075576 988002955 890209682 957060009 88378293 197289739 95062585 236434649 404843716 640976963 486220353 771705433 674470923 914480966 230527032 489691273 404675131 973104340 429220368 668881939 53932419 655489222 64590216 800924973 26178549 359753321 527666938 580937374 436041190 899781506 376866176 910017605 640592411 789855133 541082155 716700920 938531544 987840551 827006792 862629669 648932468 762626505 301828128 754589532 257421720 568470589 661945651 791481657 80528711 305750842 791265281 974295606 70099366 160217689 509448137 938928549 868823545 915738095 936244081 960367999 967647122 992563002 69721934 461714824 142166090 745023121 720662825 757836748 924706890 988911544 729468050 935093618 353095991 511806458 30076573 247957656 294049238 543203099 477366378 583700530 176901380 891179255 664734618 838542924 405632486 433775590 887828449 888421386 903556696 975228371 567585607 981605425 56339102 338085556 675085931 726044864 141961048 475434802 85648411 616368136 366831656 659768289 916023548 922860055 934552571 986288159 242445840 346303695 942378001 990057762 940608604 965886182 927864543 936544160 13979803 46594401 27385875 594611570 195732323 339919839 805470680 849221059 490243961 692001575 556952409 872817043 837808121 885404128 739625247 884124827 878233324 967982501 971716439 972020586 862568743 904791430 689765416 924312240 937400382 965155768 303664648 580569371 925242393 926300735 702996496 952377056 659892790 705120211 188097914 851360132 7146776 989475728 958486001 961493833 365826507 525304633 919240061 961271821 905588522 939106452 701917731 929954049 591615103 883753380 798821024 929310330 159335736 184294716 649274452 907732357 882456706 951253888 480534763 965515452 369483850 611594674 299474305 382135943 863634401 949588115 349151536 878987546 939722324 953606952 981882557 996053879 563520786 631908172 963849733 985428480 907316642 952093354 962973111 987662963 213346142 262908758 365102535 966321729 861185085 878452571 672109376 939284378 194746286 727380152 516479088 706653277 562414620 835460825 257118554 551494802 226436283 714565382 471238829 521096267 415654151 566209419 90318792 576199129 391721998 829262016 152332299 700942134 219545847 614292028 625400140 928938501 16943009 275583743 717908896 993741773 733287070 806870611 375010551 747992607 715037083 930324792 937176559 963028446 833512696 948599722 543561983 937567230 371402728 775450721 781809324 824863288 508552855 657177812 407403491 727878738 335049832 624471593 813711430 942536786 350700628 623765354 386126183 450026952 324983431 504736186 807877197 927378448 265190792 448188521 313636663 848577473 809326449 887646598 569805811 970417659 458785721 952155798 691714978 757635747 71728908 173880645 565224816 950403691 229580209 859408263 161106432 814554740 73558457 267006009 852260134 985022720 319965172 449788436 21513642 353227482 831894223 834170530 660510479 748154674 221137004 357683963 444093329 461231649 534317426 791246314 311653877 743988728 804455317 937486744 50826953 519041187 268473539 959208344 216700165 801851316 313968803 978537611 354481949 952002409 224565954 325556638 581496325 684131751 369187595 596985269 575334805 948834184 942299347 985894480 184630838 989259518 621260231 868094645 321232256 696970041 702923926 999664035 845277895 917529693 26507698 832205625 622407483 741028709 53682707 101416849 229688394 530881559 189963170 779575761 193241199 488745230 523721425 773407425 923288520 987947292 493053300 761035428 836687674 913895008 161436159 562521336 871246 384222407 284108994 360334814 654605447 974566221 186014574 674493133 952203125 972268411 697383484 866359882 735012468 738258723 340614700 417781332 202249453 556253841 669153342 759386027 921938339 957200037 343671585 995934810 453304090 548099820 692472763 942884182 3464620 419170421 635556252 671049659 966699554 986453739 192739024 819336789 290655994 318791345 224566257 653835318 564622245 651435453 136685095 415160498 50534427 676720400 427055929 677199241 494291636 966199956 487345306 901363099 474252748 900807671 276175898 913662458 729923676 779765645 332397633 751835225 911453068 994998494 944750232 980351010 652550803 677899616 57377125 344860464 506846729 967411721 96306557 417374950 539511495 726299902 390527852 928815027 312029773 389729055 949492905 984502198 157859318 659099574 765953361 859723899 650622893 743494290 506954561 994774274 132299209 209894889 649420679 893459079 644927423 702498015 583514526 995461108 720149471 885465762 123300065 982671801 171918759 996963109 207305655 490189326 429769660 475609872 479642113 710809742 744117929 767132424 342919537 563425198 914359944 923808142 325648285 632546765 968768557 974361597 206151337 417489910 472756717 944459853 977999271 986348443 12331698 268413931 335514314 453374976 166166127 466767711 206431766 450194811 589103730 854126892 81877063 922124863 25871953 263270979 158199074 925738910 183687181 512628023 266610179 444677772 775167961 967813692 307084897 565324445 961937721 988188261 75684734 201722556 780437745 871494066 93702499 329747218 619468806 701439297 495420247 854086507 210682457 235403378 447391391 866877106 341778643 539388699 423688664 691963186 337977539 903872945 151350735 937228870 728686426 883301910 33914226 950286751 112193858 726652939 855058377 975196865 213220946 614026900 184272419 736956320 593320240 776110974 670812885 822123290 875893385 898297286 723374201 896353400 724885283 910247971 173116018 937859143 807198509 856733746 690611204 966532667 975138491 983517546 244453571 578989511 74498033 677743545 302955281 466961960 942271385 978001678 408235504 872381044 263666752 659210699 646326282 854951511 157155733 236223980 291601674 444715166 839914700 852862218 908771042 968878902 259619696 667449624 438952308 738702124 528278762 829524110 724584749 998519008 208806831 918879165 549216911 817124147 976863336 977548057 821869041 964439253 729919065 863174509 624275838 768810678 724486443 940106538 708177244 770061724 12329166 815597066 456602976 996363017 483505522 924672020 234388974 414691655 863084993 922923848 532672906 764171612 689373945 804882934 160034089 484464820 360159809 368658638 805093277 973234779 483659246 965531539 799550886 855499123 124152029 894396314 211609840 494612392 771755877 815205103 50800986 116063008 77076178 468044769 560489039 591808892 833932743 900125437 382806209 718847766 399803299 831777956 706269956 753265108 82798505 261718408 599400384 711551002 846579037 871301613 504680943 807332479 700302188 813601038 902728075 936581308 440831846 860629358 436953183 780713732 495641346 611470685 867609876 946117736 390992176 687002164 625987930 967392359 27639043 122134773 876730591 971734705 751376180 804142688 91102432 648842486 925668777 953375916 85090542 406328280 281315831 906327234 754037578 800267591 759384183 887207660 613500001 951769540 796630522 924345426 68348160 482131129 85977148 633408967 350869544 750649254 218526371 730297594 451523549 745627811 175753626 901158040 820284421 899158588 277244320 416302073 55165596 932159320 219377080 329415881 359346314 865146200 955627612 956268988 645057171 857506894 193194730 346184690 571498519 620333678 739517629 955433736 170572755 227409526 161756376 427771485 371668585 878124936 341662697 985596462 130206030 524858061 121758705 821738711 706462654 960462638 169015410 854757216 324498731 592145560 75851944 225777530 318216658 773252302 191182297 950587111 367734889 971401612 446183539 505515607 7802705 177456672 868304873 929189553 264334684 843405250 585771560 883107969 906176545 951492903 280352833 918800025 657198399 950901244 170808816 626332314 381246248 801494455 194462029 249765196 746219732 962805045 736627918 966523339 899620291 909987891 801795316 962181601 722626008 965247443 408164090 589791879 474839898 989105197 251746022 520489264 345397009 522544816 136362920 229320417 935536531 985468230 99244527 216088778 632743595 789898770 944998502 967612939 839823818 963955487 700865895 974237100 919809951 936155486 913849003 938200387 323424842 491857270 234332672 656756866 946127772 954265831 700477466 771331820 537798471 731500143 910449785 928080519 191563109 423423679 576692483 883160598 108421355 362694421 97779352 368955890 283556170 601005000 816528065 845747043 639479381 902158736 472630024 473696236 596137116 659970704 399419215 454406822 711511011 776981292 735382062 873043607 704263632 794155894 333171812 494280844 85692863 204675039 763942725 992108495 60486525 897477066 791125076 804020575 301196740 733873237 991624643 997105012 30120631 278422802 904844878 990395612 704417929 920654997 62433136 133205638 967000993 982710539 533841849 893416362 518076706 727178335 883321819 942944773 650343828 939660097 170712405 867316422 646260860 960976732 264039388 778527708 965008694 989225917 975914908 982902115 310627424 673546053 946179290 981974872 683214562 717929433 987310340 994683364 672610717 943063304 516846682 902566303 606947259 711910642 904527649 979111197 822567996 874325811 945913710 952903709 207724784 662466575 403213789 926317817 299798740 579243488 454552888 615990544 182546031 545279030 574572634 601836094 486218656 560862653 24504606 103114614 578683479 811467532 42332023 729903010 802394180 831918591 677344235 933632272 923613113 996171451 48355830 342293617 541175452 926935805 582526437 952547973 449807728 948448895 6372623 265820915 67213499 718402239 788244014 861639759 164870385 423468094 925853551 957555969 199348185 801452945 119212064 960684402 730213735 996991496 649034767 849932837 727405919 970816829 338904214 744821941 952870008 994251253 223626728 396834151 324519073 367169899 124711970 273593889 728245413 995023519 92798319 996286044 956022169 980964950 891550442 961846803 680515920 823266443 802423978 830124813 872184505 903196938 426197058 728125778 582233555 770919457 78724272 701543482 112172616 912313006 826624996 842046781 135423387 429104909 504364766 509382764 652460671 677216887 329654834 692936789 424030423 701000633 561351628 968292373 166299811 697136707 465694128 779919673 960439849 969642606 452736115 840650332 351030957 608620898 350649772 721436640 43249477 256629610 62393619 303897478 127709200 175799106 205092298 403407521 557109948 970201463 598873311 859185267 912462264 956916807 813243641 991512362 717939350 752009822 670480723 697521364 54299111 824393350 649019499 918429463 58777634 530751624 848995890 968459669 951586023 978431624 852930757 926565991 928708245 979164287 727840473 795321568 679322745 971924499 697207837 938338313 445452024 916496548 154201200 220821449 425863922 650199941 445393618 615859191 25442365 632583407 601181612 650950196 634813365 789203632 194228227 296446792 797242767 903767774 786417044 907292648 889936491 902387594 630354824 964575819 255203520 759651682 240657679 405270838 484930818 532531871 638249421 977121577 743488486 872633508 731562699 832419880 172985363 629313353 735991789 767429623 275804417 663164078 476246506 698392823 77530805 502507369 488937472 873046532 147167468 536757793 531143928 874991348 873049729 943781999 997532960 998524373 134530033 168768052 32969720 88974768 326237576 476188360 729071308 764607667 792873739 941553020 204572760 354614177 600687752 627029456 751377515 923324759 490281703 958642078 720561227 723812495 982262782 998953206 85235675 90013887 203734820 669194387 4272770 468868603 918561397 933995287 604766464 943839583 969450327 987251049 740442449 860489999 676051012 679958744 203174173 419870959 978261443 990299793 261573582 499408015 855729949 873181226 858205450 936006539 782647357 942003446 112693812 805453864 488063144 687010160 640894766 873888544 288428138 827473772 955043357 990763601 659873625 835220556 936216637 936583815 140336142 976550980 611613742 644678790 602314541 917431597 939271965 961693655 569090457 923158132 727373076 955813382 452208500 626208760 321756547 963033954 203730744 441781752 689897788 861022090 637864550 641673283 413408268 608093296 500092910 788607580 257200693 290757028 305157450 358929493 233960301 551933024 847368239 916258600 92508795 313689060 346024564 778818965 152672169 409246459 496372077 808549666 556939865 797793517 533227986 794259988 141358707 412258131 257617283 325263531 664948642 696183047 9252100 501182477 128500644 274592681 503988758 712603904 103318333 681800902 930180616 988615810 828457665 975342163 424386184 880068358 117847156 301090403 90585888 992032258 512656836 542128763 952065092 961919304 812555260 963114172 561078772 669811485 31097130 419267739 449539017 790103059 537349887 965049393 673613474 736397544 260088934 845980836 555682057 921190045 665654858 870732808 291070689 645155489 388058034 876431764 908886707 975720682 269523757 753091128 108785692 466946437 519914 973179910 374513831 425817051 535770930 816997499 634840027 769515760 72545222 279121468 251071024 396025209 80201080 148818228 145896632 914245435 758826114 765146365 658052298 816518246 120304270 890908465 407634323 878244641 16656744 889157801 889333855 933598592 847753822 946191667 695298075 928060659 882347828 925703367 644539591 916115783 109469514 879810816 973491242 990691352 69163535 276243741 487087623 534060502 208949863 576449117 656048155 693835871 706703758 722604610 994678093 997033511 881303417 981511476 191807686 800583971 871747280 967640160 100275467 208246592 47981809 392693441 81509757 588148227 875587134 932738344 581687692 803563928 381791078 665257892 513196792 951580631 273058965 456676515 984963280 999840096 827006174 912917739 436518175 711708499 533735438 630407693 525189848 732722169 244800955 444894458 426979803 495203192 922317814 929719586 470471227 710414060 940407282 967859625 77548255 647290838 907129893 947338905 16535670 112021374 267304463 972502426 849250237 905926013 500783249 738663178 926674333 938329609 551038190 604858995 65701616 852763564 345504305 732905171 865459376 973788667 490338043 875786013 414395581 650382506 690744723 796575980 666414749 826033528 421720505 898247811 891546220 995396385 400437889 648187746 721707488 923272963 351708235 903775476 145498401 811053547 64129427 787013835 972592727 994997125 109126725 574854930 566650225 661891461 764845199 894754463 275810672 327233123 573604966 776372373 326231550 586365667 211327666 615242518 753153740 928606113 822011584 918438870 464042560 993951544 837980382 999062552 279094598 413395212 893482231 955077567 675404183 700273644 105291108 851735255 767576585 962583933 579349062 925318394 853525990 971237224 359845432 580193950 195829924 699351717 9251504 536577204 309326892 941455535 760321627 766851362 55310722 196412922 182566745 730735565 617033716 731001385 497130874 780018349 107105047 709310045 321355495 424444983 800038506 842407385 248998612 477426414 819819157 872497223 326282451 922958202 923551555 964384703 868942409 928247503 204824807 728523154 886638644 928262921 819551686 899286203 348367633 374759796 815223111 948237006 616883714 742651886 18139456 354369400 382837368 740395581 704791030 987495928 152177319 819704814 519362097 870038302 586856539 768734392 423281064 954206155 159882858 249107142 996021661 997344210 488925963 811933828 296693753 893192864 187258437 988591281 20764465 634455821 531568674 571886908 321313920 486238699 889944450 907440145 276394443 750753492 409946379 589020876 921578427 977478368 295493056 514525317 254972058 394166911 85144895 653366329 744830990 922958966 546943482 927689755 956243325 985689000 995795322 998788735 973381896 990391613 945039480 997567521 636638538 900518436 550668258 837117117 444628941 458371512 502965684 663043454 151319571 950679986 522228919 804141382 978386692 991586724 994765936 996751113 442204079 615690390 716919943 970026473 131833926 529126924 822651974 888430197 668420968 694252051 714415794 729229795 304305251 391605931 647666718 702880230 270075861 937324599 411792492 514834690 392060066 622196904 732418304 744453728 553062154 784286319 822137647 990016775 55040209 903891988 345797116 638353104 721741885 737209556 771625823 998675851 621083466 789970733 451849681 942568707 392890080 726740193 744208886 891880098 955438390 960110457 592927408 997593570 325845744 339355225 757245646 954624371 870254500 958548593 681422087 914294501 604457474 920813863 115940811 426517781 173259245 244507547 337725326 621262632 384732177 874372989 135126600 596814591 134791233 309599300 34890137 959480676 239617458 844546919 254246309 972643821 289804337 792226478 368149009 887719598 633193540 987294788 411403747 759239805 287040116 666582762 49892525 172171850 24016199 746502548 17018006 806073199 768152643 793374307 742024240 896598309 848223172 941497002 945189926 978238073 78141254 607893498 692586513 752980502 932451075 949099954 274674228 374267684 864303392 986279201 175852055 328785211 378363943 597217782 533744137 861421785 550814783 995421971 36786437 390176371 537565333 980381129 556232973 557117595 370051972 910305373 230751104 669664181 877452315 986082845 465367672 520568409 822559835 941847771 75952449 227612088 449299460 814683596 422113500 772755505 636853193 664391402 864450590 894436036 423599160 628884602 973592863 996947840 104732480 550831784 343199448 999405602 252078549 725726188 868948819 928249823 3214300 800454257 38360834 535550332 475953766 652788409 773936127 961520376 821334840 888930894 400618956 411475984 741235810 934806858 200788823 262187005 273341127 945924048 426485598 881664778 201820117 683436272 450910432 876775101 336345209 796449258 859409349 925985925 712354676 914643762 259560753 640011972 811726310 913395791 103868113 392106139 299686373 763707310 878228828 907697123 502114537 775507496 423747909 825576340 300885304 908200576 663435414 861874492 243590312 973587521 175082392 428302086 463395189 684267864 375216516 460387013 345038638 592010062 337083296 536433944 899004075 920722823 552586651 818208759 190863881 915916652 308566278 906951977 567847172 734458541 178226986 474932579 512975463 824004507 820349609 971285921 668505097 759652243 478804083 612606656 26148337 92665452 942278006 992626924 589487600 835905925 560679014 573187384 252215703 507699221 710058126 965535340 322817983 800593978 300820890 500523442 344329078 506719597 592320390 613845375 941320370 970546562 12074606 785126614 64292626 545470311 569141055 635163260 961495086 999214045 525495159 559451421 68328052 420089521 485702936 828242215 628544673 855356219 712046542 837984236 563227837 613808251 287672345 913032268 263081895 736659920 114037640 378963149 654273117 797481335 873514328 909526330 353281873 891888898 408695580 773424864 108308179 551324776 126792765 168426636 64962307 856108054 565840051 790977308 48959356 595577905 885505674 899916108 340454823 617251062 946633386 997608884 969278661 973324306 274350601 544827148 555027436 707436800 199116400 712658370 739512103 985944770 533484018 713267326 600859781 695165327 721806508 764738610 822956685 989422827 888195724 990303636 843621710 868037217 902035720 960173881 373991488 693682024 778193651 897819603 112405651 225759261 149193667 182038380 820307152 853744374 545588654 655439178 138310452 407084065 180665378 797883422 938330073 979283948 824785567 908995931 709756257 872557821 457470852 759987900 555106552 626050012 79098173 993114796 667240681 667843057 330541074 346403132 799736109 894124879 613384390 744788155 193311830 429199833 282290651 849492931 750576642 767695250 359291827 538323865 341694953 577339783 673992714 720158784 766660265 915209826 292454999 409089991 88145879 683834885 201564311 732460743 918878720 976924698 137541495 615139478 187700844 564776329 768866377 924539296 408477285 867484779 319577527 509305607 82906071 342842309 112318210 237077345 880537690 932235817 43829567 107012004 860447035 943751047 225504453 355319037 771844569 863699374 315482624 802242697 605001528 629321052 55758046 806326313 390798388 933411187 597029035 858107697 91446527 553418643 619365365 993379767 944114536 997122855 431328559 741440881 630718136 926151708 927201389 978591718 486820090 992652200 811821601 947880497 411350985 652621981 907127329 940467562 574951136 691715887 93311558 546266036 632295367 993449404 681176197 928428664 97570422 364240461 995085556 998645872 35417994 443267420 524843732 651568333 907993620 957660034 351563889 662605912 583019857 712012493 324349401 738048338 470312343 777777907 825212382 874188423 162589740 871345527 847113936 915775147 920132041 979697298 736601056 754262670 171329651 576236859 994275317 994836539 828218590 846922443 125256282 856324241 358972429 967150200 514057216 953902013 626091033 936031371 166619322 487580603 337267795 616781867 914739101 942283125 55119029 99157283 698709097 964537294 447796254 836641925 62064055 551148382 891004951 904525652 314697076 838412721 897554779 903722162 213863815 327625635 462852875 650502990 416578533 806134276 29267513 619745769 244391063 551911694 559149229 804449962 512816534 621841636 353841059 929435094 846501570 909688615 172095188 614138671 158680119 612746453 716980134 981329663 28570888 281876216 173403439 845404186 908663557 915819643 645525347 810904184 349252972 405542379 237049785 693114332 317883176 579534652 201108874 789889938 914779849 982475036 441728596 864247931 619604101 786406111 884902788 959531993 630074485 684362194 668759032 796651794 3074446 49961314 912637037 958707354 408269808 808742170 915373346 939464027 320826385 772343176 375082366 866353352 72244081 572501933 987832415 997023239 26487189 193496118 250357046 601579479 684344811 838628887 123190347 345631419 969959009 980392341 816876773 925266897 764355773 934474946 552908197 785474809 989734172 991693944 768389676 887972375 298193303 761768269 149383086 306422550 619124376 979496905 737238956 782362449 847613322 927014335 721962841 902197584 903502325 991439640 875138535 911753729 320568209 567770663 508097377 600094615 92499398 986283803 728460697 788035801 818367660 905412609 558503143 808091645 417567108 707500444 701847513 948068652 137826774 757099577 241928 179502998 920592503 980421352 726277557 879898072 372477559 488685106 875168484 900064696 220449460 677733916 162410031 832800859 896273744 916814174 388373730 742740884 487977467 794884444 992207855 996673783 113608547 959717734 855713355 915130736 962503580 965686007 815942954 899537782 435733135 824348629 157666422 959320012 107062377 144049933 256498377 988535467 445445474 805506998 943495380 994207557 98433391 302962012 240709934 652721930 864577037 867825361 804226009 973676379 167102733 340349931 102000477 766346110 29730486 375846203 191677050 776669929 533874647 733508618 318991174 435162799 222795217 823981759 418414537 451225441 328482205 794366048 245275664 912538786 534665837 594101291 934132988 987305703 234919714 859896979 52673290 903429900 186671106 792985301 964685343 997659568 821658339 893108877 803528649 922884447 242127499 454724022 993847578 997292500 201986561 382499111 575041977 975734438 541037611 766708766 522093840 582976829 2045700 947633078 774278082 926486331 736486960 754968475 968435740 981475266 974322812 977328988 666434695 935117699 88952092 197921976 901177697 907648490 730056321 880941219 83689858 992006855 10042141 689360702 398117540 496563387 652273945 770312791 747988286 893146435 324910233 459059796 313659133 590533126 824564701 844312309 38361213 948054791 672238891 809774392 129303142 173286362 764387605 815332947 1514011 939069861 229088246 780604742 379961883 594783605 160302873 897847023 169637298 334202343 851278432 979984038 88146254 759940247 83973767 149848541 561964877 747986363 588752709 907842334 114992042 913156803 14868849 600700673 100666813 791126148 751189063 872276785 331456779 984780379 178058139 366847121 299553826 360474737 920618750 941363192 884062045 940407247 940820388 964441670 656313379 834013990 48849036 343907568 831106506 900131588 490596727 993936682 613240268 737373624 133177490 448698362 100435543 264563122 943616040 953454468 852195919 958071698 49170072 180230281 1708898 98489505 318546967 997247401 981728607 995361024 680147893 982693480 417320678 704423042 132568983 670916543 25142305 241320247 945201109 949289061 434489415 859206485 850327561 945313879 165984095 298348981 483682420 833111817 155078271 322620221 253613573 923607510 543864080 891113875 838397940 852914232 516572077 811813728 773564477 951259667 17127037 380765822 18798630 840127220 523494714 659933930 959079958 998148573 27444457 119355375 490835017 726342548 68682891 890718750 330843439 970367931 98296115 674488014 564951360 831046186 242478912 920622604 526672326 813991401 215726955 335145420 855202486 886976873 387687985 672896986 918593039 930354399 943932251 956537688 977877590 981152180 350524766 417119872 206428093 953122178 224695372 425865306 62759581 75617848 568337808 851236671 466506872 685077280 68068752 857979430 127992373 664434781 408464665 621646515 798184608 836718855 89463309 877080233 146703796 284619128 680115378 757033800 729980965 752507964 742879703 833103823 863720908 941140273 552686161 807291132 437137712 631018165 982774472 993824653 681345158 761990471 317831699 761300413 673465363 975155030 779214339 926246672 241989977 426492562 987340430 992052836 588329128 594852701 181703613 614984954 966306881 995455036 166058311 388838074 910338262 967175547 993287634 997369789 546781558 637395456 880848494 909294467 790817593 905476051 949434876 986900912 14217379 308011834 528051228 916609852 893380222 998103125 90110148 221515586 649160859 989724111 883940266 990766845 716131605 725475236 923578716 952608972 817025556 862519778 989495072 996161222 241828430 602646092 520750008 671250691 951786903 970033335 854017624 957229706 667473865 693544210 491749992 581462047 761156526 883861922 293924555 799517308 859819208 986778269 146328715 700431396 631445422 720966460 193842021 655586531 185274980 615201193 685627415 918524820 952957752 955640347 520209615 824441542 220230634 512257665 148708005 427793057 542506970 577114762 806387094 845119003 162507818 648940550 761516946 913802242 978331015 997867004 183990 20780646 72667740 121411040 776767071 854055896 724743892 727895326 49616745 508643950 84826611 577788305 684864620 966754910 549177405 905122326 77715889 440595103 365621466 838271041 474478080 954981711 714484245 897046037 663300506 864105382 280645751 695444813 457106892 878570605 2613515 247987672 962768497 993431317 40691453 357087520 605514421 718314254 66734401 940582766 738364011 932310189 2847903 663329279 478452037 585944671 191287524 621881192 729146735 865657868 723153539 938786911 749928980 953211313 943460643 990488254 293174835 802643025 377549265 992017161 853307973 953462549 282512514 479876966 851151325 961549657 646983600 796400926 103924727 863824260 453667146 819648879 618306579 892910092 48943244 649474778 136594759 989711649 466516574 617052190 45984313 722382255 851072148 929970812 963132643 990261584 49495585 210152638 70890486 519802003 699330179 859495678 55050930 629282645 185689556 374713019 61958240 472305315 697912469 703004310 613536663 892578402 673989756 838143282 330359975 454519997 326815935 349677682 850427077 868748409 578362815 615260501 656277681 854228488 738134959 739512828 752507786 874069379 359718494 563041732 94101888 664507191 801103755 879437669 14966630 56295508 207918865 549772964 442865543 939768909 859319018 861705167 762512077 816372550 185057677 964897290 56067892 302620971 309298305 563056007 550383535 558294743 884760581 899092719 196259772 931814311 827234812 931864810 555632308 974884344 499962194 897767237 401056835 428550516 604818887 775823515 488660992 999937837 282286287 993768730 349436342 648608684 65049756 897039485 817968174 952375150 331034447 547149394 965162793 993796340 592488081 818113493 903521178 963857975 952461454 963933557 107520414 575758642 305328182 469899915 772728867 924043067 790898066 923662888 440304356 476219582 567358023 580374231 305277812 807102930 101263830 306976093 272255387 473319944 873458702 963506100 382646940 515491666 665852584 970715387 407966700 515005744 965622821 982335210 699798763 854426788 631190196 816056106 487303895 564914130 742180851 850045508 863924403 941134035 281887902 754773195 274745947 564431137 485048844 728702861 303684104 686885613 898526247 960981637 707179295 808249421 327921060 470340487 315706033 726985522 608683222 908332370 806970234 844649693 649238714 883155930 724650943 922482902 294774908 560903753 442573077 529501873 545368300 729845690 56687872 525455971 201496779 203165247 835588188 962635756 252504951 663861225 948906262 974121674 553220 475659444 408658656 496443234 724896744 883639852 463663963 742997610 28176718 928308552 914583919 963442707 24209895 926335359 829859638 993904377 491081973 820563784 307607823 481930035 415052962 889369039 402094878 925905047 10720873 285827774 435020714 716423529 667007714 756244344 84378127 447140237 165480955 605960763 898926748 987451101 125537592 438098653 548020562 750427398 367394242 839739047 347910668 554270829 369680133 864310663 280590825 400347135 915857645 989937562 513736229 954854635 889293525 950837829 2921147 225348776 876874092 960255276 685905549 872255317 120699152 671078904 355299685 456691207 649508543 993701253 721743680 964401715 234023809 697097789 324509267 402616584 684738220 818927430 161211260 374453049 403312434 790968031 926949692 974992410 676143691 748060521 118532477 189087415 775820134 837945636 443115520 457988711 194683068 212344537 132744388 804511294 102945126 193884081 279563642 910142774 121859235 780629857 39259162 157245852 590905790 780278452 192811189 443150690 42542721 433175876 528087195 561475871 396977405 737702606 886406079 897037875 848352777 912302906 841901760 849748616 715349300 742761136 266257454 317897061 2231061 521858257 205701023 940945918 756837902 770128034 8173776 652387436 107552381 562306463 179632753 886240477 461196367 879324682 361678048 413721213 738645726 929653813 3708310 461694067 431390601 827917442 252722845 689882763 660049214 765361314 235712501 239129268 206907570 402870941 533920078 689315521 92385011 455400855 110183259 209984532 804379644 975194941 880845281 921723104 468891274 907697084 552094564 863451241 116188222 492908605 279621462 393163736 725772630 736366542 368961422 847695095 17454112 308383200 199128818 519381547 81007536 855873126 683692334 877533586 626979901 798292354 261342148 378488944 450754834 626048689 38987465 634887143 940758771 970735064 148350648 911721086 698110864 781675566 316208498 863341952 856604741 952088842 734279267 907249111 368140498 969630282 252414874 432963132 177191568 951092200 750302158 894318008 95167154 481054800 668068899 852629778 572614553 976237259 804443421 868752056 944528318 948224248 883160360 912538855 846199593 940566271 776661893 846412216 645861412 850539174 80445837 201860819 833225018 948373130 353372343 882944777 830677032 843989775 165624928 265646332 827570236 900818538 655827872 761312205 764516717 803671711 477456618 844723870 32964311 583218209 208351293 461794966 122210029 313842966 569511784 980632953 799146617 869720428 876720897 882091109 957622129 984137447 727912491 866507307 465852039 597951896 18318908 759789510 776029850 932727716 220629098 869794126 987117304 987334970 696257624 807384487 594331909 715691224 986110111 991580564 835435179 873686184 571771462 970241577 810587237 833479280 574410310 990060207 312495019 830639426 123349824 575693821 235760051 929587269 938227081 977525578 168019024 926760857 767237455 865685636 906761598 987992695 9900807 12840967 320697537 840214880 42948008 857786394 570094406 861314994 634867517 710240927 184761402 455216842 173241610 559301612 215687024 776547209 722014790 974089914 316267873 681033483 722105148 745641543 154826224 935270816 823325277 896140576 141044466 767065667 537427803 956630536 510542724 804973661 753443777 783256185 599165256 785342212 683599990 700740543 787625643 935844438 148091260 371369929 568976057 977846628 627352673 723950659 752590381 760183142 17317336 54311437 818426089 867819055 908950985 951147731 196724929 253598101 109250243 826509295 62445795 634560029 561005994 573939149 289318973 925784821 354919489 760577103 84091443 115532637 372657061 931964169 374451035 915795665 979929525 991805077 306637573 629156998 666151711 673372537 51601761 630065662 453680302 602139174 38429369 223977184 356115057 676286428 596651089 647623790 6620770 970262887 21994512 711214763 788549480 832356551 695253533 845731897 987125804 988885157 555542708 619225843 461765812 926559769 32169837 983007015 690983317 991277622 323919415 914090030 838373692 845816213 418108644 622664589 2977651 279445513 971306421 982515640 883766462 998669020 69878896 979922293 311239781 619258210 955835368 956049706 810904805 834910492 950078575 968912008 362720620 518937532 414529998 693336163 133082805 434420976 196827438 940804674 26107923 700494509 25726685 349029733 453650313 887832719 501339295 618196752 112923216 454926551 142930366 466816688 255046955 274344404 640832521 836977984 558160585 622118886 42215149 794261682 679559295 727351682 151196905 946114874 906573121 953967298 427661359 431450419 647511096 839089769 642250369 886959796 450300707 454183375 606012373 787779648 361371454 374600390 575787811 579892953 191358176 531882343 58455411 650846537 285679169 500105218 624152051 900790788 568001750 615259316 823412609 872862389 222007320 952379365 681806582 884980700 57700769 997459835 776474972 953209507 517899085 534877526 59745091 300857623 396897011 532507609 189952122 957933373 846303501 991995919 262575414 689057626 229277578 904399971 11389812 490002103 876480529 879594280 311576985 768459202 578861372 930463949 843942522 900364633 445744651 943283196 619907356 670839518 82812600 336038787 513871691 655230204 979188462 981101010 805144084 874547562 828369423 911631777 913682806 956001770 839813993 921207505 978908649 993398702 424760103 604996575 98173912 820105511 51839860 86445326 569186258 597674331 757149832 791774725 336735059 774656424 376166477 420911688 637736477 924166870 250532993 613694861 498434463 517906031 672876302 737464747 231904314 479910445 653197523 656359904 358626556 787077821 179270298 791961839 643665884 779896014 368408638 883764977 61157036 238819062 689245506 980932040 560418624 937290228 680371300 888361038 798309185 814581900 238130472 565706678 334148303 495386705 832600375 936122540 152109076 642630760 116541885 807242240 794721903 881830285 445917905 666162541 344125258 974213211 485583057 655915140 43569994 138701686 736118601 896566542 324316057 407836738 72983249 761653692 24553385 319524949 790908882 979975185 651305722 921548774 630612651 634168391 936239686 969585533 948393319 973202994 597751714 974670690 590001844 657388168 72035383 417622274 456426519 794983489 64507528 235015733 565866066 893154906 606448030 676098981 400801650 866588688 403055277 628639079 570851524 986650542 875484173 903661195 740351214 774823578 155174249 208836358 753164457 927747258 717917104 931739118 662281881 733657553 117349514 460671782 914007183 977615051 507886443 863724228 965147085 968900812 597870418 716298407 207310012 254750272 4902807 985133422 160195762 322386780 460458725 873631786 201451349 821452653 881529663 898170835 52676683 220211026 30220899 75859098 175426509 334121977 825496790 873009898 318858163 336412751 863617834 946282762 606560166 708593330 542732793 634835511 123840761 321345603 72040404 551019667 673038102 872713892 730157103 873431701 700582206 911270528 226110849 446638821 562862578 771264838 541244383 794773730 429908823 435780627 828334864 899611423 385855347 670653578 144711624 795272747 298796488 503011523 176828084 970797943 282911722 374050738 639542196 658959268 395642761 874783205 412125299 726341768 931560069 959668530 560608348 641300963 151548336 205998568 415947996 663884130 219457094 947251133 836973083 991020327 302649808 331514103 988730582 989426982 510453028 899208279 922841179 987768054 753703154 807792408 449395560 649767682 318615656 387712701 633409270 662688386 185971277 933776439 731814304 823092848 431975543 928256823 467622727 520784176 222074961 657770010 587369395 631594907 538756511 701456588 576267817 750402469 512270957 994325487 785951986 787670354 35245428 285696186 460092936 796382858 639797760 753060257 185339299 524856461 104645235 134931195 167467867 502438557 781488435 993495326 159602731 330165786 943448806 959466826 917720761 979478475 59231394 796508016 505349335 684994925 502848236 605462513 529173091 646050072 248501530 704728424 917150917 934421243 771656211 994873402 942225002 978047098 911875156 949976184 363681231 611395472 22110739 697926238 227899289 910097701 546210195 569124764 154089003 730072904 823886517 831729174 310027136 667053119 263050449 654877968 235029104 563188844 50297939 649023856 82751113 784241449 648505422 778435292 876256959 956816945 586112401 629599852 577186984 611823270 589550859 932714491 341765027 516496283 61274595 752378101 266960232 580374204 871751141 927550089 615482439 719650288 658876095 889495225 60820046 933236358 116244284 780308256 443377596 970784881 531818279 637610389 411068523 853965968 126585876 480802408 432251616 555098755 744669529 993736395 445436876 447059188 174810905 911914824 27876930 353769866 24091050 235214461 778245823 819587956 711181306 773224619 609264789 798329941 650958664 820900484 243517046 457629414 381943464 952384809 156355176 882289185 571470125 582015726 835718165 953561641 462986216 485449935 806109575 853586463 674059733 711880772 619902471 988408094 51378436 137376938 665586671 939975187 702807736 752112561 507281734 679556013 579856124 793082626 577880694 618707185 892152878 928893390 24748057 441111013 567854598 595236315 564520671 621680993 503957623 947343145 598264448 983673800 221256033 507834893 99797413 709090938 407479760 628132584 573977571 981549645 292149977 973324363 758783960 994066775 993862819 996653711 833525517 914559110 226755495 871010892 404744010 870143831 932529860 969764697 28246104 258000462 647286961 714962809 735143751 817826193 350226454 470358677 638735544 731047259 311441324 528411576 302371649 807428411 206078675 350239790 294891713 331174268 250023710 686480743 410943211 865645201 702117571 962926834 33767556 375391193 695215671 978104377 716370357 731267792 854476618 877657731 274389150 841728610 836915677 974097761 355190535 828610445 878186708 914337738 504399707 938677619 617733982 790889469 558727098 894641880 396082855 955136495 713157041 882500242 711717348 864273546 139062893 750315896 425127258 533984941 699779570 913987240 743084791 932765556 389332520 442071927 953603792 995441232 184499667 732465322 810607781 929050839 447865010 999096534 550221285 865897916 885699021 977814540 609556657 919169408 692335166 886128895 809357625 916866280 84049113 298182707 411572699 729101619 419998686 800487724 124542265 863955300 503738853 923404264 417781626 936790269 792080571 923133583 948628126 985120705 455753310 596536602 849619718 929407392 317660229 574482349 811189473 913882052 24081203 869197985 588328044 671831836 775050849 902223999 742353491 862003279 614143313 899897245 440246656 528266845 820118155 966489206 82739071 839226746 452388208 615589363 688459716 950656745 200137489 422362414 815744438 970307022 906460813 985482191 806215324 869682298 383113265 629764688 801256954 900116652 980189929 984018970 774784011 820158035 413014217 673002589 374776401 478075477 850100148 960470873 411164248 433511294 134780287 685967965 892238496 984841601 892094805 993390436 581109027 957031607 61821938 537673737 55492257 952107438 148872247 325053172 374678338 764131400 249029201 629703635 972231148 998486819 892138972 897340140 886825374 933179689 190274605 814407616 339667580 451166551 264274060 607690004 948160469 963248960 693673315 781439954 994516046 995110686 593235934 839863657 964863798 986210658 293167356 998438044 318756984 605592932 922599878 959101740 616401356 953331664 791960093 799817487 6690225 306648181 811222584 902318242 114488773 200579807 60167909 342849988 813861 582126130 45745194 539401526 618156752 679201630 220369600 823862629 66847176 447704792 404977731 670496818 328976332 847509849 413735557 472455417 929397130 943373053 41613825 79913555 491722155 692055517 130939958 299847882 103640973 954083370 123932064 807620745 238728194 705961237 313595906 373429824 288121405 304087767 523867667 868963804 172933548 327355043 980540297 993371690 7292416 189528610 930550228 935938820 402773174 789475262 966700166 981383816 562728435 745687371 964377620 982714670 171535555 218171077 941584765 957208299 104448056 638723019 153739906 849895691 678321207 788710402 389546123 676001639 866197562 941185719 637226223 776122994 445239334 474591714 46203237 320323288 348016447 381591889 487876969 744251961 186903906 786927664 659337299 969674152 544097361 952622353 123715278 574601235 380015635 785274145 5830909 496042076 423903347 737680172 422782094 584560818 119966364 930203168 657181837 811505567 722198129 774149139 630297344 731678289 334913403 360844173 350505586 727323214 840901245 851925927 100903853 613556268 392034028 413087007 87252866 667447535 475515526 804794658 232458956 634394218 692966248 788221767 484832860 884338348 118280163 494197581 940927764 984741587 910019530 949702332 556883751 602199424 604433699 706765048 687332243 802196017 726773506 978099781 919359850 924225022 172588864 578026619 648144652 833452795 9338495 173075334 187052639 758960535 991565194 994458407 562545785 991727732 864517820 996942660 865386106 899606044 846298490 881113012 887218156 994412857 919949344 952414977 35163726 523880572 932856084 978800283 412202817 771623959 285533467 560293317 536029564 960362251 414180936 418777452 284354470 646791282 281005007 828250912 244744264 290464540 152052730 773433319 422829275 774675216 264661172 820591936 17201468 18783552 703640734 730730478 482904678 887243266 845346969 997806844 511609847 963935471 159413849 537671642 204622411 413219521 844822478 948961076 24997180 863690780 355768173 595528805 61147477 198959864 340946353 388088127 562301932 746039495 94423523 401208446 551616930 904806207 37257315 379707922 182989993 276646243 833002101 867076736 648581127 981265407 147784496 902517465 790465492 873429542 514228307 995927058 660730307 797320198 449861247 604768563 317025669 897123539 238048957 411760789 301181041 625612890 991596078 996391207 411726691 949989664 595188284 703055458 129795400 820100510 791123387 882973242 108500135 998313745 415396917 967354716 744734515 837292543 29486869 901078036 921069926 949513356 827104635 864023381 433492384 569533120 858146251 874960651 238914628 389343135 366206131 913181202 165171932 604122424 449049573 752447962 382296057 957880284 724530513 927795124 193661575 329345522 908750185 925665035 272382596 736772716 697005806 876391969 653516150 716487596 805812867 823704647 152514073 830931769 900613709 979894136 879310242 971209439 121340057 307883149 803526198 975457037 287598442 307752018 410948390 917852753 621629657 772324651 927607812 965173000 423988882 587603637 765405523 967132346 870365626 870526478 307626192 921153966 349127967 577726447 244256895 939419078 96607282 734289872 878159545 989210245 491718769 522987525 673669718 826567242 880328980 987251383 594967497 615018953 853304918 949724206 419618239 462520959 3175014 692634905 58416888 173668863 89323238 166163882 82521452 111999305 455380368 643439789 289342550 492358224 615776335 828261845 591862117 982258637 189578200 895012609 933753520 956402939 971536460 976004136 32590324 434503100 9759797 712170830 363687174 465540173 94123710 739512850 53560899 988222438 31768062 183652957 519274498 903122231 757894095 855009513 826915998 980408987 714220246 966333043 228613435 861670106 670810698 905839590 868018708 896270709 288904166 334785385 509854688 919998849 824824023 874123093 705923418 976320908 290306846 984054305 961037429 963246403 418527809 712099608 859841177 941325608 511175041 860119339 56755330 373091303 316707824 829068263 708808326 853107109 310831951 533509337 358418580 862402816 319055658 425179553 896258082 926613362 942510970 985674338 13598858 734301002 243080502 641929459 711430737 990343133 415078800 419942814 66641091 941676180 955137657 997246362 60005553 798255720 533725610 774789186 173049979 213532231 674410712 741050461 936779719 940177259 306355883 730747640 227364493 540926544 785985711 882873062 794096268 970143417 822465769 942892664 240888696 434576346 735418783 897898066 771320424 918934850 409415644 816916275 791228237 959336030 175726670 749399780 701581243 880578170 657292999 778959229 404869935 777123171 295823613 522286142 440536459 531262284 304281525 842401628 166170338 540290573 458284282 581294226 855601380 911440597 85149598 684083509 688743802 919157178 289216576 922934325 65849521 180457912 929192703 938254289 748503202 810064011 82958324 642929614 784943494 788831680 989417571 999756923 188412565 832733770 455370870 847679921 785712520 958414455 918713075 993858923 762579929 978702500 429623232 718618676 985463886 987579317 994687257 995031432 827713694 865510002 642275362 942377312 14086463 435759446 699279654 890350650 3698576 478265983 705898906 765306225 318178751 328200367 32516185 570955386 90213581 493842048 579407926 870759701 250004641 796673242 348392932 666371106 58129191 985140313 437659599 478839123 389718154 647364521 548986404 765374341 393776840 920876128 846685740 969038118 1286815 554656195 994751208 998173323 233725602 483437365 581104842 917716754 186394987 301369829 895739736 944505162 325328543 760694819 389765982 932815648 550549621 724719265 258222248 802178659 930136758 980865566 963835837 986449538 103858991 436079608 736654968 763113760 111298422 892976854 62251668 155582508 771141758 985257744 448670330 743294859 723982057 767822341 413400258 483346028 977334209 990745552 37314900 724494701 832861244 840730312 809532687 885773759 619746689 715447215 899756854 903961707 135015552 904523193 161617972 842382508 107275507 323886990 889592666 951169693 275899776 287559906 368928958 491093818 139494544 635180880 576061418 963899680 195446209 557945171 480634058 988446512 42438311 97856975 594951649 754043478 362870207 439040575 131528443 616424084 258689031 620309446 996696750 999142405 411532548 537477643 919687557 993571076 725910927 842655553 999348586 999519304 309149431 832123375 28619232 495919903 813357579 860472106 60369008 563966625 407016116 772013895 35651545 316092752 689601558 754710519 449273541 778507840 954964887 974593996 787083971 848696265 175682114 994164563 422135005 723345659 973015476 982565120 130971646 217134719 992154291 998523260 364653049 490994524 634802453 800112130 736694482 959838143 366449504 861839376 946046955 993962541 573816620 586786951 454451024 879432704 94960912 903567595 917431554 925500274 195695214 917210177 866031772 871472320 88293452 508417085 264635817 669920073 459483085 644616539 534770155 916902643 261534108 632211070 816036115 932506245 744635578 862206263 249269000 388919524 435657467 730116902 768853132 984756654 891930579 988733108 78195461 299028157 107207256 704302001 120771628 860193255 707689972 803558697 893966426 951376176 516165151 644246231 736170298 918848596 161908518 918609247 438036650 832775749 938057650 992495957 771230793 797591209 589881686 746573851 175530734 568552744 914905961 972365479 178634749 830669457 188770374 676496927 493782149 966473388 9682121 523605950 671275335 704269624 269176962 931535658 655354577 955725150 138674829 348876209 321739491 849607090 74421023 987314726 648938000 682629019 75407231 264136154 729141691 816675891 588904274 822246621 677365833 856005961 77331400 768055684 49611264 285255042 579471903 965428332 763698856 803708495 933753139 940346551 304263287 654077061 713821472 895452425 913079369 959706992 90383371 290535867 55263234 697636618 65235471 666407678 797221827 888926747 552227934 763744765 994132872 995862748 837924999 983851707 53918194 493501735 995534295 999318129 302665746 317925613 92963147 416536166 57351607 561348265 759476643 904910076 868828303 954018126 726270983 911545981 754046693 949089827 202710200 440614516 764964788 945177885 884645433 927498835 627229723 904701138 407795109 472886698 680139146 731239809 200861224 671521893 270361453 351440476 855421580 956629998 445133952 472621405 95637908 220841692 425670521 737071383 238818227 981211641 272227556 445309388 251537799 300380598 315272750 873245442 143190418 352865444 531841581 708993907 131221123 870034546 424852612 449343722 852360115 971136486 764102032 963253459 809358559 824357629 930136972 966314050 428392888 677486801 575420272 834673162 917356546 953216713 91687795 680024816 730635703 950618957 289726998 755926705 83494961 823458564 185621165 253844775 289699677 697095012 570758458 577826659 609431985 950607617 96031742 833705902 607372024 796626730 942678485 989225770 213058350 432446746 651513228 801668870 28738104 493785540 72748747 905830252 86208876 177409409 897134021 970663490 307745465 654222976 877615405 993863921 264688532 998882123 500941678 875633583 438858698 967540099 301509450 581845475 121441736 350543646 826779931 851630878 18126248 96447132 432584775 954797362 406426009 783704427 330483656 894622215 62434127 695268995 898772181 930034250 690907158 900511897 205489794 719918706 47200306 913469702 809499822 823823168 346517035 630593367 43300780 81615548 541619411 924055801 642615361 765696288 446199753 799382999 430169079 755778839 827409403 845094228 650480078 808922823 190397788 863641901 875681744 999250518 756433325 882261358 849046478 915493871 865519929 969765409 375742361 959842794 276243889 325310425 494808475 634127688 708084047 842832453 120893489 742642894 850693230 897903217 616576430 631445386 742677966 985137380 843474956 927957055 37766389 970945435 732038110 964810123 632079440 824660465 667336444 846877348 254827195 647142520 366416407 907684952 476894944 830532365 948155875 995306458 505627934 585612253 541271015 803659436 706439503 928217642 915442760 977469236 238716599 273791804 379544112 615042562 37029029 89613930 537402215 981943220 398590127 951220315 828158498 859287327 208053668 311120884 446003114 745174196 410442868 580623474 928130537 952941654 179501348 930074220 47254177 648859971 871967941 899830319 358433884 758541851 28120839 656832734 347976562 370536595 900090243 996849400 971182214 984180352 366469214 371730968 83654961 152694136 544119254 562305771 592682088 985376905 759221136 950796845 996844964 997852894 735042788 738497944 906206131 978918172 611050697 941892885 370236620 973111338 686468436 698752988 799851616 912520286 756288385 772043208 828681832 950227446 204574200 678629130 261172888 304625468 825592205 826584710 508175250 589580780 179382569 306377269 504057229 716805843 407907665 983759449 485878837 714988900 394828626 406931508 253036343 581121642 416335704 721923636 513846319 580334100 554272218 743841006 859412328 889625252 469095928 715572395 395331050 746475118 754092336 790034515 940473365 998440143 135983268 961037972 457927508 986156449 13239293 738545011 215301682 934518889 390817080 921265784 479943582 710491800 601750878 812426717 103161977 412866102 662060573 746139502 455397665 800201190 458193000 828035683 238143274 252861277 575340440 975303380 878556960 917626121 821481147 967201762 657945854 996045303 864620828 881909785 327985749 937708463 249101211 682105274 386826713 730719129 735718358 856758062 486014861 981398894 165618220 699826058 474228751 898402975 469672671 845969855 116106306 918952211 998888814 998952672 601896247 805013806 288481958 991289357 924996340 999302168 731000083 999988227 721309150 959381842 472227249 991078205 999187696 999925698 186405828 822101412 751390283 929075449 724445664 930784004 67617884 634876231 849309354 983477485 342236295 918008587 542897243 842138560 923462245 928612161 582688532 655095603 41167727 567091175 772288837 937017321 423152327 628346691 297317124 326821411 506292952 787275265 136500296 684843570 918045547 996456211 175056994 708475294 20297160 573894640 650883233 676246115 885006499 966399198 622019164 798580511 608906618 965161122 746925630 770569173 921184089 967242178 711707091 980554217 231532686 541755358 300138786 840615445 224456978 965109421 467090428 728067706 578501711 907771341 933451437 939804681 437481853 824446230 382807772 928331329 951005714 991679284 170759425 431632088 389794063 413776596 503451052 554644935 940711895 988744939 821067114 881547943 728050222 990122006 810932488 854438240 231949477 846171563 370900204 387052982 546245787 588101096 105416896 802904544 494527050 996787086 32553718 136796165 665346510 665941599 913906810 914673959 812183274 857073914 920438608 963103172 367381779 928411170 430408013 762066162 139515279 671081521 888464813 963263184 481081913 567484028 799294780 822030352 298012908 334336420 870958244 967140747 717386381 779055927 308056611 694982538 408309110 718019577 557686718 787196518 539183118 736373055 455135570 539145367 544319479 683481781 852149912 905002787 636536073 715985871 825406492 854128503 530507200 725328842 906691397 966411834 942135910 997173179 349777934 535975466 313836049 475054944 745344260 902875509 500474219 912367381 982666260 990126912 593709191 869700187 264843587 509850738 259477281 685269172 347697646 521975117 450724987 640749720 147900910 817452787 859981270 941716822 868710481 949809348 260309521 365336805 75308750 644407835 201588981 424741282 278003093 811244119 850324442 871403018 567773342 746231742 389807700 502119874 455971385 871267347 513561873 834871719 487911593 787789940 237117204 990918861 469586817 605655339 933082444 992428457 928488113 994552496 549332840 887585581 103116079 804277870 212071349 756061865 28875669 169803383 300801114 670037430 969964734 999720208 667449017 958348515 594543888 922565909 877157843 902534067 263786199 727244612 537588479 593658681 697801482 999504881 607697797 770819991 315329033 811097857 456426810 466044406 445104646 628500252 961130558 980987126 858189496 944466259 575023622 620765634 185664454 380706178 213867804 905737320 444987412 838655722 320750956 537973796 259030410 489324120 864014719 968907950 900279048 919399673 862300115 877462506 63473771 393123998 720076283 939067958 342783457 940265532 264139538 580934548 109602612 963963288 637353279 746291554 422981902 632294663 51958354 596641494 12246621 545315320 700071970 867921028 916041797 932986717 193042960 744317257 912217412 966477550 837752209 881798209 493161339 932120312 648654789 673555738 246028699 433282248 563756850 771581404 429291219 787546557 334611954 393365197 952785920 997914911 447999573 562186467 402216844 908593180 668312549 796251284 677413289 916206438 727864651 996793410 868247156 919625772 4641393 369123410 669814272 681398412 663742059 764944529 862356230 889922948 998181975 999547552 531163953 889407173 926002867 941808934 789949123 817771041 215769394 481666494 744059823 930769234 350872408 577639851 643877739 655111951 271516357 659549917 748930072 864687855 612700276 942792023 15212924 718464308 448473185 809393473 305990640 861675490 487810166 824624560 977362702 988601856 416635306 821680451 227255207 384294966 269230108 318442665 748601788 881773402 610612062 661733204 156666508 313885887 655864554 867258512 61490225 81517051 969340000 984742955 303299915 304493575 686905665 954649062 89501173 402088978 404212280 920855027 371793538 613514043 597331338 737164229 218169407 527828175 413014809 413890362 473378645 475006941 764130135 858059325 40909996 299487364 956991162 964882265 924603724 974738528 414765650 995308130 350506922 951384901 419760784 433357077 349563496 869949495 30464479 783838603 860940087 951864729 182990273 345046150 794115570 966817868 974586999 997939115 258549857 578699270 172819326 218463421 810020811 911983805 992120087 993143934 802553889 880152876 927286340 958045099 983205398 984462992 517025480 548009234 311999670 664040428 98950492 347988291 748102823 967602429 536338277 995065040 705413949 729446526 84694217 683226384 585948745 767770067 367102196 955610963 262543316 943078001 85868396 945578609 403363044 936943900 75101378 979793726 407742786 977195076 843202147 918081482 928801343 978891831 716573939 729100261 624748166 927620421 172512316 285781888 134727958 137710911 363840628 423286706 220803717 260719158 123494139 158786570 256665779 659021849 668665638 963014723 686690113 833869797 694226281 956339201 118450035 906402236 693206766 987035579 673223765 791632649 683704602 861599746 639241950 788728688 649377807 818203270 704625736 764354566 548320806 944242752 664625977 841163152 545212068 738254942 290723675 636608636 787289157 797332842 409326877 598264257 565564160 745857245 458323772 545084629 547937045 771909006 855246479 988034022 993797649 996914649 446617203 592931089 294661908 676450699 677332286 748887317 37222109 688429270 458011870 467673111 803675020 942027749 499611201 643423674 715103381 809827088 6022036 69017605 166947926 260252373 158759811 296395843 267066549 638561322 423550890 622413564 856580486 927776185 6620631 199219226 854792809 930104600 518796488 719796642 896345298 900807865 934854864 963874615 418824533 616442996 533598732 604841235 780341780 831557086 656754098 696300789 468197737 561614517 861270123 882679166 248785430 743677912 735186920 815858842 249903491 599485048 231840497 780078798 729001703 755266618 683255114 847286547 2858051 99722974 478378750 481077388 758648611 822193204 481831216 613329532 574311870 906124603 988433629 995837644 261138428 418148266 102806749 990219781 692491354 980711052 514868954 593256666 588896377 648724095 758482627 763810501 230088316 538040282 28604097 606152004 224737675 337762056 271979477 936149568 669993296 755701953 216612240 299233925 239488680 614188513 780285938 979284998 475287210 501603477 20766466 697692915 963923156 981067959 432318521 818228264 539915705 616868481 978684027 980382519 115627865 231043443 870112950 934634651 252587067 318219339 734604044 980838702 842369271 934544686 550525195 690384357 829453261 933768733 729339334 756926213 365833200 860530313 401898471 914899474 753958673 878503641 304823559 701792843 955954752 956542347 840833408 870205681 311006393 714361276 924637850 975595097 751155285 850560453 572998874 729977917 124155696 380211746 340600699 763648796 452108849 662267755 359979575 671088254 860345936 998371925 609438156 622824517 748934275 931410867 111205940 332283107 993899173 998235742 726733091 855499869 71343153 556176927 933834580 944414304 587012642 678992405 475696679 907407640 153712388 204851760 278716504 770369104 225881620 311613274 457749871 700090127 409339581 903567316 549556957 573862825 432535151 552311032 763503625 995941835 162117819 602869355 514229438 784387511 551717006 629576886 848815731 877332056 321910218 719317317 255124594 689663212 305956350 308265193 790349317 938430010 341639926 511805039 793157046 987964748 501554303 876784910 106515378 195709302 673726264 980480586 439049540 519478312 434251881 497692136 112561528 221328505 961796913 988049965 523455330 820106805 426478365 993406327 357534392 781333471 912413061 997794572 809912659 854658863 168623063 548817802 701143145 707701714 722530418 747345909 691507304 714416886 549335588 703038611 232542450 239800098 156909344 190237039 985940814 991580403 120654925 277594414 324191337 491933277 775003492 778854040 772006272 992992116 506818951 981572918 913209613 925905745 522917304 803472221 518066106 874034791 874114245 925240805 683066998 971628297 207313668 355161802 460437415 722868520 169845251 599902622 554757977 900631126 185233986 749988054 492101137 808631312 900194477 959664219 380759636 766393300 155082890 995973559 804404539 905355413 946424871 972913025 632655985 916939991 888933449 915993126 456809495 498803344 285550975 985018811 679089232 822739604 456030661 685504596 176978078 370445252 598177093 880633473 338321406 529804142 603728672 716610168 37985202 784674074 709245102 732381080 183750016 595219381 463725166 975170355 166904978 177450746 647679083 953797018 339806896 429290054 197460756 942407581 117334346 698949043 144804218 341726806 989151126 992750468 867399018 886562667 663615776 675399974 691336319 915338765 119920351 950983619 316856103 412331790 333656718 601732747 200563958 503268987 584771692 889763827 715057623 943226660 616982113 642163974 79579765 521446056 316245651 652589451 589007049 748584591 417721208 987193652 12298215 186463588 305979192 737375817 293741377 448094842 220236759 894231055 333012863 648449389 106885966 874762307 295629374 455171896 240236192 868832689 684046326 800005427 662363609 686899710 972378059 998582437 409890298 817478145 406053311 896656804 903855479 907295347 787171189 993055126 282637525 981384818 190584918 640803181 281962747 461754486 613853022 826692097 508157747 863732324 977419190 986694024 131400877 747305939 698463434 811223311 119385939 449541123 328549062 966143276 293645564 946432006 339528144 452524180 880113413 949603150 585742251 752280623 31742787 777360406 484404709 679903798 262171075 753181293 317800464 671698699 876088388 959536788 446267796 962672744 892836007 932101813 39211855 820994218 810123467 995811644 105591725 781696400 230954726 634052612 216595963 233128778 494530349 929581365 221737374 862162823 594556316 602777761 616289627 916068570 967660503 969446666 789631548 902436608 991517193 999794360 498436048 887988631 790159369 868549872 787735780 825471125 516860284 903825787 639911085 690374680 815632083 835068186 983991671 987242790 671542226 820326980 273787864 582583580 227977020 913211766 583555107 667235387 754628758 961773090 805438721 850927396 554993559 727020843 86894984 151050345 432852046 730696421 828211314 839990111 684935883 967614172 938281492 991386617 131732680 571823388 443111489 661282713 767532781 864629414 546887180 713774159 965715990 967483624 374856556 935542538 639125495 965482815 479829009 966223317 710150900 894805319 520255873 570684053 262622343 680968279 447882494 998935474 370653551 880882333 603101920 688965227 654982671 898294151 690327878 867347624 21572065 341011207 438702307 940047754 494597526 660517085 688441102 807352147 118187869 700652925 783761717 851505663 926244089 948074867 850796218 966625437 134452164 310932734 601135234 616633252 387472321 423143604 596397909 622482881 670307246 967307151 20989879 131393243 592998283 652777340 486715759 679361559 108554588 207830104 300605465 943871808 484883940 670816735 817525671 840507498 233165918 944826181 487700872 622556254 28811956 596562635 32153788 831386473 922172997 998732799 823117401 987802596 741640244 744910348 201503256 262711388 18211071 456504971 438245892 453551685 363447934 375403367 368600881 583130252 984359288 987095934 943143958 949145269 682202117 890413295 487801327 769847703 705551421 867700346 578954025 719150832 890071856 945592677 230064044 920311125 857538746 903208514 524128679 860519576 50399941 900356668 979969708 989731029 296340014 732355020 224071343 396252935 86450475 793927191 186140070 951803096 548133138 575044301 681075422 830693578 573989499 792463212 419565817 572137772 797350250 900835449 277167477 448370119 845912259 886270985 974115377 978844414 551467064 839888427 360787828 597911736 647844974 881202541 266420752 363501740 181483319 278646998 458000893 769465657 382046970 626744453 31974641 112920616 760597991 948847124 257817692 677846127 887749913 990314324 36383125 397953846 558818799 685843163 640412513 775260165 463216855 600460131 58158624 563337605 659948467 857509342 193040353 499146366 88638006 829838973 82892961 118810376 838036652 976429327 959045676 960648863 898193045 908890740 134997069 994401668 545223669 764463188 939369163 970509852 609580947 631757620 172792839 367492886 219391163 243739733 747927864 976554356 546735112 853611496 508806522 637146866 113641230 789996826 829686498 853574254 762452448 778967774 501428903 774752751 406814520 525163530 852892140 955878173 686196446 689012297 700846683 764790138 311959350 324162933 356003386 365708041 200198736 848299377 714886325 792580664 607962752 902768814 186959153 187333865 376782301 639089256 65406706 311036074 147892843 921480742 251253701 661059568 734115238 996201279 650150602 951175898 262017113 742379162 669952260 990129989 395300560 929563432 769511775 831375500 120705153 452903964 320369774 680984361 891944449 894655443 783590051 838866568 105844255 324380992 735641475 945544040 50295461 674081113 772731887 933612190 847529637 935905091 406404053 704637105 683616245 808891489 690853625 879100412 382808431 935981113 173790429 488144010 715721678 743850593 357132448 796353130 817036268 969081218 160270148 495040654 679901845 888679053 488136326 573741870 270162296 754366392 795032760 931319997 71530657 476227869 469324052 773688872 955319879 997322525 923067719 947622503 117276998 609434508 792357006 894596180 743443328 817086606 891464223 941454482 919577324 920967047 848172575 855435488 859282017 876264490 199936549 260808442 767947333 812387759 243785290 722204156 740243496 842649338 843829047 999990202 201018389 586496667 316158073 453107362 545165792 896044932 831014711 840174802 29937356 942954189 604784079 695009363 790974168 987177773 143268140 787824213 163227787 851740145 570018386 988953357 155195060 741422583 962808712 997005922 20612175 503994466 24343995 417052174 889213658 935665470 949532948 950364738 628641763 955967100 367125213 818038656 512789230 636533952 414102071 968979214 458695231 941618002 658351967 864556212 195387599 272584063 543588989 866998713 985880156 987976157 924726554 945101333 528255341 812636865 272931561 867612146 164701592 252955336 98798889 685592616 545527028 980772392 481460352 909182213 371069691 728605702 675811883 904733699 932152464 998862489 765220968 927811938 265097670 786393247 180004350 558189531 699785262 924669608 459332332 817465398 938291963 993739644 291811267 834351198 475665846 576295340 822444218 977066718 885633863 945908971 282099799 700925875 406555766 507689336 759257252 782265841 875571998 916356758 125652204 850312273 526309990 797484862 518641181 935675468 606676144 982571439 77645960 94150393 254113876 348189835 806742285 993225927 449229199 645369003 458490873 589407910 693781893 777458459 871060534 932901808 517455553 922156715 897468518 920349127 197495143 294335761 532325893 741801876 472994942 478076695 892201393 916869528 26742326 532369037 938362923 945063066 632503549 827716112 95738019 816283105 336824505 396514475 946337329 966991522 719560931 954215568 15034747 82681656 100735057 669898865 182692608 940257943 498606734 917948537 554177959 735371380 715205434 984208546 730315336 868702900 261504004 974476025 66851625 644260213 338052573 574077100 452498496 524631437 629807220 946034564 622460921 977048475 826681156 972838164 942578874 953721932 33668274 46369839 441873323 517315890 758578604 992792250 711415931 965594245 703921591 786262426 948431221 949947023 290382665 642073418 855815865 886255230 306442710 399750725 686055045 827979841 470731499 756941307 538698275 944229335 988934990 996091896 388162671 451019053 773951142 830040836 556594714 744458832 174971154 726572693 965321709 969227368 903454589 995693697 318651768 531321673 575464342 629516348 97425506 974204599 227472683 776501577 207384752 581908240 513745353 676652767 651057068 852935945 1725505 220324976 775539182 842709750 409335611 773523047 770523730 912452591 379917653 956792488 992885272 996825610 455497208 592259812 650589251 794638501 198574752 342491127 648842905 903493815 490548168 538158626 965771797 967463199 18782221 550395890 214857358 362228740 181273501 662453228 838728385 995873249 165947671 729374064 614449845 887054976 352174473 957449032 986459428 999835824 897711522 951771720 331534098 564602641 430539747 824884687 254025410 962177475 23814486 189868979 686119054 734900001 773137159 855720440 556045104 968634870 696301823 841199887 66902619 283994845 334277455 539397261 605441012 622682912 151064315 964682125 804715974 880455684 890373937 968552415 899904552 904020723 489126837 662183204 168035021 851763480 568528444 769388935 318393521 906050951 101091146 971504646 236411522 337884112 69660967 227225654 938481942 978981511 227345341 303917950 529225380 970082450 380699984 769990305 755514788 868181657 468501627 632916260 759972670 764455084 884907449 924628031 220338599 826781452 18107245 302026265 525465337 890675680 638039007 705817884 760159323 836771950 121429664 305931505 739815708 877474656 219051127 475795769 662811182 810195945 78612132 443249852 705378209 733154788 129973643 542929378 874309683 995570039 859113511 961564313 754750046 862671600 864114965 953760328 301225803 394021785 335373527 978942443 339951465 389740989 208285456 235792257 531391582 791689205 151063435 495802163 84656929 129888456 607859404 626662203 771300426 982784640 276332985 946198899 513290936 849628235 520376233 553219243 578474923 715691974 10110454 295684446 198298729 771104042 131672793 843143933 451061138 662404143 154650429 176172568 264935014 809980433 670976404 836218362 234694164 751681665 548804899 947683416 187530687 399347907 792045182 812757349 100072805 752913800 697439784 862095140 639189085 988341742 116140547 913434915 80932961 229928456 639934120 794129127 126426669 961734857 861864426 964974987 895274374 921511406 664309718 993029891 936698518 982770661 448636385 488910029 908366834 990592046 61193977 211869232 819412869 833610732 487952144 977669917 394544258 593051954 701862212 929929636 149662226 743663493 235145960 944767522 834076722 933674842 98065662 105651865 883078061 989249796 873352676 875568905 527600649 905009466 545372194 863060129 276431204 675906294 633290588 761864888 612892848 669092295 570624112 769189261 709968262 924238552 976083553 977080856 195528481 624836512 522311574 729212563 350223388 728185364 943155533 954931501 932671040 949421578 929402445 942161581 777646336 855973709 860239804 879333555 618503734 669109853 532492179 861283305 453278561 640625511 182225025 263956985 673750102 831946695 466454627 516129134 902625912 995063308 377358829 405172478 526275463 702636205 181083115 955277860 853971461 930677037 179591264 898355616 191321938 978434368 361168710 779920506 176075483 703883755 464928471 861302246 75709607 154202676 247327118 566793130 459089356 775942895 471571356 758371539 316001447 687030830 984112146 994112259 689203573 907551295 794913034 906511004 945645672 999774661 644542768 663475451 509324880 644780920 437406708 854406295 176287012 873414517 764139100 833538519 367505180 754055808 604102656 782757333 136597941 753592087 428124564 759780480 973622397 977639454 994449954 995902668 16165309 100874928 178225073 391746490 567033212 785679409 711945230 850600816 743790037 967214792 926109896 931464828 854148765 992942734 906136387 973555391 165962663 767450611 610801647 655151215 597683432 656496843 765361208 878845935 50055836 328351519 258057093 853321332 443791904 527594622 622914359 746712232 391426810 428327969 66361706 506145367 98805107 792385583 335028947 540301460 553943935 710907261 966333154 972579306 264986959 727649261 937931148 986918794 469265467 838550917 423167892 513074704 306253750 693476901 622671183 946284454 943521387 945375476 598678156 648468754 593232152 790426439 527985918 965486425 191478684 436726402 179179267 207158750 334094783 939207291 524604761 737301447 576193158 921966585 211002473 985494019 346764033 695190965 432781396 897984965 625211181 672162334 138062672 343949554 380582028 920335319 585184633 829527182 68637122 546628630 412948012 498594952 770033025 852952964 364132600 605663146 143880922 884826279 840831893 924068486 483226458 943665120 69374562 347405928 166191014 475068579 831467038 959624615 937958971 963183962 222130994 746843687 417433792 491094443 913798274 915137301 598690898 638755100 740139381 824227680 301018792 755300633 176734556 913396146 6855944 236755144 557329061 994002670 871675829 872130392 265667332 677039309 786368420 811167039 950997901 970627881 111230117 481198251 544684798 655221175 797509397 918421073 107211327 232070569 426059891 760782117 772222161 888507893 569090770 680583399 724573051 857449212 531432686 997555290 230470442 912380200 247003174 861068290 173733781 379295531 519648224 525006601 529755763 629913403 161948879 739880216 238541363 498597232 229551187 236890368 934829714 951887807 280218668 776840774 564924944 591673975 892472930 995042126 675381913 932055712 914202109 976824748 559803769 588486010 179974626 749837845 376021859 523238124 460250150 932716958 541386482 954114879 902601629 968538426 495457565 880229724 118113763 913864359 864727134 904691501 686103067 740893733 249758066 338488241 230098284 946258108 295540006 681909893 892268551 958785107 238824675 872704754 602220536 913450265 437282143 475506013 621283991 640419911 644713131 953715911 246074405 309810421 412327992 620523596 375402485 692809290 400032063 683057053 521253858 609420016 222410025 670274218 633565938 678107022 358185143 471018999 713649496 955494734 299661288 936628755 772611597 904843720 798280865 816009760 347387802 541546716 875511027 991060305 837826108 979924030 553162534 802028068 940052718 992108044 418437773 836384837 549320756 722208072 416199830 656220336 349104196 754891534 673673904 730040590 717829591 937445491 810824998 973467027 982260509 999109557 500454888 626986514 774653222 827756833 152449582 165611861 344372889 948760573 727935955 890663814 41530175 479820982 118452167 471088563 539960394 623111860 267763229 404387448 350558884 477430508 64730627 668145140 775197211 987975987 866486378 988730869 2373374 284004034 818294077 971819510 34993783 629018980 406227499 837035792 65497988 76125756 59952772 752676361 789667002 999474226 160318033 544429731 408544359 732454095 1498201 388766245 67178672 973091317 142565665 505238247 518719654 915991228 203719692 237167926 33276440 359357241 652379855 818500848 371523801 954582221 480861847 610416218 469063775 736690758 371578406 719564732 623943842 862770598 805665152 807202577 168446179 169292446 611795392 830268848 13523979 586438691 399176404 900269971 983977422 995409264 69902723 499371361 41133277 811173055 966138558 967230556 758097648 942018382 851584025 952164014 448375248 977405849 318889638 915291310 3939070 631924139 25839266 898452755 805588025 990036870 566330789 792734783 359895038 484397710 664017773 957563807 343845744 916195517 668957849 740094186 560722288 917184384 948031966 957877094 617637803 757249552 108512646 601254453 508969670 509979763 690795227 886780975 907631453 997370704 431716700 442827704 50610719 551245746 733050392 783596479 964294329 977699993 199871399 606401506 249243333 351966507 564371732 924605674 40230538 253619994 135390540 449576448 586013990 989677933 454897997 858564832 293766071 398124370 513875807 884465129 665103634 696076067 208582873 510281788 62581908 742498677 821071139 943401333 677720465 942394117 438916528 992264099 543611045 761106745 984259610 986393436 329542711 948308830 124298550 611926558 907296962 933356963 940753829 990115505 652613458 860734931 861019280 904784392 536757350 845485981 438298965 567604001 623182190 726196793 172974865 419157864 18294967 211649806 552568708 565090818 788176617 966321725 371508726 720788560 396542062 606000138 249102045 942998034 207861266 289976320 999567644 999844063 810945636 924779617 725469383 845229987 200889671 738111322 739446618 791045226 732018942 878093946 662902477 898322516 718349264 910880273 453805912 786416085 432750470 818227067 156300675 755577660 222038659 323273664 76198870 532805322 691948141 973225946 145463360 147280386 151919806 806328489 314353725 613472018 2905711 982726189 960500101 966512527 161382811 580846577 801717521 970598407 828405702 919306462 282377907 351676319 593934834 645514943 365512590 754216525 10402919 345826249 155579126 215922646 533249606 958895606 778841315 923965668 777311057 832880070 656991984 993720531 485895332 617335822 630559788 689394011 4294336 479473448 991735743 996729338 178811766 329160235 757926534 921901757 80673421 858039134 188467815 650396032 821980205 840696488 879538688 906517512 537826337 949780150 288638980 945060360 497359318 857886072 63237647 657989524 572088811 830954758 194248026 959379510 769643165 953886926 583033757 712540613 248009746 845681736 110895237 318318069 778298664 969264738 519282893 740111093 861718195 973469367 121963959 861817531 908197360 982174861 763908946 892177235 111303118 222065669 92437166 526127838 482210944 962178687 532099761 562946065 500255852 698694551 285741173 302582509 484391934 693318710 885667693 917110895 634186230 848253501 265485296 654706566 174455391 417353613 995678861 998238986 397927223 603778219 998862311 999683661 293584594 500537591 126190604 902579916 109513351 630390979 981158957 993248780 4009448 515449633 693304818 713887831 10823091 813861207 491484556 782069451 36040673 532899560 909138288 973276704 462621291 925875366 987658705 990696205 951242392 969746856 686018985 894217345 644646338 719252791 405963284 533098301 791664945 792672373 748790374 896017836 603025827 914897861 606724553 959513536 992657701 997245370 260375894 689046118 680311991 732257025 20159829 519118224 274268754 939218649 627942758 672095259 665813434 735142461 460059754 995454393 682692235 937696951 989450701 991121667 785399806 804951429 6805521 110356670 89242416 742768898 405891629 777843476 795414736 958720133 811730838 849612720 685019264 852616637 20277386 184054469 475390931 648943058 54293494 872433503 457113665 883758635 670251206 932961571 211982725 812714801 855712800 856821339 390955519 909553253 727182537 758003144 530569698 936981178 467671811 999635297 299723555 574661370 231161142 345735639 252505415 910744582 326024036 755257314 50516454 281988807 346579442 839285131 730408041 785224505 624626132 980384692 934501840 941279910 26737168 675364796 64309061 917932542 996246258 997389760 998663174 999967854 742170610 957014640 467442264 532089911 202719128 334020371 344475829 860915803 99916681 828647582 553412611 836662993 338959202 692657937 885411154 957116185 517153500 688935958 623891505 701076219 997379735 998024445 362305876 849866874 750315673 806196011 108002367 738413845 5579747 738499477 137912062 581623233 622897479 927020375 410654370 902426258 305194805 429687601 138806683 948654131 658003700 820320474 383638433 987844655 984408533 993509345 884208557 996336055 986460096 990914368 438694636 466399852 906516166 971517414 125614761 524905614 126606940 805500860 686253168 895222998 533649274 670297807 620636606 699333766 866107999 891848389 170883801 238956163 717696310 959073700 367624202 495973436 336487347 975004854 260795474 529120377 531246219 916395232 91461134 188938479 533431308 768461614 95138217 113878956 529127876 661186848 261787851 437837234 551579021 720249621 97303385 697067898 665483429 771745863 576434458 673227009 769888093 855731091 987875333 988320197 972047343 996914261 444980256 627903355 871954892 892174273 446979691 507324458 52389049 485030128 488496008 624340283 252047019 541835439 577118684 740047133 968796271 994335848 271588500 794061068 3772967 912843631 526971776 706332396 924798133 970334421 342556827 811529583 603775458 695072005 664051396 692501049 971737557 990729675 660060223 952855912 176925528 195720735 241580349 375657159 574999447 853473270 4507273 793672106 214314308 290574871 370907363 437965999 154347910 237197304 691928866 897625428 729389811 906503662 493104118 875100175 873542472 947517032 176416583 766529792 610834511 626812534 708556242 923168245 585320995 750609976 205541266 344402949 928890571 929226784 800642767 917194499 660891186 984992088 732432701 823281043 875376457 880950808 912042023 924452650 73991845 320624481 752384579 829064280 399010251 909288766 592331501 815547354 923646824 975618229 317047538 488985073 319145779 333491629 725803307 756139725 953079022 970939327 76181922 335390091 314509157 800119586 447335633 534134630 588149020 600777032 897776449 927279587 911674257 951936492 353364815 578359202 140296072 996604902 417823481 488210740 709936991 940728234 854772501 918819699 338034291 533819430 356272052 358288139 989355469 991285275 957600252 974224373 250923094 397527166 518708736 767707301 456982504 800083470 278854940 637056588 247252472 776743753 607396566 607975748 415036326 613398095 217296626 899265041 516909455 596432958 602730547 919829864 38895348 416533241 258586757 301203200 336058104 864510008 371548025 840094089 75186307 653878490 395877552 991289011 880469206 975673374 737091372 853793127 528661304 781691325 203693066 422179734 504532354 506250003 206390383 487855691 864945017 982091194 639305902 946589963 619138585 952549580 178013449 672824865 189194902 829361539 943741325 963048347 422216114 540928696 290591726 482209828 418730677 678512610 222746750 907983356 595206652 807632351 362312350 968420175 585241955 883687644 988227403 995990080 307855613 975616312 462806575 973427020 46847669 708669494 702333799 747515569 629002484 862548970 160952581 931372717 94381511 578359122 452053503 708887398 395015017 888496489 797147943 921508799 830955217 865645967 689951151 860037220 972745744 998029386 443822899 797358475 84828310 160286303 526978 644478172 437746798 988791703 461124639 875689171 687084404 907660301 623194914 635664681 197726322 828716667 195857 152650703 979178870 982116464 550811981 944095396 824362220 855112088 622623054 873269566 430862198 568180612 902573909 994494495 496593518 796462282 19061651 544145053 845134509 989776870 504212758 538364694 380082110 655904858 313676983 796538018 842478244 922068353 719949945 953880959 810597143 820630338 217896409 249100106 434922855 461063638 848209914 904685258 269768567 739118822 528667147 680016491 602060140 803394729 399429235 534619269 358131229 979689665 172787261 514086301 202496486 746651275 399991066 891319443 673764888 820318579 763451311 923800219 324069123 701498400 799952829 844395737 641988698 856875701 319742086 864286714 569912511 685555797 820153916 945179097 812580585 940717937 380204312 569579179 11897019 990030946 258825719 327392879 831064631 871072274 519162362 987890596 924734054 971118514 671945779 956641279 288546240 803207927 251621204 788336520 12666170 678569469 300561383 484532511 993836975 998568732 631475818 649338110 818438989 907637161 212233688 323555511 705936587 830708069 485163276 703306719 499895476 502121576 691576442 874643538 480315052 830628391 729007929 985175779 180459747 367939481 537140205 729648964 706958187 789370011 124631595 172309382 194339764 494430486 931941132 993548192 990391413 999388424 79523575 559350825 156637502 273765843 511030790 824594036 712097544 777509024 160051213 884883531 701634843 769628220 767828220 945359691 917654512 951277858 57013769 463831214 478505412 997895397 967021553 970273940 85472080 446960548 946274553 970077654 331198822 355588627 813311494 903478351 426823321 543545378 430261873 965516262 946565806 992974084 358585109 485436046 531931360 638270374 584330815 707359360 806843118 916127150 522853383 755906711 558205032 689436008 977675420 982675857 216069217 715709573 488272217 645727508 641603998 895733851 915581560 924013312 196169102 502778658 810746783 909598381 665896916 995475532 599793578 763501582 984741691 995735132 137493762 346246368 644433858 747873788 859793715 968030909 804448315 950127757 784624158 938719310 851256387 870764955 785364373 992854740 489781197 994292896 388526295 769982645 336598575 458355206 712678603 712796155 169507875 760474609 164542295 919539295 260596802 577661138 798656866 806101833 911553414 949931770 315870659 895105996 40447894 295943707 252767246 760427138 660374852 792627550 330432124 636023167 943253837 960457345 414998525 426044104 826408144 961973804 686501194 949039349 310960202 362536889 811428492 919332835 950647713 994029373 106838377 742271120 226243532 981718007 577061826 887012375 883801448 935307872 640048504 973840529 586095224 868528063 168907209 472879909 266884791 424476261 429431924 674316099 228458361 447447973 745601752 998319063 81912618 271882320 892998883 989189167 797788871 853168299 294281962 426486461 614494938 754611882 864891903 974743750 864480276 878836082 265262229 336902177 159997915 335561844 256021592 712658642 143846804 352824979 801648234 986441375 370569464 851206701 592438190 787721849 856847114 865386139 162019568 322221074 327979932 855622634 919640530 965637075 378635505 609350851 34063903 843604061 576421759 724469303 981659900 984504124 189414711 893701832 346973217 742903721 705085873 793375569 37722796 812686286 585262937 798561803 920738007 930912263 608696958 760620501 558540172 908272535 752846753 872814479 497848934 825135913 871694349 967482189 888849572 936574285 897092371 930516396 716621089 729038669 472713397 669318288 625143820 876633545 134564773 204946345 302697198 313361421 254751028 322578797 698936626 823256380 562011075 562794912 52021557 199686927 369897462 485958340 552779828 992373092 197397173 385620016 176426346 218401357 964515895 973687408 707291893 812772490 851641551 926953345 145495710 851370156 674895341 972382110 32941173 556009836 686045638 884825073 104290507 688826462 135789533 219203294 595409742 779879563 168070205 347629710 585343704 839396332 48118035 504548605 216619194 809583696 518373342 697111834 387466152 410753725 754925010 755400029 84030034 768259061 758393145 765693311 156366242 565587223 462971234 600480307 86413306 893204848 564432963 796262603 380184537 784808093 460164618 896568909 514236563 640438430 467695304 470522935 311947062 399719469 359002089 508231213 151583543 859327564 425088876 916214457 978376808 982936056 224844647 669873559 55387036 317579261 247058541 899458202 674915508 940104848 402457667 710954253 291324976 705360624 888805227 889906575 612767371 927067486 214201991 922357621 560164513 562495372 615219890 736332891 988815223 997180217 497709710 770447419 298179733 627541201 302957648 668238084 490287645 927966680 48750204 777597305 661175552 668328222 809421264 821965176 962373065 977559421 678855759 952151880 287555615 654453930 424580375 861554699 27705382 898100020 384464584 788080712 7174466 719858426 495490370 710333826 979992535 993230259 828970721 910779777 275866868 990401505 35859308 220238662 464519054 969557521 548299226 691921800 903510053 927405872 212324318 289105562 542713695 869533207 367656295 529726556 253159692 656090188 713020423 880432309 935110650 957265142 974235730 983681072 722151506 768163838 344609908 489239577 797725694 983003832 672039685 685051503 858107102 901847545 543055939 732147365 795811417 937888445 339650367 768778086 766648297 911184199 162902439 711892295 534503234 822433946 435700564 727589864 961555721 976367472 964448722 993841674 805021105 831537909 36019063 613122795 663552450 828795702 328176832 741299963 999549821 999727292 105702669 963796159 865310039 939747792 563528276 983610655 938288850 994701635 663092963 679297727 679329880 901090433 642065545 734958214 601240714 980697481 179555928 335998975 168361699 498023448 951711600 966822153 110717398 603788239 788945989 982535891 835153636 952269708 411143625 617779702 444785289 584817051 253215727 835870801 400125943 910210563 631317328 997520636 439669517 566448203 957014043 986150832 438800050 755846936 829060033 893689274 392458700 724768437 626660389 889650504 672497699 868179008 609391538 815102973 92525276 836595250 831650171 958947264 967805775 983585876 14725160 744318487 674820710 982435316 23741631 263233113 769625042 785641676 72081334 878321967 892765707 963893912 223736696 829503496 744824416 958342714 740267511 882644425 209405160 460036402 144528234 482707368 379680226 905914621 897541768 932376234 957578489 980907621 263985444 566948048 435132872 831263381 670703137 834716541 376767844 982105249 284464458 367182303 862241092 956553437 268840782 490932432 704082305 832043962 780116373 984783414 151937922 485720964 502067133 542739312 180200679 692406374 617968323 988685472 879774117 921570317 377030836 932934538 354660592 369685068 747062160 898556841 778930480 958527857 738517904 764006560 644742617 927579818 233443921 396352369 367441482 419767238 653636196 981941902 973663957 987546277 528646511 947908988 814554882 889118959 754973207 783318323 30498321 739234946 444058231 751207030 479700687 851328373 397270383 523202565 148601926 286251772 92366161 948854889 1480828 83024597 202234009 495192604 230375156 387935938 819637377 948268575 789105774 831930121 283154057 319289095 623997694 743461735 32948408 169250540 214450689 877847543 104585342 510020249 250433985 715828237 138004413 221141318 768430731 837819388 51145442 795568113 417046788 941867515 412868887 881204554 240930416 507835479 571492747 987622159 760958232 833229203 727468175 915226753 618805967 989297148 947062560 966718218 119900694 568080724 976047028 992826546 134290832 936864633 85932010 639672376 218806008 776042731 644901051 687578694 397465525 749250136 37687823 462892876 263188501 384395966 357898863 830181313 50309556 414610008 777661475 933897383 735975221 775143769 816427244 971496549 868494748 983594873 532528010 593388898 310270920 644161476 925604825 997450716 805560288 910145091 21155546 355230823 603812495 736732805 335121256 494867385 774857111 873338581 685064204 953177590 186792133 859033673 680757947 769417421 680087209 935611250 442273665 995712319 876028844 883504224 339252253 374161721 656175268 694772107 967803186 971553931 198600688 819479179 120622229 393844871 304598259 937118563 303468798 352638569 456198996 529009839 42753372 875642426 954465708 981773360 352548872 474595664 873969330 942982774 545666739 927390207 437387535 983152009 135642721 166919529 416131695 807072919 756191482 962630910 108892900 224703900 939742709 971451778 665742968 969593988 356446049 980151164 708918960 902614841 552026345 930440077 351464440 995522560 659359978 771206146 255918746 887101515 709645199 746436562 793694537 996441532 110721828 439971688 907350542 985849534 855884309 918169810 353077024 627217178 253965851 334070405 94545423 922598762 189634785 691144705 958605595 993760131 291289721 671357200 24016175 565410573 979438125 991587697 567229897 785665842 903810416 971205650 904439743 941059507 805612808 919563851 12869266 701932172 917465271 977855347 953907516 990425226 917552457 987466975 723482122 844695582 733331242 790486107 507701725 934819299 779067024 963231405 714740511 927710957 251183972 504000390 991229771 992278788 808572164 903296122 922167915 971590832 256651665 604993574 394529705 926819137 869295626 963108096 420926130 582880036 525892156 869093174 489114294 841333266 620014939 856729103 226491163 368138830 990068388 999697380 640163680 694500201 744566605 810350108 500110357 577931679 300272520 727173680 43381192 912304999 359472240 515155522 903671914 940841845 606171257 706852172 147164860 467262281 101527185 906716534 251796125 322008978 139587781 743515653 715854637 929925631 671106634 913602110 846412066 960854606 164261745 742407020 868246509 886209427 993124363 999965530 810551547 964185158 860546283 932029553 593782133 780697943 674701834 855406210 542019098 912129860 901610163 928571033 937283601 965256524 753001938 884735690 301331736 976413008 756979763 804537442 237034167 737541450 806521384 844529301 518232948 585723610 496588653 609322509 789302229 985176146 503044515 941831026 581983532 885937027 414805131 665901372 625562175 814240583 372874256 631677732 55899704 385677506 61137724 403201557 767625529 843736597 893424205 972455463 690159736 826968503 670739050 785294775 835372987 893893674 679105633 813744540 830655292 905560175 507661422 581031727 301551553 337148262 874463536 909374780 739110787 970036560 887970612 922634856 263067640 462453102 427007813 445536484 41951761 367847221 161149444 903846075 119890492 336891580 998924707 999740561 800011290 944604952 136878206 637994100 353109267 504847950 361019144 417743048 20679760 852305440 447667929 502517308 481322141 995274164 366468357 859417558 161939350 614934274 275904613 461927855 767719579 982280680 798459566 987673852 198363316 540819893 284992558 555677529 721879523 968809224 869214973 909880009 363573972 581973808 745302322 817823141 831970013 861280499 576715079 829949065 966099088 967690322 486617112 664232995 750898223 859632189 456456035 538972039 19204398 142208316 770846581 958314128 853115056 921604516 283099894 495167090 926060924 955341660 961131668 993174671 865467103 874255074 628656476 793480780 108426379 121346905 76557928 473807174 793393265 932618996 309810186 351041841 207857718 608010652 41692775 516706846 971239146 993659738 49721921 418238842 43359162 256005187 427035198 977483311 5499971 367889690 543591716 888018567 255096071 396472104 130736061 731829185 310964216 380987169 323948738 727682923 803120700 804572552 29130338 253567553 897289153 902009965 617508370 964268874 639287893 997813383 938909486 985577629 514108261 554422545 242911026 895752642 67821418 791340779 36980893 666499206 817568821 878107335 496271977 700951695 70636685 379976222 759650894 938384019 292533092 694894753 632873982 900495844 788480680 814468408 410991344 577498154 965166004 996838902 851709480 926924420 368655244 598692439 383831184 825019039 287955102 502337578 112196268 772716808 842290657 948710556 911400857 917406393 824991392 930658941 391367579 403002231 950729403 962340393 159251372 416273922 972597993 977485580 257396216 602024282 442209821 703712250 795612059 999874573 819432408 861874645 830642667 914810934 312323558 755316840 727901184 826399266 115142449 810764254 377624709 389302948 286106410 772083434 15695876 60746850 995749571 998760562 328760852 753818108 50968716 699242238 256963322 830642335 394793132 420316728 301599655 670450151 892032221 927846889 47461786 503382004 716733414 952533322 214905957 776688736 601885021 645601158 708307138 859126081 979376093 990288492 63538331 378961531 758572334 798845314 739851611 803742924 64799284 691313227 454834056 753148169 137575787 971165695 39695732 91616074 327672597 685336672 910342444 998846343 812073601 845823321 187226601 303351544 887082407 907318127 710459715 975029614 165525165 970987303 630817817 638523613 520849288 569409798 347961725 778060968 619478661 680978345 495896486 762984822 591959096 889378935 703860527 828079591 226563502 669222308 1297429 639052638 674963123 817988939 617474799 901916116 279637344 498317957 535086195 652085675 205203343 986782593 189683861 979358846 43319623 206185506 851751226 945320937 297208137 701254360 318822566 560073060 30204300 73187088 664083994 889934514 998836861 999736457 569338301 843192299 794254486 802776165 364574763 912213520 692283395 947474927 688617004 852609847 433856962 589279028 51966731 293342288 404740163 834830568 770852793 831865673 78486819 595412215 8033139 697434744 570528660 862948013 844733117 892612429 401259305 611439003 511524551 976512905 430953650 605349934 759661120 807417549 54401698 592770794 64572484 551433091 369660436 799269933 125527074 429769929 572280917 601761667 551359859 609745365 359188549 471802639 302078749 654960912 811606416 901951430 315947170 803215034 258573951 478433381 369445773 772874522 612799626 700546251 836378175 999806284 551526049 715382905 784275379 796901860 78315240 643604511 748945108 840626488 174211724 462687819 828698340 888841455 47736210 704549029 899960803 999150568 727812815 998287475 27162012 45626330 861017648 888825983 185399598 571103508 43563448 585217254 233766801 909601163 948866744 954928924 178502641 496704988 739747323 908435656 322837729 692162929 813056905 892163920 681833861 839663955 656738764 977227548 994220240 995193489 312935916 677131778 463201162 556052926 561625445 710119593 81389953 807239885 136460763 883128763 88722701 506910771 249486227 636414031 905014037 924829773 653468977 919608615 260329084 853646329 761463948 788044015 82071176 505865893 770901835 801726933 215806228 318881672 588993396 977385722 82767425 273526264 394752608 667947887 601963864 937376848 297370752 541542316 738128243 912971454 135569113 163098995 215223079 655378863 827883011 897298590 490929695 822993476 461221601 870956974 270316234 472601148 155949967 934575804 544307616 805249627 805173339 820738464 757204536 765509830 343562282 405933158 586004463 882623323 607414292 698102070 258700996 635015166 945979531 969536517 232697345 764844993 941128725 954846698 927105702 981929502 466823609 822747538 75091639 765104157 592616817 840979290 78119052 175670849 136354180 384793312 892759231 958255713 584077910 809842055 744397633 964517379 73996396 900369713 993591319 994714508 273332394 560315902 672577093 978182872 521723304 673902655 553144790 586328179 172895936 257321228 986861620 986928128 706179306 728700044 800235212 936576472 830727739 863637305 116980774 985651273 741056670 790337078 793435779 898007041 578925972 835281730 622448688 730101512 272236139 959147404 314961819 969332711 726575713 936377331 690353585 914592396 524413629 573787768 518112303 528719970 540713993 977446567 189973827 975157623 164287586 325953897 12801006 997994980 926372364 967090107 568416492 753848764 664651056 685431542 855616886 890445700 377815673 827751873 927340707 945824764 985315623 992450192 372814658 881940758 941775733 942638782 226778842 334036241 109279015 990539881 287395641 313530908 435697279 962447174 935672191 976265263 962761889 991009126 154602711 500390647 179644257 524630119 728905960 877173353 728542954 756442396 802161814 940657153 456408202 808103245 411615492 901611121 270520811 889796802 756263399 816583395 952374102 958568441 898854351 914381024 867891411 906173553 539805638 681081148 589045215 881400200 739584422 951266133 38589779 418252753 620377193 826582730 410028377 974709922 644197611 650402246 725426734 893246658 903674182 933652567 812211898 973358087 157258418 176535896 126721480 148079882 621179953 973613004 978477385 980438517 79173085 929522708 379733977 912054701 867196094 913272672 383057159 750273718 689367389 989311026 962179924 995401833 177395703 391464075 814269725 918655480 594038859 774356694 255635453 566285700 547960612 575881680 783771860 925057248 150851841 326820518 884065466 967082185 364967096 992227568 305247557 646243229 34909211 594075182 669845329 928117507 653377938 894330098 730727065 940005392 627434102 782518996 714951035 980628371 263471927 718387329 7734570 257198842 346297585 425178385 633928618 696692143 484217870 973036116 816066347 934365787 968551229 993798197 854468322 981820995 563246454 909265960 162507043 944517050 60446299 290201856 667785009 848571459 971525250 991091378 592531662 603353074 826002024 954880447 408584144 726503717 298965106 319619742 917969616 970225989 348905727 913592650 368356817 469768086 999002795 999318408 881350677 881759284 844636569 994787104 533139946 620035862 775141152 985802612 825923157 863207678 29956670 318015320 371023926 455364432 777168024 932303517 823519806 925157979 433059530 760902444 14249185 266740811 708501005 893075016 445217489 614230739 268727020 277750825 360703848 672125413 356050667 503143387 80741843 429259813 428237545 481481557 909765211 952228481 807507966 832407313 89461439 924191627 629426357 651159181 947344771 968972633 406107929 679794707 525165441 740931822 392505219 706681365 284741620 921948545 104813614 846393962 523322315 842189798 196140033 683842389 940667930 963877186 677484355 830712530 772475885 832515892 116370707 907638203 309433096 809298545 219343698 225139115 895598111 901151980 212862705 598789355 340152071 554130509 105146561 691165527 832011284 951437218 58718872 713304723 522244888 549190174 185879758 234989992 136100754 372923735 123313515 562427550 562276663 740024239 512884448 577549622 279043986 881323979 648405826 789120139 202612470 268967698 321403676 637018924 352460228 510531315 443812115 644154856 559477888 619338552 731083115 833958949 395164015 760522223 390217372 484849823 504235132 512904694 384342695 593925800 697720467 972789308 992559210 997309800 926962932 947991119 637175914 869322653 493373272 806852157 714981196 926074789 318645705 589921035 497588871 978460282 949187981 958698011 576184945 940711663 34652578 929304569 827366149 863288167 525869286 706899933 874610089 891529087 48462310 538508785 460359968 790894544 538249971 540100678 466694329 917390862 387410217 796753569 554742629 818642532 436426009 668510608 752290870 802304467 192769310 670639519 644410887 734487145 360323227 974494800 136736937 282048801 247896391 595144079 38141378 538919536 143319144 670327859 87355871 649091800 441708909 605227910 280276268 522629496 548484486 850754718 110098579 198215534 726161207 966657486 882237509 974262351 840474968 970627609 83471642 143893685 249218658 312284484 226664047 877457480 602105542 740747236 392356058 994840110 791072229 927592327 200554017 486544540 804845455 993453214 940184351 975332251 823376618 893503240 644678066 660846202 196364857 607177425 155037540 745399060 47522348 47898593 95748786 119790883 847571354 918377503 159460454 459248237 171377444 379764573 449590904 583703678 598385618 781374518 424119004 734308235 737697237 798708024 803878082 961333413 160483921 941421228 748380352 799791355 66264659 907614898 694745265 984339942 621994915 708620221 143503988 720451221 362300853 612963072 926288743 971494283 473806088 738971959 461879543 734266121 383341174 862823493 445079044 512332322 777916493 968601901 6280067 657307970 7854375 563613728 936823891 974656711 929737838 956255934 716993301 964088910 52147417 162503817 244851366 616642062 16526804 554126101 732134643 995140328 401598109 839269591 172071944 539250027 499019172 919961931 113322837 569058656 89404155 960337171 966940903 986851137 580749390 581207419 641999911 710837183 757141658 819923341 329111835 492782527 754654762 797612425 439307162 875139550 751341808 784352134 395618136 839617436 989405875 999248367 831964656 967879772 136144037 749578587 878251027 923653795 811772273 868850341 260288242 992144126 626100946 830912420 259675548 888556868 341980896 665939488 470929881 747849073 39531430 55963892 570188626 850726819 547856284 921673283 306344362 749816861 362023756 372033290 352600359 669967059 365502437 542451063 784941975 803653493 654898627 675819756 377964050 394336933 795055690 980069031 749483013 990721519 336107859 857532872 418700436 542835025 304814904 852002503 980791704 985659968 647924922 883206757 782215402 824870956 972417978 974244757 466232208 954739706 389822309 694958939 319031319 672990821 419112080 644215476 294557920 441327577 842464815 851808651 28124565 813608221 242886983 356539940 298717207 724352784 602252571 741130123 273291552 780970319 432425764 666106819 179035377 745724890 955195451 999797718 823894006 983418164 300132179 668281621 678468484 785353463 932906004 938983675 16896030 416664524 201949882 443536669 998260704 999348853 690305369 875551790 971980258 991493443 997705351 998492654 311210041 836372537 178518677 277488082 295636627 856087006 315414433 950062269 282892105 794072880 345340519 602694441 673402459 735615361 173388253 197153933 344445285 588269063 22742807 514971640 483425599 788864598 713179955 842650949 21093097 355165355 63390875 541097450 528050521 639499987 901946506 912879570 446522990 516132394 384909240 430282100 132894035 669589184 724809319 988252327 519400795 881415561 10699175 601136697 236279673 577530523 277133635 427513336 534141668 929374689 239641432 853906539 110438414 510583451 884983077 937347613 997479669 998409519 937969574 992507544 833744164 975319978 345758381 510980033 890014212 960457829 474152166 523876950 111207308 767115939 171486634 799918807 117563083 621546875 706190045 791951082 123040877 198910024 101178646 566162491 204110194 587578315 535337979 825712821 885106286 932940896 52664899 387672951 380121015 488262141 484812009 656422398 72254380 276371184 60174050 798994817 347607800 916489199 427084978 461205019 503667173 855012190 9991050 367374403 900048753 901640887 787434759 984785062 177011744 886054803 501399603 750644105 590799887 866299971 240326392 598239826 224401881 521428629 126181321 553065251 171414033 938074538 560721491 582589566 337185088 494089778 8639316 466080735 83519249 761474369 260996430 949971311 616949193 678267574 13784100 698913377 159243189 790079150 128493807 987316428 673249516 911053457 941958351 980095053 55738547 470523162 920586685 977213950 291031460 627524376 544789238 611137965 602624055 822782301 301603499 853142277 351356694 923250663 127042293 646156650 881927881 944172753 609578445 900032561 773856399 891783695 247213303 515448892 580969836 894107903 73618183 401389722 684078691 750864129 316390220 865657722 77664072 779546424 275252149 884170250 547522959 600903980 787686024 913133124 622085350 989275742 154727467 590393181 683586909 829677622 925610416 962360800 779498173 787450185 499991411 933502065 607766444 624118264 495701581 976129418 792041980 848250199 840152227 869204720 892054691 896512238 408515217 996670896 149401785 404856887 362880995 485954079 955830183 988104033 434443586 698319596 600687935 786191722 997514153 998016069 49840776 140118016 178025414 816421318 474214148 494256389 844418893 922508651 903524801 937123031 189241640 384024708 773533504 983476585 539073926 995807715 860750541 975245521 257456776 453285561 679408158 780605542 44206411 475656171 298555442 312300288 265294868 937313633 592896217 861571745 344866544 617392727 221178838 365782980 930344421 953337446 415049472 770417533 547222358 698795086 80583632 378348665 118362751 729623516 785693702 926217596 249543120 488785737 168009195 632251819 365758683 844908460 240194363 553695523 576033668 839769495 532039206 728039549 384276566 782118760 768887725 855058464 173312487 372750325 400675176 859670890 504502812 720474475 565367261 668978878 387993367 502364169 939587764 975995228 490925945 894509409 577309866 583868924 535327812 797907299 957694711 975847777 932509768 952887373 947970211 949702321 134639044 771188911 372209477 916601178 491202340 802253521 614486803 951877186 674534699 710248428 463299704 511166660 439239812 601779430 505763622 537188274 235082034 970274363 742329819 998913773 826095506 950525419 62902043 212536254 484050047 707755072 472162712 881219683 421351213 495882118 748779411 936036897 827378270 935365395 33851921 614322781 917322885 938808497 43033176 156447557 358524629 398669431 937716579 990674280 361010929 554102820 861414336 999442236 446512052 737566293 449812342 728229806 895288073 906433573 105669429 309667568 225367044 791232377 650326900 853906658 644675640 912318342 346610245 913207396 319267096 680400690 449679271 999734293 39905982 742452040 424364577 732438671 666783755 939135185 544466088 828618576 163012112 431081247 341674532 827304448 290980764 315060417 102075635 972388974 455753132 608575060 782947938 993764610 744488812 966984501 263658236 913776972 601880682 634090017 486525021 772318372 530350977 574016415 244075530 900453150 848509461 939040853 360947104 466961939 423722709 687219715 363344526 532082112 800821032 832805764 379307353 565228069 939997834 961601734 127189917 921884145 12834943 423529151 397509622 582512367 768044978 796850129 936017249 989992212 738717583 782039609 547799011 713679692 312598214 914219074 227182106 629164652 710149006 744922334 740431509 849228542 122711542 418253431 720384503 985281755 722188607 838817363 781393107 991398884 817854287 883989853 90289990 962367674 540124919 928910451 811979094 884565199 133195310 490650221 838209043 949819262 74624782 840174894 169622462 198385865 42228922 96701233 78116289 252879520 43086230 999256505 386585973 827138105 197098764 253535750 464655819 731948315 840297312 988087185 435416381 995362760 217907208 300282693 210157986 533599330 476475 578549929 977594926 993694895 562440303 691165496 698723782 883011574 791406581 996831635 778280800 902040749 999554561 999993111 242088438 892879189 325083996 471023678 459254203 480694288 242428209 721853261 346141720 798161849 108584185 787388378 251031621 941672974 778812643 827199727 668145605 737503653 96094566 621418367 825030656 992057238 153444481 216176002 163819970 893838123 470476039 572706310 817765317 880643924 972348314 975946947 184512589 573867698 178484267 904165368 740746946 970053523 572204190 865928634 853765153 913648510 79508938 153887339 472414166 915662554 303809967 790915549 905776878 907293812 155492097 335385335 588057508 964561963 822754357 972163898 713348504 900757288 4698949 235211722 357677407 705719459 919149135 967619132 123326312 951749532 399663265 634289120 643712680 865917377 232259351 721902179 103328708 173991261 127743928 356041993 481549806 974482396 68844228 453690700 926965275 937552791 874369570 997515615 14301288 170536374 541727910 702679370 968880307 984059394 353848971 382914896 960745441 977927845 525911177 728339048 148126192 783087822 666112185 704647712 925607153 967411624 815086062 907878985 63590094 636540231 54658717 220301836 786614482 955603436 610544694 953829526 652036675 960500919 845843690 988843920 284716434 366015636 935255640 992816589 231808224 234101216 762381415 876682299 919781412 964414465 83143620 352174578 45933106 368229461 528322997 826332854 510946517 799172509 771947874 970356433 885221969 906554599 406121642 919961024 701919242 843915040 544795491 920910334 208836782 589307108 597825709 816588719 305022717 583627017 400028576 750382425 448498830 659300506 635479830 953641066 328629566 949698146 16395585 441092281 837377794 920240042 704878936 787780079 736240224 933821164 835431199 908006215 955941118 996181216 49164564 940786179 461908340 858632355 417026007 918859984 961195765 990954778 137323249 254169158 142500628 487593949 786529136 820840625 344097581 628387494 426401495 844306244 829306341 881250177 865259723 958438604 594367943 795089705 285560164 650816617 303911915 442752182 760085017 774524764 107519998 147069727 168610260 423772457 205856129 668910617 790883302 830073777 188653525 601451275 572899249 789861681 125094281 732130260 954325439 967617079 787215450 861490726 407132684 602729809 845796202 996905989 288217939 640258831 588540898 797424285 741763725 987010220 751549218 784564138 492743652 547668248 479239181 942358574 837445344 859996431 150257664 507943541 583948689 691110527 749252538 955576074 824017138 922822032 361130078 862304020 558583423 611688993 926053813 964630170 808830191 827652600 365052965 620185949 153138291 665771035 166319909 717604678 338090547 727955502 2879052 584340254 986007462 993251977 618153522 904746681 804114533 891805625 540809974 808062472 143951133 839608657 213816663 389367000 833253820 875941873 829270984 975222031 381444856 790345011 536111319 928641089 169719084 418059827 897696686 990828236 857333019 935972689 576677131 979715138 542391558 890962691 583382731 861355607 13328162 35245632 554569852 778705439 999888670 999943081 28176709 972229520 882405592 966006217 303636550 814014107 83810635 771775294 663609177 797590139 988344180 996763236 901231532 931900620 998219952 998985101 569190793 801847912 779211138 802035482 944205812 973302690 382019761 468630263 186136545 594954287 200408973 939141506 465218176 625211850 3825492 142993876 706181260 866128238 176425076 848203647 234280914 706003234 21782659 37686472 559978596 928208437 348248924 587192648 249477698 744135890 642124103 976625226 930563736 998487249 937477300 956438466 448657410 739887162 607578818 656890870 522052840 865832882 865026329 989638221 102499261 239915281 244122357 646031623 694685048 701194610 863911856 930068360 496618447 745143752 43354289 754312558 851794587 859803063 326105735 488780597 823356106 911495820 525860607 637366453 158694773 287410648 211514025 614167192 724867891 824016949 854183732 936897910 498696036 837780443 140796168 303844695 351494326 796349883 483452610 693434985 80472618 418459057 331603468 484987773 693847635 847394316 942044471 985558262 192742242 773969552 260524214 635898261 479028513 484458346 431573052 634650438 634728618 948631525 883029721 918177924 989037176 992545315 745693910 861184656 393405523 651330621 876816167 994402238 918971966 925056848 887229596 985287964 358798595 577295105 496810902 774076890 473376982 932343820 788769818 876563923 474916138 793967124 742763371 868773121 510315782 616776113 464466755 819972651 717914665 803546300 213095485 383351306 670924808 798963025 835618583 921264392 375120710 448451117 490879494 636148176 726461749 737984332 61473191 704752662 57372819 689402634 389099498 594121496 103453387 559648185 84980349 399898932 541864094 602370727 302475562 915140761 554119613 986540162 761519160 896310278 753650192 858666086 204884856 787835926 90858659 785724894 516836776 680104946 700388552 718905501 194348971 556707104 55360464 788252930 518038961 989456308 678650693 769052427 806351839 895736796 227092445 899325072 627869071 882569467 54124421 586663864 879426433 963785279 668461785 908042936 427142174 595751777 981066318 987528879 313269295 542548348 862837356 960556125 693044303 884099352 352014929 617300919 255310886 658491686 676466074 715608055 456558065 468469411 849796728 933735580 46571875 379357830 491285605 958441520 397672649 646017464 690833595 838609833 914466401 963237297 882932363 885993764 188742189 785298136 802916843 920288068 127582981 478674807 839279741 935841778 52599560 801162753 913538793 918860690 871508819 947324333 590304581 691858029 160203458 316720935 807711875 947840349 405229823 663322682 137858310 429526475 668052440 925832624 581279629 961593323 784596546 895761325 680530786 932181752 433972714 942193703 221831753 520975436 991256967 993375800 54543510 860951786 310120082 550790145 831678261 994916545 810305309 951487326 198978827 683673934 101675996 656545279 549793296 590919897 50719396 511813234 295100815 620141853 580503844 971774565 896677466 957623958 99965983 306869158 26113025 264641692 712884666 847730427 871478186 979910152 202273787 656565679 292902659 801419186 297046407 421657147 104421341 172741426 336081964 859210911 554477491 847671247 112073458 890580866 84335594 461396046 318456771 915248106 5456780 640168303 689509607 696027816 415530368 516776154 57696505 838110584 158987545 586854013 985297977 985769350 268208770 604477592 778181249 969056962 874953024 966758931 629108435 984768623 637419165 746734460 814669958 970907389 233790463 909126597 322542621 965830607 11338448 427690768 445203820 525939635 164620543 588006306 895694017 930745541 217371728 570562191 854381339 917637617 224473970 653724859 116638601 306512788 359628480 704790160 422118318 997239318 592310255 878695595 446736488 910139579 40948948 496928759 686243439 875519170 107930489 333709907 216306734 493540929 321775279 345172462 178066258 915250436 966432387 980144771 911580516 976833412 698823853 954950159 250876666 758299261 341444708 527290210 974741314 996780168 259730235 398320751 10358652 805129435 527075312 829794973 380919396 620761851 216238964 481915432 941032513 954376991 825081888 995729546 919580165 954524809 3188941 78739226 742465408 814264860 133188917 642886600 259127126 789883909 673745554 840197312 791224019 854485395 579473127 837934711 184711461 451607053 497136319 686034599 770163122 800114732 454501057 532846925 694278615 720297687 393911114 769943416 453883104 715413000 601295386 936161986 327444990 671836748 412672353 631146906 469006346 886990525 271685089 467573728 116721775 874779737 451229428 490738811 75110092 143419080 951375697 984896241 367900943 596383933 361328258 622152579 691905731 907400171 715882821 749364818 558804419 807818770 845941397 859570595 901642617 928904417 640454615 994879019 747548021 800119578 504763903 694481840 799088997 879253690 222636261 409165937 162910094 829489686 893414189 926422546 903168392 997131157 790747046 893372793 418305800 701208343 492531252 842945512 498849475 634338796 827029445 864063721 531819666 762562577 258694100 614093517 449598921 825597979 508573544 575553054 146760903 699675196 930750385 967668945 966392962 999752143 877921378 905740412 409377391 528167384 286063160 540460379 862035744 977474692 986640568 992369715 661050739 802744666 281455723 581871329 302893584 897987153 560673158 995490175 898576371 915181020 360976157 660412257 591929613 787980345 116448612 615392308 517918421 776224490 964836518 994139908 367070608 860916904 176852774 238024338 263765435 500018603 201667543 692998073 836340156 895548666 849051728 969549811 603074264 726154422 73737618 826130330 432393550 465112863 72742665 827021499 900441753 998365517 440573931 992913181 1611254 69183463 552827087 560233634 550358662 551199799 663617595 698407557 303336542 586091705 668766667 860674400 73632413 104943222 966533451 985671450 257915534 465012692 563589647 865552229 961534923 978423807 16809157 619734548 524949224 744102517 773138115 855826870 684839571 910601170 57553928 602056529 460763128 504596874 985977339 988053934 802273042 973166032 846247494 992804814 761290674 983109232 948607777 968342055 775665313 850599807 889457279 978817796 702963550 817636395 888213189 927823845 811024573 900310632 475813691 899216466 623507564 927269034 521442335 950226695 933419115 996658184 721567872 733329564 657779621 718654149 44172517 897663700 552672115 647491067 472320836 769059914 238898527 658574352 849005081 891596199 184916800 637910352 286647726 751528694 979359886 992130285 333693407 361706600 196580343 233001151 797131032 951804956 858658264 965116517 493241284 725803835 935238054 967083804 306528067 827675413 912168400 977731183 351253197 767273319 58202841 560521430 107119024 635663031 453262378 616253556 760599918 943795634 479723443 515694775 965169963 971242970 212267333 581281622 818906082 912363762 347561243 758934133 245387503 963317304 391273406 841042936 914772252 927454210 368695903 621645883 34050377 684538449 147025690 927846173 402178829 474873138 11596043 672457343 263799154 491950154 588186514 824080720 406074705 430799005 104591229 602058830 846972610 978754050 673993431 993984587 785842976 930740413 165586934 742240631 136859190 747536560 961050795 978384535 22273756 514089573 565771622 636276261 31551316 464782013 642940006 974335705 718179624 982060058 904937693 999160344 24797593 217273868 457673712 531521892 849368708 978654963 240208105 781251194 309385174 866423857 129619931 713577488 187375598 507884634 285244287 848102719 414173172 439963015 239705424 793500185 487728836 933182317 42952206 372289009 79928768 567889706 182187221 634836146 829637989 859857720 214506116 510339884 468584825 516469355 815307583 937541142 434009715 486376036 448497897 740740489 880720042 935408197 405553556 853734315 909346346 990709631 326327679 447507166 104627777 774020591 550711488 879196342 435628200 785760398 590928465 646303127 365437666 900760377 542555501 783647827 373919903 838983557 477479959 934137221 906439572 988531201 687867644 977592599 830575663 860313232 733286564 763355149 628420027 982003438 711472247 905677913 211418805 982529569 95698191 868270550 493576229 981286784 221404366 330425238 704133816 715754303 404100414 420517245 712551428 826467198 392746349 480189260 691526949 770483485 435011560 479082374 400827556 734077244 673423503 999412800 130601809 377289092 758125117 963428735 412321869 954196095 868962649 929477661 146677941 836458564 366888327 987598989 702538656 745626760 477551031 814057011 763927068 792283744 924845877 993833258 821706550 881575248 123879720 434895456 428052245 700360983 172736746 328698102 91724513 779444029 180038190 512826868 637003591 843820433 293325790 395275489 312378625 385635965 938015875 956320931 453285488 600029260 663841732 990534163 723658527 943385343 300124515 820158501 817495936 892754654 555016432 984707987 658637017 991027795 65176061 179912274 609336788 786540252 721783262 817592726 310715025 533233721 776798820 953910307 627298700 659061020 666682416 942049725 462326149 616915130 38911658 726135993 716775674 984426415 126275430 372681640 599783318 929869653 184868445 208424798 970409080 999405747 694025599 755624119 980492297 997336884 747078679 781960041 882624502 883318358 988156574 990037190 854330613 925887050 710472479 780617473 147047624 910922149 372953571 704371995 5463466 400903085 126267494 652737343 907495055 933100758 717164155 833649607 27001923 920608133 588878149 666354232 228873417 630653996 851676342 894253099 333419581 838335508 313873055 375701745 3351399 164464973 43090290 572126404 713688719 864277019 586514517 621973305 567790120 693759988 890115316 958701304 309711085 715580668 710598127 991879561 561813023 697243810 254600126 943446907 783652982 928131209 604042264 901410400 994347617 998703350 865203547 982273845 409761176 751374339 514069821 593320358 537846688 994610898 298166248 471731740 658951391 745013296 934373488 998443234 719612071 746006812 761620719 789760530 222061834 437388188 122350720 354166893 504934463 706546361 282479574 503678928 606856308 830181340 710128929 831158975 934825292 938534898 372748498 849140285 983535361 999884758 143049913 162610067 557617203 757997466 242786692 946957638 868531169 895883072 850945698 979964504 721273431 909346322 61734194 790488023 593989300 802816478 143974535 660499755 751937439 949157151 509743534 904526625 5458914 860432863 347331611 513636653 145795514 382781284 265902093 298517587 572844340 663905920 793368250 853238271 8897653 11654865 368449541 938060964 280264587 927104188 477329410 481125656 343515988 524664008 282361445 718562645 841721627 916820378 264720686 610706391 9115987 473568550 335559956 431077001 858406729 874175072 82266553 88760506 661522054 993748944 664649473 851551266 6387171 588044528 642179218 732560689 728732067 767857816 163211675 996455866 395943892 812892737 118110227 654157699 432442641 961172135 720311159 839000791 644607861 767021213 973343349 995477230 203533684 949062352 150738193 743787503 444083544 642993340 170825324 497059263 483778004 955542185 329080888 688577107 4567594 961336988 457559368 562723664 997702948 997901780 444232924 639963154 586997083 845822712 614071119 818747508 871344490 992848433 632844876 742442979 187710352 376530771 768523429 942042618 988531795 997183859 88262008 935665426 729150253 888579152 776432506 891532835 941014464 954606855 545352932 705718648 712601518 810634058 706813477 826128742 103944968 285782319 170963850 639540243 739166855 864295987 90942512 179903740 617692635 653741052 311191730 711064922 732695989 958019247 875802293 907512602 232693573 813198910 181941336 444235050 312818536 653283095 473782632 696959951 66589166 584456866 772604282 871732018 156270034 406222531 365049246 945214102 75076197 647743989 574638296 898786242 67708837 937917372 480895531 550684718 364028742 546864958 695277677 955644734 477533420 607235470 256183559 516092970 484323830 910436395 445893860 901755580 9548719 395390951 960281858 980435624 934658926 958031095 382090857 544350401 247635400 496400090 429027991 906609674 25617564 687033369 362900751 439910570 869982878 913288379 346392016 698928316 832576167 858795865 137083181 889628879 268557087 908481338 169313413 276868321 98024884 561837144 975998565 982211892 469355092 522384351 498703329 983593746 258491192 583945882 735840946 840061468 290985530 700794968 616846508 684559246 198531304 950515543 779051965 957654890 552641069 622081839 587128634 910452757 615565064 875275203 322457203 355802457 6092501 962510087 933800679 956621728 216130527 785461960 448942787 598767629 834682113 918059428 410150794 816376556 674870327 842764363 174014039 342724663 796294804 814015982 224821274 566471764 975801665 987629013 18835829 331170769 591754232 768851777 606183330 681630886 430496068 716561100 112426762 292075259 575163144 793287773 767575898 913678346 880016745 929329978 406610372 749690231 894413265 991195604 278688251 856363555 280199300 305999378 480696020 542206220 433772704 435615632 435080324 647595560 605786790 810803256 967400202 968077241 999421702 999677727 311699667 550874627 453305934 989130090 796583965 910229442 54639585 913755398 641887705 672166766 155431288 642712100 251300774 939164901 69132275 931599151 945213857 958566013 244435090 853297756 977382901 985375748 931647786 997382310 602458425 950012668 283722310 538922144 280973965 686805359 325393578 345572205 543067753 799423474 396179524 524963663 257036762 569101824 243252406 693726602 689484253 775107381 661060295 830049680 853018775 955812126 561750628 966792360 509464419 667125449 774928571 779855040 691603517 995488210 515414189 745435801 197383936 532268394 16905547 991717361 271399339 363670727 785109743 815267478 286542076 840848206 654008025 959284630 150364248 870186770 763528702 834959432 249433935 628228577 2925496 815249878 852709225 865017030 216873186 883618586 455445810 774588368 236925755 884176469 56753194 503400480 322062051 933322089 857010560 931649139 725774221 961181272 393390031 779024418 295888200 674782830 303951503 462045629 297602980 861455854 281486718 752240097 464933870 478293058 126253715 891631383 788581539 901446172 990797981 993642540 908835396 972958581 255054252 698726541 122019796 452660586 609071810 737196306 729467292 895384653 204365840 375452964 568035540 723107475 775474766 909108384 149772342 175990799 206436426 837412321 602173985 649117993 242972787 985322140 811662130 857621433 624122161 711534314 898665061 945183490 659688617 857721967 926705230 949784538 635371941 853751228 618741862 958844158 471536297 488851947 27547959 879265275 404605649 853566701 550610848 610581463 177736481 646813758 778775275 861001805 808061286 835269475 544265284 745616095 536244916 619352927 696579772 919496044 33499537 201896623 415990312 791601380 692331733 983389120 245565012 311363865 390113214 969858812 458967448 736860836 280141803 782156223 586398854 977759880 380332820 825310866 617444256 789797975 471123322 532463924 229611710 725576001 64321541 702206014 322678824 993006488 296913153 406186260 781718273 790257252 953315389 960432272 513210384 905704189 619872399 866471748 385697371 673569962 204960739 885969400 774064842 790868944 491226313 685813918 193526887 496593487 216628408 932828216 745231307 873961485 171791952 668493533 678467481 721927920 386179328 915820310 557744143 948487344 323373643 822328633 259325956 595281753 883854895 981154811 25024941 676074967 709980372 806808713 93473462 536284301 587242977 787710230 416569953 496306155 134794606 690092836 751041299 771061644 118914577 689599194 86690483 914670977 859651823 878538212 588509370 663943235 352773131 424612450 595151034 716329471 949982805 994812917 28952001 267309321 787138045 942907737 796576833 993239238 39463379 753672445 182136829 212118180 721081801 957289018 595041949 974006669 473047974 634219047 295835826 543735825 715141291 995282258 294699931 987832685 646206409 758555311 59003267 975572955 116874579 641863628 240613303 282322905 535395439 937128939 184908406 347025526 623003699 687997596 91111919 100121155 630995629 856877011 501983719 655101664 507827218 913863750 388136746 544009553 858559653 912197710 109241308 467294848 882372965 924951147 765392543 901603267 882755437 996725116 683299225 926305369 301653474 533012197 736752212 918395026 457176119 522902917 4597047 383007491 44382145 707571811 696372034 939804071 303021393 529465304 914573710 957155414 608188049 969852671 793150020 824998251 771615570 866769702 582228183 868270483 619339214 766094569 584707928 628620640 201093759 226834127 638021354 653921002 967758878 978835872 972390311 992630795 559808854 921824444 418152952 645517226 508803768 610034749 119490749 944743897 906135751 958389432 367651997 669739511 301020894 705440637 215232116 602099715 619003887 908678576 56109201 874154855 545396705 786614665 55256547 152985362 347334333 837657096 993636930 995302981 349672795 784495745 757666955 999849655 378373800 443098919 375705165 422722473 699114963 818838852 695343469 926217039 754117597 958507247 768710577 812878768 195363473 959813104 187553672 925964204 837011161 947571549 958820229 977086188 447860510 969116513 563015933 854916348 216913243 561639036 429845491 476694071 807372180 944455837 541283886 639542711 661899990 749664984 993084489 995090437 815499498 974036792 621915863 874453906 514755350 782147477 801524528 857163664 489560620 746225259 620483090 840623726 198670091 681353380 446931007 879472270 103603425 142924973 438010458 614341387 448434825 962566795 735705280 875574911 304372528 748977005 661733539 779288972 110162279 466926968 371655479 664472690 735571953 988674188 775100204 890544006 970184419 991441584 2337169 678326397 489044785 700238953 173797476 822530293 679426015 707119569 545126633 608054939 401411820 682961188 828715511 867492388 413392151 774134937 233339081 733089431 621382189 787036194 264369334 302232622 769396100 995554875 841789663 857098445 330222188 683264461 528961652 654745835 770287715 788990118 853676680 931792394 358190567 457492616 917660353 953755148 421704238 841363279 379134982 814794072 776410122 781495116 742440802 823022672 253112151 829654570 994473549 997640103 807086773 952472517 652193094 821772561 317172717 614236319 332555692 962326379 698902164 982040703 306122074 390361257 129343144 812423122 691135341 852241766 949595810 996607967 282073359 985704655 75754117 174924778 402570083 738967060 793719450 825657886 527803728 607522985 449699614 575149510 375906965 566996260 264351362 573600344 798400910 818508162 841239391 949013595 575292615 820625284 614647875 791263974 481178903 726351457 901766343 976548114 230016685 378741440 574487011 736589373 21592482 614882056 830655748 962022184 557249408 925385387 756552613 844209840 39115645 794073073 698981079 850630316 597082302 940167461 361299659 935320963 655699863 920183479 573610247 919306899 614252351 843535777 705907248 971770260 612999218 984036441 127734233 747443296 667225824 889525120 354085245 405968885 36536689 84407289 92286701 920683999 657241034 744032050 314379760 532758179 450793340 582775754 933964639 953516755 22076110 875768893 639269444 812167158 815060484 975973495 298590718 954020351 972726564 984999365 306058371 495003258 942721886 958643561 909074621 962657939 413765162 430344668 398230428 986496725 23265159 72554636 79767342 321677510 790493272 949366543 847640175 966658026 150811435 933855006 607509691 876988741 397796260 581668708 488406724 765791323 945554558 974145173 945589428 968292641 949811972 980438116 487386086 649731925 895748665 998342916 993257404 994730396 224310658 852378578 169807250 281541552 565048950 804102630 43535262 399644993 501014772 514708093 118815430 533753105 433503091 441678698 843490608 926827810 561413804 810335358 762016112 981768488 151180311 342077936 592427798 979478402 764261629 924782627 338905281 686163996 443488957 696159475 43142624 558148980 175480203 258274270 966571195 985221294 628084392 686466451 292818556 816400931 846938102 992185932 701478966 763304171 192204877 920281430 899684664 977011022 306907201 569670071 122868253 624121423 513542870 753553561 859930139 903000732 208733916 843667759 781050365 990822406 118836270 932790197 677679057 724205888 403789451 693237639 260287668 843611615 305096083 780591007 925485153 988803672 712145121 819857867 510302324 514785215 99199185 191649453 728053727 952271989 710102172 837382563 640153602 705736536 91164021 210753947 254211624 444179595 102410728 672759963 593536277 710939585 986462183 990913645 903736925 958162885 510514322 769361447 846165712 943817204 142076029 932088736 72582553 510214923 529229402 994432390 363587484 523497413 704658996 843069021 983941278 991218114 655161692 712538334 54489054 322685908 776784915 852880346 345140165 355853698 38435432 473552310 647264354 757871948 802663018 897199019 462225854 859398644 399274293 591607712 189097754 622933374 684242049 985033576 251364683 563828236 673669424 827010356 45794719 480883713 694586727 949457198 123996826 661684245 158958774 418027715 57757174 119080871 287328905 423718393 890099653 931476178 358216388 446516110 427699433 798782816 686908609 998524916 680026275 882992427 993039416 994226878 407191193 917123626 488990841 536265877 494784011 602886893 237384345 415788947 922520863 949244727 913209623 995298031 986293946 990029106 378998382 475318231 705657523 928779209 210469789 611625928 290601989 360400237 266474254 498322408 823792546 827049120 367470494 943826364 473542742 744531522 415521772 728932528 593892536 753222624 590741070 860162221 425850472 631545298 850211948 912421681 509667013 987580813 257654524 454993113 326003264 408659738 37208043 156150149 797518213 835351774 601899997 880625841 895911927 910836760 845374250 869684609 392903224 969084602 355082770 840687098 446502472 928586375 786419822 828939088 728184950 946368407 40505594 253576855 294778653 682093813 892619865 972376544 146497305 213739214 61045709 695935340 249046109 460011195 82014560 873027773 569914487 934286016 860861674 912653167 976045245 978490734 825258345 935255980 15869689 699240870 702699164 974804052 171908389 243705413 643944901 651595201 55799318 324867414 903812323 939866640 90426959 184455055 147548980 329800875 725342964 857968980 377890612 496508019 324417555 879406209 836310884 966097157 174973062 538888699 191499906 941338532 854064209 949910386 972447659 974978929 592872219 794946148 426839385 818267149 944094357 970474110 823200367 832671919 41249472 681733375 418491568 825015414 857268739 979489469 345405555 441775278 993229371 995825537 410691524 542424109 791757300 893057869 350570909 512674845 863371178 918173588 861214996 930479220 688542007 835496106 705076534 727422875 66331161 223975821 453474223 585502433 736795810 924824165 684344008 717664039 443189783 944342848 145315363 358827625 502607490 857131092 620663739 667764996 532990208 963318874 237087714 645075113 62503857 719809709 815871571 998265501 855080461 987251231 473306319 857930357 468584398 884984081 241610000 271773407 765976687 962911256 335311518 702908809 455252833 676072857 152391305 301574641 114084976 184887502 56406282 429206818 562772133 738026288 898950629 967036170 732989230 958296651 818674126 856857011 766223125 778380987 306412217 898100845 679186729 824093724 248916904 421224037 70140864 696106439 382115963 741969982 577717468 993478444 894047592 969333185 573119180 630356010 324284764 828915940 835633493 870324843 527220565 722239095 87810306 116023851 315473298 346822625 31455982 673024171 229580645 447513183 749666865 781982680 395946156 827535667 428659191 888638604 135562269 569045028 687782868 997153145 571523053 636569435 398309339 456939214 388189554 473883596 827166939 880782814 897107302 913906840 430949002 816128503 82695913 980778264 639352271 806955880 726072901 785620166 822037649 969422290 30192215 672284371 544525778 740120910 193915685 509576152 737459503 791494934 445601227 452278767 60018272 994962455 591319759 972665013 621750632 624039488 526893298 922155914 32549983 135745893 1650208 738559374 938478939 997073065 961767624 972580438 492139423 790333891 247442098 638072670 324945667 970085320 21920199 122569940 3478056 23299987 356828765 482142904 77710340 397193040 612908943 962820515 181714650 540087553 225179451 447776497 504554772 968290467 771383525 927124487 742664842 918600566 762953657 964483914 319693200 679776598 255481815 707132922 524560385 712694887 345035957 425237981 645123361 962479233 246375544 886795871 840574632 924283827 830324705 853110504 489325416 593129570 27378140 86498374 226447364 798174279 882772210 989708344 350797512 591544928 683965541 984446645 376238490 432510625 24051671 93110597 451484982 788503714 143375315 933404676 962702597 977376618 190463848 336297813 517002981 917319516 300347594 652451922 661407810 940172563 765746101 881207673 281177503 321828243 725137348 984676408 436864633 721163426 857135780 985051474 243451540 780864639 154978087 819851084 886858938 887522799 138370889 832181769 344489297 698667021 91029687 123411615 435606257 710013822 469783165 746282183 325435748 755827588 577452043 775481164 838698572 953497173 515672003 686390780 175429091 582139714 939837366 977303104 305730945 967484968 229278558 920856358 464369826 970657460 462703693 690506612 693779348 947541233 491218290 528758513 382829035 971258746 426548401 713561307 57094375 967676916 174551996 480476638 100605016 860439225 755952346 949178226 419080049 632596203 466061901 990095579 316909018 918549531 175128717 745736428 746986897 972185429 978837263 991719920 953166534 958912531 975747507 977098079 594708344 773677812 411674120 808591701 153182639 375550308 333271268 537578637 410227289 969218851 316415183 899168673 614497100 736535792 120777856 451441009 577079397 807609367 884678275 931232314 15751513 252897549 559555500 636154412 485029346 851575390 736922950 835574546 732511383 828977157 558317341 856864615 283810018 566316113 906622419 906924287 705233971 743312505 250301182 769339450 565918448 886954196 55434728 286474371 402760159 716339793 399265529 948794257 810641912 973483653 928381315 967830545 846939648 974355480 659103528 787539171 438236639 570557800 800205126 834538638 5384667 116762906 145953025 565942903 974445273 999104704 204299704 759111553 96151253 908363601 269180618 350297717 400928259 647451707 990877554 999796844 240441438 308352681 595237478 653101971 456266074 720552023 839954555 948596134 662793994 932440870 455828553 585250449 214844914 263941032 836245035 956871269 588246324 732275310 238883885 824937328 266986173 680640608 87807803 332846581 714454843 888432209 466143917 729481838 449354406 590811079 746579870 876613896 314121877 443071313 106236058 413218255 736936344 854153072 750360334 808739515 191306386 862586886 215729145 715832308 719841811 756872354 509075874 722424748 19035479 342455612 517594646 582257317 702114306 872073566 781336752 898307057 880141143 940361827 491953309 642310583 223769776 359082014 894106482 951502334 510120743 651478030 219409049 366225460 483949881 696896867 426996538 436178011 574079199 868252443 216400393 934570986 948183439 954123234 180210261 282034934 438449809 865107089 297946829 543713251 767149665 909453386 466042464 983669884 78668109 887188282 67551521 489976667 520097571 678381373 15720764 358572715 136079139 544951118 221763326 706275607 702383513 803008269 623360177 687507404 74745478 472142989 357283167 359860091 359413090 650343590 368103742 572929865 126874141 189161288 213755776 787379168 440729941 793619921 589904154 686336831 968022189 989536373 336256912 780356250 662661046 914822552 439397165 574513760 431789096 937905526 5125136 912223846 820100232 955724571 316534780 841383696 696283592 906407463 119019331 475419261 376472270 800243805 512194239 961634547 106881598 754248624 625593648 931512373 315373402 703236010 380901267 613443876 977164727 986205935 248850228 598106175 670823333 968903120 527559434 580019996 958321815 961589436 213640705 251046266 334031009 835105352 115280116 482862196 113401865 874203455 411404311 440843275 111978393 651844862 638194319 956118735 694165674 858123811 765541427 842724416 756130598 907850833 923105907 956203752 107411326 660872430 339306790 396276104 924746766 979978869 237336075 888911712 25493659 965889712 845230596 967982175 840469770 896748915 409740710 440756955 112282815 753586942 192249497 454811067 319769629 881880883 975600040 999375262 370260777 554203496 493833918 559730337 207605727 377683829 286623229 733335894 363903723 388671541 163895016 275881361 756878603 886796548 706953116 859008507 772224920 977153352 82384905 529086938 920958318 996874718 280301776 502239274 441461699 603860032 544001492 846820934 739116011 984189545 621913614 787385520 776445659 907008353 890509936 906862024 774610536 846056304 353895361 667497435 716789927 873714786 683050194 932138064 915728742 955994786 691787646 772321102 228940307 561516911 678264955 813458863 806374615 813728038 814423250 834226724 963831788 995570059 180430989 235398664 780797472 973966031 596263470 864813202 629977691 785308530 536642061 954577766 545033831 827785647 562959609 882715597 231113577 366050305 622249784 981709968 902364824 911970138 66784023 897832257 372204702 640385175 192732331 848292432 999520753 999657979 111388849 437839411 696670335 872791394 177378153 759122011 250893656 624840966 522619714 540425116 116673861 961926626 948941919 959404894 772717442 827293503 952002396 977888231 724691500 992450985 417291988 639368896 844781581 996935717 796512513 840031019 389827311 942691651 3026089 293649922 337492136 949010010 56905473 315379502 658225697 816646351 351362837 477629694 519994548 905507295 814901741 895640665 900351915 913504256 55377663 809384668 651555114 868321721 214615419 517105894 968563946 971576082 135855310 863720702 891176698 997052741 995036409 996087058 930185829 978365721 657938077 962759053 223043823 818877572 946143022 958476137 432217850 772925804 703610157 889126694 344022795 439198610 77098725 569166492 311979359 615576254 966678911 984701282 405011546 875139578 842171029 897886974 525011981 695779678 412242479 961197283 654702847 932940323 955647784 996720163 130712897 672013622 721438632 724166882 19360007 332428726 471914486 652850361 974292360 984550982 747641759 770956691 528120533 754938975 630444949 689680693 24059187 505439111 801947132 849239208 628710143 846644310 654638585 735273107 472983013 633795691 475966368 613444850 345402565 563480949 384383867 583934309 296732391 318539450 664861595 895504950 425858625 958783706 368237615 523036867 266265665 675749059 673446378 865288497 881330129 970572406 593894810 610737838 330145300 475349641 316438445 736000491 126349239 994795757 249710478 423629489 827092385 964444950 377166594 949496872 425454945 493402754 930556983 995124867 952161065 988091682 850696795 963015945 802033632 872273169 426381915 626951470 986431843 989046689 459502834 742215768 976008735 976086971 140459397 438622366 904306495 924930480 864770779 968984851 317482512 456062572 239293584 422736625 490833560 689717012 502237103 862767146 961830405 984389797 999484556 999716958 761635491 976697536 527320980 872508002 605879251 706827397 967305267 990527971 497190937 513527339 340740915 461457111 138601500 377087715 455282483 478529233 56882951 310351014 195803820 280170479 777565034 857683344 505845879 706730863 647194377 762203533 844791993 978792082 88084982 611290402 656263282 815663130 390604284 442716876 501083313 939255884 210126992 217287597 986319632 987114698 249118549 647011431 772716386 944007498 629893039 804262448 213842456 626744661 993883085 997481984 769079025 993230686 801659377 912360395 210995427 483808325 238433527 292469236 234762676 340149845 260984176 301106104 759996371 984238676 833946145 967160991 345565194 927752337 490467605 619038320 300101939 988767732 330101126 362511149 525247780 787951869 229637491 963536561 538210495 899797929 270436899 915466710 951185386 990589141 42111645 751263830 725395586 740342358 940232168 969804104 556366975 959846392 186962278 846998669 682176859 886365804 247500417 870645806 266938868 985191472 610421191 775638206 81355216 143207348 829397431 993956601 721239672 881474873 2468421 941558025 262522501 790774794 898792678 940351788 34028262 862260583 587404250 849567446 218074772 654886095 998613331 999617493 947057079 989615020 797192633 902132258 883324293 987544396 70250713 218395194 723750416 798190290 728959326 981286365 149403353 712339751 817366332 836804853 939554612 971330660 128634068 399095934 79423189 795037183 527990823 912987768 162582419 607820203 98205238 942266652 822729688 841843982 297020839 755567165 47841433 917350805 342536664 997913766 354276260 889363368 259133381 852896471 35256579 422299470 443545887 734417622 65350580 363661949 895460538 997137641 997890212 999389041 278601453 877716069 83237443 568251558 815586307 897333162 648060586 744377503 60730660 390004783 54362768 949738650 870467963 989915892 467022013 980785456 533930894 617058131 541071372 909168367 845877826 978953290 759049777 967831535 927650491 998616844 753839679 760903647 933204089 973972045 43488494 186516184 703645978 790769340 652171801 793056590 494640780 834116801 709934182 916052459 49477190 741923339 513489036 804687622 938631191 966860532 113059881 479093037 849797721 957631757 859374133 972070042 988790290 991443917 4694260 242119744 939080188 946334384 752012330 910106587 813408755 845571423 351323781 807938058 359880146 991291457 506020928 518798120 55350699 578046289 950990244 983389657 112297528 510344778 451061262 777795541 92459673 243371872 836652336 977773007 377964982 453585995 149524664 241889078 636360601 846809560 643863750 894776702 858244849 956620723 938057831 989124763 606849205 643909790 380263113 926483748 892964476 910598857 982102138 988020631 843920249 844284419 646178060 923494902 546931860 550391980 608770765 751582682 464471558 983965928 666390916 723016958 435670540 446280052 607021785 824618769 455777457 499863892 943679964 948976046 988967218 991110246 875990457 981458972 655424698 983009274 923085700 987951926 621409830 731591127 684967549 761145000 740175324 762988403 188161165 942425585 130728643 682955639 806983684 810382749 721837293 843017953 583548118 851134388 47674699 599701524 948444609 966353929 364648405 708453985 840282850 885002783 526590982 787812687 286150750 417463792 471744345 726818676 480127853 638031720 319141091 361070625 531888650 889368394 229941384 459919365 91585249 512631434 465905447 740883250 49275918 651160635 580086907 714831098 358387049 631004657 248962523 679054878 670091567 964114053 926652798 960276709 789769372 823140031 952278245 996959260 116018687 711616460 509212509 613391479 911337728 974297444 615578478 697966347 590727145 986372743 96507389 883122087 343464155 755442494 573942303 814621975 384971166 581454249 670840176 928767318 530749389 674800954 950988464 989917427 174417941 222078660 594935721 762728668 765129930 937387802 263241426 648952304 305084950 932869948 331168726 935898128 891161709 913834137 989044889 996462596 312634403 649633679 260884660 787704103 988765133 993457519 69838317 237873469 5322610 490879440 320642128 987281389 989400333 995186616 845340521 907945560 150265092 534042648 886504295 993351109 581306423 944341064 928207969 973853158 568497402 970353820 734765859 819868072 589781608 903476999 580574048 905516365 301783093 594048428 973438498 987741539 512493448 555445100 392274875 604684908 363103635 946735600 572594599 579454721 382940377 598263863 810840516 863283687 419373358 746754818 170107385 928546628 850250088 922971471 640324439 863836205 408956174 916209475 679527829 744450305 701245268 847784075 232547711 388352833 730980813 854286966 471145870 908344810 743357527 820722040 539906169 583178801 224357332 508932374 556092759 797558196 619027600 847088262 892413159 902960995 586621912 628596801 841356775 978393083 183603183 943396365 259874337 998891908 465451347 559615399 955856639 957956743 187249224 594477882 274107684 695298605 679546621 962615888 288050507 773156199 989256552 994509915 225392925 584821928 900977551 936678689 51103820 459049332 883066922 954816297 511486782 561792349 313342325 923005871 119576575 373315879 409654552 486413848 421925523 819775101 988750636 994515923 602087781 765739297 269471066 751326930 532070243 646271523 667748825 886822918 798023788 958212568 496326706 593058245 96372293 305722137 604834756 983064865 127266775 491796684 345045201 629714571 894465834 965386815 22801820 632082186 866342741 916817830 344176114 398631757 865911887 904771417 70347776 334264952 330935463 922459441 376525858 418137385 44195889 295224701 597316765 661311224 839162353 917472699 539781916 944428029 251777448 575162578 437922293 996141638 308097757 571722379 141783124 543964131 623277364 730200077 314081836 517002059 469632011 600200050 284569736 524777817 459590243 951728592 773475005 877672067 935565961 991608119 221890276 684728599 498948206 622441006 415678207 904469506 606179936 723858833 656176939 901971660 494190625 859206011 270755335 354332318 74497452 460906144 787589068 836243532 670733166 800152900 300443161 983338629 992110364 994321169 790815585 899427207 90555535 441684398 489365508 994577894 284609881 987710227 163166563 660973120 639936004 802080257 956637645 978069637 550939815 895797149 86095794 486204256 57259930 531065219 10001182 275632174 1186791 36559575 288080123 877470084 942587451 978411270 650563884 783750120 168227940 344402485 878873004 916861477 18468040 916873587 232907664 704304404 940167897 977033215 535895870 994180545 439687163 839707947 172649301 738742324 207659094 492081723 282347166 983235424 728929256 864208575 149418150 534769026 317613440 933074425 300825525 451334399 415969258 597226842 801064715 930400521 772981814 934591531 195509629 803343958 225460290 304441155 305708960 706017630 27563518 496442577 817376097 863175219 20833615 88544888 577651151 642101464 851075744 953121942 96196518 758518176 299821287 469280456 615610848 704969605 737806422 866690776 149279597 717250425 459718574 701745646 744615213 761714500 831224989 846492548 935405118 961431676 185703906 969890443 15853806 25403126 642390706 819420277 331378107 412106685 937764458 974119685 172035334 931417674 620772588 911440799 488992460 832724331 957228758 978951153 343005943 462544596 622981460 957166910 150637437 183743238 638835336 683101523 162347652 307052788 973714043 991006784 641880713 878163170 60499804 271717944 340382254 626143092 452841262 593812423 314589602 665051942 202697973 826440987 634823555 932961013 271167507 811033334 859906170 970219950 254701478 870106429 946527076 959469563 336437280 911867951 645076381 941876640 618884859 634367033 736671197 788053659 116954032 308432356 379337668 814457009 785926845 982303679 548046702 736991611 369997315 991699113 668181257 748565527 962722054 970311843 892843449 961073915 901112734 943172796 514102154 826986790 958472793 997289859 280731225 746571086 252189293 792245529 342065955 748749855 460256940 957114860 913543792 944457833 654416970 771668939 610970701 736612036 986439231 991267024 371633058 631632091 848631649 910830912 925782209 994652658 625696751 711611619 561213791 644718941 854238075 922411657 118844652 676678471 38123288 482410577 102655224 901369564 423959396 834743492 523300982 569776598 676322192 772029495 771222423 773124932 12284842 934025012 671708056 861607251 816602589 824498047 294644889 961792157 390845421 696124504 151206977 333210325 506826338 760737533 380171026 496986875 407531623 791669940 651369311 933871474 332010667 338920642 326398578 494903252 836650822 955956393 301095742 685351292 864836118 993485217 918370119 973386176 756578532 901143762 926193031 999305414 529552696 919440355 243847925 909878592 121159956 144348530 263810329 560198595 570034616 726906475 270914594 478063856 467463677 977806260 495228825 778109895 567375563 767015648 450533178 931106440 340607536 508278557 848696798 938543471 127763618 163152971 484779773 864818982 220177536 742385075 740055077 811991505 481323749 920329850 573782062 726619718 219470216 319209586 132290413 699536751 545677009 739857880 23166682 133664192 522836747 849403022 106541438 197418315 619589614 717108482 224277182 332144891 991630795 994727708 128706324 458646138 478063100 583007685 266363682 780355355 614771371 695525868 226118739 331579194 715525370 820293738 177119104 605736490 861764064 871136570 467324429 514662072 427340367 846584768 620931326 862992133 137163631 719627383 666818331 929546439 30674676 471215830 524058877 534448781 134021363 923332951 84858952 947640446 582923521 954158269 254596714 479490523 351563001 760700794 666744712 770037867 503526884 799641422 876105295 979440259 691722871 853582679 989419147 991968335 476151005 590592320 790742635 900468841 667926897 992219525 262464055 577344070 379025846 873521945 993829083 998019863 131924861 282024918 616437008 740368208 963684626 981820260 915065284 977803002 986186140 999687469 404980031 663555172 195719232 669498737 317403752 576526239 404850993 698067229 389196784 663795407 536872457 756366931 909222137 995902807 873248374 943914456 445428211 986542814 319263453 431196154 181460852 264332130 286880304 862810570 904020612 913609032 10440381 22265500 380663224 600878595 243321287 584720103 945564450 996579457 552170797 565399474 737957232 855968616 760536584 844021598 234350689 402828774 871904067 985154644 497049641 827971963 666059204 668910126 981390763 982592531 609577706 772969905 932616151 960287876 949597416 971384430 977430697 984532695 27771280 404074986 156138678 763865384 860096298 914667645 20986691 782012169 86417468 136846169 317312984 831855634 380651642 463371689 592428183 627931968 426380030 862704314 50699871 248060840 503975082 591867499 791064863 995333158 850135519 888912217 226360444 975121948 178928997 588253919 158351352 198308598 419779914 471107698 610428554 802231474 980823841 983184438 446516526 584433416 954656729 965202172 577493973 662712804 580470765 606372996 677259029 966646872 872857482 965252380 496167897 838219189 33198814 449317740 164777274 914087909 52392717 905794100 147252262 700167825 557563740 694357894 198028897 583561662 447054336 705234617 125916545 670122305 708033615 885367733 319200439 826461195 184151196 412326540 887050325 889524970 957333604 986129036 913406896 962873349 541205610 632971224 816927498 963137762 411517518 846978920 846042045 971643684 183439922 582624210 10609915 94003135 944080556 970898855 541885565 975210742 413579392 789004137 924272402 998096524 808586301 924422447 396812336 951012118 469254800 754971029 342147877 636280897 790704411 948709607 247206568 917884448 970380386 983773058 877839465 980289731 541690545 660365526 976931161 992515107 355236416 847120362 815096580 999049359 349915035 867188351 532626683 616558019 180295374 589333313 94117717 304915712 795659023 833104883 673938115 682884415 285327885 663945843 873723490 961939392 439561830 474359430 671094363 783001869 786507503 914848808 173227869 463432512 21083191 863108947 110367648 225918863 974163513 976320428 275108948 813949135 67091915 556180385 946802578 973293319 381127394 432052613 367830967 859336146 211928734 996208427 159796486 896974277 991882348 992203830 922528459 992925273 318580621 822716987 535268270 600410159 297670075 851601746 381809991 656621768 581874730 976478365 451481834 482811102 106301781 372642337 270505532 821673465 513954154 751637010 486302264 763830711 327249103 858167166 904375893 971211572 153217637 307067508 713662668 824770407 662232072 754821792 917087924 964001672 12077905 643823356 664959020 714958438 430455160 480484381 568511342 684855733 378014082 457818578 65020321 346810974 33878574 304735213 997864074 998630602 332398500 820422898 207893697 435887770 667912218 801077049 459483953 629562154 425004790 490187249 979754004 984145080 536328523 856082171 718255729 870295057 142583622 319552861 439355409 556251497 404811471 679471066 176391276 449898637 70203001 299065841 500423064 750999933 597573842 610631426 951461190 961367356 359013273 932688236 284890274 685038434 309821266 729187392 658095367 730956053 272121224 860451904 259777013 579261317 454773020 796667066 770157199 976179117 2067657 624155934 535963809 768658955 777159475 832236802 824109871 835761425 837345830 934004762 515791037 970979627 568525591 767062652 226626581 241158368 722867517 851231864 209523059 291323663 124908237 235221034 100931034 665707635 541069823 933818462 890878680 972337536 257531934 530737744 273578807 755610896 72162309 99771127 308501350 776695716 854458517 902938267 491537138 808473307 930776738 932631669 337099866 860731029 901122681 973373198 426544057 440415716 715829443 921657677 447003977 476091403 919702378 988586452 505940892 755829680 712114953 763759031 337450643 770039990 388285055 854970072 718509559 884687217 770021175 943213005 521264981 545842536 511288918 809397887 635821417 673059982 374031843 901309409 606035480 886512969 648515893 672361260 569220738 785380257 34046857 780612122 43590277 526965764 526571703 625033752 525515811 788615074 771820558 820073055 211104442 879134203 524930096 613067867 181101962 331232057 664053990 963009713 146710314 787668836 526970635 884751108 68628566 215718486 654298138 911745702 854010308 933107084 599765614 894621946 943424785 959856943 355902101 996800511 623360696 659495979 522357749 701302169 354361992 433303712 295958441 739399944 984300668 994076010 992857424 996509496 430252874 633561872 503168232 768623662 461963100 804385506 647326103 674313342 630362863 860584916 656901949 999801933 869016913 872264630 218253803 218882211 787395502 893595434 828723213 956070132 329404374 452581396 615055961 623268059 83791116 104422968 133971769 258983495 331974119 384282919 2311744 836474438 913272732 952526258 562034750 817452137 782584977 790868800 369797462 693350616 232595345 876302890 982951778 988107394 449849687 595724312 974238023 974904816 123616077 374435382 221446086 607609893 216884033 739992510 158356623 843410586 813514995 894382738 463196558 591483894 188933426 793516797 203636162 506669005 134167935 532657872 837973049 875467692 73966339 324606842 922637083 987524948 55186234 448704434 876747491 921137032 914111322 968998570 647965134 959209825 321591625 756758137 759786831 996126405 720016720 742668743 470548381 602852514 692874156 953780881 139861139 942904225 429308825 924855237 587583948 756776478 624730518 985933907 896820627 910723238 265215281 847544298 640799407 876940563 416426188 642013617 850069453 914285860 661824771 856179529 856077711 998958898 239844090 735096570 687846349 982869307 476799802 759067777 819051447 821681481 431404193 613796435 964210868 988080991 848829063 969945361 23313298 360846799 795415936 872391306 157994965 903454393 482934338 952344686 240795611 304750811 371983768 528756041 954238025 957550048 376642298 589372301 589945178 886368914 135361369 404421117 38915998 572916748 346721260 798336460 640833915 815292661 911133048 968202649 452318701 980423774 17707098 838128393 482758787 624586623 480305141 635046824 629964683 692749338 502297250 828371030 749722181 945963262 357003970 895606243 899379816 940032372 705383695 912866104 349449421 453740347 839477477 924374052 687418939 978569000 341732941 828303926 114382486 267062217 513286054 798606879 381080562 913413720 981956845 987101598 37507966 141886727 515179335 769452208 914532603 925255863 747861474 897786353 449662907 863878529 868442714 916720753 502063244 566028856 469509620 704198724 503064926 559375060 666967169 819432914 792307285 802944457 987007067 992676098 752318820 908348899 769523047 995044771 550225023 576103330 578694869 997659929 956322138 959455129 812879439 929662763 481617191 837867784 123677588 944042405 317644773 398228892 415161067 931351260 768340577 922726660 916102831 974554295 60666657 592490172 265514600 439846554 419318849 869704640 251525947 723236782 324841384 589640730 286616219 898429185 807409610 886391960 607984363 677721405 339119955 527514834 956158521 999160879 422757804 531686772 594684320 693710777 933523099 958888608 991631828 993148592 219792483 875689423 403877893 612604153 813449113 943818939 236245589 769133257 17735687 200002901 722021797 907396974 764822318 835605233 338626700 505546113 582191146 853362365 166364617 529977999 229075256 563848468 903369636 998509362 852133947 854950901 637536366 983732540 87068873 380019807 882873645 994695060 474060633 572884412 278106671 492573062 442535296 887461798 339718949 381039660 43346583 72324965 635395687 877388110 278780903 710835315 148829510 245705187 398109994 398348703 939922965 991519860 729111166 987044879 713545236 886781057 551038639 932057863 296355072 955698222 904303 466425110 432952570 910066986 784777722 789858234 174879786 691939465 831835280 896726767 414951232 518645759 451377252 597040048 134162595 239174881 256698153 733368176 886486209 967545364 381522582 912715403 853511503 978741849 21099888 483050181 749747778 949671332 651971764 783712422 924800952 952742362 650085734 850968606 349128132 916335755 361143686 648911010 646680313 849868197 9720230 608906251 930713378 954791862 232632476 915247872 880141907 923624848 446490571 932960955 771469966 975597378 726930855 882433309 702529763 929688966 234224869 364961574 8599196 274354340 103637648 215487432 900860077 957811881 312431339 919132846 341826343 599025442 415943706 472080807 186759026 563667616 190594495 785581829 248128093 270013426 663800795 877510212 795976295 936842408 569268077 902928938 115792999 219133599 528769368 698974848 750069716 986733027 222290841 807694846 752307367 829045052 653671441 818780262 161365366 643327764 982096799 986560305 396709703 661699798 826314164 859884289 677210657 690101947 178312954 820787714 431406980 944449533 964283618 985558388 249780629 627458141 740875921 944499550 50797010 260966207 756635090 791772702 540657415 876600875 826658518 830096226 280464008 470016359 487272480 713956655 370868299 400773831 355283934 604190787 48553554 304044370 436375254 584924002 641810090 853991864 178534010 385733844 872759836 897958046 196941155 751471228 597563692 763699908 39487271 428302987 220050248 485069873 449826800 884759796 562167165 783341441 84308067 744052892 365046164 615304499 675450444 716882808 123219450 353123755 369336407 855575168 710692909 932420450 405958610 495692441 605711586 897989692 535834515 932212395 722990137 960496007 549858051 753731623 764311457 954242571 17185511 93251215 678062818 919314914 381145507 985171895 214852905 715208697 256031293 608187827 909167851 957207182 82941095 355178886 415589548 430160008 115542981 549437045 813109686 933952168 111062448 903940946 940360994 986066211 311670696 669084340 102567512 739531012 584983876 991780251 880202066 914682583 60514880 546352705 725785545 873789259 852752962 972486266 341847575 679118328 795329187 976211302 169931890 989600088 377408000 687917863 867898005 871235731 863166079 925199814 483129303 635304138 369569018 691491202 800139141 834510675 794514739 981016269 62659223 660811239 848086391 918716329 297944591 600032361 706635871 903207811 883063785 914539367 934064400 992432959 18076626 886919980 858856001 957437141 717254825 741532687 158060516 677373466 450711037 617546559 700872867 815703318 398225066 580481478 642576802 737896748 984782366 989140052 584650747 852647389 507893078 719696147 612280646 680684110 423847344 461630617 610575807 665518360 308651696 852752083 998154591 998695153 877919411 927667181 305335163 817225780 910024757 935623148 892838257 981687653 339643733 920767386 688641639 781296512 741483702 864521832 793561233 946061346 796440078 840438263 398297056 993829573 967950976 985762479 916744311 935157006 822081781 853884041 516759304 528368532 140782665 668573291 674592744 726320791 827959893 874560337 601918664 635245955 775681616 964999368 643640601 732394144 356315321 801917778 379818591 585068130 726189497 785435880 687814931 724193429 582902747 698648760 371861334 834034996 342418720 384074290 193003433 685159015 377005665 395374565 822053934 829314049 377049378 740874936 52546927 528512485 509115913 690473505 661040353 938683767 11930573 617374990 767664444 911745486 476170753 696007764 428717625 521454442 900093666 951712621 732691478 749915773 561082900 840043660 112168114 138396815 25210183 588823917 517479283 710388669 959532145 999963073 973564346 988991244 619828247 972929798 211331099 827460995 586764432 918227975 969620056 998495533 805200610 958533960 163904842 191086289 82403161 801273423 959159744 969589140 242615389 644174390 697873234 902827175 360245976 948700944 660681122 957352955 25015180 633615338 952247 277624634 278455553 329740702 237160655 989931962 628090193 888166693 184599172 492610432 564815761 636458456 980284817 992090180 718398196 811381472 296944619 468947209 504475349 821701467 485247054 521483671 969134337 982768237 380380662 523044504 315051670 733914681 487069254 911175506 285164729 497649988 589353876 760940991 898030020 971780149 710799040 929694905 29404762 358553031 480553104 699203578 38660528 68464540 153356370 374777010 913234074 929182205 551100166 719219808 156569515 747514684 339046185 926796715 191812265 592245968 556967962 881432255 209074105 938793349 836352702 857169094 304163769 856632613 76160751 327097371 311996133 595570440 782771843 904660714 973276324 978256868 681131092 804601830 274598249 642027049 309741563 708405546 828564276 959381654 508191092 721466228 409655943 960774334 778474669 898489572 192570597 440882657 671446335 695023676 975917718 989770778 54934081 784043642 227433933 874305454 145826877 386577929 799490436 908204749 237158757 348993094 229915965 887805038 693574224 702477972 972645602 987951940 934846533 993441818 298669778 332531827 687661201 959212385 609719024 956671063 674689910 951832270 537510611 877359059 995090938 997290554 612249518 733956159 417038217 945377372 625839807 650431335 57534207 144190665 602532732 725911776 810004955 867609246 370816369 721843635 359878931 592595621 83384091 914420616 694222718 701377691 836454051 910473047 606842691 827730909 184989894 384899985 371147002 777794838 716275388 977670658 564882013 690605633 372677391 936049542 745686251 867713982 407363747 828464897 351702349 486993887 998021368 999383449 746971135 955415317 644105087 712930225 660764848 916125037 768223198 805218116 697026349 726304718 410788571 912638201 682931410 913163066 329484700 886109553 643996781 824623035 250561785 750213986 877310927 911423956 864523351 989612276 228021065 230740227 416400156 885165627 509139434 912174431 275312550 281142389 728325055 764742774 592252717 968270857 799562971 973137704 564292964 934040294 665766581 667845773 575532382 874469974 660474906 962355018 377267764 525156851 464567598 972125471 518657388 673735169 601258651 759234772 810473892 844187845 729102866 824138438 486548699 806487199 824610064 982115231 182615038 909396950 48066970 808970249 675813920 693412802 664619698 667578123 721707869 786999193 279002299 892702987 823193076 825444632 816368824 985928342 531287594 692761878 938472145 950915036 893341136 983592474 439976274 516733693 480319662 837638296 332048233 422337635 814363787 966519769 440695341 474969179 420220829 887719744 582018134 745092109 655906506 834177110 298705783 820957229 831271698 927923692 143550973 213982366 688023065 931620699 607021859 834210520 80594185 182250126 735246944 782872840 938404752 982420415 738854753 807363888 225128693 888584840 642907418 754051142 152872139 654947309 593724234 611538887 198870618 889545294 101888626 473383454 458336112 489918158 190053050 688704296 916567588 966149740 597630940 967620326 848987838 871629571 212416815 319281788 298716273 499954605 769589476 999762650 645243877 979787760 476292963 907642832 425722365 522703406 380327226 750155690 647869360 862468068 34201140 703443970 51077911 283637016 406882629 588094357 935662408 965290148 349909020 943563560 807443149 874682031 569932598 832112579 148851461 877255371 605827773 817215346 602024085 834565137 988213822 989793399 779523461 975948398 171900262 223480802 82090827 648641550 590657706 751384564 84828691 304763000 430023257 602887716 246018018 804829569 256810881 743369836 413411926 607088291 839419562 953359540 680976861 873242638 217646495 407988300 74009140 427391116 476050377 944043116 281756520 807842786 307070417 991889731 164989042 513003191 739521710 785092036 502391875 866438438 472650703 933323767 58328084 607272332 758727617 939079314 870111913 986498691 654133054 879611268 842394210 942531481 353985837 809330260 307988268 406584665 469567285 681152227 710538946 964887729 378256256 640746805 223075416 336581284 114071869 788984327 841840304 921761647 697647373 725741923 764063291 995251504 557200964 660758289 218878132 484886090 504999640 852709794 357405086 935178909 47851776 628278146 623098097 965081202 633235312 718250503 850576045 922126135 68349774 606175445 702982022 887758837 316198158 493729240 445506684 622511651 739237586 957165870 767409974 849615351 928859920 936850385 580876183 875529333 194187401 449908421 369737090 648366585 344859539 788483682 16199484 970108553 971066304 981167487 397685083 588834319 316919001 773430568 742882126 849787095 855057029 870837319 677780730 988605160 837674602 871653041 230289848 273577343 631758198 870583481 321592569 401109036 994590823 996993275 761200532 870344795 161418164 884672033 932612374 970651421 671160224 698426641 568495428 571147141 499626939 778601425 922419338 987075496 672403166 850184442 851619440 887212084 693764803 934446230 963395348 977096587 858824517 893832739 458692580 816595970 198623640 296041782 616235851 884051821 343005631 457236902 629422686 717940630 205144506 457983873 97919995 234372994 621065281 675697644 81946226 966728686 106771900 767108018 516480452 797798831 468163323 698821356 601487610 722734096 312377640 369879822 424681147 765480284 756319399 854824575 488543410 966155551 6401568 590991995 403496123 614226155 313183963 946251170 490407165 802426417 207232036 570591091 928869111 951800633 387345769 914243478 197351432 330077090 579696289 663767450 732409400 863133909 54886847 571922145 196999730 595561015 436531415 488790008 292849543 893714479 216843214 798191152 634863403 718208177 35203896 251858766 289601859 429509826 310575783 351097002 927311857 946872278 392717507 793875946 228714077 316366590 656857177 942396318 319827744 320374074 62108548 115213417 656964574 875179083 535336388 885996653 378849927 761024411 547332387 936000763 356102589 743797018 554222045 808694612 669264933 780624296 861115295 967127445 261029705 360066593 530194832 698298326 915999312 923818469 665576417 751906926 897237269 976361361 795336670 932807806 717977204 761483183 425229445 927246319 987664690 994955069 870168731 900038312 149633218 283361377 97990735 749406364 556502130 836967987 782963451 921368883 283620723 385367154 4002067 243718329 155929639 750844424 221475740 960094263 222806580 455115004 378281501 857100245 865662997 998784623 145765599 737226615 621362358 660909269 514932359 891423259 420882422 635180265 661809695 916006936 537977766 582022842 749655572 879225630 751763493 954538754 306520002 764339933 80656343 175480694 52854155 168632107 649683217 949230281 745375045 930636093 429591692 705647629 854618975 872180172 549333372 844529985 202356078 822554607 127155497 858126137 134946772 141010357 341893672 936874409 305000026 388147342 98514540 560092759 251218248 957944005 7055544 94684109 463686917 821541498 415047481 642670619 726713587 980897212 134485064 625745878 4611558 49373709 441791166 659179973 96227721 602691610 380312109 985043668 953796043 987613634 716881090 891970259 298876584 302267193 939962281 993168825 376917793 469915512 601083605 773202814 957631799 961174665 920920667 985082720 51502902 704706424 428509635 583734095 369486956 689744996 31126592 225128244 907852980 952391449 665939298 675669525 965870417 996306881 236921107 579508458 385965968 933371854 174890060 792878849 496509874 717793277 706026406 721793920 754939862 932762464 430232726 708720857 651852139 699747803 861452010 947914532 901639237 910001757 955273766 973352133 328967611 332795103 249021987 866282804 492679164 703255199 547282068 698102648 118911483 750341384 883323177 914249078 589996116 712596334 75020175 81096054 820273240 835885879 209239194 484637397 384940769 433517235 382710159 405198765 452857355 753732688 550452302 890336468 666865552 786063227 584238016 955285539 482845939 898338410 140424935 875946582 864374443 971140381 969507036 996240993 19796657 465433318 681793514 960107029 330473506 939128978 361496920 773716384 218029306 886673608 123408919 502958333 370638861 392259330 906655889 911612543 858431967 903404893 53662854 833777481 787607084 917299178 914730259 921514684 470009835 796500898 554425526 795718308 292196950 998686376 603694481 935494957 575251159 920777286 508882446 791061742 938133161 947295112 926117109 999278400 568111237 909598994 953172078 961213553 498632380 624805850 876559854 987208696 641094105 884290885 743935701 778523070 785427712 986126309 905793873 986837507 517419523 934365723 297029703 563151426 752348508 755685604 630922785 685517161 8664224 942030432 32515726 224349996 507952580 995843661 787725293 984157875 86521069 105984146 558671704 805691839 38002614 555952874 148752742 599859264 393229253 551726752 932507980 954477635 933722976 949957129 996979297 999653051 352576831 699179607 70667512 555448666 226718253 696168226 423717098 803375761 742028301 972944242 923765436 980565366 75242925 523722654 721468051 724470255 399353531 499391043 90438627 341490726 93077559 882198354 14490565 329242014 342841724 634376771 101938709 613736187 545763485 790759075 11182605 600463619 296993863 372135046 501608611 565278709 32451810 438153495 429582995 446443807 270093789 746109264 623285478 841294266 711346325 899863682 334202584 655479296 136910826 379879456 230873477 667577495 283491969 304904113 181049832 892427271 630751631 752188449 529466686 730219382 539971336 608443935 143108899 408935510 764594522 984614413 604348666 791451433 290279949 856946379 951729571 982536947 623420719 707116001 947665137 999872412 491799895 709207256 691790594 786114000 851880153 867926920 839477052 983212692 906206823 946812604 763711280 934975078 745146672 993788450 533069244 988558233 570914128 935295844 116152107 447810925 160574461 675752826 284474759 715740415 224731352 543176225 726713495 821860457 772076919 823842212 944159870 945408170 331980971 720734714 344054882 677604446 5433666 647534226 122259388 968685873 171683110 460436773 32493237 963816681 701721194 931186753 518747552 596882106 107328069 873967875 359991757 509994195 793163039 870047847 923072878 923826501 461569773 785368909 997177199 999031024 614227423 857228941 375267252 677416512 850669298 933783684 302985023 333942158 807033427 927484432 291309124 447165536 286813486 459166475 480656328 926209507 269104099 385805171 441826911 629569413 57987919 592447051 433936217 465083428 824584020 856762168 559084544 647138228 134141892 796575427 132526276 540795510 379779032 993130682 490290672 569679826 476583427 993884593 319268103 467818104 552043166 635442182 514666122 967995934 851339848 998921500 66104616 941942612 84750477 552875442 38958343 997488880 473398438 727817974 913943209 952397109 932657977 958515704 40798013 402566577 518174561 834203146 425197603 760493183 239605825 715050993 462405473 887697788 461270245 803525998 367112332 773745173 229674203 425874914 945345051 974154280 410001542 484872676 579358415 993799078 658862681 850954290 98601015 279499017 677273111 957200223 214062803 649147240 723993144 890768111 443845498 791586139 754816483 837757884 193308763 812576061 857977358 989841241 600877317 902571874 320561662 940333569 36637523 184369681 166639448 686599920 738915621 847862631 552278823 720308793 954666443 974374294 103612608 576577730 344311224 686128449 70808183 160508553 792483999 801122145 32281320 137932497 69611427 408724557 367738525 692327459 696976044 883584334 889477020 969698914 659215615 685915735 833269385 902357167 622609289 880706526 18618005 677797414 686695375 994903000 856228784 930223497 923011862 981541520 935052556 995703104 992655558 996833747 592074832 933207043 278749777 587872596 308480189 986242759 452860678 580000634 504405045 542024961 996429784 998452680 108043754 515284964 121944584 277828652 593952644 853272883 28532757 295722220 49085937 896476098 921803695 942791837 4677416 144214892 912173911 959728443 701011149 998627046 853457012 865245241 72837768 489362215 692119906 813332006 538372108 565733450 312475930 641358688 808450907 950613342 844409277 950415957 96019059 885969527 246794889 566713212 264567699 543809876 968888356 974236733 665873893 749449055 856496475 972059367 841153601 985867551 490699476 699237844 501459569 629666797 870643096 961957404 654588057 868093057 138637727 325360344 912972580 950092009 30631197 86145797 397335988 702037424 441174777 929880154 188380408 862297990 500273150 816220724 676025020 693799424 355224257 816047839 690027212 906517497 633028461 660592789 869797067 996248841 246025237 428669862 592561654 653119306 444329564 993120160 275105243 463695495 670326068 870622064 420639609 718404684 295317791 450651980 671986504 769744511 126749627 622382545 449580767 791715875 970823405 996865232 330699513 853346770 999599533 999834002 259286590 752304038 698541050 954114332 79750490 134213974 796474664 907779260 351256793 891328990 213738636 869639865 47467591 980724129 56298852 615094520 688336636 873517441 753918250 843444048 957485831 971120279 376801024 399801450 89790278 998608956 70179200 997809553 584605133 749559527 505157715 678377464 32921114 167465993 421552969 918184148 388924070 486814179 154896754 686223621 802360975 972129200 385359617 543497608 19088704 557059532 230444483 453067217 939321225 995655691 213132556 472131203 63943116 262830274 370235611 899137668 950891729 986449507 876512314 979014469 178219917 374936189 666255716 809071513 732537309 936836915 103271063 147129289 447055859 805728995 91961656 603715424 153886498 182718151 852980028 863898905 446583204 555996016 97727639 388299972 574223136 944748996 268456057 593817877 516984407 726459090 878538396 962920321 247609334 766202373 9756760 525797923 155819794 241991251 751554410 922811981 195730115 860611650 757115227 973311324 881031637 912875224 865723431 887600314 6862420 982810287 657044554 755810801 793018503 956167321 5370986 625496511 303716802 721718470 220004185 506446458 960159943 977710448 741095948 849761863 277680893 312949156 635618053 671005521 52762967 742866178 259713150 717147999 177187668 397047271 430062107 562325551 548894885 576500696 26245511 576507950 534737100 972903972 977379242 990299997 49234181 775726467 47338002 449846083 671197942 753991794 30223646 343047633 355734548 377920005 488015180 739940897 258138174 310577932 338248136 396583023 220343661 435805657 24744643 721487571 780604154 948185728 317338726 634278932 51252883 164056203 246107983 543592590 102126070 748715311 174805483 753210133 915181897 973698903 154141647 800274920 289320671 355030107 694566897 854572954 164203243 971945155 82257481 820875299 203215566 831908780 636721524 869782731 501704012 533552097 312406473 863560116 72372962 714291774 610224408 774405637 942299960 968770131 419781466 520192918 515655544 973247163 599756268 882269643 631607617 649973472 117884496 233414806 554101462 591478257 173873907 385037862 109018805 637978402 778307406 855921125 442791623 909015320 436796144 791765841 979980899 987330880 524711206 868310672 296234483 391957343 773377138 957766729 966226207 966338000 72619470 638759267 789271286 834670496 564057268 602713511 651559776 903758595 821873078 947459987 773216096 921328557 151355611 757544240 356655837 595961301 487649421 843235566 575487091 794434501 953237215 974913677 119347931 429026355 271561617 422863524 752229695 918109254 903428476 952091462 693125379 764314111 899250406 940226663 935987792 967012726 50351623 987879948 623772844 972753668 173572704 939934510 925012305 958100630 261430497 342217572 520306987 986029284 141525932 392296353 28032107 37031291 407906303 450722532 1254773 536252253 210671497 268280538 865791918 885627265 500385493 593763472 680347883 698093704 751769833 938971808 797349233 964881077 240343690 489501181 427553725 904604649 683964414 927793205 551891668 644701698 661269134 831681748 146783506 419981976 353584864 768174095 3312240 359367503 204260834 235650056 488959049 841162140 852183860 882916662 766717263 965353630 673959965 692022233 103382858 148827547 912835505 981869728 167155003 521407180 31932675 788080401 932269217 995620432 33489749 585910573 551304731 978210529 922256256 965150729 22782821 131611291 862537019 951640383 223409021 698102845 560973015 596946590 958624027 992117677 138713897 665444146 159488771 334146933 695078270 787956540 637268787 827761465 382768121 494652272 696244100 883954455 107319250 358298971 827308943 833575494 872270690 980102867 785084687 998439323 594339927 891215424 730420829 990469066 761304061 784708845 636666364 824546359 237699667 551561247 419079832 681850781 984728686 991435017 13494858 670595093 358806851 428269059 119756098 542946968 380514813 856348171 585154898 972064458 933198121 939304960 764022538 834421714 53095653 159928058 766468459 808332699 449422408 504145076 638097981 836110838 207424546 535497823 752360506 794881791 500294367 817233654 276633400 647584770 529005200 950264659 889652225 914079260 452873306 885875522 268401017 783567984 179134947 911467513 923959962 988487683 848166122 926328044 203900654 811285947 948970711 954638023 570091530 882761718 951530284 965371807 329728979 498668206 272536482 369457477 512174091 712736582 704121511 929749528 438392898 722035465 152354562 900147905 728457706 771376709 28580869 787185516 392345489 529187302 993724795 993852128 22999048 814023977 253649377 353987396 198456610 222802682 300127430 579254361 640076731 836113039 771734772 979534144 161936489 800717213 286034431 608641157 196829512 198973989 551463695 727119573 755155306 891859634 223798454 922126566 355046358 544407838 615425854 803047372 835354383 937416440 39735182 441142962 963952818 979572967 884192066 943921322 500291607 605456399 604147648 787684410 44968247 183713321 661616381 947895075 267543057 801650422 202290807 509313619 823720311 963981024 842291056 940008236 192404905 709436353 487114089 598688949 302921047 499584754 316562389 724817146 255859297 843748046 949364937 949549097 541706864 548534819 513887628 632858318 258583620 694078175 604445060 740881988 478000247 936693118 43487164 987510379 283532885 463932417 951582996 985509728 309833907 666703858 967991340 997377190 136937927 151627276 246594152 357516415 437355866 840379837 168448855 203134362 235524175 554395306 3375163 176920065 490806065 940501853 84625296 147225482 322846809 949044958 780399484 962090489 574770865 670283958 144338094 554734434 263836688 283685074 6350380 50621538 985022819 985821232 393240985 692609901 325053566 800564394 526450805 915404814 367167906 644996737 179270429 614990756 151485463 264271033 131863911 560153172 987289486 987981937 396748189 672799433 162606955 496529634 815723854 856910028 70699768 971227595 128833408 524536653 951621547 965003497 883222731 937027754 904156391 914480296 392430613 951178652 437162452 882906073 696197981 821273136 673777743 787669105 645587991 747595614 341721243 628645835 513239380 552313606 893801429 950807353 570023310 890265458 933291296 992617437 141083261 268720798 125098898 523049569 546725752 575605909 933029285 985275259 506854682 626753806 870500371 932649607 550089976 970684890 206017091 388705319 71183457 617901656 727533862 960476948 44761576 422503720 800595007 838789521 815632645 816502606 161388242 549641960 361153455 928018114 450595180 807404287 593225033 606640430 566505538 653863712 666187498 982343674 773067831 867832067 440967772 459312021 689147026 867318789 189090051 672777281 586556179 621450201 293003709 456019344 631680046 993438912 10907677 289118677 142334417 294953444 802759323 971607528 770739366 872994621 749658050 939872623 698915740 797087475 906772149 953849290 114102005 556607514 315217595 545650000 523891872 913239154 998962008 999401756 315084401 337058619 857685624 925312926 661627842 817584628 272691328 499064170 578016269 687939481 634727796 724243499 388502256 522606297 257341359 852030512 940476689 971202500 341501043 657079229 454208561 488809071 772077486 812317176 597489533 916243260 878525130 896481680 61594214 547715878 191371659 695866835 844316027 961823041 712300978 955777555 417994863 505507286 272644180 413985270 723996139 924521021 787900871 805606128 820752474 911260971 188533324 755790101 245264714 256357617 910947632 925379426 799448875 935479743 648193124 653420289 661908646 738512906 250241425 393348054 320237375 746728862 688297345 892844996 926588207 959895082 875354265 877617807 604071321 863348408 947266294 995464946 449887351 956833146 6693603 257514448 908525194 954827627 970502032 983814339 719437393 941245763 749988573 818869219 807003452 939613346 624434369 992115112 221305619 855766089 877333668 990263361 483694862 845682344 123627396 213570542 928180500 943867101 928626556 942409029 283678033 560399782 69963993 440636004 162632680 196423712 988507458 995627710 34328643 515554159 280115270 377592913 497502919 560085858 164940935 512586027 492165968 925717936 710871572 941128540 531991508 544146766 917761620 996125871 519045223 615489355 294742930 930448824 724247830 977680576 544904238 855058793 234627573 870977858 483534931 568233717 487664698 579017617 970825134 996980241 154664730 342317145 101921598 976337156 443242707 679419696 405450758 554264978 960873283 966603125 589906394 658190118 296090045 844807295 42457078 493539014 801988401 971943418 735300963 918071409 326951236 627911734 139530413 400593992 118920602 852945007 602863692 840665256 700968239 860006480 45026123 630538277 921775941 972226194 490608009 900725322 662379580 970435346 748101336 894964463 355235499 863624847 776344118 904580249 892392236 962827139 199129839 844733533 417136287 604619886 177930551 826791676 756319792 927822524 202441993 687394076 19724055 270109294 638393507 866812598 607633339 794823006 319692653 615647237 705963824 841431177 328084216 998948521 725649104 836544366 245779023 293731081 398029548 551334724 221067716 418211408 109691542 924436430 259848698 741983557 112453820 295093700 971715575 988630361 345080978 873952209 704477241 911239267 659306758 741737610 432381500 885480547 468149115 764821714 856408920 891392681 319795360 724868564 246526550 394520721 553882678 692381959 741340625 853707572 252841805 986133267 293559910 787711669 91603460 541725996 695536075 829869454 506862330 526678418 657802093 998490493 585762355 997087302 279080296 511643642 572859598 813095782 609450482 911865643 370583953 478548810 831447514 901281404 471535018 579197394 211594841 896779658 514695096 804654885 793898842 965116656 811842902 909104657 518923329 974537370 814788518 950739880 388801559 897285992 912339297 912685132 339596915 509670634 216424482 296642062 928475983 946219571 920462939 991041283 299563969 341702659 960074401 991568019 384306801 880319484 441914534 964852634 143094293 500709568 263577124 387690751 813769366 997937652 491698153 865373844 635497724 850907334 484836610 605119343 269870986 570308855 662605820 792733985 69176624 107304784 676186613 992519351 928807598 984536874 459565404 979497206 702578615 716041228 790026947 833123061 519894049 855898895 673187260 940932341 466840443 924653202 120265784 205474390 862911983 926406063 849309957 865124169 691832123 722385876 824531082 947695428 54306778 107744170 656523713 926820541 13775865 955544787 513332321 642153968 206177622 366696848 649279576 970661880 685998305 984407182 967302498 991366276 481758217 681659668 511218386 529594855 293046568 858947190 460126094 656499187 968280280 968470085 849183062 966454571 226377735 765293739 796568854 998594049 861877637 988869562 952865160 990483706 619080491 775989466 207670006 710630341 332132715 784018288 334680609 466874268 424527852 644087480 316282397 611540759 994176200 995580069 243645376 400488377 564001131 868939007 327797181 624746749 987697068 999381590 916923740 921713662 97095276 408272795 90024848 473906969 699616091 741460426 411424072 742569084 191891696 268739434 932507063 998784350 538540288 902103875 640282887 953723931 58399866 527674691 460775076 845615148 564507860 931430966 739585296 907287632 25449068 113432045 261087824 273278251 460331036 935624370 710787400 940544771 874904846 978739429 608830698 941942417 893119731 935329940 284536696 711627032 387422364 717984596 307630578 965356793 410200492 951293128 340340746 779037155 646157612 720275195 482093199 532430055 107546430 928956621 159734000 306623021 37470244 809331312 660164987 990321031 816846449 930153591 727575607 807046982 574794720 745678670 893576773 905924442 460119431 799163004 825761652 970956546 101353151 455617713 368278436 668670206 706883839 776963015 624397087 703584284 749374253 825634380 935736 837048560 339817765 648672550 798363461 830236767 454621540 479606071 641281815 829289742 390686086 849262537 300933538 975888821 211483908 538064829 344509829 911921544 160005491 723312288 619913200 992534551 590194389 859956570 436876537 683632084 157094088 948362947 240358636 408986524 391893559 851515369 298781224 321566710 334762943 750372601 230545544 274300473 248483372 290248107 332100265 338831075 720137016 817348701 766383453 839021806 939656017 970320401 124794329 730230789 983032287 984230163 213698456 525452822 974475804 982962043 898564936 917462873 792940267 873992714 711956261 926488827 917286898 933314760 172012879 294236312 533632429 793132837 527899624 873812624 941650728 984548075 499486455 920180754 264409977 269342333 664709756 680681290 940755365 965381972 390745373 871141598 263460525 375959500 695517488 972450431 281619573 803036167 512368644 827220704 856719678 943034973 61950879 408508986 213754102 321325677 3879492 217016644 421613445 846318828 680092608 859115060 487771339 901027336 757079197 803259592 974272666 991907638 840142404 937013192 861293925 975002945 858544795 893028774 779542843 850100138 535420239 993256404 395147856 883078218 696639936 906308151 105922578 553733143 118746488 223830538 208197719 707133466 362048489 393834930 821149260 886314985 634520287 714221832 928148217 969540036 203100587 906283160 641586919 772651258 951663656 960671345 602981331 871581233 594774140 948018912 87481955 905525603 727471888 783080267 899492482 949588915 124266433 452581110 27562361 691862398 287821488 610241353 862672387 973772146 482491690 816672613 468157393 869946978 765786217 873329534 452433212 898714964 544857481 660712087 141577565 915197799 75175853 325903757 762182488 991138735 137328426 648464264 404736413 644000545 549379986 612486249 634893563 931272840 813359464 848733806 29055988 628907587 522926060 736103924 155750287 262995012 160498890 614271273 310074662 645453108 210591697 527992111 996107677 996821783 923427015 932547999 830930220 940167763 529464364 685425193 67467887 540737751 218738504 664356927 378372449 473128664 99898555 970330495 124687547 334377499 424676317 591853198 699135256 720955991 472213900 722973120 746686340 886428210 585867380 718395900 415491216 891948434 564572180 613867368 67560599 810836856 731712597 883931142 925317231 937865165 815906451 869450488 777399275 847325808 883617522 957499988 656831533 970657185 66778229 114181685 462448285 888482995 637609470 652433614 787663003 986088364 896079356 914439466 682027202 823237833 38470093 542426276 167909356 300475834 731577965 865496021 124362721 400034394 613054629 946222772 748743414 892140211 287966140 792355301 748546413 973432862 189652397 503642887 608396141 703779719 703972587 868021621 51936097 123164620 900405571 965499033 288446605 967611021 854167667 931206958 760864765 854478704 669673080 990030309 674857585 842829792 190800061 920360656 582586858 884056919 115855569 467742739 480003769 771730547 823825983 847822438 212181610 933705315 38947483 545448736 338365216 377642852 991066070 992213792 661845564 996433832 391743907 433230436 462435164 492001672 896094247 912675516 630077135 958814863 321236862 595353905 628554849 909602099 251756134 310826810 497636701 794309648 808986206 977524470 784706718 940851747 270627008 495680835 283351365 854549205 369963010 918722288 1801781 261878651 645392715 808817499 991280624 999316725 888299215 965147907 145258384 527168024 980070902 985346727 677174926 985458721 771052886 935234460 860881736 888563658 754856344 861746341 646476409 685020705 165871285 607024005 938931428 960227757 63946571 880499276 20633575 172416078 20821419 258376107 743318339 843425878 888249568 907960920 214859194 677632951 358809190 839048988 329976660 901974888 16932847 503779790 347653905 715400643 672113299 693485851 884489607 914050166 516479955 726598677 657217393 983625948 642688977 862182183 773410682 827284100 672318305 695002334 476096314 800403657 493153263 731059594 468610007 561904197 720558605 930553062 540737750 874653393 357709095 972985724 788127102 963493820 502765073 741672930 408522261 788084349 256512161 318739497 208482197 921169278 546053469 980138955 419381777 454668965 869240020 974964255 10646384 127704787 446515635 727180774 469267523 799485928 723164439 838474864 930157075 953486793 828325991 840916896 12608861 235270998 939817389 980878639 458387647 775029476 561036782 976989050 847899383 890148643 323672423 840950888 333674469 580492116 583424355 733363611 420492057 534077987 436947300 807765278 159910130 605915248 609332375 701655764 911991108 918686248 108990018 764971349 547232004 717271327 530133365 656843578 153917746 899976246 677181605 724802626 986784253 989623886 822083916 990037960 362810540 868434888 450678370 650833059 788744695 887893388 755613152 762331144 418075174 532890291 102291911 552881313 748390311 756681401 611561776 648293244 186006379 519736340 510646760 822138791 531762461 692114496 971556479 993589206 176538438 416176772 836940134 928891928 12318303 225425588 722784100 897438122 195790832 725174490 369054316 940453428 730691788 836854766 31917151 642539623 245739604 488625057 40791842 101114010 585755679 918824866 413817782 494171523 679924109 770365133 18953563 242964625 245856633 247140649 262526388 674379004 146398450 900048930 362000420 880793946 731762929 905076737 295494360 402269224 122060219 783237198 809926836 858357028 381368615 385142248 596834295 838824935 897135359 981047467 87073880 377002646 310377712 363950535 794718586 938594242 702841526 903415954 899614099 914034819 619293439 730992127 499204108 882666648 460442623 880813903 413138893 896962459 304404416 905448825 475208800 988153247 58218382 574930315 358682372 798142160 443694340 551722141 191803397 993355534 298372451 537152677 747220601 943362666 946041095 964446089 343314688 420033753 566532945 640028210 252839565 869729542 518789377 900553741 712295656 958582474 884203370 934821717 298571762 959322449 902174747 950570560 885612161 983930896 203812503 865008693 621592204 985147885 980330970 991927815 521127462 601396707 305987638 986146781 906868460 970893173 354433573 500443371 953113048 986676363 372809657 923601143 29898895 932706817 816675221 912926684 932714461 983335296 805360831 986293065 993642859 995856714 18827917 994150497 252638095 305474139 859596312 896528870 81153926 474376420 695994077 803064140 146560137 379485977 255813160 514101266 993143500 999063191 56749880 272302024 943240015 974789652 42659621 826854026 599439803 817938403 321698096 943392849 123235899 961329862 706719234 761077288 94223549 263247081 867830775 972679699 706632775 846789488 359617666 431227089 657605217 891890440 832365385 878543835 231065953 590150185 653504925 936459577 877639459 990703818 239485098 935067107 901668386 988273490 189752423 488048251 347821774 573627242 475371162 850199589 347630691 449631126 751231996 903189015 274228906 448029656 351944582 407406158 253098893 869310054 678630295 929574689 726089910 969178047 36043072 214432226 403453925 889569084 986332762 993398275 963466687 968307438 441040000 736848118 164941592 351398942 798591583 918745594 56637311 756301636 619585519 734666625 221529779 813597470 938419161 999674093 880289753 986576656 793584349 951826232 443732114 575619560 298852521 847298952 493022728 769596534 40922598 849364783 789334581 940418420 297104587 936424039 253502415 519785779 904470197 964279974 732655801 844037340 475193570 531872989 772841147 991044915 57042326 488270594 501187884 718767145 358370137 816772275 661327735 795261711 815406063 984856652 929812602 954763903 319044939 638349479 348770738 460433967 143554337 957689386 88579660 768257377 562704938 659164466 629400146 738844307 154953511 277298208 429890442 685343942 967358454 987658662 802700186 877790935 604740119 915616616 996039077 999428913 557098841 717769130 711962078 957256314 254025936 312773083 939423732 973986793 738314924 989217930 570325551 946329465 101286816 223799898 255697785 921282573 515620413 767403691 439029750 697883601 912760143 984957388 636776486 822580561 286192199 896982959 2917640 718747294 13626751 731294631 550457535 922859456 256438215 909936446 648595552 870277521 611780126 620018385 517999815 690290617 139610518 901630251 339247644 519488737 54503108 825869707 474738196 811870484 515845319 599686955 42545271 186194726 798876368 984879777 607884537 769182841 792143401 970384025 987289908 992732423 620643095 970714259 817798027 823745779 767992026 988932814 362714957 391165104 709967815 743957353 413293978 471116157 467720897 981257854 347451681 917759327 782413131 903166752 391677970 535254350 969918375 998358594 661068845 939180789 73454581 722295516 784410456 953191624 666055822 958194532 913464327 953456304 455122274 777172210 633553700 699709907 113730981 727016771 505465071 589032117 244379798 378166704 933544562 952569269 493509446 771165431 927016973 947654630 412083878 867103497 299035891 756318143 696506374 877054734 736371385 773971543 715383083 766777941 416681102 857479836 850846045 858536086 595703556 858605680 788505679 966657378 928774185 998042974 910668384 951529915 629777215 713444901 563268879 574848396 253493531 486164778 120336066 662308084 694472919 822737994 355345756 915959492 214958223 866451743 138698824 908941893 867156318 907632779 876578946 937853942 834944895 936854527 59858756 932894056 352190577 512964850 487192503 724346189 724729840 920566370 464280784 636228012 131449594 240096109 163528015 843106499 451977726 498674345 840910607 915361683 229973976 636131178 372043277 898793908 537318281 875049066 511523362 757518720 933873743 999952566 587947439 902790715 502617084 653379214 260882488 907233679 918111493 926046559 673841396 685306373 285131268 563763889 669502317 836249248 748144637 866969328 78856277 970154502 739534012 913841355 458525900 903561997 264230397 516324479 614435121 766637556 450534476 928696045 529844343 611425316 184724525 894173040 123268140 273903773 647163784 765227595 963482338 988213060 780218436 976776511 610818153 987285636 235358594 665478314 651595749 953116379 820237992 860593957 579378924 663871172 708957951 984463587 190809757 527166338 16403263 28187667 721439039 795097919 147163093 780504123 439024030 832848620 236562472 430386516 278776993 635903190 222284430 806000729 865846711 992061485 208424361 220345667 762970112 984155619 493640683 504231170 213564761 936261907 385552984 678495688 788374840 958965405 242199224 381719141 887868927 899951012 147586198 854127285 364611787 487599000 997221996 998610259 907237419 948374456 650513098 831083444 957018916 977786669 851261513 868111202 615192688 717932661 83544782 488669212 76272121 269579619 514653928 547768495 397732195 661726421 181573603 276636994 645181863 828141707 915384677 963412236 550149785 711805648 13928754 468762903 100184267 990498960 516303109 877685337 286978794 472062821 668366594 942730184 626556158 940673356 904919799 933270621 141303617 693239374 25160114 291078049 697803984 812147335 945154707 989117139 244497721 421969695 698774600 789957349 317125968 403489852 853639904 991470235 101669615 624990718 379954639 857895012 938554976 946734463 698601259 932880588 385665981 985750383 29874012 850245141 705425262 718788968 526199621 763953948 446809080 485183821 106096818 272696884 316098897 742204375 336352545 659909285 330297489 689532925 76379203 707874573 663418079 858703822 498027449 870469324 878195204 912860275 886109761 907843030 84868277 498275848 168830529 545797765 906775222 998534228 25302214 891244798 266462318 556434277 603570501 857082738 225491957 411273521 970808757 993286913 852282251 977869583 171463017 867499512 802276543 819644616 499792306 838925532 171455229 349691367 312808080 787285613 185936993 822790908 110446685 366550474 963563528 972479549 239306080 528299276 456182949 794023496 604717436 680112049 729707798 961499717 317305688 657636983 7419606 349833745 106973820 176703839 604609206 869298902 684327753 808963899 93794207 761089951 845897096 853863245 439676166 443582966 361373837 390499469 16627692 721384346 838195886 965944013 670738738 949456904 851972547 887413019 189619824 904781211 487537827 775979036 45043387 654917530 789951994 813789838 333310805 947256494 915040237 964909432 662737437 726729247 673313589 878217848 484794855 685723028 608127717 721987143 415338539 634927259 620822581 876854991 142308750 966315777 50060839 872118686 250296558 312994228 974036577 996900398 606984923 990374139 184019726 324212251 669490560 780355109 422254364 922313988 167932458 634315810 396587348 585879659 540820331 571423815 430868670 886228083 402411354 618930062 193021414 830133423 913055269 988874441 656054930 754663157 327193519 818056960 814619133 827413392 578776471 688748158 543277751 865438660 776678002 978829668 482552351 599561598 510682605 930114706 151166529 672407973 652770949 776921304 730246102 759784880 737939708 893413628 70035204 522422796 319589547 735861682 91704974 842075136 467010324 942651325 725392779 744963188 777290763 901647668 518624015 659894398 657810786 877810417 475421827 792994267 184143916 506945720 10166096 424669586 51381249 725626946 937708706 950663096 234992871 640521101 578225100 812474865 713461141 907765210 360973772 509859948 139825340 170261610 663952077 966915767 613351004 829131833 235936518 445515570 66533275 549416436 637866172 794240422 144455827 278332369 516862483 587640671 251702487 866010621 437980412 661341889 911242173 985538454 707602669 761000665 515941326 576001915 863611904 940608726 634136133 698394300 932201805 967663180 290308575 796991883 464061602 798202034 138432630 578945882 128983762 971510670 160824088 441565626 638012509 891031291 146309975 821540173 344647888 954462946 680793166 892498830 982662853 983948454 214806972 507246771 162526491 387253075 360327324 618312232 623020844 792324010 7439470 502862333 10229592 914098626 471912253 796360435 353925640 492338876 152297760 758265561 399199682 711395887 156823807 560488112 679362880 962280189 941277355 974221238 158396893 531246641 425276013 652961267 227722998 330329698 230054803 607507107 718817667 851902704 692157825 715631075 196132936 278824723 79650497 578168812 162634351 566145964 359390906 639758095 310131186 330504916 115025569 308692582 294336558 569813745 40334585 358010197 865623011 954129618 723299264 820633197 13035926 389377886 52450669 660717996 937187638 982111369 348740659 566100915 549632637 565981673 453328284 970796064 212905844 332285775 319378175 679847538 253582533 921425635 168856615 353921783 195712959 418918847 414926707 700161656 365937040 565569828 520911277 996163874 754402962 973308079 925932524 959854358 74983076 131111000 122461597 554886235 647894145 870046515 341459351 814588110 46868884 798637187 603762090 659557693 999465368 999514617 391391197 845986203 374863866 456004500 58900225 327918502 533267487 824221798 303808532 319577002 326966991 987041694 887103558 916963163 741251931 797041887 683860473 840481345 44323298 783058665 636452075 935308567 968134225 976511591 420507967 836899746 163917494 878759538 554355970 989123841 171586013 891651809 635344523 778279807 461501931 789166299 460923927 548909196 666934723 792229419 591918919 930039470 200187822 221461860 169554763 967388057 79982513 211174960 659818782 738063968 739503467 819187688 80436603 413557041 748972769 923220262 112075986 216355412 679697716 992443361 972435359 976328606 322325614 535070085 908303156 921015992 176362193 356664762 840397386 898462109 936130440 959626455 623477219 787712274 36785734 390412377 865677110 937393011 101606670 417726071 528181434 724290506 907175458 953535330 963594365 971681497 111685259 407547796 890473917 941437931 808707713 944492210 958064412 969122534 217188292 943320370 640745392 808150630 421939278 446285782 661996835 940869739 249704031 317879687 114217167 259745328 213157114 484558163 104479208 207154647 227963361 474847237 567433719 805093502 653545477 686800713 685016715 946612838 243504369 933358783 844518752 946889156 685671522 839482795 690758977 853611393 479292449 571315211 824393121 880989326 472252403 708489312 558155801 972189064 797400066 994491791 757206079 760837271 478066735 652308771 812911082 972935717 623871885 831230741 660865612 723150855 526178431 817366082 912943893 956384351 554140616 971659521 735240302 809250302 666232772 804334361 511874753 907180013 802607757 840777765 304673769 720421872 424592980 442490222 424983827 981858166 829411075 900656392 628535168 742759132 764237868 867999484 607633725 681455654 682361780 912094916 370120620 616561410 822156102 929167588 6718460 543953140 532506842 732645665 56686135 944610617 934277820 994566796 139362248 698334055 565440498 666720751 483759770 609368697 774360938 821025835 475488713 585532952 335108971 923937742 977009336 985916205 662425573 905121547 351286382 789148024 628489565 897101794 67717976 144237544 20864203 24923750 936733334 998202929 378055778 513290403 461923394 851230263 614087808 845976323 474918543 859006931 343993022 695266604 81120136 798284303 464679130 694464933 48078712 774460063 445082983 890012467 433610618 940807177 369918043 756041525 465162124 981323670 957550785 964702356 606978437 940132701 180239269 866430504 506398177 845717410 490434997 950454337 510464796 664546391 682511935 782574812 708850418 912010167 49429674 782491277 325323459 424960895 736608795 825289480 137778474 832033805 372769410 874569345 5318497 871060681 355943983 829247660 520320530 776234839 98354187 416172663 783669198 829033904 421773148 737968246 379953153 588198626 903744577 991316307 586877131 925065163 201872218 775326197 802456726 957956184 520239207 814069485 700859039 752783086 132054387 259783958 481833438 796436113 794559656 931904565 778160086 932204969 676656057 818378391 92925534 631880896 640136080 995710474 554834961 589734610 260668284 908010608 356381774 546926643 913123425 957910003 748603111 829326348 87854040 422805732 165856738 170829428 324010460 778140844 520962818 818258219 357727812 854468904 191244396 624777637 778632534 960443347 563125752 776260733 523952602 595557392 24599918 648887195 596012921 836310758 95795431 512548869 430665042 534517073 344157885 951612899 543422614 943650240 113213883 991299174 460276811 701172837 544124881 822372038 691812053 971802002 12624312 458008849 216288553 921680050 938090711 979701637 607097067 842607314 616064932 769360316 141155838 356526167 816626244 979795065 113253102 451252387 841211228 978758509 962350649 983551286 833117299 977845294 948548018 970411597 711075401 924414782 719142554 959732944 742285190 812585810 229606858 403759225 178955294 893814816 990444380 995891182 192879883 307617614 171750259 925575277 181648234 639914028 488996226 736227435 675384490 973919249 458792582 632055860 43073525 943383550 194895076 982030974 385243189 809167191 711382662 859251395 403321725 861006616 942311938 943039428 839833678 900575754 868167227 920005040 996903157 998159968 772248035 818453825 521090639 942483318 358215468 782257200 968250955 981275238 992654460 994138619 205137707 321842437 783971447 996003302 866693814 897778502 172775747 956889670 988457105 991504878 962532753 967159905 132060077 565112462 25207731 184660534 301005318 434871318 243194621 541267632 124356448 815159563 773003272 873656279 216396661 460243276 681744455 889101208 12837277 586298272 793694563 998191453 77776956 744324627 719299710 975344846 882505277 964097159 904323171 912618553 62503039 567185670 589126664 632825111 513022821 613341164 603994832 962843923 151278400 995616412 625297490 997836399 121243140 468169482 303183289 348476191 832584729 921141818 40364144 62232666 854050774 856214069 272775224 568295011 150680804 754233431 779456039 978846651 440729438 742515403 758769346 992677633 976267426 989620593 83024189 564365264 313889642 924018265 529380862 970628694 858874716 892500250 295204406 658938791 351774041 816619688 300084898 897264330 912248005 999849958 674490648 791945950 434025854 804277586 858166932 883213458 796028392 936658961 93130918 758022680 262657121 333975004 960018473 983971522 584651425 673308928 788515382 802603048 989954123 990940106 460337943 828076833 189137805 857383424 230556525 491663968 388833971 866648638 376524480 404077852 219488102 390546286 961112243 994924713 629887671 766395315 498604708 820601142 477205099 693012032 127464015 804963036 188844770 625172938 58857246 201882650 118725565 315170942 239416170 316075671 678858827 832164712 719210253 907363646 57069477 112058498 315986615 789717053 857073889 884126480 752785663 811771329 675862168 762722175 43265420 512128745 566857491 963928122 820978576 990239885 977683018 980938478 198116361 521435767 956288596 958052738 347847294 652189237 408545194 958399977 994727384 999530302 585912507 999025490 649122982 660528392 541067842 748984482 780366794 799240326 894317668 918476752 187442170 283527873 134342719 343813854 296571633 380950796 595903551 664655052 105323280 811814388 286274041 306083386 821943972 875060020 157944960 928593272 860752702 918299938 726494960 902063365 538688136 653165671 635618448 748067637 666488268 790219621 49429375 971729913 92293090 757164243 77341033 357241041 886884495 904751514 725000726 947344123 904645450 993479484 203613067 498761079 740289781 975817145 752406773 871994387 218160570 926083836 505415215 613758367 889728857 895224746 828987896 834047210 403407215 745015695 623786919 696418196 757245153 849856811 797781606 968723186 362576232 941687131 208469276 791695636 488954038 960031412 911560152 923945693 949441086 974171748 816277606 899508424 80484599 176654720 669838011 872564436 555872896 802325976 451031232 861259338 478928326 520816686 109298466 376427918 712090568 760819116 112433192 550970286 378555037 815452026 500774806 881789920 903211530 922036220 608943916 906724437 177209821 189333624 786050445 946687621 692319257 791220624 930740221 983625750 783532752 823013260 475908495 577182929 738382730 989068408 959547828 965717042 260111919 613017076 182520391 667320138 810041359 865287964 737278345 992914442 663491033 926380300 554672199 591354638 737288563 984927065 619484985 836275687 846166058 922207302 905523861 943490150 341057655 483365886 674059253 764449467 968931347 983321329 12994309 678065780 160679914 345948558 517992590 725635001 490211390 930352491 579505858 953828534 918539986 982642975 161480992 766877571 789176118 950077025 706024782 975121580 594812366 717187666 753431070 919506359 442627486 860277728 37129239 48694955 233610447 812545510 543474955 662307413 163474868 169431882 233630224 376927003 704475012 839057728 343531830 840999524 425965757 825659000 465291484 484907708 393496948 477698745 804093039 997408992 244893441 705544833 988402254 989051187 866182858 883601483 859268566 909810290 567509060 617279687 441897363 997395628 523785033 848200892 731707125 974865559 388160266 744705829 622051422 985291058 6508734 877389917 878222281 965339068 856498222 896080917 944283245 971630424 337600681 510405336 861340809 882202743 197899887 620789610 789234975 789853543 167420453 405898993 705585464 748269119 737564889 743332787 642708887 705638238 937015957 962800739 727529754 823346175 956248558 999267655 347445873 750640866 380187202 741176916 300853195 904552168 970436882 984471467 607303700 871413766 547156395 709905030 950529493 985383435 530287550 766462879 757682251 805728511 637944977 666427372 239202866 957927850 960020665 964189679 219026243 731159729 473609103 733076350 849845466 943753144 764246318 771521257 368262503 607930596 55946042 539664888 118224396 747666557 250444493 806275117 852840877 991278435 586322575 792912503 632874759 698961599 575421077 741658189 52523258 424355595 445462086 795040427 61673632 132232908 399187557 569015294 567334347 813503362 284907122 681200332 946062448 951942979 652299708 656858339 438139621 608813818 504425439 996304012 606884704 989572392 872109172 942836131 995311868 997744750 875607458 879225691 441521442 474984134 913687418 931883779 547269352 847865290 677440854 926568324 291233230 648237207 709957914 806366207 189131083 441640759 275572944 889270953 157129963 452331474 46913449 126659933 285423973 393860589 125684037 391371674 175179979 500266528 462425828 656278352 771657006 959225536 761845353 809155727 241420925 936843287 244710051 983275025 941570238 995376744 464297122 615862788 848849799 978829897 139268037 726939814 744492562 923854097 652398920 705681008 223593930 921505206 299028189 363011713 21756645 60760126 245303466 372578956 760868235 799290773 508001036 807866598 894240367 908132271 513564840 823059787 944481054 980296446 48619565 189218667 131622311 342214219 574350257 695039843 625137583 931717684 145955939 907510822 59305098 932664671 828374452 963339607 860343918 990803088 137084611 437657729 419285341 678269681 175745773 214439204 119479410 309776567 262030277 602634381 858473228 881348697 818887970 945013533 978099186 986355738 464396830 929609888 97499944 775921679 959829514 975585307 632266294 869279472 550905786 776061202 778090766 895162782 461463192 699595200 118060144 700633855 263058760 777339877 744390895 981857728 148839502 495542054 7005164 812384999 520851088 821745102 9886182 955696997 157971979 303373494 184079948 619319876 171083968 928763955 883480509 954538450 868640688 961678713 875698133 967978666 655139631 827474302 94530285 212407109 174215506 807844007 732959831 948813480 415938810 479711039 103120442 168043799 905359602 951135554 430906964 819474371 638283996 680421298 493900882 663613188 915627951 959104651 484978226 603588468 21440637 511074129 661233528 805373613 691053740 853260855 678468640 689363970 452708943 469699038 44612451 132329873 50110394 267783029 415158261 661716139 153900694 630407165 692876808 780962041 846357023 975472460 785250528 950516311 934595369 945974112 361180673 672201493 68760159 886028488 403249475 574470515 897898406 964382305 762235828 998861389 716093489 868788447 639811573 896980356 154489539 477026437 681198769 809831897 798799001 811621166 469007240 807806451 276836684 745280199 192717623 734495314 374835411 926989451 45151141 907403769 838250909 928843249 674724405 683560262 766827332 962982103 411629442 997269172 999930530 999950075 63532109 532510976 908880199 935949100 374969880 488976575 914496671 995885017 317805082 567032934 182942146 671630901 199031869 988983831 42024999 667123347 883922841 998717453 831197412 911755107 502766577 921020352 408337010 712392012 662997203 916526294 683273541 861300980 981762461 990921403 749741213 902782314 898785080 925986125 982785672 988459411 121641741 914352050 906493386 926311881 590874565 909098053 812614774 919939846 36974336 851816804 584414624 880723719 718003034 781229798 409149701 734941116 450679342 669557925 908246005 942151331 164911352 558779850 25677878 469344699 585645004 681001128 559536508 853180598 102535029 323469381 737071511 934801379 311539657 326548576 501026797 937391759 647649055 661706703 90681361 198969871 749251096 825622389 746729354 842992143 458946037 598381007 855883881 933380391 943406274 954727660 587214186 913372016 37062776 616243229 852559447 978956795 322541881 385816921 667201849 758081606 44855366 112608998 141918007 708872175 615636411 785153072 534684089 569759942 840925855 918626597 532078986 730986148 470613502 882093217 760138943 846466805 7352107 345365911 264132731 928249432 73677970 545908644 804838145 961879818 133150236 151516103 81635370 973229607 479473478 969635461 229689022 661037394 272296915 351494975 387903288 921104642 445798013 479679752 309438782 954899536 996212936 998505949 944961903 970649408 539724956 655500231 374661982 654945656 441723506 810769659 779609863 874919850 170957841 653209923 486665474 855969960 592844247 895194200 113352303 463558787 362236066 406218240 289074260 476000367 310473899 748825267 401601547 754587945 604718627 990334493 701045962 862299318 927624933 985960863 286039715 406156303 530914471 648188482 318428451 673612082 542952768 790747236 440799467 552541592 868682705 923599412 153337683 531314811 677227990 995420523 410425498 929859255 283326738 725751486 896341431 997167751 718286834 769350987 71128752 403679328 761203401 970343597 95223202 910308593 530224750 763435785 771836985 833409500 452165320 669452878 679417455 926759116 888849892 921943303 785665116 806324129 910022974 925283154 76132199 995510733 476587379 535155159 757399985 908454820 479827340 531480692 199276346 759675476 711417206 755123931 626673106 754315925 438113160 857802699 30414788 419095597 201556726 333949028 260207945 440868681 111108626 947769722 681603884 811243102 720477812 863150451 975636698 988070590 144781060 202917090 785175297 806853306 363045729 962497655 212775056 277032720 311093097 386212123 980296438 984805629 423241729 751972172 689398950 975298812 344971161 368178100 350158515 866830118 383776988 935339125 355416618 708708255 281499396 474506942 822938185 983009384 761548412 775507288 558964436 926018063 174390256 759660513 890481647 945109372 48350005 89545511 937299228 998943663 685577894 873482308 755824240 958132840 552286778 918667643 491795739 542932005 98979161 453199817 501607163 816423891 113738305 372292024 8570363 864735416 225528768 824865501 686755682 890670410 97948311 489685121 401563144 973323654 877287974 950819631 800800965 844993390 218588464 911528161 927388681 982205242 837393439 916519226 556432843 678659994 414895980 798060530 169107290 498192810 617211257 670424626 442892802 911228169 602813866 752757169 322788598 631354900 885585257 988697079 918734026 944151391 851632008 979853800 812361659 953471706 59411641 216366275 14851066 638194012 181453692 399775133 585026356 630513726 586917462 637453362 337347101 905978993 119118131 759924994 617038477 995662619 710537405 914691965 200969453 946785353 805929614 951129301 114701784 731107817 884693789 899345300 490966835 938075617 305004835 742107190 172009242 434519317 468206597 941672432 555450412 821564041 546517371 747023413 80403772 571678957 520946274 543482720 678486841 715595142 167682968 754258234 252066718 397692822 618007262 646606267 390298094 512506675 746870312 954988414 573959330 687393731 269494172 424325556 810556257 952541965 391437127 938280548 620715465 940464380 892091778 902194735 582676234 954491962 176066587 322346717 349420442 361300626 834273807 909097304 671562618 907655931 344295741 705215495 884641704 983923305 991278172 992280967 679842954 929913752 554352489 661517699 331620648 901848893 550124503 659528024 532849396 781958763 560904729 685702813 58372131 351649097 591856414 829618453 802739625 998910450 433571434 601942847 563751599 973070468 707534265 767405701 53628165 233810591 330070833 644692473 536661064 735226351 840689147 871947058 5853504 47874388 525329716 642445125 363041923 454684698 811726975 838601935 118743622 821781305 618563100 658793172 617343591 850994345 721628122 907791206 307550532 710447990 661360080 881943190 861801863 919682877 372969500 977989723 821080872 989427529 3621773 330093897 71550413 199282435 575383936 791182443 742072207 936841703 448653672 977341157 734647409 781655857 947237778 980978638 657879988 859363718 897361689 902401248 146061641 195788176 832100723 928983180 391505601 492708071 137073811 949697951 57400044 688771742 571806010 892028572 333147531 492844806 61233550 851553154 291109514 811996234 383528693 746617810 272986707 967024696 595191955 676824373 270054798 531961253 237889857 872093896 303385896 685802682 729492854 955587367 722721196 976453036 465930757 841328542 985153693 988469877 621766803 871496777 405725198 429429906 745641547 775433997 907186400 963429275 542769600 723336139 678350125 921836706 163674098 173284892 754259343 990058624 128129136 905939476 236257149 945551534 393863525 577679402 987096802 999145708 269938621 726418475 339219404 696878320 868605393 910099622 501016220 877003014 875965723 963786930 605114262 799371846 248088869 946421639 667897375 774037599 885079052 958997765 639804542 646363435 103094040 383313189 433204390 662120534 182948139 634310650 93883847 763389476 220626592 862418585 162545386 870629106 623501149 647122455 717898558 774710973 124071365 722215852 743092412 942691857 620766578 943067061 420966237 925996122 827848517 871429263 732346690 994962606 14032302 439842482 685424337 724456020 391510697 763161255 411237863 687672886 460211284 955333385 764836772 789664857 287827365 530148451 458185163 618273975 892727285 989452329 538984824 577310877 108088094 704585535 867576716 957435238 429287966 511590954 999501752 999667302 906220930 928531865 402151961 794028237 696668952 734219632 169830023 907838494 349009680 667311533 917032932 952748190 998479370 998712765 678985728 994703841 147021553 420670681 713596794 904367847 998021726 999897061 502758855 698493645 577564599 916135597 36067086 623186416 309002011 995303768 866319754 914290307 292269670 352431753 462774961 543458468 374305982 472363555 809994341 969586069 635933313 968428530 286079510 412230469 174802067 895336450 72476852 902492867 806534167 874725350 336133380 404262583 289041887 325705221 551504727 740601398 41267301 678468418 471833795 993343717 532063503 925936391 201163481 296915247 521578375 543024863 759966789 892574820 681827488 943629505 661549880 999971869 110406994 779002992 542090599 637743915 557242493 901600769 967795128 988031199 364295833 979168224 440862886 677987975 304663972 801992167 717122644 818646505 236778800 761771343 779477055 879156675 418930589 548966210 157680253 696405277 291427878 910659427 937095658 961532819 727904743 804277123 27192410 202789525 331619579 506023855 45844898 285259739 836440281 913569087 882667214 968370753 437232960 622268706 653402001 829920181 220090907 973679848 527435479 871666982 482359076 940601957 309418825 381718053 460824853 990568995 286305737 392324801 809218171 864628587 361883245 683814897 753296167 990425429 775136250 895811551 78022414 906699272 754253055 855922568 286030131 934960804 788744055 835546752 811414809 852365239 410885349 535800886 409045653 498280899 232319855 709000588 114380447 587593776 891060857 985134022 222220794 332211994 746954751 917771706 958799285 993882267 654522396 854271196 868391216 976755040 403385903 680210749 733793839 766085394 300699827 970657887 421047311 724466835 177763823 238941961 417969650 783044168 790753581 872833164 321742076 723178447 845552657 867847276 789844958 932852905 958395980 983213195 253764353 773856238 595023670 760358060 111897183 869441361 733615499 964540303 989090281 994537256 539275393 606076808 76338866 250596415 539393738 888895354 167260688 811927026 793074902 831734019 910739989 993148676 382047457 916395405 543667000 888548273 201000859 641918282 708729576 799706381 548039719 929897706 170727394 494124089 442790137 857960865 199833769 240111220 178305411 329165767 460084038 809993281 43602548 688791809 49235948 405632896 48404706 373979163 986255986 987384864 141941303 740227229 332602102 926342856 844615099 980317466 200583195 341884582 420698464 719652131 535934712 683268116 37243075 673015118 111922478 429119566 962580332 992997044 626139010 716044715 393547047 660983509 783248400 843596729 188090005 571703596 677666887 963435829 543214236 980112232 763102959 963376721 18567204 843029778 405400658 925609032 366821525 800432028 817482324 868989467 110268668 989614548 20337333 889209640 433324981 823224180 599754528 702610274 49079505 675573401 155209851 837168180 448543515 975621919 118674656 476475295 477175902 640759704 775128486 820099134 142005551 311085406 839431093 875476121 723257629 956181676 14074412 697703214 782352976 984740217 276807490 483315561 447146527 856774697 631993762 732905926 285861546 620528919 504083709 908877504 496734446 697373048 781053875 894941423 808596976 809257652 426315601 685185035 363956796 930062370 462360073 533903398 704286146 829924805 884404099 981411365 139276248 664686951 743521016 834677700 380960260 911017213 90374453 416225523 642494558 762546355 643538722 676635804 458354765 687382626 31463072 692527852 951592739 964382320 798692491 987390902 71610846 993023836 620966477 940498564 513047568 776889059 371128604 512144009 675048738 898143777 170000738 682239141 360160869 401693922 993433754 998082611 111463448 575355647 992532745 999072889 646354596 797417631 815033837 893784970 133385287 913083660 225344773 870671074 126753995 830442634 524675899 604366192 123699088 977523640 99080027 742915899 460316735 880005439 944685243 965743744 728506062 866020608 54528789 169317734 763249773 986396210 914634904 961854135 224403250 709091173 908020278 951147272 933235991 946076068 345834861 941091496 154882673 829965782 186782497 983072171 510003927 804370167 369231456 373220649 623990506 925540462 782994100 914296416 549590157 945470717 903291719 980627523 235668941 664442664 843214590 847984199 918305392 950163983 244203978 750459420 484596205 641307631 820253411 988047771 627752299 653079702 683952838 874095844 181749403 688618420 822931244 881516691 44397170 483304959 355349879 959967931 288555243 911719111 194842563 773005046 531999744 806600525 242506631 817220210 855174132 972290256 836464645 953917045 794896540 950040015 415858162 426485729 831384069 916716388 260529206 344672545 964003634 964934178 640250511 707741477 856213174 954199147 551966019 937945709 282067589 688511966 656263200 724195028 283663982 825368421 171872683 513230162 242688900 733223424 10707508 258323833 5036087 600037122 944115116 962860675 174131902 307576219 617115174 682438136 502378886 584747601 290096786 847349876 655402913 670804375 43742476 142102212 281543995 611981656 703144493 816544416 43649413 894894527 397073516 696665563 305776068 387862262 515995021 950417361 751854720 834845104 578424835 671994997 400175606 935153529 602265801 973313067 509307493 814949751 562683846 990617766 69248499 943926406 876266851 906264421 448771294 646865217 571997677 624845472 593578741 817434215 561396988 574585614 447085747 711908471 942923626 950693246 729068539 742271476 998685428 998737437 714739294 920130920 47745697 179197730 819017188 834978884 336789301 733879785 226149561 851571744 928722383 961044585 125751069 160555988 38315946 733071825 110549946 869137907 270841732 445031719 779797445 859312207 515816965 757198909 172902938 781887413 343641392 399777701 47948026 50402785 741546267 793584665 191134144 392997477 524518526 656118758 761954676 776347987 814531691 885050873 629936881 920599371 5367327 458607779 52454414 534628471 521887396 851053158 897596939 926996121 637036097 876222932 177407062 476946690 230769228 535942550 362708116 655554376 866997349 925093744 669111966 859033242 818804022 901871265 774885241 849468739 656313188 959486895 182707233 352326807 375797782 804203667 830828960 924989358 794902227 956949828 194476011 665884962 160272684 768789725 183121901 206166230 675621193 692696347 160104589 256463727 339736893 758735659 716752870 924340186 226953539 936903200 176659786 838229717 791051901 923948334 218707584 427381919 384343932 819343570 700224838 835920847 633710145 672741330 191480877 518090542 508325808 594965652 782389256 983335711 207731660 437488589 782095656 947735614 878754802 918324759 609362557 669895087 932648176 985137020 442127581 843690788 556185419 961366571 195509204 500418574 83737778 367828977 850503639 979866542 376723538 742691981 832937837 855320617 769512805 990107706 648791535 849786876 339911112 931714380 233926088 339066925 331399550 734069874 219279052 766406295 265732291 428130480 726092333 995291300 755008534 971862421 314120637 338743551 231802585 252355656 25876396 318150734 342680279 739544888 501073984 887165077 501916687 671932622 972832587 998404273 339445029 594844301 676874226 990425946 727890574 876994654 84732519 213826020 528535457 867106280 823345886 908357919 226206767 253024651 734017332 937055978 467391912 633829943 383799052 742682555 836938507 843991347 132295651 725815442 730115955 821429473 901016093 948820568 664103213 796395179 966825851 989943757 440625730 523432756 326673094 628324822 856458714 954007346 437031263 655231411 809200913 823552436 296306546 982365169 528481745 734799843 493683693 879492647 69759812 450811016 187422277 238454655 432702191 645885096 938653238 965031298 410488857 602808210 871128512 966851043 97523273 800488150 585937330 621195977 338233488 850785405 477100911 977496049 967003562 985341142 373939361 801608483 15922687 92024656 908037353 966750416 738362287 790446706 227599838 232697170 394630844 824426792 428779047 458042722 970130409 972340009 389652295 846315324 256173201 325694024 201180412 857858899 210405476 406040976 37581834 991050127 932167433 972563303 183910447 369134281 87259421 782885727 557534844 740225976 800599365 944903671 424023484 963563586 150202583 852647802 349261223 707689255 490747454 920292524 563746162 707342254 54343740 354056694 355639580 984284197 717431317 788480254 292252431 756483830 393398068 972226297 431747148 579768602 903599751 975890223 586678768 983118557 592765494 802887937 110547720 506234543 348812920 724654498 341528840 421819637 563504716 968629556 540933138 881182454 857768170 936333894 457772642 666184251 433311579 967866985 280029310 919359557 405677665 542351625 650859276 736834074 132336104 715015831 32451109 909043809 393109997 745199828 277729380 456169906 846639514 921755775 267393485 322883450 722455424 969905669 642779336 847150710 910960566 935903761 835933868 957445994 374903620 806403367 523770491 695635901 588259755 890211287 66474510 657623920 383090744 664299734 833166965 928514995 578191845 878913564 921788863 968619612 722626775 831449693 571724694 679163906 756942234 763600593 829711452 950202751 340101826 771390671 879322726 964471968 311645175 689505219 309037423 626959025 142408216 899050271 484224886 720579438 80802143 149239869 150415570 880522706 516109791 852318584 114330099 336198690 137640714 669162876 549738384 723207102 453051901 699067336 88109265 684516807 564790894 700705278 723844933 790068517 574395689 823853474 729830215 964976422 839738000 918159292 574421325 801948337 931610907 965733350 512325522 723666111 476853476 942920645 615092350 768196579 283883270 426944664 94814413 540000986 961010032 974862368 242246470 736468274 43658878 735536368 749777489 881231336 736729070 766897216 382620906 877963288 601183568 708175265 663203968 668317581 56774532 511346072 365304102 399095424 239095961 315851232 271205114 511550477 552151878 629134068 693116372 934940010 532284440 993861251 43270663 240316719 78736187 849086576 390726518 408515205 110593226 111039488 555484781 956472201 625583239 891064718 635411815 757210414 538635569 983273262 103458037 153139194 659804606 742700046 1522040 949770795 472887250 505461272 845332227 963766006 792085185 860279889 985158028 989732402 177594805 496070430 495601023 599103399 413918732 779842471 58393822 834004488 476045545 714137432 151946757 802181104 413497969 804896281 990640604 992545812 32060812 654689641 144912557 445930419 341757025 634455868 682125741 812055327 508875139 799939078 874859297 972633111 220343311 578068048 473414877 743296573 421288647 512076843 647109287 721161399 299070373 595864858 624525383 783987028 806783242 870405027 362908401 817235251 818235177 885849439 814356632 990598013 168662495 444736043 155029508 568242581 38002474 541430000 184036705 756709454 259704543 266231859 669890363 869127870 716331789 956019224 746591929 977613868 568632147 980961594 830609111 886225448 899769987 958017935 71993511 725915684 609823620 738878090 989380336 995517891 676963469 822411126 934553375 990671477 617336558 665624105 498044518 962247499 527831612 972804834 347342353 493126049 566154244 574932665 217562567 375196917 960989365 974798937 850597723 945442677 913957185 971425601 234854356 975125365 79271396 245381191 775459427 784057129 66513671 539479440 128638199 909701053 282363180 751588009 302554310 536215279 865563611 891492186 865325644 986425748 854467032 903914460 734103166 860644617 752996964 855122173 879738899 967158965 826663020 931088322 37473109 963424794 414664643 696459705 708845126 712330272 552423712 858992346 915283734 948651246 593595789 608623214 502963232 630626889 214047533 611003588 758031411 887478057 649298201 781762964 314064273 878604092 623252595 983246059 726171966 728186459 340054517 860279996 630521607 758822406 316000369 637231620 47034438 209066164 947208326 956285275 238724084 914253585 657636557 985580786 852824427 912026117 354333281 917897398 184014019 538790773 106609034 607636045 139661464 227269701 620833072 774992553 762651168 905238039 257867144 380424593 597685726 807578617 830545958 831795674 858660239 884660090 946016180 962084928 932167190 973847807 518899330 952458710 447491169 655486253 926334394 992145759 288285413 428592072 634221236 811574998 193368137 777727246 517027140 538459213 542753214 814991997 480170508 810813036 342942008 777211604 345687045 370859941 666767987 911171387 6321256 617279132 911551595 947981493 351388896 928225995 982932423 985811577 931612251 960238258 351856304 427690226 45553695 479957776 487587325 533367311 120705054 666344068 841804016 978617200 354730729 393585701 186808500 509044130 526588114 977574676 464304567 639490067 15242160 442123502 755107814 872640769 45124779 105197394 709251870 852700613 786557071 879513595 33772172 553315682 691283725 830434237 982668738 993356772 813882922 867745581 119685759 739031158 820944999 995043693 675866453 908241591 142893469 954848696 475213814 867732563 391073621 900380894 878684997 943604535 896496912 959534691 406193338 624509392 943321779 987836320 514364533 758688159 77768050 643289880 243834522 569556821 266656322 402803266 375825566 874166692 245258206 630792062 968252554 971121636 240655699 558773964 842804136 936212587 165496318 434676400 935955423 980327012 450299452 496832388 708492366 989957202 344326831 819550779 726660060 740001159 739375861 992949388 595036726 739452852 614062369 811472381 727547668 849262150 554795003 682113102 622252672 773924616 107851528 558632392 225620745 538114880 556763811 702384260 110931178 175332067 621157845 998576569 381233759 950623345 154764511 546196238 775381565 844273058 903037340 932342971 986234400 988838052 286238239 291803562 390978914 765695005 111172293 168664572 56875344 156780569 840446476 961027089 511275866 536193764 5470767 564618160 759093707 784610066 422865657 707561372 511477270 648482614 367758412 908935276 429118463 782578460 163280427 884756433 842070579 849141108 306025542 919667404 518958051 907959981 246246115 826124329 876956227 896485797 147823995 980662982 821302345 889114945 327017056 589411057 95331146 580795156 287569065 635635161 359782637 386609337 824837137 979032446 446086157 811581399 13176781 765553128 961363419 998191656 716841606 994984826 629398131 834653660 802510991 845745045 28754745 490218388 53425802 335972664 235980928 463661158 781507700 957270964 952586538 965971319 471611999 856139952 941511924 999671034 720328123 828627913 764337897 838545471 283165400 364931072 542593588 787488830 554437612 957098747 832280135 839855774 903695901 965118148 793472833 908627590 665487456 845429697 708612717 841551378 627402392 645538254 837559549 885103538 573989298 846979504 308363920 309657879 28164720 720745902 63796028 87855014 179459541 702637576 919607676 948374755 370657696 558804019 115548606 593815640 201176794 520159894 610053927 634657750 998575031 999263091 76180393 879904066 975475011 977693128 350907799 916859500 627513141 655955550 176549514 582587689 958742876 993887218 642118746 764924820 485417394 589982770 111294067 961990302 388310192 939402345 779816319 808059765 610236199 696919680 909027937 938964700 576951508 992618344 168963596 565712732 340772607 965217711 323175437 747748308 384892468 716569122 820653120 821914729 735841633 748802008 769332270 920941120 70617477 866350785 221279344 530722524 634188904 842618477 347538592 551102698 197404209 873989449 358487360 525809629 411150823 426158846 248136034 928623508 96038162 401724443 502513637 518961998 650489367 666189980 852416433 954892261 222992790 669234068 273896704 733884873 845741183 935749345 807438693 926918363 110918809 148274325 336897594 712455326 734489056 852337558 92160451 168577256 793816487 797424543 264439076 579700078 273879753 396112712 339777256 862128630 93896566 103893720 303633635 462482056 378689910 619434999 849968678 940508335 960714708 997754216 234199190 673333644 489120439 862829790 905434597 967032981 226796372 602983531 54983939 746068055 199170423 966155180 507051338 642043140 843942882 896060896 346633071 635389354 956356519 959670316 483271792 752112712 10422977 224739793 795714541 904843798 295428901 932873662 684855342 735053365 821135737 869661124 981862850 994314562 3821254 595936510 851764170 979987665 329409375 550665799 946451174 980530698 940325232 989442289 4712884 49999049 687992582 827923895 295489983 843473326 177018554 477764187 166658325 428215147 714785415 765093619 2888457 55179295 43123257 483444111 641467262 700189888 545946457 649258111 21192575 403402780 476705330 932393028 746341902 889373017 191762803 538962956 205528262 213746997 263327032 381360522 253205622 522532152 732256104 997817949 931879270 934576403 794625558 987115949 380373888 656960638 196341541 909311343 954448429 999705817 201656527 933324281 443091760 729289549 784372508 816353828 525645410 689174672 998413813 999567887 508434219 668431846 365108392 956565441 1560718 223221474 32020236 683734863 306648703 639329565 769399712 796739004 335660814 374538262 801716917 983909399 118000239 925451053 953228835 965377317 75128223 309132697 124091605 300979935 124817304 984431291 91928330 240347176 614224751 705478268 337241775 956645353 875325336 980665565 665958817 689966182 514756333 557239406 756486376 793267276 886934810 933025768 986039771 989122583 721112627 757653252 620221328 931772153 383778156 856709904 509593065 719350397 216953275 626415341 960106603 984062265 980574056 981042332 42215308 892894694 617119407 824757036 742243520 823255340 184714139 363793725 663137328 918596573 410837724 930571099 372549035 598009282 378463138 726261681 106888381 477911698 347447014 675148848 817714146 927750206 465268549 755884280 106569118 110037407 43608031 426975082 744302025 787828110 602024939 858701124 521581719 570640651 610668702 624908632 438983067 488745335 805122099 850506928 794714602 937784860 864167792 889153984 255258406 506989054 748332067 784136514 833767432 969146230 858481307 965673751 614035943 716949022 31747134 211369904 486667570 649147645 214229043 618749502 987872966 993882552 546551163 731328591 123672012 773929721 720739352 759036001 731299439 959809395 505125989 959867950 929033267 978004460 165480507 564641437 688018353 834680430 985157445 999478552 762158901 915721703 597103135 837488106 606622618 717215349 797230638 942477082 577112933 991062313 231185002 813888581 491007103 998385982 911394672 964337224 963723260 987780082 48208630 596546537 502276816 737074467 896531217 931008257 881064530 887004714 910333420 961484882 152986118 168205957 440933793 867537513 586345620 908630274 69472028 336551437 812862991 818920749 140210447 922622156 795573325 796220315 74146385 556515043 302523624 548759405 600395308 974614108 174597722 972631923 974035030 987549187 537307876 981279193 42526183 951470878 862673629 994085034 553282306 701042748 575831492 666660975 454033894 464253353 185520252 192449431 302863670 887262853 807183091 990113305 289629822 573908186 658191869 908993585 676429761 972186772 503782596 832571390 896727084 908184179 576964948 783751946 787042597 813011365 534568491 883262669 198879211 249592288 348829914 868172189 802757394 817981952 573804915 948764873 2559937 610212071 234664257 530435881 768317662 993722342 117556213 858996859 630079211 934489287 572811325 959505982 696259933 971740703 970875307 988573967 856805334 928180539 630554331 955966499 74986515 485065569 675291973 758097235 191789832 827439103 404993039 988285465 870463712 998200854 10853933 324525198 215784785 421938564 39655952 477375904 808224731 855165706 738768882 976061705 651708739 892200898 917294248 976306268 888315288 943492380 700868164 730332410 698341214 743360720 201291039 858480673 395075871 442193050 679057019 740478117 430135778 467630243 182542162 456247274 507393955 691439571 790854659 903959127 415523551 836959530 402491456 545602736 780780113 842256522 539330583 952504277 528865943 861962691 901560126 948346770 691786472 905379431 834450745 979894305 259309118 567671588 372702237 571193459 495411676 658242004 3244314 96961644 660865142 978204390 880900701 931626440 72883722 472694586 920214685 926469996 577431076 996915996 83328096 293852022 669132988 697427631 276078677 998744482 658827645 882537485 293497268 606298986 465174645 768211427 495387198 997779743 73453360 617326100 315818501 488778563 762379328 848699712 383715474 908736843 234220486 380014122 704394820 878998221 657570336 892829936 691234167 901841830 639723537 869547979 628111012 696246892 288523117 543769908 674892112 772287574 360483503 416366069 451344932 917540118 655102793 816120021 1713375 686560982 791514568 868403010 380571073 952845323 58499716 352291874 800774464 921737335 106653311 987445725 573339843 634685661 369034172 844099245 100699800 914255227 652571445 833251038 556291380 715953367 963499316 989056793 6152875 650241171 409047426 681637915 832855430 914597238 277483283 388120655 642853319 802041348 134665749 138654486 668205064 677983641 333387001 603262921 343325848 597679999 226523937 938543077 829310741 969085285 876120450 903105996 618730761 646135442 300568506 371057383 328066790 796221565 469303512 919705033 258164017 656370202 616982952 884122938 256635402 522482714 316491910 593119247 83426838 694199275 68318643 245557847 587789739 633969420 667003441 975294332 773024330 907147364 881757309 884875323 139068970 915093664 474180293 638831153 72328777 313752481 961480991 999434832 444710911 687101464 58234750 423808620 591762006 841694943 991372817 994589864 270613757 470692280 533122683 545094034 968867017 974558357 154333878 246984550 67631565 514729751 513270039 880494268 38319718 691562106 999283804 999564666 235891252 976001761 601798787 740804397 633599457 947250659 769405556 909766355 44891771 323914463 579920060 931203777 452267309 704973938 120641059 843556727 932311025 976122806 73116499 558024174 72346282 483097455 869180191 922392410 455661328 771856111 555698238 879901409 843696705 952976764 675063590 742045244 404861169 906677876 841640924 911346863 717733287 811144552 939522600 991363235 47765598 943824742 268736308 838803933 131647063 602794012 586256740 870453589 33337655 885023475 288721813 435542857 725540090 947899665 236921521 456202596 257576920 465178341 837908412 921682730 379939816 794226961 171324622 401304005 985939167 986781430 725838901 813437953 36992919 304889548 835553860 922306371 17916840 135379444 829346990 891997360 24476223 88192260 919265601 927019640 396714223 859856030 429141223 466125252 830824212 950548073 152684557 245945582 287213765 548337246 265360119 469882888 705983409 765584315 937084114 955840032 1019409 602633113 260661130 817654170 870788743 974213060 876274159 997274494 33978366 126426610 408292671 577960188 997788768 998185639 100400344 473381400 532309308 721563699 274174221 514620484 378308628 639532112 38128665 154205938 674593867 860170391 316055321 929984546 191081103 252383694 630930000 983660958 855001507 987827562 109858924 897116073 175328675 716545866 253124181 334692070 820709716 847211124 605353030 678480449 40366483 519033910 843613692 938305377 382373792 384763531 659638073 973264088 245826830 956159278 915567361 920347705 317449123 767776830 628598340 695154461 523813681 669071821 104221701 201167165 220789498 354920005 399407826 441534185 923036188 931250408 301831545 624299412 536149505 802489253 352883655 940055916 194947308 251955036 624680122 953629872 32659261 340099251 120796226 565255200 932463452 987706750 488061931 983237999 887675731 979578601 896263803 941909762 97217734 204726212 954787331 963500701 280856088 506193910 797523167 926187517 383743598 635596667 297456662 380464629 217605907 877531000 114186932 853636885 5188002 651090183 390233051 862047298 882212980 978494247 899435311 919438506 736246643 785195720 263712861 767904921 770089703 837865076 613785152 719487032 837857002 858197566 738556095 784800167 974765233 987196058 720369181 830542806 996896054 999502014 588057207 794630669 355036173 442436767 468294681 561734665 811722322 817174035 795344106 974821721 493696043 829420545 418275561 778341804 781753150 915695832 27374357 578072238 880343323 991751982 64119794 510460349 434109089 471071234 630942373 867507636 291853491 309212511 156964075 375159254 332491155 588734361 826954277 881828810 437367020 921608141 126099847 669997348 540253180 569111590 508932807 906170704 998078240 999399800 280831097 596198598 3009295 728377159 463999403 604364379 728514936 915154341 968019739 999213864 404316026 918105702 101862221 696027808 255316089 747663514 386698040 673856150 154358075 419203451 879787525 952219353 119595718 954209494 601635627 804197637 573870288 897308157 133773766 588023827 799834183 848463354 94395770 138075560 10740030 963452196 167682968 764542548 293440140 803145358 490552879 695289820 351680171 980725261 194583184 882780573 573156516 744449521 520093076 595195159 604462617 831112930 994723972 997018184 378414128 582852121 714322537 928781463 229304779 378386191 854460970 981462941 292641203 300446862 221794375 967133589 272553479 811085993 239188624 742086306 262069641 996917817 187980630 628862238 617124114 711441513 841851340 877439127 270050534 424986741 554703979 790048007 14669759 256370929 66619076 113499424 620057229 708474398 23912269 818531014 682667246 983394368 894061981 995578926 934665255 964551454 73409727 729903696 749736037 960510103 186405806 836626556 289557592 696118466 166867956 291289045 253866486 311547442 778097550 836501574 34505931 194816310 73960237 738473836 269931085 275850486 749549840 892901087 852629403 852703393 663436501 906845686 81570095 178640310 720117130 838115875 767153964 814825411 36986914 548453349 926887084 978820952 527243672 641652564 676892391 801467686 590548192 898621621 958761284 987508029 488811319 925900471 842882422 929095293 989042522 990233772 948092560 978627576 522387842 967006382 834660500 951523155 678561756 997864795 884457390 955376010 598364247 912619673 791407510 812981875 195912484 350568027 977223718 983531785 231957270 452626518 251839910 298118409 327124359 552149421 376722802 948604676 500281748 727666844 399162313 831186663 533723064 858135664 882334245 894792099 767577208 821629967 140543915 868169794 795182915 974400763 826511545 907338685 184331324 878302303 230948726 406766308 569629153 664489730 300920681 677122751 7177262 474421457 79483512 682734426 537352411 946000373 800622534 964690123 15993305 702187342 918012290 925223315 882767378 942760268 27040362 488194470 142602 959055222 375283651 587999923 607643466 869665561 343125789 614931126 725068187 893361868 55783505 966535570 216022716 917851011 17759254 542383359 432663537 960987457 932258014 933855949 418760758 760137818 102000980 266251652 359574920 722582934 419959511 596388144 466142775 753547911 489830965 500429326 221540514 812959539 502590873 505526434 131857867 438444879 7542060 624261342 112897275 474667038 886701151 909716220 525769194 635900971 572471936 725667768 610545114 995162203 692743493 936807655 749289236 986068660 709344671 912560057 437032054 881778593 898153640 987726527 873542357 911853574 240255065 670699794 338349181 986404933 523098770 527036334 96822668 638435374 543473670 867908125 12509615 639696902 783254718 866752092 324412015 326258269 541302004 598471533 745544693 997571253 44975622 816194078 970070629 977830938 984644634 992963989 931230531 958788518 390028602 940197169 612323160 950662052 619923783 890990765 447956590 565536913 437350410 567924144 881284210 922304383 355540995 874620813 353612540 481155877 159191806 665377490 679488019 710194005 200621914 718327900 444599249 967930407 315657354 363725024 703847523 989847015 303917417 386519828 801605027 989299594 996099998 996216663 194396948 726124436 215687036 541899385 126670207 852629319 637523654 745311016 222508719 972019136 20052601 909890295 480627795 860353065 70041517 87736666 784686210 918285816 635231115 756901156 355633917 912323780 249528409 701064759 117007558 438119712 629078898 815937572 418646946 897727985 219899818 712795199 511276862 537157817 592287248 654943483 603403079 644921938 401640726 966854252 354073156 383857435 741292365 930645999 674938121 905610309 667460916 954653171 597434397 921956939 314584775 389004924 193930352 295819056 31883668 547051604 810582408 976130875 93930167 454185175 870794593 997796888 496701988 872645045 933927893 953599056 459058374 777025801 903234381 935795767 588638979 852425852 894785995 967898839 384764828 448238719 60146220 765642445 560853080 878985608 778656281 962886395 935550439 996688932 701049971 996554341 989497497 999886391 907439193 944958028 715499016 739889883 954060843 971916542 286651713 903944676 342968420 753092503 509003637 782629857 185633620 722153461 207375435 789811059 278884365 867681318 279871597 901128472 786837625 798834580 300656115 390523631 534766780 684081962 679750497 918446099 44060854 486333924 98978510 524117293 722404384 992283279 797382204 853993471 77831142 894535430 305533517 805211442 366104914 656140992 583222506 978235121 157157202 996252827 184941504 972458727 708694001 844888990 281618918 935622667 661294747 879372458 26376356 643422943 94756836 654381392 217496577 331321775 934685070 938553785 616410078 994321169 874338841 915809373 48563888 906962383 611768516 867107326 489163952 510978777 828888283 985175457 584814275 647019049 96284423 623106906 424199386 599369492 678543674 699964264 995217105 999593154 248037391 789332643 688244724 962563967 482831812 944158990 582703536 709342389 984912415 993622508 793594055 831580428 303470053 911197012 648883688 837425407 893185711 972207701 653630880 762093961 174126010 766454867 697188227 936190804 430718593 621531049 372008995 707231154 637876153 742421180 600266245 805212195 947385491 969530620 754019094 861800792 161961445 799433318 318845266 905950097 799493409 954898448 108166283 683582945 245113580 450016628 329884035 366253546 149942760 790250748 288630086 335689107 577499565 891850586 748321840 766648662 475561081 719718762 607846643 659838899 458366128 536351092 45303754 422190303 909853023 914994567 575800408 639643014 497297805 594575751 198289008 939944448 963553850 968594522 855843796 883120923 748924900 944442853 606648005 625093811 406905617 606579752 810471962 937706776 518414247 559215501 251036718 833290977 921344462 945420813 397026942 747825358 404640698 704341175 653137139 935248294 582352706 749720386 372189524 866152153 41728122 890739142 939291912 956837507 431941288 557876846 469471886 673944419 132428210 379804819 296984674 308756986 371025348 650762610 120572707 732090417 737617785 784728290 694088457 881515914 18191017 942790684 192143403 752982456 444868197 757950537 39578959 999486011 971357879 992380087 948494128 961906764 828264509 856785429 494167650 962999957 702410096 973115761 328489981 370261279 363306040 842151858 598422180 933428908 788947814 839735833 804096760 917819096 22857999 68524520 98440389 203477011 237060071 910630454 227554125 838915533 433859409 481781084 418153430 547551207 242881018 520469388 225821326 446480428 98725246 107764318 207192642 847661249 58842285 493547545 112519042 367604797 157532218 239077661 439425017 457744440 439776176 474933608 712542250 827013066 953286981 958703036 676633671 763616484 765777375 898705713 946205828 964180733 716637495 777712966 196368361 572849800 936745195 977848369 847882951 929493731 471560756 954855945 241023385 811245204 134729032 176636174 829054865 846491697 923166008 924019665 7410770 456329524 435754688 975014838 679100665 743833969 52359393 509024240 258117271 395703068 905574085 925194708 272739142 872269767 728120047 877979481 293716018 635459425 421681638 676788087 602440871 898989412 576364989 932816655 346701470 943803281 420871743 847461494 722115496 793145655 139488609 817649520 123653217 805964386 119078839 709357449 380409149 451625521 869509075 983908573 834598498 878352241 175891855 971693263 904070660 967535432 840168201 908974872 385128295 926685386 502367812 933368113 543343093 667699197 57072478 934474004 784159329 798265280 772540290 959483800 155742267 690207960 292924207 601694244 364598591 535749512 524750107 783584325 429599125 836098807 321691725 502409220 730478906 854713587 799636486 933313649 833659049 862458508 965319602 973976476 509389988 759456121 591020335 718795621 356115671 506166413 243992926 754238942 592243822 961189384 17184610 166855721 449316569 709263744 728551143 919854319 669192697 741827006 482233704 933950620 145089515 459512201 8777444 183107458 2847066 389927818 849171030 968941586 525841814 577036093 261723847 856354116 177908288 272044407 520274133 732321210 426229787 514657547 106222798 860131731 468251528 515864619 645750769 998531789 90365748 918173568 319684832 817973352 651342093 963776259 566442805 632106940 526032654 760273654 279977912 614554199 83015331 184125153 132961243 933575778 424662089 505870648 925306419 993990365 348661768 888079997 335524703 401283950 763380461 927052353 311060469 599541858 906468379 935147145 518462664 988250029 30163598 194525143 433147349 990615600 720843443 775947862 898856325 987862061 146788765 337543430 552138076 950446713 314950609 785818166 658758048 961266965 294051484 831533641 557473156 862221991 209478639 564631996 480049163 989628850 57554235 997825070 248083890 306703705 333203100 873060549 695213680 936537229 66219343 667414883 871823467 885837086 562532214 669261457 678103408 752469428 38569657 751436150 694625413 949066877 816584675 996248693 139845450 463584472 429263706 678065803 706067056 759679064 716456356 784745209 384462883 548536469 393760605 474074478 830800003 988662969 750261514 846025363 818518468 978703912 777380181 789299618 104391374 646768731 754930225 905041173 110163466 421704928 980109138 991858643 525238033 538441610 52451612 759952656 627755641 833994651 699215169 978730328 668540397 796051709 256940908 843419597 706069681 865982934 330582473 704792214 231330731 667976678 223189343 840072668 200155721 439570628 286607103 767010372 387716438 541585792 52142122 311671394 438052410 799048084 902911066 964886169 364228418 540366794 15799307 939339907 854082746 956282989 455736832 757920520 363107644 766534377 12523693 851826067 229645966 689542065 856766626 886114164 163587936 811125590 369509112 605990874 565191177 595612582 845026559 892284352 279776008 877626642 966458316 994359193 148742667 914139566 100545872 373231873 82757462 668541319 796059786 899894146 685199868 765571739 522837591 822491712 822622208 955020420 256958337 667031353 519058215 565741788 673981163 798172260 964757547 976017510 442622209 851654181 695362115 811542572 145911238 846283207 241309284 912812757 945150850 962010875 522362754 969224644 188801915 677254055 506740897 546877932 709277264 960365113 14211109 76793546 759541292 889418506 627533378 688195395 641942119 681391420 626935620 977679377 221917 867935060 465278185 751087150 334631184 415346962 494784432 766473522 547975504 776064995 692504972 979185103 151811309 567380706 77902339 665481237 197801617 622092272 967163097 969809177 696128997 881433169 564461571 902882304 979040791 992399833 482156316 863745442 646635222 931445887 102071102 569894904 934341861 945873916 944919281 951349912 919166925 931306521 902847490 961171692 220513430 824331031 622542777 818752467 336565215 836649635 130140806 425478824 832303639 902320533 897454303 919222529 35619130 74664107 513263882 829447483 408256716 807412127 609195780 905318632 94942372 506415807 823881524 919411448 841270099 901254624 941084733 967697241 182594406 603277851 868163908 868416698 232839914 464960913 547165332 715464654 964979167 994545427 655959973 929979294 783738022 948228393 243918906 516218783 652300220 772804231 253926862 370590411 160068048 440713414 443772418 759231498 291879798 959806919 605148697 717121884 211846065 960401598 51473431 402353253 647168961 688816978 529845807 568228979 309646333 723106168 64505371 315584946 937680660 950352875 854632073 979188125 182932752 682628318 586212394 609142856 343092229 871302412 243872076 567887505 917041622 987758458 548015840 665344919 380519161 866725423 549155751 604574183 348541327 703979945 280254121 551100752 871415106 956327853 215061715 239810033 582755264 815762281 129258699 253723965 992689330 999687491 624054370 632061407 202817240 385601541 616194486 942553495 619891102 703436966 847000342 992535380 130669750 477316439 131411278 510611298 778275038 985697603 13427042 455452549 950687585 954864745 947156714 997823830 148915149 328188495 13538150 977785987 306012083 405161218 127406526 441995525 904674033 920639371 379312067 997976097 605640238 726239440 357369053 734570670 84933256 253407117 378809366 774224198 992457552 993772435 366225936 829671871 116499958 374076053 916166049 965719777 348256542 649953286 633497938 899172837 324037533 649722083 833046740 903461175 247558400 856276402 666759678 819726592 404511040 671523798 289801708 967627397 8933533 949128669 913269871 958290175 838186083 964817996 907963589 948559177 597891939 644055548 40109523 685901967 775932528 832241171 559129460 932537980 261399468 361662056 654608823 755484103 999990738 999995908 269543836 876032714 626352709 883978418 180194129 437018666 417976236 693292294 610608214 974421223 714212602 881261911 80559193 821130329 909256924 957241103 764112850 883502337 171439981 949279757 193677333 962123951 170727367 750491774 646082494 936129159 832042943 885871856 274702200 475107863 182692280 258865434 628622027 970800990 495968720 595972272 326467755 891406846 763937702 809154860 909718783 932294638 239892529 807809830 190193319 341388835 566362683 834418575 194612582 946555549 568491876 644116918 519508054 772639040 18285665 462212639 232775756 309267753 684351420 696572828 979573185 994270972 776876374 791037800 93272193 280976650 338998291 746919876 273560449 496063219 181358003 863727495 73097952 890934722 40635163 373235726 262929152 316642970 345320945 499732245 376606676 383666391 760337238 782162390 620512077 798001514 166554307 551721751 30727882 683028263 284549653 437989051 14014424 34464133 462938414 477127052 864391894 886994962 919871376 953593499 707586605 908894014 191190880 784137525 197838359 767129103 402611487 431549504 913690582 942796555 670186067 787561445 634597979 978275875 677677676 791583678 165508512 655967957 302819594 354265457 375347907 866498877 326201230 970810976 441801297 778195948 176973109 240696950 687741325 891818350 435393922 725208684 820902306 924542187 505244064 948083698 856609780 916874796 493910167 557529031 684232697 864297109 887365022 956364680 465318251 765728526 829286085 841915826 915851518 918253043 285012754 889607585 364416096 925236023 645714426 835337912 921895685 964300088 537299081 850238816 864994886 892035939 771776493 912715842 327339843 465293392 412148239 891929838 944320634 945899477 564464742 982189599 244492120 296634478 614007995 857485768 704470621 785870868 697270529 803921510 506651076 661108837 508858250 661243381 915127160 937744860 324367559 415629977 772090487 835068191 737938224 877187509 871481772 919823563 757842305 909789882 282601755 922860670 96453616 371230438 337893392 667612589 253962412 492093887 953696907 974113265 10830793 221253016 741424424 801913094 66973928 548870783 145894027 756911002 401937863 448930894 656641018 856361619 61284922 389095371 188439374 671411355 653727966 858104421 674850404 711242733 957701254 978095788 712743995 922957078 333075685 998189938 758376211 908107705 296260777 343938243 811461400 979716200 565395701 780407571 347134510 381139938 227198727 893521245 322600607 643558030 361271122 975612744 648798693 910323290 301952599 811188703 369584967 985389144 76248217 80294793 49587401 490599432 43671538 510784755 291336169 834114963 596210818 932151475 700577427 852156436 249341986 959630442 175266019 752342504 910015071 927310581 788491573 965656686 258321809 373072745 79695273 326556194 397649841 601471069 671741298 857967830 413635504 475235326 792368385 860797607 531782433 939251746 606549768 846893556 874147165 878525366 219594952 966946650 27686392 304280884 660670963 892401276 298086007 937938878 365909874 980737471 621284005 732485947 469665363 628958171 274756548 672162858 655740191 872548466 988389352 994931951 388418350 719762573 950665671 972433308 274186423 380368429 950113655 958808585 416465938 456075441 194301630 347105198 213298974 787523189 46931886 693677920 367452144 502410631 846466220 923496451 387325031 791499281 406057634 813383579 174530400 764415973 288234598 875455369 90380058 157718512 344154498 749679478 238754946 337330088 79354698 837167752 637231757 797460271 371152492 404709302 715519907 942931125 908286044 924333555 804182503 923380340 315975169 666922849 124564654 772601963 119956063 697414030 949893441 962176609 929648405 971367492 991681204 999482627 681659263 685891377 575054917 667130625 60055681 751489528 454349937 490135970 177641676 240553705 643665778 746378974 67212988 559759468 653089762 816396479 495380777 955390585 671680177 730634846 753510343 808805125 6462207 204156299 990357302 994335503 711677739 846805869 123419955 288410977 796823382 928505960 541911871 747114677 323228122 837250604 935245908 944936961 159074106 801870505 314298754 553862642 336293821 653464291 89805226 535393855 531048026 932541012 399282165 954860210 568206852 585603690 749312329 849760815 258767786 477111687 517108965 582585327 408630908 650979308 716759189 912054807 303415381 650297180 549686635 698530122 169444958 214631060 956380534 959660414 33359487 888807126 713664436 820133015 485055296 876404444 116209612 366068020 714980275 858159398 227632271 592732089 212417070 349572023 963904764 990010442 725410827 901878667 349673482 632873439 299981695 432914910 667446316 959368296 773455639 931793769 774934203 983811963 187719654 859778553 330621261 940055388 977332464 991442333 53686692 113514126 846448602 886310758 884091401 948244907 411902866 994006937 462756307 732567527 6941083 960628195 536164087 548302939 286365771 946886261 364536357 807938791 364184107 516215607 255519300 974235844 940770722 954347440 544358120 689830362 120782334 667171524 922208098 967645876 67547269 940811165 954635894 976243062 414976609 811332732 596594825 812544846 658069935 767790664 810486715 950856267 810918696 830323238 945740636 997030146 894210278 927860409 787947286 793045329 352347292 580869368 735349618 925300091 379160338 750777500 814234986 970519660 974647478 995607168 272278394 730348226 71362758 567208847 738975071 872318039 899483989 900755690 61809319 896598977 998318183 999356657 358360585 848165840 662049218 837174951 516667783 783407432 180109611 229431261 52664632 994176126 603541203 655173221 354641755 860250974 934974203 952460244 659599631 891334920 180735918 326673304 782828527 862087465 548773647 817522909 994594640 996900577 509881191 574028298 867569633 868999822 434179024 815004231 270252518 321812577 172565437 871606159 609233059 776586952 718479963 743338961 684241882 889888054 392679880 576741201 88687225 298764520 726291569 872372748 498292664 536936440 967849936 998849120 233856882 534877419 78406346 395062368 591804823 614996395 509650680 908192426 55030172 673099693 345094153 557334453 200640907 976540060 265465951 703826472 196340197 525969919 767968900 853133080 885286396 920324810 349267551 917481800 569979751 704552664 161681410 735133233 833321629 955300384 932980767 962738009 353444329 890493361 434626636 660475253 29080294 475757872 72250960 438975684 230074788 385773913 721018896 770212806 70640272 744165327 638873689 866685203 814294639 852027287 230551952 737114949 128784011 135911583 88745763 949357499 395545175 478482321 659758228 981675421 793020312 919393884 690861911 728856206 930467957 963000299 724860185 914394005 13733281 436677604 277775516 367779540 107463620 846285709 619126352 974903476 803550897 953787784 807340255 986795792 153531849 728281360 332831946 893149827 334336109 538168300 530992813 795362227 119838132 957509131 736749619 841723681 172573333 318840769 790559463 824790858 157792469 878048843 996332181 999494659 783232158 939608197 834988986 892803624 856764615 960803386 148493239 441303336 548887224 900278511 525605339 544906289 692402114 964395879 575760631 840792671 936315453 942964867 895770631 981168019 4538709 154372787 772841648 977938126 958546366 994498005 525296995 818406763 677725291 917067896 672826458 930357182 636742388 776670107 97600314 553884459 665428251 863079890 521228917 636834742 310990372 626653343 378808362 642179837 187912011 863896854 879545828 935146424 695849665 866619750 836957583 885223518 941708315 967187101 252273334 515326039 795221546 802333138 935077913 938738247 129978724 868802617 403089995 905896003 664017927 714610229 335889347 910520959 145175427 367036509 407062920 964981979 770685299 920175531 908627744 923811405 871765564 956099242 546357062 584055691 677435403 734481857 698580008 707500131 725924452 981720053 821974578 917447849 358745639 903270340 884911061 987653007 728721827 803052316 832762445 908726865 452180655 501389233 503861897 696686859 861567658 991811587 634210730 751219254 551238704 912773639 409536384 587967415 931441365 989885744 955980486 970343779 40464805 501585419 709634135 825144043 195934162 907100858 737519449 978531789 111482049 734543611 528979534 926707314 133382889 824056477 981938431 996018386 114480417 859066854 261199829 718940647 807218304 950136710 333641857 394184611 156148557 436745671 178123171 581603471 21120819 873298735 905612083 983532078 508332651 909904187 939168034 979705871 369733277 520412036 950596301 987486526 673521665 715167439 535751221 755676821 617916023 995357444 255971255 770995119 158597306 477732677 395920480 939991809 264018308 903606819 188889942 845961426 645864295 771215004 1719184 331108739 159438362 554894464 81814124 140182494 197821625 519152946 800761961 960765162 547219162 567703952 703942442 916198914 306356795 488710562 268113428 494504115 538422638 960229029 837270506 902201529 997140510 999166332 671999167 982388354 673066120 747202775 990443911 995511744 786851500 797044211 809413749 866176888 925758279 992742317 174191514 212917075 529430816 623234378 403472347 743691480 541701657 945657023 875014127 919818627 171637716 196877904 55660423 843514114 317674260 484805276 79263504 770434931 139451462 721680500 575466706 740913878 547955586 810462466 26869116 174582294 514940561 622530123 967145346 978751836 57783158 403594380 522556422 659292674 364672481 670310567 457304501 582083815 958417837 962186453 889101278 999177170 184971444 301066818 425576103 592377630 829782749 886453133 448454862 603435825 54582996 256898219 627088079 866515176 453854314 847809251 64999756 606744453 408957265 514772609 277727769 666390353 924862086 973173385 845016970 883523378 477862766 860415789 137473804 964462453 823062968 914764699 629620050 975969582 76258063 313761753 834158148 906007259 139039844 703745777 483384986 689577340 129614006 985863091 586583272 997873535 758074458 934952014 503467166 850754373 873246222 999004253 484384606 591455461 821401841 932294405 898778233 957056049 224442288 242803142 142398887 387117325 740203724 882283768 628120287 958015458 293286495 521745575 363263002 421154730 250916440 573071205 304043544 839433044 450832114 874833561 244280788 674086077 753767376 800312672 866190907 936328357 609416652 762326175 838695770 954440927 748154319 824844229 296452447 328854654 4139833 727781581 649314882 938817905 783093814 928657691 353022902 838099347 202420171 270405322 24953418 446047313 631703003 928802942 836253574 839000780 533851088 598660086 242262240 998341011 306136449 894108793 494228701 881203962 550439013 819789822 642693530 849523794 905197103 938575096 791227558 950759982 224553995 393868084 2102932 525291310 172997447 809791481 813248263 960001837 449677613 620862523 754461570 952346755 726725077 836588027 859100272 958700516 541737256 763795475 478120933 765517445 234483596 522416047 439473417 779367045 537813408 700545973 302658237 736443961 320076384 747936382 471243676 799146833 421931693 848493076 400955087 876514715 94923674 670867726 996864368 997701373 106809083 583880270 106247092 284171708 222199429 915593940 887851438 977699787 243828937 546747735 94923686 925231642 618955428 637379130 565497658 926081282 944734223 993757869 326335580 653708133 443587722 710191445 90196493 222600457 725122082 981150840 467858899 622851924 897030604 927820880 769139676 829190750 285577763 431055779 680609765 900577685 645527829 755103090 608588123 944840595 795005495 882605496 888643072 935223573 849383144 870634945 128751358 806319474 114464019 403622135 306215398 830261718 450751599 519626770 3580523 548216802 148572455 496324667 274005545 773110941 458601109 808610447 283746608 960766156 119562553 986143568 775432867 918088824 598673295 656985748 518931801 834920849 423776745 641223414 245746742 582261724 116058921 879006793 535570362 628601175 639457833 708450975 425462013 814555553 341210857 924047531 244922772 965088259 127406325 167546938 109467055 723994101 565215746 614550869 195668760 626187371 216843853 501674738 508299339 669805530 870495071 889584151 106903070 251477105 682035702 783330069 980905433 987773323 910181050 951313135 387115676 594833253 965344073 989187679 405127950 431138577 620927565 717912991 347592049 411429417 887468073 909917606 752858225 959943871 784740 74716205 101781039 609054253 968074785 971110780 186858868 351048259 840875701 908167545 253422337 657631679 384619945 656080629 697451899 817667782 483301435 593575456 397397445 488373605 111278812 549712997 580138266 612988981 982589103 988934709 326138079 598726388 378998008 947822610 273226278 629445666 958324559 973521760 87765510 524711075 479209359 729110317 260058432 667019319 621516713 952092642 569195797 985761639 606727503 760724819 711821168 743129149 249848707 648169350 588420558 856684927 32895415 675079437 100762163 408296009 25651164 307577530 189506176 544346569 107426632 648267264 973052228 975251975 235666277 698070940 17333175 927314722 795832998 837139885 33360451 399048139 553199503 593939556 951751770 967073417 35026500 939022178 130248782 811029742 371539468 927615183 679996932 985290671 544139177 831716492 376086152 468183917 112482414 451493841 257699236 305964080 790675674 889766525 762346254 763821439 450425299 972744211 40829666 173090679 292297948 815557794 575962594 753290807 938813806 951418404 734882463 965496127 193532183 626726937 740929329 986345191 704448559 928851253 291421822 728201654 707713180 783189068 206250305 835520845 555514594 725351216 544400151 548861710 574099346 760647040 554870438 722138513 593066028 731384039 99260596 494381281 943845021 954924591 734882687 757838941 946147548 978056495 743604855 956664978 275735584 428810347 713124575 941680368 292180740 564820515 839448194 907322154 162334836 402011536 717600216 803114389 329651493 792207327 423735946 745836798 169345251 756355891 690453140 820884408 839622598 943703872 894631054 982598648 82118223 265599340 57275915 445329650 786854915 982830428 959957651 991286997 111946549 588884195 168256134 344141070 140708351 608969074 188692170 489627021 122884785 706506311 964836456 972820606 785719850 814971822 365135266 658296234 353887647 644401663 808183110 881829545 866832235 872421920 353060554 783812995 888963299 895591763 972260534 977143524 866311258 901161563 679170866 937174186 853446019 984095051 596026259 951481231 466467583 843911109 148952236 757683260 973138865 993770486 242787310 685987993 293414123 878509183 73207382 816535541 411452986 769587433 20517460 740910398 289325908 386744276 658646934 811737233 322418940 490818233 94759347 183350930 599267633 945647274 394722167 986258747 125451949 523625867 141115463 200027370 175312576 373444892 473753929 521724334 931891386 975871687 248631983 993869809 70348080 835266642 232536777 254226187 993314177 999861074 110032395 514427704 387095020 795675893 467260121 767072510 636681977 758241471 482723325 734431978 502855640 524530601 818145224 946942171 134960451 998134362 363386829 384304884 838312497 905453257 480962502 664700773 594798993 625735899 46220768 756432877 713618359 987090823 969048403 994695851 62056453 731384295 462139451 764660463 575072762 803336405 901032403 948441995 201406970 960038166 79197008 107513933 27395378 188928699 821955336 963576698 941456626 981706703 894924363 896991846 435585013 644314021 855220364 877333840 840403656 874532331 592662899 880267929 928753241 976981131 936670438 963041623 724569331 972282589 565838746 973257130 722930124 815028327 727619429 775654802 181861426 935860251 936908629 968176209 253714672 609021123 609413297 943949637 158634649 862478617 234708787 990251282 354629345 822815279 708210905 987545031 116531910 610147012 283987276 514109781 944521213 993797127 560113787 972918629 618359751 923719582 695144190 870256250 923288770 994719935 534809506 654547808 492670543 774948245 287361405 766863445 126230012 394089294 385849553 655177844 158209198 489467226 119461461 640551095 618554671 954493004 986313091 986620714 431239552 926298309 389379692 593792562 98209689 825184737 354524046 666190296 313631194 880114981 636965770 989375645 770922298 810351204 555831059 697171099 462455419 752039602 668738484 993532299 395204701 544757592 605054964 773921262 997210527 997754908 168639831 258855500 363263190 496972395 601677168 613347929 755586601 918790597 74735056 532084242 82194421 104887291 330175867 547476027 333659244 487986483 13939661 775766643 638713433 966508657 121781536 273124635 411729001 457244605 974559666 993065791 413895772 708057927 5427455 880197277 298871532 651517762 176058611 246175122 241019062 408502265 873052057 985110078 409997269 705915185 238531922 477364839 81027335 133955249 942001673 991284015 976383446 998144812 879653869 890297952 453757378 999405949 247230417 608944404 261342092 756773388 5439063 679094739 192654634 847268190 739229973 969188739 942308095 994583256 118552657 628811693 649845321 958282719 537849335 959214849 85774975 849575706 945704092 985896051 64101099 960020733 227874745 430357822 688594454 896606878 525064117 761312982 947201973 981043193 968420686 988248665 117647765 394759851 557832309 987483898 814103061 922047272 250766256 607015512 897291978 989647147 151123691 572098925 574883282 885869337 254339676 336997359 752743767 903015422 155274987 504562415 457079457 958111085 345714950 436098890 488902793 677881617 229617242 411072960 110075820 196331839 530600600 650014986 701345758 750715705 888494481 944242197 986691773 994182476 693290419 710527517 456141167 461469516 532081558 733709382 664570612 895845741 188562281 533004759 286211244 550143566 77902068 858177732 849139937 971598516 16920097 96553626 576676577 976485316 130399154 167006632 657180134 983428567 39762370 995968220 698043837 918232945 770685448 959322109 655769827 867343828 898296751 941510077 322822505 776169406 438945174 594564852 223126547 611248458 290801269 974634804 429640803 488830123 992362344 998038454 992871313 999708550 481345629 878204590 897644092 979811968 369978882 877966842 721830347 989133260 419772460 807455283 550653399 972614142 476584329 825897962 18046774 584847670 92440111 523229410 320182773 504352076 335721844 967887614 323707357 543125784 126420926 589489969 872225694 987587826 173462806 404033883 913788999 923760315 473956140 760673022 492643973 588473060 246986557 593581602 862019377 876226708 656348666 783143970 850676971 932940325 406714175 586709307 185370201 729316560 697814028 867302100 807165091 811831994 60548463 646710318 84792618 150458926 455619791 515982184 42242272 181231753 317698319 572141584 75398552 735065915 704861645 740447324 879205384 938379265 906362157 994273644 514911939 542774214 872357396 982526139 446010045 508012227 303411654 982288832 67124358 825477616 961887424 975985618 209796958 422374239 456073788 681754915 293002302 472076704 85536273 129160653 919549498 964307255 95974516 289445037 994360862 996936204 149724974 714322644 539636707 584718010 82873056 976499162 861779464 925400080 956579865 964845908 464777355 520726102 767015007 831556310 496159271 983467731 311349046 692752582 853099122 914573683 411738597 928636995 455636059 790282954 903211791 961891205 612161938 849119457 849994066 859190900 511687926 973051583 284513772 926985360 547956244 611730602 303073046 446200125 923259442 963291958 5609748 68615797 552869405 695466040 306025525 423652766 718504665 830100920 217279194 953699875 663926128 995378510 77032838 961250504 659548045 939707604 842452387 934389406 418597616 948127685 853796059 965314675 831013113 844891473 439107780 629511761 289592048 662119774 879036929 925352233 516261301 541331514 248941162 373857498 850559141 926385052 348608677 881074193 915279643 951778181 93921713 656217602 776590881 972351115 150311891 204078513 842295327 859927006 532069606 939245847 896672667 993583596 11406931 432360910 752092176 912143772 12465364 673082078 146385121 191279847 576338199 984703849 979227734 983722302 497049334 577361246 61292821 570587032 999030795 999641951 139878978 950001407 606441715 972072998 874777693 928922277 512370867 993817607 856400457 960723233 295718791 298043894 922948283 989588193 727693103 910395243 48109383 140310745 901854232 938806238 771923770 987755107 198148023 669062358 189214663 617565359 549952498 940633316 998967727 999530370 480485907 504371569 931306618 976421918 246752230 698399700 883005713 956357900 442376831 822023308 263605778 610580868 533840694 773964983 30663109 453334112 675836956 786766003 806790165 884263324 259137206 303450150 392526027 548013365 471545167 570876190 186405817 779937923 178473996 563433556 316745946 750681057 377945584 622901102 645728072 757966584 546826184 608041557 231427075 581844626 151436606 805818066 146762158 232803342 135314118 414211179 13678206 612773538 591814960 759537810 648006082 997578868 301266710 955970859 778765123 871449357 970605714 987388054 377794609 869063230 744635463 748404618 347240581 637145545 714109494 873924609 262985897 662874222 505958743 864671192 657253200 756856700 613255421 935926821 816196429 819816957 73392324 524269124 404358429 648021282 813745923 962076192 211393185 477700053 257732756 286044885 125610886 148369024 210792898 806245270 958467213 979263464 652508833 954552323 159357357 467440726 368063578 864935648 147217677 966437539 904750628 926810144 222345959 986173994 347004089 897298416 683288050 960364451 296449037 873486174 384349611 739593087 497486393 842253068 660245921 692299522 479708255 864930094 171229460 347099645 8873215 231332777 648872349 800233452 551017875 671357522 282569037 351079096 459439503 587090309 492932763 686242271 541535316 692360919 770885478 860181555 171203769 747073123 145932819 719102495 372673627 901385667 15806880 352264846 226335185 857788395 414217593 985223169 170073860 569747349 956874419 983196050 816401427 892110404 679007504 945643950 665972326 772338840 233754218 520892121 135731934 999905919 397177711 410746088 866109813 962138382 782615272 880226875 754345737 994565248 290054162 631619288 373671458 542367316 391249416 959918544 423199267 974519705 315035062 833166000 950401839 995830471 194376807 516694717 77102202 920461443 660562622 973463811 414894796 562433033 901559568 949865063 227137746 630800878 256523659 770701260 963101208 984307232 341449757 622692695 687443486 688199805 168482183 831376768 521551866 703853064 562543542 619060736 486267269 500230609 759648168 933933162 748569023 780170091 183089423 548691864 981404803 985482374 664165207 915123790 407569596 834283238 997896039 998390345 962308221 969906679 892138100 991208442 272242706 379265025 634449775 989808160 252309243 379374556 701409905 828252552 465273791 684766506 991716785 997642853 61009599 155427929 635502146 743902167 286315879 354762065 833519038 979294536 674988684 876398076 26971457 903162591 273831996 457453342 147172307 770094997 788505709 922899950 288322766 301328852 217724798 707131132 835867044 848780434 442063174 595367672 887512191 972226779 65821828 623898418 821297289 987678894 774987253 847051598 193411123 369843029 646411387 852690501 892995850 969340450 258059538 619122417 704926404 862085341 250515523 923114092 543032310 769129977 228836306 794873893 433884025 805422023 365977049 543520898 259000782 371210278 433614141 968493154 663833026 923236419 358505175 583490896 10476825 610927137 776712736 813873076 774401930 953390977 276582840 446447386 935704471 957529764 340164217 465368088 489532625 645528791 541187024 607991490 987838461 993952584 92175604 432055911 84915234 331417021 50194993 79483491 592663233 699401644 980651110 984785254 877568537 945799430 629559606 890762445 612905346 835033900 864814321 865631284 858464948 937742885 987933470 994204074 39570447 101034988 611707773 741748360 725009324 985367983 241354012 654648673 245214877 426764363 742859154 834851079 795281052 911131195 42201371 164079686 602219106 617692810 583066666 998931520 590566551 885932587 744478908 941028442 711330090 909335888 502265051 981929768 808560964 949509517 96942917 807640022 366051241 808974360 479339788 612287906 798303747 837782825 399844906 455364509 725349347 840433913 493464793 756907973 287067489 697408989 807340866 913454309 382589064 433758549 587726601 778262513 742894629 825325214 375258475 601240340 412059934 538391007 548759713 630097227 250758500 603255538 32340797 333383369 62531640 757807979 906003937 969155479 161501812 637096942 500715971 903165726 155985002 325908145 887091731 973966361 526390735 991901080 781789786 940047568 250184253 603988905 227079971 747764224 507747850 514277140 93150022 507938443 110885092 819563335 917369476 967672551 116490216 405874366 253633084 442539166 587792787 696823764 947386868 966655025 963769322 987514564 427570140 801923813 631038126 889814100 577918311 811583062 390473476 483368327 565775003 574910318 709102637 729422617 512439207 866576763 164417852 584942451 225439433 584933729 845309171 990060026 23642007 613767565 603644185 709325275 375140729 923860246 472755303 979001248 976969247 998410086 283270031 348534020 141335926 616538102 365613564 534413050 751198457 802675748 494579541 496180355 723244455 810189874 569729075 692161476 301396929 566380100 333012139 665725331 983790385 997923199 701888718 878024867 202544300 574429215 264910562 885378795 496554115 864765117 397401150 759856449 253811338 916640372 429675124 497677858 906410411 993892402 83241741 569766087 785337424 797716252 718431210 827383338 901643485 973614826 251852679 575053423 148803703 468911669 943840258 987660543 786814461 923507534 46004901 931966513 547972994 756457654 747828970 766598038 938110475 950102892 312234129 973122021 862762905 906276734 531081766 947635885 41760569 922932398 42104249 716901713 336452236 611875234 824463360 890949383 235315812 690409374 169472772 273439764 960682043 997344506 481197291 529922089 582150828 836677834 566303517 745910632 483603002 903330459 832496670 846145372 248848066 667667617 421242700 923087705 202073197 942100856 570105939 859103490 353623081 833292564 572023322 841661196 441601818 706573300 581655104 772413693 684367039 900957682 59038014 704349827 171321625 873655424 791538699 798544307 450702817 559382049 425470996 931563603 551424625 946141274 892738480 980256957 15932427 230684238 758682923 783726128 860590348 865671012 366035271 690385049 986855774 988693134 868710007 869725806 601045989 751007941 963680485 998879314 314073997 579582508 503426936 914776139 51352174 939773145 205029980 913726524 709117218 879432697 449334501 637754732 281973100 497557517 131755777 895791839 679641279 952893099 886812550 938321485 990663035 993374870 610786889 966426355 569232809 992376830 392201944 767549628 909641680 938067824 530699514 580348183 848400624 902291940 167116696 598396320 576628288 784879384 499668139 560106268 213172616 927728507 268942802 836102129 166202087 748485433 122012727 245225195 565789766 662502098 335478785 902954037 922484974 982866025 385439536 543815023 720006123 992747452 300091173 942589922 825654999 987257647 540184464 545158759 836669000 990208166 743540722 989467972 238296830 951493824 179978645 399076033 735898552 886756188 842943383 936848905 854353103 921039218 817603134 960971374 330145128 738481541 717867166 992731567 98579797 325703769 700865840 880387300 586398007 682931769 223022752 886080975 625048015 832462257 775351536 819357550 333918650 662470676 129937791 678106750 285795197 671853309 717927508 871156782 82861749 437141034 200401155 875352367 271599172 445919711 277951008 678485584 898928155 918204637 849321879 929531620 159438869 882805687 285441262 962702017 287898780 648054533 173479441 648524587 753701117 800942962 704727521 845895399 626596737 814283648 531230927 931118507 291602053 393607449 725541329 930222346 829190960 915257374 81037635 93982016 240368789 769931132 425287476 977378923 494709651 889776054 762458142 861088679 82586911 849239746 183596691 408694926 671209003 817543363 532105853 873199119 483784299 782386497 170422057 256226885 282129482 755700473 729766163 790362424 454006662 627356316 152665386 900927517 169673564 854740596 304766187 879439278 776685064 916504214 350033271 530534871 73195357 157058458 5998635 118030256 83018568 901059656 320245755 695505822 415780788 575591168 183428273 489063679 346679826 467248720 206760074 511496712 963966054 965113877 994170260 996009812 508513120 961117871 694962646 735896678 960000048 976261619 938864219 947444517 141308557 823583993 823397064 915388695 56848934 637994773 971635527 984146416 622861866 951996045 7018976 375412460 811703492 971594457 522947230 978574556 596700666 975840545 954093674 969906329 501423319 578840150 657934836 722915110 734660999 785892574 988430353 996825033 521744881 927802198 303399670 936982769 941337263 958385023 428881347 850418432 104914720 748399166 695051643 981469171 293327786 519252682 726229912 726230696 864927358 965037941 154120885 406130536 922531745 948766927 602367448 991477687 117122640 278587963 911064583 943828464 248668210 819417904 724134261 895732194 542175746 864021839 636314551 961374749 942348121 995432057 385390464 924588127 654803704 981165901 494265384 583584801 35672181 947290976 653800661 719018398 545534287 953447488 128051518 406616814 136808951 352396346 111436520 514056953 508698215 718698360 256776203 615681243 676084298 940675562 179693169 611742221 657566387 913973771 308185486 643285436 28823779 656273311 665623527 851668742 520725744 852190564 617983849 695128839 340994184 513341318 84286419 254719539 357574745 605842050 786085681 969093971 408403279 518965444 952154892 989878389 578592581 703444649 142356237 447175235 856384435 903697963 567177664 689251318 83909437 338088541 38883682 781529746 673365545 742886495 502974058 784244163 19378958 832953206 837131398 960861662 154213195 458830046 694370127 788674843 62385742 720191637 515737139 991967561 58254349 660933107 400544463 491731126 494177398 949078266 838775924 880596036 481125497 554065953 811862956 875795411 64925662 456014517 380756439 546889937 660335374 817910223 736396604 926870677 288130470 541649504 343367401 751006230 275267336 404473549 14749192 384286198 702170265 822471853 718354396 976845609 622815883 905699587 851111693 858350237 855060215 913903626 790076347 811435962 440048172 545647467 76294946 585981788 133841785 354289368 497680391 659015436 482249572 888932630 113878378 440506201 335200276 437628782 553800113 558976882 774969783 870545429 906335548 945451515 845046822 985701162 944577565 980167214 453503654 861907678 154117726 743053604 968796111 968906953 378653350 960095317 844635932 999256127 319661229 645337618 263707459 731034690 594753411 873132028 658637832 919043579 287774303 628124700 320492419 691822488 488271777 536550566 741645619 769970450 472644641 978291604 154185735 799305736 919756349 920708153 181385913 238157604 374445330 605029587 746604926 923115383 332268055 947320480 471302642 949944796 968777557 975072740 474013402 911215799 678862772 690553219 393430147 905016595 366890598 796747386 694122231 895679828 820952674 866993033 677354863 831397706 790301252 943144091 52886010 277143122 670266570 841841141 827339397 928405973 267680090 610622281 260717169 819942398 811561102 989321923 471816515 782894662 494548734 589775024 273460535 862211282 493399986 687652909 341352298 733310993 484743826 959525643 151131836 693165526 542217565 603206363 122917229 894103935 590883038 838770250 53295210 634156972 828957082 845535933 997630533 998645469 160552922 409180073 933543182 970682619 129629155 705031352 297344737 867776843 372386784 421243671 78674100 591290436 272259066 755517699 236199792 507745228 995177400 997140729 96987239 919884083 906563748 934973782 146970918 758451082 179031568 546962816 526043896 571230060 463988236 508120887 252295858 901671805 125085982 808632676 947050597 966999100 608828747 725383153 590555939 964737354 276358014 822947004 339253283 415495309 197650463 316569239 903016317 968879202 248331654 665950491 855319503 879902388 729556508 897742743 941093270 978359743 950024022 997634138 845738734 872576558 727295515 928948203 537111484 971202954 273541191 545719480 650231892 794427535 837912054 904025547 846937311 897443089 886322279 924190045 991985143 994647888 155079219 913130508 45173993 485367822 671360076 768122324 817965350 965946542 857474935 890857916 68840159 569898804 642654088 913872343 619783531 771222699 903161071 959459027 87012922 807233282 859274987 899232570 294689728 684639920 900485917 972382917 885641190 914708740 115496368 588559659 104685386 731100672 596999336 708867750 955330266 983965263 224053363 864404224 822264698 866047862 861667386 869813345 48863763 493240128 656381139 682733966 951031558 975899615 317161199 330854977 242041307 399265563 779201903 879174248 53860899 557497453 40922793 218897648 805624027 911630369 472057960 494490738 424840404 687138206 509063367 989668009 635339074 782260276 703331133 817660197 908092545 992982066 207347812 935218375 908385059 971739637 759872266 982906247 379547803 697851887 777625165 994434775 378820607 798816516 898278238 997657075 811278484 876171836 186388890 784154030 68415492 704914978 961565779 986436107 546068723 648690270 437536099 478691667 922334697 985043748 555876759 804016748 980992678 995437842 304009869 835701884 188162006 831783457 498727958 859593738 235800947 860977511 156786769 302685785 459436381 730312988 845833349 883335050 893788808 951832784 998271576 999471674 638702418 956345330 485670905 694330333 218966647 646458965 819737950 856055010 914355500 936066117 114910105 764940901 132680861 416993631 519723382 896015515 667220546 747189191 123669684 343387979 132564919 247421133 421882691 768208139 165782160 198199574 225444436 370870185 140526462 278719779 654339809 781224138 453361194 778812014 831425427 855780606 916926807 987096528 740896976 959717729 779450927 889405288 643402588 927097391 185945856 356968252 913926561 996793198 170217292 678515034 279804901 958522713 48630392 957077590 134522418 642238937 963984779 965704299 184769235 501662274 551571628 681402306 157164384 204120651 756656187 784733217 919967673 939771878 973214253 988884808 916163389 988501465 140783652 752332668 345526866 653679673 346300494 625437447 700644979 738092110 519445279 618637519 55947103 544700337 143446999 938551118 615020004 854785004 309622969 479109580 309550966 478750377 806987376 965822183 508545775 697507318 11883641 827383744 197155733 487329427 6974606 747404874 480856962 664864633 996006332 997875884 188682427 420079568 685967190 880130806 515913038 595397643 124912885 560457565 139245705 429168813 248082291 255139188 746412290 966721841 168410064 777646617 22239254 824927685 354882286 657719725 245656501 662550329 880079194 938798872 470864852 896511304 324677371 338644678 828572888 966173289 831097876 852311331 131781686 645019417 511899277 778738130 514004439 534765660 120599479 192246048 152661769 928377104 100028902 971457817 457986492 497677019 676568501 934926626 721143541 832720526 64388268 444342771 514429789 545884890 404455595 478211906 389731681 502792933 888557664 932316196 934054987 960800571 916319630 957565809 334617250 355299618 498718750 889344693 874653360 953000409 236463427 548206105 203210639 673004210 945259292 964053309 444977359 781689807 169871617 175100598 568373663 890859450 393279844 443688733 583010101 888816736 50990261 265536029 454910795 921854278 859291538 915860994 981613289 983836120 111305337 821919207 856674429 878031692 392616930 730443637 693262198 987943195 678159899 758603871 838315655 922833686 594704299 964743723 887345894 988863951 203895892 918332235 992383926 997405709 471499745 816797166 559300457 635597680 67298221 825728505 55289883 760021951 615811622 624963923 595722876 882341469 639780699 896916535 883416162 931528773 653427485 963016358 333650508 693914240 267940031 345271100 397422680 948786563 742485751 806746625 473879063 497046295 653523980 877426175 254821004 651746456 939889592 943895542 56578893 979273083 810560852 945921048 985376004 990496276 971019766 978564108 4947620 271861572 368434747 961212560 870838301 958963309 528768470 651671158 256457514 729815123 162410338 887619714 963367543 968767408 892377695 948214817 75339983 675073187 524494576 885724246 857202883 877859541 798244822 929059118 715257009 997090632 492475854 894813329 15298460 643064848 354005484 906231546 787413176 849524520 796613198 826848248 807185061 935554019 556185104 977083291 362872765 496345408 463973804 541354114 782715400 798534577 695486658 706981423 226682164 537272375 652202679 833816363 260626107 538450398 738006334 951097531 567212833 936081122 501852037 976798389 148936260 444043758 717171440 879212515 669834045 972578913 645182217 720813248 26987786 542033673 273838627 678459855 709922732 950845882 592274333 717679455 819553005 854443814 937418293 950735154 963519867 992111184 514384157 971255277 603064300 886833277 59632882 369205640 133712946 763224501 865491071 900833617 392275808 432344466 863745629 963514237 74785770 970617696 51753498 303594807 688919730 930123951 687462051 842564106 76727740 483243205 510711247 697532873 979290911 997582255 849218078 984519856 189235641 905349485 423095260 609168334 379306491 613592938 985269211 985474058 850959777 911840127 205149317 434841997 686006324 938333553 670208172 745403065 707240112 872204358 609709070 636943749 420215583 766075420 750612200 865774239 720333456 747113749 317884388 647519981 111046341 675105588 600235205 857956150 284293767 356697507 943178960 986043317 12538777 523500947 675835803 955354313 916035228 987867554 632081608 863949376 285233322 313562268 513924201 829117671 305856167 831316335 359626635 589320557 972020604 992099458 419179593 537019640 321436112 481629472 521035850 794840067 43757141 668564364 188492953 228572604 785950802 860145073 142092664 477281979 884526222 893307582 487902089 806153685 832034304 885966268 548265547 908966942 865623617 900548422 340710600 410490740 847455372 850142035 185162621 494151553 666393802 735221409 472852244 572782532 456167058 648880725 690355871 842284484 21798938 403775969 621549876 860397151 413673545 485463232 58213246 197547845 271422690 951463807 911082250 925149360 898688601 900749856 718976638 943807433 78449003 600821943 540417716 853996614 945623788 965226709 232517827 867270102 19952520 212463325 849440604 894342448 2266546 937497001 618303277 761193412 539364100 817468408 858241045 962613370 821700769 967308711 184341286 978568010 213221744 311167592 836904275 857232795 313462281 556724301 976686234 988734845 387522519 671908596 383705474 429235037 961265425 997157524 688012433 951399938 563285073 933324185 145820190 378840566 992966833 996681369 506350131 888870394 16648472 373626507 599222746 693332440 523309187 806526273 915648404 978220756 343241245 942270699 711555506 879274276 676316086 858799847 196746510 846294617 68146744 775259737 279350230 724408402 139737252 962385839 16802399 404843774 671006521 888201837 957401141 970097996 734993448 900286479 829597935 930223252 110624948 432653817 395089057 888846961 98718218 342804301 291425810 772510445 751931081 862698933 858564567 871920450 618929711 924039345 525982547 882024199 670424398 770162872 3773777 838123155 509622091 933199071 494165106 513134696 391038673 569447513 775321317 925378471 591613013 901750449 183974067 767932726 518932552 959948614 170025328 895015141 319519767 643347559 522919918 716606625 177029392 285360825 784101159 806618475 438443601 986633842 666506906 856539737 479944845 884870677 352687606 357303437 645110107 662173867 597973833 855473187 549946943 770117029 125811087 583603653 505523752 534504618 869698095 905112749 287734746 545408723 972972133 993892549 851958817 858257316 854274952 986448227 803754225 930785579 341788006 363882796 257814119 614880840 350780694 750873899 226392347 702106506 969840539 985159119 725194295 822492765 221289028 675947010 257223215 870157733 618365622 905792276 201024983 329576026 823527061 961388569 229865566 992893008 801202819 978435955 301104217 687110501 706190006 797137900 784243635 816510813 337137339 669527873 517007849 535136695 659178183 807176857 688222282 831943145 171955614 344212349 697335955 992197316 576712036 680888214 662938902 842178543 595831582 764506064 930657716 980848048 469471622 749722312 423041677 426965940 737084360 933092409 868018440 932213658 829273246 940485765 16766780 779221734 882678073 997527322 406061247 788345161 369497755 492257494 872340674 958151303 722587535 748025078 530682077 635682320 427369953 795590113 205280969 228730292 780445403 962718898 286405280 301239953 492318230 775954028 923637052 974665788 114939251 606432553 703842094 808670450 926693232 929790923 246957629 451356525 224353197 984760309 258900616 623899226 368184305 428183011 456314029 772784180 455628479 763221691 382244898 591323827 766127575 906836876 156131692 205110402 686563169 949859115 446704076 584144583 409887267 740747196 818217514 823190681 633759172 693032951 885970007 895881112 9930270 198188297 80281854 603519065 801538737 890920979 52723581 626842125 6585736 874793957 627281895 731669752 389043614 444523160 51627124 319960985 472769161 535521810 252339965 875504090 671624647 776939806 259417974 392909341 922851847 953753137 409747140 657894387 582527917 778235579 424243130 848690039 664923602 783685322 412512331 618980567 122285655 747391424 238409675 846544779 34967604 762178060 351750233 977471818 831725466 956584172 489752933 701800290 290737349 885994235 952539842 996341782 607612756 979948537 89398297 478762369 315178643 678368038 639735820 747564186 912718256 952126648 181080164 488695723 84966354 751374726 109975235 905895484 369640147 909074468 575053711 653335809 452691365 745991644 534353528 710689140 43722856 938946890 250137921 267582427 601770688 810617336 953346225 972419431 63061378 965459486 701185043 853796747 802596526 808447981 997929862 999130371 120842278 405796637 901698423 951359254 452175505 714474472 566332815 971175092 274554532 848465594 5779888 243293415 987851828 996181589 90578799 959698132 618229108 869599492 268782647 860996540 985988520 996260245 490260038 491287811 408398968 746126178 140944753 901504557 964665764 966028779 875471353 997916309 930423486 963771390 882019722 933509531 369842114 481314834 599271817 638700162 176206348 728045905 154066948 832020007 512131701 740782425 679762854 914331890 236410026 636359865 350683856 366958456 664117542 971160322 297461182 616583128 841514748 901186585 78376373 459853823 487690063 949330320 192991406 658271938 343950837 595392214 804874270 861107518 367389118 889324996 501619444 779503560 933188627 991646135 802625355 932682401 899817439 984426665 817657137 978517094 391114770 847029336 791924478 942296405 737880914 926691847 502046451 576987862 302867515 335011376 976120949 978281681 68094701 965302232 283072231 640231228 373514054 563796538 960021028 991297021 872284702 956385520 654634210 932879234 200335031 408917293 420699816 699252130 717598231 986051569 27795262 426042160 482657660 883003835 237615452 505199195 350745822 927760931 183261152 555048057 28967724 63382587 773430262 810694110 318944140 752271583 828764858 890726655 16453602 779542729 770459501 848689477 315157733 728534151 741584161 792305226 251806869 589234438 929550208 957418998 655996616 776836676 913809011 978345693 738169661 956469485 104966177 388935746 721866732 759705063 429379871 834203831 234764857 413248327 225603543 511565408 709276415 842582436 535676565 904693162 797323529 843489467 934027506 962199441 246930364 624179720 606847976 928342682 287710610 578698973 909194427 916017977 121396080 404458700 131189589 907926979 856974435 938954596 692121730 963234706 314159275 946184177 910889115 976997886 182746486 973815464 664186472 989688390 104098386 813365557 334347355 929195386 670067490 735498577 480026984 902512713 700847593 817210956 557613088 775066195 83339676 409264851 190254253 559714666 471987676 609329734 437605975 832559849 698014112 991969368 21574241 418664036 547877800 736820951 107579714 674097807 617847102 810748766 104146375 849188022 268763619 671285640 766992570 883109336 529696725 820496405 695067726 727718239 12435200 134297082 295994932 804139310 101545713 605684329 331136023 615981084 139057189 298452192 529182054 939691060 56679938 758461516 694387521 946035226 786163544 945116103 269824329 410190088 208562083 914450011 146114258 203766146 875699203 976949874 343149815 697652432 346484296 423486103 60624552 550631518 66021909 487298335 664196474 799705816 381369197 960951927 78692010 650382797 338956426 617049068 236035612 528833905 598967033 637636420 425639293 544028089 274281410 712470571 260594951 473584277 711482888 811162372 482232897 600120960 108464618 723424396 70072306 118786036 785831654 862903320 715223196 991394012 2812125 326868377 61783268 201133421 501841973 567066212 684199535 916218778 366668885 578282644 949041127 981584030 922376310 944424982 160874673 472924181 213799236 495519620 402847542 663788677 55907437 80736304 350302001 525251652 305907087 532717989 614756729 717334901 13373433 932137385 899991375 961261675 933400622 994380510 958814196 990075289 704313061 934679945 292783830 470421655 643935039 864782584 497910984 906331915 734663861 742681293 161997321 613279353 429506404 707647722 702927603 941577108 277525883 742076594 62750659 558025667 107091428 952731245 105332461 206551391 507305795 995689391 931441416 949319622 121377150 930529793 807171534 890320597 846704556 963469875 169905499 536281164 223251686 296494464 80254884 442633651 822214045 982525119 941365426 944476071 583856048 825225614 570023037 821887909 299615231 384466031 57525517 122058748 979842512 981191867 344490287 936275317 176314315 664331986 249355910 651784021 729109032 896577949 606960524 844786448 544439104 932825063 625444079 894703986 690869878 719350864 241627945 641028694 918189845 954557244 457770358 946856091 538803086 952970855 377849156 839823956 926291268 971099494 466312083 486537779 99806499 740457203 202725083 223737368 625477718 696250055 784840319 800112638 443199149 787525743 576783444 853100164 605652703 966035642 150672420 720726278 51430289 665080558 692909564 928994275 887818183 948742421 368611152 610289804 388339759 454350435 996162865 996929067 147877546 850747476 630467858 997413255 163492961 365499197 708517788 979720978 490733807 652854040 304244839 929238879 786630251 966655159 299338528 747440246 384467969 951734236 959180449 970388595 350521432 914706550 685647823 932991764 789047461 850665216 728906916 862418710 640937847 971249010 830955208 980106680 459338919 847024867 885161712 971875452 882284157 967617790 690020975 704905057 628798420 880137084 851742768 946947982 73145996 313698961 724016025 848814938 326322323 570163432 705930143 955678106 753432560 803447719 985281157 995413516 47777844 251823599 404420484 601643875 45683582 550765293 590441056 678170142 394866631 710904896 385993842 454939326 808436004 828900459 11518766 972887078 312370442 418922013 734866520 906374507 23634660 634300099 99716315 262763138 698459344 886042093 707524714 741166229 480647091 804657516 818657054 972513797 697438424 844868062 712202851 742997439 805087792 826062386 847459420 948030364 932879355 985495197 418118003 884487319 149348594 634784005 700067580 930643145 454226698 811076111 741431061 856528996 377926580 506237754 580794441 766694889 581655554 837211868 42403509 543862386 966447447 978620789 905640653 987792732 90583837 156206757 196472156 222203957 764464538 832745340 366552676 891694481 848079523 958549424 902862438 967714686 668332645 837610120 527780908 563826870 901958018 903359679 44169681 137817056 43253394 609568682 764310841 952284644 949084084 950840716 918744563 964044204 709297230 761979435 157432640 440506676 160258958 605725106 172624844 378761160 778577845 950835610 686539262 906270178 343252654 850678446 274105682 718076384 399172461 836898293 958038479 996721703 299078165 347139997 944416348 983630637 650975177 846137888 529210837 845873740 864225353 959595624 861714730 947634915 943105217 959908020 254776736 430827200 977573363 999035456 118285025 676429407 272042489 550089996 153824623 801708241 165409762 771204734 479269980 973709413 855154196 921148224 426029470 720811188 742934139 885837549 923595489 950674268 166220236 459223872 203820452 427020299 918082923 947772064 753072033 897453823 510031012 867375663 924559945 928920650 963785536 995079961 536992832 586255788 615711816 664843753 74168567 682910576 154432655 815458607 996358086 999184999 849043089 993878154 671209633 760909598 952142065 990237671 275634339 822658733 511222941 835612392 160669324 544445537 331240553 917823651 897372102 982721057 74137763 140194680 650528223 732508937 150091125 292483392 319120754 964121149 612422264 926026831 16110828 794905948 747971817 785500741 145106508 296114651 970802342 972663891 775156239 945839813 829911234 931606004 543204666 681455782 660690111 833069317 311568164 470931227 46461313 190525444 207164813 744392615 23934511 529299275 116280733 788752641 811702489 993001598 453451113 939045102 661171065 919385600 891653408 991124630 576444806 932169118 240822611 274145721 612378534 644085308 413269684 511564250 974182288 975496982 691764274 962108291 847375598 986711234 821704935 863684557 242616220 490816060 218515600 877788144 872590830 951007816 561053905 864540336 764980456 815776625 567467491 805425744 913884557 930641395 310927633 661031231 981114437 997300983 571168499 635855048 973201541 984602569 775668498 829409275 613252410 698821793 934977790 963909243 20160660 523372233 574625566 783601165 775505695 796540889 588635625 905760125 156002381 926792130 199468787 478006605 461235422 765413899 108477912 289931592 706912888 714917426 604962644 614814192 814877844 992507668 660422340 690831120 957925496 962401549 114047025 614585527 440302878 484138542 879563560 995680019 493517433 764760772 826273370 861017873 957501193 979705839 635050042 735220838 346422194 520577439 726708389 968526543 443485193 456771639 551285848 810672330 950463936 989758792 323402507 364679150 23303334 554267446 436536858 837921768 816595228 838878012 923025342 935743878 173818778 371419337 339728534 889408754 729105310 943294391 529919457 631707585 577317762 665723685 618288849 733376099 23236217 214385468 781817959 935732295 750873741 999275950 463069013 702277397 48948714 678007779 327748143 475818861 404478373 833034072 825392850 967928097 39781089 476110742 745704348 746452127 124056226 832165803 59805685 961468104 337033942 722059227 995062671 996191578 414379041 614931008 536484139 681519655 579646908 868406381 991811808 994612753 942406357 964849125 248799016 510469647 924135067 949387966 507478017 895199490 903404235 975839175 22148245 102259050 113804506 915627512 195704742 266738583 375213906 753050956 706970545 786510510 218527856 260752621 596736221 758301247 380641763 472128875 5482398 699347571 332691042 385296558 913584692 948297723 677333543 678055738 635562656 826450385 58316878 254168195 10012013 389417977 313294547 625235891 236067394 293360087 975630965 980996754 969749590 991048211 806752345 978015896 515749451 627937552 728384036 878070951 595532636 731041688 26009343 187520972 50068420 811253000 790029673 840838480 622923540 695097359 828201656 970904038 478811689 518714424 643362075 717035868 553815015 772116662 221420156 991128094 491138827 758626115 300707090 612717702 642757678 890952640 581849389 661163638 636829003 930320803 342053324 360238367 200835138 592060930 483935318 780720191 587618159 619135997 580230326 858890282 307951519 604371963 700267315 710791258 248966503 747662226 774044800 797516033 867046738 907946578 204382612 821984000 41714110 201132099 466329139 930920040 602058149 935830070 385056478 961142087 163706914 729204948 335024594 480369465 194950282 313708289 402055716 934074575 248940840 630868879 155047574 829519088 503579001 543769208 768327156 996705042 216518030 771231676 502866644 826073435 116944227 997469921 824358250 905248275 397763318 528757161 83117769 505118646 803320466 930836493 835972329 880731488 402388548 944963999 633250575 684819446 651440334 672855837 960437000 962061623 797674585 855356249 499036960 834499997 805439108 922849279 151150046 654107127 551060024 961064992 611424820 880908291 188452782 603460808 593246802 892518906 986983185 995553377 353415455 797611183 772318683 801180929 638845106 983990465 388690748 623229535 939558969 975551497 649572785 836530015 225037374 402287918 883103640 903971273 846669961 990563941 757750082 822366373 544467605 859883010 484685148 728079725 821913008 862927661 48887252 360040432 719705739 793691444 101082250 187951059 63781815 257653843 234957015 282157102 203316576 582028847 184647379 210970692 247472616 996772678 534876672 743604300 420600813 919979653 37184785 456278774 871848564 967528794 599451668 729895522 43296119 848464640 889783737 926896850 327113122 432589945 772367983 777070909 842854103 937539530 184658063 575693504 788366984 807341915 757521270 826130165 642366549 690063638 724803735 759828219 583972518 781099069 564973714 597977246 54011321 724460792 602180879 675267933 312994519 808398346 290693291 362978759 445322251 473692798 885518441 914775981 576949648 738432978 448235714 882356647 767204474 967722955 302129055 744069086 992221547 995998125 848249792 946292122 667493573 793656194 312832711 366570250 125409209 189289770 710890926 899211819 554916402 843623459 674325925 950319090 684866116 697330766 438226590 550445809 102955226 607463592 948489039 969990953 324215446 383027179 358742845 699333821 244856221 735426847 297331035 828134055 867765636 958481476 222276824 263833091 127453170 288610327 450898366 724193469 231396011 873076098 601791833 918672522 766651408 979463457 171943444 248104274 661639729 773216095 783456069 894871995 538421637 569785702 956943091 985384849 958696940 982766045 319133774 467089769 631430267 735038356 757937694 925171446 124111888 980109744 251483595 550567094 543413377 800320756 938416072 961967833 42056447 371968996 720104253 934214536 398559680 480681451 468133924 554924345 573000160 997640140 351370650 627103446 165716802 441884049 872452329 890796941 105804657 787703681 233527195 784512693 472957736 992079317 236002126 573201928 347672232 568146572 465101530 998387426 767460258 955913618 998424809 998902954 655800666 952150338 411749206 653794734 799575554 891223373 622770621 662780568 39331277 716441635 435710021 882699659 172578757 725086778 238609544 252436925 445808552 717706655 267462744 938977075 922662211 973585715 289467975 955133698 235957360 407381139 309966051 775216183 782134549 919713571 111586251 186119318 667019540 764441916 939793938 964004094 423245090 927146731 322071840 822119095 549544253 773490390 153232554 523275794 495670978 854918119 309375345 581330702 790629755 798272446 170044612 206816619 535977273 801659443 562602405 808959521 777123035 978867180 199893453 402502839 112238606 951348778 85324546 594184605 973819423 979825395 436974352 518093656 829470317 870050983 575128583 806550973 488208815 590972790 404732471 766418598 970017576 979064338 325463863 822618442 23880151 465912896 28843422 483140123 594958324 878565631 220506915 393940161 446364339 716386776 526372572 772779494 842619339 850159006 83886243 405516889 711071445 967547325 935732283 990292818 270597794 789309202 650984219 767348915 453371421 865597829 207570619 653984410 853700309 966032810 526371492 925756015 198344515 688246696 990245339 991544285 766062155 857460798 384037722 455537337 281868340 612494146 354145288 919380061 578100545 850003369 465749431 674739487 735238952 886724919 402237999 588184448 32715036 594355854 365899064 497320731 522914594 919093043 64914374 858909636 652410753 656812071 287339088 570241476 431239065 488353071 298504907 415739945 706501369 924502265 758329055 825315619 731952844 734697134 979559243 985368179 171596635 884236568 246167153 626971642 90528459 483153266 35215933 454993837 126459695 902274484 967670521 976677240 705453256 983281071 48471196 477735045 363810854 393873050 517252622 675604698 576141432 886505920 817862716 863999230 737047045 772302612 946983140 976231733 101448399 455967838 723123569 971339361 191086789 513504291 687936391 940430710 874227986 914588693 402262281 514971028 153896879 213242490 787787922 975746703 529771162 670365380 460695553 675779715 542870343 945930166 788206045 943370578 518162014 810997755 8107161 328245840 87904688 495886853 406340594 847105936 264853854 496556874 476535583 746306247 160629827 674080802 788493028 844129211 40227287 189417419 877092195 894194227 588620111 963012275 898005472 980558709 944478611 959903928 149410812 718704911 510214842 924572198 647441832 674667584 823387403 846747298 603498088 619209092 348725144 793346532 361291849 401144326 602770005 922396257 712692049 743832491 927268878 938982234 367093053 849356766 700730129 933366573 208886228 351153693 412438707 661295064 358642904 826941293 88232285 895770556 243967937 660430236 276019711 753747084 209011920 835952184 849355645 905321192 123848053 728356352 703503346 915918182 148162850 650178811 309671233 693665495 550665636 893044163 694390340 888938455 357551264 629767279 398897442 733130489 83510189 916086573 677100928 806708789 496893795 720573127 994955849 998895386 51207552 458052108 985808639 988800285 560721547 908873704 743818709 996708342 534589668 921774801 157550681 639626568 698231932 878496762 212885485 216737008 903907294 937698968 422133094 446162397 355094825 821651707 247107312 809357874 665458584 856154963 242833410 424168410 177056087 555570506 925400835 925707438 387672990 966634649 523180434 731595511 11213362 507432763 123323948 530539824 887437679 969333511 321285212 392185407 708465086 902706345 48504596 861769541 680551677 873931705 794111987 891229631 6778885 274125496 961890415 983167529 349303242 462706480 304105913 799441397 177690228 941019931 165609768 431485097 296131891 453564489 600373630 712401057 475980304 750670521 821964735 901810162 936909220 995989308 108919182 810582188 859770252 876118063 379622866 857382910 899420059 984514281 737380110 804831329 32690557 481961719 801459 123835717 44904569 456853550 19367568 649690053 372572853 637073966 948302636 969728380 28310113 77722776 834491584 875309880 954883889 962847083 166056651 582431133 257663431 501783600 963901599 966016344 349601292 371851053 612212861 864286200 665281083 687234437 338052858 592308067 898605995 898833066 466543350 923209938 431556959 646272668 397078516 865630807 288810671 584243014 199631883 641657003 633203378 957728035 182765226 840186056 352047226 928323686 956319028 964760709 461177002 710729516 183180898 387573727 846732835 883544163 6933247 845575931 196604451 415466656 781772252 788068512 160193997 811894094 412825321 814805046 491551780 911318045 400742872 782834308 76870009 309762869 20244640 812894224 354776624 392777922 381419477 491258292 663222975 893148505 576463435 728647509 870868812 941264386 221378665 381555441 442695348 445868735 519570524 683734571 760986814 761402996 579719 576894189 931783513 992156879 360986705 924448216 955671474 957589833 243245134 747685566 328897636 672356069 156529792 613164886 277844990 986447018 288910997 470297622 501765670 663261528 140961227 285711254 545728225 894591406 226585747 374014416 168138280 741770955 11099455 75695674 287495091 352669485 303380652 872530263 306797469 552811452 608340823 995348531 628189962 751419706 550146933 838534324 800662017 888858795 950843600 986842625 243572379 637330985 220461408 959741405 760770875 888401406 480999559 860110404 759747946 979813854 49799323 279675817 992958772 997725478 551830807 688564595 6963097 658970949 700572572 927431777 769872432 887506681 108859252 659404206 636124943 815589728 300410575 737899691 442351168 983691200 534491008 839797142 943376085 977818611 749650940 847553644 326082375 634414548 950224554 975759834 164255533 876706110 443152271 647549925 369320556 921100261 657339734 857417274 96944978 451521892 496291016 906407631 559089464 931427338 725300148 739328506 759367282 891723726 403324799 683260271 103613678 279186355 46870067 505906358 571922166 986976442 220077582 291655700 115769961 149516338 21051731 839222492 296733737 678023381 516022011 937619050 701275953 995343992 323402789 456994857 428714012 510326078 566827728 903226196 206617272 881646812 429313307 906200984 916251329 936341499 815886027 914183913 301840407 623912047 195162266 732629792 115706361 270506367 821768119 999262392 363303479 571996240 302567476 894482848 316046144 341205402 338360659 387166934 219450889 325756162 222052685 629187373 597920152 834596554 513594177 788951337 802809757 983617928 38226914 554775888 877373629 898861268 237808527 510626049 281125220 466029976 290846409 663521023 637986013 717402336 300982048 844695810 498700923 891794663 613882330 945128288 90298665 186410316 238113573 672557482 989670714 997627063 669713807 854341282 801798878 953165197 986417360 993981875 546828068 697680886 690208792 820458969 292343383 428119045 175862348 575219200 3175754 475137134 531745037 787537749 185259902 416894254 562639907 789363175 53577224 294380384 436580087 472730834 712404401 990443440 812349454 824948467 757720017 909832127 949855875 989945834 26692730 625250867 613756074 675357739 485683229 786835725 417709914 447094463 706030014 899867835 468961926 706074876 798227853 897107463 6151906 395267085 854477356 870036357 840170839 971065296 993921746 995107302 504696945 858548338 830656169 922700764 121160716 645693920 970871529 971774259 763445632 982327587 45854940 957753944 918044177 962204705 755290146 917402897 358754327 872743849 917529244 966122295 563065445 957548145 685097158 780992907 803162148 891319363 325749418 715533739 966391052 976549036 15431719 944472686 635805249 907218336 254378042 384491512 219345974 965747851 8895133 443896596 87597336 950172551 239690281 589875121 89530214 105626436 973221329 999087059 131841322 696132905 34459636 90673875 531173168 738210263 958592603 992402150 743342549 872357494 104322477 910737586 938004646 984810819 626691529 799004636 95907683 757939640 631919182 806166840 182897753 704730856 217656062 711665015 208553104 413347983 248404809 912348667 822273577 868783991 596468834 876995569 713424872 752737301 690555167 890279147 272180700 602808244 430381018 849560362 245937153 601755611 44462385 511563763 899111446 943967321 632471632 656836004 722392511 950630001 187626329 536161634 778253658 839440280 869509945 975752710 516502303 961517879 62381612 974118917 245881199 276022768 317710745 915840819 584666585 708666542 664278656 994148786 290286526 867414561 669152421 754454894 31724429 166587643 117713819 903291851 186340186 538661611 742600629 829275862 826521057 828577028 361489081 922816541 687134651 857811621 282900345 824818562 160511049 325724580 581061881 787167259 443060908 540322614 761931076 901795600 720987709 991098275 35344951 944793603 568465818 662627137 993932711 997067059 447647967 595136587 395837254 611076561 610709049 962835296 972002151 974918695 614934634 911182586 769731860 821836814 432071078 878789464 329514190 895051346 743234361 771978739 583160324 627313882 718314724 736121653 629692879 821769617 251431066 812887384 957200330 977619641 580864929 780245648 84810306 485462802 238444879 591721990 98521650 511761440 903806253 908855079 958186377 983061542 975540153 979024855 592957527 825682636 540392227 833395968 176206392 491372291 597292271 724319217 674933091 873552813 844797031 930933667 555890059 919079949 467629800 855554862 83026852 705365500 245338771 472109907 793574694 848623260 694030968 754800404 187058830 358059790 561912516 960414060 241902586 377481466 390368934 409750478 683801656 811466595 159521206 744209743 158329140 993776415 426924407 576727715 89765019 670213622 283181026 686017987 227619041 384093007 804779915 840147584 883034319 982347423 655199109 957435164 369937352 486949370 531431861 605531737 470847444 954798297 737001149 976633678 872918446 980088351 158080197 479292502 852092693 869925020 636821627 638749501 632941151 644550724 454026792 868893045 366727800 554106815 461419459 793924094 70284215 788354784 25780247 302777836 992968552 994737572 901034936 930862341 108981283 666612254 369745466 772796830 323110443 423716592 378490320 970994916 326303848 669942181 939508139 972068901 498111450 874033178 568064262 571381511 207611735 544163062 272868548 430851470 882632898 948623366 879882891 903969120 930519746 934476800 308826300 372635179 22113127 674352841 906481864 997182210 929086961 965882666 346585536 694682327 198632984 658403130 145949166 816977126 39977233 81982784 67744025 73239552 54505371 443579665 473567652 743583096 162894432 499337764 707541892 830605028 210619357 692699581 311686058 473901028 170074664 536115615 902050623 951297010 747365606 965605875 318137040 464095877 124681121 678031516 259216835 548943942 869184254 936146106 249323434 574047912 272428166 407471065 360309990 743533817 47308762 820359246 272354499 376839461 239999295 767722306 595935269 792704696 149043272 453661916 115656793 769027047 494825320 654195586 94555148 417684348 311346212 348974274 570591756 837086844 282284918 915499855 536833850 952737376 382134559 793999960 230891768 891170185 842981783 980959153 537299114 871906469 793091503 926732448 661416514 784165181 967271405 990256750 459452587 623465886 940823706 997055094 714256481 975844633 288525000 312955265 434260853 919320386 587219761 978778287 338950463 895135351 492361677 977510727 831271872 962313483 438112386 643985496 40976278 995601661 291179469 654827367 746905309 795821429 971633120 974515879 370093336 491858478 329619351 471553414 591048624 850281710 143522221 369836349 393804675 509759312 814847986 885793317 160574836 312934223 183434687 772518835 985370678 995276583 866671118 898250208 508805273 983979128 272455445 490184279 922510296 979697933 254388117 339684627 240970478 635073937 231410004 668483988 241979418 867491505 987806717 990419522 265489083 704230906 165341757 443056506 992020045 992343679 849110169 859189210 784634305 841125061 151712784 989365598 806578281 924439284 690222583 791760838 520822662 854931401 950740018 972892959 955244942 992762230 635241782 951305831 268207120 969765888 288208926 863880221 393432634 835114006 542773765 936963894 321592534 613711596 787134645 915688733 561169468 565952700 178055135 978317876 457960991 662150338 724762485 758915450 619070687 807533797 256966003 606835980 900556888 966391105 671841755 724378407 767598441 902173114 81924258 227842862 303842860 952737992 943798310 971627667 283822804 341018733 723328240 797629842 12017649 74628870 539036564 742657201 470117962 762159480 931842661 934445332 527713604 887669126 193594689 374210485 413523975 783699680 569356875 998053005 240322009 509294137 246713925 608423361 364169793 619624000 713626540 946155762 330995923 786624945 369711612 469895285 445841592 905675740 275108982 484997853 935821050 943604581 868306195 970263961 984692516 997695080 624361533 722662397 561188813 687510298 168136021 686002347 938367587 966203279 544817450 805857127 289494356 295811232 667151762 866934238 431201334 898597712 140360958 812366447 327182670 722244241 733765430 945501313 862568146 981967608 367682465 865159018 49107620 611920592 439278306 526160958 417553616 437540467 926771718 989288105 301793153 337367801 877628548 939150253 784087421 818836961 561071141 762784745 468354754 584725414 742396943 779233793 378908572 633705762 16453745 827255915 721266622 964356009 274647000 341070099 237904087 897941055 896647560 956152110 92676 622176476 890833133 937296986 414599495 803210627 270213594 455178005 621749859 808999896 885851166 889066652 849092213 854151103 112672238 378209581 729192724 923266401 876457523 908165080 923964499 964586232 829320947 972092715 657813151 980695555 186094872 683617420 738826507 803798553 563708321 632500661 560796060 749509092 844103257 995483010 622614160 979423699 309465612 976078213 94055877 190106363 684614117 736004648 424004790 698364888 373168294 759273787 504503142 586652533 438145724 651784226 530532429 902173418 526175382 733282174 903137406 983123494 639060792 824577897 79872040 969347822 128233973 484172720 832594475 984638237 202107367 606822488 832520098 974804982 942811878 994437106 114782430 920703922 886981676 934341074 25102119 323107296 389325270 729760996 629904469 716182087 813889265 836386681 523042312 783475768 92182240 862278999 753705736 762124185 654035789 973074960 968207481 977044646 780373758 814331355 4990496 614848870 829947838 939078342 364909519 439908604 873604480 899547273 859338679 927969234 891770143 910004474 570089090 916829971 512957231 514577344 400205646 561723439 157623172 625568342 116834220 408477587 136679831 392681603 854213192 992531322 141813946 339704760 328011791 664439967 269112926 974212897 291000390 326930428 224835737 374582654 76205267 771507535 580391099 925703569 720989991 996605537 371967839 959093948 455513668 643717163 251579194 576758634 650656243 804985010 577628960 953138955 487394068 679444419 437651691 587364581 957898924 978139760 902675064 991821383 914026366 986290523 59614661 529748929 585264098 684801540 856156236 908575812 253007383 974898820 142073929 966542203 529234905 677695313 771506009 997251673 817869425 829324613 46847593 354093433 361925823 693991368 649189267 771841946 725440986 965884079 563356685 973346206 745647918 751805894 614362192 869969139 702684946 885617463 361758263 638678522 964099930 980111359 972911297 982141416 922198432 989973882 640164340 881928623 556043441 925442632 217694791 860303751 972969779 985638262 180271853 369855353 506044857 939649450 892600674 941478842 165054968 606508643 690010159 850987676 577064082 688125083 593570405 909671331 656815763 991141868 880019458 929431914 368469534 911552416 49819005 391862422 335418302 603393138 254606618 640929270 374273755 661492831 561321104 602360939 807776923 857173877 318012967 702670716 738699591 797972521 340568076 983707736 217721152 269060436 444895358 508185346 607562554 708236427 944981727 978420593 61890821 476553642 234804764 763050270 798490271 990638068 547754249 582247305 941126738 983086083 935719841 941635627 421138777 733760671 71655468 265313639 699858778 766059122 229654991 637031351 912565053 965528024 11568060 755374712 484564603 510035533 492074910 678142552 855319196 978526720 534719715 977887104 107581092 802825053 326925718 857323116 273771427 972608471 146778245 990176251 396881047 973844223 304857930 547282113 397112529 671733505 157652275 278231656 203229192 564032693 773886838 914987947 785666912 989211955 921865318 983829797 772153597 853813572 425589115 635017679 397169343 736388893 273722868 609502491 538235964 916643542 909602427 994097614 749358375 976633477 678935396 882439329 947193032 949976024 310324485 535622277 458116474 883667321 37067570 726953686 552086225 620525809 980433837 987588051 533533310 584062617 435301307 945651887 130411360 307102333 155231561 753952777 551462071 892632344 678352203 678927559 977613057 988005573 511070556 992590844 388833132 714509649 257109526 810299733 963034708 981183985 823425316 895747528 381152624 889585610 378664070 933468187 156144436 317579207 718081263 887028196 797701785 962667866 296470876 771866942 464612051 565148053 26307446 618802288 190687425 200940931 256786164 278975625 802172605 943605125 13996275 308464472 471227756 999108030 599996319 814234322 236959186 448830488 139386610 536197599 323275386 773054994 831373011 990185157 118936985 429279632 73771634 961323813 106941437 590108574 504721213 873614525 183542882 805596486 341782722 916194828 889956031 916932408 862210846 963500928 164648218 468671740 483174293 658965375 699925123 964577944 584622156 786928118 417105820 508276009 11860292 739557219 23929688 762795084 100262330 190251306 693140569 714295309 503955770 642998480 270466566 472000567 874546614 879033458 40278550 668323964 958765044 965027412 161331821 662465209 224918611 724950223 559380291 919003516 480127548 769341753 351017383 354844308 115626265 312847036 528061233 999016190 734309301 882484416 430325373 590612684 451069894 835398865 995203023 996660379 816811151 898172312 799040364 944074100 792673587 913439735 817014472 902327131 301611509 375384144 293808877 708267327 489653148 584355174 385866582 850492640 636278461 930699143 872165732 954035482 763407262 839880540 567876153 721225679 637622582 737435677 165819892 195393972 858316897 936849536 976405461 986003032 115165405 477577714 494803296 873303973 222122665 449235802 627410378 678878264 940521383 979928634 861809674 874858583 791142056 970569423 911450299 917264213 321136448 359012680 199931137 619968855 21351701 788048953 958600239 998115605 575481556 714354652 918879890 964997084 374431892 990072024 687219119 842966566 15714862 302652427 627401849 684922951 814650449 904968639 984685091 997257348 459521772 604605752 114901670 397728565 82110820 836335472 850051891 889331607 913419115 997721729 695067288 948190848 976244152 998219695 610611989 841948313 760454441 931176476 380512682 858008406 543213452 640337992 16102160 208834254 103448988 838879489 98730049 584843989 77599587 689074519 266160950 418377100 783337526 808730332 642666665 962898778 659528810 832821354 358252461 759185141 187418756 416340296 861159288 904863009 577381469 894596821 797264031 846398949 553912585 581450520 500925659 803466097 561100742 625794041 443262300 722603538 204233181 744068807 198231434 803568012 698561028 791512105 758996337 970735446 516320117 547460652 467321593 772263828 490412926 900826366 41306760 596011386 848053907 983489358 602127879 792457451 127557290 827908080 936976192 943093062 681090493 809734904 502122001 710170527 306865050 495992243 272450511 378195070 961401523 979542538 354907704 813771740 206353285 865078248 212712714 720848881 367699051 864942352 87719796 786577711 879142545 932829150 68387031 962565082 72260904 444681023 85312758 287085808 647248825 812186680 167317243 685438181 901896698 907285871 510124745 925882110 883988111 987611870 940270371 964923005 470577073 583500704 109948071 675000993 730209243 828361160 6603856 919690894 646294877 835495499 721566852 884668379 576815201 897179252 224533495 459962376 650724049 899038211 885768647 931841426 722844317 824253753 248216514 990716453 488902532 759513374 627918811 864956221 479018471 968795720 175832894 796105897 808298978 912252542 709046837 881276064 710071349 964520863 593030071 828624080 802049835 901371458 407250201 980140028 751584428 795640700 768372533 900341609 504412575 681544870 466690407 499006815 141673512 209691083 55956877 971663697 161557835 971450577 894521255 978850440 995058412 996466574 600886186 743428623 100832849 580088356 9600893 769117528 170480211 542576913 926057395 962991526 11039153 77783636 899039803 938604553 262170227 379357161 480876079 881777579 736810521 835341853 978696891 990426115 6929788 798979655 729506483 798043253 657934066 929074684 806481604 934764630 381287415 431745569 376149186 756078943 521160761 860294126 775896250 779275573 367274915 498451109 244913243 818791562 205513235 986483383 260397172 617853296 631754313 708303425 723391941 796610469 667117641 965864901 306663745 515491014 43844775 491553231 873010432 940016558 80886934 308349168 474734022 604806527 362474073 761105834 508236546 697695221 994789695 997323579 520904815 816094798 595057936 929856733 898239777 939433517 354809510 530109921 173350015 185630543 907452485 921381051 382290388 664822101 825381587 985446832 577145466 785497926 454267737 893211154 547774290 664383943 793319813 863941368 197816952 600090877 430591355 821901207 458143593 555371128 342521537 442135323 487393229 605482309 468375253 768962003 230436344 699874984 860536702 988522660 756719406 850108229 109566397 734020032 284650900 518494762 344927685 918919099 692915961 875389554 745913920 948973422 487837925 997723926 841021110 940260247 199925424 945855530 904799982 943486825 230830309 576462840 544612803 682180104 111096435 528895507 706597904 967203168 295611664 551538563 779027296 831489291 564170390 564688424 32339692 748327874 280877423 989298992 225577568 225894158 883308593 904063720 404545119 446274596 296482469 781000566 837451982 925800555 158349046 718208651 652980426 895855173 610631691 617371875 491483764 693770729 201882984 272709569 558043492 856960247 492934996 634654480 109759853 473416614 598684601 998912523 275132410 845943442 335567978 857147652 773008361 907047962 285968420 771578606 349197006 429603692 783703029 955468573 50276627 936741455 109415882 558358053 288744966 966765791 882372695 938929943 247207120 850358701 131207327 371922640 26084604 853020822 87311241 584773041 171686330 586224380 545793244 792532704 888817247 997727139 780242290 892952194 24145110 900976095 667012171 834304905 957343895 996814922 925782047 996786590 269839545 695422974 156983508 846553998 986468976 999981187 374999620 896557750 336163797 980118313 82301438 416676422 304714581 761029339 329254372 780161257 829469645 884153575 994973960 996758582 164800119 647512298 340193511 446261180 914667446 941478067 790332206 953484528 815454185 909148447 175282821 226627578 177906036 817015509 349438010 606319460 538012301 613330310 432707853 562523322 999930744 999990151 61984830 65732648 59017063 904427220 536097804 978106862 291557560 587856452 254903183 364909694 7519827 284109309 204440195 874266347 53722143 548366818 552290446 814532269 221093537 273473656 930174953 947097326 599978748 911746376 247269707 325088262 819911373 842623876 86608417 597181372 454698762 751246278 590186034 882101188 393243867 793169935 914334574 997487884 496279066 679348563 446167436 956566078 696573393 933019135 684525261 709693365 282777444 775377155 236025206 267543790 702517184 973849939 291301686 934110097 940913891 951161414 112177182 665469916 928614997 952731110 494567235 577682624 656472721 892429369 215533283 457750799 234472030 495405813 819554440 889654646 130910390 261115403 802202545 924528863 712125340 783284740 213044197 968511716 47747663 941667060 643118945 843759577 926827849 994207724 663007053 913672694 59817770 965895401 955394390 959858603 246636876 784311946 483856222 924493915 958137154 989045645 891007686 970466616 863673531 937754990 750804842 985431478 465682529 507630410 975380032 986866576 524096344 574580900 817105287 878342376 97260317 459431398 449462966 568715782 287266734 289603317 680709482 864677463 811607537 902010978 463599225 861353485 532966345 926287986 405223292 947889708 209367354 900717812 937951826 955368105 216831593 363079266 169567402 943346791 334804689 339289834 12004072 431269058 511850653 853658419 887067147 993275665 204797541 286289615 34640268 803221831 132346945 537857781 30865482 975089891 64426892 826789999 598932263 748589189 818286170 904892974 410723840 858303177 368141672 934108617 244999617 600425363 837844067 904422928 703403124 711606777 798622777 905621423 962166679 983286219 383080680 521161775 502419974 572105863 879277059 936160066 668825143 817172912 56137764 87056081 875761109 985514399 608903393 939513460 641444539 863166762 799433655 998829372 696485209 871290229 298311319 708642960 964260781 984844013 720490867 870722760 970764890 990763115 454881498 854825099 682783758 820308504 257597809 641983418 331978619 948331784 905167330 977394225 961671678 967038302 547956155 734090705 392194074 714930174 456418263 495561723 115471831 604021291 624817521 804698901 284676236 675899650 374855903 653273231 838534957 864838345 906800934 981076665 494659487 864680833 28462796 133011786 167874234 830645745 388803606 610065014 912186817 988940198 991627458 997757618 929603449 963828241 432160403 630096600 383896037 750361120 175847382 767839977 894501434 955731627 802992007 840072607 269852082 508657965 655785537 944043730 469163144 619490031 524650360 932097370 911747247 964892696 375721380 658315625 676181111 918689831 416002807 950300573 322241684 620186684 251402309 952730345 441127334 468747085 108867623 369734343 682920220 907536007 469336037 990318394 57170593 125667372 626108788 672879523 440481468 769671412 331435131 698741638 638538277 727848133 893500823 907672074 106918541 792093668 350507138 672224846 960797410 966762772 702135432 809012006 902803661 922784410 23793219 231073531 926386017 950559482 587419889 777769525 257796746 393266998 659135315 833609807 964253817 976612408 438045922 769382863 269685734 308217449 443970638 927711562 362477895 456921476 43258399 176982958 613402790 971520048 127258217 625631628 120760145 872786208 423490791 664138596 544953401 909273125 300630026 486237257 678031297 893303709 579709927 637208501 950514732 995986041 493117445 979287593 552706346 857369084 108090918 781986945 76466158 540800765 974981335 980474273 320529391 536653105 964421775 994222226 260263924 889188624 308936483 416177789 752766150 897442915 343257032 736568188 641832247 936654806 610590672 760215976 146998535 309369049 773585509 870308073 500691418 650684051 931435973 966473604 542737886 546169865 715289519 809788234 658180375 764305017 749865212 944688580 500697888 568285652 959479233 984581695 860743920 898171598 294146160 523649249 745676611 931108190 677375488 952590548 707686115 912662142 8335152 260805305 813341465 818637878 468935378 558371348 212914313 216174214 112138591 136460085 998222448 999908947 769063225 798518494 220737322 888883744 435719231 907861926 549410629 639418962 695237311 867627010 939433463 996780729 27364522 266218687 662948692 820502912 286849140 411473981 889636034 948006727 834182737 935460007 200706360 568641592 229155345 705904300 710021603 994780578 663950379 927474877 667886544 811061177 199358483 561451769 823138279 984268576 921793173 971692731 837232073 999336406 272007919 332983615 301688696 794534678 58300700 601833880 787557032 984414456 808740024 830100066 831308416 866786396 60161850 191189913 616306292 944225809 285929631 991625098 581594143 707975734 350779003 839557901 651622704 879484888 652429024 886778305 998722072 998940346 766848255 967819562 170974630 460983907 476721222 482392672 845788581 991117605 89121152 511533971 752067626 829163516 227655079 497772844 991123337 997024023 332298740 737962307 984953870 985667273 512347551 748096736 230696169 966719063 497652572 553055533 217550788 899722634 982188583 982997144 674915669 785657872 117290190 512098819 17642954 284046269 895463415 957768775 980842285 995558966 861778610 955802273 280405100 337458961 259823839 615813414 796576501 821772903 521625361 935586011 915473624 924483859 652698515 782658096 164610446 865597270 498656445 739383759 637015266 746942766 69326478 164673264 780153312 874619882 69574074 949173735 821623402 861898590 535303262 725940973 581807857 685818689 49817633 768404818 8494987 597026585 313895455 672179255 47111617 984711260 825337850 869620019 763592916 838088645 308629925 898970769 730696275 938703915 191143232 215247043 657062706 728910860 877138417 919819600 402629518 965120747 164475712 439249390 423918289 867671636 476685458 774485322 624762512 665033184 824257185 961823861 130927852 256572709 669583223 957434247 192980963 797264419 272554486 929683988 816216047 836092118 856310612 895685218 487272211 885865224 558232092 821319582 96137553 958783328 188144067 340875017 200907197 316722652 783940374 880463052 794411997 943363512 248371900 870163098 638509976 657450275 208056280 461263344 298333285 769073630 885832656 951185942 236195982 523800264 953750856 973559173 559323051 638495769 693519026 936504907 848346100 886193628 76645254 246023616 185567448 648466782 913880305 934793288 586587786 858358173 99169477 458487795 938473231 950886664 47876531 365156619 633976934 694603243 196946530 210529822 301757184 642878464 338214127 490785139 633742679 988064167 70339694 254501401 8642507 620942029 30434231 239908557 377553423 552086811 643952972 707693081 271338489 684207107 236808368 685218658 807678409 988229391 337306141 973124573 512909376 970678736 300670144 730050803 169717440 650255442 303866395 514429543 186529023 368335964 17685767 598248717 723371039 728325998 336845589 867235670 260842840 555075072 651487397 966155836 902855655 957177258 442022023 612283115 16909669 296664125 913169714 955880040 945726942 984997580 591072480 919625729 971170032 977172712 771255763 937334748 296395293 456275999 972284275 975461484 104155518 466850483 620240973 958642904 767399736 994083201 674095196 737452720 798325770 971154455 249128336 925774785 764733454 918241630 981940628 992013015 546416173 838014246 713631478 835622527 107522475 310640646 191360317 805907496 227888488 265163312 998834899 998928750 480673580 924233679 767955189 934393114 949441094 958295453 797399252 945087211 343548201 775671423 220768035 769854375 503841377 988288776 397899557 785767283 991548840 995041499 444054899 790194470 217863002 669204075 248810501 497410834 22107088 742749657 49645346 854168885 996736977 997442477 789245687 892944501 88356523 403222618 923464496 931976913 757918475 813552606 216924262 385094057 760535190 863305783 408959631 581458451 757122658 916055870 790849149 797365295 56456459 432229446 472782110 791850616 448465901 643837134 573839476 843841906 14802789 915653631 541105147 595162955 945594249 946842593 571511886 795907467 821081826 936604688 712506428 895603391 222955118 669213805 607697221 758017169 592070636 966527674 923299747 933711111 997828931 997889860 311390686 404745071 385991478 897795366 26634174 252087001 882339604 994628266 919871940 989064636 473081418 672113751 66902863 695882440 582300029 812065305 255109520 339891997 887438809 929458603 451644970 866527541 573111751 955077062 910068143 978720571 52694195 92063462 462278666 764027650 138620970 355971148 491007300 747208668 634860224 661635846 929367092 997523252 641544237 786624941 338190710 458625002 748695046 878619097 759936747 928172801 296392865 943158277 369150349 999422619 822509375 827680112 622842221 772989001 533502804 678538551 970425043 998936798 14401854 880033916 208147858 310830329 452271075 851720253 754926265 778728632 794175935 882563694 189999885 708663688 762655408 990631232 346644507 520665381 402790776 485367625 827206741 846227791 939745580 941773118 596147003 820610924 352324279 382203446 173460775 472877353 483575428 846024633 513674029 873692467 761536629 847172567 778950830 987213541 958509026 966277870 482720460 644555594 882996161 958056986 841756654 937801422 552250049 631180265 491389191 840123486 877169061 965799021 178273254 996703041 375270466 648244971 109418457 694150523 417734292 605611339 898601096 978185486 607070766 975915008 174306025 402610314 890248540 960947031 260997847 866460121 25575097 637799070 412783425 906172732 39466102 466071568 161962788 334788199 607662269 767744381 474481214 736371041 603177815 633441172 795189199 981351302 238394421 400451319 699125556 719942968 422560134 879797088 596701375 996912471 51832650 693235875 197867653 906050454 865078005 931378037 843132132 844762255 229197999 989685650 149300460 281710108 825575036 976708069 681172126 769366531 411424723 674570741 386620614 593866833 762120337 908244727 499573441 961653722 211159323 831480934 189176006 827320441 386329652 921161340 266685161 720897680 326621176 552308332 278494796 715126965 987694406 995835592 505648236 698670968 479632217 509839392 299273294 712488556 164186212 620429138 350729893 899259061 749012053 884665248 353500369 882244508 24096971 559373475 4066326 250018870 444979200 665974350 106215263 951999228 946251151 990139386 246221988 923249802 583149326 980650244 75939315 352932440 721336460 871652691 178959513 457600948 140597847 618104377 696417777 916515428 537429356 550683821 5610004 755023507 163429656 632407955 17761591 414207889 679526038 770761107 110671763 425082504 871515117 885101953 186205893 686370774 507837233 550839166 310216759 540627953 173582782 405866565 17256270 666776569 872542543 922843302 81786300 281646828 531384266 634340974 604389668 782319023 370028709 457277030 186400466 987508102 794578004 982249147 878545699 963055598 502762401 736623662 648159163 897756603 252869462 300133450 923485305 938305753 801456902 917152758 232444434 528758333 121292320 261300846 924109017 931565148 256069702 603379594 494701619 856767981 922173169 962933232 579310205 667598241 54672221 357415811 2597788 7909714 850797127 963709189 292677941 364536960 867846614 888187414 359005124 801733669 6168947 934685842 603087744 844428916 164271208 168134096 800088250 838925928 191985302 994776803 708187233 763710797 677517292 786285899 256347671 567249175 175029937 867952168 387040522 701105396 697660804 765124513 725204096 763532763 895420235 985972070 831585236 860226314 290536388 705737157 380043947 483800603 306668741 549377480 196030764 578597757 959907001 961043324 308007182 738293693 968101605 970425510 290580140 551210549 405714843 959833687 624141029 891704642 122165729 989457230 419133057 440318217 971970527 991293864 927101340 991617359 828396138 914957549 477272255 692249902 696955037 970820437 120387745 525392979 114940202 864435904 609918094 626184482 754577553 829183146 175734964 401712308 255285416 778051805 366304683 481212585 613975470 993933873 296060011 630828234 99424717 369501789 556947569 705625763 929743313 989086763 278856950 642304030 63645445 725455329 661810897 913215167 355421187 604524260 528051555 668638556 735215282 787581012 290871209 616015958 666303062 790225146 331591799 824194387 65555088 113446417 74676383 226477011 582721990 708996144 354947787 602867234 814025801 908461370 547682007 994175111 421962640 560229821 139526451 410419521 826300426 917508171 680234678 942259327 508499426 975163951 591496674 642381069 818932348 961778938 745979892 836206837 288809621 551618335 710204624 819048614 345610210 398576407 44892635 253505791 257328483 819201600 302146380 871545559 161152315 924398257 370014443 771355988 596468612 830191529 975212388 981179409 865043089 982991133 196253834 335446535 119036980 758783973 972416177 987294701 833468398 990390713 517927517 904159003 92698659 269221092 2489075 835314916 580884506 633441592 983100394 989419409 78980371 334480954 647501884 657726785 581395458 900837430 530849127 772540130 920681996 936446228 898195941 985341466 965773139 974012567 261596246 829723091 372987319 475601487 933979565 955948580 950752585 969725345 238444138 346011911 873134887 953769876 236932790 711129018 935457602 995670872 662884725 879571945 965860642 984467983 421413785 611569444 308456741 524339599 111373087 707491494 448304859 824015420 645781943 725859799 295965017 543890779 336659275 833889135 509217127 839492254 143173967 914642797 860110249 909537627 697220433 994133827 102279579 873901317 583603407 988075541 83702290 992430683 706666590 752298925 523787933 704426400 832241406 959527381 443461936 686742209 810021163 950562970 361170349 653488282 572211551 604235787 467527864 545433000 746705878 774373648 800119885 995261127 1121760 612972066 350046509 501345142 603600320 747865618 276660227 887179250 167693833 210379461 625885229 932023075 165656915 541375280 135155539 662692621 605587891 960913647 643518388 873375570 595477691 854422116 638169760 855671857 433371536 863259200 873206394 940149487 820281667 938334859 893201970 975792678 358397164 779401299 752960119 801668428 684461082 825304845 309045153 863575414 400573734 698381878 814666350 993944042 70675322 954522605 968317298 979392712 713470177 986470967 866039593 949299780 789156813 793516195 835208491 959564341 623906544 697633271 274850838 295765576 49087035 492609727 709243365 987632257 336894987 458055537 226384547 299391470 462637194 958700312 732339370 855512891 473249431 751802991 112186124 664807996 780871618 996606423 242769645 471929927 372065142 491870850 750075311 823635698 555419202 562914956 528828584 828722070 560166832 960036116 71787185 273572027 656296559 876530741 576990496 949439028 995417485 998717195 985025425 994217394 539741487 627193490 744506634 991160774 422084568 509889093 603705305 794823834 723099610 726222509 181124128 383595096 978227712 997703800 628061930 776886179 525032503 779375711 881219242 912805531 206595650 859558352 94496630 230060982 909163954 955196516 877377810 945442822 433830978 899529323 141657060 755655771 815675160 911796870 219291189 314856110 162133864 216882789 484175426 925487080 585516183 841048811 652265825 816460870 934922574 957250696 275623299 335828651 683790693 712025288 222696875 421988896 548998161 713898669 961293963 992195000 909396498 914011001 786055084 898299201 477903206 549824401 225615767 235029529 959285980 976008820 193885603 762682613 826396091 972047690 324721154 987537800 241003166 792221113 749587484 878388927 556114432 876501420 661570070 815305600 17820858 205192826 859225158 952197997 77990506 390264986 198642454 309995841 356724290 874820879 559734693 823780613 334923270 743309562 840787713 983755979 410766112 811286606 321443097 709016486 197709186 474019893 913895588 994405602 378187498 675013557 565931361 916593098 300780978 688646011 592298070 782451506 982596753 995029354 18343682 133624001 928731979 941400271 398382869 990820251 378258573 954056517 741547068 935102741 79585934 183610481 73038476 508041111 517906919 674166424 566496423 838601581 677779291 925633806 549114263 977431707 772212490 952821520 297201987 558296458 235307164 735221645 566218586 882809464 47872894 959228232 744093479 962895700 282851087 793238341 257839928 947369313 982548509 994626824 964256775 985385161 650807913 967824719 461108365 498910431 515300367 719885067 222930296 571068437 538488734 852307485 67385074 411360859 558828107 996619541 663013259 765289612 771446452 846055031 791407684 804223605 862166235 952744235 231624655 449190034 980012531 992287431 326721090 645949208 427158403 974857814 712391215 993074364 109146828 986303693 455105306 769048431 122147454 949258277 917313547 931590302 13041451 998228708 191526903 932672530 286630305 597939019 421648293 646951864 80358079 908816178 507952340 986032661 763085435 853420325 84721963 123117290 214793968 291422163 162720965 715161679 995214893 996492233 647068112 752507465 788338068 891723926 75063065 873475242 139342881 904299718 550055048 750812995 873360506 945889957 78838468 564484044 155266242 378769608 348319657 658897987 278342136 979032124 420371497 707444079 405316527 864114891 317580898 990000382 122348426 450019529 804237931 947666894 819200186 991586604 509079538 796131704 699624157 867829539 598549707 723387273 759828850 927534948 56127059 590594017 179278628 984801513 924076836 970034782 985276952 992685053 83216207 979606199 377170606 852413899 241796869 265477628 122473148 901359961 574052442 892874417 869121963 936704535 65808384 435462056 162804712 942656472 368747047 762836249 705949579 716431069 333562901 421678865 183272446 581755731 695803596 865238585 327789945 561370219 579004192 581444696 940276956 974654041 423048720 927246963 624099508 650386369 257601009 801291329 357012430 467001389 534565155 572030187 871794005 961662026 652279767 754452353 99058479 477942593 520887576 911533021 397723877 940725099 105467650 740743780 858513670 919899441 997398662 998678741 246580306 474513387 563847677 915101837 294496259 958702907 574867246 930646258 262370642 823729956 199342224 610108391 848402646 864275926 94837996 851462888 786139011 796044391 582787520 989090654 409770687 419189517 681913516 696492968 454899434 480215361 453217484 515905686 25544971 886256696 535564624 974731379 55185900 882282262 840359782 861154551 60434655 373682397 128858898 612779225 125481097 431379338 817189871 921304210 943046264 993010206 554749322 795590038 179691247 824007966 623752311 961283135 688229386 785606634 336541979 844284420 754880785 811899757 428667684 841388795 50927516 806949395 727254004 946359123 576860575 836310429 657418175 714286286 430848580 593462844 911688512 935838335 728414939 868548504 431619481 564669070 332242292 859935287 973444853 987393217 321234982 548300116 814004516 855874807 436249377 466062236 195316895 779190041 561505728 709133381 353382091 811849403 992534006 996120591 141160068 974114862 987770054 995841797 443477122 488036636 265919041 985789561 614781879 824750584 359643648 915564398 197896546 446143732 337065862 547861082 735504467 800317787 745057306 775645953 744566355 901736792 318435271 993328088 27233046 226630853 358367177 689057879 740465263 796411386 609295167 839021683 237212615 937194990 524489158 970023373 80057198 697620607 721776213 823245052 723778710 985193727 716076282 934406065 288277146 755234463 305379288 639533141 839105062 950823677 59945074 971457630 808827551 845295332 144268025 757384102 941495237 956387634 564413841 844754091 954322339 963091175 149806159 224010893 465876799 987812932 913962149 993592866 427486202 622955743 138544313 553471324 854293183 903889200 141638338 619492910 94790974 448219693 355982026 548963035 627761314 820383141 270514234 824990061 814673892 827008652 80002669 270439036 35592744 382580525 139289332 892103213 735651358 890868724 421550575 734707209 650587976 861988929 768622192 882578947 550392122 992876617 983742474 985729808 484614493 676627046 444915359 603137621 891496767 978207615 391219511 852136501 759068892 804894342 656197423 744517834 619651545 835771828 53217680 635403800 999562779 999699699 193065353 654852479 637754861 646660274 441788141 979991280 658988072 680837047 811555359 917975796 24120080 52714439 548799031 634759202 911498813 916828244 662883445 911633537 284800900 993554758 984286559 988866272 803576067 913698632 924953914 947036515 391042431 564147049 301295626 686875809 999104300 999343026 361156534 744208676 985363099 994518439 599448615 627732125 801138234 914289041 442402178 913461326 190310616 307913140 593270512 843441598 90012753 335220900 296554886 737354273 694514955 784192681 506217827 785465496 222954095 775029342 289998179 333394778 457630126 486441977 835308843 906605712 842718627 908592202 999469232 999576369 841680616 975342841 947272471 988456380 899580683 941274153 406530590 823851090 185179318 894702576 590019728 953520335 584412553 677901327 762547745 786086204 931938374 970318261 562148931 665812452 416315313 755028892 930346829 966872920 479907394 593389510 303705510 949207801 279148149 928503374 654394590 828234445 398039580 823840915 334940025 934170877 977370923 977997840 413546047 879781118 585194164 648284886 910442908 977403703 721164029 775407258 892853699 948731076 32259070 221022853 228441472 617299185 187643290 547864079 443462161 575621378 413757990 897202257 10434609 964639444 481660600 942303946 993645576 999444921 183278204 606221776 634492383 934027579 559224529 713827702 711536076 833240511 365176079 655241476 654844563 749165758 702205985 956320238 408770312 976076329 672814553 679679931 164478321 491427267 53088472 531893914 763735966 858026838 614780943 831354379 796933696 966345573 960914630 980042062 831716066 996570112 261699052 619187612 393173922 449323074 676134454 693012341 696818732 852646192 640985470 642594970 40768938 654412240 125809457 413798927 69032954 105507446 784802786 985002165 488158044 843126669 762528725 938853752 968594669 980694383 804372274 893043197 139532830 372485388 609316508 897667964 992963773 999152477 925257947 996836926 641650110 860854594 888620076 979047260 826281553 839533460 249339263 645736362 724422805 784979796 408636590 731322409 857799791 945562385 503022719 568373858 55294121 668805486 287550467 310073871 882514722 928323175 173157883 350321478 186021842 654042002 922272779 951499337 339439358 421952868 533437870 648138565 909557508 947548293 166244746 382925768 664322420 692881155 413157933 812304268 202527195 728446062 981800889 984623738 981331138 994326571 233527386 719416463 262969145 274438986 539313748 672255657 769315513 835773984 22598789 44464309 802957861 904328959 944804045 964352592 56001690 405702032 707390272 821460798 9763838 625569982 719599357 754048017 969613210 985895896 586522193 995584063 83783045 999314351 821938063 836274442 861395179 952716285 95266285 430994416 958866586 961863754 761569984 897030212 827357740 861600414 585075590 768685399 336561643 969995086 9684873 612544108 999516499 999541867 61624565 573841803 953816642 957991868 468104897 861363214 623171472 904524036 891491319 964162484 798515945 825573147 301115282 969872005 376832096 546303286 638601709 887020276 921445209 970878337 565689850 860399499 679949256 753987857 502850965 994128611 472624920 718319330 490169286 716161848 537882259 966177041 105383421 243888598 689497093 906696770 562745512 585370874 989061675 992860855 122168814 556795284 978359986 989154741 307312316 443814209 807271792 869848543 264097152 301065410 224175321 923458293 667843976 947316042 607853048 803917995 104442913 417769080 336786845 454114254 899974620 993670031 83172691 183805754 505489694 546846884 222561044 550269321 464462994 822931994 605778316 866812527 792605168 800204889 194623696 741303179 841528874 854571089 235631010 893883245 426143333 786771826 554052930 934691558 258486632 952801936 531500398 538769583 816253916 984076354 875640383 880775065 78451279 662499722 81522181 915326516 18540602 930562011 448698193 493190545 780663053 964801948 133141650 410166258 246211629 374681952 451583956 899398655 394216786 965603713 816698418 910288681 743904987 772687528 957911842 967285377 388614580 563745304 958352771 997343846 43934549 950751184 969060983 992449957 374936133 486931239 570359780 669937340 870334066 909604888 421737253 678458228 252800252 325073705 677546511 731043491 77985337 997794349 869514946 912282412 297815898 702697504 201103551 431471283 187448840 519198938 70812327 981527025 921345721 986023300 626921865 658726913 458762310 974118530 230647773 854055527 717552806 858359245 713050251 829388592 202221663 958322166 172735166 255546231 401460965 477304428 183961590 901328036 354693574 632263665 499503914 901232216 128184603 304531423 223917475 303074923 94645797 283778956 54348740 495944885 238462974 776860645 768012828 801475629 708955405 819850555 756014080 874751429 724773316 918307675 44033312 744787987 342316979 686155899 653317547 929622916 635206550 926814613 536741327 695094122 970688487 994459877 244431310 523675574 193531177 871583666 553680117 917185082 256391923 298907108 391227441 758676160 486280746 591278993 630978974 706628880 519271218 878921194 635271783 889029482 191301096 722553375 424652575 578032770 86717396 350095973 799452404 956564304 577759417 906859120 639068547 817510584 488880661 734238393 684850330 974486075 39674293 134168482 763446368 896573468 973599727 980245894 529051936 627010259 161079451 510499775 30720899 910462413 767477744 902851200 47668380 692780277 704816006 812777301 758597135 917679897 797959988 961641219 753380709 785920863 188837097 845923067 56163657 588934905 805540307 907300857 684106214 695405875 167538051 266085375 64616483 514316260 630503640 660174003 411330463 950394225 611121799 936350567 655045038 741237791 557896387 770605381 860676592 935389315 323074011 896156441 109383781 544375535 745221461 827749000 362414406 370647501 699873986 886216983 306830476 457485220 340142608 953685723 749696540 871124818 90882675 889361751 172363332 662732539 473048350 625596612 712998848 776063527 394831258 901988921 232445778 654699891 502836814 845448306 49164989 627174290 357762867 621987772 826506434 967041907 510159614 983682002 120131962 621298372 712345995 860947702 726482932 760704037 325999760 789388257 542674797 928668306 339920766 941302436 172182298 544009608 540613975 984472517 337589877 389303039 167026294 516003549 780536961 813952436 581142572 793388104 508953973 636526620 105539271 881851166 195663351 624990487 850008335 932938276 321512204 888174150 998578641 998734446 53209793 422524556 254518662 446172234 61877212 759863736 287162939 584234587 795744067 980101658 78135710 608326624 500518490 597885490 217306183 984900995 984313865 995859814 461831570 919415715 30543240 879197977 19769156 297136485 309261803 754297986 544654871 810881670 893059434 973020271 180723616 477906605 245639568 732462553 849014948 896655397 48719140 395947307 214929020 427883681 486511788 785922158 97224315 838787066 992664687 998984479 297736436 465064892 816835573 819030753 720608799 836649924 413449710 609763201 631980991 870511018 73520003 444378696 693279799 952213572 421647461 825585233 31445296 131273707 300813870 681531002 175684831 486922279 596803747 940623910 120668203 598517978 211689371 379528193 855553570 881802766 209836011 218579530 21217608 148776958 702433360 895614505 187556988 591252737 548284635 660580656 352127333 686267577 281758180 938085557 676094074 832346454 310400449 989738714 173151813 594375948 379043958 749431371 742097288 902745669 22204477 646777154 489106357 533176353 820087898 869750901 616968861 676497299 66253668 269105269 415668164 862961123 127514132 647112270 928980335 972306037 763460999 943908926 513652379 589628412 186373796 577993092 66204789 303749730 960861860 965896959 147096922 611536060 124997101 867216436 205826460 933887621 205292750 801746689 609742231 875708328 192413984 765291314 469112971 528741374 786324972 985596689 75508058 759468457 408674202 638465264 234979144 270232702 547724210 672559129 350951796 885426518 591495220 886188054 212560118 971273654 212600163 286262086 968545864 980741892 321650325 802125392 455443639 865254329 206191452 946387064 212969446 912215176 581924887 894158556 150026922 993607416 664965799 773857591 805749103 967537509 537641873 974712140 160697125 961603206 31805080 447845634 998524125 999497935 884737409 890323958 814200415 997351786 438275244 563029892 436951114 599237808 116709112 432311018 301472196 918192197 587272210 725159735 437001347 736934445 796411199 940401437 519468962 699440348 17534165 594451622 308798613 992146912 483838446 738303765 748428294 864317203 924633326 945805941 246861176 627512630 502710434 694443162 51756568 884054249 20854007 394219124 467914716 765922257 762993202 789652403 169892593 556405761 180031012 818869659 928608060 978956987 915691956 917824608 293785658 406263973 225171249 357258291 759310782 762864722 849545317 941854807 521756986 806388940 486884764 691294214 450031243 601888246 238178171 311343430 288650036 565725839 909000450 980848782 692610137 696594380 675319031 708648392 395219180 885607501 933220527 965028370 673670047 800287308 60111166 598395823 586548657 696274021 469424262 692218762 790648342 802396196 879359231 988182126 289921680 397488619 145148134 904673302 811232053 861914543 342212968 512821612 233913075 771795110 96354260 132633559 656209200 674694794 990203726 990655196 436412376 797171420 533325057 822705972 405698231 977568552 48551562 992129304 548092919 860185794 848955869 928464919 898976079 931953778 78133992 438431150 53925 707099759 173785619 565193625 868374065 906509397 473093768 609681991 636725037 833422992 466243953 983620231 673033832 793200327 785037049 792871477 144769421 825885815 26406917 142479444 342322555 914863066 178543580 716776976 697001345 752742523 95346184 259773231 718831979 787904447 480257063 704826209 879296024 897298034 675551475 947801905 437309213 629493409 635618004 869008761 382119155 987903015 293146416 333002100 414589059 577529206 733147172 932302224 880569853 895585527 868029476 960586099 329352655 574174319 587526100 908569828 288158812 603783282 627790018 859955147 921795971 990441578 178835847 633733189 105034809 584334028 989682241 996779468 860129648 922615844 718465102 751714039 245876961 940284677 753121119 963390454 500229440 792084207 529181720 886524746 279157744 335726270 595641919 782696400 743882401 824169680 721647668 738962009 770275362 817392745 217395608 703648954 243653128 936805548 218503572 742511624 553456543 724746658 639207502 821407059 489628128 585328626 698866158 977889162 599058387 677280412 881459137 986318211 693718409 923010913 415218813 615122948 131214961 272228488 836927222 988068785 729669589 906079445 996600919 999579650 792299973 966078861 723996786 862290846 381128504 691645998 199574125 402974650 425032144 943222433 55200151 615685912 398724738 636627228 784408393 856349605 836549308 853208147 681621219 931918919 876931314 919671826 890403617 923467564 625431983 952033812 64004667 209080083 380168334 895178678 570673349 695337909 537504838 920160385 195830243 950348260 776502146 848024367 66647540 847873342 912109411 925260997 12529387 987270099 820390415 863701783 866756540 876006617 560327432 883592270 898301704 938499044 199731759 491520446 290912893 442722113 780159832 865500847 911850140 979081820 782310088 842769925 482443399 694955892 158468804 719335782 90245282 270156360 945540214 953917459 576715519 783960561 643133918 685163879 418275210 427856865 31767228 966242893 13461103 701282235 42322770 395797826 393947228 497885447 185680967 869730092 482422149 940574803 319268504 465196911 436797320 831489691 999771934 999845284 887219799 993205873 443771384 912137106 756804669 996221059 129184478 283294228 426017123 548297896 518276442 611975018 424406705 792575806 697718557 974570409 739382041 928521413 910674578 912136133 847068658 987257850 115036624 706959036 249265196 442522480 331826532 450723574 210662144 935137502 952607425 976655980 285136871 742722732 408062688 452136786 835862774 936317102 704906564 715510397 359224392 906332245 54317956 852603660 491339529 607852044 288171112 721806353 94289890 275140175 559063168 595981769 111808968 219401989 756355163 970365522 660306019 703435105 592795265 674781581 310249874 864300416 434303508 685660989 371044981 475383834 8250670 364022205 491977069 835575879 920032842 926001207 174699644 823541273 494250078 867074427 512872494 988155171 687750856 798038567 302981329 436671890 405651923 422638131 314289946 629430739 533046475 941515355 107256180 321944831 186809199 707832601 341050118 651791787 292313173 357094502 995119216 998749152 223865082 490389373 351495547 407709576 392312099 722788471 397769134 568282375 840001013 962228440 179830 596428646 161684856 298441943 633337069 733545279 564413857 569480111 877136882 968203986 616533676 891527259 948563557 994471832 297430921 883092039 527865034 857195590 964817405 995630297 783974196 873935632 859067827 975164772 846214884 854527367 655604349 825774513 585681251 701160031 789138689 811456495 81504213 649863506 877290782 925556923 781550607 871207129 133134694 508872095 487460197 713586018 590552509 709472067 689413258 899350857 9118090 984889884 808913078 845681146 596836594 955044593 133159452 358130148 837099871 979064791 877870004 996512055 355813891 403245661 189430938 885891630 164698466 184808002 975575609 991527237 983020444 995512021 40808790 962367607 791094913 997910681 337455447 938801305 54210615 600172581 734993874 888119403 750422323 769072791 698533714 731782000 295244937 632166966 35007549 134035129 903530218 971834602 69263788 460853632 395134611 686505140 890464370 898797061 322731840 837556458 240685440 406681588 417934476 628092288 55248548 371315023 416056600 529121240 7291212 138621657 876573079 880924275 982105875 986402320 374755754 886612742 82532365 587155159 847409130 871920389 353540061 934282947 219716785 648516587 854199737 993985506 579880772 688077038 927425046 982178645 821883990 994739374 520502446 596729842 67116928 304767611 912582808 919819358 622219946 889792098 8388146 883134674 958376131 992981017 790209977 817911009 623176763 785627277 313965726 623229464 263877739 305467598 518280656 773093946 107515621 947349218 510936582 924102538 398360369 440424666 673315014 957152457 629968204 870960783 579545470 951607539 65835389 745964933 900396349 992559126 722856009 797932167 945088092 973568944 998536390 999973315 324926153 939258780 62467301 892039681 396638064 915604045 491333081 811632108 885829064 989524339 183351567 482122586 475147971 981127938 765479534 999694412 265320984 636144856 257565157 441495131 59671302 946764148 319165059 998573091 426887351 844224735 185277754 902942050 500764068 865973309 348209093 794698728 62057188 90815958 62886560 842664986 233504186 497190719 932918844 936597499 755585320 941891575 569947922 838218075 841098811 862774800 876124578 966327038 115298892 317685646 539321495 850047134 653884246 755744751 38350303 286634251 470103796 849502542 916926462 935411706 915169186 942235066 992279634 992980870 605367339 977876740 159558356 938785300 449074908 691107644 188789828 283961682 763593792 825179359 676973294 813610055 653704561 693776871 601145918 941667134 172633832 486572656 901581388 924806987 610960168 857656564 747892935 874722362 887171564 930913345 873366027 948999071 415427299 725631868 627362247 857597942 145465276 197277035 353950584 760705556 77044197 755239118 443002914 543626752 985603559 991718874 60156671 187629086 328958788 647373436 723104214 768043690 133402519 457974554 924455793 966394333 638431342 972126819 274466195 862653812 905700014 954963551 565492205 978705839 255028691 442141568 951171669 966354393 308056521 416012490 746917458 769683475 644152949 654897075 43447157 124437219 892839130 970472174 773499855 876191832 331188095 915176031 31974495 566733202 65514671 728730731 182325569 917986854 852691292 866506812 223474549 579592263 963997394 993823653 612793970 893318656 235300984 837152620 971848248 974632446 117658585 910166424 549701231 998886527 855469743 875676769 530330047 898506324 645580238 865720620 620945453 972741746 566409356 621550618 812001362 940813372 814925212 891330606 219687221 848366319 39660232 973542515 506285652 727477966 363199890 698697134 732812096 894490206 766010260 845015122 887711111 997207552 210046301 252736266 844966277 924796987 474804541 738652028 523272066 881817731 762337739 767633260 283264659 319039628 42438562 776177068 62186520 535255577 375729742 958255681 402496087 547626212 643803902 940842188 333689433 730306277 74585415 799197042 777568610 954145995 306718853 869308651 80148581 679962528 927179877 960600700 189063717 490848519 992449527 997270286 262889931 449013797 357129696 445927819 633595643 759408695 47726297 281215172 860390259 994023263 945996018 984435612 286621463 690270109 978376351 991443614 88707547 567226693 840482387 922406999 858610189 896831371 242626212 498612590 203410292 869005718 332028104 679108596 725024858 794612171 129678010 528431576 696124196 830303722 216454215 438403332 539378842 794053086 669621386 761187633 825650089 858158551 248876600 770652714 621948009 975396453 551766061 881858893 263118589 569705896 687428285 756787157 255178693 565452818 771085420 790073163 158179841 633233439 1468825 30535664 705044115 844209736 899228638 986482102 390423141 988730980 672960219 756970939 534900261 659018281 599471198 979518250 127231907 839660289 591289450 894431686 808559921 998807839 381580797 463002077 59746395 636436966 694122326 850209408 428410439 446559720 122204936 212681211 672526872 907517742 944891463 949356140 950825534 993480583 195034943 848137763 308163550 540408984 114123689 458489309 331609379 535293555 134900116 933123419 280538656 444080194 864610484 904472719 8162859 477104516 954522404 978496521 195240879 241648166 152263228 477342484 687721638 941507178 910921700 996176572 5945142 130477005 121189329 221520118 296614344 568697737 909565805 982452799 731577935 863844779 243945118 720567149 213084168 511186301 246368559 646597043 546458033 726745881 691413940 811767374 327504423 616651891 833246714 854841470 561215755 989449141 469976961 937310036 820336793 892855156 882087712 904597640 135635341 846689000 84748309 258296552 903321979 936467054 426624713 700859347 603958553 615380491 974231629 977140658 220776418 925924417 691548611 919227378 664057576 904691177 332576386 420669191 822687750 953268778 757136902 826650397 51488160 520920380 851914763 994571156 77456308 301676026 53886441 589094971 107575826 438646086 905725973 957173067 391804755 698785349 904211883 951109482 896080394 932575304 403804434 467962714 239235038 949735908 461750303 714050996 207159606 226889739 786851431 943748647 336655493 768409147 41084740 847119916 549532113 760427245 557043904 562627346 446746043 609015102 287374180 810773282 162967758 841400708 898881949 933893609 863312323 881188565 937892033 949046530 351071801 851391094 881976381 969613065 248852205 803059844 314141602 543893426 387144726 462434012 555689510 799145236 480634397 811464560 375367562 876237264 750080188 866666641 391257457 748106440 98906436 991758542 72473647 407094301 932573230 967223853 870311979 945428135 950551145 994610581 709557549 733954365 82204910 180358467 206363348 843392972 358186890 388566053 453271609 624765798 834541401 963963163 426900864 768071650 942979080 985631961 953520093 961503311 312815127 433018814 896275762 956037539 789122778 895057674 315111287 407604300 465081018 809719813 514540492 769820271 64268282 745475946 960730521 993938955 198093747 739307970 56494678 924195776 83212611 296015599 417585610 767887018 864158855 934019130 962970073 974633173 264923907 976186764 45521055 969951468 458525037 809627648 654650573 816853273 788260377 995717027 661285858 819462668 328789969 566844988 869249829 924820440 799217046 998118549 803511691 904437264 857165798 987590300 196471648 608348253 140387719 678420399 455351024 970777994 389152858 931869538 883032132 930122137 234968338 577993005 794330540 882868974 792033469 931524112 671963746 819517665 510371883 566729925 213641601 762961606 809809274 863497063 967695739 997615754 479195077 490000311 863118128 933608559 735036039 836133637 838273256 876077534 192398803 476647660 112708800 919921223 954295578 978546657 945580153 979877192 75750533 639030199 33218290 286161213 978375729 994936927 394595038 522732873 604333568 708808817 593962666 725323258 474857459 821746195 859334735 872913144 912718381 922274107 259352263 456009573 312723057 374458939 265081923 942397070 205788484 740867675 797149734 970813389 246575973 309649985 622681627 718773906 525607090 910153695 434299656 515862950 393670434 498601463 165850575 823075608 787435947 866259787 713559587 932389167 363652222 413021629 256428157 697316691 897322158 959281470 352128988 537907326 657696125 807761603 687890580 704205808 60772557 615216890 596400105 808238597 563906352 669239954 30330840 981917468 155600470 628400776 385782195 804067883 684490013 997523097 113157789 471426943 863841431 919874149 877387597 998648814 828015149 904216056 161181905 844725736 345047538 854912879 475269222 566227986 807331217 901724036 419726933 759303892 905151885 940240624 512270649 625328536 723844652 983107602 980638671 984697409 978198530 985598823 657986768 978112337 861942467 910699778 900771186 937246205 312939086 507731567 564151630 757038171 762664179 917245429 517675919 752062364 531352558 673339785 60902250 262484089 213269402 966614640 754924096 884799662 413337329 574030617 850792278 981455559 969893388 995423970 911982632 920071296 717377383 760169353 15603512 644520378 793930714 886785790 263058384 591820542 583849080 976779209 316074190 361476422 58661958 258104654 34619069 605456920 206604406 448739292 616335457 911989606 890200812 935605979 330006946 677476549 475707715 507207758 182602176 385809300 287134668 584892819 456787070 812817575 656790771 799470514 112373177 634091984 460080061 895436665 643825761 883556552 877411244 921624952 31578023 180804598 190360191 724394318 965889553 981488787 496797576 865626762 173383815 330376308 516450661 681770579 641013006 938078586 500023236 609931444 463478006 746173884 250765423 325779074 850321641 875667278 917576212 918068393 627100093 683067984 628307954 776884647 849859819 988778345 617760192 818194654 207052220 837027832 507005539 693963499 909904400 949878864 141839049 309000344 739617810 931875279 102285088 973043196 77922996 953028147 279717968 499722567 199232587 437668862 708904971 712041847 179581632 775044773 357493238 553838425 201136807 340813212 269944894 355574565 353803833 791235417 953174945 989643885 530523596 923900827 449407403 575580704 826881393 845751398 284407519 606613725 248913111 463154926 12236821 298069696 564125015 699322653 344909791 416546479 387556014 591430395 651921930 661522527 856470026 874085721 372127856 616183307 691179189 772811872 551387197 789638361 104993755 163741555 5900310 210949496 613059911 718662612 233539235 323862085 696038336 899379556 726250392 971823343 908463317 928379473 189613610 304184141 772630431 872394895 440028546 809066562 520315920 655183560 97569705 790923184 137659345 885542286 255212934 759792263 634152695 986466281 872270410 929234027 346641477 697375509 676025537 843921882 311776810 332237230 789249561 998871853 571503151 957572532 859316266 866447636 992850283 999398299 333831156 383437535 817362244 990690672 529848437 894142112 805567829 816808525 983830504 985485684 281250047 835143107 727503035 979925276 380750456 388556719 848258068 900439044 662351126 929912169 663062218 739051589 349353514 909696580 716019236 836914865 586602518 879371406 277719850 461618221 149133865 328338557 904876655 955521846 815005152 946718033 180075343 329944933 967665539 972612911 880338834 986707014 273363579 857263928 818699378 838080567 27372116 416263562 309797086 702218137 522060508 882471271 735633301 923287327 695395599 733880748 870554282 888450097 194616081 594418353 783246311 995624900 684752562 803661051 61468250 426457457 429639891 808077026 523689360 662314851 277482151 398835036 79558130 719285296 810419123 869072834 929639372 987077721 258263470 867996521 761212109 797676161 790513782 831939352 290156571 561717750 783688358 832159283 84619505 709700367 858131899 881963808 524984800 801852644 231141668 514765114 988826806 993506200 976213737 984932920 581277013 765035915 668428935 743627843 434539024 795544451 675397420 690347176 188555914 628466553 224810846 259055286 758435957 989659540 950163495 995733767 432998491 714444272 594454441 943846743 978856776 986696747 72497113 605448332 786734323 915146607 145525151 379756044 604492064 907848677 39264012 282413247 498102734 513098733 839375619 949996435 423206446 598376285 287312017 879842568 927164718 983864838 688275156 772566438 186072955 557847082 677380901 758970500 412831873 778579757 18111448 469236070 756431972 848598187 270445629 754765476 479648891 639612840 431001084 697208174 493755964 558746970 741552944 999796316 430908426 939857867 17983153 398196406 415408289 886414009 513834615 751668994 177543560 939891911 165237450 587488598 446520027 819744113 710202585 991010325 842783298 876525381 53630893 712329729 710254880 740567516 585451257 885037146 492935598 594013790 125333634 462508536 512429531 946357769 327616989 624526395 167562177 791149246 189712730 635830932 766408419 782024576 847398902 875071371 265045578 655586270 557401532 827549600 107191005 157333623 237662144 268678459 694186526 781125893 70013365 786716358 224229808 695600734 710412913 768100745 12463926 895520023 206859059 688275494 539977231 794486345 812407344 984408382 227795557 954853043 586897327 719534480 964134218 979554909 883509207 943357993 903299972 960279075 217900051 650476762 909231757 923820298 364488539 860895230 342399755 977732270 136142952 433549025 769595106 843559908 653163698 927432158 572536453 983309961 172370622 289751074 993898283 997140287 457570479 544053045 954102784 958076158 817493998 876799819 241722168 483170128 318400734 778449905 103897825 308356603 961014797 966250879 873785761 955162534 320106833 810498150 425824713 790173456 604518855 982586996 203167666 921030073 79414818 857988006 361685632 509816175 674032515 798340122 874870215 886455531 508260747 576634582 590756428 761410254 494555840 641556443 370492910 608553357 179337898 565194633 430120192 926242025 734514841 995744869 744428435 935545449 951423888 988715529 111416711 626986711 140416663 819960109 73989750 227673713 423950207 863190406 652457605 706149453 875471873 964144642 32007454 179767169 300463719 554503976 497650019 744668153 407075997 648987313 408494114 893419678 58616593 99340408 427186074 814096991 54398391 127110325 995557322 996702395 663056528 818912804 46409823 735377397 969528300 989696311 129052624 352969075 902807850 965229954 189891249 537638574 553247744 739469237 700887426 772583302 47504856 346943321 622594538 661271853 809219632 957323084 554437825 556535780 308225913 718909848 374756898 428643659 547880100 913489607 558791901 627189638 868901015 924550357 442759086 905991445 920913061 955006204 343266699 693779694 132543487 921465332 949718900 990195752 852643780 867191005 914992780 942132750 282427648 700198532 899030361 993571944 628752338 861465118 992932108 997087366 897832672 925653494 793778311 898349972 744386653 995833124 134473951 916528455 940922058 963639099 878424789 885352025 563595778 643763338 714260872 870692772 508761251 843647836 825140635 953869927 649473817 986762824 207642122 785389937 784984742 900471586 769851190 847796879 877991155 926950062 784198365 885175707 656867432 799337145 440737567 522160882 375430642 784580727 835463308 998617391 120293938 681938483 811361897 945036329 339983068 694340391 946279981 976135688 299240782 653557941 384001768 526198834 38041712 549962176 153195537 736415760 867594291 914088111 751423989 872213430 314573442 339875635 664337786 947795675 995686846 997575288 644496382 820132721 850042986 960523500 316486236 504176514 672669694 818798532 302307766 691381588 863647227 864305096 645817398 879997325 300019308 579327280 782191339 813674057 180610235 905691778 280560922 953063600 445277064 575685910 581282188 930100070 363051813 365421260 548592351 890837884 455493519 520595614 139622171 967712698 65437191 77845355 284034849 373424065 250834268 658443875 799847010 903588254 937592349 965629612 941568583 959037029 637791313 896423014 992617274 997677296 928008686 983174028 374930151 428436725 736433764 828612550 278149966 911001909 539360359 852285734 444824235 805241689 316530761 403617476 399964492 921314966 364326482 835578827 742634566 896397176 826965416 930295474 859537226 918596116 970653491 984631629 871307591 989068970 796098966 931193906 279213667 719681072 749275162 939910718 600619010 801053144 277970061 465019592 342148772 890971767 25218057 825862560 332209006 967251037 270987095 863207006 844933656 852159622 67933718 608081318 301289248 704183360 769133137 934360195 758640160 783062768 190082185 629551743 510436854 981310427 568231486 779438375 974916597 999579982 102412701 965783211 763815252 992845394 364998311 892572654 314041439 488530626 435127927 958808993 605795387 910680034 974670076 997617399 399198548 978137535 986774788 989968571 931317171 961170877 841339857 957544856 492003968 694815272 246991472 643509187 908332715 913710168 455657335 486422255 645849788 663777148 191870977 670677578 97900608 884435032 841690883 996961667 203403987 684370174 301355390 432201841 201054884 661885844 794794286 857201105 528152332 575794148 92415221 372755523 428429750 628598189 369620870 891990041 118894681 814719749 657722554 880277880 191624658 824748354 789208071 864820502 279151576 623030650 226441360 682451975 531804856 614440422 682581203 743856003 193636570 730366113 426682 313572118 74029650 200165246 144347034 986970543 171735228 566471470 703063425 787166345 73330861 202723790 611757521 952345967 495459458 732785913 496639915 789932073 482043663 680039021 644631608 681974889 343918991 455016499 982568090 995463484 511576655 612569808 17515093 547029857 28950610 158457530 828740873 895228770 582185249 981654594 980274270 999662449 751206196 962832970 374495715 903638898 730987655 842387926 187457735 951073616 740916349 959108652 366422908 986958510 377211036 605425848 106245820 804245388 813688725 925862620 156881897 404083003 603290369 735756597 924657588 958607022 423799970 779062229 292406522 935710994 312892342 760342418 477341059 796115660 43714052 232573263 225721291 445774171 279158341 392746504 644584587 774483406 891060197 910227583 670057902 836074763 35325373 903641373 535077283 724002084 516842224 738610522 841505364 943125529 456107960 939354521 570243176 753211587 458054490 471265748 594473498 678710670 696193603 856572630 8103025 592282219 187694928 820851662 251654768 984350629 822557284 918744457 920777194 997532872 53782305 514960663 406573904 672617577 337993814 904843722 239071615 555621375 146038896 154583694 542726910 758749818 703159016 703592131 40246126 182960223 572416598 887734502 647434887 769694929 369143553 896494440 782729229 952377762 973047658 996872941 125980628 684269627 902101774 968151218 325022712 550686068 303298740 525086299 850676509 858060276 502250344 659255991 218839158 470866148 770784785 844868369 608288272 672959448 305474279 465250836 849118770 980961583 440801633 918353181 287142771 635901603 372202964 377379590 884822394 952518856 460996764 467037979 532846868 637755958 617142127 978648589 653408932 804871828 415544885 454549064 720051644 837724201 778944582 950659356 729347374 931179134 778837984 925884027 960984659 967315838 350206318 960764843 664916383 938808048 235708752 853372188 402566209 535978435 465060435 686550862 218819816 814477204 520740082 778816213 68566350 458957047 555918566 832405749 836575177 993835841 611676770 687696973 850225723 930192528 804677215 822013646 478481059 644232828 12188454 137876769 65485164 272918219 659719638 681852765 678892046 832456891 242366148 510666580 847157491 890981423 566651291 842528806 704010083 884362254 940040926 998228925 612078335 942483997 167387099 320953609 557362523 942741967 851924371 946516892 232756132 480460709 144886052 282581379 783638725 867588541 883866281 968397159 259273585 849102881 26705916 645806876 854564826 982851342 296595022 807393327 735710070 764572993 602171918 781872437 651554902 974468634 224013071 666913650 282211642 593059972 982387875 997684918 272851247 673286062 318839810 675691653 383882862 413048250 934589840 938423738 618487875 649702087 63144406 399887390 621849523 850940762 599657579 985676878 809587611 823386088 123480644 835265544 628463799 845208965 543383660 828032061 57038746 313137995 316086735 808104563 418511379 815824691 229294921 365252793 814766678 854155487 296754326 319611331 75520670 671154111 379721020 753514685 928057298 992150804 160935500 486008856 78214780 860553123 149137749 700413969 875377873 881062713 547837305 619973360 824617407 836545281 535337798 711524735 977682187 980567032 260085729 670346829 978253122 991713347 261511656 778501686 994477898 997462537 732753095 813529960 589901845 845988996 898738358 951919823 47816844 173673964 567027991 904046691 420853636 823857123 910944949 941810591 913177116 957615704 115968325 514967637 741388866 806672939 191065214 542133981 897108899 954148660 754529210 791912405 764453 886389752 918477505 980608491 807753697 889562717 751736150 794849856 993820791 993936197 546007208 959882120 959403817 982375937 444593715 876122772 211116376 351270581 779971203 816820799 142902673 531402248 515866182 860800296 482577358 775093965 30174437 245501674 415683379 428458974 602481708 834028063 500234818 917416055 994873574 996028948 351765427 743186625 813666947 952871513 571667524 680280469 532555142 891995566 832032200 987313019 383811790 401507878 699277993 774812723 79755246 232979404 630546550 831485001 950188546 988900405 656137002 949577550 607293980 813506940 773469725 792786395 287304522 710944728 785673811 856923774 172788491 662260343 441858014 931306095 340019046 399473442 93865540 290410070 287091960 388833759 696392413 718166050 833382384 938247604 226670526 372140070 886501645 946143609 612186576 714458179 979234894 987371398 900673084 904584018 124551138 325084510 701293349 773136448 19485391 766786854 348482339 930177703 931562831 964922996 521264630 742856656 421392602 936512002 561263325 696635381 974196694 986666502 836203989 916718717 560928016 631139671 545521488 810879892 866387070 966167886 761616358 782521346 187579812 575193352 455521225 647414455 445296154 894987617 155105898 754616000 37158519 397422254 459848465 859782729 511951124 939347888 463540054 560322268 520760551 652751749 937896870 974979791 104656584 928134357 713413797 716238560 538469157 965980785 986835043 995852646 100433614 153695263 109789841 421147592 377587751 943005323 444805519 722653651 758699997 923860092 208104796 483285141 521883556 966211387 128847144 573330268 121512433 920207773 727080007 841005154 212694584 285672723 508475997 907414869 679162587 706953410 860986597 949984634 970462187 993455014 62911412 270472714 929655292 978929969 981429728 995951462 46553086 413578023 327129548 693514367 999718207 999970016 135752810 402823744 130448519 632862930 957277884 974555035 300814945 383423780 724888646 823089232 625604331 642253260 729403093 981640638 132207107 480576148 105316306 954346453 603619941 725034669 731460314 985518944 135341747 660257650 654129051 976208889 362156640 932555232 290320589 645750169 573356659 776695189 662353657 872183305 302552084 380112705 162657419 239157613 661219897 965161063 213207897 848550933 322309168 344725202 792157852 969571887 92284284 628649458 18906779 232838819 332652475 683719767 862534574 949220294 226657375 870230898 559648531 977127060 225944854 529804829 50342874 281956294 188012417 692294062 812692204 860591644 947386559 955864053 415154427 897974256 589163263 690894202 82774152 174024160 960397904 987178472 908237971 999676349 561300275 597834449 878884532 936442340 891492120 941913232 441772012 915895013 822765282 829580308 824029471 848667569 297404206 806382783 708601713 787834192 223536265 707179908 65997192 985556939 40328371 77299197 876622380 905105434 421587815 451044181 871587294 962347919 15998964 837783691 507553446 763011427 514507629 923283697 877018654 889614986 446905346 649970489 565947253 761599694 819694084 822197456 236968022 610411475 201850667 846976123 176337581 651993494 630329683 836156468 386410830 448753058 354873695 707709267 523795268 839018415 667147985 840352593 854906455 919008798 474436000 889312618 581571746 983840841 664114164 745739352 234320062 944926933 771896447 905787907 43803285 253988998 987532597 995050346 91477603 791833408 713439097 772331999 739732406 740504214 874002296 890176311 221063861 997362294 609593535 734483684 938777016 984340710 859609971 897848333 932845633 962566327 452296938 596012119 615303742 988118822 715146359 952584488 164616264 847726904 436132290 560752796 592746115 688890125 590346948 807157401 161144851 896756860 548748839 862399733 880488039 954848435 389957082 865960938 340268635 931264479 360973104 757679635 182823126 448429164 662776451 813830051 921538214 951953319 229110448 981534614 486604374 932245180 15988810 381291730 134655099 978430290 119575859 223606708 594709967 981994959 804689028 927927547 388096178 604833244 269191588 607860453 391058656 684587522 957292538 974416179 668004608 756948089 907122202 948677580 20587910 487804614 642109689 919164470 449680476 883150948 434784579 627876841 700351184 956705722 741632816 781529437 875426504 947876667 185715896 248815504 142059306 263127849 792748529 951040402 407938311 623707605 152101320 255137716 536887744 893081032 139941599 191747681 777890994 779462406 643856918 903651331 413818204 890161209 364006402 908146842 522815023 747735534 458363891 616447245 679018383 870928958 651071609 657189628 729631050 872698686 978777653 994639751 853756186 969580232 530268487 705401374 884775140 894614000 362190897 495523252 706493596 923041576 209708544 420019292 775636160 849057107 553039178 780419376 516275807 647120014 29766230 570851429 600379011 694018446 118221157 368377659 344560634 805227925 69522405 457890139 396659991 920063810 825260711 964507346 570763515 988930771 836363974 980674685 969251662 995142972 651003333 894871458 506260497 980033580 913961568 951935420 292572549 490259258 806467705 826264037 680662783 857545941 701171522 706045978 864531728 939708319 401735993 585124562 719450546 719617375 565401670 781239941 433967962 647023303 45728553 635171968 377480855 938987584 396238822 640061100 545068645 990560324 869523737 948193803 344929988 624582754 31073517 391163797 417797363 821929107 981383641 994707176 954105372 981928194 594956722 822794246 798468157 961245321 463637137 602177222 724525605 795576976 229400905 283034087 561883524 775183000 283536918 912758058 505636144 701820474 964729227 969366913 791141053 954480346 101504225 550943858 571961694 995888824 32951803 539953378 148684598 710944210 429435442 726483909 835584277 963833012 588484265 648494614 808172497 916945465 666367428 891302023 391995404 586211245 7638233 114531028 919858864 956596471 553782488 756096705 770749275 806336993 503532562 868124143 804139718 923879279 579525223 773992139 577792802 964344064 603811899 894459364 312001529 525061594 427946394 709331232 789247716 979294132 940965885 978175413 699226376 789138514 61468359 144103710 674071580 840290075 103791923 565690733 768666540 815052678 676646157 739111486 972749018 994741078 43122360 245465795 530698271 686925913 236184784 434146952 441820234 672998372 593898196 945439284 752766730 855936346 508405369 548092388 531732577 855923223 889603372 936449636 653633241 954294865 645854819 669182656 788911928 812157871 631420735 870292166 476063548 682377041 369727382 639823020 171726108 608437435 840069153 891692116 129365449 245786493 898521839 921253803 667814877 861162588 833073886 848173900 275634931 373111958 424840466 443544269 148674762 559725237 384934554 855820839 363723754 839437942 148802985 744510759 190135385 617248205 932648817 975872299 512583458 774939018 962877866 972967206 106320344 363342956 295611417 701055938 670208551 926838727 804431050 817363436 964443944 978113650 571298840 707802065 514022634 583896400 371624506 593376853 273572481 722490842 360473475 386290484 904432629 997363838 806276552 925685749 526964005 858710491 54713138 577755052 423425872 768359263 225375041 250055801 593471365 665666830 570015901 699733472 897796635 908336800 327096927 923669484 74822096 518710721 293332396 387445761 350061908 350583624 100498914 596464722 112720766 168022599 862092298 881459178 338131472 805149396 334815951 366146117 193584977 908937193 946336082 956052312 550070827 577196242 661140312 925567998 740471443 989139191 139145172 496257069 763804100 860485307 235636230 593057654 990657669 995179563 625259027 996814695 772224293 893946632 108948341 593181505 916290167 962927874 993906510 999562142 454749072 931743842 159643054 295091786 761540508 884420774 75779965 458451255 751989473 826170984 615735310 754666286 170442157 745777643 993103576 997608742 871650435 886231571 764364926 927588598 827547120 835618580 263233469 605594818 637436268 739661062 173790357 608744294 220604040 936956740 502115981 963011574 232485598 618556613 902583326 922929249 910722785 926438328 485482074 915305838 643889385 774385930 529649806 980363028 898718580 930652948 465818213 906514209 5694688 283087370 265189877 523815150 329222204 485223886 25044039 345490423 634531815 823710328 898752533 968876269 694355573 771213252 928926744 969221725 433467849 836861357 299140131 563207744 748956967 792415067 492632982 783476312 133989189 726795182 966643607 998536550 205505867 727413183 566751087 955970050 629881553 807680277 917884197 962763669 214001888 958229561 487876175 707253649 486152727 758725017 269920215 437260388 250616283 456067651 140132377 538829630 588534937 641659740 316763605 645480498 545113173 867502885 957919069 961322781 153100188 711330655 271410841 319629144 801172078 823599356 387447924 801494117 189476024 959237237 106630910 914545887 753998826 820286520 248872468 402233359 584514564 746741329 562057469 624332337 656836310 762175025 968481864 991722888 870063378 911145977 382695892 979630235 227993214 841627448 60356072 694577606 770361821 907187425 811252495 974801001 404005402 971552200 900172741 967253020 492962206 546994300 245184118 912672394 464657426 636596173 605139319 771470884 409096258 430968162 831925981 883905916 235593839 332854362 292942244 923909585 155117371 560378994 603870812 860205644 30893938 60952192 60915986 269341933 999198887 999217884 326044086 803277632 920383400 997253631 533339787 893805054 906130882 975218442 479044694 726722538 555712278 831273009 501966414 603824141 299719181 636571615 592405857 674667254 74835608 627540662 453306156 787713683 423997446 850840764 625752435 888808913 795383620 940736111 729253630 959474806 484012918 513088977 104043950 979964944 542862990 557746263 587450362 631673234 658257755 739738604 697813964 939092356 902158969 930482879 880315388 925124699 242301323 251968533 306286679 982924135 837699661 960099413 220901516 733555267 493908922 786577826 791610097 982647806 340643612 553914788 283998311 754847793 891637848 900631451 771202391 882608133 19486151 160054564 436521694 531032642 236084361 697343046 774626815 776485372 430730824 968918895 258766055 757445886 220298706 633618341 896384647 983473329 492036023 911957870 282230450 637122393 144479157 614249669 493429756 966183700 162455832 703333621 570953017 978090535 171351215 409955350 403295420 673029219 394312687 614348295 296149006 670759695 294399824 788753802 750539330 865208551 928549215 968885118 794533364 862313898 576842576 696061236 892321496 977221535 75853015 303146535 169078468 326929267 78635194 690056677 644769132 664713385 776519393 939329845 296588767 309654095 113263950 622343463 361532005 731129674 643183841 700610999 353069083 688467320 77527620 596762088 308932691 741411689 322930446 438330175 547185238 650314597 251056611 368879945 843622232 941670450 512071868 824994273 130806149 698591021 856379672 945895917 543841261 547549195 500442287 786031542 525392608 949049150 341630543 625717147 360319109 384813963 777706957 991002122 107069350 813500663 122959683 691672649 268563384 282035309 951332944 990356183 380070100 489798415 310677434 780609260 587137029 760880746 442694203 748876062 918038692 995796529 88257581 655142251 986827530 994463538 695650361 749736839 995578315 995868217 96656531 138626759 193913933 249454787 259671058 743627491 612384609 920489502 269469498 536566382 245317672 895735896 572611754 784808206 906269462 933616469 754893076 938590954 933041379 998666613 724700626 917744491 615456962 780056511 842568278 983937301 73658246 658969417 2961962 347492688 325271339 946912719 402165433 596261469 606773472 744786097 995209242 996547569 480120484 540650429 88431056 91976016 433257409 759018557 946800298 995686529 843666353 972587296 417150632 520143462 88847987 107043653 461845470 755835756 71934465 405325225 307873194 602280045 242112224 253474254 39746529 554326484 491271914 582039985 914956239 942748663 963122813 969738724 507774565 558776054 744823416 789208296 439314112 467046854 246588509 892429534 826508331 844740735 827589703 864573585 174175535 339447381 911725027 964149232 94886642 389482137 721954464 830820319 663047596 849223333 751676490 890769537 37111414 770385005 81227886 694242013 984274317 990985812 222418833 944987432 335241995 660079701 289193404 937825229 374715839 477509604 168306949 917175645 865472630 892116218 429005638 825532619 621077889 747647826 376220303 701478077 611864431 715684718 479461098 706845648 230330473 544239541 908350355 937734099 121887772 330886562 345990552 880373583 252198104 387067486 246871635 951186847 718989465 779388703 572989710 604730841 358504513 669706666 365066222 845453234 916040308 957275756 384993673 477903910 366100481 474739771 726481916 794475631 404656492 523219677 948507332 974888137 629180633 661683251 989602791 997740086 904709228 942041381 749299231 979961942 994364547 997541610 278655466 408128160 281658712 518424291 487491667 844387356 563628258 873536816 319379659 812593861 593825726 848775492 249187285 949682739 196346765 448973953 468409675 773237790 495029424 800370842 704993656 799867328 678825027 815605671 825739170 929887273 754259290 978612968 989259479 995781459 926367353 958246696 892288173 959742845 295242758 999421830 229507729 931094387 289001086 300908747 534253338 916533655 198839771 492556146 287613870 896388924 913744064 915827742 301065711 491911970 262548857 826753081 35545348 630146239 661059943 938026734 843112584 917698493 880853398 957369843 896635231 944697563 17069922 920852124 222137385 513032505 318558914 950391792 472663681 640504776 332072024 877676907 471860869 909036847 683450719 851982019 220317925 516978252 110576143 933460652 871428523 885226891 199048752 377836553 196108508 866361808 26217540 209212902 878071134 927296927 822937156 892633422 817019366 861814319 161539922 656899677 206888122 737789397 868531189 925314907 674374736 976501284 430008598 866362102 706049221 894705025 208291753 434741246 999873696 999996715 915728666 946401608 709482623 972706908 203339960 914877102 634549825 789197759 499519788 524870774 623876175 647763091 246121827 650521364 298385313 683867967 33652163 447506912 107197418 397600449 843081720 844344630 776563675 854904389 222737167 481281065 372513725 870260608 192744110 475073825 302034822 497207720 648713717 932274293 46291525 90534585 441345856 503420595 834624959 848310368 499385266 896111521 81209656 395907160 536405501 993694150 710101163 927383588 929910659 970116383 176569251 528061267 283401751 506610117 592642905 868123737 774029274 961194555 223850334 737779852 726831972 781995072 216557200 808899079 977937743 985618518 636278865 950624772 626080378 767566452 361764833 842845604 309600829 799129272 813064226 921998309 776821846 856120341 757707776 971549868 399052934 513644325 857902840 967254146 673382887 943066578 68555771 817320643 882424873 939595922 566300221 787637835 217663246 649458957 445806395 998132305 790058745 864616333 797054565 812651869 663795579 941901168 773189027 874213819 920047130 980695583 963655197 967881336 598358723 852948953 997735776 998025622 746135411 840522580 167040612 885082001 923903604 967526058 923191205 946551760 835313180 984252299 169027405 737383274 235251728 712955010 930799097 939239389 411128787 449612043 52768679 147838474 271479415 747788001 561900377 585575003 568306993 679473653 189819389 560147691 893931379 948083006 710777727 942972602 557855402 980982294 65869089 507329613 854824878 894257391 553188959 948453928 819309973 865853473 813641415 944258462 705223283 846628937 718505599 742762468 955706470 960770007 462629073 808987382 999681359 999825975 566190888 584785079 52859884 561975734 814740891 827329378 905867143 981240451 259023134 538390171 424402787 717912830 801361453 822146897 40767077 802782797 262736731 922062937 809636127 831236806 699808277 925377229 74975480 766658394 336991496 873536954 811053775 827725920 317873948 917984367 687069024 876786774 511197865 783626704 705980121 928010730 233932643 300381374 272585772 694652349 217817127 302857002 720636687 949338773 398519038 919062823 981327912 986234088 613079877 840585300 436467053 796651278 358730454 433480262 870547656 991598721 746405346 924107641 64713751 757897693 327591347 606511823 727975161 796266599 241139612 268738729 427537398 543109117 967493792 981801974 460530958 568003854 812015650 841843186 478853360 806524913 711266124 865067710 231582660 656588976 28736294 133036747 104389353 436569111 898589987 961217532 118086245 684027385 916831404 952003964 355715438 755383997 543559460 829346887 709638820 835388552 841276117 990008809 914391642 928152529 208598199 833582851 443772429 781337199 295013070 341286761 92603462 482130945 772014093 809416922 251696491 712153564 454424209 792290818 167163116 210675874 558745369 803638536 499760007 713894126 891034784 911021465 693247349 920522039 337574043 530760195 798278165 945399907 180034310 457816102 564463695 582545766 919228859 956918977 729600897 853114423 430387899 611956910 323952608 654964509 278536590 823834114 691948561 692575367 789943208 824244882 777413631 838423921 639355881 949996048 546422686 894648338 736064499 870353377 474930925 800062796 707916067 990617900 321338895 399057930 638883645 830981612 998492077 999569679 268310867 288704248 178249577 254720559 82226431 996930798 484143262 814556867 674997077 825061419 650111377 755518252 540936690 686097795 976852121 993135117 829626599 838030303 766115737 953550957 700785321 858482740 905026565 987993420 677534907 874052084 128060911 290534697 990574707 993698233 749195027 880508480 302393143 641759980 134153363 394916076 238614534 500708906 86470453 100114641 59080896 157537521 546727117 978947439 237021831 383008658 498999665 572305898 271596479 664250693 497670082 613839194 957494006 959427091 753615558 844047130 435288908 711185331 388085851 712183450 380810689 875406271 513940353 645000074 662416826 946021272 810281211 889172134 983189892 986557673 784392211 939721066 705401365 747798080 929791034 963493996 860550260 932148442 376504101 799333200 396233746 499802489 652595373 899057331 220347360 884264862 190609372 927262566 452868231 866126347 672981444 747917964 589713959 743289109 654678729 716265570 212945873 239260740 515420921 704218409 801514699 930845089 962415371 977594495 630968174 690127210 4581123 541113497 972645360 994846271 77042591 682101398 603947340 787059854 449110540 534989840 696508385 882654431 582756466 977704703 688307020 944409587 432166022 902186453 178219889 740407170 575273963 847925950 187135174 593750043 708910353 876394259 812788716 948919924 472360891 917625664 146611657 946747398 394910002 645704258 707265384 940750296 884128522 893545557 296632701 757386530 641285620 663406588 154664175 866588902 741119643 802749662 248603902 884333367 315214582 908917766 73878483 542796543 938259866 997009088 601130049 765215602 484081330 527343211 400331539 656927958 770237215 996867808 498215351 499404752 237262420 861643650 746424311 947452716 492283132 589982438 962023941 973313504 278705666 566607863 896553708 955224929 168328919 207789442 832293583 921959975 365695566 820437685 963110250 984552080 422480707 473956103 44052584 256176082 125902633 144776381 738013860 869324827 763485337 897818341 954908191 960830799 433593892 514312716 220750591 396701861 609222667 848075885 230847511 850694658 163849892 864736483 498851586 897561503 643458366 987331029 532893770 581495915 974495378 994836773 84572774 843690233 345288936 746738533 123575841 792431660 641759323 731919270 74779619 714828850 547700826 804325304 534761932 591833351 176969354 755667876 22113237 587908072 784875214 870850389 952463054 992073090 247514166 560990676 288756401 643586769 348310537 936448044 219622595 952346037 37258269 560086482 686855304 713056168 659232382 742907948 495602561 540757708 572264851 719321117 548832410 959020868 845149247 890868477 57984696 699880687 802695638 856744913 868808799 961531567 557507141 596103779 88360589 749513937 909248332 962910072 546999270 595532114 642234933 832140829 245344545 571488841 114201220 879935284 156391501 347146226 959861683 967954039 869172896 889818128 181722194 212684169 194608607 565968735 492709426 985777054 583466881 911375950 869303210 978922668 65888311 224870330 529635894 717156378 287623854 714396990 684368228 770700331 782071085 891566722 187797085 336652525 898063803 964930813 194437928 395718919 88049806 198208969 380273187 744419307 837014000 913003615 737678696 932767709 304537714 904302345 517480967 841096255 639968252 724318774 704054997 786329812 14820793 340746604 855812501 984845313 135950951 975637137 305540810 827114411 871223089 990280770 461725927 486484098 294047915 485210146 455894558 570768407 352861383 708181769 968907806 993658182 989966370 998287234 821267695 969356952 500284442 921073570 78965201 122700311 882243681 887373051 368745048 706364523 924417972 953256865 561803923 982952271 358645155 701566588 6036368 72296571 682129529 884752017 722432728 938571247 817527514 923038430 723765404 976642764 229899235 313374414 964145086 992459247 221930341 277380299 930547387 975816273 796387273 868464725 564498306 971524851 612336357 612573171 860258993 924257058 763248559 997979048 104919013 476186532 506382517 815265444 802512641 806693745 363853372 774881483 958982646 988457141 225632538 721107017 950414707 992335780 532829434 611134485 138584623 348312404 574545294 947513282 529895718 798110455 728421426 879343250 871846418 880152849 281691868 869830249 242981171 748830531 916675775 957833837 280557563 940588460 297909322 605543912 653485462 914625659 737422976 891410479 964014917 970218346 25423499 972518066 440900498 805048554 611030316 784248488 912128994 919624005 545258321 709775191 288483558 832598130 569691375 769698633 473375155 668367648 172809880 329614002 999454902 999817513 519446341 811715690 81214453 205214440 253537450 292778966 956269483 956719549 847095309 884721798 842915137 869129956 18243647 558574836 949509235 992302441 933270601 947885619 462750049 545490559 555045280 711936368 222379135 521126511 708733384 852759463 898337272 994356751 206794380 627139195 868047538 925502757 454452783 567243501 508554111 918125449 657369048 935494497 677608001 789220462 547999854 976130685 654018548 978684190 58703561 994274554 148926101 801788308 266891880 269174641 352720722 855410354 416233580 798678110 269386560 365973553 673700824 797832228 118449773 598681017 651361242 691603185 800335625 859164613 795743654 908586225 991248297 998880597 105433209 436803372 626280769 899986135 527775704 966050094 885032930 940385027 690432857 985175610 640133763 971566075 813408487 921476967 428458637 431268558 136780908 199789137 93211778 482043362 663389722 776443859 553318125 709681700 890839189 999650331 9918477 887851113 644236942 924845302 930613220 950451636 232127017 749155033 35457703 442391082 710872011 757102430 566842043 830182778 419115241 893623600 486082731 994675766 295168314 679512122 318377264 797304638 524293016 835975943 227512548 952332823 924625247 981128742 587201740 591902839 87137723 581551563 504837737 973800107 556382938 696717771 38960997 193099837 731623944 857460169 39914585 922961397 136988082 618418313 712423965 883870151 467431670 632972390 477869434 839458240 491081157 755800483 342198493 586791529 314264951 748592619 183932664 471582203 45957616 215792923 283391758 308193545 506218658 584008654 967753031 980720679 622414464 664045182 878799924 915807284 583394730 658739307 642061217 832984106 191320459 240390441 62733294 722527792 453811757 513241217 721701592 742378476 17651822 310852102 424144715 716016426 667229878 680408177 265420524 599008806 48484689 775576749 544291689 876970150 859449445 908729589 300806990 689499588 370225312 671765908 870905279 891613701 634265739 914874020 696955952 800236928 821818184 979546881 32404856 399158655 33352072 526126052 685368564 694467348 50036166 899716244 888042090 972351246 404459863 771228352 347920918 356735164 390802590 804545177 238021601 607166419 699476364 981044885 227146682 664719192 298259421 577066677 201259264 746891023 35634597 141213628 883990184 929338673 495979952 907123941 921005553 932683793 44078636 726836568 9069620 599353812 671503916 964005817 390883587 804634739 249711860 354757949 526650291 690344016 486096031 816108856 742403596 909001295 42581865 983170172 431114310 849493216 384132533 736321872 964815623 989162164 596176320 606678594 742884290 907461970 291576895 534460285 974602217 988145715 302850867 435744306 336978878 444359630 398776692 843813336 897379687 921397947 223916401 892405687 546591814 862158513 88934738 152678477 279957899 687179079 323601500 554843383 222340674 479729975 818630480 854584346 878168078 891417694 201522511 836248454 869549941 872973598 426774795 526110591 880982219 919133590 485209826 810590298 173898473 334565220 98084676 750705356 177895330 771087141 331743830 879831753 704779744 948635930 959451886 972613599 273922095 849506279 916737616 966893655 403052655 572111755 552779821 821479277 804259905 895255807 577183168 913745981 510551437 949116800 27546642 197821921 172875978 754896072 15975938 543694947 449800414 874144189 411939392 464636175 897187573 935257790 439121519 984133062 643920903 796920365 828686143 951051554 671026727 879554514 159682362 616018581 285995630 749115532 973670299 984050882 798390784 962426963 341701605 892368643 67107628 152520039 811660637 968090510 5161350 185616589 471416600 896880045 692452841 817646960 736964515 934648873 76187994 110725948 105675888 217048210 887130710 915648534 485293434 946309085 492280647 988985126 700791637 721123452 1162115 46732120 240128452 426067363 793055110 993726761 81299016 292760092 933032793 985956744 154078850 271734477 328136579 558748058 189070128 942420565 130336310 381256820 728494477 929653040 827951744 878289008 455042607 607285000 617117840 821252406 31306024 947931281 968332390 980368979 17688568 494596885 248552527 760796274 80691509 589922634 756669868 780839428 577935236 594382511 868054808 980548612 44026324 568409028 925897759 938091094 69694893 750669151 629036660 805434930 373411399 522101132 452421987 913921651 869182852 981336644 581516083 744766108 198830638 953419472 684708974 957876804 610643377 660582326 253628510 877214163 837584731 967271660 237891151 705348962 231979254 427182592 640171817 674963312 775299363 811587855 904606504 914166614 467274027 488924534 87345787 176667775 309631679 538911576 271157756 569112501 326278903 732406078 872270089 964112452 986447619 987064786 938100049 960862606 712710501 743995201 474377936 667027709 906992677 949145436 80016497 404310015 134200002 231222559 827081127 887749460 39948237 69373752 208846253 251774287 97231050 857882236 561206291 709434929 426842852 881393568 659717117 947973906 657002000 936175465 759958947 908135834 888189180 894822258 872375413 914397658 250329401 727586000 74928936 129227802 705289498 883267638 736655140 770271193 99918857 731485293 140111073 238121091 907496485 952532018 879799530 910568036 121024818 196073699 841794174 951195313 527099453 845472696 60916298 569451497 494210368 534837912 319735157 555018689 625172709 712686979 456113776 957438118 654799504 999908304 37885975 679777479 946942666 979560334 239691421 966545653 629313977 959326458 194312517 831914963 542291750 787669969 510709885 949425805 210715149 274136041 643956594 712822698 160627444 381769393 923157131 976049034 949112664 983161731 230159575 522167126 891466285 926004413 2661458 679773438 669163948 678035751 845736658 963662290 93807173 924968232 974353266 983263402 337904087 678571946 649517190 747841832 502304365 594903301 182844112 470156671 907997271 970233659 573988986 873238327 312292276 526521748 843148053 894513339 240739139 688708358 615260864 936929230 288615725 940054837 430691527 995556070 44918709 927630363 425488119 915395751 678719182 715518342 127786299 355873902 62399867 514627941 904108991 914714230 519600851 676929510 159117945 378509569 409653504 976397997 815733612 964929070 769597412 936800615 842826840 887947260 160559561 415756227 409084215 424440127 592567443 655895012 278709557 588712683 240454276 629204123 41608405 541563656 648611802 932091261 579110156 867531959 984525135 999774133 940840337 954637991 335510414 918290886 486403542 743925538 92733099 561326673 184878866 375320018 151930075 768045312 625014564 865322166 899144018 978566968 979395577 985515200 748965113 973771062 33850328 916206878 501821318 980527676 830195122 867911044 822859785 998850399 308702516 889451009 421439971 478736441 368848382 875684572 882876573 964949520 762697308 838180669 894371088 960437524 540595170 825711038 395697767 540521804 555491621 879028104 193969322 797350507 412212965 463915919 189691451 743135847 187299512 649460370 502510796 992747138 586935954 917707730 459725506 933920954 259013368 668590170 960665636 980248997 471109693 801526393 120846792 465237302 830278622 930877757 944026273 974029172 444262307 960221487 156468278 629941346 229878533 508867636 600706678 816445298 52385312 867651603 104052742 827080236 534504321 873760586 137138279 835566960 838851272 993661190 46005667 69907403 470732027 648045863 343388134 474036648 676519997 830983046 485007465 847599011 982536872 996703944 563974846 677508291 561811284 610071391 738218814 897980297 914072044 954781881 485124046 992976520 134689119 482047256 332422394 850633027 702686769 943286673 511474588 607965212 846247699 876539492 90288985 311807886 468371378 937714570 534576611 864059102 235176294 426691027 740711603 988001303 431837764 522147734 466096469 982855457 305354138 675306194 766352523 945904249 837350903 908799455 730520405 857640589 922647004 950389824 465612330 599486872 274259494 779329107 365486646 526311535 346126718 673914363 433460921 608643315 101756744 810240925 597605234 638572793 362251557 602396131 16798149 283361346 32000140 292152992 549897608 674999161 785442310 837059724 260750540 920809815 703990184 740681181 318133264 646321679 563684297 722391251 942444447 957933947 799404587 813879130 887126905 952863433 880691406 929040000 82068660 530465233 854806920 916177488 804322080 958774534 317703964 492129360 442790583 976608705 729418613 744556570 940682959 979803902 754423444 789283894 510905916 706624534 658714591 797106901 164669178 548786738 669164059 983864499 700126494 956348746 730925889 969980199 580982292 797620341 622193138 829233991 545971086 758759875 444675013 540260915 619876005 874099686 785714406 994598892 268088594 780298929 913401734 968929695 105039972 692695503 550880210 633174947 721112754 844746448 281499781 553336715 372994167 867585827 732277326 870961247 540368799 801273611 591847500 894003989 390046794 921397247 655046911 945522335 218094464 890616778 6050794 424871420 35777523 790032029 593585385 799346187 507166414 877780701 502051832 764114121 741820906 783721200 699255766 830156741 775859707 926539389 833574982 992914232 942407239 980849229 104223315 245557050 30122723 571005638 4791693 780304945 510414286 611516065 807432234 959203457 31304454 375720481 37209181 151410371 312011463 549102542 2896201 309059315 780451900 913412389 467968105 833169554 550926990 726815540 275606461 986568692 510335370 879541307 707787966 821419693 665475802 755757495 26863794 41607645 172563836 551744091 735562234 866900586 146806132 599078565 850455 567633864 730682770 732784033 639860429 690961297 316605455 771665728 18316356 30371806 69300113 323981274 588026619 724241740 573511316 969571113 691399666 806583468 383988155 478795675 335096860 554394531 402458856 834178683 297786703 558557599 619466394 788273480 252683488 328904537 163444070 164406611 856639530 993785430 596016673 924220471 248175597 344570620 389005990 808307045 322161931 730378290 601693589 806520074 485547325 940005363 281551895 867148654 184507564 612690342 898731795 976468393 136560251 850609394 777345066 911471655 622469486 651095617 783474961 949975637 328017719 400341082 99429142 227143101 336349468 710541763 13779463 672927738 418456511 847292225 932990259 971668874 4332586 755690596 638483912 990720426 26755498 970929851 839597641 979356763 79621280 683090896 410618977 475002369 495254996 911657642 153570925 272580339 325921943 866430479 793566674 887989800 691329182 867625166 661769003 724195014 614899843 800300770 33813392 328867513 57883534 550021655 911426334 996480066 955528625 982473900 746936449 924968665 361997059 574960083 645492642 737140242 968811458 987400655 812178458 997345624 540350386 834972228 541795276 771053740 23768220 475179781 337663930 893773126 627624247 868579332 267585074 549847530 935639048 997538229 193313447 322736407 601315963 822242589 170278954 549273100 402547925 815856711 238027399 837350438 407556356 778751269 27487133 372815023 600970347 623086376 146617886 704886590 775383752 908335920 751337905 943185045 72935046 704765803 452307283 910399276 342688642 431876248 199515553 578030814 663026111 750736859 456330550 917111791 981789198 987577662 806560706 826105637 161002446 904823303 508054821 749942375 103553474 354367317 677726356 789170597 464014706 612789938 3346468 863988953 809549748 871561236 282340010 512830975 155010587 464001279 108185758 163357776 591169769 978553638 790040331 927439056 184709240 627171130 692437609 955996781 389372579 647072041 584709231 697915399 349857528 753598708 609550773 671005968 290985636 917430001 215806355 915115191 885857253 972659362 681302940 956626670 66381601 87451802 962417808 987097905 457461944 549327039 683939742 904452806 246327137 255991869 567720627 602538241 166562877 649913894 603437139 911613620 301415251 508553481 484867753 721560922 822670534 973624764 530020719 582821840 630262466 735359783 684133783 820247047 736825892 956871319 525071265 577564506 331722039 740266410 813485659 815432534 835440987 866190683 503816577 655815087 67468886 467435470 197470985 684577697 577733099 621025044 667303482 924012383 329533284 974149082 760294429 873696843 897699404 963097422 995137331 999057582 853482042 919309430 752704890 896764420 858342638 922506543 648021129 941110664 388994751 514446609 274836611 674794856 134319170 826645929 212624436 644461364 747339959 948549253 375427817 834537073 451072184 707055758 797061519 964224375 794338560 813040723 614412017 827560509 544817765 905253410 648746863 737985205 443438487 559246887 768849959 886130624 551882749 583129984 837809072 954413254 510030304 755781367 114772696 423989893 27693566 826280659 803707844 927621593 431898036 887308090 426132645 999214758 603230582 965340904 206829103 716346935 159548231 505949409 625508918 642359840 984246847 986440941 129354536 377362288 25636881 509656204 996557370 998743069 14531614 268684385 404477936 419608525 341934496 562533805 216837384 357755000 670999376 953243851 63336427 640387070 903034822 991389164 854564745 921624534 197124625 655589880 77893227 753297769 217233024 912792382 904317317 978280053 903693527 905960608 159495376 527589941 157808052 497873294 110335972 833328397 319522569 814177042 725299127 874446700 64578519 367962891 24712768 797959328 693279153 880559816 89976687 995185332 33212321 856278660 82545332 592607376 765896492 959641125 887452259 926655874 282016784 949362195 591648835 636108436 370917400 715080392 914504282 972317557 227373698 856955821 639361195 952215130 700971230 818667128 981411367 997536715 432776711 989070164 25762359 941218986 341528377 873733022 611122277 994714581 444848682 549969151 554275468 712903798 357618019 702141327 732111273 980472476 973283773 997907647 463575775 765236020 936390340 973005076 821005812 998240609 12289413 786200752 683495540 765543500 843649495 900468123 782133188 933450023 46081913 433690524 971783424 987762776 26533846 429164760 548445655 655738438 883440986 976409737 720862615 969708446 135212054 624868229 631991881 843454449 733999651 945287507 421712833 433847579 86992818 271857608 797128702 973239426 971831044 996350644 873965350 935486568 822077358 937448845 441885867 614882839 280306347 662365765 848856106 955007385 451217431 634882037 317901764 933235967 523956630 556071187 670288551 962032441 625596995 928091592 359138574 684806658 156801821 668885049 426067464 723482974 780317697 814623187 723329103 795130240 648683016 839126753 249280972 397685107 136624233 459234816 839374724 950299180 209230412 446599826 947405776 951826157 174145698 664567252 554020 558336390 854687481 882982188 32262484 626701470 205807866 253732712 293389253 511701024 884464565 890477996 530897641 984437917 426825670 635256916 141054284 900197277 379604532 944301784 787281572 979682170 226885943 781215667 604762008 861537633 470383462 632435067 425607985 734134915 716720858 823189199 363610818 896911960 238288681 948298452 909699579 930324876 597515722 753359381 48723066 149286177 273293481 724592006 524076287 875211223 689729543 806472132 341728840 437107923 330762114 495299525 451952357 932800362 512943255 978400680 475462887 751367010 163544154 243173193 753246245 806822014 11590282 839727006 615163715 925450826 264246104 747881894 216504919 833119230 220856039 920274879 212769032 423148802 13570230 898410582 672464226 859560156 769059696 786154170 642726137 831490679 735491017 918760501 453114937 677674247 107980788 231144706 317277532 323221531 604881619 839701835 235370417 455625077 742755512 810198720 547046004 828801875 853006669 911231846 604140683 769156459 885868124 904037030 365370923 911621759 538810696 766933458 73408473 927798991 952897122 968046792 828497299 886268369 401949381 436397794 715244218 717582814 500298523 966053499 134024840 958654577 835826729 978878460 83816125 691091650 159732263 170369439 528117370 966952130 793253028 962621999 934328871 949254645 937756453 963079551 52375790 553775484 270495449 901964422 507573494 990427989 795392980 943442744 976559289 986229863 851296462 975895846 693283339 906041957 546861987 839735155 558557149 743194817 738858273 758497844 678802213 710249714 226930158 677640396 293868364 680846077 845787079 962236251 702901831 993694103 546030248 600508818 461291071 798379131 322177975 801894602 205233630 557137061 481006002 507552081 220430234 749191564 585094999 925392230 700349204 808352537 718685658 814612174 881606648 999500099 812317298 976317147 595441661 711759430 384846983 513709990 505207726 823660861 994020112 994735687 552151373 820094117 505723741 689018004 915944008 988632327 978993787 991337887 376111499 784624239 187367204 732383359 283086603 742960070 40316685 800459223 643322041 903583076 751727406 758657929 346417960 789655727 30187242 467018802 217464897 517197895 211373505 759290836 48251101 540029897 43094577 188773373 80702776 268448302 349457429 413428349 869211323 938120956 809849954 934930529 651878427 730056703 874737580 951470457 411733610 899574374 321999763 975355787 939000238 973412459 306861072 603294190 389747568 920562863 440250118 974907983 952635313 977837083 179500292 870829431 787534404 957732998 840940297 959409675 380977727 614755217 51850474 822745115 513826565 861950320 5785390 964893647 482536712 712436581 187856415 617715908 725232566 915601748 478461819 646683662 297355357 576050768 495960412 586832558 886306556 948049031 128388407 222125254 917624618 944623251 877295838 889503519 493550158 564231641 503057319 988677473 447631258 945368408 12766463 275219470 578590152 625866860 309110560 453383931 821467229 885508724 775469921 997107481 423730637 454492340 127586484 777593344 667657903 739211597 876587769 911898775 558775238 985691553 332429184 988867491 349969095 951637917 142778259 278003805 697535260 792924663 853843913 900142956 671884728 761956473 945214941 967065501 824380052 835608790 431378218 504394155 549617392 767613144 641396747 877136922 517769253 884783344 872333861 966069477 791584674 856711145 966755987 971030149 734611226 803979764 567155548 815034682 342344011 547313052 636666157 640089323 351270575 622258150 998341812 998556439 671292207 726522529 261749545 827752226 285270255 489893415 271752906 999636735 699244289 942001773 577100494 909828146 917324330 917581171 275360831 860603593 167286708 751247849 582202066 618816329 178596631 262320588 784198055 995413112 12617277 855077030 564056160 599964378 154421195 982531410 437969559 845216018 780192114 788804632 285048186 498525408 875769413 991963611 91192272 278116510 79653440 153707264 60800006 486329445 903041129 956988234 279719420 896810807 577295575 688261590 713117424 834177440 877925803 914207653 970318212 985612075 321913758 773414368 889898957 907556571 535527626 802196562 829798643 834241078 356257401 712924999 745187548 892991509 884894031 910876469 879747378 996777096 604687353 786672460 328200942 785730946 507833216 933330898 687528113 760152871 355586852 987259060 174165616 653200114 861302144 995401165 602714602 960911443 861736942 959409252 987536909 988872388 917141233 954141846 121946467 295445069 962920662 982907076 119399304 649644556 259700050 747753187 886439670 888626051 504563604 548126744 417586865 707227297 931011166 971818099 30070177 982007120 573516695 740117954 522042011 522434934 973426275 993875170 922326142 924753451 364457657 760716098 944329049 980876920 849963738 923334201 9793731 455258746 389540304 643345962 982108727 984393288 31076881 204999195 936891483 993552192 638566269 817168065 160044348 360789457 17463914 818696057 504646694 699826962 590433617 887743362 451302652 570464914 824570816 863165815 819315160 902409416 192667701 423185607 800762684 823892031 457255822 649723803 636327925 770241904 436757003 627089949 298661038 739039365 267455829 617385790 37527916 603128429 215332287 882795356 147965195 895094058 677055870 837559807 792107334 931721394 321309939 577140619 310580755 420830662 318019496 717405448 778844475 870759264 798280819 958596320 639610500 706307258 67293312 224522236 756685973 838023564 962270000 994931466 904779780 988217370 975300734 996661337 781395171 874918811 822672734 911816944 943420770 943751045 604250198 686030619 492391360 637110800 706004438 707408435 481512103 560640673 666906807 670480071 333589534 841302847 924635629 956159059 556167768 582758567 573035117 986552581 367755701 902880878 284321846 633188991 508868098 569662912 385413416 638090406 161428744 375784283 768522779 988057251 711815722 911860191 760738115 815504660 748283674 789023047 700264605 733058113 981767102 996164322 699707892 822837402 328455924 753900697 170207722 628608207 236912265 756143671 229215303 553153842 444524251 923958662 679201755 788045263 307424563 671406969 199952690 786706633 172108940 405734297 466561713 688958152 144246331 231435418 820550201 903740986 817674125 919218174 438773804 742995198 470230554 680827692 331834242 965442494 438292688 793234870 720078625 747719076 201302632 563426504 393060440 561981217 105080037 963831215 689539955 837492179 789220360 911141901 805791191 826705923 460611763 704778408 310629184 925289671 956783533 972292933 252401836 799932434 652095858 740399275 784980310 921102848 905592263 939777379 598389723 869324949 611884005 959224094 844609961 875730626 464242462 987675369 939359842 944474067 582769966 961002556 673597318 870462526 981666251 996842936 178452775 203358523 117662272 514224686 84225843 983499565 450056203 670579371 618577066 815392774 931179680 932277465 150416540 653562156 278660073 687123054 782484339 943811144 892838156 978141154 253339722 355620578 836046680 845755209 363515369 709367551 979175464 995494794 526415241 659359312 978966252 979756045 995025137 997030115 596536399 622354380 832335653 868112836 664807233 800547837 640794207 785149157 588341321 623132205 575930291 899598145 20889386 509978086 222894973 452364710 37214852 373605879 205679353 841159518 995201355 995869017 11375281 794328503 661545425 682162086 450486103 782099101 241417296 905393354 212374061 880689807 16505130 226319255 600361419 717564463 31324282 104372968 119808320 211517189 287450663 850404439 101712020 916076359 374132098 977158999 754561774 935705428 288401974 752432753 772185112 833163721 806681116 941884786 892543848 983509087 774858365 889676020 988543342 999351964 934261797 942729806 761185534 908917058 282114148 715090843 765501314 835495818 161009025 347109562 338026004 725091254 573802243 678338399 464097459 586114546 12644805 976996752 516051447 595103280 761021603 827552702 704085244 900006167 265006893 743479248 100656950 656377931 479280283 669697407 85444459 721087057 329841196 944558142 58337710 984007658 94403425 882997429 220644311 537009554 48286772 686739385 677770808 760369525 499957403 625846260 11659534 880356047 104499308 150295349 452694129 475531670 999177421 999886751 262750911 783703323 74921572 344792481 962133830 981464283 86468954 505347758 100385959 996746068 791003057 996198326 175018509 449024207 735739343 881930583 124032300 644983552 33670320 74263137 177960988 840223451 648349379 665412420 752375143 944079306 392147987 752116068 961803139 983106120 308574506 834220318 912083012 964448957 442263169 636105382 935366573 971934581 118063104 571775477 574797584 817314635 618165530 905553766 178088923 210471301 822631722 987827344 426533196 858366334 28130789 630370280 552028317 795648611 96923458 766329867 948484943 970963171 468187440 621748099 339560452 942207225 813258695 914172802 754431419 769754221 869716855 873603447 239442899 763522204 315382355 559292197 33621525 617549175 307943643 961102943 813802390 960837920 725908371 789699079 181734198 497154494 282289065 812729999 670768255 872660058 897260426 974869249 766144305 809474676 46683467 118421331 741735964 991239096 373217014 480238543 986485557 999975570 600933178 807921415 574386564 871399363 49394185 684060228 806980167 855916086 841306106 993216660 471839344 626615294 585298412 766569026 524785361 600715302 607431538 880353460 140751894 926450143 702212001 740613536 524709301 914099114 745948056 824784664 863972029 958869321 460263199 988983423 11205440 725044690 738106091 833811997 988146374 992552216 852245149 943413341 330394825 614155527 251964257 550264763 941082396 981812703 371387486 529679648 856379902 994589827 919480828 953152334 439804432 753359401 87745792 779551952 88739462 291803490 976889659 984394812 11009604 580620825 888895389 908823248 578959548 799545824 260833113 795263170 204337090 473308818 964624721 976565307 958820324 991137570 399108412 966718444 631159839 840271634 298349416 924799892 304037253 948656904 276107540 783576334 283230555 643809213 59807103 116901945 266832809 858078438 569308785 661713709 484632843 872126434 985021431 995867785 779356350 838177306 264575109 978615406 105138547 435783350 478196232 636496276 782073432 789242780 811646845 837360732 265936185 335267173 369827912 742739284 535501342 654458098 435667732 739909972 846721411 984318988 124207743 277177526 286203235 669613953 622248171 659713050 250852670 342418235 990174997 994171678 147485950 410750869 896592335 987806448 136395974 636693277 176340683 931873262 787808619 894486019 47662807 667420676 602750341 976905135 236301352 885317839 589617414 753075623 452693601 468980021 878771165 977311013 370973062 640645493 17785883 527648442 528244483 538895726 264985018 424353759 780784889 843583064 437739737 798026301 849148606 955167972 112247035 950445206 754079880 916388476 798430740 935649182 68737303 351392698 12782994 712114255 221764032 440876509 939507261 996048705 757411176 805362435 647365504 837117573 318332597 763681289 410640112 950818680 359713909 472236907 604343984 739713594 340459227 968330574 24928691 685244817 176660236 410341339 927398475 952546786 885890376 954801402 544977083 654210631 44789211 297084380 136128936 762295412 680616760 757988964 585727227 852362721 813688021 985358110 654543823 974664641 428269295 604777652 773161352 888639429 700586774 785408148 317484809 684380185 739081780 849785065 732946751 913708944 890232992 942336462 903378624 985877879 784192001 804862845 899559199 964431555 688221501 999590925 146528474 778692773 146342107 576815347 831955853 875144749 159658368 372651821 790457712 935951628 128613507 990932718 86946886 695785868 991568467 995693308 79539546 387231265 752053047 887627447 23916989 46515744 239311461 586937321 183855829 372185536 441678438 511586953 678070415 880731995 586873071 590942040 590668447 855717318 305116185 715402564 271855788 874859811 961816055 962399238 775400208 925149009 389243280 936042299 485361295 986188309 574350367 897093995 339553378 774387630 571209858 651717718 216937352 559041171 384813045 682840308 358290882 508586528 804879353 827561652 770056526 977999280 165215318 235378000 747847020 975668232 848290055 959099086 228038886 779256860 325781755 699716602 795067666 895080582 209491170 978203427 59585589 982216097 309432286 929856164 233143711 465758310 877401336 880270188 64957461 408787228 797934457 980079624 807207238 975442085 183769611 245617557 406656907 465366088 320115439 343124333 921947357 996925445 398196943 541067862 927504751 949018470 971126294 998408584 80293731 469131206 220618812 446759884 745214207 971088757 409255205 485817208 832424089 848727524 83688874 937164192 12232073 904956494 745925272 869375083 641204392 969460454 808758361 998722211 693519310 884703885 207660619 742493516 210643384 907224824 219617569 959945666 68227174 330098909 162805984 269842419 269202501 844090827 46776952 208313454 878053768 909086351 64688250 509784578 148512800 620597365 450963882 527675259 460450728 492856325 593640621 793859395 7490856 175127674 491436620 627601090 35623668 235624542 214826573 597226759 710463752 836924615 486352579 534332106 58304173 556325835 503416544 860118125 210108215 589847904 371182154 385502732 471724570 996336645 12370818 94969648 683744484 696632926 823190617 888933091 829609471 902022359 63589075 169975741 848807351 938252513 346448092 907569528 492033796 938424032 109886170 354634421 958426328 982314691 401103760 508574794 172365735 646693483 42664837 464677129 440693001 977609533 521030801 789171947 94786776 440682802 491377945 566349221 352056449 620324022 846151911 847809446 747124695 762643899 355486175 614487458 548860807 908793805 569505140 949630868 934720996 967931198 920872837 938327120 423032275 456949216 450300219 762908522 28690195 56083616 711041682 955065482 705047915 860806558 705657429 791998767 968530790 996483557 171252779 975106121 929816715 962071760 739741403 946522931 396303054 538242114 816194469 960458778 262194497 514601095 313144401 679835125 150398953 998905125 854170545 870940989 386060419 489903162 444568163 908547115 855186530 887579934 334757733 541627376 486327580 822850512 856032674 922516468 912509682 999316213 705187902 846390601 371106291 375846775 697588499 997353528 352166930 381962491 501393950 673268641 359501494 950408742 426921361 450469188 960483279 982182728 475125893 827230560 801619243 851169643 348568283 949636437 912146527 927225181 654562547 972735934 825579884 911623640 108121711 824087948 567942199 815768359 810721503 995416718 368801420 699553866 929441294 931506747 482743475 994537308 252501099 364513208 66746456 243747711 135313845 410741448 816695664 929391485 670045083 704469642 781812532 815620782 142571548 747216960 459765073 595544487 240217380 337987433 485918930 960784222 174022718 303871336 205520317 476040464 643247974 829130689 2933753 706774439 160493564 742936740 364127243 966088981 266087357 484087968 505090020 857953226 331364039 666995988 25400078 891868433 48302093 721587444 443693074 576640172 759810824 977823916 551857875 645709652 280909307 844787338 789230736 856081036 433684339 660838272 60780116 74544298 233852164 426487782 197258681 769844164 185214515 672909314 349117468 985320661 511354422 995987268 423772758 543511018 433171318 939320866 807364375 849744002 906691055 907685072 123870631 775065046 448666684 614557856 132634403 421462063 93255341 630174836 59504170 660024403 431168792 681276165 779118496 846865963 519400798 950070465 660826360 786220400 103409896 368163588 808215505 887738908 795007484 942750840 197344467 935810506 185260896 956338227 428716583 729993200 166996731 338559985 728743001 732822050 362330147 635184367 848647961 979574958 89332024 814278373 907670773 930703896 596733264 903404293 350670584 991948984 496049882 585854586 421998085 649676754 565137003 664307596 712116343 951329679 905823965 974621462 999134203 999557336 855392760 981901650 486166516 918184739 159458462 784336286 440383812 972443116 134216572 991176314 747392177 937302662 660257066 957729970 591256069 976047675 965862134 975174821 184355227 614914003 542568500 988722470 236165543 972623700 470668872 522843373 313037152 855874272 110648793 338393162 182667846 365936623 31395790 310893176 632301577 879954613 138659316 145681943 273865532 710106176 57417134 188304360 461311138 635666171 169879987 589532797 478357640 667740258 959239517 970405976 473500851 488402817 422887372 827441663 868332951 888436487 937109836 961990394 142884444 709525175 118578114 736112306 331474186 442512075 883992614 890536376 26810472 295244302 661633451 843112879 808092126 953346670 145667069 481792506 816335093 995005718 108338546 316291917 145722471 611715859 568297798 712655798 179788450 633429839 405718750 977095151 722430255 773294348 31114721 289485473 400790268 615291842 888816459 904887239 451058945 622507414 594286883 811446831 943778825 991322354 244806713 635452880 534164806 868350784 829124619 831966519 548762459 593268266 986223255 997352796 108626076 870282990 6845515 110304252 722055309 927880324 296486951 901597481 362353945 642448219 535722583 644127770 209156404 732431598 848251076 904260970 506441201 534416450 369152064 935090438 179712090 607191428 842870441 940621619 909115623 932150985 227656305 645638367 451158911 719580480 255387005 277252104 409975323 836273736 341082067 408302812 260955893 867339466 973441357 975751392 939613178 960148140 595230494 808320327 798121359 969499764 233940050 305697001 985291001 990169765 759742294 769756786 519028499 680409982 252116052 506147905 982531273 997333753 639018712 903664662 515763299 946331768 396885999 733288938 220364681 891999681 146268655 477052752 628905348 773972416 248993545 843665079 752424253 782967477 904598370 958022158 545500764 884438500 680868087 855057281 581462049 797077028 56306953 406555007 625960165 731901405 721053219 879534302 643746361 932490106 574804603 812407597 216053583 929436699 490426417 762008295 168582939 283097133 947313862 970056885 504564749 685923806 403019807 693241737 188994114 248010534 237107125 818362205 494783887 588602991 821685233 823312441 930029467 952885710 943351019 968489167 430905895 611633161 486618197 618431511 576163020 611631099 623283774 708191911 725609550 960083569 186762301 242383005 178418121 546461409 277046053 403168484 11040693 164120231 266656758 398386658 901945691 924450736 355833736 701774512 72696058 662293552 976960848 987113753 266365376 292563636 799567569 981501410 823172454 904393409 669751001 796855049 956457177 989705176 213286964 502766854 547197615 781340486 507662316 510390072 737631470 745392060 178589201 629439106 401450207 833548297 687725789 942692276 106765669 793338896 707371327 916938482 750832466 751505501 144693896 463596385 207934485 425452489 685307816 698165199 580466470 671631022 24895715 652373388 921171862 967673954 387243631 961225044 748525183 945561404 222134748 921638125 192320369 443524931 637087305 997420756 434499391 670333623 357993154 563774709 446107256 578595300 63005352 600301127 838395462 972225378 724902488 890462578 891919938 952727929 754253372 835228473 133060542 181491893 993974777 997330853 639801713 838948567 38711973 60946106 90381561 921885130 311642214 697702730 774639704 891185407 848455711 857188660 684532768 951063466 242909800 843296791 98008247 152119774 463146823 929078451 273564770 911097199 54951996 539355774 442661199 791978018 380030116 996383499 57910741 800580313 165717342 484905949 19399722 824844562 978273901 983701526 791652262 924962465 141264372 644194087 344517123 425699486 951129101 988538524 509994747 750036994 622998874 808085034 422565901 473351502 665459982 830238977 150770082 681737544 506116949 974606851 655861055 876164753 288707582 464038061 988032929 996984004 470907017 646253675 325545000 926278272 372562385 988207762 213495027 781129026 397014788 891802369 508634160 928820883 873119949 980474176 904122887 913073908 258319029 433937129 956303229 995070067 558347438 624104436 915272429 980422218 817002184 829756038 941602697 992934601 37085995 289687704 575427983 723787902 956093089 997716558 993305928 993495868 545442860 798422405 949295476 957528323 539224010 844385454 957387282 973745031 864582026 980033210 232643364 368186117 61815370 371912307 221278075 894493973 757830782 771248059 857305697 954999100 281863352 885224505 554322031 915151809 578768122 717282806 29312581 917049135 33369421 281836372 820833675 902214884 964198938 982609061 577327696 841095577 275905410 456904079 467488483 777425785 622904989 969543701 334827698 488771896 697367789 731260064 941734316 982900638 820910083 924171332 333327140 361173558 609616967 808392610 588039358 664127719 26588485 992312857 58471120 532295435 382003705 664302111 230434370 732587471 626384017 868576308 312824049 348077964 826389247 956917564 165622057 901189797 369649598 701386550 299920872 383203365 106060320 718896980 154171123 671653221 476706367 576069771 643558558 783288478 92426982 753247589 215221801 416063337 868384847 935429318 913017803 939445302 267136746 377304503 116460012 463674437 605403086 915696963 796510082 838709088 437311127 913066054 297120244 958520070 964381597 968993295 499660851 572242211 770032923 852661953 431334995 946797876 422388452 636089689 546416282 780317047 322060165 800091750 576616934 867597559 574123175 586496648 621063153 874578541 40258793 613659485 607775266 950581722 530425579 867441520 109601965 409380836 575033221 605212876 35878959 680695488 896208143 983567326 140309584 311775182 29925547 186292611 45756657 112088466 757708096 775521065 291609800 306996269 794436116 925147471 33242022 369194426 693548324 795235808 827096383 888143512 325981204 728172545 487030854 673251154 282764315 459774567 91871914 233444242 820663053 950471066 547271907 894433918 932266428 941828305 298856843 365232282 246863664 386760997 284011556 486811995 434513331 820925926 969419570 987523688 308722464 706687330 858118884 955242220 870071289 872149609 871142922 906063479 174889736 204707277 970389913 972265717 341751224 727312353 138964325 671114401 459502866 510905352 262654059 721495637 447449572 940038103 797305649 859985271 199187473 958831554 205652224 574218481 901199343 903126139 693965341 809586584 355790449 976201992 863149143 977372923 276508404 541153694 833599693 869167718 73249362 758773380 805707628 960976143 863926898 873181804 217904206 251355618 972139353 985478458 945957736 981174477 714898332 915284497 897939913 943977631 498888433 944463055 606154262 822984883 196395299 529875808 648164805 816212550 273672041 360432853 280064567 498332048 130834789 369694354 456373789 917051389 414989656 982758281 785182345 989712298 390460565 615151094 363791329 869217251 565846015 872524811 401816725 963770933 145402631 873327890 664079120 918973068 315912268 868309637 364818917 640530054 282035425 421960956 358504313 774125725 368342556 383140266 748594187 918122682 655047235 952967430 984368056 996423057 914592780 977300080 211324908 510615720 822038640 954894287 108936318 767083484 707754665 884460702 973797235 991044478 244517199 257601142 736903238 751378184 598913003 796051797 29318082 461479160 78601809 208716701 954611592 980464287 342774964 441602445 81854962 401293703 573039839 928288317 881436717 977834860 578962709 582426367 906044808 963847332 943405353 999678163 788719260 971894225 137122487 676563575 546364164 549939161 389566083 598068517 57583264 982498819 873047374 915718874 63233827 479491300 653067698 897704995 413936671 483085886 925191741 991395511 392394350 449653595 780937583 956190593 591922974 761593899 318398834 664405617 435479550 617417625 725755151 913849827 757031365 924963410 919498832 962368413 658674983 973327834 807612891 969537839 220034279 966667316 621007748 796650958 942779843 954241447 121642513 465754899 289849871 563440041 437082655 758803683 474664693 741163105 95282810 954035628 248689275 481097287 519116340 926028577 502309899 827835870 680996286 769085915 725022459 750855371 917506495 963605754 446661348 526529197 375311443 379442156 656817580 836040643 40312718 674680338 609426113 727542082 937514738 977072014 936176023 974214164 902482920 984757083 450155878 853526011 414995123 974803126 581937474 674027627 32549822 640002204 884528125 924060532 68792837 365258685 535932634 680559641 688456423 756817124 758488971 871647384 868359658 886125473 459600692 929057714 444669778 947404436 490852581 843350540 40031828 234482519 332941329 358831538 714665904 945888336 948623615 971467782 276794081 881376442 812951906 954289671 82281277 220724753 771558639 776342512 704943008 774700665 158945030 660055334 715326483 784177778 941946136 962646708 562313473 756957393 461261246 990251955 306909051 442756209 677948455 797990796 970723775 989971811 735629541 838392060 411661801 781806144 990473034 999067771 285844982 656746675 146949157 785645409 488246599 690978824 869211651 879997308 184136617 443618312 446346292 728299154 397949164 961195219 956105030 999312095 624588263 666929854 140604771 925460405 621445071 918171860 190623181 821995739 216700726 593446651 417622651 833470973 593304274 621910451 17592748 793658730 862116575 883982653 36480888 695589131 714212927 880028232 831390182 945010852 563132969 671802844 817737913 997314917 626962543 885982089 741822293 792418103 795866168 933663841 521709656 701818441 806986737 905495275 962470122 971503369 265776649 777732445 682278399 798068162 697715011 751039802 786008520 825551075 898541486 968036291 936711224 951908376 727498364 806147524 979409137 998137113 11283541 815854768 868499105 933390521 877810596 920872597 353995071 716136539 767615755 967159463 802717546 998167721 657832835 685145725 840512863 872219879 896474200 996693347 129116797 145014128 968206933 999446878 68273051 749744689 683365120 898909771 61064507 119221951 749811804 860012391 165372531 587326283 896468475 943565167 368238192 995077452 391856976 613388315 986629547 988424709 355965618 374949025 121416391 567452425 193753689 907408460 185475789 886340856 911342793 947745482 79805521 846431628 909473622 917999646 572661099 953920969 751004594 831979514 842878460 883218548 861602224 916968251 153312271 949469855 123150546 639056299 899512352 983445053 565012165 650390220 749399802 779754288 222358703 362148380 669392349 951888529 421611416 853821643 506444787 892176588 105631 920019860 815619993 839525422 870958662 972423954 329162338 671679665 232279948 235159523 923017290 967613797 2512884 760612924 251722767 985539894 371148051 669028071 766944668 949630066 191470963 343053380 481982858 579649529 845501511 887332665 57156785 373270408 423540226 616242860 151657506 993602998 462970464 799886191 891917877 993809976 873500369 906723164 283024545 857993721 920497263 939108475 967274224 985964271 662399079 998880583 641170094 840662659 179867300 595155208 127290645 485800287 948560581 984167645 612800496 711697609 873927704 998370816 249903279 544281278 383851492 733375326 986956843 990466164 734209144 894948696 192982066 521321591 814280252 981730300 836888702 970544703 15680257 527004341 784381651 911599904 496179145 538434231 153022668 467257478 710078660 715786493 629830037 752889649 284034142 416716001 980434855 993276516 794874218 953604348 551694489 913604811 503384526 805037340 531599149 708175798 438338860 812544218 62053145 968922626 866931133 945674052 591393767 763908244 716760347 906197320 42599539 650942024 950683791 979831180 585695446 660026844 890821193 969171223 495311623 669175814 903206096 907777639 600480318 834141565 62855814 408585407 805889539 844140905 798253278 913820236 555184580 945346035 787613412 952272817 846586134 981842991 581989336 785022675 27851791 345412798 272545327 528561723 518024704 561479242 750737516 820210128 947867011 963106595 2283040 671622114 58753074 496210079 20431684 502204601 100587762 106759137 658694851 855385770 761673792 874715665 510671796 904177471 25148816 94062804 465366830 560942631 546504289 759356905 647638018 851847541 2897156 339281262 782282154 976234328 611334540 857222381 351459732 899146491 169372902 872129514 310872814 534728149 945386577 957760437 188903790 938000803 831946627 840480161 922184986 934783440 262850172 796771700 561525225 844692473 834615830 878394191 78120215 345944840 74185676 460428298 280318554 722896650 787769499 990156130 34248507 713039305 375055503 600380532 625611012 651628007 1216829 497074647 507380748 509357102 468769606 908848783 130366769 666616726 546561499 789058558 206302761 230196957 897870487 936117043 192439720 604970464 253490884 605417846 101632303 152187841 983200270 984350595 634001976 916755651 310010542 556104098 455121034 664929364 168109719 747693634 23894905 340803908 356880501 698237574 672339822 903358615 243383289 497529095 208658506 943006491 880923137 928745074 864756137 977277466 644644332 665218510 350902171 537450214 261344740 295750683 597862046 616473174 963142598 967050365 172533818 982483058 735517743 966740605 919010851 952633574 637264678 953567861 202098591 904880534 627968564 662878686 419575491 864817280 525772599 653396932 794995823 911594837 542113058 646525562 232059958 556419489 981211516 991799709 763082560 936110370 857218946 902162692 477002334 574464802 391417462 450559996 496914302 673795823 647768471 742604899 84408962 656777079 884424683 945710673 676508516 713146293 960275797 995883023 202962037 258988383 417205999 530775567 532878351 758075603 460303566 481004237 278593133 840562237 725532047 881660218 856780125 948855811 588176278 733187880 705078268 926079928 490613839 668737507 961013583 989747864 560697115 755088429 61934415 951468432 342432224 681903902 610429779 954365553 824192456 901224661 768052218 880896092 577897424 925027041 959525713 963418722 939980201 940144972 555721166 826375887 940326279 952165504 910010084 932868763 719977210 725659241 698973322 861350915 941352758 949498526 766864970 987823785 582140967 996511593 961898569 973876649 887036672 933892651 673959386 763193065 91085827 142695037 237543357 378048721 554918267 583548697 684764933 871648787 524786932 656649596 830037827 950195991 194952677 268968416 663541232 899617038 53742836 905841521 610775773 857234567 582145879 609294757 137735466 212434674 18886645 59226579 477606128 487381190 215856686 472708139 725409978 995962365 751052859 816290919 808555976 967921862 118250076 605975754 79940783 450509523 922644851 944420317 166076173 316450949 526412004 624776680 105626735 898596323 58049893 651847569 489989180 924929033 984013720 986990963 433774085 660141888 877076654 897139771 641042371 852787797 803791590 816063655 687898847 896155765 891654870 935433696 212335980 927787773 792573555 846593914 917733827 984618091 927334374 974504450 857767868 928325065 109176037 579830751 284213320 816158526 436220070 945920822 224050793 502228843 183991494 994733345 299284069 661725055 822893891 920436687 833697514 945410572 499571952 734321059 149857151 697384819 387200147 606261744 179756456 185848247 778388120 965713247 520069893 831653753 351822726 419256385 26934834 809446703 268037630 594843450 158271643 549234336 582274795 659507190 156447152 666426594 954218582 972001631 868429601 988933780 321052460 841133982 610947279 782172993 801740361 878616291 682136585 956612893 680164078 786901990 766315589 859032937 130748861 820692166 633164931 892609550 889772499 942306004 243437410 592332138 536825296 999349912 82732890 854409830 973102079 993778297 676047696 799078540 829851916 981957789 199787021 277047933 244592839 981455663 438434430 450488061 603444734 789981154 859334517 989803078 738099551 953012083 848809248 909775222 460747568 993486229 817394046 903699219 603763458 805227473 799561706 891934262 324076038 632370605 694000929 753603396 499102905 911413680 522134756 737360346 205874863 925851645 31792641 205363255 567612389 984868129 312148562 942189262 233163900 929493695 603306149 702040227 385274351 687887458 537658644 990794487 475326062 535244761 590216420 772068569 636151709 668294116 70774879 678143079 741717339 880843171 863395480 969040862 299780014 595571756 76687539 978675139 274065805 322882635 477020920 555868377 625830327 683752874 773296941 833423393 210047215 465484240 422236282 605326199 546758534 717063523 167236354 251384970 197867911 560536625 270517309 298226212 818763150 901977400 836065630 861247571 932215606 999560101 547134759 769916883 514135135 524569132 867173158 946307214 14909577 364359632 390698489 917861160 492535492 779634800 670026763 736814059 985092714 987014510 384419767 728077456 230164074 710079014 647982041 843881653 743110254 988326596 86774543 114816830 700896453 800850845 934695404 953463465 238968171 850383748 619937093 840662784 112213126 730947672 743981392 932695851 370830315 486651973 673624712 988377894 419565723 894101186 367749580 449630291 323948513 764585498 646358942 809360471 3573598 930848249 394699849 648971599 668940116 943668372 588744748 813401242 960178987 996408276 485867031 537557710 50698470 635467335 60035205 368477977 351563112 532033596 239851130 762401911 891279597 997227310 98502546 625438479 131278349 363031581 157207795 214434589 994196234 995359525 660849800 680038065 856586255 951447346 277180937 354477385 557824422 868715089 917979069 942862845 73370605 266504717 274900100 946277708 635283678 710957016 622165557 923750037 154344153 934291882 202038034 371851158 247920958 454511374 696154995 742833568 208931946 596626635 215874863 672945362 720424762 972360244 739263019 982409439 163785678 719153233 352399890 373599941 310883521 888229577 750004414 801658345 902961739 990604667 860738916 894555063 463212816 653359474 103290522 532169906 619122544 934721109 777534233 865235318 843730064 964883453 8304574 991098806 341429868 500554206 478159199 529820086 702310848 855074322 653645983 774143369 439849627 636257285 904445377 952792102 948110491 997668660 959722303 985769405 863720139 921442703 104804901 686910387 843894222 948450111 721903508 738318538 463168394 958790924 883447713 986090688 489546386 904274549 480499487 674391463 254225947 606611017 612642874 806999824 645997565 962585459 724969956 753030223 229349272 409262084 636301268 818784311 959402055 999968908 424926141 623345960 628165283 638048908 358912655 852077660 281073119 469920969 63601908 772714859 560954677 948913997 290432580 839657882 411380842 717790975 644619330 868843375 184524780 381934333 335825220 416498814 800702363 974087596 113887266 191444946 915171759 958325866 394054746 610692732 374313911 674775730 742302825 950691308 238638710 273170223 788194757 807836702 217986885 686594039 737785193 782772660 294683021 769714594 288128247 397864292 573374594 742580030 34348287 684447659 411879194 499348160 296357192 765491852 309945807 544728413 332472857 914953278 612937336 668915862 461887885 787961964 730018770 958526005 156244227 445174970 225612812 868541674 506957997 587461955 868505439 959812368 195516245 503102499 85018469 337663088 209277895 553027607 546884964 662110023 758310515 912348829 775101351 960724553 653556494 691363035 273952006 283672514 259805659 418594598 328339780 937601129 63369396 446408607 21367445 936059509 681328952 807705258 160036995 495878566 485252303 740054693 58397843 393032417 646886700 922207879 828680265 929948466 358833549 433100961 919485684 938263586 30358990 966540215 308779509 590648068 206511625 369025862 577928455 706778260 240342573 873714138 574337156 923895982 298417960 494623997 858712441 905538264 840019449 972037647 628505697 991058974 741774332 851617174 82728963 285096220 676150313 947673543 225897740 557557099 592292822 810784360 743306815 771777570 764407972 939435641 481953585 516544918 878208110 942250672 574248935 674202977 95091104 515629310 510792453 938389363 214507781 763070713 89884689 689187184 947416463 973716401 919027221 942396693 493227295 777809808 831941224 942778129 696878390 852356506 800396120 879527597 921798802 937484786 929382048 989468903 205002468 675483989 254089693 955048753 583280771 850720687 627029215 944195499 429707066 574511792 350571896 660689524 667827479 781420088 110898479 346745948 241751062 915663190 403793101 730861515 366951785 947726993 98951788 992170402 977173147 978873065 560925199 688596946 329064794 644379148 519514297 997974728 572873863 939531048 818960488 886241463 929589053 983365264 279138810 359126334 435411140 927895269 489205356 908247578 744266309 894255983 884749242 908862350 115360583 863384620 34975316 68091686 868646566 875615901 755680503 893863694 884207096 974196887 655359765 917420561 24926586 974940460 142626502 680076548 323240125 612648843 419991803 936526607 800184917 917573514 914003125 955386072 384514356 591930085 183108819 867978830 316521831 377748789 372589154 973259185 114125411 324171857 641621329 680192725 985968752 999773393 111081547 916214528 716891103 826874015 484311808 550353821 65715024 907454776 35689685 794806283 141719981 175653072 933942927 955932644 967762004 998573495 676679246 765522599 515758469 880283494 344540201 419045732 557005762 776466708 21402523 471628200 196514253 219853897 979751776 989828519 528770976 556073392 580494260 940135736 968844582 984716364 142154155 302327690 112199359 697353690 667594965 697127935 826610626 996869577 537514931 568068147 57607420 474168943 544434737 556864907 362941620 973886733 702869426 883719122 518387939 769934316 707195188 760029337 934806104 954900199 870927729 919020169 541028091 744574796 695670435 856908640 90139209 523811372 121034804 309253192 825601690 910343563 283550031 434006469 212168286 950089050 771330554 778528687 469046831 985010486 381161636 736234614 397455217 834084043 607894357 929665769 406879688 440439521 649564741 680317086 56894285 930229100 668003307 969612426 429786622 556467676 354105674 748330622 866818574 956621153 988915121 999241000 348230253 663323872 599988509 780635356 217917135 688903862 446475067 970056520 776220345 812883901 981205345 982234434 47731788 541911314 55038684 664070862 698975235 830329312 534525780 819955670 606481270 885862131 238217904 570895792 877123937 962201808 457283926 881809748 917290898 946728063 986979039 988132875 613759548 660582005 657958211 956913776 730945993 826128737 28209175 649801797 84881272 172582735 378887538 485437444 466609683 578355872 493105139 722718804 702702459 984089891 290326894 646985159 820809010 883091307 255001121 261204370 147733078 476604396 292243049 379498237 922938902 982124840 731563058 837995928 778664290 819896615 10490465 455514939 377274439 544165773 61380673 787746861 870966847 957443095 26291308 241170051 791797134 946470817 105720387 882245520 270982944 739361248 609310043 811501759 884164699 980874054 367701996 839743318 13719360 183412907 181046999 514970927 275464341 313210813 793189014 971740313 275237864 738838430 225001263 581807815 978457605 989319289 596920841 632185247 614327112 707844447 193582226 220239125 861804410 927823231 320782011 735437545 993031113 999477257 977535854 987406705 728866967 792121298 722527296 804132585 412363717 637502336 265669855 808623252 57207318 397020020 649129721 967760442 938457682 978901001 360825566 703626302 258926972 941553799 372022721 452425184 49840668 148644561 474873705 961062979 181744271 552381261 828959621 988069220 893391288 949470110 144749164 683620849 755666918 770772153 233539168 957072438 268208230 367600442 570800916 967224962 991578432 997924372 217237731 881990878 833394714 901273252 813130389 853623769 628435040 711700141 851615950 875038671 317760967 801729050 91178726 664082947 336762771 435271364 343140828 929316903 30644166 113117014 662998139 955154451 208755012 314869244 875844503 910239223 991295408 997242357 268867428 355169470 733713462 739367422 497699311 512878043 635283291 897395342 533773518 726592430 549293480 846294710 545475440 735573115 700015888 917729242 837346553 869465250 599679244 963551567 285016561 686204579 550601359 595163945 991660830 996291208 337442981 911434254 863284321 884377673 435048986 587367438 22472182 998896026 161049842 228876552 799012443 942642296 229477731 620252841 7404459 851403359 623004585 875397931 827798288 834676975 756754324 995398586 477076950 492206578 44266925 178552329 921891578 940499987 587124446 782163841 731376645 992866578 262853543 787580355 325129360 483874156 788974718 892768578 896154913 902648817 499595820 818157408 504944133 769585646 253286534 756121369 182772187 225860999 560766422 915943930 41764974 825230140 531066324 717652781 763063255 879763917 129833675 977602391 674989295 818656054 143360333 271338442 349948784 425881231 814662110 939235019 501358948 887022043 760156 322130819 269004182 563028853 688864132 921496172 915394172 925307640 624419256 922000115 516359059 731199759 80202994 171852090 334307524 720892427 717509604 831668847 532893276 932717735 225028274 982545186 474019416 750664448 624373702 651118700 872560907 904657685 416428116 520345859 729301553 984701103 344630772 365292881 31581161 748324121 560914704 694390548 341964316 708885732 112143588 874984011 112681013 159492497 165517865 754055754 306304023 687977132 741878519 789644930 735587136 995171465 661717596 760338501 572582112 979236728 247134897 716200193 816788629 836753198 154380290 926924778 384817596 912546040 52647268 299608540 147212317 657272681 966889777 988307926 660391460 831987505 310976156 933919097 50350358 984148863 505674691 660460500 362745576 781592935 417407893 557750509 968144271 980891067 826972745 959834985 413085411 786330240 472481344 927440654 438660485 698376401 735214358 882518715 881806942 886435868 24438172 130483418 311511804 817886637 791415108 889292939 386948763 628170559 773638592 792330097 812539157 924276320 978747939 981503821 138312756 631696930 884890437 961520400 986757912 988716414 81818880 413259986 337276628 745827954 571479669 615355320 321639593 386054629 679271950 681013639 906484871 943318615 70596551 173484980 569308801 788669238 914413167 915572949 428071977 884171885 795275439 860879846 678663659 884699479 295830715 651780042 778225159 861438458 735618816 878756066 289195606 768405880 862398215 993284661 316543184 644193680 119843477 423172251 420249885 901755363 486355982 805891327 457883518 853262854 643842950 913779417 260553215 638934399 473433689 739052878 178107021 491957631 842996616 942132133 900778037 978978578 429899447 665510475 862679336 992220219 997108187 999419721 747187321 811226904 632473158 875977362 223117211 925610678 360747077 954546772 230213950 995657983 447822214 553435772 336260340 536361047 185300523 612659959 946330739 947492479 586668486 656264899 337051445 688764982 408433589 517852241 714127322 932031522 226632918 664300476 485432139 935499833 545199348 787307635 475253688 789406917 723174451 986991748 147864564 264629480 842624729 896887365 761556070 783659365 341240545 394624849 600275119 827608093 614534485 984718992 795192203 954179615 961500241 997773413 10825297 967192753 698223057 955730976 402446357 730307826 371047290 556295852 364592030 875808812 8004016 625425906 187299219 653229591 411800343 712565817 738361962 967074109 254319032 567312463 442223714 988561057 662153018 732429393 67848553 969659985 634869916 768259457 192711768 975443414 840491725 887084155 942266180 978597313 767442919 774492161 196840257 499204331 145874516 155302216 614855878 660793693 694739439 789233547 547915960 899421713 760961499 855518883 103932204 463616593 641750501 676679345 125044163 866157961 683229924 973571797 773075558 856382016 288442572 675013243 555666728 749276711 99997214 812699525 625341613 943698713 723649794 808751656 249156312 461728919 827286730 930233080 968626927 986395256 461604415 668849661 857467472 877142228 808216444 999704625 908446251 992592525 683105108 931307506 357778074 719754141 622020403 888358367 481800096 896287055 922274342 958501579 191385746 822864064 745888493 977486991 496812371 912982431 280829039 805110769 483059917 562167705 575685854 796347855 878550455 986469920 303061352 937035647 713483813 989609909 294272069 818061348 527645576 806080102 959519727 968818618 226149706 900666846 497211615 743548357 593600082 984449910 279927782 507526116 412963006 459538030 105771844 973644082 241429204 671138403 10801165 938526218 754139076 990623217 913777743 989563545 989165969 990466508 240595963 916610708 605343935 662483275 292478863 793046002 457899647 960752520 703831935 884709666 75110515 800597318 759544742 969861542 191065151 338674160 652749253 860831920 882009235 986030408 54834768 128342782 306089044 692364483 341524634 408934969 981130083 999135858 260937826 436995421 919201020 938265777 23417028 888841756 176441875 315643804 234635640 869783598 982759612 992171722 705292748 796718465 804172035 933208632 439795549 562006815 291982832 906877243 996598741 997563633 715526363 861974402 688462040 828459424 501549436 893025793 152032043 800590179 640270521 979407495 6235007 788379943 599031734 694758612 514207141 980027598 999783482 999933260 347660309 565634279 207625960 389859460 695370637 800715975 515019253 941000148 628569231 681930965 331112581 450135831 713831981 927387791 985222192 987424412 347292282 494075630 924567395 935591148 967249484 968119190 590336168 670438253 716143542 823072692 324945792 353708900 376873909 728363669 835763661 864057628 469427483 648699222 472308477 921627407 713921630 930679179 995056568 997695932 32844692 324269639 845835442 981103453 906235543 928717104 820368522 841501060 802081689 870776901 821561236 863668579 274387218 669147157 332168213 808921157 539105391 998550871 993673074 995158486 955034892 970387795 791121205 798749334 58207765 84213811 336751869 957487627 628291601 828351397 436405646 786274463 148207556 802583521 221327671 809825587 858336297 979012659 731246703 953278743 899375487 954616398 868643 565819261 72221496 811912904 465649972 590279199 804988936 989089903 178906685 460169117 415826519 629251810 515281098 878129995 928423660 939199065 497054332 615434055 327921796 636321673 272345861 487520835 566370466 763256516 760329115 918973068 275734436 523156536 927997631 960669208 621619911 765172493 869530193 957320741 149114937 362659271 478417771 752017110 522972921 958241197 110366619 365326454 851604505 994863401 655983863 900645505 328013004 778007377 489362731 714429918 482498411 880046457 62324729 822252342 548046512 704823052 448326100 564314983 243169336 784937849 46170954 612780297 553160071 733206600 884495253 942965391 820866899 905855143 57304087 979362449 313716895 856532864 288334599 443828342 807336231 899545286 82304769 244458945 810846983 894054353 674971113 731563465 354444531 548724889 740094101 778845398 898228606 934182455 81792949 231536931 7392899 248380318 558297642 598380847 531317925 558791418 30677336 936546698 378073504 600695790 446056677 558300459 894782363 979408658 883861997 915232959 125285930 505852035 740789644 932666878 153591396 652360035 425583425 873605113 955434130 956702330 835866484 942480513 887515443 939131463 411600251 803246575 612162238 635923244 302256357 852078586 472886577 543694632 377802965 765175236 700850220 885248143 774976383 775924826 694717269 842264440 218261135 952594952 175325034 774087361 758299066 992364406 674407444 748260752 724135379 996514444 553046888 652657049 133420303 581487440 675191725 970094463 23250211 848690411 966570723 969089124 957212892 998163058 411176444 524445775 825986891 909754528 220006667 845921317 955601498 986973330 301076972 856928807 679556257 974158110 64035545 358099115 863747645 937194104 215841170 861311281 601948619 771652779 900022584 938828536 391787919 449732676 428549107 681477032 523002411 799682927 85331561 286483758 507022172 720970049 354584376 562732577 605930837 966158439 110760055 111906857 732233690 738022452 730058809 982833435 295877917 959713688 914530887 926690252 34004656 859955147 317263560 723049310 642068350 676489029 116939431 313075806 420309950 509295165 64230010 401450875 581419877 660427631 84005105 987581431 161518261 958233189 253218383 802513587 664000017 977818589 640267624 974599596 187502562 616996128 502629865 888215451 931897167 979022934 655178698 689587227 548303425 561710153 681182601 784994026 852754660 930808766 253884163 636430380 157879 26126780 651423225 653411380 248010544 927257874 182896022 457657901 976281750 976340833 609368541 923689854 907289869 940368128 169862653 856300262 532371752 822548116 435262382 480005143 427712313 745024008 635293602 701990958 165168624 537484480 35550830 447998577 108994099 706670585 380496075 767457973 450006865 782941467 936455370 963230571 735626231 848258162 56240855 409619420 486102657 501153563 549885730 587196815 997374704 999359440 862787435 998065037 515171075 856302774 470226357 755739307 632713651 711943951 362725146 642437476 336571469 685190517 208419881 816882789 1277237 200458113 283828428 406869972 208650629 940517028 615882373 815265990 319959752 711832512 112310952 438442959 618976229 918698003 427777400 880109866 821221796 836092344 534685995 918512211 246236102 578512143 429705781 568539320 732255464 876555045 570417989 895227025 840259909 901127518 989432223 989763114 591733516 779102264 450024942 817013921 603315401 621463398 702135923 738673174 812097478 840469926 787076511 977374763 544304633 883970952 765906016 905388379 419512194 751160402 875584783 994014452 480259734 769697776 35717322 700349649 63919060 246115998 431847126 507808875 339624375 617807583 481810357 768176681 751119709 944753981 256528861 850396578 530915341 884145537 663284556 738396625 490539208 534496968 242326971 633721194 574155609 666531854 402767031 938836101 397250732 859707831 9664130 288546853 989396566 995698371 338462944 703463785 190281751 395455212 640636710 938791257 956362676 993995097 382238636 518376087 740381892 999974904 896495111 985357146 304481260 378345349 893894893 905736634 717313814 967490347 160737629 243412747 604543647 728380243 532823276 814539530 582873309 700512873 802501244 914995563 536696748 626859418 930813182 931073612 699250729 912184923 306368409 459005589 704785666 893024200 149776883 399576186 36979695 685236407 280901656 714151690 372692288 660626564 563011212 819642599 603296111 933632078 821858395 825592241 116422395 187146737 937391161 984564202 930473383 974666780 862184920 913781737 741054370 959824173 670731339 974507192 132583942 962149223 149067718 284407802 169359043 981299621 884176297 963996543 872985 34924620 918402757 945693576 597766091 685714834 412831526 875189505 768694984 823883908 884431826 947112735 875125891 919224190 996200972 998280910 539065102 708649750 565352071 981774264 743435214 927460945 535940910 920950158 746446349 774116034 530568231 572233168 517527315 805942881 307398492 973131002 492437140 681042583 883486035 896080190 56332095 95164227 340255533 701206277 979915767 984701295 542353982 654503727 640833205 971826737 280531155 431312415 761200995 996886050 686328913 890122769 476666185 688368444 132999440 692916143 903003303 942011118 580841856 657968090 654447984 712828997 888898424 958556003 245837974 306036060 840146670 909521533 951012340 976294429 268507322 709720329 814041599 992668067 971869887 976719193 818780225 958158210 686051408 952626754 776377076 787370720 690666351 723076557 149552962 402512879 142476243 464183707 705790515 826391487 732352426 884985530 237307727 329655734 761743254 833614277 149610916 215327180 900012957 928940123 215889531 420760506 813319914 975451323 256869673 816653729 815875678 863585175 6125791 456943590 367289653 481462556 608978344 956895707 819679653 863256616 272745811 581481974 849268014 871590188 708990518 883068952 302288950 967426124 382973196 541631254 365300716 431507754 739199092 977163435 786867647 836857666 388022625 559636990 465478063 887148794 344602286 554975721 279796704 545183135 480045514 735732803 462005483 754272267 694695840 941144305 58041180 777377127 117029472 274278952 66749011 502263332 787455809 864662285 941470797 981256406 112211385 134241295 606234764 900630556 948349112 998112824 583478914 985981892 285171299 936054160 176986215 666087910 513962012 884061001 213509256 737443384 925988830 990445716 710380949 816794833 527001142 883457943 916272976 919513226 906361155 938357752 66542344 941017295 283798276 760441428 372066244 707272278 782233677 854749234 44789251 873211514 512448237 835732451 32726162 116178380 372089487 747688782 244808054 874915581 972565963 989215538 235219287 384089711 852789465 909191392 675024965 782948239 859910661 976788598 810877474 871964851 954455715 962032588 220141573 626862642 111258636 880611500 443162008 788739839 586142336 947211141 684737076 935658824 812960363 996142348 7712793 814129138 219447708 999975922 49017646 367303385 957833399 971335368 582926371 661400361 411810368 555345815 301169635 827205117 261935982 456631910 184498445 993854134 587120980 800295213 761045553 842730051 951716893 969913161 58138473 144500606 558034601 791701844 202935661 328339127 41123550 335729657 385022617 945014123 48160221 783234534 616763259 760924110 887789400 958686067 411337456 508345446 889408793 913708757 908763118 976788158 127351932 763461419 104827774 998183433 660838661 926011199 334077791 754036356 979991771 997065061 798188670 840169833 772690985 840973370 403910923 565430805 633486335 893822537 490651125 497463908 935826543 938023304 931092890 988449032 905608979 998089244 407157781 775247472 718616081 719644053 358158755 444054709 548557198 604612700 265751461 545274573 378979780 844204927 107442748 490383716 599880103 901250291 832521767 987644706 132815766 805264964 209136562 240143124 587850989 918589759 630649033 932229539 399626704 510030683 866659686 980363610 714640566 974635112 1841813 895743866 808974012 952382440 983666508 997778008 537881364 929658564 841023890 972829791 71615558 273716860 981954367 994472911 423077092 975706165 293194843 596371103 205973591 208113800 641178184 877504019 603306083 845120681 625190963 868761479 23394897 920181531 929281050 967629665 672663587 860841729 912425210 946234734 427278170 547967592 173870684 346166394 445624517 516709639 198080455 525755405 470536512 493843946 666311974 926075569 867180857 960096669 461064572 634834637 414860547 943454009 672557936 678563883 789354734 896982654 606572647 968896838 249764749 739456109 47703314 566652972 300544814 971221938 585474918 961175533 181426275 815101059 697066044 960651271 217560363 986520443 825329228 923110612 367379976 458567058 180189716 553901475 736883108 896997947 330500054 545078499 125434672 968955879 778488928 958044700 607651222 734887112 175994311 933213995 820487763 832002709 24707616 115172763 540251692 894495825 608100220 990798332 734945959 920007526 849645922 875583299 430027818 458023516 545244685 721271496 22745748 622174272 265838591 883198490 503872936 768338625 505743802 972209531 639002722 963878344 816018970 844421302 773009689 901193597 352582869 696400994 700896558 921753416 94282635 714986172 620169800 984785817 883975499 896063538 465310932 647780829 85054788 196288161 713641239 978784380 343092572 514004447 939096510 992459705 501628272 514743551 848344030 849459212 344881007 722248002 659693692 915200490 530081528 943372665 69669911 471366857 539191321 716268526 441018419 869251057 653562292 796849999 459969937 783177288 660678807 795650426 413023576 896364974 722553650 811606074 456815300 676757535 765609560 884696910 824953410 870205696 370155212 607459232 136395766 894979598 444857073 889580200 586750134 697687975 643016462 906948763 220739589 470918014 270930150 786870453 678749499 962193801 431802391 534752139 404905715 720244551 409612169 618492191 582338821 654596581 398856114 460234840 921409423 996296485 547789772 982332295 210557756 869733367 213532725 302071285 540100306 981841608 180057854 325557951 598158072 770513938 859139586 860757206 593637863 708733459 311853056 708348744 731473571 804837593 655929868 948514568 989565979 991969530 579710821 990044295 662674001 700026523 347314606 406219512 963515240 966303956 513232305 947878911 192690111 801056388 307050577 735734649 528505211 655283283 985066228 994368084 362428053 521637473 464716857 964849060 794412011 986609782 654970860 815324759 944190866 970130941 80380400 619409460 658292976 926396526 9786372 103399557 64779426 496231363 612991632 737596199 494491966 652230042 66928596 623090938 145226868 302368389 695061582 702809392 790972406 893724212 509034868 991950915 884120150 960709927 370384033 430572910 54735208 94708246 836706238 961793101 913305540 954398367 532043550 790573331 785349261 841957484 742985058 916155754 478035758 959608469 506005262 792889179 65561538 421169613 8129562 560301476 671345615 945127543 130202874 419592245 494269674 804383652 975327429 978716195 874372792 992983173 957747790 979753414 592660293 661730863 295115782 387663980 162959368 768687160 445199028 777092638 744428139 994646045 365608783 768301477 336810610 712051137 164908194 393345852 541402936 911162261 666181153 914354937 177390285 802604453 882388344 934304668 989016736 991817312 779998038 985971707 57719193 243204239 421403713 708872209 876466345 965377660 849931536 967693020 85644964 853710677 30674402 883802140 561279782 892718101 242974159 960243061 702323859 839671002 520317184 731247301 257845246 550295895 821840421 834251013 458598852 716957229 320827453 385527365 436985665 729982899 277764532 443901895 490761011 837858528 683144939 713248199 233329592 375266364 60501921 305659647 280801982 520815363 302375412 770359479 524467645 853639104 177369468 396387987 73086374 272070210 454431306 965547903 624460416 916373308 229246373 878173394 322912456 938864860 65723811 511748748 879345357 885765762 558221797 684353884 610413611 977713719 94688212 493628520 258567446 724620439 231518988 528168134 49730013 672350150 661984154 810871548 221421297 770979536 537067935 701039794 55425033 59983682 273685414 962321602 682107350 991263637 574528069 725789943 241987847 333110470 240968710 500523717 720450467 822844917 234168521 730984178 258766823 613650242 846950189 925220271 167017922 707345150 59171972 110075589 833299438 905507851 847157286 935116798 462250367 852858751 173536182 467593397 648251625 682827095 795467914 837927462 938797619 963859174 956011942 982606513 25423329 199273100 168971677 369883579 459779974 594602977 732604260 833708939 795770977 812154035 301523328 444148089 543178080 580287714 887512970 962723326 457725699 551750681 248299319 353764596 80994 523418706 627563157 652631179 784821253 972374398 511257511 680758934 779637362 794120819 664845977 826397830 372270728 417502786 171113762 280792659 959383430 999907279 459905797 640888909 466440545 839477092 641964195 840893933 873247926 931263035 701838861 860492680 296024602 443006629 425989524 838526123 72967529 818757991 700363617 988230297 632842357 899222071 83828506 325700470 912553361 971033963 879622669 996059059 265608709 579570265 957907104 966230888 821412525 989303823 27673507 106453004 390134150 784432546 509438417 697577737 600340726 901092194 7420261 280159570 75675432 504677612 195784133 503144766 396748287 856909027 255928662 336104306 330366183 545377492 377236883 426726639 152476438 792336572 66416720 412753980 253912331 732089062 639977509 924559023 117872945 808661855 660933780 674794141 25816235 442356519 864707875 972968003 368141632 766660161 218796724 815678901 43468838 297968769 600646263 719166165 381263525 997004949 831113397 904102782 300619176 755110433 326269929 783575134 199631121 882103914 706464798 794641604 554702409 676142886 173162695 260194695 499365292 909822144 453806758 500642180 702107676 789034912 19736592 74824572 279644148 339595335 983165592 987301754 481419659 858820584 84320228 753195774 890207606 952650404 847290872 943560121 777709823 855051381 46850989 219074568 883399135 994231993 305674022 686824014 938084070 975509073 114718091 206489370 957357908 994709075 460886813 993679418 106411740 582618988 123388017 281294934 320240601 891724075 558010994 979709153 190454685 240226879 747679514 894396838 163142299 319318319 785885255 909472675 111369821 353730134 672771548 863672417 681884522 772216871 304540379 528989194 728439762 923015629 348872943 553407151 865840712 922561974 187374472 988357299 818075465 854326408 722001273 816498127 560826508 878556079 434062744 896930041 836176358 932719663 669484281 812406363 1702697 555174056 780023882 905488885 361084373 680007807 612500974 855415146 219836019 276980153 229487594 977725069 970272631 986242358 363812101 500861066 281043433 744717640 673964333 833891514 555267503 711397920 135831293 819541506 508700391 774246835 805765911 875769727 431515110 998787795 697098008 782343788 250408532 718284824 617556014 650716382 525227436 618247908 173652518 330230191 802831469 823969694 34215544 998791536 884334188 962812176 215707934 727929606 827994104 947804960 38801436 708002801 697363681 727565858 854753186 950308784 914323588 936026405 678523177 981060297 566265839 881642095 241159752 648850209 558135605 921002402 33146031 719722119 374784115 531553666 790361463 914243634 847632264 918501147 676767976 937684036 976754607 989828132 596765130 893530724 487517195 707205328 422775248 745746754 11355856 255511821 964296975 999914904 495784590 766884474 398876318 999968870 698401553 755527538 338686454 792469597 705895508 944034851 554520765 946830565 367109638 952189617 761344763 959974698 988744344 997580395 714503758 972727113 851570485 854678580 730675885 924207292 799813203 959012293 645366128 710282450 215213806 988043759 777886505 836325623 620222018 770818538 524247608 853030354 461530758 950758811 368464759 661132502 746013747 845398392 891167564 909025537 301464010 486453389 458272494 489665406 450008611 902783769 2315295 135631737 681375446 762435014 12297887 625928603 219355565 251967371 68105981 759730352 305304767 476078757 810518671 910425830 253302473 358948722 660783806 989099287 796822818 843571987 302788259 488176611 510729228 757279959 184998674 611104277 409622498 443131580 707893535 954145548 768544499 825725334 957617112 993206799 277717500 526256828 985592845 985831563 198334847 788851565 32953278 739355389 472908815 645548981 36503216 47287116 670238107 902332845 908738493 910729646 806285963 992564159 537062063 718713427 774129787 909457191 711924269 775704983 951891875 972885225 296128417 927373283 202179664 556530459 120478552 689263356 532479068 958758462 102685122 376654224 734607624 889512631 100777875 749235607 941770575 951169792 811153722 918220858 365056737 722695036 174363988 944849005 404945063 689865614 983458374 987253723 791622221 842078865 285792155 421981636 993181054 994664391 774024965 821772076 318685585 632180885 831757657 971702615 342920198 431323050 645214978 728926437 858692510 891376893 667023663 754554707 118036908 592029369 408762070 532240635 646005239 970205362 61490463 656583660 198526826 318353878 676379507 747243740 619983127 675613336 966261530 975216573 537813121 617403914 89566052 882688940 492096031 720278884 576665657 925592874 404386161 840353595 349516399 698682827 686991321 768086298 641458482 851522164 834916124 839306644 125111624 812543752 867564983 948715238 401570196 751506662 222876781 315033590 940601941 980807312 307410973 774886706 184893786 726487170 849230066 943782540 300717738 710075602 973247477 979980338 5851740 52529485 759375373 971920882 824575346 939255510 348127769 846002674 635930654 779167501 565979757 939985819 466300986 998583849 271418765 675827373 25926770 150241602 624501660 949914097 676928585 963080932 260558097 734356822 264076241 480108131 268163845 907546630 745727206 761101745 546626506 564007952 219645911 735722973 764340537 955866711 589788030 942344280 34849072 238033587 171904516 845021104 228574496 646876235 14370981 52349839 997073042 998740857 372902135 836956751 822973390 965075434 271676100 629480566 683236799 990946446 502371846 611450517 916503433 980661419 882310225 889085249 803104472 946695638 529986561 607490982 65921726 994913307 266209074 937438941 973160286 998238238 621344782 992464919 279959306 714143273 680220996 820832685 489542854 630158192 749323003 910774104 650686024 908970013 407882229 795996780 249356092 646986459 206418753 986315484 113185859 150875291 820285090 878618039 427837117 806643474 945707289 962803151 330190715 745823998 870405207 903169123 336546472 767437624 923196111 984543767 484777936 907971811 218430576 316930217 157310780 876167809 331062145 863980570 553460390 971854325 998705210 999530037 783396769 911404214 786863042 902333049 416368795 565881206 745702927 924942057 203198952 449783675 499017544 719566478 666913299 998338134 178641516 817884176 97602764 373524892 718275506 922413508 130711806 252559631 896761715 930964831 511292575 875343832 768076353 879482957 440851640 569953670 992278248 998739775 902258028 935960737 192925365 922759638 53674734 708976062 433838602 446466437 90566952 759209358 82977946 382149972 810816657 996140443 503815599 689377458 231032649 479695600 707782228 994927301 877452264 895479107 489008811 923777394 844449788 946237869 657987360 958874327 467033080 714703890 624508497 978228255 77448047 594918002 423343789 681443815 319179066 661882859 825502720 830498774 587206868 677187897 99625615 850212174 655784830 848706798 7375983 535831689 149827422 505200750 928097046 992427054 577764340 833783513 490932653 703753156 949346205 959744799 233834384 253113143 928608940 957641205 878309894 922196837 163288987 997640575 707061522 712132176 622239839 967077581 3009008 78999850 599969522 867598342 932824116 995421984 811949430 880734483 629855953 701762695 87300271 389592242 392953314 631635237 767243060 956559389 544266743 848782176 720925523 992312130 219354462 450602234 904011986 918390237 478839597 744850862 537356902 629793614 706967942 939050460 582024531 644985188 508247410 707961463 355330270 816218326 135212558 200743573 899441118 985952850 163915719 349974457 255018774 933531664 417883758 507980248 161948484 356037428 530616326 955546538 943951045 947874694 719047337 979462633 787035998 858227778 358214215 416390949 539176506 636061184 736815551 992904441 854079123 916266201 720580004 938245248 944866521 947268345 266418729 518494154 492173799 601203564 888900938 944793430 30171738 603355328 123003214 937364093 215739673 453000940 502877540 878008488 401234938 701394261 469777706 472138427 470364327 737951654 520742270 725786727 50723548 112252492 296917460 756375382 386435552 637776940 367622606 372484199 525369748 638823896 448062838 815495809 121935027 942191195 245677180 749255922 460334552 747951850 743486380 831236388 535591235 908015967 800135521 858070345 663723599 854415344 906066029 910599473 626496942 952972386 296787131 411617108 669640603 722218953 89105244 848339085 769924893 793080069 330501890 983893876 946036786 975628999 586133361 986657837 987551709 990264511 684671542 747122423 564576885 860666839 41231711 427057725 205419006 772506620 842751158 918065538 693001453 799655108 641598091 793263117 908260530 909890358 632426502 658370496 593939213 841355276 829560539 914117761 569273667 906225695 927025277 998950771 284373251 563602383 322692144 625212765 741618324 772801265 745354875 901711872 500120404 917347044 719342405 786589258 520662483 926239281 819977200 979102424 29590891 226364427 920986638 953360506 862512323 881876062 403449606 457316761 342124864 928891895 911932128 922404553 373750340 608852928 280257648 953848908 279590255 310244343 158090419 324040481 269712794 663174037 152501428 869635064 585585083 973234985 390133043 711657248 36570985 221028272 272692625 361702972 250309747 262124792 312290623 976970327 546628237 813462927 633734034 902826263 237016148 925559567 57991057 969724253 382116109 476460073 155634305 304034485 724990329 840423548 830869160 965446174 845504516 946753818 213577234 300547178 813523552 927007850 66582412 289689607 569003754 735136929 147432455 328556834 829342158 990254902 478747887 854015834 287012453 583771455 250087805 596151612 798084138 993611681 502173409 519679232 514807126 518278672 398109636 934398578 34357863 63121501 75678518 208753243 676024883 723166990 792209576 987818435 6725155 676898222 306083320 624148668 529279040 728109140 25710717 445140086 208352230 899917626 404505147 633742899 602236627 726937746 407477337 482065856 718345141 761940770 475307492 722672158 717803405 806504361 581243298 804538121 32291807 344408162 474383657 871556305 680287454 740763598 499280997 822043195 650858687 881674828 421860963 486238170 574997405 655938347 45625100 218996133 98282606 569019493 228142133 802972583 666241867 760052094 46552288 691586320 636935471 970725940 697041797 980150854 600287898 985627519 906930745 965506028 153092901 723684413 145384813 989975966 374835594 424813069 125832049 323902489 507315477 933251075 960757089 979352734 775531889 959952322 899974134 932565780 805013164 996352810 689343435 749398844 900060724 912488378 899299349 916236390 425438481 910603448 849072737 922942030 450669884 970446186 545967555 647513251 668686627 908085909 858149910 930103893 695506426 704079980 634171898 785566152 124071815 249555132 606311476 989491855 929810308 990960027 316409648 735818941 382376476 823779338 190946813 844910655 519207542 593149384 725194821 924073559 392736425 866141354 923851298 933864707 438090003 741783128 731523513 924427410 278776138 621195865 645381437 991797262 687121456 940680698 888610255 981913760 32715222 972805677 776389627 931687103 278867656 990550681 752956825 990340500 474714302 502750187 375092178 909658094 723757920 738897860 150841568 581713959 591114134 967625449 748203926 771998261 675172666 955621311 921074186 922611651 786806725 959551312 268703945 387855564 956858920 979886825 903330065 990372957 954932515 965680824 143876047 338036092 717096586 883768444 428022350 874643101 555507283 681106842 3482340 114717205 133560137 518299403 631527889 967121084 528623628 892044396 586624876 749072087 480359983 914467353 430777447 487572323 175819334 547862622 826127693 852176280 885970292 979819531 12637670 347552585 134573300 500249210 582186570 728227796 897450341 942917321 503268098 878197952 869414787 905230707 256544223 581046618 939832378 949551159 678167351 999552323 780113078 895772815 717314865 806881606 171849087 406042064 419098289 909329451 126904021 836942999 929522211 962965030 638237331 878676394 904116977 929695616 626672323 739176940 333137589 908218848 822953924 949459130 385605440 845111975 367668592 935074446 901969093 977216304 819672265 947434429 33221253 302149557 318787964 934751731 484582510 828647563 240601401 569110809 376074483 503763778 331932502 745232365 8771476 316822113 677906994 901513930 554696200 823991081 135955786 507122460 502183796 535949153 44403482 655132893 386964558 968992148 898799234 902331791 358247329 565240710 408002379 823343213 944693270 998602689 477481176 621720631 78031364 236525209 306514012 587096771 16730208 513094215 896726571 993795030 686013325 791968722 13615952 507428903 453193963 695765549 887738910 983189044 774304899 961447709 269218823 808449433 242257141 577852483 938438362 971725460 414523609 822858500 199042360 680870057 757290356 910450098 402884375 995704324 342240818 382254497 836086983 951377825 622349332 923489285 325500551 369153043 957335082 983726473 604265659 677570707 568593038 990211933 921359745 925855542 528589585 785787793 777168999 960212808 528427376 559780715 987316054 995541334 537187227 579964438 245922583 360714023 622577745 797816049 392945731 411718086 234436570 271714871 760010661 848984311 39954012 740238972 907328659 964221768 662142776 903565927 812883271 821620286 778234406 996510640 544888820 666336053 963925862 995399793 67763336 271987533 920794757 954906862 318878442 787841241 676265136 716078494 41859493 787735487 998992780 999592222 489976186 513080240 373116774 802337883 893144935 936200486 415424153 910511399 109529973 617948579 857444249 942169595 596963048 808145465 75335637 747343668 560667746 657051370 859447568 890280726 609792423 910161799 795238768 910926435 456129004 661245113 167597492 723330319 366613235 598615249 500668617 629926697 905388803 910762620 250834807 508609284 327607143 929597119 361700967 568333067 808562877 952712004 490991308 564693353 521865559 995471155 448518720 824234769 163501485 784353309 288415576 966766246 15354167 495904938 275619727 837247085 816952315 855360403 652273673 656541396 844713871 947962598 353753582 894447696 200500116 815656596 264884908 663824907 461230635 704945929 353342563 457428619 783178691 788755843 760110730 773310722 233843636 540926695 259551876 451836701 622945406 924831597 803954956 962102906 213053545 926168360 85367358 669832530 380341051 879025110 701090054 863112544 374986625 769842211 245155061 833218230 713460233 959510753 343837398 629067349 551149241 900507234 166528737 480198926 945449948 959584817 369693869 957617259 39816950 367762889 264454510 328796127 890982266 981162356 102152696 674837225 219772124 861445392 816858850 945828378 872027694 895344612 815980219 927977142 658560255 818977334 50040370 974485727 990934421 999411102 644891476 800628839 7544324 704645351 923188380 982308777 325107239 763014485 58960826 351236131 153971275 662828487 335739553 858917821 613901010 671762112 566809197 800340911 577910050 764941014 877607447 991687987 408075233 648345990 625139365 769746599 612405423 849122977 958569497 970885270 64298815 736582898 76387849 949093603 539085306 801642921 60124113 220671873 46084636 886604775 353881587 361405400 31438012 510424398 965574780 985068647 905486801 932861604 856349900 973985895 430007854 741840833 960074076 970217291 959413525 971836616 744388048 797851485 683887484 984854649 255149581 391572260 705226813 711451772 631980013 742485972 80553744 619069557 185282291 687400325 359337331 485603657 601027198 901673393 374503354 486496874 543043713 593745618 138420131 511690975 334644660 537842321 121782107 449395924 604195112 829826871 451410213 774984444 44003484 214839372 552164694 958447733 260334354 547870147 282755593 715427187 317859306 347622174 330265160 965097650 436455369 937811395 386505614 786271370 726799025 915805517 131638345 852793215 681034621 696036301 825799450 930619558 761150198 984799508 618627504 812531220 182795338 376644245 471615325 634124047 201921969 792884138 178617246 308108494 831756703 989043317 529057110 721472034 579623402 582155268 161747187 792437266 882689301 889263771 696640130 947513923 148652162 523029252 972475795 982572923 66525589 864206329 130800574 322497315 184780942 458051482 993164217 994945429 982809027 989376166 672055907 865865096 507788196 968282964 600327769 949805223 237596664 925035218 656747108 720819604 255475548 528509287 590991001 988371790 404422086 413941191 814956183 948908590 93421020 645855331 529576449 747058156 744478308 792721988 473597101 752405948 556856013 872205614 964834499 965904482 801156276 966493029 725260434 883990061 72534890 628298719 516135653 687909493 29314529 732554800 626162537 948007045 818466443 991180903 437855883 967992219 729180600 966692692 308226998 958756360 290904196 509456275 111046283 860957088 35274519 688668720 987733415 988822652 717661920 740903576 880514162 950616489 660804936 987378948 977446636 989941182 456362437 851347505 742985538 848434269 817864322 999101097 7236147 239074849 912923983 979471028 924987831 994550062 278597423 863741421 906068502 960779909 126843049 843230974 106770932 556773984 306261668 852653018 684267259 830574922 284783010 294321279 196048970 837915914 332102383 711661215 313687868 347052176 191818337 450244596 78766965 316048450 102700670 619912459 343660340 772983819 692699568 769887720 535696815 825945017 258682478 271662601 88778892 249716062 568959056 933005619 139295449 732822204 109908726 136221227 181587981 289388146 839952967 920577776 747747925 907335664 693594306 942249441 71758412 706616395 558739612 914239475 48892056 598587289 595792365 713228710 98841631 422581568 698454104 888940627 39920116 91120871 676846454 914433326 163416099 951229840 727182477 745517763 841496469 907497431 838625473 952578602 25503673 140568945 583102938 789701055 734089970 915540632 915188 126092732 316946670 842482213 728539411 834638006 660998250 838989048 314725902 503355677 623436825 793481515 760632929 840348355 16596974 852124892 676290938 992749770 273239614 677714622 524118983 898770455 953721111 987560937 742119699 989384832 196726286 541056306 337522555 387051909 316316817 798480573 556514421 610468374 765265288 917637961 733973633 863912244 539293932 955180179 935129786 953127705 731229687 976091574 151407019 259057484 731788907 953038508 664642571 848318055 210201175 924471249 660252829 984188683 133885114 596139691 905778190 970064669 539156480 630434254 990227303 995835123 917338602 972831313 636613417 803518696 682121367 969938508 278948520 371124646 947183056 997094620 967992344 977671645 444292855 535175360 439294105 668356111 849565529 884426986 146211157 772012076 513478218 770298475 23041134 85311532 270282099 965502165 875210703 957597991 590530757 695410003 453585534 938664843 748838571 862478460 140720908 773044643 469109516 659553022 183613892 687356348 624416768 766703788 336586152 942768382 525977530 950777204 911070110 921442270 403898893 485316032 478275830 708442425 306388836 778947629 319446125 993030996 918598312 946126595 93025176 344373421 997385242 999768619 696637575 947353809 979790528 981749458 595264227 752889169 442421657 829172034 355753170 546751272 735892892 792318891 25929255 214535466 465629471 823515102 756362832 845626637 679337107 696484492 997560341 997823275 425389682 748226094 515902782 722737537 776536389 941613208 815096759 882595689 872073292 986832522 210524100 631724112 130453582 759644483 295239902 835678411 724864591 891603159 552702426 811473649 138140236 254761082 844436826 927167998 66288624 188145095 928243343 943785667 50269 939548383 478565366 659714491 795950402 848542365 917986468 998604168 317561961 905396736 550034446 907799752 661801474 825051169 410389996 691928079 643759388 817838557 629327479 669429386 835820608 856362369 424893786 768775714 296612311 322013349 288787920 867529266 620291119 754067750 180046759 720797565 603217817 897817648 416763432 885334287 5230991 760563685 868142835 888201969 249503030 428278026 296694200 315935003 338814408 630841804 109965900 222020494 832336447 996863592 251418110 687712574 664775742 976564178 891512192 953822850 7766834 194536960 980432983 999191195 719581138 952304019 694550523 863450458 807316659 940479483 215073966 933805512 431831417 853843064 435268246 580555419 907827722 985731710 445629158 962646023 92227338 846822011 575882053 742933936 423767260 899445617 674844571 873833523 225572852 826941055 460881789 910614549 389448846 731211698 611150308 659184109 612989722 653996923 514531742 537527513 125649364 448709194 332456221 370696181 136201668 733810340 404564566 891661346 402391992 734183322 975084865 995701974 334866878 961556212 955169994 961756847 162460018 807331811 403831597 418531911 206680119 398573364 494131452 534624696 305141738 319051250 148577168 992987817 824215436 977637754 219407320 651931690 654951224 658533886 528453740 617988546 894127619 901532149 41589354 289853603 360977378 654926514 282602036 908258067 711089675 803189814 118959496 960996476 570958067 917609717 809092545 920089044 845024526 971744478 693980808 859179748 939914332 977698331 82859548 177623341 769287044 791013810 608835522 765552261 326988730 535150137 908104153 913172584 911024185 943370910 677704038 872807955 280283717 877763998 686052846 812609914 814928719 873872033 823172131 877514801 760049764 875635352 265190617 915073485 754628024 896040022 549136531 660948752 780476947 864281180 253948967 548935687 939082171 971550054 790444294 870202082 244615 428600493 835754106 910738649 347182312 956424596 540105329 751163047 54633971 556861717 227721053 360752041 984741893 997519004 614190047 945467720 551308738 576797090 281358160 773925554 213307150 822817171 815735505 963387890 371302802 977386417 864385421 881015762 638973409 924640627 55294661 761754332 789947330 871372682 476458217 638778430 882279460 942995247 589250937 746436503 922743251 953486377 354720165 648841555 548692579 734939842 640175604 750695064 771152897 975910852 192132961 604891799 699117795 978213583 526741206 942066845 553966394 908474464 682729206 855966224 191324894 492469642 358441962 971091029 459990701 782113114 704866102 752973277 504543979 692309395 673428314 746449009 538224162 723767377 552984825 928036709 985361153 988557099 901464916 902649180 623074344 985223203 393936472 938827961 909723081 919997100 131332248 300187287 9414042 653914606 494771204 751174512 932382037 934965058 752755918 822476575 336904153 375181610 271232245 343631494 69012531 332178482 801593437 831185348 979824338 991245868 621865418 637390999 915662270 981419230 371049245 768440194 202838428 263564950 416022054 899440795 75006038 201712358 428146117 812522752 619936932 801566985 643445834 672616566 156498958 711597258 351751194 369518374 721965499 833523902 44529745 58892588 150298356 884544442 487670104 911064203 948309055 999293481 526013792 607217544 192093662 376932877 770189937 850535441 39793049 998626436 666582570 958105789 418658873 734081377 382177006 523592349 932067649 985108212 274802968 552847825 203351229 233888627 571378703 791911908 711571477 855577923 425256849 663812572 544143327 756134693 946605582 973852973 974251856 974605870 347272734 572076053 806448697 976702050 747013111 880431360 970653074 987301310 441778055 972856137 391159116 651261169 708228314 727220861 511602524 633460346 164554714 732265221 260977506 843918926 648337253 792071161 367321004 933355849 636353938 769943648 250852880 714353118 808609266 950288203 716662233 936462914 174382841 551905967 900113708 984152802 493747788 835575861 370279965 562676403 543048418 761245453 370509834 635474268 974620108 996399036 65579674 108205415 865064391 972167372 164762749 725941924 650044143 865896743 868691281 936050248 147431329 513327806 600905138 929918201 760942167 827720478 598458318 761102213 951732461 954358153 109810869 546199275 673844282 764845583 339228584 904106688 790196961 831521320 320341504 559846265 480707019 677443004 356008427 360325425 157642538 312792516 641722326 942316935 503172431 952776404 450206015 532050724 228898818 714174772 519423807 847691325 726224682 814086799 897860015 967634556 610299597 732543667 283771238 714057477 154117757 953779258 356981581 695669891 464315926 728699239 808315939 836362076 356120596 967542664 643148593 847115830 108520011 352898908 375211960 910199386 217037368 857854888 588461664 803622358 230731653 869392971 855066398 948045243 838883571 844484913 287210133 816671564 152571900 686012024 786957752 968687720 252173976 327796722 127375349 876882512 816651084 972846480 381993081 536983764 349692130 625450669 379771756 608121617 50441319 997799937 352888553 985556849 783999002 809634321 781416611 998307476 224022515 237651767 252152742 755403249 448739606 503753438 487127212 558473747 338523816 460895823 707808648 767665252 433171496 912568217 582063334 857955057 221603288 869647856 60809119 523209771 454413738 949306073 741540780 911065404 556243407 786860818 256299143 576648724 365800047 893550106 963880556 974456746 804092017 861845867 338083100 412427053 987570618 991099717 23624120 974208121 282477817 823766288 921119320 963469245 118599289 803902982 961842333 974215985 757382480 968038721 848255605 889110038 531345028 983234649 768753864 794868336 924459820 997999155 356245153 713390885 403044879 945767441 749893521 973228029 306752882 424039689 842418375 903370094 407605152 637237933 397486848 970894707 495695248 814879621 863003166 956260572 465799486 775978039 151441801 432572228 641592941 785525965 449827644 628486053 345726866 850992244 809633029 991484715 64894728 889428343 227542410 934246525 830851939 979996931 16885186 105132618 397038272 662441804 574971679 919052387 187175763 213802996 406729127 408985983 980769340 995096061 626878158 652585250 212639091 304595912 698442530 822821204 311715126 353102788 532665957 844692801 203049946 243426193 283787490 917630512 910247258 925759429 732244556 913878261 516545833 571430160 601091720 632240843 264673378 575169558 477371182 918484627 263632864 500166661 51798327 612028426 95361481 244216850 32735971 36683872 348628172 837382402 926847105 930583134 218064861 863247193 656481050 796890835 581839900 749248248 710900065 956902736 980227715 998112356 548891415 674559738 770312657 900183267 171628678 788465664 224333561 827671804 902987848 948024963 128526704 435162368 581997322 998378190 649446420 649934279 410807801 818239358 736624136 960840440 330531472 704774497 746379605 749383164 964782998 993697232 866145658 988586689 485699842 988148243 264650148 318887149 171986833 273345689 218791355 836885700 747791190 899465572 7139716 370186852 595812495 648031686 669925852 919213323 305356453 825569724 622437074 784080258 775710395 804627600 216965861 780470542 588898649 962346613 994458928 995249749 887080668 891888833 526847885 870308181 947278881 987964077 789484666 904024673 932759355 950290907 909462552 945283976 266738139 471871443 530580136 649044652 87830134 935942195 375895866 944910823 228884746 699992987 873590351 908604669 210007022 777811027 903794053 998848302 420346191 811681385 52751098 79182674 807080571 981888585 827049075 988802247 309217728 385826729 54118552 590372963 770854389 999938637 78751386 460804387 13421224 431191506 407619259 896412233 108153153 229331367 570180901 928006156 497147572 649477758 432209492 733751941 802044285 804116539 66961479 718071673 11156691 247794363 343172320 941026047 556204949 702947923 503251495 789378719 583014823 830274337 335356615 940576031 440264048 856551220 844137410 877885261 704382378 877110997 46868694 137709880 881918707 914818792 346491858 619057387 440208301 847219828 804019915 966816804 82403044 779731868 62409297 889217069 828621280 954923424 827131439 891329159 32355602 232215411 873047336 995251513 255165041 862853990 627354544 845216550 797973341 859113808 40551426 426672157 358880888 491005581 606406225 991887661 446584962 956562514 985373118 993521965 122454402 949244142 76744583 152217955 133741612 721284439 605965924 637468266 839336825 966333773 886096281 909755500 502812345 758423385 873697537 973259748 166734968 637375450 114699788 342405848 95309878 564130021 353490370 935714463 224669531 925629467 459162122 893261445 656274344 828180958 206224643 288867953 876157195 986878330 672326177 717326103 644695289 817022302 15715497 663778327 342259874 795483524 197635428 251012400 871513208 991549621 753656182 963334393 386535675 802141367 933364822 975397624 227243765 970415864 639241257 791477652 562939450 863259676 988522724 993069775 434737732 446215864 88351652 504913236 999006981 999920009 268097185 768936436 98502582 173435641 497456368 707106646 480968408 686669363 640679596 887593886 354138551 860671850 580906043 679400415 379568386 462835099 943574622 983861269 847371351 914805253 385483308 964989976 932861056 979096959 458182383 682083240 426719320 513226056 344092963 975477556 665734171 994185542 171313874 780747234 106702543 505016871 606246021 610051749 226871974 289295028 347340299 411787608 847909304 982755637 77451552 638915422 65814483 774497135 759103951 981198491 87737914 176363124 413980086 537065996 837564812 865460946 918363815 978225354 915989543 924400547 878749312 978207913 526386390 823611951 355163913 533321120 376708794 729129539 5621954 400783668 490897425 707493559 829259646 857452428 602812707 929472862 590650833 860741110 460661205 883443992 636393996 638607743 20639885 807553827 663713813 741569576 823684541 916234566 639196284 847358348 592949885 664440240 126690027 805701387 662571225 875508250 877369081 954561582 464499558 953671769 487021333 656146967 515748599 789919513 311748668 786269316 506326985 840382016 769320593 818347909 639859551 783648519 166198480 764244142 542819222 622773355 786408188 831409136 494709264 592019187 931618563 974352182 833226147 975778228 356548896 610863207 176999837 700017914 644499796 996021845 639303516 822242940 497610077 999340643 903996050 957838019 48004517 648175344 627371118 691763127 638402127 835149179 739440222 990263904 484776561 867802810 453245169 692416312 342567110 997029288 583594280 879644980 746919636 891484612 567914513 880799411 779077647 938583159 267292411 873690764 432675726 470149205 742837555 954327093 933829858 976197155 660505923 918859114 149704602 292871225 241846505 403632335 950493753 985162208 225657503 528491320 287022426 429141634 30062970 795313258 504768006 991922473 83250019 996917963 63129557 623535464 597346787 727333969 400960280 451009100 912130225 967853096 931228098 954253675 273922296 470211892 593727979 949088398 666053467 770955501 12019953 582198260 819101583 853408338 559103782 685282077 669865214 705995758 358667661 818203912 530401856 959759880 200433160 505801673 349639203 558824285 115707166 452624801 514863388 561687903 979477840 992509895 566918626 968168207 871344581 929916528 696160601 993427373 476924488 533540649 208924534 368858655 779863911 960335807 431632558 931915468 243127215 588265772 918491511 969652034 592991338 676304671 999211187 999444174 132507772 216909729 632614135 741201034 669145943 825293593 155257261 245193905 888123386 998481914 885775538 938812263 935251237 996758436 322012480 698410524 892616708 911859558 620269398 625953724 78636277 976854802 185131878 819808395 182423084 769699278 64050853 936044294 477588568 480208954 600870507 773111626 831836865 865417238 443173108 716327152 820559996 903214039 925170894 966754852 262033225 593462852 105661926 767362328 917370122 989138213 155914428 782080498 297589243 495489111 799524412 936184892 336698482 745054413 957884445 978089950 665213823 699871602 558669203 997024073 664299085 789006116 7631510 451472224 189944726 202186325 230571265 720944398 532612370 919201433 397568842 638568516 473428200 618997722 724009183 915186435 509602480 893305312 522533557 624771337 229973206 939459307 343831866 806411737 929918334 987000517 986131257 987363987 488275338 912837877 839351458 980671085 48882862 181021597 354912892 783477606 269579024 567497160 117128631 803510002 249213245 986131824 329009947 555955722 880138790 975542818 712469874 971623341 522751543 630825315 714271094 848556349 692449003 945497429 371098197 865075576 207859546 409277752 880677170 976401400 383351365 397129681 692171731 768973989 299415174 880920008 450345471 451114160 245234602 268190114 361804162 657041901 295970989 940487403 955929298 956272671 244699431 506318209 371379732 785124820 182160489 295260652 240820155 816899062 875111525 981816514 46701535 368370579 613599779 669879939 858652952 927426986 676818791 781997275 396034419 910189803 245456995 860984473 267151164 925905311 724327757 867074966 674915556 817790032 547704726 581650858 936557716 947891640 115188119 325617954 374134609 653720496 632299199 863934587 835487782 919601080 31345540 110020597 780642565 950985152 817833508 836461046 828483268 922375190 837981868 871242452 416678625 696529379 228009306 674548716 8809272 852494331 284544071 488275816 495365574 496738455 957041936 972876152 841165868 941130355 649474832 833910379 978334495 981669861 843094028 940676848 752143552 913485860 954021714 955754817 966624863 974805898 420648683 840482873 860532664 985619134 918086909 943140673 302973674 764427696 40679458 107489490 266260911 926041839 83436741 926326465 69434337 308668385 563614920 610298665 217325680 912245909 482251712 958324132 938707664 944852810 346775004 520676057 741056207 816094020 159365584 343418121 892778182 955797198 496000685 773007834 479188607 600608172 629263500 659598693 539252036 760250899 922135917 983236235 678454700 939761574 402108401 642291646 258353576 409983288 623529998 848276837 492892284 846821352 312288110 403067573 417205743 935046103 949828580 972087826 947544126 960200050 554525986 817838228 501911575 695081722 17072293 909382801 122278080 858680906 479238284 887574312 620957418 997933991 638572998 872979641 347407447 776602182 414373428 981459592 688041595 821060747 915967903 978827299 161724810 314212236 573170514 854514790 257182219 835120500 472371862 790438657 247430610 903558757 786482032 850798312 456988320 553779409 328378782 549225565 936207375 948866611 854832539 987067559 927343649 993924513 685523557 929688821 451470770 775175544 973970563 985011008 626114844 706562573 30552722 936656391 621360639 770129373 477842137 652107060 196508006 337115364 202753534 702788921 212085356 891419904 314223924 427401430 126624442 980448182 298427360 893360546 605608520 818396187 244904489 386578555 635295016 956023009 568600683 823499894 638743167 685156765 748380569 798648191 36850433 247598602 53998003 214814044 987624935 994631315 101918412 155477003 4428976 944008500 695759060 810001117 875517624 946464177 249491085 283392296 291348959 420849872 220094649 639253413 136788218 879220740 1060199 474559998 13195139 508557398 773615710 914983741 658874964 917104365 423025182 531436033 688116183 693177577 592557454 717088795 819724769 929779769 644498871 753365566 897643615 898280958 893647402 899406067 35004305 732433129 35595061 906114356 560361084 991726908 895405732 986606363 286079052 685525388 590252619 701000119 391197986 483571738 266757867 412728565 817339791 961753524 9220361 918628200 20136754 817456318 744720193 819223069 184085634 770861958 233188206 882379382 802556217 827580036 671516806 677541624 692099590 825200549 748514570 971686779 409277001 958394014 272548875 593457000 675801988 911209057 153046466 673143283 161120470 630106667 823680204 923270717 904351053 983817513 589921452 971817610 55278764 464141983 740790044 858491190 702549190 852382908 771048249 987435130 40232198 379814408 310107430 319624058 324316672 418614685 475706666 711930149 292427218 613906288 602135631 940024493 550864455 835861360 681301691 963337629 150830819 853191383 862387401 973702733 928465244 967870803 739690820 954629498 323948881 374529448 12286258 368120032 82366739 147486454 558538367 802917095 754108543 767821492 475289326 620961091 303217433 704365243 607423885 715899518 201327426 567444764 861216722 969100807 92443755 563770802 15437623 624648562 936097368 987512042 71504727 404488824 611316308 919242834 408293225 890421046 735244663 927526305 88800204 764706229 996897613 998995052 803879952 849849788 318204259 393140804 450895652 817166370 579970487 809844519 847999630 982003517 715671636 734885986 854768487 881157971 25325695 600055564 817695880 906911989 675161082 885779232 146833927 146922170 947951205 988327467 742013598 836822040 451248501 492589945 817467112 860720993 624121519 959768600 681824162 985663161 665529090 994161030 766077628 872181374 137866250 500963672 866636533 998968800 564488643 621458645 42165616 781862197 950359782 965513845 2571223 366672971 692189288 732703369 974985794 992406413 370134425 804025389 32326987 547621698 848060409 980940213 184569882 373558336 542580814 557674141 798135552 901794483 28357572 177258594 852600482 897746856 156192420 883415241 565694042 675350513 790598151 957219983 107745938 384716484 56064416 544610069 109524465 295706799 521232767 957530141 484186785 496328150 527107534 870936359 995430641 999084004 545440484 894549547 24110217 562431580 401890684 669789715 853400495 914255932 58566523 986457572 154517997 854096279 145968478 498855087 999235600 999790086 489055761 548598800 203841640 542603137 966954455 995339612 703316381 770836353 760620472 906642889 312752800 804822870 792278889 915900809 13722064 598904057 905885484 999967821 248422830 287053152 377916364 649813643 836618403 878022393 123389191 132527916 227976364 273006424 116033359 398565604 859495690 984843230 300450553 622587890 987148274 993768357 801963773 965699581 296884554 536379291 104960052 766419704 807316413 960861146 267170669 933768665 669712121 989440962 484045235 497169818 619578098 692631738 979866607 981561209 931387258 942339772 934744294 951123908 205803316 542440075 776819170 781779226 728222127 894897843 591340598 947723916 506611920 774520571 338753748 884990544 923608198 976699696 100838167 537813984 565578627 900361208 854713419 934857186 296908665 927476662 829515848 833212312 63868037 495478651 756926664 757991161 263593681 489903044 334803568 667621704 141718973 322064088 380227481 435945402 298698221 900972586 714537161 810522568 927880671 989037478 352750363 540481750 339835045 353966054 361709918 603570210 516715537 962533365 773322432 871578019 321294799 636230223 95350001 530081139 281623147 683172346 611721673 960034303 574407488 683270219 410543797 552670096 411747670 991880867 144836813 543378867 889218828 945223538 151594763 606687243 610375014 687738755 446944115 738478675 426658530 778869913 615146471 952223344 71257769 996808573 779826881 808440359 564663273 943306230 920487774 949938247 118047255 192129418 729731328 861765629 846666715 868251376 967340462 992966964 970827687 979538224 189276467 908760948 584592082 771385295 917055818 935253412 390969832 454757600 991817107 998809591 170624152 906147831 689272339 874345685 296630555 906556040 774795793 944628704 240331059 639510290 592999787 851562926 33082613 878768657 346287705 648999514 119276366 415175338 420765597 829237456 963038467 970439878 208401282 921725649 715822214 896361451 105237208 580550355 155066000 310435267 897978101 957239149 475687610 533661558 229790768 943832826 612993140 690769663 888548678 915563844 998783816 999347605 290035453 690537859 804397038 843326921 463082727 652880317 794465730 965507454 778777657 805965645 998824900 999435637 599935228 827323181 133720501 503202355 500529034 942053158 251998050 312677996 674678683 715663357 809007012 866464741 118888817 845226893 998006936 998769365 741252655 967272656 356351944 822743925 11637209 526349196 836894404 869799535 46468406 402492500 507267978 823273827 465853984 514473899 989329049 994171004 879002498 964131160 755013881 790600449 440890013 551318673 320007239 929126504 752557895 842552389 980710447 991948528 153353669 806003017 412499544 799100168 723490088 847140294 729514285 880716539 385540273 421598827 209364441 468993487 575710366 664656645 965530727 978665923 586691726 647950970 916741188 948970867 308926211 510889408 527776276 899804145 789575142 806221792 371469307 635249744 750929985 817145753 595662016 624345053 369048348 575448852 730532746 916298730 444728724 747713218 624705830 673671669 742823374 752620392 22958586 682571624 985543270 998553469 633936892 674002367 32106265 178736589 865651354 944025625 917922253 965065389 165982362 665396555 633344550 979057195 73245909 940168477 566722995 899910249 148814333 400351331 772150737 936545503 149104145 733047966 728611985 983228467 80657807 677690622 31808794 822088908 420979532 444845761 401960504 780316675 914715932 932388933 900489664 909791672 965277101 970354636 631251624 881075599 290680463 620842137 486437914 961755439 360479150 852467232 202750940 370036312 4970335 162515637 42512287 871822406 177091355 524991126 409964777 930881075 941021378 993548841 111646425 660800171 704858645 894204375 786444153 904507614 343645577 597083639 796706430 992564601 283364752 953122351 992107841 999638263 692939218 900882122 420233440 931861501 766141440 831381606 804612562 951438654 39755344 688070377 78209866 137814663 643132183 720171397 363430736 519275940 521533691 692509605 177330912 781178821 984689674 997089089 963786243 975034106 225174429 227491135 148718700 832580121 640540116 695957554 337599375 738794365 991722089 999585801 703117249 780209358 71244136 771976465 104641355 735077178 367699532 959718227 463406200 832451748 415367908 494901758 141298923 734852827 756457411 963453996 291557920 449791580 936809432 994238845 476295021 639982196 36669363 422004190 645716639 832784069 552915456 905175256 111181725 196147902 868792748 985388533 282479543 500934379 335311612 934748084 428869680 482819956 676010861 992802073 214688370 350545485 766239651 963240179 761696248 930119694 592250276 843780110 487065119 802359143 793790808 851577912 338243952 538779229 839186567 999199623 135088036 155440948 734817393 763271069 990843567 991011178 877448284 961282264 796705071 846505819 297263680 504458875 485589143 735602965 988646687 989269473 283845067 828529271 462377993 934076461 384203486 630299212 235438344 902256881 403989084 489491168 340020438 419896638 298139240 738922018 980752704 990341957 449983834 736971523 121241386 624230212 531621869 597209142 756574051 945378202 252639547 799946742 721993892 945951740 908950526 913268944 605092770 825617023 324262835 452981469 986678900 995646761 954230838 988513238 378934126 490724677 529740542 599352698 57682677 947940742 3305393 544944175 548929533 905428896 106884028 862864672 898297603 976587908 241657779 798892050 252156714 957626875 41246677 269339588 683848880 906734498 430807383 870730097 475187914 762188490 236897689 894688901 702017767 810159880 182213523 450172782 734265023 828528759 439672719 829211241 868250798 969086289 296526646 952427268 500001584 670233247 475637701 837696008 829125882 939124045 720020701 946201141 867356784 937255672 63456783 560758015 848145173 962234757 323337481 589085170 965766160 981078634 652762398 859704135 174262533 920284421 187202171 910416234 29938905 175811905 887686135 966326079 938601874 972047168 870280781 902437689 178846888 418745022 399103884 877452108 319991399 870192705 125353085 174881119 261037035 782546001 10194027 112472328 254143313 716271409 320209699 544669572 769701513 957424631 302321094 621397523 236635371 708293717 757913327 970029396 626134843 816919832 368260292 669129999 144718728 521884919 991560226 994016918 610937164 823033117 971892946 978014122 643392766 895909854 435905550 648686718 12898895 842496128 609686626 877927987 202318063 700778752 243396965 308309154 97430148 420742540 177183404 330608408 652347613 868359960 24714226 926976643 341154342 378532937 327487926 645657123 736780644 780900653 737703955 774958428 865498412 955753591 701742641 963816677 175992678 803069721 457819221 523708897 841795344 879114419 309384015 839168779 770310023 823941267 529788881 697593865 205636769 349970404 185106049 583392434 935325631 959668825 890516868 935544178 912849550 991600292 129475591 882813563 68061305 528340956 954580563 995462488 439594179 614607450 556675878 894367669 787711636 911243434 946466491 999750163 611611238 955917054 403866935 899095210 704963828 773878490 388647450 925209524 424455005 836076869 157030567 670117626 611114118 929528117 551359937 838481260 9394309 513873412 712766872 806814645 956632561 993006958 80605034 593518669 129531899 588633738 289754924 966363042 82416640 682306173 990451871 991226617 588671948 830993391 333613658 855576632 199536394 643504749 808405464 981844352 209157555 796894096 252557950 261319700 958196003 977506643 973145593 989372856 476915061 743649549 729667213 741767405 251608032 542342027 290344761 349078271 567722865 672203431 591733592 683051324 786986168 857959371 806780403 815315129 895088630 920287950 414049062 908952661 264767750 540721410 267064602 805321450 586766083 622502854 844841220 926074052 516846072 573429058 7902005 997289352 584891583 878971018 895686460 900428432 145620369 846728387 261372977 989122402 145935878 183293196 119931642 451732303 689673337 738116760 115334207 436675933 21551930 373426938 312040470 437914682 676920804 974431266 548520881 757717470 313079360 516291691 635352294 963621616 114098125 521991359 668254086 748604913 338448234 420711899 881736316 985624446 63092367 192832915 707858416 837875816 934206390 980219116 220242178 523614978 707618221 775543619 425141483 697987128 289620268 907556858 525395495 718847085 636846004 827225090 155053636 725213866 577264783 999446313 876982997 936628164 631404979 960322472 927867793 946411433 554471837 713226467 958019751 976132484 458048070 469477139 214612265 848703343 181896453 693410394 561444817 591682740 409566086 433535501 467891696 890710531 36399059 136708436 700291341 792051022 948101783 970316344 526936528 866145288 252860337 372388954 177632153 345219022 320831814 714919496 489150251 875694767 8977230 969834070 987217438 993202474 425431782 727684126 991639403 999469676 51689252 500357396 677315897 894862804 396644675 845957134 927809958 942864457 84501104 497974504 603087916 617429697 477452377 965237194 33179253 886148693 48120239 777721977 389363997 458210092 962698387 993990264 649586068 666759157 869553512 902379274 422470566 983908727 478898455 870224198 575542504 906775600 94698426 807699762 171394455 718021207 185863473 377738666 280149833 853411018 62640876 430430575 53478646 361759029 773946956 880815354 113754019 198246796 554891310 817398689 939301417 998831398 25996956 83121765 226564175 982942102 206768087 309496229 682666244 925387696 256633894 278371484 803533451 806480112 96260327 210259111 739010746 913007435 301811555 557733587 124843901 564158764 685023777 984338386 598756236 824052817 221562393 270951274 897290707 952318420 568199710 871329645 576390492 649542222 942644417 961493112 207686306 508885899 240061539 851586505 189117928 868535413 54747427 122083372 9861032 640896960 622101330 675605345 607779737 722476524 370943471 491395707 811015390 895649691 272650164 798020147 653055597 799162716 843081781 957832571 617185747 711153492 100778414 275445948 409047272 798889305 91368767 93823191 463434437 616790037 474499828 959986390 239398051 881140590 650379888 988414669 892008693 947930321 563781266 879051917 559347820 932155503 510068021 805115588 9517591 155921866 212739077 218468637 113510077 475716848 15265859 631002962 650714469 737465542 48768179 146065839 1291351 121533293 459198292 574072279 68633249 240094958 159864658 294692062 731685712 799204136 380441370 791709934 265034443 733697440 587316239 694989421 71171703 93534344 530025910 595132154 616563463 790906301 877342177 930137426 601050460 602110880 242613722 956634292 785517689 919437845 288856227 835545721 207232738 522811435 656570160 921529625 187740796 611609940 56778833 371354649 326624102 377603434 813791026 816282634 509932857 690151723 508227983 519902341 925595255 942399700 287095445 668462556 665416180 672774532 162835549 739075802 301836413 450912202 528055230 692506741 336905184 441569779 809669978 904980653 441027844 568403639 505089859 857323154 696610515 818597266 406516380 837654346 868439549 943499063 377357549 576286628 970852649 989491052 629206182 797631106 889403428 896281795 496976992 841161864 953673461 955439306 174332080 723712365 238859216 297851486 561150661 714259525 735041889 836462543 92156781 172136286 12023601 433659063 789336436 965477845 894808626 921653867 37571888 645597874 422226400 588625157 23664765 668098330 712119292 985964522 896975836 970096479 12185386 627631519 797428916 944499272 902999140 920249383 62560811 189949528 153788857 661095697 995971095 998865523 685378219 970766662 482578976 876182566 871916105 983931777 66007006 162226488 633503703 806227896 562888592 566136672 18070901 169167709 893846438 969993858 763003563 987734642 393266088 768895124 882995451 898716632 762113071 946988521 786911224 908317414 103224951 581828200 724291227 850028324 883458240 988282119 71636114 778295114 393377164 727704302 518696127 578261821 99037191 549506065 609230515 676220238 478443727 934500326 191218308 703769560 763514839 843698528 592002192 721122644 659343590 918322204 911433770 947007849 548017956 815773069 820640073 938199954 135050123 759771962 601338766 823390271 640043375 757381233 768656387 858207055 992562390 996482505 695095498 828378949 753838190 864549419 331745716 385291041 188357449 868842245 67148987 849325324 646387057 832047672 941822150 988540801 494927836 798265085 138001744 759282417 644434140 664624756 691902551 755982955 426944031 981895002 461775862 933564040 941488886 969281306 671483692 728308660 858429043 933380622 603161390 910832878 570197509 583114326 173823246 852830269 438323514 522564075 446570233 582874048 169137642 522741443 370443834 687092392 612419116 814793248 644027905 815773203 971396725 973112847 57367823 142320262 698699032 956398428 258701991 690290557 962550617 971203066 265878798 733964618 962442637 971252888 795663766 831822836 974828791 978411989 930864729 948156647 954039990 989189221 36529580 83550142 537896943 760253847 386485721 584745842 749089026 863906438 983434009 995512046 255324764 840176561 396429119 478814368 276512342 514033322 435883914 672309676 338026442 887174477 172467861 795726930 901895743 924197995 414593791 731589748 380116388 843838248 277758510 644420855 394207435 515795783 778828165 808516361 164362951 728338603 931080737 935597482 386940369 672968227 37991885 218721305 776264015 781940069 689151569 728824150 573320456 793200627 281447198 934756492 781919682 815710169 473083674 625159232 834380375 900224167 310981334 854690941 999842110 999899440 598548212 943089850 34093150 921290998 647733083 992693331 807016700 872890452 655277057 753736151 701814992 821583713 899218493 940781310 399039505 815703417 645414711 976746082 747830200 882428181 824264066 892284058 434552420 988035842 406257646 566202297 773512684 953592443 633538024 680681785 318466914 974841838 418494366 994156654 111763365 989023483 984267930 988483094 553579331 703300340 67391742 281086862 699346242 820331380 797292526 818810763 296916805 930420186 161799031 683313756 271055856 547365538 103826889 598699649 279172780 475692012 803742293 895935100 97992526 382683818 512922208 999766656 542498621 781923922 714943383 876099365 68574400 954971621 45459835 225007238 913489502 980021088 243984949 271768380 856645838 955721087 580720344 616220480 569256402 931826929 554015575 657355830 692520641 930653350 707794346 731147228 499538324 698459980 494267257 937933817 216097666 644774395 605517865 859547303 795650311 844550289 408050264 904910808 715084065 835337903 85498547 815036146 791529344 865370925 326744632 974988412 208422289 892630221 57395142 912057842 335789889 790595581 485817738 902013355 815101302 936930064 787161794 820390568 859128490 904824749 993223547 997696671 861853881 872732502 584862478 637842149 218014785 379690019 978785713 986633045 97816570 424617072 409945670 567469663 304357192 828679177 460244644 712911483 814037421 848518171 276226350 607030691 959088744 963993338 71603837 585267090 367626088 829256435 274656366 914368700 838383261 857949245 73360791 113974937 623152840 787202143 753300829 816561776 615387090 729420874 650322364 708540617 128190834 789008500 285816480 550768853 969039061 985114796 869917053 880754552 625924099 739215033 632068939 770344082 741203596 825813108 595444098 812589513 172240561 351002233 781681039 969089471 989033118 989323281 806749624 975766817 835847583 905731474 46401960 497690030 727391906 727887337 156091178 399918955 916121161 955874821 604482917 928388139 467439047 993042503 717097083 862738584 230262212 994369132 962724942 972371332 904479073 950007670 922187988 994866661 53215349 920944996 201185936 950596674 939565859 951101716 110629866 332462642 739973932 994735571 373348174 614747753 431112511 615866341 454451862 484620603 678777831 696838604 772392017 836074111 931060498 998134695 201483522 535897608 711785157 898574005 999741294 999962924 804903095 814749728 452220399 924767312 581147595 829818539 336705924 903356044 62871149 584802988 911528054 955421812 263052117 411796930 544942298 685774207 750803303 988066906 295732267 551211421 680569778 878060512 757312844 854708761 594982626 956041873 843960047 885857210 553479942 576241951 377780122 579433539 244493195 279351644 337874432 428273859 810288471 887755338 7308446 908094104 337054707 816258387 527316777 764421627 216567445 931912113 380665587 510089112 781447154 819084001 583972322 945534101 762669790 927966671 990433292 993954723 980553673 992612852 856969615 927221768 558403904 798923179 731757660 828979255 242972259 843626750 204113315 537842655 811528865 839758076 141411964 507278311 861338072 941630809 551492851 642475590 692149566 992376384 27849606 790457928 340278298 609801108 808377973 973444737 571761078 906177623 936345168 995901132 922912225 974097764 322165989 565783733 86483305 901469672 964248323 986854852 64299100 124668105 896679515 960802973 787322329 865429975 222701808 779957957 549973140 959604458 517739670 793008492 403499584 985848406 210644501 926582977 917640656 975486873 30133331 673181047 733276871 967912557 832501882 862138076 912051282 998231893 188257784 658632502 261828949 375200380 814492672 842678084 366708327 409495176 491981338 971113257 783356958 823976084 10684306 427878593 953153301 955087561 444927584 711586237 940293407 968224181 860481964 888496106 102876767 761116701 546436727 698978678 311056206 354877736 573682100 740415696 167498348 845061364 457089290 572586685 380845356 833946794 90521798 961632874 568845147 680434702 561204490 818573515 284782115 561126383 449897342 679332028 821513673 947852263 858873482 897771313 391844116 966194210 622745438 891721752 582070567 681738013 774257999 836527659 333278373 604070497 980366652 981622818 224689881 750235139 180650854 234824032 425542081 909564848 312885033 437462792 894423656 982614324 362789160 930454744 529475434 800839820 952837642 971149315 907860061 995019976 595871024 919247997 114680920 304271890 908547371 986905002 145308531 630045364 705621286 819339316 528724574 980690017 347482924 743192368 565035832 674953836 209973655 794576517 89916682 590431697 512833714 803367522 639122168 850249518 15263424 320759029 247168494 433485324 805950698 918376657 49900817 546156487 485478611 516820065 31062121 654032305 703069520 969229925 331620451 587317066 316551718 663660923 69669963 295450825 775259979 909526413 370223891 591922161 171065862 643917814 352185272 817819347 634922059 929590991 229172770 919327164 574735677 879320918 66555870 137950970 808337852 941698876 47584348 252608699 952159622 995009037 134953309 850856777 874824865 933919911 781213693 981262953 591646295 811322238 442455226 848848412 463505180 947733639 468712078 800258674 205701067 611761146 921270945 975581232 53733605 72005398 485532829 497619053 221741396 850126799 400596559 934425996 689170837 871129157 191343641 858384438 423727762 825572997 840910608 877184124 862622466 956906936 385573401 891225298 374236801 486975464 394804147 589049161 545251633 887456020 423431168 868170308 229269494 851245617 574550422 843938703 498854397 550107818 411844672 635833248 770323312 843031479 714056643 830776653 335881799 738485001 335102078 393609808 547056498 694810857 170392413 352200619 175291471 656406877 878467507 990066140 913537077 966583437 779995613 970530314 770734162 972988688 643849330 804285382 383529503 809254948 516346400 679284219 466229602 604028290 988668792 990906267 543425767 949798386 394094359 517892309 400857763 863592918 844032627 850016294 561734869 763765648 276308675 972812490 115069149 618954920 221141268 630692561 259710182 396921144 778324582 938043887 539972569 648993060 578443553 939865550 384357111 393677484 411640880 657121258 234254809 439874594 442307603 830886028 603180234 860033168 415406524 830080402 219772709 357320416 736981618 922983639 690715531 920913386 396972912 491256059 162149365 313297313 284611182 794434681 778421301 872410408 652348107 981978158 808007844 914495263 201598935 363474385 31052286 574682840 661037350 869159929 399919764 527535010 577513803 730521657 522321785 731421730 427204640 924406310 254563295 849646805 409936960 716970620 534434017 545231242 465428521 878684730 413822939 508395450 888273750 986291242 688406989 946539967 451018005 475146426 546581218 866063507 426981646 663066424 397614343 481905484 406781155 604827880 845268838 965675898 558298083 795963116 936653463 968865845 97190866 109725192 98913196 168960433 177059211 756020575 964954544 993506258 985210394 996652569 16882514 406090887 754860624 909292612 742853796 812967518 890373875 904925782 647862477 681675410 971847816 995484550 919054933 941125081 273128826 799046652 637057209 989468791 804005191 827055344 965988536 987370514 29223617 72273563 786635453 905243821 790860392 908638007 151203248 930178296 862228657 914700351 685765473 789858142 936445155 979566638 818818558 921082250 544357109 966554896 231241373 250433646 958536678 966475810 154379314 242527034 165097282 565409239 495575400 581601259 382403451 432000248 120566770 378413653 799365748 947146347 807684688 932168206 660047402 678147011 152276614 812924057 938974558 990508283 677744071 743010700 565174164 600709000 504223980 978940376 250394691 471246744 717320690 773702987 217770500 651481670 251449017 902553692 328383644 692355826 177562936 823855712 721039067 968281625 420889865 931503413 374693947 542381409 963402036 979731877 700358980 752675829 674397920 967836345 76344982 974202929 418273272 864990697 367419366 573634173 66137085 766903013 514608021 557961957 538468675 828325252 911357921 923666645 404913642 808877809 427680467 575233515 412235893 887294630 430297786 865817370 205106565 625461473 509838290 733386037 468033414 717377792 867630752 935603651 190769132 615241362 63689067 376760555 110147569 744191291 784394656 941688758 467340238 815832071 566505261 927202535 153966181 741821009 182646540 508690243 202881855 286237353 442870834 928976680 852769056 914756315 334051493 508855102 753444342 835971586 109218427 423328373 445912431 591016305 89582646 852145451 186076339 974049846 955270204 963585880 823110 546401453 561248169 953836220 35821406 159662133 152567080 328542870 627127683 914897646 553931616 751930211 496131694 801830953 908099030 959853745 308743519 353382305 322949835 748087734 711451572 724363111 742176906 743727479 483483739 758083127 380975428 536833449 846603880 915339629 376396180 836486803 720250665 952369886 135450120 431395334 313802185 771066661 183313006 591154201 972515354 973626845 446268948 813339372 251311160 365555362 473615996 813928373 463971895 918401657 711071759 891592779 739369934 899128474 896155405 898763820 253665447 356676075 954083865 973696180 921986008 947092254 604384701 666619302 520731536 949736156 607529590 855040804 839525289 942434001 498976007 747388291 46007865 338254198 99967949 843869998 273734360 283277783 340733655 365118992 408778335 580379547 232026935 291489672 819443439 888601867 156726007 475313943 64513595 369204467 231778987 645636690 146644319 735308971 426543317 708622250 96121401 118042195 858079872 889300990 794297432 980465550 328651285 640869684 891448062 945895864 796615462 862901189 1511877 623011552 228716170 754636299 836256809 839975851 844894811 894859437 892006738 901190018 28697171 164087557 183285162 563058597 609609930 906313565 995078410 997109581 408251436 464882079 601091657 828319171 254355962 536425222 484489302 543218745 621488677 721853053 888829526 891186171 343275947 477273743 763814534 956615212 666685212 787727780 16809450 880695724 972212997 990002680 345171338 753959842 119668488 657939301 660697199 781504922 935997754 970570539 62701689 898571864 222205204 936376677 393136348 883189123 347111635 675923761 227913801 879479727 792601720 986737981 511321082 769935565 755366606 897690319 473864896 926362491 330618771 444840140 868199145 895744568 278615320 530158387 603400341 610625191 250151844 416549884 284812697 379064422 157889005 663166210 829441088 853509709 926390286 999610977 125057467 168601134 84012160 739972610 825639639 955872277 743939171 980509227 20933451 626472026 838188179 984242642 78387621 322957710 240814019 405525335 152143968 987106798 121014385 454201486 664695328 845652885 519779814 927034042 3491558 236476626 564382220 963701215 236355844 884123694 390469248 996824010 379290036 764624243 625451423 951665861 546423291 722036815 581206120 922089228 325404076 633299002 172139310 650818309 992688818 995270475 941681080 957928508 251856531 769137124 479612768 925175025 412236527 975742808 280348541 414935907 992968467 995279806 32950078 488761043 8594027 585318668 649871589 923489859 966063365 973512946 533968904 620376684 554365701 734973736 754435741 882459851 703911345 731481642 877066528 938947567 926695050 965644387 865992768 893013645 89875571 438349582 300783304 637985947 54950931 392258289 712523155 935071030 292435378 465915883 892695650 950354267 62912373 340464217 314975433 396497318 47659662 712617142 274681726 929708037 383707658 796248946 242124976 965388955 28878479 310148113 623716512 836374238 697294031 772572221 700839844 888239320 919679025 937852827 3190066 741472734 422006260 702961414 19405713 634717741 895926169 993359862 70327753 72686959 235187924 564665707 577449377 942370349 79914403 909547167 835458031 895149449 124037247 811190612 921892975 940077683 352500111 785064181 962546392 979348425 243857728 628421551 520851022 640415446 189128588 947659370 119849047 991222578 685699492 776959874 741217057 849375902 104477620 887964620 447140724 852071861 493023512 591304676 613689017 746276043 858991857 989163287 933794113 993094838 237333536 459189669 874167252 889514728 905596128 984035558 291297451 700478583 834507996 984327443 982253318 986949240 116897804 251183821 634926481 694101157 475172702 906989409 923659259 999122982 489194252 986063519 685767590 717534713 765132352 801222278 117040568 744745282 523756116 998954143 209241048 734902706 815630216 907039371 380658183 862428986 162777322 970024389 791228201 916933866 755415676 895267424 674350163 782898118 234712613 541854383 42565526 297050632 91751665 707227078 463795615 989719511 600856514 869603094 530103652 675067519 359716007 525115422 524449363 987894937 602459588 866802986 904031964 928670127 857317145 927516791 327551170 342772788 283237898 645447846 20538891 463945604 286786854 352109394 980226340 984596849 313947264 351124682 768683661 976342799 832264420 969853982 720811815 911689120 963453737 977491164 946522011 977500440 383039120 796694962 775567122 893021259 408137630 415384449 637364691 848877233 74334568 773837771 356081826 368981584 401413470 903465452 547645897 841960448 546218487 620742228 312718750 891103652 54710716 149186848 527327076 939811321 740252602 776399934 337544379 472226353 623180949 889622273 531076723 934850324 823104533 950004654 896407516 970389552 487641132 963202954 269526590 691451640 414816113 550685372 382760528 664613748 537457190 646515685 474161786 628331500 999814641 999935636 341376261 880031438 685695366 845721354 834974180 985255922 64046406 130662504 79104325 651896428 731894289 899732777 780502148 785682487 540418960 939609352 881693204 924540246 236174309 803888957 327702173 932526348 562550705 909289543 287159649 565410584 998061619 999824329 41242997 492535201 373898848 843375908 999734355 999752840 351268331 895700213 559771229 789693544 244192769 853651444 219464168 646240832 312120457 421063548 351837208 567804779 155507416 421532897 783091689 809777376 992950164 998584798 903219872 942494246 276133024 495350930 789364008 919689361 377514939 531003489 226560351 400006540 368181653 543859918 475881200 512969268 381009620 816884084 856393597 905483730 787546990 845468834 113281553 489612926 780764959 785246063 98822740 161512855 942737219 980793228 958302853 985258128 808892477 857490047 501445129 548479025 777006305 843774479 848741428 867532884 736655500 828826006 163085477 622853227 92648151 769691124 340218930 989627277 515870216 551902596 769812886 990338130 128728870 433461053 264606584 997993868 275068794 475969688 41827647 870622637 24061541 797400290 259565349 367307711 130168640 587103696 76648697 645922284 325694579 895013327 99883522 328907929 331527432 697773560 91274736 775158471 141800566 647674757 720854698 911847807 319647069 725900827 27490386 462352659 571949008 843439196 814800856 873140686 644411134 793467066 14075440 114772358 887283766 935104504 742731008 772655365 244805144 783471156 22300043 963805439 997478120 999091552 978509730 981411236 526108895 587070384 842211802 946215346 10854549 242410827 966472057 979964521 580582315 644064273 565892659 938593284 99220937 192950245 431751334 913480393 513738241 623770226 844444895 989167852 530462947 552472749 556157621 639739370 47506617 971993396 305317210 478666851 874232051 878271847 524449552 654151925 187437320 565572362 864923270 966773456 686337409 690636596 590128701 864394069 684171320 759080341 217039765 271056955 139490771 944031395 907598177 987866912 918557541 928786015 859973386 946262247 992681599 994168956 572933142 709740788 855581988 885714705 690229456 957130763 674388015 755477712 863466507 940209593 887147762 985809417 755610 832361024 984322976 985458280 667405135 997049517 559329651 580009755 338831959 801420930 816136090 875463086 864459004 988302008 138014022 587938573 262738981 486536730 853737287 943734890 625801559 784683170 661725980 795896490 90300140 767770173 996720815 999449285 40776819 330187212 536402360 967780816 941512003 956285241 886240960 939162731 368570265 372693184 337206176 352221349 338354976 444189614 381530076 542222534 623312934 748636246 235693194 612172189 861786979 975414834 271211276 610251734 28212702 375935371 943105119 998447507 1473758 521558058 21894532 920685132 531052869 553175271 353157732 709977638 401059460 565010404 222131377 968058134 446859645 642117495 942026072 986693608 857479025 951085996 502908899 719055799 370831079 725543934 362309452 955628207 703098162 775818676 119890817 875880593 927694427 984295692 174368612 592607030 353868867 716983606 86522213 758923749 101013183 459841618 242050835 526483452 703202074 763264265 145237095 567087058 212165646 699478790 336776037 547973795 171770159 903689411 748479705 838423853 594027780 834245488 43983443 374485173 47461174 844817903 467431350 639482182 397378895 527098732 580221716 607246448 975411755 993427326 127571476 245644137 462346634 595874450 782430989 900604407 331041290 609206973 525295167 877506218 735514373 915934950 497870280 725876734 690634206 759204709 308848813 328520025 421783330 756543768 389152947 841245100 722566340 895645495 118742694 167940933 150785402 668818720 253185892 697003427 138796179 381412627 11262281 699091622 528862609 863380289 749986806 835785296 668162927 885618184 192783289 341932199 8313370 39340786 970782150 977176619 253315175 379446912 226935441 845167932 993741915 999043516 932586413 960431516 615964261 639912853 114693890 334795150 707146180 784668681 354394013 475975242 763774420 825567832 701589752 884689559 711375933 750797405 47945826 979155138 503842714 665365935 379912891 879498142 741187200 930637413 374101165 595592275 907394850 922819316 205325786 785700678 674152261 974675787 435987434 610131009 600038776 806793587 109847596 899020857 637647754 671061784 995501702 996399594 90734954 546939118 527880589 956944811 904980430 989720536 399516303 614500912 507619241 846049197 690716769 944400035 101219601 566881025 841989376 908567025 148092701 754326949 222826701 940274367 946174965 964647110 837030752 943882376 405478407 886340666 769373460 874732271 710747329 838006542 284814751 860788043 361471749 731868240 985572753 986595338 364568005 570411378 977068038 999343779 20796139 941755794 180774502 690674062 66524540 599753236 110704557 732577469 109298304 835839525 771513547 850763936 423191596 946539695 517421710 523209776 210708680 502331318 34218038 929317779 950512411 953584670 119784841 342128768 971006281 989775394 574935472 770205779 345646232 617434839 441855328 766188379 189627191 835065851 2432874 667099839 6775412 501701542 26152923 115659084 389056341 936339758 446715309 763685946 139001198 272995532 292555929 549365262 458922821 898376815 348938166 687900384 920587562 961769784 113874480 170014303 157819304 521233823 308411965 485469452 753029228 947676238 891690714 933370010 208500596 925371587 570491680 872058030 173452694 265513247 774126432 858547466 706992824 830168072 843504271 872880190 415231995 479675414 236596001 512027918 248539624 736180341 408524147 955313467 708397362 999812900 547090169 786601550 796104485 815481136 874979464 933763717 538766303 807076413 687541370 741157217 715752739 737722395 876244726 876636040 222243792 234632383 986434327 989473725 150264357 897538307 306215014 662511927 254198553 538744758 858910244 901346041 871155448 959184210 546702373 765149495 725615438 733937127 779668187 798101648 245224262 612921697 49209323 631796564 180153082 754430679 835576048 997900494 230082608 381196503 923591785 926416038 518969951 735179396 463682159 875398573 455913472 948266972 442016090 747395372 85548856 755766828 460848277 746614069 623385467 813769486 629865372 828769586 877313227 919004072 484302608 992940836 214497079 318730459 222863035 775478628 939165127 957661616 195399457 792461582 491604970 575168916 726598960 876894318 626755233 941274587 400006576 680993574 719997910 883804651 50358597 92011702 302342495 663067126 38662209 949326226 275546966 462801170 928714382 929024952 142317394 336740928 815777770 985545615 208469029 686580534 308464646 753867437 182106542 590729053 921165240 997238848 175398317 564389962 622703132 739530693 836555127 923414192 249279436 463155462 405147931 462509647 552622081 971095366 910349410 950457026 136284786 930642480 2386756 589403850 640412808 837917049 318882878 943948255 249789609 996198419 162203277 742967410 438246943 930968897 522291993 617401445 86175807 642136916 733168429 890328895 715258161 758916210 969923248 994462972 499588980 919669796 179306147 526925415 726946936 751154942 586022104 875459188 197622330 591734815 714740325 900321981 405362994 718377718 397148632 601992869 364021452 437247231 301336524 609868391 43077001 987379276 734010672 870265920 400701965 569527832 891681658 983954297 915951249 994285383 174000226 580172370 320892742 384683693 855228741 905303315 29374820 931714472 558343791 769108043 855665065 872446137 467349439 472708265 159055617 951573901 49955949 81694833 360865787 846038310 588938820 955111809 960318707 990272624 833564280 957720480 968422944 996094938 899669087 949956410 74105441 708651525 475443834 825892256 388279670 846900450 29104606 287013967 824335894 899867347 86575429 432764168 86887677 96121381 725862643 800058303 948981385 986809725 408043504 696845299 925229417 962341527 228341002 599070735 444893408 882845007 353571969 699842046 213163407 752592477 203647004 294042259 407486360 919595531 43250420 584033822 31544932 323100268 863609637 968366442 970076692 991894051 485227430 519716022 93832263 981061923 209926041 507067305 768776456 801230545 249525162 530310244 636877961 776722599 594818989 931570532 108387878 894240233 733921 691983257 227394607 305440537 334571632 645834970 50574978 819506138 752240102 938749902 519733309 928603870 187958251 594566862 988004539 997607068 374564507 911558518 485711869 636585240 531860475 922451077 285509761 614205190 687462768 741777789 888933644 985899547 532533887 909091930 219723118 841659826 642366051 801795580 356397396 879075898 832314904 886617179 178220886 323765269 505335485 945401478 117712377 673683836 466579985 733727522 692943208 726045745 768711231 786998433 700474632 746061945 906499205 992168585 597893686 696967162 284484024 676510560 50611375 746783977 305245286 488679725 753372550 753561692 334742578 339597286 14630257 195806451 922242110 936341384 492404634 910620374 61962639 840283866 572010361 917291066 839631010 995950590 390131269 598666012 123669010 441529171 218934698 482512876 418994080 456401821 425238105 873835944 781470725 976816443 733344725 980780624 197995963 868329823 108626282 812987415 834905190 849562296 104169574 407078707 241954426 865820104 354481670 848577622 169575604 370182551 695126109 745286715 851740085 965551510 418707459 699690012 838113504 848587871 685195366 960075084 948874210 975768230 638946515 787654673 114572313 513970077 529083296 631098075 226127410 916506914 773515341 866153537 898228867 966539899 806609738 888340706 151522942 410064274 475666796 834628918 852949914 915155178 535150728 711366109 515286891 719661823 417023627 637430426 738877520 963459331 648312378 867750826 361305879 451535596 97086378 751295863 799660495 967868632 519560013 793035606 824347165 969719309 280176620 579603064 692263384 977608552 215385587 616619116 31871571 283450071 477152275 811285106 558388790 629797902 303422633 479196214 203879173 524203496 722769230 751844281 932133800 996941368 914553858 997707249 635461643 979432737 960688669 977628263 152628330 327587567 299882211 607697887 904324447 962142384 869721719 957060181 228483284 698449790 168937425 973333250 490954485 722711779 954066407 960768691 921172376 981388335 707797827 850955903 941190478 978638105 431984561 746824227 459276288 833602619 791749248 865560266 439276109 644421954 551968148 770729882 256300761 715747618 559758898 746470896 475599604 897946381 832074046 854668132 175955448 268323348 768416934 962385585 41524472 590766920 614977960 881240031 257701368 628145765 756199286 912644548 678808936 697224035 869150880 996263372 996078665 999776303 198667032 806847100 876281924 992901665 192942668 823059642 349317351 855136692 989742123 999002441 693207336 838505657 149147100 988650194 803563738 836782972 848735970 972302288 614592008 973749955 739535885 917730608 939236988 989600419 289444960 536532192 177017355 817974464 738689536 822813946 110799014 391847485 895291586 938807952 298678009 598019839 129370978 542686369 525844739 953675929 841592783 964240704 602923194 751728327 616662130 981276196 509277467 516591483 980467723 993543231 506921490 969004104 340608116 960378338 988730967 994327599 200364167 892977024 136268895 477361975 324569329 993295461 932136838 948723173 926257497 990871337 327350079 848233038 415669259 888518495 610275477 890351417 880018268 909267567 226787758 949870107 957401850 998306754 495212728 968844436 276260148 845328801 625418777 722376316 137337033 154842504 364284709 377928229 505989545 962343028 455047561 892622288 92361664 660514037 253684286 264481387 864764498 995765303 990037860 992236745 856766351 910178071 87700852 857538458 82664408 358047420 977438942 989703967 935498829 940024093 162358494 732031763 825028121 851999953 771889218 843298358 971979443 995968685 730134565 764662095 695973980 836544957 107362982 758490797 141740490 536562941 655665667 721979134 6827280 136304997 662789363 692378531 1318883 559876150 656494822 812939605 130854282 792298302 543333938 699511774 571704563 817149963 136279293 977782501 289923967 800365877 889117526 973469152 528324756 558988078 694358585 983974395 578554243 615644971 250115953 986898097 922282986 943387918 584656092 638897348 346298962 501371864 272999842 369175150 227756399 494349626 998826284 999815346 119116583 515363109 413053925 800640794 686122290 861903934 969657236 980699172 288703593 957663417 710895601 779503861 360028930 706676612 596949383 836464979 232353058 820601885 23518932 308864306 957572647 964681526 500392078 746165877 957706063 972777851 294918502 623652907 742910850 987121697 145515951 394952120 440232795 680025516 555462626 921314650 193350817 942819922 92259069 302334812 259705178 874170136 733345229 917007819 961586597 962180144 690640433 726971496 425267491 665807326 506210456 724229870 225494339 249807767 553039384 890850960 224236159 673636868 794840639 987131528 506156017 634403762 754153801 973731753 553532439 559669857 940613984 967815552 658037620 743450425 174204899 625763597 825535277 990953606 24922433 774312753 326702727 801365783 125740044 433884467 223348560 746628596 796773743 982409930 402252871 990032730 975162914 982650129 112904697 245338308 553753774 763253944 856169767 957593305 98355869 215823249 857715472 927970408 218075945 411579883 39468739 171077975 666053651 934103190 286912710 364559897 721235477 789554874 263439523 578820093 217610755 604429179 64501020 660769536 91850802 130211951 178474971 315274535 522623950 598193108 188235858 813142426 819165865 887180681 942657901 994221563 926609009 997472229 267859675 677256700 216512235 498043622 30731595 231721296 309829307 674035514 827821262 970564561 643241782 768008048 370921470 766314366 47409395 580833751 737105032 895793721 71876827 725523124 839272241 999507531 392245131 471756662 674058872 799823035 639953928 948313969 317240493 429044206 337002748 786525444 631472181 900750567 996079370 996910956 272821891 341660549 558650647 721992671 934293885 961566912 10453106 288917551 241697772 757533552 841372665 848149348 897964292 995213679 320269254 964718301 719392580 811268430 530515638 576869198 121348745 662542963 132299058 460319065 634077794 760351086 444209309 577026899 676249223 821036765 606691823 699052065 964398123 990838778 999237853 999260596 118154492 618787269 921154976 997001500 469873114 573329555 273721704 288930029 662061741 685894860 75902035 350578049 804768565 923576854 375594865 655256470 974784406 988964126 780436275 831924440 380361952 635455689 803771433 998228868 736350624 910989241 203045429 798542340 353739971 610898492 856852083 938099601 855376179 971950632 572429705 604790122 597789954 799016419 727425462 785484704 111024625 284188150 955395209 956502225 941138195 978462829 929486843 950558658 322050944 860859500 890148036 903293244 283474121 525052160 984004924 998020096 173901192 691191973 474592034 725649158 248602885 688765493 429251080 647164133 201190836 957811694 910840784 990119649 106603250 141431423 800942414 840429295 278118222 367644558 759021168 834614523 597709390 838554766 63520457 392495155 523713628 571179913 902265172 962223005 353893749 993464640 355843438 886694413 230564779 269052999 897703018 974786966 425909923 618510499 2588174 673015212 969720594 989546575 637108891 783405896 606138798 750653119 419853718 512116292 812606415 975338464 714011236 846301463 670982083 869388943 491154170 505355881 769350163 983494650 557056052 761312096 940343219 966948754 856351884 998474931 837093126 918028329 34850147 946907785 155124425 539349969 456188403 496127830 151177231 672853790 821105579 996841378 6798849 860496210 826917178 922755219 889119296 960814129 567053187 659144925 217516349 799592831 428519397 588752453 498791983 870615513 648641080 853544426 428486914 892573738 816578908 915844500 802976242 820337619 581584736 651244749 665570434 941127082 979899123 988507696 365852568 982258955 586367491 952824088 946434753 994334111 931478124 956000126 934831426 975219502 964966333 998126003 48725268 423042278 657827678 794119816 158474754 411276485 82694779 340629919 945966950 972618909 322685495 640326222 36660899 662195882 214435332 391762383 302904256 312573210 569669381 822330792 675936335 891234353 48867824 611396501 605781091 781924993 257075957 758971063 41559676 829509185 31739544 600290563 43799628 138848088 835391021 869102534 748422411 824034570 701225484 805714082 618146331 831431676 950068355 989731443 886113416 899538929 295778842 557199243 8153817 722822957 897316422 958672436 456687169 854578708 936928673 946651862 478522111 811087518 582241304 596163085 164500115 372902871 247205509 364386111 832839681 883342363 5026725 102632827 22035084 150939232 733328139 835405552 105678590 302523916 722471836 947071116 775534088 967805623 514452566 567718441 533737971 791302663 418160597 436065872 903895943 913837940 508833980 953797304 877558108 956398812 328979568 537790621 461500828 566788721 57089139 316778630 82499517 512731979 270048852 767336691 868317702 970272243 342496461 800656250 230254406 627582922 39052261 264742497 389679022 770371364 150496718 606298607 245449891 668728066 257036007 559589117 221982292 861236081 458201456 641270616 497592358 792035779 482135718 830803451 316613355 665579431 943509441 965404070 115348502 792643816 799561102 863233030 805657161 921759838 924690659 950927704 618670313 939026965 161243935 471622338 538242960 855500637 115262258 173712491 880229081 983301084 911678773 978971062 687144308 907958275 74441496 731944838 839920213 942591656 183609024 395260131 39742804 398761951 767566635 991665125 618149225 702069903 1298577 907329962 250768944 589615567 807658198 897909402 391285637 422251363 38702272 881956757 664370740 960554768 928802960 950414407 968849066 983559523 920476733 975511976 922762660 972681189 857305309 900362233 430952835 996647549 587063848 841568382 919861107 940978791 557846028 663053862 436339151 549307873 730078814 805266913 75947505 680824568 690893116 935690895 542069137 937758752 156167919 883460150 522397358 596331175 826116083 996742399 209568430 697406998 319541843 563671046 410310560 559587354 670825660 819148479 176442594 994009065 199952620 467567393 806821349 899134682 284556048 329115829 452018986 669226463 8384500 679700367 197479683 239169158 808699283 871520799 475124792 491226845 660387009 696846211 996474621 997223317 371720386 845960940 396368349 887880723 824892818 863348653 464334057 901394278 467418502 765929682 589672373 761248608 34083261 709380067 473304149 838086195 843701617 896572047 499809754 945136389 58313436 146553347 279643555 933553126 409108743 458417947 625264322 843321104 163123218 749564576 681531365 914957564 174101787 880707353 902862053 912076013 960819094 977016504 638130326 918004476 2231001 777826970 504406757 670419237 596742402 825438135 759045159 900607874 965804596 972944473 132582319 449149680 564641109 935003309 80296131 830756258 823921410 956569484 622588903 906149136 42191883 982714432 336675195 532406596 510183131 761376379 736616826 856717065 567925990 609730391 323813595 810757300 884676146 910864473 765632135 808060559 856552106 912038155 304360141 776068717 563837773 826782416 820646632 954918319 673096240 767528157 673892338 927495520 159377427 418141555 244572867 455695812 702777158 977558363 988348876 997454992 519897121 558750959 525762930 917425653 404620081 405338827 309315448 807748015 565525867 949124224 159137669 748661663 616869314 945642978 376098287 975813836 581129049 587269970 369189972 404951920 208541703 938942883 587276132 839404781 309548723 743618469 625436695 699631464 240455261 804356421 734556858 982980148 773663764 827120288 180412563 622721844 377614412 947732156 878904135 921108824 91836663 155591015 737513172 806461974 701193423 890489328 282362161 913678996 715124994 996336352 66993093 799170314 916471059 985541112 412655848 863292964 214042528 378457224 813056830 997247491 403719594 729330301 963410655 973705024 93264058 588946257 72284045 568241907 908879962 949680439 613120162 953054773 477570715 986794147 492346011 748836845 334576206 376684863 174479091 937486512 4264109 107737669 854999639 859637956 543528808 894845632 114445254 722599264 9557604 425462939 955521788 965794786 31775925 294743483 425820895 755666856 158838657 669557695 962443086 999487409 21098514 290565369 666210069 758308178 750191143 789585706 89527250 693704724 210820682 942908280 798862069 967531925 149745752 473514941 837325201 890179704 205590673 685791823 798357640 860454741 467925081 867063688 428175907 457819506 393963779 538224041 25519674 275309740 889333142 906673572 233624769 570118089 685336355 910263320 622892731 746665879 733612429 815946070 190286541 481919288 892382451 894292327 145551507 638404683 126267865 994849852 769161416 877886240 723086471 764691538 410305627 474563373 482382832 774504390 909027807 941281139 220810200 721974441 8346361 527357336 739769579 854011019 384877040 793101472 280711088 686230206 280316911 528423746 388402785 802391357 9199118 762816964 542861661 663106686 968056301 979645420 26459677 161472577 101919124 430107939 930892953 997495472 479750855 911402245 835916143 912650023 321499268 651311232 437612363 581049828 773995085 954782507 172067241 408922835 337919232 646281741 8844595 237160845 940588695 949666121 555501063 571431648 97713062 603754009 976897918 999836710 954175808 976471528 389086834 615847054 179208832 716934175 440260823 616325858 532455615 996991393 569038647 909404071 632047985 857649706 125106383 423473003 481619701 944351621 429931458 609201295 872812568 977582285 27362066 342697983 54296291 969264150 824434986 919124773 92271891 972666540 512661088 975046517 579790355 812831937 497817297 826620135 396281711 973851827 516508635 524974471 450528269 925229046 342962338 760680739 179168870 991938287 708737060 785623972 347305080 735564575 197659183 630429790 895180699 900105453 500407692 504587261 37407216 419630345 554160747 992962825 754294089 797629539 299025233 340215162 402052760 474341280 297411421 584863086 501207875 932152070 585029718 740717504 453087568 974491150 270999627 340596061 846771992 910049816 896859830 952339225 669455210 867640468 260836682 427169615 577308422 958733071 350764242 883050202 967587950 971145332 847998308 994600644 593898633 805783936 673639440 737685999 679353794 794025036 199121255 451144624 443297202 507938671 84288287 466008133 994928509 999013257 250893641 946726323 298105928 314769264 90104482 196136327 256365898 668452261 6621489 488766814 490687844 678241884 51179838 390823941 515830171 762564528 572139358 777970420 560067993 740487389 963528266 977466012 949990752 955619694 89854660 185894332 293915977 676396471 62073655 537625781 124660185 637571616 343726144 970924223 325721791 953933660 771012791 828740624 513183199 592204667 490419857 569912790 934502624 954449628 649029858 705871000 476205214 728494470 190813474 364721941 73317475 569415502 844371986 901824957 13095994 826745161 721785469 947690378 2699210 249385976 778067447 938077553 310952523 976257648 332278438 749970084 806302366 974368893 82227352 276737154 692325716 899722298 474006831 903723588 452487155 479045241 766770106 858521073 477042925 787058841 119211857 986906599 612577493 627279627 364917171 714128422 589940193 853216453 812836936 921697434 43004696 391553163 671243814 716472983 207788473 247502629 2974347 673794684 887209615 909316313 126124654 665895472 941535967 958534435 217122218 715598211 336254890 410229965 672190362 947237269 509200847 951473746 161941979 362446269 973694114 993332625 591072254 831323799 729365906 987853480 53112144 723469885 134515027 557709412 789389390 853155206 992253867 994769017 242665083 327404647 81732414 953170259 870103046 997762593 828652506 832593482 631116532 680622678 89716444 470471490 451011019 977247732 339594978 915924101 309417166 778368704 475589659 633743344 120211656 892070703 938926731 947342409 441117222 506777946 3854402 528495245 399609976 855861614 103592148 953587192 935136220 974674000 954750492 961530833 838697387 905127762 320094622 433709856 200839203 818777459 409441017 741663606 347245696 794576260 120501076 663684023 817882943 837833871 326057594 501905062 658125480 892664303 556547604 739414813 900445618 957517924 500466386 979913599 803391308 876926767 171184208 718208928 835193271 962560332 747698017 808154217 660128879 821205354 385358564 804919630 444006150 503354759 136729373 669048698 578764295 801314838 644435265 694279021 655791950 773131477 2609213 202123859 705159539 970251955 2829769 729546957 858292603 949340104 689070553 776654874 527271114 974755531 887496732 943048655 985645284 996225381 197830907 529091224 768353972 837768304 951752343 987850747 568481448 676551865 177087424 526241478 103735134 671372802 458029459 702137700 224406175 974556029 565458905 748191496 686777012 892239095 78657940 508351842 343855645 360557510 712310055 970471305 554932114 845293907 319259507 676707181 850875736 959685154 873222167 978850931 810457563 853535768 673205523 937587654 306211279 650591472 546134228 702695854 239080593 387692746 693725346 821660631 947773513 956584183 30522194 428176386 815756844 946978682 812046137 887196364 904320243 978196152 918589230 928900338 745697752 773863661 484884547 778064326 93359906 992403334 358718648 555223761 189404933 589614431 84322391 194173844 487834390 879280671 752079816 809442943 154382688 680389439 796126945 964999873 746513125 801603746 776597559 786676550 485012582 558996336 381009996 387802811 818960247 857688346 961235332 997052482 558303541 901317154 684845277 899587912 782130379 932034863 49438806 842690019 420241665 913414869 379442086 679706274 705165667 823291844 461247196 701018812 277411064 961858005 79707154 785005517 763879092 801690153 573620975 917387383 452710277 987967308 178502665 880561091 606737296 662196453 432598876 797742744 335285170 961897786 843713718 943559484 176654194 802382829 835124327 961585502 911784302 932451632 852588061 870389436 286476135 942974569 242031252 867985014 59691262 546963005 968135872 999965152 480825618 561989377 860804816 940995233 189138573 500475761 24519770 111008058 242718818 370532707 433397037 787273535 988861945 996778478 833483823 981586868 761018241 940477423 441287349 825124841 596948515 940118842 745316358 802781301 566520592 761984707 592883246 742996682 176082045 859310767 308804214 624425071 430712159 930060425 213648034 437831719 644526366 769172123 971038159 988494528 710146219 935560468 450110896 577709566 62733663 944781397 877063163 912208329 140113132 673840181 804227373 928278342 389403230 651491418 831246610 891488858 859155777 888694402 346107120 939815533 920571587 928393774 430839765 842524673 398277668 439279186 711905334 885052742 909130063 920381633 885454055 899700194 370320889 660442697 624120639 659505930 754082285 959033417 297520024 922083234 16612666 948033631 88781332 957619859 314379727 341315828 598922324 986155679 585989569 868967395 787232030 856635563 114696982 810888594 859566994 922485212 316617930 929109252 479045743 894871389 607697929 802270746 34451956 814782216 855338624 989693431 742774083 779784568 460268479 739742831 295532985 837629055 862782398 965242549 727909276 870717450 317471872 978210932 561869891 860792298 149399598 408319415 948186669 999931914 46568486 550413456 523997253 541466633 61921682 891199314 640261458 657004771 563941656 682030681 226691502 758322201 926694119 996340248 648900295 943897947 399807939 529943832 200846674 698627893 640390949 671209392 594544470 655618754 98344608 262551939 935056468 954736581 341045635 739165972 165797792 592997771 769148233 781142221 625874682 923286094 376232716 377683574 37815652 364462744 954798472 965738338 794189295 873364030 919514171 982213187 163920290 458413104 304147931 597917381 524827451 584417201 804181416 842802625 848515027 869626605 724263683 816313735 122555394 495502406 412132725 850570537 98190976 407421650 377349437 625972506 606618578 674107515 34738611 982322236 11454682 277482658 965008307 983643826 951337100 970295987 705646463 970918141 581717814 955290119 131265302 846316372 501803034 615001608 459290943 836037541 25120398 265197013 816841125 898178706 631926960 825541213 505292674 848264226 337184166 886616788 341800204 495532721 449653967 754810155 988672406 993835841 961451991 986946578 231046813 783251525 313338821 405202700 692349993 942759014 799232641 896547607 359714843 665722069 638388005 959751197 190101209 338389610 723117818 726076595 717194681 964038847 745070551 989471324 607364827 653427166 687061918 879820233 680171639 767788992 71347506 856334477 396191150 512037770 241297388 703456578 454772628 843591678 415967788 859851841 928396085 990336024 886758168 953345918 517467235 745760645 109598909 545918839 667047990 820169588 411572479 998142690 304331568 893614363 47823592 233202802 278137615 980780662 140099509 765589216 546055735 742769713 741303837 988574824 31061768 676406255 594044175 916942869 140644829 638569921 354107421 944626982 937674574 960452722 331208383 585345550 613430318 870384476 84885604 586931904 278902482 756433042 34645442 190340499 440332724 946101695 827664368 965625380 793348147 931567713 152425951 468488349 707388968 860952069 419270017 422185856 421605823 823958813 202426577 855293085 153111411 943835976 659076851 909347555 191640915 250152662 408045208 705719158 687641134 931924337 497668976 956373698 2538517 821642433 896972856 933810189 761335355 830659947 507234438 621104874 387387290 990108113 783487307 973041586 20446448 811391934 432490848 672885668 404792557 757524108 258280367 721050766 344742115 569955206 874605934 886087182 326916555 882619883 128758455 375619627 116939436 719930829 544653404 883677312 918958824 935222584 711621275 945879949 844871377 974419939 777856381 941589168 4828150 752691529 254397205 933175942 147518926 614221860 117218685 224162336 701237572 857285413 842216642 944844485 438720310 667450745 353450132 984242549 159967193 867933443 394882203 666376769 275495846 623975298 861119144 928276307 910087375 969936423 607571309 919142459 299487389 646515259 919966731 923594218 261831291 487502961 162722910 499335154 293486841 456670104 15662381 544113376 364595601 517062719 607897865 957606337 435686761 897770043 363674570 769629101 202793792 905812279 99175622 979260371 250111997 672057632 807302054 865015896 782220529 952727113 672832090 697429404 169122565 796320922 317065825 493452800 560593328 926341637 687081762 698522962 840556572 885729160 573142284 909114300 933305160 974959690 550648167 986828996 671892462 697841525 256947747 623898429 150769957 523169146 693509014 770268949 374693936 860660514 988876560 994612430 317368928 711539876 791883457 840055073 834640991 902265356 656298792 672953593 118468664 413376099 727991728 931375143 396619021 754800152 967538783 992154733 487284843 578036782 523000139 731090231 13291713 400535865 806325263 842542275 331196582 607908692 285384657 644727448 557004943 691737317 700635284 823635642 886412083 914761327 682787709 982026401 935274645 964678078 928030216 956845658 553571200 730739444 271962965 634040640 933170994 953115201 302010730 326013233 837543690 955010354 18936439 137136202 647761732 946715430 903027651 930392741 97506445 976996340 740973665 866054294 576188507 924118061 654565883 739955668 320767970 888258733 109823819 485313920 84770242 232259953 770164937 786166838 3929372 375863646 564914043 792789866 70055207 877923204 601084478 871062055 992246357 997489653 927030326 950500824 887607219 908854973 991049596 994513303 382204264 708502874 3194786 472213583 771941103 832937311 985472346 990856477 498492795 913778200 984756506 991588224 740097819 994689253 178191835 423401457 678033029 978203097 605630606 742178918 469017128 730865465 229591661 902861163 191132861 196348094 207773182 628930890 737002315 983016825 285906860 460464249 541491083 789659109 310510649 901247296 967253491 979482685 547612532 745531647 11389080 664950041 448418699 456932306 332431683 821147515 250391523 734799197 975618420 976435569 842386325 885752931 810215835 831673232 229876147 578061856 674905093 749714840 115364806 695183075 289643585 904206193 815444013 933139776 770876832 842460898 613937273 638862173 174408099 974281812 313068073 499514477 865019478 921961931 149226565 775117791 256042341 920437260 496998015 560058701 22070631 258903134 700228081 761891536 145137779 221625252 316021991 392476193 271572809 779943484 333333784 920210950 570363010 690415768 578049609 799087925 458631855 684532194 298698664 302598493 632336898 716167330 781718887 831563764 858078352 865236819 280568527 326793231 789478674 941612747 441922857 996759245 414087508 968818960 544024567 879527215 332477822 467854071 286737570 665907118 69178744 502397362 708267501 797663579 852716393 928188859 311586871 628236316 629524115 683646390 289848410 396896965 78570949 206796484 312456703 591771647 652318626 788334073 212707214 457361988 952230977 982600798 615855693 923340636 290134531 600229930 274587337 511046596 66046631 953502448 861816564 901715189 511847538 725604814 543998291 652383021 921450957 986066697 374690840 903106775 896299936 911687077 77946585 255677444 636087280 952929467 75268008 673651904 599795538 836877353 202345835 688964133 173465861 989377122 166297077 250153799 199520422 774410973 466172067 593051215 751013024 868874311 327362646 643867225 406958457 943654415 796097357 835687298 416949359 833419635 860088132 929338816 479860210 554116339 229049458 982236234 810454984 824975548 914933246 984091359 861660268 872314478 546851928 845604247 651677113 913154858 326421136 857023823 19533181 518595225 384701626 866798026 610023534 824831539 915452265 951235362 865506923 985384022 934953156 987844188 930695139 971399195 851437573 869957286 217374285 874983691 36388037 451604319 789368520 994545537 115640384 913252266 511667538 945394581 486030236 775063208 72304768 876210085 925950093 961256218 23029798 319774796 96023483 633032811 838837972 938046418 707620648 942685372 966981362 992889737 693331453 824999712 19749906 836846206 150839852 643564696 870988734 882573846 535203316 878361014 205786320 525172588 2388862 935595480 604444387 795572191 608665335 689854971 74499005 734811718 88057067 130168777 12166379 565227314 896257154 924321167 397616592 467721943 806676229 875619117 977802116 992451238 726016567 762888334 851410150 884672196 603485135 984571682 726646999 748027608 505714709 555782845 618325758 818356108 18604393 624241280 710424918 766194222 794934361 879255290 633606454 739359838 663845189 911667593 798540978 821027508 329444624 540119825 829793171 840771113 641284326 894243462 696265399 766213781 738668275 807975624 643826036 652619795 202987478 229491383 787635535 907164691 899743423 908039128 207942163 666548813 132422486 370902392 579892429 591685697 855925274 863447886 887972795 993524931 311842510 387650645 59307926 908520758 750873138 850441972 525585169 893122080 11188512 193956116 51447959 326261189 682623617 917857217 89094989 924348305 192301691 975315083 872817564 892159890 39178746 832922487 720458541 757942496 929867817 956038895 849512843 972447946 799030656 885331771 808747192 961282600 491092824 860786158 26805422 192771719 679761184 760412159 214511173 538841369 574489212 852846336 748291169 781539543 290483852 913237912 862333402 907322282 368259085 848288623 551731344 816429270 917937168 945840572 714759264 875466469 345658173 660037771 513541188 736988567 298133215 579778547 561868084 626751599 353124520 703795425 207154316 410272298 519418524 695746535 511691907 555702935 109839989 542994288 401825816 861334858 951140562 969152846 404908344 723906374 639236031 729676039 534902293 677253112 1652286 578021942 703967516 885180386 893152490 914777890 45165545 160388518 315229582 870915646 177171993 515614366 807973037 896090414 450374144 925637249 549099943 923989615 236804001 628202986 715804141 724375469 190987428 583216150 708165818 914579253 938114384 942316815 972712879 989086428 546098022 972997246 449664412 727584593 13497763 374457768 141245466 611460501 417973191 419306200 193115410 693427053 133113261 464941853 55224957 731716323 428127408 918170464 477163742 880374932 352403065 763139112 671632731 733142784 714357846 841236617 203659025 794823823 898139825 935103047 395287415 996103756 519809009 528774366 751957140 988161199 61872835 894096592 151218826 506573158 532827789 781801367 942195939 999979456 265640620 460262950 210760913 768802924 705854778 906219690 516398665 870083411 46992239 627578461 945578909 949598326 24553987 881310937 259956708 774861743 597577710 643910236 28997564 171076158 338698064 751761630 403618287 479108482 232931288 503729932 571207978 883524554 682505959 920862932 658605299 766681927 693711303 710609096 519411587 622310760 772523103 935613586 129141433 505149054 440233976 607958410 650853043 674774023 13776793 216853886 855172291 970163062 516199641 984768599 201184882 397045509 647997278 852807381 481425147 974839058 86149354 754876624 582508794 944591744 500388269 594220547 57437742 386741205 927963405 986155001 93802936 323340410 411946958 653597758 403520706 408232524 788113069 882684902 319932456 860266577 710887885 926500258 652865738 971369829 243866522 289284475 855074759 903619960 847481122 985796879 883611640 911132447 665116304 819984386 182021167 232434262 691425422 926437303 888439292 890401730 52802327 61090650 78566319 128227569 626347120 678809812 397938504 482827415 558086536 921069991 7958256 544372244 880393187 954431886 384356633 922870990 666252187 733723154 39118305 694779597 496948853 623423752 880115660 940754062 672120630 979182218 168140453 223563050 130147083 262621777 514306161 874946198 155880627 975912015 224989750 635252512 28976203 675584369 318052419 799592792 961059998 972942671 186023361 773408495 676016206 942320459 151347509 256107176 294443682 356590767 468183782 753356980 932543150 976164947 400630330 545237392 345133941 358130183 589899986 754858574 27299401 700881818 696664791 743754087 106568270 752733629 650389745 773781191 697685329 788460038 417540335 678520088 600631753 917188230 191601084 224060608 637569451 730176394 142747032 292454533 157883829 828882246 502036146 779783886 885220077 994257481 446195477 446778002 288494409 381043191 134163357 785890787 162957260 326652375 509759625 590455249 802106050 941379530 994255202 998035666 527894138 565328957 706077025 906416359 57581057 955464498 689431528 701073545 249854296 909594865 799219033 881478215 660453738 682338962 861076686 920350367 561976185 733262707 474807370 729257682 194101800 557915334 499825172 735309855 751575244 762605191 463096725 482352339 856859529 962981952 720508158 968418194 42849705 691767783 530323171 587192834 733347860 838637124 477520031 973193618 861203069 939907325 47089092 727582265 670385155 927203007 10718646 182451808 495159781 847725439 553555089 801518904 327441611 829489436 950748211 990304796 733122422 864699199 876186127 923577216 109798012 490120412 614968498 683782118 355165324 396876671 628557659 731374485 40551820 472857685 54618611 500905624 563028427 625331021 913608361 942807517 356043219 641606529 728571472 974987807 621896766 840203384 61637877 639484188 370280833 891268484 838366022 861352253 971209099 986648944 442159299 595157774 462935423 800750813 536232631 981653422 473485020 625402881 421598782 950306134 197995482 947204929 876387995 937639165 141832005 865712795 575421055 648102735 225596077 538068337 568240249 909933983 684071807 699685270 977283437 984044415 351614283 695631253 943450737 989854068 56600110 240217789 44194022 746851175 945590000 960735600 55798906 368483554 293311396 769470558 552435208 569961769 225059201 250297056 431296790 906457412 745554639 776045240 904409493 972097126 938540522 970752071 559789557 815036699 988292368 999732893 255945511 737580789 625195637 909268770 947241072 969823134 83099327 94072747 988975256 992641975 234458403 669667226 609096973 703989987 559812474 561426458 13720554 129242280 63998283 947873499 517834905 893986465 52917439 107578552 39501512 946755802 427034593 847908091 556925860 585095413 487271615 916370338 147654490 444978995 352953451 774662974 444900 506069896 50778064 863394285 829295393 895826511 554669559 654369371 619536161 655319237 366258604 405918128 529178316 880581249 34528238 513471938 1692729 763369766 568537246 945483485 382114111 565753543 5438997 254095516 638524351 774925069 327178015 504311522 411660327 858151273 596795021 887438563 300215752 660680896 919941035 999350960 686610877 816301279 279207971 321531585 52371601 831712576 481000713 801542991 266955812 708954607 553113663 835333262 276255082 588115493 91813368 652054673 243788655 649467071 271105214 589458332 284860409 588456681 502044451 891269099 479803213 654106214 274964771 559548221 831781830 843752873 974215678 980787942 279249835 961824884 114645300 824360028 467765494 740084498 843483890 943827314 818653005 956160180 985475204 999524466 28816144 70391803 108313128 986059214 137228699 450849405 313607631 472645741 682353472 879206930 602219624 726678240 135439775 652680459 783055548 925797694 693586797 774254438 514367483 750594631 670121713 677507582 358089258 954929681 142100925 316879474 738952534 825094175 33252374 908234506 598416798 695892626 131930924 783624385 729285427 991602154 238681012 554119227 842585503 960581931 208294573 540466403 932825464 970851040 488768780 927000703 336479591 676210336 357193382 981142929 744974989 822412077 763979326 997283649 585729683 877370868 793014692 996007962 29718730 803799231 130926117 183266997 441435680 808644836 268369485 657066058 28571199 235502696 483305197 943137675 881677182 909858344 812323984 886872162 384244490 732410071 355240679 466716513 978002734 997089826 472547661 491361371 889170483 946138888 724133713 851353392 604439224 774926074 604990822 836281777 587889253 866028235 529661273 962819641 180100923 593825971 12341463 147321923 435588339 696752467 377096740 623303568 241971312 573043446 236096308 423638825 404666083 466975216 79430114 85232665 312140784 957438940 426973150 739712436 940770701 986196079 449911079 958833147 619808627 744705259 717744656 907250060 796780217 866869816 414290436 782376537 196337579 827949900 474779763 804645387 640783185 974040692 404283892 723201544 672253846 735922420 149133731 694336373 596039263 990791149 134758502 695702898 736477102 808943040 942333355 984413907 38373538 418064570 694920506 992807770 928873221 944924711 786194938 802705250 714971635 914613267 38722428 230806236 223652329 601124688 348158901 632848188 600097025 670545969 487780293 854841196 597950223 621075997 181533410 559916756 586101165 876700115 246231685 616707999 222954807 291863767 676270887 686400223 26433581 111547317 356984965 543645397 706826965 707380370 227008842 733856853 856849067 857523056 100401452 760114044 908347475 918580621 750842936 785541454 676071857 905191613 628693126 653719447 817842770 872833548 629282349 983844162 316744294 451463628 555043657 835128093 192007445 192439546 794416131 839354430 507103567 630914158 136477522 729702991 849768217 914636303 572393669 797734998 549011089 912959942 281767345 961055287 561220582 886700359 474842146 487693747 916336886 961614358 982667418 987477409 258472464 400499553 908012995 913064329 16029142 449678932 251009540 418614964 138843385 214347146 77739172 930712169 377259845 497832227 154448300 989319493 609947013 911238384 661301221 955702292 946873001 993863931 818261029 840250040 952062107 954806885 660373642 779630275 142717024 817131239 835498758 905139692 683744944 915160441 371509369 589179620 633795529 945725973 868267029 998775657 140296643 908153614 605942332 673437992 637636561 929931458 800479435 864768763 371714967 848870482 426496295 585199512 797023157 924774202 491533005 567088906 412795819 426053671 201633053 264598288 807878634 847982930 498729163 919805853 522545152 978996330 310578024 329289954 566081505 954230164 461910681 995965186 457570784 753603955 536203821 830720610 119981647 328076552 133006556 921100315 466712789 565747352 484617134 611599674 135806011 528017778 4406843 509872782 165808687 811049306 160826739 593626410 962460073 970481145 621200911 987049979 644833027 942707520 43808629 486245637 332156569 616763582 747597848 871183585 468892418 788254873 885073879 899608702 124157982 629018660 972552709 994522351 123083880 872858651 654204060 835706267 384690698 543106630 938339958 989259490 260412866 989105300 537872264 803100595 85545253 884884198 580262300 783264087 550008963 976733950 407875964 788522641 147159857 148937010 374742542 546763588 602030282 758888044 159003705 294724931 592733778 928478992 731822745 944697190 102297965 168999605 337936571 532478400 312940542 534295587 968667359 999172583 785042820 967348681 41088925 446142687 360590522 916045848 650887736 977449906 693988266 734021064 756213399 841658779 728551049 766346164 376888028 963163355 537613756 984971450 375181361 515421340 400360237 801729415 928253923 945377344 189877710 817380851 989033700 989169893 937950293 969777942 479064191 662132416 76905254 323126528 10114253 382187872 64512715 989900886 277460318 684352573 63452930 730320005 715156648 867002009 270500255 673479002 139865646 573062333 842212086 996883977 508732063 996517548 527337832 866206775 437904634 666712177 838436425 854138059 243811966 561879984 610492618 763311095 262740680 715293618 656384998 739323083 624392981 968555411 791726227 813987398 770590130 948512925 504599049 882783799 962705742 971721072 579304411 896776218 318182741 515150776 330036242 468102595 426478617 799730895 445720353 466407265 83889989 196820074 544580366 904514932 776228115 838320735 18742370 58869823 126229782 137473421 469988632 679503702 952660191 984049651 957995347 983358063 698713872 988406845 412389268 534050434 656223208 815916153 794475735 962853575 259743725 974160401 596487861 599009275 68350113 972948676 952822303 964846778 128235557 656235300 327179629 393859740 139748597 397609949 778980094 827295260 441373960 593826630 760314997 913151068 416630024 860879600 92607741 257621936 411207999 918696411 394009370 405188452 132969496 220991698 669214360 843079894 931768233 981747130 636277558 993192976 17043882 599294766 969341672 983665966 925604831 974682630 546524000 739604188 942921896 943056714 743337699 843600207 209060228 508430215 831631529 967898901 677729138 882568534 140735806 806757988 70869554 778212303 740858969 843956438 874542640 896622451 893561947 963739923 747152848 965250394 299311901 892308685 18338926 343539138 894383298 987693786 443761534 557719091 835405588 945882429 256782501 393683167 316164332 342438720 508918656 727533758 337708312 682323883 845234310 963428793 729447091 897926507 473883849 922454929 132186203 966394834 491797758 715079704 778645828 827766817 710090537 876273488 184564917 761684630 706462086 807870341 262953502 709456312 619068374 717498854 954206369 975892301 157521945 281283617 701318094 876054885 93098463 858373188 339367036 639575162 718526904 881468922 722488219 899496009 811305729 823776351 793262133 956101190 945250011 965100148 511049614 797256482 408741569 924583806 805371011 990664123 575255175 844414040 25660585 705605306 358021123 821593862 895954386 956997453 375582441 623952390 856125149 905018892 832027537 952924788 212636428 580219767 487149219 490297951 765883836 979119033 879361593 924017665 467308324 594584252 755390647 894670927 941838688 993841929 963384016 982976104 576316753 739729761 525732695 530306520 433880182 676319973 170877681 981767663 526724674 702747690 994176002 997346356 678185864 833203938 182426524 302332071 539017266 777752800 531578135 884437423 992802139 997615305 653766165 688967586 681288181 725714840 126174405 602914245 88689740 805058636 858104076 932125530 584672275 606133428 317747806 777088331 147013488 591850367 132414606 423075183 300547278 878291016 565661835 753861620 775099516 845547026 251310689 774338787 178297882 974045765 58115288 910490386 66130869 778938805 11788258 562106823 79642554 181309955 167885506 305224330 560836625 618725186 958056092 979651699 253695333 630665519 7002612 589105833 254196640 658349776 536335440 922082887 127546369 584602701 490989087 784272455 688395492 738164525 409635776 826252392 173126788 278715538 626088505 935561620 576146031 739188255 126549972 214665595 511241021 766027771 42363716 999384085 138325246 689223036 344604728 473137759 652394165 659291131 508785921 757944608 24415753 119459216 762059609 984932316 74529249 350445517 328586728 910848026 329009474 330422304 29289427 772108808 736649123 885402875 641930433 962058793 800446981 906079406 312920212 879603099 956167290 987109123 600517067 926982812 305349412 745989538 374024630 697492326 664580529 905362194 701385288 723760545 63586290 724155697 186275368 291806889 693554471 941115980 816470991 839695384 137326577 176760588 479675764 542687262 68396280 687214413 412324101 663418380 7596758 84022771 247856059 756328196 440466314 965718585 656723692 667457381 526847190 788305521 553159121 583768311 427373835 604293486 985065056 997910298 105291707 346144373 954436038 974643285 362288421 541982166 732523868 785939453 428781626 851737198 484880348 879128473 936601485 988248609 23723923 670025112 992702320 994716082 554106328 617012784 37413392 615334497 476004591 680590823 560252671 634357446 498927964 783526595 977554352 995680195 286204429 983643480 50846890 975106809 206263370 995960924 128477607 630735148 358169292 657125253 649929196 872313710 823570197 909553698 285035274 879378527 183038081 932492807 837593066 897810935 833216445 895748143 636714201 661321395 319493077 569747178 322203224 764950755 874904690 916806061 859212512 875150506 906546068 976225529 410389860 911583886 979991262 989749631 527333720 963835010 200794197 608475266 732835779 901467760 203206339 685419037 607538227 763862019 432487884 864981295 805824715 922384859 999958555 999959171 909071342 969508853 355882139 507008566 973191543 980105607 284356375 377937136 413970698 594854083 922946949 944160924 407234802 835636842 710548465 782406804 366631152 557197160 647423750 810837924 636013740 711978635 349937241 664711430 395133540 874810394 881727175 983877845 602328749 811860573 801539091 854619363 551415981 700596704 204615540 878462491 777571951 971021539 169897922 252883176 43111618 704173505 47968283 467390951 795361161 913371827 656999187 737502335 789855010 979517797 457865334 730779495 119035823 352389397 835168060 898865585 244196105 369614642 584842026 822127581 530486744 558626035 503806590 580568307 505174641 712825076 825410013 989374849 317932784 870485162 402696875 835965161 93889329 763618351 135691569 221021351 440901286 550155556 315618551 633657361 704671831 936765398 30132118 190370212 642838904 887627919 21405028 354885732 846409544 848344602 77831282 138400552 604795042 838829382 515039782 985272054 191420180 657040302 830609292 897011826 917013507 924888514 7982260 995512919 326802144 977477611 347116211 500841907 746971277 828544531 463542135 925600343 251965686 313645689 51852383 424398717 171064192 989914579 895668681 984981525 849079611 901442521 579882599 985873336 133821509 331675714 417900930 464434481 826423813 963648939 425011966 697839684 585610789 824919288 453969814 603115982 241679111 687767120 47121253 906574021 580828744 910902483 499893187 939085129 586241802 794704739 239271100 868555250 983631239 996750736 158083612 858020296 458687254 557173315 380923377 985313860 48657310 193103107 332166547 711150371 709163839 789427583 32495376 94917501 159634165 321049246 303060109 774078678 248676571 501018548 498325228 561995750 70458402 845253675 166301661 188779264 370996463 851711154 789474305 896518548 724395957 789267968 911397157 998822345 249063802 826263650 848000430 936824328 380614990 655875812 813308966 852120767 686837967 696629508 107279932 421144708 222622013 243761408 151546846 580589483 341162022 710003123 667639753 830266802 510896611 906896010 292571171 350222984 933273542 997479446 450740822 600721974 632423980 912472743 818430079 944800826 372502821 534505066 247725456 776106991 380203890 795508567 350245601 526324451 534622938 891950856 300186372 623017848 194165660 506741471 667854950 794043199 851077331 880327416 94893652 391651738 240211856 797756131 966270890 968278222 520495183 557235067 286469153 957239561 57590330 247303296 380892161 660572705 380608571 484704551 148075146 710987400 905039569 977245282 443914420 612076780 334392207 830933432 761508000 768057100 214716973 860699476 926541217 935811757 339901346 610130877 985689755 987248014 720127579 990555015 828038544 962272590 89371651 778994119 428315449 543706611 532750317 663788100 948377818 991005237 692545543 826995810 633247641 756397232 578541019 860406346 328693876 501666220 265041614 572274489 237981299 567314599 624541745 777616577 551686004 810469760 360129457 976688179 855645407 857970726 132731972 944463840 780967233 830523413 555786454 675069786 764153400 918279352 93189964 974041349 507255060 566739686 128863510 958058608 347375556 857017577 777552823 989492562 178037692 598735322 238414830 999473161 502833578 652500123 36579565 997517966 818918866 913829172 987581954 994571260 456087459 804607075 432822491 673811527 778742647 886540923 479515128 530770582 127640984 252879226 761171631 931032763 248213173 558351683 181994801 871557108 339427912 889573333 624815434 998937681 435517622 813873767 396635901 705669660 159291516 252613958 638563568 924240575 622932694 760219083 23350284 598452499 537274506 943473893 334758441 777396876 111398121 324624094 688501969 719285626 361930281 765404368 415142825 744898886 145684655 390506974 691968534 802245668 356377907 432046989 84074633 304619284 571595444 610047825 800715785 907561769 697282977 802158909 943641935 943959906 643216447 774501311 721149432 830814825 858263114 873384440 188489200 729034958 187091205 985823623 905128218 927818314 422968588 763820452 802787837 959796704 309102441 363347050 3943574 820351653 695439114 908220206 703360687 953220507 145335964 798695052 323355360 834391581 617291731 884476674 290894326 815489411 585481889 915409996 174990222 407090601 234208219 660656293 860554765 963763520 478487883 687434569 649620961 666245618 662669712 974878342 559180396 893637513 138741174 889906454 908069138 965373502 745189408 842888802 113030346 173827854 608260748 806999756 748150248 927337942 851852768 885142599 201280217 478563868 578366858 690605243 813261269 990466536 673772647 803658885 772679855 953360121 853305582 914139508 833163988 942014685 69151737 239762629 80349497 462336556 781769912 943844428 747981738 867256349 220614160 894261851 829346749 944164449 299432441 678987051 901080594 973729859 847106611 938147320 399382175 472012051 860667545 917073327 236911968 296259647 661513308 853933955 602131831 963867661 207533738 226209756 392012031 894091674 547432166 675392907 301076979 677280601 182258635 233033395 835226520 891815584 602803471 962332094 641088496 968330121 309192048 565527399 917468526 980620850 28997322 644791798 632056838 959774973 912978921 983650796 113972247 366445775 834664675 877033923 563721054 917301242 423816757 555978671 59031094 352964605 534415276 818485772 648969676 895311325 9131895 881785644 334300042 612065131 234810265 414204788 663941934 950283301 482999834 958658903 316336089 821046599 761407512 997616082 724122638 793566610 242368521 583141449 842944149 889766064 814430642 837977931 717232253 751335457 597475262 772597186 592358187 829399215 373919072 832944938 23957466 160977513 369938883 597496124 638732931 664407711 612614164 643365809 528247861 964585856 189969998 285810801 741004293 904192988 651501062 785014575 334991276 513323755 347597472 444923194 33827415 80693201 86716886 851233176 184826039 933615662 642290488 848892771 468146194 708407897 77790177 165792588 2108064 138898488 256576691 895930678 736167879 875473113 397203452 866495028 404398812 463369122 8066457 720376886 914340125 914542929 104107431 559885696 247941356 484749254 432714752 602919698 286971808 778085707 438927107 969601161 637875976 650112034 210801965 776339125 940692 892088332 375025483 978206615 38273440 672811178 183313721 333527109 177293868 784233238 514778598 821149025 796439678 827865811 819776942 955615063 510254414 954630828 303278149 537537176 627084856 869508036 597380425 831849758 819891624 904088353 556971332 900976510 341166720 578255365 42836599 121303501 130542173 792937781 415622606 762031715 410201746 843723745 93462830 136558134 455499931 847609046 276784222 746725176 268108841 806369862 29737478 171351699 460859773 468387180 801980767 930886184 929188716 948768714 570660443 577094040 85335564 486087480 631705861 861908687 726261773 753503194 655186680 901572059 370048635 424503342 28591396 283815686 686027864 900586165 56260984 290640410 548337901 692354743 438192173 440211440 304151820 698507496 890805692 974746738 431696021 687102966 245090287 856853800 755425457 959722237 238371039 990069110 106721234 775845461 22727230 683309356 303825911 470239210 327744657 496656142 68902514 553391802 321041350 442820456 967509498 980330932 73370057 370917944 56254123 422961717 707826894 719061725 235430613 998611705 453609415 575587183 348692119 638607050 352332280 784006676 101626006 591442148 794488584 987368588 298204372 579250034 783008817 858070552 209720162 912703667 643430328 796433522 798804153 947083026 829732141 967712483 207870388 562360809 245672629 558408885 638484197 777026382 479559344 736907127 165706934 964455458 703444713 858055444 534513519 964000153 67574447 325374360 138098060 521596367 145828610 184349380 756594374 860361880 372457644 949254761 967540892 984882609 111810832 671236556 29784598 887679587 412698661 559645143 387633271 954243062 453845035 960009142 454669534 640243662 790184689 810500299 597878581 613123584 655948701 882676785 218236870 994501672 233308414 744329263 318016380 389589297 748420630 982392851 312647451 450926814 424276674 695226582 557920970 621263160 856093763 906266770 840298680 959543498 422447052 481005826 761958721 921364148 389062362 716771336 165490750 443732696 215458700 971633652 762146018 941575216 451595463 788130877 468887959 558944287 669920933 834378440 640943473 847146765 543907853 566875048 630113834 808417262 962421877 986412111 50893586 805695466 76296829 349611917 133635087 152534613 322434911 743140575 223476166 532840722 734055043 835683110 786051874 797274624 983020684 984962672 507949444 612156415 869314556 954619282 52450684 459309582 297099311 437230302 337485359 420623121 591095766 947486969 478220037 625057165 323709217 995295196 126455886 700072157 168082707 339115393 449512611 792782007 583662320 664310530 595231708 798495751 769712411 825641503 380981693 598900872 305978426 344968981 546722280 854693819 869268131 875361113 493728015 767957444 736652485 974869566 340781194 824164269 610960936 625343936 284168254 729548982 396415983 438530582 430363942 461798559 893972429 927759625 121389401 435492559 872869870 920022802 826367565 846080345 830646071 866868872 818126393 963241258 87998412 415248545 488750814 865812741 790129596 932151400 692313500 702521057 442722881 513879850 696844811 830825729 85812064 873570987 444694924 683897769 800879089 829704465 905293194 962058200 673305949 867603587 980570179 986331225 147626308 250565557 254087806 408970003 980215104 990306316 405837447 778819124 725177667 983525592 238795304 826241192 144932372 343166426 219846423 372868582 883166250 898905531 290926118 786802941 940164917 976139192 751545375 778701581 9780880 375068104 383540397 996325448 339446866 499353961 1729596 579981421 568676745 831072771 73904709 554053003 235853335 831617682 553986125 950848821 534021360 805209432 305524405 925338999 483658190 608549432 20238800 492034456 105039383 568462477 341975260 634946539 161328838 924279777 244019495 508978483 834594516 953950974 966471318 974910707 733789008 957167725 756583998 923377788 998999349 999277230 233961397 751183062 231913457 792727031 881403803 885433888 981196191 997451815 271965807 909803091 67372089 222478419 171108871 635394053 3370948 791851290 748801312 761366679 105894647 159069979 13344545 454328259 182355689 271225247 83843468 463218934 733502758 817818269 105157200 957986944 995089593 998845740 418395379 704024970 600900499 637249418 890224142 910927665 155351305 156822077 530982393 680269134 902919384 963933406 627325563 973687956 177069966 403110364 624812575 819652758 729423399 995822964 461248597 463607608 874376289 973325183 812748889 993279908 313293110 515825094 274471745 334717331 188403504 826711284 458240919 921122913 850986534 867036053 28125162 538559143 124661404 654106580 50190992 703200330 494174467 868249461 909034372 944953911 449854921 860950791 351573827 708395493 581992873 960520023 476723756 678216288 849600128 962070871 210384569 671278906 426247073 892309344 266339030 319071532 580510930 639545098 957091758 967549806 404230700 990979133 473627811 799373280 742239267 872484926 802573182 920097049 92001556 605766716 230624193 274345692 235230769 848301968 653281698 963378841 587968639 714081752 713895635 758866182 145231063 292669193 850012333 996478987 778835484 793143712 748099977 939219319 576887096 733879365 984210155 996153302 540403165 772146383 925126290 995414320 537569225 858305392 466798436 934298028 745153863 897381231 537170713 760354623 226000430 581070333 63990034 704694189 889651353 890213128 752427322 822291770 341932769 872173082 382015715 693164660 224486189 706292953 807576321 861457893 32710985 350070557 961900794 985695732 360904426 719573236 228312615 952585297 905199198 928652499 299721301 861812071 755761922 917388865 513689031 516731334 103673373 372389620 496917171 875119137 168230237 759818587 969721255 996440405 323230223 893803981 821406431 844249907 627359067 820057143 18703286 248113112 330158179 968695879 423551889 815187252 866995486 935494261 267523977 605076349 703583199 739772719 645804373 706056014 735187194 950219599 54389281 508165657 11111335 895311830 644000260 694751829 671275062 939348379 958798536 987045013 579598468 764361202 332049945 393503018 951544618 982990284 95342874 252167742 506557243 889480217 107423918 635958453 651258427 856970775 478855736 585318177 187782731 226494653 258073680 304662571 224157280 951930000 921891086 952785391 415526653 662617876 394727166 746405944 812278013 954290957 427425975 884648365 43585186 78233930 43671762 93821581 314488336 454187700 678721498 819032710 991385988 993368180 742871537 938246827 82273436 276586107 563617206 667592403 140215769 504785757 345388473 994845481 26929906 195630920 621693339 810503270 385618923 537235990 707177926 928393977 666665880 807728948 83236139 610668813 414274668 855861873 913294875 963990803 271226862 351495376 338203835 595300734 481183377 724785462 22976371 224168071 358834047 617778257 590013173 843833296 444985451 923144348 269874474 641781537 325895216 660201366 617229649 740249323 587437875 885815882 982190452 984022984 770278460 779883581 856259929 937121829 606534830 784166575 371699332 920884903 133967495 419324523 308719574 341464851 130415019 294271924 294967770 721476980 982526088 997224366 842392597 964029942 888527651 950185722 174083254 786223209 338324244 656883652 649154243 823343930 77529727 661064421 176007088 575330765 924937628 973957686 130033295 894371153 787416646 949786198 409513754 493558977 88591920 635106152 240438161 465407825 127162196 560919308 37063200 111591067 752957148 952352841 981806139 982463670 93202068 192497830 831045955 896053700 936711968 991480234 756779773 854513152 974433608 994810258 768069020 873874345 311981218 542607922 754774590 927119413 796369960 900878123 241460317 242847829 256158679 589569826 131907266 476629196 668479184 918788075 165732194 559255122 285551333 493407032 504281487 962721986 13420488 675864011 291158414 873165962 484029099 501920219 179360198 434546240 869089356 931265699 973730189 990939498 540869643 636979274 888807320 942826442 651011331 944168090 322511420 941600485 342518494 743491097 261872723 907056840 455865616 810544307 20874927 562123770 347582067 995443887 167179253 603644908 463636330 959640708 996325612 998887303 837358083 982065657 440116048 871754946 908309931 946948761 204924905 310726828 533663069 850920518 800093687 999360533 150026826 833312617 43154844 534602865 293675566 664426227 30637650 580640800 470847194 806730214 519643088 825665128 291880209 747928009 920440314 992931908 204333217 355752512 265830942 698516175 902548644 925148405 592614487 598319609 847565116 937026302 287508524 450833047 761712487 946279703 810178292 974151046 215148653 463248447 791543224 893593615 827802890 959324103 162810569 183586729 115726986 863871600 515292157 939966292 58004794 68656338 943648636 977533865 241878944 580648766 704932268 729852078 253128692 819071312 228993582 927827043 965737489 999087004 940770299 996579040 330516237 539874840 199167631 948139666 581451328 714945222 204192704 836539193 25637650 764379808 199643733 333632055 304919813 581160968 849020327 971400725 132777856 671868218 724488590 976311114 134343574 226653033 653031070 991633305 620801821 861012809 525950287 681227639 748812265 989024547 891496420 894362521 284083718 714746542 748804916 938293522 717370048 992294887 292137526 892434486 558164217 656784749 919715950 930715114 294098105 577301027 550217116 839059936 866728289 995351040 771365674 961638749 156991530 425048868 752493012 850154342 55360474 966510370 665160647 981850704 737664914 743993208 854367287 901998752 815180959 969110587 966161279 987228792 390180337 704155665 23063189 201593459 171573419 520529235 167553508 498542552 202831248 877568645 259591578 846511200 670283670 909585587 682380503 941590790 870062459 909787180 338177438 445325791 900161920 958458136 439285899 962633078 752238074 814506458 134120448 467510417 285188581 411753329 645047663 727690697 628092084 689489563 437416195 641624835 369913492 777257489 316042370 443519472 888663602 933158891 367786065 872850017 799331213 973516268 844724705 887912576 121302176 486289867 672563167 786100221 631585487 885465757 836987752 859598168 702998352 846705942 463407101 577832167 815892913 867837253 317710771 831460011 696600647 720755743 307166623 726575277 750328497 958905474 43378091 55486494 963121364 979026470 540647189 731743052 892632094 933223465 981554616 988174243 245536178 638122572 460817500 626454849 592118255 664420536 504744780 669509286 65243522 685051955 722092711 977398274 674273796 987987244 102946245 466597467 522433112 604404623 23899157 495439161 303626363 344505821 66716019 115062255 509278507 939383996 110743628 717197970 355325624 560826500 790227904 799146330 468525188 899342845 541628257 995638280 73138664 718854194 917218200 996591302 488234761 654321676 513949016 816706382 234046680 854526704 761563196 814567598 86053438 929700996 985595048 992041281 656095474 717207774 351703702 536799997 974640678 997731202 339455334 855557267 930977336 975243126 750640942 810605997 133057818 934940098 910119381 975794482 122248579 630859455 205187352 797433221 295895839 640943354 453835348 562230429 303472822 360181102 204686790 516016191 467854915 912682525 140253730 823193519 617709317 903656380 453483168 454927254 98157803 871833233 795056846 837118191 738020850 903891341 420646454 725542188 768015173 995219422 576188662 990391493 673085444 946711688 287471667 359115530 723484125 994923300 706431985 778954003 344458090 374538121 488701612 803282340 304969955 350107028 419348201 724915020 495390028 837087142 254719473 818311078 246051877 413439091 513897213 741961634 783760473 912567336 631720369 959179500 385929454 490779837 710490984 960665401 166884073 440441122 212715666 358813007 617741168 723580523 87025854 359557271 956188896 979121192 126748539 520858117 100507945 646379559 655613697 666368337 219600306 459169751 841924641 849114323 60507032 802829029 757014864 864619873 412503485 650916279 681603403 858197977 202349769 335911050 639417888 751077445 582397855 889219137 78269068 681935701 741231281 873078592 486019634 958022622 151696890 177626666 375209050 659787692 317285958 687348504 646852495 728236984 243935449 976794646 493020458 628005427 95052608 182811801 459234875 919322546 944295889 998041892 610645572 676719293 217427633 747914856 618563350 888966094 726339080 777327558 996502715 999028341 661979952 824604874 696425602 943339769 268849401 391336910 177362832 650126653 945441937 973482822 658434660 907926172 832038687 837635035 668098848 944886723 324171180 451910308 473150684 665648363 883077351 919855763 977708095 989096113 361890562 863376953 638738269 935693604 193715373 482042654 988378054 988664449 706059661 918956418 747596904 817007872 116022529 771161785 601098865 849840296 280533363 405295373 853016991 951222107 727654750 922673188 457049 682398198 382894157 447617159 327392256 501114421 509792126 539490528 198726093 549856909 824838711 875725691 648496048 662850165 880560017 905142674 875208307 991581367 229707133 635842821 900509274 953137890 602710834 945631692 156014857 738347242 124654980 687392772 288516820 913771950 316225340 792850416 239266103 271176677 750590515 763995739 351341602 803270474 861445001 932661066 951821405 970714231 59526805 513665907 718221947 857695291 347020120 535473379 696951457 965987059 471906394 924029020 475157616 954604041 670729149 863388026 235393976 896137418 445575154 453467772 529113429 726745083 939778821 950336532 9713105 718092052 549040618 827742578 358115577 814637881 23841339 560710062 961506355 968576613 484512238 555796283 849493709 970941735 849475964 983281410 703283637 943598855 492090839 766618217 951998798 987587463 612635154 989130977 314076771 724167857 180477914 771689968 791044511 831301538 981274688 987504806 297735111 608745294 81653765 566638493 59845792 245925619 244267027 971766315 136781292 804038259 658728672 792828830 295303191 453309026 493725013 782875731 190131558 337076149 925535344 962695129 56481154 197183023 114954838 797889254 158085762 930243833 150301962 922582150 783639930 933895171 849625498 915431180 405120440 440428554 763136171 905266520 40319789 778316414 6574429 139024698 303622337 682872970 476751301 912039057 74560947 391544580 415076117 476231240 428302693 591321312 683189719 727801901 199372487 427107107 75137230 727526138 908113907 989686894 132710960 970107916 539273423 644694046 870978841 939059265 793537008 986521315 780293507 964498509 841681077 931829919 259055817 550815248 485341492 557631778 880707866 888544843 940621810 994405143 461800575 475333467 581244057 735077866 933005650 963221339 251597513 794114330 804742174 895102516 511394746 787616478 475058383 827793075 690882786 952230441 283609842 709158621 625246015 706568561 803620554 843877888 490702749 953383936 863689018 933482132 11579213 547392314 305210132 827981920 393568029 964680357 187042323 790347562 769155394 803995029 480546783 544147418 354521019 978227080 675686359 938498500 409815086 507260069 16901254 364239599 18026481 391812774 395925194 769823582 679690692 696950078 562810558 658515165 374782540 637184134 826834166 915443970 165333515 481249659 666905293 710126789 293329055 317895039 486722466 884103719 278400238 542281991 250327903 711225306 789625174 920288907 257740304 831356836 323612824 555334143 48606879 443881717 974993186 978110169 993850099 997934583 516291587 796322547 147144557 376022306 166111623 215802802 959407755 967892985 459230107 984572901 256731960 303628373 958062969 988554555 405224274 847536918 424645417 516697801 926770723 980475889 693612925 932317896 588301599 937238205 783121389 845739036 35386116 571250943 456433447 972572045 433733100 793670692 216165390 454383261 305954321 394599658 600012548 904133753 904945442 969245981 121390728 342615080 35403833 284685785 115483259 781546724 466830383 714490753 600469565 782861777 995557202 999822733 647107011 865530211 506453027 915757489 245852761 383625208 605378962 961826981 429880699 713849399 41923771 224798143 13205064 465726957 909568002 924676836 578573575 583120004 760503886 790726668 614724151 809676919 548170619 990126950 534661281 968529226 898352372 960294474 247026293 997763399 575208471 732915534 772763383 945583877 329284635 673419142 340723634 512516575 593132610 650856693 513025968 746915592 132590008 207466702 577002895 604891030 737250299 942274003 256215256 654291501 540177394 881098541 124512360 340527968 225842626 588002558 104886359 828234003 275235549 323475476 673769349 749513729 922192847 928567537 265526610 603787533 216546282 232202902 795849797 907055270 936753042 980510466 568370417 883098286 297242424 718945780 167962885 773022503 941595999 960749473 16707111 872792615 782322733 885665383 257638015 956908025 622313273 944164110 477301785 930152236 905082011 969243494 906072172 987440062 494013098 945146484 285886790 931597801 749630929 894219316 882858643 920700604 200245815 280286756 144853473 161831592 566881231 807131246 398425583 990138926 721022039 889088767 685939488 724934789 930411450 944606607 973820651 985471462 293197229 408734655 363575706 889882579 943959128 958649688 143239133 605525634 141180541 313533722 259245854 429069910 879086073 899175094 102368170 850116865 223415218 980229714 555867793 982490960 341695755 850414289 143936334 314988744 872659563 994963410 709179234 875792478 254475129 942559315 334266025 758932770 213623966 572626656 337065001 381291437 455163715 866828927 909726966 925314827 357537948 962654928 816419157 975909407 305213242 378192829 459009721 956104550 600075337 677765535 447651652 701283507 650588570 725053365 712397624 974489828 343067626 400052718 701570930 952451650 358750864 649535095 475889620 516349230 767035424 835380912 862607049 873185114 333701792 648741749 880763081 903213995 838741888 890047953 876921422 946507504 800100211 920334853 306363276 363805129 890367013 996059454 195105884 560010009 687124806 876076936 214183674 418098931 685917798 743088168 869355946 961769422 254560577 346984776 208225953 536087160 198586840 709509176 652235614 958988302 244913788 448360069 183614459 725635323 554698551 986294576 512082105 701285956 917602594 968711018 648972041 944817881 532915439 699605128 677478708 958734879 989596598 995293044 691560819 733140635 532010286 751226818 817133345 879017107 793730905 934128970 680665680 828421978 781465761 812046704 392258628 395571503 313985163 990293367 460372940 508654804 280640413 574249189 763411896 823194144 979662687 992134923 692806655 789320346 586038131 977220973 66412795 400688519 977395187 986084726 380814390 535135540 52159762 936009447 1084631 424851675 684542404 883216140 818405598 902485057 351015015 901800594 92698696 599084260 312114184 329706514 466938062 838892477 707113992 785975447 361398004 919003326 154979385 569160719 467165669 737545095 412925509 926027896 268911082 703288287 640621936 866797294 426160960 634148401 551557832 787414442 717974025 938192356 485403376 992389781 298545284 986453185 991258882 995755028 148883407 835989043 540973234 948046508 726542813 994217154 755690981 838752826 33584452 794797165 633960957 842114900 741816046 781764581 286293052 573528077 936113866 971874588 116635043 527700278 227723293 630560003 183134303 646494580 580695225 914924595 303295779 761364604 824196052 839555768 106788824 892444264 279026126 753207962 147433140 402816968 691816057 796017490 540557179 951025894 282894881 665148200 331603550 826277167 736933842 991735310 88796491 290405144 307847056 417892439 937045438 983830385 257496366 756095964 765946164 806449618 877499613 904395818 533390408 678538172 424674473 845791022 855064527 958707833 383404208 887475144 413724037 677607463 672724719 793458558 498604150 929129546 385693749 692484617 384763616 730314297 900664159 926938147 477987171 709225328 963641861 995261968 424732715 550510706 349703882 362643078 640728431 968312314 555670570 711314547 291530087 880492333 316513865 555575763 937048520 981252290 569962025 793225208 69155394 302663128 55993733 111619282 21714351 685946863 572077515 588426204 944027293 961733314 107470500 653383747 69004792 693172782 394362021 488669368 114886009 972646470 629470420 979382169 238069093 715916078 961679023 985720786 575541590 773712312 426569781 817426022 146999682 817805363 683182782 979636663 465576366 474434997 478939718 915473662 281936384 708796403 896603402 917445273 393834919 477411365 837166656 888586209 677998382 757413699 786893933 901560392 599475552 686819406 205534661 811999962 592536285 622173464 497062882 982663895 646873461 923706031 747232634 860183477 907697041 912619678 923848450 944806875 191774741 633362234 705931546 742084745 391956921 687566695 329514150 766008467 140194556 804292307 647741805 964533465 758161631 886802676 218285208 565598000 707980107 921863881 518642939 664776637 84844086 389380673 60161800 621287370 747864122 976853974 281300537 826860443 918147972 976727435 330729305 881706053 998175656 999334612 850560593 948695906 738603153 919516335 479136685 841050806 811795273 920550105 244174107 711878101 133208609 609859431 321382509 527525187 561171703 577018074 999575797 999810500 67560460 133778301 341037927 747415409 732911016 892682081 752805900 765927577 183646354 513141579 433627272 901802549 375671967 778010167 836013765 963014892 481538479 485403329 891366853 967849331 214891228 547212553 374959676 787111036 242554009 415454058 100626056 704216440 217178221 778002624 661082354 918685175 161703561 763403475 742149986 884596387 463965335 506723646 963293485 986579366 165586853 626786096 744249648 822237197 564719968 674394290 509472423 928659874 856958276 987877477 444409227 501169488 968116273 998472206 197712511 206239199 674909844 870467784 444018984 635930013 576493430 836694149 885317058 946364412 630217299 812043587 372665095 483441566 775866312 874960313 617619321 860402491 86122641 168514996 525931441 824394400 756539078 765575571 537563719 759585141 442584592 641127633 882359928 885827726 390369059 465847497 86125143 923874554 186367847 698621972 102301902 484760607 216282211 245432185 494350476 845813887 111941488 783754498 136692310 451603986 980747873 988854000 77069176 891173987 400153506 886554443 172005574 919376217 95369436 809768395 752380621 888354498 638934949 694196828 517763420 832222145 84618809 759478035 325881885 967552154 678703233 691103662 80321134 323980787 795583631 956946246 704952447 740729499 708340565 785306568 787778021 964044926 196730025 299210466 687314683 799450728 384324086 530739112 919621641 960905685 114115276 265922739 151514996 351079999 893195905 965705453 970474063 973275624 750773743 901254106 233298309 339337777 26186795 187619278 725603712 745640357 743897971 842220094 48253464 839102741 173485820 915247373 698137546 806510648 307274676 623968772 482126682 810425857 961812412 975061787 697880781 750595994 370195003 456507675 338716521 883237251 264526342 998378546 103050408 732923953 414782337 578983387 802813079 873781946 124464664 714719435 514588936 708684455 285360692 594486493 984330791 993265981 747380750 812043497 128504271 373393600 6123949 223480823 602067769 853325565 1564320 331023758 384792602 530388974 864855244 896820514 299462511 859814765 490916936 559767758 266622224 387155100 518253973 586630065 83174953 316777557 961156315 982467117 757792074 884530691 831905735 892476013 535319268 639017543 508607690 669723406 459041790 826697332 73466514 294043150 441712560 550721911 345319419 689279692 180733346 622365778 381467855 707103278 476144513 539323567 370055987 962896700 322897170 576724333 37341658 954364827 357194844 965161224 116310519 647620164 345690599 599769167 337629950 689440126 268888657 678921362 750420492 896789101 385596778 620480171 87451311 833942099 367428693 891352002 211064989 334650780 227471955 322737402 505227814 756875580 726774812 994965138 976699190 977160938 343577177 792007664 421328239 972603330 304296396 770078999 871858106 918264973 956399390 971599773 41539841 382383763 146076794 372197616 968833673 973610101 31411014 495889123 321075491 922193331 381999424 844524124 156954658 901629624 654477988 907218060 293187216 892180798 2368647 714532837 346980817 691392619 484681872 699178550 140386495 674897138 556763125 658452496 995916595 998799290 98579364 961212730 955349905 977088832 528836182 804282082 297459411 959344669 717055524 814953677 459138236 982795299 367430249 378305483 84108395 513637124 202052586 612809763 547289832 897012728 596948790 662026520 162175557 877406157 290372484 373703499 599307771 898853076 565006582 571627072 364188995 714341659 261593546 758372342 466011064 632084714 730439770 872795786 60366187 187723559 828148578 931287235 127002556 917679903 401360118 600275853 23892491 198191384 822385324 910597502 394375318 524694447 721854604 961899530 709082340 733471930 777781183 886598238 851620565 854556365 237081771 894258196 284219670 307823776 317853522 574728232 454223332 868797524 889181012 912939966 92553815 682499643 177782910 899567633 819850442 910922660 611478513 731056799 968258981 976324026 852524525 890422417 708029750 774594702 520407576 867848902 209494049 771828718 813321402 841652712 964210508 969181329 425930996 452622035 625451397 948464031 235472063 923619144 536816441 876436412 655370610 953265638 346989477 606847285 264990869 454457364 808660534 954682900 937817170 941684929 561855514 750037223 161779792 608532355 807955925 883003336 934407077 946655548 273209138 857644547 823649796 987792429 767841483 927357692 615061583 671556096 218595275 463364171 36905283 83095905 126053835 536569983 297985838 889594169 685479819 737685026 766476059 926183438 860800542 901513152 346602941 651883770 530223074 871142029 817240952 905175389 409958712 762726362 220696009 321142362 861319024 892579060 229129309 437134584 49500549 546579191 355391426 570396261 301003647 378669418 771927081 891625958 485672131 692205355 640351033 891967555 735516623 992604313 188404133 984912429 328986949 462791867 283030756 950633431 921363455 958241128 245574490 811683562 899427474 983271081 227516186 465896722 952374897 969212292 954424299 984669949 508027008 829898169 496419884 886756835 359186611 855781858 291985364 575356646 691241345 972809295 106510142 348348811 321876442 650101363 248942203 417477580 856528012 952947618 916936495 953367984 233083260 785985799 114203866 197926772 979186204 992940553 787741678 899606997 895527094 905581507 955137430 994783656 915702401 976527290 392513249 423592498 653342756 669505453 870488854 902320327 909856727 968431780 621083213 694238648 163336413 835730714 877219496 881508104 880804178 988585487 306575298 589534423 891454543 969308519 192298039 519180486 772684156 899038427 94204792 826649900 103272704 828115419 625469260 870166432 534995644 954477206 28048989 101060103 88923217 481795069 333498136 661163723 675107602 982072418 839064779 881626659 130586774 872711649 92177007 657429811 404795130 501172910 889167771 925861925 210116789 870734736 656637707 752943387 896013116 947505134 260725444 406228971 887645239 963728468 365169618 809542238 877134141 885668865 310107109 780929034 34204144 143790392 133656926 447936149 358508243 976132647 765915292 873877826 627013535 971375934 872429393 992715396 743973222 939435935 391486960 963144020 884830977 948478704 533120706 906584418 984443690 998105334 521696986 695841435 272065597 828497872 988669008 991848366 885297420 887464983 177428391 396223087 442756572 505154048 335130586 686368710 123432229 739681260 42284909 794306726 294589599 903874032 445649748 808422447 345332914 404197934 887632117 963482607 282146483 429149774 227049303 359247804 520342152 998994357 622024173 643098099 3608508 295455379 796473367 820245918 935076328 973690167 753849309 910940756 726174637 814333157 561070440 935812193 876706994 890203194 837694258 916861618 581210291 899761220 199429663 635455626 638365980 731333939 730592772 738397457 939277507 965077263 639040732 652515939 754516708 766257813 172612900 918863611 87015988 127544029 763367998 844020357 894852752 961916364 464440701 608545335 237450828 889884020 537963395 723890734 19958710 284331980 197582598 211027688 976325593 981297637 436665325 442758809 804812679 887521271 617195490 794272946 377261505 583680119 938304832 978750694 610388764 745334544 409197046 604149541 639042873 862290951 57752869 375960975 262727229 825424814 473653902 562249430 61817150 732672867 813638476 933082476 303725801 736838155 966239083 967591769 187970661 565698675 500432955 746745173 274649728 627628624 117223024 329948327 115382817 378676353 391213474 565067109 69628258 321629134 924451348 926383456 765782400 790850507 858469352 878243638 140888859 723203691 738560461 922102272 988275638 994689911 174289124 930832780 799386632 956179277 114422637 266941034 665526504 716475337 728033975 944721011 710510264 943091011 120462621 462687322 219413603 593667267 336458288 865998521 813992373 981102682 460858206 507412362 602771026 706259457 486028150 812035160 212954402 470911123 653890394 774979073 322366461 916312719 875479813 925145450 704072906 730350292 13601816 405237500 273395195 658038578 569017381 614331800 919890645 943234603 944849515 987333061 903110949 934179310 199536370 861749672 407166781 524085720 640354651 829639344 929115669 963863971 650088618 777240424 876568688 970738945 663641237 893781186 581660527 711310081 923427175 946806522 481138724 726776658 473042687 498509526 888316493 966421726 591205734 930582462 756284901 881220327 416209233 990052902 505711065 608524780 370741656 638565385 133904322 222473438 698920 765184402 944375559 972420572 826095709 940195064 417132019 519296166 930813792 989220013 236423632 750111935 928401527 957288084 838559960 915080385 160257660 806095607 626211482 867529188 442634000 689396267 967912221 997235024 82779992 732401530 726679253 830636366 94495700 767917494 557428271 979350842 333069792 661078597 78983802 685051373 629603859 637029070 748654656 792312540 322103752 801382766 492139688 498437944 914940757 993726816 717758592 860141600 120665425 181900583 521957883 767959622 329171130 799364642 984279768 987670971 193420777 824973989 773409574 866312530 207674032 394632772 163197025 344615839 723785773 946196519 547807737 853698427 346958531 639874782 726059325 897923533 58232458 179899612 850411167 942636841 8037835 241820195 278626458 875088440 435985316 445341877 301927426 432966128 671634749 875900090 437877155 946797373 671811656 934644035 587580992 697836104 247542735 619282242 711879940 730671171 15335441 522091725 399067979 808834072 668009938 683234862 542132552 720995305 52209138 640882936 216816201 614393147 883189529 904148441 961818693 963706236 620091865 652139974 300695531 771726067 293693428 376168097 638348957 700756003 141746411 547262288 823238008 931799583 791044698 879903311 681737666 977874050 53235172 295042946 785931309 905056286 263339498 573158680 902949981 903856600 888426431 972496421 355831421 661685553 709196690 791753890 842390316 971949172 967880883 999353875 738591421 782354675 764356551 830860108 925552948 994377604 66408953 582399737 962776842 977646398 187803140 680376852 82949258 650022427 90878410 543246201 349755557 873114118 505695821 963473407 300449469 452432082 261195799 589445087 146796894 644838720 615252088 620383903 476697126 680593039 741034272 936110456 542175411 872961582 687035990 970946829 902897416 936694827 979068183 992038765 851471395 959768437 940037503 972753267 31795868 826300560 859690878 967629310 590401143 822818613 454018123 707691215 949247117 953306658 66864962 194428098 158752379 968611868 51168732 337975872 305457442 539892548 723548090 762941023 617372018 825310774 362343023 784153153 87795656 486069488 148010300 845940652 538059511 615459011 79920909 438386026 118418729 929070635 971589468 987995716 752189604 889537986 777669713 924951765 100318091 542696562 336941810 866410297 443012640 981358892 200642683 634500869 281935971 420211306 532415170 902962904 7787607 924337032 445065623 697831329 529285647 801695062 261197399 557233962 322956094 743713851 891841439 906945202 954597877 993417274 860507633 946917813 37698052 441209048 230871318 620116272 375336434 658853600 540142669 927616927 893067960 980362556 949720584 959176465 148733073 294912218 125724410 315532980 968247295 987420131 702277977 979850518 445647707 818826749 613934958 741785918 14691736 899749746 417854385 728473555 393503942 738260348 383718118 437396095 222346614 696021090 467075653 512653538 455231206 992686031 269702569 637930177 256835303 872862052 221886572 678515827 577623622 948339386 588403067 621663730 447743399 691699956 699188644 717431939 141664885 681894806 377393156 631094161 277347575 978201003 805499624 936732152 907667294 939668491 894031776 914876216 744547261 962936035 884840501 922418551 166618789 846442306 413522531 882955397 634661923 880183344 951360218 963145086 463558229 591018595 440035252 603978094 553818581 844091523 808046837 903240281 964520926 980600663 565091238 911896298 505961010 645845588 943229613 954599209 434534688 634902134 682547907 905268553 308059897 522080119 585005634 966008387 68059159 880357525 500151357 949113504 98517526 972878514 995412041 996240217 119008551 891393286 69466282 156395526 116676717 991382023 196934481 798911862 477546487 975040890 289679679 715216384 60664659 961571524 610009806 895806496 323869511 528152348 356831531 460273701 453094572 969627903 950800467 984690264 962641169 972885420 156539190 217434876 203506197 849322866 651411098 782840687 604662062 884187522 531702061 655259469 960929382 979511547 779798120 790599326 146904792 640109516 433378867 503749589 797411555 811728608 251937334 748016096 788892086 889327821 895553964 942921678 743573286 757781080 67333662 448004649 162520980 202525008 382807260 877779125 119504044 621761153 647944789 895000387 928578170 953306598 852770194 984319291 98004887 635357360 536965351 716269564 99788745 453419208 824975504 840958299 29466688 566305195 300444088 909303729 245179817 263514639 5741271 63006961 798734743 934339684 65199998 95564501 738879132 987243238 832852117 935118861 452875584 779082247 619335343 844250645 532507276 911657211 357317666 909391605 214350958 880011713 365643439 789115365 792151697 945541924 872556912 881838961 672883160 757586162 18153377 763383230 612026411 987443118 297814224 849646209 34896004 287328050 947050505 952448555 832211960 890935349 334059755 352807627 650001791 678351281 46803053 856965786 39005788 739847910 785942182 992181112 601150506 677560958 452672770 638379098 822125822 935055098 18588873 828426977 843837204 868881293 620380848 863692892 159469940 344883501 969034594 997659354 671802788 979411264 875796565 936081015 128386007 250608115 357657726 492821577 131391863 211831721 984661601 997434853 394651864 914694711 27340391 695072532 346515172 669920175 519630114 745821076 171125396 263937844 895557125 954438598 463864895 952844448 900660471 987169225 994860917 997558418 329884288 454825252 12610997 448140188 148350688 789561161 91194290 287592450 925256394 988691089 353348529 809351526 6424486 886796948 713930917 884956666 203997847 313631399 765667301 866182401 338764755 453271350 192334963 568299987 43531599 573285545 654992628 803385379 954659531 967914281 699361555 994201159 633690941 698499102 292646295 705672827 688172816 884313299 304780376 961657694 439079543 573898233 176733229 293452285 101988037 989506892 277611425 801979146 238904193 400841526 936099244 959014077 927026685 951473030 514206760 623575504 202334581 685582001 542190474 842132731 717350515 840266820 602495400 698330438 290009373 316417741 521455162 736455925 585919049 616729443 736790074 972349430 65061323 372990856 294563089 966343899 123106943 455275559 511058113 529816911 524341914 750292303 92363976 726551591 787186000 946458964 297955370 426440611 910260761 986151125 721664023 979156388 777692787 910114789 450314213 795673686 507480448 638587019 267115667 752162213 971775969 990162139 960124383 995237610 894281132 954077826 48360766 160580940 460127966 707858002 628864924 829922025 615414047 874982715 342684573 462385812 313707441 835521223 590010474 807371712 116670155 872853350 286997156 957653053 308165422 942950821 27754067 506718379 68674632 633149797 852109602 919208069 480016294 498787758 737230613 929537803 207140935 519136971 951412354 959728443 625449661 924187022 459792749 510439920 29151865 482216927 12984689 618917531 648357644 986722913 870869057 947994843 631350176 787641458 951420528 961559558 707507794 871553017 628218299 776354729 970184520 997852280 904067651 952785795 734119782 883351459 185077172 551063360 692968288 962517113 743491130 852515417 878478682 908179745 609473075 688411965 488624619 615640140 10739218 677262877 152982656 556695067 940450086 989383160 699952172 976328859 288594406 992183044 980517089 995964941 407888351 489691359 465637872 489495941 148151166 524734164 233546849 729328760 66348231 862647491 906412280 941072601 4657358 454084565 483439539 612039413 321211838 586540630 586906809 863424046 18374195 805550006 591496952 691346011 843864676 997009654 256247721 506880193 856497736 875509698 327483785 363252390 242963554 491892003 722826743 878654208 143151280 226610408 853436339 879021236 216998114 993944631 519078110 698144596 99085607 574976659 875505014 914759353 199217201 819528429 590267961 612652427 750742267 906771846 730431646 896217948 719510380 962322727 616946321 938697934 835596381 836436138 408298766 966968220 227857340 279230146 117852669 989787479 542081330 585301279 971727998 976741423 65267434 470130877 491351305 674941179 799462034 976146116 108774702 659592779 573549980 721614995 47260012 489314519 756429387 985663186 108657815 856742245 196700742 444885205 706104955 804030588 781862371 788424418 65690320 439653010 611805513 772174695 297537838 469347650 88373236 855201016 75420288 495520890 662915121 900812798 410891067 411255238 491033258 922003105 875975007 943791891 325259911 709713716 627187202 989304083 862636151 908825678 124162461 730213638 685314345 897400130 261691892 711840811 939468653 983763448 555167037 670588411 195758869 383297502 207768157 469267606 323283051 680676398 953316837 958865120 5467398 942598101 507403015 801606491 6329176 379926505 468825123 858189969 673171752 834598528 707287795 938873108 958118047 960678005 203346196 762489927 389628110 969996877 158866274 306585771 724226366 915067530 886344134 915512571 404932058 423055363 939780061 948995708 790946995 791255880 92769632 574972320 589068180 826527578 223569642 264380219 506235350 691163070 930513196 989009987 806827510 897381856 254498393 712400821 827340787 944121208 167462436 833032407 672908800 824209191 552723868 808352817 97146603 378138066 867530153 889127746 959008789 989921374 411494069 941690181 607641657 873009033 558568802 587080741 786724285 886375680 553174404 864421446 109078095 347856199 415653143 662177789 635421118 863254654 513970452 978827696 878205187 894706194 727129383 914243549 625119504 828561957 312608426 725797262 841247060 991119726 570306050 985604644 285915425 392467035 596275356 837628500 18502497 880816175 562295259 928537641 618010317 842139041 258038790 415096430 422423129 738561954 513200477 979938220 488027686 796011680 842597678 955389411 802679613 821790924 784910382 826751933 572808575 651149017 457467530 711082521 495768613 802611097 562443460 701318416 597907315 795214421 915472246 990284565 131209094 161637201 52037665 969503126 544077086 640147055 127415372 669677911 478443804 937323303 473167664 819288293 811388298 836758773 425456630 726915723 344023167 792976775 245350342 971958637 240719051 908736741 298041083 632660526 355128194 578651427 151413712 768564871 75539606 608037778 797311968 998405426 256706337 681433441 863353449 973972798 96638956 483115963 642310367 643837036 445805523 803847941 552366990 592739138 975558071 987861402 698775960 731999446 50376297 478044565 615841476 679217576 243497665 905062293 179199758 546416240 586880577 975387247 956104210 968364028 380511629 660348205 878195786 978874449 255375335 392440691 719759897 832127601 74242265 693423772 530451975 735365643 496790551 740743267 45948218 927828657 653070210 746791219 32424925 931362568 78640854 280209666 524906584 943475908 146606070 937415887 3181878 923025829 480319442 571632323 982516142 997504738 977331394 996200158 391160129 675076417 313363214 362733999 486072945 671997253 753363203 912134033 947140933 961840935 336754886 522834884 481756147 548136529 743236818 769777155 927211752 956935288 884567057 905724065 607434335 989224473 736818965 811217129 669220192 984072111 376885832 412261061 388242148 605251114 536711998 855346869 382303406 757178719 411155475 862787682 840244468 844382978 312738651 599888422 827417902 864387697 564283708 593345078 901459498 982388931 413158148 854931250 808613974 985926133 413191174 923711258 348240591 962451505 262686706 666869359 133229826 919370048 739542451 768678834 512325006 994841271 356654535 726641978 358641674 775264434 732168558 735555403 203637305 626206451 244776372 739595709 510419785 938280758 953236122 955884712 488949406 913039122 920776111 988662797 721257237 980887441 224284788 449251358 407517356 550257814 170705760 545872962 824817623 987000137 174215246 580049212 319464225 933690385 817403622 921955645 611548465 966429904 513235161 583522194 67030782 915922038 638281454 798103545 858792346 976486848 459701236 554619039 830734117 933354541 610085836 990988982 328420921 626155852 206842521 299373826 121909010 448387038 354344672 888829505 27937697 583565619 271731568 702852817 287535675 749040910 136305218 895159684 58439192 406021992 140687068 886187496 247119788 341606082 280949395 459150180 175100954 315708415 449581007 665153267 757707407 890865734 848686461 941079642 584817902 664906658 278072286 326613062 811177859 855600063 98095902 341900152 144862993 848005373 377441612 470657857 479672891 950460536 579822807 734076662 879311424 990913223 60058970 918638060 799423733 979802094 78333707 311357913 156712853 259935266 452695473 940992583 928951115 985735587 365162457 446853018 749320544 844298932 297389484 920603918 582654718 765007639 192592113 321653598 922538417 953801391 385497483 592681451 111900292 573518623 904364651 924490177 476075262 700430168 460112323 716201814 389018635 771808091 998551142 999427963 373341059 967554844 556238221 737161672 69658996 339743994 21707468 809807204 132917675 471868240 463731550 683959153 738994518 987314632 118218856 125099870 979843565 997972161 250542267 380866857 809714984 915867221 737142417 934689497 427073119 836281010 706223849 809939642 999329572 999531355 703455040 807130356 852505820 951422442 755404752 910078454 340489512 871202727 649704745 913108869 853117110 897153550 116122017 903160792 770467652 876910075 765809669 857928272 430945979 887547731 183214899 291144591 198479765 229382656 899669078 994872279 716990062 721377702 875363731 989851639 885951038 957381218 919089742 971488950 810696603 910659212 52526528 828598884 112322948 999122786 777016418 922916119 464764653 506671150 861236090 981960277 949396135 988046713 787696940 948430676 651382129 900336644 956108170 997518888 277946051 324781874 798265557 934789885 730278963 874123524 860266915 889125539 514523724 791678582 429199049 444624568 531235716 692778410 111074478 267193692 218854484 475029270 263112072 678500745 32678032 802399623 258628209 627665661 248645026 736866841 312926173 729323200 963407436 963546604 817974593 959373307 652456215 693268679 795676242 796474394 679838717 810776765 833397872 860661951 367138977 841458569 393928742 681132289 698943315 925232150 104434102 525157786 160261430 204103740 839185932 946945206 521778737 871841539 494368258 782735807 603398433 622978114 972506777 984430310 307582989 771016269 96471547 461410223 74798512 209110970 205033346 659380889 838210051 879128445 596788907 987448845 625939608 836978882 362214489 381313428 972515379 974388534 753019111 867831594 407288772 950029515 901419834 915954990 812588911 952886360 63235958 201294824 962620308 973649623 168748568 393012981 128004920 503574122 411826000 423026829 807900182 916370583 18787262 133317385 246735882 843272576 759866738 921629297 876420612 982600821 128577591 756401055 235261143 351690621 10348376 780782956 138347039 907588154 56077764 443389275 266217178 847034082 760800134 857911062 766737966 997386272 352009210 755114148 617893643 841283460 245892493 744497949 415061899 840295037 863501098 920884177 772264293 976362074 328431870 568312230 63284682 692687016 912626321 979512459 332344760 423787414 443469438 474845769 97325409 278752020 462821882 750855319 846527286 932389447 137316051 587821485 959313426 998870034 238977690 611547616 779961607 791532752 562888306 902084397 838647517 960948514 854811160 903670607 216210495 928285853 431588322 583180906 930284568 970705895 181469687 274585355 136133454 977621576 706218887 980580124 494309546 607913079 43956441 162666582 685854592 982863371 386518163 943244144 483160675 600373264 276821408 323174236 106456606 203592489 823112063 959301011 925091603 963722516 431845588 587672960 443854758 996562654 498663555 736847897 635872032 712136056 332760105 587226249 16758550 233183835 317484684 411659170 749231647 922440496 162395752 608641279 395882634 719690357 474860087 993377216 654838957 721429801 583774368 781417044 877283094 904361945 767780006 893539388 467792525 597379912 549720847 786364751 741525874 743271014 715924740 881004336 838710893 871846883 30575522 863834901 363334438 652524152 363487007 815462729 184770646 718719331 208593679 849240846 523135475 902696872 589906869 846506930 455540084 636310805 505737071 644961386 947580957 974391593 466024407 521201566 388423312 972426267 405782871 412493968 750889056 853367729 901350278 974290237 126726587 743620347 91037087 494461103 738949656 909179876 876391086 958574859 629103379 936849859 687512042 815405606 835334443 845226430 248993527 856216560 761241679 778068113 78628663 877338331 249708216 628333744 786585855 827884732 129431014 328479434 44489308 778435329 277565803 459306861 172768501 820061005 469257745 685357814 156395100 593296134 662459925 960675912 41421876 989426144 470939721 606882061 612171315 927493809 291144782 424799508 103544398 738612605 581918475 997572580 134261576 589196769 675675916 941181525 303934982 484222830 528242556 886204606 403214581 882968046 720116203 726011426 749528273 837933246 805359868 914998629 347371518 882729932 956072897 980917179 93549317 397114716 198881009 203914356 901407160 944325650 324207643 569571459 561235820 729121159 779807391 786371457 535555580 700257027 698734776 717179373 60424414 326946495 167827808 228053915 195618093 717584723 282642663 289309851 548729883 894621759 110615086 323861645 705550845 923797815 182678040 423868361 39692492 953165641 586830749 639689627 743411477 932217535 123139451 895852923 50566531 783653973 606319505 889274736 427245043 609502355 344963783 367833474 437768654 548098451 385875749 671970553 875337303 988705092 443607274 462274662 683410126 684794989 390958903 553536076 16754031 488493444 490896361 653443566 544605008 552538109 3473517 994250755 661900044 687212012 124507032 337879943 697490473 713829209 624777746 778708771 219074226 648870196 140999374 794236680 852855816 965696445 608033578 969637244 642100185 698346778 888427574 979962613 943193077 950468074 748053480 752178764 931309445 974797934 269951384 639774504 649055841 710340357 720169007 787906151 74816726 515020853 141305003 232545478 727691410 758200180 457333519 742885574 582486175 590936376 369762699 889109757 796054111 845299987 481240717 771982003 198586948 407163404 771620164 774412956 775231362 813621625 999924949 999967727 148224728 479004273 200174997 565028068 432259900 435466415 441259461 448547191 810861742 826731051 849548914 920702041 464391367 982957545 955530739 997392792 850820925 893863536 490251270 762541744 98071356 380131644 308810410 348531462 272080277 532301359 531619666 913118588 909504716 946799436 232032947 265557797 732951643 799026192 963190048 996846355 719146460 982667565 851565495 976918257 152085125 503237275 300105464 957632411 334424865 697861493 648841641 921723650 40032904 957579158 43424587 506823606 629140470 718298117 479542774 969365398 120995603 524914626 123819312 225836929 273250478 402581429 216918690 780987566 37496625 470156668 354134582 432717187 591962582 964788607 806302573 944312975 90538992 173673872 793451897 956764126 766016867 921281446 542741922 546901394 580145657 584619534 666658230 965401616 321984699 571778649 284629501 678498405 596654316 704168972 938249182 955181031 489988869 671737594 507599772 881746161 99995537 858425340 324064408 689852665 987651845 996498182 946243310 992436489 700308258 764161278 855249787 977204772 584821547 929237303 266330450 674062831 123608617 185720266 831974973 910764475 521296533 772049093 357966308 558728742 772994155 985497268 367371557 570844221 283626774 484216526 414043876 697598933 710023505 916846928 278388578 912943565 361215882 374409078 788115133 864732398 81710531 973651304 874276619 942949477 754136170 936563170 808875017 946248657 484529196 626474906 287501460 668235213 160610135 686025646 258825619 764803011 116343441 655113516 223550222 963945859 239032413 332389355 235694746 622398794 340376961 981851043 312359218 734096317 844615845 848317533 357409864 891119451 634248287 906078518 427512553 471523424 19376409 758868058 684141735 878110441 157566825 812970305 977592822 995164466 25577449 558159920 186357831 985501900 324313576 601395498 344029713 643416656 935411532 949154205 167242998 376846483 699948308 984701880 360925222 816049603 964240374 986246595 597702645 767751787 289859215 815526576 724877837 725209557 386442422 870711830 565719043 741263957 760137919 822944319 69402066 684360735 90263155 253479110 288487240 330609186 423941741 558724085 876591945 987161725 488991329 888258741 432107802 723465273 318665027 677564830 943480662 970814124 734095468 826077426 527662031 916923961 283749344 519004924 663248359 737110188 525188626 736965734 682710400 787287180 492263746 909182128 481396855 989613371 588201581 910675609 86871163 566050928 811036195 976280694 994016863 997563228 418373650 786760760 80545155 481641187 266669788 844878427 229900534 502952535 291450282 740787252 378012336 655446593 47271586 266198866 100320942 882189207 435959856 669310121 891039459 948561482 90597873 740077013 813398524 871170562 100565170 354746380 576467971 898065281 60328337 603341730 605721248 736252392 11098708 302771420 629230431 797398679 169339269 185582528 953625140 971784013 384829242 418815487 361236854 494147673 923348623 973467040 482596383 596853513 384409965 906664015 171540076 320416137 27015558 210270941 421309967 827484506 154357024 178696688 652372368 686790435 609610209 981910147 404640044 655695734 746100600 914474880 410701893 500967765 496612618 904851297 536308979 587204632 934417327 963491244 609914429 738208979 482410333 725703822 512492667 977714476 302417819 712097150 695797441 921786945 322243321 333956110 48007543 700690311 550688251 778539980 813720178 943050928 728173660 893147951 898455736 966138953 577802094 620026501 147925062 857734798 544772957 977951931 13730660 498363714 902826145 953168462 170897469 731083552 909739902 950118352 71945612 653193559 832175319 956819515 807214541 828463992 148746970 304735023 142748117 688944616 80171208 638786819 928505970 959461437 57841497 944449653 937090381 958479943 847450345 921861965 288100322 803253747 450147241 618573653 787350742 985187605 159269328 933776174 624538017 710276423 881685520 916727517 614303204 781741270 224415769 593951289 137707407 284748025 501746232 976223601 93819074 805616552 364235971 518292376 463520680 926570777 65522428 506048187 422391366 927945873 845781562 991226138 623837143 839574175 266291763 807876049 180436453 887998468 112071086 956763635 85868165 109226022 982303886 993460888 196335589 575805787 656418444 916270452 175025781 473446034 869917275 927505159 489884034 607963287 656625040 829717155 252269748 465776262 423845305 805218585 469273122 691316663 279325110 377248264 527339059 835893234 288284030 944949721 328851607 848850250 351485435 853326379 994623131 998427568 58539010 563285847 161225152 750610293 916738028 929594407 784205963 940378790 603126355 780537045 285927215 963491754 91332197 797155141 726815937 770230799 8813281 805878451 258458831 922866584 120081228 623034383 895153567 907385017 464504977 662970645 902174330 961909285 537179587 993887542 874800661 900867795 830881721 857821453 405929528 522372130 474324888 827027853 376730367 805102377 91873958 261028473 131544554 326544636 346609588 655731800 630243505 665676175 572610153 833804086 634472924 794270501 3422801 628431082 23083109 535180390 928247046 983836974 633731374 801968785 593578212 849009116 780126573 997258285 481311074 490003612 143941495 492959074 16989359 786587944 445099257 900072862 277264206 872718043 504470454 735501918 622123230 802264262 608223756 769238038 601989423 614234349 339750801 595423050 943917015 944007446 631564534 859811044 469352131 928883330 484443657 670911667 427988131 668348603 123657002 149324481 219745258 466337511 642870017 653685150 121710518 924684319 945977953 995460128 95707958 623170565 626076686 904027472 796871562 814178284 192297373 325810268 951017582 985412740 467339108 481307706 148019365 312450507 979109600 996593992 838242503 944136065 27760391 483870661 770384900 962202999 600331675 627775053 358068611 914392516 708475431 749533608 488727896 717795107 907244638 952345268 184941845 344125267 952620837 973691101 140351703 516310726 747703882 865585452 60488334 286649039 253952801 480856501 971448485 997146769 339506008 848655896 395163650 973415712 203397702 528902116 866090569 908987722 267198104 420578549 640688550 928510571 372756895 757550658 12751327 136543453 413677370 449783298 692605716 779892494 33422219 966992973 414115260 716130125 158778462 759516318 182347564 288747443 734458204 812417070 489870298 924892880 897171410 999954442 858938155 974103453 964614636 980735491 327170817 387317992 482734812 856615480 505641761 980221682 297531429 845491852 303876584 671643028 991678302 997876460 536778193 910157014 308721664 936848052 601530499 847606517 705393765 955661340 758773446 907381698 292048859 632878210 813051396 883983021 479602471 731767938 827467144 876932759 7506514 156961235 373679732 713200485 262650570 983367316 992329480 993795436 725280625 749301475 460868244 656716748 675271026 849465256 473894070 558102244 933435743 974834531 947616025 997958682 347563928 742179056 240341544 556864829 54624689 590423962 50220522 204565592 709162266 971918010 60956651 729007270 112227268 347825321 369811853 863183201 397083991 561392352 498190768 731073001 669142591 685924410 667673912 993286186 994490389 999860877 767621045 768051904 41446520 932483210 533268982 543089813 936385186 990377971 278353566 639149402 922976625 985982028 859762354 895466399 128232652 364964614 77168951 699923802 837320668 906737231 786244075 796474772 635737144 996190472 806397916 957439676 847006862 986398708 52678770 754140023 172363673 183171612 480870432 564284633 781146868 973112333 771591795 807234370 966272253 971262368 854591113 945688372 495811170 665192757 506245042 830262118 304652592 915301424 14566902 832630917 977264331 995548447 721906116 853727126 92578353 141471623 992952707 998973145 607680692 957437131 270647378 976770536 426031260 806496006 9467286 194784559 399515335 661513041 122665074 183770671 521425547 795236845 79609912 476994387 148036235 995262450 682780425 688961696 239623882 251966737 627189312 799883793 501479414 894854306 707677581 789504158 43420972 617692820 62735268 289327634 736510085 754874371 308199591 727756876 218151949 986107788 257121496 681809459 107213817 226922203 302189855 420380244 100301247 868304306 875959764 999669259 946445540 973177576 677056237 824290833 125077592 656695051 492475655 873883752 314143684 852810333 415943056 504804847 755647193 958369479 318840915 415752826 190643654 760969293 459776137 693134546 622038746 869314458 827616021 844757777 313476421 731239445 420772541 519645231 2670944 457199060 874546176 964287283 324426214 793332076 184169552 678065214 579806029 788305647 931949594 943128515 853664523 858760636 281137989 835393013 679830622 766693676 774112740 785334525 337561201 706991466 181593507 784833531 499247149 650086515 504261259 915623027 181510112 214387422 982463368 986478657 711607690 912914774 36564150 258612888 796729715 861404809 451748281 664061306 903933577 930949753 434444338 567568986 431457227 981459320 550639552 571040478 120359172 188999529 502589276 976661299 53101411 630081995 556534956 699565863 259917421 686763575 105213144 974163268 283055997 367467864 686978731 808685989 350340669 840269604 815951310 916171590 637307591 814627502 729251038 750291428 120329678 986631314 35008441 703369913 642349822 911613771 942112686 976681818 723145182 917780471 44014353 802439579 62531191 96223783 192704977 385086205 781719840 804845330 471156529 806602945 167014630 452752193 812136258 972381601 572772646 775189356 208301653 722644059 962164043 966025097 758001725 905614199 491150832 721844537 857089024 907250596 92592243 511562063 485478125 518965319 986381825 991645171 783450702 818929566 441636003 845244033 501642783 742040233 123410826 191210453 113295640 502145590 233120743 768486334 15147977 447031336 864076312 993712299 150760290 315980687 988222973 990057361 588708748 839020620 182912412 331466712 437955543 636687316 946416012 948544678 332825188 955737375 199375945 878626014 838877879 946800843 670918135 863045422 475459969 828367150 91185398 796648371 123373128 502354515 21364371 37858776 238868915 815129884 309667338 806000912 923402597 930778686 428319089 429016362 429814591 986169681 547085666 810518275 166929897 278555812 605812097 679189979 515692187 528119697 929024429 960660304 903131117 918343984 755329837 804708391 331085511 786397768 754386535 919522799 515788980 530012521 136696283 988230423 290909290 631762571 463287790 982688724 401823891 701267148 831470917 870065683 267240694 636283776 532623807 831770123 909217446 973930962 366249913 908124428 598364227 881143026 809157030 911824131 765562226 815137651 166230828 979475284 314166558 444055691 161072843 218130905 307062727 688416479 607740234 821835040 20634748 428975457 375537170 514771107 260566034 416651863 730467259 740906055 15246083 838636843 368934064 617465296 903431084 952528466 973771235 994006045 123596809 975202437 595723988 774609299 139544191 401470498 63107314 607909814 570449491 582280079 904393369 998205163 242001534 471108565 611558791 687214865 635006301 898390570 411578376 938309640 495056005 521860369 60574345 92077403 296100844 669093833 973812340 996131417 790829343 874494800 312455893 362617325 510433073 741181431 208074445 811342819 378027161 558908537 472874113 801000119 645477801 713882122 135986792 248290117 60320585 148793254 864500113 898717129 179256964 749201254 217082129 885486279 802720496 966302176 388515261 876035059 789958297 984924213 322968660 828614062 759605642 823070496 224934364 645102081 434831919 764566311 5276375 837364310 973507691 998800631 416098162 616729960 439951795 944912381 666928542 933638679 253736389 470374118 441561812 874472835 124514156 185977388 704536269 851049836 687812326 925767217 135943546 702313863 756170653 841111040 681078547 842374915 655357452 877016319 273632508 314303378 842068695 904049081 826997784 999251220 607967820 695894374 902361752 984436550 834863765 934232879 131332305 320917762 453473319 790939344 697957016 889219238 203506394 623180264 564392385 807000707 271178434 666813948 763169272 926133746 635831475 829022514 736709804 885706039 804737634 912549939 126168147 780225164 700642389 807627216 843696677 911318962 13252726 442765027 723973557 762158598 829728294 831455262 912562503 964977274 837465397 851965250 960098584 991303671 946229646 947545057 415263767 674984808 384007521 821722352 196583569 261767261 660920404 705245350 115777530 537854869 268886801 586774195 939128524 972512095 710397415 864892475 956663069 998196683 325264865 873522983 748681433 989184207 939783828 988552404 753106062 808702605 319947581 380318872 834846860 991924208 83347941 411685026 776848364 829483741 220967570 921470050 435760723 827951584 784466400 786445629 127131394 295811814 242192338 585007895 200011555 283097617 979856582 986015337 953887254 970827339 646684999 966218797 176611445 733069591 241122860 518523481 780558853 820657207 824887285 998635855 947810610 989020778 452415408 523331106 483083304 835697047 937469477 992300722 796188705 956141797 550792873 605503868 590290945 866977159 125619835 584261185 763968008 892031031 535419982 572943821 873823671 887695790 22858236 413535370 134674086 854155667 448211215 772535312 495889985 633246308 78398140 135829324 263676810 910134711 543110016 760613372 354154484 896999763 903770655 966807891 325302506 618400270 591821507 848234974 56938492 628614916 945066944 953184441 17870277 208075112 428717232 829821145 896818982 933592485 620452600 709320405 245452893 386050326 768019025 818783175 284441868 458561819 226383859 843381801 126141166 386551942 184834403 803442886 471219195 620562401 316504344 734724170 572783873 933850602 28827881 924199376 508146113 523097760 112762479 338591684 996825121 997845031 499035504 589494162 151080163 596510456 846708112 873463466 333713134 790146547 910687213 976622165 612219441 935503529 832134266 984899808 794420839 824881180 528878271 821530917 658532944 697696370 17635409 479911153 353023711 712768518 36656114 847925828 157342812 581645892 429862089 588332615 349986360 536666302 987626474 995833597 581640399 790699623 824912740 889748397 956447394 999457490 766607878 821457286 66191559 959115294 630126730 747090185 381921164 559336455 314816273 384487555 158877140 845809013 619825665 888328348 849221222 989579800 306152430 881122840 878491646 954146519 592898212 699166203 831589137 998300181 720682171 926072109 446635506 663196480 664138914 976418290 780934179 883402198 472648600 513068853 220686207 261338264 773315385 961975198 613150249 829834449 250352863 671070698 102198459 597443512 362073583 703351600 615719818 872616198 93389054 690713272 926854322 985513351 1133893 451245416 759410440 954802180 355049213 880706292 924219026 991350727 912599093 950438919 296350248 678317943 709389681 864491893 746847167 759065944 845636258 906068149 403054034 453703871 972857967 983368779 367484279 699253124 607895016 708406335 94809889 285881834 299875228 930336283 836765816 967713813 199280246 397541698 130425862 957909364 61552436 233774651 746229632 838890107 637459679 727066334 993559494 996424395 725034387 754644147 476688876 636169140 165580191 969896931 756426077 794116023 50607531 566422563 655969290 810468785 77665668 821110348 704707217 724529826 973178411 984221744 463605079 923397283 181841340 707663419 361486108 755788135 889774167 893908134 705561380 996168174 38834310 707576405 90892659 977005941 383461596 712804790 134749395 205343875 260144036 918807378 753397630 982284652 524239162 719111602 477371275 659454405 924622268 971216157 577962435 578141924 102654401 379228482 990965460 991584369 551392638 686713449 900895990 995439241 742756456 964064105 508155606 919524195 159924960 521357031 379396733 643155335 457503970 992353403 3079891 842825305 373657891 872792861 857477308 870448934 885683716 924065807 310265348 439145555 796206321 815204276 988852922 995325201 733782938 862352362 561383716 651326355 599358783 991840515 606059260 895557819 233541605 911926854 326397040 335694536 901937628 989227746 368027625 807265116 297918635 477338900 736331793 980067320 206274015 722299185 983710589 986720271 515449707 769769704 203106823 443303479 620253912 926791801 656453458 676516527 31057138 747462373 941920005 991599181 41759909 751704868 306917786 921636259 580672745 998300869 254744619 791317220 441986558 640917344 409948908 845238990 893086275 984790318 164175260 278490263 987709440 990566114 249076456 773912774 632562511 706114077 400204293 432770895 848646565 856180349 61582016 234826117 716604782 865138872 624273579 667094172 871533206 871601733 506851832 699706640 827808783 973538179 874453797 996506123 922551420 972340300 742176439 897511942 659921636 727280561 690165764 887027077 918020097 977592792 285170962 615588556 86514066 332307892 577138283 849075137 622302714 780052407 961707280 997237199 35179026 137759108 121483999 689317484 694602750 740844058 824722435 899271728 502484669 576818956 797445092 926507780 50941243 568431333 620889728 881891863 753132261 887027188 118552757 921799629 259276695 375243405 547001910 773472358 103257913 218630821 855308686 884880498 717544017 796914269 732562663 778648083 920744694 963636642 850204698 896597086 233182858 372235809 696382179 967302011 383855160 751985027 450471873 539072794 469510591 695946496 67845568 955869399 993996109 998574688 499889944 538958012 652728131 832652586 737105671 881545118 853315060 964169524 665327818 842924131 391362572 680402993 749571555 789589666 432339509 767139469 482011184 970331591 791167369 964017309 48390969 691925812 198015627 436019546 525753637 646894241 255940651 764870053 449861807 820827617 558263626 905548494 296022878 507824016 781275690 848203474 396849031 825736262 891179654 909417374 5789357 51386954 841450363 952695872 99099328 930778244 741111427 826088921 82526157 146128362 607002416 714317423 938456934 999147135 904854195 952783757 569121295 678095781 6884675 19358448 189924580 517992791 387228901 528565544 748870843 925938926 242411394 893242845 768497311 980354784 989871454 995707030 609935232 894630991 904274269 922011763 24356621 432751613 730754138 938570196 379117694 818473689 878933396 903152664 380520043 971796311 745656931 777298855 405314991 422240023 514578650 775622062 868596936 920162644 39092242 469552039 322480170 838379170 955913839 985859076 618621844 632661987 100135209 853997414 336638105 373047057 736769004 973822351 934644399 952935430 438649655 759197501 611899504 667976688 137552210 230277364 812013454 915655823 560741233 941754845 677112049 825199738 722446749 751178854 696446470 766462537 260550515 502300214 291519727 482673985 723819195 918662355 506715604 799615676 639269549 923737358 727951127 829429368 201525942 989375669 978494943 982171821 603854928 832884221 944155503 970043316 481927451 559406361 824216148 914354954 769798593 810708887 677178087 771596249 852382862 902009991 734180644 827450385 859747636 998789838 278186412 559291993 667789254 733723791 64586484 245785239 579366552 639008353 855030945 917533219 540864088 994812131 282298624 998543046 479387553 751366449 706122546 722314541 613713916 823776887 415472819 467363277 548437155 740594012 719423987 996693134 451574583 455039442 372493999 775512969 258140175 982529830 265851137 289159945 488797184 504110645 717018382 721315907 483233647 923688547 327927627 588623360 810959685 877614189 630821912 885689387 107537130 767302791 475361105 813258508 238381924 598326874 823710800 908668571 858180565 958955223 795126583 888662223 895373856 961001461 360229834 544297884 391330263 890824059 735006651 944926686 891279741 926348767 135822436 370514275 75363366 289387131 643063622 954355082 72696765 736383962 748884788 850458605 834915583 959528968 503445677 572435597 966533528 997157089 78020672 676286771 606048401 703277459 25733884 33355849 927937601 945511691 270591265 284341506 38356934 185221793 236332356 713577234 685031 650653722 746526614 994908181 241189131 536838459 425371510 802123704 207258865 866512642 910750856 947853620 182020714 599342444 238201717 376413441 573316309 968414530 530456647 820706332 855624158 918637442 301164848 465863872 790003167 819260031 106447642 591197787 543334481 965866604 231377619 701562264 903268296 924162511 603179708 833478352 163074656 568046409 889436395 954011157 135833211 618977659 174578895 264144015 983304258 998708807 651196182 817541444 739446669 782387947 431257091 472905323 456609437 946811414 260573849 268656520 270576093 319595014 124693328 684572450 923518489 935198004 140826171 475807107 204338584 590692619 618392302 721746872 663128480 993138905 380733773 911759578 313954989 848686988 674745223 958225930 645247696 717082504 201702835 452978434 897415800 923043016 144070326 453565472 330696173 377760155 185489091 363321429 58723245 832996181 992383285 995832700 920058035 952058317 529411548 901967800 248999282 376152077 592107185 969796786 65200724 66543578 930034039 964536392 867388665 990044862 267011927 314138042 735536500 944840575 497940200 549681135 463328742 610531572 467756157 809372608 169967600 452032614 630607514 792832071 833560285 927398709 968619002 972838166 614485872 923962058 271897612 613051846 276624383 542209546 642434345 975166578 250378081 758790436 179257874 409704098 659284378 911390288 40247014 233171398 596456453 723246859 475429477 741826504 943107877 981875540 138127825 902383299 321786871 995478772 434803307 979265799 647976644 860656126 394263036 434111142 466555245 547022047 133125029 953009971 454747639 696688663 785849486 970114027 84522379 916182794 431196717 484039044 332547145 888818549 554655049 913154868 885961085 964294010 260535339 965939155 55571537 638751318 490886975 534383875 660492080 919805941 27900685 434285449 426227367 593907795 551001360 912600526 95289014 456475717 366382402 498914503 928076425 976854850 177675935 974545353 425765569 717705181 824316812 927583630 585282153 971520049 692122080 903189807 250447344 816762555 564715155 566445282 32289299 226116308 284070044 843033384 646148029 663396735 169971138 427402543 273496256 304484306 153633452 847364644 497765739 686151933 233182652 454525206 874158229 952322833 523198329 637172180 351077224 400908409 361713208 925676755 219064764 367591578 406585077 483283815 962623357 974988651 82913125 236980608 796133733 830650003 643180438 648894579 361025817 744788118 787824887 858375957 774607892 825198338 442646586 541387508 3821527 940988268 815544989 961627835 6206118 91331806 709882107 743642641 898101106 940797443 730324581 764529930 523937676 885109786 728351818 982140608 801363811 936726951 986676437 998333747 610436982 623682192 363546198 679102592 548971637 767492307 314616 144476788 900525737 949283002 532465363 728447382 8951372 119908172 555348229 769215063 962383259 973909984 79982638 970655282 261220374 479253451 975083372 997024834 967365871 995580199 403613755 749229252 800274345 943343022 294116252 534301141 297975478 487338009 266341227 564505575 409312528 953367662 872758040 875867718 892167120 917800568 337664758 339967819 947734067 975123204 873907146 929985357 109142543 950704704 620316114 621877455 262769327 683378587 476178818 986092936 997496587 997938968 594622706 838161759 954703788 993497557 330294711 985913051 87765068 376373497 30303404 732007377 591592900 749674123 708346775 987107573 278666626 426283227 468258 137141862 621093257 875003642 954926506 975166499 718011057 937046997 519882186 578197273 6064550 321212990 162279119 337831022 556890863 693263541 404121042 569435778 474949221 642132561 882017360 920143933 502280791 683230949 260903764 500180401 399860386 985605349 259048337 542710535 784770638 831311963 173219243 713370784 386456494 996461153 693234171 892390107 317027402 946864292 817587106 931739132 709800945 748285045 667165317 876684009 603632932 649412638 811403673 836518060 787814200 947987686 535001561 564901907 169371393 525490276 360282958 816801668 307539135 541517385 777431969 819902965 165960864 353599832 889540043 990133999 150561390 272220006 910746228 985527479 499569953 748136650 573872110 978053419 630035182 753618344 448507653 994378829 340115452 638363800 315637226 395546225 293890395 924039409 572307468 893328469 930999961 983132180 99316089 430309689 423643818 441875818 953733428 975734870 626960692 833234171 214715185 752787067 296643979 968355623 412885555 962544639 136699016 366554912 766080402 959856257 134057787 459217287 260806785 467627462 920171094 954909176 703117241 992926711 939614147 986363555 67499 617952124 943940645 974345088 263114429 576575589 312547955 435780928 986800706 990178359 273703033 846806849 338151119 858386007 977628903 992223530 127477131 162753919 751143646 786739088 184213645 592927579 425883231 453088947 731275593 828516100 348939729 361883921 968545120 985686975 470823444 514707061 480847127 674761638 23755347 140724005 827099546 864342035 168908882 309091668 168040969 599912903 994089293 997785887 702020454 945435470 566713927 985755623 685955404 996999070 608519264 899376255 435076531 438586396 827309999 832259783 731466219 926646424 443422220 543335500 96359313 885477090 780902036 860139225 897533378 933920646 963252692 976329003 479536308 848210317 639516759 948308178 936855260 973233788 892897477 986053188 935197792 994256930 358738963 929204358 695722467 985449618 155768672 925803381 5000630 121514819 718814439 963469593 717246506 948769670 645360803 988049332 350602462 596616678 198243917 528383172 837104750 947346123 805354326 894457491 168556259 604672539 375669714 710846181 862480444 983696170 811463354 827340287 252014205 324807103 875826290 944820483 311787817 991688919 614462821 938746151 842649755 926974557 677479066 906082254 849939223 904016185 957912769 996842183 902180111 914936292 664574261 858524559 868415404 892550958 936047322 951967383 799043732 924555351 323562074 522329441 507927222 625204563 274167334 636049029 882332865 930866991 142083500 868740312 728610191 769140715 711748985 956829381 83624469 592060693 434875594 680829191 845518422 906504410 5627112 470600973 856927792 929453966 721861301 846172781 169323021 208012288 626864014 814572396 545601535 757860069 323787321 593713056 600031733 716271110 320609699 404751369 79418933 248019825 213948590 694254039 16326511 237815508 62023176 311236145 333911251 552739039 47270546 256476057 213995299 729260269 180131192 683317150 360347957 515753714 419440118 848991774 638202013 998788114 691083051 765005623 10006777 115914074 538115570 925954977 31878648 692552040 418119015 469683067 72974257 150355726 83767426 156763131 653565804 916908198 767296783 933490774 782878182 995070012 791203252 993606887 697701535 759995899 174385987 482915378 296618745 807881404 926273943 942849120 849098875 936531856 216952542 850803925 871327717 918194415 798636852 802895072 282055644 457736818 77201690 475428724 201787711 660418560 235335401 433207391 872830341 964763545 752771591 964358622 732506150 905171896 788840327 927254256 190319348 817438414 365455014 982641393 505001572 973441258 365427856 385970402 90419494 623863319 415835898 545751762 485963520 908739729 631725473 754000159 595152553 769918342 955727909 959826143 885823084 954964846 187606676 320403453 925163883 959275596 610813239 677603000 490245006 930277160 232020677 928504517 766375805 979644012 29249505 512128777 136641863 666960137 283582006 517933975 597778745 743587704 279971185 478659964 344090808 672357305 959658254 973225498 406700919 481660364 545909019 575698751 28907896 731291713 524652896 662887542 909722905 914407049 691841736 739618856 432769712 449176859 55221456 611727919 917464298 933291045 602865634 695473789 274788829 530541555 696459274 996286003 710804796 836015935 16739843 942861307 267060995 623662402 399696206 500067393 69725661 669326628 712900598 840331378 11751795 692485272 58861839 894779295 370819573 463755235 714678850 912595519 479996829 680343125 655912064 780823887 781196800 843847545 760231285 887148679 377097732 528531826 496455924 515771389 868601670 886470745 726015972 763302205 626802853 732833865 152990944 676346209 173589317 720883346 14599140 205858535 475555262 577623784 915557293 959101083 589799040 625418870 559871541 905477715 959443520 992356280 445077305 519596414 693974287 862813319 872294859 924427826 784572625 886781765 51790709 285293330 697025137 957424364 210131756 339573343 699460388 934133425 445348325 729679814 404215653 464031739 532979910 920899274 787548606 941796231 638920604 738053220 172002602 400238698 690029823 736054970 715379577 929589286 435022590 978933405 821073386 890933556 728127597 849575122 945023276 989317484 716475440 897400747 596363932 645539107 454785547 959440130 613643328 778103232 294373201 859431548 304400221 962706333 317531342 741095594 782436962 826113085 7259444 378276473 714151590 896637226 652548741 828508905 800439885 958955386 402134260 551842996 285274631 498450234 831898248 886752794 403438850 881412880 598489935 985492952 765216718 917883797 165107265 387811379 85596336 156381698 167387564 915776952 278652438 342991711 403959403 503618830 420418414 746515129 761586898 994115448 707618006 729913328 691765615 810492814 477149216 688838614 629630265 830398282 3424091 814281922 692506589 826744041 512466965 753251134 311315927 746155469 294968678 846384605 340279918 951230844 282304066 483807363 672346280 771577774 107135677 787060945 933618300 952142408 829172562 976897305 560241782 937133899 498972897 791006646 937987235 941371422 176296529 701734581 20158545 727539195 13688347 933779989 872066482 909972710 266967381 562233907 523279308 920178214 428323027 885639451 518256554 846825426 497255154 682244065 118171456 843022646 210518422 608213740 631797908 641555990 611210665 962971905 437775165 731434978 977479287 985862404 316467056 665390700 588085535 634754129 221041039 694798550 65287238 535038171 386975277 880284399 191953151 689797578 872318457 945772300 774339238 886208876 666696343 912371677 211337589 303835415 924673924 950652196 319223105 382403734 789998923 995309831 247054115 943769850 58699397 701048394 636850331 898330150 644989510 955585451 843476476 882107955 439609924 687444984 360405541 748138698 473807235 736495988 315064994 776758346 484211275 614113684 5677000 315153853 911008468 949137824 378589258 707223384 466487579 999943985 670414771 765812127 537498736 968114170 470147587 800294939 621661505 686782249 822243602 842568632 333516491 353692391 896143416 986002485 528780989 803331657 84104539 534850916 648643373 886541889 654063526 870743847 292581374 882587502 789841257 995070456 875964311 911765414 990609082 999883552 432189160 673701769 199970430 966058297 402238475 612267400 40303676 854553631 381372001 776086457 289843446 897726517 398857562 739640770 220012856 326528203 277046259 617406540 281702411 564707606 434070293 638298521 362540735 509630235 517708292 520124313 851745423 990059103 918352597 975364927 979574794 995191488 431211965 739669933 32760083 513745880 803381448 962134176 212856995 709356975 85760353 432241854 338083039 653681382 802693349 846057454 809884961 937968901 722920687 766807005 531910626 718428508 540789758 869476105 192644531 914055405 738156299 862597922 273630462 439869112 769396329 777489495 218907277 462470753 745676722 901030824 933392596 984490659 441421273 764156383 40019062 425735945 40310819 786360604 884521939 925305925 892757558 993936960 190039547 772545911 690467399 984105450 639101293 843310568 165631262 632908150 597802918 780651157 657990683 751732725 714352498 887709916 57792593 778003678 664206943 783696491 290633449 662584888 746667495 864635417 277333297 909485446 1902705 70808772 128138445 981365484 625972858 742676805 207298698 377840662 667489422 995279896 116186555 922701493 660557170 763006205 354867512 540114053 32868178 564405231 767620126 838432407 986642194 999692442 140946982 781042275 530334063 924354854 234609765 559337481 614963228 986060334 240138954 941839408 621627119 862170481 101697649 565739070 780768693 842930340 575091055 584178627 796773146 799624630 650882364 983435697 615799817 984499485 864593603 955534878 830998212 919829066 264320955 366470758 857112301 999885899 727148515 855395993 24444994 942143644 293576930 665885927 163701353 959629944 468874366 950078988 726753997 899822998 704104554 984420870 543433658 838305000 336257084 782197947 892535404 943966047 566999862 582766415 551719295 790358576 87448048 723105655 837277137 852937225 410127071 778670855 765382006 984652220 597025174 976870861 455262523 568713586 546758473 690842236 565525214 877951087 91195447 584080920 580261038 703351609 330832947 416929388 169881922 767338652 705194310 947828374 791493355 846435726 971592486 997316541 497219520 914496820 945935797 968304144 897166957 997856289 408746029 417034003 429021448 806417320 469353325 477649466 522598616 816269811 624063531 986552293 790835741 990322149 807956896 827018182 516992090 632082965 224883430 675880917 788807586 841967325 425704221 643874245 247536173 452442779 823396388 825342164 290332155 459625739 447604647 646308689 867227899 945608582 816627691 985263537 793410745 930084054 649763664 743304699 595126888 646921848 765194449 938245473 198380139 422824717 622777875 643122842 302367394 399531296 337391584 460863479 750333274 999726251 961817986 992889171 248689961 446984519 217520894 224397947 260822817 971778429 185179044 243324485 556012571 799536657 23511688 95207024 106877863 115308413 422010972 441052974 319267531 866664224 448589464 557217832 599651113 616763237 959309170 998160919 986303527 993058242 688364605 756807108 147976198 670124837 687572783 891682072 388667280 999385516 907442032 945113136 878656036 902715547 41620016 900292706 462525288 933263367 894418706 927468129 668102063 692426862 126486462 755090316 50615164 479354174 187603036 687053143 596093419 830200859 824422418 897456244 691663884 862815391 890770996 931897277 907060680 916405074 91461944 643096193 342181227 986776337 227684171 610128308 707351342 897991946 842109383 853072801 126335171 590347205 573916642 840377707 642689966 939130656 841417222 933781321 500056252 556443678 605163560 907083248 979627965 996708079 149710566 389241100 256341458 643298149 768102857 903658568 852378846 944752305 105676793 815181723 532637221 886293905 525557147 846003904 864125379 974212486 78941883 162352974 50647238 963880472 291181277 352942799 986059346 997130614 885784163 950923306 119666083 840605460 50130336 158682811 20992102 275338213 28850832 658822414 607632604 832980382 804991025 847903781 795303281 819133143 17793882 984541593 422507579 598450895 720591051 975046526 443378604 893767077 666743865 736294820 709442471 967341397 53428282 311770453 106670058 273705132 344873798 667055833 990487304 997933921 122127155 793376153 613068081 627973393 81849654 183694849 371850122 996056439 796491831 909365752 92983601 744057622 583875334 966727317 515365721 833098500 965029285 978088579 801037660 977739084 974840602 978636402 536757402 612190163 627282620 831696760 675130617 999191208 872073173 963208559 562016090 948371272 760385200 776017485 918711152 951298459 887699764 945752686 443725249 559926185 277176264 656498097 106869152 193526652 317117369 522583281 925576173 932004623 969314254 983599128 573957390 840831095 523283586 913142545 683375997 756178720 63615904 761919626 130119580 377518594 237489317 404184742 537599792 898818393 862899999 994931431 242417212 307076742 819720114 880773451 943502075 980714972 123145427 692296451 948632046 985757060 475658883 875259650 526365028 627223291 115727547 208968367 108091947 667880617 96504694 148499222 470439183 705991548 494318843 714608866 351411495 898334091 937215721 955415742 52132025 350872054 163141728 274209625 221853877 781678146 669033767 799391003 419998273 573338125 562200486 825858698 210364804 221286789 827773249 919865374 251999303 432704027 444990966 648423744 483805402 896829761 213738593 471513797 473370983 671568762 158030285 817600085 500961737 738269921 187147243 333072555 715238810 889803169 89601569 676730066 355624942 464945997 404829307 415290919 261364196 369700996 323477789 671446120 927867023 962383076 665767208 925052011 321538198 322607295 565003670 949482585 332799594 846134217 790163667 878623425 360338603 668798532 74912981 77038216 852572821 915741111 998707164 999727129 211106718 705934028 243521915 749020413 801530290 899302305 925485638 942885674 355292853 993183376 616098364 974020972 656926099 749579828 721902299 731072314 751588851 858355070 586375789 747282966 994155932 994434829 182063405 760278480 477000145 794111653 148843272 854213826 404608957 541635834 21294739 286535343 45593056 665942165 783551578 874189755 646633209 776333472 88355180 535249833 883058375 952974424 38966131 853247618 149502974 608512123 871752447 903843412 510693417 618994484 134977458 269172610 713000531 996258149 636952738 946581178 391582040 771105873 715969973 892262092 649763402 714807810 995678728 997460729 25066739 364596486 823258947 999060417 959180143 975624638 513390971 876268229 58160953 120077452 443830191 732025467 608607164 900833538 182259953 592097788 849588971 896937375 607111842 995526977 330108689 539229895 837354363 945206563 213730343 908064419 203296328 728175431 945407850 983172641 916921990 946559812 854786487 910310527 32884238 526465933 556006967 592123838 747723733 958917864 100155744 763100102 825570404 885721462 672807370 746597345 755064597 809803366 168820630 788337368 636768828 765299754 788090693 831537042 608785970 929243748 85621897 167174695 801492915 986411238 682412122 683069400 682990351 730755331 668000280 977677789 404206126 577193161 836605527 844372558 730503016 731340324 395148508 450432362 459421890 724188239 817537427 836950864 636183636 887954171 639840473 806257041 749477097 856702081 817082231 870370118 468225724 750022024 95431726 139990633 392675220 478709735 42526747 672942285 372100058 594430677 14068239 292259678 651077037 787291573 743243359 786012744 505759284 657194234 514264691 666539224 653099647 878670529 595870470 833141326 17664755 306073738 675280332 726822144 466874636 935346922 854219611 992044730 47121151 151968817 269221939 946378039 345106315 453283814 237745729 959507767 880929617 937682791 742888884 982240512 673860593 965264950 892122528 970050684 157282288 610537149 178755708 639171979 688313369 771542191 513930133 960594155 864836000 877943111 182168307 327191779 213903399 262750769 140186050 357415455 245697345 320052796 390371413 847507764 531641881 664930641 8429904 927795172 760601632 944606542 995578548 996138083 331243291 604093474 984782251 998532461 335646017 990626711 585033760 769014361 346293595 442689341 250733781 562365997 757722083 829551305 920402817 980215164 524396030 569648629 120866766 681208176 904960798 959675421 406758095 709498396 599775190 648575208 82701431 160482447 253636629 988627883 85294322 536282228 848856848 948022054 786337886 809241701 609889392 841398093 353515101 908855250 951731589 957841477 131918394 506567758 220429458 683316971 35020351 970905730 966742060 986135220 701166777 759891096 168497140 967514651 260219850 568698477 314062926 495518368 908989293 964800386 207968502 480626598 93124745 179527198 866308296 966471075 273230174 692414829 188359628 326751005 985227454 997895531 849890284 920430603 856933821 924088509 412770991 828299961 281285371 970515973 346300187 676052444 736349811 835406936 846139846 926627603 150911792 342290111 440038072 675730195 351982762 747399700 840967889 943668225 704650716 941484758 590367394 948618333 614745032 752927794 242673894 494001150 878370189 941041036 602256825 731794234 836555310 874383041 429957196 586071362 576409478 800222099 561952356 606948781 814512589 961954929 931656598 974039551 186120587 633482983 58083359 292215621 656182841 672154892 395605226 916973892 569790914 910125439 21762162 516626091 609887291 928550821 977162017 980751848 165107896 216059449 730229283 883122368 370905683 816142036 970823870 990591419 729043947 771602181 529515099 994894246 969411254 974783595 636151249 834189465 363666258 432753096 185892695 744908524 994873996 997118630 892414564 946685966 54611961 135944856 691965555 718462104 714436628 737717631 697862685 885699356 303352773 958271850 259665065 863003594 656604317 961645504 929990105 931629324 755867982 787544123 813951033 857149152 870451764 994091740 804420320 816990475 43186829 396253363 211644688 435848360 654913041 723775546 256488394 787882499 293630409 427378620 262899223 747857495 580885823 703562136 978853982 990661197 224597560 678791658 293113848 759894261 885755483 892398909 556161818 939946609 994870592 995953612 243127883 591020638 591307671 864220322 489892571 857051632 509976022 707051645 357207612 604389679 927694452 953494802 118846938 859799587 537172512 621988317 160950524 581037606 6143625 700512171 507407628 548135505 500336277 864081491 343715481 800752311 118055535 580662064 652247798 802534137 505851334 719048798 314724064 333794272 577156878 621188115 809683120 886120310 130512621 280208934 186557029 447615009 359451027 629266012 627455450 867747863 301308211 362461667 869766242 891927780 290769389 842879714 246585951 887831763 463079104 581450345 531256411 897425238 718418179 947917810 819214772 833312374 856063621 988636766 578197775 960734537 935437 797914779 398163288 803205393 160961579 198590301 538857787 636226665 636602367 658714536 750918309 816845793 234063810 679987801 872249845 937412736 229878274 722794076 580834331 797974964 328640009 335555250 448010979 919384051 105562473 724018053 261374970 498108185 191440267 970524681 334435958 880988985 398132230 982077456 718355787 834087189 734513633 793902318 787401757 924687066 88355400 475150934 920530245 977098675 86281796 194389844 930980312 931283310 74968328 213664752 306474321 604438147 9747558 880324741 228027376 632782101 672718642 725864571 338892244 471749407 563871221 764499006 846940472 951275942 255915481 996332810 920196603 977406900 618059648 915743139 877560626 891031565 864542577 945629786 379879431 634532061 895295606 909374466 538594710 653239632 656065937 744344946 131602586 184539068 164845449 867574363 326929443 623267104 705039538 925531016 579297557 886161831 984810483 996909006 970164589 977370031 963500877 966425444 914757478 936828981 933043725 966442170 439679947 545506079 905901690 948933335 58894151 773118626 173568393 992733565 562957353 647200226 451957018 704961415 431114105 780920353 578241005 592387379 997877189 998421194 640683917 787880607 751120443 784251537 488546051 607129400 406185018 988917544 98205340 683450155 611796085 755770697 122592226 541221017 581427622 643637242 961232408 962167542 673889034 875893654 510520308 933450221 465311006 963096893 604812519 658485865 993586070 999301329 502874858 717582605 497489110 733154800 20456828 344378051 363221221 654419817 186216278 854482315 680394186 923360169 732857103 980068629 943542242 978052064 272465031 877297553 227308569 865630716 468395347 528305578 510592341 639085461 11157600 297659701 660377552 785608552 446471333 652065850 872451527 881682553 418990795 525777131 688983233 760387530 456344749 522546770 64308134 762161384 240795195 413503795 164561790 793989315 459988630 710158372 848065026 886791055 986498629 996699323 446318736 991939622 123266802 954438755 9979249 244234201 888862485 986083758 288491070 383728919 256019646 756605255 113718371 670579451 709722340 982013020 882785007 952695480 28223513 820619255 202808165 328750163 513592080 725692114 342493654 918679281 580473736 696270406 208744827 499629886 425703850 967616802 65364584 328109391 259547077 355998835 519259237 559881678 482963381 656625343 252373421 389203464 176584625 532835186 646900141 895600206 843681480 970640727 896620836 946678538 709197406 742234160 481625511 722923435 925437168 998270594 89873440 690810652 979341527 990287250 509154975 754854522 599514688 716439223 571514302 642606778 596136804 917498943 176968967 582449418 444571012 914940913 391885694 649681746 863111590 988117127 420784607 593907201 602083696 820795035 787743263 923629620 9601911 113014355 776030890 907694035 460786356 989395975 825675531 947068497 306081431 535072403 48789578 884083524 867118030 994915502 950538953 960219849 390200582 832606051 24354804 345553064 892977046 920802856 985368288 985421206 764417060 777339551 400146627 968391317 689923587 986404423 588862697 845956002 200601644 643970445 535235252 563087446 396796461 852824160 855430331 905134829 89113114 803139045 307254717 349822628 162846293 414006547 732937055 775763159 439192819 723084030 386428514 573835071 959973593 994666391 661153069 917777484 818393640 970725600 257719170 486158041 794942032 998429139 589505905 726445653 188025732 520614863 945828655 986377536 692209177 908233386 963457261 976741389 898126092 991569748 854365102 980246304 55921270 626913615 784947738 855026934 545515165 792202773 537068981 616966291 913827624 989586838 544213889 587377291 406632853 863757256 410684949 844372142 162412608 615415745 935522197 973186040 261713876 621473682 699436474 998587208 462574094 926945539 794457231 975369934 648548249 748147002 576267949 599149231 482518374 513482592 286405125 772162659 103795613 434210437 552601665 642088803 408097111 675469219 81211679 515238757 442208044 493506781 772315623 779224151 773335056 960952086 327403101 984390715 261216614 324634683 325756812 585518848 574618040 998887186 599900107 870124058 873030922 957613052 844912083 959081809 334845434 647863245 918880128 970345864 959975622 975211054 635816289 732516988 714628514 915972281 891797844 957045792 428031594 748168048 625836355 816686309 132232508 299125256 639429956 872097338 439501010 490317272 536747625 734124334 735194115 773834146 584987278 662453264 852019178 959131613 682343799 988456564 288064050 931045082 89622934 934611191 455983873 487369999 359171482 849607082 249585807 358702243 436262985 812207033 299747670 524580774 239684961 331083098 624380845 707995090 983958809 995945736 438213302 450953648 891075548 918516722 597488184 793513568 953302246 967078443 629023433 971964087 86191098 385853128 448885230 578938648 246157508 679715702 13169931 775778775 193351976 399773064 819724357 833624007 109475432 887739065 588626058 784469878 97011117 369111292 46548158 859185177 586968329 845936360 503423220 684990210 189923521 434157134 656684350 964861803 261114096 490639345 687418630 724428804 40435413 696732943 178173342 376776036 215090714 597122604 78163017 186525822 874413445 910898090 520163769 964863127 224772952 291192474 809080709 880736517 1323557 729752916 733942343 879159358 73035889 747873800 121811348 390529581 83547916 459406409 548896063 782699727 445088883 905224167 659592462 716041190 154894724 676807697 437390660 686847249 399737007 918148127 129043631 387944464 363055272 686281762 636242260 738626773 599010684 629088457 392635830 676742745 458793347 753435830 975717433 987354887 780629193 784639463 579749313 808297613 76547404 638348214 629265489 712970723 482587128 953151496 344301463 512108462 874057276 941036662 577539782 615176981 148807693 575605862 5049763 324080259 432102522 672098641 694793967 810186868 965226582 971525564 39722333 139915693 911265946 971756267 397789201 555125988 158055782 289097264 107391145 603508950 549822778 613474848 213716798 903232214 113789386 522634021 362445556 382535687 390385431 623810254 220071290 866160161 450655176 653700634 588882843 826735913 2975959 113927673 453739624 843645680 198146139 781203001 807462056 903012971 729889875 994590656 680805125 833723182 959046719 995347358 484372021 670677662 719487188 934482424 613499014 792875937 75030233 828857169 601741923 711915171 560508384 818449864 687179390 760314849 47885729 314089951 777735875 822177816 576098524 641557712 185522469 423735745 552593816 655154775 890787724 985919269 34888649 508022378 376987553 655203311 250764748 558511391 972756314 983061311 77497900 343926216 235525596 499908857 62947512 69358295 60335926 638444679 283967158 522817069 998095303 998873052 699976303 945651458 425582886 998183331 164539831 553115734 886320199 944994418 470000542 946784179 243709163 404337698 766298704 941056830 925896843 968929245 836670137 881639101 401338223 932198639 474775458 525525000 924841341 929979522 624556237 981698563 146563529 741353878 138913226 193098796 550535254 809937225 957217028 963710347 176610109 219768966 460705548 920442351 8933525 370117375 428482159 477028028 179098329 536442136 142277640 866802100 38814396 488713580 976662308 992742889 599789196 997104845 682275054 938346559 824681189 913861289 216695072 633939557 271612178 532542065 104684829 241025547 884177161 969510636 648993091 744159334 379740542 589397313 629382610 751619433 432516915 702285010 995433929 998297990 113593573 443029899 224839639 770565934 875427025 981144082 398467943 493998584 122905268 212664618 413197187 868060262 883697811 895780967 920223146 950301563 101497400 994417500 204175636 727595161 614805001 896767639 61768337 935369513 696586861 787972858 336604086 626438211 390384883 679669831 112441893 694278337 41306512 944242206 34683859 166057926 760676909 937351054 653120031 678671351 631641840 807367912 917128635 944652231 536731859 715401858 747639454 860451735 778292334 955943748 338990970 351349292 495672215 946667105 276839398 817826280 201033631 347708443 637252580 927730319 90047449 647860295 263391925 450724294 704826648 942189324 901999828 908034874 376333013 667836984 877125174 976828689 654310965 749276480 810816208 819849688 979426714 979676120 229613172 744137167 85960519 511318968 940770657 985019254 840045679 966932170 219825406 298123864 778186944 842150074 312206649 727419398 305026783 869868086 44855951 809934671 472168675 682413437 81732368 92343411 924710076 935318039 226522181 610043771 563898776 778332801 249882136 536538168 959628797 965359593 89116947 647244768 407529266 485488040 407299735 898557909 15355808 636250962 443249543 551947593 443387556 813384133 385947246 982128013 926406992 964213310 489669814 725060985 226685150 456779632 556432559 669420054 650363961 891220558 743928132 906665573 917258039 936683256 290402162 999240620 456164495 643886990 481733030 619778731 319382836 820820109 464511370 991200965 534264748 992035993 885472583 984337400 520950725 960307121 234740621 598386752 163407755 386337150 41784429 73051235 329137811 622516383 109911910 828079935 444344856 777821596 537520723 971526809 943535344 961755490 695702781 732760174 977301764 998366369 87011172 120155126 639995005 924110935 197449108 257162091 104450019 620903588 836734389 908280843 636892706 752551072 790168355 949095191 872925624 874055558 831112971 983263126 482299093 666574495 885774665 921739311 517609991 813577645 484415614 687962579 866957090 892021140 901905942 994585135 776218801 787243843 600672076 668315621 27951874 796941322 576469252 985631854 867684653 970067848 737089867 773214839 841931516 956912335 778681340 833278875 808116501 929913081 229587601 529751055 935907709 980088138 296294705 745509973 475811114 523882161 799677553 863183240 2245699 844927488 802181361 999802341 802439124 970663024 505617172 631284861 461818295 501769698 703683859 827966093 654077272 766642749 600343940 932554066 856266832 973109586 969203743 984187064 74127245 212731082 456245999 935758567 960565052 989388288 2945855 989512439 449170399 782910999 424504112 496040011 854963565 993416119 784254695 971045212 423167584 669784341 644316949 725650472 368131861 391721779 319786760 962589565 572055062 960456377 839898913 971948697 3985175 728282489 339230452 948219290 302265722 851781373 674286157 687241376 472762969 881668871 717936050 759437911 257686568 622104064 870174810 891938848 867977842 898647807 877802201 882999680 518221343 680488824 869148608 880925907 582435152 625467346 390757796 393573564 926031678 959045316 981564176 987877967 710361807 821907890 450039652 716434113 165084383 803698248 273590319 703376495 424963163 531557320 708266647 948247877 70759605 211287509 107726838 672898897 471874773 956893670 324462572 652491490 814680070 981667840 738594801 801501353 879207476 979523307 149938106 457746208 971819513 998633266 671850396 924808817 552440893 656571410 468841093 845235297 25312996 686522115 124199623 766153816 891745198 892622448 570757366 604142136 926467851 988519647 366010500 818530136 166344389 646452019 660839642 684226193 360936881 663494524 523053850 589426224 811491458 933260967 773922164 950685741 959210052 988891590 102759667 893838323 419502156 866340583 316791274 957769401 181150723 619698078 410260365 789811288 885224373 926362165 591918705 987277403 968456760 979744618 994071797 999039260 944694834 948957214 988921733 988952125 634231312 721904574 549498836 698328787 964185077 974033479 148331441 841284950 989675194 997769075 29113578 159888339 118951002 690746913 282951736 335225786 900564172 938923441 96494803 296918233 760961620 841173395 523304619 748947053 1006609 708807893 494724267 766745727 286477967 474288014 369889771 594374712 135957317 138739148 308823120 356751015 187411806 652236516 819749662 890623188 685582162 880911699 80333305 737060846 313901191 422454983 246244008 498217850 488770153 689976846 696695714 731230976 272240005 551343049 886771972 956933573 962609921 982739131 619429274 943159178 25443437 478647222 748151491 898122670 233847064 524484024 868474405 961556582 324524959 649040987 164378422 930768055 329451592 486484265 993086674 998604841 535236020 953677837 904265687 914417826 83618103 698573991 457504131 931847246 122638152 456574353 873961037 994995699 170040168 345737878 648709581 685773047 82001321 800995032 488909923 958099432 881179700 968493439 363443602 617362984 35071385 504470817 708567035 826901560 278168081 611962303 950735099 954597850 820819757 960642706 254548348 720290074 556196721 861927717 548800991 708115416 963525240 994313623 187647755 221367473 267975114 300510192 1646143 375736205 803034877 832534768 657494637 741506116 705186941 857094253 915094571 979153869 2239968 704761622 417155213 789816124 139495163 847866320 200767490 998485213 609260212 973286349 881567467 940199998 185467217 757152509 758728116 930704833 929399008 976963160 662373267 726748222 284804901 558489707 501028405 786122907 223508016 910155620 441470901 807564736 11846157 812091490 5666790 136828165 357078270 451337569 460688246 752797120 808983664 983448119 695834618 776986224 487715129 934037804 463661195 660186042 73503326 532142223 681241446 713619826 847391135 998003734 268134116 919298859 478513450 966336189 994894932 999355836 707107530 975390276 127167716 946173139 675502940 831509921 730630207 998669886 495637452 568633625 239429122 523634441 482005757 504763289 276798506 879900467 464445553 820453758 836080933 965987910 759821094 889579116 960127779 965306466 881311057 892019513 870059615 962301444 166619785 618916692 860357651 961822832 115348305 830985906 897879333 989346826 412305823 434302216 758848411 848210766 389006277 881623394 502075844 699465521 5387097 638831204 155402720 569564898 28144820 524579617 413847830 481625101 969206153 998383024 242145891 397498347 375176697 509090683 905494351 983754049 948527190 964882580 50720863 728933753 905931437 986171744 781329656 937558937 648995279 857442288 267908130 698107129 369172887 663581362 95229746 413627406 257868540 760752738 887115278 946465491 524849383 922689099 815275292 931228245 50902035 869576488 858443318 861374878 749604609 792172481 28987136 395599515 941500333 953681056 63725752 819163879 609701085 863666299 591388088 901280503 109549755 882527534 56129955 859538735 561884684 812220887 20634717 939315294 549781726 718579817 281112545 639676028 964502230 984549148 842506413 849119844 477496175 532645633 289058951 875743734 980275544 985828350 654916688 742931485 226300003 404072611 339433927 637463571 524179858 642619028 76998252 936509127 619324449 771696031 466407108 533177530 413566756 485577892 386047621 710375716 434277967 662873841 850367089 873235723 150222967 605731912 222010470 578766888 982204043 995992231 704503828 709323407 213456620 700225881 429872920 893443052 565845509 982474682 646227695 664849118 112810787 343151092 971565124 980208868 436107525 870935806 852274975 854473541 650259129 848659963 690167257 994465929 729216030 866928575 447138807 491409260 493404962 673984897 590700612 673318852 588530702 773964823 750746819 930575901 614731594 788116727 166696976 649289540 267772048 833835055 468081794 819710448 841193292 892979177 783491487 884812471 899950482 911243153 232952290 590667676 543520515 831084946 686802209 927628363 227249591 262773186 233783382 854416359 508475376 595067481 657004325 744016991 622618030 971691582 577578668 727197385 69920654 415613733 582526502 803997021 402198010 767355654 965717101 968105846 7283234 589668373 775443356 776975737 725431273 876955212 59025504 872680267 921982565 932578464 17318495 407544519 956366942 995565640 888629262 940821489 533985509 752662845 794526887 922671811 655425567 814679830 333366230 533421949 780583030 795741681 281507433 540190861 959419530 978633328 700296621 769787871 350743279 655673352 169627970 560215350 810713924 848821135 682607918 757436865 25676704 232483948 110096360 998172427 372234459 995218541 769905892 968188192 715784652 924425564 76979048 971025329 927377327 967498401 208481160 711414322 994915044 996807364 318235582 909644779 875964975 936920426 752666052 824071010 722542841 725946767 701591984 949793583 70639884 740583207 734959286 868948862 544897274 652856007 140594583 220235299 7262749 25486128 974914770 986858588 56290790 628171930 929463073 944448117 33777925 684486480 754939784 976967559 258786977 817915269 727248045 806474222 463778858 892580894 972269020 987686605 525606026 724561728 118078020 307947998 223493268 648380024 666286833 896815560 996660451 999391732 548318237 954813029 416174889 435611690 277963161 671490524 587820553 846397263 193905397 367735321 463337253 479376171 617433466 689260093 175262778 347916031 560096249 948951814 571411947 995039058 710182070 903144540 721457589 785741713 639739707 772475697 925929470 992958330 5832599 329213791 470465326 783633396 921396771 956574427 760618216 969462861 341284867 589207000 628509081 918686457 359248220 492409194 316190504 988620006 931454014 975046326 513559075 729055559 178825395 462632636 566213755 859263209 436759124 850615913 130307053 792158183 446532713 526577284 202098940 720485203 300302157 802537912 15222414 972150691 546576498 671364270 152404892 208705215 711825465 815409335 422177125 712600218 107121841 408305618 747470732 840328298 271491219 297262665 49624295 49635305 901558062 910174148 301880864 933614945 271302070 437787124 945715140 956557502 629911545 899814118 94486216 622054745 968890088 979913723 855330860 977488702 276658905 827222617 225478328 572892272 4192721 959247746 371343056 761500233 639884862 743499241 179723260 601512450 657026698 763626438 64321843 455324480 686363911 805721186 705014635 915650426 106147965 396821449 194857459 220976661 755580356 783501711 189238112 859175104 207010243 598092680 79346782 178714678 610135894 668558371 573435131 900459815 724938394 863291177 790123972 913158128 65634211 434286264 93688675 383069717 954500353 968969262 220728813 478709179 440371961 522357624 445939722 596909029 359978452 754070735 553956508 698739230 741543150 960382860 618087952 769184551 916519144 975439108 440830327 922432565 546475881 735145793 799042971 906774995 420551786 494274859 878796244 886496864 359433434 775909798 714741304 838520001 867156 464435062 419586407 527402511 301405277 355588536 305375114 948771261 41499231 95426238 546830115 940422621 403008891 613405729 432025638 636181220 651604962 699316822 892730400 954091291 181293569 461426053 14890857 790589284 135637907 934648834 519916275 675121880 83297385 113405634 18219102 216433602 921595479 989730217 795324663 856573417 883789056 885066108 272120623 386641628 156599213 253518052 480142691 623076487 915396228 921201477 724618305 978086374 464457213 962960091 891259210 968536797 59549342 609548095 960463045 982453986 358774775 643603706 777468731 944906180 837203616 997191101 458452019 462691590 725727672 887495728 780818226 891561017 355642347 759676444 213395395 366635008 110365654 590528877 20705757 893940014 916413594 955116053 271680639 864290090 317208620 845006673 43109255 950776059 118043867 555010458 196538514 425925489 743761433 860154260 952212022 960934667 45329290 921448475 538593948 644084513 187345695 564206208 341508957 867536045 626237383 997129525 459904968 962234806 99767524 873319503 752530278 826924573 529382117 872215598 286563108 571757704 489232674 976570141 516889368 860351535 494661036 537121224 130541816 347105399 958085138 999370294 775743842 839711526 225715864 794438436 838897723 853681929 713434902 877898996 536382839 987050998 774994230 798038872 578220590 846924663 620028676 732212953 431950027 685755697 595189075 764685821 425627563 688159611 462221452 765454385 174109375 196576523 868879485 935412360 727491552 877293726 369432276 397407808 279615398 915456564 178170511 930057949 201158159 339278471 465840335 912657859 221268785 881233717 800257012 970074673 211453345 447324994 845650204 918696267 836255501 850591078 481748050 748305031 266297127 801863984 315775631 370228185 315307517 501962293 706131018 913254176 701718633 899408729 114732252 379575883 376186816 748233487 534073634 930045182 72264929 841471800 726955339 788618194 477623632 504629752 567480669 842316610 58490497 342979389 215498630 230255067 100115776 322071800 856469076 902272178 407441285 584806334 860383117 879001312 680284969 936472289 397055516 409935029 560424987 989492921 594573345 977059694 507356495 743705812 197219937 728017465 857102785 904362333 316942813 652494394 590086011 900059459 39525359 408802138 441627253 937039283 262603958 862758349 16523149 601317844 51167192 971407873 165257901 322780459 803181923 836190487 839363535 850784574 311662627 854819181 604958169 699629010 341465890 651750171 380624423 669100839 188886441 611353170 232388853 648500040 381374918 611414715 580289088 702387034 27436872 742968914 786193365 899490298 721295698 945394739 761362174 971978072 246393990 341171999 276714703 752986252 386984701 590805135 281317959 357534030 700730980 928912482 543700513 741485672 949348016 966779153 933322389 978714277 414343568 647940556 660170139 892909587 75298558 927342033 221172564 603808792 497832858 667902505 208924437 605359203 315755406 732031986 627222722 819978180 456495170 799775057 28123139 478530643 151562892 787632460 506806189 597211996 806235104 945475640 835173961 838813947 815978223 837453832 149550230 551747401 212548391 867049434 498273906 993725758 302634565 868784226 687488314 841983416 236176733 356176174 359333559 798857921 241633544 912365980 172652441 454279782 610148799 761984028 950607230 969445131 931549609 961002579 746351436 812017923 316307015 984801825 177762091 734304006 259555710 423444153 62133415 823304571 145516818 297687745 45610706 302975782 705962578 713869467 863219124 990332491 878562963 997889641 631681932 749387943 494107054 514948078 386076061 418585406 770264955 982127343 683796396 716868001 585705094 934476943 159109969 623492626 414907233 427877040 639265298 769451625 996908687 998967665 880746530 982507337 131908306 872290701 186348166 781888871 810103499 873068234 692579967 765074081 167367974 819346637 932514552 951436911 706993390 911902542 375621745 459980713 244714704 416422100 283268672 498615098 355010861 638986923 223762328 536335449 617105360 989273292 180769434 317745678 260205057 526162487 387452967 391101616 243530519 916082564 595373332 851811027 118534732 434308350 239099428 373604692 383434332 615806783 515780145 937003945 462836962 549575675 885137159 896232235 604116955 968001753 410979870 840573084 860240975 964864312 91481680 223861098 994452611 994566161 97221538 635885977 555716011 759619881 873710257 889092751 810151882 881632912 166275349 695340634 315593210 756841362 921756006 931627798 686258229 797498590 792206647 939607453 439341711 917544244 221456022 953920668 20894472 633376628 631052384 746178157 884310680 927044416 684108351 900899130 437184056 521047501 159200652 363199319 70215402 353874006 353000183 608676939 952577470 992727034 905074254 997499986 20647946 329926880 352015720 788346643 737718472 922202880 258192737 861989665 255155525 959992241 694065901 966132834 350583638 742432561 231586303 612615778 710669633 836681536 882138391 884424658 100838062 234418901 172969256 997183581 189586065 659651794 112874920 735068840 337923323 780104902 90878293 275208226 884076489 900372810 469748911 714202415 130576311 566290591 351131545 967450116 60562618 415597004 365006607 390095755 456768404 892301949 420598039 940923953 626591961 769846944 158515249 264259026 48969920 636156588 238804584 710172482 895662010 919817007 916859366 998473488 2033161 80023617 209033509 730878509 851156357 935053963 694350742 871273240 768176146 934915826 314412300 603805636 286251891 339059099 156518415 876127639 954287052 968218459 974246329 974654655 631591261 682705599 181155525 602241938 871653937 936433407 708569747 901117487 90266324 276727847 712210630 856396197 293016886 892187674 910422547 994336014 618193278 821011066 468063959 634407573 805613039 828550489 790633140 961787492 727894668 913460951 190055293 872304414 560753808 786967533 422772792 696427253 519038036 572492906 951752357 959338928 360899692 596382892 678327551 926350376 876650630 961385659 553535526 928784189 147804838 366554877 439778284 654866594 499072620 589494156 724345944 836679087 830230604 847845137 441125423 817381151 847860587 961379087 546619930 981574157 980114917 980925370 186308880 919815467 31086193 736582842 499047179 668946575 93485104 387808852 190070711 568817884 657907656 902934815 490889749 682634584 530454793 939662113 909730800 920131651 261757677 329274943 83560985 853021435 38018837 38345045 68795405 802544724 770932666 908365065 118694562 668705442 18839458 240233882 821432007 922676429 200625351 565242143 666364200 805156308 464789880 796039206 633883300 716241197 167065607 977767238 881446767 915023871 624922222 872695419 923301099 974830582 963153441 976872304 80218609 261140405 116322561 117242016 39543988 105081613 77800044 819696475 153200658 706249925 332912567 947537443 716971730 727342236 258604223 912677108 500328297 963614004 8806450 167473914 492270527 995030394 976069043 996430319 486739081 977193862 275814776 298519356 683389587 692949262 764381412 775268742 813071742 998227627 467433350 490712784 969537072 985514899 551001219 989139662 964342216 993363621 901691659 992126394 384640079 429687822 509781675 975413561 660364382 865694951 586815155 831322005 80213733 163190013 884942114 913172089 844756191 846420863 204007239 501916214 271409139 846588831 31827322 461294589 928538670 954832786 522553412 567001128 795121152 845771924 588773775 703233058 584951830 872159512 427515466 505452847 902404880 948081626 900994955 979394282 581126805 867962060 667355690 720462046 101997298 661631319 184895239 232640588 769869722 992691825 872872956 949220393 213163294 484993846 489887102 937075809 435867240 662710440 717935777 827963486 508019404 959909434 63516555 588072796 317178367 650397474 168134544 970672793 979893577 987799306 724259955 883562621 946968605 961630766 412805135 639169594 746627605 958735121 184821627 319742079 624427323 904847795 550708887 838148639 472107098 592150079 413345729 416324082 470311791 497423138 244423040 347054177 877811379 910841845 500471210 781331986 353761484 601543503 130434182 492850759 979751891 997634398 863971849 945795626 595929247 914282424 310655100 652834495 467435483 878167422 229793485 331674180 792955451 922066601 64578533 445614880 440152076 615989781 930474866 958709806 403425848 964944283 315365883 862251689 26656195 848226080 996408208 998374457 965507634 977576331 269685455 742924607 992700884 996957127 504517617 691692905 700169130 991254442 834929768 952831499 113820022 390905606 430585552 654554960 782146266 964472855 417810577 665748196 650323132 987840920 219236647 562823691 527698363 711214869 734340555 876592906 849419984 893756609 964010457 984824888 376004075 577188702 802584680 864734821 806909240 828531048 716399485 898556059 373314023 643967006 945094067 995852882 160965527 481536825 187939577 794854970 904615772 974288762 570846822 613376998 144772023 544250240 599102449 606700142 882406279 988236155 615171002 802826859 385180667 693873829 806960818 969017577 67472629 570344589 75840874 772035171 296475203 867970619 253284410 617211234 421687436 703000668 470815522 687709942 492835282 988272522 735814798 800161706 485984953 603748942 679372815 972474384 134061209 673161346 648471836 779449371 791263144 845195308 362350697 771074226 372217843 376572373 347069700 522060550 554096430 691251516 310446154 436498391 836114956 957080072 682506001 813691674 783219677 976402747 745558383 864599993 501784504 586154350 122716762 932569252 923395341 944614059 473705496 511765288 706070265 745936054 556354212 967414482 482332643 649220275 951973830 954059740 621538445 841971987 818783251 933128996 94495115 551744539 988734624 996671606 146385405 640262866 915620089 968319386 133451955 643276377 928980806 973943905 15607218 367917561 100935189 234655023 116834424 212208139 941446339 962514686 80276327 83419526 956085795 964068785 754064695 815295263 855181036 861233957 550639529 661755165 355837868 717015007 505760284 928535311 658349608 868322415 610636154 955927936 89006791 303188613 100511298 444488533 654219718 923125679 929761049 951464505 269643265 550921001 201054354 840777244 167533428 616719797 918223492 952477054 474607028 792860826 67285290 717854521 309278715 347851624 278665565 492936220 244593790 746531261 389586756 903731511 888154302 952587808 752922888 814205598 232267392 334815247 63220714 442307978 292860240 964861694 816480352 840475651 597592328 881625835 84514143 265495600 929710190 930489277 693424280 894982626 391316645 967995914 389318612 831287693 682375327 867464351 851547372 867843976 406896429 781614133 640793815 807778318 979593843 997877343 898556034 963951342 36555001 96044716 294955600 462873850 81991429 586076090 564427157 811254433 898919654 964882126 380367136 803019978 981003278 998638595 187118325 539798673 328810803 953256122 382361856 931535971 570730702 592534907 10012668 829782312 346398907 421331131 247608436 392254503 673584298 997357320 150799724 920689191 608159732 629986279 257855801 904936010 717831169 779008150 585700490 616760209 1400549 912155660 880211515 907483053 850516412 874251251 286577211 636612969 612752611 626704874 683613143 831840528 23027506 718003523 463399614 575473059 156159148 242406367 402084974 845388507 399366602 496718966 254395736 548470056 862000730 888498445 758732981 876769607 45416640 48042393 596519647 632684449 186855139 365016803 254003703 967722049 273156834 434214697 830286084 992399153 10970408 606681801 897595362 942149873 729807608 865059887 213976132 717114739 457903083 613097106 355987493 866482418 588972989 712766639 553022230 740583572 198685409 394713658 519444519 869913805 345995105 510287252 414459268 969964776 637659243 667499053 996516 138455328 197023350 831591149 833275142 996508014 373576402 465105260 750045398 768380347 993144980 995409296 528710165 940099156 826595005 984400972 392654439 528244592 140339247 764700681 205107145 966862351 963701103 988245104 30960567 136357170 254605343 887694280 874061287 887955117 508829172 644043849 501586584 583382198 267313319 587181489 588216989 841943300 868000459 911991355 283269432 336292715 717522301 971488118 264971618 911133521 900000308 900921323 663795209 905781083 966956959 999865643 504802166 682888370 938978395 999374821 163662368 255109622 508302913 794523324 258827858 755412048 843739839 937571613 294540185 708587782 930984762 998055674 151422093 472944612 609383678 730844272 307008003 390188677 419693420 980894515 632495712 846259755 863999274 997312140 654274742 812481751 854258584 985319628 287038627 545923525 548023857 919710004 677876417 896180866 708715252 994801645 366538056 368948987 496726282 743576587 985859185 994569471 552162652 672823161 490808932 922702657 764379045 925706500 717113518 894402442 800163092 916164621 440341213 889355599 180200030 434951691 760305892 948953393 155392253 610878548 455816904 759246493 779565225 787537341 639365355 747586804 970081299 999846002 344169629 631018462 42226845 400550130 150385609 311827909 955693727 959180343 927424813 953293993 515706903 633116890 130422849 455982159 444055216 476786155 909509149 967321935 856047041 862699440 611503586 711250757 129562209 865028983 144721367 249873654 813582060 986804445 824389501 947712255 968056845 971087845 785820598 977600226 673406004 750036614 389935808 864184287 872068173 981413856 520596680 913791283 505270185 789148262 391481941 392964411 485840751 514588609 743069194 863491102 975987000 986301183 225032166 885758188 999648687 999684768 197054657 619953230 881514454 952498472 501222223 531917020 600526474 812832519 313702863 770341175 917438050 924923239 970983409 986552423 450480074 743972738 995189706 999019222 99694837 900424726 316753115 438927194 468178174 905316849 510487503 972725317 86871939 910707697 345909971 346666321 932072856 948263052 807237133 827582773 653278495 874745317 664968669 713523717 399782341 512986654 205676799 628525643 412223235 818804442 760063170 915056690 590005649 755910896 482327201 653790864 177235275 930045338 156272256 369426778 460743219 676054969 622076012 953656885 198449702 720736670 627179178 709012299 203744132 581926317 800428880 959722474 102845205 215435665 479731280 628209093 729400086 732440647 666250465 844393137 474220118 725661969 681064478 721030441 912112886 923999936 912161357 941987398 791458379 965037905 985715223 988058809 850865052 965172986 629213978 677886721 817579584 851736178 934756557 966353170 270395313 691376342 243472771 375953951 925099065 964391182 175621086 921156916 362145116 719724190 37448830 489128110 927649066 985104156 778398335 980298687 984971065 991855056 925679264 971582186 937922766 941524818 258066691 628139151 892549520 934973324 780395673 909960044 257715944 282708875 634610024 958612156 246535682 564349476 852902027 858877064 61226572 946970822 99613889 292464837 918031776 953575271 311907561 506409607 595781024 599533840 241814121 278330665 159723284 483358012 768048770 779378179 252114148 965195565 980621597 993266258 562988019 938181867 768863603 837227766 938139646 971872598 427863170 919012606 682864128 867597300 314597498 569640834 973892938 991337963 562415389 623095924 338944677 665752144 218650842 987870693 719071267 808907074 544292727 950272313 892743637 961990265 444678043 954807154 920879832 958360827 632518337 878779440 887791764 952119607 466310919 526281894 274392055 322548861 737590252 927840226 916552557 943499677 893589800 987570165 196056715 289371857 747971641 784701189 316395749 385100983 284500361 674183169 880671878 888466815 732156646 934917499 966355541 972459483 760087929 825123378 22649804 882606844 714240908 952332087 510338690 669003782 728169052 806503277 563002375 679756868 182946911 208794109 449952695 687295972 82097687 186755462 301973082 452869272 584470652 998175792 876461198 906862640 255218327 852149007 734458343 768478857 841513522 914729343 251134932 904219620 844781835 905499565 39487063 493011112 470241396 915656982 360968298 483368754 259717038 951102398 158241565 407350736 506086937 808041400 322256601 859749702 820749819 842489634 836594840 952602894 748064099 857859664 206527196 340612626 893698435 978904047 210984223 402433595 664766708 825989779 797473755 849229470 483901576 973238675 474843844 497659151 237785467 457484359 583066074 625412046 704275770 966479533 49363783 872963092 561719781 800476655 678917409 823007639 192290472 895571138 886508310 951019840 791446863 859418859 292496825 850338752 262946658 774437693 629244015 844692960 932176637 993218306 804820723 810208834 775499198 840182840 222751766 575403758 344363933 783772207 134716184 335687044 507720335 652367126 215001111 419259116 434329096 921856369 224399312 922561966 630532147 950533748 870247384 965186122 882291987 992352728 489483437 959517224 506051950 792650366 120626946 376766324 619509700 758358589 101582903 517571513 254293533 759767227 684991460 931422140 461270606 723042376 158043915 904794434 464497479 928010528 942346764 974831517 375107918 426481373 541529183 955050836 632885657 790004848 8742 226629046 182836393 276854632 948024994 979443125 385716940 659992772 57170325 349718485 137634747 580912389 381617712 706261208 801392017 930223572 709742015 844179655 293501374 945695342 464786567 627353024 163392909 996611655 560437482 895332812 877649449 933718736 975009128 993406233 750593942 952972864 390578720 477195996 952164145 966990207 791338175 967808757 841880690 958414552 346965418 582367320 950832318 976245648 474856581 873216776 837076535 977789709 284434339 619779638 270413690 363430290 34845206 888959093 768282676 770061124 99410003 151651669 863886730 947222747 92110054 341116815 518236021 600175923 96186859 508000219 982380332 986356983 552764940 689150101 466136430 800093540 106156037 376921414 292060903 898860031 127566586 613958347 23408355 135438400 366966621 664612789 979922063 984596147 427172668 922745240 129251352 885566558 149449214 270612041 768293733 970423805 235880660 412792115 314302893 789267438 295115374 853772292 421967330 461712230 608762553 617410169 757431483 884493311 297348820 722485321 156723420 174401265 692196046 966580781 209633307 717417746 444122101 640579636 863447523 895648888 121102625 176939904 87014307 925286554 963997876 969550886 699061900 916956825 478065750 940676515 997076187 997850848 545343209 687762071 989088974 997251470 59344367 302712702 776912625 901130386 689518441 892316812 191487976 566933640 670429507 818555902 172335809 493267941 465538333 522132373 750173769 762528809 155715084 846929840 973879560 977664754 922440100 950203121 342375571 750945062 695496707 840141052 929968098 935130030 53745219 252425087 637245809 904506193 114124510 986187404 274805349 489852974 335649058 790711672 931509538 942409099 394700351 552143968 952060203 963769999 716056277 880434137 603536379 621280366 111544477 283070946 430150111 618987511 175711764 340538704 9401214 791457983 626412860 861298634 711790782 920012721 66110533 592662506 9328003 742297941 245714040 944485607 578601099 948304774 369756358 423646232 229261752 633449671 837789706 882799399 165608504 923124719 344529020 467682075 395360279 975590212 527939471 779846026 695718922 919571836 268751226 347079478 906883355 953292391 270348020 641250229 787148771 986763798 769792675 794777018 388419546 808398519 531006879 989173845 709713088 757441331 656527931 789719611 808108784 902494720 515017637 606725141 608094366 836023581 700188226 782400442 624982772 983854716 742527276 773261357 125073370 175860219 850899695 950128536 546090216 775076114 595667817 968181756 770216992 941999426 909062898 993563881 314073972 359827612 573262689 577584305 900640458 982671308 986768844 991815151 31431230 956738818 688941001 736304767 304992938 650032844 451500718 939073514 594718002 700590349 867679163 970681315 673177181 850538896 887341224 903809571 399385891 790525199 785302106 994206212 102031271 644995456 325257085 420470221 804994463 890234117 183448719 264423659 989533744 993520586 437582430 828309411 397279746 739035546 87770785 272463526 945059898 987209691 864157422 967947852 260043241 991814828 162215476 412996122 612672874 885259635 91561633 874099187 988805675 996722053 409555074 537347384 156167471 382574574 30761670 845474082 733850737 735372635 511988308 875740783 342897868 434996197 524703966 786607070 199057073 863074726 525575202 856386012 383867140 705575076 920015782 920727701 780546422 829694299 259858118 467822572 585052200 906969065 998101388 998935594 84155135 620757809 353496233 829980646 705534144 739076153 64975643 482713398 595410446 883865614 370107654 800391893 310083762 394191958 883076959 997415464 292684608 987867727 85379555 293413609 48854231 317886291 842022401 847122459 556703745 803402142 640483541 821562767 800219084 800831692 215308564 727524114 543351051 601810085 123702812 973641361 538240789 696406232 931559062 947333766 576069056 741413820 424544352 433523694 730291954 849159767 118476863 179232815 949745531 960615145 578855156 916517760 834628841 884800989 231110518 489657914 16244197 331226579 664436331 772339348 888792265 951521066 435507479 737855442 355061805 849204336 690818799 952718537 39211724 994281578 664350651 898909860 656106599 885119752 449170709 904140478 645567308 754811748 42909723 800614802 770853595 851039419 839770385 953334756 636117322 640815216 39788082 481474811 836422581 943120594 862174406 946583707 143308397 991381236 169565982 827315129 534537144 736732036 125158850 269352875 652693374 977422334 285746806 591344507 869893865 966670840 689891603 940355917 493862740 659047118 228512887 470647301 894531767 916644741 648601696 872542856 249930710 863744309 248234108 562476282 33693832 210813286 647314357 909571715 811141531 836957233 132602251 755317654 936750333 969708274 739533995 892883018 192781113 713418936 990151689 999214925 972253893 973528977 501076151 530801842 589306718 970018980 523196398 977027631 820667669 834374998 216081434 412985744 244603529 256884222 702411622 896187059 333260985 450554730 546377055 688439992 788060444 931256376 262136285 674221109 514256234 876440518 526241430 768366677 40247478 272585090 644600744 950864853 752617524 792558205 353490771 859346062 147065543 988942541 821290578 864352988 228432151 869387036 918639246 991233760 31583129 239296777 146730009 308873285 181891090 842585834 203563176 464017967 830611133 952579378 967432972 999851778 517935123 616117106 554816256 974770564 102505445 934975784 588888592 750864690 582082270 840108193 699765543 772799737 315771835 726573288 739728161 939850866 31006195 807673163 158405790 754447419 9581748 186241662 558396594 662020163 340271728 532032330 520230461 537439184 667865552 805774069 84993917 622496890 565096326 648004546 529503446 877059871 8193726 784493988 252256328 266472277 470853723 756659658 980991856 985070265 164393395 735162010 40937307 200459364 129673725 406168778 724673741 865590097 909358556 965207048 288163630 300557279 241626260 853730536 345662849 820945535 19910265 520904465 531068301 658863612 381532024 983557613 262469906 964850322 913167428 972372952 960980237 973039019 215903190 673159499 550763961 555515954 514350599 772612371 785706739 843940891 296493249 965718198 450205000 694241066 97109504 998804348 262134805 746331123 648993373 826672594 129157037 773427078 346467500 787840130 48756126 179531724 693408800 877122188 10217824 133255660 43391822 703713825 872897201 965050641 998976976 999693736 52425316 980971314 103495370 649327012 942324803 942844241 246311669 434253332 901823620 939999377 781321838 800911390 576911961 676572521 100757794 993044778 480924046 709849045 602277470 786329841 757425724 922932540 978138962 993008687 458756176 814756558 50556069 223004300 219934676 412093052 135167329 236321885 175871744 555275531 902096599 914974878 187498596 546308173 444630927 565783522 565108579 919064025 866999191 959683971 449756634 843468102 982284991 995284792 328260608 794342268 338904463 933419828 973970767 977815369 338046934 555450836 906585264 927351514 398382051 425424975 160345786 559875095 92492492 548082646 181180162 482865979 212302886 369044403 944351363 984508523 831408151 872816773 223864229 970082559 355917944 362176037 617299178 727396318 896194630 986794269 37882752 690186941 218096403 935086799 138990169 632796680 780475070 864041971 725228391 838316262 602112361 959381703 667632581 776503883 311118851 802948670 700715876 703423284 27091850 477894474 379433785 503680330 174296792 961797506 838606846 859517892 962055581 997220280 125819227 888908578 868466454 887419195 733208366 770418392 818323364 888715821 758470746 998903214 295341973 985042187 919211958 956779110 981434685 986835026 639744462 646611549 319895370 810019879 506787254 846005553 129163615 923773381 832682134 909387288 840822704 931908071 538816825 866164242 967672156 984072395 516361363 852156177 716158133 912543261 891441388 983288652 286332369 607608846 754616723 916173499 423220118 847462658 216447843 407046212 52883470 308851792 94798480 672484527 182709428 297305909 745119861 746359649 650752873 768131906 553081800 733385031 195507944 505034280 964896071 981366654 222702312 712244980 871050218 873878754 766942827 877431846 501136779 932305029 168548614 392240208 866746333 921828311 17205432 682948436 278641797 959995148 304707061 776275604 157892756 281442508 630547675 828555621 102221869 133352616 146034570 954118711 443101379 909453877 322882130 471769706 295098955 593531860 960954706 973050307 267416555 626241407 618821285 998330976 382138525 575596507 409899578 816330710 775073925 983571502 832895819 867216263 227775722 874132658 288856502 973212907 608140903 639648386 927014786 933957040 674831813 702280321 98339934 754392414 960529887 987312240 443213934 567225548 21167657 273388278 755103267 960850191 938524950 949538623 188028256 917916142 280500538 307595945 737192649 809002568 810510713 931619274 400359643 586370689 808156671 871004875 646070712 821547981 933523577 983813373 218423649 700375032 139430829 767678686 809055451 880199412 46991249 483369967 115612361 320789301 608840578 685496605 145201354 777076104 175152616 733841391 258632627 977121047 835064088 964072933 820626786 943665588 797979688 984235824 488155803 745279413 635674086 801054685 869107070 906776682 881402847 891754842 77455181 270810173 483276628 929889736 58651040 467475338 385638506 619381494 115578998 638623839 157120554 697063824 300655423 448513303 613045722 784781976 455573349 716487374 469170676 695299560 419801177 447999525 225345038 487186633 427889263 929570265 820907515 891778522 725292828 927488864 265611037 310801024 571319210 703902736 135820340 817586798 975152155 977407588 28654393 605885983 160159814 983156687 255180416 981149457 824380197 974998290 768428724 793427711 564731968 888973718 613366474 942498523 929400383 953206030 100696341 202199506 980959536 986658679 56302069 768075155 394468434 826146034 831688607 932777373 74516019 592512739 797178970 812887983 443779407 750239344 892636380 967258067 557223653 943692334 103782148 958200375 196098088 381042075 152636671 495601879 132817192 522605694 474657590 645708102 485202910 848216512 134402912 622661690 825669564 841427567 733800815 947154364 888754313 982627921 108207799 349854574 559589196 742900895 784793973 922058996 204493475 882031856 817011439 913748414 446490997 826068933 695532455 928401753 767306455 933414414 476844782 768039104 761479289 834264291 872204440 939857829 925738718 980422342 666247671 997221915 570651572 837473281 103176318 758299900 73865319 618251817 323406537 524718914 953025421 956755290 338548554 728460753 579522402 683606089 828654281 954659645 557621038 964065430 726295741 749333555 434888741 691242725 190149728 655905902 360437042 610327564 922093291 946072951 141558044 270583486 493769388 686863714 211611141 715510713 557836181 564581129 140398443 542781693 42097310 199208516 335760067 941937295 964962539 984400242 582876863 979118065 280105575 580504235 970474856 976995593 731705240 922335333 841641099 981567858 918358655 987958951 922434830 936543080 540928019 938784203 437946414 628127109 931071783 938308331 189793961 855473445 814428219 901520653 19281169 107629154 12022131 524443607 741951022 820183662 831211674 970673596 578363257 899759473 129700712 259537407 50482192 897907059 994519714 994524373 417766937 602720964 781665635 803763733 886267163 923556553 987659714 989160647 879154590 949560201 169227454 420163931 955722458 997000111 508485959 680626977 343300413 421823531 975729336 986779120 460693210 835258761 181887600 221943154 501567418 579053638 514902951 808224129 951459909 953891037 514321397 679656940 298437478 604548440 450389285 922793538 941370535 978253678 288775345 531254956 646900702 882250032 892637022 895140965 301419857 898733252 571977818 964812148 189012247 854611120 964946739 999921111 527240806 886435975 568783124 986653410 481757529 986379344 850850424 926068685 214017741 717751514 740046773 831232102 615903280 825662575 4111470 106731269 27278177 227159824 38014561 319531862 290300589 880139848 563821959 646545379 148745417 377476937 527015346 881295902 772957646 811884481 122688106 972593157 476289132 940592612 982377161 999389539 160097803 828789749 642674025 912094350 930893275 996254527 340577720 363151513 885734391 935248589 61584289 845735089 396189025 837444705 851900031 869962482 971055145 987571013 157033322 950068986 304817308 665237298 949340050 992497100 150624008 410124073 535205278 608579957 735948129 970187250 966314251 968339744 743804096 991174365 322456256 847856063 260804866 574227838 387496398 401742749 661165388 727155903 303030240 885706553 523924866 613459461 974595655 974724432 306132288 630217037 80226584 593699005 4817343 385449915 472277282 794376667 937373761 994283337 14950572 785718269 936529850 995778952 397948617 872379415 938744961 997168535 249611523 338932453 86546450 155107798 875504025 947355798 438074847 472227462 987237753 993323966 630179474 682396299 706579303 805128416 565191114 874880303 162629142 795897410 656024783 738151974 398715172 681408200 337621083 884295384 887247613 934635351 663591212 925600945 718521715 872311507 775849925 867152227 516246245 610978457 613601636 687358209 596833566 978460177 339572598 414769352 239044638 894424723 869304426 929013716 376869589 604900574 753697835 892310398 58053092 416201234 933309424 995839341 912938147 934721853 575252113 607779369 145163689 543245995 918017992 939026396 545690028 626884843 133867014 659025482 241263065 682914922 75746336 898590732 389938008 647470458 806409518 984316213 798786225 940898755 870454139 939518737 556608958 738314451 3736884 464933338 13196972 142111520 330559857 441505240 288043997 613165874 338144383 372178332 428397794 504368215 373054030 923369470 813680658 838027028 812754628 824843261 947438909 997040000 473289610 804615427 838602711 843869850 454785176 656308497 974985872 993170720 950989206 973888462 377804621 993542333 308196444 926658879 700890772 830206428 161758359 889077115 512644075 617697128 324828019 933630194 360253325 613958298 392104635 717740395 446133290 757932341 451149355 856590031 111468722 626620551 45462761 192039551 568460771 771920615 561365868 627249642 389594377 415396831 643805411 703901610 774664451 950753333 578152827 630613962 167998105 986830231 121854849 519846601 653536791 887947434 593596218 714340027 143536468 608390558 145550657 853736771 463705092 986126069 228449044 617134619 201401748 259310704 816960428 900954146 802514370 966060806 540811870 719456848 249322058 720631260 260762948 498782099 133885128 742492521 210708561 427661331 242304627 633482889 943220673 962182516 340827462 814543730 392687725 506974411 838414232 840934664 914364917 957913432 37630250 251258382 491890236 595387112 295488326 625167626 222201999 706052053 339219952 612904140 614871876 857383115 459651142 468736717 237491602 626571890 781320973 963029635 872009291 998503629 905175927 959440088 915536954 974129497 946870044 967894083 572803011 870039120 345220876 826919015 262948247 267215380 875963858 896697953 731991615 961261539 42710960 714950658 595359270 668274309 155566537 860912865 800838323 979970261 396482620 658028692 252849110 789153606 789769086 947788765 463753149 762457677 303630325 414305739 35237964 512894279 944143251 965441604 209780565 593711229 213534469 373772675 218313972 681334563 141353166 495084757 346612645 840068266 982848235 998714845 79714831 137873878 225412708 543844586 380149965 481719143 577316436 721819998 898206105 994237158 271849509 811777976 248496782 817633269 930007864 992739670 24861799 88101170 828159555 872349705 851827425 939975625 257528100 469730692 908699196 962375559 711458466 872263106 501907383 632284877 952399467 983335526 636360114 930114612 259561152 711396162 938207132 944704014 679907869 924888549 124943605 238993841 272546125 729921816 891965911 992023277 653067612 932391398 299644995 866207302 475895794 923695569 905865963 932864824 530313994 686504986 966996855 969640962 881568816 964325599 6398317 302840366 533296647 559064269 548115956 591344888 876528303 912575686 147718748 701511789 592118934 620236107 751874695 875039906 381285787 457674148 357439053 900737754 593759763 787229335 991262759 994368491 138991561 831541506 455546030 595939778 163117305 689559457 861412989 871306186 614960995 985592988 408681103 671382586 750039562 982443870 9606818 322189272 784004841 837941835 921445781 996851481 271630331 931623615 337251262 569969742 33484268 888521418 863873306 927318000 665728880 753049052 103656510 254847564 585089485 625251367 700332091 735025567 398484043 415666891 863867207 868532754 369312250 872567824 914623235 958751320 353689686 465555177 120419624 803292595 199188710 833271672 361087674 439846311 962228038 965595683 33822462 499195018 923185082 972924180 921719790 937437288 38833261 433127603 155602518 329547251 846809142 927752055 753642481 922638183 366233507 957774952 34313170 576386467 327551274 680655669 540929314 554348111 373330311 917355851 620274062 981332190 343341512 603828263 197160250 618821139 4951081 735057129 855243730 970213034 918001130 935901757 814311820 899974624 35987071 316873724 656118208 933762214 460256395 977927514 709413843 782679959 333188145 532050642 516442721 755156202 674628255 716161349 876851677 920505008 38727120 563728025 799606445 902941021 402073839 989744682 782209060 862405510 937363733 988810113 422300539 698228499 96088026 840236526 481929791 618355365 32345308 428046972 836979385 975730178 423068514 961885511 514175058 881592409 128762343 492697540 317785286 855938908 304704095 471764861 105939304 714135723 74907886 167343361 753581624 776156482 208315996 501253202 156873549 827523329 50017222 626710087 349966207 447975963 316066219 374648256 751282057 934202916 800926901 960239441 228687971 739267288 623092854 993490679 46354134 746121551 283288214 977805116 542609839 988639224 760494884 919780373 38758678 893859388 89323059 256128161 977694083 989284826 124784466 168105930 335221903 715905332 818563355 978569186 359969544 658803243 865369065 921488078 662429416 667937576 801168736 846240962 97952904 401451299 251331295 989029090 963098791 965300688 859221916 928256253 766404829 818000331 682615880 929370509 694270519 807013812 280375959 469953174 381630901 905010720 496900617 906020968 545247863 651706487 100559409 587937264 383972416 912189066 363588400 996495355 688227408 978959593 253965166 742527391 540540452 639638985 553989019 832684269 817211088 848183308 81570615 119681689 745345760 995868285 923666624 971954961 559423087 897643297 164381834 726128054 461646490 586941792 469788068 864908080 87836520 712926951 871921130 942626444 725122576 826506530 26860054 277862924 281965974 438610421 385324048 520241723 144428026 453657462 880956933 906217915 379755446 791133235 732438215 832551483 415911454 840873635 529229106 624575606 895169815 947050041 245834539 546258620 277564802 950126864 147668649 821612269 216848848 432529860 858392372 969483044 78517768 271328378 328253434 608340122 676564419 910604846 312803594 686363648 970734584 999958377 450031440 790944207 436993646 476026719 858702570 889698504 354149830 877897774 825052682 855732079 799441995 972676551 654672802 782182602 734563181 846671881 280638791 979734546 339544663 553638549 904915195 922399610 38673468 444599478 790706254 936852223 13976113 353571759 700968829 949816217 158612616 802521528 278173553 352676596 647505793 821936582 803257128 892496110 861384629 985382039 987000299 996243480 150462140 571971000 479092640 740435520 796282536 910038092 917087819 926951125 626455435 685151375 242606333 329308887 146470802 283970958 331213547 538940086 934046661 966365990 499120320 747135419 962941732 994358674 387992981 408322583 906390716 963174202 107072787 402542767 935387683 954074915 583813853 871052042 139046680 751545274 60677052 700507402 687375674 879750233 960754441 975590114 907895637 988482281 306053186 470472491 954847534 978779187 376445287 800671403 324731737 637265521 994780983 996916759 397099519 615537604 712750674 811383502 4793343 724217857 636634542 699797086 382348061 687105259 501407117 666567434 624959260 638843405 190883420 586586254 26472395 304067302 505405940 549625119 987967689 996633246 555179524 624278342 73382720 353765903 853459444 892892562 281438679 918500945 935139704 965664413 718824512 726266190 548062047 898339400 652888986 719272350 710444499 792910110 733540781 910168819 411681441 575393528 265170427 288161528 564315937 872697916 362455923 683902909 975645525 986936283 981165471 990097675 23115466 260252570 445819101 672180188 642684507 938207796 3377810 174359254 917602156 973051084 810623254 876767181 176455231 798888397 553028723 852667215 164030816 760800934 200064071 740303257 182014975 809342508 766824459 942870499 978251684 990477806 531044075 646018164 286632756 705886534 807062856 896490332 86815907 495692367 741273237 782738343 491691146 499748834 42477894 205164850 875869942 918176463 852209807 920546436 558663818 767654267 140464068 678478028 791440491 985143762 353728521 987120109 7074081 267934556 149360865 421028266 876045301 988794964 708371712 746662575 667673179 768452756 251197373 972392244 484434670 521032760 844382494 876530209 10011830 969606259 10587883 188278205 59417118 550724164 977343222 984666809 47538229 851805835 663216538 700419639 322780082 586195131 510007776 710744991 851319055 924317725 789185332 939323676 374033054 441918464 466154812 661476116 324621719 328275630 221194544 341673320 796429970 932058951 141802187 343301617 224634271 492621769 578219748 980828180 522269218 637930005 764851238 802649737 917024437 945790656 570299543 853027999 199608013 845324208 851834074 925616326 367323993 768223879 415138407 823780135 929435068 988646423 244224876 577714033 257586191 693865670 51402098 422782208 116943042 398430507 444619969 667202934 241864327 611043194 607470033 886381893 882114408 902084259 366126531 897214431 532795335 751862262 30567829 911194006 676193850 805351982 212550297 369945562 265571388 392950760 174505084 920570212 699284012 874543364 360370117 626993043 569072788 824459059 401490509 748756003 392801325 818056424 261086350 368770874 367957231 727749889 926860714 961615806 544452350 665860266 476532378 884757617 36541510 356914708 411285153 552345102 343914659 739827805 221679504 515866422 505126425 888643268 864734323 988657059 722252402 738679582 569423370 728491710 37088343 269604745 206651778 513516448 208721407 775732497 532459586 579323221 679504616 951116536 537325193 788016359 965793578 990119722 6546333 636326406 829548091 903509935 655816094 906601049 751014908 905470320 138504261 358475856 847228652 924642182 965074342 997107265 737200428 960180123 644479892 989507165 148886486 751247172 62905900 314492036 292573381 812130454 162088106 833304400 648836499 690119388 982499451 992890959 239598939 588527526 140805931 784368644 657596966 802520708 756960435 848854938 483686042 931683596 774020848 813393247 808291478 900868351 833122964 960859753 289586729 464508815 411334214 698848512 699005167 766027788 65221428 355511404 727442402 988358346 525922968 635723205 132357528 724512490 407772526 661754229 83009056 458463544 629633531 756826135 59435909 319453269 876178185 893465770 580487126 904549028 633747456 975190148 460287083 833452367 449495258 524540860 768345672 958984591 68080816 224527463 573940585 705079628 673329459 708766643 925525435 977050694 628478285 780148267 62110662 450858399 107950422 212864368 673259947 732647970 103316493 406177064 633993356 938049132 58687077 706582850 675632176 842212590 5832850 498946477 944889187 998367183 768845934 943370765 327431911 686764752 54666636 188059058 948321203 991272200 41652737 202650886 432987439 790276336 750067950 786540818 493353384 641657891 804265756 902241026 711608054 983354889 718941579 819761719 369374438 704307415 427508982 467086350 873583530 963179212 440119326 644691681 971606656 977803796 715680905 950834064 541825934 642621457 490460003 764514711 317553188 567468057 108267332 332712612 385011693 485665934 388128922 796817654 487625240 874883359 874705028 911976151 578499403 988802054 453261600 767532273 223777720 470700799 175708685 641404536 14694219 230816707 487539646 499170154 601851864 765292261 529663663 692309002 416689943 948953430 920839146 926307152 411798690 495828484 368201952 392385499 469655927 636284101 557678457 770151508 326606731 759685704 227385094 590517033 332574459 529841719 306324781 357536063 513284220 575148659 362826680 827592371 863343986 904246019 58445883 451594164 458582306 573512326 764748321 838384671 523730442 668382023 581329128 817057127 335863166 551171074 734437848 790331912 823659355 880879768 585025809 866594123 803512967 932772058 812725975 931101152 889165065 967157759 649206482 756380100 425597218 823529637 717538045 805439091 84031195 328931814 801724002 980449650 583258703 703912043 549336103 557472277 876931960 966235431 593400490 975755623 801997267 964080404 918495649 971056222 964273310 975934127 187618872 629487740 980045364 997347373 83199219 236949201 135933623 867129930 703442681 733775769 350511933 753514763 764020361 914107975 152487465 338514281 266837791 308156696 792569386 919199400 11219282 442851185 871583585 976792844 786832733 861593841 178271724 183096787 527349332 865242254 213565353 559257275 851968855 925914332 146664624 699489397 638697357 971988946 191475640 704715355 865370207 947959464 930039641 931582187 304966467 828830609 26882176 991113717 193955862 892058827 889041778 910830894 815944619 892143513 594311000 625473663 52586273 908212808 112392992 343156015 378252763 472675702 856654188 929732372 405798714 666545852 873985577 888544956 799416703 893654566 451766286 962020817 977046547 992335516 709242626 792684930 260215212 644918324 722398949 934278052 674820700 842492750 505123367 976452027 981627568 987467253 224923304 779496182 234434941 269237265 971433449 988233550 316255268 535317811 593208841 595172487 111351245 780276342 22274104 925361212 195598022 888019604 225898493 400264274 267450780 866808295 883501168 965446749 670696413 886098812 811970213 985288968 383206656 790651969 399321406 470541756 497531370 880540595 136631963 551639015 797940859 901403379 724095074 829025674 240502215 937511264 321476363 714138963 157044352 829056615 419025928 611454198 717812705 936783165 318442653 600412625 143485698 205579084 561154177 564570652 850137117 918314213 779070405 788262457 276027943 685564647 857239116 952150767 597548842 928610220 489209730 806744882 376432353 979358796 780187921 797606053 816242283 898848835 877048564 947760953 14339285 61064351 641147246 945472344 457500700 657262261 145418384 165376311 653115218 965497823 801951355 891302465 222110896 481472661 626415977 741626585 934701778 948468310 483794266 484896195 408939097 495578728 769434250 909151290 726575525 817809890 565556939 872561262 73357405 611496128 496549963 560994714 875398556 961275857 647888816 651519515 415617044 453166436 69840715 145604299 427119298 804303020 937577375 948002158 709788668 916130565 827499585 963238479 227598013 885782378 471802134 832255975 865497439 996642265 995496839 996146487 990295851 991436803 316537420 845835930 392882638 544643830 148487340 378457189 671618344 875183359 774755209 974057628 493535574 987915133 468946353 910506353 785126892 888576875 150669550 737560863 147988379 442072746 725048041 792093914 844378720 937091009 932826172 941227092 328707185 790950629 263371099 887565843 999990496 999997663 97650144 651858684 229867152 826729274 787157446 894207194 403112724 491926449 8834416 697688865 334193031 753378481 596131903 692915570 615780701 826314081 477441213 799430789 656294083 863240004 242242113 953397483 591105443 958859057 424694134 547720065 517280618 876570218 977626218 981828384 492943095 532984267 247876711 270912886 768802792 866877671 718222509 935986133 278927429 656757309 192296527 516826267 303568444 741972041 843454688 860203889 492307125 606255720 601147892 603291998 315924430 502281283 99704952 898845731 83401622 659910627 723298275 963172974 740430251 933324417 979746872 990564066 342293868 816657509 912069841 983152009 721045158 814608247 211939841 906116262 621495411 748940845 591530633 841226330 2297534 360747093 21569180 879963874 943904688 995683536 986801099 988691115 135272649 145265968 774024965 901292890 307505272 697191728 363666324 858817713 373192238 795669954 944370116 955276051 356165920 695503893 892283812 995234658 646063456 960281369 409723673 745788078 478053565 702570471 95476317 735510832 365772871 957127839 823851814 835734842 746323688 861984377 23558262 679765623 76270019 318746470 694017355 768563381 420131985 954249305 695727228 795366193 248957003 879015138 320747064 673392855 123447843 234718461 129559332 235724817 577035723 828804937 421830399 718588118 201117414 733514177 639118565 937847780 804748133 886131509 321620228 582916629 487370391 654907737 440412049 688052936 81300013 146169008 516024166 907961052 155491352 368815916 463493633 855109578 120143774 577634148 142688199 813466650 323623128 872884625 763706721 786410315 48776703 61692516 223377428 378836138 287915381 971990206 58393601 615113901 178835222 374489076 176434083 508465649 311341580 509844418 631541270 933442337 473113199 734283101 551273735 642017208 848885397 995648499 308335230 921301098 280390651 475713488 370024722 737785741 557787970 584873128 618495983 772145017 886132603 996229747 229412943 845860834 749482175 951220284 503802638 842153271 557340793 698127681 169578601 913773519 862698475 988071051 869169751 969134397 722545672 982548165 507272557 750913673 430773754 478295080 335450159 479131245 2639720 929279461 387928334 621220827 611288100 766797017 458354002 927822531 300549925 434004754 629909373 753778124 32405790 275359531 773216325 807459343 876959494 920712882 66003056 521650056 120152650 125507898 29046428 616936408 676917410 680804901 348320095 990542116 521051118 801878948 749878889 869762680 603349751 683103441 809879710 859266974 566550987 789236446 810266578 887957419 916223223 992372077 275089852 575161465 559646685 669701665 705474266 993297272 411166979 863492173 535655741 761148198 238683782 921388881 928733040 982041363 49295035 394138661 164308020 624848766 133062802 731525818 282248986 987827471 75564927 393438343 770531056 880733878 545857821 805493203 302285880 382497017 91478224 259800235 478619650 504263795 98849602 203593000 294790139 908655173 794929523 870799098 687245705 725931364 21881123 725126485 73425743 240694730 769560160 957632822 1349273 772345073 623736859 710880366 932790917 950706579 750547181 983763322 593280849 945171099 174206383 596042312 338061943 844441913 632616162 794229715 252137319 729750816 896517765 949791266 677357053 956749421 651512150 774416276 115160086 736673350 373143708 883174623 569889326 669872865 765279236 817334768 238538892 927782656 968382886 987864397 483493978 836370952 893177414 980602516 282787303 913866225 898212906 971377454 577258852 986925643 748450579 838765154 448886381 885881488 156827202 762093009 601301791 941381249 32406448 609993657 343717847 862933835 598370578 627168778 6540853 245020424 819988938 862545448 770232586 965673488 30212056 255482165 476117732 979323449 413332716 750442385 581416462 735683392 466571622 645587519 566661032 627033887 472775970 707274925 212183108 500330316 850080724 888778403 302315485 968844054 571015919 621841040 89032412 848962814 988612109 997657322 569528614 910911388 270517585 630585279 5948523 833487837 370978034 704839527 129187332 564604579 42881921 822976344 946369065 989598534 179267142 781997133 467299412 837798907 370245708 381350056 431278194 529076540 92855852 535022310 469925557 661632733 609413294 982841725 657971198 851773444 521777359 898829471 476246906 539543194 852203674 947712970 572917991 672933843 2957355 728517136 402209363 939529301 52922980 331507888 439409414 628265629 710002913 921672681 682686678 686955204 219329762 364218133 363358878 833491524 436985264 990330024 554424549 799259299 627596908 829159491 235198396 425326670 735582726 776298234 424952396 977608958 561002821 629965063 426684939 707247873 537353225 817797990 886809408 972719255 182806867 188226234 404013600 724529226 588136473 835413665 386624832 764736329 930330376 978505577 139951797 911654047 944121671 985945220 753722124 756909972 974568680 993277068 778272164 787556220 203795980 428929317 644165517 745187296 158788624 242959998 869031653 920556358 4160736 965148063 693425061 951139119 738087241 820464939 113360364 888529313 424404808 563320724 469060937 819851439 580294995 939027417 327320956 588410428 672240353 965653556 636442729 850773682 276640131 317726371 166088752 340348951 374484657 738308651 900460140 911030328 665061328 971948632 908714560 966992038 729059921 967589767 137308792 755649687 101995785 264339142 757326478 995201184 178903523 551027975 218314554 712374961 540007733 903402709 215494210 885582729 641888841 670219151 6368495 144539683 684554786 969212934 18830617 768698340 578895007 882099079 43122154 627660706 600217582 734033754 108160042 859921400 954538749 964185807 908101295 973604696 773910315 901641286 935183963 937547871 810162408 954266301 381031133 649219143 945251632 990257597 314858680 590353278 344770961 998909373 832474244 837585015 397770158 647073009 541552929 932641235 44534109 625550881 112611826 843572610 365258452 729521866 972717841 979445997 257301566 563714906 961071258 999909983 65143275 281115748 148263971 693774342 369161796 570393783 326923620 886417122 995191821 999865586 122666076 952544215 959003052 997383825 713034102 759518538 650356071 777408565 723188711 844443675 95106178 208650044 871846214 900851570 742889310 910674151 524945211 883134188 654900932 835502599 214026771 454988811 692140247 781969618 289150090 598188212 903150930 976759625 55190684 689905355 575303820 976382269 945489781 962531022 75970790 813222789 465167627 513998295 575900145 824647131 576343746 760415340 439972075 871318182 981104462 987589698 405868079 967842329 190946251 294960297 37837462 823429662 549055185 838458525 637894615 902220972 720991736 966821826 600909372 754416262 301266114 755642875 308382426 715177447 73512884 589270938 203785855 659079261 761793740 831180393 262674748 401273478 164739600 690039521 187861780 226350461 859137514 965822552 352071275 397373216 952212339 967791283 858219250 967899468 313150662 985878972 257530404 864377887 699923226 760209708 525457969 816412015 364327057 990088633 747716341 925536744 916006723 974555204 665247410 938925912 997390058 997874686 927241169 989608665 896719906 987749183 94342834 346694526 439643993 880838728 276662439 431031848 103670774 451699509 418471187 626264055 673303708 921987871 208261793 959023046 879839357 896733070 34863141 54866398 236590014 505174390 15908035 434545462 316929250 961192121 592514228 889373408 38369738 254428830 716464193 729264261 235593845 653614590 842395496 926508954 429555223 706171543 303892204 424027467 944882981 992045755 355853763 689986288 91145669 207802120 950298783 975199909 698338972 724164716 352855819 418252112 902901602 927058293 565044935 832019851 27300771 240547212 129705018 193254127 993464215 997203619 321197690 873167796 658326754 998727721 105464256 571267315 473573950 560435272 507581282 520926910 774671162 913014364 246902048 255878968 956283897 972107294 366125643 523545424 406863228 972381311 98548944 602450430 652943066 903891133 504985852 644534813 289280426 553000012 713256181 752015240 173928148 312998273 689618431 813862322 246577700 655523972 22229968 498220459 56020257 688030361 423485908 493671502 24042172 131980079 203058214 762546780 298002241 670418280 171733630 649250675 484595978 491827585 257744430 673381216 969367992 975988031 700832356 737361678 580569943 819097023 859465445 900709834 442719854 547750345 536593398 631487802 486299227 597113956 193002376 919143817 626150214 794073698 236431554 315405004 513286879 966277970 572725043 622970645 551643344 930799497 561791161 914700799 920763209 946287132 889243703 940300833 654830510 664941689 967766320 969810606 333438836 959382564 325999091 625889848 83796821 385981909 765670778 851710830 762968926 820740659 370289111 575469666 616681072 937171114 454141335 608813908 672351505 987591843 973913988 990466928 29526082 920236259 887744736 928604629 458937301 749925874 17062887 765118080 310779446 850956084 27980530 82841184 928238110 940755207 933101437 945494318 830322108 861332258 142474687 290942666 549321080 827364982 441001696 926620374 863927870 913174704 589553447 856390963 361622955 594696324 719844677 812985417 260261336 585721217 385594059 516201252 468210837 864040806 204078634 880309251 78931269 270376445 487546434 716716922 313794706 389341372 766059704 787798539 919319192 950909477 544485417 662759465 375745773 932090427 75542254 754714583 985113519 990632346 697534285 910704827 567555372 945442998 98762921 849073854 981546463 998764414 504892010 792295799 120257855 775316833 507424139 851729453 885567293 923646018 743385334 886814624 308304419 489089060 844096851 952839482 569867521 664937189 995755680 999781668 582296875 596096909 861996416 892603152 831071689 854539043 231095343 249789737 71360650 835332314 11916940 594518816 382608933 567551181 769236117 789595243 296455392 738544894 650071629 950012451 332790406 749107694 121684605 610927959 286072641 413837834 431676415 487321185 541751547 551127961 608938956 741224364 616608988 853340486 429504424 965987999 264839971 540757660 92849921 735822612 285790270 842891242 390066919 475761636 28721327 395972580 421274571 870582787 932216674 980238651 59655239 621314502 943835348 963100878 958171554 980227006 463840500 992299134 793968897 852994410 124000688 695466194 314473814 353047477 51923578 413937834 251536349 737315097 45968022 569378679 571279672 937320362 112096280 688640721 896755083 949699236 882175137 902601840 881712081 964118583 487518606 672535031 580594644 981880355 401853789 744528398 113422544 955200374 722931836 877632110 188269314 457920455 518055779 981276092 722626119 775290925 390904009 460751430 829930040 968381472 430849907 593800022 366997874 830246762 569236185 883090869 697308402 937965459 97959987 398044263 506338627 764662094 592164244 654095276 3192944 612481366 35271620 224658772 878247139 909154525 302402101 365714717 604185952 940303685 94790488 500756519 922961545 939321748 799483992 856108712 30514036 949400206 385164144 996433075 317514574 389298353 435195419 770941287 382056629 584116719 688945581 719916854 54748899 155095808 890993491 905597475 356873389 432044052 507772066 906798108 549192620 589748906 966715065 982017488 928793566 965739969 702951687 913969706 974280756 984790074 330848414 501423107 672763446 915882203 534391240 703483081 377756872 937865802 382203365 811977869 451325660 733922058 787611917 876789272 931269137 954450623 873177666 978859019 197362690 289025469 328148787 608222061 458253263 851540123 337515031 576560351 613137758 968901147 536029607 813161515 832765036 970811714 101458103 436282298 221074192 237430303 834752331 940305013 443623497 615507740 331548446 494640991 56312050 490279704 117639408 347568458 137601177 760338644 620603593 828003698 372548036 396934144 430740591 967861899 751633511 900867475 521707097 887661111 281893560 974134712 110732606 640569004 172314239 593780078 789212874 951571256 413215537 893765918 750456946 872634535 326948561 644677376 110391031 301398871 367898006 425120493 101764136 555832034 875366916 937414895 886041223 896393099 978096269 981375958 611926012 785862677 555352774 662121162 748739966 864596753 401004216 642767654 612980519 932352505 641759232 824224954 952947015 971704600 136521565 313306101 995095080 997334267 806068632 936717082 833691346 871595390 490308073 606301094 471409414 881578135 732984979 846462585 408735726 696734319 658963876 956723153 646761135 969577526 369748867 570022668 340164708 856742460 508353577 880910360 54565605 260495619 342167515 417365086 192302768 656742271 345618217 989437665 340178135 931036947 415596023 925595261 954883192 999720413 336913308 497144001 478232491 674199940 424808398 756104067 743462976 944143795 488189526 571053258 512230927 961800182 636876774 813490774 901619648 960364164 180452842 784236906 140762888 639248293 128571484 242398522 708630041 992957552 82987936 950731137 19727335 819669694 254484723 959989129 711559136 729762702 736567468 810605704 623416780 902795678 316841313 904678610 327578438 790410623 858428010 919805042 305861318 903498735 99280303 694556903 984183691 991927100 599981753 772653361 432160367 918034734 415742676 782560693 943471554 944106101 476545134 902747108 236833596 287633245 643429929 660051757 531478321 653725546 928566026 970145343 153057471 989051727 376299477 906624225 723938289 741326580 770363802 789643672 551449623 833854704 739567899 750930750 485634805 777083652 560160625 809589983 874363102 988195065 223257575 878486701 996643011 997952339 224164057 697572794 655040563 682855560 326757134 457209606 317297544 908165801 837457563 920864940 220295246 221506975 5012332 359627241 130756119 991396325 438802788 952024001 703990429 874109336 508541262 853766225 752996342 770049911 388736353 944796727 593605683 691182435 426298442 753000190 736800924 920224442 944665876 966772924 817862514 958895510 71597777 383139303 160529384 617898724 77902895 363775479 252817245 486843447 838184457 919268236 141092795 615813406 852770354 854649714 158941136 293666518 840370485 957477229 93468876 493778468 886033098 954877179 974060368 995931737 602393790 953358083 928501773 996368969 612904620 849704817 110624660 858743861 167632931 232147112 479168529 708053755 635759251 997826583 361853311 795652297 780287787 793496501 637303468 929722645 382622654 511184974 90719586 950774338 864516464 966386615 807752294 860973861 981969892 993158980 458973443 664507709 543525095 976139858 563246274 563569757 962632517 982421269 495897523 723171135 769122238 818010015 861359618 931052935 136959914 704157482 224471570 383260280 598619492 804930326 597286378 907053620 220579785 723395000 957559764 970436875 62726579 774786727 176394262 613956535 220334023 840325122 161635391 481175682 964287004 975494000 514999978 972133721 410005698 879793062 783755088 889983045 37340972 642099043 607218532 763373462 727430528 816995272 202537664 700673806 609266840 645513961 758095960 782999778 52956023 969948430 78706946 133044584 205380389 968332104 897527153 975045136 986323536 998620154 653540705 923667380 296189477 703551670 188524934 892304782 613726086 790221585 841061795 944798230 622550137 767121558 43300007 509142347 871753563 885078713 195934975 809705829 913171496 975205166 362703211 757741652 336136854 875084033 802821149 894107308 993157439 993459087 593901909 733161033 677397785 726148467 560110511 850155552 153380535 728062001 438388375 685252038 618371063 821101418 913797719 960855504 532273024 536297551 808560609 998717501 880981842 944572951 435860980 570487949 286142218 870254187 160855892 858890919 357104105 903898312 371404094 513681559 660174584 809164172 559748859 680539230 698453630 870379360 559688515 821744012 214615876 388260412 441825497 670344144 95765440 258141417 215106434 957388135 439688201 960727551 737838875 742630334 232269354 834830345 459604997 625229540 651845034 882625818 949540678 958250232 928407890 933075744 411924344 897390015 176591533 572358957 625933118 788005312 684853574 803526082 513596083 709144235 507975330 535314951 537102547 603000947 525080672 750151948 628727842 783708911 189147120 379771311 687347585 694348272 289804230 471760167 429504154 970589602 569422954 791259141 989200125 998078466 280442969 302641491 740570662 845654421 824206536 991445916 702298264 790332358 48075729 664348240 822788003 893148088 48132709 375873320 745542125 990197176 269539381 361069812 101515559 677239468 71169459 167708562 173504467 193856904 916347567 989405801 634185471 746658735 594607476 982136688 708143136 723268365 139741136 895212234 487432753 721258509 225540889 502520067 5794485 583188143 372043826 604302703 317241246 748885734 358764251 367936757 578316799 730964934 767621108 833278597 913862492 962508448 112440534 355481200 670945140 847529847 677924495 827414486 149485444 883297844 317256223 999264673 975558553 987536152 830664814 834003291 405315743 853951194 896441567 987856003 682187541 732409736 408724025 416552247 39317226 188013392 788956451 867168567 827008334 902433496 55190057 244309263 34391369 676480639 906605929 950823854 864228214 954025059 788989969 993853878 735159428 778141889 920254346 935244668 879341455 937353966 687315284 903708087 10776812 265074255 292155348 555485127 481670470 839173656 670736887 679912466 363895208 951213678 829038130 859883271 43953336 46503200 984528924 997804732 867212613 968725039 864724381 943298007 357609221 622939556 304745988 978065985 215734342 513842497 417914806 670475571 240649613 992815249 426824361 697403623 495308774 935033622 413226604 730552504 158616714 431710975 560827973 950357096 518889663 683137668 481571913 832718191 891263087 950894296 113615827 680119871 712942531 907153463 867416457 952898895 67692607 713868626 558966447 590739926 722340340 837399302 222201364 997508570 992387127 992823376 704518817 935677662 224754717 933875201 828862364 978189447 647085246 859117438 147821977 543086756 909875129 937453353 437999806 748503801 360078887 775937568 539364383 582859417 186696344 860559706 275382460 934155397 332696614 374722995 820323088 911981817 820033863 940791162 676224673 846198863 547711391 870034841 721009764 825702766 156154442 729983055 790102827 858926712 210812408 938892403 939411232 959985240 979030011 993021687 281677102 562286701 765740005 831583268 805175985 921222352 30694344 988944901 531451653 570541461 115832779 141627464 221172058 969196464 387587418 462967192 710905114 931760232 217611777 841449546 791691030 987837532 458213987 605283885 460272371 770946588 838940977 856976908 659313776 975514950 844434642 846257647 380239490 606089337 340224265 771639249 567065696 645887504 662284224 857904979 254105015 500395847 395656155 814754382 765930644 862760190 167317661 564250560 101198369 594631318 345422681 845707668 650667170 844525888 591989509 967869084 121629048 353095455 687945669 753213265 46233638 728143948 374502338 863248074 407925587 983195913 619562229 775109063 295764593 623130434 753104276 876681272 61358793 784704920 784047078 896533528 433098158 779500465 438298810 542700848 997317739 998875951 815617861 905866365 157021326 582038415 949765679 981935593 538774862 783235555 687748713 993421673 137805761 174461279 98508810 690526288 514222438 915114753 49589500 910625537 580528810 929689947 946658735 954308721 50542863 412341802 775043585 959909040 929257207 935958192 678449050 996442981 397727559 792972722 834703624 879493511 839671701 847498366 894352962 960066281 136460161 351688612 564124988 957113321 793972210 970631511 554028723 744255738 912200944 988178082 797727874 812838894 497667607 644938148 929994475 960959523 361204463 872993824 570290825 593583693 671943462 958547524 809646624 843024509 856075063 932928595 352646520 416664098 245652805 938342587 476260460 927737553 538383228 612024030 130379814 907713883 351649120 939642672 6314600 169889722 319925082 988612484 258091461 743232493 468406427 824994804 265831255 321767986 564091338 971455825 133680632 346177249 231076250 791493582 346965513 557704376 125299257 396975512 926243850 981213680 848678580 962610122 741250346 908221080 503690679 814861131 340857175 388202923 280711446 852819836 746812332 999677748 315941115 788039785 105281160 876546892 222560577 632739573 738984029 940284422 868716670 983042655 109144538 709256892 53633734 396736373 984794950 995823895 872851751 957476121 154928176 284059307 156316857 215988277 148422604 540123070 540712971 897840095 957574704 973000011 94445135 884535404 229242390 771295259 139662292 714830288 202281937 497690848 864387016 954451675 666183232 913701414 455142476 914925251 360953654 870223748 834356272 846843342 48901384 929479199 437081260 514503102 654039323 860827636 887462259 916682985 17351204 505156506 649539819 845684231 516699930 758273229 723765732 803190901 182176525 670668267 451438146 965180875 860300584 938962782 877326158 915838854 188897657 888785841 545723016 615814440 483207308 700508684 501683850 909244411 222829111 839731441 785581501 845502591 602643461 626546085 659991518 872852461 157912457 675343450 883927950 928723818 834475591 864621264 620162037 751982757 616125650 820465531 334412030 767848377 350575908 377533436 873101978 919151150 156461173 553422536 124201657 279426185 479646937 584246267 381420449 947667581 738055639 924391889 935973011 962302411 297593764 345810206 377684068 618470682 109009235 181415330 758770783 860185944 742723786 876576011 649150122 980274443 613080074 705760774 268318011 879719716 440441784 582303229 548743596 857022897 784473645 826621909 413143802 624867911 40311583 743418482 108613358 621182794 300434885 347135304 846376921 895801583 785650881 830429658 981864830 985023508 978746101 986823581 894841847 927864083 838882280 966065230 925414077 951060633 691192091 880096528 8903359 608944269 720046663 912287220 778815101 938422063 927134856 935036507 105493201 763582938 818233533 972530147 873344996 898593728 779346170 822215170 900377810 976404984 766552586 939975670 125554313 851981860 120826907 694098954 672848310 960890693 20303257 304468781 764412190 972058974 438008360 820611646 706602812 762900743 551152037 918106368 67684483 907560994 64622060 794725285 917915975 958521348 920836021 961137678 485933936 920336386 122077860 804242195 378282195 623203332 92636574 139636700 509652539 513331071 388588339 523944151 785191957 844253731 736700191 818730985 671899866 715307294 358586380 779080004 829320957 869942000 681977087 759872260 991316805 999252823 720194498 782399866 356152975 914932363 498728868 676662619 151151312 865029559 228406115 525703390 682275333 904338622 837915139 917396512 217131586 491354442 915190392 941942429 463740046 832740309 897190050 901560927 797369186 972615187 388004425 724259260 355617059 933097178 905668263 927843752 402596837 903281275 591334507 598593632 597553798 965576404 892758709 904538741 58053833 205909501 464573635 643405344 695419970 774362825 868555542 916442469 359845641 546489863 563264296 732415099 950378241 979221937 123880817 928966115 653818918 892364272 510876411 545596556 526301145 688897616 809745796 956098259 940564079 941397741 139095354 564415179 25811906 325564377 600267002 629589161 248272379 386179762 417408422 475631730 290363242 452957140 952537006 973391368 612739333 744731380 792833549 954064327 766543884 814813028 386481340 857517675 905851703 953563701 225372237 853857287 740898834 762573771 417774283 968373243 949088193 957682355 630253199 972713745 775161621 941087144 34677473 516304247 56170690 547645463 479339062 558203784 685668637 890161702 337407349 768337402 131171212 591479769 742505832 998078809 523351086 642842929 317349424 917539845 676422818 695317664 723582720 835739333 778788211 939895171 996226650 997755616 345101340 848792335 234043744 894290312 353190209 434630953 458525060 975017496 134723620 698862289 516962208 930089026 949323287 989554141 24168957 720931490 913726276 952326971 29441991 511858632 133358125 473082091 924527646 994665094 242368168 935453762 626139384 680351910 537944634 861285115 458680903 904225377 398985644 561739323 553120435 966232058 188012111 876981432 33400321 274896099 855759440 997424093 21268644 890924227 104209932 579108991 46104251 564974343 348566500 427359991 358999327 376901862 193243226 433852677 663748092 973100102 863355162 882967723 106618659 606065172 270571872 272233274 564470122 601171654 163770381 632882393 903829081 929317312 591693828 786750304 473918159 628011284 114515068 864114779 834334547 957814169 157220273 236303842 432027610 599366659 379142601 852178448 913172726 935771666 190354387 772657824 931469725 962498247 581864690 861206267 993917456 996114171 117854630 656432220 278490366 997590943 403836845 640588988 21548609 95408295 93308250 471809482 189384442 788968565 408175345 993344638 667238964 981521962 796515213 894226758 679907848 930501041 904258715 952634224 617479076 823370546 883316495 934647023 420916435 425882603 578370740 921887151 781068068 987540785 237478092 795451237 724648846 809135897 874227142 910784442 793500153 957987263 248573707 675728297 501298789 576659428 115184568 292219011 135211844 676956508 615190754 648764930 641302127 899180556 936649656 944910128 369946291 499849174 337321065 740007253 188131359 835075836 646015416 922299539 69098202 901907969 603230072 773546480 629782900 674440755 317727573 681216382 313358118 537756023 208300968 366895806 935941018 990528137 854532422 936513600 241462552 898297908 155777870 571551232 11860713 343770493 632751352 856852090 67070602 165204145 328329307 608581800 829631993 860686760 29955316 686080437 514951806 634809697 373094364 823461085 732258381 851487312 267003554 512791123 904030722 914026088 106313513 267887633 670796190 823137348 99425996 627448150 744622215 835623815 978972439 992191243 75225274 955972194 239689366 642925548 858549823 950241033 77214785 511311820 150112112 255844295 759698419 881222036 355440298 517120091 631465182 918554479 638107045 847644332 998167723 999086336 385232168 981088673 824933453 888253513 603487127 969892098 105013671 217552391 194257236 679588312 577586115 887136050 720128298 975611762 665908765 780211486 127429595 325056655 767530936 875463130 86711727 782293048 817657759 905294394 286447868 428999695 634719309 854101111 53113272 498754062 21895614 967716024 320441045 617800372 881305940 936122457 148113507 319154096 393090669 911174098 941239632 964488332 700814694 827575350 341398587 354701765 699169132 999531005 172980365 897145861 622132985 736829308 996798212 996945066 877141272 904852955 423111219 473744633 654508314 694312542 392417318 785644188 729949455 958105125 852640743 906973776 952971031 959376526 663419526 965508924 500685706 953834111 979471485 995063141 34745355 146019838 440644710 847700484 513182188 680035732 781086161 925829765 213836180 751793660 287502184 638371985 445052655 648999694 841277838 867867674 974045411 984006033 111175666 215880251 162491663 495130772 339954062 798990660 598499201 937369873 353317532 747387907 952551808 984818187 736997752 833729755 156430495 611422966 369039353 922920042 705477917 753364668 712711847 764559396 319785841 460911522 241500966 685184178 183589282 705376840 589018116 812943715 859818172 937682682 184533133 735247251 660776933 685001561 285753450 841514959 684287663 763902829 358363521 828172571 127272468 436521718 60986574 315489971 797194903 865936468 606850323 764319414 791986087 811880804 230061600 648078150 338848614 525257859 359933585 715537141 954317460 957741038 174803800 727140217 941669751 945346140 576734989 593743306 503584227 581186510 184101885 865377663 203095988 705308884 14680521 418475991 10957777 796622086 434385604 924798484 550321801 732644430 232647230 348515975 357752266 757099273 444327443 683916386 109543102 894706901 847764938 976030794 698278583 847949811 719649256 975783221 460618997 781515594 248483396 462955470 634265440 930993171 637646140 913876467 345561509 851165082 303164207 795894868 349099069 795687777 23708581 743625026 741606313 949402920 281832214 581158584 791903718 976822555 220956859 344295739 570355493 907098150 700304447 713457801 837020212 994780494 488077307 563231525 735150468 892287274 959912160 965235932 480609058 804169854 937498113 989711260 120573696 665458762 369263772 557326245 522999986 680594851 144655591 782772132 794993736 875515894 436351537 915475792 545731776 822299278 321679679 425587289 352102629 764588166 809340194 913708563 366616368 955229152 704109431 965560231 873577986 909172599 94844386 894264240 427925949 707416046 357007166 861686846 993681909 998579019 712915308 755063543 622718284 841975361 600036279 834005588 503445091 966041059 742473302 978014910 806608051 970535920 402683715 457607399 917950804 939607318 83534387 574164475 990862990 992296119 804733292 967427970 266337581 870054286 399828811 605944143 463319622 607890100 226561225 953831938 508209720 682352600 235793484 903934103 827557799 895169003 240835579 900214158 423946494 477237969 760560215 835208077 753528709 963270887 441383468 573712799 897165398 898520983 606786251 720437062 738496569 906737519 899806908 980124073 15282840 370091786 853730106 882195899 873184384 931582442 943632731 985891782 117320798 666059978 150700879 971187988 175534239 454339507 682000227 856704664 455303477 656373027 409457871 801248282 411348891 651627944 54513379 707334095 846664521 847654260 629414147 953578414 30455505 259049672 121531294 250156825 400722840 732840412 35730995 518974688 840667510 841100688 891306914 985366153 302330544 372344544 833334490 931650258 74243078 455083103 652515438 708894519 824906088 922904855 115319358 683517779 135224236 775531484 596947103 716481811 418100854 501396825 106390191 878070557 593415599 769397162 204567053 494694981 964402738 975280741 150858954 837722692 623552891 850676318 752374380 781033746 842771800 935617297 988780475 996587213 892599744 926716446 439615338 849821335 553279261 650889057 153466948 748652553 402277754 479325594 737452430 832699241 899187252 986573261 409422785 926007442 160453482 940336447 261663578 310959132 59171607 652638860 788968254 909148437 345521542 577804266 378325830 436933476 776977408 837180601 467140688 562959550 15902997 115276528 782449248 858039762 931262171 993996334 232622180 357512871 862849104 908377908 972148578 986437123 828110405 870566640 200187241 762815826 960947888 999465506 334261751 683686151 264726102 395417622 715790735 806495039 557277433 796025936 529524663 758868001 526774494 944686828 608039252 827307447 518859869 989342002 964303051 970506495 143793635 705354833 102472980 939814369 673766685 726517988 505838270 777477329 126773682 983807524 833389182 961912134 74295878 485519677 347706291 936668241 517359903 746067374 976676442 990443658 130090236 754466694 170157634 214030568 215844382 343204262 901422523 931940089 730004909 856327319 82662013 595120782 896391411 986168677 46316008 585743374 489035547 544147578 904715318 917886438 316136273 799794656 673746675 930748446 295467122 589566452 511911450 548161122 744174226 959734429 873358538 906980420 857467774 955987642 865991743 916447416 919710856 956435810 861781994 946805318 859174528 969374728 246735145 375542701 824417857 975815238 245209705 979184257 914795051 950642236 850290206 915899316 221223304 386299819 416529124 882235578 208488057 864343393 623491391 712629397 615147288 618315994 726926900 762998848 563899735 933818427 866032253 927060800 621557104 644719235 545005838 580778910 692250917 724599253 466073583 898287834 178147449 765198309 913457539 979224128 392302273 537564032 551371288 884228071 117723514 273111611 621967161 747351314 77463047 988484183 411366621 706161280 982710766 989792755 236320851 727281848 415236988 511871331 271204041 290645737 214023967 367065564 817901748 942101210 492489199 791098454 105908964 773969174 309844339 488166343 286172131 622423272 717684684 897072323 930274404 980540737 798146749 864933011 546325940 981847090 644940160 977918691 408138475 519935949 292706708 690944049 854642999 975684524 511223486 938542404 318818439 396276029 314608130 758268139 105993258 442967077 24175217 716742627 900717791 932033763 882509881 931685819 892936079 933328662 278657745 960562225 595786451 709451284 883364808 922713435 571909811 793145296 330997707 467870232 757798287 906890883 580363415 869337769 106992820 877089549 860180422 940181802 940182096 981657400 221265134 647894455 314686894 833287294 844423294 863605427 37315404 954526770 606656141 975950508 495880147 561772054 280871782 490380113 477961484 508405719 395505933 922844251 559328686 685873697 177279665 501178867 916333335 931610479 852517099 931151799 274796526 757278483 388005860 410233339 319078856 345318664 50815579 454855327 798089468 998975153 682316149 958569954 674285770 702703847 629080102 812258482 513036139 843640896 419118476 720217257 281920764 833177022 363919970 988376664 278827610 642594622 745410288 901787800 721978443 902836130 506283661 639062885 748032137 779519982 258628368 344751946 889170897 899083287 200621056 322788621 288133286 850026252 214677913 332500947 883931652 898355459 523211048 725775547 387840660 438696902 678203773 892724682 376890855 977897422 229938020 482031602 463675314 572671246 754122264 941220248 420460529 619241060 553547910 696087806 791413725 985994409 638414039 719555508 739744737 888035934 965971227 972593512 985056921 991030944 326471077 474195102 52891847 976520056 903330666 940643188 29389158 744507639 328349766 633678098 760812543 917159367 353165801 526348001 793410024 885237555 26806752 271924910 238159851 802833320 377160174 729638708 608628472 666259891 352031322 933210424 541259716 913417334 397490897 623510252 405338907 593762843 850537874 989043064 50573125 221899259 392929219 975284645 956278777 978008349 354273382 824825980 182554061 250191447 554838039 586576603 421382657 829895047 183371671 256622007 477391571 499300481 507749844 949214271 688695542 707759623 323871167 576949669 420725586 543510161 296611572 832914930 741409253 949896440 177656847 528669468 555785464 960245424 299405478 853021625 663212111 827739405 413253069 545016246 230563620 462503786 128376469 956248717 892129660 903366274 785761957 914868521 214240446 373188799 98220461 438846958 316463838 534876877 301116474 423827759 836975138 962415734 208340246 581638916 938792668 994165617 536635578 867204254 2193493 119065890 360485609 361098413 961287240 996775095 823427917 931592801 740025099 784617816 800582203 881096920 914785454 965231494 463947874 990616621 469080304 870687373 444601809 499672303 825884117 999310683 887080738 926007352 959625938 977569077 756141943 769221472 900692991 921070304 941324119 994569618 560204756 796148199 516855573 896503897 837400340 996957272 357768424 729561282 230494549 909055192 689147382 849243489 192480970 884012894 596561266 767939528 106950876 413883160 308085085 794399543 49365161 988232527 242474990 640897284 459109536 877606518 483730820 666034320 215565029 519620258 701427483 861446542 855254242 912372266 392453036 551993947 665933254 870902924 254461259 254889421 378728426 531626981 644516324 851088167 321996848 818726844 334126238 974715962 384625825 397251518 801054491 863549949 777214547 958519717 231624229 746658503 404553367 949614213 588529322 971748088 866477014 897156475 20196949 564697720 419079268 850118302 197317189 271605823 775680215 938968891 385814735 407695968 66525477 475577999 704639525 950316514 621187131 651701724 549450515 709326467 677073896 815463362 557911274 654129572 397100977 871570917 559215812 753313457 517885751 952423758 336628627 578708197 317054420 740538923 603612321 743683603 642130401 876350796 454910027 923188982 284655502 647965875 228222538 675130428 264666072 654935225 707071813 921902874 761694136 878590893 549611651 963493361 856346092 870301289 785506605 869462266 354908726 537859220 505785722 888966046 518173315 880031053 78760786 408883906 690208409 976015704 445168104 943692584 146756431 460280571 941867273 992254947 62321489 120646612 948361791 974727618 734193800 901562387 677707319 963436836 868823688 890897885 886458579 896140059 324094291 506812726 282256882 896041835 356623058 912718959 245877801 484807815 914914305 955642285 837397825 892104139 386380582 984662596 440072452 522318811 475618003 865919572 615625051 786889603 988877202 991199328 711536134 766225399 820669553 892549743 31580437 395654131 838524699 998611426 916002743 935799574 903996138 954248378 643830539 962504820 837938550 878683010 890358912 940423667 386877487 886897808 715649534 925498094 951109826 956807058 311273775 498136247 496448359 808810301 417494190 527764321 373240717 873986004 150663286 832589094 791555089 882458777 133845759 147161079 789773232 949890278 517060527 986818707 571945819 606597503 629530842 830452591 949840224 978112380 534951137 597447325 851259792 861757960 749970752 791903871 309379697 998476041 890361239 899609665 579685995 880425267 91587773 419908755 955589872 989684283 574253904 857946434 755562257 982404117 474208102 575654539 550052539 947170778 445695722 584058638 12108547 160905875 791803153 932384468 984239602 984446248 188481087 845812022 268785924 713408168 859341621 906992003 709000024 719614623 368821935 617130295 610940372 986812354 544213852 649439863 344493955 420649868 897018983 997546301 831385579 926733878 914864095 991583481 868248576 904124015 882233227 957483968 861587874 914369014 686092110 782768308 208708509 782766374 836055668 856268839 277360422 413076805 265757413 564568357 469810579 757196203 485998772 867253854 74102437 198428494 296673937 531824533 892719276 924373721 302184660 908154183 785314 933308248 714287930 815562583 222288661 764766364 22300669 264895674 220008235 611900438 826369716 996397310 180128690 774461218 581536930 830592394 747164891 835625204 212176042 238397118 508483439 818901400 921501546 950869714 402672607 506389618 968585207 991549162 148986316 759708409 586272583 646452885 131917714 223110199 215533615 553837402 967298267 990539910 171274733 216161348 599347743 796578170 180813086 601869906 471702157 660894420 419664375 522731331 228291043 528462479 642768337 808305876 961562764 972198999 596418659 735595124 119822888 451013309 907580480 942216276 368198773 822080778 242010605 889012150 490914487 672071776 654783601 762649616 192551565 885708639 379411889 606274095 93347884 630117055 988905054 992038472 830980850 918853658 53393836 512487033 76002648 236199153 980263731 995396920 662960306 679107303 295146824 373476581 445177137 569413331 202650382 947360077 640106021 681982249 795347538 967413998 631714883 771999901 310291213 772040368 695110507 951731942 235482670 396913212 848905655 926988715 825722336 992719340 264070071 725119894 888000748 983060953 52187385 873010404 189872485 558107773 608065801 615928452 318273949 431327523 965011185 988884388 752421064 998911454 171839866 293070261 946099228 954915887 760217990 936476689 20549759 904202924 160690474 288504128 403235202 466240960 784834159 790145395 489018325 978287777 999573557 999842053 759495973 863988859 334038911 984287224 877280299 878819268 458889344 599743033 703019455 790110996 197241608 781101783 982770083 996067490 851710844 905391449 125822669 406939249 579682198 659397587 631779153 735916165 159369371 808978738 381701517 531378206 522788754 994800543 214395653 973182510 908412598 923856483 9215444 68190319 104442036 879529889 288264804 542852504 562210858 979041765 431282299 903600595 194098099 548172034 667962921 883815021 149917430 497947899 761070816 950080158 102607097 654561173 692804922 750457434 637644944 943198406 393893218 708664635 568657721 872643164 192855808 413641031 572173704 644997611 903170409 917357614 112993448 475380343 963300165 975200105 685385031 735725569 621110156 772152625 566976311 934675650 717969333 915540663 385330363 444553003 248420515 902269179 546331353 718841876 62763788 724724379 518473815 551695093 203013286 400031529 568207291 731973524 592614327 990903703 532380921 961898651 843708064 981866361 382322660 819996991 274439035 549699272 332891423 386896195 642697454 841312039 183554179 288516557 345855117 953491611 132292590 368813768 339782901 820920698 889929340 953585224 796230427 880283999 357265355 780549113 980966359 982815653 784722817 951045589 302161164 767916969 899370866 941580447 381305687 507668710 108738744 979171594 992635198 998800191 729725353 865449447 941464965 966082620 289594085 317303521 339255564 396044020 971273613 991508080 99051592 665112943 78370267 834246023 131772323 287850765 591470363 811657979 956427897 987843469 116746152 246474399 878172793 984881987 762569393 939832706 724417947 868884854 340628262 501039965 590599530 737799593 528433463 758053041 108533195 471818318 962309413 993352901 220423139 496338035 802041433 891424746 556716231 812137338 973421334 986047709 273382313 653940434 588525149 864988327 475524194 619298462 318371428 441016067 496433643 876189527 393869132 517829593 302669382 533643465 332109163 804121369 468698138 813008905 659470484 940159793 990631230 991491877 890993769 938574125 119008578 128297567 6103746 983987411 910855972 933472274 57889541 988254186 282460021 512276245 206186123 249949378 328858618 621656915 922636324 931798106 30358193 588338751 565154463 871280777 122753740 759959423 658202042 692539073 621698740 983943029 305969210 983821841 19542678 384838735 799491684 961831025 457211330 767723359 783515308 968214615 375748922 954593086 874473055 877653181 755379597 949353859 965320459 995209455 883623609 987336641 254803299 566871299 242125800 447221354 471883970 940771325 102019431 284773682 822982705 893370034 391507380 589443038 74175455 970723160 784807778 882837467 974802205 977821584 236331449 465058509 881016453 920646753 389590294 439800209 617921977 943598425 989896296 992855402 516725205 680822420 31890361 813392940 722277486 981453992 404198341 497665460 412290308 626763377 806370906 820231384 314308862 754043019 743514657 948367557 409641918 827532206 743380372 752594177 960063734 986448261 452562587 704468729 885291743 928885982 385692752 641044983 162306774 253752797 776603581 927700659 230406506 631378391 573927413 766332157 524156702 951905880 45289374 106731517 244215518 245928183 231765771 951717920 364567274 394857085 175411670 854886713 859746266 882402370 891332867 982145906 400242579 511109465 28194650 350666635 104970210 982898843 831700226 970352860 640785667 890879375 556182190 794208620 512700120 588458988 303024781 879408909 992650496 997319544 356222408 548752800 57937363 933151631 854850727 923269821 507296441 802502736 537384141 995880297 149203554 928495554 985720561 994788899 823563286 935092353 72218516 890134933 584395949 943887977 759851756 887273564 310405037 414327268 473949038 600613769 87796396 933994304 34368231 111434306 768416467 963865213 288727408 920014181 876589740 964228299 352429503 708505853 770267712 900060201 438284160 598518738 103747678 211370782 238044859 535121851 426946364 710239711 229359011 646481264 14354795 455558831 641080799 780473524 174951405 498433444 57756366 701062348 822328824 963609957 925780978 939905746 976626509 982274478 916753240 985770789 324942394 833083803 776148074 841365466 137616548 523608979 130392451 160031103 554963647 730349245 395143344 670763882 709493068 952990560 740453652 811856741 778903498 925785962 416708546 664449722 554247825 593231932 177838856 977288813 774391629 990571432 771861632 894758408 245694210 838106779 878316207 950548918 171518430 526507887 16897402 84337666 822664484 974506368 172050275 431466952 501976441 618640148 552476278 637210235 745697255 819716630 336455998 505869321 467368682 488732384 370742457 708131116 290706522 896432035 733232787 799677059 510800511 995727110 675178702 787004916 136153783 260393937 926202847 933432070 375926656 467422247 694629974 705386919 124961643 871722259 80330480 433973060 815135963 839542185 530160646 996739569 985672212 997851354 746978781 891635357 704197468 973820061 778657985 802850288 521642662 778413547 800071856 895686262 593992051 694207209 156542732 293163650 979775553 981780924 98937797 949463306 770668586 997521756 834840440 963658040 473937696 946190539 882706585 912990808 503570247 581003461 654196229 950934488 175421699 514808922 47182090 462824055 991959069 994225801 645367145 767535880 814135273 999118596 783940696 982855951 454432414 771115265 609913135 943398655 948691316 985659666 467619506 591755332 562017234 609578332 182239211 800233014 702519245 923120047 644288377 817417315 349761545 443083573 505572085 676879743 160865410 679978676 503038485 743493926 224580649 976808581 508017707 777925793 251636059 630784768 620806013 737206902 257573516 567351821 57712867 494412629 800577678 971987172 835071100 950012343 970717364 990979168 218496802 804315863 324040792 622563228 854143916 948204660 919655925 950462133 177652344 925294470 53221652 544765716 756907731 846918071 346512628 512617478 398069658 910554943 194913426 694402451 284854944 619374335 655075312 991352637 55174880 272927124 721232682 866706611 422748328 494672995 728488761 783643268 684186315 959025072 627954843 922582901 636225718 863347180 369281338 630270599 36596280 643401602 873341062 892583266 221454734 591151661 836973489 952654432 779654743 867310874 387990099 562270251 782518478 892847976 196949814 544623399 521298016 633316725 109017533 203102824 400665373 570176361 41944562 919998201 676437598 803570107 717258239 822881057 656833395 972903623 630221428 971164628 502887294 724576087 529293718 562154283 765565727 819462860 239257996 559455205 99539224 756484185 30548766 851060760 944921120 958993709 633588649 746839810 877283281 955768656 403282340 702507832 859268219 973728625 150879251 151035737 893009669 900499517 972316980 997697064 100258733 562051385 264563968 610804652 363664141 876374238 526394620 967182312 439071608 827783902 395201654 921370755 156014849 966748718 300576329 740052366 108334207 740097760 889511163 928853473 474341422 480760493 954057831 974741581 802399223 804931541 957480700 983563585 712686633 753297348 27275287 459401708 24135085 607330619 982419334 982680191 63678533 470120527 598574226 878619161 988217220 998284658 158721186 279976901 803017207 822568249 181687360 967874912 118812683 826342337 72455130 893291137 555676867 881450600 75174388 387634420 410320315 653790684 871597286 933799636 443940743 583014511 784885455 880844865 110770709 869890056 883334639 919808933 596386920 944454546 894768870 953425706 310745345 783137173 309030709 655806223 670146944 826233097 867568023 875394987 522437121 634335848 157358406 574264615 615123874 873615548 695374833 713747291 624002444 628492022 997973938 998434534 222598946 872870069 861568112 961672408 689123066 704740668 408126153 998234229 816613108 934314350 807747900 938251032 617187256 714105820 942094780 969167994 731313096 985649498 936079025 974646953 673963913 926938751 195562260 936791165 575648455 841664672 372479908 762003912 317029828 342165974 798903926 886019178 429440238 457386931 375175940 887929589 68787276 179308653 680220478 786582908 188802516 699182051 91042238 264680702 679331635 887558789 461510891 777811344 329811505 997909077 383333079 637353049 421839158 932777357 324456214 564489500 290431458 385892908 501671378 841824269 974701883 982119186 290995384 669379815 778464141 829974448 392779210 883296081 120346372 442156335 76427243 368920372 807197353 932374352 544340990 862638443 488564641 884441882 697374854 770216747 906508737 976032688 730123771 798253431 620993560 817900203 207841608 242372270 141790114 708426075 542597291 630482890 471967786 704656046 787389126 857476547 685403654 935639532 448329301 466827024 267704643 364987478 790688251 814772628 469164906 576040815 262595801 693594273 866106619 995335396 403176616 417285783 274534205 604698981 478771752 735500904 844563193 867509608 600237184 797551424 581231211 595985660 179340392 331037148 483656837 712155964 723326220 877271835 415638690 932963848 774790040 830215599 544149812 793797205 709323598 919486498 968468368 994728210 944458612 974384467 553051850 555960503 469134432 540312030 672867483 892089283 529224965 961985356 869981555 978488241 222287819 242073177 908355233 912369618 990606778 996984762 66436244 754303906 743038695 868017418 548023437 695128159 340058949 855927130 812621661 901501505 621493137 800309869 916243115 920973768 794810100 943200415 189506240 353847875 856858163 890047041 360408153 823828810 900299685 956646681 770081240 790266267 127045910 599632139 936510994 992034388 184424087 519776935 88690348 826774266 717554069 878126771 610992139 628646616 172662252 701185063 132271030 897353019 128001429 923117627 324479682 650664354 77115286 917961119 760624123 809073114 4414796 459160438 460885628 983537570 262852742 765257042 298711430 763017326 64058521 119964026 714327318 921344865 593058796 829045236 929728875 936572342 855402329 884912444 511832820 639159863 683942879 860991902 654902136 985982801 932782922 946688245 121465869 851609101 12820165 773371342 776186238 910638762 721378808 923908594 553757486 597571506 500423294 685255553 21591432 410634301 646700849 895566799 921840481 946236689 203290875 643193623 994114670 995188325 431158661 479424908 445518230 986254581 161310033 802548267 741216581 979026939 858956927 871872427 535250702 932660312 791586810 953955489 679062426 964901436 868446248 992774916 705205905 936833394 579042273 651708484 328171403 850462625 942176915 946150928 966942194 984112764 494691380 751077185 110338780 982042291 382639322 921595035 493830236 774850596 495996919 910795019 664231200 998321786 92072326 306119947 950802483 955022243 98167135 228849281 613291401 995923052 50818117 877960287 595529253 630720657 826655628 954400922 973510964 980266512 364233834 434627958 819772504 946857540 856487569 911545357 319814578 691268054 863373827 940549591 233075647 393492640 803771527 823946010 326648646 957521615 5408668 743989428 640002533 731585098 364807854 630661951 915886840 994714484 432194505 576754212 319190489 643821298 523945497 880515818 188223302 854617191 99416689 389645302 251553288 711055415 688596707 925171293 447448184 777886576 708397280 716072468 937567000 964679758 187174311 858639355 158551401 892416866 719610409 838002117 276458445 594980924 781656816 800489514 760890117 983374625 294277375 495348656 713661746 824203629 754808061 783957471 903085478 963781461 681091538 990784427 67423226 194211026 553761466 610218718 467021898 576568297 130964947 520758112 112232121 382038639 994618563 997827299 562633982 586179482 837375262 906263246 955810657 999674574 768009058 893804399 661954543 801275140 776150706 865442337 616374489 935298988 164672228 702944671 495038982 511059902 208311948 645193168 444823325 466813202 994936800 996675976 535148702 831654264 983926156 985361584 16496584 330590386 225034630 773489966 390823881 903274365 948274503 980015007 356295914 924034622 487908488 956700008 314939921 331085280 518423264 835746999 784364540 845586066 326951374 541747055 50863145 190789851 184345454 355363780 241590139 926880871 320289052 323456160 479631921 710140547 664299326 748975279 83202993 83710451 442253874 946489610 658011897 842682809 921167529 957601757 567897957 600580118 684425879 793732797 114766255 673195917 897374349 954354984 215115236 760904613 925904588 953460169 95840710 891399559 767958734 835645529 761147403 921937158 691004722 801335642 548263578 674001412 11578915 860990943 563504221 948009108 880841962 970660649 873834568 935568481 717036307 931565222 779271379 931800404 357375467 625978690 663222899 832991692 192047805 710664871 453747197 544495033 885808733 972554726 434684957 455441170 150815478 835082689 505022257 928731271 965794542 977785604 261718069 583028497 493957054 600101316 734366358 816668724 778625087 861738038 884379467 944542168 634132358 707368849 44070452 130969258 494445161 529824799 900090463 916963787 132568434 567961447 740998984 934275707 902789209 919791178 924853640 963541462 49928616 346901371 766392459 854290465 948992040 953653513 798407524 949501588 269428469 901178027 113881842 799693979 86763232 580653410 977613561 993889896 846647895 850775630 17145474 406049131 625926708 792995083 301523900 868539679 485549499 637740795 400660974 725300161 912397520 962963929 599648690 628078100 430225699 678748114 765219648 848609621 501974348 807185037 942694462 975115994 865184008 937442320 160944436 356561262 442013923 530037822 688893898 768366437 80280210 999026101 701681234 948310331 403756946 597547475 806032572 818674236 817497322 956258139 939812386 967905731 544329391 741561740 671705244 684958782 359784374 959509297 955427084 992235406 229333127 411607086 13405388 201126118 440928268 757823887 656000510 672633393 697139946 806155289 84314271 382816366 963544966 997745207 4581815 449823927 9413019 84863326 624105137 688983447 391563692 941108916 720503616 831402387 69619015 621881353 463490290 558750842 958135818 973323912 454541721 874458988 472297405 830871201 718433981 878684700 511660130 901383900 272196459 297659194 208405636 647405171 593856153 934311737 322259132 997716560 643916806 900987015 772994288 859194745 461441040 938509097 602691931 992203999 668844925 717027944 799911414 903326009 471487650 646847735 481774150 948846569 589076861 925292640 665106791 889576869 371135306 574121530 250269848 439851329 973208274 997310404 467808833 906758029 649358480 747249970 630314577 975019288 546506829 999302252 745915944 781110640 749063564 808828299 919550459 954745292 73471292 669849629 137066483 605633842 506582677 778249548 44115954 839551964 219554678 470853637 598628483 843367680 722590102 976830628 675570111 928301979 875483162 966242487 463882830 984154528 879668385 941909352 37458491 820786975 500745794 904245909 740212426 919573327 416185517 473012977 563028877 927111982 788231812 895739085 836088641 929596116 996311407 997938462 79098656 842359169 352774580 783521750 943610421 973157626 782185149 959619235 50592068 336929629 293958356 480346693 92133955 158736224 26729353 977298277 789104760 921269585 190846715 901425659 517146865 952206608 514650894 738451986 336736893 994185359 883693925 896421551 667446129 838197980 950050959 988489138 805557733 969243786 922206487 935149412 652268699 790432480 658299683 758352498 307311686 353805547 462757117 800985261 585515103 972711517 686967276 871042870 951813910 995327153 946783505 966613965 83602857 689513514 848406 347850593 339504284 621072624 734245302 997932758 937313453 969585614 378073882 937199926 865911708 919194792 149084165 205936483 447832705 542349031 507700372 699161291 992371940 993237925 331603638 916687296 906335971 915344861 866309603 963544173 317291764 340016936 851040771 981757361 472928918 714836940 686395724 721792987 612174006 689018211 85333697 289835025 166929396 978271568 62318672 66400231 120696517 939608887 479953721 867578221 75512798 254985504 88391817 213695826 816422625 866617980 25642176 939747590 353436809 718790985 740726339 998692902 324668541 695877492 972456226 993425040 828237429 948942143 33743691 420264077 401253931 484354726 206470297 889699408 674358812 829037466 343636795 941268126 6725280 213614171 279693594 400367441 875644252 882811616 596501406 863211731 905722226 918916370 594658895 898485459 445592922 597285624 581983557 872999687 166407902 380826153 559765343 621220550 410263069 700827113 360795582 717916716 654643133 784624304 526497107 610763244 535842669 924961153 681185184 940372392 439198928 799612258 29855521 823996182 49728818 279924044 5981470 389936313 838424079 851649548 211121513 941714151 662472134 874425166 486990133 782342060 579550749 754055205 396155893 973928774 833445699 942605548 275540867 395396903 10550063 120180366 277892743 691699489 135985617 741982567 401835171 680890871 323222725 608381520 637721336 652354208 164474617 516815060 235674118 790247542 141104043 243756370 160454447 927447887 580962895 830169279 510192540 933127917 415896895 789151557 656674896 938771242 23491228 576063534 667487774 877557378 629664536 869664639 747427943 952747468 363050449 491371770 320936298 401776450 414648438 899257989 460741437 654410962 836036191 982684751 171167188 752382253 564814503 778255179 617701639 871001166 234039585 631353985 515655703 881574458 383994609 726123301 729907812 959676695 661709511 864598558 913017350 979501156 808803951 859442360 943855898 945679777 994925912 996899008 710442439 839031830 80026009 959261045 119445754 241444082 110410364 730191589 409858930 876441632 421572105 558328865 124325138 679558151 744921092 778313356 133671894 455780061 368098852 768049035 502168561 660105006 262192239 742818385 680669083 878944162 199703894 942497865 613395603 639281100 978492073 985970750 766715801 861160284 825648645 953776257 646809483 729819609 397629587 959507238 254738933 408299186 515623915 520744352 273205871 962069379 865603067 951399536 647962557 871879179 791283300 855322949 912347529 955077372 518412078 840665005 940875795 973852109 500241870 843794466 181333712 550585177 911959155 997933823 937336239 960540618 803768683 912683743 663463978 848686595 292774390 699866014 124669852 295378835 614183839 755312298 992128149 995157036 272084550 896819281 956934776 978540312 195642599 610785098 903662278 911040555 477200001 913101354 61429379 936624477 142351700 505680506 724206649 914065042 567224940 894162618 902516581 915910248 452199442 581611186 635979648 707711535 12562192 833674340 795492148 828930183 323455516 866654756 353277187 482779055 405079577 456661245 752908575 899694058 87561794 283976321 42698593 349708538 130418171 465098369 818812664 953066999 944761324 967747967 301448363 734012221 944403476 945707076 528842646 585705064 421733040 636029922 140087499 828046375 845893891 879909806 203638828 425740485 301450897 525657622 583231442 825853688 843438893 883476959 315660588 628233746 917584362 977511281 109672251 747005541 846837492 954393708 584053293 842002398 419663105 749958051 269054142 481856122 555975634 945180910 675076338 730556244 848308944 876182821 705093418 788499519 881356265 940994890 886761097 894946661 918637979 960241988 814371901 910237072 22112988 26568516 482358111 829756564 287617039 386421114 525070373 798120455 646187368 690714537 96207008 479363047 991637484 995237875 661046401 744241704 904145203 960885367 100323807 613570726 808536102 923374527 370677656 531383255 177374663 320489176 309557131 752661758 863058492 996853497 377704987 937284022 758901710 813466556 486918014 501500983 482039621 721555067 77596426 171316327 101411285 290827556 323863996 498176312 42666619 199296337 949139481 961383851 120448575 668674896 736037748 840750661 289647369 677002434 166950588 279095721 470013473 830019955 120074898 191650129 29642565 276529927 472698796 932685694 309124247 589574884 623522229 902112032 17989357 110407708 968918741 981223700 85946717 913235771 220625914 807945757 792556051 921758026 260857597 836020995 140088831 795661916 214331963 521269732 328296315 759285798 95899914 323424013 216052856 495052076 529436877 672565766 518848499 576905628 814963300 817743120 692125821 980758717 398032290 771625027 301135133 777502656 52394102 217330717 702538188 951210048 348034884 662421027 35852393 958964940 210846711 688355937 864334944 868922205 776636578 864349643 577078209 995718646 658654448 857219379 425539766 744315631 499121624 530081856 397868551 858937478 339564428 889231560 368516462 841601215 159227581 202471491 121485524 479760576 427984228 499936865 805143173 828565189 850872346 900176842 464358561 693743862 281911383 963755481 668370913 922229411 955455321 992352575 12983872 895600621 669999860 681450874 971174477 986649356 849831619 881915449 283874260 711044545 944667188 994206750 181917736 623613371 444666422 763181210 846543936 851196071 235879199 792719416 942580739 954489797 40148683 516656963 314528900 604362587 583575210 605632946 560326364 719671715 843003918 944864488 74468836 637428939 420966842 671967851 603904207 919882941 546725301 931965233 160308277 173542074 553391498 609613505 536078221 561695567 443558944 704671454 450043204 514868546 398593007 833430004 810607567 871620406 578362129 765258971 845619429 934811519 28961745 34464562 102486549 309941315 568722243 648550564 106363008 286103229 904604959 923135371 878569563 897300257 835077531 938145104 851574621 985864380 235671410 315665535 67400801 785984461 166381551 397926950 449549985 786917353 197420570 494767872 892889159 997236639 784232897 794188994 528268258 988223161 870595015 989357287 622749876 893897429 564125612 718762381 219833816 665118315 750820518 859556910 236252448 513456677 914938117 950105794 576977508 733535252 410963589 464894295 391714352 933709415 952409335 956022354 207122426 590761528 581882670 649744176 835751479 908812170 211477136 441627168 852407884 880102147 543796714 726194317 193064311 211652022 399102959 735495512 839678814 999429034 308597009 451761504 75186820 84780448 208128365 514915102 103475419 423079372 105891395 632946823 430925389 886035633 454186010 878862031 237716486 856557567 999441986 999955513 346379033 753227706 753991507 949955054 609455873 633058805 963677992 973967360 105554375 200527110 800786858 974596346 772022711 817992698 253498544 437023370 988309659 993982193 144940515 236245670 161194717 435110261 380624746 633481698 94627253 365411961 680172992 926191620 673407053 798468487 805134871 949541027 426144528 930769418 128866301 765497461 422947741 896492307 745823977 785265571 11081666 314613214 557341154 716488596 706067809 780382339 842133291 944519705 331419940 342902132 504406467 583192106 415161843 418435436 235864825 521806438 639265718 755334367 966464767 976640125 173634082 948532512 91518586 761656087 172158783 328040796 94437873 368301983 25055391 932043864 574542197 586656329 388336613 388933992 118047077 681451857 390806597 714515991 928609704 948813580 313522894 600827594 984609328 997324592 246593384 497480262 719539761 764140824 893068481 942823211 52701197 573946442 322743788 837769808 667127897 757873393 398256949 912200602 457113711 685892390 455552998 677388267 455087561 910062086 81251318 494576393 63770828 728785348 834882369 920839305 354296658 448746900 591930784 923642536 350969460 965178823 451678554 685397865 92212043 119625609 968483247 987752606 624512235 697273083 470242781 536780103 669396918 684880170 384759105 726984665 706597942 949262889 774100889 830174558 375378573 426589973 524169651 645679546 171994373 809516670 877516761 971036756 993885472 999941995 325547015 600134461 430039189 621668357 741849050 980683064 556839455 912273970 795465240 951065155 930429873 985598576 500948297 746071945 116104728 946060622 717845830 795027169 101737788 697755726 920999753 940810896 60815905 148681046 862773216 985131373 624203853 918529034 109159966 213745599 567686933 711858894 4463149 499428882 746191645 859859464 288150572 817611661 555100496 875533766 125179228 937918973 293450361 624799010 848473827 867886289 458511120 676459229 227920660 698877061 305726203 373553849 219423984 904944267 861392171 870087936 8059346 540990763 216034638 625156278 918306763 974010971 314414284 368040342 395921030 694531357 800189558 878050370 407525398 767700568 28129381 623991418 58765125 893234319 587616454 935927692 146294908 811482415 759829919 792630122 108783230 656468053 693142660 906487964 703549674 832377814 381032164 820695678 8010290 140675383 923309709 971976591 336252274 840924705 129178695 818003711 552230671 691104179 231581815 477042003 790728110 946825668 819590751 921672353 417005414 595957892 981244020 994532620 472627960 860033305 141943240 158349306 266756306 696826998 707310010 749101954 153412927 225810775 901065877 918841635 581140998 758506625 656343673 718636795 613513617 737504197 765257052 951753479 796960528 814121720 417196574 523092848 709990861 854313693 187218670 418219239 469357143 506662686 295232218 341438949 225584727 334158253 996555112 998399399 894256791 964074883 366213620 973822441 856012378 890379174 566854308 902001239 798428721 964406190 34897645 993530247 409378992 684430822 180812918 311007154 781862063 916293466 123045972 898510902 141670652 735430653 595690066 687357822 70409891 772924666 113135236 433603973 699669774 833207016 437129821 737485111 940564014 986274446 784739143 886569019 840516976 955808806 160837735 760350892 904529007 907603957 505955480 747658136 717340793 760270510 767417394 985396348 138287586 261304998 103618361 740210445 111008534 790530863 312647743 610515295 610935961 806918284 883623572 960162627 904570481 976040269 485475417 491063316 806530509 964180116 48138098 986614750 64416248 268781273 511461864 847969117 125161728 128121710 790064978 985779241 374829279 574031070 879941637 980402662 221540623 243909660 37039882 640612204 426747714 859501553 365340470 925402397 714242269 763471261 723797538 769858682 148291884 915494629 764059130 874545672 550055921 666428226 271786717 786866765 271775716 570507539 236350764 308902721 242557891 930817856 622147297 777940704 432272443 703811368 348050093 436375654 55965552 379508121 756064882 825405460 721181610 997534589 219306479 697061472 776112623 803839381 329644389 797377847 535537178 632472378 934056633 977564569 332768139 415253357 88803252 593381274 858248639 891122181 299816519 497819336 577107438 925560814 167159969 665659189 907270569 974734753 279633637 598645794 623143154 632205438 501743280 952656279 695780299 697274439 984278578 996818304 603357950 900928750 38051255 524348766 15088909 507828728 826877324 847012247 970407231 988657343 777509687 909733578 506688441 599668830 91241194 867136529 105007479 663272105 410468875 783717743 60141934 367445161 720990445 836778960 923889858 937486143 21602803 580047872 563383699 715294101 339885501 933353308 82718051 619821696 368480773 485013649 659738384 804242678 904269618 985032252 375458581 658451528 395605138 553974558 833207684 904339888 948120712 967478703 80043468 831290550 424884938 564216117 101544503 716243138 31319136 89012503 197310826 354208668 565203795 939159204 972650583 989849889 884017523 889927708 407400332 927374800 926291696 975041603 951002804 958416022 464689642 591355135 794487570 865836162 483156923 573893492 814090131 841421659 478449178 600968154 504924169 721178273 923751162 988312349 649741398 838591672 47381933 917144394 912064836 985288864 442993567 674468842 834171383 909425136 336033142 435794537 610054152 922319185 698151275 812860798 791637015 847547760 788058481 936561869 554937191 639003337 377231929 396817317 175063140 642378268 31578692 204702368 570291561 681394335 947642319 985763186 870661723 953593425 924049706 955366305 335002972 418622923 828507488 858283920 235482981 721187763 880421440 955473224 893866784 916935198 991329315 995811654 155955317 687598155 969637832 987793057 938772322 946724531 949653028 969332022 124213618 320956649 177154200 188328600 60575332 442598666 409940762 549608283 930085120 942550143 234705462 417254252 764961407 845836793 566749749 869623185 365313644 467613592 87492729 993630921 416830441 755495121 59714089 379287408 755751090 909302770 446374412 558700564 108453874 278663167 298378656 304188212 735620399 874002947 705489236 974748645 951499103 991954169 396810799 717770673 597810038 827254400 92338908 202006273 776850725 994548178 549733300 894150983 174928264 356072640 244473047 419793727 424767311 709145749 476107905 965499503 228562866 897188575 969540681 982781753 19090544 121452230 194608982 853705455 23216548 390651055 638992711 824156198 94893642 138124207 512598224 809747563 464133179 479522357 966010860 993166427 877958406 893078826 190213107 285019571 471786438 931404132 602850853 986376351 726880854 781286961 299922165 478250249 734082478 762547927 536002729 993779434 977802998 998883421 884898341 914481727 594115017 711992046 722148327 800086586 282069245 714781072 545400595 713109831 340444495 663156167 116983692 953613116 930491568 984062977 268342701 475086576 254529204 412348235 998666220 999143810 887336877 950769049 883198997 901443510 980774765 981880425 839655429 928313557 669251475 952906620 818454838 872358323 755259466 988665322 622770505 968013220 965077809 979793229 591424220 601167270 519420026 896656442 625920902 861918942 352967274 661181348 127454874 602330576 281210694 333660453 847303103 988189012 423005931 462373270 192755648 536450689 2090314 653419188 553459952 849584654 173033823 662369674 16427177 35088099 118262809 869417962 630056052 760816423 285713488 579948742 212489933 949443412 962575506 984187806 256746846 689526500 746344997 759194559 256339145 288898779 65684628 443505919 469043827 714263713 616177262 631987630 478661238 633019485 36744173 971990714 30636642 30899072 979600678 994462455 543696471 656264529 313612422 900676553 882657871 905343144 685997509 777111345 75918924 726561632 703502576 817701746 271110470 860861887 598219871 911790763 595381061 818319030 193165790 631869913 270306923 398380559 930588291 959289663 341562037 964618526 885330498 984074472 795138859 869729298 582236240 980025870 871837394 880017433 654276815 685553984 438255020 463867741 29414218 609382343 747639526 849402017 74161738 797089383 115758204 326840760 126834945 754817906 447019544 778356298 148493306 739089129 556579425 581435705 607618708 750683064 282152285 655608583 640379741 795105503 670467892 769481785 98894067 782821455 749662867 903507012 948291528 984367272 956954272 958198583 873457886 932445657 282362857 366828131 681957874 788213891 429645503 472873742 593170270 964426337 753867789 918871175 375858247 594697486 621549653 977820200 784757382 947101165 195787322 340885808 916281850 927346172 375733696 605435164 96557336 549194679 780554926 994683582 917701699 968606932 353228510 741497962 950234742 984935890 926287121 980097388 511929695 939485138 59118322 965783275 494701598 549724374 780721510 846584175 216290653 905611561 594566660 949255610 293649266 467414029 681352648 830909810 74462652 935712649 367795128 489341569 644738523 922089940 829258675 920591530 720125989 811510013 664446922 725412316 116974603 408332871 259030074 439061203 293905206 791098452 841113756 897732036 142898017 351936282 110943519 277367364 902995458 915234492 911852542 932541528 293781509 591573465 190115202 943910407 697402051 905184241 43904717 542736070 628906553 888424154 337944909 633769718 308125657 611787684 717278681 884195789 320084839 530870831 86999941 550324324 236708352 759646515 999967323 999996120 478906174 994963993 928299351 929403673 400289616 834538949 392649024 847205454 213968565 444494219 172683804 278250179 126005379 463853837 154008441 240383101 27648883 589081268 416344063 463492565 550545555 863834009 993632536 993696307 652406209 827249516 509318875 895055747 507032149 713344408 823042201 979752671 161420800 709040895 678438868 778875507 322364107 637902098 977796917 982229705 865311214 941436813 515020090 574576066 830794146 934086109 174548848 531049216 111535771 691994311 631756229 639370111 207317821 638186311 474923644 559362022 934935321 974318358 58009198 234137901 551774396 844187475 40022383 597092857 661293546 777354172 1334779 809199352 810808199 932831978 959045752 974544312 192350021 219676413 174039114 554930277 337191480 912086313 799535575 860256407 357831037 783675212 910419693 957435086 971089248 981535048 42825767 153753638 892182223 913721641 995182134 998298519 876099617 906474405 489522311 547283657 824448105 837166855 968389028 992403330 219127361 832127689 869575724 961060829 921817088 972648435 790278592 960160346 223137723 960881862 616868754 742411403 94327291 805020265 911219759 956308075 774234271 885259187 296626106 810569022 181677372 736230539 153356097 805320026 148485805 793190937 155981283 611629811 927222558 940014570 887788942 986907443 466021440 588932349 202060510 286337661 395017394 880125690 439730840 895969935 5783565 231441801 446501420 635626789 92537972 583560957 762876313 894051303 997315886 997652793 738377800 816275607 875131861 932131328 884526055 939977806 903332152 951814624 219487412 501498512 565293118 618385164 268954902 438520196 50431459 831361529 700457481 933667253 205591909 391351923 362503222 819017137 191664297 793046915 309806582 633517264 802741401 901382980 505721511 954614937 315473810 652664507 678972624 871868172 53522662 901044715 903482136 940736219 786692137 923541042 711458740 814608114 964055560 967561855 43167272 372695816 928210361 957518125 546242464 952025078 197927836 515097288 464184082 512518035 123380181 876858155 36983217 677678465 926970824 985020986 259997891 350247883 26783783 982892622 876108926 985554204 838071762 874676957 786778104 947188553 819998345 844545045 257573894 402316380 764761113 954329516 607972062 768068951 914043495 919369157 905317264 967324441 357486870 528236025 117092842 989096612 655992473 791210514 851845329 954737344 601591275 653172229 584024988 679248803 941302512 970769978 530100419 840446234 727668234 777713251 951782035 954342437 747318960 986393984 828744754 946309202 33913154 792498192 932533918 968445832 874947976 989763499 904670988 945784793 109732593 950644231 733355005 972594463 532492697 576500694 749770290 976988635 696320780 760813258 265405282 629009558 629716662 881492208 131873903 297860081 344534359 735735482 513779872 847216463 306755631 652631310 912029759 934862299 37685684 96284873 367754286 702916140 957072299 994033421 795263173 812197645 262915216 420434075 624476063 771034953 501106014 707649330 925288765 965739569 156357530 262025438 793342452 963686441 183090886 499448194 515305575 773466111 289423296 568208882 175346903 204794962 56797407 286135009 682214149 927845218 646536166 802495183 787012070 898129731 283984474 374851871 140114849 671548220 307747918 703206933 42125266 573093669 453130422 829320225 790027596 959233176 122614472 411356329 45918355 747193959 114599493 144297089 285029383 962348390 816399351 817125640 429405677 816165192 700061368 836822518 583160670 991078129 770338097 773196102 410365564 596998187 353681209 381316071 109342042 651562111 47357834 102066376 826318572 920254443 49575113 934880780 624344076 702358738 679882211 933834145 877456945 885849223 145406331 285073134 976676672 982162951 919167229 931653103 78209152 120428239 310052859 419287597 505453559 662815484 482715695 925758844 421452658 732054519 991532754 997232134 922217178 946433706 168628493 573142372 240789048 665912231 901320009 935805022 386788047 671022416 252164402 670561730 975772399 978842904 620898809 985331537 525956376 688525374 745364955 834674353 69368963 676368744 474552557 688947812 975081877 989289078 971024644 985676330 749252562 782278521 963797687 997167064 881863753 914386430 128368303 617681830 943688960 951770013 122054023 708870966 637955894 664841323 557356936 879906704 813098280 823746191 520791322 950098648 310511778 344841268 253801371 655922202 810907295 853790707 17632288 709782225 796567369 975739484 716560591 993014121 926419864 942904353 58033583 384479671 926699164 957388802 653372270 838401275 818732660 853483055 101882763 794284684 92542083 690120699 667886169 879291161 551858503 678785437 212416380 911048021 968781871 985214672 649475275 821780994 282041111 445067825 929052235 961095221 412923058 967192535 418523399 470716849 283001429 293875776 629690147 995394624 495670459 877298479 593868523 789690645 71873557 911679780 673459524 874782785 943958265 989626338 628832113 847738187 598241717 810185783 395865799 607331589 834428484 931318787 631378537 968830016 404522564 670394963 278891518 415779327 83268597 507961510 188479466 193171508 349112400 350145730 129614081 926371589 571564328 660069473 519829420 928711951 46035134 866008921 207660129 869219433 530161423 877319010 179094473 779315272 601981164 624832612 738702254 899317048 85032153 409324634 693725449 998147787 573936594 663489957 749033484 897797982 798728451 994863696 882460042 918211650 2674906 787103184 723414949 962532331 680745380 713930709 885014063 992937626 529079482 700388116 866699290 923983407 785526200 888073896 713546909 765874670 92770195 902834780 194828543 612988044 592269498 608550410 355310837 442152859 783398589 935676152 686185342 928270437 895810538 987197508 630618337 821800846 302939130 744463797 851602715 974086427 290597514 372239778 810479875 973040672 363903622 839928329 243034479 924479175 820544866 881472535 158877318 455768238 691238257 712877905 570465385 694890466 84406129 643341505 977921884 995931314 450047863 559578475 248796733 528451927 257930669 657597505 217636620 224171740 980638510 988490887 571996731 739381663 340677869 991350682 341776167 665574578 24142899 50732970 129126136 379496678 789098130 921678063 454572993 972659064 133754326 637792204 941508664 998813033 195448704 752276826 86348883 411334957 927870350 990049459 918422915 948184320 608076707 649128121 680538947 886370218 711824362 929321443 893788294 944188927 933072389 959321310 369927619 985700145 977140262 982570736 894431109 906953714 480912345 933637000 742675841 905048718 90998556 625559335 877074257 968800838 929642786 952811020 328786310 458237163 308752662 562581642 810249168 822582291 955554392 997107668 54259062 750104509 885205755 959259933 542524218 893351757 138045943 239837272 344113445 681375921 197707635 660694829 241550758 794498869 802863881 849817356 226069769 693666947 135865892 440575606 251851735 343102637 345966168 738922663 422787327 993656848 491663025 847050546 151251661 880697042 40187928 916802662 254577536 697398150 822608578 871221766 648390690 908925072 663744791 716105648 275116603 999955640 163831525 710293284 282113959 688506090 816971750 898691411 445918444 843873900 785920926 908532307 81084830 943523625 647566632 677971627 599871150 795157314 201255564 552076519 708515195 731574588 2673310 731232621 248884278 867697895 412425203 717753058 140130458 577897492 126227285 878732168 718512498 903091858 159947504 552039516 562501882 567858661 219898923 997393157 889275439 992732523 102907413 628370842 969076827 989316404 730004109 817781687 567148585 689402704 342339646 728734699 796896349 865609761 490809282 546184613 924900428 994258324 239928727 515622644 244814233 878491709 682008360 758776233 778904341 919130135 428895247 684695816 150624599 522364073 138324692 758479135 914898710 958510573 459226422 560663715 289748036 951252507 67154098 722971420 25487254 983145402 965056139 975622709 948790036 964465381 560473688 917467904 803236415 904487053 806149684 907556271 985842788 999780853 978850132 990490384 529375536 594134772 519614409 891559198 730210015 742911267 314644783 346009485 530699297 586463428 354406987 548648116 201977075 245254839 988367172 988778437 725189655 928821642 344199966 745325143 817688053 931566598 633884427 951685563 412723341 675048767 574749316 793229714 370011719 681829216 392100851 882548637 878145021 979879568 367522682 444072626 792798364 964143687 401202576 669453855 997343567 998197253 652355806 738695803 600979640 870700181 995932956 997802117 755491776 832401418 497509586 547541560 622563934 625879140 530500395 692803157 201334049 809692538 170145472 807373249 872783443 977356439 93622667 457483564 224434224 270277202 30987720 893840713 927739438 976784266 510301244 884680941 430650242 832747927 697978772 897384929 894257913 918875985 344813729 491640185 373089696 658321700 125185431 160024775 437908791 900250560 253342840 395937812 161508785 753726924 730928679 842306056 41114272 156183621 202357363 385701869 807225406 882436069 835563610 905434578 730705822 769121446 980755271 993445604 258598092 328918112 94769441 339561977 952278663 995769683 481546775 758768233 814176004 987402396 354250914 457474740 740425801 950286970 572760406 708938951 105930373 960143210 275227778 360471701 266423951 919942407 812315115 894984574 717065050 938273426 355930507 392589640 884464886 905266496 527336984 533947451 763611231 865169391 138540502 662232936 431174426 794424593 408315980 671163710 432726700 576005894 791419835 854239164 142789803 496774033 320157610 731628610 312849750 808005879 133775857 353566362 82955692 826240854 824091005 871184180 272961208 399222939 965174285 976554649 88749160 570564919 236689877 686470779 953672838 958585750 677500065 706901859 622036184 938654536 540948941 552054445 20143090 738715898 621038011 631544579 771138942 799315752 565612046 614966673 771533863 976146214 744809272 937243821 272763259 870163616 338321248 859451786 751744817 893554700 465768726 618070487 446157197 710863169 348410501 910266273 558693359 866330083 348663331 448950327 362682789 393069966 995650837 998041415 249068300 819515107 575810378 702206211 628104539 773318944 761932526 960986968 629531138 725584483 273429915 554586466 803462993 880200609 629019987 646484107 486139579 980305263 490393318 872842339 577122086 860418640 137069082 351015781 302953849 367962570 499900554 763623459 284266160 298735061 944276971 970697661 913366145 941160638 295077328 679249509 196593663 995785478 432657082 739173292 201047337 997390843 435426062 521724886 229137729 466203130 386569329 988909365 433928528 868133363 641827960 768764505 872240416 893589750 600514546 836237751 912034324 955269174 739591491 821276949 388304521 924397487 808058497 897602179 119864257 502300636 777269167 866365696 549086277 731032656 203556866 278054244 584765888 879149412 671403132 920658437 372565382 982540044 792164117 946410439 996720130 998803373 830975194 999710916 188664032 354363595 156627936 804648234 390025173 980108464 93343216 143698550 622253780 888398938 51362652 420150213 544491963 796093328 127024285 217411383 260335426 311971434 39707229 808075812 978448175 996979374 996877642 997115166 525718751 980631379 227090057 347621616 137143383 194192068 821426102 898852475 433403010 588120435 99950022 792283014 441139186 452782693 104084576 109391689 251047483 609353234 91908277 165127711 560391383 938884390 876975684 905743728 359932467 704449721 653036093 697815576 439090840 586998863 503659152 520215702 95439487 803874183 445868703 607310378 216879393 940069410 145067838 739464422 800596549 965114540 326380805 327497695 252067094 335487231 147865354 173037444 126575172 480610324 582453444 935352815 359986533 813774981 504510528 925263997 113212641 711880636 928821276 998988125 774436124 856974580 689940167 763083494 539487762 807701018 741602946 786566519 650707536 680338567 944678586 974926446 694216162 841739629 705303012 819542697 420395509 447385251 989789808 989817008 123524870 462089180 169306816 950978796 606878533 769758695 326848385 908401960 806721179 941859565 547353131 944548406 964592228 986151058 459059961 925141001 281645819 990299384 6639480 642681794 56068176 479624605 13813486 809354406 357407520 989038889 11545680 274717374 185281729 839382844 689157520 993391777 655086510 796549171 377050450 561464037 939031764 962373609 205770020 352730435 94542099 755402614 975135844 981243108 560136629 891291387 165699114 558124006 80949717 115417488 278066815 287932509 898351140 988383750 459698738 522153444 371613325 564755457 958129380 985209706 713843734 997118902 873621277 913513695 553311533 646670012 685953883 880153280 681467540 728412909 207316441 468228420 389646367 522322798 998982947 999031727 409835719 693867511 888114639 931298824 579587464 887142283 817655572 956904516 659981239 780453425 745075655 846280589 114976840 216404931 291850429 744148828 944818506 959266969 972290577 986940707 312531332 744853799 33206614 627044408 58537021 341840877 359805457 445246543 670382586 981194880 247138671 401930035 661076829 883039234 343563783 664723833 225719394 911825972 637067193 860885608 251175045 986660370 420146452 673244588 901237361 953938172 542827208 767074239 156312251 342528841 128013520 395115349 979293953 991894854 578380013 848402525 35838901 915643317 726091889 763939977 438676629 521749133 962183247 984634759 253364256 300806048 735179878 865688065 706863537 730851520 438410608 521770033 178637382 485764293 817956518 847476543 118075429 760373904 702897051 872687446 310181712 572737579 968238631 972735855 703740301 968990935 360114984 705542617 792948726 815823883 412352787 983070429 233230278 978326627 769920445 978750015 836860599 894923834 390276153 857034598 673544312 971972989 567181710 678264726 383411726 975987723 333830039 508732746 448152443 691332805 763924143 815853370 801635802 950371814 976196450 985154163 371954078 983277526 444375003 763074513 92859554 221077950 903498336 983171560 25016069 326894163 966636109 986800678 243422478 668760465 943470821 968519102 419815798 535419145 833040775 933990568 505703109 723417019 527030893 602345448 611992993 722478103 569470341 726691157 264908664 945948991 930793080 986643741 69277962 77404226 642190068 971450226 72108147 342908891 805094075 877386043 369689733 788961759 512036934 945740514 876958074 994347347 420422192 428436335 429125093 649055847 553845688 973353813 607714455 753245193 528094940 853742048 85308822 761099306 43888238 972589323 530101764 902213269 157256709 874906523 316666149 998780273 792498075 871638149 85727797 894683520 986272544 993421860 661845493 818317607 76133143 332240998 581245498 794587573 793066061 993116176 419101960 768283884 6570100 917714956 234617507 325267971 471608828 585503484 376062409 984751910 644080235 910490869 89759769 795629087 397115900 850393671 550783382 837379916 767622595 880434528 496181441 797119566 3454528 407309918 166071310 653102046 655334165 803927275 59857272 433821103 14927399 746869301 969567765 978627257 663321130 917866044 410885316 485338827 627218371 834539864 600095324 802144777 159862119 791775681 477518447 498248417 687716084 770728122 472220544 590031395 994462836 996307388 39463467 68376418 111279241 448065935 858012522 929562818 124707130 132864773 315320348 887002926 664070201 791436851 545106675 565991748 478700626 698577948 56660286 786387627 842740756 933596583 975038289 989520023 351435216 701480769 776345817 941743773 690874661 895916607 864107052 881215139 901822192 954844013 269941944 625338199 980170937 989645501 466491030 923612233 692020255 923766186 923597810 991779012 349597965 841890323 889194192 968533411 50074999 782891877 592297063 913830658 858315232 931142844 889417007 960319146 134238179 484049687 544728155 838509625 232830437 660844798 551209403 612537515 500664932 993501955 355795621 974199836 117212550 527790098 272157323 568644502 563558526 601009935 877694977 942078939 944679160 950786154 588588768 817317012 271201257 519952469 10953746 867364432 973860587 974921204 229350339 885658835 144036176 531448783 129306580 740550262 450931985 508188740 826925740 860550204 941747538 979760696 544040466 840648614 304486075 923573499 314404228 796818259 776064825 893516464 542707468 682070019 828397689 967512260 757861448 778813594 13503238 832398042 506356779 522622976 844776586 975275814 647408483 696849790 774735756 801908693 590069739 921797641 8279019 460086367 788832904 872095322 436534965 796110465 682749832 795583110 698980071 837406641 91193046 433854024 836865530 966914397 376832512 805921446 170860822 665166866 453116972 804924828 729662732 956402098 352577315 711106999 446945762 926253838 157030992 823393128 204637260 515749246 392619792 674922713 579811414 806716593 352150911 438204547 458962958 817001446 251696664 790966439 472676115 695956040 210167291 576320107 59118557 964983000 255656800 552461356 928139397 960675889 620563182 904501453 184402487 457191381 257731228 906477250 109544404 878166627 385907443 529145689 266649890 498690158 985596002 992040846 507827487 593996820 759678646 818045021 503925391 712635267 724766102 831306716 950729830 989519067 182644372 353925193 907857071 965375998 837248116 991100031 888369638 906741897 236954792 245458891 166163669 799162613 606610556 719075358 928691075 973737786 967996547 986757692 360522681 965771008 370970519 675334576 792476533 925828240 240575595 531325068 568586188 592648124 126107851 922729441 441907072 528023789 880687373 902949232 684725361 921617216 445945007 711745443 873120432 937603687 834754989 975645116 818091683 901090319 810172419 872276750 76325465 238256017 546386167 952106293 724718386 995881754 587814412 950143222 351017455 691430644 215993556 389294685 756552096 957261874 288061442 963198664 252433877 621261424 265969594 882192351 963934730 966436601 564429025 852013712 337680642 864364975 746962315 941265080 515186952 689704129 463982939 558067387 877433145 964404694 317206627 654212317 84784702 181514533 372054370 487524266 667530688 872160667 361528845 976673171 440283880 533070549 26826791 334329781 274245299 916624593 128667911 367673638 958483096 982376973 837395016 886270909 665811531 936553088 60150469 388695490 312786220 952190141 192048170 884306214 840892033 957388705 689796659 836294181 223252011 665588510 975491346 981168632 513603355 578763580 757090453 831020912 776734380 932869089 976409851 987742510 566261077 962164050 173339061 513779330 614810649 721672988 42004342 164139448 802191930 953929612 772379414 774816209 117965843 564602227 490667851 967827829 37835611 324393271 546359072 547299910 709043923 710828469 547061277 834027670 797338927 894173070 661283264 737887481 263121805 313470460 726965509 836024182 614625974 716717572 908075281 938333685 430561907 716820294 148700594 474199422 34622210 43270910 668786140 966288864 718295297 807047905 360254488 406722614 959321608 995085226 74816883 295486144 353043856 715487130 612454849 921193182 807882923 967859830 703374510 965486323 47987659 362164452 619178812 856476511 634526288 976461622 792855631 865915134 876315648 890890736 987819795 996550620 918463398 980170838 741156271 802861774 909166914 999331662 138403025 348036396 913545820 982252343 376166352 922093876 357364892 702213007 137988886 945918069 613204715 879561158 525454220 558674389 434362746 491104588 528097095 689178824 8518723 397721066 593312539 990584603 7801423 92473824 564162253 805112836 331065778 846450067 190748303 972700141 178986709 966875374 994479052 994896092 400973273 456049830 164257995 968014902 553630643 743406112 302292712 743581468 187712885 734491026 552496884 802615003 97160219 432614380 151261827 419197899 709091459 915578511 473446547 984607334 860408213 898547196 896740435 907055566 836511514 893015133 316623676 384229558 196419289 688947681 179636557 492378727 165631563 199540439 998817659 998917425 449355469 752213063 453419961 527958006 562093997 568910697 288181622 775620616 863940669 924601861 958781385 976131705 548314838 891864489 32145506 649207470 262400801 836335948 540984165 999666666 202913677 808903765 557815602 559733650 395997263 711411126 416218468 830881882 758590730 763619781 758732222 984320174 911161938 958969970 235981289 919854351 131697280 223892534 773235156 951304182 495485737 658869291 122221346 143301777 613016875 670188154 844501437 900471647 249889899 949477775 930715313 953478942 873582155 931440156 124220480 399531651 680746658 965171973 339155134 687283534 228129676 793697116 271511715 768654831 530892586 651970409 19508463 953457498 545606706 565158398 739693390 998116248 588126923 653816118 80934693 575779816 52479244 635920677 631551259 927446253 874004434 936353112 206778423 739087115 140458631 897112070 63952322 470230576 15347869 545230076 796943806 896987253 821031848 875288782 673229007 965940837 560210974 787572759 635266671 988487878 695722711 882837974 763741019 827780447 452767104 496817282 185454373 708514591 311468767 966000488 223151470 841125660 384776643 742137769 689202140 851991448 34314107 232921212 565894469 709176496 922138960 996557313 483171852 647379291 711660730 936062393 501916386 816566694 515744977 623239391 433745215 968391446 936168748 960445648 801194129 937405807 269572389 295207696 217233892 410500847 60480456 325966014 103114667 862348939 280056182 676027102 497479660 888145078 216813159 356676897 921846493 988276960 360028902 682865332 927549393 928213294 128278554 434473369 728726386 730899647 884135208 975998638 803386450 920567932 132170308 620681217 251729181 573207151 788488314 836224107 761380122 820497064 281663093 959919116 255968681 896686581 976108136 999748482 138689884 321491944 655161651 989950857 96797142 409718766 90415045 821436747 849594384 937205528 446903291 527183636 634637903 976284369 132251120 882496073 682823124 932804539 969800507 987295515 522289 535555314 62049438 576173222 213548251 489139113 144509961 712792637 620399568 646857564 623356218 939652176 367428933 626847140 179268304 923217358 846306038 957599753 608214142 928256260 100375142 581871822 57219333 319578321 45513609 685830890 125026784 137936702 485423151 683310498 929689933 976772824 273879325 695308335 577629630 611220553 262227239 277857994 783995430 946994939 79832590 535251986 818382383 822870902 835552459 848926685 132648233 398841000 632066101 908574645 271252871 478728403 328299619 574149242 194703630 735312543 629497367 777402011 123344112 649224776 517910194 987135881 350750969 502528418 696785158 902156854 566278776 793347953 284686586 811690976 211144352 271470143 993800379 998774997 886855636 970492935 703512834 789794231 800329385 991617992 108395770 996657452 756421717 893906257 72632616 725443784 350174987 375577120 601424874 646775261 382458414 967164040 161233075 620576292 584371395 685315950 538061367 981691660 651813485 785384816 317179790 786572596 238116040 659573291 235646233 576874675 221326250 940060674 297621541 421609715 106976438 575249471 804649829 861059092 92325821 940153930 657785263 881602754 135148370 930605532 231212895 570288054 293032242 539533156 666908274 690665421 400221872 806471564 220603512 497898248 960908727 966756150 830774881 895516003 663310694 999966865 445464063 795220272 846464458 874972289 376419648 751579116 527888139 839600424 133854252 189023329 921811991 961432291 198737363 206933601 9250412 316410682 160159959 896012957 103641972 874307025 483512842 545423392 512875187 909155493 762476059 935609914 892902713 988723584 385987959 676380979 960886820 961035398 768505827 957028198 249759487 538739366 116084242 932347116 636460237 740930722 137760326 234951635 219484050 960767546 141369249 843725789 711875676 940109626 188983767 881186386 921590856 945800222 509498028 919543995 518305706 521297142 622556617 856377118 742407866 914157137 927339763 937909728 230833314 530716162 609863411 838884131 825342320 987968248 906582530 941838351 102478186 858581013 551192429 956788543 443236974 647819563 638516766 821030933 345826079 941962689 872455580 890347858 157645739 930150633 926760115 987779899 768690296 974833618 185852842 270473851 704964994 762838292 960168115 979573700 517665431 973852858 58799625 783337713 570723958 674322057 404709014 588882383 300238163 753486516 504900172 597851576 756029762 894392611 981074652 983318430 3246392 692185795 815257335 912269902 88152714 222496531 728007954 804668433 455148956 736984667 441891987 679192503 125772055 952611706 8774053 590016633 215111943 293631051 793021984 803668269 220516282 691783466 451548334 901591202 169839191 847225420 194579604 824854923 286575026 867456866 932254488 970252756 735900718 779869414 307382351 537800408 57101575 195071123 970125332 998426537 431575818 630977473 635804655 800958532 32578412 333135370 209192488 587467543 634219307 797679179 340253438 628629462 45911957 560080033 751547867 766172563 248386054 729357602 786599315 792702615 498409816 673256236 43914406 944017584 589135124 981870871 646646549 928002807 25906402 305385360 16579914 934562523 362239189 417008104 885094716 951162416 380111078 715648659 947288412 961073592 182834467 403199724 38718722 661327432 559418992 563202947 267756739 429293225 844692805 844974519 22484323 207646085 58624449 511493713 965901926 972093425 129286112 860984178 545379422 881893227 486599555 565803175 742273228 986937074 843489702 860820052 947514051 998574687 175687503 563508709 608118255 969513893 63444577 243035830 152787366 546365757 161219698 695218970 424767114 554764484 664518861 995886015 784236031 810298631 394072200 945747927 366464479 669425249 369874392 511558775 775136330 939948650 505230804 790354420 146739470 720213268 851953535 954503836 38435492 211886508 376308196 760880621 743439290 934219528 440778629 949656869 139943407 456138855 265989239 383426182 463215852 945671125 906616466 911793992 830760329 978492599 740785520 833652201 891765103 951712559 96608427 534675483 192952984 391367186 353272783 416938543 594623992 984253519 9477792 505948351 938362049 995691564 65426062 915988017 829339537 908027801 705139284 808687347 260802575 452984751 566488055 767960465 423343824 588682945 730130334 982667177 280540357 366809623 699589449 829675797 708336618 713727485 75330880 532874962 121338513 198538835 502186556 645094585 846258283 926479991 597734298 648487319 283508138 521424476 462773252 998115810 171854455 679715597 186309147 733521112 846528091 952600547 748673169 838214688 988271252 996242133 238359778 950894031 214975287 484326113 972236677 972392710 919959416 961592903 824639750 893531428 344233515 539329823 841007949 848275154 50769880 682205918 707769745 782748183 795639647 874752267 999246580 999815955 212736779 273673187 77570132 685531385 790601047 791563444 227638262 800282397 763618174 767134419 627910877 740970529 351975295 537947012 312605791 920372883 410338570 965600156 623490508 743135626 884744501 986774943 428547841 843990541 330145889 830746593 928203046 932681369 225905444 741939193 623642929 890338724 233753735 590116231 60658559 148401379 690267664 959148024 919107586 940252742 261429275 485370598 241658929 771663165 472649866 630323745 283598014 364364582 905820559 913118367 169467246 507152336 694707324 764444490 552783942 824247867 672830709 838097922 679509294 863387686 876685224 951471586 17723059 643762403 398754941 540412779 145364821 979596036 898975068 968327468 856572673 996152724 293916652 853225711 341749094 825083045 791387173 896171955 696618351 945752767 971029787 972223399 418716124 758914640 210774612 329507371 744590745 914563865 317085104 332179166 41066311 882916273 228887837 560404071 128908579 437644219 160260320 736671853 216061896 701344999 546424648 928511589 213114248 549056723 719220629 730208197 230799107 410801685 297950910 535566466 154133745 938889098 362577974 676348900 791662716 964327221 10760886 726645560 501181789 838746019 708621960 852758491 122078125 551745697 415839036 691896086 865242743 870635596 896483318 907223194 790904904 852440938 32473860 960896746 724889952 982324264 264637781 870012297 442884504 543496486 113531956 461350646 321461752 590766520 639212057 844630370 549889664 601554106 887655528 957452352 368774335 468475200 979452171 979467486 319001271 558802423 825130036 968521810 50678723 208831185 205568768 209079722 773080460 793757970 831019170 832854192 462134204 476553138 692731501 946194369 991834422 998532368 561784480 917803309 82226271 847078371 570788869 955823057 947527873 950974666 689498250 799423539 501634448 933174982 481361524 830881835 244990141 850397278 360446518 961385891 276847898 401632219 426634538 701107570 434552942 557561014 931771253 976170186 824875758 951941886 537538151 558191379 655635704 711838633 587304971 742388480 363032066 834209532 752136873 852059207 155264362 511225833 38440692 911622051 907380651 957019517 57314280 226148723 331526832 926169221 465473987 815006782 250904348 535792144 385676520 941098089 576544943 821125469 918495926 919768389 129410996 474224662 321344751 528710205 425198960 654860463 917199863 959357096 296520936 804301519 296139704 903391914 994761861 998244284 161331422 475643980 10364748 205097827 444584712 654230380 375728814 761467757 923928380 974138296 992009434 999732295 565847020 831197082 806224118 861450025 564154874 753343105 374398203 787403839 916365979 949760613 448594038 480310492 363650618 915429630 915366470 993745522 428698465 983312974 89239997 287263731 705572983 932645684 393056866 394517908 408425843 799221889 353379002 565456562 866487973 962923244 70420169 115424989 207354501 797999770 33011455 334524029 469901219 789190835 876131583 891162489 170674889 895207189 404310190 695995651 625769422 866555150 55573722 639175906 339238007 982508230 485075750 768807988 403763994 765319854 364588327 547445321 862523415 890563659 445735166 843992548 356891039 852064966 370363400 691328256 951523788 971091710 399426360 898045910 329445020 420940552 786619180 970656847 378361190 605196437 124216260 799632588 641939990 778027180 35624011 681916867 31655593 671129236 701517488 824347982 20328121 888007331 936957357 991778853 32155140 470025482 711671527 823035019 361922045 478636730 895866141 965509379 547707524 584436299 606775914 793088925 553011330 719702391 69552053 789548612 347822633 463318383 19622612 539219809 194297121 792900977 657687424 975854818 59792953 427835105 733775658 897845702 967770499 970478455 325218550 944899680 70150077 368296498 149073617 329290735 797448265 864189404 62509525 662239991 105732858 658488734 743912440 856587326 330624719 617454218 789901984 981613876 51396976 496118740 511285205 828187882 835636548 954308880 809984407 844047713 222722197 788042518 909102731 940855641 538036612 640558785 595567553 974096333 775038032 801355837 127147208 417295032 503651118 647164796 199265144 213027008 376710961 532705057 413283226 876951245 965235305 981699566 857679392 889301321 211658876 629677121 284956845 721248132 60298356 972882650 484558647 610261146 463848044 488959937 863548447 973968273 395062666 559242343 925507106 940818949 177967239 898614465 921578893 953495645 580125806 599540873 623704670 804114903 962248052 985378085 322330119 666371311 855943355 970532547 282714168 951160843 264105560 917143813 594635256 602862274 106362183 286034020 461807397 967743078 24612350 753719340 838545541 945208906 253137761 792508319 356983122 562633947 626651941 962246254 337448218 550953720 635815855 686681537 543355938 869386006 109930327 184169645 374959403 656337287 346934180 446151377 99265720 321574160 20738210 982750610 813981145 822282563 63228705 333134912 811041355 977480889 96709235 158617659 491875875 916141155 84510530 516206943 46032951 464431000 177969777 237340585 414628376 641406200 709483347 770010326 645635974 706033039 783020557 805622917 95491426 459914822 878517780 998726009 375795826 610610495 74586120 225524546 555833580 661911002 246445676 283884219 977279903 977834101 681545463 910041840 314933044 978042967 586387625 733331873 545892501 726852740 778709424 892865553 918637297 966548934 756520051 987925213 364284723 393668131 5536215 306057272 189808472 987242738 981732331 985841063 181407056 772429946 674129953 792013596 615462813 975149247 419555631 730568219 728524072 867064910 884072601 927931182 342397864 967397566 511378793 998329196 98312001 325170462 869710903 910823872 127063530 195424854 535551413 588701805 220265875 803861998 569104568 790571248 551550619 850894138 786802411 992407190 192760068 578230923 46611455 761423137 983859134 989400799 557344406 824500694 910635148 935835511 95190632 251921457 364180511 944977134 321073792 979779642 731664942 860758907 762929784 918643321 317305998 726662550 97588057 216806830 7876908 466499265 428217077 764979038 829876480 921064655 122087869 625413282 933132245 953472963 586648401 768118971 9612483 649530556 574165909 718094652 987827989 990050404 536453262 792464808 553203243 592810945 329233692 757533680 840096937 887101759 228520402 927738532 377788349 857277758 51085761 973371527 10891991 332007751 803605093 806658714 653899765 887942874 269961233 945757505 463172392 476366544 495318011 684858502 557630299 887368258 626096 732551775 684509967 941979093 275221255 962664846 507354243 775263761 734482253 778940121 277134102 484523791 124970833 786261795 813111206 894982814 424639396 639489935 501123636 697122397 628661921 999735257 582391728 715364259 50287798 145508006 931539827 999134118 948951 881116595 746141917 773041713 703939831 820248797 781112250 872796629 320111807 702492877 241866486 304192530 290267160 325171599 911925521 989880056 193939098 858276747 686091279 917583340 511913865 572071735 22033014 288883214 802009683 894502713 927844142 942511781 173144187 554530963 628001594 775727509 874435920 970737403 210915215 258152623 99055732 711159678 725134342 929057253 876545832 902724988 561670283 701440799 485095473 784392673 847543840 957286902 58490854 197857846 341484734 857281726 866912207 902590169 808732366 904792293 836637534 982560085 84626317 570432262 501909632 659595707 90350598 317721512 35713253 215654071 673048649 790688354 725950550 808346268 534983238 991694734 289285531 893980052 827877938 959743903 653199746 905804302 296156181 629465564 445473822 811279198 704451205 911721125 260417091 838676147 825910608 905780077 723944182 966498078 245457766 925431039 736317475 788013230 224795702 326258838 670627458 729031845 460786767 581460863 62632887 155176124 520493892 854281732 507135037 558344807 295412846 404306313 716302160 910614230 376764858 404918840 56465569 426185509 508561720 736718841 930529195 949771374 47737284 638415721 785305348 975719621 670567800 831815855 382720830 526077663 236325478 458458718 734068823 990461023 87365704 227774030 732683423 864651491 123770789 335070469 76018998 918500099 517168317 873003378 953124574 969526328 80888949 474468576 458695699 526990631 313978808 988392824 604893364 698193511 649893602 869407044 653566377 688143920 922621757 957854697 692311365 941888145 15401300 726700064 9921164 484236881 675133176 905257623 827765049 839831177 200108237 666854559 150392537 966499353 452258231 806697907 965179753 990743444 734241682 873513837 200263459 746955074 505399067 537156851 804743801 861021434 613148275 954232216 300963481 337179606 832450639 851336215 114001180 425116466 207500535 774903348 298997437 399527004 177279434 419733741 21197892 771617166 636584758 709069384 388452399 650633889 339973609 922602710 290238162 786102964 517654272 784466579 236942422 379846350 160199269 241541716 669200969 691378352 778114478 793154487 100416964 526610196 254366069 734144207 886561984 974341304 549566195 981379181 206202429 441072015 51445145 445798427 408748456 501357335 709025969 805847104 895553667 993339573 370240489 508608470 808293559 949345533 344852783 520218057 961029317 995373934 51576355 317116612 730237787 812234676 721362965 743025248 215773496 580306238 321915746 974909639 37114499 806052485 644014065 969509409 206876344 728237894 273427844 908339271 266173339 794632910 233104250 424959958 890078840 913372105 475338495 498167167 384999431 746202233 628334340 822908030 339315284 599331169 671808897 780975606 808958798 837179368 764816586 874420216 72368195 888022552 86104897 765434668 12263657 824572721 653249160 691157495 883953104 910396045 47833202 496251632 746972029 963033423 812359640 837356862 974832911 998637615 112774700 764978081 112617336 612696423 316721867 729598941 926832965 973417835 645999914 900134818 153216753 933622412 872361930 917743148 129337017 863341214 456613318 460122185 793646781 926124323 49964944 95717483 538294934 670045564 124002005 149546987 263808388 761159067 840810744 966782430 595389450 956840186 731129474 982812469 405096786 904652545 480344427 966581971 836781798 848669383 940229165 996968372 34077948 745817060 681155369 912305245 352696829 497035097 382021465 429600346 984809161 986392714 758349878 797932848 33747393 465705952 956072767 995913929 658883153 978636314 117032879 484182242 271972258 922832577 771750718 930217734 535941304 810510316 967560440 987677550 449014081 731602626 163573680 487647572 559156144 643479024 455003297 641820019 877551223 975298608 731780803 811872177 598142264 954855354 765220159 791313506 518634366 710137999 152623722 772393408 84015423 828348121 812649497 990363577 942251905 949252109 225372768 493785184 140606512 888172676 380878164 821183205 315177637 930361129 641446468 659716117 995090268 995504502 952750696 967604374 973542291 992469611 154802194 374204105 473011687 559258212 420665930 804742576 448292350 996199829 68195728 330378242 799850196 922825151 888813489 908370259 266245436 842658372 487224505 829601783 190257834 326823244 646192941 804478124 847602080 860130096 565998101 878588911 449279221 714253038 404386570 609677248 914888387 969366654 793696826 892650698 999175308 999535065 613581781 647710760 711090935 889025212 541753704 754460901 91677707 805159660 621279415 948471747 53864687 672685706 74192032 623457543 621184253 737309479 136931536 985296448 914559378 952466785 422458592 978716817 848828958 938047386 865388772 988993044 901572234 929160675 827018141 986853091 309075503 728325195 91780818 665695500 143222257 958186543 756945165 828090592 831813863 878738216 62092889 535432341 5700474 405638708 909701572 994992555 797998545 813575964 482294190 728303128 497753015 775361383 966873264 976223818 877526001 913404046 690472775 710974453 812157992 933742147 183266285 229100128 736006790 866318778 986432768 987212098 474664264 954539666 673038616 734396333 41037322 870813560 202647516 357429207 875847622 901889184 77721367 295536192 392659058 877592694 69225167 579701037 10488869 932584085 414600502 930948833 955043514 960294827 822680702 852731721 267588092 461738435 136911737 307222202 522444494 887134444 478233092 848821324 525847722 604466151 546545466 607621256 974019740 982304607 191493993 876572501 980959365 992409449 817552925 941920108 736029102 763786061 339264218 407668758 606915733 701930881 541155384 569953142 294800967 930917578 786688900 867380642 623612327 740418517 117075422 396981797 380640385 926952031 232097383 935502761 141226034 217417952 653109401 907123474 935817968 994810654 431437920 981483810 3872356 385247903 796435708 821439089 879921033 990274527 711338048 831956084 591099783 985779280 738839548 791872139 135020859 975283057 611909909 846361138 211618610 231194970 104021483 604304751 555047237 808632694 846841045 864145386 377364363 650186914 384793654 834513543 93523826 257091308 301856820 769279856 727246034 760889328 490889967 592719355 718579572 851289041 902307558 947338374 498170665 618964075 184361215 845761678 389772140 668037421 932687386 951056981 924813436 955964760 800256607 904465586 110632673 806549509 720763610 831973849 191258864 218522754 568234650 814052951 868037603 897730420 646551816 812148994 179941159 815498935 300806729 993675695 314622133 566621305 48440198 607182370 900423922 976829419 446933678 688884601 989929184 998094740 683044420 782481962 668251224 846007310 90444399 281453952 704816563 842611848 546003500 920166017 651610149 838018837 512644707 866610196 573023797 685145913 622393109 868314259 910647237 973019796 120786294 399205304 777046982 876827100 739493761 771389939 77506764 964381668 741483993 762511085 505233499 919621906 696709850 994116968 221667400 875737895 953270905 970777128 712459921 981932606 849342870 891248754 866763584 974967843 758745119 892651166 746798561 821763375 908536240 924971650 597693065 919213407 623188480 744510574 626407360 919277432 580768247 945027211 577929776 992866094 660503602 805596047 142962810 485485529 956752871 986186154 739559913 918457252 186499296 733212788 327581887 858791819 572581433 742595078 986032305 996546289 857742914 919477166 781325860 940272425 646065702 913032566 872258444 907499160 250465002 674298665 810511969 986533041 826716640 872285803 97875563 900352727 182895213 544187521 534819180 907171723 341536917 997387944 984486726 986388185 212903173 609150602 112550219 657554384 843212497 972971580 826975165 851777114 94336479 933564554 898681155 999972686 367775797 486961714 707937595 745468200 907566630 912863145 599860087 872781560 594317491 828339128 17346604 558451490 599945369 839613798 116957459 581870359 931126011 946309050 174018712 361899027 675518837 826118677 935480238 948415202 878292086 976092062 836382875 890907702 840315107 857608921 265663592 604899293 938363572 944694562 985467846 991422444 129935274 569293111 239665296 267952258 625542665 669577043 74360734 759704959 467164861 814581976 296785457 786594040 462386755 982009126 708684943 901970991 444606318 500722613 829447048 903512615 201975485 431510314 894893114 976503355 877614518 887226018 787699668 803315410 794006811 858698150 897714829 900920306 284858910 372485743 622757136 937534798 317404382 653626325 659528818 877026213 109395321 518509635 43786448 638580554 624539909 961920398 127880226 919519667 251338282 866034841 298857363 729981917 521440456 708683957 691309152 771045156 217533555 856747506 403386123 916289414 259860873 488399459 573430202 810299255 327879313 410328998 649995451 926050426 774977894 821542285 932304042 942898010 323174999 937244363 840406390 869602098 273813076 423373653 937819045 945210417 660582099 877427768 812601872 899185796 90203050 644273595 411832306 713333810 194449436 377815725 659922847 746438454 949708723 950381624 112845028 541126187 724719984 853159502 225936567 861191403 198090930 417267747 751165919 960748748 839622038 935426332 832953447 861625995 824053971 868532873 992710196 995190774 667112083 929825366 914784784 936811876 988736139 993616498 364903483 881162506 807817641 918997985 798736545 865070156 279931693 440640861 343524337 489500144 603445300 823702732 909809761 940883898 770808127 820554189 846449681 891459958 325166946 938442162 736165435 786296478 868273362 915968797 4297970 755563817 747862201 852558883 16840156 932309349 838749986 905333506 75529955 906085953 268859717 891529351 734960126 871431596 131949622 909513145 883046087 887721963 417591584 553449146 287039039 755194773 905699308 954042687 825679834 932806119 943517502 980407877 294836043 803117773 331357965 621354527 895587534 968341604 534543755 996766674 932805299 969410677 968898703 990927551 598890295 692480659 507263495 997774599 209686818 783376507 189494840 512915527 821709119 823952637 690681554 776832187 978600448 995481469 919386355 961651248 269320860 703697456 542005765 959176407 370655113 554310518 959844734 975442319 24353293 507066821 574327356 861935594 238286600 592126969 151235564 883992715 712527908 792312601 678927405 804764959 340508092 552007087 792864176 922747424 771937761 833401769 937410777 977202381 756081455 817678763 825303398 858006317 32863430 929984989 933247492 934530410 22731520 791481243 447260298 462045798 815374290 913276998 624150579 733706028 589834144 630201527 173647217 788541034 795485718 984571246 660952061 665106542 711347971 919083594 950100827 972424609 202531851 531728482 645317002 892797624 91142662 315978404 9975351 839644542 660901334 679934228 99040659 496087927 593480578 835482174 246282757 266317646 597582918 858890966 132595802 767439454 774148100 908985739 954877532 967663503 731744931 893920677 144481340 365904874 308874270 980838154 594082529 652785905 40614774 203038135 764733866 896718230 230886532 309258521 61306479 337200353 121506698 409673693 311989582 729071374 786830436 797469035 980830992 989603242 726168746 880567360 412582000 996308720 570292388 885595205 839148059 964904077 961091063 968162564 750276200 779272649 344088619 614731030 399211169 561995151 691321559 716697273 835732344 842544009 810336893 895406241 710207203 793177960 789937236 923862362 670221100 724049577 250701263 503845831 387611277 424506725 90428876 663084444 24716252 868323440 411551520 562707065 59860971 632803796 327050364 455458269 994503228 999048907 169265315 746722339 948093855 987080607 832356252 839669257 319234692 947411713 655062643 985717903 184192659 284586189 87364446 262156819 792493605 920145980 820046079 839358611 108870573 582498046 823888552 862197835 622254499 862892305 716717890 821793551 837633001 892723922 189458101 673757823 208913313 712368593 900545484 930684661 918493179 982973624 905305742 963737531 969243404 972763668 541361058 732169912 38082524 103549366 278541921 645611723 412873756 434543888 937378878 939931206 96354547 184367734 828990128 990433541 974828719 986148860 738450066 760335822 347004110 413817565 858234458 961466817 759501192 943150295 761836634 900100520 612536816 783443279 814208759 955739547 195418897 503873035 332450661 390926615 113414879 423168818 303052804 962015450 287175629 428175351 176951667 404413871 717336461 820210448 948884915 992852698 379413247 442733135 509217427 773001067 635038589 714847147 149497817 534405019 49966584 827541010 890395491 907184126 391523027 742128738 73840252 761538926 722054492 809592569 128598250 579309473 275048033 289436426 173465589 876924493 428489782 569491075 626956011 753206874 507836379 854406799 747519898 895296316 51306610 442854957 588929085 889474088 798714717 846929924 279524439 717074673 597866185 693045965 756949791 791994569 724487043 939137601 325349819 852750577 830569004 943675355 568281291 837953952 285736571 813058891 836791168 933232507 680335482 883061728 702263099 816580263 828751131 980096686 623233049 808319106 24655826 47540214 951962995 977476544 420488687 561355801 48145896 860585481 245930761 662856312 721430987 812770589 563361869 828140037 508094665 727168319 978152117 984510987 61320567 940370949 648314605 717022039 242779739 894100911 820461543 853424193 876981413 983454545 390852180 820637253 426044644 715593003 686712854 928806680 25435631 256074448 885365860 916778503 468925170 686265702 172255310 701367702 992720114 999780737 588665960 957159510 77223429 412799091 948144772 950406482 581494470 617145723 612982282 665121610 614399264 881984442 791088607 847803185 563319900 646029763 358763023 777514048 915992580 946176705 886926404 951556869 315110558 965784232 594201753 838792188 226652984 584259309 866495760 906401070 684408460 754502557 116427122 162897371 78115333 518330948 202631322 212698744 323284205 698504501 889281881 932379869 91994171 633353940 604007925 977733245 80243111 340199528 723336871 951303687 94539296 430467617 804235187 968562056 633710545 884359521 993235969 997883119 787727883 819793758 503933103 608424583 277927304 525251636 730853952 941739467 950277263 996427087 439018273 819171739 192282924 546341018 4656621 371178113 880844813 941015330 116646225 810170563 679704865 885724871 301476453 811672436 103937204 668347943 183894800 886915389 437001384 928138006 802226906 932129878 949521780 981644545 86354557 653606542 352938874 353985069 487360090 820268185 416146747 931834344 993554284 998376679 230285148 986756679 418714485 629003467 262729724 513809474 767257035 911123819 483651700 810649776 425918609 769025390 804277712 985716925 853279010 897451849 31204910 570363603 379542851 614582007 994075144 995397971 544732316 977214354 924780578 986144249 583877430 807244561 901647839 906811146 827161530 965278248 329240305 422373769 16836595 107138637 201328687 915891133 243359934 929429992 806768722 983326569 238059742 292968093 597795929 692266984 267073809 305734074 141688840 164467197 68389683 150981516 166164513 302436144 295526644 383797246 485446737 755386181 920683826 946863023 152301227 725880729 433518281 999993672 721522862 904626127 519787110 975874050 349483707 392653311 744252354 744749238 548659781 636804207 518737602 939009750 184548735 775280888 686976647 795358269 448816490 613250945 761227528 831827955 677750556 896990348 430785428 696590894 937205543 977992210 252379489 931953335 977075832 986737069 92834069 694501935 418309389 709787036 8001240 102094984 786268450 862568585 508637018 789093765 775095895 947650447 5252920 145427936 234614448 879008485 820594470 979885763 274929944 569299530 928265116 992955966 149066398 233910992 387121832 685495607 283345634 925811279 654371395 999751554 919362649 959991013 337389843 844934794 792333627 818167356 504228647 610804341 358834079 936025116 236624601 420294577 380017255 908876985 909985603 956238181 822228587 865922129 597327251 958097705 235561189 333538898 967417878 981392612 512422579 606288210 73685103 668356133 949314061 983875926 456934621 854883500 330280441 927203258 526950501 634005708 477824458 766585702 735330821 991463325 716890640 816312131 583451425 903117010 847967401 939884785 951727342 968433956 973623666 974547329 317932289 943057823 420329794 656422189 498015815 951085055 692439365 826513978 340665073 457411016 513183138 751571896 517347177 836393538 64548977 482156319 326911442 943099786 486603360 923255074 400476972 603202984 544868866 597348295 297504993 675993869 783310583 833092213 943731069 950891383 895895242 988484156 408765202 419875809 519689208 712256649 121524145 659443577 165680511 632912504 8762135 741943044 865328012 899041602 421246135 665235610 949660430 957062742 76634111 382077051 180584526 642252955 496232196 502169597 404387108 557040030 986217566 997031576 652961101 824769144 299006823 519625905 479044811 976806062 925167838 989292532 488108332 926517951 413631866 500506662 829222592 879695402 944622248 948952531 262944819 645806966 533138303 807900648 936750792 973019637 292023177 675217824 691640614 770075021 744283541 946445064 756816086 812650613 239047034 588835414 312495844 776611457 172209407 743966735 241027405 441908502 150411931 532993098 877171803 914372931 740302613 906348285 549839607 929633429 402359571 888480908 759466108 812166663 8824656 936779482 787372321 957466548 952264352 968233344 594275213 911786231 241707550 654978937 515409965 706997297 579705479 615783278 205313707 301921026 647261438 799756191 369045854 412077512 844766099 962373196 220311403 486374715 898528065 962368210 134128867 463875334 251438275 866445456 687608008 815764914 956478057 987816035 846924355 850305674 579686225 780908585 250878122 404272980 518360696 622765944 685418899 950089069 837717283 870400544 624586705 940188370 624695240 776266934 763918858 805717367 555936117 611148270 11536914 521922701 624778281 937677885 715250180 793450670 190799420 235038124 262129017 519920057 891728953 904005829 16181692 744165404 895604703 951970953 85391703 132734043 18583190 891160938 368862955 508266413 586353334 998011927 695560418 980628319 549496034 596531254 417171928 555048231 383907742 429993661 4193199 426257072 447713914 765231659 297520984 849970335 674003201 931850050 690810823 832735768 753407943 843268509 196504303 264729605 447630357 681024520 477789162 754445724 116300070 303013795 259785963 503848220 726223272 954524575 392675938 427850675 362449421 675317961 407468367 829580354 376101562 479676872 58820713 889145617 594843636 797039868 802033203 979194723 582434601 745008644 50389419 869516783 414910424 913908408 494310490 770690826 259151030 338851471 550440783 744795663 507150110 916247890 289581000 961276120 935852612 952342844 868062377 926813515 992928601 997632131 775402498 838259879 964231935 997111351 340507176 822395474 141414116 503697395 284984469 307394958 784011198 999505300 304781937 586908090 598499814 774244922 209819074 595044066 329127377 487266086 881815680 943041175 691035452 758566933 448528335 728375684 596366458 869268228 344740399 616922184 311129009 853237046 310369289 908217236 337379131 875829478 598823509 724713537 44233293 654411619 247058961 600098752 398363759 637498657 728442343 945236182 618862100 934329947 19264744 447009601 344518329 561590247 538977160 771724415 397266473 822697780 915714377 985760167 659505552 959982860 423092496 707130837 788214257 891817945 896168617 998810065 799694867 950132121 896033882 988261586 870351281 962501961 90167830 393092620 245639177 272452675 690243935 918410663 19493305 919962527 561587983 897580178 805586079 868906442 145244235 840034663 500763331 921885236 709449701 896650267 858150192 911754894 567476766 606931944 258714734 720189905 126049436 841008989 185904638 691987948 599470518 888323882 673543042 680793841 346652138 793516886 960490419 988304533 120395847 400036163 434755059 563151125 639049044 700882666 431323601 434541137 832448936 899716791 214191785 887869694 885009939 911679019 412554233 571551483 397993202 576911888 308560863 722181686 553220739 618855057 876084659 983336532 6194520 749801718 778745836 906740229 748692165 948609255 673472145 949522834 252197425 868329282 451589948 575013407 963596608 986048592 49446232 405761157 350956928 362520929 727035103 962063595 865257585 956869160 377562126 613738767 344120010 863320313 409377465 865437215 303352429 857905474 202570674 860411601 480611613 877832006 228211626 714161735 766952761 916336886 453114996 952275879 478729967 493472210 1723486 520346473 497525109 948137741 103605151 624213729 444882664 627336345 697801744 922553852 418055800 490503870 828201254 945143997 656102950 887306966 341617249 968327077 764887844 789801805 122400253 698654884 555844257 686542061 381811645 503296432 684763069 874926006 241591001 395612553 77682790 996626053 537770766 569636741 727187999 991253293 100531408 478580841 893896592 931564285 842095354 890152560 674812505 998123928 239196293 905023224 764710845 767507272 549548070 860382740 408246601 961680116 314270679 753045761 723379504 906348089 876670073 990221548 483231020 661356032 694100970 984817272 121528208 212212346 302482602 565214746 804242665 888981382 357299841 836968258 86167939 948379009 799612705 863582174 121245824 798757742 235132526 665554042 132776263 601246515 717623475 801502268 284244755 552196689 113217831 774127974 271893643 883946729 927999923 945516620 618297976 626433277 404690891 869140988 125089203 861605123 350517428 850025490 358270649 653688335 665829549 740472931 737518431 808699561 368385469 522536047 681374231 702354223 348965629 638957689 195278860 327326468 379138314 406462146 807692203 938103747 688871267 776666877 59202108 873913184 280393777 616050796 184000272 727799182 695413801 800745243 288646551 720209505 746780688 921992939 912428167 916628783 468915181 530583742 568424788 990269713 938993720 951440528 573282257 654506017 324445078 344403206 889456632 982171856 540153848 931581692 627359107 651426784 87539781 488922823 419068607 903556341 693905297 987043197 794489882 844591671 365585301 872514227 328376306 655085964 347042910 479854001 677075970 984076187 973943485 979186716 135292848 227582761 979310395 980346392 471796791 759255208 140904566 313308954 582895047 588616609 541590876 793017027 399748281 872544290 944483352 964091954 264858578 396274796 425531544 806774467 221051940 859216418 862657414 995214802 524672153 646634724 774741895 896597304 212963719 275248336 856927552 965924556 463193955 808125325 563016033 806100005 244990362 600144880 630260961 860862248 880640554 984546844 52795467 677463700 547551239 873401206 407626017 852111557 725070941 938020417 690092144 958866702 771368834 874958093 388602365 988775973 586353717 993827187 969753941 978451907 704647766 729109371 736497946 986026080 526690672 651364276 260787226 823184110 964565159 985951035 124486213 391440186 394544557 640472380 133527178 966608590 546950878 951460193 356356553 732561461 552642181 937273090 763171642 926474834 61125862 874218431 708041056 928600478 501705768 885181974 48495234 372440576 49613648 700286500 27635111 515007803 311336016 661073830 542910774 736897990 121778325 312613701 249626986 398215914 419192971 719191766 267864521 648574368 375362668 518508906 351385571 479862492 73547045 649547615 502817959 919197002 930077290 940362537 373326730 781555957 926759445 988387311 235178001 505374617 214379386 378015336 963885363 998394989 186437095 754910711 324598236 989234094 564649220 630808315 221727203 455929908 214171086 979928890 562377173 743084235 865063137 940200288 614267556 710526765 246108171 588229806 296405425 912763604 513064759 641253905 362867923 372977143 712267254 764368872 558202719 843118723 947171417 988401102 228513769 600722383 39859640 181552590 29027092 930076500 313802048 378923347 206122933 460761850 157698135 884573918 75151576 153542040 40808150 521543000 862643140 925661405 978555834 981943886 586173020 681034585 455563170 933312659 252282670 491820469 933008955 952093064 192321023 554311013 161677716 237744508 795811906 875937830 595025392 758818228 570069754 908186018 465062827 793056876 841973803 950896674 810099076 903585088 6144984 648364347 168482594 646486049 381830502 813651539 716651500 814952658 282432489 983779437 602576662 703112184 855630679 989187999 458192906 669391235 825508316 843211323 465120923 749232662 719481784 933950099 729127356 830345958 866380565 945834073 479867263 992155772 736642631 840703945 861564138 996536140 412292771 956428897 262461831 686533124 96225101 637996282 70497200 430767198 946843287 981038441 237596809 961718294 556276144 791255485 432698193 796441028 914619163 918970204 432492781 615678385 727742297 941185498 555208818 622129645 583724226 686948254 154228076 445889867 363398140 850198188 101728649 826059655 848091057 962534514 675301117 945487710 103795516 578866476 857373397 963509899 804474996 951414203 985865149 995382546 678509867 989753363 655953397 936453949 368769029 575052578 66925069 856527615 916336948 959671313 105012438 799264046 979089704 990589237 67908511 670432190 551984649 698608211 960591118 981871880 296258412 395356399 339854185 950942384 465187527 614962691 441867073 616542612 869580198 902473044 10811500 732640370 571176529 678941102 83639262 380425869 7211545 900901986 772636697 799905393 497422850 545445263 544528233 838020903 823719256 960925883 15605949 552188051 382566766 935874464 212851580 717657922 967766545 984673479 789918177 984608288 561604296 929600228 748503504 796742531 518520494 589511155 613733862 903902248 380087652 697987233 552507203 715503518 689666474 731765217 621530625 940172440 121517769 693846780 500583973 934453598 510457085 615402881 832264094 936666615 9639013 438825755 899677764 970474750 382449495 584132213 289876 863667742 618276251 622610395 981268624 984681913 753910824 999643029 699021453 767447325 967941196 982659506 147998361 458141204 485374166 758670974 270712332 853764893 583523939 957116594 558351861 797988306 701897266 980149459 255551654 982926358 334946932 837809431 232950747 742021831 652532029 987073643 862517928 972872896 212331208 783056602 938489113 997650938 735203530 801863109 315214489 849540344 796685529 908302887 263197898 564877274 714898034 879692473 908771445 985201545 707859249 972296262 951194488 994800722 50746364 174022415 937241841 997723756 540334854 781872972 64897520 437408720 521660587 561999935 288891538 992720406 315145322 580444028 474858179 648267598 241401329 492809821 859370829 954233958 372264858 596912403 918178114 964658844 228970423 497350566 43983069 53537191 527489462 551678876 811014763 830959646 104198437 931146512 307616216 569062383 554404469 902555852 153547803 667864282 111020716 970297272 768679939 797303783 359359979 573426459 992674985 993504316 472974146 848781494 762228661 796701406 299248720 516338951 382816329 568107329 91247994 442837303 687843263 915531851 201178805 585766998 591902717 832047569 612779187 941734567 989643919 991890071 418823012 812129681 104501650 370393495 530369603 852000902 868688381 980648174 850119366 870866658 318496305 725909033 284165038 811422610 728876885 847359100 428393021 875424325 726446336 747128929 192607816 942886836 391379988 691237427 100156994 879995942 469365968 901115658 784717628 786019692 631465791 831079665 137497379 285852545 426762876 800999229 640224717 999048789 222097516 777761838 423481589 512075719 352042326 613801062 870862266 924303300 601492292 938979120 325150874 620342095 350862120 596203961 443029117 771508041 62070325 379243109 551012503 973684191 563292631 994527635 395573518 983602743 496350438 903353603 833737277 975738096 650031128 691057417 693413872 807497374 398616278 500615819 208418864 693517816 750920323 915522335 692948904 948289972 634268113 859958428 963911191 975226532 181802789 262640696 339671988 459346214 597514761 923164873 328190545 339808641 350538385 968620570 599030090 926898639 809539839 997022287 972972020 975845134 928238468 998315295 721195766 822698970 691370763 938509016 484460004 932364803 133151566 888756272 689852922 868232079 961130313 961892699 349837721 771955729 17666904 247066594 952340865 995988725 49483929 527685064 884252618 920133223 343659171 417264873 867332910 897028701 659687283 746668877 100750299 237463378 453981737 479502506 44547264 572580254 626563466 866368805 856946343 946347533 379108953 619064222 397104894 537279544 932553752 949249209 989083264 999238852 106451318 532202549 976655387 996912574 984124452 992431404 575981189 633327314 252636400 380607683 698844954 766348840 747464696 896169766 69996797 886167765 362743018 871674287 262960224 541576685 277530708 432157342 260916952 329650688 72448191 778395120 599001562 704647529 383777306 799584007 818173170 925775442 816314065 870068488 382159477 626981438 325626113 507230944 249216718 699665517 34488856 720981775 562121340 782493158 917889294 991091843 86758159 611693528 862779602 987233173 564337025 916546352 495317596 881720179 56758209 519652206 896771429 991539310 874462872 940778139 787257452 844700546 436284011 819783298 21803072 38953108 49026426 205202087 453903837 588058334 778519093 899071715 61442892 105900012 369847246 413256619 266609726 740893884 674214191 710517080 920836901 945630527 6563376 108279746 131943221 882423406 851468803 943526022 347306183 861044885 327038731 994602640 875775092 945166240 499478125 521242579 432578383 725988612 432459752 676704605 370429518 598323187 28661925 802720985 506454536 626378717 790362990 965423969 33270207 959564993 498114449 871485112 562255983 714595305 778302902 836086228 217506607 609108683 86219655 880745951 360541079 891507945 474969344 712168063 872841976 929509272 79058949 709491351 686965961 724212856 385460723 572127207 790783496 869061848 628059910 871066526 465913534 479643781 606382700 956716907 380986625 804388992 260368599 544895901 756430414 783798684 627803870 879711590 648560960 937440833 82228711 152212799 89964411 991146247 442279646 852245366 403277306 636195391 730660588 975476688 316605253 570511597 597491381 716144041 245864076 824280960 496518776 806394730 897674298 974585222 431753161 954761144 151438996 609017921 170677543 686658633 282053153 758923689 15201489 796341842 63352479 492897503 946212923 960827768 672734865 814644657 24425685 978060844 253147229 698727512 163973471 563688926 152597336 458026049 899391032 902522332 967650690 991857621 648532944 997075235 550781975 926803661 446339143 912796212 629420888 639176038 574529059 625163188 508817872 569873478 792171534 976771443 386400619 408611888 408280040 715546223 936543385 987830452 289226038 947520305 918213000 950486676 411365112 770505064 84116981 623724553 315634797 913673851 158250928 462646482 177328310 878090217 167363837 374203195 643482393 987240454 712541592 783154154 583899824 938242567 55515745 759211310 695891640 969886100 766497401 975683877 450927287 785750702 186803192 499783137 166275694 787055449 398023928 508596767 512918342 855676752 625726174 783500337 735928504 974402726 873211485 982839515 443691939 894144756 938216244 958130956 814918222 888105303 750328825 860571318 597620658 947659236 180449382 890520917 609258094 634333730 462439148 863413350 842416383 876933637 808571811 918242277 467979714 760346040 241181285 577521008 956966608 962972624 748038383 786878564 382239639 874200190 120390178 597371364 24867196 266094761 42269756 143881618 604952406 772888624 714574398 812149921 295707269 915732823 265235892 852120875 280305398 739668167 664466338 796591737 643987197 764580888 72831074 724601990 681948458 973275951 542268508 958303062 366366900 764454476 860672866 926956267 911414096 982926105 541530021 645076949 620915856 733318251 597815052 906176320 923715320 961303855 845551304 970157737 318386818 952080254 798373929 831475967 585872408 641926551 609447787 854241775 64188850 553402483 157137154 463898374 187331348 396019268 234806161 974917181 332764470 467855382 110263192 855652830 705682881 817190956 638008554 756106590 135160184 332689838 430929502 990277905 544247957 893852388 737510670 950002123 292102670 555900900 973931827 981764779 901192095 970114438 676308805 826912652 443072013 730350287 857493633 996799024 725407145 798932084 234231619 741991893 664206914 991677764 387180259 906059639 969561716 994206391 300030783 804349450 387465324 849370790 977952891 997272510 917125403 999591098 198212432 221019381 912268261 981865191 104962436 556338847 374406101 743698433 942238683 955068917 154282655 694334305 945566450 998949809 591543337 983050567 995068188 996429855 188325883 691273739 202289302 631118222 724706445 744383274 897806909 918394497 608877084 787939218 701555246 834782776 496750170 774027330 855933668 962587619 988423251 998431215 190598572 801856379 975602789 978089434 828247311 990814109 381003559 451359218 653419484 713505324 296797494 679382228 400081360 923894698 69298012 292236620 59079503 206773436 777637660 927516888 169298167 917921982 154952917 532693453 92998878 134948331 260951119 334989560 479041412 931274445 992875462 994157010 14856428 691642083 116075400 835970537 301092543 348464038 66981785 816229126 558455887 690474939 372175529 849618577 370235332 692052273 239736610 650903287 832074372 942629280 601378035 669196945 312892258 348012735 307429058 463399707 18429038 531558701 844066857 990809599 573367012 690996169 600405524 998976531 131219179 260325987 362999575 512237670 882707943 948723754 789586489 797858472 852856616 858690568 123938084 998985624 538553444 647343124 841711813 961008251 236087592 647380295 392941100 898691435 58365862 351085770 625286620 880090136 752864341 793086814 989498688 993165347 674471310 791062139 507123927 599722754 928689225 937280960 257968805 967390196 682954140 784394399 359738298 446076308 613400238 631548243 515229415 787666208 362441022 605251577 336169296 512920705 912685431 991434347 936185139 986212569 183303559 244037543 541241740 768338244 820973935 969406385 247779818 638440735 187950981 294347611 799382681 910217396 48559466 627702274 299435456 742721912 231889163 576209462 401413756 572929301 970325790 991985347 171522454 829227214 274159402 992875990 55721884 624906194 99622625 985241515 965155651 983527026 596540297 776695938 654937681 899524072 104201717 941822971 863210892 891222076 988241154 999714933 274260689 429011278 460135542 472218667 530078766 563451098 884356192 964774393 757212238 872010702 958616902 971913043 694085198 705938520 619606792 878494860 314696550 358617982 967125346 983394378 399551363 806560887 818070654 873811619 827111070 932095391 116897633 150458888 222829538 369605284 961243240 961432823 167825468 571303637 941171170 967055288 705480625 995119378 301462105 897080450 850873892 925445041 35168795 971546910 484771184 751529057 327497240 330697231 964488311 987495064 60836460 218471558 60580197 760912179 891737614 961071404 258407874 763367882 589113378 789804561 57946570 504331738 324664790 794702865 22575437 506985953 47730236 52268273 806593968 843923513 929140506 994253671 81872682 452388479 368935887 526556926 703354070 794988541 900137143 936326944 717657981 990213378 885331325 978482282 385238984 663890104 60985725 64433654 269072479 972428734 605466819 775318702 149567304 983635975 413617743 552122264 397727519 932003770 95624111 801871162 435005149 438875832 515452810 778326644 697791895 764720283 653481232 779578325 175398830 908402649 438538170 847995871 113651027 705946371 427700312 615565727 655960564 717735361 562406727 997640047 655429421 749906625 112455908 582170788 453052631 770569457 707145525 873358103 124648568 851402091 937029030 937484160 159572489 520319928 191474857 924315087 213047042 959575601 684344836 954683043 68756961 977336102 455270204 803679252 745128842 873209696 734036029 777300235 813839393 871990823 999835142 999987536 283778986 639405356 843821082 977062097 131993511 864267050 747893525 758173178 24175393 487096817 199224819 810716772 482805963 829026178 964059205 982029172 281336968 931784919 460457988 739070687 812423490 868635212 81480385 917045983 21759655 197961261 813021123 951825279 193675685 316118146 316597028 741249465 474492630 486075058 348096596 998914417 487322162 912673880 576627337 581924874 746395641 999479403 253533687 975494819 997337876 998622256 788473457 858125379 697874160 858256527 588360939 600760056 572356244 978537220 15851800 531716954 994362951 997587296 849726141 914418496 98765054 618905778 437114511 957035328 157134959 423956455 591876172 997627917 403014649 963405746 656456130 728687591 30838100 467728696 312447200 813047887 963540826 975618728 838452162 890839318 827048867 876317202 89288304 224627375 11688620 954495355 840047206 894997499 737593995 820369675 77244563 420930333 81457046 343197856 204112535 277890419 760823563 853744293 995411352 997981186 675102397 799765250 122425957 248740878 643600329 702348284 462535110 637009574 730533601 919241144 329392002 449485792 797677916 952115544 131318795 282646107 642754515 767004422 766431717 986196149 115644264 656388640 416719571 782464007 287765418 561666827 563209069 735910489 121452103 720832525 206977405 849016859 221107080 900060287 85504798 702199632 400827915 468278987 174348848 847160229 887963863 889209545 362374689 905279480 363092143 591300322 109955667 277829116 691300919 956502036 343192979 791293035 616449062 836071712 236244064 513853588 979292531 996836092 283988688 767447315 898977998 933723712 298622952 319481335 463415290 488774916 315524013 367713553 903677300 961042670 756445763 797572746 591280560 749933819 72317425 166637164 23291180 773219371 471618252 975695841 528459509 535444367 149075610 613818517 317117559 822752446 49836850 74205617 846358538 871565396 674518684 975040506 68099987 150037649 437465718 928340116 253360663 707594841 245674835 620991518 429058362 536131308 733052619 871908104 720197014 897979887 450881720 564946343 970161084 983427762 461858359 796888052 951094595 977389433 863244985 876001140 914436285 949293897 401793933 814216613 705773072 775096546 372664006 424126052 40357262 756610462 139995970 941765784 159916628 333965227 918470365 944096518 132842794 948105172 679981076 793495984 190302051 597278853 429703926 669825845 882608386 961958048 626703318 745647404 529157565 777867348 997727430 998081896 700760965 879756612 939423930 996112466 669552550 823928606 527934289 642964621 429266902 559621501 872367336 877244213 971269743 995074499 327913159 956201521 977763414 985077835 985624384 997600933 197704356 704026726 676589184 801815920 169732151 861600338 188045918 467714248 264299959 755545517 61991645 446563311 56156495 561880086 410031445 500281377 437743916 602334312 138390110 704048184 133972795 981372453 163159153 194895229 221787236 269751163 209055272 395258402 369833835 427846919 787552624 945108593 66610314 170082419 306788140 776143345 36280931 327685592 802990203 866676111 914431969 964231553 500964989 909086649 544055758 776507188 815260126 952036391 489623277 750890055 12925411 468069005 51449421 260272668 204791523 346074541 160131562 250597220 876807559 932092593 76720118 676885199 358053512 713454090 202937353 402755440 405902917 855944161 984796115 998180691 776543068 972088464 851631969 915794894 771640542 796807465 446998893 725943465 653881024 759740063 210167388 409620863 31181122 399316437 892126713 953596796 780261178 947114483 621787312 639675925 710886978 901357467 777771988 810285731 127121761 185119909 901346089 943150592 396610273 806860036 656612109 865365075 605411501 843777827 547927690 912208689 206276248 578929497 277104225 693785322 425358144 926508713 872780196 884095698 353052791 788337270 420513251 607851065 959749370 969437661 733913959 805605305 749179987 923333226 664645030 928311559 685298826 925932287 471948363 920680005 103293517 703954588 172229790 880460599 668781988 691198212 46419956 892894101 212469154 478818447 182096455 907767845 929184770 970844849 648990981 915193844 327642660 845031538 531719888 595732054 244859511 818107172 610558188 675958823 280377844 612647421 697365665 951178521 309889017 635893532 156322649 760109023 989630542 997343687 737876002 844449068 678281082 775561794 548395301 594963150 4210457 207898702 637174125 641644977 476792829 540356556 37562967 933744463 780728316 937738081 863802676 936038964 491888178 755190437 310331342 440529721 471983501 745792162 113564171 159746632 322537013 492431692 423416349 716501580 160971418 739538082 499224825 508483427 147284840 469979383 170615205 963208273 849320986 970465912 385375441 469157161 701062930 756404189 787244130 911902666 95524305 537158977 555570195 787035616 175350262 829640681 344749792 774234103 511816717 902045712 283433963 624465764 385641447 503581581 489636856 839997451 272548683 817058594 756601315 936858989 295617696 307134134 265543440 340873568 216776230 264363835 133285145 380005568 870781948 884829178 422930493 487827346 578968173 879821454 468654008 935806311 534545053 937029128 570016124 710963750 115052600 918778042 48148759 402028379 733267943 915395989 611908093 989158089 295281307 525964162 280924712 490918102 275451749 312813099 361997765 824735828 409741894 553339535 936186645 970694960 956780930 956953420 886331216 956621775 576093078 947050056 713098997 844892424 192688031 380943191 44544344 477694420 933391263 987601670 643640 672442015 58856317 442651455 292005044 960220166 848028144 923369444 183178405 499627951 906450631 907969839 40155687 701618939 428856745 599032091 94398250 363513440 296340998 825543406 993975157 997727994 822278580 959609481 584936695 704822111 939245171 972800758 683573759 793576880 181304224 750873834 221011093 512904971 149545946 408863306 727561371 981960389 861353621 983549373 342044434 431553847 33288996 758429949 50758164 686962373 163148049 794589178 767687783 808495177 361674317 650047756 560674664 708258615 342617998 577038734 367950298 470274284 747896431 782449564 978471489 988232552 721818762 806697643 146508723 238223648 36958404 63024473 819635347 944191613 424900204 631218984 456649415 834490185 956165491 975706717 581556975 668420401 494807382 788996828 518538362 949600242 21375994 888266687 972057507 982180556 304799532 993489225 423652716 490102518 945638136 979671076 155817572 509688289 235240113 488279706 328735222 710429500 15276971 383151044 17319304 499403372 552494044 917231057 697220642 994297447 906816304 955630650 571089808 607528855 811167388 838658334 558200571 903847009 392088716 648948499 82767051 168458385 263104967 357608268 672775377 734905555 347254431 694811235 751180920 906950436 229140486 395156829 357039730 501139066 795893213 854558547 549972254 686800972 559715684 894019171 357501542 813040845 984052584 995515468 14573459 456638076 494877722 497610197 950004689 965913712 317083610 587795709 643628529 689636684 842629288 935234125 865263276 886683363 574355692 630991151 613426306 787366353 167036673 856568655 235288115 680691709 572677964 616606268 739048662 936098627 589008828 852412412 512109353 615837196 785671519 901342447 557157610 719135092 188348532 880798190 897655093 938069671 121848532 949434053 111407945 465058222 566625204 889377568 664304505 980302386 190151209 922053504 568632545 701432249 199354769 206016298 100792493 381455009 77253212 448082786 481244678 906644414 323938349 658738480 535789143 677505594 643825696 791927908 275608591 447517618 413730908 610745739 780034547 861474345 364983565 630879728 337754109 370442223 462575281 702702228 557073405 660238642 443919964 548868913 31610878 453966891 10671759 558446100 217594425 823186066 728301540 782094358 327655235 868703883 688180949 703121609 428448821 482239692 565455286 848152506 758063355 896747344 193656189 405026718 709274543 878707522 527474577 959565870 583722669 795758167 385493078 745442307 684010551 892061698 354331797 767204466 546696051 633289189 427497474 461377814 481178886 846238651 517451120 963071949 889228728 938356127 21189134 728063392 633856933 893584788 827643415 981309781 212464877 996881020 491503449 511067699 518188926 543294022 823873738 980640292 877159213 951904052 706495572 827859409 603114265 800099913 138314521 548569341 560112139 597994577 521889049 840643955 590155047 966273091 73105353 169874718 344761267 677026436 150186940 724247436 295706910 997618988 969807508 970218877 722676277 903581397 322400610 742797752 832699666 959955419 116998411 722565562 137112949 323149268 715196254 879270160 793967639 823878685 692548337 919469940 959440314 989669295 867530605 883661206 339466173 409474722 184510240 242245485 258563480 877365902 211264415 392347383 70866276 834907774 339100572 353184022 613952108 902057306 272546709 306649722 994451942 994456385 579310026 731972548 780180413 860446982 36093360 238653783 35608812 305889046 580873745 861368782 561858970 916278664 976998667 985169938 76450811 762169238 159616970 218579972 515504620 886141558 722834129 794690942 541794596 781694487 843710566 899964040 965788202 977386533 86126524 684058964 217920390 617068033 823920923 950133623 671840774 708123125 454820473 596309904 590353636 956621092 569352856 637143346 836009246 986253674 199020937 731791546 540911942 713822309 195950048 430967870 301551516 433005736 6853981 135932344 413044600 921281889 114251504 983001710 693218722 880417664 906867517 912775868 688239326 952687543 344733003 868410525 181478701 898976474 586582120 658299796 806229030 996943314 350647706 978030746 696845570 721017125 455247611 848883960 933070514 984688829 917899351 942671494 613250006 997046438 842775717 850632557 693097066 711876910 680667005 792859809 764766933 896141819 886046386 910184898 492608939 774630397 794161319 912364938 780169846 804248459 968230765 990298051 634457137 704867427 856758995 913901181 957379921 967404980 595613552 978927765 336127399 828210071 187850051 414203815 673523998 736469423 100081059 124331429 7341134 164138923 101178904 498543880 127653481 602390620 892892379 968520608 668287985 736480292 692469401 804024332 443760776 525117350 512751950 990575587 771057798 940350549 796405065 902115231 800374768 826000860 664162106 859789622 315146833 338905850 972157913 993878220 352857911 696195022 439682214 669127224 13359440 814239390 485853139 788556965 695778763 719218138 415675197 910794763 933962302 950280001 945695692 986880387 246069957 953308421 837613069 994333772 623505836 914046961 730430786 935045418 66000045 733333077 891283822 932707525 640211835 989988464 168890060 170586123 865122132 998303930 315330409 390259685 84855222 915244320 270067372 703157652 696680906 909927390 515278567 657984281 199405812 289453692 559154193 792946231 894375956 970494470 431000463 436968500 761701909 911916110 363139177 492437353 95505885 839098563 415907052 436711119 23021708 268775653 415831423 712642587 831314452 903795055 609180907 923964754 977190746 999202967 343249715 555222034 208607017 410317650 16590181 317788106 347639131 432207529 212556030 285712139 639455535 730018678 918100845 991671375 126444806 250024162 437426188 855052969 790349275 821832543 560743445 699735060 118137515 481792569 202974067 723544037 803271265 853343029 181229139 485328093 697811460 754715122 297768164 713082143 236976483 877176511 117466831 547561528 142424744 196920875 322263048 928898046 131666319 708424684 929435115 940516049 385858405 503797157 380061119 588562675 28647502 895488950 794932860 831103746 589011965 601443429 224680342 932545487 492655907 600583703 93390723 118781901 851781126 931779399 874714372 948637673 486456678 962482408 854757604 864593675 724059777 981702811 743044424 778188798 958918830 960326838 422840612 607154755 465397408 609197448 986142019 990491832 757609813 837393478 523171972 728648769 302553537 355185239 261961912 824429023 904474042 993403577 844070062 909678165 152709791 164408122 780077870 871802057 393882266 736969718 868290115 973106842 205757183 631487097 62901934 937125712 993671171 998078814 16721298 919916090 678310039 978923612 239049623 416326355 118849399 385416676 265150235 657459100 572725102 791344050 776205350 992725653 156620271 901017147 838110616 842138502 551339449 582768791 986575845 996173922 425450826 556617091 763260337 822935716 842551430 919610772 337695185 720814178 645073101 763440249 181827437 956486449 890698753 970575262 772828599 810873502 811252776 958605359 432986251 686953769 488797397 978699732 510010983 765239182 85372583 203107905 276232909 653576384 976535724 990454286 153006610 549680376 390193812 928323594 911985793 978816962 257869529 456857702 866771795 880241210 312520173 954951388 943298270 952317595 963970982 995085312 445687984 648444717 729199238 914961275 299627031 779986464 980778234 991231010 13402705 807838816 426015644 490867590 218287274 346301745 137603037 337948329 100805734 303205228 48492526 425113968 51785688 189594280 405108791 920371571 864302319 952791565 417223479 717407866 890011669 944147931 772169151 789922321 636902783 754001028 173716028 969847761 958977441 985048034 554142698 971086569 667461932 854672091 392643431 595440797 103938413 646497677 189627655 979722526 281165019 965950927 211332559 773541702 903219802 915557521 405769618 424228873 931640191 992675160 513464748 592118137 666937658 892150003 210353971 649647899 899963671 948182312 215940692 803774618 335364299 898323946 300200276 325393690 681866473 957027515 617131514 749568336 571278306 746643981 48079164 566302762 932594350 970631211 486883042 948970209 574462244 686476556 32081758 642322886 837789845 875523856 460572395 856151195 916328208 988083215 682632078 771345483 362963836 746243446 697336130 976027391 156821076 660290210 655642381 910402493 729528106 825577090 695591696 986616781 597056685 908161697 621462205 958340818 101113892 736350968 466392749 855410266 51622687 870441788 846755729 917033778 76941 772226954 42169147 537017694 485192826 968466986 307271228 784960834 541622146 776485669 875178813 954653922 893115898 900598913 999730210 999828422 820404019 848756576 297354684 349271451 236723852 434958973 885150028 933995072 992144306 999575131 88850532 422115492 570944545 619703083 827981620 990549447 153994573 328629742 322436624 826171900 100523941 830930521 67603653 92652992 114436917 384812404 299308605 908855716 441218973 897903019 930206700 936850433 870907538 892593470 358014023 980671089 452496917 562965820 656600417 684411802 763904770 944408418 839029041 921113904 392851564 834439701 883952160 990447512 149712623 509757704 487876249 669906178 917725290 979772052 953876764 980355868 663343201 908083136 677266224 678805880 469772313 526109903 509510532 708584007 724067988 905118544 187330417 766466503 390870144 932571894 728729721 908621757 314677892 417955684 829568544 962357359 642359265 893254472 54588032 347967072 162979134 816679470 429256606 439043297 797559534 919714460 840156806 985707529 291663713 331618238 159117328 703583607 204041287 834760735 353110960 535444912 786218737 989554785 648838742 893160548 842626 519857532 571669538 901585158 54931646 959547424 229663401 845621200 570165782 640766238 591070927 831626761 48748591 606534021 938874571 954774575 684675929 976558575 277519630 855558751 924585447 946015144 139044690 258706174 60109410 776280254 698921107 699100029 585138497 706955907 210964133 930755112 223590073 472035762 365665769 841191112 594062153 870534942 461503893 582628773 802476590 925845737 396924068 553259278 947593439 986941739 463715357 941895921 460018248 554275765 158203616 174041042 997968709 999069574 673584949 748938824 988412085 990777073 970683966 978612791 220412037 579669709 713956922 723834181 913135079 925557033 114943097 790438463 450678993 900389561 506311951 890597700 431366922 472374325 583474017 788254332 813175948 999228180 412990808 606315232 919905749 993344963 145768614 481715269 530693904 821566131 614031137 651916478 490552931 490976291 753857504 834725163 179174029 532598257 430146761 591529033 397908134 715879426 4863726 372546472 682101937 932834407 785158709 939231974 242698689 838800452 274596786 632665773 707417800 794445787 31672055 709352980 243360172 485209517 621602859 914187879 827856202 962885357 136017152 974465583 591071005 876755851 596723416 829995822 190049275 971555507 278058428 400177312 800372263 832963358 779140144 802799477 655325799 918805365 36756857 894216841 380078526 801272711 506506003 737931936 589550504 748562451 990379376 995950661 192121468 722785427 258846273 404734482 302277704 493770040 842948624 933545727 777005699 872442558 244387710 362736629 491135889 928733358 869640394 988518834 150601322 928508870 44401591 465304730 681573031 976854038 111181837 655194904 238164161 328752720 895484433 969540148 999727870 999777280 878626764 975423691 942802028 950926418 41957080 138331898 53543205 104066724 599547734 627735517 570980209 574800409 569153163 791772332 987170270 987717669 451437209 630871019 493950559 830328866 450907291 953026929 32172436 474669422 158412629 178875107 410885203 896751885 283778985 915575246 607373175 928502450 350342405 786203129 643239171 745768058 935529868 942652037 605835707 994269267 553329089 925694302 204722796 941517802 496573100 637972361 569840886 607842309 694570927 914443406 332638330 711501049 532031851 841459791 465725203 474322645 368202642 729332415 669825537 902682028 696210478 706143274 932881984 955259708 593183545 898063198 659455947 848590442 447534636 510473436 24387602 484156710 983412880 988801752 538468834 860902771 138050992 448357485 960941490 975812691 80003634 720541236 164472089 932464366 229869092 782097087 336584148 613801678 187023228 717491230 978555232 998448566 862173904 974098767 899950365 933265083 114871187 150337176 405168635 446145098 201296283 865219716 301331067 705068900 638165715 863380966 275258486 790229259 752179202 938058209 457050175 656411060 707798785 712911911 523748485 982725238 344085308 362648402 519671963 658706809 295212796 591720974 658210992 793059817 546642494 887031972 557015135 775231893 974980218 983627963 930650454 975227126 548284461 722270932 474746105 535197235 804739358 816141493 608363795 823614439 483731195 976261803 915764463 920905903 697187147 826426799 130730670 898191028 553818508 976798756 151327005 604208354 731197855 818092001 468013911 601373339 193221476 883481677 489068411 797512470 690534664 987538146 67648100 732099783 255219894 599524017 314056430 862122848 487314416 741241476 778533515 917299887 623581257 708271503 768667493 883988585 589181115 976975493 415390004 544161870 578407299 677191885 202271357 624100790 524225606 879948753 90145366 454035890 162021452 364462041 331631159 545270561 54498318 994687321 328322621 420926467 972877417 979575633 174469008 619988227 531046743 753625584 838059183 876453420 474123110 882045277 581102949 766142199 77061401 874874415 492475626 605995579 383725915 401639978 847233360 993277035 374251539 901873554 842995470 870287917 445187878 681385747 144120744 723177150 106670604 894417336 7189044 244701637 799027056 985794640 729591233 780663051 432343382 892726059 389034468 862289483 869994378 998916015 532863681 686101564 415723544 882971824 598084630 718620920 410737135 961075921 665993253 766529997 174577168 517796542 549696067 576788392 644209844 659280482 285955487 939609805 999221224 999271330 273442862 519928473 854311565 949458115 891098424 986428263 158019782 420943127 720529315 812272964 260614390 637218101 987452757 990167264 18493815 802197677 202540047 386970548 272253202 277508110 630353551 881418228 725970228 955429751 281667743 905463479 514189977 810320391 46920535 933208434 696568875 821578085 257040421 309411598 44070135 876219129 560249562 959878043 148954324 768368001 899166463 908709056 240229481 790418455 194954080 616188283 890415827 939233711 354309963 752092574 167659329 237986259 837438527 968237819 1856050 903569514 205247098 256395497 794706266 910008802 162046827 638328767 849431413 946703093 155617969 337992309 977356896 986415916 341750213 382342589 364224342 563831001 219131709 242685431 831529019 932244000 368995226 505298223 55502805 427247863 821130341 976444379 965615687 980744831 998468729 998783585 759768994 799326383 264265771 292629060 49846966 812011833 947097424 948111865 359701424 927754991 204123592 554877517 443062070 661620761 351860822 958979794 565874820 621499959 33569161 826748442 396759041 980320565 605083967 636029491 757475313 939746366 589081148 979180757 792390001 796701650 760548099 905563166 470054311 683212914 65909706 968629283 360212449 600449311 593002055 674839938 419859130 548979949 4399501 217656159 598137568 953919680 113224436 709348075 352660392 523113683 383778618 683700585 811974613 962362656 668000682 841283826 754146120 988247013 829518423 973065591 29648572 267961934 862513278 976590287 616904355 837565528 81871580 461322981 404299185 802365089 727046022 864435271 30671701 493318678 464978869 670402790 20943796 720138405 390347824 910186654 699757877 837249610 931607276 939774844 267734855 873549988 837974528 916525987 345794590 556588798 572433659 812729023 418250985 993777446 374102036 854429189 46824854 964645162 708759403 747646949 403328536 451324035 437675907 856028829 319832292 685305510 231025529 405586324 202026308 549444550 848940394 925199589 700811151 731945456 380477024 733200341 235591400 678970627 673691698 732599546 304730114 610097084 861000414 869338123 942959579 975795009 569430379 863807056 331756765 757993636 123101792 284439452 794360034 897663093 869535211 875549874 557379470 573280815 143525403 254772469 512759915 748126519 565501998 992557185 825527734 953350010 473462184 810332161 161180305 551741358 694208569 740936151 144141333 435150097 176011941 225030600 180461650 527719837 450942296 870113786 67713118 175793676 982065239 984569540 712213332 877567093 796339123 900097390 418293360 669743227 839352675 990475732 577364892 621474139 52130290 249931705 49034286 179516327 158482308 934039820 327727698 924156251 783922513 865752718 519736264 970824058 946484210 974968342 942775747 943073885 353048039 841294335 126271020 931699290 72228450 604844296 462477847 529756052 61729752 426551724 574858072 801140938 623745977 948188572 45371779 884139309 321495377 786863580 545936546 613470537 118478833 274798970 662440904 973735560 942589552 980945572 31858442 382613491 245474201 467692133 502047938 707806338 654039791 854875904 123945432 423123011 424045470 638780329 283352985 424526838 700525841 877261186 377197143 593744089 756530141 801311945 123321082 951673308 49085607 54588164 429289923 606410345 928037196 948419298 303222291 758849269 782287132 811783448 205873715 364761043 430955931 779138872 985281370 986043321 831565293 896268482 796719196 835727643 268569451 911600716 818080118 866516316 761341016 764439372 78821363 468806826 498567511 499986328 365931635 949667334 945325901 998794535 640652043 775025433 913069792 977484252 941202434 974706081 197048463 794078218 562510139 744832777 621734166 767239513 739045290 905843349 121381000 146481167 792749648 949358052 808444288 886981499 200761824 849018024 569335565 831081836 471027349 907909871 867032429 990864269 949946361 950313865 781679110 812670523 400230301 636294873 679426343 705941864 165003431 963629723 265889340 855728100 791453463 886183868 939671357 959148018 795777925 803585562 307426772 347742750 26930926 556460965 540563335 881305528 252025028 347277635 277543804 570197987 622079387 923524782 139858014 295798013 393359827 581192471 605131657 992396544 356961499 987932143 383219097 911361935 235350810 536393805 514983213 687326115 853776494 859821847 467132804 530442657 224194756 544453725 942097983 993677191 663829421 851037983 228842706 509990945 249912797 924677107 309603996 805860260 764408136 839071666 917975887 986929423 499702670 993287768 670944396 921976000 786911767 911489430 284177585 321691398 969636623 981336605 728200359 744986357 223568961 470077775 865512 692271416 921114898 971474024 780481039 819692246 625480905 669661023 215456218 648707270 598512831 604437184 210756937 523884376 22346263 700018278 784307605 919183609 126496052 935316434 69670957 893285187 180509187 944402612 372115193 665052565 261219104 356341109 842547013 922696910 8359921 827471130 653581515 741321019 747485117 758942186 145029874 625999059 954327817 969610902 751008972 923663167 26868364 460583170 564117545 760912486 174699870 261993983 133745151 550735444 663792745 987810173 757393323 960578345 556187699 867256614 805092907 885112270 599346898 651582676 369678580 879018924 515780351 747783734 28295865 79716396 97284553 954138577 776298865 823805559 254387302 402822976 207450076 589073910 336563609 632734715 862410463 954473446 654651648 723031625 31726041 607732568 857646508 919721079 400496986 438542272 311598261 547953454 633190502 933626997 514222835 555392737 537610118 958928611 700213672 900521687 698403939 971036473 803962638 940126074 661133604 685915693 191166175 530245484 855426345 955501470 830881282 947957924 89973589 582650840 988532980 993604275 107438309 437165746 676913355 990103796 102287463 330978252 648523323 853839137 534339864 992916785 649091306 908126042 421183886 817876647 554512295 850882416 9746186 438623900 252740577 377721978 752628630 866240974 576935958 705320013 605253493 934364844 430686397 645007718 700368458 789956448 725509740 959624015 416759228 639488422 292092273 376093202 312410142 475460229 691298399 843847759 911337234 923737425 394350906 652021778 277806041 409816204 663959957 786024467 880196920 896677526 539425208 546753607 280928811 417226147 165281439 436553237 97772985 461193165 294916925 776069571 127466772 143212380 861702671 986935906 466124092 617663926 268399102 498637329 603156894 905319196 289196729 553981360 891865341 909446396 47035003 767756946 102959248 427654073 919318570 942064311 885133869 915304984 283383237 380319209 970002144 991107412 385499110 999567400 170190488 745187106 506516969 850199215 293175975 803687253 382048937 612548593 621141482 670261007 940618320 946283261 214827829 242194731 801522512 848786089 216113562 897680195 417139562 756459055 245409801 737785896 430979261 644414041 746717659 849859469 929920693 962376332 85273889 654920057 750801414 907807542 944023825 967456348 625378666 835966159 66285431 517348198 502651560 625456463 900644907 987585329 491998504 722210894 899250023 959941447 235657033 684882416 696596377 859806536 136954776 666681279 635108134 740674319 328054222 860389325 299890593 710520091 17617900 937426849 519692181 539936564 588440612 913010419 396961243 539752405 214106308 503826536 505144423 969283070 418993498 783508886 480363729 648839400 88203026 132601803 500030230 841163321 711973357 949554019 180308329 637272833 299604107 862259607 604654279 641829396 549944206 704443507 812218251 956827326 74358956 729694204 768865673 863071464 363010619 484705849 507791230 940965556 670108121 671254495 285318731 589823315 254455676 599268571 738603117 870709209 699733374 882346461 715574704 961557489 921989975 965182294 779354298 901236657 156162722 462692370 829637360 846556795 361469361 935835708 555800986 590438075 665553276 665702731 62203772 856818567 90669303 847398596 815935589 878457307 405126414 650584083 879376697 890967412 762289377 880793921 340927748 858753403 248891926 330017286 330483424 917075467 696365145 913408441 209335789 927129033 633018475 672323667 180865067 811989757 155878276 567433466 733620036 754640322 144878322 968560333 264954200 371682546 182150317 995931093 803967970 988634431 232290777 253873658 916543427 959722337 72610284 184601917 712090829 781406132 829840120 973818554 396375150 527124242 340020008 865396793 703417381 943912179 337005128 411595952 930561430 948141554 185913623 280114953 106219644 492730772 681308546 704317299 632777554 994144308 970176849 981362631 605988540 656183678 162322669 213206847 123193805 722570830 943869642 993609853 61263213 394982618 708798609 725357406 360752862 996965093 426986740 739165798 656494517 808038205 298747240 400718593 941917226 960032764 930943344 989099606 899034952 993030196 7940634 761284416 259424296 723174385 773553803 914563505 33832017 911635527 774461287 843970194 300865410 404348880 114318464 422278807 823129130 893909131 778570749 909583797 837787607 913370669 731248246 849067501 124574668 692379215 474599355 496738534 99306169 792068251 517490554 626162818 412923836 876986607 120575659 997590116 285489595 457526904 165989904 865253721 577948866 768073703 611860883 854232701 281324031 697080099 921498910 945402679 792471066 817774964 593201690 785741845 110133015 664086267 447136102 688888255 846996628 978283213 349439275 398220618 116568385 824831946 566819210 908062135 616738079 746350094 533049374 566020169 596044305 838996052 291888589 987102824 437314179 890505050 898152694 954057009 921478299 937623794 682334217 776184916 558373264 651385475 632843878 850264883 772153596 999389528 790537255 871293832 65555465 404466621 125361621 532824752 212674615 387646041 137568630 858440393 57241237 867430794 499857114 861072784 896039771 978905789 992664088 999728583 638297308 741595264 557937502 569669782 872386001 909281439 378059019 412362046 523671037 851947890 959894343 986861831 637019747 658493441 151856668 369609436 93040071 953472731 328878210 377365403 292293170 844159762 999865258 999984922 244719942 429823338 602672685 864548715 104115375 961334671 446760998 547160259 945345147 969283286 222885094 423463825 649225437 819709097 926982636 995259513 461951640 916295819 758847819 845533655 155806718 203781801 896632651 998844232 724423754 800528962 345294670 722053963 738398057 940055364 575986955 858559537 823746750 892233427 558161914 627399733 602842468 976921263 995008876 997581215 173171566 768975558 368292343 947368436 794458933 888018219 3789796 272818182 767092361 876975071 875516012 942474082 980628415 995052048 204671190 561157433 363267472 851927813 134543922 843517640 322156532 912829345 181104704 455716222 557043292 931793561 500791999 577161418 500436693 602076054 393774417 922622252 511321782 560998288 689289461 794486329 863945263 993526005 247511519 661311656 422986839 849743831 872382833 958144524 882081485 919724829 455027702 726145766 155143465 926673262 808013541 935751528 61818142 611679988 57154224 527402098 831510580 927486481 582051834 657218048 384897178 588831712 213884399 512958990 899814994 945914104 905922803 930612909 961636707 972060743 139066147 156965837 944975105 983141152 633354325 958635812 761456449 961019168 695580432 944100497 188295888 935679979 49229027 303085769 547592814 921066158 940035140 980126490 160700433 347198721 295507328 331246792 233067508 643823958 850425441 894211163 402095980 532072478 280004598 711134537 602312899 894030463 627071115 777677827 518490829 532134549 195653144 322954497 241390033 936083059 571154059 955308005 777489677 945008973 297103356 823954162 825335801 928204505 285569715 780539595 195838805 740788592 265797177 983831534 481641087 482165306 228046728 390789837 991742623 998338053 682982414 799434407 103874626 582035704 593098349 937486475 80960501 576586850 981332699 995288473 102543080 334868141 572899444 991105137 533546837 640739843 841460346 980830079 884396771 909236988 433533908 758162060 159768096 816351659 987436247 999586239 820606821 927894753 889897529 901801732 685225360 949604919 399483536 520811089 429415733 638751199 752828461 793509290 360563764 825836498 340911769 740623737 966607664 997450444 96194623 765587889 961493529 971049831 751525566 854054744 534483375 923046193 96973221 940190083 586069500 911355196 768397868 940210445 819483263 967968002 137092628 751299576 485738697 893615635 992383633 997067073 643572886 758468718 675278921 826823678 374079406 847820374 102303414 370774794 127822315 446272807 76659641 429661782 840463026 850227248 838035671 976074853 869025498 952009159 349390402 468069127 52091836 375916787 800698664 945665695 247256729 412623388 91306861 327216011 316248160 376846562 304278080 440804279 832217590 870324228 42859889 519555819 437383569 812121273 804348198 804928482 561473921 717769745 569778085 780541150 915466792 957769852 631839799 767967574 712193924 781177828 913247289 962311115 755842606 832584644 760315144 948279582 890854173 936384337 501801554 876179371 121647810 932804376 341045521 864224343 268187660 696522295 582274554 786611357 375696370 574518030 510068925 814121346 546271321 824856378 851356211 960299617 119313499 922177021 427078027 856440307 836183685 886346795 109707994 613096999 304237993 336164101 319264778 913703824 834503916 860982581 589355161 856719392 511823121 598995286 867760295 994124017 448428928 745372799 195399086 564199387 134683596 317259770 847724741 941795516 203868329 940500385 66882908 585463217 72338400 274461569 550837765 714566803 960609600 980356005 947193314 954020990 805150009 958072860 687107273 945501698 709561774 747999539 256483445 478346630 400892645 729312442 601987968 802367617 906821806 945376991 364006853 618142559 946533557 962199061 338185653 797494066 678927677 691753032 270409953 302942425 15954380 894627209 120192730 595210841 178954306 745638215 901866734 909911852 113639468 963415699 42836149 928387552 819652320 973847809 956427154 966463608 485843452 999150274 937881980 971843455 212137772 761729034 135676676 803952302 112612154 933081939 132358844 934180142 433011746 593246106 166111508 759078078 663031963 880810232 223510166 441787693 520342754 783839903 438200297 998567463 300213083 413048687 774789430 913249587 120281857 763165721 668921296 896204392 286159922 483776678 96213577 408979753 327653152 750493120 983146055 993401129 81812556 452848903 975087037 998408739 405200940 569048431 905718078 938495205 428529750 549329937 165773911 313968022 583500400 955760327 545064501 578570305 182419114 692237689 222998578 874675809 835947162 917152308 530057791 719353531 361959690 651471676 408751333 432243597 518890325 823652262 157940118 382663451 70791086 842117635 663630897 709675774 807352898 987445544 132115022 777854161 597173798 848948490 421428972 583316351 672034741 958525861 993215910 995401712 553677529 988443242 228872924 479570054 251776155 315133325 670158823 893195576 773174354 864585002 545268558 969859279 798418384 925029802 471584629 512824443 204035012 998900115 72747803 504205960 560599919 925468123 203899917 355552184 794251469 893050726 646953336 968334169 70047246 749286477 839225896 919467650 386367661 655027577 765596523 891709524 648430366 768279602 602469746 702630235 301631305 527974951 103254391 688687631 432911802 689714518 181524026 679914735 393827106 837899852 217732990 910296874 299613811 331731929 234559475 858673343 321144277 951480487 112291869 963176864 316318598 547413747 418825628 723541209 125587224 519071504 123691983 358179151 685208576 769275799 669230295 809337812 553109503 737048303 403656410 727981900 683300324 699494262 479009343 662223586 695886593 700455411 181898907 899072630 723561306 872744820 756797816 858823797 103881832 993778819 456786476 642866053 266142143 469711790 82540951 338080180 712175465 716802495 366768212 736588803 927642392 952129685 781416392 823496178 737543579 880635428 217087560 634394447 703734169 928092041 436218752 986759493 590017523 797019644 356192684 364488049 40550484 765429898 337435706 385899799 109851678 666865138 258322309 303540940 309626774 918122783 727814689 794072148 562287364 618599250 345157678 491461730 916403742 967756385 281678150 321041935 906873507 951601307 402176486 678928839 548806843 610393349 938426249 938642993 385511989 644493497 91008486 628775285 57962107 292864319 570969847 756016061 506672531 531631702 132095363 689425111 806554274 863560092 798976025 822705152 589443306 899581919 232824879 940337212 233195326 265080878 674036680 946593886 363851691 643180797 515532966 915194148 861893041 904264268 187304707 620367854 900163867 993803882 573087538 951658550 938267211 987417407 301738945 917661775 240740952 679015749 561702960 767505697 181834106 480929884 553855347 755781062 49804796 518177705 738965661 905268190 630212615 966496545 146732966 384473677 317595308 892794906 247472297 311204755 396809435 860015350 822679518 978404780 263399535 342310210 688413167 894495386 379910703 715092909 559595971 925878323 843737450 868525040 203360994 890657220 991127924 992069727 577827713 732952294 666119668 798380261 192123918 880850507 730193198 881035109 732112867 737183501 839380630 951307557 817032180 942201052 514606880 538663471 658897309 660810262 207194038 760557560 236668155 718665700 489371464 979534106 624865191 665680314 682362528 906444031 225839742 441832067 89794656 468518515 665546126 915412583 592247061 839571767 502479954 852875608 232351990 421922683 992425446 992636494 604898499 882407889 156622503 162956798 618495286 859775102 504626501 823483905 822634411 996161341 963084060 964834771 299136842 842826987 169227966 459318701 843200664 898192262 818071973 878822214 693389995 860549409 497565880 963214500 745018806 909315192 274832545 319441311 419829155 886642719 146221220 420850094 189927511 270080321 910550543 934963721 708885226 793380491 657499563 680598319 968252690 987975309 689385261 845964000 601877225 820383736 88886478 105090986 545437491 955740178 400169891 456815287 40373603 481453135 696705355 745908868 649273112 975007776 789242141 795292283 152956176 785685801 566459123 755400967 663290502 843031130 595089218 759414575 769839076 796879493 981903426 994191553 804301139 813412875 129811529 930041547 733275731 860739891 673932943 769074343 866019329 881806384 885759580 952460352 296115387 980241724 533737920 737228439 62092017 458234437 403585541 576179533 145708458 878766987 858678965 946657407 952923810 969944107 354811094 866452457 24643087 985216352 774517274 977071289 682161529 775714818 223101832 564688212 671228577 758987321 264593683 923699513 319801343 873377625 681007937 753333547 30900720 633111200 436592423 875966106 813215807 931663819 546963607 889710550 882231513 932832322 859195066 894481722 973270728 983598860 544765010 640170942 572423134 749948998 280462871 909447338 284244660 951654906 215986423 695781421 748754310 749972359 282175999 613123246 108156269 736810190 525649853 724969417 357809389 412140899 724647365 995847438 912897157 979282781 544120607 605972750 766348172 896167784 696190271 925846364 703651753 768700849 971102703 973302221 755992223 958997083 155539244 244372508 841953888 880470710 408107392 887830028 328031763 586692988 542783344 773625170 92889616 128609902 729261395 766631218 773594124 909800627 808021857 946212162 295173998 582220294 713231352 982469712 587872742 767541052 243347505 450811553 322595117 360361746 351576038 388049759 146866061 307591044 70210254 655862406 833894569 892275835 904870280 907148608 593809348 649314597 288904433 734697394 32208682 215839505 848578737 896012842 382725423 825801269 533162636 760208178 321258777 559712959 337000438 349983171 744801513 923695055 891950104 892653950 236262263 500208677 191360087 385419244 484076761 886849597 202029891 622365919 985923057 998080735 581659436 683241233 750782766 783475397 195926563 457343935 424340922 603329339 595620009 724166827 870797371 953853607 66236986 825027975 197974497 841157881 662203699 808886838 206114998 351789197 652856429 998122245 471645389 816641975 722846843 919924620 797258663 861606829 326945696 866421149 627159055 817996634 861624102 934867005 880563458 941207233 11934272 448490172 284784181 737897425 263761936 553751866 413217432 542595387 791925195 825302668 372582040 697206626 975534251 997122938 167436500 524741109 48981943 618866870 344029988 787026690 31472266 461857833 572751613 736298773 929907130 969685266 572367698 584500101 186958037 537063864 158642020 648660566 746740130 915541960 497059804 751767923 699823503 930878775 312114466 959362903 402717974 667789788 332481242 753133686 478070956 980876407 66741386 837579326 912365865 974526089 780600140 942548184 115398460 551689266 251131251 655691704 282535035 866712676 160347952 909027472 38206111 529645362 389077021 798840498 152094716 723934374 594166749 712897900 503664662 868795732 843033244 876044465 810299475 926956234 164909266 273383407 972747899 996330890 859373647 999866144 769271937 815106665 716653402 970824140 918929029 922999161 541791129 857200036 948641616 992600146 326717996 674730281 108569552 841630851 894354859 947670770 957520914 971605604 113791199 771145299 777563076 885594622 161759417 852212954 264342965 468996208 147413612 341349177 955369299 969794106 87174155 825408193 491828731 869775845 688738435 866245647 693755626 762808553 963645270 992934494 809888492 965260123 239201104 992076262 589292735 888698066 471515752 473902249 872894451 878914351 962510397 973025567 887399321 939169342 819323065 862820783 993554993 996234333 708050423 876232553 773079755 792492783 364843406 437595466 268511027 793047711 248784856 832810863 534905357 682303747 853508000 928822231 878945778 982772415 290895444 576216455 572543354 835446512 785920312 882256005 988196155 996684846 741653743 908338857 4295155 400798417 55107609 130835064 984002507 987924840 244561714 334768807 547071835 690049737 465331119 606068478 303689288 719620433 169511709 745017843 159906445 991879930 969092392 986634835 727451780 900298569 53439220 596623431 529931967 645027570 417779722 499937729 870695016 918108126 526305679 554947514 997080683 998904898 823151142 935119393 266883320 849044100 740936211 870735154 958272444 961430767 107307628 610850975 545638466 890961021 531024861 677526699 89928876 404904000 14144485 165208103 59152318 349229391 791640574 827713051 369942151 606730004 86911499 368959648 477726572 845280675 603142036 824148318 516300752 924759934 702108826 907481796 726899791 878452963 609879129 675917593 457204563 863033430 383393292 714157478 345102400 669285223 844009627 899641036 205356420 446772010 72683120 374160409 306576902 963751838 879427775 967313512 504131621 855566547 947091371 989492858 49131583 199731571 883733806 903107992 492236571 852774786 643474722 958486496 866520673 888669914 882038237 920194610 567865548 597543569 740636697 804275600 284095328 804512540 292990070 420522920 519694037 524950188 629098409 919380003 4708412 120685567 774232333 906905853 843525234 848072531 984020293 996698614 313771664 607920025 132617389 692534261 334611707 808151808 938600290 961387663 118332493 152361922 79297378 166941922 413427313 528723581 904924368 994897303 45212234 977306773 220641754 399349230 171881723 435430622 368340811 853881570 233155677 748483743 581109790 841753796 173857820 552122252 45922834 999818120 932103666 975727013 943416499 989082894 68807229 701797718 65053762 246225718 443531200 887239961 908858412 951134308 294015461 625565702 133501988 941512816 411235686 661847375 202287168 995081006 344239890 868008676 999899462 999964761 783877363 849537764 531893404 655645376 856759762 900965752 183083253 860706052 237883354 653018342 897008998 964561293 582386740 878539149 595945716 819139714 393400337 761379208 911950523 963668893 931716074 933045019 166421445 542769964 433199870 436327070 991925228 996782271 962290678 988784309 903351518 955289994 644440688 949170158 309038597 844144274 241122713 560147622 639098236 861787947 606480538 940035281 525985780 849558191 337219673 436095158 596928657 857976937 499262991 618301613 982730539 987243010 253637275 960006912 836709406 860186994 985595389 990630531 542616225 950020118 733035014 839238165 344826638 376141210 897497950 991423096 405923170 567274347 968136428 971889805 605500575 715176595 95753739 986079121 47326751 317920079 423657805 792441205 687875823 695628648 721116488 950751464 832396308 913269406 930712236 959715302 972087333 984940097 813303020 902278905 133467481 351399493 530518156 900860381 720491544 954812451 679974307 770620095 941189502 978153712 773906716 933291396 774838250 860786992 539266006 783737884 213528199 266008478 145549128 919377702 124281281 250611985 309799477 357473361 693433523 813695917 639529144 792474259 77021547 889818453 128022932 405576815 28704106 368706117 495622714 814581560 607320585 713400631 259359681 900703637 84787791 878344027 442029694 991039285 573707085 737510374 896507678 995518768 670744487 857723957 417387776 838680368 871208948 933641717 232908642 741761654 805446462 934307379 708120625 994359725 538662669 709517652 424502242 987992565 447198490 818573552 343619252 919631707 533127044 654025790 336922075 459338698 32858533 394633604 643656925 892788533 123935296 982727660 495414286 499963148 724579304 736094565 315464757 693604702 468055996 859584762 480724823 869774825 24712556 756363817 419286780 753976482 498579413 968416364 35480752 851717082 143319185 368689829 331702293 535980628 804503242 828327856 271197719 853669056 759872641 834908276 642681605 904118751 489291410 780263669 564589231 688298772 233297856 821736466 533352604 885730943 361266122 474476144 89234695 666283711 894708877 909573034 751294394 973911727 999420720 999956830 210824600 886343005 447142034 465941772 433522517 454882354 449416452 749370130 930656570 999034988 646948769 963463237 932423689 963415193 801070209 987615520 62461584 629346926 791198353 907816466 810763433 878570515 1224291 728005012 413566991 510500087 540103121 757135471 283594003 475442407 280509348 850551662 426872368 910319755 32182649 449361573 33970830 249642285 788281906 866928872 167516576 279822247 782837325 974179314 182722280 418714780 115164428 977449840 321312150 935630099 485037933 559312397 767524881 873569520 37197061 756335563 945502817 990594609 794575193 983927600 631442785 852705713 642660812 844733997 977689484 993589224 57582869 906896255 563188183 743283227 250907231 324917877 817370623 850311646 452860369 752779588 675344832 948808235 567260870 832203377 676660297 711558404 871658975 988986114 985600182 992591383 27545811 783821526 748768981 947758637 312916355 999281553 299529793 910245542 934334040 939310198 537741754 667948908 896294859 915799541 525418837 864658066 752028538 928760265 610490430 719973460 110504073 680707816 255866567 581205812 512293399 920449345 412848242 608862876 960352543 984081382 21413522 947223244 285294044 599474378 1471023 654347117 639114812 885670169 285853880 755432251 738583288 942964758 899849307 963567426 515498247 777420560 478367108 596662113 583254288 847876319 368017108 972156397 139787792 167038082 170145158 780781510 208878085 699420746 913489041 987888192 841764436 904121815 901554995 972797790 723343351 803503099 671559339 981132457 136921500 720072199 110468497 877289082 344428981 677943860 94609312 112603226 115397299 246010078 575911546 913703227 961328622 998680845 815171669 916575506 845028147 932642059 608215073 979967289 760307086 791903971 886572744 985193366 40925275 52857004 526617507 919786862 583275263 724857027 602795855 879155194 427686251 599018760 474123697 542587777 346770759 356967221 431997579 593081311 193363276 346602294 201984944 898366454 388179670 800454809 780234341 989667186 17780019 121166594 455035492 506581327 56878901 874867971 700435575 918750324 524235765 701609700 921040626 952925839 633585685 961980505 865912465 874553976 686541632 931937339 781280926 922317877 292067105 436594181 481189552 887172511 1008135 993569364 271343744 331549461 817385348 995357857 432245677 564317736 625185950 687470138 68688376 155282937 119212835 940961905 827066763 856710417 265547440 434882099 180120891 751612069 147379588 335349305 717181184 947823552 147374140 401955978 266209326 465390274 223241116 507604762 469267402 607882037 747813606 894048662 946236264 999611376 473981875 989299070 766923504 976094698 284365204 321142381 401436488 755114078 723335645 741841126 421152650 869589846 28398482 663662116 4646102 434958318 808044998 945029634 167468202 775856124 483493768 781147116 482051665 586783672 306299555 594399222 968660129 990541248 438943717 917021483 41514379 680868400 387062515 888806443 173151163 576545735 886023495 987970190 680773963 777746197 29298668 157663663 408993800 476420463 70361496 865054735 994695349 995091968 356116846 525420151 333529168 498480198 618403139 760395012 882946514 962132664 928433079 932230377 972894020 985096873 785798279 969287712 576770305 673260462 532999734 722449363 533292002 662243154 962812509 966849405 408223158 534764264 292747957 469537298 305986441 833976623 808726131 829615640 478306121 669965851 892982472 996247644 814569438 822316412 830450510 879837548 517943109 796085838 41944416 998977414 205252179 290505059 48622608 238311608 875522111 942402256 380425868 491384623 430330759 520376838 435917565 885217982 297544930 581318313 300244274 309768120 406839017 959857957 651275345 830376000 116169946 683459240 791455454 804060366 707805799 820502551 99707006 174648233 780984210 852970334 665242426 936043715 923230703 945862196 912843643 950875119 177813122 605353255 829104409 844355218 532586581 838341087 444989801 476431246 548558276 928127643 436782736 947264710 421266954 564698867 993873860 996551144 803610854 813596975 124653452 406193455 752996366 849765514 914992620 972269809 974038163 985839731 74496726 915129158 476579921 812122722 764640189 869834196 730647035 810051784 473077228 886170442 432290218 682727097 629301021 876603554 182050150 336765925 797030165 914978627 607818275 955604698 462149511 612780596 548625962 714647562 353205977 634991111 272228481 698013316 829952629 930560085 937863742 947982839 793411541 862260587 106659692 629265818 287409369 480282021 517389448 751144619 368026278 473672835 572753784 881290391 13437536 13808609 20562108 993296811 254003540 767719691 726253496 793414143 310663142 409078546 215384668 480173253 828987522 955645510 863603838 898819076 302258723 455147433 951352007 959966308 645122577 740577522 9916074 651260352 501680997 952276146 924213033 970351643 938649340 994163293 319034177 949992221 383735552 543248712 67979463 181938417 623338606 633651271 366937024 674613943 137347855 336760906 430487664 848274390 502939739 727936482 1800257 608258481 619396981 869295266 58015886 745105881 843425823 875880528 710462234 822731933 848889791 914742562 12756953 795212425 77494512 712317117 437176489 850025469 521773116 798520659 100018179 250878650 854239722 969890256 924219171 937232565 276896227 327935407 15101952 479580822 49807557 273119219 146863423 272293678 699781215 932823986 604193963 771549123 684636419 928353403 642130865 831294411 884177558 942246002 470040779 717619967 593607073 965219434 356114947 989101181 721278407 725162747 329879682 863281573 835921567 880096507 557290455 891795280 649910045 719547828 669732735 676751196 184799615 483280919 79698608 512825737 222761941 561511863 758676350 962845771 601130322 774564261 957609908 984793211 101493206 901473361 141284893 987561599 35132760 568016571 274330396 675643930 307139520 721273943 997780009 999485212 436462069 545071849 607263758 725167645 898156782 968200371 240807122 711050006 163867339 183147498 895278949 897052691 735385191 830330898 589261365 997352586 668430279 957826434 628475250 662279655 319675622 982887506 922327775 932763864 124267568 280290148 375437925 448921228 494272105 567989247 717761606 878293929 651112347 974109356 644158667 854439488 392310833 523804592 245276391 702920636 93780715 504710120 679022542 811248963 774208035 988179068 320029130 940215312 659194066 960709468 902287558 985072733 191971465 434131218 848388287 870493573 439769229 643439055 263636126 750409914 258638707 918224550 655238116 938051496 146598667 238796604 124184672 515517877 477142132 665546957 180770447 452032299 929181390 991101319 772505972 992685088 528074211 762977901 432539999 675193421 547167636 794364698 971465688 990392925 238080027 356837633 656913129 730989458 327528695 691622637 249189198 545205849 840132156 899522477 550888616 987272270 154219902 227034295 814551858 899893824 65344538 967044740 933430827 960363974 883568583 901537219 166035981 570419364 128823644 999518117 533684108 852918055 928857982 955073819 93217277 414876409 296275077 841700596 837260844 983934600 503658906 622429326 775084529 869532863 339018695 736175502 67199646 247509431 302615859 987920618 878581790 945467225 470735034 664480165 138471162 737622030 141090606 741680755 963437726 987191000 153424278 671676623 755473111 858292074 656339864 800894049 958981500 962637238 524865511 965940542 85424753 624030088 14141153 24184485 632409405 711962984 963312656 990707689 815544809 824850369 115833605 205183651 793977836 886707397 940734433 963493806 934025919 970413563 109203216 263105546 673010049 934095978 382828539 849339035 252689403 272909555 290842516 364739388 81225140 141797776 496708184 673750776 322709486 926205809 357212506 567213135 808268889 915578908 324922758 551207482 855099086 940844052 839881156 862937087 475769177 707989046 980173194 995045034 44491499 674700543 434902615 689055849 155825861 459257546 412273845 745067036 238485647 771075045 205424948 989168841 802647739 953020822 675173533 865372323 380728457 476889266 811346061 876242919 358929764 486257810 675249332 717788240 547548780 603157372 866940018 941522736 808251764 942844619 979318516 980689026 393582133 922716285 753133548 963319484 634806486 927626149 815009796 910473009 43926253 622665652 984986073 986808764 618057153 981593744 766250611 853097568 90280566 200254913 555779372 980062189 428119308 632248643 428251722 943753007 41989824 580665068 194156857 195452538 639961476 906791062 99654551 898064629 449355115 927253099 152222827 636930354 268230777 355443791 183573165 562188560 405387218 553534277 381074877 519963587 511561866 714788365 509743377 594011989 243631058 267159622 289966201 726750153 377326461 811315738 705852291 897126873 882755256 920469202 536133519 567460116 929334075 999696393 562820870 759572247 4754007 625487612 914440004 951532146 304910694 393350975 448537566 550100169 23430027 863208482 299023137 982825789 483077323 564903073 7276900 713176958 584653418 782132053 936102919 945377438 871544727 871709520 217222632 700492495 237084204 648107907 3351676 362728593 746305444 862835669 13214351 749766496 427332720 756412206 617122247 880505853 160231147 371275981 376265182 965502648 164873355 748492926 87573716 126120494 798349594 911913941 419154522 963616898 633338332 672792488 102309316 261843568 261613065 805267201 152096487 425725695 270949580 909737531 978409673 994079587 644738791 865278044 714635386 929958167 602120554 739128197 675008257 871910781 363303123 860000871 107864808 652472436 436684522 794200995 400721441 983526999 418451633 825581342 99568719 439202751 91205676 688062831 276536881 343041917 111303193 780964472 345664945 811157788 96600237 220999857 718874163 805040281 525942892 618657320 363228005 743112345 103846453 886584539 114232589 426402372 223065051 709674260 578220531 817026598 595573979 873907206 633726781 895127724 239454152 616945950 527448670 798443193 524204023 824118981 148229137 564387164 685671322 756944538 72233036 155790643 67771087 381674160 717393769 841482092 223916682 868738784 32456389 47629771 102179784 993097878 807902216 975326431 602584285 959402513 586955728 621041988 582553162 685309858 691198554 770327218 565095088 662431665 617219574 935768821 383015820 479043854 842416628 892359199 266676321 724203782 694962223 900824257 989278855 999042593 776047331 879733413 91967161 691723501 373083613 623517499 989540137 994829970 702083706 828188333 349336452 552873647 523024630 969470948 206033052 470282222 487752959 529252740 268241956 389957750 699410352 858445904 225313895 949186062 944809347 989904513 156957046 756221660 728074923 729781261 831355541 972088847 361571767 752716463 640904007 871345932 554298585 923442298 756508009 813916642 335841352 701089828 452602717 758371781 821056688 984049916 271258695 651382242 605490473 848318557 100212666 799812055 988975503 995725566 953029132 963946902 807500012 996889657 723816543 982672097 328462187 771462738 934641913 953774281 610004578 927234289 885092663 921116075 712898343 719713936 893391544 912506264 776486826 844342566 172437508 706949346 440596149 837087487 172075590 998544702 620408937 991524032 29211607 586593487 664406213 728485194 417485452 611842482 975828416 986746167 882205771 937610677 837315752 927578981 454587143 612321012 936138094 951947295 329768047 826186384 331192333 986374527 32845588 748325287 446882870 966363110 708166761 964803485 135659600 312688176 268315611 937957175 212062769 589550146 293469225 482888019 496270956 542073026 456450978 617248144 221809373 767029676 930962678 946492878 366061990 501953298 473488037 896370426 837677228 938093242 45575541 75792133 520020846 852921318 103765844 146828195 326481931 986116893 373605002 817040001 941469045 963372667 450002895 708762116 543985548 562240805 545100756 642345375 3476619 328046112 582990987 866652416 961814509 977922809 530082796 692367898 83222796 719586830 197105320 799709354 194291882 289700170 877501283 987546537 991543369 999135520 485716258 736622126 394727541 918623107 551770877 677458477 852758480 853997657 873216006 972642737 997147753 999029980 252921373 472732923 468690211 725152558 20162120 621112704 103998769 827086137 582468000 657706470 310995031 528091250 68158059 731315081 674932087 877689779 684742529 782929390 518422894 891747742 79110997 920331370 817327778 881215830 318899662 434684714 979210002 984696880 60094591 289622479 33908880 829100854 705631566 905774132 447844961 857299716 625170625 644603542 143988515 926915543 826497727 876346128 989071304 992767502 87980770 357417433 297428725 640176192 135894958 890214138 945748941 977325318 948676432 999024470 396979658 715318330 565935251 905622875 4400603 249883854 251004097 428211401 576141010 883374810 715529821 855785427 589006846 862387067 472794754 559937092 51940181 358372580 315168891 479409843 873446281 977587484 7323532 596910881 389185140 430116601 823258043 924427778 649097974 893223517 931683317 947066562 189167360 882671950 558250302 958877294 841621604 863273092 251153106 347151772 929377679 977788488 94052725 199309537 470579394 550798861 989204702 997278116 263547729 602705675 90989575 224475256 415607613 642694677 269724356 354162427 894770483 995173758 68752115 349237313 932072154 966103009 650859443 750755036 405929837 746412265 303915129 534179916 790711514 809709546 437039695 499704119 18312668 773530535 190594440 871985595 799502491 814216509 838168910 855174148 579482858 938465205 801326092 889796534 5552097 661697747 993864459 994434513 683253643 946133605 929467603 980900317 147462072 912664231 155523838 202901909 415116449 631772462 495238925 638008192 446252055 768411796 16061662 894619077 352532807 609613359 918638150 985205275 888945697 937487194 809475720 989641953 938237279 989550214 520626948 686743722 545420425 680130756 867744699 976637053 130466795 285225421 732787926 877311513 127646811 917288081 521886920 788328550 700967312 870365164 783522617 896798397 282230081 869559853 841235373 950875936 835766483 842209271 818584154 950826172 439928056 647562337 445527330 673599433 415930420 988984444 879146165 879813437 764533047 972903929 146100703 616566334 876260042 976920027 792867770 994659291 944940371 959762250 441743513 625235662 221957903 737322893 358069738 485747020 462359200 676833645 846154175 936935586 744250370 756410710 655030325 785417364 971404441 988050035 637790886 757418213 46057167 693993835 17189600 785924204 56991072 78463862 823657119 835725772 43731496 873715000 424361956 798852561 537426775 802206802 844241896 993446394 548336042 824556425 396664832 609936855 347753925 540673259 635460016 865761761 916926727 969725625 887889300 896306604 961162047 988425830 205887311 384220343 509734032 564036951 849959282 985311182 669318577 962626082 164923550 456208852 564024478 839457278 269241865 818816085 48233903 91912032 266521842 692959461 613369711 688024673 652892887 850210056 349859884 925642201 328721663 771748561 612588655 872404556 713652805 888001405 182474850 909862680 467145009 796695885 517211175 691228404 121431874 422488126 691560649 986066979 798193441 871064451 847431577 918026098 313347356 363347026 128218542 725147013 661334854 866925489 286494569 656676378 862090242 990555937 339165883 746403386 576926334 977696132 466981328 540038545 781535022 982637707 434123753 891702317 943889609 972449678 770615017 894178590 204116406 509994146 804149147 995242781 703177138 803572571 49740784 661390657 216207051 916006834 821842006 895258310 498060477 887966834 747071422 943130494 735769078 856092627 87994923 644477620 545968079 593531413 51063555 204723122 280885561 837712871 737853956 836306370 498961226 860045999 692786144 914078039 126254947 681384068 512397009 622259933 986984335 987078429 870673360 964714254 210874429 470506601 440975584 443150700 17819931 584971373 288521023 324288941 930002501 995464461 944190656 959638603 334113927 913323405 645906228 859588042 135127404 274207793 493535326 645243647 427392720 825861718 33989973 389234823 732230693 849106768 658864242 781147325 723766684 728164195 508175964 799169957 55252332 254097653 776862114 847095869 574179412 677004911 100870996 323145233 206767614 783865837 934922615 989763063 405812602 761765301 816020095 860344426 771848280 872352472 113597525 617932185 216577017 749298561 558138788 916690706 430410901 925401254 361347392 600317270 808055038 881992068 567585778 572666345 510628601 592548156 378258003 386275564 326117266 973451543 772629871 803537510 944713881 988701948 937753334 991152571 729823724 748260283 708639027 724593778 655658780 688807679 745556483 800043829 819037656 953447733 224595021 751735605 118516805 986756321 954505360 992925492 888240007 929323571 807204045 821642458 666076288 678228512 737926041 793119826 87756642 226373684 776751068 837257144 609398117 963375494 402307861 849248093 329532266 987243762 230349623 935408887 460297117 747379815 625786424 735748493 755687438 886272256 605408863 869702944 551168958 802967780 274641666 322822224 402784596 629717146 6590256 972321325 163037020 744706151 533866558 767136632 882769578 990026594 514738292 542197781 988510620 993798415 858305374 898266760 641848148 675287799 364687747 697475284 816112551 967835990 681868513 817916615 721130493 799785449 113200355 600873963 624705789 932715135 3330630 789630801 530677436 697118699 676726506 753709466 694261216 857039679 924610429 971922763 908677255 991529122 736815354 934391321 729838040 743260169 312150936 567260912 509972215 780944327 634779450 906334493 165588432 167671530 132065536 687611393 201978402 690263430 242204516 242889093 162105385 476308253 760840371 915880402 110378357 343394072 763492993 857746668 262464788 807508768 715875237 965843037 857797150 943066390 564031361 697604500 349266858 731657813 856579476 936978499 627230400 714637825 534566917 972505319 646725352 701209368 584163139 688881668 900147547 985947403 157559602 370036364 827771655 932524101 289088435 932484946 60630110 218576718 620745447 866970451 474317556 943790809 660935200 885034276 684418327 928010154 561353113 734431001 194646778 571341715 348713217 482012374 396872884 928061394 761780686 957669011 23286105 233994795 517592251 754522623 710596597 906824586 355608253 795931312 435569692 753551499 117901696 248808192 926629167 940893244 792325458 868681338 387423229 925081168 847605156 900625872 234985209 691805592 110388185 524860959 443166411 615615405 413653300 724126553 556944242 621501067 105608121 803267607 694151973 875673082 394067036 712877299 671535940 973335697 602064120 702149569 239238542 304009349 844744121 967796101 515095385 795052287 121170067 246642678 375177284 595792162 324184473 721407842 412227653 542324246 692648482 937977398 451285539 682036327 867904114 876469314 329399003 863923665 616103843 943363386 377622472 597649347 736262989 986575001 191145538 700451700 436672484 872009906 616866895 648029137 786786853 932923764 825830544 895556924 235655857 981051509 179217481 917824933 848490715 896589996 433266325 551173650 177461027 535858173 468403564 761560605 76333104 498047499 992516162 994778753 541098600 717866871 718263715 957541776 121235160 254687518 732736078 827777978 641431830 674372414 411521865 526704130 5277603 921869403 360616623 529232244 66001544 922898148 709687291 834843453 558300129 940213779 154185446 351098528 733979705 820472144 361513876 898565736 580833562 836446546 2529525 973159399 870892380 986340492 586156472 629260306 368016727 602634854 211652795 959317580 207364733 670149186 916440261 932048319 567328367 898293909 614160805 648274057 12608581 822522942 483620045 564514955 384092932 710377356 172860899 291281968 491117468 749283421 777437044 963671579 154100091 440351250 187248658 561560590 282283906 500892646 949130457 997477745 323121255 467315781 787945371 860711652 380324303 609929538 321001060 488344008 995858956 999016707 4884925 542889788 223936337 751163669 458807443 766510579 467212474 865843440 184958848 616167182 685388096 931191707 389970428 991014187 71219238 305207863 317220419 489247628 381855902 969497263 592771779 617992953 409391152 437706929 850546599 976761480 922743129 980832790 169073880 567383964 687693588 949250134 863785258 892539462 968305147 992031471 754349340 917620788 578558181 584602784 197491312 580669758 838379532 855128150 886971220 928365253 898884903 946151316 770457944 822260462 787531824 943715346 864643635 980320357 67319632 141235413 300304384 462562925 14126606 135257948 497191996 701227528 752251360 855549691 236754237 935276310 547152316 828476867 279041466 983837902 252597963 478593188 669993894 981452840 742984668 882627584 71830652 648886196 629863343 973003354 802387927 832195277 164331643 480408409 170346675 446587811 465009570 975240356 377495647 841931381 469685962 857042496 806161725 949783686 453867639 601102793 271484236 852698679 279968274 996170874 406117982 507243748 311210491 362276817 396295347 444138648 182785903 301366273 13343212 463779540 934540516 963804656 242870450 955822656 360981723 990045500 889967904 931332464 137605293 477415617 627965680 644581432 628162564 742676377 291993556 810093291 416189343 757096467 937647419 986023206 645419001 741378986 289664149 995886022 372463030 787926974 943530458 965692280 685681932 745664952 706119641 888818500 511217676 700522621 456438881 461655149 663054037 975276713 32857358 738231272 861060640 950407225 100762008 106572117 93645754 770838190 115994752 644300714 47807494 671451355 837987976 865652804 250354349 648990067 365699256 968878743 854909182 933759205 683907847 763847253 59707499 335537148 21977576 151872026 676566421 774079162 646636100 729779523 884240421 932348474 663600360 687890652 715488422 746679668 568011414 608846126 790840301 897507121 783509164 992822564 565065325 687081644 674529745 713112803 188714653 212754324 622911912 804804869 890966271 979862078 675858871 916240665 936631733 960536287 252998067 680961495 45560797 667738654 137602236 357800214 793208457 983481322 628850038 652692139 605922576 654949383 961980720 973057734 293946202 443279849 693523512 887378279 482934804 553472448 436339649 499726795 432941139 467932064 756469747 809489110 434230106 693359466 478068176 968429531 410987854 820926502 301236065 916307097 992031348 998600204 584365613 911420312 107408641 152788334 702550698 866009089 489746770 695632641 127891542 574423045 933749223 957970690 294784265 957542546 235390411 617298108 811533646 997229696 415148732 588643948 106607743 403677457 3244951 349663814 928269180 971637410 510625150 890714609 830277855 863112410 209113387 683594975 719434000 751878650 538258633 837674124 227665779 581480567 691466587 808563570 517598980 827850513 34274090 286909040 294632038 614489949 598226093 603067422 110526686 181363075 920126306 978571093 944635644 990982854 167101505 821815888 405654167 596769121 373357685 972622204 73957627 570037522 333998448 882067684 45749417 848153735 684812196 763121500 252548606 756524991 670621166 767931429 720183996 950786016 940927742 948738404 712762929 990831758 90310441 91293647 888587169 982282703 941266074 995871539 589302653 869115268 843534079 855141269 496190952 740656973 601290582 793305789 955509067 965695763 943769518 966582723 526175182 542125698 870421218 963836999 648606839 872512955 357272346 584453113 684013133 960267296 378713613 590179917 418902869 457806980 734870063 946147065 126918948 747192463 830124669 849301620 307020751 539971940 96889567 496977899 147564179 320636372 789438786 945177647 130636277 401545446 132885297 842070502 46979096 511318752 474964997 840733596 63856706 413679993 996611617 999390069 514205720 664355460 852712066 892869969 43525707 254470733 474818654 912727526 720504379 746523201 37875394 254888922 72689556 775893709 634324791 666573810 682318543 840238103 738289036 918567248 622504144 937799536 965786629 986434640 769671916 773418716 804345781 967768301 653425903 846100538 260631882 370493679 494256155 978393312 394338672 638127381 336025579 720209363 885499703 981607910 383128916 389639128 526402739 807395141 93956673 128803875 220062255 325356914 955529576 977903636 986873760 997101903 926241813 990813258 517640760 917240706 617617029 751326416 490609854 752794027 290106207 994340536 272349930 384490296 775955025 907408746 761021750 994023447 556833328 668855157 452408550 934939104 893607762 939890545 648916705 699779258 904563497 933840140 38151180 380350223 211807051 574673017 67242481 456537956 933247828 947644223 924640845 995839408 98248678 375122961 683597080 992216923 668232590 720685515 821572007 994382925 208239416 262597692 333324030 851468233 276170569 476864513 519733539 609187426 463325218 522334076 44379199 309143996 217900302 952645890 217645204 890874193 975552502 998010401 624046326 968919614 234358337 830436238 184441569 569179108 682881157 979895397 914500272 992175636 68919203 829490303 963001541 975639627 766455173 908044890 75910838 844661896 364680231 999051009 294950778 724466179 444686684 934056757 770609613 813496587 247380484 425879425 928721150 951657261 523867698 539686229 380566652 723610349 238578676 409562576 419509733 508316337 581772076 921907980 730687248 972262651 527694548 990859183 198465487 596088405 89482850 241628140 106306537 145010559 10814 91367137 405378975 552772964 412775858 658090777 603250481 786612512 464533908 598145682 982501762 983512696 948111160 948792933 60193936 117579548 952022611 993784720 123211346 580773825 864154562 884552866 881971129 937592022 512168009 802660083 303617443 983607076 142896840 169021435 155542950 835279463 765276886 852358553 274646407 969760387 388508551 770494167 285158870 556368191 709979817 712632540 749710356 980570511 235673395 329926807 141372047 831610689 978769652 984680199 585736699 896814563 664725175 843006183 798571232 930059149 637075866 715606763 78952697 803476220 557970649 813769949 764073028 784570666 677263989 856634729 34052538 175183703 875009255 880163987 358614419 795005012 431656681 482374815 227264456 862330999 609199417 932367186 250788060 365933892 659413535 989204963 672618444 680690055 377419166 458786974 369291591 773711894 84761317 505944443 999835249 999955215 205093627 698604904 517847336 566408549 650052474 878249333 943546806 958216492 310167105 900460821 792689511 924915528 841741814 909968020 127860500 276038952 104651287 540299177 132963825 743531769 771410 48316421 518950398 567130898 480151199 653970739 84599825 330362346 255572901 281345701 630578111 695684095 572949013 643195513 489635729 931528780 941513503 996590984 792003301 982190850 928169887 973945518 491205982 842482274 65587425 433076116 111441733 775448424 887189780 924449934 576275752 803192571 54129862 94490655 245297141 717016932 730604191 761488164 249169928 446949958 412275470 976010794 298616761 586166124 705799480 962932688 155192505 506363572 323709898 467372086 180740468 544355618 187211291 673769240 292568585 339714646 911696616 954793511 595224426 848085839 473163360 557229725 391328159 728960343 779766988 824339503 416282343 488928942 750060203 846012515 784301267 889377230 685621731 720046112 809895897 872530162 312210208 663977083 812965867 936176064 749205535 882069015 579354864 975657331 777636188 860366032 60292342 943407330 774180165 943718880 122620660 794123304 832360281 853163896 790907869 931652951 998278691 999792761 349638529 457853875 746966397 917081444 318697046 767278311 693318580 877555838 403306104 962115962 591147968 849695700 554663183 898054838 282593354 653999757 237071046 608529919 762807911 836464715 689415182 814606613 779483996 836976786 596020964 848580863 170508368 552766295 222685041 893173847 673504382 792499289 522781713 940225297 595087942 797530191 565263887 788529369 365548740 598238821 953175393 995563652 121517344 273040651 444319821 570135147 602434731 659672432 65294480 655790661 902802868 918855816 942146110 990807989 787171912 859815066 338408933 636485089 938854682 972771379 978740646 995726120 58153406 984194289 436029106 683184646 228964080 320463062 110048279 263564128 658426429 850479010 317424407 643717101 985578234 985587447 126088998 914719089 742333514 997597745 118884726 246815528 822167334 841888044 7487988 668026092 499011879 643372198 844019139 945077293 224472166 515131410 764804370 880920049 652236605 876366575 322736543 785543352 459654615 747548782 387030910 869172042 595013624 823314091 206322960 297562564 940357695 983210640 647231893 848383695 124947392 607563633 490106503 837232282 792058418 844587848 362285856 552984930 329482956 821456993 776174862 951121081 920290113 962238069 521153814 961982666 695734151 758764166 511232164 752448918 947171510 988750175 696829720 822438934 727405843 963976469 742751920 835036348 206766204 950388050 394261962 893245077 942234159 977152940 833041161 849247678 32384565 151357685 900649611 938111167 189525136 584227120 708080079 844173375 965300103 975532099 565592467 821773653 269736779 682111106 101065016 713385154 583144274 641444587 433502421 538435665 413215783 990478284 130766680 834239690 744992231 918862538 373969254 740467644 732873213 879496890 566760322 821640422 28279920 399780806 933383855 944347437 800462781 995991458 988325454 995239700 82091037 420921738 19213810 121382839 552097002 777651210 70401088 434973678 751098100 788487657 252302398 603126757 73019197 750756040 330093037 538220839 872547620 903105630 536461779 891477103 246963381 718642757 170683749 925159820 212902774 857210637 664587203 821986828 928404004 936548264 587136582 682414980 917797312 918690233 762509555 820999871 738293347 813151677 888894621 922484604 180164169 859416644 101416315 493567636 144229438 358528865 847168330 872567665 43035318 138678662 913575576 984630077 229739427 311279894 113096719 478280216 862916099 864235146 693733726 800793511 520940169 833830752 67541773 137989337 94691238 390287956 990426896 996043128 636206923 721156841 932235185 962660854 576279470 770448559 754116918 907057084 794199795 949193250 431800853 765700792 664236106 838595903 662075657 852221461 976353179 987189339 465781712 476068165 520812688 900427766 847619055 920264194 485583976 909918238 594308125 761174273 230676951 422583263 8520101 756789245 818715749 977682002 631674414 645781876 169520216 451826995 944133752 967742045 134150929 926593246 537908782 745640595 612285128 621089465 776267470 782185020 142369458 328389525 385970978 674459015 149783054 732474217 969702989 972194585 949207507 995809412 260169887 408506318 191315004 681173563 795675468 821335843 69116261 739236888 932806935 980284027 202475075 512809504 735859133 877227566 454623956 599382933 547211031 932503998 671100758 747593275 118492537 549159384 819962722 934542273 395426145 656556689 309768313 925117925 284908430 454616175 928580044 985656878 574740766 665886686 935740815 981298020 662508407 921800878 847500387 906132452 238922228 430432631 820351013 832384930 567027936 725425649 932548279 984998084 701781203 855878383 241517914 503449825 972302456 981875128 878634561 985736939 396669531 577403562 435303349 514514758 288266377 617995560 55290228 873868641 77481233 627197424 859081467 975821260 607924490 870798647 143340474 564981254 610474188 709085922 1577409 244624606 615427189 990320204 89475985 827510096 149649507 154518711 844020602 863104303 290567577 486082281 106278490 325866688 985764391 990879974 891706325 933752808 34178587 341122425 537697792 550090875 340059160 463157366 160065825 580838306 309447343 450757799 333788014 497991604 282094715 758729992 22523711 988936705 611114198 666438321 903982882 908365989 310183198 468799729 885854122 923327758 600395154 778994427 821839049 838875684 372224181 781838253 609507965 948884751 196457782 313492897 277109839 920948521 764659083 875590814 788389794 937648944 479560995 602103773 743278033 852327729 39250315 465208930 37534731 611994608 690784445 789019268 637623382 933012592 177912929 967869955 200840825 772817847 561497408 842875680 708913212 937565781 57668182 209359194 285503279 699073809 772240734 907510663 237801980 684288911 524772960 839937035 921797188 959501189 661998217 852446180 839717546 942326766 973137987 979218619 241769518 641271326 26870377 992243850 891978362 981186127 965847326 976573612 537891229 989024583 107821433 134960910 428828997 481341321 293380461 497310778 522532686 532523114 844353986 986029594 216311874 697655306 862214179 966616904 434047489 875902329 406494550 989583069 2070018 76919328 422907791 928694030 503917818 943642478 373696330 980622346 577478627 880525240 513847677 966343407 276489563 623163183 990491849 991702637 520373210 666545363 150151185 367545225 102696097 363959502 805851933 897827974 38275375 396436242 676604471 688705448 639774946 811569482 241212940 878065285 341676267 567486826 913067487 980966770 176648080 544146201 608985908 881763011 559244323 872925008 294800764 945565444 151711400 514076492 995228509 998277901 392416743 843537996 777041410 938435571 972813018 989464949 234333966 919825183 92326890 346268892 859145968 943284843 949079841 957564254 53327003 113486291 572372372 584674658 105344213 410266062 600756208 787021820 90334352 814699691 882724700 993627989 647999916 690668541 712831358 875197112 336631412 525070764 846487673 949295363 216833626 659410062 697796973 873633535 366465182 505851863 189650790 211063374 150396451 379439939 56522003 117155724 187365281 701228937 749717667 981166911 969584977 982288726 568399370 671576946 294561561 586469939 496325647 722349582 794114926 879536803 907332330 934216466 941164441 953137164 264735059 443286458 749715423 948438615 30185526 947397345 44721086 537893499 610935115 955196577 712591554 812348143 920961400 984484354 119446397 312872712 137092785 645993560 258188578 594108297 638003345 799051485 500706913 640353904 838500416 923657936 574331163 932998552 296126567 898325586 409415819 699945410 528901849 762278264 915974372 934196662 135377870 167076956 685446873 824292445 962420862 983977379 698227092 853859699 749259193 978470084 503324304 892369726 278258897 900595059 430802477 794760658 140788664 993144291 178692263 671074270 863294152 973303409 182522077 959962697 32098380 240100804 692581327 831743502 985507314 997778783 973451018 990381224 648624159 675712680 232268877 584123223 838226313 950287891 438674800 583757359 318919680 511948941 795460508 822382344 396224850 591392290 380223426 402767372 286184794 561342226 510306851 524870489 725625725 737990773 898315289 911096212 323451352 363103066 809754215 998459244 599118159 732092643 117155695 505014978 748741478 796516107 632946529 949622328 770144999 856673841 532137897 835122997 663163799 838338432 533768189 875257457 569516979 723254885 831340034 949542620 118081010 415431684 464420302 739239408 613047271 640076669 232196704 713996444 669918955 710904833 871699406 947772082 931163426 999051945 103795544 748609433 754600514 909933860 99143661 769411490 524022136 733548362 982329371 991947390 896652299 984188134 638019171 677714783 81243284 362137074 345060782 677743180 641142054 686659607 230365819 649695546 323306503 602239940 234896710 518741424 774874993 827350505 39338963 671894586 516281571 944136145 183763687 431355855 78864988 227461399 356473714 789085594 169836787 190570446 557591964 913863930 750407058 955043429 673805367 980590714 304038686 534040416 494829578 943010591 671620340 806345828 718006512 913376619 827305267 928444694 555309162 910952186 931302197 979505374 576062935 591292680 550071601 591860211 398730866 840050868 176753273 483185911 757364593 952851903 673212792 793969409 957814700 961122510 597689817 629174827 466499676 473242082 505508267 913420193 919650359 941104806 577609856 777805154 871085873 892537298 682262120 877228510 590742937 676306722 318097237 769969885 880169652 950776604 949664372 965652711 472733886 787468550 105490941 238307460 13423001 199775245 484805321 856998598 219401188 497282490 779943688 873605847 143572166 368810647 376389379 848021558 372316239 839691373 782886267 901968623 95315432 615297804 346755367 699178181 858755107 935492372 310447115 515067924 201247794 971142827 803137473 834042249 190220418 700804673 827835645 841017251 869088559 993634226 335598609 955720302 748801803 940354381 388526349 978753218 36849576 814624874 219959397 726874031 836122962 853683049 34868829 837862446 542380530 767155853 919616997 976046600 632262288 913858536 889664491 961071947 472877188 733269791 84200853 549209357 86413845 685835634 539936129 891341704 32285718 84717717 59459658 858744917 257593434 439419275 398678155 563264719 204728706 915107783 863903343 904328907 555654597 578076000 409332124 942766566 473662659 887249016 468317868 559484142 416103382 795360642 393114535 828108787 791597069 976400971 280527609 819515275 385094975 951256944 710232344 859162949 406730058 667287905 367553463 964658360 728265443 966314752 11545274 971343209 959464441 998817800 495177934 985889387 948958326 972106884 46997141 305262435 199565037 849024524 440197820 629166748 408224063 506340228 333922838 337923029 574640426 604724447 634872083 776254769 508579320 783346702 653341304 975301149 464428007 819469981 889728565 977829242 157565565 164671367 980154348 980812123 54089224 652351595 616390975 790521109 380751534 543680104 370388500 607444667 208942151 256041142 931285663 963012247 315006884 850690946 286221419 469808416 814366384 965079732 693958769 869420611 533979158 829276866 593763410 601691505 470979373 568472453 662201990 800669340 923572913 948859074 847309572 986451334 603037942 777685183 183833516 527710302 465199770 671204433 377964075 455955068 236120538 674514047 697135274 803794569 808782156 874229447 448242175 518405083 254265217 290454977 712236401 939009269 349454554 983783546 338953510 397569074 933261844 981557321 192346894 968120264 381635282 522420857 224979692 854238272 943841575 946602380 522197084 772063575 820968262 872435102 621126881 800098912 219779274 607849358 945505650 948004410 408728667 877463235 138897588 767198187 385631010 770631277 16422329 90677912 111694503 327000321 198212942 399606838 604999143 637312914 194985263 340274954 328349299 474541549 220736479 292726656 283460126 330397414 706780183 851081443 576738569 660059861 991617432 992685040 59502813 360914124 783749460 910073410 402271741 702411792 166350053 284604612 951480173 958509799 234739437 402735280 424720508 906636192 308197139 739774867 978040562 989853100 383547398 512437042 451229016 812741423 215400207 372833084 848698402 973264873 437587863 911956515 219579006 856787256 200572159 891045247 134556243 492691149 52677689 365593608 790645372 977715916 894127230 983797223 94584548 367641881 133560379 492474474 545168231 918132063 371944567 757493407 277276899 995393990 733023558 738437786 879459776 937826550 4709232 485166989 272389340 545468376 11946983 896016988 317176114 546091395 493842215 903171936 671850506 770355102 773552212 845218203 510042820 892300265 656035430 905779857 922739414 940045985 972206980 985892493 739377417 842354485 17273496 530359993 775947934 850423258 876692977 882709804 701410529 824296067 378959993 382406246 489119400 777391845 919925351 982760919 220571540 355579971 715872542 725925663 693336108 836698616 911846766 960505187 721734699 866124169 812198078 977106228 262922838 655717630 293610457 738872541 150156479 963689831 813726950 844824419 877585859 942114884 903842960 969754712 949589156 998455793 319056505 457380699 934934443 998904830 435635619 514496916 238262839 520301918 212825270 849882286 561176888 619229126 714893466 742141601 561903841 842327315 837119356 844523134 23217959 192545723 838304362 899541949 118169672 145582575 42295236 721085437 271225581 874125136 356100690 444313551 856667112 971759233 948683192 982945299 249669977 454304304 118907196 200275786 44727345 687610199 748908498 835185624 694634734 784719055 923095237 989359782 467277611 657594903 499796197 857798786 400999044 684018254 1064951 787506014 435726579 900555084 875549237 898224067 715923660 927277548 498536722 889173080 781929988 812536519 432791775 648804268 136230219 242753262 680833855 836866059 740345243 868422249 718278637 967912375 195324343 237755884 424303182 457162550 211826596 751775851 610403987 778266420 915039136 958005841 202492812 437350019 258202045 664172900 546346750 756712937 678730578 946814519 567771611 935547249 952855032 998343866 267403896 595697306 208994815 624547030 564490135 785301395 533914880 885621631 66550553 576521387 361712432 822754790 930014154 957654184 64157319 456259916 453190798 887120991 314121159 647500741 858656308 896946251 300568107 437518141 221582101 993261563 199649976 538293665 501948808 654293167 948635042 981757573 131936083 560081449 118389574 570775228 713579712 967137774 123291027 589242743 243116955 749397452 814934537 992821453 217738820 872324447 499498533 963723820 795011674 842825946 508226743 926619627 801738483 841505937 510453554 645815135 445242210 978977032 156580701 674226253 570248086 823892122 982646738 989787971 283232235 979353555 421903289 605973513 216235407 962046144 105116794 215383589 976778351 996172954 888236562 960425990 73978985 925485671 840351470 869174802 992102584 997323914 490874109 610021151 456515931 595669376 648071006 665503233 892595556 956491028 304154445 837339087 124952361 702356681 739515630 848579620 806897527 948479939 208172496 270347930 840620115 909421747 203495601 369059917 692074064 956772767 199336640 199997425 296462777 619552945 591941905 923600505 161154020 178890927 468405839 529597262 226133241 988099582 156085169 744065903 672731285 925571689 145536395 379056786 228825794 573571549 58875863 324608441 285003674 285034630 801689561 820589260 963567781 985196766 315357141 825840688 427725844 607085257 778121121 820603387 314719682 526979417 606444513 885213159 98313863 936505696 51089876 662848730 267050192 557284335 505016469 776699931 987124797 998672033 655068670 664003071 163973889 984795191 549236436 892744526 959707806 960438230 938191383 971901619 505896231 553472669 643618842 862877070 716066925 813064947 373468958 678358160 124607181 329660524 661535360 710724001 260565485 517893243 420766479 856252325 838133962 884034822 934842407 951204696 102358250 466533718 976118530 988662281 55488078 994452350 784162213 822243312 352352307 682473325 90523838 525494230 450216437 585949258 151063113 901308474 833904801 897997885 125052300 872184885 331875339 464480891 685926122 991297198 868974365 875288975 576922273 663660939 333080204 891713286 808878106 902776573 775319575 937926386 598584737 991065201 860733015 881366379 333060075 746981090 182234010 642447413 202636870 415987775 49528855 612938958 512220877 752184583 14635989 857115181 657750829 978511469 396126618 840815337 508885556 565268969 328840756 475439607 386931571 573428202 949304449 994327348 608970152 650512893 232353117 623294557 357966900 552067018 634822866 911639224 328208632 684502757 960401101 978552676 140057431 382399361 687175967 711190301 559700910 931844159 249762801 256035539 614873632 628356389 570006231 810967639 121923825 803467504 782772996 868691348 592881885 841842798 124794338 975262641 931569830 937443460 505926966 570950550 454235427 926482563 165893721 272458692 160189007 886408514 801562962 809012472 39709575 268955034 750381151 826787139 31047522 686085906 11031539 385556399 552953897 999081401 449894159 807893059 963057946 993391805 116232450 149326813 389083419 439958159 773538922 896102407 436966354 725717726 501632749 810741280 384700196 581378308 925800263 979591439 136474060 400771517 441109140 635558666 197159589 476368957 620600656 841091055 494431782 982640757 79652374 138155231 13573753 359085947 71112073 796509417 936362667 953162898 799554009 844273093 919440900 956494495 383804755 585267528 518114417 740648895 386903160 766944134 831833491 998311168 182246946 739161944 611102083 712577422 55096249 310337338 296342615 582711164 838225472 841792791 6580169 597135755 962548164 972804697 916291764 944221005 482239148 848574710 394633256 573787335 957475397 999268685 400125679 744345230 336169926 406089617 809892790 881897925 86010362 672032035 264627960 578429159 633134840 856819163 33576645 154893798 208461221 293971780 172704465 228077841 531880609 531938109 981524428 991987002 254977692 920624364 427793842 786555200 405690828 864526653 169550598 991331695 875349149 999256092 59103068 992977460 739447116 876422553 564562643 820697893 137295127 575879660 445283814 883803042 640418349 932875918 227086677 871837646 554365650 574548600 863954491 977265090 495930679 651791134 877539419 967172573 620233601 698445552 488088315 785528600 56588341 822407015 33566077 678054901 120061115 805429095 364301209 962777962 265384995 874343773 794963235 956669830 393951802 706824984 729455279 955312755 597765417 691622323 961199834 977079917 191538908 439427979 782564 90252804 442183073 444586671 630633703 875870707 929124886 983781334 37860660 581261162 216571401 481598354 121040146 485617955 455879953 530602055 287930465 482572887 800374637 831261705 19630515 660003823 495488017 691683469 697363656 849973414 238006294 954006644 397358272 540814575 709486612 910401230 65714781 589135675 984315819 985893909 573018181 961134073 75557081 635709416 336065051 571123032 175166999 770814584 724138481 995579998 814529308 896307886 177615550 524878104 300765098 334637205 63022840 567643042 723485237 985970544 913072906 983899763 698779581 934249351 368515447 871220063 15317052 863383043 555321255 662377543 461680969 606295203 916248832 993072122 383696958 524417798 517326903 603245322 713421761 944049296 803086504 832095625 230298387 835049994 836378132 934466538 121596972 632525659 466278652 790751153 833448390 871159910 104903338 253849783 425325843 884756095 989602252 990469459 918194749 920420190 41999913 74708929 884204821 948527065 50069913 686173722 612573688 618476946 304557740 759938405 264942637 492690674 29145551 323423978 491335790 870595094 6221238 572542614 698668794 951101484 228056428 993771004 530363030 765226314 144907811 586558311 757991115 840179375 946549745 957982896 451379463 937130249 456514820 955200447 629491339 702996963 231561372 653065584 274535720 779186558 564477856 580923678 960908072 986266563 158052125 861670896 998423258 999359940 983939254 997241439 956979655 997319448 711668497 792532432 610584234 939207892 353868521 375092524 686267618 830987626 929411023 987468930 437174215 595722086 129898056 376216120 902236699 932836229 109931171 230989419 413653381 445071425 587010294 665419878 284241087 839395523 778301125 880604256 69801221 494432029 297649535 875923068 555322876 811177074 453317726 823962334 863406011 951980062 850761884 852771243 519350278 820982354 556939872 714745994 305352220 562774798 229093804 964705305 723249338 936444123 59487608 63727146 365999102 985211564 149857454 615575015 567735853 868573158 293208841 949213886 736248417 866583437 334803448 366180411 878449075 957221386 846737877 991594910 861205269 870071208 483231727 797143890 320016311 409489995 224887629 527893916 811768944 945868189 215508452 453220070 215450779 589205696 687837947 745913449 710276547 968965898 913167949 922288225 724848437 909511077 208168944 822888518 360025602 445178361 66802582 261407294 867499623 900768377 922826648 977270884 74934843 375467599 459031536 862110343 219030822 373232054 870809578 872754723 501614081 965008598 423751298 745037112 517105613 945166369 194502155 571327481 828763583 952863871 642334153 833570724 142118583 773287731 661454174 760015918 355157350 457319818 85533941 359248999 71730305 917070121 564351825 834345090 267210914 686583957 794069113 877403299 802182266 937331394 74282200 792782195 345270620 347587089 239733463 364868983 898533208 995385096 444651044 541274161 855889077 982308436 47919928 526924141 75947425 664390961 800577244 918641080 74056574 499217335 932587467 935852702 249560566 791094001 995019333 999647698 445256112 464294849 957905089 985519364 260156156 921632962 848548692 996321542 119008663 767333175 35338915 207109606 479071805 988740128 847901878 981776294 61247805 821943161 64218465 136920543 723549725 750506553 143629352 904653883 451361844 482482648 154395616 518395372 354681250 539773124 9121802 75867206 911356068 991737678 486866789 646679236 57319324 540063439 354827710 438957316 699359566 846164572 684009511 809824538 165803075 627392253 94109010 96840591 875193013 938078448 700068055 843107632 279299398 793775072 47658048 336478493 229014700 363790006 784068047 825358665 323240419 628725470 904279563 980347693 382039340 553041554 836143228 979046609 817828923 898861493 918558624 935288404 7270985 198351475 893625278 996794187 833247976 867553545 487368398 858181928 32661435 376196161 718281630 942390593 420387148 994421981 569278199 945684179 926129653 990731155 288729522 614249545 143481762 147938757 863503924 926045520 101708309 449274170 260603542 782876966 629105555 829513787 145869259 268639183 988129023 999426353 994844968 995975455 840684904 851457080 744124227 920491607 112139636 230295217 253867022 816926877 713780370 731052634 318874413 947979334 431539439 887284885 988623553 999237081 836833423 900480607 255134143 380829689 775461692 919076845 991941194 998786108 955697540 979038205 858428573 892256070 161265243 448885349 94974494 164305022 996555023 997380148 110793210 550107879 364606886 920116794 417270584 623628629 490651841 962051577 62617940 701400841 259491612 357315857 495500383 808008428 974894837 993285196 451286339 898964522 484571679 760292267 575429962 835639325 232545063 948758482 855143121 921845917 288045626 411439335 368320127 954452187 357225075 726096820 404879780 603882323 799208979 969353234 260581204 311602111 48869957 776375479 125286462 790877964 186983380 682134102 632100788 666444805 628783815 955642693 747830919 753538425 953579524 982794478 406802576 721715139 474785327 636017945 133027717 511110636 922344989 927355954 665131853 967901086 773390447 939673712 379696182 948925509 474917497 695937545 957237182 966324169 635513558 702962715 455186881 948020778 788057412 818516958 388669830 581701857 63524839 96258463 90460107 606828840 131852435 692948804 926713912 968997885 856376845 957020156 595614150 993866906 165234771 203811089 459446820 650368190 667409746 862750859 643434680 846293984 408452449 713613453 114034493 575698512 544590871 948797799 92703804 126484174 100199450 697873296 996752436 998768721 815359506 911818773 878643691 912433398 245214390 593263627 403911791 506549993 874158293 883028231 520868096 564210301 505235751 760288584 479030253 898498513 330924715 422913105 299805960 581117845 332280603 937427427 877143285 989965712 806123008 931728524 500422576 611596503 161275098 311873636 705238989 738297759 781230828 838126960 815587759 969005840 945489067 947904351 568586549 667211966 161669250 988653373 42793064 924056784 256949700 397333463 845083733 992346314 127473122 718737075 828855326 989048995 677935625 755664333 278082975 347030531 33212295 542152838 802648606 866189614 841990412 988538229 321430727 729414501 958771017 982753759 515490620 545913756 73397130 516965595 636354088 728331510 376326588 583647583 673965194 705540538 966247415 999088152 422564270 655150672 133512038 275317086 158639199 758573176 874827667 916819408 910381136 999791306 167947016 520878377 111832339 346990195 28354303 715269572 41777558 331569256 698429798 709780833 150026548 783094435 348367040 677098759 466094429 487907079 690104320 728051557 973676356 992359614 687026739 935538993 724779665 806994692 156158823 883668303 958772085 998208512 87789874 169296162 604511071 699084342 285962918 928467380 646391386 958933891 89270003 951958674 227653452 697023982 357459373 978115390 479150742 985648704 331136269 391609451 224669390 256585968 27783138 455538149 495553379 728057849 298377508 355864670 923441458 980653107 803500834 897543195 733515065 792521096 151041479 394451512 22235074 199793093 301139718 745306801 737763337 763504741 544066521 803870555 86600503 951828392 981239524 984049996 204469814 534467341 963956120 980476870 243681392 487073954 599663612 691989607 751943269 760912203 848425356 961463165 559059204 562268749 884894792 904887053 795229280 877156040 112508003 434185365 657349766 736210773 179668899 740520114 840273389 893722715 280437331 850737792 109973131 347440758 871649838 984714293 638771932 797125600 675787915 773092768 540405524 709973596 811884959 839215704 501691666 999928866 1088632 168621465 215046497 914347384 206927904 523831485 485027891 650008910 757970768 952362522 504005053 746865676 170444738 514273900 970383253 997772175 43399186 399642377 776276734 796848991 940953177 995941847 751476616 925158030 1742174 490937130 291058380 713180724 308582605 350742900 816330157 905265830 584025908 721561935 454004055 842918222 327711523 550013915 841387947 847369193 250147896 630125555 546969482 985195919 372343246 554705845 463196006 659100305 684262877 808341929 159165396 513232082 427685522 704271016 879109674 888819147 442273069 770461059 394864512 749541029 791439236 804971972 659359472 854525243 912992343 934547031 180148767 657083899 115883927 997883365 1491257 663257844 460573232 892753528 77126076 129289096 602410062 722333794 988738131 994246289 446390034 492560975 38428065 361467426 246259912 522199789 136559542 854653831 750104262 968912905 716126705 926978401 99521498 188896798 318693280 758089615 398591025 909664453 769492432 932914610 909872230 951812339 367903023 997481608 989043189 992378598 424843359 732424623 920850573 968756609 371140714 694504724 936963187 961300753 284590356 297605079 769422743 906952119 501354190 643505194 756016238 852214421 552886174 562518522 953692268 967354087 395236504 754475111 431620508 807364060 359693422 855776028 83998167 473435572 777852162 794052950 307219477 362301558 603309424 759374409 993512952 998182764 75549428 76971774 250801015 926822029 981198622 999462426 156183116 750239712 949026551 956837099 875849101 927598796 784362182 839683906 308469067 948831516 482049831 486936624 617934599 947466626 527834316 787269348 169544486 329702497 246267688 432115722 277160626 980470396 142276527 817625776 261371782 896405768 390138827 541583945 5628929 509377106 518871549 633793665 768405702 909644410 967093461 983206230 227424035 357443262 293287414 303616029 113536367 717590815 379927574 741717312 349380023 434674446 945280925 973231588 264484578 664007785 857094068 966254286 351262684 979132833 7271732 261578636 235806164 643142404 842498365 983894193 326052454 582837446 865908801 904993484 410777650 526401127 772702342 859120656 76206460 400554648 733386867 922266864 591844404 708775263 96526297 202457491 113195849 626444514 69151900 832969625 326630693 632935756 559627453 571192522 21515987 223984941 642186387 685311726 876545376 938787455 983872778 993018851 264294331 712052113 3301324 679517033 296982111 637409977 2703384 537795857 614783631 723086491 870241065 946792132 893646706 981678222 121953695 165126588 995229350 996290890 719288756 801662669 767059966 875329921 812219848 819463910 870985331 987835036 815005447 955931720 714136182 866996740 378233899 942214625 760721962 961119412 732123610 872741193 925385221 968052449 885353158 895322765 400486048 619108649 485241198 531408157 705715654 981745033 850177064 994950695 3698879 322819143 700311388 857902668 597116616 960534906 11537620 608114902 803480108 870443400 836425424 986068244 517655868 838337579 525295514 750348103 10099803 103724699 978149327 989689115 900294025 987432428 211552025 671337104 778705140 896397554 744434568 785370103 20051169 815385382 205229555 234752965 270107242 833464574 480607709 934344792 98793293 312962924 974290766 993720033 482951423 932794650 568674750 951187407 675370535 728442639 753590239 935938140 344719914 902778762 420782082 631107498 828684398 841668438 205694681 608193948 40215159 363918208 600639200 799272489 142899242 150388755 208091370 402897292 561950729 609179270 678614989 705478471 567591338 642962261 520477391 888524262 582356075 892722891 562178430 931948798 316530764 657117359 897307247 969383447 423760533 657491881 65707325 849760778 794470715 879717698 90566826 444734964 469390532 987844628 442897775 773361290 443236369 590075278 167814334 917625082 878349490 940685938 447739213 965135284 479347720 791088154 545247804 884557551 709539182 866258323 148257047 472318819 567878355 905972350 389005907 501700241 509824868 517245732 650422438 654965937 551258050 843782901 484998186 631922352 903821931 984131796 19911871 958161609 703488075 908187939 93993124 211122557 89564691 826602025 25858089 100477213 485810026 537783125 951193361 985636821 609377320 724536790 134662469 245147842 335424190 493204213 685424568 783228625 586777171 708361683 359604270 789075908 497157543 791561017 857166646 900439243 424074831 659377285 404446254 440443729 602703778 949847907 483416893 770341669 386732038 890800694 850661482 972580165 609103472 852301940 854908451 928121377 862508134 911784710 571138123 844263658 373160902 639884440 647604089 793993562 195970106 861353262 422927519 929275279 809301550 829509783 749744130 767501130 612143803 677392380 756857942 862828424 788285036 822845508 535508695 700117064 609419411 724997798 945288910 975251663 290465434 343728640 856541449 978529455 579506438 845393685 634071188 889796280 517684710 680001112 612989593 668436313 80069757 297330437 313009237 342113665 941746186 943581289 745427812 977333231 732092339 735470557 312864595 672513957 842202630 963472006 350496935 542839134 433683451 806709425 302417187 870748889 843685155 983510575 301679675 443763095 513206484 867729379 565978505 815239077 176275172 742588787 766803382 790384380 245861597 700804147 766703213 853109605 329264980 847499614 241331360 444749559 251859815 523554653 810337513 841147170 31045728 243840566 260779707 420384788 333334938 334407280 576563303 732272957 311366313 778351427 740391550 943286270 142575413 428229894 362256700 569984908 385535463 460919358 679854067 901892861 33884948 257665991 173242442 348564643 180946735 827473458 375147838 410486993 60033133 946728092 760752759 988814864 999356413 999956484 828981073 992857924 60678740 241422508 536840512 690609905 767132297 872722153 428662313 635935216 222482147 336911196 627025267 634157114 202801388 417398743 391722637 865244117 551569594 773824865 254380021 489289165 843503717 933213257 888107072 915122593 811874654 947902010 155033215 640222001 110176230 404468629 233396471 378525210 253461710 761401829 17342857 528370461 932038800 939532858 435960277 794855282 908095740 933531625 738700028 820356740 736720303 987956271 427069842 530857130 638589807 694057940 872780243 887095441 445569072 577848799 929275608 947772403 13956930 132883712 930502996 954145755 366691353 881100923 938864585 980653520 292554911 354977137 39763639 822963593 524437520 774841308 765487525 944157822 957875380 969098631 280594340 729935334 803293605 906237500 968513683 980262513 914680833 986647598 450404563 893915260 784807658 966956388 6198773 682665444 742334535 787818284 281955772 968587659 684352939 818645872 294257643 475469659 153565733 330498446 205335994 561607362 217510894 353709719 5609737 143988235 677086014 994392173 497097177 742647260 916021464 928171708 103153034 226789687 994042409 998298708 354220819 791132857 110678621 477466234 261836813 712484938 271084555 719246942 274341180 409799634 723080171 746047869 179858791 952348840 722598652 966157455 516378539 551453587 741754894 885815390 178107817 469234405 464545456 808360071 940016474 970130485 880950994 954438214 458047880 918922645 164868671 880957365 225157752 336974569 723617555 795411367 181318253 272314291 145083313 415553357 680649573 753215717 989254715 996212918 456239487 996645448 273393488 584630488 699436637 978839836 258984078 346876701 858610953 974892390 965174509 976684799 330863470 671550777 381402765 663688442 368974919 747339613 970468364 993895704 573859935 743553670 377199116 818466305 372730801 692601050 84739041 733770083 873238451 992562961 649648396 809631786 38284478 810369841 363958607 427546227 978170955 994779469 935701398 977280035 63623384 508878454 222704216 961186457 848146042 953874786 811065415 994125548 643413825 679847474 538884533 739161641 903989214 956230154 406456845 436718582 476700063 716254681 880619798 893346951 976344371 983659369 545274431 607670337 367218323 699452223 144913282 389639878 24083959 503316166 697960408 706916610 277397467 742520262 925687601 981653664 596264729 652653808 603875595 865507704 825252186 946455777 768286198 898803849 980944723 997445371 607616896 768856860 953872196 990245122 421224504 824121303 849679314 983776147 330272244 771630406 323327590 572724966 596400340 685858880 675636730 857731107 571016708 669392033 54043329 424546782 491457839 555949353 370918656 582891593 255463208 730859221 989353707 992513532 342639809 348074287 685884500 744113558 150117440 412700955 499215470 997548377 314570878 746917742 556080477 930111581 295364973 705948914 738131996 946186544 92336216 156795253 893346327 904223993 408075862 455818362 241551264 723844199 605931205 615079370 81434698 256359574 974565930 997470913 895027786 947679017 505273095 728366376 453203889 950112349 494610495 546501650 531252348 750185954 55391674 271187427 905996430 976496689 564520280 639087055 219306045 632771240 396458309 615736857 163764589 542267470 746958431 959203090 544876679 809094245 621242505 761456762 791951410 980631890 470519931 985623910 187340180 371500139 495989353 888515586 946671738 995591328 43843954 733479263 54571452 789080503 914978316 926371176 622040729 668220531 964188114 973507721 615304351 642252699 640195260 927529348 240588428 568726556 11854820 506670674 933737727 936524936 223100469 839075986 278631573 619551118 927812253 953695230 114802586 401076546 496000839 707055454 31978590 80814615 376665892 724183020 155904476 805062209 117590397 469795893 590344705 596660000 999492760 999887852 420049039 679253633 351191188 538267756 819151834 824494340 848319201 911795853 896267019 937457296 414003 676537446 593633389 900159117 589742206 847293292 414212956 943682684 788223456 817124387 384455939 729891644 772932752 857768998 208841934 670188370 131111994 604085933 262657262 557244851 534106843 737770832 525477340 704207269 419988717 868552689 632602275 696897469 307740456 679375413 849009872 854029117 347915225 932306730 360448959 409056289 313021555 896105370 268906093 480702436 269817930 418526374 5741028 507546757 201630447 882559626 664029102 712334395 574046621 662115902 412997683 829604300 785037218 914247170 531078546 595801293 71064795 757205149 143017389 869315968 91378646 809451508 791272183 965488045 47413153 969278912 818894184 956342836 87909788 876068109 360343394 699147962 718711156 914356007 679030248 862583155 369774188 501214223 966588576 990052483 815978213 922606597 866519420 976637373 297859257 983904298 74263154 648295131 883838474 973495044 485311878 971254274 301543834 345267573 102430532 479717374 309909359 925059005 113071684 566477812 429961177 462281229 309642205 970012904 988028407 992493670 176048929 662223796 210120567 747617217 729263063 786959615 401722470 919849324 236745311 696797484 35368757 744950221 391535942 823848776 209093524 387844289 270779997 895713457 503300474 842210898 841407351 913759946 945274538 956421863 728849964 873229750 592563668 990758396 815784606 897285907 494346971 968523418 937406264 958703312 541154024 927304375 86195123 675261106 89273757 588048372 647084066 779832409 544426253 675993354 952794146 992481239 770180975 913492043 451427824 658778851 593252288 851734998 565877117 833556051 722098118 955720913 892559206 928447898 162412814 210276450 936313008 981529936 445104553 447311887 272984400 404864883 58428432 243668121 746876729 750245343 472122560 535749830 813409368 990905328 343172018 384943193 850118735 875754537 259352229 820455498 736930065 750295223 910518617 923956930 869019370 974977185 408214533 813240801 58329834 778959585 965586533 989620207 217395091 936994672 869716936 962605872 673149268 792287188 26245211 723567859 895643024 926690810 491455386 742039606 538449907 874824970 38898815 975133543 141744845 168131084 605058196 664541603 319456270 719540389 767491584 944413564 938559382 944563734 230810644 866541748 333739449 913542031 715909740 819463336 281175836 966302417 20964594 36762565 350791917 543695917 678279379 974298362 536309470 569125477 879736567 911423773 49863726 939410529 906888915 949179963 417970939 657901063 884169262 997760586 9696576 789199146 18857679 526718542 399686927 473235463 838876308 884981982 203250395 599763608 774582391 984231403 943631806 989452179 729716235 949961423 534735559 555360301 324944037 860235928 71156171 97223889 137376400 557793282 34220348 383570029 205443841 891316558 838698985 924855278 557763373 634610261 440850240 745567501 911121631 958266887 199100804 265813539 503033769 818681435 795650501 948572680 994238353 995611686 379619271 438972270 939247113 995803245 119332046 154696828 940072823 984758775 386783978 612164010 549638872 824069351 237853383 989059809 535789444 813013945 220677995 392426552 816958946 963050202 680154664 784067819 893702114 941926809 141494303 735101387 189525231 855752020 617989301 712280122 744279041 841956438 679297565 800883830 341793847 896454861 65882163 659411682 432519801 702870953 461569301 843817759 780200650 939023232 905852802 956076910 562397396 930658951 2366805 487810102 5214125 573297973 630558495 647009434 667325434 885508639 422424148 615336475 419558255 856699383 851514579 858452442 327003658 974341405 446709032 530113708 518802984 953353859 874595782 887562883 858434831 948325997 665625163 761787463 322027070 567167802 42417407 325921620 903705429 973901516 519569478 838297159 352990968 485851461 455483407 558022693 660272049 911833377 328694095 512180439 650418767 933486220 541703308 773530925 840900041 884853416 904953973 991204781 235708750 734281013 691928626 744168015 867164410 887192294 403818490 654048527 692851418 947692630 584924794 799051292 485022182 848635711 755694081 898465575 882925527 889623105 919642316 959339751 834891229 863738882 361747139 708290329 812608817 959685396 109440541 761505455 837177106 861475890 292779348 506212124 459999622 639964271 643731320 790877768 365145760 877326749 175878281 593832631 862852354 982473510 241653666 621019235 650860869 716701627 123294307 126817061 581547496 594851350 87809629 930438740 313633247 908983925 886650675 906973441 413426872 544033230 748127719 753249718 355749188 483995952 280071564 858686946 670905614 800750143 73666679 615924852 192035628 357296682 823951084 917363878 408107791 571626178 624046380 923945161 184842773 263570058 252855570 672426121 676514167 966265324 893578040 925093750 601981646 654909599 627434847 837733912 93178835 904231335 877986769 961919216 800174764 905748322 765361512 877067012 751419976 779497451 197704263 977989204 427831858 954900237 618699743 881986990 731330410 986663595 268372875 340066401 198853744 758791613 335927896 999280894 662507751 967483326 102317098 501812266 670049618 834934220 478557690 542211929 673311493 868666552 429370929 817087336 136148318 519568433 303418782 539398641 998008085 998488370 386726752 485373031 252624051 872116373 297943633 653522770 102871902 865311143 433380252 608510924 675942959 930488762 441671423 444754148 717662113 762626003 185193098 196835732 846085633 892595541 158093768 981752583 981690048 982037579 929285512 985521850 501761360 875001743 529849111 585278755 752922561 785964566 40053393 687988862 974386125 991743020 802161383 870716190 608006377 902287811 884137402 978053986 475016957 799555063 563475385 925032326 480963956 754118573 528123346 880913163 26255253 981277551 817491007 952816601 688840635 749671634 489259681 605370418 438670790 759554675 781476883 916826960 786351509 995707182 304624181 901847605 134027950 545263225 809263473 884281982 242372168 382075784 45978448 708678158 443882458 884238371 289773527 934064677 797515132 873581602 943856668 955072244 70660422 407830495 758224669 813712157 300319232 784400651 327725097 757629239 888053670 896068809 187650689 641179895 23505678 384219183 278881385 763134385 728576463 972756982 297475250 585870522 260888932 635099483 456507 354810464 37649179 349119166 570981827 808096470 628077941 970025685 250283181 316411247 377826380 831406769 329764412 428421726 125423578 275870054 796374585 886761896 307319699 664463853 104842390 539881625 858519706 864980304 138642512 167788857 510311306 513959613 920715309 975324275 185254288 384554093 966995192 976142627 452547016 850488223 125890868 622261127 842561834 940513377 54388308 527464163 475348615 608582985 512755134 924500128 388479684 665624369 276332525 971191538 587184455 850668217 405014160 687500047 38619466 194672248 243576297 303614505 639689231 782884774 565617956 981001576 642345716 724788353 597424827 860043664 586763067 884565138 657905171 784937303 527774994 621098552 88384 970700199 441977482 985485313 79071063 393192438 417811537 618157415 145435329 720174042 968341102 996511989 53654334 248181046 524486585 713755025 313359804 754650273 751802987 892931301 664857660 945045213 809352006 958345830 716968153 835946670 183902670 589476469 596379279 902212460 921909388 992715912 232175925 353515627 555690615 979202673 368853216 485504350 1800939 875173747 682906786 765424295 206212282 994123383 251292337 632442519 577690024 657453262 697264271 905803259 642340676 955243872 891434996 946818487 10579657 964731533 964090974 964836037 958985500 989177878 915871320 958922801 178486011 846895176 103162315 489027024 98443630 271236518 420734403 636896565 643894989 848016092 633360154 674283986 378902919 476066246 770236670 845775525 731724510 999185438 426663357 753649210 789445155 911132460 42398282 708614303 351750781 388124092 683566062 731641657 274924313 575300920 888223321 953060261 465944346 846242679 569574851 847606234 888465651 890462124 78042297 945572364 29360178 723471601 449605132 687186562 269493906 374471221 671362241 776177607 600085650 628256804 178244112 478896757 34659569 307194771 895930112 989339227 410234954 434538157 778767550 933883952 210351607 476358914 758720097 774660376 986285441 986537264 698572474 777004225 110475758 742478680 37141728 378154409 286262063 300440728 152993576 509404534 773701323 997316010 402559341 982782969 857758871 927062166 136128565 298880173 234084700 913789741 960029209 967007625 666497592 962746551 387027522 734314420 889739312 984242971 517854820 910271334 292232902 881806539 121193249 357944515 33183673 342866261 338823431 908537716 752571712 964229189 741642508 873233956 872686089 888578002 290338532 964723371 859010157 935405189 569689993 653295648 279666763 979776077 671857132 883571064 958965541 996247840 528345960 921610434 775973946 869384509 838828589 861752149 348890127 908874095 931125569 960705881 198206386 411015255 443812561 741587954 782508408 894591332 350744952 961735962 794754139 817403021 999077391 999399846 20878240 558401637 296449287 641286780 991060436 992680082 672418603 873630003 926689479 932664840 85650607 519770048 941695507 941899993 497858101 702611135 864300757 981220819 602882181 614733571 242213476 585785604 645446955 964916721 9931901 847339932 49698088 344160255 752133555 925008683 720085420 799686177 857594795 984124448 225874026 595466392 210177888 494214190 416363404 838310808 131679914 395035242 708071826 958669893 571138150 828392573 748699257 820384051 767772597 795484921 466154898 652883028 943640451 951855814 357161887 740657413 851216922 916192586 229317092 683694914 813440853 840431705 866897710 992948512 128278590 623131201 185655834 409495231 96719386 108958065 282967718 455595691 76340408 526854148 770344860 846350121 816141349 856148649 244140382 769549560 5468105 543385948 28033451 678204019 916752679 996068266 57448722 203071133 107294966 241217642 229728901 899187967 794045152 971431932 168682173 203644583 390169061 472920828 111127241 326146162 6778462 963591971 182524243 401567715 225580270 990761568 517868391 830189215 205980628 623362515 340124768 955882978 308018440 787297824 578687583 906165504 700016589 984782665 848062893 949143235 209946263 415522377 764242221 914341066 472550503 643058857 869914190 952453767 960850780 978417323 744757764 800268183 584452828 823906763 760611440 990157494 886322948 896960076 344252209 405049709 34294185 636015124 555886745 662524883 327773020 990567977 751428401 776437881 161660971 360802493 692542443 889897930 551585359 929839747 257656600 889390798 584971470 927852053 541229324 745974406 855628468 907383899 334595921 738897239 443747561 671306400 778724255 987812106 907405816 926933813 962818563 992630533 356065353 935330256 600784906 764996949 96267188 993748383 404976898 751747572 207273949 741444644 240372395 251227773 86679365 128047053 197753261 213174350 127476825 751602189 214622692 641080667 280589645 960094568 440253097 930343855 412786296 427942145 216506694 587292799 603259918 970744022 455094106 474623539 574922646 778765032 906284883 963963161 626405399 747263322 671081569 855801967 626436370 784673908 906495114 927902727 905546034 918813752 502601122 717123399 43157068 799962857 222769438 294943368 164019006 578866713 718391958 876859958 94401230 871317982 823159557 998435515 472904745 518175358 4094720 272993162 906340516 930965596 946601155 952819573 308143493 989046494 179583318 582881420 86035759 118040264 48456533 159639309 543220565 978486118 689303846 830483317 758456979 813115295 371571520 967466406 190930434 943843278 324040977 890529383 727841612 886285017 425074812 541556978 393288823 857094620 626910130 667111028 296875988 886845034 674473172 904043536 34732221 273339619 760693459 973136435 519348613 729481854 966101006 972623401 233897061 477750443 956756156 966830472 237676268 578526289 3163729 559271190 661136069 735423955 991467869 995350023 288653393 526813130 22799597 892797979 992898386 993170326 22667494 484466727 511971759 793061125 567974969 981739401 504308195 676214363 98022155 691133475 832379500 889942791 447033834 955701082 592103910 970055346 352142849 510000803 277468794 801066941 175750723 226711681 794688931 805689967 60997520 874838579 934807249 966923540 851906509 944406723 222150869 237760679 863463926 911409023 116318276 164958591 696277057 899550990 847465712 883331462 369946195 558803161 700153257 766306965 656689161 998193292 140763790 684034185 578537792 992102628 179639920 961510983 443369029 595614983 704776785 763252797 206389387 652920154 701656559 881120404 353741047 391768574 384099489 952467187 500648474 809565129 807698108 927147278 398145380 444846401 15306612 678743746 373702903 886152935 340687105 709159771 409938458 750812694 686091552 811402983 465762154 788181378 727098965 962704850 798020850 806771851 507369329 991729974 122843082 851163604 354491895 472417646 167731521 836288283 258031386 754303708 329035260 641278730 713433543 800912173 925127531 954189096 721992004 739308759 441117028 976243059 543697074 914017385 855153582 873761357 151833890 795820325 309412577 557336169 459406226 773551786 153786679 874844119 209371046 597606593 187785360 741964359 932175005 991202906 421401967 753101797 83888947 969887340 334353600 954525199 197890919 494273905 361670632 902304571 998674788 999405301 308911024 679402154 502261559 853441286 845108093 910373905 115000666 160303226 767098659 799606645 146767642 614018085 180763674 182539501 416301957 834810026 205333368 274389812 641228136 707815367 753610750 797294791 495457977 607242042 783199669 947498605 89388390 499662965 188731088 594224383 410549587 867527499 796577783 850888384 583536538 676218536 761307335 767780788 677481068 791636567 177454165 949143490 281401953 968348356 954520032 971186670 33915143 560239006 96085796 288265678 460037633 903878597 242888725 293745898 107128007 578689219 946386178 961664292 683828512 888728600 262037221 492454620 472387670 856949643 278217795 757179616 566253118 905065388 772734895 776828168 188129491 614876545 897994232 907495108 970558902 975982164 806058472 934763115 463874965 707774382 656934069 933371936 840018497 921614601 426029433 520506213 936278155 957315299 131306811 883550637 251137471 284619155 972983513 995427187 36128421 629699208 531075022 988240417 866702000 949324784 202884026 483138810 251034379 733806895 731576579 795559700 560233586 988715096 141193624 515744493 688118859 858797546 618853886 638800739 582191857 869050348 160764773 623230039 942101347 961847168 60564265 168300556 656844435 883263281 481394057 531598592 41524751 430975161 522362875 727900571 958515860 960765060 542990706 899012583 258944317 558875199 861741600 887802708 488239076 854878302 638122839 947202672 514717920 778448832 720710375 764030138 484834005 535582868 738241719 969784679 916740117 985670269 398187487 738683623 57011454 410502719 388621910 964553341 865283048 881272764 703880883 727296652 391658244 550598100 602808775 784477674 496579373 863555840 70643087 982569288 460716409 526151237 237329367 605666205 650235568 907588004 862117558 985297854 238772042 660504739 998504641 999992304 549309132 641485550 447387539 556718177 368795142 698926582 217194394 231114673 721582657 959536382 588056734 884682943 558349153 593234161 553326993 571083920 70536310 596131626 737464856 953342017 662986229 722000005 983343865 985943836 833391836 885796470 720329378 962415403 145234489 442111084 364306381 904039810 879484749 970668403 312030919 979199946 215750201 940172225 907931571 934932368 688419056 857785299 207022475 303747238 658627848 935149726 95110077 855500013 425393453 502592767 758794679 923122406 597769812 745739054 285777147 394231373 723436677 818731818 333197120 613962099 721161284 829108738 905358162 905883296 612374374 947896220 907890046 914729307 647303582 670514884 67896899 505746476 279713915 809169191 920332985 937210730 216005517 994057611 21523941 623292554 158952264 633374235 639692455 923689222 138283758 828577923 456636860 840882841 397454167 695837492 481375845 552048595 481999641 951421325 372844844 614840607 646354188 850704275 47402500 757873569 244969331 695811996 249369820 899433383 695386022 822919664 29903157 995288663 688328839 995418441 475413830 647682808 927788315 927872679 436696636 904169871 48192602 703804900 24141720 628625761 585700889 641833948 900100223 910922155 642856931 658255158 52097513 450934660 937575581 991409144 419909770 906371211 678291430 896148697 94212775 575422496 721732835 989471698 37115877 822459750 588451619 667508149 151132383 248270058 202853836 414027939 618746447 867037395 395002388 797324605 791316570 986748518 745417810 811073696 667454902 734353282 762548376 929987233 852491611 981883885 458420752 517991648 340512626 369625032 664310805 919680553 527396775 894605064 162670812 348287021 53382853 749908253 75291376 467276632 250761070 594517356 653288875 882485221 825111907 875878280 633893470 880059126 110067951 288427868 137638123 914139177 74648552 876584328 788068442 953921836 79864892 810501177 509252910 849153608 711504953 924602967 76950398 767734520 325248679 674376148 370690508 418994908 134205606 276982753 413592934 806786723 750600828 851970929 302217732 537676286 451497433 681213504 896678316 998290912 642458465 645417807 224084235 382302700 328655452 599845463 48409890 99181043 550323674 680406449 17316982 844725622 231801558 259508690 854782631 871142019 763661848 952224777 601623729 996708841 471905835 761637844 961391574 978952987 870178570 894441861 693240104 945397423 379452110 605387126 135512959 571309803 739165704 965854282 256219459 281982268 281365639 962620926 949175045 957972338 873192301 958189817 448256329 855941418 971170028 996529050 768705173 969928074 352503425 995218848 370423207 983775383 866497395 909006521 52482730 519785270 152585721 682244814 521946819 607302465 166249731 864484203 12915942 250815545 686373253 901410526 111135626 380524842 524089180 678147183 332797004 355904171 72777127 198807367 86465292 237788288 666120520 978646721 506942353 876013170 616850986 740959536 741076868 896588145 617662621 896360774 211870006 701004764 967215479 995340368 342909010 525492503 762675816 991808770 31532875 985002826 703928134 896018087 331806429 844504815 668443204 822244453 858547952 931396286 38984425 246783895 102349766 561181508 9633462 191765794 811673807 913628869 510096991 566529702 737903565 818695302 959732098 966723155 91761620 642429533 200593135 978585949 382764507 576999485 908460044 974271387 397968366 737148703 407044328 645878652 81768995 740623230 817783069 928533129 962542091 975241572 692059340 828718369 47462336 924717983 433955191 913891642 78189530 840935076 29306821 941679510 753279941 890141447 786275708 905978911 469629121 753289802 232567149 489342322 407927668 526339946 505271552 754757191 509146348 882364584 761790007 951324161 701784722 711584035 526312784 602874625 51309333 450521251 408363622 735453008 602791132 915647271 564872638 774057302 795707226 817223185 51737708 643790775 791014843 936235005 918747779 934489008 480446884 533578788 511889368 547446342 342750191 869671973 609777478 917840727 595056825 836966985 313636933 831874111 843690377 849473449 305230782 785440305 83312428 464928655 218033282 323187454 709390702 763591441 393604661 623344699 604538498 776402133 23708194 100558026 510916737 807507068 170543895 996463972 801786590 818153344 117596386 896040378 132850148 719263101 120237746 396334894 45361865 976161901 106905197 558580066 713180079 783511368 881817930 969947317 689559233 989323587 504729842 537452346 956322538 984028698 550571385 948780820 345698861 437854979 863906585 953036170 62102172 250126660 255741115 609808954 514985644 623526449 852861460 973830521 183140699 877864266 549367011 699031729 154241552 735068814 525530921 930324472 474998279 778197346 853027485 977949181 955072999 962731246 744169190 892030811 65094319 745616864 169030207 692619239 570883684 747302596 917589958 936464820 363779875 782194792 476573677 635322022 432863138 462918769 140146576 972967429 489101896 786318936 292086596 406533977 407214544 683892692 12238741 162000341 434595460 705731365 200084916 311987034 84256974 748484641 86033305 723414351 280665637 395729883 621986688 905768237 276287251 453641413 925583266 964019208 327598802 682119464 867127082 893322506 564160757 733839058 973645675 997682144 690709290 959328812 116521209 928627522 129762391 202502504 641356317 762778459 736520997 890482693 155312323 638313101 891564590 926067168 530752 77546225 379435848 928383237 827258420 989421613 378138314 494799888 643745019 924145482 739590278 976503923 404007970 685189691 650588304 835264616 666332406 844601321 950955736 967978114 73695547 192126237 151318760 898264081 95815597 404216489 759933284 874666906 254377227 701795803 531877343 921267718 953126370 956856598 924061515 951753476 596969945 694595813 411404155 799389423 746496939 746949432 9899802 545518150 939378894 992177089 773642160 995072231 948671972 971028954 86505369 419182075 516129842 829685240 481965958 508487249 139696624 617507341 842099938 901502735 281397358 295414272 334850278 792954722 80498843 945545150 41905111 944765214 947111981 998266631 337416006 837173289 465605326 480624610 605123582 931413098 10551775 134979681 591773033 881095394 916596142 951658168 508565381 947888450 937433789 994696195 461156049 687785767 550002394 736707812 253248625 595074757 685694559 898811475 603513619 657947815 825855683 830964222 997267634 998722786 570715414 693921712 781543385 896762103 433188321 717500117 627933100 947622642 940929500 963158634 122662040 556170132 585693028 956742907 9571374 764505020 533718858 806111963 549469570 771316391 337033919 705776781 569031178 900806277 866448283 928842946 315980714 967291994 631241739 720075824 953600717 989604944 42232523 364256807 920217309 954510934 324780939 613872142 743652121 982301471 125464736 904214342 798045617 833754868 409186736 701988076 806594078 865802694 674464277 815132963 373560050 637585226 420821295 818371448 53402559 685504381 833346210 894280774 202717209 966885806 812964119 916845505 83435801 793784821 345796871 952943486 224092252 902330890 597454219 922399314 405949458 856211279 951066418 981738938 706704318 850667877 485131939 844993204 681318167 792404397 340681147 992000224 816367910 992312206 65985182 105700929 856082576 995720254 539023835 930309147 243208184 788686187 269508086 654554882 453701125 680952305 957131043 976263707 696493827 782788428 372426309 621588659 352137768 758484143 890606621 895947282 614781451 977235307 812851222 900564660 607909150 644903755 359202561 705582816 751340276 998204499 592057139 793458824 237642797 280887676 102419966 785926155 197133613 742438484 229298182 451905721 552239074 727020033 701975219 974260884 205791333 833197738 758030362 978445794 233560870 446969135 9001210 68049979 254540472 988420145 932725353 972461736 141389645 212772975 571176684 962040777 765577292 834815193 398341701 768689016 383034353 618871825 98157526 581066996 420882439 805315216 448167976 513444167 952727237 990760243 458691793 730357116 766800876 963485207 768851360 903956923 414082548 507692000 231007917 699447380 672580660 847183104 168637179 921108757 149496757 815370358 301974772 733442670 291311066 508120905 816339160 997816470 5542071 269411658 18189214 855536267 924007976 981928779 128907076 992156246 90863965 929596999 750963263 880704034 175122133 875273880 969333710 972102649 351518483 924335799 186102852 661300937 608532811 966018422 743447839 967555063 219692801 766573285 416764631 684663021 596879917 932727500 422649445 756295066 980064457 986595838 968289104 970796803 513394488 911986877 449828917 504071367 46583403 392996769 308843267 792464794 767585135 850044165 544586036 826154542 315357951 397837289 485914054 786867589 107988208 269024004 824221996 859720274 52201064 283897796 223286073 296932453 231824032 560752904 335758235 602241194 213327489 692739862 276801110 422081162 890489148 938219336 445328671 918035213 475544226 919688276 699314870 969146701 903983491 998276326 775664900 826423453 368928444 861794065 735301424 836371696 509987733 807874118 399487328 842274011 208668857 797036885 346936085 518199749 308997903 981223681 854967661 967827808 898088686 997872810 459901730 481344128 575223721 585812716 481603253 845074380 477055632 771915516 191267844 471371831 838363768 843859793 881415146 937105792 676810575 874416167 869617024 923009147 960678124 963406107 93242468 937686392 39784115 964514136 462538334 833059320 781306969 887903113 67065473 785942131 833838346 852031223 802331581 845232977 647525235 872620810 103421200 590741504 764433664 883886731 451527931 717135664 231674837 416257976 920090764 966664149 782637242 949849820 194466783 830627546 813754125 845378867 772181530 993641045 960566968 986570807 829925574 997703796 744921992 936210787 431131309 712617723 20991855 281141904 305959377 675592577 199930981 739252902 73761557 969842298 870419090 903019446 495620330 785695352 980213971 994842999 12868902 350854369 989246258 989506538 379999303 541181760 699990533 777804817 113377704 317162139 656449779 748853150 612972545 979997077 52232834 779570358 392558302 965549252 737894809 763383934 100244379 875857236 82643856 760374719 684375060 934824087 454399356 563860422 976890907 997856644 8599870 275442593 13913827 843106489 494647360 784852197 974513006 993011911 638823687 724708020 330394002 593364276 486441678 721503827 283212485 391894472 717007720 849651826 950117998 981274801 44624852 927271185 145212124 787139228 957335379 986566403 79848521 957637403 922556846 926736076 579105409 658757326 78534201 533099356 451026435 919890650 25828344 841452461 510758143 552866354 218768707 649314294 261534758 578089683 268516211 808428450 599422032 935111727 77820620 590123358 815662307 954464449 684185299 736486284 532410756 959549384 704353148 841009178 414824906 962699903 294057648 762843211 883317345 940421770 27340076 799679771 627604108 636872096 148272592 630394093 46368082 600879756 716644588 821778073 226798229 805457161 550302908 730637771 918696546 973054796 949821317 972514912 606189465 906396132 106519645 667372738 161596525 269197410 377747305 480580539 770522138 885082393 54042739 485731762 77922469 985642832 576990203 608318093 627526702 979933511 317628087 923710312 632033034 981442710 501170326 531751106 250566814 538652881 825283173 994515196 826734060 923147359 844838473 939845208 947237066 977455988 147113394 742328479 781793534 787544059 496660379 877750665 435838313 583510250 255437264 310726846 979275236 987507421 805146105 808080538 58172829 897971955 294990334 974009586 563492874 883053930 706962231 739049868 15157804 17372527 435805400 570183515 197809652 608781982 177389180 785115370 635453269 716893742 537716023 640943419 977053225 998131885 310235539 962946963 274101415 952901729 939608705 942860181 271101136 292168347 915371081 920544113 164425806 491105311 273486884 502522740 241276416 379562269 708616795 928781150 573235499 686470420 108978037 961588860 277063638 498569472 802226944 873885748 83560477 372427852 391052218 864162713 667745848 913063152 70929404 502919123 452038295 642927337 463708209 688771552 46921597 174131328 223863373 758062464 35140805 536917642 206626535 625707260 127364395 873811116 465026647 628095696 237156902 274927204 249016275 836694771 551476216 623094808 969143520 983976211 348079190 441211649 323487937 987589973 930967955 935497230 8533878 10733878 697334654 926848550 3101346 386487764 6914509 216988403 744888549 807692177 831358482 937264244 455675596 936272778 535411485 924009452 483108 713680506 466292252 928364812 253519555 307152127 943464516 962102758 475921188 608542934 87012650 260368954 445981036 925035495 139627632 574510506 385643916 970091676 931669256 983863999 545407802 547829497 763824580 817902009 768906809 972813954 769929616 985327069 203636125 667068463 488283413 555398902 681755906 834575893 241768756 608758316 621200936 829032843 515086834 906478312 863533321 934312327 512491362 944604353 236188154 956107288 982778637 994561287 876778169 943332214 504670664 739412494 58334346 818033523 390529696 686180464 415869575 778159511 923927692 985884389 453464501 962995808 547458082 713054260 996695300 998366385 23541839 493079193 168812386 377685834 461930767 576008091 392538622 772267251 999549283 999629032 366593158 610642524 293000271 604685091 416060135 730831339 408967184 509792971 697142490 843999011 242637905 451625848 321596468 634892394 299921062 667878134 807534853 881144514 947627951 993273388 319434975 992842468 69639468 482702838 244681583 896429219 699855805 868720059 564512997 979268936 892211198 990579965 885201529 893744940 609983287 946167067 140271464 892670963 174069414 822228395 130870348 601147274 571759189 937087328 111915039 713142239 923744106 996876437 352244055 615317697 110493511 916509625 864470497 917762462 558853098 690983080 71962859 394729380 945684623 995835605 34749171 258473164 613250240 756943178 371679266 425126573 605655638 791765342 870576006 913264076 663499892 880637341 439894062 737239684 750297188 949051947 14762823 129923811 287043353 688147036 547854780 768726380 305798834 402855185 594452794 819350490 97319877 557418248 764725458 879856005 639281976 995793260 559816944 765279341 135111504 771628356 125853546 322334692 371986897 605276041 330690610 658248656 642399406 817568760 334356855 718499948 646053846 951613415 969584373 984252548 502661620 880531267 361098985 667110275 746360866 788165958 159586928 624304084 201758761 224354729 859576347 964933615 642273142 883879943 931573783 968749883 768210867 999311154 192654674 444638055 350904071 660931862 376910725 805455277 234000390 599443287 66170 70856051 861245011 954133642 254901057 718497935 132646192 854514696 601629748 923559340 961517360 996676196 173619601 383323967 257494594 828204916 748537246 933308945 549388940 867405518 549302360 554471558 592614575 715320430 477074383 747245266 890053536 966087149 633073735 821755067 179933367 321483931 199543524 842568823 565370805 915405788 806761692 987033161 586337991 918488030 276535731 473915209 539234446 609698931 843491495 938146813 520283506 922755935 760731676 800439360 243406835 685835596 158014565 908945303 844917941 913709431 381532221 885360044 622362128 942271792 810544378 939173319 863440366 948311064 61398342 361895826 520889607 705094766 339432350 721527854 639839904 986834400 924218591 930517627 347148803 633300927 560581600 655157178 536786584 895076173 295656872 654020247 384693148 515677930 621564804 927028593 213245853 979476839 684852849 806030435 627016963 651311666 229195125 784083356 239747435 241083701 739104598 976420032 265981561 454011264 98525723 925369463 124189335 464058486 245539361 466129870 557335477 628959981 45151912 175764036 982185583 988569775 299834417 923091283 899262850 954644380 740238128 856617340 591997418 639724589 48257148 781708520 812570024 836238155 547620001 671120012 118631911 845047405 650612204 901912515 45108501 472439994 225006992 671493460 920821004 961849503 508445620 982682829 357109474 543070018 819453177 919584438 952324394 973174610 117478684 326582652 457315668 734212336 214089050 574003867 70788986 582547198 37486215 429204525 638162240 803755460 265431037 526164629 361522868 544027212 681648074 983231819 495317195 576706646 496995542 811766568 888252256 961165474 383074382 777841059 551356476 748292135 646569622 789260716 301539974 477769632 679689461 928510787 311861070 874490100 374725651 460920915 406065206 660747174 864152166 923777917 485188134 938775116 405214262 895267037 733390546 956742423 258068123 443050165 624970154 710577717 602218479 993100849 227245188 412652106 28555217 326190426 118247909 328871129 622336549 829626722 684192968 903215635 770421172 880366295 964099506 965793056 141683077 261854174 408321602 756097004 87028868 917938559 466275806 814436738 215395984 485155448 424266690 908684061 548708303 634617769 383875715 768844323 5538091 969536858 477011997 834233082 325847208 669176089 771602527 936612390 800999957 815015698 882740362 896592197 499391273 531224942 699860645 870445363 985442465 986055537 376407378 889510109 654810247 986589865 926860465 977426659 81037213 140189702 942957294 968294937 77653478 825292526 124604878 548715212 98488670 794754030 263915236 788369090 502234228 567892733 151393810 229336871 184885634 946499607 101240225 257594595 582286902 584992583 431989394 805472747 694601124 696735181 723943817 729321421 535101754 674599383 873995402 973617226 343048643 467176027 957554064 962871795 394701899 464567814 557703295 655886009 547323790 863408221 751457690 909337843 503382502 920324460 274616837 870488542 590997416 868593372 17273236 486672139 515607022 860230889 789963823 902787691 982459252 990696604 163798219 711300756 500776433 802019552 143219825 862972122 258545981 586014749 78497504 324141526 8130734 605270838 319835317 972731124 697521489 885687288 185504440 949557458 424507761 606585394 22130972 510724816 149449280 286039744 311075365 929814989 874079292 927655298 96308284 357315718 442350406 581650054 522755444 782101651 566927816 785810646 771654060 945427939 519397351 785573008 959685085 976396562 657457686 879607521 151659237 856519041 473037829 483500886 484860666 759350858 506501592 518298519 32435290 430586354 990380003 991721184 319307509 974950766 523744552 875343775 630887092 671926121 140002302 325574005 488183426 603298586 771915874 793063657 324530298 768844315 551225916 627298523 772334596 812273161 551093378 775697737 619946067 982523581 345344060 892583601 847206719 888563899 424983513 622403356 509450152 999210513 458880617 644314373 814418991 982003985 188006338 331692305 591880509 715863588 34257086 38111678 479324126 481643574 67845112 480306860 846041957 955950289 285257062 637834008 901604120 949806386 938135197 940812582 447321071 967027997 272596232 914400178 49611990 200471588 773781988 990966096 262254196 381237157 375202757 680606135 431550425 573972247 149593323 693562581 338472161 391235132 531672700 982073326 307826497 998388719 460500064 800947293 418334569 812843199 461245809 626040521 675222029 853991332 216059744 863983442 139670030 439079597 305840774 843827333 376728601 829505263 900684182 997714445 750552286 972997271 733392092 851187916 242402108 457012674 637186263 727954344 207595469 586244629 51873925 672020566 859997464 968321544 192801467 838390252 566212084 637191266 486507480 836446505 980982400 984136689 67344111 756011194 595666351 752319364 641199686 693258951 515780760 563140542 189564909 553329877 233861665 395797214 460663494 928606154 855544710 962972727 801900128 986202799 57053584 181703815 333951621 633816432 655544827 939755586 26845163 531904097 291551146 427288746 89337169 192741083 279749343 329601142 877739032 973264485 884241580 930306742 624734688 933432594 736732836 776773522 519139672 914070820 22687540 143662588 53487940 101112470 372039163 577502450 44875355 595501930 144776645 844831580 200172255 974544450 734905440 982219503 89345316 728609398 775716364 850433726 838410550 999596068 775586598 998250733 417532377 427962773 908478549 988164856 671076173 925551969 763628377 936057797 999058710 999969285 427197502 776979154 477922962 679019593 318281407 984866465 625806359 961475122 497614535 931541452 615340091 761147956 973130853 976659634 71157396 961087776 385288630 736519205 391872296 733015120 647230563 975834189 901702750 998819123 271693665 994549642 779400669 950073835 829991241 958270208 323359499 672432624 586764173 991153487 245150344 792941889 143407747 622777311 656763911 661244348 985620083 990347496 420208787 440941924 868429388 962994819 975620111 976095754 435263473 519327601 248896137 586267374 32032317 181026710 906022398 956631299 221148417 307468115 556506418 628618628 737808139 770903610 34925688 46582039 273106490 428566670 471245798 544436297 134781758 680337210 569840981 871505510 229363971 332354079 239460924 569015553 519760915 914590119 50308303 515321306 46946089 62955544 238711072 645859090 297170860 514168889 820420623 824793925 130146648 811793138 228804771 395872853 141972229 968658841 427838211 781918310 558345562 851373593 495674866 556488377 903984744 985877520 260750140 414092477 759117964 789960559 862322879 939457074 889655154 982727922 834010318 849579810 507756715 591538724 873952551 916223133 959428032 962123437 691604015 995314994 493713903 961125132 940050521 946501427 222522654 626279399 585364618 923368556 930494270 989581665 559088159 613434437 361941858 779204865 276455781 695883550 793140454 862529391 327059168 908163522 865868152 880626907 349634332 785988746 722270127 803966805 196514404 322607789 541541221 588319072 105343887 552377561 548865538 718656556 58750887 606285467 663308160 844017623 330493869 338677693 48904378 237742274 974119402 993540962 255161072 562561571 496801588 952085044 786000937 935395482 823616197 959236256 140132229 321706142 266778026 720915846 360607540 608995376 563014974 976073786 376116497 892286721 31227678 63858268 591840724 749335192 767040475 853745364 19218805 883524867 365576529 624760093 62310311 437279862 553414949 641785961 564491450 972433150 71850053 798542865 354657232 850324959 657456381 951786948 403622868 417910049 85470046 958264381 260982654 736880719 834323716 911352245 445181137 861867732 825987135 894765651 209000422 544473882 722325005 905226929 40504456 710950767 356485117 414211345 421757466 477502591 238154350 785291367 858678236 982586738 870950837 948742978 536132191 792958268 793733621 795845365 177030580 238343101 542985980 563737046 429777283 667588396 472136101 607476740 665722246 816302636 8295108 74715621 767930188 851331824 105441818 662625093 423168079 747051437 163483250 604221963 830349390 874107477 132899762 151997709 6194165 534484312 771803933 957965068 743020541 893758484 30951140 364542804 952618083 967646304 808699339 871282987 825412711 908513915 364656466 774676323 663941968 983727984 731502883 797421851 134985332 926045409 45288686 99968312 827262392 944253230 129064436 891898729 43380542 307575249 962319923 980813899 290142753 780873434 894590080 921980934 783314096 908015667 857043361 921834842 241325239 857673609 221492140 434550758 284170166 691709989 948555810 973557627 220371742 779947153 285327374 636126274 798474640 899181452 626760600 644287338 217534080 638028601 301053220 923059654 856632317 913037826 621601878 761020402 292627526 526298700 829563974 903629260 687862202 907035692 786603803 975544780 877479183 988198990 245242447 688100022 838361401 864762661 257209541 304118362 183908897 699430218 566902054 889785485 146286393 658255755 716777762 914852611 977790885 982690802 488812482 532675390 163729132 262376774 443642711 716702807 553395666 589122338 538899488 723749126 291477123 664314956 105892575 746649295 426740168 740039206 639650078 699759765 907183363 948764574 939125784 995367205 753277811 976417765 267106525 297481970 105050366 906199352 714227304 733298749 685557339 735688179 795771102 858338831 762002046 928234062 934842740 957377382 272322487 743776404 823022473 841023609 881281483 953627222 741519747 879707813 198984166 442915418 842634292 880892932 12631727 77184013 778280048 887897853 48702325 268965018 274894033 594348566 80224971 308279868 70885401 199869844 540183985 721568547 690028374 742946052 352896723 622477712 320537661 989883669 850028515 855236050 600853268 713012939 711461683 872929692 242998514 475850495 427351595 815756540 939962278 981786306 167981745 387963693 692385377 828989060 355837458 360696323 527316204 940779154 54920765 375032193 337636899 824405092 552701223 620589378 31125736 506287750 752173307 808908627 344074464 620752267 67889104 889248682 286089251 331346773 718053066 798809881 932783723 999279009 664182566 783419927 127979154 442129477 279136969 599593003 300383585 489273991 959755721 965079798 644717188 793759243 649042653 754473418 555786132 668086201 641127954 985692357 330184780 883686967 244416544 518447951 585027248 809685342 623430052 943271292 619564366 691576078 65104472 893096044 75519341 528640666 577354957 645503142 513583881 661293274 613307958 620705291 375452445 793057007 736516923 811841034 864964322 985440584 635783567 926864605 465946016 862618625 479859935 911166040 264586713 915860577 307631424 654959964 359306603 964689613 81586774 147368234 665920161 771493764 861529537 906102044 871090499 934358328 813766014 861916124 859521138 870041735 678058669 960349796 864215720 967783999 142404337 491185240 177108732 532705381 455995298 952793948 630362100 631538023 110455879 611808849 625859523 932234583 317687517 651998094 257159432 833839674 106858595 537764213 319998129 442607548 686957016 786113248 601563875 725549131 85579963 406097041 258272378 319721612 919771428 925634255 41629352 160044579 3781107 849469934 191985338 426240576 611261530 918919610 999553109 999589725 357345766 806242913 535034983 671834707 42307746 926876775 794690005 805881482 784510307 948507249 321063599 455965413 274294906 557201477 667435617 934091570 536858753 657021081 122761000 540552938 193573712 690236828 422642602 949542406 475479414 652350293 59210661 89082181 27902060 421978535 775050322 916737247 868596054 881347984 581805514 673603452 624552274 944680494 381631855 718109962 91755336 611974860 948816521 950434476 537565679 767552402 470382546 873971486 792999039 959811672 193990216 591714314 881782404 979954890 649902864 856521343 472788334 987150376 765255899 920367036 919738101 946463324 932600265 979107610 402317033 910132305 34552053 814351403 18030308 716938596 817963201 895296853 11939650 152669747 95784205 849474615 652150850 879050225 134201412 136387329 571270674 850981906 74609900 623264111 858109325 874741500 908167700 985323887 178204934 708590909 318140637 649141688 10418482 578476267 474356764 677919908 868860586 898471245 373232255 610568149 961458136 973202595 603635162 655325733 622639487 825707092 559125310 821443525 774289673 826990326 222120501 557852638 117682852 719370010 799744655 816461473 644423608 747186515 260526618 538713720 545005170 950964254 955430953 995243901 327296786 782534624 861766942 912003665 98711482 787522680 994886429 996069086 724296635 967584131 40886121 987285535 238918131 284006311 163110463 478876756 335643257 402133564 348759362 639452701 813064514 931164908 174445058 297621011 658749515 678102977 740581584 793935601 751051281 947683422 535050391 798206380 466477708 609790424 561320143 584735289 969372067 976265146 119974592 426436399 92430263 184343813 18729137 769408450 949356427 956435400 150369193 311683768 283189599 705101424 625335035 964222506 690699544 793098500 715301031 835311767 621141157 877758551 116772943 314516828 730317556 958488345 402011324 961123500 613334474 963300458 313020510 386437748 643067776 789345099 239378586 435499691 134682674 871829038 76635331 851846978 922644290 999137940 455290259 542952524 104538476 393297640 64009447 305845653 546682721 953658641 120966959 512173583 291647476 810906571 872305957 984197809 702308979 910607466 248769206 448700942 522396415 793559462 391193002 455002698 239395910 706825197 102678790 575583288 52917329 223154598 291191599 497041923 71612796 435353263 423105801 699637978 799569431 971668624 225709041 619638878 150437721 431883772 825721136 949042454 205767425 606247228 400454770 927397248 419068868 522955949 669287446 936354826 8291944 261854366 964532638 973632802 410052691 687172079 536637104 795431037 295977812 403560500 931900885 937312440 470054748 650418296 94091093 574965736 428323523 780267313 226729734 950258543 15043885 623400971 275488218 742894856 798111455 948139858 677270891 811482878 527348639 939625242 434021942 820600118 833219536 892831417 257800367 681085958 389689340 500572452 645667315 834479754 40156077 495904464 703024364 928900016 371791771 584104555 790915849 970320930 7546203 882235301 101078272 283389265 770725874 896788224 818120110 901104932 230006178 935539195 117143373 855854368 194948223 589601957 636164155 732726122 461945468 833054899 814355089 866932348 329003547 484080961 482043368 897969442 474955348 939985980 861376800 930611807 837198209 955466581 978529780 998612702 86681333 950765141 728124422 875745212 944838382 947228808 621497607 786066299 54100061 344319106 522987009 735630635 1118208 222138627 347155238 666164723 92667530 449042874 878605426 994080780 583102862 998836698 567585446 715665328 51441093 634117490 385645034 805197183 604577917 859687065 629828550 837682375 773741388 841188711 644903484 762551865 882584895 993307337 302819389 666890785 642565957 971711641 667197272 804021808 242251560 870905073 695083837 717065722 711851171 833296002 721866600 739094223 623684771 708782256 414567127 819967097 987933218 997053369 18251252 124798384 490265705 794950875 765729512 937905947 933594816 992904524 521396935 714349439 40354568 440880970 386668278 416001147 82621733 986100457 200746802 602436444 579176755 697191493 547850130 956829624 85203607 356868198 820633210 985474143 345045426 734360282 749130615 768724147 497072915 542512035 830445812 935626829 618179212 948941938 53832443 472229688 846583273 895903181 343694710 352807634 145623113 466642370 457489547 514446170 593207095 872053118 695893499 735102213 659346678 736249786 789050538 834685597 419754055 516392870 502950335 965129577 855165403 931644191 453331897 925330669 647134020 713738042 792240143 816255982 496040417 571786302 517644685 724420500 75554035 595895130 545836100 924308676 503352580 565618629 762539232 812892156 562419717 865573969 640165622 944029904 894677581 944082044 200559344 902728508 470249600 558016886 690216651 950332512 654735925 710782617 511932355 961204745 168203126 764981674 820064622 905389441 984040567 991905089 605797521 683311230 667899464 799621171 684014349 779283334 508349744 634157400 499325491 602485981 337880293 683594547 643442270 826427599 800584546 851728747 56675237 336694442 133016575 146421823 993790543 998979771 892949229 983691615 136313496 452417510 460309116 559379498 324499053 348532785 143518484 464551598 390031336 905386537 747941044 897585587 553413455 886480915 96207755 860602105 988516366 989954065 547088949 949284073 654462636 728476014 117958008 398861585 475441239 960770362 701389974 887120542 179170106 828779391 72998260 424764666 851885586 996133363 72852827 803119749 105401777 155396497 48599588 302892140 987180191 991720597 411371548 675148066 787230416 800386121 349937734 962523130 739225635 741418810 329484744 756238617 879019722 895221167 201062595 320343843 305546054 502515019 941721076 969803359 742016931 882112176 995981333 998474992 605747980 753725625 342156817 708210173 354877077 967880634 850253133 978758922 695989082 788343039 934376118 973511045 621131799 971156262 643660089 863286515 12938365 803559840 172183087 361011187 542563433 812844899 162650547 952654031 695100474 862965130 672510157 859420428 240139442 706754903 725119804 784975779 185280160 616099796 578546336 839171460 403154205 956400151 987059879 995670700 46178617 496402081 423295458 516971203 724229021 997032070 98205533 501025375 495100774 938020328 256630117 807454332 246149350 767066288 944344802 953098335 686501611 862317714 708965038 727739965 126353728 914086401 434878138 945939303 23204924 274800006 38439955 261361886 779800838 893754235 407853428 452227190 868090399 938592103 325723197 625885869 168021349 588102751 610321231 748666381 686057212 694339874 716415857 897203683 9279689 985313415 636539973 951179837 378653644 924669830 455731285 962376469 895228764 918525818 891698039 910315031 348961200 406426197 994821994 995270973 795612570 950866893 147194474 320825581 957686146 980621338 92555509 342899409 861302139 922446951 262243013 646839085 834928774 958452668 140779900 834729141 813770393 819473458 604569195 614522177 914313011 915694756 424607103 600875088 508228976 753462618 771003338 868342104 281206401 681928000 795557784 806670213 408769843 717906872 429177697 482500276 918833144 984841261 331479157 703695253 503599074 940816545 191337763 863806809 570437777 831633570 609724691 668282050 768910307 771002602 471200494 992151030 366279155 912730499 204964209 662187280 395979473 615585477 992054777 998107427 560546250 814185550 437989353 459715706 280215611 846402816 523882 587313229 769617330 810101804 748380722 990795955 150155268 731908696 855350414 860196730 602340105 694079368 264786725 820317545 666263862 716281478 222341102 396894308 934330460 980964426 407258838 514235228 783298043 819727477 532143018 673143142 395094188 537650794 431498380 663129431 801177948 972735465 57804241 501777100 770203999 852443949 702103747 984342808 354338856 745509886 156980440 799735680 111081233 631115524 582284509 699776492 641995733 847064828 500438193 722668377 495282532 986888915 47460728 975110516 359982433 995041201 617003913 795837358 916930468 972817569 808098651 882543738 961147102 992740075 246963676 465664410 615936569 619043642 409785611 988719847 413215120 990470700 399739859 870294020 920700555 954494072 779930510 816757865 103695737 432752448 864749354 919477130 371803792 408027858 631246668 990742617 835150433 926566643 947143786 947783971 554781691 630140092 603507076 874496298 557637538 777051170 619044019 724103634 577021983 969482343 839072358 944948940 277479707 901892625 642182393 730438640 277265667 725448388 704911563 908078776 321745239 770345739 207955088 308641770 877554559 934642342 168294339 253448239 179198012 767368812 288445826 346070636 196896408 534371183 620847948 903677696 336483132 451701771 742228633 993378968 183118583 920662039 203804802 770971673 903474519 999719076 415552899 747237840 469129277 669209990 788092993 824831968 860945513 966374870 318357419 879233033 543429102 639014741 142402584 962580416 555413190 658698769 564073472 840841276 231682921 342541986 370355994 439788715 927062 366439393 205730036 627583648 409556939 896960768 992157035 993070494 258768127 968379754 21172248 623190138 624882198 894353256 857151662 858336304 254929764 507156375 687924839 739232170 545345929 972212525 533068763 736067629 690284246 911579380 666329733 909465631 629821847 863272623 854318403 935767134 337375571 842428770 485596872 535915666 302614527 719716563 139257365 250140616 438132692 484384972 358394412 943659979 88869511 402144332 35643468 925414419 837190232 882236796 830348200 908664762 430535211 453076937 811140805 841066628 54011587 871174764 134281749 369631379 472634705 955577765 334010208 524232861 75003402 976054296 718916462 742958072 413319181 657946818 43033199 590670593 338922040 658473255 836647810 972792450 154474364 861176208 637747169 847409552 381557796 545938946 585936748 873142972 285167775 870888487 639967040 775986550 736344726 998827226 836041041 875761407 806605924 819212448 898077544 926099272 47080232 823367692 480858889 830253197 898786745 994971742 961433535 969156071 188921075 522516752 324127579 660442783 227608893 285739655 629371892 980845623 205369764 665332472 142165902 772981176 157103111 862290883 116398251 832606069 200850283 803419134 87263122 628468326 848063303 991564998 856983787 865769233 955637709 973791816 948260751 975522000 492291443 973282998 41366566 210447475 219585672 639455400 351692115 718308551 427789402 638917081 113621380 894996602 37066652 355999071 401545486 586042862 366147236 651654533 225051092 699045824 895623357 981695163 576977776 865902502 674049777 897013953 974662468 998825518 118374272 376954140 641484017 845350682 332545435 934024473 560845544 730608984 447136827 962716454 956768089 959572205 262830606 478354874 249138355 755110900 191823806 881835256 768569232 844960485 272925341 861221726 340191467 897924714 715407808 836118972 397292970 716777554 194140334 237617694 810576176 932390686 260887418 297560692 466764300 499137454 253283566 993743172 390009842 952379079 614704813 988607226 436717953 754004992 433206753 933167407 911907590 966725444 859351183 975060606 558618294 621820984 6098786 551209603 214888806 379314073 808271603 918721731 333027437 773320308 836049138 847274022 320818225 864248308 274044507 720237216 948896814 996436317 398643239 614845729 694563995 715752489 768867784 956741632 644442353 696174886 994183959 997509313 683015317 715376510 247749121 407958885 757964143 970040788 157891563 587452488 529553238 651203395 988571115 988711070 275974904 503101183 44666541 819525530 101664956 762715192 172773569 817085386 700975753 850353353 119349839 450160803 571068817 582618238 439078230 653766246 261837736 634094244 224826235 784028151 172899837 518514191 415887038 653379581 678707204 898172617 334960374 546457336 580703348 787191173 760467418 998689228 298482030 769188971 617267235 837006803 256218142 661603512 119888784 661319940 894333008 955794567 966063329 979281551 627801919 756144364 919781708 927761296 544753836 929458845 362857551 452983803 356029959 363916573 317627105 896733664 530162524 996026620 639086303 789299540 142959218 530314828 925784707 972684018 125261373 282791666 621756425 653617471 399675305 486633751 665031267 859206578 791450144 796025582 210824759 877620368 241191537 756655454 530648444 781388376 17712868 612864304 362650107 393098374 932483396 970992123 318326284 445135245 933512907 984359885 508621237 645106477 867149288 910636382 946536863 957676147 591215144 942279836 757641933 866310175 193728146 919940373 934499763 968888309 872818238 936832860 153886767 693250156 49044614 809875637 435388562 892914985 313406066 411050142 572326894 917291821 984280415 991578864 663391863 944220434 117922366 718549335 728468085 917495691 892571083 949410696 982483406 992547994 676478078 843053319 61530587 951613730 746250219 768690942 299383525 805085868 971953566 985371114 955776604 966432341 13270241 297475089 175144835 571946058 479795682 605417485 945729735 973885020 217742643 564746021 722264768 993978430 70244175 683868301 185516454 663646113 219215923 822585215 875113045 950651768 479843131 932748677 817020338 899376989 540843573 879363373 730794878 914386149 852846378 897585351 801088462 854958810 562159018 949547190 505192171 649179420 468256339 767736174 934343622 974517306 669081904 884778233 960569012 970162219 411559665 514344963 929898738 985879127 761328487 879957862 20410409 355213171 856222667 959746643 536603852 689034364 656918774 730739110 541463868 545536058 555705869 620977162 565882160 909744522 474006030 986327360 884990932 982394579 748975545 814509567 293693701 735584899 399337612 680604953 866545605 877155813 835297220 874386848 774763053 979523434 749385591 961194910 155125486 563829558 98675918 275156154 799537619 861288932 627909552 644663578 612514286 666039524 65941907 679202008 330302106 343583344 540560580 767100892 678126334 718743923 148206601 613721247 111454900 407746216 631803994 830793072 100932438 145858118 163848692 569451839 510032185 768981613 799324882 857668529 409618105 757232742 933998793 954653030 284716679 705586020 42883040 941988422 863839988 933408792 116797789 813207336 659577549 697636885 563622602 934805442 15722820 75607307 681978082 981920805 8597637 176064079 97047874 554569762 29673096 571369891 232492747 389226959 768299867 770330236 722005805 874398811 794236612 798674028 974598601 985435533 334975292 621448519 444636864 522275710 14003547 514924945 711885158 907695302 647596008 937448674 947565787 994555959 955620816 984725521 12492681 144067644 595188411 843302767 354656416 774142359 396230350 651435529 215332572 988388926 508258058 821620166 165897183 977826646 719379684 900773775 61895974 711006776 164247485 659848094 943501805 980363050 595856285 962353169 274192283 368795336 94314514 967811346 504805069 780791729 2353623 903751860 578456446 793885959 850695070 906821831 681845105 866198151 51210183 376710106 18084924 411735318 39875550 269490927 992860072 997427632 655696960 939547175 882494287 987969991 85013994 795780944 531835536 581928637 870382248 942188491 678806022 805380760 38471744 346954007 693439016 726576066 293679242 844640357 804583734 935576314 37589632 932182060 135847671 423147126 812741276 835060783 520467094 684495171 355031781 864004001 187761420 923172190 429379558 559046208 548302208 781853600 385194439 883692120 729987752 837619436 777600110 930773841 903612908 919191897 615260433 892970710 978312078 987829049 841083934 991449439 448545699 751597212 921708914 984043571 588870826 925661319 6454597 312550993 939607243 940958579 831875506 846429571 165818449 728417297 247263073 612364436 574090213 662420973 855158618 917393449 817186452 975676385 917788821 956033103 346269842 813177252 339943888 977312746 715288270 793718366 173003225 417036025 109247843 224150698 363584569 678605437 997734888 999571753 799005608 934687409 521467629 868283751 803701984 855945444 456547994 947123190 66475233 283273686 367890572 953153947 977092847 984785006 103218436 602944292 971451356 979338885 556430114 972849032 965609288 974111980 490797554 583944073 836161331 980351128 880216086 931599627 898559862 954897757 852557675 980606782 252800072 602992062 652995940 811377320 692484085 866450065 533709605 810936618 40010148 838596475 120398628 526150253 32828004 503520310 252572978 373245744 252467892 329204574 201091674 503549543 657179465 866005476 196377412 260628657 454037974 521241670 788092777 793547391 604523498 865145457 636159311 777069539 262832454 722367273 99218621 111592361 790565142 952181333 75020343 559305054 165608457 883000807 202736230 384545573 98052182 890145479 604561181 905036318 820281128 962700018 762484971 777946245 338249386 764024992 308352732 627242619 647921379 942320437 206710067 860034906 174295398 263606559 779030398 950610372 20377131 461207290 75728371 339771704 908344986 921321767 959290540 966475800 996349234 997857810 737222470 768679074 703992177 758950703 244745151 599965122 494043570 814199815 6181375 438710317 267826105 630758709 135977386 462213506 915922553 921003515 666330929 704451012 728189845 780437788 563433416 602533621 296657882 545676697 94448050 821402954 45919570 894259894 746685321 817177834 34210866 297313253 989525839 996643345 552060225 614649363 114392116 529156379 549635222 801425647 845747481 923851531 41371449 204909723 775991181 909123683 404512558 770766605 434245678 890823262 965400878 988878645 704432917 832178143 41903743 254181234 872195222 962225250 675697387 938844354 110711782 199238114 403405134 764591839 29736603 614336908 743401577 999622237 321873342 965907660 680210899 795932310 805202616 945698029 951068803 970445579 512349485 916843525 949403378 985398594 560293238 700360389 851632333 999669821 243972813 934759727 415061999 511572777 610511200 794199271 391352789 569125227 510074033 911154518 252503899 707044614 448208113 766205176 323933744 595427627 854716330 944246899 308392982 512298072 99799646 922320157 155943982 410529189 678493847 867039611 85232208 829103986 144606649 638994122 880383124 964137441 289566761 353307909 22360792 118709446 250386016 499735158 528495753 845314046 532444926 744515844 598138787 964383415 967053689 987990343 392743404 544440147 105141488 980051696 644529626 692337526 715397322 947927004 168236804 520077217 291526659 691793779 754214958 831015176 404964650 639106039 910001609 996262525 350345349 576188229 994453403 997414578 837526847 853974533 487169743 993474367 234021454 789487969 678845687 716754422 732214796 960366418 281479280 525933532 972256957 993715866 737438019 756310452 962677528 976440034 123106262 307411783 397118078 899597684 710403160 899027800 931195326 995272701 146054792 801165863 821767833 860627161 997282959 998236179 624880979 803446871 712385041 836454600 83608097 668039217 371920748 687697488 3045404 579343794 379105415 811599119 959562002 960433083 110868936 956316637 386324732 600672356 664738578 753760294 100517010 915956261 638101313 953463842 438328400 831719733 724894004 817259902 841001884 919365758 470988430 594794684 948557868 986500502 754008934 776307059 42637823 628084354 404156091 409581924 160360600 949984394 944814147 955050530 391557973 407802661 86705388 121253178 137371451 468092776 147581559 335943401 156756784 600369793 913138594 914572426 399336177 945480286 822958558 975749954 701572679 865454328 76132558 588806179 41961947 642414344 108772417 540988319 796304313 840924831 248920175 297543777 369405207 382770081 601302795 965116336 61351690 122535845 590722279 622101142 1232526 484738956 521874256 630979185 561519523 734921352 490121179 956818608 374889520 991981487 685984405 799288135 401229959 549243171 346284422 528409371 867087556 920331426 826157937 987532034 738855244 772203949 787022177 924970119 276711187 887043205 659924380 861983912 473313377 687199188 470702300 796929584 589190707 925944811 491680764 806177188 825815181 935144918 781160180 806707065 497588349 878627423 217019002 913469162 663060094 669822749 663876148 913823535 896803523 940755159 331468302 718289653 65434222 101629618 517112303 792486456 806635388 832214638 186758083 593880490 103709598 844097980 377763825 571457903 167024332 470666666 656603390 762750705 782541857 880850631 631070480 702523913 381510182 861870606 839331872 896735872 974095276 976524989 768132402 800490564 527815951 956287903 566717981 792658845 471377550 833268074 850260056 936480382 559202751 672160362 360269562 847673064 232565066 710253519 54070945 272605990 514446956 806798981 114531262 785120530 408220934 721832502 705453816 821794342 616587635 974304334 479599774 589615764 381586088 778408319 98656203 296898179 657072945 740818214 694344317 903489712 169465500 958503984 86398704 310501500 112118932 664721723 329551488 491612241 671342185 701518134 337498859 676169845 321708681 335823002 759770939 778858596 405993706 903015920 457206730 878525127 352442228 559980883 924534929 986488247 904686729 994622123 448349404 670086869 358304796 936016897 483817545 542510340 363840689 468893509 443126642 743464850 844629210 998893245 399686980 808680233 593631800 656433240 47862684 757147560 93643142 815396763 268105573 529049170 868625283 899491587 660467684 747550912 149984849 367660524 485772197 966429858 302305326 658062665 560878022 838036453 261358554 891500572 470931637 683442250 992772397 998592857 87141950 591092365 128610325 162444709 135698286 656168878 187328248 677387483 418570961 993817088 963874867 983896826 521000032 586479507 533450260 667850495 568318685 676815584 307644759 769302114 938532935 986111294 534453313 777460847 914062972 967315131 128829618 807396996 733045570 957355091 803238498 908789717 111152220 656177331 836963341 889891966 720769311 810143438 631169607 769808533 66700095 467542942 214106786 893993689 971959851 973195878 114006464 842885137 914298220 953641146 486687304 992797303 244021615 925439242 326701224 685875894 662227788 818188995 10113896 16413229 15432077 873353869 115074622 241327808 927636966 956324414 287613946 367982047 396074966 451808830 932404502 959618718 735629829 928560840 78367535 804705649 366063625 892370820 531213693 960296614 271809151 801620603 294705060 800287113 283297485 668025687 399350723 472944517 579587001 727857460 562808666 658504282 641464713 688745940 398033211 651784702 448673637 670420803 25990082 41095692 918913123 978595449 341817295 976130337 945907755 955100330 519321122 933358297 926141809 958528754 905672201 970551510 130180199 775243608 20343989 950011196 169548018 555945987 301723305 629572628 176865833 769196771 354230240 529704592 341243868 470151118 865563481 990851047 132112708 890504499 539991916 859014260 10026926 197839456 676337785 841400118 790930268 833178481 110038401 754178701 667124677 975754981 973465161 982997074 788828343 806689064 931847395 940074663 74216522 576022479 793658948 976649499 488004826 668574956 413394313 960688934 384179976 625782754 750360988 936720972 426595836 831811631 412747398 592293485 76205395 942099848 362966276 937592010 12134865 897761503 307238217 901481469 539645772 565797620 861086723 927773870 250611666 686996993 202400940 292342565 74679320 859467696 71898957 178564866 212354101 703284271 504090971 656809010 838172956 922291758 616672222 795966110 312943273 943587679 44212606 915601337 907097354 998737077 726933972 870779774 606167398 632826415 963579778 989544989 365794258 398696024 320558809 391370344 563765682 790958069 546743910 858595384 245282481 748513264 842735787 932821107 253367177 598897705 60033749 174076132 953445748 999202220 121411359 992724544 190264583 263360369 952266065 975786629 872304433 955355543 696648274 803219778 818533095 875484469 334482073 811676953 313633324 810103529 200099293 642681121 355125409 740964494 450057983 559447089 500504153 802811230 446364933 838975554 295975739 544426586 726173029 808064768 125832508 736319011 438971224 573335202 69024523 226924484 325828791 797074216 275538352 432919872 251943800 729243175 777746515 968473261 721724011 926917438 267322289 937214522 471472326 618223819 8704780 297285253 520619262 949042678 422437272 695417824 319262104 850085134 881763033 888755214 17176181 579693568 94464216 157730418 441280059 967890780 261843798 412448301 476291879 657633188 788624832 806676470 898059105 984321116 136727138 760582085 857912723 967103797 32660169 458699273 375771286 880351157 521398274 529107297 851460505 967010413 613101827 928996825 991266813 999288413 944330902 975137567 449096798 493279843 176293268 782951640 586772702 987055811 146500767 475836830 499204372 978574146 247181230 401320075 800337415 884978654 770180205 962820869 277070255 285272768 460498439 537763931 899750965 951054612 538765220 860005824 599918546 693147405 46585099 907307081 347005652 486783208 229008516 373843800 608086155 676548069 735322140 906246743 50523380 961650816 319293610 703462822 84352516 156334508 440530617 454771637 481858208 928877495 555886835 835768944 846399 5598297 951641442 979339354 292539830 448065851 142354988 812161911 907603273 977136732 142171287 191714079 798598343 840271288 704648423 743371641 501168097 884149066 413617387 499012135 552515558 692761305 301962568 730058257 399981177 906070230 585092827 998655323 277659866 607458676 936719910 984668093 637699113 675655923 648941439 902388608 940217831 943662051 885891262 920745836 76500894 173526683 768419308 904008849 837362351 985939026 772504544 979906954 107277362 585450495 715421906 940622540 222888906 413662262 127829391 207776351 945887442 982458812 903696208 951565091 878648810 904752827 564555326 777479671 325567356 725607158 223859492 712126805 358935333 783030801 650997204 778961245 728197998 852417895 935246121 987117737 210914228 785855157 240432259 351592623 503848948 890670903 895886316 946481051 74396629 943950070 730914624 824662024 701462245 757704089 627507144 747533665 415400809 751424677 603779179 809037799 454552156 513791209 254716066 497800421 480401204 486704848 223716747 783229176 291291687 624786842 765027662 951829374 565778882 600265851 767850389 949364830 52068548 240226013 426005386 697219639 766141039 796099278 40608967 488770250 12968205 400752299 102314482 779118761 631441902 791122499 946462003 964456755 751232190 873364453 131157336 867590990 643257062 751805444 842592758 978549931 408477917 627233821 834206180 855327254 535654943 936962871 647758005 893927096 947754836 990444427 382374098 692752581 799252812 994164868 4439249 21517306 757159110 946957820 852365419 899634886 228319184 457820389 118759483 164502150 357110833 372212293 979911324 982820936 601336872 862040303 70102523 974859456 766729610 965951277 33932521 912969696 983478119 992084925 260718182 343818206 302954322 731838952 746346458 812634067 988022490 990245295 66076497 120693810 346898139 419947895 368364621 925125902 64715816 876798843 334245143 380743535 522903942 835908059 44176411 114754363 537318115 725927707 324201165 437259792 405000235 538324663 796901644 932854141 234851531 897804338 242645096 284903891 448144183 859585800 640103595 905149764 246022329 439628147 544550080 663309521 974496778 987087960 618211602 909930294 248762749 882189502 608670612 863488612 701096395 763185042 166614994 694596518 36423787 815359780 914160316 993890319 425007029 474052299 681778116 894004067 71957631 718683916 606449393 820680754 454396392 755037942 827651398 843708527 730347831 861920689 933272853 981990592 674548785 998842038 772931874 895771132 298796636 419585853 913083224 954144768 356215211 665518689 296774679 424449988 171611290 755409670 33225268 769118569 876323365 947597125 934142429 968386885 824226574 968988103 287700968 406830429 482102956 644529254 303893646 931705773 547218120 900297208 876987531 895914973 999381103 999711426 444587367 508798164 479079279 644065286 508734345 708994845 787034420 965714151 15577815 747123600 224317774 419133277 784278988 996582214 724391382 838515729 458853123 649668833 981961647 998007175 162217084 981878939 334750325 476802929 568435858 794053857 10941530 278168077 413944659 658202612 817198069 962634952 632475953 976748625 973007973 999656133 170744927 754008069 991855847 994319710 806603476 947806119 294001480 340459947 778841967 884064919 489576112 959845272 548704599 590571710 859374299 867602086 934204302 953680473 473630793 881314879 956342102 969142290 589149045 604691214 552280229 892711248 2524335 314793976 874441775 912640716 328087251 411837230 334088596 952039358 60141283 720632179 822820588 973521869 590134834 765363307 763263279 950986848 508135506 969775133 314676952 622722461 189732089 201217781 118871327 188921364 771608020 873027873 51390769 819552727 689322718 759882918 227304976 971981305 23690456 512709363 979239402 998910951 360656981 855667160 514316026 670463040 187461953 203600047 378708780 489516584 647362824 743560563 814861296 958371598 34544515 70838128 971181918 971801111 327068005 888569875 715470604 727794901 663920487 980011658 645497254 947441003 133808250 355653910 670842290 835263462 490754653 718564119 525870398 855993339 758868073 786713505 179735131 900439101 252314391 719848938 265472372 395932362 930899700 982464779 385252357 911919587 645877527 662781920 434614538 960961304 762597057 841186220 727796563 886088388 825356650 954373448 348635406 792315951 610187594 968362336 735292218 910379775 186714976 506916471 922808960 953031728 21703514 159456241 759540220 816271535 661064571 748574670 437973767 544918655 173281320 302635128 146191232 501905503 794218334 839200996 628761468 711424840 111939975 501818563 541010288 592526836 636811727 756893269 859908721 899543140 715895492 718899321 3178311 738376791 599820189 724342467 783149096 955172175 841245375 950166900 213880004 440929583 379905682 768742360 131293894 676035765 978987153 985970909 467187268 519365228 232963688 718614352 75255631 907797312 927204330 968670116 537314236 936209004 586101167 942555998 652099434 889362871 193755184 337570045 30390473 636869336 78948215 436728812 733893501 839767193 435418649 676985210 987210114 989417965 351547304 761780198 737633907 843048720 828874263 901197914 584412853 742393828 8063217 858233618 843448483 972856305 368829073 705211171 820574847 950837754 830083419 869953608 70597132 107942498 86814509 660075114 371392780 709479847 882610606 914042779 765684894 800433078 319951266 582026627 643550903 867209126 915276542 979998939 963373989 995872304 327678654 936204686 250727868 308112862 252512471 923024089 668909841 782337539 605013297 937469140 209167781 369118872 51845415 85602596 318192429 431294475 739910758 877245474 398806315 784671086 998308682 998810832 283509124 476870337 583991990 871895034 766266471 856418790 794930287 917506737 940993610 944143092 568852957 932762806 164005101 382872084 45753150 83596157 480861084 912760658 704803082 901817227 216415715 698943432 486342448 494413310 41755038 95698640 150490141 722880254 68340416 696907296 62459284 448681112 157390036 806555973 22820956 920662770 610742428 615315074 463453880 480428858 139618145 607203475 346181273 536622845 128922316 534179067 347874903 444247105 908077987 929194658 16607269 396980226 658003432 812514450 310522932 464091911 39615166 989052894 961406558 981696208 421620325 578634195 990408912 997331394 275009413 494591105 743147452 873033285 240993600 584148429 212462705 939218741 805844233 924247588 894191108 984373691 620019031 734110173 335072839 584331780 358553621 910838289 728882252 819528653 249589879 784832834 376735341 981986237 525410841 972800163 488784045 809676827 427224304 787339236 804663205 875905538 406364734 476879453 844770328 980931304 762161993 861564166 919715620 966655573 105947826 340747863 592259307 778584620 842000545 906832584 435238029 938817061 957299566 987556989 79914428 823926968 375958129 462568388 416696087 570980821 30768011 506101196 996085328 997175416 805253596 808411019 163462155 331382977 619399695 786585826 730570910 843757221 48882614 162249056 19919858 491503013 134010349 533042966 499193228 754930941 40783432 622725053 805708442 841366275 962513692 968185191 258124799 961109542 136009086 909255515 679245334 990994675 881594413 985799141 322730861 550157821 386482766 477038708 213978746 542855709 546624315 658221174 711317314 981805642 419882701 560381516 251636041 901534184 303803864 834481596 410748501 805716205 161746005 526681289 481243760 665420876 159583667 160845595 204743242 317580487 725268173 759182139 394419379 627360162 839628417 921273519 977210071 989380580 81493809 907987234 243272771 807185213 787548579 834221803 530058821 597857111 70065131 417005286 611838131 657544023 694929701 924752533 546916324 959132682 595087872 625795176 709597115 758724760 211966817 812539580 344714742 376329102 188007877 625735735 815623175 866918721 664844324 981124253 865416137 996205622 794218937 837649625 157771878 620942448 843390920 953094688 885553772 959858719 997037735 998355325 691586030 884077044 636385032 793174992 793571048 967530340 218880587 733024427 644372854 694828526 607321215 802337312 777993807 966618642 321909819 506185117 492423617 773430681 619443532 791116541 681268467 732612022 304179581 606162873 771779861 786029607 264826035 747104967 724113839 781881392 761177494 918412334 364958085 472007888 219918511 347684943 676877286 882042580 131374038 444441492 706262016 977941496 287452464 303234630 35429340 814304377 552603544 790950608 256194311 905430153 175535925 286698596 800491461 946122537 461043517 979670145 747328552 827557003 774168214 971720805 829721406 859560743 593612066 685274917 640529621 691168460 779992529 991716551 960995226 995415291 952357748 979710357 304147929 648471355 123631729 138587062 131630743 457908384 653076675 716598352 948870610 975880849 687721421 791370537 425157731 512899733 169928854 661207594 88511038 89792329 239381019 334016766 392407221 865521245 311438807 775036317 76800645 198136351 78342706 464385801 313376212 762201586 693441743 978381184 854274608 908863243 465350740 619759423 394473723 787047032 374610369 972167293 659662523 789613568 846395469 915721232 640741770 789617552 972581211 982646442 519553621 824707714 393878892 436500746 466637912 601121689 488609625 802040990 343589002 366601078 872673802 988499479 703053373 915723111 883140604 998878566 382430175 531783646 35537406 933662516 66612168 615723133 771938782 807298043 773605946 854749197 764383186 773074531 312604856 895745485 280028945 741389077 208666711 612948219 61854510 477890905 673069395 874097719 362380850 988895481 147255098 563658868 60372528 211628469 786079527 936134114 744988469 770090303 15713326 348657405 329759284 339935683 169487570 855032508 74640454 729480186 208483947 532347769 70448721 965114597 208094785 581340583 646132690 745527010 734323849 915629710 849700861 967560123 453400213 747678423 807751618 928485480 734450805 873605373 862428931 897000992 19759600 821369105 250346916 962739859 267145928 917180316 709121393 986246385 459390577 538072434 221119459 816102536 115137008 716797220 866836658 913830864 626291631 713288993 492215130 499813166 414742062 561518022 932519247 976415689 648408010 840408482 92838682 198616321 175856893 374055887 400705550 534912834 776548274 826523288 175537533 530774060 820428003 953896784 917283028 933298719 252432241 448191084 354728136 924802178 591668905 772198696 948278789 950511369 647937021 833623357 243138736 608115677 834986871 927794827 614222501 905378235 942651124 971001825 49783227 657197298 876255932 968827166 789605544 820171918 246021862 992621009 865450657 957977457 951448576 969981204 665970190 938209192 595263837 907306591 984460733 987750480 489051523 796988654 507453469 867521112 199848520 213437055 41813239 167425373 837609745 864027691 542466240 869724857 734501771 942731695 818905092 896334656 727500815 834723562 981390742 982806737 87541504 387220767 937439416 947952716 72380979 592505390 589434149 803607632 660578621 893471076 891737362 902351642 345111058 893653220 995008513 998370828 900894438 924324880 466383701 548921156 358374256 775389427 588900119 724101443 669233954 840412421 301627315 602509154 838826282 867279453 776950411 806359655 417102502 818767749 133246077 299886906 778895804 868610968 251010482 864458882 569844624 989749170 221083391 696465643 661025417 807202043 790963661 970590898 283391900 283572217 667614244 960244490 322292878 642509661 352941556 973768436 509535983 794138473 976217875 989846204 754055334 820709000 585123995 738347065 116848304 948635131 964778563 995490261 212374388 539179297 178755231 728130753 44140016 590919698 915660747 981181622 16693882 156399446 880475106 938635484 412140167 485653603 510411110 704073131 217766234 700451463 23545472 482296292 889274290 906336751 294713267 780642699 160319863 319977841 414877035 457585998 229896252 518041591 751613345 918720051 437111965 568359594 320440047 844347678 883536071 893383476 429706387 943936690 148304607 338396307 541926999 913854467 717473713 802075867 724977569 822978194 600942991 830743323 649252236 839872893 865364288 970968085 263490481 891823463 969424939 984489476 626181361 746736530 119929670 329178266 946633431 998455899 413856819 719245485 703947011 953202966 949075383 995299784 506366284 913238622 695660183 846341084 872521839 946318499 46845556 274980745 916941156 975000543 559809419 699710367 744131610 801657023 708213132 859050561 939346850 957870791 903081241 919478056 642060059 877068131 149265997 503500124 472664884 981706924 401783252 700046523 564249727 693345521 499921594 983694481 67713691 819905948 58108279 348186993 377012790 662587170 583668878 859167186 326779655 370331737 268649693 329116882 139635728 893242190 855027832 875987243 45838636 137515643 516552958 986288494 152174443 788411604 709025397 837153773 968801394 995222104 778788273 800330739 136547635 891685239 331703750 465242421 432439527 561356774 989910545 997225077 821772735 871595377 438249005 960284311 290508690 706128582 882886239 976105695 95680093 673488847 388695956 779135889 692553577 955510212 871715299 919280203 72430458 346973454 293923377 894753898 619095111 927930734 959920906 975376240 976726103 990761431 337333882 726281175 441153044 803696243 640773098 754263681 497088752 761576148 617138032 727592322 532421095 545523344 619812160 691570537 89199998 93877691 876923107 903451933 618804024 805934195 605111733 690977771 620974910 915973794 8652112 968308503 842304975 874625183 457526471 903975658 37789825 686821259 677494700 820689475 219614502 834577222 328062527 685996401 712687881 715931366 260180669 910866995 406725784 509423550 684755991 883542175 316250141 702151723 534200825 626634711 155964620 595020435 480371021 735592512 383920839 503483072 277347298 915176563 474963352 815745986 923986728 953393439 284770719 638956648 172642741 348143728 46603156 100145299 558604787 963795716 72305495 340373764 806654685 923004063 667858627 823550343 528874582 891756221 582772339 986475955 92367423 279462272 839476479 912621553 93057154 269581770 672458558 898295844 153710085 366176378 839308601 872402796 57940467 397634575 218047040 879823238 670277140 675918986 306571950 694698141 175530265 692990406 51575574 423932187 637046682 984660057 808212120 836800553 966980185 979041455 898991020 981337897 526922865 959307020 331287272 337134435 357554984 854258352 423078389 523083794 954072046 967978294 919396202 976340605 572654304 667144322 464151525 505156727 299083521 956917279 89657045 472603883 249725998 269498001 905346539 983416226 943969369 961789749 50003245 718840395 394964383 794073605 622899254 685443957 972305932 979533078 35416007 46430968 579439565 941551691 912693192 989936307 358502830 782759525 447917136 610892491 707649331 795455331 413485811 467072435 961972525 966740546 136979486 819250269 425663968 569032354 558487254 807603569 234678620 904038815 324245232 395895147 429635937 639922151 285242183 913032991 591553774 833198235 761392755 904286371 136460833 724229113 784644883 853359387 765826083 825781473 578359603 701073703 374862430 945145152 632053551 878496949 28163713 858276131 327647904 498680816 672735604 809553252 208745416 836708881 370964527 555169158 130855363 990340189 748682153 823092700 328543517 351199217 60476035 774094346 494392813 858634043 630613207 759844925 784483493 939136583 900495826 988720624 582777635 705755218 848745426 902589463 955552791 974125362 82014116 899261889 951669483 993598503 143308101 671465828 565103618 684578853 656381433 724965439 220954980 227057516 293203520 330271400 663128647 665159337 331520931 348584146 548038331 644703065 269221702 553422898 819008406 946595424 36883321 465383441 782135049 969172655 92431823 981224105 411652088 951425492 788956587 951319373 486912890 490051463 893930197 911883031 734223093 898152903 814015201 886047878 798182727 842119557 422638580 765702516 410249034 766840061 529734134 884221013 256443274 732676371 436805143 468162624 666186070 734304963 241329405 876156575 95030615 339758795 206689622 813755022 271180202 459662226 873635053 952029876 186255614 833679145 347251919 921249695 329726671 955461479 76171923 323678759 813991257 939794077 741913220 853121766 91690193 817615884 428147942 584825039 731433628 803321043 750734941 863832465 603151454 655389032 72943029 648167203 805704626 925958051 459425601 683929154 577200166 789781044 66828069 728521119 926608610 944856205 748691384 787783343 311626180 436549215 631354376 947954170 150516482 338286994 801632625 885347587 143182210 707749289 182347678 347591816 950424792 993541573 249095883 853991359 833692608 896034920 395569622 617528754 405981174 459534978 103102060 848858223 298687127 425928375 785976163 793600107 838058025 902412035 75150879 343100121 652108529 693194588 481107753 845325452 141251379 431279072 840258200 988999490 849477212 851024417 221626665 277530225 898627471 966561898 199078996 285064085 812183930 894352619 137878958 353877907 928932750 978046646 80658401 926838244 315804563 574957887 700940010 907802534 231252198 384337912 339215030 484576455 993184917 999985111 645270719 992489134 289669843 848677994 282521328 352389039 558424125 658228975 527165504 999921606 782942584 946886823 779849432 888156756 232362598 639473810 413195086 669567872 616056243 639729210 468845568 818174246 652613241 844365353 886526756 937437719 734398243 836183277 279900617 530161508 629306239 854868278 769537470 828659857 163669838 984129151 221583538 939159313 752526329 844074785 504833332 538695495 178079204 741421104 863416927 895611842 738222011 755070106 290916941 868653335 578925834 971635432 429065441 822133369 267603910 732637066 697437328 991306970 15976046 270725766 451919782 687526517 15477595 588391125 296345008 525492178 236935442 605007624 381118654 384939620 373797605 524581153 48330152 184944889 641332250 830750161 627984267 861280084 961423155 991888566 244357750 795319502 137106221 400492415 857637348 968843437 826624468 982522189 33882033 400914878 841973440 900747943 114476137 845400082 807825356 960277199 194727284 598030446 170667962 557405695 512680241 793026279 857072679 913875711 161017234 468443825 796874500 825776637 556581281 772446709 215160489 983469673 47069506 124962842 93294483 505126846 661646941 989000388 867894892 960730592 66240352 137472071 838591788 873454255 438328011 979021704 528209825 968914390 379304128 507941115 455836528 812247747 362338199 541142627 387080443 965428045 539342639 779329635 510020625 745578029 153498601 403738253 448267785 537951514 14645284 142901944 218605698 803045397 153554647 832787780 602689122 852899602 356416940 364322928 206228577 955046124 61263879 781933748 660707888 874001206 453408292 470520731 70052896 160935485 986230538 993413032 826291221 954156519 174724931 550244906 212653971 224657873 907080000 939356794 273436237 740389992 357683142 736106282 102660854 217474470 541573274 640695065 353454904 369797526 404124480 484723935 980446822 981631262 465716088 618525264 768799360 931892671 776946814 820242726 49034429 743444620 801771042 984287868 364053023 997257224 732550380 757140815 228946794 973292500 667415843 937644602 736981297 866871360 737596017 859900762 154944259 275069749 971483875 971642166 567636269 728317907 752726555 918656159 881121093 996588282 463514645 639769002 807822531 948233828 822118737 982065938 608433743 862227732 519116007 938218338 575499821 695508000 707272568 855456541 746407095 867955723 244984260 413286832 569469517 727587627 110643383 554655415 782127647 860428345 484544574 722867822 248828960 976566579 879784294 959139174 9541935 481822512 683235274 771021439 463719022 736999045 836361230 890959381 363846960 894698740 782275559 949521217 173080167 494008215 789367376 928491437 443355321 454654844 220457125 828179685 238791834 513054506 439433882 596631033 938472923 986679629 938416703 977410621 611472078 815310834 185810266 838120707 997466910 999800846 730052868 800744797 768197906 901895499 882481305 964698912 481071219 586137361 819876776 862427837 347792600 367277985 2050493 863548904 68789018 632253811 358337399 555046683 885086796 968978279 385090831 769027657 148795106 712977559 154745884 753818350 740173558 857693830 227095244 388165615 243994758 345611333 239219609 904660378 574265945 831158437 34304451 564278149 930588387 982899863 455806881 846526005 463691705 702387729 766923898 786434618 870800314 906082558 99510107 632872133 930713622 949951020 913192239 931767968 738416860 980571636 834413773 986322319 701088822 721169934 78679777 645572521 293599331 873231154 283102143 719934262 777456705 919119706 219845797 621807488 962786145 991015774 281654789 808597395 248273956 419193758 798753872 937807881 448119683 467996973 396033497 934418498 274846446 338403875 386600569 996381573 125129111 336736196 500821243 544937878 736200976 890829540 277737895 643458465 224678654 972869040 664780199 864435028 883735756 944734756 423843503 946218186 663385451 892184049 561156760 774791103 295801773 371122920 342471831 986640900 751284151 753502249 704754686 949027970 630493878 799753181 130235453 929157859 346908114 992184898 161572617 906399297 961364835 987055517 901706837 986258545 266725448 929739263 826428426 930832181 204440443 646658398 396741578 751899363 85730218 631380568 836431344 911846775 291934773 536770557 731839784 765770566 560605519 566302302 312496115 427471242 421176794 984757442 321727003 594984627 374129700 450689710 151023036 773040069 414703063 761810149 998164465 999755556 402257872 601455700 240456649 284908525 429524716 608360546 456802305 646517149 621792161 744948332 128575372 838444261 865148696 979317787 163871292 949561554 333652506 573882975 906533054 924446459 534541742 627395283 618091239 808461523 602213270 911365023 370980575 531468574 460840609 828485627 384799002 916449072 693838549 752797123 529185865 683418990 560197164 658585233 121319976 977581764 200524970 331167472 200107614 207631863 11075508 810056552 107628536 909830659 927266775 952872243 142098850 520667882 342236767 907940505 764129139 843845716 595822079 618507123 260750878 460700465 348215796 965939566 815709824 998551881 245217662 505686682 314091566 826659713 402149953 821177379 742125817 895577627 331064588 858179570 288158784 718130581 280561127 322491469 747711002 832195670 546167657 592526063 374377164 618095143 351530547 969204241 818579868 949927160 620870779 920999711 29496280 752500838 749354262 937339087 831057855 843255781 998756606 999880744 294101407 724645656 719018258 773154096 676327285 838135381 213901005 911384700 185904567 322815566 975371248 981410568 543399734 678692750 697923875 738469026 789443656 831090542 996561524 998612405 284938371 945956791 321028706 447908143 547247936 669927722 637678310 853265414 620506118 894797972 464326982 844798916 795859025 895102727 851443441 860039492 519863478 551012362 708954904 935719677 317299058 855433498 317094727 526299531 202077593 466902793 494608353 682457487 847883315 894467195 515391256 545710563 475745838 995695266 650326914 943193730 606499621 728692987 152214694 407673269 499792067 640535717 631736911 788085487 61076519 884671597 291697996 632269986 269637736 483046753 310772187 909484490 47444227 553509841 944451743 994356328 572389627 960457788 441855763 752127837 815424958 957648413 862595949 961358549 975855170 978358384 215944630 270577728 552405936 888626731 527300531 874617412 597062450 786879705 388525022 545797188 914196430 922306647 221465086 560579938 78921003 107419194 452067198 476169797 186609349 725650462 80063050 199357040 281250569 436166195 649697663 889222369 883362987 914246074 760823758 996748701 680235566 805386327 515279580 954212821 718941338 823265702 461559409 957068435 822603206 957826941 580977050 958234021 277240061 607445993 593812465 931969758 888190779 891158114 272685739 747526448 937981181 992765337 678788269 842189881 25892467 491530328 834700404 907351436 260645822 767339362 354309573 772835657 555227829 980324036 285796966 811403943 115299489 352962907 874768452 975430364 282265995 710691147 189734659 368926795 790562003 981170448 183455730 336758274 950959846 986311309 461533013 838784725 411209003 744454436 448284173 880494509 793139288 914531717 438587376 497580921 300683863 664325638 276835542 994910651 924891868 966576423 934080081 998224906 345878018 956231313 94578550 341755120 121362592 653949384 30461341 625931893 330999555 801746376 28118508 865607184 546044086 591210565 993652213 995613141 94272681 874245246 244905014 328297662 793207342 857773685 202125170 334734647 754586224 773566222 25041167 577634729 916341382 939473569 235472271 332555194 286893452 523620700 346948559 348459210 795112418 969509598 434895460 801155694 168220782 543904934 902217165 919052962 975767157 984092782 510288685 784593149 722311370 944700170 694005709 992942148 899315656 940757029 584959389 838752060 246337809 399063942 104741201 574974677 427113725 543457320 868756531 953331150 328883957 677809873 775117582 992487313 363886535 408452638 159382967 584319029 569010836 804647817 931981663 970100938 768943356 790175372 383505399 465711528 483472203 679719035 122733971 248160672 698217343 736628085 83200857 294895957 498778752 890193790 999694997 999832944 572904379 621422496 164448784 861927952 835499109 878519724 536200960 549450735 242369342 806471988 403403954 965048527 24504829 743135145 386891761 574336019 612507365 799583510 697404331 879718445 102602981 304827271 951721662 995553707 63846774 845020903 39173634 786587660 56550422 994224841 793911836 938082846 156913906 334449577 419009614 593499401 80536291 806761056 206461746 915464938 137446591 519093878 924046428 995088225 167921091 497162792 847383535 900642997 530291183 909921993 503342619 618825890 217770649 391618574 999832357 999924710 820799224 837547748 621574722 710523077 196847607 676905361 264381847 964995625 214321774 616009561 306668690 762011681 3152989 819974542 413432485 972736188 486099859 488390627 48160505 870660221 720070482 812540783 582924085 659495969 26373630 216383092 869558051 998535778 729485460 917362836 134206238 761405614 991100154 993177978 428930567 439175548 699573712 881186702 801711968 910092261 125778629 725481527 659889473 940942740 991640650 991936602 617221647 792455615 948598978 966627180 288049431 949425592 612912976 794490049 1096713 655779864 203223073 924729239 478110475 863224026 574088096 805876226 560133519 887490701 418955902 984241874 156092101 937831023 710127297 901677804 914913906 992603516 504852434 882989121 338887772 989734460 949362892 982847741 118117604 308073648 317856963 362571300 790603068 999460559 830890886 848395359 502450134 737246306 157910309 579752501 703481131 993241975 428681386 621489447 635253505 828308904 446996590 839389717 814819446 865090789 996939568 999482499 67476473 719949320 756213352 817419939 47695720 773752426 276189310 301756715 442134655 453231457 595662245 970286354 460834809 720108510 525329661 683488125 23325349 751274576 330961291 728539734 125051332 832521697 856214662 874417597 95670997 956840138 103419212 164872207 731438429 873707199 683773668 914701472 760903899 901428172 41541043 759519087 166027093 554519460 266487500 742153391 723764485 980965648 719467542 923637963 524392926 635157309 1323803 863814340 953001127 965619839 495633301 960418040 511124842 665594165 564631005 871802615 535793991 576295547 447078317 901965401 654807106 888573216 400402206 625813062 940786816 960899717 903858915 968709999 273251315 441291526 130444047 730620312 976132030 991560477 543009859 614553871 553645920 982701530 974554379 979570579 658529415 761476296 237675132 456105699 386742971 529526994 313471945 490542688 723915507 774880464 291422192 339964709 2043095 179639663 210173482 650131934 567176939 961203106 472707084 614995405 892412528 961778666 822073743 907087212 904815791 942250615 735922517 928466897 924135574 929581234 370337587 936063736 298018701 834685891 676743854 786234997 165179415 197676352 424068839 474041922 751943652 938766326 433595530 991127406 244725182 968794342 628903308 860882932 756650271 848232764 9670512 402736837 7079016 922002140 161847534 726462828 16094351 712199697 747797552 759548412 37434250 676876413 729639050 830959203 217576248 578438636 369341758 779347745 515259375 609668978 8865588 297966091 6917447 957341418 532220656 590075444 157999815 214457616 848914766 859856953 561125958 781942340 765849282 847475124 800061927 950041976 687364936 781350600 357066321 753800854 567502669 588658169 311148295 437732610 269091069 404678123 81395400 285053656 848767886 988278623 577748246 599046892 852886993 882805337 438984352 455917168 440341679 858560481 494652736 551911788 999792805 999794924 77920201 100361434 840037531 886999174 574476498 730677945 754227041 957087980 608148890 867623382 257248649 827950044 297137322 453399170 860634593 895434790 261483965 562373878 276253124 527939825 575125533 781755906 137778136 150339926 180491970 898202824 770148399 969095074 349425236 956107915 762367006 950714493 190011380 509125543 243949379 566603532 386757422 871492623 12400487 951873831 669224885 851845010 852558498 890824900 769613721 836263369 228744554 247403116 319912083 441625146 694807211 986362337 576688445 607480424 754257227 786466271 638199137 814237516 291641823 656252065 115123234 164999412 530276480 984114009 702705795 840670764 623290441 789082148 335942493 436739856 60542559 520434073 494772942 879128798 377533655 948921077 663708524 694478576 89780279 507300061 212472224 424161891 542530235 897282942 756994930 929564932 789051881 989041907 284792458 706238363 776370034 778241739 56293867 495283286 703741190 948749500 611242305 712611927 257404854 652980470 754671826 952966081 554609878 700289361 71183749 203966838 741263630 925011720 634947900 882236371 220086923 860139950 413209928 716420853 146413210 349816532 901263048 973157116 484296773 508023884 751379308 929041783 94817779 567556056 678274269 775552452 706345562 978811963 410718888 622259420 797455031 838260657 138039623 591505042 673609557 758241454 498463945 763603711 131114276 586305533 911013354 913615652 462240926 981256951 378976800 963004938 367038903 803317535 919445578 976172728 229619067 674904556 17250563 272198586 732402494 971088122 884460846 960783369 668600862 941593532 142682837 469110954 573582857 672101250 312709567 701293364 57493829 77876891 962224686 983912394 371755437 729285777 167258986 233160484 2179316 108566046 811126529 878787729 299318498 319466647 357680839 832936978 211368020 964945132 786147721 878603303 528024395 719394379 508373183 620084054 234839132 526495813 984238798 998553654 524841889 701159476 985615834 993239260 471158609 619397923 386653984 761181977 107104932 937311687 17376356 313609352 207347708 899632599 657973360 990405021 761975947 837493327 680689387 888574990 447702609 828426159 853802147 941561034 909761903 919628732 870875616 963083407 292444524 872589362 40615305 777684537 201766919 781542328 322697121 739746191 814154369 909611281 941706588 956484340 864389488 994114101 964589988 999706562 369806601 938921514 248915917 512187319 770983268 862054634 806096503 816225933 371483346 856071282 267221278 702616192 763423430 922179708 786282855 991468366 683359335 788380294 725833970 787356523 553435190 578844774 73833388 498854733 364195536 782702506 312714728 553830395 68811831 392011155 858277606 910813322 629080030 826597668 483732077 568970416 402289059 551552722 942186820 951850706 633733097 697037088 605912180 848433865 438389811 925705427 838676351 981273881 13054178 616062360 81865584 476493809 996597524 999142908 185442628 261099403 936312794 996599439 726571949 806008870 789469093 981519350 111194221 723264817 731021129 751770313 95309652 836052109 573148641 611229444 566731386 743533325 69331820 762103143 330755181 506073823 334698523 961972620 544443494 557002692 113373775 769837524 550356813 965898412 682918995 712797151 455894058 791125516 175290846 921117723 774828177 944727561 801870128 939917625 378847135 490250224 639747169 698896600 612430280 996378925 553581303 771358919 795771596 853322222 489492527 499477449 850493434 902199539 898353250 959088162 941637713 983532145 954014187 998746894 635076515 957454544 210872677 835268839 1833767 883501671 717052702 878413745 387870770 438018805 212083480 825572174 99989997 998969081 845582949 902623486 853383883 863624867 259711591 909832823 921551833 970163058 567267351 778993111 393116245 626000215 606042037 793307767 679381162 747151610 169239219 293701364 223105858 278201826 799215118 838418546 979305517 987468828 18642644 993250754 566033266 712313601 536190447 761942517 831650680 858091925 553319519 972646784 140457913 830040823 939728993 990897498 627513696 768380000 170743910 684069023 56250047 381954793 918841208 997637384 375238995 988245226 900694194 994724158 439391617 922479579 942158838 960369237 950881098 956645629 428163633 947976697 893723220 897246734 767645385 795621736 361244067 814816098 138129404 829637741 186597900 263331892 409151002 955628951 881513044 983938335 778332520 930401872 143978846 515962467 603714419 891702266 948566647 967419247 133373737 513657233 16125139 245719098 320416515 473929590 152017459 653466313 587566732 817443710 183879650 465388799 779518659 833132333 467001496 969846629 140241554 516680464 990647960 997047742 101261093 769941918 505398189 841944273 901255533 911545043 607488984 990400067 587830927 830466499 584875833 890604759 700649834 777991962 65889747 854211967 85511147 443978894 417656287 783671783 237359699 873490099 293127297 443566617 353459256 591255370 983244612 995002962 446279523 717936368 274055390 458629736 909109080 986784867 521967324 735148739 347587473 645874808 958240223 978916014 73366088 783681580 961842614 964430496 928263632 939240157 263991130 515494688 97146296 967741003 313342827 548059336 343722530 616737776 535384086 946798622 733934735 853134195 797392388 837868400 487681714 605157882 27340839 682043059 686652324 974084969 299263928 766198829 52136579 294121668 437632760 993144809 587545534 962920225 471309271 695611455 145485481 185920369 360668709 948332433 381711689 806246173 68926059 864158885 928851905 978622398 816817069 876425974 728426178 734302519 124438323 912187883 681395073 760504053 419040394 867140643 277628568 407632062 17824673 663023477 945158597 990763491 103690498 918940905 519540712 833823748 94387015 612846897 779753832 919989906 432653711 968584079 523757493 863468283 786824425 956225119 85363158 520350021 429232771 624395545 885788083 893335259 929452037 968322402 129363970 294823794 51108638 144838988 3584471 801575038 441357796 544515277 766122519 924489080 187908893 416274771 511525631 560627842 102284298 982452201 739025904 755010893 332168822 464238746 42411601 152605481 385170499 751203297 345801826 794315265 648887662 696872206 330840462 985192379 866027356 966277930 537570746 539447396 19276937 673751133 671952265 843451973 697752128 902544130 775059501 921667255 658805717 843627870 887985577 897201075 642491359 664099016 262771671 846754584 100557565 891500376 570444755 584274577 748333411 761293857 233511201 532134517 607476875 844968928 458980478 778769358 947005564 948927517 306278270 879519784 412140899 700659905 754076056 809676265 248630038 808096288 561960543 564187595 391781309 578101821 419814065 568051632 734091806 989810271 979787602 991164086 507996829 866495739 272308513 866917823 348548722 496455802 658138390 779449294 472735969 842525253 14658366 167317758 992478186 993893589 195657062 869021655 942303228 993110703 102015125 746474551 357038779 888136351 443687164 499497200 297451431 830714399 72644879 972722874 688587252 934578716 45714870 167117305 900811978 995348563 217427664 677892621 155989590 578180574 429578897 766481525 847336852 997923200 15072618 330961731 240356593 487301369 7670412 116101464 484930244 570868302 986523360 992375869 323996663 813633388 200919540 345124270 889145347 979047212 998007784 998240836 461598119 910964592 657005369 712864590 313154414 336496473 471322653 492091981 912414082 943548021 999951543 999959490 113436177 397126312 140328155 292415667 995547238 996544315 948094879 988769228 672054345 849843460 860638874 966989996 566453541 685658430 648547505 928311642 462209817 465423843 80006726 200386105 831953270 936613855 810363499 875894066 465370902 916941069 204835305 793888203 74040869 346308437 30658446 790158282 717992361 911574941 860277752 969440610 743124823 985030759 900601279 943175646 586522590 786320521 135782359 723506404 33213300 988679806 843011826 911586358 419385998 424700115 541670737 988910892 961259753 963316796 159168022 541905193 648165135 774548251 961882689 968181141 753876157 814529493 420506015 615464243 55285823 343186760 683339175 886171925 289781511 904544240 748397930 934785332 695872963 804647520 48426179 606492647 281986771 510022211 575471473 791311893 456413658 531933900 449848454 564850866 315879020 674915087 72506329 207383615 373915757 556001364 411550535 670551198 919871568 990357917 62729182 666487764 804984492 875456720 971866641 986030200 200449073 759082373 838838418 936344410 897641952 914461813 142168332 365868013 296838215 538689973 202233704 733396682 141635143 329324862 369582762 941238157 541248742 628339394 651314458 670145554 798761 481778464 407558518 435260621 493356670 547507284 768018877 804137653 247073604 766373843 83762353 826124449 550188175 658191114 740441403 860723690 375177292 651333286 656266578 900897859 194455421 708328685 882768372 983166706 622093087 625255560 217898099 398436780 926886551 982113656 311767614 656477318 991430497 997528977 668255492 809333771 712908203 872899105 208994931 513065807 630630916 937364728 343154698 954270021 101429007 261877565 93838337 270796917 811389503 915441093 13075738 551809088 16344511 640428035 252922851 372221381 447101623 859328501 602885596 917695941 708937510 802189610 225237529 859136405 241488340 353772511 13356880 839369427 704491083 780745919 787370951 909199474 889911558 921719527 538343592 620463348 300580758 528267650 766437227 977165694 400018034 960753240 710516704 901206273 546686770 761654517 762593934 806116476 825721600 893503987 390993021 657167255 892375859 957063986 87102649 659568731 483527975 947776544 332419578 667532033 16579175 278363650 335590998 761902386 340710476 931616269 47490915 711256948 824305097 843077964 930870131 989956109 93129632 128360073 267471089 282780972 84813180 725096166 944836828 989560903 896136658 957232251 324154775 915617064 431382139 566421441 300563060 398503094 747766709 879778332 352876571 519192613 196853747 347856099 386905444 533526729 422323022 547142755 712462033 833571418 479602379 520581867 789611248 814791452 159298116 457402185 350821765 459789147 705462394 707534882 26334742 250727747 775953468 900130991 774435269 846709505 127574389 647876950 305981965 666119504 121339537 216795067 333394160 399220060 267173498 301614716 305862296 460991718 291627989 623246417 932619860 955836070 799001183 838081581 708836920 892355217 953897914 971938443 583852229 969062792 346021157 558145605 31877809 727869799 184095817 456301415 732545195 771313525 740420563 898537800 685679096 963531204 408908863 785986568 728580576 817423976 319063131 385312352 61563790 748374352 202746533 442953949 196336083 555954040 399294958 622257793 67654074 649374942 274334078 911903458 911857664 982908866 627131613 697339039 566646664 657994656 989880788 990306872 529983665 983944264 207763452 246384327 951166019 999572555 516045471 988280961 282666477 652718340 751101828 877542883 484878706 537186093 103657455 109291717 608777982 737976483 987977579 991437185 188068014 282578960 391185275 927465020 443953150 577933506 637092087 848443439 333856629 819575361 342534992 663702065 522975890 989289996 677279988 911308844 909231145 926596411 325670073 909135875 880654071 918265751 293200272 805232012 339717781 978800478 277133380 787049232 975513427 984101669 281978160 451029843 746927341 848434447 338720109 987370228 889615192 938854273 67363281 282775131 980286558 988356521 276493447 314334194 935178128 950527052 149908251 396983779 466292061 758642533 583185389 974635333 468599229 682855541 976990166 980140788 118600421 704557925 428380225 615102868 682750932 905691863 302008625 783750789 256293031 838055025 983751328 984680101 541414132 780242751 78716960 833714684 342760799 378598336 889778390 892587515 826325111 930516089 294045450 741765535 17522204 442741955 800591819 842052548 520745370 647571552 604700218 823604340 623880822 992528523 108883075 739341635 50695371 937196068 269869254 655412692 973025299 992985134 591931960 853204811 3654380 239291676 36794293 346955447 467619918 752485270 233771200 607633387 726142181 877101321 444454432 851470881 432247912 948102896 939841925 981694372 335935529 774875015 182784132 774115987 128019724 178968328 155584398 261490127 186120555 649510451 136085129 778697441 621466346 909544125 43437529 973826672 821478780 872333788 948792377 980798249 922556648 936883726 934123820 961208807 527479581 784803489 956797212 982839995 219631146 385659491 769409865 789204826 517501654 948658178 849575820 989760310 100504628 677849140 944148076 975458768 910698313 974311207 464750031 742732145 996316377 997236558 192298980 394893061 113809836 193296219 571578422 953055692 966767420 977102062 849259965 928121006 58069878 358824842 20273453 610035934 908168998 962575754 783441311 816818449 449790640 702058225 162455175 227170930 268064992 727762725 760914424 871024139 534493432 772611702 337868571 553903661 662459362 666910674 970613290 988138614 939916178 964941934 2419885 534098330 628282336 903853021 21116636 800680222 632519917 875155682 516702359 872815325 544088078 737952923 420661787 898826174 740750118 846815208 305855907 511351498 296306981 731151126 89813168 372923285 142818522 742209851 644855882 920975739 86529988 534387943 171510541 688215774 563593743 663118238 691185905 887593491 535954805 639250775 112465658 940825123 304660538 642250852 698756163 967497789 868751709 986373103 365225819 953157294 767979640 848300718 908100495 987321069 537263505 569675009 895990157 984227439 193225098 899614483 350320304 369393105 852507685 875027235 177044380 258176848 202580435 819978976 157693845 211027928 987080051 992423617 720442750 770758643 915237336 920357251 923714669 947708167 52149384 153383038 988753738 989032414 856224987 865714765 253532959 830016969 229155662 944866924 3295405 230204942 230265994 605336037 399833397 487387925 614656469 841115706 411006474 503788587 846269251 960416394 929447724 986905845 735206220 988049372 47537556 911021743 112305362 502879554 310868106 719331373 897230728 923582489 76967448 708309464 886602297 953605246 505550713 577281029 351982571 632656572 732119988 734892946 53956314 424050798 763889758 814737702 178872451 877783525 411759742 809770014 369573953 405038458 203844488 588297210 517057387 912431701 988784622 995160525 74992893 725009042 651658606 698784498 511215573 807098789 554700282 987810597 165020910 570295976 580343089 970124672 327718981 340836089 443560744 892744900 449724701 975094880 150656799 727450524 91752489 893637763 449759894 499788779 245482742 773714117 131893602 264160311 276705125 890570823 323274416 514849161 688927488 971174119 297504621 650825996 402362309 927917100 273336043 992209485 267160266 895536119 122323788 655628979 431799421 695608485 879176294 901473989 655661784 961700042 892413352 938718415 570902126 777327509 421405957 818928721 202111608 573451159 721211572 878547240 839290292 852429584 52272480 566554179 686958844 742347832 76382963 152929254 570435836 639665575 682175794 939018215 888628198 900723158 401187261 924116043 490874914 772531760 515120658 855407246 289827564 369744171 322400849 962426984 237889785 620868235 693629191 969322958 409536090 446520823 499385392 711616777 726290405 764275101 621934053 632110773 663041267 998496268 198436546 381344396 827033067 957303743 249204762 577960787 33161548 482753814 660509371 956182890 554682749 667241282 233164244 797781375 142218882 557877685 304558080 720028392 415680566 641271420 255549101 835820617 58296639 257458065 696492992 965939459 251089295 836416213 47242940 600136550 458946361 630107073 138494694 527639099 323641802 893760102 847661264 888462379 629923041 653163470 518742707 880489493 65336806 639946962 248685595 547121406 279489690 720824740 352324401 995681727 781426204 906768076 513254694 810721788 273754862 736403057 453446441 629610467 517042613 816531923 954597562 968765537 732886843 986978319 411836060 635392313 447723130 498553751 901576219 974041828 692523752 875314211 564569586 688300062 60644245 474973509 45741971 583284872 390309427 829215063 575223633 903864177 480689792 997323611 385649584 601148050 525369769 712458605 47092074 961126689 450595777 678055645 242495291 806136757 340765135 724084339 246566226 449528005 746167300 968446281 700386654 979559069 745475907 979065127 984585350 985531503 785400480 820731134 696012220 711589777 46014387 553113702 92850983 555044074 936143637 965969257 227667745 741961502 77213852 818478273 931360216 985331959 869951755 925504757 666634387 860670808 284976344 694137955 89105446 115284891 452402747 788587569 483209485 677125919 740309014 815294079 320008539 523032602 103960876 742687434 199164729 789484257 575957546 918523907 734070113 800549607 290436843 809150878 486801656 550486180 294350462 294624965 517716704 942334246 815877393 913224481 323360525 972714505 93563794 525525610 398565069 688740103 890962609 900924854 18763467 480418883 631530371 694290105 668823817 701993135 983797041 991335356 900799821 968468337 170958618 860274071 103631484 985976128 595681386 612260326 525836840 553849297 410328829 976678736 952709897 956130182 981946061 998168827 353156158 588265984 875293894 931029270 520686565 827751149 269932207 391697888 58566344 287323604 185924989 413107952 956366069 972526212 511560347 597388039 805139020 847898258 535265194 687223394 823444254 953634201 761235919 907545265 121774562 215426479 979652065 983694153 973415511 977910273 442337558 863153165 495808401 812604165 425762483 998739686 971626131 980870811 296208349 738951254 797762619 901890356 163818955 576245893 395417181 469561071 610806084 967377662 196970070 514535887 287253091 946052577 514099732 892472023 116289551 544297048 506818860 670984543 432850215 990602239 764793290 936887583 547324051 865442890 685320150 992765092 308960459 637239852 23740618 234158967 473284736 732157722 628391239 717428826 85152673 305171311 304648205 794759884 972940896 976671278 993426411 998799453 381486482 828032834 710464980 893645189 657140415 958980598 950181563 980593194 340767910 743893215 862337114 920108215 419887542 869921921 216654729 869691789 444416645 970890107 62395508 864359622 708028891 969197698 815284948 992418599 953326058 994509057 500579963 901570142 904669991 935991510 160207928 408566492 320665098 838713395 947319084 993438800 172483395 932586522 459590719 959062542 605938858 809576643 900573103 947791297 330446407 773690060 234109371 347822117 757439155 947256901 862017192 875171929 426820931 492099790 906016018 951025869 891437012 914594045 24678895 816720998 188626831 688739562 17463166 71838699 210577687 877092249 920702410 991622489 182261619 755913167 756764826 762880981 39791141 575830165 278584141 864752204 23509347 805296593 265895074 780185287 136984817 465698749 910703487 956874037 791642095 971850920 978737789 996567050 969061962 973400076 277998188 735485037 742275963 982837756 535767268 855600634 300701859 715912716 919705265 931684115 52443463 801004954 820003755 946808376 504436448 642048822 273275144 853764947 939858748 955628720 10217001 22763602 746747369 853472077 668315599 783003144 403840729 651403025 228636010 254249186 69101267 396581672 341088047 442349240 734338880 824681564 281551632 791794482 670136666 918085865 389260395 616527699 164998017 890024184 889952924 919769725 177280682 762918629 433816438 930032004 361841799 704004646 95310034 633888716 618947015 735643722 688855409 834632828 570466464 889641595 384527916 438843224 698184294 757667732 834460178 864699037 953433716 957835633 924904312 989146822 144182773 429821239 554227105 925882896 702811091 706529670 24288929 963936957 182375357 380930368 291939415 681610499 422741147 952406599 860470980 880844948 774206980 857278778 210513046 447331077 564180600 716034797 502394001 819782670 831414343 972737658 12821130 654245378 487981500 792582072 878186005 913066738 72689706 552188802 420002923 729826414 993860062 994179326 595675265 720487135 414432838 678665981 280919411 776973478 265623780 418908646 172535687 351357345 466920701 566283798 731391926 808114221 937126270 957669891 730821270 970614919 983622960 991933093 676936775 765791673 954153636 994323862 974485823 982852420 352220675 840533986 154373697 692957010 799423796 809394579 305775942 581762690 570317644 968664733 405624155 797807556 147451864 804126223 865868225 951234500 178584966 914692682 951856925 952444442 81469869 199736532 698165542 752755952 429328633 557022516 453747300 610731440 197905139 644339147 100195860 618961501 667288497 734250791 217809895 661469983 12142591 262838530 523564620 557211733 513315538 606758794 483101364 680655127 336533345 802115330 638742531 689646239 611934550 883320967 100763263 326425329 422184017 714483786 21235861 763987249 113307869 540470664 20812747 467750771 214490402 641556911 206842768 444208520 176048787 407919802 124399159 699620972 683703856 925819677 290839879 663136410 610131082 697254977 470687066 643402424 415792655 425112480 110774947 900622442 904997 610481547 139991441 228109840 725170292 744038180 747660597 797294432 255659236 848558658 902658487 935426984 403102105 558411871 210271235 394649049 349030627 621911542 430840397 943588248 66620777 228874216 401871180 839067317 983263320 996123894 552892119 597524757 888755119 902445018 351799014 785901857 389538337 662892575 856046463 975100438 110387485 525120777 574779486 790822315 738963638 936390051 186498474 297935847 164122573 362413629 731209763 744637235 282496165 788747003 456668038 590613231 656198985 705174578 667538950 677982087 300335784 955978511 658129891 663632500 929999600 949091618 574069801 823089921 614385889 926893639 966046567 987919675 910454325 944840123 384546343 981246526 735933276 761705049 46075089 659133515 37829014 482031472 170737658 881625228 245314829 876723704 315701093 804781950 926406021 944682298 851427073 950437306 214982012 876687183 73823767 172878305 700135675 967545474 463919492 742741527 751921057 844266843 633771642 813541671 748928025 802897208 21007566 364624496 200702871 625640315 876179919 980088967 690127708 892659307 233842408 981249517 436265519 553974924 954504144 965087340 698407215 721512054 962872078 998155771 465212096 940038920 758807291 794409740 799155285 986109319 81426661 944484818 596287585 708148523 823439885 957483284 57757032 948498898 166764647 407584601 982332704 987640557 719615464 866735301 715873189 789621196 709843225 735190162 232558541 940529321 963560333 968053020 394318596 484030151 226973200 803859888 476663252 552722084 824401023 860426512 683822770 822892583 218633288 875209822 983683683 997359170 419382529 740312970 927783697 940320503 503965440 678647614 535478201 539428404 155339403 270568650 330831866 771913990 166061819 926680340 450724767 909113919 1990242 800134767 595111003 897851759 333471444 411239853 345073700 676250303 882671305 921640324 394926556 495232548 492288919 924433203 96744065 822125948 804518573 883146181 36983508 226806732 638961938 757830694 669032202 669813409 368863154 856781603 730814801 842793476 370927508 972681677 293309218 741065848 709492474 979434548 680681572 832990580 565321949 824699204 596908779 720627501 635077060 860791185 33079846 671669204 985029632 999480565 511312406 849060975 845902855 861344004 250478174 393264850 48387304 721230794 672871934 921248342 764667506 868623937 581423164 638860111 416770485 808777986 536179689 887199934 348512495 497307795 505610654 540970983 668044579 845176752 656396608 989459384 999117392 999123320 429453306 933155963 177636641 266594430 649035884 826013361 538451328 721670908 15901150 840422377 874867421 893302686 323293771 532428959 301129920 363367338 295610367 542083542 381059694 476241442 37787797 399727691 316748906 536908268 503004501 799168632 920795031 957262027 465541216 768281653 323166229 457428606 8086421 373501308 604747400 839067198 69483845 544622171 586447760 792303284 414635604 887638345 456537518 927265551 61001320 562971368 134302971 750995022 750644823 829521898 516313981 969492651 629343859 645051682 678783501 713758509 826828689 928085165 120860363 855633597 377430917 891303841 162430989 406316090 211138197 946379911 637352788 641180050 273584452 401472831 197395709 307924769 594783861 639310131 522824142 898227426 348575613 759079346 124019291 432609271 712723745 861918618 741789595 815738097 652931873 690907423 890308567 975647302 838762687 869169120 58602727 473813721 757787529 841031447 38008392 642705328 257321834 642893871 330958020 686668682 198728841 201081748 76362573 565580764 86596221 289817413 672617408 853893714 632589994 853983613 898580734 988914518 51819388 611891871 172263968 960473895 912455897 984737802 604937550 743563653 610595836 792827356 39096230 449307072 204517601 984856062 345691982 368500403 650627507 719689625 196306394 627853868 565118160 862493016 33936503 846019823 731555782 942801361 897145978 971690032 697327682 858563897 964818420 975190884 789968263 962621676 337039366 361185228 127310483 352410513 986561650 992087839 465523229 474578363 908153273 939379229 876677556 962730648 921652086 974802927 872828499 935234528 61900894 853028034 512989482 649147125 50932457 805741140 775485380 823222845 322304461 857468517 989640609 992174911 356263925 524377138 111650972 935510043 177417301 401176743 588136089 698063980 270765360 481927517 464071749 942512211 988867504 992714255 63022824 679782668 491541703 886340293 328630614 604240924 671972513 830601137 507898899 857416020 529900336 702183218 12965554 707472689 773048495 819876815 937814801 940052410 669607777 843646111 691344429 910268311 376079486 836293126 351437817 881611540 408722971 634623513 612738380 647857817 377470721 461316363 71859804 829075604 373432711 716885238 566948368 733076677 587422694 893748770 229003557 650536859 352299293 869870246 93914026 578966533 850638328 860515155 116570561 708830464 90089468 299392587 914728869 962717733 586921049 913383869 370373410 772763369 861514992 914973240 584253186 699314035 149722718 404182569 450950507 473388268 764783910 976113216 191519109 370968293 489036297 758232413 377801967 582806787 901098673 910818376 192087814 407932724 731444893 797269099 802218596 960208364 707444709 870175287 934693305 970670123 223479713 384610412 95168409 281047407 963686991 966969512 277180341 333209526 771449332 796935752 768243537 779684600 43754944 829106378 280888352 988233023 907606978 986209350 247979237 421103095 848396088 943977355 625091960 793835917 862180530 889005987 342107549 791740409 35401474 584072382 781133437 914561793 359707257 916594018 415481906 508198550 72220998 952236728 710870391 920703403 367850046 830651540 5081616 865413311 715024299 919090577 663082915 913079751 846399086 855333121 24716987 79994970 224079276 510683530 48381907 331534193 20577539 28584651 418413983 664507457 932719979 976197942 443759982 971833712 529775880 961813532 372775325 419160036 820023159 977866461 453627859 695008759 644209137 739119911 414588124 794410462 979998328 987755818 913338144 932078746 463878190 809550087 152373915 887663944 154386773 475333940 603090207 721246817 348125616 627383345 489018590 877669505 501194964 877136225 26698082 83496564 477089528 896131144 768892519 840903515 868333232 989413388 534643995 725293474 175034062 964073941 725169961 800203623 242460966 765806260 762467564 909955557 112861202 314610095 367421427 639123881 664691489 816073078 200281258 776010424 996860907 999020442 173539550 757869056 580858409 893254180 607110494 689745318 365792421 441473291 190908564 807155999 580514584 925881372 51395966 795467252 257156445 881666227 875761692 950231099 114540018 927448622 350114362 661434041 947857081 980748826 335131543 861071808 20041126 75343190 438181331 746923715 752444247 871076733 113057083 826464789 445135590 773068479 614197241 697625584 604764697 772839459 831717158 895884236 305046007 409451626 660034116 687610440 256123903 946840475 170557041 602120919 476329541 513451988 723369286 929860188 297774264 803200895 824751834 898641686 335588376 694684777 404826950 629564145 891499860 941647885 619054710 722471133 312174145 528406932 979696627 996393836 233276797 268736347 539534987 811350555 743180671 865162084 191506613 864033673 834364877 989703096 585116938 963142024 868541769 965669718 940382109 982057887 922883302 993451362 251084458 709322905 651111873 944759128 828505526 862328379 856972079 935194520 570418766 620189940 715265754 877344796 230175043 374348375 180783261 856793262 935335100 991706198 663709106 954505714 429892073 870081948 770370384 875981724 908912049 924671781 389547665 662629179 568722082 928255885 865297060 928538116 899665577 947145286 842104645 967699316 82955679 222860153 994839845 996792050 259627562 856453799 536273513 737106331 935521571 962002733 358859245 459483189 412931657 596245987 831702403 874850193 866113769 866816249 268648453 883554686 313735875 812563877 258133754 504279328 637318674 892186729 252881403 398378888 561387539 948173276 295866476 454361715 337128464 579259725 691031484 712050438 390770490 712589003 564194321 991773514 25846101 781717380 857472407 949937186 100755136 625710775 340286919 711288665 450557259 530524514 130971147 202588780 928044521 961552328 715476687 718135548 546050060 898145681 998263636 998621508 892018291 928252801 732157979 965501428 627446901 957179167 219367722 329708953 48478946 587889319 420356109 581605294 727055008 748565692 929921252 977654608 6346804 245161590 282133746 698189070 141604888 610890951 447310175 471997354 203658096 724925973 173536776 686818300 258819269 885220364 713757157 895804606 942936610 959676048 629589061 969576135 501115126 881512720 776022156 920032795 490652159 976155955 530858585 787448088 680595610 693535067 507895307 729662636 916294237 951765029 874344538 936698733 30029447 815287409 658091895 943428401 827310989 876034159 145418261 696293982 628423930 968637777 148206825 909406577 54772407 897727955 515147786 938980514 233556216 656529573 220295668 594860910 608044747 986052704 989354179 999281911 575597381 777418617 36167240 856076462 839116753 958525322 664285418 856102591 818378833 925691129 853097926 973582749 530186703 959948800 953810331 960110694 832339363 834646961 123015521 403521722 660430265 749061562 351732901 807944227 918183771 988548331 402546314 910446812 985654243 990825794 297277879 383293491 701890912 831417755 794035837 885454424 81093193 351182608 312656830 838378363 909836373 932648230 458029952 796608113 975169668 999702382 648139902 667064214 883447454 949138577 963388784 980544024 236324912 248048038 342200320 895249740 274062345 324538405 745979035 898991716 75248828 790462681 730961986 763217356 843444536 846458969 542287179 753306041 858288316 986524682 984367300 999790318 266556622 561787342 481773207 794032524 633887764 686074569 28309184 821644922 553471993 862503831 865696777 953624545 691011807 783096846 912797751 969468053 820613656 883911556 906815866 938355869 674091758 683718620 652814622 779139777 378998500 637960560 903461224 991122593 462825445 847689310 325892087 679040392 804017803 934489042 895167594 908219646 893407155 901832843 145361523 932444027 34326002 309964303 101288429 395650665 397250451 514386047 820507012 952140491 391165741 528312079 48814899 626088682 908573414 909971702 197897422 834659077 701379631 839528223 603361980 914332686 584677849 762745252 851783260 878840006 313761164 590491684 862890635 916871676 743526100 887740579 862347912 946576656 890678313 988631169 316506930 535237226 74877123 556961334 216578691 582070390 48911819 786874248 243489720 313807265 667852213 742642673 194964003 264281776 770588559 940517739 180234183 829499066 471734395 948145394 384336101 699703721 405399642 622589095 417751879 558371500 164031167 224170649 761776337 971259769 81966671 443623467 137473707 956635002 127740481 901727533 216073539 541235777 787413803 823918890 790319541 960215895 614887745 796691668 424982512 562559961 667639109 849703967 964398805 992825523 40274942 348903524 582190440 994704495 363349303 564871512 166841655 169485785 423358205 504557238 358241450 783061850 194650631 204999183 665274464 988470115 684148749 792379608 459461576 874018945 196526983 494589392 439018976 441737447 60824537 665553738 599255743 985880558 354657865 998864894 462531155 689123858 671261329 873319108 554217479 771706484 62649507 899789493 702586056 895164078 660126945 974592252 855917235 859329765 344035792 858862716 228007078 981774993 916050808 949134132 24960306 80121006 796416443 884164667 639583559 846259284 225678354 303462636 713296181 889033669 681469231 965921506 463058667 870925770 36124052 909394054 142907859 999546689 814191110 924219317 935463081 971689207 866541506 982882277 802836375 947650768 74121724 663796253 291542499 629712074 111421424 706848347 709906424 986596499 818529152 837121788 946228790 975018005 162240110 586667637 650051800 685336030 649310428 799145719 576481035 920081136 401097550 570186054 334803073 885162724 198529036 594989208 959560806 972776452 571900083 655625054 578457683 617695606 335056900 615818273 293083643 753204277 4310916 532375687 487252672 776524362 854549079 906597436 590639202 863672135 235507680 688003458 334120467 345215965 684975150 935262773 326287684 873015404 622197426 733310053 641375367 991266744 697859802 922746702 412484637 982150693 250919467 418739832 962186785 989211178 264874636 578897059 135739405 879976248 841550145 945339146 71591851 922744795 894164081 919424000 534564731 658471794 448975329 896063122 839141751 926421797 832003564 879826637 79171071 374742431 460334496 808783740 281018218 989915990 663364743 712201719 842992205 961411216 385163453 507078137 422828155 775593476 774970768 837271951 353620238 865738680 12882627 831993445 528585002 562102182 111466467 965011686 796760668 848283096 696976588 950438046 22353990 430337600 295779857 407431401 381239375 412854532 659885253 671329066 746478145 957264247 883839562 937843578 662833295 724703045 430719942 615994207 606683976 662203695 471598169 994696566 671719370 803101261 89063313 566717878 299439605 786763449 524453740 968868314 422881065 485091440 314557505 796048598 287459118 867247592 794011913 971438386 488383812 826846340 176679792 341945926 814711786 862835887 782682508 983735047 401644099 637148445 970576315 986224535 483261257 610248293 333292030 387158849 629424532 744072273 152882405 460644813 356477600 469278128 623541490 902546227 449361251 672362122 584727847 687630286 599608547 603733646 534558739 966674635 120596254 513404292 741556774 832106298 95091576 533824714 879429262 890094719 334031618 888592048 650209679 824497868 99406029 738781897 555761474 842835381 777283455 846261854 565058004 909697884 115324773 596126526 656261338 678154774 815678425 975466825 462623115 989450330 530381274 705617908 717702648 999901916 457433234 876064665 209916432 604159466 359574222 387479409 912047421 926153137 135667916 233584213 388222869 544133422 922709640 965551410 905574793 922318602 134960812 656526053 8138283 441673767 813313998 980579888 595031784 722942737 287926374 366377766 740585708 847715183 821372857 886997012 662616944 836875973 816184818 987625343 486068503 693904426 716403927 722204510 327384332 764295114 37583631 401021248 953942921 991682113 83705253 136251736 107616180 733559714 130442916 276543061 490847996 891441020 271693543 992345509 39775476 54154511 955821624 987682198 221250592 589064814 427693256 939903390 242824823 760202006 70838473 988719399 574922157 957061409 379371442 752583288 93380946 258372361 621211129 975514713 300788448 804538300 41262518 908253875 316792593 506608881 806726599 987062026 191888651 312901007 833405866 949289890 592249077 870151001 86958645 266880472 592518845 764827513 777016359 832885701 612794289 703631638 148631031 583237416 476847424 985498398 491503388 965628310 416614279 888893139 177806513 653203732 657513455 849094247 633516736 836914935 147627483 789078380 392000091 588632063 294463419 825097178 898479081 984818677 276012913 738688726 398534674 578145861 200673750 429974820 509704678 966952092 429856666 643866768 57614307 351585171 210166458 864737673 590459893 908700711 829287159 935977887 842917988 962934449 542877592 604213859 147512365 406477633 359675010 618911384 446820324 841192117 596165508 747191734 23104637 167975016 315548829 384239223 949642549 964360160 563542050 921624326 221500007 894901010 786465765 937571707 130039844 159321039 367077355 599835251 957884445 969781815 436915518 893951023 935051067 992735202 523427525 568103098 345622017 375133285 45463663 848995431 12605219 382618475 106103107 322808387 958773372 966986935 250829739 819387253 588663725 669493379 983001856 988001622 222241624 683800931 388526259 622770466 518022662 870609385 178587716 430223607 374712945 965324026 20719072 545664418 168246523 201038868 193819788 325590444 401927209 677065542 190683829 901766387 101148652 693162068 622031788 945005061 68086093 336845285 196648268 262287887 794689157 954717087 118192262 572375117 920086646 972426104 969995614 995355692 925606346 955176623 589224567 604313142 683388475 979121945 542242198 604831187 152743569 968022193 162747291 895902244 119704230 815594994 140410504 395886281 729922601 944551137 704581323 913813611 439120628 578769266 537915882 875763720 217507028 444637502 366039031 591857276 618025819 623664963 841076656 966995567 315174067 661821890 26319882 121748576 298657453 918445525 465984309 648013458 895834635 931132811 282014705 971939492 156119193 459603170 902937612 939828941 150404794 589528000 789129271 968737812 823922215 976633264 329046187 730933634 299305753 364261898 684536565 954965741 575016476 668230295 405452943 460643062 111940314 540615698 422360398 563097388 604094943 885396601 405613438 881807716 912800801 916617291 618553097 734438490 857335670 954509560 696733165 952927653 454848236 556811357 683651295 911075851 815995124 978399004 842548920 905730405 935679664 973766095 66582859 996739367 900334 27060975 944242317 998396670 986919306 994139645 573436609 936190824 601564588 950774611 479016857 485871153 860883758 995923133 632807171 710013264 984193044 997448617 470650330 893450502 990222668 990328659 214853575 499168724 162888983 707061913 115745040 668408209 512717748 655733067 139049512 807918303 447973235 811028413 792383791 904571342 581602179 972921603 347886679 900057294 306498100 806899700 686981624 938195733 366672420 731008682 500172165 823401510 368326373 532620746 845691114 873563186 434028825 986186610 951250759 981138319 601785814 826523274 907744454 911571876 633039643 915532574 579751499 657160638 875929773 942684774 450417621 898291161 22150949 602412462 910705114 927810168 492358828 785222610 472204691 503544557 942045446 969572478 251393893 952638909 230374391 766454042 34432037 210676318 587767069 859221235 622914460 667054449 400999243 751972936 663446958 890428596 790368516 877325393 536778413 607830305 631635896 985842245 660640982 940426769 402082617 933866239 336048338 798900121 540255932 886962781 579121805 809815254 354293452 632970157 609431331 685861795 693135924 798785691 16338008 169600814 463275232 900073284 67752665 868614368 321695237 368879066 941301984 972915160 27257264 228586872 433998827 996313846 91383546 195678804 518368006 665745086 768170769 853711163 488084332 640265142 846553327 935646621 486679239 578134087 970631723 988561540 831137354 927385614 235482826 588357616 121522537 155694384 706981281 952464746 162114388 868677377 986388990 988154926 823311795 844744796 797201064 925224099 591787144 924837320 679121784 883983812 984409293 999437376 899500986 976903667 194975177 886376794 197703366 805051513 168291504 770854540 357340318 505014163 921998503 989628130 901890482 971037213 292355865 709980129 188912746 472631549 866763775 921469926 642820554 861266273 560234535 789197733 282472502 992148349 234134187 511874611 911767001 917802519 976167011 981593229 426059098 494746348 308940342 521638649 587836503 849207600 893736830 993012906 535736777 762840192 505684790 571016525 847139863 993852038 987571669 987960175 264425149 892421811 712036790 726366168 565456260 905167332 786370634 823517765 462336078 542897361 718320475 783661927 531275287 641463626 653036509 856691098 285040251 436583439 976827052 989624420 734675138 908499527 467330051 535932122 32296809 379209455 86876335 580343742 39878297 877867933 457393661 872274312 300739623 422988137 713099203 723552967 406395041 449834593 207754577 355210369 727593084 971408370 283185010 323068531 52773701 465811281 445112607 733525428 435741026 598469844 886409160 994665363 8021955 236715932 762265191 969144938 975390986 995692120 291261503 825811642 629306206 872976348 47049989 189199011 742470705 942984918 676324089 957846097 964590131 980698453 412489753 551797394 359194329 951751579 574602353 661592671 912728203 951883878 534658258 974562770 739754675 826451839 914686772 969800808 819177902 894836141 934915585 976791024 459791052 482974896 618451806 831084558 668824681 834527313 870525639 980451009 1554714 905615577 299659199 484946401 882605954 933529652 567589152 742023664 150870052 860518196 843656914 997809555 2161237 387833853 459438350 956036981 178058972 243366300 683800140 706413551 498738309 861001804 384586999 594813562 948776636 957796626 339625623 735870468 461262665 930919639 563177023 991289480 152701827 685146108 310303659 698039272 253306461 538901151 721054982 940694092 344390657 958540361 486256353 533588793 200655968 750697190 597462652 902842707 548554864 601100549 679774521 693668125 122565976 703354623 714302194 837862879 601400633 761235157 570280125 616135561 828262620 862010139 144201619 825642005 932447773 945977701 230877383 439391180 347990736 611517495 781307942 962150029 598243024 620673701 745623954 988594063 64698301 917073443 883210217 961712925 719219412 938104245 733330347 799843704 530937056 552658814 987361593 991249270 449901387 475211655 367300659 434485289 441031784 806327949 362649907 532188415 792030821 905769250 206178084 971616627 555082415 775085149 387311993 773313886 162552176 180189857 891691355 955933141 793837232 930813760 711916399 989872471 369700166 713581889 451487676 455889931 991067634 992193986 803182989 898279467 990527516 992337315 644211876 873320800 443974376 451826522 785968219 801599620 303624419 986632023 66985455 668499018 472995415 504648400 35990724 43558776 687795368 944693586 859538512 923349871 433675962 551020454 254716973 404629440 329189388 397479661 964953712 990303232 825990879 918251321 596709225 991311339 289816490 584595615 248480991 748864962 206541722 861596486 903168147 908913463 724443013 749448261 555983807 689889666 335869142 914297193 397436004 634345292 525335251 956646297 626612921 917074423 36592759 253010663 415935467 720520144 848373132 955008227 581104241 851524766 343735812 803055226 678246826 867862239 25055419 759774595 918665268 987791239 983601593 984626627 757659286 766819672 879309250 929967183 581482724 610007268 252145040 749792256 845303217 903528509 283453001 615986362 421711334 651799496 665546255 675384625 778962917 786572099 912501531 962077504 673301369 960904055 904397485 931794161 86814953 939688839 679060349 749743067 485950952 832628214 964325173 980068893 845667642 925133924 894105423 949100819 550481469 591596023 617599765 789839676 803166646 865390936 306368940 860311649 128903326 793267922 651635523 968967875 579965044 922400314 739729337 989565368 864758396 870362771 369128725 632271303 696627491 826337370 402612196 933987771 667302325 719214173 444897461 453592989 847944823 913187140 103417715 439738006 46138381 170035100 901188274 920425224 130331633 474692928 35425368 563443294 199758724 357275786 737755345 966909306 985846902 991372380 603869627 957780634 753598891 907599845 781011748 966677322 304618696 529591892 171902311 352287574 8037959 620738096 196752486 404868590 537902255 802758188 554576144 983989147 133944203 500788434 785120010 797254087 464541273 688442715 121082451 666645960 646645010 769842187 323920760 555721227 755847812 990220926 302572936 956020010 547500785 878133504 176051048 248903029 42031433 96790113 626836628 697796524 893426505 901323295 436767415 632590211 65318660 423902265 151458552 974066104 717127565 738072427 686834795 995208508 644827106 885398930 129333263 253394637 451055935 826657244 195918641 342652219 300415479 349281109 655952357 924299010 858545653 973953503 892382106 970207908 981011232 995246755 312937073 721070573 153098599 190267804 422450854 522025867 243636248 882369600 177622362 234505611 790628236 981909027 328983392 559654587 276093793 558810450 30772668 372590626 166969178 416156908 269969057 811702207 867141636 925811712 827484726 871863595 308128461 997188309 902347111 958068895 798836975 931662116 777169575 780348966 891782213 913599709 778489270 897583009 918879626 947822557 498978884 993915663 902390875 909627046 741441034 833445235 515896555 571246588 908921670 996988786 453631590 636810206 411171942 413294542 909439074 927847931 334495823 884525504 608871701 790967862 661207206 751597211 305651973 786092288 441067092 997894398 870976498 904070427 780974073 840578455 671351257 829553347 851538695 972127313 904338235 979954118 816810827 821398189 86707210 736797598 10395596 273692167 235452972 528346634 815685190 924548552 399512153 668814201 495025422 575992320 699545891 996048537 8620447 510075598 527362012 814800091 161766369 677201810 538784205 682416343 300061777 511854820 791155219 796242024 760364038 774690340 484449997 803934380 429635394 933193725 352365936 447793309 363980942 547021840 293170837 782168770 709363957 805042106 815282218 850994293 395801747 547959185 533341028 999672031 217332642 316766623 105959374 271663214 309797576 514515837 806061015 817883916 331315839 412884802 162332058 877600872 509650256 654279858 957012655 984768887 999669516 999901934 905246849 998897160 730992868 954142611 959910519 960814590 335561890 402948581 950591411 981430888 760178670 962079305 365449320 903685413 943785839 979034209 882810994 902158475 682540943 866340625 740664683 830788690 987417898 996611739 742564366 882462440 859388501 957171352 582615688 869323193 923793250 988665820 158503983 595789751 194325159 324790953 810468948 879925011 602150240 830440119 238275621 554115463 68015259 728366677 803032977 901456978 221599466 519910512 126853281 670343440 314724003 629082161 228759755 918995095 916879534 997285436 810096689 928384833 580840078 782079576 350871211 993352986 324749126 945876310 935429993 993723459 335512502 373057306 432920586 634647199 296788946 394130591 541073714 740998805 536285470 628287920 979295588 983374441 512341269 572459210 438059271 751823463 717295135 804757170 570642245 849607351 730273649 917351579 988857740 995883405 464300593 803818350 366107824 815299210 516147900 847989603 822092785 838243840 903867764 968042500 180426375 380553635 545794228 555305484 552396614 564403291 290776104 699764895 792128399 844488571 934883746 967390048 838926064 883900507 49955780 438532347 689228622 715027704 973386006 999428940 817881766 886104516 799569572 836163714 458778925 794145644 640306463 912363329 284138285 661618741 130237357 894050207 493308633 974586293 125708512 766658242 252446655 714432611 123131487 866075777 228770121 474892911 443187307 613467452 330702721 738494230 403583092 631160977 569050737 766728545 431593505 581283123 712345121 721854332 475307207 796664265 195191949 820739705 57661788 810657025 330976992 741446654 220515893 221002137 437667011 794976213 622970433 816425068 53612989 463527833 115475824 346248094 5873634 7053614 995026796 996114351 673213827 692416749 462353566 582688128 222583411 390893892 983601006 990409530 840286239 848472027 122952806 648439942 76168399 790451329 780788961 811787695 343146490 496721369 908027358 949248703 243761781 882992121 272815294 279870941 256156476 618427782 441814345 450281544 694474107 887978961 608143736 858122311 358862113 955121894 19792855 994334228 206674536 273059024 528299270 747163220 25358854 559753538 475629025 753785250 970000139 979635497 754482604 942643353 148551337 441089414 897251141 903286899 109109437 117638350 842540970 875321745 819241599 888766127 10013715 874066892 705943562 967218279 306577971 592400840 133657941 928549602 145392622 646994420 566065490 637556515 554904699 644151571 478271680 928888035 280023420 990028079 361633524 648294102 955079526 971659884 295498043 694261478 477244487 849074872 469047364 690739560 705958970 742391560 687304985 925779675 986500180 992734051 564552352 814866654 638602610 976016472 381970430 652805753 710445442 736217282 169105132 236866548 874248476 977423603 779911024 965457054 12512358 250351222 617467819 846960847 518518791 635448630 985387900 987420042 318695742 881564158 330399157 679681306 992369654 999285522 324243640 487367427 158245091 863094657 934122469 954349027 501629061 697110710 581998232 835921959 671030652 849690954 564320645 756818094 400845531 440779343 718166951 728322174 40138414 408024163 422298601 571363445 889289536 933994838 508847797 906168440 896013279 954655338 205623205 657494141 846682340 909692651 900585087 932338240 591183102 701068895 395911304 768229379 636884579 778417032 260877840 428343463 417263824 720450424 771456723 899537030 6446262 948766878 891490756 985819704 236163520 691318652 834967166 890947948 455945374 632354818 257476051 768933756 812320541 946749982 752930044 945903966 775956906 935737801 131048771 288037570 732203895 787609107 154798861 931961392 917446025 958002448 62934806 797130391 732615386 780841885 291247105 766585970 133285992 478721993 631287969 643174921 336369660 641808285 171566983 294521344 598617909 621749537 91275860 205950917 813569795 890628540 10103051 677947939 506281092 554367985 285485473 652819232 56718693 59774287 338802619 417509829 254295378 908660449 3189598 443088544 705365819 731331131 660476359 966674251 156420189 213635512 457202161 507485989 495679609 798779542 611171992 743895021 262143770 373055884 619510002 692476692 98618271 755808746 779828868 998953142 387962858 822372851 952576124 977170252 525391683 981967925 904104235 992479085 673151711 797633793 873414637 992760556 662797692 816162847 521683037 830360767 553528064 922827039 644552029 961838866 804224433 943938088 501805580 641578505 877360247 982110737 931400454 963117079 768831465 812845512 577890171 645490744 684935322 868027675 611122708 883369750 579962760 626661006 19129355 132262066 369405149 794985274 940851687 983773335 6877483 326513598 227853894 231733838 198355411 312471213 463668076 561187892 83896568 218674362 175194412 599678635 852890051 888615395 65218910 990237773 537127484 607237047 548923673 825726779 334714373 378636927 341238746 882843931 275879730 921619223 15386518 663004187 786270620 953402023 885433604 995094426 684419409 763342925 450885235 966188912 515068725 833005235 540017203 821711783 694189366 827689963 662469124 896869434 353349901 555407791 174190176 809166518 862774961 962115349 841762870 921065371 781119672 884303093 139756183 769258033 742908105 984143111 914203279 973235886 373480968 939305999 209019863 567401362 852537702 895900563 375737083 990455843 865130283 942029517 536129712 894207474 368263888 730593918 249744204 731224668 696885396 722179168 707781336 890383056 845610038 846492505 70629278 411058485 845527357 925981022 417677354 608863417 869996021 922761836 838888475 942302789 170160011 708151031 528074109 623464913 912704176 949858542 818763284 858862074 125593955 840757427 585448876 595036063 382283882 626604318 3203901 400256989 839743698 890286429 428486818 686304233 520542366 703169429 913512901 984637201 762874696 785348687 191364961 736753031 630408036 818993776 157059895 964966061 376900408 955626147 813994458 908501541 529884552 993203441 515789181 785690379 924183713 987457361 760472358 918944427 733521459 900041352 501733054 666901554 216695393 525150594 536348520 605043588 356125250 700398706 180016022 435013379 485139813 757589056 815912802 940272148 561575004 619259954 231114770 975926527 798441367 962710222 359926858 543097035 522774867 975804318 526265608 964543179 310971328 456643345 666820815 688128583 87080479 621946061 466869334 970282177 187848596 792977775 324910683 832900468 807063096 886851978 35183136 705805395 401887756 609926887 459771842 628348052 934301773 938356130 895466204 907964367 915832784 972376364 916174299 996546743 709134369 795496629 427339599 997298208 14153839 373029792 474718685 864846106 450628491 602474840 434774873 855623579 855596541 994423544 67041639 698038067 941162300 994094652 947336609 974732107 227095571 554030238 278749791 684809985 30479938 462586918 818577888 906019230 286985350 813250761 572735016 885264821 413749582 431407122 246042689 963140311 430638476 648000619 50818496 978432141 589156868 731874729 702348119 744016481 675989608 828677491 646429569 673015963 271688520 877141124 311769270 999331776 307520856 844228743 89543760 713841211 21476701 620430963 302807761 439608233 227020085 804579295 983203884 985837269 789798212 804090926 78292073 508164430 499473740 670200986 603957454 828522395 99588280 575920870 930637292 938803881 693715627 810827679 130180725 813465895 454315314 734574626 331563960 550071018 820608963 865574910 810860216 857629097 697757036 950382164 559625989 853003744 306783064 337225344 280868217 849876373 987346957 996886706 922493260 957592318 239958634 993324838 41189388 369111750 158278578 193806271 228988151 824594251 942374064 974687848 54563202 78381541 72317470 629539871 131517197 328675210 750861593 831757498 845411275 929976466 530187414 552672413 965536933 967057300 239294345 378498080 146064159 411688754 454963304 810169535 385652081 602742589 425660862 548603198 779715144 790431807 957784598 961541726 725863404 815121096 181513060 952418561 148465978 274909544 221336581 871800973 745107059 945665618 946427072 952162691 571968323 810094233 582922409 674642583 795828621 946913549 556272410 596024923 822796302 874409093 757872052 985638727 455225840 911713938 686423203 888302548 288476893 948232140 3094175 664082700 219832676 767441995 438368988 985833088 576589972 576965985 29415874 553886954 633812702 641684429 675181023 760184681 620205319 893286492 804607911 869263291 537292134 906561375 381228590 896032819 393779243 749809111 47977761 105393747 637922076 866125518 875359521 910352147 955859782 955977608 73554469 661293349 350781869 922082165 693644166 778018563 642300628 940684504 979527949 997692664 483987472 517577698 222776326 960694759 926140182 955227490 597362773 712767663 919681621 986561371 715579401 988419993 896850784 960119560 644236346 679842467 627405510 982460414 856752871 883345372 491916902 545832779 386304288 767945847 106592637 904138872 990020363 992421547 594156016 643570482 634553888 688639635 285636901 386472532 736575978 747594411 148395204 378748898 267688530 733956468 830611029 908281441 140678275 828382060 219731559 578603641 15456825 114791063 481465872 816933215 794846961 940747311 619236469 919434889 657610852 811982662 547782156 924595985 345640895 998045632 567248534 609933312 620319666 773396132 898441238 975109056 183014011 967836155 167713317 981860294 519809883 533767938 388206572 996131213 199720122 595316791 257478310 312748354 922642417 988270517 834068508 950156906 669724618 728186431 35286934 715873413 845141614 855797358 410258838 706931986 767820641 832327292 354014994 648313361 779208622 788413516 926913535 932203842 459643180 477179708 497235820 709996737 605944355 883137383 834612192 967733707 756927135 922634487 972116283 982738953 637326450 825722153 133773231 958749223 610713605 934343424 203919261 402332518 15546616 396887871 248860953 738577805 837528950 871625750 732481476 787576478 591041400 866542731 161643651 285857312 224650729 266269158 691738878 877462832 47443111 388380362 336637949 554732690 423273763 753849417 509261501 589647442 589255204 936805387 687569670 738996528 320960305 760954579 786253630 942528393 90306660 390609175 736878312 941791348 965759895 965770033 286660409 821543128 695372949 979739115 612146877 746512387 718742971 820762435 101351956 262439272 880404057 914166685 502949560 980295045 535678600 643895952 505748274 777564906 24465543 907911555 649958461 831576718 516820481 799196181 243543150 249470887 112798766 456663644 485233070 547195413 850277872 938268586 200098611 521572856 945832192 979025477 882138591 899314504 172588928 713046791 274750598 853980750 35565376 427389290 218514718 664031596 218871020 612984937 775992486 956265353 305022348 824249745 144123900 756971890 771799174 935066378 769208633 975166974 743103931 938069800 864823942 929287201 945761695 978034844 72618021 297605955 150753711 966988314 407630067 501438665 123375088 190650034 977611959 992888709 860056960 928053402 101152352 381131621 55130507 714953761 876257899 996140028 987074833 990172580 352582097 531994475 515347036 740341378 819111119 894569564 357429304 696647645 889517118 915302734 632274246 898534027 613024261 976826794 378940415 727350734 327029071 665856535 353956587 499879062 883579909 971194492 272509368 970042951 681514563 725814440 582498021 885506346 120567157 268796241 833320492 872043372 654896284 992870189 106431125 930267530 983762567 986894451 188903220 806941815 288772789 911310061 550402623 781302835 596015387 925910183 860453477 882759243 556575613 892290435 966000919 972873678 173233040 740217860 794810924 966473611 278583747 877110719 551028219 663557461 433418190 657646572 829411981 865114688 435018504 848908407 239327359 896292922 675704046 730946900 29721891 291793789 317480642 583696984 815538684 972280017 171833601 825541899 79587664 563809066 427775434 636480448 653967883 674779733 597727095 921962277 236444482 724025265 28586953 270910049 553595973 836729943 229562000 377627605 284883234 369195644 817768777 931638991 353785578 428711115 913215920 993723159 94700092 142762085 267151799 426148946 107971888 177948706 975125744 976401398 138262020 565542593 269148487 831443571 762345710 907481100 472761120 508254436 920247021 983500336 93371645 522590713 764525161 843101084 989750587 995167655 119461737 564422730 618683489 789325673 267078772 806208722 58598069 424770306 401480292 721853116 665141448 756486536 153343229 222617108 4440941 674789610 164724573 472028489 102805469 672102775 677364527 960460761 682337067 858089753 357712693 999801626 860404055 919403930 945181715 947235266 648176809 744130130 173470643 646092947 852518766 965061366 105072247 341241508 794242678 867262244 898006258 940992473 482050468 898245250 38110247 213211457 47000908 93144816 432312627 659607685 663770471 700438636 120574397 519514212 928099449 997907479 819497927 951348860 750339070 981554535 591992310 620680415 354958931 542222843 636387783 682771667 152381745 418621131 575308507 910077945 643405962 800452811 576854958 968951458 447735780 691003273 865192226 888767406 75183215 213917025 569358738 720528484 286633043 385084811 616099322 947006598 747199164 899905442 846613981 971117587 531053195 927381036 694212022 900901012 879083533 922306850 778543362 858372970 334982315 385768547 255971022 975063208 116243231 497327086 359929255 895441493 57599502 572847001 830890348 933811650 920146698 956594883 70925289 662811322 649922030 753098128 582070254 849092331 875295107 899592234 134024400 157872217 225589717 999654152 209286720 838007834 27559822 225176893 325932720 383014156 879268718 986075002 67359598 251328157 96745670 656958399 43438422 856699835 167537903 296626950 283338565 932596906 383609608 969274072 122156419 539898698 521824754 725000385 365833204 507040409 986333336 991446551 480157222 752055707 780072282 994074120 619286016 861614554 794864929 813614542 194440039 447111103 977134970 979669312 457993876 660912740 47986871 980521170 551884398 982437455 156704058 519728338 241713046 575871387 522920181 954069823 727978608 828691064 640719335 690795959 176993440 701290415 887082929 945903548 387566151 869286390 401689221 462359268 105911292 917758446 756179525 846175258 751351952 873824191 764499410 969973389 614172105 814645167 614553343 935219045 769868663 809191867 631494443 718896615 782330723 826164075 142310352 276250454 408782839 840027791 696351188 769615552 423923079 781375502 565412239 764914169 313536617 552979032 219794090 533673572 699146085 831759925 918545019 983054786 87163132 698045904 792470248 854349412 39118344 673457603 398664082 969894818 797853720 804612740 194862939 414352055 436890724 980080975 772676918 891783338 300011426 821665084 536307301 573227102 506306288 796446523 554665810 847513426 207354270 777376085 565874214 862657277 196166549 724663651 496295572 816932710 987210962 997367015 966591335 998840939 111139265 490662948 345474588 804838167 591920810 735905209 323017098 624701947 241053028 556362965 452732693 939695661 928810842 961194899 678468830 908461094 675755525 952595932 233632687 387207712 915253123 972382514 188635453 508084182 385934931 589516167 113463979 928164526 719008440 754372293 860384699 891918838 265782012 533044420 90422484 476217684 849913454 927032709 150347320 634402487 631162806 841208305 588105214 762676683 790044780 793958991 958530224 978519563 598842078 910481428 8844392 700127737 150803142 600241270 845059022 889037352 906298065 934881952 518183964 794124742 934601348 939509691 601127376 925490738 559554308 612294000 70439869 755031160 83101853 827243826 529645756 596947670 572165607 802590432 409930751 915797984 591846171 798810459 921409863 970299845 159566718 970601892 371989170 425789948 154393997 922657115 48065421 130266401 502222087 613380406 408931876 761419084 771228498 843263635 248151162 696593277 420548135 961089294 465869325 561805883 899627964 992383081 580323058 694618164 904457181 919139636 979019708 993919041 26203467 641869969 93808557 606337666 473767852 516150420 743995471 841752482 593707007 954825671 625847604 765433131 351974085 604717050 467152476 625653034 516985533 894424187 671140484 976896332 63377517 902484243 450948034 649225810 136990320 833955413 946187091 993855875 884403843 946626513 183213309 288762924 998515217 998672240 231779386 739395098 740111916 934244153 427822143 679596876 663645068 968195530 434911624 935449436 187199911 775822583 646112027 910729973 100507853 883318115 12663950 424956918 811414021 920062117 411999944 944487298 500822752 985588778 825902601 977370117 802840685 939732538 518576568 541179804 557937373 933384192 700817655 700873636 865533212 906659529 120883704 444350529 739280774 739691422 525634752 533433868 979025840 996769495 813955207 870232587 146064589 627057001 651292788 882675882 842002526 934449936 658503979 909039199 301825930 481257353 676102811 912931642 757402517 891253976 120013666 512849260 881601451 971859697 152617565 592279414 731254204 791781793 394315399 691863125 624944283 662019372 110006802 250501097 342032558 674943782 975373059 982388248 15691591 641940535 351399359 567579135 508179948 901767486 162769689 909473743 785678615 854075197 705903889 986785323 39884562 728065207 430506425 947423681 968174700 995578541 805763196 950068586 959260984 959893819 369186248 723870454 945261642 995875098 553970605 631209465 538283951 869246707 157242334 623197928 697314834 981637215 515219919 982447515 782054260 878577302 993850450 996260717 966242728 981433865 401931655 859431674 92883990 306825147 400090664 899486483 166213360 202358842 883409393 955189578 454814319 987801696 632110954 720745690 824846284 977636857 390339444 903626568 596476224 947737138 259305299 298799006 548757859 646948478 876824588 949053196 696780866 899376174 928543753 988229803 695071929 947229104 565218785 911187656 335968834 987718817 717734785 873844841 701175960 925753073 815733840 892587402 725016598 781350517 627646893 761553667 252092665 572775724 338639302 578489716 93958875 837051683 202932711 433126368 452464426 944247399 986579056 986728297 873405282 879383622 185490191 544216051 155568858 350418032 749703936 896821961 112575698 541069104 529020396 884185521 183861140 190878865 669603398 913946949 99884923 277201180 694999869 796187663 872393917 949465942 532115698 787923138 213773754 478879349 678845010 834740019 971360478 983650656 317926852 728353331 287446989 656862794 782358434 818556948 560072450 843091683 2671859 550757037 171006396 275220744 502834147 789734862 849323877 991186408 921757375 969171353 117732733 883162089 882556353 891108974 335395781 927851703 573180276 785431956 683751454 988234073 791088752 967117858 816735301 975050925 728485883 895811826 206245763 596908926 265494142 995693175 259990651 747160320 129668696 432271810 341945514 408583616 622772107 770837811 567448617 745723182 646623833 840827932 689257031 726471199 339885370 342843130 434633240 781150487 734208824 876844073 777856039 860119195 544973119 902336756 86600541 378839273 739298270 858407577 52211605 458678181 810456849 863117897 231136547 593596501 323488144 588852791 139886401 918313856 865079578 957030409 890949895 920936034 493376106 900302828 791459167 972886890 533791655 807473383 601190910 638795801 122276519 590127686 144059562 948399272 355305282 895518837 306501330 935292377 253030886 809043325 164566303 214541714 963545534 977206957 140647361 977765963 661191611 979365737 793139514 870682775 844545459 990108001 991346142 991554441 214516709 762610098 356209236 501550083 937793243 990980944 404810452 887436273 234907066 705425649 506068537 678063047 295633935 748004319 831590407 882254780 813962934 865172521 72587416 802316703 238215856 735446956 974080948 983062752 8736407 622245590 286765816 716472372 669958072 855828224 358522903 871921171 931219277 951564495 506890778 897306441 63019679 146300890 822018805 918542465 717528725 896274828 997960283 998205943 59351766 684646421 132222622 579329314 680928187 903394502 755060947 906243198 450329236 846035659 522204640 589457275 596689264 725197037 715496982 799039757 649593695 652836479 38006538 785283114 641865758 710369091 700684381 800658569 164935241 682177776 910060444 980734716 314211096 631166212 975742635 981915369 792074362 866636581 247853184 503754659 933389728 962831825 933640619 970398568 134135696 535191557 990007919 994971941 922752662 930172709 643868935 733942162 39230403 346637621 464979109 682228664 197596688 841765158 777110187 885458542 837812679 951095097 769301367 919201590 70606824 318680009 432071578 592550323 415121354 674044856 103962488 241622635 929919516 957579101 851254299 854848106 917125435 998240529 383386667 536545803 435987364 595407285 220876053 350952974 188906228 515401135 315630712 600858157 298981865 627239241 975758252 985731945 710455951 979622944 162023604 579075952 137183106 301635187 604869655 779124851 303776336 465104106 77107376 150080913 115594994 259158595 386055620 524935119 511944827 665451525 624517868 872486717 465738219 699019211 912753405 962787860 790021718 972364096 111517713 525977798 372864844 884035548 577140293 626607061 41428112 814727193 82495195 278856147 123276431 812446376 280089022 847055871 74441307 458413538 758355947 965770224 423071614 548571939 699864630 989489280 647906024 901701921 323633885 334384880 831436216 983361304 809945947 936408737 909091162 928340956 485150107 861191076 579469210 972205713 52931329 330838651 493691191 783833436 223236722 627956914 840314294 861565122 232759362 657548141 309427151 489690461 753548108 801020852 621849710 811101563 99020726 801128614 679883635 992074730 539877929 657102615 332375952 629335800 160217340 196478159 115321324 205595664 743962566 970847219 953418781 961556631 463644181 854990181 621745857 637061248 332141656 985051284 830619672 883573889 667059763 918071820 888712339 906531307 102894576 625434638 202670051 625686324 334334877 354867028 125132066 180594734 266053916 755265789 983278322 990970160 784746253 810065169 841101832 978000414 489463507 660671285 997800362 999112597 127275988 277497926 562920884 690546790 786058131 793342945 762302643 903872941 739537997 811803029 908786419 946996542 279188864 515292137 618481656 739651509 701067562 714889609 16325888 666571203 788915015 822495959 540925295 829238645 950505939 994597372 417714242 729225705 488575406 999302367 626835753 696094129 400397953 476290474 395685286 696936972 61709844 973948349 758732683 983072210 559836548 692296728 457045912 520500941 214457906 293091147 768535199 990746932 869688413 977997235 927788182 961833405 156928085 523389610 862998299 958257800 428998864 797970105 467326707 874873564 92669136 141415482 325040480 887952159 847952722 959260280 313863006 963792303 627326089 654051040 134835815 748140984 756364358 911730973 792769606 890933648 363945348 778708272 554867711 808882730 929559761 930610121 9622311 569996438 451594676 800404796 210660027 801514914 918239615 974186077 53611756 250817914 92539339 855695018 160127908 758722693 87226338 820989853 391873519 520735353 14519884 428026162 630510975 956601153 731430536 791429127 844901467 947428835 570845411 610477282 794166863 853037119 603247496 793833792 49665634 99371331 442083766 739441031 315904905 407590814 872708088 885773366 442317063 631948651 106810934 799437247 845520243 888784236 378434028 868235393 661406700 684109681 801255855 963550923 889546907 921996098 688831839 763921396 64174237 820812036 330686379 403714127 600350574 990425910 989260142 989485826 599000852 961126054 458610047 488446724 500749617 631702936 765333876 967267715 863210772 890655600 576019745 618249322 585957054 815185968 357124615 981411944 520923709 940330851 434005889 651926747 82179454 758487311 529125726 910134764 531956077 971948748 590974299 895951909 541346626 637935847 676944925 949508117 896284134 906764755 865199676 892717723 739317911 991746791 186969143 466810008 885781852 903042149 810630478 951705971 940158971 983198553 610003389 770781796 199107246 960566911 616163091 643015485 797667268 961470627 84488708 213386511 888828596 969072871 19736428 559630558 718685297 866607377 684014545 694576311 141756757 330845529 152759593 445565403 774717672 777549948 538806601 764104720 877563232 883876197 371896750 843325523 776972523 900999965 380820477 596011215 216000411 548539855 364484320 832456938 744495263 933220941 114013409 706815811 65580257 999538560 876342690 930029805 769142051 908104116 248069844 930199451 976263828 981869278 11763085 893447776 265369184 297452537 8062898 253303088 423481923 501150532 129167567 807619032 345568093 887436732 702574816 865247500 283828980 661766618 480646316 657667476 828725571 979278339 580517660 761777242 152369650 914201415 21421763 871799434 261599207 488063626 47520203 222248078 843679520 883289712 80001191 631487128 198947111 995756294 210829149 629359762 836755792 990611748 470522225 757100230 893269223 993754216 910025813 983934898 8012814 779185982 232559787 554815596 569537069 951668167 900505203 924189278 497480608 816852069 69784522 550711115 732317839 877632321 656859513 962431577 972254702 999303491 154465161 257971627 19916521 307145765 199489323 781878178 170958658 172067235 356056687 429528550 367430319 730613642 223588640 445124330 252941432 644317514 452137527 966887186 23922915 49309001 559390769 671797472 106069518 220953280 740713934 789899032 778518358 922355981 942396074 956697933 588753150 726960285 955828107 959306589 970740184 991431464 573380613 640884248 471308171 690703907 640977530 867135680 812220467 945880099 217541737 872290623 238847014 471866915 238259568 914104186 381996615 690451393 669559201 807224013 76572348 341535083 920961616 984436220 748137628 898686971 896643016 935055056 653898779 912745211 193252992 285441902 478484651 826229142 254920587 290166797 243846195 458322589 715892187 975189534 106318176 138658329 634715802 872015479 883698894 970902609 125088125 965740376 73911163 521123392 748240084 868329698 927782755 948970687 502582987 974502617 379636950 462215131 29791438 533803169 433009675 645074112 258256430 978956662 536032661 726528220 152511728 907818705 377515997 871360933 199954852 961412265 817805296 977701022 484210132 853007618 646832672 727619519 593798713 854147084 852617937 971409558 772751105 920242279 205008202 318219155 878371192 919532447 465912835 814862890 474878075 937178192 636236644 781761677 530253152 633851432 901528946 924753849 365161024 752792528 896718831 952661147 205471782 626327037 253037992 893872214 453717501 807664858 891331114 946450886 269592580 941597847 141940137 560964336 773823689 915695498 266806871 481635284 430994126 530914419 470699762 682735373 303759249 733302029 210893876 659435431 947567936 978908981 474790567 952663362 543599408 827359010 867760959 942506919 701049442 941505209 767817069 865186326 42094903 646372291 142118640 455565313 434851041 622817677 481640513 814454337 910799731 971034883 343911791 888331342 178435851 593881629 38424827 858587558 781824101 931823473 190156770 469448216 332230771 914171733 29302117 508998435 157896268 262255546 469742342 664322236 473841500 892271126 191131103 792846370 704300279 731317083 384485934 826371585 553802665 828382909 46065090 863837383 345612813 667613042 960551447 972054709 17932851 661987812 171163567 206065360 908631022 996530556 181289832 953412900 651698960 995558379 627235768 993230332 882898384 939787515 103444660 133116269 192783979 394110112 528778775 564889980 946263744 993371926 195975901 335463232 115797481 221913871 864606426 984444280 992287226 999046969 816899314 982693799 163074366 391064522 708194792 812994801 233578051 622238230 952309439 975822186 931553706 937774228 832095249 948023774 540356776 844688800 441904372 737337840 943469424 982938953 93788979 261242693 496189039 682510306 397882334 942745584 354942202 397949714 192368541 496907066 497975895 665154281 974161699 979602239 17061335 114334257 878382000 893075083 866089633 874780081 151121195 386892744 75280062 748076679 572752282 806336378 738493477 809642985 507906358 967501800 432112791 565407361 157898655 815097974 773586384 830507077 661391970 980606044 978816305 981222222 129782434 421629372 253444441 590235639 961145000 979669088 150635453 596406825 824340491 957567619 573803732 921677112 319153867 591222722 409943569 444507761 409569543 698372937 547636178 888825119 316919735 540954511 817328802 850644512 343048455 839089674 860104175 962242931 296392180 588511125 931723044 998703750 966598860 987899236 839378473 877938507 516225661 635449193 323153399 924134236 323913026 951923078 188940482 249090407 492867813 776533776 553608175 581216607 17373814 121567426 388139332 758531011 397082503 696121251 583733369 616464935 448919048 749918690 939310128 959240395 183605573 861122899 58804892 445901806 489614369 877371886 224241442 270222706 878375739 942787541 646997869 948011478 520857035 683116929 89721276 762832751 605559565 769610133 575268612 801662936 713147775 890531823 133057134 688907154 734740526 739155806 617889370 801910526 998651003 999299315 157883220 167204584 956556400 961797876 941452523 999379452 375522105 497127189 614779570 784723935 710937019 729767007 668005017 668618070 502279785 524862396 286359062 362933775 957416694 962709578 668217469 971792976 348790325 719698024 566187834 698114961 914514243 975759424 887174630 897243762 565588564 579849832 672619240 851694620 583625571 675992832 421334942 702604244 694824500 734025508 15448299 927837923 465580477 850845315 92511897 156408251 908535897 937969808 918987484 948448264 986041680 997261102 749204511 887609761 399716905 480934419 652459893 669093351 265119058 329145639 799525886 972468395 506485065 946808693 193728056 461663831 927670108 981678263 878741433 992802007 637281678 690675389 853056424 979491145 291432979 634704071 723155154 885057170 593335725 743511631 817588204 854094164 959762981 974387897 985973003 991235159 710012870 732156771 710994561 944945997 478811111 678944939 132489021 384909188 970829897 978212737 967812062 971559429 642926491 891728904 511895910 794949405 543668046 791936605 499609323 754003114 455128860 520665158 895377461 955493023 597602439 974396934 917868066 923729601 703631149 778513850 535831574 566651956 171646562 451305381 113505407 434098081 719167698 829350805 13422157 87108059 790590836 956275731 510798611 781855330 188707331 967623725 954716024 966074237 794992035 864673616 897103558 913034156 491303945 740082318 767536560 935499001 524792553 823023860 205804255 222379402 771449201 818832855 590639828 766388717 426049053 649502338 622425807 887912010 299730557 310363066 783345770 976379772 130398923 612057831 887960717 944481405 515459095 832805964 360960063 624209513 451031019 589672380 810010046 892363106 271060806 771781457 224218246 544668667 649223156 775069075 212818747 718292585 793498229 977613879 401992411 728919900 990733863 996252321 249372338 581924102 396759489 840737257 47455128 884482472 59415325 927828897 49942554 532245242 738457495 790599294 800560784 908320130 931196304 952258516 776929323 856887535 351942079 950443711 768246645 886711242 683840901 760061534 22013117 246851664 340934856 549773174 990939189 998397575 271415669 992167718 744628101 910087537 838762200 958580191 303087266 526555740 144564638 891424363 60283408 936249194 852013553 924155164 142071987 394218240 386672607 908458312 9493180 838305528 565623823 681882983 723015836 751389444 630188851 871918992 668133376 946439815 640742166 795071563 190577929 876032689 72981278 943825889 751115986 988505739 807642951 832749337 555320784 977626777 621731587 686311994 523887092 719994672 603727370 711567459 669222872 931018036 125422446 731186924 140330248 607004583 60766079 64082748 749201288 856041364 834798695 842278322 895356801 965869136 500031416 836733737 83978500 346487722 436380125 873211574 43949826 460000795 821908855 913772021 674757665 949366012 535126653 989418429 937173536 997670426 178500899 717817950 120525470 826205422 517555060 977859537 188214290 565234161 62880786 919800001 263227187 589706010 770889472 990987960 65854648 298953369 206471583 555439981 470516694 888239306 271910528 601786835 136107150 971877252 770171334 890140435 373235978 434344015 323746029 472231960 660945189 785586420 204784227 852767579 863206115 926208850 813577700 991977184 248646840 566524170 931317766 931879734 169408242 461453599 730776095 930671373 747493601 977579020 740833629 981190236 302325061 978557764 559298588 975456317 93616932 364106935 254987789 434139697 253914062 279902903 955675161 961085522 821050884 935086914 13475235 568363563 263928624 602785055 311606977 372323543 624004952 624845077 339781966 506831950 784433434 843828128 750859941 896564089 659820412 690726429 839391823 876145255 836294857 841696023 877717604 918672198 862383505 925638777 272933322 302926132 577087236 676999434 660075993 699520230 267655429 608224378 791086395 835838771 411243949 860663082 286414040 302980101 55650793 258133279 725774928 989726423 199438718 890600501 779360465 931746602 452512520 799139315 195453454 351335070 162811583 849552494 143672232 403226447 363674107 519437093 627941815 679852068 996202883 996313157 956581880 982493340 768424554 990342175 415658833 417355617 859120291 963296494 796558019 999653089 639429529 853252257 277131702 394488575 836160246 941775259 628588289 730700155 362029790 834384277 958178190 972515581 26118918 631357769 392617766 630025856 541226211 759084972 972931414 976668639 858084624 926356592 843223140 927104413 194365789 728952725 221278630 485349404 37659969 560375308 303926162 949169091 9033084 186085685 273022101 754470413 603652289 898541973 797700054 969061831 753863808 879642549 371611065 623467357 620757202 908084748 804213849 896481195 767312012 829533557 260044822 882096827 685786418 936946602 538688747 627212839 737858826 861959433 853784212 952463097 449727921 655752476 261084651 980270847 710135209 796353355 240639154 390578203 94116967 125501441 587383506 826800244 23052027 58193591 216911250 320700715 807978119 890116072 346063280 460250482 513968778 707588245 740549613 750925047 445383110 675674958 493264025 865540700 341643196 360437876 553723028 997396671 310799766 351726035 562585137 973084020 162117891 317051387 495741895 670201477 202573288 440426418 439799611 555143303 658383312 905500645 677953068 933304493 237434341 404465126 507831804 745308695 812077640 829029618 42893608 573709016 865932797 896936622 275687038 959175356 569380156 833854543 801252101 981016137 123204509 893407929 138538131 993014565 904356411 992340400 994560492 999814376 303390565 375866135 241029478 878244562 227847632 859174328 283738879 333226456 421632347 643241283 517499457 629008387 973295442 976689168 645648771 937070092 35745561 204435026 905394321 981352017 855144953 871624680 717362031 899132172 555284397 723002764 476493312 921736077 340328778 618882340 874688487 916595674 221307898 968677205 438143987 771326167 671716242 749973715 767613510 787581325 4869134 71393752 866803123 916548520 25426104 900794779 484035925 603537154 761769087 945458188 336584472 677912146 348474633 481751505 999386918 999736462 246699732 544776216 274743484 849157999 22744274 259617973 165746433 898905710 128875509 542688870 581935328 775073328 437411245 591282661 715997433 772567832 252479770 827188327 761359910 881960468 314270858 387247555 650089345 869819478 635846231 982200114 119081446 392981602 933883074 980932005 21345938 966592604 469849357 651709367 795698738 943694325 781419157 871121034 478347782 854482484 437132672 608027174 825232076 985707130 957230496 966778241 546925051 913320464 535092929 975245133 446316807 937343874 965621168 985841567 88642556 691148360 929289732 952088102 999446287 999909278 672611487 697900871 902092778 991393867 216205050 622140182 596055179 977209839 154431477 702256763 551785416 679143993 596801450 628784165 316652543 737109727 742492300 993477347 533209474 935479990 18436392 29709704 760594821 983365289 251606358 613424519 909630027 945178100 507942246 808859507 461034449 708050021 896440367 925009160 404436436 463101601 988340889 995316485 1768045 305882668 1374163 261742643 997830894 998921856 616717301 821439380 406293562 707346818 411993506 616641765 478726969 912965590 957524165 979352935 530881847 814695411 104169196 447624182 345255843 441362170 477617206 548271298 522829571 563230027 443220695 530197508 69441895 976435753 809824424 995273368 611926328 814088440 79004705 86518356 851434039 962590965 969530366 981405409 691307470 706643614 481386772 658642319 163622888 518109873 287800272 515053517 240905943 453767319 613721861 804251870 68010715 650499491 981957877 982433366 960148421 996434569 455441591 726715231 33334084 523735547 917104117 919872238 302204848 721086931 217448569 749556565 348735492 922904816 954719586 987014583 420828754 850029317 488160384 718850403 923619009 976248184 183877285 218398894 132521881 233197619 846596037 907379228 207621068 887097933 874138833 977549484 474424209 816689643 799293528 946413523 226645653 470916566 519537861 777714158 923016010 953498825 447939833 878593588 667633232 688247882 95854078 401604195 791310335 887200609 189318636 910989197 45352546 719067887 348466207 447113064 354809815 697040597 212061146 328570234 753556785 963616753 576811753 664488108 287050550 447727612 749236248 857720684 500586976 652556033 720508472 885452124 702606276 973906615 506584241 932986448 366226354 995884801 230711156 808629125 545976116 827833540 243128331 790622931 213206432 391983804 57042005 387135279 694430177 809209169 996597839 999338642 79481923 91601742 157020620 889230761 755629615 810538239 501081418 951681144 950265169 973799341 750604852 932921756 470441975 520072783 437071036 818725350 136736682 204256800 249643133 988416055 129012092 340944364 252771680 571380964 326587568 522113332 216678591 664408718 487000656 841745163 926918671 999359135 491446895 968624477 75725943 619578026 543771889 626085270 762534850 880588396 737732030 741853948 805551157 840530127 969451252 991962131 737519293 869272095 302013617 448750425 79657496 545044096 478246641 883669514 274203099 968224509 943054608 970469117 756751151 907525436 475599473 923781774 476349452 526221201 882868880 967208286 529131416 959417651 261575300 386291131 71366150 575438897 606739951 696348292 622072740 866538670 6035000 988465919 303421517 550067850 430105108 862202114 330685913 974294895 247838115 675701625 883254461 966727582 811316229 882127331 68202324 972256915 20384141 949586394 296571487 769145165 262455663 882038366 724478218 832855462 863275457 901543308 945586124 993172086 307497888 940119171 651613891 786346939 117754041 458502176 946373078 973562524 50314041 277393899 832325382 925460453 367156314 973109204 911003977 964511881 65211659 431982098 811883226 893441568 7612427 785444142 816026452 936682959 405820521 764342993 913452716 974966637 875987989 931889163 89131452 988695672 995167044 998250225 96953319 527704442 988676883 991282029 318569641 846281218 267743775 680941846 861577368 868733718 279838322 500077403 740269252 777667389 167417998 363446879 933622397 934134725 150935095 479746741 847341536 854420977 426848066 843306997 417147498 852154396 124162765 916422853 850156797 875530013 110654686 930714082 444105314 869014439 427691466 616277258 611623777 876492574 578681785 639629022 753424328 879363375 164141967 950431773 310311102 984546677 270330255 566362822 666309763 938024500 541699302 985170403 366778320 483485520 977012828 994808742 200348413 723007627 518507589 740132514 742969647 795705119 385320957 784576484 361626555 573211895 457227254 636125728 836803007 858140954 393445714 713779761 293788702 548634444 183906689 449405906 420398277 439054530 131554130 830930691 8999961 51705355 132775381 717629577 901990856 925310745 650637425 674574501 428111075 889729129 40776294 262334274 766560479 838630076 342503166 415421547 794901573 882943088 129837314 861010014 980641052 995363523 320443313 360424996 521304365 809390167 748924051 975959505 443754953 940190746 411948439 491037514 154968266 894736704 379065756 605222551 294338126 456726913 593973950 970388703 97167492 848729509 70930337 247759154 768706947 779364788 206507925 965973433 165171742 992931280 247144884 381619191 694596995 808820305 571541571 990236240 718942086 766661865 377949916 821062618 6981059 764971503 400181627 570097885 181267052 439458908 295094714 363067892 891592146 973941280 849119222 855580720 702657794 982167448 347971305 940280034 76647534 635197070 602216702 821546941 280233175 462880457 688889037 957586670 650716180 996997792 749318818 842256891 484046453 808403540 278666478 362873235 468468944 821628372 572881782 849022993 469536990 834992039 373844133 986186545 786825693 911346273 348133442 621538051 330226718 503513558 275671532 859679443 682804238 687810118 48239680 892819658 783551725 982691771 786859933 947131558 804008918 892535489 999365656 999644045 603149725 856098781 623985565 923152548 101245432 853829219 758001795 891948034 406430131 670558860 659698944 754378342 441943138 995521491 97686137 405749081 703158193 879673771 878868681 989731306 693632346 774613045 728171519 873313143 747177789 970656358 947803905 989248580 217491205 918161049 605385959 946105647 828147515 885453217 88550633 206386088 455938443 822524667 646170508 920344343 797582945 936230902 161327612 653835281 794986526 993644177 136364077 428409804 13108790 881834063 738295922 900650364 768320930 872923897 756922526 809163186 505642430 852324108 98555547 152055273 624889509 877545897 43667879 789860851 780651924 966056352 963536745 993349294 233240176 280071000 301748772 644039482 644649621 874258475 631278194 897535113 426479475 676408172 303239593 621146174 248813358 402961291 300373705 783403145 640277324 816666800 353147364 705708187 893959286 953255785 810631082 864516145 543548489 997532604 276875048 486000512 554014850 651521998 528791406 734999364 949339601 964271494 97902042 140678331 556526757 970297311 952982692 981965101 961895904 968063118 94591918 133298353 174241235 428668227 308054644 384110490 338398126 380812484 617410961 954584222 669734615 755405705 373995616 822675353 934052940 966182859 849799459 869365256 728536044 965151984 784708629 843468274 456850668 509283617 928503130 951690637 122274531 953976316 242966976 514030589 843320145 843999314 720492992 961008183 875040632 909764236 739645860 959380551 795710393 839814539 552025048 724001134 459662274 789453478 309537673 824794706 349802084 686981323 911201325 912755706 811560035 981541790 217939207 762210496 901273353 929577706 85166705 319203048 433085249 702934672 302353041 485666222 945739167 982337809 901835974 910548941 949107752 983977755 344991711 672281622 161371831 728194102 670281812 994059878 3207392 637885871 824118845 824258767 311076274 413592368 115273261 887939259 250171095 606729287 807926998 909094676 210652357 794406971 510454608 972472457 180258644 438444081 939265691 991584364 133981061 900052510 179918983 576965517 228970491 988856344 727828286 916709672 541571407 910924539 252520888 413186745 403689317 874189204 308757641 398238253 680522297 888726369 374757220 710897523 908151366 956435950 337192028 972083591 620188697 864781495 268221803 408393717 70748066 632592768 565234175 790268415 395606259 940760573 982889611 996846258 392906947 444330280 530947842 604639447 767939576 993925046 122041287 148081694 288193997 704011950 859467231 895455800 626245350 868806644 265323939 494884359 401657157 481230610 542287189 820864469 943063884 987456259 673894684 699857358 238649113 469873937 896075485 937027777 919677301 966405415 20847871 545909529 711415024 850871132 47994740 753675342 82765403 235431682 984646922 988236957 858654508 858846639 72651009 776874878 463530044 528019736 590822280 817313123 84471013 281670013 60698647 730521760 372769144 713159427 91639875 615467526 348694487 880117957 903359461 979027140 963701016 983899068 816957042 950547987 945734314 956604085 601606990 774316472 283050917 507382919 443161260 755885872 638908580 909342995 734990949 904923562 126978805 857701152 769847093 853445594 338609733 474405877 445428973 859343146 608939731 978482601 322947387 351079574 297996178 508764735 101899616 928121438 364569499 949562339 346357240 823576179 907362279 910042007 537746729 657471756 129910851 846898576 887269657 901940481 842375980 981174550 912935836 958519592 890350499 962837253 455752794 583283119 747728678 998246721 490894853 824286835 915739372 946340496 664033033 797441680 293317039 848694319 219151279 671092348 773491113 926218492 895151501 930626359 832553948 980192018 73145551 387191406 908622954 921120019 430643547 772011361 903481882 957422833 723758628 936202693 486768161 920049848 125094270 636201034 277980453 698867286 199367221 464317061 880008978 991539230 842134585 914116777 992163013 996064817 427638859 991047276 962337169 969265346 304392744 604111670 679583100 889492998 295028996 708933523 818543570 945544706 548808958 638685717 232386653 607202615 396344394 931397024 17065774 821850510 114826375 671837580 408347170 646804426 948839189 995902473 395682946 599014443 30118626 643007245 157968918 791896866 784605218 985422012 489160723 658807144 618986184 920289102 611552580 675045037 19363641 695410843 493497686 789739295 637953452 704856788 135111972 340092729 672439411 926251070 124064896 695817718 803410842 954866773 256771667 849909905 354649092 593878249 378827407 715288016 498880256 795300060 633222925 813108420 44590241 634171115 54206272 969780193 870587481 945042886 874490445 876181440 602358717 827580841 580111107 923129683 871972311 970841644 193687089 446143216 278852856 691698677 67682673 592447118 560697508 881624002 843086530 860732837 424202375 755687050 119276187 950832745 274548489 314014232 243681039 641222248 569613389 800842918 679804911 851251759 189927168 614261318 170633771 889633801 455601547 737360276 986064189 986111758 453526608 566273169 933276283 948697275 42690044 135049288 169200240 710674058 978565868 997398696 581208015 651656176 408499234 958787236 157802227 833338744 858584090 922853756 950342093 971870211 5104898 19060519 64697006 807115239 681238547 843006202 272422091 976426366 153356328 570408220 837191046 900867358 777794968 943357316 170037287 962339127 688937743 959335930 747366824 870306571 620320375 964356744 502909810 949128168 508650990 829048999 503788478 784184018 409602064 786722227 395292917 673905942 397156693 929565548 336337460 493275688 888045252 943265739 717490592 901538742 130293956 643960329 50763597 927461550 156596476 434572077 676084355 778257297 857516451 930468311 312452931 664135057 652745785 927902436 541682561 588344101 555401874 585739911 41906470 355695683 55660033 650032429 816794357 871695694 827953822 911702123 264851304 754380451 117901743 259402332 494407546 743713358 727817601 977429447 679167349 720878731 241097619 572752711 103550057 319698151 926342399 932805656 118794686 547390075 818848069 912198760 236464819 737719876 869046013 895661631 783871597 981975271 194401081 955001800 868100636 954391996 944434470 963192258 72539260 384486955 732702007 934043719 789039480 958789174 42180357 261283843 574383722 643117623 602241194 901018706 218124979 978245053 916101552 962833593 184862943 676850656 236724732 247899673 434480621 607373266 665781205 841444280 430180826 529446449 668723640 916028066 957265781 968092261 983803870 989298033 262980933 607417455 231955548 524479577 457358271 944266604 432581075 519581147 40436460 295367136 339224157 454272934 567449971 846262620 689259709 739291665 366843713 951262754 284515252 993102172 437357 463430813 734536012 924637539 619857935 981319507 365632857 478388746 142494276 651568503 23873332 637251704 462695078 896471932 795769539 933676690 670526266 992713413 314775203 622905740 324762352 636092585 117611349 813356628 477007557 532431780 712226064 919567466 418986984 983148422 424113631 654463661 842574455 914034520 855820959 993658179 283974242 733244496 572112647 997754326 104165138 164172499 1900944 102449840 294152555 624863517 884753149 985717142 771745977 974961652 893836080 972518988 661503153 912234228 381887051 743772424 232550279 418367399 691600253 951204747 740052287 888573778 507988479 801639683 509092056 831719749 218176773 653714984 998922262 999430935 294023476 310243097 258153815 268865575 307643709 574518410 886736421 949566978 268851875 412083926 821244983 855001760 454757882 525898709 323089707 529242391 618008149 664370703 201942171 675022796 305107760 307476081 771682838 976917874 876151097 943089704 911456972 985698633 554404902 991431592 373299707 983128850 938235232 965993295 411957405 956545465 352680711 360869923 865221786 870600577 40778641 365136628 671319462 809227475 472306120 510246140 723303689 985726066 151308925 531626904 446181210 610807382 886935282 976812726 211604413 911519443 165237075 577090479 163195502 255790351 268882410 754345735 127428903 476775516 207870629 378127786 421646516 449595228 714721912 724659533 469996632 808809274 902103964 981002113 719961446 881958608 408287634 981423298 506486280 996247533 89186389 181853315 110045403 261426289 125325098 981360196 790850640 971347225 659244993 757136992 308097298 632552691 902170136 918033377 827145596 950332715 509626903 838402723 755723708 894664356 543860031 589165221 705646553 982713410 642742487 900390902 576462199 657055641 606187244 904374782 521999579 526412546 791456239 809551389 487140088 665266710 781740651 832779486 223802446 596486552 654519717 821073310 846799682 901272023 89469760 447140605 378197626 872731778 161780290 892842235 678150902 912535405 692744731 712393078 903754072 951581173 378979664 627077445 294201072 500843828 837292103 865834393 979445676 996315874 628082975 886387325 516335948 723809267 923764510 931404909 447571262 483520291 520144666 643780077 811103549 863488404 583026029 804931157 494590148 874964732 277310068 549248660 428489796 537102597 620115552 707875711 360207038 917444303 490511030 636335474 83979124 758924971 680840881 972374291 809666435 898037372 469557032 598203117 838355236 990581039 580491347 805016332 583929246 653251519 379486878 818388070 244347406 952404815 249676237 872311108 482948486 718204779 789874937 911736834 663721465 985373946 667726624 783703558 336689092 473478423 336709115 987343015 266421285 862385685 375920972 766143305 271519843 935340709 492820226 557240227 502333155 868936856 269141087 849516894 906043286 959089296 483106252 633600212 436785604 886034258 863723665 928793969 83646757 315975850 310373499 785222826 901273230 988896658 838985774 890754752 772957356 979597001 112225405 805219671 839546854 960379261 640330905 837897760 932684688 952512963 573219661 615481097 813056874 981344003 14610801 84372549 276372581 817274900 482935318 732185887 962131348 964169709 740873169 962462683 418093423 997901817 132254062 859184364 637112503 851306293 445761720 687517796 447829445 875823443 660603060 785878107 619880225 931444356 23162601 505528472 881295200 911331787 422976175 770428694 44050944 222257645 432158877 581601090 528056780 647933961 455238927 716149819 192188864 982970268 797953154 870965958 66309332 558550134 381132482 948339229 318684148 522320965 49723177 826017459 152756098 746179247 316948917 433180089 180527441 325496030 914963799 935535505 674283582 863321442 369410283 520976351 623159624 729447004 353311698 985717772 758812570 779719471 699111109 738198416 795084404 829830347 405324181 867409305 448563192 712299128 593427049 715518746 230580278 266662051 878730548 978322254 597233414 771075908 377389151 682169769 690578337 692376099 133201867 643692744 40965158 955605685 991712011 998996271 184418269 435725103 918331399 922402273 124226364 650392710 696074525 978502290 574312523 857229587 353779654 478205382 503564746 994412412 64276174 854339572 996364676 998134090 787183195 884945610 878900217 959177066 511996205 827835073 259462783 364479594 835937022 875915865 878058957 962826996 839174047 861770085 352111584 448623784 791492255 931494285 218488069 514016108 622955263 646737050 218368877 455606508 238203912 313034548 822597630 968004005 85220460 840480457 990658787 998280154 213486835 984658569 156477360 839394398 453733365 619762794 946196020 988177076 889903353 974231364 331605652 763520502 918655953 958272006 334216081 767159315 961708520 975936172 369490824 690368210 275977133 391026268 612102429 971488912 401930674 643589865 631794060 828158750 874972736 952606838 47502443 138663686 430003538 709223512 620817798 654380952 829029241 943712396 19963346 962809379 981053459 992880408 37516775 480689338 84590685 316494183 408032395 548011542 448111784 523398940 502661793 862579329 361321472 963379888 182828919 483599198 25537347 695342340 400728599 838003366 933033116 998166583 326640099 632192519 633618719 799722907 976094871 998824131 324766584 680524690 545098613 820822807 984280508 996875574 449177753 838929223 183822690 537028262 123710826 354077503 75378814 625922748 414618753 580400124 102039496 914479691 170729698 527875364 486472582 759732489 152525560 241084065 982549049 992628026 851153821 914385657 812367515 871750259 879767974 894212403 13258636 358164252 613520489 671076121 243760580 682150421 464887267 743186453 918379748 952088637 932750342 971999140 79988407 484696670 113700492 932031978 414263383 724804568 771531848 850627985 214528960 253503750 309610975 577867542 644613786 774835972 59831610 595636639 20201290 510078615 963630204 964615306 815237217 824950176 399483728 902727511 631613299 877966023 884892798 968628980 214460021 585570445 913007860 969750344 402760217 487914096 788271730 898749554 489930519 958435576 252763199 259795290 442765008 979166408 639228618 942675016 451727754 793287822 521043116 644479501 676468959 948996910 667476585 847701152 406979274 924120957 197045806 563474353 910642878 934573918 953294105 991354357 60131381 833179661 38283167 746144131 31560191 778764903 940986871 950118304 105751214 235331690 369392988 833054293 35919495 600119972 105298297 694470757 414004441 812830904 678329105 819813149 874358988 941133331 595218322 628067263 38198507 418802840 441660132 670909304 33082077 436446386 740646542 825279920 233889414 512097992 993879738 998939999 314677678 990764031 176263800 476624353 967373576 972682676 999015848 999865856 274462241 772412949 24094833 625062196 922986155 952922539 61533123 461401763 613451349 880450125 556657661 962828371 996328998 999619846 187365098 607428758 945313741 946924499 748418286 783481000 893232662 934869223 92109907 480136514 369889956 928769002 635347534 861026564 769103906 962650497 98683248 990082866 666498463 703141613 795972065 858164430 173505015 259426353 927098902 997989019 97369337 495254796 321203385 968446276 634373834 719788221 976797226 999314301 452010078 996567796 901275276 922320823 521634429 713916899 489838558 768750341 171771224 883324527 510276695 906947047 778604165 965840735 51786029 894033800 507414445 821407576 168600598 358261648 290607962 846640984 186400447 385767183 266432791 570602638 365463950 393657327 803050446 929434711 883425993 936743128 640428231 829316827 284240027 807777156 849510594 887862866 727907809 789641082 638004207 650477770 718614727 749390916 704667156 943587903 126950104 539297226 364398773 813019487 935119440 978796839 151625126 890662338 966343627 972081832 191014322 665413421 145610133 626750096 617598508 934311823 487764104 777656786 142653911 551205446 176048075 650327029 564293260 980153664 186439424 639181026 631004645 715952237 132201685 423098015 671334573 690418144 62941524 107266154 228852515 327354883 627992674 926671777 113963109 263549023 755235167 882698036 113704416 981787553 217037682 385536264 605344045 799297154 177591504 184819587 273417209 483569848 139820080 957025283 631513721 850260149 985685650 999486763 430853612 913278981 985645654 991031840 772473854 944887114 127952227 629235662 17454037 901935612 86559688 930274879 214473555 278395822 458927581 520316372 926629755 986696507 167462168 881002613 566014 795343902 932628903 955669223 489751635 743181172 777831759 827452236 251621745 680942769 408714178 943802439 694750244 778843036 564260817 774895778 470143845 663653661 641206170 842985511 224691898 409215680 410788987 638831620 773638158 774698026 376386871 467493728 79987475 271891030 96693860 934984789 885134289 948562067 810660932 818312909 755200875 955058589 665009734 921884351 87780850 646993312 931309144 988834136 860513723 900515277 312777495 461764513 555268730 738199933 707899207 902099932 12709692 390549724 404899474 497624353 626482267 925365004 913014030 934156617 887995992 948747774 445311197 570358677 99764092 278671210 856247442 875327707 559035352 738438629 584899281 756067589 642385612 777281286 101435523 268255989 663723650 874811090 563633789 949958744 745258494 916016392 550057259 772207004 957411190 974617123 936119043 957050519 600057129 870807217 669940806 972289554 395928306 827473874 809088514 888132533 856993606 997171578 268272547 356554311 150915958 548005917 616182448 632429970 424742564 540472189 970036408 980142486 883241981 937979207 992751005 995644224 618934878 891517725 681050927 893567884 622080185 710641618 212902708 508549360 225515125 333147606 224623182 843266931 263279936 609911596 252537139 716129483 632816536 969737163 106617287 785396252 676785927 897308529 93419694 633533994 778960050 960822987 254693970 329192190 503253220 653307753 5678010 949239480 834074426 883207719 405133186 750916237 401103763 998784900 931498554 936889696 864313372 990089154 637573537 854030831 129662356 944107282 749106956 975561139 478042964 915746459 499763093 719997737 529909984 539522574 85896963 496892462 206721296 354677681 471126416 763840034 511308347 541380568 259444093 557854305 901353975 910777774 727696381 942696000 960333499 974818003 373985988 865206436 919594172 927945927 863074810 897398154 69782163 845174145 625106214 790941101 16663157 618157146 489179605 721730026 425368637 712315384 181705048 830171203 247737873 630901595 72649559 747755031 470586893 592296114 954605838 955615533 930466309 994140252 614552713 818068412 496134020 837808272 964636761 989545481 591904294 693098215 606050805 617982255 268502291 527509496 356985599 576262689 681241624 809474155 441039252 908925265 883737544 958030150 616498943 621339707 155766587 478644313 347043641 348012584 214350376 251509949 398613702 504034368 68296604 982249870 205430640 243885153 829381306 963616441 421234993 963130455 967682401 973081512 812312340 964863673 824722895 930229754 955431125 988615546 59092930 912518283 548066058 688835662 338236687 785447718 367832327 984346027 611195952 806875753 55218326 891950873 5755457 93963671 403578207 584848743 855967564 948465736 509374501 630097132 150041799 989182702 104557865 398484668 527136867 901015440 284369775 981527874 410996807 942616706 286540016 914603036 154441727 946830905 61339446 843583131 872779970 918116509 896163004 957121056 5647271 402270560 187341154 547761438 602860058 812100428 491241641 940334318 947632056 964932522 875692419 969050579 534658396 791278230 149574934 861879221 309612821 369949037 659541860 783661227 42481891 837988146 659805802 743255955 265074459 727933242 651035948 798252149 3967656 161353875 308331705 882965248 155593958 244779199 705266423 852489601 819202591 819929982 253564845 337304438 252519694 453614281 162091680 301968833 657519065 874868555 354287585 876345525 837284357 896329833 848632506 995614600 998193497 999046262 817446071 968774719 324925802 612630383 567172532 818897416 495691443 683883009 832602482 844784075 79021109 706270634 363257502 972579056 974033901 980706257 312811422 663040436 295124403 705448590 443359984 817050977 513829871 554844457 453450483 564093997 879422917 892224063 352412055 465689103 392555096 590051766 121843971 767816267 62929523 712676212 290704970 694561133 279998109 426773096 14871087 216238179 22021149 53125836 503795202 610360433 863525364 953610039 36173407 76561684 768077634 864257422 612513785 683012855 572230971 996583166 19207635 247669868 292266976 880467684 708213394 905528466 76130432 929181191 246209729 732644823 899990402 987667282 671708096 815963192 101946725 463404709 514330429 873154412 643806972 883200102 638858526 710166051 753322696 943519069 414725449 510428255 340553465 521914746 623642168 913555741 90394154 961478980 639719712 706139931 132896329 625044256 961882948 993368160 921328662 977517790 596273380 919105623 425884175 969010551 549397238 634577532 198593934 736120480 535779748 802646134 189660972 418541989 389694681 612404835 995822942 999719876 727932327 879778845 337302494 450632983 554186464 646516460 308383736 743905580 241457836 677950639 204625266 551015094 35823941 702031687 561916852 608367952 933061268 973181723 349623592 798530302 534475758 685832889 440828076 979601007 213289696 926444677 302210768 959554180 276167242 299769799 508375076 762791377 174753221 882363567 916477352 989135970 425399046 839963373 293458425 367869792 974951248 980188461 119023283 487697503 977847854 981558780 779348734 930795850 715880212 874551385 483974444 826151880 213007048 837332977 219546776 903195291 665413992 724889781 209782917 281487064 40672679 716375403 239044229 912907772 418271744 564287080 750736942 788680969 863810941 865492735 614264964 614782930 994956704 998794163 16036057 784117982 334610180 643985417 413845323 647366986 727720060 909360187 287555156 436763156 829208842 864115519 687105659 776195404 122108051 681615303 492960300 768483582 872207601 935349045 621991622 626807200 238501353 521741925 895558564 934989976 456266740 544668193 404095343 670653892 554196941 905732555 929056247 949444001 99301327 888295649 634069733 670028171 293149026 353953646 126349276 709302197 809369308 965563114 895632723 907984706 452675214 496972450 229751711 700561715 101639331 953221798 420619835 898456124 102064902 288735025 712179648 934274507 40154838 571255611 322828481 527472192 421060028 597495638 741491124 863437279 845795080 950147908 730987314 739206703 849507307 857121401 615403712 647261953 305368875 475185295 476015812 548051688 1015795 44932244 183966213 486322422 456472313 845965875 535017591 639985237 44280478 630765360 217351863 795379454 645259084 860468994 105598179 295184461 765872693 902679770 568506084 581867853 422544959 969696294 213103510 607931510 368444917 421935523 901014695 974878646 935395168 967777473 602028541 868594885 53870398 128073902 34134591 146506178 628742870 743767815 283370046 688469029 363258493 414458261 972948426 982015932 710420101 927789984 148743408 843845636 278852977 756690202 910836735 947626680 116530815 716009021 479573792 733111322 682985424 811822623 134262127 268037541 619576966 789060351 458741669 684776370 540302090 681396653 902532625 998577593 685136172 981522145 120184157 698599415 903598731 927909400 678726300 914609567 505261359 573556233 16325244 186494440 820562380 998100579 674569045 698288567 269334701 851280308 957607559 989867989 1924144 971416892 566076367 719312862 883649653 983397414 533960583 929390367 76088905 545444010 790139918 815493242 194668362 216962021 338855566 961590545 103068522 889292466 322963553 477114179 674266061 712975360 645214666 694666515 597072600 912621581 910389558 996194560 278093610 991362081 463930337 616200221 819524274 966909351 712232001 774164253 58890118 785262462 90583977 681966360 89245372 576257211 536982057 833625804 191452978 852860299 674776411 714572699 679474221 988151753 531153356 944325804 580717206 794331118 134085148 504210180 386855803 588348930 812638705 874692166 967502027 968256651 740396365 968932751 584366411 669219512 787311274 802136762 621367362 659674829 577696967 647904660 888635793 969430035 475580777 751140206 938636641 946287453 832913087 835304428 779017846 938142588 201781942 784285622 124767163 467185457 532948388 989347365 903379589 930671655 619334218 781716421 894839639 957006713 203656666 257564539 410514409 989000467 666981990 698074240 107898137 777680416 519725957 737435148 866321619 893065749 674125650 768141418 205598105 861387713 270084551 493183135 357224972 467445243 281684541 796986838 542396012 879849989 372253199 922459349 482627812 614068051 365945493 725927738 252164762 740894734 283082806 389994058 541292280 936610441 175108991 645653340 615453982 884973173 245739425 251955127 603080165 759675375 902225638 988056746 630424975 971898378 887198508 906525082 98001581 345489166 686402394 873068768 810523 81449631 362809004 624758107 965046712 995411107 7860247 39596451 895214197 942738151 69597215 201668755 904613190 973864610 630799997 951502577 972976984 999619845 507745877 689419106 916503890 935269146 861609702 902491087 486954826 545229292 81239612 994302321 172442104 375092113 799162202 905614635 969652577 994558481 351901334 923840125 705254749 765734492 695172114 848005172 259562634 577506174 910014641 919665785 371475892 834647091 472681111 771441533 858448328 918042222 477579674 603440976 368166517 436302402 850419751 952765692 348548992 596526458 832501910 918701400 382920353 953148652 397803318 968435963 973314677 995011004 691756694 736974426 373824345 646472825 705685599 819443328 868664354 934487662 548480656 991266338 696904166 937028495 533881681 893312502 127335991 787325256 824156391 852940248 940600903 997998958 313226833 494815151 59573032 170476419 396673062 592989133 801619921 864462081 259472432 642607258 645378356 973555526 489788910 661631265 831970385 929717183 678824747 826340154 726694583 815596357 578444798 622687826 631054359 864664783 658651043 933153371 613282726 901961812 582993464 915252725 315974967 989207946 179418294 376096820 402865722 984152254 259513193 857361621 127647364 325355174 338676797 606915354 474659273 938398560 130519988 457267868 319902763 789059179 644481908 935290692 605578192 887012829 373596026 951717224 648251702 819200101 197660561 663088794 301908073 336594473 230355821 588288730 921407558 966743576 859090910 878239820 750199682 909310950 800350680 967053647 461362518 603881460 157885512 352243111 213296445 384917693 525990948 827682593 727217714 749635073 771164364 852383559 599108711 637776506 930789581 964838333 84242920 761975992 747906620 750436597 101839755 199223926 664407667 951599848 116258313 279309094 30321554 62578765 210955823 413140382 450621852 931648165 84695934 800695894 146876207 789901799 800886744 924899948 501417156 785118695 706224253 957399201 880904087 940533130 729297275 859443280 568608697 777828793 658594852 935650232 419205054 762537489 306662400 919433759 137942662 515977590 359359518 453996825 123830459 691738840 472111942 938404579 972851610 998778607 478184759 489629473 358677627 568716162 403038234 950976919 22212868 908745382 315357634 917669809 46291267 203175214 137183603 451654821 832985565 966121363 25372630 128304777 743943110 786362172 888064734 997323166 815364503 854371423 591552160 893211561 696441000 742305670 170760393 951804445 328729369 918972299 366970973 813883033 567658277 906327188 99031153 858137527 210062857 962478734 854175180 990400622 925225599 986839589 509265275 977669889 181944116 370382751 679494409 755036849 810189236 819960279 9354142 376122392 690721159 939574917 637982424 891395927 650662925 704474487 698288260 883956433 766179783 937045618 509009873 598741252 128840697 431971110 904184078 996026484 886775217 993570720 986880367 997197840 64167124 992222806 225540345 920988082 5788492 542386691 456688098 739146703 882034660 913663554 113340464 905497474 778255142 917200270 489156325 856603780 290452279 722842803 988442742 993441152 854357251 929813206 890864074 912444623 232328591 431021612 765974258 973579882 437345579 460822310 924507504 948496209 529241011 911713542 693687145 889693276 711705479 844927259 555741686 645338351 890830138 951832336 920950323 965483561 83889503 815722629 427858018 602899855 903253927 941272776 71406291 514355351 849002309 917465467 100219081 276866013 318030669 505238365 889925157 924017425 524822537 733500780 9089701 966786546 301571073 411334489 518819261 796140191 73493362 794560477 976967590 978592984 593633054 786515037 381253910 560856385 574920674 720336128 388345206 392170087 373212464 704159980 149831570 697598462 904878145 997091927 771562352 805408763 550964666 641444744 19509104 363782395 319457987 738951171 20371776 732417818 994282494 998918378 138879365 747100648 565693699 648587246 244702386 268899154 964537097 966236988 909302989 987457302 512899040 765427136 114609394 277458489 884752638 950832756 808113782 952530574 338195237 652841768 733500653 939255421 532800125 982548808 424939386 964898828 208917267 315221092 211165554 984202931 873639542 876626683 451150102 491047519 677833273 917306149 98516621 210812384 113583873 428038707 613676216 776957097 57705408 193192745 77877973 369653891 314167280 892271411 339326862 491644622 109514628 893524414 628848398 892803591 7210103 279302231 209346847 980101699 175831281 697377443 657760532 711750311 753481478 858814937 367053317 827482361 233956746 899654186 591828396 683596733 488126484 586464026 947224735 963370038 602660994 652705077 33180712 552697138 950711840 980768983 551192782 923411157 655263111 749709306 104227504 655105415 738865919 811512274 41627168 432143862 25509805 812493930 408073621 861327665 707278270 880248519 533243500 748322772 655329436 705636997 372208191 788683324 662183318 883834524 343542548 389028186 583555790 635958975 836523336 966162192 55460676 65092978 455202267 703689465 652881685 760403219 1658910 975060155 960222258 998274555 10653385 258151549 125838517 379001399 721545420 861237396 545295455 594352287 78489615 856616168 161094318 851900419 243711809 900526332 324666868 600194121 665296120 863273924 592330490 838088213 964661590 979736879 974193806 976371254 774366950 793296862 317087868 903406822 833140026 845083225 923731578 983072797 764971166 914364961 588774584 736371722 635425006 790759418 435419419 900673118 624984947 866745158 998952925 999466406 377484966 976570554 892753795 987157128 154138760 637160861 745429299 932869911 521386241 878347801 118517059 904505829 144793347 562216906 203299916 423696266 332188109 931986664 880854622 946764992 315749279 890419580 500614772 722149196 656678008 831301740 597331558 673614310 264771351 507028458 5255528 525193523 257673659 721446005 805926745 836346468 962616539 998565052 262243497 455679413 405025904 885715570 522226388 983793616 970900273 972294555 539502914 772513111 318394100 455704915 548585944 633494054 712454886 827723335 926054061 937921777 562224958 999237885 236968954 262389881 25893129 562858619 889584532 986212875 234498060 642026644 493696900 983994349 549173795 970286261 136617130 497382458 505287244 508000364 65076695 100727575 360000041 761626420 564662655 710245022 861280087 994799499 344771230 924156204 830069646 851043417 635159388 760305180 625546103 918614606 607921356 702600185 535226410 730598107 167648968 393669382 660114374 987212280 664059184 898630309 853110446 882017739 910890646 947323951 557519553 728572589 800970643 820625387 495657641 638976274 867271069 968995823 279395494 903738820 87486339 97636671 871952242 940971633 456974010 758816273 562678104 780795836 86171705 357481653 17364256 341673867 827041324 899481816 563269365 626785471 771944332 932029070 985998350 990558884 944558872 995237395 587943690 848361954 750685795 795685725 638435992 985802523 645698962 857978725 977146437 996274736 347239099 712002705 719658155 752849265 827002803 997892641 687879494 723107058 528588164 711489988 915888891 942702049 882030693 982199734 267333292 679473786 430472900 754572299 562267934 740184863 641623841 752003001 726944450 942448208 45575670 808865399 461201146 680559651 37747804 215356555 363942317 372402246 277699857 381090655 616223731 955529770 885920073 935453531 991913010 998084585 687081780 895962374 381242147 985379401 102240426 766277606 678090566 828625581 339584394 568797885 464571091 614854252 268788512 905917164 757001501 801266067 518470607 661091941 844662223 949540067 990486028 996915443 444079896 749734527 543238284 745669579 96134270 989274050 495621029 762919874 642393958 850570314 442660251 590549737 44162725 985554725 240820175 366774128 567255589 988179148 469395407 611146225 29612401 89550130 696681888 700783588 651386433 749029489 646903604 906360740 161198625 405569615 806727207 855336127 169497839 771536266 474602474 916774857 382076130 560675390 686690428 929138862 33641050 854092633 515206365 822253190 858527528 946631848 750700725 850128020 335711550 408411002 851069078 993284082 252890977 690051402 513671699 565382463 536530073 586500110 515857293 688634298 67955680 516298816 60677097 441947506 422435728 863857385 370345939 533187741 508478807 669070012 56860433 337789131 310321972 388481758 506434267 710658911 674955072 790174573 407733955 508610048 161441912 795682481 868646919 892737426 376035347 974792410 548057912 925650906 657352292 894051612 308522643 326482348 964166089 987122662 583301906 680964805 314381924 736937865 100180023 825628050 844963887 866982276 570840058 638685045 887884644 975852228 673580306 726755083 946635457 996298116 213835110 829898947 609421387 823470483 992219703 997141442 209218884 393395392 541141452 844182687 75842933 732291791 378640818 950505965 710251544 735768816 716621133 901247294 234067478 788571218 784470777 984384743 319651132 334715267 171835012 813126731 660311448 983024140 368603635 859757883 562188783 683142929 374958988 718720116 52324713 728840929 148822786 336076248 563997721 646509021 14023939 440463127 364893838 427797574 829021162 943415223 549267676 585192325 488027736 876486214 776475752 895989922 297317355 608756928 484570557 739731938 863573655 998209357 965303432 972276951 305274730 418630502 342180590 987157476 451560418 977436925 79078902 981696910 292138310 767696473 505210068 617844390 384750712 514084037 292327366 621813888 624638786 679339363 161112207 598449745 781245007 887138323 79546989 706441138 830525680 920125357 598173117 941441842 150108177 563711112 155508977 757963539 897255884 950574541 25091666 871123398 669695562 790634576 726074421 772678442 371105538 979925522 327600749 695266219 976343087 999474771 332121654 873721457 717989059 767488108 529109238 988903738 875759960 900024754 185839318 742023472 120233950 664189604 236767405 781141167 93954305 277444793 929200895 970887561 249612055 577017450 327149419 399465267 171178718 942348185 337035253 643867081 430965976 845538168 462372775 854493671 100894869 921885599 685287478 932149152 251630590 334625179 579133923 747416371 93671143 333970907 170958067 291492523 992921774 992946991 39824085 73349572 169858251 382347026 470326728 890812187 798146499 908480913 696161817 879305360 17161275 898230353 818392491 866815189 185750043 747388804 364258795 537962977 934140019 954132602 983257286 990160318 553851517 823027721 926087498 960618386 990093612 997663518 248802996 492176733 322270473 911124143 842213908 888427650 98985759 805098892 121752651 647929901 259954553 834309172 391086217 971069098 432031273 622595814 599031234 892486610 878548668 949109174 913919770 943730914 294544332 458629097 474424915 958233177 802793978 949636087 406152088 563526283 573307588 982508417 218240396 752563383 239460976 387601568 203179534 824264061 325356852 750849926 191005908 807108693 143867287 857615421 466499605 606908310 697426403 982362940 252371373 433681363 494932206 953773563 532436743 946454854 189044947 221979796 601385163 926866845 692090877 918889269 735659638 954757740 814616716 944974607 271402928 526016277 117485534 458797285 684900083 808959218 253525894 722122271 365414376 712747315 217863858 685349536 302631650 623930731 807400811 986858303 338862453 907951429 842560727 899003368 914079625 945338224 191272258 819433604 128378526 652510186 282182349 447606362 135720253 756883474 217134422 937026279 163069376 425794610 523259719 712629468 824634953 871937264 474532443 958329680 548924689 831712875 839207248 950366491 473129426 963390509 962717202 983388767 531106130 941525825 629476525 878110947 138768612 300481123 494717362 576452267 947509913 998962700 353264791 659683388 200744787 977349754 227047817 231274168 24160616 374592171 478590982 535996383 149213173 237161900 318888543 682715250 923076476 968396274 199761484 341636220 38168139 568504020 360335977 948223040 545184415 631975283 595834908 725773522 876935342 899169837 478500400 829330983 831038622 909267933 152273206 911668351 890233377 926023196 753083747 949360451 701480455 932347539 74436854 143484677 204123473 936625768 13434976 474779110 846115471 863729936 140310577 972950335 557668538 845962094 480015917 913180055 536577397 544063172 192634790 926564143 21119578 864115147 842586317 949866207 576403262 606596965 810311977 976078909 1561239 563165719 918386284 936061516 138355046 339291314 933125805 935165924 75935354 104822954 897026840 926125595 497345393 583996355 164588364 962863774 225590631 516145943 49900045 784516787 808823630 976867413 53133793 197396332 32179276 700767413 603935354 644676614 365984487 832015691 83166259 229373410 308993943 897448704 959415026 968733789 241138454 808421130 519025915 941878511 654779682 889480724 703304482 898661554 854800984 955370611 578133501 754757692 39342127 360609144 863146391 922413186 425345347 504173994 154702907 376678725 136805093 791327063 580175700 975723205 726485212 927257820 996340074 996671496 884675296 944539632 793704468 997772218 870805534 999396317 272995155 895207055 517803587 683010179 940246140 994057402 570428947 961144402 786333633 960433296 2978923 134218238 220859548 306002033 46441377 746514704 332186532 730851248 208957542 587651736 256048239 661738502 20850207 635515722 835171704 852541460 155921610 362277764 780769491 919815579 476406168 847973366 622842495 686239169 315648442 654437667 147343506 468931274 865379907 865944622 91892239 538218885 260347261 765421173 909992513 938301024 425404982 877029105 273895139 299336994 587072198 791007709 914664078 959744532 907655084 935525085 525644236 869823791 931359699 967735805 590086394 696938405 505323567 923345479 268984722 473717858 782652284 944998886 952203807 990009226 995342284 999051517 528638282 885750522 898462416 975168535 336432323 799533348 455683013 770884976 3754808 745677554 617101762 722801072 52205545 122995956 39555353 80587905 193177174 691407842 636054968 855785434 928395899 942759827 510886611 661210662 507734775 779740176 663165298 685103597 473602926 703041639 782750758 933058740 496821817 827495196 258068494 313342398 727941001 991510364 605377474 841843414 353365387 790079972 692862941 854127916 609096174 677804416 151834050 565178304 928704009 978812305 271330202 579507472 27412410 100604718 603572565 789665977 511516175 918444569 944279975 995657365 463765789 480160586 222013027 311003903 485915840 874049934 522712372 935821190 123903201 243509099 743021174 833205271 975554274 978923989 744317168 876718311 270688819 954507798 295784551 521494353 629507045 751062995 170031234 380055893 657992965 915448644 660423087 821108987 299987061 999835869 192340547 543177307 359075873 513016862 959549042 994233792 759597466 806120313 277944785 381349457 302862787 846611285 207954742 655551238 52026485 609555318 668778740 730160325 928701470 964376552 30014795 525056229 198825388 914128276 528688510 704312391 71374400 633451451 155189135 944272727 173295304 703523967 166096921 229494684 483295878 788868529 732032648 836407997 773706071 855922461 279725338 665935378 314065872 547924689 776532410 906410928 570673443 960856022 792984965 828850256 578453303 891734602 662635824 834343326 593599262 783449230 286252563 790587224 160137764 736639430 509445607 679392664 849532966 963704911 184102421 580577784 735655647 857513791 723635682 880987183 775286537 937922229 665982628 966884353 233061878 797492714 620395836 669342032 960970788 971067283 223621749 896061442 466890496 893354192 334185600 438779211 46738455 634739934 994906102 999759455 140558706 268396428 349718862 682892440 839927971 845187258 408878818 873784610 856728575 898186942 352981516 554439222 776745376 922354770 55398283 334266531 976251821 979961491 317360100 509773323 255268721 691580572 850990673 856768959 201277299 892960662 577860870 789778479 982424767 996582888 500763018 910053066 924417885 981454535 397179464 703049207 260354533 449237561 235557521 244248300 501174148 725800442 279085928 709908361 404284814 796604300 125513173 505433936 547152301 761718506 524303931 685070408 240343875 940909111 695585807 855443466 975515685 975977664 752095044 870974319 593584739 991839715 238628843 824646306 453452436 943836888 616918689 898023913 643088700 882283343 64617676 877450999 790782344 834441579 374387610 682058327 858790509 889892432 533139109 946578467 191555043 965463801 454904110 810382452 324823640 939824878 407102007 481725421 641793654 716721024 832612587 879563658 904155654 911873801 988613217 991415381 632486212 822708352 691827314 852456428 510167161 845939527 859019539 870565512 911561064 973450797 216505215 773502106 65194050 778348482 754584061 953601044 990683802 994444042 945378571 965328864 823589950 858762037 986960962 994078763 348074856 423501576 51922160 523614963 87555856 614940818 411791052 466280571 833357742 843526972 9845163 85865537 305677744 517927947 225323436 887562275 413209729 532331201 412296428 941441137 676923621 989122531 18936974 430283270 830716248 912930191 277862589 536965933 521100873 585441450 633206674 881793884 268502020 580951695 634229336 837220483 792892112 999232142 69323648 761827202 9861540 951608461 111491165 517153363 132841890 728132768 459397426 803536208 318793622 712710052 933897208 942468721 683639031 793709474 936139789 952229978 775597504 833351998 89226775 414741123 123462715 412683208 835475913 911450145 880802867 904940694 261511353 333362300 320265257 920430080 456406328 565432353 861682561 895845293 786700057 982490437 403729549 612368152 583479708 659529143 61393751 386390290 171359414 629642085 416313751 816861311 549739758 640860775 398871881 429653895 964608450 974951365 553369479 915227216 843075981 968349150 162933210 965484632 305695464 648082673 548042820 573744866 347000788 755181930 395432042 767475862 44041052 748852836 697006376 982085504 413460672 745381488 928922429 997032274 757683108 761937345 507445574 863420874 425724570 475226933 262440209 513213794 890403586 899926090 661138516 858988842 45136089 934834477 326606295 538281394 625466897 854865560 417560480 906455785 39032753 824917756 682928700 843828058 287570559 541066750 552906544 815771356 510294075 912343614 397124888 833253849 32742762 34727187 971676822 990511760 36126483 781374930 818646831 997712115 275326758 719966170 265949245 905547801 238279272 535578613 634158083 958160828 996093993 998675377 993712748 996633107 513829515 894223653 539727722 884161507 487370633 525068850 952174732 992688977 183859138 889874294 114058346 622031134 160408748 172744767 852672916 957629433 317849993 739359286 376953811 381792175 548665333 769560805 939883926 976239225 364883631 403885873 322994058 802242952 200214344 630589486 787775006 920816268 115394991 864271416 248263304 552952399 270023235 834456235 311672279 664453742 105673595 735395793 498005952 924998406 350789070 846887367 299455670 377348263 426565094 992161027 57682289 224985007 46698592 915833361 279697191 331233488 778148984 954054557 388711905 623610295 993013542 995261708 628071580 894220718 891607474 931866207 414794812 939760299 912413740 967655531 450190586 518972943 605525671 925901772 707547988 939851211 902824359 907461037 230125338 806703529 578506529 703508266 423769893 800646213 617198806 634228546 400304726 839689662 753652510 986007740 469263705 864302995 57867047 998743560 166231069 170934290 743873063 921960354 275349387 545561279 189194699 701668898 613262255 854303951 333993968 833795752 357289813 388920862 716412560 737332174 707057255 808382631 211837230 773737137 411804367 493935741 146083346 606478985 759034068 879795017 161827460 912930391 607018758 774672275 518402997 783013990 314192302 381889563 294030335 945479047 336859820 516655139 898253340 940214345 828037507 835114424 360945409 401732251 896910750 979859889 473366295 567068857 907613860 997811971 290290777 845948374 296833041 645470184 347328356 820912506 663304682 736415746 648415186 800700386 502996383 647259397 88096936 670876962 263372263 371898538 15995548 473546141 685127647 871230286 163065700 682424481 874936454 963865311 388205198 673641353 119405046 121754361 575535813 768400128 431651962 603219097 469448107 862757346 340559863 625217558 708142097 968640027 185740976 311946183 448862413 482827697 332729621 370283774 955592404 956937410 318606016 800929842 978005782 999408043 711320604 868656704 414394340 686930804 648957511 908624005 159507415 184889312 487550481 665932324 29497219 934377332 841770151 881746139 993473660 999609996 677378992 762653398 155060957 936635551 47687455 949821627 969084274 983837669 638103539 654182967 897368664 905253800 187144090 559722192 484365853 919580400 941843240 991090047 88670535 280575363 372432120 744229084 546943921 571085593 812944581 960331556 247853351 828807986 492257663 960065050 405177000 725604345 425909451 645592056 395537968 839044426 508742691 945136915 501594875 720762218 206134417 467036380 559441211 835861660 168196103 298528488 702714317 816482717 521711001 997590811 548569445 626044164 984792520 999397597 857829826 991310409 896116752 918801732 304531324 536770517 619050589 745945990 469888754 543413875 720996581 847121336 629927155 693935194 452903252 872469942 408957465 422613092 484313549 503679901 752114850 930146102 573756936 647698915 645872208 747059290 296178685 462987317 358754517 875236514 203045377 639690326 408580847 408897688 906322055 941675723 490841975 789593469 244864274 442535426 445200541 701730353 682188308 974385639 827692833 854728668 90119743 687443604 652467185 808519840 322467289 692971379 922721780 982109543 853583535 942565583 439064859 597252752 165214462 576825579 353472440 746484263 303986814 558346272 124287724 991777897 357806502 423053125 858655049 989327612 831903088 892043026 720963116 835585996 650562716 755302958 829949585 976086553 220394664 601903706 929871466 955261560 566314314 768085207 299191201 703737364 974836021 988429680 65797180 103607299 539706933 741175642 344374745 444309022 293200290 715445292 181172833 997248211 452682274 844694774 842469091 928834707 910753295 924263120 747263318 861875819 938793739 950745439 973540386 989996352 302987331 957249512 896974704 982326092 189805888 270412048 49580051 248317618 535686962 790096299 885100934 978649950 464027916 507630390 290157707 930950704 852130900 881574113 49916939 836256209 76225793 314554786 829877544 837748918 127468403 594177073 947312691 995980636 998620515 998742568 549545896 808927146 259754007 687072981 945325947 956933612 919379744 958394158 314211245 611937568 291518859 822518308 701003085 947224120 89487995 890292755 608754510 799541676 328704185 637089061 179921999 868786206 388162539 990413222 454480642 905466836 308222570 968308631 623852735 745540339 855993158 991367918 502694922 678045156 823800231 880936215 263781925 552036147 338408295 638465231 636992477 760855195 896453962 984036030 994510442 998731280 670800828 828089111 774407014 821571821 261469496 481804352 717610971 844196675 794020448 985558664 841408660 937326079 66324575 316516373 598250326 915054932 386276470 439484516 266137374 936807369 756375777 969986501 398494653 568183790 802473041 936813533 145961942 557340669 892753634 944434451 892281922 906867349 36341295 680973654 303971331 901330417 901081848 950638151 632089120 787205004 73996643 689489807 488601933 783413853 786401433 870613692 729556677 811250119 613329469 890721904 305656894 594219763 536566578 541183383 269176757 345432736 203700481 606323485 533676833 575138340 427061363 872155533 307988026 937078088 465044271 545093333 286927437 433974570 600238877 712008657 586442474 609070360 862680601 933412803 397152819 588551572 38168125 244855561 318904328 728307140 141957173 480591959 467640255 702703463 734703181 881381462 513110713 644444477 743984692 889083776 523780536 707161620 828419437 908289204 65153832 865686968 338184864 399214694 811580106 850972448 109080830 900227951 96510514 332062721 48153595 815660652 388254218 405933612 720753537 814026334 230131447 469922065 368062435 379965386 71238909 207336421 353312381 722935739 851951421 991567661 345262233 848465738 227669356 583554077 375160003 845262511 830253794 881888211 363363718 447551049 300946731 947114312 216009986 685294577 632169174 665467668 624398442 760060480 35943464 348091508 20281797 282232705 437063888 624786592 327896265 693458844 295286003 401783506 79387423 289634409 846239343 884432082 216198174 787153899 215898098 314709053 657626579 676070874 497825388 888576996 523329847 749598537 27052099 765116210 626582262 852007908 792507938 914985128 430131550 674673252 713805200 930115482 511872085 686085061 531419328 821763705 700016249 995800443 911902738 975199817 978154157 988959951 262306003 772022463 267636982 675723480 855202797 899299073 45183478 699941239 499562236 706004162 961421215 980891999 815009979 830158757 530921357 537202490 469626716 796305669 846266656 991812905 350810699 976527194 803925377 895467583 1083153 665223058 916355861 928197000 703076443 735460909 625569967 758988232 164254858 779949948 313915459 625610094 924140197 934060983 298120114 857224459 45749006 779942271 422312568 729306327 178870975 763474697 408329286 560766228 720687077 929987269 746660448 905579588 183872743 928750045 603115547 885642221 845395804 878295499 272786026 438181308 1214685 909116255 137425059 757238585 665593002 821251167 163295448 919403674 424648810 591988792 283351016 313800021 821304222 948069050 541764514 601083881 806377253 844386687 12446485 719621404 669591456 764158193 920000707 999878853 230243847 290133661 613156412 929786511 146275825 966679010 699764127 717762389 938122709 974172410 160403719 707583097 550536570 835769976 445946865 642349850 843964418 967851275 444163126 653568828 87447132 734349394 806340113 850579113 273023280 607778696 311615703 424539333 801857517 828791127 119425762 174549506 387478700 832461287 559965216 864988207 832160444 991606326 249879165 491917390 973145224 992237389 595223438 975934862 19726835 579971192 720853879 831759147 368289387 769638413 970901490 998087482 238622295 341023672 73438316 555605159 764945157 874328669 917926581 948770469 493548226 961107020 403263794 539840752 957236887 977707540 403151266 814500514 435022661 530431663 838207 377231125 123662640 378005302 865704342 970003967 342435464 688560751 194764758 726467137 410907850 738569285 578676602 709127307 532222249 897090669 837028189 933504757 861365791 995746826 232864293 617353695 386373352 846800721 412326001 774520405 485660561 975638183 275850200 631581893 699113399 923863192 494478117 635028353 256272351 261635557 34502870 533101346 240438115 267477330 908232160 922810699 216708521 757733137 749787017 907297309 887182733 927211885 905799455 959285102 97358747 905179721 121848413 421487072 170902813 413450659 901939148 932498453 348997693 456764435 571075298 706893863 65434370 138813236 562382472 675439698 569188026 828936730 262598393 592462686 369346150 633695871 93884745 899329731 602824435 921764744 263943929 930996689 789230955 825387986 776060435 865325681 920929789 949981063 777974297 813817506 938178931 980762051 907747868 978167472 314473774 564768382 78436183 388730355 210837265 632733120 795664288 849466483 61586073 553000152 656216274 782442009 277873883 711804146 276810975 321353390 41721492 422566043 498342077 770046781 445916471 921853190 554594445 724258619 449893417 800505466 975699454 989662499 579470296 934403286 822794593 867835917 970654718 978760538 183270220 467154346 929707226 946095341 196984242 794028674 828883195 873196425 680705268 743534907 407991061 988917651 616821101 690811905 13272552 555581716 968444141 991651812 480802364 685265315 19933281 838611557 729798227 736166929 683108225 689889287 900949551 916269807 410351724 699367075 257013940 804267035 193068607 263707413 89070796 372673160 779921046 886514567 573195094 707446252 372511797 819571054 765181181 914478870 128071243 867539304 655764000 677238185 647947569 780127123 107068582 440470561 15860749 87960640 512255216 532392139 154713109 790084236 72991043 900954999 381527849 522479905 184314745 650344493 977534838 992837930 450057065 709627234 430609420 659243289 384611920 405266095 217851002 238454557 391656446 535110850 600131757 926672645 591637522 810423373 89290179 159611170 50456999 862387539 629042546 660739555 530535762 734312146 944231658 956643618 62071991 87798097 285304187 974220131 772494841 780897246 862538916 985926453 974118942 983504352 912877841 925735507 78218907 418080541 339855943 833196436 848795445 933709443 22315953 851590501 851394275 981514600 343227465 429239262 434553468 588231928 552823977 811667496 852657431 942435325 464032448 480304619 557306181 560418951 141547663 500329553 857759314 903319651 731087223 759101343 492779085 887027947 948642119 961881603 799498059 990123678 141159331 617805261 856723520 966191449 488059245 792255239 256858655 310988263 764794122 867475062 835689763 900285270 139613400 754695791 907694855 909925035 48281031 940961966 217317119 253090678 653119803 759922864 625621773 650631911 530051689 723752758 615268022 624013790 155366098 825968463 327152680 820722025 355329226 887030391 303828572 605709747 225979800 332541439 503767199 715858791 266980308 412700957 504038210 914753325 690798617 870343364 288014188 988533919 560996817 655378755 760848818 941263271 344916437 507570110 522440039 680727059 547310522 676582976 91155206 813913569 588732737 941407399 110394849 580783938 516367951 843279357 905473899 960353454 571321456 914830569 663923063 861307352 717572593 972099778 114804304 629563906 543848490 859934495 606152670 871337203 581878620 900390779 618045817 745735357 486289324 851190882 626126770 783859165 701998361 847461674 490840174 731846944 315485605 797658407 375337807 624103004 375314356 661808923 532583494 797312534 801752731 880472455 947463471 978024868 235602843 598149433 600735403 944150742 902063355 911144618 470508407 603629273 101911283 373604938 737294577 808270046 361250567 526625466 888601497 932125846 156821272 817109556 635344571 963887786 328561521 667624008 451762982 778220588 673386157 903862458 94775379 539477200 766753006 954953428 439522035 584230957 776393392 896551022 219303474 284980330 307245399 335925155 322272558 464010296 457008226 899399798 96039184 99409321 438051966 465686960 836837054 962789049 916500625 916633308 192027389 535087535 896189726 939577560 442195653 985153024 990036560 993306660 667955149 743722758 958070652 986014642 73927712 594735156 749960080 995566467 387723222 910711165 663685839 822406345 673878356 747484446 977519119 979553125 631764991 638651520 428298950 627580552 703524321 777352577 585681208 888716532 677338184 836968751 522642116 603563265 656429282 950435645 331486194 561955680 655978523 694758324 567014964 876594607 569172192 969849227 435839213 742345919 225794574 855650390 290722124 313381933 753359932 795917820 266589083 493205466 915868034 966382659 84569299 876204562 697277665 758168941 182568776 381003926 215495485 647313339 35534532 691654755 134947778 623908119 969472978 973289084 302631530 757092835 27898437 590151244 231343954 411358296 24260221 260065996 158642015 662202865 136652395 859575443 309970969 743018698 743832892 905252089 260172140 671315082 858029395 886726676 952731964 991223757 458557265 611330400 68095681 319318188 475896606 490866451 385653046 537006452 671700292 698900509 327522810 880018942 868407592 939456019 422201804 601123521 13766942 890619422 806962656 824661080 138549952 607168337 332064605 742887758 417045458 853239048 614745505 984247692 359620205 882034042 870666621 931507652 734314012 888502801 142787866 486660938 563601682 768929927 129012450 526410072 56346650 348947109 816809908 932906343 748742928 889594226 49078687 845503428 728667564 753285601 555334365 641933390 86471622 643142138 430541964 448029538 277484404 993715055 421337607 942115203 905236463 942810253 748357402 847852802 106382851 733693802 496289185 901511183 694317668 999705464 960275095 997507485 575358102 791646817 898041523 956919598 392082866 431978048 747292539 885137679 802557945 826306617 571235567 938628317 587395278 616713304 757564848 780261981 971642828 985785024 505442611 991380885 744211535 893791875 452773809 634562069 898998487 973423250 435570164 975733409 454304361 745470319 986984750 997159858 777626031 985775355 624914164 848846145 987347022 996812331 567512823 680883992 506457280 630222141 480612321 733960329 907286972 951774556 378664813 823243461 250583457 895458475 574257133 867406186 694352493 813223505 395670442 995813320 194800436 501670726 917860936 945685500 455571874 756776782 691232769 922753133 910905266 993716403 50107118 571391779 286869975 769734267 413025990 787459016 716085015 899882573 599365527 934711916 760888254 791711188 404410671 808450604 37056327 175092432 97833081 906518993 201950159 261480190 348868987 530820800 415446170 811723945 291889640 660257477 971867139 995687260 170094709 367509888 205493061 830531526 617256597 664462108 866431275 874731658 338835457 829695742 553190138 829266871 884779897 978132218 698806800 779532085 554268045 946990164 911051477 944518539 279671977 871295033 105742316 978073528 754639729 903320194 333662933 783528347 25939285 601790749 581907911 937843495 792157729 971147820 185652257 945334339 884495091 970752246 397451974 886205320 902256359 922578876 562919797 579263782 930079331 949850159 481278422 621727410 896244057 927905974 72434047 622509216 102841267 484876499 584134980 765198831 289994873 808429117 339818959 847195566 447898846 867357190 799848139 835907725 150535455 793395248 6059301 237104217 792722433 806959638 218446979 539605039 173221949 315773626 711961684 728431862 215438978 391228930 804220183 857801361 320918414 716616936 41582919 948868633 221670916 324926512 563743200 710270410 987888947 999479028 675890692 959026281 6551416 567199470 113482764 364061345 912436825 998082077 437608470 495614542 566226115 879711047 639652867 648583630 414774316 582053800 389910293 546983121 806255597 908994951 638292501 794434903 959379980 991658667 25215842 450992011 517713895 884418627 642446816 682970430 684171093 945566842 532395016 751777913 197608522 542431323 576343596 738239191 929176259 986104992 278505065 341181868 691444656 763123165 663191065 862479111 324355923 530420619 494976820 925843585 630106118 830243709 538386083 975321340 347556287 545112991 467969607 890122408 740835800 866613453 346635207 527416581 640399192 791984292 44638522 238228933 823003480 978297733 566122307 633284120 192658666 213089609 590105101 892906037 72780195 108068511 968282447 992362839 720747735 929732694 722980150 824897648 527318305 702377026 958076202 978911486 755955496 867226673 302823101 603599449 650343277 844433768 967401420 999645609 162032450 720182949 802362894 926509992 252399861 793016794 308214260 704747368 997326626 998407498 767000616 959110097 689423889 983913402 198659207 700736914 553482840 900693376 130324973 796076091 682435211 993186326 661521643 918817700 876537361 989646933 804284667 841629433 606902353 870340022 252057565 913639135 276081455 741465248 493220375 512232722 792162722 987590742 898396108 965039839 609778812 991530821 934107911 983129788 736167536 746079155 627947509 884349600 77221744 323607956 371291237 489799325 469382089 940627003 709757703 983079041 414535414 545912329 989737689 997429252 987796610 997205029 434631635 683283176 637686570 898217679 99967235 686426045 181725420 253092824 837919621 870401608 985287192 996304759 595381266 787446787 413080892 822332276 406207859 595844391 118933931 615714471 285395631 772707374 648498694 668740442 780768209 878398852 136900031 872120559 980625228 990358711 270899431 546535596 659182197 963587190 515426559 724531750 820315602 997206750 951990562 976701062 998834576 999753823 786588792 997692415 877020003 913216813 886011792 934296870 761100543 858694022 945703064 995600111 591108972 950934081 913196522 998867371 274989252 840476327 569472936 704819417 397583998 594902709 718967546 870641298 752695880 813778299 342168301 917641536 18525029 405802574 859541454 935643244 466508418 740307684 458381298 593258298 954239782 965242847 5149810 124078265 95558682 724830820 725193318 998214584 626258074 952982243 798916919 965889868 551612058 644114073 333924180 412258794 962653742 989644446 995902409 996500880 988314607 994860684 93568749 786960153 415711899 935062326 173848036 653113905 10962154 373104033 48596341 192848788 354604572 455319666 141906363 888334832 953133390 957457764 318678450 599419471 49603831 886239898 524828738 743361395 169613121 357641888 583765205 872556003 774598405 897203702 201008695 830467253 712941574 782336979 69387121 560056283 64400734 416528106 440312804 449527285 763195407 858414564 25048477 188313812 319297441 538142561 313318371 455458185 453227421 597946853 411119714 639303582 950554047 971723498 745286437 750807117 320033979 341973469 286833371 606063429 56320246 373082971 578209074 695986021 23628328 827063312 785612456 869100235 594551285 821161096 147827815 650665404 499127027 690311244 961051439 991908456 910562628 974913189 65991964 375933756 380819471 843063418 802588489 925225311 380185057 948900202 191823964 286469509 372911964 908955128 28638884 803205339 970908672 995144981 707062277 770560018 70484285 569152345 870993221 933137668 628757923 798511182 523989311 626990246 925578486 954033515 31154485 93464516 758584111 996504375 140416554 570669364 833099507 937612187 13569755 503163336 641089965 705021588 421634749 426878205 880925589 955097368 991269726 993174752 361046312 627446379 190718064 394415313 101518691 649173752 174674771 672573696 546597087 652233639 431494223 643675140 549059310 616680016 693782322 856625741 435720232 469207148 173217277 800891995 83575648 477320278 612524112 924282877 543864753 794201366 274695611 561580273 685133577 874470668 684744659 983626428 702398338 813563092 266537233 394679173 836151713 866360254 865535472 966828138 932272127 949909208 662755118 827207025 189720244 204688757 702858216 833348872 168891837 892407018 390187987 466543789 514857021 706449830 843159469 952230182 978081169 997669734 628437748 660689903 648598418 949996141 239060095 605324166 306406005 814897503 203948606 893535569 602140698 900834517 86312752 689477169 249012698 709849563 838982155 946694896 18588885 416622859 475249215 872673680 363043976 705874315 122892222 733147521 270521906 453025540 906230818 947592636 951719980 991984024 127552823 873176115 738974176 882933421 549666813 962856153 224402275 479914904 939401161 943027975 565929395 858599101 894615535 985539639 427367256 932309539 270995592 597096709 418083809 597004678 245823454 548604658 854246676 962138388 125791469 736242789 627819102 943866052 974117873 974305634 329239639 880174493 848145039 929785182 964481437 965468018 739782687 797626844 797399629 864752255 973222907 985233227 451635555 830260283 809013362 938725976 701372754 939811009 219902282 317218515 180664464 620504987 227140874 660455260 289860798 884785322 951640453 998224523 552630476 559215642 91003633 134588169 717155479 741624987 362981864 616358492 727633660 998443366 311914679 978377996 418833964 666389016 187240432 579664805 948942657 977987141 903303010 910117998 219742141 614083384 129509670 330427368 296744896 327317661 179773314 766861662 824636321 983442651 8698723 928358816 861657507 896807828 457865943 871646697 774366337 787351608 600811712 741589297 449522982 861168938 859615280 968950434 372261364 435868141 201045332 509192603 147703384 939765895 731657060 739482222 888593203 973669408 239573770 323881748 1573515 490572516 145089107 412314033 653278462 960545898 497214505 619922731 159513953 457637204 9516142 290454352 673922442 979446075 87621664 217484159 821702778 933856546 108811454 204803560 922385272 946160085 710269192 817985440 342042942 451785725 826649949 889386766 253111986 645789404 141810692 212772771 843673261 989541492 556329874 820892814 241650765 872303453 264325150 826855546 377109608 885777403 603975751 908003764 461814690 640999419 325415 486878649 399272242 773042941 544223337 714018513 130784369 350589945 403227156 572831711 706656545 975103478 493049935 831224060 475828922 522244727 502854224 962159818 853219379 861786455 124989439 644108015 637576776 695338302 146432458 763992151 372184621 523199294 93726643 684858055 971728875 995499928 430688811 717960845 363842268 747614005 171731543 986172405 526156757 535875327 107998782 497080487 977562070 979432636 169520464 352799497 804045569 830480473 684858942 971998764 737198910 771491488 152974392 836549081 586075261 641993153 944529450 947178871 152163899 427821868 348100790 698614309 699129959 850504571 873642453 959493171 672410001 970801243 573270832 887898009 979655747 996740184 773067745 935302755 406208297 707575205 45161193 133975725 902285213 977726384 200358406 794602538 955994443 995222717 477593299 973414774 30256466 346230150 24133860 711266651 306403951 324409366 983904014 984814833 357231854 695465032 480930695 862883330 682264766 688044617 181165496 796358267 170416348 178071248 415771382 835971089 195770786 352817290 160372374 398923832 255452833 749281032 928827157 986218419 715430895 897316294 764352546 827026687 944733722 955978544 422586626 799224692 775135708 974888625 126265216 868213641 535376074 628682956 267982751 341329252 761663637 815666533 205472733 623122935 391232545 861594635 163219045 584686034 604742673 932589396 502704560 868222995 456168483 692243808 141895322 442559754 738757165 995623061 62461791 684052324 369143627 727624002 854362928 940774514 764872276 885945101 234743002 789807027 940478315 965801010 172197699 953563105 566991261 819302392 662762210 705308501 853752624 919977475 738567466 802276103 126286602 173840679 573187373 813500898 695997471 915098081 839066755 907721420 185455039 738207144 843844241 990121415 598222286 660078753 288401723 405402960 808381573 989799856 53634948 113467155 242763143 416050804 563102015 643627241 394899443 903194385 458414489 993877221 444348455 506875356 479088497 507142539 791362245 869491808 754121040 970339849 782998652 911952310 780466168 852647654 447137678 655504531 839883238 858616950 654411410 677961885 107532034 285204390 14208398 750195205 994616716 996617230 807959586 916981514 488965136 844657946 441478367 682495870 899553030 948380393 453344395 876208348 596371451 775559581 33105362 411402273 212518231 448245062 825283327 954558125 634963169 855933798 79922847 661703038 672781311 748423930 687770300 768361435 361948478 896246457 681287526 735210553 180570734 884182690 819190542 972425927 336638724 464857941 396316060 675970084 609820508 645457493 37577034 886169759 72176450 405088829 956074910 967105356 848787277 989895127 122334693 486916542 643589298 773700379 884991554 953801527 363499635 774061569 829376030 937798189 498117738 663633044 84420530 572562394 193251187 375972886 764645237 782405063 497182436 904327986 383826561 989804256 566265698 912855343 437856049 831170927 749758101 756154294 245818052 466265173 601340924 750159724 395207391 757339330 112720421 427815397 481014238 895866695 543506792 810699098 941962669 983951062 564442114 985915001 527796048 628455251 722098385 930616005 807992765 984611909 176766182 562806341 962626464 968950868 334061662 370477560 591988002 605556828 630006029 933478597 691539898 856990669 589448189 876766841 649579026 795610642 951086477 995077397 509757067 847583226 165623287 556056408 569120511 913887398 22316093 675023070 988596821 994488060 683441993 922163029 370365016 433189180 787769392 845214169 311958226 743130253 819539380 944179929 801015103 934754345 744198955 933750552 257196353 748097046 366365308 545875710 140101096 969544295 254730270 832763729 14810011 397602066 983349365 999163491 360318787 947736628 550579807 940822580 45755859 295747068 995290341 996993034 639104346 714398234 636044877 985645191 303796472 332533134 424310267 676028452 891433522 968846381 876777339 947888164 691756932 994017606 224869488 844809673 909070509 967590627 312441410 962756211 526058077 970712515 34374058 405239935 432938737 985756176 306391297 747526937 50659209 625870544 260477744 722102449 552772407 750514064 398554315 708878297 881782336 930901467 449604617 627994406 408929353 846102301 329782706 937142988 971326525 989750440 693144311 726085237 12285142 307955734 900006258 961923125 443953156 778078004 948861655 979045686 144427929 572374139 623400444 762712627 872431848 899526868 280465165 459952507 36933209 727076828 238672411 654881121 699414109 810063333 573764331 982986113 213842940 496499971 250115220 324881216 224248911 588473606 415873856 805444251 804686175 956145503 843793696 933407083 216255020 675009052 12063965 760635158 259134165 783902372 296221684 429163371 120061767 217930410 106509506 848564612 540377095 653573264 336513530 657670189 812567780 997851692 237342074 295577300 494640786 521805768 516748160 658265419 740878366 762854323 991009828 993331618 783589699 846181239 511875790 973976981 422241218 914269175 147922379 669292934 103965097 604993191 785114595 970005036 803423496 842375159 783820994 879564716 25427206 773231267 607663963 683762168 621113017 960998338 884624418 905698602 624094971 738208849 694439064 828017877 436965361 833149702 192586479 904678267 728485064 831291789 575833832 705606375 433066299 897187787 257969759 756067184 460533415 797406490 211404173 657117543 326040450 983417323 478112084 684374494 709764174 750213303 540144954 624467400 909752520 944775610 447736462 969086713 811020348 823065214 810729743 877763980 249247803 957454378 389598604 694158996 26075461 253940409 111914107 174778083 230594746 976992346 404633291 990955448 950730685 970629172 857444883 973919787 811162435 853114867 326087183 820492282 76818000 477727744 130332242 187863170 667331858 851123304 372620338 681032584 69754720 829335419 562874677 863837009 712689107 970858451 34149709 190515473 356796580 652200471 923266819 964137295 773966174 979856080 480334052 943540415 411295500 498415319 560206114 699283262 818269795 895292691 640191251 643349460 693253433 709136718 920793622 994979352 698279472 883619879 667328929 934013935 11691181 650898059 461584736 981364242 712040284 753622719 697791840 980640935 505905966 801074243 253388174 896966415 845145482 913091938 572721793 914482250 37407458 549448027 593537077 695597952 847096274 916968853 161000123 919390367 691138319 724606859 455422690 627269679 707890113 869754262 366413041 474701916 687591220 786676712 980368601 994933503 984349438 997128080 123292177 841713617 626040640 829608531 683478917 902136424 993659414 995486437 251102493 567143494 60183675 676970979 938108033 943391739 19044419 661972708 487003121 770059382 813130911 849058330 300655986 395395407 865704146 890194197 477763013 864618453 583588952 830335576 689966040 726561733 427815021 859623969 493101634 898777089 172095668 595212787 886235510 968513612 909776967 988787610 807555462 838559021 164366754 689644165 930086092 950883949 751727904 788253309 254504780 730094789 588797921 994045067 436895605 858970038 734798567 879238502 593167907 913288957 983483787 988844174 913033726 945945431 462733117 608279858 702696174 988550373 802311241 888608774 191407318 813375372 674560412 777385424 494599380 809859640 95274858 258818977 780109272 802637868 407227480 847940482 829642130 985441331 759899527 794331201 611649556 932742831 638758828 861903334 786721719 921402777 126866038 470996709 253567590 788345505 347784220 697576087 326253843 523378720 871999038 953610187 909976292 943348184 758039548 954205376 488345112 966950889 336794428 509388151 613562572 860032525 859025608 979907490 815645231 993295002 354365491 456813600 212904424 586445587 943738569 950915686 796447102 979590825 811482977 976085378 689781837 716248107 862848182 888870220 755523664 968210664 677919843 761214521 780374498 943305505 811231762 909367683 947508211 989097659 243972158 634602901 691962107 724687313 521852838 625136784 763087979 926292568 723506097 905283263 639816176 869854552 135102818 683773154 530706243 584102505 969376489 977715780 366905269 812845626 359841623 366235706 371102370 575352265 604756474 711302172 261436914 369463265 530538867 854709659 544842439 978079489 985642151 990279973 296344362 979960906 649733682 711988890 385890569 768308538 566817964 817990076 813219725 917845401 658350879 829097010 67482052 907633298 29401538 457466754 671004258 804325986 206717480 692142013 62209375 719282548 851705830 952584033 820404285 884007669 775707458 871425706 484124542 639317211 220164424 463417218 984182818 994951757 410047958 502953326 733942524 760042115 144931677 355791726 61016139 140761518 968429482 974027001 931032882 982203016 807340378 993451168 801704405 847855355 531110759 910291336 570551614 960789667 918537122 978101182 769972607 974002663 138445421 603808045 251033985 314346791 143977425 253775490 464149883 890009852 707576358 746701714 892939187 923169824 356258721 404568402 580069551 706971420 814475816 965033652 349910246 481872975 547462549 646079413 215220401 751864229 939478896 969111737 175503422 581642434 601591874 897541414 115727566 751428414 685331069 707426763 369071213 560864153 389628233 822492393 898604617 930961696 773640791 993327159 802724456 868537398 563846015 691918722 282139300 319520129 236987985 576148761 478789888 705381370 26374518 127187773 887331546 971660117 511557843 977032841 443327350 554937092 732046033 844122679 487698262 843220717 225229169 951291242 961380664 994502580 989721260 998414492 903317559 932529066 968980017 993428832 632207725 710918539 632145991 748293659 276775171 771665201 354100018 810552991 24300042 971285792 500998262 910078483 861838372 893138865 57329468 825167920 867048035 891813588 791851710 813597161 983458357 997900354 11394471 480973978 286990869 513473827 508273394 731569314 268077251 497679929 299796908 413325387 947029934 951419430 691949250 869859355 685917638 909855356 564648711 746455229 988959838 994665606 829262083 878529069 764495891 827846305 275419983 933749400 186826408 762247558 752575607 821985028 204477450 948658734 481695814 997159413 383604307 704307157 957186115 989213291 111897108 850726014 254689057 884194344 400621031 846523412 319723965 403810221 927519862 953594135 460551703 577351951 568724102 830124765 180335944 474974426 840973597 944249310 508258461 928334477 220622686 973758841 66507900 815077834 783513432 824862636 793673610 801563107 423559883 564302744 180205915 675081583 211432565 828551787 47278404 250992557 297206960 536984921 329621175 897617531 425707381 989118426 416132265 579494396 668523470 713423266 887139050 892045384 583221265 649233629 792825553 875874899 234843927 878400277 463078590 509892729 744975573 977561008 812184627 834913962 396547735 599737069 363314732 892189288 543448520 983193346 664864021 790328000 911220977 996728071 715976769 806002662 799496347 889535400 527415430 958721718 467618196 759710124 454782777 538187168 652770108 777620862 337104058 566416645 56320816 358223077 93346831 938946622 148905017 543775295 31392618 485620378 591052585 919982818 240376860 937245192 459034524 479183362 752414180 931943792 167135285 792576542 470062590 528382763 570761101 973655082 841942902 864329180 748964681 927513858 993718409 995123268 13060741 454207816 334278142 693375747 296081553 581300430 526208296 622020558 657099338 717097629 813921735 887053056 885525099 944647218 520450019 933869482 146762730 422022232 328783843 594999495 630247870 701570920 412014364 966765740 528535010 632843536 403557801 977291932 829122372 897162488 448507116 858603239 633196459 945247370 619588049 984715675 429008864 877693419 790161859 800313074 103156399 528381926 392919849 857066894 108946296 134787422 201298540 776618084 86919183 895765580 105037504 119638525 375252733 960407862 383652167 501741137 169768872 965887398 800670341 855992420 791441924 871354832 792497097 846652294 537131694 782840047 948901313 988606050 974047642 999893680 584815935 745201367 3717544 112613805 848703813 939651374 314319649 409439395 140497920 584649440 37726512 195292436 252828122 594318080 164941727 727175047 529901583 612772455 663194972 701947256 419800450 987016547 517081400 554426102 345362356 519407323 593759457 767339880 494856158 722246925 362779413 593403556 617587183 933276208 689870866 929895248 710534564 949027965 977309253 989273874 685027708 874218300 864091735 926196334 763220666 951869042 473267344 536958382 316135142 630267389 201205118 905257116 941310956 949066367 993188272 994470970 403797668 482941176 84557842 381196071 714977708 920639032 993037213 997756130 604024223 817248453 528057138 662764618 954018758 998937367 71661478 558393515 23734507 129412346 224657252 499207974 680962193 751849043 418208552 625134584 767523051 872111075 627346052 762044920 40075665 876694440 543472158 669477218 839355390 953752583 386373213 709981812 609450648 836672224 231376090 772854257 801529651 900982051 409353959 422377802 578293182 984539281 848188773 898112174 637002927 731291905 991489020 993937347 530150281 816746037 35212048 115965453 871008378 881488147 785668350 818839046 444661714 586368847 640739885 971774164 184053700 606386793 710319593 725881484 235216119 259342074 513750805 625318144 451562084 890024421 938550164 957139132 814740068 872242127 51018822 553085769 274760881 967576907 351757639 884101814 953939046 960150345 340133605 998109516 413055661 754945231 374145574 531318733 818438648 978598915 726102790 730605018 50048895 751509560 909236889 909744154 854125794 949327021 167025103 930577062 647623400 936784318 718202751 968978196 798355195 906539381 76684673 618175608 710128270 896144662 945527243 954295091 597837793 928781201 524784387 814889454 561846390 923972159 457534672 663059686 174368182 438128131 285453886 580386286 939896255 956340999 41116126 584332700 411907114 583003273 687809759 940240901 476616926 837519139 770646485 821233635 742234877 943401365 433114092 902292429 829170249 913237727 540591265 951685544 43764591 582086918 841092723 898655794 557458776 924544733 302312225 921982213 742980825 876963504 246289074 311211414 952666984 957518880 893720254 925769830 792657733 993977807 31096187 794996838 544654507 969781411 920693383 972270295 638738451 948075187 335658498 709045428 678875598 752677308 975032743 987080101 820966478 939855302 390753029 572555692 326205834 651336450 820084949 982956229 683900623 816294193 396821970 620479255 237512113 788387352 544432439 906658960 204031179 733760357 486110223 849554973 253381258 773467895 818165939 879043732 297656093 930810718 464660769 629442522 456369699 704740882 622931854 836615876 443990540 567863193 935895711 993077392 584110287 720984548 302085507 739901125 936219068 991408354 93394228 950329194 824746672 892157113 176697990 976403520 523498218 886819995 428248717 825623385 702963522 951470276 577409472 608480355 594752740 981392208 679273985 817115418 901882766 956918067 410999017 988080069 319840942 440198930 646406469 662329428 905499648 922256562 813375636 856889703 855855473 888796570 846434679 964308452 227942122 228974835 950821644 995570512 771773200 899050299 940361887 968571465 901740989 970140953 549510871 858646132 215380263 252082493 153355231 335260862 774411411 812700142 178258950 587023704 752412524 803950315 225133109 953962544 640939885 970034624 468023143 622935571 279587872 590289834 555314386 846045270 530780263 592585235 92627003 824689396 487875969 510355509 467184658 518606452 265106814 687437037 723749152 992509335 461236173 684720463 287233194 659646004 184222423 953607146 224135774 742997751 104620731 127203090 23695416 809429043 42197123 954319408 246380628 711350996 659824949 993355461 383005394 671179264 251670821 661946488 370324724 735102503 425281204 797717164 164881313 591941972 335619457 832693993 919001469 974421286 212455806 384361990 394329903 938492630 506882318 687196166 994099110 996809604 719176633 732930750 28739598 61934908 375798379 734434037 44915439 330393193 466747988 605005138 565977600 574793121 934736928 975096055 143095388 717745077 345535615 556842342 558000334 838485495 748555365 962105790 191639112 264394737 830561898 868948289 198097247 292374295 186544204 577909521 376834925 729148567 817528167 924272711 388961564 781693673 149856178 967153044 650823558 764091116 107748601 461171570 970503578 975863810 469734037 871746381 988772369 992275789 950063481 973458942 889876390 934038355 564731475 697004343 551198837 658234299 193077945 624623671 520043132 664481226 727101589 877843137 249741799 584424416 425421758 531985367 935204429 980436187 925669517 983292925 307955145 653101128 25225977 262139458 854126146 970645774 215735657 691432009 640006397 770048272 228812591 626599970 511654160 594102826 867602397 948363968 888796013 945260387 961228374 977098456 967127628 985661653 156288775 319970540 236663314 517427693 94685787 190056688 965472908 997382775 766879299 911331392 750465510 821080860 391994571 747830721 653764271 766298693 685434464 752774055 394053588 746228386 990642289 994002936 763606773 861763643 144114958 806744251 799817713 803851032 29476967 273464490 570244008 698722054 185904308 754289931 735388271 878635188 93939129 758635062 49056757 977380876 232152475 444827584 917966933 971173140 956135635 970072312 902473515 964808742 510057718 831309467 479769580 818663199 274120173 993220870 783965698 975027957 210058240 880233421 213073175 431963539 26278621 692943162 655395849 698504449 638024067 660878265 359762700 648705725 365240540 489992698 806261237 954386941 517698753 827909780 79872581 858469599 781633226 889337898 180616386 221770167 988679873 991589177 779936623 789886209 717586962 856803393 295552897 791745903 830361693 927241579 50505542 377244728 539420287 887916289 778922725 955550597 738410565 932430191 695740573 940637764 79204018 536697079 423189641 803817861 630752012 797062072 302127236 440016769 236094853 566836563 863195865 948110523 567758786 824285516 263489653 335305818 265825621 669339906 182529060 403434674 17549929 329505072 385469350 786680421 752952318 775767518 23411231 157993540 444109822 912308832 76922503 650886650 542315273 683367840 79265124 390261050 98699150 878791951 690951073 983465165 425905578 901421015 892160422 996397107 508484666 911798128 862611877 891455133 476888048 779581042 651218033 741760758 585981920 599514745 309568068 529028825 325732645 873740966 547611505 864098608 825356417 949608168 507299179 620706672 956291997 983654253 761521407 836015120 360329741 522784436 803894680 974001487 841950687 907433700 768095555 935441358 344489965 379292389 433226803 574943597 310351749 953888802 48754748 244951971 778456324 886816193 257158745 785200255 171605483 585950746 535665609 536959252 882470924 883038966 11781408 916257689 543461244 962902072 3016112 655489077 610896221 816803352 786710518 947185943 260931991 589374557 578392003 787982747 814182453 845382051 785695813 996922476 805241495 980396358 834138042 921854058 821773261 903691247 644692876 949964915 308476370 445767296 820082248 948190574 975394525 997341206 928665638 981480479 419705400 715116981 470456694 718851350 461475976 924444320 129097431 706840121 245818642 650466609 629948741 857536696 498658514 884671182 137846344 754550245 648351510 833090348 975739634 996910174 460289398 515893393 155146936 458709545 857925552 876230609 893237743 904247622 800105139 858774446 411779850 926445281 513921559 707648290 40422310 619240943 817304786 898389043 477705978 960226623 350691433 890830601 140487233 354720570 630901178 824275062 16482202 106215558 491917836 626843450 591926423 605217594 790142591 907752197 715014164 875989168 365656700 837677924 333797225 473087215 573570760 869968094 452024572 979900722 350433908 786317540 301924209 998442849 576034618 988606068 218394969 474645800 479245677 558766545 423163911 880198339 404220749 516067098 628328267 741208895 48369352 131431796 166904169 542810403 684897728 777268370 626425606 723330432 224443896 611987376 633684674 635750649 383057700 660293760 806806032 896988347 417638503 994609977 857561689 858626967 152428648 505183337 78784869 862213929 776779241 789916569 967224867 979395590 410841188 596411601 224689452 695885021 11459170 690775462 671025593 802645663 265411176 828045115 892754433 927178384 182243526 294126281 115777598 265206174 828188168 936035366 744585300 930051025 997299413 997648611 586301482 899802463 279159004 930714150 675003659 795088563 689326929 840951760 175598047 815089820 241027461 868135205 338182551 481559090 324949029 528113253 679906629 924400791 314525867 570882476 793324760 922224667 706120284 914080600 886873959 996216319 764798609 766836181 352875217 406508333 472578609 856985967 665529972 706927747 329437443 404457019 308643943 770832775 980677833 994744273 926812860 980505633 185389486 932920415 111075843 455281708 148070730 835591757 848229996 900836286 543499891 707557114 496270677 926876802 691835858 941742316 4016934 922916706 764544486 828500400 911799556 963311946 462761681 970003035 302708740 792455834 138498974 149753018 26496739 856006651 968411659 986956024 436857288 498055335 174724983 910251800 215648707 455289888 384118133 791347327 300268911 632283103 629678605 966915310 380208941 874706029 57193753 163479934 758070950 812866914 777687239 864401479 302072293 721214503 975985856 978418201 751811200 887360969 670894850 801967559 443099233 704408218 866968672 881065876 131612515 356528473 195957336 212768073 503441228 895163317 421171216 851324360 674591775 979937030 694866166 909549230 937246532 951819951 222803029 873851174 591649743 819540019 964934034 997560114 883375686 891255239 30604431 618244012 698745063 910687150 137654332 248917092 848014965 855421986 553954529 639984215 539137203 833034923 789666448 902125973 256502973 338528125 922880371 970191591 704286821 996792747 744165484 854223112 870761145 926191589 25759278 471032412 570762687 627091820 461849891 494247977 910133305 925143805 246637729 648136029 577754975 667274384 861597342 907682611 615368771 785015839 113901343 750352143 774575447 909941777 195654609 530679150 754961460 795763405 609659873 923652209 971038433 990017361 994365717 999976021 680669435 802881661 114817345 160355325 365860930 761451229 647405860 972449596 125564295 893833721 529569382 600541423 798765895 996066901 277585906 705126036 74231066 249119300 279663326 902314695 262528909 950907567 293234353 470191906 674292610 697644625 602246343 999559598 694304942 893152741 358774271 811468147 20475534 784608783 110577788 197855065 704124755 998130027 255096071 389951793 698867367 890076013 872449907 883390727 737907764 762782184 825275439 837984395 788605456 791333091 815957637 954410410 605423757 833375363 622427599 982791229 948169211 985407969 613982525 977282900 357872653 679601894 46654160 373061458 242542381 252214764 152040907 862608240 99775808 774494662 398737272 918158837 831219025 871185290 958585017 969766512 846523420 983903859 100060490 871160632 565271170 842929863 542236388 733179983 112979057 791790046 924026984 984528532 219587925 805115392 85730404 154649985 782930592 854288370 110161787 514066587 998344004 999963358 164590879 649629828 228946448 738183643 598720653 953060401 639309043 798887302 204233549 904030604 387042788 737110521 489710998 560257314 349766658 482146893 113861518 384938906 134947637 580253291 19565296 238579791 520637625 583841465 375905698 932901646 863531014 869862181 792411043 845782274 361392096 868296431 23976810 165652314 79733549 671014131 744271596 914808196 236145983 463993259 51724904 229042788 537793431 792157049 418886930 508579600 642281085 642497686 738148325 800038934 565852450 734301626 490568960 790515773 753829931 833773554 392608150 682762952 155150249 545128113 638456969 798244763 258297259 758260392 41007481 57659114 740449737 979071698 504078876 659102796 240873887 569860467 200974244 357893675 564751802 634189418 504226215 533602237 720130511 851309222 347561625 675459909 289990125 870712785 867621538 923737206 58218802 731138946 760774154 866782222 246366508 531810918 923020236 958020891 900416252 953575667 407677648 838237564 424245635 513860635 502561763 529703387 215854441 329273577 807944618 975355509 228365219 283450228 931588770 980668044 919315493 985490245 474716812 865289639 159410475 335209098 440644563 987680703 914375899 946461201 629847273 988999668 170423665 790192195 166147081 555361215 581384342 967174694 458570446 737699609 446590436 567313537 643442470 644056147 840912519 871595894 53695271 939899688 543113173 851901190 644730868 661651864 377604479 571367086 899842994 922613304 865219926 943896903 272120725 548877437 529531834 605853187 500861699 563296017 367770078 698451248 88429960 693726758 725691734 783800870 947335272 972043868 413350071 600297882 635430587 889012406 644303723 812217719 798266134 806868046 951242885 997976202 729062502 905413003 853838193 861041335 896694891 985002419 786579635 848278275 940775710 961025007 530802713 541508941 862055893 921712860 528884392 643378625 869704008 881767266 838853477 906328260 238896370 489062563 765810898 940059211 131707181 574222939 889558737 916153040 575629906 728837384 35508906 929238031 325044424 612761856 660053139 839014787 511141605 603279558 855688170 905473648 515273219 797349898 211798605 602898868 381912487 552722874 986712378 991351123 167864989 243947169 332582763 413486949 94962926 934846464 106827179 748723233 174575435 632405532 301828628 856668368 892811519 990017491 792123713 932073797 807249790 843131850 912069628 931711860 330835426 366899361 423781545 839669282 934605522 965253314 34749766 878683139 579297203 763160262 711185917 977284484 76690283 414778443 4184284 91146030 861596584 868738361 565684871 943355014 569686225 571408551 811490671 850942804 387477871 879572585 423204550 868746583 621532825 764642429 172217505 891921061 294708923 761656955 137434894 471085730 934782843 974300703 477298459 528849698 84606926 477511473 22344643 819374489 72211204 368380386 250063336 960925730 551115256 556949918 96247890 634445634 492515819 654741968 385995145 958385273 412621624 846457478 142707667 771442269 15484228 582549036 808078619 992393325 378127876 401697732 66624946 859501732 893625471 967340259 53452420 464102135 616674529 826987654 334592868 540815888 102316997 564542399 821390745 852389590 574608711 640088477 521897386 720511227 400340563 607596226 738285887 937147261 96284572 965400037 653594505 937378895 702670945 942165133 672687952 760534977 217746694 647323098 493733693 711353794 274987199 997786717 491448321 836722702 578792717 926457551 749079106 883924882 234972667 874253529 919381 548834058 125637713 565455680 849043683 950788229 14872348 355769066 117840886 392484095 3109255 745262246 557660517 752612332 195863781 649300224 219064383 717136496 887144939 887817639 570269048 925052532 295763825 301929545 816068691 945675164 472094084 660838523 471038386 752270053 563654417 632050516 121103982 919493453 849926352 977268267 407936228 468212445 241239191 529443621 246506196 830615790 462851990 630082078 829653793 930668481 335527703 808459549 478652710 548298837 5173219 901144799 755513353 974861023 324766538 919726449 842993133 959936593 256790301 646532032 886556255 919317380 645470766 990647889 12948879 414512216 122653385 510264604 334239590 418135637 915639186 922300534 110601856 712720391 571849166 747431121 202873915 223250856 997055260 999809867 947882345 969986666 412565474 437754530 706824235 869532016 436894779 582514815 953828061 986917820 897126946 922048785 469552088 574424434 736620760 804673855 434881677 477965263 469227051 663906070 766715597 820019339 61683238 495656218 475668115 875285320 662809633 756420052 519605397 680025506 850330285 985032694 354318933 682676482 143959168 629427976 546349282 623441031 478124037 883163295 322331781 996871477 349844416 579341551 909949769 983982930 8297478 655587987 351489658 498092730 946382571 951380363 83285800 733344174 693080086 729511317 112092728 505084081 760434399 761011399 110416835 184642931 382135777 851963205 274335068 311703770 109795761 841016858 635751024 846726615 579137332 869333635 895275045 934372146 103881290 517600465 233858247 965296132 254422551 821212149 877348847 900418349 315013969 486465779 860498620 959484107 287541989 434680055 678406218 926650470 609609409 850481525 651760989 958215721 894842962 914335218 781525560 880962775 684148607 962852115 213035625 645350542 948597935 953375650 245017760 423365688 460090762 952632097 828582423 846248941 404466449 657391484 985271231 994865109 624749623 825442737 766216341 942991779 797114154 904934331 151006580 682985154 603028576 605643632 65794079 115153790 873736158 911500811 684834470 984167802 629827303 888230065 842204936 921888095 776703103 862716691 176610731 985303298 551162565 694825960 116635363 442977786 893073359 985311101 158636428 858077651 299329220 329872037 205184111 937945973 673226636 850305189 65241933 808104364 51630541 310664283 217504313 253534333 642205307 729088082 892642049 952107794 463244462 671765937 308681610 816278061 754311833 876776300 356254446 944941487 886297373 987619504 142261143 321421978 461830261 555136146 227789185 412614190 301708931 874238171 12945747 596428560 116137593 722198111 792288431 831956588 137990217 611822069 441908716 637669777 501930216 668363525 800395139 921644252 873166543 945088072 997886349 999300950 794445997 864333361 592588911 613204308 323433379 589043073 248351169 455160977 610637522 901001452 775208704 866713272 344486284 577173767 873524871 974480896 61414477 464540847 549357243 668954565 746829513 939546247 636813390 643841532 702202097 837211395 395743321 727751562 766381167 792644864 331449263 761765880 717209076 804092435 995762576 999759919 4754860 952304856 508721779 783191105 333114417 581054874 600996240 893012662 575015466 944540302 607072379 701825385 380091854 723003281 332992181 603918921 394230883 675985345 553586428 626868500 825681680 927068946 162386445 166269090 499784094 517530331 258904662 631593347 740661414 890675802 66055611 221002371 654426801 826511402 17553749 308486422 735358634 763249911 292944182 858210899 908265235 958152074 578004601 628795764 415785642 574248981 941084878 964671929 535617803 750274728 929533806 934341337 341893685 808912654 190535095 226067100 859229177 985330084 894117754 989674416 238096328 554281508 776965009 925040198 186141615 328753797 502798810 806654998 510076718 711838882 430151098 503598000 465590351 632320888 690006644 964700392 718325834 738050324 209546762 610058651 47992984 504789193 900892264 975790860 337643375 973511604 253975640 998530311 262042182 315337919 83297827 305523157 334157956 885984664 278607205 653078453 433148055 609113433 424760424 952738420 812126500 818796382 768659443 927466679 425051353 952560923 7031889 16767705 403439272 746890079 859774012 933977390 54220515 919501681 103534605 590616986 895759099 977540957 127407663 173351369 656403908 980719415 749426337 959428374 247159191 518582379 700521794 723287540 369727903 469043724 712416829 779156647 103154755 937306769 249094268 935687947 375755647 476262504 561808043 915413761 636514169 702702240 738240535 810447931 181975925 476653157 509790316 644091279 976313527 979428958 60368573 968789035 76507104 982294287 72394576 164583189 654390894 680197202 723371259 739860033 526213829 909151924 16281391 558070347 874213393 881862496 422357564 787399193 900055180 923250916 142458320 652357940 174757115 435073042 927831278 939053685 193599003 467471543 329201753 690292006 765965406 976622799 235189974 669136026 339602158 919491315 209852339 933258228 364531746 915268842 424691106 732492894 166549863 253953668 750372407 925268143 163161835 592145656 419022898 747638607 309970816 595495889 813271586 877023854 394242444 398086837 161279831 333057172 846896275 906629063 422075555 763034163 633692889 838302870 572906490 902918491 926789081 953494828 218766206 341269598 388187360 821402540 176025028 654088339 163768040 191351818 170747754 301268267 992845726 994745739 518260650 677983540 530014555 591593997 805916124 856952106 986989679 998582015 394139204 650266550 939686846 966588955 956416750 989859821 595117303 923586948 539390307 618683348 84833319 748605508 823760653 982416704 271380500 696165345 945590932 987408430 895504255 959615945 189555043 459650573 20481131 713057690 494387747 923227697 43631310 201975137 98611046 405973183 301231026 317146455 197216806 249867151 27312992 943110748 506279842 625733568 70859375 650084546 950360931 978830041 293427453 968213888 864061484 869494371 890660984 961335914 465430594 634189822 873631645 999816449 811903192 997201948 756468250 971701773 788728702 977827856 171711377 683486284 319473254 387890328 147583897 344134081 118817961 650898511 722744555 931911391 497351231 654396164 219110924 308441629 200347385 384769541 880375655 996837152 654313102 948835253 431086756 727470113 95904219 559975135 337655294 926103018 28120715 299105249 679957 360566033 213738392 294560760 227930201 717364988 333096149 351749646 588105487 723072361 704299406 750123741 39668604 330604708 578070193 958352764 557960527 616593034 501990616 968012298 706601423 851294075 755576477 947421677 729431490 888758696 854808232 868410399 788584081 950154448 801783033 879941997 531085467 658327570 883266931 917584717 591799342 701972306 192615084 411540043 120620743 514319586 403875719 892733976 129397811 691910241 938945911 989299823 78902147 554515807 366741347 678658168 958887626 978787247 110558896 417567208 710355671 964326604 221116037 494538287 436725939 851511402 273658021 959483141 999181092 999753803 219628038 443287422 328662889 882004968 779776868 795629324 267292927 929784589 688749224 945138655 142536476 255114442 610071429 956250243 588196099 756952280 864287727 949523410 569149273 800849606 129030607 264737596 224839223 626718917 758877764 818465606 218092286 328619994 778811317 839790497 251553067 771805458 230100903 541898254 322813347 955017751 757616523 942983990 429530090 991050816 787918842 924420042 4189654 673826962 275780798 847759611 694321095 778486322 990089411 996766605 836052874 881392624 51544337 237012467 534436572 853928591 428176984 593309932 438673439 525239945 591512918 996185084 709346980 802846953 123147050 293694915 93684591 846046072 869182237 874630783 440882906 801199292 22015913 148123076 574955971 968131460 451366928 965402417 860372504 932999288 867450416 964761312 495589021 774906476 606230107 906530734 18249169 850159571 533685996 989054558 327904078 660178102 801764273 914185540 9647973 90876315 706553179 941522416 102088539 762921248 184076631 696404718 317231571 984633269 666068312 787217435 885063235 974311040 170863918 209109914 928197386 976668357 15341684 196681335 485187941 598779992 825215399 837611774 787612059 899556535 257474153 333522680 712846985 811570006 451676298 853894158 160140660 765379469 932237383 933603167 256880705 285984056 390600577 940887691 944659851 969820465 834790280 949925824 753175847 961917146 483328060 618894024 198479843 879893257 366839361 386030163 570905201 640921698 19764351 615733668 906759253 932695125 969882487 984602167 598159185 911082991 965996761 986981593 784639907 984395641 744013282 843150840 203145343 591499853 819895616 995673936 879561551 950990052 767389227 920845466 449443217 896239420 133825452 273623005 793323174 994633191 300437551 404468835 445198498 959305392 419707349 663591341 387842940 960825698 304242089 629439509 867586757 926243677 750363080 824556946 919780886 988086298 184501095 200447298 762554522 924365545 716674356 998072251 258946436 293064025 505450935 741427489 117890005 913890671 72809470 670649382 807455050 961344649 967911455 969475550 594764732 670278861 294646197 996252554 492667532 839902558 575859533 805403539 570868906 784357784 432577145 498896623 338722001 349292046 464798750 672856407 638249853 735702565 866063328 987165710 167616173 952854926 421319115 783045109 792112262 835865201 987969002 989184971 468390275 856366978 197654350 434941127 668746927 860798437 571820876 973899268 794381086 840647999 832537520 989077434 887213083 896083032 976209546 984610632 482244426 855174152 795018501 965288152 885262880 921681853 45959353 626096602 215086028 667613134 242683684 277801906 849735958 967133680 447418547 487573615 344638923 729536551 74013589 652836712 625902902 694005732 519421318 692865960 654960864 953736061 910300302 994026623 914474120 969403948 572122364 616488444 608882159 805971975 295234384 620010133 22368941 635338501 961262445 986625624 289640762 393976364 902838461 906054411 439874259 777977221 809032023 999983488 130151422 933955793 560788844 967807244 932575710 962609514 463646481 760039341 889539458 928728021 618636143 929885886 407253124 714449597 933924090 947734600 597886983 997705642 34649444 691100223 372131198 917529260 69434382 100311137 214854675 586565276 118699395 753841025 697849731 886172718 760654717 943040069 974475164 997261145 498381188 945105700 833473406 835914068 638747867 853293524 525491306 941205543 596149404 642853883 269588871 620746690 912556680 936950709 304768381 474831245 431528753 694467651 148217028 658783533 984581217 989524164 221639237 739848579 764200340 969729133 535160146 707956176 568263597 970817142 57205161 204282736 168740885 519690794 925049273 932547273 491390879 650472118 745978390 852440563 120851360 745296014 846516565 942084329 502062289 990078390 252787325 633580136 784067335 992587825 303919741 725080909 934730062 994724830 950826653 986898139 66587257 158177762 233184614 263297970 354842061 932535832 374525136 680708913 180703947 334806403 648798811 845570615 409061539 994236755 601798158 705634524 746755334 803744130 710318860 988071621 219744499 860913632 813094534 897667632 551806310 759689324 379177015 389822906 295830650 905847501 770960864 848437919 917570194 919790065 211053226 774578180 249525607 636127165 195558921 196163980 894723582 952076858 517614523 700389747 2043387 620935468 693346235 853006678 73702847 342291167 388207497 909861697 918552229 946307756 587572333 862169280 911236680 970411324 817487231 985242241 893837270 948943420 898124582 961319707 139895739 192225633 103503688 155908342 959202426 997496589 649553011 717012774 364269083 941567171 223891682 803790627 865583706 927648345 838061834 959764765 854706982 895700677 946415683 974652590 358940267 728559345 509452303 912889611 316700460 414833560 289950775 384167017 603107756 696179992 42882004 400911606 820245844 833994276 988669347 991749589 115002923 283250403 290304432 582526137 243420110 853452160 652173423 998868785 459096065 712887475 221579623 341632659 79180788 613540780 850830097 945523977 608692057 875839165 238573229 472385029 495926916 613039963 611186014 829539762 321900561 491201573 66609271 446640348 843520391 946989898 878425455 884255445 992157531 993351171 873720219 875138421 376543379 799757357 369813419 489480759 370706209 819316744 729220457 751956257 956288361 987401287 13927331 623489337 264081862 931383820 241986841 408530493 397153603 430875179 575672111 841674079 311720517 633951838 997844043 998090004 127861928 562209257 174220923 563958865 780402179 881745345 983380886 996768087 158543094 473567007 76181280 772113294 832243388 929738304 975839675 980881965 178738596 760335904 307620892 534266900 39563843 988039682 663386948 980390798 857959853 865542786 46923536 644853227 588265993 692141017 872033206 928332763 603041678 812695833 932338316 990704715 630321449 655721967 623945823 667865187 557330368 865132916 208114331 332670047 251596182 369849643 648811542 895365469 143132218 988791125 308209716 591358493 866965607 877574355 795060266 805578527 887580576 906830298 928676365 939219778 346916836 979428055 215920525 816151267 10282874 224066936 828041230 872884515 8245772 718267253 743567053 778275626 88807512 588577649 235567605 475355204 838832356 903158495 459192661 921216141 736769453 981266394 770787736 937336434 268896420 817940711 348415883 420528356 885716460 907141086 797434273 994589238 787051669 944280822 445180888 968660586 518640517 867386096 437175384 792201172 285496154 608214163 374447513 922903326 870422458 898147845 701829370 744500314 853574698 905955443 236235591 981431078 476286997 672588645 49782191 657874947 177621364 568012256 993912467 994922391 60653543 873238415 605419231 867991240 299253941 347692236 953477097 973958062 621945288 833351287 77678686 739611833 142773067 456598126 713901328 898504020 643516093 901050460 560877311 723449625 655792185 865104594 865507790 946513489 187432231 799931405 137077283 597776427 384870095 497664566 747581592 880980446 988547857 992499739 672420276 827498626 709556885 970365813 744940705 869332195 543780335 717828807 264745339 771012258 135253550 219087429 909834561 977702933 589081664 753904790 453397349 872376256 718701906 988178762 94203390 286550255 162852186 353116493 124736449 737152991 843039561 873549807 113763393 399750634 437482266 743878824 212385563 626005980 633820669 917287130 759598922 809291853 980693271 981625841 419437664 610712320 293649657 888118162 952885908 970370490 767646470 830092087 899507538 990655004 327614104 399553814 959637649 999495339 383974620 979897303 112902617 740651136 896652481 999530035 943708710 963457539 635697541 812493428 959930830 980192043 697841755 886298951 999977666 999983080 264547705 514536785 737847231 948872549 100132504 486995713 677980629 972007838 926437542 959171093 118860061 128388261 962126323 968158418 675233856 949674558 182600351 506189551 602550129 797885944 599850476 717100717 405160619 958775959 711037067 849286925 551611668 971089113 343205609 669781869 760360516 933900015 671282670 984636183 557096263 911334503 431409590 854875372 500558137 916971264 257686507 449735747 26863510 482336083 103071699 676072599 147623883 883334474 125496972 203062612 310843211 663800827 21009888 182474968 398941251 455033143 596028307 617343355 755098799 967018480 87295701 382903709 420663698 925056117 749993234 896960375 576198558 947061633 78516879 93558075 404549103 606645698 145209105 704050707 45327154 315078507 584961657 880938101 43910763 144417017 376337539 436518124 621464433 794020501 494835948 682441368 128779399 992802619 169038897 454799303 471433940 942567969 63874954 701550683 30219354 935525017 177991656 844856221 309557013 497054315 72149610 743720946 600363098 851396988 660824327 881733833 601716616 738333047 392176834 458170474 763815466 781224348 198633382 341780646 936980644 979353329 573898311 769326095 890060420 912937632 359101653 579095083 544185264 747786029 703418478 920040277 210493217 363195362 342453160 658679088 533965351 549177131 458116253 706682464 375614713 655808935 880572169 985927406 498730782 678469315 305221010 813443115 906332268 921858627 177753990 909422188 695321313 869906870 125109575 393019544 778981378 876311379 571661415 762051940 286926377 309844093 239755428 304747450 969493942 999938333 717036867 808105191 717324973 979993066 751061427 931307750 615729843 954850232 461443410 799072333 593401184 682393165 381513828 965728192 658097144 765705781 645747968 772412135 343938359 728835683 54590009 441461903 500208957 607301842 532348950 589753920 943013741 959688272 583808051 624387807 380596758 854348990 535924954 619672934 71496180 527687842 777767124 998447695 887319183 911685786 681317378 793190095 604985067 838093043 338125812 844920593 557643317 601362699 906330350 948658684 109645095 659112798 123212194 424955685 859901330 891823524 983651536 985072666 988936173 989341382 526741109 969277280 837165495 945184630 208126841 747282551 894365066 962378795 265561524 321111512 713251171 771762489 753544001 907237841 549121138 626296875 220787370 244560877 96426092 443676363 482190806 843383088 799630795 932352928 307985630 325976066 449380698 612366860 164452042 190072924 171807544 362828689 757592664 973666977 88969802 362836937 475952010 827907053 477698520 837673211 304050396 369657604 92290331 469651823 716698350 822841911 138679982 808651300 664828660 829003978 882984906 993260759 344851221 577121431 930510636 948488385 505583745 847078602 56203398 579735753 500280972 823139268 250980679 277275973 973629986 979266412 161434707 720421069 677055351 735871352 478825424 893353296 768527985 974194398 86916388 808671952 162912479 476752926 580693517 840725456 27649611 106272103 445348933 895805232 325294372 507267050 965533573 988865054 44436519 318319802 801673246 947933208 21839210 689510276 50430880 402329696 674817983 762773568 540827342 847621838 547281358 705729305 944619295 981759378 995812525 999406093 868472257 887924205 984901622 990303372 458565410 704864324 918335981 990627633 993831439 999704860 873279329 990281791 133857498 746310691 274512896 566062569 238108975 593839942 418228154 883479490 940429750 945543406 473600459 789908166 238118840 476363577 786569194 884625050 926190706 952484709 178255344 927445631 73605780 688972016 755518644 993046125 606890179 766892401 6111082 474588309 141673798 849561106 618147587 916367801 760000982 778569224 529796529 883758801 358158019 921681556 501055051 585881210 910459929 915074913 529349971 614708836 34951461 134314913 854959153 903350210 655716818 993100648 906291712 929563739 845906078 946096704 369752183 381917663 985221737 994891969 412432375 664108698 845078024 845778511 651224654 951725154 118220867 971982434 568429500 962368570 813418256 928057052 761240786 830334291 793481721 907904228 700906535 864931879 881300478 907789691 849676945 933808652 7354302 545595349 995654327 996580611 46602407 168990366 741063130 850040755 750758132 807987428 679681740 680763533 68494451 775516054 133463951 366748153 934779724 975962739 888209226 954294358 126281605 695166511 930294858 931808750 232116092 403454408 253415300 426749924 201320368 820391630 948891231 983646625 407811394 547272571 358270144 875138264 671399859 853890207 470042804 638124390 147440988 267282901 726295333 746339119 71292624 487711520 780348004 788657685 338398244 430228358 310578646 470256533 514504933 524925966 394877687 415752850 486412981 853245936 543621174 742347062 170155485 857051215 97366953 600728547 249526137 258075096 806442129 987391899 225083160 702743308 495008727 663065859 60755268 189301593 893490254 960254505 246336814 750800912 321123062 876068406 992229518 997105738 392612740 812453952 112944888 368818260 487149002 854011483 680065801 850612893 821732042 963186035 695469501 868905948 609277010 611199723 302977407 601998269 201914677 607805874 183605951 630327939 858644021 886079214 180895175 403211656 588772599 926211652 607543903 677956127 894993482 983321595 661045349 768565990 738848116 786183505 803380831 900962456 411500391 981007500 831020160 848580382 689196031 772683666 757588788 997238073 474276842 894245890 89899047 95866554 112849838 532523931 956147953 968315959 35774375 126571247 610045499 626480739 897594620 957257773 279694799 499715398 315817032 703591444 867957358 944522913 250554673 866015445 265316083 279064905 667793576 936404186 242893629 265677748 43562182 766362517 116159699 805188539 461482591 863623811 187375043 752836154 15013277 928443513 467445089 847594257 780557629 891945904 605366713 939815953 594984300 868019436 648994227 777612342 207253041 563735292 256945042 588280997 348978053 879866402 544263377 843688140 422251926 758696652 388181 696611638 261127810 682567711 582780013 908811106 772009398 783117973 280375095 687681253 400849826 585089020 318033609 511496675 307413094 943744266 119406870 630363493 813140731 879907295 385989589 741072051 260308786 277966172 974641792 983557317 883366421 954151209 652600615 831966046 63050888 885668553 769756765 900779368 652299674 894710791 738301947 827783849 791056907 858042237 302677362 463882921 83664472 711925382 654970940 854218434 725739227 733438255 774080764 844480065 588206977 660122555 702417042 898931409 788611698 863290771 252094938 866715661 484317522 896045284 654316130 717257487 282097858 875905778 236168413 617390810 844925853 914301534 502673144 915959666 345855438 414727367 212685306 535834377 94930762 147925979 887452332 988180051 564236407 936096642 129348307 693153224 621869700 639377697 690488101 700784228 71901514 931133295 324371148 923271241 657721540 668271261 970795454 976820031 684183126 816435725 405424488 842110628 517397852 980314482 191211039 783529648 462546336 688996055 643692746 890155351 853618210 992844946 247562820 643501573 229463664 922782252 668305199 748112256 695030775 758026732 99779407 726298871 295075761 998149351 741857598 900190914 25275829 999692202 438337024 547090470 591288494 837438855 310503892 401735318 112238825 431818274 34578689 620330019 700220056 886263517 371648021 396942205 222932108 459725370 143260992 759125906 408341255 696781968 812207759 835423916 739870765 758181047 243237531 338535826 162828668 824499899 226633607 278355371 641344586 923142738 133855784 704572921 212440526 370553295 223943847 756903153 964025344 969990793 76877635 698679229 188192541 701937115 330565188 365462819 580066532 727422124 292356735 853540518 44815654 588223618 871838278 965049035 826161642 937255866 354188372 886831639 866423724 873994098 794635495 816072111 975227660 976645421 58255211 107036405 994080045 999844742 675266783 972340160 161835657 402583637 107842347 203354513 301370358 442177666 500061939 797813167 410252583 576494962 198496585 983482774 623932208 686651776 565541212 659491208 615321626 710332823 332051781 894030795 177680750 246952252 383443786 767035742 649517135 818792988 411787865 921049294 407808535 661913250 752877960 981338871 798913210 966711040 472105098 979296617 617437375 946328408 16794100 856321335 344540197 862194459 895793856 998278039 858303488 868825431 560824692 886976911 208525092 299317167 635999037 812414399 666386060 728876544 329828080 677727003 59456278 846634489 437887492 451794315 890042347 970922540 747632146 785106315 437432172 979750500 784481807 847067342 423115367 901701430 595551171 757494053 402761293 665524875 120895 632445173 750924307 835432203 383406499 849777243 303466247 630706668 997101567 997158027 160613395 317426830 271832383 358952754 885954694 910057906 875125135 992474719 594094693 697031654 108817457 870456807 443330484 656802023 430516263 948474024 579672676 972125654 366529332 722329060 93637960 139993863 727758966 981722035 909216055 972751751 380443121 772808312 678690621 843371674 297219393 337460048 424672415 706446985 818909301 988831939 310968573 729875193 920612705 930812341 675636782 724562117 209646785 656038890 833995838 937810196 617053777 957979653 786872 805991822 949848060 964060127 524943400 594888336 17878603 924028064 481437274 558288531 113624754 778644095 389683158 967715296 661544474 704134572 958519586 961517221 224846610 925771048 8649279 8889818 991259650 996891720 138556649 444504788 765238596 768356370 596312937 935415059 438544476 676201349 168473626 506926129 182630285 845464565 621554667 706392130 91305547 614136691 87025971 803169728 168398018 595636815 761773944 763589047 944548100 971595035 723770012 966578573 89812472 624234071 840854269 968231254 486251157 645280196 916868296 960205767 655671685 663309926 975709472 994250617 665827685 925287629 221973384 340973302 475700397 885047578 189877077 740473449 730297148 995357346 336581802 599156378 168487701 660907639 308621974 420345951 724370338 729875350 823151258 858609209 430969677 937999692 828720859 941147629 842023114 917938575 27557266 641264010 726344992 904119594 262553522 522430115 15003849 665283613 283613547 545189275 896244723 981068085 312764500 684934706 386158850 738586699 801116106 984441640 16098790 880196767 533291286 813787025 148032689 591663296 694461332 907075128 253976632 488536356 883074475 949421120 95986370 583002699 363203784 760020536 458724673 599446435 306036507 828047195 222104090 610339509 78855343 709799143 365603516 469545330 362321097 989756063 815598649 844211801 559634228 747423324 165614442 605957202 149400143 485280212 539147289 734268608 542913597 762804594 588984741 630104689 868163232 996114849 833492714 835400917 368483181 523766834 299656483 970891498 397496823 641383084 389356697 634654651 829244635 845117755 904275736 935504915 338421453 824318973 871646683 872816345 799845096 907781135 319437172 504868083 388032956 423382141 775960496 960488519 729917379 867880533 928353222 996620934 897803825 929701546 472495010 720079327 568104506 681260735 400405745 634111853 749523857 863723309 287917207 746597969 43967590 926239764 305894592 357296074 970077245 981376577 305892744 979805144 122345188 260510655 959748246 986883537 255899332 303646796 942971243 954508827 176925655 380789819 694333084 814757931 64359312 593938737 480861919 525121296 575283404 659592975 809280379 916075059 3935948 15422072 980080468 992155052 3090992 528033668 212096210 435059091 740608947 941851856 926023769 926656292 361213304 623544272 112089420 419074534 85212409 255884210 709814042 865453496 522348364 865862649 346334007 678224380 542730410 643189843 742104542 823704459 246515737 282443656 121342716 684685410 277868877 809831321 146856071 188050948 94190827 409481878 156834753 962429407 883604313 990095288 863084598 921594156 221133809 417964082 720921594 984664028 690983018 789710985 295232768 421701784 330348178 671538164 356036235 689305149 85722680 840574887 674799650 783318751 684920331 694132016 575025139 782830401 18123006 31727381 242315861 297892280 600166995 606149941 38370540 592962774 596384139 930104686 238663562 903654416 64981500 354488347 459464632 477671768 255760446 909912599 427754222 842716990 321923973 554346289 849066513 981120589 519681066 704994196 514197786 751067184 600853087 963344394 295781194 846381477 608784733 901823190 760495289 935517799 271854935 605114692 711718603 779647023 325093762 614743598 249830772 385269504 202251884 555293422 9790916 931310575 640698486 645479621 399308139 971420840 833613419 907563894 978194092 984557831 478170071 715080028 186597568 560376680 965492110 996562276 759422032 811731739 199042793 371250171 905827172 984591173 557346106 870242219 676063044 882041231 610171523 724620084 965381198 999672115 129050034 229178549 456735809 528748845 758531065 827288705 740755934 752262017 850026453 946354442 727345877 938697435 293827112 313201065 196036299 429977222 556466048 979745376 779425368 996290925 140145721 596949563 754520723 889847695 926951127 947759894 285952360 407498801 879381708 944611899 232029665 536808880 543910109 692557327 736912042 837871470 801732741 830297400 784644359 927902435 963566100 966600508 403991985 404524388 275532025 991736271 323512105 607833298 265158293 886918893 514772570 719923797 4927296 518531188 348180819 745594648 772633033 798536157 517448879 685070019 297733991 973101329 263075538 354027586 880005783 922619108 189153358 905424536 26623810 217363618 953204718 956348755 886074930 967775080 935514894 949441747 219463877 622754667 345517648 999779033 21672733 377946376 905136324 965684762 519052052 773296028 28960482 706559426 298703700 895018196 572101256 743266809 624518722 723468014 592435318 931637360 642831765 733824436 846180268 922304753 943893382 993879541 459716928 675596390 371676632 942660981 866345499 977336535 883975759 902872767 334501564 747959001 703599898 807992407 544266263 887725575 482819312 638860215 561839391 621529357 486375327 914453533 462665506 739169668 852514882 991399334 43874333 942014056 512602632 985786139 567762877 812662679 304047760 740446778 598366584 830352493 441499322 971770686 940993928 998208238 679069811 907784337 476316229 976798037 83536963 892330193 1658129 53067743 827970218 901442470 611318431 898270433 303877942 792543456 54294513 631547296 620118560 699435046 222830171 531783846 187782751 922945082 173401652 896875699 878656975 907781729 381303994 606625991 232500660 663906769 196267940 287305791 314454821 979885796 260310886 850232845 438361314 481292612 913068975 983883855 404852349 900692870 665219684 798256987 181677433 421219632 913296792 915461275 690181329 754847627 482267411 945909735 147292360 943874862 708683521 734228044 127694722 773628632 507192849 983850886 319282177 487316494 713759958 803350909 193245294 461960898 630255561 806615978 280205604 323749100 601669448 833229775 260892952 264070845 513466059 947553729 329354700 963904884 230795067 326733075 388686737 572512357 496126699 840766774 669141467 978603084 764673384 877137406 298053778 538716922 533353721 824096909 373979812 591083795 668179245 984654446 352595214 460859603 152484977 283802170 550665943 779525507 107342024 115143432 348953209 787400173 647233925 924945340 821180808 909299234 587510095 929013841 1490982 685270514 295577000 353050188 92133396 119230708 967973503 986766292 911395601 917013230 441678848 580508034 22333178 782604647 970237542 978169443 409510591 573658427 2663507 868611368 936057411 946349765 183945514 265246265 132919687 244855504 51587148 571650090 502301336 504880121 667746200 786358727 874823614 989807256 408592117 924321881 540400018 655621930 92540592 207138910 397482275 517836979 493576450 762171827 709139282 793139870 455103659 861956547 105981712 812839507 271205993 345754553 545169962 769972775 767753435 994213916 614420616 783426981 137280904 707089418 606695389 968427456 448516191 461231305 339268661 873611633 155818186 476462029 624267328 855819893 744430151 954331961 881523602 950002798 500096337 945215580 726506292 946717709 392827296 785030297 841256959 886422919 425445746 447383694 535579273 614802872 607404014 930400710 345609039 500851913 438576571 855954024 235024554 833412212 394463648 843948170 84298765 178742115 200385149 727851277 953159372 971668631 485794777 853751863 893575232 938174224 612811197 639436842 834910403 994665106 756063960 901652910 170790652 878901099 936056674 939852151 778250507 945176143 865595813 910460394 743893488 894561014 97938576 866757039 921962549 995487850 773312158 970577246 546109389 876124083 802501090 849622340 501501007 795991465 456205605 941067770 826706112 869159153 999125068 999302363 739685784 889369058 538441689 830321958 313965871 615814371 567834775 863525121 487830464 700016165 986184149 993755152 426791909 934077314 71640525 918482361 837191027 980875693 382983887 730297284 355163534 485224409 869125443 968397161 445390930 757102693 3947875 630569819 58421409 684690715 976050693 991594927 698810788 968525838 697890509 741511848 940315381 946533176 287832372 290650196 637833632 847658793 361820382 545356676 140251394 378360838 841407877 855442208 433113260 791601330 730984246 998996410 74079553 318606132 946020883 959954747 226440427 328357598 434165107 461443913 9530871 874318734 426143005 452253239 550897172 587035652 522410081 802356378 318766076 390926289 645851120 740562620 542702394 932644574 75718667 826194764 255145630 966585509 143147314 296138031 815570407 899905844 220899985 367580831 901178673 978380054 92243621 277261936 266066667 609077480 900307414 994518487 571212137 798644790 765063357 930715450 13285872 439297417 823564808 914251826 200686455 971589448 934768359 950009585 734157437 829048545 299882105 777676630 809704092 836265659 36848765 361929801 993011947 993462355 730417116 736038178 797626028 846502849 404311961 718916102 528077919 729342087 596381743 942693922 77998095 218540984 85677162 777925982 713379829 733000388 380814440 752016253 117954640 585204068 766683556 951496419 407798858 517291785 431723658 926097665 121951168 303710721 89698586 343333744 937703652 966318139 825260183 955952886 624670205 912901023 417879742 944180119 34254590 578556034 53311900 947521075 840252440 992609654 522109605 701041865 121343803 459289929 539969158 954990771 393895909 848291759 609250363 875634385 842042398 997820551 463579774 647518984 557067870 761791286 554296592 894642222 280785580 939524396 560708787 922857792 844699539 986368268 962816697 987664138 183667316 516531340 360707370 898422113 348209294 955887859 112834658 989686715 488044494 902388248 856530792 967384496 15282495 24765035 286874951 840170344 26519795 631563974 192334940 754410482 186942525 336890817 17617716 688476855 596061091 705820140 563406142 723324145 841722684 927240535 688220903 907081199 301493668 939775324 396737942 582605867 221161070 290283032 6316896 304450068 581300626 917721077 506239804 752635163 331241199 475169389 899186239 950602520 604921703 729836421 507507946 511283050 529326205 673020665 210252573 613819716 321691387 995769183 294226324 675295348 603666 670531379 13569605 383838060 627654524 937253643 643625105 782871022 532808723 563425595 547066081 759250188 627659541 684984732 62519558 136279906 628549055 979147805 141717218 803779696 970948461 995457070 879316563 881140655 320813030 535678774 940961919 957414882 106933029 789555224 690095402 929513236 754478507 977576415 634416291 815870238 814322987 817529145 10706743 317574860 518395674 624077689 560193435 761607902 31838079 808342911 300892749 640234338 74289936 344056044 367660229 758885827 735488947 815740163 247643769 606693175 297816991 692731447 81329052 356989678 703185258 761731041 295899167 980120591 215407359 819644294 715474419 731446153 331234034 600831324 276770783 432336992 206746645 243678809 628546179 878442741 559085989 911573500 593956468 923122006 378558321 514732093 124447889 181929831 366640127 834751781 242852923 501866531 362091622 709559756 401059990 950705325 931553161 946671564 849512386 882770657 21197634 489758137 325038309 761715373 115210649 380425117 436961021 595081696 173244422 444597788 294837708 753548797 397734959 808377203 442830029 502352346 226030726 277885066 473373621 856236206 229644002 711571400 582051366 625948358 47679031 82190463 550191337 582266877 371061772 712523573 982781569 986633115 39786062 791020842 879903469 973244617 421915132 669873540 334952335 390875984 438689570 598055089 73171594 432423660 680762819 932640594 903169998 965255890 230588143 795250674 397390438 648613715 409369226 562293441 582507578 709081730 617451885 737066288 783518901 786249498 127948857 883922562 232179567 281368745 380168241 556657407 842232456 975101248 530638317 921178724 190035926 887054709 161774972 422142961 418193160 718647459 542263051 927929997 66428425 507862284 695962843 887738144 371012390 481774353 446630384 845438504 275322801 558993721 101199045 856163356 125623419 488139511 660521191 706485465 443011165 955316792 88061481 185480137 498684231 716355585 913979847 952659812 700543942 853240136 306650634 353836686 309805592 812280667 930169065 981407452 198540971 727672135 127099679 967803468 86625820 968573687 634976192 773859436 895936200 990028841 705201880 970059405 392832597 397303030 883903852 929680998 105532930 226233908 204137066 826578089 363071490 959903363 75598395 450386817 478795998 958237855 477395211 756741765 740474046 876457987 829663287 831325537 818108679 894684355 415227619 910724581 56370881 632249158 190821904 409297920 448993312 747247914 902695268 903959808 51266830 844138650 813028783 896316856 169412448 449635091 975858335 981141466 331724726 616966700 442661492 897321877 719638596 799265045 103104889 811507185 331030425 796351841 604464120 844010015 944263772 978585900 27625690 486721102 216797299 467976816 125953405 775827925 115789491 143120137 422624242 489300046 308840378 673112347 26156399 395177241 474707207 907837333 443971309 547559628 793369857 996605906 550773799 703129626 789280609 791920521 573884031 737378784 47221716 310778937 862394124 974901556 780546057 961475878 818031232 928889887 659766104 958098648 119988589 210820030 485395328 532461713 737265064 952318970 467627134 847180666 439589909 676775315 602366363 993967453 463883718 736812507 39828189 719002755 266106729 268866725 405274848 815473162 449188723 727432992 955026745 963149622 125212813 278055994 717579118 857303119 922148292 966665938 698807978 906259515 380896474 942930475 203729977 850312887 133453673 181675155 542590678 645669396 790387220 952099818 96076593 468705607 648011173 767576090 109813932 924609937 296293178 578247631 933311867 950788046 478193350 678112315 168917286 799827087 689231328 697037788 7983852 908826447 94696117 775930974 151078248 767468544 118272033 347167707 104163265 685920157 118739282 948431543 392504279 728309946 478789490 923653011 932608967 984055214 762136117 773016218 509863755 899282764 81271465 82627202 855957414 946295165 101657367 311494687 534861543 938653820 398439414 502160889 730054606 756398131 195157458 788705230 632454324 696719069 622617860 686433119 11570531 934681314 707018124 993938260 672308322 860003088 810464011 907920160 901982344 957449021 116566331 900515518 247986548 275428572 783367535 824370077 182065114 490879195 389802946 588772647 319073948 349678836 342288718 893594448 567265133 998110308 9935907 41732429 578493235 736129531 368149032 831889124 676912579 977741557 131643394 290858472 438023487 588234553 93477153 542827420 723687558 978942205 411723422 876478819 253302390 497268790 266497613 958721970 123038310 863698773 377513309 934436147 595313458 743493234 874160756 954585079 265383835 687356898 761775108 783325917 779017309 965108297 593436422 699335845 167860882 389338559 225291453 975017078 186323031 701989693 57577309 872591415 792075404 849002872 76036444 971785078 400974011 998861748 533966064 983678147 889704852 965614203 515962322 655384178 549548272 816690248 781395397 866455033 244188849 703605323 95077261 703702546 714896451 755409090 757100227 811888396 579590709 949229599 654639416 895219776 809180132 879375823 127048985 570034529 593796250 686424306 244308160 437932716 669508877 681351467 847032727 876397433 360395055 608994640 54955148 275730177 728325323 938710394 282439140 992773210 216895814 794742005 999126276 999968362 197506677 361291821 367783358 602700974 781686177 820232698 301013874 498462324 754887746 756621547 331939745 726313182 678200494 976413324 91184890 581181674 322994992 641088158 435712620 646172661 392217080 670427741 257384396 418518743 106308683 582660996 304635790 608384295 383828752 930492151 931925822 959269120 27295612 124043443 654631755 902995002 823748652 965273336 651844618 810759669 178808339 956207549 751743934 955541427 324892514 667514855 980998866 997089831 781023769 918630293 745959734 907115296 810006205 952651328 278104144 546551935 321567878 549848460 639754130 940959449 129882213 932359326 774607204 873782971 508809596 562380995 897903737 925606060 345657483 423271855 164496125 554523500 387659710 996222891 528021913 644467547 973922437 999336063 625855496 763713914 147328765 882693304 861052217 917501932 356997869 681559239 486700796 798843343 172893525 523098284 414702722 996941243 830480200 846738701 136263904 943199294 871964938 877078845 949447088 982957183 968990307 989598568 252078429 867593731 227956211 484855613 567854757 716975331 823479296 971235179 939225790 977243971 752124491 784581627 358401451 559128933 339918415 537328109 238940829 653629274 359562003 414796393 4487551 527062027 988509220 993499085 260727912 893183462 653558865 831350007 386002576 993295809 847514197 928819163 315586771 833775119 777527537 888094667 996269242 998381422 999457166 999729864 970399149 997142541 863936798 881460861 7540230 272533270 880001678 986037352 632769633 788085895 357372557 652174049 929804669 947591836 922115723 969111553 851106278 934006831 349581016 633566537 780058252 981487667 714312234 845981215 527294455 799574216 676394379 679549298 595944803 682316335 16487715 572484556 557400493 965661916 977088284 997474913 222449213 373294423 764010406 770601458 524331342 781595514 621114137 736878014 566560253 929742174 455266327 896815896 997236511 998598125 950178719 951861999 651233054 881841405 334989245 337709538 797729002 813753914 701847137 738789247 828361780 901654440 544713354 554627530 619529992 768270508 329078846 884606639 55229166 389899060 983680414 991452229 666978188 952066640 798065460 881637734 47633230 524956569 841759950 878353521 204866025 851103252 105669044 999567957 450601733 499705679 668456058 890960267 273732617 952778673 71506063 431052793 691215477 871276814 821924031 834579198 737101816 938609353 147712784 883666274 907934625 991256966 969375642 971694995 675353902 784880997 163514084 436351301 392031206 760494746 660752844 703170997 395873182 649228278 50306893 615403710 539316471 893737908 434322570 988103468 146910834 259511294 187040477 828991128 365394872 458513442 166557015 213020137 576371657 651951334 682703116 826614310 184160324 901565138 430413150 489632569 413957104 429000560 578315704 650348305 88130593 542907135 59978628 452489010 109934599 307167334 569110185 826325103 276060555 445598787 838961716 993820398 544354601 965205735 942238109 971603349 660026402 672059626 300764831 451085484 393080130 719842271 63340264 840969002 467965322 903282244 800378285 843007123 766235225 898848046 720622795 782820418 188675269 268837639 417607423 994550724 239522571 549385802 552112335 895400494 694759867 912553171 559220914 585604969 101682801 992222096 754276128 924070886 521932688 961379594 626221526 662761240 482679181 575030193 509337680 659483661 868772521 889678778 670591588 968032175 926936274 955713699 677942023 927967922 995295420 997704871 615789203 637388073 183855995 629859511 986855335 989907911 319041465 952578658 65276601 726148584 158366272 426732078 451765065 866022088 28451521 793943088 408841320 582158274 544631379 651784530 627137894 648657813 533237624 901343478 159117535 661341318 318873110 728466970 838059017 857227255 745748189 863150491 255371957 788191301 672929184 984578484 134654299 995681331 592645913 876658374 266717844 906369334 421025972 792507885 876009833 936755163 621747993 896332034 925377682 955244170 34729659 523722068 145594591 238230802 869617388 935677417 707086573 725172950 602872382 761379230 350245700 691130582 517010318 857417046 113790871 375806542 203748044 632317528 285236986 374963587 76427512 716402042 550764619 755287414 212360251 469150081 167242189 530633345 970441949 998104159 460909701 775130263 569380665 573831256 336770374 721726196 665389933 855774508 272500807 640226181 311138975 994066853 903019799 992959678 741794926 823423667 885223820 885594305 160838462 519144755 551349330 557612420 182598052 792122412 532587825 923324654 901076400 955777068 974959657 976195314 946032954 968875140 124102866 427856643 950408346 959040539 389515412 757985312 408241553 746503428 130842944 206821349 499075194 870057870 654530368 802391486 817113733 851812162 409013719 719462850 45722882 823828349 381206025 920013052 767336500 832656050 934756268 980857729 987421730 993015057 6111962 232914402 721392845 986209039 364382228 984079538 865917431 868453867 683402402 969391328 364616785 717373381 712286159 962901102 762889816 824177924 774318095 949088223 713735660 932649856 977947184 980452544 871697654 995378148 819144173 954600070 489943407 858452675 890076505 905714430 885967403 950642387 883054713 948262415 439859435 626915129 162922996 428612990 589451979 807651209 427269401 612215798 990763692 998631461 690363275 859831577 36977806 288318932 915622456 929850833 422935835 426003803 872530029 886990266 54061274 324421814 594480614 968575446 175506653 464339392 739078055 973136068 712676080 907747069 471049317 776058587 130474462 344370166 856038517 886071372 491691141 964108129 420972703 826588127 493881471 801850063 217177053 366666828 797791335 902209825 310673377 833444144 663834119 967625215 657192342 868502466 682881753 978153994 570191482 616698991 346807346 493506823 868277890 910857871 364195572 550339408 94548484 332487057 773328242 859365425 525545482 898437684 273279384 585399087 564369545 625289143 99520540 565448520 603100271 638718820 991807414 999803724 678401939 760212457 736485259 810790345 292079655 398427268 330223348 917771425 14300213 977142954 812515760 988053945 165043992 322968349 17150293 228646762 505610653 521362738 250424645 708979662 173514426 935854238 618444394 921134234 866295601 919173455 576554184 769513368 796678643 987497282 807827547 860018448 433878562 944985304 126224778 992887496 805572030 846003713 374024934 753074177 486637165 860221172 838769574 983824536 842104257 885461569 358631946 574686065 500872976 674622329 736326808 945483342 363557782 587677819 269407582 369849737 180301476 712879061 600419305 872637486 386896347 704897925 797047104 819032842 115218445 268166514 631098847 853284075 833537812 959511487 874514061 963323407 995566375 999455663 461077710 477551996 432442671 958226164 528665026 767825977 606191005 883140949 7009281 700203646 823606462 975192675 234489176 644708181 897719190 946880703 749137835 952870218 66771538 245292783 610955268 816237037 454948533 460774655 777647334 909197889 371752339 682661420 958764715 985775984 978037797 981391223 965672996 993855347 18819093 419206386 901965134 926328623 896650470 987940839 268490478 617318397 337319822 961098444 787132251 789337177 816491400 857192242 433979406 704199474 566916713 856417381 565788177 724292260 775878193 843564923 854184700 895516290 753178103 763155889 267457408 521251956 127752419 704037904 391988826 699180484 255264659 279858271 49257810 735638942 501604421 516001913 563323813 604870983 488186880 838817912 289343493 535755783 354462815 629983124 977884456 999757653 941946098 999555643 476756227 530182756 840956990 907283865 170144367 356163963 979371286 979407043 448931262 661612284 310104465 741076238 404489670 539991346 305455960 522197241 753447553 835399600 359302922 401087453 687067756 927984529 223911397 918721884 209533374 638713369 259097472 399046893 797546855 965334212 947025376 967907165 354232742 783750065 910394106 986743704 815829425 887541405 936379282 990696767 699005674 820070827 550334700 701157855 752113933 795141507 732849549 963666728 147042530 313960564 247252599 900619737 917684224 986415821 533859804 587852179 644163689 934322373 355892382 646876029 905793052 905874348 205277290 403998908 44845523 774326505 524496254 656705926 64935699 344481193 425985708 447202708 463689317 536571884 522660382 663896385 933355490 974118014 285811568 473939772 248616903 517846734 427331459 477097733 489440867 759740092 507313801 989385539 400178410 684876848 168249297 366632463 225286681 829294006 185900811 895849642 325789018 535992383 250962522 274371237 618783592 716166872 722339092 925349631 308470984 754151004 880977085 900261094 441192130 993588664 280789535 567249758 486865294 666238552 494621691 991496053 456883798 626036036 801101534 890410413 668343948 783296269 200594358 954065062 344206067 984072776 726744191 809684297 904838053 997223292 164974521 265275168 63166670 306899949 513371418 526045731 371419156 946867335 79267897 870215162 507685030 538176469 339808093 536831240 676652251 899280573 893317814 920254129 984963363 987704045 63136773 96153639 143406745 390528968 721365228 829058429 731377793 902004320 268723918 602546317 688844106 724490254 791919589 822438111 686960510 994996345 140306309 797097714 612645250 767279150 651690882 960718816 338861810 381843876 549541988 879390928 224873637 497078893 91368197 825535450 716583875 983373942 99888824 127438864 232082112 471161266 995227891 996632122 194887462 317446923 425719989 954148207 513533917 544933167 529400608 624709398 68827804 206556530 298552413 393117500 199510453 300692712 339086880 399782900 414076799 525435891 610803122 956743325 911728627 916724784 956041621 993519356 892605889 939716140 656912579 945793287 906620590 950596035 750210749 984831291 25299636 332330001 489579780 794908865 555406988 657673375 142867110 434328488 967904102 996399361 379023311 922415748 879898694 954399304 484310929 622367576 825793110 957513350 142844198 196748270 144421341 398062982 226281395 693229211 35250128 999364551 427593435 795247168 983256930 991924209 801177328 917970917 276333795 377909195 396034289 998723231 301987647 563105803 166509454 380901260 708918483 731409498 973569067 988126477 681611921 722468567 470490760 917208429 65235628 445978712 310123863 959324287 345160587 923230406 556090458 716800049 484096546 628817393 23806126 346702063 12914013 565421064 904247637 944079719 59785168 388686413 899036869 997482727 107899160 612732255 718626626 871906423 199770862 638826394 1654127 296771039 253512020 833471556 623459844 794491526 120956222 420479889 89322314 170504544 497991299 612511603 303516604 869446346 638506372 806112638 459253258 459456919 105846053 265138161 460355952 932363662 11231213 857790187 342104214 373057776 815120537 825150808 763326501 815027277 207672659 629456048 27236129 574502612 766433973 781311345 193653601 355458051 712574229 831260147 567706277 810562522 754221657 785050783 647503793 876531674 885486468 897613845 520270122 990408171 369854120 593404375 832673177 947829582 471593860 778707790 374036376 426320861 148813643 524780183 171876990 995374692 152229485 610295429 685517540 860144146 957914943 980331879 998309142 998477958 643074467 653443856 921155602 930090334 599308800 667003162 169316318 178948236 384598720 942330218 508096812 547137386 859772919 910773048 378656670 790640807 591442513 907792676 771194841 899599658 960239484 962375146 277616480 554359166 213721930 274109666 329522884 588419874 930299984 934260818 155083913 755864839 883422693 949253567 82153397 771471323 443553391 839837345 178237944 829511864 670231959 815629190 773232794 886459690 947946774 951408610 580922718 724267170 681214802 702367269 745462348 829428873 698963445 850944131 741144381 755559227 498531546 992664100 882619689 925815719 538965085 841898742 505647379 613955848 385471839 454727218 909927063 969488383 498870639 782015921 453103522 738254908 352172175 502997950 879909348 978472803 246185223 403954261 649197131 986288770 451463804 724820010 65469821 477766625 865231934 949646813 745112594 826980294 695269557 827755738 995165455 996002177 399337495 517926596 256257327 384002819 427005512 713907093 999191286 999477322 53921049 476868887 33866308 997357483 129096282 856843955 155681116 862569245 84463716 335232923 291016934 502078501 486125348 592805535 826738138 890956519 422241849 758202486 748079003 774562275 69965000 933815832 928093194 991295069 183455266 932960242 781009070 854948006 444420403 943440841 819697602 918695649 638515653 643101424 197951359 696959672 693742752 832816266 890362558 914120898 209820064 643984226 517219760 941873421 566985784 936552331 737594931 879857065 437345020 971206598 209129644 733356546 304911616 832859908 581377093 684273078 866115911 872714172 136468449 148382334 327501464 391708346 758037014 993060798 407808714 764410341 60497622 805934396 797595237 934354403 655877875 885902581 909340330 937001310 6993259 23788489 41531157 729608461 719330556 844425293 123926697 806910493 17616642 104398837 40585932 883769825 421658693 892331208 845903803 955579452 930060193 974459257 450448876 673821591 820266980 999720663 228114858 517869839 366244566 827648146 224716477 983981571 281595963 333864293 476585958 563876545 220801194 401217632 302012318 995354975 386627418 755199850 517649341 900883614 963250176 982168617 861059730 984948071 667160218 983811659 617067990 709718948 357493700 607886093 546507480 876687743 536989642 802008124 941853361 969769647 748623397 856134162 92258832 514452853 806828940 949916854 427466232 987744757 434639723 831468192 501203252 739439182 244038874 801665821 106549116 948832432 678049283 913119796 373703892 460248917 444289927 961918717 890519475 908509705 859606116 886166764 501670522 957689044 253997045 335247583 697513700 981380518 202347695 788747444 896048586 948089825 207374681 223718815 436869454 942204579 919135666 923533809 541550518 848849775 356884604 663173652 669126383 961049693 783356917 927366366 440748588 955262838 55191706 513144249 963593296 969809987 273239262 511083992 256949835 651229353 711683900 820337066 30676333 762553981 79452427 391250218 521118768 914471738 96730852 285362685 596062401 890078474 779604652 869836278 756124548 803450253 756852938 774619518 384818562 624719845 488994113 785168641 220820864 738028695 866459364 956949001 429656972 794211261 922486671 923685516 259449350 877220422 90350776 563375572 46010182 873179940 145580069 252881703 383577408 816954674 145995764 974106991 8764810 191205645 85877312 924864180 867844352 973929513 754730212 758107513 824359834 840302280 478544988 516049507 658031354 853521260 192031719 882172635 497129494 984922839 927589661 960656715 174814417 241319779 618939860 645040802 397198133 959618229 786898723 974247940 332461531 389223460 644475621 673266861 634166143 854291679 948854228 949110763 611634391 748900840 342168396 439772343 87069353 486511495 508844737 811771508 401713357 704541286 724711750 958154484 604526567 660808567 526574931 845485478 807268912 844731846 778078259 869982063 611509020 838850745 537961714 618868220 999329740 999801079 864623147 933648730 76587395 318961094 648447578 796728653 27008075 743020796 582283538 898873685 954542570 962729363 27963750 199138721 64220767 263190994 643118416 814019492 253598374 866645573 305007124 836217664 472323780 483535393 639588761 874283051 986216747 995322600 54913821 493776900 593818450 788819387 59890246 789601249 240691218 795832911 839834737 893676210 184224997 287823027 893858809 924741583 156149272 651354183 282758674 862710670 781498467 857692426 337474144 435931438 209878883 890282527 194933055 416519640 665789183 709151843 62918423 820400102 959606952 986771220 701294935 926425550 234909815 378606296 66594794 447794420 973117053 990400576 833881157 939817041 146594252 398666223 129233168 539620642 22401775 554555366 664225087 717871474 132468261 251410070 690959968 931759556 224895808 806101041 49847935 982517297 980608118 989187800 894141214 907524855 928581418 942008448 103935982 895678686 523686073 937791096 532979368 847198567 200718828 661099222 831172112 935807996 157106532 655648110 168810254 519051188 146808612 466987477 872979469 890685487 38460573 750465848 571541471 596408288 319788169 458631560 941021182 944944309 727595633 736869420 962374446 975068003 431407965 666934142 335482259 724145079 193295751 503069132 402428023 747636041 858675905 969779074 331903651 887276557 153771441 789065886 998278614 999406927 45072166 703268932 537802334 806745974 653324692 966114784 614436445 919850502 666923178 843953069 130271618 789414486 663764793 990167739 644566782 893301257 286430082 718494950 311063502 764571784 840037679 902261372 91699677 361118501 570073913 619039340 398371234 947584865 413154783 717671204 472286990 715607697 12711101 297667670 664589127 724641212 801377835 915678710 517452235 982384257 866232043 889888916 396412795 807112619 986615974 991683547 248556010 952135722 594505297 870633565 173409818 637807897 978542953 981906726 262789974 774403510 481139384 790332814 419814538 927389353 219464127 246927043 587443426 694290681 59738062 779011868 162382285 944039386 377440191 995519139 540456304 892348300 134216139 234234706 910184 619999075 164327021 483906537 152706997 198697620 900542506 991572181 500224790 657506593 422141254 500083824 215688075 570576710 823077375 923002874 644383920 754088332 854200512 893511998 384713603 384743968 249777016 384293523 742528233 908360341 605849380 610837692 529322936 813052955 892279211 941196360 407614195 988395644 369281924 866593261 179640708 409929631 710236160 784672380 118413775 861385408 350364281 550078756 602701266 796910038 349533660 512329285 250566474 922564793 681295980 816211091 475242380 606508301 318521255 914145126 987951085 990170956 959786447 993645363 935307386 996421180 586854158 886672692 377490740 500100580 944961373 980219633 207765823 326500386 82555014 991813847 173793287 199923328 127950110 366747100 592321577 824100634 888837907 957119840 407585324 784173081 529895216 910833758 178881321 734752531 561658842 608165244 489796074 621679718 274814206 875731947 653047332 866305711 161111037 289211356 809155633 969968394 519996283 785240881 372263177 443592587 405594903 836531833 770097713 910936789 438078810 847563802 780122475 804018948 285501173 666203185 386468724 757916672 667495271 884583992 879829003 908098907 794229877 810867073 13884744 62797930 743560568 937518915 888531516 970061874 312233004 972807787 39759867 89307227 991524859 998167028 393585267 549874727 569202566 914323722 411553325 806922056 726914854 957712889 604617689 749549042 748625956 996918758 425096578 904167533 399376347 470628447 20254073 774206613 299566414 379230331 707121367 774511798 644681512 817247358 790462501 954276072 885317666 888057512 565884981 982055797 831543565 934322604 918382530 928334760 757115791 767953848 858134404 908820785 825913151 964407622 980220032 985942168 465245821 945387725 210937095 488669505 72373539 845162240 256213390 976488637 165591106 273090279 139755396 490240566 673356807 821281385 257875558 921896507 244519080 617619681 607106167 766333967 694095074 963421567 949078748 983952725 958202709 970963286 437967250 992667026 147162832 445963680 529241951 896441537 881280654 903116643 143112039 749055011 694809213 880173432 584886022 784830388 729580402 814254748 867930383 970993816 11044889 300130128 253688887 416988985 679924640 719142665 754055308 812063886 822070911 877750735 938700628 939466002 5279103 688212710 65345333 810649082 47030959 796492115 335879234 791152509 292757105 995922870 376315863 503727754 186324754 296300041 683340716 960833694 607893670 739503003 287948183 744441791 528751655 980469231 473263504 829718703 847244543 890208109 211925798 759199453 60384423 594626665 226376900 441249485 911616530 950094575 472407509 786788458 109298526 659397107 596149023 743852932 998727789 999327597 475566718 737703623 732617459 783330775 831414771 982373531 232426848 991803086 670339454 757998492 349529638 994223052 602532140 627093497 980678216 999179848 962809147 973649319 127543588 347109396 410291171 826736778 627953079 916576364 851253794 987454743 819412058 838511673 128796356 517951432 705738575 876168225 576586248 769887229 361840506 454472093 562283634 802426368 556058368 741084493 964411884 981900824 336445862 810385864 398075008 444778510 433252980 862997308 72956023 112182691 797005541 918134397 683772593 812749334 436800535 725142429 630457641 857765193 765332246 832631761 913594202 932730003 421262685 742809604 269178257 571616650 318346545 421637044 630005878 903549509 534644862 708290493 481900318 943171245 856517319 868738717 962151955 977287355 580724819 827034421 572195293 949465046 178462840 246716932 178565465 269136754 31128253 535584833 901516799 926492300 879854977 954874016 441670296 608926968 781849464 955753748 607736884 858095763 765975070 813894872 73485340 383156645 198515393 934477758 78494871 181754095 838539937 985203224 812763950 890632716 768271823 896308082 784196719 952854702 868844843 966439732 978191096 996296476 373795550 855007133 962967249 982200040 493939130 645431997 945784630 959406587 322305391 485360090 316094386 570824365 740514380 799842374 65978180 411522864 437699337 644978587 512508349 844615175 39235709 698791566 80254226 399858880 138928708 769983337 693351885 932248754 359921562 449950396 470513359 601999257 168821813 541950536 657253154 786042630 920445409 942486520 867793981 954789075 335174666 812323304 902033355 984726977 380092038 678298656 928706270 935098722 312341850 335539831 348043949 393078367 671922066 927508283 923851277 926889780 918605616 992997822 934773769 976204352 443060950 603280891 529442857 568512388 264568041 785185804 324574911 406493697 163239013 842024763 595712959 839190016 277647629 942571464 568210853 690349874 14687126 197004608 173420362 809309199 278132445 754421333 261584342 645499433 977104058 990027046 381827558 572753564 42946464 952971744 493665645 963817610 255090497 874446872 736429048 963534822 642948492 645603321 465044292 935675074 514133677 767019315 547783845 959252624 366544522 793231965 163836714 309501987 340400894 462211917 591448958 931621959 563302468 896397666 400910982 898759090 968993853 988628639 196735108 980672915 754474782 807933922 672922594 677132580 91089732 930814409 288014739 366739748 883084244 970841767 807556443 810378617 58357675 570790342 767968173 985973058 666838880 763092705 648506529 861320769 763016590 895071448 435941169 698677171 495770241 625255047 403759188 640813687 463418195 561233380 277425114 343558037 43293351 380416150 869143936 949362160 54051769 978843187 814150056 849928503 668678265 766938392 818601590 865320689 784329321 785491166 91652862 683441374 176951898 637212128 629142756 861957941 274990826 393657109 215483970 589400027 574999819 666322624 610794059 957821488 314382680 519530044 416859171 611291729 414953193 544409818 151463369 931532458 874746368 886784801 834646289 914514333 914095940 964449768 900872552 994485236 93047643 544475567 906813462 919034460 964599745 977901826 847413739 854242458 51863543 369070551 956349411 972225264 382440521 431945874 428021513 613293292 129562110 920343951 135924153 682397672 825034022 928417214 556825328 587764598 680961202 966925583 7952742 991705850 540905135 682413297 932286138 940410478 867972062 916844046 20270681 540683853 667611063 928811628 963783424 995799545 866304017 974244478 517615148 558244554 888796858 987719518 417529217 487983357 187392393 470896568 49733240 688668400 373737305 605910316 630038815 905101128 654226615 669510469 693578890 853378028 191493005 769646416 898925646 996543074 137660695 613011889 950775797 973166912 741976619 873903922 859692806 924169423 221355406 922884139 489158553 809963011 445433329 926465020 144534817 786162777 220435026 881226164 287588514 387524561 220228113 277187783 692044524 930412129 508153578 741140363 349583105 575461883 677337166 768038287 687523836 719717101 487632783 493743693 129581927 236018069 505192708 547638966 211046875 595786828 518561319 964962241 190207019 521248424 199885948 266349862 726289056 811629299 940110859 960933689 456610789 984893122 917946150 923812590 712009841 886759006 894679019 987027518 670844441 760126358 547538648 824790894 319876760 405838829 874202906 914593665 417498978 752812750 320530867 649293518 847369293 955340041 139275565 612490953 923942911 975443024 742766622 846033353 452684216 814802481 56114440 495361627 543302600 931220393 99106075 345195298 630754171 828852669 38740199 451129135 498257248 932396701 39223434 490656334 627415131 931285813 879631936 925309083 506519383 847845543 724662123 740704582 447030146 982117134 82834146 148151230 455077445 736930702 110825447 405001162 335857812 877263110 160279150 654686455 673915213 750095616 5541129 819216955 461425056 942966446 452264532 831164867 101425803 162818046 965805701 968050188 378531714 464548908 235135178 647023252 65851109 832958547 236216997 260037785 90499487 603794167 885876657 895531749 628259935 826141755 951508636 993019142 837332644 849912858 909634117 970786896 315918782 493256459 527320467 746447809 546577882 569137254 531583127 887696622 863383152 979633464 996780984 997876559 64885930 932006902 531112013 749231245 549160606 960294772 277525023 927486227 588272417 783735657 683840339 941624554 646287602 689403095 24650039 583309303 955322307 973846815 528737886 812724675 259145580 902442135 281608001 372984246 638173429 809311822 971737037 987854112 851617864 903364289 621298340 874902681 61436978 484886912 489856887 902581975 471208507 785045659 12492848 572475375 519535431 681718284 690544277 823249699 639670150 899636410 713317611 905342005 264869963 893352808 880633928 922094805 973534910 995693482 981152940 994303031 213659863 356988780 963129532 965619032 329754578 362520603 470166065 719535107 574494682 933493791 259391507 733053970 635692347 873149776 380592790 701014441 870846678 962223473 200812658 982973531 374388276 682781860 112376143 414364565 764877870 986835857 273898113 300708325 601776714 679447247 439119835 507875731 182787156 196620892 284755787 832522643 165354687 711678867 731821523 938220517 830842459 848851885 954449863 976347097 123523550 964981645 942042330 962458870 91175588 803318169 438872540 572493457 971605340 977291532 750457451 984426861 209918293 601990400 175332803 567813465 146021821 442369993 571533215 701049149 560546930 677037088 646150571 842300997 802176101 879454623 496148806 802335759 378608110 909626774 844953565 852786074 90187333 443187949 947951414 991723805 287256426 464306397 817451148 871563306 298952019 942997764 619310457 690606877 802832871 831467135 702738351 718130839 262277307 843020645 30631234 865308332 769066236 778796930 415587785 603458164 307540328 370404066 731368705 945720856 519530695 610200610 646732251 871158585 724696799 955864541 847442586 855789596 981924068 996159512 690334989 993426933 464021704 584905438 877347020 890630338 912584939 939560706 821649609 901376527 745445765 953638350 901997149 974451096 493270099 607166995 408476657 555465131 110080310 429611409 779580164 972905100 894258215 947535866 230510615 628539919 295884459 374752873 751359876 917189283 938853582 938888979 116439905 448921740 332491833 998894346 629056789 646338559 27120902 842760788 81520573 642131398 846753659 965174600 222927016 891595596 698071631 983756461 430131361 639300206 773969978 836318010 868598416 936459054 446002753 955962207 77324021 987502309 470247915 824855839 950684305 993993648 382269471 496760686 122268047 891045451 88986002 420198840 807460421 989081504 119252645 840390958 707757423 973239858 407635643 462614889 546383534 564493102 457342869 596292553 110982921 542614612 872874418 992787410 495179747 497512868 197870028 334496583 455155700 939679820 865862029 961500816 509736023 588448055 664113872 856353785 209134790 278501351 284082177 542935135 809659651 840612994 987013364 998015952 280841099 314374411 89653148 950067616 595063157 838653620 676899927 787998729 381085725 531643217 519687469 783995550 288771029 840262644 949404005 980314491 806890555 907093789 264627408 525208037 671791176 692319610 953151824 978634006 162783614 171560080 115486151 179414096 305247460 974060975 153996548 610654615 554198756 809636542 223678707 885785268 965861056 966105192 313154238 603636908 267929194 591702623 694902838 938552775 776866580 909006403 862832739 975264031 820334467 848146335 782631037 878006544 966878135 999169565 120819836 906938798 832376004 990435526 862082975 982903437 298744087 892227784 51119000 927273175 284790985 811546126 651011334 971426967 8941401 544055516 264547137 468737167 99798907 948473738 500925704 555301719 346098613 458763891 553773043 909269555 79063681 464009072 264479322 986696093 309426728 389776636 531550388 646426413 361323391 369825814 976490050 990115133 424837380 773142375 655577299 852647676 98663649 443859419 697439381 767732649 822055332 883660342 445119889 926400926 663777968 786127809 133357483 253288618 119162196 453314521 751848289 905371819 167087089 759203811 803305163 997831989 119007577 632158493 622140488 747266502 67657977 976134612 90677524 741568726 736724243 748665046 557810949 603034098 900818826 969566123 362281786 369772857 718343180 830203869 860789330 911279249 670241805 722717933 98972802 330390935 230718343 991258774 961206064 999032646 848558435 962764179 559057513 800606904 496212055 800963488 662631855 914756373 930339754 944483798 953283711 979310274 98710368 928584172 331984069 795476887 229706178 569280148 792254972 976435589 629234672 798572601 516868889 707200324 385027152 961031355 357854672 969187146 174824409 558462392 325061311 493049874 266305370 611336734 60259308 191185224 288975808 600624063 764473208 896875021 509070208 671879399 34217545 414147316 614730892 973240486 633789962 653172125 52741048 485326457 229246980 543631626 661464134 811574030 163274202 410899424 661069808 874334829 223360078 425506867 688433784 760033895 773196504 868342643 296992374 314260170 487312031 767951006 37594654 551108911 363078704 678237797 186012959 805270476 554846072 822155586 151667179 543517608 368286681 970985214 617846265 702071262 833808444 889924806 596338003 630625664 215478932 332760120 977579241 979517424 598669489 903747429 270183764 460753580 533408315 754318666 487782116 661329432 202479708 357511433 606216128 758738544 67062316 323904799 972420255 975940613 836913725 911947545 880885410 923525117 168340707 826241923 939430155 990388802 280376981 395461401 755971103 947284533 598291839 851561013 357456267 782777460 258699504 699140935 821171573 979705546 911510858 957091905 411612796 728626652 521518322 987584205 951778751 972367990 344971334 931188890 787702065 860933563 511728717 572597712 759574092 769980858 783150755 799499834 81042936 937228626 984925867 986991474 759137868 864403058 774036340 804293122 193762198 965781525 802840544 843151681 485290227 830095981 76046388 881444827 928979177 953333629 700839879 740529966 254174966 514685912 860176715 887663447 336400147 778830600 357340214 658337377 180493332 315852348 317191797 656577390 476678029 977509169 515790752 525598080 801768284 954590823 499351679 746345064 722837168 796666563 615310022 908639959 518614005 887582807 423537452 568614157 356945126 729498342 221835327 517889911 848784298 871256719 994640142 999192311 629253733 784382720 641391697 673489174 301972068 826083788 428088409 792451158 96499479 344223508 554093022 747065526 759279152 786638705 940149917 979940241 406452445 614657512 539067796 725355274 7043350 775215751 306201017 335908820 319608840 466637510 95116429 965440344 534841509 915517513 861219774 868574519 420669431 434916338 911876570 939231484 42069177 703524172 338851443 641284255 49943450 846438331 547425165 765424290 710742073 783045683 259696820 287192572 794815965 989839245 208224202 900474812 29246906 156153342 678518986 793577296 329338005 605718334 963499927 984886731 134598320 740280478 240388767 599355359 134897678 596214167 922741870 985363368 693791962 724491256 380758873 687221250 39126478 713668756 516803771 775660414 272043608 779393655 904478070 998616320 91776963 829161265 805787184 998132353 253114303 483441310 908361914 995327827 447455149 980734335 234650537 336212396 915595427 945532389 119226543 978082220 734123807 788216448 661967941 861975809 131981621 433581623 82261997 679319010 482864761 517849888 70425703 227804543 57582613 395856315 898691892 986445329 840980889 864742714 888547179 942288975 499580309 831535455 718446567 973931825 289764494 926131494 96061183 411199013 396194817 747418942 386732453 688564822 702554211 935499125 663442441 887980659 969778197 998221550 937184101 971047659 431728153 494121217 947774961 984927201 623499349 649551573 287797127 423787157 690982754 978167496 117322166 568498960 390064029 744057258 365308474 515408200 303356680 873439218 532358173 974608730 345396966 650765257 245491150 501083520 926402964 950203504 772949605 842860832 249339114 752370626 80564705 272864543 209927321 982271502 408078393 548612342 221491261 555095571 19556141 269367702 154714176 323483880 390786727 981847857 10315891 749304307 217466555 731876934 753056874 837568812 157035202 637429956 393497089 874542675 700978430 769156100 791517567 867027632 453485523 907767694 716433251 827999778 353771449 413334384 516812261 657875570 506253846 584899942 714265246 823916544 923922979 938652481 321765146 901545759 788303243 815128951 79825976 621539092 401018367 547669040 600181114 765458438 551446914 888998244 748199099 994354264 712967427 989653035 311121114 476723529 904241432 933932598 411809602 852172052 823057046 923962112 767859433 819590901 471870902 775844737 88121778 705313921 695187715 986201932 430785586 478787033 700108555 854405531 915659237 993412502 766880469 773424750 910445481 968714095 371457263 424467439 796738521 995390097 88644053 896185418 182368557 499824260 729141722 957754413 295644503 394743412 56518255 217348225 847709480 866260313 595093892 650025203 461588552 919237584 995041827 997482155 496339080 617934349 269455286 759942751 830342121 986113161 643727259 766964703 476330161 877211157 859381802 997881758 55873784 198352710 189069893 301925174 889674950 955608074 984809196 997198878 155528337 554424250 597564363 677541402 524052529 962676721 932515366 990345734 23849505 477780364 815240918 944267524 678114085 995755706 20942204 801885947 487090634 685046523 400528969 769999220 474795824 568445544 843227841 915001337 350572855 865421807 947053851 961945052 40585104 412903445 734821280 802570291 555898789 740450095 648890456 819721077 816412416 981068946 327612833 352488131 640374306 670208750 479654960 921459993 525231225 797778922 546635531 913444069 911521642 947531479 431719411 620987506 253764508 559430577 443615421 765192958 910964611 949906776 432960372 890429262 488632460 814717439 711301652 910393782 281009048 349720323 256215076 504836632 876082521 934687277 879985670 991393388 950240464 975158979 677746219 724432286 592264 118386503 198538932 642656376 498117967 779856962 784846582 910813989 611448512 708020246 881388517 896677176 162640830 522801237 22587553 105306220 192211954 221905112 165472847 545359063 457225855 964097349 703508275 713080632 149673791 633373508 510845567 852863055 770309307 806584081 84281394 627845549 394849063 983743646 592528152 896572892 373771326 595535844 262626873 316605370 236103267 556109779 8759798 862593515 181346816 298024634 438204099 792947311 892985796 925655101 793394659 823433948 746224918 859224234 159106050 851521496 776777366 853281116 395565103 745219253 669024518 991429232 191488934 661472073 514253304 553306354 138945121 668353576 725221288 957746182 652818617 747694284 408743244 580583420 233595379 829304885 987688577 992150164 152246092 194554571 444223453 649625786 462983508 594127173 90487616 427866538 13913187 883235945 756699624 843712007 966260809 984450635 629204207 803881215 213664127 441098204 461363162 860468512 829834161 893093271 683237238 701510809 348470512 368373101 519656465 585895233 655229622 699203304 597815511 881488702 990099570 996057239 860385079 928120640 509395297 590749591 52788590 619142076 657907313 680796121 569054423 788240783 960453132 978008804 371552410 511928372 978029454 984179551 841774480 951170762 134964817 369056449 411916945 880350122 408920182 921503942 366252129 524999279 492834276 800245520 67787336 406968100 793404728 853451491 431837311 997873319 219557759 845963895 573795723 939387062 207511631 881620941 136978443 741744128 956599502 974118002 484724042 780903841 689161214 707338819 73174506 388580150 843999555 987486503 392308748 462018523 727720251 768858243 232883349 570664612 395707460 827950394 787259359 868633090 498226871 652445352 502373723 756092617 391165070 655976171 98582775 906831215 932641110 996887674 620375393 828812540 289504911 988497060 983569027 990791009 396032419 893361871 761504139 867155289 401940016 835740981 191029732 420927107 460307667 881623571 51800242 764232751 813629327 898089036 879162671 958409101 305830550 550015499 353203586 460752695 670736316 869406333 905797758 940273427 209976197 982528793 691653599 950656678 473750938 663130885 260457419 496396709 89923166 309200095 334984773 721065198 332764495 727917499 116494646 808204276 235477438 469966834 158369297 761221738 890720946 936260990 396385452 821032020 670319113 677350983 40965436 270005088 363624040 655220339 638236217 702538578 707148289 923825585 278005338 547941363 241033284 734733596 219884116 969966630 201437077 868423313 888382561 986677309 750739845 942482086 783169022 881857818 972380805 990769516 557100239 718703918 998832773 999503067 846507641 991994490 86330767 492160588 301920521 941224706 157467454 998810551 158053385 947607213 23373189 853410431 525795427 935790007 429101049 670969406 125829540 700609781 452508241 971159188 138479716 484533928 317776725 627340454 78059024 896542388 321810977 543428189 6517661 753073913 121014375 763142357 581187769 869010507 407486751 909453680 832159122 879079455 669358342 944847670 340389848 928591088 618533494 646638834 711108822 723141677 475850438 930593753 407130772 638505117 244425268 684776153 615725876 874880077 202137195 397950228 381659984 680446116 570223373 878807809 551138376 861981122 148589606 726038408 669455140 942341017 920921564 942632558 725845034 949451226 507982530 663033593 862816211 962404195 842178983 924505930 749221896 861610461 234236824 654853571 458490879 490296772 812745979 890599064 496692379 755019946 642031226 804654222 132382311 292944755 726130658 755108280 705015989 934180973 33039773 512870449 675662511 730469752 8623754 348456051 601501430 863747210 920508696 979946725 854679183 910487691 53829618 555394928 265019281 427892898 52271761 533474886 758349661 845163639 191745117 350762796 686444861 927764220 402425521 903846754 856870005 957535657 610728878 699557381 316212883 932801066 574689443 753663515 560508237 803410155 284365824 703904023 629853387 713097099 997009821 997300503 483950226 857787971 151027375 774548800 216041520 414071221 859483211 892381529 275828112 370085235 112891283 540877555 897897949 955879486 741252478 779904274 63407258 268198505 648070946 943197680 743165324 767368988 187370046 387675243 197275724 363574877 706697573 812590622 997815859 998850555 505281567 893906343 4242925 497799004 393621349 545640357 171283190 330026384 775931679 814775676 104764976 985107493 185777396 896646475 258982021 906778301 952153293 998206427 621856725 742384006 749142272 901449026 282762645 400719283 587287380 632264462 633504530 724754090 189442160 742698801 301555881 306096138 476958552 764721408 868531425 928712295 406770845 714545217 222909223 717364049 620732095 685471230 612194347 838513620 817991799 967277035 99431171 254755236 893342922 958969872 409616680 679735478 689758731 734408599 780711075 877722029 368431354 391527396 202336790 565029013 722015865 778470589 278776763 552719978 669517100 832974217 988613265 999438965 214421114 559380489 468817304 702465897 343045925 664480979 319112797 701325479 115270465 302530692 153345649 779546189 344491010 737813207 283268598 521809780 473182971 935500890 457984241 599628861 800005649 966145487 728395317 817847814 254555578 483663107 983560035 994509300 177507935 435886111 1490086 211117168 171877917 568394527 614045208 751524805 248461334 693234910 890616074 909829457 170838710 663388172 416744702 592215983 567320034 795953422 766606416 933976026 953433592 979363734 956926893 993548203 524597330 678858373 347661238 799924780 908406546 919178930 322656800 476098229 973233021 982564078 479722345 593383114 132678472 674813528 874171625 918386779 522129817 859596570 910739346 991809492 311351317 388228563 901767105 958431666 211645442 420904355 394411598 943409602 299525269 643787580 563689631 860061257 411788366 913201314 386151831 828409253 603121345 629994212 378692864 997778126 810093473 963577561 58976718 400631569 439440556 463456500 330333892 385552327 647626933 934816737 584277860 858571450 677897609 915865401 222534200 313413211 294781042 625358243 624017888 972926425 74016391 583453611 877075173 885333659 919208138 963303843 839134338 981290858 450724795 977378066 550348111 974642704 484181363 654467591 519653203 541079554 229022201 320948464 791180516 923927448 119098393 266194487 371341575 598143087 733622419 894784854 761226628 810724239 182798369 822581233 180082483 235487860 215463089 940044664 394707769 561298740 105850257 757857112 626400833 915090834 227073676 740168677 250652606 559613596 112284240 295716306 71671458 146832634 891180578 974218307 346631664 948814575 306160385 451023349 157161087 520355516 849078796 987568235 461867821 481844270 727590789 953545887 10217379 607409497 154998692 951595181 987889791 997510712 64857010 728670122 598063461 905268767 629908090 738110823 320780006 643958917 270881965 407198082 531514762 791274411 583385972 634756603 549228962 971030320 744362558 829770357 301606975 755844149 821145005 994942551 658644736 738834030 983366354 989304163 70255152 258272080 566606561 639120762 731563161 809091840 71929402 997289379 849199055 867208939 324353693 429792411 386922786 930468222 755423937 976809757 803636757 827635850 636184542 859008992 205623034 789234136 44011439 949658007 833552210 956652148 792951405 871892101 8771135 799467168 851855064 910801874 94342821 948640229 100273872 726137705 172191160 952384091 199688534 481749813 159601032 815167680 396301293 975732457 288922049 784914868 49495861 684322237 813085402 881062298 341515601 601457840 784509308 842720982 133909230 955760408 827077054 974056296 974363020 999402330 33535044 584892850 345472062 459161281 929504598 935946128 504410177 701807888 602825834 852361299 712806717 831052764 695229931 936446332 194685668 605195067 105291326 664655115 401427478 537065773 588882445 743098849 881609467 942323083 725856186 737243205 971832224 992773799 483548212 506609057 176875845 482153404 757441888 814289929 414236562 621785574 750698374 764998088 432034629 880459620 308755280 479926223 21258992 729875397 926273623 991781638 274756312 342953913 476435520 973827094 115498614 197344765 451447880 680876186 770625487 823878139 382376952 386656640 490318548 881868021 437916374 491941854 875168793 948898051 624251983 814573074 297388751 559882016 986364658 994445110 93718299 980781115 857478881 865996435 909943497 920582087 788506786 821724365 254228008 648339022 756313319 869891159 25219821 245675508 606192114 902341013 326283680 937553947 979764466 983973163 549460114 865242851 60658509 80481412 247264429 434263337 410676007 467431475 452500269 920662312 131863053 836445849 220393595 460534130 629006320 755087824 188359582 525210702 929727550 936650298 429975334 557413593 758151759 972366527 609772754 648993767 585813752 850212639 689139554 826823399 731572754 758866030 57846135 325615476 382218829 590031596 681765823 738900368 996997445 997716726 944467588 949107603 33726090 514100069 899625281 985635645 615711906 890578427 44363903 86479071 887575348 971256089 685985729 982432758 470650193 688142761 421219865 584614384 107001824 641760907 182954024 410476497 663032182 837238558 401718122 780883046 82914062 978727646 314038110 655152502 956058696 978973183 999505317 999568652 491730949 820705376 908130368 979945419 809386217 987811297 731002284 822895964 843491542 916016069 265786964 601745611 295428527 724032257 821286626 849063439 781151071 841437132 72553561 735637370 71219484 479026865 714545268 921677511 396380600 466296098 595816075 726237744 652737295 706400870 530144925 967098857 377479507 568681638 2257323 217462103 565320374 862896646 159174608 179977750 727634380 759195822 181923166 314569132 161876217 205476719 574681316 664321978 632871802 955765876 583064091 798230762 550647470 859192567 675200240 682143894 676724666 720006185 308975728 725159508 58269557 686991774 54472372 420434776 682618429 938841105 113445912 538038084 587854058 884662965 430295848 979931030 494446716 642298238 575355075 885766518 383565809 883084754 440464268 887682018 280305007 437559592 80574760 255845444 953331167 996220508 310686637 559032349 369723658 671068545 946029453 963516257 249813720 558552672 20584030 208871121 933492005 947646286 104061121 908286495 309860122 676690664 906359188 956889234 638224389 757893404 406837830 806936088 398841014 888818332 712913146 968836345 773318582 986866272 526604560 688815844 508902545 874974098 958941367 979330165 593599150 875791044 324861020 595285727 432757725 948859000 287619549 841046828 712143541 818923127 320388840 929189928 991231707 998202533 577936330 640617561 765693702 976424486 386720073 783783804 241383374 432697521 97514054 753042513 367141951 756304680 826560255 867891039 750550193 804856174 922096362 965973034 575791006 829219742 657348798 966329012 170180615 692314527 659178218 849824258 4006328 218647009 691168524 932306990 285880748 782760028 328539037 435795433 78450156 190798950 533673345 848698686 720236860 800729439 324431620 626750733 81006936 722753783 441516550 853809056 901224083 914171406 721780260 868404511 410848742 929649471 585305885 828952927 24442146 585530711 125966243 681623874 513203912 530906912 233300861 484207651 123613910 757097054 838232871 980459153 200195796 232041567 541968768 691156245 129149547 400886906 524485677 774475996 144282460 935759735 594439165 717839373 546118832 980495836 50398924 693947453 232393539 506791318 136499885 301028738 157870673 769011407 784519084 915531092 153903769 981022473 204863270 682184061 947341629 999918903 562181652 698596885 135237729 431040217 967882112 997181651 601172286 608540531 701359722 987163005 496051520 977410535 397135287 508402972 888049858 909734945 627084386 759954152 915598271 949721854 25360720 806828394 430878921 515398530 294040986 773921410 646395776 652194501 890845106 979014218 827827220 867251533 211407135 390872159 430912224 726538831 899538610 943810367 360248392 985566527 233776424 702104729 406496863 749067083 170167108 726069328 867895086 881612564 997109118 999047408 185648697 737049528 142607562 923638007 515702217 926923313 713588796 988042040 343441581 668672753 628166238 789575997 272388466 646586805 595441103 787080715 790163108 802881824 653191663 662912295 779024557 839879500 78995883 397175836 422399527 717322400 913581172 932962018 619791868 959969951 16001968 506479832 460581062 713498684 898054663 946490047 851329423 943947504 271110222 688418423 764130738 974324077 720067480 895551862 794297588 886993582 625471393 865412898 833516835 945849417 878048760 980685376 748397401 913327613 604366 860705982 325423493 856363185 31202907 761418181 479863954 754781307 928849867 994687851 45897150 486429151 930841395 942981095 649842229 714179736 186076556 373630078 264746676 430691110 324823485 439589000 324072236 670928534 321394864 436006679 221538084 596505228 296689397 936280368 1061914 277484826 187869033 203221480 882338181 925476233 400162120 949929473 144660788 637797478 879632529 896530950 177269479 259637234 989667119 996869505 648948375 746341034 427021139 726214825 615623670 772524556 841969798 939379682 850360177 919030795 718905050 948498830 862596578 887752214 78992105 723642578 711012485 993938805 305901648 643025913 65476997 951875084 813304401 941938365 23705671 102470686 276045440 529506867 826427096 896529083 289385202 518456461 105962394 293598502 305109518 658833707 114909893 192440377 789317294 832315485 509111781 820190706 521464487 720288877 566405359 851941750 925160081 991238980 2445342 198254656 139502256 307778208 659811025 981253401 227992325 657041483 795137490 871716171 66275319 102579059 912728645 915691630 346112704 807909304 343262747 441281053 435348629 939221885 223186316 713076467 845463957 847451756 236329055 948321144 654724476 862445036 438130260 912472974 456976702 527893132 883970713 980603205 202291493 826999758 920501903 977219877 96525896 888183497 551060729 766869380 427082694 906917235 536574341 949794675 870835898 892021255 344087073 454754728 28017321 425349298 826877334 901093255 621399392 691175746 429984481 918551896 144046110 969632196 911866786 988604384 307849162 503229499 505248600 685699474 329052896 537917702 466303912 669610637 825793278 959962657 89624654 319613939 573675075 631234657 849352282 961342850 652059121 840763590 275828476 796562901 435547037 438990325 704883246 813595292 47011529 885423965 328677473 414258199 729412252 897842371 765030943 866643722 396403580 791900170 628055470 925798421 197026785 247702069 207328526 741346205 5885839 703634411 107638915 410224315 372441587 399361166 548125407 790277993 242042696 787240152 563334808 652252493 345436500 797028417 624103987 941830704 155105404 640878434 802456438 933154108 873192471 954638372 473906993 586683070 50730752 870304127 933672321 997798708 402646448 682329743 573764232 631870555 776257049 791349232 15119989 178131629 716404185 746639436 102762639 929101820 717256192 896133953 840220467 902287972 503689826 783322862 278594799 429936113 781422308 880668296 688119244 860198992 303165186 909961312 249957345 407196463 197077233 498149223 398173408 755390752 285868826 471774930 31676590 775772752 701066008 848194707 919123196 958229612 63748971 716767428 126016332 544937049 264419217 579300485 687758213 704569314 972604078 984000990 973212829 984957886 743588067 815162925 808102121 974914031 18729131 740064632 446014374 882228527 121670294 935771078 142152706 909839586 46976331 618022954 199225799 637756758 595079660 926996794 196589435 986581982 489502342 544457240 104665925 298827017 830040978 886052287 621560630 743241929 407075813 431738718 895494620 979803097 680006396 886112231 408555537 594346229 418994391 687245070 186544497 310900690 185396887 966107628 122186013 840409011 754132269 953422199 78146811 115815807 145415377 592826331 312949564 423077845 360360156 915448568 824988062 870121722 604846064 701532090 129026984 965069032 66860147 922073405 4051391 223811018 859774489 869213983 479811981 505459493 636109476 770061190 445681380 748113409 362292391 536201520 398985883 900867588 45504412 536938273 714066561 981049337 967671967 969855244 504067936 533439593 900587944 917625353 136042013 567644988 678658922 836553348 56248038 353948431 631652530 833312639 827899376 980444295 348653047 892491283 467223246 814776464 733146099 884675077 563573651 565862142 477584014 925602334 710683961 766699606 620702540 921581992 790089643 919718831 255283065 814356421 797731533 961491269 693389084 777924161 653998375 803412998 152929505 454370613 621042712 958495841 964672168 995022139 126399465 578297863 842742867 911632359 165110367 640190143 887043167 893535055 842709380 962642895 539448554 588770408 990848055 995587978 248206931 580934900 208525047 482137105 501792298 877548941 893052009 901911084 145867566 605700899 26075559 418684024 745652215 831529120 10852260 99585423 911608860 992540432 774272979 957603748 196344406 881914739 222043570 692110078 761724277 907164650 490787615 768987794 991622350 993054839 670197475 840109918 4464636 269650591 989806098 990348612 638491685 744883597 105934049 582367827 654004405 685659805 290085109 493711267 960967946 964335371 709703248 984206007 167088604 318209719 694349679 933225277 823129371 955877329 794516638 910611626 93839557 224080310 843692395 923700613 938883631 998973806 224651460 737800163 339634239 351634220 678263606 710300907 155243162 574600885 457012700 951968384 610277347 891086828 113498879 186331162 930875289 970466743 376699713 388432850 827620288 879216988 689433559 732413696 761218703 861801624 287873302 479476281 994232606 997311958 372411759 722400606 343079822 395749296 87078154 439911868 223035718 500797717 58380451 667433155 901094332 924964890 294220028 572094664 577074388 918349047 419776209 741774710 322391063 891305054 522639079 581695012 639061027 821574943 301954808 842342048 242993968 291375825 358392543 838982719 292146488 633084960 149203729 633531227 443675389 681558695 864741703 966329406 101901943 317660265 638089364 755903492 988151406 990244015 510537273 756017079 55515367 533690020 577805857 763513887 79343236 577785481 557540591 712396903 224853832 245557445 765338565 774638725 293834421 545397544 550796995 576244221 726890408 841786083 756521797 780877129 90046271 109684584 109114559 566237533 214581708 373004795 198397853 841833153 669408004 684650000 543584598 964338960 103704606 881519505 948106302 962743774 398828827 641838399 395209725 722746899 833572419 838173199 226217468 967589746 91766971 865503816 298091353 599824749 163505822 743074207 55835913 465594883 142331330 426271795 535831798 539566738 732695322 959164200 841437832 985096884 917099970 980553090 239857975 974594297 549031470 604248566 467238783 836458146 402191317 779829289 850832983 877154203 741127521 979572568 834331104 973137411 38517957 291279037 681280912 870869483 769083279 890038088 6485269 486625848 216386208 793120097 353348919 465217068 576165210 605020593 435538710 875410669 401420650 864477518 451434555 902721968 93476087 313527736 278841186 520607271 82521604 709122072 979612410 996126303 72955873 605065533 797976169 960713678 682048058 964296464 996144166 997762448 778250501 864178054 541887655 899458176 462780241 492981737 875325847 893254210 994435533 994789488 588605740 850488752 858021892 925352303 359174872 631509142 893599870 931995813 216748362 798886308 729884183 976264862 749521890 875604676 556160235 872004600 225598294 954669965 368517055 865290925 546434337 777895766 516420631 745316561 224202169 443011379 747091110 976420067 675663560 947897841 936824674 983799602 402524540 604837693 731523455 822563820 434118145 785360380 851465918 856305722 640931479 806025469 477739252 755279730 788705771 996219509 933962918 951459441 767068384 868349309 202739057 234088553 992851028 996909210 742983048 845628650 394351319 553170022 256874405 381597009 817484857 826446631 969973382 978886859 242296128 971518051 687498429 776329392 514375821 633118079 856930395 912284969 447527976 955918458 776822553 936038495 178161340 270359134 362718709 739640191 299942946 309644748 180144530 903186951 804388313 892189340 606304398 645552981 849326875 920874277 964523382 999827524 709155246 971789532 735515166 978366803 676456631 906788465 705249504 939137905 36676940 759381486 299861886 329106293 3438658 557496107 211308052 455681589 336655354 656157213 729003226 952915759 379781701 399837636 725989119 764937457 858544743 998551871 93137531 350468324 189000103 211823920 565718677 665621652 447608379 727083592 10904549 632584012 788519556 810050517 104189322 635395230 68566721 504396074 811717406 974104212 290397432 755047241 354389183 566212801 527942258 778141853 35635482 169142273 149454120 498585685 793006496 958434143 814483242 903437095 370322959 856643830 9122262 662333102 890402275 958320077 919610701 958862445 439660446 817835969 421602619 889267170 32400986 677180240 198215313 251438708 609073638 707427129 478993695 603497122 441700177 599371520 305225062 471540102 802342201 983978170 870656151 951172349 831013326 989975676 934074256 965071568 115638660 965023733 91832763 723589227 49844763 130869164 395815634 967905458 753229017 790516451 588719550 685480379 687581095 834001740 240460831 936423589 875293886 957167104 801687927 829285264 11244573 324093065 306905508 660300211 722081181 977814739 970075744 995119628 325286481 562991340 64975506 822990373 73416438 804467037 72255423 92814371 932216006 940998702 61666020 802150666 451928083 659188669 904170399 933624577 474301224 645555164 304924913 774157003 174447243 417814239 607922588 957688871 280102888 846817880 270403116 956139507 699918173 808299845 760147735 774478210 34148474 946906936 749487398 828758060 415782621 987485683 905193449 988404836 218799995 223166866 534346789 910417676 136127910 655760704 6667003 285859338 81508992 402949268 237740412 481413404 705305794 901411211 830404614 925127414 254504371 933519557 997439302 998867042 381044269 886156336 563419522 913080181 25891935 809160700 849911554 915937970 678676635 873646680 944852862 960246913 450125890 669588901 482988801 812136818 845709380 963321324 958834711 967318916 887225109 902613316 477607865 766890157 30185081 736112409 63657431 853156105 402578525 758234409 589127003 622787067 434119155 651357164 611810291 623665604 798160249 950545742 316612693 403510305 67079630 811206061 745948849 840952500 680793864 768174392 443575804 751171307 996669583 999366046 473724132 555119899 968023294 982740327 786504094 944770453 568122374 605283151 445692797 700458742 309051238 922656175 49155411 103362537 934728191 938223953 469161368 498455227 553967161 554712393 166093104 526512764 995800884 999803906 30067135 606441804 500652097 614305241 647715080 987584791 707739555 762307347 985327984 988368277 305765316 311545048 561255007 995782508 442050280 873479820 307918193 377714769 163434595 188338880 182779365 988040206 355732356 538463399 578038006 654261908 233087717 897535297 222508742 480052968 247113823 415973987 676599670 894225537 519714560 844608942 753921201 853802824 641866356 922706245 329207210 399674909 829356711 901133835 341260922 829577910 518730148 912778472 877134003 999142696 610729396 896138165 597166773 811545820 534792595 601279248 453696902 608955949 872324778 905560372 373021842 955481769 671402758 985520278 125056982 152571966 370479467 921905634 485151220 934603807 536098414 821521145 156140241 314324656 397226496 651093189 473930004 559143247 925467431 944180965 9429874 85580509 808331824 845447670 413274256 528216487 29837666 258342199 242843615 853897745 783918364 992459932 515289164 888353348 113633397 833604978 413949012 972255964 470213441 869174470 282839178 877295763 822677362 992311667 730677074 825640505 62246100 263826443 967956211 985341166 451138614 578174898 277888544 829377467 425001280 836989517 129438937 251828073 338036766 866452588 912215872 983691362 660426170 873680674 905541064 913481906 557948648 619464841 801758569 968257937 289258264 355654322 526578731 567996138 72499914 437352555 934345246 949793441 376272522 834984369 121693045 783146143 108021685 934677251 771242409 875496158 33683615 200066144 241149703 670088821 67047296 211249825 524902876 813283375 90186512 529353687 97409577 625506079 276948457 518726684 746768166 993748924 134604740 884476511 439883646 699094063 157027818 271640614 123570713 283655420 582545025 947808226 645317173 989001670 167886107 410495301 353674577 653596286 154938954 878953064 761027289 996057651 914594756 943485332 528439680 910524394 944442350 992935297 196442742 472693797 906176263 952849400 60586861 317467969 832387936 924518252 715336369 842238498 795337598 825524158 361077298 434680138 532146070 781437949 176404471 835067594 572806278 884627095 461414203 792670206 268367833 315899462 900307812 996310910 889676361 973225956 106385044 158751552 189174527 608872495 645749874 912438624 222369876 701433895 957984995 982218784 159467326 557562752 148303454 565129731 334631786 715025730 42013462 865963236 230235072 292631583 939381419 942380639 43741602 652098692 766165829 823832628 997686905 998681663 736719555 808729803 747855262 925251303 686908748 922824376 98890409 471404769 738051540 896396095 63409232 311597203 361478395 458952603 937531659 944370525 735250431 915236587 358766772 823243376 792341185 922008354 915364708 933758093 591114615 598954513 582205279 666506103 213498432 914219939 652939540 961790447 886394976 997887430 275924077 738060541 499172794 995372461 437882828 911143032 168790926 810301233 421939498 426647346 471397847 766880986 117715526 982878437 320856822 568272601 349091784 518510572 137516642 705907527 322730843 801919996 513153054 622021721 720838810 763363712 10851596 937357568 933302531 947903055 627840259 772868881 973453800 982384730 628946488 825127519 708123293 799873470 659101255 857792506 84498297 968998677 246127729 820594387 749393609 910972879 246713865 393388274 19742559 648628089 755472259 902157817 748559157 959233420 357991014 373408513 83192577 941011996 826561685 989636334 598372093 862971902 995111437 998306830 432427578 920177673 584413030 604139758 427218198 539698135 206479179 868035768 492936801 746682359 562867469 954226257 566849676 773857727 84736326 971463660 646187073 927022268 380853494 876150015 804399306 892303705 306991392 441673473 995667992 997181682 594900226 733074368 940129395 942728891 388805983 573906966 570166496 822998609 156520196 768468967 980132029 988076725 790099998 888386555 586028724 886450762 962906913 985684550 213003644 715541002 279979729 721164954 438360675 726605757 586281778 918378031 818788106 833645681 20939505 634047144 812054013 981168873 515131790 880277905 754821748 768797497 884472780 991014561 519788762 932489592 705630144 729369043 384069282 696880278 817571900 989230930 724462673 837314674 405571188 864984251 237431110 583386356 211263757 288948249 814861102 987811073 664759479 998943292 101968698 729690354 259581398 734726491 847171069 854663646 300722344 317247284 245485289 978544069 315845357 462383052 765400146 862507624 257158287 774734315 207718733 687143866 176981443 371123177 357557287 941260797 51056010 323364348 812296555 901434176 455774377 724033890 155230054 965129006 154400433 420263101 4325343 330725711 969930295 970366046 989065641 998065628 903407771 986757703 283335927 791913721 357418214 548274831 286577087 904576075 693906848 948779074 703138351 717062514 631063331 791022999 921729474 993471052 72941355 370708692 313326019 896265751 656243468 848171222 754963057 826646690 154074061 213573927 878382070 988293936 205373583 686981275 385612956 667148177 270942444 708090278 521098447 942922692 237048916 291991128 712826125 850712774 858602299 868697317 805461801 989687829 435593783 606373777 94915269 649141642 254637126 902859558 869319931 988916928 131782922 253797173 528115500 742744633 510305345 582180693 788114325 996094507 421057880 788769170 12127712 47343181 995229601 996090978 319952266 607719035 828825998 843891688 365396774 662062535 514735647 865848006 893770241 988349754 326570238 856926999 115975171 715271845 273048405 452884471 194347912 541545705 997402541 999530456 712042005 926600165 689779661 838624143 618714443 645948460 895478664 976134554 751429372 919800819 499059080 681047968 717638969 940127824 2806506 941720158 635939499 825702686 297399400 964731561 114963677 816364864 914144224 991826441 956134224 980359220 652051323 786964188 934388158 979722102 945041845 994526072 877158499 895512332 496006333 550065756 188642741 658559597 859504807 987704046 425439103 650579149 630580099 930462428 728232323 878277378 924708095 960557029 847353914 862113361 313715431 537682981 8097522 806724134 717689149 836953655 130579094 287418456 326241939 888596927 964063768 971355815 257462112 993597664 723362802 885299691 879822212 974444398 357553152 395304568 936273921 983094284 264744924 421651514 645327554 876911423 367389461 471081954 960445643 988157194 402921040 633036842 564630649 567532281 716960590 996844874 927026873 998871024 518201667 685741449 709541003 942842504 587191402 823330799 304559868 819037061 289003117 613416467 295968613 862702637 401229336 787302248 288807667 419678622 884693068 989772958 224795518 905270247 684706562 745414173 129705089 562743570 736560566 796240758 525124038 528191688 550662479 904058575 172154706 254377508 591242555 932309993 673387759 988356528 556349676 612784360 178856130 772929148 741116185 744656800 442715733 602397813 849164470 909816221 408413820 794328224 121096496 919756333 657424815 826985687 131030166 870421864 888115843 943877378 185133048 713813961 535197621 821443548 201848672 364849387 717979701 851119820 786121066 814017755 342148498 789688520 173383839 206620655 172047918 606221072 372327624 861014480 852708765 997086249 320226795 993928957 791893424 837494741 946301609 991595376 855170655 994578176 910430121 990526269 874770759 927646338 962262041 978082444 179686079 262056018 854290477 935295499 946620376 994535301 442818795 543532614 559279433 566638225 648482044 940654737 739040830 873443731 960362970 996064963 388791580 410189930 476549321 769862132 900484179 990336632 735638999 853113819 520402935 969526849 772393936 961566692 212568207 299582262 560969347 929895873 510319083 836230192 358038642 857335630 998843220 999120483 419933928 898241437 540196898 878063307 414407872 960937055 85594037 572586093 947938241 988445899 512155939 843548815 198201177 538076085 523668044 647314094 579764210 813904794 678799646 966521090 777760974 850082531 656176588 940530211 354133076 369787829 503735795 912980943 591433021 880279528 201627968 895939730 425808750 788577012 997531348 998190882 730117627 817129019 976777956 981246919 280023933 955177256 699940463 830455427 257699228 330518049 327177951 587141627 894256548 936273914 446920460 470154611 484513310 664919125 290581503 609985688 961095976 965482061 635882067 850025972 565045679 954390442 446448187 671061058 607753381 952687812 627168811 642136351 318220936 378778956 234879193 620684639 267118906 671861481 447520194 480286509 675474566 684333625 792595810 914936260 238152436 365929754 195012499 410201858 126813511 561697301 787088241 899091528 784899957 809050797 681392725 933410022 647929654 888919936 123156946 358957915 303174571 804408053 731231779 968982151 988037978 992008472 487222212 531903249 233811955 766468273 683464897 939194778 147509555 825925410 671004663 963902965 328026076 373053632 954193767 975540997 282140126 969580966 275775550 670452538 429530136 764135128 437791062 675651160 461582045 778684720 975269622 997948301 984947354 996535364 845340887 954457563 741550498 750208139 419210442 636038394 221107037 764922816 215534372 712284880 316619811 481219193 352931272 601306922 552749670 581823099 925714653 999897132 560371554 844336582 51664533 305623624 569688639 827413575 155169809 963334349 348477201 618354209 998455350 998484820 946546023 973925232 904203398 964075596 270775316 683161825 216618269 935942349 808743232 832302904 298293439 743406339 635456642 976356538 714464926 847134587 481718610 971535685 938554216 990066830 49878857 971011971 82253889 857835700 3360324 61349654 982651108 995847356 276441826 950008966 810497485 856846645 353764221 397394636 47784161 76961018 535373864 889818721 766279410 826951297 507594966 710499159 349861433 977981056 3232562 919937891 763117341 951965854 721197728 908783831 555794527 755643239 397041976 647600565 340145474 899165580 584745882 739573413 752226016 978974923 522190046 996130272 443774856 772144803 35622810 155775006 833822718 889240509 525612295 961110488 881671197 944740206 974688207 995105056 601180237 838552152 722127141 732690550 660504431 717623794 241767898 381537535 870887907 982004965 813299414 986054850 961167508 976334147 90554135 133214770 632536749 731218982 228700332 451459232 671776742 859568060 97609966 678375917 732131344 968091195 395717989 708873775 63046863 791061338 676595334 695645128 388320820 615305875 535982887 819046665 929037478 952275877 383329761 891237650 138772881 528375227 168193178 331225234 132218242 951843300 629745635 724652855 783771857 898143834 160457538 253791470 806385930 909052281 155378097 381205846 584523161 733944355 639215422 825955173 263553821 560013416 654549903 804631265 430585124 838213549 621179534 732532540 505275331 970984226 264884397 486083493 84602178 577694326 106003203 622662459 594594510 943475246 321713215 848006012 739863115 920717554 412503533 743089009 870086807 890167737 522703006 587836705 240097673 850511876 281448338 408716691 634308191 847888928 486154384 624604945 813531841 895781023 418571855 471450901 229543755 719708085 939810080 979014190 439789612 701197155 71774765 366399649 259421772 332762882 274490831 307459342 343204024 548336770 732953283 986922893 495623002 766520761 870900035 933598436 11094942 408420226 18762393 161450573 43353895 514925277 857307641 909007143 494971426 744824850 890940685 928537203 511629531 836618205 774703608 782443749 958381232 989768300 740397174 760981912 495423351 605038838 810707843 907407906 466450620 655377902 424674456 493396150 204620320 584345321 970155834 977792370 314793557 729662509 422352560 798459905 818691041 888227931 909870984 951056210 140454554 708876858 710551532 896771157 66796436 840167012 230217784 393152288 259130890 818969834 909259519 951669831 417713991 472106198 571284759 681405179 268612070 594350876 141744065 934215690 607411958 830422442 488918588 571246834 790593114 825297752 684513914 916868485 641477499 657124140 4522181 308454505 170014664 413583333 508116932 590574369 103130536 916790211 94015131 427896143 154090149 691246111 280026824 747594902 31312727 397366439 593876037 976855253 566331353 756080604 387848085 414967917 989159681 994972981 909761100 955534686 931969758 968915911 904132749 968042642 88992845 853134280 439534371 454842654 322539492 572788739 67915999 924213651 216394762 589850090 570408756 928529739 183605564 416317166 122384878 429245066 644789298 892438180 504610888 652417072 214174441 362673143 400883987 977546122 398567406 969305990 269389614 716137158 21537412 210886168 23616816 852473365 133400268 268588103 180188179 192111372 821683457 984735182 133699036 337282002 703532920 820761495 831086561 988331163 804459107 863327981 287339577 471342273 711575308 776819455 194457718 322974316 318427209 615575419 185928393 678766748 959727183 964604994 506268108 850915189 691607931 956984209 194045591 430329003 824103937 971138253 204172396 558828229 317765499 664235792 26649391 69767008 323383791 748195500 401489218 453259773 506103089 790967000 301961506 934306262 39798901 953225019 904759245 964140119 269338646 362870116 750013607 917761176 668354527 876858257 89893972 215426022 929299653 953105028 21493293 81354647 794391319 841417429 669474076 851301852 339700606 834225654 921464620 993568028 780186362 908005170 316418620 933933741 57999324 199166235 389834311 921975923 10627922 968397469 97754398 494453557 604824922 770611212 221380343 500966678 903408941 968428344 884315531 938169021 96404154 209449250 587765541 607503147 849236322 850856146 110676683 473823095 954654055 997715152 799869976 871671210 407768601 635425622 624005430 877194986 842163710 860555007 716142040 726266911 496593155 721770739 604680467 917247701 750310840 768401490 937756521 998685434 309267172 427056378 40095623 405421267 442110041 555973667 991029696 998697601 560609423 713855206 533198579 753878052 327736813 517470130 996300607 997704203 492307952 844594567 206751803 819814526 680053496 942986967 688307309 750659812 482256105 882005890 672769803 744531165 547090735 770740522 415330943 429616776 619156327 635024906 876574806 914698889 473769345 996048527 546050842 934017590 294524011 804717104 561026636 823534009 977578076 982263740 824058054 828996757 874451722 887800139 382852036 707424870 440632811 644333145 625965850 779997873 297266982 450712754 830995676 962320611 422889676 906064670 404010752 682992997 162579589 519288699 511994648 656265824 995451812 995889655 855405084 958746433 832674876 862718533 861466043 886579036 277488536 372253142 603941690 883394482 459854203 586329568 104481280 467065462 123499122 711109547 390522655 696707027 53512434 285365891 248896077 500532765 66927961 465679657 760123568 963980209 360950699 766486775 927811066 966006958 675721103 859872926 933326812 948654168 45782609 991035449 568691585 671018729 816848734 972005981 488453189 592393422 517635229 591054850 498958705 924491009 712877049 776047254 862038438 891719001 305830704 383436640 627804352 843947300 430675717 785669164 465516932 782643720 809751133 996759382 797021574 820725883 222337080 857326240 170771 282207760 346436673 857950729 778551481 884931480 733029597 954570381 634049726 960732792 478576350 713479064 954383187 989883769 429127585 679552273 27088920 895963869 405292738 623528821 80478656 598245958 172689129 490145127 20972971 946407527 506079196 751042911 758472049 858627774 193866231 862583734 842332112 861986514 296226306 416741284 590292139 850963236 471865696 691933888 443487507 731204466 664659031 944518669 529996708 537546843 188619987 521977417 335527331 755057896 368133807 835038858 502449501 967044923 622380143 858008568 56289711 690309113 832618683 902967580 548774401 905634394 571802735 644502623 636956804 960257292 485267948 658585122 731171086 878760376 772236686 813288595 666752141 720929294 173170200 424199236 813138190 867021583 378728085 634342871 247316429 317049640 688700587 941519477 549443205 635407059 267144249 591613738 310626153 994619132 930506915 935744597 573877563 991387106 923256639 969026956 13885786 242804562 718906947 836352910 715567795 944976512 692442539 956209254 370172125 632238870 654842652 739003201 627886947 749539834 826457206 930216583 180600938 819324452 944242763 982432679 244897155 790147416 560398931 657005156 295140705 446792616 118673813 657909944 267959480 592637990 732606756 735364549 828731494 976141205 749758456 757495604 662179757 756457028 715515706 971922768 424480212 619559076 292944986 819747883 480642869 568431667 484009844 516080870 970611024 979902541 404023071 642184694 665970068 875068066 472820878 973854132 533430815 998353615 488564984 899970641 574420649 665860075 709894126 990488908 788296940 793023791 390429329 666972577 355131140 443696845 837221186 890186271 835684253 860669517 274452557 686414309 729026832 917854745 399660219 975814508 481439226 821994254 424264884 816559836 912690933 983911542 6215194 864162760 927504523 927662701 623879061 723689841 432691769 451146543 270532463 941625123 300952180 654144288 822459951 967605333 708777392 724417357 580115198 934076920 84298866 968332927 988266923 997576079 311506633 502528360 894446716 996731834 250324155 426574978 969515306 995354214 740252349 874247117 187594451 634816661 70562315 285020767 307656509 383177838 838497357 857321476 508826133 663631264 484765221 860701318 973674421 982775415 596211483 656097136 111049757 599306710 439160819 577535400 35347674 809121227 634684989 979027148 23910625 390277301 572030430 589890981 240732798 429964512 720779435 862597265 677382820 847352031 408700087 553316949 458765357 485437502 410770601 910694625 680656836 944244932 709436725 833267505 245031359 594791199 931264006 989953382 928673166 962513350 451082331 618278233 266066742 924160815 426671532 571110793 991429327 998050501 151701551 362286154 774128986 930957232 30391016 327072792 757610497 864625351 234441024 386171380 618249664 833719040 863724819 913560934 328793532 364361153 477736902 485423081 848232890 873577608 700687874 834402749 804759945 922805644 65504337 942679325 502015126 591005784 21774207 572473245 230452606 483115739 128363550 512631144 783361245 872367238 230135713 624357503 858449445 883057622 660626806 667744367 63485269 890222149 22009798 654642002 127624869 858134344 399420635 817374203 66982806 165936902 996243253 999482433 555816085 659443494 977169607 991529491 157462554 428697952 260679868 632484943 818888706 957848623 856802747 993398506 542748723 933771078 75783777 297260383 458383135 659457620 724267828 934283174 136156715 680844705 787818352 806558052 999594439 999954063 788764987 951217966 104704262 301282706 394656342 944130890 106060112 478034181 888784674 952123233 340066333 438948980 350563857 528681710 466249850 745014894 492246476 645001489 880188608 922153192 903342714 987659999 406731898 608375646 163109976 583582408 200037504 539832318 695922810 984802793 963120971 974981027 22536132 487798045 483465466 757741641 396596447 620034037 186186728 568741605 139836273 656111580 413038273 924219742 343053278 511239988 224363790 606959320 71945482 394316481 747213886 775975115 556616417 748822464 843619145 955072283 161258186 762149998 283970187 892639009 655620071 774649928 80333823 292227880 492529966 724960963 40966388 403232838 589715578 970057495 207970064 392946528 295902354 773888027 416049251 719933062 89079626 368097304 777562257 971841870 925325851 925518120 259237709 506738516 605522750 865463636 977951184 995113913 39853388 539910565 162127532 819699768 804434585 879872844 742796742 760907281 55016957 468883318 17996102 935859703 361374639 937209692 559547745 626407054 511944217 968856476 567189298 644747716 749716932 819015968 225845497 916418942 415729705 793227427 586459253 971271950 592602973 675210939 986697506 996084620 659866006 955356189 230429555 874470682 721119746 840728299 170308295 787097869 258273052 819748277 775229896 817040049 149261342 430479163 311676161 735896491 378362195 530548858 697464101 789562235 684239033 759143430 538041675 971327600 794915226 849223758 369555435 834227434 367650902 494993739 255053049 524120632 862988629 941536705 51327646 474962895 385785670 640837865 958670763 981859677 200365227 665046129 48952185 823681621 288915581 970421355 468651446 927077899 721003451 821862736 406050692 587935085 380580581 581522941 20216869 907361811 295022660 664808424 720606461 964504428 908908852 945565331 277946006 475551875 820137047 970467495 347622531 829421913 239334712 570303173 719012484 849711818 179755725 718516950 308443968 328234225 849304685 925326105 725849319 840463470 364338327 509045104 122714672 908729605 115800335 715511280 519249676 906852826 771169858 977221300 322441174 899115173 110129812 916396801 912419377 996826482 789796760 815177908 133032112 211755774 922016518 929315544 191694245 695747845 295691374 737179406 693173236 802967998 987060093 995757929 784418257 935796180 209532087 425328530 89927030 347605177 364867073 476301544 770206322 798409823 138206823 355435528 151846612 486417784 927081314 976756250 786810217 982275877 624334738 774829821 263364091 530356620 303624278 392573947 418731603 901906612 231098466 807545270 166041052 658251784 120387878 589508148 827799635 866850731 959534233 965339577 674886235 959199024 17700319 944702324 432996052 449783755 572503544 781505692 763289227 822347882 675673841 844596330 602200119 898334097 787167383 833207499 748355600 804301595 604235339 739951431 732478502 810664543 731499513 812880328 501572602 956757666 524322659 959571065 69274035 552873403 767267424 999686948 880266508 995277053 657787511 682350112 474814357 771213960 896220609 929655736 282663615 285120048 101072205 134130520 780574232 789784277 646392824 928482046 732696611 926349441 44102233 288807619 641535141 910982248 176628447 799882505 859335823 877686120 158495324 622575409 403572407 525671070 300746441 894055596 46837437 415919838 906622595 911814000 745416242 802438314 478181537 937671508 453524648 593666566 353420829 356770255 599647336 833113444 466267191 938569702 608432329 736161438 928266698 949332126 725649584 875377459 414208415 685477436 851693022 971125724 918828385 992028001 312171270 458502901 206192189 570494543 870107504 884404310 370453348 611025612 273030103 579096672 998062978 998538951 175564180 543073989 954857643 973749511 63266078 722093758 873764565 976683243 716898880 748823369 998195366 999401569 463163855 557230490 919248741 951524399 980154055 994520118 777485939 822294540 694563468 769423730 599043661 819822784 798474972 919381977 654191585 809314598 177004949 289489394 678333272 715934024 434723414 595210447 63354852 824332958 363639197 723025950 97582838 404588529 264443303 947046216 727799731 856547462 879779314 938485365 769729417 852638841 292184667 779031289 824633430 993128250 314169581 867281289 360501117 707554299 693068511 790559173 124829454 235383785 591928052 637763747 21155866 527633444 696884722 778090479 663015360 956316964 767367828 836798416 561829017 651382363 718932404 772654024 568795371 957577134 303221776 545933999 43196101 282126680 686839174 832427725 198339589 449641072 562152171 735591127 323167032 934873936 238104835 490481200 337185906 719616103 626527430 639586882 460030054 619125394 871531718 872154815 997854971 999567373 442010110 612149803 849242654 961688611 35920379 873542691 914625296 956376947 71651850 196340876 59565817 668495374 599822206 848656980 733775543 932747145 350250495 647358400 810825811 948473842 441785165 756907702 415781881 517432586 296797071 726062076 266173322 951528706 899724916 921949453 940731844 960945775 621331012 754070787 560496197 707830542 498836674 810599825 879789715 975676070 104515245 543246939 892172287 899383473 947625382 955123546 9483898 827141373 464619228 774707866 420357039 922066795 918618256 981965220 689587030 730348842 355231051 734573110 170290931 262131772 868046964 972837457 520857044 602927123 263191344 709531520 610229790 761293972 90449553 839766585 781994038 975008622 129779721 731533994 383649264 778214478 847608675 912673671 743407406 965215019 737307765 869460639 403599944 544067860 165495734 631057751 498419772 534338568 617755526 869524756 389891471 545726353 506304645 915648161 217395501 259631071 185353460 667657098 516298011 817578038 80571240 898056026 188636274 426001812 741016009 833944488 44090374 383093206 617538324 863664676 999158771 999245383 167012213 598945966 496762082 625471581 143490438 965642642 529306497 532382492 312032995 929803058 887698759 984243876 313345107 802776881 167446485 712329011 826655695 835005799 232495146 764129613 570583091 828022609 308721093 873785639 236634010 727092548 544458679 964007011 1287772 331890751 152516391 232550820 617011161 948023495 529017684 865415065 455229694 688530274 825833169 998781324 644084686 665503532 264671396 427872357 414520813 432002442 600750097 692465061 159450146 541767967 381736154 455191791 562116147 574113565 259284401 980881760 919652351 961767907 85371106 457562847 579613905 692648250 126510793 730955889 464452545 682730240 468178685 667081605 976688637 997153078 207708159 641147665 683115211 918933310 11864043 212099931 62388652 996636369 969016593 978302257 392979785 636115141 599704709 941577990 73276886 712366855 642564752 957727514 775646504 862075685 391296011 530172016 909937572 997741880 933612662 946473832 507835431 764923091 407865265 528666886 699550993 931503896 757810561 773228091 564999858 715829846 366994472 766277508 941577361 988137453 15161708 30738888 388708653 476406994 808929515 977549492 582687813 973503644 316569770 804516581 918872799 956877976 719122552 739292406 440191745 685604402 503563371 801719367 40917801 337723556 284788535 655305642 204659237 628251680 215904256 347154886 602204379 775753682 948516924 957977424 474072401 901657857 77265065 921378783 581438934 604376453 653595794 741547097 679785705 865118167 712721005 964634584 709906098 819601624 364255163 631052056 431302436 614017823 572930132 840390957 730507393 760180809 824674875 841354957 562108919 798668548 935065486 981165841 962250840 979951410 43353692 847505686 894970524 963316053 636162308 757289803 270440139 906551379 376569350 596115115 173207501 382801523 365560190 496884061 233396663 969382410 929171594 966832420 308309568 685909915 393961955 430550964 36810913 852056347 432363264 716886453 288266756 373901746 247982777 362587484 388531903 899868997 941404154 956953013 201163994 569987876 832581955 926521756 420175630 895318239 672866833 954235812 477218544 633995658 165796011 589773871 167008831 329039421 385632260 535119012 456353437 867192264 369489507 558868953 801894751 861478283 200450360 868819108 416140901 980033420 188020679 605869478 888971217 943319941 945984143 981385825 633394010 952812842 401708400 983776524 611638555 657229356 987872644 989419814 742911625 755509927 144179493 235161088 926836218 947656844 954287139 995549272 441230070 697849387 938318782 944086358 36867706 307451446 236187069 345785454 843441105 860358983 792823685 881136448 54253386 55775916 540218273 887883170 171827932 611615906 590340621 700845585 224850463 944164480 201614609 315504398 323751073 581676748 86317886 677686295 270406143 503453714 234981277 977285941 387885609 951661910 478197780 973988108 821700290 888844224 888979018 980609051 989666187 993831894 7182210 624396053 435149049 869350232 37546473 925024327 275286079 758061332 941718745 970613356 341265646 492881166 948918657 949080489 241675695 777209801 530811312 695633393 373007458 860883308 466299014 761287690 220457759 683975255 876944052 969390460 589016143 847910651 57187752 594823471 163654972 839037996 608716920 960173990 864369652 935849515 665099966 976610070 382576219 626405067 138450733 768766880 67620738 198868889 981245896 981433403 76377889 286709455 135079546 774652224 944713697 977053401 633984148 967222821 534833457 746225923 619440850 624260620 998691698 999220230 396545800 626951256 50576435 637871694 494037886 518530923 370990276 473822260 74513693 517522238 767156092 775455575 278876274 621930444 79691707 792246185 397272905 880007277 312046466 998471179 988862972 997580468 719875977 932431483 985573284 988615893 189598061 503973410 68130672 882113453 607428427 778726846 889877920 932425128 735736502 896912458 963971754 995509289 168659847 988051537 83586959 278292998 169897487 706249583 894734897 959698285 821925693 847213201 609492728 992224114 875949713 965970559 362535323 444451074 687510854 905437671 100790874 638714916 492824059 609679381 263406656 475247324 663605638 796943787 604008125 714664848 178895872 748482460 15618310 466227465 902931811 961951270 695303997 848513088 495263369 771702007 416223347 629847306 516202177 716531915 93224066 256937667 578613729 639020077 74612811 453770849 528053576 761639342 663256475 785777084 188347983 231552611 500301220 668302808 250522247 411379132 803111799 825695378 535979129 912442095 326821633 453617475 114708614 392607890 334538267 590087354 63298535 263977805 912935205 962994822 133437981 641169440 510457672 840599625 642317934 673873804 923688510 946124256 578048201 829661028 526889572 738679755 405191315 984365970 382447011 688896657 744322102 921030393 220249802 556217604 252890869 542633339 138031132 663088674 958412730 971639049 468193801 897078735 395941134 582915299 954235152 971040571 561743703 976490662 988590409 990251364 723631003 845073956 491504436 669177116 159861001 657267571 219278458 369101648 510188982 828003158 140472342 572546434 245152575 925666792 887508389 894283553 671860192 816422703 664064816 794441257 958937253 988477672 627464823 710977939 567695176 691231629 137346013 730777632 891219099 964751818 99949786 456529329 886740253 922055935 817732459 965090066 344135096 888022864 294572732 726041743 917195638 927126185 582804485 583207425 268389811 966425884 746989930 938120240 987649959 989681252 114702826 771671812 548975736 781725312 754106034 848540968 221474677 879323540 350710167 570398325 199052192 899475812 4384488 244268072 433778292 665739236 531900810 979375942 67241733 512836854 140475299 963407903 74068120 688929934 750749102 995277539 238785824 383091138 759703525 978122043 326937759 516594180 779080949 919365303 251975747 438609981 1615306 747691197 963051274 987891350 591779585 939523944 468439666 777824142 649051017 838889785 291426100 881831345 767003088 934476392 491613861 983492397 947245764 989062880 945352980 984884149 807174531 869325449 715889452 739770364 614400367 979929494 788343024 930267173 225402951 432810897 792433616 857984327 988352350 997603717 240714750 650206073 92603477 736519212 632642941 889102958 75451740 655557197 623603182 642519130 385795826 448348452 416594028 964204382 899069965 954507693 240357498 801342820 121908578 694591317 906816793 986538833 801539725 978267982 790616849 860186927 853528615 947420396 31851096 350075537 377371887 831034206 792240351 821132526 18294144 991462702 325381699 647840546 349429022 559093613 50212060 949438041 318609673 604123549 360039458 531042032 7735851 746902486 636602571 924149551 623103929 684952055 579744176 899017359 999583652 999600809 944386444 990131359 697270282 847093139 672762831 869490396 707714784 884170104 856988012 931627611 57509734 973081589 210297940 244041602 78378787 887577527 597623106 697192025 531363395 798789161 737048042 854214536 448369536 758891660 16489936 410798230 875603478 920141451 436042546 953188198 419819528 813950471 211259296 555959743 614432359 851504009 865018364 910743629 228098156 484656698 892707188 994993098 504232502 619032239 423726853 893078773 920276322 944106014 831491587 975611163 507319903 971699213 627496936 718636031 939064087 939477863 842546196 994696007 264665423 419751181 63336018 119472089 636150709 753870110 660158745 872284290 748077792 890323542 635744681 758663262 699387373 981069023 706418655 749747516 412886345 478427487 788346442 852566124 998015531 998433782 451062959 924815577 245953221 656626948 765746349 770747785 411000929 662177258 126040915 326875939 815091962 953873909 918599315 968539412 10099763 808781886 90487787 296558519 317651953 824817415 150955920 380327283 668093738 738707086 953197739 967334230 542264533 566945053 166464882 989230408 579203166 719323543 167306255 323585035 392834273 882141261 398650221 846957877 10767220 382786836 861627707 898699276 613449903 841666784 183802410 952140651 580659992 713296267 621316878 820173084 501324825 678161562 319968072 741367642 710477669 969437625 726450374 876000375 559438048 721622749 64315355 119664789 622982857 631199501 798937756 976678339 145470248 567853084 162028420 836415715 802870801 947752470 930379261 958604564 971470966 998752079 459552620 969841159 598243444 985331891 48610118 886873208 79466980 475998888 889853125 953434442 319205894 949207872 806864151 997416013 73207853 173604919 837084073 982586422 247823360 358344293 871683829 889155838 85894808 891207576 199762921 200593543 264940046 391092937 603732640 775483637 993762066 994330197 916615094 944143481 5276721 622327423 817536147 923185800 409747984 952469503 933104862 981107233 1927353 712838761 808270821 887793854 423556379 497103306 779123036 993775055 922849543 974140106 193461236 930408008 432147830 457981463 512022849 691228306 494839416 915566367 398616627 758492552 446034689 866370655 351348378 895132010 119244362 870200726 608546178 786942501 881401142 912941287 703894272 955150241 264537938 605215780 868407204 939831926 19715689 324032217 944368530 960942814 868328755 917513059 125637615 525762867 538737406 571162031 307347168 612552332 271474632 518276575 897549556 948744228 667169632 817673252 325045724 555119682 288337382 952465510 751700198 842736331 215021008 509932339 81382540 925468447 6145552 742852299 170723713 222023556 609526167 931847282 764439099 865464831 432492878 742047507 787052128 879599194 914486133 945879269 667638992 884806897 854280417 938123224 242183960 729420294 156220610 914535486 133061665 758007458 947826943 998490702 522629254 873664001 406726455 542535327 989552832 990302244 120503626 928127837 510989676 646259695 756686622 888835715 212356077 959594840 407583717 651010708 365101161 440459209 336878328 451613109 138438190 742184357 40284258 945157296 112079615 629836986 706931951 971468253 632090613 845721556 100741262 190491757 707071469 732773410 163415208 976818935 764480982 979778122 488011083 795718815 720492036 918029460 444734904 820246569 680338411 780747082 406624605 793228281 342923308 744990334 835549831 845402480 601944331 777312069 274209183 347391625 410888532 956439153 433717086 674244967 436396659 498551376 325963911 676526893 365772134 831089051 253281987 986953026 24925457 715101592 925175932 993674064 241152650 794016785 978937685 991264341 539411873 860529979 541663080 903888297 716801082 879765061 779149800 965478295 591188129 812790267 852596259 997067274 80832579 358083435 885114631 975963457 47952358 434099172 705634609 760248257 406564552 527872524 249148782 503948101 413532360 539952189 40119853 83858774 680165496 947718007 943879338 953361031 747602299 899019929 88902779 522230010 593446405 619982348 491970689 499252115 875799177 980750705 998628970 998788993 7814197 516818240 126337948 633582126 252148839 648018091 868934880 962926552 868917755 896138064 448016544 642204249 96121314 857424790 973883109 977561089 636922443 924172353 360434843 694412214 817211705 973719560 776123061 962505475 448310780 503467977 984235479 986073092 93319287 187265413 572233030 677462916 815021443 946245997 700590312 820465592 122675238 214981830 544301552 883616315 737462686 886371721 338795732 574279282 743162971 794364181 965854659 974719175 323507932 462712180 169127537 545181559 892818878 918815406 452125902 660952119 613385642 906361876 271361571 336009132 646780936 951433966 258339096 655183095 147139126 148856689 466266897 807181551 638717707 773988025 105403826 510947666 218514460 816224318 483626670 692782441 875538657 915117506 7520385 260594600 885773609 990749704 928669052 945878148 984105408 996541010 263642295 581715389 707675159 946731560 742181337 743180604 536133061 660223378 717831123 964327088 949639837 989176353 385555786 515650548 962231719 991966002 86463006 443050008 757765118 788012289 350768798 435445962 994124785 997681666 762659607 884196556 720870164 785636968 68445825 590439287 274099607 489240844 163683542 899142411 398941001 586218198 171124403 784113406 391880565 768311806 801928044 856840494 635228477 963091125 324046684 823792108 444787629 481735839 579942746 911540342 667994604 746556243 877686939 975724636 784917149 896008428 11888631 519750607 233717255 737402860 23250805 847823449 909367540 949798354 399546246 543856013 117313443 579767438 823100832 828886259 703358348 809683666 382908996 868435012 271528416 387970022 342104408 562945986 801947462 811881491 683339185 984916080 941166863 985706427 171117640 435985957 76057813 85053124 464806578 843096883 130471924 914371045 707198067 988821930 819804717 894110127 25442096 78704761 500236846 695575589 760848402 944910131 644556590 647708373 837397193 904158906 878003799 972818463 77173277 890897681 335750068 860702680 325208971 670509556 584991190 969823566 389510173 949026628 298061798 472328721 39651900 547528281 584399165 585421053 681815731 814087305 324222283 891939167 240819750 744959080 339222266 769499731 235424186 311036038 812641961 915445458 407438931 788697328 22467337 613049551 996165335 997660121 190171868 259569155 659057508 865505961 670230858 919741015 458600212 521019551 357008273 645949080 43725428 275715183 712016865 962646518 307993568 535866832 286146 111096467 900716209 986014484 774524822 910944960 886600803 892449872 967686727 996031143 767923364 956029348 994966087 999528876 771481203 928058145 324389061 789551501 516545386 713810005 541962584 687227217 910047912 957642203 278247773 460545973 238213957 654411592 726393345 949204365 671385787 725802287 578882992 860734929 55744378 552279113 182967499 619070374 19478817 519947729 811370564 894998209 945214801 989196376 73072796 555908982 651726254 734872871 602079430 896519231 18853743 422730061 969715244 997535905 405722544 566969794 191881433 392289788 598250998 967041760 463534973 667563329 416575849 763451449 279317534 725314694 847231770 902109324 100043596 713411019 491674694 901155486 873858281 886728635 463325551 495043403 713133409 992595717 247458316 523746981 216925078 958340345 933386222 977397080 566909904 577777207 285572839 692008118 443856886 681110407 371169943 566118574 598324883 783541516 662518564 793814342 233476427 338764129 21490276 329628811 105684242 654116929 729859659 959236632 994305121 999634049 342293767 613983245 335510310 520355239 225588233 886504684 853174624 982473788 564944936 983013943 201309468 917379574 262839294 293672981 62271480 959670480 265496396 454941506 607389284 632046318 260476488 994955211 633478015 772553184 606062843 707686567 479945882 861938418 560827995 712444653 327024696 363939131 235423455 997805557 762321125 826429602 562370992 587537136 60953525 190741371 478233481 923164758 679598256 760354200 566357959 634843720 108289925 239286781 606352806 638330143 619455641 941189932 215514943 935778072 584890398 734766569 452041691 934342715 517509654 907949432 750798654 942153418 1618196 557365551 433126684 821666775 963530997 971275779 648260346 935860130 260257495 954255948 608038981 862470050 880810176 921767700 165148789 327741129 708097267 965570205 24208645 72381124 134270719 219395207 585743035 692253246 604783784 835019682 412098690 806088917 557528921 893128910 339215297 388311003 154666563 959674543 288152295 552873429 972787514 991110593 927297540 939196720 909086941 927622096 436709664 733607363 215192244 767117026 29593116 379670471 30010723 248688901 950310879 968396315 739645832 856129551 735230502 939119062 138577071 626688383 503747691 773906231 501857927 721092381 452993309 519422541 414343223 905134336 264944108 643961894 549924399 927307953 230928968 320669684 49048698 850053789 376245409 707974324 368837227 393966895 562129397 696435086 129849811 948870536 524001700 561454399 661529377 918068877 84666640 512720998 685253018 847186476 759657324 923644991 513220562 981030882 780709756 837045392 974072240 981424646 92707610 653088264 400733742 635089159 368083947 822787906 735857301 821091996 555651166 945135988 417836608 691833426 755435609 979141052 674294783 733477429 988778247 992273139 448615408 795182315 158200948 631672300 600673039 778693331 775104554 986172110 392901825 846164804 321837931 827849400 706574192 872708322 300862811 712321362 799119807 821906517 969340877 990813847 838772755 961825880 626570054 999018544 85688684 690043289 966843774 996377500 981767303 988136214 677049471 795500379 498020136 498387016 140828243 783372090 351625383 488749065 644685715 892676913 539391484 935489876 784323654 900287514 553715332 616479651 13052246 572601650 892513899 960905465 761934844 968889002 563730286 921346438 608339158 855237975 68317928 612591943 785054646 931520227 114716525 646295122 530015010 939311301 477976704 979117465 643230052 798415234 562602228 622857208 705242011 776561281 73103777 137823488 201475985 542142813 106082614 638739464 481909413 949617786 197606727 657682790 4004654 496530691 172259630 449785235 38414059 883415082 382576461 447190053 454874515 978978214 31981610 144645904 77504468 650121278 883845952 940894917 951281318 978722147 190785492 800942084 90757861 845535583 281400914 442525143 600761166 874995268 358866690 615129623 6172902 735103624 696740089 792345148 463270585 881208509 864156731 910566083 964578777 977900085 706974336 945751627 718343812 900073225 174851627 954312037 779739343 945565179 978814599 989443222 554290047 857650022 575696180 825274321 740672459 826498745 55471482 945018638 911705856 969559624 726489100 893699838 112994779 219007223 161523074 772332690 230517208 799451814 581677973 796533187 259065578 467226429 550097941 897047436 303350395 796023231 607032042 905488805 602914577 665179203 459393884 639956442 102009870 670513871 85621792 815636247 159712829 257398856 293717366 947094212 479110646 877345151 660882420 720128677 843711659 980095291 761080292 868892980 77533972 275794010 544346229 877101308 822571380 980322173 650174333 978833997 326274791 790209807 286246386 823959160 180271794 343575374 458626343 885354147 211541156 431409994 741060907 884197081 368259058 586625597 205740007 426071887 987472430 999756993 105721849 907547345 350901574 472678220 332512430 943076378 321578545 838760058 797436404 843580555 427290579 517116719 448123664 757057239 710792916 787118067 765563667 882504000 820599654 974234259 201065223 811472365 648484785 883062055 886955204 889730145 937552891 994826803 282931433 987534695 740850381 903467916 446905277 560438381 578985485 941256465 133330534 649965468 762199491 808551012 135602504 351816248 788497681 816827279 844924369 892375103 316597425 791200799 143054791 579792068 999569541 999814907 710980266 720908383 362057278 743726108 688285974 756129944 789080292 792708563 602147576 710916059 792963495 833897884 91293650 121562459 43414389 750778986 809454856 928030776 730819312 986215770 605801 433797574 411078119 545175930 869734658 874762064 450024289 610164821 536240300 949938096 407192773 645622836 758482037 927904325 682440956 789597823 711728360 918997137 871540493 917181994 294682201 846272523 82636123 336324110 319686020 700428717 463208319 608050185 351049181 766931994 953902868 964784148 29934482 31168603 439757645 724021683 45565307 212895852 188750606 830845976 381063383 594524119 225494098 746598306 327899124 560470558 869717387 971173227 952220230 982935723 776583830 817974417 943471275 967574784 723535817 794329523 49797427 309571840 377403841 840998583 479865019 724053217 114259647 115262488 980307697 985534680 548862334 739388471 528788187 724890567 866496482 970017718 368010234 523822656 167850768 835644095 101739818 649432230 611836980 932375449 617620827 745637285 985080105 997741440 788794073 862272975 883675166 942800304 802867851 936604022 132330516 690960750 829451111 923819828 378735899 808399071 271235063 378465964 199874671 732573854 487251612 565741688 910317381 923435105 922160532 949192406 168855530 424207416 316513680 391936540 979841185 995109996 178425312 873867875 235072046 458297958 422520759 636791785 845445862 856640707 182481391 291846207 655841532 766343054 574011351 612726480 259561585 484750469 968687745 987209279 611951704 725479609 728300121 728639382 246973537 519399255 802563540 941040742 261788619 279811699 602251248 606479256 460132804 821167655 608262387 811067948 479053894 619427564 90736875 503453578 479419640 781933318 776805310 823583053 113220066 471859065 398743456 525401983 996728500 996958201 998714010 999933747 983600204 999506081 119585209 229756309 979135765 992170041 126886469 973667119 810699705 866036815 552146736 682498469 192900375 821793482 252707067 630450496 745827553 840570830 612907047 728665072 20226458 279260518 974408733 993077642 913482069 962247167 105066315 526239017 948516384 986977180 841739364 966180890 916346928 971040457 163277423 358596635 51097271 94100266 949272705 956842378 581561304 642601861 909076719 988727314 991696444 997474636 739329162 789237372 993428052 995450384 727487005 779221942 380424889 702706647 446011160 953245810 296823640 811073869 157154656 340927001 542939010 691899565 686529777 982778827 245691681 900093324 623564701 994451556 18631831 938649454 786890533 834170493 220382120 230622415 469253959 829799615 202285403 992263022 941678305 954932760 980691061 993292422 264109546 987743860 517590496 628899133 869870290 984077726 309536543 363368886 569511129 755253681 262050888 625300466 820513667 911742625 297418624 458720622 892958302 997205677 11995617 298709072 350844308 959457031 989898884 998624201 660790378 972929819 825382299 971518915 938270282 955257078 99652396 442355013 19077137 813253840 968614712 969070301 999621324 999903895 348453913 539833851 597414314 690462746 244433348 284719005 440910398 896332197 758106151 864640534 84576151 331928571 558516587 925700544 502545371 764525545 284153469 698271813 755885488 887098683 650175208 974651174 224595436 880770037 220672914 245765668 90407187 652654496 205386806 851548961 971923599 986923421 709916762 920222405 374777354 816281125 90583822 221145626 120599121 821572171 387435942 891276624 48601453 223173669 302821993 784780838 21884113 273541759 26105856 340531204 347407160 712148393 451376830 763920610 826017640 993206443 772370909 870725778 913937056 943449371 714809383 905250649 588710936 651586272 782705031 792972391 491480646 734749806 690918070 896164018 43205071 298671474 452859587 821973308 259505314 889515588 159636540 175917487 257365372 927701559 271151145 440205646 554334416 885838147 122394896 351025634 389316008 396266102 278517964 481324118 688965583 881232380 620023692 935263948 862976695 871609687 990760318 996910598 563136774 694941996 935684124 990656872 344488113 881965219 328976255 538622286 537708258 839045628 178834321 181923766 271056117 467683992 799658218 979005876 180432793 807116161 485047410 973995080 357503234 480185481 63108229 535202778 461517830 651292106 429163392 805698840 654427819 729011413 146284271 480011439 573345047 609844957 226811226 517388608 529995158 769236585 736452315 883055431 545676998 797151986 427093708 664344345 85677725 738425100 217982708 897645204 47474314 177505745 750719693 774031531 87397228 251026539 192450776 836155335 266318613 676156100 455293195 866953180 759950546 791172661 747720751 869097786 825172105 880294756 473809841 701286702 994528221 998081473 636271160 796333511 581811158 676310224 411379363 773414340 462656209 754821300 184391968 884182587 770879344 829248329 182720252 948592477 356827064 759955417 942790636 944408743 385722276 567376464 246649611 618397754 584688307 723951096 446965415 895611768 198513255 317439552 649197969 748628764 520413785 926129423 273269055 455473876 982558513 983175568 299337207 735183583 775906435 875524167 35803891 732539653 171357656 293842676 439246803 704443292 433624639 451289459 220829905 299576470 197625078 691011198 200678958 648811426 912924257 948385787 309646232 575799854 885999706 955435582 954919720 959705921 535788945 684829095 249241893 947743472 365147998 769566112 408899667 767456895 415764104 681678152 711473395 945715733 478610018 518527896 145856714 904102490 292454519 491936745 988113581 994126614 47713713 711805851 312389065 602845870 816995890 863099277 953651468 997442810 787396795 929673624 401386913 840508935 848552968 902874529 255858015 853961943 565298035 689959699 604527389 738753081 467875761 975205836 458430155 540726329 294501400 392264801 317031030 802441409 427836514 617932173 866224696 944174683 312098953 468420451 789908028 861836036 124158933 801588916 939196136 941377699 373258385 985683927 235388429 583569166 786017853 928046618 871925044 894647056 164332558 797814340 317151071 854806310 313446362 648131842 859913398 987312714 880613417 966686345 920123190 977577475 306696579 308232722 930730564 940224582 553680198 581525950 253891030 593504273 564093083 879360013 437785251 855844049 264687397 535396977 269926680 712271026 308283800 662881164 806048301 912191265 716463243 826064968 415181237 872340119 469646576 642428926 436042730 684304845 829609856 895097097 251824012 496340878 112059163 209069562 565592220 940775641 187674874 612763327 95960421 828074232 866295874 920122243 683080913 888728390 856902290 904821402 795848828 924012523 389229279 771260397 913265863 973647593 139366531 477597160 375832180 868296418 108383334 896941565 575505882 599232537 520796262 700712952 273123826 929938401 831376321 954100569 472597883 749906781 788619766 789490325 732984955 753636224 708941012 878504045 934499785 967693352 523907302 917835377 332428750 998775522 200678657 808872386 151714335 370371828 44659080 239768068 938236973 995845414 7241178 487293759 831204231 846042619 617935411 986793943 656700407 849362375 892318538 938913545 330356661 746669382 998209847 999689553 339551283 574913797 760121411 767654552 611233360 755572202 954275122 959859890 945650834 961603887 427724068 935302097 635356760 798479223 850391418 943605865 638810603 795966096 923665525 990633937 238168652 764944334 346150034 584852441 473537801 630356544 274878336 428012247 101322655 647633772 358771967 854594859 202613582 250366731 692039716 866297493 143627115 757419735 426751977 744706868 863875070 986361515 5606365 654215975 894380322 915338672 608589307 720986695 29838876 369206204 204931042 456252115 448555170 635352133 414697575 467683270 750109904 898431009 653867855 672370413 637386928 993640832 69939545 718472482 442108257 516349190 562958184 918726249 472332320 724932220 827155949 893240068 167650867 965079011 46192347 222245820 644138873 884048819 85407633 732665257 547504800 744577742 226383809 852452088 288082082 831634774 429975152 688628425 823349025 989049123 822937434 970201381 27628830 51068573 984961395 999970335 541408961 772910593 891548084 948144156 876479507 968573953 908535073 958321294 990305077 998445646 22647937 545919327 532734381 691526385 727877844 920010320 126356175 240263798 293381851 953623728 952764511 980272102 734289970 978582606 356507644 894479472 752603551 811073629 12794369 313439397 768724547 926856153 221035611 993423320 785662128 992257384 515356710 955897175 669746802 879543862 258064134 597804421 740606670 762464823 875731720 877617981 252232200 674135308 265739315 608080985 388448416 965493773 599256476 826341302 455795583 467279278 407080718 478755930 755231324 833378943 156641449 678593262 230668567 853561441 103173273 177729026 424892975 644343553 517351520 924006417 698222854 754329993 105392388 111804432 572686326 922439827 362946679 404060080 573521994 761150923 641569880 882042975 327058971 860508990 745187174 939532739 7832700 392948719 312624125 488963367 406054795 672540110 943251086 960434256 194074451 409973224 627647266 913291658 341997107 837374988 690218474 693586851 787189177 808543912 47418673 855059888 144058152 818678089 264310039 282387625 624211233 644773060 63597052 215088802 835932954 899142873 155333583 265779969 151849766 786531645 297844370 355223436 684441743 948974659 120760392 279600101 787901548 922012593 767346847 901006782 405165419 966873041 431285667 966977017 815514088 954151015 668920029 741535054 352281813 598244807 402271414 951600994 262080285 620403279 175222751 357433830 575004516 866929159 986187374 993301952 866441747 905131010 858477023 862490770 251847939 737662693 282624499 621270606 143419356 522860643 318854295 417184318 215803160 504005450 570941926 824730775 26696480 761491264 838353726 907754457 78929365 245710169 884516218 968979510 215778622 873320658 952188132 959908491 786415431 974958908 685742609 918623953 240608892 346107670 872295401 918378601 393276806 825966839 244021575 937822689 367260203 650539313 386078853 526072250 637424351 969285188 526001584 924388462 671493345 740854224 939559668 982083865 922007231 973143549 380014011 426565629 244309683 561167547 232091921 391482424 586624753 926252372 556440958 836230698 739063148 924024264 565651423 940518248 774002644 991473880 138568899 733598602 97028688 534961410 861823423 934668150 924875019 966426166 34169033 990536609 561925897 773204504 561243395 876713465 506093663 959172712 177443564 931117745 909225828 969975846 318452812 856316683 799267163 929008392 467674387 697297334 635377105 657515208 635184817 643631718 452672442 594575032 730746738 948850531 790841408 915831382 820781618 907605285 612676338 960934030 19477748 713700942 704556977 833127573 424460958 968421238 766099912 851335250 607017670 852858818 948472964 967605429 814299093 831709979 434986995 867311093 586726613 733352549 50603173 594862351 861924217 902695276 366865370 386755027 133401505 543127094 385508056 962122122 502764931 922824585 162939514 545890579 158735053 314856766 820273747 858634710 260120300 443477155 513031964 964048250 844761729 861763615 430785177 667259198 928945000 951277065 683289590 997890325 175890003 823124159 230624016 532533185 962620294 981623401 922706867 984605093 487831465 817246530 540583397 645239168 743112789 997965519 68575620 289160281 442002472 876826202 320553334 347139272 811531003 851593035 748438875 900409725 683120150 802539095 319756673 407157216 383150034 385005633 136073636 708913398 659989520 851464548 880348567 929691189 642927116 727026930 940832966 978221090 159076001 266532976 663143936 861818068 579581486 787683373 466284729 963524096 170081462 309330388 363144574 729982934 115878621 679010596 396513884 550440852 332307978 912227100 721798516 814885581 868478585 876852578 810703703 988345543 941739217 970683969 983097056 992534127 787770623 972141585 163397056 594521889 546053487 574495996 509706059 585688715 141034457 642727623 852939046 868841776 860316706 881418733 345864677 881594831 374848112 434306687 842129648 966839069 717723492 719974371 232279965 626848355 822463691 864065438 890431120 986311891 555562133 959203595 385738387 704872060 895174629 988138117 797175806 976168970 855064380 936922420 234484912 265870109 699464869 725006531 377589207 630802354 278151129 921079737 111575178 247364703 649640864 655999020 93818619 165976996 413416774 778311449 619310086 712479805 526778192 628625339 720342117 844532998 759514657 979774334 677298414 750174406 36218971 989606786 595042389 886920602 63693448 727731801 419311237 785812383 212892370 930274941 895847243 978811369 532726529 793528401 362432208 571131723 713654827 757569405 899257244 927589716 775582945 985160012 168887121 476195914 625044258 854064263 75710827 869916630 399505213 735231272 639790501 690308461 453421821 626590822 82757833 665761466 816056671 929466558 595291480 938061350 816028110 962919670 35382142 372007095 552152353 736413102 199596296 826579409 587338556 850973047 699077783 844771540 285411108 950470955 125978777 791640615 88807021 221706558 486657445 645188916 681234062 935774984 349043693 799623483 231701341 958677798 739451327 764616409 670523514 924362874 309688230 628583595 873725715 890311343 498573185 529259668 581700786 912313212 199971693 940512143 916877837 942155516 100732617 799068151 999665714 999730441 992462931 998543215 539561176 818601268 900083515 909975644 518459465 636378654 170025306 999305634 601639509 902704323 825826338 915584638 597647722 952368571 164720326 259717430 623579029 997547366 627649521 984249077 322872336 761540867 616738656 821672005 953706525 977311656 942460239 987753951 50762456 347027250 491173180 905637267 147380553 485775490 460408428 510836176 317628775 460733940 593935691 659992415 693882916 787429542 104154372 391082237 66566351 352258450 565672611 599624333 254870543 911590748 398566223 566328690 311443728 363519417 397383048 443859379 761431775 820868048 73194827 823838908 546056526 752677673 25802484 140642063 704057231 722904600 6265944 107300555 31322225 85840563 102153643 700076501 528740651 954462346 218839925 927170636 440428519 888190563 14729423 22622352 437978268 789899961 952374131 961975112 492163922 748467275 896310946 942211991 893159702 909725452 410368122 549557433 496644077 855957961 630394527 762703857 719076091 732561293 786961764 903636747 566169402 589224140 78600097 501151545 660094748 813397087 157702605 892949545 842850707 978056612 2202413 141460221 775658262 996231030 160242597 465996772 344732096 834803785 419842727 519468026 202769872 831742439 741415463 855634708 921301163 976159614 759801185 984658260 995879205 996107753 678532259 866621567 400547414 975078240 613539346 661098285 240323487 577935955 577028769 681135416 550412945 577527490 174931864 552193006 632619825 928057605 544669772 552741091 13019129 843868488 844478269 889607169 450826024 953346036 893425021 931759423 880000335 992840217 568282148 691187359 27838215 617132694 74342597 607956519 671221974 730686905 523428587 625196325 601721479 869695388 450213457 939963723 998292758 999695138 781194054 997259724 251964185 629079996 178649806 457456700 496051137 917265307 409893340 779418457 729855759 947978099 671923324 765682732 297206379 358635829 823682282 911426818 837180513 993182744 870043953 892115160 151847451 890234653 732083614 872164930 927264356 933058211 928937875 993255899 885335794 976198510 487216673 626479178 926700500 935467897 132874021 375778311 253824885 347224776 97965946 352143582 705561698 809997786 246181692 906997558 398834658 988778390 58662347 517236744 647730772 655366147 52248231 202725757 608404712 821026021 892269057 961413621 664307377 842681130 507911505 953329559 104585201 693562405 420050951 706804911 325509678 830783542 339437048 721585590 529100440 892050990 958216772 979757892 721967031 954067920 512549136 663298182 588903504 777207375 191875562 509722998 563670056 662754742 672552097 932406486 629390109 708558891 186983745 779887258 654654534 669402746 777342982 829359564 84961971 559025742 337637401 958172038 257715275 364496796 323321144 720079760 212455612 261759029 788972117 846445427 853619261 888080673 44739118 850538175 481699856 717202776 248000865 691679459 34109023 340067768 386489416 872709544 583932254 794191028 339494145 934600096 177530710 984484459 193278304 712814545 694976251 712314363 614785053 928282953 674742980 731242756 122336033 597678296 578400107 744208362 180012783 813505524 838034736 999308871 677984962 746247292 532823407 786141372 965726897 975395333 330986292 492248623 925468231 974795548 291692356 894253641 600220598 674265487 330415725 694118795 898606834 906707656 442898107 925104148 696121377 941720522 447547861 752959427 127483713 467973965 389004944 421479708 515345361 770921667 285604055 448282946 405344898 853176140 639733765 963114658 699007391 699873883 69822577 744038660 505193372 895047727 809743903 932940327 967621995 981424452 774673782 798557472 742698064 884749769 542520222 989234960 511447769 873308001 278427044 452464119 480637352 750156591 844071143 922693077 722879989 892442029 756870740 851780138 630564648 999943248 24209549 203041340 469178149 749671735 982340092 989372526 469281572 676118273 150560719 836731341 174819077 885976917 304604127 790393738 97846477 732433163 16938721 740284576 101465851 860426500 258018550 774976206 829382391 838036390 153920424 984321328 858629116 969576128 682327412 929803302 321337411 781163813 867063377 980341694 450159406 952663643 226643593 637565012 709041733 713922785 498595369 871607137 864165683 912494158 853642958 935710227 391755357 659841846 231499288 455614397 350619722 635913728 460540633 897836386 31946722 752194581 382899328 505268667 534976110 759357550 522713164 864770337 860028848 932645928 488373370 729288414 531381433 597366643 435531066 605917212 932554122 990068305 433787588 630957617 836070293 848489055 761739504 836455527 128618903 358864330 460306405 750628379 674546568 903443958 210165216 752274166 626301721 806032854 428846640 465599002 636449998 668897830 631954224 738809638 621838094 850130549 287670469 658283542 371827197 396227344 213693973 648586894 481058753 935466554 520545184 584674563 735440615 744686709 654358854 843319983 162198687 818478873 183172713 214167973 907635325 941265821 65901144 559854380 364282990 404690239 41468491 239435309 246451289 452007463 482209603 604127214 228498661 272508488 702710552 988072911 139277836 581384913 829391612 842853034 641035769 765871436 377959894 593283044 999837458 999851072 703435896 917068180 81140492 809630725 200000348 489689677 723271468 879840854 801899690 869323765 14850784 321422291 355235366 410401971 72056048 552536815 198837613 219147300 536456542 661085931 608746955 917799880 162650925 553916827 340015328 648267028 575904718 733868004 512730068 914436604 18682937 188517389 715884663 848832675 218174211 517870910 73397428 790248497 255406272 846667188 839078722 933576762 837665621 926897530 636668411 653938424 753206056 840480792 420665918 665447849 195926561 558676745 240343771 370295648 958982317 963522342 948686569 992655938 722917274 850604438 991156471 992736072 763798124 838602142 415297663 737636752 896955551 946227093 766802631 967443482 877540403 973252320 863549488 878760812 408993236 596962118 3706086 827390282 341591702 558544220 742022644 915690676 460621103 765880158 662733029 756935139 182655460 590378539 385136362 902334950 297825783 627442705 487972820 904530907 950449603 968235430 345711110 431113319 963088768 978009197 667294291 737034844 113489540 200460671 826278167 888258592 737552684 796188268 745897861 806208333 809201272 871074848 904711038 920443983 953893616 994785697 803865004 921134256 876843509 914631672 237258929 815447690 453117617 571041268 962294434 994998379 339356100 909015659 529534262 971704225 614795955 922055287 608475398 716469314 687355223 781939244 112597828 807366442 942272350 957914457 373602907 662153781 173169468 478530370 869623074 928397495 91013330 267993126 133837232 493856273 583828200 898297262 300202545 793429372 967945541 986712740 924577297 941292119 197250871 682109379 352532334 863894927 302569280 938781982 77846480 512494700 190374999 491870205 809341381 816437104 426206680 595420939 796087939 949607549 811831736 915562090 622892120 811380650 791940235 877127021 486277812 946433640 67071370 841965383 591448722 986199769 669685343 712750343 722521956 838052929 302026176 592908455 233414835 910842004 876913416 922096733 304921120 617821524 266382803 733354394 464268479 859118982 881342490 956185940 305264248 795173678 889669631 977543848 26095695 538184201 5517151 541039162 687219613 727729038 259285830 982223442 36022628 52573662 185213475 660964817 678729079 747840000 766192244 952528354 91562142 845845297 915552525 951641133 59517926 891130990 756653931 943970184 631732468 722511395 492548577 675058273 583604979 781355321 82134415 818633591 666615168 705532419 583175693 916877442 121532356 213577297 934503667 960570473 572256160 987678360 700507419 943716114 120022512 875273370 268677414 717044840 156910088 770878653 910038069 956096922 840022980 890952291 860998469 932667725 561554538 697068687 532084661 704050305 96618900 554655743 541075694 590866571 845638079 985015477 896950857 958721997 630896157 786755752 764022687 802041418 96021890 981789477 2874945 671338581 168981098 491589201 855495286 990832560 534547521 917044552 354414886 370581294 841476399 965229363 355397652 840404001 854713298 956017631 622866019 809373996 63993721 162195809 647552742 684718060 559026608 712432081 776110371 888572244 895955530 994899903 568444613 934779991 520591267 986427210 990020393 990756969 948494694 964804292 241992147 412429183 394190297 843789641 791835823 937003178 925035383 987645147 304079511 561023467 940976881 953611292 927994228 976281139 665818842 916849112 235931438 511986220 738882490 836676446 2770114 356598535 543617120 916300222 243421843 920761377 569986745 628935874 351773880 950356429 821235332 892288476 888482799 965060884 663464764 742044442 357137777 687612860 451926467 622166773 685198500 941782066 241397237 454670323 881147203 936735129 16870201 480312883 131062558 593444698 192367646 757399147 789243137 802225658 964246621 990624466 480434238 687278454 921463584 933133547 97487617 559510739 679104491 749793353 43335476 644513708 76629292 689185457 759007109 887849381 142647788 507036075 847661877 871013726 360884454 637809182 228603068 256356844 405929177 840178132 435552702 927261752 154458480 304874636 678099041 710661768 821667798 877861020 635673578 963651234 964554451 969495762 962321449 990790283 501447274 610015524 551423665 884716569 545529595 789422221 526327316 765358921 245318123 330949072 889383302 979923255 107710691 578520115 988879192 997833487 371031039 451984989 563372248 755125909 72532128 933060673 409847508 613816512 545127291 562789436 475471342 644903570 413976199 847262622 509712109 917004945 121759492 655726315 494579725 701012083 289516686 535827084 80993994 422423231 648629161 940086203 845771200 882120731 458200432 731155008 460917072 952396769 886812753 900184858 536969725 927314585 514768728 992239250 205589743 249159066 796815694 934772066 180998338 741440208 156363981 563060987 425136001 583023799 57812184 289382758 451871328 738696018 777425703 908842779 406250987 430447827 654722332 939341817 957744680 962363243 442508374 957925261 324666594 363660804 306029897 398204796 951384419 957889958 534297914 998739210 868776682 895796920 650444437 979583659 27145887 872426214 143361059 730910354 771098985 903981768 351478571 452037580 894627569 933617918 470705607 944948491 325039282 328201517 416409373 677532224 283887242 570975951 626798918 766802017 174060716 312128113 825207821 937616993 259398000 836592844 818789792 984118844 525051599 691576205 123633275 197291981 947609825 980433849 704566571 974362311 695058074 972600947 714366453 814153985 588131319 831961270 733548473 888002209 166390999 480989207 765663319 959667306 69187409 483122723 220281774 796241616 40155479 796346546 114966436 780650865 972534711 978019281 330551999 671617206 938188546 977809704 871996027 941052457 377273072 418312878 694246274 926946265 132391235 928051316 518072966 894510064 286418769 980418423 328705477 832392977 796029292 808210116 313042410 523723864 538138070 726693792 673371320 824285826 3732258 976961296 814958232 829507160 980270158 988058704 673544442 764716555 971521986 981173155 881146305 892927990 924561546 968091185 606124767 896847045 484137649 668220391 783143168 948833451 340233554 727362125 591311750 704857128 279486209 540126415 962594324 966167618 600703412 911215705 139481785 642629630 982669821 996135583 650379516 986325549 702062019 802440467 449902438 576376363 726913509 865926211 842304400 845583351 133330374 594338752 146271392 899049782 516840418 982740253 98831182 147380898 587131258 611875809 294323763 590671935 445971150 673837415 114368845 955747911 680123590 791750661 199249447 799016001 299952566 757950522 747085981 763001098 817435270 922649298 455767464 479178946 583412345 825458706 294460558 929549135 995263245 995274012 707546697 932667230 681604791 813860631 710427720 894460814 861470804 898969364 550371229 719039526 503344043 611909591 614596126 758205893 537794579 550006626 360495173 426500423 266128054 828023975 318391588 411043588 957501733 978068583 325615996 624564068 755412917 779584660 622675763 747339844 256212922 990855438 262455231 335096298 889441146 930892521 896075526 904781889 202757196 256506652 84023789 621885773 424392491 655249655 463564201 829869680 906463378 980723018 129269578 549091267 320917248 573594192 879601494 927130577 326824311 715122570 294920236 608588853 350644458 587327870 854741512 911883230 987131437 993115118 110708999 553879869 464537733 759256243 481823893 852412744 758809159 944456290 459298606 751725397 589341551 824523333 126623748 145334243 458670897 728275712 847840552 950606148 383823825 688483647 316099130 478842577 283536757 487781257 810689179 870892175 205155992 674861431 187962346 551658979 420156683 754373662 808829303 922654044 730551132 741703512 445949456 803724153 970711142 996733605 911482037 933470055 275274875 791087386 84118777 146563292 476895768 606195465 272359694 298608867 357001391 461126121 707331436 829705877 6504562 835317764 819998431 924233431 899030191 943110361 491327163 722643004 301658620 964868306 554428834 761814425 225606438 388727461 360249996 452533655 931580126 961467800 782118767 977481864 391723658 825468197 478602981 765549638 343027128 863586294 609862064 763264513 253461898 839671269 580174453 737802709 759376978 777827303 811793566 913876029 258927137 857743558 514464796 591686436 8973053 295575039 179275698 700926813 318793278 565090115 538057770 847783194 768669039 992885654 251856316 888767282 377028020 527064287 117059122 798723687 68181158 596311263 494243695 787918352 331703199 894004763 297652578 372964897 463439529 485249058 550626120 958809038 449032560 890227054 957893249 974391365 161645311 844770955 423377847 571414272 392712543 909607619 753316953 940976201 944280115 978983632 481192367 598053779 306331051 344732416 987625947 995318626 445352309 713227703 349699686 750349177 539605071 946895965 988250242 992956916 226630291 553898533 867132618 954401866 374070208 425533670 720721727 845818739 555817830 819458140 790753926 870572369 286613033 657452142 159115287 521534666 985665258 997833709 160418523 279644621 965859211 978202703 680174973 747662775 878169328 914716471 141621118 222401264 503750007 557806012 847903182 892860379 87361095 221874739 19634078 153591802 972456906 979893891 160501954 799260506 322433072 371517596 738676083 950331926 480636829 974179585 435668903 591244772 212073653 287975718 863439891 990867064 813586224 823167114 56168956 266819865 422062335 707246177 617441468 966226574 648411542 888817955 214496351 503224461 688866555 703913329 717330308 835686947 246225696 430624312 456673697 518008111 915777132 968129023 803858476 815816930 384959499 591366934 29322895 246811551 576396176 583713434 721483889 761204311 438117766 521850842 913706244 946888497 18903056 397078861 41103852 227736657 617124976 935875315 770039597 963532831 765690580 830445933 718614854 934953565 824861194 996698023 322079719 974083278 983526914 993671122 153693746 647012498 667887011 725670253 481403925 798449433 891673609 942847382 855925178 860198747 967021466 977630129 84659156 844364147 220434681 457596419 614649022 782014828 454930578 642618622 28248302 845683320 833795111 911188309 112467714 945209872 121437728 750730693 797394230 930496037 318294262 399126874 299525154 399249024 58374834 795662160 635716408 969869894 421676046 739530582 12180358 926480021 216077447 910741926 410479275 992460489 797892545 914975787 628214584 813774339 486172659 642137380 420868730 460399108 706392245 731897722 124275452 565460019 918931301 934811493 17037956 689964216 138003270 762916027 218970011 568573597 372596039 600302424 399597943 755626566 463343254 658280334 96422728 581728746 988804418 990442964 287063622 592362745 456503972 786966079 579488581 713750284 306692506 678288443 624721771 828025968 427289168 872920630 451596284 584396539 626650975 786101417 881532229 921096721 479739367 861675690 163438654 269874811 3588220 444045957 998070085 999116191 358009041 465352464 871204716 950331994 414138326 953290482 427073407 808997351 172795759 858023486 726107783 848463652 295909761 483859324 853630503 867292431 760945471 855103855 556120722 755130258 873627964 892227962 170941127 220185459 475662550 569029133 196393159 510448887 601401304 904004688 16630542 314941845 187561488 845761785 399532522 972638243 780215161 975441407 958270581 991475239 26762008 70482978 616266234 828204542 42698898 165280240 543551291 596795507 814171167 926542242 871479855 998253044 117966264 343375896 289950907 874875124 223918847 952529009 783261959 912807257 661930236 888729628 878402551 924898659 679316554 877389425 117570612 958938085 468940958 988362645 679625969 905666995 126428252 998349288 344283132 538059428 416157824 444299765 801921062 871495522 559654481 966422670 98396342 858120985 652818940 695276045 662094737 743664066 878213760 908850146 427980383 487603465 576424072 901241173 832621630 856331381 121550791 145777158 481470737 736782851 919986153 932854942 453459364 601301778 640644293 758729919 975077374 976277486 460224136 896532928 244268635 570778391 110346698 853524528 49757393 227871317 563704255 612951435 394220469 812813000 2585982 188546180 455847238 706609137 606469459 959038464 830221108 945445692 531545954 565613968 746830307 962643298 118889384 145339921 185510141 885125834 292338613 396159238 93598819 717159305 942993770 956436704 869766481 987638361 227438818 515691437 4506598 600338501 892096736 939029572 718666970 849290802 758947893 857939595 476260201 901974528 119551514 405170498 298954274 982271242 278402914 818916589 939738628 977069115 697145758 764856566 182786945 554371201 538973874 849605539 481816595 920036913 980601858 991382853 521342794 959545739 180718670 831963378 970581080 985414138 943368375 992324424 851645277 875717078 171637615 309226446 621463926 841288315 815791595 925109891 539427481 706916827 346593096 845356745 780886831 958434674 630983250 859352495 939025438 953592366 196747678 410569885 806487541 888599540 388011252 840627815 73491381 628795770 386724211 659996427 50428092 647879764 895984898 913725659 79898232 986253937 446124222 920546750 697415837 921407675 933064993 979112582 516462818 686467907 377973595 770613575 826999320 990747831 166062687 437136820 383825817 538004710 694715552 732594933 758440396 821164863 184851424 569342983 250019875 928949104 231925377 508845759 272078441 348247602 476135524 683197971 472495793 760071273 816884753 839184233 812170671 945153773 729810711 768089813 507872045 995487263 28166888 571106822 525353110 820846503 47542466 738298628 162405487 504996836 200926894 833805491 657260493 895082995 836817643 884565210 598406476 726629277 597169766 652814637 399066248 947126144 878594414 973760947 378652598 765859564 369310269 730426672 69302046 151482461 110066982 597935060 41411068 547483003 802009012 825697848 890592051 953271104 472771056 808658902 913259104 920281247 166176322 808517745 248126481 259430209 549013329 573427671 232797564 477559168 787010678 900573327 847738571 990649056 590111872 947602283 421985175 906015080 899528262 920707186 827678933 896898690 661313972 679169341 742769736 833122307 765121339 988091041 425676241 869563357 44900774 927402282 552400211 683919704 940508745 950411320 777149964 931140164 584887243 605002614 645895752 861795598 18908828 551919459 539376455 582547511 27210826 54742598 45720645 103949723 147846371 985680086 418211880 925227797 724867561 958210712 352206244 523076748 465036048 674899952 615453837 709367768 976927042 988771937 249371332 266611717 457908361 572873319 546556045 893985919 824849200 994443707 796222530 841397831 657526618 940050267 145884352 872871563 930072151 999785370 630138952 921393241 281868533 353833602 740240190 784892296 491697413 735149512 220767804 698906285 718195317 835065715 441281163 564716499 932775363 957725348 575721776 854531912 352840245 363193973 214430888 419550543 449362737 574449201 217109224 822385599 402465507 764901085 809541906 972894427 331586946 807661119 55541375 231994764 632018061 971700459 852581372 952848364 1322353 380595191 385568660 405007272 276069076 931135053 247428212 742897304 48587662 591775581 73664441 944825180 896763082 924387172 510740498 844988420 369057659 619111933 776816020 825511655 741714620 840599636 782118027 821552189 709018301 963053647 16464254 757578173 456983912 830752788 543345155 553589199 426453248 562523583 393779533 478825535 242499321 383423779 626482782 928271505 590209371 734208478 886050090 897085626 637033788 813678583 916035137 976163171 447507269 932211019 412837811 622312355 156314087 476782179 705023180 743178208 110747328 221175910 208116961 924434635 625552573 703391699 893659755 941435831 71445339 956489963 285629851 459715804 348788187 714497924 83701944 858479216 68694251 74593633 136795717 270367404 917645187 920730217 301686451 377404061 42947779 304660487 629894162 808134222 668379251 937702473 119235579 300498395 949199570 963946356 836373492 980296987 98529975 324946679 389230707 670445812 109848235 875787768 48553183 256274077 561454791 682931464 521164728 895860125 224082087 236644160 669222660 855794405 155544823 605130502 952811203 969620657 340522786 740746044 461628124 721443335 360694024 867329480 191385236 658236304 517233402 940832664 665995034 766001848 371280497 535653257 262671528 356258442 532784946 675273248 648763948 740172754 355934516 469015400 523754297 696353077 600340122 640824458 662025931 915406465 168087299 582289288 992139656 998615799 887352755 892571139 335260198 373946304 718734189 787176535 998470346 999086705 160308863 704981285 679223460 950139195 555404064 728173993 27591026 198088882 451756824 951099907 172671951 872125024 721243086 776364043 9130106 618921446 137485483 639155920 601303118 881784093 436398824 937352661 194458228 629464275 151962103 853872887 53652626 891744836 231038375 710100696 16948970 431513404 45032896 582442035 652116750 833789184 777326653 931379632 819875714 913849549 732008719 946411489 615234089 891635750 517427976 548889245 195929500 383520192 313163029 937054744 425648340 927021438 608365619 904278470 323870079 524361365 136346736 780196178 641791768 748121370 971508527 991987772 673776990 797972613 651123915 694866104 602867914 775889268 777220851 995413437 83835222 576531125 267496951 955108686 707331335 897376122 400615163 961946217 56623932 344484045 151240771 244843781 332427236 880790799 246100212 517433183 351524538 977398232 165794838 773760510 267153082 362938893 568384061 720701753 20437291 299506287 682865167 800338807 929495806 982142036 359810340 639797455 932713788 986962623 658891231 754376006 466959238 754397343 473865348 653257208 18221330 704099273 287535549 692548017 21165568 633044588 499450178 822762106 438577148 476411444 37881215 234597551 981445446 999455623 994615530 995125030 72007921 396081184 940469994 962222962 593533943 725355145 55740946 192413764 909524024 979102223 469859356 965605452 277316647 985570873 464510633 658572433 698604896 855170524 721961271 867742064 104509941 728216193 288526656 927935335 598222424 711662771 255895457 704579775 248663114 912412954 146418537 955536207 980737446 991003106 838395750 858526263 457190758 960900731 541656596 825118268 28699225 510946652 475847955 640835722 242317409 973150350 635996204 855409502 420949492 885116668 281987254 929660585 853427838 938974995 759855758 920767357 632606495 847735007 599260648 773999260 655963084 699887990 366693627 726295764 45379256 123377287 483611965 837339242 409300911 862711407 735532971 899695457 701187584 993337216 26627220 690242199 778391004 964595570 482199925 894339585 449619554 772650623 556453453 870906406 37708325 462686109 548023825 840425476 314221847 855837627 61017882 845359682 714354484 979711473 188557992 295476787 182397529 514680090 345840545 466233245 975492785 991645037 38329891 229551325 890075571 955757227 94705474 177985881 475662663 576348100 846697606 960197319 102162015 759877857 837230331 878283160 500479231 530377677 293748040 602748509 488645457 526792982 283367045 900179499 763490369 801692516 680550815 787259938 2191918 890907518 560939093 604014526 183176985 515447512 643167329 822441638 179397635 824923017 406498499 426633183 988329339 999185683 640482259 647390793 908652518 957960497 561675196 699993879 321066528 578876810 2405158 839222668 93679934 441375568 840495975 975170136 190348730 323485828 913929966 934551374 472992009 647930959 977053324 987952534 247524487 282994666 846585510 905558086 145858442 438963308 732144336 907023494 27190939 745217491 349191051 916957909 628528968 660283349 734851631 944886156 668975320 853164467 117393859 589632388 972432933 983381548 339973081 783223360 527235172 638448987 618675792 766574311 892104767 929356984 421113336 651279163 47193444 846731669 528047712 930410931 903569452 925510035 910472851 961004334 556351964 697749307 503901894 512566236 140999510 599711791 125324740 197179456 929911780 962823327 791459547 844392598 295259365 494536758 314269414 407392964 248152183 584243376 317710235 384375380 391433777 438576662 779477313 925078510 892750045 963867448 947602785 948547780 488409071 501088298 845927081 875143137 483517967 947878923 223322947 748963745 751194554 789560958 488256867 873202671 153957216 524991484 762749092 920409901 471205951 785690874 99834137 510433385 341192037 597280682 367951541 653997788 393799849 582359004 947026700 986414402 806530040 945943634 736442079 751667058 6452891 409049934 605078606 835126454 289639435 997264298 381398267 719861053 503722583 804424312 868512586 947784537 376584455 729222627 215030526 767997582 476044724 793203743 599104976 716791037 643486564 809332972 364059092 533941103 576273177 731165629 498810142 633265705 923114665 929203361 89545388 525800185 271000342 880078346 917821289 978445435 354177849 802131815 822042574 979490082 450216597 566620042 132673329 768345487 745009024 770748451 517213467 518093187 936668905 955761799 550090168 560164595 12731536 684544446 900494292 998928882 583792271 719580657 825288621 862998628 582098352 755973445 385997802 819108817 873482365 943637391 425957327 899509045 912441189 993246834 390864184 952368314 490606996 562615570 610485598 656530136 490683358 958408481 452547695 738255715 203585060 823411222 304109761 421547619 188412438 545361998 887220629 995573430 340426536 689253929 240779002 386842335 678258632 954729113 259153251 777165289 50015526 89563777 904533354 969370267 861735408 998041674 426376791 552505845 186984224 202785956 571885679 942142272 350463117 730614377 820087390 986449134 352929307 769020709 934862914 964138216 203363030 686951667 932024384 957109237 499520846 647342275 440827787 695421027 335179019 769518805 363292189 558226015 848492282 896951865 637683423 973887750 194487177 687682494 807267032 975019066 415564528 870553030 356060233 637368271 373556788 399982369 778897757 959076814 588513667 790707347 521000988 732241414 418804037 674656079 313271759 509950300 89719854 949192424 110904871 695691076 330426230 790282668 290531402 553875793 344471908 400490264 391835232 421158740 178969567 670863049 462901943 688071549 33110321 607742809 383556183 690221849 803451204 929127200 487628853 659093270 916838272 932015227 963498595 986039668 624331379 705501254 137047465 627543326 586930625 896822021 335850313 812717694 91702778 153059931 674028428 759649612 74550418 953585687 813532331 899209024 439624189 658384610 581589413 740450587 879038737 987523300 710911509 839755429 205840595 384733098 445731824 456331486 192271929 533531276 625949935 653170318 840403420 886032905 336383181 448420877 360691136 945211120 851112169 878908747 103619608 614472862 853008887 915486247 508984467 735507293 323046470 656416898 668898335 789789542 853658002 932341328 913610585 993991796 464439388 585081852 724133036 888113074 775397074 783516663 583916076 584141312 566379634 575536798 502359115 803219399 310279864 614148848 585203326 799520159 208652219 332279792 774735281 955733154 710266548 713318051 200642850 597013858 519237075 734273631 622505148 775650544 550137061 941182871 315019042 446281950 594652345 980094689 303435209 481515281 932184032 999632712 416422774 725208335 260142125 677551010 538820649 922213006 330722075 371765509 314778658 905521308 923302738 941671936 626771954 635387959 843747691 995344733 896790505 960143621 114382359 263395194 557244839 778067963 291060171 558102995 763939150 972887546 496561719 730064420 285034699 633946561 630586083 871058798 445255730 977462353 559596411 754428252 526068255 915223342 249978070 949775489 389042769 662471170 737216399 807415167 906484369 916869386 596686166 832713086 19605511 794562034 313438197 534349429 653670502 978778254 970492581 971970845 496944765 937963121 131847504 178489460 832797983 860762122 762285663 791800806 282452961 867834127 156947169 171721736 19503981 875276045 985356090 998852176 573319534 698624949 783915694 903306146 321642256 675949262 909095479 997068875 200245425 667201980 898252606 907092713 144324100 419404771 976782718 999338555 58460381 686602028 221518201 517440722 958995200 994836380 40441205 767609879 692810673 755286396 92675989 715441591 113374750 390682693 980396781 986906721 1827917 890103076 830079350 841445676 550150550 584686434 446176981 548700344 399812575 693425243 386389233 726315055 417745807 868268693 138762003 524381106 497614471 916456897 65044343 914376492 498320167 718763530 993640744 995283689 201301582 796620032 460958719 746681306 914324737 983198962 43793249 247574294 659818887 871256022 933896969 982672614 740933523 875966686 21001747 376102065 432107737 697004486 308509415 461790685 11013335 188388023 737149323 930499608 545555213 744607416 389338983 825326642 224218044 484482304 297358997 878263160 330847722 366450403 970620489 972344312 116915138 852226644 763538149 775294405 678553605 895645871 53968017 614105857 28867550 227171776 784597416 889057703 449026137 641312735 102927709 319454035 69682098 741041683 832280369 884296482 963471864 970667618 334576792 948915270 156731841 581055586 148670742 663694599 701996456 910366877 430552784 823350470 856177984 948236126 677466541 900358490 130133392 842754737 91570788 486681266 911851504 930180104 433479430 497638494 463525619 636706604 379117233 550445679 313177054 852492288 962602520 984911194 432813138 648124280 964026979 965939490 493541651 649339272 106771400 423724752 532587854 604297053 426094855 783927709 762971171 826102790 287815039 663502054 26828975 491325536 298695789 655406343 903090687 933388101 493528549 696724542 317853020 733337330 811901221 839057794 943416206 969637312 716975987 849673820 32108433 496616747 824016357 924182657 371112933 392895567 123019636 625719785 387720140 569047561 587406045 615918863 391805548 546994087 34700295 626440781 877925436 951062733 538487649 863415598 897490112 928184883 278910317 649900449 18757896 311162271 291563394 493319938 218514139 865538097 545922601 864045696 443917296 497984387 282892209 722213234 213457921 737059932 615748763 889342097 830299751 838530720 507351031 847681975 396300225 736992073 269520977 850888560 673905577 728956763 253694175 840401100 520684729 615802861 689347560 975576182 123150337 538723143 303050046 753192345 959429322 997036221 229191464 444173951 998311027 999139937 712250529 814889815 975843011 991843007 784041980 958840974 797979212 905226136 795316264 927818974 969558552 988922844 178087252 642523985 628007717 838917485 256221671 738075225 853308775 966894623 997305445 997403795 304125426 775423645 475391711 793999211 576974608 927300990 712069166 756518010 278056240 696470179 184016379 248186544 181816451 347571074 693946735 883865291 142994865 496029854 711163395 852657121 210060637 717827773 385901402 485314111 579244066 885902064 617620586 745455509 430970279 480115693 360078919 583775940 342902260 953354532 749715064 824994526 832179419 889733437 445511 181063892 80431636 142947032 364974740 717979483 948651806 995502100 271491839 437980514 297091181 864975298 165182786 243129157 969085294 980724715 933996758 974263989 213437817 705416504 413645105 532532203 930369257 968611413 764425460 802132935 80284165 524815224 40859721 834329505 60100752 72677179 712832425 774571182 650398314 885571364 68030394 131176500 861828619 968141982 894538617 949020329 476174593 592002563 642163256 698602133 723718683 878379103 970866785 978463603 756173438 825133873 617844009 773806339 394594482 676301280 430589759 669486301 250549498 515447397 217980997 965285108 940361805 957771282 2052598 455152625 293409724 782465635 733332652 735207261 757270814 863014577 44824672 431358594 622020088 846525072 576454803 588689281 538831229 823501538 75791942 572482101 431905425 434419065 533033082 759741409 533776908 689225176 600139907 821921289 969815755 997673153 639858447 919378188 771043237 938087019 201306869 719961523 468698212 597782424 854330756 904168011 199348665 347994892 854836222 941451375 416680492 715812277 746232076 835584642 459278794 995281970 964388355 991120599 747587543 921071863 655718283 717185589 52834395 142237379 90354431 313151167 925240433 970104669 47963251 805519709 425869278 485097295 162918445 480173542 668124605 837624750 621930912 660122434 682295074 861516869 897970029 917523589 593262311 802505404 369496638 420894451 135081698 716622565 298993380 899627152 296696659 330822320 104649882 331118002 956840265 960275477 44488354 907334091 747600716 794047404 599204315 911003785 648644893 761985642 882860507 938881067 24606325 677294533 315142189 704870963 264652565 344613264 775279571 913251033 574343326 935991195 256326702 826540927 774446146 994381110 381486337 931897101 835417131 926969717 412841352 842895108 301211711 492344647 385510219 896788089 173651049 944069482 925977553 948192928 947572649 994751285 749678504 839383335 706094512 847161435 755758959 936311555 291164967 563003933 220039304 372463932 992774261 997849782 761824607 827527480 544949252 977985347 740948211 786361740 90217083 602123423 965764425 984240711 829328483 993743012 234395221 766710465 539752044 611070918 112703404 789548942 256592285 295166123 306967756 548792743 162818175 205958065 428311339 521499306 535710933 773810196 565075817 914406062 488983263 571999375 335930328 648612540 895351177 995406734 198200418 720812050 840887936 863397181 187273269 871078690 969854408 980184774 829191682 927821983 664242830 946186754 678572637 752569511 755124499 987413897 740119792 832637600 820842488 976790707 978862990 987339354 819813020 930438532 52510191 699604430 546947315 967780925 904166299 941392204 397875138 895532083 624764809 895944428 976795684 993733539 181649611 749655847 573487918 580556527 806660424 819748647 974741413 990535588 631034707 984338053 223260776 471497978 969716517 986271291 689697845 894667756 504506870 897722823 797108859 957003512 335307293 972630210 364930117 601922972 208531705 898246813 534502411 853750783 431599423 700469641 457000854 784917977 926048272 938182558 235990718 900886410 354946347 753867085 623697374 872909779 555429997 734390120 448183299 890365558 159908136 966059415 458183458 796133414 43243137 179136047 235105426 352531683 455075983 743558856 406330933 500177538 772986349 778807422 918602760 935532216 498000437 849787789 393899161 646764716 90027736 881083283 841249642 962409982 464566669 798959549 115448133 785840582 714457542 745370317 473371298 870881518 290639812 997386514 407151567 791754833 974298342 993021401 594812767 898800988 568060555 608804093 199698285 933856048 247146186 380058075 481343039 545009045 68807182 693756559 864199648 885773275 244139806 886185406 718968577 828067534 570768171 589634743 840918528 914236192 220309614 947171813 439943043 552449532 169331240 540181948 365609756 655599596 176796892 374164027 530529089 587938016 747692620 916963180 8650223 773923994 153305778 286137791 87507081 312938990 640884248 844527150 433135918 808882636 371129344 789439112 625426315 659707321 405118118 634517172 466710046 609407600 66129384 985050032 175736755 757354113 910763641 926030812 347514606 401535389 182274995 785340679 965982237 999454282 295868257 621731319 639207370 960906757 866019301 963940178 448046725 701285206 44725880 126646382 409655131 988626334 8608112 352326806 930479928 998008693 196212830 202201285 926615739 968203017 928923120 951831122 283797578 819362630 988655336 996005188 670075030 929047771 614514105 937778519 626282604 823765714 13692485 455497294 21822681 834572793 839201215 908153754 676928806 933006798 926843789 987487376 753663529 801180092 552354997 712225176 735977921 820149811 39682473 533377914 635001617 672736232 815672098 900323586 94234023 648753205 718715508 913804850 539474468 847278654 569154291 837644277 948666440 998486607 602043826 962235237 554101941 899109968 351010667 979887828 567727310 864372298 637238941 678675557 518531667 812297676 791839593 881895031 944703433 990784640 575389796 607444841 415889608 471549684 621938911 877539580 502027468 907833596 924550585 995627064 790125539 883507430 903937950 967482956 567482747 569099096 6181806 865307007 904483556 968108439 50354099 969918451 895704216 949439732 537736237 734582567 283969122 975168956 721991894 763235957 60344961 280480897 297853542 510842067 161287856 377026831 960764339 992532101 926766709 953577767 938645234 950837810 977078226 999078027 948532441 963756232 743460366 885265483 527671854 595743592 949764966 986550798 205890405 528237796 569431678 900617363 978948795 984728000 556281315 757642099 728505867 811050136 832941040 876832222 839577772 984258650 519848738 730774849 172698352 430734536 719313681 988563582 144129853 234380446 21149418 938194194 370428047 759884396 787097072 982260964 235756002 415005137 564590222 808964358 492779558 584912979 635305354 698787880 880782712 884875105 456311493 697105453 203480838 328694211 14266633 766106785 842422223 854428965 305329517 323123844 532869625 952985835 110775698 197398317 554335175 702577052 261488255 749622868 248625377 904016987 84889712 441514831 772370769 789036222 482899949 973585196 53435107 105386826 171439492 916515016 504140182 642577943 722617780 980897384 195630059 606870718 510916019 578594124 29232082 661049639 456841154 512467167 562313191 710202280 478188003 937825476 377809537 424325752 677002163 890281029 299666937 841705380 731101094 837207912 649875353 852831042 878864210 908962573 297588785 519386269 992320189 994460045 633613584 731592174 15771764 756551112 552414690 612823487 1672449 186236169 871361 432596692 188985793 788688047 82788458 378092831 108352160 378706399 856363548 962141976 461631632 707232394 256870790 453613328 423407399 719336792 701827358 839713527 237465870 254500714 563603429 617753504 366864448 804156735 287807936 601297751 32060676 213549035 454637770 760866667 530144678 974362091 304053335 506649310 808794550 853706440 323545783 618794715 543470110 796824776 655940772 851286177 448254865 548247703 534485677 987143583 822460514 857577840 455250065 459216737 35293315 289641952 549722070 758488703 876940157 954650654 149547514 199548753 165003114 477530688 532407060 688849309 468474724 772534792 523294826 831586411 678548230 812336735 108156379 167325151 919979342 977140907 754998429 797637989 334210398 490659342 617248503 819818582 76819461 412443480 539606502 927606007 397212704 429157454 180640527 968291319 934114725 979624589 734028252 824573124 632369034 888845442 187353917 640286639 837156883 903189136 983969293 999721651 419061947 704501719 35561313 73310154 356050414 598470293 478029506 743251703 910167136 921011477 293540262 437847360 20702691 800595962 320676795 646599107 427361866 763901340 982474241 985100974 797227417 815968696 921438711 938597926 69931983 913233135 346391079 803319026 772865144 774646842 348707639 453507467 570434558 606593957 126629230 416490382 774484086 794768531 270228240 907777611 750772096 961219589 734239448 744689106 865067806 995923613 263444639 820265788 252529812 362042174 542691126 731347847 762418910 850655168 775275346 792604934 892050594 961564028 817924689 988968818 69221062 876655899 295769719 691929841 209989699 597815173 947986258 993184179 46624731 883396367 391036783 494393800 14360173 591982485 855150116 856522223 143193172 255358434 374768235 642049184 332374407 565274176 409798303 967142625 574095445 788023332 194210641 809147225 651917858 928022699 49195290 153461680 360342973 410431298 375564737 961455582 968868699 994867271 343737761 601333376 5858586 43349270 411355509 756804153 297165616 750888590 52512943 235847761 795831342 885117740 768904026 975044545 755817054 882160830 191502728 652136777 740594752 884113128 69516857 507459886 873220056 882672613 313219706 484000139 233871541 731058166 117773953 281684226 377791280 589895294 853419657 867712741 894008218 976374997 797205036 974882972 759517561 880687968 5343250 427726450 582309967 921899059 56532258 820545546 395131578 734848719 499231578 665849773 838325088 904815175 243978851 695379124 19619493 438670213 481726624 571667816 206363863 632285869 272929094 388866098 914710631 950152198 973538965 985087879 274138513 609311722 984037852 998963686 350324322 566195831 169753000 818864002 877765251 963190405 719626073 722700333 141169829 424033601 308295036 391264803 486433295 705018265 489154386 517371079 20229029 335092654 999217501 999752134 140944870 831840862 427596037 862278051 6833508 144810656 382987709 406582548 28283069 96653832 714398576 780712029 564332545 890909272 866873823 934601494 579511151 966094637 899499922 999871664 705807928 940155307 539853019 830273283 144053010 661907768 952642757 954906066 394470187 635225597 918906530 993410683 712153592 910943080 413580117 904428581 24722832 873874818 843519590 918522666 604907307 843846822 253158841 615362218 668495548 838985512 789017175 930570269 994781765 996568802 27942694 738308011 268068518 938472517 972856942 984125611 91776602 593384838 335738981 616196004 878561679 952453886 367710178 840663434 660615413 750499307 738723995 826997489 476391637 640997562 389971536 724322761 5193964 559573841 588243638 912660427 592279355 689083212 286576535 804596475 412430109 953684726 83137814 179191425 614390533 726548609 418322616 987910957 653554622 760186450 505240830 901912220 264620371 514420686 102911942 902923962 631740590 803649133 157623274 447826091 806290777 827424703 851999693 919413040 27037063 137537476 956621828 972134961 722347140 777817599 162660692 655820936 601984436 810542322 355810654 566516699 478505005 799837789 699699215 924703555 133942546 760168597 511622208 544399026 465165893 485971469 415396918 519543473 340648363 673489290 986035446 993231480 696373776 762352284 609163353 949567440 416859746 908493705 95007754 508567628 941163640 956096804 148638663 427888206 413793466 753096108 498474798 567403637 233398986 368433752 536348614 634654842 730044564 808691218 113005980 260362529 569334470 984974957 348977849 943099114 859147623 959376968 280330220 442934259 98298063 283170082 187179014 413307816 691086315 826629521 133849707 242590561 647283245 860946367 864243373 865189325 892653072 990680842 362040543 434268942 865583121 927222875 955742185 984338701 517269638 648365162 791854749 923761491 418944157 730391405 275485243 650789679 617333363 730544337 94580746 961302801 980351821 992045786 40848582 534558075 535128911 811292541 744018246 806559673 569700432 713635735 967386581 969933736 852297532 907788233 317999093 569250497 207249946 332948302 470876094 817350501 738180958 923898694 370519578 929005807 180523910 238899508 80908773 120507550 515504572 868640662 585198871 716037250 683596084 892535949 602596673 867194570 244419649 308616158 844339458 931888897 729164142 735582523 795889071 958190917 603476235 814970183 852846802 984458728 91604071 382660276 227114846 644589686 855447648 914390838 139131306 974622769 33975431 890259533 251884030 623754726 254396184 845968179 745103437 904814310 990399078 997270285 640266840 926734811 910924858 973055271 394790707 788318523 704475833 885871265 238662844 798743122 27848789 453499273 9360025 212221277 505513679 885473233 10016497 814860136 625565289 707245973 698160599 905372019 72676175 436619697 41577874 65923264 574469875 721691052 721438292 979349042 513415310 814517234 504237344 548867099 242755298 969189790 828220073 832031429 490139309 823919444 397344353 546062565 997335720 999406489 279640826 815832107 415554165 903274911 914582818 972288297 709498747 871289619 289094634 801140186 960451133 977664994 870217026 996823064 387968470 580464131 567328931 685475335 188207167 880450072 912282016 929941524 596312669 838645801 546057006 903355757 611121552 863913990 1829330 965784770 400548531 677847054 221384381 273389233 25919392 629584152 90677601 331541154 776763180 947074262 950123211 996697896 804842302 834671773 16286090 321716262 999830869 999977067 319542323 776350127 80332235 425977696 191765267 263311910 202776849 971208482 962770461 992419113 815168587 874875782 232010242 854069665 473776006 675529176 824909875 992398586 75909962 654925647 998462363 998481311 795458490 811988985 598922819 822845804 365514602 720411206 371034769 957699666 938712622 967146972 237123606 282793837 590597856 756090719 862088985 940312085 968415417 992528252 696016736 990821132 969585470 997933411 144542585 259135180 998520593 998699401 39254311 340265426 3962985 107002878 460035419 709153037 170939179 389020206 571190039 645874498 105917142 865122260 61047107 659166516 341517534 798686398 614384696 721851397 52691082 586863579 639824575 799476153 185438297 204512716 137911980 872148741 274629466 855773337 545020347 601259520 672213142 794951225 56185454 278945842 204729826 264761773 593379077 746165923 243940477 292033627 59927093 963599804 743785879 935971345 263295265 434764122 573933763 983005168 221202968 634171924 877757057 895880831 262284407 986325449 268823572 747462335 892860013 999767458 29919561 982621803 484493712 649127979 793800841 928947276 793208152 994779032 875841367 965220754 890615291 976410014 413277947 662436070 42949421 313616661 889148171 901950675 986766488 996023898 418970579 877589197 585681008 975712379 404747004 961840392 262520913 841930072 675558918 880302894 362636511 829082561 508764092 793432148 174682284 939213137 372603639 384565260 68524305 261306518 628645962 827211593 395363734 565652741 122679939 943077473 690528391 690559018 769270488 796647369 65724295 649747966 413521117 534897685 902978333 948625533 865477290 985894430 403522925 621298235 517204168 918889527 434231545 480852858 193066304 463132789 251761281 640824499 331332245 928858261 793360147 832823588 745919035 889124950 146735311 541118502 335270526 341952493 402791344 806115440 976646715 998473212 485871326 961680378 89748280 774410964 658525921 824626309 114369357 180771314 980589427 994701308 865433211 966220941 183711586 948600957 821255169 887318909 780802878 889833723 583647046 990787766 189889693 867412297 303577329 492643014 271912291 869345260 282121286 346417206 463292136 564414651 380584523 531803832 493030624 663214442 452535077 788155242 651869914 944240160 658701540 705646550 588493933 865622172 85095700 434657000 516480418 595123369 484311291 638075637 283448779 605245582 989057010 991790068 357003383 804595330 149383339 765410683 43032986 388351682 127709965 882460705 367925093 450095420 368974593 456702097 747046072 897845572 534890827 645510801 481580913 552215838 602416057 856622133 14486278 42528586 748621878 775646898 735814077 947885256 198220512 761189799 157448053 747561348 721875352 952086975 295289158 615851985 460012401 987328767 992740447 996125749 877080153 988897383 175046965 264166433 948260532 992924174 315500901 466827300 255829222 981152054 586468983 939532564 95266074 335457807 690685 479724778 171201521 670290113 89329348 820834433 193235594 232810131 634849438 717752381 261271845 877636118 229352412 523492093 140951362 223573998 621718384 912100547 135366355 951151308 193521214 851371655 759926505 817808222 217643996 916478793 664811694 984999000 7509150 579947403 551094683 922657682 172673409 782381272 742300160 967949757 474195199 815937846 164951954 853566289 499281458 963948360 297803839 963647468 538703059 548509128 549943366 886032746 197966444 539028778 943814245 988974009 359326726 404985003 39556903 736406698 739802730 991844631 27880175 367294549 747313356 907464438 697110582 744056159 700546346 830995944 130664364 836662268 269862917 364277697 315220580 450863521 847800511 881308353 862963409 928917341 987629591 996238888 807498212 850094082 785223807 995037973 582603443 807195785 143926022 880367462 412206310 448768064 827902354 850532975 595145316 937269201 550233609 812396197 527381707 570377439 661663002 830075168 617187766 672160267 924936635 990797238 900161956 919487829 30783561 386234020 423132654 786131988 517794492 987072046 980668812 981141772 738408620 861517266 406699596 573981690 484455561 819185592 229111619 252472608 489363323 594422048 330475432 723312531 757160725 769263325 151852710 586677264 712396770 858893872 226001910 538738830 621439508 888738462 569684998 700129449 288985864 874788856 661189736 823859030 750726771 842087059 850304909 899225805 13425441 927870920 657585336 807504190 873464345 996310152 658786531 754705005 806064891 824602522 767965840 912803028 213908792 589285488 705743949 826934540 947448610 986603815 83298077 823387246 866880818 921780834 483847741 888362484 122826313 907521029 527826895 626211221 711789308 892923351 523870396 801872785 433060063 656824146 53004817 682466619 516802101 683882849 332375728 555594275 282805885 955137352 604411414 703831993 144393543 389550115 182216591 607048298 615926101 712409011 491315608 780675503 650962895 924829737 763583051 855529939 384186188 782874532 863732213 939018466 767859352 782920966 73577839 383305514 806106971 962761095 466541117 578241013 215838664 904271459 265952152 483994895 550944404 620450755 235065980 520075365 765269132 863715150 706752945 793257168 718096383 946004377 658023000 956429546 344697898 779448868 822468312 879489894 301592280 739248840 747701527 765086902 507015435 876180670 387342039 826199445 814734168 946788282 777472838 842370715 495212503 852379716 560603330 640808315 120362149 294943224 278468559 470019832 887969876 924238464 746092765 892985751 136775980 672807922 951537089 970650235 828482605 936527091 187983455 598213940 42619744 207928062 580331117 663983596 642983729 777045283 506661387 749191797 611514634 613175358 306362044 602087307 762295424 912968786 733837816 745161236 369789954 625195587 304935819 429325200 166818145 303363663 162446470 653134640 391807896 844169548 694715731 849416394 413425326 919060680 775780071 864192143 637625366 798058074 952467135 974806474 549597695 584424663 178486124 201254441 772978473 807930768 507122434 702762179 342916788 458450945 922071674 924814589 821619577 979988161 403822276 427489299 837374543 848585833 365903566 938168092 650498127 895371798 330684146 709705575 281523927 320568005 161049161 426239116 325151679 823069912 117509310 252081901 666595651 689067736 622631101 827218803 551436738 671410167 656569809 960678610 82743550 321324391 642765796 881118540 157747846 904791855 369259114 766413323 965172190 987842357 752247789 755284374 705396334 976826081 684653947 927147373 676673895 969125315 767164 965886042 716553914 942568343 779457271 827453524 507594434 918749386 343395319 681631340 562025554 627179082 2669997 313405470 357431400 621661323 621582828 685262206 124128659 253294225 451986791 987054109 766977948 767302011 209030295 281678686 313578733 629252718 38417671 280788031 699474311 830982593 518107885 530002105 200726701 438382715 946276144 989562058 7318612 394209813 637171345 997835155 968941993 981328472 496056531 844935749 145710127 916273493 307021352 505051484 626846869 931026970 926279650 996717100 362465001 483910688 828663390 832785753 30674473 419257167 933894950 981353411 6303899 852358047 144444282 862077305 457971548 870191919 921678429 947657860 875553045 930083343 88976219 634910333 715219332 917698871 189785008 337946874 763682624 957848712 883614439 932502243 282202440 593863213 980573647 998525440 478308449 973786833 745794824 835036642 726567279 727606843 189041443 662771482 774738352 877998247 325523090 336391883 198762850 933087125 197746228 825064233 360893899 595455460 770711793 974226574 403426703 644862816 965831670 978743181 10890784 310985853 551913745 596624962 672175921 836755628 46272051 494024336 453117803 968933052 694577489 769991660 341474853 825103630 592158613 795578474 305536752 760744663 191932483 887245788 278485840 637505075 319644903 950572783 952766026 967802043 698659889 981682394 174640762 554533757 178648709 546323789 31639137 482150315 16799345 671945536 900171344 904289327 998739189 999014153 453841731 678071838 628379252 762087724 565664764 630940396 640849777 676018871 101257531 585366296 826435318 996420282 948553881 994177929 367197514 505008108 323082385 920295068 437552623 941849872 260328680 890508124 734793473 915728076 679443355 981144050 387082023 472564505 309572569 380387567 332932394 473831067 873995250 903733146 328538854 943264075 725329809 972645390 871414718 884381240 649923729 902139765 686148890 723785991 127389793 485126264 277478 247357678 647540360 845084834 15492773 717809320 207687534 861623003 740786230 800459893 782833999 844037303 31609584 638103644 153716841 414512650 350738006 577376917 58959757 821773564 660051199 895920593 787139997 910752966 361584217 967628188 742907893 870974464 574719458 798218281 135724842 829877389 97703338 652699727 827838200 848585316 896134023 896499659 908624073 970862138 570311156 705059312 661815668 680561527 297453935 825400953 413105883 713980282 763034608 831700970 769464325 901781649 138428376 567514142 163129827 991882621 914692961 943343036 79114068 315718729 342315708 889967051 479109020 792903862 44333833 663449120 925013096 969126120 167403757 844580603 7868026 611004068 783457445 984431612 149086361 999378994 918566785 993200893 388130396 702194980 832299860 983770119 690839132 762858121 206840599 329442774 90025279 158690765 261511396 971441965 190672847 826293305 561098988 641354549 27579510 110028888 706589346 865200355 425457197 639200982 71038972 798448900 882967521 961989540 971691996 994342720 115697497 393251962 99940449 271299105 524870862 709529395 825087784 862623927 68584847 378229036 248321547 420505722 532816145 763972893 150448414 842486538 697458899 716411189 199150768 804316886 93053402 418940226 849877663 852374706 384888348 824830673 319616191 627155420 787565526 910604973 428606364 804612708 547626756 549631719 715680788 952149960 712652309 747825689 536481320 619278897 151218616 448232144 515731418 854539564 116501030 369345766 517670766 614545196 822117111 874737990 83402384 565188562 942845782 961870166 773306910 883517872 141153448 952944484 380505191 972041400 358218603 826394900 619164017 916816705 588058895 597938920 530399544 815859859 143538221 898324702 336747694 375867726 387105245 977592304 79365686 972163685 35779764 416752848 967008727 976921244 748719531 867664521 662343747 879953825 787417273 915861265 188389147 635375831 995064012 997085073 171898491 284060927 373985908 669793272 335496966 815529397 410452788 498352128 472566133 875076089 557189520 734963082 454289695 563333452 827477753 926800869 413408464 837235855 113340824 738689360 31515278 979317819 995934030 999698808 257563341 283089668 127388955 446776403 493932141 699566966 223456102 603481830 837105920 869426032 926754219 974539558 705348855 806443288 730921874 941795727 970357376 980429616 941072823 957059877 870495257 953598128 570717008 745982044 410365415 941975240 214737550 847581243 111160051 534407996 578116315 817166567 783587589 947621957 795043322 813199313 19117533 821425041 320012639 405327745 584654677 672745086 285357202 895200460 468597932 660143233 681656527 757566858 350670909 601357153 348123386 660623225 189209264 638323048 917320084 987373548 314404282 814593143 670776354 810769123 554204093 625855677 960697187 979367557 266639111 330229509 179593986 305858107 315253444 575230139 756355598 998706911 230046344 966964370 893550839 966306691 146159660 950362491 992840528 995805473 907342627 937086044 954145982 997776628 564211422 883247154 110093355 686312543 15645155 315999130 532515235 590904139 825212458 939943848 286683511 786310334 574865980 633180283 544277273 881648270 460279388 636795555 695235002 907219111 476759225 930592312 748193635 913135606 739350990 767227638 89535675 759449919 357455093 989513218 859570736 940033540 790547417 857049287 961689661 978968235 751536024 895282782 269119528 940156759 4095096 797633539 305621638 338613324 706272922 797768250 422905376 447073744 210323912 965301371 993114330 999412853 881797844 913399459 650512452 771165739 100335618 321946478 827113039 921803670 935463716 977438016 111951062 321554464 723473758 840045320 9032942 168326764 297102030 793379250 332608646 657225603 603097801 766286793 109305130 259794682 849481647 895253583 564654025 766420483 402652401 462904256 169368085 691739252 388193733 855391930 611956322 923907983 140055112 337233923 844477058 952496298 267311841 570021136 713708813 734895040 889861710 989645727 371505997 578639324 169386991 412386924 183880839 577316508 734461851 907616359 405159743 578727099 868725829 980344775 473761713 857005103 359119196 984550841 38780410 546879959 678522861 795932264 339709522 428788008 552268319 770726714 869450251 984074269 972965979 992663319 995197322 999946483 747677280 985773387 578555296 624014134 355167032 663115205 22615258 433632996 271304998 334730576 432568816 470439344 29515231 723063904 665756270 684819329 68586332 697898910 991293051 995726946 145114988 386499225 135414855 599809534 915377318 966706475 116775767 805491337 446523415 528950080 308642648 510416651 202898123 320414042 634931271 651730077 279365720 959624939 321850014 710022184 256346232 395532335 980463804 999023149 696083939 699524281 638917400 890729187 18930685 894759279 219290191 932060722 315752281 453687113 239532103 564352844 710560313 945058695 934662937 997225619 390334835 967798040 555203907 878909177 153862114 927963677 463867145 884412028 381306497 828062709 299886183 598508179 462907873 660648062 890560420 996408777 265863047 740655348 691173364 985574536 705784346 731034352 196221262 657996374 838115205 938341510 76959310 894235871 876338753 891151505 986057524 994801761 722871334 801993249 603218921 991809275 33112642 394429114 635457524 986332746 146911133 968928393 664510934 908861385 125246962 919491616 131767527 767326713 911756144 913398660 736421355 775245492 329284780 353840332 114027152 586598823 474323554 675970729 698358722 864435644 872395180 891177806 794738109 926350071 369457331 686121682 266756884 851923585 508624948 636521172 558409754 947025341 469192266 762896912 861966463 970885317 609947788 849172375 726101577 993990145 448604707 926609024 70027315 365524538 67965503 687035084 365057416 858827195 817484374 864607368 613764317 772663504 218640715 516725065 266175618 938556097 129673249 458004408 887858090 904087362 72134111 973892494 183678281 185286705 984805715 988610251 262746069 686324862 728421036 962004650 404048573 918632416 591541458 971786322 527471271 988012219 118058081 720007930 730097329 808975637 115949333 931931592 399715218 765194109 481558909 946924228 429340720 484991740 893413650 915838127 379477972 751531004 707453624 912915965 284871465 471880128 810297390 878931873 530731049 723242432 978121543 982881637 160524926 521658282 732453923 923157412 641875512 833299597 572185129 715370226 771153106 857555851 335155298 579678032 478316701 831584293 959998663 974085474 529603765 832238646 629389505 897904771 36586994 502170531 749223339 926772717 680059610 706816758 965609757 966270248 315393544 572022133 156670597 976818159 44530305 594386123 150459564 463378253 191254151 699758964 277857950 506181802 300295339 566171366 531668202 653513214 526167684 700367778 323170215 564104842 203961256 711680341 528364737 691644310 888526089 973679500 432078152 589510822 515519673 772091135 701315638 832722095 703004776 937023566 256601669 683770300 422665209 574121460 194853170 660731376 780931810 900645412 762881490 994714037 74954250 254788523 693258834 711178040 503837086 791868190 581920998 816715948 616531174 951390246 728471676 917373686 689116024 881996227 979538564 995142095 957882655 959824809 370660399 723803865 118900728 960174995 171977812 195527830 88897982 583155418 115452902 880425109 43958093 919656894 840732476 895534654 527870238 667975871 849272380 930927373 596964194 634538011 23510336 179166696 622110814 678905173 15836435 816673515 260984427 806676282 245991730 414872435 819058359 933362668 124039717 282226916 478778571 997213165 395327238 836802171 369968800 455768578 186911096 517230929 188969222 808433067 33547157 225105311 488162854 687370715 245954434 595071596 512162965 669074816 374768158 509674725 176149440 328264136 872610113 950606796 598741747 801713250 233186175 856301430 520419253 936464316 518569434 639835115 340658246 794568534 634793774 845280527 45922726 156194404 431610465 771371663 280520877 795468334 297679060 467367728 444585407 489884196 897520159 927614387 766783000 885921810 26262882 416082767 530762507 674023422 249031684 695594095 49348076 482424145 90604272 852708452 864434653 903155046 558380212 927292956 849256734 894288546 420757156 824412133 941270715 985123431 691558483 911245042 899592390 981327469 58999463 592869878 612667104 766898451 529358386 669824798 650517452 869898233 462573056 681668470 11600430 132881036 371818742 975039722 102560160 110050178 780513507 834654360 120169136 953246795 937989451 964511343 713959084 870798864 346959827 862123499 160249541 435180401 839473692 973294579 164783094 206155456 606915270 869529509 412263377 855862592 396600462 965561137 933821762 982042754 956903865 998098399 364538306 943380368 543031207 671050894 371191048 763073545 552813126 681543212 458939540 812592173 793480652 869071674 324295093 858522228 439009612 907466489 815187985 880595745 399360392 752291118 838310780 850398242 721005673 941752441 487061148 561595391 286283727 498431086 605477367 931004275 530966369 946604661 498936183 614199749 433489184 735980065 395954735 603522973 935062108 955934763 107938534 286785781 830288593 838733471 466387258 628715133 383792628 492675557 797259256 925105280 948293841 977599646 990222106 992409471 768132308 978480632 536021368 654956527 744839900 924368211 861356083 938181220 14875885 196455647 425308483 568635472 636398673 944086894 396717623 692269114 346532011 378673328 444204104 525831600 175662185 642550828 202401563 912687423 991132477 991149866 302705749 712736634 58140075 499081357 944955174 969687152 166271540 584103320 332122159 755884876 715240182 926941255 119877798 993891618 67183889 981182471 168968481 192167156 793136023 938971313 568664312 575713314 298650356 759897427 462155646 685003100 845986506 963131364 638057798 672878444 893949007 957264293 682679964 742313054 161243408 602315620 50239807 410465774 790217465 861465521 25391483 656091308 731140684 868990145 266817888 337018881 153993562 259654551 56418976 718405730 168330660 383950662 717063085 863386270 595631204 711309058 978950045 987256116 635498022 822754169 587762491 682349425 989516743 994118850 719277052 956476698 641081657 767378372 684638889 832193772 574309804 591226725 811718252 927196730 758903363 989602558 757766780 927389840 854966779 863351890 791056288 795070961 673399753 892592938 63917334 604049451 75595682 457101456 123535647 833097100 641024946 671273699 754061595 883851580 703850372 771703157 465333716 715713745 282342165 768852602 262310936 285140837 477884651 711335240 317567454 406584911 653465391 759990698 310949001 986773166 478269498 732601107 919584493 929993584 284796542 663974036 110174234 909560288 881291071 915122431 426153895 476285819 815018748 958986959 258178417 984371183 75438319 489572098 763542618 885003969 341949373 526937314 352020042 446159087 902552049 964128818 262331885 633460555 632074227 828128950 301644869 335897800 265066148 856887630 450734968 718464735 958427423 967179305 724794924 893286535 411630187 429261428 106171324 787592903 345086183 355255220 759514705 896919676 478825903 807176994 422339105 960986590 455639656 752268368 681700550 765481331 757551138 949073802 940004105 985284333 53618003 174370192 430779458 827158466 650752189 787038029 760131545 863181577 998101781 998787705 914931709 916764304 595557078 931006508 870795166 903462823 635413520 911584175 762524551 895078258 43198151 582429271 771632358 899409324 237064743 695084152 41989763 332955359 582173359 925549533 292479031 960452961 804921800 879931527 497082109 835665339 343789663 563065535 314891667 612521250 361694786 621727435 917548360 997497500 367711500 423047161 185672142 493859065 737674992 826413320 635510816 954515178 70298158 414184512 986296442 989800072 432946950 465950432 855546702 929948195 891940285 963828684 792936123 953595956 949894887 974213758 102394446 378117421 903413481 932608436 136160678 619064158 106623263 795219128 586332068 985660494 514829650 694102579 849204662 939584006 871074642 946395519 364877474 577670568 252028492 633971683 628398185 989718693 365830860 824009970 925946820 934696219 913070006 929364773 753842435 872676387 364256120 546407987 315411462 947151287 683680210 761871114 619798753 667018658 526686867 993112948 57072389 123939964 617955356 644697810 837335294 886932196 470082364 604747222 529509708 849872674 808580203 864794041 478173100 598216274 361294611 373262801 78149386 321946327 941412014 978576342 645551603 721885093 643245653 920342025 599647532 863799701 472885390 794578241 143130945 962818238 199114587 923118169 755235001 943918173 574801190 578269068 175603464 555113237 329948446 372082266 721332256 927217245 466377957 557160497 384861409 851303065 153975804 226798447 795205474 987504986 90314633 787677561 8612586 783626417 689393602 807010036 391780137 931672863 774290926 776091304 957037298 997564673 504222444 681784265 409135456 615872438 655080350 797937529 630045538 702379718 36603849 650833201 914649023 984574445 155235828 213946117 881390888 934035417 107548338 683397326 911602055 941236031 72820026 196375230 231007446 942515891 203412750 748522323 623297307 979232509 351974001 606515487 299056204 505822700 449391123 847582249 626462110 641413141 393314053 701964984 90418442 105698804 109577271 212224228 61608522 154319663 608833200 901863082 955829254 961501356 674688665 696751954 896788800 946660832 260470304 913469399 400289422 670876283 72367647 638279520 23801877 831532340 612737350 688918160 927313107 989930272 643988611 814308182 532712744 912131052 757331040 882790499 235029775 829274228 165670414 418048852 118039568 378814889 278860723 444437866 179868378 556410220 262359209 722054827 108293580 608443792 577098122 910024460 352428968 422277098 585142440 700950682 477598812 792697941 546213106 832447347 863247077 988407158 833220158 971186144 926732926 996724134 59045663 415173760 517173672 832185053 116994131 392559792 996976885 997657261 374079711 908039558 714415651 981052025 698754515 699612525 838972036 887813693 93610069 356251375 113601432 573843145 147153244 203183256 90892605 450222960 988536120 998559831 209886659 773202300 380778298 664964320 793541582 892312482 591353036 635697525 474210641 796292469 853697339 905506803 196703076 429578557 126316996 220603657 388465853 804909734 135115729 834560016 986688204 998048459 41804297 629281212 672688158 755194185 442466003 551130306 862347722 889730635 427289039 682243491 823738713 988637282 757503594 872088507 194684800 421050524 530279744 575102513 471789162 693519564 712394450 760480362 928630897 965003606 477138101 652917509 50412881 858923233 900584832 958932999 858451232 900482862 496004672 929047875 811252776 937519468 148156774 620385860 737547132 942647125 280853791 958786395 105104622 824829970 914355719 998477242 944835425 981085259 729712759 957050700 292807342 903858736 102525924 984723284 645327512 750405114 889425152 903677192 537826714 968236269 578142153 800581901 360268179 747953433 85689198 330120541 417234548 699685224 25556217 431712385 664718770 717061491 648843781 838147355 155404451 691731866 798659082 841915599 848072410 947012240 717502674 833633178 850114943 909497993 577496776 994212232 789680982 865075631 352229444 617475003 959569524 978224563 286049712 875439860 778400389 792561668 971811963 984116273 722288472 919765748 465727865 551225827 934284818 985656863 791178659 826199759 275206665 306391494 791579455 848181394 885089299 992349772 995933633 996648078 117705343 835637111 71070098 684710692 444783708 836795732 572184571 701962517 397182915 410507548 262731057 871474666 799019328 842820226 235421790 421518779 597735972 848733671 650982115 688026671 103604807 635450736 930522461 980850848 367662962 755775112 603751912 653059768 227085810 920521568 781498152 787865811 336404473 572402966 654942008 884628719 386837628 727890511 942849706 972584577 971797183 994743143 360782599 386133950 618511031 944530383 208268716 723151277 77578064 328257589 947564905 984044840 588053898 990781099 869538700 895753466 89556868 419152943 139430596 828225603 172796145 373194008 116446237 537241738 418367295 518568307 184707813 868230230 238298513 357757159 655579382 808584587 135433057 345381584 760249149 809370620 61868352 293996472 15879439 142400747 804346226 810500411 164304440 659505891 617571426 947468086 567561934 771629563 479310584 973861529 697181139 804262613 219854003 852477515 246218777 961016785 538539147 680283248 915397386 986110345 878764884 944364697 105351948 198403576 645684757 697794903 255598804 538983771 789382218 997520431 556305116 727578574 80774752 871974606 19509239 481652280 509773197 568192447 830357347 965068230 729693867 745276534 382941891 674369606 559849073 744660838 210719942 563335798 73979828 587435350 91492351 743586537 450925708 646858040 212922902 472683563 211495010 919364110 27158446 162193500 901061099 962219198 656580320 698073511 232972031 238234715 97190285 863382351 960874651 972082829 319379060 540158982 262685685 407160476 297576207 811864689 821859318 875980089 538312709 905707790 618682145 619735655 420126616 472705546 424681527 601881625 145292439 344731532 20094934 897073085 121900510 940693547 494444525 522745693 231953725 742203954 695534739 943303167 686686938 988931373 239717162 577421050 361224607 770237960 31540830 536265383 914953305 973036651 634303653 820286565 454505967 887106593 238626829 617054886 874386746 933070580 335571061 964476627 44162514 359003704 40835452 343582664 669718857 720910395 717370794 815626818 909862398 949627119 989006428 989152474 404324379 537489882 775329815 965049138 849542341 870751921 610181359 705987974 152446183 990557081 107180588 172696195 980342867 984521696 103208818 305454377 469199348 999526053 786023798 894417589 579969364 834499467 54117416 460132540 525888051 821401687 296655450 791825165 692689321 706403434 276748728 815612637 445930550 606828482 807456567 973039045 329881897 889264105 894220671 963408892 359941658 426898672 337524918 383301353 717578309 968052426 584482682 924753150 786484216 899426536 696016068 927052429 369888474 932011525 828363550 902762364 669386730 912788027 880066822 940853023 897352962 987327481 146542502 421900654 263264078 698454588 992623042 994932869 784074375 978245449 466110065 928723777 778994649 830131332 233647107 306459445 100270094 839043029 148694321 181934711 887361657 962805293 516480253 564370656 128255392 699162171 433442572 543383662 213093146 312770378 653587509 877951053 136023455 204682675 960101444 979073181 570228472 692406183 147073307 242683475 413779505 903643514 419527675 525164125 901192176 926622853 259106694 865982618 314784231 720097724 776751530 844929480 639897408 795945767 377887979 670380154 681571993 855940916 343999167 639689347 517276218 534366586 678409128 723117756 514020819 958311532 102207836 427173977 142534406 246054406 653265704 959071282 307386863 622533160 727659182 946199500 593162656 866803214 15732550 288279949 992861702 998873786 949990171 988337625 663167687 738682642 562027197 941788306 914215833 921140024 967516489 972494858 611832518 714599053 132712404 703988570 387134712 959917981 741955802 797927506 467663604 627616064 404360131 882132206 724425207 747464496 546367833 829107161 479738608 533429234 156180990 501147359 327628281 333155637 968033209 990630255 543525738 712237330 177788697 976837732 761201244 771319986 186260714 293746526 332485158 934224076 195095456 901417592 215300266 543603522 73688759 248657462 743111687 797643628 601995045 823363105 279115865 863321545 919449949 959652948 293918447 731806616 702859943 769618395 877376120 984213344 682495568 926328769 94626242 437308357 511660761 895495559 386051908 628958235 203412959 804755225 421955296 480380438 700191508 975643814 453240876 794223559 744877839 951849080 58568484 197829102 569245170 660748491 692684946 862908835 666512742 671112970 945788008 981243556 936318524 944507694 784402180 973802400 758594831 782460378 347460507 891871108 46981311 900411106 535740132 815498373 208228523 344779344 348124812 475420099 374632464 911740731 95291442 732594311 334448306 396228923 219896523 570426770 467169320 925299898 372011295 512844344 592007858 894080384 14031512 932396758 939259332 965675523 57116114 923164527 387521906 649164592 126923373 943481947 571656622 652747091 167133934 350310150 816769483 835559698 864561457 933094518 556861800 753345205 613602209 812875267 139632915 141248857 363656406 835707405 341114961 775398197 735024321 843483359 506996732 705283435 567557364 664200946 106406373 633294067 996468757 999280365 117838218 202002151 660094345 771218728 741029570 756938302 543057280 846362371 937665705 994303380 422810371 777394659 663106708 907064980 615184198 778963490 696547080 858061405 924917334 925646643 107420752 494462225 334282748 780350824 415042301 512317259 729910082 875225915 812311742 978012343 894173417 895206326 376089030 904319592 489612141 941201727 159903925 647793185 846422034 965419031 752977419 844431127 578239305 856947073 467321335 635418194 772809647 936765782 629251136 912990663 268816492 288010070 15805024 912990927 313531831 677120077 787725653 878052953 364743994 988245026 848178885 949104921 236635413 494622167 241079522 456776534 251654299 868876308 505890658 999151334 438754696 822830258 924358147 999456667 932020946 998098458 792566234 905323992 859041099 929948859 470233151 683981226 999795218 999975564 346135266 987157907 891226479 971906972 346957739 550436725 634882506 683972480 506795790 602252371 34851367 885910749 428383504 872658068 641584586 756561826 599054876 600398519 350602266 455549400 742050893 928134470 626717557 922623758 35887567 276661358 440925626 903842102 815832723 848696067 929124020 948718012 641578279 863338711 480189621 768170704 458060160 964599594 47093868 475725097 683358296 983017304 846227270 963111374 533308531 843659073 141431282 230188655 991654138 999594385 126214882 892236906 999847345 999940350 161174288 503040825 848409523 900342158 834589106 880701867 29076699 947161610 389770643 668263554 280640999 819588771 853826155 957532367 297352573 433051157 723221855 779422293 754971971 808267645 484540935 505649631 297153688 686686692 310272399 502612676 654116727 978326641 591957453 785076561 869727196 995712776 997520531 998647109 669972483 847893452 699943206 998336799 836195303 849895257 403405864 811357978 160012041 235722994 93705342 431813230 557265829 956614456 945076047 958601661 474650646 505247440 968754644 992091210 368514196 911899627 352950354 381952346 677222862 966711032 326536590 355348570 673349542 970614227 158321063 409825211 451408939 829941807 366130397 773160734 327158254 519722506 724972134 802599115 379340882 404482635 663844629 939529969 612396129 799370386 127053304 202110277 888398250 990897977 568353373 937580165 871816954 913020391 170674058 408753501 10466720 999426992 959593267 984317683 746498442 766503405 37773456 619756781 770660359 799868835 184040705 332680928 368730241 583362854 607445945 637324274 806593572 927258596 453087547 509473695 498537625 910545774 137826100 596436457 930129079 987484086 251089732 422551366 64284582 673938087 333307431 418621320 998147289 998239918 515582956 561015330 923526148 982515648 790681960 928578340 936758850 982133680 383015233 924765544 403583950 509244348 808782254 924381253 452900052 881254840 9342930 400781969 669748770 700456733 95611815 890631182 37338755 666727868 754713409 830790678 613459538 660654176 747501019 817574763 731849095 883686372 628936508 723095944 792900724 946943052 741979499 808300767 773873499 888942711 80853483 991116782 291503632 603534411 995443962 997250500 420699158 486548013 97536817 405028998 952259888 977715932 165217382 173449476 96466404 302815605 819999940 998889617 860376878 973427123 651678402 774342600 748211282 885598569 364837249 934542187 80648882 151608335 881660428 963866078 379677849 840362248 682728443 931520855 95932684 236633413 381350892 611543390 589807951 686545766 915671464 980990882 417422223 949914567 630855237 656329384 447127563 490607080 277504837 378193974 943617600 980005770 694592496 721744391 92535619 144590321 952966770 987666856 345814519 556416302 877766739 986035385 580579810 853091332 684163602 887800783 910116898 989059987 713667545 809750301 623268062 734803479 150213816 168694479 702301427 952571753 696604333 846111088 74665917 475935783 650828707 941771059 954837931 994449028 987739114 993783901 197176251 684276637 863275541 871458974 668304532 954308360 756945001 778298192 219554041 967644073 628091773 938165550 35466331 572021578 340725404 870744460 957622796 993303226 205396546 438441231 381668784 598216689 71111723 183515189 854881221 988043856 799097053 803401128 968298663 992005673 505625039 896060761 489701969 703105911 913930870 987579855 724829913 842285928 127414392 429621376 839032293 948482405 225373316 905162134 292574064 996042583 346707437 912749899 947562608 992364009 267313082 668656926 139611430 751365069 856995964 945454214 791194983 961617611 717160216 802452601 307005128 587877847 484013992 932945486 262999340 875600456 104819409 702525059 607051220 995467182 593406583 610742825 403271526 746435847 935895521 947411020 540125613 638942824 89538232 541210756 637347380 958426082 680016844 868192353 379302539 938390075 706973527 717323373 618078833 850616952 635817043 946724637 660499655 857414665 399412879 424546943 670572452 688491515 123741243 127159289 773042863 869150038 650476970 794485680 288814639 910627896 388531440 573832799 955903564 970573432 817607739 825455734 427335351 755532003 26244023 501030327 335107550 825005593 193712722 600443311 170645868 974564697 792198036 972549379 965366851 999139285 508620408 910628767 952264244 990538750 979114166 990884682 445074373 808293344 620209880 754968290 464166085 898243428 619453574 682257700 212118241 660848434 740283702 775898270 926829192 929704987 335577981 953262934 978543601 994153502 466437127 574940628 153959631 960329879 290730735 523736565 638167203 920002003 565899533 825282571 795423004 841342198 74325163 831566943 59183649 691452218 697989188 935288026 882754635 883179435 5498477 160212038 602594243 867926969 712420250 830526315 17725908 565882846 331052567 530229684 416804574 439580523 693970166 815635990 879171472 894371404 382064450 606802928 971307378 991425716 566668295 572168703 579841220 581273487 25961994 832023568 409563574 797224735 664354156 940630505 575369768 720128810 610827465 921114259 81162912 502190514 310839353 313280871 713787841 733873242 169899151 184986332 909813535 970568938 485549258 566106952 837039329 895999042 3672608 16733755 97203333 524023293 450951783 553613548 470621297 545331561 918530265 918587469 799632904 800450855 646519341 932466120 878080771 970620783 78845633 169350279 49921079 265013104 511587940 831498246 617796302 801289718 373743022 505536372 207734704 663137997 135508374 896801732 417989092 588030996 139853577 223923423 538065454 895200740 682398943 772707625 761336399 815276984 696474875 763537523 52757663 966897836 29428050 642982147 611743325 725273024 824144096 835892384 540396973 720246328 421625607 484833188 958110746 986602258 677039595 802977711 211875364 355356368 160952703 839190691 472832066 619209360 446063412 681545035 238132456 240241985 211723347 730151736 554045720 588438166 867269625 867450238 7420624 102175463 443420275 661749730 80218661 221498896 237808763 620480886 135519789 895258137 920994158 976793012 590187362 857687184 815935199 952046875 41740912 549052984 989019959 995144467 606691476 929361834 478144869 602399687 718422760 838135455 314987273 985839898 561865056 930821567 852462101 935195184 147831530 407807673 778200484 970362523 521150514 653049407 21068806 295944314 609344782 845983905 290021325 916526036 266658192 383799092 239351181 823690000 507201001 946031186 154942669 558316805 817185339 901597781 120039822 447397496 375175033 405120202 237198852 722319501 601631953 685179407 135279859 139852476 639736650 671104286 706186010 992339657 691194850 932548523 516231593 716850867 670905764 996544565 341792494 657313001 774063191 860053060 229580743 733924957 394095168 582478895 580047689 796571019 444857538 489005133 271690396 347530387 285970483 664918049 273332374 767937227 869852484 927334362 870369788 921693448 55397697 189998106 839254254 937688832 391637258 644014368 74853910 468559908 979879688 988279062 990260125 992015745 396265311 800549123 919591484 956374429 140870339 535186295 628618687 686701535 513546757 846374387 520863203 637703814 728894039 751680999 575829675 803296360 486373880 821393258 306574457 569093361 293033288 743851686 757593680 886796715 746788889 799637901 239942647 523349215 425130443 685129998 382370718 797105421 933616800 966857664 963655873 983139058 513360345 869775897 26499615 290239034 692542673 773022035 655775384 862894307 695437809 855111565 73747882 330479801 422441977 847589695 859635441 914387097 503526949 695697468 610881321 732128143 255066667 486923641 658506320 852629943 442484540 512560506 46165721 361532988 318446796 445132468 970387529 996962314 693481014 743874879 796279808 831840753 477023651 526581980 358516906 903318142 187136859 910658780 674349571 781799860 97786392 411574963 219352146 879221439 310072311 444311113 845214071 955750258 683189167 764216027 562572081 857625066 878341121 888724707 497664196 663548628 832133586 874512144 143966053 610454225 702446060 808192206 62170125 178844374 30950353 212164372 789092952 819302749 311439952 698597781 978003098 993030260 662011532 811694896 19199832 922105667 848386257 998076522 751147345 922230938 205557987 761132230 507539650 951604390 683283150 971974077 149442110 772365067 124470089 191536427 577909414 925630366 530545084 951986145 191260576 409810792 218031882 589878782 422612058 978089203 47490217 136069346 469636377 490214069 843469635 922088191 190452176 355118716 999387298 999774830 749859058 868863948 268202717 759871509 413226396 732448962 332991199 804486159 940213885 961340469 251398944 347479000 924887977 987124795 878225110 943918791 334868744 866003925 980737649 991945122 806422132 951344428 559863932 994628732 213268430 998967914 270866384 526254120 862081307 890326591 435616969 567069426 849026359 920455724 592427368 850984404 398844107 949236554 936880822 985553422 876788262 879490405 802677640 953565096 457947894 772866817 724308204 952178962 869839706 878210726 318164156 356905313 377409275 731724971 430933977 568617426 437175023 714579559 833886928 859617522 43020679 316948129 178986192 748182457 703810797 708916297 424858375 466922181 314076809 694678044 158166500 337750591 161039009 721711276 223938817 712936995 409126798 792236179 418274757 953313634 760617189 999647790 415557284 997870476 289188786 294143582 287672291 444353200 446616706 615589318 733134115 808773163 761720780 919634106 824273163 918540884 592989558 695570489 214193867 556134379 326491241 330044427 786080012 976066798 745812032 997131127 775804481 992474484 917123597 929343680 72086380 809667910 72167304 687000485 540317479 980929511 701618319 949215856 305960593 685582928 946124740 995430297 476342576 600456529 122689507 861375110 933317824 970387317 850673540 912372319 8770065 506217233 791419540 912851120 273734606 856219403 293083482 605888326 858769641 908001737 104851387 660251263 620651308 626708744 113998679 502397656 249491381 988785234 205043315 214095436 217387333 484178624 159698706 845205499 247191584 963073913 825551730 946918856 584696987 633663115 4162932 417036847 399346358 796945185 112727965 822081568 274676411 657789401 505344489 879830105 256857884 592462271 629917909 861811377 677231992 787780766 667115095 667975694 762387168 818359079 199927947 863246423 627081327 819301921 314063088 683675888 343599281 889172379 464338121 709704426 679759231 876538586 290746391 672361571 802048118 965109415 81764739 161543117 773293486 776230045 764697501 874515782 19443709 817117272 51066889 771572963 505665564 930169173 630377528 793785005 224195295 987286582 931460173 983670089 583159516 934296638 870584768 894007871 352972283 991305194 945127076 986852132 202435395 923786410 47564376 535907943 735043916 801367429 870011460 910981114 784212513 829353807 582224033 662128693 84372522 255557847 293686260 686158483 550035970 763414652 334357882 736944901 422501889 547380205 457389774 913805078 69337567 276027245 535275862 690099994 129972752 179643797 348788231 883665552 144212589 811062303 937241987 999848843 493468196 705371523 31992288 365629183 459281657 873713369 788514350 861684688 770202619 996956614 996321017 997702013 148378088 904644917 794449632 974958514 587736591 820316324 3255072 452414641 153892047 875643819 654414569 863426814 794546629 956647519 874003352 987079254 400360414 784870080 582374847 736658033 184820904 743421092 534538633 536746389 330004830 764865258 976854396 999057219 698183341 875102802 400626499 836731833 255643708 711630954 245649655 790952208 618568914 835116588 228147491 348361794 9748621 763980224 969666228 971107537 689894056 735347985 15384790 471476696 200469613 766349232 654417078 934798015 755414228 790351483 570324190 805938162 610659830 839554626 355218343 898903961 17463994 326370973 589782913 847069833 454898561 458824704 469447951 614308992 139875548 269270269 708851536 858863057 642052891 921813216 145895958 380721408 174596060 437363034 197944201 512000789 47639676 407244290 770736188 959493151 880924032 975097201 93913786 777368308 76044947 839837424 788451458 884243881 691933475 999228530 86011845 632440981 57985275 207663178 883955393 991572918 537977438 935496018 242728012 647979424 27872107 59282184 291287629 510263586 700273860 945568563 420872578 690718439 86100037 235917509 549815764 573845734 902736720 989969484 493409644 874496754 637369370 780136522 264457162 285030182 858894623 913201629 888453620 978934255 798722831 951599096 880989306 921979510 384256502 718877422 828184451 959997131 706071330 831020552 892803604 960861125 501450734 681939046 841074747 982903054 111876309 985387661 769237408 826967762 611950371 945699407 745351853 769162134 339802489 808529608 710069453 749041152 904254829 981835207 360680737 982856887 723558130 767036980 846313958 955740068 233104473 277873376 358981693 366013800 721952482 867149927 241171133 994942690 829475541 987025504 382447518 440797119 509525516 519692663 617582692 732806928 6844603 413328803 57905546 236391196 706008168 886143267 205579761 966124049 612011015 929380266 591149225 732662759 716367642 795819781 916124856 989807172 130376521 986851286 166717769 923503159 141596421 321722876 98374675 155630281 904354667 915649842 58449791 524460311 446879745 849259850 113620841 782113352 734611134 945593600 889577123 936288608 175526437 204988084 330064064 814723000 31771733 321181529 115071296 395458331 585939971 746322164 30667613 762025309 589049200 978962251 27786823 183498541 949085247 977263210 511805162 693873767 714701374 861344021 344315094 394145413 742060522 743428071 361086887 970844331 697175947 826695311 709076817 894267449 482123671 856261813 330740183 967852307 992777774 995700495 591864475 933275568 319770290 398413391 133568011 713325319 440026895 521969488 760458762 980787124 377931769 483308474 942319967 978178119 965930960 978049434 889802113 901074169 171492911 382545795 668035425 996861090 93159948 941356021 462608874 554624415 178133576 584873574 249729160 996783263 338885894 454157358 907871128 939260416 958505812 970410634 752455228 856846463 109464197 417256051 835269755 947110278 232963288 702489610 648828430 982400267 6753988 607469978 771770683 993335578 215708140 885353168 440383463 505401852 63194786 258324601 661009538 787836074 558830387 832014832 799139972 958244012 615528780 744227573 609152513 959207566 871789902 967009485 222577540 631776593 642105478 916519356 170544608 614877012 763350374 953595688 231557396 836499785 533593427 937261844 213960398 741814798 676714516 908709662 43541900 59354519 489947160 866475908 700411223 919192850 306100380 804642556 950202450 956416585 495005619 600457105 394743016 531386402 465007283 794833002 505376034 585532197 413567775 414641952 482906436 784247332 960009675 975326698 793996780 916208135 989132012 997373328 304958322 741592230 535333163 940423851 902432700 972413292 836617335 853255038 198141865 484705400 462970152 704768475 107888992 261330286 92195883 686583730 892781135 987297567 439251487 567959758 658542145 894846371 659089857 765476096 387410517 917849292 70621222 611621582 320128030 560263613 395843057 425181324 154892220 671912384 441822194 882271005 283451919 333485266 967867479 993762107 268753244 699316278 259392533 520004376 970340199 986185718 853757715 954749893 927697604 952724205 185111669 677174207 975158862 991151717 628906089 795134320 321523148 538529354 470553734 860919216 135395362 695556340 487809900 676923106 462390567 996058507 97282732 332723766 515978906 702897020 560469277 667751178 302641356 485326185 920158429 961673448 848809801 931455397 836374416 907216239 176526591 369966904 900552910 987979375 972044304 989480552 302737025 431545165 505880261 575446652 592675700 941363894 892301924 965467865 908181346 933047674 615266563 872095692 591149068 860253015 538112339 877156862 543459560 614430000 763074402 825375660 423878201 904474360 241761882 613993688 693391653 957656743 686852884 770775708 588475637 614383558 68141736 71122499 357655764 373332144 491329138 511534002 793354907 938602780 745554568 964868666 929229001 966856574 844732118 958297543 488689788 787730360 914825719 955038641 794213342 937623632 495208458 517627044 584033833 638838226 374733395 469108928 679304245 949419848 334803814 654179752 181461930 402407427 619215770 997027769 637278326 996483664 194377230 620643423 675716028 824739988 66689007 775498481 967591874 995518454 323077152 558217208 388409369 955326152 859211805 908935807 287716226 349153716 200181031 409552262 733289444 790892385 258144315 406360616 240846093 243195093 404670579 761241845 939754111 974800547 855079000 876221673 631388520 723412657 793094829 805002816 256850148 478004521 779579709 798507848 495943483 987108595 65299584 495303089 392318705 940123572 286322274 579736131 179964712 682131388 515919627 696239270 588450787 638430062 347904093 415747753 851031621 875322906 229704193 999386883 481905655 927942345 642163956 779468380 907447290 914443013 876940842 998286158 483300098 734425339 883687544 885826454 980816232 993248090 509948193 872280372 460359377 927421984 370859489 659308402 563436697 886728161 988771980 995423329 998591935 999256506 328930038 459613427 68735107 655510277 400553217 523202241 674439866 971616932 243991415 821748547 817862447 971823505 746093685 939507587 912784553 966806925 421125562 947321108 323009511 957558004 777829988 880760792 676014488 847651898 446077089 913557634 480880999 693694336 869227875 895124644 958223187 983582918 172007576 902950664 171463742 967429521 195801618 689511095 730185344 953374320 464721026 604826427 866799753 946399025 383386042 537453417 154882600 643421724 221819956 415565668 541779533 852292602 465653094 910709219 242141647 301417632 399196838 999340126 721143261 929057862 64114286 113933074 364563740 644557172 274380342 323772980 662228435 739236213 947008329 951221763 56524475 572650714 66115453 307587357 645976061 942210422 158572228 867409852 777453667 938881933 907515516 914946668 416012193 726795528 280598336 843942710 67615377 552758287 399277611 573554478 160820038 164786418 182988917 892583886 145393854 453375817 419381718 759228387 456954898 948044764 477918866 567257777 338244214 486333240 317486194 875954918 772887200 854649050 418810372 960516950 893707112 965314256 858842540 920003493 83230843 321930190 121962232 492714355 131905978 871365239 101332312 246290866 185699693 567986953 660399761 967045037 787004101 838092237 999511117 999802996 376632363 623637304 38407028 568397973 541846207 664370249 613566645 690724864 292343702 388487126 112979458 567651476 188077118 451559596 648313249 712845637 892486450 953845851 485811169 528565320 282360404 571868187 262128833 675269434 678362614 956564696 350668062 394500447 267024694 684596026 154836612 820737455 713808010 911913828 257653113 950973956 84882570 403354316 305632011 912174472 349886826 562079375 756410032 882198466 512067635 681899339 130936685 622670542 547776332 974573092 342207036 576445624 957264343 987863035 772838053 882630871 146613298 986968406 966659133 993693343 795039568 947147512 911148959 972430816 749615075 877576924 816320378 835202142 963527997 976136045 807734926 840160924 943410491 985497834 504118676 728607640 185994960 587198145 547772204 898926136 502987029 912871214 895566621 986041146 676356253 808804049 525322396 635919266 82072022 287698895 418839801 935432277 90708640 412453664 397447007 928784605 42430783 702518901 749236644 958797007 753824875 780026920 754210011 888484167 271674751 623104368 296297974 920149855 244998860 892204743 857427608 870848335 83696333 139079712 839718183 941039803 148781230 332867928 598101629 892208633 620174161 786354083 210121288 497660904 221401777 500610503 881595533 895726058 757764261 787609796 624420176 757078723 550973721 686553718 898452349 983603350 729064507 742780035 504413111 525865148 831322041 831718687 169444568 176315976 97088048 310211590 400591402 407646328 112757242 306262882 441386673 457930325 577213212 851448571 421777630 961147863 438880376 623770596 841838824 935750752 420953949 953241028 304953349 340580725 37667411 713250014 103444240 377369323 766713236 827280193 394948331 963928184 998125063 999810028 930399464 971736452 182659589 958605269 109560256 734902308 163334092 407843348 748641598 804879148 667499114 670307937 595557572 602113909 745458444 845102735 632301931 980627282 814534219 998196305 723903120 973983625 467640730 782659989 126588268 219830411 320538939 407242880 64642877 523220927 902491780 944428690 723526476 942755908 709902195 965906942 362568452 961738322 283176418 792144569 205720782 570096311 991311368 994308272 380168133 458692781 908826703 971952126 466870900 741787660 495333821 870130015 967901035 980333476 82139564 315732998 838901961 992939830 480360822 674917484 813998119 897426414 243977352 589075186 357233391 778913785 532799190 943946761 583773749 793073480 774551477 990257518 305781750 875800337 937434445 975296010 872875499 951246300 674559217 880297302 576564938 895029643 863262677 938029241 556333398 767509191 67298162 742977520 375239210 751647418 239501660 275561090 501934818 641756898 536524847 909202906 326220831 674624064 994632301 995462229 761191246 982474753 793581008 817052214 642136306 652741586 838969027 984717600 87728197 714364225 253909724 417669967 338960879 583337750 617505198 674868710 487005041 634465067 380098984 865966742 793262735 829653969 761386012 788308056 723784304 935185828 828094240 902461523 227195551 550497140 62956847 481144106 704473671 737619622 275930941 986974795 431220713 941691758 393773983 945945554 742560340 932534613 533387634 653969107 85636580 580404146 391267604 563511137 571464957 701307949 234548656 788717962 646658759 885281639 599925579 842688526 29707645 624546389 772830070 967680848 741608047 890561099 490419341 762499381 7100008 230877570 865330033 967588056 454818954 524187358 240938553 616552884 375271287 407855645 385293507 811899641 737157143 918073398 762720410 920955646 93006397 299084588 639002111 908257644 604180815 951284516 82439554 877762158 800802500 949905889 672337212 704206724 886826263 909081151 429685342 611072164 337661706 478889440 947248843 947348368 621034147 875050087 644878058 780417028 569394697 947227600 287309639 869796943 500554917 915703772 832213758 898804186 820416661 875099808 113004245 631241891 756398850 786023991 656322587 899930452 229718692 372285426 582282811 629427877 730319293 773764854 797641446 922577072 590841740 843561965 728392356 922818076 378767841 936863783 362990297 989291442 603878553 947648755 363521187 995042608 216568320 425495972 399219621 723991415 447273193 513473986 683712255 765525079 527661103 582808620 232032220 692681902 775942907 803644456 657125783 747844399 565237491 902096643 737017650 785703644 361558018 965177519 326680334 916153079 161054183 379094495 653448985 798947967 80660881 772133236 549674918 771263899 226238979 428692020 986647199 995738554 125546859 905514033 639236781 877556087 385530216 556939654 109936992 568473584 125551756 797931947 66908207 585633653 285104305 957702950 902574219 976354663 393048989 964736529 507620449 772076134 313657299 890972574 229375899 767153978 407319041 453547226 839352792 994272233 823594357 883558185 34732122 748139557 40053553 806271859 77783270 874659424 324245203 682635098 402902603 463241183 368348514 512747619 956232253 970474946 24342986 875932646 399102682 869805919 887266522 967636470 827142279 942986595 406358031 510977389 513478862 815047161 745226286 898224896 951092241 999302801 866641431 882146482 582738429 634098113 955596800 987160973 403276882 485825705 793577121 878582405 977758353 984439554 346823238 426155796 216962226 671822615 37949099 162694574 400541048 692998209 908890003 979143400 620538170 812536293 123694832 149491863 554622364 563055637 234958399 708225419 612250637 974180963 492765538 942306056 216213988 640387194 387184061 614757454 508472134 696409156 551738037 657685498 887740039 904733422 107081585 909801867 355713808 406174219 939706390 941190603 383039160 615983079 655541171 815757779 510292805 728850181 507520628 600251029 468852984 483809865 294041593 534594238 995449616 999427906 282330252 813919315 160443933 279180311 99434214 297865524 668722566 971086959 641788061 744777188 90739768 311067484 550729134 689426692 486963419 909663269 898957032 982047656 308741931 562725927 628243079 966939874 117765473 990956100 507098467 745416589 701334882 705909690 89870385 243690620 593575554 754606146 811036775 844447494 330284108 803460728 360982862 790265014 922537596 992705984 423546783 776782153 58142694 153322476 195691850 919006954 916453484 924220036 623619877 851358119 226516584 752058799 602206536 830112041 692752904 848903037 479963455 883887948 6953171 962850424 928242118 933342838 678248670 984057024 63466656 406930001 244778356 848625388 342464928 616690121 899912339 953470916 45125903 544869598 745515035 784953074 88505999 889656857 26672111 942367017 444354625 972942101 887773950 998275530 981794178 997010834 931081838 976767079 540675521 689407655 477569883 905112264 767317480 928642572 536773957 826268687 512835806 828461815 172459002 188062470 477413073 871951789 285010907 851752685 885431877 909611024 435413443 642982063 580013651 658252119 93715530 324700389 137265782 976136343 659814258 940021467 413005623 759964424 692873063 987032905 773790137 938491757 159213054 459555276 266925511 696082648 567994687 680261799 529963096 556604513 967470908 997187633 276858234 389364109 428037810 841777847 952918506 961787030 288964394 970388268 273137638 731678025 312605616 511195029 849585386 977634321 423531262 486274131 630702353 725358398 256440919 549274352 268067306 912736548 20141643 153117352 49274903 844041392 416457542 925801438 801626574 968493231 439269905 904271737 778072237 942837101 386277523 932133960 596120470 800149852 648876089 797589113 676811722 749437676 615080107 674888314 444315840 828402706 257630049 576977851 946421458 967587754 776255053 857255997 501568799 559489539 761900405 858796862 233581218 810025820 738886773 998009638 69695505 354423419 400014367 571428015 552888986 961053637 255183126 297351238 235913849 467099879 806557090 850033570 494608112 647402573 17886399 751290124 816745795 991863024 765240460 824661324 473138362 631787588 198591305 361391738 627216088 925698422 124307766 855811325 366102226 806153215 588309468 817977536 35315523 742196522 522962269 673509941 250467153 638066746 567925506 880133043 172229548 369324046 645204666 762695010 407124842 925288558 208056327 255550940 846432113 880496860 660389996 902768356 429741654 798923044 230616873 824850986 601942576 865922075 67061314 286371200 652138021 974585541 596620330 654202284 786845479 910366329 73896215 90137492 331917462 605815365 469331958 504072559 254691165 803912592 635586810 658180601 734478631 863782850 345718794 349413758 577433628 601186050 63167751 962634380 576835893 666548971 948308004 990612157 436697710 955422569 292111615 412188322 841498440 916448524 154804467 961521174 949812480 957998713 116368990 575609380 52093063 331815388 766524236 846835800 582248271 658419520 293657452 439469016 306906732 397990046 959732763 968877599 625593127 982249187 61821328 270963620 140829301 651030291 418443957 574465580 209234803 924244769 898503631 973615999 460316067 733432084 160514473 633904242 435353223 751974014 714127082 774797788 257576095 985903248 605894742 810689617 710420534 995035264 104523273 361724771 397188691 443183361 427819601 517644475 33102330 974787496 55411527 179267222 149699819 317912229 388233723 642453331 93831532 442816714 241919432 272566644 179843187 531683726 913300644 940602090 190457144 606907407 640140636 646285363 41009762 47991772 295222959 795202215 678467458 836949377 65256685 846242744 238827137 915897025 746610301 803157028 856593700 895538263 19140119 353991420 84993471 955421534 19944264 487006205 305978654 382780276 705650531 817100592 780273693 988647197 298043962 372613207 873751822 936065636 157656187 520205345 484783454 502461042 737798746 796479243 513342082 908405238 720169007 773643686 428371904 691629072 53683719 796036620 68988417 694549212 309267308 837395268 762894601 944821173 957217289 959150232 660106753 925200379 706979170 866600813 865923783 891613497 621372162 668177475 541614568 735950526 511798378 591314415 70976042 127636758 866876554 878124083 794019401 912263455 479474677 722295119 704220876 915907301 37763706 703382389 10715823 871959433 700085593 900016578 466131229 739888041 738256804 896142709 770544399 993745937 278856359 916128659 808098642 837134506 94984256 418247003 153868926 555196757 837372209 912677068 213792729 891940690 172083269 287647908 756256790 994754002 261167931 583694582 130317356 394665936 30865414 801105479 236804045 806699453 199880597 307649967 227803715 992978081 7548341 56335530 166996044 849459421 469148650 829875485 842797483 997209218 281374447 623412682 965329141 970611589 603553660 621069501 900586777 912119379 828566733 976705874 77964692 268989111 770874121 816297109 245250273 561679894 483151982 691200812 803054282 854960599 506126815 895287381 843922590 882203858 849659350 909077539 411697377 780073880 980708704 997573529 256126753 795285250 133391298 253807667 265299907 977813506 452877559 536840996 457598999 462866337 17241368 149849599 219203358 230765372 727671585 746479464 971301921 977737571 175729114 515939086 843975015 992671497 313979860 465807093 877147660 912374989 136751857 580152314 652911014 918451331 143937479 858092221 863800725 938350745 762987336 837577919 76148035 979423642 807259262 906101648 270567233 831420178 795450986 990290580 211377700 939328664 369164096 564633406 192317069 800731190 985484097 996323543 69026608 121023362 61244927 918411801 790871415 859254396 531462681 589177290 34912981 438159697 21670177 608586171 893838191 942545964 350425067 857600780 888388803 963395715 30405482 382292560 721303922 860478001 935218223 998419674 206716962 627459616 233491120 441216292 666088130 697949021 944943268 997697385 705618840 922045463 927339971 996019921 354217051 812787779 759140582 870790042 850975414 879106887 593848469 752622841 387271436 710147696 936420458 970238868 88728089 263641288 865418673 910723164 396654371 817431915 878502414 896045128 833087379 975301926 315294913 400253144 845032796 889418386 107164135 706224948 188485318 218327189 479200818 926068364 503576052 873672762 700230756 821249153 867142612 935651514 10163058 342901279 267115276 841172974 862370522 973776631 162285321 537534893 868464060 990586497 954587981 978522048 405699170 672422002 64653961 156915542 17742149 291896804 929054185 937658049 792703886 883324484 716825963 991880027 252483947 256938856 474029754 880010585 894892270 997905044 671120186 848093253 781346188 982725984 62780689 403800926 630454767 971461985 983482932 998241877 597454256 661235352 986012661 997164076 438797032 580362724 554532435 610069776 260619299 783807177 55774944 64552307 430385549 917968727 759138827 822893737 931321381 963187707 712500548 834079630 250909137 391722451 956612199 986277581 766900264 997766310 385181488 405938642 498554653 817532609 843066551 875810327 704020051 941874586 655808561 797792872 424874102 425391439 991091315 999178835 484383955 996916268 921465519 961737715 35979725 370785930 293574033 821031792 954098695 996193339 563105731 687045070 325032902 521060408 245224199 446805590 335352147 454099168 223074977 806347771 398065231 473486681 575314720 869087293 985335645 997426346 659809033 673614917 796200808 803758184 143624952 509625058 571851369 624273725 796147907 916520182 615157319 867302183 587843348 838598442 310058489 930305719 566084084 888093055 178533852 970027330 211482433 239365591 71047161 611934710 871342811 951766659 803513461 865141062 213080961 736598199 783009989 981126249 871888356 907278083 76701378 777620855 952965607 976245037 156903010 715790770 684171576 874135239 768518636 893728912 286164571 509781659 83177345 450176948 784966085 979880016 280341766 318414425 945692778 958022982 321399403 363809510 315215165 656376465 403068124 707293643 581052371 850922758 782359890 830563544 108581221 302176448 91754907 202325073 542077103 668757312 20188525 606457218 322928708 411183000 991845187 998078844 165061886 848696374 166932330 496312527 442187739 852872988 556494771 600886781 997530098 999128374 827458941 927436379 405403228 835174875 76897207 195953507 392349152 967238727 287002235 472250007 775679626 778583726 617370274 715274594 990627921 991808364 881345662 920047677 185039859 980791989 432737103 614760521 59124475 200881881 729104885 757604642 614964263 918371201 333277235 467546852 993900345 999644156 318096078 384889927 538814838 691699662 822553076 919779454 174997118 713074942 463973038 877957509 659336120 832774789 502037925 618595982 384933595 481441906 687999307 853548745 588578034 830193197 710997392 979451545 92234251 473452584 789990077 937045017 618722000 708437874 550097517 949602044 857362738 913742633 326377815 848590808 935554445 953763556 573067246 691021670 351615382 370123230 232107631 821691045 130496197 945659260 502792 476321942 555001666 839898510 765952782 959957322 371401301 775017599 629210187 974154191 916517754 920661571 565673434 704231399 895555295 936756930 929982614 943743604 898706501 929533938 885932500 974306429 230023139 746354618 187044874 546249571 816960426 919709506 804665137 854515868 146312334 908538918 619945982 755001797 368992580 831520385 901879009 950932648 343849232 407143100 834285820 917738104 489740930 853730292 135253521 865846682 342157142 643847339 322614542 960168530 617850120 980208766 10242323 437385030 640925771 889647881 861506229 968105213 420589616 733532413 615652159 888288541 164237396 850596956 912089883 934337714 436478420 813340212 827395104 849135754 785918660 860349928 881684294 932176644 82877164 254104176 668929998 952857310 559442028 993739000 213055459 277716095 881788436 911314209 759743457 806568986 881905334 927431082 148983446 624079711 908974997 944663529 180835787 906309292 108295961 928879121 151972185 493616512 688936162 715715191 478829654 543555856 18978788 156850164 787099073 835126540 254136492 870843027 280546024 486630583 774406310 890605356 456332624 998068665 413979209 443691499 354695869 681965814 977916716 989540368 129754355 800648127 330711226 518990281 854188741 996354028 857012582 943397718 111593121 988527701 530404473 853076989 568247878 995885300 385919382 608437621 269813095 774547105 486136146 704596383 165721626 686680136 767401138 902695029 214100256 584433381 741051421 972848151 659806862 943774490 706353310 831524832 717838559 744355224 281857942 603540154 8515436 287818882 515341338 643974042 994827118 998907633 355867272 379552494 66209112 310407081 88067424 791886280 161714573 217213849 50521497 586253543 965085520 989176387 952300675 956644095 311205613 862948421 855627373 910341512 215501710 241363971 979349288 987275291 802292204 970058809 691442510 923212234 483524338 569306796 663959702 691578652 888469162 935171797 265541556 565053951 299474137 980076193 121355389 555455803 375071071 491415424 591772892 609045975 723522594 989093411 955479710 966080203 701493071 775829396 694109987 888054344 453364990 850125320 628295404 788903842 211644145 930076217 444501124 917782217 362137987 496835634 999049692 999528912 564003173 942720029 952692492 953314899 101928639 721248129 198977015 590996259 552197534 936285573 554458767 717596853 84181084 775830578 396297655 970739679 691256789 912133061 936829749 995817625 682767884 910829897 934258358 971661418 316108075 435993760 73197794 364198198 342055395 828527148 502702083 848378916 906136751 961141174 791912382 872920299 810356257 957029218 122408151 248193025 494980677 664374289 970050067 971040553 903327643 999867004 591475423 845574828 967830754 974621213 889608747 961825992 742231661 887357778 873430191 988954662 565736524 633376113 68194540 196119007 259695907 721268291 920554848 923346004 201676125 744139485 447680415 857165888 209388274 364939773 506628815 699217399 722417147 950983314 904591432 998202898 674021474 997375842 909062059 947612800 304218026 717811056 846275044 955563720 817675387 891610000 194451907 290566646 425415734 762966144 419292191 754467695 868369755 954385047 272990764 973646894 71011465 892672840 211680969 892784701 22134800 409862268 574894042 938624065 949777885 967873367 329821652 967191432 822887445 865813007 575646679 980680628 676300322 996658417 641083147 720840849 298109030 647831755 826581086 983046985 458853640 474850259 468244473 866639209 883692156 954905616 925416083 934889559 964998435 969365400 850298211 932399530 247169244 498426844 801571444 940076467 386244043 614618967 899493199 956910161 517526131 795314634 493203758 660538666 826093640 972342654 965279451 973988685 584257246 685358375 400015883 960761499 4059698 686220295 207399278 447227829 77241703 191080953 22935626 439619622 431628701 606851369 787910357 790736108 164908376 389252697 477962181 748454548 458724909 501682407 163999320 931132355 356797347 937631592 691536541 708845485 970992335 998978442 107611755 788839591 859143157 859972386 375065270 508651640 316092614 698908897 852253406 922656024 729516269 992849872 310396020 870500104 814841042 991468993 427808776 720139583 114844538 955995592 908956126 969007678 976620585 992175789 307715332 362604601 561095528 619733596 979226028 985230065 232560169 649296184 322260898 864911400 701951472 945207192 680994815 786261328 321018861 748170223 901620626 920525036 499802688 947816578 826972229 928594766 707681375 921372086 404913720 570016126 855818096 909129803 527425478 947257906 878386601 899361865 319546899 501160780 991312672 999665870 613203978 872052483 161225533 837858302 706233762 926772434 967511128 973164785 388352011 459870592 816814333 844891673 428380897 650110865 296944496 513879146 939137882 998423533 519481978 606592620 646017567 678071174 491353648 948093984 615653129 917183306 967828202 991696471 505715847 815678569 621521186 724840391 265983047 925086366 663489867 920807961 738808261 974534611 641978519 815742247 754937812 960258066 210415981 527305752 431036781 644081561 11495139 321021659 760782355 845121612 554255345 947468708 506679228 674158808 900896189 986780800 834531699 953347608 995262357 997731630 746762988 816384047 800860284 967529071 748062599 896407375 884080167 909297103 976968920 980779337 827407194 988166574 460875755 717323181 675884479 964883976 737660308 923786719 24154536 526398579 101359150 996575141 967769853 970903390 545947706 677384283 876773632 931675922 742973766 964778184 867738655 886577715 969218782 974812848 862720636 971265203 440793715 803686463 443299291 724955017 492730384 796846751 584848809 963418077 237895092 824483994 26982696 606814417 165079984 193686290 221966450 872486499 574080978 800699335 557345243 984686310 594698438 695972139 942926052 956980937 953881751 973689006 194048454 296507696 777010107 794226977 486897720 525039001 724454304 940010580 14390038 482822408 811200662 974123276 786415503 958107313 672715415 947021256 721956533 768502192 89778083 951866577 439754034 533719202 714225652 854803091 665617987 886226894 841678551 920047880 283366692 829716861 422880458 971877865 577815179 922667498 504647380 865032840 66999989 770475289 387781314 894745184 568393724 947759178 568870005 934213405 791810704 963479971 849868828 955552646 587944686 682944174 734215495 795202781 679982152 699451656 698599635 735095121 721930175 995657898 986390375 986757381 438986844 639885596 243048193 698579947 589500444 815709613 789279860 811856959 94416542 459729165 170951632 425686133 533034604 892753525 846867331 870967194 43926741 154356257 801254782 861934913 575300766 712321437 363784986 865035639 576448874 715826913 192408467 679936691 682760691 936511808 392184829 656893450 501061131 773685149 223378058 366429650 595647939 623975818 995534876 998899842 85041532 630809775 669506605 981585538 927532499 997377162 398730729 534774514 530955631 586303363 259307260 962749161 187243889 517583572 558077944 771109973 249149 934374385 254608449 721262358 30366088 969215872 150231612 518746003 509852130 711530971 143304950 608645326 616988148 995674448 280893373 552209433 887390287 951564645 435433503 573165082 956090375 967929732 642847824 883950847 45361345 582614715 615233658 816310861 836705918 853425951 695341867 869963542 643455324 831580164 502661962 671250794 990324961 993928951 258979249 956813221 985293102 997716669 195413010 465036797 208343172 679124102 123228061 666189438 325446968 820761729 112500366 295108645 750120872 960422588 305171250 796847260 892265558 946073210 63390002 731977520 43029732 907890192 196133732 496986880 727789522 890522680 300402058 522259170 310388812 624337576 894186419 917554804 968645467 977627494 137236194 609093583 938275051 994254328 656264072 874577835 937159575 979503762 184754421 918803488 116618334 867467579 252558524 560473055 302849238 311834211 250401250 268052412 721971740 916814326 927158296 975312514 988255459 994952370 332551120 418606674 92184053 626856010 282737063 496058278 263844173 712771575 280309869 346524541 618113700 748506688 649118125 804520599 505189261 810557564 664838785 803510903 3878733 35653564 796865089 966358526 68264996 353607438 930715985 941264811 190099117 832562522 831477212 871070427 266995314 836024809 491158121 618119550 355104377 739918498 770547434 936251329 568543477 800814690 365768876 441280410 469179404 518701660 48692119 891508928 761313272 841471990 785066176 903549281 541105350 669552558 644974659 699112384 42398283 754670214 279548383 746129377 402600612 882154876 554316172 917072540 939347421 988156492 27973892 184508340 720034198 959389417 72310986 739399198 756190539 949273402 283450509 473203489 274288244 790864614 154715517 641977114 64841092 199574632 638346715 857274837 43265824 64297401 729851999 815544328 218098714 403195017 512968366 699780011 621601736 880093370 875731689 932947903 419252839 810900434 294383320 759562805 811352692 881799084 902881732 951492879 854818901 865934855 518371894 836271932 507410416 704024210 283185760 660992703 156595769 963517776 571283281 740977906 115227687 651168888 128726894 136165468 301371992 626445031 304822328 387350346 593062237 796904039 358819604 797154888 86308092 817504028 254467216 301452299 23052125 514866762 652048718 654500551 978588194 988615907 137799182 612910162 102594017 907427888 353026164 523198912 454825090 778477200 222931790 467723215 351123318 416858690 591495725 902375878 342408785 787164275 252389925 905434715 379368283 893551808 336698381 518194316 70633133 850878446 420301223 737865821 10256290 52569222 86411862 145384387 559390075 862666467 577071014 883673324 458084038 552789516 531068205 638640601 935808841 954577055 807593651 844713852 564799470 633558111 828012998 960794593 766107207 911490245 559266869 924616826 890396819 936175831 824599126 853909500 969971575 985756200 224014395 340914260 125132805 730092078 86586383 652073675 857992894 982383997 581869343 820390545 932920072 970901352 180810529 830316882 809719508 830810395 599076511 678609216 982941954 994603716 184912848 653075462 288316591 726082868 830096303 895777569 508897103 624567471 987411599 987594179 609814700 667405268 274823318 669066217 869153410 944007251 928474648 933491630 816687784 940280003 49640283 150157884 624858304 980046191 541140135 673316599 234138457 794508641 849112087 934031425 446241757 823779192 6190436 163032091 632798788 936153755 690333014 913917447 843553250 847838166 898229967 918890322 252404208 316609975 769389332 962668623 618626140 730725282 867473135 876030188 573387390 577244098 879811205 900012019 9679617 142140424 296357021 442557337 688433704 864469737 345459645 855205638 538887210 926208410 860613546 889997431 868347740 889440809 576574765 738993693 884900871 967414869 536643133 649797545 405261478 997681036 879072938 949438678 197048328 686121623 712522848 772932908 798945282 856668414 492094496 640607034 138120765 211024261 812339991 939203984 365577815 967290767 144392403 681619108 935056182 991065835 394781220 395798978 578578818 865370462 127929893 391230135 446347869 880147851 422641904 546551989 457183296 744664289 558410211 643996040 51073237 173339901 743550242 856637929 633695153 649796617 389906639 453750668 23133128 828773549 874992401 875379905 976569519 992446697 443943786 683309244 502877440 998289362 171811858 205634372 944262086 997345306 863951637 912261401 700536818 858625537 149061488 779394698 663392588 995478075 871593953 978989411 104852730 794903946 573603632 885190511 246865521 503778255 828372041 986177342 122546365 492042687 148354211 587850769 568687693 904047484 398480913 797535701 309667537 644663058 800724448 999199550 548427600 961917652 14726704 931301584 754625655 937992714 17244445 843389339 403005670 742361339 204353205 239230540 837856935 962798509 928572190 934489680 153311604 192733573 203712466 510630148 401478699 692417211 111872571 367038649 209477965 891824086 819203855 883837619 975421670 997443443 54239870 761567512 127813949 951947770 850945348 949361814 627226965 965436676 659188800 735386407 918733079 960065043 683649784 691251544 614576463 731195160 1250198 526323973 152594411 225890645 319813617 767519626 904511237 932195748 288706956 347978679 145997735 394338061 826603870 900057717 380150765 866398048 725701807 932094263 413538300 763326083 934439437 962691665 523566805 882588368 134304730 817791736 306541585 457465281 219039026 328815218 680025615 952974362 16783145 179146988 311931663 541317781 500116388 817345560 666990641 711521083 128080029 466212380 160277691 578290869 119362801 228192549 406264192 604401175 913560390 941775081 875801190 952513328 429159964 510625968 93300381 515005953 478537469 794289882 302501221 776841085 528371095 965881487 382197751 465271210 332647387 794213739 916500121 961780906 918543568 956972722 334807186 902542025 343243629 946677252 483152850 494725338 267247062 948177549 923307734 929590029 120056955 627691704 20361079 123705696 696620711 829854886 142280532 271316138 241074688 856584812 709681223 754513676 980357306 990290716 578794329 773862945 328916005 329729005 189174623 907788131 342056946 624500091 612106063 883058332 542435036 979081095 648016713 848165434 863079563 989646376 218014489 776379111 949637218 981799624 617915492 908378030 68631618 691649480 444104754 657181089 532114434 790815172 322517743 852013255 797330360 823952525 124765689 420382564 818716403 910201184 288979383 685665351 306044251 810298627 420790343 674571284 486636018 937220571 245171630 447942214 101212311 894918331 863009335 963397981 698398228 831120461 232892924 908957087 176500978 564757845 902603681 931120347 331495519 544790900 297013484 594043385 55359820 390622993 542364807 796402635 789204105 890390688 498221628 588264778 255598006 646257722 274171033 797032327 91393039 458410413 246574658 826808909 948403973 952944618 802347696 830840595 775208370 796743928 757282803 914972652 410971588 557370709 399113150 431289702 581210645 685715631 41240144 482735862 458008314 606192079 489901163 781328046 705511371 842328967 917772723 955519580 834941683 881899582 347208989 425242614 978602938 993711511 888815768 931456344 663897221 760836252 87192268 776688232 47454959 401755681 534819707 925021203 478142492 899765785 444531239 500562788 643755307 859221400 28057416 731576144 304975092 632985390 301459784 575795659 339931155 426632340 12216068 794909904 258198376 459779053 304119354 602750046 12420015 281616379 501616071 621705580 998277353 999709276 168839678 732972309 992452345 998223469 378812676 530474070 129528910 541670754 612901346 707914866 879344539 890789081 910661056 930482784 523481542 587612744 182014891 853413277 617034591 746534441 759867056 942442308 318289881 526444602 336562576 527119889 472206609 751427348 282421867 570016951 28613277 77008210 929593036 958885350 964675667 968773086 465613398 488922384 335234403 572814704 698487142 989828527 782760402 898066404 685590304 861556415 708721770 758455116 625434436 683092893 780700353 816043431 562951306 951271726 383086049 681808377 897449843 904159707 826429607 870795464 148854367 329114232 836517408 884395207 252273351 999203457 123479779 747606641 83564965 244005415 714440132 976324815 814154212 979603650 488458723 870407355 827693210 838693011 938338034 967673810 247032136 612800650 947956201 987019089 422620089 636021774 854826415 964323267 589136742 859973457 677665695 949128187 19530563 789048397 799446412 858643759 306004386 718870338 496520613 890662376 188027214 473924374 628350634 879375227 13303011 300836578 843217795 925350805 785492356 892966821 795228218 865920884 245283404 359404411 717870921 743652736 597640920 961665209 466747908 627752764 970038918 985130340 776313161 800087880 731612325 746414137 457344616 650591412 391389920 782104634 535219730 610184586 759914504 815410104 468484498 819251458 421458722 683320037 122016516 445231381 600451705 684341394 780393897 860600425 697006784 817278290 109567892 539715610 694101412 804885032 311187889 649636276 102529235 779171429 142713798 580419812 354977140 458929834 63039389 916302919 920727034 944572519 955453320 958422918 167130702 482986170 27205436 899570171 963333178 998549865 25217201 559357173 574841186 818847969 710703799 818667930 221482643 292382990 792973391 985511796 478937637 656576459 469228290 653109990 111483589 716254929 375277446 739546210 6746466 260586837 932684490 984545269 605591530 658353710 768290647 956273097 559354715 642022189 945414650 999535801 259089866 663926873 425537640 507585520 181441608 241764871 298518829 926148481 761943108 999300990 173177344 637386598 614034797 773552264 283931055 882731980 577121700 897757560 948663032 974555583 60897580 896174674 889995534 911064508 95837721 314925432 907717204 998737178 260381357 609187588 54775839 613099351 896072869 932605138 14471141 467126599 381392291 879057416 705407345 891247825 946072577 970175724 790032023 927397503 951901052 959094826 467557067 929012136 836076563 891943278 29777225 553662037 309828967 336661502 19806145 500895408 731506861 810549214 775450400 978290764 929949110 962262894 961843163 970527752 376330954 695772537 597391935 851805090 794108784 809340758 369128213 542350408 66454794 139386134 579522041 684796314 43219755 270595050 607728778 771363776 892297028 982464339 19259897 536621803 433823173 917233917 2049913 56459880 697830152 978825605 149502161 427011648 352926310 588423363 874119063 927830472 777605842 795322698 877896036 965474388 520319217 756557695 722465944 785486023 755860269 819202069 337380395 677558556 520731838 747380076 776767698 914529963 310873380 889332909 20683275 753210866 577752473 622945753 906058622 966931104 735879882 779871180 813063641 896440418 718694090 878622321 777806163 890593913 454258833 787520634 952932998 968554050 887566254 950671739 921319416 959342871 714551534 996423609 960942790 985278614 884120786 983854849 867000279 903117310 80264676 136186636 943114160 969848576 872565134 982381485 113288162 903478923 979208139 996364527 687217005 992268264 428983897 734019450 590731255 910604091 181207188 690779570 60708832 452588321 791625432 856088989 292117407 784851654 268545525 315874771 953792165 981002379 823475276 852196115 803277307 815477042 700935587 978570282 435380884 728282583 786287108 929374883 42099002 109563764 750102862 995680536 635876701 764036903 181358434 924809961 774043013 901081958 551415953 889054173 839025038 947018762 258167759 281930335 673377761 895134020 536972324 708325415 423463181 727279265 60186812 186035505 309666574 727948361 422891502 695181118 798707045 820691853 390170731 528807745 744675355 808011378 180676242 713994902 711569403 737488118 496930410 761703159 299503472 361466718 28365735 562187057 366123882 708213588 388680147 757896553 723646416 914923832 326656603 827639018 403657314 835881222 961423922 993318119 448993977 552427390 863207802 943111026 417296392 988734064 1069756 226965645 900105130 951924408 539325304 948882508 590832178 815047633 457508083 514457043 359697514 555179924 96580972 115146012 476236850 583889737 822521124 835119619 321904424 813863302 172770102 581811315 85322584 153526038 804227556 933542173 718478129 878300046 748569815 892776589 47784626 214985595 147628701 303911966 476226367 713332918 86517321 519206482 412122734 985173850 179803273 910383039 941836115 975154331 978706469 978963338 934304063 955508332 365962001 919328101 998199086 998939028 424210209 769470305 58710535 612156356 3293050 352015722 545026941 741033759 263935216 962693973 288572038 395158517 249322302 910039317 831569686 855682653 995433769 998016250 467706695 952269523 183368617 186186783 625863408 864898973 77076808 397866692 525680477 639318129 645572225 861429997 310162237 402499274 295458090 562472756 819313418 907365580 156003922 720596578 773753935 816886421 928541461 982919024 290892337 940145214 829612009 846163524 170641927 203901622 176518972 600462735 474919331 866341038 985373801 989148763 798316890 915629470 458460732 551404658 897756632 953423770 484596646 900637730 80649602 605708455 547841860 635979867 702975968 982899807 609436866 912977788 13771529 176937149 53774468 128910587 59113591 554048772 162391565 847628959 58869685 79060808 189404905 591233338 39157445 461915530 814248569 817384110 370398368 405958699 948282763 974778849 330496563 342869764 927497383 986609073 78592268 116020772 4417413 314451522 912931160 982773047 910589216 921671611 679166255 686318473 161606240 436321115 961293739 966068784 393277938 989537998 895578136 900213076 257567344 364138795 632816606 870524021 506743483 789576024 527317978 911968253 18873585 217209074 852081143 928056554 975870894 976004225 867916695 892357661 306157211 985704119 304587533 774515124 348732935 512668882 37139930 493653800 258719866 542700342 438162628 625919161 370394808 984839723 781183689 908135157 58955792 290693244 114803421 655516669 802815025 923537538 494045337 576925787 273117261 806882630 477578368 557023225 972428026 987670237 960633056 962140053 7513931 842731467 985349544 990181639 935785004 947283807 274915041 855296688 898824310 956184219 542871925 562432192 273461216 642586488 338756130 599572030 518078483 876783897 818623500 948918586 487430115 536561233 515501503 822420594 942034592 980758955 805807257 808040674 707379067 779913375 591944099 761040464 206096070 328066826 805146135 849069071 517012081 600671726 610489024 946782414 271687256 615600659 216752446 910826894 313383834 459215539 115000577 974252851 109239653 310166202 937406319 960453660 134683901 182501539 964314727 979675257 621356332 771588232 140828242 966305155 426939685 800073815 166147679 260229005 270701223 346480723 500632101 804611692 31379668 714924170 244445594 310237018 350597514 421963476 266585052 311327205 631155620 916023128 689531948 690371405 648628708 885551037 269039022 936600791 507435053 831763221 246207225 418101867 230876578 234758413 847924095 946376144 205669573 257711602 874093894 912993123 978134528 980251289 28600435 388275236 182050331 599194318 918019215 992449546 217591387 504188375 567643860 592932578 419449506 423691189 471516800 581378921 34095134 235067547 880934789 997566674 449183265 790156112 531545402 726340753 925220419 927212942 167439767 918790101 741615207 893682431 409305083 641979271 248289735 415829558 71719766 766555225 375645626 879738988 533836954 635576509 294451192 853997272 56377421 117310644 4103335 122462553 419992101 990955362 572713970 998024503 770929860 820054363 322626958 863801239 378788590 531539992 555097 175810023 783677491 875021021 310075669 551575563 552964437 965642112 933101452 968299447 674871197 683417745 781040725 937955716 335770681 460301331 274089185 973101549 137665664 967758881 884187492 940521969 775086871 995802825 659447931 677127398 263691736 955627726 825921013 833600585 356268234 640436669 222761427 234363397 182730076 791614142 487627246 999333560 497154514 571859002 438161829 556767549 705360490 714936835 233301748 657707901 746422268 947258286 344799182 987885346 344573348 430817102 10247991 499568702 835745520 948287496 56056600 612267982 277378543 701805860 242788115 529718393 583144702 905292906 124412663 199586615 396748309 421771873 176725334 705844638 115346268 247379540 472662823 770092246 993952621 997296426 168719625 228206032 804623185 810973752 207896412 432580305 603729383 904000493 582180192 746318625 656311123 995228281 585312474 908009954 335015931 985689265 40624723 547210319 443253329 624297662 369310739 669248485 11424548 607510553 843445268 901669998 790987782 959902410 428549037 622804070 746969576 956543118 763611181 881799755 491044644 781833311 491444772 862534008 324866551 733139134 309284903 934727825 565401190 816518185 93878434 177216915 62936407 198245952 243693703 387717063 778573792 909146360 62553457 945115981 670382238 816945815 568771758 912607832 701128392 826683142 632208341 637227116 415516045 590288294 904610165 957633420 573454194 811093662 461053012 639026390 455431657 652924253 362172926 835439520 673918570 720199051 49658252 498210948 682125351 987941068 331289329 880819095 717913869 939060987 291102044 566131852 223168106 740386902 626640842 958467812 770495742 967719599 497066384 905421289 602279818 696126471 4439763 686125445 91955946 735661621 613329979 866843130 593968053 785288363 445200493 890800029 394462720 925362570 376011576 918907579 401125360 701408466 937059419 962653639 256193295 623555641 293002247 819235890 570984495 763209836 8598328 199068157 671995606 899192579 716262408 802776493 581717659 824521677 266723205 705988358 785368886 875470933 197178434 255333418 341813824 376542350 19718800 548287844 488174096 880167382 346033115 972999642 950470270 983237996 162831660 830689366 93020717 229212986 545809349 804024351 498683277 781270943 298076450 846835748 54276330 899081392 437244468 812741500 880602604 941281036 149261522 992732316 371803530 914491773 392060842 410951858 285814929 870500162 578345968 779751607 148309797 617754939 253937779 478177943 174397381 463777472 143028492 161813809 794782053 842053467 832947053 851093089 869758734 983495525 579548465 788084726 860109127 882065564 186541592 595265360 487851939 984476080 443482006 990062171 243185061 985792491 95493791 530131681 774952091 883853344 35782928 381255976 445938018 961681565 158786 461545242 728363075 805635453 71993732 335880991 451947478 816559702 976015904 983302641 708574437 826369265 648761269 706247180 270232380 431472131 396452480 547379063 650656272 856887006 785987370 860554176 200343703 630026334 190662651 212459487 335086497 638994903 444075651 627866104 772204601 830342318 971291739 987925625 30806465 157961222 525361992 889963987 986444859 999646756 213799045 632559323 896851010 922784974 962367027 973289006 189542982 251273475 638463984 854596646 624133291 708535869 737709083 921994229 768412526 817655005 745357215 981756459 597489577 848044843 666550549 704942042 370994964 655170426 762713308 780806136 6490642 961810049 221198483 392532561 744362442 880882596 617928499 855681863 173892598 283641197 144814312 879265992 837471848 879754398 371826754 815794277 792832186 804021214 127708333 587534311 536484374 635781682 373923263 386996864 994441497 998029018 729084949 982887798 32236584 749480576 40148937 98149941 395435391 526259563 506616169 735115660 958873150 959436581 511706545 568132672 341820158 849437748 674180208 733556746 456952969 554746723 206527347 671946540 529649406 954057369 150262831 364920056 413273812 822624430 247939446 842402386 764921584 994041971 444437658 783047787 61164967 172208398 667223213 936432245 600245800 966313147 892894427 910990482 168685872 883017431 638156212 927947204 140003613 376676680 388354416 738855374 247046698 348701176 20060244 856483982 469708579 680308042 857131377 999241855 565381739 897997566 659232180 706368743 384943990 723808351 815601392 874483650 885376558 911395249 717381761 876182474 136169751 917366321 251496254 946098187 121818638 132088633 826351576 838770256 662994597 872719349 743312225 947782812 278190649 381300570 233308308 357107514 460334732 849529685 707027084 742309196 385425980 408365786 540925083 811904611 312217850 728617250 482517863 619573876 513669690 777343174 357365469 443364639 682447231 993211631 592820400 601198884 606562545 805055519 710610652 790572926 434716065 515574013 191650193 534729215 405872665 661608492 290212816 881386696 188516267 480119605 136866254 857512994 780609268 817556201 375892643 692877333 496309204 684512846 483229049 827498656 834271524 864496126 482377836 943785930 354623929 669496320 63484066 752103381 782162138 926058505 65909627 925483184 354598959 548613829 831388380 912303555 625930388 708605086 777887700 993668094 567862758 923291301 610543333 947195245 247188392 605666077 482616868 684328889 513402393 639935030 283116153 788386492 7193561 120941699 656650368 803414023 2744022 738130393 550600606 751327952 988003644 997669928 414850370 632279455 811623221 995846940 473285855 927576962 564490411 611562202 526363569 566846593 951823856 989267425 120303182 263497956 450546586 920998093 35449100 545100169 390858066 530280210 757317695 984679354 658651143 689843102 736102694 905848844 414266422 464177650 776942435 780379040 602029398 968011600 289298933 516228138 358541479 544009501 407756174 553248672 510091559 522271000 658679786 800463751 768301272 989268864 298954854 398307799 761560744 947102700 273219207 640473961 643389029 829216941 392772731 683743473 321699351 738932857 126682937 904664730 43158313 718638658 10234059 331855879 923523150 984023386 105927882 450899705 528520113 886239824 871656498 973548589 570321257 984620970 194194725 636912055 632216583 998309243 422808441 520203799 514348564 827261862 776963155 814438161 900532503 952790848 341178067 897087076 898782974 951375920 100750362 807859220 159245612 223621383 431020291 649408615 423262068 802202602 500709126 628048924 526951199 972516498 505228707 683759655 724162011 988183630 954006035 973598155 41580775 307239308 241408315 328597851 71631953 311703368 540256227 684307226 542447910 543022985 312449800 614790931 286197140 617855012 352698307 450835120 111619670 532203124 485620381 930790133 939696630 968216799 64715553 596223155 782668243 860963982 672330301 831928586 667052651 742208964 1945765 583772350 912021650 963492099 8474657 380799088 459885999 798582129 288528568 985213834 968932037 981283567 962712988 987209702 959088015 971474974 193326687 984486336 456439271 835230078 899471794 993329187 501924301 856519613 938724686 993954096 968120781 975518892 241658818 254651511 325155562 397060557 631158281 770368371 255839930 633702631 754995190 827949869 338528546 776811080 550331229 897485245 399239503 524745793 718581939 836992898 787256207 848214280 399738959 460825279 336407748 583600627 913548503 948089919 678115832 926009445 845297335 911187453 201306224 627890827 732394449 758834469 699415580 797727307 29432375 305836184 439327140 728436057 833675269 959866522 645363873 762661517 296526952 513337276 640809709 850593292 727624403 792474335 114390640 655516295 143744652 910811822 309579950 676951195 579312336 966588903 583044238 619026343 675369867 964327290 442912522 860152775 844146713 936599435 988634992 994436264 696841649 790006522 247487342 541377140 466541101 575333241 406402447 677934412 68431401 690807899 491063534 637190557 573710218 804136174 192473891 996085315 44487494 530065789 227032897 643554063 174298472 754591425 525311617 876859748 125987725 436712098 80839622 513020218 524808237 729263921 526542876 920167255 529889860 649110676 153202011 362097759 713895915 876351432 38652975 910456953 76513431 481065156 414109092 456237972 214991929 806658257 473000257 638307430 242395071 856808517 740016061 955927558 250442422 783062366 729017813 750633325 590711833 630925313 957846314 988258928 129586419 457685030 974638768 982754961 629709159 812541315 244989256 885204069 769821206 771888708 752073977 843156031 232543827 425728407 322859033 443901001 483750623 500589881 201637499 587348611 140667737 360380920 247125272 839062735 651246907 687732150 11104467 785080227 75052429 566477115 841020840 859432541 496828314 912020852 111512664 202600761 242180858 693948732 738416313 786088607 120150560 636500510 376608446 812719071 189757347 621129650 543148692 553042685 546705440 966753070 307255507 656224816 721509833 905684804 271768955 733299534 892262112 906539579 432420993 994084748 765747455 897196299 138758439 521954584 332386505 860726198 698148416 759290515 148537996 154525871 418553180 821810102 457175926 731495960 92077114 922678866 532880079 710713144 142711177 531463436 57316151 446518447 117121227 207638029 700798995 879070220 477015578 932612603 659933595 740873475 459272667 466002093 115301825 669015316 316909682 343557727 922280848 987851229 422058863 900053823 729519910 991137024 747764617 913596279 251154898 452136391 958262853 999830054 130113893 742120929 93168082 862962960 574056157 577956338 570012008 683274866 40798304 765446554 699188882 863456922 873528003 897734661 900550195 934483440 221784403 922643142 672427944 850233354 841950604 912403732 598637299 825535263 600777881 786870344 86600320 175545109 831808198 998611773 200560873 955149476 359491876 680037306 332767314 823250601 921659328 948383318 651502555 738056947 872708698 935459392 332445677 753737744 643881495 946084304 439744169 771644304 555167444 895027338 818771252 973670198 450065740 722891526 816925795 983043225 344993102 850532953 227745609 386467434 597458964 767648177 393914985 764098383 747318228 785526266 101461184 543022574 474757971 502360178 447529870 620664265 465833002 588760398 481115511 570219437 96074909 293141537 976750421 976876309 883632247 900783345 238895538 550126357 183024117 622816793 552912896 732928356 154453881 623549649 8952688 579336788 165317268 482627491 545971698 772305521 169629659 647675143 370913931 696693627 534554045 698907292 246816149 626121142 825384955 945480468 971034757 997881909 621242357 944986451 673119289 824221288 369231360 933726311 368057156 660285639 937074991 976539303 533540926 686802717 249474235 500647812 63344907 159261526 566035945 757202276 71549080 835152929 538358900 730799652 543850484 691882384 883426612 967022801 994103692 998597944 457256768 845191789 971302051 972563478 494010207 637609898 894937230 968833026 972469019 977811006 875472439 976216670 136983816 931167378 166319072 400424594 481135929 484298049 345102617 470681027 908892856 956201323 424093942 969581767 801445130 982949081 87712448 425395352 75939436 856475560 253259251 261698146 572851917 590492639 656464146 859685408 283811183 555650929 158565288 629542756 317013089 574226336 120137571 893584761 228035165 282182098 624376469 652324346 758517806 926633865 684563332 922631437 699215594 802816807 741750106 844826235 522933399 749668381 130955982 132944912 621781182 666357122 465885374 922264685 570513599 769147636 904499273 959353705 458261338 500119057 355068310 736630294 410994340 910287504 881650180 909027702 415823476 461494098 330357553 479591125 571586173 616572164 313643229 470641841 8398288 252562709 72668119 373300811 312125910 872339983 474820488 875219398 21958367 810212883 835168641 892735885 871783366 881492865 973727913 999594232 379928920 556766311 382406778 630763131 487397771 975655962 889435652 936712065 416938507 839135138 402371127 803997762 750693091 756334622 246148254 865941129 155519022 602977041 724193388 829988023 853170735 961763255 899288707 916067871 815612978 882327741 858089863 920540654 814847841 925258561 659664138 735903873 645976859 972294109 577431100 957834745 322409668 719298240 773383161 899240794 987328971 996318667 335133923 974099132 724987593 946322068 445737472 800433683 850446784 920660759 324904712 937057274 89061141 355645039 918869483 955153367 512806451 700606157 10912663 538225783 657590234 977258295 466783486 930311540 975212414 993925791 727052301 982981316 683417152 848436052 416767668 834586929 980002447 981357971 455368916 658102061 698425233 920024459 618725451 988820118 325342645 504380113 175215706 938498305 566648387 866124249 142392441 667776856 802306543 823229272 122444223 274451192 776331471 965710055 730871068 885134550 655458741 799491187 411448068 901799849 720415494 857565538 405414781 458528885 778067718 950760047 34436753 641445949 317400701 967444686 5736628 391536765 409494725 418178121 99226359 623165036 889249536 943778667 735566325 790550118 968453738 985499392 450029231 918441159 37486829 832999184 138917683 500094166 246662709 270145757 558952262 972014212 46749997 921008321 418725628 856461534 542552810 762397541 95548960 477183840 70082708 763180707 54423301 443251361 590595391 790248211 623119704 762415533 964297044 974571372 634683159 662412712 86347747 437198919 925354809 932464576 791658063 817199138 519266837 958836253 325356724 642651539 168296730 622969096 372719796 813150240 478324065 934874657 349020906 877875280 518986815 863689150 563456950 952893916 867304721 877337612 879586747 920389489 707963933 975655262 71267183 669177112 305965393 729755514 770341544 785866554 971229303 986016381 731347257 806662456 21994685 199386272 772547128 896257896 475831191 959270892 566768670 690507330 670279432 799868886 834225197 926217801 697898753 962132805 49011493 59818578 8730109 664607489 944304566 982726216 777348617 779948612 400432087 441622447 666987970 831862891 32487310 925467908 101885158 532460983 565460385 859616053 240788695 456995037 212817881 346770813 859146491 949581887 692625096 823162296 665578661 976630292 223482822 380718984 780852190 783885131 894286472 974539296 332541282 721700130 305251137 845103511 385038388 938507512 993896976 996128288 952250884 988572729 462082946 665576074 825263573 832958284 399928800 485135168 588305774 839132580 253618883 619274767 931379066 960541084 666603509 864782796 627810888 896802006 882877527 997146788 666250195 852202066 477586510 560307883 802890460 840495457 179069495 350288137 642898176 776474089 559603381 824361892 254924055 973902987 18600026 92522469 491093868 798606801 664740454 966351572 670657138 822649678 79483827 456417221 743581459 798782882 383999436 499096087 319449367 378726856 849183660 977348264 63159623 221288602 548208170 968297428 753380221 858846883 860367442 946290729 411308534 974283561 437407840 953089938 783667262 891806089 222019514 577204613 722661955 944176119 159277678 761301088 897920076 960098143 662108756 665398003 960581554 966817763 842836303 970328518 425432741 458539683 393580371 445106407 691471579 843539306 765400075 823830304 857686124 946827345 854504624 929822857 831147781 864749697 276689353 805793922 266238419 455847418 39422217 836625355 699304543 790989172 638957800 975929625 515678402 597526302 233641478 474554400 156911495 609405971 667457808 726047585 545578793 987466534 429731323 496926289 415039140 828118568 205729401 389452601 844922328 947591766 846388504 910965163 832098368 943184054 91321882 752756392 120400161 865927882 245493454 698744950 485653684 757629027 716595773 901252733 180322310 471141752 348417803 705424197 198629751 213959386 417822196 998309997 885326458 954794163 809087530 873088131 504224415 946797846 917177017 993337635 291796375 797062869 70930127 136965608 694760634 978042212 619885172 882994181 195859717 266423160 244310683 596292799 914710877 995580981 368542367 764187613 837111605 972659350 831817358 889393007 694038706 712986411 393843780 848683201 725390221 812583311 554412394 929402570 820548950 943637734 116825825 885980172 963824140 994502359 656126313 776672688 583874028 752245460 183288766 568879404 143824504 600721675 141052342 392951138 54374899 702334469 679464566 818654162 779627936 866752451 106105437 374578335 876445988 907323297 976254927 979553493 385548046 890222632 325671856 906997320 590432789 775202577 718573990 992748074 447035873 819508957 611331053 881839778 788195995 976770117 771805474 930291658 268774205 505595024 830511898 907962523 380008698 948806141 672594435 901419911 833264583 988175808 720947363 825280635 368554001 773041840 514122127 719535711 964888515 977247634 8509192 367104428 112213012 959244972 754887126 829921222 539163111 872459098 87118461 647250834 476088879 628805090 606226295 944075566 464382353 622799181 550518050 930371296 699501049 984293841 661781212 701070873 849944654 976303138 416835324 816229976 417966628 895711966 320822010 411285394 938206802 982171547 388993895 591558259 2805368 387691580 707878837 781177778 237572537 554820731 166419821 295355110 492487773 770491696 402137398 919674173 641967091 838110028 826394550 883574411 492577294 614062912 873328990 904691732 376875956 800938772 72359517 397429429 292826144 623166193 56841323 507987018 825993794 920355855 238841017 896764346 818358107 855272245 919071454 995569969 31095105 929633359 661955398 793280793 453556705 613805185 624496157 752217710 798356231 860707391 190758365 542948420 227219312 994647189 475798183 548333187 61020284 635716206 940797857 993963492 636944263 990751825 278702359 447414696 553932429 997933644 674808723 903372395 948852543 999090039 968449429 975089375 163185043 574415955 584856948 925243966 386880273 729656890 86325181 551567077 418565422 715750076 272857112 648630514 62611532 136474357 816654238 887099480 95336186 326349074 30305096 103566983 786899807 816197033 946413946 999531497 690332450 714358277 107362361 746933936 539756916 643383547 438331657 469318115 922289835 967772132 991100120 993388549 340646973 525779722 764849060 884734336 782577175 860450289 479489325 768270989 770040641 815267905 668161446 976483564 69778011 551365437 102130879 972278634 315585565 406609780 24466897 143643898 691719578 822241739 981706690 991680869 722121545 957413865 801173089 892747011 624985444 916380641 168823180 875924666 317308940 543769640 747319255 799872332 473572583 556494211 562626235 962294720 574500990 599618515 185351203 791270939 215869141 434461945 515538590 884438713 942111490 987834155 830881795 931314029 915209210 921967547 72384339 394807680 355708526 969628685 455294305 485393929 316717129 380982639 498959587 575777809 496707154 607761701 940199974 991379927 201005995 670107115 613767072 900576369 44912043 45463992 924040961 968610615 173042521 816455580 579054218 770291349 801708724 938510555 541052798 897134152 945483009 970228441 230437129 400919967 474075005 500698694 607533066 949441339 424553222 915786370 214267856 993655884 36338474 832949286 83489743 459586680 561931882 606497357 657939266 781806370 484890110 767828920 44698850 937220849 147793042 872502600 867894263 921902876 719362594 835228591 752074138 779427979 70513826 619046826 787775923 819830387 545341202 639254133 931712938 973177690 606653273 997085081 108073635 943454771 78705370 751932900 629402299 868374285 832169174 876514692 661589941 677471801 910272572 965338306 703016446 747957711 806777198 829538684 687024835 881942522 877185964 905005198 982185716 993634027 627102045 860669931 726941842 780260171 668037068 948042188 829413084 927753343 32175208 712216666 420787608 566850002 489456482 617759245 495761243 981792047 339488893 349999598 100371408 629158239 838999996 991797096 226364113 643608122 875390740 889850748 749551281 778790669 978657148 996564123 134660280 288114248 598041772 834648171 786407575 787553728 189126328 705457738 287586924 662601846 182251374 920838759 583674972 737668615 92031933 915625895 963131959 967482395 589008871 916167410 964374487 965657156 44534836 963918765 723430837 840361651 767618897 776086680 905820662 960203751 846634118 989972349 20651423 358454267 758514043 946443330 66416795 512491112 22887901 175059318 460893925 657539805 716326495 802835027 670698320 680465741 410761195 778623797 961680536 962601789 615714241 742538622 987099002 992262516 866155142 971582316 15049104 972658638 224579781 714235735 51758320 738365319 288199565 387772529 312405265 524955056 520807458 583921928 454792015 746236917 474232513 649829329 436574317 982999432 620011835 663644474 715053437 997795619 893830701 994281803 459645692 576824493 9448383 660299875 98583958 923032134 641135599 910508638 934026355 953083763 96894787 451782942 234720475 349327326 807452419 960836427 31637282 97024531 505117722 953454265 579115420 873879787 760352580 925267140 423330996 527982831 220749909 289297784 47338884 587794925 354868225 873200166 801508870 812468874 800233930 816241567 162453152 748299435 45193457 427088478 653169066 792738846 426736348 453905759 95182403 753431145 589172543 925192841 573725936 752697072 75542195 313637871 133388557 640735962 524519188 991639104 270393406 291323410 504128726 777152522 409294100 463891719 672938406 914810919 486395779 947526155 991655787 994934535 873126308 951536613 709828491 867201526 912425152 996439134 976984952 983423867 486203991 830900416 391089040 809635197 414600044 708734394 214977802 662427807 420009258 484604563 521803274 642956943 539122367 786532822 350373756 936821703 871678514 965997792 189747221 409074510 677933579 810142523 679174732 963813298 524053090 868348316 181541190 310211756 880469016 911775642 416560978 422833434 374545038 814538612 108709780 539382799 193842383 352097377 568738404 626441370 799534233 953966762 551230236 661892396 864509743 900357550 137604614 402521719 835125179 989929149 748024254 913155889 399237836 663098212 572816796 736085086 349845740 750766260 469996933 552853891 438111132 911617801 718773992 814129276 491976966 595722232 576799753 669454299 629172082 681425019 367199157 663723742 839558426 929913854 361543578 425311215 712863729 999560435 154554422 767272370 119335211 606252400 848416369 909947616 851590748 887503096 728790090 834773677 42120769 163105780 215672813 915910096 350606728 545295323 312006925 857161844 308117000 742973626 304334553 831046903 704873108 893295048 517357543 665523579 118131699 749117138 690003543 725274749 870991162 914542806 174107356 849412977 339429162 478366821 512450140 815751541 191996984 699098785 982094676 984575076 912879711 958061344 25294070 303276635 113447918 389268762 607706183 664094663 874688254 877547184 527989195 826434905 305975055 818458170 306502883 512019644 322438372 557147634 46535263 936834963 333740093 446636756 754155616 966875771 70058459 957975087 244665727 564793031 442961263 555649629 564182577 781310299 95576974 918621757 27022915 810233425 406224856 725278562 451870098 876780560 826810868 875489997 556532615 669866212 295897070 616669041 319849322 381244059 207063580 258288290 559863521 987765758 801005231 811160343 279890122 347561454 125792997 639340571 628011747 748106807 134758532 791884455 370273927 479713920 312477961 708282616 300613361 469113608 846077923 864756048 352071267 408726482 284891678 671153356 63218567 655675683 538927876 789702065 435402853 719601814 300369769 816624243 907577464 983199486 614239785 819647406 610451919 808111573 611565977 692908236 2256075 926703394 252885360 685370224 528565151 751484947 690714590 969779236 18528317 329462171 211394582 961332243 49374413 846762212 17791339 439310705 528036393 764573630 387028933 555525063 194944402 710267734 990368814 990728686 211983553 326555213 539717599 638814386 115588643 180138741 988784721 990436852 496195183 638885791 950853730 990174831 797985833 913169920 26234904 825542517 196349483 936422558 857033189 943080407 514533424 634790612 397234079 641921657 733860139 861886987 663976857 852261280 318967431 351362216 911564139 999925609 470516768 735871953 448753734 873231956 429592296 581946868 545075451 927884034 561672278 628434206 125451223 957361729 147580082 203512773 418544051 839110475 782466769 940289300 471787152 689911481 623073031 856887616 92696220 460409591 736868613 917398398 167900906 612940422 144064879 763309437 526903509 662763495 843633561 892451317 656907889 857050174 174327291 551576538 528702625 744464220 225445567 997460694 998333010 999092259 135466022 580439067 271553028 870145524 918719505 947090700 791666859 959303116 269420702 759359422 486950450 762003659 225416437 856682390 304538763 443478748 488501273 536207705 121416302 694657187 517992242 635244159 874196433 882627819 704832337 987132065 877911761 929233168 13130783 989069997 315724903 987467716 791013798 975004474 400789508 661647190 644281680 972107117 76623104 352720528 551390038 802031077 839791569 941566496 702153392 772413250 937753209 966471244 255507778 636115377 761898430 864320173 916093413 963198983 351202688 798651446 825335622 890050197 24085631 973300293 36810028 662983155 213266623 752658840 577381983 909437575 546035694 673093769 45398385 65559144 462842503 629010946 355526526 818493262 159710403 726316545 416740170 724273737 554533000 717946194 798105982 955625675 299693760 303141443 814586056 815185645 533023684 940544691 791728449 887542956 771594042 835407133 12566740 346665055 901913797 919464806 563803811 729188923 793091323 968708323 12064899 370612244 179280727 969930970 6723306 95777678 54602641 755876107 996758257 998786551 554405556 644431808 475922466 615615735 992318887 993167138 976090062 986852266 641507737 736672146 467900237 768091974 425158123 934056424 866632804 947840125 519403846 977749096 739823382 964487524 841322153 973124351 371756399 981031723 389196759 895162479 17438763 252602773 100048796 371906615 569540091 788379933 466250418 997348463 238039689 564952251 946258069 955531917 92707211 119538099 227376725 434949116 673268227 741801356 573942727 896893074 916659672 955281353 720500788 926045806 414765717 821381376 907473874 965730206 97459169 388780211 328754745 542355932 66607489 118086575 522889165 893424980 994118343 996290823 545274737 861358376 241380095 783217427 542653914 667807381 508294414 768596172 66201986 821466819 798729005 856875946 523152883 721863682 698130108 797593573 632384925 895378876 410513999 504895162 28513689 960924384 454038135 569783861 844728729 891976808 727895506 787691320 350089789 543247890 779141450 891536232 149908883 833599057 328051362 722722843 553558393 686553663 180547233 719523391 703932890 955363987 940450958 956805303 870400586 966528235 450883908 488703576 881837106 985839131 668836719 695268469 816005701 924208494 282030562 625985131 573276940 931078257 173518776 322022190 848392758 935355505 454643335 844617720 346750946 515326123 543249403 818062706 363105298 717372745 862204812 916531157 556335978 640564995 976293679 996657612 40767252 911477165 721530604 868518181 51253176 533501646 247999276 345911553 294582130 809943043 37157839 930967083 418755663 621293386 506366385 923166991 91909355 109766874 614161608 674959611 374503920 787410427 582986919 693126618 621387193 935166078 27355064 774889690 402916223 676582713 971623430 976114242 915842371 933819542 515736423 832354218 810122147 930279360 557721625 991866341 895644832 951572005 934638795 997725297 147848971 407500031 19935549 316449228 222794897 675449091 908718177 937760657 50388659 191329571 288767317 544834684 61245576 531854819 622002382 976660935 952246750 991638719 359645638 797915815 401525301 604946711 495132215 592733867 473425188 819866911 257176916 736022013 68281229 218694149 945434649 987757328 915744280 975723383 637639143 711084218 682310308 996316018 585866363 931773937 169106797 817395248 958089920 993883307 650247843 755448928 567828772 730287016 868038736 957326722 856568094 989262154 132827323 978298079 565070433 816470634 957024812 989515356 682464958 747262967 909126241 941372824 648021801 779416961 273518071 659875529 20815391 312608755 14768481 805722339 288554212 356942040 380541203 522173862 492925706 587414213 893303630 958957597 418861895 957970731 599945935 999987394 371783964 787694629 564769770 811799265 367426190 885839320 343551565 554215959 775990004 943447084 682562552 926380792 879058089 913134633 314775752 874462521 793210409 818117340 605619205 640101847 172211649 882613144 634931842 802668524 859542128 904421072 202834981 510738353 150436659 547858492 747229679 981614719 275356959 538696641 418349140 728775609 556386604 692227892 444612736 820745184 815590362 885936038 667566958 939311856 733781491 853717322 155997011 922624423 303224077 607423145 215530844 242360190 913528242 939084184 392290394 465697372 559292481 692922056 647244618 855564238 957969403 989258142 338295962 750348458 628453680 743797144 163720285 374528043 805384230 982385192 701618844 861511671 636059637 891844767 513129445 606421399 675450083 910210155 797305058 843465152 91271143 820312492 323452822 955867576 866908635 867620244 591428674 838074871 966071936 986959450 612254478 690061523 680047809 732057905 618875741 914566651 8971885 908322483 479879992 583733100 294955813 628493438 619656368 946392129 369245932 686492568 125147708 772158964 694052964 871496408 850439434 881576287 673220591 984313482 615905204 855230425 44980158 709103005 35642171 366373670 86644542 933024611 563645545 724644240 66919760 807753335 557202786 594781132 238422434 774871502 553581891 823622581 345119328 586486788 507125618 568469868 686304703 716157688 444412061 793451079 708792037 846000812 62187738 74195125 479136690 761165281 32974353 760567220 890383881 943486836 954526504 977149504 882365433 902522357 238775361 441853627 975794292 988883718 758804302 900375544 184289810 465904342 67308947 761990584 767811769 884793991 762161750 792988535 368406036 536029591 595526438 894275440 446577113 978401540 245698297 918068461 660416231 776716565 277942427 493939374 402183969 486585243 646255452 988453671 331968751 541858083 957199608 962577091 893661701 937669269 719864241 901287608 765046868 909503011 47321613 616429581 153255707 435197351 250243869 287789588 140743963 415201290 11838654 580012217 54745457 544700560 143917544 627431498 453323471 851732538 834778553 920330498 202951643 607301831 505432561 621683481 619082647 697739098 583217731 886482594 823408780 825223792 491933341 728359219 168315928 339270791 156479337 351837338 756046470 910221307 276590178 938188601 557645058 677315536 415636867 801182433 983933336 995137818 122202334 907824328 877640260 884401837 771199891 903418794 462524461 513999267 948132715 990340937 428044947 458225458 343882390 653645799 51044357 823203946 178272559 862298824 932084250 935819076 389093373 833750720 201797647 257645314 57135043 344961350 518785142 783582398 69747143 447192888 433172607 680132832 356623562 942988940 199346995 562869218 884879917 971803020 197024527 363968083 15515025 370874604 376024089 456790229 901357252 921237948 457978851 560803145 29768889 551579487 548949286 603552375 573004276 728042645 313190370 553121263 92107627 608221308 123931393 137306709 665843831 740533852 529585227 612325186 601593657 702588825 711630581 980442298 326828017 579652143 831181073 867784999 720679469 832374320 32434235 940509104 887621678 909527026 333373195 841381651 218661246 778580595 547879081 623966880 988716755 989714266 953481278 997022050 755242150 877383360 663057616 784005987 201011859 399150918 240699196 825696842 728159640 892241007 240814616 495605660 165403243 651312267 869098035 894302778 252955953 909726403 568860541 956555896 854270647 957356919 350825624 704130288 595260143 934806572 596506112 905189458 801670704 913489622 471777515 856508311 699312310 894403191 54440198 625821428 580075819 889201847 400046183 754777010 331477907 636300016 447246445 965773844 444475043 542860577 784155512 941606660 803575345 806163587 454236603 741338430 929628110 971971106 142853630 874543187 283891294 747657604 519241748 839284723 220412634 534724892 747253433 834926644 833591367 971274248 557874253 812690612 719752873 914801503 460333083 661504255 410079288 511622849 172733324 302680123 364802568 910510180 686809888 997675169 50924306 247989192 663199103 863206092 324408733 911888446 108135436 116323887 447533289 864687991 822597967 961650659 802844734 998133357 586835588 717795671 112470731 732207225 803455410 917979043 424749190 530284295 852902258 902231387 306008160 890755444 386646843 629905919 568469963 855686335 721606304 842055511 113306010 882255349 677070656 842510998 294250671 942249265 472883221 649946463 629165759 932860077 811711937 960953321 697070549 808378845 91642184 960242734 145898443 584235773 783178770 998847524 48377790 363965662 376914778 446354992 367746897 657577072 492526475 596306638 341479360 691047808 706788258 757617455 952929808 986902410 244960733 667397125 977277906 996581495 395790626 703603346 717648051 781731084 972277871 975355312 246239051 355032525 478370585 519492326 376891788 433234332 478988177 809069952 152994235 527596485 872390130 886257312 600956017 740540392 973597810 995782648 334675938 688905531 490213589 739236051 270771547 705444222 444398454 618136968 843442216 859478119 192348118 354970498 755068918 918783063 162668451 744072875 585822068 588123706 267454547 946448140 867113911 868962137 823737486 900522825 172424119 883217367 945540873 993249734 774000940 849288062 648704750 781080465 323992797 548114144 27911360 308800908 940304241 942352419 907885629 991454401 663644318 716473632 365191773 721474760 632258267 741571061 108983731 184593661 475337025 683554188 105950859 164979993 167532389 463571667 674610911 749630377 708073725 947868893 416276178 813280449 719107764 794420301 670563929 900522729 299894965 962121791 209358803 339357503 484945062 545845779 461101740 972790780 872162494 924962102 467405973 940239967 117612228 430993395 447912824 623668449 677951280 890571844 211498812 921526210 618437489 809155008 468332541 517316645 335323224 358785259 146087345 574474722 713241750 990801510 731866304 750768844 540075226 790092075 558884413 649690996 516069478 730551528 558031974 647067399 879801823 946232304 108065293 597448840 686043426 919773740 904710247 990074161 335180342 345193553 948184820 973950353 792591737 965890730 149812087 472654491 178318885 311905581 455778491 850577149 154304756 420448603 648218406 874536094 633601513 877535560 964040736 982148079 840875164 934108710 479855275 884009272 482521555 696190633 599976042 752315041 623315415 843645308 23976246 174675770 632043915 898707384 686677366 973717862 74899091 464531015 359352265 867631867 626520608 742302420 477539140 869003598 833244984 961171182 41372323 336037315 353556421 512084139 74316578 529846312 337614886 387528935 551935935 720322886 246828386 805135402 483159512 920796696 180820376 276140717 110290760 293819234 80130553 871927539 17113780 778243426 336680371 773247366 608188267 853595888 938986352 970269347 602419685 691025111 72537881 157524810 945123967 993265218 208298953 664746319 192724536 768811953 155915950 961229319 452221993 617802756 126566495 972041719 254871843 419597096 345950095 729786242 185755955 564158468 209776100 896333993 245936650 645135954 786866302 851414814 167591002 759189258 619918848 688868751 172225567 694722701 774269005 961340451 460208569 790286114 580919287 651185181 957433881 998457599 375199848 812874083 253389145 872068755 246176231 444634282 779754708 862146907 426715504 480281364 934813641 956223299 482412072 716163973 476825569 651231228 695599831 875082240 451613065 652590068 253971176 768749888 242255673 783988924 382372400 972382074 736250620 999571523 419147702 596053482 468599324 634776771 199594494 247438933 322472515 330048899 100340861 218171775 687376692 910022095 217626687 659282700 570690317 895173653 377220979 772946811 394830614 685378197 886061839 923533885 200596800 816397163 419507384 858932963 594660886 827218491 478342391 813211813 70761167 253415366 502189525 776229455 510274946 777470153 368028644 414170411 9590789 116851763 691652834 781435764 788835082 815372054 908941417 923123133 882301286 911022524 258033985 456321178 728427453 767859658 949897376 999416354 341845195 973835794 68905748 301264263 775066790 819822705 184182241 885422496 496517288 619695002 26774211 167182940 558039120 968967358 821690392 847933628 64777205 946980231 950504344 998572314 275348127 745799332 718916971 935119047 248840932 373664244 432746130 754960447 378976691 946171146 949594879 998426751 638312106 651867664 137982875 899556571 792496027 929708792 420244684 754299018 261215380 525734126 137324593 523330657 697644470 964275869 587239895 776870789 503704387 850946829 888210801 919564833 379450814 651327510 296647755 697910535 865131634 901455337 773488132 930480484 132818443 153088044 637277923 682317149 267441786 271482611 60960558 895958449 457943190 531098030 779652892 841618718 879345957 899715569 908280593 910873549 789010764 955050109 571385784 832953326 436888241 931658453 808950970 820229289 277276866 668439136 113835458 824394895 678756369 927761597 59686043 661167100 112029838 494180062 308108608 402049348 489026695 631921426 189649640 252390028 448672248 666828014 702662699 767385406 795617659 800804733 26897675 993168260 700850572 774405741 294882759 541408226 575423455 710329623 450363526 677162973 15876288 454794508 502059250 675793404 30564582 125758262 704088615 824353512 750638195 993361586 897899073 944506482 481045985 731963878 197887327 749287935 706092308 855202968 674250934 840867287 161839204 775604143 79052980 894945379 356891265 652959186 205624748 573549631 736126506 890472347 401383456 869366922 265495026 275192786 300607173 722755127 779504284 892153117 121720366 951719083 653639548 858926527 935169715 935766066 642519274 952805127 401809784 665173350 71212819 116214096 584043842 651125244 434801090 644518642 185161563 416112516 470122425 986087930 789902216 927457490 406705396 479836507 986548764 994109198 469558635 731772799 556493006 704614541 629595053 684000836 88054729 984536093 256724256 863807446 218430070 642216935 509538314 858363252 420860842 773039948 874458357 897268351 400096854 586930541 930036805 957404086 793406229 965543040 607016799 622418206 299144767 873382411 509346326 968959685 100112448 661029996 915408938 955730001 78983663 557074723 884222654 915937189 60720845 696546542 887630098 933315655 652641554 914394645 347162098 476042910 255441087 920393521 190965297 688252790 736247442 740820764 879308731 976267331 670634093 957018172 39245385 410567500 113492099 204041304 644895369 812568065 860235132 963904979 832775043 849933999 665298068 925890975 148387419 454981923 61017604 898755006 105387240 156158740 133542185 668520201 388699067 414336847 798322098 819156479 556781467 884790429 302655668 550198312 70090919 238525217 917336896 977794074 894914020 948160734 58830849 460632985 664630830 821003431 426964719 819287920 782936026 846573610 979193514 984498051 338678446 713772374 189318331 582921130 96230186 290921290 367868556 480148850 429106771 681365566 804284177 812099870 749365456 939925375 590721978 909251438 664813108 974303172 32634464 189584018 713583234 939703424 171743235 190091838 931229472 969583557 550279787 605042160 690001888 999297222 541757388 793985452 958985939 963885722 149203394 716745491 773777792 945321370 79364612 467003039 898645920 939716867 938673133 997608625 671704993 968766664 37997494 307909988 540517853 921072252 39550318 486132841 158324899 996165236 201961249 839206931 766921001 801698004 594858803 924446945 454976746 651528683 893865022 932934345 826943582 954215779 721239132 963408752 43838112 815886301 555242085 671646934 105459820 876163001 397397298 474166469 859521819 985431023 700979236 824975700 795639359 890072868 204552295 563274587 702057420 805226377 358069896 767720386 477648760 954904368 478579389 994644674 533412948 600799845 16563764 783335111 223112208 593974878 713570388 861285806 130268774 585390264 545220520 551036049 619489594 884474732 514967449 784045232 501009430 846849741 395563847 568844524 213248445 800730789 857925928 886395045 630362201 711116881 327966193 821079652 48800757 271597331 488318102 705948725 728616131 822414786 512248212 867581725 776960930 841256726 441917163 743694490 574338538 726016301 519672991 538810893 113206823 201485438 450287737 603746373 474334152 812009344 997071432 997558108 44024093 714400517 151968678 556789321 624745240 764849721 966995444 991597007 642836634 865921103 485971102 655413072 449458197 539650854 252251633 793485260 772269714 980146544 221656124 331503493 436996841 979893947 12960503 232820928 469426380 518231689 733497505 881531988 990084939 991770294 906625294 947598151 128936506 709145940 194719225 216181428 433431693 745673657 131421106 952288583 981754397 990900172 771818562 858737253 68454230 149658329 112477801 766135488 457745844 590020726 489306622 500171647 121922915 216800919 805966051 845767097 67993202 978082836 94935800 253051172 123310845 184643957 481888479 685260344 831602319 896995720 407487636 486356546 533825262 976617986 386008590 812198906 583953060 889862497 98953067 535593313 795609505 842546272 720588536 760415479 111385446 486679901 477001356 782850699 248152831 990322176 39272692 219420164 707527769 827247887 892559051 895884501 494530919 655981868 287749532 303152715 615174366 945330394 815197038 903978330 131197275 586667137 828361907 875989614 707809796 885800639 169996429 866893434 624279553 996661964 459529649 734178223 836778084 961896240 105036835 629872763 778756133 852104381 378242532 937220218 49651044 864051278 896535466 898285698 966563575 975357053 539158701 901158728 962622929 974919645 930849058 948671707 288509352 563546013 65236916 188490913 607840246 689441337 681533649 928980702 592877970 760945357 475201398 548265754 323881940 765930203 41648962 671768826 693461093 768724298 619583212 749604584 377575960 900956190 298035903 341817834 784280078 809876046 358202565 382111443 372035779 775880803 309199926 398183225 942701031 963710923 745032573 869542163 689558608 783219754 55759088 463092524 222972698 782700155 433712032 919857296 604441483 949164558 213674259 969706405 38952504 493995127 457716206 607676111 500437141 554879525 255031169 990518290 778031000 824030828 183018557 517944379 747663302 748598126 45786582 77799783 327041959 942022067 153263177 445966338 137909972 138462124 431231662 577906618 636707947 912255060 759428310 871570334 567207425 916822902 426013324 571981686 240088639 395144688 662800959 798288053 570408493 845335682 254688881 578955158 751816475 774434510 290955579 503385701 519282281 925394123 622267890 775446139 487647523 503367126 161461566 932199842 539981824 706908973 805262817 908335850 44552950 697272315 691850328 876311639 625645597 770767013 385847415 676973736 79904981 620738815 172068753 636865937 391287206 543561218 427545987 497993480 417054478 854065100 167518126 174191614 599492409 643023233 801511346 851851192 94910424 910172878 149018296 543555454 85273627 376269138 555797493 752696670 732851182 960510004 578196584 652192174 719238286 993091984 766174175 970861194 753479973 767463418 449144086 827320593 500077632 889619144 104074385 570494050 308000865 418277033 201938623 306647587 607445178 607539370 676548741 759230905 21158715 355732212 732730656 784355169 403316754 680363388 101390838 248208515 674336265 817235468 710429114 866392970 527246122 929136471 138479797 643218901 879163694 886842988 169018066 483064473 576391617 699865156 368402815 704928789 550445466 905169868 89681912 960050388 227654604 457795965 245396892 963502625 850439346 938462962 655273596 661498886 792480796 852558233 948936209 954318761 308786074 818100672 525206461 614549159 109515736 551414777 914673415 970982982 35540524 129722888 649191174 707201420 337613677 511776390 601357587 637325015 3533016 842813867 639555966 753896714 366433747 908301498 213383142 879509541 643297393 856806822 401408272 536474495 269551176 714105121 418517924 433058978 950511513 977647946 75027254 761112472 717260623 918408985 200273966 298467666 322396837 751835126 539604738 572164922 178328285 765862828 960898827 988489553 782723341 836534158 763544821 978947730 497426379 531827239 459725169 808063922 637655814 879731046 852465121 895238161 304001911 454786915 708565001 749627400 434592487 624586223 478575168 661765736 464066754 674104837 800221381 913339214 330388107 577898146 25067264 167440159 32719852 588391724 823465174 980239888 754366701 860689496 546968565 647916108 486903424 759526095 954905954 976682361 238543390 907444448 797679398 919410599 74553513 780154796 711199955 963939652 552994196 947894241 26566454 917766173 691772753 724267989 61148302 503801152 882342746 890648050 676111110 935997931 271858627 533854658 8344648 809951951 648462981 882337520 477697983 591090592 256497362 299698125 752655518 767453483 757317285 791888443 123796134 619252560 756358631 805923197 846533265 992538317 376924289 460660491 944658412 985435076 174250968 815011057 459984086 708275313 735596427 871890575 867236507 913825023 621338541 721558753 70212226 948119438 233483487 471782254 508513580 738831291 543190654 813549812 743671827 772314649 210313001 620260111 820714323 850430229 618947335 821610128 10052082 548981904 331987287 891771345 502372733 842836081 762718787 775270580 518546047 683305932 586915697 973471218 278714514 321389914 888716234 985146940 900415116 985184277 299273150 601329353 316222164 904013633 868831421 923580855 58233570 740366429 445385252 977711739 747232094 894005746 543406577 854732448 148651956 502885276 247679268 814225520 712604054 753096975 300089098 913785729 678767070 987676563 460482698 590455713 495709953 519907653 547947333 893096380 849887763 896243308 264913738 383972393 568822336 907709739 281764671 601329628 948846822 976894820 7519126 541984010 291544454 671368181 338379732 585333581 843211582 985221091 652727751 890410133 874103019 996162727 134338262 645960061 14218631 832576250 546601765 575729001 311839951 547133176 113077113 176865394 88564326 725171920 540834175 548476450 352614498 636941965 437712711 437716033 84195782 326583733 181093954 837225029 736013488 991386016 397374270 674000215 414205220 997913207 15982385 282809734 298947405 907486050 133605776 790824709 970806618 996882498 682858215 889228084 213832929 535675496 395434251 588892534 702084518 829895307 362959471 915946839 67682464 923332619 596830283 917687687 222817408 562937719 746375525 985188792 794759053 800631187 761281849 929458074 740952721 904383462 236546170 777512660 744329664 930018289 485586878 787659607 953588954 983963740 530234513 611289698 47944693 210670534 373310124 778308411 671998232 814919176 433181576 753725242 798145696 899970657 274742126 570514981 96716890 929353530 277834562 674807205 985701799 991109879 572751788 829167862 317700233 712091733 320765665 907048656 546712777 573562003 470523929 896874225 985142151 997853353 264868704 936700195 828538002 993524082 216430465 545104304 613358228 758958192 366714781 776936818 128497287 388699036 927310014 985902665 521961132 668706433 270026445 300882688 777088222 818121385 702277297 862722112 718775405 921072562 540156112 689190949 366674993 503175756 380244340 429458774 603206621 989581322 591713992 608740532 674298068 932658501 841762763 968309284 528271848 869586441 76592755 580976932 963803784 964030551 353621992 966200533 646719470 744010802 883922967 988084376 146869398 446791266 752040944 914024560 384563483 410908938 769186586 967700801 785146522 893119093 29481674 555635478 708271312 789835326 37952541 64058514 873355156 877761150 182883408 939314759 853594025 976774473 103085964 511553762 514549271 713482265 462706028 807421372 781386694 853582443 677034183 804510570 877876943 959555237 745163875 796887862 975898523 999794383 172598952 656814686 297818471 493164759 478130289 994456936 404810688 867168656 997860408 997994856 55472775 776265906 292077706 306656746 304013337 544772871 617629132 933732120 509208213 934162779 83147540 136122049 146619818 828613142 867059079 883026193 31828798 186129750 862725060 871729714 527335643 656324071 362517132 748869015 146382080 501396345 228585109 803163270 52575878 187379008 969580440 973521031 443366040 743514924 887888796 949665998 547609905 800066245 793259527 903072961 960199137 980113743 177497754 579657784 601466337 970809548 859957431 981080840 655049803 748198130 756620250 932042117 276109346 548271994 854019898 978395941 181339043 766706829 42491449 889813384 227450597 493626073 400006305 719287971 392933955 577043545 203198681 385647762 70994150 741816385 121528774 865929370 715372444 835225247 548036557 700963292 54394232 476899131 693700377 882465038 551634471 936768916 954714273 985258960 754279028 859458604 465116436 938197944 632291992 944295248 640984310 911961341 565650053 755083870 853849049 953001540 365960109 667239827 721352819 763861802 333439539 378762786 354695232 905639217 912801136 998721592 191687643 628501951 915321782 990786089 455410124 643834408 119640587 860485445 308483865 714627441 643430307 821545303 5987298 236762407 756691276 989824149 116731839 839351383 963741831 997180392 613425568 705850826 887993774 927087480 745136885 819585147 480065154 636600891 14286875 280347055 608715563 767634415 727234871 952885049 336077577 957406029 169436574 357335638 703064899 708698711 161082967 472196605 425450025 495413381 77157725 182864072 293154199 581137267 93419958 911454503 627854845 902093402 971365287 985611386 178779775 213498293 44532499 212107144 939326950 958076134 1671213 606184100 897135204 954128499 699170420 837458518 111610112 457730640 762933424 972079183 625483773 735865638 615025215 743966628 640382978 665451008 454470016 515012054 33180389 328430346 626485739 906981873 630343187 905436625 33654842 177789328 85877045 415136917 483873047 730754603 486547047 972603665 890784588 952787487 21313221 891874439 393560279 780917532 652065848 737769022 728411326 883136009 185868428 211694607 467492579 826151263 371958157 413242594 600186007 774062560 23500759 598820035 202858020 347980994 835053591 861927069 641995341 765007060 199046086 427178110 517213250 617768299 371378551 406994147 98783137 799022640 771980973 805699470 145882244 400369625 13757158 22817770 495792088 533347546 846063769 873797044 745163742 845722571 33817254 249109655 97841826 800624401 264431818 822007574 613027486 965222253 977187424 999530911 623814145 860442583 101471586 807173192 100649031 318805805 972201371 976166938 396246425 865104611 56369721 344367693 504094533 999173741 778337473 908694580 598291280 991939543 461640704 844361862 782490500 833136757 157316404 610463169 106556683 421845518 465469637 683080958 28170365 168594642 594981200 607178964 62010279 227307183 898907804 991341818 765977931 854190722 238627557 407504043 927695535 963717864 300138379 617091685 231877543 785033027 573157473 836414862 807730656 979836257 518688146 628703514 809813057 815000795 913892540 987422660 22404599 970417824 472273088 747902444 201571891 235926116 487807009 665786514 905330309 997788079 387817460 588571152 884688723 915961860 599764644 614770831 142946201 373393047 488255115 719915979 808367292 959270205 871977450 882873130 806967163 925460655 565130636 777007012 622984317 730759308 115556106 751579328 955967425 985728850 382631805 557793782 466858022 488388695 558283668 959772908 731772835 789060842 830886118 836497508 949826504 992163308 683329904 767446976 68232190 374354451 30522348 126040255 232662286 605478450 699327227 742484243 831523600 926691068 697959521 922804866 846301415 920800505 376229916 920239637 867078184 946505132 42001018 828824670 920267392 999723100 953466550 975208308 546646518 855240326 877938362 958794305 691552691 878706294 872408846 902233500 933410658 966041593 227614692 421243779 823675525 829000485 495923827 508371480 483259329 945448186 207486334 366927477 970519954 997447235 235528994 491873322 509284480 769522111 270618391 349163645 720040986 938361663 349963068 558792239 620596055 976217348 573388427 753639520 362549282 832746167 56947962 308508216 871796218 930660811 753169584 852715757 272009839 375765048 166260937 321000337 767008890 946121311 138235205 876113857 237241517 299037235 813170709 823239026 736405636 951359476 19666546 131645530 669966518 925787045 72276218 715826000 699244960 837101984 638119346 728004706 113555828 969929636 515804640 889198672 542041148 935180835 512351512 595730199 915868613 971191981 96241601 790748792 49373598 619804518 791981720 941024860 243848891 686793271 741215029 862880244 194745662 793567652 771035976 852402173 321888689 601747758 997755637 998524333 407401688 611550297 903131910 959502711 614905294 850809150 68610291 666182209 682167343 707335589 797789428 933370277 518854167 623762625 865500747 891165613 334362563 585102945 270487991 510480677 874640528 881882361 493632174 498428003 864299015 990490024 738349985 799153623 202060735 362372078 723053482 764129016 765414996 899875641 917408652 969357016 924853080 976467612 948564817 996460732 775627763 979505552 199176481 896945970 503852507 718451979 286355344 842141551 926369537 938373483 949858216 990741232 254365902 841726562 320760176 919327539 596087011 603187329 366830549 601046639 253440589 815354028 20908091 276714427 981597575 986875255 437232295 867312459 64081207 111990275 141243912 660009313 146023824 470051930 397742686 573695716 865975729 893953160 892410789 936438682 190137567 855035018 559790400 773275409 17628220 149379018 85328470 434106973 526103929 774769987 494607418 642552639 366145021 975723992 843557581 959727602 179893436 423032699 17777679 196146232 178555289 632535042 70862654 108961522 482094674 678418914 305887867 517725756 917481070 936107381 952619705 991010268 172158685 744385366 427203543 728533578 465275295 899817015 19353273 588310080 465893762 712554956 491662482 659724105 910159568 918889570 272966086 878994088 130596514 481845868 700762066 884719675 353870415 679761992 602398392 990050239 244843972 635404419 375533925 838439416 841968063 961036742 197267932 906443983 514697030 675733949 705344078 977009463 259096665 559669026 602379493 724063839 680931206 689490700 900487326 925623558 843711350 922418500 466525973 659182116 198277326 681803625 725712888 835778063 44587898 499164917 496455132 620814982 238282009 448598406 756884126 956154084 981999931 986427649 884732792 983753736 794894727 898248279 911642246 939355338 894111137 996829357 592743573 822314470 741260031 849141882 410538513 563881740 77554917 470121040 379352255 793064621 373699666 733233908 582046811 731358850 608783847 956025172 747138365 787842781 68071355 260755323 975758090 985036693 928156518 930362932 205510439 911465068 297858657 654309524 318886841 913972622 626253839 933004668 576891720 940181558 808510015 867082074 825173725 866742709 163075044 827603780 23960030 433091790 702306427 880729647 107559276 593590788 986567841 991879003 915389815 996210588 427143180 896750607 676328633 858452492 747109884 756129285 799706744 919410001 571407056 763969778 813218981 834358033 572849799 755671461 246324984 976926197 911806616 976014233 172115086 565530090 764711396 816360548 95449696 733404971 5794363 688608464 729449806 982056225 277155981 391199513 658801446 901804079 331177006 959985956 376907773 492219995 336166039 466748066 277914515 453413027 690711258 926731199 467464709 736610442 975131240 993024754 646585542 647794746 862589541 939002806 193076920 900739351 186378516 784857629 282829749 785677574 541961536 679262341 458822235 594831217 552836170 609387015 751128372 817531777 786268322 794580158 159389337 199839425 338500800 856443249 250347355 376055780 177425438 966097285 500824096 800005551 819503171 924178212 600825364 950123297 730569001 859838697 939128345 972300499 86788929 458960625 682534610 783217382 24053480 994056084 265674618 670675281 363486598 397825035 773999100 963177625 288316982 374940665 494372129 536967705 202361001 730129247 807640815 895611396 530908220 800076262 27726064 157781316 266081983 331215606 709936054 801179225 701386999 834765345 480979051 594459555 408671876 773871447 5005032 995102153 82570739 160001561 721667852 723080412 464674501 485385430 346023716 393873406 989451620 995723853 696972154 922699607 561555345 694234742 547398915 605375803 516020 267262382 513575023 654988030 596309058 880694326 259171638 429678679 288169198 916450361 851103929 874603683 5450794 99688305 309418546 410526677 308847797 537715516 451426704 809262446 162140343 234292871 995369041 999188492 384028195 983697418 646857081 669356102 211305287 236906103 549174763 962191501 577641614 725586409 213599773 908689313 746121402 889447673 436861694 951290556 547007013 832652371 658408803 947457215 561797675 601362498 650358358 751362169 705651008 813053392 788728653 865023045 615713885 926965638 167880315 809859019 32375125 599120720 368402133 667328145 101098527 522616464 285065283 838421836 200322060 619100816 302224826 717444335 545187146 599042376 9736527 668859419 410460610 919425822 163332735 623502835 346731058 860316535 628648316 841230063 243894409 976568996 38936246 638848825 470419534 575573937 183047577 904647157 695822389 951901636 410769382 981769471 420557612 954816294 717603970 964431642 162384083 784519352 543034603 960458736 676051847 735505884 198307056 867252740 894721469 914683084 407551120 909820696 285252434 529155855 680585090 948201268 76128150 680235264 793592408 836335029 169268169 253031786 777571403 987277173 63127077 997714370 357470972 855087826 859247116 997957211 31924126 35333222 358565784 792658979 8067925 34380401 524745497 697446786 757759638 892791245 771725563 816199344 223648933 813467487 991890775 999442432 410416553 926124644 725318030 966509037 736946720 916471003 345509204 625012172 928794874 968671814 754881489 907221207 431483936 937211566 259388746 930330523 174440642 430131271 584013128 748120754 152998797 188481653 135859851 552188103 61190606 294849096 26917348 31230038 777462704 961340043 95628963 101868328 821678150 874753164 818242946 847335515 809833563 906200230 340626681 507417713 317325437 456413916 443394055 982078103 450426319 628543362 968181933 988851299 450038237 846274906 909204804 978710019 211344943 537947807 186251510 338655296 325599520 618322281 943069110 972449266 962987841 991783957 760184875 799965791 17246651 405312471 987207136 999426893 370315159 463022831 202802535 940102399 987757352 990348517 560806174 635341528 644859469 890161477 41886975 779664373 378479856 699272413 743863317 947713553 883121845 940662521 250384119 313607229 805579031 812137638 352225089 659748808 233773476 445410375 645875385 738329361 667665049 675532570 642867730 816268409 551692382 622571493 384603656 689608325 899558667 954455109 180721576 335249705 778186951 811436451 512678778 833311587 552063601 843804796 746992286 754141956 880201690 908992238 805563479 860906070 217563356 297572146 875493671 882627981 317259131 669971962 253565576 430453862 368864300 385385518 903897875 969248557 785861586 930372622 886274605 917444076 179063046 192165232 892761369 979245692 636259524 694449658 986892823 993596668 146978309 951782303 653450538 782012235 549789080 586211692 791653160 949199686 456981981 614859017 755593532 818685348 64465425 299059365 216775511 765850994 934859281 961658712 806657596 934969033 472396540 648357204 475954748 624308456 333050956 843821446 18304682 947572723 152038153 787690512 323763405 758122789 517748353 641288281 424339057 673516494 83093039 152287039 315249494 476148714 278400221 412929774 89043238 924996650 313846896 554631200 357922781 824355187 441873444 824596658 225492129 777942733 271086661 998917428 493262701 505030902 654748761 705367046 860379702 977064424 157372234 353981675 773178647 804741779 188383917 829354770 168812134 891689924 547757334 859576277 806741715 814831108 688865995 878646809 559877040 680723974 112474525 463625587 953500331 969890403 378465106 780677798 673601973 945718129 2872761 17022638 201133999 861521604 174102671 198970375 775263187 889067618 703220149 786689342 809940236 995985250 784082027 910148215 97926251 956327463 179405977 285579840 442930340 729470972 850076809 869151077 305306867 945775545 997563404 998141122 482749018 971500070 990160391 993210407 831580647 847393293 127269064 810316943 658581723 868354633 636916432 820807484 690661888 875668935 279157344 364838016 564828499 898319338 614283553 845189183 111954508 775794939 781522440 854899513 755811410 941440781 498819475 986693976 809529534 905906372 244931382 284710120 880843373 925913687 68146749 195748659 786522687 836902647 340722555 699227047 449432611 930365220 234855860 912918487 361976280 608456035 260818511 543437711 804626089 959931244 100249266 182981866 417632332 587859688 424982815 965051544 117244010 846051662 208675262 617294252 890734443 971869132 942296063 982448010 898573049 954292205 450771347 710420830 339975652 926683239 955881228 985966233 183574135 249447783 794782310 827537270 387283134 566390323 304829313 697344341 701819584 957873653 726760248 849824045 838302026 995392134 775529022 944990005 859337627 940745197 471718844 588995130 644518248 682832195 568449891 714535901 58569328 873715094 160853051 923041149 97774775 306754575 182331329 563221462 851243119 981426021 153964329 459702728 684069584 907720536 625875234 910875539 155750477 685696339 650033310 913482262 106152213 560471131 525828883 787476129 31222308 324248379 846585712 866992023 207080749 670354794 318599914 538912197 961951832 992079880 237549522 365172927 392032387 773422353 89544748 839783183 990447316 998284285 648796616 907829352 919386014 922213979 988570556 990652628 765243876 890593947 967104771 982297234 230726939 325217144 6897664 499696198 409020419 678193118 991004347 993533318 241214066 546081089 22700831 163765498 184235442 527391103 395842595 462268040 103147907 183106831 184261844 698661728 18380259 919040779 956842620 995245935 605789963 863756478 247596945 400030855 157120107 209852516 887302226 968621728 508933142 846897415 12848313 452743227 97090063 731715817 986662890 999479710 562857250 919610676 235617490 795474071 553105203 660688768 206254564 675453573 12996916 455399090 699346277 831639303 933240428 977927390 726436982 984276880 120125585 690579515 151353594 804318327 836603023 878144332 444518816 901579677 811094697 984329473 704017680 860960181 251911845 721627443 235648193 740476391 400999208 420242149 969377907 971808359 791221058 948089887 875758687 904989662 496125104 800099166 20229048 362411074 119686851 629686691 93702820 276572689 949895321 982759638 900051381 955191453 658379482 859434281 565393543 685345612 850023589 851590263 207159845 350444743 870795747 889522112 646775575 780779188 981981798 987562324 612438944 929713465 413445658 839976836 360818762 585724870 990710062 998168800 26740270 302982887 902646190 914040532 562936502 978669962 672437765 834031315 662434486 718461632 508455382 537897393 320881649 525275052 245496785 556253526 643140536 699481452 213237274 687589187 344940509 925923881 178500331 534996129 837681613 873494090 735255984 830409997 980509211 987385178 274816565 634840202 676770952 979806637 98509383 819129530 176064512 748643850 223125837 601494412 214415496 381076286 338450859 634279801 957311828 972637711 927252127 943299672 159392170 600426700 34680971 277270304 160556912 636133284 554656665 875687008 705529641 866398710 237201875 523446773 121786284 616743860 301698885 446063695 229673200 571855481 672401164 795389496 583388524 601198144 316100492 495524410 79808991 259291645 563141409 930220013 301748950 778965816 390240493 980597038 150356235 324951967 888844199 912712657 23283352 719947164 217660984 549422260 413080649 494903891 640544546 806801114 489339610 607016653 839857304 929661128 37570009 580624843 187904981 604737793 250345118 663302586 49049585 577733000 28789541 210133231 15561738 372731541 680065494 819152455 555718911 770696438 753585881 827466974 606125826 963084605 378809900 884037180 624874406 679209996 110753869 828870924 943131611 974596767 706065005 928000259 886333233 941792490 626469022 778916251 571670493 672260969 474739018 716344500 789690131 802211715 660739134 662158822 295882259 655577310 636860966 742503944 564145035 570222609 725724064 851101259 135003658 239081542 933036955 981827931 726936146 732466193 342973986 474919620 204839603 236726031 157646625 221247948 598866828 757434982 72110745 253112870 638288339 862363107 245011494 648839051 195098121 414356202 188806102 720951504 319245594 750068458 737438675 993298020 887023489 939468633 748639806 796647658 129899634 890584205 73645209 182715749 462217084 530145667 862330086 866052586 750195172 951051378 445405995 697033054 474900919 902198133 110327843 363211704 675099091 932213230 410977871 774232857 967131274 985399470 135683335 573409392 49184865 918222001 864571765 928565036 478235599 561005079 119087074 125563602 230393472 992071565 739138998 948858347 733269816 801104159 46432907 944726532 127319998 765206629 56245863 538731058 329012838 930653386 125254525 421498946 583833230 886474792 723710674 743621994 235484495 649933402 406695012 888489265 571041385 613469349 690299392 967880249 805428289 829558696 992952204 999993877 926049405 991734487 21847025 73073421 316078156 977046047 547169569 903105645 609033394 909155691 296844859 938168462 986760184 998350424 18940476 245800496 866236230 972939853 822976178 843088450 241982802 613848541 638307260 731375663 700360042 757870948 555237900 867459358 585018945 622786558 506377513 846288307 923046783 986496921 358144466 722635321 425157416 723914041 735632065 936795325 520915233 580325356 839551054 989022161 722792579 923609642 221547358 413999953 858883879 872760226 18176458 106499981 101552092 674593956 518883295 770618095 293627121 905126836 444750557 645477141 628733732 904843697 455906640 869862199 183102437 772879907 837237679 930921988 707125228 958586455 61128484 681801314 995951282 996181043 841559579 984491159 709089383 733753269 77005017 627579728 857713090 963937098 771058072 964051710 506963471 934353261 383337711 689912789 149029706 446941354 317690945 379261102 527157384 594692806 323980468 383812765 350669708 433688432 710863007 830929134 589176257 968202364 982565039 988603199 5984845 17486384 38444823 71099096 185115214 511683967 953992066 993477942 408756052 424097737 691517928 810742680 476941315 790184838 397232823 479863300 730260256 811700059 382871384 949635725 105365734 432498615 154434408 684774359 270722887 669527060 14490732 727428026 972706711 985993707 686982750 702529846 589322032 694040214 111572170 330951308 771469950 951538503 297843025 750422596 607117133 782273635 49125682 573370907 427620605 481108488 628485444 695135064 831960471 850314972 19021508 88304182 409637407 944683782 281374232 498906705 764257059 996740011 115972031 386604397 521145811 810153775 412687105 978262405 123602811 942229083 127644226 646687562 921503638 924578607 666184599 993303234 446389520 489856191 9629884 346069723 600258178 979145567 63094700 278047620 570035121 756307957 959138883 980291365 473617287 892204053 907588047 948385079 683340024 990811288 762714349 923297869 694514087 816736657 722904272 815668422 656374043 799830079 369903352 539902367 465586052 817959513 363305925 606844774 241754903 797626426 49497066 474239203 337112140 709143481 292852474 764768100 826058243 840939177 530197740 782196655 856365032 868307051 585044010 726243280 873536893 938139590 725815913 934217921 396746112 966172963 909775597 950991740 794450606 878480795 846452831 955516156 722084259 877626589 467494970 670574878 247383295 530935069 122641289 593083331 248012854 276814902 671642794 801029329 709020863 794296623 284738862 786870996 761143842 911998478 501717444 953659904 639656262 801170347 441198505 637281432 958502231 989930898 362089659 397464168 701741238 837010776 843269274 862478612 717848576 719964432 668236891 674101739 545532405 584621038 903474472 911689065 597589008 867025628 425671 92494202 452509412 630802310 663222295 852242270 405414801 439306243 914371217 976479098 599951070 642390999 520504882 525901278 597958663 953581064 35569263 262483964 502490319 529063636 650738464 833596826 889267355 914087626 741759524 888659833 380248833 431729585 481843102 736448576 292200461 963940150 605285706 613334723 950623717 970939177 627853958 702026730 204079820 274909029 550423579 907172721 987434111 997070535 493050816 713202484 199080383 370006044 896032874 954845826 497294791 919774972 99890128 589212077 826033267 948182995 311304419 630975862 767296953 977978377 801896231 962318250 88837456 569761018 218676587 536355343 784784952 910022510 918014905 951083965 446196501 949991331 756402910 811008553 619050172 951520708 506999974 573952537 49914613 114248165 256852631 624916771 727486596 759891882 147995689 291350947 344779779 610542066 969551718 978863060 30254256 256755919 243906510 971209916 432434014 902335682 539640494 724473180 913390955 950049463 422403127 645178582 394146929 401243189 415407216 659619471 917353841 942147375 159298240 920378747 28865414 968720795 934968482 953327211 933393079 944159682 669202527 720011094 943357867 973558906 751968826 799491810 358484825 570876206 201386787 585650961 256553564 296671245 498383869 746329713 80167846 454784877 729325570 746003316 49832651 109725498 594677110 900299225 358220494 911700083 292817462 463324380 656746105 657597431 65599049 968064854 424833419 502499952 327980676 496975132 454865994 590330424 981779586 992210617 637726878 930898452 108817874 171109491 623012791 998332658 359338577 798701119 192571725 212577954 11424757 308072363 203219069 909759622 856961606 945827853 441615255 561805478 940908693 970028195 469742285 642488890 287865419 443107126 403032722 610701544 44296309 922728838 147961688 576435183 329662306 667505647 578774427 644569610 351971748 997020226 318778693 863512268 536789453 660941267 737611501 968747963 686318377 946930799 31537988 916910500 59846337 158396863 108986240 526592551 530389701 549527167 563353137 745001803 680154592 909005614 942410227 996399438 729657200 871366133 604072567 976157442 819170555 873502750 870739817 975972593 900294351 924678469 932350737 964218921 910146807 912887354 336260079 879447514 597023841 710765867 552100011 991281002 815648983 930616557 206973620 711211835 923444661 960164478 50039862 956114981 102478725 768959344 368831503 593895263 836995190 910243708 824488019 901451620 906716990 964538851 333270130 931441738 383725270 599393337 320424530 772589364 519454977 745991789 712385359 837844239 839709787 972126270 281116247 888913550 180382555 462245311 193702947 956713859 667301164 996660822 918372841 920256736 20015016 680267109 972367733 975347634 637837948 638451893 200173485 487464609 209389365 961077614 751400090 809185179 941295166 988492127 960987354 967509945 661344766 698512795 517452367 609253759 352594538 814686380 911127568 990386553 758906092 766796164 65932798 878987708 449844654 481849855 584935149 967462114 129845523 614554759 570392113 997267738 896660936 966894545 61900337 225113494 454295446 635707805 537216119 949666209 680158736 832334463 944499699 997583268 127735676 208622747 149014370 277562040 126227628 916894996 12469269 124310587 826478908 990342099 678148599 721002737 135197760 667819024 359376410 588210782 832572414 973312211 362570987 600012522 40153591 388739520 626376776 866791731 835547258 864950217 549407036 624402179 604975379 822550945 661055742 848100735 965254406 965404600 588060136 625709574 26887158 540158564 310331542 498016681 613256843 872400056 703898659 947265476 446482446 991251449 546708756 547152251 883945640 977279353 479685531 933187239 923311925 963105742 847851547 957659235 75252843 187174569 616966387 958660403 395329730 485752597 883307155 979996366 541683039 881338703 665171178 713775450 744797120 961213405 327664820 528890277 149738110 615318247 732475186 767609810 245590884 917412758 527586279 573583126 232946853 937496448 714410554 836684319 658655146 755168887 828600088 839770878 291830104 519199614 413812697 648569546 779923600 813952505 961186233 990578458 227440981 455198621 170853111 834200154 200582005 978931779 895090434 960850825 449373082 553940924 249996101 899409763 32730411 214326789 771244808 960298985 433831173 537048358 461112423 787508186 128224314 508577028 394614650 396441956 197739112 252165026 438245864 649068461 498788524 586835226 722839798 912391768 767852760 815684751 929663798 995957299 453718973 887418335 716955730 721973118 429654537 668095105 121650378 699221748 684025334 832367773 789248789 882996277 410275242 525860948 307960078 995778852 177568182 955250135 560668746 586761329 536786011 598685043 471128360 891164969 200942405 704151518 804768746 959862087 972781553 995886793 19205268 900361296 866222156 945068028 918223086 920531044 912128230 942802260 40458925 196146443 566870229 950108192 281600982 974959296 213087918 488440952 562533402 990751125 469335031 987422146 896213263 964061309 556911161 937603064 951974230 952287494 885216509 978787443 981810618 997781954 67918431 966055400 642532646 658302862 180914485 648033635 59495801 757156948 151778301 252516933 213528528 289553146 283499775 907206135 102566995 370562446 975762405 988575412 851640071 932229591 269375638 681946607 912277816 949786054 594767350 723227736 182475180 338084538 709071131 716126768 754627781 827625881 833591194 885468395 784802193 873715780 448807848 505277922 573088168 887993668 42282730 730898929 114048816 862783681 375451556 877460426 878560577 993557022 21998569 836987371 280429051 386426071 306934786 601036050 609954081 891241267 437736610 924684040 55398505 904012755 988133684 994623963 177961850 263404909 818951516 997287583 453912660 964095726 912422567 930868576 324888073 523381592 684371650 909376786 622008936 783850091 815950043 924630861 387818067 623988721 744369702 750325926 40715162 479047887 890689192 910189428 727929536 977489671 494933107 526987059 147021655 384736564 194061065 924125402 287327238 881158668 3161600 420908915 679787803 909402752 910771727 950352943 995472033 998162867 542169331 945079795 184707778 294667482 251723163 615439867 409219985 757827615 660332741 768825723 349077944 577101093 365897058 454776217 316256376 385392877 656649422 995238884 890041260 910896418 282174567 752900147 877198165 976027698 930854724 962312752 464683912 467519768 487411437 649485066 110427092 506243720 110612865 386444448 771451038 983656405 956214297 962712479 984518323 984789510 764108692 982692932 573591138 860159507 901852517 919354943 11117161 556782035 273774610 875757317 777551214 863836038 991700520 993769617 507371806 590917160 576910549 809032063 845978609 901677778 888940111 988161366 730507417 988595314 74629036 525141698 862972585 941664725 807762197 995998585 442188781 499442551 893934238 931983086 562508491 939698238 371831812 417973494 189563472 492886357 998057866 999674612 645732556 783370981 65555944 171107184 390970356 583033574 838118150 907892078 516892497 944589143 148553290 867612920 202338389 388019752 693821997 844496730 728833267 786329007 182015040 941888146 337274423 704323722 536877104 590066764 21993571 368408371 150855788 204090432 622589243 832614990 509406705 808261231 411440385 477894198 850895745 915342001 856301632 865224839 24741169 438204148 872730968 893970455 247093294 692462406 196489645 264307190 191434542 921695144 100778718 155892263 843878472 874435862 297653092 587700834 11571010 312078283 95278939 587920673 210347986 428623234 791474172 997189288 534524970 734926890 566169143 625668192 504213942 825702584 764036946 945188123 182804366 274733078 59232249 397032251 588280961 730789382 729900778 830197722 103494860 184564305 105922444 953748419 859923706 975783609 446890409 858633149 205045391 888512179 551446780 642536524 664648960 682231895 828508081 960674242 446685527 604752851 997753824 999526034 260136429 560763327 964987013 995818444 136620457 346775724 196981090 328188012 932681693 952230136 642170927 870225993 416180734 983517597 976523975 995950300 656310067 961368586 467100206 913956773 130406272 419055968 881252629 951220094 641323498 883884391 618557783 641292888 384927289 975563926 361787954 920394565 705507676 722927422 151442724 392218525 837617643 937371237 853997139 885957764 571979870 954492543 300459809 566267334 417199616 907750314 757337071 833566942 401418965 559219635 611439064 813423745 697425082 857251361 568218400 723633973 696068821 953043537 969707125 999534103 338589259 383790170 793968651 835122748 719344105 970979978 304919336 753479570 929841326 935466180 743212465 772934651 965321659 970045050 495728892 610570881 564750998 624153565 725525797 806198360 43016874 288236964 924776986 946993533 156484193 286617283 760472161 982772069 733959600 887810328 709468991 723793916 358135204 622737922 305484637 674627876 456352874 836828260 244428471 596900900 34797192 650982796 320209794 475646019 269537332 881515539 181503392 478654606 749581441 968176099 959612852 995096176 75675362 824149957 242158992 293459084 394787696 493745191 410837040 955107598 848904158 930687122 736382779 851035059 702022253 765787427 766406175 816778129 202645021 884994686 710666364 975749706 971957407 997385905 256623403 765819018 590839989 761294410 835427278 875683929 327098414 610165590 627071654 847270838 426461976 651053564 990416735 990504530 746241619 876153471 113995361 128471711 713472104 809627940 496799112 938362551 852800139 910429395 514883993 997470520 78434464 223473856 541558085 889899636 377249679 584671623 379402540 548855708 463943585 996486524 79575978 340902844 241135354 382210211 59501671 793681420 888266561 995601375 324622194 839017566 542892568 739269437 811406147 885979232 175205188 309111269 494659904 946788528 44048212 793858602 612851038 869303390 399635420 706124923 96097181 338049560 483573753 922020957 704279995 849049508 153541859 357064338 664548918 890045587 245071488 976915575 146534849 243508011 123348551 770497088 633280193 908891838 486762243 498162986 535854295 727524887 591195133 708848372 504803856 865023518 461967686 811878689 612195523 925974363 42560708 257661612 30967312 633239198 109058555 639514845 871617754 993222525 604935998 894889948 133601171 777213952 878160869 948270792 720695828 838193125 824570612 878833073 926189026 995791283 949065017 978821803 736747434 882415015 576938264 881329371 128666362 353113512 271351890 895278658 677491212 854877950 677209492 753454626 598640975 836193007 381196327 462773291 75898594 464314946 687817466 702971548 153028680 827976108 74188176 216771775 3014661 356441806 903465922 999088823 339443740 444536912 816244812 941104000 44613680 784926431 803515209 963827958 105366043 743334221 91788585 349477621 44886626 318260939 941633156 994127812 534890857 957093226 725850166 821023031 222665812 499484619 679410120 970761360 292283752 757294666 434185177 564347536 468516150 541720889 436473211 705891960 600760975 627814289 682333854 910918444 166364936 718529119 702009775 974890662 10185687 771754325 904756389 910896415 596884451 936377538 263247768 372850041 419781907 984018349 242524507 673435351 240942223 717644403 211669906 810701135 291074277 864584630 303568967 699638776 978551536 984798091 687208275 948595621 965463523 976514215 898688532 928342994 722473736 883179186 363665615 554566629 987210996 987917385 517877270 877819613 691513823 753749531 927717344 996320026 239769279 251083700 375129993 416761675 938235166 955616587 241479802 304632664 67712753 890084310 966961174 971764160 192521160 556021461 703398678 776105114 557525388 559113624 727191724 824712666 400626745 443192917 753012225 941392032 679471438 962354278 753410649 996452537 426812182 837276183 563943121 969098852 188110083 325008300 848489140 995171110 330653668 338163233 766303851 815566472 154265142 410458057 311617085 938758170 414890387 450830588 105105783 687657924 643363062 798284668 959320213 974684308 245839218 310777569 496805560 893771514 816645939 818162521 88082885 752263664 750270723 916571385 768991064 954676201 827087729 979733509 676098624 988594948 468256963 798062076 663087911 827643051 879264063 948794816 949341168 962041179 901607683 969133215 799934933 832015127 686403939 808669909 395804140 784903302 152650259 835875995 212273727 841140446 453714039 907509856 760500898 929931145 906663001 995236469 414213713 852999642 100633717 593449141 450341290 543193570 603825845 939297123 606965348 910214732 701738280 740314839 881513346 896207247 820611856 934865642 491574196 791373307 548478964 901601188 319869609 552653875 386942337 864596539 143712931 144000584 321697352 562510794 931914778 950227243 943833094 955808353 942052731 970375042 37061248 508804772 695777924 956597448 992590208 998566116 405731986 524295381 862255889 998251738 495785030 810296168 33284735 120602379 100876288 656896596 53487458 464845478 454859508 852139254 537850384 734643471 134689922 612785460 581762212 953058874 982918897 986614894 213236513 489728731 604443092 983044636 509095723 597529330 631777019 975879199 728994445 797908742 262772856 605267542 558677234 708349117 697615239 822719651 191745327 569188659 105530128 571432572 80446988 526088591 593771924 976626011 914546451 947977941 947972355 976205358 950348049 964347974 557023960 991666134 499783407 821840332 160132665 243790403 454499935 512988765 307263431 633815522 832272102 849666412 314853697 570063759 585617394 589570301 128450853 841178458 500318366 981952419 162399071 688575883 59367420 413552828 63431486 934650255 928628843 977480110 16938081 559534041 833406082 979105875 736074647 970518180 484400643 935754112 656010308 993561059 31535903 817610373 25268936 469041862 237323583 563861834 85549894 351369281 725568793 777250447 11650216 557430182 347559259 797728570 378113623 547689510 762942765 965430174 130653263 616712730 799401490 805552078 311328397 520674929 38852081 699851326 754564182 877552238 554151823 639277015 487440379 582571130 158041736 374901184 573232348 955398732 547969252 731337289 455569170 774466894 128334373 582930670 382643993 645882038 576559314 709836363 844515587 857616125 186918076 503234167 97295530 933032986 123977504 956368313 522532543 743303173 182957271 838279978 953286753 989350429 467905519 698846894 727249314 886946043 172496173 755501914 717358713 990182326 52832206 694914818 337412658 578560054 442204249 666740532 296698894 853778555 88118469 775587660 231790933 958656642 69784207 117011961 304872433 766259021 341277526 671947250 903182400 925461676 54484106 318732988 682774942 976235182 780325913 846794129 930910511 950853959 90745687 173566087 802103466 948623398 437151420 694346331 420748597 857726593 961343304 981681526 543394535 586319366 812053555 993507786 756755486 979782690 312446769 826521854 764794527 891446477 359053339 527157972 66434372 765245224 887749493 955750570 236090835 250367621 742032651 874476881 450966897 695478151 576658752 763452010 258571858 925222119 854948832 969103774 382628114 927693777 154344882 736902255 356185294 966361228 304557355 710357455 195100234 383477362 762154084 827977874 103607721 508018928 735405163 799960333 864791893 881712237 181467258 869651099 97689324 861974137 597817699 812479198 744719051 967761004 631906561 850019853 970213248 973234808 150507312 321868805 303614238 524060933 672818548 707317951 56362123 684083849 303659325 661304510 700195840 845026472 523968676 648514572 980609763 987540275 456867712 604334034 337246136 731074308 916351855 944873501 319559814 999155887 601860187 723709969 980900585 997802253 928564744 971007977 161913462 491756802 923358838 998052545 279378034 900610469 190429856 610157162 68476081 308934579 53531686 237972520 336838320 508494362 64022793 501327559 653230043 869339256 637173498 912341868 430844643 975486721 478159069 605194589 140290952 703228909 381566372 554553275 809725851 954897612 540828913 684814742 935459628 956745257 341511341 743236755 969958644 986903171 565102981 797928477 696987292 792690217 863363353 925962229 957331589 983108280 375812061 748089006 154661149 553103504 989991951 998883002 675665348 926506987 223271414 336912598 633965291 936514832 450092898 635095066 712725452 934937684 507082659 727716603 767262282 798425035 540291470 963830749 616616871 884090862 967125858 985696371 811624747 928876221 289064464 875037615 401810450 488221845 882441673 991175767 137071632 794247744 203767492 848973741 863829020 990409419 850311946 995323991 106443567 598274262 90109471 213131242 515990964 587042341 708796888 809039509 526978374 623319204 626017832 937770244 930170543 958971115 647731821 886909358 17673617 202755379 729646491 772392037 5282853 64942257 320252956 670918830 88289986 329313939 707618445 903582208 431153743 935080608 241495378 717610318 454263865 897738311 462607003 967702760 657231017 998506240 179226722 730225123 169489390 198913561 580144380 642628080 140189350 426857688 626842318 810932407 837535188 853847315 520227779 580664835 787984556 886036164 48480126 595125253 402630987 695773728 484584874 956163266 965151614 989105297 860140196 879611699 215634863 469867716 222279224 683801587 257256124 903668265 561187276 837266037 637495674 809182696 772186096 946611216 76941056 563591663 962947560 979133580 24592482 387145658 826445168 875648360 81194985 378757935 406736012 969289114 250962252 757420471 625445244 822306571 837338797 990788416 223211008 513743428 950482396 962558881 14289557 490662541 346283386 775242609 650869581 651466298 963073088 964329432 831382706 893868402 562753977 723611605 102873167 876905905 709438875 854834838 365165955 374846490 794137750 897233181 838101184 916701291 881674820 901414825 579460300 989825395 75828395 747402313 86719248 516994986 288205485 301013753 903746718 983863538 201301168 881896104 453250757 762815760 4138218 452575103 75033960 625834012 425872366 629959937 915578073 946936891 597996708 805864471 468317235 616424164 476279650 829667650 17796755 850368715 91691848 708344878 865703549 965278979 105747689 377047778 272638378 314906534 869473288 884277769 726488252 882707662 423266097 493771370 189451576 263450251 699720225 731619055 170659755 411758977 329129250 932832003 65117280 650776733 29629821 679447657 573324741 766644804 785325776 837196763 703721368 916244488 775548018 909611199 860581874 999805899 425774733 508852827 711601482 902301447 840067750 961247447 553917893 559579816 185541946 692846913 810819674 947634439 269018176 428038773 564469064 568330665 577603131 785671638 567279563 755109331 679954817 842036241 34517065 422564389 792792922 895769412 330200968 663482272 612032357 852490464 513849835 573891025 932079211 951112010 357732358 478938533 577990152 861317047 571007322 895322582 557164605 723982451 830044723 957744083 919176815 988457582 418852719 887010214 534371970 834111264 210997807 230467826 22371034 250997879 831456824 930641700 714399912 896825485 990182327 994192648 995043011 996774979 732511010 832518601 238511394 840428274 797595376 862396403 646269281 852082630 805592424 907483387 951878410 963926956 907755737 976294581 119977440 418367380 583259716 669404704 357356021 923901241 359320337 769244254 954931202 972664112 433987397 657433560 878428294 902620129 452482357 966064794 86247316 578811877 316248634 351616595 267334735 763680576 700985122 805371310 788466240 993165259 471630132 520556291 449535067 776597254 101319042 342609997 194951576 599675443 151544887 967374922 634032147 640011667 366199629 785013162 716132428 890639092 641778326 659117314 314591592 716821696 657717192 740843006 149923526 414645778 482376941 770323893 967648267 977818042 77997278 677506682 307425424 811237292 745331704 902927989 782480255 909670765 182176680 427497201 746215927 878599197 60820792 750295683 104709861 392265109 359053934 481308818 946885060 991632471 808410180 895189848 293812595 809073607 231041587 848804389 836433648 838179099 952517985 962915554 201185344 529026146 119691212 450859565 495261330 867680024 461364761 489277495 107865799 416110251 116412956 523072390 479286932 858029042 652967211 789911265 52335861 101678747 142681305 757392612 326024275 751845487 739743841 993113167 9044993 730421179 273235568 453999836 913459721 955177534 630986757 673326386 325879351 579301088 4120761 936848231 979475519 982185861 611467714 633641751 819514702 984175952 27609142 398305070 204399257 469392182 838089453 946192315 896846228 904477955 893922795 906927198 17000191 133778193 516810366 983916377 692719269 987514667 2429566 363997669 988621008 999317920 580577139 818760053 920572216 976292076 139770568 780235206 386749871 792108077 254749276 680102790 746360203 929533538 770183352 833777775 329471191 976794182 967664401 996760952 133176933 818647680 136510362 904764473 693472602 789274220 482994882 619209448 725324610 778013561 40461688 835211163 500925382 757646572 711562431 926097258 64823193 944480480 7741170 178871430 91808027 853205912 941986819 951455124 99776440 584950099 971836637 978888774 664989932 890409124 395749970 488793709 423743337 735563786 990715955 994529824 278306470 282335647 871484817 885851287 344179499 806631277 557177250 881210538 562093540 717373344 181119251 992221863 320959187 440693903 964154929 985310112 534962298 743450255 849445432 938143104 561708853 883736180 851470590 995123429 665897045 772649311 734882885 923448645 594535077 773940674 461655861 600493484 330987012 383709557 440947923 749271216 247813028 854343767 55687779 553592165 770766646 921723858 382478409 833506669 368469282 772773594 238756758 920997710 377812921 835788885 562549956 643254132 29603375 253954275 471450692 850861005 415719218 781983263 854096539 869459603 444611391 976726510 69804137 423878461 674409917 684316892 747435321 830477873 443743915 524801367 535353505 730257728 515091423 534895736 883213614 977275298 898361686 998854619 947225124 990230479 573511380 953106820 308772954 834186035 985915877 998322384 473525653 513295898 895868444 958588352 858645324 991332860 706877379 898758501 871772495 964071467 751241857 972323880 763320255 928833838 303159866 389472110 12575482 265287002 938077038 980172060 273944766 754655814 455050277 911502580 850137541 903398239 948999414 992768333 481166544 925084063 481960772 649516420 158526369 492473212 310875518 834855618 154565247 618779686 543617051 881661914 509587511 820074491 844639735 950812670 716152432 905188008 491174471 720865426 601711998 857954242 916308237 924453922 179723352 303658778 854331333 898335973 546314061 908278896 183857492 350060290 266118050 382836800 116191070 389495477 129534209 731758707 152852750 279577849 199331668 486996433 528837581 955224791 749715691 873593399 428419454 989661504 363709105 848675275 247072245 955568791 638749282 784796092 111350320 768062163 769808704 901867390 377819745 652567503 162024088 638202319 126065041 734963859 677459490 927013975 788861399 827532635 777132103 986745548 768047208 804505422 763068051 801072229 690255276 702964213 824034776 991088081 254911094 515358636 800149318 843724557 993841883 996030813 714519209 849751841 506390664 891080964 667927061 770207582 427716175 994106879 599641338 821570605 739718820 994778079 259270775 344474455 756001163 872777129 598613051 661704664 630289241 738953388 55147781 489550367 878810327 898443310 311769976 627879253 292174996 327589191 597534314 673295964 771973783 882666355 287849845 330299747 424163252 808549347 508149131 883996971 308482769 927149138 927400806 999485250 22289697 141058093 180267152 725521514 388763558 916112731 116150010 784880538 242804174 251989616 27255319 906421311 24825521 842496835 95462670 324340113 19652410 852824006 121601146 379265132 177461365 227937832 8407142 598264150 296082301 963252771 565431658 719700752 897539397 963681518 119291325 126903899 771199012 954108393 390780038 908662096 852036515 898888759 484976333 652904590 788678868 874094798 576176190 820014661 668308106 988071747 184740731 819290797 313838562 888752793 272341394 882638291 312581372 502880248 817436861 989647875 782815011 990028998 705080224 794831871 756968802 810469802 340923219 602211421 303754504 948545501 299344666 316219207 850350461 893805227 228951066 678765654 994150850 999783891 659934422 867607026 20123931 317853387 617816577 867846920 43982968 401259242 713201563 813602117 777432129 913155427 464635134 638925148 378896307 972058232 407855003 655969484 242316075 768367050 642642160 942595252 964628681 980870228 660445223 893960362 969804064 978399659 886918137 953363371 920367850 924741576 599305464 855589480 530360057 836245435 994295907 995306637 75191206 538416222 391860779 993241791 990422828 997752613 904982106 921997911 477104311 812921933 87572521 247785191 454798337 577379506 500699055 827149708 227119812 816948486 485547974 949349728 441956023 669489627 900368420 974849224 364438447 455504049 428594382 679855085 690987744 888377967 674786086 742023673 628656909 872469458 864171115 948935214 505233118 635150881 673860863 965568180 605487491 660316223 913944576 994954622 505755559 764385545 981136511 991724326 955469672 983000709 556889895 701439334 810974629 961365117 999591343 999894180 788526978 832677920 587281077 681106116 64628792 567761556 98133800 202908236 30560591 735074141 796593624 963559783 766062566 869762427 568676111 844282485 128786007 404167626 158616793 928995794 195456640 879076358 753468011 790061177 318695709 345324929 878272142 949948542 634221387 900832209 898723933 977406521 201994269 912326484 813416497 957266740 371783999 826405582 86750007 163953250 811184489 850430392 374384939 599215802 760745030 912389940 657450070 701083691 495215706 514531850 44961934 222022346 913419201 953082246 755232552 994229172 788245733 809038263 589134591 706731398 191124739 910683340 190502087 422928199 198457268 647477018 550837728 836472727 580262020 854401785 624527830 988551073 262666100 976263917 602127835 770178146 43806949 435699250 853575183 934438841 874261143 879703522 891205612 909226113 45582012 204647994 118520952 955172569 331039721 354610515 515428136 903256538 864077200 931892865 856023387 984961995 525653601 579459150 32802448 145410362 86718997 441191977 838142949 840088786 827103130 867808773 275456414 649187901 995315174 995650548 744083232 767850652 508430329 912212935 667076542 767180229 332859476 929691525 572544012 897992671 170586964 691322101 995503448 997137385 776387702 799252656 693712225 923789951 92185739 242724125 300680319 651500292 346312976 508473216 88435328 371216363 414010252 790859336 351676673 625966093 862211957 924196700 402302739 757893168 13284078 446283907 374867763 889421408 391244528 636873369 261087476 644852756 11604055 487212815 172811321 338124608 127077571 825431080 826350514 843061100 774676139 904071178 477735100 873861599 587372045 672057878 649534747 995165807 643481998 711734294 872847304 935872176 612500223 748387276 422648004 982278930 829931447 853880895 70578053 126138745 959954864 985176615 831450110 952726181 965589906 968733803 46439323 179722725 532605073 847024694 193956447 293672575 12108841 508810026 229663142 232487733 86797203 812853622 969978450 975350976 859765958 919897557 585010575 717025118 34701644 707267162 534235574 604832723 460612248 604021126 127912082 187348725 391529219 525546200 140322184 161165483 952724125 955250456 872383997 924746232 410535157 747586073 734859815 753549801 199013616 479924336 404692289 914154343 112085209 961755761 458404787 677066420 500289226 794838900 276095995 424630937 127842620 396025467 829744829 887271315 719756371 761009515 543039161 980667232 781476766 898030266 308530557 763834825 395131130 618083265 483446 278185504 667380623 876723668 72064449 155635763 661514058 739553881 667311491 682290985 154067118 944480082 190848059 386158036 577185523 760528102 682083234 971608728 197457000 609685141 146503580 925183620 739956747 889651164 943534551 981806761 805319084 834285578 837117985 993663552 976243056 978128381 934261492 983289359 45757953 169283541 356228788 846790129 541284149 558890037 72274853 201079446 286293987 566087438 180831844 785772806 767487296 967974756 405565099 998779543 315464098 518784114 940861266 991299464 634456333 918835599 706614947 979807824 120739257 309772992 462073956 624702288 953862249 972598793 569947704 664594989 909909694 949029965 309603230 641324804 844989979 895809877 416543418 937156106 659833464 678317686 127596472 448486513 516694432 817580037 362976842 948947975 358359351 590367077 24933983 300373020 830208264 956695017 179912665 547749052 701504346 728052548 689116071 996058885 650675993 887617622 744232790 973556933 895093728 930146248 45497711 148529250 313258130 727165154 844195439 996359544 70693354 562549314 335219392 889805486 554600195 733804531 632150659 680109741 523614593 661709304 993548366 994124250 500577986 879595071 314110729 327820586 973692260 980577941 558699295 636925850 205488799 700370825 99814325 867233464 732540969 796009598 41141956 880419952 606078513 900850880 10474094 95098713 138637312 218483139 55013831 148003779 223134524 663932629 166981034 477865198 761697313 960240981 141894802 346025744 869957237 987047354 773534146 963190668 103148257 667874288 881072813 881370171 147913893 232581336 21429482 216955230 1405349 875513934 556014619 663144806 476300685 663005616 182209344 760355864 384434352 903284345 201021806 864332174 488099170 586593272 701192027 915645666 823273483 849178141 620666891 889540804 260168450 345328665 793924398 911263785 432350535 784906994 170853567 832051335 590098793 957352918 122600161 913339845 900333311 977596428 989689289 990571746 542883142 896257307 46736214 989396882 667422265 928554029 458170316 576298696 948537146 993354414 448819545 855671798 476714425 819249202 224689556 588752889 96167775 903050117 866404805 992966707 316119688 377156665 567618070 947633512 743631507 946644535 590049807 617924541 22731384 868949269 941991967 969814195 777789107 889498505 367270098 512108742 774275792 864376021 927713959 996810372 227623510 687904552 703060543 733106086 254226155 529221591 118443665 186627628 371051974 878271873 789450294 910745282 648866263 794861152 57832525 881853376 218402048 817583170 688833996 812820488 90085245 397641637 445121066 491009826 9275619 680293803 714193862 775451003 578520198 838334508 490613338 666511966 268239906 477183165 403086244 719131005 127260957 436535653 586827916 738803251 559233363 704137671 256854392 721029079 157782441 253738322 530243428 935508252 836857644 951607445 277047629 505005530 305206268 977136801 357416664 959343582 380481449 550353380 800746765 880794888 239320736 313301594 235906208 365625495 6232014 869295730 548343148 922153323 65536244 978014895 759071553 875551931 438054452 913875952 406513199 764640931 701659331 977911164 154018979 563597329 207282966 761688139 305590302 742401391 399856197 997137379 503729724 717666370 533155233 539748570 568527869 635779566 576052836 960550210 653424766 762103014 652438522 654941403 268536231 269309078 589066312 686129176 191026254 723017009 95851553 127718382 619801743 745528629 547540769 901212072 54963997 325801462 993529302 995412853 625595244 779065010 210243159 674417486 818046947 909106884 717565838 883936094 550280268 686405424 695124162 722170903 494254834 820600959 872669378 921000877 736588894 971311342 235544048 740678678 821898574 986253158 787181742 827603026 998318487 999418785 136386588 922971083 265151278 549497825 582790188 586813536 369114442 710865123 6950090 95566248 88240978 621160345 415237779 863197008 183423136 927917487 923156764 964269100 923693131 987564322 79285915 689223042 993511755 995989681 811665689 842053691 338883810 948477479 841989278 907038345 995604966 998530453 808926201 903622432 973910094 983384435 962139493 975543590 90822218 278845932 293921373 375748487 845375815 981867378 139008515 824216139 454870458 620926488 133994257 502778794 18725273 922933430 411584299 740175863 585088408 964232708 812520812 987542365 736814356 965418394 558307866 738814727 870483449 902076796 479978763 899403369 871108879 939801666 341907777 653817839 968151294 989613222 382196048 907277728 563825842 568338304 296066689 569221729 605873151 788997937 6255041 170869573 151819293 417555381 181053833 829076626 36783370 971535965 454742632 611326672 997344368 998309044 884757832 936880559 808117198 815393847 841844024 841936644 336646245 350576432 229121606 679505019 332978626 768022571 428100900 743486214 27987193 673408344 59421875 874902897 957156998 967954432 999179509 999313751 642333035 706848408 832515946 943691943 526653425 890030157 203462913 684500061 837525870 992428983 591365805 938323246 429975948 710117356 972828313 992153855 212734606 296975996 611610019 720436128 149348409 615570651 722597015 743603687 176082161 377417149 111641837 803765018 270025542 895253629 639720224 944320594 741180992 776462521 667026917 947310094 34012525 369142239 611584868 641517329 868317409 869361467 980124981 983036638 294122018 801587179 346215010 458615052 941760335 976128950 737314216 813694316 672132687 725172475 413080101 423944249 844369927 844988943 433071556 906978348 752842110 975060010 830607716 965162261 539025029 973853646 810095718 976695264 285041992 589642889 183216515 408530170 537390992 689903634 38460698 841080029 52597740 610470819 818051201 955578845 65471327 867949002 688783194 717113097 966297140 972230910 515195504 770111099 148148193 830059947 93284719 139473635 310522030 482397305 246070188 338300231 383775838 467570412 832097945 970334564 549050048 600505183 582244327 879553376 684049538 800293812 221277043 873536776 863382043 912885423 122047378 936575688 142721145 976230303 331093171 793639168 951077185 992374482 440538197 970933770 15783500 423973705 697918472 740495070 869844261 906206649 863014745 965173478 675988582 974584143 304033366 816946494 875926544 917571883 362503399 456856003 482757942 817392123 544934585 658929383 584199079 815906694 654862155 920362930 542941767 646300108 134491965 472411377 703004627 869807524 833421224 896975688 546293762 643792395 700531781 749679039 902039018 999694675 717967080 735376727 205497621 344623961 608527159 636994202 112404130 246465527 34154118 715845643 361831313 442360456 258663317 732908445 772991947 856295294 280907222 356266320 925538372 995091231 595938338 826624532 455385528 669571039 857476982 861771919 372176650 509678330 943461518 997237212 833681493 905039699 195494618 695833008 455475800 941350596 639548628 919364278 384550782 898560974 727834205 880286389 591484605 877218480 487830125 584623770 86008221 621913956 271579426 588415043 761227303 914689004 694778815 996908666 7343108 953101599 842778688 859176253 958547945 991151510 325208559 380611433 643234221 809212536 738299790 850401853 351599249 735725041 674137726 675134774 70857068 105158989 799152942 936629092 643962271 898731226 777516156 784089426 842264281 888522756 711698470 947197083 871495849 914595252 695317171 701007339 566881169 870109162 837143249 894568785 613754995 760940853 890386974 945562317 82354162 787657164 461839168 483304596 177343387 360833594 517617464 715797398 285409904 627343428 768209468 934220434 471685154 828971832 771438025 851746864 580502993 883907010 238067118 534426995 451609610 924371320 200993876 307213296 115782867 175039892 823767462 920606584 426275024 951894679 397649924 778783370 494029451 918160968 578512262 617976259 434011214 599634254 309017821 648490925 524611727 936258487 625450005 967450538 791426566 920712003 46318752 871001696 812788767 860402419 215429066 347457572 217039311 875518565 171590454 324481397 374680251 773727976 237264397 874717605 656805262 927651663 288047380 387526257 69356846 390110413 354872625 714202093 919935442 925189778 372054982 839107063 305389213 813060032 80394053 746433215 70808397 287415116 259301224 954344471 355695331 788754442 844319109 990868535 39246819 310979840 338655251 956338604 718059105 950103997 768085851 970985251 542834747 749734063 558392894 624230969 479954736 487726616 137976400 947923247 396754717 461605598 349029250 554614974 827980680 953624760 28940878 53328807 287529546 966495454 119048567 177738527 336547813 565843430 515682311 895327304 799172699 826719506 36074660 94367114 804027635 915905694 290653468 422227465 461613486 479952498 495462112 885848481 281409701 286080479 706065442 772952263 10141760 971263570 701164186 879898659 878063813 916463672 561349745 696854165 49758567 247789654 985418746 988384419 112132612 879519182 494086305 561460075 198021409 481726922 980810984 992333206 643731977 874980106 274620254 685067183 798027429 968685175 625653779 851118060 140423273 739518344 466088250 769684108 373164868 414448880 352180026 461988708 712728533 766374025 420877727 955438398 536679787 803347314 664962193 944265763 252396711 305762908 410239617 742731521 78221940 702566795 199394241 677292672 617232373 840969451 893807275 917696071 191904559 229951499 858954408 897485626 838909359 975813196 467726675 677126492 348990774 957687150 87370831 108755437 980785141 982725103 808327664 973019493 368595566 858314884 17447000 285500847 5410561 711288498 179499435 234151926 603076257 889299252 888482405 901722582 969708224 995974545 672168381 807262051 925615983 974453182 233759923 731020895 215181716 227363997 694227980 963311760 235014102 903566087 558070648 757873899 940491675 969929898 688842481 887701429 469737454 595814335 743769183 890838656 563118773 717831140 590947645 781162360 637914449 729881803 359509689 901637284 344451558 600695494 809444959 933880576 505833117 849728062 521688305 698672560 335998450 488816349 728151379 771554831 764842495 963806749 325086076 492338377 409982205 775581514 805033601 936970336 162518734 685606484 895373110 944346083 217884330 568741706 972977707 990625798 387218674 543594838 975253615 999685684 535717230 761525542 862008360 995109179 139335151 442083493 582360227 906900465 598944145 843886367 205643735 971253294 153975961 689461382 716440471 733830097 773587200 831269559 582540881 981611620 559583261 590345805 683656819 748021005 131660374 712482506 475874651 835987404 897397759 972624333 122610700 986930511 718704248 838185252 768388476 955341502 821736606 826019135 73510475 233839123 950404328 967566651 253015924 549993452 233848050 606059491 573007381 775923403 938302992 994753275 529149018 730815102 64121223 155242112 566615767 748878859 345261293 362106601 967908646 986606229 217562940 693949012 166899097 382869432 503048342 889795506 609181233 956169862 438985206 713226111 840805265 970286583 720301781 861314246 785522270 927081955 465311293 687710826 172655722 526365064 212665731 770781078 118137487 468680990 190207693 550668498 689148580 869936174 622427773 786324735 91107421 620267129 885853716 949187284 828570887 905248224 879113434 900297072 393848566 958345359 934572536 974646355 90743839 544800338 663226994 885310793 989762968 995062967 292590892 978867463 227488385 303037727 713437476 957360786 504435646 523237402 339320969 612459474 298850540 540065337 338373956 390767458 513201072 591311760 802951189 808201152 579566800 719624837 651192525 878469881 520499282 885140847 885216548 888721789 448039800 520281975 423188357 867866308 805888403 994342660 511613113 589358011 575845190 656648942 607172308 730100196 932592066 973965891 585189442 660949606 687617678 784581695 105678989 905956298 744676499 936090541 206467315 569420050 693681681 963492179 792590970 936926398 335381588 637356726 734266152 854198055 710587869 850962234 777359259 932348846 5689330 893111281 13556695 864481514 373251823 521635080 578571433 756010462 878228398 936995602 865925861 919267400 659711516 671321685 409745655 740567789 502533588 568820324 632841351 798178313 286218692 558505030 29678978 990997659 671759071 973504507 845551444 960003272 312725709 412205231 516145087 755155649 976009365 994170265 433093808 784775100 965046238 993014294 200889884 921929286 893589281 944047984 390621100 485023154 549741021 628345539 957445777 964223928 162951644 924184084 983450334 986900966 56188992 916180355 558345211 690197902 375991715 811827642 153046322 817678190 529445561 565425354 837801864 885677142 31685960 602910343 559330642 870867269 193751811 581280929 756270381 768726111 930608177 985239034 479052817 707111652 449720076 818476573 914099729 966343708 397621146 932076165 286224729 499892696 462103936 556508883 342182121 846573655 371607031 595700501 566720663 783308964 623720150 833274925 268699455 761924805 69598927 277548017 881059717 946955058 836786007 986910999 257628077 684338877 137358988 607896346 927341755 942828140 815985062 949596359 235249515 693166350 492769252 763500268 634643740 760293055 439128400 976327096 571600892 682714683 805589632 821377151 893177001 894440591 717211373 853775545 994904093 999407620 661841434 866174102 770045976 920678384 309195917 822308753 816921955 947876891 737358879 917603991 748053372 895050321 85439152 676308511 625365928 789342772 647845320 867512118 427153362 517705225 769478407 881756255 70786160 790743429 751244248 913827037 538539894 874928641 239681657 564914334 936873883 942288706 472359022 656060394 334554136 658407859 864204668 969746394 926913636 957335361 955735259 991385812 563940051 800498613 554772384 713473899 885705569 890253126 37782703 436573664 176812657 884116364 825578533 948257856 424164184 689083703 681906785 969286214 196961967 988952083 614988626 908705624 547812664 786772312 667809265 814899670 211926429 884155257 478598286 888705704 257263925 939096626 460371254 528245853 447169892 715191433 665374950 839572900 454876616 618636161 474622064 716806177 908098305 955647891 58984197 67276430 257432710 273958876 218509752 454001102 57074845 717572332 659905011 830932891 7613991 35383580 18880541 92745153 43021831 877133137 197951436 834606431 443284159 557629836 258757202 681414731 584061521 631605014 756519038 800043207 962041747 973460949 715073617 720670405 824463459 976159002 813124708 855428059 462200820 765293648 549959491 891079061 444808526 517612169 615306739 893083737 193609127 747863725 364014278 703265475 710897680 787444802 26176041 516554795 734141527 830265893 840621465 854216510 592080918 807388470 557029182 740862056 974069269 993336554 421310339 850511907 77780241 916742250 852005585 862985027 16269665 108272500 356053360 711893707 701655628 737496788 39072729 573936284 794071421 921290204 499206938 711833022 731229553 822848908 83410304 587275728 580673189 618936987 403899550 597276615 646558846 814759653 282708829 581231483 32319515 557153362 563401723 630206977 275535497 453941620 354454206 580543078 893109705 944061558 833166403 991126683 530031031 565831690 140745400 209408298 824528277 938872677 796638843 943375569 359000847 437896501 643895517 663504130 175929347 666304079 236136398 968471997 426828704 790863814 345825362 743443535 833499623 996187304 631944787 968385128 714008486 925947916 93714422 368082519 51609856 183912905 474346701 503939542 303824107 703458803 570998286 633493520 302965137 577363366 244778944 599872973 986929765 994644263 247768518 892519489 586103568 676167734 893835748 995827194 319792909 672310525 256889226 472160519 36810809 727612993 443596285 979675998 572110972 766183660 906496532 942747665 446888942 549882440 146108540 597331512 91192126 177095813 271976180 733637387 232125651 716575799 557872418 931596999 150977085 191564638 104538350 331215516 242360652 907089347 744550054 902846595 356777786 552244266 427220037 730939529 247820420 815056319 448105770 634973672 354815672 979349994 869095411 955096454 240800695 932153465 557283934 820212997 89011893 375110182 875338732 967243397 907195527 996165630 566434711 590961378 761084623 763247631 342529097 704600494 209157162 612768307 149347180 900388849 923247489 994907324 183397407 839674784 681783781 913080163 417405046 990770821 335663881 708988207 599195840 808727974 448056219 537817397 74564026 940008442 336582499 996138745 631441659 732918125 786574044 840756338 368297777 633135135 661580518 822818947 614977374 683963762 815897424 872946039 263460039 975449181 62011994 933151197 582683698 949343437 953392769 995479585 572831772 764011092 300748868 463488179 130181907 691639557 494420539 985226155 784592649 894071620 230308184 234908881 357784818 485916381 537767882 860422799 40339901 360312308 63436541 449229443 883488216 916066798 157984752 325162470 221285541 230669749 40504382 924277307 185811655 358926908 362859236 842473798 308250844 646670004 485712935 964354811 793236039 849407765 700148541 938287628 982955316 986048480 445597393 612841740 683724697 995164361 651394019 728179692 897308683 957771638 760510602 894084831 101104566 721607804 209804353 802004470 474180391 654312184 741167769 765509832 895386352 955320083 353474502 818263217 724170059 910211215 904188974 939666707 870135316 940214591 173023512 577109778 967100516 974327135 236300119 820083881 555582838 836386630 196875871 601658269 173694336 549593219 26636133 640685694 177618630 863743471 891655692 896767113 390229460 457938095 855579108 891693780 983163367 985220248 315370708 452186629 366109301 452144660 162368334 872072399 66828026 709288295 216802390 808219313 466499663 988159768 58924499 212625494 958757316 980109587 265585402 446652018 779091592 851200454 112632683 813388743 206607483 492107840 418078771 808690437 204252623 428509009 649935738 918471789 159157145 687560417 944146490 973884240 648042139 868678923 607392159 787289063 943094780 976238268 853459113 998491797 543264513 592255897 348495450 686493428 29737435 795793704 629811856 862763922 795655513 851282543 27855647 694730963 202702851 569429751 659070535 918055618 423110941 663050270 789502426 854391740 512489750 705533556 942069160 956967418 606990627 969749110 512378911 719569251 814145529 997596326 954473206 976008102 621344421 912937339 251224038 637417444 747491572 915957746 552823881 810692638 813879136 950198333 476257119 918810767 170371401 901653009 7928916 61116270 681729428 875822789 595625723 875897313 900853105 939509443 896474980 903717279 16152055 413327601 604383230 828774275 591445836 972763758 688493138 810442996 71926182 863040009 590175857 966180772 920662222 983084235 421518802 688268427 965688032 993259096 517951916 564532749 767697852 769086758 175843727 472901909 108346992 799481757 86964419 695735363 348348009 801374864 752499170 885330014 565114077 884414246 114000277 781558126 815247649 865029724 47664092 760175507 498268042 652435757 95757670 242382496 959650322 994916883 686924542 857369487 534618369 825492241 9058123 811609315 460896898 526459875 555926661 975137078 935213525 951623046 280628998 953009385 264276202 340889474 912785511 914190260 882852731 962746182 52084855 941394797 271922836 795223148 814007208 842280088 825734940 934382404 826132810 964674632 557464594 808587016 621554676 712409233 589940267 951832440 155778416 658546919 536591934 592099116 95982665 734443578 23474328 990047995 762821089 813155993 280904124 771811833 458036157 510770565 755017043 826914066 669575267 683552691 643037367 819504591 236053666 319600269 271737543 638246452 875992183 968514473 640481953 919263274 650358186 998138385 964330776 967846195 19015456 279833752 157791283 872994298 504932541 599361380 659649995 695633039 998060758 998584363 215107362 543112289 353690803 470307938 270910613 361850565 303982128 577921327 820312240 877823772 785414647 976710651 551112617 694675143 824768732 871627491 545312739 627058468 746030899 835216787 116145113 788215152 729771417 787367166 894814666 915555202 580938366 897803619 6415269 574241954 524732499 943590569 321818683 912177213 466364266 787889213 761911317 808227145 107541558 912448266 727056076 857462099 199767851 216978226 237209621 644866388 258107428 714362681 572720094 977996486 335569031 724942163 915934494 959380097 734688382 866174399 364428736 900428786 875311273 909347734 192982560 213519021 827906855 919167037 481539235 748752677 202980648 357991181 517841333 804683401 241441371 983317495 548198207 857121343 893755863 898296541 925805002 946457035 483221048 747750215 745297074 857524478 56872510 837249558 446269715 686523103 793124388 983466197 757846341 825472972 644131179 896019088 291135745 647708752 614810534 710176996 474921365 677181621 46900253 516558994 159575927 533260998 863761761 918284806 813541052 860147915 733811674 959002116 222985282 580722150 246764808 772518366 936338221 958319148 851451945 903093492 687874615 726158136 749402348 822499229 126647790 719258625 987328291 992898354 441099163 815648396 749702281 862522839 1411692 568137895 575643764 876707570 158317170 908856681 503491704 505505111 155563621 738276175 181580379 816174952 83400383 485394746 425225849 543928365 232301756 467375668 858499333 944494183 598052144 986171456 472319327 808516324 795864434 972537054 593282744 678410832 542544221 967006211 83429997 383039650 428993469 656985245 699820727 764787941 688471145 955031453 850236264 951708626 51054601 72522323 119815573 975403289 216457883 232364221 287217171 900982319 737217376 984043713 973126753 993611777 684274195 835642527 846434466 905115396 770825439 956670417 818075187 907407041 933833799 938741011 191409798 557330138 521886297 830569121 275968697 981023709 459489243 928604347 87533057 282795691 703761456 885623230 890798644 951940925 887821569 974088796 896266377 933599925 512668950 793963578 315054575 961187701 981425769 986463347 997353062 997660186 587294251 591993764 527387504 549132156 722293904 936795035 88132823 259546068 345535836 743395110 89751232 784721250 755210675 976875668 825484946 873600291 738649620 744824592 466756007 972188545 151789748 300411255 804564339 891410141 620342494 893818678 870205869 976859597 428879263 651049760 22834161 689894333 425654315 826054765 991467283 997970308 959408495 998000336 501752483 598387898 864488676 936081481 690181054 917397094 438331875 923654935 248991196 845826524 65342627 425551179 979828317 980185018 399645622 432313630 18166977 175941749 105303886 760360299 395974112 748915364 203702749 364451672 778644668 952380280 821472632 903314427 57574254 300679215 384684676 923803326 305367261 675806992 913676034 925101557 18493810 894521949 95836004 205965524 855724338 961878545 477005909 895971230 116422026 384669357 622559314 830307699 47747130 87619281 722303669 838985893 514546950 526069920 767798205 992131438 942802021 973778657 838673580 951269387 823595300 892182452 762118462 978577103 685745807 822524721 374728943 899461254 952863672 966354079 980060406 998707540 185762323 419442888 839895071 875563314 793715507 863875847 565435298 970966894 680090027 904401289 221275018 887168051 413514933 553087151 799297095 970105800 68444208 160706507 705115098 749276907 309234384 864238636 517566172 570276823 535046249 574708391 186639291 527440208 927850000 940989402 582892439 936040981 302999268 642812556 428538946 718730232 642723394 973393477 415946176 583432246 421024291 916043885 490952485 994406235 232650584 995487316 864596619 978946942 679751399 993254611 991881866 998454176 305663658 895973524 406619575 777245408 267124307 784065192 340032169 498289577 503308141 534968332 199227089 555013607 229943222 476617928 355234045 498355558 573663798 925263138 207426563 319729929 24218480 626348934 170133984 254427761 768041532 803885346 183113069 625196574 474815755 710256917 842210022 990863544 570401650 611926914 580714741 955712263 899073147 964006060 529014245 690257640 687682873 826068865 206247902 323565299 38438790 695823366 243278356 243720786 505505209 752567976 105850421 909268731 978324121 998632994 596449444 610345615 641433735 893757920 24072714 796318375 705828948 726784727 541141932 658889578 246422269 506146656 252703007 889621637 603507713 972580888 669904571 997243757 296594752 451266493 680533292 848497450 71999259 925853191 459785850 888160970 78026040 920616029 291602126 990132956 987800247 992334554 49627116 681004490 851477102 853011496 698925285 929719062 756487458 889059189 231330678 787047612 34829924 338674038 972965969 991031847 83556606 476922012 617921722 805128765 86497213 461756229 294855770 457613146 347629928 823329042 178987392 964641209 690397095 838852958 206505454 425397894 88171184 288801860 945879842 972183413 575161225 729431184 892183383 994774590 988249953 995102680 626832735 754151356 297900973 488487355 998231449 998256323 282775582 466906309 416466694 547269061 686136767 946655472 832118703 964191938 692677214 974286082 593048118 813754280 117675480 791219436 178089036 926545322 307485090 890424240 385761202 482021072 693811462 770287833 200746638 997267976 463920409 577154378 500299059 593530943 542334045 807430445 725929189 857143598 31315067 272824050 898244101 917349034 16713958 843746062 450139538 837992903 931167734 982678870 418525090 450699592 963036499 967568327 245904060 609983363 704638924 945686225 431459612 671639395 769060360 838256814 432558761 971778494 506992903 602181314 933943317 952647973 598028442 865644268 239425619 431842612 647518276 745437675 996575031 999877411 718880349 996898034 490156710 713735569 107770978 878536280 691724991 802073432 146314555 403445610 512173189 563820981 790472042 949443653 206951907 569773199 979457689 981741174 140771179 843256403 936919385 969538860 812808266 898043251 12141045 247801800 908168922 962199390 592309036 918942510 69676814 176846465 18716034 599311961 19089428 852663601 893306922 931325807 740561739 919196642 717765067 905824208 679687481 894954173 883294822 992261176 690929844 701643130 117716501 727176630 159774990 250177784 48588397 535319790 937921367 957264163 104348479 405352937 352543826 586231886 328422201 338408541 8571383 376903426 927905357 939662290 613771147 728832373 1736750 389004929 846782932 896337330 942864851 977260092 668955691 819367589 395508283 720243019 284619469 669476311 13581908 277636311 637415567 874782432 773617029 922917338 543332224 560854841 929854258 985178912 61753926 313180137 366592087 572316830 535397286 579727901 769075833 855210636 260661197 683995480 661968356 748928233 786368707 916968021 356706512 728455538 754226097 758070443 807299781 836475143 3198828 322038037 723176012 860844716 298596340 529935553 7966439 627205403 429525891 606068745 508140985 700690747 914787137 928825226 888676478 960650931 206522171 608797455 115683521 177174459 593645386 615035620 143938329 229677784 450053794 920242211 707292414 732593526 667011143 761205463 300032665 456044006 113467626 697986276 59531131 561150326 843580531 950586262 428125814 511568890 352854121 689327286 434510840 731114627 491859265 957861558 999974886 999995910 849611190 964821803 831779033 875704159 432704528 675904113 158250417 571591128 93036792 979847734 585419194 837656312 961267445 998969602 625504636 697940583 807229198 870043374 277418952 538817441 874571531 942855030 860007071 948680142 773836790 793240914 784214730 896296564 724001228 857946829 256814294 987696679 971758694 979652979 450475204 909993281 898260000 918934464 286848499 733148091 177309216 646566077 531262096 591262921 672885338 884268224 824478458 833649651 685411191 985443100 711529713 798003565 573478705 989996339 869521991 936706018 853127954 858171151 890876098 931181551 675420014 901982222 655424844 746875351 291668075 488897969 925776565 926268780 862418360 867834175 180254100 894012139 540682837 799883240 829632272 990126337 914042802 948781838 956134267 973290641 849895953 857952085 851564272 890278625 647647195 830349879 147959304 695349213 640499336 851826885 157787027 455287285 614322542 733473279 340206257 542008945 132994204 643131888 599230872 942612885 790958802 915853431 390011585 751628269 60019185 816714517 909410419 971559489 936795508 997137903 567955767 597615583 590453914 801460197 20787870 599446145 506406075 574463068 258245569 548176335 310345936 956010519 929504565 978025174 684182311 832306975 17685393 369163148 980656995 995297325 444742639 617539580 380103898 970647675 629005771 868820645 648906284 832993405 564567831 792866184 385454279 498884888 456219557 635063175 850715717 857543827 797226389 975691138 964947300 990005861 446819814 684164103 233789688 891054881 928415293 937385926 963481379 972410440 676234879 692086444 222337275 425771949 176184106 341403228 250066842 937554291 368647460 701364605 523618735 975225631 439107747 484908885 737780708 794887902 773081756 990085036 581932953 704558349 259053331 891399450 897045720 905904000 795896664 823098356 971087914 994988352 449315661 474849296 853318815 883378127 207087720 636525091 33071623 229608157 926638748 941319420 509371074 942366132 947121176 988386932 445719567 729152428 931617676 937231229 998536824 999538768 825383538 855610341 396241154 414286902 596809267 726127779 324691161 604435668 952952048 965760452 839437684 936340080 82321693 750868164 353347289 435836862 527071234 600101817 871671538 936637587 415637381 647969235 118906864 353450360 33133114 836107482 279013268 969303320 307811037 575210202 816636580 878610961 73761152 701198453 651632615 958654088 174454001 882214838 649949237 762687156 648673640 787090369 719001936 933177773 71056648 752960855 810106734 990074178 860135749 864873916 784621197 821226454 531803288 992536091 36985401 517887187 964692126 991442635 297012641 384397473 667459941 943871961 341463462 785744312 141044927 790756189 156833846 317339774 764531491 973629747 46742997 759949491 185626422 741666658 850634942 911881786 163649713 827166909 934387116 981980256 131637007 779000842 381973972 900210240 441277661 796931536 931688546 945314401 614244976 771959557 458109413 637448552 123097761 934076232 586984638 605845739 799173963 992014979 543633104 651815847 295902330 536577200 747032442 975127214 430125981 494976895 193156415 346634471 879664788 984542309 163116169 766541792 180656814 389206379 803090203 818326306 621689608 776036860 498998985 499225123 205313616 920224371 660586145 999499726 798166006 912653858 946978927 953847474 751513451 788305205 321891288 659340804 535816516 561514576 12473067 775994633 473204153 848441767 895597809 910575209 971509737 972911515 317541425 925274202 258765326 707122938 736565556 930476860 837799794 888579607 911771642 981911739 805895614 946187594 778392039 936331052 542204837 987942771 340123098 580970791 644125134 975922173 879734150 999233860 22790438 461417103 464226096 877221688 170105064 352935881 204447626 226607365 611522287 846010687 121986747 906367347 140986688 275104144 269071058 633566348 886204481 996867881 484324168 712202607 877259083 996699119 407258305 523802039 678888235 797316414 185017378 957127735 864038175 868843599 780114446 893213128 315142941 556426519 829374813 845664475 337208226 432192713 163984766 419358694 179588026 673907939 785561858 861535508 481387521 998839930 364372919 784053008 817356213 956785087 631036031 716342163 515469317 799246758 768270290 930508441 177520351 959210167 709947299 711002593 949783898 994779742 758469974 772851653 2797581 191339957 506712996 543541025 130579373 839871319 473597708 541788201 308898876 373196001 532657702 614250672 981412097 998144898 215700832 658529253 912872802 920677977 744416753 886827990 545467529 897731439 1141291 806660510 968129743 972440172 99824178 331645129 126824124 758695194 858043565 930984701 192658389 407325077 634533098 902734278 66181286 362638278 693005245 882932773 599790363 619540032 842718623 879132282 696721996 894007584 650480148 656215895 791419305 872388972 518227983 602691983 374019983 595333700 650405288 728838169 512608407 796764991 905764545 963554781 522032685 808321116 747895883 932829512 312730516 393879452 305308141 819294830 905092008 972167274 971111723 974680967 641867328 738945977 216793853 589045387 118557417 533392208 883603103 967810928 557640159 591756802 232195820 459316350 132637210 528204779 440979452 941607262 732172585 738481247 656432618 691508319 253755571 407676808 969934749 993686534 378964185 936847016 717258357 917155804 482032449 548040811 907800668 990957011 832173364 913893681 524454570 851899820 143063551 761284753 764688031 818260980 366771749 969325702 249071349 333399559 879844814 880065295 989725815 994751901 610021342 993655914 565203889 866972345 444366935 808933424 748607947 779179671 351580362 472399186 783727636 877263306 846927167 917125302 214437215 443362858 113005480 118355069 353233472 481987829 719480664 829412413 145440063 204754977 668170890 949732467 292991752 932217339 932281267 994089528 388246350 448676611 153784051 679684623 962859894 970384638 772599441 923590991 80313874 387825194 110469728 573574335 837403498 966939962 404055605 715548447 505309252 902178751 144722967 390566175 503058328 687583233 530522609 956979629 900150737 900951925 377351176 783085747 376580466 641261930 833346144 988978288 779187243 907704961 778699902 819396765 927855287 942262206 118696262 297892678 256412863 483207814 391359959 751055717 335268632 362256190 638339225 686157334 878418290 975023198 292213299 330035449 766574245 869646221 278343156 329460598 709571120 883203707 144787652 146608345 28557370 975963316 950955186 970630320 846812752 976383956 581187848 596009819 813016611 946305771 39313849 828067170 454605131 508349034 142409715 174931599 118220839 954669539 596855213 824462371 752850075 838479345 475183783 940055868 703503748 708677115 218047292 793290969 517303263 840407648 155117882 681455832 305504929 514503334 811202644 874496273 649819081 813396846 604169361 796824429 283057273 883019836 364907888 657343117 772652896 924145585 492899246 784068754 514374947 908362591 463254949 583902307 858111089 902260454 637690257 927011484 251395724 691494257 826187872 982639712 139975288 377667884 645226927 804046884 682055920 895655026 796585335 837683424 598011906 933037194 136031849 658224125 931553123 932944132 465802426 788388075 80593556 728754969 212170552 478846930 989136192 994433691 479161964 873510420 674983408 913903551 866293402 905989472 650651229 693780964 262670796 593654037 692689201 792086976 950391796 956451338 495340022 716086582 245122089 277523620 704172072 893744447 289470164 670381309 137285547 230676640 483337502 822813047 756717762 782176126 485870696 923784634 987069440 994758700 808351993 844278748 493620050 541468169 352708345 414567491 882007439 895233710 209413397 324646120 599046230 828643649 670233621 833636316 655540232 686026942 462491441 911716178 475356307 535979940 468138925 570679126 889200581 956514855 260941731 413072992 282756423 886740852 716691997 719678110 883970676 969329968 327242917 585776319 841751756 905473242 148480845 684769362 366860455 383751166 27243921 613832626 965852944 982513625 219513852 280862680 328019215 745777769 72866498 877618832 433262762 621014214 860451900 889110158 338375938 667012531 994302977 995521989 139039134 529818774 187752254 731869524 707500688 758799210 430674289 443133343 19845276 252518658 34180396 215881982 407470419 980351921 784263953 928031704 671285664 899619816 729551168 881259673 25531168 107214942 854479497 870323857 768831007 830058732 454683414 867059181 716915082 833486808 854863992 904459806 890192656 933539649 610309931 638105384 185396399 243026288 756582859 969652554 385778587 746043195 145940510 636828913 624572145 626105734 265595580 984613866 801824602 851285933 205304757 674952374 575229130 976179565 296827744 888602418 635390022 818708890 933295399 934253164 402350361 504434478 413704284 727720786 193747068 288296926 241364488 556503556 285692538 982315128 275745471 854127488 819187784 853309860 356205171 596495511 614185638 729811026 22143599 320115516 281526448 915737672 628245137 760973686 100329679 790445286 565772173 629801310 953302519 980436206 294493339 746613647 851718387 965061329 897757825 922115146 553309420 971702289 668228921 708068871 430972210 911517127 789742287 929081305 589286452 725588218 968789825 997886967 691044057 842203100 937727276 994347569 509768760 612070683 950264236 999721231 115821805 334769395 409213219 805652168 598897622 851268112 975577048 976587558 12614538 469200684 265343242 344388926 95117532 95369276 535432568 693823257 823007999 994810396 291936511 615058948 458942886 663807722 805690380 999910489 967162127 975946293 641993656 766385800 319647029 815091743 61776150 516301386 690662838 700314134 139852477 943170637 384609075 400893431 484327619 627996171 15272357 805255897 424663363 888262870 405551982 973891859 85125940 689217769 791602834 935079489 155497220 219705312 661903323 723875683 556518361 722826966 744152531 774876900 90665332 572352192 264741176 701857020 489183865 856632210 131158615 318796486 673531879 750634894 41463873 637722317 909010680 952539110 638095199 870677273 792134687 881363119 55686421 894152955 589006858 675423798 583335062 951898966 977024365 988843544 387597942 764591774 703844955 999264262 219550350 822084199 160697072 289293914 244457171 422856632 262659819 982448525 876997071 980067605 33424735 653676693 198227871 339393142 484199174 981734721 633671055 964867775 941401468 941901151 421208447 626779413 689980234 880074080 181376460 331682437 940123085 971209402 365758478 563273363 950648271 999232609 395862107 851840289 459550284 705055007 112298023 187416412 729022109 949485403 139689510 483731373 927042896 961477349 560318112 626782132 722179651 766603869 891740628 959340654 876647917 975877222 273362450 602752625 746511399 870853544 62246314 341766858 921031365 990224108 811099577 995415743 993567403 999525867 933285019 958725869 874028655 941422695 796143163 821591001 433480531 477921715 972483801 982732113 688952266 759315792 734367933 953449876 992630634 993441370 187163986 723507926 844003229 869747573 296422156 997644156 912682202 922623457 303362154 374766754 60910234 660076685 708262170 873757135 560884306 925311411 12574132 269619231 374154904 672676902 436638984 868320967 875881372 983177472 489719438 842646362 357628844 452559096 883927281 888026140 863026707 897605243 299733195 455607662 225442257 917806204 761806 16856952 498136115 947247220 968204294 986822317 595711919 821307309 398277031 853277696 67884941 715709422 630190709 966860800 648250968 991832087 498314369 513836366 799506809 808780204 667318073 690686210 7112481 191676546 806224368 951293440 488457554 956904401 499326247 759838349 638819020 945686866 47900331 802362098 125851345 418012453 582965896 954123686 163923251 726891723 675635957 973052725 896114708 947023259 321130883 556243145 112989223 703052206 96761489 624088808 594436369 620660434 923334352 969024629 771441906 842067422 833707034 902911386 785807715 907480352 360904846 652217244 954684198 955746723 735546510 879539682 825925984 965875708 748311585 885695974 508812353 513978317 263006772 715949649 250780351 593114504 198509496 731605370 875260585 982187662 264546908 585883561 380403129 592504410 596066125 841497783 395907851 495346240 28740314 70815608 475348863 737387515 26907741 420819429 616490457 973449087 287172400 538482728 2973957 462168519 631831478 986742077 825583024 935942501 952752565 963189543 873248757 988560128 390893736 623642478 418467905 659387260 577666657 592548814 152467797 849783686 862300317 898518456 580695336 993227465 862592735 959605829 434900584 524574734 221884012 791140323 906201121 973659976 285257383 875383739 782723222 935974904 850126566 985860794 514448587 863334914 982645480 999204789 63659396 681285772 352672706 863755831 269611611 787043464 215997366 362224185 945760855 990242042 435782908 959814052 600828521 970227523 996715005 998876485 253307062 274593819 227401916 603853078 26402277 367307966 113965179 125944754 603502996 633385275 469993366 835813680 724373132 815911137 698172235 704370432 559239512 967469792 718960091 932346172 376682223 790887791 676642653 816654052 394813581 836147512 375709942 918323074 399810392 590275221 649127995 784282430 99304791 144324919 797034657 987747163 454333164 680567812 91788474 364758788 432372015 545562772 631507934 783805065 779905022 818748831 157637582 565468468 10024722 385393053 402609209 878517622 950749551 969638523 865118467 877209568 24984441 56325478 399410147 848460377 7483188 614869484 123951815 413249141 947862448 950805818 149877884 320870932 584001079 762915204 973212973 984042452 960885235 996177138 103563484 511462320 332921993 583867019 141931680 794544052 404236944 632297731 960349173 995153885 872012933 900287763 675158865 766145708 210736307 238483290 115896119 198103498 797954454 999595954 353371158 664544364 453671306 572936705 877103371 992662174 34067523 564775306 595980233 835252531 612300144 711428223 274698220 839227337 290600488 619277952 287709879 606916921 595482527 632726085 52766856 683648151 953238092 998274886 837543764 942743814 468851108 564203139 349207571 953490796 348710390 964097868 600244256 619769674 662148105 752602876 911608582 911645576 743778056 782965448 197870240 393346806 918135334 934609106 348441409 440211737 841360614 976281547 602705992 682798557 139418745 348801615 881821862 975953021 726950909 801518191 478147344 978808455 362818974 802605421 616161772 634420130 384699189 794130727 394040439 470572516 714490549 787660239 461308320 759905096 246145158 681005049 466467485 632618631 666029599 993036538 319970766 727820703 77578902 574194282 6531577 615776375 455991510 986110839 860614956 988277625 270821848 805860640 925901036 997833154 719685746 786014985 358092766 605921891 415008799 834474321 384227738 433584449 996020131 998450085 515440554 675598850 784604227 872103904 836312788 953023299 783977535 983799557 787415905 930170196 549923811 728802642 311909192 737736734 728110484 764626677 543231718 551503877 474302016 915013216 56864824 955994353 205891424 615790174 169674483 397176657 425610933 919760891 541752556 789346886 41915288 809732944 641051329 753614608 22859853 255564226 716648998 782310383 39319316 764980178 277777079 888640622 35810114 373995158 754723031 947051314 926037434 996908992 338596100 980072135 774905549 923080670 618211819 700641100 410433210 967228632 165235280 451335115 542062385 705470200 879117504 954534548 67544711 731407055 351583953 691696283 771048469 860228900 561294172 796564321 829251450 829502043 532730050 766059324 887214275 932560686 971079168 977942159 710658089 812710066 929314425 941962178 659338460 886593122 208164275 823851030 889188787 904521304 268591598 608088714 813504666 955646081 760103012 897683371 845835492 911554171 947581073 969331203 917836064 923430070 61253289 877598251 767655682 851253231 15132244 703044151 544877900 700000226 314972286 982606032 279716010 846718371 931319366 948799399 414542014 519043821 78349014 988747619 181406634 708525859 982140224 983274464 92921407 579685515 572534492 891072266 837573018 941354643 855810534 910767954 703654672 797011975 207884851 306021156 935666957 944046283 740725039 792308105 548303609 814530501 878837698 971148425 138668588 291214123 938799290 982958061 854937471 919441746 164176718 704898138 170366030 939476821 235332862 870188590 439686397 974288039 18220299 133071753 156273550 648519711 123104140 219373955 79832227 798061283 134746336 450662276 521342790 690812663 79112559 758278492 682950479 762316351 714209065 919749170 904812090 906580083 886139462 892233604 751398621 955420227 245718653 563630423 84674395 919990590 266936780 549787656 250866081 283890523 322174072 951037614 589733782 818312763 479753356 732470332 282289148 345805791 820988388 924383621 89943853 609574285 17376981 759444299 637270809 906783354 643677046 971955373 225696117 766211449 608326990 967425454 932809422 948297488 637248528 974871300 983371360 996268914 590681365 893692955 674673434 792397598 872200536 915055364 699359319 890864491 221788349 527652542 653461431 893149235 897906813 903432324 689485199 995435196 564792669 785210367 768068939 897068831 89615018 921804089 231454532 678513927 537004004 849125027 467775404 496505028 469978528 670462788 585224356 815303900 890693597 896404866 802390007 930590784 906476934 967028695 422157473 688780289 894919516 966186795 668275011 941053479 747227446 922147139 380877667 622633007 887139609 956568929 806007812 885960611 102577991 490343170 386095490 489696433 122955507 815101574 61881561 825390307 131305914 411812458 462027729 727135855 628833302 991738531 182657691 797474981 934341597 980105684 467185533 614947070 631208121 700560152 33910590 537184686 243549045 880487266 288080483 683744393 811734518 993422344 530496439 537578693 912787399 983898046 319569135 504372810 539097767 854295648 737615483 787188985 457431887 804609494 702233401 844954358 310572572 714611062 952003508 966757106 480733520 703630266 918642347 921285428 356180872 939450587 530679042 887043837 591806329 738787406 502418805 906785362 374467059 540179240 605865583 979671459 128665776 728097540 46540229 539170145 51083361 289500168 416801624 754524874 885340034 898677046 710764729 863602802 509690390 944998040 708858668 931734754 381981689 771582719 951374202 987732636 459315703 667333243 675085777 921946967 964557041 982132521 534159310 754879173 768474268 873241542 898067568 970871502 2310114 198602977 154650214 197461760 712325195 949591660 476049086 881245206 866729817 974588895 643209287 748942154 600073554 748969662 709688790 979716115 984937143 990432654 941563835 978993317 66717522 949216609 68214992 121616763 746468352 950598327 824895111 894641880 22197219 254279475 46392655 555507362 47469843 663758790 225004961 911284029 242174944 271593548 910057676 933147493 71443218 855955480 735397559 889818359 181729231 228979065 519469568 555515005 32452343 210277566 361722036 528484462 945663806 969267499 446445646 853326741 5629968 994279239 150209275 450529801 966280332 998683949 17212668 551696508 425626977 508730388 307176001 999734889 996485390 998483759 652480046 743064503 161453563 340798370 780375128 854158934 833903201 994037137 410540310 793965407 278913969 631742090 25229608 380897594 4409578 762933712 154582000 788268061 199034383 413924776 789666978 982765423 514118960 729333213 308651934 651176813 43090899 356122461 637427370 708354468 264453097 823020762 918008350 951411815 649465320 917796516 682221106 752093159 961300091 978805809 933822499 995785089 397017509 638218128 537454973 587533578 575672574 809140917 923158116 964553816 184133090 733582902 568518581 850758555 689549182 771630262 781580649 849937827 50611328 339975982 393296858 847739424 941255795 948279903 949390949 965662101 357132141 719709210 882136440 989442010 605682280 840967735 482721598 911569309 967523440 998128202 588387917 876973746 777044681 817673033 71480296 965556012 998098727 999916706 133366693 185372437 346490178 763029311 653169815 654013797 936372491 955661321 416848777 948625631 706535882 709536448 891779016 999161221 300491834 502600302 702704317 791456179 878635526 978122453 700958048 852855050 230695994 335819638 263660389 356976799 94513687 544496698 125281683 732424091 604914356 832666449 184534023 571621463 227828485 583285813 120843158 372529919 900763991 905076912 65876416 842734367 934454552 970640697 590780337 837529918 353826543 786826133 387190843 846146162 798694209 936078627 758705483 850722533 505490896 642747241 315217594 899699659 694792747 866116774 895734301 966486375 828975145 895787539 388563753 774708732 50351148 854176452 894972047 942899749 884546749 945039226 746531586 781001370 77295641 777241054 425570499 827366419 600422045 922712130 475247361 580418519 123788151 796322128 307188537 372021239 921460159 988866067 926487755 972122415 408059202 778896430 944717378 985487735 168550219 827891369 55470175 197699561 182013545 843421321 574299418 994594395 446013177 717374163 239077261 953536483 239236241 426658181 341752097 930872386 377323459 970584261 277216720 952030221 637481396 986110993 164838474 176248799 152320707 268381023 126517937 732515521 543705472 604050434 158180263 264124054 238147214 836955533 857376555 981699021 802812071 952727132 88954616 371256642 34959242 903102212 808129942 950191936 135368926 866946735 994103255 994702378 507029633 600597961 854374330 935552928 706830849 720134069 725687555 957678449 126145792 745408856 225713017 448118368 910847215 968285093 541037822 541106139 490740335 914137164 799587097 913568817 584227193 605285617 344467017 687090420 606681813 630899274 376627099 609491551 163126444 341042440 959917310 997631701 189608948 695333396 866683115 919461110 319643728 450139336 718473028 810077838 185014826 682479493 419917765 505822647 732993875 832660591 641395994 909304400 78709828 128795443 477092623 551735874 661002495 888655758 14338053 326542233 656598380 856369626 788979783 914758328 163784970 444926016 620726732 800626788 126908478 874793069 543069697 660127935 938953517 977887768 279425331 420543469 436252341 930553888 473312770 608046357 459545002 860994876 777245517 810092486 467123450 938652256 993315832 994054311 376486672 975930644 16892659 918093675 576172726 877137184 270673672 784326188 666915994 952580737 977569512 988083549 987531465 997039810 798742632 957773900 104074495 744986871 968904099 970026561 126268011 275778456 424704852 672025784 520488384 828522899 788551621 911850265 334786274 796280155 667622120 877105397 255067608 798049790 92752972 868022884 770996898 895168149 694696720 957096233 684780544 856452003 642096180 791662339 56807918 747210727 213763926 281321366 993527025 999642753 367725934 372761520 132815670 997550035 403048381 529817154 32158800 267679701 394332840 559442862 977053066 983934490 209138049 222452937 875392113 913767276 9512306 140099625 787715779 801652199 946449074 947726277 667004173 958044285 546545772 951402279 276076502 816117236 490679479 773791290 535250731 673610010 576005256 719244069 950087459 991798405 270370645 791934905 904596904 955965643 377850776 387288878 341152488 362672827 401271084 513819083 621865013 862137961 9004838 267648533 852237599 949150803 87300281 378871439 983027495 984378078 752215807 952424905 614493397 969886991 518819415 726661981 173933013 732552509 315832316 970528151 332637126 924099529 939574265 968925566 976680292 978032150 955434501 995265804 327891875 622088399 746617329 824408796 105434192 760887671 290017355 415862343 75663329 669711986 554315585 976812016 680069193 714312535 562032789 976769536 65592656 242967780 763594523 880028690 695064178 944025977 757741230 847038329 195324026 748476084 228028675 940572486 385024801 927488923 979769077 997186868 608721974 912383360 659316735 958640677 697122662 749354284 753649273 770400184 562813468 696866134 293723102 637906062 818000763 856616195 504612223 978457564 914863355 984861502 760346435 790422562 797078529 916514070 18171867 687207529 405296520 762695866 758016020 856382800 738576603 849330111 456098763 857525052 556214335 763861643 29136222 133646957 644776327 764687090 282552588 846775666 947075170 964600246 481820424 917078493 894580842 924846385 163483373 443137911 474412409 638880486 52664252 690460255 602852178 814355225 275686191 819210218 398816593 409505842 22234134 884055111 962676910 979019083 39188065 306286517 44371542 236027482 944192313 949480918 152052275 374991908 946744996 947975815 508992954 877647112 572731428 829578377 23583747 492343594 491612488 814010477 406411885 992946094 522868380 530684056 815221016 973639048 627417831 789622263 210388870 232760101 180163507 731313484 782883606 902519172 666699089 985819352 150858230 617281553 122290384 263721676 411695871 980872995 697148111 892504040 382383645 922135709 14416587 663526684 610732742 718914227 603223054 667362742 493439564 562954945 632954145 782196419 579897665 651084430 603917706 832532422 192508499 832860404 744682207 859709148 478847631 963702798 652900441 753398635 189910292 738363238 69670607 810161379 111323556 164827252 478359479 633503615 786641694 990071618 598815996 697336035 793589197 990937031 453345259 457790115 441314468 692167316 330914206 547874967 676034827 942474991 357613806 764641443 897219676 973091293 417221752 813881344 355180524 576884670 749538514 911354276 264129111 644101596 250418651 466881781 514803303 776151081 698446954 799258362 684496542 883930763 59170893 404604315 479623498 986336209 520490610 719938651 278149199 683080304 571650964 865246177 829275203 922075715 970121347 979420282 80840974 328474652 495773320 834432158 918948045 995498409 736887702 763042741 670439773 682933769 164135833 871776849 807438599 884018076 503667909 564588908 605356459 993176821 102379603 828129927 828540755 903621731 940020198 949792950 863507334 988540165 201937682 715074839 47674929 376655299 126648206 263605566 572697529 643368207 308052622 827596064 964765054 988540705 811207156 916394554 571434677 976356013 377744609 710820337 451523364 675460229 935467924 983558448 485449657 732062769 901310768 912929884 873094616 931816995 913512380 931702350 411739455 789963652 441267560 645832700 879681105 962566513 24152728 607719148 277669355 555742863 249859764 816267045 242586709 958250247 104926352 922315046 58920209 469181417 450032390 580047946 46463577 221833171 906515737 965739246 140128907 960727091 407492035 873275222 645375391 808556856 699724567 801136000 170092281 704036641 963356334 990617349 990416246 993724052 914782934 980772259 148054089 622801137 320871870 909022927 57849339 915436917 876559502 964753924 110728203 298074818 815020047 994390064 889426516 923873197 134706097 792856175 307912136 601815851 295630841 682590972 50082971 63326762 638971007 861275448 503451106 641131835 283573096 885540216 987767424 991248065 839073134 908591034 575078189 983723317 630513385 682017509 625097117 756129924 572859918 581932726 976212379 976890413 208808823 255598108 835094353 863482706 360591968 433758779 659914349 906317767 506558012 559154326 290207754 845015990 589211985 700371790 294834380 458979936 584727512 679326081 425975520 610939044 427220509 811551909 880539756 886739685 32082732 442692750 74664365 405018195 118130715 908055083 234203433 879262441 899603588 943477229 413725789 821878719 822114450 851154038 432642555 570698014 793132295 832158178 107632136 373695043 607603257 940070248 40530231 447730220 27047754 326213665 333114184 685611994 280904858 952901486 360837181 416016020 487117210 814544046 675801238 703508110 907581972 942285173 548413323 801803008 655518973 703125453 631797759 653861687 895755646 978347523 68387151 429132829 485235596 820989141 904396582 977613249 122076915 495584110 457180638 545795242 165509370 461794376 244857648 250402379 650444248 731212634 965141614 989221859 32256595 45510737 793128576 911319560 16704513 281438053 548761825 601628684 652156273 850452835 327678224 993173796 109780690 686084061 626001648 647106975 514901863 836833668 608500140 792165235 313220377 693722358 289920428 525897720 426203059 969235277 436696956 561825441 696997909 950711610 64330140 286462658 247783702 296193034 126651685 612209388 416817162 637796369 108918510 200487057 69815082 802828649 370877638 796752337 472633787 701818111 866748655 894537154 211980004 975365061 100621616 646102802 282776692 613564996 516912103 604648369 586344359 711993415 810541984 999839325 185009302 292228230 585454069 921470703 459754485 491160662 613473967 780798877 484099578 727408512 969929345 982956196 817200895 835083523 780976923 856663399 889197136 949077563 716836637 995801796 66633163 196364885 425096532 588486364 646514496 684708912 509156979 805488120 874712462 999135654 114975903 543948773 849502550 899666722 325486660 876273748 940136825 983453376 926297474 953586037 436826582 505464199 544177114 798777060 850159775 939770745 588938327 752356484 788692735 921936232 780858103 782878513 168947763 368099274 692370705 724185326 902112486 982460533 197047331 466015943 310976309 614166562 582173270 966954695 153677706 776606587 317721726 592750692 291944177 866682955 915267484 930601827 500468399 717231637 326393666 569366628 255822851 880012076 91922596 165988152 193895242 591132206 395720776 612280802 485907423 904543014 469219967 729508696 541246024 863713993 21711220 526164071 686979977 895936769 324252399 775427695 390626524 883927973 77520385 321881362 841917039 880086856 390961071 654827464 462307288 479640296 294756149 890670294 136375961 952756496 1218906 600512382 536252032 757786368 113754343 875495980 703213825 754919934 17868612 328456685 182559419 720147919 570728489 957466176 655944916 926547494 442007604 492971478 729472572 787791573 749949714 890717735 352128602 497450315 172174028 193432462 356424533 945455187 249962305 544992787 161537155 779825608 688879305 915090037 729208576 828605057 991066389 997189013 113691119 671825389 473109699 717155586 810552662 960058808 256409748 334260737 578129741 744458743 162879530 423168840 514391722 531264469 16172047 580706855 537274414 944694175 36034870 106494789 238581970 256772139 781901842 992902573 553451924 572066064 149832115 859292261 332251021 783429319 384194307 585154246 405763210 932018949 990563538 994405408 311623920 838840696 837821999 876704371 786631030 829238283 110595555 443192649 720564879 822285720 772541487 872998594 525056735 873080971 872474567 978921606 551786857 661796067 821857908 934722736 507197491 597812144 416590490 644545472 904766175 950809829 695755543 713438387 181326945 607315870 552864774 561974485 725836850 742026970 24914991 732005057 538293928 783162726 943799673 950723027 986240081 991195591 181963746 768291747 647466841 785077412 760557835 789863899 739992602 955923321 871459918 958158468 450917171 717445332 147382052 321553219 823964118 950217544 860613404 986452662 787037324 902316488 527201264 964860656 679405871 923453808 315889985 765103241 515526165 732704618 204372184 243108238 357765863 728988464 102511974 437952418 140481014 722780024 634154322 740142356 464806471 650737560 238535521 589400130 264931443 871965887 422209015 744109471 172616095 594230305 911640901 963662127 2470387 881061412 775413349 899259972 214066935 232989320 820353989 922099848 723241693 951876399 83850713 310836627 928962756 948703400 883956513 906039283 370809087 897028055 359050085 694184936 526854081 550766471 354665979 984103506 162689360 399875197 279354450 353370293 894108463 993687223 303276254 396308109 540110418 602408285 917416449 981730442 76626333 893112543 963990195 982917882 838772334 844525051 144157779 860808522 921302103 969312857 465663476 845338228 942745780 979952707 855625808 972778563 152272371 884174632 898949073 908203399 407766610 809062843 151964169 751436044 706290233 723576672 514055763 878152599 753735396 812096517 627972778 741104648 814505816 989205416 735610905 888153618 986579923 990724039 570444229 875215657 999978823 999982082 638183705 925212209 317881124 490011518 350286714 701114968 81997926 668960624 834685390 973984652 82098943 624067652 43385932 304104484 317664942 876315537 736727807 829798388 837009359 919406347 116557045 169537633 493122791 730276682 821707458 838669273 454115209 617415086 752486142 872155117 801436646 926626491 299205192 573108178 279095176 847367381 830571523 831501300 130941757 911428578 536995640 582863695 695765163 749613159 846328196 909245943 942346144 951604291 314492670 445042850 393037210 546442721 707939328 912910485 969510824 988909044 684563975 951366268 229251924 869527431 884129462 891006077 579927762 619180009 244909933 300500933 790607942 876131568 614880162 769465413 438851184 946817460 533661211 965079142 520317452 584439485 615158300 914402053 934478702 942382333 317824870 992518159 459808951 928628447 989167596 990384387 346372877 607102617 338149201 421619923 569133095 658997189 126856468 685878442 534191577 594764622 321770514 912300723 746733824 954327921 269297525 736227364 94697303 310741006 689982920 691346133 534782890 622955704 100998635 930312418 450776430 646925957 211641766 486439983 587532326 693708604 576510017 727677420 342011268 606789579 813723123 976045377 401581900 925046751 808951160 868027073 325853590 365514999 934866469 958102947 294722277 687469132 679722692 840990497 276493255 944143680 966332699 975700459 544401825 814369191 484804656 712892326 35151419 712552129 39825887 143593105 446753173 846934788 390901937 532574463 462888706 607259021 334408971 653709926 622821152 825244507 793243727 988728995 324780705 680061517 769383195 792515750 780880801 959702039 490483133 534133742 801082909 808407397 600565489 616175328 360396596 550194297 953483609 995706211 507063514 984336586 269866102 451589392 173961833 940568212 24846078 239139058 98015053 222162262 843772365 906467554 884154302 944450086 452814399 765285629 653159282 793474403 223274535 632386290 485521472 863005577 518696903 969181830 415988038 847822357 785511657 964319506 612492672 728718354 886126075 976424368 163877007 192260874 286165558 435571246 813466697 871033829 460001459 627305696 527644342 733254929 704139941 979233446 463691544 934341380 798380911 930401310 122470585 234058049 24265740 619070706 48088614 921823462 517878824 994868033 271003416 989384230 545817025 730735521 337390302 492017214 881464534 920927670 799404067 957805587 898502955 963815207 378099429 978635563 418546331 929257224 431771838 891965987 228869062 658243220 999121219 999265877 553797084 837765245 539716807 722727025 746193465 835382100 104187996 528110207 20086695 691709780 820161365 952329822 566909428 682189543 339287816 757181286 975340923 991738047 636973882 744462952 211338666 992135219 198354778 889047021 635543180 920479703 663372405 828823465 819034829 859105346 461588179 714525636 2019335 891692197 309835391 335019415 150474510 752924861 775846740 899980390 582149161 862461604 256389537 713712841 690786315 932734278 75858096 584205208 202963489 356088058 236147713 811862424 394282086 555827095 987592366 995384688 552166427 645760731 184091063 536969062 664368355 668387108 698377769 913856143 72869981 153559875 132768313 342317170 761796391 970769079 862532992 873223730 148772936 515186595 386537987 992267753 411202562 422265914 376146743 771854603 649110345 813249071 199859771 919731182 484061281 917036380 494428363 956003125 32562031 850701093 790386295 795932860 489313553 963999977 791048273 990826941 993732279 998454498 595631479 769501537 236045449 710980597 698410854 903375522 437207787 970526929 277451143 767650502 306974889 714736329 268480117 904223031 321693954 682412083 846135125 871074536 501444077 861387981 172401715 320568323 255563283 460206236 417185076 794096995 480241870 637291504 193181111 486179903 430499987 493071791 37442559 254029096 554635913 822760262 413918078 766526775 770302589 845963700 654885763 756095894 411556666 527584301 19334173 87005768 227283206 444228931 513535899 588034898 858069458 972387729 468155031 577649644 255056905 869589071 544953581 749285071 714835719 934769082 615801499 784754380 862943965 920567453 587722835 714325196 289934696 624691203 911623112 940456001 480485567 973549639 160377672 245159224 644664575 791423839 376198812 660282591 901227250 982484263 836064573 903884687 771956872 802221209 759767454 799164674 823416015 893583159 464379841 929408734 717129550 918652744 73360140 493872621 599909283 992571134 972783076 999936747 35577800 898793501 276326023 304317664 12995624 793867205 957664190 969153648 825732896 942909839 395593651 942235193 634050574 805438882 247154959 366670664 224166787 681903461 953921205 983647386 53185280 742589680 33413160 46133824 778892197 800067098 179481878 280691955 492000564 561006424 741470523 750936609 885399476 891680278 54710715 905952815 534271354 681251265 619036572 954525642 1134980 151166103 126372891 763188116 360519725 773101113 547153239 603773856 380759058 396425476 960767234 982268782 751958944 754818732 10679689 666845857 671497180 781035593 963847975 970500982 909770732 924093746 485908920 735026393 482590841 952624293 522438886 682724359 377448594 644075800 183182412 257256613 636616554 966383605 998914577 999776738 333996326 757550976 531230228 898029488 453488283 734604302 266291398 368470331 309013670 656944131 842853307 962698351 941426942 948399846 451725265 905889598 419184774 809430287 299132590 999588202 30813717 464724171 146171553 215235993 833681398 999398288 746077685 769147349 806734109 869297791 889612847 965592751 604572522 666003222 441995919 899998723 637463015 929382336 965514846 981930461 861409204 896711015 315745314 508919861 875107827 920822352 339026736 792957694 122477384 343409357 970693249 976089167 526232536 647469872 867975982 973642112 650662823 892096947 931430741 950383791 616015986 716661508 613003649 827196013 523355102 696199749 174842865 442483329 514347782 517422533 876867618 884374337 998928903 999358888 920745446 949189065 477607557 568922564 877734643 928617167 970552116 983226784 232650413 397004274 68239477 469500689 649685693 744259908 834941235 930901160 284566193 309386534 608404020 848893020 717004529 818335817 766148040 816005413 700283320 894669143 963270980 991699874 984119758 997391154 110944076 408832169 527246567 835152272 510382735 677463507 599252130 989245978 445285602 880247191 183791844 388252967 700132685 789033356 102647096 171122617 192809917 899814297 81397317 239974744 19102047 817157585 799538663 925197758 734002406 879150961 513516067 562253931 180628789 321997778 675520159 751342572 138439224 203956843 132324607 792146064 342996810 553283042 102768822 524748942 572022223 706957200 362685276 765746643 948966472 962274603 344223689 808489277 579662879 843351753 729543216 964697195 673216850 682251658 197571538 259088477 217668674 717046851 786706097 788762420 718325979 889137581 501939802 745846214 10313779 36378492 415770803 896296361 700102544 725354295 526072833 707243209 855838143 906165653 57816928 393246741 518359922 879033704 343746697 919417374 128471924 910892195 149269231 781591005 894032502 978303005 277149097 736433583 7958736 524699136 271638637 545477321 1789168 812267476 532169249 676660323 368473571 745292934 19940449 686948371 427565198 489264462 835099247 873189799 5414278 506945164 277521347 448107860 641880301 968168164 981660681 989491039 552622149 664150245 106557579 489532018 662860772 986324930 605784165 913119305 770251542 964011321 866518233 917754568 250496533 494644834 900199686 934176852 676550650 947239043 593010150 663600453 259973696 567598526 138031693 401891100 738194779 776893346 643886882 660809922 605338490 919279833 252004158 772542328 856970825 975622841 532909411 550928041 688964923 977584270 28026708 737639240 29548438 761797218 630462895 763445839 524637340 600813103 567551561 691006879 400927534 486919962 281946019 889810486 225572281 274158353 399002335 883133791 783200022 952612617 743701009 890653900 234294631 289129462 399985469 989968786 66665157 360937856 752870815 908366082 520824575 675220310 209226368 558630805 156761521 513454596 769602169 839366921 723510159 967399581 693531436 738411211 245379671 456331763 42861124 411953787 663456942 940906884 262105525 320307221 29987407 607077231 360542580 779510480 834384367 967462706 983805706 993007800 654464285 656016249 400617330 948688953 142897239 589861253 82978958 343367266 153964410 717884159 900813408 940662892 283736080 442169231 893045705 920310238 192715123 377729658 784678647 890421315 97430201 318605707 186747057 511089053 990689397 994997583 795961169 890548871 635899062 948476555 925653556 980775449 825307234 917322257 196364697 236779520 951498390 989454281 166046310 745113244 3054187 155856425 805042123 942169923 899709569 957701246 863927323 901376177 747488108 828783870 223325750 341414387 376626681 987502287 205606667 417463441 251717483 778658003 106040188 460648969 329544270 963032622 928153133 953665707 526569058 881643668 477755892 994175972 520890893 829345724 625244730 761243010 149362875 800860036 611024999 642413931 560464800 616813614 570463742 752719817 470100352 515817586 368870903 767127313 139626361 846898589 815076602 911241370 586789497 625051944 169917638 835624475 45995869 322360905 998242105 999834784 811063129 837086877 185014522 710896552 203461289 484898762 764936089 853313140 554131837 958753938 51103646 219972602 82552925 891465095 315923290 957691518 919988316 938271137 917727094 922766743 966566075 994695769 869919857 884751729 65055406 197016177 200117417 890971377 93129913 782658088 720568839 845149809 839657535 994615397 196642491 401331557 946745024 980639260 891292682 931553128 443492681 847279533 715018310 797608200 710299359 810032379 908733378 982232421 409217783 766750540 748726904 792471994 861052105 878662508 606806409 627589573 177362963 596985513 378659671 564531862 640365674 878718991 723113860 932055878 564447548 995503907 274039222 542529924 12065775 288683272 710025764 796508345 141675431 957944377 704417309 960343790 626059942 665974920 499062954 937694184 804686742 956337910 707016111 911057710 139429584 144945270 960104065 962505425 453647508 502003122 984961831 998547772 802017025 912696466 572526806 640789007 157973077 400055947 521712910 908558800 151231694 473349875 404820204 617584846 827950124 900510391 105702991 907437703 296429769 966533020 913455903 981072925 588195064 966799801 366999161 675500789 455849481 933791946 349278592 774211473 148172754 447377891 373540625 729374776 544114474 677342534 905899543 915272355 67490929 631356004 17525398 469281384 73080912 218409636 236807221 397248088 97648998 601096250 73435194 81730192 220367727 449107817 147938255 914864358 839936579 973427975 745327310 876760141 356087449 774027097 558190127 705580445 954212465 967317758 847132401 947307442 540762406 852382120 497271901 893106171 905149365 981940667 942777495 960265834 108072613 259365338 735837034 875310903 461064171 916324318 122128165 766665022 233709404 484307569 170959120 773684715 844075145 953019239 399449383 731605746 534340216 565742344 25515134 735010078 295441811 865732472 907256403 935635273 568403533 972543920 515467041 915739757 24172357 672090349 806000047 891406612 40540374 659505789 18406432 144569317 686049249 864133022 217339593 452684595 48428175 336477256 454841819 504078156 773582899 812740478 113090112 264712104 841183018 911592355 773290623 918918796 942835112 999239147 442757250 614862759 978087982 983891846 866815188 974890753 209212399 275592991 408172887 409496946 952583368 997103342 755306302 797503760 366953532 571193411 155014944 657428178 399241230 951328352 176562856 619007259 760505431 779210174 473219888 559641470 391100824 892197640 319942357 336339930 395566614 406228986 798953979 813937273 54026344 382062165 98486583 358208623 704758912 724286612 351104326 502327124 739140938 802603636 207224438 293467480 367653300 742117790 154400521 523794870 887858421 972029187 689370684 879824203 559051704 947653516 504313467 888930286 75609012 890789033 169573987 611212408 396930748 408054158 997213362 997265465 170297468 889543790 431053921 861542671 253160699 952364074 480098710 911074696 674917899 703572151 245001222 895247792 257395757 630123160 444978978 972487101 998305813 999114025 832574005 983678608 505404143 926820391 730959428 800021538 438393308 743320301 161533721 940984086 84046339 145556001 463810119 751197479 667251721 939911609 433539164 713849528 146849243 449749694 865496914 904846532 485239910 943996998 734073455 917403839 877349571 964342758 348426259 538475979 813078483 978160171 762157699 980512554 200462843 626981496 526107457 895380930 204415083 506629641 930081743 943445517 632022904 805937044 693872788 917238192 627270133 875339632 30419784 192822788 302018142 964908535 332451645 585545451 468749902 672708397 71871388 265307255 465126329 868321775 506621548 782822247 21553910 472220742 211849359 890622502 671712168 961084149 716039034 926433803 375087733 864473489 998841172 999417904 657867807 874453154 74049228 254027513 186109772 962013990 493512597 840418708 148566827 682273932 615044491 945265038 427244446 660666602 131913827 847762631 700473665 878746951 346727345 694836699 398452464 598904765 868881096 995763508 832220556 886217713 927291743 976229826 917084071 987558246 868217563 956070520 99266232 870913445 462136628 794320473 941284283 969060419 303759106 491927688 92245648 375542843 300162273 547209721 517584941 842859581 885871303 978629074 641753786 900653888 33612117 418145557 859410525 977197950 874222014 987810627 944792143 981785358 659604502 884524995 338208704 612801739 994042445 996369088 41183608 421053422 578259791 975664875 10794382 990273327 79254502 122489471 730445901 866295247 466487447 585085214 748171522 800723277 195931310 269188393 119546636 238268456 226159311 687774110 543924449 753801161 38133913 641986833 699014523 966428698 956095001 966448918 949322822 975411685 661172544 704483061 514210152 963748711 576963092 773290131 858826309 879528974 992386591 993701233 393394613 409484941 571217415 669554871 973055670 996051187 322354802 921191487 794504978 887831564 300947173 305953456 891359740 911240740 595549817 638270395 117930086 503503900 483584628 782687123 299684390 898784707 619523065 756720125 201732374 876072570 322828156 467578305 5214988 9701100 472689844 776618385 460781595 820232110 226461470 999313950 13811108 575806509 408992713 412590933 958340726 987508905 816353757 981669736 269239628 990199578 756263541 932419307 534232528 926872325 827084855 849596824 247468297 279617603 537599449 827407269 101164453 723493050 595898415 876907298 258376637 459049494 668381341 963054573 909369648 959999595 607844043 864392980 954090993 985723294 517356179 783422399 367584513 562462583 921256661 929922300 705901235 930566088 550711218 885735445 176229412 523271242 863611155 961010243 526833776 878859266 320281005 450658214 839079723 885023051 479421238 955361448 274663205 491775072 243449594 948619588 798947009 849784797 188439205 900268257 815553519 944696242 911267603 969244353 212007574 601504654 123453555 229960333 711758746 943628773 344789109 388665473 663815837 978080650 216142210 978308143 608218941 909808169 693433251 937589514 939265839 958111429 688592140 944801804 52350898 412113156 249958352 827289108 508980059 839790237 96036678 628555426 919078178 997398997 240681964 312839997 383930746 511212381 439458025 975023618 63869613 312452608 240126721 723355444 937373256 978638383 988495103 998926140 128930623 836945679 10003702 112152117 131591678 986906685 865795872 895067556 600884432 788559975 177520490 785336901 885276442 905726224 46503558 156639197 716410277 864488479 480761258 916327630 186087569 706417544 349080022 425585684 711601247 874098901 998210921 999324323 677013057 734220812 20209714 78135887 370189339 414306776 953944468 971236343 895229894 996373174 385466165 502082469 707625543 738443362 988681106 994811106 84756231 452789728 683710851 970952738 424523703 782662154 257423263 717358636 638692762 815738822 358921968 946992756 944493953 945856233 745432784 758139854 869285498 971622645 944557369 954884944 889538309 962678733 161391108 987365112 583463905 672262681 184280895 798105122 924880685 947943480 529417456 993045995 400123632 535836868 250454635 270294906 314062705 729480972 932203897 959722201 730122571 984500891 421363186 669846199 221681712 722519093 105854018 481801601 95059694 321602912 415237263 705797564 75638284 373854742 56462278 475864870 690313225 799291424 187760579 555615539 39991965 150232298 488151959 870033325 528396148 992986339 559721038 721813825 661269961 820341958 813867472 997126173 274715707 500540196 457789873 866057094 20109909 155873942 386824770 406781590 257633678 269051484 246250402 444459301 939089995 953638020 535092218 588247979 151497797 669718069 544617234 565091097 630049329 916594107 582047242 704772920 139868336 854277620 876560662 964675833 958424945 984264022 516315499 909319156 641961899 773228715 425805979 585363365 589535367 854936618 299416743 682409281 130113403 261629231 437334772 714086921 704592603 785876558 233678628 297596387 793991733 998941065 800087606 889200994 548797274 805398981 150107994 880367447 525988257 540168505 315348656 960016040 659324094 787423516 882074783 910983916 756818673 799485672 205139154 372548115 855650434 997274494 955476526 961797180 783905683 801189734 900205395 984230686 784096719 858537093 290278234 831548116 989399200 989649710 1225659 940830024 419204218 700359860 890159464 984448406 259805835 663438047 119094290 534663929 354243937 952696796 814484687 946850155 293709008 373999281 865401046 868304859 122877808 709493675 597818745 873865029 309587840 880859917 961362471 969962932 713566591 793499828 62778021 681593842 834378354 848693760 846897069 899435816 380016439 778867955 805795092 974196241 132084532 872294601 606091254 921059714 296196866 602250342 791668057 918073704 562106346 855228124 141070756 747542482 202461006 252760620 588422108 717817199 886462507 928878725 558551032 635161270 608447568 960697852 88762665 514037030 888540388 911205247 330455491 568983531 62739586 439282941 820033489 854622721 369689547 916597603 687313780 823197089 464948147 915318325 64522075 917584620 472692137 971159478 702455121 790778447 399220639 908308801 374250147 522486797 634470397 637344843 989486930 992949817 368097648 773527219 636720943 923478769 257150953 324081878 103814915 575061169 409915402 569761565 462550854 763860674 263478655 823898405 19267843 722320961 253461540 811003631 441780379 824216154 852461158 879559610 666508616 852891256 230522955 346551304 951641066 992766713 545134206 697813635 183122366 830337086 5122120 313864949 684212492 811535523 444344608 479362039 994333682 997018162 900626943 987000178 356558611 610572700 983353024 983827811 482447771 833632745 112844062 251977107 713450608 795624432 698877994 723411244 877785880 995576102 3783948 857641087 897067127 899910934 445546828 568810959 861748845 881951380 566822785 721795101 264532083 462855339 219832360 613439451 37707120 357203628 5292124 490786851 78477168 773860005 515732140 713384074 458794152 672855960 648720762 845182645 335520567 965418598 15325588 521435554 549161779 892635498 950947689 963665108 516120977 643591069 123100338 361396745 665920830 924978649 269559950 649134465 855465257 913637486 122899619 598458742 864986116 868920672 854619067 922433596 793150984 805611807 707475961 931483093 597154089 972136174 471968957 795038864 965260673 986011380 67188972 149620691 805615706 995642554 586344392 649396015 546695366 742401171 105953769 441449332 229901776 594737284 148801453 972506561 225184243 517989181 10534650 337813606 929222977 971786668 253205197 956011450 215214737 567039936 55431206 406791309 775622176 983689664 554157865 948262145 65990088 141880184 655885407 855130195 969725 591348606 212401140 828370296 966759668 985015843 125102825 529728786 792693952 989594747 90713188 142173803 847262887 852392403 507403386 835777241 472113987 843439988 79830108 308504979 918128350 931730994 11628361 252106188 234929783 325317436 820546475 947264569 360697883 375663947 176047849 244953712 453760610 554971907 81084609 734820918 932448800 960687082 608875622 989224667 18431252 72602556 277460017 736731241 126197932 761856249 757202132 801571929 921677210 930001580 486133032 990400921 872446144 931303409 230421489 405106096 143152796 340525732 850740950 985945436 757834630 859136815 354674762 369511403 235215533 564755307 379223684 529794006 83760901 926961800 169039509 882838729 799016410 889706357 220692848 574042547 456992281 683209074 767198816 792765616 664177809 670186283 376225914 449430153 134861193 334734268 472521529 992850915 784558991 788778260 252641336 970477810 414577273 975471896 857227393 899147974 703219287 741046773 292337517 455429395 268746300 943300822 784097938 966560809 170968859 219912410 955482120 963944955 692799019 977896151 155267444 596887341 452209918 883973860 773871678 817364727 330487801 678435679 484351044 745439291 55712411 133037522 197183373 700437592 575744770 817892888 84897779 386777159 10947581 723645801 344814708 864740601 931611997 935249394 306132359 593251204 355037453 935860292 169118368 651273833 726803077 867106489 992315352 992965111 346087991 433066071 285183156 621404144 63496121 875415380 903545140 971319667 785001052 794264316 292540022 658231145 274357771 470038922 844150852 932181290 120731100 558324101 655966587 803670548 263915276 984763746 464616884 926662920 557314836 770348227 924824575 996335594 520744321 943978146 785195693 999719914 911562567 933916076 124028911 840553076 630751257 824805682 956471265 997038361 829586841 958523457 192471162 586095255 489557271 777826195 491880605 806272762 376775749 585399591 901582842 916876721 625517521 987241406 40681341 348929438 99542583 818627974 779084844 804007147 896446626 994556750 512394939 607745408 188600346 380868024 710509542 899089118 42667928 682721119 104787585 226681159 918480826 997884098 351611841 366754760 429371168 685869547 676907111 884796643 203782622 575932595 253343907 756712339 291722989 785391290 740674113 860425399 559488978 902482952 763123055 824552974 577229954 778755663 115217996 923792200 877353873 894436155 180468514 308591450 509552732 913917140 789172578 983232873 120547797 405220105 905012080 914730065 222007466 864681322 634458795 894730769 398366552 941610140 6531513 6986832 117681116 577418987 200327909 698609055 140336821 829829508 820621047 865625607 762139132 810666483 967701416 971950703 665705957 823047414 714340355 972020047 867045885 989783926 531470542 909767990 435061567 492922814 487536778 725908716 634194257 800489968 889778144 995403188 776433760 825762495 201423775 646147728 565276123 786976070 714717628 939594172 185943355 424372437 32813881 415419609 281012893 690066756 834861707 922926402 735324788 965074283 938898554 975827968 990807153 994518235 413560495 990996649 79722711 916762122 999174809 999751446 316824661 446275285 670358901 733656805 549416936 918447370 352989697 687278209 642695279 808382135 492532124 750297853 650177802 954389259 70602924 699857985 43866367 528564614 895793018 996960291 479346629 505314817 957646092 975066628 389051705 899518666 72768792 512967077 578664156 893986893 572873774 832492413 398810232 461809787 456325708 518822956 205597329 627568575 326561792 533393632 795857965 816759211 209663414 796344395 129722946 468805376 276465480 821362153 415949498 784882086 250753111 475348880 253738753 895860853 543187579 993223869 51759731 207841615 309787122 690557158 473371828 931677314 758104065 904360676 600332111 947016886 180132513 897012186 143456560 634389074 142017588 643995280 774056609 930651906 205727179 533100837 406328116 652394455 522476666 621805484 626018639 705852232 837687350 902136156 62949122 257120753 158688701 982742307 659747643 956013828 71871369 349295286 663505603 664758770 201073770 303689725 450467901 888283892 473720351 595632869 410285938 637235412 332078071 484860274 839820926 858206472 570294182 866359736 972586507 977120240 189122104 514863660 282870318 414960202 552137696 670587313 929198744 950775830 937244078 994114005 57544497 261603875 562200208 947539032 583204444 881088340 436415243 664894121 921666171 942334786 819264141 972881726 160369892 542545733 480004390 926310695 761412062 791393916 403578368 919186508 792034941 924934445 686377066 763400221 621780003 829714513 352953801 802364483 398178135 689923329 537944122 730289269 574317282 717141710 58682692 312798348 681334452 827495081 258390943 611246887 964228971 997522560 83223518 522085515 62059250 233071968 220676592 937900039 653892642 962356037 545475531 673262323 937085590 958993783 18023829 962722312 918319818 927960059 149966044 947584561 824989787 955571138 975781909 999278996 608201311 819064675 285598056 490337514 760214256 812926291 37258396 886947249 952549497 992342976 645744893 729914255 274808707 981726134 700212823 978921583 252990672 321359578 541334063 686824859 102507658 296442151 219205685 880392678 876960434 948106583 48224588 777703434 35849223 134495389 235562478 592463639 113076986 957117596 842172204 964576023 460125649 633361786 842397734 971149084 75153886 262547695 95134414 126289364 125625452 364092918 35914328 640567310 63724438 380200553 381604505 707375037 568769422 726470497 153110408 887436183 563266039 605356650 655165383 731796641 407654801 666983404 895600500 923624886 521238000 949771646 515313431 917813129 452766573 540339697 308460429 512683112 724312823 981730430 279666366 966770679 32993310 182187047 38519293 541796243 750474150 840659666 80894174 708461375 607371016 998858801 647167588 878021163 761843443 930072663 66001726 631820388 527869110 915085011 403150403 764907515 528096779 800512183 35941320 54438127 430676601 642942973 647709159 825471215 206943272 213068798 301199790 389314592 705829085 996887627 946168319 990973420 995839845 996564556 43285907 312752967 506962749 579754004 56156814 431683316 113886411 708782124 206915263 447423682 977698928 998798259 34556070 792614599 858200826 950145889 751842067 824758133 282570980 433084558 74324254 571495056 944748881 993072818 570048502 958842124 197866284 297573198 645064746 953551340 856778409 913245003 857728467 924233034 19938583 98997800 482531553 849047660 701078187 875910390 27905331 884217683 384273606 444902108 833541203 897646731 541147644 570951110 304041524 917169155 349210502 935885817 576928347 851697476 9779754 120945115 51321345 805848147 756059172 796314222 399268106 488700608 803227822 935482371 284402479 640991454 872783923 916746951 481095876 556668385 662721753 802606927 580765598 735067532 337845298 731824113 679411888 852584610 425816440 532441328 130979564 966759372 161997383 244802364 302148416 522908871 782190442 813703704 766168195 851071133 943999347 994996754 347957644 438131754 716419128 986035829 590227455 593796390 122662945 603354099 162605950 477266863 627530888 773112093 189195688 754375593 438859016 897129788 561496527 756806414 515189472 993317979 899846941 913432210 862746260 906222676 252100436 688136347 221707395 740375430 863119536 932060114 65155389 698282031 353628767 654047616 101653318 571040168 874461841 988382968 366232207 921569358 675927027 690080750 100709571 602181659 491361179 862486123 756241192 940256738 362728063 530915478 968816876 977366559 68753606 592316937 578524900 669892545 982851177 988705490 510010953 569455040 27439840 889535417 88621850 818820414 461350999 587251219 437765496 663850169 126603568 939119138 641191112 922183139 912154367 958677716 198234139 553074203 435895272 975242520 178297441 470044587 994221623 995544214 589178965 909381100 637376351 727905227 355182969 850584642 406690719 821013260 457296265 817347125 616438223 891304586 725970735 915496044 96936815 393688582 935511960 970795563 876829810 955163267 854942767 996100631 386923534 825488587 170609772 835511359 600651203 855945008 479916022 528770198 276195643 620762960 710655150 908054800 35888494 723088518 282556366 563994799 278997843 280681922 19720834 608217323 830044278 865139761 423223307 705807346 661876524 948303049 513552901 589560939 377717243 802255200 412661390 606372575 259622823 825315981 941680181 952267270 219059293 436715473 920960885 945152450 620159583 978704788 311762142 333761616 278854088 347940361 383936 574993476 585707304 622246366 388057090 596643210 831676825 945059474 7031913 588480173 258530681 966790734 878880076 985128764 84986265 149134270 45160353 737778672 347995574 654103925 546926756 653867376 172432073 578342659 386020927 922696932 509065311 765664007 443278296 455353139 692667862 744756446 688759392 821318441 400303883 520634580 841940633 920313867 830409067 845001359 111030268 958750302 894728532 901117179 620180102 925549170 867543443 983328133 571093352 960833984 731294298 873457724 417284299 645268272 806121496 938808469 22631214 912637934 474518198 490946236 193495714 515845964 428033400 452752182 357169947 787618476 337545451 597584279 641414445 847090668 566479686 826350552 182069093 826643799 567518186 594950277 465830418 504392107 417851616 817558236 611490560 735872975 906580328 968566087 285034922 425003445 777291393 808582947 5902985 266606306 704154441 830064272 265470927 563498399 226817161 275654021 479798523 597699033 690573746 884094414 857583515 979528583 183856145 934758573 788578245 955388283 259177967 684910820 831928697 919960981 756000013 896391019 712393344 972471493 839696970 941140242 127564294 467607259 101556063 135714314 88064929 596166446 531795857 815478072 249449874 549869937 270383343 519690495 202848556 955191810 818736939 842038642 395807533 569057415 120300578 659889216 889889433 932244408 63595621 764471006 117114499 708819703 85701516 224959928 671324571 789723119 33223847 130931163 990991886 999389440 208463001 565028189 372518562 472130326 701389769 729027806 936091916 993805909 521138430 792420725 651965644 775958387 837086923 966786959 9849685 247434299 944380871 966115857 924171645 993495700 868868455 930771689 469957074 732245842 722762985 849365859 88137076 957846892 858083394 929184338 402237870 407703681 638189112 649301069 178933757 863465749 756469180 896866706 37807370 168047226 570937498 653825083 534704151 800829802 319819022 820271461 684399692 804434402 500017926 579424137 152854150 282058506 180874717 490731258 330026831 629163697 303907358 534494686 722868089 952108425 580896069 705404969 937945246 963216226 173668895 399710521 961266291 990275258 104179331 519163288 170935630 381703914 133050533 604910678 486843176 558238198 644166971 874618656 298308464 908986308 89177716 255576431 687176606 749699008 772906804 932361387 146872253 160071273 79019574 542676510 205292579 477178038 343724383 488149084 599076108 927859752 239318761 657536166 799156407 834977808 921821247 928683967 118500832 216962302 557133972 961295057 416432335 626902451 63010327 342295088 89508383 835779908 516125989 783700203 241478329 528810261 272880521 498207198 886171526 901090892 362365837 756726432 185211761 686579067 249835131 775819077 498873888 716822652 201747774 357591416 189675131 381069811 307682903 861573918 439393994 683249551 680942725 734888259 77923093 365877579 237712202 798667951 962243236 994581390 57361542 599643124 474020948 838073830 92690673 263729528 533903205 919851677 790913982 971575711 675081014 789430439 704692818 975742302 914547863 996535719 390468203 673704051 888949863 986060059 295815137 343419765 666417228 857858669 552643207 747862318 572539276 953966922 745464956 942913491 870783388 919298475 207669264 209160011 242255736 366154594 579979627 832988263 947789062 984687597 665572527 842848019 758772129 770438663 231193653 630892357 676513836 913772007 66872556 254535277 365439861 521841718 111397058 254281632 595497645 824349899 235987834 621327242 318683058 445222339 573447382 981000575 402695790 478522222 60790548 341817596 228968704 868856170 35788519 532143376 937409088 983161519 981675034 992240288 860249820 989634972 783017388 904715644 728940569 752743605 499610078 820916524 667014840 869710958 18697974 739960735 884955964 973209996 123217050 386751392 195675952 635169261 811165626 824447223 603075411 857139821 614933910 734879395 106660080 789764261 533529839 876291285 436971923 497631047 272161214 825012488 714416509 741478535 244552052 977361827 870309338 921828768 929766764 940889676 792382850 943851375 606388345 770423002 287223000 804117326 751719234 899159774 215783162 488456266 625096793 744617491 290941214 846282589 316399577 323389591 475482897 646413153 811087974 824966928 79581856 563682053 694078001 977043104 73266875 238910864 412370723 747537999 445747474 775906094 90426774 413133996 70934 381480693 906202196 943751058 380782467 965844969 798592470 926500783 441179431 995998852 786733408 983721166 573250706 648747013 612171556 995674571 214900231 429349987 473726588 962750868 991339620 994370777 582652395 957747409 299367 818719249 246080874 339455239 530856589 928358132 555024676 970655177 554902724 637412517 144623852 855162522 391818807 582147783 104120362 289898972 789682249 965779767 197830661 770675006 834756057 901449987 601864454 970417011 488440756 877919070 27022302 961903800 453505419 787244128 768289549 998994218 827441530 964432511 230240588 686898982 323183864 957396848 138866531 265515184 571323966 801139334 777020753 886984855 677474552 757456999 210947640 560461475 246184758 571481869 21628202 285759261 94509466 385948652 542489898 731846049 570913914 887743328 129915694 850293860 250196148 950287528 60308702 658012367 426014317 568682023 280701664 367468431 236492309 837158968 202600174 216346662 9782904 111008573 60807919 808464622 674777799 855797750 683037146 973629980 939528308 955592502 251418648 694040626 276121536 295224791 992571477 992669961 35680620 55652365 887450791 908746472 84433298 492047284 978152248 984747805 383480043 575530233 895853105 933104249 116661142 593774935 184509759 476926507 704093030 950198800 182338339 456414852 883180773 973245540 148995033 290416385 995020206 995864587 396340607 918384225 901988947 962548988 432370830 448658214 872509619 895810000 485728793 964975696 241211288 688674744 806067185 922459637 612712054 860482619 255249846 404205076 389945896 860664427 943616784 988111374 734662240 769467369 177608647 824415720 639955192 704966242 739346743 792969822 324446562 875535354 709216823 746725622 91657383 221870993 966094648 975375606 528547608 854341754 722036586 779335067 26166336 708372616 529322897 784502614 715314351 998180136 423952623 772158945 870279939 980513322 105879109 847424702 735750357 903613375 98203449 484539638 218441057 835391202 604155084 762869997 26715594 863841058 74267336 814607419 419063765 573134096 667295054 710307193 586673757 718131849 587135371 764230972 721741249 746169643 633079920 883883000 660174016 986011343 926893768 961557826 887848215 989495204 458735179 844854083 615682158 872949527 110553238 519748610 948404373 991416365 102396087 671409584 253601046 658086651 701193378 971430918 76417941 248452478 765486819 769091040 751815164 961808016 333996494 737394608 507984626 634520384 193375316 519675597 579358093 739075776 474813720 620613253 730702833 944976243 781438738 974775147 770134808 828663071 668067182 973006981 961495808 984130358 337910730 605001946 492218073 772773781 59486729 575276767 773481216 820868909 64024992 116916240 899599855 900038926 757746976 808286876 863996512 989029883 425018301 995051521 301403206 597949352 143367316 654375701 837535819 947430864 849469453 970929130 843941469 931158743 314274030 850985850 796280491 896998435 243149271 636297591 127722280 174875023 516147099 556791542 775159932 873457870 961140909 999006065 858782509 904414328 280255924 920865035 343497147 769383311 276848351 615178756 530519977 875706813 623459357 689586691 358853676 812172603 708550987 946786780 65458291 222908725 879409551 991162007 959333665 992338096 913961301 967051803 340968898 375318680 945040645 969918258 573574061 720480311 952220525 973715895 342742328 964338008 285730794 515929559 861487904 936283499 979877333 991644671 477625200 957771384 869665423 963941508 199631156 487101307 630362182 978179274 686768127 730887511 967543694 986766391 721204596 876277512 712045107 972918122 744877028 882524905 208844072 845273725 330292768 917948396 62732979 980200446 418309410 520134074 212755447 426415667 57801405 153071842 99223646 891842016 559455922 730195972 718330441 764892821 460837717 467892582 979584740 993061312 43515140 399609973 918345222 929394695 682621343 901105683 507135125 902161422 573237128 827602507 836868075 841518368 191798492 733865854 320977541 777056101 540414460 747354649 762122990 785230867 834222130 873300182 919135399 976412858 719957691 835527667 402536946 912126084 613273226 796958718 995341341 995832481 548327566 984746195 442142753 511423607 693288056 924498937 14112579 791334789 648974433 876996064 503053957 592270702 595267371 823013259 114864442 176771543 211192871 439196451 514529581 728211759 8188078 842858252 378813323 883589375 945728376 962761892 467433406 549681293 42069304 795538331 50574357 934884813 781068888 840561721 188736567 489755102 814595955 923415262 225516481 357256620 949168841 996926232 185836039 836540060 812784676 846933818 971284001 998306965 677518849 698606507 844219858 942228605 633898547 811106422 477317483 522675338 306992147 845227562 297653030 642636961 238086957 699909348 290062578 773335039 44532904 184828734 169342768 978439824 336988377 525700046 657985524 692209214 360599333 542203611 316647444 994509215 780253049 828293766 940517010 985819276 836146501 892015188 135735060 370367308 854107954 944277475 400676977 928087400 16414566 235039197 72104383 160296814 115462733 782100213 96595262 285670547 902716204 960472898 996225309 998125341 864224072 899186608 740274920 822687077 772633666 998651956 15846985 501727422 304624356 950850062 250383236 861507280 910575709 915218156 365554720 676476007 995732450 995997802 745484211 821979964 234593348 426091705 613157741 795803279 799178543 915175989 339841044 944891429 399935691 809980131 127313471 987405660 930700618 956863345 365844601 811638228 447692969 848230555 215655803 282845206 336042898 883250978 121136028 325187631 69414105 230760939 82987842 790837190 358270605 910599900 274400195 580581229 813415451 848394134 888154091 918691077 108355187 764178108 577477412 867623512 237436903 924079996 97615278 660065793 922302965 957317190 254645662 706448376 990334697 998614240 510873297 538891155 981354560 986969061 992796148 999422649 209054677 975174980 488228181 649993696 269967966 647982117 514734648 752018788 681311671 972338248 952785417 977512317 971957800 991926739 452921435 826357942 341095377 371577629 105616627 301488795 393901048 800112526 521075959 793333765 274588003 279822394 517055095 870002513 183200917 762358786 52172742 519591938 627906289 636545090 475185436 678979767 220337101 435167724 610180181 733555983 417229326 909013797 347026461 646879122 441592812 541786598 662606884 750627385 320442801 785501987 62283074 215572785 6310452 666168316 924030046 988845605 574146274 745842969 173327605 608344389 838772729 889869530 544741625 751048984 887835044 980148102 313099111 388724847 829214925 890427337 600775952 997463924 136559492 367639255 25625080 723731219 865600180 976499556 174690128 490089515 92576062 546272094 733696366 961486196 203425826 444872562 495853029 626191439 466747006 507228475 240892864 948924047 454162009 848777661 106759699 130728851 421341372 866914069 294635852 373890898 52843285 529559569 139922728 534959795 897229053 936868695 150007737 801461733 939850042 957714327 296495512 387706793 786207682 826891404 527403561 566226107 742805000 801617081 559063516 615216219 111294142 698914447 363270204 885834494 513414863 801589791 504783274 811596902 416248148 623914547 276321239 751997074 281420991 511811094 850117957 973767975 952177925 976494289 528842077 555130051 111296054 492649042 168325911 589299266 485159144 869799088 548122535 665277947 540538028 694307075 888111605 972146451 143076748 976986356 700515874 740086607 573848437 616827642 482901093 563348415 959138831 977302563 235307491 548289904 141859021 723898327 620407875 953137521 104389578 191350254 629856192 827481271 761666753 968397734 886786824 888234593 856240353 934444616 807769404 892872000 271703978 481583470 530951786 914191454 4976749 63260893 919637135 936140390 556565063 810511606 226716653 546171266 723287887 900458602 367861024 992001491 445234464 824472962 917862300 963235710 8156445 442282840 198760611 961946544 636504905 931143141 234765985 991809017 604061411 736538280 222697766 617820671 355178507 735287319 974936964 982322219 500929037 891399471 643707628 773856378 166892813 275735615 713902913 892509319 556215217 604503200 222337107 464729611 121492281 771255713 110121430 285176392 51824857 474100949 112442265 667299230 9010713 509335010 598678078 791386546 917831325 932664616 334144754 878353658 132838917 878311629 22604161 717651573 499585446 808231050 400763124 708318403 395491276 988487958 855158276 909681126 931611934 934306961 970839659 979636002 94196911 587662924 292790881 671408793 982792346 992099754 456792051 590050866 397742627 460921351 630141478 964825623 388441949 410473519 971232044 978560523 19685698 234863895 589001952 983389644 640920187 954880461 446459343 944186723 892564431 999870868 117680401 865050294 623375514 745309022 496881102 868777834 347011239 555414792 48468582 414249792 275912384 825944775 836408209 893977518 984968702 995748103 832917390 880842006 288311981 546293416 969253720 992380657 682749677 935976520 316142932 761381549 360130080 584560836 445432620 708058905 804752473 970040612 886513564 990391627 561419236 636713407 28115842 865102506 108898608 713149739 672372997 781669988 727455299 794474113 769037090 841168634 692565342 936993016 371891138 451535505 736716969 978362461 333266190 955375676 943733332 960225099 251037154 576401755 753608888 865109829 529619665 593097650 648166399 830106710 762123353 965503326 605625 233393040 727701358 954054435 563128744 847365723 155231986 169733828 435699073 469654936 846156877 954099155 199934202 648410744 306867725 402800708 940596671 977229669 969678830 997975034 139272846 849488772 595171355 900136479 611456280 728879888 563108366 686668845 675134250 701324163 913773185 923884302 893068795 983905999 628405935 940926423 930004558 980986196 614243234 807212895 570508536 641742816 835515802 948905143 215151261 219769323 926563558 936393009 814154074 967882395 352906303 490767710 771441238 798080380 705242439 832489271 320589472 968932910 192938193 246371843 28640884 457622038 22191879 458646594 743142481 883868985 568963893 829008992 128187813 239972917 517953533 689316088 625479143 814120171 563469550 924879774 392770668 759581454 148532838 464684288 152789731 821484221 61553626 689432390 975580280 976526287 198249812 635275498 991841789 996777466 609136666 764652477 31340241 510845872 448882298 938908849 814512529 865512823 934643018 939823399 893501809 921677331 873082949 941090285 23599155 701790069 781341935 933740618 886995892 993924347 544604975 633553243 871133735 959039126 33194574 96157844 303842362 352696057 391796014 520699373 459233835 619660660 706840563 875193756 49191963 465176667 772923942 846362139 989282718 995874656 265255277 832715818 731922895 846059483 414801261 743134405 383900541 467101740 424729405 679161223 641436207 776538122 99096608 720778276 670202254 747953672 903771988 917508430 281686443 799771786 937473782 967449045 187098757 807838844 254538617 954184252 778076679 923755736 62376878 343303145 132812867 706098345 992406932 993740981 414482459 823072859 359542669 761293245 26331543 321517147 467139364 639699878 183012275 449726715 126668301 551763845 530289647 864331830 299864119 507811877 899950077 959580631 228724775 896501024 220367460 991523423 280099345 791453884 186084105 830220493 309907565 310441770 715124805 839214754 875334863 960266977 666681308 843948593 386438561 497314126 363530735 920978568 476808356 577805692 640486307 683082312 32278628 33886784 25952655 313104596 184197781 854107649 474079027 495174740 940386477 979854157 385757126 661974826 354971188 486013742 119607627 573955806 352755025 773321859 476872475 640563907 870142380 991435287 996951172 997435926 135181279 772467213 694205725 939882083 643690410 992225424 213882664 952141250 904183360 998484915 831572246 838395659 931352396 986644162 316436263 582380272 856054341 891924192 3986930 941009757 316204556 343383534 224177318 341402394 37035910 397803576 157362885 298484198 416713069 938852848 258020345 763915555 51812879 353237204 235016039 449583680 767335604 955571089 787605523 934720225 364145431 566541522 899711684 953704781 156094042 853057423 67611712 215524247 84933598 481796613 641190159 790678553 648445578 964448457 103007140 265423042 551395245 940184739 56276646 505161118 869873263 899183466 952383219 963865705 392083692 497846594 156531533 585585572 165824914 480126898 101065273 473311830 700637836 961581575 455834488 971408732 910939210 994667345 834710800 959597511 541339979 896688621 954990270 996754609 720814533 963347667 604840272 762855561 274572281 854134579 787746110 828495734 366302892 463687744 710190390 934010970 830912682 892725426 234749660 273643358 209094618 297012652 317058175 643489493 490923814 738286180 751970292 793848402 238472899 619805097 318608197 539547464 500711983 652514025 708002327 856618556 371422562 589982226 284424456 699022711 504607243 904065536 558732891 733192927 924170201 936694150 133120210 248295571 496453274 732651407 6582713 97299732 863644865 981581670 567814128 664823122 750073389 818778717 478659757 489113465 388861018 503696220 980922540 982503330 307915795 312538257 51332210 151914167 857330677 933311801 828695207 923412295 354985542 680815646 842654852 998243417 795138762 956701024 499603582 788375191 955809696 977063701 40881238 288816479 938350964 985871489 191963723 308404990 7464926 532209836 674344726 693189457 250664836 312806284 163542627 340892883 985759750 991636295 454093505 933856429 352056305 923242183 558604500 889709019 730253209 941568728 768943335 978579184 473369001 535961625 627628253 976347835 24173247 587393586 50134735 388684242 451597284 696977973 498802575 806341652 526305906 570056047 153944275 700642868 193159668 405703772 911258841 978117748 788595209 997027824 713991110 975911764 277969715 998699604 180329828 256797170 95159333 287079563 690074548 761992411 239458683 808605294 405600250 722890780 518186819 961124140 422372154 969490432 161222361 614545718 8844751 385863700 958617319 973640658 249039108 921355548 781905298 899208195 204216740 575622600 237137606 360647007 273861679 494709688 955302030 972987227 907228394 985820627 202135203 821924115 440381400 850775482 607731901 947552774 810217606 987250533 444819603 496557260 531662731 595717365 130463503 904643207 407531842 868133860 220425870 577312874 97521106 485212575 469514321 952250929 993937185 995760938 624774886 793738949 772680542 806030380 380511022 835403738 520410701 844662663 634099033 925415627 196923474 341038673 457577216 970347962 660270888 936447831 815688077 823415541 14919163 897453058 769047742 905523115 301532120 903730692 986509629 993976014 93055366 629390414 40642330 173132170 954680990 968793586 918639779 929350946 345168187 522780692 622435478 635861405 636722004 658404026 340816901 465934167 469080413 611883621 329932385 943274469 627335546 690087987 324793311 396149770 830117142 913709520 934330083 959431322 506720258 958759454 90003372 601601930 35526201 193047949 870101935 909246100 39137645 229066133 137841677 728993888 797766504 877780279 47046867 160397963 724071935 956085142 253584904 569866456 776182139 982770319 267229602 875354312 815065457 902881548 917556116 984388016 196658300 821741447 844621281 933806886 649134259 783535912 740131267 851688784 226521556 997023741 968519905 992391625 913254324 933904265 387657900 985308225 378362217 959235102 224103741 329583671 313765006 824175552 788265795 900751332 504033663 530452909 92737183 554389478 191548909 192693474 392257676 463874905 561171595 726365499 246527020 769572449 594554942 699477627 130776524 842080726 83739805 236882056 529275957 753840392 334842611 562923904 773610557 791970050 500073730 616739005 427522890 831558537 571424746 859158769 322082085 344021032 413249053 727843761 879807925 965676812 858102249 957792262 489573825 890832760 31946509 527529558 245853431 915209115 143366987 410959806 299497960 831095427 486356771 936145983 266317479 951533959 898576061 920964667 806387611 841158546 435049635 775255851 652867927 834128979 673552370 676415783 385086188 981284843 376287944 975472279 140774361 368951512 256183770 737903387 764247336 933498166 885818585 966151611 696602786 805133206 604955333 943467105 86766914 638514717 692657629 814404906 349635880 830459091 253283356 303307464 990626422 997767436 985413752 994836365 687143453 950835732 387979397 966315385 296805483 887810914 743733218 823746460 883577109 988431151 471401947 633181322 744025900 830886349 547665985 679650165 841524052 998047911 701405208 942797316 754212884 966659596 837477354 976262770 669289337 976465076 31990618 354597537 47681795 860638968 353237506 400268144 232814854 859588702 489815374 948107247 135040459 824497183 952347141 962236790 684549742 857149691 116505244 712171678 317873651 900541571 111377905 584163603 338566435 940439016 943230176 959087425 776885606 879050584 182774265 362761198 531520408 826801093 389738027 715310630 565140318 902246214 195253847 274961106 139792737 690739208 569667689 693603939 988526556 990956527 434151780 942941678 479005650 651025080 952439896 958346723 750942139 973737905 671124793 715666986 264086745 561850927 794575907 913293204 242179470 929688499 342749325 861416984 82619663 288144374 134007691 482800387 693528636 932671147 778793477 872397773 103697055 885069540 459272382 666291085 167642792 877127579 685080932 804187585 489621646 676120407 622100740 772921689 888092251 892557546 290398361 801606189 505162770 766600970 732721880 821021480 962204081 989917678 926387078 967408931 351127492 393101860 346233635 507369123 469800508 471528904 40520464 724228981 451782845 471280839 722964211 942794605 393694021 812816720 996478146 999848630 399681445 746086132 116570463 214621156 806533758 995770815 241897477 664241585 179252497 253701637 643003914 859474526 790084619 904070230 844637202 992218743 589742910 702267277 126501013 932926908 297154535 315178995 334729054 549716887 11231432 949512171 433350917 732782463 993716025 996603268 328915627 527034002 433813731 435254681 942095481 958462219 689242599 908105293 338476324 389782002 363273149 728211820 718989171 947683395 340154133 492004122 187858079 795725524 637990946 909029218 694686671 815472098 116226795 116398760 3244088 696565716 728501028 898472974 263717235 265202374 998061230 999632809 183752733 365200943 993312502 998433271 4630615 328191191 587283519 716237873 874939926 919332697 628532771 631160385 583836186 725789750 522817831 774609090 603606236 823320599 625463038 717110547 295791038 359890362 707277955 909237860 429844031 995376405 967729141 969630231 522123898 941648033 225832197 249667863 284811703 993023829 519553154 569603102 301357494 869557207 669891149 871337619 883027873 995742432 77787034 85048169 791361255 941762625 997868628 998171999 787091057 870547699 713608674 907601028 330681487 585766018 115679742 594278283 562963368 725960840 761910412 791031819 146498446 276517722 834432537 978405513 997489767 998967643 135591065 828125532 213773720 703030291 61090935 93908972 18604425 692950008 90621490 940607643 237670416 785073686 464212519 635646240 298832210 457547429 834456382 961875725 947927211 956484701 445000125 737465434 867661616 940994132 50824445 150511108 823006792 865095447 229582053 821326924 248352408 345264650 378118307 629800734 402571274 723436610 826508695 880352395 59974751 918731659 349387291 862704780 734816792 882915029 407024851 853665791 88451307 714698357 892615998 993894987 110264056 397474976 889229906 927007656 324313582 546669974 843558676 978547011 141233821 195292577 890485135 989638471 163086020 277477342 922142756 970785239 14357741 523106786 559389176 613041702 159060427 898864502 886924477 958756468 371374248 442395303 784104109 884393021 545895162 962330333 374495708 489723917 181196839 485973724 853111668 980202831 679444689 987718761 459865516 564620704 170884540 797550990 32013242 52655268 803921101 978071165 923326863 973543611 965766675 989080853 595163886 660833975 715416864 942559065 618553512 763807502 675872065 864921801 429250881 605958268 357241293 620213811 779994994 789901188 423988411 771414935 14165905 889140379 267136179 969982607 88677184 839932135 256271211 635951777 512070236 710385314 434984155 865027344 819655519 866306178 914417859 941085074 996613747 999950865 241168081 292666142 855279000 929728394 576006736 742861542 131290305 851985947 801876024 942785261 175445299 615750991 565534460 927238148 963345425 973878655 469367228 887260669 331315223 472734201 806925100 987945832 535053818 706459458 47955188 986886126 793675889 875183770 717591411 749505579 741916633 967124690 930536943 992819975 152658974 553400683 265841136 394585722 123685881 696275887 352227472 801070058 72630555 768278606 335715984 462375612 379615685 831819534 484801976 970780711 762735093 951391090 348100193 560361600 910994299 938062542 952809426 977334878 977176281 990474792 631077247 807533098 14796710 853982578 395233064 486898376 997476243 998170146 383241212 878256223 977253710 994592226 332895845 579318637 377504490 769204849 73717130 538727914 929272901 994534799 844370937 934987605 596255449 736215400 330736922 432311384 823191739 990028532 862380421 895526083 549998657 832686681 183682621 814356416 350440271 734240092 386332682 721309114 169119524 752380500 70406231 234336299 498640925 628243104 506246785 693391291 228810007 552853386 897173573 981943850 661857262 725141996 434173771 690360018 732213102 808046345 343121254 378074773 241388934 483913363 554591159 750941006 225822489 510256817 389920783 986006819 4584984 601482251 968511924 971099053 97645465 145350975 499651952 860029330 525451128 880704275 909842345 932446010 392163826 671916092 107293629 121899062 246308730 738512517 708650412 876785645 742281168 990285934 516720630 914404421 230569230 413588760 20151022 418755682 728126908 825881352 759484085 778083812 266654555 390675700 51534255 110694100 978796013 980711865 416737622 986404520 474339780 504153182 900439629 919136178 17384752 935835329 81842470 953136952 107013021 910395614 509216656 582634666 84146637 642148559 930141696 937082048 18352495 632559017 986543122 987127446 647265780 772956792 594653506 908337119 368430735 493662948 592050282 725343170 22420086 27942536 597367080 971225960 29602498 951391748 269450954 447319252 985055374 989193433 187458644 204927665 558932004 960377205 362705828 768762643 257528848 752042194 338951765 425202251 538989717 646247158 682495810 787488561 761115311 965168946 84284077 655099417 148114214 296463795 708856290 898110223 125846632 430948639 979461509 993771981 814320605 928559348 427157951 685911007 183569375 800616120 636315171 816390190 115111308 294954122 995310015 996519115 794161244 883320868 273458931 429795714 284372064 522912020 937031793 945211974 847246374 879277226 330993181 740411551 68268701 294351963 857028227 924565052 217100622 231290147 353261987 700985193 341025114 792181593 900489844 978051625 786255943 896000811 679458557 698065038 350403668 544334024 564629365 608010197 954282556 969097166 184646959 950171622 655987375 852846013 13141178 645920897 533804761 812652970 675448749 770961338 620495759 671726173 565744040 804476269 830598189 891613686 413912119 512743341 573163358 747887438 607502457 940674167 466050807 645524597 730192576 908398140 829091485 976568549 761761534 810884306 157066738 518394554 167915659 897515447 615049749 951027672 27171248 153707590 291551168 935309217 180211149 555601499 354964929 541309779 403896359 492451116 535924523 952601813 698810906 701402137 849404494 894107451 541662352 661583393 452596230 501985692 234165143 261683968 274513606 519973435 767028749 868308682 723833420 878730460 923116786 969615784 624265622 718056069 576201620 906972880 849998994 952032012 890222028 931647520 983858781 991342579 591731775 805667714 104493461 877410668 737330107 794153124 193419681 446850870 566167437 780950100 223868400 508070931 900770392 916744462 889139639 979384550 712074689 865698150 432108023 581352922 826829766 964077872 799492754 878485374 763079196 971309416 346781539 515906887 562582400 902576880 365674992 793419051 683317691 936017939 198492139 919578231 58160768 505972698 672613963 874233350 183611896 408859898 167882080 214822912 451902292 605991570 538929674 656700919 642286617 997412181 285484040 366690017 173426092 707118668 493867985 851755285 546677022 893951232 479264777 827569025 584507312 620776127 135256911 851622479 423259685 493091865 160736405 752332220 779328023 861692419 83455769 977473811 891862240 961603170 362460580 970129381 10597075 135746036 517873039 833223884 244683893 765883690 459865036 537437113 618496346 715157101 87406622 583957329 468658197 975065322 898076136 977214951 182079239 229581036 388581967 997396352 596582358 994465896 318110664 945636912 355804733 418686862 409870432 568673573 665239304 768507647 375883561 755439168 773373831 856877318 586074444 675249742 574722551 827843667 254397629 512262207 434647733 547867435 756110057 827566959 34868138 342855886 138668327 977221762 222638150 832656046 233831951 799352044 325855764 709825255 735394632 826581176 244453063 375271333 697901200 926508622 310364968 696157953 976374927 990050808 56710664 883694274 476922676 568758009 393516110 676145845 370239554 570794900 436370188 669170900 692578537 693205765 480022787 870546368 911825550 966915005 548938500 653637326 390834872 856654370 931383563 953027511 224481502 546818287 699742599 722559954 660365022 870238340 799955598 823897850 603905831 753090844 511682163 762337939 665203761 702608475 965488072 976979954 79965580 535275790 202087223 697998659 612904451 890309878 330932614 486995508 417100674 718455138 220522583 763350807 775866643 992427145 725442193 836808670 538345375 616604098 302614870 910637536 624711430 788964873 529765473 678239692 851164754 976542887 362228578 778872285 914458696 990289563 693975854 802669209 386764078 956550161 417739948 695545194 824688928 990818671 400825953 430621309 668829621 758193827 260057623 691003632 561410197 930157151 218268820 580258285 143653768 666381947 35022557 588990864 67405270 391313231 124720356 225347698 650615191 955555424 353437775 423128197 477466825 802290400 240118255 294076118 561216512 676668502 173526936 314850939 930404222 991377197 699239815 754295732 338866533 858478281 50044097 943471937 410189347 439560458 275031881 745048534 49100155 507408852 276240976 520715941 872682376 996968526 367946376 662138047 919291860 962753296 617647340 704210625 118576359 644188102 412444100 514206113 481852945 791926019 579175082 774943098 613104702 642876235 752983380 778160380 5125291 696396144 371894213 449135087 525767179 663585367 799801869 973027018 719364586 918005626 131826822 962178334 582373671 879053184 873319709 893290028 936009713 960485178 43480970 721577575 314301563 781733465 879937559 934164121 588543529 823525356 382138055 847820443 332423206 662809611 850812169 972197182 960845548 995008411 842447793 849858326 213048538 386883591 521939435 889317063 647216172 766842657 18554474 907199583 932682991 939537116 334866603 789303876 910320418 951366522 201723868 717486603 844505693 860366871 583163466 750186990 472754612 596171590 338432678 578580147 547176595 587496286 559610298 702010210 520405351 747702774 511682937 919374673 715207095 948930440 566439670 571494144 936641134 940568708 953450880 977480988 430224565 445808283 432756618 627525900 433160088 703264565 308807522 713283980 479814384 508111708 355209771 849410955 960325775 962719910 83250313 293543326 725058678 838585779 267808126 964112105 204057040 441813049 661204763 834005261 964089107 995016319 36706119 333768660 430053462 712022771 968601679 993746921 430995558 683456195 508706173 603015279 573150077 614403432 425750051 507142700 772128958 782675631 576422625 673263646 229499451 735987459 43684500 228419993 579196826 877964361 866642021 991862634 557291173 942106298 91159877 859365140 785734173 814673890 760760366 953430972 113352968 731437842 200582996 634193399 561982061 928730078 492140410 775825588 685814426 996026813 158543113 943671034 632267653 844402247 81687449 184722416 132959973 438346713 912402195 945962911 710942484 951376189 102356320 593719794 495859696 561983016 97147768 745519115 141261561 225509533 638930775 858591832 617245654 806252966 604854848 872859305 620367657 724096622 76504193 259426321 465064514 792440917 288889895 618395231 647085247 946882209 321489992 907835851 749503404 963303799 808024096 940260465 80873417 615289313 114830398 929423049 502119461 955175895 402686932 995534422 69999916 693213636 530928146 983071064 527552172 823056782 195003129 732907068 418336162 787660221 313400505 341756762 147432205 339602078 984458482 999327850 181445429 813989114 361468108 904881478 159786380 902967204 110339180 201790759 712232883 736897895 875737261 996789068 774499178 947616896 634451561 718111931 110264711 302140571 997975195 998957435 219432474 679048177 418829712 504688235 729377786 773977130 59946109 116759148 340549557 702186715 903663994 973279986 741447258 870797948 551076488 694250731 353478985 643565808 491686695 731228412 390271250 542148307 341507018 600394070 809063322 992938762 635832419 814802617 146320381 333987535 847016780 902452690 455922829 638758894 713191212 995932205 751336397 767964756 929181925 931713402 721783453 838474857 243278310 797864575 231396060 304774820 117944734 782255701 583262843 751341955 115923554 381849359 855516090 855982398 138106137 465503957 758492770 943776835 93928953 250440288 722923838 958459330 100692692 935171102 564597403 694551306 776356274 876558482 931417649 942390392 162825912 506241770 215639850 364544807 986371390 990194886 874319666 934119482 664388459 903450151 876126151 896648036 568643519 588571281 998519619 998705860 253606846 589636633 471635934 765604511 157417275 510705115 581330200 862464339 634760601 938869341 993970899 998543987 461906182 717933334 608799261 703340140 400040401 575573560 161467380 583677278 876521162 946221356 966659439 998486842 574619123 623124591 318547634 508314293 553971550 938908605 331388604 489356108 396496113 616620083 61693651 562320396 9565764 568302833 745973006 963526848 702700466 865341447 949491567 966114581 277305053 627175841 341332038 481386505 643611560 774886505 116914980 754413268 170465052 640875065 740935615 893969682 446578852 992008428 30705175 636262765 576930501 589000741 333182254 699822355 671920920 947185345 22800692 236590445 514808442 619830202 699689392 865808764 623030684 952730114 229290822 374038670 863152111 872386169 342184845 643966955 412617100 443804183 185266765 676515658 603463107 652704862 850676178 852374158 971255946 972209736 769625663 853291035 655649962 998859583 363494367 962248499 525395721 655332230 882658077 900859818 593613614 930160441 859696704 941383791 680127956 910281129 143465935 582639541 796906358 911975039 404947961 742525813 97256516 822237386 510240711 572313237 647085297 985195269 135605081 826695201 183225894 344131423 378019997 698693713 588365741 933805691 317580153 510907155 130400107 823694928 462585899 818222958 612378935 898743471 37706739 152497817 831152794 860576308 784441546 942533116 694478268 772052320 561788139 728483745 763366478 923591656 657403915 700044534 44958054 322538539 154892819 356251647 873831740 997338810 247340726 780688189 135179272 196705090 244219545 841765952 54893177 762558404 417963668 653209134 865796599 885286464 8175470 300362086 775666345 962600129 263434787 386338003 862495015 868674019 408912027 718440436 280705156 547492857 689494596 977149242 546302618 686668240 613291732 846343005 321697381 723846577 46285064 982867018 319293722 428622851 155655089 314837142 854752219 970341617 796424553 814991748 239104037 609795438 315187756 807423646 794537094 972579670 901915138 929619653 555144527 657283482 837498171 869972658 608263562 934715401 639929848 805912473 700231285 722942606 899371289 983704342 796546794 972238944 205667388 738062190 970922389 971693524 451271644 932313952 887852194 922115716 325893510 465575874 831212497 986729751 866865976 980096562 824753480 852921505 70686194 486213636 631527050 862327281 330003551 556325414 582081333 927626871 872015723 957326765 853923393 995122167 808539969 825168789 269601215 609398576 737899765 939599193 135268723 667211432 419020236 823625240 317038349 552980969 734777176 834888340 577859432 854989544 815840677 899837219 995742167 998683670 284936513 981229086 657672043 739606319 478993463 948157595 236390513 622651761 663454460 976628986 131006563 172097539 954628345 971517864 928526629 987151516 182534483 683805095 333303713 562878042 909324262 958150152 769156617 846928304 567264388 949608833 469433636 469498184 152658284 623224365 39978631 323287162 378974022 398088339 483991402 737207801 225242451 795001344 746012406 891451359 70434867 153368528 487538785 635539645 914049514 961787130 844235958 908323099 351372050 802412597 913996302 914812680 712584043 836834766 449221116 607133463 278243917 323670166 508338814 640588635 629017886 680971934 87829077 895721491 787283404 985387439 520623032 840974418 879012600 999319313 169321760 219712277 889371754 938272600 784359720 876088705 9896080 625068436 614946705 754239962 393042488 966191381 949956188 985019539 878436725 883474652 844114364 893063698 52809390 748067482 290061167 338168143 62005048 419930401 546937019 989791960 672418580 759456557 361027586 494480775 953615299 999434234 771045733 869859804 379035451 958470231 159192815 971572947 887700692 907257516 762403625 797182618 18370765 296115843 316182476 327269457 357867826 797504868 645172893 698413582 389773 63659311 688714269 866201036 567280317 671781707 218893893 584163069 592459243 759325375 102828372 487162356 270600837 865840841 67900986 717285711 618648414 912945948 977799208 988268480 359071112 545786326 740052167 964306140 624062177 939624368 248259743 812149963 504618532 536261884 743596911 777289318 860761487 991297405 940404409 997750271 246554341 768829453 212463893 736865609 869061399 910474898 595143126 851269554 232303464 584633146 140963798 304619108 842234101 923041366 426902856 533522450 360160242 709509317 691940824 878601180 232065972 421230137 824626515 858892341 307882750 316776325 524855270 530122511 281061100 455441603 837458917 985532592 432913773 648080624 151694801 360481959 991533212 997874622 104479346 291002153 606253793 713519890 244500438 595088118 589730273 954211670 704829996 975844318 939179647 950624100 251571605 290255860 126839521 660078950 857575776 933387946 399462410 555597230 366939787 757338382 888378140 962613014 927949056 996335065 355254471 459100251 640385443 861569112 978552695 988680717 667955862 703159490 877113947 901803999 476427464 692345768 657020299 773037668 243515261 539285442 306463132 552153947 697669501 816112296 732148026 934831929 841182555 879936338 38566566 286268125 331381029 696806488 899756136 944162749 961865749 990445647 557429521 826123968 667864108 923067221 32398010 875800616 67181430 116206402 829462222 923024950 661860281 895130854 510527495 911740457 679712046 828504596 379901177 713488979 157825122 564266295 521088498 952601400 289263119 556137437 9901458 307358514 854376552 895417017 757717748 877246947 963352246 991091926 33979423 697068829 464514506 705227446 794597095 895979810 735133199 822777463 354616187 730394899 378794274 525855245 183500260 899578185 432607886 742446569 281348306 581572823 949738186 963104229 182667452 516736461 645561812 664147971 255179137 396843871 813980993 856986371 45357133 714576508 823781446 982919223 417899697 444857614 790869395 806552894 807572688 893197167 153244191 657104388 494450164 507307113 364922909 618446526 605706320 616202135 826726901 975858165 179033051 508835182 161940448 454313350 485258803 560749602 804191197 865336558 549096511 561365204 585674426 799253413 636849913 792635602 402712901 962128315 85687454 539209244 897971977 965160903 500071667 523706275 59717928 175060651 135139680 343005795 864680462 880916757 988193058 990892188 663328566 932541504 514497286 627177738 490396365 645480341 260179658 609730919 399870334 982911239 595870382 638483825 352930373 617002419 440527264 794284644 586957963 989995826 817125948 819029421 926800514 946701973 666543716 805109357 201375414 747084848 49521639 404721733 411289221 706422891 88138420 908861275 483997995 528942146 576919094 965180920 996426275 999899275 320801156 708847797 540742627 743864351 209837365 937610133 16236408 312943615 65233140 955308130 154033018 431876661 156856713 230697303 99797548 691040987 704109865 748146101 505095739 956636693 149400873 155476636 732684366 839686470 350162880 670691279 66222527 657092389 368213461 680159489 783572908 857616232 261501557 612661986 419961482 577469987 27042902 77029322 396636040 894161856 220049518 505146855 925098447 947429058 456383439 907925777 573225993 720975079 374911892 834619732 994820563 998343846 753929154 847707618 410125919 893761897 940453628 967675906 452366360 590320886 6404682 944871670 747250517 937658282 868047278 985119702 290778580 716897566 593047387 813398442 724634345 764339980 482776408 486744902 891265501 927994064 871545522 919464308 285653450 782077123 584386670 819873382 851948954 895547893 614271769 752001605 476216205 852278166 920018365 929387477 120770659 465207210 523982296 979947925 708189416 948504408 981760908 997521942 49206868 700575104 434955142 501989165 175955111 965212688 575504093 650064138 270780219 842178064 42345189 691595927 507561826 563939828 614784116 712287546 868181353 936505425 420648405 643430831 338446811 565078913 896727416 935018276 138585652 289565751 875279628 903593836 907502805 966773397 856759694 965944816 891444826 959028194 439687724 724308168 860775841 941162401 951005485 989969206 222679852 956401006 674531367 707421894 442405657 776152006 788971857 882192472 278650666 307825244 209438579 640143674 989791512 999112114 738438479 968306571 968253868 995489381 31058541 489355783 730284459 951542781 90527552 950665752 294716551 319198876 938630125 958925131 327704301 415894088 380599872 826512592 788449513 967141701 582899828 702540838 81539389 441416158 815077065 976196670 926010770 973139314 106598116 866668456 645244608 762394847 662513581 843724250 183143673 406017069 686146678 995131798 888098083 960747265 613034029 675209396 200502699 365440010 938792104 969757435 312640713 956290907 587882704 635923972 66561074 606614166 219838465 813706941 977214275 991994050 558325421 849474683 214571412 869603004 196524434 923633585 965104889 973888166 527848616 903036915 114407049 603979987 666890104 892482101 901764688 978912110 482787875 494260818 115915983 219505817 820300390 894638077 377201005 923655361 308674803 712275694 764564378 976362337 35186270 941590087 748128675 948878022 270115247 629636968 503597279 913410593 468079724 613383475 250783828 953407861 634396686 749541069 374351867 411641805 321139485 761928619 262216147 996669905 96500624 361036819 445377122 577723036 312450049 619114811 260229102 382496659 967283061 988505825 571302057 867979333 232660506 993446737 572735877 928269850 813700452 869888523 311511482 669838937 657228115 939906005 938628327 956308193 459172991 468267177 556000688 953103428 556710782 599799546 527051703 741255270 918526200 929982894 150120048 597831663 721212245 932076683 735790829 742954259 375839719 413616089 348748517 961642060 95368416 349829289 578234443 972596360 823170682 872007364 981039616 986373400 954200478 974329279 445836165 937884945 326213791 849274932 460890339 524513982 811639906 833794663 802732051 810491641 488974007 642574514 374478444 647382153 23223888 601226885 751495373 905525931 628675507 956153815 709780372 732996232 82036438 447321265 537512888 716982420 464071300 667429721 807849215 958783524 975726242 986861195 754968148 941209775 424309890 844326563 784447351 871289692 603157448 641519103 858899348 901651694 258420369 469366424 732295678 918815739 893646488 966973127 366978176 491460592 264954200 797288220 848897283 939730295 391816359 419878377 413647635 585900364 570216009 974196558 579971124 753069805 344584231 958319259 629137123 846499023 117026941 978987375 637368603 972696690 7092520 367762948 627102513 830264900 367113585 380576537 402558365 633113944 808884627 835433389 579833014 795746297 406527864 728106190 790352822 826877857 118978582 354166116 956580410 975496369 185823670 556604819 739548917 983666311 328560950 425701753 481935346 920602632 901020800 911164647 889775625 982945058 497958288 537455828 373767791 403809331 152420064 788882312 853913651 985925897 281854907 841033061 61451367 350811990 636030303 864374893 439591276 525069365 637653142 684749638 807597133 914938915 206244479 374242615 550748439 556510280 791548600 804823065 102454595 656067228 950916882 960767184 574753007 679275359 202016007 825317406 296376506 432911574 152332063 836151646 583336234 882326246 611171024 943061902 433084498 578581820 463571732 574434869 53334955 214053335 930648445 954488476 305703977 866559416 324684350 985391321 478908326 780621730 575632541 718307497 297091780 806948575 157717962 608083939 410055445 513216672 638912939 695558279 886886609 963706975 229530003 820830190 921870971 978836311 13045548 158583669 218687786 412823391 443457934 487150985 357704458 656683944 958796980 979748708 29660108 461001964 343874017 374369964 318422893 663374994 917019226 989586270 414906592 559546242 673134809 900099701 977552308 995136599 288029062 755819296 961990526 962413669 785271932 994600775 601240576 629379041 585244286 996352221 660399665 844349828 602166935 847069181 82192801 576121753 372703203 677071307 647268469 883591752 587354884 985378763 514389274 778276527 888354920 949444233 907208225 951541084 394904176 756237227 206594965 216538674 180750158 313427769 902698398 909053397 192826397 936096484 491615115 712056400 894931908 982769079 261467267 635813417 630561236 811449698 641880459 686658371 478667649 735908373 160665996 834016479 687799572 870228235 15124526 462463213 387109263 702038263 42789056 291745701 61781263 155261789 121798458 524583525 14131935 994686462 138442505 510240213 279131925 436578336 677617549 684532059 648977046 943184375 391502366 918790252 727044651 966202350 694823632 902873251 90607657 879266600 903443255 904639855 420220911 963262382 502756679 726592804 129872351 342999845 25228360 208265866 950418902 976806435 859353198 887437894 459470413 999578333 864750008 872694436 468024370 541455606 801339418 927799064 840801658 866496045 360664501 759727485 945979596 975368970 222366719 660655524 261030928 996429040 917095484 928868003 740492161 755704631 969303133 974741708 124002804 471437460 481761955 961436161 806428754 815712288 111310295 235401079 631606729 661745024 36928452 109038838 22395348 152694418 792683378 815470251 791887986 911370321 879810131 924560648 313290721 361653988 48735057 340247770 172127868 598217256 315163506 975090125 325352044 905571749 535380362 607079235 92883061 357670613 759433097 826730469 151901131 192253717 582170871 803614287 66898869 309718968 632963117 812935881 298689325 641073807 638197607 902211948 369730486 765145692 440676092 767296794 913593352 968737713 857578542 952090307 982891888 996227416 634371333 715961218 784198060 844518236 895162755 923376934 996314187 999464652 230881360 634937793 794613856 968607357 250561366 841525257 976000420 984668461 411666650 753632320 807478902 880586807 218204495 551533749 139948051 999048703 440200682 589645886 365529900 836769694 918335107 981466250 541051235 809744263 863374327 966929117 813340870 875236554 59133532 195421980 903106885 970704787 232625870 874178867 172800869 573908329 241497096 252657251 652856991 856559643 92548722 647771722 884639473 943599015 746492357 886992193 368626682 472170314 212053002 924346879 913384119 924436422 481505082 578771645 11833044 387944699 866712865 972042757 990764140 997996706 356858400 390151310 860312118 893994227 34454750 847924057 194605492 373145760 740969136 946344667 415380281 432856305 924676390 933080350 414656729 457240389 151548040 718875225 90355723 534441012 947072031 974492938 492292704 824234790 932370944 973899903 675584163 712056796 954661951 971687949 733444635 820029421 502984760 718167457 81086731 999643919 739467556 959941030 578758181 861289935 205787151 919231693 661090445 702962089 442755631 497097875 78989477 342779927 60952428 822202169 773541988 786211154 521522997 749405619 908007913 967754270 923799646 946379294 426746891 912812213 4727896 30010330 643994109 857440402 110229764 477965290 950181078 973100836 726202496 938860415 27172568 189147409 64461956 78799015 15238746 476743793 315836200 437803696 75674605 508205668 96950151 643484552 220042141 269729522 664581967 773703156 660554104 827840162 44407861 612288417 784181490 853406510 780916969 794120036 419000641 740744451 899825852 956421550 710770606 977416663 164714317 501193758 302908487 326704088 612613217 680869254 740720467 916699740 708928458 754179186 609243198 982968115 212807584 817451247 227625709 556281251 132950947 149627469 186679435 398990512 823834989 971850082 205303294 373967921 868501397 869253732 483430980 533982585 98121845 384649694 527778594 901012477 264211826 539958128 284352655 778171223 18739204 675408592 804464650 869046096 629468572 712578031 648707188 882928874 882908293 975351490 623159019 892400761 530194565 908353660 812186057 978860942 888101256 994162993 989560588 993921159 318884579 354865548 38092223 447407521 257593009 548084362 233708428 634766270 688182705 947717375 823374852 954613136 211768587 882261054 149802912 330932195 572502974 606782839 26666643 601288761 42655247 929479655 567117657 803135465 312911938 873909573 866604533 868290680 405239756 572828021 343679623 418458045 252786225 479440324 296379775 399033666 255019660 464505975 397827072 665066804 800251712 953115314 149312680 947408077 645096920 932906864 219503693 499096165 343289934 672077248 161156273 335165892 731870770 824235939 595326072 882464916 690879574 720580007 251521641 568103211 248667186 866824980 530742791 549711201 929876595 965451140 264284460 347212711 814421088 981455846 555733066 657821545 316382223 614383114 909183020 995148380 479784942 643885580 180747196 235085448 690900262 935684891 477187805 909038933 920495952 998861479 775051160 916576684 135180478 379460647 95914516 915517909 795380213 931770570 426884562 627646748 366695405 930480042 193750705 581309105 329748938 971805732 231866725 515530565 43687885 269714908 356724328 837996352 793012465 881638687 821663577 858319999 109078845 458049943 181161053 917220296 843899505 866954872 722284010 864185615 738284085 945706842 813675901 925653565 361855816 479307557 731890146 886078538 645773571 954386809 38505449 555838495 748621366 800991749 899212932 945654063 75265740 517553254 391157760 830197847 871037821 952426852 262943953 933457956 733134442 882272843 162957694 578752505 793247408 817614361 874602102 965956403 17784766 157444102 22121425 706016508 480210572 733030568 684198286 931535003 231988351 477676506 104961822 415667092 646616211 775972813 630414253 916506148 95854370 975464224 801120254 990828521 525105039 580684941 183126264 583237212 56245600 878359822 772987648 968952150 590689869 947717661 901566074 970746397 551025321 856140553 463997195 957595106 169748460 592450223 335097810 907062305 569144517 635097071 554532564 593532017 34156035 96032247 49917785 756869971 755482543 857597836 317960487 501347139 589291537 767312462 707389577 713562078 117066718 602361943 869405727 872130425 785542395 809870373 423337411 886096204 702333866 743572751 601117521 846220907 968537578 997169342 131545451 226330134 676809126 922631627 537367397 802977573 186419507 716150940 543690760 804254236 260422255 711631014 161737231 867874497 857421028 888142245 816838879 957156421 33679840 317729247 973346962 975159414 400624777 838221046 204347159 383867927 285456446 528316114 391858024 479009162 184356527 266649602 540087952 936088400 353400122 585073920 479670575 608215449 853932097 908104963 300950702 352421198 28723860 580360135 200597542 331513702 698855898 927852460 986773103 990473637 866735886 907964335 40030618 385381793 619946312 949038825 643886160 664454093 338994375 647977290 329850712 766072765 209101023 831389026 714301867 773545939 731337488 998131164 20772757 761035362 766557600 816047840 87306286 680384137 622432083 651838880 568351377 887028698 603471741 658951835 166128189 603500696 557655984 740708295 616730387 757879222 548767684 959655738 415323503 924392568 755980682 855554406 466378841 590336624 353912320 646814951 972056287 991928153 345535264 960744845 797772925 894471821 671359155 945104847 620212318 841296559 346282234 837136537 946069312 991231502 400124581 538868694 726412400 752534279 913852791 943492230 567493140 883402995 143422164 431762365 271966880 336341600 520810269 613384252 885527767 994725298 373614630 705183288 851867242 948673641 76633575 864299064 591373536 698704522 789582964 853893663 499790641 998585993 44967515 186546661 879432847 931988692 948655265 981193688 986566942 990424608 863418801 997293686 97686069 597126335 445533168 927986249 496826985 827631708 783950123 795441983 316354889 856472828 124076822 712547295 571673440 776757784 686902075 688475557 556300661 596455468 70598122 456614386 171131185 591896482 584680221 726076445 774456033 827265568 274319923 456849758 563657829 880844465 425535691 911683998 843421271 948444428 250014344 504417483 605911953 811415520 569642942 798540980 142693235 903003903 734118051 757046349 840924053 957373921 178766849 347860507 250526953 851505528 634026274 892218939 317306272 353288432 270640263 416536414 826789013 920720781 924955840 966952752 272838745 923028734 705142387 865195984 146196525 277509117 641888952 683429979 994710533 997557887 309261776 645367093 656553339 806577021 894352 89951666 964273224 977739442 459784769 972980640 228199744 346948094 973204977 982756242 540317475 904030735 756922020 916296764 88393690 225369685 152588215 226748422 805329198 997231448 452656517 692039641 101863934 944168838 439162459 925430578 708707478 814786667 223551072 435490047 316516965 381211026 827990105 832538445 372843235 726607066 575889881 932929923 89297550 912277894 449792322 549264694 763395471 881662552 663717410 783050148 816714028 924728248 234875974 495062815 725172262 872226643 698978599 912666565 342301348 421142031 205431566 932051902 186965769 562757710 197753907 375044702 649445707 861728419 936745837 968718877 856499887 904144140 246944498 767810282 161508681 255668605 900776488 907077541 972637896 981213364 175801414 481182163 39390169 725662965 565121000 591096439 910910583 964605075 204537436 272235351 653175208 806243836 101365454 867161478 949964349 966618331 344319968 806827630 884045594 901677051 290564075 779112017 682927376 974378508 202020165 838428469 569763534 839472679 285489287 540463004 203602902 336055179 78070510 454548373 226380523 708067101 961730756 994803537 216822484 974596598 684675731 938161079 749222231 970274499 972739956 983536939 172672129 977467475 470940268 739000365 858129397 937976027 191268296 674237614 881490511 885201325 776947797 934537412 341257916 480334880 65777119 989633058 238971564 949656477 571077370 740384082 456824110 692893002 469742622 472081572 773479683 817475955 717410374 885971814 453583505 602834399 103518661 769140098 526215728 604051349 361570419 366637011 589429999 890298603 127635095 245354194 440097163 679232850 27033588 147695507 37151684 421046442 678552456 744894084 324253626 412441150 417114362 673104782 72316671 264761944 559054191 596963907 446724775 814060747 647883241 703170304 805183528 821280771 985661205 992337116 16764545 687941044 416036550 731942726 128760424 810134495 339910576 433839756 693423576 848644176 266624293 397265290 895909255 931333308 456505920 991826542 95513708 466946274 494447459 980110931 381229388 800279046 997567980 997570573 521537016 896373745 511673458 900814824 757120297 946362235 799385753 917929421 516280391 638257126 469801357 585109780 244703455 781546554 78717406 121812753 730870789 958434963 569865405 922536218 223202194 406769758 495664747 570676667 134128035 213826213 963669253 991329915 361706545 455695511 396927227 497201176 659581079 669305161 46435393 491614937 514353125 556749485 50198754 326077904 390243070 578409754 197690813 528796270 422765063 700503640 149560273 587554748 445067879 866727198 534726472 664109703 285923304 672059916 66222892 685338115 109587188 717276568 947628803 983131248 595938766 828896972 440368912 998100469 71915236 674788398 633594411 901999323 572693079 721721008 647483017 821057934 61717673 656606832 95355157 622461478 424091088 643156146 338163845 776438987 436574794 577873907 629938005 816695680 491866250 646119082 980497555 987362327 868260698 974179711 232185432 883975375 927690180 956294108 36970926 703566774 110709323 343290042 194029896 228291833 210507372 535380088 667132190 838946428 357999981 668230436 541441805 922182735 98837809 801517340 158229334 294202133 896223069 986816481 672069176 793620815 118076086 838529545 584996899 965267262 279423520 971531349 200993679 386517802 265175303 623812861 668285771 903965674 612464319 702144800 319920571 700437861 867451366 923124210 93276233 254430045 21741822 37553228 968241466 993754112 93735122 947167199 190508496 605325283 485448015 675421670 985842217 990535799 994028487 996636436 538535226 946443771 833891644 970186532 3879358 644874497 805090010 865350398 621322734 648726669 156550465 200564215 801876215 959932465 243998083 867133995 820178087 834871191 27921257 273978726 674759714 887956760 840944515 939728600 795089892 802608457 380581857 637404412 49963369 974695432 726098870 817194757 369451535 531551734 809127630 812904523 491638053 555673923 739024053 992458572 266399509 956330873 791143749 816841458 309497914 339990710 553933335 987938649 237696958 536546329 732292800 840768798 560415024 727412643 777091060 800436830 491085042 984514905 532098885 670534219 290849755 341598970 536673725 687555590 975102263 976112405 916364301 950622953 575617855 805313226 862826766 932255065 762763922 855733385 564247890 946509215 698642955 857964893 172637133 992287157 969483697 982529414 365212814 606985589 676969567 934663519 389164898 646389303 98593697 199103003 666972087 933415000 117278540 263800971 670491495 709253744 113211746 669119112 856060320 910583187 860904161 985876006 949111327 957558905 277059611 878033493 120334153 445786508 71371475 153586212 772009263 800536353 245924836 709441499 635105578 970338332 109988445 501541454 295568732 733479807 323750822 659826110 766495760 867719870 711903662 936773064 725232275 738411691 741408565 881476981 868901148 945817388 321464538 763403372 490103502 647091063 731961318 766108929 644303568 665984804 13711295 581255020 19380798 746282892 542702902 685957754 149704652 895351204 917031161 961917569 806980328 861630695 547634221 754709820 462770195 566876723 961903842 977684163 958124539 972082418 648750951 824775454 263922342 347658726 782017529 801322861 652822175 936718783 474225623 634712915 954926876 983981073 277851767 956839156 516284668 846262717 397498210 502319240 30412618 50838575 29278077 809677419 733321700 991648031 614062868 943511472 951054807 991850294 204506565 990216741 744256344 767228399 486256018 856469119 536801961 942667227 431024092 550704382 658105475 683325352 68181233 678455316 560877766 850716712 177634464 624427791 274597648 699501746 804597092 820056133 283119021 342123909 243428989 856108344 838856665 874211499 521301753 597972674 844598176 971786895 150254688 559818867 675064218 862440921 977679429 983280057 311736372 845942140 983048900 997528961 758171221 935101002 977404399 985030045 649065611 886005857 305702315 545578868 568933549 933129889 31083993 578946774 97720505 225237662 343105677 926167639 873882102 920184673 87206412 253624578 218825003 954333985 406727597 807264424 39924224 580218742 910235592 920363310 471235314 471818702 587981656 938942516 675953601 966229543 367735779 927849923 900876822 990741609 123167927 718874496 44175448 237048761 211873274 361888642 42270815 501693847 890225928 910387739 934145400 962087234 455087987 738560796 829958641 838822937 959116251 964687056 336558814 965072900 67987392 483141231 449307460 859545654 629591401 801462876 295842697 688512233 380806813 630185730 352612332 667614218 48758640 467864811 783520469 890071368 26053154 697095769 4039634 296408327 72848797 669612774 208091817 480060495 468899889 866336977 990484232 991442254 840506935 879324400 782112919 804146865 740522402 864969001 743778338 834356170 101661339 572986106 489610342 522330374 252650361 809532179 46645298 570302627 450323308 712388207 49021317 263526360 396011230 962803813 985571118 998497111 960936026 977221942 239297316 613689950 11634172 939398185 46586373 686351907 756600428 979812216 752604219 845656466 953626141 957979619 101026569 250016234 951385250 985192294 770326668 977914056 364983550 981529133 590594534 920183063 841177001 993189201 50788807 206725349 542632631 929174617 226420651 988477996 58569149 793693892 312652967 924126613 33801973 363773878 365943145 810673885 598311968 773594287 87898013 799888522 972419949 987421366 245359167 577495691 387158958 778976778 460782063 580648334 808574958 918740760 366836873 768013327 386853221 676138032 294019001 331754972 122136477 879480934 602054815 850451297 695672593 986226259 282770012 759945709 747835793 885663650 202728628 905900451 627559210 735307412 798891779 847866019 255866496 872870511 636692063 950198369 256444726 887478170 30465250 471996819 980924832 984773875 284445261 354805884 716099584 923766064 140505323 684069202 776162082 997295590 514256750 912593809 290025540 979734847 717764379 955592469 665482050 876648307 360095765 392920526 179237493 906224759 80136942 163076404 312606943 493172874 842784426 941535556 499948307 957611127 667104914 952363214 389885485 518469543 374199128 764459144 916817181 957656608 723210034 900253372 751584812 862237617 199545825 321960639 114182021 624252331 320999493 642229624 336053398 999604033 403332427 805364463 541825605 841993693 791089661 911638037 90161616 211190613 888950033 908650645 553113582 610690538 737540624 774885820 834572805 863665231 381384050 854654362 361967433 734745810 873299476 928280432 680277874 885066266 873160745 989234300 764124139 789238545 200607708 695231172 286023587 463918400 443237374 793444086 812695657 922794841 789485991 815594865 949898568 988892351 840026775 982423934 139321305 253271102 416468916 945704627 439361619 902617716 72950696 771774494 91418197 150370539 171429934 309766576 566686595 883762893 554169212 615235241 666361698 808778552 582152066 899413510 19360798 616709456 913772256 944473903 135625708 423977610 631351073 862511626 572261646 865490253 36864135 359803561 970285072 986449039 49191131 897892783 209439831 961811813 542708121 896553542 827814962 998424082 652425738 712864619 348461766 531163097 738849865 966188309 574308211 583466755 752672662 804922409 735821841 822393272 476054134 517099415 128416135 818753807 857071072 898601254 48817896 660444810 295068210 442797367 184544786 426505578 671078824 921624309 656661926 667837256 195180960 839041993 753291090 846391703 619682865 979543892 792610458 950843489 25042418 563625638 819185838 844827968 563128944 880930595 314944022 544363058 845495681 863648223 729853651 735171365 47966447 516857306 750681637 905569072 500274145 916650738 443444635 645283632 77148265 160258532 321429623 636445687 654389502 820530545 354075065 899849436 598378188 727906207 740179397 867722982 860139403 979162495 936216730 962104296 493290953 585137664 760314929 922011643 607549094 869250765 667818037 873863084 664866850 820791635 723669167 848468408 832471766 919476043 455819654 758486079 315070051 821162397 166438699 244599449 118037718 520122402 821431436 941662354 693292297 869621452 432649694 459488591 411756110 645533011 434876966 840419440 321151570 322070212 452987071 540598622 364866411 859103006 267406358 982624768 384283799 686987554 400093906 517663883 226651612 722372048 954453887 994153017 412802716 762532423 408842024 807768161 886502392 903522380 508358276 530445336 951509670 978966914 294053618 693551398 908401638 908718410 394823304 590824743 748430413 961498344 272276799 373603953 438442861 587003306 865319523 900481276 296088709 387479311 656749548 904573756 537088140 784098411 773208774 886632763 228288638 539372473 390223720 602976087 734706213 741715175 334871143 427362765 290131566 997486665 644599638 887483014 585293521 708925499 427822460 715729600 613125772 943773084 327123833 744040281 479524154 660136052 126846496 437059259 142207001 452243650 92174375 286212713 640826611 876996794 839055295 913595196 223486750 833640111 30724637 251699583 736572174 888804520 493026789 926502133 595393437 831723084 808388447 940613587 530979217 985808773 6245036 499173242 335984982 867163551 190380666 632989813 920184147 985071399 683415270 818875721 741983797 759260982 866194077 944825369 516653555 656668795 737958982 869561608 848213180 960992805 131036657 906008251 410078537 618938914 965522947 972859720 393884609 634409649 451740709 534578866 724919777 748049770 492640452 832805625 270057930 983966744 673963657 907737977 868744856 898846840 520410706 813057717 688800435 951490057 141248246 797203445 237007842 476247196 260126259 983853480 738802242 812641414 983911928 991792808 787006095 876163453 157268241 814575394 534922569 904918815 128518744 915700519 888113433 987235408 837807946 842154380 242290348 807413055 540028061 617481613 902619531 953696545 247862981 640785466 614748881 673362401 26031443 529247599 388496744 694190543 706580189 819686455 648108507 648867160 117208037 383293029 380035055 466146321 705035667 808548361 129510713 239140600 865953956 926212805 322899849 400050685 689678568 824197442 422715218 910823943 165147336 700023450 166818869 430031216 776269684 846656546 7216779 71712127 113668292 884372764 797674524 817581285 244741642 818305981 200554815 276118191 810774309 925953644 402106715 862413856 100220120 610814721 159415193 331824048 847839011 850433197 385155606 775884895 295300682 622864471 510638578 646103961 802346967 858718056 484567855 600590263 66899389 928356041 815696193 917331730 418057622 485518806 54903189 824131937 458621178 725035303 890428231 961828230 444959537 621059129 993850950 997226619 139110383 316499382 641865420 974308731 639756263 791574842 727284836 746024438 899398590 970507694 361652157 888431633 219780860 404430599 210466773 373316876 672658339 805258172 761147335 808606888 664318009 727725976 665050414 802817173 563868664 649859802 803554566 856135381 990223964 994642860 460872985 987591320 731189956 975946403 139582016 749645349 882644732 895113371 584163492 852065490 316775912 441142306 342447886 959401802 950583155 958507925 501510539 873079468 339534096 729096922 148232340 550830645 483865600 728271205 175508208 263391795 600483419 739157882 443573467 899734359 393372768 616286455 926959252 981547045 789591101 855336967 465752621 783672643 470344551 528063770 679646426 690366047 875534928 926657294 999204744 999418016 675491571 766643402 919571434 969146800 309418221 782741727 326448409 998245719 291380888 991541696 981079609 998474838 391504881 502890936 78329571 89161962 642110782 909639585 648586922 934264105 162152688 395278454 21048064 166775172 874429858 932623538 96705237 473467711 77755178 301657627 61107152 148253581 227468860 708997552 445381484 749872991 913447481 949434105 577771969 882753850 124519209 723128594 401205171 474298585 219004433 923059496 21865967 279073510 288282690 902697725 83905428 813450877 836040489 983676707 482309785 675982084 552273301 778640811 627357689 904892854 380241774 778017769 997369309 998292250 129661015 600053252 928408936 930887275 379443735 745985318 563458896 590699883 67078110 419029450 143037609 845826102 49535641 736455220 70381496 397727641 667367707 870561528 796942826 824595645 271287150 702999690 888156431 926637040 985121014 992291198 43296092 788358888 302694266 389322434 372863365 491416059 991716746 997782362 31469680 900622005 520082175 913268261 467735540 709602884 768985153 949450470 215283848 547852703 32835323 566248203 128119883 749247367 615938001 878137029 518005062 630319089 510478010 826698646 337535891 383081851 694574192 703507632 699985784 723675617 711064365 858989027 668619208 684569103 731418947 951284606 271163731 977120131 59435981 401433066 119049678 864813441 417337601 934429735 613550516 966290085 618024543 892179803 589613931 727048340 306416794 351432773 177884720 584924749 292183691 912942525 439846952 952463713 30962026 531313549 555783803 700319586 968365925 992713145 882487630 892577303 436834707 707906046 852205868 966740637 583646161 889108618 726652361 729159199 695168083 948843857 655288181 694759874 781104510 849996508 669697389 707927793 498959354 634143380 594498011 971910532 493940950 829865814 778689785 852772127 553034029 812291582 598228310 986177652 710061830 925134413 818406817 938577045 787029446 824519714 858177057 880344866 203466113 574355123 621878698 813795360 323065464 929741871 281669110 957588731 280577924 490194918 202435509 686394485 846022777 981304385 828563803 836612096 818194330 852999015 909529133 997569054 257072296 927523370 158946657 268448468 850645810 857934646 786249110 860478726 507173888 771496720 707043743 768167015 455637567 595064550 236020652 858129507 794204001 812034186 120745858 588507634 451849208 652373295 649779788 893365380 94534361 710670406 809179140 860587546 123556624 865747737 772688928 785370000 972936110 976191551 95872189 776154737 610096099 794686713 646772054 713887818 669626119 856797354 25698254 728459361 198588683 835211583 828100334 951135646 600810535 928900271 658328240 816978082 982605322 989787489 681146932 833220509 655937351 986917550 532435280 928599154 121379531 402398466 291076801 773425992 916987033 986485467 359762610 543711797 475581930 646820113 674704424 902279779 202219840 223525420 174922805 277495186 802590340 902026035 345022695 612312153 679246456 990721860 737313259 838945773 409602340 414053950 229851153 678416553 75157910 502543739 406560308 829147198 67015593 577297339 300177533 312625198 738463740 783204418 228109172 496894710 484692634 954043226 265272160 972415385 480756488 918330214 551082633 689534682 78129060 596013916 330570133 342412884 547910957 833420556 961402601 982106022 695255701 854207161 553490320 855955732 594155206 646986714 211134591 367320835 598125369 687112759 366570653 791561364 204095600 405415910 829327621 917855108 602459795 744755553 518950862 687706519 213102446 413069841 724488043 868731559 119938137 736887561 621168732 940133031 752252665 901390839 62264026 702586360 666981382 787898752 367855345 595760224 803841424 856291652 174219792 281607892 198727837 579405693 494164313 781341914 114993168 196572339 342074515 632196846 31798313 241576265 338037629 958219623 964830426 985526312 401010530 913183925 555309822 858839994 455144198 618459226 440507428 477948480 421282822 794629696 160048134 307861449 974764228 991899243 923182589 961609936 353128493 905614911 113666210 987598177 349527934 638103525 931573385 941286629 696966624 950159450 623745972 864870626 136147296 317066481 982627315 992480003 409944724 631360909 390041347 774232990 264330157 820015624 894230175 947092042 143618039 275599109 517721055 587874819 829576611 883094182 793745728 993810042 831726180 836782937 576215557 762678839 634890645 938649812 68702526 466084415 150362710 221058759 776410526 903676511 22366405 321766900 804905470 964589802 915704157 996312144 860217473 925656854 638404847 790474465 958891194 979357963 297899667 438456542 630377455 963196038 339453033 609749935 878214308 955641274 256864642 512595084 145236456 567818946 15259957 484930470 333675110 582278719 624276493 734728130 81632692 931662255 969556679 980488627 858522194 870238703 787741126 830595330 900584786 932145218 186679535 277047823 565559997 673815150 950550460 988337886 973934373 982064087 734759554 774844302 815597864 899043063 749883642 972170179 638068728 818909726 398248728 636822314 916119858 961543645 85156356 641310105 396111902 435578837 745705111 964495628 745382476 989855707 851331840 885630269 211937056 242691046 247426798 738374101 859800895 967347453 77302519 178409216 709978940 723163630 516620168 586963527 356314067 831148527 884628941 961860366 172241826 224944596 642436243 842669161 678741343 917942495 467390344 954550926 234270339 737920445 299341630 881535953 298320408 579135642 108419148 807547825 485636619 543464149 21480037 647226576 107869760 529038962 314306225 740850128 398346934 417259368 839892007 935707506 949062125 991165252 21448307 692953017 262906088 975916776 660203446 958892745 946107050 984076294 79110893 351033319 634704010 757737043 819778920 909532357 65040481 452247602 325363755 489408415 674015348 845518570 774367203 988235595 735079116 967526375 107181287 171332606 385118026 696889714 103313786 658033870 803978546 900200555 227219006 563652335 746608769 894718462 380742317 915029204 572993194 967715610 884349311 956949642 134383782 460720523 102935003 112395031 289780989 746407319 447287692 928049133 498348495 989351801 469841192 744848955 587235013 925812103 977253809 985000479 343175066 932405430 609899546 867711274 410155319 412172058 343825255 366157538 372930255 587029708 501027735 994427922 109449037 248307085 755432270 899036461 576580793 770179068 600393809 675432847 677955440 991447542 967931156 991648894 126076590 586319280 125843089 789278897 516566196 819464992 856257536 918422219 167082930 833284919 817828080 888749504 281988559 607335631 35401567 680871123 963150451 981026016 569832314 824258218 788174367 880137661 112199682 269233054 439676767 449995462 902817795 919170371 324191208 676951512 313026072 582739714 409851290 469434767 503874593 596042322 459951131 677238559 129611377 828735175 731655528 932766907 197739164 832737981 269514311 347974714 229113270 907953590 815502169 972926939 848142111 883830174 840635163 875811892 455961808 576000715 410340096 796053146 585279065 967923366 689257711 812100713 492931631 496396054 814300379 854750057 599771707 942887286 767991829 997385110 354908533 839663972 814135354 944517767 625650962 985319880 276258199 889791997 132981319 860171233 143334598 878864112 719098784 754703708 17223808 402227628 148459384 878502246 804871687 932101381 4565636 447419226 927476941 954714813 559960886 992442656 254603584 533180355 806055583 913531899 876641415 898693967 904470139 917351504 807263607 844595676 815295823 944780615 656734046 860291148 26592473 517184108 679500398 843350651 521168069 896206916 832122968 856511571 661611498 720613221 833470183 927171310 39112730 142218262 385390737 793487746 1513499 370692469 966490097 970861341 681254279 690378430 726909141 882477955 704529219 815846767 549473761 955772110 157521481 312919356 48073143 174596768 52455107 530915514 239339097 799248946 111194429 149211400 923813512 936877130 11993842 971847897 393710315 650162139 389066716 661483096 636570179 641748103 843257347 927023390 574837070 949359327 650594711 900127784 762364828 844966035 990282984 991511185 483087285 929634964 203852000 646009205 970572367 989121397 848917972 933258034 77675809 978255405 244710580 428537460 386651589 721130471 824958182 830747488 530672582 579459196 878850986 990894058 646613053 763799489 787420484 946920245 744606581 755294994 121639434 986420315 705201817 790931670 296793933 829059501 535858589 867681040 820648584 930774401 791709351 816504775 778410448 955952395 682299814 887376576 114685030 643826838 280669074 943452671 657681532 788243919 763335502 885390480 429661740 643110060 233331200 681978923 930001596 968683314 303755784 951320083 150875287 846077091 722510644 948444189 336603747 739941527 502059247 752139327 84150234 754542700 743762952 908457110 395636717 847449411 139130487 747444175 555392395 815212870 664429778 804221192 299878888 745255379 88742538 707933320 881122336 983991375 753791335 931618635 366699603 869029810 521198530 945174985 152067539 906791652 261637711 349208755 399354267 470119132 888690138 939942473 606273734 741285683 617219254 960962130 550081789 596984161 555311220 755069672 941450159 977585051 459323466 549086326 480974490 573747142 217938638 433763117 307229897 831294740 66013110 738818136 516680913 947289648 319600552 437142262 948841816 987989623 938693024 953483892 281901892 610530982 863722879 867123349 261167182 553170146 21103583 999563307 242550677 396432457 841159095 909651516 188558493 928705410 377422995 920343660 654376712 950269737 842857649 941145853 578509736 866630922 592228880 643324914 933516467 982048166 645969837 947050946 171508321 403653830 775093735 788608500 625177857 733458950 288222695 881735810 452608344 699098751 733615602 901382227 397965288 871139324 511960142 972582520 279067811 720569427 193184327 525943586 747790765 855884095 318185713 452085156 343164682 829052583 911818755 953888987 408732790 494186779 547223923 944475174 508405203 945351620 975945900 988312347 265277175 735999631 918292434 921456020 449220939 804084098 384413727 489539709 103977206 546917333 115526837 641800799 771307941 959931665 33717772 37675470 167278682 933887453 718039210 946670531 537872573 725093623 518969741 665240756 815944998 839354744 869580649 890260170 251556181 900682814 464959041 603776949 537973116 928181428 64403348 955937448 28032273 470524097 299365806 317620432 979922750 996002954 508552105 734497347 920028234 990249737 836602442 935186693 685892798 798798450 645492678 768743735 825512248 883475671 623409123 874026367 996537391 999694220 615238768 955991060 184527179 650701537 33803436 671238196 186300134 835218289 487168428 616469779 153931058 999019942 892556949 913192989 872028999 977706121 126308045 935298666 488479860 901365124 550128704 917123568 946984313 969964780 629730765 946223587 618787850 823755181 227579873 627352258 80610049 268808039 739557080 764978782 426419570 988218540 816296519 883495654 490406157 491931420 105328419 571567584 911249616 968107206 102144864 867355660 813140669 980634450 335691184 604542346 286046786 561126534 388838934 462617332 815999262 907301594 650871681 834376156 378653738 823257335 450612490 886079641 75764463 538655153 419065713 759292644 4836657 505474158 382933480 398441072 422185415 994310177 180082336 479340351 48938722 855047993 717593725 784067156 337870867 561040726 981332573 999126301 81893751 99838308 421284178 982523311 377510642 664780747 660077963 947790865 360563853 640606637 887777901 992934569 507707239 916423360 442674443 910555177 997023871 997361242 29343958 485818782 370561720 604153049 986115633 988592468 848625318 874387311 39785243 734642743 706883334 805547076 375412803 825449973 162364360 243179937 272823168 642768543 662889994 778513277 350013620 723167592 973201258 985066617 13990963 214580945 992449468 995950135 653002291 755187942 576247627 763857038 781173115 875544045 697809893 886076840 375723222 843828379 12013962 296129921 625343969 971147954 864575507 986208403 822340616 975348470 963225265 975745825 813186201 855335121 512836471 880747469 501630704 838880372 96319518 245748885 599989202 677382137 646787468 876008182 82106194 509159724 786199439 992137900 600674906 871969840 801229579 889079363 114605026 979723008 169924386 858474329 504493924 958620671 159749804 393980594 196543601 773023770 239053463 382142061 28391002 720284687 445816749 827562123 160302334 492175881 600314714 977292297 980356952 997614527 552014611 921357255 810707485 840562219 598166253 952841230 570419182 575471885 262040337 546885515 205623752 264805935 513472883 853343254 437332864 847541575 286571431 543733011 715339234 966407957 58098935 862467389 338568120 807912928 481227066 529298573 542549720 924617164 514222288 950002290 457702469 824931203 603973264 907480676 899334155 968387967 868036874 968857504 69222774 741502310 933279275 951939105 239376700 509531814 818878777 882262325 185482725 534157168 498729417 822431535 505973072 692961241 217709420 462607444 476144743 812491682 773516027 822739231 327979258 365488795 763874878 874410314 464144586 597242254 948092501 986635519 249899753 644924990 457652544 829510922 612367258 780597543 250425947 376752146 953048194 957505183 11676784 389364321 698301661 777427203 814543639 840346393 774741920 836505210 361248096 494672359 494025036 990134674 986558698 994582884 958292029 995094142 776321730 994533548 430360981 840848139 666600681 829342040 916376197 956958608 892428669 994325548 348536086 656310779 346604216 893816568 735072711 790089781 354537533 588783402 478554958 736701770 892324114 981953528 111668340 691753449 626643655 789996308 217225333 791052570 154487752 328508360 951137594 989882024 270634056 832920131 790730345 965155268 493160291 809372672 632118022 811320168 751454803 807843217 572945089 590193754 954563846 972019060 578775264 810296521 936390389 977784714 440475636 554273633 315556032 423300786 659431602 797717607 184952052 463756598 449754678 748674483 872861700 997160143 655115723 780275109 364680841 589966950 358752324 828505749 929137027 984978995 827355758 926604734 212639715 935933214 617767850 998163356 627405588 916011947 239016057 856708837 968877902 998442720 422813725 901235294 227505536 975184992 481569059 904161835 325665328 859737564 107774666 790850774 917504314 943768786 713370167 908025296 128679882 240919914 619692615 872296132 636425550 891645646 387521926 686880659 658844842 952320277 832347555 904191038 700721270 709303868 282943240 533459951 681510124 940794351 267586916 933814567 209211742 590514679 392365265 470477215 374359095 531055038 723739994 804255783 404007953 470504732 411653462 853321466 899822809 999341891 819774088 836257587 355337780 851576381 77953709 573247414 775800633 891659699 828300903 886591739 375789319 623079435 383674199 905690779 508340960 754604004 14702975 902036828 869381230 978680560 772039373 996956649 648180606 858893322 713409789 962225817 767909748 934186851 953850989 976890022 198980958 777669033 475907585 784327428 224533347 915892320 288592649 559530440 392643299 493065488 568636891 842815079 279906035 490143374 256803079 293000299 719082987 859847816 423210530 612150645 224555522 258544515 328285465 969666618 100981236 735376285 242052980 593009488 15802222 175857770 430080905 770664719 366281007 581227974 342753435 614118695 859597252 862701890 790553064 825793718 592998644 716363574 199190118 517444847 750325324 951079413 713016044 753684213 573206141 662819324 26432695 838302953 919402893 997633996 388989290 829837912 440062922 485292607 806393144 846917751 552271954 819850840 573802304 924662046 386150407 574474131 138777214 538558819 194170415 703788825 904030426 950091772 56320061 577922216 678413954 803699062 641201987 962188619 29271713 607767801 140182833 180233767 858963900 870647647 132923138 446120590 885639635 994558113 869565758 965810703 320618901 478384179 341010392 718468585 271262345 573241920 386694473 932258261 593888722 663821432 896974096 910012532 30041416 969555608 492468596 884972931 192232816 564083156 291887149 746633103 44849582 947659185 324876785 538060446 776177838 902844561 63402348 67619586 196129676 615441953 153283439 871029748 558673669 717357379 185068391 424278591 48328774 843323149 356900654 936249609 916713121 943491319 263399185 698305423 218444408 906723026 404521479 693070106 731028599 936596530 946620129 973342289 473760227 958104558 382346987 580351377 175558554 826806223 509781541 833697067 932620499 988710678 827187795 932975180 529226556 541044200 699318257 787130301 926520094 954525050 186619442 862847719 915756985 934785749 932243411 983948964 856991187 975449727 738860191 785204272 883967161 917458277 696816582 810556894 538130403 933032104 434266433 591464073 983690759 998160483 785008345 859819155 68572197 136202428 658081736 839961761 426121434 738671200 366760359 665310397 332607285 971007041 569363691 679817271 799842251 938331799 463153992 825799615 723046699 980765728 836364417 952443944 665398375 739928419 943869507 975975565 279716772 458975148 85354310 851518540 874022691 932311227 661860124 761237804 690221062 749680285 289430850 364740797 962981580 973247945 759866086 843708918 641411599 738614210 666289552 772271109 856769977 872763217 436280215 560455578 93261442 803284247 168440292 800173074 752358464 775180982 449756692 662903769 922064435 993748849 314411646 356465923 230324146 945322650 45271443 801754924 785386426 917781420 144469590 958843542 512665016 603436278 64443619 576349941 566135592 882372408 362620400 580908317 351331999 684194100 133987668 866378816 581429386 817567689 284328455 432874003 401708257 529695401 85928566 300365907 67994693 814708285 803892508 970146631 45882121 376109934 48746188 83236092 650975153 723832910 260605128 877893447 643886241 853985822 853302761 986715703 36128912 175408653 788938028 967935955 745622407 942048688 810505508 947254928 182717260 808333062 548550025 818243883 878809248 995513835 492820418 568933446 113410434 315595325 352104383 375768293 239187539 985154889 927858853 971018936 181902474 953041038 915967602 933642329 591469910 664484218 450665842 675874716 602000882 992483815 946248738 990712352 551160390 598003006 129909036 469031088 255923397 906611131 866977105 988595435 525458300 923829423 716953725 776717971 48854767 977655573 825758037 970866448 245486458 322436740 70730807 858264567 298036375 331722343 429567348 858575722 893908920 980541883 806685469 807638731 87042704 769185181 311941242 890800164 586218924 604862882 356250346 846619439 156122217 357371064 938540936 939378210 753817112 864781808 788930648 926806189 344575075 859075246 50218451 205345232 670116335 974012837 384032035 976152930 339341608 921065548 795360821 909664267 264886393 949736798 505763424 966027254 504249005 610862388 308796777 456427780 217809197 601455896 795272060 851780282 999313353 999924755 738510155 928212774 838617679 918659051 83512265 162352242 940898075 976432797 108931106 935263638 673194670 792696522 680966063 797502145 774593006 979486328 757511060 885491113 684040002 764242659 651046215 821563767 355027072 930485295 526222561 584237741 807908817 845107084 622910723 982955501 200978364 790979051 842991494 935981740 786819478 834567031 662895391 764920317 580666943 619464954 196396806 981054826 240661884 522113504 835933028 850466066 161005043 311218329 200391953 726699529 917738168 951432625 898389915 966973105 873840972 946093018 330813440 501772768 174141004 267964416 541975674 560495417 14970169 621909934 618581291 744398551 480384388 547240115 843029245 880025622 796619479 828168596 428728489 715405287 568623348 900842301 398051538 441363092 837778620 991421805 899459509 931971358 694207103 984380516 166287423 754274222 437433571 891886718 742404713 901175933 664437075 694986860 56634963 384903338 916530069 982028616 978398312 983966264 69378259 774963276 799335179 801841419 145532825 349310054 6473664 362223002 335854291 885038006 632700551 820495346 845232264 881551820 220555699 260801280 868221447 984146454 147930250 354201636 182092699 515472405 177522058 597639363 375931368 575034127 268843325 720311303 120425214 516674272 263489136 295220955 631099868 737025177 125537124 954738440 974567990 993458469 400334709 735803513 838953021 960852048 62729974 609780471 933431354 976594521 780917866 810551193 331777133 938372811 695895870 959833636 686724949 960487559 976373688 984092826 545896333 726399918 486988874 524207090 384481330 629799175 777216349 948476126 760737450 895109618 348966878 399364957 751424296 919178436 957067479 968834814 141129713 305198448 18309760 84509525 723282141 726319707 844219578 933471490 425319404 749787357 190701155 740997728 437416370 460124356 665030903 960712077 167696557 716046424 716071963 762856820 146033241 627762650 849530231 979260145 402364156 603792365 108313877 525149602 1963907 196308472 432703532 595533022 563964094 707129664 877486849 904204194 646105442 998651232 24560618 291572838 762685121 976362503 908287042 939832595 250264417 901482701 719184785 761292112 693758808 948204358 524631311 929860820 639205799 948029934 860216540 935542046 911859380 943280326 970419753 978583860 570643845 758060277 531362226 857498282 414259143 726956722 695902601 984922563 944716337 986747095 16069284 464242922 598921684 740589309 460140709 732987702 528232189 587652687 88426700 479093345 574185930 983225132 43789185 995898048 516982039 959467596 921564956 966810308 830800205 959738072 166729850 675095395 383294591 663291172 561997611 639139644 161932335 852834016 523303891 698186519 219690753 793543216 9452255 588441441 884374330 918100092 305167805 337995021 370079477 376427603 878630715 955937462 782125144 867473893 630280603 725941344 620155462 735888235 644358951 989928804 38965525 412635326 471316711 967829583 338119695 631662887 896945703 984032872 439245841 510355636 983000312 990518543 417335857 555911186 5214058 864409236 574677205 660521982 286273100 635308249 61670948 61935905 256753666 734459645 998412030 999159334 820664062 926817507 513170140 595171118 601438947 613801830 238954771 273576821 784788808 980960419 600950758 951444996 424592623 925333564 968479991 992870013 235342503 799291765 330474654 888394945 43041307 884869179 975192443 978418736 407962603 838601922 356673122 455756861 859831982 902619161 154651749 302042518 662545839 699586823 984146346 986995183 19076273 653725298 630511798 832053077 865988697 882681908 657501698 717322706 12727823 108869882 478679755 487977015 62860962 196471348 832293174 981094154 911597188 987449862 597961979 745534635 604657135 743394846 878000691 968884774 839869881 913505662 350821659 886061642 211102829 500385257 892338809 911683135 958766181 965028505 814108665 819120552 121418757 843292869 748482384 948742387 185833410 636590447 968898455 975648007 296021889 743172935 21332823 955684108 71289139 292954666 633931443 882698096 178049294 279311008 390148838 695212313 421983018 441829244 531717177 833246396 377550541 869884981 240260602 460694559 732061416 849973110 954952839 973148557 467844701 993591027 527762892 557973715 274119192 659322908 709509327 736445848 424513131 550741709 679414365 900079332 115774522 264160670 711733569 862770579 44407964 422492440 854840827 869923874 694321275 770943616 338831575 758248934 340547461 885848818 728324769 955896802 464942285 533342849 5281766 867344891 350869565 808534182 576293176 981083374 596174805 717992264 14302598 663591920 267521173 856834243 70199912 918191354 488492356 655196333 205321149 394133772 27301762 225918191 676342108 799941434 140975476 480200674 761836819 914187874 70414921 568747379 90293906 732268459 278227556 600276647 670588733 964867243 417851979 478511708 791886037 885648323 193000421 318561053 286400170 865497419 134065796 809532064 7514565 225485422 627316737 725995129 619534927 950071723 265896155 941901315 88085256 182709174 577486921 778669740 794667426 921702975 605003299 641225358 396181457 836660823 502580668 672330447 786935394 961934482 413556377 751088610 235300742 513054034 708200109 951727633 499380240 706302744 470660338 891590834 967851159 988250381 227619969 866874904 164251552 984369533 431245996 859104324 957479383 991475448 8256320 793725991 521856971 922702294 463255626 809679651 728600190 837414199 830630842 996614987 580442511 865537174 753062621 869393820 981301215 984738517 792187541 846914122 69195801 895976274 822904114 966299949 699652504 941965004 763945147 957302705 235073469 870818856 14472613 100886817 119957448 714696817 513433613 922880727 314670067 961733527 398563951 684351602 202389601 460149738 302862955 767573319 909839556 971171149 132817067 933500088 243637950 919417805 764760689 774582910 419599646 449690860 261111989 950866111 421335996 967780563 128569322 855155042 874147274 883034512 87390415 486546694 362139281 511678866 792627 919797853 284923675 326399955 526827163 963781814 491013183 728838177 508539850 956511353 740297673 909968655 860548455 923764858 736058246 847210838 492664766 669502229 42934667 405061897 143282992 643669563 706107659 761834607 306004910 851258832 67281471 534753449 235042813 902122999 846073832 984271813 616087771 929678488 491436753 709943658 278162877 445347106 326320744 778020750 872243084 964237641 511851849 663028078 576483058 970534474 320513957 928437968 493780288 983623943 239262543 635790055 848464946 897994497 220157930 450084414 765155398 825237144 793346758 812998026 308007221 679065603 338009241 823144218 316636191 806402635 291427253 974067729 996541164 998875314 644327919 921796670 440362358 537832292 178540078 669510165 725707414 797303220 562418343 582307980 820458070 969984555 317256352 502850743 211304503 840455134 795131705 911763353 874953550 925700362 248234193 410243853 723025530 791064449 851201805 955569115 545000621 931933367 896379152 963698086 925603669 943242230 270269668 683913997 417517468 781300010 692533144 986146437 878036808 903355600 177321512 702384556 937053922 947645457 219609427 696860931 502843425 731803776 474827161 846568421 667171971 979102217 372455888 388737215 964257337 989018628 229387810 707501564 810423306 998003650 240243358 289710470 363344144 497457139 332160053 557039313 7365026 829927113 246392944 366641701 231637665 350363975 895042018 932837905 844768978 903347081 286634500 616801375 993263265 993968012 521675346 741513107 633792446 958306577 372786988 929880529 609478042 669851464 738401408 929474192 564311941 873807587 182537961 591103265 218784924 502294214 338062801 600758749 243613090 296089509 795392998 846579830 601885165 602124374 876791096 959366540 709509385 874995879 742486028 892563123 198021953 661506821 588991254 807560196 27082964 580770039 926991960 966931303 6867333 576806067 194446618 230161587 695651508 742864362 410703315 638750961 389762584 721219426 883639390 950962535 441332242 552764367 132643536 639344598 646666427 792002666 572662251 692107189 877103703 990802790 132697651 271559285 305743189 380726143 820468985 922668950 120575326 388526118 405890557 838193661 315452280 460670469 573485695 618590985 364621025 581862878 335699182 543349013 125724342 313303480 715970456 987183978 18814469 458096910 980976156 982758546 473085748 511963740 940222492 982493496 756089245 861990104 844680265 855442590 587455351 793526215 304886349 642482189 451330419 972995686 818671636 856572800 743137773 773007688 177838012 598901169 717702433 725597829 626949035 698562673 269695577 630376248 740060275 974747075 878084573 951158070 639795176 673904627 396752192 427688026 352045732 637810544 642690914 750810984 731055586 756970138 712221531 720311876 949300043 989965015 286149573 729373757 438751646 676328294 402941270 864420732 321053686 566926049 55735606 670193484 555966468 870228089 240046350 273948215 84791040 720726120 238042599 663050954 220134447 408127037 306395582 513659191 477352314 797583946 736338833 771907540 398880602 771920137 841598268 997212571 949215500 970708285 776535288 860488789 959846844 978108450 672952986 689845078 853321690 921660418 823057955 840198363 544791433 933604469 937399425 991235932 170072359 944496118 764596759 917774203 248666089 830404418 643857361 847321533 857898613 884803776 731612577 801020614 469739567 703953985 192266673 355699768 834649669 868323244 254010764 254979682 411307439 585290678 906516936 942118645 551520281 920488451 773623176 930175025 683896317 803612802 182986130 732376944 236604291 304762566 82250415 739284092 898880517 926930394 155978610 213068719 739195100 833053730 644229983 802216205 941041165 963694076 575040188 700328343 202531631 680546896 436850598 662681785 314224645 739807281 126029927 263587777 134164920 846814330 927026837 939707396 111998875 823168479 13229296 819922677 102325007 121665134 49594588 928685724 622495421 900474252 217329474 515371479 556749558 741377971 753102609 909389152 636429867 641898747 656919328 658890385 599780031 615727863 636122357 733339533 510682376 740850241 49576782 487816391 299699250 875456570 893162768 947660965 255939416 585684064 970577243 997634302 7430775 28532835 405660177 881043391 183115648 293663928 607777635 755922722 408449637 589950496 572913818 639829703 893636679 905156308 114088907 398248696 733984626 880082554 49303887 954296518 692342170 830237468 245442439 499747560 659159031 984999235 253303157 451707477 334979456 929729842 506600870 514851031 35315706 119994477 134115372 583084841 854476893 893535565 540923982 704689892 177226184 357917142 946691702 999690581 28841262 805820227 444006611 646212782 339398283 873458400 224171102 765049686 3522435 148255817 302461021 413454846 733026289 878402864 72044977 891754263 737561930 840142754 980364156 984503336 825171923 890962962 185133473 375674150 917385413 931940372 659334015 838204620 386181210 771132042 331448777 568980944 263128093 275060904 871459988 961930902 162437449 724222411 972170684 998082437 542473682 755836715 887395483 993546672 285106398 884394703 777482653 954248638 458851205 591553439 11741310 991730501 246389117 799388488 673497106 954441475 298142316 342223666 622754765 924125894 334406237 843477092 167747141 571682198 206791194 610232533 362305533 674815283 304679234 397289924 277859958 288076138 436581116 597273812 435158344 975545635 242158446 350254213 673227404 832090360 50143112 457203697 649963967 783282898 244700103 874625880 273127565 864487891 361544309 371445838 387603194 709673630 653155005 812606687 137654011 570995107 139953275 475117541 925728068 967158526 37068636 693147740 949405013 965515885 903007062 942900696 139959918 256308425 287061600 773453953 440648873 504816206 899936334 925753068 37513578 290854976 786527221 921324926 354022680 664624150 669780503 716468023 254509803 932513030 770677967 947062928 317251027 368010415 870347711 943478116 207067735 244112201 827846914 935288558 261934045 979882269 643358786 856377130 159518864 538713169 734763852 791854828 878348762 963409777 137130523 787047377 961921871 992213607 956764436 982031632 271046558 369539412 887060820 926480749 82069960 834018360 880592638 932493993 381656071 863813410 920063207 939468995 454963274 925304815 975441751 998845205 380376275 456610687 918056186 958734195 449948155 696821860 329306215 736299531 726072628 728914308 331551445 882855466 660158513 781145490 157583556 648478433 453515403 888926708 38045020 761239518 157574826 554670478 893880206 899644153 797121908 839466580 96403673 794777442 418507175 528619229 272514221 954042274 586026141 968181907 243945408 707592844 944953060 986865209 440062731 603844671 940128215 993013433 813196050 816891879 216871514 931639513 797647740 802431329 150698867 811594424 510561836 731706532 447283066 528697107 261951555 894282618 877455778 917699516 212539509 790393588 116160168 154204326 440830415 506790063 5735029 875549414 544093259 716915242 770979101 859335368 908476916 968800048 158039112 432797384 905393361 915757680 369202471 386062815 91150007 695831736 751183635 950189783 77255055 770273624 277458128 639433152 967164380 985813147 371984012 523952081 983672736 995585517 450283765 643850037 277611064 999582724 892144343 906224259 388403674 700239935 260524307 753011777 225037169 762422905 843455675 941909292 258499817 751081652 904895105 904990035 55452739 185014869 87113118 610095658 447989781 791416480 815017138 940848436 196489531 823259870 674761326 749659472 664342460 947687363 632982583 832805671 41312033 922067349 527181024 691899150 76700045 318570822 102841312 107537273 276144544 564230415 512413461 832216969 395830808 954131585 519142925 924883424 169991516 178476773 835830173 966126813 253399735 411019244 763678461 771614518 399503200 481769267 28658492 208619805 758203193 836395631 437220439 471456936 805781509 895140830 50967438 274570995 556487811 559120351 849172050 975064045 941726667 980603843 823163622 987522999 506825033 813451088 380856827 539045279 199812670 334145251 238718173 905808102 538519380 936704813 516279275 549624045 520288994 761840052 981914978 988950985 848055143 907024892 175037998 766978376 987303269 987578132 114332409 965711595 808574770 979995617 438618680 764639257 808680281 879314734 57049843 158356515 648215823 717003913 680472726 895491389 386382406 511988647 245398830 865737541 670299786 795700983 715356466 960582345 290111545 712312636 511326709 548995016 336240734 698153359 72319859 289591810 959102531 975179739 712406836 970002049 227836260 269384166 345325999 401611634 654862630 915565037 239672668 494225876 805036507 924764715 894926791 975455957 92461124 665820089 334414003 835512730 657380092 968291983 510847994 704836819 661244914 794438734 770689295 854070064 632768257 786367507 778677517 865407960 871997152 926081350 251986651 751989652 432708900 936467313 444141920 693450381 70052601 851576754 572262670 637642564 783653127 885730174 164468843 534293021 420674263 643698706 26533663 58974578 131430132 885464944 373306313 442669605 980591515 986143639 781266286 842666911 130080560 167793246 102075360 238229203 128765559 133832624 100272679 904305695 602460156 784752274 869948986 872449779 16835309 559148636 152539127 551136323 968380837 971134572 690243521 730419932 796360230 899338083 301635404 636068288 230594493 906143757 768314494 919471445 40030192 390155743 614952036 962738288 590377892 972490899 347509675 427593032 734100767 822444392 590771302 818994707 552555260 589851000 991203326 992973969 56365364 895209152 424520071 946440136 577703383 798648128 908448503 961562164 585563358 641072719 944505720 948217012 483739011 760284488 813147178 877376309 667397457 862742190 461265721 684140005 866129490 870946060 205495738 286886857 560308917 670971637 646569955 705875062 320984264 831762077 650034820 910385866 683428384 971011286 145589060 894948834 66987955 306196454 69774840 616538011 205262521 882094728 572568252 778046185 900913495 912755303 257048373 323622178 15176772 645598076 14889324 987974625 499245890 847801439 901666638 982779167 916956151 979288781 849360619 880404567 611585102 894808594 632236026 639326736 591355656 736307078 759990607 929306900 231391924 897082225 2852610 206115727 287776718 889070675 768223676 786722175 365721922 660601758 862793373 878199574 264715811 713318254 408279440 827237231 936467290 996801633 530389350 826146179 898840866 910756717 978848835 994946253 147397024 418972168 862912775 950326659 674407334 739423893 947609193 953230941 26667937 543664364 610953366 843738354 453298448 655769722 214455809 978822673 249604259 256350796 865217846 893572506 22955485 592915424 793818357 836746402 229196536 983278163 274847109 656192814 490469853 991184311 842525546 860138221 847186019 952010089 889737270 968266086 910748728 988177655 908822144 923884710 195392909 358981640 655260648 923997686 747723999 857986323 937668793 969140807 386057235 624980577 258309196 882621756 740260402 900768219 941950325 985607966 283959402 510836078 668461777 759821145 380766187 435314206 690154038 826073294 287785332 769645290 933170276 940414765 81533148 287076323 621031439 876797395 796179135 917768158 602946271 883899980 971512827 984098428 53450962 395847336 550422974 650838301 234718347 522000138 570827238 627014716 115832789 654516830 963859682 977349977 401371663 474283639 329895323 840878923 149031399 170409195 316589314 485318717 383291890 902845909 309601798 687575774 618254625 735597909 987961383 998157605 844277022 990216560 644543918 720649840 428045195 428789826 694359102 876921304 28483539 525354633 921032673 989259994 147719802 208332685 371776834 614398647 464866162 912663166 92690286 694240554 209804085 968551682 927426577 986919156 952825997 955635684 709115520 975851531 161604675 444599146 21645990 511116159 876728583 940089128 492097673 498236307 581703319 685839771 874445328 905351096 96718210 902599869 727794869 878641856 692557273 777730834 277461867 746243679 833889063 958702501 232707454 358070520 841571287 904010627 223126396 721018326 820363282 971126154 1326849 986557297 940590987 950992454 548929119 757087406 799138933 932713700 890323127 972613562 747910251 903051646 310788931 803852596 759916780 764885554 249026936 480845638 574932941 805081606 691007734 784610665 341218804 955176237 629988411 856633364 553439344 677351265 395930475 791105676 95416290 426751505 992864876 997993440 985109860 991129591 924399087 963734824 652435641 958333994 560681230 774583947 327260840 647478124 416037479 579874727 530739141 615999822 850707905 937513134 770679783 849299403 54371206 578278347 824742102 958121083 618492139 964499607 440032866 736069228 137790450 928141470 593305733 718278095 900869903 902889230 209724496 298797867 327283608 786216974 294443667 471625426 645056300 827949510 83908960 850766185 993472488 998295662 235796493 373646262 788166626 852999147 607602282 817830961 593396511 993084513 501577917 571410611 397512675 642567683 31902706 862384341 779979024 799026680 236794024 724971865 368058892 395836984 214391458 241143183 206626694 829603752 389125698 904958355 454460600 964483035 852050222 993380151 846613309 901315730 10412761 925607401 286649130 813447455 210769534 943919956 245239463 720798869 780541042 957207781 976503412 991462092 213089744 794983019 10395470 571481171 184859690 386995859 936501168 972175390 724889074 747761039 969224335 991228080 439566308 478786489 149554735 586924743 189292817 941663525 630351462 950800146 643002447 840850836 512107165 673728943 374117321 916459910 428180361 646169802 515357563 756514638 305497395 528073055 640343553 884029526 858189469 973175881 106782412 860988065 695151230 913199403 166650166 973567929 858188853 959530684 565534882 785165563 989577192 993873661 463163999 517459209 108387655 255928506 332912952 840668668 799230690 889001454 290541270 722595049 426219771 888378693 116494075 902783384 238542372 389557631 718382144 768266936 747548789 882889866 285466569 313058689 960710392 983988288 973669677 989813407 439780194 445817234 242785593 397811443 677177586 859542993 600093764 806816162 284645767 366924135 618355050 993317341 179207773 644480254 645790784 784647089 998126775 998180639 813617826 888474677 462225164 760874602 489288882 507874595 142538181 210424965 676759270 801943142 584382643 679856528 875483970 950199793 132765355 526578102 287731517 945830360 915116774 942703239 543513640 970070942 825798549 878948969 738646626 743983608 610640606 781662128 426359296 586502367 551124309 622605227 326254819 442907304 690133892 694947976 923593812 954526772 660290059 843962607 971661511 978466421 855218363 967137888 995000015 997330602 392603564 841416708 767864076 916153575 5087213 680113002 491848302 756354898 808548578 872967939 48230048 820964333 54506667 62233675 500241430 791604020 653139589 789061317 935806041 966162178 76325074 907778217 154344954 217292033 878388932 933596224 849856376 983549639 736498123 996533604 633338904 902450223 816319349 998176432 893560428 914465976 106753618 567017083 213452778 316574585 374781236 645701656 730924468 840449812 142048852 182129205 471514499 568488717 631693399 868848896 996131559 998797576 902903118 993597021 725894253 964422787 473539738 776681976 630830920 934236187 270538239 728324635 519818202 972689092 142977619 462363721 690906746 733888824 897694733 929272456 47964446 166220737 986529393 999449319 344665099 677943875 374537054 631106432 792377222 797285777 883820585 983805942 535058479 646312733 537534913 623354185 620219998 874947082 297332647 919716472 543210350 748830665 63486724 787395362 817633329 885709523 193994466 762229439 693009018 756729907 333087181 807011845 324144161 927862750 55418162 971303426 666417622 921858283 891139967 995279910 612597372 920290730 649804434 772499147 472157280 645784382 759043043 912845503 292833975 779249110 981491653 985889532 308621472 523798076 770653400 813728525 637542364 917471204 869510381 972178194 728846031 890562681 476237755 779732486 693470537 784700623 678146136 865287548 44024647 905396748 914104579 984440585 832996381 931444241 613237120 834612228 515147638 884172140 313983349 380934051 672574858 746154273 359118128 643952247 661094538 849023283 284585197 889768306 815257312 965027966 407523079 424394491 147048743 463072721 673213283 805621106 595196622 907190709 298657166 622350968 557610400 662499996 337996898 742516971 553731498 876289166 896167314 907145468 215506959 470359555 740361105 782394681 476898958 923837093 1859765 961243103 489173260 746946230 996066088 997433237 233707826 347852101 573650726 948049131 56718579 467155037 906254858 975359951 841850673 993187358 802003546 845634571 19885967 429284900 225022891 477431963 124899164 510899750 653499506 831019024 101862562 104841774 117567943 338824141 590254579 843864428 692004535 844031083 580890374 697621211 241384146 884035826 64814824 653588569 637469181 936565375 506739029 584140431 860953168 878184002 39730388 829621771 440508891 740957220 129959619 787746562 368876836 493286055 546894006 760008672 4953385 620167633 578409336 843459004 717650961 998098798 302823710 969673350 89568849 939527187 107911786 356913586 76208465 675331400 777601208 899389102 460330629 832428374 727638772 813831730 276895269 391818465 816858232 883627113 696021658 719785459 412195142 620384529 474718938 488899892 943435386 978584238 844487142 949467526 295895186 964436482 879099960 925088008 947494262 963841202 683321744 962630167 458240193 833850448 951505695 953554096 378294048 688870743 601511768 636417115 812138487 839581899 287788408 717546768 522485925 928708458 47427038 819758251 183188466 224621415 922691907 978674441 352692992 582581965 309836424 733336285 275635853 640427987 293622878 400105172 966403681 992774274 131452047 692760179 548380476 902469437 77447885 797002702 991537805 995267018 315195155 639928109 87335103 377981554 620400141 991619820 800191816 968428757 458371457 501523965 779269900 799833595 332233506 360766537 111572518 303009781 660962963 825391085 143356917 298732796 221065165 862349863 50422077 951370873 901710801 991929655 996440463 996968175 38623375 654521235 231019891 741586155 57407365 146239269 517466937 570652882 343895624 659506814 565901566 789567247 98067618 551528281 267676483 272678255 677947458 736036156 329341532 571994694 458691929 764636876 999488355 999620200 107573196 506039181 573220877 595040420 236500944 643519258 119362498 293846783 681739914 756375285 743289356 920214076 862999245 912256778 356385833 770012729 451993074 990374021 554074055 954787369 947568149 992976926 278091758 426661238 139132231 601096681 85213296 408785979 584597093 715737513 234281955 397010419 336989347 690654268 231419192 766949876 574533123 778114581 364969565 688338844 63522035 446139086 161670967 909297484 140328748 897671688 566621511 567674182 268130995 921112563 670151002 886866913 371012672 652098383 396615385 503992626 890905007 899729729 983644590 987437468 269798343 788948778 356263974 949023474 998282116 998496522 372095792 686541574 718049408 949802199 81439581 660263422 26134867 405122293 231549843 622369578 411773000 915880506 20850896 361685183 383588013 821973296 149568833 373489415 928524373 994324356 45667958 694150952 368038149 719193639 8589905 881308426 652466659 675253265 231558050 278895505 220600723 877900189 295989483 916146206 642648916 703014399 626374978 704489173 534351134 644818755 641189788 876848030 653436110 743726948 64295377 242590655 328633868 846196371 558785896 924606657 639171422 814572484 691368940 844261786 795874142 812046663 214602978 595697544 926308205 941939916 974769364 999412870 855981725 998608940 228906324 234453759 960740281 990117931 57748321 855623490 646052315 828241670 132356539 308861307 120037592 152133945 496510175 574874391 122192126 426084046 473073789 804943568 592045762 876758881 999582753 999582911 85088996 818951840 448904010 612461093 34823226 288794882 255343633 945770183 584576610 703621628 100062674 480096782 438596838 839232984 681940918 712497894 290207110 408079741 792623730 897719945 742232449 867149113 39085957 779098477 26233774 245390346 398551798 955607910 819531358 907614175 619757402 820033538 981613409 998073922 657278119 959242065 389978465 611243418 512747455 954594762 653956406 922885336 643325032 674530667 813478048 836534674 163838711 320355134 477483181 760391264 87194953 367053628 929622476 963987978 541617485 683677208 991968406 994332203 272551231 664065399 22688149 648764660 476618983 915548443 881222764 959423778 112178669 165786495 434824297 831023147 206094190 934397509 975297533 997320863 291888677 492538524 216090778 798312265 9346576 748384964 344308497 906549071 749426316 888672469 750880082 910318487 203954909 779564015 855834499 872028376 397216925 890168491 709231245 935447385 517294051 760522181 285136113 619232131 431453176 445736368 821935960 956051232 477279995 748379131 155377833 282058411 675971602 747275275 399012039 854523297 619873443 710800346 10511360 777478288 98854999 324586484 335319828 838483410 248474436 814271824 37938235 535052704 699429351 778195727 277110389 811350272 620993220 756116937 773149848 889331848 440841856 640626470 574673103 773651464 971448392 981446763 833655911 951259546 315684207 560941637 631118751 966238885 747842300 772020536 439894378 831752700 147037937 422252518 265777314 573822191 793256165 992911731 188878590 712122838 265690936 930701041 753243749 963035288 327328563 421965814 256707654 985916558 983952959 992140650 994578277 999832524 606802479 855540239 631821160 707002418 907136344 965038485 213138664 531859372 949461867 983891460 483196492 518056780 392913446 780780673 265643118 460802981 570457111 924704472 290755286 592105990 916417783 946467023 156256060 448815339 961521437 979712786 553741145 637070232 954684761 966046964 458316295 518888383 210647244 961191068 675195618 899651912 329774750 839707442 557766588 998829320 539468440 997340867 131792356 817897945 955408020 979019777 642973408 804896424 822257722 843477035 975986907 985118194 280590457 765927641 212316892 675003767 513905420 564163798 860873896 897654658 80364622 874347645 18617650 127221383 760494040 981990720 131884730 599709218 592792231 899818264 510272518 926599270 989556080 998312001 768061952 997627254 786016306 875499849 557834149 915744947 440493158 580264276 558906281 591494299 72940488 498322049 763614713 894223901 352910032 382425971 459169537 479358185 458585861 838162541 501496872 922952035 107507776 789276335 461131125 901729960 546657203 562946072 700700505 874286612 143687760 319354765 724280422 899940387 644716601 891093404 665323302 853339658 320084584 505346783 613309159 780561513 819865388 868977729 797588184 875220086 713679025 937382562 98954855 868185920 601115718 769921180 474982712 583543600 353447530 356157263 107497099 843234027 331026429 957308014 180923570 300286497 63635108 889336124 638721578 695972108 921581142 936898470 404602108 647178787 514847888 869305931 672720560 705389862 597637329 943819471 165470877 637182442 848382489 916193450 215351773 458737004 434995603 995880990 877717448 960583892 896077075 975661504 544608693 647588393 413528108 779753223 170605996 802198109 87658243 333019399 396918723 862651001 744470093 785036911 600345648 932441291 968252004 998416698 873982906 955787911 804771987 891891590 867945735 908123288 130233129 689138543 869959309 987869472 852525634 857852964 973817927 976040955 732840810 935104587 949530793 980737619 899884487 947699372 216173595 381574965 615251348 898383220 417717197 520817475 341564442 601699183 939848601 994612450 975843407 997039690 653156653 834628737 904153744 987302731 631853207 701520859 246214997 274460220 735199451 779372705 967691849 989765406 270376930 501361787 266679263 547526139 791380677 952294777 899433448 939148982 56070728 62931009 888407232 972995124 478584876 728808733 433319564 919667690 746791600 782634476 391163161 767943452 956425503 979550237 505134593 737833630 395812765 917293206 631759759 795686141 130534489 191872216 785031655 992825213 534475298 807487574 151099744 566533391 785952175 829827971 669732558 974285084 233680143 802481277 425253681 747684202 826016412 838157134 97812109 307380956 213416985 547364760 540693336 558109008 674619893 806175920 377497954 582622111 937652040 950509040 960953764 973067592 768921747 985110631 485066428 670378710 601795892 888806316 423500486 638646785 473410666 919030592 945550942 995582958 802414365 833345311 634886151 641417242 542647384 862101471 539415985 575911400 188575787 381693858 522696085 607779554 456624391 568737205 613952577 855149530 961371659 979940869 96570108 415748100 281629553 649750868 736837402 791233887 373123122 434341116 119419089 830706110 428413792 966045542 430085124 663310470 634352902 640395705 678392670 981209798 383903126 988067264 811079134 896201758 119824203 314020917 372415392 412795832 936607423 984293247 585433787 972725227 49872496 487223348 911893860 916956111 849910488 985631872 544422288 630207962 788466 348281428 601109252 990210291 153726454 549187196 560753722 656055981 828147653 934612353 784024474 932099073 731474531 825517858 480690594 918161457 105403116 650981437 426625946 669404027 382397958 701994798 231808247 276006486 295206063 448520909 806435186 821168899 573703712 722336246 754345341 941185842 797223951 901135233 947231572 950992096 678103513 901839131 828742537 886837181 319994633 884728307 934026117 955582388 984829657 999603183 478649204 600839455 224755012 230497006 935543155 981880767 524308610 700940989 751903944 965784953 321403799 620442162 372381606 929195681 463849785 847181075 683441324 849732654 365587748 749731885 38659864 332910395 99477076 332820088 376414057 987686131 63883581 741188282 547556167 665911561 593011115 894950240 744564946 745265746 739473153 954041657 381854262 391693942 170626042 531434627 577141481 989708317 984386096 990689910 996155757 998397224 77824820 603220007 401958655 979584613 878014483 918854137 762044593 878118826 164846855 715821201 42919005 233945467 239235167 788070476 94564740 688697286 386985093 678006496 363773505 384158289 65239168 877892736 821588666 847186737 658942874 818363145 928581074 946747935 786599538 796976534 91074599 461953942 847056825 910032702 497840776 818730639 919191170 966110385 146990059 498493154 416027861 548572683 849869664 902954523 99387993 262531786 763006643 775569141 944179138 950605234 828249992 897045777 210877946 557712180 670367139 847620258 966736452 990278329 942256214 966139470 662833337 843089484 904187282 938582500 937277825 938654440 423810699 504892374 708160950 986565276 807941115 819935729 427554637 480866796 271452072 765899048 232436552 919847951 312376934 807777836 392461319 394359889 405091213 993195412 751630481 765613955 803088964 914098941 421191581 506056905 73620518 291541380 992318498 997574986 581160466 730344358 41523810 852677276 747311864 989872246 669813456 771679629 860548630 915155740 387126674 658646279 542123193 874393289 343006222 355360586 167385385 408533673 72619144 698606367 355214739 954911325 746371150 770004160 772866350 892671396 595345727 826323648 539358289 672939685 555751654 732148887 495290377 999408204 757933103 924841532 234324155 350493745 676568672 809336697 99118965 814597255 767090672 837335584 556700805 639434147 223546553 562456479 425161511 703894373 58880055 544145920 805482629 834429128 912299582 947348950 205161047 862773719 789994968 815247807 84311602 673323620 360416681 529744483 964700941 981169989 752689039 906852624 517528146 936554081 8003044 278880484 946547814 965906756 498208488 611231017 635319959 824787080 279711332 372697055 913127921 962041941 663047061 828453957 563513670 979322155 212041406 705691107 130453196 705055346 177688406 400072529 541507706 626704534 781035594 968378804 778495985 828176502 939911617 964509363 411649500 648073471 82856694 203138156 705303036 752265895 911011203 956399085 521288502 526923189 668943913 717791867 787237083 888558088 611830095 857640078 589967596 748713370 55992828 547439744 872595166 875870981 219814438 414566187 349196663 714433886 367734361 634047538 6467267 28965654 593642046 759051240 140962658 352843275 807534010 838337897 934868892 982675676 661310156 965270259 261853948 632931581 679673050 980816542 748355767 981408227 985912727 987815009 543212379 672206384 703425917 973175560 271189021 294261322 56633975 639105112 130449689 211815501 381966083 740302225 118516694 443147886 496164929 713394289 642446978 970796741 467224876 601598398 850376820 868782130 526684906 659178094 496402588 862369889 742868387 759032299 136419207 247614199 698775999 757774966 957459270 986784429 993184132 997210864 344509386 791293800 915136532 980993846 272979135 667931200 533241811 667996277 789416748 880718471 395034334 887289347 478598556 806059140 440384454 522057696 570423334 686647138 918745016 988136545 985472018 992253418 963522716 986237258 503842327 526240845 623267078 783505258 734379922 763963513 231430038 832928389 689099742 783796753 366544607 653239248 604001 971155537 708136719 939250645 808127063 978130897 41113064 609959057 996355767 997131853 631020130 819688442 945851297 966793655 556865984 597402574 715554795 741373259 726404521 884418088 807374766 859395858 319407081 327083826 223382639 957048980 550514855 954964390 774496463 777450921 670089793 945836779 86555672 669123864 804709663 887333561 283268630 724867286 74191763 294208574 168592136 867633986 881430990 928606751 747170265 959559232 33028589 711124079 948571198 994801590 821059330 930428790 709262598 939970374 676950015 750871074 204409551 913276648 536312679 758965583 927788204 936661148 515553805 835354440 485397419 656564925 268402852 478544727 529734400 869862673 356994267 661402393 178606516 700958549 479767957 743502836 608748197 990402750 540784086 781599215 802815772 881157349 616523957 909781753 858054843 891292634 872624455 940577029 100480761 221608713 127529919 712139165 838953061 952534874 935562425 947098816 762128022 766003006 348647431 661105600 587139859 796848544 778698344 963838170 714437732 796926953 331152979 623569395 144005463 487530064 962307743 987179569 839151391 946118517 272939689 733907952 39827378 145811220 61778352 844659595 843713436 913536402 162645984 303459162 455604452 943421688 772987970 833597932 501992227 813019180 504142857 791174652 353034171 844687990 968185755 995628940 425213897 772809285 898446537 957296743 851696145 987833704 476509137 538374798 553420167 951211372 476057310 665068392 754914181 810267188 394972673 499775819 471081269 939561450 696344926 947461546 350808106 427419162 27758738 434464629 791739756 976895542 429402031 891910707 269956483 986841051 935388300 985290310 737853692 792689644 32967402 682680856 243035870 630446523 732689737 801332028 899808659 902325633 285034478 613754121 470689442 942279484 891907573 914095907 868443872 885936005 86243454 880878315 606789941 787454843 714517924 856340583 445555750 859209721 534502724 945009812 252185204 907335931 768942866 978297165 145786271 285344265 357378367 986696854 931467560 972056919 452046979 638472424 388314480 796809706 162400977 494602971 684525372 693619532 479939966 802210477 320516173 401270520 968413392 994424863 383626279 588770866 861783803 907575254 537414613 628991996 688875234 770983622 4714037 556176283 650525560 988870307 715587912 833965615 159490168 756722982 922129346 991129182 677909919 952193320 68119375 608836916 507784745 900253007 80515727 652636452 707242554 758893430 420617904 492324842 440056079 912536522 958985590 990874292 300593621 648419087 364924502 961963405 71668750 683742826 107448922 377519727 735228999 786370292 16706865 565869341 697426909 988328915 724794847 926321039 607339703 727678328 577481479 901793491 485993026 671479690 867561961 957713015 898984590 934835959 762012487 770485194 381489629 773215214 648084592 659341744 630035686 674355652 250615344 867765109 626424977 662053020 592959178 593663854 202250582 681025823 476995428 515186148 675633079 883005828 665056689 782346380 331646239 507001718 521255093 878077767 681176412 978301505 835179420 896021132 998711043 998987598 821137553 849834443 792798118 915783295 326817793 867364112 318230062 573152695 667436994 903019799 442313768 555011104 398109579 786329381 367540086 480229556 467760693 817130527 135817706 271650204 822167708 939315782 119647998 575053963 78237796 604529217 715123541 930262084 923736613 941342479 386031766 667247342 82926449 126374162 163667634 553495048 546896470 889260145 818736612 827477333 171302426 981947858 518805360 606701872 155914701 758587439 307516550 820779936 521232284 657875118 269203390 609904433 614232235 721599586 32597214 890332614 431017800 708208403 142361203 796632260 325241314 720690090 833496859 943196993 838678633 964206702 113710944 181782321 171212719 249316532 269685162 285729141 427441328 883509309 850229036 885250117 153098608 746812359 908639709 954568463 338244759 727483839 720391284 742840370 358679591 371836419 643351330 977892320 621830553 919279424 194480803 484840087 378196786 614792646 27333125 447315805 837399054 995706107 910182991 938270220 957556672 959268376 423749973 895594981 475438539 803318845 346626056 385800376 240728543 747647504 413734105 514942701 260703562 922968886 363513483 527030507 225822660 544981124 169201408 182917135 677040436 987316810 881946302 882566980 95649174 875673197 995349424 995818730 783081480 857198250 988266607 992224694 639615479 935372606 34083358 529617453 734225514 868920392 735655391 960997670 996413293 998829424 337264941 535162592 392188131 807464255 39993048 705523567 896466362 973032347 386233760 776758440 306796478 327734547 387053963 970445633 999768525 999862581 475620837 534086768 225888323 516992628 679940411 770905471 588134618 820401767 840277427 972893466 386101441 884073281 172220705 585243984 306222179 817025158 246593927 648972677 727000069 755228352 705853785 753869984 693049639 968790005 490966468 978760375 696270736 710194181 674587150 709304558 69677307 553058582 115186427 391969352 257575231 453146691 858030214 951700712 77482771 787732300 328180405 863603902 315649292 760731780 376485519 904764418 597255622 802267443 113747838 144277914 481331759 888116290 48312911 115714317 230726192 797570214 750138257 922949481 121981203 628979111 289832359 295984878 476779339 678589794 737117849 975051596 755677343 764661097 295597485 546598238 208684100 240460198 29307289 696491020 376400583 815670754 571810844 924955450 956024435 956779165 85424645 441021290 360441918 653042491 224019112 491654902 512837044 918028195 841367279 966599735 318056477 582610615 443967896 607515272 461895293 912849539 730574303 755246932 218753001 383222650 477610050 869694693 21019989 99864068 839642944 873017775 187948149 288744443 752072654 870549955 284380994 431826724 864759152 874150037 892799358 905121575 356088160 914349049 678548446 789970813 412959324 688878981 739492620 972650023 358688313 371950077 822252578 984874087 550241122 719268788 815882512 957852109 459559724 816043665 476609007 758083338 277461056 397573756 233348526 974686210 584133281 897719737 901707065 952641828 670591865 685360506 667267223 724415690 372597359 499273484 645522534 883389024 64851840 585994103 515997213 802873254 511450341 580560695 178865936 625765881 209209149 665510071 770894208 944222734 794311981 992277853 960621088 995500575 789805530 950143683 650896541 754448126 353948343 457925455 214282833 675642772 392441584 824261039 962759208 992037124 954910045 980241286 919987526 966801083 352303366 746357652 669572610 889562966 854766984 908691647 618027354 890251384 975318390 993839156 520136726 646513642 970894440 990270556 599956015 837820361 840435542 886624336 391735579 601232972 549601942 748938727 619434338 731052106 510882854 867410254 881098071 924636279 15750882 30289528 50047242 536123448 278470188 384230699 531142157 562893750 39415195 776795536 386943607 955659473 460315083 793159126 755606933 863953862 648664056 991009014 139982031 683218216 749776179 806987365 832892381 922851212 877273083 914478601 843064110 900536847 795255815 973723947 993339388 999491700 517378232 631281478 816453952 918653270 833385538 992566047 295677897 755245926 458211764 930352887 880733338 897259366 46160858 135042594 655845177 912405499 587224261 601632577 984494966 995298839 233487279 490522479 983541308 991022793 116223692 683229494 176286306 190714720 489649787 677171322 178281373 418688632 454430959 893920542 130969685 206555996 721330759 972109135 513523486 697066842 952791630 986300831 594666246 998791314 580991012 586761101 302203312 797470709 833641963 937138065 634962859 772617356 821880407 965372750 467164857 671760801 229099403 343366939 189304811 844945271 920939307 962318856 964178823 983693871 875301856 883209178 999698088 999904743 789510155 959487878 824847980 932882191 794411215 976176053 529567467 557014405 640168195 859948353 100097530 697621284 924714010 930151151 379140311 981619926 27190844 142631727 137700231 196004314 737896341 919041963 644506380 769233050 384119281 555836271 897230972 994167942 310336779 480725776 700982400 779516638 822163535 919181808 34831385 68472301 732616690 972129856 676292109 928920573 552621616 714780563 447745262 466477502 973568375 988364650 242814040 774712411 22278313 655061689 4482255 53100116 17009091 539917467 465905946 521388661 171990904 319796074 332495718 742140904 794639782 973278259 205915672 717506174 753664363 931768311 654748224 988110990 685368877 929455293 262316744 965598011 956971952 964295555 25980794 386674657 806993666 976622925 75834239 739615476 766749100 968755957 870255937 913185103 128586074 220793331 222571282 807862159 157999208 407518262 864578048 984678926 287591017 532859927 360641789 435048407 810224725 961916311 877819754 890143715 716027746 952095309 673865960 917345326 138482695 290652080 678915535 717208804 283909773 495056953 323004330 449609836 669817561 913432233 807497750 899396212 396413098 682465048 384083300 730515185 508599622 759062313 224015488 653641118 196496300 619005008 394424531 975471457 692293461 859772543 37976031 717415422 652649374 746858945 272965484 646974988 53971999 823454149 648570455 860424362 700551471 975361588 624398615 718528078 170404561 341698800 580378308 687843125 134012891 967273048 52319767 765881859 763378685 764420153 543143451 799830298 899373607 976165424 6383299 981292709 105354047 879195256 789802781 864810704 529873828 871167782 712286308 897631756 983951076 996673015 859747559 902488717 691687629 921785092 632641627 970024814 336499568 705745608 627879582 663340152 340183260 525940243 508348129 880943708 763018514 810048056 242262031 478076037 259950500 931261810 228125728 778352488 177659567 992395746 654458212 731062918 847995915 993972224 662248704 969748475 743136990 896625984 143472853 972907913 990649885 992923437 712838221 943707024 19754565 344926191 930455579 968073312 188754159 849390719 577524014 760809714 925117364 968815138 655745618 880461678 864787269 974810470 433049725 547156976 534205116 741031640 288625417 761289262 837035128 969286412 700578812 860018187 636574225 962031729 209572476 949104733 996583899 998040930 83638059 437197534 823168725 898239693 571341752 678860482 429635927 434341592 495178819 756263572 359146815 698388814 701442409 865958617 661786826 699357078 83236285 756618109 123792236 710164159 215214250 278559115 652812465 820569640 300154744 871112678 911222217 922048547 698182433 740365188 115237771 320835352 355405776 362841513 334278956 770230851 690671181 986032990 672353300 780404924 480438706 702565448 362797813 821543616 467232738 989108458 145347868 207678849 226113345 755132843 77858258 495990010 244989047 721757343 193179486 900770530 364262772 679997304 503885370 715844607 975147830 983233690 539504936 577100911 146600801 367825441 751378689 880372613 563538386 749912912 610381016 700457752 245467318 716508742 598560009 790545729 882006922 975501093 106419618 206454848 415429744 479237613 122849425 896189941 9120737 431130898 163986853 948762260 326524739 476594050 177258533 823767511 277208162 382097541 406099966 714762211 825332667 986545819 649527738 675114974 102702318 449517020 208077797 677400516 618374001 792550729 740298934 799357163 102933884 434699936 276710618 480169377 343047637 837810623 61974458 546631721 347383156 975709011 252387184 622056477 363729487 689806330 550516815 843390552 848999975 989805252 238540834 305651278 152028560 749248264 431045634 547667262 767757808 981096229 62827120 596653835 805142368 834560941 322464423 531589224 10674327 411953216 98005181 348728716 891543360 945840605 525755556 676867524 876116294 938674499 191734855 693705000 53108649 67078682 824941097 977403631 985456559 988515539 127789517 675019723 504988715 700693403 800953582 928096837 67963350 819416294 703028312 786961817 134890342 299669471 305028116 579203027 854818534 968963079 735966915 848129419 313481468 506869650 372853413 543544387 389846112 508510740 576068621 662328055 592870249 697951105 104380363 820590179 203076208 518593188 333522947 481730536 208990536 322168349 840886386 897161580 768290168 917579190 262325398 960323068 656435768 721881245 664517551 792418071 768721360 973688791 740853991 980136964 614213040 774594900 919337680 938605934 636845124 789943643 277619406 529012961 9408462 568386297 712219582 936155114 67187600 713335098 687323547 936665264 484630386 707682508 639288785 792024942 257296869 481198121 240547755 270519676 126810576 735461182 762655817 804393533 724940427 845417640 497401922 636259200 462798687 504888170 961101195 962471812 766998588 871477903 53386875 564726971 466611103 883368595 397607326 613776090 88272056 381233797 396348944 980664543 531073267 951660126 963720514 988215501 932519912 986688322 638067824 639303259 231483787 403130131 420612435 956157540 11906476 406288691 959790752 998398055 704077943 975908101 127933543 651883329 29150180 301732386 450377442 581585454 410582487 860638206 600943559 605372448 531524788 747347583 577894048 743880230 161850388 903694216 731190036 948570506 993005218 999522367 286514521 748990151 894053033 927242170 846676958 938744156 320103802 524501947 408542787 568363791 54649812 627482509 830284605 931985201 648063357 852504925 422239079 999696358 889578492 990141603 123713193 330039971 817687129 944302068 714613597 872812847 203728140 417932480 693347855 696762351 243231696 448639912 274899012 934000015 569423261 683751459 172401408 254768789 281349376 514685809 894725734 980167614 938538563 947310427 636802132 759324262 987783597 994967368 846681494 930424523 737975666 775117000 62606339 793959026 379133883 464243886 369330490 946607727 603797677 916479032 908018230 925991394 546120523 859927859 96164766 181206636 628322629 879397172 120108679 242276977 92594318 899704084 618217445 728232038 61555388 654235699 244203944 504157223 510758126 965360703 279437776 369368320 930742490 992358714 522931801 774181988 601603475 675856790 429926443 491354857 838309490 855399097 232248823 750160144 540986482 887441069 13142556 782495403 989292934 993038771 137278112 323554212 674900620 897961392 269290232 783565517 729854995 838861796 820426027 823288785 956072973 970417936 372838730 514588536 13067012 40170974 919891993 925566555 556483871 715479378 342063475 908257516 167970339 520384213 580274427 942222568 351358116 653587341 839195537 856961262 451731155 750269764 151245491 834733054 302833157 720479196 215476127 872627505 943264496 966239298 522204965 931804961 704654279 733674264 546992796 926849773 316945630 810757447 5758313 538194347 8600144 318841863 732415898 933798779 457974679 653821489 688536796 853565125 200383378 417224394 67087461 773231731 495909955 710194835 310740817 387056160 997561494 999820979 650494763 993564575 386065536 835994118 417711669 565697648 933800947 940874197 158627569 170388553 408366340 708390080 811871093 948540980 980290903 994189939 332018349 810414276 238440327 792632170 436628415 896500980 853746060 902200299 782491947 941409794 594565058 624379674 827762435 854472559 244260560 806748163 317653664 797269868 773293526 910240174 289716834 470241786 957709184 991384228 132091067 640201028 285837567 684158795 894281315 987564062 85067372 475554563 638909139 932420828 108788149 317211925 32378123 428077716 726570811 775649728 808364877 978439414 764228531 779022210 250285778 778266023 565561034 812732036 813926939 991286156 261806879 429189590 426709755 433614253 668586675 912107667 347654726 947609036 213739525 233499278 836697235 842798640 257479248 964163964 161819248 966845546 859559056 941624184 213420236 820109079 813174062 996083433 335790110 901681429 689549729 709736849 498296899 631160839 734100211 892074224 240434062 798831698 393462378 792370257 340830635 772754681 248779476 319174395 832209845 902856201 685064167 876854317 246796094 758876317 34494566 993528813 706607295 778414228 982936526 999390878 953095155 994272278 258534021 335083274 576105334 650866851 759297948 790126210 699945440 794689498 100239503 340682117 109263555 416563192 795293078 979213257 633898333 652059192 543590530 832488214 158445996 352668270 579881858 864184267 960105799 990867581 207508132 259830457 488516269 513451944 775450405 814244348 646065600 817038780 562874497 871295806 275284841 276435005 92881824 324682008 300544741 403211969 364634667 611276605 273130161 912433116 581962926 947695546 163330259 211174600 351542587 849782731 264972147 849275591 864686577 892557623 685523012 966500278 868470211 958411110 258123227 860286084 986081346 988068625 741140900 959931451 323812296 904638436 55849444 775322519 998608288 999731041 365032945 495875847 460960598 558667521 54012089 552763011 689211882 788701526 766845703 908378299 375615207 833349060 509327455 919200525 262961942 991162155 385424100 558648214 359170113 630364719 175451977 305938406 773431644 819777742 960010246 991644024 503872081 646842291 1431422 58348442 290005016 930550584 602856682 675176186 325754253 462997664 695475441 789824699 562281272 692561435 723977369 797882152 929324081 993647019 705135686 878593711 683323839 689466332 707108814 927724616 183069830 235944866 262017142 278891389 752538395 875367752 212993334 315339459 279312364 898103977 769997531 857081769 579623937 605859839 412219250 633653438 567104740 594082483 680953959 961564505 569406273 746159402 765995842 973180192 369047989 797790396 490248903 968618084 82202456 931545223 73073458 678272482 159172654 809491857 153907986 692094337 80748759 971087220 604396296 608381871 521062828 843227141 640975676 916118609 141948868 542716295 27144223 66630240 605448930 617634743 20835401 446235760 742132428 818623096 639958730 812060123 504445992 783453019 336368998 948558821 724848231 850621255 379077459 581198221 887302578 997883502 678701612 745811420 578120501 777837299 643594106 676416919 109048343 150466399 559229169 648459124 186553216 367199504 422416520 658617804 962468880 964930641 132021905 527751257 149331899 418607733 685213300 864434827 507703823 575142140 505318833 717846956 81829041 421375220 951977823 989617596 664853243 895491116 752387165 787870883 507033618 766356002 456475841 681892672 893431056 957807203 651050599 936511763 134821602 540713267 26985671 388280962 743972947 969761689 948451214 952525890 46955703 720731772 454762148 711935160 512062603 558111310 383076119 832628603 861025639 920590339 365592741 509469227 874576841 890985595 576361904 840505138 450956294 919221486 590397590 764611625 186267786 797119084 252086345 502098693 930300237 976134017 272293946 541980450 744808124 829181991 501060535 951912632 724936947 971188350 129732955 249512677 565766295 948594558 128867530 819992727 988830748 995923316 336001702 834205344 291815229 990747444 116521152 320157815 308445370 359109692 842682185 962426425 833605 478240979 310429784 373638414 734015217 781621529 469374524 542793555 586484207 893859263 833827468 929892657 567360383 914927745 40286283 902427461 537083970 777841008 939265986 966068826 205041054 268719219 674195894 765031672 66032373 124162310 975906076 976821237 473644144 927692824 434477344 504904576 530284556 949691486 31766498 328632921 417774083 630767914 976089111 994645999 22513388 968583709 245946334 529892867 724248197 933067493 496619757 542618748 716820851 878591189 608713100 797357870 780491525 935061784 194242926 474029302 155680858 516319462 537911968 780068177 563840161 974578505 79782033 769381350 496367000 866544653 579449839 940907298 596193791 731947319 277041460 979364494 645698697 824273593 139175867 323164915 898022833 898144040 784791595 876722817 692892923 860140269 623319705 761749653 240335233 758165024 202124072 215196260 862904050 997887630 522959835 776744372 403646171 879125271 185216794 522976409 111291320 428284310 533720652 647508607 593458734 862563827 602880449 799793931 935582679 997814289 560597222 599997525 562393495 590528210 793348443 797482135 790291397 864530531 163445356 918002550 879968268 895060093 118346027 611703140 963906310 987015372 266763081 381784002 89787427 247103898 551022870 761568549 102527228 826396629 914900933 950684803 4765403 63684292 168461900 917153322 201213431 992478855 141556541 345293070 158949048 484395811 264993990 986293982 964775352 989036753 901188810 969097945 787113059 860332711 530826830 796875268 184133452 991285518 305966572 930931812 278106157 341031665 459425518 874507197 232465041 379140512 83995499 729539171 198926171 490771256 175478063 325091500 124166087 407458309 113016613 160609387 858774675 865347122 823199887 825553484 527280387 658140746 312224934 756560272 806888977 835861122 650112802 768059932 551642659 583606335 240665938 481166633 212405588 397057887 615857014 903390934 579065332 620744806 709939103 992052825 424541058 959219845 22441693 592427948 347707581 494533509 666672779 725429882 250206361 410702460 401318454 625050903 777724628 964440102 917625599 989316574 714345451 930002807 780997027 981541914 107508973 137391942 108226041 734967146 866000917 892300970 459175477 958601395 483343947 529188901 870534228 996556438 43609350 926962128 802525509 826412122 387532739 629717390 941772288 960968466 807044559 951284972 554826037 969380542 931645983 946419471 396613065 831370472 675147064 951545234 196206441 264019809 925642948 941576060 470419649 927269649 60183052 500951585 713937050 874758710 696530222 990222148 654908433 861180058 769655964 797692660 855865013 882147091 328325369 797098579 560613635 863866805 408700561 793114736 497392054 947543375 844846608 909531857 833078285 885748850 112671995 842013043 231281076 516020708 352160743 925695370 644521530 871002047 727672063 730793548 75226930 763483019 779888919 908038908 268206052 536378609 139840526 698125063 109718803 692138321 494962614 607868487 868957285 921040017 397729900 437096733 237087956 579112007 151482551 234550043 664782726 679887828 157484379 810803222 483793663 715699976 932498753 944000705 117349301 341120137 194791427 696844445 717124748 917796506 156994270 761981368 755993694 826683295 373004473 635644615 170545585 258698104 102229091 870200651 719232316 934397798 326671020 722294119 889457444 964879759 80370224 751819603 140891945 592000856 180518975 973307309 471369308 881678834 505533211 577756310 821385137 920022667 466350304 489351451 322684044 380246979 97351274 501313087 92592826 428075482 962707772 968091642 731220518 811893690 471907062 533046781 108652458 419588586 60142121 66555259 363064912 365173116 264885579 774107274 597058040 770501750 205270765 220359074 65665607 790280427 621924811 678570293 902742951 933869781 953611967 987540803 350405969 807602862 678047146 974198174 206833069 622477103 812770563 897513944 1070126 952009083 654245310 997247255 888689728 996748489 430632958 948474041 186571448 770057271 589216572 960519891 570781225 985305722 757766213 964498683 184374580 997946998 930242918 947922223 797963093 935370651 940630214 962018340 506045604 692566095 257115462 608181618 161592774 673033206 907706391 948779744 277037649 520813965 500394429 812435105 376516254 386552007 743359426 788504332 509885514 657844348 731147656 849966268 931975496 973030895 751742303 935265386 849379897 972839490 492692896 561129749 16754160 198248689 409585735 936450957 246554938 276918704 400031528 816691011 518540276 707820595 193200884 517855926 675575742 708639364 335465935 556708975 827178783 906113114 308260694 799655700 197407355 351518867 900486707 991247260 609097527 942500817 583280255 910910677 523187054 682353944 955612082 998640064 760626131 860926120 143036434 462036307 182071215 840952755 512567019 571288985 598293790 760612096 571717306 878723527 166428727 750459718 488363549 791404575 754424938 814670283 197209168 199581499 865477938 954425838 171353255 890038913 332356879 678876677 278184943 676544056 301692522 825469514 750825764 793953726 638580961 969478622 497000363 944008465 685549381 832330731 995022727 996666314 821538145 962164854 92446278 661206891 157009204 564429818 8733404 556844528 549630982 598013023 134423493 929796010 514122121 921312043 292525916 382531309 915810048 966776934 415088241 936615293 755211682 913248234 262090507 419160416 894795451 953252337 440753069 494507073 626384751 817321970 886170261 920739625 523036798 808870323 610435461 831590874 425636543 912191238 885264345 896936859 818967065 851370784 791856790 903330523 938624495 960041427 658307104 762720542 751068806 898826895 642597902 861827395 705033955 909881697 220079368 469401515 726167278 814454417 391073474 640613018 51539496 937604272 357284140 762161187 204288510 707255581 45659439 95418189 981912008 996187472 630209275 671374761 420582149 930475055 103999752 244434939 156858910 162034229 218738952 994338914 257461270 952816553 39991557 540688396 328413807 717700912 688684649 755879112 782606913 869048588 707801187 987542168 764134515 913451322 841739150 865328219 509352335 557937739 674477352 819484606 819412028 986799382 375248944 965273000 780221143 841587827 865655273 921588077 227577856 744051770 812821822 838980799 486445403 987983068 491139328 498433041 482952551 863954062 969063499 983655885 17741269 656099819 607055416 780243069 225767483 427754438 59769490 79934573 539790039 582306988 815490375 824232925 978181624 987022684 678094266 905174499 706737811 756778084 126558474 988774935 270838160 657145202 641241360 699839276 270918277 557265203 188287267 190122810 29559996 93309122 417584332 782499764 412476089 814403876 303224176 470685739 395580026 967482123 696330484 913402971 324157481 585473856 640316892 665417110 780423169 935537398 50800897 789647651 617358230 797603348 680563815 977839078 744578615 769031226 160465385 848209149 493872507 723402592 249245135 552851126 25806897 760259987 650792893 836426072 341261896 597985402 337448570 902748873 111487104 922450584 243652582 292305531 103050970 621222341 566715692 716363084 542731578 842468309 669560519 973076132 945597533 948375411 991311321 992923658 795020632 878140570 20947794 623561936 778826898 925418890 21700980 878348536 539844756 935341995 818918786 824795911 142275404 207630294 426435641 946871436 366749347 738577751 277290809 992304473 14371677 667596184 806492944 859152901 873913417 942007808 288560000 545158674 168812308 298711900 36724680 524732794 860622401 981233313 321986331 427467159 271140407 343718490 325435017 370594064 683909693 687174787 793861960 813222664 418720995 930517058 44042252 234486098 871841961 914355520 642546502 712594160 541406724 815704973 804128764 940623606 217160033 353088966 41408169 657085207 174366500 897578580 291620587 354976212 632945506 795012909 192944731 297670745 442956667 447162716 400035352 410842608 194294621 912562746 690260192 923623545 304928065 408648995 967642050 994366517 378440430 522354480 306966194 987677066 753352933 780255099 3427887 517433932 848322614 995939783 369577414 832987351 76866143 875043434 191564806 493826631 462996547 771532277 865984306 893719394 210894556 481929186 999773000 999984238 438548554 702927041 294957118 520928688 468975977 702486161 955473481 995151123 395803429 436198045 178377699 200103342 857249524 873779382 835111011 971128058 447112237 784846041 167448555 590036074 496362776 849123457 387942310 543829170 629902032 733638365 928744458 981883514 573587099 630299229 949090359 970474836 520232050 734710475 688302186 710250529 914993300 989863701 439739029 675178200 613943758 781476646 138517244 177351576 727841915 951151805 908949480 960677939 122928014 367434974 599035728 928602552 43358761 599311389 634957841 765093167 689658179 835911549 815736841 931429109 625776704 906608504 284682702 304003450 52880161 60525332 810681653 930822939 367381015 562623111 336975136 599867385 891179195 954544801 273147688 594411156 731234156 938576434 673704550 792721680 328338662 684561507 123719733 410671997 301399402 361671495 409335689 766942560 32245109 59313265 864214767 925330982 975031240 977850246 187991230 521408575 465341848 780660288 866487557 963120627 957910913 964445043 118794882 599421015 848088018 935914627 674355760 862456641 726861765 841426161 530750935 894867717 302085729 811195234 272062941 506657253 63152304 225559515 690990903 952453020 23017129 459232677 450909280 564112535 409923899 560645273 696193253 771845142 161128194 978283963 539946754 565324061 112271092 445642069 291723656 475590079 857492805 970458976 191341854 238202164 461522968 611308606 38832268 380708268 315472777 830565662 424993799 534275853 839971856 923718958 953530970 986370042 768363633 873339929 265933295 401668266 356755721 528136532 403897438 908193799 402517494 586328626 503223603 575615687 72550622 496342295 391339714 710524962 750860308 990164747 765409737 821875521 566823243 922046943 546591270 930852866 832018397 872558500 519155100 629494396 865822948 874095606 905167673 942735288 118525028 754320048 567491634 644057948 700812037 786140806 215624704 665201214 34857850 251812342 97441072 461249219 593596095 669371387 581236517 835972369 40312208 666293187 22866109 448260462 174683825 868468477 374455583 884000842 679705707 887344743 360128606 738069105 385140910 688578977 818365606 934973288 634306182 967013335 811131546 946154914 179137074 869255247 631882837 669819462 31477481 58641495 69637395 523053405 855847659 960239133 186427693 273013236 869384663 894712274 508517849 761273777 777169788 999084160 78595718 227006707 318180140 763540630 892981623 967820357 815880905 904489787 268418391 681270257 86148574 143021932 536075226 985408265 90741123 125153198 972997091 984115108 723068670 986347878 636152450 672579429 201717518 416398268 727798420 762633973 583140800 789945973 652452920 749561974 190885354 361079022 401525909 580786156 580558263 801683153 77259831 676276221 181583388 927100157 999520157 999539695 795383808 869398349 803785930 940724774 426226697 576671017 640455460 948977818 891899614 996758371 70424117 453548809 156488481 743947179 335269928 905240878 362958478 461540781 93899344 872204124 251548131 950480673 482343437 485615750 744134549 991829721 965147483 970726443 617749162 887613550 243678612 420790568 104176051 315808055 952902398 967162881 923385346 945399235 72173530 524043378 73215829 298988235 675770622 890102762 911713510 931515176 115579540 946166331 652638251 785832565 670487916 787052928 511199888 845011122 657476255 910015441 159447467 885107976 937608525 977240515 298585231 714355300 206860158 561638141 378700279 527892901 507778961 766286151 407279416 759807013 696474756 752737131 387357748 606460008 844139027 969094932 541475695 585947122 179406026 611029450 505245128 550548864 674053559 858715617 308570818 599805755 228250264 880221791 87906616 245079205 982075389 991375170 420185982 980438694 205435009 430398985 428007017 890213941 120168316 734662848 73017986 245813223 698908983 801089357 36490330 865309137 942051401 996917127 375358799 585232249 272089743 424507718 799530221 963270955 224939549 609038887 276532615 450642543 491689851 912887900 18699623 255683096 551025644 877287268 441248846 953996562 597132448 696528872 177526692 872819932 158547886 569473356 664898091 925804968 998851040 999666632 184865415 482861316 704684839 984417108 447482080 903845836 987805237 998951895 868836044 974532340 147381399 527278249 528959167 741709125 539274074 829262824 679035461 887304805 592267570 660556623 413932813 725743620 388069967 829242179 579667306 830716453 54343798 95552400 55207097 606997007 93034797 572035837 975556124 980337729 228415414 823775553 566266258 990492825 6219463 656691158 606633226 744228839 200457462 425446432 857187323 988841421 629143439 874567400 479101168 486193511 224306298 854955031 554839162 691021394 492935603 712596641 722765573 857512590 129616322 541910274 390120480 925954526 893048732 954307063 571805945 749466630 597690913 809890506 122564949 777507101 204336275 222788341 724379579 831334750 95119870 822847007 699975892 829770101 585337915 850890978 13337740 701616626 313732387 531056064 539669998 608877173 765239172 891981252 713834116 740443683 870060411 898052841 817306288 941918481 817296713 936833181 786207957 973739290 250387749 266324687 149511339 798621377 333588110 546878055 68324656 82337924 204350867 583907595 737296705 753224152 161462176 842194865 299415590 626332607 857236193 866695494 62446796 613985006 707668758 893990209 129755566 906470318 509403795 905497888 672119209 851660920 3827665 661350400 542542553 629002253 211168679 386682789 483233126 850299269 158557989 315034163 619494237 806230444 611784722 756195104 720441245 807182068 535771058 603918519 733237884 908893712 811208066 933353024 227798418 395416660 476912611 719768301 818250685 897527063 778317764 891567044 73476910 682410007 870052063 936236513 496735773 750219493 317927119 869514731 909799209 930143376 872678322 877813014 608115665 651226928 535512194 847848923 465424476 953071281 332756110 999347157 293525536 954641655 218368851 697478916 241010180 355838584 149486603 864709010 47093099 582576549 636952418 683628931 709238975 727172907 773016459 851550690 195132180 610218911 895440942 978878850 507224004 534662782 822378455 913738374 79937143 515136038 498017116 647277821 218786973 474378218 330057426 575979511 157322701 977838231 123312446 919717908 350206839 946172662 42422277 280506174 685023297 691671069 744427049 839054203 28013091 748838673 689128368 871487843 421733321 847400484 737660031 877475887 600235289 751520486 802625180 930713762 170478619 499232352 811685921 956845268 421225081 526206514 40778952 859517538 82264791 322399937 19386585 390851312 682972197 965443505 597739374 666076789 996128403 999707160 750710768 984859920 735017084 931570994 480181246 946581966 800173500 991680699 324156875 924096389 601486769 730399756 266834193 648259703 870869379 960594735 243390697 784442529 152017680 926680161 638354873 971232758 994419167 994835368 531961092 758979832 233259242 867801475 408180762 839576532 532256169 766992706 436052145 931811927 51425987 86287754 733945753 937364347 359679031 392427061 595664051 965727245 934765163 947973271 143728930 591858461 756638280 828796308 128089880 168555402 28774521 345560296 416378628 466300792 982441336 997789682 434679802 949969971 651305329 876015621 695482616 774955648 565864222 723466032 804872743 909092642 419707579 594968646 583875677 656493770 117027786 774562836 58950237 794821917 167815431 914957971 72914914 540413156 409216614 631647858 772360464 877892942 214192656 965515421 580626961 848396709 325507242 980328568 198540225 397609027 611588840 634751699 338735486 495267800 685205729 905884942 119603017 481620809 811452201 857247890 686829460 969576359 879722666 886273694 910835025 983701629 437518688 992429844 516856326 727284673 640229180 750985486 872615066 949145061 574020293 758550777 991027026 994342859 303594310 960055853 367741118 960627230 982728107 990453678 706276653 740144507 808868026 968460716 711613186 923381337 65097024 889700443 947240958 958631893 173009002 490855390 542747150 923186873 929763796 994862809 467470165 841439988 389156151 723950649 108476262 231340816 39144813 418943164 453864501 615189172 156517183 911324001 286354916 570556078 809419046 894390703 190705467 757733633 106653024 230605312 554938684 865526774 667694169 888779031 747695931 832428205 125022903 495708110 267342931 267956120 585715355 643613151 771611049 899239522 622833204 949722646 224113948 960614040 705956719 805765312 795561844 944440372 241513672 464043432 43000396 213060584 155210001 673464514 17304819 996574447 988378845 992552261 456130200 498876171 456546443 790629792 462008162 466663812 430218976 812735515 87527870 547923298 51364936 346123385 18505585 929350632 695193925 876546117 407634279 602391845 508327653 685729330 650041447 862164749 169160323 243757042 649138006 919230853 623736530 733253108 968086810 975252218 562521254 668226413 920845500 949542948 811142537 861963823 543334095 817194537 459547732 795641728 90111631 513327577 622520633 716608316 288100814 417889505 309411226 956437461 946671448 992904336 323491253 396790898 304595489 515424559 853453848 974063858 187377952 886653385 55220609 562741798 690341197 914851288 284619002 712391240 904286729 966871835 328213188 731508322 714622871 775034637 953222089 958259963 496969862 957128829 28043691 717418470 225109324 926529532 754396309 964113662 536212569 931996880 118930975 808713502 729523456 840438949 408654157 952995820 103723518 733673801 70433931 213471800 136420541 815475474 128892945 912978316 868550616 878861419 309142555 505930723 997741404 999666468 861686370 906651527 689533446 769005688 420288360 491133885 634503349 683642114 792244798 850134564 455269822 935433134 468374511 646824336 682488975 759908042 639316916 997990013 501525091 715846192 203710092 216626531 723517819 894992750 843964356 975001069 454299868 486543698 483946259 977178026 451781568 833350732 676486469 718213696 321177129 671184552 627587736 850791927 567858879 699739023 332183856 480372201 545060458 616936621 999429750 999870335 72119115 807596652 31383981 756801733 296238130 761512970 625902636 738175005 51510432 708378195 336028691 425811781 409427588 815578571 129547182 727733563 836215892 882273770 958721742 983376851 139831780 902871857 388928667 731218474 162300591 379282942 726329063 726371611 726773331 959812315 87058679 94581952 937750812 989496989 680855736 880286750 804123898 811805392 966986896 981110923 382021012 563477774 132389979 716809779 995682364 999537779 359604982 683992180 515686822 522999105 411136873 498746306 445100505 887249436 195863040 320708903 797635351 816033803 128407396 164335258 395868466 640275921 692602636 771738190 903834288 980478822 685219502 895490512 926579590 963346168 518704124 556219338 350214119 831965450 84757441 454965741 550924372 564541238 796899214 798241993 426536146 763418003 976717616 998109609 192273674 271267131 35541321 849536159 697133646 721757653 970373849 971766228 644966305 755789466 702617372 877351387 139137418 424996999 939245158 944139708 34563551 721497669 287177198 535587384 244165774 394681026 887288178 891705852 33765784 133699831 349393683 637725944 664135938 683472859 207508049 879809791 350764136 495847348 347719510 999125818 515692885 791484312 851859254 921597661 817884088 961926630 345677280 714194314 23601207 678720026 660429948 933934425 597349685 633934557 304395076 842074660 761362984 832744140 115916606 356230160 779529022 898446909 339921513 528935672 270432288 911248286 571176108 601153858 249271793 650344285 590363206 694197164 743420728 903486618 90465384 771240207 948672065 984463501 189693203 391951324 411743348 617995149 624506817 784241515 895659021 915008545 345133297 797751156 270801699 681562108 695277165 742864482 937983415 997786303 316897005 562317822 381371731 840050722 637520677 706383597 499518067 666323465 524411777 962363267 640756812 828786365 469271382 802594683 106790118 285053133 776926173 888424149 177616001 505262038 106512710 386079802 604448424 771719615 225399755 456664025 965887699 985034628 178545555 508632350 727207068 980032151 758012553 848269190 440445210 642223703 131624833 279621807 35941987 37049565 367869515 962054497 862194845 918868551 412795372 427532022 279806308 848190440 49395581 562734536 329723386 836739623 242298772 347844858 691362352 773336550 320558344 575700007 940748586 958541038 788661014 873752319 216213468 522570434 298991737 742988009 700156356 936313544 165026441 354443351 134640664 495088657 182452703 701628231 653440325 899513211 945740450 958247669 705389141 977471147 306988093 353055781 520183232 625165191 959121884 972719261 215463364 298528047 607753863 756221001 327977143 746092956 974115132 988567877 403352516 538662701 574776635 745304180 185216956 466684518 870157474 986458266 181490125 647403374 923192736 955253141 714490676 831514871 378924852 521822516 856415272 910247095 556387179 884373711 569477437 968678213 527945618 614042876 574669815 734421607 387415423 597877229 42176052 213032606 752900450 798630699 289328841 719004246 898052801 913600346 239001159 667078253 257382065 678107304 748297832 994674878 747467956 968614687 989106223 990676097 237285012 483372291 381589266 676332863 703666410 963397118 633666960 713337832 182928546 577070771 568037819 681126886 461182986 847564369 529158103 961672489 729749949 798564247 375570659 524666791 573295797 992568168 329352078 797999474 516167526 562736418 442596705 981118899 895650671 996672489 97060468 917795601 128497467 823124764 329468599 722456007 24740768 916863427 27376890 729401558 296034495 887330371 410329937 859203525 821084701 833844036 296766152 949452763 69273550 586877001 665285579 747505412 922142973 996264004 913726973 977095432 795085239 926103602 852344171 987724050 469377375 641037066 801547986 912079776 966573458 977552416 422982189 782796649 164714130 247540089 710553168 949034927 574383902 580588016 354774542 694916074 461567972 964569341 225409784 553155894 824680183 895934249 362239122 566894782 269894535 420904055 978953708 987032761 891187229 950047768 718245542 726100940 865137771 903063339 143656465 572357447 460090544 736300555 450207716 725589305 590862908 791361147 461976739 930555620 814118579 933429513 348134203 980154735 116849257 559063144 97974414 784047904 711167972 925685698 507310444 911250383 582775877 945263955 490365449 606728877 745091150 931036798 483604657 547651172 268295998 295643536 446643575 987322388 158417986 736976660 305283246 478372983 703494224 919552737 471837238 636789043 955883043 993742140 134710783 453358467 435072105 675304681 574909636 970805560 809957274 997441454 513874448 584205193 560926474 598938204 40502523 73992894 444398807 808459082 603943552 998218257 162357635 956104849 842853737 899244410 5895266 127329968 275323802 986192757 222391656 777768088 289381875 616152362 441478391 622816335 776574599 782823330 760139993 921277830 791189496 800825965 437613170 589875850 909936853 974764413 776207768 795362905 644494627 736791133 774595795 900600095 28345674 111499094 608886986 960345647 758277798 799423145 239138212 275808827 45133769 906837249 458893385 525675437 176501016 181555727 182150037 892060598 989915653 999985191 412332105 949307690 710441951 974554874 285494415 878342163 10108110 438490413 390377931 978489074 45270828 678813069 597800202 901560121 584049434 669556941 587629317 798252832 176816900 260081526 821129201 977877278 205599315 939412213 338445352 423573575 88503473 703833814 414966909 718682660 819139324 825415715 241656328 686622831 542594176 591649976 962273449 980859134 116488897 253329980 841103609 969106499 827764156 834559691 464380468 873884403 251445174 564632967 317350005 948018048 178116991 633122430 351927183 958469614 65286919 997149288 668950821 759743598 764447707 954805001 217725071 453110784 294426002 693068039 492724979 904306465 557693879 736501597 230196159 976649777 484261388 625618295 180316925 408389323 130394361 985615272 902970399 911187700 114673750 427282813 768748513 886932627 827595669 973143939 676505966 940114868 497505643 933093290 397435307 858266988 473947588 588901270 652417802 817326220 860424479 871884792 907484827 907598777 214148623 783297415 849447741 970180101 499296505 663588252 957130789 962430512 69599974 897190513 900984133 933045557 157459321 264137376 65444359 661414161 789719643 940925500 560420213 777415253 941786764 998468641 836758729 928213374 786799980 953125604 546789912 669654547 644946431 656032058 544791647 938170328 110136053 662405530 988974796 993190543 9165839 267431638 672931020 790057957 57780951 854619131 389764721 521258476 505622233 856201818 452008837 674072690 735504576 911558364 801935320 941541896 728162998 730667071 867674170 868471199 736789774 922454905 867437103 916289936 19215432 272208868 799332209 876806546 595353873 740526370 304351517 530559854 841678997 922243314 248775956 904758487 971142744 993742621 675265424 965131560 352767817 541533959 3848023 474636524 680638369 976286821 666906289 744344947 239155074 910589803 317774401 840062283 274905407 619542617 9839107 896041392 446313614 950937933 357069048 926960604 527119390 788040026 23349710 377309622 461880872 884247845 724906144 789810549 217509649 967458619 659138392 875791902 925650920 986590240 490983684 956349302 567959952 953925841 33104976 823323081 136671316 921756238 974064573 996310215 251116640 859449970 788342870 929490339 703530459 768492056 960473681 979446011 194263178 859291236 450980243 558960234 859360457 897959640 932817827 975105814 369730505 485734444 11733741 978381443 85840512 209653648 281854901 725022201 32575923 540042256 77089732 505079909 896868127 912654533 879845211 938089146 345997458 490502004 423120589 915293466 321945267 366648420 900044780 921692629 784814190 813370312 974511979 987168257 429551420 537510229 65252302 625989930 539988755 828790557 311620524 745604144 403105891 524176747 494027887 754617248 679675543 811321295 719989631 903039549 79371237 900460839 214929542 842515854 99767521 709851613 928383994 959748232 983161693 995292724 295549030 426862032 262951105 676464151 959295505 986367109 424831432 954293483 481712499 957733021 3936296 355429656 498892407 801684168 53725312 100814138 552465491 695543698 543695726 589487307 866615924 927217949 743041300 912504050 448315168 854636082 687076523 963951404 205253519 839515329 72956866 845310645 245315398 364567554 476035008 643600612 646479073 982286851 769862961 909371282 621948977 959969263 767784969 856622769 582497999 862141120 272938460 622637132 52032191 385266173 458154727 569252048 610608487 837634634 449555295 686941705 677511823 696052622 835740823 866865300 509374492 982756635 329718269 900277975 25031397 762423276 192789290 405110040 528285801 683785351 437909723 780165588 784881622 879158060 511539121 715659441 418796576 983115202 116324576 950998758 424846708 488614888 64322281 939289038 339762520 940397950 415138885 919000237 826456196 941615888 144413078 204204797 857086740 955646205 170662868 717337673 780154253 811465628 795289065 970726879 313434624 904732899 158635934 366292864 589161053 813347596 798106145 996731845 422806346 957724984 130929351 260058605 748882933 918729721 861610789 891825240 281039940 480420323 955039757 975747538 805702154 819424952 799016721 816380986 811662648 871600896 717802880 895683237 806157760 855578057 844223120 865444484 604638968 906155860 70734250 95310891 254087399 367112348 418452790 444180270 560846600 779325788 225341998 421481515 597074354 946695448 598944074 684810358 147843538 683364589 680712801 932179222 683863779 992986067 73043603 676005846 342390731 974613973 848464130 849043717 749907645 923183971 298428067 669103277 515916512 722804581 577226707 678009423 81794969 337835671 986271769 991118945 258620431 407229534 276686992 879667500 940094171 972625652 40841974 257954001 581569518 645072730 401814362 912699742 371194519 663013810 320109425 464286651 348850294 657074451 597107976 726325299 109198931 190432604 957481130 960570417 494763422 813826563 614063723 989572577 916921241 961520988 425541130 736267207 477669124 644313443 37549280 681100396 380555705 510225576 128778327 959139432 420418119 989217475 803723834 928544045 99786134 660571999 904048322 969499074 285768692 638088491 423813408 516081158 986186379 999064228 324661688 945927506 828932053 969404742 943318448 958176045 842964792 886072543 477331561 839181298 481391342 522446715 777566463 936077246 12502316 339463104 584957055 948117449 960972867 974557313 303206036 762093710 784468792 923855515 117924690 905371776 788849675 995002748 777291474 852935561 671517282 829587955 491590854 695606770 39788993 491041146 956869888 996186988 205217571 818320735 214137436 511218940 438065473 446019348 487226834 970057858 725808557 984035669 21523497 723061570 27908220 460762791 484005831 831328516 951139115 970571698 616799361 851971061 904629264 991882771 341372676 468618829 382597220 423019333 610001864 639199604 180462559 196060132 836852202 896027152 256250537 751290763 866136576 930025288 316878887 653822654 366746616 655089996 688433573 782291656 429235383 467445198 594158704 813476567 810709504 990093278 273576726 290443862 721072347 878753907 909125575 909169670 704328899 901634844 275764351 549895050 568071037 675314043 484561111 849335750 854679805 987748691 402810647 852802422 859191510 953261896 395760623 900745869 967655534 994698621 818995917 984975319 846175364 922486586 712984596 835113097 834229391 903411415 896050451 993088882 305104835 380516868 952955561 977309068 440274160 812555722 350112443 622901055 774162372 807630647 789123297 877616047 827012696 960926736 478462838 964556439 729854780 979029387 936837526 975870325 798155106 999294898 104721718 474030176 896198726 907827248 649105626 935680824 622031699 734677680 438367755 836566779 600776753 992567833 942372254 955226650 554006302 644275876 47438019 947135172 933236297 983915251 102073078 145878393 273188587 505141779 344118078 811702363 788248133 834008776 10645890 320840635 708085923 767847631 908483177 957998084 103398535 554571323 563689477 933797009 605800777 727227902 748700639 799966646 130923538 863893759 508171862 881047155 108175457 404293277 516952661 979520551 720021089 782686009 366798872 984709344 853027934 874494284 322893855 622595215 529100771 600728906 111578295 575624151 79628125 713010341 153322020 451549977 544487607 666261846 574639469 903537053 862938977 968272444 492933934 713685477 918802633 984178241 651355245 934602634 427374069 776141622 462847099 942697014 123753606 135757566 468736346 989729247 536122781 741752475 411170920 814309280 471556534 542701893 100079224 473868464 758239045 967266710 256767277 630309994 960244438 985879669 572451150 877264699 869737498 935663713 308996128 858533678 413182093 714480629 174291604 225085475 811725263 955426217 666764317 994094989 773844687 870871973 765997113 801146809 53246350 161399317 982883573 988033169 414360943 434513394 743136636 954697581 18882470 26854808 394570439 441851829 284077800 656810236 71501211 415004481 730640771 904523545 43031282 376196674 591084254 838360629 668379319 677421686 148486760 489207954 639424213 855821799 869605803 975585279 175543724 893748502 254978012 915073279 358803121 386456254 610661448 755168640 262393734 309519998 986560932 987240032 629401612 966795810 492225791 715143989 228855679 231215773 655365814 926467729 110660608 410664285 731365130 974116658 608590858 962359224 851603344 965056854 695415383 749000122 75224191 240324421 549251048 748039437 300517173 317002172 239404355 240463257 874944599 991020158 407002258 771764078 987877276 998511992 864515722 925257267 358842904 467073892 759463462 868588377 433908267 459368796 648947017 674780491 754901141 977029743 655649379 909680920 763559028 857294703 463297480 874438455 610942959 969431961 268178048 835808356 209302212 550518085 760806984 883908138 384599402 604297911 809512346 946675038 893235130 959592184 854178978 895454454 41343261 44417664 705484216 986385560 752410739 833052197 652127508 750743654 6715881 465886040 943916044 960839579 389369235 646157810 128707702 779000709 915041171 957655234 80021077 902217351 267245888 374532436 258966349 291293947 683861459 919386496 560212572 921974986 561657416 816989495 21967382 33300582 95659840 431962659 246777751 348541013 112183210 712528316 443141889 550754566 6942349 512998594 589754627 701981738 17323440 794570488 610676443 974658356 402584523 884337968 971393025 981922981 760341891 791933520 720629957 721253384 786494225 817412991 77724049 564118613 147128173 660050652 613689493 987543906 197848106 932067208 210548613 448873870 33018239 910471971 191742784 296225343 966985421 986192442 229415723 644743821 292637799 845704949 176877731 540853923 768424095 968874154 236541140 493592257 282699378 763924009 233655193 326258133 369030424 640362753 192083669 849864059 804824919 982752837 190414371 523546883 648842521 741881400 846326879 857255716 247297040 466211100 709402904 927769248 889570039 999217741 114971375 172075057 56984304 438218834 573851260 765168620 716741433 997317506 77301078 762059521 662766715 796945721 387048814 836733248 821171623 958116241 718454138 929328280 870148541 932904304 538332081 620653037 975325437 991110779 888740876 922187134 829412976 998076855 430140992 959156197 85029186 777559547 519954540 765126987 655792759 660488058 533748655 737072562 41693239 132584180 413507102 788588113 144165054 698152008 45849496 480715613 402547939 707084449 139664429 199969621 788952148 858619056 233113538 395646559 338966385 787343349 827338193 948942702 260900265 844244217 371928463 719465924 19938703 496135491 81302245 218896280 681785309 957208117 110216821 129091268 730612028 979484379 887602076 952174698 404737203 556624142 333213594 995079858 872594492 937865278 737625409 743048647 840949217 896358030 325272586 637099566 318046227 972997687 499152346 811586655 858708209 906813498 783474488 981487119 773121137 883937589 952636779 966579863 365644321 914108769 56037012 600070452 780757864 984900780 386841954 451077086 341381444 775650807 94302215 236568768 34336426 523327549 78564643 435648534 647870875 704930827 577701284 856117525 111935434 137143064 54750556 446463118 940596611 994631059 251870145 812030825 206634412 380658394 342404342 815714879 581089664 952278278 907989370 961444432 763158561 785955230 129450115 831849156 525236448 656200186 404032866 890944610 282471874 871180819 863000627 904881377 959993554 974167816 473452094 784460059 187645972 433452240 152213037 610041853 579807810 872830714 47593071 888254319 591513307 840966859 4023338 480219088 942217901 995039807 927987703 950349039 540985771 930475332 744873812 825395066 381755730 752327928 450481371 760183081 705232912 940144091 589009811 941791220 438166585 944335702 23438348 637329803 493676603 798883256 199768538 806964869 108604524 697023752 950760232 999737999 364189610 567382226 177491173 322242023 575038249 878782325 629408010 897056148 284331573 345133219 435273831 743269865 118829398 675395143 523352531 650734495 725002640 726408939 976453200 976857817 958196099 997341439 645703081 672814897 966493777 997457450 679239777 910737163 958122391 986186317 251795552 472751723 948582351 953842568 517490837 652625605 763772343 930850086 369804598 803853609 777100092 997804459 280869077 295496217 850434923 899252293 552586294 977289661 869178389 935159512 785679393 831014799 689552484 852837714 625679506 930762811 894931900 944012307 591718319 891291353 354718127 638885209 394477645 450183527 909889544 910383217 52019178 941999249 41765192 448273206 439574728 476898699 214534883 328024530 13803905 34842108 773114705 930787180 403938701 964503824 545181557 636606064 977457417 981471839 300711266 621947080 212887605 333004550 761908997 803247079 162585150 477593834 36116544 65139895 55851335 667571985 359124396 581876487 554073989 591256627 313390215 327362506 68891980 558793593 69560419 584481274 188409496 215213139 592927961 865890082 471133550 501785645 228142855 790042133 945103829 999336333 170485342 481034373 243389854 798844337 925197285 993070546 135995647 248748079 873055869 976909778 750567019 968573924 401359755 564183541 82741300 165960645 421951751 863836593 161401593 855972305 562689356 637734492 467406596 868384242 328733729 707162488 357837989 741205706 130680508 483947240 549441634 722661062 669404885 888860146 966643874 996134602 796613157 933544236 585271299 811396460 921818244 940101391 343144570 786247945 66412458 459932627 454498339 877479567 983817241 991888570 286490815 392853436 807911751 841613849 31044290 824787960 745923424 882868076 644392501 920071274 565071717 745100067 728119234 869126428 494876799 628829402 325312801 980686533 132631281 837494709 252532039 739050843 83782134 612982140 169858280 465723776 986982351 997527801 7168115 387285473 543658866 743909694 981290687 985269611 842955612 894321994 344030075 615507865 163252563 448071992 865101182 970454634 268772831 269087602 731315555 998791306 567305577 916249577 91682648 651798665 753496214 863358147 668475270 671925286 794263384 805731222 782931517 963500865 374852576 818616165 860604235 929012168 993386806 996239239 754014252 852592473 661444512 785735847 69698426 622134595 532063134 863711731 729969811 804490093 97022207 138701699 626158258 647667166 915940636 973315058 342667323 643013033 565247083 823690579 993126154 994123178 262633253 969204706 190420805 485313641 632235803 920807187 92954389 965820563 399286812 456969852 151852312 595494129 328415281 777194330 492850527 896018447 142420037 615223887 514889161 862567579 648324542 998139299 1142779 777988496 145663592 566415920 730477666 910040092 288824159 938018981 511721840 695444024 506151155 964167148 453042019 529734653 296245842 864375115 866690851 970869834 192346815 323638157 637967044 660985023 666950326 782366140 728370044 883101605 153951637 976016055 930215873 969858805 592798314 719042499 104872082 106806049 194983007 968167244 885458126 887358138 182987492 464468878 893947559 956697532 771553529 950056133 631539918 910294173 534859116 885346418 888820578 897053378 74476462 172320038 404083324 651407159 181035520 457868725 838409804 850636670 977325177 986855662 356486313 782468316 528131262 595499533 794374025 945667151 46424102 789184466 888840979 906806572 210775800 508979621 503432476 660135254 648808254 672042836 162525290 383483779 334549376 579637007 432735355 621314469 297799809 323529762 223610622 968427856 313871601 572147642 537328776 989621122 371602240 951216751 698671848 916661813 382210214 690365593 912869180 919361154 163661376 849396348 253314453 879346347 193610114 989211395 807569410 828002171 114479001 973510018 835100218 891594487 910131398 951036888 824294968 978501240 176629410 679440790 11570071 26780276 248103770 266634689 554017466 932761499 342961944 925035533 862418784 991671462 981851132 999847943 582833747 998958872 546851376 952965468 837159054 876396060 413233230 978199152 433281164 951641863 251452170 830235511 218346044 967134449 54258549 790623754 816115495 873761134 22912400 209852185 307639647 992454293 617007405 741470836 881555325 933824564 712904194 741647966 265699483 478050074 917481019 941344118 469822047 825547884 347045069 366903700 891802027 980512652 852901866 978266563 105179624 514144194 447970806 915487307 778903660 933537932 695059549 834611927 532200642 942829252 730228729 740095713 243607469 553911874 356437517 611858632 418423854 502765557 197288944 768180198 158814804 749915971 172797776 250820644 324320073 637417491 990074604 999454522 219216726 250565801 263698786 983688626 103198853 256124252 295827055 676886611 661413355 980870183 532286023 557501508 225605752 538116679 369147601 566957632 321536446 819468005 503691971 649874124 717392755 990042668 277624425 823397762 686823653 778997856 162412572 237706340 734598062 948896401 356433926 650648119 475821568 544207333 422685956 577402583 919493968 958448649 943757129 944844162 660261039 780449072 280569374 382680093 677843504 776191779 74787149 355049650 710696091 777065221 130862858 923546111 137354819 817703083 644225551 784600161 868356278 928235220 960480704 970063245 687308860 804055903 436626386 925334848 834146684 893553714 846652361 892956924 418085371 456439982 960815097 983164587 186814752 829033000 390143430 977588828 273626306 798612656 999064223 999535987 940131409 952561323 213135649 977697586 694119675 862705545 764975953 953886214 189264695 326240985 947353450 967588209 884814356 961847680 75952707 962508457 138838899 973015128 85973846 161107103 418117231 789932090 662315345 852941642 98682855 151816367 960898201 981959043 593481129 606668424 703461110 714333889 696134615 957302544 284585659 511228205 911402062 953288792 413376924 508129358 597677974 788182143 163779869 465139703 894083518 909242774 664434567 949356925 296594953 998969170 219167372 562323232 601517486 623951092 589772357 748615316 534750155 839064237 845408111 863327256 866162994 889292523 293441356 796702794 141094161 365255216 497637603 780060970 976681140 999074795 170097094 285259015 448063372 451320794 806028374 869085039 125971215 458756256 239530746 320320526 590573871 612776697 146829412 876063288 62906300 851104575 599649150 711477616 390054244 465052532 283745930 966414124 881143399 993352942 964274592 978428979 685740591 935426221 588025230 995736564 597733256 735997007 114066805 557545953 987548128 987750797 334092143 629267576 828418358 976545839 318185924 377550327 479115664 937624624 411556809 909482553 943611406 987347597 962766617 990319153 608484766 638094153 752083690 845948126 1715649 841723963 338145868 452500972 738687286 750114253 140085598 861170097 499057578 760487123 771370622 924025288 387772234 888438423 62689608 429522571 221754970 797135469 762736148 797323130 307917765 355471317 612454761 713684856 114109985 901307733 680477060 902960497 909766447 929817366 72750697 967469068 833994688 864404675 189389497 368017343 106019320 919321777 377568106 455455359 681365781 883783511 748931762 774217827 687423117 724818001 267097326 915862055 451004368 977051000 488699200 603267803 105901461 704443852 666562739 855058843 665347203 873181377 510289429 951943537 260319732 945505807 150220073 331169579 789674330 843199555 634097368 667095522 747788354 887218141 190463094 790898781 465766948 766307191 920014112 950824654 676603264 904422791 476361576 998765281 62846745 582296797 656500658 861729769 901438562 987607517 682992525 980243492 710050310 876755762 191302522 766288762 268505360 922588657 327603298 386236916 912890638 985144916 122001673 542578189 144643952 359623204 732210403 756172526 114843973 593485436 534804085 880545047 256515399 768644797 989219259 993158750 953133491 970258382 286063460 489869751 793495502 911917342 750675397 972408353 597715662 905545139 322527283 593140900 855893597 892540213 729085806 981835568 92307766 466655603 775869636 968271950 579234221 592651261 786458156 969007391 295177044 491012648 76170018 911196437 604379786 937675337 500817295 607147707 254715870 516060179 218111240 752563426 849098330 902162567 142187491 302008482 210787522 394049705 977740580 978092560 1674350 287269811 176437369 857981112 984041913 985862895 583395553 962286589 691940430 822238571 857799096 910083953 297164019 740705226 616476092 767510910 840823198 953456640 378249770 392728073 142138939 367943781 467423215 487963476 258827782 948116754 800297139 940550390 444743913 598065888 6259259 276956648 693199467 821054885 679497657 855305172 748371220 841579591 241795081 267452518 214752976 339376374 169463267 278149106 126816174 794245917 870328230 930692638 977872603 999956542 323413714 825070042 590719948 860592342 365299373 394088643 370541922 612550397 901574664 979485967 54281229 958461235 79105617 652776707 42621791 45511458 997618552 999949281 211991603 675133488 982571829 997575225 889683305 929979779 381363739 814323443 980431669 980747223 37294503 810782260 240718793 440555572 172363989 416438473 741303164 744390811 353177811 464401649 330259824 920645114 317575106 821880908 374626765 800123398 797102173 925349320 635889201 912618143 543806794 974002677 483885320 485968206 169042790 211581903 34273261 207572024 912240839 956385039 727419589 808231883 240943125 316715010 878575562 940863139 631863187 892774182 810311040 893084359 270205010 433638301 837582052 964999640 649933538 931982592 532065736 986223166 632913336 895208496 347487861 494644105 647196458 730857998 700737597 833275313 393675580 738199770 722553210 997712174 572668697 817283874 178555021 772885424 254195115 521102466 745753142 807132315 423715148 851155759 325877945 374599609 44034937 510998619 627961882 684679066 422371940 625861521 581442142 659116695 218912384 787353280 379513685 801018199 693629726 951637386 885529015 939332474 817991230 988616477 377388435 925130698 519329526 853228960 656047604 940754523 841593783 928730922 142515034 797295377 596841128 990458601 675061201 714094878 28603126 608213819 987468773 996889991 279270520 934377051 651773819 923197888 796574543 938851650 177813577 540095437 541455775 559613604 990726937 992077615 415811116 805025884 451622918 709039703 553848957 790890982 545932658 868189632 155344154 700874033 999482857 999881332 448043764 978654529 513327042 596580424 435448193 892515771 145551418 766556888 375995054 740210489 522286714 763018499 450816518 583126870 731937621 993464691 667921016 889635242 227089441 731494761 30634616 764914953 660951035 760744060 535525636 943188308 278166600 693180256 818900567 988765659 412672142 816304307 375176117 729171423 401331181 973563475 537278733 731159088 968192366 983674171 45316616 881871463 466489533 661879793 383158687 545825849 625413250 704023529 526849594 787042393 389831168 464549780 102606457 410069372 10541038 611267434 285620449 905609930 250072013 980638922 998066385 998773882 9729736 318486877 161931959 995271823 186498201 651322957 385165118 398915622 974869287 989547097 990963079 997824158 985408863 991203324 803344340 902204897 58569170 224152948 676333851 986001734 730847479 817717699 501288067 525019709 798385044 938829663 241653519 560043542 639339675 718700578 36615523 738570528 728145600 963457751 19673886 692724542 543169429 708924015 424294802 430241584 134842445 194154329 627185284 970530638 200702762 718843592 685438992 901873084 573171701 908673055 14546394 350719737 902909571 983887160 95351980 386392731 946671093 959277309 626447198 857404316 197091860 521384830 610467238 760738451 272645321 915530646 234982829 630926735 919674830 974776265 597457238 940373393 151457751 322034462 898260566 924870568 767960113 916121695 849464779 932340556 60998144 491283442 227888396 733796524 299602017 736128430 620832653 996005810 582853398 963329248 494006091 682485155 561193617 792314263 474106421 998569592 355903045 750649773 145430925 740068552 831234775 850951966 862036671 996921749 250403524 257351646 861202784 903095709 712602555 918578134 816439088 918210917 204217254 796277345 72469987 512909092 761253334 949926424 133928366 475708742 238472588 687506620 617850618 815055044 830403245 886342593 32437679 290283930 56259219 836490349 119665572 776979265 848392034 879066731 180092570 415886406 859543837 961114239 340309217 598000024 86571939 825718985 655346866 971959599 404045305 986292604 973116025 997067943 542673913 767134051 354502072 888856743 307807109 460216709 447576434 881531259 447660808 725796445 751954697 939753077 569633896 685882346 628394295 883437021 252615605 747158423 994311789 995740219 120474354 401179752 736243785 988987004 985795514 997764969 905801658 959424050 735514992 802332349 104677179 518676739 605206908 936506688 710665715 776943800 247265814 362122521 180298995 447334591 915272864 952249928 710193371 773496857 409099780 678742620 315538327 392903293 89305285 106166364 340586350 455824522 55963130 759822439 466812056 484086257 920742346 948259400 510124970 646083787 622361939 900170327 539781447 920941342 529689757 754735897 277537808 805434724 670947259 780552769 860684878 901971224 238420447 750434303 331712529 861240460 379228278 982145051 753009489 828759987 53743023 336211370 228213912 525216013 110629010 172038928 768690831 834416696 164630267 719263379 858366604 868457406 793869003 981601351 982073157 990858167 282090128 637398675 593990212 818588092 114974864 324236154 588288191 641302980 185749459 700626506 684784763 879693266 483412534 615048129 562203791 948852123 985296545 996674464 646449573 690540943 415438027 758140844 124806577 951502692 768063849 862324829 911610233 985212303 498703254 684265995 731631948 993319921 323735101 533250046 586422345 874158261 748392223 982942907 128415199 487567386 47058345 235679845 513503537 854673561 950207645 987392167 550699184 627617994 610797494 751233089 385498811 547616383 560400546 887988755 764312305 767914159 647907272 795084843 282163389 852937362 196501098 358637545 505632591 663762974 696605685 709229034 851048277 999371267 153562130 558328948 683042072 761634544 25315638 65817067 185783654 920749623 118345306 846269497 159371327 217450769 182901741 407622317 186167947 922134471 733905328 776707670 86504927 401953019 464213985 893824954 612877971 716339887 736728856 994272600 942348418 976679164 53851251 784789377 103247884 310159869 877734490 971623646 638541506 860930516 120184252 646688561 639123905 696074060 43467921 194875711 995550328 999994936 823060188 956146157 825505599 843232585 109580404 178067806 209307546 963525679 661658683 898288890 102115005 494097010 561251046 602623058 708316591 772128796 978948942 997437613 749733648 905920616 287197346 605520734 125401500 867477070 163974307 503862151 847936905 884774200 431708707 810009284 973055206 993725161 407367148 520871915 231846626 342862830 906453886 915506983 337770928 534590578 226398039 783050351 696062800 872346252 325667036 541023282 408787450 847320084 126401285 216883309 885487659 894085076 552195701 628219306 305103414 496748091 103302610 179691392 463094607 600463203 536373151 824086954 803754236 990056974 501930052 568573276 578852660 734455954 750140154 800751876 501831932 858273832 197224718 512070233 75863408 326637102 780377201 929049555 349530114 953338818 249984713 356128486 799576062 904776541 427524771 577501797 805335276 842732003 458106059 560041810 463595444 811820486 346463261 412611207 276897633 361453854 92466485 400779216 692597038 922641840 857546913 918999220 68759240 728642810 180340908 409491350 354518936 563303972 619856880 741639273 385423093 389034979 883101076 896014315 575501041 982441183 375232048 721342050 730831134 857130304 286064719 656374722 296078780 385501569 159522125 403421742 486303908 749157657 479394412 683465629 632900366 988778519 37160158 222620817 79382790 385873652 478665685 973530883 176316398 945979102 129619223 491026529 833468981 981750507 835484528 900347034 177153688 727368850 403226613 641318694 471569174 627251595 958931515 979020642 389304167 916413099 570477057 837170481 555158899 842840060 834643983 996028143 450837410 504447681 851366198 874236893 35810549 290697910 989736679 998099489 271995235 749314465 346553422 457806705 730205418 987102207 232017636 606605799 126160341 138995246 365430247 934615308 841491608 907370701 30255593 612631826 396479226 568872013 643367045 827599226 199213755 263467614 437305759 983720304 254065430 460740496 732370669 902236162 971232142 981707886 740442963 947784969 55546910 613583220 114152613 430061958 668837630 787545718 347547435 764909734 703703392 850459208 277876968 515083423 104618401 474401688 101682190 246830528 618862413 928197168 562312660 752099881 684006245 720525066 597393445 957868435 946520565 993180349 823183741 999154738 353296861 464450649 729726143 872041499 407230916 492339726 426567096 921527234 654029089 715798892 336871574 386388313 530577549 567653542 798157339 802300139 394736072 515616907 320438972 787090038 872524245 918713583 650127481 873422951 261181894 847495671 411806283 724121227 212544385 624117460 510113483 691449425 909142345 919824529 204093570 557507276 36627776 68103321 411575770 948435292 594759306 665180324 356259270 809999695 681343628 904763781 829469042 988321490 21114659 346620800 503935787 760899420 254111540 963731091 6876987 355833284 990147356 998593682 332736427 567721981 168578925 785182108 672081021 852568001 681437819 969422100 434447116 965607033 679810178 681895393 251561151 646021441 459856832 861927831 446639231 514419246 421981857 619694094 629137678 657164710 34565568 270256826 532417200 783455990 167987153 802433839 573576008 591153521 262345576 702382986 694226463 719909574 217717599 413498749 684960124 867025719 686900723 851934952 218370437 287872159 349799488 438481222 305749047 517072889 59134676 745647089 887625777 949857219 473355298 977222675 456669524 751500136 693245086 910596714 765485455 999504798 664481753 842985385 35142013 825420246 964876767 998894281 100719748 206350493 699885096 831806712 96336846 802403272 663234107 992887909 465404057 803856118 828750212 966744952 909311726 993236261 766557495 885172430 949157807 994539249 940052781 941882781 846861030 954610429 285321939 711048585 453669822 920486783 603415567 607688431 969045805 995489188 144629248 327037028 934970988 943034898 43844505 959458595 766931547 900605752 597621770 720714591 291577058 366306016 389828689 465110058 92900968 146485914 8283488 648957357 481360976 972479030 754809390 851306186 484844924 620450922 886854126 991371383 469855722 845832842 495197774 499029780 294706697 351230860 207197955 749919113 799140565 825100164 589327316 918422961 613273710 831990928 244126130 253404693 801786426 933576458 96531760 732925772 143239726 937568538 153528315 527685055 380401671 981847750 365783367 670621133 136575022 354523386 892379469 905492069 282919588 392934827 260478083 914728505 952079594 960703692 551849017 813216375 460397872 677964441 439540031 807819199 832862172 871255927 64508540 658884484 235315823 273313983 599241265 892776668 367733988 564997672 605576181 707083094 970860437 981297848 623883030 868869980 827267796 855705307 396381917 870335846 363445908 496549796 156998030 609953068 745348713 818262101 244731869 757720980 177157401 561835721 740797503 807721116 327208125 814614493 854568511 960054346 680740839 959714269 168448285 584329532 983900477 987970823 348556392 857464164 767295567 772111292 712348367 793690351 659632063 695142887 349414581 488557757 745303238 841908653 961706832 990863914 197393590 778006509 370163376 419060067 920005066 962682211 640616795 886665968 621993487 806915641 51120375 150086691 389840164 724169038 649042905 941108721 503554352 807644800 364383818 941025537 972196028 979304826 69167596 216465286 210765681 978800149 761127758 910842150 14491274 687500452 31073502 858952013 773652766 885869856 418834772 639417302 403307700 554701432 414678856 744147479 613979640 762518414 960816606 973864607 787326573 790747238 341141929 829479202 961331716 969920435 654912909 759411977 625442706 882789200 493980190 980576159 538145897 849792650 759554816 768050393 372754192 774124895 556511687 735956596 370659908 780053592 184580022 313515181 219316221 830297978 10827410 319144838 275942066 298906211 942007216 973245953 957236966 977730590 514404617 589142579 244963629 865541128 637030264 828014143 230145765 843614921 410514991 413022937 146417467 650199457 243007488 288459633 742944524 849964798 20344491 716985710 231379681 232264457 253279987 866200749 651772362 717404204 598959730 629203767 282860482 322436032 317186884 762242849 596384957 637164860 407083684 796382330 101538157 997602839 555391807 596382159 892627589 938382652 635125547 894085456 545146069 557220633 63258596 398619589 416881255 491447475 892919580 977500260 854201664 970102501 201214510 760702419 860794896 909135686 119342333 283496030 107539165 914898272 42639536 88803129 264246081 828747335 448725729 816298311 692440933 925104306 162460580 536449451 146893416 981931657 774401056 872652514 359899436 426738896 587383952 813595280 249483003 393578828 688913158 904313152 865316258 968863099 164776986 703859827 112886428 360604153 10766251 917801118 22290457 987926427 853726134 910512111 3610584 879550360 847692157 999637408 707833258 787585957 955648962 967892743 745479895 826296402 832980150 921758540 864946751 932099849 817060368 822972243 137680116 960716436 908773854 942612068 790675285 872249765 4361115 965239911 942053246 980580135 919213270 928495692 667622490 826471001 882127178 961803270 498801499 796065670 444516626 998148491 706694617 951125007 653879168 848924818 41014155 563558786 521562994 832200709 208014350 791829525 295948934 943446806 40328260 473717257 293811601 907169542 463705574 795552734 556441896 654263977 839093172 974667535 134312322 412649249 296625412 529921020 54500357 206819202 170875014 236443189 252422774 609392781 379790985 445554795 275322769 758345414 48253162 269270668 974339398 992439284 617263145 896659239 983381234 987238410 265891246 593439159 819117653 878841660 899337284 961317152 5802448 965230213 265392084 470649039 770555258 804984508 661734883 771969207 807852131 862315180 927634471 933435019 529612546 575244845 586217564 831599837 298342560 604349868 489760971 901879552 546253378 826719498 730528213 910503484 956078759 970781016 61732821 601580571 411298423 476351139 601138301 700711214 77346425 292138876 509328318 678144808 233587364 971980871 253932897 837091946 475352152 969590588 718008147 952207601 801619585 999697281 157448208 941524456 547548082 839433471 295143653 302111526 972164176 982123299 786710843 945748253 492700454 632053919 23885526 196196632 270214307 456856745 268301833 727313022 329722632 986255040 849354475 879224280 221232316 436740388 124072668 632590204 916925464 938023341 136037473 267447449 745489658 994404751 71690946 224049484 944931773 980642959 429953277 564271490 677896093 982450788 287671535 798240632 644592792 701479526 725166328 806646102 33395828 68480144 923000768 934596163 807883119 831168903 529181394 631267660 854219230 875775149 231423184 559907553 293637579 686932468 354358230 404694803 382754744 507803617 345080215 505269661 699738816 776878421 716012477 823433601 981369830 983909407 509914787 979037556 798583727 987456720 466309055 755066395 687073148 936312176 977351210 991252853 822975527 839403946 761669022 958997124 48316352 454348022 605309916 846952153 733702346 861360948 27544479 952178962 860844215 865526002 407899907 537330994 543593037 940250615 469463330 859612335 393864632 929251723 653397448 660647171 126589555 422375216 841474356 978312205 955402505 957060222 17072540 476921161 478565138 584482006 292716619 488823757 396989109 942287609 185506504 403507361 207000304 830159495 512366750 710095415 71935736 781591286 999724453 999956700 298158645 513686199 359806714 659424499 409965936 602136133 912151279 928663208 767553909 927879188 653314558 894444693 398621592 919319191 675780843 958939441 831627061 901258247 543035874 909786261 665113051 909092280 960995612 989508692 453897689 690787124 574579077 677089468 98560716 557060172 604543558 708163802 840831514 963999681 247934179 283637794 471041791 601423820 689092031 977780183 501753450 906727830 909587316 993841885 242832831 727940320 378167564 555069863 972334415 991584778 870312645 886706195 240986812 492122100 152999378 503565969 377633998 754146549 355996855 589340434 67029170 365388980 805718812 806039278 118367999 228229782 886296622 941213047 294681039 746930548 396040480 483823723 445101021 610697190 715038743 945951182 602766529 866294601 259106451 881356867 805260806 809656286 357127885 996884326 332917681 777277288 89166121 947316366 910675427 933804478 480601080 916570240 787817720 930509196 182316218 223767072 670880892 816269298 687013338 783701423 35430548 156797552 660421766 972533045 966490679 978215416 712999814 899215557 728136290 817416957 949956374 968217376 419865854 656706905 676187498 997145881 426153584 810789000 422673456 557146772 179935111 796465556 863861675 908420382 325419345 901591830 130820037 584600851 976741890 988465106 148741294 986882916 130340896 439558865 167775164 215074537 560116688 625319592 703214828 764107751 269613940 349859987 957923733 983240155 369108539 802370337 312963334 399490539 825165881 966670585 911180048 996022853 952145627 990657535 687933903 758129655 959922152 985467244 887131257 986002901 586592830 931291553 635024171 826558886 838832253 939546403 316561207 956358723 490504908 581869551 554384076 738585470 269597881 593695942 462751444 988345743 368471706 407963004 268665791 763959894 913298010 980385716 884231375 926593257 573857021 894572843 757838959 937301588 599359201 698741467 509307446 964596917 293891728 706569218 370360157 458469932 546520688 921110342 301186606 769122831 738868120 899301360 775507534 910732068 195360765 595101256 188119712 666219053 372890814 915838353 61462007 994030473 633892689 847174218 680852457 687711696 650393837 752554623 282783562 708521536 577244916 647781007 844125236 914997453 219992523 802490196 942932325 984660539 474337530 831004321 656239162 950822113 435003083 606907996 838979694 877478763 921526649 937724655 850628702 991620736 767170074 981253517 60678203 760356460 713802861 862416559 210592563 489148060 431376874 966159062 450746500 718067233 399018445 917000900 934981740 973925508 846844934 993412712 255826067 678672862 959098825 999595086 686007851 888244898 272190304 793218859 661944671 928612380 315357910 433830080 470900332 795947835 538420427 894032811 927034704 967720991 370588381 824459061 837747683 909241403 520019277 687490725 169790353 302696804 802227826 959762802 769535627 774588858 785450052 904126375 719804993 888394475 966992984 999359525 604932870 814554143 80967657 632929158 687838327 992128884 723145636 774711075 610529638 803151760 598641389 604601292 583289806 592989260 809774384 823692477 369360699 617773000 970721891 979091063 767013565 891633324 938525005 953495277 716228098 722257708 678361936 683273542 136561261 624854108 706478581 718820336 654484980 687158659 443854864 824653859 913405640 991362987 266773336 881569644 336062026 809945337 419208117 835217919 133583419 370658313 206824032 468969323 214907347 472412584 399450712 673617243 965972227 997829052 778752843 955086729 661687689 669053667 810401296 918413207 122655010 330339669 199621069 680975978 608311752 915424940 918868717 976559002 705228371 784314054 445787601 940169429 145699236 304634142 226250428 956249928 645289065 985390185 410707122 454052741 227340633 778241470 10932965 916995820 578511084 723297218 959484452 995651272 565708624 989574882 676376407 934688688 750423000 869240053 592200649 883786503 617454826 740721093 17919304 287437783 717713406 861572429 148934647 457094289 499387030 877638140 162581373 448269831 365191309 584492413 913416843 981758314 239527919 612043217 238170419 289720652 582204795 695247785 231409334 458816574 862432384 994573284 861001836 971627702 970249127 988513652 671367308 839804830 66001559 134383154 315687096 403808656 490961913 600885253 176379211 842546457 699124505 883669773 636685410 814317713 609834987 997676192 872290561 883499062 402100449 616833615 259982887 841619341 860930337 931580195 175310215 651887192 675815837 754586771 222081900 991348730 396351673 436375610 595484856 633739706 721403083 934988551 9692052 241421843 345245019 386525645 368233293 493104881 973231822 975506058 704501203 767494449 338326795 959227132 623185270 998223453 894223864 977624116 193437071 262761822 15476962 377835479 99409060 257168804 384308749 609464136 801181545 914085311 479541642 518828424 805847805 957256861 659092109 873173791 191120825 858099502 720392289 818119738 325027103 594050103 678123115 954773182 232069442 389161939 621625457 794583754 865764585 904439440 449847418 857291242 42777986 354399239 136448879 163291965 764195502 923405512 156249934 909125083 931188066 962278076 707771081 903232269 774723980 808868576 530259869 837403192 102823266 811578920 67043866 653046012 768591601 926997597 332143936 950788037 853822087 870981997 753652228 982305519 868242831 941473521 430312163 981849129 785512836 933905577 807008846 860952914 317022048 875520930 131529824 526551547 754203646 937932611 736003432 826756418 58205597 518862153 243344564 587447853 45964731 558901062 619474487 783778536 795601731 809004091 863237939 965901227 88257060 578412147 712113956 779606845 992378594 994970176 174502435 668771959 565779281 596499830 790344905 942525440 36336640 324745923 484304122 942128040 142415156 943486540 358010286 826236452 737803715 767764153 943239385 984523320 145966540 513800667 475147370 854072517 703258548 974665925 933562306 950615513 118519112 806889629 154676881 340627727 575334190 754784909 909792186 974424770 557011991 656458295 37922077 46905521 543066661 751015528 66513631 87151139 181014506 778811027 661056011 696465803 459631316 774207617 635744973 707784321 762465655 979631271 428088554 717215011 28988507 388392942 42893530 475549140 405020730 602363177 535706118 608237032 841024778 841723675 430888916 624957000 427857177 483001994 544623129 661864139 601672254 631219613 77230656 620418198 889051989 990453624 771160163 865437648 566821510 994557819 35650443 303264372 386547074 705265097 755605206 888088285 589552414 902926605 104921599 991129535 630874289 893927044 847409662 883538465 835092413 943845459 649266400 924756312 934747515 978084582 443400400 759529701 135485708 785958965 661491020 835172856 413910635 958663029 903655063 936033424 476469515 553609917 188583252 699244212 846819399 948164683 866286770 888398742 174258063 970513407 16111972 688615414 887517051 897349538 371627895 809566373 263028763 977928838 106900308 146786818 649368571 898324031 257493125 443562159 372053444 674946721 418209003 774218839 204437426 310373953 667369091 933835547 846784490 918330599 894062948 934520661 204239059 326685766 268809703 710991274 353770971 482844241 230157937 269682549 353359224 953028135 852582768 960218532 948217016 990242758 245640177 737240644 998355142 999174525 461595546 992394606 145089335 833536918 727750771 886278427 127761051 878781119 319067221 815459923 506235822 766849722 658333526 697170538 718877238 869668409 35079206 899303955 393031558 415762632 78557161 820549829 776519999 798107311 647653433 795763127 696720480 980343264 433185101 451831174 815440072 904687928 379717398 437307249 938298778 940561793 687244555 895763694 892745283 947608129 291272983 630431508 498591919 990406615 579283907 652944381 979023900 990070275 796191529 807866857 54238080 153770101 247285787 463292582 825458764 894917291 84268985 312696804 787584975 878216302 782976914 843850328 460545172 948159041 43833779 146162122 905650059 952011674 320472249 805159562 199807635 290215455 667885668 744479423 931438437 933501931 966338428 980585295 17754595 644601234 894142936 978169845 31047403 266342915 249792664 998137952 939739031 976953476 226486465 765918250 459965269 787978778 497565741 951934818 743535079 995538161 889276035 931007650 470522460 898031829 897665414 968527544 539812673 943274011 729811419 908868774 945852841 965292569 525372699 553498009 283704209 867871460 742196053 926895522 185851500 470308578 953315480 956475732 326860246 477139941 181302660 825568160 273486528 727358086 14575897 954708562 925266265 974912384 558444496 876912673 77405775 762039498 281441334 552898144 949182953 968858719 372135956 952801953 57845438 185594219 242710724 565365072 508105633 772517051 644259539 866980483 552045884 593263622 516749144 891739076 705597539 913373180 908814717 909830205 739913487 996850438 473486267 934618832 319613535 548773989 51483181 902424327 196874732 602033226 6799471 69855360 360274781 542296585 119519596 333650335 63499472 997976968 855036535 972613293 48617249 406077857 938563023 942606420 403357699 541384856 146474455 627365448 515827371 791941443 435261467 601543818 147374080 710104736 434628858 619690636 295138274 915172139 93395767 566193108 426063545 654913122 600366055 649671801 601957969 831665053 233955780 279216189 95031046 733607413 16744134 601341954 632947178 793934079 728461473 759990874 376119455 665550216 519973689 974762634 200550957 333496174 615424504 915900816 395061840 635266391 559727124 733995357 600635202 682738350 433952994 920047810 506628409 769342880 529208231 722520207 342222664 381641259 910598646 998004262 255188854 369760188 449468500 709370897 819495301 837409088 321469193 480516879 341224900 772073139 198578336 763919176 495049474 942563093 635860245 881295518 491477457 513486402 596951201 933156901 561791016 989104688 53451515 831511198 802606013 895257363 765093016 817778336 135058709 407667418 389368359 909075364 28926367 862343348 831475453 973974156 987774318 995476636 770239071 942326693 418162815 576045692 286649540 845654270 470787485 954681810 796305454 805120548 967725944 994116102 113236877 163865300 997568267 998413647 533473004 600474608 93267034 445070943 976016891 991482200 521518082 976425961 498222470 919385717 950123568 998572571 954565740 968644920 235518990 463744284 858096289 983773697 662478130 865631324 563803484 817331237 955040084 974422128 538238429 739889271 240711052 402171187 424314181 783564898 178023635 406851447 131990758 456211075 53093171 863114461 418742006 848545298 402839386 760083144 184884728 215577860 598627355 744314359 847239097 857075180 423114264 835395831 203751594 239397807 411132606 858343088 844848934 926010773 703695683 981504298 939623586 965558392 32878464 553816773 611213075 725417984 177662560 444090846 421374063 756832152 675307424 770047563 964308314 964308824 351921376 459402538 882593129 981999993 694727736 961091686 890659010 973743211 202306471 352731820 452194119 816056097 448538771 766141612 824989797 947835668 162930673 173529043 826555238 863164402 470048348 614462225 167030299 176769858 18754689 244758759 349538867 666330736 837633152 973019930 188915106 316693398 415382081 913785528 535658557 621452199 890370753 891234050 796116331 872692271 215750730 398042309 728009555 940772428 301735005 368549933 508195154 861634254 299342347 516340110 776671269 866036310 28808353 186564476 333163581 593668490 201687714 265065818 10907727 535756539 369469802 931677048 16767745 512075843 703027373 709801164 344257948 919166276 457475836 664412609 714465194 779822245 612534479 909264748 234598453 401428336 679223337 889919747 428691580 667966960 782435602 880680481 457653360 560026909 123791666 399422928 654941095 792747838 14103567 731076332 707589908 766316593 257168721 360687493 367212814 956370954 558214915 719678654 537695689 582150888 85726348 176145409 298499415 821093303 902263333 911795591 743967481 953208706 825829575 916411895 443185603 820508325 635457371 659161021 665553737 817879934 834456519 950194700 665202161 980821680 138688242 471632722 553353549 819434436 524561903 850257983 966403071 994660637 811449160 995775428 466529399 969097021 699402935 818512507 677876503 840161903 822759700 827591537 30449577 893021056 744105634 782902374 393081751 926582610 723954010 980901772 267324099 620893232 760452408 867506576 661116091 796181679 975267934 998572872 895749728 910372953 567694471 852574736 9207 972624850 660138216 710284674 256423563 579338692 60562273 804536874 102315087 390511211 318196768 879154393 298513883 790658526 817248774 891334873 672206615 714621787 815497967 961954369 153163 504598860 275348779 348610788 906541945 976854291 242648004 605100351 82551607 948559818 402660029 511899671 664022284 956216204 587720128 966630044 652171579 952337841 340625659 345363529 768161657 838170611 549977640 864461792 39684471 686230049 45198268 101267743 37542970 67070978 337307781 458675922 134764441 418031726 308621297 357612016 59579461 63975792 546946875 904193180 589452288 946112901 378333813 773405067 741631636 895744227 865341557 886766302 186260170 623849778 154520012 989958820 46806579 529342334 321532001 684699799 201009179 979539075 374712123 621799994 923893599 945696813 219140941 592549923 688036315 836772603 733867129 877337977 394529238 997227792 620457188 848045049 966147705 990970150 974696563 980495883 680582111 756994672 254985899 497044855 40463739 532401905 126186293 366284847 724296744 917384751 792222606 970851745 804842107 864449735 743981738 779978787 538174869 591487717 613944414 784207459 400278104 474788500 794686486 875494399 909328916 949914389 918993328 969731352 587764271 794143264 841505887 876299736 707109675 834685956 550877353 835465832 32718910 918785712 680795868 810015696 321829308 556458664 572483382 885349965 866505503 953027321 306182378 813936007 772070382 903496157 991985539 992867021 114706913 492326215 114528422 227349409 910400479 917627391 48751767 126550610 868294027 883796007 576179470 692917470 124111358 486355558 612355065 752921262 249526651 899957948 169030951 433851042 260873480 971403364 648067371 708359258 949072157 982791468 811936565 979662813 66640944 668499242 361763459 745916348 177680682 558347029 655466559 746632647 839903199 907258177 37468605 344382963 768749844 816464478 634959784 870204715 779024947 921212834 377867739 601219595 945965044 984854727 548977240 873362944 686510421 963892083 53212635 614305539 822211691 915959196 128062377 538301380 109338340 854418807 313482633 812414206 327244278 935278284 904433294 966358242 856733285 971100668 500065222 810031268 826985602 966710432 533145316 935100189 119416146 299647086 170918107 970036226 361016382 691480608 802909685 900498041 393966267 885692397 121606595 404373905 431902685 800571792 731033443 802568965 442186804 751853538 749708006 996907369 382296408 776528712 12266068 340367675 987070409 993258419 159048726 456335603 651270297 911504789 595874742 826936471 336113127 347296790 963579581 969960938 26816882 996227164 887588453 894051137 128132311 307116419 526690162 541376029 487770553 629692610 299173703 342302972 242002084 464211343 29065476 198232982 49928759 277884598 503751922 620080868 959962872 976673819 431298087 934993763 437814133 493647243 500623006 932359542 269623627 833792409 404124473 992295639 74362262 544314358 245237230 495987802 662869953 692997564 401405904 500176407 596639598 820617224 25563496 59917609 645546481 885376437 767285202 964924261 740878506 871524729 760699843 788132470 933724559 987195202 900644844 984141985 72075823 462194738 948921647 998483462 242771723 473705577 553422847 952203861 448202962 952971480 543321541 825399654 361426734 907785429 996530067 999724323 777413522 801934548 413099254 817143054 225527289 831651483 699157702 879297348 122166070 159413331 750599166 833254427 773102838 963449318 273445373 330574711 568131206 597936233 441260169 801160600 664398980 839362357 571805797 768651751 501936674 565000936 185966271 588690159 129909509 325716795 974559317 995414675 535545526 811338247 701076115 830896177 994542307 996950467 296303144 705857593 691991309 746192073 11178306 932088198 518900018 812225069 738047117 807880016 945206522 994456810 736760111 981201981 622999649 649868059 368113428 759762748 329859117 379206041 282726530 317744689 553759498 825885988 669332307 934577386 212517503 378031327 835477651 920990037 674291489 684197409 198333877 247671039 318353904 741264460 835161886 859047897 379668242 398515274 481088142 952949113 674097130 855415297 183105583 300015890 234351508 588281123 307883360 900052680 31053713 253750711 288074057 596492991 684905347 795056573 797431409 914529711 597815835 980913220 493920201 530717732 150194254 330793316 381385479 954223201 463060646 926089863 612412903 920622240 923750924 976318414 645561970 676820917 173366048 436287803 876451196 942643401 86663402 833401071 180740801 625871480 28650267 757051140 220365842 570211943 325434552 832517755 327215233 506171409 599656265 677372613 515494840 997293507 271236760 870376322 643948960 681938107 539119540 659647999 862948078 888939776 633088202 955835424 773051213 869961452 581517478 598196122 441849462 601958255 925243681 949252205 463337300 581244567 153184108 819167530 112812276 753481859 937523450 957529646 192562209 206206836 750769828 860209079 441242799 570575687 474896229 517145945 380762718 397911291 366995663 968755068 897907752 944383043 410689029 514126306 575721983 724009359 926023762 945371375 12265145 526076296 418760563 524671247 32287035 669111981 478566455 491074220 176154273 566384766 800833488 832005367 821049056 832429930 720131736 918236072 9944911 474959772 46737184 475787132 754198982 793118881 243406416 580077109 370937698 677812607 846653357 979610196 395145345 717443364 771972905 922737055 645166179 905827141 537432731 566835794 814958869 816162134 726129844 744619069 89274901 126840052 9355231 124947693 129561805 509099803 538841994 568465761 334231139 745071165 314736269 421483420 641259802 806413590 411284532 958129403 26606635 981224616 334950308 832986779 694161069 878673295 270695715 516081123 597458789 952072713 385750755 656896348 753302142 883820215 845889396 993237716 904120373 977770970 962917599 982096864 59544620 244605043 516697028 829834742 924828146 951393932 189166379 352049858 309718766 678896565 613347225 760145794 296410002 685235023 399599450 620628918 936969719 944002363 117487329 600057334 266694811 793105473 574052864 813446178 544239023 774564490 540245513 805177189 83237488 704229773 74633823 892693248 399149978 563574813 725101032 802408174 397031166 539178769 89731619 523806558 378780375 891778293 49767891 393771858 415173253 928875342 638528755 798823170 326403506 652970783 896100141 927918607 690920702 850152809 719928065 736121963 565935506 974246338 916363312 979187222 226371718 940369823 663522298 870578509 967467338 992717738 411716198 643246553 391633484 823812083 657429926 739822569 978559663 988710812 900003655 903570341 745352589 772817975 565862545 803443182 99351831 239444886 789078747 894417144 452597098 528364776 900276731 903050326 564168550 914373623 832998240 978934908 306762828 318443900 235901312 802585828 110405861 783037499 391695162 591948600 98177413 504891311 43865254 746896005 869616981 910671991 711732573 982009506 278775614 559192977 746836018 790006364 108589050 685042239 113722235 192401556 929336137 995203466 211218340 981702764 75705954 654283012 242375358 534764089 497695544 524911762 667185434 727687272 387498398 994653905 172853173 400997048 213865493 669918503 167715510 664312230 664504883 715106904 632579785 883290192 623141470 675229941 163830921 760311844 141603785 912484205 85013745 394469158 853046600 878415148 189516169 801720823 87773527 787540465 674281294 946004151 822571518 920681329 409433903 999973115 251995696 336600288 360771325 701529592 405274505 758169608 842424208 859808849 293505471 522391258 982617445 998966063 492418486 727621406 450246065 787292481 979362984 987748652 316054393 969664890 187565361 719177233 467971948 477586683 631191403 897886371 212795609 673727228 433737065 591241920 531690495 649666251 912781304 918727697 740990551 992907323 983329105 992973030 601332190 943206971 848530297 904258273 79036237 529410302 296804499 834588583 473016279 995046158 245680443 994696817 118810445 129710989 386952997 546162928 579960014 737531825 651945833 877551557 634031845 907727949 719765663 922547419 672233070 707292112 389715824 418492568 617921714 637281535 821543008 823022040 388165056 656693668 320199830 598298977 800107062 908664088 333002749 678584600 838151524 849708438 408900049 819614675 817076580 899938539 626150572 989780273 340436410 445020133 783507322 920426910 266088867 915885435 554955670 593552140 214546936 794904215 757940888 967824424 112550742 273161667 253114876 318543977 714064309 945749716 803389765 832999413 369469309 464953709 636232091 644864900 537146699 690033276 437947907 994272475 851959505 913322537 428752790 610875778 328167149 859889292 709501338 910117082 991824835 993528127 492895923 732824419 63600888 714229291 548610568 841734453 834542844 865168803 745900397 916443707 539963453 878433080 668270035 981031449 426430803 811990601 767094058 839341179 120556536 635392014 209090792 402939442 286454243 803739201 708699802 764447603 524936004 878729779 171510062 412332745 621142877 655421527 879901969 899304738 522361067 881034767 871061142 992824808 761902564 812447538 368665791 713691417 306018230 595416867 707260035 825989020 932037814 976915122 869376468 924448488 666654430 732209146 450462466 550012450 247363009 359363907 219392019 738416041 261465189 357463270 691552433 787980237 843173825 952159706 680000005 821863951 549725439 649203489 534592654 771614046 159424850 960905069 165919948 654260732 628355835 902170581 900788400 985611103 889217612 897242705 1007312 179462125 636139790 887618899 265382442 685958018 188322870 439072647 963180616 983329284 618905729 860860216 506032543 937691378 547247167 955700448 221197146 561940686 390026521 632525548 504661310 881424064 255966320 722864846 763739284 858626947 359673584 841956314 206535117 988209063 581394380 920608256 633818173 845275722 538257076 883377430 434707137 962162535 714477265 782604611 175765653 784870038 920152269 943122836 938859486 939120626 372378300 826364330 812541419 983856816 754688443 867234148 144348336 520259900 54016808 117729557 17797830 583852254 117348507 553166470 574922296 809058087 241631515 948731243 23408814 324772340 927296211 956040418 808787165 907106695 208597393 973425330 203320458 757078658 995136542 996302927 281859995 886906656 660763505 974035208 570245342 937011059 696041082 767462706 624668088 936363263 695486251 765176561 702312024 803983560 215743309 529286184 104284591 919938161 725846224 782290986 957517967 970087983 163828402 895109774 705269785 872999503 787262713 980943147 665598007 779849081 951063265 991743137 77122513 739573229 804560469 966035085 263651284 658556999 396857160 549252660 572986633 577184092 764512423 929616060 502868316 807297469 723793005 951700006 395594187 910756020 511387267 780955766 189735670 361513572 690634535 829327979 686201984 695392227 699379982 983086616 896987454 947162599 692102053 907970133 796467183 801231864 713199261 962592558 484265811 923948893 24380996 89573317 931208790 970362130 839730438 877705023 656615607 759525401 105198506 598617713 91564227 614086407 878663479 969016969 540455355 892983640 931386727 965877157 719179432 757462178 724332487 986817267 838054906 838981559 471126349 736474751 535883797 536561955 802108103 976953451 121309737 533841679 432285297 729074906 635819100 647863330 826596071 918815779 883554572 945760528 674038697 688580098 263817190 804462729 911742004 947468686 145169570 916916273 22821292 192854436 736991601 746695421 537711756 557621850 199324117 811138299 603322973 925199346 168223034 631947543 338106320 971679410 607869304 749108332 420869808 918605051 394240052 532973509 276122461 446208599 718383471 797185282 417044153 724854042 574261129 984876913 546991393 759928256 914916170 979497720 599583392 653939872 932916813 941228532 275870477 427773126 317075994 740741435 919253855 999760219 665828830 981024381 495290633 955812338 839108323 938862734 17771648 17896187 53900250 616034661 928831935 994522544 264046752 941070792 128404254 310557621 678711634 935847368 649633217 841414383 102293617 270970626 568577597 906300807 285773578 807378672 644323806 896109118 199212119 901949476 583176267 991999671 633582089 874834569 356140534 913700251 923440424 997348492 550987455 772375783 754840247 872290260 166397289 649176122 719247167 983180071 532208189 929149959 234369130 543363476 424215106 578678791 761085016 818220151 269418834 694641794 434335134 650226096 704280953 809689239 783536571 974273511 365113579 427768156 917019380 986491974 987114717 993134151 511639122 826705166 245601494 681954341 902510106 919430918 934200569 998241424 769997782 912957214 657217937 751348012 599382078 685717833 4334089 790616088 70999802 388035355 891209119 941757227 501667513 656104933 398061162 446430344 269085146 351834434 458854176 612725459 218131560 748185023 490205068 688831267 403321169 901365524 881941722 882952319 365399133 518845321 455701903 883696003 462932309 678980225 322013196 530611477 942220998 945766532 387364873 821772833 135905457 219186594 310084967 874689318 665961470 682100801 898361287 969892612 119937302 727253324 261188039 922143607 266568566 569093116 276911102 761242431 889293343 893539885 202174572 702401904 822300033 987477120 154726034 871353280 214724640 551946625 389912157 919420978 671018187 800204343 630207010 864248929 933289692 993150851 336119378 617533750 248967964 588841776 788580815 951605962 610535552 998016843 889665166 926253032 146211470 593206138 45051031 358233663 833889932 947259059 820619625 961635809 109869040 734545791 578091956 664192766 423506573 491630910 162562743 565443376 749258940 757270062 222827789 297797841 486461975 781891013 273890098 411237359 525137152 771056749 428296017 741492375 868108802 929255554 93254019 758933195 599952644 689395988 564552861 848123715 69053276 960469099 834532488 926651492 204439127 492024493 852857574 878117793 129064652 531325323 718598663 945660711 735822811 800672283 984746422 995604141 514875652 951950223 163291441 908905138 14840339 568994901 411966889 924439338 632093393 855980866 519426290 836743973 377071836 672895406 438152667 545149898 928123771 956676856 934219679 951747524 280247169 346727025 468566334 660958758 46559155 674666676 272796845 722070132 192678083 791994564 977542764 989042291 76842595 409747177 304374248 642298937 610105762 943340083 550495100 736553818 788677386 849395588 821951763 997976339 220737453 904694655 226430147 969206862 666268835 806715546 347885505 632593202 903822387 934056899 865766199 974658120 547007883 772194843 992890219 997952029 908062967 928443211 17836268 692599511 333865556 913808515 183995213 712246045 742060086 986431978 464683794 933891202 200080596 863022925 16286580 114875640 736734192 980925366 282099753 909118150 802571161 830291398 844384836 999142305 555069261 994710550 318066239 979664450 679714057 971293592 805508902 987611871 720805239 945091857 241529033 547848899 736109241 918972183 645333514 656315425 349659305 857252410 139035553 840407053 594624848 829121817 673569527 934254433 382315717 600448983 119939282 887600964 371357036 472186051 164151078 891407920 483538712 665992557 586305926 912015211 342319235 423110652 443856629 851007258 148221315 389289153 194221915 555094505 826878296 887544367 414077834 768606680 160255286 779784673 864932103 873146078 239589603 317836327 743003204 822026950 458192459 627676382 465164923 888385606 46622120 154693488 434058906 633238300 599651270 834259784 353011466 422590358 69387977 314405225 457455458 478678371 776052227 910371407 272604354 841474939 79161692 347229384 467448025 727576231 515458126 549829788 652735197 784623695 848894200 997870699 713098305 808333581 228344747 919709045 575299322 878047796 897699629 963476269 685318809 785705308 132897279 972254555 149159710 163494870 785402496 855355298 443750851 499367787 213697429 902685931 714297395 772140247 466146468 523779178 937534511 993409509 402103514 581837448 157283698 960661990 473392788 943062969 63317418 259880600 261108224 597465556 433671614 931752966 539641995 677023904 808119108 884106103 813978629 947531911 728220693 856319179 218993031 985453195 754899455 802843730 206347742 813740665 143682119 183888319 604207764 970772025 16437909 119495240 4116935 994405403 572201722 914070082 451199463 460102176 279001827 421700917 747239888 985063957 582551314 785917005 785481304 862419585 947082040 988449948 72305139 155461817 874944266 944116241 196760300 656983330 88522046 424357493 889907505 938156542 213749219 684326488 396201192 482386641 599596751 875154279 484957174 776092610 503929077 561479949 912639894 973346258 324160326 547904814 301464999 773831878 337741921 526088939 68774902 814855023 713143359 769298470 196108170 281205994 619114705 883461025 91510363 484692138 745417061 872702018 66678031 241009257 234010150 728554074 70192599 477890067 428799613 458451102 613293986 648631586 876564090 970484950 413189505 504393875 773901612 778752628 948431249 966707103 832024354 857458529 104002581 689174164 388945930 393991139 176752556 249302521 30156473 732546106 306490669 682420336 848743525 915039019 236569738 484341582 1855783 550249307 119279462 396020563 90994937 337232012 751711049 939814906 842137854 965361696 121681652 574043610 625899805 895728233 308735685 400727753 708665548 984172484 169271904 926224398 297635609 982891352 562485390 881428666 610876974 980230533 967178954 994609718 210528091 484398759 283576433 359117222 662618637 714911713 27328504 166669096 656399045 728064746 876896241 876909085 307502740 649810324 680462994 964836854 500072996 925631610 378523232 433541918 632805865 959292365 791022576 989078635 700179138 961318970 366379774 752207088 460137090 509325096 877108497 987310062 417906324 693705637 354393296 366845110 375365828 822249388 107643571 290427847 764803236 874503996 691170802 715596645 530801071 653679394 566131604 899155659 119047663 444763797 117026860 373394954 342674340 873745802 670358239 996742060 830523205 880130101 62076640 220140218 344969957 792040163 483908288 973359499 569441821 918697751 21723065 816679346 998285164 999604252 223443879 226982200 980724590 981582085 202476687 968254881 749690118 892922713 327728535 760302886 251053355 389410461 386612596 439514656 211853509 422044438 552094048 774199418 641220399 801980762 346662168 978746489 870327985 966623066 890115692 983196790 385222988 688149572 676157555 875891853 71324013 884596712 971650600 992481230 298867074 871441645 313551215 687013144 371464652 628344787 986973332 999883021 18162130 172947480 524022783 770249505 460693272 546771515 632237879 849558068 863898850 992696467 45013960 923035687 304314125 484356744 761053854 870995458 378580252 687994332 375424160 776424625 707591814 841015959 784546704 815820226 238018599 578847419 544871365 683810538 835933686 981752948 324807955 382962775 426021930 966129820 383335128 469290577 866144113 919876387 236983057 550530617 591936732 973753247 227178070 599683567 633177866 687392967 1481896 647574150 846797453 954759780 496344445 912830102 70966159 269597250 468215791 945812897 165517177 894570631 334325608 766008020 847122533 889030766 836235189 887129145 561019094 827179020 598761422 869426154 294512099 398604845 307361935 611847442 779304178 808553672 685223062 734268184 21059546 196263969 780056262 877639700 178492133 744178911 762670681 882091059 770356484 902612371 301000 103807470 577909834 652679503 207544572 741851158 65282553 764576336 309831659 629824169 210285963 807510294 70041663 144430078 4170235 387816079 83019634 322435747 566135460 817059784 549348422 752341300 421591296 715461228 167432446 360740397 772971771 925643205 123313635 979271362 682947758 886915234 33862392 931006553 927636878 937705075 379806172 562571114 843311315 865012944 363071262 654459658 82386696 708146861 833243172 834094008 155388640 785391793 93934212 813933679 945486676 979397310 978560867 980352232 155344199 820286778 358757852 665287207 846821757 873126720 27138792 687417930 922893320 951782876 563173144 932403936 533230917 718991481 193024405 764688192 723705149 736200723 882662889 942333756 661524167 971937415 328780735 564122682 227207693 269937901 887245422 932167052 942254958 991888872 834401660 845267102 620265931 920847059 335956831 980059006 186344968 835466735 350088134 676713502 752481909 893134648 466945737 683567537 324452008 331101483 672087275 790431569 339015391 718547398 352010750 640398236 398020354 797220056 25938576 175626202 21753959 686562301 394107317 671314508 87624888 210151105 814736088 886602610 444304964 685606810 620984 306144049 910891702 984534521 543567895 776434003 379279889 393648237 925244545 955096666 546834808 790771887 915439077 939507328 835984494 960503466 592183286 827510196 421655893 652471109 104231821 254842421 919831019 964289561 496783980 914878657 365265682 517180395 110138483 439500939 775538860 821513897 454723465 731821981 76881327 569816085 987186603 990776726 897540403 926902156 877963588 949474633 68937808 606052530 292999240 380080319 851244429 994290572 900406025 990887316 251190718 359805887 458880849 716274961 387373887 775626985 545051772 822541829 877236137 974420786 98638892 355116729 357782621 875920262 184634291 437377792 323429788 818371490 346424359 758071928 33106402 544782256 354312288 927903332 849898597 997952252 900686178 932283684 298152169 413952124 97256329 729425088 939198985 980162664 736575816 788815292 756978236 835269504 522258108 786580610 514882395 641840831 781887516 856287377 448421039 602628615 6686730 779527976 105697117 343651018 984337851 991466518 304006117 431755249 365646752 501099114 445970995 499756943 785128208 816215370 354949643 379722561 501187508 811478484 679511964 699400561 171399762 243972477 632931310 727102047 985944146 995405841 428851674 909596800 271965839 755284409 921434243 990971013 728649683 849235353 27220018 805161674 841976909 971265195 973758808 981274281 933322806 978347396 101835806 716158000 124780943 314525889 247417711 286618321 252434525 496627639 113347996 192170432 6485497 705733325 456518754 973256771 773259464 878475836 136776679 986438622 216303633 635246825 571137680 844878602 387537080 872584470 790985232 792359817 364506159 412773175 883082656 904908850 624844476 709201069 13571753 446056458 750077546 934253888 659965519 694186384 772810546 857544960 371934666 875639924 15322532 209973012 947755002 971843378 8531657 649718431 528722040 577338272 657446575 721426210 209580472 990181708 831985878 869058349 276219275 652095297 106420141 377443082 997256321 997717781 781942964 786887226 865518067 914301151 813031117 880249799 619813796 766972281 185568550 448591390 998161819 998553833 869938227 936448942 996421972 999619183 585784412 789196497 958936887 978734426 539506977 840129062 28210078 542597154 26752855 910914914 558898468 987553907 545709158 598824345 727524801 776311405 253924551 506371296 361010879 558210617 976926655 997864392 20385295 640901535 74362498 253364944 664422177 710032383 184431842 715641513 68746124 480411455 761972394 883339035 920752367 994065406 102128628 462790929 317668714 321356709 599584180 860098600 357347896 700584675 273860980 494726140 440183907 693500387 962188381 988230416 579654856 881267865 476238643 861424402 595887450 685724960 983806058 994640667 104763449 279885219 862643375 904204366 243203670 265761592 125353144 949327614 763096702 896406146 408605766 603135013 683589816 807104791 732888389 734957486 682751453 848007216 68566584 951456561 147568151 421195318 311392800 885122652 547435352 966778520 647807877 817354297 234395773 938675390 759582905 941495259 226238644 290091248 299686001 500422156 333293284 688046691 119354301 460083050 106340013 764218716 695173331 879112038 827258158 842030825 590669861 871047689 20264452 120264426 673873033 728034926 803987666 983885916 48710727 826273014 938052822 975170201 112441061 734868627 640825635 776030877 276352921 983621315 311569153 718385061 139156790 969791043 921840701 966713237 872003113 954669769 89304763 159637812 634185694 648427001 977177729 993986229 739849399 922939622 965728610 972840535 227055495 277685962 61531029 807898129 904357394 938247540 696664799 803547143 553702648 673341997 300506393 412738138 86411864 901505099 904537030 976173954 222311456 546816253 798680354 881264996 806710136 995937608 437553061 471509652 693251913 704103501 111974630 782039166 980538865 985162773 280973545 876800424 467108729 919984299 896971703 997857198 813370347 999684210 83775198 556040234 698250372 712689373 505207169 901571374 770882451 827075607 113820721 335374634 841755380 914418741 267751142 995984581 909123164 939535132 622951986 785668030 794874306 806908169 737459948 789797097 761162281 771776083 893558768 982261970 220507026 508376452 905274213 914817900 321826039 678951428 788118990 912251091 945789228 967972599 434518479 575754701 377033637 844980129 236312389 368735195 291218534 694212013 391209039 932476760 880688672 968605435 444660380 841383769 445515010 551272891 847033187 900226715 541201764 748052575 132674847 452614930 214203133 460862626 658191103 871561832 772403462 910498559 605068791 654119767 882367619 910320744 38477598 204228338 399813652 962951869 982993249 985844069 884217975 926143997 760822094 944353878 793573643 814610492 82008354 327703099 878869982 905259136 140273780 542506358 876717725 924495863 179761038 568784691 399774433 807186433 996226711 999747448 374376448 682537096 340297144 720320716 412673157 566851712 448847094 510219412 748817112 787560800 661785160 929471932 418004725 549327733 622610593 937750120 171893538 763297030 569691953 610657940 538612059 680876768 651469744 787649160 35598505 999715730 760843938 861891255 818816775 925694214 314013376 355316057 37893965 243195694 268227094 828872676 323355572 956856374 372825147 500784671 481687332 753910190 52193785 843567089 689159946 968645246 313745768 780568459 408585882 729926741 726443762 787661661 738238565 879205567 865616603 872536648 20378480 770900910 815135738 890611754 403091101 720634197 776961262 904196862 522378985 772928322 747491180 947296719 455839446 875752141 640310793 844506158 966332522 988193766 217021387 323167265 851432095 905187451 483866383 951976341 219708933 578125607 826394367 901813872 266762815 322943297 467876358 939141824 151092887 815547854 153037183 904860413 144714604 395924241 781125183 848889213 95960917 602478407 582072335 682517244 411996221 931973928 116616621 718594667 263193518 698087882 296611916 990087739 804401243 819673581 802700598 937924580 210950698 394635772 1217968 838289150 164460904 899804678 79453530 591510873 582204636 790416859 979834461 987788215 197993608 242918360 704958522 881420966 57986073 646019540 39504214 731888067 384214461 566627212 562739439 910288105 390509771 903976837 631158529 636050196 507130201 830956519 445402970 537607433 854866257 872997765 855035985 893666595 969520759 999753971 903028189 942133566 20167913 709284058 844551922 991179207 840560723 917408282 925959956 964574116 501035256 819772718 670616099 965820965 878500515 888506322 394593319 746409805 81771966 320744255 678820537 758006244 384077085 943238780 817199157 897129339 101196434 128293690 716918499 720727726 210149408 339706606 174671048 902287519 812900198 877453288 717128852 869105875 135966855 990921309 211603843 437287307 738396885 842987297 467511582 578249994 281169766 459648841 961051144 972466132 342436098 758752086 734437503 990064755 635604825 763479387 727412876 972047951 158256892 652379384 269793878 968255856 680380276 815974997 993802868 994794110 272748719 323148360 941596866 962501603 695414730 977268288 253426030 378307415 19369449 977919192 432925233 658858671 409581750 476515822 881097764 974466591 998139763 998919808 844232213 868954817 687622748 731487356 50589798 66595534 442805301 588050943 345520858 912397407 247095120 676544504 389604313 716255394 747332635 927350629 954739059 998788524 989212225 997418236 212484492 250170925 645223248 973130247 756902064 984309099 534229172 792883556 898631494 939983418 231358916 384298149 784078159 903463338 706376544 718490940 698328287 788604754 501131519 779437536 565234015 830136978 920849131 979965957 325546525 979249862 733517124 774821176 495477576 572552203 194720966 610945841 313691428 843315064 346070559 464070690 120050287 675848416 69635325 490634564 965192867 995772371 195882191 265102428 222791984 709559509 489419190 912003692 447717043 954890253 40216883 155588313 311635729 483940015 270822225 883965391 292676929 445825372 981070997 994563220 879589513 992292404 283505408 677139660 322654085 468437178 199487476 614765313 404238045 764209535 139539641 526697620 99827291 315509078 803935625 865861543 256103458 954207139 13080927 897834595 653104888 844777332 853100413 854800124 318211079 343012597 176626523 317102225 199223748 807350159 451282926 714316082 425585067 800303478 591469293 626990938 522012358 996345205 356290738 846540263 386449526 989522242 66906817 553921925 86529839 724310588 434243365 742000712 310928764 776006567 286280962 557769653 378859248 728767734 732341177 967301571 471113534 518937681 223622735 775426494 938567954 958860426 331456051 983699825 832653793 911895362 448845649 829573884 353750565 739641094 518922730 564264731 941920050 962906298 673063247 953388940 315216049 542843210 164074382 484431338 192029957 266458078 476033075 797961594 40483526 90284820 607584208 668634837 158015450 557614495 313155920 472663850 760740658 814972934 771322538 983824233 429700916 609452301 311385417 430177093 471253681 523625382 522876798 977592752 622613992 984136697 698264811 759203164 216248202 566510258 586990681 776453423 611650499 941835765 470881334 996822651 954747011 959753213 557172785 967766286 907808135 958467823 486223715 729556377 720964091 952088149 728312000 811719542 854227520 887875272 595711678 644908605 566721026 595778144 970019694 970083975 797164835 884461970 955445414 963160371 68638766 97219672 374039851 600363265 87471838 224239412 438767528 965021195 421836645 724308092 527937057 725225061 752895559 954962218 859657122 905322701 911025526 947890322 948453488 976703764 18993587 366828039 419471245 769036715 531736298 764656677 38568234 225036014 233715210 613740251 368038668 853408624 774121211 847691809 572269558 881313460 793426362 959076565 700227911 711807897 291989064 679058801 196483785 397743463 536011908 595032946 777819153 831501179 680884061 892537461 654366796 996121817 6563081 745650557 245179813 434882247 985320443 999140297 415119810 940461491 124784868 845405775 835251653 996841083 211220984 331987743 452644710 581865997 104308328 995544122 670489079 832561994 270546404 463055924 893345089 939272316 102382547 622711378 431416455 818384065 493757249 560921494 437874373 944169503 810576870 989047005 685513843 694762960 336399300 697312292 923243454 988086167 298288081 745821229 711332805 972243246 35205278 946469068 309837777 375125104 980425503 994468064 4369212 437711981 248110139 822205050 107096282 973290108 57752826 406351223 572976986 725965536 875729478 913961566 952427166 986449147 810706430 835733415 734332995 850427587 155961207 242213724 169621344 278470402 203244166 327359607 600662464 868602352 573957180 746582204 549413331 605675612 765179118 957782655 514244245 518229559 898499929 912517781 137505233 707894311 977858545 995599809 240368737 903529693 91531908 966100384 545605350 916241901 35712341 601837427 240542953 804404354 868663846 912910449 454560913 471639611 835681678 937737102 316209671 851369669 515224599 592837849 501760094 984805791 900457756 913050763 382392686 669957990 755491638 976188771 786235782 902216767 297802600 962677399 254648904 421955539 730155889 946211498 540544059 976697857 405285887 910216391 249912074 907626169 494843193 639853909 349734954 828534872 660311865 850982570 90910302 865909060 280563291 341413052 274349436 600204177 558730015 935066193 750153339 978960547 155845709 640424395 433124413 896820138 557820088 793831234 668620443 811702123 939060304 952394911 394786799 900241521 272251033 326142248 914795304 966429718 114981495 299106129 444668288 790056676 134634818 590399339 211170400 703103642 132251213 172219240 814946116 849930537 753459251 855597428 6244020 826516207 346208098 362460668 693692423 778284867 112921272 934351552 692156042 772660138 424476415 650707490 735619893 951795525 64808940 116431654 784448487 885784420 468993645 643772502 589476835 687481736 769985984 924095786 931306097 994211357 515382808 827567797 179758834 698667129 628877152 700184161 590686444 635709225 288665035 659796096 138551810 938597035 861922253 895653438 667374542 932058730 644278055 662217623 266652180 526121317 508453800 786745619 411649737 711386527 228439163 300921542 407157069 415144946 614138198 724033951 614993527 784033266 925576793 993654754 297915110 600536149 944634415 995448626 57650654 509581526 417973951 998890234 74028565 864676381 920444635 956046383 182090581 479702316 148380230 616310300 914997385 995501138 431202235 698797845 364991539 370650815 715052126 721356845 50718629 451950136 429886698 584562000 139406263 474733112 609074619 869979363 778466860 977082988 455974689 536152128 924588602 955243846 747019933 880996959 532315869 671614088 890523169 912256893 979599721 999432843 813153397 950778310 990956048 996345602 121653494 159176272 380623610 609127527 988962763 992955591 938547125 987214479 267293710 381492358 625998614 639247922 498118626 749076204 526459834 668187461 931221994 943631162 646934493 661060913 562180692 572397565 181853217 262729650 898415340 989187498 193298796 436031116 77586093 428815517 948890660 965408004 91890194 644686167 793444528 878291597 383092064 721886169 544342243 552280564 296510020 599989502 63409423 183222233 181837853 230445332 30545784 584499889 83217884 252385372 965200271 976373097 703968330 836928383 325918905 765634613 641235579 673082549 856985577 886004030 498177239 566694443 862078258 989464045 379286576 751246326 973710272 985168175 123654493 258621652 513680647 904102152 975962601 982608794 574980388 926193949 30166677 46133467 156531956 831977354 26838047 335964113 923759031 986536736 892428080 926882255 896852900 959103265 31273146 153604299 120131884 985566281 398016746 907996831 799922773 873890141 191974465 323344518 410783301 586535359 637129735 764353998 157344476 692625202 726220409 865156681 583079747 806519655 249928513 524891320 274996317 931910355 572035443 662867914 526560126 559646764 687047480 985249305 224238821 920609488 586120698 927720086 447011143 682227909 771343305 826358203 637482372 891826070 253458122 865666579 386055945 853014366 389170249 983226692 739302661 830140226 218176467 374879745 426871453 608518234 380456540 690182315 975839845 989540330 839941816 928607458 891919043 980627799 11275755 617364430 270728028 942716784 7096094 880385533 681688299 776519032 575884327 586076235 58589260 587238636 576990684 842833810 563531494 568299066 707243134 902977544 8441328 872070104 24813845 404248884 524155028 524595957 528998547 990348757 180393123 444881665 813331009 817103117 946922170 981031341 115536073 293673555 737974115 944489457 571066614 823744519 358676054 899624396 445177315 722322098 666938030 873380736 63121594 510807491 770569704 801831289 527628516 712539155 876258269 895211380 534759492 920432397 388132531 629699360 543443741 734212562 294438666 476176833 715484478 804810872 276240085 692039385 779972888 979644428 604517542 797101064 427448255 434455930 258286644 606824711 801966965 979591283 829551291 856674803 190184270 880582068 414734628 484657251 596001657 828824130 241835023 791894889 763971146 959277309 462939734 639534193 2516374 705592239 385877266 404073913 626271334 634837970 449175209 804929320 288971144 936221104 438647361 549808793 236990673 860273643 841101969 993042870 347491794 911902659 431312851 989748944 476636929 781700699 234885609 295760967 842532208 903737556 752908674 758065612 115316007 650741071 211576630 286503203 795974317 984687191 522241207 990892314 756203126 961710899 891264442 902025728 873575078 901617524 355350476 458940649 988769916 991185196 19737255 660419490 142362614 636948789 546305650 936323151 884881717 997255483 494166735 710302891 389092244 487989094 102582344 741502165 853508021 978817534 226917031 558103902 647230492 678886259 283203707 889688211 709729759 955521025 600864104 695293807 198035022 594212980 171614749 809659258 935669569 948436325 424888302 482939491 397176394 735148923 861172057 987711559 778546002 866766110 184041599 230009840 330770086 706554693 549191799 971984487 875984028 906695370 514061753 546051640 165734608 498524702 499854820 877326663 833369121 937177619 189874853 616886403 915993680 984370923 966193063 984483809 371065814 859105312 287625456 654111139 981914857 994507117 907255242 938491622 317031889 814933200 390370744 953399547 627648833 660813205 583368457 861482602 646405204 695803200 472992178 784141901 432471624 981098732 732532718 998190238 474341910 995057582 59274171 169654008 435891815 635037409 616386688 989496300 22775418 667036383 899516975 910939903 539201695 986773712 490177833 990060905 58755908 780990732 127416422 147337392 725882337 948582573 990005332 999014287 152048247 603904765 40265994 310530639 513463027 918457354 485956250 653739316 935905309 983870793 734594548 890647925 915780600 947010160 484757425 912347719 260298263 818135100 365903283 714669312 505701583 569580616 263813292 859503716 145813063 537736964 657553632 721495939 722049228 863986165 722260485 807807362 800998554 864621483 262422413 396442240 177942621 182611651 469191978 828678195 471964001 593761885 303304689 651201236 390180986 918648951 102637402 764018134 846813905 948254752 572111254 895833483 471556262 530480159 453180741 589891093 567556856 896807911 407306000 653285501 889103416 941078122 552367363 756009384 101832709 708349652 909622066 929681044 773223759 823532967 7294110 524137986 140575319 727337016 805336065 877164123 406019094 664474079 322061041 352450248 30262591 901062766 895689166 925614230 105161156 724512161 983121516 998044525 972279514 988476306 954853348 989584176 356878016 694167953 603343513 645476634 44823362 582274738 813795680 869468501 186650000 335764158 445714979 984378826 18714510 729181837 5131651 891440124 251072092 571366551 707807648 805768150 58514672 498444206 176795611 542463109 235321496 953170882 126110451 673175916 374481342 617281265 292166561 817683677 903946116 946491708 766829168 840238787 258994248 272759651 225522729 402117194 190376233 374950638 357422641 427121959 837715365 870559766 241499170 813010492 209839851 792396063 998572526 999700014 540911916 710535532 848408367 941741246 72366613 313683111 940457715 987519491 580784154 723400960 404483569 534804644 495350464 618581373 811019848 991498553 779330396 902826176 502816159 548701208 973172348 980323288 593219347 849006265 944388884 997529281 347554901 422127877 75597383 687630781 57285220 866724096 282837321 306693700 475155708 603971075 57257271 625799733 385074609 399135447 359881037 561770400 323374256 357335440 744160530 879802853 964510511 996077821 36604492 489300162 313561398 564242518 461449546 979092961 707185904 989584613 552745905 678308948 380626436 548034916 670863633 810968310 559016989 928990804 386895365 441484803 704981468 903708813 350403978 805008929 260058677 845860193 986883509 990425627 526237186 819081210 201187403 882477860 533555015 805223292 768915850 828180084 545099526 796581452 268785697 463818703 916968415 989745445 654257460 862719671 427086028 869459010 920645589 964595916 821990128 858707431 828372317 893146403 981171615 984290844 265954247 856321196 702861708 945038501 960370581 970208366 745583793 976161669 471742741 565851609 620291545 964397906 464986185 525660938 549683098 781823857 852147136 988637336 452764727 887165809 748528427 842140559 492418997 676605564 841907626 939588083 520134774 789009628 143710757 733327711 144989959 721298548 476661042 692187956 666500180 788467084 341322708 707940896 948056395 989640608 595883058 729970244 301911989 942534407 744139789 749037872 650736825 856446803 777366396 783982653 120196788 427693010 147877524 208089677 896225270 968476551 891927757 912328280 10240561 553932280 311939182 968677062 845308570 869942051 749526366 931817967 735144032 914252667 402571807 672723728 396769205 604758775 566500302 789403953 905211449 952089223 719372265 870253894 413051568 747488801 966040146 970503221 781346492 838542718 596417099 881654922 338868547 346794813 636076746 665979900 320234042 475109290 695782518 792124023 572691194 676594097 366327106 785169171 396549455 716952918 637502318 878947828 829551062 977682922 117054390 267258854 778027303 799993058 582857810 808095524 506905709 658942667 430572542 813976468 78941476 784869037 20770445 788380746 39424401 873727592 520920744 905666871 141441786 694182170 2179406 889893381 955076848 988161067 93331857 336302379 733255840 949768499 45917265 943788894 729294418 849639906 804804581 916720385 661167662 740647420 861006822 981532980 147641941 398211298 319024419 370182277 621986517 967433825 148925189 755743306 583160212 820605802 246383048 802881275 968054364 990531307 880546707 914220187 926275744 970638026 98943382 747291067 556320597 864122953 739863843 870400292 88528366 606361470 960758195 978266234 138943527 262681223 345480480 624521176 471190587 674111980 933487086 969990866 310068285 523478832 851986283 859648784 264411843 539681209 630446248 906867965 602302496 757302280 575224429 819652259 533738135 719034534 853652587 983609049 783775283 909965733 179356385 215879941 605477909 806704629 965989917 995701300 375225396 616363778 124814899 314899570 861620033 997012042 61092489 816248038 648696174 815659241 738620510 750456219 869198672 892903572 256748581 299260926 128669855 733569829 716584369 786672891 317518655 632780266 512915025 865541772 357032604 673338398 558109075 678984737 591475265 940561581 127964994 208021798 330469304 568792499 672523439 929134983 434747810 815014468 410730179 722521874 559303659 840942817 78874473 713191903 645027451 655709886 469182146 494427774 802913590 935078059 386354507 935466729 775219786 999525530 214528690 339305104 926991393 929174372 487517367 867557437 211457649 988624775 348761686 857252438 247353865 919842282 207648578 242593598 973201286 997236246 477407 329210192 116017787 661622616 389430020 684065284 984778175 985279393 693680635 696179858 4763192 256406445 931775750 995127495 196981613 910782684 29344916 610251230 632183432 834000879 307847366 332720103 509716730 982207266 718620989 788771698 613079506 735532207 27341074 952929391 72007308 121248676 544202142 828283415 532636884 765080083 272046708 501553072 508232430 908728272 860224563 912106318 438486788 923248414 693846253 827287544 508631754 543083168 314203708 452245814 742943970 830590899 660087599 939675478 934739433 964921521 478730028 553446571 502540600 950864422 780701156 879557495 598325913 889663798 115401250 834112676 147485448 993824239 389511434 719258870 534904853 581370089 853455846 917473647 64751036 314637677 992274517 996229432 898131963 907890326 357838910 966426616 669836159 968070449 508123922 593778109 607217560 837911413 529087330 767609507 765214239 918957408 582325465 976156605 73990335 412583787 312001090 641047091 403619815 754370036 536681631 878074932 871481807 897709210 416039874 466807144 567891897 844970972 519647849 671098462 74428196 81741057 12442633 841045672 391446965 683801446 550657629 877357761 480425524 498542432 347611896 715013680 146642066 368752602 264193597 584468125 378681348 832992993 57510464 314226747 772951804 830374434 112780271 185242125 824097793 939805957 519447551 730619884 569474274 721740228 965450301 969199694 310006268 464699542 532559862 967587259 874986039 988859784 875528633 919549620 731852879 809824691 684333108 700523081 735014382 931019890 44656983 583915937 62381489 970856091 936359497 950862118 609637439 796101882 860625921 930413028 409553746 468946778 121361531 198179211 924457982 981182934 806411892 922057396 711052032 905229821 562584287 707802266 362645043 946892067 884916737 940753490 785982572 833749095 370859897 658993631 706159818 820211823 207571528 342407184 685717957 731217617 662838909 858816562 831725171 953682067 915771671 997246703 361758124 466421644 307164897 642727299 528479957 553204130 306950126 650044192 558345638 815869123 842058640 863434717 112196904 695633450 373375172 851591776 155700509 338364740 472286870 845250043 894867774 906147523 593264363 949084343 924155715 939153291 672415987 923868669 703697170 796986226 769513803 824725406 358205626 866859998 796285323 977625354 988485548 992592250 458287860 844350542 691066782 739039219 966517285 971814768 816106685 927028301 108065725 887960163 473561770 580505640 110621780 463063773 270080847 475803129 511807335 584991725 845994675 947679925 372532809 612345203 121021096 347336536 470123676 812841398 864696711 886817852 987573677 997833629 280522061 639350167 732481203 974951399 634412817 825780769 974358043 980537954 820701614 867873642 834065039 900533642 497018572 562209917 499236577 946703438 624147501 789316162 602101142 907049011 182734153 799046137 937628756 970774005 571796465 762857911 686886927 829752771 34210191 136738942 647925842 751977371 481867398 819698464 129856264 313506235 391837563 476190424 679556191 783527091 522764349 708426016 833925227 906642721 884617359 967741996 222117706 534731608 317015042 391553446 682674850 692256058 377308414 708019079 825658059 871294239 428497647 575421375 670022082 979551239 361945464 391247800 248872044 532431431 90964504 577945300 979599256 982018085 39502690 243055279 422824675 576754402 15644701 793508409 820915251 973002515 611366637 679660116 746942051 814877511 641387626 871487647 835324743 841070064 259030347 554943877 866895582 917007850 506186070 589997368 271290576 803679815 778811690 813844952 651921615 903838045 707372307 897700908 309906858 441620398 488589224 578533730 907236136 943388923 312595608 649492589 98716390 115512652 639678796 964431489 389432610 558497070 789235780 818503121 750297571 915945212 500435115 887535603 208620057 674700559 809477748 965046774 415622868 904124709 838927187 872145242 206837395 952481492 741237012 793848060 72600397 304993367 400041152 450864174 378746923 629065345 352927287 617733988 269778639 756906900 111654477 409058609 882686572 981944016 58872374 411284203 272169658 296090953 855463451 925803596 196302311 573690244 271328814 312930150 775518988 883655266 892280740 960646706 373304934 844170760 195105928 259051441 640782828 924221381 922856667 937722187 727663160 956589069 390515885 873463049 391337319 417983478 835887520 839619406 959613178 999473724 267117712 530354716 528401161 831654503 642188890 744351762 154850505 376178623 568555708 916057489 872083590 930096064 651075132 906927729 766437991 810688754 619269819 679932269 281255061 873453098 836892399 940461942 963400787 979119384 588757817 654969592 28261116 734161601 244195203 613266494 15263497 698251625 719565367 923459350 356401963 899434166 732878223 951198584 181160340 375064322 273705403 416204721 37195969 551785311 561980107 800765389 860734127 920999970 324864551 646605689 996525421 996804713 136803480 716081852 109802488 263764495 631186742 779733049 977200255 996618072 266490826 501696364 825868477 934353312 385786142 560265287 794469376 949265399 95906428 470653620 65298507 878623319 685686172 870498851 767723096 965940846 703447203 859103264 271364056 569586611 6103606 148559810 589779242 697944834 844346560 882374332 347581051 453866190 961804889 990525073 875721470 931983867 882053489 928589667 448714307 881010906 197236407 834403062 263998777 374698497 608532391 738672040 135822508 543686831 303191254 954365347 955502165 960519506 784131457 927750359 37221350 474699690 322005483 914336579 976419269 992769075 343661508 377002669 237094077 602695028 215643902 241729329 143939283 797287049 998888370 999509546 745057791 896249346 225946939 256571359 944232530 954045122 618102393 898042076 823520500 882822058 683288150 690843492 679682487 957359897 708159479 858248646 663214074 948163944 198222620 229100916 928794032 957656189 359453758 728050854 987836732 989732213 336868456 709038908 720346521 924117295 286933594 339733403 25561981 275965481 748372988 974685202 326492052 372269375 56975435 846272594 855144423 871088069 163182885 386891301 857138313 899084410 762796107 837564006 528964166 699325423 979518779 985045725 752587130 961024620 569301776 692037713 72151836 891544625 892023202 984021126 602644905 961211955 15985228 788568546 455659715 851340083 275031215 465964995 214753285 700054331 972276989 996037882 634935757 715944358 279144001 354616172 959309044 989199953 483755613 794340938 717271257 813150112 268408264 529349857 577001020 917547754 434355664 676517800 135411167 488292870 787059016 882061473 190611323 446026091 912621798 950855510 417735901 578929283 688915614 809284226 504785104 542356671 24973919 173780795 710512219 874119753 989154987 993227032 441169791 637454491 447465165 617642535 601272156 746790832 791028936 882762518 421654415 541826639 602746088 984280973 638782847 918950694 632320393 644809814 858547306 887137202 720259915 985102303 957606849 974317540 766142855 970427732 781806693 820141558 333310986 957845018 15596267 782003852 555716654 706006822 745452935 763080254 179710008 582743383 370442275 849264302 329256959 498651777 939432879 968400412 992174901 993820034 524004587 757296950 948487153 987795076 51377282 320342155 827797195 993818487 834083478 950026717 277316881 438116297 178097583 309136949 643499298 848739895 305639021 567683011 593294436 676588375 244994008 379793213 16014123 703930319 580073963 858185405 112300878 284414448 482989242 764766148 897886889 919387482 989707401 992611137 582219735 870362767 400247598 929977120 677263137 768287527 57994791 230571320 977177671 987121035 732529418 807626239 202896567 832446211 145394592 250246943 33989207 469508273 542513432 687999378 428691254 885889659 52719374 724824416 358574387 751322613 153202653 222902613 887527775 968104528 74979419 122491593 218138175 459363141 101106035 997110986 651662948 843773598 390174207 988049601 146504331 662298801 431902683 684318215 141205420 655261494 453513532 756628219 944529982 981468179 259791302 826847529 63720052 307374249 875373336 897377305 237873800 626525338 595747425 752791782 182532621 648034876 137824325 328539507 470371446 612555125 700000314 908101070 529653079 652526243 905502439 960327016 533387559 867715738 858686480 865751249 891250740 953157173 311904799 666301144 820236561 923696716 24221783 949549742 9951397 683028991 162604011 791952412 394980083 718566708 57179989 515424058 559466050 859638360 619116424 689802127 288153103 913384050 576767474 770367908 952295615 956337011 183412087 404130702 374593901 816702307 217732042 402471365 862631144 966916352 829306115 833995770 237683349 407313922 693122137 828624417 652634292 750577032 37570493 751821745 475895455 748515924 39385264 337371728 709002264 910766910 530943232 700258325 486183428 709175623 878644994 975499709 825341916 937956413 771743947 883550998 83124854 653901386 230531224 304303919 589269656 798558287 511927048 574320676 955038081 986830860 450323498 963922732 316983382 321574898 154854234 967077548 244702999 724385391 460352693 845793516 862456695 871658098 587935893 944552310 904065192 990134885 118812033 125429195 535393830 886836079 380533642 882089088 374040877 923572977 639411509 841747914 241896182 410368195 361402083 687634498 171837132 636943075 79089222 771494124 222979861 314590414 226656609 335655560 198399167 762597026 760632247 889610821 4937457 615503152 677164055 866986244 632153396 648750048 805965400 876200140 910395171 956491280 464750581 620586443 197080129 740548405 240812514 439756486 524118795 772989357 675825969 983677243 489528563 507130158 88508318 230159924 356363470 763224478 707410746 875961170 790313521 887362686 10944361 540043924 106537482 371455117 566043634 799600082 440631797 994638113 766147662 778565619 798951500 903255705 847849340 988217072 351747644 532947011 744603141 898100374 674380743 853764744 356808983 381567206 984239487 997429711 75228945 749612817 223614710 400898408 470028293 898031475 521995597 844625785 620645671 819916200 396996585 559871116 313366321 441886713 652954770 922965713 130867506 505600318 98958151 163063231 389060236 865893666 441475357 637429421 327932081 490272783 595578031 717851992 236613449 365767432 55946049 169449122 9097014 425610624 369936284 691649839 55346543 261300266 291412092 440627956 937727495 987148207 873444997 955439395 547791157 766237719 755949338 911189765 297642466 874471834 735024936 985166086 286895535 921417259 535038405 998473530 999233076 999376861 65759687 707358901 383416338 791365688 213785633 280085730 415350618 846064592 904946440 964049848 330488429 446014660 450284555 921383233 781647434 886555250 812550292 936123181 533134778 926313196 118877164 261480609 237924200 818557321 577594055 773156752 829502996 938329715 468578780 793930998 305712597 999890151 404631205 744360644 155343576 382683723 873239272 873673290 117815696 858999484 86999778 340044989 176233202 835779822 664087793 783779877 410209598 509160505 601268508 882986227 710501230 889921619 948500072 971278722 959720714 999883919 656711950 759111527 718952215 903525055 567596028 878046351 922729439 931428780 472163039 702581593 871126581 997427603 414336480 886505611 471518058 746765825 956814423 987104742 461282654 959339115 273501774 830337039 409683836 735590112 454481864 494027767 76554904 525839052 348277656 561343997 842135284 991717101 448049689 849124240 651963866 754479864 531425632 872259102 590333587 908029723 331301387 844283307 537361965 814164025 360493212 684009660 73086327 832715943 751163871 772415799 409894710 729892300 856762902 923899975 998683849 999051396 410564757 570958721 631548239 746128192 47657091 125057801 454241395 877358418 246745906 458000634 506093474 789773890 828499717 908188268 658097109 757292024 896059808 903779654 98945143 269884314 575067382 637185550 324545754 521463314 220693995 283365705 193693270 846521351 851601480 881433579 606182799 960412165 326647428 392327597 899635866 982159622 710334466 870053508 694641795 984663458 647388252 862068954 405954649 641184976 723119046 737465109 545731218 824372152 800925665 888166818 26294591 819404848 795112504 848934402 966030425 974221152 81147137 788128917 712460203 981765865 261342115 455608243 6981521 906694443 643552195 724837000 491470972 641809865 564019097 915429843 142096198 926391550 981149458 989615720 764742063 892380205 782683434 798704701 200902785 379594600 264875823 870161851 985704362 988173146 953413481 954283720 673535913 859142391 278510599 402472763 259432304 736400997 1728843 556365582 40714162 764568054 518009387 547093563 261351377 907141737 858475783 979846695 679116820 843127566 691682304 719144073 48556182 120974321 650376660 688395240 142060760 357487094 499324889 525888839 461343306 858270530 293426021 588216226 717379149 984802714 290316794 534103812 413517549 461770711 612257192 747307981 974470418 988395965 208280098 673658288 181896828 406670351 56410879 301516978 658797228 731109117 232017829 909727885 60608052 99854584 492586320 855641260 141649804 549254173 147071497 711018964 782961708 999312333 639181910 671262802 961509349 984300028 717879286 850572271 40464413 337304402 222534466 410816306 744408563 880876381 568459200 952948898 938421715 955708258 376555087 796867536 184039032 926726474 41427741 477983811 581285439 626949806 251984048 892315793 68082268 262576450 773274271 803741576 85290286 209605140 961198241 975442524 799477726 857891060 899386779 928573820 771417684 807299992 580260152 674645010 149419871 829373723 257954235 507666889 28468787 585038371 839724417 984900042 820835790 971960634 498373913 706855810 539473359 567109675 687889713 780133192 285139279 685622939 643719858 649939554 20773968 995365001 522773658 599218391 906216458 930462474 785218174 867913592 96497146 661604419 253621696 719845923 329269170 738884649 21322204 397039710 744878909 950220442 233661791 821561322 660271718 773936969 739872611 775827733 345092633 477919473 688708124 874496294 394325549 990817664 333124491 850655830 24761840 654507688 400328977 708580713 991751660 998362121 926887189 966520624 527203975 692231101 474066911 778673152 337163244 912888584 922988553 982356361 872361112 975609261 311541825 425523602 91088632 993152548 748403760 862937690 36658662 73223465 775153349 878895511 365605315 792708691 689075150 816822015 779228981 824897170 346865918 369848244 563851616 823820454 486309006 990248482 733276636 952597777 319007396 458791150 702320525 907021620 197929586 559754795 587968628 988072704 2429618 260010153 361922726 566915600 482366870 777137665 478610262 908127660 688051065 734930747 504771942 545217343 498454584 546450552 366274426 434825630 631345641 999498496 550094008 842047858 253612212 861522685 139158652 296951116 424776186 699778512 328452961 619875556 985655323 991090777 908071673 960698411 81575062 676659548 84951245 248856814 724409021 848123614 635308528 743935532 91349335 378491895 676778316 927362577 718400274 724665438 609767250 660995667 19277746 376819835 796582520 858020230 463220397 819447629 144435500 931815609 882715931 957947653 413115794 696572547 113746824 422601356 842294467 973734045 811451349 888035070 930364858 986983852 650840105 731782205 336337305 801068612 50418870 187818935 290907342 699223673 519683189 948227523 903742159 967167321 29451142 100405047 389949161 938554019 158762923 639928922 843482280 852751841 270110064 385529539 121215929 902190510 694248071 746938963 805694729 987932007 717718127 751825266 170381994 653031321 612827218 632077283 692649105 717339233 431057137 689379712 893443183 970108386 741249188 931765201 181155818 536530830 338157907 570869196 285102022 553783387 37922401 869662821 446822445 653486244 923389033 948330064 559325344 735204030 801117244 965092164 373847025 612931865 225260034 416284175 702509128 969026658 560383896 871566658 953842229 999702435 31291894 896405884 501894082 737460432 422186894 897722924 607158461 709144648 648122268 908997516 789559211 804320056 222853548 513715045 47265941 121057477 698605756 732063779 939838412 965478997 142305149 703488982 910475101 966882193 184092739 810427208 229648809 639354231 675473078 736502939 707270080 717435584 288932838 422406877 94401763 367071646 174539013 227802990 552844093 708119967 466264251 747429876 107809349 444359817 530655151 605350774 418435755 803552107 256683886 576552902 69228026 966775293 375989306 651743113 301879021 411820018 288675697 785893695 13122494 400564986 287701104 399812015 460837644 509195118 560557604 937121658 778115624 866064288 594901299 750985643 698242093 813578203 704665793 993075490 532550128 681012443 943261949 963227446 602047418 770217293 797852542 994240832 620200336 730491422 406282039 904858693 583964999 844157293 104120782 840592806 900715195 989236384 58171932 718217400 270546041 367124151 319910509 562616252 221467912 889136415 447724143 708611866 552689889 596643835 674730113 770058417 911826001 978548396 742181761 928147152 780097453 995500446 895353506 928933991 30296667 839256829 567294191 613821722 94816268 263709242 146479586 645574788 175767015 203635415 905780318 963612453 868581688 878238717 893633395 942439842 35608495 978797620 983796641 994004084 396910328 607869524 768551706 975485376 310892405 503141761 516575640 775496022 631839110 955805339 369732233 700753932 771322011 879151846 133923309 698235077 200652229 861069815 10653639 94471811 786273194 862498028 546781039 900394644 495247448 835134860 438275166 971055758 601576788 703653376 722269135 745513511 147348393 215716851 892214147 899548929 212293447 682414740 740052364 800904332 822465660 967276420 786866372 843579503 102800225 158247854 43401743 442486336 834853852 980177356 524735103 666524407 930411711 960601936 356386361 450567970 742358514 759262166 207544919 576692268 102870255 432038589 197723496 882803570 217490653 561481466 777199206 806830433 379266315 912508363 449672388 893621397 666062451 812208424 323931750 524990497 928787100 958659699 132504985 762615030 761701715 862775771 434656481 453541774 926995694 984304518 798447536 880896435 482188508 877739635 706313689 883855479 190093266 292273700 983702223 994263457 486281384 752122520 610059273 956391908 886544973 904715955 53675641 675743678 35576955 984495035 458099719 491464673 205428765 221227081 711853205 955080228 266750932 602769070 210218976 778306667 657325708 824903826 276000887 357434715 814753207 887183290 255179046 273030537 877409172 888785852 890217210 987944701 380157902 433044255 368717278 485791715 122997752 578296072 190823722 663141745 736760860 778082346 882791470 970627358 369224612 709001703 835735674 990444952 543635618 702054360 675418741 748819618 910879606 941014544 1887515 235422819 228709906 368963017 905945863 942742506 411750792 601091803 725848692 844781044 981579643 985427388 561247794 939658646 302873386 565593625 894088235 918771039 933166659 966526802 856116755 903921858 103252172 163755212 859890123 933893890 977299890 981250724 640994266 832577215 458429903 633572597 522274995 527963072 371826296 449031113 169063386 266084887 956205045 982319215 505504892 887976834 827000941 978397544 112198707 759668840 397896484 723033165 992370739 995407204 110544510 771975354 1294643 572517335 156564509 707478379 185515441 763712760 422547701 611377887 3282848 402163892 649386530 878244401 139971628 851303663 893215509 924244936 340243484 759963055 691533154 914927052 682077726 929638535 31713804 615504808 340535562 662307019 196587396 844581963 604308846 686950373 98433213 276060531 167742805 466104248 299266352 387910229 876411185 928618173 625578367 765454639 923580440 988259776 581646600 675871346 575344336 778312860 485113413 540814189 894096322 903964836 128607342 560030082 405698874 590855609 194092782 717450716 488308505 839950345 933533400 934147050 357478113 411525874 714564585 776782482 846106725 947946767 633878220 935560403 700055914 989592791 373407657 651369599 760924973 801564581 403554807 816655010 756201278 866319284 697977035 896440175 617909480 664839599 422774425 761377304 189530340 879401103 867126059 950902627 525151449 864688985 89107512 506342974 899863919 960160271 37675910 565989139 410779723 951755817 737405063 800508827 274018181 837586083 723509218 986889823 552918800 571558308 363493072 454159100 702110335 864857663 702198401 836173918 664430137 926332415 336893828 785405605 803295274 979838460 465900596 624102281 755203441 805424341 832566799 919094216 452335303 461247268 458352053 983022408 712323490 966621117 433543143 836647933 444306686 805036683 390777188 928531318 596635018 613004314 841474743 898147119 889413351 905365275 403776782 554855102 44019767 625752864 287390403 598643366 275418486 332974027 406559658 925230742 795635635 994932094 259133841 591800622 569422186 813671802 678562317 736981811 934395455 949193222 167707390 907164534 208693237 223514212 80994075 435119219 99181598 153126773 683249696 880385054 847980330 950531001 471243183 641250130 990005024 992215908 506773168 844493968 409307675 443941698 434523330 843740302 991588999 993090892 510847836 812698454 69888722 271593107 572674218 961347440 736100516 926796261 90844886 391174736 609145003 840622987 912007937 947191058 251658631 817088568 266850494 456637171 572750705 967648715 238811570 289289166 352949341 361471202 651216455 682463967 594215686 944765428 932796490 936717429 287169689 694538508 372149441 487860010 519854862 978908904 898864587 923828942 16280851 473718007 13753235 816289947 206935441 765322250 901528137 924849876 765752492 991531810 882285418 943366496 405315420 458333544 458800656 897194292 401266912 498978072 390050380 414947127 892619632 992061416 329062484 963875703 232694751 505651627 349698391 802909468 548683864 574017350 467939698 703234672 913006842 920459297 681227206 789752783 629750640 993080028 395205890 807219709 656044945 867805729 384119223 483214774 717374428 764288908 630594364 994880206 553098523 942620967 742630539 832894519 390334046 675571973 776554778 935353525 983629859 994665265 76936936 115770760 587957092 835568677 249444265 444989775 96404378 290438512 373902512 991191145 780939469 840276240 240776902 313664045 208020893 286368241 691619614 918912583 864003424 867635856 955868214 995474040 911552339 978280703 301367301 725548294 374527162 720500084 317324667 453362325 351531398 396540321 307383501 857771007 755709689 780988286 608602383 959472219 419023359 920953544 461169438 799414064 281296562 793894936 797492618 911241405 821814057 845260205 785490402 911541327 960942663 985314261 16205172 888028068 354659846 963063460 930720181 963992377 324042985 803122953 621098717 717083664 750228850 877274190 19166886 150592079 393111625 653499453 482639804 728377649 454287285 926499700 427092017 894945102 437466246 483446370 314208036 675911354 617264298 991675105 869948374 920290487 21043292 985045950 228078890 312066355 749929288 888796860 796767675 986556780 423616838 931187480 934366128 948635037 62356651 954125197 207409282 227212775 743884619 890241180 930466222 955573405 331760382 600611223 178318347 688429777 305033071 742762300 10058872 826767685 447862549 860201761 168982648 221391666 494858521 759975634 972153691 977240705 407382868 467858475 789864706 993113363 858277462 982877922 826775509 952208185 41550354 70758878 871969020 918805800 415863594 965130239 167872820 959719232 806143634 983150116 884332234 980127648 586457132 834424154 745463115 935897293 975891927 990372704 80791345 459658788 410262766 979893364 710424141 978224828 9974085 768957442 669260667 844094974 116582387 204345421 953345250 996947394 659909514 849579701 999200849 999519970 542896232 734883795 479828165 873315443 978898661 995523807 504442684 940499204 603695718 941975289 243732030 960161585 888395196 956656881 998195508 999755635 34089810 563848483 782316300 911357680 833769329 971572790 326650877 988962001 14279634 450309452 406390260 668306678 728021744 787473388 338467167 796103465 349728705 480019444 928134512 941724907 246046259 793704521 385537028 712603119 34331611 169767183 357843104 682967861 948631181 969336059 618505082 978309844 524001448 560385960 499660143 847648870 341723907 518106945 953953388 975089139 910564670 976642404 1554023 979428083 244013394 659277065 835147955 969166395 313128642 763770213 421573000 711106669 347149796 561057192 739417604 975187936 547495320 589082358 967123540 968655491 557733460 922046514 959677201 997688935 786622880 871678927 798897175 963351019 589985502 598674361 570137943 763188153 295196715 941129482 532873442 889378732 748636987 914388028 335461665 664292233 321152907 951985840 494288034 968743712 660132705 805018685 637807269 757544501 382514205 436653854 726079152 758210409 776979154 782476572 827998463 870797266 829801740 932297260 387601664 654053440 880996044 955962892 120736666 541898229 765518228 819803413 423074653 863470743 909567075 970743984 680760547 690738695 708249343 937375168 105693037 983385245 762427110 904407989 399929910 457640329 417009368 572026568 174916603 814725620 378902039 886658460 877584280 886984982 145088978 981761695 728577049 781410746 553443030 559946320 740624432 961609400 640265344 873534039 90177204 290966855 174468282 497546590 896097469 972300498 506621357 864364837 426013530 693032869 811455224 911588487 574208397 641854134 995747836 997581439 348434353 774217333 867150880 914997013 156861998 702598537 241223520 985471241 527354905 566801337 278365048 467066118 143462003 821515765 250871486 902029031 266516579 357531593 701371021 761286668 766253091 886135299 174744651 527799544 743270465 961779661 611931149 865902616 3906949 163099629 264268755 610164622 297870154 620008899 654210635 909649480 442089932 836937843 378933060 731537076 687729361 912595911 23815087 253633270 81358698 370951456 781486708 935982920 989956581 991887579 807677567 996691048 820736474 833340349 893411987 993398181 693796084 984536780 650070572 801811344 60676893 409049628 743746321 763422582 884373339 961005333 948972160 999605224 728435284 903113447 460557084 826692132 210696299 377904812 937215496 985248240 778305225 877881618 700942713 785223017 847311205 924412504 212115985 308119070 94237264 985162039 920086105 994610816 730877354 741114610 569273783 968982529 318988073 817780411 928234142 940443198 509757389 921057062 390776324 495110506 573458167 751596235 400030638 738523186 271033192 894584445 771516416 850735327 533501220 575917038 412366572 727234467 384208060 659285092 763441373 773260631 699696922 757537504 29450196 792849675 553202355 960925902 101271429 895928742 506140520 830668781 281712876 847433275 208804516 687393597 658687001 909101187 588637079 681165332 727671089 988595554 606839221 731752133 391276205 870561457 552088310 913083815 548463338 854512488 830302604 872713449 391599191 410258120 307382388 404022050 627040591 880809417 379511052 695092516 952121116 977717397 705222491 861048592 439343861 487818380 987854148 997343256 204186405 599874963 305131253 924926420 777996644 959880571 379806826 931736679 306117189 589664384 653747989 848332993 845529778 975896575 300551478 599271899 484429613 810648009 175807494 548391949 824434865 846765013 894870806 968644746 71967861 959197963 400265931 922438249 747026250 881980550 231341364 490364676 901366324 972551326 750855443 981026057 45143956 696415380 457295296 763547262 146748094 891796285 708857007 844102663 868365166 916519754 234700854 698131209 108845280 545676358 368763437 805427275 260549569 591209748 611487786 787413757 938087221 942492043 166215347 551130045 378028950 512277572 460136661 633128991 19571200 362951114 927419671 934161457 687057985 884698449 536506558 678804846 616270570 750038515 468146350 911813093 274729188 366603058 787832531 956050997 111360678 163374773 475782162 747868730 282506247 353192855 865326225 955417659 980248854 985584815 778749893 842024594 222948553 521978733 134693033 425869542 118242092 138163659 643192843 875349025 303824419 630260659 54337210 580962386 14493771 758542240 919265795 942923250 282109379 297993124 483325750 627156386 338501312 690105326 487560416 561264611 431793334 622113307 421379926 809409738 686656572 931174502 927596843 944254573 538396595 951205451 316210364 546094207 188295942 298686896 940734460 962869700 726833272 777692111 147112242 553278998 528725625 595618860 586713928 818198009 762626385 786732281 643754348 883026126 861898948 971227530 650688237 946101627 190915102 821404010 154116774 285696169 48387119 823021562 630087723 698966281 505178098 722591962 71213971 140218693 396584817 840630264 124322157 526539586 38804775 883493903 574007482 597994584 852989103 960738099 229688619 949629547 696198852 975167217 815940945 872412390 896285319 952911460 804034386 817076683 787350717 874262389 269198433 649806824 627469361 627532602 970892516 994742174 631182255 889544906 381906311 407971517 743258285 976188430 782229727 816114764 179931526 592626090 315427620 460308030 680534751 733207971 812108329 938647257 767636389 842682052 798018821 947076344 899734710 965532390 145476569 859911168 722304879 951119841 802977 794898335 481788634 994755072 849588310 872990644 678319625 820576313 171200563 479632624 543462427 725133717 9821721 271393857 996176761 997146104 28346312 987617075 856899620 908530011 269996540 472482031 598681972 689473803 11706395 122160372 480712618 874244471 719567801 966237255 20298263 789234046 960804207 985465733 242787669 411437105 944513890 949572139 218208693 370387061 250376288 946920045 611399676 667416165 267654034 785683237 477234589 573662386 391223623 406555254 682434928 864103611 630216554 836944184 659143763 826788160 441317204 572467731 614064509 729368063 96123276 293486865 312630803 738248190 884114824 931876755 56091286 668712580 439047721 480379340 329206559 421123131 601319081 842133221 916225585 936111905 384272219 574954321 371177076 618933486 741242038 886313124 978625457 991465526 324404642 640212005 59230951 592318448 515479613 749299728 475083241 827048870 916747405 959069549 613816081 757940236 89979967 543691410 313130362 502092013 829606760 857963404 107058647 487985001 298942210 880977764 238891140 963361204 9899029 737092948 427245325 463496469 161901372 300232283 752190008 801459171 261188238 448987535 822661903 933837259 43640113 523231414 899496134 940274624 872506186 988146779 673252520 891498322 240821162 897295185 307912789 720038475 705292314 899483848 384146538 801530625 644357248 650080646 473952500 601581111 949469166 987578251 92564757 674145283 320290430 917647266 98831656 435163530 267484696 772968155 962911041 983014662 580066206 783660902 317593276 961434541 40627614 325407267 626441854 918242663 698166639 853382864 55725748 288276164 600941790 948508807 45815774 803453758 281538465 405158776 983408512 986822799 327570419 777544832 826091326 855333565 659049972 692002240 525852114 703474287 473352195 995430753 587745020 616588013 764333983 827882234 535510061 708457338 290714304 368111729 913040738 935635248 547694962 822131484 875320574 905551372 263300756 736973611 535911440 606926473 197424074 864977666 75866796 206932994 236272990 312580362 796346768 960344519 567680383 696718007 177652472 935554973 197884187 857676792 411319747 791646044 12844256 19786480 472606999 853215991 148499485 264231794 464738573 930045215 781750093 827427930 379886523 393742061 782972122 989097611 747580898 936629336 863109178 887089327 110459536 598768221 969749674 999270992 776798020 868704669 438325752 440406443 584423644 921502570 271496447 794982869 526137372 533403469 562476685 570069430 826350011 958290521 827406648 831716730 820955934 998609629 956023447 983547119 852362007 878718320 877259145 977862389 716454647 987544781 349444824 996179561 789548180 843521815 575968749 713538550 174553131 860227602 858672773 954368893 811450835 889578519 8036823 263394444 88223942 374925381 503850902 968501450 778465297 976220513 408787662 896376543 398532351 739555683 400658703 547824352 384604138 863892404 400616473 908281621 824758579 933991037 618288267 858703453 219416735 955629070 388797122 414268497 997686956 998250064 846877440 859055875 522695639 541363910 834658017 883983860 302393292 934450219 650070824 848404651 724975991 983257098 974351827 987070831 324919865 899265975 732046726 750563681 221608674 665447271 21273937 240672411 572030649 727081556 804627820 831975115 92347801 718453043 754093183 809473645 242075228 612537194 727235360 855749486 625292463 889584935 970005655 985098908 368836710 543455220 999631388 999775233 899954486 999305689 214781040 947754281 935544179 981218600 354673162 928645394 925833636 931133147 282764878 466580763 790195179 939904657 78123369 84511638 284912633 365539730 549930110 817266150 612290386 771820373 206206474 561591587 223159858 447379009 961496340 988727412 954436758 995123791 699508427 839650425 948182989 957939086 993537455 999236298 334864420 392580953 468504927 966404577 865697736 977799223 185830321 411268844 763412699 887741292 20921009 375160624 734175888 963926672 72497779 612010380 290476408 912076153 79184886 983945096 876687381 939920870 592666426 643231288 387326736 736612727 263303416 701337649 783926874 837514131 488393457 587441526 718058988 944631436 468446098 948941203 512693361 800014929 149979454 309709534 685047614 958263199 302690816 335575291 636948746 705101872 27592580 729650527 129729747 838486666 106790349 926673880 61128280 535758987 894903405 960551793 775041376 897670036 730669161 877732162 672015513 729570608 427716782 745743580 130840898 412693863 256922182 445269802 28226255 369680466 568341605 641331225 242653209 849610545 684070651 987471076 987267557 991510308 442225448 489920030 903651600 985950987 179279097 481881643 920925734 943539092 718508545 722638203 594846601 965525293 30331859 57380262 650835499 657825263 10532011 748548039 279409114 976340557 779911079 845514362 707753892 961693560 198848384 535656692 315979889 814579977 305706184 356948514 548443929 990769003 610217573 853483419 842027786 996587285 757365059 891633781 471281809 927542334 624992665 655359777 363598982 564658996 307198777 706596873 333979286 697268291 101477547 829894161 905932278 913030889 898772673 997665618 131746504 943950292 21332357 82423481 908082782 997379297 299441883 607008828 621118037 651866476 815347719 955282184 457794980 668573257 779542647 904297253 227022537 701880874 496406875 976486848 937038236 972298871 360628552 823910548 384520957 799725032 861944435 947164750 968342695 973207946 787544493 833954987 802578573 944463050 816244392 820612910 229649261 282294651 874584637 916731857 851311831 964689705 360441335 904424338 842516541 863027503 658079764 894159833 404520361 663090748 368578048 857519755 627514918 657744477 955281379 964499693 267516688 736026325 631629433 956105444 919091610 919310357 408706465 528505526 973310806 997457339 353338745 378409204 637609408 667006715 562607129 919813952 263317636 279364619 152934000 612718053 822175986 900093724 80763995 815717034 872394063 879926364 79951388 591573417 866343110 987747359 222714091 491866056 364358778 889795166 29624237 518748594 273992514 868058017 953966275 970236918 172293025 516101476 40025634 224129628 739855289 762995534 214321333 467265979 197880585 236268363 824742755 906051029 408770331 469438760 328644153 425786811 788581605 878860882 985747950 994263656 242362995 508161748 321690719 677199522 429448527 973118095 371913342 749683600 761637537 895333859 322899366 452753288 282093947 580103440 381939254 512830726 967449319 998415296 813175341 948499705 208818687 266711955 439841185 832920532 211416176 663022425 848383890 950228201 352886732 423735000 484799269 893053223 255802624 821282415 827847117 945504567 801691132 961106069 893288840 964480866 89659148 200518518 708536248 945815304 242910595 435548992 148753793 587244929 784593860 992011699 277160956 819535716 679496369 833221434 285548828 547362424 879273131 979171273 912619572 949783373 61360846 260779481 179754355 878738405 627955561 899101251 372909875 646474220 470354984 815134049 470303192 971685552 105203624 907318551 93174799 839893188 153161521 469595548 671188831 809341971 498877161 879146181 743168540 928351464 151493786 246397415 686883119 870272162 548109306 623129154 75701651 203595019 26650372 278823399 463770358 484538367 783824342 828642333 938242186 978072004 617949327 960037756 34235792 143573470 401431743 941227646 258240255 296698174 293355987 537221100 331200658 932587353 13670885 81231357 145695519 233408501 126031395 861564377 454290061 611990043 521190443 688971164 733497162 854761844 183698534 289440165 12874168 726727351 378743555 509556600 581863155 653144939 109815418 957553986 811691693 828008267 508689500 688630333 384975267 778095402 551155442 855415668 378933197 595457476 787542957 826910136 494482772 612835496 50063941 765487091 367329988 420640817 228998998 394516915 859330745 970614629 463528500 580364168 383440913 524261172 848753357 921339986 461084185 851199971 229397226 287497367 10621769 510803386 726527962 734427892 53907684 101689039 880985712 964046204 736380662 970144737 452254066 526019306 270502688 701620910 244143511 337504682 429395037 784050497 808529968 854643936 420918946 988782097 166993325 709207509 36510313 153345955 566213365 578405718 151901462 164493649 30105827 653023434 15844180 932723228 246140339 457366471 936276745 968194318 117675824 845470760 610324204 673958050 401679427 425238280 583938270 604153742 196584368 621848048 326924400 412902446 909604911 998723169 354850089 845302674 966127088 993852424 207872871 966337189 643603297 947202193 335847654 628007224 716375489 927946377 581078359 634295024 123047720 194474065 912760970 983868639 137060670 767935538 355772035 467523839 709485676 973492827 950644906 988641331 251724738 657493481 506243331 847816155 824808790 984084278 313641179 691546228 728843635 821703306 430896175 467778292 552687540 890361069 729414631 793690183 261002295 600058380 40176694 873298423 695871268 960538146 853658408 956783916 63078256 883846921 520334205 597212088 626484003 730956079 552514663 698174715 137709691 416226246 120325743 526510448 68320683 451712392 113685067 612223975 910279908 916153295 512155167 711487801 10754336 576996126 769406301 956430935 469866277 558872417 198924526 216019380 294584589 573874638 253586132 325954715 469280196 879365257 971404474 976557226 821064090 956231350 673060666 790447602 425022065 728122471 147850352 206058270 132954618 912581646 573318575 719895251 634507314 961315779 225739935 979539035 726019625 834064914 513313360 595867206 345661876 831854924 940844821 946180296 89891989 986296423 440372217 572353793 767746000 941925757 209902276 428784240 539760453 961267680 491692014 576377392 819207280 998979842 362335197 895079826 556209063 953730873 336197300 615850065 394922640 826348003 622857175 691646576 937596648 991091487 414540532 958919169 197736066 952518467 208933465 346051035 834504823 867374623 750605052 814402014 582326440 641770723 549733703 708775352 19305706 203383970 506594156 598576489 933318762 947260232 784946366 867912734 156358229 199063515 408662669 609549117 127407473 404363893 157171006 430596782 831722258 949854344 907384247 966021842 677106915 891153936 360459475 963094429 895504044 927684413 552132717 933096677 411407044 561011042 737120851 748710060 425185712 783051352 88897521 405171729 255029805 799423664 148433450 732023995 165183691 816268378 191088818 918743197 672593139 972298958 171053893 975247031 328855045 682258855 687799012 688698361 986574176 995594778 335315348 364768098 486732932 647748119 617760777 697281795 425285250 476739309 266512708 837029217 566016390 834656247 41574468 482338508 128624204 224198292 396456045 914682455 279972034 594622678 702436490 802682557 78505001 705788877 814319278 885930574 613485274 908928024 305361305 588035385 407651961 665194163 772393649 984845502 232501656 319855313 937816926 976540931 417092978 813004933 342305833 363956949 379865851 969286869 253435531 683444012 343124530 879964718 915210245 934337426 161397663 871908255 340774617 621206706 249763054 261571630 749253545 976833181 708348476 796618820 508039383 799173189 848381449 901079653 145771302 230357022 789321180 966315898 900214634 928217880 503115263 812311592 893729701 929549996 660318516 800059782 277753827 738358970 622821849 839660831 818039969 826966013 325654245 543830740 160043381 793949665 663169925 701380058 374136153 710977874 985820695 998444961 292446691 885681407 728776971 977481712 697045903 718805211 371191488 785576183 12284472 22954942 382369689 590496014 745712947 946676812 593748741 730478577 987691232 993210064 355638674 394395759 314301132 399346345 20667289 354799469 884358290 915722924 57064947 564771809 853427738 985704801 540638571 799592817 404286018 855429310 918752265 991707350 271974251 840590561 519559998 900418218 997323565 998811786 683419284 685565987 596162971 931799801 562945493 983049157 399239456 839070091 601043143 815645824 710879765 713209435 302091073 950378863 731816201 831553650 234487209 443793383 410322445 750863076 914723488 988430727 875229699 970905877 318988352 326936365 562752070 577373430 137950216 308219239 970894039 977038923 545750499 585934244 167242017 842216005 458258609 804033227 876782130 993397406 719045722 864924859 661768758 934116495 889821048 964001320 609865850 791318466 584329099 764054383 257901347 481967549 257996184 315278572 902292110 911059855 853520968 947076186 193444232 274446405 524653091 802742858 646241369 723659979 941261515 976316891 741726514 900011900 853948715 952523795 989047678 995839321 380715966 940251568 584380033 715267279 698087628 793542249 475658517 772263303 668007276 843898226 775896160 897559545 460408020 621222397 495892767 750007228 449051153 850961198 710928370 878421881 928858172 965143627 823354830 939564729 356051884 376219778 477464986 695519400 833821304 937579955 181219273 300723416 940607597 944552994 14242666 752129681 524655413 690042311 143592779 756776526 673298748 902454716 953525916 977242606 133658967 898169292 970819102 977423639 223175507 304958880 872402296 959982048 577149701 724069323 439064627 863526737 591125015 765011906 879161114 983828706 122092679 882457949 281697047 825114488 395364079 917989243 342392003 790202762 800129109 992278150 290283361 574232300 665629509 929767508 145629009 164929167 964943066 999509724 394937918 527164970 706092659 947708270 501067166 642849514 276472215 706399102 709825845 972023506 551920167 733070668 916361537 949538299 189716665 412495948 406746542 498862020 716560011 959287009 356029498 392003552 386070924 410824644 952375308 977699673 886123829 989503368 402151321 588432460 841853830 983174110 110126720 830606459 606017620 892290065 361565417 470106831 603832886 926036254 220247493 824265454 281794976 920536190 885399093 997246443 131309159 905609696 904308644 948912974 846606536 921594130 561111289 732703858 667981513 808653315 103206549 657320603 416612577 515892343 925309261 969273331 868644808 949365482 511290928 795216202 521760134 877834132 76501921 683464519 1276266 453611598 35893483 583181910 366296866 896555474 653967844 985788438 656056623 891057247 710340000 878450555 478138267 977481403 809664623 947777777 156820963 438800106 602231803 931169424 247522682 850207086 177487685 995555419 173939900 967439001 989467317 991234334 158511938 927923044 557196828 711954798 28909678 786452362 744874473 821456651 720761698 769892935 735640835 925439307 962213312 997017749 379295373 761207616 157845527 285639840 352125435 449898731 173940850 879243567 381497423 390198996 526174664 590742035 969621402 996645180 661051864 714578848 431578864 597566133 330413758 876737581 314784147 699959579 650722585 947591911 592261196 999116409 24176819 405516789 420777461 846269092 432613740 873964067 692956433 784588816 723668513 916102573 839960144 976623498 318155056 707064591 381394693 388112119 740430815 791618281 580487970 681819007 580160921 969580860 657853765 874748644 172077196 717697288 73371903 835592822 52177946 846518124 183988005 204329021 16656098 797819647 446054551 990626678 627422866 844572721 787891957 974330099 226632045 664881139 473161665 700199974 866271794 970514581 935464302 982053226 393365154 953877788 250674128 690835071 272744585 498888457 50842249 173755213 869910338 900739892 187474604 354944522 974419643 999585223 82990735 868978412 179145068 594941162 150316711 564029217 803425286 883472162 61936927 376151111 757301981 803946004 789931887 903979996 979796826 982565488 953500142 969721333 919170401 994846267 109629551 844874534 848627862 919402131 973182488 986625491 345561751 705485829 709900764 932361173 457875146 863496744 712581777 972507608 403094869 875640637 223484071 552601854 351297873 846801873 853819227 901166153 667777841 961198406 829718740 858075430 356344587 817972492 167971595 984348968 996781619 997673625 202980598 309569242 861019763 944321598 813216480 975257139 12829885 332545414 855023449 908081847 668815140 718089101 102159772 378662962 252888720 662885066 693214301 997370587 372980278 764145309 410039418 815764215 435163038 694168482 724665722 795883884 49478936 248490714 352392064 487261449 225928013 824414509 911826692 920735930 824622939 916816683 784669229 844584736 79490867 753837146 144390705 590376153 1968149 21534010 512899101 691101406 387011967 430892747 715508839 916715066 657147768 700436104 234453341 486719797 641676071 752582037 864967946 887437702 328511084 670318941 357606227 976244979 720280519 929677493 614913368 987202574 168812746 829405451 194736323 583953539 257341674 272971464 585026936 615755542 99292380 736982137 987157300 995376948 297723732 465626670 999758810 999849290 113359512 948633606 137145821 674773144 376065886 467408046 941949874 976523121 152322160 551843217 818864315 980385782 985292425 990288407 813700618 901193437 886762780 919843525 463614916 792385558 16447907 576889692 81973114 709468516 28104881 880848443 137061357 600958367 687386481 773299165 21952059 987470838 327807343 354377842 536463421 777441338 571341260 923134477 301977534 432226360 415666369 629157790 564455562 882518438 869139082 941738429 493787695 914280014 103163802 782361638 444918705 457221617 226554881 506135508 464248460 871056607 449856756 606346656 102376670 719673626 2623085 924435616 284282713 717202764 369402142 868365437 941217342 993870081 481237744 814693668 683712120 972233095 400292346 619334114 890941175 992358652 3502435 722685491 111232650 923456937 283175061 369920467 768729257 775616160 744861597 857627653 497900748 525021633 221467428 422128400 764681915 806447830 509953046 734504576 480681419 933596218 584089389 899518234 816205695 955141060 664667099 758328315 299150990 737450329 294388406 840825595 625653570 872087751 668011854 716759996 866429568 951127274 265732666 951678167 488599551 506613411 937298020 967178875 210395365 996782655 851266411 864002129 393170828 888328610 836581092 972814898 627731942 731597898 79390834 668090572 448584529 509484434 401869280 952036458 694105532 798932179 691146791 972028461 522978262 562480444 19776365 143242058 527973849 815292783 964760715 966530243 844481309 958197698 986199621 986315990 449501555 957484749 53277032 837800204 76389624 445330199 148254785 162226946 189372217 772207769 272844521 861079625 687197716 919298274 646920878 742854106 219729403 895724119 195869694 256144539 352797043 636789815 437763979 994564123 635113012 775125575 176721764 185518883 225197012 955840119 315396835 860420814 643586269 714950082 933694898 965131525 508449565 836600477 434201906 463201322 180140473 677867656 221773025 739390016 995016955 999197534 53986032 521253022 420736514 868953685 580984129 849858979 322145363 379171067 515336513 603697049 475353478 651040508 619204291 737123511 26137195 827513286 381253961 599591855 485418987 689564535 732648902 875355680 223608308 577148253 979904396 996285392 274815405 418700093 272968809 356172200 306423445 687557021 644462995 849798527 536512458 878765664 623082166 654637852 469816657 543822425 675699090 936492258 105970641 529347143 394766235 971654774 796970871 847024044 460824973 924126754 718430266 820077318 648893306 657285485 528528116 713772426 511942212 945126403 501781982 979941105 273277963 985394782 806021185 810616604 53580975 350674681 31377657 904050214 405717836 910198008 102078721 686820122 300007764 614951310 950350406 996562262 103478332 447527140 427716713 701515854 607769163 804639561 958042046 959187448 395828905 946546535 485339418 778859171 567870022 709069324 906964897 981464747 468822502 661138996 230964520 233346540 999871554 999917259 842276091 916879519 70822424 809078735 808653935 836847628 372368031 396574860 238015779 678085057 670635923 807111742 368360928 615822384 70878200 389466845 811998954 857006082 511640392 807227135 776019319 847076638 174288831 231747093 712585257 802723777 737712051 800615697 975622927 987534776 583614907 743749641 876822227 929086722 96694265 603158501 336128321 952669973 164040503 412740652 324090962 986069673 302887435 977688705 248676545 642732094 715564599 931137304 677712419 802428465 407102056 639649567 849579342 859356406 197907751 741869733 258625122 331737843 803245036 889860432 372267051 714392131 385453348 851120779 378624834 543069643 169213412 983651618 564874166 728362154 142039574 923310691 835618525 901049700 761254811 984011487 317061149 559226572 831369012 956142937 235626107 262403524 160152887 600677033 217201340 562985987 770624014 943758051 733971954 910444143 384701800 876793844 560842884 715988062 650014593 988657109 787473679 988770419 881193799 923211380 835472151 995197533 247274434 734106785 570670952 938650146 839623445 845835980 253511452 622760944 355073822 842480768 516326691 614927029 235330704 582902025 240746918 403358806 438823410 596827263 153166409 416409920 426151576 924917077 48686149 460338722 824872467 904820268 417078226 782036993 534385627 926707264 886098116 914493711 227018719 401547674 129013542 187419723 202121743 530156568 152938262 550745937 116852533 430763135 872011921 950296329 725937091 792173546 574584672 980450938 540285139 948157561 866572085 902083776 999083810 999413699 270117354 424602870 155887152 549527966 529711286 799929332 910314888 981044373 175514262 592167712 106101938 200367463 333433257 969932785 419638172 468915895 675573691 850443401 41447198 805602352 850826382 991603104 77176560 688012378 235023308 334087728 372674196 387266013 550667091 594432239 954477620 994172918 585885413 655935060 260034071 301283270 276389335 483596286 411895825 512704619 954091664 968264201 508578451 980360991 63251737 226089151 344630154 882937019 879643998 944915964 134469601 999981688 941873735 974513009 111120552 882327424 832424938 946601814 956605347 986945558 255882812 522899437 818725487 916074429 251233894 986794971 628639122 643629837 948692182 953361807 506171415 512045666 411810136 895145530 480890380 540180097 184338558 193613893 986895215 993789554 98008847 892667698 496308605 601430301 491484169 525690171 175317539 234123626 593869310 651169990 961723453 968976769 495588405 744819425 404573878 774617214 364087291 610497839 922081483 972488091 832706632 851908005 592073084 886520249 446830215 853678359 229881644 828937190 744275677 959704157 712351604 768866725 423680332 425677782 350852309 644061828 251133531 759375005 532037298 540838736 820515620 848448670 728611849 810750295 464199368 612746526 894079572 976079190 209915894 463265519 636172832 639642778 548720763 874478159 560859386 739789219 95410719 870364147 316087138 323355160 672754584 710025056 212277285 450267472 259334118 783143787 223102031 781404588 739223667 810684016 289778874 839194957 327449778 427963047 835139159 845014698 489521003 605669108 189951086 222253162 253702265 553025672 941515830 964391279 282560053 487816493 760911718 991085512 465009010 752949638 588485993 953181506 863064401 867477523 165578498 421864507 914060132 925493437 405211926 723304765 76492504 517066710 847256527 953960302 680053979 722818874 139807367 577213275 809572046 967902749 854250605 879837635 181141366 291984357 341101053 845107637 882729136 965956250 947068590 956280434 598388090 890782050 322809602 393211654 860976037 927217805 224355994 868190807 689899143 882159564 305498093 892076208 20559251 150530057 733656529 858733156 803533820 924736831 555709399 630921275 815669718 990020330 144643675 259015752 146207969 956183333 562391263 584046625 891393281 957757058 511332078 579900266 612130125 986272096 637961179 800957221 391836614 991913254 862000995 928709250 152877294 594397360 762351878 808778301 82098243 947294429 304123938 335239620 771462121 799428308 507170037 695815698 419363460 663455961 961581474 964965603 215545631 569685979 223635940 675781712 65869326 789010607 517914465 838379450 892361702 983233553 138107745 207135087 780413171 812347939 25335742 699210410 986586050 988171939 246707611 328113273 261315508 364204606 796168369 824650975 491868808 607071660 183729455 453145684 194643114 703106906 15401917 614039690 876246225 965247789 210415379 640646329 383645393 422646945 401569707 646920846 633937387 819412669 174973834 830502237 186320167 343569958 809868641 963811168 319790723 372437433 460281782 625014918 674493449 678953216 412415118 676149619 92231228 376100189 765278975 968737008 324097839 702801007 963846717 986800359 339877042 413491573 778781174 923851154 324909130 955800664 456203095 995664319 847878287 935943798 924297630 964951608 810390981 907869889 701097455 803284105 52617222 404735371 59647304 868624792 721530613 950231857 542376903 944751834 78677321 975103859 491727993 723917557 62893772 754298824 186047009 402178148 908853705 959675969 907699652 943900703 977302185 985947935 911171487 927842550 808452050 811464183 776085512 851182115 408688339 892079992 998440439 999693511 493692746 627110336 339773718 722769764 604328376 858391819 211246078 928293261 159578739 193380746 826905253 988722398 859835609 980726289 467380670 690315632 299997560 442891839 393800492 594511870 637771768 792473814 707516112 814753464 846778833 970757872 410533632 581837864 776452210 982031818 591298784 669637200 278864762 365021354 946948463 989716624 129144125 583151584 709572240 823892753 514969205 867683854 165609957 947358663 564999512 601863041 904398239 933924481 503658100 737520397 34289473 948407800 103353593 323292939 622208889 635595678 198041361 419682686 721467107 741892201 72928082 555026148 108748762 757668390 697612328 819996789 783516046 960546958 143434347 319902858 635247555 965344013 773229140 790145811 704941651 760606055 338034037 979141722 35215807 48278864 74492904 159090551 588124668 595518600 620315314 640134966 693561524 979864646 139008606 715196729 610324621 764419242 240007744 302090490 407587093 491795741 704280949 772420108 740361979 757846367 497757506 725012582 583482966 651905645 119558232 513642323 199781115 783785680 516947098 719535228 322886684 867907490 749305331 956739713 725039229 964286580 810481159 868463550 810943545 980414079 760802076 896874421 327921377 372059435 46342816 589484070 529612115 587110433 818784064 849319030 82926728 493558191 213018070 970425849 105446207 849919870 378095572 678462851 143663774 902247655 60241411 131707109 704618094 972969811 795290337 866945263 784173703 784462357 444438617 597080616 532889197 700229950 957470566 976134696 897125009 918775792 547996845 821127415 692148529 916633776 601371562 724978330 336069356 819464902 599276994 922067663 964094818 967113285 42663180 438437091 236013876 802590802 602045625 725059913 612780401 621650473 560917651 651087996 697433487 934028414 215040891 229291073 990215091 997011007 997330615 997772937 377231621 986904589 441608957 446331257 669102998 818237650 127819636 363648961 912835360 943036398 89254422 542755685 332802195 908709597 912111321 932891269 848805635 878026727 177938418 525910129 322033854 977461892 859682854 956013592 175926013 365775252 187916527 462931998 708083497 773794807 335359841 984093329 823180652 886605061 158912848 312858623 614558523 636330852 662015834 832248625 671193059 883199615 680476407 816464447 751586663 930884591 511440229 793508075 224840983 633846103 958021533 969071549 192083764 627912081 423519615 690075741 380956995 503216383 898107207 953068144 571317004 574257020 497656211 883934469 910944246 993573308 858193483 875135393 384575251 646904422 28212835 959498827 984345672 996927691 770332055 921887283 65858944 740734553 232536908 821601651 76242686 572276250 982869525 992500064 335463860 393976607 988995667 996877551 919347046 965821743 63047117 812401640 440195792 592396589 88398849 244112681 236350621 671227177 507621292 921313656 954647398 967005752 388832420 834983264 367616223 507610350 333599492 652701503 524320575 570974947 637507755 741371736 32238060 749413883 836927981 883057729 711081654 728473468 888079386 899940694 397547464 670584558 883083066 941470953 775156775 838540066 453413233 559393456 340707799 693032634 544696693 767122904 857022553 977429547 739753350 767938079 452540760 794589584 130981830 742559701 586328802 725483398 943168324 980567361 919941671 978982806 890820255 957667239 212880521 876250980 859847724 907556966 670267388 996796509 610321167 783593509 902311252 930546387 680561890 984366957 55049294 879139884 196636072 549480585 783221315 966801146 463216851 759362035 526406523 765230150 288543962 452135819 414043178 855426404 172442312 423962457 653248066 795013352 9401462 618284572 406717361 657761806 55447274 344477785 216857712 855237943 37136516 409033648 764929780 776113610 941954391 977381882 750598189 989152669 217881918 902681005 82171320 977708812 442140240 945525200 833440111 835708961 579625654 815725046 109932998 474739440 937447552 965779322 578277505 654518644 186279032 453994493 870914290 954309891 396945034 938943655 713725537 929021011 47482411 621735710 768195767 990053729 203215858 712329223 689981484 845416462 603518473 817012357 901589043 977608419 265279826 724845488 611320408 904295492 369686613 824404918 588171624 753063471 912613226 918409682 144831028 213870810 673119456 849454420 875414818 880944891 890809573 922723332 22490150 146056800 986317189 998302232 269357160 626566152 744812166 830805509 89467143 230384678 25468752 743789906 319595954 364612397 602950082 820478266 350464925 965287797 334167841 618008745 578819283 700410233 420746158 722578768 620981513 876056333 102167434 765720516 219151293 984447925 573134827 805116057 666438261 720005082 546927353 689074593 327456901 612946159 39631288 634157221 368314014 439250857 912614639 927143965 451772377 593534379 659386083 789871869 202050409 615753675 218475058 227091167 247905128 393197999 575811233 863831427 112727310 771322050 423636157 436421942 435790739 882297028 799710163 884347692 629220379 976784848 187025462 699246205 306797779 918257010 329438749 721798094 537478507 573454727 236424233 948101072 269776565 932937409 94264414 395841390 349825432 639509095 79916316 552039527 686253499 752473603 302988576 579848202 455171522 755367117 506313704 741466516 852756861 899844563 396579351 572106762 652347293 978374509 466131308 924149342 885916071 982900905 9642449 461975282 382246353 780948486 269644151 776848680 293821826 576369709 221756595 681291863 267004050 791967829 836606073 946457799 93160244 921178728 648417017 708066302 854948658 957187074 282434670 336831306 410754492 987729119 311713723 722492592 249762108 276497723 102541058 741656101 82112645 394744762 280853017 464252732 388697453 588392500 448223250 746746867 212920489 575948851 489517545 569324291 9156147 25042754 751246984 832459239 377307613 540396507 241583345 711427755 630840538 887859764 343377171 979989650 397810406 840226093 812788590 927587855 585140813 803861600 140398801 578203401 972957632 995745635 769853471 918539523 554702551 845077497 397563482 517316274 58067477 535569520 254573688 632436333 55571762 215188764 635815197 826644576 345501501 996764699 296052526 941038779 562586538 911292249 999516564 999587857 992055072 999019485 317206372 408419404 314255317 477065462 663557019 679249118 101469379 113662955 978877390 980222869 153203794 629435298 308839770 638930706 742004064 850346875 44897053 468049354 586718033 697099660 211500052 452460333 848455532 955536869 903456273 986134564 12103691 967960863 313309929 896322411 844406292 945798216 276934021 849769134 357140632 786356421 105161067 308094798 245666168 527743166 25615678 841709465 812931765 996246669 357088780 874950259 111006455 947326888 389869883 927312254 584676415 643493822 935552964 996519590 967486820 992125556 144105136 660879594 216469878 691277939 460056867 961141991 220008187 821014280 41094695 164628893 551752633 856877856 247762720 955337048 358915752 784252106 91998680 449310218 132747711 548699463 260811938 587323812 801112056 806198965 639335479 762956970 397332350 832762685 626578442 836518854 854381718 856498356 413919729 786959790 617049424 710546806 315639786 838961084 555912308 644525318 469944304 680487188 384933706 589531773 634506690 725699349 729233933 901320140 403047271 668657299 440390533 471488929 77740259 578357861 29922435 191577970 579353299 908114673 274223010 806106712 372994424 874336081 994474264 998523971 997597659 997611236 582403436 690543108 826747393 973869697 965541347 982719681 125426506 858156876 626337099 760571467 509511078 957949476 15384374 951032420 388099309 800708420 559282809 560329437 825525191 952028283 396708294 439252061 36411237 819750058 312873927 944971450 271635211 552369468 111949655 870263324 46858044 673866528 247550870 943710443 169179744 611295445 128414656 687361144 252561346 580125444 796918754 885256720 769077722 843924154 852525916 888325626 725769683 759460389 239236670 389484854 742267136 884477771 390823287 576865880 656550292 687617376 469987340 827668153 132003149 981904992 528361337 596458822 882990385 922117413 371588258 373690631 389982760 649217059 823570059 895427411 933402469 948846266 743417127 953505963 850588496 945381317 719630434 979234698 886040898 945553279 296988984 865986272 670439952 969097437 335968991 629023198 555465451 860511822 489649583 877029435 902318691 949913043 339558192 941988009 633430508 746099429 745139947 773199577 388249215 731787795 181106151 569180032 584182075 758699969 230747088 722595966 147679839 257285102 91016927 184566575 513353442 620847187 368084860 741795952 334349363 425309477 476615424 807633629 852792699 961503247 502428453 515552371 605980256 971191235 918296986 929905633 636928486 740941986 12515678 269318229 635274246 967533062 72246211 412868673 886788074 981744781 847995769 918146214 627550397 789020507 318182721 593536192 805022045 862432598 766198742 857813828 480842725 687108057 233855861 565498667 992485993 994898031 106223403 291975556 247286594 517894462 4322022 504781355 555031603 696407240 255876283 514356407 192234589 844269710 763873693 832755568 74888530 457232367 472734928 783482099 478748860 479586133 368612872 705267669 100426933 471339644 771863866 982128524 770432893 927065978 659552474 826264782 223955931 661517279 169837663 509004115 842857018 878493586 257183182 342334378 350408088 396130837 247005359 822767551 128084587 446576912 727417245 881104842 3247971 986943916 113938031 336814949 317105592 558498278 710727939 936879445 300730702 951085959 244575270 901454341 833234622 859701896 645388746 984182100 799321707 914940354 803585047 827062450 398657672 814800544 888048756 935874743 86568200 685917294 939194698 969167544 956100851 957155608 523020410 775436491 140938922 628793656 379690534 789480053 745181419 854139390 698235901 883816769 453395654 475356257 600396555 601941341 920639831 990368980 905815849 972740501 111357768 925761038 529021734 808159686 573857687 637130608 418690215 952335756 935458627 990244762 606563598 925064657 332172950 433597437 185013730 793611512 76126318 654346452 653256058 965741697 248265355 949658621 585881954 880438698 949351484 966351319 600900564 828584548 218885642 622346569 784522554 801532104 767833252 889106554 660606553 722602831 347046990 757912818 215547876 795299089 412821952 415594356 412007869 480502888 190593282 689240136 636296763 875509434 123816685 454625354 992602362 992635934 354078480 994652156 703144418 874244686 265646309 851834509 532804596 799045494 528087083 548239527 266816999 710512525 331650496 745405940 92448817 543219330 125617119 879646680 624612901 886155503 155141980 799445801 127027917 176846192 225918935 828262053 488697271 545563349 324815020 692973413 203662308 933440124 648373901 737803882 753403489 918480907 662330172 845586414 876037081 995490772 191882450 196984673 611535182 739650552 245324104 726585319 475347480 787568606 447190493 603471524 579697572 667189274 216161408 920428812 171803883 912449486 671949575 873485567 785771402 953173444 450066005 705070127 770739654 798671252 740942398 914444063 271008299 778963646 78621126 261345531 323739294 533714426 117868676 898704267 111937228 360050662 95337218 637076610 358125829 582917841 573696980 645373698 84966950 102534543 327167064 435335043 24541026 41629325 566687990 617885208 699534502 984853534 385150702 404027322 959487393 997182646 484259878 638919762 127568213 956405367 351246168 584507081 234907424 573278179 67733511 246066697 139115908 213338890 273583067 505883097 79734178 538455291 588020089 687422883 68236364 788096864 260847400 337332165 384091811 650514106 40289505 434027717 940798517 962408302 563445508 790175485 980099190 994856274 223243189 992299454 852477746 860946434 70278724 267489591 600618152 960322227 170012758 988003682 105759995 774097561 549595861 731913162 733997278 762554566 482019099 938599056 663616858 820213428 808303528 991783026 533465488 659707847 639919300 676592657 856583822 875120913 696748139 961845965 527561073 610575513 711225560 728991449 833913691 843101009 677543699 940191483 835638763 861131429 838944070 878872084 812180867 942711945 457988985 649616542 58372449 785380837 153017925 678286452 503086554 680183069 543274080 909726093 943853634 953458152 79747683 580541236 945783935 951693261 412120909 978348746 837530244 969159916 877608671 879577381 719037299 780920747 173933153 939701942 973294766 994253092 83967900 432226131 165776112 546820462 641326920 853107991 563933776 964220364 727099398 885539974 619783905 662029077 113702358 282128742 984789927 994921517 24751101 257445200 650020895 797463426 601325960 953001346 275999947 865829430 647184519 965308389 482719647 781096231 524254880 567848652 41664039 932644287 439169704 788032618 944769951 981699383 807487790 873828119 135762872 751864915 283346823 575089876 53130037 264731401 399401229 830014646 172548880 634686550 116766923 714658572 943365008 983660492 174502826 877744433 342403058 685035796 975951572 982388158 712859368 914364123 305176477 436256898 129573775 977277477 101036904 917545917 401853571 405101569 914973819 924603547 976070321 976331335 962016785 962754683 662081934 869672923 387814901 755925709 972359291 998936621 377109783 528336313 289333111 808013365 715184181 805700630 386429266 808292100 315501790 768204663 963172700 965748628 360686300 825945549 546441894 966477170 584513458 985705730 137601806 899373483 97836171 186903858 318816831 523945224 968378961 983282086 618475788 799337716 775796914 801073898 490471809 663174801 269973752 761860462 484997606 564120574 843730810 881734201 645984889 916820067 640624935 787065601 309409929 590307457 409680241 973331487 185753558 241592941 841809442 973141355 936390781 958527459 822726638 941170764 271096082 292853227 666844042 750082833 323602011 799579757 654281783 934058567 815088267 844368705 561336956 685862165 847524043 902230924 665486220 813086177 345769111 530212068 124835526 715101972 868084373 981230777 73376526 491711527 24633633 642387330 706711995 950077657 472111239 980480676 473589074 779631704 93309180 932750924 481753246 549290942 688827411 940521023 867351172 883487645 467888225 883409261 279103359 737852692 71934163 125333623 808778908 912680608 867350350 952805751 726185753 954690917 580741057 985629470 891601771 978408331 593451892 877745755 230302506 963280927 122550181 165094131 789249046 969157874 49322471 825416436 578730817 948044976 830269364 858073363 909599605 989206307 686075980 846080182 470441394 484169768 739665704 915195480 609646042 908486935 134698341 451850288 575468646 845994153 245774289 938075432 396258084 540258396 171663356 983177411 991341379 992398579 455833053 964805285 703412556 708719767 152500922 966946672 429198397 488274534 711854963 874168436 207945815 943944864 334463292 858472299 768437218 985891253 848043750 932007277 911627979 922478209 543197681 613788819 469687428 939030963 93809504 417946896 136155413 461767159 46914309 89866822 546445453 555225056 620473400 659439423 7432220 810896578 32879628 393455246 176044222 827797820 299887846 830947306 957606162 981127301 587716323 743902187 78401544 814264427 513289136 804649027 703063987 897120173 177671529 627932621 151731957 874343036 498462465 781745009 405557835 920963619 269777242 935974411 727529225 933525683 829603995 933982670 61469239 773264047 395287649 652746069 973145497 992968018 96002883 125906034 119598436 861004944 281908741 800332273 274733085 657578770 586606364 984938007 15914416 270792630 35540384 981403552 563878825 828890072 927692280 968068417 658989900 704820276 404110806 579664350 237296115 812851772 488854885 581915030 572212950 732147874 943084759 973787466 562216346 660091137 631069668 955336870 465895117 813012963 794305832 832412890 433142513 746116853 380533978 475966140 326907439 696879104 561669391 730082072 520572404 838518107 173264911 640363545 60876085 141242643 762670477 983369782 503919853 960769413 952290797 973624820 41641538 117236542 382188788 932544885 439687774 925872854 678416101 767102972 235369299 748488381 251658542 839377265 704664807 735669951 837983632 892892838 560340180 697474645 284462221 877158443 908766548 944148411 226842046 408081436 410796074 435877103 580699436 856295817 950362825 996680439 359666002 622019916 697218603 707340118 580859738 660795306 126505363 200553702 193661617 860552352 130767119 418519056 865613702 883080209 536323140 801115881 283647336 844382130 158275352 906303534 134613495 197163168 586285812 843573397 232316966 499067301 642369561 977831341 618204367 758882228 706639286 757272821 794232215 825354169 771076242 799982661 450237874 941468293 187981340 419648275 492570251 737664528 731083073 904309819 688333491 948213264 472765991 928145974 658337167 950653849 752621452 890753382 116212377 279045432 764576387 913583117 584673671 814094921 862077720 954943350 224024428 869825559 701405804 767647163 41657835 721229800 901785424 945878886 869282068 989818641 237234432 625754716 297434205 871154765 494781959 530233094 814449302 854382630 120937471 919039631 908467280 930938018 452530042 481063151 943345337 962390929 578716995 579058062 116164058 747508277 387364779 797984110 336274033 633827994 458003771 927625508 662393086 674426718 723078363 725365373 764112164 925083714 735259025 996475185 940968296 977612587 160093467 663618488 155459965 826631363 842586123 885488162 435188796 766401030 305096761 905019474 277837372 823447827 570028223 767150661 799541905 971972809 46791538 149915031 503883539 755321408 609603816 887321157 599639711 892386739 86536323 147958833 816614341 849934962 510921633 933691824 935498421 938647905 295920822 718966731 298798729 437828971 486214867 729680114 422875678 560974968 917365630 924893558 316174037 534513347 16373911 825377332 403317927 453218214 351133332 514782663 504604991 754587135 473724082 787744814 579925438 973231517 361923720 934474067 216047348 258874594 562793246 941509519 580577494 948815567 122652750 804086052 43377116 394234992 369331693 428843179 439433799 994729697 394084937 763229738 91285715 746300598 614800941 968251675 792667440 935567835 311501391 381909821 603689071 818077483 413205663 613839135 376698086 674759650 644941463 707150202 167399167 423403703 2886813 162937938 841809081 897684448 42182613 373021141 226860370 947931355 830670239 858809117 546949544 936123918 494592997 861582205 321069412 576958765 568234184 935862947 33603074 208164867 186550708 913028542 635533934 982825601 452656978 967974234 195372085 809030050 318999986 766053210 793045499 999347442 910561033 996975050 593292270 648200907 277075873 280232329 510738406 840361697 159437075 327560033 810195044 819173343 112622164 764877138 733353327 931981353 509812094 704417836 116976605 418468820 690595846 858382295 7303585 105876054 304859614 871434488 374407594 842007983 840855382 878766711 111972374 915972371 376589206 540727137 819898835 879600414 634629171 686621151 361790877 418033972 239652978 613034269 408576065 468888896 702896394 888779924 903593087 953757631 811128328 991065245 7537854 716451763 734910482 923844419 757222884 989620785 996749451 997944747 8384764 687998690 868572334 970546551 552060367 785450815 833723545 842133791 33051422 736568014 300349784 857732499 770752639 807917316 128646762 920479692 2279512 678422896 520350490 645280943 943922916 947532275 301133993 839575483 329547295 638415292 596971215 901744880 140168598 706834744 752261214 790748260 200403031 276642982 598567630 670821053 602990935 607549218 890231497 996386208 578599277 614509442 487905282 992786692 511961816 819923211 842605250 955550535 507811605 774310999 138796961 511386125 17211121 625025607 655550425 853976909 875527064 988142984 327558200 857881824 834902000 932989790 494561758 810787266 202896036 754095941 968074256 986969869 651855998 724012335 950622319 990923279 532304916 600409082 484936724 797771942 963367522 990104694 682309422 790265974 29242753 120740966 253917662 350635590 454095944 949357932 686380965 969952371 101929492 405667061 728348703 907780933 958851162 969742143 128365263 869698807 360159875 369644025 191762983 790708595 391662522 735300493 197538001 250233750 925444375 956357096 324192898 955518243 272006886 572706669 957448082 985423255 541876555 550278841 187277985 462827508 224642337 824099602 909076816 973683954 122908027 671561976 643236876 968387558 811134359 900416014 401188929 681392867 77593629 887164821 668795266 814588240 223379220 871145615 802153712 894828939 849415718 954774608 126806428 518226985 559290675 646735622 605027176 942718808 829657122 906050450 599160618 644435395 33600761 511550139 718971138 877856105 574554412 671071029 820940508 877517764 857729494 955066076 121383977 557483719 292508988 709590482 237544763 944219701 449141208 970984334 487636282 581640052 388364736 716343748 196987328 355342092 524899630 555248363 599521430 939944867 534731436 731432736 237836437 640329941 991034936 998278675 284625890 908972505 385024340 466916887 393373311 460809212 449009412 874264967 558148803 850075912 688723906 890362719 965788638 985406566 638258148 716002632 156753372 965440335 655103159 862472935 259025753 612245044 308857346 786510900 805122552 976374187 774088808 801212921 138646530 828697052 628154701 772621297 803820894 858082505 16231657 731314242 57673785 802849922 842962532 917606120 59614135 674529583 203021420 368503753 261443492 570926860 885591897 958250809 182706402 930914548 757683028 783664881 18951156 320668245 756259646 793168334 880642693 960341179 862511018 931733085 846008448 987969694 877294122 903633336 355903342 888383301 453047698 777734217 598633969 939666709 29032604 584234280 647438065 873993647 89188826 551894431 743459977 780853531 700653535 927635717 630496693 934745203 305173013 499450968 578757838 940087652 359494091 708192142 322123592 482688716 742987275 920892791 992503262 994904802 480186634 959789678 390144087 677646594 897472834 985226685 518383976 561284940 868960376 924491858 657582369 931480816 21703459 362195840 281949434 972913912 54042128 261690633 348040501 519563130 855437064 889506897 739370366 816984552 203062383 331148744 428106738 663816695 415906379 852173705 27714466 284954693 864854038 895339662 127038883 159455812 641511969 749523129 160181898 221968558 515353471 674999000 273593561 514665327 743783350 948673660 589512042 787061192 401714166 620398405 15666275 524726527 225563889 930206437 97508231 969733746 2864107 317552043 122748486 630237343 656403448 830758474 325537955 489477139 777963849 800473462 158203649 408715896 422484611 811300673 777630312 825683146 105903060 184434228 608477215 948813951 620056310 835935363 952240378 976188964 926876603 973182604 379654969 910861763 586597325 732461360 215617298 991416356 755598563 986399322 583260030 998954452 517338353 881948115 426285243 874121609 299118190 394396856 513270610 672679863 107317922 465525360 561190145 777833332 801862676 913516825 60820486 102851552 34210722 474689072 97242873 805296104 150860970 760843439 58396314 775398279 902208666 931727996 446999744 514487169 977181623 998455424 928291701 984143809 260367439 327136003 243563510 690751505 830462161 858947919 192289905 511982288 605552062 655784047 592696833 751717904 248628405 300812888 894765931 973014792 683346126 712517995 962955019 996818018 839406486 896960075 11370959 820276982 619167654 847742241 852821527 955774941 963728488 969514168 197354256 541221383 910967234 936243645 463906548 566082655 172972299 656263738 70453666 835991446 10093930 132430241 338136603 341239636 354677910 441525101 758415043 884380373 353238438 802225639 248265500 542317634 168133420 705124405 308083205 821837406 338103482 644757215 692081088 788812726 836067999 897562336 379195698 656355057 822498292 832611716 426729032 680119226 290176976 807769950 145595382 276481688 605131453 882806613 713674829 809618768 863229679 961471647 485167907 630867647 435377118 533009297 418423484 713666464 195128380 992633236 487240549 628119035 451801525 581784737 444291641 681976680 258055357 585696961 242164063 767443053 570290459 680136475 857078431 934984939 843273735 906800451 703070165 874644174 731222067 744999837 985157423 993582355 225363171 875675455 592037916 634444181 856109040 917567599 63565480 856782388 147281594 836953101 534981252 659848556 218951325 598492647 184912713 830825095 153432015 157032189 366382803 683987789 772471248 887902971 963248641 996591236 408164260 518340337 170545814 882195404 470721394 898578245 706432191 811482971 65454301 698800573 631838826 757140588 825179056 927870221 246159518 742645061 787991758 865597867 567435727 890979662 169971150 554312000 456341399 901065669 324486567 791982283 596538344 994348545 473135463 889089455 831629263 888781057 778814268 811167624 719914356 752854425 521875135 680602721 895041095 907835399 534074589 996877345 378344007 435614206 360062819 850646653 832316528 866165322 441562291 691716132 517414385 839926800 252975157 969897969 467036585 880441855 182581010 452594642 879190288 913636343 255272847 476061497 272249556 993948767 471984690 556617742 343538509 650001463 594477965 867190344 735288762 918519911 651940229 753445772 665476890 940993148 500606262 575033464 621217365 664051105 364186284 662296156 670119098 819238055 645074230 815081093 234713510 569957669 907621056 938409021 965236454 966349337 295918623 463376869 421387332 465374623 759063508 834401332 752549620 980094592 528791443 984463610 264066046 670183186 277353718 970772346 543279646 609472420 982755103 986134609 182559569 935744742 139380723 351712523 414015463 882147985 738640032 963343677 697128829 745383867 556474614 710509499 895972854 920847630 720353648 748249352 761518661 840549559 790868121 950918728 378175547 563364517 322702382 948830207 896566595 988607244 157907267 547094221 960387823 994084059 508745719 557365431 901540885 908059691 566084039 830994800 73099486 950515150 118625841 912581613 242591071 453978841 877328437 895821503 158127928 550619444 894418364 994372024 580582089 811921078 165335670 681377549 174912195 941724236 246612447 963592786 26983915 425818979 284129631 567015992 125083254 316575795 815415386 819410825 214866415 215795829 636932062 711893801 822635822 828454989 701914339 836050908 426498988 536074958 767178771 869855648 983270378 987135471 886543248 986190502 191296423 945500883 130731916 502402436 964550857 984795388 578131576 676805541 936674448 997211914 793035150 875254361 953068302 977285917 164931334 703581376 274489743 345047031 873072942 983622963 673887099 829611081 948223127 987123860 358635185 361153056 823807750 931590476 480897189 623094032 473198432 842849899 297058980 452814309 74180016 532609200 861287753 977357949 9889531 189845800 294667943 569383663 36684783 110614438 521363691 571150802 320784347 356007361 217994793 541085428 791825394 898054567 512471450 956697772 394524561 859183904 913832762 954514991 377887751 650055161 435289891 618966115 84685666 442709919 984666036 992958219 463753543 719822191 440058948 536945180 404890795 464227241 270306674 431131991 780457112 921958068 491665160 849505848 345954677 778707422 466177542 619382876 273165237 740777987 680744231 925118381 117413415 699126328 582009146 969396830 861353452 977246482 554986247 811263034 542817606 653263670 988602868 995403861 554634253 705530334 548517026 805220946 612706605 889461681 455717871 504187992 653941897 789899171 721133732 749893445 570749256 802167776 513546282 734551787 906242954 983713366 369210656 604091938 183899814 863272597 820617338 963830492 283146250 983032505 35323530 229195127 609510743 634399595 783946445 955911316 731737807 985595685 707946623 917851860 859483087 977412514 422516252 909949114 78734236 937183499 916105571 928049332 485941272 776240321 724923438 925906092 18914790 141882488 741262656 962629228 544766079 723390054 957623634 988710280 749307378 761062873 642571724 870852603 19567023 735840633 400776239 872528689 783685121 883993230 352238447 632842823 978263405 999725874 316608798 896005139 907946034 941720853 839587766 987595764 179363868 912910045 82544508 324433376 970699349 999179304 309049596 662989352 896514257 906593248 375849714 564192148 212726588 358265695 562146993 714080431 429045108 647958149 208111242 583688287 698547050 958976926 899665133 934244569 80803267 217795851 630624168 697855399 663531015 704253088 783652319 899560835 914762115 953855548 663126422 798467324 884532968 978109501 432129942 690455723 507208987 674058207 12174299 994703825 669074424 798805190 531686319 676565951 963213975 964630284 938024017 954704897 625310413 994133614 919392390 937766459 192116866 626950173 560915156 737348389 301709027 706288772 820955659 998869353 236462430 900927439 245478558 476956302 512460365 583227329 580305928 798181807 833843048 862946011 3225783 534954056 134007435 138080045 750732033 902927799 466121486 865535665 93117380 940277509 515915250 892859567 298992379 525302334 911425850 959975137 53044110 426058817 124503241 548549314 864320505 901814582 921062811 953295011 609966996 869043166 457404381 685689610 876611180 908719583 599912332 973626635 784221573 857671884 676861061 756536043 55568980 642467659 53797921 184637846 860853104 909928097 777526657 787954886 322863359 885389272 231273486 796330054 535683729 695626520 169359331 490478113 557139309 954616246 718794131 777636500 735831198 901986994 166464829 699209965 729530906 865861701 580800342 862608210 211157967 342551385 60734216 422520111 867743610 905916802 309233816 730652563 394465053 534378217 800297510 923032217 590195257 677495193 215334346 582271767 783942240 809675097 254077818 257171691 61516252 981776799 295038196 458330685 584085050 810635838 35200796 286306442 133597814 168163083 865550188 976969251 581362105 782125949 696674403 984684940 103609717 371849943 489556000 707053538 676721356 767638641 646260374 746131333 676022489 781530209 138090140 729127087 72212249 688191461 298676781 942747019 183704540 465608148 520918228 926142835 847571231 922669596 55513949 640825700 990943400 996096589 151007121 793075343 434558159 687478143 568327667 865370875 46117628 508802707 685399513 848322418 172713557 612620604 752708206 926867145 753117681 817692682 596835567 888445462 255545555 962002685 54171042 515894900 346293530 623025774 29862454 295991902 796211329 982111000 538735336 557472423 358931945 882504470 589540475 615762450 576252507 809109430 13501269 690932687 130714243 520558639 560549384 944652899 144865649 365004792 123324771 846402381 856943614 941823743 230839383 446959264 145560682 271809961 141668584 241527564 829195790 851788482 320763759 819215026 686547672 716818407 522088242 936735375 223371210 270995412 598002068 681276419 436653872 916090602 9148042 458823599 514529912 709752124 996452068 998292192 986083712 995152558 867610876 885449537 769013464 850309306 863677868 981961387 438078896 787476855 246776287 568485752 329375010 972088157 945627586 950498459 914614543 920345714 373997866 476067565 287505105 571940594 757404406 979672736 566378337 668937779 861793470 988197549 705825961 961505494 850227399 912910070 460440431 637720599 53989447 719012197 587343789 752037955 86664216 493602190 397835822 667311441 133804263 568969925 962495291 965828374 575619446 979903549 846194493 959000488 978989779 980588078 375850426 730517962 609579860 729816535 267820012 340031314 600961793 849301081 212620957 495715704 681660799 782175389 811332191 895473450 581386984 608265840 216055307 654809336 117248697 189905617 248134798 739268287 241400884 737631631 43785568 363328868 547870349 633048357 431496497 844922988 812527200 867494651 495984263 528748738 945242315 990086271 822499043 921122391 783169569 895292225 691797965 962054972 702546358 892188505 818929683 819369996 781719087 994550035 3513844 820238988 270687285 808844189 356020142 383605936 152230515 673888191 968550861 977697822 776998947 853909022 211445906 822760252 94431894 99817556 773871408 952454709 516163324 669638086 183335942 360769440 100704213 191281588 726994181 913813540 592399678 694294341 806147663 825229622 661442451 952237662 655876888 798193898 338033234 370184473 126046985 594822436 514819418 879212074 775980673 965074931 920208080 963129142 804890315 883772789 52163559 877404733 337661277 857695277 551365281 736528899 630929713 959319300 124498724 789617520 169402319 648691260 209581169 926112717 895419572 895690204 703224910 715138053 148190053 649691744 753434601 836653178 153789655 918422313 639740929 934373387 288241231 791691682 467538232 671429313 809526326 856531382 747251677 990881366 394708242 900411747 465357559 886125573 654789995 969495745 85326955 739611366 383979284 954382021 127975062 658998905 514711343 906572672 707045724 993723606 501963430 838297964 605646495 635947752 781835892 973716239 488187838 921069517 828214705 879813997 921154913 993689473 477547738 719244136 678644109 905578732 728623881 919680291 265710370 570301168 355561256 636625364 208428823 254917078 924326129 990256012 472304661 581995370 985548987 993064989 133695559 730655931 220354019 981036430 847512382 878517964 645804363 889017044 115027721 958855033 893687870 911340883 774376595 851320289 239451642 809782380 677311217 878788885 293848042 677403273 811566848 926386675 3883120 269162642 753156545 766532346 775322491 903736743 194019762 413722770 948493943 981207643 475160535 508435793 649932590 945021617 92449848 909442084 56453626 783306184 543129430 736796939 31181172 918855943 632087123 864495265 329467470 829570726 696825255 832169367 320526222 766353077 993359823 993810933 736534797 825169878 391779708 662474319 686943964 997601796 659920225 938254721 640798930 974473529 536538602 689157201 712758644 799924260 241243997 387482672 842337900 857379464 806573101 989796170 260571969 564887056 80940420 168401469 480658839 997930716 937450917 952186205 755328775 763932442 608814216 659512366 528408489 942295329 674723012 876796727 735132017 762900986 661545493 902871073 812501521 948338061 420955710 831171631 391686162 646979672 363790564 498153228 744809452 804453399 571359485 608367772 54198894 468392951 433834426 846604317 633768288 735361438 864339538 930080893 991815358 993658733 824878534 965170639 966176001 989192056 541518005 824067827 705379657 724919834 270060894 444782541 192104811 950472413 441453409 569465445 470804399 748607277 361610006 516002343 645949794 737108817 419692181 503147223 508233314 685543805 423506041 673805992 358320284 650219928 579554297 808325614 703506797 837179050 332347671 944617026 443165702 763499635 832595153 967060538 598666045 993691165 931510105 977179259 920133415 999922287 576702568 594958144 265587550 464099389 349739336 376234959 942832143 958333937 865218811 950619633 670389185 810448820 886420986 970457542 305340795 392055052 930319338 977502198 558693591 837561150 657612329 991580777 76539153 353450364 841270767 894561679 40097039 701427261 463968178 471054078 976147115 987322187 511250178 676445247 232721960 964932762 356048765 661048151 679683361 714501325 648305356 754378443 952710881 957105233 702397088 939467127 448494048 935465068 581345923 884559147 258664644 279021200 333162998 612562033 967385509 990863896 211249177 239002403 705099275 761000799 860167298 923016412 820562404 892102123 866327840 927606825 385364065 655838940 619072373 713920408 482861795 507649862 766961570 882977909 90972705 899256198 727922703 824675174 205273070 444449941 509678750 639367733 538519454 909108296 255098226 811485572 699191916 918684280 246642855 500823260 544811197 656835733 966489504 994691309 293410095 667531304 863562258 928558531 929769807 945493167 151712775 167898970 851563828 958275795 903944620 937499283 922560382 939597966 833219265 899352464 389697915 812709490 825368807 843779477 481029392 732853686 46524582 501628852 79390277 190418688 660622697 769231284 965017095 989647842 879387256 964473620 537743843 649435021 648493660 823223810 392403490 677272182 729248893 802262256 950630740 952107113 440083614 615497994 384145666 421655732 167373617 705289815 802004364 878330759 807594911 978483925 566878181 794712466 459824942 567588401 3026178 506975162 140990231 353699371 544928230 922556004 316716873 333565924 58390397 788885116 835978617 844219527 806839806 867956770 953444175 972029795 718500854 774689292 493894129 662338742 889529859 967204741 450272174 805774573 409148426 704934533 199394258 951181062 240242801 878092022 282826869 590136051 248627525 575176748 826334909 839252239 653551628 699377155 682277254 973849967 53732269 578433683 932312480 940190798 327059682 815176053 408278899 908061737 235911146 991794919 820962010 911360865 326756891 405207194 316115434 332185289 828557113 911584835 800715729 952158902 650635545 927566079 815940889 914349145 240363883 265237274 88630071 200130200 828883071 863883303 361422696 867539329 326979929 773175880 113338439 822112606 942150304 967942214 878073450 900371666 11860130 732182604 695150725 721315215 863579706 886467413 341950542 416090365 867967257 899259906 555354319 651859576 273510241 555058320 372260001 449910173 856971091 936378645 347123033 725782278 903651867 904942029 858824327 932621480 52885734 821772945 755294496 971067836 807570215 959410496 805258075 922176136 282056167 799778836 654585134 972714486 24343044 43504672 845349059 914272218 493864203 705115083 418391973 963969654 958682964 995138909 397517288 596456707 263640391 778929350 964377750 974590598 180015327 281604504 734018401 890170689 342957145 552284954 641413905 763711236 296414079 530774404 710103621 906598807 617976038 778175003 13271716 400608872 734268109 896631769 790082121 884853286 562653742 612097760 467723340 572503644 77385788 662029768 636882474 714842958 864027576 982311911 861344662 931546180 89337536 307296996 455119004 525138948 979253931 998080411 74127113 495966812 676166309 810780880 807686910 923666084 104595382 757665634 420356165 480930956 813290587 875407651 509670795 778767941 419889877 493869179 255494484 475128594 151929441 902520201 969072288 979224945 211433767 885623269 78108602 384671042 761420294 871061870 872179237 937388121 33202758 411358003 560680636 800516284 954672430 998899977 775640860 925031523 933296984 984688413 152992234 708261291 467696160 584413682 388555137 823233203 294718093 372938910 864791882 925782471 723384039 763610689 145152476 644933167 383266607 688560584 292932407 749803594 918183593 996397800 376695723 972093880 807286424 930834991 966614618 993815093 159182933 614671025 897147108 906331110 665077442 971966972 388112292 531769914 308763756 522434498 750556612 841615605 493697600 944401135 651985152 991704632 779884203 917587801 414986154 535967344 3741283 677434647 937724713 944705313 313958504 831834924 859691108 873193180 524937115 689532044 632345640 978928237 493952639 748530108 910271205 972596745 509791243 782821156 91368308 772946611 938375070 954805417 862383740 899633548 905282577 972977476 522493612 967763738 386917538 810200915 375035185 726837118 48379588 294119868 923175097 974179261 309405843 672245777 698115476 957266498 854748331 862520894 277653281 874862652 605384206 608424077 590220369 764246646 554147017 815976688 293155675 758852120 429426837 559036513 564538347 810270919 205641877 370068575 117042811 356955911 332961889 693535852 485129831 836898949 585493066 924260961 464083490 804790844 35434717 541253999 793276452 996175874 799226472 907626304 425249203 445993739 558608148 580999299 207504799 597101782 174753153 433395007 637590103 660389227 761680717 997271245 102618208 411438633 551801379 968555376 958856366 966369662 724745256 816594935 81419326 617637089 630764932 929164956 328543842 690689020 3591925 947475032 118832965 479962390 613404806 986939960 822346081 982477904 46368816 256601299 148546698 679966516 738643001 936462945 762546579 843753602 499439055 737409668 324231844 901313200 726329357 982054157 874497489 954866008 543187681 992427514 713559590 896438421 960258081 995292951 703178556 812320535 916287675 936229444 299531415 601004501 874909706 942983571 239947450 355076858 627580230 686212270 603188130 897687262 436395304 705397389 98516489 406443564 404811452 795552300 750488878 831914387 734299600 798896480 271679251 431326979 231836162 951304332 371252053 520079566 701461749 869332495 703163248 821816304 342530078 866609105 79825274 654829526 657225503 744536705 387382981 433723339 475467722 768705253 347284362 572820192 425415702 759174980 235061799 465043113 316891435 819023942 628900484 855131598 98674214 976034893 27168440 993266374 829945942 951364673 438735249 730926909 92062471 302574553 103117519 286796325 819430910 969089334 317263245 598023073 741134840 894032079 741062621 783120227 45571870 68476881 104699881 124134328 951553586 972601017 969944324 994809149 891148167 940166288 843024904 968166347 256909446 655042791 876968029 936640051 787435659 918821319 902940470 993467552 376338184 796316112 962318575 995080921 535589004 804109315 436314299 759119608 446060837 731309287 865885620 919664780 306560358 977173467 64436020 793786676 564252336 900203730 71231699 792153279 39471290 656293222 57985038 701630327 41911755 44961156 45355249 238805575 789422905 943256948 448196887 560929790 732132978 805247027 729041709 951297332 749104830 922549145 313273413 959455492 210387292 870866674 970317696 997512816 351397846 746111899 241216663 867696795 737802947 927017813 654561091 964086550 423944520 427590810 186815314 789314871 966940376 986473334 925943578 983964231 915482285 976010707 958691326 965347853 481321974 833662917 712600395 827463328 518316608 804123435 352201041 792900177 897157490 940112696 811744326 832862370 577065412 583357883 149372637 290553065 488699205 635387462 741455691 769842377 676243912 913695430 164140138 258924260 901026530 915960296 474920857 811113455 624530187 744646723 862655374 998999493 481754123 996971352 544316712 593256856 647112888 714326879 968496998 992239116 976542809 978374810 666779599 822632278 972590047 997373517 518235698 772302199 631323173 980961916 521855175 835886595 523178619 978169321 53064812 228081961 82534256 803821331 882298351 989157527 609973606 975261968 752087468 831586721 257435799 906162484 734228897 828623547 920968786 927311571 260664362 545665869 70446960 570181282 751648931 927564499 720838904 845288213 704337657 992127261 995261324 997912685 992408491 992783452 585801205 913704591 405171127 484385673 118971390 633405067 153817451 321343990 729390270 965742570 563343182 730869106 836536453 971438011 165782893 458930260 120846448 582485838 722721767 957332477 127823579 642985565 713545493 966327596 742848809 764830865 573799538 604756523 347745906 497719252 855780789 884516621 894327530 898282992 609045389 874122680 25404582 76822481 418052706 712425349 941668984 944493184 276602810 896996430 840318217 953401361 9938210 342176379 919704163 968585304 109270122 925537210 793346836 966332059 324952983 801840539 359117162 374833024 649981579 684600554 661017312 757042422 880264360 947066751 96926838 690857823 854887516 916305361 622188913 745814027 859369155 965178925 148679138 495922513 193544745 806036935 514353049 699609980 38015797 991230110 251315334 567643888 889209738 926312511 469154650 638820566 357975745 610595059 154916742 301565323 560232587 778745124 858547889 965144565 990045852 995219776 37858439 990738916 735932509 880821374 713882627 968267110 586288235 650938875 394314301 848836715 361619292 487343062 541752475 775764523 937760393 953745423 413908140 976834175 956235845 997488980 528950771 831616432 578816016 765259738 899181858 934178746 179795255 382141847 462936014 917283404 490858096 525365646 103678219 399916852 996871284 998030355 873902684 894719123 703825921 747298265 846452385 888356874 476853351 841060282 761376284 939141969 44892612 371121844 289593585 712165937 594674260 902681048 544814182 562079723 640528706 966843032 650091875 840939204 974133082 985171868 622692039 727645417 631234395 669499438 253663568 707422905 199028861 960982503 577057398 778282031 207207481 348387040 974945603 976732280 210308392 343137768 766464949 956230869 939136722 979554200 882072335 898041247 293509800 913682580 293053730 705094194 312280837 935331882 150844060 336322844 712206752 979534683 491757341 787122700 259702210 416464275 933559466 953394309 940857701 985939055 686227853 999360244 69916484 185631769 922698328 957280586 827090350 964405789 42822465 44285713 911454711 924735259 693946294 865303891 247132213 331210104 983131541 997914378 163805588 324244598 389473096 889925690 172427157 412360746 176505140 445205537 828358314 871431456 762246364 854596007 864673986 911584152 816645016 961263580 810840141 909527729 728321128 861688642 429779579 936118175 995469130 999354995 989759925 994988462 826866044 907087673 513870839 533224444 48901419 505874143 451715499 558142385 216002505 662067745 839622808 972755204 279228605 373816899 372482481 562534517 589510709 839476852 442822197 451361307 516284878 812040411 375494191 848684320 471975538 717706515 800201120 801045547 903804773 907858159 371841588 418436323 49671547 840005841 563252544 982518532 833188091 979274608 832178442 845600830 273293869 728867637 960662190 974393900 20005931 384119872 856030442 971946865 359839329 556839055 277855815 482832816 443440191 763550820 182287986 378086417 49019937 852363612 303681608 758058732 949659478 966881271 883746210 907365886 417700894 733458362 138674065 871856772 984742838 995905421 607946766 820293272 968314631 972416840 43900687 231301782 584749653 655330215 237536040 568812493 949201216 992911461 410140330 973015947 415781048 863505713 743465249 780931629 508910874 601416710 205637829 774866420 37362872 991986062 339941559 919059881 256423836 415087479 69978594 664659167 157622502 191486197 836950485 977253430 481091470 568602874 575659941 817486184 998120201 998399369 111086139 705281864 864119197 872699476 115277514 370261726 637394847 817312853 322710599 611724493 487914969 858731937 718860196 909897945 861159940 895610985 450542814 856703668 936048941 995578523 744773770 829820575 547240474 564746044 550706779 617910333 197274597 553340899 5590614 712543314 978749193 999576095 974187735 975617949 443171862 711226798 812945970 875954754 340813041 526644693 51153435 598223443 925303311 955218653 424223703 830996021 608477525 870567630 91851721 511495203 516559638 933172471 140289875 410286524 859389504 892983177 234988493 312801450 216003549 320537641 511698322 929810975 857809563 869799098 777867409 940860002 305404159 967616004 725048915 759001973 368246596 842817122 328457900 737465338 599929817 911198777 705395140 841817786 261493430 404577989 270709991 807417667 971636487 986974585 799502702 928452874 927416391 978772478 218314557 999937801 560660837 713207900 55729993 788625181 821615167 980079575 482951001 647481524 634577792 735746826 660174317 873787957 63954485 166369788 26889239 217508650 235891614 853727695 769859222 849360879 486142196 771561811 509980324 615143877 335659253 586488357 117360692 555824229 488696362 725410033 872234508 918517528 219349244 792070086 519687436 831025596 214398461 379599425 201242478 338995054 888024437 924279042 863030604 875072760 104597837 739366341 495302097 727652577 492562032 559949268 551212629 913052967 567248935 573786953 408852326 981761330 720365253 738498011 559056409 674368503 661455267 793275355 387462628 702996398 151010605 837134118 82501271 821137524 479765363 857365069 729417943 918631381 185788210 642947532 956298246 989403879 740783863 743693364 138310405 388941675 293926734 837843793 616698075 914466785 616316692 659242253 531850962 880379379 947321799 955083470 519682962 919965375 301030534 947633350 420367069 492926499 865132618 982981863 313269242 847408562 381640632 548916497 115039978 731764883 18253478 979229030 599050661 860307380 275440296 422571660 480885196 845010643 967572653 982660279 728747898 778902016 831558259 899080518 391913305 848387950 166053385 916224567 379970141 734772991 525834595 567580692 415067437 985828484 263133031 482701891 613627798 950678994 257709714 692846753 747861688 766067232 24321333 699424536 706011028 803749588 301286965 575229703 210046011 515159739 560852264 797824482 484273555 706881872 437246390 800411982 30156840 373368304 84787980 943826763 552507008 666939516 188811297 603299685 802005387 959865966 832907743 843167376 321577325 982285011 693964966 913626623 879391867 919309476 120409787 170077887 238287444 528780866 383056736 454559379 284242647 963889065 255901888 312058987 93825377 931459971 496606703 789236862 921218975 969363742 92618653 400029157 640947270 970816537 764703471 989290755 445882389 739834691 258794294 437090390 987552251 993891281 672537443 852406401 308417003 490659286 801557170 875646823 830081519 846331259 699244770 991307503 696619564 762792770 635598039 639496362 73960271 126528017 729767141 778456337 10997119 933562411 223130576 414610535 86179853 515787292 456856390 902150187 312376956 718597462 51204584 128620273 40917069 881987824 726579026 930341142 145276798 354529947 222241607 230227724 353190803 670384060 501524091 692771871 940800759 947440935 850003344 909406553 879833026 966617414 259478075 575101009 583131594 744443645 413230574 678983290 173278010 570616893 152751719 805871427 191666858 873471091 774169610 839607934 255837096 865626577 966647701 980250843 202228647 387649603 806274687 959850584 67314936 914689891 802108839 830523158 6063932 844302488 611470755 623916537 328800172 438695790 516689350 938703065 288193393 920826360 32620568 223822070 78469092 980675790 72433607 409187723 657527658 810949766 364008726 779559102 578170162 737209249 723770227 747287704 341728520 380113238 312591427 636649293 883040412 996353317 873433642 875333519 313425587 833843288 453948297 944147166 869048400 903576719 983281631 983605415 911550430 972424693 917560202 985113004 366810787 579456096 934831771 952269654 703553799 888651917 930217190 977266225 150908502 580445121 280524352 897679616 319715385 937459079 28998305 119815692 446087049 757161423 371505468 650002902 792588280 979872576 63352101 173182670 567064677 902499329 778365484 783044152 9998734 725800709 236354634 241609416 132116038 469236179 409450415 540044117 54844162 667957040 746394991 996050200 520617462 896666186 919968909 995772304 806208676 840222087 641892106 919042242 378023967 775230232 787876379 961599231 846729279 864036481 457271854 467307232 250817394 374534409 190258556 730995847 444271421 931651969 510204842 922135932 245496103 961099493 118300966 518847334 730428230 773143134 302449937 313537949 898738658 937643528 621741757 777111062 691307803 879014096 699150503 716852706 964187318 982104882 451556757 809956828 663016147 947678897 303989274 419881136 572421806 943373424 627066512 911743102 440945304 731815557 989459262 999256183 13023782 838808678 525770945 650585314 24471231 326927496 684812044 971667870 987642252 997250451 668759008 885191656 354753010 444938792 616394596 686023984 332307346 946530569 470714820 949769357 890390914 951668116 739416745 888884452 376868189 630952467 195319849 743928846 405358311 543148939 918462976 956577779 511053859 894093622 101574518 792228988 442144652 606328441 325805805 541665784 578532702 951469109 558962033 853090574 96128943 939294524 416673141 582199289 132066703 758070343 415628542 417680612 677610885 980104126 867445607 952759271 405687450 872377271 341266135 489354349 931786025 951461437 408936367 977183951 222636170 379920808 798588690 918906245 469717643 799731873 702399659 869163582 624978569 737578394 400682409 802255373 537479946 821190063 769548943 972982488 166018746 899060901 849554078 888691865 990868614 991746345 428133536 510690200 400334414 857355452 871081729 941071571 822771580 916057761 503929936 926330513 348643082 651945802 608328593 771401462 934169346 968707994 111430626 866243349 223231758 688174203 840554580 930176160 296825106 853643024 335748267 379282767 252041369 437497784 927836771 958815721 42757240 852708011 647447260 828618515 997851094 998283760 791750972 986253950 270145335 545313577 967979674 988118269 457290966 934665064 834382175 879391874 890666123 960937244 29203154 725432596 912284476 917275101 863102695 889314392 394298424 817690876 766599706 774148325 385784673 719026739 528371769 587095119 255063104 677209472 751449804 772182200 59211020 329286682 416720784 624180326 282560454 383524528 506153224 953771374 954613153 971282746 867615203 872159303 356855044 373126496 732895649 819763647 883419436 943562153 584412055 980031556 793223113 825797582 815596698 967167845 914544145 982748511 951336163 954200691 735707751 938805645 573104203 895361200 368415188 791320816 170527161 569511863 853866927 904199122 74779034 342690188 586485785 940886623 821476446 911367201 551104949 570968114 598023623 934435117 824405741 898733031 601758283 626170762 815691893 959300154 259384047 514661902 561436811 585987296 30192851 702249749 425116795 825059659 640847717 816155782 164734600 598734309 162678633 813714799 106408061 987558406 88722017 334855168 654437562 689067840 962687979 970751420 878718647 961745756 26758404 685670319 740441717 998211889 931262994 988993880 547430899 699891419 948468406 964385728 919077828 986725787 633628550 787637467 999395697 999698236 560611973 638130296 163254455 571466470 840930622 978360076 148806509 610568520 91748754 634208920 718868489 868630766 108608438 755626265 990681330 997796158 532687411 675267920 911148227 911195197 302638401 447600682 497430083 778913277 276374773 974409969 222291816 532499324 358059269 385210210 997623762 997717867 639743943 727446975 986547097 989604463 41758416 581818086 346356885 929310878 256337368 883207279 97406200 770311473 206949290 554605708 754250880 904259605 274817613 389988257 743924986 971654425 377957130 530249128 379017177 806544067 950875615 979958721 843425776 901779680 272406820 875185396 364229395 662628484 192457320 397055359 956045935 996912115 644477773 791525520 690710460 705316723 817027258 999708013 767062575 897170183 259276819 921307353 255552085 557872069 647084887 713996543 684091844 933805505 788604517 852254229 50623013 192434783 818614264 943584836 176708987 868540686 788985071 810102016 634961661 774476627 973410744 997325550 757181575 933245776 766436903 770252215 930987793 997710318 211855530 857013710 467726659 891471132 727547860 947974975 831110040 890029376 121617271 922906452 359974171 599677945 518450667 971747991 778183591 935852601 250710125 677257911 459831891 598876091 216493666 470499941 317553720 556474407 523354625 854659485 396156850 732606078 908111492 913911820 121477345 227637925 15863650 331325387 938608221 972196911 854420868 931590395 865570562 951996326 874762941 878381508 65397321 921879480 609806781 820920688 921330283 974614979 406196656 893268399 28124083 185307441 716543881 990480807 338000586 455005802 210585237 485310188 505092205 639745494 390694342 722178923 549183568 615590532 349519093 684448800 438991573 871337687 627148178 649937700 862583411 904495189 204734331 487265599 544157253 776655501 524452093 732862090 778353488 788128855 751415393 879029364 334461112 560945615 54624283 580143879 530449072 853770438 384096421 536051997 352265637 361435894 948320002 953351890 372747849 995124420 365061576 911070250 170687823 563386069 207172177 595380068 196248950 265476507 829336888 853414028 170349601 802802494 677463067 832532989 673392413 688605715 299299817 959941843 15320679 754975839 461600003 588723060 292400061 919456366 335545164 424877671 425783222 628440515 664087577 753411102 13584388 335831852 129615432 632766086 348214162 835878103 9320297 414722259 802010196 968383358 952505135 960338166 15523952 329982421 458695165 544730751 872476457 957576982 264700370 552345677 111446918 934992996 197931596 337713673 709155530 733550648 913882730 964558931 966274168 984698853 549341900 977239513 178870300 247330220 948949124 950866548 590774865 947185637 749023608 795989237 48438716 596954831 999137111 999465173 649731390 958435772 759543286 800038801 872121281 885956344 331951989 369989141 251794819 677810969 702901439 787311642 623929891 664355765 36440900 307940345 657597626 838387554 754854326 839354923 158958669 592494913 958870660 982299400 871827802 995772457 904754662 977883143 21339091 518937727 456295364 517860741 403421270 811198018 915975568 933808920 487882973 500893683 414390764 461268074 276550190 335700742 184728713 465948354 946374881 956908690 366858020 719121567 809680417 840547285 690728200 954559602 559467938 725659593 702210639 807598999 957240638 961977424 662960128 956397344 504306039 569546596 449249912 600313423 589051166 945476742 558035354 668371197 954196823 987318788 692406403 726586223 212792914 671232691 536765402 855844198 532492133 993046747 130116907 195012485 506892551 721430460 852087524 964397861 546359399 998520618 521556952 804054150 236272104 432487581 76533910 696123472 15275417 288693221 971774141 985092738 17519281 369723360 972004742 998889623 161556920 348847738 441043161 708897884 972787852 981173692 654303663 949617348 29143930 351837182 379798508 796562008 249656116 839088876 417642295 916973900 571724371 760898395 505527913 621441488 185066687 455308709 653581243 851185653 672373846 893034108 278852702 379856069 29350813 526042433 55499192 64304712 715541461 968402832 88246985 215793267 165209333 558045165 88456928 832544236 531194925 933430383 191908787 940352618 165344302 185479289 490107946 512790996 665398856 760803124 303406499 379734095 185191075 862175301 884365006 915792383 913090848 918455823 876289234 930295453 882221220 983630617 406326370 683899688 204885688 569442449 23203934 753840915 259772038 619965711 457710559 855937117 697383522 873368909 775329311 849237758 219147597 785667538 156030301 282525997 613078896 899129283 700899215 955035027 651764366 825007744 699165333 749436492 96995786 303653225 835304534 956114066 597311905 861628530 384062539 850540498 973734933 997425225 192386767 588884428 867749469 990013324 503193297 851658343 37533740 189604666 244878126 508390850 469835586 954777264 475618273 880542315 562538544 764169023 814272529 861013253 636649090 755174950 942719680 975765397 636356349 792843054 738821052 969451412 992962903 996166208 883642592 918047135 213792317 720792389 832270994 910020125 413196982 837207195 507467578 992426947 366772263 705839294 985499478 996314118 838265390 956395608 31345725 130051293 2747813 442070854 265272028 974803934 30578695 451535359 931318289 933280681 296029158 936761152 362439868 852082857 927715869 933219424 922104175 934885158 861373326 975334245 52850564 607988069 49885772 566110880 784534630 807478810 868979081 983459756 452406085 539772932 107693605 141348173 611133118 722210017 556107542 733291264 737119438 777452819 178834809 622769218 983066246 993548799 80690777 226311953 846804382 990133537 572175373 809216764 742559052 758943354 311258492 650526135 911018858 961491584 130752573 658807471 231567203 509404700 891149796 955292826 675713210 816214912 365976620 774406279 826775324 867797718 95012553 659490022 50084736 707423156 170984508 259788810 477725068 540697786 129990054 638610325 909506151 918732242 201854546 992842663 84229191 138394597 731664765 907689130 694874497 947183812 138857597 321611013 506923569 705584130 151013532 751974735 94834532 543070219 18408342 121323704 462066007 668681441 721474842 760596539 654050097 990116808 405690127 740666230 788339771 982538992 329980428 950511763 493092789 536398111 674416871 896594512 636976396 783159912 642877646 926580498 553734392 857590400 894614170 960465326 321121159 828563221 136373148 178999466 12512465 832123865 295300514 962126682 967722752 978996893 264389059 300458048 23922944 933364502 663793466 872526866 424671586 491614712 325992940 577882039 401000538 613577079 462271903 679146092 250070965 851458609 656185407 796570024 268422687 635064352 812508277 861979660 769209178 924291245 222652472 695655591 369078633 586735598 957116312 973645757 550215805 700036319 24763891 815286396 271259949 290562511 90760467 294011979 669702079 856397089 629040242 859874137 464661650 714952933 843075994 905594167 389273028 649599803 895467360 935006030 357972949 907278852 575418748 871459920 161694130 651205233 560168384 691006852 289455362 672716938 907620289 968651916 610507322 798831083 551482653 637516885 714575285 991857135 155056259 969842313 19730831 606876976 116682772 760060673 384067910 688094434 789715208 823027858 821798017 847629838 741239521 747993954 632015104 968046841 232628050 752395598 874981584 964021006 227639073 583772468 888701729 904110503 225944429 363626736 317543931 722391619 649457700 826145625 92857186 746980960 615624011 749922333 753580809 775478698 690233696 904675354 851467487 880106878 751138932 905144939 88455814 927717267 246926703 829157010 633120873 715577864 666124164 679346614 693799097 832988579 487147108 680367428 420396542 530356627 75230233 922444611 788205465 837921655 829378124 971809539 224580562 570273925 545062125 548227812 61052944 668801813 813130725 865384463 362044708 775456993 465144096 814795495 920037723 927700860 579738471 706997316 9824853 384394698 989780886 998555626 554209594 932293820 241795892 842544811 440316451 726091258 311902058 494344406 269721211 788084054 551489688 983668705 694942286 742173133 185397121 725061422 621903245 994350414 307973234 476790358 273626548 814662509 989506226 994129862 519004442 803996300 154919989 603000479 186635685 754696292 419278574 755862983 612414287 864646894 953817312 970594025 224417019 762319724 20665397 57136170 154196582 159169325 695968838 759127181 616094129 757841182 509905945 638115963 103484560 467543006 626999851 981903253 713180008 741880493 992105646 996958205 142761899 979001385 347056913 641635457 295176500 887826043 846083728 884632952 387350243 954657452 438732613 978970170 702079058 799625564 255012054 660993138 536204105 677486623 124843562 764557396 592948570 938061278 136886259 665140033 403109313 501177493 655114061 655289207 391368306 588112491 90686096 791291360 133139457 214514598 285817997 525863258 584118892 618235134 143380454 222380597 880796090 933542898 562666863 753452851 789458683 962515720 137170206 921107960 659377402 678385037 266337340 676905366 813501847 987967612 804197568 895382267 174387774 823847321 261014671 969431530 650526165 719861563 657291179 784039205 655889322 791818287 59272143 230346624 442992302 445086817 457984380 469297497 544552530 957792619 714492583 853491710 330498280 703226491 119303708 174220820 645601714 864391125 309182976 411115343 698833816 880866453 56409427 964506820 268100093 474926565 343298316 790672758 194211045 575451150 837625595 840655429 828626247 990391937 332561931 388618946 590250367 651193857 305786038 703149518 130731120 697680812 865285474 986864610 557678394 958799359 310617884 953685466 145163776 853396750 301023007 515991722 200806623 826094308 878406861 935474776 246864409 964665305 58527015 155577536 766727903 835701098 180814952 555294593 611324415 823383134 309872425 342910043 5286839 928754093 591420274 725895414 309859467 336974977 496254869 587864494 116212200 666384722 199603177 650096976 29060213 508861235 935391166 951431588 389398363 465129121 151933194 161125624 912847977 985969905 963718063 977204763 3542494 381869572 264385229 955286280 819560194 989256397 752776200 838922413 189232723 220131196 300848915 994309160 604784482 895352047 875865161 966442137 314037573 434467514 923734039 968390663 525786862 807137085 547547264 606987411 917911067 926594286 296227825 718625616 320159502 538801950 347546289 686220738 381672347 458616596 549465051 565142326 740718839 942345363 271851393 410645772 25322288 593075166 485349845 947203413 284624809 804067260 179551332 433932160 768546406 992191120 747483021 763627446 450454005 540933127 7069798 929459359 331245746 556180914 134878986 890285093 66830287 585942235 669610379 871622595 839778098 949588226 175987554 928749151 56825181 464776005 918759303 930718171 682985813 940842016 606004528 902816809 15776935 183456055 399004452 846178054 684720708 918547630 100679273 285178742 448398668 625834551 745162465 973692331 946364662 965209746 143879270 867464943 329439106 963851292 843518179 983636255 955653500 990109972 873492859 986833638 776730620 876652832 273932988 829604821 552863180 851533192 1710075 574528005 32427061 132612178 136312321 779675337 374544623 548616123 289913230 390869362 249870370 592028458 716773110 717442091 10530234 923179908 953848257 997475709 17679037 287389351 280215559 478648789 869061322 959879349 553202567 943666220 467724402 725954612 954517113 963411574 89922233 898023558 237575054 914460804 455039403 748035229 14494763 608401856 8846502 197926007 581137754 601273172 174339012 448513895 38842014 538949823 81921663 533098664 589165776 808241514 380178012 437970547 219864964 371578137 548728360 865761338 362075641 912525057 918875407 993680225 743780689 987378562 322491068 998418285 374155160 804609117 637850474 753218682 952798924 968653871 120136846 892670112 987492433 998600840 333771717 792802250 936398914 981020922 588913438 620385734 436027989 894077348 138234 765844522 875023487 994934742 728966142 850937767 470521654 897433469 1786193 497496374 362265368 781430038 94158150 321359714 102827508 536175199 415150081 901684684 691568291 848083010 279443305 975693061 927112713 991799313 817547857 834715274 628517862 973528747 78122174 908618472 218305502 742789265 85673160 757108805 79678352 922880821 83713278 231851787 614525571 801062456 709481881 726955162 425584218 891946518 361694055 514187890 332758339 550223398 409902393 977809082 642204106 968129536 193449077 866306849 534354461 988143873 47227195 262407625 588733553 714692205 121642136 559514133 548262240 982018825 271618044 825863456 20148940 160526970 994667599 997052595 588468391 723992401 720337099 750780807 903002531 927318683 674411693 934833479 102154355 431179244 830828657 906296856 590986611 778221757 319295429 718052326 971400678 973136794 795242293 964996154 125212714 187679248 264281652 355039289 970098641 998562325 176582656 296088777 740147991 902862441 424960592 637167074 643487776 830130072 615947271 653985744 335095319 676682177 972640640 977629111 475071213 910834996 103022906 408332552 976293907 999073996 433671762 717671719 741758813 746055724 163422944 224469490 941813006 988507002 475011352 689102764 959423896 975882346 221513639 239160183 552968354 841338748 171040241 702054334 397230014 982656036 492760860 871964140 55177300 722620811 122516677 452326682 991845272 993737193 248958349 757656233 614298139 898010133 218530994 708097483 754739972 851145115 812849461 938032993 375739467 755139352 276419747 556684015 650029491 744488650 783625051 874491998 857241206 955507385 770033069 902830629 431372915 548308034 142016345 842339063 416940431 615740151 945345755 950408547 546594667 720536041 774314839 875913498 896561898 904767722 105293778 150338783 710055646 991826248 967906860 994590431 665092604 956525925 873410430 952438403 638304182 943525703 875286023 947624513 900418774 932559191 48274640 734426780 357210987 435226836 623172457 879838042 447892766 871985401 923727316 925992864 729032690 775404726 24656178 500481965 500041452 795158000 657336982 757540540 454828999 785288797 744154604 977267413 539215895 931688430 138351406 401009102 554244107 722001854 919610165 986694730 769373939 934447477 812800364 951928808 847058067 912982270 977303189 977553181 559897590 820411058 929843656 962604938 744618853 928044679 505027456 783513993 401121502 708800961 648589661 856386691 160841870 864198427 778794776 955682678 850117027 934816334 17329789 351844256 982295887 989561755 621196898 836290034 373987079 785351178 148777050 812227258 906877452 957493541 143691013 852809722 543932797 975123937 772031622 893966393 33758926 884337485 954975898 965670646 937769172 967632973 62426244 792069340 134199922 577683239 345449621 904811740 65193470 700980414 758403719 957481276 121190045 719012819 895860747 926871829 257658875 747167875 681513359 763443284 290903663 362857945 48299790 124366376 393814304 820906864 563264897 638958237 540160480 889539822 248402911 669645124 191589310 628588944 364780646 722336927 386310506 977661805 847352053 964846226 339400742 680851522 272501174 890627465 793854061 882894807 279808210 365945747 773875555 828269886 937200475 960342144 2843041 697656721 740473034 845959030 761616888 772744925 809277466 810793354 680441002 974398586 945846329 975030256 265759168 392803277 648942319 795037389 286413848 371958648 136993673 955903684 254572561 677222672 534194219 691255802 813760860 974371208 701992015 762221597 76084609 372192664 699852123 718082490 853886229 900357179 605397833 842645663 107529990 674648620 852852270 924726221 289526187 338431949 756296324 798078180 223237700 571451440 27623514 567614677 632399166 740343084 824728917 890207090 44265267 789882642 978069509 997891222 942745771 965875117 651136309 964402645 30857312 783557356 323444431 537918755 497479503 722439459 645995940 647636454 651754597 901219257 708262921 878821562 821055191 941643202 661212953 811497005 331015007 800052727 518110994 549837442 811225089 886435575 192827516 924028979 649040603 964156485 200554441 790386540 467143772 685722234 946404417 982445890 480266977 621153525 985958273 993004728 11937297 489893395 552025287 874330206 504322036 598004240 61744072 404582358 705030345 802484853 583432258 617902191 185061936 626679946 382558438 563578752 820300408 859021089 360125040 421230746 826090468 859528108 99878916 544646609 823972583 834963257 156122625 783545350 827326607 958471659 154502517 390894650 703176522 739806379 322082326 720605891 665917130 820432488 692650062 822740312 998063071 999751603 901886202 960195367 717078517 753026420 661335287 967084650 346036787 675114346 247247839 581868376 559476302 625001237 151219186 245075439 324506884 398608258 554314765 687329261 583156344 783342104 306688522 725790817 610417586 955990042 407867242 893997695 587141442 674904399 458628430 916654025 637969791 913748345 742877404 902144560 524053150 582224706 171506774 795950409 620031068 745484946 28321620 691826991 830521529 924125960 119023620 789635468 59284043 145037134 209958418 982903414 307305709 695034719 688618939 948259269 250261647 478928684 576474532 610720679 241476704 642885015 173163244 900479980 373697378 753542781 651040003 868653576 710079953 814274971 693403866 824848365 760385922 941241677 963549907 978711990 494705429 871461430 86115160 134459183 923434360 929323759 870261188 908672280 399725406 746428183 580833015 865518233 329922049 730922492 489833692 763434541 624559375 783135167 944952844 988558163 461404538 475742284 748497954 810226460 37114766 352611013 385469029 661511479 555549896 802485410 24876459 961787226 792196551 914542164 264611004 694613196 364894061 516439647 834906965 861361845 106834653 461663777 422793915 602680087 578120782 703837445 377833700 505226717 241816184 376748612 369165410 713375749 115742680 637657775 33699430 545067854 420587925 588248895 405745732 528389020 516272681 644733325 879259908 918582770 822409235 832933862 877512913 953385955 270261022 463418805 272779639 899633923 568951675 834824530 995401931 998370496 218625074 248876105 219077236 300243011 639000503 781949939 127142570 275306698 380453898 798581216 966705580 970428185 197603206 547845090 911277373 930611283 274761330 993173154 873454584 937927511 361087600 844338180 62905223 596850017 809586237 977007423 532135134 861930256 231152366 943636729 77445208 313580331 685578447 872757843 508677275 517266480 346327050 928240814 330469285 507236656 542130890 718710849 657351139 683082549 717825875 935121133 532293088 831674415 10549859 570539084 728178757 840270927 262357095 319522108 421393475 825867705 953105841 966445476 229981078 903855926 800970997 905905007 946799658 982532292 720128034 805316143 960589660 988316938 908305779 947017746 787746395 955176796 313998056 927668658 197597606 778134328 300403110 591719324 878639202 956875871 372604912 445415023 978896894 988615046 374999708 724180507 549172739 688364736 49699040 568259858 683833724 994285728 543026371 685808183 182715271 929372312 314430214 462385198 601725843 913910720 188790045 686243631 165101829 492736216 771977568 855435041 469354114 524229960 508045561 521417332 402486144 626202724 544141352 735875860 807182985 898194036 735187198 966272793 254286625 563203054 551652619 577929939 694049745 851059904 788131728 855729723 754268819 802321156 842989241 980971532 324919883 830116406 744477974 912136258 166790646 367947528 976747200 998851110 699576127 747699160 940715165 990483319 455698271 498700998 798169460 861409706 853444667 912935238 127664112 255140019 746318750 782083889 748773270 824336719 710672250 892967601 58692275 606697731 296235615 984270627 451348548 682901345 895115941 984618493 463937967 718365734 946872932 965476432 325522951 514583670 114195927 809304930 371340252 815159799 597328817 830903908 438033620 729267220 676926647 900238441 164533417 782116808 774907871 858539362 135654180 293016884 924549368 936039153 535302521 809009205 110976730 864225167 487406209 528020314 29802974 884910210 750282087 958596888 648826595 849670308 704464330 905741197 137426803 416628002 794173700 966839206 17656623 576095565 488963468 489272187 640547783 961640974 834519748 925724585 666269669 672597241 476948361 796321486 93500688 498024418 294041233 968476083 981286978 994578748 30428425 716069579 930062083 957924793 364592339 910113202 597852130 757805122 126698988 394395099 765824510 865496869 561326988 596922720 558234920 632228786 157954456 853483372 248118746 906170570 265555237 562262708 392698830 542403329 122104229 973537716 529354570 593117520 825635974 959916282 908518241 976144766 259821790 655713777 488035452 490406907 498850832 638860086 528087270 891351604 850502297 924576861 743126539 883049932 234827561 590186940 323227120 964915619 959533718 960987890 686935892 891566645 974037322 976394373 583286809 807458763 521189909 681004721 202267207 915186283 380293889 493080271 404645622 968606840 448896179 708851170 256872254 860355984 318851368 850287456 230290537 832636422 127117958 142122658 828570196 850318710 742105413 765196562 961820974 962491845 634821068 968809802 252267279 834182751 407447859 930238750 119332990 397936109 825339366 912189373 13631832 250633111 145629658 252053956 432280968 479215696 92428260 699190617 272069757 616106579 889567211 977568612 378074765 519073025 109691112 733070061 605353937 712233459 760775843 988726730 136943685 443078318 153948104 521987470 160613142 906907120 198135500 448278702 758820377 825785251 189394537 939972562 609551959 754025537 185259360 392291300 448751834 654231376 807538231 938748040 970258645 985770237 963740545 977385480 2002099 157521046 508186715 686070692 927867907 946186150 895627996 906036856 255223570 909318224 741211491 876908437 492439148 549075924 945236700 954900574 224115603 923190865 887256135 908972261 70245535 998112368 634237138 679421283 284352054 318047890 984464589 998263976 165734114 601008804 302297081 327918090 175941596 648757221 864043688 942799165 151674070 480762714 985638713 996055616 427769469 963675212 458303406 642987098 975310370 990770351 553436786 648644143 563396545 790006785 153545017 531723315 931231964 998034368 409813864 954307167 602526162 733268938 840810881 902570236 581290662 841796064 317894056 698163051 555835289 675894965 9675100 498408581 168327660 234228664 627303787 975825923 955705627 973459133 620314774 995144269 855866457 898757933 416286733 678780996 733418880 804218454 125726530 587218151 275181839 643824867 550188855 680444590 326701533 894128948 131340095 613090816 79740329 607624126 292533339 898228775 778124865 956655319 151117196 292106970 613703816 930808990 77178968 161329371 27279802 568431612 618309363 693624242 326552530 641530110 935042427 943966272 433623164 861210752 956154937 980101623 402533317 849074702 497550646 977421511 402713651 953646808 32455929 233194397 374715383 707655470 824571349 905041229 464012884 690622786 248238377 314385888 296298532 767230103 489285588 716728065 210637228 402311626 955787839 978721685 711442794 921547149 398901880 884100949 534946603 630109945 405546918 757681297 741374582 818793439 928309344 993039248 889268052 959800037 19966532 505204149 532657241 871719629 189832871 878531514 36897878 210140918 520539915 956414784 851379161 934488119 980374750 997520787 323484847 401908836 492168679 755382047 412924071 586432503 624740454 703741464 237148040 926776750 254595758 694111424 365621396 416260763 945695787 963004833 475865275 713245665 915570235 990588141 117823856 327530327 615280654 914175863 120755264 691570755 960882010 996135983 557127880 977057878 543037963 564321799 303137842 986171791 23446266 126927200 581359521 645926938 886262658 890329376 358823338 965922771 955552344 961307624 778901024 824838884 285259517 646560288 947013864 988617203 178841465 388003145 604335490 639859523 969814630 974219088 611423271 696280748 899664913 980633111 918765531 956970963 11732837 497024520 160289812 390926576 580721058 657746561 119797275 746053749 975557098 999447017 506916709 509804564 169510811 694819424 136094679 540104580 784815234 889546723 407387560 752681425 248677247 976970877 391206435 535199170 925197477 933073554 721144863 930251369 976625130 990312470 477261326 637816032 557087222 643205056 103328048 456005432 967998063 970785326 853573931 910773742 78863097 430867986 340200079 471750690 512577974 783758707 489359164 850872942 358134400 966144239 803505786 964712224 91593387 635189209 951057809 965923039 776841773 847975927 775320233 923099945 279241488 656951330 927076974 983243677 552358883 897855435 502483258 610225831 539839434 946746896 549780646 691328468 361278812 545994049 326228807 701411405 836818411 914522660 140155432 657114140 635970163 994578342 539973657 800500699 788797480 816004125 754987052 841513915 675699273 727926777 619879587 961104132 896427783 940510331 559786752 653308255 735168232 910817254 380875366 763096032 552137687 948600938 910970851 925990649 912804766 924181858 351585583 505330979 724618229 901603977 956005332 979242131 522749176 539802135 11201281 18286834 143477122 866440713 154949881 769292299 948537899 989182397 876028108 935243891 729065807 826320901 697375380 817940363 642871353 649398112 964769809 993565570 161958844 880081355 455822984 520350605 773388516 984176551 730121118 817871543 206031980 597909708 286764325 725180091 232180532 362638365 670582386 811834412 849567235 963378995 144459446 453924017 655990352 928961157 208353753 445107368 994935555 996601230 442367725 485510478 294948813 974942731 439241156 728727944 454715801 798917855 63284339 172114874 410626323 835555932 934619504 940281702 25513962 787434584 673353041 809398938 880441207 979705781 967732394 977637401 351044139 939372750 285067700 715692724 562843170 983480327 405556112 619713357 472324224 527290410 306245557 706666415 240327699 364437582 719663098 897086046 860295584 863873086 300482895 778630194 481285319 923140569 792663540 841942194 70328919 868625716 832906395 937274773 758520285 786854984 74386316 841398595 215852096 656513726 557062871 910375992 199190328 454051867 499961023 523873758 372263927 463594210 252467464 333522073 123882522 428875445 597519952 611361908 728475856 785681703 714256865 804665619 583260528 921478596 86010181 859492433 650746216 791004739 13676050 284212638 639372022 957130628 118964817 812430266 357167159 881321847 628091799 921328272 691981382 831990151 370455232 701512483 44600349 235141482 942707201 947740095 235741719 530704852 367225274 393157394 544841897 948568964 317550982 924189391 504965513 932214615 858946393 955035934 488635968 743021991 73616860 230839432 575521523 924034525 488609087 597647489 387248671 751054110 161758807 422964006 657788543 671593899 512857594 625834418 926126188 934579923 823188742 909398220 842837823 946132468 732269328 884872877 750048201 825914626 685574702 735824024 504924400 549541057 202288672 699777602 63166189 961924240 666977377 744809862 137932044 330005792 156220786 790875525 568515682 603666071 476924487 851933780 66937218 155420766 383675288 677757237 979623173 988065113 935543944 956324106 391586392 816719266 369358729 893719814 320462039 667252059 915462544 976497632 228056067 489590481 405215249 591536368 428076161 862571030 378940204 724993349 466976602 953610268 153949083 994091341 321002580 796784338 854227739 920668304 165238821 937567884 69670590 165727651 491687969 633372235 408996677 461613243 148518937 328129458 546800617 730666307 626190951 854343771 852196562 956280387 776058350 784965226 689468394 979886366 599994561 642450888 254765938 935548998 461763109 534617243 55220209 151755500 876031072 953515789 982015927 994112139 642711884 962998920 431088566 693112405 894409017 931830515 276290776 656756639 923400330 976591650 759434985 881881897 449515503 826617005 617072937 618484206 492667881 790128665 358870833 847599648 593755069 697945508 450659553 708617747 851116360 858675181 209479222 930648289 527920258 718591809 458393503 491978545 915519529 958049107 392017952 897820069 108060337 141759308 776398427 965868745 397889261 726688845 481768472 933059753 538958737 959071419 593546404 875139524 269985125 905474483 91723831 95405122 166345015 727891666 27851335 706456861 933039357 936267028 660549985 939968312 989867894 997809336 3156556 462435875 501929036 936876553 217260871 902680304 556324710 586890842 668660250 894599567 435105509 603249915 558783598 754538409 924538233 929555991 843922749 858074054 378587773 954713707 497563879 868148737 757328430 947056066 900844718 939745935 236469773 651183604 66826042 128139449 924976098 952485264 504873341 542960776 976250535 994870608 531997681 857982262 88452954 974373368 559318051 634318139 790626508 855503054 692347357 818005904 117322407 161321142 184357651 606498465 232784903 332125031 673586843 840808296 15280764 661401487 38624230 317155278 103862134 494452336 182058286 529302668 97669763 215158533 271703213 775765064 48978041 819868000 147691706 848536815 560871953 637248800 792404682 942298997 80571683 416621104 300300907 710972656 832889652 927428313 578587447 961029158 129198573 941406337 128020652 520014122 605228190 674135936 360243499 767308003 778047010 808895682 901214539 963543505 835301391 978556950 251180808 420581816 964746310 969370688 809492753 968357199 838658602 918164145 528967899 607286612 605095100 967174548 356683956 632129966 256328318 441973718 807949878 903052635 367520693 659630406 697336373 927998489 167502663 875342060 123744772 900358806 83626104 342097412 665654919 852196427 22847536 261526200 831545399 854379084 913979883 956608821 219265920 360179166 502429877 724309532 750206362 773265889 139464795 958181075 690210717 821227993 170612623 328191754 614628934 926080143 766933706 779766469 151755716 609704391 714187275 984407236 400942682 782614037 564244905 789436122 286372549 492149526 576330650 828025545 945934635 965313420 852999918 981836772 555758244 880225481 826381948 919312465 640796651 782453643 703175446 858755383 772614329 908889281 609572145 900697234 264576519 330079872 972669434 983509099 766261305 820994352 59125489 240447328 866587807 940927511 580658735 675861225 274130055 901965161 981418911 998684910 623546240 983040906 189731261 671137073 4510514 645679094 618582728 724407552 989043048 992377886 726382535 880223760 561612505 662306939 160634983 669951636 759719098 770466104 235568597 761650103 877101127 913024118 480682399 853223419 616576850 851467700 271037836 717089695 913134858 961772326 219533156 997901083 433177077 936960736 469377545 681014359 899175866 987361351 873682826 883929200 312631998 888715079 760553932 954190171 974629830 975620701 288902286 619718672 490665137 623567106 336480112 929562249 152428683 761050286 807747622 932639038 554086486 671459999 519143821 910256610 143290296 702682564 232694463 824554785 565040338 871300779 579210792 895493841 614354726 843447244 774729158 841237010 786298663 835485993 339594105 395857342 382731294 847924253 32662307 262572328 636299818 957813312 495065014 934014609 819646046 875406025 540166699 745525763 150078517 411922844 691413175 726622857 680807680 725105268 849012384 930939047 137244447 278824664 832164096 834123089 791470682 814965827 353305249 472246340 863808758 954989136 690226963 883083542 292886264 944226980 352521547 503411489 558697456 941820293 677164447 685566413 118161221 673307570 995362489 999445333 575827565 630047091 194102130 936120869 310397852 522496208 676214807 768041369 860049425 932480765 288078516 890904092 197020837 869750480 682346438 717494505 234169251 934654914 277908690 341984523 762070183 804264291 891284933 952625042 847131090 994264388 612796337 661411729 35606823 229377035 776844829 855572388 654742522 710263923 950514652 986798109 637348571 810847019 14258308 996146925 937779470 958980279 502248236 871787399 70738208 155096867 443879480 971934451 42754692 280021873 291347246 292588874 6904443 93116322 212453429 812223533 27712676 690946196 107542023 792306742 266998842 677085847 478993306 948495434 110698166 367074683 795779687 944555836 297021424 762757939 413348942 413705349 2008298 404405773 137717595 702565108 978787727 986109807 740425033 964761070 841895970 983514438 469717058 871400400 583622066 727746858 768095470 832204782 19600604 333526534 173103221 497394642 877986516 919434295 632751452 755307156 186968167 924283716 155777411 173624411 16700400 92313550 83411209 241551040 906321392 969752259 668006114 696618733 454879942 613647000 172775217 577012997 779850918 898382063 813936720 935751646 196490007 927459964 448685041 923776030 462265264 985411375 660814590 815167881 561610244 769274340 671436357 955854277 521784248 969288372 434478565 897209466 26909009 380543647 921505201 996526175 974052095 978914289 164399012 801730696 817134652 910690418 671681904 995959073 371132784 382480107 255166386 494367334 61341680 767178424 864519583 913432081 132320852 752868331 612686046 729518778 793048335 946288628 100699170 801271626 901079518 984116302 979454925 997779951 674100377 853031419 439194240 789402562 842452718 944068758 614440768 704657510 59784948 704411573 747822852 982066069 500686934 920430542 53008593 366259250 334270900 620470871 818916722 937307287 110157194 746902297 657736429 931667415 153639675 747840196 600791482 748477670 624180205 913009850 259088454 867162521 246288135 604693000 875432182 907222201 648014956 686846991 535397110 559941963 537382514 913453750 667371325 983066942 67458234 564863568 534342008 958352718 821279360 920581340 199768157 334088367 713150188 998521909 440844297 995071386 685579905 857156269 343221900 377672470 913472484 928231616 928236789 938031828 984280337 995459013 673240552 818206862 946064765 959852889 508501095 594050181 785882857 890628852 177189535 972886500 120678850 640660357 246294653 338685448 753522309 807257889 376257161 741606609 929942379 996659098 228084070 689030384 544253455 920190095 327320650 663414583 593920984 608231981 961744898 992588271 138595504 414247625 306946847 683897491 596199322 756799638 470349566 762354263 24215636 868531589 956349079 972548971 60731970 508605205 254879689 522433763 425699043 813712214 998597969 998629050 111652084 291961476 270719519 608770233 127534230 406936743 811437559 881219630 104869093 447310903 984997521 985669066 515379209 537181393 844740669 889112779 706514109 762408192 906560185 921384273 458034997 702554282 906932712 986356243 801816364 933579765 234634797 866798322 950515405 973367722 346720738 737089094 228491498 533106048 709127696 734768400 473086445 906874314 739603138 750792224 123305008 686639423 646680044 886120374 835265163 855660752 991696328 993997422 445331446 598197049 393641672 616025984 571488604 729788508 116581835 306219609 25397980 848710386 713248158 855833127 200205812 255254895 16824596 882331463 573729112 922622940 24942356 45800747 247654583 807038894 131617504 558480904 727264956 740158249 849404655 862677017 288501410 673644706 435340549 938648232 735811018 903589631 678401219 729893600 103213865 690451920 258588012 903667808 935066786 971900605 802967423 862278113 179324328 633086993 184826791 403264423 312356347 542514250 908984345 937336137 818805205 902661201 16906767 757491634 325941403 389328396 830811643 943707811 339632345 676190097 347103982 535384613 422180452 428399898 882265839 981843591 635114740 869365826 550605855 735389692 662789108 991815959 390247071 852789250 23562208 597214110 208985209 945767129 188372431 651445971 58755917 460497762 381730748 624573154 4192624 60466749 466192815 559501435 775060580 834965155 151736722 735395838 393696582 663879568 427829388 747431952 95924705 925859729 743108111 825154322 463946231 512771533 101165832 119405770 188532397 986505131 444794524 761244603 448241861 885836655 991379114 993360141 36184975 761906603 152880331 304815216 510181408 740128129 630647431 745338429 789740035 861785250 24251962 950431524 867080201 942717126 705425510 936360956 967437441 984569857 297878807 732254290 814298941 829170258 386785928 538694961 920723310 921231739 501348808 905914477 982812155 998686344 442753697 804033294 24258956 766764701 760222850 800106314 407668721 799661593 905587743 938449167 473639820 704501090 765767624 899720310 68212011 754516502 517284026 895178519 651996341 667181521 536345458 963210803 210969353 742112878 583256804 714954464 544257292 773830563 765813965 912641710 340402230 805016312 781228416 853043755 442022115 898361162 192639723 438623404 737233183 807314845 945269181 962451069 557533110 577610936 312908815 932945382 683758377 685771441 896830484 928617043 79820213 964008446 787618013 968424424 711850048 719701503 12342918 804995858 762446936 869927565 111324200 666800386 781995328 839434351 511334121 603566803 589965842 836250475 775987393 903028017 971713744 988000240 140672792 985342265 562360950 606842419 373233696 814037545 262066834 686744251 155921937 280003245 336635049 429766173 457835367 854209662 868007458 972903868 362838901 452379273 998748098 999517950 134370720 912071179 687630488 836126125 111841664 843661834 20061539 660080737 642491567 866956251 405296330 968494807 297655250 401690170 105146531 743510597 455810133 642812617 869824242 899791913 807148388 928851412 481388741 532689003 779880689 928113237 674274406 958047106 55749013 750600311 321597685 965471487 591029600 930440217 754587157 828749787 236807428 778292100 902859547 998266099 460802675 498483313 200235964 325633628 395523143 964120790 204062984 401250176 173104418 665898834 572159647 998126776 510152366 947834131 843214950 910114937 526830203 867308464 655079314 931067280 148954542 743047340 242447242 256025624 137590875 759628111 142986227 836464589 669355217 832124643 494605921 713586204 780191547 991338595 348419123 831540840 305169116 857469385 288469792 804584917 214624203 408659815 524620114 993274735 212622381 822756549 391317321 908955083 770055772 890391904 45126712 434711498 475200866 838426814 514047345 521859697 195756048 545546474 547848612 957325583 359170834 565866596 939511418 988242772 111133893 542917526 698415467 913905238 96996801 113941888 172620156 551725118 260699104 429529969 154988202 412579985 738029460 908730697 920411565 988796576 667045205 811772065 201552120 893293713 966790580 982728342 149611439 686073205 506872293 832035032 495731158 525832643 702638359 986442112 599493460 751368342 605083055 687757783 455080375 797864254 920594006 948543800 480252825 991815733 257785536 747063012 249168034 690816258 1965312 149912287 664847310 979393025 538452487 846116275 544111966 723912731 107961540 385960166 603123410 768260726 639190522 651150093 986295605 988171205 96220230 618152882 327668289 915484583 506845456 783549503 755080346 825641105 629331686 945769002 115094999 760821500 803694746 893891378 329971586 881280619 219071321 292391394 696470813 943213355 777777979 788171431 230324096 782469702 948978013 980957689 525066308 531411925 513522107 992748152 374047051 516812000 360206574 940478666 680772145 780210945 809451851 996196705 926217172 969737472 557417638 693165681 335346651 770470222 398394086 616188812 201643879 581072076 898389888 986975983 397337015 860513190 498113738 545132622 124021725 803668390 87046832 919274556 751876861 876934759 628991787 983974465 412681478 488720376 121230226 719472880 828921985 909111140 701271233 999090099 729403080 749437675 644973271 960205859 148536621 191353024 971194572 980108407 367039215 425705875 889812237 972800929 667977896 816121166 552407445 736078879 142859832 185593950 580750660 988541157 891033092 920691695 349146364 788659734 358757873 513615256 963425708 998421055 453166448 814984386 712331550 860764850 6607663 422124882 936655582 951763942 960007242 979884940 2724813 187263208 96691089 736518676 895200104 968316685 2319620 38381290 195755994 202152516 666147231 669927152 753575545 964204760 663640403 766885324 549545142 994599529 20779830 124363631 597637036 982650642 157930360 902851469 541857330 906022364 877429228 930116806 918322517 952893724 415261454 858730944 74912161 432959800 188536592 203443469 876247707 896935873 632917710 813600383 431789370 718021032 151852836 982974361 154889790 474837327 636423394 654470516 83800001 312787731 681304659 827997785 162770413 655856453 392439167 932724019 812647571 905791643 410041339 410572382 856654158 858125372 44950628 64184491 452625832 513248913 410927252 559647205 602356081 790758692 182093401 876232254 207588421 286105569 214186203 409074320 693149250 927158893 970186191 987706942 385609422 393095771 603417720 822814906 380475225 554237164 35348305 572626927 192672392 454236395 322705587 790071806 703342381 726877433 605322111 773920875 92712916 703803155 55197123 691372671 972210531 981291299 442311668 987498132 100285536 875727748 23222452 263073528 491804160 973431075 512098592 921995368 63432638 347369892 646744047 690956592 75009619 440883772 408280076 951781139 952354393 995609643 687653425 901539501 178793954 548001002 98735597 760917214 220824278 932121847 34381853 101151660 866911318 961204599 701448965 996514905 45509897 437037592 819583782 877804083 88526975 609149547 44241444 288668684 18861506 723861742 194750394 264769219 84729517 801527474 782865318 950715155 431507110 443554381 978386259 989505682 192510139 921578205 193240930 673968472 219864638 447284244 600014587 652225791 761264349 860276361 749819261 881071687 456970896 981755746 840891364 908884767 657662311 804503659 342751521 599476038 451795767 750165925 626325378 631463721 652081145 705043208 919637467 994732659 319404008 386004832 310162314 419233177 655351095 995083996 806610317 945424034 450238132 487713237 146628853 251374982 367623764 632148141 59161690 382651093 518548190 577951038 713311247 789172855 113726999 623742651 381496928 675273363 893129887 967252364 515495382 788992500 848195296 885093602 80944781 386449657 790654915 887492545 782559992 897101340 138859390 774283050 800090078 939425498 30395233 112421627 404496474 674189225 428490591 497877690 578579757 954494100 100127674 487557192 845833077 957716018 536380936 561742224 224432393 837579723 591361441 815463819 116687272 818019355 926670950 976170192 991634838 996103435 1141821 532605488 834390820 878256203 753991414 915380572 27259603 291517329 256569533 482645315 143992743 178915887 102393186 943057487 16890226 513986166 610219322 793351480 468619760 755290011 218112366 931946550 505930754 671329363 123543273 318380086 840104704 932778978 721470779 781351515 628203836 654458477 615129150 803595745 117611847 576756410 462089075 492873831 831590281 998563056 31456992 588008096 395148419 677947128 333932306 890169718 62901207 958204627 459129163 699190780 568388673 867023946 253002793 394257380 57736490 201930470 825801663 893166719 945142035 996161685 199705829 266180764 947029859 992328917 969622036 973542725 897015726 926487810 455798373 773862640 977325268 980524156 341773501 977678444 832144328 873802537 332343613 929751480 865969330 948432574 407264848 600181376 754974590 835318409 301026976 854485974 572049437 814605618 525314867 882953667 240125872 835653679 120728125 272218111 351574600 415634009 942920923 987115385 52968475 309944759 922790813 933917886 583874959 972085624 115330868 387488101 6682208 141639884 809897049 844345378 28328363 692527372 319250185 894556066 9340969 729389934 454625952 713788022 900430544 976002162 804474443 876115678 569974924 703217910 632768673 729627945 679895210 827286297 538221666 697594461 79550597 308849517 877556184 951624592 668098385 737339596 470667536 695993550 671061388 873075648 382655570 382872581 534750965 713196666 927737368 988043182 452009348 681862181 428527709 917165568 160824653 680662910 250064603 835323420 851488815 970259273 304039276 712648236 481401626 778709042 714564024 840939476 393881666 984178082 784059494 869287561 63589500 923879324 720239788 791944205 940213039 945445554 644153548 863023166 176075578 853215275 996702825 996744340 583875298 619347695 536180227 917977420 679436020 689186200 218492970 898941781 382012670 721348374 463251107 856186068 462764738 704100005 66108892 760558410 614916738 759341125 81894025 124826650 54509069 86733843 704516500 888943732 445065227 993842991 278846365 729228702 884521619 893775651 703824919 886408827 387411991 800183779 926375883 989729194 146354583 307858482 115617220 848942598 108219284 866393581 390899126 926938767 722354264 917836664 546862091 763786160 499969568 922611684 499240089 629139215 219535541 909297823 229342170 384673995 410564584 840097899 740048807 781862855 468213379 591323315 189900015 662535034 339715202 810181781 294632381 567662956 202614760 733440474 359037076 363131605 21139300 411709096 922977336 971403529 634420792 851801264 48797 513460720 679099261 941228695 550232469 806616125 244011249 538536367 758437939 975717776 470194564 759696014 529339796 625007863 748464270 795345369 435204698 497307329 22535634 582815925 496538907 970833079 667079110 906287680 778395904 996860508 93374647 704623371 513025396 891169870 900664509 992716424 82801755 309657880 480818862 888560653 493992839 596112010 283387506 559445269 995564226 999419321 205016901 691076042 715254532 824402655 915729097 925282466 255121532 881157159 17067664 272500458 391577233 751586789 908273273 915961944 816237748 975675867 490646627 924591009 494183696 720126413 35361566 653612113 526688552 658270446 28904516 804951097 832199626 999635022 85328301 640570678 657416932 771103510 975112668 982718817 557849785 777644822 442332189 599088549 107827312 229931459 765585481 913485705 996105722 999277983 851280421 857078080 240254973 632139208 301551440 986339623 412748341 786874774 14208149 781117173 469773286 925353931 539186634 802010547 92734356 103905256 289747515 879195666 434198586 615658860 225780596 734154706 557250917 997864780 475783268 809945774 496322522 512330986 71789549 93468640 730778597 982787179 430398147 836195215 138108107 378446918 339212989 528203354 541892266 759020191 275862218 473560729 93629131 373267681 847778345 977986896 891780238 981231375 466279356 639407747 275621301 631519812 305222631 870430292 774521200 927245144 397574339 839929063 794578105 893864291 866687926 893648185 840468975 918293051 789572238 920721498 340063529 558776485 8172367 625027193 364806335 582923502 973519409 998084830 47491996 748393894 137578545 265313564 370066091 927914240 46864374 323184379 131379213 967606190 364228890 404098866 616914640 966482830 240986562 847890014 31113239 444184567 810960661 972072949 660749735 837921219 310391337 659541657 435342560 564721618 780326372 928767887 337571250 667091988 338843271 436595935 128600529 664759555 638803554 681475633 349662691 364445510 596476964 892929124 254214036 714323941 706995320 862283805 428529737 721190624 764091805 797785072 278972746 318603797 295364417 358834776 49273599 840149222 108040609 954000270 649385986 999929834 421728869 898336034 668466186 854376635 384500024 839942100 238158914 871473053 564078139 707105315 69542962 627877076 790508862 952982257 634701197 947917208 526686297 750960200 398730447 793146514 300885121 377728900 482283865 767373211 770270270 968427035 831624512 885414759 432668339 905451278 221557108 294927373 640865482 698998416 340705169 781063943 98231060 859438974 653960847 861694616 361750696 445950609 796464897 808605044 700876311 794300637 291669653 727319974 254839195 379533161 246658596 475367324 354068222 547597518 350999915 410527679 725409406 978344635 132821751 910052763 56564558 317286128 571662257 875303375 793413071 901169410 472093902 732712345 952143811 973709300 955665880 955901966 88327580 629346674 421566359 696375674 622394021 762417658 12552671 241773139 770400373 818086715 374976005 526949530 536396189 815496045 995145497 995992493 233905315 804931364 724329270 792160732 2718017 50844340 298514069 354931032 104986693 453186091 828765998 948129713 989959555 995897346 664501402 796060182 706288970 784014221 769026060 839290278 440570866 465202492 153823496 735555740 863810576 925218147 764130969 868815394 650875845 696594304 244984644 273648035 52301866 487587017 652924236 746158391 61952562 495314924 913338524 945247333 599164634 946285114 141941300 922829969 132603564 346167303 787523397 873079903 158326889 338870491 720485859 822668247 21626713 23610951 603664737 690916241 899742659 950705761 926334082 931916615 295518871 760980419 143837758 211151256 79568972 992404449 63906833 526297902 639025290 770210191 646091697 865542891 785962809 839930125 508211916 758914248 157626614 330481977 195657112 795105852 499928594 509672363 145589645 611030010 121513668 645544454 492878818 582314637 711902070 732865665 350257660 370746604 592223685 726828231 103259988 912489045 225465880 244252080 154696263 525825834 61330342 752650443 869547354 871639638 42546577 221347579 665902987 693700043 592586746 914820155 342529917 503811566 790962158 915246934 387981542 989929643 645630361 871130205 960735068 966844390 892720341 901372291 875049896 996639771 902081070 937613542 515914352 837242448 120555339 181425397 432836367 545606999 524377233 961125253 473280005 936237374 931227737 976789569 648325441 737037759 276278688 305512552 327486786 604480447 563136468 993936474 183069078 564184378 208736082 279519283 319056939 865061362 240757047 457788429 946845565 980360144 800978291 991790044 54608178 389351514 797157217 827926376 344867718 385125469 212564088 389244294 506262230 936062423 944548442 969733724 367746500 987261085 202002106 763091796 969246775 988625385 749673631 951132499 103660979 832188575 965420852 988292914 3143745 339188666 970141021 993846719 604822555 879142725 425616112 668362036 477376255 557651685 806255385 933273310 2832436 431160386 358246944 869004436 138499392 907529727 181021168 838011556 525475679 877627862 559356119 641760302 653125462 762288794 962031167 983582459 395030393 549839939 76854761 247058194 162472390 883225358 661109334 857004061 622632249 648629635 52943336 641487552 431525153 822706422 15661140 653945002 373811921 530100745 725332717 872343231 465014863 754425298 717348830 980238164 102921478 909628846 645839821 857370255 548191039 662653688 798433769 822940614 994971979 996255436 681015965 921130755 113402651 693060065 657470506 774423386 264883659 643796721 937190366 942002782 968736498 980078829 203350943 328130251 997591338 998329689 966039927 969584142 977794594 995223240 126493273 903538398 762383446 950642330 180745558 806716200 181131217 514328082 239119131 399020474 902432955 988800549 779173767 938654748 411913468 672974954 15130408 611384364 776009686 872547608 295009593 355707671 510860939 973835235 987318504 997027348 950646367 951677102 28116606 749173755 607998567 708907905 512550139 942742181 113819009 317170215 556093433 928567553 858644373 882534201 383024133 962396003 379220701 859036026 276194153 979421924 394138841 929931395 325683651 513362255 242821760 434926278 995012688 996264876 931107605 975677765 651175603 903056010 672621819 763039176 260906519 651948220 659809020 862714358 253779931 825034661 661909831 858004555 926748369 992943501 123514361 989117787 899288202 932701636 262960068 970180336 310810102 805282218 881497456 920514219 847067394 856846110 870832107 950738036 775208870 840596921 172304695 588888827 189876007 411873753 310661982 775510960 218483287 605207325 399439854 988606392 242135416 381974358 366050762 671532312 711374690 945982110 19800084 465855610 928436641 982626856 801203500 963039815 624026757 763151835 726596214 748235940 68804607 588424255 498719434 615620066 247527669 667622524 860374214 972962514 826119676 922324476 785696032 811663529 695244979 980727649 10824780 955977806 633502604 787283449 250284672 484577968 394036605 821603588 973738891 995243221 805542764 896085815 4467640 346421014 116247913 360050883 948871166 960646052 496451685 919511863 861385608 892062942 183785730 277988211 219691907 665149056 381268964 590518081 206123141 283508599 178474273 748227346 523010930 738510156 134616754 163579693 315836879 506395988 723474009 948668774 861722554 908884385 586691092 591383910 817417316 881760518 757058803 881290280 321560568 937479225 843388064 860844905 257021383 833694817 626144369 896375777 866025538 950432620 194346572 961138681 446776596 539361820 253307652 340347127 939249596 946004210 758724854 820900982 55654969 898432059 553235363 620337711 913543309 955202826 378878877 559588574 228307311 631161764 454592233 598855495 948615231 972549489 173770676 599137242 422418130 887734575 99748474 732053645 439053094 845796762 911617065 949703611 401432929 709243830 59843855 387748311 802188409 960740596 825584081 830188280 381646468 856801182 995500860 999616346 523100921 844857215 255850740 789725030 141036741 922110505 868399488 926614383 178632589 650819308 231726230 511282972 158926727 667341724 559855211 796682000 109670304 881073661 911057090 933646545 560310656 860497882 622999561 988869681 285263663 552393337 704252077 915975708 362982598 621039972 70149472 403774478 777430798 878062993 768258685 964878684 946834643 993175941 220704433 691281620 193432765 490264442 570583732 604134880 412113846 839912135 664221672 904016799 268966491 570278211 990993944 994684625 591674010 776159049 148713143 351431449 998283715 998334111 267028587 349381600 303795657 531691333 450014918 979370429 816544588 876762600 949682577 999787776 447025695 677991411 61892795 337073801 828231094 883009602 620128588 705442730 693717483 966881763 643854188 818913225 107224940 522393258 773034789 818286131 962512346 966025644 449601780 935597982 487490118 900454960 437108286 639825111 470909490 596350918 300173652 566489812 507075467 740510499 596113218 816977655 876011487 885720431 111659703 395867880 252155238 629599716 510753943 945472919 852672957 975412766 620655602 726829990 789234581 915391508 832007131 920660659 194330527 674080658 505802594 887456589 616938711 804756561 623916248 931865127 136590391 740234867 84271274 649344888 228307783 386072794 600830823 908540023 787819277 868434910 595619256 850699814 124817070 754756265 985892460 999878935 296680724 636960707 855377965 998855754 666739747 968557838 741570823 758815991 373135752 690416714 22366381 561271222 875486744 894321699 10642381 290013962 191409048 747440155 224344323 838759857 419910881 799547863 648334874 872885432 809484465 832757673 308242690 413564303 365452878 657934923 900193778 983392342 330576347 777098825 605389662 609064800 258941964 732286909 880306628 884385200 245520407 609862812 823957211 971065484 168274618 847361850 206464783 843451451 344187655 416559514 738131080 825630818 289450069 763914614 31996072 782715090 584388743 705380961 51212970 94467310 481771830 874121865 891158181 922559059 580289897 598599435 479547660 838235204 921535980 945777215 215803869 226198376 484878566 714513166 924980216 984633638 99369615 103365986 403935256 965737334 181301237 471906201 351469912 577977376 545281070 717497263 303318605 703173712 9160308 387167047 946978402 947334095 464254561 837755289 917786371 964181899 631613482 704839804 614271447 952525104 762492889 983111839 434045784 800388174 456533305 562647598 725435782 894365784 661888802 817560915 722599241 946640137 661429453 984274923 487608882 645528438 233865384 365918229 21656806 670768389 830477424 914088622 757914610 840573938 937385327 945423933 296416068 551976293 992187926 999768669 858136133 882650003 299203531 870111838 377209819 783175475 955672430 963892142 63061352 206148882 901115368 932226165 334645313 966567555 960170585 967696103 587421367 846564196 557303991 683401068 863466567 976289409 326902059 491459959 217040088 479808948 87358119 171805353 565817017 852547261 923275462 974225897 199223370 988147453 872983280 981640385 3468314 921388157 152892513 715306101 833697417 992423733 796450248 838320353 899492042 944764992 648388594 844232137 238082928 952185235 714583273 755923385 109907427 313098589 669235779 848439018 29883933 203715879 403991736 942370933 266463908 770688217 642566057 675193529 315585577 870233527 182614977 866556508 351982868 788891966 551370486 615744872 423353333 806315854 884267701 929298474 894923285 978352094 26944598 401322714 869317128 996841950 773417944 894447206 770858932 788421076 544638095 646929815 700247419 870348402 116326046 812365901 454544912 640530867 207052953 454620473 441398179 618479225 133351014 484456645 778602710 798248100 410987193 667840330 159773721 989719942 294791482 951599016 786210142 997725219 6689634 829135996 281688693 846492405 762658917 846590131 814784255 907406943 617609035 685765958 899693462 927906576 766751221 987192332 96549626 158928794 450093182 812731168 224097471 450362659 977111053 995076250 148398223 536227829 909791750 918675512 467388767 474743010 800174012 836921013 906571756 993931958 124889666 324122853 650866730 826908197 822447958 978496326 938735275 978511614 789540149 819961078 216089122 770284863 39010454 146591656 881325100 996216601 258118234 460260360 97010937 131473170 71369637 336822408 410871548 681761090 363543894 405694306 657573811 686990606 751117262 790034899 170048308 598378320 28741938 220785105 748027175 896220013 567924082 864517579 347320648 399440774 55789003 550834780 337009972 704780727 890653334 930909410 879766451 926044606 802129115 841204141 360027933 715566988 995405871 998381159 59465353 928478613 216711851 307846889 65434481 378691761 299284147 552479475 549570397 549697315 818803768 932395078 835762910 851393281 474649036 798262855 299208981 980710301 519841601 812290937 52455809 803532168 102651473 733237567 373738399 853967261 353822286 905216452 647956149 728169324 156044453 475448130 463577782 921239289 839992968 911940858 934621026 949120522 470256121 617684432 592372419 899623607 61131076 999760150 77921039 888804983 950490600 974934059 921930304 973110493 291067954 714981085 225291818 267905505 998830523 999221082 94864600 622699206 36279637 51865653 524516468 886424642 424964402 961257991 172635306 942396182 937885942 999926968 444275236 713331256 916326738 916361854 420040149 526227990 644993237 919276354 155307399 881690111 445668169 835818835 179280273 236721364 653966943 721112337 313269279 996605431 852592549 978276795 519534807 888240118 249539357 776009507 552828802 921507436 175144180 807355257 899901673 950188479 378498707 379329092 481749084 781474062 165136749 273406437 834403501 973291729 376460784 552579674 612867966 761008050 913898483 994537603 218336074 464054516 978856739 987167964 303183804 657874535 555462422 567574346 57631960 317965602 692656913 788910866 797179713 821911084 162287057 487753083 339471124 847074196 409960889 453797484 128695045 250793758 631374466 877272023 934615247 972116811 387416188 390371534 322223559 787766710 239253095 740263827 728834496 876506012 376300084 956558750 312156425 492717012 95423699 121306163 242142132 458246911 257920226 690413361 977186292 993944939 210328164 515765741 248658564 351597344 183532735 812649833 255678865 866188388 801401393 835636499 130614631 482796846 261445347 799943291 746250163 977678119 271121851 735315438 237083420 334655027 128993030 324661996 935313470 963804215 233937390 998876036 439948396 610066152 635929655 864012397 358352785 580599738 826664929 848145481 600051065 974676363 14054847 301477794 670327007 761580738 271018418 972997798 36554330 510433455 941621653 964273300 80912803 142029065 369545817 716741299 807247815 823198616 40456059 585119004 613996742 895590469 114428974 454198127 747889626 786029449 233751536 964046245 849431947 862560230 623925384 805382613 300454307 789941845 361084264 476629222 929635957 939873285 722283953 790451741 326125041 976994653 661953063 740192857 905556251 991848003 720677648 842938134 330742167 609224689 126832276 832036695 749954716 811194788 852339255 854213682 217931208 402058205 434963334 991069874 372038782 537899695 334051636 455017626 177204329 694078181 487847878 646544027 712961320 877201770 784300263 979227728 459341726 615723807 280589455 501407150 365402192 637967778 721580700 852893073 158757689 740508093 609856853 823782820 503721709 843158857 135125883 264736004 390196813 827544698 211473979 772957938 468470708 636682020 417245397 960400410 604586560 869209672 77352294 310924778 507993558 746003296 784013431 857529632 506970306 674214039 429785863 936997050 276368879 955666843 506231869 655056643 850729474 858348592 570120740 817147770 413328000 823658117 863356558 975307024 256941748 494879811 986970022 998692407 183228605 401703177 971681718 999819491 494475293 771456481 14387942 869243491 924972682 989237533 760322726 920971622 881424974 905069309 565159533 584201196 706034311 993499841 945014697 974938168 89308420 878791099 855565897 946572589 25837970 906061939 764649699 935913037 273063696 431582713 75851815 661476194 428674623 758127437 57338372 669877418 403914397 618588694 406605615 593527974 957368557 974660054 890004981 975222288 806117723 890873405 753064207 896144932 672419734 889738211 2523739 685920300 322954142 522363205 540938886 869700360 898560822 954331031 988197992 994848024 244948340 939541782 943250415 960072859 827216846 850510192 611335650 925949923 336952041 805678117 52623132 361856803 686563696 954495059 415712604 772827092 741595535 882269152 979472498 995021345 630008801 960911490 689559582 771676717 617768358 853428801 943456609 991880627 911149464 948704453 500069357 817330938 637028912 817474934 23487859 63764316 477811041 596104285 980566090 984527738 661027796 812766849 959089133 977233796 629352108 988712337 763385856 975300378 661268052 849068329 574738011 775326873 920288914 962660739 553776204 891355197 837504276 996551517 772841525 899162625 944982028 946569849 364144438 480319019 888369361 904854139 195414041 231390233 14792666 276067786 552451873 562024295 354908509 582571451 445974452 716249443 537550318 543595003 462223795 607973873 259579742 816495811 292122039 927020063 362895950 778028942 843533168 954811518 452967929 742655350 729762190 731687347 165694634 912194375 661360981 901490799 486558384 795139146 34953352 500347267 18655571 867333806 686046591 928227732 24981283 72117372 225519269 779310236 558495407 821736814 113994943 793990657 990212641 993945282 980653823 993517885 226882033 425033209 529271841 754992125 557471807 631694375 505763161 731043647 916339265 923935677 330572486 682853432 633076996 666108163 900803892 931952443 729730211 881475859 3345884 9535813 43660980 437801617 677277888 682764163 26479927 569400888 167053388 692650298 336715123 569907841 577713253 707607604 166387141 269501544 217255468 449597619 479362251 640953715 451949488 779023713 488504401 694529453 17815219 658761957 962922314 989598650 949227639 980309693 689525632 784768558 788598294 959286694 836584623 993752283 997845636 998857558 190383652 656006448 777331073 787958687 45833025 127669494 656844908 907800058 691484252 731257902 391716690 704506557 503574577 695375368 501416124 938034748 308652970 968757162 311993530 595957127 123312880 624012207 138280218 700191572 72808291 836149696 287385166 443263813 567887672 817325729 796785380 869365132 559301024 899650858 561481525 898170785 6042470 927711149 86214646 758270962 880499975 909377372 789061181 952420267 143041084 862542938 14948960 47210712 545952790 921186418 255590097 967195395 397960776 921870949 558027164 781382652 137763214 455580740 508203449 956819959 289298253 338104781 283774846 365230294 437671828 550592704 670632148 921601077 750851393 958190758 609145674 897316548 856121112 863696671 637147314 664059195 757872582 896358590 247245073 320440671 2876229 641276000 805472338 826492143 638282032 642851394 720008851 780732885 235775389 412606558 623236026 799759553 731320885 986481826 86192690 498947754 917631586 944163462 496229990 496278572 411249690 805870611 824678383 873879722 459134481 783456346 651164365 655239043 957146043 994695688 971697713 995822251 321738904 644549042 966709256 975409261 667486626 917550996 823871507 885880616 996229379 997553253 249919135 970286893 878581724 964958372 521290125 863992344 827823620 853990782 290925121 386819874 286528183 522593779 991229114 994276851 533620725 885014947 364447397 769917588 432097913 704162449 247205619 609726088 460358404 806290220 831934113 845856627 615921174 745523868 221703412 899510228 186080502 904178795 123121904 223929429 249099316 321989977 70149576 262375139 965458547 974571107 317670397 434023851 947713784 984997148 351737088 590758855 474764215 640161762 707989781 870016414 369241722 839773059 335347879 470516196 80598715 722829158 946112273 985938036 295664627 637692645 70813206 511389410 732452498 880845616 762510001 792467599 267448663 354503175 816485328 977443247 977291391 978835551 741851613 773484760 807443260 862302523 107783363 574668357 157399727 345910980 120177763 607492140 320943523 753640669 165560713 432757058 641739745 676897231 864584501 992335097 541759931 802809405 344876883 965004794 817054768 980805542 43457946 543283846 127460596 128216164 164694439 525840432 266454215 507332195 645022008 734967266 219781205 366411997 124998071 137838373 195983706 727246322 222543079 370405173 982911504 997945289 545072633 991643957 131767235 420674033 812000820 970154029 162842618 866518832 528705816 926617043 408497076 816880408 475278059 698255352 721988586 953470594 568956645 899010941 827529286 830878603 110448008 991867379 785505451 861568923 804747028 823450260 450602311 501383082 692491241 884385945 231194121 801932750 179547373 823260267 732438846 783754010 969224532 998944018 672894282 796371758 48058107 900059927 131959980 314163693 330913566 775824336 959411277 970980148 555744426 813433590 765833598 887160284 966055477 984392182 454159996 848581820 769185381 774793091 105989896 360395642 124128241 363542614 284349556 758687470 154368168 387645088 977920853 997611106 752855563 767132468 463758009 529242968 589478306 601444193 612759158 852633183 588194500 761248229 227577319 814760508 108528240 303999668 447960741 978926210 698977496 823475907 111379936 810875442 5731682 377250939 42916842 646592173 113020645 899033296 403635420 511198297 561316024 864656685 816303350 900269013 979793243 982730865 385057827 647158423 624960490 677549017 478981637 568797604 703194966 821633619 318791624 800545570 356261016 717010702 762990611 923241278 987615989 995368923 298520399 318783914 33628973 720902251 184032437 957336243 115724137 936872430 191816732 389738714 260158189 283309042 889061393 974329279 296234513 633532767 392750049 662582429 866778448 919128760 730940426 867548730 832559715 865513695 844488899 914154851 553486751 921430070 499919736 842443799 354357039 624958141 404222571 411741536 171914570 319982330 181126444 966016411 752324307 793113597 492352763 971773577 313650304 756076134 363374039 523470357 877713147 889779957 199118213 697965612 290013019 353982830 506072747 576314951 195380185 592102030 994588081 996374040 607548661 730788950 537587935 577025986 261339133 952557332 774369122 899330331 472750085 583860308 688249826 833586544 497135388 611583275 817987456 867851285 752051174 780196676 486664329 598723462 440804831 996079810 270402125 567282070 992583103 999764884 458792703 633311864 813301240 962159273 714715591 838740456 906800584 982794938 191734994 212812646 673970662 817249200 977242107 977528208 486015508 759384930 185656618 430204863 947505518 965313373 265439980 925019632 732165362 801012347 736566629 880560839 8624176 905176217 116526115 978977485 249547312 866073234 248384397 393466528 88788738 124746467 291183525 635252801 67361372 441451577 754741664 939300089 90321138 174280862 128235647 199332067 989993821 993856511 360485494 784980580 203666071 920860100 961785160 974954059 8359371 282587158 792059998 964925564 561180030 879659704 264322295 689296773 144383358 416828060 404454904 998657039 383685400 600559932 427895293 624095706 988623256 998283876 619973036 662346321 549015826 837962311 240163412 931913169 103017510 881039915 36255063 377028840 787228168 799441509 680978525 811208172 43412742 128433490 412659593 973240853 939119810 957342794 15263868 890038933 457209513 622425131 830767893 925237615 178594073 772144143 604628275 642283190 368571902 698686775 915139177 965153264 994852047 999330386 758405213 935181556 869013122 993058022 837103030 939466336 904577312 926016190 136337535 599053169 478444003 876534332 58482456 527341742 200429667 318484003 15627593 45014671 168183559 315528488 226407433 516560186 327563306 728279347 672807918 930493638 717300397 732873649 797503865 836977213 863832860 924580557 325679423 819262491 802614234 908954337 492609052 817390070 157137378 819012714 181319546 354770565 85834606 348292836 797974775 964666368 518407460 784896532 773006764 926321577 421697969 679182130 271019074 619076621 709418041 937565387 553694898 765126539 632833682 948676849 34747831 346966831 902668288 962093156 852053203 900468480 865522758 933311043 110098114 765054879 88296831 396114456 936255009 971051086 962456304 967064909 10528847 116699435 660847127 701359414 705104434 882677750 952986116 962662084 920756061 953282472 578490827 651831177 571050036 673113314 34139415 590721841 691729732 748690949 318481671 843968553 414919778 544149537 868557264 921708030 432193143 659805429 104019522 812567244 901401292 955655638 730853897 916177947 707291911 788717383 82481392 702778662 434629587 676239479 347522856 800066618 533477004 585158690 646405764 851250337 839286341 908035082 118710612 153562738 697153752 957169519 161281522 997721495 35656651 559709886 109797062 803866980 853462583 906532221 796396957 828645819 486109538 700642292 862645284 973460207 866279876 886319169 480343107 598315571 401639260 437459357 11125631 607912373 982106533 987383153 579775610 850386762 120036565 626532702 422607414 978778958 990473995 998530610 100968809 238558007 394688653 694456889 96795743 324734718 226381362 607594296 599982907 818889198 905751365 943975760 535810309 711280575 208171968 213739395 76963086 512811164 295371863 946978181 168241740 683156040 14521374 465592628 824333269 878956761 398428050 785657463 933642661 990732241 851447279 970686363 238854886 948268628 141516329 956945129 753943927 959244463 682306922 726744712 611965132 907071001 869977319 999364408 911127577 937633327 909968643 995405224 357496055 933726784 4058899 266913128 112790877 940718228 596586695 733121452 539930828 618723696 422083413 459142276 693817165 839794873 17792603 804219335 952389061 976642207 798787766 806176892 281978531 506065404 919294683 994782500 710018284 941995839 85009928 905329241 148954139 957707748 315904003 827669865 653241196 661510315 40064851 669429213 572215701 931329657 537316193 957554262 852794560 931349645 236060870 896997622 719292184 986699481 25365308 380513128 652164771 686302056 681646438 942187653 354143702 654942799 824490992 909246712 948265503 959161581 280577914 425467637 234844514 433969411 125460501 163395397 829877015 916363185 63161814 533820262 162813453 860225043 642360118 663505301 200400136 823951675 371493664 719326573 640878104 778020931 463316851 464032265 363004101 565515143 672433328 898386856 799775467 970284445 739389151 739813908 718370344 951807999 89081059 479410488 582051333 630397473 613349985 992120629 830610834 970892544 424631037 668441517 525925827 729172125 331244788 437003522 270625054 588718204 379387313 822644439 479937134 768283855 57572452 166758179 930321408 985354397 135028061 515462872 108615807 391119225 774513654 983919245 623430154 908697304 854266061 891346624 237765513 555473114 623438593 776696644 409374000 893131695 314429994 744629089 113087946 556565038 71712892 639090500 579945365 775072009 561350427 637921821 483359994 540831073 106680611 814798371 512490187 969031076 628545551 772962575 52383107 56727455 928283355 958633978 421929488 575372869 941652793 979166393 152714793 159816941 83522535 346025041 963621350 978355240 402850762 582236373 92588106 847450882 464661642 768639522 699284950 879377633 234497921 875305604 265980076 643610917 619011291 988693530 924461246 926893261 887710633 946789975 800268418 896848991 316136936 532707305 75171492 441279036 412814245 658288714 170258542 980911307 127675262 140138040 541371202 810754044 600723628 810223391 810141248 911766058 825447836 835141363 145955953 708224515 737602278 755560082 487946076 549756952 906377301 969517523 184068222 876846146 942589388 950743817 951393166 958589036 215527806 706871684 689719258 967628851 440009538 924085427 423415241 466547417 969606400 994788512 779655674 900692473 216712971 510212268 201757634 542580035 945251992 978178471 653849245 869540475 490983617 956333361 8511767 858042334 638201216 954054663 546478866 758144113 28778267 938152319 11605525 526377142 856103040 887849308 835077361 943000111 308007070 732051700 177752514 800173967 730670359 808588102 9520940 382765176 109902392 504964831 304930590 694412097 692214059 940056798 406219305 808580132 751797335 960496152 342590492 789307236 115375477 128359183 971806555 988990970 258383932 481791141 346138669 695488805 360768967 624956946 358939246 447066001 56915889 963843692 946528924 986825160 720691560 773015410 233524069 271559297 913588329 930116503 910401177 988544813 59642162 256732842 914080066 933929383 936230541 959806516 761975477 954587820 523050557 853792614 650094138 825277723 820922453 921193852 754460902 834993386 987445023 998646457 899668304 935526595 454197374 855861199 7395123 112095825 264291312 792152181 366208919 526707787 769350821 792928873 470904377 928997061 241379166 601389590 164444869 985636837 573006682 854131014 296575571 639241964 783172363 918489662 962606910 998220790 251276304 666074564 744108513 842945480 896360775 933335357 14865303 726449026 132186188 510439552 651065499 939899059 777173011 894555897 430747421 667633514 342321086 912243031 755474619 832612603 659506201 687722715 765231278 810869811 743335980 860383598 143968035 501016626 452582987 771923166 457160743 842196149 949473277 956052239 770624949 922884950 157391407 913585489 898319636 900999478 691599933 793485672 442666865 504369233 33435657 709486136 567227056 737492415 362307339 644677499 161718992 755163396 490706712 665126107 801313884 893689007 689110779 716855489 360583058 611368343 434650145 860310350 487564601 632249949 636890411 787753636 590818861 676539962 510361850 853099449 293130739 628034385 751183124 834119833 22793006 471815189 227129006 342208423 780328574 831531474 428820295 513283781 358786087 684734059 297751426 716559617 335964737 585989221 875288032 953520981 715280546 760405423 326836119 961358008 157968115 384787788 926251274 980604034 225331804 850028890 842168606 975085479 342614138 670452616 940497072 971414348 222949860 810775061 673835198 805954545 465778537 713204626 851804933 965787028 669615344 756860683 787700722 951763100 759840903 931208105 586785977 932772546 2976804 820545590 547868641 881724031 122151126 644523599 337748253 937535868 61119891 804569280 587245615 598210794 831050503 916259173 90987087 913715957 134765339 766841373 627123214 701061453 169626545 406998469 416079230 915808410 301115164 421265217 334275625 622075122 737307702 917848324 55001576 355200973 660570750 929611692 307596277 803041336 108065227 724521243 473605312 506557651 243491930 709486272 749273190 764324496 101749359 230556003 884721774 933065980 134524356 458155300 130566463 245156142 629257170 948324307 286830644 442159465 540544556 733432149 565317130 803045909 664843936 948785692 885224105 905942470 117431394 394069921 920365157 954914374 114713463 621914663 679788342 917463257 392646900 783262923 978035002 997480611 396141116 411046096 796371726 973758232 371595416 579946474 396091040 466428360 13178594 874160755 923181834 934147145 800727300 978379677 814053010 953771496 374990659 396828700 189623302 312118871 522769446 580672629 555231038 672838334 481588851 975322526 451173291 501433705 662575474 859262118 937504244 962922207 294048424 921724739 414025525 788558468 376142284 539613588 302186179 933231047 773786451 992413078 845262016 871030365 180758450 605853134 419510345 889245893 994510268 995866938 382349234 829973475 841342442 849396516 335086997 711501276 143038686 437068681 176686145 200933407 771109485 986784091 125977135 418402551 605496283 656855869 210027857 246237863 897736539 985983082 995492119 995737225 463955155 616653026 999138821 999823648 608015236 830132701 211733614 558801585 329977133 980883425 855981116 986819402 398896401 477951841 796339859 812117231 485429488 618697400 491604147 763288604 41496159 613419504 410882623 892942098 413813771 659576588 453974327 593763558 817785380 826669167 480476170 855445190 784401391 904940315 952022395 974053679 842113342 874920431 521616724 863778559 882436062 940591712 468643562 980023625 217387466 742669100 890532146 957867514 731986637 989133018 630750476 857624190 541497880 577041594 70623655 525594760 89394904 846762772 216513024 370197771 455170815 487008705 339043082 684021154 7340521 114728119 91726073 116343935 6627171 822304887 726102218 988990084 878899014 902943105 753460043 811935841 607695623 906015253 872140802 889180977 888357389 948485689 901927419 965911331 250329459 348385413 333390761 682888226 797044050 894487765 226861298 371125780 681570300 704347816 707684780 843972697 536125573 834224213 11163580 533829683 329932832 770486493 961430191 988845786 856400887 998815650 115691720 608489325 494716442 650723197 238265800 676583366 768682219 828288808 641377217 830335813 917455184 982403660 341455256 881163513 711764731 860513307 633469682 940411836 670121692 743154125 315768533 724446262 382260484 536363186 189467801 320023748 995829569 996441813 44268676 74116071 122864363 836792775 202299301 968781909 746754431 871486943 210228477 682854058 126866379 848981388 368737936 797298855 260634441 469252313 755164823 855772049 513498415 884707140 79379716 534423475 329242095 398442895 917307634 983977801 969947115 986686871 931115366 942546058 567846608 594741127 551076906 939874074 755372367 966093201 11985559 632383058 82021776 474083695 160355378 754030092 460126329 916128602 421393601 958972556 36531798 266181304 712021912 840072857 19958161 662898560 402678303 933006881 427606091 445367220 123843815 678085046 84633394 686571663 142760949 239314763 767553385 877549928 226749696 521327719 161679839 209849637 382427507 839121432 225172635 310113193 968074047 978950501 656857023 774410661 847354168 918723375 81870197 998884855 33526174 862669919 590003651 815555578 2495249 671031024 316871392 643077490 87905802 525477959 758630682 986825046 475664135 655534016 87898891 420593447 460056546 560498176 725708120 875433083 660875348 803330415 835025643 976967800 698404368 987411114 100967868 582708764 218228815 818266277 745968762 964492448 53596860 733480501 849801909 867779049 2914354 78865347 729055857 790881983 467535666 558269536 647778485 866112785 312230211 730110107 14367971 669480629 833233479 889028162 241793235 513119082 568920341 620397771 784760616 986540026 691565174 907961750 654974503 934322148 467832884 706274890 238998910 872160590 607187002 707971913 987471351 990278383 589784438 743291131 144321880 208484582 741024113 806467885 110485709 338258366 265644660 908673769 406283545 479267608 509813416 522854295 892626521 911238275 959334101 980413547 710841457 928644804 751672215 781799453 398839274 440379437 817826333 894262428 335655713 792351715 251519261 557160063 437028045 620288953 849722746 933560828 842933581 881852046 885435906 961284078 286055944 691623357 206619488 885147796 833811415 875716975 313247576 810919975 766236424 806804937 216787561 817401325 386263644 502698598 187277529 992587470 53430852 809608363 7147777 177800949 894835675 936286512 442982708 900311353 610338028 676404784 39169541 302069822 434641323 665049866 910280372 964503176 649216046 912804191 82663568 242837873 187921218 548375789 958853585 966378643 263652890 477584791 16074051 546043610 539200355 735929927 98617239 189425437 912586948 944589808 803200435 977521486 461452182 837116401 934293275 973635066 198881975 678586198 675247398 982273627 339278876 820818975 451242259 788190537 524931730 859323482 950908921 966330052 136708764 706402600 54504270 152242418 853150118 953095554 746764614 786880941 360141370 712907266 48116798 647937120 116289764 873097935 203093289 568853702 903319130 912374058 581934326 878902178 993406772 998815953 905476055 997529347 800995625 945023972 331624064 387594053 629991181 744755777 202404841 685419065 505514374 853488916 99061561 853775543 477212584 775015072 42577081 801998627 299220457 496801146 843781778 939315177 89005134 644502180 61817721 884537571 787064934 906031472 543270556 879987813 598825189 790177527 907887811 917513986 157038000 817038249 942978520 994789171 975394421 976629672 282562176 413806412 429286168 721066953 319462309 845114056 634290655 886854462 787408299 951241705 771835484 897154226 408381963 552349065 609971198 805859858 619669798 761349405 656120117 828075620 137286287 976300660 494268521 843505437 690152012 889668340 769451759 919795404 74999624 351242329 353104480 518519846 729273566 918563987 313727868 529628618 187395089 766164633 297008311 390014758 400511511 715417743 76671865 896167140 229222157 547790363 202045758 397839096 409099798 552102265 679426066 720735284 964707804 989773697 706598503 821492426 984877853 989681286 895310039 954724952 716764975 870539311 933816304 994291638 326148352 648996669 475706141 546907147 802590697 858012185 274731692 899250664 114377480 613333722 918359428 932749638 403127652 421180219 308169153 447623983 764679426 875149851 932122555 957434712 121522666 673919478 836857144 982007772 930520121 961903521 80319800 983467541 821717293 885063379 570565072 769628966 973044096 973342835 401468565 449903234 644784688 702345702 721844783 955619564 320101942 577516749 673830333 714696180 61762620 363323820 319370858 371154545 210825789 288714507 127684816 200258192 106406929 533374584 451378453 477096492 714979089 917870728 921781621 935623884 975911676 978365616 838835665 875029175 551473312 646634708 76267111 665741078 717173658 896411107 807589523 911683762 65966106 133934792 965205027 968019466 287098803 531203468 103758047 987114476 594408774 812168515 165962977 917156838 633095470 689106539 666370072 939729636 605615264 706864947 345691588 641954573 190752908 721585677 989302077 994535022 939916143 945582974 695438813 787637341 985445300 989735203 920552936 930150781 689149875 953868324 100381955 352203142 957852069 994082912 194437986 741159100 682786903 960160097 440553821 737116568 183901122 696870947 507765911 555836030 830964832 921698655 962682691 992178285 684781988 848714328 923571555 982133921 726986199 850172638 782549163 786544806 700721190 866185566 355183405 375521358 834085355 879971386 77134619 757378948 221490642 368397841 187637601 986605082 848642304 850135916 268189376 904833456 824461964 923711452 217204418 997619739 137349871 266130486 898150563 932358415 277161818 369003293 348440482 687757525 174399238 431070613 923816776 942347814 491316416 530173482 176060525 186354705 554718467 862622557 754595611 860227191 350915984 624933850 704713992 955211397 761742648 871805023 42449663 120631162 423448457 608260796 867339621 928904299 514994764 528604386 223191091 277609557 593017477 653386934 51989003 406417681 819871395 958911517 55580226 109774097 968497475 978184332 635501043 909567552 909301170 926887062 344402700 706447298 768965171 850928319 985001549 992384087 85285785 747526981 384126384 700969812 217201686 387562158 208041025 926754397 954081016 969789171 832740109 951539830 956039613 972979768 215543615 492719645 145352965 208530039 850059516 999104499 506783545 979489309 406801551 960049618 636414271 668372322 94005846 568362571 804325375 835066833 51071225 134216340 790222107 797827899 7430798 730319697 965159001 966664405 385589258 422901425 968066009 970539067 963546307 963817309 248980013 903289570 708271139 983547747 572757762 952606130 415933231 483493223 261804744 271082771 667926683 855644470 882827043 919679938 815855281 965115519 747928975 926652569 902859299 929342539 310844737 571530495 174814261 480562879 938116379 940172377 405833227 880966011 937270809 999958336 216978796 466810981 453051411 954024693 912354877 994960066 78382350 625209408 777409840 868596227 875611239 903065238 474153107 963765386 824102135 831891066 802417232 950143458 724010512 904009551 341548436 904547010 979637827 995517887 927035894 974623926 243597608 337451556 784806101 969469656 881132070 984211464 292359291 490579338 701679787 959812507 137736834 904153935 409339847 739274744 535997771 637122638 728674364 732527832 599668822 773985235 963110562 999696341 641998449 731166059 710998203 871698115 67063444 325512285 196558095 389173658 382698408 737837623 754551683 958042902 183977458 272050721 883422403 901655160 183865038 221883039 57258112 676784764 700597036 941149088 467971016 952639674 963320116 964491705 786770613 929226315 745383268 820164416 881384941 953008942 120625580 143213586 410830090 518598999 391007314 976604115 96441082 132385240 723781627 751523207 303694382 429287159 386446547 668907379 880281388 987656071 793591004 797732819 280267493 287254597 814789498 918836063 200822208 636340532 570650737 580104101 959850675 990308419 511310624 664318088 238908875 333743946 759396891 891353973 726682715 924325843 924219430 936717408 948194616 974681825 94854528 766454761 513942170 600559698 650709782 726560855 952330113 994484754 446725520 621414334 870085961 925700586 999750585 999781800 884830788 993912317 25322580 430822858 686811000 821926691 179351472 783809547 691289505 951865758 335102224 925659957 154405516 695120818 195417757 473703525 712942966 748946381 607691280 811519741 924655310 935552248 290169978 915971589 386226184 666640288 267847385 415526989 600921399 977368613 174810651 627476642 2466457 605847219 774068375 839522087 556066114 771646877 550462201 771209833 974316103 982900937 193562158 951004354 175678764 333730600 472792747 898953882 577144026 954498061 471508580 973665853 159396195 626738072 949037667 977125969 366769207 443926712 601981965 694527777 811938701 953884989 403470315 713994212 456735125 718886691 989165997 996080640 141912609 466927686 115857287 701549786 40576760 968774343 945846863 995738675 42901590 980595807 917383393 964091058 533852470 993603939 292394105 603917344 302758642 489240911 31715390 496124765 356126183 853866547 914939003 946911897 330202075 585400780 110241302 125565302 150323132 306314850 717537467 996103914 843703426 956269963 407183328 769345689 430459839 821443028 548289621 676515264 634717561 818653515 468202512 625168739 932318681 966430916 182576184 224509729 992730247 997289176 881123179 957361285 448286028 859847592 673202180 894040609 505111062 580230583 245392229 989501428 364616073 843132239 33229676 633596621 919647905 963125544 449343682 525720940 142003054 713184704 744838691 839832013 379068375 379351387 628181925 810614021 41128592 50634737 938891771 973666145 528070210 998719767 798242648 879935512 649752902 806362684 605615001 650569725 501097744 648139898 920047675 938411598 828312364 934085123 729126638 920019372 1713391 226934457 949270101 959334363 594573000 956369046 856407005 886432999 928407465 992662092 496519260 534106958 503692486 756011715 292343283 663263157 509858078 923347467 645489081 868561697 485918648 540663710 354214795 691123093 698859278 707166767 327114017 470667467 909123678 990325775 345780897 368578152 256282095 558060796 868384313 906465285 496596668 941432592 846903323 980576104 66558854 705500941 360190492 726969483 637611523 764227649 59813721 152318600 573473182 659542483 930794216 972873062 71090548 764843623 240230670 435926654 630990049 899249451 122783360 992906734 323616366 550351560 542567363 949519197 502963775 719855934 326561455 904815913 268679643 323007318 446180756 525921576 279585103 839177362 317405696 746973416 852313525 874796229 487733618 716548574 412520443 891812517 371589557 855207582 588362343 781293605 679567373 841135754 984643253 998096331 481852349 496340093 234353553 697068304 633631321 737187811 859783243 979449621 546247978 989675161 46157350 126310114 243794105 942571129 114542181 934200294 114920973 370602628 43517555 277784587 134485504 909913080 391287939 963120520 316554951 908170062 559755926 741104967 607159970 923245237 567695639 794446229 361931103 899068160 268808760 787257679 938933364 963734154 226808614 419253766 318320898 738012263 271020785 568484234 167448946 358516193 903141651 975421097 947143308 964338888 789186665 944602522 137068846 911201256 577730298 630713362 364934274 427273187 380876270 816221691 191748934 232419495 915158223 929366451 607138547 748120340 488228485 818398771 695481403 983452582 750117285 939818770 150641691 486816177 243378442 770906444 649591225 913514968 757565038 811898125 717937152 734013592 514455159 931302482 910645448 979403702 406352672 857169663 721056974 942486899 405511498 852698069 201499962 871076778 945643011 957390398 720973855 769636183 454142918 739869427 360603229 878231574 794647288 959718250 377987381 488057484 78975309 338212343 302161596 310147132 406992094 519512602 298388958 697105693 729234199 883500122 894099882 975901905 831597314 923848755 422778419 563467543 983334670 998710155 191989899 493208605 307383668 521211946 300589149 348704203 265857789 965799634 903880040 989291478 712048478 979025199 201249240 960905716 765567812 836315245 836831259 977043335 515405243 823813161 45582380 574643606 616809849 626930604 84295396 493898891 304826024 858517646 640395586 896803359 910510956 934152479 848675932 982348137 926217510 983581953 26663937 658728458 277759619 915955760 978439656 983287659 497191530 959503191 910006819 932085062 214935063 342820936 370920426 872292266 653041945 860669980 886329420 954844851 616274548 631157608 387579322 805841801 261203776 568850170 987260258 998076424 8016612 443853040 2314614 6335437 301562879 946355232 95732135 299472154 475842872 508888955 360308977 708223511 414090514 417075595 95920748 203888523 46262293 906606836 736010734 980900765 904877241 934722628 430868101 808056320 246035413 617730586 148452661 679315756 580663212 728784986 711606340 912321015 955572456 994650846 120819843 779321519 593433568 596177905 952372323 989402073 322093371 956242302 726939861 926431363 982582554 998588038 984752521 987689835 766148914 834744295 758298365 952445324 96640424 546806487 524979812 994338977 931992754 969004727 654127449 970219567 696558594 790143290 880456279 910344236 562152443 704939291 797091952 881144352 649819580 939916017 761448234 899597673 873809025 924644694 148276515 229179068 610427936 885316886 139023560 576741148 927485182 965630197 752469996 961167976 507896801 950373206 485842956 658207826 800164198 810242824 648061763 904183962 619912152 712168054 865915731 926903731 813977209 831768106 372185692 556909741 81156463 389881938 58591058 354178765 679030396 737690032 673370879 713574206 768369017 869951060 767187621 875719724 631112087 641434342 473903396 628235902 51737932 296070823 955553275 961109476 224784116 570283050 639428195 826040592 971407392 992773216 254666028 554647718 196205829 568697325 580786954 979812723 44361480 474772701 665310087 668785352 211525408 529872538 502652412 567924615 518057668 561911788 876057044 913030533 292147549 668350837 463014931 907472399 4320435 257702218 211486442 942145157 174258211 788843133 344712098 971837977 972448857 994228173 667224992 947553664 50060211 354892268 685112545 814751436 792964088 969969025 307173858 925315147 875120403 924490912 946039185 962390061 798324392 850532766 61588751 893699930 679994321 885341703 724288191 980082585 791745518 945161270 237689940 270362146 18231405 702694010 365271725 887468687 142839470 282307341 517981986 802547161 692997790 709380167 934144939 984443908 883726426 913800529 895077180 918709489 489297956 640577647 498996592 959159601 949475905 967823683 557756117 961483772 54104014 830178785 654491604 744219445 68206519 949217445 863895268 879229870 940655938 982361970 656950994 704725845 287997869 644292400 358912798 845796724 769559512 949842809 276348591 302694618 601939816 724390407 240442277 689446221 615855871 629679433 214720100 523703297 778791645 981470512 381108613 466585523 33879221 613020190 112588552 864241083 814585300 896085344 505522570 791859210 91313797 355554211 977475484 991381753 255304427 283725197 595817920 838676548 749805128 751398815 963284786 970214914 699973813 882870345 779311381 801967787 490905295 642676702 922612096 981755346 79330334 388972505 903078470 998164730 889417150 990870053 577664101 705942557 297356370 820016872 472382952 537924761 234228502 702048521 69871111 885007448 276458818 345675186 658977087 810130704 434870371 794706733 694390312 960639476 926290510 946459229 612605717 626359696 633146061 686660503 86860212 942919005 310972090 672654125 916534194 978512280 200585140 263317115 248957248 998151864 584383388 936475877 353392823 527215840 229353862 575821970 763536537 985168424 608044930 992018201 58953698 546563844 165300131 380119457 396878117 534850126 410109731 698767787 228475754 500175137 519056258 603213968 612971485 737165366 964587668 965133087 541873692 983910721 908019152 958503988 273771730 687267486 717109932 855022118 485480538 605616773 324171829 575719727 251365086 415951188 838161956 883697450 539446947 673419633 832877389 933873906 261649918 698654896 610211666 917776771 249703327 659600668 548021803 863909394 833055292 957423925 193531834 727444462 952608083 983510823 538455598 716395498 109145548 973422982 846815911 925433692 847955221 848731063 494140460 507369669 778266418 964947046 813662576 968250859 848996862 889596553 293165872 741034731 123635760 995570194 333839081 859406901 240227902 281438171 505761539 576503991 535081994 733966760 507409520 604066562 37936637 188898041 624572368 884956805 23337279 503805005 253997727 657877640 12000502 836667824 380521619 382457817 771391667 865420058 449142009 675260405 838415392 987631017 978262444 985362385 391545396 648371227 387634425 633583268 623265048 904631319 959983210 968236012 229598699 731283409 320026121 355708116 883550370 914937469 447066569 571629987 458892860 893870792 149538603 878031220 472194276 956068268 821710556 964257470 668339102 921252053 574689738 678158723 766326570 986929464 979817414 986212382 948790244 980018647 246569059 865571093 855895694 877710103 211791640 606938319 799398484 823333757 212367239 753536974 823782081 980554700 646421580 853506662 166154492 761495313 151712934 322305241 761372724 821193973 776033676 789818322 641501521 816719413 74380812 334670444 832521109 999095418 570990444 706701094 487488859 999737787 412233223 598989560 489777456 992935966 106289957 610819603 634559742 662195073 27683299 191813316 138274750 189432472 12703732 308832575 784543923 944885595 7592814 762677109 809195574 861858165 686319566 899747073 212717056 926611547 318913901 623927221 123974347 690495017 844178553 857146992 471930441 610235648 443733741 500935758 399059148 873175064 737957829 759286443 610265983 815323290 815102553 868087224 387775527 638454591 986549462 987704492 579714898 874769286 184391639 526097789 460840255 773150426 812723349 880230645 413345952 797258498 620462362 878237120 31051123 346270182 399303866 433468013 870387509 881296401 808249216 862384512 552821638 653480156 788850378 905071396 381165994 883824864 242336612 750981627 564154136 584489435 980598174 985676542 750900793 885227171 838853262 901399778 224797445 942647046 744532970 988186738 794037327 796548705 369797478 869559557 13143503 719402203 265322837 522935655 57709404 336349026 348152670 517599823 826093826 911657289 510788144 905528353 662254915 968420504 971394325 996081449 384239079 484554280 541002176 858097744 256312735 884414554 926831119 926890726 884262840 927658945 906371494 943007074 41836188 930986739 173038031 609104747 622205497 841654101 928645675 929837680 332902006 512400487 663068074 812331080 55306422 479232520 260173736 750367005 656656934 680771920 896026227 926305756 77072568 219389701 738135938 965674829 236642640 808876070 222168790 707927353 642297299 875651586 40149961 257095160 58938955 623530647 290269066 652929768 108575144 527468214 321448614 689667297 753524994 867102681 653560499 665956495 350402190 892947037 927677232 954714865 200987535 943574871 563918948 873277144 928120085 980268286 442037826 535850994 452812591 843955702 731311546 941137327 65447005 318213462 949063454 949930320 500000520 862710972 255422057 751222799 288228564 307241964 610218587 869189700 643841603 716221226 312385116 634015471 198779598 288460983 270768151 290310305 406314264 589510467 201357734 838517152 195582654 466636282 263442472 523300401 179530663 442892067 541123374 839063408 55918092 662734232 804770223 859970096 696562471 888205555 334220788 958996467 758648398 900065393 868898807 913065359 205270993 605232470 292297285 537428862 249188815 632778417 713167090 925901263 843486497 980655557 369495238 820228064 40391484 236135203 700970380 912955886 365939614 799407998 35650056 497281274 322943895 330841521 967272550 967600816 292470600 399065642 629004313 946990726 384588945 974508216 235987351 891509816 896493956 991869220 955486056 990271178 909712632 934039752 520924774 522964167 451143535 970230809 408297053 756568331 475973091 750247450 214632839 387150070 594268513 686062765 806487720 817682844 929750682 976647726 842100664 924454434 90135483 95801911 450013663 931648588 723721038 917865968 52473249 287003061 245336841 642181757 102811309 412877308 159898064 293986298 522360959 957034213 479092952 796279870 431944440 766047859 855543016 923500419 631245821 671890798 983514511 984268722 596246921 980823257 78384440 507969258 604095717 997303497 885190672 991757811 654463867 891952950 574232527 897322463 725423333 912640023 187217381 463190603 749245440 928840847 575875418 991155541 712676915 898084034 295977390 886060590 442491495 815755641 247047987 751010667 482877102 489111241 926451028 967114329 501984646 636705906 599728000 718473900 610323431 646484375 343384129 435691297 886802828 920258424 437262799 555217291 645292258 979650570 154458652 374422507 456471388 990496042 459855206 586846666 643362552 851536132 225807915 906844319 599863395 609048320 500215932 975599594 285267466 613136649 595412066 827237216 58801091 100795864 15503763 296302377 237270673 869109339 596220658 833409864 935351494 981724767 2503515 179705615 291177725 975562564 971803094 990456368 61126021 185204878 226928398 760702353 193088388 353526367 867502231 877409912 104626910 851188148 181406151 825868343 595508481 762942952 183466697 684560184 506974562 945877339 816759683 859856607 82470067 144840258 951795473 993693542 871207581 982101495 172901638 365670168 544168773 734179498 522882821 962240458 103017372 537787463 58345183 847568383 897811827 909801600 946864098 971574494 110967956 771567700 20653819 418149022 616784162 753010943 612639153 678663869 526132255 786425404 839104455 903629959 608157342 836048785 914850247 934627230 286660456 445147460 614369031 699209351 529043251 967598891 111808861 436152842 793118648 802135232 519081855 840592147 629215856 756949331 999297488 999318225 701211181 720143918 494678943 584551011 997961314 999642688 493608604 536995662 320305030 517123194 863633260 894017747 58240584 438802016 708740258 995071861 591183178 595945703 261196090 431350253 891016445 891378969 285910599 712930542 271251457 751770282 557111507 730217965 135249251 263099113 383069417 872052172 763181062 847730406 630705203 829714492 244075306 705289590 452421874 836591319 36258294 266217207 682350272 858565775 587019058 686053624 105728981 523167073 525629546 646707394 366726414 654823589 481257810 522611251 596792706 890849197 39632207 699119625 19280681 160731413 548229170 884383210 44516912 733074828 227109923 448099639 90582984 225330881 508182250 786286539 900202555 938289092 443386127 642304028 178074743 834987632 937169034 952723540 737008752 825364046 313124409 736767955 215550606 347420715 59979802 916084738 550229346 772822361 208875810 646352251 660009219 914708879 959953663 989367252 945208300 995559949 216628499 756010686 419317254 805763445 771973982 974243689 995774277 997441184 911312396 935545108 203617758 518616990 893664620 999344713 192478525 542740501 218220991 726476135 220882679 274498808 230191091 381573889 975076173 984998080 310003028 382117557 786692586 955908576 424315080 771147281 952709681 990637025 182859981 271936330 170943893 714658479 109044082 200186964 866044975 868414866 962277461 981505533 400979035 687676072 913224467 920442546 836539110 847214961 718483733 852346904 278133482 538698261 215462093 924716027 258605443 899189507 796908777 813545363 244418945 606555551 155660760 823873994 573001961 733373474 842936360 859023011 397668396 552596372 122903391 790737320 597474232 804437654 97746056 558571787 842830033 876679610 625819871 802073439 10341567 115262894 389243042 980256275 339959315 766680086 595363402 940042136 694233900 732901135 926511533 947768439 148235273 167659522 54469785 789338088 337575084 989762285 25340971 992669097 309456192 501081758 255891019 438615299 43404024 730436444 532701056 570426317 566662152 686929889 698550802 961405331 105844188 405317409 932776540 973436726 625157146 656575268 817120117 950777122 374133613 535226624 892163920 942011425 958384497 983649487 231309026 563665229 984365349 986692526 98078767 366903494 256598785 961279654 886912752 914322300 916157445 981616901 275990574 796728843 541943631 577638289 575826424 769865819 539177931 979729034 51993059 478001743 739570647 816869083 994188701 998368093 416941619 845772027 951946220 969449634 774273144 830013396 86694716 673631491 971944212 989768164 127652180 513335322 692334058 988090642 320633781 848627063 530596566 886933574 403514275 991887722 355647504 813794075 277285439 992428228 471158741 861593737 219189119 445482872 336166395 689781151 321217322 559725228 681143207 701056596 810627430 861751875 902316715 959342248 622848796 703170426 282244823 578795811 453656573 474298972 13877263 801628230 966659607 976704737 953058054 981668437 953617741 967802961 155646676 734461418 847449025 912195923 210720253 670887110 497051253 608323632 641598330 815320863 716121219 959649291 549619571 773088207 455244549 655915896 484481197 853985991 555724940 801923676 581711 314656319 677237949 708989314 281079626 382881509 834576016 974356692 898768794 936598541 502333975 731646760 668963530 906772687 461048065 942317930 925742746 983216274 220551430 632556600 290210532 343170759 153394405 640946859 24469842 564780480 937891197 943109634 595410260 944278748 252829498 826409380 891170947 972194336 409524829 615620177 982602146 983759803 830063020 933548869 845204374 961101718 369069633 662631684 283554300 977019885 170759800 312498897 974075463 977403941 287100408 937748078 818555307 904158536 211234821 330489067 10209561 923618176 844561411 994788023 125379740 281742001 638799063 893198332 113784245 603086943 769019277 996608823 403277389 559562596 162966410 889880913 243814987 824654634 349226618 769610470 421703963 712023151 416518015 949900967 140758402 222176518 989357590 996512620 203425387 294778078 36894946 568865417 173089713 455539139 484022024 993519674 146205671 461583355 139717644 850588616 410974717 771158122 820099726 973837626 702204333 710875452 409722690 859358042 423954347 590120878 439706076 708412109 478892347 708206564 801405988 941392977 79624105 900668443 717996149 899722322 101160340 727239502 777586397 805901742 132176413 286669529 940026950 973395849 711814480 874923164 336490016 810784362 234474510 961789538 310137522 955631737 993736158 998569240 680187019 860507561 474116937 522385617 279455108 639675923 727212588 947766158 338587917 393782425 473514705 952462031 364796476 953906556 554688309 586192511 526483842 768340732 598715637 998687344 454920424 869554163 37852999 683198236 241936143 258989072 79963763 239936967 867472094 963598614 341883350 541007561 413464016 603643345 150224635 483556870 524598870 801299436 360317204 590617554 542644037 546879844 589081453 958635904 302838847 893236319 32447900 744129869 203412670 526908854 736412117 964638541 992034259 995142408 247639192 477877282 756414279 902618415 193541312 281397890 325706167 592924394 714909952 947023010 943949492 968703562 47379333 627614856 961714711 969799218 989534897 990985362 432914232 674066935 198915095 780779210 145594276 608467342 727141692 762793695 154631936 435332278 139717173 151358009 53885418 568200116 971096129 976491142 27185392 620104406 343934190 409969158 832361277 953320850 757622688 989766204 879757664 984150846 544066248 771642468 252133458 317657495 982236397 990473864 955128270 978580903 774378023 980730638 351979895 758690484 461237767 508836174 120688561 527006511 842929218 931679322 261689172 829726616 180635133 219955699 716733950 806121989 105271380 244563761 855874308 997050377 479125507 886054595 198475616 573958405 761515089 794122041 670310829 971433956 792342046 915585168 380071007 978775981 634698679 951912657 123075899 144140517 417437734 770837499 719811564 958598920 406382967 571739689 612529340 816064810 595234287 700941659 597397066 754389095 112431362 179031988 284325326 900092434 983739226 986453044 29350267 156708483 354248549 975490161 501702680 613453120 905182456 939276413 462939339 582295338 923886705 991971101 998823198 999042816 96552593 452252818 776617347 875042071 30682376 597753361 685185965 963912865 304378249 517358892 791173322 942798535 463109160 583248151 403687752 913979513 527783555 879509408 352792990 918512545 923814712 940476760 502316935 637175065 108869449 498799144 104958329 901415868 22116932 756999439 852760101 937966020 69320840 127576552 70544010 484413289 684706627 789751740 193635188 481556101 795372070 899560557 801772835 970509505 181735927 915728164 418390093 643367731 477924188 999452244 494059342 528702009 662026698 673463327 109886632 220233687 921622986 942398568 791551598 897692644 848521078 953821786 76207175 372933965 694435250 784550097 814310230 989064773 104019663 768797845 382247849 551544367 100260935 691921983 429042016 654090175 533717144 753899176 434164948 847059597 356585062 364673172 30957520 657297215 121548457 448809257 39171819 860400870 53027228 215989244 938250517 994962773 118746298 537364122 855151926 992065515 723502781 907080817 993881459 999890574 672377759 913455968 104961685 601181575 402842173 687741782 931731821 947132937 216116018 451288107 75693828 160894401 156121204 469070326 757447136 829975427 659674580 802928915 809739614 959295901 265053283 969823004 166286628 728118754 153461365 666230408 456400360 755083820 404217610 672632399 963992570 988751470 598852878 990648604 444666622 881314248 953328551 989503184 600981503 964612585 551802291 997937031 532398239 662346066 787374026 992957529 257297581 505875996 400200912 901328773 433250405 540192383 253011947 978418147 964859496 972135433 905689756 991961760 678309054 770107298 176186436 885433726 93062138 812827836 601110024 737007898 347072667 557173182 973945164 975974162 977124772 979143581 500364690 874474408 595099608 627406435 827477676 903806037 299572780 423385621 399964602 591290878 465112003 729152356 147561073 428140421 334277536 901344017 207603299 495307265 140299514 679161468 109778483 531067561 144399696 919171340 846848953 962968216 923569515 927020028 741101334 924359531 582423207 763595836 730304047 904011295 289897522 580008090 417059754 679045859 961349387 985704132 677047646 764247049 561438358 816110390 340856120 517647862 991985273 993659195 748181805 866109382 523090660 578472557 703226505 946328723 306486301 424488612 23870919 100602448 883092225 952619859 527045795 829785524 912983870 956946856 523967012 967197320 425719388 940724040 725123616 876901538 336180284 681996407 785389081 786262445 30166606 633394746 404322282 540270297 878248374 982514790 978058898 984877101 753597901 858408901 24718587 873028218 552698509 825931432 618480435 795206057 778794385 911854758 573858638 740302877 333163245 352237142 250748230 561705855 449859553 854243337 450251271 619858908 224245638 852404242 200866569 546979503 332663176 678404859 390868040 854693564 591359230 943285468 699082502 718395812 729133664 765396521 727052201 820555343 333721704 866323303 400432085 461800680 672598603 718960560 643623818 853414275 705223163 788310387 319044709 879208374 631568260 655299488 187490875 846727008 351434489 577399787 43973042 912822312 299428206 506211624 104402018 389428170 263058454 615631356 315983507 939396297 907504249 988483355 659276105 762336003 736622638 801543079 974421931 981705825 873631216 994561980 68035826 953105513 587548874 769485647 409028952 707393817 611193059 720277668 850771076 929410350 762987857 997076105 862989228 872750748 211490890 528772416 566807934 975682197 666665727 895895761 551365901 669332896 966863260 974747445 1189208 132378869 510680738 728816681 318041559 612778401 852928551 908645313 998253281 999515302 992902267 995873433 732377139 900262643 916180717 932533228 516938459 578919089 588562408 734676569 711344687 846312089 88357137 977175653 974776591 993387389 823765334 930183457 783542464 828124697 65992939 255658242 375627352 569160055 529011293 772268281 733832927 841628527 110786513 319278916 857853050 951437189 125530732 534067730 126950565 772342257 522073619 702023177 674099030 748640938 644098841 965471379 450367639 853166362 262452197 518186094 641088807 687728597 496704665 973405278 816769062 817958666 724225311 860135711 552258418 803680863 857299644 974724718 826188706 842813752 401234941 459141577 549026113 690285449 6042376 865282801 382941271 622992925 491125935 619496928 226069954 285526225 129258931 667034198 690835377 726183015 965611863 983523523 461946142 812894883 477943008 648263082 624191341 898520918 298268268 467804533 616460311 771430012 21222120 644891294 607285656 983759658 504699281 772671675 496162271 914818317 640290086 895532441 977489067 990767507 734070140 804867792 521620276 553792495 566796502 920006975 20952599 776082022 687908394 884540340 512261303 529370350 11009171 285005726 338930654 405365935 478814050 610969644 321220957 731666299 713345534 787678810 121521177 219750581 325182145 677072005 432215475 613384306 322063229 657229735 610288514 814931900 431255277 894837413 110245849 914221970 453810984 533951092 382563998 756600456 49095012 344799413 119047652 484996825 12767983 937703332 839465512 850362066 625110558 896730066 594673467 709586089 388480243 608682955 529783642 886202509 149378261 601149638 120892369 631056490 594219292 837998867 716065179 781898897 651848157 907091620 792468520 871695103 307807364 626827471 885565547 936914379 323191793 900273422 113814580 689968926 859356785 948636025 286585049 319245449 403337090 809718898 485026950 947440657 486299844 829734280 350826471 638974950 629758441 874909033 183981890 408239713 166735505 961145927 384402359 583543090 285705657 592994970 409353119 788104930 337479019 576289119 517765455 783752964 776170286 997348669 394542879 787667448 377459882 657583911 714602741 824428950 353352039 853494762 910938476 933696323 352003297 373932295 595780384 687488970 651719145 766113914 885520807 960958891 623874234 909678181 270399732 612143727 640830486 676341812 415351253 715814123 96786253 511214503 464314365 614205909 674717440 813120276 901285926 957298685 784160076 949608464 154296323 324782975 812481439 929448469 690605201 880873132 512200882 621305961 253668437 309277662 579803503 978492754 356897769 615253671 604395894 757519568 656028749 976817690 634533083 754091674 489563654 604574897 509981417 631846840 582684259 699737298 931711122 953079832 884388225 920634511 548505849 595528053 515415725 691889093 339862158 518676852 948896718 972628977 680174174 771204262 37456985 843202877 378907517 846275100 720606948 923019176 568848171 829278393 91790538 420399122 101701362 908606475 584011652 696638350 486954200 685600882 385355932 942751445 192459543 614871562 425495782 997726076 30311052 217418772 88046247 735269461 820823112 945309580 31289986 550348989 43518532 790952761 404902722 797495580 769199376 951085807 286991251 937927183 32233108 37612896 680152160 787226701 121558328 842729490 936499102 955289504 281305763 408752355 273271190 472955373 676208726 779506731 893871697 936528045 477978999 973849924 872081645 899630207 384673636 479663437 567662307 583727014 167208245 513891331 652827170 930171360 984630429 993026387 773358405 963284257 93229895 751974448 738079842 826290558 446152092 583451283 840554243 888040200 214485697 675769529 425452242 877406987 220445714 937752702 981914642 989487204 900389537 908624905 202127662 655411574 515504653 599900341 108913657 680453740 412452458 516394997 739369454 940357357 932793536 962784691 979507468 988678154 223774175 322739620 753021126 972898067 93189231 812627517 865066967 991601671 364531122 415367942 304257728 729620774 504172017 623821393 441886082 790365351 44967737 281452093 186393132 660737515 468347207 524735947 365987449 402560970 879561987 879630967 642750655 875685682 935974233 994960107 526329745 732794435 264846379 794978224 807351493 938142611 840290256 883065478 525085186 816502501 870975585 946864717 736721456 945768156 174368216 693904349 943889303 976482643 973701456 994840391 335431540 598857966 241364119 287403320 482176964 702620758 245989108 984059633 736965134 938715137 440884046 649210663 358598019 994106502 191043338 224466666 77717108 569319594 588641341 958509822 154743458 429654832 911916100 978375167 916224131 966333861 209878455 411572649 769435471 796598149 99220126 171158594 585513551 637105986 811306742 877567449 705809107 863570832 430586567 685804396 565824151 802333159 971796128 984869575 994342769 997232591 534752667 942646609 700905255 803671333 20033150 654751975 81861495 707497332 740023689 917735167 936781539 974853640 43721483 632742266 587062014 723332206 105372401 775921691 394338001 800051564 226946650 276449617 894056065 949948977 166489762 912480208 6399200 670590327 327106932 792719329 159007910 328891481 75139258 115897910 100549799 172702247 2533961 119352713 266614659 852243277 307089426 685036489 890481865 977414361 62336084 892227644 891866863 927923824 479261023 716862286 746539955 934061774 251170645 484227191 107255785 855046872 217901604 944959438 858277807 976005688 452125468 835501737 69488653 364851586 719203609 797582817 436814662 448580536 14512865 695689022 768512588 951035041 643378044 817432857 285630942 465309684 389115343 763427430 787772291 986729742 986662671 991600075 166287540 756022140 556738301 757767915 959214133 968427631 489606050 719758629 246820495 324265070 21574234 861240381 595914003 767117364 224427897 782761714 936891425 991377321 891993481 962857892 42697303 948716101 759734443 873256125 5766943 268775976 216252600 957707113 787330032 835560889 42057381 937103392 735943277 945455009 426210027 717360248 716217702 836987981 325287891 672617420 901696231 961104125 372047370 573495948 862915389 998800992 639197648 932876519 673338383 716830423 129175799 546603762 813652618 926335820 441881692 931853331 108428179 509429616 724868576 955577615 626635077 945781340 467449199 625197220 240457867 540633973 783300908 821770787 610002607 981304627 588925388 647262604 144178581 505695026 547839996 795717163 62751648 861307634 171953484 826468604 991843621 992951864 148745744 615573019 917865300 982393648 235585752 808207891 541698609 751834415 442005816 897122892 601612457 705719022 397914656 971018659 309966296 407918005 871212031 940522353 53704786 243521793 723550377 908598411 705414121 851033720 143486577 526325333 834866871 900711316 996359309 997656014 525703500 817536965 154832344 436837102 82937140 225914980 489047210 687169428 386600779 647068769 959321220 989855413 132731452 707174560 807370938 940136193 927283157 984692715 117349961 945160108 749974725 998969129 9485815 147373425 625895710 843551598 445561223 940857059 197536580 623199307 284016955 471224915 183589170 471124031 797063097 858920777 546960065 611103653 946874354 994707234 613448913 624230444 193636847 842200764 273592426 294390963 969302283 993409316 755762446 853609272 854266282 901457364 940742749 987162027 872757800 970415654 840207522 902285336 880443739 899311123 822659115 846168066 540790476 973947615 545177406 677564750 523011210 790379659 217532995 523889299 916502316 991977740 208390792 870085108 730826335 965764786 623264765 901838583 16226560 596624043 201178937 881363706 949978158 967426683 906338663 945175337 642992000 727843954 336259996 935550180 228778657 333792221 299953189 313941843 176431283 185924954 157967009 347227500 106198668 400113733 165974564 678042079 111677798 879146080 966186364 984630083 23358616 505460320 76224675 994367552 162990429 262642213 277260888 402771862 789825419 913250949 797039514 917999132 317897654 592407706 70791728 873803186 692979572 697632381 244648180 958432942 859433531 890937664 432102279 688527904 973364216 979505137 579305541 703095489 851953495 912741792 474745444 648122254 858930619 878278813 384151221 433082807 542115718 608172179 795429424 998558200 537282374 957672186 877381379 884534283 78028224 285218876 197170319 895234484 923223431 969984372 870751340 931357914 22246120 240932804 396450439 472860865 336923824 654374035 242158029 827542218 114693298 727210890 563012389 971687310 698785998 925977788 49853651 391186038 641136331 921105690 209296289 903031804 305052108 845340798 339929941 679599789 829262 298767808 172165927 243198372 221098323 379292240 537033315 657644041 727005454 869961180 385955771 573341902 711471719 946433433 250004545 771746381 339816919 421647856 592657723 838429387 82014662 609604513 923377111 934094894 709230925 728717776 612115991 861625577 951208143 966206328 878784352 974950593 593663339 595804605 603452841 911205534 121662478 386540994 60390317 826434520 155455357 314415407 477013481 994230333 292120414 866764925 529425437 717025900 908769467 967119810 623694705 830875729 610908211 933989886 393632761 602684155 240472418 668709208 297925823 391129522 705811138 895496824 983097530 985272005 989965924 995535070 898737926 962517155 460493597 941404365 673607025 986559349 282040266 871228155 204108420 388389385 274946499 999371270 604815199 798249609 342754996 636631839 504415544 734362136 863725771 894262345 984238991 991237123 978938451 981518926 568865277 791952672 29749990 783322646 716543658 813866651 894964298 925547839 626861886 850595801 70337568 688691309 596317076 774744269 367542989 370475106 766649561 966621052 84088149 582312624 5842906 121809578 991181948 998229330 367175841 926471849 727913822 896203715 135050082 155485287 834829546 878522488 74376454 407277571 881935786 958554986 42049023 102824807 644797238 753339144 336948373 692916391 86386515 293939613 580883314 595088026 429916571 939401505 714793772 952552290 932362209 983527517 828128753 970612996 713212802 922387145 584456639 886875846 386971916 433065646 262267644 568231686 894892809 902656069 616027532 878252978 294689916 614586010 935765810 950436512 64667998 359869390 864036870 926820045 318761366 801228316 73394372 909718127 828542419 888830830 43761879 161866089 416594577 498289604 942552814 958675695 113870983 743278561 715351553 789220904 936165007 997749893 101320726 840146694 84097042 896387652 822379758 897716671 585569628 810081925 967602053 981614671 502736483 836989124 696875066 939289769 75254145 419743246 368758174 715196723 159330271 853393508 813010240 921313772 628758908 794852644 568422853 578344717 486848098 873116997 848913934 965250563 298385458 427567741 915741648 971666209 382916114 612709324 284759559 731530619 270554136 564586352 341153062 355937776 151675259 633039823 435994127 548408283 788939855 939611273 509889992 693094184 510098605 695287141 588979549 961943380 938072152 958469903 920288821 966945633 601033157 606174636 148204138 526234862 647999850 917832767 1143585 184892887 380460145 979886122 306499780 732117001 281517441 967044883 486544672 505686174 208078578 913379499 278037041 700183993 81259615 927588515 28191248 110445884 908207908 931266126 231326381 818904683 698894040 732739055 922309765 964373247 94828329 585986799 799757601 996274171 962582027 990985204 860090193 863314899 354313349 420823903 105063041 224707574 380314046 576773311 685642375 871757274 611870760 656274610 529052714 708853682 738530541 797556570 158938951 711954621 704862367 950613758 462127773 693954248 46228538 380863978 947209599 954973552 481496438 707251235 663285696 686570126 638800426 646670057 441510614 956551728 696438359 969037976 587507621 866373935 171069567 752566170 793123591 962106343 795895142 902678792 783359276 859029927 154981123 834993002 724541851 798776351 375914754 646361084 753286623 901388012 730435135 895830913 20691476 79737680 223919170 783819617 765171672 869205648 106159976 618419596 389727355 436695642 412620311 643826136 427459438 672456298 704602350 789884468 617855851 778899919 640601048 945032386 206416649 544901282 853664537 912132758 915729365 964183125 427232668 989554397 663518998 979220176 983076378 995383598 647813672 710694314 430635738 781790913 456188240 517121894 813642722 906695480 819246467 906246470 584915675 981104394 342408484 606656352 47280982 230900924 644690712 972307193 239407271 742348003 65647324 735562558 120106577 494459165 278773015 914045483 82141042 472708692 294992139 978817279 972197137 979648120 826170871 949152710 271253760 428992135 222879963 688772740 679811792 995806534 243069178 937459326 867298324 893981337 399282478 684855996 742616003 953366612 927419240 964574560 34093810 203140861 420546444 850966891 941285300 946925617 899580855 923893417 814483880 828501644 998907904 999224095 146183646 146765775 1541795 492439799 103326049 454853634 33945398 711137726 73097859 866830542 422397516 766374069 71847785 502739483 529621988 810962788 158211989 984628079 747913017 958371104 495711140 517630650 814286232 877943941 281993215 819557240 257784819 633321579 129258387 999110721 283270405 428104280 371228360 394901181 250376323 808875369 454962715 676173815 887511432 890901701 879243816 886118817 884476107 977635892 655530448 852414569 60080073 904804938 78994110 809519093 650215401 726795524 882399484 929412062 59360983 807903505 878653258 991520043 264707585 978366803 69795780 743275509 325848661 453586095 260448235 863769374 657490987 930374693 908560304 997999838 309051512 342858244 642670802 834403466 564726856 990251426 123683083 343273315 941473659 976720836 756861675 900827068 501624552 578206195 352266458 893058983 506789750 785636307 598604571 786426942 131811752 880211756 495224385 902980409 344432491 652709531 844684906 981127389 977050502 989528990 971906800 978179570 316134916 475531392 140814913 318826652 449483924 709588150 446395711 870652121 42591761 813508333 168424961 636633627 1369039 463774112 444052258 981803605 752950465 936105990 479349424 955221430 585411760 693492397 583633122 853211047 609415064 963941954 95241106 977146366 910432165 949269723 414085957 899679679 405993500 782071414 373254013 845089562 663562395 671752066 99040729 420101213 499223382 759560626 707655450 898043798 886420175 940703982 562508677 887436354 206025024 304679197 833199422 881346079 853494760 955624853 348717857 380656569 913288486 957157427 528447027 893212811 101274206 811142641 592060093 988600481 155673433 554804322 32384259 870515383 325417700 536787241 774495713 880112382 37237109 126822664 7739673 696117211 684766215 856357271 893710166 944054711 285770515 433148113 595469880 651144783 276440090 962328121 303647294 334238704 286921288 300660704 265944864 899821834 361861431 666800093 109450058 223012752 568516360 866074444 524872289 805270363 309254614 972965949 227594059 532699330 216275865 236461224 839215566 846946769 290986140 723144331 430498597 725022216 155353756 816857996 184082686 454145784 209919639 652904578 802422240 897765296 840155724 943735930 519566329 662231652 199068337 420193437 685451819 890239496 234686232 424365146 370712592 687544765 973784524 988577227 664353985 961314700 953909638 977064991 250553384 454872484 999697574 999974549 609043169 821554699 12051267 252920766 502022317 624706078 974770371 993137087 26392300 631920693 641193553 892580809 200365266 367585744 69341881 782766605 544605060 657020485 900330132 971560729 584873665 973153890 630455015 943742591 353029841 543107780 693368920 914439824 510908347 658873987 27418046 231090435 785648829 891363888 433903122 506399036 719958855 804164069 750176024 854616347 722185060 792802147 995869413 998095112 401093640 605536503 99727367 830526352 38840089 731717413 680416676 685058038 609056294 685546463 414058437 889724176 229811892 751433336 622621597 720117501 315377755 617402625 724736624 748616473 693864311 964259255 382555484 790018790 806284510 936062749 72633276 925646263 858751895 961947363 180673316 320609903 925162095 936345973 7475137 36287181 996588393 998733486 640000088 810512181 3455630 345932183 355294235 840424265 500180012 854784197 312509077 499620455 171676044 945584700 176902711 967708353 198585946 629698776 277360494 417263236 300164637 720431685 195140364 865421859 253215426 588855413 969668060 971793821 630979646 740852892 741220387 978172680 396470925 689700087 851486192 904449025 852101671 910293352 28458026 321840129 676807622 677448543 982689441 991867804 780815959 874607992 591826613 644056774 381978551 838112339 459880166 779266136 261605269 367285967 184240284 251930703 808779666 887896370 225241172 331604119 810108193 931340566 256587115 719647456 513012742 935626562 790861141 886767164 25904353 782798063 184144343 807528559 25497190 729244544 179317351 912753926 731227660 857358003 84539335 283029458 876460976 933398764 921604223 934249982 174229546 794939401 368065238 382770088 132028164 748312798 911478122 993126197 166494949 605186621 131129205 193413515 176755330 411164179 987109548 994060471 428751868 728590637 873284212 943914305 811615906 963367520 715710174 925185845 308805519 808223568 925233992 973684283 711790711 750401452 704384667 989667427 133882056 200806476 331228396 700842597 417777732 970978065 884048356 892469601 857703463 932672144 825152610 945393888 61234814 877941330 584016958 700901971 565105945 836663791 636379452 965102762 83434919 704873681 888296723 977725352 590880701 709697140 645380948 803146946 507134210 614868773 871798400 945090280 649892536 659176588 740764861 827037917 803827481 951358591 707148910 775504637 333450792 696008498 677785623 928448024 723467508 765179733 807733421 964805646 499330684 639462341 820832424 830397517 443007002 566402262 483446979 997718705 783054355 856285223 580251314 786419512 149748133 783454928 409131263 838934328 935757144 963206612 855198749 993560665 950674216 981066950 610227747 856455261 571473124 807191706 120050919 486722943 158661420 217090119 828864057 983535723 621566274 909264975 664574335 683614109 480010285 856946526 123872948 390101860 572843592 631895278 87957203 273928515 649708736 955717240 717964249 955648170 920857813 957161719 680050194 764641787 839516551 847917999 695679507 786195782 976761065 979120467 118874817 896048695 175978351 539999180 940306823 948631163 21741610 740260240 723172538 744409682 747240765 878294718 944237131 954088140 788379819 791964649 836503858 840920288 683887265 736377378 921339905 938768807 653214318 875527725 25864589 787102267 95732658 810464693 157437214 249225762 292638274 453333045 613308748 646380558 695759799 806903545 500114641 722927049 329399604 606490337 614021888 912933274 845271105 963917725 50419064 280857396 450853532 573624434 109649672 787359439 591508330 757350708 243419424 640430495 443028908 779867076 703110468 751828449 135482168 401355822 741883267 939356265 764043518 977519904 630403163 850025369 289791171 647606005 818302937 969247403 848164856 913550055 413470767 543796968 763146618 798225623 272364399 388089130 602844405 850400435 497083491 572407502 861703955 982413741 475544560 867741792 225187534 278801736 636093366 897830958 232458538 954574365 543080004 548153815 427063038 564804115 11094001 586449394 6681626 65484119 558525234 572952505 424282368 434553978 937231838 969861242 652736650 699958057 796613258 878672130 120595070 186810360 198080754 885633749 741461965 909301561 917878823 999137668 791248441 881199066 893139071 951142780 949672116 985610349 729585443 854481955 273719328 867767239 604378272 908830372 123759542 687677035 946671368 961142323 2718281 515520395 788703994 852108443 563173599 568500093 312942529 599714773 533988119 547825990 911084411 944466966 780192796 954672312 954529612 972014870 32308407 627280072 924015695 973592243 982082638 992331381 668906639 731855233 977497330 995266653 826109473 958105243 720389645 895529380 892353088 980292322 686988865 961342869 801441886 813959589 673661102 748077523 911955466 967511340 186187919 415724946 922829528 997853756 554076288 584301292 735373452 890934197 597584387 820454471 948935223 966874663 349337625 536232677 608622370 614390831 839656909 854278178 272940350 551097596 382796150 581434956 184469518 570345359 207933824 721186471 697615728 969700441 379833103 490964461 484558587 937071840 782208424 974524920 818574086 895438060 894800253 921420451 278446665 965559265 485764168 796846236 754405291 995538006 494310376 856182090 337440216 897372530 389465815 976767600 665408469 747575242 802566052 831595232 105448627 364111807 357606296 427769876 122787906 467425422 787113518 825032237 325311852 842876095 882123321 914938460 103326308 995609041 237913073 570951986 692753646 732000640 18985159 926005399 351781763 551651371 455024150 914809527 651089819 742402950 169920502 660289214 212364885 973333532 727951564 734523495 21970876 945240485 553324766 804958265 124798018 612965762 742191498 838181049 708897134 978748822 355719921 762331599 398894274 442971025 25770371 327454088 167228865 426239001 8965503 430908050 65350923 815517214 168855527 611980323 83009496 728785612 824954874 993708285 902147113 907995851 329057869 662409354 870217645 880533918 37601782 593913578 939583044 951611806 652989092 742786228 405725242 972185928 475995457 908325741 453294561 859727420 896246974 933002804 96529427 483066408 734721131 798782356 180920145 738368080 234146177 690222976 348927859 451179892 748495745 772005463 460712337 966968358 53199024 225873268 1954426 438862701 254041707 314854084 406325425 838826628 967939218 970919733 784144793 860120601 734150214 827375248 674610812 863574267 284565444 950585055 372386664 889656743 633687182 960796921 930820333 974199839 342451292 617704134 670712628 913059873 728865925 739635026 801154353 970666526 507614205 847150829 221972276 687571851 270716274 274268935 344190874 384123281 255994389 708841851 655954304 719542507 829494670 908850582 866981604 914580204 462657858 911123830 452305376 618992058 469440112 883893338 21346910 304762700 10029359 631478388 631634549 729664384 141502456 895196679 713017894 743811805 111682606 484973783 507431331 660542237 859661108 993784128 998926679 999944289 86331637 919633001 671918171 943122370 442515726 531094518 190730379 518728411 969253308 978065380 747451994 870810363 18217814 283844221 710551873 733770571 521775039 577482349 340926359 967435843 231088605 412206116 681947874 893072527 818519110 844492240 399349405 769079411 542841616 964405665 125873042 448767648 84846852 545284617 617151009 953128217 722514638 839674838 920626947 981373909 625723055 942779768 919298157 961878202 515831482 537006824 252318496 296514885 125232753 384680732 564927139 872433905 511075050 854957847 334484504 616485953 815109515 883825685 517649748 983935399 132089233 479777070 81462348 293023967 302345344 360256373 456797244 984208965 824832017 991438557 916155615 952088915 510253960 540785224 96146104 939718075 996913993 999309718 112514723 463849053 443931462 973435351 822764515 852096612 312764149 605054780 944018647 999986362 954992030 958569063 926416355 988851802 849418453 849832852 779802430 851810179 797760549 991888006 361900960 991459241 367049955 488965632 648531055 909178288 519689760 671801024 572936639 926537837 258405084 411510213 518088737 546853266 755990263 823819331 263590868 819619631 866978533 979490220 748352865 973717128 912049814 967963968 800179788 982064192 24547510 86234734 382067463 754686426 948713604 992530337 346240241 421278375 660234569 853125715 287908678 894397832 771961492 992942847 317022460 533768818 607637827 792722925 259526490 966106029 556212089 756528508 521094544 840320602 81189622 467122696 192188170 695946013 888152003 957237022 569610734 773956713 239935982 868185557 908760353 944256559 552059841 600887957 903710354 915708140 977384806 998552778 145303545 218350602 327400202 471496127 488487972 579240512 291830041 536367709 329972812 373761640 734483525 997153134 872775048 956349000 530082588 932362349 995067328 995611848 317925201 970528119 876983473 931361819 762979717 810394917 626184301 934037579 134267523 264946817 397172929 647720534 781742683 974331789 28486474 29261904 699465637 944570062 833832313 973775653 791545064 930821295 425689947 571144032 256746747 663630450 136241684 875239143 217531280 305343143 917242572 984269654 988674579 996087108 258367572 375843882 444546113 607919653 882046996 928658455 162515996 179261622 593836178 750750995 539782247 739399687 75529143 388626204 452513402 738692228 42193884 260275832 785800397 926696323 755158822 875052357 207554861 765231541 654588666 818481947 823006836 933903533 669776690 942752202 936004306 986453976 961370460 992352377 153204297 681173653 824963075 961883284 761745801 776773290 695185286 853068171 630022936 651689660 645091995 817362437 464325338 488784886 506587439 657271489 511230207 811740697 783861622 991958341 148570333 287981661 983950528 991115591 402019221 976843908 8758837 614541991 884117113 954366954 906511425 943470088 886174240 996793255 73458118 318171111 124194717 152801319 486596199 591501280 986203368 997123162 108970190 773362444 981657188 987254674 722098154 832067431 682267314 875770710 31379626 116064265 664472206 900677371 103308473 962387568 778754489 980003399 442706669 746861740 505999066 864168792 110604693 799737035 30446554 541072827 354904808 458877800 808143631 937214540 234274700 876993876 489315166 517313540 80693867 479546576 854630395 938992489 631083585 667273559 913658985 927894713 92867743 577744892 714681404 876946826 304140715 313346778 946143169 947582686 76597176 198148797 447197057 578547967 62617856 834932938 953783326 955232638 420697088 569210484 111371235 553368054 362008762 579934200 118656204 610099508 405102758 580541678 585872194 980626541 980215484 983173556 314087535 585680026 642025210 676117959 550710420 634038676 544841861 600173618 459449339 756066632 887510958 955240288 912451162 985293984 391106581 434041454 106073972 669190449 422333113 688895166 112411551 862359225 378064018 984861971 10696809 356542099 747050371 936919508 271228111 533354683 934958602 997808725 250846193 902246086 181786545 944349169 181144390 593820657 622692521 769608968 826205481 897361572 246232021 297785244 478429399 793586782 916640933 936131248 944313765 976229348 880023774 929582174 661491218 873233949 976674797 998405510 81550715 701418990 880243282 981652221 655484694 904335660 348100171 591097555 488742416 561158358 74993994 773657336 6884380 324735955 113294640 582742327 647071674 669695330 330797264 571687596 97949674 481221372 458436550 676740756 881685963 914165148 112644684 844512120 218992142 327465962 18902942 931582532 633742565 691618091 642868878 726827900 739637944 775732642 910592570 948496659 572692098 743698747 23705194 239985727 73039334 306584300 462144462 629958037 749327979 910431743 257654985 770142259 857636097 928588681 430361601 772212514 603305211 916551225 559482522 970981709 799982122 847139880 57404383 77513492 6890196 653894296 315597713 514199076 738649894 807509859 616029948 987573700 916707946 979408150 25474278 582815421 522557091 935751032 400433148 477769199 653165861 654600310 799781651 896455530 230098097 361562683 782447277 796202365 931531493 978966268 361825114 835111991 468988301 652108184 241427643 698418991 552329670 601683956 567022058 726345660 656002813 966715896 882629734 926610477 546185910 575259792 775443087 832544311 370440445 892470686 807067184 865748571 777868855 926156523 117750910 598078114 428740680 472241649 508094105 833362896 662109314 848341220 238717723 797989573 381016555 734657056 745513914 896593353 918600200 984399196 893703619 908110140 944194118 995366872 611312491 908071017 838306254 891741415 952209269 987312237 528107644 853240470 523215183 548765603 338102043 900158771 441962749 610956589 454114944 558026679 587639161 732394273 843557418 923631643 22957744 799114215 427358669 773404207 408147070 823874670 632517568 784376689 660882428 882046449 617175695 994756203 653990481 806370267 11742611 830211730 211126913 873345766 995147559 998922440 539907764 716185283 814804343 880353801 485082001 776111761 363015735 480357117 153554043 474693588 365069377 844014239 579791940 673166159 934764445 980914394 385127621 439788158 302188125 412300638 181288520 769467759 283680130 748246576 320910127 949865478 595904177 915976998 69137730 607023329 268087689 744833982 693345200 930233280 528129288 802694473 207673082 481111477 225990632 474073489 859989867 921062330 525587619 641731442 540299158 966312863 522547419 723439666 627109071 693352932 471738997 846117382 247435639 912626779 342859278 906274645 678397039 767780225 153244572 827667178 874695703 897964552 910099258 956087642 522970347 813490591 146956470 517467610 623878697 938130231 576379062 702582892 61724779 723655972 211579376 528953599 290170961 616547346 902768465 948831302 814086805 833054394 996918248 997868953 442343113 905001181 848477191 869744040 828490468 948259315 372889824 534552347 615425462 685203561 173262439 445929572 731570693 998277255 330541919 916386086 945838026 995710755 416048843 846147373 106044316 994689388 817840735 995239720 53216603 436280913 686421218 829399819 317409205 752294913 450587515 635511437 693811820 904589896 233704252 809647316 430824901 898653710 943026177 960229286 240023801 345732107 647298774 776075341 523323078 665637640 551589818 904557575 961202278 972018885 223501147 294789833 674401076 980390375 550838675 935059839 164127060 989296487 226775597 428159514 290763170 618864257 623115836 680970024 375118523 803208215 288176673 293257812 509054731 689430914 987342258 997878815 321898813 455113024 204948248 854572805 948578990 962107692 254766651 503189204 547826745 865473241 307936951 912099045 692720552 834225295 77876273 160647402 503487719 601639654 997172089 998662718 538561973 952430212 445768883 446362980 134239772 403185334 705569976 972179458 342861374 968116017 952534429 973252305 709235181 747112755 970920049 999659710 524750778 538935172 848377221 993740244 604464744 914042705 243115316 470222131 413504995 688800729 295542123 395511160 286047291 752450746 289632936 957255865 618036020 764441078 562608947 901076929 294225542 545954109 170272872 391898879 33988788 997708024 349212417 366678060 566945257 866192701 271433641 845704902 735644245 919529619 469963103 626935241 423988136 876121154 641624846 667686408 529585865 918046519 624278732 853863406 366411659 488864412 458764230 671596083 362880689 641375293 787481523 951218913 266689476 566495960 542552844 624796375 107254635 505207279 490419265 606776570 231742746 284310806 950080159 986388094 901606752 925573722 625252006 746924177 751872018 869896496 453202972 949327022 618970884 815788668 580807466 812838732 635720398 747364199 212032288 855581056 592598349 629537452 597611090 950493687 715244979 922463440 142149067 932406483 245224142 500695068 316380361 391893540 62537041 277773280 746109224 924943626 407471828 432128462 487528445 578931645 802318532 832069370 502222716 514993116 245533730 426837527 733733172 774657221 705683586 984448314 619194033 628691466 788962136 794214560 90409934 200854558 560261774 895350654 380952495 751070001 189995044 293414005 816067559 893202691 347688923 482357117 589766528 868670739 285801029 590905936 517092853 553457757 137044349 930140295 286559132 515788928 745970953 959918524 270679021 692062778 380844347 551518553 639548290 878356821 905979079 951220522 192241604 534182252 116327378 439471068 289303704 595953544 296573111 567023297 298439787 384256978 896825614 934636047 732224791 801901021 28397452 373558013 475007765 478618128 695988896 933294854 746940585 871453104 469058145 726207013 672050366 762080484 117574453 419028914 679914233 842757755 922833895 950696046 757550940 786064890 530509261 715364518 68507020 142939331 184313897 983828472 398310899 980916468 902203571 917961285 131846423 923505929 568549465 811338180 807495241 986406436 797308802 806926550 662677541 754468964 481304244 621577463 468951761 604243304 808728050 894606164 582816356 952585063 641913927 904452150 988772334 990454761 449381713 583445996 963183364 966492567 740789643 764623282 762774 705057830 199845409 348377657 443154276 623541967 519165318 623598607 208736938 234338481 671789706 926887065 467804589 732738557 994192466 997507113 781737007 943427462 6263303 389662204 630624221 804887130 708231184 781012358 572113762 593865927 407891766 820757381 34812921 630728978 800214967 922783889 571836445 842112558 161978344 194589970 894633357 902606446 412085101 517610819 947757848 982124420 104736240 900180553 17341783 301784099 655292239 955238907 92394479 100955695 616678589 879261568 236401320 241190038 347077346 428770196 749469434 823561399 467381504 566053421 77016028 974055304 530738613 620063507 541106429 994182275 63736242 467093181 983701032 987366101 316533321 946106006 623438144 756814412 257026386 423947529 808114282 971962974 254706048 280574731 126645799 219639068 518129331 761876638 553414841 977690926 75087369 222424008 530977307 949604226 596431393 738189512 598659297 984030960 590199581 927904802 562733511 904692991 973251624 974774555 819390102 823664118 519641799 838708291 726854682 806742018 646347408 786857385 643585027 899086959 133687223 732346172 408501591 957469925 836369405 881030857 174108656 588847724 863558419 894545705 289975749 614126574 398276631 983274719 473686862 789738233 63103262 926605325 455487052 527013552 582992175 921351174 790157711 883773256 832175408 859208115 875065752 922587731 482339951 624541238 247628413 635310877 501248459 520700711 128369204 638187906 580571232 584416754 784666731 961362845 562304505 968463413 829976246 899920983 997159657 998591473 537511589 954839839 702691943 937613928 625236293 683430000 676299075 800400707 503184229 954265992 278114823 722690352 236013901 604062780 326629548 950492034 591572987 856105164 474864832 777357650 171313374 597974335 625928725 959134309 297420422 508150916 689941002 918354065 353854633 555643567 222661960 650092780 107940625 673069437 11782139 822252029 482086143 736462131 236901306 525082508 298620432 796579307 618084627 864207893 725438379 863046375 763097651 774678485 417255753 904592962 136136643 668489739 992091998 994020209 721024717 771674487 351011751 404841458 266704280 800499827 190166617 714785275 942576805 981580838 542197123 836939891 127150055 765880416 321128112 689891019 512870994 726168205 542534510 566943222 480384847 624136667 206769124 942810876 534797079 886753893 745171575 831795480 215755363 415182073 794559297 951004817 307044033 593325072 41149911 105619267 434433163 979139223 542627969 555649794 308538455 609047895 411728975 724981095 659449913 979834719 44563863 803782396 463059209 850232622 212955706 882740677 304586150 881554475 603645268 997547561 257125864 762771464 510556413 730131169 924529598 938095464 873007652 879944349 568880056 994388554 812844027 851203722 865792356 866395248 875632771 938586773 29840123 712525355 908098174 973603220 442484057 525751864 502650889 824647428 215044678 694950731 383045478 962987940 515619172 933553262 912556115 956126666 364755848 689235704 883336489 924295844 29956805 248235735 48571959 510722470 512727528 728488829 805228431 934744355 199736711 445695926 528479993 654622316 561376291 766308766 367334195 650699037 166146429 251134616 561712660 923275002 884549544 897408983 531910995 666417046 698491432 729065582 281198863 369174927 913551510 918877155 198713866 418154912 861906387 922267806 541141618 658864554 153142296 504068158 713440879 895400531 711602560 840178147 280662844 463690487 238008608 345559280 444447850 990288848 785591510 939937046 605047441 645217671 586973473 714055398 704148200 755400267 676659369 799080949 253526526 518123421 744962612 860163981 513459580 527875410 789489743 826961226 48333572 235522248 370845425 427805783 230720053 361067293 581868442 890109707 545531166 648059371 650232465 729175076 836028545 942346689 57671157 825520894 531185511 603181563 396456454 972229539 150759125 455742863 522835520 673471248 79323494 155753322 559646637 777302618 438206868 738315254 184805999 429523599 703403849 781230364 9331118 405082767 457309865 828482241 928217047 929990480 961868069 991902057 104525782 509114653 239412640 249462530 489621287 814113215 114190534 758097903 934803153 975651749 460897164 830405773 346252581 484593272 606803410 721757466 561281839 577821145 49443094 162380014 557451466 905969515 706429300 868884494 484186143 903470307 964841254 967365260 430240592 755298202 564772885 736848505 402028374 813274864 45982124 594958613 217625329 330861841 153304722 329116643 932251636 986828362 652027626 998066098 927200812 985413141 990446641 993128156 9012583 873410471 467818256 628896427 727081311 939630388 816166182 846407737 72141670 132940986 16010019 992351909 785634827 818925864 285203558 289118227 579674705 975573407 171304128 384042319 610081075 617714566 628243961 944166830 492039284 775482615 821630945 842935274 727519736 850356172 726113484 953070216 93036464 922156535 451430669 650147175 752804743 961497473 723026551 911551830 185175120 494763554 696115380 779625091 268546053 486009597 712684777 956655890 175088590 719762601 383791853 727048799 623512057 762853619 794881090 832306241 903880281 999461868 748432950 941555294 68929710 322818765 812761853 876562361 680320932 983497593 507704102 708736078 143444719 908855340 664370848 749724932 332363889 431544893 859242826 879135845 745757348 937269591 699231359 715523817 431009466 918691127 150599129 954514434 175911660 680177016 557288891 826275692 216804962 909097579 946093788 971131647 943113832 944078347 174258661 817420422 84685152 187153530 226936909 894762350 672170744 887738073 829986935 932488468 287876400 839620285 133839169 874253010 665687874 866257394 313445571 352964963 365165082 847523426 872738023 917255201 211406302 718139052 94439417 913325374 686007043 915805605 963068250 990839416 164443075 282480187 325958721 398122033 25933174 729284171 522649349 782036657 253672275 377503530 92221840 831801780 527596558 648651578 273426902 658003088 129651252 560196914 818277701 981628465 12702186 644280504 818842811 983527526 156368428 609230767 18721734 315033184 384448713 454205281 602845106 857059028 607428290 607854954 22478751 150497333 471985930 786394016 292291414 558284690 495629201 633710930 654406660 746038559 171539021 349546527 481080495 898323330 849879796 974870499 419775178 584246488 531134035 855209230 684779106 842985128 390264408 585981883 656691111 930212737 617936654 864782711 269134889 744935387 258289112 509140156 194505355 821444846 956985858 972652623 101706313 130560137 750279160 767161757 274082574 413442539 807133118 900620450 319389850 985005366 436307108 977719109 470860999 955538012 132295104 322519751 186390658 226404613 94284099 272276566 301244008 952660086 108959840 357280190 814461792 895362191 628081241 898140678 515252171 707897448 531192345 539448589 852102848 942803231 646962709 954227896 517544382 567425940 838617067 985912726 23684415 121182392 855463368 921177007 406222729 597605615 197310 91155533 657264479 743920240 275751078 670460474 222020508 864508909 988463580 998671102 767082752 819288158 570459104 839623766 409426943 708934044 607717810 742845881 591266427 733502165 943306800 951294215 836679858 860679092 794091615 944876704 695583692 902066510 950695334 959757349 833510256 975957463 503063741 988685890 941354211 999379248 601250148 977770948 840570604 946196705 965437686 970311377 276177629 900169536 315331219 470607481 695852968 866190561 458890465 597301337 488424983 672862601 289727792 937168896 336777033 819031295 516479465 731796139 393471607 753780103 96401867 898175721 651109383 669930405 26955466 536629721 79493786 522277435 923611840 958180240 621877564 741064563 210798337 946396714 889474528 976230460 638578326 990130117 853123543 943056349 635324939 746332323 520506884 539527047 157609892 279513363 930208765 999854304 982303456 986453555 173202508 909127745 707699237 777711851 963596702 964936822 35729809 51987910 517778796 849247097 318649620 421269690 705203802 802151694 909592636 927970788 502189530 640404102 485406693 618543574 160265806 916205318 71153194 403152569 951727082 994422311 245497195 635397381 574298558 940497136 713417875 793996989 80825481 729610741 442377848 586726020 777469382 984071207 388868972 996646698 750064018 824388305 752818232 989253121 430530523 764148064 290056106 558668831 799359746 814360274 223162484 940921468 294210778 541660625 339310184 580783281 13411468 283731422 203213379 512190311 97888595 445640882 315416025 506701849 279346980 960729987 534226182 761902621 572734851 577484384 792008764 824726728 579686863 793357638 372274724 793249699 456949675 819055973 590198935 647383879 69290110 481239934 872479098 944652298 698848170 739451235 786016313 912461794 611967641 873063015 954149700 983425286 197376833 456041061 988415011 988659510 210785607 321985297 179695 977025451 84291018 957573275 143858318 892921259 891760056 894878425 98968889 340894271 984727452 986181568 528960913 740123072 255292049 280217063 162057437 485200560 96704178 719052120 138268898 879080733 376962394 401917091 898123284 975996115 130939509 285212606 890924159 924449323 712700602 891577672 381472592 920198935 924098162 976852373 672933947 676479812 222443285 708069256 152246446 761170437 577871568 664748713 975815425 978819613 984710012 997189979 719957709 860526431 94745496 587369146 520064011 647495199 621945759 880249976 873197590 995201951 910169568 913182289 542294733 997361609 768914899 808365463 843084856 860787623 96509270 933891042 757435930 889158695 872045111 914674242 156593007 798103548 875773042 955971103 883114032 903292353 770643778 943692108 26456391 488789588 376826343 659865147 514091839 521494400 394382308 666130662 335902302 987366844 163003815 374557278 778861271 915154361 431851693 671275701 261871249 901962438 323328647 940972723 632870342 677105071 670552381 695608080 390135268 434601286 672662777 878064367 676946624 982335419 14324322 29976962 141531417 246830850 898053254 923717681 70741441 621255091 490773058 906781369 505996028 905904239 254883341 767154423 992747876 999079887 347538345 377887081 975530689 988982751 711380479 795721755 848221863 856482574 34309449 162090324 155391186 614840201 356191952 936381818 254488201 568955746 551864361 580986683 429212338 853876564 876161520 880973952 522312245 756845734 168062940 493658068 164195073 795198116 826875227 922155663 234634603 462776981 13172847 988634695 461255243 860672087 608956254 674303216 574365984 885478917 787671675 907337530 637662974 687356940 147650617 972013203 923084192 932091354 635752263 657071828 464195424 481570217 33354108 969626698 428348429 562636274 744175805 869576479 609636903 766592214 850534035 896629266 838182042 883068837 318354258 490173866 528388327 898384085 185638744 202293540 723375629 917978658 401888560 858854357 18028141 416368340 55607 761977495 186406981 493093150 36755997 591685027 433248859 800227862 896220318 907489702 893892645 960390426 869190636 879279174 565979390 813325176 910151320 984880766 99487710 397755680 684633898 745060168 41962380 559025355 580680480 892975785 795081564 982414613 341576756 384662272 184641064 666515090 464351190 792700881 836794139 984961039 213962645 906099426 732502428 791381593 132114211 362297806 71368386 198913011 994169360 994812099 211189096 940214170 438202358 752104881 343797792 821778543 367356772 856591722 710835232 747986189 59922575 969959262 499503411 873796229 776653413 999167367 798077683 811274900 743027293 849563334 415081850 524055842 511154851 529674785 252194644 904591446 57124072 80601008 670911194 811229554 779763376 862568082 693501617 902590659 643416251 663507609 726525040 985006750 115022714 802578912 552498284 796098571 576000886 578583839 861493193 919827757 634923188 762854349 703178666 815190225 844769491 948090902 836107238 962845911 855018897 969852466 159352375 832840067 374059189 408015353 77177203 587433924 228387055 592612591 436739186 476679898 37787138 871274794 910040176 965304164 244624211 731154777 90815401 719259503 625328615 654841652 252245568 315102421 880388296 964527495 684132376 807067830 2734833 466436808 832532514 951958167 1053826 708156418 716379441 736617325 905223668 927848514 431001166 848740064 882992118 921990988 471643141 497016681 976025436 997309220 752348130 923701648 764898126 976113907 205788420 213141595 983052474 983245484 934168031 994539143 900386694 918042187 829724416 980635699 100342945 933973551 213790544 414273329 901135460 944252335 29621175 294778062 3292809 370999707 587158401 664307146 959498425 982925229 639570350 710337604 35840648 194016404 601596292 956533866 176906581 976385639 29008876 289969536 781762500 795168422 202912548 448525861 279264101 463701464 586611036 884515377 669108768 705587591 143430678 242276830 205085426 716399880 428325821 903426754 143484735 580980161 91204268 950472829 327251071 723267277 117956808 808859773 748626924 769820688 10735354 626897523 235734052 574159725 694492764 698568892 684539266 733512650 768187382 901067989 730157659 785395488 786775309 967708103 761999334 873872287 521462294 714157970 966652112 993711777 960272054 986132694 598874260 906082879 120802195 654742036 150900478 729637901 862992294 933327558 974934521 996277942 655524715 938270937 204122715 999829452 982889811 996179711 830999622 865524319 503666140 814866053 713430497 913587276 808228889 849928315 337619367 950162980 257399406 846878396 462527978 560567938 925516175 976013744 796097247 841099625 966341674 992453782 947590848 964669543 40976374 604096295 416984435 945542359 431811200 704336952 396110180 513138951 975974354 989173852 452877860 888464389 532084229 566311284 170666238 431847022 283817868 424957211 7737927 763634776 328849056 479264916 707769039 970404978 629782411 815778144 192405684 906923667 690283757 915767564 441373972 550023947 495972191 833191030 222474565 552059102 254472990 940336885 839689625 882603401 848799720 976278144 394302993 866535490 551855027 856919577 472911289 953017359 278776106 666436617 563720856 905096762 801665859 922241461 181943278 606140805 742471655 862663798 267421411 973518579 257408280 469281597 675304733 870446040 790307029 961326087 842322275 949203058 86329829 353631031 909122032 924244286 271544220 490108081 188400018 758194621 855139586 984947197 547674410 715893295 533764932 699496387 805718742 920497309 172087327 963667689 600291273 724637452 213360843 820760646 372689729 530229251 467552779 724486038 295669534 869175828 646366548 990791479 616022569 801520655 374705164 630242498 859721537 958538322 67724863 229840805 897589569 955308181 66930634 550966880 930243469 953257810 561275796 964898979 897765425 959405035 512638790 557320272 818613542 897189049 310882391 634215978 683069931 924665389 695475687 810180933 580201774 895958597 62283029 954374267 247591916 650736784 976163857 994291236 228342775 779797474 513305232 573707429 301564726 461702757 673716459 951426889 318517739 366514077 201448067 438528179 317372292 949427521 208072905 411555089 809098836 844246158 809019707 889308977 305377356 346866123 869946019 934281214 62474006 110943617 299380697 374682980 139148705 932713097 436680648 716728363 437593231 996399165 290129780 849438345 847807912 976818129 23162781 141470579 57131465 74425309 927879088 968950342 633909096 789312838 195169530 334203035 743230520 891400301 208861167 453597865 453685306 899237416 429587895 459497644 14530071 839714036 434008105 611520667 986898344 993440365 507734959 975309386 237861639 406748711 484355275 969599586 466885336 738324633 679264796 907700119 459814970 795425972 600396442 863902882 312329885 703681142 913720647 930496678 650444744 778095830 742755675 804217731 253504068 835565618 196097257 473846684 501768734 846458390 720795102 919604645 853041971 903546926 572354687 762739266 361807873 858496275 463434845 980866517 746418826 805870880 513909932 555210525 356523020 599882858 171689343 275482250 725358743 845543490 101325775 739085585 425279599 717751883 187372353 373483236 3649333 775195387 515457304 738336428 64981112 942391720 628611290 773753374 249578547 597280383 848581785 946064559 811507615 871704110 290083419 494479896 875956232 965156574 863537597 903135956 199407333 273388970 740930202 991502790 32223305 594498669 669098637 763386138 431056979 892622347 151360660 296060446 587045151 793972673 966503323 978513915 580118142 886565468 443595908 864115121 109829409 916840459 148823795 476197946 92969194 748679227 708053272 735712711 362231914 789137602 535221079 814938518 785471985 891859704 828497311 876831688 36955980 463366450 418110756 526002276 745823280 847908669 18552015 422919875 696522909 840212950 238648636 879167796 7828215 732471383 811316334 934237886 296930928 811027214 710318183 879743143 793025185 990055318 55558052 330414297 13363154 107806003 903272612 935837643 740736069 822146716 927035653 994916672 471091812 879016034 85515912 208089153 875910709 954799265 206479971 291288078 261627601 841258504 487719093 667607435 221936738 791967253 374539543 673928453 363900693 485423035 621578782 642038260 958880042 959452461 464183601 928764650 73197590 596974130 867175226 891955959 119063195 882105313 436895674 545309510 903531732 933512746 994821302 998648295 159781584 420023321 174142294 563664409 444658558 984213052 154144125 874651129 138663784 238169077 660427053 785336044 886434577 986664733 423092584 917760005 673640646 731872109 425194616 903927183 286879182 619986768 721837604 769265738 338097473 875151709 519192271 627395685 840782547 926683370 60411042 925963842 395989675 934654823 332356018 524216841 521558682 756708895 579485995 942571862 553562275 946310817 770176101 826395447 858915454 890081203 13373591 344186487 295830793 372740650 843715996 996997385 73312327 557499081 36666930 572951483 747786786 989893993 84747210 286188465 573321582 871366827 812094367 873435130 962597489 980008951 20960447 731792297 780984420 957076030 603680870 793118721 67409860 613952576 431752867 639893468 443101382 728600867 694552047 797683552 836354445 879961086 209715260 522025086 640110993 879182985 325258805 658419148 316212089 951216351 430473953 588911859 972738093 980735580 674439474 952677756 363699510 704109204 54692846 598616311 897069890 986284042 59808116 961330455 829956330 974635358 270660020 984462886 831024953 926784180 482495792 921327022 915622594 942610542 640682491 951748263 885299813 932786784 148685222 274597860 893245544 934774559 683132009 834942885 668855131 945791282 271197871 739325605 695236245 930705245 711361596 738707305 619365642 739764165 886264297 892746369 506251785 575672715 747493985 801819586 792572811 901399049 879042769 889974189 423165575 508533547 26646403 826466201 539101239 692649753 854676386 900809788 915039242 992490873 378590987 555238128 25753974 442049816 477027560 951838221 274383038 386081389 240570895 454006004 233813573 624099830 770005460 820472037 79899172 403785739 440270300 911101086 545941911 943760623 337423424 569927871 927061158 973677074 485592908 490705090 208681570 963634845 875765852 989286826 825499798 848544543 429986218 854754466 516629507 901776815 202987945 790605286 46222862 579764612 924859623 982668396 325941594 395215074 982015951 992488006 958330781 989916725 703324057 968132261 55022482 334275393 275944959 366089496 599395104 648151100 253108488 797314435 36360618 877880930 450439268 459487951 478007983 871163080 219830530 688366227 711404548 884840159 744062884 941119486 179693102 181330527 337902797 495735385 340354926 991851301 479069223 774873638 866329056 978107681 460933919 574910591 92496326 741405476 67259522 632586459 298725188 934771780 305235750 438585619 137664355 232746276 721356913 987753551 163268956 474707242 396302034 564703047 957410804 991006116 698641114 789203549 364357364 961715746 278259377 281722904 421376179 462137588 848073732 952183493 292000897 453563187 569345458 587865158 818044871 931114136 989199037 998858049 604922064 926213619 691916275 730402905 205981737 940257071 809192511 944093997 706808165 879596289 173219251 423277557 44247129 932664107 205662372 571363798 511702172 956766742 868410539 995864100 931891373 946494159 375989275 499441193 229270310 779922718 311102666 930523468 20144354 427914120 997393117 999606738 810435085 997231855 173293238 581443714 810501897 843917075 398463047 923034217 141813199 755856310 556702362 831633454 205070661 901790880 260252376 516490332 877777913 986784063 474189365 979446827 541772179 600937161 425028180 620340839 531336760 884637934 668800409 874206283 726327187 857771621 24969282 992727235 654220217 874248095 697602065 713641747 192686768 570034279 634816371 990190425 969301889 990609942 150940858 450497017 233679098 875912647 572414652 688793697 221536342 850991204 825426142 827944807 680717894 768849832 57554893 93028490 155859170 621007198 468381104 674373231 109733040 222624620 710493112 923986624 446324771 667566200 728302801 886596470 697177091 732936918 431622649 585473860 925186759 983279243 221282473 520896304 565915400 959752959 997495691 999019963 626315925 793586652 636068849 961493466 230542258 416407720 269470250 558198630 683042629 945157489 800889157 857261632 735405083 995253403 859506325 934694009 715847343 941888023 330819749 846655227 333505360 474335987 53488442 228649441 350403359 880081140 231022820 253418974 8103889 834004903 852684766 962365614 378761023 602202266 882488141 923955844 833952272 978281939 262831354 763695201 700786185 910012019 447452816 459522095 855967404 984380279 738503438 870003119 13355482 360328684 841457730 847114244 746144246 852215780 459117607 685504685 821368820 856831201 459351087 962860683 751877588 940468615 743385171 863318071 612884644 707904714 973452194 996384916 276655792 998229336 850148219 876703097 194999107 829994679 354279087 974851251 608901846 929512562 956883818 988618419 977946935 981162770 807956743 921515634 440396 330248275 317602951 426929918 220916794 528954404 378285124 745019691 670269940 821021367 145121731 424472273 743424886 957234566 287945936 337580015 85676974 135475235 910973522 978470623 843875988 859388206 864845057 987568286 378722152 487032731 894445548 956769962 573403106 767340849 902801341 922654026 548409870 978788646 456890038 553642738 881010861 960589814 420564532 502838520 378646833 548632327 756193825 981221192 797301658 845948436 216077572 940454576 904637324 988958817 254664956 975399983 621584158 747615323 777474536 982309020 817983299 859453536 9946568 13838703 656528971 982021469 838160071 978382168 533056843 645444570 391562447 782661584 462344747 475032069 393541389 630514319 361658994 658468775 836691809 877500648 53767003 227771729 472904825 604392195 18407923 146111390 45546667 928844340 299764565 809140328 417794700 599991087 295308683 870149449 432318180 795877318 741915753 748604563 817143754 874376330 691243451 775755776 491813505 930722223 363796901 604704025 452112714 976901048 735741680 875861304 625288975 972068064 25967630 432637052 818867539 913771102 478193169 755069638 196947932 526379422 202041204 567298209 758103659 794710693 42246643 810858789 960272281 999284321 764183815 913265712 877048203 922914406 511628448 737111274 616728308 892358753 521924999 998539023 588224064 991865680 472016682 709147877 698991360 702508110 30068885 348914655 822436407 840060126 727609237 745038371 828060528 927547533 338886497 936578616 439881590 786332638 629742963 704363517 626054291 997286357 744813735 980213001 92577722 119470604 420376007 661914739 194380180 354307002 800255070 955445581 964143410 987509731 52355620 162781963 458220374 541013754 215253447 724618925 718917576 839925207 590742694 850480160 247237143 329837967 506004249 746130604 577674391 933733645 922041804 931060248 840269456 898816731 469811925 886420754 328302505 972596840 738424590 763493108 747392485 818758534 496845083 614879258 451395591 641034824 245940166 537338353 379444964 794598293 117776885 777555133 907248633 937975945 686084734 892982495 443329535 467833819 632178378 950371463 639115110 850620986 537369035 561944609 919106309 950308091 429433637 458858274 276027265 390052248 489468272 994961376 786841063 811087788 33985328 448773372 813849484 926566344 268956643 424804269 962344364 992573727 423729883 835204330 436082277 746313794 160228154 340614579 687439851 825750211 631006577 688589369 104276503 415127106 839620930 963172798 10275944 723068582 305464829 593669504 904193468 919117117 789963912 931524303 739843263 774778781 537341315 818388284 682811579 700014039 834890060 868705411 8625696 664908435 151675050 493799671 685551111 751392978 742827079 930257183 733245367 914104263 104601850 251264894 223668501 787807429 976027656 991310938 461954663 965119484 5478969 732344654 18332909 890601718 162619872 373433329 221240477 621676798 269279213 778502742 546729950 615209094 330527989 511109271 804704651 827991586 808825683 854035032 480081456 823590008 317331263 707449274 424159721 574491956 116183988 765221494 561457956 932581205 651295787 850077310 619617972 741329863 199225794 257791536 34461819 744355228 296907997 896177720 132744635 132912811 779212506 998316879 652460425 945054470 238983079 916947387 916471178 964604889 755681071 813734790 624122842 773748736 943560834 966200187 833202713 974016766 516630903 753152849 471491046 908503576 474987836 687971970 523811371 676234894 494210531 834290651 584739605 725287248 591327060 886878969 349619871 702804679 652012555 655081358 453420099 475931930 669918443 834544479 737947343 959280890 127466088 342100535 297517097 943190601 608733708 898833171 179113833 943723164 778098058 944644495 26913496 157744363 973445647 984375301 909303817 958768621 710572382 813308159 547036373 709283434 578970651 695957372 368693500 460320892 522731456 721955527 375110133 852701055 306541755 502308172 917669792 966954409 253599879 649181001 131755848 801860099 983874993 988486241 858327029 988910702 877639702 913713510 903476371 995101459 929378709 985596215 947179322 991936053 435667004 673868370 528031331 617907120 956361670 971902921 757801211 780102621 899597636 984747128 83437412 956798180 782613805 803507820 221213785 912314879 835656347 862629457 120441438 924692183 727955238 940056379 351559712 435981303 238003523 288783806 680919926 697329150 343789008 467329020 708693591 938449374 841472703 927624158 329148890 595666326 228730126 440778634 65697802 362303545 152885583 585711483 357101178 848259167 164851445 566283840 10375030 106594389 937645148 991606997 49756575 402961260 839869073 857747127 311735514 324113760 548205777 806932474 426694423 943905533 617561625 842004124 288950790 353561206 945711168 964795676 953322000 978866345 70644543 746456537 278986708 910044044 312062221 594221003 478179072 620258216 934542637 961121183 322497279 594843107 959123443 961736759 485243608 669453760 313215562 599592850 310454423 741348755 442587185 927323752 525253024 745090956 595712880 636596645 427477929 983522612 171280482 853221284 590173444 910211452 953760786 992646847 323089651 868518416 581798474 911304975 918187344 965102049 369857214 970540108 944263948 976565556 835864167 876363770 227056182 540722142 70060505 732388161 155054952 599081564 394576361 595174172 508388834 729998566 122483157 505545903 83829760 430339824 421646861 808083769 421693317 760264528 729468293 816237176 582907086 953842157 910420523 958703658 711874263 803897429 458710471 476137559 619813705 637592591 478249505 745318767 793731305 808331974 425898230 518583361 177049212 993684521 28544893 742833305 551567095 575867868 813961664 941202740 45879111 560874182 543575124 589806164 388365592 756280887 511505904 662330209 40011289 152583658 356106414 511612937 9446028 580409157 326196961 750492211 88867564 505762248 139308452 935082130 76109221 87372508 895195585 980109258 134571992 137316094 541991688 934940095 448872086 952400400 885728056 986528240 340764862 592553694 50234944 882139918 452699650 975651643 930887074 984549321 347107241 376769584 457321476 845797765 550568292 849477797 477771529 856670558 239768887 274992964 874307285 911179808 521737713 534163133 456975799 911126732 940333419 999160811 849380056 911752349 289172900 609507567 495171056 858379311 948341717 994055967 864946183 885994503 503443861 705511907 943767538 983262262 329074290 557191791 489300535 583875970 401924817 449915788 280419273 338242842 77465480 760003406 912229244 933536268 750011773 818256571 841432752 988278814 682649897 813760639 138713768 165546279 384031931 968715574 797381913 854762246 632185384 712123898 258709260 521036885 197728630 678429618 324669550 826583714 46713122 834856763 253288367 369899003 61263421 256276362 709962481 821897379 81980801 504467863 786582769 918276064 358424150 378149580 236287486 520904297 723513821 885895748 868099497 955610404 433250803 751730881 120615705 371093294 696022566 731879000 800294931 812374163 745137409 824631490 111151835 853383617 588400818 693072881 8105091 261490678 257978536 634839248 289428752 937981224 388236745 460460169 358479551 894208803 9384333 616136841 881909543 979608101 838161684 920583580 195581652 384849597 445243111 732244591 828391666 873411786 906393101 918557428 121307674 742816521 874273335 884276747 876729316 913521931 75496526 779850808 322974019 490242107 925057529 954253714 220445459 739349514 233545362 278937226 706014172 984357608 582030355 930490396 596465286 785138462 387406731 900772608 858564410 977437026 663180071 789641970 207525613 919779479 70201035 810962172 66889473 531812702 658310693 891477043 114652805 875959992 510458755 933386995 499651071 878069764 945893404 970600450 264890971 457916454 227457384 764468865 519931879 928806009 838602505 902326590 690253222 816173581 261348023 576494953 376640291 502750977 312793211 551343826 507737863 631840189 40044970 824323426 267536132 802095585 748989043 939973784 139162268 550161305 141376180 371914438 873281548 914594534 434829324 907753325 572563926 694163230 201055236 740690303 745789764 768844900 523146787 801266517 611467307 914464516 521126408 886028828 890134155 973291698 427685347 609902568 561802372 777440799 157908271 476711735 46325272 909444307 614538616 920943579 645383982 859002938 916187935 930030967 110524141 467332750 572692046 880741554 61537801 310955338 367440724 873415999 295362118 911585662 236322428 835952485 8562631 454889113 424248377 777500245 905961853 923092468 326076119 455456297 98793072 254930893 507828731 536128208 228673477 669519308 676666705 718040649 337731383 514451244 853515315 890353832 176510068 822757014 632070279 893423100 357878869 797795527 381964009 589086041 737419778 826558309 952050195 993596184 803831115 842612280 861300237 922770286 309466326 806290932 18198757 26348368 617699644 794970475 592000564 815669003 113400790 189082099 810808110 952133490 180283188 741298282 900808847 916942083 963708523 999781643 916787424 919573126 489960785 956957948 48057856 366165554 600490732 751988227 509908686 863435004 34850579 397023408 266678863 630026038 635170887 932884505 661500956 873015515 979381088 991558933 512453859 559256892 470605516 943838195 219693233 223111409 291358019 394843267 556429373 870380090 298852433 350278055 842105690 919818229 533746748 948975847 116733061 280626062 910041694 961383124 404288314 667987725 181117386 211509573 501665495 746467280 862390746 958681960 389843371 923931250 534962449 656687090 756791810 974884902 694903122 714771791 795771571 974486277 864043624 928882590 852785287 966983346 231875616 500491007 258307676 836349634 781550055 905719221 136489245 755550934 881487930 881894214 692868633 793648289 711544686 809558417 592346720 805900040 166325233 396644224 699347614 915486025 439885843 698115540 571964096 834060560 521719043 563250529 965542451 995328930 876672380 907143801 652610547 689257163 989791587 999532227 937820193 996090663 646171420 919546226 81944071 894208397 124049233 230698290 410482682 677189200 666929807 824468050 215216890 943898165 532335468 573458422 764912788 883373627 532702857 819838237 241686842 600880847 455281274 669796690 422288383 775174434 896337340 932475445 999759401 999879602 868706054 897611511 1690271 865961929 50997832 560346558 201070773 357044084 747880598 977197014 87859255 127257294 376099676 663061959 452220621 774675297 7809505 854681816 560383945 972308982 458499906 671343436 85917173 513363447 155632537 875118404 578309950 659648721 317708658 653265145 554833393 779741733 222799540 876886766 271750697 950996630 446079147 697385625 347358178 972903288 149019648 961494925 754135281 962804802 865539732 937716364 802312405 901309295 875360867 899388068 672549527 763538803 344057822 397127736 599053715 998612008 882328516 908468491 623579984 943568500 875818189 940288317 714549259 899307525 292961241 712749237 629411550 759921216 351733825 800653407 85148951 282365356 897796532 917307710 490507002 641946688 498438383 937477398 703460701 835360645 18025514 693295980 705424902 998451504 401677212 559490797 599645383 935105591 751857693 894412469 167907952 546860742 367627679 392412425 836625232 968892806 590956277 927817554 752981929 855152812 703158542 920367037 724418239 937955479 987441065 993121771 101241319 508526579 165760869 270439487 30756722 540486497 561937768 983102664 522589330 771112121 296501015 681132078 445722929 818800724 437614515 854425110 196326425 212628536 931791260 952157783 195481491 965829021 701873560 972923146 350918181 848412723 476603025 741244965 188611789 616440197 885498311 990053351 105173983 887181374 629549079 791781379 725558977 975815000 706201317 732689542 494753097 759613067 580457435 941538792 657705138 669168978 998258027 999566039 193142015 446347251 201027216 688835161 954450372 964257129 509620021 675533358 475746779 694624717 169175374 576560851 36155759 133499094 439923781 898703903 563784263 671641521 40620102 85885486 677510211 771389005 154507722 504559634 309511963 621380730 984905516 997874461 271283009 545058932 858445035 965780089 840660549 978029387 645212616 746051971 444719479 501334324 142298910 356960007 542839010 905380578 761035190 940004425 746276439 885880216 588362644 658261144 958138368 976098098 724994236 961997555 411562744 685925487 789361945 917302679 573645819 775275183 835826529 874394226 486380853 501400002 884556382 962264344 145479899 472250254 597805404 997931028 677148715 813736168 864871493 908106026 356614537 579978346 112069918 652323517 374809851 379264437 212062524 355341460 277217754 435580574 396540711 864683968 884732444 995478135 132365324 784335523 834053427 926045589 853264282 859945496 404577768 780130435 820752875 904972508 332225863 632771435 269752775 302669223 930185410 937438306 863443898 951521996 549269621 868905748 660348375 856377823 205437216 470125470 616073247 831620521 306131051 688802570 120977803 170311399 126703036 890105107 533053245 622453911 490786410 929380247 847457452 851407096 405132906 771564717 264141660 591552575 906816001 971324921 485559303 846157618 557432573 780572151 175360767 531424743 432706999 667897754 849234674 867935701 329992363 353084163 661646529 700796378 258879512 774626339 852915506 961659044 787754620 888635755 549579521 816152836 919503252 977355125 463798989 902644992 104147883 686619252 217013109 979515907 919245871 989867754 148775108 971465632 426901688 691758404 659270853 772228990 365163973 678804793 147703397 206440588 992346981 995489669 863718797 936818786 246836661 321550613 274075486 846520893 448032945 630539663 579618335 834262556 805277321 836593213 989262871 997802583 545630403 754080518 61535563 645280313 338107444 939203115 696232726 871956410 44392824 121448973 324338965 804171134 902682521 960751893 211368989 522807903 396247238 542969161 369192727 506896780 518254556 915244947 785868327 932474892 11446774 403049254 755523298 817231376 130269067 978287852 475231604 984848650 842332421 884106297 429170022 948507994 938729537 971523053 740024638 940366849 58054583 184646840 181302294 210182517 664466712 991293014 136046571 902603962 632119859 950775380 520451680 956234189 584099490 777762844 64979992 75946089 15287227 392557121 137637697 758515109 185760528 281233206 203804916 925439532 625781398 631383170 884024942 925464225 866512034 899667480 126407317 240167525 643548978 771429721 121308527 794383436 371687455 731036033 434057309 722864371 950072048 958614966 976426946 980375715 884556371 996386537 504605856 653842047 245089745 256736092 621696109 913529114 880575838 937473002 846628289 871051653 822360040 875849944 185698009 378799963 476673346 831535570 700325990 808525823 890188872 995404211 812280118 992328817 34218355 647614191 377894290 961400028 822283195 944241426 604075372 930760383 148980368 640271701 759922366 975531300 274729549 687197814 191314547 534944334 280793381 800653176 923128499 992654145 89236973 469254511 614846415 968909704 84114778 107464963 607780136 719148089 621737213 981824487 419627134 929484221 651848216 849554359 665569440 796400805 582608403 652917264 645580569 850522068 581672504 657697733 345964980 797231539 449258690 962380536 460767528 845777833 437175059 951881118 407209199 886752945 564932190 894520901 321639239 535501016 147253205 588109596 410880926 700129936 358756911 788709520 672554366 892457219 749133540 968808384 806896718 835825230 517248211 934440351 710835033 786720764 463644638 986837224 571277505 952726127 876242677 963333083 759917054 896058480 385653928 549688215 973269561 995581503 761392458 993537041 156355201 708411854 306686760 432276167 613758092 987628164 522855423 530557124 328119372 349910406 921132311 934146791 747738338 939746419 756857706 984807869 27549256 224212774 576463468 885649589 683466051 851999324 713243322 981541531 236756263 307719282 839595177 855535859 590803693 988167583 954437515 980814017 363210464 626443121 927487637 980755097 158405627 218610589 393532437 826587838 175310076 574801439 394616879 719547914 321130022 619904566 372172935 476923523 249825526 621888285 204902354 406823770 724181558 969199206 945252089 975112356 565890082 619947688 420554154 685176487 68724374 683936820 928762015 979503729 1381282 709211679 28691715 40675589 793267036 994479074 131335842 810684255 604307047 833189158 805671343 951139651 331073464 918513765 465739326 719564936 119596584 836148745 625575299 762948048 899727849 989519172 197317900 833092524 193111290 393951611 131937167 490740662 295649122 770638223 525799556 642790996 889652573 972004096 418283571 735163408 95303167 382200030 522110666 681233032 153315758 955733851 304566942 491914744 926056670 959592100 108353537 468156860 689479174 944828682 716006550 926774765 881322696 983091417 446958268 753657963 336802757 863845308 698358127 719968876 519297635 659914158 535469141 654114406 273388283 616177132 541493435 760951595 28232885 393575209 467828208 965338404 197073974 325647027 633847942 920419143 244455330 768188012 152420296 905774554 156390629 181754047 744423655 985124542 370955759 943218546 346006650 538062946 483347534 611567818 842470105 878083955 834930539 855002404 587700691 604652256 603162253 708548335 892572474 903954530 135189961 355753553 810556108 884188047 731101452 893690587 48063100 702676752 235484982 759000944 52498406 878976846 90761655 881786091 378195182 494615648 906447363 927909772 597895961 661020164 827315590 887824601 793279303 906187806 406833898 581468467 114403207 666480575 156907347 534845825 742281989 756357605 875395210 927688643 948196169 951001322 893144126 969881276 469337584 936315613 860051409 992680411 991241331 992139122 500661101 769235728 111429891 601923437 71296742 885440669 186437483 761714368 339043542 616337338 890233556 894401138 374057895 811540918 352736275 548519712 997378023 999785588 195065981 273636508 867344589 950523390 361376162 632796783 715645297 819802883 302687768 320195418 255308831 491394827 14260516 462651133 102984808 297897530 142555081 169495593 819053018 862501186 345610403 722905111 287365468 304371998 206667809 383169568 298385069 811099602 751029645 931525166 168341877 215547451 861944478 896629424 42168148 102861031 409807221 769535274 411425616 454885717 140091481 176015471 966974178 967195559 117341522 308977821 57129848 412792076 192580384 662020365 837558134 922591313 818604093 939768483 716629644 883814369 5607679 688235133 554119669 844549070 101324402 319409506 76851250 924447395 313097760 809740298 525563632 971855224 608531057 688838459 925047195 996862040 841236758 861134498 896940361 998665704 820107268 868725495 643144491 893895214 167289531 225466275 896148004 957652731 529232958 921935786 676730437 726830030 303907615 509363285 456912325 595376373 517426212 917983018 351781610 688273473 882751186 986947469 59598914 323511690 447247773 522755680 222271242 368646164 637476323 871838974 295141368 570752344 987286086 992715098 440384508 902795910 851543635 994252786 826295260 929372241 464220533 852984916 210964818 262703702 88481983 341876534 220776264 623813914 701166603 991977271 316849240 635453430 849984109 874510566 711083959 744330901 831941382 836597721 552868004 990275665 236395605 765138272 550633112 556252310 607178760 793531429 504334213 512952833 237585557 522180109 809106506 954226098 296133577 318659871 661194143 929655696 534494823 961316925 569949460 680585012 717707678 785113213 470290857 812450406 809843057 837701252 546893676 915772381 399855286 813396013 598122167 988367845 649616334 736773981 371438603 432013525 330473258 557406602 302886574 580363398 307578729 585211828 69359398 77749847 639117244 789973830 663097661 865449124 520104939 543518337 671028825 823007608 479104836 981171965 674000069 966748390 941849304 942485741 931244712 963638276 718594354 962050932 835477162 932474087 252655900 495302785 893997820 962144228 201198312 233103622 900369150 966761885 831293354 979160924 573598465 737915161 890115896 984849587 403453350 975813854 283571503 617989988 268963605 764401995 681550165 924271778 539956308 591307453 253830490 782716646 396557912 910892622 110289054 464035032 307961398 705645048 793707326 965775946 72275473 952744514 685143039 704113378 580494151 832530807 771186348 888074009 495405617 941505844 594824585 964076047 562078226 921945687 229974376 304943792 76638480 883312243 407086729 411347727 953583798 957146770 366505778 969899516 480460334 706331124 211489093 635378514 738225996 870389774 909697591 950109666 530420151 876242296 379443652 718258852 350402523 604724844 693845171 807538719 937058061 983154078 829863769 885295975 956724984 981766294 348348515 368742448 280827747 837862985 408728581 508872498 427317026 720999070 375115224 893544180 591051708 605575661 557794596 848573311 605037585 782375420 137760618 855933775 592069262 905798002 250701181 478451387 905939140 951189467 959676490 986700993 467479271 700023401 761222700 901394257 123847389 550652553 64245412 345077606 888869831 977498217 820241040 896570977 740383756 922516439 41123494 720435760 132571285 511304526 617395465 673736460 813847299 916325939 614380287 876115959 723786391 778895505 261872286 736754428 835300187 965746049 964437663 997542621 674283949 932266583 340452173 357477245 289822032 982502776 586808467 863769696 369517559 950721512 537299050 696697846 212100903 813564425 366065663 383747243 804893290 994508834 727340921 989271456 116322338 395857696 559343718 614360435 268598924 924772159 188304915 688093119 28036064 320475250 290356467 687642215 51159037 284770797 30015867 493349100 297571547 318480742 705896603 986026985 879902291 880651840 306336290 351183072 849803936 960629247 119826015 486819092 889918380 998384935 174319050 774813415 716742323 856321940 245130320 422490716 262188369 836764472 883542292 923150163 984182911 984957258 237113079 503829491 902449493 987316683 857046012 973079767 479488925 788331896 62914016 381961803 651309864 982386433 931735669 984642725 799712588 907804423 142369066 230739750 617320324 973402730 722155560 992635459 888166485 945847234 962383878 978941456 390141739 989926388 314407239 656986899 337416453 429001680 386342607 483173570 342630011 682961413 369334247 498982668 205770930 429334491 233596600 375566613 90414809 367029049 392688612 450546391 74141194 100947863 227785695 416725528 884026635 921734046 6120004 935270824 230141810 695186199 39380831 312754017 645500280 705842274 539670573 887367787 540127021 824483827 976388447 982018406 70096360 372129854 888763111 926587011 783419399 850158372 56030006 411989169 555404413 984612947 616720204 693699719 963196024 970799479 162570572 370964797 608944607 849325511 699396734 918358356 647731099 888541006 84451264 667822945 993628381 997124136 434107717 935869888 165754147 965846649 990315677 996305393 178107501 632503274 722682956 996077825 174571273 659126924 843193152 898645073 149677972 681753794 66079946 777919714 160416645 605132363 630077214 651533390 305538184 793153679 115239814 424183798 409048692 805269221 829073677 988611487 553442991 871350135 978002312 982756556 777183927 827891780 641043161 826334469 63796104 841669116 363024895 998543824 498124765 972653223 382985793 718405235 840696665 856736839 213671511 241391483 64355615 501087322 58877688 128792437 834145705 972502739 103127782 269959715 150919535 699190033 636215551 800046791 526800961 789656500 525507435 738827568 395514166 976312058 576825490 916851903 965705870 993982373 928896229 944028067 821683573 961077287 121273888 419206496 315294919 606601340 558525085 632021716 519872737 691718739 260611073 289684514 722745354 755918753 317244743 769881356 78170463 252669699 214600814 638459529 163076526 427063904 246474296 263490678 900858535 901659088 804882292 939905401 981316538 988597797 887465917 895498753 202246828 871352553 910174641 925921756 299663803 799897734 206055414 473414252 617243943 711920092 145468526 646074728 727003833 860423331 114125548 961702343 894051287 957967543 276958377 475850354 839002146 970699351 199148920 427602272 788457006 843283524 119803010 147958303 276552033 754235812 90454365 170990847 168472195 528573630 208625416 681475775 325432783 349163066 632425199 665780841 881675055 915458060 846112809 990608330 296657831 919081816 613917946 767796931 429501197 530164299 701184023 890978880 57296861 264834490 937751050 988395042 735631415 760744394 430728200 741788240 998279168 999214380 413557113 736574045 165478279 343029748 606713064 745081131 916228952 938633075 241599459 812528089 10327360 947176457 384306540 895718837 383707433 573656359 40192175 924049964 318734779 624352063 233753556 744879968 154185431 435517351 417380661 649831416 250295609 816446377 315423721 924414945 297625239 505029842 491905675 732556947 717857283 920185458 842363454 865486980 897488867 980437044 551101014 987063222 252392643 924910649 418517287 472766478 353216213 874207255 594740358 766451116 967954532 996162107 874788096 940186688 896207993 926550743 649761161 724000008 373088452 542453845 359991431 982896407 797979202 805349818 649171065 793275270 787781271 990402631 493691439 720971012 780482637 960101212 170386860 503594392 25715516 909466977 539509502 680171224 73864938 841369645 698523284 937205615 852008095 875814525 578601942 579510478 689139929 794967254 334384528 552677744 913448987 917433624 142902605 484075574 847696883 929519362 16258363 625154005 740926145 761452956 496441538 856111527 473416227 917910617 913987721 937663192 366617093 889225866 414592832 996849009 904636804 971430799 591431461 778382774 286109494 769083133 229146391 580580304 372738301 522942803 716981491 977512005 844465799 917748926 798975771 806515969 232204428 307891599 865352158 901246480 648354530 839824549 85723041 677528020 491205344 557600321 574972128 736620360 115696569 194837865 505771540 598849702 34108583 963942160 989777446 992859402 409015823 508034196 288426864 448392802 299439649 525178832 482118264 808803370 526829870 965752644 833722611 853855395 808584240 883155517 613114593 626933967 83053308 708630521 976701192 991830736 407642505 671562026 283425427 516779543 580823832 830034162 745606506 936064611 12547477 475843450 737348751 738285270 236655555 240535777 996048490 997181115 113695964 248755480 769957422 948709138 621658564 739372194 939219861 978911373 526877196 997915399 995011952 995466550 838143008 883438973 899407076 966312988 292584522 693521690 543630847 789965818 829621360 907095999 772098134 968650318 707772630 747804015 422604395 738123537 925658875 962282046 6072795 780969560 545044309 842358656 658350944 900527143 886079715 927210714 165285477 516277723 108527070 826689381 586791503 620461736 240912036 422676894 161950340 933363767 234282944 960538844 625384152 682617198 55693776 391320856 519437048 548571478 869354299 955757727 180285365 653172247 115047399 215813888 199577825 269754262 876170779 905805225 861310390 946270027 172600411 677271544 404778567 858223458 328297672 723799367 292035410 781122415 360351804 488861041 66729365 969905334 856883528 890969661 956660320 985305440 66172510 774702197 633311150 817412329 499298894 739705318 577410149 849737142 448391098 760159798 290893708 547199000 377579087 564909822 167675278 405588373 152544307 691685724 294828995 875648808 883225903 905744165 340570692 484708251 925497507 951544202 655114002 989656773 863845658 984910361 305129834 542541083 672074593 918299563 787117254 811881524 132351006 803373089 65421586 807336722 477626861 830108633 97341988 938921652 492209318 511258157 993387882 996352845 550304162 653762356 791197094 845752211 628253387 989405501 72925970 407778393 523628673 584456189 613276188 739379614 422487481 850651966 164669211 274557802 956894770 965689547 645221854 825987917 558789593 757436497 265772548 709099543 328446119 857475115 588088773 732131685 317258209 671413866 108092211 900433240 899913575 944703128 882803337 890851402 465624549 992647028 943597138 963848890 78957663 633401139 956554583 998062887 141383641 464637537 918392158 973782353 720235464 940730048 664214474 874631573 416981102 729232502 417499073 437705550 482328041 805208065 278411531 746600778 48548121 677703262 49200387 560155601 504152607 960988921 438759451 713717902 486419014 619076115 128488042 593264658 122071819 870942200 563564524 709457792 495885714 880863747 605439044 755393289 722982170 847876224 788633335 905820042 153734876 173342874 759291132 885466075 351917518 711089242 51051350 162729092 987586770 998462678 466198062 833670934 615438351 836722969 696091893 747759633 409925918 936839559 756490997 763705536 119432615 180434065 662385307 937414318 367741037 605030658 668606280 965974020 377146349 585183134 436506426 602601446 617685113 989579765 8210672 216052988 104292621 348219813 903879540 991193303 37441626 449346349 159574498 809844241 589620865 962995418 121424364 599871847 965858164 998598768 8559549 274637445 239113875 350247309 447200786 785712857 77175591 585856871 379856463 558155298 651137038 886688879 700071016 769506672 448873595 506484555 253203425 629261765 935367112 986703861 462564136 485574362 730219628 874733662 752160485 801027791 521318879 958751971 835116660 848354022 228635051 789416166 798479838 954141524 262840474 659137597 576711038 785773123 138532585 360850091 571973566 596987693 669305657 833544398 360215255 948026366 258204697 780500477 918790066 964039094 186440755 277675556 417393828 954499979 721480284 845900321 218934119 874843564 61091794 119184359 263728283 352647775 745614817 904308591 12766206 985565499 697667213 853601888 164689755 760778903 752279525 944830008 177429688 824753202 441443484 780656661 115438121 870955121 737135921 936109755 261377382 537134424 721624368 860436844 512580948 638230771 747597392 752134617 763316400 968954972 366133531 816022469 290156408 625102497 295432816 380061879 680038202 786872914 583791539 714553498 103410605 220197100 397695867 836942663 991609988 998262245 489959787 501120724 375429974 625754366 836897054 997877596 497683885 766729767 570512120 806248393 617348106 803846460 607162211 909729918 131471717 687518397 899303018 953303903 290750780 807666279 115270013 365694099 551991178 786042509 191093728 939544484 489608298 719320414 706475769 868915498 758811638 769725815 701270026 898082676 208510413 415582899 907332015 916735695 554375112 625271061 483010176 552628297 138696949 236398082 832431727 968365408 159985195 278150113 959838177 992859938 171504471 375277266 358932753 766987578 791554619 913895481 540148277 610378567 330271369 856378289 293903633 509718986 859065317 875796139 107430644 544775474 28369141 90147540 803183104 839703472 983350939 993581423 864589042 950189957 706691735 796343675 595418802 829907409 248907116 502581568 187249207 188281386 211562260 584158359 203870394 427215018 361815170 681731096 969418741 991684284 735596060 811385325 657480331 782042763 556269444 734787277 749592804 993130333 95882586 410515056 677388031 904255163 205985602 307928992 404040248 522007171 428617550 791033898 306258243 808095416 138045365 726620534 754696129 863209763 375986671 856013782 253283616 546724859 814169443 870777662 205154836 890263339 634482822 696015380 857162544 886656935 311655945 758951191 408405141 787477593 709177804 753228281 113764677 558680768 247052405 401353020 44372711 272861348 718238078 735130446 861088891 939563527 47081493 95617089 732154592 964661603 530770225 783283104 544518835 994526627 699249813 946393626 787342509 881758302 578498381 696783852 279833042 580361651 567755118 714008150 717638713 755191467 772753157 915796043 656550963 725326406 150657611 860356539 19032763 271925624 148186660 298075659 797559305 807835995 373325117 683066111 780089317 929357991 383791077 908910688 159684599 908355636 61194715 241782945 836523000 868778539 134704861 686806591 755655521 908091530 481755250 690781751 728719950 881561964 516384441 738632697 53244649 781366930 245692796 716372327 74271284 627782734 832709881 880276846 237981274 630316011 782444827 995657646 454472317 723379327 376935467 986177305 930425148 963226816 390153184 759814167 764934750 970767991 212910043 958316591 356584276 500940526 737395551 981121257 942369022 999582522 310530491 320994817 291365682 650910233 989789895 990978011 317023149 618309218 716455216 822563335 692671680 808824182 56604350 214080493 7984199 693509845 896917541 915394775 916822954 971671987 669516239 990267428 595323212 597782184 674814644 962923688 891385907 899338322 432268616 986849325 258367649 961266495 347130788 374820223 851820873 943263077 568165025 686572283 669483432 969619624 558884858 703345620 204766774 277642484 194079196 553567320 377460943 417566370 477981991 951214607 245971320 392006199 28114569 95537122 775055451 783113294 55824522 150436560 78375251 511785644 503008929 827952317 148626546 661460237 556769863 770610016 554833167 823665621 192696896 334416016 804445688 919635867 780668683 820763650 710325400 796669398 456142967 767179792 176358731 752096672 935122552 960763616 302315546 550785410 282576087 959015659 34809676 177982480 193056572 542330736 857175724 931387693 460240003 549933202 602230905 662075317 22759123 779336762 307285137 637667507 462540036 516451389 740822680 942197221 787632335 917159567 189246598 928215334 889043381 992667649 238454199 872487486 97708487 547357915 12226383 939582629 964734651 999802416 560821172 804917254 82373808 418201732 174983056 354730108 131143549 532432026 627840824 870081255 406109757 578693866 527291187 820937090 672468838 967767295 966142395 973104760 914100537 922277138 70071780 542749191 893111959 940160601 972294535 987584866 767226387 789748709 628907073 918390676 928351644 989192267 352533509 582497148 500951078 993516918 141956377 669448402 951497723 967757361 279520849 697562502 852559372 910446920 23804913 798398731 809992171 942931367 551648861 857432969 855000713 866553791 428450044 550877195 182884887 757098291 524948071 854071789 326795538 538929309 128270399 470234315 390941343 442153691 417138108 602749871 753596110 766435238 137733000 913080256 151306497 497068793 631213857 939972034 564006911 569338177 141178790 996660146 171466255 599779330 709525467 709532021 564572105 881486696 28770528 458461218 199497515 849166985 297655967 480703808 490216131 853849751 912068256 991539487 172096102 660259853 639080470 920281469 461034001 937002080 627751006 721995572 224320808 394722021 906018477 991468830 821993800 921007590 859388297 936940503 972080062 990401428 392308429 846760603 415027921 965801583 986456765 994238555 936453333 961844829 645561839 794367032 457966483 487289078 265865442 795411146 106383169 163015064 279298801 989507819 271966150 446340792 98444181 254795267 164023845 468887235 291062191 650813328 242170210 862164499 10969667 512108749 785755875 934092550 132836282 337031236 746001715 767067946 917203015 964025599 562247881 706311806 684811823 753490140 804883524 826163133 138054490 679019427 156199329 985207882 650174740 912243771 868265109 999586906 615428151 793762316 753977087 840708870 498773092 938953283 422254400 782944053 726819250 780864812 880012208 936142725 132961682 716872859 55681519 745075701 17917208 212426430 719308564 830230512 566715012 750318155 872865399 905564211 810609659 886361153 886829157 931788204 502535452 516459151 439488057 771471446 9026301 292211417 660585413 904931055 485001742 491924681 841491883 998630825 30576160 382866305 54945633 202632874 651178791 736029644 975139373 995014429 948292042 985702457 689527886 895576871 973808041 982318717 335217574 589646990 752915078 853879925 913990602 922288422 956413334 963562878 935720700 984135182 112377295 631625423 381842161 717639652 402397942 996744058 253392816 601745237 186616546 858335010 405008033 760660146 467099409 877154638 207598952 802860614 157694964 852482134 908883827 940210075 591708103 653335492 698078387 977924738 13768293 648210730 971765168 985998526 76890806 414043814 248680872 991776166 903513123 953266480 702050121 768914884 311197444 725969943 514547180 780903399 508606197 764652179 926928891 975959639 685354488 768488851 144420268 344018610 801673705 859061388 790802893 813081713 908962548 910975011 957751958 969951112 81334812 640782575 519773329 866902524 336424359 449712690 960251226 990548374 290511342 765226325 350393568 876038949 742612959 755735782 537025751 695926772 479778975 538745787 877497772 889182790 779138068 987932119 442715660 898907006 854965647 876930468 499942004 943861378 43894203 941520792 424870595 437117732 955902099 972867779 560347078 598100550 447983333 845518896 436033377 594848950 270923210 635732279 407577951 538246701 336172176 516796936 205331197 314143108 808331794 880051604 832679461 861653534 718919286 864364342 713092477 988897142 113707599 886828385 840172236 910589659 846318435 883265737 481690332 953644486 93129631 168997987 780032479 925675066 353715927 549383353 840750056 972940804 362069378 777939554 406228647 908158340 86638556 919878037 103395614 371919475 68621677 235693720 557916844 845576010 770430379 796567350 604660793 968675682 159177706 568753005 13983885 811664325 870958330 903086037 671359247 877558681 757170416 931585170 26731963 943186593 197484683 414770118 918665701 943462007 188307769 361092255 113671372 393369700 858775616 962570445 657901142 855974864 395148319 874203166 914198639 926511625 67858529 434518907 155286022 421808032 332254990 555444425 595097413 786474803 321069080 508108004 353172088 726143643 911730169 983702975 20458964 928722895 982202501 982847288 298560243 495437016 844852230 926349292 798032237 837816960 786411398 914516740 192633258 961411480 260792461 736848632 882152842 947356992 427911108 822778678 392790754 907964483 764849547 964997907 46829389 332895211 578178102 598535361 719778175 758516209 345866005 805306898 567595117 891175418 712050344 943687952 376906455 889415017 463482300 484394890 306927876 491880228 264256532 642775553 389772189 612158090 315344469 394081976 581362509 879130334 28443663 909645227 677481038 855394534 732411829 880602542 528713981 777842507 171123799 626833476 198395966 521127534 274419036 858862875 581759600 719957978 223508092 662682801 274808215 724480410 24866912 604173211 997523824 998305479 827564496 885512487 216667217 415319262 818434345 879566371 292655522 667018317 991216158 994547042 16377710 259102007 269847671 817084436 704253125 920471356 631267121 636129430 336854763 644267181 463550854 600062190 401913455 762229171 575078169 756292064 176204613 919950166 498636077 953870272 391906164 593248828 622216578 654483669 708034952 923001942 860106644 984196077 457659489 880278805 760067942 925509531 533579216 907222321 390110982 542021737 797145155 972549195 62820657 692503038 780141334 825725521 441586141 503844669 479962265 820392463 271845036 966712113 444496008 920004721 471756125 844397684 56684730 278501906 299791002 604433100 4517273 363575115 326734719 761777279 426690371 942077228 270121421 331685358 656169133 811244198 799440110 855302920 980511683 993563788 326027553 834081988 569751640 936409925 976449822 979417097 839313226 952980197 588534804 935270719 84738513 383940057 616730132 908301378 278904557 785899116 794933001 828751255 936439637 941599003 401225550 478812811 700993502 754946422 422565088 907503331 307267729 509844925 305274784 307833162 805329250 813983566 418694810 637431632 898213653 923252325 810667322 924912059 577504857 785537902 586252913 680994973 894821006 993885005 421368971 552128537 953983701 985247618 466455084 855807691 660104596 926064057 609796730 685435245 833734215 978112308 729247332 997554830 517070188 992822533 367874543 397970785 64842257 411797913 146470798 801157845 843288142 919627826 128367903 403636522 83178953 135355863 220409107 442532631 274773062 499695351 515205495 735478975 560205479 886580263 441424170 966002793 853091764 885010776 938695513 997956763 316923867 593224768 280436688 965956122 39834600 224366341 853220053 940503017 622265235 699602842 196564296 911555704 519783495 659621882 551206776 945843197 744149600 983394311 965217810 966047873 835941088 943623489 848870825 921277150 130084508 143903992 550118848 860455969 945705598 974388408 956055693 997341666 640379426 675064675 513922344 773841593 404764213 944039054 678514491 794347231 893718740 958833594 745792173 930851196 807278545 902832862 437258961 529437678 499556078 577057872 994385713 996774931 495154204 829702587 953685996 988201705 993885937 997280352 139236846 309383508 750746419 752821614 270617141 865850398 65430989 638294684 310709439 758894672 509721894 849149855 660331779 710999966 268578434 650715594 888872426 974375787 393314671 603507545 66762471 554645284 115625434 391883526 76394671 809407831 122917757 700771643 846123964 873596128 204748553 925916148 704423613 712264307 432131748 757917701 672231231 938694090 560305438 620132182 157563198 784983318 963805134 985070809 519953702 734704473 264039349 426751021 379113008 856506473 372070391 449339356 588874958 642742595 825396760 938497139 946385860 985366037 738898486 971104056 279711146 827719485 775803083 999230610 595851173 690551971 56385816 295714948 345207880 878493057 904817185 970834777 273512587 611527795 884063160 961426137 29728417 270862129 219802654 728531060 189575106 740204103 593126731 661794720 954838664 992815452 714981434 858225231 791171239 899567954 768364116 790501714 431501623 702988754 603395710 866176550 273504724 596604253 342579211 423448766 327392300 830356876 703941521 998459074 36293212 887972636 633893460 851348838 928172414 938738781 671553729 977016381 274263463 338151469 924848701 960372741 189932013 826317993 381948923 857595583 281505287 630452912 650105240 985144561 479173077 510701139 538644100 893908317 452626251 883603037 466614371 469813638 616721713 696680161 171466990 610690760 105235030 118874189 567666948 861919614 940446078 956870703 103249998 110688877 685460161 811152462 987866828 995971420 960595549 972263265 397693681 852426544 710595767 816127954 210750586 497152338 764871201 841263886 543966495 582848451 68118681 73522639 498013662 629532888 643977915 657479676 897857303 975023944 971369270 989726222 392451211 806124670 646363578 837350176 73599631 195002529 150967323 974328769 983347984 995982349 131333170 582285436 211019660 394313152 359078845 837689920 893795615 996615402 418170754 597108716 583452532 665774905 92516669 265348077 663543465 746185596 458930934 953881733 47130970 733076652 83069788 934101017 482042319 808302746 568534137 681559204 339124908 885767998 813385325 920893725 612296027 955877380 963763301 996565140 68857725 662012793 260071936 275620413 718517131 724857146 95175667 262194599 455841699 843634684 526386473 824096449 19249315 27872169 443366946 549916591 166755553 567524460 150072996 984494080 424186527 634821591 882490329 942816056 116531798 130241772 115694955 955295270 831048840 990912054 421776954 574216688 859577202 908419847 825494958 934434967 431476393 742303196 311285985 947073876 325614873 488280132 267190041 493462770 519935466 536682949 503649134 549069471 700962532 771622211 288158688 407704526 253919349 826809073 103148911 137476381 749422330 945266659 45049856 717824058 722141759 768162975 562467362 565076237 134290984 721735843 830729144 886600091 25758760 699594048 434352095 780055291 920669674 957181270 352346356 624708033 424678621 705480487 785915085 949892127 268471727 734376435 386534887 509624416 122891099 295405298 975666149 989941863 500559084 874853591 546807545 938124548 186086053 223574995 243794649 442083111 304566542 577215672 525052937 584349042 879049159 911224212 843949490 945219501 44637985 997163192 702803311 878075804 194760048 640213436 238905340 774553789 768383939 984212725 850145755 909425950 205511377 733798755 522367475 945072225 598929841 604743023 299333678 400061470 985542135 992698978 291284950 827980260 694670117 860135289 663200606 671094828 492221769 688250594 812150644 879313434 112141690 702316234 161188906 757688413 224277118 371125652 634786681 732421322 549271052 675852351 512161693 915602378 467824432 907914475 10831749 558510418 102868268 884485980 546239628 556305290 307080461 576278323 624551531 681542064 102704088 201625104 287692139 772972849 674814704 729988834 247275479 784809634 797141206 940119389 662250567 964264902 510937733 722526634 656662635 686226447 185373788 441664253 515623078 776273003 331947050 617175651 545880562 858659895 838282822 933566705 104072140 504883922 341919003 538256409 473498655 889859142 487405632 514171415 30288090 117891984 269544238 497010195 649099091 791540387 336515890 517339281 290986202 947887970 478739597 931829553 343761292 926146433 356339753 563845981 181992881 917562057 783855299 927820095 99971376 251204082 531243914 933161336 391748156 771437111 392465900 874918805 277602176 693447661 756680073 968142083 625119702 660593428 940259740 998839103 813640546 867910712 709607509 765124158 930368045 983508310 569872999 969168679 74960038 97892609 871100225 995602095 95409448 350107150 492355857 964475084 967176778 987822217 85155058 178215387 862127083 926955288 760938173 960132405 764682594 875238349 531584282 809736143 953116858 998519348 749250153 792952370 929640714 952781786 485851651 749874468 406587232 717210320 836662386 889496205 48569415 237672395 686076017 942104335 954378738 963022928 866329939 973064608 783402159 942696487 751297312 771626134 513871013 680654742 89717568 426140008 249185469 997172787 979304066 984559453 319550099 712039075 455197487 550085890 492288988 966432007 970154043 981363700 589243334 863391155 63372777 469609525 15208894 301718822 497461894 805352792 823675554 943913773 782400965 953755875 835771829 889319876 735999300 758412883 368277996 710747659 476101557 857618313 861586790 992953063 900437851 905559265 171983061 983303742 107710545 371949924 12948562 936531114 25922878 179251671 861196718 889079877 755598506 803070904 754707378 837694011 439271817 479543291 478896238 598704638 642839254 897227437 878631734 962923784 603311127 641666068 753590763 877747242 690400270 711738356 59512458 547743558 101608539 596419521 195755000 542355826 160932621 702596081 720730682 861761911 575718401 988787941 14765935 945018770 343633124 348586239 545549282 944432380 949985094 957547792 230487664 785300601 878461976 977659888 3641288 230196357 133383999 428546347 8594480 750202714 58243473 923030057 711132382 862753483 712171704 883882405 575593228 615885424 78397177 686330991 458474251 773562964 735544383 894961392 48094377 457150947 984475729 995939315 34528374 148280716 350995169 940159562 53038581 608476365 18361546 50481445 194902329 631184173 624753638 678989058 770590265 885313700 500570904 571793122 816996469 940636379 673965848 856605415 654220278 732864517 867085602 895992950 847876771 928459372 329763681 617414156 490695256 793355715 589192264 868556414 867514070 926081636 877784561 956708198 584877552 586108975 951175801 964186013 840604661 987049025 330935479 856740602 520686957 749026201 821334822 974896053 16964931 246771601 109556633 695203515 112559438 660081688 659235235 807300865 965155678 975813957 898431083 966307014 97119666 278362015 65060081 634061448 810620717 849591503 845316015 954872883 561728529 575278217 685725868 990726308 568359179 854882549 853666538 906276679 832187448 852873690 677917944 891196078 563316317 806749223 299987683 528955663 71767795 920227978 261468750 844787918 155139795 446548704 140668825 390405688 490347526 583860252 58732337 729701322 491061089 558863898 522309194 777621797 959902932 969843167 72319373 515360243 699393022 705701312 844393485 900191848 639800890 813253505 876773049 882098669 593835728 657038791 814362145 877445393 453535412 650485401 268107688 553710982 295991954 977297283 968918971 994834975 430292671 935744731 343430568 449759771 858881949 864928998 726302014 810087537 312907570 539097311 987948598 989625967 850474821 937991191 635984380 847992986 335959686 817319915 198538153 616096301 967160497 998529195 879304632 966561074 105717083 993487014 1441754 963647952 80906890 989898110 858013891 907585152 101384356 594438166 66940247 271404128 971459485 990165293 555270851 934922896 87520929 532014338 760862315 853117566 562459835 749690453 674399205 883760188 311826987 907352872 770421951 806303065 567243507 934339301 873264431 995931625 396068307 754354586 559752325 793934666 815528470 872752213 209794257 379572807 574140821 737304758 929796897 951544983 559263587 749647958 986675343 989020900 490650529 866326060 939171297 960208703 355456575 893314678 529409942 991043358 955425247 970326877 361633176 846142108 187486972 928136884 84136645 846848591 758786672 838736071 948077423 995332802 55897721 772946232 208595200 683993445 114843787 574081105 349884605 365371200 90301878 739397422 877401331 938995054 995690216 997783989 273676117 840287403 575958534 585447503 817173601 928025737 605341804 846478366 952553490 985077827 576104875 729952840 580593827 717955537 675025747 717380504 322993741 641538458 619595245 623112022 382360288 615918663 740283821 754746527 123941788 224462582 186420671 217600175 807631114 889563170 734805952 745252577 673564278 697719312 450251549 561355724 495021993 863541608 282065530 721969941 773940305 859220154 624067479 989230702 499891329 707311192 762081090 854754571 319157994 563824455 632055915 683810390 723599174 732436509 558779514 767109561 368472243 527710206 614219472 984581145 427271879 875881223 501704342 629472696 850544164 950808791 195714108 257566333 452988377 648275032 255985776 264946973 295087933 877689223 987779897 997526105 875779987 961552470 776653607 920854027 102067234 847635498 132842044 438661150 746214970 918510151 16286750 713338748 121622555 415411586 672298052 711917365 221578990 813336069 291564853 530362500 868244752 971490804 807637646 812133427 429793809 540078775 674989634 977635998 589100461 768473235 313351404 507604853 71236230 843993762 198583563 902969869 392961619 688220113 728431843 883303503 450363360 541843954 29621353 238080466 757087248 779456058 382739975 644226567 949387230 969170254 458702090 539808238 489016223 564655756 836514261 846996990 67222062 182726512 266717339 750858129 211770852 688998324 867848506 973837681 834002368 877172300 252669249 944632811 906468455 945838590 24488527 430045295 112977654 768546134 484613628 599965211 772729585 987122410 526390493 834251671 587069064 866323002 299828018 809328957 866675528 910464522 712183220 881437822 957387946 961327672 381955469 566227387 426631120 979957189 29001016 32737972 378901928 469526714 753209597 988849561 948247774 992111244 912505697 933767747 422882874 986723045 690351925 706492438 871777896 913625433 208654247 626372799 300372148 618829744 826907172 875467789 772800784 835643742 187570099 627837396 509846738 865153977 978418918 979155805 18828198 450048768 828546516 982986505 29696840 898928865 97628355 625334594 814421707 966326637 886848320 964063780 516589303 957851285 65112188 105017105 346364424 658706840 969205381 993529995 657247610 882950742 757721716 808060972 952993141 973500850 889382129 899571682 9809997 297066346 992898279 995614647 278706801 957471878 676689168 867190140 881524045 886639691 47888697 213193552 593829227 715011355 116822323 897034525 83953702 591255238 695371624 721309746 832449831 985968813 33329365 802840087 426246844 972778930 152402504 468641142 788846835 883615434 226411286 560999487 750390655 961058553 852943746 931735822 853511384 933638333 939426294 964378853 675560044 893977386 842974743 900207307 914641175 965034750 695597954 789267724 821398386 886670985 973460937 978870731 246461008 485383106 79812139 115444168 318826208 361299038 649966315 738256111 365462848 534778322 440360944 446340008 652476835 709567433 661025972 765335384 469193483 940779039 678452939 905500284 463952389 595750143 230411069 778320094 785509047 912730064 973465968 976478495 415798334 425665773 516959530 952446068 953909976 997171769 366540108 506376774 668438737 881289359 344321685 790554575 610328254 754230589 753877305 863963820 806426977 888243322 270723081 399115595 956935217 983057074 576967758 577771728 603194330 621100007 338268990 651890476 162218744 530391419 119339963 645612001 517791369 651345819 732779832 919993651 90434703 117663647 594356195 866451548 83756403 427119172 542926506 664305594 695000600 766181212 237440524 850455751 794693910 979318224 905531258 909257004 70812759 832710763 943186958 949728922 140453225 165352516 509034109 901992005 959427292 979164838 130417722 438905496 192103039 255379153 310334236 850324543 321506687 722731845 315994323 920740871 358696155 599510732 73160838 841022022 655717243 842417886 636800871 964461125 514631625 899283760 844085864 896611990 301296354 868868707 838618687 964179802 747204142 899985285 504068296 833542469 208104956 964873429 270671114 312635788 101749912 486377212 120778955 260867369 587550531 588060605 845315710 883971416 301989663 721877738 415745505 487608979 358226017 725757167 484200853 696911450 410671338 707741936 790610441 804075544 768295078 786634262 361773646 797215471 660188183 740895380 403047424 888629028 892251564 936033654 343686858 715844133 810838489 831165829 473886715 862022004 760747749 795581570 612222820 817102603 953193490 997350081 150710992 510748411 129759555 508515250 794648584 924230116 328309923 661974654 772064270 848146137 406895616 885504636 334472059 756455421 104207213 780161965 676160200 708133902 940198862 961055141 944496245 971971766 28142856 275109134 353883471 395236555 60379550 101892357 40564388 92251459 926457646 964526946 75034090 846839977 797845780 960612160 753030025 780263021 271826251 748137959 309186841 999170826 66218865 653915480 145272616 369830903 836429498 890105266 32651615 834623495 501480990 802481025 58543067 962341384 652145331 765130728 448009170 981955153 839044476 854164056 589820009 745251375 54343593 215939766 159740416 931402012 943788835 983079070 610608777 997654531 66984008 155342928 615885914 902139147 290805830 508957992 645677847 929471968 747062501 867838582 713962081 911644583 182836029 422126442 816788441 983518097 477498491 505722977 28389193 76735683 916299188 947149861 13878745 707131403 447778398 954567070 113942032 303640662 407899933 496446196 266803811 986928935 667741356 786881092 589044921 605741354 849937157 893913266 506840891 770012953 730877625 811047241 896851731 964215695 116926453 567772692 355510674 511337135 553826246 876592338 361782909 937527853 994256947 998460063 297566164 896695417 99996629 448101838 75315045 850175477 989579892 989976686 107272041 166240133 143374580 381474377 207420501 302513017 848265795 957397405 23126907 627684050 912890645 962283040 601927133 652824690 731852222 950026084 286507671 297130915 419318577 544646856 600832262 837083428 179307107 473830856 325617605 617169050 455858782 710403861 943001907 958728168 2569816 484600366 39436116 457395005 748247884 918500460 633477421 675289002 716421892 740030794 315214986 372372629 965002431 998921099 161834889 524800478 796182904 920069204 793899560 985797162 789632888 820031663 568406188 582666915 872602325 941245370 224398858 407414428 316646366 422033954 107722396 113420757 46421537 640033085 682247879 812108085 976282415 994455906 179332995 879519153 857464261 982093026 867545359 900375648 819442973 865050631 129477025 208134481 566748901 958354163 569811562 685214447 741113186 838538653 100222551 844072401 26092018 526044285 486786678 515834635 836976904 893481133 989871560 991501445 856303471 991371103 626642657 826226873 245756263 879692098 629091259 902931713 124885908 488232808 933263309 984888455 595360244 733723705 255829188 979694449 814778501 819002372 306280851 668398298 880202960 894493931 508324719 738155785 369718852 880184786 900670132 976390252 964195207 994883690 388163499 672444412 532987522 748138618 212111326 362239960 384950270 471895412 881596875 967084036 31143281 396437570 526689675 655778729 878069861 929218108 744697095 875924329 705322332 893941260 74384644 844828894 969434758 984601376 14654161 236258032 431125392 889047569 968304419 970863202 467921044 621511813 905580359 975617506 623790244 820968951 48456333 965279730 118046156 574161758 908090675 962385565 296594825 943725468 444320638 652867561 39121008 317567604 355068195 432708305 719271086 733473814 765360916 830039484 573690518 600478163 587179338 913240195 488002783 597503735 640788005 994051843 10105791 826637366 803962910 917123352 568019487 725608804 546221466 667091221 303355010 750748662 648520152 860277814 809143264 838869000 935824095 992168269 864516387 905736138 680593987 829246646 748399428 935196086 259534793 914366896 970178994 990097860 92175404 392606975 96050647 835998947 805723250 951537462 466450542 698903991 247509042 721810121 563264269 823908480 985045434 990973782 136428502 863396619 509028840 803785096 512734516 552113062 520983603 749575228 841250775 841340059 933544819 944671771 525115754 977948028 621158550 998814884 312745810 476073490 541354035 824006007 977950993 984296310 332083277 341615290 495656343 611028790 266649605 544156979 728398443 764914835 563599668 740102450 331082712 652630218 818443039 840151667 579162062 773508315 647793962 840807133 13156931 976429847 698929383 705519376 753061470 967283383 882515914 950195447 268362313 751182822 355288279 680675534 767206453 878912906 986506006 991984344 32826705 677631014 173926048 270976503 513821013 701571260 191669593 610156225 609118280 645560347 443573673 542829059 421848104 903647518 513100266 671759025 631964305 702644432 400662011 724931714 658778927 849731887 568058715 916785292 44626725 612433887 781650207 978648164 77441984 88625966 280589416 455248281 472697418 880009897 244424619 868365518 275490553 574456651 377142861 922123560 592677101 790433639 627737177 675089992 868595995 964288800 904135649 975204943 369969949 877279674 583706804 995767568 104337288 658812457 450359293 597872604 133543204 875872178 70111381 990446786 996491891 998322804 660496044 914240132 603893997 663757028 666827271 808549698 71764293 497780084 265334764 683637667 680694365 764845242 539093318 813480189 679152160 963610737 516640612 637319585 935942945 950496838 961214418 979234225 986995053 987000161 555470812 630839350 294739307 588379734 26571105 997358835 21163953 252283216 187514619 535305257 795707740 847756679 958966406 974541791 494095554 729950316 223648028 368326034 711911645 958311979 730249754 767612755 504069037 959475317 230457963 923127133 864233605 866690164 336351073 666897736 701427675 919703445 576400455 640101839 706606826 784618364 520995268 685229170 819805069 948409604 857062506 874323908 529097647 643406652 287127394 324693688 763805470 960823164 747726816 809756987 43048965 945325329 543495240 917009495 825164449 951875687 486403562 544926836 527926200 915142595 514307116 927818983 287713278 823727351 457020041 785305650 889130212 920888912 883519475 989247294 608414636 759570157 666662719 725146730 131029870 801287934 502257383 881363330 386826954 881970727 944910902 980968959 990526907 992205641 161931210 744101042 693056614 770971916 483702411 998874131 142646876 465691086 949557897 966691740 798185295 888926411 86115316 972391771 215699160 556563737 414330970 529203663 191006928 481742939 271350621 345846007 195547869 951075587 134313146 807275600 316345116 646028324 903202763 948493522 803641885 966605358 526520155 906767700 422169403 578537088 215693529 277005803 367455517 652892533 955928667 969395097 576727095 647502412 151267747 719592426 170051246 405610698 184043220 596566625 758874862 759657238 690201452 947225213 971588679 997322995 454290180 582657069 222994156 913642758 827163403 915231416 260316785 609161194 503062520 610959290 858053740 950098504 4665582 255190193 504389706 923710857 508173369 701330671 165748165 809413481 642893416 875525364 454404901 686456713 192775825 753235567 864171757 888336680 905436271 969531968 814640157 998118534 645685053 964689975 204865317 764107252 360222192 774578655 975523951 975807104 985087791 990445019 111105464 513366953 37265460 410249168 988502769 997482706 475035013 619642426 53257308 446320929 668305262 676429066 527428190 828172612 444130539 787379203 524218530 970155431 74283672 809882390 988748242 996122467 649955374 869370882 810226436 976412778 438030952 788544097 539673176 966030201 13043390 755555561 63378085 488543986 637528372 785995962 88321911 123109703 370782273 450316800 758164915 768269189 728390126 868144266 715121999 778147288 544491619 786122646 802422840 888538474 70778505 268419305 452698202 640254530 987560952 994378022 272085757 941040051 1399842 167478193 474833518 717123967 625554049 900616276 939232901 984390106 129499268 791606713 833927332 945361235 671946624 866899065 949992365 957335788 832663510 863677371 283739801 515859815 212532933 486925297 534472909 992675289 399450851 407208711 131050073 140640956 49598419 650101752 146984538 153111518 138474761 245364178 908304025 983854462 531495430 631680059 667051398 741810878 640092233 653220079 580719694 726629576 241587407 569596633 823335402 883294166 209323713 926023076 729254693 818240559 997502288 998785214 873733965 990719762 188332053 566306945 484812475 537089482 248523128 715831574 26651029 429512465 957063438 999812437 42795967 310481878 881564299 992175010 386081585 587143814 254147104 671774889 6215130 404080620 350411249 450135447 208944765 707929203 664001714 935058686 429739233 646668768 493938901 604957827 210050677 395794149 354019395 398793091 919020113 934345817 242878954 999408555 7294703 450766515 648113501 705415801 163054405 771605726 199885152 915949065 738566033 824441819 153654496 465948992 316520446 471416371 856819874 992229661 819027335 925462999 334056352 996867384 372018737 563617032 953218614 990761716 979404865 984778523 105877677 244049364 586963005 677357357 656996034 741985185 471451747 949888400 902093659 955305436 849305095 899959569 452788952 461489680 425636868 908326110 396149833 446332779 957129703 991428630 133832645 203093954 461120735 572455692 15898072 660520729 871331684 875305903 972725973 983414802 405063649 595784143 120074525 329318740 126195997 555083547 466181443 787883430 293008699 303926729 467309084 504823242 285291609 299103824 330261328 336229498 133485055 323337497 878753159 958127404 579210992 654196631 691875259 750606438 722073117 882285768 144407991 876597177 122069277 727449600 124896410 561825969 460331428 614423642 715087814 870793237 906536107 967304463 569624149 609505225 327701341 827981334 888836464 988573777 111148482 427101467 743013084 925948457 63640457 858566061 567317902 875969492 807843740 908541802 169988069 697804315 382973148 914610992 283453227 294322237 412076821 915555384 138512908 623570452 656658559 730131092 540456371 570688597 755481516 880887464 743019683 809910633 827055894 872766043 628411525 637270420 631450036 656336774 275313116 372753870 186728152 220773999 450906855 841162148 316503128 611858004 28096021 237000688 298374948 686349117 804887323 827690189 722467355 939859009 173089488 526891053 590785651 707951881 577838022 947168747 409310134 766265948 957278799 991493316 482757888 838764476 22290268 267782959 12448172 499407908 928616735 945143529 734876511 918291453 786261451 852838761 67145455 421959289 607939811 856968617 600451085 672397588 826871479 900658012 827169180 918485540 478139226 765901313 124949629 183384099 542327756 929871241 748418924 962535457 980904142 991674654 841807484 860991219 5471997 797072565 903552379 995341047 543352958 749998235 432237475 807359078 969878815 983366775 60379289 470899714 714098208 990440320 409445128 611481428 94665151 764558967 308884061 429781803 312001775 710237072 908490054 980398580 771483837 994633545 10092883 364911878 552052494 872716082 377579159 839136316 568502065 845602748 826270957 915363838 738022494 850328499 892611683 917994654 297974817 773757217 268649001 373097830 923897123 959547514 732264252 745689747 476876460 708299063 758020652 856476802 863939757 946869299 737825688 876835860 399190178 889573312 612011953 731690041 616130228 909779659 362548877 937823559 414722662 804617555 505622912 747873056 305864181 894932882 274812424 334060710 809134158 820270177 833951395 944681292 828051441 868068535 959626171 975164448 827354795 856736005 286152720 994102583 731839588 873852345 524288563 838624512 935330600 955542192 744756289 973246747 474608268 711026760 912966267 948478178 650070683 708648735 627100988 733570543 118639292 232414268 712492298 944495831 261395723 611659097 298062695 655036918 23276020 931144254 167006202 668014810 964275261 987807565 701456764 905604991 269911948 365632280 70919140 757348841 331159397 582991523 193643045 986917802 975958966 997740958 45134676 537833500 31498021 549944699 839796830 911731014 465813258 970294877 482099646 490123671 715414965 863721021 284390071 837378634 882998138 929914210 958172502 997236908 701411811 709666679 871697772 968097103 472248222 728631021 380041538 497254364 16450259 655312039 948102636 951009652 978272961 982580029 67475087 362695352 407168473 667869256 123991107 330788018 914864999 983496011 283268160 973087012 651929688 955721225 329818710 757639043 348015053 949837542 430601334 802220005 852707416 949316395 899831713 908952655 780615103 875524724 971080037 982361691 48984436 875753369 708826873 887358710 948243135 969720299 318626726 400261465 507751888 735068859 11891413 119366383 135345829 468864479 901830964 929258428 131558022 668590191 902668838 934728409 648441181 944518816 691670282 734945520 614643080 779274565 438317148 580342602 114526167 600512504 114756132 146080008 415143923 598942259 729657730 771361330 501963769 733008524 644969047 664673419 168382492 331994942 7567200 983891850 946961406 997308649 804653160 839143083 98411425 111571454 827970753 922627502 316996794 500260647 376417465 643890771 665178392 892154515 789949845 958663199 149305269 823960850 307413818 751299951 439559032 763843954 859750052 870705820 653322028 901369742 341307721 526715734 938848313 984959440 143538649 464190073 773251328 941631174 399673353 878513766 489211203 852782033 714375910 946958010 183575081 411464495 875773389 920386470 430337336 438592530 273312021 708557371 199436242 862068218 645176662 842964855 483786949 627410363 31382815 79373266 906074682 946766039 609238783 759315729 862193981 948386561 390714835 485347175 329614251 553820356 644357712 965728463 440049517 980769138 435601494 609190626 819167185 902367289 526990947 636064148 376268313 383058659 470595619 892228047 635548405 964980058 867869139 984589144 978503919 994417242 931314038 949704189 635855313 689781375 906639096 974631201 423468242 622000457 334800880 349038575 320268226 486894119 637224023 982541275 285138502 460403848 339801648 417857771 960143181 961573571 911164662 981169836 594174025 788664069 238950031 339164651 116791625 524363230 593635569 689471299 279914473 338463054 684838727 885049390 92006813 901270617 673408605 937351450 670433705 840446332 732304685 777572655 854349817 993945530 524038764 963785912 687973295 724514304 681130154 911819459 287610153 575387221 652734532 724571488 75841014 582357264 792134463 934325516 567205568 734430131 904965841 920479544 680793388 866225463 883307660 997193036 137785121 360041672 68543138 298564766 153594163 938501336 502748009 789319460 431434406 552289140 914556800 929336596 229064346 376844581 902496138 968453322 444222287 528179979 481925413 894198596 812573575 832649793 708449220 738899515 634196875 789313592 791971474 904009627 405440374 530703490 889114100 930959472 193823115 883540112 537747539 546295948 332659261 964247184 482737998 913511582 957161185 970644509 242911988 367886934 350425788 797069798 142541071 579114669 815362672 935300165 35337181 99503933 815523737 852197931 470841009 772849518 474935719 845008839 314370731 864992921 920296626 940897425 798185814 799017525 590417899 872844002 702532283 986167950 128890094 815184979 814254253 998191735 902425510 982487998 560613607 939105463 360707724 585765785 943857636 983473241 410177442 541048228 226087861 921822117 782265968 896042078 107214769 253046389 618918074 999315384 60106765 298614124 185244460 466661199 769390055 997117562 492050305 606800555 239816378 309808194 937618037 954191094 641460218 820425313 403008421 690263453 696001228 780645947 703446281 993386464 823461237 875418768 334848662 809113192 150164822 427833289 828538993 902914488 990863293 998680417 667570055 741998512 825675980 929246340 622097165 981468050 403518607 933426147 807723125 833696109 906174610 924683995 378725237 637341897 109445090 750047042 25409587 29995925 726476085 730372523 495246509 954126665 848714960 879047142 419856207 815467653 513461992 814799303 593763287 911298251 559145764 923368598 866805589 994705840 74586505 476051569 971888154 987305831 49567015 436374301 500943823 741555305 153919757 959579079 238947566 972733727 148284090 154066677 523951148 741034127 928821187 969887234 464066170 899851650 863998209 932651269 492423625 670375428 641175385 744189325 101877219 984990083 894803591 929128180 834913526 983995250 473251108 527380378 873479979 935370913 990544576 998723020 648484618 688552058 515984392 961966909 805965936 823516015 90447544 169917169 332807065 842254476 842916576 941634131 551962213 707560834 606708478 842388754 185565029 779581641 765665764 867730164 514120170 548610071 610273437 892636748 525689363 680432925 361319526 437184101 451767496 947836464 530245100 865552991 563255476 763042457 835768058 846486572 118747572 517527085 740992919 794244380 55500817 722795977 331336906 745433259 65055003 158049608 283233508 490529470 404166065 916122552 781417086 958394563 967004413 982607322 582059744 664074720 869475215 908028150 29817258 331693925 848306574 915254706 201370060 598423667 47775416 268559159 126509204 826474598 259643505 718289710 633257627 931710082 569006163 999672606 205410157 688080328 900178204 914697951 450675162 583274432 624351116 748184058 674719433 772726930 478130054 882748482 769615871 774924322 654735893 657997480 376007369 845737378 68526427 854504519 652255850 864562265 961346823 999955991 597030784 690515998 574017632 590448187 763571447 910196189 783701858 932328091 986067989 986947595 165412129 781526769 99005594 970880435 790941783 866651339 732428084 947099103 752082157 856878995 40355722 617113618 233282543 520510091 88533134 900905303 341398681 967101662 192942351 537999891 341951469 503860830 774481565 835727513 339207056 821264488 114143966 778375853 587602978 706712233 454520370 744696757 63658406 613130539 520997314 616117409 778847691 951710615 16680537 159318240 971657985 999453077 450298981 638299262 62245375 659374991 2615780 214035299 715301465 751350723 878407398 961117594 983550103 986597425 714142567 872917909 11384939 446232303 106373837 591119070 444504245 550407198 560609040 848756976 94718652 810668358 925679771 992315964 582233351 991602562 953775145 963436037 671846771 728030853 402761481 741735858 868526353 997672694 192627429 614867648 319046959 709877453 846908493 886263826 396905613 885973691 254233406 766068565 587655883 665917110 711006780 890338081 474519966 515227915 709569654 749389525 542711575 708871024 90616239 244804178 375669128 776386247 256675447 361153398 683968942 702511347 555394310 970738061 55363756 899836805 350779904 932292510 962114010 975563393 94244492 774934995 67565804 475310300 688386946 910281742 87357677 721860228 208466303 416272906 263198327 985319112 246556123 681781539 845719860 945258451 315681409 559666059 280806137 348008838 682802152 820389934 300977741 352692996 815056074 892733497 115031974 718461384 950337793 985126347 680956950 971852781 301591060 853892537 425724815 647319142 247344208 736230090 149158782 255428187 738204337 762888458 31436933 108168756 300185931 638188297 34881168 501462182 420576381 520069589 190839358 661088932 860794795 960537366 199484664 284400339 126550402 981898441 112759898 738097856 574130269 808104814 32104897 283480044 811852054 862869775 162655509 213383829 528950474 600797739 967120239 980566836 498685198 604016055 45127309 959530435 744977561 979534784 88965461 952747581 783106389 950697873 31542719 655084897 21749579 102807036 442525902 972601612 591984248 835536202 909326169 919122898 186155777 770227244 805867863 843449515 127740572 741750735 824938381 841960846 142329642 550327977 233124658 951928482 121677011 493774052 55356442 150184766 115344749 350929514 597536403 665773103 515110479 675407480 450680281 771796331 649285558 987518299 990043803 997635935 951261838 954538089 38150059 880219620 947030931 974291939 34764869 432082019 789298655 915999368 516930727 668151770 473559944 768145864 895016167 912905726 581745599 732616758 645412662 908227445 764439114 945576589 642342218 695007629 295778492 729005061 244033889 762132568 567972986 610227932 134616762 883556180 605992861 734564673 469257200 547709637 843563108 864648925 782958257 867388484 300615323 413957646 62074853 613398368 933218146 936508661 825592487 870457031 832202791 835499281 593271193 966676999 606722539 671420128 426387800 835915296 823103509 865986892 302805328 673128391 912828893 923097627 813432584 923295054 544126312 881120003 561600218 635135796 264210472 542455613 478426085 624921455 220866423 583522563 671222342 752532026 933522213 949824614 460434965 737573460 689215772 885932145 429812854 662078218 772057555 878775903 922576558 929923036 622601462 951105196 365859223 749575716 410861947 901858230 889365389 963654882 957165771 967353476 225485013 226112940 295106154 592938452 187681933 760845124 515294599 555356928 636517114 640796853 309105089 844796428 144595663 499033866 109578916 165309917 606811130 651783481 450393996 975898510 422703960 770179964 597828543 926405481 444714708 953402785 24494900 755882221 853126743 955765455 606416567 962497787 397825363 830186191 211830827 769667263 815888021 943683790 627117913 682621724 805084697 888540181 651345140 804014672 819065239 914676775 395562469 879874031 392249623 490513978 835976781 850117047 481349552 814537605 218355936 959623337 721259732 890634401 340859846 346883924 572605356 574447037 689636786 884421577 403352585 877415131 860237873 975098849 400913208 411852431 560256667 911815894 725201841 850045232 399976792 898300022 640760451 653247156 147408648 801503238 778718422 937762022 186420277 383391658 486325777 949815403 187217246 976694194 389798387 916198529 763592419 912537852 836255166 878364684 301491866 901431015 976087945 997652022 288589707 649947943 221681744 920762456 913842784 963497129 712456095 763490724 815821387 907672850 726679920 910624078 497638382 713675806 95446672 325775791 288402162 788280421 299919917 626811778 845615178 985452974 510923344 724803226 415123507 778821845 345075024 964610251 441646302 953409227 76675535 682724825 555737508 755828568 181177599 437766925 88952764 994695820 284058469 596052250 230091611 509329347 337622602 968672028 933268860 994592214 449427769 684539614 166654740 585114862 237174532 880497007 234604960 779119418 578780464 724446018 979878122 988072379 583783812 682643373 492755385 630723046 544600788 734800105 822374602 868546240 489110099 765720836 648173732 764376062 158494395 970439913 570887805 734165579 94669386 839029024 392369628 986228708 762832801 824556963 543048959 700766890 608229489 981948671 425556595 653268907 5217804 99876478 473925366 811529240 961184403 977533677 368386805 675682061 414983769 712146946 997328143 999460991 541437605 958759476 886089431 960076113 458019123 599753652 908194689 981292672 94784461 995241431 272564033 620318655 660608050 907894325 642923564 878856049 371440441 405874640 755372235 988316470 215546907 450274432 121665769 984802639 222338569 229926727 237955937 995065534 231029118 390064624 30349704 223350219 304640548 867640070 155905777 944386096 715703908 965348499 779877626 923361185 79669282 641980748 859703096 911855743 507330980 999289875 767713487 955497430 545980897 938552269 228208549 718679667 797499675 881732626 154769644 420391313 611525038 722035727 852966932 969886615 102922757 564058321 797424116 965114684 970497018 985716683 6357426 905556794 367332341 826573518 624490112 849199580 966437367 980025470 456932600 687205225 892364224 921422915 276962571 294475233 918811888 952855081 960495387 970826070 351759867 377783817 177620833 691656198 27615942 969829056 68202986 809155109 802783697 909349581 872047188 880346695 339431240 789333049 386756333 697022216 695646544 715140211 332329083 349684779 80089839 867981707 232118288 994169396 853775595 887519545 619736860 856433061 492212143 753003723 14486438 132974929 196754258 904560139 36397082 798965847 599454568 656672306 692350598 887269277 545157606 780867801 997667291 999381345 261113890 980780410 342802634 531417938 593467407 690070224 323276182 696429167 701797312 844229005 783520921 980827777 163205248 221614665 371756644 833862869 134099028 503195069 46055712 913895124 701753690 928506757 576099355 997474021 36939038 573060662 380164080 524348749 432172533 758751029 722073789 754622607 54819199 96776735 385880025 705383144 948574460 979652340 330036115 705705922 37808606 204640805 76352637 253386780 982025882 998294530 489153363 933124327 735635179 951496963 344507986 981764322 771486976 798370612 995493239 997002405 172695776 762525225 925463418 992568516 370781422 899562344 303714819 731294434 824352726 986602383 197507401 773685152 793007236 959634011 399717654 741036374 323410975 707905090 265141362 313781469 34900942 718578507 2126664 85381438 875521889 923893538 323762792 675550007 782432770 859893796 227230568 928344050 482838229 688836003 577613693 777655911 464052571 780730535 718973216 732351310 393664512 631161360 90010778 163723432 374460146 900798781 803008645 930548571 396254049 739733126 36234072 929835341 966092008 986456838 231291477 736643459 995420252 999182964 148978057 224469109 985991566 991912883 750788849 997761825 713555836 834784138 334247694 809791420 684773639 708140646 395413739 843648153 964217762 986985161 231289960 785529112 87107061 115848507 616920511 887716258 262411333 431058532 383893752 648335318 65256803 614990361 155775441 514252334 429239089 831979508 137210800 394338726 918181526 975535777 373539773 870938318 985019442 990561236 584694650 776930136 678206845 985247427 332151043 403501333 431070891 600566500 318101900 808917976 116876768 600066578 740997973 995498385 487922498 799548676 35518847 893428070 456701935 541545617 773713325 952173840 74517944 179250489 640439883 898483619 6193892 622577262 337260655 985575160 748789085 852256489 58005541 390220385 333443200 663502719 308580071 383943411 584054571 941450641 402226617 962028760 570015933 887937490 62666565 165274869 575414355 785984932 406123426 439072008 570082386 670192379 557657235 961903125 736180402 884143980 839221285 840036099 573910802 940348117 714718832 727737975 391332147 606880931 762053276 986270719 222302957 905387668 407661419 616118837 52245376 447472546 774026933 774840248 339003313 490412148 727368469 876782501 486590609 685899928 908097193 986704442 399928803 451253523 102290812 674374069 292580237 835957695 487094299 893553918 167045103 769426371 580340788 593238775 766553549 798686987 658194608 973803218 202462929 346686610 701375769 745467065 726681851 732439289 786475967 793961529 217449473 753354049 320041321 331526172 954919590 962658938 368051188 997829803 92064913 874690623 661624603 874475725 636889291 937136474 297840258 955922033 698828206 851995455 402017787 801336584 115842495 519249209 870599250 932564895 20317230 22788692 107219098 400100344 764286804 921329661 388776804 963845183 648969742 736814871 719395325 958257828 866206684 870963566 320249275 846580515 346894825 611858180 629361389 743291134 669909141 697784260 450993228 619105638 789359233 818580134 578308968 855540929 651249308 691999781 649535183 686009219 688231534 942919307 147987274 457534422 146603789 299813020 89353544 505165408 317133898 681800339 686403459 946366098 892716886 918001759 915097176 926270635 307344881 442893298 458467570 687183348 709728559 926920482 211497282 994219793 925910179 997172317 722133945 781866979 693170393 925849858 239803727 306565707 380317410 603481689 587618347 827432881 284263609 656948302 688474865 823687147 959916143 982031917 880754533 952794151 39893736 807770719 924669895 977797610 931529479 968312461 764373220 790543658 288311567 599787229 458908461 860667332 696708414 891422127 758273779 874123354 45485069 86516317 505696701 888178137 234045027 619963884 381527462 882099892 355774042 682264783 353716530 428500408 89448525 784048187 70767997 248540296 973333054 987696762 883503115 884615572 150852786 866959404 610061733 652987814 453965579 597848008 794519492 949169735 261040063 777946589 859700103 916341935 658379722 852176465 502946941 528418634 462633184 696026578 255366990 921894294 898535159 983282468 868324965 984491424 360002378 753991671 957279749 982452629 349011430 665740262 910268054 993671539 225545292 377235776 963751866 974450869 113515684 956302340 157926005 921080401 276763502 277137573 60657882 248106076 645271353 854088799 245694597 488437157 700896088 973580059 301497846 980280824 106454209 456510961 531098455 881417191 381962552 675634296 346500753 648861939 281959790 419804893 832701615 878250415 411327509 496398944 28282084 996314447 846991472 962821841 462953354 958168701 879101110 963101786 898280447 972100474 803466445 933509487 442450296 853033801 630577946 970327847 937497550 958229006 567046752 785836858 673276046 687693132 710545456 717548030 110985179 904522044 679676060 965169951 247155223 273848327 681848087 871514999 236565915 762092600 287473069 823445634 849555221 958194143 197929953 645654651 458706207 660054778 670793850 759883064 613583283 816296716 929129497 965728718 387035566 729256872 886147855 942337104 360377681 682358081 42200485 435973721 258532349 693206870 215808543 566101638 821190494 841137923 230644670 623396716 803071109 882677199 334606936 337710692 835638793 970360869 916830006 992110085 405758286 538507629 505888290 934702948 260186164 602494711 11575673 663640774 724598825 903493150 70001961 473320323 322889320 375009454 896057717 902216551 186019047 427600656 287669486 663139702 715462201 792005992 215230642 840640114 350523132 718258653 17134537 786567818 552422423 861123645 218065125 573462820 455877031 727869418 918725876 988498076 211445911 403871651 553688260 989042917 67056995 781514068 816492216 986203227 910582207 926458642 574698653 605672377 561057218 569430011 12771904 598195746 723039645 905569477 973891905 985619350 828457646 965483666 193037144 571961560 237414938 772995323 201541110 276034143 41241120 95232106 507874553 614074660 30952029 120233369 487457679 798242347 209725839 466950478 566867178 815207524 210680784 365503227 594645762 751300201 386328005 804272556 442543424 517489852 105151360 392786748 674537939 900147531 106665644 116088863 560401061 903445118 748883785 909470349 182271030 400009239 586635028 704729265 337485853 948596363 910255657 942931172 998599800 999629845 786374529 965452432 357454753 643605642 823746853 943191996 809593805 853050186 525488322 853695887 987900910 997188141 674476506 919096635 566554921 619610310 776998904 867874001 121462845 166124792 430283887 985296217 237284231 773109283 673951207 881961751 553211906 979071908 650488474 928149704 87417038 816551908 402851623 465954994 71683239 75754601 731785191 819253962 706613107 729760010 529485997 975722138 784710264 888134312 68606845 676917626 175300218 194422080 892586026 983370032 140728500 240199617 395399352 488881873 157727332 255740270 881072692 915208380 920887746 938670205 887054497 930309964 97690890 633030732 586645379 779126047 36511898 52448010 766424150 922890206 551362811 838320104 217260870 997827325 645973929 695494668 674111307 876870264 845285765 872282545 422371875 929152142 44685696 701445901 449591514 883421980 858271629 884086888 815933854 998339156 183549899 520378819 641753925 758626857 228186438 858611231 621573174 811517225 524950635 578986002 396198947 759511715 953894434 963353219 688933682 821230537 659691310 938996839 160039707 846074432 859958155 997033751 695000888 890925129 681016245 960319233 781691837 894864627 797386713 861864358 869301961 966052318 118914419 135425292 364171371 633054480 240053069 791147005 673987955 705195737 739540989 769956863 779201250 981022888 940568915 948592025 527201639 934223002 883969504 905683666 375181948 899865083 419447859 500268898 608361892 807187768 247124031 542884580 464228213 675657800 454564900 546346293 827243042 829962963 90862099 382089777 770055371 786783669 108596877 654861246 820624164 861910008 807498525 927336340 693799961 989694809 312231688 870230817 796143697 888168623 38807190 128955534 481611485 978568955 355606321 656720419 408690168 968436594 566530986 633488389 341243519 643920236 478721351 948201124 158057825 300114580 71871843 654841931 837749068 956881719 297699674 915793640 809218590 923017823 862049490 977342549 545534563 777577699 515478376 629725278 632725294 714056782 534336918 942703614 880759597 994176655 765005770 906279450 766318541 840941915 103471827 198149702 25139079 176951011 485474063 491479409 548681026 936575879 624082352 982233674 726422503 796421447 254582436 911729427 167602243 830393087 624857046 697570704 569893772 974223096 112631601 252465074 14718071 205507126 708793526 717584778 430255733 641168305 933608764 966734569 115270737 315707671 251833318 668355452 495023447 648382221 529472740 760736161 624642715 732504155 799519384 923106937 826953115 972097513 825947856 881953896 443399719 720113060 838570370 845376105 260553038 666944297 373490978 724348951 280495718 588164079 784066178 901157451 929319776 999997099 433423847 632886464 962961144 969180972 755867267 839919019 538735678 701153873 663063937 882495788 185126801 915453269 220871619 928804523 164240406 636674461 977676945 990301737 76427981 637254995 998035404 999823836 365853364 791263897 610660570 614346460 110491765 993286700 165526344 851555500 366572077 897587280 113068231 197180053 85787720 960899542 230018724 770746002 295221132 372715641 728173683 974288655 396158560 909472779 389753134 985467402 122180263 926689080 986380618 990708648 538072677 717297010 314259890 629597432 50599005 221539177 436361433 924792414 519808284 638908297 452247308 687734350 823417398 829196885 76248112 659257926 34584966 797151014 195894847 835396337 218275688 246009907 376028196 726819759 807096334 916135601 698714270 997921796 293587294 817617710 146865209 528081553 400772904 428910085 697027840 707742683 27391633 410867038 376454376 414490116 97378474 566981287 633268230 741117868 393289813 620824059 595741004 687394539 727903293 810511623 497560684 522724900 488592181 846552076 69447785 694958954 960558012 997764677 486065418 720689379 248020317 287286895 705340637 855549106 916673340 968691216 193824492 211215687 934781755 977353146 774583642 958926271 448707073 839050109 256130527 639309284 840128341 950138847 146780410 413066912 515847431 604535758 247869167 913585304 936376897 958271994 604429354 905594598 292469152 328763181 823870697 923702800 17470104 372987771 272909973 318214008 264565561 317561100 25505514 692073858 727567551 800567209 487243958 791086265 72747333 472679067 157451770 548047012 839278756 950378239 594808801 674403090 191670793 720339276 145696737 521791194 319625563 360937320 97028925 816478045 221152602 928658862 58315696 468681096 716228929 960939636 530277070 757822523 445771979 458648432 561308797 804001357 645705954 934086031 862849484 889243828 390974063 985100914 494831390 975221398 572082204 867459309 818871890 923301383 28257552 597043332 171641379 255026063 704134354 704636269 765425628 775398957 902205901 912173099 246623641 589499773 158797427 184989538 315148036 541136585 844499030 915325660 761615119 865258876 595923369 908376150 159675109 460175337 404657777 655987960 146073074 726046419 163320362 573746700 964709604 969253947 117248657 277812302 491217998 625228552 928466284 935585001 61419474 720436200 304268553 590715802 771638152 963024871 635463242 800896339 255053759 389796928 108857694 598545984 925589593 968091520 193973974 634851992 676625844 785479451 556928072 751125010 706795587 744045057 512105762 675084195 511106828 772114342 331420475 785106273 800397720 857214768 229194212 383517349 286500617 922267164 187639276 865206512 843802525 868756038 707599331 843314037 490034141 601782750 61559354 377812616 129003119 934580254 924447112 975386051 730443039 745480409 630267441 688590817 465712459 701146157 960161992 993042593 1730451 257557323 681981120 968832137 386688509 421784184 687128757 980819379 921088537 944883681 829170301 907326111 207158529 661500764 106020187 324462508 511650965 802122739 596116532 933145140 936253763 951922586 518377563 659569556 217580382 820330340 906557573 979794802 117484373 989323435 448849150 819280606 763749 645698549 780193017 798643746 734321153 748879207 42328067 149148445 75813745 643232972 745167526 978044925 964013657 988700873 354994957 450252978 593784818 981537050 264291680 771031197 128145524 365944562 201497956 202315434 325676781 390960482 997653802 998753480 604049263 774195270 126987780 328975034 481289919 736583548 831185972 856519012 113352116 252798399 793882395 928606229 70346225 619279239 372920341 377213547 633802372 954595676 4070126 83576716 263053747 785670558 170750993 507851019 616188324 976650306 173528791 530913048 191191525 244299477 472672660 711196654 724731057 910316229 558565573 607500573 127001073 730253846 294838145 524299100 45635232 64816650 816892744 897348637 684313354 951369563 434753880 838907140 490817717 529215377 51798208 609169205 477421039 504313049 885174414 973735551 723343321 933618656 795693357 985023856 972085661 984549183 903974170 915479217 901051155 958998709 827728250 948562472 570025269 612881928 577198418 594326340 566846333 826629456 621652710 766348341 351425788 925575121 728904553 764536683 399978480 453233082 577930018 876434280 372926548 519580291 17581789 430345319 100224986 621516589 584785914 633776189 645111094 770659347 684622279 961639658 368857729 877142826 272335387 972647970 265540306 324629611 439304237 962995889 746035112 832145228 313329718 899829542 475534702 904136973 909669041 911451572 9051341 910861891 332789453 907952979 1018588 495009231 357341513 740327684 359749751 426815183 653676593 701604250 326976381 857453882 601551824 934057771 200759623 634486314 70386565 483022308 953252376 999135048 493298866 757358700 733112419 935856976 719432000 843322765 919139092 934124140 70015431 441541861 706700807 725359976 405888638 770043322 35054888 609704435 665282186 849503857 24391031 448519185 44446355 728883062 34775106 290331377 77197320 273520322 13186654 952636972 41052340 872334400 283211556 373247437 902515615 957074909 652696918 829818079 453719143 863265397 560898804 760053513 359893787 963017689 748981323 905904954 177143926 321988826 981271492 994067075 315389903 384211413 916479765 945376230 506720853 722923596 310706713 979290799 435127403 821514204 930871196 959179159 800988156 911615960 195120644 876126374 976529942 979964225 32213391 240293885 653741186 768486417 60713300 566416793 365079657 619700582 870454310 923499411 873684092 944903272 608456626 927313190 613853982 621086247 217776615 527318805 542548159 742469821 916305888 949535895 483644618 692536357 862164956 893557072 437827515 578230138 772460064 960652202 115878286 547747170 744080942 964882271 342470811 405626334 479302902 956096939 871918601 888313922 271812391 711427537 938433889 953204893 475819335 724334166 31248159 209186552 669974481 852279791 385475135 632108246 559148689 711221735 158888300 929783299 73725548 669527952 314005461 548368359 624945747 874535490 347138808 643301317 682200722 812851970 407989397 635524389 435304886 964560396 18575070 509411095 781868700 881464747 836054203 961982423 818460871 846096042 939404438 995582832 124852558 187805405 878899706 932636121 152389089 929789371 387736763 990976240 437328265 674745495 708343833 935332795 273636683 699641702 482887391 925053207 650951987 962264459 664321256 756174099 350283017 740054204 299441337 549311821 138964971 628793486 986175503 998667640 386304379 539662570 984784819 999704695 562165852 648975997 410014106 907117226 890973734 912668326 173323191 824736545 317092456 387009442 596390540 771713954 987559511 997196709 391908934 751670011 582758936 656173578 215447441 344389973 410932649 831103473 439953033 959677017 751340485 892314940 33776582 420427083 457808995 983932699 60439288 738854228 140405213 982462287 6113160 28320316 724691650 743848177 965541680 991763353 567174403 780311036 135523940 497932066 829824432 992342139 600630178 719815430 922722787 965146483 260389237 337304736 642352887 728335919 228186062 464081326 558625025 723817861 323047190 390869255 207940035 521393453 157424424 282428161 434870817 613559433 830082802 997638273 641491983 668908164 297444721 368118044 920369934 965398330 934715639 987537697 231951879 345458744 702769938 962825050 919426739 981118768 586881599 710519304 939980378 965188685 274474496 420720745 19413352 466283285 32190757 811669711 361122974 579321286 746119469 936171334 421128595 750453646 875736184 967247757 3716193 778636624 560077880 944958708 90837244 787449243 84626394 782911052 395938045 563120861 365164359 514860821 31191825 616317052 723724359 768677960 542695295 827792456 154729561 957421931 33305446 955878976 418654671 532316781 198083001 919584625 806633366 826229195 698199676 982124483 338880587 563620470 151862432 509549834 375625438 760968111 365817893 857615217 440153929 750388343 665149935 901782108 522424026 878614549 608118481 708924380 150729422 993061512 707352344 833301528 877841831 989779606 393444194 876714183 884568641 933054252 698068465 727053691 635436069 859512911 228191321 844236326 874777539 877411563 734302242 941193112 564217081 871247232 699908241 906212076 324783584 535937821 5976722 698877918 740274346 858368168 196486432 383460408 805715666 837548444 514595682 925541613 973081405 979425190 775830237 795949792 292726012 747691093 74934446 623035632 489164395 612909525 604128248 916533433 93314139 958974671 611075731 957991722 12743698 903821374 635751119 816395314 33832323 79037695 467479745 693351239 342037262 994084482 419767959 640113680 708005852 993440456 625765177 969567460 833824822 859900204 145349568 735833180 649978566 765040119 20384686 616902724 141714471 415573932 674504948 691275528 976672382 999663636 646936833 908507699 815681758 936183561 2538205 275777474 242334507 415075593 663315982 686778537 407449074 544316090 114980869 295426891 40392060 194833041 35954098 480276911 559117486 703658378 721515924 976555590 693113419 710141649 68358774 696528747 952043885 952057493 927606088 980582310 184411765 277123655 846067769 919062613 38842765 738536144 536038956 596705106 543717571 727316643 209611614 242353602 827521136 856452368 666205098 771487551 360389465 689143632 781769533 798534703 90293029 677270479 784833432 944161529 997405539 998766937 90147779 953370292 58453764 828072484 691736728 818724670 784576170 900104992 619013245 810334469 939962437 993786770 215726232 654227084 112609500 660457723 524510494 917305186 572911224 672062308 450286654 940447061 466358784 867695082 745461746 966954685 908841825 989075848 425789960 561848574 797588793 957574268 956524099 982209568 811359815 875331874 172311101 755480905 361128795 932399731 542497028 957651201 788797252 967286421 73866882 429691603 466674972 834375297 325001288 742288176 733027379 790278030 716323192 921953062 134396412 323635280 775282327 990605409 191996386 364406327 232715997 970756016 209931127 637228271 390059119 959387846 249876923 508648425 167246869 893569019 50583312 586354087 363317869 483228230 339489502 440955897 822149659 862342625 500793581 970065256 638613306 868467547 129866057 660594719 215085013 442695201 48278085 346397078 752590102 808187406 886041288 973453601 919537123 952554391 686489431 767556424 910915721 924394767 58745634 630074757 582393396 792677065 897767313 940352652 925278350 985074030 963561994 979760354 259604660 904271113 384111294 543830532 74241876 767004218 10510620 583004374 403722490 941180384 720080935 937786741 93377245 962778918 608329564 620355865 261998080 957516075 709954224 793661068 319451352 525713286 868251610 889077665 128330882 607403717 952425286 964241651 429935714 902564061 269309459 533228483 173744353 709827541 387377851 547727221 166115393 533603776 991354306 993647966 458425898 831721868 406572581 540303902 651909439 822382154 361112974 995746628 155993350 911362700 644198756 810984611 46868640 105097677 567515291 987442157 61326172 446208672 697218158 761787554 283076063 304292506 496489419 763405848 12944703 988058051 855404841 857403761 257431427 863430208 740735878 742992465 457668982 629432102 649185889 802720778 952895185 967365069 651947545 652392751 66616451 429148404 437541066 824710476 306969204 723276356 989496520 992779521 708724448 923011525 529130805 871021307 88542160 699716037 550330201 866034494 763753809 900585469 313758683 374907909 906068768 971523765 732961026 802574848 221405053 897773152 888062369 891402037 535921073 978574439 247887259 692371945 903389960 968073581 828594143 907189238 709324856 987121051 258295821 864946745 888449675 923569439 373551627 384842428 678593087 883266994 299288373 426396698 593066114 745281659 342748740 417598377 370780415 557384010 892186798 911706868 188771301 748114808 859626596 897385603 791764277 981042859 148086756 438720908 729748133 840974883 704631499 778273596 424382017 427683692 647911162 732217029 293393280 795867391 405933700 450793519 342105162 582385822 405352625 415293953 163820506 389187879 927701881 931155603 410818522 439884962 727823302 820486086 205909183 561951449 762571203 949902982 858236066 915415493 835389047 853383346 788573431 804646711 934725932 957307443 560443290 744716214 93879660 716541073 354142485 440951962 699030730 931604617 455078932 527108816 11207839 354045735 784673323 968564723 445783068 749871142 925968872 951306717 33701058 496436912 968274040 978256898 925557127 940167793 846157661 936628288 586461752 616225286 961526236 976158474 522213415 940071250 829434702 942688926 73777597 242667855 95737002 369886853 340782339 697036663 155484644 457745692 600017118 937196089 683422175 759720113 574429520 778574506 967631689 986824231 151351065 411620438 59431980 475544253 674368019 818296912 860653408 929067873 536859657 781008653 187946129 270502257 17120474 644453940 187580201 382921758 879218377 958188869 424193879 596925662 265100345 391393994 826233708 866764172 467497241 855879647 579725102 768333908 103522061 204523526 914361493 971262696 628695521 657925866 42855448 537455643 287689782 503967690 878059488 990980539 835279707 907508310 303388348 617870455 124351022 958262969 322940009 528347801 422350419 693104065 279985351 574625780 23558020 195339297 283508798 868201431 389223097 446704024 511751477 767314112 829383414 977724748 411056595 978030194 207921044 487837051 579131891 752171445 532802040 982216564 950784852 973230856 49104544 950046807 885119962 973138667 698031521 872725601 437288562 562501229 60709091 549167925 279643578 517044408 630364595 698036336 503660636 516563426 738242551 931359642 914927567 959533714 781030951 999048850 719119334 759825148 772309782 888309020 213678194 229442042 321963650 478171580 445076720 546919516 325153563 421025595 322199964 988188496 734012153 946727576 160381472 707868720 50364737 288468832 684687491 729498989 457679076 500331989 333185164 596583840 159095090 342587465 574424710 913944873 846471388 924862743 475144043 740865741 140268002 337408370 610603741 866915903 754968104 771911086 394907430 948840611 727310394 782769427 828444829 835458749 467491705 878439578 312550703 899459860 518509233 731883746 970118918 972136311 368766402 396804126 339619757 340087930 4823537 844860365 815147494 936080420 236905531 551830669 268546474 991636359 887601000 921643706 587420096 927400289 66859519 635565594 361221519 749098012 487450807 772559734 438806201 769191305 896740046 930086148 108824341 406237051 320491673 363997778 31079122 164135500 385298988 528672012 112931035 593434970 878719257 879608018 395364309 700368901 591029592 737785176 342479502 985520822 633825068 762832600 59858842 920925505 150636062 485017887 489795678 710508725 861616665 893433178 681665324 684467432 932953365 980915378 739893437 955780786 178536307 598296451 15880454 311994095 429895499 671036455 372776291 938783423 538556613 728307551 210438362 609071701 632486368 982971607 463479322 621226283 842194964 897692420 358682333 765631544 204239995 933645751 292255738 749735006 92092397 719952233 273832736 298163619 894370448 915323773 393644794 817251239 576185248 577383067 117943695 514188138 178764959 595143787 209711739 581477504 887751973 923791754 919843830 954274627 128643185 362565567 193967836 427840820 232652347 631264689 763177190 907382021 210474211 492019674 324664467 713669052 278520372 765144507 522595283 588762590 397488245 456790659 730889129 976902929 776798474 978015867 643714487 769497464 774870781 954932118 640473613 904820983 895743036 945887635 518758053 719095847 156992230 278892521 523112071 782122581 431948360 527998154 461031235 985455652 847008063 993828134 215370868 541781265 175883736 352228955 703070762 975271055 998095847 998228776 153362318 970009083 513604851 867630466 655708858 782969892 817970540 831914706 206765240 952654987 457647388 648374451 489137034 935333107 319251892 920621413 368667134 667553464 313558301 851891266 171884967 409430072 495654539 510964373 61109943 670727091 453647023 944059050 596415367 665346865 540287314 739925746 248210844 973426390 952697836 984123040 907135276 934071150 991959691 993371874 133989461 224664239 329715167 392749470 97852123 859089550 988860812 993113307 771108736 999316030 335351665 417459268 506769387 954944647 828662147 854324253 577139455 777918089 700220899 944880260 996557415 997027648 465780166 508156602 607166134 841193448 138983870 644781940 285110767 967411475 839358987 969893905 437478340 585151895 91064530 723689723 666902518 820020006 212678972 504050196 524436779 905250102 223907653 359308810 698319411 985547617 910377859 942317855 198560800 907165228 456785586 818487868 878872928 898518314 876488925 902230482 825508989 915187176 103532707 321170965 388446703 797734911 574493536 945090573 540480096 871380655 55202550 697652355 777739902 936117361 805035819 872341416 585462642 731358165 375495861 948776932 626330104 776004230 356312371 635179784 528840299 967082473 319358717 935703201 717952342 752855421 454654420 748471233 163893209 534786231 118057102 546651861 135535263 234527193 747288335 926987165 566904405 807601915 939648784 942595448 215162504 823152039 471275528 859464497 703466918 727106665 783210774 890741613 734384594 817224665 484740762 648747300 368831714 693737061 772400861 920475923 597928974 969514446 250002139 503203032 720507964 982790738 958899138 994755447 851856737 888344274 442963823 649964747 199705893 367555475 193385939 887309824 805694940 939986828 951334452 953735561 676883700 679004154 468232043 686484083 111297619 874732135 791460397 917826813 593984014 914621056 230493253 338207499 299222206 927113538 600324467 757803069 824540928 855720243 208148178 365109306 503490380 557581945 849890764 908048514 34217966 129734002 863968883 981582488 831738713 912999202 284722909 453290494 436756620 940267893 494102073 809697502 421802412 949615663 640141450 920378960 988399913 991832653 643257840 917322746 816220343 974147215 445472000 504185222 794712833 802896077 627106574 977770088 472375100 542972973 974361659 993674937 37593506 480562613 1751738 479341333 781566941 998982782 852874736 972858789 930943375 946739984 533692221 864435840 666131252 916799680 486560685 796171018 482655287 789791614 204403166 345317769 12670968 443218895 501959592 831769816 740246063 956246427 826740984 920393156 348542100 446799718 356067794 811138590 95067722 407851346 981506235 999703298 926530539 938782019 874291290 966585198 80756716 832227704 385575381 414682852 194817718 386673703 315044797 747965352 818368129 949956655 843275101 881586583 73245773 135993629 821550732 840651252 316761085 885058044 598305603 678567497 531871899 919510353 824558386 831391496 879143942 935448171 11228023 12191886 495056143 998731602 92099094 359351807 148123693 582113845 118401598 763514389 522695312 851053719 402181466 743512629 296958618 606217251 593802378 642884586 660976369 788167772 454423942 857231183 509788058 954934124 674515684 749999334 365101780 970876599 169454249 683440200 85323206 786680020 954402193 956016528 964505067 981663657 603885409 629591456 903346167 990866353 816398534 817103477 801367612 816847685 206362538 242925302 819790514 892522051 972085047 995603226 986003439 998714997 997327944 998828101 7919125 802398850 689975541 712634320 916394440 993259246 247394459 769556557 449160452 892220664 891972200 954343079 352436103 988842016 780236408 878066434 215026246 513145946 746024523 835811691 909599757 948485945 561224712 862010143 199807089 607566269 564603146 706523906 879969516 980883501 77037203 771561574 727504291 967115198 898439754 974766555 90788533 405263214 18968343 872293684 282609094 743485542 376271252 428492295 694046618 742228751 81442237 103521982 293683036 594854722 239847131 978457868 164920132 675150038 349243734 482085660 343973343 438274620 589174776 864145078 611609734 650916045 490365333 753559379 307819679 896511554 742396691 894199479 710405868 970836079 369495902 970699512 576129784 658124961 156642383 901856462 568265338 644431044 705675178 805026253 591451947 720200931 66598864 505299425 374247219 744532437 47707928 982394007 301779402 725542086 123879538 468227411 225269288 632980837 112825348 361384835 907385453 972285986 221942968 613743582 59655317 279103725 923066214 940022630 244583714 344300428 737931307 822257930 818246903 912911203 483112003 987594676 986623707 989111242 216436633 263863763 255532838 662828859 745494318 804664153 641438127 829685865 628111376 699442767 973492755 982561672 297142933 628482567 284772358 450554371 553101476 564722093 384813229 612805032 190030329 575427487 299630037 308777384 857440713 953906484 621973720 814521936 165325614 605938956 165721822 215930641 288550276 560585740 913086337 940244866 186313329 201923934 55638502 108022418 715294543 993986326 851387518 975328288 528225196 897540797 425982950 522141195 544360094 706855144 972687074 984120439 866384160 998954789 862003771 977125967 239840664 335038633 93439185 742509572 377901072 887124169 792599330 820642582 129732319 527719264 990576567 996241754 112943947 769670659 811359199 951992833 647356507 649159746 474549779 780971303 220230249 639605827 537296657 614002790 552556736 722657851 820237239 990368772 132434976 959059504 2278795 708367848 951070606 956912749 133465052 876988526 229684371 965030443 747009973 750582852 698528350 779631497 981272407 999268686 69340086 837666163 333039409 872718467 499397773 970851011 307817531 452334082 198364195 561464793 820246008 845482345 204056412 577361817 606178658 902639881 450230696 678449821 72911869 949937914 725656421 899616671 235388484 653333255 718526658 762469984 162034222 916325652 671184027 917068539 915653594 974854883 421517055 965101837 13980454 790727064 933334155 972901075 402123780 614952588 65286769 863679559 10049260 763702932 453047176 527967782 407683238 871503976 470478813 854815606 263420874 556417961 977266309 987191803 442435679 564808069 881733233 948922882 694059021 855982732 356249259 475070403 339122558 544389999 509363125 816070171 715474287 744718025 512981197 559998276 474028647 890184791 66523766 841740720 500483754 991998954 152124893 579820459 477717686 740912601 401162240 751437441 793840414 971958631 521567231 848757263 11077082 193173928 233918630 547575454 872031536 884022096 448524914 449999204 193549199 311639196 283919043 702481790 763111820 949271456 803231790 875422791 695125107 918782533 785126869 899350727 518828440 905697467 16116796 775398204 995581899 996912399 778888821 844131399 784120411 797154954 699109375 853067156 317229605 476245800 908336263 919560737 831093194 909693916 416604221 739991233 877065372 963644153 337994157 979103719 245571246 412622354 350951688 772877536 659008178 844915735 733768016 789574722 204386772 534448193 75985661 485198415 250386315 732910314 814060878 905931666 602683487 995478728 164509669 707801260 539868995 908447400 937381623 980723672 504389867 798397161 453938468 828613689 47103737 248274800 652848918 885295329 216666840 380339893 730681395 851602099 527214332 945825638 800136159 848892947 537091339 745685035 190679606 420387542 219197365 948882969 416496873 961750063 772869824 982544131 330701231 620197606 661613860 882237717 416152296 782999903 658007211 932257350 438347645 561098497 338543984 819274979 617251521 798755461 967548648 968596053 473687060 492424595 254941801 338011118 215174249 225028359 921409852 983497481 264188676 721270414 273449810 831506526 177979549 227157041 325355785 385688183 767774316 774430853 906036156 979908167 711669494 878078856 575823012 722627794 822522629 972155900 165117744 311269112 75126359 117064938 458094229 996583469 104132421 536270867 201725641 986961318 898863677 917148270 102138135 791076826 662498521 955000544 317417041 772614201 786924393 917766475 327818028 929187051 204319766 912360054 872341307 955465844 549305387 716305909 115599998 539560363 821584975 974203440 193546901 460756894 62602777 879603808 892904968 947126032 397801685 772453801 274771351 832042993 672506567 723199493 527540623 987642038 475779680 776711110 222860416 284852044 14639753 512719212 527468625 747958893 117365069 408550768 269471684 423843504 974085005 988528638 453193445 743147119 157366686 664322262 933610040 941634301 930246539 997513981 349864239 401700686 605689243 825500217 129485375 745250830 580676821 945285501 115125556 394079256 428556457 577027438 824778046 960189961 845301611 975400399 723891785 826111524 186829139 559148725 831321358 888284443 503120967 966710548 667143015 757651188 660050986 767333974 259389986 780196213 902529344 910233444 213430298 424427896 126329364 209992063 97305338 992200736 707340067 793007206 612763148 713202910 67628708 925219357 467818990 579721890 72014757 423407586 300105098 937371163 270447865 814264562 477972447 890234381 221893888 241354681 906865977 996135018 438693035 733310048 897954200 931166853 814185227 976768269 333094660 588722443 742821017 762833799 259368933 438144868 718256976 831284154 539866082 668699086 667817650 967701468 402379638 864802383 567460276 586863239 206666119 775392518 730470492 884489485 3004417 466147625 588851369 721517478 157093926 641982008 198343133 397616043 630781967 643117641 73653067 199522602 71865347 419900927 867073884 904026404 408614363 498630229 825631826 942057952 418267037 441385346 6640122 141970317 734910901 795098535 659713408 792517450 237340925 897148060 57652712 495351432 233444451 850969828 673227899 744830532 206573190 219908818 830788696 942327595 919054935 975969544 844601858 908328999 660237564 792644206 81252260 974269958 850109220 886627175 596631099 692708816 338524540 692264482 774090325 879745924 830817640 962103236 579464485 660870901 741252075 956283453 319320455 399664216 746578308 935769756 310036201 677054745 177105552 803222959 984838761 987656656 156436289 634156037 713330562 994635996 538803087 541988209 177338181 539273953 569266121 701615113 270840502 638776187 286020901 635118209 845918831 937949581 447661055 510715953 210432255 911962306 766690033 897149322 7440396 436035907 870486637 920410038 719308432 840893987 585413492 720808268 518611133 646622382 627321689 825647943 322679744 851619909 577847208 661771234 695746569 845985990 818922939 932211387 504995911 605178389 603673803 993698740 354796557 757264886 588604076 898683001 240340487 622023833 949924429 984865107 194961963 644565738 51250643 515149172 279712772 565163787 398614959 711413384 719054014 802963559 120735053 881110463 14028869 698324043 831485722 937255506 895826936 957097315 7227343 229204685 149424062 775489355 187124750 402855755 294480753 774513630 973070763 990906553 466568599 600154716 152595068 179345286 861932852 920530323 604821336 998242386 928473328 953613837 349313472 665973136 147741761 166427068 317671759 456419525 34633337 349917597 9329079 952637582 867695997 987379796 491561960 519496030 854192199 904542121 134749278 896359385 108101231 590160454 586368121 787328773 458942926 907337555 741355053 860451649 884104167 937982339 365642184 438808248 676596887 783936741 111797981 929317156 321164042 454279401 238680568 970921050 626762844 668903867 759677075 907379581 240339577 530169008 619826049 659583527 354716294 917214016 527741878 611109141 812302718 933412233 813737550 986092168 773770209 964508456 786324571 961551000 368564218 994321673 169007349 493912789 691985184 971823117 457221675 849222482 757922498 809635898 479632147 494416070 62951246 943490787 114803280 237223818 662131307 674007391 324073034 545602062 846086803 953718599 859982114 903776882 354156471 914255320 654054182 869583585 2785722 641692460 658135894 757521007 672020766 947787789 653240601 749243948 330152042 844122335 593576873 859947555 890260007 902945877 79655025 132793022 316117223 713000441 697133691 892953831 407522858 489721138 112773318 115789456 599424512 673141936 313286010 549680300 511584034 688895968 673949059 903946938 190614667 324253779 915611744 984131489 326779077 684560184 998252173 999530051 425073870 733813543 734419940 919351719 429182359 577543642 473232416 520038667 291158508 446386030 165838185 473633251 104864464 937239469 395511178 803320244 21286347 463398749 345760393 888739704 610931876 998428560 552970462 754330794 224114674 960946480 471209814 656780890 692145441 698973172 25073683 689363761 297242452 853552531 475892356 546079977 566671862 745698081 158410915 662915363 626073369 907056830 301654989 770676337 663421013 941687478 650563448 847398413 39408599 734041863 976403602 989109390 790957984 972243337 599397130 735071090 976144678 997494613 725207667 879656608 68817876 255428931 438014497 597526109 45876530 191237918 593541832 910790512 440787666 899275250 74856067 908018244 321418415 667029509 63575833 255863888 481781792 867781636 640291702 867295594 922741518 923212118 980417089 998351986 303537667 371460389 200868699 869447724 489261283 677075551 199724318 380292259 895960292 900770322 76299484 249483733 69085896 663514807 105991375 917402110 620110504 683686236 991254686 998161679 817035823 923099597 642983432 984578573 272285865 944687217 263182215 287497245 963594619 975348533 215800521 481236698 714503435 761451512 573235012 731697059 11948305 64237534 248550051 604966407 556990689 602746331 111800175 398013225 65648171 106025754 465570420 757325086 537320015 930372254 20314264 479669185 7707245 53356849 658559363 662280793 187944890 913118723 157389637 517757293 725755662 922178172 685652090 704598899 726187796 991389033 316525591 497105244 378653646 621454087 554329570 896836421 985460914 986924903 42981829 839980227 997086967 999930098 742885900 871087208 263084938 446492667 419339761 749317336 501603240 544216568 894259711 945622116 364462760 567848876 940841358 952891902 400157698 457630837 277288761 324676398 916752127 989174905 373817573 390840507 568710443 938081136 976018280 982087208 31929396 946475196 75704457 684771980 740096737 899959775 779813444 858860740 635023766 742481337 838467919 973767335 25607692 675489534 87168474 332125750 127370048 364064043 750178615 996632799 506670877 663679675 157751807 270703760 915734814 965450494 104736369 920481175 43859927 604490200 552178258 959561819 86857578 904580020 101627866 566478511 367122386 558672496 788464250 805624565 192164111 884847045 639955395 904094932 236974799 516387098 779052108 794630276 962685664 982715724 883314513 901654601 244871870 743617712 935404564 997839324 3517003 228595471 273646269 685435299 650446018 792781495 717177660 805250486 334324263 713227747 306761957 744761356 637123309 681689998 310960087 868024107 991441531 996878219 460628946 718809414 867521349 956210441 104502698 486222572 158692995 954704752 754677355 812658601 668474008 841042752 567838213 912480654 178197211 938276106 73266564 946065023 471321710 833762557 354190322 912339763 622676759 748404227 595887681 900245259 447801959 508378771 733446315 877645854 866928707 979656918 711822653 793678972 177235432 588917677 528873571 864955301 75001601 354604664 999637827 999890357 47011881 902851592 469905200 629794818 686628476 799973012 287562288 693439909 399423012 886730622 616368381 783457945 859945399 933888371 826626400 845963399 875109708 936935593 671402291 896344421 810982349 853198603 731672800 797529222 56176307 827901012 19868871 297930156 566953276 600261207 144923138 794204386 52680983 97575167 826256839 903493582 44697299 314989638 946939218 975072265 836305429 968304498 764672030 847848392 600896910 915539648 511229619 783419776 821777817 875587156 732994791 789487516 129962956 902511745 780517645 965163642 868121503 970649598 330312813 713471841 262177587 770913550 918290460 989972303 59258783 988945190 331243653 435952035 813218136 917459674 290839521 340086481 798670484 916275020 102264304 561218329 470818463 836497917 850099010 878109050 582090653 742836576 509675330 666992950 369902975 551675464 176231274 661162404 980101968 981239684 962564383 977369865 429173884 450239207 185778585 243444354 535949496 956241310 158497113 209017072 84733149 939913908 298329522 586675320 959815968 998259702 990061567 994476066 826677777 859924879 156972083 643668228 414045500 722859708 92786619 748651582 148066390 692265145 921335297 984421712 255797159 593269460 192403099 765993555 341331846 484320721 494830363 853927535 574152703 620451011 504762493 801834039 402616149 608988037 543222872 830404076 369648147 845286851 648129647 651994770 767551005 942259989 992369872 996311023 104064095 276435428 957575981 965993496 337219375 827647657 365228110 393496797 70287545 777560786 58884033 445574460 750651098 867571313 65763787 874676979 70087349 763171201 853091510 956792839 675248593 899229881 600374148 776700950 153515949 458881236 214586934 271901209 636503590 991728557 188758871 819428965 310987989 547124836 907193709 967251531 205806589 763043604 227243775 833824822 993855480 996359017 713916174 965959316 871991437 897456180 225912146 814872026 131392135 765695427 637786366 784618442 22876158 460657761 577500962 801488313 412047336 582191175 652569343 936961148 234820579 482390311 656589716 714511848 648077867 777838448 517065647 681778470 57241975 730951697 56226517 614925093 935708821 981853176 591966667 595696199 795262023 845442390 102359561 135630193 402130936 934449333 678522395 736047602 551767976 772652798 177233118 595300524 224964348 423432981 956848915 974288994 463042957 961994214 982366278 986125254 88010319 972364107 406696846 879619723 245803859 916435894 674681 784631225 382733215 843082648 214818814 912227204 893231497 932528877 852703314 872653687 826647875 851285038 246132242 504255094 747795829 998061385 578512736 688336020 597259999 951742744 354652327 448657292 491016622 551197066 381659533 455208464 422663445 775718108 762543788 803226410 923094025 983311855 732409608 811155574 503947693 649358396 775934492 975798924 355080356 676835421 579230543 937921123 292257239 473967392 57456801 449878332 565389335 717667365 403920591 980040488 545057530 736441297 599383822 952899098 868397943 987497064 694194992 704540889 715515305 812091268 92299589 326410866 522153564 731788270 148177775 793566665 833781588 868580816 905981955 955251801 827530981 850168995 968431119 980983817 903933143 957824293 566995938 790247903 477452332 958072666 486703061 651981734 882604845 884601149 888579485 924518274 733591297 934313765 58570011 828109514 890442711 977043532 495711847 524976586 598091587 929247999 876466203 946073120 930907174 977025072 822055369 831058329 544567071 649299027 867563759 882283125 65385029 446716243 556919734 639198305 281799301 447340375 944828132 985834371 361376664 828889356 447688610 514873254 41354089 930714497 177324437 961165023 75737180 644598870 443018650 631945659 138249779 700549949 292764636 976651060 347543878 972954185 215092593 500291808 952194327 964530322 451445878 616326758 225769365 391832448 202088962 904528970 875476767 956118938 742893024 748559632 954595651 985014871 673395464 860024689 940096600 945595231 566692101 909386500 558749363 955565181 691612924 807945815 424226802 510004813 246242510 766189541 178354528 577713262 426397442 876209581 664695942 742471029 364398874 790985965 460628467 604324319 564853841 566427147 456414930 998648828 422573884 536974644 473245373 569638421 474660028 919443596 344553860 603340046 203674519 731139853 656137811 657065894 831626488 944683788 397768461 952970452 553890049 947690887 891205877 902273518 104912042 418883077 481586065 807324024 508892619 681760150 453803927 904284406 266236690 674371569 45301653 238207017 393769323 931813356 965742798 998660524 795582742 923540200 958417433 963430868 975654965 996014432 836121503 921630501 235286430 352014974 765596467 906810728 511903178 573092939 330618276 392405908 147824618 176571671 536266422 647162776 980762025 999383862 813020369 992131152 848888162 917263465 493691595 829046207 663092189 669797715 532535440 726264476 34556024 568401925 774403908 889810610 127120881 309362463 121085400 498113221 92792060 340012778 774030778 988718347 956141411 992052500 943570958 999485171 483345357 673248497 968269357 968631305 500825523 674667187 373352186 686879730 351815938 700535767 676683532 715631566 656322206 958759964 363560104 679721536 451097791 955032326 159642311 819958353 12340592 327961318 55189136 558150789 828070094 947036378 384846706 867517099 414846473 975660089 760315144 841698412 198980161 600024739 992502247 996247754 994434271 999303856 35590057 384511665 318301096 529534097 204226147 238784591 127630209 234156763 844553911 964450018 807655196 978805051 308385088 692693252 153370864 302087615 660190713 858590756 407894985 633934007 388863621 734509860 356514011 735640053 154815136 410594643 59958739 371686381 728709518 873318021 585900514 759625070 264716580 305313263 630166036 830998805 753386530 842379108 461404379 660682692 353763971 837376696 557403176 668379655 170320440 424917960 573498451 828269837 610460547 791196145 691040713 936912642 609478260 879881942 356295837 691682552 189737966 789751301 379883172 926999303 151528708 505669253 305423892 561731821 408505852 707110708 237073007 508911206 628555509 861320754 644491279 854791145 540227426 638658009 21615696 867544689 616377479 972515344 676351677 960216790 8089201 481306117 703714660 995659395 391171638 434061744 457732733 755471643 771591007 875831912 47060897 506050913 478094032 668781030 23589517 854126286 32109982 738940842 451126381 597947750 608504869 835812480 176688584 839819041 481527311 534275718 184936143 522452090 530579543 702481337 993149321 999790392 908738049 922284870 892500037 984126270 568158702 783337060 459506026 843089579 213643963 934806263 857015451 865999467 888716941 992363002 255778725 455038104 549830812 777021220 565999285 871136107 571716811 799279930 360180560 658083908 333401980 678352560 494694972 835661777 533287832 799210458 402709149 475978577 782038280 935271539 623433099 766571107 747118582 965501201 635414872 698330210 990880875 991797909 637479023 759549683 443528424 611004557 384267739 435783475 775332462 864767308 831745019 909860398 719271637 776482441 143310458 867076025 807911846 853832919 363996521 972223445 747341136 924792473 467126021 626732217 63487042 245687606 737021049 936372307 585193674 634549269 493321709 530774134 117224814 845897643 625582019 961781378 226544335 874289708 912489670 974511226 879962143 979557915 414620171 465876696 204386980 747349685 824690157 967342265 622511669 894319281 926976032 957897530 89916417 927279503 311994769 963323870 586492159 634254950 289077106 872265073 2646254 760699071 855846483 873213966 323834849 657115971 91583952 850490106 309342624 621632700 559807346 910531253 208572242 346301288 553859195 705859582 235342771 572923850 185167334 500377444 701005706 780745478 234990677 853508797 722496764 922250553 551340749 924496787 118069545 475905825 257514188 593638501 366628190 574460089 873211683 914175541 700937992 997685049 762136534 796304924 970490154 999993210 296384945 780128871 484365031 598111398 567242277 687645433 486995504 935420644 946447475 973039185 451585482 471492881 284827040 799540779 392785332 668557351 658053847 745364608 990356081 991931137 963778815 999587068 628725324 940106414 898514078 903238549 188670526 841016233 865644470 931604135 618168607 951864313 631931811 788244907 156725246 255370676 252988303 256386129 387091601 472315105 434903015 796167675 673757712 803300890 469037482 856756905 462159036 677335761 580338500 824299612 694592483 995280988 249373988 919802926 188516770 912729152 535511517 729241429 861305349 910569629 26272363 42338285 413179399 430545336 480527010 703267620 349829004 729584653 709744185 945757225 607634028 670357839 181513244 381804780 633661266 810498855 804744821 843438801 481296745 897077122 385417597 988408042 793736482 860189548 650096351 679528388 564245106 947732517 785278845 918743006 637818942 658498313 4420209 319211719 992297204 995736733 573416297 984605100 941441239 983287444 544477762 662342913 510574250 642500309 493037255 585212026 668022696 893736478 242298817 976211179 312239146 324980740 802467850 848572013 113873119 954742752 936419406 966525397 169130817 673964879 90017991 577938124 739758292 882037629 999498840 999805614 232896390 358816024 208541994 681975426 960421869 988859492 416128520 630467316 193154557 445284004 820780219 977067324 351628474 414452324 783767477 783815510 12271150 961066119 698080476 976248989 606008022 625736673 461530742 815517488 858584967 901001154 346139732 586664302 141040324 773915950 688037071 708032642 657322945 999118235 455623268 609234973 115222526 725808443 847904122 969125277 403105444 951790668 555846683 909545759 287745017 529610071 140416491 883279630 468622324 949018411 514231096 696801902 41831027 42398057 25544334 182001286 594757329 932962042 341376778 412559598 482468132 875551394 808183697 972724578 575134259 998963458 834130829 837433427 720648122 819936699 672765843 961447567 656585992 921939231 521468212 602170859 242617728 815604131 270186863 465693208 457967211 905763131 983688978 991058788 128347544 602438804 217727912 536012027 348909496 416674009 962361934 995880836 109564698 372026819 893907315 910752644 109838330 395541448 836709360 941955049 360375136 568340202 782828314 901437685 911068082 917042178 65355598 330538129 740055150 919943109 192915952 220940679 60103024 855049780 732196538 946526406 497449399 835552252 10274655 717782026 67535573 701339426 958891232 991157297 160848349 433653325 719461979 773774985 123931800 777936875 451341705 926854446 250757382 540445913 613288599 727046995 869437951 897131389 110801678 508836261 220911179 316828808 698835737 700806795 531764468 990115754 857014770 897566890 539084878 645016107 903114719 950518423 164147875 405485706 595418017 821506204 16461254 856513955 842156775 874026381 305693908 529871557 268327665 387957333 484729924 495029054 505921261 685124996 778868273 984165073 762047900 827178058 759144461 970564315 704666743 878350692 175580327 470606231 297183192 458443532 647881914 924145389 9568252 647904077 796571490 919429141 705043468 955063254 528323095 995714505 832875637 891493949 825675350 948493469 434879751 964906691 516523097 865951947 428312812 690689207 865259715 873324077 244655280 850300673 908863407 970160692 577527674 705361945 214039581 743099226 321881803 328795758 25858813 834593794 886278795 924026878 220268907 676335257 257527732 369922376 891763640 948113691 69088528 526259367 705633151 907816105 709932536 938058940 460089341 728915190 866317200 941636502 754856902 813075861 544016097 727518136 24166104 547171677 729993758 919806816 27311033 755596976 14888828 756668156 637022258 895927056 872125649 903439509 310425954 476256679 860550359 975989549 987806960 990693527 126843128 275854884 962005429 991549139 126031654 478818255 246283892 248614069 651521230 726008635 338472900 749175173 977762194 985089487 564566800 785103973 687183581 948528655 54353829 928559571 349321043 362462271 194174140 468807672 918634379 959966329 841721629 908539328 727355439 976184423 327026450 721184643 524788300 628903900 791318708 864279635 640940531 848436821 354647780 469066398 27687328 271712906 685645094 750695250 140123626 622079777 150266682 627612368 500525147 951274486 86248498 347056076 533000133 949430186 318440017 668326377 238280775 384733916 473561227 913673355 183296570 957266999 424608190 669091647 401607071 667300435 246580392 712141908 482011496 503757607 402013362 961357969 418552434 903789286 653520583 892286282 233101797 443201605 964271154 989674484 485863804 662244373 144580604 571829447 637267874 834312371 41449337 824722674 510327720 594843015 466670557 810533196 334469222 711869502 907439888 981505401 316760628 566122175 265042889 911300440 408009368 974309400 446825558 620839569 430857682 858855236 112446051 372862997 235228994 383202966 52066684 813427592 879367400 994021757 99559654 152692520 657176133 852272166 239416683 822222295 620970944 934651684 250429716 961146005 528224512 629730484 195440262 557394645 719695787 904005980 487448380 752597969 747854198 773279486 108963941 319939784 799328865 855565618 779783307 780927287 728171346 824903741 878689462 915219360 741146785 927527651 801079139 922365844 660259442 744585821 632262897 780873299 877529962 926532723 891593718 898887096 801845747 805776061 750436877 989112893 411401208 485066864 901977662 932538707 847928433 977157466 284747118 730182427 645832406 959433373 131955592 433448881 344826353 816899616 789914181 925424997 773887705 872071885 897441571 908422381 477790708 949468147 762534334 873661308 676565675 948851738 45353879 47939365 874080025 908441286 176934345 279090289 130676195 432750990 295455419 939017316 841668478 951375810 56065543 362052734 581497533 978241431 189193197 733430800 712359696 827354970 61001306 504257107 44954168 185500693 831610470 913549309 325068182 975113276 219631639 350494191 176105078 690663701 714340518 831164980 674933335 912025724 505421661 642922250 888459421 910694676 176636034 323925526 95755945 260906629 262935698 651970918 163377959 905136567 860215829 934751650 519903597 580428561 480966091 984606493 323865481 440184230 869137861 977721197 503732219 667590877 553176908 737628268 266334250 634269968 542983950 802224711 868275465 971276350 752821554 793629739 824609183 949963993 788166513 803161954 851818736 989483565 820359434 898536157 168098258 473488274 37926316 134239976 815337919 930720825 617817388 899480137 537678510 934711523 809987482 887610378 17561146 791323635 365969826 957598329 604609706 779566946 782643872 937105867 273545566 570117865 389642165 704351622 882483787 984885866 752702231 790966613 216909202 627386240 299260886 353712672 119113317 208240531 255052048 653615200 527422859 793032504 552133553 693961953 510716483 682939686 398658028 541245245 863164040 938800955 827079970 891197952 171664490 915584706 188177467 434101560 229100216 792259442 64880345 347666076 219744950 938801866 526351904 544392705 34710177 539723369 992629240 999098569 959789413 971578713 765365136 797923666 460413064 738380536 622729212 658760258 786132439 887302814 569311925 660562571 388733898 829066232 540934638 914530893 303563186 546541192 310975288 356088924 160699559 424778985 276344352 979825995 991851525 993407865 946696291 987546269 747678554 926318046 995122306 997373396 576957663 834243148 536960408 878156705 700332923 989532219 851852842 982781650 112744469 826085379 587571238 637806522 71908920 808986948 65544152 918271756 418844976 583458046 907857737 921491817 818619163 937206134 222958970 394125576 850701962 875512077 465400165 897676731 566289826 580130382 971866455 986202898 244433394 321831544 909813481 917543877 30773848 76902207 92830119 617530100 384393909 867913511 174982438 363283344 95046374 820787862 706602486 940258159 956541927 978738605 288089964 996250196 372826904 612505305 907700815 966852000 872761168 921603632 954284905 991355699 43721372 861501782 87890736 719813297 61508440 543467965 478310043 489146229 202704208 570451579 150120853 234062711 48091457 636480985 517760482 702038316 549130230 831168916 598480995 909722869 883436568 971727164 978019197 988289976 680667201 767688799 128449808 596428471 859006780 906599835 771512523 932659958 715010139 904184490 960107833 988699548 780059997 823381971 266987526 726399353 457151736 993706273 135611720 288507785 40736707 934974255 34415476 592501262 729818714 796990720 925051354 972503145 609642459 789256144 726919559 865289077 842511226 868104989 724114794 936421402 25004086 638181626 131586780 572729799 80771622 670481486 876731520 887391569 450137533 853857580 308092388 754062117 527434150 543053946 602910615 606129687 971336145 979951595 185336725 727608407 874341922 944600169 892684347 949474536 90444667 527199082 639816961 669283229 344456013 645422865 146581122 298824518 762022089 914784240 800480492 865641738 885587535 995838056 214894519 527805135 86522593 218101189 581112515 723041219 754671785 756801479 393936395 769508090 328391486 416614394 449746860 561855590 176313390 256572820 163894195 510425882 286574474 835987529 948913054 981834934 251593716 912638474 59181407 772504126 554749064 852197688 283482000 611186076 448005143 969420871 520940967 921888017 270533989 643548049 833803806 841167957 850421693 940937244 180692215 279893519 681216438 899865865 337289984 697574873 463003714 744243591 983970881 985330296 474945253 698058256 394880936 965506423 192098049 624109329 936058783 991889014 656995346 784169448 542564724 738900284 522529313 954351907 279427481 328353626 982178553 996797009 525730451 714383433 943613095 970162752 902035204 918289675 266113897 885280247 452970273 860975647 231533546 737323622 645121961 669307035 404740855 438709342 809932179 887482066 218992634 784633632 406252443 751544510 724488412 995824599 456069351 633317673 928888976 968907709 949841997 975046616 291116996 415299207 723200808 941496448 134198556 644750499 691298115 984428003 648635059 848303356 702359912 987933646 493888260 997234517 890253732 984293690 683897054 834274283 177527497 778820406 680121555 803104244 2979506 498544580 87867321 91798285 856637303 860862604 698050659 954643737 905844917 970299345 238457073 778397108 833598753 945708581 547735219 725310057 728263380 882028817 721759694 847351863 419629414 596477542 574770965 892744339 226978354 371836974 318426562 511904137 514149569 559309921 299506016 818617339 535885236 778141303 111203257 170642050 629881123 829740775 723742586 810792304 931594305 934230164 89710237 260365053 664936324 926302562 478321801 867222084 646172810 811674087 23050577 764860601 426193571 693689522 687141198 908072889 260225470 857524132 651187913 848835608 492157987 967683234 172190324 174391078 560910628 768934337 158681961 709930833 880810929 889048874 92579017 548210566 844656597 866391334 157351378 969803649 480532574 504266452 766106855 790779928 948293468 974967511 127452857 615708820 983374714 986209158 233291222 432151958 393231101 509741086 287386422 860918965 110209232 600316293 782394698 825551524 343804497 914019837 882582248 996318151 689690162 974157358 865871504 906561230 417944412 862718135 86853191 213768013 243980837 361416030 273479750 551253731 329505144 968379198 77749459 257936208 673958161 709961735 693591626 702607170 505180303 856380121 371219219 715016997 263106783 325891138 499976326 783577235 77625679 330027785 736057098 899128437 654508021 742994543 992804068 997738718 540093556 826580617 21132338 267923174 427124195 587259101 486253740 940828707 702451070 889601782 713660123 881424876 7438799 626285882 701911426 985991985 793801184 957989317 15923572 875233741 87342603 941770257 314640843 898994330 484039318 807698564 17363671 635905208 230411057 587967049 398976002 503944128 764399193 776903273 61937213 861078018 190196519 241512205 742889399 856733637 310927175 733994499 449319291 928118372 262299257 940326121 313711457 927150103 198408196 398669170 812381928 930826527 691916614 781156771 560353360 783382910 163459422 539577922 723658345 750666310 726133783 825245254 884202138 908309485 233061634 700559143 976211704 992602703 451797174 528376753 614669188 993435001 26755821 177016215 439083160 546270283 165965354 545411712 242997782 407278566 156714039 204504409 755753209 937037901 845685664 882691674 391100847 931317343 768196148 814794629 305165365 935162829 407182379 876937780 649241473 710541985 394780532 828058915 224796355 369740374 153183985 614878450 50388942 377437779 484329476 892908079 459757893 509393501 664574303 849212977 847754379 852289665 317462376 497339871 674546766 717610481 93870264 902672862 206464364 211776937 99520444 267990960 417773678 664061066 498434523 678451115 74558873 171626106 100326063 406090002 753408263 867063389 695637814 780416042 61241780 781885963 843428396 969369929 655279610 821028789 258974718 565606483 553648903 976027568 294907091 684515841 280986610 457817661 627931181 822384776 785504084 789876974 607199577 660793026 257786973 480068903 818336121 940572946 307412518 625467338 293183073 591080114 136722545 840176142 97656539 152287586 59899000 935419164 255729967 746438764 7803166 160471095 364312952 688618414 36926957 574645034 594660544 677075062 851883691 956713526 595476734 890010305 419973427 982203248 205765415 846184018 77982503 786352292 187046607 217702881 510073954 690848266 757790482 903060334 706398803 888816863 542861612 977776212 693225182 899238966 102201019 328459688 224857836 988781119 916573183 978690272 594913306 933553061 848487302 911529151 161848048 224075691 600296689 878066810 57709628 932167870 565303190 610649026 911366213 957607547 48431105 868693209 917806962 942678566 539956135 898683071 207769337 210063697 135052014 434914492 193203202 770783737 310854671 469639236 742380952 971673270 911273171 943716972 212287681 920838670 845134871 977794496 500300954 699881684 297757688 493798201 343462069 623829728 376827987 404949047 73248353 83939434 344458109 894212210 850307521 968907877 654829228 769241037 691031219 861164571 174177596 177965218 158557453 363440970 499696619 616596063 644197317 820148518 502426458 602080301 327757174 881863563 650138003 862057328 573162941 769958357 629705184 905541650 926791529 930661197 249181832 982738266 753040219 756873589 806731204 870764176 618992573 891183064 230191766 601971294 422564496 926908738 512127045 874146084 791211803 873728638 855474354 918394552 223522094 651971885 653886763 704619214 290844724 930724576 983088178 993963866 921266578 931169081 159132121 201578163 773497345 878478008 312874337 847505314 409025828 476857364 369882739 879087157 249777799 533125137 296886070 357954006 249761720 622939584 646345488 748576183 878394663 887098047 714034341 941188874 499348755 819679602 313859359 854444297 537873785 754316810 640881525 938426746 599840280 835564803 436133407 556711259 920549522 992125291 313920394 977029048 490907553 685459249 960677722 993554660 997666212 998950415 800727069 864911719 554230157 847861700 947094360 968956497 550992423 954639423 69864252 485454754 298153084 492631456 704252160 727849692 918888658 996444974 133207138 452101751 920997104 957990068 510048455 580939039 731587961 810951623 207516761 613721908 917420249 925426313 265784311 432924665 981980793 989366002 245406383 973450802 912669828 925419743 114814427 480790907 776080093 983677987 211005360 276481273 954256245 956122922 252880454 337082160 715663780 880136257 828310002 976354778 693470288 858441199 255634232 556586878 703818245 836846647 339587712 737980585 39461039 833241345 26012055 782093261 958462053 962044003 430567775 601826986 653559132 656073679 371395069 501689236 77451949 328951051 604991442 672567385 163758368 269886946 438010353 623334015 146417196 792209326 306234539 748388751 541270359 803970812 716843512 969401800 837026404 889441628 854513073 977273271 11362346 323055190 346224563 980890558 204793142 712193104 443734680 499205700 898129956 909000170 64261969 458791730 110042869 504369758 582392039 815671371 901398535 932530432 797811446 909073585 26468817 631709742 659745329 903005450 164341244 351316755 675002987 777614046 404556805 421126107 250628924 470513921 677533369 921266041 281908778 306683235 872945945 927382238 424135741 820497376 77688160 875724584 183696019 469733859 64625454 918158892 142464188 180139101 840743752 880376838 290556175 329731832 617835814 804090782 560181467 839840854 84148477 600349030 239934749 916502147 75298119 95797813 452262742 978163246 317469254 630618921 976307810 993627593 599449382 884839275 243853794 249705699 950200488 998677405 442913946 525736445 870522921 921597336 358611464 524145802 113618416 133257315 498489504 697856987 439303820 866123671 230479180 985738707 954978246 964247476 509235190 695899659 117396752 452689058 201278728 260351965 802307118 802849966 274996077 478486955 258201225 328367072 349830570 699262446 83793392 583058623 400107795 504597867 622825751 691175373 652851888 782782069 672197627 826064745 857228325 914039398 949732028 965571437 516371656 949897413 247833464 833297744 839187844 932396574 398431864 697486273 85748083 902114509 99324963 551801801 217941149 663961345 430674427 721174130 960740519 987800320 282107367 876198444 257330447 723130749 54392305 473360275 445038151 929798866 781266517 793832169 465837459 588343344 527204210 982595952 885493979 987380527 80778825 706824869 555556738 741116469 767949402 849452840 980591986 986026851 817354215 989247393 248574996 771395252 683953728 871671151 370623998 936643586 566237453 801158918 958345915 973348230 697380793 907790705 789195498 862269490 747200178 843400164 33320029 780051266 631384546 998006949 624948815 750506463 790475644 896734574 676689062 737197363 440957904 602587135 836878702 852197582 591184993 886879302 335903236 883144318 305621831 549889380 226507271 714814452 408473472 944973263 981025513 995686985 115249984 821507574 447526353 970985575 740728282 939928454 186932194 777630897 751400619 837874970 954865914 992064527 376452575 630838328 597714819 751348420 79915866 965380178 101912276 845811014 290223457 924993283 340727067 630416560 465596678 865766979 490408980 686948412 693925917 722752616 175510625 463150419 649037600 945643151 884246983 953910324 509543809 937145614 57685430 753140391 808119561 875039033 523490001 528309551 24481710 924916985 616694701 725510938 697850024 932700165 505386491 520363710 914579827 971042860 239177057 885313071 226107499 624309664 364963046 805658622 941306036 989553250 633731306 873878013 298951783 479128323 819870122 856863619 359170001 789609025 755453173 756329571 466150497 839149364 85042947 97120182 355032180 881918791 752968296 773635607 946803795 981845173 768453334 876410689 585920093 749093662 571604423 946531515 42712031 623778744 647887877 746537782 491231745 498890889 946437678 964277216 580510969 655851713 265932575 630671514 375788491 441653963 43063380 911622072 951127805 981440453 947364575 970969418 26948274 229752707 514257025 989744302 210662072 548887039 690211928 930718949 76273684 380015314 810071199 902058766 876242414 906184486 740489720 979652044 849907763 930112524 927661446 958562053 898233737 973477298 252191536 517904586 565547196 993530585 5336535 16012815 5552175 971270939 283260921 774692036 128913901 717977121 1866932 129494488 492826644 931908780 284444221 586794585 795524434 960304841 676425895 834828722 159176563 439889472 200821529 270927762 192488352 566902022 500706296 965141547 228385264 671759660 201433527 281672270 886206856 969824146 689959142 867332315 933015635 993972404 444416932 774151577 971552265 993448713 296628334 405200446 952587660 985493353 640743497 760605661 585180756 786678276 42303964 931928647 666991373 866817541 368427614 480052408 877990032 953401466 437385101 884318504 58379907 858261813 309268721 373363082 327635339 929141527 496419426 724449834 94627799 562979140 744657262 979893727 320918913 764520130 950549392 989775598 521331954 854991268 190049522 549654535 220147688 468926088 627650099 934132783 982577555 986107261 943152011 992954144 208940129 603406887 772226554 906768359 696374348 855371245 654727667 855633656 760650122 806024646 123172810 853195345 718015256 972132342 148472898 781382552 783088740 872320088 794578965 888660130 180480244 868999507 772566028 964991256 584408083 883751611 470647237 820666323 526167986 740912672 593383199 758853134 825322340 916378984 47426133 738458802 898178153 900448270 323881887 981677899 681657767 933725136 771739891 936708767 808648329 885438224 184322436 891712981 317653177 519263792 906264896 938630954 835010039 956078133 260905928 743737228 483090769 846575379 809002455 876987800 3281398 473437384 545882237 577670495 740882646 860309257 521241081 635722886 95278089 278248298 938985996 976220840 635132965 664232411 192741693 505236799 679685889 702001806 602133390 802182563 36382643 450964341 426761948 774892947 240143290 249479531 107867892 937783764 934445831 999958774 951843721 977572335 179701805 354474263 546574451 966283524 843027348 877792014 313492526 445926130 32240473 788852093 842669621 986517683 433705061 801418315 561362864 905551285 936976681 947593567 438969665 629244673 577052345 655083998 159819598 273381673 671733142 839147190 44991791 92463218 433733697 588846228 694556286 783479486 749131990 988439991 840747397 945025085 465882355 571153448 952599311 977062989 6904676 113952471 984055371 987188620 806737223 966738684 226597734 686582847 912648369 920223403 188544456 485435233 255242922 956389801 530431680 876702744 541062237 664073532 680483377 894721781 677921840 728939598 945969013 976810540 110077381 555885452 854152739 901772875 974435844 975343598 317850888 737932962 988231753 994877257 42049076 488339439 514231224 524860485 896652398 904981647 460714974 692089324 899546170 945873794 843568696 914214597 166501465 641781475 152734192 838034285 240765255 495195650 832190502 950694383 933780949 995901113 451132999 604844510 691980071 772321486 232626474 408301378 544131822 566545360 86991568 160593897 493316589 814866133 723599328 937472014 102120760 764380214 650895782 791722219 466954875 672636993 637063883 722212512 678761261 857899080 32387063 211017335 164787648 746495606 549483321 927568544 159860333 270143613 579590580 646582528 839186726 860867943 71784019 338495948 639645354 921178133 952561376 984244588 752253311 763196094 140846542 592793027 510828362 539550114 570447262 615647882 216440953 922228714 753813689 787555266 901104098 962801773 795488962 988549691 17347833 664469765 461717338 944111565 628019748 932608516 607424594 662010068 267749188 376117336 412697217 504238864 224818346 510590706 265773991 438729298 358899191 936668011 783551023 890331593 1020145 569577432 217036399 631035192 52327339 668853638 786186178 944982474 292588173 834577550 184057259 801004516 995946225 999325647 717537876 907493140 882248079 909863375 158305284 852226056 290245687 628611973 457407697 906082539 792945688 879784072 430169447 601567826 101583216 895465423 947928913 989180989 988618323 995822955 367124794 619532346 30037749 445166818 340618038 438458903 933960939 995360011 846146825 921208686 985756068 988212456 505735092 643595035 629463037 750418582 661649110 674696548 104977507 875197525 345017365 579094338 866766739 961065516 289828880 600344833 331757941 873861772 734473329 966894100 948269313 971459775 70976528 362542647 703861012 825060248 68692499 781737422 901651211 933012786 984689901 994291361 643432710 731982071 35886901 426123294 511369302 777858299 592303850 715389477 836971422 860978654 494497656 809284920 743675558 938253408 387404959 468913300 523067499 614370189 967070210 973614272 838563896 862891265 756540924 987628371 847593048 878269593 14893036 224538202 637135803 678395873 647348179 673496824 871119484 984032538 740048340 834109300 557453423 800319492 244440861 858115388 509092046 711474114 247355982 649597857 514604261 708812645 473257376 999652051 222895806 926601250 787424827 975166698 568823895 633683209 87849552 513647539 741770375 918159130 178703164 944253037 869962341 895580195 940861967 974959795 587590313 899847222 537531396 994210205 292277858 788777178 539442605 856858647 392330716 406585984 652789258 850044692 498127387 770888807 343012806 803070445 183227495 870152426 788832552 832119531 369498260 717707991 307546299 761828110 765106405 872976336 386175777 624806598 558474692 807959735 731702938 881362429 509145149 928393857 95962979 244226863 428637823 824914226 414774077 493942723 840742607 842912885 938851937 963739551 961235179 979392721 478694790 600133890 482901506 506287746 229792690 396174434 169952317 396505423 687568664 903676034 42048000 955374360 504299010 731315608 546434586 567228887 794914904 937334750 589065262 699054701 211539929 957106850 841576653 935038630 201551211 690159437 141250419 630277619 38239528 710569331 240425287 517407176 66832475 128731590 130721304 146653428 839877492 919224603 304648896 810352773 888908730 918866899 818380421 923873355 761187169 809829242 700339862 961262293 853189057 868782146 683877082 717305597 944916109 994751214 222602165 648443814 759954824 931051133 642909065 812259366 757644339 833419838 844745573 936901619 56029299 184356066 88960603 226143155 199111387 772299197 792024350 903964419 78221374 444738320 601205641 614698102 702780808 737824070 428523283 774890663 638960575 885858266 919380334 980143545 89782612 230593800 784656796 989651714 937721950 949733871 704066210 825384850 487737197 944100092 660699459 725085949 985036681 990169825 582345501 688315024 86142851 960926437 882705358 931044255 910838039 987591591 409748491 969214674 559909315 694627991 121298740 307655645 182159280 714330492 362497278 546053837 921237584 976615100 306005670 557353685 763079781 807118933 884405163 922251949 50552406 469379475 427196386 840846204 950129113 958502147 99277794 915122297 810003175 919349447 789877189 798870173 993799174 995391390 934005103 949444800 90286294 966435898 711413030 903550554 49713803 850013467 871869107 937876098 785514426 918257653 940979461 975556506 895180582 950695219 873313482 882097310 855986188 905221448 497534908 755412680 621765457 794859435 435099188 793541076 257064405 965359378 322196652 701406132 146785966 217305218 312388543 993201455 474113225 898524828 8769391 458736130 360911717 443237209 916151621 987433611 10482990 829329428 861347986 984643592 453249242 539420380 839692407 944132914 468300381 839411080 662090248 900754679 979203265 996794685 939147593 998909486 181223571 555008844 954165819 960029564 374378538 573200993 13776026 74354472 532605573 743230341 410209834 612418484 762191066 769880871 957029135 963404821 180684044 563902439 477241669 829420439 431117162 995593241 753583864 979593825 793544344 839611498 699884309 824974450 69640882 885827771 904261373 944858738 653018376 829104014 782420791 825840059 623997458 876040373 488925943 848974949 990286975 992592314 930032743 945026362 205082440 977553412 150633837 642393171 622820810 801379704 189530025 376361490 403800669 840090312 75731552 954838861 500762515 581228937 8886661 370581220 444701519 994169689 632029308 844028923 113848099 866018597 988107050 997270723 285571087 906607216 61346611 824401124 820631338 973102016 104032931 499165420 663282284 745195122 112188446 504535384 84664866 833738064 752753750 878515081 794311106 968685451 715787052 858081894 664834419 947883870 874173176 932838434 542481300 551644387 575094838 702915377 841794384 913192030 801297488 978009592 986804889 996042087 323238112 454678852 250732022 897075671 104666239 567952570 239214398 501670115 927530191 958317541 909056009 988534966 403645231 815995001 126827368 523345302 654964721 735540513 947493593 968571551 781403748 969152325 814802381 937285741 561209515 598955900 14896254 696268715 610353753 796852866 380513130 935485485 362084529 611447093 654987958 899395020 549548101 829222816 468019398 491203487 967087886 993328026 2272480 493310824 30108036 684462490 723420467 938319296 303982324 642829694 874888447 993644888 838110707 870199370 147145083 931672488 229731555 788618080 364135191 560715194 111005508 890826975 918838285 991114300 512095892 866513955 335293335 406995963 103442 232993778 620077270 741797400 168040878 761091549 467049107 725756656 111287086 598077136 172183310 601528273 706034021 906025918 254014789 955029067 716532310 958139150 860859132 909524824 431395544 997726181 629377395 863079647 940823799 989986981 916499913 938033932 692648028 891065818 136253610 888636663 352501446 986013186 908433625 944391757 298895174 822861942 180146156 539328132 264969356 777493607 99134398 372249611 139775401 171873966 218945240 352484341 877077014 897089779 839213799 987805779 859465114 966932903 572112751 868510840 722136579 967418876 770388080 918360922 332548332 909191899 546623919 594788260 869069737 962976436 20512732 358413713 456440460 908092951 239957371 937318015 668438654 896058224 365039268 567372315 141861964 695627137 595747340 769729502 627844176 712019110 549469912 632467834 325569331 759616133 531643864 827522978 346508039 932963026 759047224 982875487 929304472 946024103 92723865 482503589 827698894 948804423 875079496 964254430 610522743 863418157 73097411 435367225 11417346 556189345 721162551 793063779 898471037 944157801 894713069 904376193 835238634 895799351 518039689 797917878 109234085 957498141 270943654 685205933 150043836 823655336 385163030 798541063 959904248 985771011 416318752 897943867 575517551 659183758 577718077 726547533 948996089 982733482 260511150 677052839 221948382 449464622 423445358 975676961 63558842 640302215 617656190 654460666 735131160 839424045 291302806 432825335 563389139 682160680 293833148 635398456 804986455 965329528 111450680 418393257 326970222 968143827 682341347 983900998 657992562 815652821 588087277 791653889 707520769 752431276 78469798 931062309 613624696 679963774 880412184 894579635 569665977 857538039 915642280 946673125 144819089 968914684 848735477 942386908 227128566 820137695 800028931 905632261 284176345 335673917 657390387 691589936 722094140 877159877 277509155 597940827 867095234 874518525 571548371 811462787 279869766 985269842 881159370 953443812 326477300 612985236 921639214 974763781 988019911 989164817 529057975 776518028 500767353 818929385 966607120 969381372 611058642 961296855 648406531 801750851 773716782 891861191 930032179 967107279 554262337 799465232 623992301 965525506 539763198 691946960 948788562 994095163 789776888 871353223 682811091 830966803 735593992 946011807 370839052 875302149 949683362 965388272 996150910 997259803 290613952 633552962 194673356 919199165 604563113 895267425 401064334 738434461 926863446 959044185 621188498 793549926 482814230 819746367 411344408 536771035 589910046 692471612 126203898 225885499 23277210 495475084 38529697 62265826 651981944 674575806 788159562 821629656 421605629 899917919 532546819 978695215 723971939 754009219 315827548 833255670 590404397 800735430 396693226 397948914 751129980 816510126 798152431 954657561 948684359 957536521 794870369 804140271 649345949 800154733 961156600 997928251 252508645 611944388 945137684 983406538 922427192 992720613 870439806 989389964 399571054 868664431 5000959 485840980 766129334 861430118 588079536 793195138 634936203 715247678 265324225 393047841 689128586 883275815 293811202 582416031 755885764 917800123 513562353 571913524 93831782 347608661 473958837 771049384 20313797 598053887 719997225 849664664 400264816 634919376 470432379 569674412 714848336 772780482 591078371 686302968 767661716 920611842 830282514 867388735 444324174 468883592 241043204 674084857 663209536 769435296 626495517 763187865 161079699 703132668 555147294 586417593 501868111 845979310 300189564 943111238 38619410 217816220 398450488 522384293 840911982 906650599 912716679 923979666 268023039 704846898 784285719 928546717 587314797 959406011 113188101 848659161 694793477 759263427 110610925 923591105 337621776 971497760 774076121 820372345 185041432 704828940 937247241 955332576 441806564 812717645 990512202 997946961 499319206 664820305 675335154 824867528 434741555 693705724 214375973 381816037 502347441 691456095 181606029 240463177 396918077 671138509 436517320 618865234 802988147 944985639 345111502 528664570 716132709 916944010 104411375 593843070 822068708 939401126 615704898 794639966 602036978 745215400 812983474 827624137 848698713 932725052 696857131 834428187 919265903 988197627 642188068 942123492 543274511 582255403 257156270 888898576 972888455 980303641 799910241 872223128 381926753 888641055 677557438 811254316 970866744 980205916 367083129 385858077 105309230 186317312 351240940 816805609 127240338 186813648 852254317 967261585 782742569 995169527 352219541 952463799 973602846 988914532 995673121 997780236 845372324 889774305 358857686 761104176 227552999 623350685 604610548 643169588 776787393 940170557 765648322 859098941 562757482 805255984 483668934 520021431 92138832 943784074 889272623 933835859 512421280 984022257 528771619 725612256 602745163 761761420 481204409 591522079 497112563 663827027 632646101 641123045 967758596 982665378 521436817 880724931 478674062 801507722 89645877 906979124 389199231 490422580 997287767 997994912 605737155 635015483 905580473 994387724 232096725 636433466 83935465 662649485 440967082 725108366 5568732 189433971 662982128 893701388 206482936 424462915 217187786 574819350 894303604 999624534 988499263 988815382 40381576 61796081 107690159 494740568 491776258 594108955 366958629 692478908 264964089 966918336 636259974 969938657 538377301 798827467 166474625 301071243 463346624 670672161 691547677 754585908 882153333 968255874 447858192 631781237 629740972 763148699 621148022 946100424 323183915 816546963 761362324 941680150 735436659 766525812 872539010 947729705 60611587 310812046 634870255 712776185 613109865 842125365 570445522 889843060 820604602 875248975 664162300 911265190 80117719 825206906 514631303 953587211 934459486 943853037 989360185 992558418 522188214 861551441 867432290 983501965 516860629 524278678 311898553 789608217 368068810 712041813 420829574 879624134 724885982 766690462 583162801 903035354 777115477 956321746 160801486 298288351 402524436 410928406 727893307 984284056 704552429 894206625 68529170 97665305 846019451 899827174 108529861 470870431 50991119 768579354 662756834 876651551 665630713 932702287 664434427 941802724 437433337 452550268 951778237 976577256 896681618 971176932 182400750 692330505 399244359 747757873 786510464 811035100 126126347 788326673 641721967 839870610 725790760 851309400 262119499 513656609 617318412 781981769 359705319 457084425 231568649 747765837 123087256 950757930 363629503 394608243 329392229 780535625 809871097 882336515 262964225 307497186 44504922 110825047 977965499 996874036 320142340 366780299 843120870 963176536 726529144 897701818 834916541 941272488 580733265 918311789 53589191 631706274 165746882 987980808 860373884 950234720 775951567 944011287 256977296 798950650 535391120 739210651 318599400 961121851 549075929 834469913 13052690 685244124 889418410 894422947 123177520 607198872 29278493 674935870 570478467 763834303 253315665 736633135 85561626 551870734 703410192 836546645 343481802 828870127 836235740 836728401 914407769 968940634 489978899 518930612 596373653 653571350 854620311 892268762 550022677 555640588 186490506 479591077 618454738 967022350 584453958 773381391 254804031 431354057 105043707 682157144 830058476 992240377 788844150 880359502 467498537 633140747 640487443 723409060 710656256 993442789 193878296 684191568 939491323 983921635 329106310 421640079 123690622 429832141 873944865 896338919 472860207 850130028 371688394 925475599 531526432 936381375 446289766 748359122 579560316 986884070 55818299 897608174 48586265 139009269 712743640 834126354 770237721 953005759 389073310 463138136 848650165 940809153 492350424 580507698 485459375 940611803 506730524 523174343 401572060 575549265 36818089 514509721 524224140 988141338 350344364 487746413 500614882 583577259 691008063 719621668 158946091 902158667 34582566 374890193 949279760 966887643 110900053 807024084 697493649 999345352 596048953 701500323 498126512 989880867 69086260 234541658 265521415 451244409 747797093 957120042 497077972 983397081 586335621 596987919 603235067 686641441 195997459 326261122 193435127 410705257 829660196 894899364 805669757 871323983 110393133 428165027 863117546 985353032 893682910 969391678 429362716 952526255 390640486 570521771 970895267 990015423 647587118 990670912 560248586 755435541 396963856 948200246 170193174 414001025 80403696 509139596 744915266 945033217 608645627 972387511 423220402 867847728 632886677 753555685 752061227 867134570 921513443 938622954 288062413 298658713 592909133 675826652 293559990 406118476 131316175 561094575 732442824 763828420 577421005 613546231 474579924 657757345 450672623 907437592 568852069 767940206 373689933 840793228 4360952 364651777 610490423 866740737 641453553 945166416 213850076 628339523 917384655 944565136 533966951 614941706 597558163 790280490 47738813 180586590 537498951 664286449 730544469 847906181 372390820 491032627 853811651 891733263 633048644 878631980 765969323 970344390 995415004 996104833 789487749 830761547 637469134 706296029 75531039 236451998 336838995 756529342 675186756 868885141 829229639 931360117 244837398 440569962 190959796 851563338 779148426 837023620 122823657 659463628 322965515 548454481 291442527 404145951 547186067 723069292 427932954 836273889 17442685 40435935 938858850 978335975 647020057 832664543 97464142 291117692 676290035 894584617 427855090 561702731 267851638 604636899 204730090 250771997 764446612 801624404 258175208 765485720 676732163 977006162 740546518 879007501 834728714 989486991 666846838 686866325 469710853 763046475 118662801 507421374 320331559 840721204 219933736 301176528 607078671 608433231 706178898 895889167 583036269 939664784 102425708 408900702 809167753 919816665 501137788 764227321 192169561 456942379 259393521 493835208 449489137 686351856 166670531 880401504 173772573 551283090 262158105 747983711 779960988 793691848 307389891 698892786 987696867 998567736 537678013 690841343 471222846 890685411 295925491 668550153 576880081 607859289 361084517 936621274 769556706 857906296 697123460 848763817 669353836 840660673 461636473 939843881 930287332 981784912 530491231 995216385 184135173 980529937 586707120 602956109 413209346 424523954 676665522 785822083 87072083 828211623 268394311 877783112 19398655 402047434 273025004 478556326 416716424 979274421 447573152 627961304 854126487 930286609 393289632 757816357 728793430 813166587 795523916 934601212 911461777 937294783 958012804 967394384 447679777 599410212 585453080 864321789 768968854 791668982 69247341 633315875 784424468 956096378 100592443 303636892 49909432 842464248 57383852 968407889 214049290 289966653 501952978 675712177 794462972 855235121 648404867 961013137 55399735 379433065 594118278 765545920 624352146 691747031 656806171 903660798 293129820 672133864 1640470 162692845 220281972 985281137 833658917 951743983 183001909 255850941 371894793 508391504 568964473 830619706 950024170 977651471 632405838 758095509 527423779 733095410 853294568 965036354 1234110 482141564 10990388 78584863 257109683 627106687 127336637 835993544 196841137 702235570 340924127 419253374 292167154 954933389 669697140 888021858 923760422 945688900 718736162 937432713 528524247 590491279 259256422 997494246 852309927 956712320 135948474 672164574 13404148 934199293 913753500 990567579 627629 181643869 645536426 755013619 97264899 256235141 948014868 973879251 837283579 841411942 834679312 989650787 384981751 608364254 591382820 697297055 145269688 149519629 871862521 962877210 730499883 751601932 279783650 498611657 748508932 833109947 873690610 954286069 437966019 551883257 187906401 724583633 623318315 760573245 791487268 885757497 95022631 978040665 151660053 712518893 344901759 891816142 760058684 857871368 789141496 844054831 868179499 883883909 726438732 752519373 787323909 963853880 955486294 962791501 423484873 506227711 831853159 909658562 671543741 918042994 7067667 734942173 67324029 515572429 917194480 988656703 715337779 988714700 470771850 982428753 771444748 845804361 779424343 917412735 608176836 887023840 486122424 749047860 951110496 972486550 98253809 883266614 292537711 453415204 696638 267702590 735848361 833993004 71715535 105187707 719102016 864418907 275438440 999724227 837044822 962279952 543718754 989455811 993497201 999004478 180191461 844249277 749388152 779594398 936964019 981997580 715078053 762555588 339347207 770840980 62852922 622572420 604187074 910787294 630636711 959687557 933157891 939120369 387298369 409047015 550471220 733507309 516284668 946198550 646837427 958417337 620488345 962229169 77454522 86909176 857664087 908400932 30596989 267161848 157575349 575364061 741632746 982824773 876149516 890530212 700963524 774306876 492266869 764103892 708264636 716340556 940724309 991128001 188981511 853978118 254066912 858583116 640299234 835528102 429820835 672887011 248098131 777684266 940995748 991378085 141229229 722021910 378299649 550747364 667315478 873181729 983685355 996845805 807321909 968331133 267611592 830381768 101448825 448993677 290829952 668704709 908005771 955548512 936367690 969273037 83978310 986390195 880731900 979086832 364489604 884409284 990898239 994960824 357573249 627815890 299391344 767958872 540142072 915813030 156127924 395298235 897889184 992568255 15588064 233708110 428470441 869288383 633860973 974797562 284382253 855169965 240153210 487527143 688841768 936608012 467343057 814907875 288606137 926062771 324548743 616222567 92465286 611154133 481791869 921221882 264844238 978104377 618819841 703488658 398771431 769032805 779406108 871127305 936183371 942223071 526625667 936212151 607848198 873446268 19719665 884958682 309222350 939692602 326464728 982014634 731252688 974290103 584905719 791371176 895428189 938381764 259720909 410806173 745741527 751945488 728883774 907336851 768597027 986311477 648982722 830704406 154670310 917074694 780218243 998415321 150831541 781834536 249479460 483463651 261735068 635571802 147159519 493715313 668237176 803442688 94950199 707601039 787293626 932503759 746538458 797306119 476568395 963438939 826124155 999589510 322255841 681052540 191912301 726473088 666505637 892996323 991285256 999959428 418764191 701693841 19098796 54004108 439496549 546848344 508262604 658979510 325106066 641929163 978924263 986359738 119630624 385436776 437981012 524432152 726273007 952123985 412139725 735010891 418968660 943132066 684243831 955603742 303163960 338903334 393851792 471599875 867041817 879247446 833979557 917744657 58270164 651912125 685457000 702360801 196142883 956520106 342179183 904262367 428060409 540551462 959022990 973240896 798755382 980592080 212089386 986802715 33493811 342243573 530383827 869410184 654582147 962124563 156223879 281551271 582463544 933211178 344304708 493695080 750529022 779189023 592939981 973507712 859333383 957571216 294808831 373232585 556300654 797263179 659784299 761226709 890924139 914102667 885210983 940674780 901750725 954326573 312507703 884407644 158301326 930725272 744357904 927602898 365828105 670423240 282484476 853998964 839016610 951311454 212419868 879734264 931374770 986055761 554556767 660623546 307153203 723847378 18175883 100197756 892046941 958069072 446815673 877208706 360008349 997872521 291189699 505504553 261965900 835786163 145478599 503034703 294912947 563110863 147923893 873468205 118388309 355309254 462192829 853769917 76802834 758306079 241090188 801915881 388703041 595327821 268659635 609057948 424133003 456864621 456807174 835960582 74778005 816530023 844480601 959362372 831921019 997576535 501250945 733292228 280455095 286395064 919727740 940762431 220311919 294155083 510485331 923200066 349124063 794529217 898713628 910165464 60233103 180310683 180479058 483860322 949541953 992574268 30067175 925280273 703558035 921184938 947037442 964872381 178484270 887611432 645441298 952814977 615003085 768461452 491432060 744236916 28680589 251659184 68188120 361759002 440422339 580064003 897156042 930987686 420970208 589701656 150282232 305708961 618005234 646368008 422488331 459698711 706507575 955620148 759681662 978840304 90624298 574022760 172527346 420696648 769971946 887370676 667586192 904409918 462834814 848888100 275248257 952824580 905800429 952468837 308006868 625201962 828268728 841155372 681420718 921749712 430491000 703580926 158118299 819120093 446399799 595542687 448469696 671731011 240625716 923104921 668083420 796975724 125963968 467175219 330487660 582276927 759660915 964731336 756299128 914735952 427058516 499819335 576512979 670311197 348752859 673055891 87074653 345032754 921082162 927627357 762591423 917442883 631076434 981898382 714820251 795965571 690707382 735621531 847724197 876047733 563306816 919400991 931123892 979019286 588810514 794516912 91191735 685232893 965449153 982370206 408599248 720860633 510437240 843037883 782196917 831305033 800137995 906142606 864228138 911989097 555971604 558598309 494936930 520951191 706193806 962941965 406225295 685336981 719888537 829936488 669791422 945484977 968264969 999238052 414190380 975273781 876158160 886298989 675384809 773574316 803388348 806470187 832890612 833003837 690119444 947051916 827568442 990023193 503002816 572322339 986674575 999203838 607122001 624390369 592476651 641433881 298754061 972541597 319015618 340507258 599155016 738853329 885614541 891857220 873315479 975634691 247275492 643443045 321037411 562136926 223839375 911752055 426762876 757011679 457853762 666176446 723259399 806827147 435681343 799094220 376656273 456719505 106866699 820804985 70257638 663097628 710856655 861721386 574537036 657262167 374203142 428325855 247023182 387699934 76433717 677393214 191605158 594455797 713662090 939279751 278107007 806880047 379136386 606535843 960764938 982008920 473108177 956057791 963412637 968385792 689504415 840111359 248847131 389104064 357954436 931517472 243340072 431815249 258731424 514211007 837908914 992009953 106970124 711584050 234125540 673198332 748089202 993084824 703918157 788542984 406221014 687358994 513797187 823851996 498342821 622447404 721847936 979079056 650502593 941161480 209028200 982589786 857950502 955715471 828341829 898659544 167106316 212360240 249997560 383287766 563377224 660064554 156894033 810161205 438158596 565518263 878730269 920241298 82063335 828322875 146011236 206170121 174996587 301077110 769083656 781624323 290641368 880626725 873125137 986372247 239089015 724315232 317910927 745994248 682778241 758782254 364056522 424919930 304507105 746211180 853271881 859170230 278766399 650632751 170871603 717149351 217525436 594425559 817260523 936132349 887819412 908060719 527885892 747412648 650133485 793550535 113885064 750349067 429698446 939655260 138282432 383475515 299869446 885276168 918994245 930528950 59961937 117147601 566857850 635436012 806165106 914974537 213224386 996551741 399385409 508931930 544601723 762222329 745285012 895207134 663315257 997889429 93748538 891581011 872639434 973777950 156115615 666281719 309642736 899267895 71011011 513172355 159178080 978420086 708406085 819025136 503121318 943187334 47492429 825708059 866617015 910306596 422284416 869244505 73799833 609731407 243990904 681917461 813104436 829507202 805652064 808565066 354303654 776012751 608598437 610432810 353788712 939677363 817155273 896590572 867307722 939357124 428588047 956423290 900984174 971213604 845520433 861500867 361068159 816713466 534679569 970814761 844429274 857674230 112597232 461762399 174081888 906078705 282309186 457671683 274040557 675063290 283320696 546943815 970579539 981020355 288211503 836591024 184471434 303229607 94627493 986601360 572910002 860406428 924841974 959324644 504971517 779190242 911398797 916137976 632595983 883794828 636762873 736714298 325520792 664516173 354884219 508264446 265909451 356818835 520770963 886754461 82410734 123642492 140386856 852102516 542717391 902277515 223371894 678063720 307121015 311783146 135368955 656471029 23667519 225337561 421246729 669830847 166663299 315275986 770109480 982060423 428706795 974279183 870079326 978076615 220488178 513145082 415446482 832202138 622077337 657931892 214125586 625835826 160508112 595176548 735442029 931057167 495499727 772562474 592086372 606576597 515347682 922643656 494021872 803067450 290883880 372369108 74748104 534938318 713637096 901115675 886250193 936565323 153118849 529268619 435228665 936541973 23219155 421868191 453801428 685252240 12712625 705725771 352980897 710507896 329094763 717743528 225192038 818878035 765935396 881006661 442047914 848725723 905667699 945435992 263768306 628261474 712401292 911794006 776319655 869448003 79272968 528452617 902017149 902109035 960100081 965588786 778915706 786483205 280870074 509084876 847363375 871708598 143248493 204635155 936124313 962286088 442559058 503466024 852615429 863607598 271518975 562177616 163738002 868757918 475273901 712301705 687628221 857686340 535381963 845771709 935302763 938561932 985013000 989707732 349735554 474025509 131419071 224372938 625033169 669607772 770787554 855150058 433283549 938883827 175649130 774423498 518383222 694788647 78194682 666353202 42545646 516698938 660173104 983242175 422979299 658056277 199749505 489292239 564659657 953125561 857109659 862569106 660881371 689830152 395654410 977531520 183648245 624691560 304119066 807537815 212078910 249994614 503994687 766825588 578378876 625031220 914053033 924153065 947532412 994516314 245378146 365107461 862496437 973344383 523072473 692027726 88096728 544365000 919896042 984179760 819700773 888192817 154664994 647491059 135647412 164334264 188848532 752667832 374290842 535844944 187802324 783482545 72107810 725678055 662126701 846268404 966580465 986076388 534893561 931225120 134546888 610787037 228213674 757037952 916512452 997706259 743809561 807467665 175930161 540237249 417749961 466253089 997521040 999163829 98693216 823168235 421705043 917720608 898654192 949381448 490461517 531729739 432324992 999017451 579605634 635224228 469145290 480433891 112451299 347525761 546526157 895193217 835800131 837264827 153868917 169363659 510426862 555241983 901357792 977023833 57327131 773104386 807312746 857299737 637448818 842481936 397120434 772591109 909091750 936734821 264321553 292787005 159555887 538201775 370163719 597992147 996702052 998140205 46190011 873431644 667934084 702762461 201608633 957966798 908606692 930926120 919822434 943836898 28093435 356929548 267009267 380911702 362677207 569841495 494846114 878052127 725481587 849880068 150577899 421899133 706582321 722030174 302558532 330889496 267689955 928312469 393354764 601505985 683120291 796821419 522722663 726337001 175788042 602906195 360065953 390459786 965383012 981001905 399793788 960308444 395021067 670968734 839464469 854243552 673249058 759670487 999918907 999929202 843309548 887075491 752428075 968242468 815429245 887418003 307085859 589971675 149234679 720354851 118513686 561506286 578417425 684350991 958690128 966404755 691036973 736655469 536194136 677904421 945969862 984926332 836992914 889443476 610186736 616895548 705600895 756540450 157609695 677276421 70357718 173514824 664885502 883298154 39007242 674675821 504582773 756550491 700770563 935871867 610201098 732508412 611909397 965129478 571505043 739650310 306518534 495385683 975759713 977479699 1257970 672569331 447134169 520335868 806262112 963670587 459701984 746849783 152384097 469229807 34350944 126849679 330448489 629919387 249161332 894986413 880153020 958304742 806173320 927282665 59377609 490625654 497460728 833574509 507924419 551461351 403445058 978258749 371350242 985772389 892560265 948257097 839480487 981144152 612673428 876300911 804618898 955803055 946032093 969769286 969846829 984434371 259896930 469039586 445145345 531351189 849037048 996901638 602478283 683188251 482373989 771330696 834104873 840995660 83806789 738659772 519655190 668613670 326473539 802557989 991094771 991177696 476866482 995260180 861022603 991695651 224913570 616430011 936010124 951803888 581356293 972971353 923553706 984901769 750785512 978057228 189206437 632473866 847999862 890459020 925866507 960635129 331657245 889024699 86357762 710202890 879018215 954937658 828379927 916974348 867018772 918041435 355302095 914325661 90397992 181218317 525092328 739288261 647601779 752577377 765062955 991261965 971221146 990560399 428603290 958864031 705828875 953358424 828860847 832560592 72488732 895782070 64642422 666503813 926803488 980695527 350005915 879665064 658602467 943481900 341342355 704523699 974927346 995378326 487794294 624409792 108788211 752485104 186901483 507578063 444389598 598977469 496133207 603719138 923861103 986458322 208685705 334406027 979275976 997498311 638584690 937867360 30770952 678786455 87063475 577224596 318606199 385436433 958973322 986371117 425343500 453956269 508210555 783937809 347819972 850775530 771679562 859158448 634180467 883736603 50104181 827185715 903424534 951283894 389011530 813952821 667264352 669401540 719970674 911151851 59056849 341205118 486972133 670209307 869866742 932826514 464514802 968440851 77481752 442997601 18398137 462624041 81754782 514282957 320004359 984990816 317827869 868408420 823191438 898685448 44158861 325606248 731079201 782265495 587648552 592998963 844400909 992879070 827441107 956731919 296258632 519798770 879170668 968258384 734180955 929947033 432219243 875209950 451896115 611415809 750620752 836564458 180410219 188079127 675317523 685506779 123018487 395477998 600177316 903844879 485593962 992401288 949032025 992661533 996189601 998078028 304430711 341476434 62402591 919231604 103512053 857813585 181531132 457466637 319830868 808873482 622672889 626974451 16585855 754215836 185373827 600482799 818620844 933212207 393632387 484732193 71874895 162601559 694841421 865677665 71806545 552051889 349004893 432478584 93791093 816677526 836834519 882134800 387422972 617977889 245691518 975587668 325292322 504272699 681623823 893552218 172815477 284247736 532263350 577206540 791669600 924738408 646001314 756667395 57820518 896103415 149882338 696061102 532282357 649277299 760697500 872832954 13578451 36820709 147981150 362299111 179100200 575005210 805720588 911762475 852844405 916980598 574133501 594908907 713957119 833128536 448451058 786000576 994351767 999989625 243639487 921060710 349088709 491114281 465163691 787692081 724284188 925807684 840284337 960639156 537624875 734574118 602676391 847517673 560759767 844016178 751860267 824172270 934600511 935916574 160651661 367196797 798072665 926877992 928318524 975315625 121673541 900381653 747406174 929097248 144011163 991550901 796048875 826005587 30996128 59397201 878808061 885788004 2159334 387007250 833164424 959864577 696972041 831475335 379795894 948482799 151497825 746675148 472366662 750181545 229000808 331854967 778997761 948173242 558136684 990016418 865384155 958797044 819731903 868615724 241769699 812032795 871023420 952993477 78458577 443754518 700571365 768308246 784328529 890832526 156696633 434425436 859701868 907823573 113484060 227146605 773197143 988062918 882510704 910318523 861031419 871310339 554245297 753373953 576950518 811472525 322913317 476675808 208113743 801371913 230041900 916102507 288352877 646554697 676023990 831485163 771647497 911936327 320026281 403662709 857721417 966219113 691930712 705926831 92535869 721015283 540963260 669399403 676482966 732682008 998557964 999711210 531384489 576834914 391981801 831673274 111766714 896023993 936307546 945466001 974603988 992137438 717092985 727084258 449467060 696327377 358049623 835448462 510468996 784659477 809964906 860346503 362068850 520426728 402312433 928364063 48906515 768570428 658987889 940699029 702175125 920505355 635766039 738587153 445264162 997261824 456380277 466139339 537786007 920992428 573967361 607196634 138264315 718265638 34784552 480542710 218486538 359431176 566428669 743606922 609131690 983679052 826622997 951467549 315947269 696625621 592759354 811823066 536727951 886165359 666628545 974403223 422051362 444465993 740514277 951457841 864297148 998975197 197612424 632097525 355910819 642562461 121883263 523441671 90535846 151724790 949409933 955954420 781765598 965083986 978137301 986824731 241006038 754223967 221971138 586595543 449585275 754844006 510492372 946221638 577882348 836735053 494897175 784243072 682738157 702201452 607384615 820747143 555767411 635480854 550296182 944476013 872937203 947199732 729164260 973685438 292691314 483821519 259227612 749143478 564374172 714324123 926795612 993969387 601156853 665838531 490931440 950851011 661909606 773545900 629506337 883304864 962224951 989239816 511794093 918631200 317386166 921154976 752621691 798722555 318915387 862145752 850105067 873021983 645459815 942284958 914147222 955165248 670600024 752382817 728156197 926205156 340626132 697253144 896213441 931306634 207249378 488515048 283373933 603096105 998205627 999165422 676869148 978031810 738260035 990072634 660761481 775741515 860461488 887071401 996349099 998774199 454237288 650491207 447657228 765306875 699419792 775799617 289485916 852217779 437761176 943119210 254319168 376227869 329221731 745716812 482930673 993846207 507914313 706696242 4432141 643661640 385371790 461545809 254437763 592302087 64379249 542213293 995512639 996410664 691761798 929382005 69657667 304098904 696206569 761361294 959373532 972416751 878976184 898401958 432783018 800284581 571837096 950262438 201027977 955730067 784330307 953406823 643732332 964666739 913221561 942228693 934659226 975464681 886618243 980885489 839619860 947165334 533312984 945647429 514460569 644424957 765606075 786169637 801480861 990354054 210900376 579968497 570509260 697530890 432710068 814300864 662619754 742605106 837665472 946433319 207991609 263127781 74882019 828738867 528083467 623519456 854474859 990085941 250195282 580420028 835198253 952721318 579509876 915001637 798276298 851893876 22843108 779413063 350622222 416600416 509027917 799755295 882588269 902142473 337039159 874607531 774980534 872864484 791730908 795256145 714776446 942955330 14757089 435604048 200044732 550461830 419143623 793446966 783217928 892775080 102856213 582219008 802409927 839153859 565981487 615340820 245926872 384422893 239810238 329193625 390153001 598372536 587759543 972582198 435970536 568336438 192155773 967201674 189562143 608537146 608219659 738743134 73713801 885448947 468495238 709070149 299342961 832822681 268281889 788679974 739402834 913531693 180642178 948732931 401243043 602396328 381012536 510876046 399448987 898093334 822547992 879180841 152105858 830454195 178805661 275833772 296333412 453610231 899508889 925711335 926934783 938307403 684141672 972504874 924317704 937749993 858679700 909230185 660911093 982171992 421196572 877483966 672863275 674960995 299660999 689610801 798085681 911318333 455142349 973904273 956422371 968194708 623181059 976064622 432588347 614310572 228563390 967033411 629718697 714465437 935244756 976944261 723180310 770794984 511439206 899909305 580210217 708954220 554715422 673830873 568870062 956825915 585771942 940236580 642684060 914570607 984669832 992139440 578337890 605011790 832705397 992527184 512378054 621556920 225055918 706846543 210600022 543352677 715349508 930164060 180473761 661635962 565952115 768498153 159206461 228243143 716623313 891269017 102128828 521346427 406407125 601849451 76082037 222314063 392043640 900617893 747814575 966986300 864983600 887132127 900554143 962052093 627174840 891930154 793448098 965343107 372165916 616003158 472985053 654333732 383920529 682613710 217355524 408821929 790143331 826469825 919136172 948501933 996625240 998464722 238813443 982222851 409778923 428072501 925720552 973702558 967523849 988376847 420117235 647904119 386937856 476962773 119902776 937011011 697558854 799616030 603884420 985196265 819057671 847252839 302541563 670382933 549062267 982445666 403898968 602897995 98038821 123964007 443629028 826505264 110524699 156982932 332440709 674880471 59585251 995660195 346993425 373381751 309584543 570473930 251806402 323025673 356128587 991845483 817473268 884272084 901068960 937157752 441296758 661170718 690258723 939598033 591497862 594470609 211419880 396702750 381910110 725341103 65125628 130810888 433482474 951415765 538097524 716805486 107399169 226375162 473264480 503172330 382084370 514426616 270625726 701903643 872960450 997171243 212096638 624155684 101143318 927797660 990887402 992069174 52327073 538517966 594942762 941324819 71668015 986679779 395588469 733427507 37021144 162832823 891845335 958980730 452058933 876091864 436452153 664331474 641187820 876297871 467234530 889927163 678984779 789547747 497502790 964498777 284789038 523242081 824169580 840230987 148773309 769615362 399180292 901068593 393505807 917300603 263334403 304048302 31223870 466690530 987953303 991394710 370151571 993960162 861910540 901381454 956227965 981533604 95452098 982427962 40892543 276441975 352443319 432420571 18786792 762714154 954681114 987179807 615923341 802096244 655450430 808312911 954381368 993582011 54707183 281294240 125665373 332240179 406139568 549158207 664473774 823854634 409825473 751499015 526512309 684964317 584425414 691218200 35809245 585522460 999658183 999690160 242915723 923910121 200101303 452464715 730409890 904684245 303523642 981629357 453633205 890208228 946758646 961155456 689312284 866356088 710758778 941341977 851680064 862858363 868065634 904452535 522953325 896571944 431137748 493066745 121519616 836786458 667870421 851757544 771031521 904304090 404915956 990990170 503219479 666229534 174434930 588755350 145940161 368743255 3010380 941087392 987357729 999031768 932509020 963230560 529893559 794562032 896858655 918091341 894311176 900559965 259353246 488290673 585280963 670387253 207921737 946333247 740013143 902982587 685917640 843085033 647006459 826591289 713602851 850982626 65742646 821642102 65472426 131662986 969743868 976033468 590234951 984280808 466714572 568107763 887731378 909618065 384729508 685549786 166889324 741338524 517822477 524822349 643261931 776485684 904110042 972156597 144565433 705631509 301154733 331737310 892409273 928110279 731785795 748410158 625013784 793150709 979672224 995683595 646692553 797142962 748481594 837331618 233287816 641096904 677132823 746064557 525545414 656577951 870435696 935660517 620837100 741878226 35700516 214265337 810767118 937462165 558334766 583029690 534203351 661438350 260238090 607020328 699105284 936246245 459636356 477329972 767782329 797568253 6061344 972654366 267552975 990970663 241324477 578698748 471252366 945753810 537147054 612123096 784589208 990771101 968327698 982829532 403294672 725515592 967636625 976713146 349139360 473195825 491320073 968441928 226368046 305706698 258320231 263500527 934616793 952328463 200778179 965182432 804859578 990094938 435693664 756038659 495891727 943416126 183055596 717736495 187425705 509945491 969418703 982736383 127651749 385672816 505628891 730992246 624615213 635752574 458503488 864411619 97642667 949524586 979689289 988581831 122957044 389758378 762275318 831943491 449544656 842759344 970190958 995924558 819107961 976633803 229716852 834547623 614924062 698194186 941053975 946473011 977466120 997613564 934056784 941911016 692032145 970092865 21092058 653388051 981089565 994987824 444759542 767444272 793674601 877195108 578727978 883182619 328649494 790734787 582675071 735396770 407645155 453339811 318995046 781684657 128416882 670587124 594452350 968801920 589495623 612472746 667204641 992203647 679962186 782261551 769056294 945340482 168361039 366378811 574503875 797522613 239394613 953316932 609224271 837676661 276115638 862110143 333045639 857216694 89593670 139339077 863331830 999023410 169904933 388784141 769422216 915474753 624430417 670621554 161188621 832099348 414339168 791317335 313312284 320287441 808336517 971780851 360710716 376149467 822974626 887700696 816732417 903888159 242076291 752533167 431558181 606816638 233877140 590152681 548030774 639815487 824775592 885022475 891727089 908503868 989995466 995108895 200297014 947067399 489624655 507163332 126621920 615356266 692423468 950672589 753230510 828512437 650990410 816608973 98689726 511751073 309949655 974131042 148700444 884761315 752829808 790532573 987597970 996569095 115226316 912642346 616261911 895859133 658250506 715453196 226272974 538593661 613605767 618115796 615223824 989635232 510719123 578810009 683402404 811113267 594695945 986594446 950050092 966623208 174696960 273581930 864984162 923260813 733917017 818614253 93086433 144503805 58636508 280214630 579283490 618597164 385844090 862059004 313059581 996978678 400272513 565581458 426442785 473058216 428623540 537714135 619984063 762139332 693077800 962524281 698110526 742185450 603047793 747157277 960682669 988538676 329739234 975008078 958940872 989711829 984053446 988900906 213846898 920237258 458225012 582079746 953915217 954459097 85235702 151609051 48135033 690942072 166002070 692071145 211744678 488691684 185324518 539015312 94843400 796431131 833329351 838908308 619991478 911633799 840542791 943562784 910315827 938140959 250344803 350160431 702524965 705546678 34540434 221552307 959609567 966419352 932957533 952265273 970561680 975021745 204968152 243250840 187749009 403709592 828907999 962566003 137475163 973296099 363019546 553520158 457222969 587051016 518628764 867142083 639228220 668217800 601094829 699897375 37773447 95248109 36830758 276134376 60512339 214715123 382296069 543416966 941583412 975362445 446608903 472120659 64986895 843979770 951438719 965862541 135606400 738481930 601375314 675591295 202937249 948748055 279157573 607073189 599207231 838194943 892332028 957271085 431240357 814891486 329047130 804253242 603945300 784387833 650016489 972182361 539020665 591457264 834237505 944027730 37880702 114029088 832018065 978593482 367531592 738628468 6743191 202386300 254771806 874131128 540999489 878086161 201447399 982222123 934688453 990974285 875519971 975866412 904851895 956417891 273926520 669796868 410258789 724860064 771231540 925196797 72632887 417485133 650145870 997122922 803603809 833431761 731913516 892118440 19640628 309157232 50179373 304985507 223641988 676666522 2358816 654112536 316376745 990553202 624772968 784743563 651811626 882298253 897692623 933455397 403305307 944883729 275522221 605210107 892557886 930743408 389959175 733014258 960726193 975301769 29390720 93329178 667742765 784091153 435143144 998449815 173122413 387034229 373308902 653136033 591659322 635859336 934558051 942670621 105853645 955805536 292679168 934852363 729242769 880986194 224098858 524091456 644585682 722599108 115137859 455702116 816775081 848494169 195098138 943945499 59824593 135159609 98441682 841732738 736927430 776228421 810741115 887487905 476358617 727373295 964427069 997444853 782122277 883132412 482553113 888300771 346707608 964175774 865991379 949366244 673226399 883127502 824212933 905579439 643173962 742490018 665066305 785856119 772916070 952743200 258719305 375864271 619501281 948386253 796423964 941084192 845635712 993785125 875334762 919135245 821251458 854583845 376280264 747370753 397385356 549225780 548191051 975012701 59080773 435834052 903940490 940035415 29146728 360377770 765707739 864631237 198805374 305191786 856464395 926155327 967278510 970732139 978565323 992197369 42106829 726424484 379240600 404429263 34569801 935593643 652225492 700235820 127204927 273771459 246091346 860808215 153251709 475535436 693408767 801302816 308592986 776884423 140332557 824309978 632586578 987213709 675257815 743037363 909867615 924766922 118917871 562676476 775099766 983200897 83569812 397293963 945154621 958095569 675432797 994529160 117175628 845365676 205995612 277809952 513289795 859760573 584093815 848147060 683206340 969398244 946993561 989336918 850258043 871999968 915453271 948593911 492496652 818472851 250267610 318123485 172499603 721920845 104097673 422654782 634118157 880967680 984409937 995224293 498168235 972681773 782146809 957743194 79993686 728413012 478119778 979666387 116964198 183515911 160814210 288282569 949786248 950373818 281697018 970223909 151243224 232886338 778711238 873462879 631566407 884416842 886379615 933748871 259984315 385550052 675093168 908647369 601882608 990354595 633895872 993938888 553772179 732909297 712460793 945421317 489862395 523975824 911863126 919090865 744943029 948064010 563766355 592877358 726456349 997715769 537345714 724619472 408593590 804406567 242310780 766658412 189210487 208702640 142677878 586975600 326856552 579308944 172923137 528702546 398556124 985323238 691175208 731297350 567864643 611091008 112327673 818269680 189520635 277735970 542830010 646204959 323084736 323940689 967195317 969209955 469621069 581816615 684617275 755746718 516706344 548481169 71794535 411941787 76427046 937085981 93337575 824805560 236346233 897172780 253995207 424057021 747346812 983096531 523145780 766870875 299605500 504893299 435185824 850635401 436314848 948854387 580460496 597174067 431961304 765787504 894819965 925703040 709920778 958883384 33755902 651418982 46230687 565425867 914373627 917098449 75138545 528776973 230714591 484650679 278918721 818489437 592700279 900137299 226522949 495612252 501834865 745148671 648080889 986631708 290550573 932083096 495126906 729572346 760252346 937944200 860236515 926984699 375121516 515995966 734565583 815229425 175486268 479289975 527021573 592179630 861785758 879593963 804781273 947960253 966374174 976822497 815132968 847457329 115999427 296170515 874040694 922456062 849565060 936680485 516328248 679815532 359679233 687264227 916933921 949738507 243307088 686684715 273373600 395894151 334748600 848054211 887478038 953188105 501080483 716613071 905729419 979625064 588085391 944255275 623890127 803075681 617574540 682307836 485396340 540254892 130074321 477716361 285075291 880671727 204417289 658385573 570153984 715140217 675598513 939467096 112561968 810231026 921138260 924813542 175760578 707501577 910887596 956324000 916961693 948874953 246800531 450916234 421901943 645398364 446704839 931325531 973951344 979534297 838711526 996373045 441865459 598350882 446418470 491965544 747220780 954451582 561001877 859306965 31034559 954726756 863451805 956910339 229864486 552235716 476528356 944153054 399544189 467484309 979234499 989907627 782164077 865554093 175917103 327633122 761552069 937550487 921443564 943719453 732139749 750919346 872421727 930902680 802208281 936752779 710445788 837759975 70702713 895943543 189366684 936062117 822508247 915419876 931799534 963475915 469125269 910845268 61112550 348426434 220484395 311373653 576064967 751147319 91786242 452041425 61842355 472033589 56723352 194348561 587485406 976144373 334591609 854014709 190773477 927218854 606280888 928310244 771982521 894812107 782043327 955935771 968229657 980975032 452034229 798275936 22037162 595006635 927125119 928812539 315666911 580808041 256635982 864489622 347925459 832353084 136791935 883378541 846890812 958371009 119442164 420663439 240562027 472634692 889562792 946336800 468060479 975413906 528837236 648065425 836336986 894181530 377363266 903806182 522745392 820976129 950109412 972892140 383681358 727000406 211417645 785214320 60174944 291217692 540214172 782302814 455506096 641419076 626201508 933411621 338289724 483699454 150867054 471347122 165680069 212607279 588130597 761689745 141948175 744419485 519752244 837124902 205288793 914217396 297865483 637792691 752475984 830098752 888719222 964672129 229290145 907419850 759093359 825798673 138410165 847056502 582488129 906580309 614920669 699366867 677083804 858877668 527359511 926810614 827718721 875979377 589316253 800191944 183136393 920531110 705939169 892227704 402368070 957085086 376605208 486303923 404797101 945501664 930679456 967228175 246903430 601107228 646476623 888934300 504512037 983304182 422311683 444902003 583415761 721511937 724577986 947906200 873292640 994046837 395621729 529085263 29611665 48243780 846199264 899035426 935590462 996956102 966562450 983713661 860028060 868351138 300733012 534189426 40650486 812256938 871514144 897290235 280750143 809384079 889536045 969732650 494883824 811246637 350997778 544675597 258073376 392713446 3091695 637788934 209451524 665051199 858347399 951699830 818763288 828397243 811170522 932267424 53290059 959509089 417040413 817863169 129431499 801786100 627499462 739907708 886558730 887187393 21859472 124171575 935122949 998841791 561051031 933160125 848669839 907232357 308412164 476718819 454015163 601901561 505927001 883057943 170033635 196200469 714665544 900454568 340443515 514793142 125684955 532347940 334341153 753569650 804365794 828034004 485895835 556172674 142920427 999485873 58719011 684716335 684074716 804626347 548128712 748328465 633581714 724659103 888833932 977683565 402050944 892470634 703824791 798482491 923850385 940706399 189363370 330899769 91148455 474831937 400183643 975416346 395357515 455874835 758381628 922414645 12600047 736372832 163825429 447010206 365580699 905412315 884537654 890769153 162657248 561790638 299956995 993112640 807376644 994475733 561450154 739124441 177689650 698108092 638721179 921668842 493012118 893530703 450786725 725259218 310055706 719250147 775304100 979967233 769677679 950279942 837541290 970431725 623371970 758330024 477787942 968610723 728093747 810593502 606789380 997388364 65535025 749410382 29927149 185494806 244188982 898251977 885714388 944969998 526463192 896297109 844576879 877292814 534198735 648040004 568989190 904985773 656805064 710057604 418093827 868100228 760201254 765527395 858122818 925590009 347681883 579206981 678299193 985149646 587612618 825100822 11488642 198686619 968382288 982866658 408126844 673093102 709416569 773979206 693094777 708442690 680235123 944905711 506627395 901044930 679861325 739682092 383713946 718934721 268447230 915615185 116584660 480539638 137348884 738344980 534332710 911236360 626232613 859511767 577343077 772299416 463012088 761209883 120275686 545295888 312681780 554165218 621206242 946405019 37074752 131744147 638357953 655736602 715603916 829024010 977540119 996984164 681496212 891001845 90190052 598895516 780478258 851892141 44856217 687202457 172804701 597964886 115367627 500909185 448332496 702729189 753648114 979657685 408188310 736934436 531435748 577655026 281463348 767629080 514462118 730651124 425314653 559787506 833223835 895752869 582582550 634702502 895550614 906061194 16426018 650789575 692122602 973805560 191213800 350261342 693159408 780054492 123165951 479632032 415349313 842610232 849002986 908010993 4068379 552235586 824585082 829481151 912866636 979418140 184544363 581117126 304427472 687822775 226608619 643166413 341835049 839966737 636077198 669908519 573052619 634245844 216821 822388676 669385657 814649253 981719999 981883286 292212445 475492754 697082093 793399664 949370069 976140243 796925922 984745917 51924700 391460109 481195252 929211499 77010357 808751125 201937777 314573787 676924028 940977237 882087351 927692298 646486744 887243132 129216596 935777734 943490747 987592548 704178374 944950256 29034877 912969556 315303354 430872092 746330163 922097659 825196348 944848305 78893593 542233453 763656866 884869981 222766257 588683316 851581792 904740733 118583299 341445848 386053166 786832013 221739315 823422444 313373415 768977086 231005659 923781588 633689687 843762502 985937595 995577172 554648529 697014724 485934555 789350872 628246362 995112466 781576742 902004262 59136212 376276820 788475450 977047233 616682164 940079883 317211264 672679395 28280256 914388824 535977411 711122199 714354273 862870261 540377811 957273774 933937224 944466993 25727339 712029378 409471739 926693595 503446836 807384721 748565682 827388478 772257413 955261507 577496409 878198803 391518508 760437552 686528398 716779714 433217011 943571539 881986964 907321478 968514822 980460948 552593670 786675747 765348504 993666211 396738981 509700233 894134680 998041204 940046030 946938919 769204360 824301942 524731763 930214724 567120931 762417416 347185335 751322954 717034058 737078213 743176318 825415060 93609242 799726982 405207066 914335936 356332200 625133093 358778209 469742375 816067320 873798621 55157532 133248474 131248600 615513292 369419012 918957239 274971171 642321281 620545545 645916038 536160750 746347359 614342883 685062167 416389038 621243903 368228923 570376404 329827743 365733776 898195547 908301629 83428000 600246674 745637443 752079205 770281894 918826614 497538967 683236049 632050692 727397547 924130171 958596047 4244651 483794204 203809538 888566966 121051631 370362879 396292844 587329839 159838788 268347802 311051984 869744283 108800037 689613251 313167127 491674595 755011551 869420367 423779345 499327124 1717779 967913333 508202592 922057239 902974371 911336519 70766675 905986322 912537194 982244442 240878190 695383824 25601064 205767105 868246743 919315671 382007366 762127734 3055215 402907841 733620396 906447256 980001472 988967548 290627171 599738403 324332471 798737551 691155474 769481947 526380767 641652293 155750227 825141564 293407191 670893594 853133383 897479118 439927997 723173562 425505319 695352095 928898046 992533967 637270479 878565576 483948274 816344728 119884329 495594455 4993690 634913668 145348922 426606696 173016743 511859355 593464042 998886563 734849229 829578921 361166748 482252543 246751122 809778498 796679064 963828070 144567507 701573714 558261268 593034830 691170680 964632677 525167118 860030000 722967026 746390426 467309831 844919425 393659149 570861866 409322242 638980751 258676127 647271061 860668870 931171789 233189411 973851963 614320882 926272459 749043012 958294400 951627880 966355965 133421310 748293727 9685437 173830623 221559549 673588533 999527493 999986421 370795252 836848581 274213653 666021575 868460024 879238933 619001616 821589252 618503116 756657404 649368867 940607090 805811997 808326269 643320805 677915757 927440382 973954141 117879307 559316413 970611703 995729732 692195565 972661685 347584899 531042052 500589846 844808751 851373742 896634204 827972277 905912304 260288245 338688140 414962964 609185354 542157978 903943813 259057729 606270640 938623129 955888406 565095148 766896849 266891423 761083640 655914484 992196431 326317059 418004613 439386453 977167878 77308506 948767620 663811510 870568615 141857202 969867971 383320448 876276329 34427562 835047425 494554338 582029177 200508828 902961549 601839884 986878711 243107811 808816268 950966344 997543441 743961735 813094412 831836152 969313758 552337256 911866440 229644867 977424523 729982047 830339365 379092798 602864627 54717596 162954034 689381866 770415848 651215853 662788266 488741752 621406979 563633047 931406578 808733661 973809134 558144623 967364869 70394240 898862551 115620675 579029537 210788412 721780717 747113681 977117137 328785729 478185453 155797307 557334147 871512764 984853346 289044810 928449550 858946932 938839674 715865137 784809271 47386870 817945185 138724420 393803306 926864819 991144265 621150925 714373968 416362566 478172132 286021466 992095210 745769384 840152690 179455426 879092167 695195594 699745249 934401385 961988515 261080052 841072769 651147442 742079932 740581173 883393353 387752658 475241991 398961727 798885474 687654875 914314225 741617484 991705120 479034097 986739458 878633032 951859053 124170859 777921371 914542035 956781531 274446246 338238100 219123613 977464777 985168050 987264795 466625672 800313229 808260384 837354495 747089237 856137953 929242203 946728943 269144029 923050507 274221342 987797979 901407078 908892509 828950083 943013207 881822170 989327915 27933350 676805243 434647386 656924251 711943683 831234485 692718462 821221497 326397952 696496016 375534999 634232895 213570646 394741794 862068480 974653927 643834914 850142062 57011598 812001682 687383868 857062635 38836668 514494534 143136677 796488506 922717174 932502612 980794882 996139687 654846092 867960400 567344219 635468723 752852670 807294169 602356913 880805253 889398391 968852759 165734942 562030768 933321170 997437572 935830115 968271598 459227559 587907284 703212927 830334613 851847948 992023514 557015326 841285647 685522853 929485039 921855916 999710097 600043838 914764124 910480631 934494264 877707947 878893355 858875307 995024346 738674893 820088244 889288659 952748379 960873884 987790274 935046682 939515898 253176377 801462000 882370615 928938920 419075896 597159509 101888911 185195820 77167613 547055851 794817800 898373964 238653816 784806634 331629101 870825067 596819330 825449376 905260522 934771340 854682254 948577010 412111538 776187906 731455364 988057173 282289334 644630106 816510996 845954506 404588168 851709190 548154962 816066871 793863443 893286334 835209164 926286934 976005268 990940380 882717260 928360643 535038282 841256252 242681487 717611262 316225584 988474919 419321005 800997747 419702430 658980571 181371083 351510505 981133282 982493780 492450425 784846442 20858893 548452364 382907049 675299997 762074083 911039119 648518380 714490186 715987438 744477028 417129365 674333930 769742445 860244303 440110032 675633039 240188197 298021791 914796733 992916365 978312061 985997323 752646572 918929733 638751299 805333633 720585933 904920485 314959970 364422742 92394757 128222807 567447688 851212044 865521372 892230896 566134296 635797637 53383114 174349950 798971877 874326158 233928237 246975670 294235240 746893936 127463160 465942538 631116543 639523930 368783278 504952437 945210482 992024279 517076215 596771483 7556771 589353813 874078004 881171880 248773775 907040270 835282335 865462751 963897063 987803523 579088466 687119072 308796625 997047631 100975956 436041424 899482486 900341481 183210820 227288147 426037485 831806756 632154977 710677263 297597700 640415175 360075752 921751807 947305816 997711687 433813733 888269705 981391088 988377904 107294621 676050756 917440931 983616642 812348830 813531755 839355232 866049105 177147809 206814261 913933264 933430498 474463861 737228037 251356435 915027009 962764046 971743780 549864536 678197187 266299283 992681584 12067966 600870977 521955390 914827085 445593091 764621852 324486234 624875287 810065301 857255449 582206576 913558599 868462036 873128938 334843784 395864668 162731915 442681027 534524228 705755193 682523125 975044828 485840058 818200377 799520137 865931209 943399542 962905012 526765676 539531074 461727235 848051332 708993097 937706110 554376006 758718206 411988439 465613554 38051751 117313592 190118040 948758183 17646089 300247360 640262798 682039532 103126142 532610275 209969153 470474964 706581205 768201953 7222203 737419509 121805717 724258715 30965664 817582516 852028808 960619760 237117290 239417922 972760144 988406928 624900848 959246316 219374125 876986601 269810221 870938374 310893724 352448765 239651284 864008465 399691163 828861753 435701368 603160078 999651124 999731393 173149023 718585413 137947343 914107095 20179096 469596422 886548113 908261784 121518355 231373101 768235560 873702023 244920553 960738594 473163908 525189178 842410051 982414210 298750493 549179799 380916254 780631033 875378428 917657800 528238457 676812329 464701672 906689053 151501669 823859938 871102022 953813504 343711270 479358947 43405784 789787010 757877396 944834651 327382156 453007994 626395034 978547375 103913673 283638148 983638473 987831666 454315083 580319861 659598947 724459403 1455559 172653590 349101210 422511665 281504198 746085597 580820091 779781998 416307150 620824266 573687407 992265932 843828122 893553098 303536582 852987504 575002445 932073126 840630952 929252816 35766070 448559213 56330861 913605649 321529390 339344272 323863073 597287960 831439352 950771536 963899433 967488773 849007210 969011850 696637895 980533666 568449538 937929751 666646454 712483081 777917015 795086168 775177200 939527869 931814992 952491831 286921484 990298509 482276051 711715373 45832578 108177733 887425425 894496075 249318863 561113440 13850327 577911914 564417577 899607152 914071594 949481639 731967461 757166936 433916126 731029064 753279559 761730455 945783263 994467621 695653077 695866356 247286136 656266277 783956017 845941328 756295770 977720463 795229597 851452242 98307356 658604161 85620563 193740552 479127213 838842983 928011192 992344096 19013497 527500995 596792864 959117089 536632648 933289293 246883379 835948131 638420507 909405376 444857007 737146232 591682890 863413731 242567596 649895398 303917069 419453616 681143603 709976795 434957609 454609393 788743531 897650449 638799909 872107195 927328804 938600318 715834449 733876655 77283402 142762622 776161545 875910246 325607087 931438577 813308657 991969850 570573446 660737097 95518383 623164248 278914047 845711311 263699704 675401837 767555433 919493980 539545598 781574184 538850276 768933952 11926514 619409763 617313572 717911825 654648100 858411696 136172188 567364148 907821389 983424003 422723645 765609143 751550301 870734869 484174536 542147272 887813883 941239808 974169212 982464402 996891672 997174437 813753887 975918663 154404147 930687554 210707882 849302738 185777958 355671985 113866277 931964138 778969119 829586061 789153858 811505447 873163164 947109036 824276056 875475011 246835535 580870340 776868252 793178308 747973811 886971007 301076092 859427016 363026724 498313850 332550173 508874894 775739054 846050265 582053333 621074354 687868827 814017065 608826041 913783310 905035594 951297062 538266446 675322226 973636763 984400374 213264569 833918116 28569961 928244093 961785413 975469369 434745083 569142130 980198447 999825307 242936785 917023028 684043725 988221479 146521654 897651383 307858191 460471195 148892167 382649159 444210770 494417018 642974217 772038863 694754999 928129732 123926738 270105263 793327772 966559957 752156923 998145808 419202384 523899381 373297144 862247121 581329621 991636696 859883111 875780114 584508279 941951091 709083223 766176453 656485758 682346363 284641238 477493546 115576970 642908532 960585066 987869520 819500335 854737664 188729460 793928136 131211039 316917161 839989752 888465945 966875088 983237828 714087283 757627983 525852166 769057822 319634380 351909418 216879724 238679443 628610033 823656579 313921124 344909150 917266830 986150270 930746761 976392831 197187523 474991588 350837751 946966659 328889894 937172022 746747942 749018299 342409854 738065711 398969538 433329464 816029267 967087353 718125862 937179968 21288304 351053218 815563240 930609388 462274807 624755606 794323874 862240887 213726856 943660945 996954619 998495615 39483037 158105371 330274868 709639126 232926577 550945279 317606874 631539843 133806272 412901582 219790723 759384466 660074218 841528917 672928761 990730548 681354551 752785675 950012174 950896729 710139955 875370194 978285495 981216138 52976068 298939310 426334548 700442473 422772447 937064105 414797988 572695196 437327859 522896774 46122480 675235841 276527786 366076359 351875658 957130077 336807952 700441639 314108859 861761432 928654203 973449552 518711758 895515772 925798147 925842397 99649567 950230025 565116594 850852596 416120780 889853660 122828839 946411550 667662733 769369982 520209486 910329502 681723720 733558234 204735233 706084371 978666964 996441347 136516534 276112278 501634280 941388550 905251128 992402768 802410082 971765827 403380809 881366390 623986759 831489414 329131780 584985104 375053553 507009655 208469702 866481132 399563863 885354167 633235374 699872979 638492836 651481870 86833466 277246089 771752135 950340881 222754742 835029569 791915695 829833787 929236631 937946349 932688536 975953194 502362307 725700738 638267488 836992777 270352713 874987821 624506906 833679969 49276708 517778506 775926180 828861514 982576219 999228593 522433937 757235928 810823465 950725716 551131813 853635957 11640998 328756311 153414304 708472207 731026556 909442960 708283067 758971154 220769566 520130660 149250688 650241840 356316720 886848377 963815845 986397831 118453064 790564923 403478900 803209443 297928183 745223086 14799294 714839955 492910865 810518705 935365192 998656143 117830779 338805476 240282590 751771163 147679445 747219733 830414719 836775478 846049904 925884701 593792684 943087146 973886335 997319569 370034078 789234687 760589182 901289365 503363680 826572970 559606690 886823850 525542137 659386976 399222296 818391658 963664899 966748247 155342458 210958463 446758905 742579024 450924219 559857607 230857289 679003735 719492469 824046145 629934473 999038704 802923166 854833081 759255681 836980719 582510496 621251708 592916360 756229605 445268417 999779971 947510607 998093995 198528024 435265627 51498953 956765012 270029371 316233882 897743976 970411344 786913348 970025873 245754955 388597395 365718237 786929217 685654080 696364782 937399789 940719141 642740452 957120917 399655883 773992082 661762977 679377766 341975961 665710011 961211722 968758844 648213223 838594203 555463310 771282726 823464827 872966462 665025638 842864716 468562029 824026942 784796690 960301088 934143460 958013961 77096005 475137179 566379992 580346037 672009395 962179157 285502939 560553215 134892037 780192961 621841978 740867137 417335234 757338985 785364094 911235895 488055003 622077467 923880070 981583147 651356129 730339363 697739714 866993275 404866987 446551925 636529554 695868345 623981766 979284995 118695210 937252949 14995922 761114443 887832755 907824128 593886478 866045323 216487533 327984065 830038312 964745091 668644524 805477777 276874095 428213334 56932793 470980481 746273130 979135203 527705830 980506503 624423200 829080567 596795473 725180545 932283307 999991645 12606207 616501482 963812316 974669098 821123479 877203973 54880231 108227892 523439966 761964727 33741131 233871712 761783153 862224552 245025996 859579332 377702552 507362026 227848745 338979823 57876996 114317267 276753277 614737759 585346995 761417509 214783414 881473931 938234904 966952051 770299568 944997435 90650176 383106036 78045247 611867458 960738457 999210929 767373816 800356922 399605512 775111265 675000161 844697485 59361965 202805499 420244883 482288306 290926023 900006146 740699023 741172387 439225321 803123231 343368092 770009556 942286814 988299689 154433332 433644818 520723035 774204516 205130848 233308629 716377449 928010301 249703292 535952537 5430458 45743651 45485479 917644167 443582210 699012892 911945049 950166194 85955974 733400355 329807921 385955875 650387370 697439811 787471063 843148666 204656415 651256185 312194873 487710287 424730072 949450548 231846538 910423291 910736662 914932470 356569937 661000894 923682796 984652944 333338413 769150946 456021836 750697999 108688724 432807141 948739275 957743502 666165695 677473991 986063764 995113687 700646202 814075616 54306737 535955402 408557697 820172413 352739761 933527304 782897556 952554193 312147850 702702641 36386285 882766838 242447570 320253596 848933181 939526091 604870734 953999725 451135682 928541428 68052291 614426951 393000770 859252374 292929266 752938516 872584486 880126021 700962579 777384207 675252814 879135518 981956121 987994224 946245272 974160883 348896062 418631544 697233407 740540717 190826137 436442663 916375965 979780816 780969478 856637892 419565555 961808611 58897890 270181030 579458798 939864379 277808191 641036551 877261564 983950935 429695432 755424394 63627894 126699608 670316230 878534689 94597890 416267861 922672039 997228958 258423347 936862778 382109821 393923568 699378238 705064307 371818611 841210489 631510777 837255885 389624164 489599713 137465854 665137670 243673294 978240256 307235040 904193397 344662703 577564955 514248574 934905282 696272286 955014076 927797641 933407346 135410772 773119831 314364690 566248543 79665496 633845698 590906358 946605693 547303020 598324507 532287371 566370165 25019600 618302675 361615245 517673586 763104705 786258064 587445582 957248225 857246275 884366189 30264075 870120580 817944493 953655627 266880507 802530485 41336588 145175355 326265353 907414831 619741784 737145685 137218570 786603815 554920935 649634678 274043422 970763405 777079069 934911411 469289048 634754616 594712118 942154837 985608308 988274114 60215866 708134124 20094382 500140202 795271598 940662530 368995696 581485327 406768248 810008029 940898187 971084246 836555205 999341208 293735250 543542241 470042928 721681599 882511723 938836232 997127669 998307151 97280564 882270129 578406920 982652642 376376156 617000787 45807481 831366102 291943447 791299048 916772607 991265247 896348511 912917306 189432716 913328640 515689390 683667663 253984548 557653328 422807666 780896881 488030539 572801956 732784302 897384649 743659338 806026444 591512522 989862048 809973415 879485975 245448417 273391765 617765558 782579480 93920556 765390201 784493553 995559286 735256619 832990302 924020697 960003602 115198001 985902158 751402205 829351324 750587988 977802553 485073288 587227686 161079869 406731459 66644656 120595654 763822327 814344686 483815329 897305123 686187763 704536338 591365694 997940794 527009749 573694242 635294885 684702480 870370308 987128439 243879639 482512819 923962893 991945895 731939813 792603382 680762366 853473772 607291928 735552183 929506477 988594523 533227916 764606185 144283568 603348186 504456177 639967903 145632035 659385983 764564969 784263301 350001161 845408578 166986099 881175650 528158909 746531738 583161841 920677223 45931554 254340525 565807616 665106717 842147665 860734166 229455141 836066511 439096726 698489801 384660548 656772802 92166809 145611798 599093666 694001897 199282334 641234538 539599257 609445559 577751863 847281910 233864750 927650899 295851985 421509191 369214366 988456634 307134827 501542958 379275040 436043220 142942822 410260004 707347303 983475348 390466714 689122934 713146464 989336480 736215839 809679212 781307673 792486175 283376591 537594800 973449409 995598513 91265803 373880274 873935007 904972564 405547401 978904166 991845583 996455792 272881123 658768643 916608297 976112026 731961230 864831818 255590755 674050320 995317198 998725758 886986040 899429026 527492924 595320948 106993146 611554673 971272791 984505772 192794467 694302802 231000360 841622045 8380991 950401348 630780044 732308851 34699199 494217070 671081614 791674682 747378208 827086875 820216666 833066605 98929653 715040303 519030632 880587394 509913254 620743269 274682211 739834786 949141872 965218760 992246376 999700142 473924448 891618736 695264840 857947329 638747050 660014388 909409686 910493275 965615458 977004316 338446028 469914153 165408633 688847857 43391474 72602243 48449204 160114789 758628618 853775961 93210027 584581067 303173608 739690149 269088626 884956081 239048318 896439559 337375141 412523249 10625884 443358087 76876215 865909387 68806537 747038363 595195020 629818812 393104356 485904721 759130933 859525357 881041481 911411331 649440447 746593624 192350379 224179449 204886285 872112204 11704578 39715160 355243253 382277075 107937495 139607748 865863256 935989344 736398845 992532221 706387685 799819236 751985485 909589162 805579450 921830170 482676033 657907276 783217312 979182150 377729484 615035396 574316857 823212818 456540493 794332721 739467447 884714674 433113569 674178716 368027198 905466020 332529252 656225860 697353729 715678084 861308902 904878496 221347909 476413760 611184354 845780667 743577479 893733434 744696483 782810491 189468798 463941741 749485181 977963198 234069956 996065317 309749519 312267827 608090351 717570639 927743331 936559598 71226785 120007947 908379922 920951102 314449060 663156674 353365826 919001149 884858079 940389159 682457254 767798251 777842572 909853515 410347973 899330352 256927146 267816908 780516789 794417771 265607713 840453291 967980712 994892966 151304613 958894396 929935936 984113245 291231538 836050001 882859680 966268002 497081572 803625734 158224986 489016484 865039529 979804201 577902623 781473211 253731482 645415119 844423074 885736238 864349566 879206070 595656965 710882031 888335962 990168438 634603889 906175214 411034011 789868987 912446328 936934616 804040795 958149659 539757916 689779117 764638125 872335939 218966485 668098813 116753171 648878458 547249359 761498862 270737553 771866403 705917704 797810209 39289926 493060114 217931429 483997548 352041976 607631772 781732320 887719100 15536208 734668444 25578283 282644090 986275307 993464314 3583666 36198492 238682708 535666883 638742002 686664405 421835783 577807102 725669170 919573276 52846840 683638042 733410956 994386770 778055945 827114729 402461342 519495962 177655755 766076693 507484387 582127349 319295262 433502552 362681496 603211721 621072761 833862858 761474574 987837650 217442338 938440434 397928033 684262250 627986188 875644302 858073842 861704874 399133555 734624062 104277664 477737953 909555621 994263428 717911088 919464771 236658727 474641921 359292657 938199878 657126106 978573787 16718651 738461762 624696042 826408765 829329415 946060107 280028402 950614165 880814619 969077818 581060764 922554084 723999744 778932912 66266885 764200268 646952343 668297530 978052028 985869234 223138816 684563559 691821837 893790517 50824733 945429767 959547202 984666965 697544925 970500424 426597010 788564067 656830177 835365363 313209387 837108581 802681334 948182380 792883500 956774508 852763931 920184009 766973023 810458462 129503445 163728161 539913391 789004079 820690409 992050379 942555922 950768860 183517542 907162000 658783126 877201392 431064457 882695325 549339928 809295401 982313261 983216167 261107620 452331549 581787726 617235208 90354313 484663087 487834322 948777754 227796280 705620460 435265127 553706731 456053278 642938175 351487786 423825990 438918696 490320473 699013846 915214119 242238435 368769969 478867291 765764663 554558018 567133173 931614106 989372866 801559057 978618012 28236331 817791779 4970495 636169797 156138277 767229777 867046826 993416756 522994622 548144897 758161813 855175168 298532049 930630412 164114525 547494556 345655206 799488377 218777117 394436921 159801824 317299975 244344403 396111347 469473269 827678657 434401029 991417569 38788553 210618677 178767045 273368859 456649480 569982104 717096314 826625432 785834309 994240388 403469488 539135847 668288743 829076609 444519458 483218709 4634266 132116164 5901587 531737715 442635683 961631385 311124302 703172043 726112666 944203397 136968819 921371201 927856851 940138588 699165857 876011216 304175298 946428553 463807678 602955457 742334932 825405433 685954813 744664255 760664820 959479758 761153235 927675017 650608405 677186311 656450382 909688530 466237081 983151101 726983933 946382209 693117454 823079580 701062226 807549529 453302998 835776285 261212110 312889573 469455203 907723055 747031283 913931495 230670078 778554259 605189820 836393114 550081007 719909862 47179511 416373752 296594785 808891550 280045376 852151919 782002134 998180197 218455917 982546473 747060497 822698801 166937180 575253318 622684043 686173757 832156153 941487069 936008074 937560280 60759567 540451782 429705284 641823730 704510311 952839781 149130352 168590077 99722016 109256149 909002911 998616108 526460630 574345571 611281989 969795594 355035195 855299981 443367970 838041677 735452325 785620041 238447295 427043479 156944895 283013289 509969074 850294956 626040913 758750313 709936624 859075631 429547885 596709640 34029074 849847430 236382693 633005492 695475922 911056692 745309872 788222552 203919810 724035166 832350631 957061140 660794980 887227734 953383644 991105629 184344540 472270704 393020469 721304788 188014643 402994842 219323315 806536673 425683715 774839284 114619944 599275638 91400436 417559295 204853154 906286820 952483603 956216341 567885197 603991440 80770123 726315659 230279378 487191068 198429127 369836303 158560559 267993496 782344048 988162882 859372100 885106235 313792924 948656746 259804830 929572103 608382606 735499993 494587435 521616340 276885922 647547578 489701782 598901285 87662137 353322707 834337095 991769399 534038558 606433358 499385411 758525105 131221686 209075428 114782623 784907438 795249599 942234690 940874391 944055932 647637577 961933752 454022663 569273198 127579649 576564163 987966897 997361800 599404162 694382522 956947702 968432471 535133970 969695274 234411818 969489017 526425344 824072202 488193282 727502618 290141196 453019223 904945462 980627236 168012196 927911173 776612644 874753942 181410132 335411668 329188419 346580597 561756153 649621009 887213052 893974871 470248495 934975480 981865371 991775340 333298722 877209706 939715412 940645524 399080200 573488829 327043950 440969506 641454607 885714886 929891937 981497184 872998298 883504237 831093397 837439867 666929236 692246579 434179954 453611109 187246857 967169058 420280810 659225894 937133284 940771361 585799254 609326227 943813800 946228299 618925668 650751758 6056671 845171212 711155534 840417368 484172060 964109805 16379151 742464571 587201917 692365892 722816529 958454225 244223386 416143288 542016979 850438597 669083931 888919341 221526031 223070133 603662625 688270414 563810908 607389474 607679585 924814098 666779523 778700404 613405728 800164125 142999939 278762865 692952053 721165675 43391061 89152157 710502010 962841645 190094016 644325634 323913913 882855728 36096134 914833293 531593067 776131543 92405243 709974587 455852047 581827971 714772603 810807020 329970550 821419587 155538835 992821071 111729140 843127886 438913220 798576369 771887703 774167261 175717449 292563132 734604626 924851611 16362322 151435510 763944927 966934009 682755825 942722493 792631634 986598529 667932005 772868003 674464030 815720409 105951639 562430977 259238295 687602064 593945792 813544143 252744411 805132082 130057556 883070985 806454630 871494168 446511936 512722318 858592063 999331752 989551349 992128202 439808025 454308851 989887851 999866202 741913700 959830632 285829237 592528023 452943769 954830276 366498505 738420521 535667386 677441115 927926543 958755410 24272201 749332179 295779958 709818855 162557895 453931472 514215662 644656299 782245646 820755354 324572600 540549706 158383616 888387363 959903265 962994735 896653840 957779983 304526654 501497187 270691631 744146863 574919164 968947219 396249495 882992933 358269478 733015689 280227654 474764057 713814570 863559351 954950741 988196481 93732136 633817210 640605772 694024879 2279985 195563746 790837242 998143975 595302906 884767990 161119646 296713325 930984780 943764770 212676175 829620341 431116519 889076432 346285931 809077799 5793258 749805302 386817202 855891005 225017872 278716079 790412164 913253725 631070071 979911830 984055414 989872550 681904823 946949832 617549474 943224271 732739461 845133205 242464705 472181348 852919834 961018202 311320551 550178269 633953803 732453532 266209532 620443385 986365231 987929136 138129756 587690535 284688115 558740866 898490512 931024973 923908095 970224310 499327992 829766580 810313642 904083712 347295390 980223933 425531463 814563243 215947848 879249269 707582571 715244336 168444393 837005990 517423438 852529560 31959232 959792127 200234311 517972506 915845866 953389981 853466243 881178616 335050558 458357967 484030904 778940282 394986851 610547678 898278474 909230198 375980050 827580318 840299356 882542561 117625138 146265867 992439379 993829980 365520513 736016809 33519354 258077491 42545036 377819012 414436484 540631972 447494574 720342455 595240292 666680293 806116204 985936303 684022931 919392120 963048972 983231947 230581613 554570711 95181445 581481856 920243588 951455663 240666825 590563882 171654040 615416665 845103397 902467563 617115030 836378726 15828744 948115532 350611577 430207167 917502615 944277468 342240960 868753799 288733983 673612806 658304717 853858459 252753215 529712669 968971642 980034462 573200482 682757758 219260843 465396743 37823180 466434972 973178087 995311250 234974552 755633449 675903055 973247319 644349542 740958373 78771219 421372190 876116641 993473388 878075404 943734896 677566262 767252620 587139753 897442826 438772095 853648627 128524037 653631169 435836182 609024361 186204703 919836086 871892532 941397047 19535428 611216795 174539541 984977027 787870778 964676506 879194828 900152742 398312744 626252107 359340366 384644445 589290700 961750712 439642582 946446135 639691171 757102258 129448127 839534286 149514825 411224298 42423329 980133487 190899960 677982971 829183847 869440230 956947886 968251664 881916863 964574668 878067906 887712658 752060073 964653688 728345242 731938861 601395564 857955863 141594055 349543634 42168470 650311646 364373260 378688636 76805682 581251051 193194417 215333538 876744271 977111232 809143005 973672542 655576203 832760276 322520887 387590451 619157987 650367765 391183431 819694963 882576438 968664035 528326704 753485698 648047379 996931967 975170984 983807683 910707764 962354517 540333585 613920627 596416455 927710188 313653919 667203159 546601921 798374039 114273462 893642936 550807705 624258639 339605983 453774209 890769074 894501734 562749912 900976161 862915085 899515063 560821244 687943961 280086895 503924427 616351394 926452617 266955657 669154505 999691313 999692001 491063302 965461435 251101433 506200663 794238167 809769333 833611981 939848387 675537233 938974765 204970157 617587570 153287527 242951705 265089732 388989123 592510880 652667733 289528031 704933364 114656980 430035949 252426521 384470630 733193289 911619474 304554448 344447209 158268233 993287064 70183854 639480260 502923748 605206512 707396768 839860309 618424225 682792043 326758418 855532174 404596411 853845646 316864271 420979379 74544082 148457555 215728261 223680470 726413732 813030185 567237340 798242126 221297436 253964583 877619048 968946391 996809251 998283746 880794435 906120383 444534438 556223559 955496260 975029710 50553854 597281345 915540908 923052700 311357257 755169340 358395147 775395079 244774347 555597826 674360317 980138786 276199372 499372031 264643196 303674667 637010420 743043295 953126940 970291914 615572804 775769125 963050478 993055546 820561720 823147259 713737780 724216356 756190367 800270410 390194186 871190623 666017963 870546996 473271851 914038554 746791245 960823529 789207476 978154018 920857771 945643997 176299010 614240434 345114395 833997492 192002170 559856867 286239418 867416023 337868984 764513493 432274177 478209769 523988640 760623638 127660022 821190825 807211558 942398564 915806368 987102500 326479141 869905759 598232322 739509282 255012713 805131894 468828100 922654633 578383612 578760872 392794258 812653675 587485248 845650388 553193624 734075519 202970644 258207824 950992867 956074191 699507501 724800238 307281486 990693207 676210523 849144840 626642347 836475339 152289058 560407360 903358202 933441254 272788322 495540274 4010592 690337051 26030614 913966303 787230351 841119418 663314229 911749518 239279180 832585487 927389403 962395552 494314782 616501627 34814495 695710608 213984273 402149863 362336220 649041111 206255523 899239684 880197144 906211546 498570719 859056624 461149901 960745439 785214516 991425172 147296292 466565664 526931705 831125451 324424602 645845276 242516888 547903801 515642057 565370328 428538912 463649331 341628600 985372463 227853888 960536537 872643243 984420963 243417643 672644169 701670948 859342784 969707516 997266019 92810129 251205683 233200590 595452854 294604641 737104131 175459724 290440757 259442088 719341014 427526354 964744951 423027731 580912970 317583814 425796298 657970910 915400837 734218306 880922405 878697961 933443026 701594693 824126956 178308539 901914677 230177682 731185178 865688859 892818931 926768769 994992885 702173472 914310419 38893538 362375593 671554899 991426926 631565162 700596174 376358857 424503526 40303514 529874030 158528678 948182562 607950141 933288141 1677367 70981573 351499364 549161150 711501280 796653651 653214628 663763127 353452530 832465221 574016493 835831045 191435125 229673314 422393782 996601902 282345356 427427526 171254508 415160806 151881102 518965984 869522575 934551551 72215665 547636732 144356929 526065799 289740898 586982951 617165342 756614751 154945259 273359755 31353357 302473001 652738196 834332689 956663237 989458968 307337443 938048937 708284345 710114172 338838748 615252920 424496284 963479234 453338955 663564920 571872097 804583462 794709152 827032851 686675383 968726703 517243346 696287301 490665723 703804870 293710318 334809983 618831802 766644813 966615792 992629742 993188189 996783291 933202628 983961935 316113387 466959508 625592905 771364861 939349817 977902193 635098678 664857563 980604091 987482793 112216547 328478633 878454783 951359873 497539107 938748168 808778335 811741457 328952849 512402594 414485396 886943995 897259973 971113758 317497931 476967037 403351126 657492429 768323048 914820176 19391508 569489896 594462852 746065512 456157918 963148708 508965211 563885729 484368152 770655706 199575753 932511179 776600928 910724173 309883305 689807938 539650451 590516796 978901153 983631904 507712371 605651562 858296342 898032883 531450290 687723916 466837068 580831832 217739815 301955327 392583556 464923810 80996878 351331005 15538374 283243935 321493360 705939251 561640059 716322500 375366011 788230965 478487401 510175051 8001842 895874235 209478801 988178117 122660012 669412283 770829676 792602587 253841222 717837083 415728578 821642717 107041546 568869519 161475905 327673607 411336479 730911349 806183011 963747997 613919628 693278272 926654235 965762197 961329836 976160429 565403433 690037486 915858352 950020362 409345435 965317437 362498519 518853223 932761309 942004092 422692177 598960019 880303628 951222390 18218877 600250984 27959361 902274127 736058824 930038592 200684674 489248604 861567419 865706377 533421628 979728226 611461070 953617772 247988749 321930730 355335612 472253434 43014145 554383891 229730986 507428788 842720426 955986561 515454225 620855096 63070605 854365947 261234426 345427573 907083312 992889917 749575967 995738809 241863721 355977486 666915089 845441779 62876279 212746240 832581094 873416122 367740302 417765779 602523329 917360349 588948215 908427957 531508483 568941641 706276881 757852732 757903798 970919808 329178924 874436781 751217794 935466952 108848258 783166806 279351823 977417977 96314388 106132558 577334173 946993306 992880131 998451911 136547943 186309190 63287059 177587200 919875065 996246215 239943767 668202636 12543339 579577438 189647097 616437169 740289423 764875333 667695091 709850862 221303854 584957360 864158809 954922165 45062919 650364054 17939195 685589225 590286769 901866231 102568682 399848833 633810325 915648094 119892356 958666481 678850031 773994217 735915955 820759317 578180445 921388436 505064427 891303213 625446397 749524328 679159766 687158558 904222896 952134977 345995670 679735826 216038045 615117858 291448858 828085861 719077895 985639372 946651310 996353293 269053249 703190182 352207850 628934568 146328452 291595689 524490274 557494700 673325619 980576582 871078076 873779226 291390642 616527967 489011525 620757759 738977797 906077052 486066358 909159807 11004927 832002568 888528439 888640901 684182432 771251531 478512661 798115148 313562212 942311298 151076518 893890702 356795142 684392956 408597516 994211003 395015567 640794218 11797902 940923397 871780926 945249841 617842243 731691889 216321101 386215315 395234168 844584908 868343662 893820730 270323444 328723153 155169922 181418142 792332554 970859863 251138569 638056219 349011281 668664339 645259879 906770364 671037254 927720099 967708316 997697431 490893642 989813352 140351605 418512383 890532162 972027632 43873190 477324803 308684637 900255460 391436471 628344013 903356888 931446959 49671706 658987354 897106304 913393372 583463020 835553434 206765835 690288885 668203899 751797364 931432142 954595766 291295708 783831158 262140337 805769345 406127208 927663767 808672681 971875329 447300197 971418543 929128481 944340390 693365688 726847961 567666180 830574794 340177916 381094473 101180005 967500366 331879519 683097937 667519402 762571752 323118156 533695938 38060711 192021325 303028081 416327248 352998164 971793946 524973459 850633143 951383707 952535455 584835611 811372806 60166976 600976036 579430062 782916093 473218323 535890509 540881803 981552247 382819568 754267365 593617909 873257188 325035225 793488465 341780315 948758185 749296225 904036574 403561657 763127666 263807079 459764108 363425632 865650311 396273010 936775157 988024631 994449974 945701816 952772951 645425309 947353767 309136072 472558051 694046325 890295275 166084557 599259778 857594771 875092169 607620788 751491944 409200866 450512420 323904328 390303414 682841220 864595143 921123794 992312670 789007491 824343827 690012221 762372705 408068847 849887504 662562176 986674173 30185237 603811849 160452638 324881257 826950421 832933076 42149155 628484143 28943713 275710246 581350475 956813724 472899977 610140974 928558494 963068390 436606820 694123740 257899244 319052180 805301642 835699636 93498207 699110596 614248850 846684125 593741 492792374 195431907 890701820 50306154 293876326 186435115 668178366 485940798 659816710 477432919 860105596 209776571 364412516 869453261 983196664 498045542 889467480 440527426 696158711 749269107 998932170 983013465 994756831 906725940 916502258 262940720 803732678 429010129 580559831 933470048 937460810 795039600 842230402 30598229 633873255 70214400 311923189 873197589 963044165 619517221 643518994 561261691 912636918 741907429 780350002 406128609 694591993 434173533 577939086 187907923 542310443 947498584 962974069 65392 761089727 439848695 754290234 675141572 909980874 242012500 783421836 208063275 266673483 952782883 955042192 93468206 361406996 309037769 366539136 200308627 402599280 646081863 889376093 239248847 694346807 775086914 888484831 133434645 442868598 638006608 779085276 347502967 884337361 781539025 940120356 376770335 504109978 824796475 878606990 309469075 806897650 81188483 511779250 286371125 448181722 981230622 998873283 327936198 581610121 574970675 652413594 7134535 935580635 696255424 832090445 47917793 55112529 713037590 761836935 645082567 718464776 300578123 466577404 295445024 329002882 818497891 927054874 187594374 392511957 987127222 997562228 362077387 816532684 144232496 307275706 246670066 409119269 297324037 578028219 207879933 416934422 835325158 873258386 75243316 413976038 715717229 866509605 368597876 988928435 357598771 519859070 663046439 996699811 350119963 737169144 259283759 479161764 331805493 713737323 598048457 686946769 434992744 549784710 113847613 908555994 971542490 984511797 868130420 934804692 977207097 994137650 36196457 508263576 243987913 586479738 580227173 846800135 905992350 961162220 416185138 803349615 576724306 788600620 933940966 951191229 683127845 763556849 595519782 887628339 894080554 940341639 765770599 902389208 947042525 992240481 280544788 325197954 796357194 830982945 670857333 691987198 567923042 940990846 983495864 989004812 537895798 541292447 787697252 832729594 185292462 889462478 858891400 871075811 484211100 604522714 749125588 953080944 202810001 374337037 937522734 989782649 952627656 958761757 214911063 420344961 694420101 913006186 616501318 924593486 5067810 286553278 793262015 920937675 875109416 892024101 820039020 851354150 19725492 486589751 723675500 848262505 93011582 568869255 878895805 998155736 314779144 677528057 549154114 995077975 939660113 977880133 561152314 951958097 157564504 250702279 222787997 451867261 865433316 910323733 70146777 533846181 870476447 882438393 609909137 772855625 18073547 230948352 236573563 978012233 200566463 480921954 927302523 997010008 505952988 923347229 188257054 438023733 516527009 939552262 523876168 731044380 315587604 470890885 822343727 973585646 421824693 588858565 301194343 863178048 623542083 747821591 198182668 263396113 911243079 966779589 306370953 344682676 135205820 549070041 94388467 423652798 530502296 909103379 727710920 980789044 242717249 451600055 442007663 750379803 575081406 958639716 516142206 779211082 126057937 258160495 52440872 990967791 913564736 958588296 367253594 570214536 400140522 970465334 973595514 981084257 659279885 868009917 190560803 257333184 42200987 763924950 496023515 744630069 506587408 668870618 530394107 741996621 838452464 927366584 284511105 977419943 647812995 937248832 950268081 985621661 761905652 966937267 134930358 277088059 163020951 354910114 774671395 928478558 174322143 620546193 630446907 790924264 529101637 540239538 956619812 961403631 448286504 647991941 547248231 666232766 448764264 634275455 921689032 996979333 990084261 998789498 717726955 892468318 874958395 969938111 998286895 998955695 218426913 405493056 390089896 730441557 759699869 868198802 741147924 869615729 293091192 341696220 986971122 998159837 191958702 529601602 779221972 855005809 19127896 469392469 580609714 978543950 916115630 957266950 389516953 393580143 34560835 756644775 393506945 822169581 660460538 821252545 559779948 616987295 899997698 983288175 531399644 648828605 217896361 413648724 708302046 885502649 97969120 503299362 797260628 931053288 631752961 682679626 789102742 966483745 362364012 991075876 428938202 888995539 686157171 945289612 994342738 999375357 326349644 818116767 503183270 590762654 901899816 939980298 55235309 971713208 776153549 839984595 997585819 999429105 767600731 910319374 693243443 708270162 82260951 368221728 61951191 831089697 464701444 981347026 846735141 951000735 985439280 992192744 395081506 725360490 47189292 335236438 320496302 598784501 228874287 429587645 874674378 967492519 512014246 753694560 118155867 289690355 757024247 970980432 256594840 377177803 643698511 696310478 593178770 632292143 178890649 211784216 195112699 196565181 231522019 389934026 206696378 938922049 37309625 705288644 358717719 951916473 353787257 960502723 175691398 226415412 835253561 894530705 879403662 927843427 345304949 610008316 628590331 706346166 267749677 768490746 33310415 856087705 595807544 821160154 143741064 676705603 975727779 996578036 993999251 994645398 119215409 764522038 261419803 636258976 863085839 953610998 354505714 574389156 391056769 702082985 173453717 911092141 524669337 741475053 725118536 905694861 382758083 865345866 57938155 887427427 479126305 616907410 720673877 739121686 419432142 966324683 900944160 983338229 674943180 883359491 433395442 929052293 321559022 453796085 880228970 962472167 344247968 969852547 602373732 692965343 921743382 992971079 395128937 818464573 378124097 875710326 691193777 853491295 175631174 242779962 345115085 421238821 352375353 478958930 450521522 922557712 902500301 968492180 481637476 694028574 735302470 861032199 846178714 965445093 965118427 974897557 379002981 409408085 623357724 903598897 836710324 942055267 594954276 759638344 206859092 515982196 49399018 228588506 177086164 696003867 554619642 631457788 99830743 430155434 788942922 834746488 553034889 983490864 698829201 712448412 67024062 102751006 310538718 898464662 607430566 679682568 410349208 895230999 79901235 569115246 128628926 178163203 381449960 915454927 831837139 867589154 711153857 764534601 303484715 309434874 890421941 948098312 161898834 957278996 378088891 622011570 929770190 962261108 997433214 999401692 241908096 334054686 418279218 639762237 10195788 363939752 134246105 241075817 100361177 518677396 430646421 681884848 397418961 410381509 604245162 652826010 167061184 587955504 868326203 929039023 932033162 970797277 444023888 927098005 240569000 802312041 888974905 996780609 431701910 707670920 929409710 947255668 714185268 882873188 735904311 853977304 926646138 983014899 62319947 836792901 233276776 400736365 190731030 507993087 970811434 981742672 326589528 625205327 870007061 923146753 146969726 599641894 201328589 503173880 148204838 293298503 578420118 583617380 290573575 503369356 973960767 974396643 589153959 898881146 528732517 916768475 581443367 921799462 939970783 954008103 133545328 528347624 987237417 997779876 501967823 569998801 880228599 934165299 617285632 635261266 880869285 976026302 711625451 852079293 610006707 994812193 222474461 977590170 553154185 843082897 28843974 996308603 126982113 468450042 45934866 228659733 512464469 665275088 905766064 990484379 208803747 595886448 158411298 955236013 715942939 916527157 341630730 471198544 963916617 996419796 743408827 782457062 748126482 977316339 456269126 746542589 47667029 467044386 871498062 941610108 781034929 950007151 712942727 822166560 876586096 969860249 657395890 751736436 485067889 778341999 752090332 957739617 820349813 939762179 655263076 764150250 686242023 870140890 405714909 422271727 592523817 970958193 503008506 695124761 482059018 620208032 543987897 626556423 929550058 950654817 677248325 943587230 968300823 999627482 553824271 642157469 202755637 777327527 902754169 993405052 728672400 751928670 158222554 805254845 842535249 857503351 817100958 851887934 715459006 901323721 983158059 996720080 923983237 993141520 786403185 880692332 507355206 618788084 296091938 364655682 418021569 775358568 15830749 19273119 150429282 661730520 164294077 961703855 428509896 796176737 474896100 583461410 702159218 886894264 298750196 833983282 255627093 351345903 599628497 618210762 616271957 849894164 554198813 870155791 627498046 806772794 903720583 933545881 813826084 942799201 28007148 265565800 690006513 901270142 815158356 828839265 496817322 568358168 430471707 637631223 765411869 952822533 103186538 854561153 124370769 490155622 516930577 993964700 827500073 999824247 678544331 915083887 280173705 809623882 388765191 782141897 455378074 957459159 35461252 301638222 208890365 827205996 133033320 512169481 838728153 982377081 257586655 547169797 274331644 833555476 669952404 836942266 211816031 323681169 801798434 802372667 335581713 848201153 793499162 995280003 606565138 727834742 741249325 952294272 492139986 519335867 889360303 970737685 468965356 600736234 620473473 795858074 895306238 937127349 777486910 945579111 482062565 760549319 567192396 827195796 524466920 928401950 707650616 997876828 421814476 721840711 677546678 985277719 560049081 647531701 795271575 917631017 333816512 349469312 577948358 621410345 997749070 999569866 176889232 674080448 337643802 977237449 585212674 941294164 928005061 956768410 48522580 918224211 808932580 912491250 473222788 999920984 993207933 997649062 235331927 627582597 159304210 277853112 320301695 779748624 254922906 264826131 731763583 994050259 183307742 728206536 898778703 926128416 691449938 858068758 17110213 836023798 106309979 381788169 413741366 746583550 248486393 528173617 618575493 905141726 134053446 562271331 524390097 795482902 81496339 85425615 590542983 939975883 251543503 984335075 811554981 857114236 256311498 525427945 543431316 760405770 396523569 712715120 367218410 722745554 91581229 936712159 639757232 721285481 134656142 613001833 445762970 912855021 834855700 991314343 687837693 861565893 382950461 437025162 328852880 870666248 175367964 921965841 661996499 785361926 675054829 717804103 921967128 960615551 169320294 591046844 616954163 664188076 914372029 920542538 80344351 343516568 589878796 818639881 313032278 623978738 661719048 942334172 348326048 564754743 846222516 963374297 771355322 970641496 936573072 998077417 247585763 958353805 252582284 853715369 469781730 655375718 141540845 871522529 821307361 874796064 316320648 329530598 650761666 778646148 141063400 708238412 919995314 987079537 240534924 408549790 6287697 751154470 577684911 968789333 693983342 914024738 810704634 989149554 670449340 797638607 528830311 811371129 552725962 553273126 6709643 431369389 751555959 829295152 485414796 533580509 404522675 911375400 810709856 938361780 364510943 428253683 403935166 610360409 965300135 991614939 196715526 483591368 951984093 987023665 973803057 999713636 305090378 582281952 261517323 285289772 806035828 849955899 213391696 456847125 87547296 890119643 128927031 479088994 736421716 855304036 915971493 917494434 695008786 966641048 134995940 287948249 364648328 767653649 584274348 730224126 591308893 704337491 681662641 938024947 833912372 843908518 582767148 881618692 415157905 848330772 988394069 994221510 59198342 384405373 800587882 815081699 5477217 746751406 230789861 413892681 974640759 980073020 183438616 431354183 970283954 971872724 848179278 976980799 233810518 923251451 640904312 651757714 831685977 935638197 477734847 898499172 685487473 726751427 274781758 783555254 228356038 329469980 967411140 980386227 466920479 493878969 658790526 823130934 739686634 793214794 238684746 928848006 395521696 863135610 306919435 515442495 994323020 995008038 821783710 928867758 187477818 715871441 934293789 987199007 373873540 801920079 675420869 784468647 512140673 812472182 855637146 958913209 882686879 922015478 462029972 711874540 851626065 873388856 34737427 386892241 755696521 794044889 569280122 926002217 962163689 976957350 903069064 916217139 596433845 755549351 528566749 597412694 675186840 955802574 634509380 764447133 148186178 709454353 39508566 168203618 340705809 757421417 880508128 886907288 659162854 783719624 1333338 132194063 776701651 854826190 520651544 660209043 801339605 890025446 882658408 937497752 461145096 887489598 837992676 872837214 843512315 913822258 153545578 673266218 731354625 955152147 980626007 996362922 730707466 938468276 801480607 964543114 802417060 966306771 342640319 667854209 39009319 891430333 596916512 999481073 35914922 390893959 366925856 512295130 836716960 940395868 212657824 723174805 603968594 630208240 360575684 450489365 281944240 365188431 925767017 988025746 74104971 938571971 189644891 959149199 669653336 960132191 362863119 760607056 510245982 765540856 524314767 874866916 861520834 869067310 190392372 293988656 107250406 660284540 216221018 607047735 435972172 923710010 828392324 967262937 491388370 808224953 5662003 799357584 275625081 941230726 992964805 998439781 691480360 926270980 425746023 590855638 668590912 964544056 730310729 810690931 532206677 818317354 595600784 698782803 874728432 912656870 403212751 677432363 780309335 807223436 679913253 724183059 235406381 320399939 156978741 814422390 420739451 580700113 68843853 458989618 643809607 723713014 489080172 736164365 514950565 597657419 558829315 849622451 908200907 998578616 360928743 948718719 919390092 984357569 528238309 765034970 805428110 816490884 443060772 503931530 261780256 651476788 22541810 365179687 490222791 568608066 25657642 444541747 443683188 508474128 119174412 302682904 838084826 996899478 209408707 234248146 997179628 999318778 695494379 835009014 438449458 994916429 934680775 984952070 245632587 824298336 777518811 846034991 793524484 833982582 499125028 958990594 152245557 241392407 102077169 965540441 446300572 508977945 285583067 444316300 273164645 684319524 784202079 888573677 672110229 852810480 259804419 815116308 999274004 999474385 989796801 992453554 423906317 722334667 897643662 998478388 294201151 319622474 179371554 641346670 657796954 848968389 520569532 756116298 277132217 909405389 674598562 918623886 454685696 995059874 346694947 454644795 849414012 912035054 267471189 821848278 105392902 677804197 557878527 769784687 408850717 870692898 440867528 630560479 690746629 717501234 828021644 895436999 924169762 988440460 653898886 946399558 182620735 859402402 465867754 653118630 922784499 933109823 432166844 792037128 673283842 705056580 201807429 259655193 837224574 908221365 64766177 104082304 6538015 360737616 199955680 294106822 979071861 994854847 941783866 960620126 852941886 918613427 587410326 587463934 559285241 946885870 64414046 756361470 636251576 695190636 148273899 173439564 90754013 932225812 956126211 962376064 613869687 942651308 435244375 763793746 909569821 975849392 279111562 851025169 797045034 848953561 473118883 759851115 459248313 739888047 20117024 911822786 965241725 988462410 905655094 998205780 757176267 960777212 779856098 794987769 619831491 718552099 585599220 772022835 271568582 391709633 484865105 891547249 438869640 961459516 169503121 617652639 252582408 352968488 471095760 798377623 480397212 962901069 752015151 989317892 960860975 999579064 619143669 709554682 67021768 830206824 431083368 951698788 887573425 993374291 442179516 681565853 639908614 998947706 69911141 996446114 625186965 834185096 423075354 979973659 393820574 581273653 721931926 968831521 42694184 397113830 308104236 935105438 774683788 948976171 920926518 992490020 30149469 69504241 225721155 769035343 960398606 978723492 677300581 761667043 304825311 597742052 725315708 753245113 952411880 993573851 380699950 908831752 625403449 824783055 561126103 873051008 201748285 792899667 117172711 863022376 826887446 835788307 997087321 997089441 630627293 993004924 951481220 965479128 68322442 733420873 496341035 714233854 931723834 985999554 97363398 650533357 227864480 926671279 114250711 365075154 530469789 946152846 975154215 991327962 392167143 397512739 31872385 576495835 884929614 894773331 354127085 482411046 323429965 985101499 255697024 696269435 674281181 772141581 182361828 362969861 927111441 968280049 905353494 929148784 999066605 999365115 703718675 912579875 28567758 307444977 18232222 490665858 700825597 997699013 41362811 933977916 612382329 806353084 318569346 791418114 494697862 934645817 427252284 990869165 981814196 991478066 703110579 736080712 898942698 916041246 96562007 935359166 233296036 952971166 54692959 776118700 294683252 312807257 853349370 910557934 788084936 813595241 308653957 933413800 453409719 572206100 334695229 971343103 559537969 804794657 493035997 763260092 632006527 703087397 334266105 919001023 603349374 966532647 366457366 849478869 956401103 973048793 576621572 691294065 299141792 781358583 670121732 738134952 156165564 460980134 518236653 617685891 44684437 110825590 973081941 981890997 811069859 884994347 922389973 980903529 169763907 743611935 870879816 986528170 985004600 986443481 114992069 834975333 369162813 520975528 173420949 595148071 521151387 830289490 101557891 889773262 670194095 776108720 342414104 550711948 448200071 825328082 190056378 424920424 738085098 926564874 442720906 494165196 361559463 957347257 896595319 960035657 944289159 987066422 647067849 941362070 251872725 783367071 892892946 965643416 409390032 528498609 168401632 313591718 352062243 451598973 624942751 725555899 357231187 953766366 77103205 425180374 48108928 687833139 995950256 997837645 660092001 701294546 20814759 97267809 898405456 964129542 883751955 937088148 782663207 887588533 239188240 241480886 146223391 967489648 759912809 856132396 199454430 382732979 567595234 659115808 556019964 607202627 795930749 842289665 52731680 440278877 539531114 584122251 568434716 927807531 596540946 726987436 997193047 999275619 416760683 916533608 240147559 410534727 319644827 577415583 15661907 730502000 279231156 637195785 608467512 630049982 162095404 228820922 771078431 884654987 407459764 703242385 911054354 950801149 412011932 910466591 682103933 722008158 141318801 589663796 554521048 704812658 359336760 436111709 321301117 800396846 604187884 827039027 743666360 868480552 560348294 927462516 163337315 254154196 934016647 949136244 976771047 996738633 886578023 988842076 322740984 599304107 389231005 433654106 956442327 978422979 506489010 747517268 378207086 922919438 51817305 692120033 256827618 461570822 383469080 648664851 995402545 998178731 4147945 324057526 553685466 927409953 171623986 196190559 236062405 296842717 308576850 962853465 712845579 989490332 119024400 213876580 155131662 321661993 994349621 999074271 736748724 975708548 608029191 791814872 59620229 111706637 102286901 285080538 170303643 474711460 725088499 783926851 373034868 797393975 696760223 703200964 936513487 969176529 248983160 274412694 665539076 973140517 506464912 705891274 277664606 765144860 997719208 999606345 241459422 691512857 779755397 989105156 705454545 760364938 943476348 986397653 684535651 953346071 896522960 994572781 827241935 938519736 325691878 383141638 541789911 769834063 234134680 491132336 163082932 869043797 799298699 960288764 324445783 647072686 4321488 688056216 809697288 865124363 960208777 989507451 830914665 933294042 944097084 999359068 577900208 846254448 328779462 810805691 852960372 905018028 266307799 287090443 782451935 899385440 156943087 845768043 146476698 327700033 460247711 923083481 965074227 977403897 881462281 997416354 467965291 476145799 834514300 909667836 614549682 975366856 918908107 930064711 611712702 956567010 223298200 223394253 719397971 830646429 515985475 764603420 855051973 938880366 827137392 852610833 585818842 656984638 2284156 553611014 463891186 909478396 325946693 747491521 508215595 752164732 48101793 770055223 12166757 565586870 708773600 872311956 162419795 239604107 167132077 394726663 308896821 648376814 161437081 861491491 791721427 954080143 796937560 984836258 281704619 420353760 397557264 884972491 924740558 962659059 447975820 684465302 59265089 384146700 169074790 590645732 241622244 678730812 581837932 876994540 153548287 913925713 739125064 952040665 799204971 859433817 574130324 856214767 309922436 661445878 128203994 189467436 323594479 332084608 773286060 856692720 460809138 947462813 129300843 223162897 255441872 308132227 122337283 244975077 419470246 808367662 694243260 865119346 181855770 509469618 578659188 733201942 36712809 845725777 536489105 538412749 260471304 424003785 93908012 658086193 55464946 605997661 954381618 991164843 710582839 832465605 580219834 956643607 549463370 966213689 133316148 179051043 704473284 727250914 698895687 929889716 31326312 765579310 291489881 595032949 56139600 544277477 967574896 986599968 912733525 964944091 246530552 995220250 729542893 989120239 789842096 968311358 577772491 928462597 328502340 571157943 874621162 902595565 427679932 954984787 899376095 924469703 602590492 971679612 254970874 389091677 712820803 910606708 826668169 926483655 735830429 920504092 817679720 926660018 280079416 467291612 910791660 915221063 890101877 938823308 317468819 952802099 688917292 802295096 945638946 969595333 859355453 941625341 717072883 793683336 51733090 315674733 464519812 514530867 891268304 950445142 435055941 692876279 820794296 897456350 907692963 952863337 188811756 222994376 90708938 785167138 509831502 585414954 565367711 843416063 857626393 861737508 742739528 752383112 469422051 681348826 50341573 641799390 374951216 436090485 107225562 692578764 252715959 879980183 477702587 568301510 236089145 257413407 899306189 984611432 463362396 585518407 676064835 697332600 288306476 946434181 920913850 991263135 768685268 994515711 255350035 886034473 375569975 832196117 602609004 861525201 420388543 560768666 714791442 876395503 990848803 992119487 865875450 917868755 726959873 990115163 212728291 245489947 659933159 913201207 998108850 999790513 886423915 954340507 569727258 932636637 512646987 803449255 601311075 851195262 740573228 779785985 309369343 988156934 526171778 582647563 300344911 417996701 754020901 846665198 478475308 959312589 536582909 908392324 914481200 965346101 424643262 884892137 332885182 785587335 934837674 983237436 320113771 844384773 20439626 642203081 907716635 994495753 918143240 954161378 89016586 89823193 568492722 905914814 262505342 755373440 415354826 822694099 802009896 952054243 528651490 839628327 320807850 885292179 237604498 567519886 704922604 723864040 940438183 981222034 358277069 451523163 932973793 983540517 220160081 852327181 663852131 692728382 751763074 906731343 826659801 893097451 732802260 794535581 238237268 663478531 867970291 883383095 430589877 566156534 915851149 933327288 293072501 477266380 840320832 903452106 293194915 665948914 917500340 918464040 519267858 554644853 435745371 870791144 825768387 990272083 167522594 492801369 549401583 667734782 282442340 604203801 525514977 920725529 981732726 982007931 244832047 958561524 78771467 472871750 878082387 942362599 223791120 520698055 462696590 738416541 816742572 966515414 438118736 870555967 621408906 999337873 95336832 932610597 492083604 517975513 235057586 405012198 574830939 887985647 962483912 968109377 424758387 442630028 291279909 970317635 993121574 995075788 728347641 795933564 708148944 863080837 284098192 725840308 741721402 925746531 991058926 992336080 666552370 691894876 223409195 961121852 525624175 829196880 574444372 745223878 845787501 878144008 848874682 892335824 301811722 987278930 192125332 631195253 599109442 912818844 270429389 734216656 31933519 922727469 869881797 887456636 689055545 853375428 347636077 880887616 953450805 981933922 414732996 600772932 558443752 667132366 595172623 922000293 790549532 847480219 706738653 901747118 695517607 833961820 14509558 546139950 609534396 662142492 487312430 739110085 26509558 288282779 969209034 983733499 107356257 974464557 67403347 539125543 564998799 693069530 135250000 993456626 892944620 902880157 274661093 309970779 111193992 697870016 261185696 282023346 481830991 803680324 934299806 956371740 691078496 979893264 501746678 885751055 737093620 788405986 769454353 941308673 28787895 426599551 932561068 943849409 212003288 789954765 788401020 975997693 751393010 752339913 621172297 725800647 876086222 937473918 291466305 977273803 833999598 973922230 935542044 948044314 474364627 630402125 922859240 977317641 321753715 349346103 749990853 909530870 396450483 501847871 110300892 321510625 244792832 909416068 904683457 968635219 22629537 626610213 203599964 890399875 774231116 851398555 833662134 903778768 782179391 809416298 133136932 820703986 282508803 289885950 258909583 989369647 857398479 908969932 957834610 985543572 254401654 377233397 467021221 883406679 798912812 986058715 914193349 986023915 842546925 944394271 800603948 856929739 332065120 712311137 85236656 479078952 557255265 849171946 327530662 886622609 869661698 989723279 323501062 809467751 608753819 819719708 53637065 985186953 327809756 540791490 952660851 964598851 64482377 181963264 82433896 346757752 28454395 95850133 810664761 962687340 432970085 983600047 236941879 807441686 840263011 965543271 33732389 585879351 150685937 513924525 380143376 665309398 625952164 855215663 657097144 666598179 138701012 803174582 668623695 740834026 519987466 559274679 169466703 647230507 363161229 401112822 248991643 601012004 766508731 859006266 951131922 961679045 715605868 837144346 826791424 931996800 535492297 711331920 957083939 974867401 748088628 962440025 283551121 582068149 572440895 955471656 985279100 987685177 59654236 852173121 835439052 958944381 666430222 702380270 680301885 993057926 756588340 889190384 833008469 969436623 825726844 899032937 107510392 600166209 203740915 274987549 928021255 929985039 240101352 850180710 515211727 863312329 450617085 973902941 630095824 682646254 763369598 866866848 827207044 862754404 242413037 346688940 79004225 590853227 47168135 199705239 883892090 894274250 208899641 574020784 43203502 147241970 594995208 955983199 366956384 411650095 915512368 994205254 636537417 665867962 270729552 975188060 775298618 807148349 358398727 937903199 51712642 282346146 268602072 722468218 50361438 837350167 629023063 930620372 587945504 996337979 331740705 803490463 334615479 726599152 955154694 992689335 17805533 230101018 940803524 975057650 70134136 437682267 720758491 886535561 131368372 230109426 419250649 723220842 351186190 401651998 108780390 858207117 710533517 915773215 801082674 982489455 304062673 881651791 104726150 945206298 201987969 665696514 824935007 881405539 439921806 746219826 25714895 667952475 575464555 984565213 750183451 806874833 516681257 623314535 666101694 754573926 210944098 701309822 727473215 906615486 787083428 869678797 746874706 880058041 206805968 575357130 221737106 802896606 792050993 811010962 615484033 781327436 374967304 825055838 811025763 870132353 892453637 972211661 518041701 864503028 602722277 880827276 401053958 718028450 887300345 976697355 101322735 160538538 904080146 965689195 714657293 913041338 621209687 878939585 56793213 726481730 605377574 661578911 893322066 943612422 817663687 837657017 277348324 893737476 398459758 589381505 820516118 863478024 631004038 807990618 877756173 977428866 506061195 975225520 611050664 872350951 528701198 624730923 800760285 891888613 519796959 980861180 504659326 981417567 434696835 913880239 329418390 967251488 557339508 719126011 851505377 862435359 433520793 454245616 860536261 950396603 596656499 807162285 247299568 956308296 17222222 210220052 450688069 628945931 220004815 883588635 549617221 879690976 586853440 911413000 113222866 851218115 618708002 734856597 759319622 958508279 132769875 707505951 859469560 906875902 281405933 418640715 183728695 464227876 883959976 897782188 236282660 649625817 216596009 777151854 725702743 974903870 778141581 955177468 285803866 964043118 321754411 906583878 986436018 991417620 689431180 867923899 351891427 375265794 337898446 619723364 781908188 922683366 48982608 928318685 790077441 997414686 217948544 782087505 422326236 668896802 370894516 420786762 328925447 813771237 150000945 802946404 58032385 445722429 827655876 875622935 767899324 885250824 776566718 922628411 659564648 708119297 404182452 820970604 555903689 711993689 554413326 757499204 83110352 400103354 737470628 871134903 57593286 242510060 656415842 669722435 39818137 681460755 331564819 651443101 433833669 492384373 480458255 925321671 188985734 802361515 383096676 751343442 134842909 572852729 593795122 850995794 215061727 749763523 242563445 623541759 812914522 854689879 749540632 764673513 707929462 784474522 169542152 431898660 323916786 595813297 42548611 883918187 300893423 828436582 452779393 924760058 187527311 904672640 378374128 939466597 807416332 849668134 483931588 981010009 971496201 973882660 212782036 314792333 67339509 794275148 993878304 996977112 488547728 703759516 542293350 753427321 261880100 287687876 921566745 941123757 518676541 928404084 785738753 840743076 682789734 918942494 877773035 958182634 736224088 929606510 300443715 829153775 987425798 997366709 712482961 747581503 269003647 414924015 820225476 843003221 77138640 121432028 580273446 685307857 261192132 615258676 112460520 597204829 759335355 769291415 777869443 943009825 69432237 770939955 81366937 350140740 997640904 997946269 852229730 968169648 511904992 559925890 52799804 144548920 343582430 629617179 865842054 870563561 534080575 857356921 551385581 981238677 233958259 514002590 988006793 999288933 114608251 383800339 411964227 934170307 670181067 690374816 533737056 792508299 507370623 887833381 372173722 878243346 596619932 971243739 862602314 916247163 737607904 820210504 594771965 811937402 975025982 990029931 967412046 989603183 351238310 542726534 3225400 240206373 783156470 962710990 344822497 560089704 496931857 511636934 927234372 932198779 197955097 898721085 875843719 950571415 620844962 779269536 575185580 750148755 265191535 741497754 236304694 983002078 310033959 860120912 75702154 845896873 674076610 693040584 351576993 676274714 288291280 321182446 264666148 986943592 122799457 848820437 53834923 502094750 987458231 995345993 494334649 772825650 296449062 736501595 849570344 881594388 821482244 848945290 499769189 689271014 583413890 970985576 843903288 984256922 910186504 928045876 969371904 973254464 122790871 983224870 360664623 684216932 521153407 897237743 469972643 608031015 865560791 979754388 184315758 771978295 840614774 988987036 147818474 484761949 891606277 916391338 878819447 899262919 200331043 925931532 792686318 798386265 303601757 694777881 871190620 882891811 999126694 999209097 984925993 991529667 921009048 980223097 80556515 809916517 304682183 460910975 116065625 604240184 660876570 994720157 977635555 984241616 251569214 902110882 402820054 953261976 224955243 541784314 729801349 930747138 117980353 606416708 492863547 955812775 297448386 418092852 713310903 913750707 994177575 995890665 419059632 676231199 134833528 149710115 144299529 642570521 327425858 967339202 490893741 706266484 934828755 960870338 572550475 987266056 919299849 974229182 62845709 213317096 408282407 462706391 520244470 914808877 229275407 383810794 694573647 999379856 11029816 814743344 209777635 325406337 249244966 267230836 237750111 860843330 560383829 679502499 428763516 657424904 40729741 237252758 72919420 491298831 580924553 860369254 178846235 453499767 113722743 217157941 648686528 725014581 499404133 691778887 358862622 703478952 696678476 882594808 395799948 478610266 317528396 899545229 803425727 830233911 205813555 321497855 94865719 986647914 107485928 222027435 736686251 907331767 448330764 917014356 624833073 914925920 349706989 924731616 26480 807019408 230981422 713645146 704120386 880639422 807064933 829891743 685759930 962521993 601689568 746834155 884042976 891377847 8475070 25143377 726708712 830430923 608826640 634299160 94426821 668586538 236781136 602938484 148265264 294831802 713531904 970934288 669485792 777714488 131837652 455229908 207415218 984274356 434991078 454209277 654885391 723732354 391001979 777096171 891636088 948579481 357261853 652341499 431322350 582328504 994609890 994908047 124032513 950498638 244969230 315950534 745141644 799970517 478361877 993938451 389861251 995735658 908464098 983480564 356813232 764612695 360764845 458177161 156405976 854448720 86971536 98296941 866534721 941052866 314829760 422610269 570145270 714083251 238290255 481343633 349241831 578049245 818257296 929660970 980551866 999485114 795030412 933268766 937363751 961424395 902347001 927439367 620886352 660371317 545950331 955675945 596158870 622867735 8439810 981841361 213874320 708496533 184153919 787813931 775176351 982462384 752756304 938892576 312161687 554971784 349722405 418830903 600387855 629487261 822678646 877519027 135270688 328385313 686457714 755049824 410673780 932008178 960529786 988443089 500895963 731357696 395359771 952738501 749053840 929589643 100025348 575512216 285015334 376071404 790714952 825861123 201356540 907435820 229110252 655959087 290793071 530603343 927638175 974826071 581298122 867874364 86286996 459184586 601962192 743913465 443313793 648884059 371192702 988691969 745724078 857865133 520356498 616184604 343909346 794004290 973018113 990044650 634464940 805158955 613085770 958098674 15837464 916454802 16560318 595230147 369797368 788930671 385524384 400338179 677804818 994906335 115146214 623033271 789487630 854341042 821269260 990439070 120299999 666453734 585564438 850490751 584900257 867287451 321261831 855614154 207526559 245972708 613172392 824477316 360763846 403537206 761934928 910691345 837950546 985577175 702526724 714895162 853340093 993148965 202947738 833686625 239458726 586767506 123641681 287748716 244344934 383876223 641657952 801394410 681325753 695371647 629769874 859055230 418661449 584948730 449689413 850737394 328693542 990216111 285487778 737830257 985249233 999180592 742883479 876247081 468213132 940768669 324819771 745201389 267910818 405229663 865514384 940168780 800535299 921303824 818502883 920308167 408963650 824452784 887093870 900491898 299298091 626640935 481258435 561353914 509053572 575785660 639467042 726465398 527999571 619907314 679924041 943806208 50451827 946292258 316339651 760638586 172417942 590273466 184019867 713638245 722013613 733242334 257908205 790015182 547749801 725694861 27586754 422166980 866227538 958306887 221048097 378768547 479524863 929198801 628770014 814502580 969280272 993389350 290348156 517209226 774779300 843921208 790319947 994719425 99731939 281034242 701285649 745748161 856507967 950366188 941673541 972616149 819185733 984590404 935591967 986950170 346472621 888916462 452586539 775411285 398187097 984895747 775533257 823119313 920136779 961178232 317460936 982815311 318985303 870648906 398317750 703261400 5510776 13134494 568592709 947619964 15893868 69180815 503610324 511360737 767158727 775469959 467139617 489880252 722418376 974691033 815914694 913383504 817099746 965719817 102053555 562206007 807719093 899593807 6101961 648330728 277306402 686358217 725828636 812964576 936623466 960102638 924629578 957807618 20412029 28894700 488593910 741547699 838363088 852048566 859748941 867661388 64159026 217834169 756945218 826528473 932966674 974381556 481381335 546228381 139796934 777673738 854111173 995312756 392958102 435313102 430661851 998909002 895615316 998612332 926406589 973802752 274175897 493503689 291821643 576427230 248362145 921544414 854797373 862333171 906698061 920921585 918713530 981615557 852741343 932467512 297908008 721273844 459659766 836119723 800296861 861165968 499031671 912013001 94071842 665002832 596374435 869031647 475712742 825730907 862874821 904588573 190274769 999327290 569313170 940384848 241849725 634182845 64968286 71041808 209492454 744839724 973949658 983606342 142520975 576079248 710548564 917586020 900361818 994631977 573687806 885553817 552445844 795921381 774839463 903558218 300849561 913001712 542539583 907438515 916537447 930185100 754860863 964144608 255976744 586712674 899476543 964263714 813504033 898523643 49511412 860653262 812214465 894002237 842679075 910527804 600046260 858488817 697113032 823238528 239289610 643603458 957031401 979189308 189749666 264665962 757196648 761565283 520320644 845019816 185278075 602898074 378852119 789130861 474194061 837936445 351256515 652280136 434058714 634267455 499195745 568521874 750256112 985518487 12121889 283605450 507084001 563156884 141168177 813397203 648508087 803842431 394892759 634208206 118267476 257691535 224991324 994198359 36433296 234948183 690658290 745508396 542825266 577829067 613591520 657480265 447834938 774350426 180340222 728709497 84185543 874408673 682549793 947163949 50241226 365278362 374722823 616009452 751684789 782963798 71140041 503252307 18358405 653420487 249283684 899554593 825813742 827333658 77210875 958282716 456566006 817652182 478713636 880729370 333551211 494747254 192817306 565760814 42072974 350874690 232135808 935562721 654887404 707293953 22251971 559587986 718822837 904472895 866604853 987503231 976287634 981964713 754201087 793695077 893233094 914248571 600858379 763215555 677241540 788302049 880264056 957151327 38126600 377291924 770264996 958203043 717647283 803692807 210863367 763491442 142294434 482292419 615862539 788598135 321540442 730032367 324765925 425004885 573089694 879209422 919222430 925272391 93987280 891920413 207184113 252626459 765803525 925665521 630409735 634784448 694458051 903813713 864036320 937333917 322513856 962046936 309073651 769233790 731984684 984031357 862905285 962191739 554744870 968259173 838372510 859007865 347291363 409500262 600186879 825615192 881068387 986727573 352677318 513912224 818878084 915550148 542853110 576936795 971502530 998249738 395510951 797525430 523921629 885082690 961370006 993142985 408708493 557667374 974259228 980747782 487709607 934772804 981623798 982628227 457273170 542202275 853753787 948039315 645541480 664958388 318352896 450415257 382860986 386587387 491348095 670320468 213654983 774838667 148771816 469219984 168539396 707809033 479214877 821970774 858722345 985625279 65837411 943414620 973128432 992650808 344075862 625074507 329471645 868072811 354381531 519192528 364396548 390154519 259687190 897927648 16547613 632535313 862634219 961668448 620267698 640687301 782457675 955728824 210311796 419790426 694695768 950820265 829521164 935515532 686343135 922337786 445144973 674360344 947572183 994268611 962992748 989303034 631295963 694591686 65525492 695593553 751068088 773802592 334170291 902529694 903480615 995067130 840704417 977842126 305191616 536834319 966884500 994154631 728006407 925171130 183129196 800172396 461327489 748661319 168872352 739431716 582230145 850069020 421560738 492535276 720336075 947999023 445133123 596181717 416326752 529362698 570918173 952459388 182870795 903581075 823581460 911522248 102184910 500559334 212862518 645394278 736011581 786208775 186052112 490839963 565350406 728045024 358318130 916856292 852363785 915358772 461833735 724157736 892158704 950106025 753616520 815196479 305649555 885599604 336561745 545710388 655392452 670661620 922430088 940010442 375147004 432816168 466720113 486731322 926740509 950494729 662795945 849531553 611364651 867773801 896595409 917704920 438330934 712083534 531727351 581228952 429011302 885263675 221287156 954670893 690560195 840629771 637775997 678244828 515831749 704742153 880768472 889576519 429820183 654275896 369779855 384382607 129031327 925903090 47330937 707482432 399400004 792060553 882638695 907490035 427045396 772182409 26154733 566599446 355645450 558192885 408546907 947931518 609434896 703181778 976991180 983541484 948078206 971146646 605064701 978039149 922224731 933209277 903931102 982154592 160587605 183094019 225776879 671880442 270208061 388668329 993280702 999099125 821983928 832135657 964524917 985823718 159406925 309018896 538506805 834532376 364928990 923695414 826692039 868976935 252172918 658487320 284020240 971921620 773571229 796212881 448173473 586503915 237356861 582577522 45461695 737678481 220408703 607628165 699360940 743933183 48711447 331484180 922454228 997726005 66579399 345906209 687051882 938142716 430671238 959105903 601193531 999305900 789395267 874254378 349475586 565329394 533141670 807631150 173750240 916844596 125593807 927261235 431218360 783868528 248464165 456970155 450772089 783523785 935410009 962968534 326049121 485720046 454890915 504250019 620079958 755440220 901128099 930452361 221270989 555500140 387971704 910462713 215429304 282329520 867825751 979510277 38616590 591771557 636037037 689076666 893928016 976013079 596847896 994713518 787322604 997267742 393389498 914161664 790985181 814521054 571040225 974982138 994377397 996686161 490081134 957219277 618649549 724191039 782493241 963329559 433506958 641697751 851388465 972838836 871189215 921997677 796563353 859359756 636246075 880159125 807228079 868215272 441115873 925244195 99537474 468768653 295643551 559490264 979287584 995561728 588650535 679755137 632738662 707022826 704049942 751154856 548457208 978900322 404749057 904775786 840827021 978121524 124727129 799972103 99141441 459107906 756527236 965365511 142225112 337050016 620613200 912221669 530062225 855830001 70791950 640243643 931564327 995700299 886396708 950322001 435666854 455531096 9403731 203390300 756595509 944429701 948630952 996437571 977631635 997288863 239272248 476961121 775184334 804768364 46335290 593184067 257695814 641824625 6210873 227277887 676576973 942123688 700530767 981880053 921907284 937735552 646527965 708847122 966698749 971039969 764546187 921214688 561971321 760313587 672192936 800695134 49926210 981026162 304862800 909361285 498618307 675888971 954508196 969279554 937915211 983750376 12498099 589251360 808405422 827197046 556198217 644191613 933503703 984755760 221804575 498860356 240269746 812281228 180182697 881923490 245864719 721114862 618631648 908499323 20689353 46695382 669360209 815684444 786991397 864684924 130989387 452075857 708210109 806678634 74366196 537769752 957547141 996251049 358212026 453799390 200458405 970611070 599340535 718970347 676956478 719983948 3257884 318440504 688314450 851324335 91503127 409204530 460779847 720418259 247723723 553205061 321853040 601048943 521659710 882116834 743253364 937986748 786978177 967114572 910397037 975818978 540272776 808607856 120259795 578850287 535848196 663903340 882415782 889800341 252834881 470767395 33551487 88333534 308834933 886068553 810722283 899347909 520684244 869608985 498157265 503159477 403199004 771452595 42686510 943715285 745979651 937320495 552043078 735947606 38139003 125203634 989768065 992474872 833467926 905911913 577063515 687784354 685013801 983354511 951596470 960308166 860270924 984521589 414629715 523610228 278251361 962186193 295417097 501096213 644049430 973344965 341351003 436430856 664887891 740684872 729386479 765203996 404443941 926005771 546924002 967088907 673856699 800658546 916532510 999457770 580740596 932225602 800466220 817703319 769192172 979711310 224896799 612021044 721481936 813328422 160408535 700488084 137821767 183368865 137311241 962794107 669172911 979048930 556957667 590040612 664407424 727372393 845140753 946623157 135550688 483646894 201588273 930507092 418214801 453534602 344059647 715245408 863993316 889922035 507593655 922190312 718070159 818661166 432637749 679253207 414467813 775825168 319876707 576253506 791254056 903781123 512758697 763204650 51902893 459863469 842610681 991122233 582090982 990108900 28075320 712524094 300526999 556198809 373349394 605787047 53838253 282758936 898817366 921319248 212747986 587872804 935704317 935857918 32457591 485820452 546395881 632517092 493452173 823067069 670506694 722604707 1108349 568139673 806089782 898864376 649955893 723497094 993328922 993584765 54492360 430676582 237646875 448223595 858013409 982685895 958242095 960516317 817135227 934780408 690128812 737019711 882618125 942448509 678420379 710792383 475792496 697774390 959287346 979362778 586740536 827618256 387017026 658524893 849389270 863290497 368540081 785768982 226418506 378251396 402574291 701185254 937695873 964866490 877641834 951379743 25933786 974834818 178793816 804393228 898307498 974385589 258813862 562896540 600908102 703868821 966018825 993807430 24862075 88899675 140714072 223870262 9745888 839491078 424432041 539124803 62322938 530412757 996232654 998626358 692974252 948298076 459231639 479166665 149756763 557703448 69864237 462131137 466089033 517626447 276953129 512586578 27311097 265432326 182073833 595820288 970689172 999868689 562193407 735418355 716278870 905251205 959094404 959600542 938119574 988104453 843882412 865783967 653901812 951659876 998758878 999299224 552052729 951705228 100558491 237356616 23048066 41799401 142036287 142854093 665461277 975931272 722738830 764717090 561565954 636924480 603011329 629690412 511998492 802261873 636958605 946170493 822023538 848566087 353410995 681294825 161307285 366087098 225237054 421079538 218481702 466690670 552790629 944781800 910657135 933236870 46598821 194240215 638941602 728820847 539146030 653737211 794571530 866433758 457803240 496483789 314051988 558810267 874158836 915298816 763030400 964685488 769260449 873173918 120861186 504027009 715778154 904494744 879853145 968720545 406608745 417131278 794726496 946441746 697129318 980458176 617028910 987100501 381253710 780269468 360591057 872025314 953871962 998707932 450438098 799691418 456800243 571727959 893225462 927244792 685952158 778254866 705863286 753616604 462514815 566897281 811044122 874030692 216627894 580750912 567220174 941329554 778537465 782242138 716623344 899127307 284500892 962934738 217894271 388438050 789162122 981725147 516251891 562565961 947802199 953141970 596550572 929378668 478421948 644059455 340672758 587906584 146539897 702135228 354515383 433086188 762105072 995444981 670415819 919995580 736751388 842686113 304765063 995309366 494615102 652015139 582281531 675959301 857937521 970125393 766083382 832223013 771387671 794876780 580663476 599698827 975695004 987782424 610871535 797809734 856212312 901207313 37249496 577009810 70290071 709877042 894143272 894912247 70949770 876582156 568011184 711249220 386707568 731209309 377208844 464728359 993032168 997383928 802814435 985510060 861757067 985617506 991147281 999648389 571692059 853588477 78534094 303109657 21942845 124796627 452754703 710916338 967575437 978970485 853555540 862738785 84643053 581757664 921480713 935067274 341508256 616566763 54706220 942254134 514390238 639000735 491313213 580238194 81178542 844678417 252405920 813161911 700291405 889446483 550643245 661178543 851052278 994753199 288627678 961290617 434964407 655702089 702585308 742566468 463337643 578491474 15057606 147975170 770835970 955315114 416835624 495812479 510739700 802809471 285856227 410108644 975335828 984936506 506291960 661380089 230568475 867987735 136615939 545936021 24341625 491154434 256343275 762597136 722688431 991271375 105817745 857079256 743575256 820181045 672680772 688270770 867077203 996710246 640058201 646267446 205504619 256525818 724566436 748080290 775257704 956494107 684353641 890050256 144897493 756666691 92588166 125856042 862210715 890863780 300399304 591379261 258500707 417210793 680992606 841116966 619592175 702326377 318635447 444615782 3446875 803799177 860746879 865515789 102477710 594437614 727318482 929216450 924100821 927147261 766656569 857914034 756008569 951124201 452197380 757750981 238634092 531035543 469607314 834515941 108668174 397292856 916011494 940321388 939191891 944894987 680016970 789705107 150722190 874956251 394816533 793145528 254538512 808883941 54984307 633871926 874656373 975980902 374206097 661030664 258960329 353851719 434054849 451752740 915897620 956603092 231772500 349689847 569362235 772757853 641054583 854336097 539515841 810432525 459102586 816470586 980719279 994678896 635962336 726756120 165981136 246082285 219495475 699408722 177638767 456606182 98756547 579311297 118129964 516299002 756805236 972756899 223362037 615583955 793080297 875800844 24218696 62116056 407217911 933651560 321197381 772486344 116569786 140299385 319531253 417404684 997487093 998453305 160298776 640166000 683080454 925094288 394617331 854025259 177067852 744532085 146018935 162326802 608458285 874653364 677042788 843827680 389083190 874326096 617304682 778739519 515217092 591018146 306361483 918097815 504092227 951435369 620168455 658824677 38707483 78397114 951094986 995200838 863495620 937307656 433406939 740688519 429024606 725944437 293640022 448419502 447645332 923475595 982178343 997764483 304982656 678737803 826540328 960854995 194104075 720747109 946147042 967636272 372311652 947317367 611192674 772239046 861426978 984376563 550686913 644761551 520065872 634286810 576990311 832601408 309660280 671543239 488265715 889579479 589576977 780132562 385396235 930138633 971968220 979913502 205106082 996976618 4091848 993511449 567262199 734214022 202208277 865238596 691963574 849804091 358112896 886071112 920515199 966348063 850168517 879063403 177573334 253124689 101794205 739397625 422049188 650098119 834484425 970572153 637373236 807696946 739136960 884049609 57101248 902557051 152157638 619051351 252815537 633564964 202451485 536103528 565530849 733083618 800061939 877598790 989511511 991744757 6027691 309097573 648675534 869860201 61872275 930143201 72899891 325077157 970689928 978136099 609731838 628654738 766659409 932023851 707730834 854787548 574617340 628683383 93518993 633883867 75233870 579698869 335848314 661911905 465089904 993700587 971607543 991643455 923606899 997316844 565517034 628103030 31294735 946855809 173666913 738883657 842158853 864074008 984885380 996814268 116912451 823510971 493517044 772584074 569409117 668567283 753778709 816283385 756180175 805826857 738852725 831721177 226689155 371240857 501161034 505761307 360985069 584043355 395536607 516577623 579005841 626302115 709595854 729650119 16861593 769338289 366531421 693087431 591852901 671221847 377060684 947965262 892787130 941944572 820562808 946878055 272257382 579034363 977044358 979120629 229705523 572701983 151208982 194397028 705953751 870971605 23891143 208292713 643641998 708251650 2335051 311777709 419138767 443756005 70153215 499400999 633973440 667014650 943047829 989549395 880883207 889988210 95002886 325537951 920307899 971789767 316925388 956601763 235543819 927177374 606248214 964184010 86225379 531519680 168537778 187006270 450122981 779448878 376983218 839964633 231599089 660007323 296672740 456541442 733620781 948075908 284364796 972428650 292884786 375477620 309655843 402428841 431711040 864707761 249892832 437085928 934449923 997280642 951967700 992147970 598480334 754282854 791134377 835271448 974798808 986628515 570487781 780918142 534700347 664730451 286673182 605439743 898615999 952786372 620298526 833323239 465721270 684103352 287567953 586101296 39834243 688438772 874040234 952900116 920399120 922795504 207595196 255619240 438750465 955772371 621366562 804613896 881119983 908878878 162082358 859342327 780294250 981216211 728447259 848366453 687860654 886579772 404610219 449740223 372092196 809127174 305686119 867025735 70757775 300398708 242810776 879349933 341128500 977126290 220089570 760585110 631962661 945264422 670419253 956034733 494720987 864022120 995287022 995622259 872109007 970331541 855854633 994415221 172183232 221095491 231194326 849949465 312772077 525062235 841108708 918105591 548159991 895185165 448542852 524244692 758234332 761083066 291734847 776442908 796975545 910226057 174100133 800476370 947177411 973872733 190747766 246098398 65997344 399938649 41289283 656237816 80152738 972481484 19074626 464751911 529156258 886945660 931404885 941535826 777499993 808982061 175361319 979467856 33339716 78739393 818611543 859616688 875449813 911347478 347161992 784176665 506112194 706804045 700536522 708749268 690186453 922453848 559545273 580193106 746461628 746964490 269794174 980594419 382492267 818856134 449175099 561679078 738301263 957549057 35936184 940634572 498666936 740428025 611570601 629134008 461432651 973936394 979853454 988597719 351844072 726538956 6150040 456585902 682162427 861264461 415308473 896275669 930689394 984457646 305510931 641081021 708096557 901592946 214998655 461017954 190177155 885519679 78452923 706275879 291316064 698176205 426954425 980580805 5718233 66110093 752581242 825076458 195123945 858883402 439758868 684874133 772052891 993775368 607847066 748709313 626528269 699641429 656649604 924309910 237780706 485649119 799326699 904610765 322125865 787967628 588607698 682261214 576634802 662894978 195307950 781690839 352125234 606162255 297963710 331957569 334194981 471867733 216201471 891069624 863392350 972851502 901587821 972371398 63784494 632393910 579063706 788917438 328473461 998400383 423220137 830970160 252507409 256231695 670537163 981272072 828554364 987682831 549606021 965855198 658010614 949683411 411991004 539840123 903273708 921962338 600158768 932932840 342740244 741542813 768144739 895902450 83975142 405771369 510828547 667814880 958451649 985012536 362238032 519859841 74469634 945182546 191551037 508641909 213746226 512607526 840687954 860268517 306563718 968504168 95175445 699606696 937710961 962160986 384242 9945911 653806646 742305077 580036371 778017473 265578524 346426492 675063212 923537388 903096762 959380518 349847844 736984166 84520414 890046746 266419602 983796598 272738673 548679943 290843031 474779088 319994224 603682573 860974210 881922087 443002278 982825701 995117446 999224036 763778903 819043881 357031783 464494559 207751041 238429433 990945480 998864742 551933110 996011067 42348000 374378920 326346448 866365876 897037916 965412267 934489111 989882881 526377966 713801295 823254044 968080455 466399294 638923519 365510301 474239475 389371270 976446836 913609767 968496438 298448213 556949722 917021664 949874539 318743131 871936640 117792602 739597466 260386804 982022444 238197805 917001946 448972384 626240495 954474530 966006251 746421964 821729062 155802756 614663162 764322112 952928386 586200666 930061125 876658608 896392782 994070323 995427872 260558178 721110368 95727820 885904493 689648583 843572752 459008932 820408352 121950379 145257630 323641933 890084604 208030545 486045088 822125013 917093855 847411963 904839082 315402200 555781925 56930416 459775284 105984217 383683750 304704854 894701068 335255379 917808560 648710218 932070024 486077216 730360886 649748140 710888090 586794858 932665888 234737119 997581631 637502948 862763150 685400045 808028016 803032694 817173265 629515224 887337408 514698902 928248838 480476301 598715493 157021636 957551683 761488526 800414572 373016174 965118428 592502692 690668456 183746300 325676462 126788337 989162161 389362617 918517828 956761009 965181682 354815521 612949585 627586460 759144720 580746882 892494480 15640482 278468918 199131138 456227028 872838444 881193195 605801259 727506549 672184227 779235044 634036816 684426029 343819969 951245324 481591134 799399922 362987130 637165507 827284480 912881790 51104513 724706209 63229663 637799080 811432512 997308742 18645871 203015887 688761229 717457548 460955689 571131924 442631347 551713544 256258526 608895972 389960603 434961250 382563228 708293533 684360885 737778190 877449613 902178123 439607650 492070244 413825645 458653181 215024896 814803134 278316288 457529286 180357111 771861929 256209912 724829215 296539970 812626046 379980295 538179934 904547934 991241298 461205012 753122852 599099537 993556435 950210582 971493941 515823112 916407888 760917819 847088311 426309024 982993069 436608902 628219861 261326028 800314562 509038535 624580495 285813193 842316463 780042196 955618841 836516703 910900190 911592868 919061177 69393535 682101186 264657639 774119632 798258129 939004170 725801214 726766362 742329097 799831567 564283208 974758886 822565088 879760134 536435901 636507598 567567166 748532311 338746695 659181838 332286478 446436078 139696819 627484862 332798253 361304365 176162359 850021288 892999377 963489754 193702697 716866411 94172794 231309399 873720855 902533751 608446881 708867707 289290855 979581685 469743029 612259404 191392072 840541714 298639237 508319025 942857688 971392264 475151268 513226576 190871233 623880449 532496245 784679896 8470821 888684158 16725599 64755060 759770253 943024127 968000248 993431783 376446713 964044801 550783277 712329512 520641222 855546869 545596451 655087335 55056620 545548303 855506878 959367469 41977427 694299813 565692445 742399756 677040316 725005150 957014036 998031745 195733110 567439196 104489066 527794304 941349437 995676199 567021210 940668504 34345512 826602618 628033029 815629218 520714826 983180632 411833804 665096145 513970791 940486065 491341282 851312294 103693066 884536915 600607511 849758100 2257254 726779758 295001003 699921985 56209799 152061034 251813333 648758463 127687760 737570323 852219203 999050946 710433141 795875632 365679139 686284306 933602016 960878627 927441057 989154959 898362506 934416975 821753950 853000117 754146416 767315477 140871557 556740005 572448935 862526350 180774886 623182346 452276161 605031406 658208423 906163469 176648702 280758957 995534752 995554197 180073090 679712735 647614552 836065875 11670963 441349136 232493260 873974847 184090710 917055432 367364795 679466518 70192475 692690276 531733454 864968129 354715493 938425790 145767069 715027367 968881301 972632394 608830119 958553539 271220953 367506698 371279598 898362183 973572413 999154347 780063600 924446236 866692798 905669899 239974552 818189384 856719115 982818751 745617722 770110275 675615133 872348120 992221657 999728469 32321064 534250559 4515068 991698253 235354888 750486902 209823644 828018825 97978294 205631441 480767094 990531260 182656198 274683134 263864381 370174356 336615618 765540662 324293503 792262285 753443008 912129723 834483306 870507683 398745392 626055369 732815453 970056124 468274851 644849684 545205697 791179599 280458594 706160846 256160252 972115219 215933332 415967330 529097785 596311946 791725172 899166110 781247371 973590479 666236118 738802811 736099674 794087397 888744928 939029387 986093579 994015444 892619994 913309305 442792720 599732130 717136497 749689782 260884680 889748847 742012109 895783786 449975289 663803522 825648969 861889296 309402042 580096441 396459511 549480979 536093278 614348085 453771200 721011208 524255890 666820502 292067960 504517718 977128391 996987038 289900215 343330358 192694809 344439689 511736241 656062178 961042576 994013999 909655455 919211491 643087787 904194888 317483037 824433143 988647774 996467074 689261185 951144080 636233579 876542218 101317305 546139873 781693911 862289150 782269534 870766064 55925144 269938920 319047989 824539380 603303907 998830184 526909621 582501145 535506024 629364284 366330559 941465727 15458863 355485123 111621030 330019279 17209997 858338974 564026482 653626915 460210146 547329146 419165396 755099354 655860419 952600931 979538795 980023032 131164353 362693316 602984376 933359744 734569256 880935370 485127639 947332800 515479960 532551393 68137831 809443014 614840484 845113489 908284187 936557774 585581193 909006452 236869132 565192368 913695789 971805801 685630303 733004100 565471901 894021428 934643856 942739211 683175613 951625998 226354142 714930094 495162932 629144965 250582023 765790720 8340745 471666015 243357047 369164460 26475321 962161167 725716782 809292592 332186136 573767520 585559427 958741139 110031274 854215574 99232450 550431251 929019379 947837586 480011733 819599929 224902190 592931752 411601768 742968131 30986060 554659855 883840294 975250744 649041364 712036683 643723237 957336502 877229672 999644669 610455654 797723860 948478589 961023245 824649712 975348879 224716100 267550413 31815399 552147415 990937292 996134611 725622508 862097728 200326594 897411655 669855349 836520185 240901935 999730644 832791297 980735543 354950846 840826168 397320466 421084391 185418375 723778980 15261700 288329161 371174503 886311939 962034705 999535551 459599976 637627745 161503475 278712412 901962275 998659764 195951068 431899392 806592413 967268371 609510389 622819662 955722025 959797723 438374207 894374166 212090269 350327951 100229626 145393800 52540838 199878499 961476851 975552277 903117964 911713879 306389886 936996655 304886140 368139626 954948222 972587393 432498387 866847474 933565019 959921803 349613059 438296888 624714442 805484365 725961414 817618213 195086319 832995244 948512450 998590056 523798915 782474486 983931616 999470823 468116672 961164284 399646441 463470818 292060308 994077595 819559134 937183971 715198862 776009458 371479617 564912129 495924274 690671795 195990780 525958033 141119558 569553891 850258187 914153366 292580689 958069041 981761552 994295361 741920867 944135164 652709377 882351700 771542353 943296996 617488509 622141407 497885593 956719596 478901791 985655282 318253260 917278787 84885744 400450740 614242249 824841146 147454478 385911279 699168094 906310025 314697050 878029055 400423220 873926172 393246190 714920722 172511485 830722587 857102587 929594108 499876340 689290281 528579470 724642052 935396276 999797628 656786569 697491157 110184220 931782756 711873868 981174809 575227348 800258373 115124909 683411555 400133691 890482836 263170068 569082305 423199932 802365940 975542741 988171377 677520861 802173048 8620368 754605146 370203060 992758666 746837424 910035331 672157483 964107222 566853195 657717689 135394988 569095387 792590353 825492210 362028881 983675437 933745509 993804725 484796681 634229619 836802962 848782356 382916834 627672498 258620734 640329465 24755554 65057737 158692531 406855403 271907100 647706750 221871005 685483072 30225874 951518522 463968754 894438375 612008226 757095020 486576590 807514717 971700644 983510698 668679115 834303949 370319802 645633234 592821941 797790597 671054770 930453322 978224048 990634748 18808944 688015508 913151473 951202919 662670966 858386249 462682259 944750820 400446057 698765645 616804748 779152469 191523848 730728854 816354119 893365203 424064676 785198845 644196228 647938704 248866097 719997740 344043764 355750650 430458515 891112830 555114427 747893789 364207810 864470451 500353583 738301288 233391108 952482621 392863213 544881320 693558439 780097780 561071645 747724676 700231043 727460147 852062989 895729553 75493328 887729844 474590055 709101826 630324951 641717029 336567887 417188148 308912783 649128936 796984042 797928430 931667539 963153288 208848499 313120742 386750583 487140405 990121051 990679962 124462082 507560229 698030142 749812011 97608990 174727283 639194762 784368506 863357087 900418397 547696114 975425522 215899577 248237449 403718349 615508305 131876798 968254886 99787198 125677682 349537093 941164890 684877486 715451132 428967595 580141678 35688485 565027563 7767385 388336459 71900473 123471368 277879761 973012625 878686271 950920670 824491373 897712671 563373052 748550729 889652202 968205263 726867911 818420128 939216739 994072272 98210243 101764192 175425041 677748877 602478197 669640183 74416332 577716155 272719475 932119313 56178160 690610691 912789719 960635480 933788420 975544320 735864848 793344671 187709336 635138552 537105447 955827613 353785969 477924986 988520883 988982673 380592049 620274769 417710445 844542229 556133742 672553320 490246564 758216206 223931683 350863928 503185457 651938993 951470870 956175586 250823249 299729874 470757491 922402268 134613002 257324278 190746051 443039244 800060935 957965741 624103326 838912702 173855848 727867982 208042684 600430421 775684986 833405338 448737761 786102225 733785558 909341561 884064486 957257832 638524010 828098795 167392291 869492419 280219802 689058889 770759930 960214077 580288685 663222281 1146229 56603378 885813753 912335007 697631438 852186472 836334479 941918571 830072707 853002098 894860698 995586043 866492539 899742375 863736858 884584187 419756934 546188134 582912530 642633413 83270483 535459407 599216145 848588824 99006452 680969575 356827296 724693831 49700508 657395612 244412658 700862546 319760841 812347859 555667067 583487088 842974246 951496390 50550589 537688636 857357819 884566981 589451882 867235626 496161929 522980621 708565207 813707284 359155056 848321297 645365494 982356558 115594625 261223493 63038981 939209786 247579458 626122058 30599572 725730793 434444859 662536735 370391738 868227670 581633082 712059408 258556712 994008619 105468838 223589809 331220319 999389451 214612137 523789318 940011350 987050664 672125976 954403725 144494207 567888836 221721132 908278600 665540779 877430059 864282295 909624648 115506738 835550471 990482103 993427992 4159312 462430167 854626163 996775833 344653066 426921484 358360013 795706989 334045025 377869266 80829948 785772987 717873689 959845126 310830542 680342162 925616699 997975424 594595704 961292711 931811402 936107862 453529967 560912415 797629258 912533108 849765527 972968796 733697218 813880934 344477053 787763580 848980359 989380301 555418238 861208461 613690089 622891863 195611455 558214406 541550757 837761837 761596257 969104871 25728042 138817305 192309823 203161349 279724637 447659268 419884301 695729216 84279770 583374992 655044081 863607217 873981466 986593080 877423492 983303544 894245921 978916312 775345934 906747959 154676966 262512448 849636635 864936299 972331689 988534243 18259754 90733340 78696877 956870677 315500446 660206689 273206674 952886320 827398452 876534008 124813828 875593449 470256961 927166360 779027136 955664020 806359381 883674289 893491979 984080880 693229219 956392149 124048404 383555286 105734401 562220194 308721572 328738608 187007461 959982555 917098088 947213315 17424116 143266401 193960530 871987482 467052688 924109964 348719209 809086618 741789551 906891498 953053073 986718669 222969390 485491229 105453491 645731006 790945492 857495513 457352804 960291107 979919530 981139072 131891552 989263061 520844019 792869016 912119815 980047921 24903740 780538525 373335157 441502807 181342912 923931405 163709666 210294537 594521749 648832967 658431709 743034614 881741035 886191377 722316968 853072037 85152256 505680458 887217537 954622081 839736830 880222085 348168967 969802845 924695225 954017486 154950430 185054388 132277188 714231241 912767191 940485349 686743825 849353297 71627673 435921967 96746404 593852531 920809282 966380161 737990779 898892116 638363513 640184229 433532673 774950874 108636463 629322945 972694001 977604496 191113986 748250816 399113187 917140341 444969990 823729873 160458653 407544280 693724738 931880151 936560729 939316266 208555762 556935950 256567064 562395558 798707626 965981977 523603266 936363722 469673565 613891214 189218370 494242296 291632502 318823117 408078840 533222928 657108004 952674418 792778307 979757729 513889747 683245560 973633462 997440756 492556659 853512094 382693657 608297431 158034301 386203601 8154558 464421822 571619683 667032304 814319842 909250434 26856362 68341366 562839569 746904416 29959504 899448917 970592805 971087255 408530483 739918753 25398976 383985812 995852841 995921590 712871682 782469660 684862556 998435334 966979336 979557990 717588751 848690303 663041456 721144106 523223332 775247941 160464219 612847218 949580584 969916468 26422295 816935758 899403326 971313953 919428926 933854826 426143991 997813920 951655798 973018475 293347998 361436999 650216146 973533931 862204164 998542507 25882695 604717846 100868298 251270902 737112634 854763620 98095223 897447016 783856482 903144808 735411310 832180917 703845008 708605172 526792953 888760185 593214435 790264242 669592231 740162676 253019309 407692338 931127240 996499807 359158050 857376327 716407798 751068668 848585433 995376121 722858209 949309295 570336820 623511139 459811872 858151249 659362516 717038427 605508441 975177475 14288011 90690351 949695359 971804929 250072046 354683055 283684199 336787401 148982409 698919934 71951786 104200754 39225991 144252434 667458812 770485220 183918994 966306177 990646204 993901475 833973101 935584308 917884677 963182989 50684093 976474896 234970352 537608926 922706687 956396732 359491752 599583976 724831716 913957346 361743605 823848722 3907801 400336877 999243338 999623244 28085952 805906053 942641204 962399251 297542111 468035944 257740644 725801975 431499443 861306881 9107573 368069553 227264142 535824671 306279597 435247243 385551750 599921474 604157402 905430321 389478128 682007020 682601999 800069583 439073171 744029463 196233798 406339737 38317380 807918174 325366748 891217702 690637287 744085886 207837537 490424586 643688196 859329173 829158722 948560679 427162290 680834108 197137983 573123767 441414828 661922573 898688045 966139789 97603332 407915648 378268050 538291055 340263349 918316561 677062853 730399406 699748073 973830063 756575680 834871746 288685017 766452241 411899126 579996452 965713520 968637971 208053984 218827694 935287317 938707216 731280585 936933636 987203592 993134685 667852079 933832455 541160137 821409612 288577797 975652201 469236286 910670277 412027118 454769098 605583928 967866370 4348561 242490511 579060045 617060498 15821554 939080986 76593077 316540966 640998853 899173342 72745272 519017351 345474931 359718355 986675874 994397705 13527760 247238610 650815899 858704790 154912934 399137094 880493335 940347333 840805039 876000482 960952257 997421013 265761079 557913828 966523444 972891616 412777880 725359864 856537034 892343560 679078125 773056370 578241177 581045456 910589757 924135919 51482385 203834571 206596039 949914592 199279663 859063908 619724888 647541755 700115282 732739051 544946324 647177024 738261467 860733103 872371035 900455537 588620908 865854595 694433273 969434167 478881877 509170893 506616823 568580275 231911728 742433242 144978547 742037110 980612345 991925616 341985846 932341789 705141379 725968385 482044667 622198664 857434982 980048978 377350380 597139515 692878532 708831162 649740977 807493523 274156670 642723747 205135587 437774601 384176147 632461675 389301623 904113721 259380714 434493185 930373454 970406597 808773206 995921572 264912128 506547695 919819023 947008369 176549749 630814709 76185941 210923177 289836398 469501154 2870264 817392426 765549628 999012767 128942937 248978098 51958896 845107264 792601376 943379766 83514140 208746642 965291175 974173072 500738468 881069379 368191579 655825679 606201242 999363568 876159417 976958208 732099541 971356138 150590997 666823944 109951024 671789644 539446917 758912465 89651923 584562524 577604950 597702253 748160021 917710972 750596333 974987137 387598712 491348510 81307178 132696388 948504885 989173150 314081625 558485176 456199552 664463698 900613397 958100432 170996446 691948090 190216856 547995711 6431109 646085672 948212044 996758944 592767049 917026547 425043020 758279327 239388696 336175234 99356643 796468340 548791759 925378273 478175369 905788360 37054170 950685144 377494032 379304776 971222906 991040072 808804437 965125096 108215136 919031476 139271011 308512424 404660904 667136354 826111548 998055129 545477672 571827188 704584501 798727455 41377199 400031383 995946426 997938623 127661086 572040489 453584384 456390293 43743786 660085260 383529848 475212618 470172110 699014917 362628722 622473421 610429012 741031326 358534831 926679834 640337296 962508633 988099330 991635449 885857828 924213975 613720243 761841198 471788395 961638259 911096207 967558313 253255717 630674527 726096922 799762338 738067232 949840878 416835077 897123456 129999475 286750713 155523881 506491371 80420673 503239398 856195325 982620758 437151859 852275211 42786086 504776530 76808939 426328662 167818656 333547656 936398004 959322761 883995750 983100211 313902269 769897890 346180038 661161966 392855203 993035179 882249038 900708601 860956558 965245660 988088009 999957071 743258569 910347259 68065357 449684767 207667067 321379454 759452892 948531321 764239105 951896064 387338971 804924243 533975735 672614578 435387576 539100589 675105106 795372956 773638179 939511796 447441923 924577296 212754743 472388763 548304812 920230463 551526487 839127851 369662630 370562893 826019396 868437027 175130458 932917302 106394337 391720758 763955186 812424289 383697522 689939007 695533381 954852264 288162548 967829314 743467491 928396025 192125407 520047287 58545276 628243998 753457449 837234912 705685453 826283629 235767052 393554508 396355425 523549721 716969682 945290225 379964151 455515090 330253875 441559178 772375432 789863527 886533768 965108381 166719860 698284530 344536292 952903868 429857592 784936668 466275964 920759513 92775618 489601747 398393874 989458709 843023258 875792930 92054471 917928206 741030470 959598615 446424871 760533722 188581315 349985774 333261388 352708585 147178008 281657411 107548455 500705598 555957881 814364434 143605831 431539670 218601120 756676455 164792101 589839056 136664225 684523124 245979177 251622058 212119521 349405722 702963634 859967181 407909517 720677521 570889866 834960495 98606791 106405249 701147970 876520333 421742486 755916942 461985041 763933798 284099751 573856996 517042808 725040914 299080501 736504202 560571048 567550771 224313920 873204850 80775439 148117241 14944147 612232830 278880727 433027534 682645177 932158282 896453813 980034838 257922750 970788395 418912074 559440138 375720372 651310299 227148071 301407698 30314459 523235814 289374134 838185575 669207599 977435317 545958793 800620548 333003378 942309778 909944245 940889908 506188064 846381492 982514334 991619160 260546954 918358093 657099656 970557238 996001665 999649299 884364775 987556324 796510193 811426559 440535001 720427964 605386758 997463334 44924478 944437222 421233413 874142791 205936183 974475063 312092659 920341116 2187883 224985967 699520895 878007202 801653934 978540749 615746194 897377137 447586635 992166753 126646731 684207196 729541403 767857954 193747150 738534262 793604481 910856090 199272011 207064274 50801944 859888999 988895953 991152631 395409949 889441248 5969755 94117871 578662302 650139863 850512589 865455890 995286927 997314732 965909955 997417308 950792414 999675920 294504793 770126308 100269929 688514345 985964920 986532345 297238100 531825983 541928910 755323343 369164222 679832201 357877341 948173330 414216781 703004594 681988780 842502706 745062758 802732676 625353817 875378733 713116452 883927875 828081259 939124197 142298012 171093597 892378035 949109858 335161798 770885149 732956465 824371327 234680743 435670839 976647576 999728748 756932836 948300965 798039912 901229452 340845882 365908506 674768578 804400838 292273473 898219384 996147294 999356177 144575712 408690715 661382435 958024289 981088973 990382849 455434062 979003733 528904170 979518921 477466407 883808808 613674821 661224358 45233636 274440089 427234606 625543785 570133534 613122265 830031859 987813239 779417174 903246682 53997058 430290084 39145380 205401383 158567896 555176643 141354908 459931040 409102232 757698734 761354416 804917181 530161511 592179489 678765834 842303908 318383439 853830811 195121705 856042748 173267764 982397589 377428849 971159161 650057261 715812882 377565549 446287706 445944464 886414602 32342044 488211777 281926245 411868079 569656902 581643278 543542377 861450129 352777919 768813671 402627214 609742676 560099916 690863585 276698631 650517911 539945219 830882609 999105324 999768472 241424260 857371159 163586943 404684374 302321307 397895426 8765515 16717411 629205377 776682871 198809773 413417141 186219997 520598364 161876630 947484791 691602910 787405234 476328541 819102332 507596235 599467347 955813455 959313038 930704200 943561709 963744302 985592501 841713872 990673541 999197725 999342266 511677694 980817968 674067062 733761260 310895097 846418734 533653084 846787169 108778218 299031624 456451975 845026856 651661122 776754496 72341670 879509768 105081193 831850476 207479544 892044615 912200174 997392712 783660786 984640403 825181511 825906484 630747312 723892435 367826347 425226149 422323145 514972844 78239550 524301455 178216366 998636039 693378515 977594531 256829885 664404487 500145937 753103084 633563376 744000385 919819685 949151054 77310487 297848790 378407706 501762848 678770504 989546797 932182266 961944645 82244800 697720727 991159509 998942302 189865636 466833136 363078739 847712574 338882576 766928680 199413366 624710565 829992025 887587372 890293090 999852929 616043426 988561413 685434138 990636146 740572655 773916473 551993922 591979959 765652401 971877695 117049995 230786168 977510364 988894597 610762530 712879334 321453752 580472930 592428636 951177432 685230729 802846037 143950467 653610464 587152183 786430746 669425030 981685297 468029388 698495188 13650818 65592858 822015970 871751878 635695181 906967159 164536514 674575711 106603584 235737690 610063561 891082294 25271056 397326710 901437870 972544283 719906045 785787089 675631366 845610608 874243953 912108252 815983654 820984960 326344948 999050480 386985118 611674100 912488796 913012731 143740896 286413738 442297960 706642990 306479654 679618171 62436912 694650167 201791493 988761889 420023779 669549728 785120452 848127722 894396650 924693108 751104586 905289895 917891481 981708112 529193937 687132231 764025519 914151663 527433947 830293683 909478146 925047348 201783327 915448731 616866883 863235118 576619558 830859592 22402219 938357152 623619481 664407344 900144825 930318730 878930763 931350545 222433686 877951206 287314275 665789335 267242286 935853395 522924044 743358748 813393008 979800176 202406299 609097830 26607065 977424103 914368191 930446040 562553513 653833247 458225302 680338740 496580980 855897863 88436169 508118365 891764009 891965540 416888856 827309536 48176444 979437329 690808458 815117591 906867911 985579986 353250996 428544759 750890524 912495172 109764032 634843568 40686650 947013052 532873963 759839517 531617243 908859277 872251361 889930859 812941254 916599317 664414432 716680027 141182828 153667635 358317159 605970079 793539268 869104727 218507450 754147932 645339524 653600189 462770786 866375957 86363383 870181929 283661209 677578484 84364840 328819888 488682684 735982422 278556169 496708694 871198192 939143400 961813162 998233616 965585693 971649351 734041673 751188780 29581058 449759752 89944429 869283444 93909326 768571856 265534946 385613223 665348427 684639941 35290730 861786822 684765018 912898252 864977679 957522875 126871200 134434595 831616164 941410951 534009996 993686784 940232327 963141567 537342051 778779881 5231467 281313284 785684890 812898541 98486686 948388822 173362796 312760200 341308784 386483415 697559689 729362556 495414092 834464400 750762215 830472870 230886251 234596039 633340647 944770853 218163456 314488883 618173972 681391074 551976005 893768770 906242341 935561249 712418570 734701174 645945951 866324746 853313693 997684831 342971012 694573296 584127988 784411668 795766787 963005886 291507064 346370915 434420584 774983910 593159534 714893191 590297705 817196382 296410878 826072194 478760245 596887513 132165713 265522600 71390370 187434571 987942398 990800109 312326592 936090769 341640696 501036027 732993707 922521949 463584330 941383846 762970994 799693750 516203562 912804372 8196413 927334575 893736920 943490719 781855637 801046958 399662120 474067361 135697238 821072100 704229445 988748668 367948375 843937611 428321555 928820995 14887465 889817742 737132279 795422615 995162040 997602846 956624594 975174522 929299847 975752417 625537424 784245591 834996708 858617205 868916182 996052253 452801914 504955096 925253970 959612075 595549148 805046855 608880268 886789495 379623548 839833425 428407948 697362834 147996862 912211260 406140132 513595804 645010894 834582519 307326857 525632844 795480941 897850154 971551580 991234537 718412015 719049132 57803939 58298816 933471961 975019181 476477505 905205193 954796302 980094022 470127505 530206181 96583252 561645655 153972292 419827100 861015109 926579541 979093026 982486304 209892828 316839956 590442390 793916813 135034504 390972017 642636968 837586488 961149082 995412371 488452892 851713917 68912083 601118411 426712289 518463560 325841944 705735192 910677611 958962257 239204549 448831074 539575756 916513699 260944770 283021685 843636407 973459711 687637823 910095882 225230146 332593487 465293425 994197675 843906235 911565444 580808335 654155233 361001238 882214130 298136000 447707090 234852618 746109526 805809176 897997009 773939762 795546195 159880118 590546535 568510936 668515199 914916470 951391034 556119492 923540191 754142090 791799831 346055959 697961334 467215562 682234825 610721213 744737098 720355359 724478113 219676006 879930725 598013979 806929680 40505043 763910359 335001227 800401916 924209469 939045793 885828097 995055821 557651537 700293612 555172483 949298181 4118046 167010722 134437973 550814091 221467939 813071673 781994808 944528038 26232493 538946588 383953610 614271305 388899962 618835772 155347922 623998453 52349998 997779983 912808790 961440285 316666044 433417148 315482292 567223095 898608345 964076480 428187350 442302586 637486700 966990035 861331517 969287459 515972738 964159407 82147677 323745125 471111342 677533278 16801689 877273908 853195097 888918292 159409636 599086220 221297098 549062214 847527627 934938608 428710081 962153411 799101096 839044820 616421348 767806298 327939163 691456189 925950825 952615718 591830692 660037556 772412961 983308809 949451828 968352530 164719826 474570475 362200720 704310453 201060678 724285654 779184171 997645475 253837730 555278159 284580182 816331999 899252189 932195575 445851401 871015521 961088538 977684309 43280325 261559589 254943837 414252857 467124925 911391309 98116303 380509774 39412433 592237608 876508242 940880041 205736082 945470828 262757535 774099054 57815294 395739158 348277144 721494475 605684708 886936697 288201385 612227167 15085349 358843998 488732313 539710886 72598418 781143327 868923966 973392719 463274849 825658328 20523938 78532446 937178667 952910979 929743158 990916161 895463066 902097967 725277939 792487596 335100391 367046021 569912716 699170464 689590837 985020886 405186082 700365114 993540093 999867689 515496170 604481283 745108456 898435917 523154830 579226583 285305473 750139418 338352790 693058561 892089257 937303050 720492246 903740454 112753945 411654629 136862564 333015265 320255966 816436720 433823083 804502031 209017466 689581880 458284936 944632675 757187710 933998918 31999985 57649932 116166017 478754700 557494739 852285027 227282398 774253537 562023260 712619354 651479465 800867553 97781522 955373904 726959255 982325463 194740522 217173996 222769818 614799494 619268695 894817578 117965442 852517488 770725201 969795153 870096541 887844340 637606634 800586750 587675088 944491784 851030787 901649926 551011990 844801967 272874191 536743578 820027912 866418915 869549209 966618857 51941266 532973046 721571906 839830044 605211603 961994191 609261293 912798525 375650721 447013922 757331561 799322784 950905868 980160562 830243341 903764139 594789648 599549366 554227797 981827637 650964354 703256918 179856617 893880654 606062984 613030549 956833671 981613995 306388857 617646166 834928217 894029520 537294325 744791069 628508779 652408886 83422761 572094622 918199221 932307829 984406871 987176256 378430732 735963812 793199310 834228024 858693506 885486430 581461452 618462254 451639391 500695105 576315931 811257526 25810896 705081189 437523721 620724275 753893677 896538404 647666487 668783125 961507298 995355348 36621800 368255027 96526325 884812163 751143989 844733491 632905296 817202240 93095640 838297102 144344993 469932129 859410333 867648648 226706834 492666518 35484987 106264804 426677133 787689066 75901893 465465101 321937000 579787694 173886085 180368618 540108805 753840794 549622536 638398223 179217243 649174804 803537102 969509976 172341812 832051409 498113865 818951153 754469259 775682344 114694361 770545607 10601792 782347587 642131988 833710461 139309912 295527152 752271669 859891980 747975003 951988118 198030141 976737933 32898153 265249870 693055169 821001364 397090092 873903789 360426727 779763849 715528913 827237246 692407404 929662306 830877719 956790928 523165405 871239210 588217123 759959755 565761770 717391399 388001211 412610163 178083914 205918451 221023926 383786717 474574154 849719382 860932677 876134321 252638727 824039179 422817594 878412997 852293635 860022582 16808633 205260147 364707997 996276592 181386456 762019115 738253167 941911881 444473016 555727448 489512379 869754361 462169646 502766922 484920522 830822442 9412894 763680776 906715366 965313833 883015137 988856478 208909685 743322961 32587217 976378700 129242326 699195809 137813969 313004682 969237404 976080357 3198148 502846335 590973810 816724034 641210620 871355273 105884612 188696684 452123208 613852635 943132265 961896440 290274374 818675652 626554576 725167606 317206995 602500559 284452756 904342659 995235881 999743103 792661788 866292913 741384048 747381728 324444971 568462542 246494383 404789248 861002237 967728206 206268853 272116413 667100647 820250873 292691762 883610414 596477317 858173775 68862360 417050274 514393117 540141692 448726868 670693668 840781246 991307276 846706530 859974848 534225136 865782984 541910622 757892499 149672661 336880471 624994693 724367426 24317746 71764255 653286085 942874660 693660495 840751625 923000526 998771551 617355267 621638552 687846012 695684865 966319760 970609534 627378954 923566728 225601086 550435412 667921061 798228759 388042800 424638247 499325580 903933321 685022916 909121110 235535240 841854889 217801502 730963600 11806683 480279800 2851283 208073647 373757900 458463393 390193693 984862002 396179750 446337411 881037324 963255887 622409485 870222060 124459686 820570442 202314137 534929076 372263816 405610898 900306898 978176730 720326533 990871959 316352713 323152298 896767877 989624304 76122761 279934584 38834691 245089848 724986216 993037051 688739670 993993614 428774922 634615458 432210820 869655907 294150010 699561356 909323923 969289887 69891806 149473840 371944073 559999054 916596150 966184777 892488066 922502590 408415302 707709226 188654712 719643185 616988583 812697060 2890501 587032885 869921374 897921787 547122828 883753055 925209683 982882887 663738005 666853875 916916764 927402191 84585229 892084642 789347913 947275686 309051539 992505940 43714080 812263470 736655175 853256408 354718297 920120743 719467340 967084981 355708706 687565118 378664107 621477912 991532949 998958631 71038381 189305537 78585594 960905726 977159366 984583571 375088670 714896653 758992766 893327453 491342067 910163507 791788424 964401823 632987524 869840618 965525131 978848567 248419429 414452813 329487664 540421676 737622016 780704045 225876148 514332014 148049536 743199001 123354246 721756244 549912054 999261978 64415019 299237558 308629115 743743193 445040837 704768284 852402015 960259016 770084265 914107946 786498365 839094950 292749784 897815942 477374096 862018743 368664643 477626919 179657344 902884248 826896484 892705514 643052962 783500111 396598473 798646225 682566690 925612331 640367282 859936276 6825384 503120715 164815698 461846301 612562569 813103104 483658537 569016961 892322463 998659163 284719339 707646283 481278935 747720721 167993220 399042238 361259113 369335138 738642807 768020063 588217796 730418748 482088748 622184932 515243153 842753339 501586484 786452667 713536353 867847689 58226675 588913362 721439501 850347137 726505258 805240688 996969067 998305133 78857965 325329588 6044874 349881026 500403848 989414854 811826091 954128974 610121157 706408039 954873092 958871326 606313182 859259943 225452311 911645329 310108730 935982092 65854706 306629383 352132305 686162912 167055182 799482608 381510727 530058926 326217295 536073536 334359818 524881346 972893110 982327614 606300034 749586301 311791532 526008320 970794719 983555015 978980283 980065702 596887465 824760352 698748405 894697719 359823228 442919013 304214866 660731645 684935043 866108782 914598163 956220380 187139974 957083401 371577794 541979968 989103922 993109791 675411228 848318169 955982432 992295356 731390485 859027941 383650649 935765117 556048648 595331735 246290990 702907748 776313370 813270289 401935143 976208589 502564200 977669252 943861566 958366622 986666018 990418988 583095108 977935895 315109998 433286674 283263919 861829538 744146779 970857858 598726949 662945503 576043007 836298516 278484884 651770344 196768119 719176374 60285927 379648149 663173548 859581902 326704932 458045183 871407029 918762803 3329805 411332672 669029264 957461468 726760744 986224925 345285652 940795617 459291287 723802253 149868352 612699758 383195341 849042986 895354591 898857746 18289917 166172147 562689252 950578009 529869914 675366048 430486832 971329436 744376867 895363293 886451360 944504603 768410767 891494712 993415687 997666172 462539600 510735237 417441601 893062502 45978086 943870987 150589032 885941925 752955910 826698673 59973095 114493487 349653676 722269164 518492733 871676494 471476100 970171191 924745440 955631268 351799370 460946287 566464829 585384740 741861220 910426215 689965695 732212235 596252219 942019187 589408389 879064040 72471679 903149466 717552859 962651136 458353143 616577854 521609801 562330218 786375853 850297381 578288400 791714298 288406595 766117994 125833518 542252014 39056364 949094092 553973042 849557973 184323135 592708261 510779022 986235929 15934216 426435829 106195656 191331124 832158641 917345071 485627373 844359427 688478377 820396112 220952061 248628571 11854427 630338002 838936805 940718440 89717245 997242395 431231611 835894520 277427939 378192549 472418649 594780614 691257796 805628756 237565741 814622884 285881082 859377460 805902777 912729240 327365516 806834512 903842851 994606257 875494599 884782740 728683546 813329777 87002427 791005823 653794569 850634799 342793649 616657755 753969382 774557355 761802903 907220844 42541198 397042125 164585765 344845382 840473798 848547087 660278986 786526185 710052507 867094821 76189748 988585588 667872033 724623894 458181968 492889363 625338141 662351842 936832267 966897838 329303278 807567722 310724913 925018321 770197606 945866597 483459351 850658002 613028934 772078510 218187594 897573156 580170813 746932212 576388984 896623432 674231744 746452405 233273491 796434514 119319715 516999305 297113284 704099465 534182185 811548964 802352027 981837775 300267482 613911226 333014199 630141899 372065735 696394645 384830276 748189044 716964882 940801496 875113721 978480144 601954856 641679955 550360814 680754016 880287761 915072175 290311270 867443511 842687258 936616839 683696878 761638588 999065763 999771054 21128771 691935036 479168965 876573233 176977276 936331107 266403006 809392186 873425250 877886883 527866502 860340292 933863768 969290508 716399699 942313281 192086899 541578525 420041473 869292278 420377590 959201571 733525259 941959801 572903735 581625153 190520330 645279371 291344315 790188357 336912316 453236927 239348528 366767274 729655316 766859297 737695158 878884726 563301584 675732342 576088906 871132196 877478037 945521046 138100632 878529246 196804050 831590573 934341013 963023507 820716666 971196077 76608306 374973044 696896268 989394745 664017298 836923954 256041327 598234647 932152100 951414443 303880433 772733871 151876460 729450341 59848954 246394616 75114494 115759675 865416429 963438347 520361247 934290491 670509211 998693777 208212682 959480092 630429554 730672703 840981928 973930855 28173463 940889376 325603172 461394582 222189716 922360765 732551691 770585607 951391141 958041257 36314131 947829817 47392305 978781877 84874920 169131466 482814285 867303458 871700916 934992179 692621051 859512516 818609609 924440819 961643721 967326374 372748253 659820489 5958179 793786849 239916502 492293524 788108886 891378288 490451024 710314835 833656812 932041309 498000262 749531091 836582897 887286947 974331701 983522507 465256857 892360221 376895287 833870074 541588957 769039872 453238708 591109168 387035408 867623690 281340765 836443649 210249506 273727264 705103191 988084454 838870316 891964279 343925908 407896859 652795183 947151012 733176461 978926334 817210227 960226130 605263094 748007798 919601105 937534758 370099690 955971284 331156927 790100285 89293674 861792997 654229054 892454105 124607485 409795986 817602439 952464406 779391423 922770082 473933858 685806661 821250258 983530220 219792780 615170911 741765323 993377985 925284458 981556833 433929897 623715152 905588696 985726489 999462725 999754624 845894305 932764696 802019077 927531965 770950146 859169598 798007712 900258996 891794909 914403444 546222507 568764215 85648832 711310374 66962993 868896294 268905331 952313315 559565972 897877859 473136027 586202000 521597917 855920433 513626153 783638982 270216520 702399629 350913317 382761479 492146930 974916048 295830688 483685478 905087760 942769677 384656551 761326313 563949159 625633101 246066624 580113739 515031894 636299266 718701958 804922660 527704453 960402836 474240477 606121035 557228985 686877777 330557775 522712897 839854310 902161448 561454280 580617508 331269074 368047751 836844883 884520080 856679336 996255234 847851909 926726032 694403188 759756272 134470627 519489186 171412160 529306750 642202641 980124912 830695199 959017583 665087848 889143643 832327916 848967941 141868525 391441818 754608278 907721663 817510485 956747242 297863539 546191347 905631119 972393104 393719662 658117705 620561189 849426898 693044095 902741617 784919183 906838606 758674964 933663926 571795366 709585285 626177725 963563544 654532717 951507129 51742421 606760140 697709054 934277519 883164270 942844443 637175588 977222199 398477108 916611256 513734116 659957449 712160849 916957053 947394658 964997417 344048559 644285817 866326956 973817120 759310150 953364473 484015556 724976200 257249874 993333141 129970939 547721968 574185818 684280736 520804413 913115313 620748716 735042721 874545018 966350428 721393299 810021286 710324143 847922207 564771116 675782107 974436042 982329168 32865286 272232134 137654160 911100831 169516765 328733181 704697570 959040544 28326829 458540097 334194045 666969677 692165801 830804868 633793213 645040982 530741227 571370049 941569763 959525011 501610487 918691050 160769605 826529488 154200839 767576571 488663057 879986529 402978099 462169019 850391610 870162886 208096862 235536453 793388994 841774897 349150426 785779761 946080994 976172239 334179794 919768431 279104516 739448132 946023445 983708623 850519193 908023583 9636214 839894644 571555635 600557203 696992536 922087966 480086450 932798119 226761734 644120316 359920270 771167594 277829843 376730145 227294137 373832810 759976741 912510169 892480753 928734467 372879404 691029094 717463192 904386280 800773364 896500286 556380845 766221858 744677797 956218508 827262923 980736679 907885649 954221519 973336256 996738658 394762212 891385851 352747876 948779054 851106959 886294719 117353632 131489852 136932673 630497771 588783361 994025385 965361276 972581003 202935756 370365876 195471324 553287426 511680040 999855144 199628550 641286196 53662510 472941465 167098642 522020897 230914795 401991141 668146536 980738783 359116239 850990923 508514646 813527641 40296182 464162743 640410189 811083470 956862632 982296134 641088565 930194622 873508166 892458563 244416592 945949340 386820283 846473581 705953218 886077187 92400176 99805850 73218660 915703306 475701321 710284804 547529594 718429636 799050452 801664550 731215052 957030707 664313155 833126403 65880769 931819038 579295354 979910310 743051909 931431036 61897077 104679051 429975494 895380638 599160924 878648727 194497921 945737128 890440283 998766021 636227112 847309783 123934927 467504273 725570743 832679704 791413720 865620333 92529385 483750443 16802705 100542583 497332900 809310038 3224033 166331308 100487902 309278686 476549355 680024320 751590513 989514103 368549327 503548161 528597417 993933769 276942518 971933681 123427336 786326825 302709309 993410540 843399312 904167847 615175312 626974085 40983317 968284627 771893721 822789394 547766780 717873413 171579653 383632863 843675163 894991488 882691493 953306641 812380067 983774788 908811113 972712000 864572015 976236740 761244503 887362132 847553491 928640286 817713322 978745787 836197118 902676407 504194339 674795477 31117633 626433097 881480868 998382238 293049697 945586283 317860040 477476925 538423391 956289620 200016402 280067662 26149745 355425257 562799116 867658832 705767566 975552591 71459076 600450457 745247838 983446396 872173609 975867160 178083892 444296353 555368489 778595676 81559232 492878963 558635653 946781800 977824604 998834840 901177949 973667923 853056841 987072392 448453359 512595868 769651346 904155913 374591442 410228482 715462691 889971711 219731896 664170331 668429783 680745369 546992641 757342097 972459953 985529369 61175439 225083441 596570167 698041758 655416202 665328627 965169677 983387158 858860543 985927630 720696896 948469993 782184604 967651115 605669488 866488130 756824765 888856056 842147631 990646155 301415471 791082830 660423057 792491200 552927225 689362702 796948700 827988105 439107889 536306741 676976260 998572148 608439846 736655240 249884925 252018196 2982521 577733528 808369358 808389378 795887567 887991379 459768488 554012210 344329902 449541230 768500517 824607888 516894192 765658367 983713412 984234399 801603579 977906145 609382031 725548798 133196439 396331326 392744691 754126254 910219421 912131875 192197673 932595630 614353900 943494597 353988598 649889981 971174125 976238502 438752907 798794947 910844726 914853798 281930045 834330799 215938034 496238708 662835735 949899188 563014428 805930885 718519418 840315639 742295431 825707382 696712381 988808312 953571163 962230605 266822937 357978376 797564323 833323336 622582661 750749927 283337497 520894488 758861258 772863857 585395985 968870018 274576218 822213809 786215206 964252695 219348176 892654009 353798105 527343285 180541817 215956780 624175718 896181705 911621961 969169484 94393586 692668403 9257182 729598676 423146434 637724697 532223827 599312328 456659635 882736241 960676404 997355814 396839794 797892705 766700674 951450075 610620556 622163854 669156646 838174067 470175311 658624914 587744512 982446556 80888794 143017685 317767987 529479284 829478082 912669709 228701619 744955754 394511366 750775174 610392066 711739246 960410744 977767227 941891147 988364999 609713426 868426979 773596415 783662560 467877747 571515353 80551631 334410054 639754187 713554981 240472675 933105129 373640361 840616358 548884067 840655806 213043811 476356891 804134896 855577556 608664121 801790995 650432281 974700860 401515121 932378507 621344686 702654622 604546276 807655208 101723353 144036851 249311720 318610940 196153809 853742868 857399371 879207098 811589586 972148883 814881099 943092186 65585596 740807876 345784071 937097984 819826079 967664981 500456538 679367681 140797321 430430701 211107464 440100113 84171616 428844111 209669940 941862832 883639339 903173796 886105800 900888309 638500366 894072259 61253573 322360023 479912810 773933415 433538453 537659515 686347100 847820782 446489006 801108376 929075567 966693737 454913417 509151877 788847698 964903317 758641646 900672231 965563703 998456303 724897230 777836786 247978021 989510132 210479740 652695707 456450410 473394315 428014831 897290916 514389277 754725976 52276410 260722943 594767184 714390409 696950557 808203440 751117821 983353826 856055688 988396699 444372801 452354992 767174762 953204766 759933530 823754951 487524731 575504521 951308765 960918231 831381924 892753924 755217678 879405885 319526718 527526228 323806131 786543965 192988594 849780856 914768537 965842150 40612254 176989163 947847749 962874009 423386237 977614127 517090431 982448254 533043602 782571531 861362931 929675172 277351341 509565161 854801678 873118792 675206513 792310109 165698391 491002086 793952371 859168044 49366165 753894666 839524254 960698573 743433179 765581249 803285628 939256352 739347374 857940264 105249369 389231584 109732470 629522699 549861394 553579100 852069944 957034625 964597522 994950372 551777889 894579088 477033248 658204631 332518677 544926869 832714978 943836861 232255518 833540784 949888112 955423444 674728351 751437616 55428843 791601531 739764874 930971118 552359973 967634861 635885501 811471249 904288713 905604267 36975642 897307441 726559033 729197455 347833311 493109880 31703905 695362376 356750904 919103924 927204111 970393740 321222707 481190059 497168876 916863787 199857144 939273320 693345864 726627553 650795839 828623054 521960855 615677724 614638183 724784551 776245341 861007537 536151800 699346991 658447533 665484417 132151034 960928484 47486838 231078504 675039304 807750508 32838888 464379124 59159220 537172384 993642961 995097341 61134427 909079752 880318160 893697118 300683358 849120302 297078744 307475387 16663260 193562958 605495403 711616426 838449905 881003797 994076261 994123817 684990646 916108563 939411190 944309273 47487876 685368827 153374625 776072671 621611389 739185861 177245092 576317900 686059826 698125168 917614211 935643417 159991130 361227173 973692699 980526726 886817622 938115552 561467788 848965523 645371849 851630827 873176296 947697029 22366254 39192127 616925335 894571034 387853427 791928141 338002540 608617292 399931030 932977900 700634747 723371961 235737741 860274586 229374763 805616987 445818377 862570556 366581733 590491977 749861553 951806386 238814788 424492920 299248496 738974101 920615881 995953718 744254326 969264382 613895999 673194589 609032973 707945603 484692947 839256299 754437043 769156685 543865651 958843149 84806425 522155098 993750594 999081365 188903722 250373062 976854948 984862655 511173070 636692910 60803450 240961251 146631058 547229629 801708463 838733811 63450221 733814396 879648245 987734751 593077827 933755825 23926060 579995343 127407578 621316770 679620965 982871746 237070874 720880188 559165738 950228028 899588650 903875331 289663875 572894112 260742280 659788038 371808039 866511330 267830688 806251982 611775409 907469974 306709897 384366615 808111951 902530982 945994095 965293628 521597158 817528581 72679527 736831274 534852227 560653368 482196466 580518440 965818054 975577236 758494072 827949241 831634476 839254050 417784792 565960682 118548589 453120975 617625015 866891192 871329689 888403451 911263490 990595422 52223478 187122379 180318574 194610038 866737402 989353436 642920048 709415944 486804231 575266368 680856316 847450615 900629490 913857731 953359793 976494409 160014323 175972596 232867599 635954520 659568800 693734800 374427948 876090845 936479669 993083925 239736086 863006819 781312699 824031662 492820002 695050046 936042623 993222560 148022313 898212494 652162130 966906545 879651292 881247379 197424777 841880155 776640727 851448839 783863821 928636255 785287538 988568053 953406766 957654976 395960028 842001488 379372457 616990278 300804463 570413377 536594827 825687200 376392764 956733189 55212280 596296028 696937614 958452168 16492164 784070760 493890891 798380365 403576097 575277799 531127598 541690556 95159859 389153473 294112789 687239710 519667279 961477954 797542780 993826316 520405031 521058812 863090625 975561780 448382604 802264321 113286944 932687180 631004697 780701432 628810692 692552083 742029697 963348645 534842004 750659781 306073838 588955973 118990639 217400546 886861562 919711732 776965266 863911649 459161311 845909146 298937387 510026790 986419696 992742261 94364649 586814292 49926443 965920470 171803986 192297826 970403099 985687400 888365003 917348247 687571176 758881583 64589137 71883914 105679272 137105290 595567271 780722913 652832253 654058561 43514366 820230709 252342540 909639337 669608155 910957294 169539430 595532936 92274659 771324713 178266524 739689696 84702112 841280017 306043652 958944548 54465237 894317324 39687639 318714459 419631524 727540511 515095172 560534297 29313554 32977235 762527245 806337186 372513401 431385498 558557882 863648687 117571126 133063191 960225872 985154037 398368298 816451797 795340308 944676790 274379451 881860433 80577562 380582798 449921128 979910786 199166930 765318658 653633304 881324330 520557068 955695403 194773282 740366960 131194701 861437920 471221805 683302404 692377754 710172039 819332921 937988088 11149919 383056202 467411931 802779281 182466116 831732211 980302293 993932176 412770250 822072354 643972579 752874337 58009339 905344249 588174866 931742099 245094101 958155553 786680577 978056554 386931153 452300694 82206049 996958432 525936086 650327279 443525504 916246847 513689272 870210833 923338114 972247553 308892676 874036428 553646024 678799248 856580724 950565715 542577110 744753776 784852901 841686137 428645707 601601486 129915375 650631178 848270121 873302376 632546175 821357414 418716315 420928169 716597798 937684270 984754435 993446432 715362657 936342114 206171127 911020039 226260243 751752207 844800284 865635442 271979567 777815828 393982169 631982961 750897484 791041229 84004542 310606415 853160630 946984040 750304722 755493608 544322142 559144460 748919993 874447035 151185948 963405813 767044172 955920285 869061468 975024277 318756494 372475589 112031192 209979922 289252769 546089159 840591749 851572232 180320726 550868801 104216550 569851842 66779940 657279032 146080497 765647521 932483153 941532101 810863265 913432654 230370423 653365889 53509942 752177009 704222356 880619065 352451334 513705995 932489426 933132885 661999188 884336168 108544947 494588661 606814043 803336151 822177174 825208771 235581702 609590062 879954636 894917490 561727328 859451806 878495217 896278546 11219172 185099406 288681371 667700279 163786030 447068758 667908234 773137487 322705398 580865761 482544625 730618225 995666126 996649109 655845268 833460637 994827630 994996787 845582201 983028109 48789907 940071758 146080216 632908475 488151225 850817364 233806532 848670337 338213834 723452253 176139845 407882316 115282519 421653541 438986292 869353854 577259242 687101993 65397909 321884685 146382165 761252348 341458068 993405187 781813055 974210521 918700497 999884316 788842570 956572688 454993524 972548040 964704346 984737639 708571851 830449886 199244638 681734233 454285819 673225994 517059666 584232714 861160301 947569869 702961252 933683083 144006150 709743375 398121786 644577855 315248105 576827643 950107320 974667571 848868310 915746548 970933587 995055539 226551319 728905609 927980728 935816290 452005003 878911907 60521000 96859110 682470509 761150254 203187426 876943653 716499081 885212265 518980419 802503523 931924653 971888474 427920942 698486686 132478124 874596127 700382902 785964209 338574703 914694958 104365493 149709180 605992356 707652261 899762694 946443106 202848668 741121594 342142790 918750377 197387594 511376652 799354494 839738293 356859009 853203022 678933934 850072618 151928281 686870473 736094978 963063355 242469344 410898742 646408904 942061783 52529084 991269201 642170454 665792236 289096781 735843786 849770384 989316258 988611714 993771496 412488163 685790436 439424305 591558349 128739368 911087397 712096258 891045266 358883059 457706121 956334986 958962071 975077525 993544007 706352998 831635972 466854006 880963101 222506339 464400492 142922447 724093451 482428309 487660625 639471132 837427514 801991135 832317275 788525985 898520207 85724075 560050763 707597372 810564737 38162967 708336978 50911638 502715943 307140314 889651648 389860057 658535925 406374112 527683097 815579239 869300920 310178183 751416873 767668626 817905773 451019112 493133868 82912952 112662390 351298377 503391181 980229477 980790319 730875198 779401929 493519467 515302988 434915160 985642293 588626285 912768422 154806022 588830041 976945337 984403175 244940798 527525055 588623366 657065697 21681905 985951330 508446113 980459794 712255638 958921713 223414200 382400649 828148307 952788967 881762120 975751384 833272365 964368224 972525141 992814272 800595087 964294400 174462695 567014872 201574628 999638280 661272999 936209140 40761820 240803338 848114894 862610758 56223973 399747422 26847297 208957457 342642953 760578620 337190842 654349022 643547586 958830079 291526607 295324083 281155529 862105200 838834621 968436531 284040597 594691151 332402317 398792098 668188165 675526099 314057890 930607664 954524676 971545727 866267819 898822557 217882211 476901256 946951481 994923419 851410529 969010142 587925451 772007337 663644916 668605685 527591424 671760371 368251054 763856646 448304011 810207748 879775963 912890469 972118195 989793136 918857598 958122974 410962616 962536386 995476464 998560098 929275779 976993446 674933545 915246403 606607696 683322508 244866766 475474104 854290913 990149196 891922213 987437538 577012045 589938200 445038274 697513751 418153894 423990238 126880508 984475964 846784908 954228548 851451890 964489626 856640325 980313650 237008862 978835330 533126143 543846226 571562132 734864931 607761917 761600522 299376251 690767329 67918657 990895496 924601976 976449969 559055484 607920834 279887039 448849206 355253122 940421043 887396669 897605086 110746755 412533847 113682419 655638749 933344740 938015645 235441338 669771299 759300143 780604215 738879685 919003597 86914785 585344103 327508087 919974262 743451581 907592213 288056415 959843968 739805716 927286874 640661448 734175895 41331373 648830874 763819821 810012152 910412154 967625734 689040754 804471667 517492935 949513294 876034130 986926971 586897812 729275000 496267663 734978420 14645327 954865331 442483522 882475543 145848635 860952079 37835633 717852490 7591143 267629918 956379841 957461269 485951052 976944531 993818993 996995088 527756789 711420530 363320834 652432032 928515435 987180515 613211449 959923451 395375351 578373696 685625120 745428413 590861807 794019956 864357126 926200179 473700646 930853664 444815083 817612300 1964746 172735760 503006538 629808516 260791821 331856988 806159799 929398734 184782586 417117578 981595988 994422092 368841688 881006887 569074568 844058947 144623696 850906653 959859741 975738470 429512882 697029767 612467221 957278279 936071935 978804716 1582666 415033947 525695012 771118707 834948886 900130771 300822042 567575690 402359304 414833889 739558496 906926933 174238799 494796278 354393998 493623682 715135732 738791300 909764209 925207838 170997824 310555949 966551089 999037758 487995159 599162228 554947527 892787237 379129170 517291037 697573325 715930979 259467763 490914377 170911554 248399321 580391195 736151355 789231864 927824057 580818946 987423151 1565227 751711995 254762843 832981390 240811749 570164675 115027290 890533006 991770856 997090780 212535757 254777032 470031450 983060703 353804156 864205824 675603877 881354299 174695184 206442769 505489435 928041829 61950519 925483697 831224186 976527318 891993168 967530954 471301171 568998883 201817674 893395703 653168702 675893262 219476518 484927208 658615114 913250277 947059219 992061126 62176585 727595335 509437789 978990708 151536161 706749264 254358966 455299518 160451666 229539029 988105935 989382993 454223113 760109863 825639666 964295919 866110676 954671943 851293163 939137358 925396588 947446843 437459710 499102505 744975026 858612440 513273899 548277715 618058474 661506649 949514741 989665114 526488702 713319579 223269741 610492243 572864815 635678510 519352651 551502555 366172588 739061141 958838625 997947455 696019213 927343755 927786831 931970042 976170604 995818676 486925026 692013092 202704590 524684975 242672917 489896732 254727358 764505719 449177658 974134564 540992214 887188734 55876054 799195689 275220744 950470661 680871446 898191520 439535255 560638420 57469906 733461092 746269664 869730491 218049161 811261272 378202457 751437886 70051344 114820925 239226861 794593668 31871672 955674883 981168616 993808673 485669322 561779051 271161440 500198787 457264595 919890826 412711350 487109733 481817463 868001515 489374986 695530721 56351944 774035492 93242605 638063623 158319670 380942614 150405985 620920798 842862227 876919948 187776888 718740124 328566220 601333706 936308400 984769522 554668672 825267150 31479578 650123057 895759705 950218732 637156714 852870289 598708623 677100173 47418342 657120769 985798144 999623462 31306101 810324987 937335495 950818957 796317924 846709572 622327101 961403488 546234733 829878268 541197240 990059366 398153875 574529816 738002261 812739037 937482004 949650025 543889984 806953646 83617806 315570670 254704751 452143215 830731162 899209022 255912935 391658332 55325975 966560303 887557725 905712530 589669272 814754511 790150506 970845512 603220644 768376730 404751013 764068662 270441222 427795200 944470482 966532965 27786393 615940413 25276468 146350967 599404466 834136559 907191850 957695321 215981882 890878806 662632877 857694195 714671523 772442072 91234929 419333356 211927171 954446703 449048619 750133842 962703508 981674139 799742012 839771250 143082832 272666832 271116904 340307812 41838043 106494758 108404680 225744463 667182395 778263809 644058800 772747863 818467411 951604050 185063400 899080413 587600039 958525380 275599887 879279159 931046887 958279685 552121469 918565590 683915242 869512495 30836792 69943155 14335593 345646838 542607768 997333628 940041609 980463272 799232696 966457009 871814177 970368362 339457668 882659136 528065132 741300336 589952444 854780222 109538363 983830170 598382467 907057983 957539136 988033746 370357246 965579608 596296338 714263446 364897530 880815542 698929067 956917977 293993510 656749802 808106076 934874646 14052545 499854148 365701212 788340796 916223160 931894817 149269368 297891424 161664325 547927895 852673845 968120699 589177555 614805442 803817677 891371824 539194267 739417306 185953028 602573209 183918615 927292743 323994133 927322926 761909358 828117725 214405984 550815469 503573226 750878361 974249975 983531702 47750998 693374351 271916618 646546926 368303484 824128384 989860317 998315245 464495487 854418995 528105284 812475136 407087121 807730683 871454473 904884995 674698622 992069319 723455464 778103071 731569450 847731534 276070278 876944714 406550644 899231807 235453280 256140018 102742206 700692627 175390074 772345368 791378227 905445728 241574497 286072397 590170 176343420 70308611 369312462 804448633 984881230 25756139 342283744 484414937 825896170 112896996 420832018 811566551 907224935 672426728 707043412 334791478 641137599 282524232 654192796 205340339 508801892 517896548 543766122 148157782 479118251 292350520 508973808 15520830 586358801 517554616 760448741 824628503 923813450 554149088 655730264 513185445 853599392 986336560 997619991 140179307 725329268 793910600 943112659 950128306 996741092 667811785 934769483 967184507 985752251 135000158 169063727 18696025 656109843 8398871 20962322 841807474 865925301 145935639 165217966 857889825 991829972 224807373 713773739 520289617 923608478 887886911 902534620 115066112 163384382 977532636 989276121 554570843 897009884 918617023 955040819 904988887 909191711 411366427 484625868 559040260 861774823 583724688 587835268 537880880 640501259 249971544 458038608 891421558 944245238 638166659 702573902 28336983 980972217 506654125 835954679 914295928 942198594 508112883 713008550 172930344 603538207 125313522 927014432 823568579 927303335 485059220 668275780 203100776 588706165 81719481 940051145 594713937 886799979 662827258 697611633 329682145 974645617 245207770 867016103 371952901 643656601 5220236 681778633 704334385 967984271 111215724 847074362 374558391 944281982 280743668 386154919 965483661 985424666 941546336 949243030 256309134 527626556 497316124 867599943 573292272 683583315 395407810 808276931 132434006 896146134 165732006 252382311 44074505 490294469 105454377 909144839 428947855 564364313 197941812 677822758 437810313 819222013 314021518 404419964 425900010 676436353 620846963 653566917 183950031 498577530 175036200 236480389 38128003 787701297 504853636 607406639 559107992 852866690 88831857 855484259 296661452 997592966 640113211 934607072 932069860 997443708 231170537 726156567 697779777 800636223 233668348 312662158 607504725 919223241 998219413 999963274 647382670 739973578 897725497 983016900 111556620 320366341 96465436 608659604 707498252 747604116 663446088 937258769 90961754 243322673 899555339 956094279 176373080 804191024 404749084 839814181 955830292 963817388 416340120 520997113 299677614 679043472 472657293 904309959 197176944 657033982 547740474 863429628 655082873 897621492 508230477 731732387 334361416 534311879 318136448 547041330 29561352 714853666 893846338 967778302 956435814 970141936 565295218 974033186 32123251 946803788 346788188 687526523 97017255 694501187 234212106 403799290 994828644 997756637 569085697 841463820 775066666 996611378 891448154 963278657 670197746 975843374 688085251 826281727 874803696 899112400 531280190 921512209 723750926 762604714 425778403 986674128 727218700 890716007 808960055 859889689 743903480 794333701 547245061 812325903 795012183 843792824 765522147 996974832 259586587 443400710 813490863 959189993 650344840 686963844 210461451 410695976 727676773 846237138 980322318 995700326 180669711 983259495 887962443 944526653 607610403 656384131 785902951 801393370 136535665 858481578 947456534 986001672 82793463 285619010 197771030 870047711 180884232 553806529 857757383 872726360 386888670 491765016 180004494 487853893 534376427 677478811 713998174 864578069 706206985 708272617 97421936 215927938 846662620 928309936 720246090 814772259 263795160 795123390 345774962 883405467 709351816 831258278 909123326 998152254 247354938 260799352 65629280 862774736 665761989 934945146 814662640 966411217 765629281 808574182 915835475 927666999 683064070 930466610 880969945 914344923 744903567 948387480 492162571 532366262 887446399 900188016 761749155 881710962 343280844 368592757 959423538 997950498 602971900 761994609 587765466 779736599 272263089 933014498 233869981 868506989 272517578 623369135 527424627 991680153 805457951 840316662 643527144 932155105 318553306 484339003 797374871 834075380 660499107 740306758 424602045 848366971 557040313 826381536 66095271 460836696 111844487 984962912 551892824 971005567 444537112 534782748 22205779 671800475 467724346 784546390 799214814 839303216 329394187 559753522 335417273 387386298 131587856 287697530 788844247 925914633 337437171 796316231 998053856 999090347 499466134 627321049 954428345 995571770 323524932 384508245 777517669 966835840 280088634 753622621 872166262 887895907 435623776 517389216 958174059 993598467 333885130 583318373 280773294 850332169 341834462 460914856 71938825 649134172 468301505 572657919 857555293 960179641 734846546 908224766 919733805 949246083 985682052 986863538 589600826 752913549 538469145 547308251 803505426 815117170 695398851 919847044 423018834 453577752 265685339 862883275 416257478 866963758 730334332 977495301 883291565 900519717 681574125 918244496 589065247 950623047 584867523 711196642 394582208 773643682 733122466 877235539 969951254 989249415 611524347 699842644 518606143 882437250 376937315 611555521 423765656 698011155 38798873 643676194 145878716 158105022 291331580 734173619 619090833 718873224 491496794 701964978 118702272 825454155 798017854 825905132 524010909 599064235 185962923 461312051 92213734 381004757 487679828 562838639 463987275 743025503 192587063 918014919 11568302 205069992 360303251 883380836 480743914 815797179 321638891 431737741 115644078 744219247 457992917 529917165 673654687 803762490 423890415 943275741 718537346 943843829 226511836 798095079 833854521 869915825 670574269 721238834 402280053 841976058 492526616 595584809 159643616 463073127 124288898 260563934 31916527 104224031 65163354 912470714 667828421 673321355 199941873 745927677 491640366 799810658 650412716 825499303 587378216 676758354 65747564 467883415 695202044 868479097 719311973 804457051 676164829 979362874 511175630 848765943 293761417 308148157 621068391 713292331 777303858 973072620 848231868 861504495 97000109 367901858 687563985 835490260 829126596 907751891 252286900 337942168 988042234 989599069 118795128 288238596 640318033 680652794 957294975 981165704 217560404 300972440 4160806 676591030 590126693 833395322 805549769 823221272 748973602 856505674 416416609 778189957 843930174 917554912 196439892 704950949 465424494 937076356 588278595 926054108 10504705 97797925 339110542 573401387 523458809 859420500 161395622 996606647 261709355 578705625 404530569 855653792 415775986 522529624 581230821 793714818 492614857 927460335 453100096 550405892 506936333 655783403 447658045 649049722 973039440 982003143 893794825 932316636 923804858 955222282 500873072 864083273 488505535 983910651 992214530 996257896 539705632 574355820 986720984 994692152 944998457 947608445 851346137 896664685 233096787 642054127 588885551 827208498 467446759 726916624 935043822 935675914 524204137 766173845 51599205 486074399 58796062 982201237 592146872 937581865 997767213 998513340 612401156 662964864 981299348 992386134 627464330 937123810 940532755 992204270 362214112 752064555 335191821 369750098 542871262 661349216 949775107 984783985 4641753 227559638 789297431 974325844 680887499 949617103 106169715 918669574 482194173 725821143 668328633 691561580 18815671 996172914 477166820 773814654 663793756 703025006 678162151 922685086 816562755 893040197 203592226 920430392 680807230 755752966 660215157 718452988 792962255 966365270 143406860 324195970 797684328 801080393 949617615 957987832 636299184 926213993 169444075 536905122 983983096 991205787 304188688 604663153 633053077 847090300 131617665 765136935 530677582 921255430 568011292 989140984 553470309 665004681 298320202 627859159 458972135 805268666 168689465 742871150 974272826 993751207 359535359 754343595 960752987 972383180 595112996 689932941 352021118 939177768 589124208 938662788 327049622 709056953 523883353 906339257 456223021 976449144 533462707 896174540 235236236 728181925 856022263 932272707 93312478 732816265 243399525 570621538 596077411 758420276 919821727 992460182 760544617 817822648 189465929 552807298 235983493 577075830 621302707 799079858 734186356 781915095 44561970 279591309 987374023 988744768 700275692 897967339 433230709 581838671 101102870 354596803 936373380 988251696 766156349 796702526 349248719 603504109 31375719 591285389 449223079 840959019 863541941 907191681 961731473 986334507 297682530 625791252 794428257 833237325 691624340 703318754 372409105 706307434 439632370 902212882 903190768 933834666 589833147 624439559 103828232 630792756 294788190 528724282 750209754 940472069 237297515 868273089 981857320 981925859 922707827 979299280 496084550 652900389 735715978 850191710 324910759 492216492 968790195 986627513 213931579 811115949 258854144 399458231 713843049 912838660 712411636 841764563 300206553 471192958 402190964 958740678 362650510 727447017 805884807 933053807 763840498 888144699 173638457 276970928 170793671 356085627 330995467 346570034 862184884 973894484 552461745 699836634 889444038 910545814 749234689 881064591 518341625 624477463 664644742 969616892 644442889 785025322 768956734 942479824 871220613 936590305 102990691 870503173 951778220 958399633 393893195 834170256 767670496 858763724 962486185 964470157 516361331 541435798 698714975 956475981 474283148 544109659 154289394 327942853 21562820 327644404 294479685 556778695 325231528 473542530 609488989 704530321 771858707 989959779 578667582 629665488 384618581 879087462 964610023 967834344 889405593 949386780 432615845 540790763 192035544 679551565 333379145 460797450 340572112 554699847 772354474 825698165 840277294 988065331 333014310 969334409 220552805 753848454 157009185 451182598 265848339 580517356 32955427 403353429 895857651 963900155 440513324 956525466 431554661 678998120 430535769 577783167 848315930 949507212 436049236 442280486 295493233 411964271 46502811 431245032 335611252 616034014 924516221 992227485 116920467 757703894 298237778 952488138 782531898 905628958 429005608 566666391 909164299 915543210 552772956 783609214 575986689 747433099 165718672 703105865 615586296 716440976 637520774 702112419 308874401 672171700 591165982 612786813 953863509 987611758 418292665 579773849 540896567 962966680 60821453 336865676 568227297 676453929 650804947 821896605 166349149 218557790 630257890 739127714 76852262 934999286 882432703 986278247 210614134 492863537 326053619 509314067 418394913 994923671 695969463 861460220 638474447 756919845 64985434 807172842 504950149 570152369 387458671 791297124 523292829 771573843 928645708 951164650 837522559 871793243 501516374 588894471 946712296 960081750 399720633 661703106 533072948 788431178 762772424 907448704 988926136 995467199 325354317 395682375 914648946 935228456 700693378 949685733 555500600 946627654 416868618 536151753 632515882 748734633 458946951 658108853 295424433 555347620 31066996 555674785 964113088 966490538 807086106 984591850 619552434 695749637 297778911 707471448 382125538 919383608 710345048 873260815 998966321 999340448 725864299 871835786 536872854 724849007 224576412 538303283 689115322 799246191 82576254 124905263 817503234 925317690 47784394 972424993 767648756 805919262 907202604 911649741 974057420 995172107 438653946 599953135 323370820 621892970 88096230 863961301 394411384 913028803 510227331 955533351 211975662 427689495 13701083 117455561 232597633 586222015 61406855 382149287 653635040 867306941 783038181 864203477 132884181 484181216 665021300 898315750 345809907 823885904 111581953 699954127 898644902 984234964 454670506 965110505 891036686 980523626 618587757 658356002 476633811 608189037 995361834 996451376 53492154 443715832 441228919 989398273 502449693 800862707 669140572 698683730 611969249 795094193 342402965 878983117 142167005 727088081 164701111 907959221 432721465 593945539 213217222 315903590 838256276 891530952 952661361 955941274 959737613 980362187 647278325 972374865 763258183 903856596 742173906 978181439 156104874 970238379 794255771 996385135 264005469 417953433 487525875 530994656 889261524 971578465 467989944 521417347 506347473 591295020 381361969 867447161 901168439 967162209 808621681 964825953 762173034 970004397 757266440 884308794 552097871 937979425 856001077 938181980 447883068 802234215 858578447 983439333 522195204 715253342 237892551 540283111 741642139 965911500 501200544 946965155 674251046 995413833 577230584 928188725 911745383 941558468 845219448 882655425 579137703 963330839 620225175 665526686 659618850 844086004 984533411 987282926 181183754 266283620 549022054 551242056 896806210 931075480 854512053 946065780 825036131 932549215 493828444 525136156 75835376 595334203 502587393 655470599 256717886 780522114 294157285 343917684 122463647 135006094 875013005 875940851 297451545 333444580 717026349 793847041 463833377 738979163 195240324 689997446 688451927 973261765 837208912 845530247 286962632 629181288 245393224 890412872 448265457 958640952 693524585 899210177 756976914 893532656 945477890 989427644 469041735 689119552 960757249 971523239 768248559 862667145 899751673 901156031 531002820 596881234 163686407 483466174 722679095 797491954 860077064 923197196 163090323 202623938 312716812 495298212 824747628 861708243 62272119 515321867 41260873 672988534 401020231 595635771 702605798 745911386 10063021 739260262 338835849 759425982 440622430 965783277 849463626 930829305 357390348 644507674 241189051 606417073 492320069 551587717 671544566 878610623 668723629 947414287 460283063 793692155 520695367 629018359 439580025 882584800 895261683 897615789 971001327 982248093 294459190 480154535 572710948 937565515 274527833 771219349 82843386 742065830 632520695 706602786 256273856 262168121 244119579 502617097 358253481 766607388 920482727 971195529 861768275 935537110 306776737 995111528 573821391 866451658 723808709 945394903 26874418 146636395 220145661 469983006 544573186 596980432 909371288 986941545 830065487 889890838 687248810 954795634 282517226 287275293 368909846 398441313 925147659 989125945 857428444 932001165 549400723 689851657 199288203 921058599 515226906 686218057 388024493 664990137 866501737 882328785 819779805 930309224 570896106 676240010 423839890 624675622 98725840 785460162 641559065 890409194 159755412 465159340 107813939 634923920 89370516 312412776 838791647 939443847 735085638 968270945 699704469 853310487 443322934 796230957 903261395 991796964 726218823 940360108 721157812 785800104 911433987 990619477 480396511 749392075 335250850 394121999 132141787 492140988 961864382 987484065 473562830 830094604 64169621 806355085 629142088 709742086 321407625 710428013 451894085 507850619 33771700 425830408 500268448 636514702 629981806 672710487 922056848 962171281 565290519 804823613 218112191 604676340 92586550 625075735 901953645 932359082 517667403 666467463 913024578 960843058 371017306 833656868 757085097 867413895 621860118 798451022 41563729 536700660 755743201 887028819 792775412 891274669 546291066 968969125 180696368 522234791 871299610 903053679 442322075 698831412 810567253 878518723 709278583 988943308 292726922 973152148 353961696 453097894 698716789 822323847 55113014 430965554 889038815 936243505 413871373 985375206 894440483 970409382 105375257 373116064 970717743 983467720 32433555 550305951 664865277 793778796 340763349 957540741 814702487 871143031 182360108 455271470 460282673 733075306 663923592 846455697 372284301 703031483 938941272 976496006 23108502 543982199 389174403 964118445 425627777 697422963 257912844 315594978 66911880 800703097 698163160 996144726 647923493 724450964 552430258 844559060 285848369 546740968 808569914 864450131 809365860 848265369 848635653 938183197 758697433 977655494 200312752 809500826 580553576 991875231 672463783 880377581 682513764 927691718 6282548 951535298 291584071 906483719 775320100 968827042 698741058 728520903 156769344 849228536 275936844 630520442 744149076 846801241 165574318 794064905 752703327 777285378 274077575 291022804 459783215 962719775 964692792 995670153 34010016 216208708 884410483 952173076 850710189 905102944 123416430 876163447 877318922 932451522 936702618 951181365 928650534 962216159 740292235 884019498 82483609 352244409 429025758 867816981 521437117 939093245 951931414 961646920 738903380 872013186 106525526 720383104 449341873 551143918 97773221 780481287 245145108 402269600 736247028 853575332 921132261 926194768 10460818 166851006 250857336 459649515 464598875 839836205 835502334 967290077 734180750 961839462 625197960 971600446 485094601 795587081 217768999 764423809 842063240 850284501 395242264 786276515 409496743 690991089 561038502 588164099 112577326 345474248 186963714 511846032 269914078 394274123 418538950 546286379 314770572 964062191 517964753 984340587 690876794 921348686 624306217 763801191 107220747 998232364 523887960 658363534 623980049 787368056 573367356 979455391 827187994 968634013 938124395 957303151 199455582 631608291 766805415 898240218 390735387 936290262 625500375 894989599 205880372 313556912 263304963 265362376 497182345 723791687 260305429 435139224 924323769 940208715 983302888 994369450 191013780 940863804 955765473 983113255 36373214 333846643 504471910 671842188 801092722 900379076 201902616 892108660 610250123 610698400 734280331 944165505 489003868 500352883 665370176 835779366 113944358 331801646 211978468 588161215 678311827 833939077 998150194 999386105 247433017 963825767 218212763 664508918 521335691 546420161 584506789 867633605 919721734 950481735 144916849 982989845 353152688 535810268 310043361 806407577 48280981 413444562 849987055 878603594 848377334 869303951 816205171 866773094 524892622 881699442 935773897 965395481 449668574 772205180 540038157 689227405 933047426 971996723 896958030 932863531 156790728 716914401 938431790 977851189 563974183 670213187 259693440 739050638 261374146 818503117 373554632 615275855 13813936 889363685 127387166 809327218 531870107 962352184 45917624 850344152 37077483 559646730 939193869 948962262 344655113 769414287 165947791 257963070 139630106 672899618 984503055 994038796 307823481 427098093 522625973 604090716 202591381 861901339 228251259 586925443 815683290 986868263 948875314 995379088 948540608 965263877 176078347 327605125 409075875 425451591 328684158 835293308 166363869 550398992 646758934 879918859 709572652 965937084 434869560 620698937 57252192 644367468 736770715 748835212 117673852 248439694 371638312 822982864 803859541 938277169 388221571 575810244 599215138 894939568 242994550 264750074 708404100 870313851 385907971 469717396 566928808 993396680 859813913 937436515 196224348 434680120 737160156 760295511 709468196 759715942 185543175 431594031 401967976 995896618 763484813 923055651 680669000 713760392 374354676 515871717 280848010 618929561 769955523 912294014 224061777 897460285 489177859 726898718 107931263 297660946 762251835 812875849 398227827 745931200 628632398 775238091 708192511 749287423 736376136 970554242 289706296 801820579 78496995 577613385 443087450 691418539 719665089 795791591 184533824 306386386 280339519 622431557 391391342 959878384 10420860 820288538 653143347 873923505 593796637 988614556 517777867 933874149 59924383 340724021 340450590 693693256 872327759 931958749 308448854 619593812 250943574 561134991 294350479 329567690 225972291 683481204 757497816 868197714 348890571 424949393 865695071 888786076 840992734 917485479 803020905 851836463 532632137 672317963 999795055 999965094 88519671 351979897 35768884 200761948 691903106 710187588 460848751 862561945 602243195 629949922 211999978 557947927 417046024 663335947 809638311 956395381 819601384 989961622 620383703 875880529 113731480 659671854 498704338 791202283 254763428 573496234 424054731 728969666 62342842 898123456 25812825 64739992 769966369 783564507 171854980 836194610 137589229 864603855 521633503 524777411 651286989 941768410 468402263 837308741 629313432 702334621 314793875 346886130 20580157 87275024 469979523 955507127 749168633 937764588 784565612 951829109 618196875 780652436 339143800 634588871 474437242 755571488 911194346 979311834 61559667 803506789 821142572 929247141 478339473 889922544 143433434 246751567 881105235 912101142 870178701 936839484 507009708 708577267 122041747 722407537 6333662 587195797 569309670 876835671 190450223 324564662 223855868 399214261 303600532 855211319 876233122 883952850 198663250 770008738 702596434 897276918 786943680 855683941 908653346 929831810 96906779 748157697 607307701 711543989 757983887 847387937 633928910 806963346 994011745 995034670 448452999 968661164 633708049 908228835 463165163 697503713 351757566 550816338 556529395 773103828 727531052 746932115 291455000 526982324 541439959 837414440 925325204 955728748 439142017 846577887 482608351 599368405 431410241 949701648 242353370 431695501 387252570 875113517 606337876 986146243 823160268 853284103 667863291 868728393 544855891 727761568 114093534 414935149 371760901 396861935 281981997 339478354 989547993 992243931 327387114 585935227 195538118 319193681 723769078 896713780 427173004 554312626 36934263 348631925 600020998 932433454 654700028 837761560 833055014 927081917 998411131 998465303 541043553 753317919 950209476 983522105 257862659 305255444 714502526 855320178 55179609 642708458 232415023 967656353 454394898 729716660 90359282 179913051 261849012 577416525 906531086 991813650 503354996 795724960 73482707 922516803 111640876 503946532 43736899 710135052 305669795 498759051 351720735 603129039 300262778 393315322 296541431 588927196 221546038 718431222 711989902 811425910 95259432 277575528 757329848 945963818 385387405 994215462 857159359 991153436 96138391 726515602 326008174 648583708 83924430 994331487 687953779 947240061 38741209 94077765 178380400 594525940 580652835 699524278 353010828 463863905 958956746 974030458 293348207 565257588 532804853 549989602 310921676 333696512 48729227 284086591 110764401 351097086 971232149 974435768 418795652 940945800 11775263 522227953 227851605 648385672 179529053 854108934 324546987 517423256 766525068 847213588 718489538 776410155 340322889 595442968 349662533 491523957 83901136 755657230 774200381 987508945 577809548 631785611 167365809 304771039 262928888 828896948 363851301 775537249 659134392 784814753 773629777 965903262 695644330 892318391 880260417 889590166 62724076 900375729 592863662 960943326 366028021 495528369 388161244 508781605 46673089 894938018 449254904 767941487 678083813 769797137 646775368 826816103 774999329 940994924 749242185 905347160 354809767 882951149 377333189 528279349 443313725 878266617 19041215 377397472 510446259 647067620 442179284 677615825 623193452 898707743 773221379 883736071 199962848 968689417 873222272 953193963 996551622 998070961 371192831 757994529 516139184 610270564 430742564 809003768 658927992 957559381 203050611 340658592 803842127 888383850 468881230 573934345 774487963 942321877 647085149 801532177 638716976 730117713 707201311 925437758 879366600 912834979 114329320 438632811 695773535 726152938 834968519 907260184 765642023 772116427 998726184 999078133 458737370 799473841 445047472 516482099 997380198 998842496 319487573 845855488 376970396 670703802 139445674 220397282 14369621 869195549 233742524 305502414 369969399 541506079 895845604 947887485 464089354 764746057 222201011 370678983 452948360 881722623 77690232 626429242 924401135 974079110 703767003 745004072 751074069 918425551 447512331 502507320 1427735 134194733 455101962 647674885 933198690 955466827 418382091 731600661 441876800 651052070 702376392 834361160 320440556 442428094 868563751 917176391 296437921 439665982 342768732 873099037 895622742 965107383 474422766 492007384 770746521 996048400 589436206 955370436 396347118 803868089 637384074 824079612 96321245 434718517 787113762 994820673 156020811 389850542 272202997 288149165 937752154 975380107 666806188 999576690 151329341 446313790 889551765 945713138 788074070 850907046 555127566 940380297 558612665 945979532 66844681 822933406 804065539 885482904 303155302 917068438 884821609 917370006 665032674 751293781 637342367 711837962 94651587 745067337 432239394 873794999 558463735 913527257 144270037 946444233 885761900 897337457 646211004 946215076 846170319 952343075 144116559 774608490 637550639 806850871 613521014 903189501 211990419 644565421 897766047 999192271 446895206 927671182 11758062 657974325 750678532 834629103 342267278 853773776 254765669 263122111 677921930 730314196 628892447 777311011 655215950 660663984 217467662 665871776 759276931 790390197 587459976 669836767 266153841 643627160 233709456 429166368 502741500 727521535 74599567 881190361 771452541 804976825 265320760 825827877 309999001 490024028 55869419 808061972 752268891 933791453 777640829 888566108 625949605 938181858 697548332 769375283 667898481 743958713 837637583 859339413 932014837 940106764 481841909 746520580 951455146 958134125 767393434 904190103 214526290 432285682 126324888 551447942 906407053 950856320 302474931 735015168 480082878 761450331 683986292 855157658 269113797 718503781 763442205 822179509 18134446 604563600 207967630 721970412 66269398 632573917 480619787 674613729 118900970 181152759 178933481 820371046 970954363 996932874 732173245 989245323 992927915 997605550 459414592 778137986 995080227 998045626 452334015 497325149 910881808 944421280 338700081 573046550 693301137 697852009 172678804 210665507 215564516 606551497 710284410 955294203 791591798 951748988 693110688 748384832 303883075 453265544 141547494 328626452 441036334 798263661 319156465 993871744 940483001 984712017 101344863 874234057 218186725 821719561 223573905 820680032 566353624 614835094 823412363 972668113 303593652 590346129 142302814 537793943 821244920 965693533 631014251 947689330 814139986 869305947 110255891 203311890 825713584 859632201 75194181 169262137 3177446 617551602 754845595 786351318 601697940 641206857 266665285 637507509 952513541 987420621 855877953 953775937 203087003 541831283 884367520 892194292 415013338 797984269 523559488 669626599 711762516 942909198 620040017 694060523 837422280 912221032 884302110 946324893 805482165 905099679 893824718 910826660 921102676 989768299 223185072 959785806 406302912 582984233 556709493 828472116 631660159 796796499 756953034 784448244 196286726 352956412 875409850 962243564 260439090 483460928 409981954 965640642 459013752 919619101 553086001 803832309 938688056 956884939 288511979 845604234 964775064 982585687 549483541 772336199 819893902 824956326 496189372 752610828 950388462 981491721 141511127 932898277 776357198 869810415 455557248 863894587 364209202 467004619 572488421 711139663 499111389 978601671 615538589 745790980 498036335 869900353 594114105 862306676 21577764 714651167 361766890 506462625 804567152 947706728 149800929 855743137 200507236 563502634 958538885 970553576 381012112 843199473 771832742 918175950 417074939 617253924 485393881 581814438 595789429 997507153 880132083 907718982 877381352 912707969 775752006 849146801 752736174 790759883 357534482 572955474 692668384 773767671 295933901 800754429 179823933 480173170 212760321 811503619 262810203 865211454 494330681 654207524 581873033 778756748 859289078 878900083 626305396 910220356 799212378 816819533 395310825 493428933 765415297 990093715 564267928 922077750 682904632 812539061 488324821 617228549 524214963 877030546 646404935 887549681 280686873 415812007 217113724 981289743 342160598 373881649 12389616 630607062 216181360 383629378 513788723 646873673 253033872 888838251 153211753 620995547 381769575 419002917 765967925 887769132 816410017 964230261 204172774 321382723 328871198 668546723 772919497 920202707 578663537 715315425 290675705 623615872 431057365 723334533 376060499 976127057 124914322 318028795 430629705 945133407 987375399 987982138 75310945 733134288 796570235 918714942 189242900 653862998 950830725 952970875 413041131 422948007 138759552 266447285 506107551 793706949 950920111 976212289 951099786 961039750 553032771 608252131 796904418 896384814 681802283 908952469 839501608 912389683 918198865 987064489 778010741 877392269 848472187 885316101 697463311 833115423 157607900 634240583 702399698 783310726 653276210 886035882 447732118 516145457 493505458 525035377 595971116 821442836 408905648 996730110 987968951 994381566 716482166 819426653 814901373 964078224 467007353 869768569 20939294 687370728 912693746 946696454 420239168 860875685 809000005 832226124 297162047 847052733 35542367 57208080 905194017 987265452 501332626 851740243 343877457 577223862 716674381 956003051 251817922 826304883 846353276 998198687 432803307 535475406 157710481 600970423 631710183 968147333 34247021 264905604 454549018 591150930 396375117 496820789 883789886 952162760 948578947 960406781 417951829 865826238 72032298 187718950 804074416 987046057 543732235 894434022 639216696 816592614 965691151 982688650 500362922 833355626 14841475 127324722 943184141 963298072 672257707 761298541 47223744 354727760 348992042 776022282 664294994 961331359 229828493 414221990 817312881 990655964 492549288 963163967 453851151 704777611 279270670 485307208 494958446 882834455 928507672 945506475 362523111 825250377 509150523 843051729 942785974 992433394 402513062 587051175 490749388 846821271 498561008 510850188 593574612 889283823 226192011 472570417 188331618 486135782 670554567 803356587 51478983 662291269 596073125 758879941 531088016 831456198 557998089 849509153 543384368 914944619 861673934 865860453 861638129 932481841 543540917 785946909 545268553 633400674 227997734 505636656 928329524 997821204 36234514 470491037 476696551 985637964 758320910 759483897 444642612 617966522 303531211 511680994 359042085 825965195 348387320 836826916 829798076 928522773 937081687 949021590 508717808 666434570 235975608 399702916 348496395 803048854 617698691 947205924 154229430 276864970 146553945 209021755 488320407 555123570 394989790 992363466 796621690 908814471 417629265 662549993 214346708 499253119 63460559 237029880 987263264 994772905 595753643 791001901 294088890 460643951 711643378 755111874 918050134 924625526 677828966 783050208 960825289 988846563 736080984 757843744 70169862 914977274 108694197 394378447 437206822 505805433 178234368 949575904 923826903 984246950 274769800 540017391 920697747 935722635 36002883 987440121 651371590 946483265 92764094 439156815 719344092 904746949 271784182 628912603 643347814 679016034 38071278 594221240 465520409 707446045 245447458 946562173 656803774 680881971 917455979 928828990 550717665 638969600 372515406 395164241 297887708 707708389 507430395 894553794 387735617 598987311 50785994 732563434 366225600 531911335 806822601 842565009 579693576 763839963 168074376 835989736 228882823 844783871 399466454 497914335 255039339 848082320 65094173 317735864 643682412 712754112 305427779 492116251 692810805 812787480 173710622 688619144 758914889 924168520 112015768 918771304 544910328 781825424 976143118 991545582 611454892 940211043 363659589 505641817 191837644 361221536 635429745 645671297 167772465 612299142 237841088 646173717 395022162 441278186 370424836 526573561 889290305 972000337 399114417 528609620 489474846 924848320 878704322 918998649 795177477 884261739 966033733 996577376 165181269 913940753 482913088 673429147 276908639 456945321 649555684 795792146 71824122 163044671 284620992 488248026 364473707 773493371 103592784 719867285 394036153 481647391 69151984 724172977 301674745 437944283 338123309 829423540 167319839 764198023 537778853 769676654 534041449 990988948 898766908 917106627 974106420 988493399 523883471 621023743 851285647 919484671 314726112 527823864 271938427 530412606 488698582 772207915 326133964 482623756 844939317 917182969 956192069 978766388 914890323 924370993 284100386 915566280 893818574 965956538 234876439 766618077 39204855 636378300 328207818 546345354 609084301 939537570 540473483 593392545 847377314 987923533 922987718 940537948 525078997 664450373 469590438 602628377 657641521 894667548 45369306 603413010 66676092 172371944 41911845 311313388 497286135 556566215 111854624 949352052 365391818 695638524 748729724 805607629 373380663 377433827 988123229 992428169 78994794 612668303 965079155 994858933 598185574 809279027 468707364 813319882 580953896 604121173 91317939 476296212 434611052 924192920 327298464 681180608 990882438 996516025 879176939 899813629 279174679 403775147 870800896 955633525 944694484 992250735 868943637 924812492 705497954 872208465 805060870 900266220 505870235 625521219 542030356 738241599 719370477 748314942 425988660 851929222 552886004 553647701 868931949 966886617 511174474 783829732 333571499 665054766 636417602 902969546 102535831 349728506 810623444 959064708 413316152 688649659 476478273 542573331 413295596 435878032 698763152 975268631 529346355 779171501 81238686 744753865 600225640 914168940 647832742 828122838 818652445 831501790 926379707 975588699 755362477 972395756 112713208 229529632 104057621 154320377 805838965 981624089 603195258 772243264 362084262 740829174 23085866 511804724 347354675 451014475 77973048 342338539 498917716 808765012 429235724 896042764 91603661 235430576 364798443 956179674 74235479 916930372 674220408 752760292 727511726 940789479 586150558 913195378 235090226 559672026 339227011 783730257 134339506 871345303 374873473 466002474 162398899 560877677 260432384 401301809 731753151 909061907 181827400 705675536 423291770 916641294 907544431 922355458 339008192 589611540 112032595 765601373 171097990 827795906 700694708 768904469 66177042 942637216 747636687 770390157 173961635 814126069 490806051 715057192 710990616 882493772 521649351 615416121 135432665 638452710 68259960 974574998 77622630 939087907 954174341 970462008 684504701 742635590 513685183 656125309 819232286 830316318 545891544 921642243 438885996 597521053 828370908 923355790 454854995 455139168 900306003 987233676 424516888 773276323 299738913 876523744 939280147 950178413 653320676 827642195 308210478 768268713 280227362 972084266 768180498 973527268 600666307 875957932 342628331 567096821 378489943 862766210 343521842 946500755 883602909 906337032 862897340 966454007 772883375 845605041 146321920 797736173 626430113 984637678 528090664 578945128 200467478 874744219 824159686 882005205 769345337 988112024 147927932 665900475 412148908 888655572 696795839 977158966 488877869 633728879 374793411 489717888 651289646 719982898 855105928 970752965 166466784 327049049 929931555 942178618 33213970 694282022 343778632 946465812 116512316 215486632 503155431 513164638 430218876 864086397 457274992 762953662 160468871 384881148 751826212 943871336 867475047 902163393 865366285 984915283 592068264 987998346 158480594 358855250 241033091 549011654 384898561 751722142 608681466 800248756 192458720 574778858 733899169 803835849 225956637 345234884 885035485 975625458 462074737 678907316 959492075 989460887 584124922 959806626 332071743 635342741 764155402 966718993 251428325 554833457 289525516 642161529 335869733 433721464 16657573 259701136 969032209 983952645 52015011 391100429 286813219 646188490 230084883 822822355 581706562 986991333 284744990 505974096 445124585 844397351 264766349 403575226 856998476 860091231 819924410 891658469 310499611 809972608 483027587 915347500 380182245 392458656 212999517 991773256 890999443 950308675 315528097 883286607 163758412 790698531 965820656 992527281 664147965 954394933 748181243 943938283 689850757 896646997 58813505 621609328 736505667 913326338 102755652 605509524 330034788 675319125 380541833 381943776 580915137 696631765 482608199 538644477 134067460 205829090 858146050 859630130 916619482 974486249 346005473 971556177 18994717 354501486 417690052 749623184 379050489 946767222 4730785 915236214 17850886 395982219 799211488 870535895 810213102 877562225 629379563 714830364 119842058 364336382 409134437 712708625 747153722 813579723 803812686 994650331 216905572 893615644 939995867 950972886 744487805 893080911 65225723 784079349 311060495 573884525 660087787 709827353 581335133 935602517 361661489 776281333 366376547 552049631 229210587 633342454 780888922 857862795 417990326 547078650 606453420 680351393 166007901 759921052 577433377 810974905 335310217 796881182 876419540 913245677 53234321 787815271 385881610 726944127 18511195 354490741 528471417 693995089 53074018 289747944 789947178 885883677 160536250 176590541 781075255 998654632 462462108 948446956 13126712 447503882 669473337 792681835 121501839 758905806 554695764 639646672 576153873 734323153 643375061 791116815 824665165 881226602 618725571 637796837 353089300 468056179 964984692 999164978 497497360 591902286 327345300 760358216 427106027 651429141 515125405 764067608 680096488 826692374 571480240 693748888 304051482 400071249 527550810 685954895 129015669 486845918 800700484 892053431 72694426 177406494 974384756 987306577 605110979 889707014 981430284 992636909 954199159 985076052 270727067 272237843 99080321 712495276 496345062 777102663 88749925 622232136 454612776 843569499 366875453 504883068 548864649 596600421 509270932 775739751 215688510 591937555 373252639 684098086 273518993 501023353 41632601 785148964 870874712 883238377 335197527 725202099 854101008 948572784 83596325 538077247 106387982 948627197 383373003 582184861 934878279 949405042 472683035 744609086 54688253 125644465 446519581 525691532 156571567 549822527 675086841 713859250 325357327 968957382 456878114 490199581 710547951 786407669 26835252 527082296 985450121 991564143 188757576 857353507 265556038 694019717 123676560 128113164 795165487 825826678 711028590 925706692 824041409 922690939 621173756 928100552 108712173 203976830 33035122 565528734 700391954 783574300 538138179 692575815 465165398 731233970 555289942 769574731 493741394 632934774 583808538 880415638 196373450 539648247 10527206 968332144 705506086 823768502 190798364 997760673 218010059 242808463 486567814 898070545 452542068 631266770 544940710 613353030 902192030 993908108 986326908 998528498 78752144 84806559 292032113 708013941 355582249 781878162 370062402 557552075 162714083 497348095 465760369 982837069 568125114 679559151 290268759 433649780 695350358 979407935 999061107 999263890 586215106 687280211 606492016 872180509 897132219 903266080 688175887 780934646 831651725 885025726 207463683 963832285 370475782 752958117 862925381 873025178 631027414 975478197 827086208 828481008 966425153 996521011 455093230 807859941 98307615 192070968 337315180 554520265 150251936 411431043 247585851 931466321 395490036 720697208 953550743 965575627 21784734 90049755 864659111 984837300 677840962 765292099 965373373 977612526 74724978 238217999 857036868 867080880 969211933 975984194 580325979 922933854 450832299 504373897 35147213 566278660 514405744 631893090 531650557 937987675 761301320 836136734 490807817 986029272 809543649 809696598 250572575 946778438 541357250 998510760 822408081 945407744 233489216 635882966 54152499 833394165 859961862 958842930 631591327 684275172 228709269 290601756 693062283 707436882 389693524 989457754 125600474 397141071 323965589 600591163 687831573 700134139 891547501 935338987 661781816 978299149 960195054 967983939 522331914 819833737 70608748 681500080 903293849 939658650 120655488 490555012 809252225 907232403 292085660 395010606 271514811 823125376 187396183 906807739 514015484 631146658 461874650 983118264 393016503 504983085 338248563 738024674 566042169 931197949 720486527 844613297 706812852 926949137 958171203 979420449 76279918 865362846 462937999 777347960 851291794 866782761 112714128 221454334 860024785 877304191 536654919 950265604 752810127 910692706 180177085 276755505 979684809 996083972 21688723 943525721 224940972 775729929 420640115 492382679 12145084 762225213 562051902 990284916 630315166 897621378 572351113 658812579 610595830 668526898 81695614 967719221 179124236 933537799 929222547 929330978 656469607 918544025 870827626 993208877 558745412 718559686 817441811 889243323 462440143 884217535 961727370 964939530 668200908 944763776 650472643 819119629 845102001 848048643 92656446 523746782 462857724 477116823 894904173 974088434 667456155 823034423 872497815 879620143 936502337 937288595 827194774 841685794 993900353 997559362 768713454 885185670 642405669 905528619 203615680 775783893 255133627 667332022 871828161 932765153 9286715 236633322 650824941 960188804 985012760 991688312 477484776 983551804 555237319 786254061 1701673 749585397 561211809 875438804 562994282 795220318 375224003 393091597 627696131 876268614 771723455 817802686 596677281 807756456 539660689 586335749 74765657 949174980 320934179 322717369 655677565 861332647 916351612 978312772 333331823 955213899 987439860 987682223 778981073 882649872 971645255 999623582 929272279 986197213 813078963 993456413 178045566 958842190 872455783 916618891 866783716 981046546 30989728 949397289 667935808 951982080 749000291 758525713 870599334 956403760 282561627 980625795 971430437 995119870 543245831 901219337 882341391 995191011 37758350 986321968 227430798 360180771 803121345 871794180 396060758 834461598 501809302 909091338 341061259 488421099 896257902 923012014 986970005 988593404 172552815 430867959 162314515 534783625 736493958 771105361 414002170 552817680 289515208 523548773 50895462 638839237 486358850 825853412 407051987 654867497 980794882 996383118 324908262 784823016 796042567 816631781 389133589 908620686 262307469 449040288 504309832 602519301 459315172 650042489 36412610 912770820 24756794 879040329 143633208 148417293 559943069 869479688 146579158 239786971 284427127 821357425 531799519 886195625 258099581 401311948 899121863 980389707 345364855 644590236 94659570 641286852 62804014 816090628 115233317 980230982 509816310 934148559 592544420 907886076 798855717 843269570 700317887 776348997 824367438 942483886 358577928 821814654 530650440 851485081 591441513 807052600 169725400 421524751 186335523 199709506 9770202 378324785 528139737 732820610 837711694 960920668 471925415 912927976 80368115 712852528 670836255 821932530 9158105 181518818 92861459 753714699 496069967 646263209 367942106 811842008 575454999 764555801 688272667 910174645 382220022 665382009 21029773 766300812 335413209 551305340 868764742 946922216 395498809 757289622 916006361 982043401 2539167 907279590 815671121 830740539 739431641 827186842 211318284 283834345 540904151 876818157 410982722 443036341 323736737 774961732 319983477 827452347 656420858 662512389 988350580 990793105 180602347 191734854 421402753 581837563 488377041 800129894 134907829 244600253 534604900 803208709 68104525 613123081 847736913 927730337 176051779 282418634 821460989 910404570 214586438 754895863 992985430 997541644 813639340 912378354 374562000 723925438 568363091 747291297 529392040 721231360 738522668 890001762 729774109 943320005 290009187 719894472 489043844 849708888 201279768 968940782 356938352 515512842 68596599 170497255 481084152 520414300 399553405 593485638 13007186 727593152 978067710 981815525 524332280 596560229 26598744 636316376 1438428 605219613 287778617 833844643 582495515 769645089 368645535 519999024 167836200 900766084 793037480 948014394 505725689 958290501 938385743 942472950 48167367 823887941 259780253 567575483 767680390 875252821 892951648 976121365 308919151 539520536 71905444 93041275 178700579 316809766 25380472 947186850 989747915 996802202 985609229 993143918 867942506 906876880 425420023 562639219 633364772 751773706 827065042 987304721 617027183 747081509 359785565 476429450 583461312 874016448 368801253 837652743 406187013 850482433 851084315 948390837 86841970 106832635 359451068 964570785 117441088 353230104 578255683 779269533 570695410 571022129 331912894 596081703 831207501 873215702 364767831 397853844 299844920 601391337 50961088 791141029 55412023 434297903 834357975 892633286 903539555 952706451 558672197 871730254 189322769 687565148 361133673 586361719 659246658 669834543 234797346 324250123 729613358 743900037 511240175 558811924 950909332 993144601 145666774 722412018 985220757 994157180 299977380 611259261 638589826 842650212 271769354 547588921 13052813 261067617 512789543 918700272 612765301 860803093 635013720 768945386 915198657 939450681 655549355 719159882 203449026 562214871 980148548 983059370 928341486 985462000 45580713 423243391 560512437 696623050 854665672 891929037 643288600 858830612 734616867 798787503 157694632 777227400 161290846 837730404 31854544 664074068 828903529 974339914 377410560 702162213 709987947 738026342 358632742 987573959 405773176 902688985 513907929 566860942 34362716 717539634 380729825 879350705 635867802 841452590 938863468 962242461 129658045 525244306 118467365 783706466 290342064 796498369 834310577 984893141 609250479 829508994 243220811 792325922 38043931 182010836 153952273 202434821 704522719 933101599 352114140 355998752 913549840 974020420 69843218 247851995 793489272 994196795 991090352 997216294 952596661 972284516 441210476 966984514 713929650 863845605 905455875 922268222 292795159 403572310 283772405 437170375 800636978 802654807 943815849 999340026 307794611 309242666 206582383 263128062 421387920 776020096 561937015 969311301 840685519 908520194 361614126 826881002 713278118 778583352 794310740 830788648 818432767 983763675 175276492 484251204 413999418 589830044 983119065 989195669 936320266 984616706 737486131 742224354 636465710 940774753 426652807 844399254 760319038 952407466 550617278 840235345 983834603 990191841 603708671 654747048 490643244 613318080 199673096 519812538 602006813 629997951 214102521 860595422 551699326 629813247 674699648 857819551 6473986 900400840 495170280 625416635 702405763 905081052 183390332 529871251 622095886 787858719 210096856 787869091 887940108 976929834 492791911 923964455 359806633 570009477 270742785 775229541 158962428 796116605 411322239 624859585 29699409 688023534 881976143 917237523 10645642 77202274 407689065 550203865 807240281 957941088 672898418 943047582 683438065 969347926 262022540 742011178 53982399 120162833 494262180 761711144 774032949 839447091 27298610 269522706 966350906 972881358 60126368 668548233 229784415 417378774 352256062 905890332 28311719 121567510 983217712 998372317 363480222 672744945 793657157 991606097 965957308 983664579 719981766 824996209 852002901 861659267 361337475 535969054 160481609 523359325 592414955 902959607 478470234 684270888 268730411 818993151 539391613 786021493 936399823 991328240 398132688 474967791 293032677 951030271 444377563 867244141 761257229 914164331 860343240 960923531 916809071 941943980 694311841 907585331 703580285 876574430 644384534 656848039 866582663 968103011 943987484 950838534 711404865 808442507 117764240 501483716 559129641 623381473 758886704 763489192 112095881 757405330 223997325 760655859 304447964 983263203 774187542 926019239 891122266 922800678 28422233 475901322 953845608 982089578 249350086 558290532 153045949 417580016 561838067 800855360 329284936 997769440 464967328 877838064 919764695 981722147 123618705 385655719 299402251 367157494 856148317 914724037 944416539 998445899 54606353 542468478 909197689 997499820 600907550 968530710 336217338 989191767 171807722 615674481 922960726 949262584 171552210 730395478 689783488 959915993 180650549 704901545 800307221 866092587 359956742 921827438 564729717 873268463 301055689 891997055 668227727 680572017 566967327 897465684 396493418 832626328 233119298 714813699 386892700 976363948 244449205 975606839 439121544 778937978 253413926 986040560 934848823 964064355 456447091 923245777 399064629 961924359 688229178 999650558 715605460 996430351 761217797 941601486 883343599 890242302 37069869 533731681 446813060 632382537 433433576 652761386 150584332 633904748 22335787 375891428 239095992 368278878 611920499 955830216 190444240 390725554 723296718 738250043 380273301 896501227 416584245 629002196 131261626 305748099 491061243 672509099 601370587 928001742 272109348 713448783 231907302 268011749 501090919 701837663 637324679 976367331 847216879 858730608 397598062 793287836 116627715 509322251 890606214 940981394 316757105 917833631 391306417 678876766 386864226 397123843 807833540 808399625 102025304 366601228 949359327 974141149 141568200 715499314 285976316 400938469 709215845 922176418 317011652 511651772 586946760 701281559 255362481 910072894 699810772 807618537 612303822 743632953 256796642 669554193 849701122 871997461 412335288 541299752 648192977 682636234 620134269 917170659 992570183 994025990 353163128 881098154 137598597 942499860 831646251 879267744 55705878 633067664 629890864 763063935 947849601 982171298 209848769 431774117 204099252 669458087 708042462 921226311 901088810 997191471 566366307 747664529 906249937 928428878 736513343 988430753 303909220 522485121 759081952 812758281 723584905 769416181 525201870 981899987 273624516 645205747 935416947 937493180 795310568 990728609 602850458 861923933 257653999 408145354 950303223 989889755 404838881 915795158 106957807 660198368 452969712 534460305 712762828 899422846 335268933 478549604 704700722 939100219 267778468 278941370 80543488 407275936 740233935 775233741 391707318 963486169 538405246 774230698 611894265 754424495 168489619 465366157 533864126 693944285 752149759 985270405 379391169 509579740 297092150 845691024 79984130 542107557 223742832 244045376 462667647 673739006 272275560 827347160 65775282 911312821 494245029 798836883 352834246 706763328 184947147 777868273 919784292 975362320 386574029 891680999 375355621 777832285 822752047 940668909 722639211 773639663 890164180 965658559 930394509 967921360 611124125 923689220 997119493 999615829 48486684 956280276 285054943 321260947 633164890 637014980 135725002 454662063 368085351 708359091 338782089 479887349 689279484 928667346 693606840 940858540 252786716 885452648 989774208 996886703 202191333 491335444 217317271 278712783 777327227 893787988 370192630 784447321 412256945 435226330 330915544 338423938 399927512 426334854 417918231 668907754 828188432 959978774 983811400 996434301 278507680 468947159 433273957 934253043 384325217 720109356 42741369 383965626 307811195 882396192 532106017 983740538 832871752 991201745 322054928 933402933 133025256 168938138 700819020 710520398 843486958 999082753 418719899 644138116 132956098 360402999 19045523 675846575 149837066 886235827 78370645 816963491 409197080 808007324 718726727 786356773 587020326 796701284 801778015 970994656 758263281 926900234 665821480 710935163 655258843 765232711 461701919 953120001 643907332 850009108 696427323 713237153 407514141 915229166 527105848 662915138 447243271 888267964 698394351 829176894 157047019 844638433 507808559 645999808 59315154 807914269 88584183 979088480 22726436 672152509 283439510 608773319 304239601 554749455 470351406 981103415 529637286 974631129 282140200 327356902 163576317 405761461 850426518 908956073 734848320 777239357 912005820 966295842 929290820 934761750 157923816 954694779 481026792 623967125 578528719 700055255 559392278 675009534 316390439 486160215 196237089 371184404 515097597 761243583 318518261 812701958 395137923 535602829 435924116 915701403 774786990 875316085 94626775 958089866 957238372 961107805 838575504 948948639 913160559 997540063 613392716 645576520 654984047 835510656 587640396 959576638 69377169 729291805 154417329 331425803 330712559 357636208 757908936 956021156 201400255 441840875 466865594 632729248 909354763 974290289 824015172 836400149 549949855 659984994 64840329 84943897 939920247 945937853 247832364 629329440 821707722 943121288 241573096 499397555 838414984 916496911 214983519 611924603 301541319 426350800 21074396 614236106 905003942 910339201 584984684 620411011 862916296 938526574 585172057 879183429 856980659 965160227 994004187 998047286 148413189 950972284 601219416 624661590 101324570 478681193 218124044 798540756 174457798 178433930 297004301 648268010 182137592 268988130 34222945 730065611 151429729 275278258 367964335 851637623 531502474 782571546 950739519 961788555 17810448 815839922 644529900 927142192 711536802 925246927 571467770 612839647 608477147 732479170 860290523 980018170 583618591 616216069 613741522 946923248 812639247 965673452 552110403 960881909 877278819 881956075 940631058 989999375 582031060 985079427 201496808 945192971 48387559 312569249 784006194 806722390 951446659 995485441 815861905 857686970 722206501 930940640 582901129 954911956 934981558 980892496 465748923 576543520 558611342 591163894 871144044 955565607 535633744 714046168 634280537 751893528 59735905 845923526 928144065 966187723 738980571 885507483 469512605 734440478 787542281 976593551 112980235 887431694 986384820 991323084 780825041 794849587 3161509 440679041 898867266 944914595 270743830 271038568 542193248 885655468 824756601 840905235 710816366 956953204 939733328 944145298 345375242 352536759 78009450 629705794 142330703 848624063 905452472 910142787 64852990 855376197 122543519 485089381 674133963 720473095 789579057 921480616 406267904 642136202 911599579 943528488 61630950 694783695 325112634 676353173 569791261 623740168 659610527 752911943 331709903 550560058 921484018 934080308 456496317 674352142 447333533 913962404 646470403 872196175 782528513 972607194 152459332 378990494 886633992 944495166 932167322 968533959 894493258 915916469 576350649 891066676 54732781 449303096 71604813 425692657 988234817 991081987 710753268 829363954 68950216 495910120 245129888 841836666 956461335 973096459 144500511 208832766 514780919 806039460 518718015 742573948 532238380 876395436 62976488 190780847 991034956 991533528 379705886 868420891 580848330 793940596 780343721 866677995 245556462 276069313 276205943 616916495 413984235 683073668 483029436 511147538 527564752 797270456 297733493 865305171 678456661 977975021 155614325 285545858 426408938 640309745 726450232 999787489 214249849 504844674 429850525 542818822 313029772 559494612 45137528 105371614 868739320 989595469 767468993 886683437 746468532 824116296 433627264 936889875 634744437 691118074 338776338 386143747 86353083 536893173 547077792 601478332 639864450 768669953 848324531 852218004 450922433 659948842 51759468 729887082 532376567 723807918 69998670 290483540 364787556 824508783 123816948 683999420 57116314 507996496 895318678 926919595 41624075 927287920 600816843 656428243 604923525 906791089 766616638 953895301 850046547 965797254 87487986 484440963 240815776 545244816 306497900 888542148 469889736 983687556 773160912 880769910 633052259 903001562 353379763 883208084 77054092 163394274 886282833 971188547 290924445 882744544 701309563 800297952 413325389 645510997 278938385 591351053 141984016 587357184 198924833 621681768 247365650 533698790 946426539 955270860 910968567 967290201 199237151 235262520 520275637 700020904 53363669 122415959 206085323 398876216 376433546 383377234 286150248 784914610 129742737 130179154 581078656 877614045 264297495 270412784 561110409 795565363 688230920 888080056 298247203 339708951 770775025 799140163 548888237 551626826 8742216 438454027 860537103 951859930 137962934 390324436 992946521 999503218 625611986 812201224 721647249 761357122 355304660 468645320 716480463 786392318 277728287 714037083 280579762 410285938 726305010 913671512 235687052 800254230 810102394 990874518 793277056 952790947 691917917 960540850 569782358 634133049 12828495 18131732 905417659 906767074 765987885 955514833 951819711 965901270 36251541 163253282 126916152 834288170 8707164 470667955 28091470 610710723 324982226 733201877 746845477 842267381 841664924 986411277 893099147 937413796 70109520 111401524 483367190 664464602 218921468 336548918 696473037 782684698 979633400 989637188 256458307 948249160 193144554 789857845 789893214 958277138 477574704 917766923 411916759 717894697 960472388 989206848 112472806 384404768 930338127 981243234 672670076 784154428 768026950 990387816 787620512 953203046 35013024 852198985 47697997 739221622 957387575 980017905 339137248 816745713 558808845 604732388 913354608 945610778 870659813 900207620 515736057 778508298 489932976 906830745 489066271 898942683 651913723 751213622 953705609 986974098 907030777 981255297 297179484 363113222 525606666 934215949 700251599 996920384 977576369 991258575 25579121 373808897 549484067 584753803 153619262 260187100 248705356 366472483 592498622 962639209 684914720 931797602 888279344 940038989 750076054 888876984 401974806 661616517 703387729 870458902 950248080 968310555 945284598 978402632 70108366 502016073 270055701 758736424 115813690 281266244 525480659 628995913 403163818 942271250 462996898 986899059 563225189 701386994 841982261 973203382 752256188 800705730 414583992 508119629 637636574 738279930 768831613 906008370 706532598 947955815 603028833 942579402 847547177 937569224 952720659 961522221 715502998 917846330 929452326 971428185 226626108 404051746 317495909 637698712 288771082 537636663 548962528 871985668 203700111 229763831 749662287 994822641 783216263 887004849 522564061 714725625 295990574 860578349 843409387 885099052 633631095 889611631 386906828 855532810 337234765 821805713 634908726 741572146 690990301 892587769 2550151 271293629 81436244 825892271 638975916 940498813 230006097 440881874 411077490 836635563 708067798 787501954 193650276 360973028 785185102 959169366 459326746 812648405 587265065 628521245 697701652 914558434 434056156 701130201 641330708 652049336 998068045 999844810 504695426 710008647 455317533 679938170 1155389 228751209 684051114 938466388 278314289 632954146 930914474 962692670 817070285 860447103 313055377 404006820 382363269 756336933 21287822 218757560 614173897 890870980 522566581 602914352 413007091 987507061 220403791 648529182 94228108 470561343 778484433 808957976 576617548 723673049 627216640 933995742 813989125 875119528 870878690 983599342 740573550 982538526 869628419 915252328 562835735 984724213 683342973 878814458 489802978 767136411 611869288 998294291 439369815 962884251 407522006 542763332 963835116 976679161 952361083 963588877 233242844 308480364 425862750 912064856 618816286 649832597 724600620 887610358 467179488 648234992 832174340 909940690 981039431 995348452 52489090 707616971 193753961 633724476 371880519 852450446 717373016 790822807 485569421 529393284 532769804 941660340 362050301 623519085 495671117 750722814 959103765 959271310 399808079 844598017 991254882 998468158 564292268 787212208 316538801 730085919 129159562 668365046 390541301 665177677 946717264 963446197 753038409 928836444 928058917 957743505 761138548 899820905 386312112 874277814 482078530 746357461 521999149 560472366 1226472 608701574 139741325 937156237 14712823 205440074 846970370 917512440 450027296 992624303 354822720 850585160 171994957 446064538 865876729 965580334 646551877 688264286 480002760 500017911 189295875 274944912 778442249 849728800 750907405 964100801 894624199 949106852 294591057 803332540 239483603 392202029 579763725 811058776 269247520 406720270 311295126 374001207 702035660 923481403 911187857 963017812 664105197 911334757 355977696 436375024 68459923 334146917 909428854 991970093 218620997 769190838 667680048 810022752 655095559 911733837 48649614 997952233 81455985 805261882 857355042 996575296 822667028 976192456 109709244 724853773 1533181 140487176 247631217 710522305 892087008 963417400 435049330 995459855 183800871 533148284 538375269 675216193 678426974 901640700 130798687 684929855 339842290 864697400 791149923 885523878 249591825 961494235 829261377 898000819 218280811 301037774 27037566 278964255 213301460 575629367 410086461 922261717 467094587 992514430 139504344 824491748 577448458 842500991 687772729 768143635 319224264 460429488 130348033 214579459 306367858 671887142 186662449 844046253 92549602 205503548 219409748 866283197 381088911 506851185 521989292 935129305 277351255 707787758 49533973 388957989 986600996 988384505 793544677 810250361 368879299 438969868 995524273 996030631 895540190 997663917 848627870 947167744 628513228 632831656 84644102 557917401 873012551 957908204 511361176 796392037 630504665 681527089 751532847 858098380 943009849 943269952 164470224 249535386 477119033 909277491 482874046 838313438 48227038 766918674 983218687 986979442 289918679 318945407 49209779 220236895 178776943 194295499 758521502 829893904 70707333 101223059 245627346 302909804 990110636 995966428 473759308 657370438 172664410 747874986 111146745 609689444 587367276 631654811 754707918 792614512 764260172 968596680 975492624 993425090 536267119 918783831 499277531 757045855 243484667 652377837 767802073 939501481 348758393 909468068 140416826 780690547 60832832 931187352 38127677 786871479 421943307 839333973 415357450 663034125 591098604 994323956 687561879 838292110 697455573 948220203 644382455 705341262 280074103 694537547 334855569 865811959 419045740 421593434 214185989 728761025 206971025 782347346 579915073 581585128 227889207 753135862 825550959 899533827 966373642 967190511 880880278 894950731 765760000 787433524 353526318 929348364 674619128 902142639 194158584 820723032 613149246 905131889 239763695 829118519 77874922 248468675 822718112 907863150 546269721 988633830 667543717 994888590 996412784 998912142 210822721 821036053 965768808 988799923 879089704 998893555 520917669 791834247 495258428 674815785 61685787 630074376 587454986 960572294 453272525 573344616 918346070 999856218 610801756 953304508 468964568 809478591 380185054 716007418 524156603 688412328 208951270 751962739 986013044 999264825 300599181 400109784 667923761 760348198 691299216 772518379 976141744 992690862 291914816 492306463 766250339 823511262 677282373 741205669 265403957 967241301 523030118 946702004 719073410 847380615 88538548 844082306 950586623 991893674 219345254 713672905 49937990 173553551 261039567 576450476 372087458 428384434 88771204 548190242 367527411 755331572 190898538 299715519 512257633 688971741 120834586 941965759 207955867 911447611 186939422 222034249 997667050 998209561 674539218 723164388 283932578 668002839 980494908 982245934 346328927 990144943 720826856 931024276 227531298 303866728 266298677 689780194 396813511 618606954 599464700 707059040 496891425 570322859 659082163 879078642 901149064 924479943 55933988 56417762 436797474 914624861 683661110 777068115 932033720 981228510 86939691 550822704 636871211 762204903 565563205 900928111 448116972 739053309 622625112 732956010 420300340 872650197 447835079 595885747 255623471 262815511 988182675 991412270 28306239 747207964 122179081 585566866 63622794 315969793 496976591 980894185 795165654 898182462 399193078 706163674 85425732 398146831 897977359 994961797 608868832 641487810 508210287 632997268 91666684 657487267 479341967 973233594 967816458 970620134 280841562 878619353 768015861 849220737 899259736 963266526 745859925 904352973 293940576 553142083 287113300 850457974 510889710 815311662 266425452 285302080 108163296 381248768 973524870 999165461 134096435 332740025 13745195 879870094 600428230 948356270 51627062 83509525 13863257 686727376 448181700 855616435 974483178 987275924 902225267 960173428 257772585 938595011 506024473 670707802 170957524 548196533 132549354 459239785 121857406 343413970 474045614 571290469 326245995 739484857 632918976 766949480 887639989 920578160 56523131 984885828 727005864 954492147 421159997 635813195 365145479 936018895 67698520 375331433 605891449 626334847 77147692 580617362 340704935 676388605 790736218 937713518 861694487 903469641 457798154 923594708 536580967 671568612 182148929 718656449 826739442 942071819 248951367 590188776 711265078 867657491 787099599 858742124 112802716 951882133 734534906 741352146 309553085 796181872 994786576 996004800 392914896 920547237 470805023 669000212 527397289 903344014 22054610 390447217 861657188 991707813 373509993 939857906 84129120 671715398 24096118 910328913 263515540 765195413 733109502 767174508 541395272 970121250 813395126 910140339 619129977 877268019 238212760 255943980 716147593 884674683 436453845 888063770 23188762 842232052 194644897 871203142 488182428 842782373 564427670 864161207 32743476 959255386 499614028 607360380 213226362 385187892 98749615 301018190 751833562 818491530 303553129 962351395 456759816 802944286 688432495 757623923 298085048 728552170 424677696 890522913 765226238 849578289 681054454 913441225 636501949 700256188 428033610 490980635 751955137 875690977 132940837 707586798 633725505 990346609 791334921 996121635 22617170 784382476 725735383 834681939 80471908 462674884 525988355 669797477 398099938 824995601 638423416 788537870 639260486 822742173 517739295 843171256 995482722 997016491 812425309 869244914 142356104 401982463 616075392 903269060 157023967 537723631 815733377 909110960 568912084 813966214 363144842 563837330 76928225 266418452 308305031 331528491 240364723 920889289 962161236 995460590 502681448 563566781 303890142 840666623 538581128 908746214 747891104 781796564 940960882 999349667 40855531 147104111 448509943 542920983 759641345 822863521 173980471 451570648 142177011 256086932 845572530 903263033 949285037 957397119 523232549 589047875 356182547 449210924 453526044 951944842 517921139 983453297 906487347 956379754 182728437 397103997 131864796 657903208 650966610 765524581 881648839 905850193 52996361 505040997 248724485 319954149 101876273 820073528 632919248 664857883 517011619 746526261 158357515 467917535 147041386 578422454 942869700 975161995 112315319 587317246 954667394 976336261 11749055 696103090 512760794 829912096 74389875 478466789 364138677 910850228 700877910 893977720 703247737 997556791 886172269 889027829 480265436 776166018 154065702 962337108 143870922 555554315 453056140 916928961 81671167 964187800 379343331 415371245 114063718 318198841 628300101 752423036 139207352 371834808 369829095 834779131 604937829 834871578 115189821 155526488 205119220 240227991 428856205 843982343 76587796 887491158 136043682 939119185 390009920 417570765 882682892 966402637 112593083 395863600 112366755 781041249 838584310 989961390 604703663 946907847 416458520 442283559 288220102 515993895 977406033 989315600 572300474 666121788 263653994 642229066 272181348 617754492 716614787 952090751 537911346 548986603 143009301 860640563 514038159 579782673 955091974 970231883 226931086 796365028 869015008 892281054 647052539 839852637 887490479 953450631 126387633 225482359 223390833 650135976 232048855 836792448 16449098 301888319 260777077 489305671 460107406 631448075 209175049 724973546 279197423 699229920 148369472 168186904 197827984 600024877 745287327 965848622 367433703 370262383 918589234 921301932 839377985 873670041 527561149 639677168 872708230 911153252 464972732 913230265 806546814 952972510 900367098 986196436 379314454 462686446 232855569 624871467 775017260 979234260 172898405 646262700 245860797 312833502 923708447 982584753 249738675 667842155 543745391 618625556 561298925 649156725 194724205 717254379 2889767 582571472 663004732 835949684 861911436 980719262 972828240 984720268 831426690 887711589 130419952 144446517 312930384 496543800 15346858 274844185 298014733 516593866 114138037 476472144 39351048 488224339 511099028 947310981 800499550 993509512 863228192 932455791 804837749 905499025 918369162 997505799 945211702 962094247 222743727 358111017 637575627 808368602 762444329 853771651 328353117 763640755 966935016 981451816 755168421 762690218 152186423 347327501 281310930 984326079 309473377 954534087 778396042 862215712 530587794 556533347 893647972 942156554 942313323 949505332 191171184 949792709 631792564 806329780 942966327 986973532 397689325 935420977 803204004 885256365 349276933 790856124 73425021 434570178 246355454 393640408 8298743 528320264 915935566 938810740 921330568 927141605 743696245 896530483 597503624 805574014 143359591 478714756 488932235 518903496 36476983 121968246 785658818 940492241 170278208 384714460 222492647 867731990 628615833 995809106 262110812 510584128 737930517 847235831 527982774 971180412 383856465 989314751 921328075 922838673 747520147 998981529 287027308 736475642 692371696 947885564 736901947 782910585 427538135 507024050 989633587 995483487 126671121 186148698 845894590 956546765 513451179 866641650 818079908 997925710 322893279 822267123 369731353 828700023 989889147 990536282 1748798 90986686 332672102 468424142 548772311 551643274 256031662 718233966 474002594 856280022 79105662 916557095 31372044 289455956 507059055 917072742 255109681 638359623 370030275 527166467 368545910 426700627 83013832 860495293 481093737 588234921 674014116 906456607 40780051 343610448 879365600 951469027 475587242 631480819 271483501 635959557 700689196 883784243 97606158 848749260 276690902 299939049 928949697 981848691 11177169 260231285 946724203 999229694 636621784 995648449 202154757 627812833 137476498 463554927 314480025 917441534 618739677 971442757 310384536 363852610 324470691 957201816 301797290 521116696 353901474 499936830 271888942 776028419 965476390 969728713 28377913 613078085 217988181 699315681 287963479 488529473 882923661 937735636 375681506 405048887 180549469 592457030 468810133 574637330 599727876 685827560 729895810 870486105 11696942 958921027 23783013 881945735 762740587 775834996 553227889 940209055 26017148 395274776 577448369 984541578 331932712 470523533 851628587 914885677 313296521 490391557 267965151 438816970 215070159 447556425 772348130 929249282 787331581 805186452 962299105 965554196 178007064 248660541 869414704 873230739 171942875 709547746 40806009 100617112 86404071 128574723 309899978 950338007 376263301 903400156 302683492 583200144 45285706 655601516 692881196 812945074 78291340 653012069 223428414 496836808 113667331 180597390 837566326 898553879 771251073 971537608 52306736 515132476 75282596 704974675 510385690 737811205 687203235 734236964 228838491 842613242 430309957 775610783 840443651 980195813 386389728 717752867 438294407 628183534 538628962 881774079 706977698 839812862 955092619 999104923 788342241 829354761 650012732 678355457 672991233 703796394 752529477 903640544 130021433 363928606 417907941 984995193 120354492 248065510 998809834 999237447 40510458 193583178 828373215 845625922 110366308 766242432 502970868 503298013 734826697 771002865 747721744 856568509 418986930 860569012 720375119 811020823 459182472 795701973 307967937 582980461 598778121 606968972 846997026 939904604 911234259 997111592 987123646 988534009 449766046 569669083 765706553 953211504 243637568 386663120 641224928 775470666 970692854 973846627 820066922 949953190 473845321 873223457 995259942 999718795 540079141 841045031 984011833 997211580 464303017 998495275 610604977 993406635 867031183 904978372 636702879 744746608 60131270 747571243 75308600 922947128 159116292 624013089 972639335 986495314 48532566 182101754 625849722 733417070 823730765 864676574 474487710 914052177 115184268 321801835 204644903 649548861 733532071 820646605 408856307 970424418 848402493 893178073 740565380 881365319 309108213 849936334 843712766 890339516 797966072 843815767 634168785 962409835 511027204 967523546 939257397 978180674 628959581 784968498 145066098 846379950 527899551 985882797 812852926 890913011 1288845 699112391 18374942 821666427 86407309 987013399 976906724 983672423 879670832 887841130 352413454 381282815 541680453 679217918 312970287 329596570 193617862 592375816 196000106 681640080 306304573 486627333 638314603 784107415 628785609 997884497 37469083 362130967 243061834 405424966 510862993 565707696 990885533 998577028 37058168 944856512 804447894 865157918 702564050 747975170 191546948 946058361 230308344 980676991 93775081 320456572 542479694 874230154 484812150 806966289 143392895 691994304 572655769 573680121 402332473 431857560 317431464 749907627 185788905 509459681 447454499 645697552 265978173 375791687 339470774 721399856 602242488 665561407 917390460 991868451 810460523 978594886 598041824 706206431 698155751 709752363 891724610 938096928 383328654 671406390 264405265 468422327 295334209 793740705 586399782 635970367 261318583 711233969 326629151 533945913 505070690 795112813 508921657 509612265 733631078 816808977 506970566 544285117 44402460 109936347 884831080 911981167 649872141 790072974 335601688 619635725 139730475 403478342 401912013 819075863 409187399 738719360 686764976 824121484 479168362 721778674 27210778 704353981 734054830 753229087 560397257 799901987 112575260 399841363 193672604 307654631 350900914 955152021 70607715 570637386 260727405 644060975 132300639 558313322 278950371 417698170 45625488 846440339 947683011 950286624 968061103 996350618 293751214 795759636 443740136 475800942 492793301 820341635 117107629 513128990 852324010 981659225 284944647 359813858 980051521 984733661 946418980 984170963 3234447 704971531 421790772 756307404 254405912 840168349 24967112 340949695 762403610 889929992 988166517 990716369 746360044 813496848 874004498 914209329 371732877 545118357 350763388 362094109 446623059 725285830 464667358 689229136 62647923 135401894 316634833 757982965 934780366 977338936 171409846 562507396 440203188 924223747 824592461 989026694 383990542 970892479 717180803 893540389 483361723 545591660 144497567 401678331 741414013 993531141 394330015 615238224 375964836 398800345 670981 741943076 355331576 951769376 545713787 836819282 366549209 832336529 35618951 520047769 598597317 601885913 990001731 991578371 450648344 821906629 468188205 664793414 56718937 451157817 571556594 684684871 750512521 890191937 715554218 990117139 32795636 531354287 192060581 516568723 749289344 951678554 383050914 987271726 485469156 565120212 423010735 705617739 256843180 598416330 412068845 701040530 779254960 821865215 184778283 997679625 579758469 604330987 349102221 873229660 486907991 921660120 68289504 238550747 850436769 962868299 94802024 230160702 570336859 746954972 581587032 771859604 152320147 638711595 669570629 823764679 595641395 873357982 889633800 953404528 35632120 90833791 42102364 546505326 691841755 842390295 355016173 462731518 301132362 326211500 816160232 826490341 349477134 600663621 622617496 655881295 332872839 466154778 731351661 780524377 466069914 964282992 660312568 831865833 824367206 921765498 914337405 933314708 402452147 771044417 454849795 615231480 991939575 997339823 968525773 996552426 330787997 580023035 176408739 282983451 456036586 657059205 44746460 658839329 735922931 905934115 204518751 431547551 826598428 980472376 643566880 822780503 193300192 839397483 252836281 776304480 858152470 878829788 202308138 360669805 913051445 931239503 255074859 701623042 100749871 634964464 404703861 705565855 302623266 305637838 486149431 793632880 20283890 671186572 805924032 812041551 846483350 974421226 650432921 845280736 646780382 661532768 397288756 521027926 640854663 794823820 803920723 850273280 806194760 899691054 41256130 918610616 2396002 47239269 688402017 983159559 53360230 482734407 644702199 949862879 866155024 898819011 779110338 789884737 732882205 941199360 558752534 958735521 667413852 980309334 488024291 795388816 423371312 609725906 255250153 316630783 798903481 970807917 342528752 556696768 234789719 800173532 506857082 720214611 625977869 711488563 870436391 948996276 981339268 993103577 95139536 784268978 477479148 990417930 264758014 699635656 454839754 456426856 22872381 799919050 919458374 950589786 777315260 872681215 42462865 929275077 255041084 872807391 141044448 257578584 693833083 836763469 888506586 975797009 208921233 719903083 889179969 917747446 298541643 725256434 262574698 319850273 804615346 854340664 996851783 999072137 302891440 522557530 189837648 793894958 627636323 765404025 237365789 947718498 153904094 889809874 536285259 657924045 636234129 794210869 6928775 598318792 985299340 993198706 484915107 671215327 55440887 598606234 588648485 962820604 288238491 852398547 622626388 676167411 794827827 920667144 532517435 614138970 847501011 921477881 215053896 813083219 475510298 552648821 564372198 896792782 319128384 798948986 586913206 977569305 937402545 989343302 860528116 951472425 148743032 694093678 16112069 422314099 310139368 855043361 975992691 997706129 974991669 992066573 172217091 861885374 572672582 848996314 344344521 395063829 118801537 980612916 465875231 684102734 784849218 828323419 247676217 647877927 12052451 201148682 721618596 883963670 484396619 853563056 80985510 268272660 257673737 909678158 22818293 936340664 605660530 903560668 599153092 794357100 301351281 700529480 401764718 612474897 263215997 856038131 620543011 786958514 839789119 845156788 475762601 666819391 107286582 135514514 594979556 802115225 383360138 465781270 393461485 755755166 174674270 687677025 646322267 942701384 408703858 522194752 343779948 821647889 467061315 587051257 815344025 818893804 188327695 737616218 663363014 895896729 386892583 834072456 886170019 989276478 807807051 970739339 256762412 671242189 167812596 290147346 144379589 688146324 614884934 955569708 855334946 879225910 532479547 758094122 463244919 607372468 679926754 825947628 844443084 940052727 527041352 683205650 264075976 671622049 184813788 905706739 81306600 264302774 750434466 898914024 767251653 868754385 25908508 482129650 349440523 933550364 81091058 507164443 85780203 659710109 549970204 864853443 983189263 989051981 238255971 760078939 954412416 976954131 639079793 873506676 748972246 986767320 299024097 483074207 570802124 826273783 191044499 944946944 423610692 640173404 77138642 259647308 621571117 897594123 502074094 875806188 980904293 990706925 695868979 700864830 261567806 698206914 33943778 561115172 766632690 816674879 334831079 860659723 413469738 451174060 460780951 712960359 266471837 437029474 80810177 996813860 653614114 971545589 213959176 468192286 479935073 915981948 203885412 822050186 57146611 635316403 108971606 739928080 70437907 276107201 916077624 946841049 285407710 600768394 198012041 428480752 622752594 857540149 199962234 985247090 768255071 891696975 406017607 822693053 971897186 973676196 161517219 789208276 395859420 784079754 696677408 775954989 783819046 855327639 704040667 893912551 10902504 77347056 450323549 501798180 254856227 825421044 840423531 976754814 257304006 961328685 529984541 882222197 695910339 774716401 917770187 978005739 366188405 481251220 702346234 702496423 857683316 946102221 704415129 736389390 369730487 449114626 218708354 933234601 585403684 613255900 196521028 634059756 957887957 981484142 531967522 828370221 543681416 856647179 644183942 837189356 553771064 755134615 224501115 718891749 453214944 902835659 94834354 328488337 340205499 999505756 199846366 436033389 408077678 966758572 265686521 506108671 587604053 716984589 916331200 936443345 512985547 580350045 734521591 899563900 708046185 928499078 828166751 857152307 782181065 849224893 470531819 532570161 281760309 842543921 159484394 413014960 752308746 938323110 24356246 624883697 800174983 851955896 821985610 990549603 816799118 818206933 928755805 995074499 179539486 572157855 435247979 851064764 503067930 930535671 679525711 824006084 922899266 932613541 405614863 778666883 132436119 981291391 893312334 903727140 378399167 858285166 957325633 958198929 820648695 893015972 232665172 471103374 799874243 991894767 857253833 995579784 234013705 574621435 542382182 567796611 259329522 484143789 402765536 681778850 742584071 955504236 409805598 831949234 340916406 960293729 496128613 946811174 617772903 626530581 814104760 874840952 107461007 450027274 192991639 953563785 156814650 357133565 664890773 983872496 681831485 683643481 61601861 360401389 290704975 350582635 81542074 415176317 56178284 599975822 767372424 915908507 150355370 991242806 16998445 420427850 488188538 896650554 503485094 575459730 941370593 973679223 538863594 766093516 783247917 921746506 575611830 823906058 326073912 994534522 345332966 636300233 74702297 484871375 491902157 813592689 300296811 888782864 376605967 573874806 557552402 774974730 650930410 814914229 757529305 985224700 3430376 298763022 597698918 656144657 937068404 982795540 178938090 715183194 150128572 615800803 241156752 946889112 337611104 986715993 289714544 711967156 620161063 966759126 399823030 694890234 853357817 998966241 589091541 903063631 26942975 129576982 991361575 994779401 529991484 574884258 915675748 993032147 441671348 751837355 731241202 889252716 372752555 427576180 940424832 984639217 290275064 484466684 274759166 760586764 120062972 570318474 576963691 688317985 153406967 163061569 73897916 85044026 194938131 553432991 565781795 679524714 213324475 939467387 472864171 769891700 700673949 830359333 485406195 491415367 688118584 862352066 272837691 438367498 910611966 930241304 439227812 636139001 111919181 632327632 207340138 775659297 460324818 761377054 186123391 359457641 846871058 937191592 740790874 772831031 97908056 425552142 820656803 898634282 380812872 814999351 40739619 77848539 387314587 832912864 385847747 636008360 171965459 695775507 271128581 950708982 342930836 674878510 137383500 275488075 380764685 687937573 186079327 510043902 207821768 209961016 58140603 122360533 114117506 713609736 310157758 449380308 513914406 568737522 201911692 431379318 362238288 624471415 658379725 681564335 912602720 939958521 465129540 540223909 910324471 980517680 423368148 432145673 271604193 543528871 412022418 651263255 933515743 971594458 95872024 916212176 892227887 964271832 213067936 713100571 630388103 885616109 235349680 589486418 302903401 303523334 256738083 566530390 623707490 948912717 575245999 785270725 768802531 885619682 636268816 828743358 203901038 334201293 912757067 958472403 629171459 725916891 420414673 892254167 155424927 955960257 796383481 916355104 16757944 543632922 469717639 733516133 866209001 895474556 532818403 833974592 398044725 477946163 170465130 369965037 92298833 617597363 867256438 916321568 990828268 996227853 334255896 605718737 678055201 694948035 923305342 991233599 287165061 328192703 336740267 866361496 614851 744425170 828570669 856452494 854444477 982603214 650342465 754191394 24667736 458984813 819491625 968416245 880883254 902824281 231100148 273293936 995519673 998770950 613496048 756293310 473925200 572687719 414279027 686681135 502516151 559341508 984354217 988825297 364937550 449337556 190048726 535171668 500319036 880680632 351831473 914050685 777664977 950515987 507595911 901706655 543158866 612216210 273443040 429980021 163269011 570045509 298589920 519825816 81401926 935559308 537705199 573916899 123820003 900316003 823435638 947447283 497181305 745351054 36328341 530180189 617321053 770373235 728876841 892838093 366320388 752456727 348362270 830735327 962135719 963608326 208755251 934626200 568726568 624300363 708163129 819612074 716548305 758199260 773431363 945289972 550988594 569342271 302792143 706468464 476883279 864132165 627988009 994974598 538384055 975173771 397544813 634083954 139564825 928882955 558264537 830737552 252484726 411853350 354625340 955476486 555495029 832554378 345780581 542566791 827114782 968247297 197454000 909835683 588218413 893360833 980141121 981283690 50914464 477028942 664141237 823496010 901645262 912644477 69343288 323403701 166095815 511565124 806403129 835992362 460511787 479654586 4381663 983745698 785798714 987046168 279076130 615916824 406441972 654163965 254977106 421188186 620012565 993502631 102815416 270843177 581495423 862800615 255321740 579677188 48935343 855500663 247931961 546678452 48413 950200545 205307071 680625354 451550002 883811701 896968823 954585264 195921925 323589798 838991371 998062094 761202429 778043994 561640674 771507542 81306276 962960903 524164227 872895115 385038496 942905322 469352612 776587174 593176707 690071278 942125930 946881084 415319451 926284073 703764406 983996780 743553769 750472834 123091132 812529476 994122518 994816364 649070808 770326272 517698010 652806736 579745877 786471239 659488599 712593787 330510248 470012142 398579800 474453589 989374924 999736283 776535895 837940894 546243917 939880546 633740555 984711881 12532352 409338306 502499946 887883838 380314490 504708012 434382475 906066993 76121044 887010532 848879500 880123968 329115662 857991847 246333234 430764952 702628491 854113390 713476389 765881414 606581679 862920792 430753215 498349259 66515160 527406091 162572409 895088083 358331391 731731904 247968983 633250957 524275434 799812463 807720912 855095811 935182877 989447605 211732866 444519366 276427287 486834591 663406277 675963482 293917022 859149634 283810510 670211208 717517864 853073143 286752316 988568543 13693494 460698904 148535247 337513900 876203296 968363859 34350981 314758679 520758784 997962694 308039330 618573552 680634385 908860599 307463848 815720010 120530267 163971399 702463320 967264907 839508412 955347848 883781670 956117090 602618433 850869229 728261622 901224511 622093657 894208556 11765026 827307530 355719640 952328624 156255330 366498447 672061401 865889187 18717171 982991911 691301074 920861898 242218253 451125575 866212768 947774517 548952398 934980412 798288261 837303595 876272287 935844227 39663765 89007133 153829323 603148666 179961777 231176700 889920145 925689228 250244684 535692616 386055007 882607098 961065395 993903773 722358277 838456880 71468638 487182084 534080331 633125031 224663017 491967190 913597953 919933663 752230630 797156489 813040246 854889301 326114938 548387520 309784468 940035255 773696062 887128627 495872130 724159818 848866442 914973464 825959004 881617162 179382637 504109004 550346441 653200215 654736955 929219585 277343353 983263432 944472813 965684637 631027829 763652134 280475230 778854411 85176191 923216781 511768030 571222311 147858238 791095044 293780120 518465953 329355105 381740749 216872243 274124609 853048064 933206036 195869076 445272010 82617892 791296795 844992937 922066674 559715793 694101770 155829434 990444638 267760563 921258063 403165575 685919195 909867756 987169768 54317789 457352836 444101484 555187765 210714332 920898711 77958932 563352508 954824885 981771145 302483908 493062752 715870386 910105963 3504181 999653379 654532567 711535150 886947780 903890821 607090045 751766082 710629540 975640851 227665866 715587303 622610377 663283294 981893806 988973033 366455234 990407269 138359483 396678217 648426286 723308896 365807224 719645898 728677252 794850436 454486990 544382403 543599548 933505743 568412712 633963107 829634277 881330464 601117464 978434593 671434100 949955253 948290594 975026900 826847860 967798365 451908938 901350186 799979873 884411852 208270132 821889705 620002694 925189461 276673842 825327724 551303671 709275453 973578517 990736932 208419033 935586881 478072830 595307278 544427535 678747562 392482383 436919538 729184541 796894567 415049845 762938809 408108403 621253627 32679375 393260306 46467862 134975582 504466445 668852775 276534998 648758297 318602732 768483996 832321050 868008811 839758290 953107041 811666837 995190571 471466567 531286503 229195877 567087036 461882652 597224109 401604402 926945526 84970693 500907300 953073727 967882393 417147810 606910820 235253133 543641486 842233543 910868243 941400304 970677829 450840000 945944627 546542001 748340894 742543545 901748091 574914481 692219074 542753551 902212438 812054917 934992830 725202957 990401621 972573554 979797661 611545515 996701358 786722421 960205502 72457129 919250943 981984051 983656443 267309051 617259572 511562157 859431408 697304066 859983756 641372689 829432408 534009738 630795588 539887933 554287774 134799929 862983464 300833286 748551387 946865005 999344071 376954289 572993131 329066811 341930348 62127226 882207979 508176939 726991500 352370413 913997408 118784553 896352622 761770629 820908693 202925736 301577724 138598758 208009397 382250529 933524997 199656562 251973094 595181096 773988593 541620818 612787769 833959817 853558141 253002888 869805540 212522218 574312346 540263748 903607667 706847602 860000720 711355216 774776214 293045265 378177688 68310339 566594215 819329853 855500110 289678195 935717490 126188299 156864203 360458283 565866591 404402000 624688204 374869787 912572927 273336986 665581575 123455367 127648660 954237249 957870512 811586206 942935015 551053789 880224590 215287429 553128823 822131562 927609584 743866117 760052159 914697896 942562429 920312450 934563743 491669594 712719791 606206690 692560367 35112012 161189181 780409250 850939626 46390865 226516058 419350635 523665859 270072989 376366504 200734523 500967480 358901941 430447675 203517568 607379208 975629008 989831667 773853553 827715687 572292553 593805419 877776364 975480435 285932277 546365758 172345267 570539950 941453956 958933615 793948328 971585465 488037884 655586547 311306995 445207416 782986678 805582426 633162298 896628143 786631507 934304221 546702995 993323300 5260902 607648071 811591193 931625749 526249296 986491906 9898836 251419344 272673994 955450605 826229548 874099980 786483542 937256254 916769793 936478899 968128766 980676254 361486163 613227177 194216058 351995772 650748100 695458079 466948534 675607515 69860302 261871930 505868273 529303325 979661762 997648997 443989071 934761201 931327530 944648232 399723066 637027438 934341791 981701744 954211315 980950159 246135649 298984036 884674824 904229297 288797671 742470944 133135120 435185056 165565625 836141491 545508947 860147322 746421965 883989597 752614274 901794801 763735594 884761055 445614643 567324339 915565565 921242684 228464949 933792703 869758931 951192926 615082644 964042849 846848069 917699373 518638219 742684491 94328531 762786165 816936997 951605115 272285110 276145844 853218468 969522375 527489341 726378485 211737799 848951899 754674910 876236713 677640766 861929652 28901015 240202605 288144722 590277823 963079664 997119111 725973346 941387687 736406032 981368194 762261574 968306786 553391000 824656080 271622494 305638133 16502602 352125512 974929419 991364750 409139339 877858459 518114960 768795667 183598545 388131048 389509294 781694779 907034245 934740606 742812324 795843576 497151902 813414572 755701229 943564425 377434408 590681464 549966282 850364040 563528683 614967928 244984906 494400994 943047555 943262659 992532167 996018416 950039583 992154776 202892292 384359418 982608179 983889632 874451389 909551022 856921726 941244968 173966012 854113136 795848266 965251980 534056618 807917777 326686653 873027119 343726860 641821482 875048463 981644232 339107529 418484258 581067207 853012196 404137971 797113055 307500801 442277950 928132248 992987924 84152910 857897926 46665587 470892990 330817551 622012266 652483481 843230200 715333083 857862555 656508543 925406244 927623651 932816819 244108446 627167572 729808421 770644408 387343873 875192322 337981385 873290507 107165560 451486356 821228346 989985288 406993940 665774133 426067322 667988550 153085548 899667149 986304643 997006262 483668002 510236561 874109840 903119001 116604998 138908935 575758414 931564269 310230821 315501707 900018198 999188190 371773690 917596796 284327161 673644616 472493918 576086095 648200282 996614614 985259428 995305589 112968230 616964521 779434658 998114205 845491945 966824656 433539129 455381536 513052192 590254987 342912093 578729757 337626653 389921696 326370688 561604869 53496910 944523852 886935436 969592073 396896999 554597437 551742573 621409840 584399575 606726293 525737240 725312444 39359414 295352634 919172316 978826706 211095481 353176985 675102157 866320337 712431872 781160724 257475108 293943659 297298767 581554596 790032623 950638643 72353770 277525611 748445631 773715627 502036830 731968025 727629097 816110151 991820700 992717282 249271847 896595115 601838829 967357163 21321436 608690571 582007164 644831166 75396493 837871367 248369391 977307302 782842169 823827468 923420877 932170172 775099988 838410939 627088353 780831166 392306635 513515901 262920813 623507881 296962561 759732571 404291769 431064708 563056039 591738755 997995403 999042244 720381681 898722663 487733174 811699735 184834189 522755070 239366939 605741297 629608528 958800912 32836498 257475218 878069094 966134186 597512217 759612783 642064618 746031262 709158444 789744015 930130083 939877825 669680247 825177596 239327902 534204451 869896693 884752743 627957182 649171983 525401421 931336202 304512825 499944347 756125278 933420581 537796861 668423352 704958286 852686174 474800194 637021882 983826711 999934820 869505609 890070211 310062221 729056718 846857597 880939081 142771450 806264226 331152249 360342448 335429058 504262821 518531258 881830574 59626540 840198425 380896864 422140628 867049632 950453337 471079438 540058306 510197711 970259161 499525006 751289018 390759826 409834245 581195107 915587304 75195840 531225190 231215045 702894140 173640788 930766335 696175527 751072091 715271740 821089039 231939404 959179042 694352385 925972153 780339231 902280608 692962694 969938874 411405223 616072608 751898941 863080857 871007121 875698980 70902503 331792631 985830376 996381135 685649639 820751732 444807113 892266754 33457423 554256432 557672969 700605640 737966338 999609228 643176896 750543833 30024448 120804513 650048007 972394221 276822043 382254715 44712070 64606014 5437150 970405237 907768258 984422807 219429001 549956698 112873072 814969393 846356614 920810874 654778532 750410593 345733535 879707911 97727087 996661284 463883845 509514719 640858901 738262143 962180657 995231568 871021063 900280711 188297165 415454906 671409431 878156813 774382198 819010750 684705002 970117828 677180105 775920021 542879443 689986625 325752690 581837829 976971607 990839565 819451743 875932202 121569818 540089535 862179301 947659690 312304359 995895840 778928939 843761211 642953058 683369344 882242694 991681963 279091587 602847772 472033309 592491785 844276416 908836439 202491851 478454679 415032062 812964526 846144171 933736318 597292101 752907821 517745896 693735865 78353290 271171125 800292847 961155219 33698545 889604332 281179389 690445713 31331917 189897942 802177737 863424263 452058511 685738330 651406676 894313144 150812018 370932649 464494862 797124668 404196341 543735114 734942403 877889337 418758146 852787904 268830124 801339183 768775191 933581976 754462479 764249886 872125076 976662527 136505514 443724124 622271476 875275368 382793200 641904786 373827288 839101956 886978217 961746341 353661240 866488554 807311719 824527557 332910782 966708973 665462171 677378048 640142408 863915985 232814462 274125575 990110521 998944588 465232460 820570848 405491203 683440537 381497924 794266346 77984664 83712472 619186095 733647468 355429780 783327093 958536625 991386092 598215453 774747201 883688170 958968426 59955235 268282455 119485615 370607774 777731913 879859941 723123594 741635489 250897996 898679519 78122327 126923177 762144847 905806978 34570717 612538078 702966086 978359359 114333618 402445838 953653552 983678388 556679890 860372682 98891686 314879160 370077236 972529797 496849662 999082471 226745689 714389371 73009582 618169565 39326398 812142095 368568315 721619813 667597313 711616247 973497259 995694901 939594899 961753705 318622637 430357372 519249071 716619006 753206558 826699025 869632582 980075036 94726224 268944490 741471500 881039517 25658124 627536322 141381144 441100233 773501647 824024563 854114322 871070155 783826572 825038186 17071590 951453441 530710447 683167692 633412071 926894026 669173365 871049796 383824346 761160046 575235307 858878147 575533512 583413081 879886937 959435823 294399780 911980583 532974818 891460261 180800570 398864357 64196409 655279773 256310372 282254666 752324442 846381894 702446446 857871860 873597887 928835445 218117037 672573534 386151178 892414703 166666098 762244778 900163179 956232722 108263560 306282847 833711779 977128195 75868339 143809322 388158535 816854296 441475846 897293661 170660580 573042516 413350466 877615520 704604885 954818697 523624763 972910860 273711621 909187991 616771896 687027551 15702970 245788671 910289179 964255207 659495331 686166791 115427088 862756897 36530346 89135334 227662884 565045277 249034561 527544790 855674332 861692810 905040234 992540032 772210671 857123199 2581162 629840716 153665404 675754748 446085714 839583790 301520841 591827226 236884026 806188617 224455944 305883082 395412595 474539654 923460966 944072653 108023574 184209310 47236990 266640249 597537832 614434453 581248047 790922197 919936199 954544130 693642810 864858490 630897498 681055407 510657583 786214553 233324156 541116114 351945198 940604332 337822146 436632860 254629780 386421347 359173020 686540742 420886334 556288735 408512433 774309206 70032329 157216362 27145920 55873558 487537554 701397541 602671755 881424446 978641922 987684113 547727109 996771719 144139046 204110604 716598238 750352690 105413675 290091316 803839981 878702643 847968015 885833315 266927694 623990736 50129436 977775715 50264185 734582348 211777792 879863400 477354416 482466525 40060139 60761805 781566489 999047720 63729258 470982976 752054522 963908766 717602347 927589989 399873519 678003324 146503018 586032082 157810724 735938780 204646285 261342001 926885294 969085975 78212279 974515825 878250198 961979083 899854971 931761407 28152158 566877406 257220156 452335241 254603932 370841158 161163417 972556886 581612691 846124441 700882208 848909715 892888240 924452271 743332289 907408795 830689966 997697990 57784552 271188667 755322628 856140057 188111010 205513989 557907811 934112164 342830012 383503386 185316638 544309666 359948425 823887746 941961113 980955967 691820769 835991292 974457540 987322395 986834501 996812848 895022718 903893292 859569931 959499404 213989220 475163010 304979568 626347262 587276256 832268006 669142084 801440195 414354970 520290027 482822772 713739009 318731566 320040633 705173647 728229592 749954520 974882291 571681659 908259293 685202841 833484274 912584187 973849432 640641354 702865598 861327355 967437575 706749391 762866627 895612713 962293581 10546114 337096790 668746791 670062284 822902267 906371414 253714040 894981548 547476532 580019454 896043375 908053389 150534500 769354645 537795726 852585135 67897534 143010556 610476338 730611708 834817465 848101071 885401815 969582661 599961012 865209675 511237771 844118210 855050230 872814407 644917069 798833159 8257667 157253941 450917782 794590554 1108688 747887496 551526215 661252675 118229894 447897530 165518491 602746310 331656052 778168410 862577955 917571050 511808234 668914384 299900714 559367222 903477163 950455481 538663557 880678107 817548666 896338181 302685981 547108781 182520202 432805974 111303560 424383091 951846117 968338425 811480926 940428597 505987612 858691411 9769216 434988127 370476987 676350642 909585071 913161586 181018317 386046477 913638708 970116810 86595489 318076753 540772951 737463266 331500957 385198745 659992946 749544756 897115534 930411953 643621364 692876946 334077396 369527108 204742510 830092046 165049277 858875333 117688787 525445673 767819540 985538511 271148114 960038276 671127832 935960847 788145694 903914604 252738889 812291624 16495048 530833879 948796798 949370865 950392143 968753286 193302614 842796533 706635326 856045691 918439153 931376394 126139730 965204062 574222251 851847548 682162707 992459785 556454737 988592022 134855405 411291854 748105008 773256540 739558773 747600474 451692518 764915558 903281279 970834062 749896306 775227393 17013508 915803511 622787458 702251155 787552667 817950387 777721369 968011978 177573214 830659034 995398741 995868112 776719432 795786816 916378538 980197428 96080340 615140628 48437163 333722285 717910904 893909647 128424827 423853157 500254015 733363721 318355967 352619924 152647260 159139969 420502140 546945969 513879305 854218370 988020831 992695622 889576665 939633895 206083178 294388632 877429833 911713523 371770608 667930680 160805405 167768720 151501807 322149803 234573281 660701128 860496311 967135569 704021970 812130428 39203494 57588303 689737089 891503776 230406807 945116932 546441024 767854433 679643392 817719343 162579266 684324259 778063268 841059973 634244152 852108377 998722050 999756447 98698770 975204416 632555005 919697986 900351693 938823787 310719662 578208791 10616187 145743541 85227356 428125809 522839874 860362104 242285461 629701552 747364639 947385876 87263491 425062857 750787598 952610741 965232220 997402319 951101829 988139690 234743711 688314818 813967926 971008509 985313042 997013199 464824334 985404979 803000410 906673570 489161505 877828702 381586559 514870978 710596813 844458112 233573725 392532103 193049071 716269517 468542276 932004687 708954725 983691305 896861636 915624593 194066278 921837539 668030268 825978605 583778802 873531916 498972792 859075867 193203636 688799763 292986251 849027199 477578360 722077319 847362753 912543488 808265400 884211509 236994789 781121497 840419300 917325787 747855297 901123805 953755251 995930989 222167642 451990336 977461909 982965525 231916267 799308120 594417783 994618558 268747316 289313858 429027475 735713215 41985551 107420910 725018320 830322028 462820163 756445686 949707482 955651332 138724420 365922038 572270247 923161525 135096373 770603892 147139917 773771323 67757532 872388960 598631832 599429582 852251943 903471339 708697097 829742298 336894699 350568169 453139679 453634841 674965353 770319411 781317246 952604167 852499355 985916897 652254025 856099963 463117053 648980332 662143558 948878904 69414298 123886710 385835778 521749299 27151137 578814678 333639095 881819019 90403925 807755713 365320088 572039898 903760878 994623730 101792488 503506374 163551133 247785396 422172979 802316939 560977919 738768489 499640826 868793906 45986077 48789680 410432297 654911112 62122932 905330173 912105142 999410573 658152450 857851592 532970467 574696719 520999301 806876596 304762760 986794090 713794785 946558833 236902465 581387322 780623260 987622881 677422177 711325571 118046217 689972107 830572934 860803709 923412208 974748183 284114483 550616310 352271585 665742448 537264211 623216837 478890177 727258698 914405509 951923455 253198049 882691046 278071925 733324867 880298382 984299514 381581393 580079449 738844 30562201 223518866 467001052 917513380 975536208 963827674 987190769 266817126 492204602 174137813 784738547 185291677 557029795 548708801 792125573 743844979 988489463 960682104 966375148 407873544 688711432 512841632 583996868 471327300 545829301 604557108 681071593 808066816 851361812 439397686 711213967 25554621 590859573 558017764 629911410 541711484 821121597 366177612 644175410 535167473 569924910 174529788 363548178 563617979 970641594 56311500 978668397 640597758 754316710 75348881 585193537 925044613 999653242 266042699 982386890 888325106 911023888 910422310 930177268 175041688 276672591 317787012 323422776 241904070 665678217 84279425 735775796 774169360 886835325 120975206 824029115 765833958 932170843 458138487 693106347 529458777 968537025 365741230 562536044 885231764 944883023 758985177 929249104 782215745 964188233 756809672 841976325 984007082 994732577 477595331 836976638 264404136 473954303 969110707 996607945 10933922 897909664 371737259 819204919 126857438 280096625 339607269 789428374 614817602 967241363 127688847 156540958 4315404 917657398 460336583 727370641 54011820 87929754 80207291 918647599 766591170 826501500 675932436 730858973 600257461 890867958 411021018 721743880 489337495 510972703 870236358 903230620 125163798 898297102 850890853 940909280 263341804 491125515 100276213 975925531 775115889 898760356 253164926 598261696 558470880 869540021 131982946 138070807 880123006 970149402 962045841 967789387 387608757 544035173 165009215 393742131 722017549 969553775 683546929 916042485 851989889 866157053 174644450 543538544 717325412 932157231 262869531 360212929 379733777 910622000 774330212 800871781 906100415 964040863 513587542 921169177 34465649 952508294 882456316 925536449 691249481 894733398 213234066 478766950 810470459 890618271 521703820 539876642 796926499 948375579 270352950 518213418 91533819 886497324 391677963 770301434 806862187 990510551 304357502 402002239 368939460 587813465 49592595 242035533 717216906 987487402 73568710 480250600 136055527 251899045 98793263 206102666 492372926 850624405 137478309 971223517 623602556 861459120 439810895 966223562 951836061 992866027 584553891 759124029 427560241 490717359 521495850 594222143 837783990 950831147 8528144 799823729 126199667 550500359 718567421 945041492 894175082 975190531 488075670 956860034 365082466 640276431 919112730 966092504 48815270 966415604 469734662 760791253 546843993 926070489 461396267 876434974 9606939 376802821 254942487 931690536 717450744 926555502 576600622 842319868 13868685 870863339 823833470 947022929 741881022 960052320 234813556 885150141 683199995 888704447 849360342 979182430 577254761 915291563 771846954 796676323 214527561 956682666 297642292 376538840 562665996 788973955 321888119 959995637 253992257 330757706 318924812 675077840 817382762 907978321 898630955 901042769 559511977 993065504 625504894 960868059 717807916 797078496 462071002 599363716 639332201 723833134 184338274 301406579 652640607 829676582 793402648 930142203 774345423 995574422 689284525 958157396 955958746 987084467 121156048 790498963 579734763 665352140 226463213 673635474 835587716 843677725 167727114 467242985 447904462 662620554 300398611 666424956 918549063 953200658 610936441 700945282 283657719 927591506 373483683 686924770 372478198 480784935 936232768 964710143 653960015 728264558 404751537 654170663 363740626 971999344 239524154 629604547 617732554 967794814 905022045 932725037 3063432 50846954 176338857 181406598 828297845 916315609 46031331 189238074 463099356 478808669 392801409 748102282 132609901 680532418 83782447 823143857 532619661 556297259 179560169 641481402 734176472 952184323 147263473 726470293 563578292 593997801 777169558 982432163 315966831 332965402 539942890 675480742 874463009 906004657 310208734 983595358 746016189 849552613 662026742 920950247 869215378 975538920 130568136 797870727 173425301 672847828 994434834 999537053 280242454 531927981 376216029 629845072 50692491 492837926 814684963 986808934 880662383 916821041 930067872 943070583 282393682 353810446 532280519 664356309 555805347 564526126 123446955 524705154 325097506 353532137 726699371 770140857 818819372 950135989 687824752 953622278 595741168 643788705 351777727 892014892 126410813 366423319 711931035 969850428 539991616 827623846 866898233 941729427 793436769 852958940 253531548 930340610 476480658 672026558 520951205 557392543 524257543 538180952 862172651 873194275 824588469 866976791 472951188 752207096 856420868 952959670 289150106 982733902 755580540 942004165 83845204 737230060 639204782 799140844 804111838 965456045 691882805 950857347 281822984 847247201 720823596 754124633 344438959 701049006 686920769 877776400 244324325 593557046 909794274 978999968 556400262 804269545 173587624 445255576 875459198 885415109 150124828 293118538 691825740 796665489 674882625 980824640 116770649 571406762 662508572 964076383 498693723 761023682 506925770 659481694 458129705 561926163 378591479 785171152 383596321 433117530 686985843 949546579 921496364 961427641 778051209 804996064 593347693 667377597 863130946 912848590 935271852 999598006 577591734 612388568 495028963 927370832 261709170 588048920 184407781 467168613 167309130 944540423 36879582 719877511 517610127 613345851 722352162 836446990 138305210 554420295 880255102 902561754 708650849 763931298 303700871 665921331 405911610 938043059 478378882 588734651 681057056 848122311 534791741 988536606 204821827 971650936 889203506 993701565 720875205 781093953 793119436 966087457 349991119 694514133 484995171 692544695 985331382 996540028 250741504 877281695 626712258 701387390 130993237 335746477 379600309 818803626 703436524 845399187 521184443 762890114 405834677 793736778 855503926 882904228 933196949 969279540 671626810 758500849 461272518 967438056 774938554 947631633 586529564 815159066 440078548 677781970 454295566 963462461 101384022 445478998 915377417 964524488 971704117 996824415 786876549 814958890 480561910 996511889 55128279 445388790 538265533 982617596 621595027 948873386 510882431 856879080 196978099 638501694 396080805 580368056 857634173 865296583 298926996 972097922 152942857 297018376 398058934 842928605 612156746 672470800 180841876 402243166 33490291 152287945 215086563 356969566 396372696 719186099 700348407 952517936 947535258 955476216 383882302 881385786 746802375 802737618 283017368 718877016 240886011 291323535 237754382 802609203 913445461 921991249 290558732 528277093 900976308 987603238 458814305 689555054 12798737 106988977 182257030 444033277 17614309 719039105 799800804 855239646 903547233 962280895 40902645 808192392 553900555 613683844 164071201 921960143 67595331 178139934 521209049 941633593 357936757 848523757 295028559 309145627 293415112 354429301 8028276 421114268 805237611 909427119 626431677 722991448 151560472 542721426 67524933 246477759 304564665 452087298 12407444 995075087 823662701 961301788 523850064 764897685 486254996 909395188 28039756 985046281 757274616 914462251 53794043 243394589 575412402 915642319 992585536 999856514 812122566 991507892 381838727 605332922 310575461 942758941 949716264 991007571 962716144 997749137 882246703 974160291 120025461 922320215 942001022 978253251 27106877 326218536 931090228 951016711 930947173 941402503 756054244 872340530 254438039 678936388 563312776 651240520 901611120 977241435 422498226 923433334 819215387 928446072 533372079 788701768 534309998 573734339 669738621 692701601 153117348 387883434 657428283 790342028 100766285 634128607 324830498 653094849 771829455 932679552 592979760 656009035 893429744 985706286 719653256 767694062 394865833 441385158 468758142 897795520 856896960 993545743 320007698 991624145 558504994 765701239 212577264 922641727 313768992 854381543 643358972 778886302 538796348 844571308 152455450 198349600 685739457 770516607 164386431 314063615 868718913 936004288 266198635 843224513 585358379 916060533 543894116 568344085 389686099 832654752 86467413 360672612 910911829 980332424 330789761 331216999 301846499 921635899 635792206 835366239 46815828 49879798 64788217 571986621 604328827 936489753 589700007 861753802 82966588 979011799 36794992 177883458 652114166 803070676 640588442 668057677 126937093 220098101 523109628 576973542 740508569 926483751 550523253 881575924 109794940 185992038 845289990 848081754 788507175 932134590 166249121 652247615 464480912 980669062 986290636 997509860 11137716 424025480 587959128 800518649 243656916 839749500 323010927 356081803 939563017 974338973 782712933 877000464 410387845 632394977 10541195 257625726 914137928 936436760 768092657 886130781 132656175 525890978 588617103 745761839 93087035 760086071 107207638 298706898 781037432 874867426 694792836 939662847 803846863 859147757 74042069 652521607 785449900 814607661 665466234 688200310 878055814 988599554 527273247 589070936 243182365 741343497 267653417 672406749 734062400 896457550 880215568 901842139 502694461 853840817 102939612 614197510 401276955 923529249 910159465 967190484 187248411 429015570 375095685 695882163 442884059 482158871 850593127 928956738 837141857 995474981 114448268 375713364 542855584 594771724 879437959 954702712 108025740 817705093 258821567 360492232 812249920 855009633 69159592 280714983 517335455 786343541 41386625 229121600 594385328 772648382 166182393 599993559 785148757 928354593 218237684 264848759 501192449 623920454 922346773 981959056 122132234 457019946 323969197 327867009 932129303 984644894 137499330 518991112 367048559 519093558 737743214 930186682 320430528 639272509 492168563 764222680 756202660 905348681 493704027 734630082 54394660 965905041 605349227 818801402 622509524 733682715 661510911 991030328 520461882 848587638 927061137 969238393 590504311 793963176 297980821 519883985 781422580 841118876 416727833 786790390 545080063 767581112 871813924 916978362 702730085 927520720 598711932 648859010 93926589 303029005 143695576 271220371 179080871 241459005 475474101 507472291 780590485 787610058 178991196 281185136 356733052 454425655 466526728 475540097 568264867 726545367 947486508 975756313 645186197 934119511 219526959 828038683 161473505 714934552 821073524 969710264 752029144 761634121 595200177 697152102 930910469 952586398 992701768 998987808 150987318 279324183 975312218 982262729 655948911 935414430 623861896 864706563 841970031 957138964 729176855 961304343 865332228 918909777 868916066 926515832 708842245 737412017 324667676 674428265 829447636 954816531 904016052 916491815 726746441 795415321 602861758 797205944 643291651 940195635 772210379 883365945 499918093 747135466 571485403 931144678 639137131 906813293 353771224 488364447 311498089 419290175 586596185 890685708 141568844 956472487 257157358 631345693 143419827 407902613 381715453 726936939 750955462 933574888 732313382 785667728 38173740 322326865 358790782 984198965 374183016 928255736 457150573 656973435 865940338 966242834 939946014 945368145 268472386 362730892 621349789 921012312 300203578 799054158 398840883 824529103 898278029 929271376 909344571 953915571 945569556 984192384 220991449 447342530 773772064 814233126 388369206 893131441 309651822 579318104 904451927 979905085 777519344 910453215 28101458 429601955 628681861 933202916 995280230 996111797 332488573 610494361 986545061 995274655 506586838 731882186 599379539 999461526 960526014 977216197 723735766 978116352 744672601 960451496 335050271 913557451 280518110 864167011 386372483 719517965 263947224 472091581 145252347 552240133 429932282 876745830 606235373 628182948 350148635 846801691 100670716 907158795 700978060 905945129 690826115 732219027 626575644 857169698 964920755 978304582 863922708 902737462 64060366 877510416 868387414 950323443 365435042 934933127 991053520 998982536 103084193 780716630 257430136 380723375 500151295 793807443 373158787 707384196 292409263 469103548 510360276 912555577 960091571 987261825 517394253 883841584 125153918 466192622 268345856 439693348 351447353 579269930 849574369 921410494 870954755 916675144 152409728 676843911 162757470 226078270 981736717 994624516 146825901 661299405 596313448 628128498 647957340 665252034 25449740 218577169 915963229 932885414 210926318 557943347 278850723 841579841 785643686 917045282 916862600 965004035 275621619 717947303 353598158 386412257 30386263 342285698 683447303 930276756 202749408 420543891 792998540 927101636 984489119 995960795 873444924 943149547 619474781 993892559 74918392 449697067 56237746 231970744 887099327 904024525 613078679 793935493 536656630 569549157 410731527 519226022 563796245 568788300 919565004 968448622 407366765 587238372 903960972 944665657 414364029 469565590 257377992 647403688 28263729 518596039 89185192 462151002 421778914 650413136 656246592 908575243 324117651 567763096 348893243 862716461 483169730 779189878 124633554 197555955 421907923 504275161 753275533 890913724 806405780 850583574 472630897 879701903 437542530 892001215 354728995 996869064 573205006 662070183 648696559 887455456 894585522 978729181 584713283 856360175 914986986 954067139 857435473 971008567 281969023 950593720 630220774 961754301 855606593 933809818 177064606 466938021 384782736 777744418 181543796 770616571 995664175 999360665 743883826 916151642 991847728 999503737 39592985 654663962 104543202 925699965 939500154 951557005 689333005 954851894 977981862 985488306 941770572 988236971 187934142 308476978 392008053 987690535 897932895 938243771 208767917 445296559 380852729 628993956 264169423 742878878 243532589 732448103 178613561 590927820 864340712 929892764 884607027 941385081 880102746 923538544 833826128 955080213 377781980 698798776 619269985 770517241 149429035 977308467 652995005 717319755 24790926 222239238 474789060 706552292 652049533 824347705 579929403 960307348 503196231 563653333 719763115 977934794 536083727 570201342 170313134 271505116 430577600 498201032 863004525 908491050 544774132 549610328 999541025 999965360 368783240 466973235 699749000 826470452 579776590 850781884 858652642 932809829 370003445 990600133 441526342 928592249 540176805 894990810 453275598 810276587 841280803 855295898 7768222 858310196 173348850 836179612 311933830 983760722 307719364 776256252 681807213 802173386 877128470 901766034 664722898 796484266 25468717 56940300 946378759 967015979 47001106 167379343 888787222 976082843 977690030 998533131 622313647 654895698 906873302 987749953 617537690 728249319 166326445 893888229 836270825 961923280 927786493 940226440 834179118 908551882 621590703 748705900 323449249 994467482 399035858 839782923 724673553 998277121 61629865 252677113 842623748 939082263 386044426 480230919 180628836 471072656 608379548 731153547 262887700 764176196 952304635 965157144 959838181 961858768 406765178 874329500 907269279 950058375 212168876 755061435 730172490 856237488 192337045 705256418 324982956 958500107 945992667 974964686 746745004 783156403 187797229 974786162 212198696 373472282 730115613 761456550 158920851 753803992 495244008 815052406 432623963 594932673 553458966 696769812 928976069 976745485 274804064 760862907 451726174 519226150 761880463 813246135 783658535 834908050 932192606 955962502 184789876 860617936 480365053 832632944 994032488 995910231 667893040 780560792 858087849 991561419 615877727 632157993 209003727 296457787 6174462 881427906 464427935 914154011 305229588 502192569 976530189 988167134 919097814 994322208 265850132 711145939 873721201 975019718 132158184 527285539 132863740 303257708 594532344 888372637 319116166 923099904 258444838 443231943 305283031 720836166 374889250 637788172 893408877 947231403 718343 735459003 573004194 764674758 684234687 775841119 896805260 960661981 71773459 699309213 656658295 701463542 147042264 289739859 713274278 739092768 742665262 958549501 492440133 583921747 486087901 661657850 752712407 770279676 221860417 385739712 58855266 867050972 742368771 983749880 717649824 780755882 955277054 982942025 890837745 996687681 894035367 998651660 585427094 608847752 605835277 848422259 202456558 538421526 740051376 987022366 205792675 288045387 849956422 931242254 34130506 115525143 390658154 893718902 973695337 986088212 997393280 997555070 970641204 980180449 51800393 521947303 258989260 560270451 504372419 918283671 843359289 897120483 686076037 779383875 328414715 344841940 444600160 509439707 310758518 589239717 668845035 806654620 919235988 983884319 293689554 870192219 751538759 752525778 967710023 976794380 843984933 970212116 865982690 992328394 905992829 940438920 196373311 434736039 753431172 878057217 859804229 983452888 452518942 674285278 992696502 993585886 295440290 549761310 899005514 990044020 337968014 963863656 445349988 874751842 207981963 490943415 542280785 665036118 616039503 712181155 477697320 697840150 45201388 471636903 809990004 833008356 950841983 989259886 664924651 998244224 761798320 788785474 330096597 838414597 688275161 793483714 68916105 337092730 601862969 765875897 756526645 830103086 987239355 989785065 962256823 979753751 305156662 473811960 212430764 792266374 883843398 966995486 578985286 962862873 160959731 897659221 93094779 847393703 466806564 707378617 300792193 659749400 81990528 303463342 549699306 828325587 213444313 462423316 714101047 965973610 673361628 900837207 795793488 938340711 204668196 419538023 78349809 156972634 480011306 516476927 203275933 816730826 713854540 933757820 486656802 509015336 309159366 484291508 877259865 939033804 956846560 968298171 888300210 895691019 280652807 729085750 94796826 630850417 148593495 222625043 936763177 956330724 245594398 811551562 625627363 745984818 682717115 971601662 985173804 991054766 372372276 454836547 858688579 869328495 80622880 628941057 6827246 564939373 791497061 934871060 947447050 979216140 737221539 917068028 674558850 778747394 299723051 897989423 978258220 987634487 369939397 717919292 254964740 920231092 599017347 938846264 25441687 984497748 517590473 787154171 361360701 395411191 766000704 960234707 359675594 880961845 735452978 903414024 550538741 975778801 241312865 564405164 681046544 798528987 233827438 932698429 153297662 583952127 543584306 651718166 62651769 108419707 857073851 888220919 905639788 931662798 105151767 782983527 881890933 901544231 773424107 957589398 541948509 596173139 445420735 700695519 630427212 865451604 277146266 321686082 587777133 866979622 617253692 843883254 403043460 985981190 926138332 988536473 597963713 826685238 355639607 833029530 341613240 640890398 984623224 988224217 518845211 898306417 640538364 912270006 847098487 860309850 423652714 882905586 374010609 840489492 373625394 961616671 280538013 598516903 274167763 709294325 922397046 933294374 798834828 945214199 643096077 875502256 325253930 929665863 759146760 829306029 475093290 484237806 987905806 996485927 284471368 858500118 259406313 649470762 841297008 923739160 903823625 936634030 325931197 550026065 69372060 124238281 637093449 808289393 207568985 766925492 992051707 999855543 402797257 649273156 968274597 972806854 142247235 596046212 589012984 862353625 937663743 965028580 125237096 966463077 107101562 856111333 499236877 603925521 934161917 945730288 932414797 959617632 509456486 516990459 80683857 131881745 388723859 527049648 51216608 765876981 50634391 355789713 530723263 572386617 284234501 538698015 119672307 682058076 722713128 941284506 31189728 277845935 447537307 634858067 59600063 358906898 212238133 386786039 340596937 451404400 660204856 938340462 73456705 466862967 128731824 874018358 326285934 853937352 302419154 386572766 339239514 701299188 558396176 609973043 390544180 483608337 203649787 231985756 564794206 664416956 213361246 345088810 115044344 205952813 575518427 612205102 18195076 887421148 777516708 802068225 829534526 976032554 323452289 764627508 323107933 786160784 804839703 809763525 228940308 756929857 246202898 452423448 463306421 784436620 45712844 209443885 860975256 942925855 535333082 776173979 337648559 397706025 344024147 546583818 879481025 936595288 128539503 902409050 726791904 855885404 350893305 488671375 378905061 911253122 564805378 953569974 695390708 852443918 614886149 724762624 244910228 831893529 470294374 805693138 260479103 534217301 710134278 864587904 637552631 704225235 470460399 568667856 401156901 890275519 439614355 960635067 123796592 214937653 114263857 917337568 190230883 447311248 800345615 955730364 826609785 840599518 181921105 503152177 248021070 266413363 488078592 627035213 683028919 839310889 378755230 785292976 424137328 508074157 293699821 822940492 352860646 460511362 644556582 771065469 713017094 806159866 489896062 887509547 9633157 99911300 501626195 788621327 809822722 890079038 804268669 850378044 498749034 636546106 178074933 356763796 167160636 197599239 821937248 871240810 971647792 997809529 515139250 902265687 666813294 750686553 659899733 880740979 675217662 691080209 234114502 758086922 294547514 991518890 530597029 975707499 20858080 706940178 968389391 999495038 801633311 951707581 932283611 976119926 994568510 997946922 250815415 813406607 793896332 821626238 311094575 889077787 968188872 975627048 273833307 283495587 19459182 552294316 302492669 331772596 682507585 858632974 667092817 832486314 800988620 918113537 724698051 947685729 817630293 923162120 407741376 814985757 455223697 809519420 159300256 448515181 349235860 754592559 572443347 820095194 958213187 983122062 629471086 983220168 110518303 180707945 538325810 728482060 615791289 869365760 628400254 908136382 87395715 263055618 44879829 373522873 614067628 622815553 51571191 154823398 441118218 895703463 218014016 296202453 845827704 937288097 744993576 968615830 157885356 748992512 83962962 152696627 995423586 999713486 395024893 462673551 226279888 875732504 615287575 709831738 589792594 877522546 336569451 768960117 717535258 905272485 724763302 944056564 44262276 207721975 596456076 740532013 573121471 933506626 752837740 951846069 226375116 776897252 484532808 877871357 214773683 763300326 381263731 992904794 202797862 620133461 520997437 742166985 96358200 473867160 121496514 258052908 697707761 710995297 965301059 997102140 923359790 932338594 422184321 892386051 812675700 860622950 981769325 996899821 128026520 579645510 170226840 344406578 305427728 386184227 458464292 798103486 55176166 687257679 999853483 999868709 893598434 936685622 736527363 788217113 835782896 939514543 764190965 798767526 906881241 979916030 757474923 811576017 794715647 890496501 713653720 858353534 508592941 600415779 954318812 986982456 122649515 699883889 680561266 781349440 958147822 994726706 168242463 734825465 472824150 787243048 570437575 589387627 761567374 892841350 650074852 954727582 184351376 780251674 870429882 916548887 386379995 518772144 458809178 469498626 962865515 987493685 134337382 682988963 286122716 681759439 909148631 932969479 441659472 621272475 969829941 981869775 833878822 904545572 644415228 973793186 462558340 777693984 166398680 809011662 897265135 938473940 632661866 697792437 722265820 729164987 262418128 619798661 342805047 499934223 649503410 846943058 273046414 616209063 160424740 337597450 528768062 615648730 174010097 342698571 233348529 518341137 422448934 510771951 287767804 610944124 999381526 999574213 275385905 321723417 290476101 788416858 875050255 907388302 141321964 251823064 359899722 884036957 63286319 853374180 229446552 893179045 573645901 963513307 651616819 927889477 441049043 780419932 299330485 536801684 853107598 979906160 230742132 627382191 850482592 977283808 822251870 860338218 140838233 973860664 765944730 906740197 761459663 903437440 636478930 710189091 26913724 723668499 110649930 788922087 703238378 865820925 983024083 995564936 545820104 758149985 207631412 664244457 8599718 622394313 532259595 751811364 780828297 883789072 843547963 845901848 963815624 982720414 465044221 513611231 285644638 712172144 472000672 530569769 260905750 876906584 813471362 997251771 467180525 659248175 386710111 706735198 158772969 612685872 555116853 922172557 627910667 690915742 68913972 602686749 718189118 987008257 357863102 980341200 272926576 882322261 533553920 639969106 157675942 570642580 862396209 933832660 474066468 890514422 771294420 774664230 391798750 571452807 443009312 488978916 550035934 739453240 861392140 972806486 437886512 850745174 56041441 894492156 639304071 665381353 358481079 995926155 742759359 783299870 169196180 456584755 57960673 738990244 576788894 996687848 742572840 870971856 896376835 976854783 244438180 460949185 418170966 741567365 473308748 685161693 788255855 897891710 611259966 975418661 364305485 785249354 618464671 732513681 109312352 806127510 681621144 829976814 152270089 802933209 200801766 784205418 269829966 985823776 977434852 979558571 777880804 965563838 442577739 702283903 47271693 818125775 622938645 672899872 560198665 964197831 432183263 561998206 812484782 956982392 654737093 862168095 143182676 404930011 753274018 914426751 479750512 781970650 27737131 246940559 561394299 941924584 332378509 461836416 65488410 833174020 209654226 805941444 290779111 838757949 199780046 243921274 401391893 901677521 182489894 529172936 622059924 808381589 312398637 631588206 59024607 80874477 532902604 705758761 220883530 549258621 439847489 902691438 953165043 963714753 200062485 824358518 299487450 472013719 397544696 747657413 331338554 725769644 518482735 823694187 588544846 882658460 720262600 779546016 675057496 721821779 141933447 993931984 994493721 995503730 592078025 834569808 669127221 815287946 40621144 411081142 728832009 950360381 917639252 924159131 791296223 978020071 737750460 776909648 652524537 655501545 425950721 924990897 221636248 391021866 221212779 664223570 790453062 902196411 882437523 964702579 296292148 814785071 708507977 772066344 934898304 937835244 7724010 769906211 938187945 987709026 987739411 995918375 917914529 933420777 740920653 804229147 255645507 430769703 4156950 855578113 128068526 923923433 574322393 656862396 462164704 909148779 206600665 801147487 783593686 877772858 288101317 982757876 537185199 832255065 740480839 876727936 723370631 981506696 725575248 763135677 601365476 975180873 71103054 990073762 732328012 806596200 437513583 652898156 541678681 989265700 300726744 949108024 898752087 988327571 363342499 834760224 530576170 943389663 827397163 853111713 225877713 830581468 335662890 374751245 353282406 651939982 47499720 450275206 645589325 706338926 825339984 979903008 804991621 951384477 127356459 801837233 41535900 599555131 209871860 721192909 294410077 602695159 469467523 658153574 205949213 385975470 314598211 792196577 87920692 782263935 339842984 770514700 370120592 649769205 931503133 949017454 907308389 950997974 737494810 883708340 785073958 915430775 994186974 998441926 295913649 331518048 351043786 563894378 359765849 551455812 900679311 990992718 708911061 986373568 319761675 954554876 938554281 993714758 673674114 777482077 621167683 655522503 330639678 858353893 788086355 831946659 17267511 281630772 83908106 208420682 325023669 995060142 847978642 973272368 403118872 496460998 565849773 610044320 981220903 985024052 368653982 458999784 475833067 996936875 723634161 825220533 778733238 858250347 941647299 950042446 65710352 574828099 465871917 730162155 222030554 913892997 469299625 969655087 304720099 807324979 783928606 930468219 884448826 985852905 109355339 253572665 584770715 932600931 269219692 740351825 368524393 986351984 531770672 612751815 781227820 988760171 379160041 796216848 961930595 962481844 47520803 664020145 45919340 683897012 381162915 713648446 235861568 715814595 347613044 639266074 953537857 971943959 300168820 366979529 741606316 920910512 121475200 735792330 339775357 352131607 420650284 816843069 851867377 933812041 390835834 633592911 710152685 874806735 521888355 955866464 155981784 191685157 99774579 543891383 647465478 700373466 946749520 947699474 526666602 748827747 279531797 330665173 609822887 623342695 488954543 760707270 14829737 343437328 571701093 615347761 673718923 799413966 74947510 277186556 115635636 579696821 36809048 734008381 508346773 967293816 596250139 733077043 960857186 973572263 526765979 931879474 891584693 987394788 697227327 903787225 734307715 959987983 588612162 722744876 60918880 890049497 205952082 837623584 11798118 379890687 748443078 977651202 44873073 280401615 342564765 462573834 549387220 733761075 805790302 894749390 417338421 991702344 487907325 981405307 394882243 739686817 308568507 998373342 213261039 288534979 620365261 865491000 834233773 924709359 53410239 292371128 89022389 594677220 827084159 919394140 807448940 877143310 701986321 798307106 303224433 713995106 79836288 621855261 362404698 502617232 766441365 914111175 330983135 397612053 623129865 885116358 305184769 974855690 575836541 588592147 945369152 979395235 767205605 873003592 10905996 970317037 786524248 919827963 25887663 246784149 21996299 719139715 737492779 860234144 596210333 980712698 331818986 688812923 249526754 988713414 981546624 988454007 515180053 704749422 323878908 745344083 755476348 938602692 595739962 805129971 984880853 994276314 399016313 620208868 251548601 856696880 199224382 284161755 305396195 505458096 423981053 767453506 540968327 882667989 20901500 857156243 274941301 711368992 668801069 869000720 365515413 721341994 596469958 599248519 79103751 300303232 396066186 685095677 722454571 966304102 681273563 857768761 958804772 973460037 427784737 588972169 301784504 757328366 996140358 996661776 216794776 300793055 757478746 785822430 833587237 904252601 503892841 544839596 36676362 925318973 534298370 648441364 391127336 806503688 84396018 286703363 497441335 560080163 22901682 588506166 252098180 673565686 669314073 720168441 576376266 872263593 420185476 733142093 296340661 987922947 19620356 656173128 371604352 870449319 789136072 848272929 537135019 871583369 268025843 599567798 938060966 955069294 820706219 918004670 112770782 215717322 920097469 996832541 886411069 975346008 171469248 865868345 797386366 799433331 402458371 659985442 13955490 326550701 453261472 982042064 985354282 989766465 86298144 407014135 284946721 516983166 631967040 908857971 16200197 511373520 572827681 924625349 552607616 657502609 828694648 981450101 963588014 979088578 36084638 315229713 778594977 879935661 820983608 903335262 205250372 356958896 509207219 555600209 200960593 915875437 734215066 865741251 521576864 796548542 369853768 457905046 487374045 754723598 797500381 958309289 710506864 741577093 190105733 931865983 475845723 795523383 651696221 737438217 473773060 955647560 879864311 909844109 932414137 978339677 800480973 804142487 713471385 732660431 812562306 870667632 372806677 855124982 449685329 930769478 805695762 811753939 69367741 928405187 302929752 916566346 659352761 729208707 436676005 999564846 846232511 968284990 28829309 743380841 873565579 957972465 534201761 827956451 774200295 889941802 929039742 998731946 202307838 262170217 928932932 938629407 117815065 545439330 134844527 814254358 803081737 827959891 722449968 915329867 252867659 306978983 341328128 601635717 71244302 484999902 583228616 843129792 358923116 711619245 285017258 756683708 976625194 979795640 470556031 598002053 253018239 670446631 714325643 851482077 763259494 909526885 889944393 942212495 427969719 879541091 669193319 729073183 139399918 147631259 583671997 610014233 801658238 865877185 37326482 147960301 360804976 994538274 158962092 915019406 201407112 894625938 146300886 876527203 781990374 785901518 183261392 503716402 956600004 985995278 836140744 997248609 373215707 383557040 509877293 510087952 870169469 903413131 210567714 579070246 221362736 367555518 607907945 732826617 225554870 869871314 973963342 987180621 59368485 627225342 933678794 951830525 644483883 894337352 383367728 420461564 133734081 320590823 371205128 622677277 334123483 872468915 811191482 995858892 603281435 646076371 972518748 977612049 847115063 936940879 142714319 734172520 391527692 730947388 239885153 859356761 403686060 919937897 167072378 403435420 55754080 234375146 46470362 192783892 900058446 902917046 92284666 876863155 999919149 999919804 575880385 933575232 192148649 297739661 384441038 842374878 400945154 932479341 24495113 462202734 899566428 983294803 454185003 770898770 53346624 149860439 765656726 786864577 892250085 907722721 329900091 860368913 545657069 671755124 519934194 907574044 877217412 887318818 417412785 642054243 90555479 856910599 343458102 585068047 408664092 606767381 192224118 994869147 23054560 851242603 673929624 974418176 369570950 980517419 288196180 559951322 646486998 881517159 151551339 427293632 313335510 397939262 360871219 877002398 490136463 910347599 579200240 624174069 714380266 858017836 17477925 851841224 683859434 727204601 661806840 786566087 199648938 819879531 386002392 807152587 380371523 737269323 418673245 555798897 241834631 454649564 916045007 942829981 577257932 732521989 155825145 558242186 460023274 487835606 929870669 999885417 801114589 862235355 996666529 997746371 401585336 812380940 157859346 567547597 529515236 715350049 36115191 670684454 884830674 918728038 383181861 449957384 936957705 991471185 25528381 651743308 789478333 810358858 595059021 906435806 645322970 990787688 495303667 842264852 683893672 775562880 575542993 920238988 830803325 861210070 264109950 699595151 797472852 955981231 858667556 872428039 754109463 889282088 18894154 602552058 377658218 513834628 340712931 970598311 243268562 739042279 297382216 806453044 957344367 974825142 420962520 753963183 667789932 923326264 612172197 663822747 174531580 608011317 799039577 846566750 503380288 560642817 663308646 960702745 614383004 874014470 393888730 476676045 583416144 977868093 211971055 703593986 969135939 987024786 728803465 770370902 633840116 925533497 523257039 789713657 427502222 883743345 171211896 756722587 56541617 499620996 77884138 620806051 700879176 722953832 796807088 965419230 838793464 969603446 412442985 676424822 663368852 731204079 565010432 597889239 743708820 925244415 28072504 625449158 697935179 710962929 100300722 217999092 6950526 49537425 289645407 778676323 674460271 731634369 904411811 989776953 507851252 692184128 189961689 251483158 757837217 890376149 526418971 714099210 437907084 574910917 385154870 627346341 685333898 955292670 352984475 636969025 168838008 625664436 599279365 776013804 715432528 781894301 533749796 954510094 721433016 938442474 463587057 848349582 902299944 907336502 172141074 398933560 492817962 938027883 1331393 574827930 143581492 576422575 322099062 869519387 452078245 689156282 411551985 895941105 24999188 444209908 595414783 962315381 824511521 861380228 739472912 947434793 390860740 646555342 712594287 931458667 990291114 990414842 434867133 505628334 195114913 286838893 964203568 998044087 316447947 818361288 665898786 691621976 797395789 897750536 74510699 555692754 339125796 674439819 358808512 765721920 20130226 942170513 962360205 980779319 217985952 687508147 962869739 988395594 95710550 705343839 237491571 756552871 863672893 987484180 225864483 780336573 949542303 953649954 572448354 778673043 246065627 617060852 479695081 547383992 735377763 891925888 329153550 812501088 803826835 851490426 364909996 503222622 474952795 487716390 519560634 618254809 53994944 417174430 635390963 856329553 256294153 837894152 826959171 916302396 814866745 863075207 624857680 879925128 77254276 387242004 249611134 821288435 656159392 734237648 253105398 616760311 466617822 833805577 644975917 837551918 760310390 887140235 37552446 264362557 762718637 933080061 918032698 948211989 738864574 935586049 331570172 960030021 566506070 763902078 469786007 976107781 619144886 667724214 80288132 631665031 613179063 736800136 138479044 697342984 361024680 666633912 229205571 550552096 952463685 993608524 357703339 793674253 95584476 222450485 993326301 996782048 943814173 954298000 533996019 617174084 75532096 229581554 502669385 868167917 578585105 653424903 397227191 691346840 621515344 886782261 607850994 710133266 224843417 625745419 917026025 950032345 535496996 964063267 16865885 321788470 427581225 719634024 51662677 723409945 28107525 538835582 999931659 999988378 870303135 887507856 160620561 717810725 693271501 727379000 760369877 867473140 50520511 380231035 822009954 838991942 876283291 889439479 76012392 996589939 976233538 994367886 232639905 981072622 205216966 368491152 399524926 947115082 483760215 564037270 128585258 480106987 284311415 357685466 788430050 792955454 7121910 651337046 140240417 355246415 171156648 864170707 335181535 869499740 234526780 409562546 909309446 990539636 173648455 786720642 854286372 961450947 569535962 898416617 275755315 940603669 442855665 746006937 171219065 250960258 379051295 710573563 46774709 76385325 151646834 640153740 722810203 909277865 975912123 997468207 759761989 789718160 233030042 992025706 805846891 826531612 88516425 130316340 642313802 717912664 354938386 405486763 529211455 815954002 584489884 649561371 984876615 988536377 411230891 973960924 178278253 755359259 656357684 784629266 820682209 824316195 463082479 797930784 341086913 508537348 190335936 908967570 109556643 321563896 387781064 598828195 847861640 930711508 907007910 966843294 476419473 893581669 724029190 838967991 222398292 373704159 484388374 597921083 788409575 808949430 902727942 924399376 626212139 938616369 497148362 838844922 937877161 963332248 799879282 901101561 14440837 17438081 969349636 970805237 673169509 885171510 373189530 833225291 41980782 752834039 58582590 266165406 219738392 329370541 145503074 897405213 540672947 669646019 395315321 922474019 721406252 785987361 868503311 977727960 286554669 375905304 803194247 873511810 330785154 641407871 201827727 753210047 351675557 636477747 975924641 993553552 350928197 842772540 240063493 750965445 183701677 526937535 486932955 941829027 491720882 558305542 911777852 938089190 368856473 540828552 275032898 344061600 352928071 521877507 856875068 897141561 985110282 995080666 745838063 988554238 227267599 427183470 2606071 359043128 876129326 918096172 319532451 593593449 969299163 982718846 251153382 283453151 395231757 781165362 675154344 848948900 847933911 924673968 121449826 506620795 5595594 649109935 450458446 510277789 953207935 973799231 288860499 329745213 502919283 972859723 557072620 916513162 831178775 896133813 252828719 853176351 781448213 951148341 24246383 775906751 690531185 738230869 53118021 898674524 983671030 990020562 380215996 495363268 966894389 976098836 529939166 800512467 623335944 642644524 134936827 677306746 845995811 894471116 456033017 848559292 683336963 878185096 777107813 850195838 690071107 805263613 411543002 689955275 723503695 776503401 933190512 989916855 666559956 670984331 960350132 995025648 746662847 748333473 849475620 914241631 437780140 893060793 119732233 193211351 257690274 827719967 278444617 385803340 566212381 963010855 832552365 849767580 819316318 840949009 152915484 332391606 979253926 989171326 578677277 984105475 975605228 979688685 838157006 969625126 375138977 808166720 971513534 973513708 961655580 982864713 90808658 492112976 960690158 975444707 233203658 288603679 88098065 353677739 661669330 809706584 330288985 935362332 889356009 916414284 268046820 901502018 875324247 968182957 799709279 979980070 660094445 890594905 110519062 119811349 62120657 489634135 491097488 757454880 561986921 925919383 896940713 987407238 939846541 940437955 244317843 373578992 439674405 931053322 766006870 792394346 824379436 864642644 868158920 983776632 444606857 992597583 792888858 863081396 578860612 871634584 726506108 891036076 197126196 615278126 456598948 616477398 294834840 416178634 434306181 447329099 302365952 520089455 200437473 992406398 88066617 694926858 332674531 526663656 854731133 876945120 10471342 168915967 400371811 621759904 378262920 441218221 651714739 765133157 326929766 744065104 439362759 858573840 837536028 923389720 107413614 267979683 698833341 981926462 105099206 792772679 158992957 693189708 771357824 855578584 803062371 804641348 163453294 676329839 201691426 846888150 913073774 974165773 555699587 907635316 156102482 839283985 476832141 507090398 365925905 787484230 253108906 419614545 534289677 626377111 818347607 873767907 104872685 451607948 687061791 892345795 34953854 263170071 648702926 819086723 381335083 869752704 960334602 975744608 345999203 679647606 915594780 989547248 760475882 991304864 214408433 926045271 235560002 767067077 205912221 226060317 243670923 409620994 24641101 494108251 741859833 851195391 619106543 845316834 333701910 964794057 757984751 921303573 218826182 627811238 463358976 978955816 960652040 993296445 302266776 958516308 348630665 597784233 771693272 989811368 725152111 823411689 764187802 905262529 632851398 695938947 780855014 848689293 148881477 605941184 177332457 209098514 474682238 612846040 949445350 986187815 164485159 756187074 384767997 391485953 609516553 911391254 818138674 963820212 216410174 745724973 98157158 722601540 596496837 815595324 727440495 818798890 487719181 690969489 775167125 849613812 858082701 979415949 421470507 866577552 614172438 954826618 708621215 842803261 324615842 942958114 112937482 585828308 334146878 845383645 799409327 963092229 560852951 623783292 811735858 865216722 765753153 957399417 334364984 619475255 186214337 591777133 936736459 977308306 124584882 221562808 320064418 987048974 729517869 936208290 811527978 918665981 282835723 814121749 792596953 909703897 692640919 906524175 168802196 813391639 9164373 345704889 446053805 908186576 44488757 499919868 275763852 631332293 371664036 760340875 356624786 743980727 894011798 904782926 866423399 910113688 520155661 536775527 724143659 937474836 699174007 785660171 832909213 948461521 52374307 755226082 980281986 997856833 556738226 996901228 134160097 927020262 979924823 997989533 858096191 935942019 531916856 958749256 716228326 909642082 818597184 935493137 911294976 994358454 719297377 930152272 963751648 995991155 893302595 922277515 910780197 956213236 387042585 842491344 233306021 875120927 384203647 872343801 789583888 800348338 883600581 910644911 720618312 952016817 914529178 921188001 726884282 873067967 429837946 887106406 585543245 942601255 624552852 750307164 124612097 222567282 873723863 915951643 382595789 992967432 99738056 405546831 549639551 596447023 129204755 620332013 41305655 672941726 105792614 747221912 702346728 996693960 315570733 517111945 546119924 611166670 916364007 987053627 781892701 874136227 420009785 450273300 618078389 844465344 853178274 895958842 256390143 659578044 800045784 940486766 564500224 658573728 808299147 883969481 779347687 850894802 514079750 664237597 71055258 674019349 563538701 957830662 711777377 998769507 273231391 884687668 903970587 994898416 456242747 980431128 739855149 926138489 628309603 719324699 627650360 743549918 653918622 697612618 171661125 184662629 155612611 429119073 654850810 716203992 951094182 968593751 789561217 869881420 594534456 937178969 19835978 734495554 806073304 808861701 967463924 974677362 65126965 432704471 995084972 997199552 73444714 650556450 982617545 990337531 766747425 863646685 5045544 967796164 655902502 702002695 890433081 913337554 283073052 994150404 799765695 855670564 870877555 903486922 790501610 920696083 124957541 589698895 34350686 340401893 718270196 912398229 561827323 934137417 42685638 284418918 772630055 790915933 467678532 661156951 45320676 300556039 199790463 700087681 629775034 832878562 765723774 792981050 313804334 963512356 777111960 868690959 582716952 941968491 520017865 754718026 663455795 915099774 824965625 875628254 316344416 500553530 773438204 968959398 780628193 938376647 74860645 80447517 884898913 900398487 336639449 998009808 708237757 711313224 433810913 679540603 62460906 683478280 774655217 790046820 99995258 671903207 375694935 671057009 978304408 986637456 829427307 985285188 695626081 820995581 824804403 826982145 525828321 978354301 421993742 712262479 47959020 209210133 206473038 432641429 343642783 921892939 529714623 884601794 157627852 517768596 836414589 973055842 81694619 385013693 416376023 728236898 107399992 969823226 573147496 717909491 775842335 889218037 220401198 423270750 835015246 929786674 443806933 886447715 298195172 682979404 106576359 755510410 497476117 526783617 876207949 933853829 191170285 572094751 605136908 896831328 516234704 964891503 111253435 523284102 50385930 799844354 95117038 706015746 675064757 899950808 189845319 873665134 511418216 850223402 274115657 668324954 297584340 803090457 13181788 446254525 762401078 949394219 188268648 713402493 642776329 913795845 871414781 951026436 412350318 774083808 558908173 902715160 109635824 119589800 950727654 982665377 108258614 941040068 742830726 966328185 917067580 963745545 661499523 933553378 476673070 778229519 507447852 912315704 908935520 940535064 321625643 383231601 923975899 971156068 504687851 806028024 165142232 821525888 834902857 891453636 919401158 944698630 816072195 890290825 432911161 771080444 437276644 581758879 108063680 846892782 784225607 809969027 317077366 968469829 188044421 769817782 622257444 808642043 943961553 961898577 319748767 515270015 455385427 940581882 805305163 841360916 130286769 713595352 799507068 910698662 255711967 878476874 594456476 617938322 617643685 893588102 671350199 890334154 618388096 756805899 572316361 982991204 865606803 969531686 868080420 926902067 995418960 996689962 953936443 955626135 467135870 950919006 818485829 934643022 688050729 866272420 226689111 486882865 871893272 977513001 964944349 997393519 609096385 877292518 364622300 436295806 491127743 790591036 522360765 679451244 269887043 755439796 790362906 935926470 771291162 901327327 94339433 578305670 759533496 843529614 948227223 950468784 600162233 948639336 488745916 831310556 800547948 804542746 389298338 401363300 134972763 940138475 868638886 896282692 410333075 938957796 34683281 214426060 870413902 950726360 449641905 762330133 333329487 863630159 135564916 649521373 122809534 431758303 396072949 506127620 835164194 920590781 922263924 993832818 305673105 561041201 249954680 597124446 438998023 558827866 362554373 818701079 334356442 864218476 819536536 923456112 794634442 799576669 256827507 402477499 429757032 652913191 740527500 760523057 66324608 165392839 251819074 936803611 23205796 907032873 408655472 908172400 427869839 430553852 164881772 536578122 242783527 255315463 411461889 721697726 114652508 791308643 999399420 999707443 961137873 994213635 649399360 943695357 717853112 763894360 560435020 847615594 626553561 995295528 975076693 991577296 489537507 758147295 211718640 267001538 555948493 679410507 249962178 448519838 169347881 928120489 850468592 963400004 201696884 529021256 225571782 733625063 32616938 215573100 161962462 329014990 174726025 527670981 566967287 880919658 997361651 997863504 437193825 915731276 822168765 902187105 929979004 932868850 169947596 690061661 858228087 966528202 869020523 904186518 987246033 997015176 24809921 968976237 306604271 758374337 180336027 547765146 962604099 992181236 253834192 327236520 396450647 586788833 834286760 991298122 893444835 927980147 36710856 586678118 386817738 417545195 334916499 779759434 463215055 509856266 1747768 359536928 890121675 971546136 71933310 136445353 822713598 955634852 130779281 909687367 728873331 771458326 315187384 577241299 429010908 667906430 623357008 651395155 950295832 995491274 74757382 468564549 210257341 480758463 422919543 827943261 691525299 985788293 606424167 993628509 54337677 711506292 302007362 919570470 713909463 823846958 142330926 711989042 223575904 273732064 347950794 596808441 979308042 981658016 455411891 897646443 110337587 368081639 753836098 995243356 80819522 690030842 996424033 998233568 741450804 895466832 909504703 941835207 427674589 758835061 356335904 628794320 233406587 909322737 819101210 877633826 88115933 668674121 939477247 972593765 551611599 725371622 273513290 424604121 596013091 691233025 341224113 815536774 903697633 938553093 168107344 985752376 211193587 831166777 148921566 153257865 976828298 999120776 930828510 942576937 506573343 840883223 275990747 987133673 430875502 929953655 548260275 919995325 70373890 329851646 564585770 965693339 526315676 651129301 844842842 993701659 969105984 980535668 32067187 907071966 343681546 561659691 523851558 751357896 889051287 927601882 367192836 865209203 597393224 927926520 419615009 564805914 752420110 885699606 280305973 518618298 632576992 734100924 172808012 391988294 452202929 533569430 822890348 839524406 702546644 804045709 598617781 765928738 989485867 995795224 307993213 599159963 439484818 767070939 710078336 864027350 6373512 632863293 927317908 948611706 882007589 883269490 112819238 792289283 170622957 473407164 4985861 111393342 161085476 209810587 860196112 893903090 366562313 711944235 408195399 892443245 127367071 950023926 151118638 603671995 867349334 900684696 263359939 755582878 961696215 977571510 440964595 712347161 483488569 646652179 546846202 759086484 704737748 939317204 925677410 950325930 422709281 488971298 789302980 964820843 448977484 608191746 983596666 987623754 681820487 959621599 2590579 882993373 322784378 379537268 45619562 384008912 282322629 798405665 70292062 430710683 171235902 686486276 530811181 615391662 277321654 554651635 211327086 504783877 956605832 995143041 83353835 785729773 40852365 327419928 508668471 878542045 32608740 781778871 688206725 732672701 378748049 402929719 819465508 911725350 258557331 946717682 993626451 996919556 812575653 864655451 596291885 650068657 522745344 586296697 952582774 966696780 909855465 952267228 38037210 218267263 912887133 935228414 790999033 870842797 420573944 791808589 8094703 194627174 390767425 757095070 63142481 626393462 892781723 928543308 527501810 920755254 721307773 973322512 826471070 838026734 903225572 939903900 870370681 927678699 717213465 785968273 575343366 800407967 79529897 703436758 833223335 996981777 976946301 989660581 561117962 742709033 454435647 898590803 259304952 308830801 911419791 943161019 525127897 915352642 231107705 546924379 92986969 614798495 459010109 958886123 432849087 802211942 232372040 533528891 902689898 914936943 653593692 864763767 849351830 929327636 959256025 968225149 315840373 771161420 349771848 437964553 96798166 722611812 433988968 573391355 2279256 539326405 261584897 439690484 515356735 982109146 27851810 886348157 840858300 944933691 591983758 808723095 929241878 936667755 385812633 812056705 833568692 983776643 509200078 546387865 771951994 842232756 949038767 988500584 603010768 715152476 856216208 910126469 440432189 682934671 501362711 781680935 881548580 935523958 357079259 882693091 508494247 969419971 548341624 883788572 487431786 781810336 996866533 997821727 712130909 970165358 916159549 992573541 354453759 778650671 578624179 909649858 815052914 852310586 763218954 810742717 902699738 975317319 879147636 970791512 379755352 467617881 527191671 743523436 317436431 913834182 774221160 990258925 120760035 503259950 452504352 591919910 201970729 320515420 653325314 971896466 202720258 329633180 451781097 745644982 693060453 970383088 346125861 909966236 501147806 790349524 914043502 971113346 793240118 990406813 544553543 868524043 17553371 106588597 362252446 750319959 315317468 561395801 726058901 891125008 378023474 600514163 743013110 965653380 993756861 994257049 444281094 778415583 523334253 777549333 207771973 823807645 350485731 736263294 886753598 969087833 340336724 395354885 124312859 213692910 562452344 982134711 879583763 894152969 880657466 998360641 378041999 862045861 433818378 521370675 383112518 738433267 171977580 890711906 554766373 642015438 940075341 979415019 763686296 922021003 325787900 696625848 986909265 987239428 390061646 567774178 386576530 546974720 373014282 852288453 374363488 734261478 12234163 813736429 32592428 268453060 74189569 667064681 175414415 379385036 71004686 977567445 784283509 916071723 419030601 849709012 803496556 872256521 954829940 981967685 932482590 947287410 978813302 986481982 732398660 821667646 480396105 819572585 516507257 794324898 810121724 979147895 144581604 274400340 52195359 997325002 551638059 957128394 733609310 769239631 812483732 886321572 632883792 980066996 680661807 757961264 507691174 787196711 960059955 973777234 485991880 681675476 646162266 802820758 866734922 889384095 79076224 91469520 506011351 581442791 561046769 782176502 581949775 616261783 696686676 800609431 914155383 923066717 4868834 241142551 187775554 659764037 895856253 901400301 738489035 976682612 551867441 588369472 612435138 661819930 50495100 283060786 356896407 695412075 432443155 983643530 701994185 859491290 962046841 978755188 23968551 381248916 421202320 971002378 358141000 385020217 87251510 157659869 832896696 917169103 294688637 452437754 7777693 18049726 413644176 952539891 404600095 867883866 730408022 806703714 348436597 704765130 373185862 734651839 137958020 600426525 216470292 703395776 762218579 841275704 411656413 471719719 283732526 402678376 586680149 601705774 688354729 780621463 52889224 535253443 908894227 989678293 129808471 658650437 319786744 602888579 885882147 913778888 964180297 969780846 306722825 679768169 493214800 513384284 51852244 640548072 761412508 928549287 845081188 985030129 671104366 688722450 587313895 960105290 680855283 802344138 378141682 397744407 720211053 954168306 773984485 880917058 471675150 804398227 208714697 984512021 765446181 988283862 596550766 877118444 124291284 750684069 414366880 454927762 115673811 588622262 559109138 720105551 928841983 957994892 40985818 685406704 126704585 802253702 583634489 948307589 409106033 428679173 731902215 821283529 792143037 956739433 810660228 961535516 582086868 776947162 146476647 597913281 785618165 932712701 950149783 968017696 988896099 989197491 885068865 952496211 904515324 922783394 619711134 960195110 698772421 940666758 103128557 563577702 884675026 895154676 923300107 966951080 666801425 681597296 507252051 935961517 286418876 819610126 900803977 938503132 434381039 996294135 607536552 851705368 301195967 790149081 50958261 211519661 950809556 984970562 618484244 776514648 301550063 307221792 517546480 876122900 393889160 626582623 987505945 999744759 887560408 916534980 382728044 870491061 271227908 706909507 893190472 969317136 127960188 177637239 162204598 352761252 910801287 946480057 688804771 885700527 185842203 247751984 151217956 420813432 755799534 931214127 8464770 133278006 971431672 987863928 677662195 771847345 891145925 940064410 866191943 992210276 259946521 939837970 929635166 945778251 784515592 894447408 539457303 572689435 432960901 900867887 727745867 956681760 886865982 926854063 456421069 466816602 407916893 559007471 594640791 922007643 126840602 451616033 484717602 863048518 786059588 936145118 155218298 413598998 578520219 678281359 43937378 327430880 16616924 598294939 583598110 644737993 27026847 188726535 665529459 893451903 296234916 829108437 580128376 685625918 161434330 523456139 507572582 555755159 490143138 852462196 37728567 39843913 975105714 983957030 60184488 272760802 886937460 976499062 738401401 854494735 506424203 640025725 990927330 994602332 691561546 909498046 302008710 860812417 93378189 362620224 407137666 524917835 522441522 793318099 346438689 666804926 880703957 920079668 15627038 521906998 273202251 740214072 764410899 877611608 846401533 871538102 342271270 376713845 148269869 553088431 274188825 878926585 396183715 425550635 56777678 393045394 630306340 631301313 368326839 666251507 750139690 760130568 415918171 627353730 208498841 671280686 334382835 598502309 355317230 837013843 755484744 936599827 447268816 658070078 577548185 866138735 82397714 781307583 184549209 949117694 466092968 999071912 690211281 959923980 880094741 886681618 604773044 874411431 592372983 992901170 625377757 906209551 705268227 777651980 473233877 937112730 205417102 651616990 313582899 540330580 932990482 992168808 922811031 923709196 277340717 361260838 682532431 727758329 599803206 751330856 927089588 956965588 64504609 606281397 518528163 929753085 540722841 692856466 375557341 647237918 251495783 884959893 118578681 486140050 410705584 653534887 632856361 789414047 160685776 487048047 521073006 565521632 394980466 879359499 935074695 958223236 978409146 980950663 178166916 685629718 220331409 458883321 748719914 970284461 342099207 509568068 111358477 499206351 313771816 584580508 902747908 941872583 294410853 821512699 368757465 845569343 835182180 947305678 233497113 623017260 611753918 997818861 105876238 516442320 576856289 591978250 374847861 465415885 710881292 907927380 241625457 388344662 891612345 963063193 585908103 683335313 804024979 929391534 658012053 914882296 701658812 944719825 232365200 981396444 170210660 431048835 135635118 859405210 303634250 473895194 281493206 657706056 895908937 973645480 603617592 846321605 89038431 823452528 991837591 993170659 663046449 673648494 478030157 829483618 343125014 927451145 319841223 600809556 449998423 784280406 500174388 978704101 229816273 973903279 579684720 703708640 488198640 953932027 353833120 605101977 509216742 711892640 678309146 989498602 237865792 417326461 855722885 987589028 718537700 920958982 349172258 477070363 342813481 944556574 82518529 686374088 913699967 981106036 931067885 984599332 188420606 785674608 872569831 899947074 519726141 981422619 433305220 890138399 366887816 864700109 618452960 791575120 639181183 713354146 475141846 630145235 184217489 922885740 157522426 965142514 421888203 586526173 910307974 936283099 202604841 932978223 788207069 930258049 555543595 858149507 824966757 996614818 100418659 479506218 734435277 870835934 390926241 812413181 637878881 805510972 696490941 878427229 210911966 338830152 546772702 831729934 149485006 174011766 789403705 933552034 867804677 981942469 784716598 976000852 697778721 821235373 361223872 430407319 853554794 891424335 780806570 827811685 123655577 743796755 57544027 68444660 490142705 778558547 460464833 788746741 359621166 637688648 993419107 996750970 446654955 487397878 417156668 425699243 980225704 987105793 968235089 984606701 680326221 954273201 106297111 358393988 858229794 891735178 409783384 536751741 671715677 941930443 125566400 358844334 312658319 950465941 232786432 370753997 799835116 821074991 936388361 997732232 490615558 583158971 98586385 551210721 184350549 993963957 715557293 724625274 747946819 866509803 172784216 219204576 363168975 982252284 647404807 728470385 769270226 823922944 957972046 964081836 567334901 788437510 55136643 930956326 265804921 428592511 921453472 954162588 901480093 984753471 694731307 812421818 942850287 992772758 554973873 869700219 422820193 449006036 794327872 853021500 562977262 619720080 90836322 670430604 133151447 719004015 899825026 982926318 89675923 677969875 335284408 533428966 984666491 995005538 929476215 974696849 297859054 869997470 253984930 718639596 891429918 924064023 257157675 986343107 242537158 514021153 990090226 995285374 50926949 596765405 548488018 608019538 640747304 718726827 36727926 510981289 177327821 956665636 334993600 630506403 511522337 897408779 872491595 996076175 270030599 345635406 427219925 888652402 150145951 921932844 886287797 922840187 59744076 913126585 273207071 606223725 327659442 390158340 430377625 886102946 430929587 830940643 944763537 984324778 661046833 739609928 77902899 966056458 162552016 335276177 613269232 937520956 611245225 632960227 718183999 978588860 35134920 467784361 83250870 909558230 937579086 981407255 507844795 660856538 280745544 588135984 200558765 803272908 529079078 553633038 521170024 915005682 186827109 401512485 953696883 968715113 291844483 308920699 353755589 998442655 978488903 981788566 384695706 836355122 149512363 547893963 749540508 876347537 404592979 578319071 410063524 659314383 586259637 608030772 120093533 548741512 216862154 427654479 168816529 744526445 311153177 363045388 307606743 798521911 165548399 812999012 13940969 997228427 272772102 356569362 202098704 668778160 661224896 856764279 530183748 703020078 946247385 948766921 405940112 606337219 758876789 956699510 629671182 984583557 416920211 713097587 824040223 984352471 658661057 881472656 83239810 992395328 512483177 941694872 807149485 836536331 567473449 767244210 559303111 906208336 957843295 967816539 973134387 981297759 409680309 538594597 98124613 879267845 296689471 704113277 407547446 891906072 920338231 980413915 278640252 811073208 233115011 732708786 842352592 886956380 480685003 729042990 682513297 862486113 661933154 718738513 849575480 969374795 464780123 546045970 267157544 917523903 631064505 745985929 813329767 909538759 14961375 745830809 323786908 371511037 589578419 681135819 376552457 803903872 367833794 970997549 875230992 956804155 312842642 679388030 595401770 781089940 932788921 994116856 990011755 997618279 752375174 835802274 983817464 997045443 812145971 983598587 782012610 849286570 658329682 994793287 236500227 537777057 155251248 601417722 877036160 898412523 167421869 659909975 158848079 211868864 741172606 931917447 331929939 708241376 361371494 781132527 387762152 833075559 111501422 847197426 728001723 846510356 815837942 872639319 510408378 909476456 474741489 778930261 493284480 555762089 291533220 974090840 577688007 823383727 306536415 990601068 336629104 381099209 751545366 760822996 709537533 811880110 590002619 986508818 227982813 813548677 744683793 902089383 466529846 946125702 606476316 810942529 322973902 947912753 29588639 639607294 552614282 718154384 579144397 792064623 131109538 285994230 606882544 870835042 720600685 745533788 243522895 572603675 890161555 938359374 370641517 611489708 636414896 874545076 736028093 966429970 944690158 966221155 653258994 996037219 444542450 627356589 394309664 546784728 304055100 410035846 127126517 402835377 66196237 149997655 292240294 917074757 983615585 985958136 208087790 509183495 705358681 769993299 161391190 708255116 216806480 789489563 669180090 748492618 401158524 862445531 544036273 649782546 822780730 862431408 31306433 252968547 315503071 970962238 690099775 918933063 998406880 998951195 334185425 854471661 522096193 564429577 791661242 881433842 952484385 973159114 55561917 497040764 592095761 861599862 912987505 971514932 474741020 696527870 138718460 544646982 615195055 857555511 73001146 398165257 940780608 991496119 251484211 565030096 950241929 992435110 529463503 958368973 965425331 985020006 888522790 936732274 372579716 888290794 611428484 703026082 130715027 788937848 215033443 890656773 964588402 988254259 809318146 947596351 575408720 998621097 122231671 528575144 839439060 866146177 686879592 873178317 282526641 910238425 165142247 294026204 962912899 965979360 109855691 535402073 970169369 983958734 419159548 949068940 481915520 552552359 263713472 750975168 894543236 918699073 236706135 378543199 734572329 865453356 677138039 744889064 991674604 999422096 925528108 981143971 182875649 956611793 279532259 694158062 990032280 998324351 780156068 841707594 834233440 991539198 824065289 942825331 924014357 930565033 98606026 361002013 860403114 972379359 432310781 934940309 573147682 972589931 172609639 189146031 336511257 934834227 473298123 998909079 148639942 939074046 568776109 982832490 754241838 909558125 630729369 986815331 479641890 899848397 650799272 851836463 957875644 961852896 375850262 932297607 56527471 467782260 658428481 843794343 520254047 650077464 153356013 880807531 883447336 979508232 208628221 297239004 850432611 853433190 847310818 969138214 747896986 760412144 476280776 739571982 945571289 975144999 423104590 726534362 465011388 876447726 267967484 408863720 130804225 967585198 583355055 615968000 962853047 985866756 808837769 812109651 441016894 835994624 939318838 978139092 286675146 968165296 842737947 926322826 603914469 717888544 90191433 633480044 630620372 853838742 860833236 981287370 361061050 448773855 238396111 582279491 577601254 954334128 901568453 922035526 185857065 890317222 324036289 702895899 514674966 750515888 225073418 553782310 764846396 940869267 753038685 792827856 947386321 963513951 795269057 906919066 993049865 997025968 112232541 542944245 766292108 939898415 164647226 285867551 872766120 909249748 542226104 619301823 988241999 995358986 774636007 828090871 575111048 609426328 271850554 381630664 53536178 670003799 578424827 845447695 935707342 940958139 23923193 774278485 491735406 985269393 715547125 995141894 509766784 760789470 340150415 499818931 994727843 999008122 77245652 309738149 50305717 55342956 958041449 997915230 875165881 959362821 272691683 389607086 798353543 907624821 915966823 926557604 718185532 761468769 633690764 942349462 480944361 687732091 868897830 966886937 574680320 584327566 928824670 940419111 974785767 976581062 200377860 704651921 557365825 944461705 230534354 884077685 505062397 694624551 811158482 884888760 478961550 981001180 562641639 948460911 603012984 992501939 570246843 787233478 22137085 707074258 518906638 520739437 927617002 992559186 846459246 888874428 914105094 940721688 956581945 984602302 664580258 720596621 976033786 998131943 146094058 761156095 140936625 746523760 625618322 838575257 29214824 746041247 263070710 834875043 633863648 898245515 466638666 702610023 416531908 677469413 435329229 816745187 575471318 867203065 777965092 788133839 853014967 940472908 666637373 760043156 31100596 750591487 507264196 664017466 522801092 623342520 297274375 620615193 824699182 872446649 261757523 793015288 349823595 670958058 24424625 438200077 348121640 986856846 927661197 993713789 872236961 890659286 832329903 899890747 223328784 230297065 780050165 967969154 612917930 903142505 263908558 816863027 832500170 928369203 171596757 893715749 689150757 861883950 454623630 489221751 931402035 956780747 307922386 743298436 115156215 274620245 1831293 649077780 447941904 961975545 339365404 765105205 20853506 224480542 663798058 991303649 790061661 801292928 828545289 922095386 774261064 957052951 958014563 983533547 345122522 689883361 362685228 686978645 347398109 822720250 336676689 425352439 161905671 933122792 563722485 940544964 289551807 939731379 80166125 260233039 809145360 886716041 96841191 306420646 328671753 697040147 839831251 854239502 320210247 586870118 501139149 866574963 557845789 791597450 70824581 965414739 315711730 328491831 266017734 960773281 362220780 531338250 560807364 692146447 875334245 903494442 865511765 872185086 98384301 336098426 833399235 865556579 263096288 363355590 577405569 839353957 475753336 568839060 587147089 644567807 47013597 478973921 571256252 648944519 216392956 497588621 923832821 983078228 692731864 806723181 616551386 989627079 517253893 604610647 552872856 576108575 299297861 956718835 229156065 786946304 761042772 975906270 433100598 784242935 915725876 971708016 855330602 986205612 388238606 980864829 829662293 841681648 842507710 866176510 784729381 811816694 641142872 813122999 94456586 640078408 641282788 751897975 406510565 434291340 301649524 482960835 204940086 369649249 305890737 472917984 705398412 999283693 216732324 648655986 645586060 703225430 152445301 513744360 210277529 926677363 898102992 952800746 495732037 847869602 64535585 226940203 439546371 760944634 507539084 950567001 155774189 815576142 161388310 916249758 228380212 798852867 339721784 423036964 762254505 859389466 634496555 971459401 521686757 658385044 907795336 981921888 183148719 213351310 887187723 911426784 384086613 388977388 584037347 963508851 524914251 832031624 599924651 682508306 301023836 984676199 372703933 857234492 746336099 963561441 663132513 688366406 602290687 847979215 485756675 623529183 847008634 855687531 470997525 949241860 249744315 901831549 997435794 998910473 732951801 997503625 97907341 319149346 190753466 842782671 920282226 996112350 484950878 735934553 283167060 457210198 578857020 795410469 279500614 493631201 320908454 781886485 176820021 189338578 854304231 978876866 79724802 753085344 691491420 798411659 231605166 536103640 230472855 505799230 832190219 964485162 452738092 658776722 153404068 846074480 443182470 913194277 295449884 728858691 22286791 145759956 735985943 754195051 734221567 852386945 811929177 886739554 343850012 442846530 697556997 852065604 380695021 954003508 870563778 989060512 693364774 776828472 13869544 304381677 647067112 750167441 946231828 964396168 634132414 910071158 351757670 967226854 802950654 892425735 241313320 841199315 161735387 680141450 665388023 991703695 398887938 648997074 876437401 876439096 184754493 878264404 62978646 389889402 361729863 407961532 623686032 678665269 167654524 707962681 749073605 819249592 953577096 982710845 316266447 831040416 556013144 792179670 96819345 168977149 661302394 873753728 910017696 931989428 267445193 416183275 812036537 921876515 425918016 657088272 564609187 836451671 448467960 472866091 927484869 974361071 125960929 734805251 621729435 758776664 610220958 614622448 999752060 999847519 121408263 863300636 994024276 998859752 6472156 368086619 970851659 985957493 673361593 705726660 509640712 569505639 350149878 378941083 590366802 922365899 659864345 699518521 594385120 826141981 471249355 849909166 113520434 587843962 572875709 929591727 373614161 786435883 761867330 780906724 349435404 451077297 536662802 874861387 309790535 713699368 385220199 390356666 884140646 969845671 118345094 879409542 620283417 863083276 628907395 996633612 815717170 833706219 25241729 36436887 568881090 708519406 277096808 830380418 120303337 923192427 711115230 910180624 110262189 731307970 153460683 567895605 441843285 994479773 821029047 899531296 820143917 915562348 222978204 557027853 634202079 693844753 511013658 632780458 452409931 570236869 702928231 923783241 502708582 526156554 430250658 718858993 199567235 529339048 966975629 989688336 882657942 889031447 951957746 956457258 769185987 968906656 484836037 591089590 475894942 850374632 215107333 231058980 631500667 812001329 998562484 998801576 990053509 999395215 58884800 628522367 299412828 880552246 843508699 990081408 238901515 511860339 140816390 634533236 10097878 127558356 398130601 605188318 687803542 804738752 820121414 846055800 781579419 978420763 602995660 633770844 480500262 870359897 508354229 696698632 273476213 490921233 265337700 715963942 19193126 23674300 214610543 557081856 192547385 311932520 857867233 967565543 493171185 990946127 951187157 985097569 597428243 746662188 437677695 853103138 618137674 667275365 554087772 806168418 641231256 883444585 654784726 851149229 783795751 843518202 21102601 265182761 716872769 937346219 273097143 692622564 865679781 982443063 992884225 997462556 433651234 985789727 288979965 877872619 498614549 918472502 458907070 893610306 373387995 930674950 639261749 900179981 611954111 622137774 714209686 793401302 112511759 136019212 656864166 922048752 94614025 377032361 991084460 992299840 924098782 976013312 86245577 329769680 968877686 989866896 801581723 923209193 89884681 288386648 606392532 956101310 589122499 985374659 9398593 421838490 549588530 828272627 464805870 769477399 112793985 790456392 394416850 942521579 455315982 985293944 37747664 205959067 716858591 922940506 145361113 820708662 888251771 980650169 274073427 606152208 637451335 708677296 569944687 987072114 838394627 851096413 635419289 746187685 824663238 901033728 935346347 968552665 105840337 232670933 211697673 626794188 711182007 732403915 452905022 662155163 768831500 840519496 804109686 815180166 529514824 582214406 834172407 931624338 109633157 246182634 369586737 472808197 548167467 778840456 230991390 942533006 502495096 547444209 513360850 788419092 297649467 513211030 852644670 868460756 821493779 928991328 480501361 599320243 37436066 983098119 409861846 816057155 408085079 670603116 632027386 949968377 40089153 979710051 159682819 824442072 876674952 930038980 608599692 646375723 737246747 957647331 593092354 867417823 747352053 790023439 281158831 464417448 968786940 998765071 702609055 789750280 607947355 703362546 143616137 158576873 302395634 606424943 875593634 926236142 516831862 899603356 342444413 947103418 572339840 865524805 141590957 401070981 703542358 880536743 175247532 414840652 469735328 808265604 819114397 903652480 112205931 962976505 918379573 927999813 657898108 825383043 731085285 961385152 880252331 926601548 959503413 982067164 973406467 984805767 710283795 984627392 91457952 419763782 867639200 886585727 74081265 225268621 672717898 712940165 60552026 726859497 623500472 893306873 863881805 874779997 639895435 662675587 304563245 776961281 573481622 927606412 417651309 916807939 235040253 693747436 647410690 676110406 580308313 937994426 370651927 872788274 584275221 760993013 941234632 996801715 690726651 845561229 102025250 850551813 248084269 680675079 193438473 956270331 855690056 857030159 65599058 968507060 541325083 672945007 516292877 802260497 273610486 484648251 936699778 969447448 223943308 921341076 714617095 966082564 616738895 848688884 437035174 994800921 939752187 944474616 821685013 969483828 441791029 663918995 429834723 748702743 157429013 326481412 69914809 603051443 838822028 894043943 39273194 763947904 724386487 945165721 104242089 330173787 350113873 577336740 85047379 341770681 373972674 730086836 344880605 673597919 142326792 989513244 501079033 535961469 930868591 998239997 773287984 773582097 701762178 937243502 685474513 790957609 434394005 664103112 780497057 793882164 110864121 746732589 80929651 651716435 521105789 677639898 309294039 501273964 264125640 533223277 643986995 892110093 586928355 690561337 427033275 894817592 885777552 927057315 159322273 869728569 592184695 926067682 749586862 966767829 423975558 526527473 594890641 709551871 637078356 753250770 231073706 334561006 238783230 946490113 97490050 438028278 155585039 624589425 12940095 873960383 436590334 819004577 536631299 886940213 275779141 881056091 320113158 634923139 909824658 932665984 444960284 550344495 458312028 832726965 419074376 834282662 63425580 123455044 172092450 797866472 576465845 971686108 977180362 985900787 659977913 975314983 294965146 698477360 944439998 980157145 826369906 906424409 456735594 615565666 126921167 741807160 41514972 640700904 574872775 716383818 303519052 895351103 142805848 673267753 233282292 820197571 574095719 727107725 875642291 975578299 826262760 870786469 523531124 815688066 83126342 99537517 644702626 703575146 129836079 665484005 632789063 635151622 4616349 475863089 528524731 552552543 685441634 927684034 472714327 501289355 227303744 886397120 567749444 601776164 709697266 901611203 849003323 898196752 432273827 810681135 127942141 524483140 567192858 819305414 905385008 921884130 956797490 957892139 621176442 957302932 969401783 996527418 190981678 901598990 177371402 780773268 436271869 528884565 507660420 950603820 200814979 371510492 492238504 537289573 112739944 401117068 452063229 608745339 154479824 467301481 646049975 656181108 47661941 129548843 419774886 425772227 284418614 705487725 718412541 883620387 949259842 993233653 990316257 998434259 519140060 898048669 516540903 850899798 366770231 733816390 334608608 441118134 367422731 799248989 449199075 663771126 884847792 979939257 373386626 841096533 101162381 815407515 860044819 944069524 295813100 510258662 907183636 975489773 608019660 984707620 748389269 905753745 177646159 689139878 296656408 994664649 404931639 494359482 668407604 673060190 468894538 682203550 329694830 717540186 230504144 955806476 765822406 792182804 569890050 885229858 874764928 993557766 671562191 898178656 716924824 973047735 931161878 940635345 843598983 868621577 192305514 203213393 551529377 762727860 397338999 879547498 833641705 972271661 922425589 949329912 583631770 767433923 762282254 883942592 368104254 953248983 923576979 982413777 948989994 976372446 504138625 581647515 244038671 615092769 308502886 735141986 269170122 649218678 521602038 861950490 421832599 449730512 850471795 965018955 402252316 629709868 434815472 957440309 970360962 974489400 897150734 914405207 66835387 955198229 695985566 869361079 464018003 679653389 570778551 886828634 928595750 998320026 655282154 679015608 315239516 889061064 561813733 778560377 393111431 921228872 606710133 618768837 64244289 461657614 961383682 995677266 853865117 931962078 637429824 948697319 806899487 852649021 937324223 971817889 446065634 638105218 265104543 453139522 773889870 812004567 624855596 853894189 448920021 567980570 458360315 587034060 650611817 681783729 469474689 550091901 793232696 937317403 744984915 972570049 439588190 462793854 733812696 997764166 896271549 906767627 499289435 819174839 922061273 965483021 307292961 939244621 592491559 754778114 178404099 515527992 437539438 981460797 110110374 256693057 490956711 846697220 266661184 293220905 440364772 630288994 226580531 695576472 218152030 642358985 37853220 988045828 237364903 765927690 717736860 756519110 488881589 664647294 671036807 968863206 732262997 905891657 860256541 927397720 768009938 943951285 133983224 474698823 712534476 878777404 249483708 410393108 687707658 909180396 844983127 894817316 90338342 367550148 902384342 950614577 131068331 531403968 941976226 977569810 966184849 969691490 567698929 740614452 41365571 798366406 327813345 780799840 770934913 952394145 208031976 594401371 21274575 810830529 996988085 998495911 171103682 442094802 121952704 479725654 151274478 579209357 322433229 595447884 740359787 852074337 440646768 805323175 301094423 644280657 736230300 737657675 223414519 884747000 215191229 741169788 360095604 576525582 725041929 851651520 461564970 928885558 868676703 944110308 848452204 941092390 151657430 168778197 300200210 602549486 707025182 851000782 776092275 807340393 45375514 705551972 129539027 290048590 356992014 943657952 10773066 295786909 162571950 397466798 547866887 616260991 680358163 869865837 82678666 423368669 685315962 740136705 753186058 814141729 918288187 960457395 162753740 705754643 61391096 175749818 841028893 900149101 387609602 657803214 93795519 383268265 877815736 896804759 304358927 639344425 545015071 964409021 158238107 409163195 629961628 942299507 111381847 597189234 982982094 983348492 348673107 383453001 761280693 849519594 931649145 962295812 688376180 720105472 598551111 931466408 486715148 827897907 612382904 707933914 350693449 506197970 45366173 936612345 138140163 788785912 996309481 997154863 360399019 453060964 255812546 741343193 936224021 950149282 519397732 934590996 718803315 824456598 473170920 652711378 200082432 820776502 176305439 599022288 482136800 975384728 735668592 801642326 503218691 888385984 485311404 959196815 659041993 709664740 144279436 978475323 888028378 934861130 867727623 888985655 522144807 773848548 967362150 998995357 451943063 744608605 783092910 984137501 840728474 926803429 355815491 525646981 523133556 568663073 534457939 602285972 365281614 455845740 941455536 990374970 675437251 868066659 233097583 939029318 348857324 834530925 103141995 105996276 555817043 895264054 22869904 966923634 433504823 776891609 433329640 769093915 960146429 984050251 790056613 887104321 713352864 762899002 336867197 900221426 713619766 909646687 361187347 660113960 758411598 793720196 794986319 830319262 744378875 949552081 797184281 821896417 231298141 314601541 422988712 620442956 767121175 824327826 16494485 551795746 859533805 867230766 633229171 782508927 93021315 645319039 643057169 736399855 394962207 753888735 182759371 745269716 390037897 817981266 583078076 882788294 179745852 583554368 17520221 655374194 104089471 813715018 517385880 727740611 219729146 515370148 494907128 843917260 904146983 991826144 699859055 902353175 881285971 931927636 173225829 907057251 433735337 497451133 429249096 955142563 145130412 890107870 892560649 907940682 329370017 550826915 743500442 894352797 967324029 975391947 223958286 484192928 388385603 621979448 102368052 769870262 89100462 749623740 901561565 933608480 602604678 879808038 249257895 980923061 717746713 772223132 518263623 549581884 959837581 991018093 826721217 966147376 245822809 383397062 950922956 994612776 949110813 976716904 380426391 390056777 328883873 477280881 702644073 728620491 610803206 664287532 30697659 343969015 780776017 824472546 980245074 999712045 141518996 444349124 955476084 987804079 262508685 994206943 618193007 632409635 795160894 854429606 719920149 916057162 266640041 969960011 288600130 550250064 399684020 654106501 208822117 470742341 530144297 588972461 170329533 368614637 910472786 965327273 637672914 996697091 542094061 780026767 705688241 890850938 81415615 525060476 760399656 985156759 683421339 995675231 585323897 711034600 569816021 955322124 809806329 840103934 531177160 670145688 478083671 512421921 461714743 608634168 309656665 898822000 89134087 988926994 9189188 266437173 978253310 978614806 404282921 926460506 490998929 983834581 537063482 687451303 360427677 753927511 886782763 907737606 977800389 989757041 769718893 976556701 332995061 569873121 296145181 599278704 929986772 962926501 963969233 978394178 389338464 404939250 175411827 244900106 182377627 868758831 222002856 953084167 978726653 997331372 83613387 382621385 192549802 450291950 328178580 647792586 447154282 502512750 237950296 409444397 483460871 951953173 419271266 732159871 407701768 741065711 996655591 998685903 374921004 679366155 796281809 973439574 751044031 887409876 920701655 945639322 586705901 670216165 255141890 887808956 976437855 977468617 87159500 211657429 621706043 697658159 63436204 109518465 225847427 771438207 361712082 929348201 814589063 961186327 774047735 870977623 901872562 921431341 979812120 995244957 363540093 979472499 999203400 999763399 21202117 872819281 765591887 937478070 615508286 942700701 322114082 394857115 127701697 989843448 471004466 617126788 2903286 435362883 5877901 347487550 475309666 780039252 89228613 524968701 22356150 720807215 826506083 966146186 32196613 876033729 249794371 945423379 318520433 778558597 537291352 864174718 887096789 919491642 915275787 958422556 555646393 793407804 129170222 423318317 53669458 399661452 163077538 935416335 667679223 964872424 692885863 721211508 192215500 489088655 650474827 901349542 117088158 259953169 755699249 903152831 915721582 946226403 72377398 934182696 324558279 378337816 719859431 795717945 309473894 445820017 784888971 829458932 573951523 902512293 701224110 934320460 276947786 305864000 503805987 864336931 736071668 871441574 690761973 927531922 900871635 935716240 788183163 946920696 800993028 949886021 658705883 682111815 95008740 376573881 843697158 998034951 388171082 955854554 802209434 827517623 236997403 434161506 707102307 711505922 390637388 411418357 924266033 956630038 740669146 920201729 914815901 975943633 112676375 650675583 358601525 499496233 422557866 855368547 700581257 950979607 47556937 266433212 435358238 796073826 261480155 864770154 856073399 967765312 172664123 752480415 81400932 381686957 99363926 503303342 532617477 816825534 917323736 930989973 848292933 882061786 556123431 725913089 165469551 304856539 900126939 969833315 522476016 556596504 615161624 669743484 76120625 714907749 248874033 321168812 837481473 982086861 712823066 787669159 93696921 563824261 740781262 928170579 429355282 562726707 323003498 955959168 332295162 601594882 554052249 763649194 607195700 976894256 879121821 906157831 923347263 945431264 151475011 895675395 698267659 701465430 770777166 999798648 878588402 998406499 359843567 996187075 225731720 331508384 711476607 935960610 628762428 876629467 780981894 904736757 173280969 688354918 101968524 640314760 523921298 891118030 373580104 769810176 703116538 762704307 46676815 667922880 168102465 377069992 654643964 831193360 731353544 956613938 917202392 993353305 349204576 782788749 945675861 970492189 83110151 375274295 38725120 656137955 461319483 937348831 77046566 442044378 874731867 909175013 839711062 907602380 585538610 642452678 203879445 832478893 901763808 941169058 215888259 826485016 80053870 312179141 343667910 791819668 711511691 860987251 212178141 964041218 543333512 730377269 392890635 412196598 391635308 660169408 894531931 996650778 514287398 802843838 149181090 992823444 727144046 835538506 280392079 772100196 680660079 821137450 231421861 491723968 481460729 869788062 889541222 989509799 125261992 716189237 447358541 788416377 766058665 771597147 268675612 974893606 596271778 967062869 57028480 375578637 616821365 760090228 688764245 828253033 128065356 231499299 832494164 987454925 773667755 888720614 827977418 918927900 781463251 994141825 906533761 925791626 648993941 716471362 819328746 878997178 902939813 935512111 866779675 876219433 406215528 694608385 303059383 776004218 347713394 996216519 777984514 959633614 735855901 945133905 492223413 994998096 347653670 825048395 696603096 910847801 670577415 916518080 634249421 995445553 610987281 987500504 170532661 221945342 125404357 241192584 113650555 926503456 513749564 999248757 990270917 994500398 102312374 215030233 667584311 727166349 212228152 826078845 111981575 492713512 24438789 769317414 948807342 954049000 56859990 890276487 756069237 935726405 73239399 424567194 648365678 914735369 361007276 687918830 576033459 870736914 668160443 807857113 360721343 581565952 779999694 882807011 854850260 914367709 664616451 888916238 957140918 985711009 209241526 513008198 753910469 867492791 17323531 68613937 296922176 476991624 461293095 850247766 136272854 967901512 799491544 976266547 842301980 853695346 77104261 359132079 226819364 397156641 553059261 804168550 947529626 994229645 576241303 958835307 419332281 894229081 971133689 979812875 783559226 847550749 199153498 385557116 928678324 981449082 601972112 738587085 715821784 907805345 772044338 916164607 943521729 963361513 423286280 800735880 958835894 966170006 530859080 987630333 7899688 568884014 258333639 562830175 756124171 825091464 373709917 515133036 58886999 934995236 928426950 980655927 181133102 899692249 826447806 891103138 151462333 689684754 365880287 573509230 496966814 861869400 910820638 944953347 781930486 841875914 201598371 376681811 702653057 794926233 228538108 584003856 591136798 768116984 882608626 994666295 285659305 953514876 340069679 341721492 331328417 880703495 734205285 781608109 653797560 841871687 38375076 699013780 64729966 392546432 586318212 985670012 762755701 844837159 576989270 913124926 808097772 830297777 234456432 986703874 64166071 146238776 82450055 834978293 529738286 547310406 384839282 619780561 489513937 837612996 852947230 908159207 447245836 810565411 648989392 729648953 730195596 742418077 94187254 404899629 993081186 995094477 177090826 798784882 429938274 912914060 727436722 842885762 533381218 864866723 987061081 993415250 48499369 837571109 346521779 509555980 562849564 820315776 436945294 476605628 607353502 719306392 837686643 859267913 774867372 925191728 664335646 707290628 926730959 994583892 781012092 959633376 612211566 627397727 156631685 609692228 401716315 980547781 974904852 978462847 202638445 252458321 414522919 635334097 538953817 917225446 910045572 993874871 738389224 996051047 305482267 573935965 49297305 431109325 780623690 864035432 739833135 807504795 500242056 644472135 753786697 812830139 389553405 906568729 399004798 730282150 443335221 465197927 547252440 847474121 565207190 582098391 958387505 972972973 676633709 754818366 480798044 573474619 322896808 618969275 626759468 706869898 413216556 843608988 759502655 797963294 313975839 486997466 238541196 405920174 633177869 730294714 368616657 713204828 121433753 728996755 931402000 949293346 801715688 918582122 404864743 407647132 518181252 768792221 90718767 478981012 74335223 282401782 865284031 928508894 949775548 979544318 160109380 358157043 607787138 907029134 29116982 212704838 39171013 772738533 82145516 171816236 411957580 732851258 464255982 646445429 825458644 978250428 46600737 691325725 289355260 581489374 294396448 311416271 295078112 660653343 565813221 627735762 315709675 712807064 777711010 799746329 968178714 996318746 670357996 858333574 923144646 944611606 624258973 860765691 835561333 894141425 746343011 962444047 200375203 279190565 214943901 998888884 258158117 968083396 721142407 867962470 613953949 717724089 458505338 668944984 68710210 287106760 118895487 391589188 181058725 958722038 109365463 733548279 858212290 940142136 58217384 532717636 973944634 999439600 539150168 646121754 304355819 909222261 848093746 872411410 435669306 712939275 320615290 345593799 750735509 889943717 823639301 947597016 297436005 533366831 24006915 793706218 482319846 840501312 54188985 324122036 532336537 853639098 491992706 659913515 918885262 974940348 688173861 906776304 497858425 869150890 178658315 825064816 740987069 778738914 695505869 992477514 338090918 970348216 771086617 897246583 692245373 730114882 957837747 961204756 662812036 906450820 631444554 912581063 458449460 599660098 470663128 487441290 808844141 953463221 39568876 73207463 247129706 726356831 527919238 717053432 384496345 740744622 860265579 914992872 393604125 888686661 898291697 971315558 100109008 816145385 86375970 142821922 178640783 535840595 854324440 937555422 427221908 640675330 27998827 899524461 548541284 758935000 741038951 974490448 763359557 826205787 602069459 934034947 645393166 950198924 430665828 555542247 638789425 654668836 810413085 821415994 65502114 584078018 185827897 852875171 432613953 892638212 905324013 922329290 57608016 765935546 158787576 407002836 33125524 48661040 292373085 963555827 388013985 986736322 947281331 972876172 924646493 942908352 613399425 715244877 835840066 959284469 145478551 864440322 151458976 912599757 171297274 213139600 858027163 940188280 826692875 941468126 657130222 950334036 432643022 637769703 244250033 851010022 485454389 741262599 546011054 954967930 834151825 857597528 119682891 364541572 724532169 806815900 710604099 765638769 434499232 646921290 273954151 763640273 229152119 719450268 508631221 936020710 791519406 904258050 234538337 473248442 332113742 609089912 529581867 915966858 575000771 722005050 772009753 886271430 411077909 610429354 660230502 782454799 595765320 902280959 108495259 677843038 623446343 977894632 46962199 568345524 835020320 901342990 851759840 941740211 546495536 742469959 66653743 275676291 730774817 822473135 859054243 886372292 271202317 716218579 370077041 422410570 955543161 976194727 659065173 850192390 828654105 832602683 922860262 966481319 206344223 422658554 130673796 803204702 38726119 283679529 676630883 781866893 458706217 501103590 68436726 730216132 241841808 650298431 456338662 464829766 86894646 964999119 599681859 846710265 542230040 866375137 4915936 751455896 927828405 928418826 466562456 687676037 493940366 801031311 715526919 838377140 998935547 999334521 327705475 797733421 493429059 826100388 158268170 689364161 295679333 757732615 580559249 899151675 918236434 972004780 897611435 913774998 826210239 876077298 999002997 999761495 79092643 138407080 782283331 956243783 409124971 521983369 62064947 772227257 83839722 916086031 748969842 968347086 999907277 999936940 101006746 380698325 649082043 985307430 636882782 671173253 990010121 993859228 541113577 914941232 750969095 984601735 580572363 950679416 111932641 898860785 681812404 748883901 662371725 672836581 266238144 656359861 931854842 943050004 730728667 988375659 667675005 709214329 148195548 554958806 754831872 760676519 733937677 747307662 934524820 979479288 947282335 948077375 162402349 275519139 977893778 982284498 367179420 915704208 450529996 610309426 181940466 335766240 906706459 975904692 726587384 998042370 225366248 634217415 845444887 877504624 623276637 984120289 987332708 995547043 11966717 536720449 146603013 565773308 818733684 835386262 409480061 537246131 151776179 458205094 232424653 904712065 176130450 312699699 755411478 865660622 645721925 792225728 965820378 997769413 462542896 699517707 667727546 752281847 84863983 863912385 450045321 577780254 509634820 665069701 904518336 975713322 531811338 569562123 876318525 892439828 118785735 983518528 708436721 928333732 616181677 735579245 86859562 856027849 175200366 555096755 876311622 940542973 379453789 870776122 13741983 151515492 110762825 507100687 940291909 955105461 880294347 899817602 755884123 939095903 522717174 530966361 265147676 748409406 861317309 896143490 511196156 727814439 677588635 693516483 299058566 360505088 764492178 974490027 110293240 119623925 876292850 929052465 601524115 679416613 720264756 992037244 137621303 761904079 46701396 566419007 780201014 975800649 390699006 509725204 62974114 646811677 54130102 330363204 629001291 913792902 368097038 861746392 356773369 476972315 550616525 646720733 970921165 996857030 137498548 619520158 507389825 808314129 792613019 945748936 133766902 674572608 650823951 723186928 968511328 990231669 277777255 343257926 144405138 459639261 10621468 312912118 728671735 857862178 500485233 781926794 540260177 615115376 54349864 86049923 252304003 933624951 662826464 809672061 229259106 318865970 486063223 785141141 548717527 735347180 745503914 849213711 228649235 943961067 239497317 260632546 290687507 524413271 962767457 995227136 563515203 855980977 369957537 875868415 51480435 319176413 443775008 710291652 587006322 870809394 351466995 564368819 925856 829282553 605733011 798170649 613127179 803036140 635620929 696222371 911008019 934183286 362013678 800190942 863900708 954700522 540285165 697676597 468876827 990764620 865443070 892431373 526105629 673972175 37607537 986763681 496208453 769827256 560306800 952112251 247436382 836396474 655762855 971516319 163219923 478346479 486091366 495258759 875988318 953894621 599071757 625331433 64094851 778896450 419836951 946537570 525004008 850711435 237622457 805338030 849208155 900986023 443774291 701547409 875495289 986179126 545612320 661186673 629939167 982898962 138704022 275024295 846640469 917185516 789087350 928777238 372724443 858949032 304339285 620641493 873152611 892369702 190636629 915361944 885026620 908882118 65986661 278236243 654412633 809245906 965972738 986623689 548104034 940582968 634667968 930645421 998997947 999049046 576624815 975795517 154588903 227461707 694861588 791032153 37489655 370316056 565842037 763967557 443364123 863058609 663101036 701428016 220751148 718059230 480117415 958431061 635409844 748176886 38877478 974910785 458272358 539337688 995454734 996060651 869235084 878971932 343459277 741569458 180454624 682298070 202833158 538804531 896494438 940013540 995872726 997403714 193327547 887321238 7366875 170395834 78756170 268568123 202197179 474223008 718479167 815655047 148425903 912307244 272413187 297554852 671368658 849165170 217311275 781472889 738649655 949712619 958410838 988949246 212425713 920366798 191535928 579185804 812914285 853715603 801795081 952789556 805111776 906605697 6824835 360176910 4652706 815899483 621465715 817415791 648261143 979510774 786758472 990172602 481789304 775399036 525517576 952313999 372943733 479816508 376788184 546165600 794110199 842884406 467739393 722062515 201011854 448846961 556774624 652920586 451263116 609922804 178038851 224856386 664573569 913107577 203065472 420533603 839170207 839403996 240775866 657403022 551947238 686378550 374767985 554293614 475017794 754442750 305606071 945511108 548368964 740290684 379248972 492989033 542744602 884297289 801063840 911877978 247788537 387377809 868569729 986951419 470022945 731945411 544301062 554421356 915398040 987699199 596763640 937124688 256768653 398349712 89279887 673450392 650012332 979502367 286817371 685657939 270623197 811715818 741076349 782874518 114547135 645054703 944355245 959198896 838816694 863962818 877476292 952421113 835071269 998795047 610481568 829821017 953118410 989378629 300284733 649637814 994438471 997053289 476173645 935704189 389162247 405761843 456444396 845548751 729027449 980375729 731894952 951992502 869219776 944541416 293657518 843836298 418811462 593521453 738962128 810624247 623417591 971495967 925520710 927762769 495633043 603949602 436849129 519343648 923960315 983778780 263241574 742924516 641124424 899391213 95518135 672609322 572697065 870906929 701230047 797255037 640081216 723277036 31853712 682955988 651102015 723822513 868841241 904432832 135167948 173425993 182064346 489422446 642689884 938746612 244531494 863707300 412446744 578337476 298065791 330815822 453027912 608120437 89577711 848661880 628697407 656157994 601870865 971980816 727935519 847964022 631711356 935527594 894457326 977206464 944080899 956351772 734604734 840892735 27503932 530705804 724561833 822234651 773370286 982281663 174693155 432852220 128710988 539411656 810523098 953801519 857673615 973241298 320967135 812412788 622810471 844084642 261003791 466289720 115752321 901011783 277677617 825968861 783987994 839286642 275564131 829364211 380930533 613756645 414156591 881597994 371021710 512889007 904381601 935199189 19143958 544754683 135384033 864609236 312453116 535586553 882515395 892620562 616658560 920139862 586681443 603065462 111610915 450307898 778298232 869025208 652302871 945931345 56424140 395837181 519667102 970062717 402169173 509940272 852736841 913061991 142556830 859551386 542923918 566304815 545768362 709268265 594574454 845270773 330206451 509124844 246209362 328536495 303192190 670555680 113994634 657386225 834540505 985982615 778993077 865062241 113472893 721268345 714184891 777370051 134830303 278481443 357985599 850838682 588313296 645482229 569781531 690358039 824795817 992007944 688378656 832194093 535437822 655253009 789438591 836389394 462530507 665503856 731279299 765235193 484103320 774250339 123904796 407645297 521689670 764588580 700920206 861267794 447286485 953512063 309562416 701017342 862393876 957876480 965074680 974238232 865269801 964970193 289999605 476689375 627913750 839835828 771724640 836796060 46572454 701043933 794037886 872395928 30178038 759398824 121637094 690745862 247955243 745589949 978524683 991935099 705416841 766788605 879996882 961902988 441178954 854193118 731458800 825850998 228765174 441934276 25017747 420298098 195730054 743783544 475627415 975418347 364121652 730758404 924203831 975116205 335075859 834987749 229307351 820077346 534070 647815766 724467661 831968398 181553471 536687382 815339683 960031933 739637312 982635162 92722180 870485019 11999467 144852169 554263497 710556969 468548310 761129038 225199147 653316655 561463151 995662943 277369950 696647871 784497003 945570809 817096164 896235280 709338670 895481699 127902375 399866839 941737979 982021468 519650155 735354186 894061653 978534124 894304101 987906474 975746720 985377410 171897176 682571277 790911082 808811805 385698260 913528764 27724908 987881210 230932606 848237118 80314868 118939018 902550245 906049024 163509940 637871559 274328818 848913136 50782901 314264974 508003438 573145979 156437061 653371558 669347157 937841708 981315348 990139375 617319144 777684359 678544073 960981825 881082213 895827501 763130131 948685655 199673357 555096221 944136383 949337786 88263462 325791373 789750974 951396229 841696405 927413724 727407304 901361415 34509272 237958580 558965258 838785650 166330321 195997640 693281043 828568465 408123844 799373985 96554982 275737330 894523600 978388092 441457075 794290039 61361142 979421003 193056691 391462879 835080956 963180574 294685459 624170337 836292691 932398826 67478757 513679860 709053495 938831106 131445080 311689012 75801326 701956612 616489608 819904856 581213883 964643850 53493691 529024986 507516593 636498349 152359135 274390262 867235301 988399915 150384111 224465043 675553047 850185850 6091475 635623310 537336124 643326245 396720868 508161941 746170050 926576237 988243761 997657719 755122991 914507810 22208128 403021771 690408237 755442036 419026308 839375456 992679722 998879650 306100078 687576021 977691057 997478420 21997803 338752761 370205811 914424506 528943795 790213742 691690741 854753624 819132723 861208145 350839448 514396695 202497659 673465730 609216412 919882998 234866526 469624407 718249673 760460985 291222569 922930173 283336475 944640327 643145652 923282537 486273167 843671808 69882540 780892105 774032918 862705806 283988400 571768957 431455899 506908543 753206885 882807101 570510238 619086018 547581640 751906095 128815111 614299412 336037352 487648048 389204751 528484735 966107972 967360897 363562180 586531262 982015781 998752001 480334820 900282520 417221669 517553365 621479191 838942328 111967677 469609831 88081921 592077577 55066975 690317610 503230007 814946286 202665296 751238974 518962686 918545053 715188728 747680107 568785061 816723436 709426872 877671543 679643656 981539987 920292994 999116834 47634196 354895762 884964116 977268195 35792621 428156977 527133128 771164809 896800148 920380677 922390851 942637190 705959073 962642803 337508095 897099419 31848819 180322523 467514268 571389881 650112355 879973094 799906065 805859599 526693590 735407477 160489737 282168338 551639146 562063201 137744473 522292260 344156758 641031790 108315334 824525751 199825356 610268483 739788082 902254119 132879041 641351254 858537514 980894253 824998941 879306452 603873747 624608582 863190538 937128305 672860671 916663400 656429656 762322252 412124921 558216677 644852858 936783330 661324618 930994390 317006110 822680266 205211397 630723457 466170308 582640672 847628282 883334197 362977118 602011114 248879257 817687940 94629530 978537793 828142486 873418776 604225814 972698186 489005224 841934329 146020910 275072929 598886986 929834110 822139780 871803923 896573882 978999602 820407287 905755930 259809707 867733196 369769077 498182125 896134468 960502025 545802593 771503316 759927059 771366842 252577296 373546830 86474795 817309134 504147256 845726845 918353384 996693883 612185317 687921916 774402392 958526045 407875166 777351560 199421555 521473446 934891713 955023792 344486497 667909903 145031225 308780324 415502945 752117867 916919815 999222137 510487602 524059413 608125611 634619451 722707026 892974532 40183132 450503501 212109399 381660395 785860314 993501779 519175777 699975569 521084290 766164084 14779901 75072879 912615372 976815055 3874421 48260032 345674385 671082439 965294784 986684454 805628797 877018977 210600558 579924235 832643862 957728026 6266251 80527162 496044624 517536097 454998510 998957745 42590985 521723169 246624224 474203663 170030173 572022801 276556100 286529409 198799092 356924416 942358895 965058114 461756461 483045690 594321468 837376195 14782285 101313971 489535844 669146486 554650116 558254382 825222139 871563581 274278440 367651731 933214887 949557353 144629128 784829736 342451931 846443600 191250254 898772475 800505289 868410067 59426745 157505968 47506103 650340387 606214520 832358062 795365705 831845811 927985003 997801846 680410725 729500249 578887666 628416054 618805581 733009379 769831937 989882322 789937227 858380702 885367304 920066615 173478632 584811040 815669675 850166400 166894223 535604203 436784931 596091511 797443138 841266112 610418958 638249419 274548663 551601622 100175316 464191467 957941644 962562570 3412393 55376719 177370908 718614543 490303301 717600207 425237714 579820473 584715936 593210038 142305821 172223239 777389255 784706647 619403401 818364721 474939718 987371510 494472843 674784455 291823849 974700115 639607772 938695858 421476295 613217844 34802953 989920533 295737558 550422181 966876306 998285642 580380503 866934797 376324974 583518469 278402660 293091710 650737774 755265135 453591558 932338219 750430897 998648624 911355852 925572802 522112562 619974023 725979379 939366465 421786297 881966337 982462477 992694214 94344624 239580675 465981121 857067636 252024279 635258309 127380727 400410837 683823589 768189568 37278539 43882295 305825372 631371251 974690368 981806928 559980814 700415553 14912652 726621664 633040899 780987070 152681339 912882390 709269540 968115504 800512155 871665300 562626961 895769521 348260254 507695317 764834818 816245462 623197430 780622062 496159120 625002947 346882683 534557366 542133148 606989646 517838486 924572227 941030152 966492155 282627303 755421918 861323679 936052066 928880419 943245958 744272180 893528075 276871664 777699877 571972979 783012741 593739278 692989245 267587837 430551072 839747110 877685666 436836496 463840740 192843201 636894795 433537376 703325027 834126963 966793496 641620609 855240904 670241924 821009465 943455307 960918823 684516185 957753995 897559447 916731927 910506301 974656008 657121988 936810684 286361159 494640307 394934872 767590551 252398210 529695047 46631717 736675445 933893904 997398002 382880238 541977512 782084861 923753587 481967329 903591424 557553450 586616261 437826923 602223433 818651943 846902191 776933545 825372771 997377503 998210800 912416430 987468680 871755157 897934452 451320963 961203535 950770708 973403869 933199565 996202735 253565811 785987175 681892821 733159779 596011954 640646325 506841605 679866828 930603952 963587607 921540386 923198152 290174671 432380709 703274561 918823332 554555763 770692170 483760525 878570556 966397564 980977021 200204138 653242110 186371267 746327435 749188717 886644919 323117265 446161178 498390282 547355442 597946885 600280570 704832021 795118448 582229331 858154417 450011671 792956521 126368789 252352159 566997471 833942505 842095564 859443894 370469193 653915818 878410159 913770021 436921872 906677149 994486099 996447736 901651209 959466148 964903898 979695255 187364806 555280397 491696304 595802260 2108922 562806213 37223281 618025072 464928224 802765600 67191216 209203480 739301954 783759507 305834933 428072824 438696107 720973624 962415858 997130521 340487458 893434205 588187966 726879671 992796902 997748481 768344184 801409707 875571595 986438292 455346963 944662889 311620013 973076180 575136991 595502330 616240663 821848476 419336090 722018603 409857227 950492837 214946899 741547288 303711262 726515037 453209054 521273960 151428945 655354994 586025895 723507648 887877396 949254568 797291246 996584708 438533902 837158330 893042914 996550454 12590830 239540121 518538477 961657852 469082634 848607209 275355342 411770928 904634043 979168168 332637452 965786604 220403118 891078371 681714517 902732916 368084727 742893353 455325008 934739255 328652587 696595123 465258122 686575655 414066751 659174094 571846681 822324267 263579875 647336369 692513452 825507949 835321926 917366269 519112932 592868141 784965424 991278817 234147470 996514635 443556189 631518639 519809019 783205296 364865866 860034654 821035341 963957165 456756067 732315982 733851279 892217296 245331629 500370869 531174167 564765302 684530123 908420881 299212958 732480696 656188825 739753612 564237170 780725893 626423198 905269614 157779062 719087629 698189510 838494232 219192264 419167804 411701019 472470558 375380285 508338961 634675588 989257457 353107693 492686944 184310760 564068743 569037019 682275087 597243882 598597641 158887842 215713327 13794264 998545194 984033026 992515373 294450695 852941271 235298011 907998510 600916034 785970754 908442956 924930821 878039323 925396719 472313156 569602172 778697810 802581904 458273468 875603449 986905519 996910630 86157171 597278735 85850569 255232686 444658557 972609992 905294847 972606181 607890518 639642187 348352257 356789008 220716049 882599070 753623719 756073107 653937954 734059407 903444556 925784119 381616267 401560578 86734368 715123236 462546248 996935905 294570113 484808096 530174736 664830026 48741552 433129638 338189610 681075310 604641260 772068076 528416133 667283218 113376583 484812751 134914857 419293831 226240785 768297670 576072007 826004812 387782132 992028571 209094281 996082726 418928145 572203243 374531831 849058896 465430142 528275295 413565295 677453696 184386402 373318496 545041560 547887127 9016660 21761235 115616702 611165050 935111652 958054284 108845805 224787418 135876801 954657187 364098770 828502414 123143825 294085651 925168168 994712558 636413161 822478626 529669225 910373023 343842080 639665103 420087740 948481338 12347632 563922395 680912199 706247725 355025177 916779756 939379464 966312589 901093724 948304875 37458988 92321660 823981363 961400951 122369174 931637118 957079175 960072162 698719910 747512161 901962138 928818237 794943031 939544873 176441588 926693449 630113045 725052724 964927862 971152227 683985545 700392183 74912616 276992524 158419856 618182367 39329226 539993799 737555769 889618030 552776141 955457213 648126738 681555108 814633287 846718647 700799047 706974373 628014370 764603698 66320050 629151980 140363278 253559419 278059666 547041961 872120129 999161717 296269360 834224980 599134076 900766784 904443711 987287415 870758803 997699759 683292600 829060590 554771980 915183750 228415196 829657295 455589446 930492609 253229952 991908355 650045778 741515763 476721897 552938302 860625610 873306972 518378126 902239538 237047373 627540673 162313825 846137899 126570022 657160835 331462428 998863168 455686378 524771408 420561880 886298832 112390219 385301828 711902838 951001381 535285378 903871634 565302940 640643046 591622354 900705803 408069861 980287866 345406835 719935463 965220656 992395179 615263213 707548586 837129423 924850767 144192563 661502300 243256024 387809037 226989580 583202343 334422475 661594526 992717931 996901897 67915155 886928492 607259538 779749929 296738472 816844187 433954628 829901131 978177563 984820909 513237843 657679673 703182565 847978979 706689880 880507547 176301577 407448948 446529215 650859527 304331055 462614911 463482600 612719762 982078595 993023702 823061456 948728486 839109112 890613451 654597304 773230649 682869808 751940589 243979740 846583290 58836655 199388097 604802736 900666344 424638932 454745335 494850279 620210019 439047765 864483559 34110809 468371092 193924392 783664945 699160037 941203964 474340794 517954362 956998121 959618584 73304167 791280538 918035140 968774098 836963229 867737197 693414469 861129250 635722465 706589138 142721222 359280946 24711374 512913946 297346338 484632248 304966124 943326950 14497980 306612343 225974286 490294253 478259829 931907683 411755940 601895001 294889621 350006252 232243991 986897608 483590777 535698685 678577859 991227512 884098516 888777116 76953470 825754098 373764622 509811325 931280907 952219410 978493150 989466981 923268241 923658954 640479506 925392164 208119136 658143092 779685647 938170092 529104784 780107844 627005934 658736023 700452531 740952155 633880922 734680987 897469546 921924494 719951790 741860482 679753910 709383379 946080138 987151029 716619196 998409262 670133117 710482596 924889552 995902753 701451630 759100358 62704149 976232372 256434216 510160869 152886011 179057551 55120289 566107989 434229274 934902458 120162732 929909186 280571770 489046424 365553232 781173484 802922971 995373758 991381803 997609581 849159488 995725520 433239136 619006778 763952506 982962411 318368868 952037802 21108403 290836595 963358690 997440183 789613859 819044093 808858657 852626186 582583422 996073277 922784143 934533378 459363627 855785608 255452143 558828809 895209226 931785525 748923982 763793239 873648876 932860255 192701097 918785340 930927820 987346914 326208584 355228596 784026094 860040234 439924235 825728090 638930145 667768478 273946137 471618055 753740556 823236826 303978174 907810501 733865941 981102905 17740190 265091555 217762588 592775027 459363386 982640945 969124698 980338950 962614102 967335628 325365414 854851011 621475535 896536631 729923289 828561348 850575555 901230322 811355440 936144540 127471085 994735667 409435188 608935824 746518546 773262054 157551643 597924492 76090101 267063190 88186144 838804238 692322677 893750787 939446042 980122521 389858971 473836791 725369601 840910357 387161917 709536404 538684557 543432972 964585634 993821777 173947778 838901512 589966019 704586716 911938508 962555462 641903094 795138391 956211977 968523838 477941307 579607754 25898190 126441849 334214391 948044334 363219798 577052355 188030326 276439421 443605738 872908314 33728125 534675941 15154512 923685863 661823971 874855764 265307958 866219303 700863280 987021552 684467096 707480404 495182456 844001381 448141062 492730696 939338435 960262565 607016232 644943456 22853699 239646256 857431989 913491917 835254325 900282455 229395069 782868134 679728290 808790453 361441696 375784541 768182517 998230417 253964391 648976072 860399911 895173464 879716777 994933009 753010216 994416682 94209816 569445906 602116341 766017941 189429046 454420519 695343015 784473566 983968036 989988530 312945217 856923068 667474253 776764129 210570118 733579022 156663673 600912152 260860875 747927793 25003740 593991435 259406929 494176181 678993772 917690807 725891533 799325063 910378124 936280403 805736658 960685987 74403177 501445812 132657934 619663736 799648856 833911178 445808943 869085421 749634514 836723172 368887132 542457060 461250612 464379793 952268741 970627008 861445456 901653657 99528128 313941261 98178677 588029722 494104272 836061071 489266256 746777343 820338554 892647849 1652084 811202200 641317022 812479214 279679282 663284357 265387609 595513081 584362215 840279681 859209499 948021569 996986985 999466847 621251554 950055981 948388478 994064256 490679245 684922426 407972834 922229790 174968803 855393704 588164914 944870083 544633844 746530474 323144657 599400487 93351190 226262715 76338175 835422738 842246577 892073565 727543437 953412030 350962759 569371758 56767031 843889695 824105072 826629375 747617057 817999693 56646656 376087394 214636327 308861353 845796851 937291654 87385652 730498237 958108167 998998101 688605261 920048812 740143965 885290206 478162827 793270692 478283748 676430074 478060560 490756586 304712040 747936548 42910570 232374385 76452968 455347003 937211266 966424906 986699726 998827770 35670918 166964947 612542213 796817972 141824199 392933903 490829504 548249957 908197826 943420082 815027761 938684847 510702660 864773666 301390861 764472765 292369358 954624640 478863468 975421388 46539426 373028868 222079152 791064207 118581816 145071569 213669210 925966269 767550796 862354376 158217018 947657194 670532300 991380424 266690760 821340050 725046037 923276237 224930539 427772522 887914246 979287825 782419125 852671777 250004550 626392020 687326188 741641893 815923928 903890717 513348503 567624415 44859069 463545368 490415550 920679608 47660852 376486969 839569013 843708136 656785532 762092487 162623720 682135016 950330696 969251823 226740127 536422990 698468395 799889387 133128480 559349264 256597610 806810080 111566822 576971125 317283385 653522146 943888402 956084094 116410294 646045699 733739323 931173448 400232117 475292777 862639311 999966953 495548727 575980505 262382773 608405679 625589377 679938125 271172292 318123436 17758826 950553253 265428993 328726998 859402303 955665711 952640620 967500248 643315986 702234834 952682213 999297660 767275145 913623427 764623659 818180541 517960011 557176969 488275104 879313634 44170767 950350206 269086909 654832743 537380995 751738375 860209812 951318955 117480641 605968926 364469329 463250827 31221728 337522138 507253800 810271127 145633799 337286238 274499441 405576744 619743215 982444888 908228403 993517186 759942342 815994973 85074354 101708553 159589282 279380664 473774254 700646628 621182332 660954350 504397554 983145668 318308871 438747274 753668242 801332889 207511005 348019004 741940708 904312292 928853506 986402808 835085129 980582118 617794541 665214576 821835191 981283144 666942802 783592091 776368485 906566247 481316482 580590680 185024194 658598499 928615747 993471096 208299502 726538357 529229495 638285142 134519687 612871897 260725495 532436623 124267845 581907658 424107383 535414665 268676943 687174494 859447152 987104950 111648765 980741822 523898678 831854550 84589713 372005603 679917050 682341068 281824501 989978064 722890765 812747142 571545103 967491609 734303473 983817494 769301500 783862230 176182335 973404162 674256388 926968911 685635482 970348741 498922154 545139811 911771650 949097049 398685957 642319347 995046320 999372587 377423446 430216705 713528502 996534675 827072746 905984225 61219745 203187962 703532633 863526159 844301458 941162770 152540624 576375938 732058389 746095760 419383436 936843371 763161820 932222534 150594957 528166804 804255732 984614016 939478990 996398079 888210665 994089790 796094835 998622763 957511404 975210174 826129032 837906931 62442779 324381924 78359049 633384782 268222059 685152078 401518555 516490450 621058260 730730812 161477656 988787436 557721667 993267523 120206994 300267738 906842062 933586453 472078033 585494757 917262357 974529269 552147523 856339834 130071369 994805285 935607566 943405638 881882059 889513547 58764966 869629673 214635061 551554111 800862759 972623382 860944222 977668085 487040137 828014339 758852952 931031240 244273591 577439075 551077606 574144370 936050203 971927217 126801438 763022958 800322525 896796551 972162335 972732543 91849209 590475736 443310641 726814336 526665592 696457532 290465757 704981283 874265965 933218356 581803553 674570036 7706526 162315735 565224616 631011298 164272035 353649482 402132659 567480601 973087040 973894370 914597663 988689652 810315753 919990707 168011764 890580336 199751665 583899436 34563481 826268391 858378620 883531385 850857341 945621262 579684179 918443405 211564747 902586153 705449306 964503525 582349718 641466365 549379709 843342739 283077687 584218759 651724750 782592055 791269646 993464127 431916985 990534839 653722020 733645903 923497739 950607969 322540607 837402401 829023294 840153078 657323171 762498143 920418498 932254678 108504734 268874027 399902205 844442670 808984449 835025063 164669407 393594882 156810269 188964638 935463122 992670637 627174269 933417602 349857995 624662900 165273482 783128173 427387642 890762855 752906253 952188741 570180361 744192565 825446140 836499686 704759637 736732494 116296462 984026276 3350525 293754420 631392015 767289443 681602119 957846655 880253753 926323271 305975743 484785771 16417587 844563737 436145740 979668021 885313788 928798035 764594388 859608235 755904833 977595621 570248653 875512283 432739791 635512258 124690280 671273928 343479017 445744244 686678699 901127474 275813785 651439988 499109136 568360000 110249291 284943373 86797138 949590528 495660767 764733279 728257396 957586190 526931567 810798433 886324479 897209801 535129917 604394312 76911043 569877436 713240634 794806876 862969164 933142133 665663873 895366752 427976184 573930269 808493583 822002794 920654568 932730722 367761755 602771009 871387867 886552053 237300034 274944199 694014627 957344018 438665244 464229847 388524315 776471204 726536487 969516491 548535951 563018644 183128760 339883857 290687102 393815860 776370853 825551826 473831128 687724951 19794285 611759631 415558109 785228516 930308002 994428191 901032315 965269363 418274769 736795462 953035258 955715715 208939600 454976536 500179682 755251187 496528586 533249135 896692298 897163289 414455164 541495801 775114580 924406738 507201247 726176031 809423257 849301996 359344661 494175136 220170690 827253938 782557748 820709908 833405672 843807323 355042231 969074465 295014689 308862049 34767190 41814768 842176885 984571139 465702134 777115309 135148782 478349363 956420926 975453908 163742876 690914839 733044874 801974437 118182255 926736876 616505522 725322314 400243399 500938615 51333150 910299814 281902527 364452225 868149302 904539201 779781128 984006529 241361126 658521959 86178779 399205939 942091894 974799752 502037645 582005665 525452998 833651504 141587075 266997652 878814907 939483501 857014793 905153669 466114746 945782605 420805098 446001049 145746071 672270361 407990446 462269760 988118196 997384084 62644773 81264295 215854931 824345129 572437499 998810749 310055066 498387928 581883086 760728970 264013096 807992002 159455248 542134272 471217675 785082970 286980514 445912701 461254836 794569606 316550148 488094413 888477672 900746835 944221202 982795308 698743728 787079808 957452362 994824021 568380630 685823218 435916087 570731735 842820532 947278472 995837330 997369587 501419138 651985379 502682070 609877775 608362267 949462622 303995620 705470450 643026524 806061155 65809689 440902041 906935019 953227004 81971186 579361303 648707658 670274419 674463232 864058936 867972498 974910983 190763507 297278898 128240042 315561180 364470133 706688214 322483552 839684158 31947876 935253058 293571029 470717616 434570094 886356203 807126315 951821451 692034052 821580637 315462328 537512605 188550280 866885692 155982750 367284921 929594251 996520339 593826604 750106022 955026446 956451704 138378212 231627791 782087541 948387232 715178249 874562043 940250746 967739249 877139925 988918891 106698735 864271049 867806156 955179091 196068029 223442295 52973554 364521083 594981197 708448348 971811519 980557464 560450451 960371183 439116758 931222658 657920650 684572923 731531261 975271712 521150367 849281431 967542040 996655761 874126827 973552897 96953862 503976676 244752600 780571816 973684094 998106991 194893032 331194264 900867290 985453072 660172632 714901548 642890788 728028618 768525149 967670808 290920361 942663083 542039576 974632927 160455578 579397693 455535513 574075494 726145005 818792360 277823360 739817557 666326612 893972418 51512872 734816246 689489552 873188158 18291801 474579587 340657907 873905342 62710168 75087490 352403655 757377867 13032226 972576771 75848042 200600756 98872574 905100995 540923862 903960295 743702669 943041480 96058437 632194411 440646880 906029545 794142114 824800044 326699073 441120991 85208003 886000228 383998208 640853644 893452354 973139109 784097200 796162238 587160721 894564443 431879922 844819325 36187906 261533276 998972005 999074919 747278790 894472431 410651107 777935561 655755308 793235494 689565946 771354856 973441956 993435548 818569836 894085731 76655797 165145258 613034117 702465123 111965011 393005995 958087588 990425080 625167271 902020855 641593081 870608608 246977598 286457195 563515434 986990769 938246574 959216282 243084027 926875236 554227503 784071473 587261878 690745276 971142060 978012055 990977254 991219000 109823647 560387889 209343325 472706955 264663836 551551998 493381913 878093857 985737360 995315404 299647498 694548118 168231465 252894216 788264924 919688047 726655907 734968313 828832039 831378238 913951747 994554907 871169665 964254056 560010995 846406414 409908036 717729555 452978796 459671282 592376333 854479539 155308772 640104581 7336843 142027724 181915251 841004411 656444053 750448975 42743558 372879202 695412234 980912955 981228750 989515683 514523604 798882910 383758984 669607352 438246461 596491008 924776738 946574156 854254256 957546718 1627672 744047173 552580998 837320406 114983843 843790213 323281549 677834985 515192469 576811610 269824759 792146810 458181272 572897012 49658439 735751093 111456091 748035015 746853075 750482092 841095810 961803106 964261316 984988877 661473480 985307999 849426631 875244136 559515602 574675122 936982594 966275288 602878385 781227998 669103014 891949714 660196489 770500616 957640360 978707547 500362328 720234767 113672410 659195118 677043752 758462006 817247704 952013936 730984841 906126985 69661109 925873694 876403769 945412459 715808150 824752195 431224838 827291678 397009710 459028800 355900606 400775244 591295149 950298965 288943408 876453886 128765050 796276284 973043993 985986628 753533770 976373653 383531203 830006577 633268322 657213480 366983873 997269550 489026108 652669706 603519074 806940456 419439374 624711911 592825310 750411574 403062192 883929611 792996101 813525170 289946029 573408865 538746276 746087366 770760211 920847918 19528583 996003647 91665675 258909249 567455252 788564369 390246278 932980920 407829284 755651963 725317862 874914033 478651249 645030634 300590376 633066872 303804781 955777829 507928957 824401245 880396596 949130199 960913417 999772417 297810195 444472694 392942122 624272079 8111531 479623407 29230846 844559032 768317894 999142522 447262531 448631292 146284773 673843430 117413998 926818540 909422391 930694718 312114785 577143381 593815967 719609796 966692844 982511149 284077437 724168222 884907114 980871590 720808699 751723775 833756497 981497465 993314675 995960074 283975038 857995977 738834226 907665508 853080974 941718530 318956100 393935408 313361536 473814373 626646697 735769069 852916825 969686290 273407905 335454093 943826792 988437258 38063208 987368997 888507939 951414841 104058764 785347662 567985299 891240466 457433332 522510379 835493084 900148588 444488146 890669698 821425191 937595750 812796416 920111820 52864325 399788190 267587600 819054774 232226671 711423464 413720108 691305917 125214303 850953052 205185233 447156611 469244889 723840130 218066826 352178310 746428914 905997985 392657701 972356337 414664655 450885570 343715193 964458817 375053525 384612075 917213044 990957334 90862888 882866669 224753246 319056435 591879548 735126783 950459182 971865102 791282838 822358207 757989292 960948507 91115217 615468828 926156139 970409081 116836627 820931172 893428841 918571946 105559083 226468816 152891300 365115343 126766887 838392432 221841626 316017951 416574405 418258704 723177773 878381407 447508232 698571880 318195605 380835713 936774631 997936790 574154389 852404792 269375127 486804695 975069907 988843154 526928967 700961641 10934452 91485173 468397265 976069027 459397857 704362152 342331520 402882653 386653769 515277316 64876976 211590180 784819765 953417487 588943424 936885755 800497682 985307261 897991470 920735423 472984820 830674047 207283908 811192715 717431647 774669152 783246587 867258266 886635504 949692683 308880831 756875038 953551915 971747650 209242129 474642121 248027683 639916195 694672974 782418630 828197431 979073061 246796989 561315797 261968635 316981043 323294403 655894714 684121525 975563653 89849880 104501684 579106214 899049666 330604032 947414259 476851629 980339597 842776517 952234088 582867583 803200789 809699280 917423724 537285412 834174151 355638513 430410348 109599111 359475719 594628532 665610210 687820701 697660059 157624439 958847089 943780807 995730307 116481763 931900896 276679737 495388026 892784875 958413276 970100313 991183152 331963969 916171389 267011730 959085110 723482882 919470401 295574360 820063207 725211333 885156641 304311209 523785106 492602034 733683007 93631884 269687614 646771867 745818150 96108527 421319771 576588566 872332189 769871854 780834289 263501182 312635453 452633515 908510258 646591376 757566734 936846125 969821185 601036263 832040543 961868048 998205442 110406212 495387955 459776613 740132480 986727567 989281791 603686420 724019085 898339934 934489514 270494716 558505397 765515246 852457742 958473183 979125460 643614585 733106326 182890139 575274480 376024557 966001767 719698791 977620325 56584366 494398997 420800625 586351276 945148122 968629295 125198974 578419666 832283473 927358846 436005836 826869328 439279638 736576327 257326683 577214159 767312328 870076719 474224116 545891817 625143615 762855573 353838378 679728821 812737115 822365898 873467980 883826123 90483573 974356757 135717277 815158596 232592326 771798804 669163933 695090592 453640850 511715832 298908091 600218338 827468279 959654006 50243079 422217754 451195113 855087461 440467519 898384238 842213470 991526370 958947544 992930065 96843942 839414371 271119160 628157099 910624637 913981641 525115838 636690663 591118309 919138549 969473435 978893030 328400658 736909088 251929513 444246634 517625879 633296342 706575759 977748742 320831766 388529395 143707031 175361221 109747016 802008038 177273642 817825494 133927392 503094622 136817612 207891626 183152227 861181224 560738988 988719225 616555569 957303896 861963430 870485077 48644384 86019119 109281384 407459274 406335185 625851951 75083591 942422955 593120878 968653514 513676893 776791207 336400292 797969681 808953029 994295965 420050198 746672695 90291429 926786522 818553257 852726535 990523800 999804485 266506222 817172131 823686673 943624718 891848137 973185044 937168579 999519650 593436399 906781683 358350442 728495606 142134638 978089638 895843599 905407232 861479317 945988487 649048382 928742167 126119972 892201078 843983302 920706042 574493258 801608493 665530856 844487375 110755727 570154636 724398684 883399358 150894046 841581786 387590112 751959163 592369009 731673513 730448994 898392962 288904878 565494308 328196578 955298735 366336522 527231247 131585845 646769842 562824280 808439676 949836927 983552510 592450326 951173644 512401912 588691141 106790864 929918068 561905583 594423720 500506335 814878086 858904276 984713874 223874735 563142567 971179445 985175540 36764993 55563395 833730214 963158186 659772157 712821297 703920017 834054549 968700631 978118692 512425848 967694739 267015280 784360048 977172012 979670743 595099438 849750460 584959675 589119976 979493408 992591606 59725820 358252758 206210923 246730883 682574533 905827807 543153389 586037079 540027201 907389340 111596990 905253288 505067425 633003550 639114712 915922022 709578258 980271441 110192628 285476043 197056468 515051559 331457584 660658696 744022871 788185700 70988442 649510191 650454468 800206567 871105770 908657658 899586037 921433068 190537917 891079431 523493396 901942452 18774410 580073733 628497235 878226267 869240606 990136615 13444035 952968339 835530228 918716671 481389626 653897462 379092069 898907980 236806733 671605589 580667024 889975018 901903402 967786470 409966532 746136781 120440670 949796974 574191263 900061093 867060444 890599715 892247257 965514051 464675399 520244105 216360027 940604834 67884417 182635413 8977916 954303705 678066482 928285446 211202958 774872268 380788979 450441870 902891794 906908340 695970694 806500179 885034767 953534628 392600764 526647037 113956045 701136544 987281303 996756436 299753774 499182681 68550155 422144763 239059901 826700172 253443294 321040574 101535622 598084606 331462015 518915877 465599792 743199123 829835654 959821955 230884457 383589653 699232048 760750155 47411138 883331055 733652843 773463205 482719143 614201679 862517156 944980938 953163676 984457901 923253167 941929378 963576735 980231220 681923111 793620835 941529783 948221065 87690892 468554657 271054199 810194797 590201947 645929617 660707903 782170976 873812086 974775793 833188824 925239052 599173590 762343646 396335130 401920064 623771066 725239020 868225331 944270212 331140054 577193333 773388995 946201236 171434018 569186720 584736817 897775997 484228743 583610849 314278908 561051237 928017493 942107329 35489755 504217156 817350454 876826689 679862522 870026669 97645483 250730707 652050110 670369200 731217504 847802220 897826014 952388260 414792116 715522788 730092006 809839783 501422111 576832809 539008899 682899937 698091887 781102799 136452536 879084133 388947377 684761587 936105792 938991832 283084470 955263127 959761036 967089674 700721581 943071982 182009203 371503202 817355438 875180534 579875828 813389620 68905156 763030151 541746752 541977457 771501817 886314109 273707918 761411080 771556746 823959856 73539642 745221457 293492662 620846717 521045155 687142230 874452413 912393680 540969330 664937571 908024517 948035923 510716 320994692 692365400 758056923 38309465 496420001 426752582 987402216 217573759 780956076 150353983 170156462 893499258 905178547 437128270 793021297 305901210 391672908 766485822 942419370 437961495 650013250 222289794 662171193 139625274 490394511 808005341 811933734 890953926 977288328 328918807 707184580 584088635 918153298 444461356 879333606 620709764 665951057 943711557 984566281 859354207 960685412 6990671 20513768 703775639 876543811 693440370 752683430 152211332 165685386 857171955 895668902 671633629 742232943 208905253 776177885 880453036 917109576 588081003 872238569 75005699 541313873 194855511 982647146 357833701 378202647 178165206 759169752 899858014 992343520 52854487 721872254 343452829 525784843 433055743 663780320 308728201 881761009 360428996 966977035 303626900 790917237 727680124 758307635 409872609 919193690 14905157 351220269 82433553 995377560 356415606 493339747 666164395 942723880 812052609 995177503 76814795 319578707 843873226 869016250 482534265 579335292 929808333 936708242 999323111 999332674 882031764 923675153 142976616 284943763 199740934 406079962 843285908 994517381 258514386 978248986 29908227 424994276 442294901 623492102 281208295 308042544 653243105 813462325 935736851 966952033 509920117 523019959 85500904 621267005 900297304 943181368 976349345 981432441 943036077 964655212 498261741 622654851 756506723 922783013 894828771 954488984 121532122 894873045 663896427 667205623 310791749 760547239 595546598 755467998 732459302 906481164 582765892 626337287 926639156 944178760 926115660 965145020 419284381 713482452 571704160 606420626 122777791 920762330 228042835 920908055 58485293 330392246 168525409 224969652 455196184 772921368 254588566 305413981 491239805 981798059 591475711 669123389 949929232 958290560 890241895 950609216 143112631 683023743 705558770 931139934 369678467 553068064 251147013 690383210 504686220 692834553 184162839 217222471 243563039 531905753 54011637 781086243 152545970 347741878 692214543 728332400 370671003 774660182 499331699 753469435 691581629 793006811 480512478 531163697 871126751 997182700 715110167 844040049 409405138 862877213 573297287 670321316 871115789 910945012 324435693 577801139 997094474 999592391 919805161 947743563 256510018 623721444 766622724 985493680 583991103 726673857 155558123 915359448 236923579 500579501 187214634 308850060 155791150 469448816 535770866 883299537 970029409 991529882 636111873 873628177 575534568 870288944 687081665 982193188 659239883 671036874 558795422 654180650 156745589 873688841 936736284 978075529 295748957 887268485 351239464 602474691 836641602 958674039 799310563 821708098 143388489 449386525 715147283 769357992 869494654 997890530 816504032 999399897 983872605 984214837 526428654 649352285 181881462 766448919 521100928 733188039 49397322 505862586 831663084 900713801 26235620 831063121 994469528 995844671 684734885 686059429 919199124 993332144 330139291 979974019 660514370 792044027 465104193 565342643 357384008 380289044 683851688 908825322 424583140 724832664 607477168 666524691 352088138 771809420 400479617 947452337 209403347 387172397 452568970 547964769 798682204 820782012 845486817 944787649 424089394 723663583 137485453 347222468 84261412 690175232 495840237 696633702 868155280 962691528 723225719 800295073 946471822 970685417 238519811 324244624 602787915 671152112 169640243 448594908 649341314 731593910 205035779 544377348 222196106 677127173 56393072 71060103 866155232 908322212 149347182 693998893 902195848 923262648 581107613 791318411 106323079 349444812 362635936 769193867 864253920 942790997 806203602 950430944 610561461 671618301 739512068 915740053 977692335 981526832 759824140 867244777 712604129 969581129 519363154 785889962 367401072 590507203 45417002 219514194 850485168 953566498 465545177 483815764 280886471 788517599 478445215 485171098 354584053 926643445 201281468 731068688 991525713 994286767 615533697 634081506 228234219 858938008 570038969 933107527 620076859 836978130 31095755 671365616 966221107 973736626 68714233 948585718 299490747 757531470 648174893 934116066 118080347 359583259 714457009 874372007 283692911 896412272 379054140 948415456 711490323 927273109 120004708 793563956 835400362 904963577 921802496 967170867 198171590 204846539 130586506 988387415 681025589 832781613 245019524 918117544 330026298 766790848 214443640 937398431 592450612 807492686 631804146 648980827 91887279 541528991 92859486 653051479 90606168 740560550 764305299 855522024 862529387 868950378 140582073 674607152 668312871 739710943 872504639 887563197 336177030 402271957 920162061 928119090 376946072 652770694 660483653 918142037 344184119 462633434 381220029 622456122 98960886 868563270 410933917 769079925 616360868 838679651 134896483 488841963 5452149 637018725 590832865 867808916 118741561 437749981 778132201 782510743 530896543 956074833 626235572 914231924 883588086 892342411 467334099 618772852 844606090 992361939 79823702 575487775 679933367 859502197 265801286 634407353 22596737 505073935 661691772 969689428 114615770 686951824 528500759 650949974 449273991 524612048 483420147 620347989 180868009 690004586 568318840 803633745 975529502 975565477 909545816 918888563 15584755 935843588 867129704 921653752 815484080 971414698 126514277 910355416 654393373 816676429 609772306 735057474 3159704 638017456 774790261 972024874 403611218 779924913 952839886 966178314 526082963 984722625 64158658 802208624 467313907 906014961 100565216 106316653 199255877 625832946 968516125 975529372 505472068 856649171 230439919 934034912 793856190 903273306 805706667 964624778 541690189 892221467 939980172 970674450 59903783 950067890 92170329 695217002 299604 916239659 844591110 882703550 572743326 885460155 875313821 953883487 299825266 324100315 448760874 839087359 872900476 892350859 925630841 973336430 887319419 956737583 385165103 913138366 235746620 550538210 738647288 883288398 761538593 766100055 115857923 295525847 569753693 749114021 630187923 849479650 310335180 903115170 965074734 973745373 454894292 678032446 748579511 832907030 466452733 838060939 287875537 724923678 3653511 86512363 11118773 871973151 429434875 818743122 506638368 965717055 777139792 886102848 604463723 640864357 186230079 446410680 434468386 454289113 349229604 771101124 488704695 927108801 743664261 865976044 87335412 689876635 819881620 983797243 683324193 749233683 66573829 831211843 816096610 889847110 393022168 491844841 294529903 701983773 235314157 326691829 226884422 817306617 955046866 983111804 172786950 575497838 312232535 632311958 26768127 937705538 275638030 554578964 662595910 732618637 80276900 682117307 791757858 858680306 74391327 363904980 935865613 956561716 892827888 998297738 32089938 524389204 558987197 979904868 97381367 797340150 412179928 591341198 643789884 863693364 15669133 555930607 21395731 435205344 497302694 687600255 184314951 347655333 302757367 735202141 527071958 757170344 73743101 103585458 715940362 962373807 833931876 853585418 443923056 930802020 985031549 986679117 695247297 784715248 859919454 936419068 906492057 968384972 864129319 893661186 409549507 702228166 609668605 706765121 413624182 447323820 654806741 843166524 560894808 572448526 715855200 792383105 954661288 988994706 781276187 817215805 790454217 803117298 925222599 925576441 540578929 594839947 354451705 869747565 855311639 964193383 247594276 586512044 462701570 687318922 934214733 977612065 337132659 521333286 90696807 545587495 680761648 993783631 441008526 568031119 693328652 798909337 657358218 728510872 523654745 959953036 500723189 826282383 393162039 947112819 777274471 796876886 808934394 974473193 547670498 848208469 102818507 487316191 556545492 920748110 700908355 832154928 283190596 581156725 588542620 832475832 277453062 784326296 814511618 874830494 86987382 884069971 998621932 999412821 405132797 782848744 347631047 878909071 153777412 255659621 153300774 472008421 929107409 931342398 521420019 695266548 303623610 412556034 963051112 966770487 588787575 670758058 753032859 796007312 979718192 990166757 140043938 785156596 291408922 774515714 126857901 391760556 53249377 706301066 996842708 997889073 694491515 859121424 153840842 927441656 835954054 898577883 866011435 885019925 923942724 933171420 910583123 975214322 541924382 674619975 944383318 992094780 16459859 685256420 463902565 567439090 991824708 998620479 827503980 976645438 495422166 973832208 673451762 800466432 561872020 714350187 179808871 798385950 632512784 862055309 247133982 765077911 981749651 985535201 732127133 739098440 186011710 545289849 649204259 697775424 627932237 901040825 779780986 816515005 933662038 966869051 514339429 881972798 911879952 916873470 597221339 649890171 632579709 910474942 837170394 883642382 278080365 469911473 689985355 718083520 963756749 999114449 338976212 511321742 10034193 135932704 398225068 595088736 470759216 520345423 17677680 865577236 136308349 464068689 643930078 739692125 676737108 853072243 493599831 579576024 574654952 641950309 348392280 369897660 856364280 888249349 557575288 857274009 772707568 947970665 581583972 637478304 413378273 813374678 307529904 311556729 133010295 544240725 995891421 997365694 417405902 696081258 681103133 955849303 37248530 366147536 239247414 590505408 977337820 989154772 393755249 820318454 647684041 793209599 547121383 932656825 885963734 972294381 402934954 617553025 758788571 917885259 448963383 850272890 433258101 551050052 995949658 996779389 197736423 739040486 838813163 895054126 505506329 718454278 987698708 995362872 292202544 644740408 860632074 964685846 218890994 658824681 450521829 848581822 543342762 980988664 573372930 704531484 851805558 993610326 101596503 524181843 567426931 676924227 540506536 664715591 738590229 741741875 640255706 758588533 729832644 849381728 856002983 967836360 244541778 799685679 744866631 817687910 557935684 737484191 750430913 920756778 6130122 933484370 895903056 909815531 241122824 708429910 494055781 645696076 104923447 336110743 249882097 379284449 563607840 822630440 196266061 785828546 276717383 443002883 132492576 482384689 2287365 660007992 346138908 613334761 544955931 910464533 849173385 908973979 223458393 247788819 545384741 759930059 935413899 968100240 710240374 822862785 581052988 740375382 971659016 973086452 291630237 424447619 428494115 985929117 676750771 932969652 898053612 973059037 158346803 419252675 844091056 927195426 731574495 981482438 187085106 489451503 702251125 943451326 365040552 894414632 912531261 940181285 629177574 889660775 100583319 724023054 611552852 659289655 357588537 700696192 764692611 987648262 923663129 926947781 816568353 908024926 208968244 764377009 896748789 918119795 465391405 599224073 875494528 896091852 438327439 643390151 715477506 848165761 172136484 748806813 783839575 822677827 417451736 469674425 105491255 954899990 133507658 391030768 938314654 977941100 324976696 648941035 330161888 585186091 424136087 958893816 506387494 886438771 796043711 902861864 897364030 928921000 676514664 884081396 176142056 653270389 349783524 748800973 285296633 751042974 502549111 783138571 943805011 990129150 58438445 368337242 245792771 919760704 769818058 981453195 679735308 694747213 361934061 572900716 894471168 933339163 517400493 560167567 261917465 493044602 450677066 731798474 764145338 940893950 967996647 970574434 255962417 571501303 767361685 893708832 462740167 934180674 337481362 994800584 909795976 956453853 568926011 857253259 678324300 761222163 862659137 965598981 796161116 920293868 523279876 879933990 291286 818256922 266109160 999827415 15730601 886585006 771336983 981540242 428087131 880042404 829186601 846233867 873990021 955912116 590226611 693503736 20149323 148948680 781575890 831431501 598437061 609118574 241153197 657698863 821697135 945378498 797281947 966692648 352597855 759206249 295947729 644079333 784505077 856449077 487348048 769649055 933763104 951192392 690230454 740830525 250641834 623871879 237141332 246086739 964208391 965077729 631295375 950846842 144701885 154241229 367303016 377898587 171584956 303881645 806036880 899373927 606954182 858238980 961434138 983361308 992054068 999948237 614995721 714896965 445366208 765788758 161999072 332007334 637355921 706604211 114619549 303787227 34002749 151135314 319064960 627912986 471035002 540258221 433387142 968733004 366356152 945226316 453561829 754247207 924424 496299450 369122076 856589792 359570408 456449969 332757093 428243645 270458646 646569455 646422113 835801938 250363887 444017225 653912444 854288498 967774411 993441097 84975756 512607955 617841884 651278516 874670755 993605256 482256723 762473747 856287912 883927916 376975240 631212707 359431850 414029834 331618312 453794278 551835582 913741973 426273415 748438474 916919890 963576770 580507519 885160078 44117137 53903735 858223328 900075541 862636473 962799620 823292007 860051132 453750283 922141419 378372003 999109616 112338752 207237345 794258796 981991530 659930720 889710312 335168356 573153076 651496371 698189006 898685551 957808731 841636728 856223245 651059788 719153408 657488056 823697542 430090806 898339146 458741892 605820439 799916968 824736876 282889570 388332050 734971090 980888530 832387147 910984827 264585560 967342821 191278764 387575588 142733487 896327101 237191903 715847354 820743377 827244955 330748114 521803280 468323662 707915691 676715996 873902861 331142432 529712786 162330006 292875609 302838310 988441544 482681301 572951116 849888094 979030346 883519323 958567777 705334870 928678247 406880367 573907709 296819610 615528571 896741229 970375426 192603645 670244364 725072618 747608568 826224925 843227306 146331439 216384758 647240783 896147754 665166870 896742880 514553586 616871752 13384385 291319650 536061383 767159642 900497973 972098461 41692497 714097882 866184883 906646981 332540960 383546741 531311428 595905321 682994834 994237088 332469614 579147870 109432921 733570068 578519734 913283952 998266864 999321567 578626846 702246770 779005428 943492523 949507019 985484761 737046501 965923832 642403738 798990706 829044296 934404795 334897652 741143623 194254972 668965184 60498594 923493888 849745722 915898078 617419817 957570832 787559225 934812505 894481967 899844616 74750003 152958290 653364425 924315149 483481285 748754191 881816804 892864326 5421790 209048195 72356268 150018473 198093806 855600401 953058460 982262483 636602257 925147489 410114807 976680386 816601856 867754914 468109726 502729277 336327594 665522221 426925804 592827705 943095656 990277219 860787391 968036307 183083138 577122081 579750668 807607120 76293508 125335609 757865698 801542099 974154885 996094292 728426003 875721754 645541295 794881629 77229292 769973364 582406441 713186906 625295339 905571137 220213727 941439547 846506209 886971751 187271022 852463336 629480602 723955446 811329585 817524641 792678715 843041799 42922856 267097899 73212766 444953427 716052534 943336129 839399204 967047684 551299108 617196135 26153561 852794341 245059902 447315288 659388710 834547940 341684708 502742646 378698348 869501676 210095066 982620325 871051226 956419872 700066708 824083690 411192200 533486965 624270411 651443341 586100271 596418409 184124441 659453599 234127835 539099528 256763711 303035286 906742273 970673794 821971231 952283386 491156481 647952749 709848151 866089155 559555649 648739386 625070123 875729971 752595957 894455509 12069656 107923511 86756530 312194498 613305084 841767809 433752614 771839639 339174318 459032490 863915302 892103271 64845735 271891054 356114995 520229136 479616319 691186323 87828970 355086783 60076508 782783076 437479952 494234255 370947100 927703991 11839373 443603316 453560602 459063279 529368965 638937264 858425558 972234534 431887282 800601606 211465983 212954827 612200850 991227888 386854926 592969737 152953323 713619375 572733113 815811379 838587200 885195539 399224513 612672525 180501903 226888575 413620130 735444614 858087857 930150379 68551043 590510496 239377398 988125303 214538226 346116759 969086439 971854345 854132832 890362609 583616743 855506741 59921366 371683838 352112530 829514534 698642249 959790520 403379738 983519774 335811798 789863290 249160213 675723165 5098256 353250485 249576048 843151437 797395368 964436052 210857305 385094127 97327973 425692762 530936945 682206091 965273243 975602605 493383386 592312503 696482571 994991246 753699255 987331602 248894475 553215683 841860196 933299394 526620131 911446416 228803449 907310925 752220779 836704100 539666012 558567635 908578683 942277910 242605700 618990692 681511149 723911073 575263067 744076901 925365196 958842001 315056579 843696116 298339975 682038592 271042370 546520752 520887467 700352312 467717345 706527413 436506527 535653116 255797861 909497333 28032592 55703400 547564120 799396108 495511020 921034663 929081943 964597094 175059070 456759761 166005908 648441387 616040933 655498592 508902017 662477056 970620509 970719268 344363182 751060767 61434717 335755803 239626090 446779170 124545896 439290776 823291684 903332449 838174324 932403223 471033724 771118138 753092286 826547742 92563199 305746646 349900388 498427155 988124099 997974023 564711184 848752697 860677570 927382284 836490173 951522371 505877286 599260649 943321477 990342405 593913540 848045814 264684771 764770724 374370290 909670264 272104840 894763242 622133345 667915050 597436868 942863483 651105730 835442406 451889600 879315555 272713712 322687387 207711427 213165493 564778305 565950043 824305031 901580901 808189925 921810827 24680548 988454059 130546892 720293839 879698993 976729780 283624447 480692205 932238884 939416073 994874729 994960117 824832781 828979008 341684807 825625448 370902523 865941508 434795027 640724860 624656415 727434925 661139157 779240328 256393667 458670894 812554114 964455762 406455035 515349928 686517926 852804337 547895442 639790974 660814312 967801995 406023209 533463368 634063972 688783018 246089987 450554595 357612249 926698945 267518740 410015582 383085077 392652613 835551129 895868481 595396368 822184372 144236098 260461999 439290056 749872420 909392941 948547226 169822234 607007671 210410964 965112215 435123767 989409050 328839185 758311090 749653338 854155945 853066246 859810716 912960306 948916275 878619171 972623527 679993693 702805090 597241852 793725707 15396037 162334942 898490752 946910617 271846067 602284267 301150482 553546897 622681380 749199141 156279377 297842960 131640776 621727234 530842590 561212201 916931919 923873218 794774846 826035786 795946806 914282290 67120422 818058639 243598093 722220463 595087801 801629687 989755054 990059365 184806875 973465684 293149936 563011242 603468874 675411062 180464948 367078490 900049168 993292950 433386521 927837547 73766100 235125167 649630122 732901836 904725228 916476470 974264595 979124271 731921882 890574805 525240281 888586192 210458651 642324179 986794960 995808119 217252290 826993805 610254634 843137131 502066907 536338368 248991027 833549141 23132597 426308361 365230465 375640717 166692195 562358071 86581023 730060863 673361594 792736191 740141728 870084919 739097832 833157992 109962128 770771434 470369563 691871612 552650518 993438219 997908015 997912490 201562453 690789763 561093228 647764585 863356036 978914498 871836923 989099042 640883051 923942745 535925185 647427278 646251941 656809772 957084783 997046694 661119326 715306254 82713499 838888003 37831507 334926088 148750743 993160683 259098567 569574474 965452066 965898935 9588054 299497644 358663275 401603119 477518530 915055327 201116861 266335034 617864168 768112097 410813226 924745759 907654017 983713548 272502160 928685663 953243787 981369370 292570247 329477428 760870895 820063983 452030178 967285360 464097354 630741197 791517475 899469800 901696477 934530088 639043397 823697888 552932515 872176213 990108763 999194697 371101304 789324625 196160733 317943825 840276551 995460740 11811909 184558719 112835888 264787856 109106737 554955177 209016776 493886341 707120446 989391668 21414255 260660804 64753670 470386446 964554294 994870753 254853518 390850551 762462306 884937699 70274219 697454062 874679426 911771195 577921055 611718693 833010032 853692739 653454375 728187478 119594526 557298456 376071281 421011769 143431289 991241726 247985817 948589530 648669211 975485613 206005954 651490748 155355912 909649315 960399384 985121984 930818087 960320389 108962184 518032162 643840539 878192568 184377391 928697288 974478786 981727338 642813922 879019643 515392140 800161319 136919900 990017245 31187801 912343347 639018696 674231821 799318050 854930466 751474467 813002414 386919225 861428544 332482916 930044186 292969702 722506743 344806371 756947318 252313148 447478630 69187161 439481993 619965927 628513050 281457492 589611818 868166622 978059140 568273356 724087674 931443565 935324612 870393120 911251458 604144718 930532353 387133651 431595145 371564071 408603361 508058264 841790820 922565442 980228419 767210039 939346345 73037600 378204191 442231601 861903184 168782833 447932145 606094456 871477409 35575759 147304859 753593501 922455889 491564807 585481726 479038160 748773568 660483377 927569285 752908729 902517427 344464847 963002673 38317323 103427404 396403542 581989764 50573171 279791757 178667856 460549396 233230106 256846521 583503736 721117210 296551895 445747056 882693670 988277603 193087934 611624307 611675991 859906135 18384770 344536005 759229619 824266840 656400531 665223918 992721635 995283486 688653004 923208034 629586877 846563258 543657413 786525090 37565524 681490978 382860868 991015549 191280629 714590561 35701670 651762232 747209868 972546587 477608846 833331910 320097367 825059928 301600594 354203248 367883903 892324708 127505655 136794548 583190089 721977732 267866164 442171638 491796712 946742920 5664245 961117639 11976556 821134091 812556001 848680912 538687364 653772725 797682711 898878877 555255643 937972230 464889290 482594169 149706526 572299920 245768724 957531916 573440917 966584915 10688413 505108560 508590243 584254816 704424103 907447401 747820901 790372629 400889568 846081590 850499051 942045234 707268032 849747304 130683904 264507794 233162933 663142576 772265599 980223809 459036409 623822329 941526005 985477107 35544274 639895552 196727563 345620935 523591864 631450762 300325071 991487967 124885706 518234069 174898297 765582144 475368095 824098481 59717804 578632486 481288353 957554522 137930466 358400826 250604032 749467484 676044553 946292454 611035388 947549170 268403578 614273709 330389918 899806420 66547431 300320845 6742427 706214768 581423114 907444645 526790987 870938326 451225754 582902704 857095266 882713252 655540320 871843674 580548906 663407629 543570834 620856805 986241478 993870348 595430944 989723502 281323829 850998711 537051357 935913721 958198558 995985182 592109270 862461212 134708857 321422505 398561510 684233993 658569562 728193402 439669174 880944495 951833090 976045575 734014203 847613604 671674009 801677690 282802117 324655587 584177311 924260424 17510140 913480188 575415236 664933462 122831801 731774234 470766807 588917535 569526401 966878290 410375684 653789950 195024368 626431955 941126775 954080189 761876679 803900952 552556764 869465772 575968289 640952454 442785574 940918529 873149842 958400061 591674589 821391254 396681148 762953551 73701183 607124676 920110306 975838637 351397591 561264118 188440259 605524032 157347292 340781482 897611132 962358915 590807706 898660920 917690304 975163094 310343366 604885757 634170776 876819022 298436847 905876451 143828970 377793917 483703903 605792159 694181495 738265536 974094524 997316338 471504146 804368066 670662886 869350667 229226886 899853634 319215030 556375292 400492304 526078492 134995029 643950794 130166079 239366847 741399670 956697907 148413976 913240970 352796881 355686250 284968294 362542944 20223953 637223816 227961797 510259002 74200032 645005630 601586433 715908618 583674119 747190895 715206121 938619147 461826233 688033402 980426526 991553658 427750432 626294308 792326956 997531807 965785935 999864375 58439635 521807139 794415774 976799510 929854135 983934931 731065669 868515238 190922770 560927652 316526056 364864274 419354897 741831716 314155038 464764572 703020863 863577817 963483122 969297321 123055759 759796448 241337297 345860197 704067075 860355540 451605998 843088820 822021737 886988556 541576373 673420207 696349779 748566634 765179026 889868541 863244491 914311041 722495278 953780512 148179787 890936172 286015568 686852502 496385925 656428097 303769579 416282542 594767462 953621071 715589424 865716038 105387736 254601836 938206468 997884048 819127151 965313879 836934383 984829267 639336765 745197964 549374774 861590820 25004249 419449804 104217024 549513720 432323317 511618980 349565710 790989036 458654016 651370769 98780286 546257255 691203611 743427252 898808924 947419579 810096493 960096868 173387198 972780971 837259963 938591317 884144720 909792461 469890356 874371241 575049691 759184523 507984956 757649701 311631454 619591851 481233165 773499733 793817824 936520828 873267857 983790777 244821071 696994551 804387901 942227141 229137534 971888062 400352063 883316689 995412537 996670610 222534346 755272441 848792459 905841420 419049826 535007115 407918004 448839910 460644865 724826432 602225312 920871440 473872896 897649052 770285195 886645818 927875476 967531590 741179663 823936699 313022959 838018090 734290865 890452141 469167418 834047919 821927119 836987004 508205789 639890116 405290582 741307331 575405296 613900025 140825683 504577932 297311438 898470876 789355394 971212674 740008026 813443985 133662727 177651332 381612657 818044342 743800637 894893297 715174362 777262883 482685177 991076122 501596223 894061957 507696154 815217485 962766719 973614615 46791543 241730882 458958444 927261295 914151496 983812960 984340013 988191654 724947952 956556096 666930095 759261754 945065047 963014615 889814263 934010495 414068625 937503135 160715640 225757778 825277736 915076656 84747536 595154363 474065874 808885802 347306536 829878528 79892001 733840854 957510641 963316177 770925565 866107966 85260541 893143698 780989602 804168566 868276751 909458690 166929517 742468861 608296397 754665210 303537950 747678231 508521217 942311728 589260564 950065589 508515500 945877780 95452169 480514292 909843191 973390256 129203315 966190101 386007238 941819177 875419834 984889613 124660175 877280553 408797095 874605654 445922067 667188915 404568833 800090751 193612735 586953278 860517414 954138768 779130153 886101393 827081108 855909484 467993247 555727712 997866421 997871340 393314758 460135170 760475279 781450151 968755324 981516803 673819173 832759414 824438753 856603841 67840576 683876338 673328216 716729667 273148566 516544861 712060277 894010294 988478821 999073731 317175403 617050628 760257657 959030555 512400088 720358770 868311191 945968094 966660557 973587801 484765364 729535538 590204548 665274274 915518838 966501832 447986820 576602612 582462057 692890191 199869395 240732750 62857643 76283049 804052783 944339887 147746297 163416432 495037531 812531151 332660228 350888421 339727171 666500327 956821837 998698915 274611597 757489749 510569008 993639834 842794716 880857578 328390267 515007876 513665173 905280160 797734750 846463079 529590690 666118378 137503341 392178325 845590107 988247758 93024533 386920178 981327839 996476444 510573798 833381305 832992013 845411898 478971986 572352251 628799988 824691074 500199787 562159177 189555532 600437135 791250840 831553400 624205695 922828209 102391445 706165643 13858708 218699797 549101864 947649444 30204465 493130012 598599401 772802966 125503536 354969607 709264401 865222361 991409217 991942803 749796118 890401155 146733166 816224791 584788975 600308576 748450267 933714963 296268732 679237375 959405822 964293262 962119425 984386045 355422592 757556156 972424325 984241893 180053220 315796522 513044694 708235452 50171446 777180283 714250907 941920952 871259160 926850679 199208983 797773582 705541976 916342869 248139754 664903294 676045625 940315645 687092900 758332120 91810166 242109100 948499567 998699352 191910946 947243219 381876623 993584141 158462314 238947146 529949967 960510354 524310069 599762818 33822721 219079853 294131799 922004142 922965927 946640438 488812986 923063342 296117074 813178910 729350258 888098182 366195505 395985360 674139458 984447982 750581559 885180853 404090719 622083206 401144420 741629496 283035791 682797912 668622678 779182800 509875815 656002796 863184664 864443792 936312850 957984219 741862569 969766448 751876327 906110409 690064373 992916937 667491545 841383716 488066848 590230660 472344307 999838404 908008444 920510033 618188170 769808654 125959408 853070073 568853738 903691153 489899384 600918046 239531053 950529744 477384819 510582675 576830137 726452447 301917493 498323399 365657497 698084806 925121713 977017242 854745804 901473976 452891748 737860479 195377260 552213617 449407982 979522453 501188440 680147785 339651413 929883822 290489763 863156708 565636105 775325092 947593827 971777706 277655940 409452317 125658915 579790597 841794663 928767349 861675518 893642947 539434773 723010018 109724659 474182025 449000936 793990992 659168682 861526396 53739955 406511187 966493140 973470760 122983615 829076632 533719096 983348140 855038840 862023448 726126577 847863174 650226717 955804382 724856042 976339255 649994593 884323665 365267969 623287118 416643418 476144910 205595093 304267655 900148014 906057392 988348890 994411392 486195291 875187274 698606534 759213425 500117973 591433418 541171629 914301388 552789208 959434408 333125263 950110139 399863658 910580256 74185542 915748574 816555018 857031166 999550009 999604644 820215 844157047 188611115 935017347 921663750 953559981 601526600 762742617 556215559 927709361 297092928 886094452 954147606 978963221 300909484 321114508 747259547 755849243 715802160 913700000 642164596 998813767 518032406 532320686 528960995 582991132 866864403 910200398 954727246 968248052 961631747 976937202 736429066 918802830 858864495 891751596 478027758 628789062 982494357 986600625 397967501 464236653 598209326 711647419 480502753 568047672 707943123 852499777 533774567 731712527 524715974 666098443 922153387 940691739 25050175 516955446 664698400 883321284 782725312 783848738 730190623 871045240 732614803 957341805 728802125 758682961 476748883 504092403 901695678 941744074 561666254 810408487 640574673 878891950 399886823 550841509 68434600 603685331 786190299 919170348 42466962 686023778 796703472 881215819 723232857 774888618 729596706 928816825 815034298 850978248 997446521 998314435 175770404 550744044 287458186 442553985 306062796 782378485 412019802 881206278 215869855 617500723 338485790 402914178 836770624 929952016 938784690 938819829 184236111 242297607 914239838 934349536 922190534 971568206 552132899 632631477 624253694 744454047 371221175 960633719 715816734 757806363 237621578 628656793 247873777 465861903 3279692 442759259 443353483 977304775 42034932 273980983 968209912 987623986 609505299 842081127 117504483 667877060 537814684 610016853 406299780 568139839 664149798 998796861 895293560 917219188 266301032 596457114 706261617 967288288 173433661 586969276 367736536 421071961 564864000 608623322 860088420 977230150 486828385 913222856 263667855 901238315 372399942 533949619 325125230 588153679 218097582 580598446 186263654 201790165 507447113 857574644 901222891 955732137 88909434 731053867 290388108 594771433 447839616 601428446 107322454 794561997 382998371 704253781 811427752 965642553 922782627 928190167 111850100 969340375 941496167 986914473 673665274 740182683 654110098 924043215 190847091 383345494 980738393 996526504 406487590 739851548 943168804 967852867 949883050 958758925 377280936 963672109 903444762 926559813 618090246 799879574 123996909 484611683 112140830 471853321 703016155 752150350 335712414 626606651 911487977 951787415 521132410 561339696 570617271 773832404 50946517 891947690 575454869 617978164 778975241 820971461 583741533 837597848 574346020 905029940 507684688 857931325 389405744 479170252 202494951 361901277 551711916 558635940 962090746 973411647 71430497 454542512 56412623 443587560 340821086 858735645 16696416 100176437 643729721 912051562 126563598 280355449 55937829 240033576 487630185 597987921 674388386 948260828 800929884 952262121 574671434 764722351 972512368 998173789 609275997 636729652 558054367 918004341 127815514 439603002 542681467 673181434 742115529 925046085 510707099 573128941 343683150 431400505 171142895 750053655 974141475 981842617 192499690 667130202 517963357 767502656 991088633 991617392 518955695 728495035 188225482 674375805 719479784 993839924 731780093 732278108 591588019 769595939 845557949 910593346 941096084 968563341 62501893 946531725 965382890 967416135 846950764 884717819 789863704 803801117 254722 485495487 626568080 974570825 225337334 333363837 508654527 737302619 178984786 186479978 965348068 978143801 489119447 554082712 147954711 497155084 9275 797948496 92543030 909074361 94489878 113380885 620352719 919615502 719593161 789572721 629537937 826207715 624629535 658033955 786609611 891929772 903171551 905288462 694089060 747919414 669670451 833210534 738034984 987126032 889318203 970677549 100815206 680770226 859069132 982362475 963008328 999889345 308896030 710359598 250029844 955267572 614619537 938557417 437513197 693641688 11627998 755027676 263637721 772473200 414500710 589068622 406169422 653316407 186595976 320673886 319696252 631768449 258850409 653390848 371487844 964972061 740010169 795320635 116048912 583244320 522271006 657109132 142855619 751175709 971533380 983707462 615176220 899980538 374081501 400395114 365429118 803809676 673431046 863930093 176189868 375128567 834664286 985046554 254058139 349422393 154051898 491279275 388801266 653673433 203611482 730218476 951169022 991556794 915844291 981981683 891462766 937200197 655986826 668011594 588000565 721647988 984089912 992891188 566698353 656771626 607587974 804379793 730700184 885492464 341856199 695947677 364022041 810719551 233310279 801276983 127586186 294611646 219639677 716059203 335709128 362232623 392089243 653789004 35781171 886589843 145267526 556841975 925025965 967447338 811227811 844344207 265767621 343264758 245101337 304671785 634537921 772218287 785265002 855568185 383499646 474265653 951922430 955781061 467332036 706358177 68557555 751351202 510090724 619554337 847664341 993920926 612285248 687997645 166096275 517768352 347177709 568615903 759564229 961273717 632873916 811305855 5567711 553314749 564121928 910470446 369515001 409561193 84336677 680185680 352603474 882803310 92899246 535148095 171738522 658727424 892836370 958688029 969088408 997044951 325308722 801620877 12835520 510746978 591072354 993850008 445439391 965906826 846532405 984247795 602199153 884288864 764043037 861650865 443533623 946433401 670985313 808160342 72404333 323398252 826549277 939030409 173870389 196775308 338590639 647969088 457793003 834564399 223014581 996401086 490003340 657810398 588179832 588427837 960579370 961344477 781635000 968414108 724293463 786774473 441455322 783616408 550186509 561497597 390414520 498997389 692897878 981626176 299631546 909721736 337558484 518998642 606914361 843024941 665049725 689893345 998021785 998512748 422627017 697733448 787196120 955517028 593129349 943660911 552493268 756581064 379995301 404520249 270165366 449402415 389349460 470828742 287057371 660675415 86182370 165926435 957480844 999183319 286681022 422722528 575426080 663299230 564702723 849882846 937826482 985642468 895736805 896988255 944064593 970535147 544446010 756639539 987918349 992257470 514233808 760966298 429257909 850010888 605145822 939050695 594804219 752039401 313974062 623308910 313269865 780383581 376996085 802759049 161786740 816505364 742278071 876972566 255440120 556676960 702384943 960521581 354230981 865028687 330983165 925525037 114946142 789554894 771462581 922014495 908511822 960724793 644339173 805786037 207823034 267432820 80394698 366573547 982470857 998584922 174508607 619129343 960466899 998857645 138647983 639519215 492523511 807935118 300098691 500775104 829682841 872414637 478243738 876257499 439663892 649259340 340007055 604754158 73945813 895737279 120238697 824082891 553568543 698602601 417974423 435394863 801684530 832333718 542381594 795199055 989952183 998052387 247842816 595923088 370275850 603181462 185245449 416479021 985733491 988925785 47510430 377035182 63176542 185900059 976058076 981140181 661815105 941803439 33881556 495998442 652964466 771962059 926131144 994343068 331979260 902016896 834436417 954034011 649004330 949135993 416069580 842889309 958904324 995072074 469075897 584746131 527280059 662928375 811129524 818955032 876377954 888355359 533986118 554863155 830752503 847010557 760300382 834596666 376808107 672092278 306190140 603244418 817837719 844055677 832870460 938118697 142705691 724464009 207551155 255687299 189852540 913373736 427208481 454813848 901072643 920298887 398410945 535479972 180214839 796497823 494355606 759815976 56032268 290970393 427140555 781799142 497509152 622998737 19970100 905428713 932553131 943111597 596118795 909283842 143779663 869012438 914871794 989787244 134292562 705663644 973834577 998962012 176871548 638341933 70421463 131967792 303400130 928357148 921736098 962853607 556911559 885542543 670140544 927111917 59595162 363320893 901728402 929142095 132429193 374838455 379380868 674272440 787890208 895048076 674251215 852627446 628838375 817653639 73160741 137929316 623675066 990386890 881957247 939655980 638488543 856924355 901846202 903426240 45955639 94979031 201954472 343507370 691970781 768439509 777800429 797034583 806804942 833889664 842404242 925075541 944855767 973446109 528002514 552721383 991946674 997379932 248823798 436627477 512982266 650671443 894428687 980693483 971639409 998683706 288417875 532890128 960058311 999664948 578521501 698650537 445203532 911920072 432781162 722350619 603037621 829445611 265848018 290143125 515103334 643107776 767992717 805350503 431831977 582472436 149319624 569761874 978950577 992438267 910177828 947179386 695933200 788515388 161341636 759287944 801360643 920421108 818071756 849007068 562348853 945105411 257216528 767546285 170042368 493875823 425465845 495692102 289711461 795485548 303430785 773952707 649997280 914587639 704132867 977236359 644188698 737356924 574590653 862941044 163725090 378821963 836664782 968051430 388983803 964206680 799733507 894253048 732030360 829379937 3849016 463742118 567582728 662323942 678026517 986195522 887163139 911028467 700420709 838725989 783112292 898941556 372643479 641985941 768910959 854463011 511059158 790998911 817718650 951100234 463074808 662513888 498909529 624687508 826544610 874670027 923918486 969450017 247273818 318754108 392649294 639752714 51295867 79263528 670294038 716325068 261657275 617945413 295192700 733190294 667598868 771604147 756270082 793863546 142073208 733681027 579145536 747294742 880387176 974835831 128860694 609381324 674361789 995364628 565696640 910631380 172750778 998662451 6547648 441658798 687608983 770021035 368281737 732583811 632119042 806875178 206479321 806232357 196606845 683147348 376018526 766412482 420837373 847259040 400897810 410776852 706547516 756226612 664093083 834611966 75395909 158604575 174671595 907479559 371418187 482737085 208155697 941021275 347438223 403930256 631567387 951367941 421537869 850673881 254526834 407337726 754792617 781916249 652656157 976696007 545303496 997173417 306315160 671568837 921985546 988695702 888814408 988072658 333713137 373428687 323211185 696453618 90008258 626067556 129069600 767508370 773829900 942519279 937148062 984007993 595658905 736776385 307445977 779877135 618396751 675163262 819669522 967976546 632838241 672596446 411356067 916121115 701731247 897328839 650165366 770418004 363372264 765392762 762696226 988577934 389842035 410065017 356867744 693407241 389843366 615149692 460852478 510119475 813888252 980357697 665648365 777534696 896252669 962691287 684876849 969673691 453171445 598458368 547594339 935766954 463679679 558526604 506785433 727561663 605300846 734604281 99508179 477592293 610220428 797225649 285505895 885232103 241917756 242915407 572627254 736569410 631486412 759714463 7818512 987566848 623670286 963773133 390362884 918949908 541881687 678252700 194232341 322866431 484324530 630411157 247349481 672976148 105393783 408578487 638281988 711481039 866116949 912835728 99084828 950879095 68095232 69458396 723975488 838795267 860304705 952582569 385222670 594205866 507536312 818619034 511636702 734231500 966829261 992810361 223318753 396027325 804859967 976237257 106558877 823815358 310179975 427830238 106280676 720055536 986078922 993199948 237845836 884733384 894863951 926831661 219565084 944725379 93481277 448013690 911713947 913123308 354559332 634519507 56920151 571327935 684070745 710272030 488050694 528829972 212144977 381682346 213018798 266703560 617252511 931625375 755617179 968368252 558420658 607926293 561504085 609306709 509438085 766449098 621167051 865132968 408765232 911340985 621073953 836832770 170145952 679019324 117994700 161795747 874595565 962119324 893734317 983594623 367715284 939930329 215535981 792949112 364380307 729520157 486081291 547968193 435182718 439219936 384615768 489290106 765090654 890621497 202570854 667684746 655656569 993007370 730569845 867547732 816783466 905393352 77152597 549923257 547702725 969894933 246958069 815474252 347161615 640915531 932657108 979866291 437841502 877472605 772593936 904698422 814899010 966305673 791416046 954950675 962835025 996693519 906284262 920252801 34484881 204805628 983372942 986121914 419479186 594373796 579984014 635188847 525717528 913271444 148657040 346346127 128191462 790147849 546097677 908068664 731279990 747670514 765875550 932047710 981935705 985207272 171307485 266752707 776922695 948002837 867908167 967424325 666951049 707906984 840665727 849970075 346945144 897089210 598149584 876887764 150250113 954846659 613509065 866118683 972126663 978803843 255078460 931393383 122425471 695112388 898545966 931215669 205877402 950324387 840294964 877986567 815555584 962714731 739542987 884884251 994774082 996294212 251738711 919798098 480643586 948345959 361071879 622764512 894640586 965305156 225939506 262874473 740869558 772639325 927077620 988508313 615878674 966327886 598710233 908538500 181615705 277225774 911579275 951524254 261944691 785691114 123913846 284472703 386558570 951054319 610962593 823002971 706286005 719136383 280045009 661373953 499205976 794247408 54604524 465395363 452869249 703813396 300771458 372976890 991095964 997180305 288051366 718721378 687443996 951020589 790641110 924212025 120252105 391480658 178581519 216623714 717113678 828345485 608382950 788159908 295658160 630205699 474719913 882152551 594026564 913704887 744041769 845280321 500040508 806734183 778393189 920920207 340012297 546626881 333538376 911325648 123349813 333496739 737806174 866507915 997641939 999102294 943179909 999885372 326519475 805001462 7127018 508063997 170047854 522925460 778043258 973606274 593525345 670828314 33994574 779150987 761849509 943167231 716940721 903608872 961908878 989869956 985136580 993614939 991666441 999812928 492494342 572382302 667858504 909790478 75342331 895676566 319077521 709206687 751115467 966703107 692093857 906974000 871374353 914374555 134506035 754123816 985043810 996116967 389572762 682819441 663082088 707547593 55376966 601854232 938902881 962112634 343118247 628018655 209534777 539339402 532222707 663410713 345205358 646428782 375653836 416424557 76341619 827422536 532168350 866443946 801015118 869466257 82498699 293706449 450966253 717707348 56198789 227280014 711380766 945112200 58365965 303003337 944154420 989647270 18472276 965550161 616556740 987388598 900225722 906568111 149075360 787227721 366754468 422971360 284961697 613652605 190896923 395941504 593846520 669710245 946240430 976097488 295833497 915061912 482678712 588805546 991909617 999907219 665452778 857950299 873800825 984439976 606158939 997122230 718954146 725289247 123948822 492173244 576967256 843208465 298631824 389549341 517441356 857176043 978073246 987537744 18463006 366906711 452149588 683262530 659008324 702525142 819226286 893959089 933919799 986106690 341644440 735693438 482886820 964304891 281918158 500983055 45081305 820796511 909427195 924728728 973444021 994660021 733578374 739475029 236369120 885513921 997668658 998628728 965906050 988298350 453502676 818131275 906801757 959126044 245984733 783425670 671343809 758364396 558090673 669142548 113699784 417086471 479143447 919098442 340604913 620955917 903104168 981204501 615986734 951366182 100941273 885577264 197021090 923323510 213735731 381370153 502610101 711705352 129868153 718498727 926865920 935833541 972841505 983589537 574433824 896661428 647315169 728828707 942142742 962533194 786328503 958445154 560112316 968569549 162517681 297020541 879853668 925461865 486612296 801014474 986425312 992407178 37774149 228055842 142439639 239990094 718845154 920232871 947932857 984187543 691982156 950065699 747342918 858308519 461078082 949202690 43019224 710865279 125473024 617800296 480107111 929310964 297943601 449939936 974434630 991075260 87302587 245779353 342399446 888990833 433343757 913093398 324635418 810255484 229782517 637109166 537828410 755467251 543416191 956547970 134013040 331629448 814116925 820879841 819667919 881517485 884647455 958698175 177369580 436518793 144371540 427145602 627347293 694769689 82020289 207290284 113887732 827337474 303510304 859430307 323745915 751620914 229308929 831796801 663154254 970538334 715585338 845513633 342598037 438712954 43266305 463959858 659214682 760865388 491230908 637032158 36633875 754624605 654099456 935619494 784936376 974689511 187351238 863564138 653043750 954063016 8590953 373544822 786833411 882877319 691692249 965521601 644189034 713753704 308838148 368928264 335628600 503671666 917065465 941530613 481071714 736641241 46086338 313628377 864499521 889091771 475437727 698490971 39464964 976040787 456023965 975473960 196169931 578205668 750421079 956965831 157816495 986723873 830935845 951179104 863704746 871141011 512251185 750112814 210604378 548659780 244840178 463878598 183937162 609205042 212332556 280986924 876802229 991335023 963301005 964626559 535798132 987217041 586721571 817280692 179632404 500830316 354523280 410677558 438376184 820678301 145160679 711269935 819159715 859170272 308832698 336929203 130004114 887619392 728035091 802041348 657424964 945592212 877863904 992036027 872897655 875235271 3979382 173081777 464448409 651564174 607313662 683145943 713409136 766213984 81997441 175863162 108660065 872846610 757343801 961909788 378704675 863335302 245672385 398829962 783935547 925744021 597052456 608986349 165313652 420305709 69511522 234404644 686655457 743612374 775623590 782775138 728825960 936141185 384520803 851057569 797215233 813370061 636236800 754906444 105644449 898430186 469873154 589940789 26344920 210427668 900630064 913472000 158946604 677833677 916933927 927552730 265683007 569650659 76282701 493262057 346372916 622566006 500135323 563973902 691536977 696290766 54689977 105745540 829146190 878494522 371100091 518566571 445295466 493016131 834978361 854501278 669173464 729194314 240835495 468747655 584901129 745334748 819232256 930094775 234458362 508620510 935912027 966294205 736484505 818660233 902460318 936881544 946752285 975389169 568075244 830517742 591701204 733428478 639225425 947373809 110800149 174926761 589657372 634079324 586184743 897410261 999996247 999996315 988610978 997986227 616389062 844258102 987834702 999014672 279898408 385124139 182153359 825111267 920347481 969041206 90271241 707911879 322811584 558516921 999546456 999995178 572764407 894204241 323295967 674553133 175913266 722569680 54664993 934530097 353378992 978948283 68957845 872740908 183864598 457513500 527480063 768138152 667605644 681422081 25730220 775602700 747959243 828230124 188791994 268204307 370714485 541337777 640784470 804825355 694480819 699492184 804159946 974053422 628952718 706086045 700039229 753515584 504970952 620208153 239697431 413075503 176485568 429140284 460634485 986617075 215248377 376620693 720159514 761650073 563872585 705140399 714168914 940184410 462708751 643715707 416921244 992714694 566837111 713066862 849354914 850129979 425401148 469641449 967923909 970180238 156992840 767924843 5582436 230030068 294010171 640925909 888788582 943341147 201639249 384408967 5219633 688960943 9551762 31673554 138141500 837942667 36751204 356048379 995364803 998669156 302378695 304070041 675834018 973532663 193731216 533038340 829522273 878413580 166977071 229506247 809689344 867501801 840079915 963413138 815628633 832583200 411209137 741752065 926277344 949971951 649451017 717035560 764650808 778031237 914037731 973572200 947322460 991853857 631823946 708178407 452849881 932614570 921083992 987409785 841665524 858071727 645308123 756456991 187486876 524156729 537384349 622861271 361885871 837577190 663079116 697257997 916758889 999806623 706940033 744914374 919674137 960584407 755351565 913531374 408234724 632252614 346397044 916529975 386280970 863983870 587614996 778298395 729144499 984932704 896742954 945035198 594220747 653230170 755907086 969630199 378561221 913946012 887683088 900114639 932549477 982068291 645150924 913072507 236660776 335825070 50791685 370543977 366803477 925221631 105468206 460455249 169808500 217135901 78681004 588168058 435674096 624033749 257535447 572404193 103427557 437418673 151302023 983562480 445590276 480135527 594329043 775828297 440614363 789992289 759238630 904342830 64002700 814030305 619824064 718691765 815985134 892068217 646208432 768656492 832243870 978666196 56162560 930763080 678065542 827373078 751906396 938016687 706520985 758207750 654347120 871530345 548246508 679842036 499430019 950445403 949192288 989467869 873984534 982391037 661125467 667197651 223832967 439126105 915517318 990807595 326789629 510756457 180316155 808770019 808753953 964290461 969481878 989004281 629361713 838137290 221950909 743951806 858680305 889611903 159098773 469227668 390582359 647955812 746676212 957656107 357309970 628844614 376947978 762087281 157593370 950834138 484494985 921992837 483106833 579073676 59721568 913674365 37473869 196778119 623092849 872039050 373254562 713617148 131780687 329260973 762968939 841094643 48533677 645885580 916145123 927845534 237224076 290579806 763274686 988253474 899524333 974635816 420005605 573637347 234750106 734205398 514724340 531670205 330935661 440573775 470031590 556691390 803965184 858099408 703123661 978442783 638990599 910640696 574180801 778081063 591279609 923539605 211685841 670459470 183788411 913298723 837787548 918067461 140870428 439973269 386406339 996768488 314294340 928994803 531602226 891856272 459262377 666439411 89038649 829082927 171226959 417745820 112700892 835045761 955985635 989363119 880645113 982300724 37599343 613038497 578225043 841518474 156906982 547276495 208376503 438279926 235750751 420530794 507650422 674159612 220971386 259298419 575999713 949552212 588735979 839303125 559782193 845708239 618363429 764967369 330381780 704223872 725976530 813233817 962200360 967234037 399623764 936303430 909600262 962669473 14526272 56316811 530766488 805177820 744833552 955785358 739527216 814594833 707503771 961282260 394689269 413683191 772860986 813920595 587905606 673796783 880216524 946307029 988349565 997666205 81552406 642155653 62422703 513173786 176353731 672728699 901201549 999620648 504369985 737154786 530592811 816840666 984540723 996904510 668815194 736399864 929040810 968759235 600105068 883475955 387079266 543809778 404699590 720014063 296489758 669380892 89922819 635076392 676505580 677963497 680197125 788506308 844887479 977559179 885495668 924802739 999595901 999658179 131680863 570801492 862463449 918604909 129026630 351787281 947271886 951755065 813830856 891137635 980918557 989881663 721544837 912724316 272488608 750138531 320256951 941457650 583003555 714574727 819251881 992546298 403829197 852619173 371477235 530860908 545880313 591481638 169712694 833800038 125752840 862386920 491039692 727117596 23009671 422219210 172032095 194792383 7665981 569296271 514604933 783238027 926865494 971830355 632238307 997100037 588356426 796500835 891597165 996677355 140398767 660031748 705543360 887696642 143917797 592768332 236599912 664126034 756372251 914742087 373598120 889217769 208185605 730014674 404711119 644601461 857165788 893749206 559510371 848189208 144900142 451380941 22596627 274856782 391883365 586647808 458418326 798765454 929498892 946476954 155230307 850149163 732598539 781064765 300929385 710953863 455291177 988801940 5230678 173931179 352590101 408676814 551517331 821242131 985966422 994057531 651399029 913570556 42213520 850645762 227897319 292771914 757709091 822449048 43009002 337819069 101006218 717229130 960025839 977433645 210133714 880527513 486377889 863915518 280562411 723646352 796888096 880056789 193207270 624125300 552328162 866818951 57905598 230973727 713169610 872242925 572012762 650666074 711002550 844436503 396410331 854636079 62515427 439154368 736201309 933088011 542689733 603563411 587185708 991723448 133698680 546116988 415966447 952185364 587151815 700060801 528987263 695350330 443532391 794558700 860344438 898336119 951253438 968042714 565840617 922378542 962558287 969447811 431966658 586739301 838676258 969826607 694492226 951011941 931985654 941693136 867150501 913833916 509438361 883615373 546835347 588112573 476183694 506352668 94309242 786179284 877091779 967622324 864243177 976414655 728780368 863910609 203456734 525835024 228152710 244371784 860570638 902491471 543916546 902375472 351787847 714366960 474453802 995461258 607847738 870616885 46117116 867816219 847382593 868812719 581421805 723250941 599268700 644460685 158003295 877023842 659767550 662519963 95734851 784730901 353121046 750469266 175014936 320850629 370516780 602075674 316128428 670440771 843644538 844033301 304169682 938581130 592060468 922955634 94081029 769101368 689023882 956824229 305579471 490928834 867503454 968931434 569560530 887691071 513383275 554073319 19976446 704458341 708581176 858890469 675775861 854950995 267306494 691256012 196953104 382578725 197609879 727295851 540222838 691040094 760675776 842180728 16783674 151019248 189368209 711369234 46048594 624890616 736313780 830096909 824044206 901625720 257838862 578270358 201396132 929838285 306458646 810732368 665518088 782219219 76767222 797583996 383888681 616667651 963983617 975023441 561388151 747841834 233999701 794997145 736909048 926281844 399090709 601382746 911047256 913251598 454318252 730388311 74133064 802237653 4814434 534465007 990696580 997156781 541632707 855331555 693808738 976451195 942652110 988636336 787219903 886471187 241106856 354368530 48923136 310039229 835652057 918168965 595373868 833287076 895721861 957828575 39981657 426748596 242222798 347530896 758863490 986093907 965349276 986472421 930151889 994530300 54463678 322146629 588548421 861775296 65860034 507424882 992479378 998714879 245732638 377064520 389682626 696723737 996719615 997934435 953308952 964925393 441740822 905828236 665173521 704933784 870140431 934987618 605079851 909294832 783181161 974094871 216986655 438627017 495208993 780397353 460503172 732648578 441143111 914936549 963426435 980612551 15463704 163424094 426829898 699814382 271444435 950756192 994868237 995612946 608878341 696416077 622842442 910049385 940141612 963755948 811582433 856138471 5552535 819040730 72724002 892677255 218437711 404773346 127752205 272263311 563447685 756146444 276270407 977781632 707753115 756088995 966424571 982207860 880404121 993988632 591584239 659297376 53333969 832451332 327644651 666967064 264227774 820916007 833723597 862323694 210504500 574068655 972984389 981128162 895735260 917981452 586277897 808204345 70699150 440355053 466656558 900518845 548523581 813191637 909047242 972228543 75818077 388395681 814571657 942619613 796129404 891959556 957654543 998433781 587321130 799958022 797666788 880074606 519094864 688291488 20259003 105593509 787581719 933085014 650494852 744090470 171456851 655213799 176931138 960388644 920484587 982221226 167514142 388462766 58580359 316268325 636122720 689043684 703456125 722832967 886456761 895753801 740164861 741759781 181710040 895751356 238738131 282958210 29205333 44937560 777614218 924380222 409105444 482888047 680536164 682935261 656550132 875528944 166758316 356959058 530718873 771172973 976966279 992336931 745668224 898782249 316597696 551974998 36638227 786043833 977441796 985460504 522999451 933518623 81141539 921993650 12324038 214966423 612670162 643993937 129952280 280224373 326265601 345987148 212978535 406323047 496993607 525526969 692384864 863453948 407033434 522661787 896041276 995258842 41889532 950753551 438179002 877386359 275440408 443674398 448883624 457582175 854874474 948245726 96966332 998302058 84558214 606697308 778788905 967862537 525448134 574336830 196288925 568361569 990867909 999894447 37348906 964380791 730887834 833199018 154056500 568547500 139734225 878539402 141880933 296953781 389361804 409637058 320792188 943902996 679298056 699211749 521445831 665204748 62171959 269638245 827385162 986303380 8723990 67214583 473961081 743804078 755122247 877662531 907063537 983942390 721535019 934972279 564266576 657868977 745226417 920787327 913738417 991296141 536124474 711739701 164171697 988455367 898543053 994671478 237607074 344996438 726713841 733389425 179912776 802692744 594891433 992145835 347925017 776170634 625874801 669369015 75574881 78498006 346329348 400447463 501218696 879121887 439883018 556226058 63663565 948595870 325448459 767541710 226537476 480267566 683681044 953092220 748692769 818709081 34308650 573469028 882226669 898262179 754892868 927616534 738433908 913168870 41967161 981612925 495478940 797769851 876956843 916596410 802266879 852010433 737799846 988596064 542343676 861849284 836451293 965778366 451106814 576305875 305517887 707769068 86731306 911485737 601174749 698851044 12321791 867575103 931260153 936558783 684863502 987523917 55198312 671082137 391066739 912657801 273245857 547140018 387884739 572983280 810358331 979684606 543824447 975194976 292948137 963600445 215907639 643009325 77895441 120328954 36787480 964708691 999537442 999541189 712340541 983760055 964033042 992733972 181132422 663261211 429902989 992051386 336181755 721898548 645509298 806417251 196078941 595534368 959075505 984407804 361619945 479344264 623702305 920304612 14147748 973995785 644435409 693011872 371176774 533604479 618315224 870820387 411108226 960325866 559776160 806020706 510564445 922242401 810392474 983300320 645401854 845017562 720903955 962333357 202475385 732629950 991892559 999653871 40357921 879076943 921075279 928155963 878581254 920742386 258897679 263817626 40317126 701843598 173919947 405480915 486821965 765531568 481853470 806232098 556807514 629002236 417825577 892382860 538953651 763248899 594153527 736113028 682198422 875203323 810109739 874971936 591236346 665781953 455954652 595329396 297398402 473540600 703804671 870431084 714811450 877546636 845420274 869998984 816965782 922181200 823220383 878163994 904229311 911714689 535407399 610769387 451116962 805448604 667310060 746473798 318458515 944297056 704752213 956048416 100213762 212673190 895631979 988152662 569418836 708544330 121019742 807125582 333463942 444336734 56075375 541112630 186106030 609123318 154437246 663040987 556915814 951557770 784425955 996436434 776080049 968967390 272007672 298145789 556555204 889499443 831872573 858513389 922871332 997831317 190547704 401326645 975539360 989156378 950902110 990382848 875214324 978874087 39410668 264762658 758086916 879541128 989584794 990373772 107633508 455897240 590781166 684204955 91478129 976136506 17939 119710960 187220203 322650046 763329574 904234463 601561271 877851762 239819524 815636209 360476225 590864019 701807475 717239335 727623891 804912022 649415166 935573985 905490255 942019520 448182851 497477044 399895538 579145464 497640028 933529033 632595174 753234645 414059609 678227513 8397723 187674495 98014980 391655454 159664239 557943978 901883801 960999568 31873808 416503305 798486639 905562407 441454275 955293448 929825843 978228891 243676133 362904779 663844800 862918372 912187354 944290765 805520493 988820734 306203443 553171473 291302171 445508485 605448472 761708735 671637845 999807493 449565236 737264492 966270529 994010355 300572157 320226362 496660863 542348896 758440947 959372446 981269844 999374342 815788579 838412184 122301829 580215860 490343032 555438189 316154486 802330958 654593321 896941119 162369665 424698352 597462319 958219664 934029776 990001208 82197000 516828499 961873455 964429211 993086539 996426609 464841766 608662111 140224596 488316430 239794826 777236587 907440869 957815956 855570958 893799999 286971365 688382265 824900116 959506329 760188937 852096387 798401987 906351019 837645317 883336957 848965831 852757021 51747666 664506086 272875367 562285633 544234154 702346462 484216214 968520117 640869165 790274981 637040382 974497205 75774921 824584786 423483624 864760261 390417282 641773511 199085697 251794388 408865720 788201791 218968895 360114299 878480764 916355046 111011306 439600058 789708912 876112640 20209639 725230017 911087915 960343493 756225004 934107500 746124562 925951431 263622423 708422511 847360129 984489200 659450700 859027565 609990940 945055329 164242359 303191230 559276242 952262609 483705281 799840942 817909443 912206990 16619800 404937124 633886613 692143418 402173003 683200932 898837952 985667331 239732379 982214150 211887934 931449073 627570317 940434127 502973238 847658114 471690966 745082397 884243743 943713938 373474626 790453154 60914615 533846164 558035806 803438145 803858533 834526519 111101965 391313799 600502774 682581478 749968079 951140587 880025578 952063927 100651916 765543127 23262621 39699162 769389109 960157936 43758646 719133354 621055070 934750717 188825287 363777320 62341721 88980984 734125253 967645309 894643380 923924534 316012768 402202900 381607551 955565141 667853712 953572160 84881012 662844238 487392264 792980282 704918865 705788062 731287264 949909451 341866617 368327611 888800230 965456704 275914422 640706011 140151673 832705530 970443266 993037403 663808830 967402079 916227134 960427470 496811264 587279919 953867300 982318228 627382514 807666577 565338028 929060641 396096484 420878351 361067271 644777579 775770622 901999041 150783034 863715055 354092380 817726540 254463228 642585984 979344146 988239245 223815111 354910002 117701585 530418377 789022959 875533442 214273756 749903465 773271813 958813308 278853021 816743583 412978728 490281593 157172874 716277249 516562085 692886180 208821417 751598148 12419056 822032176 841826532 902852352 199947142 472937932 805055871 985804205 818181069 917771476 557585279 885875669 119193786 320380120 720397130 830691330 334547005 367048665 785195164 812768099 921956160 922286137 315626692 734662381 505691271 863379824 966824000 991454607 4244588 152349702 120604189 498482221 145507691 364015940 787690181 969354537 884433772 899271079 741501896 787457813 275758422 419605878 43634404 764821103 339131319 488983464 279925823 831649481 95057289 454518543 897447295 905697576 748433543 923650076 957663338 982641166 848220891 999128047 539151291 956223987 206113934 600366758 303594362 971192961 793577272 963441999 547705560 932326076 401182023 678875531 153384368 456824392 276881129 422637299 330973551 530961613 247055780 909158566 555489316 643458107 85533311 831519212 924318656 970960060 944813864 963275951 764957185 857486520 332725021 391040659 65989011 434087272 634539215 712349503 301967508 968249966 689333314 898591329 891898566 978478828 462635427 744735338 62464567 545871772 751973074 793762933 615463364 805114850 407494041 721282473 147968475 566392314 614582957 962491732 787778985 848021114 920884252 976807166 663771247 668240688 404584393 999211959 14931084 958218439 995232265 998448329 750511383 853360526 750615704 771282818 635692052 871973563 183347092 507050589 832004557 833413042 78301812 481787660 797017498 806632166 125966029 133615608 960100141 965606579 736994309 842564606 360593074 966462796 702550002 808720980 56389222 149926948 456297084 903056584 187135859 859321241 645052195 794962858 820992752 885761764 544549745 720908074 378701997 470917922 221092570 513610292 939406541 959627970 297172159 402951100 457409364 479579648 47227124 432650904 284962316 440744695 709389401 744211027 557301316 892943704 891367364 994083232 748377042 928244013 788509657 868919949 815933811 995305830 829998228 845030383 407840678 792610961 912211941 951227252 224272646 977585571 203275079 476204647 670029636 792248185 605857277 642714934 654427320 902698859 970525396 978609695 315485325 916609824 889563000 894962457 572748864 905539795 897795758 928658859 898881463 980566617 691830443 949975444 350673804 880003049 891822797 918593210 698312843 850610478 826767733 990266990 243965030 662580510 527076786 824827814 771568397 890555926 649696090 737332381 355238233 578683500 807609296 920314196 297770136 941329712 388870546 971539605 961592144 964124005 774534476 881269348 33949390 682191811 909726224 972485869 754956827 811428284 779218933 848140017 250972950 400664217 55476449 162130206 384440709 638795155 385088861 685772025 679331048 902218864 286291794 987128580 409432501 750822177 853919975 924948898 267276579 837342332 191983351 213475736 636677328 967717878 225020081 538156586 274845875 610740768 211406933 484334880 745690928 830455445 762537010 796117592 678442060 749173699 92147061 570186163 781170951 904880543 859799367 872177776 210699234 350372299 493430191 841505243 686384118 862529119 415946192 985494159 732379183 850427100 202296050 833209397 388828315 449909747 917258048 918972087 133197536 481026340 894665168 921601569 664257827 779659003 164410415 927221605 593497940 669304908 470164938 562214462 920348301 986859495 257830202 261560528 752665938 971081567 178523175 250213526 370529378 967930056 419973562 679275835 793525484 910941384 586730924 919433579 672216639 684978427 230133709 852595163 137389623 372554683 820141141 839262429 696406640 741550425 185621375 834498386 753630610 775123118 293619594 919548992 531694187 693423846 723163752 940147261 804932468 923083065 392194846 977752044 130421431 931013031 999011719 999368054 151382081 767324606 532922792 738414267 954857172 999216599 806587654 919419253 25046046 365732651 981088019 987340558 508740849 928203665 669781370 702735237 194973706 509482364 702574128 851062667 535945714 800985741 8539670 598042559 926917840 985850594 71253766 764693789 993045672 996551573 734818386 750197812 60185868 850638249 971542638 984343810 995524604 997360891 970407048 990541214 442663406 648073991 192554575 556915211 165229861 713621960 799110112 999465092 210958898 631713550 123585974 721165698 911089854 967971497 299896425 746383893 947809695 955641576 207653644 591576326 147067781 960529581 671399329 995773889 128946642 799382152 686752170 775959735 789567042 947210426 599469345 900816988 913299531 988378602 653712838 997458103 837961072 969577378 409998090 536523336 99971968 806244704 951401592 959697110 904047222 908146722 3865038 56240560 725617515 730622949 20635006 185273250 512193869 643157004 377238452 726118138 505807084 663880760 190094908 468990916 169543170 600850295 660509926 970065342 395975826 908273114 662888051 788562474 638265134 954506992 147792344 580387501 647555282 975174261 36667018 715487673 845387898 935084983 670178929 893415662 674095056 959069608 537406944 630880914 715667753 984715506 895284668 934936407 134291214 160344847 582642204 964183567 879808885 968482271 368722063 625615193 482721416 927454877 606403261 903376012 612246150 745726736 576339618 664771942 955723395 991432807 147342969 503020362 965001148 980057473 169902345 605202147 768661112 907063100 869737553 926158194 258622902 261973735 365022196 640227786 976203578 977844389 834630631 907581371 664793662 880372168 522639779 957662722 642656541 898249995 593666886 865176489 77019550 990808464 645864635 732754121 563849700 940963666 173477718 543733088 854759726 903599424 430825072 696169954 120835647 604046223 462467768 608605051 101960051 791791480 164217481 335243810 462001878 888209897 809587347 926537989 551077723 846970192 585324481 622150027 394146908 621879873 567691915 613605973 758397564 952263727 549400700 714792016 300789813 664460233 497510899 841135716 70923725 336253108 10561821 331015765 328935561 349928043 29498070 201788327 914097902 982904168 118054366 869085348 256258475 602688337 899150671 933417936 624491897 787934430 851630350 852396337 173289102 555161467 905084807 926881721 949612889 952338782 355729469 958933994 596891900 744949571 434551735 913532836 562195655 893700454 393070430 823920475 456134006 794014936 514690148 933198381 104380755 594967042 129209938 391806753 797967327 881708574 488407820 846195970 475058794 692215556 271674624 608721407 886488295 954512504 530428738 792457231 377324268 729153464 775859293 937178050 199496819 313115921 745834364 928959015 134310244 170868176 978350254 990750790 844371760 917582957 90962067 575911557 674726449 747775533 879097558 884985474 847419629 934099234 724904316 957160734 106395549 860921522 720998125 793032672 716244607 856068476 540869319 812056715 272030307 315989001 334745676 764639563 213569675 447660140 367149675 804516765 42000504 174463469 402118407 895246119 215803654 451055534 633310128 907506987 30556425 564442011 354962513 733483477 821218374 946461139 99540848 184110523 188964865 763402825 93720551 157522839 770202423 843009454 593523648 603474462 918506856 972375284 880394988 915490421 382980212 759749836 328967163 944721119 153657622 573367766 426560661 620228914 904166101 906472541 186250423 902384005 150070431 991819674 98067670 733533963 149674210 381895132 565952839 570927557 190757470 984088771 164905126 223297900 146550826 527579038 634177333 747458042 496210377 564374517 98256496 198518264 121779839 952814008 58968683 449208204 205614927 278140664 191082558 336984550 91184865 675737847 841858226 999066443 776464433 984557370 100924585 797297691 818557418 884016189 652614055 728376108 540116629 570828163 409543697 938635594 167179878 527532942 490550494 556371638 40317319 165131744 871481499 972826726 109755427 179101922 997752045 998194517 11870250 108110435 172765528 874674989 461379836 804349505 709231567 729674586 907496625 996149087 994840024 999342163 80745016 89865128 450181075 672138497 864004207 907837721 515465536 555741532 371170383 726371179 296446574 742446633 651629788 776103338 137219702 505132621 522158077 643566877 163603378 376818600 489120727 987435155 511688933 914116639 636952142 740082100 29968381 508036895 18249196 137915310 200158945 961868280 813892655 946671550 94990445 782487604 347431444 844363311 599865989 965946762 390761701 870139754 886631035 929119292 934564021 960702020 294505731 711589522 623134014 912282912 551973286 779556063 283031767 408887882 414685069 743936591 120411367 234533930 887543408 999544321 101604464 144813061 261097297 593173861 954187231 984070507 702891441 962985948 986666582 997216812 672063630 927030390 440398208 546457390 482450824 501285663 614640306 987423913 932305474 983404101 805298620 970868387 745803524 883272353 469038133 871264042 927770564 991668401 967550459 974454497 675671774 773890875 464023327 829624362 489994637 949763855 862366431 958392270 816224511 925491151 493868745 585586482 786482042 947784332 628195049 982670004 995028068 997796021 893287569 967595510 8879516 26228805 382492323 596979683 411532038 474233231 280582793 658917927 861630266 884144626 690276360 943853309 82230230 776507227 408744819 447226637 690378330 731742124 595142524 771735153 351473005 823979059 903456845 975937928 530609018 993163827 366032344 954156444 264067558 944453632 314644871 399010939 105014059 969972822 698362311 982046271 35821084 420122200 28554055 885983116 770933090 908693084 163419354 363050086 740686890 822155141 715992503 722257403 64627050 954431887 489388625 760673177 210255234 870958202 517526664 723892684 86649080 459717538 861576006 897715677 960673392 975075056 814713382 961856293 856218270 916749688 224774401 724550105 217411706 998870490 352757942 863651414 114308890 675721612 294281134 516072794 957964040 963302648 354200344 700437526 914270627 960080344 624506966 703301348 25396082 333047984 484529434 783992026 722748150 783230220 629554811 941971401 292360237 699671424 533357798 594177245 677153953 771504808 296493656 893185896 590550932 712721034 599855796 883226833 508527088 839796651 433848002 748668224 870612670 953728392 287196107 580118201 940846711 952431102 610321537 950111883 683932837 878616233 766298811 899099987 629299334 779814120 124925783 294692356 91869294 802155719 958064128 990894066 270656755 681915264 814207000 949388373 969561665 977847459 143924479 644010720 449451703 455808710 992605480 999870390 468701252 499124704 224043684 656560239 95800997 254674459 380822241 418276244 183654374 549761232 809117706 836973960 967432807 975960823 112336409 134300019 102663844 984942850 548119647 624656319 16569225 978388647 269407143 819452721 634731229 703469499 756561814 875558229 235906872 891371414 434558542 708428293 779206497 871093823 890850917 913320003 212023113 538876621 722062120 961803271 46760846 392049983 416833153 799403030 301537760 425442854 862200658 903042452 915433836 934150944 973368911 999614008 961522118 988915849 822665110 879313886 58372444 124035467 499994681 933133035 555996564 811083167 948494625 984012119 250131661 979018758 327172157 941567461 612126059 614920911 943049310 944235201 427772140 477488313 36083380 429484218 141182015 655763355 88834982 996091297 262255199 996469279 526740711 914512729 670076264 853883444 309254692 456915702 728485096 824964884 300040499 690370645 979123023 987409089 516074809 806284178 721574434 778814225 949788163 991582327 364175692 613788820 245194827 561537685 922603114 952484932 937026733 952831236 805443821 956391061 567873970 989614228 440513979 567864622 308834263 449958389 353863776 492730659 554304849 796893769 158298725 793933735 280142549 870439183 834443750 877239074 237329972 829570502 224195440 701795725 517196596 611918689 208258840 670907085 32248212 287010397 205439223 663040721 828711276 950461998 328207338 555385517 378720835 623608273 474757465 754928269 46397679 859606733 909405544 964385725 491316934 890462445 650881561 826490583 689964637 797716579 909071197 971159502 899436634 963553551 800895056 934168767 119911198 943291744 561846984 762535343 104156189 341770116 314216336 837449145 538802028 949890816 719765474 759799098 323265287 695108107 967857647 982852423 90880094 196367199 849033913 964883523 155981516 563098485 990190421 999617182 215739495 321060555 290287951 443160212 65281805 722142718 765384176 968460667 928315043 983672444 800873750 833974788 714226797 757550303 773897972 934321795 572074089 875036415 466340309 806909330 701288832 955922540 540407921 993558524 978553210 988914915 807039470 852056062 735396206 956227035 171553339 898381675 796992887 987782126 113682465 120476452 829009518 923074133 433867163 921785599 924865885 949856787 425365582 900919742 396685180 943554843 908488113 950921188 959574912 985972504 845358329 979509040 595125600 894178118 942156713 956912435 603947302 962881119 649926524 914080911 242468012 457336418 881940723 967818167 521998920 992284727 453321081 688564481 834737486 839244243 646023456 745288615 125847977 810988153 31506566 376408778 750929405 849999386 234699883 960333960 836005185 887802243 611922467 714358000 951032282 969925369 372993888 544640365 108831972 539252453 638489791 918226223 813886638 930316265 107671932 692409982 606850300 844617164 210153806 751182246 636506570 731047583 446027016 933465489 296684930 320231793 534199314 840008672 415474988 435177561 377372371 877474445 138527447 982679026 756252205 837444279 839238905 947454846 345784384 360536196 286136530 405417845 898822799 964847236 84398043 399558462 774720956 892972941 605977239 723920157 237620476 300721737 977009182 982984656 328969465 796182980 965700754 968974536 162055081 988127200 464924916 580347935 574650312 872760426 119961508 703818159 986886828 995525794 333866952 856750561 396657251 987810794 13707684 249566336 337572654 760624859 956902223 977074803 604184431 729627817 542826196 552555525 331169747 685580801 830067238 917240051 557966175 848914721 85953494 497181460 53234820 198322290 650349144 832320591 507479228 771385959 179747263 943772273 806221511 870538183 249919494 963409368 541350308 688818773 173469033 314003755 429515617 756819242 191915257 471121665 762784848 814022577 831031002 855462320 426102847 878264039 153912074 227226184 131445872 602947649 124657550 742236317 979924458 992965366 665390236 793172180 984961939 993610376 20152369 973083879 979678275 983946995 189113205 448367353 850776124 931923330 294629032 512690408 620269957 643343244 591588408 779486315 577656525 610122380 345852593 955515543 988619571 990727410 446367320 587356526 265943848 732832832 839141361 908690804 850871060 991454241 825889517 931578409 616422964 749581493 500132564 825061102 333803362 720307534 201920490 264266179 213979785 623870507 456669344 762618719 446269802 674949300 246026370 975168715 208813606 927801416 112701017 490344681 838379206 904276684 545137628 673825760 104068814 538005939 173251531 491215358 621520404 984162082 802980597 988460674 129350339 671239204 255730618 860744412 552750484 671106309 595557306 658529135 993271580 995518441 571854616 989508120 647803642 754181283 656072700 795500167 885554100 934809099 28418535 733040996 782621100 978492348 418142800 606728771 142853899 290267576 10059627 465372731 394757528 604227558 975063643 978529236 215819109 374111723 657826789 815846728 29386694 88219869 180697472 364926566 797019791 990463365 240504385 727098456 815190589 830205074 220206727 799902836 869324841 944933794 376513193 390310940 189968194 806562208 777609140 884558990 978155525 985236639 233607649 427493264 209643629 964827339 51831834 444870542 205372432 665766087 993804950 995329859 713762974 956473489 727515565 996588661 414102353 867305705 331331875 622094729 351151256 662795382 156338944 364691277 37950907 668564428 566285789 974801832 304281336 923245809 38116568 255947640 388045412 971946031 686415783 858170608 742803106 893207717 845112941 881757628 335209170 598772944 320674329 878347288 424754596 989329576 661135416 990629524 306443614 811688943 782300491 962537514 388692451 935612115 195322851 362719454 955831455 961618246 282432865 538134420 285660872 425617714 958168230 959976701 542774107 683070365 653062404 732838052 968324530 977992668 65694517 763760105 646285196 929511000 269367064 780111403 913146972 944598720 671354830 976532010 360209790 560353168 720850552 729906726 849431297 888446040 232185324 933099921 783361008 852597173 954415869 984885383 55111952 394652185 798759496 919750233 710220103 762702726 688848959 820748558 291013504 504362975 286974995 329607040 82995546 158376116 995281178 997064065 580616991 689861760 504541151 698565499 591842664 801100270 492427910 600337438 83272245 629059797 540794362 887862351 60137926 844723751 706721968 941565509 194757005 256723578 800426405 918232603 536514991 899745062 982968058 995814772 89491619 546086970 842448630 924160133 725616479 843503132 213699693 958853580 581191717 908956454 687431464 963305599 543160570 929747149 593795404 608070808 476319812 605627568 422554647 602926597 600402151 726855171 741496199 881803888 107391531 771409359 533206822 670618892 456987940 708503122 854702469 929818655 168037945 803059768 482599290 628010434 354478940 409653368 137211309 560461681 402661441 944981259 705491631 974738810 351725427 521432874 10302915 506138970 310681331 556811354 181235443 637854463 44272542 608326556 203005872 259774142 683286498 743343711 770027593 919455796 569268075 866555916 802475261 851756750 726054843 798502427 969051013 972140149 104867499 515810049 700271122 740434821 704646743 922131931 589476065 871573600 515303039 766789231 160813781 259079064 842305318 864344120 796904315 948196784 657456453 826162163 140224860 341418947 291176668 950128496 342822571 560897033 568988346 861454706 957221825 963674927 545204794 717697899 130479052 921971911 718662275 818297373 936728372 944182245 871145570 910947288 353129646 687145842 25637997 205974510 179598245 193149074 206838152 509027979 671843581 974715526 486505405 683721042 952822318 973636804 304901684 904119043 57862278 649604510 835909998 973129119 418489576 626561535 890984746 930039576 3732282 945329791 262504642 530644202 837908072 943345740 486888255 820418068 762451319 801058463 271098937 352435086 938323816 966477158 593654340 974564282 912196466 953959769 36580331 495494350 74863106 803653024 15391631 668462716 300883087 817532367 69589082 421600879 520565499 770613058 232157898 854346636 344328402 564454856 465974977 994852354 636657533 982250257 731812835 894417697 899311102 910304692 800732918 826435188 892406665 913337411 877154175 967227531 234022277 763357907 318316965 664382667 134694326 754598072 917715330 924465361 76349239 83733018 365807492 984127270 649796005 882995752 816139504 933384528 898693054 961679362 247031969 992513129 974080484 979038170 171395449 269660051 406969759 765798529 406435613 518602888 730147416 736324380 504154736 564847916 825797977 848913045 889376066 907533469 980766440 990455000 520924685 802061696 877067378 955609924 848487121 887087343 156337126 410248058 446475959 925238738 79238 594337961 4864369 658990272 677786162 754416981 626898521 892536566 963769403 973821768 744396286 833613482 882295400 914931557 414873105 696019589 731419807 984266101 962143045 970950498 999356406 999850557 809795105 892096820 531604613 713909078 454693146 518529501 535142640 781365459 495822862 589495909 848842034 969878230 313348744 857419034 121829099 975513306 868062884 973299164 587256024 627865352 873910969 913251731 530374418 672836958 379219051 462528144 447680640 793613619 187792359 670231324 672297872 974234900 744886496 953688153 545225900 830889601 677315420 879475980 900123562 907910254 254031744 313317837 248089993 739662756 24494888 775751228 970792807 986775259 340728298 834389536 771152074 923210226 764690758 865646794 495530836 711802271 947706410 971572132 180219092 363876540 787147026 982604695 404340774 666854956 242131376 329688478 683806074 697955828 86985489 311344152 847978206 944974039 501275693 547081996 175718857 337971514 422568525 465553039 531892796 770996499 587427060 679752785 414431735 982137526 690204055 874712918 402179614 492465173 426209873 873816062 455142948 638891469 455014327 505098663 613119800 758855987 716917149 945157523 15414978 91455585 554122746 601684223 290409924 327811175 236342810 432882535 624778716 880072594 737200044 737502960 760699577 871881599 23027279 115065313 476720409 593109091 521076307 636521098 71579106 416068120 518843662 560636067 449579040 900561111 790494836 933047529 645642326 847064480 490461466 632391438 456955625 686108407 717251848 924556846 633430126 954865725 178068894 716220700 45820271 529350208 974554052 977418962 76345837 847781998 368047422 400535434 110271605 253595952 788398289 833354826 323570829 612832192 297163939 785896212 34934772 456700582 290170896 406845652 593520705 938123787 390346341 814528261 738726604 914726841 50299671 426060716 898087797 926527272 170494316 480603669 552232977 874117037 623495714 781242016 749653552 934639231 93556860 450440951 689592154 924090053 583324786 707774920 809766970 838417126 298245152 444955668 932727743 951116961 726829120 865292265 940031139 950011504 582969299 627541228 867166696 990688118 337805410 836667070 595601606 913232528 829944540 882716267 363741109 483568418 698283938 925203838 115585768 416262470 526654008 716312208 847523084 925644853 810822194 929187838 614042039 912264981 881611096 956735500 764752282 841569822 608997786 847742358 54094096 291829580 462979696 990451743 556616491 771522110 992892792 996561976 395289682 540078992 905051745 988682447 450975437 734935402 389700447 965983817 441307733 713897625 816764276 992433314 293441611 370189212 629990722 816262384 548082482 926570539 401117757 882302386 127213427 452147854 466529326 622653323 141057854 545535922 886872787 913428510 584853320 839673108 204302062 636468665 680795885 993033059 328895488 990843093 596612159 730334253 470768010 557629437 73917768 236688963 520149905 736797366 788276153 986325411 394217549 746917402 729248176 995087560 805226279 889073237 159232970 864644953 32441004 691803526 7955001 504811843 881227431 891096752 702277397 717307269 601010312 966686641 7467334 81764549 7511287 713215618 8402170 27849697 27319224 839379911 335429155 942741201 183623267 486222434 703083808 773134615 455006679 648688568 779936584 874997362 242377240 707107518 82938005 641830227 554450622 999969837 71653747 960790679 491816283 740455404 336770278 975141604 978453936 995006488 435531571 678973224 139248611 627748819 778964809 918057720 13640018 942390614 841949233 859481254 666551571 979395302 92596160 809889036 920142390 943419284 846407497 996540097 658903072 839586622 926923608 937599717 395212829 830623373 828830606 970940773 753068042 829934274 679748667 875504651 575639339 998785498 802487252 981546337 207084525 870626559 20239762 315278443 286078701 638675195 306015784 840161599 574672135 650527454 143218351 330292743 422394996 527501820 266229595 836171555 980635437 992405961 265989792 997261897 794987710 819762936 626943125 922885484 177564616 612766872 88797629 751628553 89526583 437907644 708692131 784164370 129244531 364827150 892483416 899090084 666425521 957545242 133981242 330842732 602738106 950916253 676316218 810216546 130358836 362278210 957070467 995151904 963256667 974351380 258263627 844248175 782631921 830536677 448026091 830304493 743169584 773369213 17203128 860317557 194874286 360110127 882252548 933669564 437835736 713651143 290092210 923243110 663782079 709120747 219428313 666430771 817918928 833212847 81386654 112617268 249738791 834357403 751055533 963598235 485955220 608035872 366804221 672756426 262538872 981653553 187745752 703525932 635898010 983524231 922366269 987114004 864896745 936279995 710871320 715299933 88228590 887670788 741333127 881837440 27699560 187370371 732494682 938093111 510120059 669610857 993109451 997198602 695420586 982972288 145201959 875276613 157832278 410693440 461289810 991314561 593398067 747023862 123611575 346984499 343491109 417221467 86454219 572868100 26896291 468769144 763032192 831522946 850077174 858109254 335983007 548782806 297193597 722912005 44679908 253576065 163020570 717175430 839264664 925517622 536808741 843174571 6978207 549386284 76477483 321522334 454050519 607856524 892057942 950418782 610111155 967967017 636746121 690424535 144939735 670228691 768732459 811139574 289471786 904598956 575950690 735387695 411046006 516093441 666989212 793335298 409129184 630942921 141205678 943695863 425705088 455536940 106486693 768625177 227940862 499772221 654659615 742822415 655330460 726133883 479922278 655272979 338448523 615924112 385483759 787346304 436726703 569560457 702032129 714381080 346023555 907965183 29787023 965849266 367643965 472814192 512704293 660476601 611587353 692758889 330413956 771817401 975403987 996019094 348041766 939794916 639256762 771201992 204263412 604914050 655547073 864984654 575058318 600814839 494740560 728098353 108438668 965611068 581402096 813499834 557175816 970547239 647673797 988020715 49577422 448203954 937398434 998482436 252346955 624182909 120409397 668057473 766718982 925501692 883596624 979279595 533959547 734006052 435654132 594010831 993234562 997493272 345821786 977865221 486868003 625402862 955834753 973913985 445425889 722005379 102500841 104793069 851366112 978035070 510452856 954672253 549279074 587033255 740715439 937961420 632921192 805959906 558659353 870564641 144380883 722809271 47136490 962592341 843211248 874549478 813673932 978528919 165368968 890458584 652729375 820130634 488878146 905510157 18923897 692690387 312509515 966947023 258114622 275106949 218390509 858190495 897342190 982140275 742759153 845483280 119969346 856872587 421961045 989613470 920519646 941368234 964409033 996708876 574824991 784256841 754952926 825191089 702335996 807500067 890267187 949359044 151995148 346521439 197754242 902583439 567458283 609317905 51841426 466255139 376741389 798887283 935675502 991868044 216595163 457003819 305180673 486614609 980681346 995485702 600786795 972862717 310512782 597677294 487035444 689224510 260580655 340993710 134624677 591600270 159823549 899713336 778565487 819626451 929578175 982785058 963348955 964827493 867109088 938197980 404618474 543070740 409057583 845248140 727093031 831570748 625027087 711707815 796652304 990846225 711143557 849422202 184045914 315097170 820690605 887425254 737000679 842321841 993194645 997003539 288788763 605723240 251873838 401511995 543232606 906316812 569325 563056920 155960952 161236781 340884335 766778323 695374270 899869047 207612625 267712842 489023488 749525243 784539891 812938730 622292604 912962865 406944278 426057226 667837518 732802562 335929837 979392096 226787735 662120195 554789781 592544701 216142214 693375050 379327856 978960706 419962436 656996656 832342086 858598836 671200808 974217870 283544267 455300468 274466771 811237636 879148861 902383844 809665785 896296197 542184540 858356525 447999909 744682388 303592817 793304755 937428021 987376820 776571686 959970160 501750849 887811028 522151623 686193049 193304790 782241441 487741825 715496458 181007695 881024783 743162484 951932071 315389644 731942474 486950645 640142965 210702100 769979315 800563330 964876392 383161349 537944519 15631032 419379440 361499175 887323430 539835404 934444765 581964149 843939726 123491105 777640470 243472362 483935201 640041620 918026307 272548969 772318707 974481676 998964561 409720652 641422221 297236975 426682888 579796561 707765824 82445515 971858117 435992267 920423140 936817977 992031629 201115691 403536128 47452633 510318604 18613324 30573804 343675007 517111552 87684953 246064997 214807101 879594594 400977123 751073193 228465069 363555325 771914680 871304637 896737040 973901410 167742547 810306266 465815909 888874284 643416547 772265305 947770382 969882181 19375765 827929014 752692423 832372137 470560584 856775417 304032425 523093963 385468645 995838966 290254130 506760547 530476335 934558312 373475597 882579004 45339640 804619822 83503587 211130037 185164544 714438853 407623871 794257655 506375664 656575979 743809215 898114893 488137249 724202674 578112886 810841500 710425905 819263407 394114529 613533439 700706157 945536326 924324562 989574674 931187258 936121018 960356420 997406680 144290179 664436864 944387976 997730367 400130611 841137646 734979986 778045283 235967203 729162499 866168301 968704048 601657758 963772308 406803023 492590871 63622067 755966445 832901837 846090542 86470898 623564679 720170446 928416276 757517827 940105106 92758108 825907246 554125446 856458611 644983622 646303176 905213820 992317500 92198798 781032723 682185872 985977418 777895716 980875962 201970357 572457633 668820301 840927710 659582141 663234077 1754250 611370725 998237617 999283180 994368804 996448769 987433188 993127203 841929313 876969228 836319281 996757741 496063119 667553930 335426563 476841142 459141731 460590466 96914958 919555950 389543775 420799490 714474284 887899562 211000994 601086810 718634517 954263113 14759767 715440178 729445610 741617137 783225221 954793191 795433913 895644775 152839576 552462467 207630935 293591432 206149025 268913519 238928513 703339562 542355205 852007743 224679958 383448639 848566959 964265865 220878835 328881144 34915908 524965502 421013178 456689863 225953876 742755640 423742399 603543051 375068941 907483862 991824580 999461019 394125522 752777658 317656128 811844163 987241876 993322197 908742599 927580320 386297894 501226733 330923688 942242321 34005809 251759142 202839172 317421507 634120247 803921710 142861022 413548934 330557726 976462717 656401592 717266042 827126221 939735586 739211358 955299137 797826183 873748514 484359664 490448212 396993268 499559741 876980832 907901646 883445241 961140400 791679413 867962971 628823945 742935970 263577818 427771835 75051549 368854878 452516374 563474172 57116767 368511410 387694581 459028838 685674393 887548782 909990564 966647308 142733259 925638907 591407166 704741161 355094171 807456726 696452087 931866976 769534734 939052975 962260795 988530783 234333391 859813678 103525861 483577810 483064727 990933482 202320334 769586712 542299849 806307191 355445956 459172880 519866507 760204323 280432093 600049791 451597860 521179339 709701887 955084244 812897671 895244888 282139538 798696941 208262275 772881571 293167226 485391183 257722976 665817527 525727172 731671573 524570758 824611340 677546797 697942414 51618180 708919144 891961289 978075658 413921555 834464338 4639555 775631640 758121083 802200938 667585901 674571610 20720753 666202683 211412969 311538638 371119991 485573723 527751034 940282850 555251252 979918457 110180217 207113059 347297420 372280682 898739608 963160443 203476526 382893255 267256065 500854287 599818301 948471219 617630581 663678150 618001106 638170660 191102930 528289338 360677854 465333987 966720282 973516332 647849030 941633958 129698654 405352613 857847618 898607449 866026366 985432840 230453953 973546923 723421924 777065191 951940024 981720088 170247670 866030746 929817173 981928716 903327449 938736520 493009730 877243230 319662488 755786436 961477651 974949929 844878801 931202925 952912373 964019404 666540404 967930977 824742641 830642190 775435459 981907969 593228716 755749687 732696381 909985048 241939320 947409183 941315278 991253135 5041011 66281245 570859836 668783469 172458350 172890803 888835046 924221267 359348623 790777815 391487778 973957724 486379832 738681014 796288863 814747845 332492754 439778490 168274615 181099578 716927171 958011227 608482503 709125195 938401837 985207761 465202927 702056993 271669232 437945385 740387623 789662031 880993016 977808003 846368938 906225808 236254510 828568943 191501784 528914621 133420427 499541570 278260202 453705056 78790532 505981718 767706366 995209548 811720175 857454031 160486211 965608800 140582481 419908516 762305103 995012030 952586555 959286732 292818759 930205740 972814236 981242055 182505271 682864295 709375580 985356260 852092568 970642570 536974003 716199363 322289621 580421642 543058265 773216095 87499069 188402224 628956447 868230175 615846753 963224205 780583513 871591055 395070881 769370036 964035722 964512963 46013618 587746332 100256943 427284046 870011963 937730082 971270107 989689670 999117489 999855965 909249758 953058413 62621 381027930 758637512 807089537 529383673 737885752 348276449 432412509 87974617 254074538 848633236 930479347 558450365 916518943 845867546 928717098 693112964 721270513 232824877 870085677 17579193 408480900 288795007 776329883 773813974 916940301 47049736 411018418 544110185 961857013 489605025 603396005 533194855 890652744 867898727 910006605 871650472 923254216 748353930 866293938 841664808 941038334 151590155 551796179 855450889 860274811 483972493 909076260 659771707 839998433 525342188 659778071 276604108 818402149 827946519 858383139 27370826 95361512 252442585 467990252 792868713 937431504 928383560 943804162 834805522 878232686 619452500 663861388 779939556 843144762 525196453 694146941 139833292 915702322 966275938 976753469 869021990 904300748 921933464 992384236 945219391 947815341 888212962 916878465 179387878 671792953 563293750 967784360 890430796 917356218 295948730 685709406 590349575 857368967 754810671 817314654 663997394 767612801 69205196 386898271 945389250 950595600 254728198 616049141 445982937 653770761 666946256 905430671 584055739 847267836 763600320 782543284 765935981 974436085 905737035 964415422 111394304 372091706 771955308 949362631 686736269 796781037 775502394 844366590 823638086 876142850 58017471 695322169 297395546 884586818 709604167 715924507 441670325 665405849 875423350 915560287 50286501 580020209 121541806 389286216 535133362 757116163 233830845 519610216 965823636 993086215 203049970 213522804 287927007 954498442 749563293 879481403 27464289 244699448 367508352 421372604 575411936 795705162 409963259 729483516 655278952 658208496 330639225 580509809 892276244 991286151 847412944 937399157 518875782 520098685 754624106 792624724 815383670 861230248 994876461 997890521 209735185 492219018 961600322 988365830 697609724 963086384 750551914 987535303 332380075 999729608 756054346 893676492 916798368 965036784 451018678 533196454 109067060 929666184 26159256 400712208 845548946 954825084 468594632 688188315 161302213 187288625 170430869 638102178 521927879 617002681 761945036 775823011 3380705 580634896 272442741 295572617 298630443 484925566 535507465 701689364 349907046 528230249 487663085 513461242 80838022 571881906 735695184 757313296 148269423 194017414 216683567 745117707 476623181 718858373 174939433 477796747 200421177 865052984 181692508 207054701 824140823 946233943 492557004 541557001 595992662 993738103 311037094 323988241 385760663 857098059 884274452 994151208 407383150 518360672 381266631 792269318 265383917 344875694 833041604 848583500 229145860 592959014 136922777 568407282 599191332 843261368 544781509 913803288 870188960 928550080 769502295 991278309 650536993 747583473 691214833 931560794 464424572 914154177 533551730 790521721 790138457 972989031 67999744 310304629 798111217 970535569 86646990 839475427 727835722 820151778 858199368 940950089 632230370 865134941 868002026 985143469 529908788 951290839 602257499 948910590 887168107 931098252 441799142 780619104 94423145 111097704 877106463 942375989 549267533 853042120 256897237 473889802 775868912 848226599 606777979 923266955 182132108 807897285 805487227 860766278 721554036 990773082 594141482 982622179 269489069 492850908 553944372 978054064 44468201 750225225 805425417 879978310 187661564 783380686 438291476 801299956 189351538 796816000 749307913 897505478 612945974 620133460 965160555 994279257 689456089 921290823 871572816 904815194 450159112 764781610 618299495 671011135 554410224 684516683 864717805 896610428 100989567 372777924 42346417 396269873 435932250 785175675 380752856 980868995 174612567 849247182 940722485 967217275 911564634 913045103 109294236 514087591 446409903 544323985 560335350 854975404 403653790 655239875 209330408 276465526 508834421 756308232 996882049 999780098 101618966 292730510 98749339 533105480 472743258 832704079 392584293 770358801 618656155 624858238 256602000 885004548 277714021 571688123 387797916 768373027 777165882 994802221 640135462 897487563 273836575 489206772 15333145 82794831 556547718 846841440 157447398 993924886 995862361 996909913 627762081 905346918 358286808 628535974 550542337 617531014 446266611 816601238 37085433 287898777 666732876 743888547 895325894 915543583 102402196 803612389 220003664 820687987 754701208 871969765 580112939 777609334 935870217 947821574 57467630 287427996 40097061 551174383 541984021 999684211 249938321 505576223 653219516 898019259 851441798 932770629 116866197 528597292 709321872 716064447 996010219 997404160 353815956 477869751 120867302 895915540 540602969 647111735 428606723 484183179 319442155 573342587 201594404 929509976 853944801 951976677 22736780 146629793 466367975 861632793 388415673 980621152 777304997 907506694 46007981 771232756 235787643 795633961 530900450 651566451 607648477 921301419 608714752 664811052 386708657 591393410 151203272 695899493 356167109 891751397 419969388 502852066 302175656 953836310 848662921 863733893 114564175 451865463 676657865 969826751 155446845 249467435 364264198 879215321 228442469 272903807 961215364 998799118 17751484 342725051 284492414 659872737 91275880 170172964 602899398 682341052 260990688 653133942 44652534 196742800 983539868 999872375 351367750 752309478 295275245 469207532 958088433 969300475 244755934 547362717 100377056 321256970 851484667 955627851 404222528 913248140 803868857 846326277 362694565 619349295 536169035 761839861 689599218 728668710 971476607 981925247 679784421 912997261 169992067 776189990 826739559 975041466 988032353 988265892 745446575 792807033 294814817 894210635 987922501 998421099 30818149 74989921 956030716 971090522 918026725 992065860 681693894 767262038 320077556 934839605 612724794 672518101 682905840 773329214 914312108 978657250 22205589 137178976 890082003 970488571 240178548 518381640 536442464 836560788 833329322 946467447 742435501 798318572 830822290 920803081 150640865 210078451 394860362 919398327 424965966 939340261 631480994 904273671 148076141 508617235 76817382 964707395 248121138 658720871 36493035 941968843 274210449 997115474 330110909 909330210 55035165 433963248 412756960 687572707 271278262 698648180 400747586 524072291 698855664 803895466 100821197 967007079 448499993 812631207 827391540 990863718 588608955 994793219 529445350 828453552 408577181 459084209 805736513 960988277 923888554 997318769 69315044 704666274 673287198 942057935 379089468 475198493 714198527 900573709 311328037 387271642 927619935 958960038 897060720 930694273 319053636 793933386 196422026 698154615 470999856 679358827 33210013 749061223 627616476 910690625 194783421 799825459 904767787 990881273 320082439 449374255 967851873 983518411 790299206 866142109 376399630 645662071 864098951 935664707 505098039 777078449 739795773 975419652 980882237 998611068 587384267 872254292 180720589 312735939 627484467 844526859 653220097 823750633 599291668 860412673 563545629 847095882 693878659 698387237 430280610 625752336 983778050 997467230 832341319 848295710 755664109 925798544 204310700 719768443 961241636 963373362 200580140 394380173 208843830 836570605 917138662 954835275 579191446 980233347 114179437 805636632 514367181 674020516 978935531 981428240 377693911 703395758 857338103 875693617 643000791 747234009 324181412 919525530 270003770 567630336 83561824 426527574 18865442 306298846 684455862 719472208 658729252 690254079 250246059 885404437 869589335 991076105 602310901 708666016 215535094 781533141 329753676 961598212 589315760 840546177 662332931 947744947 202533921 842187324 288968664 502950797 318822140 442340515 988760652 998830292 859512221 955324277 441406351 764245044 43412464 278610162 936762518 970890060 351806475 522508781 393393339 867768252 214619781 347531469 505571398 543671510 75084851 960156946 339269580 435101855 349094819 529266999 992076031 999615601 373455643 616230278 170700596 507331040 612411035 885905017 718135309 932079873 391301296 544484805 962758684 978648780 381754044 842641986 423278505 637314039 990025520 994226948 685071570 768184410 625152862 689311804 175961032 238799654 890209489 933257981 695712075 708716702 294621765 536220373 454774528 472740725 204405145 225389511 842389045 935004282 797153604 881305277 194211540 628055360 666242176 776642360 320717171 325239191 285543527 301498930 407357171 841869398 10369161 893538858 659494644 705446505 648145164 992851329 404950437 489096050 285270478 674279199 272529087 507344332 65983121 540478585 253921527 842528728 687811313 812368554 309447726 385230219 183097585 884679159 629981359 944324034 880018034 920214011 417897523 733576544 937626257 969403356 472064343 733074113 34251760 325364446 351844959 366661442 590654379 643985991 583343071 866856989 291495874 886238885 316747526 476061645 733845263 910888786 497737449 836893701 358355798 584234142 966922666 994431773 953807379 995862547 474249478 785302607 458459276 475229451 242664583 790845225 1195864 844281727 57160058 463599557 654875080 774940245 454369116 572792287 452918783 461563729 161229095 769381254 701984852 965565389 456078683 562782520 443274300 757511689 487969395 683376542 396730464 784830092 131825908 484075551 288908432 767660719 163747144 354824762 40592816 482532276 888966278 956011082 520166793 543088511 787195233 997714365 877976584 946811909 465122269 515863776 60273085 153523111 758512135 932091736 483802415 572002709 160060481 989187598 914207687 959944202 815521447 942042881 34721025 231258794 502909970 546908633 258021282 977555078 381828800 522975592 406026707 750872245 412283785 552748034 712596418 773704137 727400124 996238694 3419848 576942950 553370614 840381368 875310562 943393562 871808151 881327694 665982175 689642887 18586621 391977616 83177863 928620623 587141848 829225298 26524316 885781689 254699439 742427716 860116780 979909857 655309150 834700673 204663467 242907660 824091950 846288447 82105846 628450632 755912237 908490378 222770294 836756013 239757185 377515308 983922622 992920338 160912071 745746167 123706250 764905851 563993292 737696304 566414313 816456167 674094132 980732123 530249371 921607043 869822327 935351178 771575564 951801861 680067284 837734842 282720251 306706769 713888154 932652773 903744569 964819431 521048862 863964075 855187410 970913373 275523048 459123145 407429836 530448672 252923519 551216176 83981353 84653291 674294332 799062220 495919703 712571012 791208682 881795094 225247528 937988653 217295845 795998063 236410184 887488346 624129206 667198562 233245272 679596095 685852645 964860909 652051356 652566605 114196708 868478974 654282650 973806129 416220375 753066448 653204845 884248468 747675149 821105291 435674590 591323076 384130277 440113957 834742069 984160323 900491596 944077150 551526813 749276240 386851372 499092678 399776793 973427055 916279367 992009943 475494485 876301539 924595979 984608061 216391976 440012785 321945266 863287049 15258605 704342726 433346706 803750550 938977461 981992098 217434139 893240645 107428021 109166239 965697778 967732047 73904210 155579869 848323068 867142011 347248114 769935539 977070808 989095613 711111055 892928586 235584595 272064957 13473189 725263726 324719999 868944847 681428511 804444354 65524309 330038851 175527909 230324884 840578168 999028169 701335403 853682679 897619831 976737992 618375545 791715896 871623131 889083105 932839684 965299859 926059246 991162639 268515564 345459951 480419352 705026602 5846105 731911233 654027890 750181526 960721794 986746503 151651395 358312890 385622733 666877561 802722060 957021187 680013609 909753318 934014337 966940184 332743591 402764461 965357112 972608633 256025431 528701319 289079377 666123665 378177666 986553790 278744160 505764624 386222066 728481555 133869869 688084878 347371814 348182178 744979282 874128058 814113203 929279807 510301060 830632136 561890725 903776444 177781086 357692541 187082078 802534730 952275468 976621857 596739744 931739850 416689187 936946662 166150284 900219862 587140496 735967721 394229662 768896941 723690136 827045083 516390599 714072976 90135116 497470221 575405954 725232376 642041795 675626465 856512551 892704158 223543426 752117656 98239162 582673508 770016872 842610864 828717310 877528533 232297813 933440905 76647162 982021133 668291313 787256189 557873832 671600291 6318626 990008963 747892573 896986083 321526341 704771045 632504489 648227758 443460563 761818663 319406517 569800455 444065276 932594342 603231826 912155903 887799032 926910287 869581569 954930083 572412701 964939700 850820446 921193230 846856166 904340868 535515873 921821567 574829812 790286335 15439026 287583624 485295476 744985206 357436195 609788789 352619410 586166996 270687692 937290709 832403619 958479819 986175370 991990316 156014216 808772585 481406583 724209175 382473199 752240959 749877455 914317070 340267644 501908472 411273255 637767882 840006202 893457983 512362501 586843915 972012693 998487132 211303344 350734632 203787130 891146705 346316732 549760520 114546024 972082123 533498499 783970578 194872731 731278344 834158434 984555938 209360075 902840839 79208268 189309129 602805350 985007001 26273336 714510991 762924003 939326008 621546449 850248504 624839480 728531736 815036276 974609755 656582347 756275655 398252743 751608129 569796570 790947612 325824837 814392429 215778366 488023964 70328961 990871539 458297010 508247534 575946027 900718685 69811420 498513160 730464404 913878495 363698815 813785006 533287925 920444662 180010055 413282131 184960732 417879634 732004683 803715125 881313238 935428218 13480718 960557461 485127567 589702494 351115739 367175406 904278847 968437207 323630389 949504441 884176141 902260199 196630861 560893740 544945326 789415413 565531415 962547943 492805743 727814849 521014983 570758972 894972735 957756829 492218201 506907386 886788389 970027680 663107884 789755970 181429209 371867221 94569808 475590432 142453922 569680224 733417686 868432936 700983483 740337948 416682927 620321089 130217705 130404651 446560422 586140646 830379820 868859492 713805114 897042389 63756755 743037197 337045778 682054091 242040329 289785193 404822269 906241137 330372742 584917658 440394649 897198746 828817851 834723486 97965239 924872651 857572496 913468462 801911520 851399675 928162873 995658579 730609471 939232289 959418826 964281303 445294809 919116521 840425061 913669435 809875520 886666772 872307020 965990887 200528498 266190728 586753303 747240898 292852321 617087417 747714093 841750433 208604443 336380985 835774887 974155593 943543338 978346471 971164907 972182477 901257989 932751426 211512307 980609867 972662462 997449315 186847114 676095051 543797380 756100222 923281158 989586600 646870179 808631813 774493748 946144398 53647847 168624829 634617940 967924471 162486307 478810382 407393946 880381604 985171526 987707812 43100814 775745219 340569141 618080651 279245523 937537715 725639151 952410881 492923841 933161898 823702452 959667028 47713273 242447922 763436242 978184478 524501882 806880909 259465840 796023395 316743367 378266281 130140634 382939659 843114828 944339050 460866778 498471320 910342711 976258335 743999186 766893427 867141987 966791605 251327269 552816939 830054436 927004616 814601483 975307168 841911667 951632467 143078047 591079639 442833919 755414413 178301859 322002086 445346908 506264925 568968350 941614442 13909953 384711544 239505587 768354932 155305995 961153229 290682464 516430183 154919234 413340131 228282314 543881255 987280759 991193894 442348910 494976819 653060462 975647814 220123353 993247909 467555919 672683832 669108331 864012963 703464866 861307543 522087270 743686583 587865285 620054734 331128700 696116886 713181770 885527415 165770589 968427259 872767534 997392510 34800312 885090564 667822106 921291213 844010881 901280345 412581809 608922292 460469281 839016065 814022460 977351804 993313011 999974924 414152317 818505345 186650300 409503954 143071789 848805819 855390536 915074534 350943136 714028182 88406245 440758732 479444477 549453275 896379002 965479477 359322614 964545671 191781536 819829397 563919299 746738652 294348640 860932216 29078819 833488615 352775947 706583916 543092739 792357154 614799263 909732137 136320777 587565730 44536679 700187940 527134069 849516904 622845889 781830788 31614809 373972814 864772510 994512685 205867348 430892682 577071473 731317341 836140895 901335286 71656162 599643032 837171744 854282934 303053816 539387708 906067221 994932871 578882010 764623176 590179505 932277255 793671828 961128119 554524845 779920542 267535900 984281550 44425102 974516884 222648053 420325472 99913956 827066783 173700786 519113417 421647220 601162192 35618008 106075597 63390329 336776038 878917044 882535410 984187892 999053365 37051412 543568099 110286878 798723448 270555069 527964990 709240902 784562855 944130465 961069604 345631967 586571688 369868183 893279910 703940115 965047036 834044590 965705444 183921584 869380013 856596040 981015761 840167879 870226673 306886953 697432837 179514621 895396381 501569974 850974991 249522892 853613505 422613024 735877948 650030600 830009119 508110308 954278474 988644628 990366332 86483436 488020885 115348853 288338372 581441426 880383623 304009675 323009042 417931935 759466256 814108214 903606129 386270717 897261756 45113157 705616355 930222527 986863352 34848278 520230275 898137549 987124290 750225720 925123958 199571621 569525031 277466938 281922418 449123932 775655219 899301993 965949574 282604049 571366811 833551352 902380024 194815706 445974845 830424720 903832541 795841237 852451181 58940507 780511681 823522780 961260991 414071586 751142334 775434211 923600808 793096473 977822411 625657963 930073134 614693109 752548445 112057158 217931550 142721437 773679136 367763817 714761011 594028131 771408472 988146878 999211923 966094768 989955326 504009822 508161894 934800404 946514353 452861193 761427999 384903534 436084069 964471945 984305143 355180003 357734729 518949511 919922237 379096728 882618526 190891849 755527368 488291303 976308725 975000248 975566636 801620831 899992452 857044084 921305662 389779652 517275881 382154703 526779916 703242048 736234249 765254960 806072901 229853815 471269325 140178464 368061264 355850859 391856034 403673531 981644817 948056947 990753303 389667336 706324524 217643969 534645258 617755151 997578199 260164320 804283016 76791289 168931889 900770095 950345117 139714761 527274362 63984481 93670979 201858418 672058729 192668510 832703430 412894310 957356336 752012806 902535665 800055870 808898257 796182110 829026007 86230933 118009119 716873254 988048012 926831642 959158629 593791579 739597489 130204781 999498912 15149459 441601856 535672932 609241716 547270213 873307065 652467757 916864040 350367056 605347263 777040118 909991910 249217001 765370026 88808732 146787566 898198536 965311987 399145273 609513309 409488317 525168913 864454285 929117562 473598284 923837360 866606853 980201108 728556742 899416524 310999663 638163826 49765300 662114131 479178012 704670843 806753479 916106892 461553950 877194912 265215152 863573617 51141982 799576558 77883305 963767825 311494909 666322063 725975890 952270729 185617741 315073724 813605956 849082933 934847559 961226336 61559654 109441983 323757821 720272743 703729898 873515613 352422315 457792571 894671244 946602307 766204252 790735553 156287125 755421122 574694929 875138626 456802283 562695983 469548627 683304612 677811945 972681654 982635982 986849560 669145766 890583301 335309222 931036635 551067243 716476009 357659540 654566662 359980075 420307775 479781400 498462053 959446046 982706872 449814850 587435456 942623247 982664665 287585569 313965825 203720106 598976822 52381054 441155113 579736197 951775607 738699763 937364235 972416598 992245190 517802366 688733262 681505597 711231918 110906168 637283411 85642168 307012277 794448898 925917987 435237359 598017741 123833563 842219667 649707259 769311418 362800074 454951293 990003564 991278618 868595198 963934069 218696280 912885220 623705574 858458284 704169084 730977466 536404764 986651896 299757188 784187387 951416348 963215529 940533351 958131350 675469661 956314351 534647323 563582976 787605283 800447439 497075615 661351362 331376257 812898858 726773311 887943707 300805112 412672314 539390994 897030947 433958295 456786059 93836900 997141514 84185811 776429160 893663612 983918355 798762478 803836061 296542683 790297278 457531195 753114788 407573016 859015353 237024807 853451108 973393214 994523532 817144480 845533466 582811202 979633407 37319335 918716444 746592218 762353558 626800265 631119322 710175301 781449928 341779081 911850003 364718950 764926547 363061503 508318516 521861666 969685198 289187705 915618872 961595072 972654606 976005732 989615708 155048523 765618110 436332215 911268115 927173908 942518893 307052666 653853060 879401141 889408170 938625483 993034086 698942411 864252218 877699028 927978162 786461563 861477781 549530406 625609531 912063738 956821435 297453147 310066939 915942776 982637224 728660950 845919253 541578678 798007986 604423345 902133974 902129809 984826294 439786177 721379483 618156809 723604282 637167071 690453314 866882403 877989252 470328197 998936848 463849571 685469423 525588425 942134229 937560047 956291996 127717500 704454865 902572549 986365020 500995400 911728274 149928519 279816507 894930700 926319831 774746178 850627802 963160990 979228460 603955024 876507768 106086378 931028094 879105280 914556737 293258254 664239282 322671829 917927988 907005253 908462902 911677130 972475573 569482524 884136623 945783092 954881073 601773969 675811601 99808814 573849629 997904287 999755438 905595379 926026885 226299824 900982543 961939622 997289878 761029379 913696136 73204442 225341329 32420787 876377779 512892240 806818839 503115463 744514193 294156279 864573170 305930286 582307771 246937773 478360540 646223439 807037689 777898615 829019144 8145076 965095324 460053969 465142565 692671567 739424063 912549779 980032860 947624992 948533415 214153600 224241777 789231438 839814482 387766694 846315929 394671157 869716144 629145507 755354096 255450068 621394371 777184112 909997320 671958016 672039924 651114710 752031260 54717887 158902386 991600458 998658250 638265774 819854952 8452668 274859957 454480107 745878894 937020692 986022353 691994041 948572583 646809232 877990925 187534066 246451611 930100103 963718212 290208377 692697260 383219547 925053093 227386194 725069918 10850395 627685666 463419760 720901798 829627368 961844861 242611812 622461303 960167069 999649505 609525473 625105037 189547155 208097749 269365276 425860466 116567850 117657086 745061737 982413786 737617446 875405919 532520635 642405856 377831795 539383095 995424322 997471131 345398548 867898774 991496779 997844885 529061473 927863070 798068861 865721740 288745527 394516888 401774429 490993545 259962137 517764122 278530269 405631097 969288481 972536193 355579236 411877992 692818057 831427741 379896510 433327935 630450741 820514712 701000769 776760616 339800292 614428771 456591788 726164984 352535042 805799588 570655834 831497109 870171078 974708419 747142448 904864311 330058421 626692406 387061240 889694324 989134022 996162153 278833471 599987567 877587280 918054410 152760326 931978024 791471222 871987041 609199629 938342864 567841111 721944702 805555793 964704391 115873315 854979372 436378138 584050979 814029273 848812376 644579375 743495276 361494026 621901927 615300465 760540967 350686016 385641481 284140126 552792490 887643134 994697873 540774950 573496095 390438672 746024990 758824321 940752439 100444456 964022191 498233433 543047791 266662710 474073267 98898485 412532678 122092021 997530825 182882922 582188184 975326997 975821977 137851793 203783763 231590395 702435425 305219515 711352593 515825043 795086665 351842598 978652164 926171698 958396948 990725500 999298924 693621426 992434336 244478092 400368549 14683814 955120998 653986066 655151426 309532764 381645906 560076595 878529008 353247240 737682452 77575957 872804601 450243140 864704503 881077027 941050401 496997001 537324784 749073050 909437242 52898755 995502026 915825617 993294475 451457550 950242078 167050700 397047244 954891066 981834483 54173006 628971448 751118543 912623843 11196522 500819348 501349947 889898263 647382065 966609538 932680172 964314396 552623752 647424854 22335985 345610299 721602898 938882744 842566423 947190694 206544663 695393616 429166540 797170908 465046083 929065587 879312339 940246103 477203707 793737464 229380422 438155925 119650109 313176703 863710757 874122077 337904558 871408400 597969804 633751523 111091510 204338814 194898614 761080018 560907712 823436675 198857680 732447432 754966802 817764822 632528092 809945979 392594250 591782996 476243032 743261074 612959827 818333466 482409875 731939576 694774798 742300942 163510360 996297752 246941975 972216346 32649106 617574815 482364701 556783367 847075315 992858151 103034505 193900172 407319389 936226297 534292829 655503138 212391063 606537247 337137289 660222929 385373118 824242658 591528937 898052734 969859165 973745320 355584014 990650084 978599909 983330396 1407056 523523963 146265455 389071434 843347448 851981453 731309789 746225874 692044986 719189648 98080514 529765109 63324497 389731990 993721012 999923221 844758182 900575805 34833731 509556875 265213025 346395354 46937723 345648733 110438708 645912500 41373573 72090324 317200257 746014298 98431557 278419484 985139272 999134781 890178799 920351425 531884745 621563392 582081595 792715423 982243248 995044926 844469479 915627399 688067632 958710784 200740444 973135454 263604075 948339853 65807452 349295688 968599302 984772546 488323951 935068626 653033309 946121212 878842656 881271241 487862790 663585540 266964738 377699075 118196753 883190160 122078005 788354732 205434219 503728083 803441661 947349539 334031885 650753886 841227791 881822775 515664106 840326280 536995026 571211557 475293602 529156405 851601384 977864293 253873039 610648440 256608747 367317996 192070531 289895707 674965606 796469025 888406501 954590667 588365840 755787042 854935099 935248573 523539706 622615349 801668941 942255248 312842968 418662495 510808093 739332902 829160905 895681518 850568856 870923448 824937753 962158028 267276436 697533873 16031305 804005544 264254134 594766634 720428928 913937278 591270964 668201885 8648888 549626281 346548991 728545349 669928983 775050804 475667183 836113536 922702549 990798571 714600209 861111195 80753723 266574282 420109764 799745079 783992319 992685703 287760350 987120945 792784230 799372137 28769556 126500162 158604 531236768 571338516 576898923 690004106 799189912 559728573 690754143 816173494 854971788 529144930 990351698 549675424 948244074 675147532 745382243 923434416 970630650 69454182 212036440 81220479 603642603 518504881 723347474 712037564 780045779 411535840 420825525 158337080 414652597 410794781 715770592 31738072 357643415 947485477 997166350 283079979 624225100 190754820 850924081 242593624 555647407 944097312 975949951 891089519 896695846 519668576 553076931 811205750 818476276 301919710 738470138 202349945 567779037 447066969 499067001 107191061 612925745 967587271 994412228 549120608 842525983 919010424 952132969 936637905 971154368 210861719 784617892 976516701 984657117 338978854 527576600 991928983 994030901 905843789 911183726 475519095 839939531 553789020 862704751 123730526 392165702 537107069 843290387 269987643 873235612 817481222 943066677 50346870 278630276 348843075 534325523 67021728 569658591 83527395 836299728 952117610 953412352 23844582 966290887 898194962 956915914 235264920 523924095 105226484 725413109 183921037 248507537 768126314 849201775 535361903 780336871 289697392 430852293 647486981 835122100 947500022 988556612 988526754 992572501 758026979 836042655 619213608 723837897 694675302 725963279 723472621 873133984 868149660 916735473 976115065 995266301 938879561 955272040 447057534 889442906 916009657 947015256 202716605 805227669 225917334 997392676 94622674 267762515 781759125 988685940 354404064 854033334 494641895 528249913 560344727 609239789 536680119 849429885 336878491 723535795 775860873 888511249 180973710 246938492 452186898 606107709 397650391 554308285 205823058 364354288 201927689 574801212 383848609 463583804 515223813 642689865 424910624 627893794 748738182 869079627 621804054 657806963 8410198 445935633 825894932 863731348 499873071 997243192 928294202 966995823 723719599 983363950 691131332 928835292 429535732 610407514 929363964 996743288 43285621 426416888 508020990 839143653 255512591 916767034 344406645 932993577 457232170 864742207 794491095 848034934 809704459 952689185 377673732 776741331 899194318 935620241 539551114 984171215 378643264 592238964 252059481 416522322 746425188 944031609 4763944 536268179 627706534 729064919 64783421 124869849 367067969 793376375 952230996 969587323 543645832 984156524 854309667 934764685 53457429 797160291 264816573 494446461 675830930 759837942 493425085 521355286 241337004 792907544 131161046 279489790 237147444 581323149 389077909 458259071 265256239 725793442 543464091 785730785 752030929 988888801 666992108 813417601 241259793 694923537 548815588 593579382 706655662 752199979 280261953 422111537 198196074 686967010 284642113 302073330 930827109 961052878 946263996 983678680 717725416 929203854 834081843 852973998 115074806 280925096 380870369 463216290 927882649 959728638 464398765 663031439 557738351 790115863 456798633 632012202 604535730 806167629 190365503 514546169 56101011 926841063 105465179 889174418 511124194 759173427 648828838 952215930 649963449 859974280 633590942 765060287 669413437 736009245 393333418 408508054 127401010 364029058 336010605 434455974 669281614 836449798 801475959 900812857 996072699 999596318 787445222 917467494 320220616 815641235 725454047 846366208 104593982 932276889 534185656 620269377 17501625 577412987 527840026 740763689 256045066 809138127 338126747 998695473 329062024 707890877 204112273 611390443 718495748 826970701 425170943 648602639 88001767 674280492 114581409 711489826 850154018 970795357 640815143 671401783 453963847 719144865 156764040 541935527 553847485 848707037 267208958 934637113 443822488 516874658 859347774 935703320 280822650 889473751 996677398 999264022 434742422 617613899 787024701 934259271 293229025 924056054 211687493 269801902 856210768 878629788 947652526 963391250 609249105 704355779 338811085 771114975 693920442 799259230 520422976 816480681 602301130 950767069 361134463 646617990 758898053 931178426 934135485 955393470 856670936 990025247 963938129 988860501 762402097 902611820 265563884 503306083 652252183 899272041 643769321 810077712 573919940 582670907 134622349 153446935 610239898 831954874 818799626 874886079 150305204 942097728 77112814 574688732 80666093 84262837 699902244 785360165 64853595 324335535 820233923 902052967 168357361 381449871 814299842 834974457 669036652 995256603 341835032 968594012 36633341 468663630 714363254 759565299 171266395 426617587 206301842 460472242 768189588 842003905 507636812 667513215 30267068 290337475 178590036 964023925 627470802 911761964 585903450 745849807 555573754 948590253 862419525 995571836 25254699 50837062 246386782 834964471 111325772 410886073 509911867 628398753 175175636 181326758 961942716 990930389 785741577 886248283 762935130 809446628 545039500 849039165 54505218 311527098 563159936 641768382 334752734 588446925 248253946 913207573 645096299 741117324 698455113 805420446 689040245 828155692 352420283 518697842 489605595 667139697 428351315 885956436 191120680 583547390 139916799 911625672 501740770 944515400 188270518 512924666 751187325 909809947 812741953 882076473 538422445 615884845 865045792 881080072 320614046 572900791 871369360 897755783 669657257 732260723 898280847 945455887 424229868 867167536 435864637 543528593 831709450 872199486 768004711 780112859 106774283 676523109 37934569 501089713 794602592 976600850 628601906 878166135 915987903 987502189 302865882 659239210 2920969 343361389 901019400 929349510 900820999 904485455 277514015 709258660 634289913 999748238 433989907 976493749 567506901 817992748 386022545 874058445 168919286 856327848 178096169 742558402 993004219 994978908 21520861 679282958 827714816 877200701 273197858 736770932 310375883 923790215 323246821 572483938 385050760 424218382 617617009 840398242 173745297 843252310 564418981 787366332 373555227 452243670 849086021 932661095 651844394 902275189 675989905 891420769 938005211 983387722 62978815 195173361 839875775 969424749 272341467 452814896 195638278 628438913 155778155 379329584 957510167 975845285 600628643 854675681 679381245 688940314 427241076 615526098 748339563 823399713 369242523 430406069 330574175 563230153 654079415 673236522 486719466 996789747 217822862 484755293 840482077 996334522 24138874 488164015 718167507 797530489 887671499 959513425 856553674 940937235 157416174 783963548 92571783 961636763 60862270 68009370 734396808 861467675 600940803 749513899 878524360 987291386 137760563 957863466 861055920 904392743 497661111 618014351 564540290 572846710 731069325 910785590 607362396 734514569 380267884 933146221 593185293 685692980 992425608 998567281 97033028 480298887 150592165 289833965 409382075 982440724 377921022 878496930 932910755 989343038 837012769 847306603 845573407 973703128 418381769 844723838 111469490 611303601 500007237 536027897 628824410 638471229 626946234 706430847 563429602 869105299 538095594 835467339 445453890 612409139 261917850 701583393 539170123 965277364 561505865 839681268 229108547 421215036 406876614 646681951 789277552 881146633 870792431 952473818 552911241 806054773 133832396 531947977 309614038 754238129 139043509 867699976 543008660 728853540 679135813 788643509 558773548 604291784 225760911 789298990 504468041 681265178 251294950 718229633 36902807 609452091 591538003 693672021 927549946 961388086 320627626 730269172 33921230 758439236 748528012 889900879 357839257 784182725 512261230 587874714 566231285 987970727 505047736 626886212 727846049 734666379 180013174 625195959 516244611 948696440 761420009 882227881 579893503 883239000 89910091 500786591 509354209 655873395 181650819 194349359 954406359 987321797 676738787 872687833 962143772 985645687 226243012 453494267 271709728 297038916 810161289 938909606 329253240 330798945 285577097 340101960 610017538 895745872 924290817 947982090 237786201 261725126 890515420 979323384 626242339 652228901 263984825 387865523 114783548 195592908 710364397 833041538 212246776 391727583 218065763 783777345 820463352 854306120 501021227 891087227 172689559 814266413 166661940 910239841 715225773 790176336 529855387 913736166 176601492 507965424 484624408 567776503 284652958 646773988 326607668 641945198 504356895 796844589 670853242 717154668 575766663 908689076 169635582 227694137 763865137 766165668 957693134 986967497 947716453 968495274 607069371 611509941 641585263 914118677 484525657 935036218 877393736 978815723 743480494 976063773 7078445 192568884 580408835 655159963 235267516 987836351 154563451 211540095 23959991 995137459 169566881 420540941 587146294 863046091 955272844 979588396 184397699 637855927 771098938 839043539 178869722 635238300 983046998 987006964 48748775 856838906 683690596 785258497 682542974 726794294 678243622 881979924 984667907 996922870 909744012 940459916 64882678 472473213 551652094 918968304 30735815 364055264 695965324 905410680 561925936 814372688 164489782 641607575 373020015 691004191 82725680 966094898 775095988 967102111 593111202 764252251 689357692 836589624 111461787 668430340 619536485 794602074 772831800 817630236 490637874 700446553 814501163 861279656 395414671 825682839 482495610 594592413 696605335 965709457 37530873 588278607 371958774 827880568 907014269 944056006 923409349 936931977 459992504 882293916 996416413 997446321 378612694 550742529 407890726 878823386 455686436 503963762 53560681 404492627 886758538 909531563 618302940 776249210 820291628 947915465 495035124 531988120 934051610 957016150 15120056 486529036 26040864 274564714 181723539 347783554 596064066 706269114 786458918 990722487 325896401 918992750 621378028 680020659 270344076 795880702 147670552 434635847 999809914 999896324 973027223 983514651 926521570 966787660 375847009 643738515 128006823 993350396 118067473 599428412 772599724 835451805 477084533 969311265 805572967 952269827 804359216 849173403 165772517 886635479 982408445 986036651 104974258 191281232 189329318 461903777 995828006 996746632 277003480 656269735 231663134 779627242 106961212 197950672 102374976 125532562 120168150 827954655 644811145 658132725 88534467 642759251 206699446 642144618 297512030 494633104 929683576 938345147 19322169 562048147 274360038 568212281 213121149 941288961 228323632 943983471 798802612 806039592 310498212 459067694 342586167 982355896 895708780 907799832 934605544 990735331 948052293 958517019 415964986 469960376 67062284 585847472 307516233 756297459 631661588 843147877 503223523 863359565 866142304 883577268 860376092 919144675 444262384 820413129 26123506 374065247 343441256 898412067 6498605 491990851 976869523 987529897 525998426 845230193 371991698 640598837 893121333 908070948 730482548 782289554 875123144 982389653 697051892 746924405 408012983 795072609 114082263 672460763 446755756 707891619 242991636 694774444 231806103 771375318 297318903 538101524 109461741 840321362 51526277 194957979 320652932 649154429 824810160 835905094 10982105 147899225 161475445 305322561 949892365 999947348 678828294 818970836 731313818 804589202 235212462 734173444 148771699 624162967 461710762 692653856 297140424 486705030 176604009 558349663 730165982 870280806 714522442 980677458 728052562 910859286 680536198 980393286 336043494 747773196 668588170 773868537 312817763 356509935 327684398 828994899 540383456 965019885 236283659 647604730 185177585 836769121 141306803 684735059 616697753 915821607 232976256 937011823 922359580 994437573 319187318 625786474 875234616 885469633 662341384 697038690 562598925 933211964 444213516 966955848 49546696 188002834 65172479 181779587 208237578 256847215 698883876 778142617 489148187 648552024 574009227 994718342 610282071 758026330 23758231 772057001 590345817 977447536 824567398 827733219 343381046 966116583 243256683 330490835 733069265 901716852 911466245 951992498 244412782 380559598 971147318 981430625 940569362 983934515 494003326 980101021 335561043 429040528 272573305 681702584 427975358 785290854 660447174 821613426 164855278 463647682 101097885 163505653 472476250 846756485 188480789 637230127 953198703 978826458 432057928 978198012 724911519 851148552 576922347 858255412 309422919 974708750 446312476 493085370 617741198 818232239 850054781 997145219 695807636 826643868 343487138 635462343 853673127 902652029 873076676 941007957 184404946 297073170 202113770 740128503 51316276 914538210 971796382 978712738 667573420 857071542 595557970 673810292 8548477 959002831 726303848 923527730 677832459 746950692 309641889 599313141 817674086 980114524 367143066 541261594 974838042 995170072 929583501 943355778 520117171 527606567 896990430 961758325 997977216 998826422 464960468 903131379 632037937 724378114 481916967 603006178 174783225 580794230 868752554 968662587 968438431 991226526 681508752 701567285 19353402 917611467 658997404 689600931 60015042 78793363 266329441 589494382 473167999 829874283 32478737 348555870 918309984 923365576 887909646 938611671 453923837 657626180 169956022 177697404 779898067 939934311 475760329 492958213 124314240 502665982 459539985 754360611 697393262 735191591 406992830 744007268 625991446 817143096 890962931 982135033 268324478 387146200 593193806 849302053 537369367 976533791 206609921 748969266 622544249 984449635 517863714 846137911 732931628 847804783 441904396 504481250 729160442 786590818 704709588 710313785 3242656 740961710 108018665 726386887 612244910 803728442 840745714 867504988 899036928 932886682 211850829 977280501 250036441 843158526 58309021 381422024 601777714 720606260 764376134 871493684 649577299 996310940 123075252 742778740 82900445 926611812 381868714 475370471 471572908 711015569 138541311 854078997 173912665 633283950 262549787 362148046 264074249 702927535 368029301 845680904 86236391 551122358 72463391 225920841 420495798 868669936 199220588 243633560 353558475 447418218 373725136 471103752 363778164 576606968 35148342 693833723 649482655 946392244 505065941 884498563 685015259 757481372 590996362 921153563 404665594 695562027 227815289 375777540 502184899 534986644 457947030 606045497 896360937 956273306 335004407 797338794 790593903 856235734 789103742 992464230 444717460 958652460 678718800 779382987 839623284 926322816 88627419 331848742 388071634 919427025 965537825 975118022 224596447 762265523 547057764 983912876 818352740 966050333 86694533 584751482 634696320 883761187 791386386 999020483 491361834 606096181 379593860 789965626 484658981 578285416 88935075 424870504 706098333 959215956 160318789 643083371 14171894 984611677 65521970 331891344 688732573 948712208 391835206 890584426 541043072 769731679 324986542 908524617 405798613 955010003 54138224 554872732 209432840 264865809 87369749 829309836 418676320 442040993 792652660 867270361 458933460 773290638 406773359 793120982 422212686 629006672 240547784 488424680 184341407 779223837 679720745 932337846 643048540 795110492 263816991 898960115 283635854 353453435 262530993 849939678 928373515 988804311 712294426 718672835 82280598 567769429 966698871 967177857 72908857 453034325 50614939 980922462 175779215 915044966 637952426 714233112 706331396 844799666 700751874 967558710 137972995 340087959 368979624 876173914 950015253 950346063 353721780 948364392 684921231 851289609 985826773 987923489 70271290 448224024 716269662 882774227 497201769 873027913 789965930 934354175 529420404 830836627 484105232 582453087 802676435 833708401 743948148 973497358 317389232 391283352 658901827 880583516 226919516 697694195 14973845 719419742 4744440 231696174 589727709 682648510 308558065 834834516 4276127 415176905 806262985 813158686 322097833 922065792 217997374 960357459 627524065 868183333 664647334 993116073 582346768 857573335 363670084 569128365 795775158 800658608 454103915 479786187 428510572 808432178 32366899 608521230 997073849 997135111 201357979 272768072 186407949 194416992 550180187 557639015 730897068 855391731 795112958 966446505 355118027 860633822 464230556 947123814 128504551 254224989 716663807 835717326 828571676 985077660 356391047 946209597 103047444 930277896 729153710 867054622 641434489 846428176 234500460 983432436 995519159 995691891 48602898 499098510 619660859 801735999 624286699 953222698 712986068 759108857 391540642 701466096 663576720 800157407 215807249 540855111 635176883 950641390 63925326 407082247 335781234 587242535 729564763 921443789 697890059 771373847 522962430 974093458 248951636 424479902 774981583 822312046 860535610 970832187 699941109 785080740 397570322 399960369 450431772 455957496 460067207 478501200 692044680 751253248 440363500 815600673 313480454 477891905 261065085 515918017 589983880 957595531 21214360 543232210 82691221 681026520 258532879 760049677 5056579 548632279 330124894 514602051 843273469 872542270 605911832 821478993 394436522 492033467 460838190 578418145 114673264 704125180 667741552 907186849 50950610 221497233 49277840 710670747 244061720 258386858 951402974 951699057 604782258 747315526 807192199 853749151 392845004 413593574 677674959 857107936 329163309 829772771 837277363 859947752 328774091 743400662 874585946 891905991 748787156 968286950 886026743 954893155 518143428 809204951 145646196 500991092 747558799 880219138 80017946 241496113 856322435 935346946 315100820 537087771 672902059 913629728 786389721 863878383 830678120 911583194 903746347 942686169 409694393 483144146 308828193 430709496 656819497 677852755 666492043 807199989 163997938 450335389 223708630 691675827 279677635 643034386 267150497 589444360 342894083 892459325 374973424 452441096 808381335 987053827 814685870 873909970 435413808 659478118 785059312 941802550 40925459 976641501 267762799 926907249 297543843 629325081 409115784 548802849 704789520 997139708 533249888 761049092 505366392 618084398 623437826 833908093 775844149 873048361 371591696 853326624 545661535 783459030 92093816 596262684 720350029 839395411 875142225 953109046 125894667 323170918 950739420 977613836 854314836 873347420 748069199 937231910 281075496 459353796 310649530 641860490 520740781 663665405 288249912 915077748 641996736 889238943 140030518 571965190 320849621 510106944 285531455 826891346 548179960 571103736 896104996 984482137 429869816 667963887 818217447 930689319 120187985 195334794 12413743 470442552 664036838 754842514 443564105 485001429 955701565 995589139 77581565 879219244 167755139 786974059 579688032 925857931 619406662 766134624 165351781 325800428 809860318 888927999 738095263 867868250 993511911 999534808 113396303 975971084 176413018 224753421 867600005 875380621 533497176 962280334 676330987 794239068 530968354 896170622 770697124 788823787 107326342 706276118 941787600 948701933 844500422 917126913 935928115 989473314 539932072 628173929 513659739 871197301 388086604 613928094 817388929 950609458 651724770 886301719 324251700 527165387 921871706 965056141 97733431 291889310 740318559 981983517 411921946 891597855 756878318 777276082 907555501 933144904 890420550 902411763 861277668 965915072 510035032 657064279 349039179 605561305 422830591 841633143 422665232 734783356 336303996 794087917 2885984 976050158 900672443 992401109 66806075 104590170 910025090 950634300 84258610 699558920 106525765 169837522 479768570 976367510 506722492 828466989 46888226 628779970 807929967 834846785 193633663 406103791 435755480 911787079 638997433 978893285 290687016 608569160 681521712 700378440 524867804 769927811 328682066 994895860 832681686 867590106 380117966 864483871 973720057 978839867 663510423 817167338 201256873 906221364 721757143 801690047 462875413 709647804 905470401 917223240 284822570 834394582 168847660 217478831 467350001 814164402 702572352 811564862 39151810 959104442 503886152 911223796 708275733 989203804 458843667 812016363 440707637 826742818 550663277 685083067 83066482 968503648 76354096 577184655 580061996 614623313 926844922 997752713 2701814 294760434 257501037 481439781 939274461 996498817 71521869 405912072 472551448 727838041 5743371 813569949 452757823 515450701 37850400 565753084 140503264 343787742 632291386 731769383 95730868 219721539 390638207 681463602 839062789 944123884 133860799 258887654 292754461 681008992 97835283 476923323 452397796 889754349 804312972 917950737 368189707 663016074 465381093 878382590 407641849 673617133 572963829 857281997 927772589 945963942 57962085 61057074 2518094 864131291 531144083 960315617 369874494 935575656 748331162 856000349 723152329 886025386 99968667 566870063 692595252 905171932 981990207 991005683 954237286 983042141 897590394 930100920 345007507 735586627 391367964 717854993 975585284 984735607 119527684 215297832 883399026 963635254 132139438 462382212 958060803 998637182 975998848 984962038 306431943 596914139 245432156 558851156 252395325 745736109 44643252 976930381 271127252 771900465 186321723 947322871 380353583 928116140 380997122 740774659 473463085 491616267 609284865 828417962 587696537 723043792 270247121 607775698 474057628 535002193 444604625 831107169 707210494 966421040 789541598 980359902 414264690 678667815 662362790 801165693 166992393 385431744 873744010 897717573 416133786 947883403 637152573 960090942 353830925 670278967 274973087 317991159 901747470 910713647 175843507 214788206 577061247 894947832 451956228 746793598 119633552 803304541 529931216 545515367 98456519 589847467 393402594 505203236 57127980 961897144 672809064 795295497 171922448 210592832 672053442 749784989 216827344 433334183 996383737 998524307 202373897 874897144 169049018 194099260 439791213 882681572 812846527 861150041 157040059 519610394 757318567 791349620 359922499 771995604 741805355 912505297 821033609 849951303 920030246 928734889 526641740 567937181 369904827 985118508 950513447 978335097 612104787 905857153 996500434 998017791 777283689 978638581 223705794 957458630 815656550 900968019 125461065 415546433 664861166 771956336 607781592 665043814 579065810 742421885 996647923 998751077 536078476 894731846 220922535 294396859 514714059 895839574 597376365 709847009 128593297 618492879 156982285 382794125 697899716 881695792 604481596 856092887 66108205 400358338 581601369 928971087 667595264 717359123 557190894 824397127 793504103 973570116 856574440 998815876 926182279 929242361 474789028 746987463 147955976 696555037 364447320 820449698 361176224 725760063 641686722 830132646 773770879 986985118 327170273 911453777 757802014 979152669 430343882 621906309 814629400 816023510 957973283 995565160 355529721 514176125 170471567 828571013 223940036 489544802 727181023 814430958 941266854 990565127 804528897 998324342 690147518 827382774 27508427 212205759 847228794 923004624 38332730 482414536 542313133 700106847 934385003 961895098 443636657 903456314 652685864 840685024 168195913 946087278 954840314 964351036 693845001 705347615 11224113 608173871 110979666 177642598 126422757 373771013 279067505 680634315 129768412 772151422 930551303 960295261 927960250 928908104 186801930 303299360 401000086 947242748 118905389 603851731 213270711 814324341 460626516 767968925 331308955 519369251 398345548 416566461 273367316 403484186 148953113 362597641 451983926 948460606 543123624 781612816 719761133 829958960 402189166 750374262 791370693 907480973 147329347 740323329 389710258 898787655 854138849 952843373 996078144 999830438 791971503 875620115 261411280 788159206 692283952 940694806 801732778 970185726 621929983 903597895 826999646 916708396 413608592 725160832 988884579 989154675 403078799 441350587 40593673 445722999 825212506 935116077 902269989 925868288 361148251 806078371 800794692 898083174 745056906 796914086 413721136 568965254 203751195 322559511 584505537 645079534 831547999 867693148 251476036 286678967 524956546 710141211 170277840 698433958 562207385 932400413 395667161 625870588 964623761 997727921 613130208 962578507 512193192 910444008 466346965 892355927 816830 393045010 627557899 660991498 772550287 968672522 424796517 920675562 855235247 921485741 890410177 984343144 102529590 882869072 915691743 938023487 576538365 644044998 518281182 876735403 585928510 748402309 284130758 429721715 577160760 758499018 244579194 434814533 824982437 831962822 16709728 607555665 381865055 756750861 190708059 936573449 545455821 550838557 354824386 977489834 807430682 955144129 279424481 478327482 88611802 430533780 870323407 971924946 134265955 778800522 615954909 800986423 553853887 694630136 930767403 988288915 635818256 813031985 529066603 593834976 149021243 162219987 414866151 850561046 436128647 954494897 853496850 940291060 567662634 581060175 910826007 979698015 528403935 586661251 609498505 733361222 609396869 863480129 96761157 230716776 18101342 285032124 134836686 172360405 924900128 998714096 277782789 784065507 758092582 794480789 574702807 982580735 17763460 721552242 82943506 495180523 57500823 975076315 862475235 973542060 691620264 873753685 919288615 997134515 49648696 678726645 454618549 800254089 542112818 687033202 357893643 359489907 876774075 916748546 57882176 726798823 624532461 804902466 294253548 590084885 594644234 748278190 180876662 832109055 473297133 685517885 489601207 868338665 230784806 897817286 292547866 415287609 918210382 989021228 265495105 275683293 684312888 726724212 768521825 906597115 324834331 367212702 640133647 989734505 82479600 249789461 553895269 911230993 654674227 712090480 601417495 922787744 172620869 555722287 725637596 786376415 351756549 435777576 422413813 815763019 236890938 394819563 812237257 865745436 587444787 595948938 553004786 762706943 227087324 634806017 890621097 907815319 767637501 930253447 97793867 693701634 747570199 938717852 816728941 896630552 511621893 721389451 659147909 886936164 524604819 874651361 524966249 860034826 287883619 503064411 638844065 915401196 94576448 379243438 93471809 765818486 221923169 356062276 652432662 976964836 513412212 678071405 315712248 898629977 373748180 964906414 520784333 526759291 844797873 871909859 314713627 370489866 994885711 999467885 940125296 985356984 301948190 982111885 789646496 807154083 201622155 241309933 99042807 112730339 314770535 372496634 942925860 975794189 978425030 987334858 702121189 918871674 123800654 761550967 521880030 703339177 466091162 753502664 865611944 903427909 467321357 754801420 170026196 730641598 939643317 984397710 275781997 809026758 468188492 715028700 80596980 958395116 515748558 537879943 381889652 886312885 107051489 661375634 365927112 909654496 953809864 973547699 547564630 641230377 704373103 904211698 244231013 892404984 797167920 969097281 707720020 964078670 566950530 873875926 940046626 977262224 282812790 570813845 491776465 859657795 747998836 801064774 58126770 437462227 839369031 888070763 199366136 431123607 84475429 886616465 119906143 568772199 664642199 671097783 901951941 954479905 195319957 683502205 268307293 320638876 705505957 887441439 557562127 678727906 125477856 166376142 93261224 389532850 58859121 866387626 592181403 998969259 552817259 575674213 93041667 598536375 871867591 969660069 678459562 710494454 113458066 300098353 753354630 946731168 491719426 792362789 21516968 331164285 431699208 892630281 697236386 835370431 73604014 268858465 45355096 857417543 736999394 810328794 833130624 971763997 146012402 554233820 629057360 635926346 170346691 548571500 346966530 786947950 24057854 401529922 991906835 999101494 794080838 998852395 736022907 881544655 671150500 859526552 462400509 498568047 324216844 968185895 212332386 918256858 959030601 992849627 268181139 878251651 159059241 783527092 249164774 394740007 345172326 782546758 543225408 707876831 891785289 996072135 375705890 752708031 786576897 998322832 756652308 975370330 771065763 975896369 828132049 927167013 172250592 972362818 68363818 751576670 204027889 972323967 519499762 687729473 87126486 823523402 44479612 142251878 763357906 779938721 231806137 958071847 700327606 917087991 79899153 672316239 440076898 911597009 152729764 951272344 488491156 905422639 606495632 940889795 873207686 985328375 715979037 953311770 417640803 428529692 387850607 623050972 128641238 818201266 636638583 745571936 807499052 897752476 820945354 871626404 370859788 454065149 156558285 182189518 152179676 903485199 555700744 937798304 954114804 956499436 150469097 731485590 436139611 852380072 705770170 753865425 147559220 644531853 22157221 750448261 752040631 940229352 14989122 293218576 475175673 641857898 214789372 239850298 641498149 817620239 926666157 945208182 604707254 968667209 343432205 780076743 880003149 956475402 980750811 985938569 670909283 979576778 47174327 358869066 60464527 932519483 479875911 900572874 627115585 964131291 215457262 294908507 981939485 995436389 159742929 646927828 193889657 715035674 568850513 708102079 208229869 717715326 199719289 200656221 637693582 923445768 488887072 691274240 784234630 999825327 981325851 982518518 641464943 971510153 867841635 901469723 311774302 338379047 868660859 992885189 647956630 763925318 803405504 922847163 831885114 945097282 952809795 971649649 157629371 960034551 446766680 870448749 538618526 773830082 356286734 446922364 798464687 979830863 407940211 726949054 3869977 763999089 365601903 569660094 807885875 960550619 660324582 949689227 124953652 564259561 769168806 826549962 935161141 991357128 434694384 858126761 654248610 741533925 93272592 927576363 902877888 903150160 346685607 587882344 13755402 100046296 501688609 955722613 841134435 842740556 721487317 809673682 413995919 949971155 392856176 475549771 123900977 245081638 978076205 987854770 362504503 593886116 990890406 991253560 573601273 976035628 967413468 992615279 911268631 982214384 25468942 908002070 161627801 425237661 46006935 228006606 925596141 926357650 191821030 380033940 676450489 941004894 336412143 683226536 774434213 817303527 789695420 807889238 682033789 716239969 530288833 795139102 747786423 924853329 267986883 448690134 98726975 496085578 555773287 859511624 699058797 887799451 595344109 964709082 437131404 702354875 710616901 781682378 274245044 567300320 350663667 621866524 988349043 992824062 608236735 854161255 363386920 408758136 701697054 793977658 332172846 690250626 334903919 610723615 968289116 971074922 327350600 633378750 261878302 689829580 972507615 999213738 31999168 712312915 933044455 992315497 209856209 840840201 520095475 567709239 359443758 799956206 440213184 604904325 99239925 950669862 906557740 956423832 381742453 424104666 659878683 682909441 448013081 560613532 646514629 900613732 439782537 936673853 495092415 873717161 148715616 958520055 672024297 873273291 411873688 954853114 675546652 886352512 563720364 582317821 684414858 840470981 492428552 844100599 153488318 414429545 200886234 409009555 306923047 996312180 623082755 641789954 397498028 631292233 722951796 995752874 836105891 850546024 277209890 409212221 802514382 895027497 474910751 550789806 507287316 971510862 776210442 857418088 402325377 864713961 292349056 914626553 710683531 764655712 788720987 904422656 823364075 862383123 904153539 973436702 879065632 977992864 704177318 887223179 733411497 991678960 762888433 783852777 157125661 186573047 996724261 999933251 352402223 684289334 597918127 681721710 967988448 980160453 158340172 820919564 622520806 774968577 856108626 875985535 858439727 927593140 263449000 641880467 656185764 695498189 286543448 747558448 994593079 998188561 308813473 859419149 591095706 726733524 701613169 828775730 528902486 678073817 92921356 184757327 838871103 849589105 532301652 574170453 733650955 996522054 469993525 721162566 664599340 946794274 255428828 646961501 310553049 707061140 103319977 935073678 626970958 808484147 329924019 978387164 653132228 909919947 383300950 742613010 9866255 685204644 688803734 963083875 793188925 948121540 300273829 532604564 430729484 627647174 505482163 878826409 536012141 835494976 937111414 994919856 483693457 879855680 779020271 810496001 172077212 823402965 169372499 971739687 547791062 662965774 824908722 874785149 966780520 978962310 857843912 949558511 807735945 928861377 596678541 687883001 30061137 295034745 16743321 157030459 561395325 888074461 976192744 984682521 154124922 494300285 573773412 747318327 769547546 945201530 622824222 712418873 572947772 605874535 893619340 968369305 431415323 930071297 253188914 297745768 507350238 643710172 266636364 612325546 962601861 985002640 126822188 135993620 852361514 998282289 553639490 952823600 645749463 974408145 986599905 988568872 409132645 712959546 336807305 517303868 565550838 643443368 901966377 981248780 698325876 931192410 674276276 724503429 933846632 938718993 918858351 994927842 828745493 841948074 308559592 626109808 273818489 656336382 709824390 923273870 221346303 779938773 245363007 287815449 456068616 891925050 898014597 898466214 854587971 904884085 136880017 826922966 358569860 704870602 120719033 432112636 850054123 936097413 256406856 755191030 673335000 811566945 584155269 794335822 536608760 662134052 788338333 802876070 253604586 803047102 867240902 900918786 46238486 352296385 548456725 937586928 216999452 746742924 689911975 807114965 413128437 970576123 587132555 890548369 932315139 941069130 845621798 925158765 201583430 325045761 413257503 912988923 941836656 971483055 888625132 957801287 528109315 904178748 205455204 715412572 12668994 30000053 403211475 754876833 784260236 888621115 498549597 519690748 677229372 834966246 536533639 545946125 894207599 950054145 540333151 820063636 556780106 996239586 897041228 957459483 494814694 528185679 618312787 840296098 41217094 790674478 670112898 876892193 500783283 778653597 640589669 721451804 666281503 911337499 540635993 859754833 876127181 971846284 951738762 975615473 798255667 801878036 798008255 808434481 722870479 820472163 603795870 701443721 362211992 638907327 515816103 663388878 218310382 308567022 902823740 971376757 250352920 560461236 556632020 849347869 946168021 973431824 443630890 826898068 719874564 953302894 361834614 717172889 95559945 516061907 909900810 944266449 845314625 946203750 673485753 855972792 83528390 903757624 740882502 807360617 828868891 937537269 327890676 744472923 619377614 967618251 101234843 240931600 965755159 973146767 184046656 259505118 229396094 481136735 763748891 983957285 44717736 923619639 518393325 940947399 212569371 954539193 933489786 975993467 684917022 934166043 336337074 370413790 710383075 956630067 881763721 953500086 187999043 632116505 432613884 446366684 738733016 843627372 485532484 764559517 879375081 898033582 996995337 999595037 449239039 986426412 548860955 710813910 24341314 549084650 488256194 694248185 984332675 986812633 772316172 805377251 687753611 788565016 750887580 942502544 516743408 562627980 502766937 610043702 503565994 683535459 475420375 691263742 633386423 821295975 412840235 467752860 672048800 976848474 395355816 636098003 369797076 889796571 950907008 993493771 459205264 717467607 574120038 591742187 753003958 937233840 969732353 984715424 337430828 484862358 221565635 637377390 109024440 463768663 303212850 303533701 520756115 594959389 634821493 917917425 219876838 331221422 846304042 883681693 889284633 953149595 85760057 105290525 421175745 659282549 225416371 798895999 934887878 969752820 963807932 982396536 746292803 995398303 795983692 942027097 25305548 208321498 545458791 845011824 537960533 692546585 216269587 952421832 141803248 406649873 377453557 809670165 800142070 993749176 339662180 462055882 306325649 544310962 659101104 769482446 485311530 855987378 439344541 481605224 342686694 973584606 157316051 735566274 366356757 569215456 561593699 576181074 349247657 978991347 605037269 753406594 843810340 844414383 171551033 493314084 889653063 906417007 735335957 955959147 826677199 932147301 715389413 913033982 263471647 444572653 897812142 980041275 477324725 530348879 418258388 980261787 554440524 884673734 378631711 673105904 600204934 866638067 509982906 736563618 93694193 131429926 569541742 653597132 35227725 820274717 174348332 453510077 323964014 848062733 518067604 752379802 844591651 944897774 116369851 136794839 684338165 702925240 793831611 897843627 887341604 965680478 411346226 756520384 204305225 432641610 604215881 759832956 9969465 265885719 358454458 668479190 15020935 262033548 11271797 923943039 45295182 984966686 994489897 998509841 685934382 719102689 711390979 725263516 956394175 981926952 5224384 841230035 788332861 938343020 624609064 731028363 248943302 738712621 29950100 436795736 633025354 687715573 807402826 939106792 614729862 697593933 883778251 954918864 204572457 513187961 216344391 523818250 769559430 859370780 719684772 931858530 157830745 287764485 629322204 884268281 36127062 966860694 876543226 890940414 147725044 331731795 408955758 961300924 113242491 342400412 727234831 935176472 149049465 775120064 530796553 703278403 692679244 910828768 243322450 579898755 146559417 635562068 86523419 434362357 547303418 971581085 466069974 535673769 68865278 748130094 556594829 883909242 516393495 682969815 721490725 729547265 488078012 780732648 106171013 382183931 996186380 999161668 752137225 876558477 394159857 929242223 410562150 587181450 533490929 750453824 571196193 851812316 944713101 993207859 577450789 655231248 402205580 482426938 78594154 484179093 945500398 977994318 208737877 763706554 774108917 977154974 123644850 409545780 423189468 883467286 431554052 619663943 267202140 357427665 556589806 800480321 265368941 615908032 152240072 596217940 741798866 756533869 67170454 703555706 113732841 336071049 214458782 715317356 23508502 954309436 889675550 910868225 107260853 383324747 597756187 724322059 570804855 633362282 22462434 506921123 423241738 643144222 83978577 383192394 307543737 340337607 14541882 132020887 238713620 268331465 329823402 482604637 999226529 999427425 957234881 997241302 69057485 433272613 986871530 988388091 338344988 505693374 43738530 778114932 877410076 885034597 958276958 963256327 78175028 111479873 121215960 672494616 277320605 335748860 645816319 686156409 780180510 877275828 288499330 431877403 831815819 880810741 678829054 733111599 641888489 644565935 338710527 957295276 995215241 995442725 818039145 981269256 16074843 306206435 190842651 821090623 885245606 936651876 28215351 41470524 101061355 949780853 703179337 771451940 164987349 346455408 685822493 727182404 68019836 518018004 132533305 416672531 388233586 451820059 450958486 699328414 86508887 242786991 249218629 995009680 750394133 954014563 487994332 564806895 289827546 916754313 343328319 978964901 302354898 950390448 746342530 847072206 58841972 942660568 527795741 860303822 385466791 809628923 462944053 554474301 869080226 889445904 785856268 878424624 306669639 555544399 103430809 613357930 1594494 946958139 502918604 591515024 710217405 734387697 157595302 215150261 664133850 983162418 345468519 886235627 490710875 595413736 706145716 971982293 560094039 884813290 357149800 454832991 874007422 935259334 533730265 561921016 295988834 552879336 234861787 605077482 940818992 971409883 204785426 532971265 984465866 993184218 33649651 811427468 889647675 932512592 111189898 873885032 95026000 776149671 970110177 978168166 632972861 946006610 369572862 497207370 388258137 773444273 233795736 689177650 904213825 908418510 140841141 718966453 377230689 538069292 387595970 953582864 203491442 693080888 944763778 955766679 605286142 829481331 751846298 899050654 140114910 720793556 809528947 898480121 693602576 955977594 609695261 703774167 554409973 700689986 415337636 768237015 428494017 792943487 570689777 668296055 953912320 963317877 288773361 740701817 336079882 371021986 718524299 926712522 317020401 669233502 250015042 632462296 920812970 962535703 59317643 283194512 669078557 751979108 742596541 952376953 836464398 909786449 131404737 301758346 276269767 289693424 714755472 777143927 106776453 726811014 100079551 643336828 864306189 934172971 748204653 812528665 244673504 448230054 578046849 720106941 246160090 890048203 386527004 510552894 260546710 368364901 124080866 464306157 993279797 998507578 66222338 633136015 814659504 850873097 85365787 510650880 971603269 984686426 200661390 244853397 428916170 628559058 302042498 425972762 253118860 267106090 922398325 972129312 42047357 842203122 442155482 544389098 672346859 993621359 598240030 679387208 649322301 941730095 626456655 664307513 709693269 793646051 646026873 992905307 267994746 508512873 633016177 892878182 931818663 963268429 563628508 777974318 616240213 647254064 965068710 975512890 224437623 504807837 992853221 997352789 842369047 937755063 855732138 962715468 863377909 946422628 911802974 982782913 512349202 914602830 499031090 977865578 773560933 814788295 318532292 572122715 943628399 987447894 939448397 966700049 61655833 448969726 349166416 584195018 34805921 474130077 466186619 543479856 581818252 788228755 302938962 900099295 581781686 662993197 572143407 603996123 292395552 347569850 213529417 334792550 271712467 510880044 359532450 575043666 162137011 401783165 719897325 889155929 407221488 612868325 16166783 713591812 867725316 971825884 39833333 418836526 162671048 222296286 713409005 822629537 999879212 999916838 238385169 778443957 127123297 360578736 70889082 745733081 208253103 896396902 67517598 508699959 651799009 870688501 346579403 962609813 913148717 972867658 306362905 901843417 902214437 952260370 364329838 399482196 227087964 819723138 14071356 353643460 927877718 939401967 759877705 824964771 560433627 623895660 560974173 983013461 568439858 885278144 872905245 998096541 199651934 682367106 457664559 579436363 739691753 882112803 461667828 631295598 207406623 217200848 253254586 393585824 735230109 924902457 3757627 908123697 285559420 603077653 434694434 864674648 442340643 940373182 7052856 470262720 271643092 833969603 655213320 855310612 263909070 797714036 445796415 551343913 813521777 994222533 528286228 620973991 630568551 718067503 209387108 533412546 431752554 480921481 978373517 978406525 460550788 756910255 939168370 992645895 658899134 871495739 500233648 828768486 504225028 574739883 334398462 831306310 640852941 936580749 911476807 968383576 871465498 977636889 552566029 978579425 322856713 807105739 555973156 818806276 570311888 682408584 341520693 365327822 262810983 859726853 870633200 964298014 831051589 835733413 92913126 314569216 424723829 660457995 304154033 808578012 395672053 671319822 274801439 982137000 37421306 576482317 698801815 928963566 305284418 344385044 427528900 876758839 351087765 401724978 673501368 695038151 239000186 664510275 700662486 759840993 699646801 757086694 727520195 729585458 293965650 605800915 607752402 687662524 200513796 533417254 47041492 213156897 264940983 288063005 378113241 954648576 895953953 919107995 383592418 995813259 883276355 973420115 111342286 120522002 2871269 142228316 476684396 815975325 961382398 974930790 187794593 966550229 343395312 876575299 784205104 974369248 705245309 777710592 738701776 958434887 727543623 781710919 725823800 973637998 441272251 444731910 54061245 911109893 861035116 979424287 2936299 989316151 560789785 964100699 542092308 780017828 404683617 565182279 268641684 738531565 688238247 856435888 202934941 333905707 787775917 884692565 939602771 940154163 258717871 265856869 944509831 968115075 498872782 930143784 664907332 665720615 289939885 864720295 972497770 985941921 339790127 649579944 903066218 965751664 204237590 947424823 347351234 734946860 406300426 954146073 888703015 994824868 910336308 979988258 982978173 988016905 634873729 933719833 811360126 857137778 406243875 469841706 602868943 661846822 528814046 662012016 530936140 711172970 70999659 500241703 759069051 847645366 243993815 418124912 950105533 961961534 414497628 997429121 893016481 971516794 956444664 963333701 731063566 845864535 890556062 946613983 333950140 501577618 463737768 597563362 340271566 984897439 763902155 871586553 84127120 939760379 281585383 928869091 21092975 711894239 571488040 707262391 24497122 846443580 779914073 832527393 23917639 667488403 497008261 712144575 764919822 925154259 837605683 901891837 751977871 760148847 757153947 904375789 402173244 407172769 517756174 526738221 478290586 629635976 865190799 980229587 540851313 937156942 283069387 632872781 290537382 743022379 412204811 538852340 650829399 652855100 121603865 565322185 262195563 860361508 799683532 971723471 164606361 311492328 904679219 905037885 153663398 836486504 281094143 765740931 803333300 947261781 346576471 725996373 207744699 897092279 834256076 847500673 30175941 786948868 870677197 913132349 91454232 138353100 669713951 679019068 69606387 164925036 242902389 301127907 612805770 748347221 465964491 534425043 779247962 896357868 36425711 171613983 761488762 820134391 76155748 803590196 947235148 980739915 184563919 484752650 247510096 944658887 122568500 254268350 413975941 531949833 663273295 854169973 498896748 827655317 496678419 506646028 597156867 701717907 602610008 714335595 761990023 872269239 772189014 969069961 288381862 957097850 954598791 986419286 289015 658146637 520285988 801145924 150107053 261485200 251652911 977361792 216021944 902123002 539939769 662532373 450283155 843572909 916795782 928200202 106954322 981633159 530714757 970411719 122449064 151839556 232943694 383297367 710812740 816092076 108562036 704903919 733893720 863326012 218727085 551486750 726385583 786281579 337700623 622169150 404665887 882124689 634732360 793991181 644785284 813476465 120213927 486282924 759840069 951467041 229025170 270385543 193722408 631079702 739873959 965364984 626118435 895906573 191726882 516337780 920613514 964349554 797941252 860491291 596650612 670744175 394278522 873987185 839088750 884578561 408896396 776292992 82613548 638295448 831696911 866237379 582083625 667217939 347453187 814117054 859945565 914696237 75747482 446974949 333704681 732877397 951646580 981490784 661782385 805784367 955808035 956722758 734922230 991848353 490294363 741272138 693764001 811205221 642624731 910073838 517531449 739078536 123652870 942077089 264435848 829622665 135869633 552725388 561175548 951643417 758053586 869672070 304250404 307150309 136076475 771504944 188424885 911741743 558902979 754719324 863548122 924029137 238451157 474878294 81181792 382321539 440365222 691206518 825544231 860850259 665562822 761466327 155779607 474098169 618557471 877649143 636957030 946676163 483864353 768557592 157611761 758701993 952352006 964635168 257154701 327893173 106727571 779897334 642713155 890981284 554612172 765361707 423113102 502315168 863961329 940429740 890713320 983697847 25294794 458646372 422704728 542216734 43383233 688427688 842116984 950640110 480520449 724203649 862960667 966846719 385755676 588826660 544958818 706616480 433226038 729267945 120650705 371888721 575772196 974607100 677577002 776082555 897443785 969835865 104206164 637318773 248054321 605509562 529756911 922735236 86233921 400045810 565617317 842492228 169095425 418425817 525612433 538374281 343359380 718857176 623389128 700003872 192222908 281215658 45455655 924703329 533347051 537905729 658426319 824880113 843986556 884909558 841864869 846695587 166701331 263464751 532985277 816055930 534053669 938456719 764054013 807060383 417100611 793507256 696401539 812754438 663756512 913323527 392031087 566169108 629033170 962258861 45163691 592310774 355406239 819701152 411731711 587292536 957833536 974838378 115567400 387939569 279871336 542616646 714654870 897847825 67080565 458866649 675262787 779141284 992395114 996261791 279503578 998824161 195073541 243742067 585145373 606526355 690368914 970492248 74410409 312977862 199693327 932934357 481178487 598293148 624500267 728481844 683142898 729573258 453364882 594255123 387875461 736686366 273322633 539782399 319191822 802588985 242061711 969672522 447844656 739413913 373065443 491472419 427350331 581013817 895426874 922668798 900159891 933450835 68358791 981543282 430488117 534082186 632113926 940333920 680388049 910423662 626169511 718485059 138160296 882788930 297624019 537756255 683173071 720525054 193782165 993938038 769400753 889155628 530567510 806735975 653518281 691418099 610361648 730871525 498216559 954602437 488082536 628695145 537527913 885709609 903471421 972327236 558352054 978521294 937205649 958956134 221813611 596806332 973303495 990367863 676916456 683735844 841424074 960615606 711286988 724972051 565863790 806996629 422738239 577156709 356739966 479756745 936606450 963061953 273631042 687662792 782854667 836663873 46451251 913528428 132628943 573285179 582028761 785441820 276056186 520687499 615885134 617714708 344192358 702235761 740161363 874416052 144399220 944506813 616562815 821623649 144036158 264973180 924522159 975324989 7271729 130781010 945869814 982157277 443893850 609125312 230669711 329576690 485740083 712377712 399216028 490551314 27909948 592285263 927976885 957339679 185539308 231059085 557377900 606234785 743962844 975257950 964953564 972300559 14613201 744257533 482332753 594118677 227628857 322755861 396423232 517730079 622301099 767110302 12878877 115471832 101900593 991740276 465591217 885252753 4906961 442008681 844494026 941267638 51168089 694580491 222786564 676672862 183833257 457670094 242933502 707359439 86311363 609788574 741338880 947226868 230532195 517644189 86622285 519002774 928678851 933656595 198804581 523935551 120230335 899550168 565891026 628023797 13347871 576054997 204222530 907886695 67014493 400705696 940932270 951263278 757465989 799254221 619951506 655807678 767704082 874757522 962572216 968576938 554375248 772476724 590212180 736344715 257362472 862550944 923650987 995934486 412609665 930800371 589261825 649608841 329237039 450940719 169244566 831156369 274250547 286644642 65452652 257681851 885087993 891645635 24516452 513312565 336345102 574629953 192963921 666638618 543935601 919309252 615429667 689427335 727290697 864784598 430258994 881698010 775790608 832477043 680928729 841974660 888538066 910757278 543686638 571479420 992399776 998416467 926065286 950774492 909566506 941773193 877785602 953314650 795080576 932973087 697833942 952348757 162499206 974622232 708421730 866392947 171249313 559052278 834467687 946548269 25494233 371932322 821706260 999997017 336899221 340863300 507507375 779672889 927858318 961252833 573596482 647892697 768643016 874438719 811212216 981869176 12739150 281022289 246149411 515891687 712216151 876932289 784820085 882635283 584584228 933328595 914799435 970476940 971152105 980555386 489467152 929469369 222883162 857706533 709744952 753098005 403140048 813818331 907663778 992489522 232562466 986640231 199523890 631624501 518677446 747962348 660147261 791490707 905852145 935163871 513836103 523554722 392315664 454669217 614374600 678833448 347063211 622465240 579901799 730532983 791738771 977338418 654003811 671956629 163105363 298475214 107607166 162604099 940162298 983422956 918326081 921030579 603868374 742447224 4277654 628815561 282037070 408185440 991235748 997269202 886563054 959561595 53763485 237489200 356779825 426417597 638735402 699621272 321210814 985132923 797279221 905419751 732002640 988097313 44840865 556872271 477162730 518118873 491965526 972035661 115604805 766028273 207776363 888651265 685139256 699919730 444519945 861284260 200541017 211527337 833882001 947984164 552239595 948569582 661484766 833918550 453012707 634562611 865609157 912030526 858174274 928240358 48174702 398490698 78630500 97529218 123496064 969309850 103286733 395161418 515367844 929207621 604955819 930972439 909898294 978786842 891693009 937381812 870165982 956176026 362116472 788604642 966821357 981709091 463890545 904273935 594917739 791884938 470972850 659196004 81982433 157846797 544665984 772197066 415892407 734431094 400755304 677301470 305455237 755396540 290911986 448304184 148798371 852840934 637101680 947035235 994169054 996349123 6589678 86518805 91410821 508382820 937317718 942252588 278890426 908873468 63907789 108544920 776652312 942066653 202810480 341861701 580974929 665417727 714822632 829321385 972589671 979119647 233167284 876086891 794733190 798113462 413524853 501342222 533294528 869511515 629830579 750432060 34129449 964649499 850412691 987577373 500110707 668700208 101420095 835627576 527089185 992083588 77539922 510836419 522103963 835954890 224787848 347672467 659941815 992279522 421320488 630141939 491112599 517374551 501916103 676523802 75591060 969957721 457057748 489223008 265376275 327104912 452102821 543285686 47395991 549963936 308155795 669898047 822446433 910739683 828893909 890297948 921500385 971719384 845725542 953693656 23093998 264281976 882707207 908887065 720440010 862316995 865508608 981129020 32416656 370769256 850687483 915886678 875403971 905233366 984011630 996288869 269906382 455221914 943668493 974624165 188701550 900808611 1578215 910465851 410795486 498703313 356375891 688681909 386454681 631697622 285544790 943031201 568309781 639517912 276914648 505895849 124513852 823120651 776073437 809866739 916293102 957929584 314924169 471847304 200429335 749371684 782835163 826600426 693920996 749897445 189001755 936772946 980514362 980914929 581270078 724516737 366308781 683351849 675152714 991071323 332749812 434333899 77112539 357652110 552771696 727269998 712556423 727021308 787438876 928064566 672435310 898780156 515482692 624214341 255323659 274371096 480397399 957303215 416781557 472027309 157432589 264614206 26620097 409966160 611125273 832461306 797779492 852703368 210273987 545676752 437031158 963908718 368529291 837053468 652948115 696971315 922228778 934287374 417011695 836830223 705579365 729212798 934393080 938652352 940101014 995810096 144038911 835366802 931143032 980835246 372432957 617562805 234462485 881751711 618375410 913852778 10249694 457319002 105949721 429478849 478131720 573254464 202132296 325407522 232865698 452157554 172166731 503979734 110399693 224591693 699504363 716580241 589542165 942283860 523755448 557190681 318236188 596160837 255761920 921421397 251817370 286078947 202570516 294482566 797660886 952017125 661172593 848486864 492723223 959599006 47517272 633973127 945096428 971726773 119739844 157485171 480568646 950294075 624059165 780546896 690854096 798320270 287016301 830749727 805568895 812286317 335137812 711019568 692641850 904024979 320580514 659089708 567970478 613079370 756734196 849200899 876922395 923887465 664330950 698086033 560876096 890254237 938547725 970152409 948180960 982277742 130125828 256760982 623104664 764561257 614721613 719518878 879973627 930909240 306911392 403101927 74821955 144937327 60117597 215898642 516912900 593896211 131056216 175077586 183866708 723773514 327113499 684900118 761451033 930055718 654086453 927862635 338379455 679669544 584594680 801530692 923425787 982932238 849359664 907149129 693224523 925803308 26221944 232262670 680849500 965822331 392517534 481806911 753211203 805954992 469798907 595252183 328738901 532574767 925143850 932281767 15462829 705258866 967635042 994508120 256170726 424864565 133629172 698846347 259186344 413606806 404821636 851333583 754748407 954703890 755609477 930547505 699447113 824722772 827161386 965737136 331830811 660153930 447643297 671071041 53564403 461923612 281672628 892659596 936082530 965645016 262222433 522824317 436678426 983779187 50334229 441381490 780671050 932952766 428267578 821954730 72962170 923581872 210504824 709761199 697142334 925148265 48058505 660849929 221438350 734632052 480101176 520865813 24608962 945666045 395422417 915079201 262478340 745751992 511364852 815629914 645197235 800937263 217541318 959099058 659617376 774466436 456241889 931775616 639375212 920603950 456689755 649260633 284043260 611455681 934124611 990340706 27737814 46662207 699138505 829208592 456295477 769150455 880862328 902596389 290408362 503968967 407066763 941956002 698254177 738602608 60785600 814435335 624470914 741072921 811102642 874534038 599745637 653306341 963307211 977946552 97093508 652780937 860521621 912272176 960974695 964897584 596140458 840009292 882020555 937080602 601263643 889008460 98932809 289979630 71825943 673557966 855144356 928854850 311151635 741576221 583885294 734459675 372024422 702787726 411231036 617482470 662556540 998501419 676270811 806822885 887601317 901271558 55715939 340331787 750521576 796797061 817601163 880784842 952143691 984385964 360927184 734759574 782239252 932591146 86003270 935782123 334172726 715589923 288427522 541065184 450538854 488402261 77497466 521707676 917707967 975676344 696427707 818983791 127896912 897747416 807014206 955370130 855240313 921627420 571539871 699343555 828618231 907260668 401982802 541300975 322115156 401828427 621682896 884713414 179754647 579240520 506138093 606213301 800255013 839142052 904919512 999241988 411124683 845506636 384339026 616311093 595221703 714334368 585499582 761302857 292883256 305252283 593472724 972394553 171380468 417241460 690558204 998926665 838823774 948119706 614067301 980019010 239693884 586439797 348238334 564790643 378027910 783253095 909797862 941820340 307363924 838242457 960341709 965572073 618069507 844085744 717259986 948960615 856785048 926317823 941398062 978064619 152329576 167382534 616286922 725152528 48775308 958961028 110598055 259963552 531157594 656630046 918808202 968114581 170791889 373029741 161038654 767289676 408802720 673108995 329230863 742691911 415573844 530757024 603437217 895313850 337634042 717936421 381468773 583805918 849512885 852502920 722964390 966742153 986883420 988479960 57357724 917769857 680027709 828135287 768131752 890207691 828292174 879790819 772011628 966890748 928325966 971248905 188693107 892239100 796061230 933318227 863525815 999150008 749431239 959554918 6199766 428618756 632487676 725275150 547796215 901320172 567425535 655476042 697557218 884503545 450243208 617796430 34563600 630853059 381845716 867317116 782094155 836637125 538911719 702470516 969614802 984049863 216970151 463495077 922344658 982050099 24722365 278923764 308250058 342833720 677515818 749693189 129014106 891073909 848040198 851469921 149480501 486339223 717266760 856735359 595901585 907744384 461300650 563369256 466491534 866387920 162520012 883919030 656429540 863705726 812290233 996421903 719117450 797064575 288586417 661214776 374534020 657547201 885970649 924350526 87390768 738600342 703623201 712134645 542245646 689531819 34334896 188003995 535223474 793628055 463972084 530649915 210713198 664856552 258343165 778013285 714207804 987427438 871410412 978253253 672382089 734181025 872691915 930728145 820590366 842091816 792997227 880230077 592331942 830210144 633068010 672669247 577061828 968055413 985650756 999115411 693750377 901853552 88957470 487226107 967556598 988440166 975891740 998232161 583801963 904585399 907602361 977782291 206503082 424875385 580588156 906942145 109653555 586859536 812935071 841282547 928732938 999674718 397435222 652541800 219366178 647432822 761887331 802934181 171910792 773356443 862843651 915105082 29088069 191149933 555887287 882801835 208000214 324388536 380537141 554212480 693113778 754220598 231659294 648501355 803395469 952664742 945513894 995242008 385397913 969184755 947142123 981732498 956957085 973504294 138183898 709963865 404045982 641532464 816737480 883173383 4145272 626824193 905487233 949622943 60661627 300934239 279225162 959798957 769489995 901959756 47320244 250894159 798854544 958049174 883640773 972534330 37301289 384806464 237895113 292336685 224385478 572567066 987920917 995546108 330631997 633711996 596884790 754500412 816830448 924357921 456609460 859476464 295322160 452889762 384679433 685249605 645566900 989546667 312094874 481203686 610105145 907174057 743582145 996959206 201833051 253671130 829971795 855849975 120445914 250330116 8639466 662153670 852625492 866219733 824945954 974753575 963212901 988767151 645303297 968902181 461915406 497781801 571834636 640933050 559186283 660749431 596130922 975087581 942161910 975196419 486425093 650216894 278100931 722604022 214340947 547626586 543554027 692341168 640168709 724814237 391927106 531340485 190022211 350794606 122552901 896783162 112436353 461465443 382642440 622192522 995045647 997317756 985624200 993634544 885638403 917538363 534136040 654123836 901224426 927817697 428188599 904151061 774830477 780907165 99197422 373998707 619454990 944351968 906150180 910822449 264518393 919516422 555654261 937938333 761553191 815046591 96447404 273588514 994218638 996104853 919193698 992927197 624143766 688557977 17348821 781728165 31587971 500151149 81535643 102279970 654915968 850814701 306991963 629760336 972255430 979969127 755080788 927388813 107411699 669630194 124636339 261993426 450226319 847301364 829917757 904602215 390161378 803637054 734069652 956387786 824493448 832722514 92830221 772443449 908702820 938525265 554882985 628020652 357321913 843795431 116089521 670967226 107649505 694086218 701543376 896460121 636336570 905134540 608009195 913564889 864602770 941440042 671455445 999161998 181675142 482173939 736933687 810930655 583743195 767382284 500200586 753867637 707542501 783826687 928429835 971625069 411913474 701679772 95073543 388748415 748133814 770534097 563213696 765638376 102368810 844930632 231913148 917581576 415937626 936022764 803505364 936530394 835915826 838440921 336278524 865147381 923140168 995892222 541383573 944657638 58744401 669810551 442623343 780617498 339652539 489917033 109427713 882542296 959759796 988806896 166507875 758583445 730800897 924459438 455754378 841269251 793804500 863486078 923337973 936221309 798952999 841839827 709228690 868905547 791490383 896583293 108417606 866407831 663925273 663994249 536580755 666150201 325277920 972692596 674211221 866395140 421047515 424471245 163317605 886451335 623735819 997113266 173520039 888316515 314993995 826092615 873035154 972627136 594475913 903871289 619709090 995028346 750419558 950827867 43523000 358342798 189950343 352338785 175719668 643575901 332929386 454004442 751065085 827756788 24949323 177600759 538181455 703548870 893749763 984420145 378205365 426013655 63600262 469261333 345055779 513374330 744775950 750427095 496749217 571138343 817476288 943822900 124988554 226292359 527876930 785260952 212422845 819735992 411469059 633040014 779786178 849830231 219168352 776616401 438258787 600202597 958233802 967817536 877620416 987249233 651295862 724409621 990788096 994551002 905492137 986856475 725159546 742261903 255747286 431138106 254314370 468818388 733466174 906260864 475255507 498705517 388910703 868419911 683822611 686911983 959901807 996507330 155697275 633408642 893237836 964348477 972810603 995457851 153220358 934765808 592275379 978561730 69993552 665208851 126771807 886059462 840663753 893395655 259327491 669445759 819046264 917504742 103236961 348881262 972635898 999786164 510592564 605528439 454577124 889482869 530843922 684544044 842672517 967096788 327787385 584242221 83235575 203754344 735369431 916630296 677173471 800904854 937109829 990707528 554591412 906234352 599296690 743598671 501686282 869770802 721306285 846936167 406504290 904160687 125608967 594500500 662000103 701264250 440457519 798779370 809149365 949288588 883313657 989791704 916711529 996301571 548718483 783650766 579763296 679051213 399839487 522540083 777183704 986948140 727199072 748960182 377519379 955460111 739714530 934180263 85659141 369206813 688738161 921777770 400130955 616026387 103331645 717096776 629306794 752619756 310895201 528839706 359203817 547192028 364771555 577471496 86881733 613941235 202192366 550133374 991356389 995623374 238967320 717227597 57656205 904482112 663274650 834460158 819973988 991701353 667079333 996141233 927348145 932757726 671276325 775614583 486550400 875395455 520244867 903739415 422982136 872094580 557916273 762105895 471176027 770077112 496355827 508130070 656865849 880832487 429359331 933395394 965674653 998289618 61786200 795258900 946189923 962842115 792187367 994966160 731307010 911707911 546860784 687677174 134278428 545594758 80366352 628443685 259746084 432248230 453288515 496461311 308216469 614233005 931378579 997541940 30429252 737502522 156466021 216228068 924862404 956043003 444904398 989303064 584253990 689569081 136231816 796171822 727695036 829521989 570908691 870014509 783695670 784360638 207948390 571355912 177923349 765373182 643446129 756278994 87651138 345618925 176784524 748582838 71303021 83303777 528671561 985500680 414677110 692284735 831944987 944196341 170826705 339707947 649641092 655153507 424884389 445389973 449789474 911777182 468175344 612583945 966552680 984230694 971847832 986704173 830761403 859416460 553691825 844192239 400382695 846484486 964645657 996584759 302650018 417148845 856899061 880433495 803506251 945740666 255171496 457720147 173208056 173327397 931679302 960247798 95712130 666759554 363353034 907417639 75972587 707086534 281941204 780678366 55422135 662488133 143781274 403671388 813920238 876248855 427598536 660282174 770826513 824175267 832415214 898193940 557785002 934018500 261483906 404220473 199118222 267415415 162916476 834727431 607680954 800635914 137924288 357032866 413583250 811114238 324521087 477097077 449188014 496483157 372620249 577559831 617781890 666977336 506444916 587456926 685928327 719370296 688627839 916899290 799546102 928714585 758246355 914681057 250921039 569130574 43469184 45684076 355938010 968928473 998315135 999686438 159787196 500649271 164036132 988014132 15367739 832136810 315431359 684458161 734707349 876439336 424274864 750547393 350075648 937508856 229405239 273838518 343792874 558758012 106904013 434737073 62848678 882128077 79537799 354565266 661486693 752349885 125688970 827352267 149904369 657537401 537043039 772028473 847694577 872715736 345524596 425838200 450816915 457400021 637947062 720988845 201866394 434248001 930125624 977115557 513419865 891943380 985195273 985940089 162234975 184298398 135523103 602948517 952301357 991476575 675832202 783736621 172248106 302209482 305993261 699573344 255189685 900178919 285224557 397001876 426512764 916736270 105063232 108668846 287866586 444092225 86073243 210950946 584504338 700952432 435996238 947057197 492928110 524354494 728787359 948303834 354866580 717695972 864486841 977823464 618000896 647220530 135976717 480655301 728918342 974822723 459743176 714760422 415558159 795583722 331767448 413349567 333322022 603366882 247677200 806278844 450184777 844693281 494285257 762495164 442335527 937896161 143223424 994856021 750147125 949702735 196188363 245759057 955804971 967982444 244599463 353070720 382482385 799049344 180982931 183351380 631994847 716016311 442765705 922941295 671489561 733262739 762022353 779095659 605800534 633673931 665213024 874045807 840380873 877363381 324236210 695694378 872324006 880914054 764004712 977747133 949071522 953110988 680370359 732257461 749146521 871751918 637974388 675421451 78296976 381955378 466582761 821376096 575906961 836679371 938643638 968380044 174842793 462564772 748241270 765067067 423921356 508067114 810069266 858272749 345837649 419699194 278855485 350100882 926890790 959985645 623733428 711861587 488832202 979426041 438854896 977698968 390067020 615883263 676548257 728026049 630421644 789357065 864566792 942165417 977115840 984304735 270393607 526802022 104593426 496390610 318172229 523424594 132235576 646401946 619299381 686383159 820056449 851020783 908543775 971886324 256511541 310753368 541398099 986191758 253235423 307395639 328598715 432137636 19527224 436158687 448704481 911908561 441634556 714396446 741535206 998781517 365113268 654393850 888159662 916597237 842599487 950295149 535460941 826754778 39469494 891776094 764566714 949405821 528253832 671415813 406174663 581635753 624660825 996719929 311309025 902154901 739853495 918075058 22351164 159980734 604338275 626950163 353852611 364312704 487614050 550549938 683340817 919231105 690288172 902470995 684101467 731154586 619699719 964590331 898580412 934385335 727602989 869185870 822558513 938852779 583465829 650073562 425652688 917559939 48292568 393464949 768452120 832388554 586606470 839345323 513480605 990265717 753651674 807115555 125349927 711556385 177327251 618630649 668855901 835863876 634518561 854241394 432100834 799033429 739536757 801726187 803883773 931761952 159208205 376057421 523461932 576576567 327699257 618011813 962911792 988044311 832701414 866444663 843832523 897188443 199214446 300903337 741388302 917467284 218709529 853003908 590431548 887005506 439049778 575935869 378482750 851338096 941975732 995768469 663251379 782384498 293988812 752011567 963911325 969924669 567660021 952419890 16217980 567193708 648391943 806675253 945395623 975870587 244022335 819232876 423733882 438658134 252269601 254831191 119045934 925736135 679605201 945681079 285465397 581100777 826451737 891690758 94390865 914311652 27819295 405714131 534407685 592327692 117155624 273780355 493215842 830917594 791619427 877398344 469168860 818784814 535014729 735874002 915612143 956395917 483654610 829931215 254578812 766301823 216778959 690930660 964621823 997727636 27744349 637482816 126899832 586729797 407106197 743887033 340368752 879456077 20572687 293447205 563667189 649643914 617481372 695340020 781978194 929617974 795192555 985090881 969045393 994620679 458444223 845439290 302131790 503609548 899439545 998431687 603388602 920307340 281317138 991431313 900708615 950310775 881369982 894812259 476427887 803056591 822519803 847646942 405383501 575314812 252954213 621307621 158997470 379859947 452883763 935814217 347117291 949680424 580323143 792678725 230416430 695210526 911662442 926484683 44401547 164301949 135749597 686520320 679380126 922350380 511989248 840469658 545340072 726839897 424156228 810085232 840041262 850430984 122646448 845350809 824329111 951294083 171993470 518354860 393959030 729226342 519849771 663237082 465983916 778372785 39110881 460749441 276803580 453134664 532930768 828236211 457854155 977354990 224709464 953355524 481921203 622719068 164939553 682144271 885343039 993667265 649871358 900773204 289169523 869266985 318526112 952341578 701597513 979267670 479703969 720370979 335739633 428003664 442491059 798900706 497520614 784792291 342938939 772083919 632573364 696786532 196136582 276218479 12010765 199542235 863831315 934639279 74265399 840350769 629211024 889271373 785739755 964151851 118250490 745055313 786774763 967803772 905886984 979393720 240367115 885491060 750040039 971351451 720321677 878485799 32746406 833193389 501259000 840572688 915610398 971526752 496259380 571572972 815431088 851404416 133035625 788176868 700419523 824869049 801504570 885286851 769062802 928676914 653660844 661197653 454655079 819574034 25449351 954146045 225642808 880764407 472622036 867955620 251556792 760293431 877500214 962613731 459119578 765334660 628556728 818708881 525093859 777998270 118973208 393145313 476830270 527865894 969584294 982012297 578995417 628057695 570825145 922269707 619869634 978806303 1768138 485959333 921207098 947282849 168423590 380100056 999803842 999827770 464412878 753131911 74632656 878028633 14497513 993958472 518709944 531004621 644301749 923826741 525570993 945086751 309298324 415668477 7048438 667567502 545623177 836400526 825583034 850736279 841056477 860933771 312564603 493108237 469328832 959518205 867560766 990543580 993078970 998562269 50975279 710419482 261458594 611434257 514577290 999861017 175683016 274559303 997795387 998702326 723755812 736908338 476268301 892315468 859706910 970029634 665877595 838319101 103106320 251440457 248843504 685855131 162483645 513608874 816344395 817183945 166354639 821087235 955248990 985931845 370950045 935219660 551410456 683521663 698014980 990960858 711715872 786277352 147526452 758268772 478388146 864864736 144529311 164200627 226274224 948381618 595845595 871290325 778531603 789539810 639147029 924394671 912505183 934989756 452429516 583914438 928278727 994507105 639182176 820396968 584614130 899196150 606543831 832025826 492611531 956365979 511605460 697647846 364583221 542991201 272296608 465963425 637440062 955936124 563126459 747606415 371083719 612148720 887830277 992789209 32089046 525897710 203690266 791607953 214730359 719294530 14487777 678400126 548854402 610303504 354292453 670206945 423058166 434639563 750526160 836664038 663207675 729594795 755394885 862933701 958009965 999652088 261504116 555475354 588988507 875428825 351306817 426205477 765781410 982741821 880644451 933023436 926934237 964431768 557405762 595416375 622947103 847437997 260736065 836241170 274915612 670939296 741816379 871870121 815049095 930513330 98146691 441991445 541481038 980918039 288352485 702967406 227532583 443019197 820380894 847841447 495442017 829111194 910621309 949113507 59376285 81540286 71171718 480786228 697080113 711165573 715283231 797951349 17711740 697455713 872925214 879433510 436568968 814815248 827409694 867209592 918616690 939084100 450946331 525023716 294933807 908709900 104597154 142926989 808179631 971877327 701384382 968903398 388581992 707197201 492054163 905136675 113823017 906774510 846429925 872743310 775376455 833654925 23754023 49229011 808338532 985840766 711430341 750417164 294821647 308497712 335471460 513199002 551792370 916861973 54350027 751298356 800241510 881367372 99880733 917195292 436018294 688902660 738641841 769984703 911967883 981617981 232532474 894987830 632176080 865015612 654241563 798241550 138269594 766883853 106340618 353545796 969024886 979723758 1005355 395837022 237279009 284501729 733501766 791985254 527731744 976379565 2374858 142324945 997056967 999551827 675929435 836860294 358983758 536074064 876867643 934381369 567705889 966000751 903022222 914604435 850347190 947596644 217824775 422375434 423171852 508707974 529461796 591454525 893698926 939496710 964032066 998312688 393758032 961416183 184074583 533194155 630616008 792983015 860808861 963033019 163438959 965701928 656078624 718329835 319942412 920996854 522002875 799608904 573253796 590075454 188867612 335710387 240181245 318124673 135558141 815996771 218195704 531474662 676848972 732540463 76413557 344483690 470574925 659711423 241779470 557610353 950008486 977506289 359894538 600839397 6009469 938113270 185050841 187103705 290001098 593524317 847085927 853933883 777663298 949063662 742030237 958626545 731005119 750870466 149951678 975109321 319541227 997959534 607684955 942753914 676508214 809425645 229667886 695621947 171887606 996404490 248398230 890458748 647992378 825465104 503109772 811467515 897492560 938161072 988505688 999993922 439636824 632468654 774771130 999476905 705172930 990103668 582287822 979034357 875514929 895739985 922699948 956996252 421820834 980864073 381238464 633116284 224722311 971919877 855829754 990302167 468504510 875524439 430975495 873975311 486109689 735718883 672370020 947780710 274954237 649255271 23922608 523191344 266862079 917645755 840551153 927546635 973796183 992809382 839083191 894413398 339168402 389313006 351916169 630199178 832636870 997657883 457678040 500145594 823254472 887061071 417898319 815872399 924783523 960490458 498323966 555325473 59697070 757564093 392038782 428945000 335131023 621783157 285792710 647606078 833548944 909831745 644481290 827453844 47022025 747088331 936083554 964939236 213543310 891861673 626177889 903458865 111588845 656154523 867595763 917932324 503410842 602221869 930345402 947413488 953965380 992337534 251673276 258664262 732633623 845755093 169786510 809733058 722124063 851617318 581602850 824505340 366753370 915625493 406932343 458270296 494868563 803587908 81697103 860885691 448815220 581186097 430571355 779677433 20155487 176103615 333365456 477723067 63439882 408951456 348241195 972276438 905729199 967528108 337457483 694126207 286536621 844437560 92003439 258631843 43137631 875558200 261721530 670502305 979925156 991574968 452938290 524385128 386201250 650726936 745378637 770026775 521967655 802237053 74832629 369525982 245576548 555777400 197495138 988246386 645083908 766547720 786919881 866428969 971736137 998012456 120659563 231265012 790654798 934971026 164237160 557066730 617079436 896545788 493773883 865535814 43828261 690601359 3413027 517776252 634679105 636651620 73449946 579570823 701790690 898712086 330814871 572610317 638502100 936181428 446006441 837662617 479244938 527949854 479826081 828021945 143671321 599190777 513908505 600392741 379130231 557597153 827305481 987267269 813733148 950903828 800270585 805058362 693155646 933158679 65806609 158362398 179247665 518041592 418466779 874022681 969919368 995396377 822770013 941612972 570781689 966259769 859728414 964915861 468540850 834993294 531377864 823617219 814101513 921484062 201294945 846048711 994985245 999747742 311423908 654753759 132504561 861343371 806885221 938689996 376692675 548558367 964380306 997013365 163291406 922295192 611053843 993211285 666944580 689425748 914970416 961886721 797039467 967395087 876050978 914693254 297858002 454671563 985264710 999811916 188099194 216105074 526269985 888420205 697985060 883330750 669597248 998930134 220239033 680142206 11720409 616189686 866641387 882861982 565707112 976756666 865007810 959735573 30785480 999437729 684293470 848820055 708330936 986139047 206184045 226900443 432480892 514454475 521213842 805752453 529135315 554668900 66815321 614559013 758390268 992331355 341880935 622596988 38779881 705614329 878307328 885699627 896731044 999387493 315787563 472757722 697216376 729060878 768663323 843668172 435506232 527220963 311150766 521516598 103268579 151012071 756395219 881724885 213599238 692040395 648156809 688721459 206052356 210855469 168647137 652811505 859416873 944430473 541012524 917630328 808767584 974964789 973049430 976818925 865227580 918747797 431234393 860567211 767496497 824306503 793807852 885677133 718673470 883115287 975804629 990395161 517557736 883988854 862300712 957161163 945238126 968139971 436779788 457606868 342507909 782225800 594983688 871111532 964118975 986909497 219033507 893637985 775050390 889941963 641834566 784799416 164577616 617447198 533647333 838989822 471567353 516063405 182286322 456612414 483918574 522653603 569589038 692887696 820670153 919216232 822396323 970441472 342236563 780451792 117194014 745672796 617887636 713610603 674073201 766742585 370117971 792438818 619228527 779543761 884171153 911601238 863892894 877713002 996622301 998493731 828182889 907713020 731870224 777084296 515300373 580455852 358564029 547137684 401285796 743910860 47225146 249183891 408573872 573678544 916533177 941684819 264225609 657066782 400498984 542637390 829596513 966148929 677510567 792899064 892097204 936161223 411017474 947816523 150265659 776941548 977965715 978113571 420834988 962815940 478174145 614135515 472377903 601722451 988109978 992737542 605797854 618180897 786995479 901877311 551965820 662167428 622062785 860347658 352272220 591347305 193693982 928418199 753560731 975671185 207158470 248365594 211959395 495419159 493026831 547429132 339173291 725001016 115419998 283263502 158888773 992352209 195739710 245807055 83100253 625860032 633465047 911630559 110510511 815957442 549053968 765674248 325610387 464167103 63009439 771250114 651929000 710236410 441032243 484347748 825888657 927002538 914862473 966017959 350609768 805414161 857925114 973139543 72326342 790046751 281328210 376373675 470839216 616213064 802379254 882154609 862782288 911631444 390333181 557311742 906957338 985576411 690279954 790975009 796184982 939984778 834321897 847834869 337853874 605309698 396028672 489913833 73688298 698392518 700963303 842733288 279627330 374104284 737975214 801785111 900672553 945804074 891913341 901677243 207732412 332726014 62360286 753096423 55234424 358937262 979409247 981298298 491136669 693000665 710930346 984341239 783814992 884022388 734484003 924697807 328844944 924909331 407478552 597376377 63028597 529303487 356505889 769409046 740356921 893866445 997937942 999402509 250893618 322964043 516321373 741074911 688614498 877718194 689756239 796542811 944861655 960905190 894475787 955856929 649763103 782801495 944220329 962884321 750117556 867441360 335710000 914205897 591975202 709600944 851942144 948757199 498445441 543746836 289615235 740724045 759709070 810713526 807160725 863031486 421976560 617677949 712864070 720476967 669018146 728719061 292335691 772443816 230949258 294743456 878198977 962401025 21596141 438090752 98340716 974954446 684519151 833311996 800632065 983454087 101471810 538782900 778929129 805182509 107329022 937803697 126000870 669493096 696916793 796097408 798772115 856717009 875558286 899961980 63630294 978517819 504965084 826233627 96830054 198468314 52506754 818462292 257816475 827206256 946409349 974337501 34221392 549494951 991620919 993734369 956886437 982447803 172950180 282818851 44948984 362133582 592595025 777799773 115679856 634830985 625744364 972905729 248887364 528996861 962667198 977804312 258185881 600890183 678927997 801696749 560984553 847066545 125717703 838940460 761279736 775640632 682355073 706057366 496158326 971877736 80787337 815771869 760746696 918763769 195654505 690925398 709985341 931881753 561854908 924772938 59623478 873947064 876990832 998152035 846145795 951564006 583711556 608294983 734239951 748413473 528988338 552614318 602947909 807460340 973527606 992909016 907790457 991798924 497382325 859358525 437631961 848979846 287151404 288252943 487337145 585099622 495307820 655057795 234961366 425113695 245794640 500944039 189156747 667968029 841054168 885317629 487009296 513189610 730737888 952238680 769099279 781725420 520931365 679056446 283206037 654725114 150093800 589431942 155961803 530321652 542022853 976667291 219262441 400602206 416556264 436900847 680840022 854570946 909656247 911294082 870878588 977320782 128441514 173070623 143840950 854247753 70436545 510846178 914533730 926438894 893088428 943946744 930330156 958659541 792661835 965376554 996360051 998627334 631987242 682426124 467045565 647793276 505851699 688514611 949047117 993096118 3198622 95022407 334314580 735972987 210495297 900025732 582013080 686662359 707559682 803633637 759980648 761055147 84151186 706852759 906280476 961505153 520907633 643141691 118960510 220126022 284524657 949516408 439778788 788457710 221622222 714238779 508876136 807237340 957409999 964330554 477425420 899520483 976258058 980491766 819073265 832094055 232843252 737713647 167163049 728382047 77218476 114561319 277342148 954148956 822526070 824688103 440162898 497026129 426406602 681343666 125350603 984527363 601083740 701577440 36024575 433466052 369072421 421191776 539246225 731011559 906607141 985690856 619481838 957559578 659536280 770509422 68184153 819952700 13920633 973048217 369059740 852806903 681631097 856938385 326982922 924709937 491870334 988952588 257547830 993897130 135903671 235240279 68547775 930077595 232662962 910889600 14318210 947745930 61607445 944458742 927594609 930974088 684752778 913317350 541078615 729819779 370254047 691350845 312275244 783319779 866846577 965630004 794255990 950293748 274319269 794629964 966794458 981432490 931175434 939934228 59023982 73816087 56735913 437195921 365784497 871652597 15753194 198428371 302992654 713469282 993192843 995771512 399888428 824810169 412152463 851348890 734453968 830704003 840174660 856525313 902329435 941310868 260802474 651417546 978720920 983529540 521494577 532685113 103629292 506559338 867625264 879644428 815310768 938249011 579023238 698947397 109612589 624009447 449768977 638771508 824117148 841367170 943633980 967581964 447962071 578968340 73512444 478995108 803128404 946581011 269570731 856641655 779739079 928984029 505726321 833497405 727762630 784411767 762279272 953073740 59616209 949982062 679637560 695388328 121589895 788566788 534622258 830923734 75583582 594216145 385638165 530605540 948613076 960674846 598421285 627307640 583637737 803365507 47668446 545596179 910917269 983135936 264059060 547145455 529696359 618945450 571344685 747000017 388984604 872529424 915113371 962111983 442891041 609090920 27789637 895467333 807229749 839411598 715159012 933030280 147078681 602551939 583227928 978031120 506851580 946552472 661960059 858675602 486817016 837630756 142395663 507151519 967627041 987424380 516835532 667171020 824993693 874775076 91033830 435195981 526464801 742102126 43330988 481440374 190909693 194367336 287992101 742741851 9316058 900321419 517771609 981806646 909822934 958869898 211525678 574277476 838812747 873176668 192699529 411163958 760395173 916223925 696772239 817871976 315270724 636729725 504203927 998535228 192918261 803468186 587027981 750480363 782177211 953971088 591247803 817667015 590371273 653450177 426856447 606046623 437430998 720289594 57009741 296130271 226735205 514817410 574751259 584142781 491920255 733118325 905549778 930162613 451543640 899837978 569353236 787059926 758204620 889457300 973616692 985109545 778841492 887540407 605137724 943159558 191073447 306995958 772093401 868934085 232101116 336427067 397984720 753898525 986792846 987160941 87073294 404224439 933526219 938622317 147859697 740790228 606896284 616348394 147858674 662931673 224318249 889821155 110474748 544447433 443409524 523182595 934089194 962435318 845715496 912739811 489437575 543377787 911532330 969181881 93268047 230426302 830437056 995782886 319942077 532577038 445853240 567736091 730813785 894970383 804880224 884416723 551747239 930791825 445914298 996568968 51101317 563384037 889881033 942397362 148528802 994574371 861267577 975914895 841964095 997536580 200044055 565177006 611929937 698881613 280658010 914612305 68510116 476613145 392484952 459264566 664330877 693758576 980252815 996835969 802888235 818795985 477303091 642502903 198632734 700300495 52302563 494903393 59283808 415184123 697525756 761093928 592090193 758110517 741225076 949684551 772176327 876937469 594140215 897701403 454854813 529916417 382235373 996500388 841953802 919237901 243967114 441772502 409250231 847372672 750395670 803551929 261978111 394427798 54885530 699649920 912636453 918866209 701498455 870735468 525583327 720691191 714383612 837421898 947649991 997026419 119289270 812560679 548381092 809888473 246688943 519891402 225970453 266492940 484810012 771535387 201772599 446166497 178314415 409518758 169445819 726814722 577775550 992828048 699912021 839813157 893381702 908748522 753933697 772422210 673133326 875101108 477579110 514844981 388232718 504078670 682676665 910061775 670639420 900273104 351825164 443690021 795207780 858402113 391571851 830843466 971639039 974070875 23089982 851341239 491751383 883641085 738369962 791184005 666286825 975811029 878260658 975007505 134350463 243062178 768372976 977141111 889404046 989867422 768018381 980425462 680865858 718014317 424717424 932296171 959993435 982703362 685015172 920668651 302222551 467205179 788588793 963347333 646127978 675359627 1307780 524192947 335758290 473311875 708353729 776877261 179313888 460619175 500075688 667785323 606420923 606962233 607320569 793288012 110744617 288676254 713353647 978600080 397192047 749922625 308600113 580777130 472885666 705247486 15724533 563424005 603632977 985753124 254126495 391707973 120760531 677858717 294727438 890539739 714428162 822538252 636006485 646144719 216961873 749156057 426994939 452475046 181791731 224439364 62667196 888665089 411840095 925529079 439975484 884732808 381605257 675296234 6418187 172969036 744301185 964104797 29157189 138002887 68801823 107316111 515222837 883343734 800706975 914154104 142456781 425933435 323593757 915606045 680343588 959052956 275276067 913964440 503712923 885525110 74487530 567916358 247559421 369427813 62046202 387770966 609212640 665631332 543669669 555427245 402746249 441752894 605505405 707583609 366754549 627182672 131216469 329563298 937691783 975228722 460479902 565627582 961829725 999209296 494766389 771920123 320940129 546496386 237477530 498594142 38807412 111997880 397206318 582437138 332253836 452902716 60821410 436326220 479732263 568059274 62891137 922368562 80741529 864224487 493690288 521261896 990997625 996464226 890523117 969947186 878099319 894315117 640998362 843140638 10716699 660239187 94954803 610982234 699035711 969244574 409984078 583620111 638933973 987848725 771278863 825865726 780948277 876273109 567729553 810397056 517112412 621491792 928327682 929511321 174359439 617009990 273311704 648948884 501392534 726887953 916585681 923859651 296179501 353431792 750172748 797763202 327521487 691994851 820372393 855492639 443073223 606043137 336409605 874399922 875443460 923545341 494199755 744814848 685611896 940237805 988271414 999320225 428706656 845347908 993793233 999181814 620579925 755205291 133762916 338989167 542252671 964854892 727950281 772718537 117098391 341457458 374218931 842720175 524249321 673129432 550460008 903118721 471505493 781282664 760920164 928581956 965108578 998904858 86203817 198011499 995926125 998490832 758154151 819328131 243421364 610913509 152190762 626893317 334422925 445241544 45943217 46762476 201773778 913608309 937650511 990825618 721871938 855797112 774336924 785746313 948006755 975824535 82975493 813639043 47614737 903950346 214951278 975580627 616950366 878659016 905016026 916463277 682762402 690982681 153261557 394853771 280147955 304422653 185126068 602186741 531543693 783231409 79485827 100447242 377484665 972836830 610818324 768669626 877955950 885737523 56371678 901291704 67415289 573256127 504460199 649015931 318677180 989830220 557155779 825369266 572685106 695748968 394622690 939029699 958629809 990114427 156690939 264677900 79268778 259012521 648455199 688421140 468534492 769805069 124829051 939246984 510940709 798215267 175012030 448779097 213943969 591290021 611005267 870618615 20302119 504436264 9563259 595285746 530393169 544215758 248643032 394185075 356387173 844859927 480283925 669136899 273311799 474020500 939096102 991427406 760428177 764844056 52224392 507968851 459686653 872225557 813987396 974736868 585761594 720073956 492843637 600190581 166058526 534364627 765529744 934106627 127294495 368820189 714736576 861846110 774228044 948141374 454434595 638670586 984951978 988433333 299930577 633992385 413477367 737889159 116903090 315449520 882700794 984220840 854422235 979504172 129799556 663339646 852224460 923943079 341894527 884197126 827780529 942112943 551792470 759683145 941622769 989209514 926442537 949521498 766351596 927279005 207380027 645669534 450094459 729627213 985051491 987622420 988463292 989705120 27945915 879980937 647009232 972692600 167880811 846634097 835817869 895379520 540578662 817775051 24165714 972968784 591350861 913376878 594916680 830539235 821769647 849490428 354458479 509010719 672987831 728114641 862776332 945856430 819190006 927794868 570529442 686651400 629936581 888084723 412306663 724370601 817359788 829325158 528842863 714760884 117225121 492086156 855078155 868227465 596968087 768767251 938708942 961358277 79926412 717675754 678254997 880874554 566070378 919109645 845158180 865056867 239931975 667592925 289442003 612676060 299915237 514213275 807200439 913468871 752682195 877834164 866106470 978414397 404744180 450480007 853857685 981176997 314741202 779224252 690872801 835816636 426876776 956468234 181765545 989199535 423523156 803416336 20095673 544153531 331034442 882096044 713946439 893596603 437872994 503874710 749769117 914372768 672522197 752616375 204516618 321590351 48539009 865834116 772659769 964280267 769109831 774723892 14199230 324674557 161154692 752108699 91968971 386083001 4977437 84790104 900731968 999550375 749481505 883666043 818417924 854827470 25104405 214043322 538953920 862276377 710630124 912988012 750677956 753319737 274799001 695084657 112653790 169788067 316957597 621417439 105358307 628821060 981330657 982337198 343861943 591395496 344140426 976944094 913703575 995599281 604950835 945959801 1625008 481079518 713654435 799357215 819049405 926574505 609736741 870848299 158905295 418935335 512369998 743379271 599110664 970700208 583751495 965209277 194838502 643842904 641745770 664080114 838419092 991921223 905070498 957612901 764586256 766028699 829184970 836509482 320348264 872340667 798335479 993845859 730311304 849930974 563982825 598299308 459852321 945984751 957588664 975614184 56698602 510631034 543946620 891094513 488456339 964462100 392343243 761758493 371277853 805756718 554339760 711371794 252288103 726199765 802165252 901205371 108291004 374374940 784276376 835508568 725235649 964383898 386975887 940316431 242910594 783695674 267972840 283212449 620016393 651084316 739856515 753345036 661834790 976026416 318829914 438603467 399948981 932557264 202581417 921844745 855841852 868590605 997539815 998833808 945814305 996937347 484837749 574987703 685408790 776437722 447448409 741079081 878645968 940762568 211376384 420744296 978658291 993327731 906935148 939862062 812200111 978959150 280107198 788352754 434197551 544087088 352359182 383070976 719932029 839375994 613683218 993549577 336118153 882534933 747820542 939287110 877565565 992659568 689412310 713027529 531111143 726252360 301443142 332051442 878621146 901003993 788920491 822070346 730552399 913691656 366520733 868612813 936729012 987147254 568317534 913859439 239619418 980854515 983786741 998026994 393914612 829097690 29426918 322795096 11789183 822182670 403684118 606815584 250297614 578640655 439490589 856705728 332134886 525305749 129206583 654221420 223369534 538805674 52986969 74592086 373950516 614329017 897785632 975238957 556078694 691543058 714883435 866793409 645638948 914549277 162068307 554164384 92871477 473622938 844939441 948075700 699018817 758162938 169406631 986432065 405895796 430424672 600941219 891753003 587334092 592867523 746102904 972697980 995503212 997805324 289398176 960824375 956352141 969658219 120601280 918917352 968622143 975920294 450827091 512432651 165180784 189536608 600671054 923196919 957102785 981457291 457150104 464252775 217246871 403974047 506567285 529809083 974635410 985854760 201648319 357014853 908124001 991223765 706018469 756671181 539489295 924512925 901629394 917207550 945648421 957527468 858585364 963607196 212096820 696562505 375071441 573209005 86377085 906459168 166266297 567680525 125595762 342048372 191947296 983428966 284644407 639787449 689144775 840203822 466870919 732288628 83144881 372263060 647867653 898817938 2897495 143858482 675994916 749132316 305410484 928127052 33530837 179751163 956080928 960581100 398759285 581669353 33944023 997466167 693490715 908572975 421486118 919637416 898254467 969473033 134417718 473328846 473334530 826690234 10187483 694784709 962773458 977424508 974004137 981778322 368584056 789510075 468794708 714580045 702005337 832274534 887394363 959136853 597102346 963110082 440581775 890145933 475576446 853529579 904401212 919727507 87066561 511868044 943553439 976614149 183774932 790893061 967664778 990044286 877523310 906525663 507687445 932676253 787117086 972281515 420651078 555611735 645451243 986602587 800521806 971034943 839713664 845804449 593344604 989737174 159728546 998461208 53278119 914261117 718603136 868059375 432953577 755945532 361449712 648392908 484941099 495732288 610286896 782161404 903819737 936762489 653350639 821153478 37099392 340264585 96953057 941208289 951194593 999449231 625174630 692699800 526388969 732861880 158098839 799599483 921734527 941869924 567819078 647314884 646921632 810213740 288042838 647715601 709522013 901524228 135557529 902081793 990164956 994690247 116432267 124607686 311370351 742201828 169150801 767246092 154489973 328293713 424553289 575606907 94476934 676980913 429882441 764358034 296501371 916876934 430948075 618400223 247684804 775154349 643491872 701353514 23584770 597339331 388601281 626989007 111775310 255908034 580059490 985519144 657998154 691894888 994725779 998753085 589475370 861101497 996598651 998013479 780779980 927880486 746446251 769481062 357512680 596815782 460010751 947537162 360387303 507530633 272608212 881495387 370497641 886239342 554349486 859662563 365009759 637019379 996070415 998369509 776386638 905063488 967032277 997127377 840562302 968536169 731004533 950595983 509434565 718954263 111652865 311734771 466809228 556172415 258940988 411807911 536275208 792053963 835635567 951656701 673701232 919577407 654431244 715073838 401053234 599228144 874903402 890241485 366373541 833799735 341987741 771776580 708453083 789948044 752660633 864793196 178267504 603195379 71303720 560142627 541584048 775129867 873088836 927190870 527826383 534506174 305193659 582685187 78684437 655605032 170575050 528530413 472786884 568438463 871402112 973129546 947812655 966753847 128954041 766319109 921714193 970418960 808874623 862921983 829607744 956169262 676547408 965992525 443097780 534896040 69409463 627334886 860877962 950201671 281226185 545426181 323456592 480277304 137214902 220425060 518042209 888865706 670340509 955192156 656304262 845497552 351135634 889741152 893590908 974862084 8212911 149696166 687496685 934474464 523813659 893048070 156898432 211444893 10997474 923230205 653900387 741058107 914020041 918109277 494411551 811164867 492771527 969979639 24777844 757912555 526174051 872488729 339772074 637548611 334910673 424204588 548567435 665620637 72849762 984806638 700911195 881073096 282951975 926125144 254015217 829510123 763964036 780662395 295654681 606402726 286662039 634411153 237666696 244853107 730239992 835216071 327855819 605623866 368651600 865041573 180046374 443796046 534254925 753046515 804000111 996682638 355480837 557396467 828891466 920258323 656195501 754159569 414055681 631757490 811429582 936116019 359789976 833398840 822180090 894168827 304053487 886720769 377938347 593197052 30133683 371392215 633238856 768159170 947238515 979543465 932306838 955401749 374602070 711024274 495980620 753044639 882623175 932199941 558829678 616494467 123486966 654521786 594407416 933672207 388343441 591721653 781739307 965102581 726965848 897895191 687552398 913314092 598518079 629490981 4338834 400130073 991428602 997201417 793097750 811046687 38187200 362296747 124856421 379360770 693174584 850244357 671208712 996280976 474653931 872400628 544239391 982089811 641058172 914755974 922659968 999533691 76207109 771832338 266383930 980641181 575277190 619828728 456856681 894268027 748973730 926746243 261794270 441976988 362555825 593037271 84908877 244895492 32840178 884016097 224830298 298507178 439636397 673188216 288668879 568110072 742642752 779264606 560031327 993248685 819388310 986938703 581627300 982466874 923201902 943993640 606643057 998200572 97868205 126922665 719022597 802362988 127480032 929763256 442117948 991493444 460272077 703980981 729177407 790956764 271347873 354256708 79864369 813367869 441183448 719798376 560529118 913994690 291152940 753731185 72186608 231667208 494222707 876221187 273868702 668110557 982240773 983339112 286351882 398875349 603102045 731931201 715988214 727655007 754653551 938002422 238642286 702453279 309825740 595008144 113843949 264146913 703548919 749139844 664040576 932370050 696955559 734856387 824402408 995159978 6938633 174516189 23239803 659934840 216056798 987698891 735571662 816726217 228245824 450308952 17329481 280025661 51987502 878220512 133834526 305112876 454034332 998163743 866457353 994860480 483285753 574608130 75174746 280916349 819263161 955238084 189106600 558120045 9611576 390950177 559766474 737090222 338525716 962384128 697937281 830644685 44867321 194214083 507181597 877065989 235231442 455743331 203042614 512893264 111020746 477063783 980298022 986242288 966656479 981805337 587235730 697356813 241515728 561728644 324211984 364557531 175195021 438478754 812318687 857595716 863409231 873084006 798284744 985045776 50414968 379734753 654276188 765662308 545980756 980909943 904897998 926465987 43658775 261193605 939453974 962754805 381555701 625409989 438080270 766396280 374074288 499699702 982798341 983135609 687496135 770674789 627696830 688177746 102132011 238331502 891216438 910649916 560138173 621899825 543525366 974812300 694198684 817907676 971167663 974461029 941768562 970386082 391153410 727947273 996301064 997938507 682269783 685922786 244142505 623179802 477431658 914693287 753939024 776055758 389423403 867090085 798583642 813923712 740576346 894335161 196974877 392954192 526412690 983852142 999910703 999931840 828674997 961800752 342753886 894479394 332974241 642404643 905979390 946621865 26167553 805922617 300909822 304751713 738264185 950856407 749530125 750087395 499738378 675292397 121908907 859757448 456096589 521422623 84122460 421481378 598636933 889442582 787823058 967342406 454471645 929196181 122614069 356985960 713382311 836308113 145720516 498787233 7368830 415471572 725587856 918057150 111648477 769964200 52186042 821897694 366565999 500686333 202468632 338932087 290517944 347543382 331649582 784580795 963814386 978500079 5489065 813318111 708734951 948426328 534428392 833463686 661984199 733085435 976800309 987183658 834591692 871561486 499380425 827747348 43933637 100684520 147642854 788420723 887253592 975660507 670812700 694727689 300942799 414611753 131620617 506019299 168839179 290878394 794389669 887937894 537476638 704641059 114650008 653812581 176790518 560943054 12695750 938192344 395376093 772212534 782144451 865477549 983282986 988623917 648788859 936207595 814326797 950069557 345731657 513165904 377763892 676957588 215941064 943983313 101527312 835971959 986194223 996828396 704857242 770170788 700484970 860324493 858088178 907272348 317869135 471590924 273227722 865989851 840854260 924949037 211644748 277590439 154616109 492186218 820742711 830852835 8366523 867466775 63757323 824806606 577752920 762036287 514632518 693581419 64825660 139542322 737571420 922158720 391786264 619950104 415629878 814961984 301990374 808571186 179571111 782916093 800364298 818940634 17649663 404337125 469429868 841182879 823973081 962950422 635117152 834820345 964292139 998771707 957990035 981833821 795360944 962357099 791452998 936630788 172932641 693419353 309781998 347852316 606679056 794612672 216379764 551902578 748167640 945034867 38443198 830111094 78750782 191169005 318846920 600197442 915819465 979265648 347404539 749888682 919489646 967152707 227340368 742331161 987482665 990612607 660117583 903199669 831314432 835389183 125159730 745862560 930533003 986040781 326596490 939257943 723545874 885188232 439999131 515945020 54316738 170931555 877844431 963922809 11707550 590434790 820100154 978147528 659941714 716111513 705180939 987071415 736140257 816035628 337321716 495072673 165310743 846443027 484646669 935727177 345487506 347733457 904951587 986579320 855387687 894638688 658958486 981873872 832517449 843224145 74274097 707624103 817598878 915965256 14652319 924434791 880745981 983286967 730137317 746072877 358028979 969381734 210765031 828412904 693667911 731208742 247464770 758673321 370745299 979039101 213428206 820568732 79416106 482238953 660839618 869173611 967985454 991098973 20131748 245707166 914913723 980227504 902940215 999238992 295316035 501467601 284248663 580728973 71042188 649470075 650604096 780783429 45201252 357879309 150530615 519607573 640337881 928263597 100372045 521538004 790551089 986113851 823493220 867463383 251932578 406951576 119992818 277712099 267881517 512370967 739190944 976610196 108497258 474936009 487660053 998818131 450837182 450849339 356486074 691399262 113145570 555476894 644750028 897702000 495816953 790923300 234710581 931179258 599921719 703056466 611865546 671319418 12259092 939097615 195963055 995226594 925609112 980504687 917976664 976727582 562943904 958120625 304558956 485968528 352543005 751565195 4641763 646697209 474623413 789750558 505363886 991618649 706156380 764558392 731466116 813373291 399026926 601635220 3292225 223802824 129904202 390663806 539567243 796273065 536674826 906389967 518719743 998649250 7524697 837339438 840616879 935833014 904391713 966039374 921391318 938165351 170142055 924748097 505265406 878225148 91387965 357594523 257291918 281285016 712032528 732188226 441009284 976532713 893512266 911377207 391022586 472917080 434904267 825549969 23794658 169939465 646767539 881525892 737675885 828324075 582782314 651688311 938458151 960741801 94378142 931659951 729532072 825624864 819010260 916174474 771085667 843913429 683129996 733627207 604652112 971428450 271640756 834284713 596464635 749645508 552467378 991750279 441335951 468025622 704838224 773664316 44659480 120501999 98478807 564581542 547163781 598394431 996198167 998763380 817203393 993204693 580359461 930192149 920938701 944890498 221277374 966371069 707345921 743417678 641278202 732720332 49030837 184689024 861903485 965572836 322701884 987633263 602069896 801011354 329899076 333913012 724368321 811702643 152048908 261865456 527536081 861849711 591952513 697248543 525962019 621466103 596885554 620236390 892583809 905230306 222947748 468022638 704209749 954382348 292131993 401027949 518219683 652128514 41134500 973285497 965132120 986610769 205213765 240282458 490843064 762489075 179553753 237732195 886699002 928425861 902410038 956841615 286872428 765016289 657591552 968066311 337534187 971024537 969837010 992734776 408317523 805329947 878707813 906446466 295850566 473732338 548627721 763983465 662596661 861813332 790046654 796246776 654590897 753762677 687142749 734558579 181911431 684969616 234039388 950452464 671561590 817849463 801301573 912502260 945293187 984791140 853414642 979872882 223808663 570579087 231113055 487801762 722017232 824541238 540614224 816997461 904484286 922269243 711355494 982998030 800756880 996913897 360822778 769180195 557463504 989518838 183307178 453745253 326891656 363163493 71297897 625915711 659372034 898302521 299519467 676744254 98797964 462594694 351184563 789058713 864364164 890261012 203384344 276390755 867292263 892382291 582822022 798436799 329332993 331014088 529549566 807293491 273922738 768425394 486858801 932837471 388170547 403114276 734870607 781838838 989379717 995841147 737599021 895229530 187525749 896510827 732799123 876921717 841827221 901752632 298735584 388960831 437546810 645859239 401407662 592388941 455594202 745316222 198795544 971011724 743152522 926960637 869564958 926351446 812282553 927415794 648349524 768843241 523061382 957127548 944051856 949341319 884776933 927890918 151666212 250582190 388668425 533549361 214623928 826492332 869405919 991192971 600259003 642074629 714959625 854598853 105653290 170071687 465511149 472776426 449496532 906966074 576733915 744603299 269545542 665487678 867483242 977831026 474201758 794360549 418062148 888461208 420207733 873914640 589249906 941118854 749426668 968884742 367097305 974333314 653202781 996923376 767384477 782937751 273119300 945148714 874341493 987996103 661432842 847087273 922310400 951008521 967151859 988573093 596426540 955706238 336423216 685988661 730071367 816843901 164673659 195855784 980125734 990440431 775413399 968447225 166821380 351269761 97919409 174438959 883736278 951505039 110905049 378563231 987971981 992677211 850346313 884590863 835581665 930044155 285277237 619832375 10038311 386761135 540772924 870552537 834780781 927981836 454871936 992211040 363019388 791389964 619802489 789743569 877405573 950871626 719371778 824911307 538642930 616688550 797257789 988485626 980997318 987095561 560706936 902058190 479301735 892979821 155401327 557106751 728410167 771129945 449996503 755902706 565471925 998631600 152929853 595738257 763071887 906048029 588705114 602328538 252426367 798310983 15866857 977436103 896883140 985983239 795754259 888903082 907992622 999256821 637514340 991091908 767734847 841641313 849002586 902795729 767915725 887918565 374619102 745520237 422296792 518664602 372950364 388437043 183567158 818877125 990785185 992551578 220908311 365783600 122729610 236909152 129781088 633343340 721032789 793745267 680743875 945297447 984760857 995602352 225251839 279519280 873220561 981848268 640433832 684506063 580080853 972617431 77219058 479186934 135507071 336443595 896760672 998212715 538122686 815096124 786770026 908664485 571588141 853357316 907285648 958460359 348964467 648811238 732797234 814483456 429888716 718882816 852456540 870817449 158572595 356289794 778226369 992204495 241935802 261767365 100789067 790075716 57749821 78604658 757210750 921995317 805831698 940728227 517933084 527733927 94880737 566858905 779870596 903289236 457103225 652335218 992753277 996015790 898912090 922170594 211195721 906445088 959074954 980021248 22218801 443064307 164106921 471975476 433259944 760949992 702221717 943216311 551872239 597442020 969423518 992990152 722673714 910206757 815666589 956300791 358174575 992308357 565973844 782054436 49023389 275935067 575464537 863614081 782244018 895029964 986535513 993811554 192597489 445087594 216858968 719031971 762092747 879125006 445074395 447443834 548407905 701763357 444079801 841944915 975044880 990518886 852096530 877289546 393029356 435597543 82103881 462261036 15822811 154707079 410909772 558989078 49808156 469291910 924635033 961533878 654298673 959129233 71079528 327046591 503897682 788552502 325426914 712140985 393270344 529139844 503152730 931546129 612007196 764127705 784290374 931526656 735407204 825936818 970984178 985291667 667696919 885025900 561618934 940716000 681772099 992199321 252457398 884947159 236412915 966171194 56462993 527202698 789324218 900628785 724910913 960822768 494254012 646672713 860648490 875538634 788421530 944280813 574215749 630631919 882962176 964898305 605314839 630146095 435504681 599569157 508172132 956612869 101420559 632264835 781371119 837422194 871848423 900395365 575832603 862179748 820743816 906259091 498020662 520861986 105529164 939057690 229004822 842702820 168952044 525203841 381047347 989727870 519386338 945980853 177449194 851266863 78117212 580086058 912672425 997881009 316133703 417808569 374448816 934366615 151311186 564898808 795138365 852853081 508073500 904029702 884838828 923093763 999248845 999575454 585327244 757966548 200186873 518272869 704172025 925271285 132122316 414774667 696066008 849213154 955818481 999092553 906437684 975700135 954558898 961485977 412638603 590518239 132749048 308528487 557630371 727359643 371283399 569984421 831340339 933199849 53744415 480876516 947244422 998344521 848510279 898630361 465158929 502107493 593997081 663526867 418251955 887086229 249512048 579728225 581573069 668916347 957108197 961932454 745777124 965707980 556342793 733628561 514150537 882821429 360798663 571612810 221530190 669861618 883195028 885108955 173644346 742205037 687904831 904215800 528143074 685106344 101549947 604587126 273139014 849617579 29506645 50451414 544070995 594516754 355117330 961920190 943852903 948571847 402490801 509179229 988114537 989313840 868397265 870599580 572167736 763957774 330476261 537576346 614184772 622123244 1151001 562184036 382304923 816730272 223312416 641504746 502631953 687455395 295290278 550780364 721102205 915186617 556854640 960919977 150735918 244102181 493476607 523124061 841561106 973521416 503204538 876544114 532362695 998412266 766973614 873078733 695295377 806041999 320632952 994840638 53464629 104394972 382373966 537735284 409575157 441276625 831265122 937983684 244734761 935498230 479166012 815525714 588491334 790445589 751697937 793808940 683651442 843558097 649849852 811951814 678505141 685727691 532902492 542505319 664560622 981650914 164428108 959731663 103889524 831555871 283723459 955154160 881036150 968225065 124431161 488627080 582011946 899248050 199370463 451034741 564552965 902852633 919043595 948483666 687336649 890991856 494756473 604729043 78848964 421778728 543967634 634192663 947258631 971738097 867435740 925076067 137613843 537276203 133076978 257996732 970678784 997891988 534205164 946732482 977621803 996055682 834518904 952165484 499297639 637372222 910808628 954679168 470090832 667597153 432184084 480384714 88832710 531352048 448690116 640316713 940728208 982613132 616868386 944952532 93231586 344320095 351377688 518477973 895000864 950725393 676002988 943957493 729612380 965316354 886836886 919410286 369421528 947639955 516055522 698819278 771372447 795383837 728020470 884269480 946020942 987565195 38799897 216609268 890540683 920457857 571565873 644735675 740831199 801985355 296448314 718903600 823893193 834797416 873995614 887928353 974952377 978174951 609244113 987476894 138412771 797880541 108256852 143655135 320078980 874450515 233655189 812135036 973523495 996996975 978165086 986824797 955423866 997843792 655426370 893241983 883425046 986694474 813161166 943133023 984300582 992864134 354584207 420036842 36431344 484192219 877550738 907478725 596357502 834829825 307418585 523632008 681539765 859035281 310717536 802106449 417179109 453703394 161677909 759620397 491885036 779723565 629090009 867189104 458882756 906961418 356046413 365714665 994546619 999911045 251191799 611713042 669635770 953429959 711484488 840620846 335039703 648303217 388641481 677605615 363863339 519179646 850886262 875630846 787033362 834391733 344380680 839210971 690987629 975413521 219841387 266140594 658379860 868544025 547151307 872257996 958353621 979579912 649127375 756184089 733781844 741489992 777808352 907778983 122796577 942588151 276261859 341054070 204798149 907357845 796618847 899147313 137971823 451383976 807073504 862101842 800661675 894468528 188580549 311990592 254188804 967455849 118846104 263244003 973056369 974041411 13352926 54752114 426258606 802210220 890508019 955967606 190137089 676984465 242412610 535535475 482908276 814360298 1168722 630181868 331112416 652594871 750461858 795544193 944014136 990479483 80259958 644358898 253381729 603942850 781559308 794145502 847578289 904881746 712933582 731491655 710312708 967373439 356283416 911007927 39341579 432167459 507390445 588403909 118266208 549464755 511018851 915513509 582108545 802038964 552801900 898740330 137908523 910533839 30004130 310309620 238997413 294193249 175050821 485001362 132146803 185476944 34931388 784019081 189139083 211232786 401467409 766017897 148940939 735202330 277805632 460157488 840436563 943510276 809697608 958128767 98221823 255766948 218180076 552671695 266145325 410674809 728951685 781251563 593013937 804346322 784374268 884885513 913586948 972621628 761207712 977507057 912783307 990228919 308366350 511468001 452861535 724519583 316552841 438054071 528860654 678854971 680563848 783659047 482829654 987523655 702583727 885655740 343043915 975301054 805228139 996234508 956564089 996412972 896758667 989466746 28125331 588180931 392252492 842853162 875657990 967966791 597195482 804850879 835073616 912667570 565444300 903952874 658986916 720203344 453274734 805394668 309582405 917819847 236583676 485300907 105902968 717454756 90326182 506876903 38924615 595194003 610313765 735940617 811834197 849661909 147631815 557175957 929933587 937834729 159969207 717686436 948730304 989761882 434204139 471039714 574011447 855725280 441269817 729830768 279435503 882228913 910641125 927774014 99540375 497943729 906934216 956635730 945067983 978596974 558804890 639463118 741807903 988536536 611076926 664561119 628440166 767779465 502491842 927329819 12051810 681083912 515755601 639430478 358409599 856203260 990359869 992505595 452071243 712088335 563808881 673640011 879799807 901701879 97611805 251268331 781791484 928597405 86876240 923680016 493225347 552503444 999098502 999263073 889167273 952018213 220286393 435090587 673826313 940727902 972442898 979419814 988305882 997872805 745548797 861436085 736322878 916565678 986583749 997455595 296698504 856676159 220775349 253054835 286265055 973213884 305766589 397740647 367766905 494121107 660210442 955142062 842852761 965677373 970338961 982959515 359134258 566907831 627079238 647777110 427218582 603750276 442556024 524355588 436961014 893041977 213908483 493436792 774107281 818157649 556205665 604582592 136990993 928197586 809270291 856078917 506477268 904680977 434263639 938680830 612785898 720318080 617313290 928758726 379060634 458669450 326508645 635318430 715438950 830845743 541354896 900599200 682375953 960493844 558382598 580127074 395649492 737706737 547058566 984021685 625207842 695564843 761007193 871423641 579872662 917009460 700512455 950904454 284717162 619769662 536391786 882992790 962702123 997199800 700188497 843187559 154140050 286458474 40073961 952856937 918807833 992774862 839947199 858804279 45989091 911680692 272778061 821894835 31998430 664623274 960200040 976450458 544241984 721738415 984373883 993205442 160835788 379763067 175951305 875176927 997354295 999941605 64557511 738431071 948790862 967724637 400753408 644939111 887622921 937422247 737732159 857593594 748331707 812839183 269564428 995680094 962623261 994098588 127335527 745274888 181347597 693809336 589343559 720891068 675456532 703477910 898801100 953291525 303304124 598869326 347432317 456213605 930484453 978962449 449884190 604317221 93631776 906638248 960368201 977121447 434457039 561312227 421080073 929288530 439045524 960321526 6526167 698642922 474827548 619735835 263725192 713834095 246526715 937968015 57376428 179437509 550387271 965773048 742037703 926763142 813924631 853997033 273058932 466930635 941989009 958584849 989252373 991350146 736011357 902876139 175386479 268253427 587933074 765002046 154524652 223249935 437093837 883292512 369178466 626040737 692337830 869562668 732894106 979626588 210313816 421199822 883463688 967454439 336680337 473217393 15979271 199382151 73316846 317189760 546231331 584482065 854959735 887044281 873659420 978726159 468080663 511211374 568237114 937057637 806575477 838535086 4921445 239605070 580100738 907796427 645480728 772335848 907849767 925364400 137335305 850122115 45774630 539507599 557010562 682970309 647540446 748490088 593140628 839334322 370049852 520540418 605582929 721325841 945647834 981598087 994951135 996275435 134676887 426584065 380482772 582797490 420870553 689567620 49175658 614105238 773255836 777188685 648759937 727992891 151844161 563019438 52543516 90423946 117229042 854612501 922436257 934126418 85591802 128961088 610740056 964913305 678156934 765209651 863061758 923486524 848428114 879026466 461267210 784149048 990986561 995554832 555360597 984277645 919870416 981721970 458272095 498767740 120108680 629697184 979793866 994428113 395563052 915948619 705599030 929421590 469712246 539680556 702435739 776993391 448914809 795280997 146880182 215343539 315424937 894229258 58460824 500846794 8902969 974444568 959883035 988693612 728593279 920999702 95822394 214945783 849231950 857701248 585405699 879818502 946516832 999145185 419833636 895469487 776786083 928997889 618608921 929508349 544559773 619855908 765404933 851179830 693248481 849180720 164269413 608978470 449821888 474686722 440153639 485229761 42536305 93118393 421434709 549812954 493345824 512538850 151421902 659331508 475224882 866351243 615771421 639021264 860709404 969584967 763736766 972927916 28788803 514436604 978777279 987809129 319840531 385959282 98270014 362342161 622672442 803025261 529446479 579123112 872397894 948839045 590193095 785423723 27263609 862807324 995519999 996673751 295702740 732180484 628269820 641089851 705868595 870006893 771982526 821027722 199872179 222908776 291421371 651271277 505071667 575778355 597262843 894172283 320705655 762898849 512295332 962855596 920998848 956422049 847563320 900676447 513962678 897367215 822451832 853836924 934516010 961189521 421077880 721862460 478201876 570754322 79211467 626098154 161462414 390009505 988208124 989259843 788213916 887560971 49119889 157209589 796551082 976767555 42133942 732570596 297634666 948579722 432674606 752765444 345623100 384036309 168540775 416762358 725724588 890313223 241259049 442362800 188484445 910236080 532612297 639701548 345487231 543848310 16341150 521864961 106806429 667976772 514832223 831891473 792115213 841631256 51864755 563843806 903794765 935081211 626615644 681634177 915329511 997465698 952842008 973238622 262118105 774237981 610135433 896983524 178194256 949680803 458648374 458765081 459662572 857216165 817409637 860433255 874978431 888922063 368710483 854205449 409159308 639730567 65146599 513011574 2630447 60815880 583217288 811428926 208993578 735937446 552907704 734490429 238353380 839606754 153082178 413919315 403123628 617728940 44295415 506516669 41111516 206396888 694914808 772075347 441665750 584267348 901110650 961049685 184387862 372416936 663914204 817135384 566671714 747117556 707757689 822805413 973013361 982598224 499824144 622624222 490138252 988533705 37222438 296086035 586579953 973400841 813859194 864203849 316988713 717512739 209757123 908232092 456922949 619006157 162062001 203351536 761566506 841384755 153261589 275256752 737358567 807824700 596717265 844990320 134839501 817096622 933563920 958386820 154441089 288652442 282649448 429930741 804675452 909681830 110407242 379279309 459520644 613867073 485157336 551937199 475829734 880252994 482581212 563175287 613711839 743083286 465168147 467984424 63321557 889936550 909305559 958991017 302386649 898597523 181441900 516930110 796208316 843470493 361638102 867473400 591780928 661719967 206779287 502751054 913219974 972206718 111900393 362328766 280006149 744698303 89262202 196106332 291723073 909694858 203262863 881747289 777052946 964012311 656108792 850970473 43310822 391160987 413183180 434174055 53542176 300401147 60126082 741868842 447004259 630905601 713897017 826488651 330225286 996761346 885472696 964298528 591644768 863047079 905824371 981563420 580348878 785629364 368868639 926691825 335532283 847959673 570808185 980120373 890553927 899492691 318458448 965436482 504382194 556303358 268369199 673305031 426964305 467990883 115529973 426709390 667174830 735769033 994308925 997571580 48373048 201515379 743173227 997873397 854145635 923296075 42161670 765654970 996754818 999304209 662256380 779608011 12967556 716403818 123250276 328783982 933794014 946645940 720322800 732854564 876318653 903468961 763864453 891768137 484851768 936717174 280951021 846786289 443204350 843267002 667446280 834775263 575182910 948855625 357165691 649353206 316681902 499310259 83827241 997977249 521276918 879178210 88554434 339608195 738761765 865371812 21748197 220206829 321035529 383393050 739030032 769997663 20510871 580096345 112218152 668214506 434084384 858933300 921319883 990159683 454412913 492205066 195582199 723713480 28110910 862252767 506254074 910738459 603714384 843419152 819364017 868401710 393763400 751251729 248962890 285058442 219302164 590295720 445828858 824439858 163467896 288630553 647560577 779777536 122039193 313548407 374406758 897551804 748467624 948651947 41590534 626245994 377332347 520048243 808198188 955061858 443164922 701230326 377799552 405802878 631918712 803724888 80286772 686703529 478556891 544227227 429281900 645409906 204733604 915963472 860262337 951433793 476155043 867227183 699975196 956160014 465949055 475700873 909550922 974575194 388517486 566359542 779537813 924774960 774827530 814332019 963788664 970629526 510597941 916503400 909225013 929808480 834854152 909323390 490894189 521973741 576967527 825209639 851032710 969211319 85133209 296369459 405217232 674382164 592206503 843839584 484999792 668766463 57308241 645958447 820076048 867490519 947727287 995669081 292004269 797681070 10732776 160331545 560405733 860781133 117963043 342254285 926062904 976108682 784985080 898838340 209973950 793925554 704663165 869433299 732629134 802029438 69852588 153732679 687142112 747435045 640464606 684908722 879663582 923119054 982159337 993120844 816397683 973444387 885646870 902771790 579629714 590777766 756767937 791941262 339988210 937218508 917655526 940651994 603372664 699148939 744362565 981521769 965637432 988573160 620507555 839902577 23905979 801027172 893106995 978875841 461835405 713688386 917292858 999947683 945414893 950677085 621521003 786396719 193817762 842424481 570768505 867080398 216508155 904644982 361704636 421792915 948401705 965737399 823485511 957535624 522020326 887078126 471017054 683926241 219133756 573334482 962575790 986637155 622994935 847790062 561419059 960721244 1435063 545932551 806335736 843431080 238320679 676056227 681677139 841308484 383464779 505210195 942464675 965542909 205450062 491307418 823610016 839278551 926248429 960305898 495302499 986552345 188358278 703730442 942062481 948680926 577113896 732755470 910156927 912933104 338991400 977743955 134604847 179584442 250878752 846231334 447055560 833525410 491350523 826976300 862172586 891509332 177223614 643856009 590611424 591027391 833950788 990356653 447460695 944939618 29562956 439621903 305232996 575254575 434641364 728907908 228380409 321145138 874395934 922216487 736236523 955800036 107451610 545423550 572152692 637208486 37878571 478148497 990820002 996079270 383271732 487772461 368256316 474983530 974601529 997887093 733621685 881341585 743451003 912839947 928423868 944144966 314845968 708280370 254934231 486223454 18681334 710333295 550261283 688826572 953818529 978823400 993296049 993390033 529032126 619197978 838844704 878208235 795609834 963970276 363353599 593254868 609889470 882999012 512937542 938408282 296755158 855171194 659256991 922898466 865660935 867616270 927758508 971272093 396232608 965113182 115359707 855960883 553903997 635198574 315868935 878506009 402475618 641769854 468894018 676506501 511876169 954606955 4158932 184134714 25038587 211933999 768698775 997746858 125472530 439024924 858782688 909086292 723866919 827185855 131604149 383767573 213953395 799965531 648624640 719907075 209554781 297611910 523154377 991662365 620383227 835346567 96142373 361805148 547830 36252022 112575536 638476587 519082446 828249691 681764763 762732422 821961830 900470744 221943442 846774010 888466862 930184026 623874611 940370528 676817559 833913114 426813752 843537173 680366342 933235792 773132893 968010243 840230307 926820403 638329964 804430544 86219846 935852610 340371662 822434012 335056189 623620501 149505578 683623902 636873469 911857542 423292060 924828182 735468730 767007480 324133520 373085602 434510544 499432553 391407167 809755189 547628203 936259911 299152445 438898335 144391547 159733718 906102758 986352238 575557189 768981814 374293044 445065792 736008415 929850585 447637279 831468220 462943650 710391913 173923512 524600561 213982467 810038925 514204196 536238920 208115601 708833955 444629723 745312630 829763244 966944308 897538111 900082403 919916155 961605307 425793564 911287966 840690512 998463168 922212197 937589080 195320420 296204230 529058031 843433488 351311076 815346382 232972106 798981211 746623680 919921127 414750224 729315543 260902101 780146799 223861638 446191980 196801833 468641505 705770176 981763521 879731845 963802449 542999694 932029237 534168007 743041631 774756510 939745935 188297705 368270716 81816514 420854457 531365894 857379365 185334662 738366841 757476812 855092432 212149144 810302379 785809615 819792963 63647297 304630101 448851555 825105784 88881039 178408173 22047275 667028056 314063124 459984558 517131994 693450871 484544343 704168349 340414058 469828492 507623804 622951389 856803780 966260751 660044685 915585646 224539550 600902305 519514446 695249859 735913083 943646715 286114922 886599874 452338929 772811721 464053906 485136643 353580358 534073743 897349549 944848853 726780371 941933036 893269268 993876541 515765710 926095106 572529318 716309781 417996645 573708762 721183734 754126715 747192699 797239734 186343754 626372091 936299017 971579893 891141169 984190938 885760588 986967781 174408401 507260843 362500201 957212523 748750261 934754813 771913780 951161657 128106507 365363661 444055977 657178142 269669731 943291703 774296260 952855793 480483531 724443989 766094963 990148462 655268236 840622718 692087035 867878044 386418186 693180165 126035425 971290587 986637164 998761922 616978960 717204266 861828454 921273489 511127012 827798401 292098496 952920966 667665177 694591589 834765861 963244858 708041467 907706941 93428033 880195236 901859482 934542855 233905638 318397198 20282765 646086616 314463987 417593805 703521368 924779652 613667764 842647491 765908301 844399798 611470769 889267232 22132583 644338927 150842785 415512793 48123163 395039262 806301644 927573226 947655588 947676750 764459010 779005039 823124098 881751254 384096671 706954662 884383461 989095202 591417654 594984111 16710061 333795210 312541099 721507098 534283025 701156486 228543335 568584660 86168090 726977012 318424640 581638281 70593411 627088567 83075761 280641084 577262451 904643689 828728997 908915452 551459984 562833647 391263942 533541114 267111298 980676124 530090812 889860798 531575754 947552700 522420677 872556983 726996275 872472354 351550250 892751585 763702165 822471184 272969863 287735976 446701375 717786824 637166918 689811066 828063141 970725589 501160002 544930798 542160439 873225484 745857835 902387732 746073898 976450068 48218136 845303286 442437158 887977821 300368914 360499541 951803155 983302119 547990169 875605821 784921631 934710382 720107164 855811406 327590869 498440293 724631120 970708882 440067883 998772606 303774439 337817102 703475370 762360055 235185490 546156243 45355291 577995381 904177931 937961882 732595620 851541217 979140813 991905002 669415389 957208816 11085176 38487967 62512440 868266667 476612354 526327835 367287426 917931249 675140638 700260870 928050577 990693653 963281693 993917255 841859322 937709602 181401232 726821920 967399754 994948565 739344783 807469434 515094588 700239747 816984638 859440636 990721107 995819269 261186482 351819987 23221181 738063866 974118662 980397727 344600240 892093748 240648792 385257008 982210400 990914046 869452652 961219098 692901754 823165582 641908111 990818189 692535806 732750479 443967167 949103824 278983773 978115186 689782481 814750359 769550077 887694298 845622527 974750670 861873821 995953465 32675012 218160337 352107887 917845806 948824469 995892956 946079897 983363605 315924840 671986664 432358951 542874039 230067315 426534034 589916112 687081644 641917611 721054116 429736604 923888006 820301189 960002005 227600343 836393606 234430322 582820337 60396891 350904751 368561470 812769367 891103535 919306591 534581362 939874351 608662172 914102625 573884967 919335559 929670340 973321742 816667614 957867438 441310642 602949263 499333245 813863749 389062869 674766644 227152958 935693866 873257158 925835708 641243279 752057027 872227273 994962028 222783225 318639885 649166862 719861186 155439395 933824762 861733817 976178141 176539276 760159383 280574414 521355653 713474718 787522492 469003052 585351393 433869888 751598148 285550929 382216299 10307950 21924942 418859392 550678578 703909062 881449113 434430524 480042588 718479004 857404850 826282748 997411307 484189835 753298416 292124257 442113061 986707978 988391106 933947877 953857673 350657509 853393167 482961426 571921386 125240806 275783750 963869346 986421233 409196670 891907213 99485063 348340528 391301783 443967595 389722845 580899132 288898507 563822810 571999371 661969431 4405822 633828949 956547084 967988701 691033721 752282714 417042561 587162910 939849544 945263214 788006272 914519636 466549370 780958134 891811463 917462011 824011446 990507729 235502352 433503690 204083437 580306090 236448980 281375062 689078736 806673532 440509103 942184472 552700829 757591124 485986787 750190738 955881824 969820464 749712216 877048745 63711013 726194863 751531704 921917098 534591401 610413534 781636750 785049427 534679645 586678779 391209747 877178869 249429113 631336641 471103434 501079193 904650859 983294195 225347676 622505890 713303669 840759944 917887239 974945170 182019602 689249619 690475401 774559283 68585403 637846611 530988729 949273688 686424747 693287845 968543356 975466509 535322117 754350669 316164548 554476873 738685818 841153480 339055066 902179876 473382317 555209185 790498936 942470935 501180990 924660651 419645089 515641818 963974620 999929343 59472221 131999196 954267772 974084621 171869284 488775689 225257337 932139160 261810620 769859916 448321706 503499158 719550650 860141778 402637281 914154459 135573287 537301896 919891995 979650537 707595017 743324634 377660301 555743154 788124862 999532401 297740597 313812066 531635494 837427069 157932321 731566394 635552545 865765184 633618311 696751516 411320015 902922689 228451576 849118509 640887180 699907098 406908022 592591751 221769799 788691221 778594833 810392654 684734850 882422221 673048556 750446879 57867259 274670484 381465869 399227027 623385833 783968764 800654246 920325208 89543075 345554831 164859650 831538792 18614456 244044191 823178694 902921588 719037213 952585965 303443672 468069741 898287747 929113529 26237327 496834243 642204627 917760113 56865283 58002458 111808546 760625659 680992112 754810908 839615330 877229972 604961572 896262247 105239827 999572885 828316461 882272924 908499883 927105028 325468985 333121730 83152990 679677617 247687944 362936043 151316933 872483150 843378306 958630000 556992082 557925854 473565380 718576829 10430605 164102173 355513318 916082152 974888632 999553169 836859210 850396722 652226563 906317820 884896769 994307935 870548800 935476539 291171498 604480512 213554584 774480128 391143156 409561022 778381404 909410191 685568506 952265159 984527431 995853024 817968428 982071541 414878743 891882073 399355261 424581355 866464504 914363814 516281832 869178837 167700559 188334608 799626023 805656118 16242435 847328885 35791440 663317747 663994054 929852898 879189766 911693948 352216978 761945592 919155091 940186117 814342286 825914625 949288624 996889124 42360669 70344321 703765756 714746752 961010011 964876883 840393805 886294066 699700698 952530848 835374791 976643708 928660670 961273587 744816708 837506539 497116714 879889765 208040978 466963668 168997045 870686020 240874551 762696024 542048798 686661435 533671385 811648329 846035426 975878817 921861895 923011133 861630527 920566641 31092358 49100233 188911997 737293473 947553686 973710011 535546203 715746906 535960561 905083898 515132370 523929744 949491531 999669485 2252172 896981567 535630209 824633104 733905712 822088376 587886518 860699084 566262401 610438548 179117196 452348105 311072676 641773801 821744039 876161306 278453260 424126509 988984528 998696202 452473567 708110317 110262865 474799782 474786155 822506552 502758655 666946200 381727589 945067859 96561164 293491702 916633711 956938847 425749376 543128568 222284898 539323328 218688399 527591180 726145172 845055434 281485872 739147954 363292543 796027186 688538300 693245891 969322777 996794734 842292215 959482375 120318124 825932807 335342386 835344683 480505724 926952971 917083113 919098363 873986243 935686386 979347090 996849951 14865956 231012576 973943211 981598354 163375203 981730009 395056373 754888057 163784345 465574939 297103451 752466705 798146409 799468426 651452273 970065751 563050916 607680154 441338056 472546986 970214964 976052774 737504268 909056639 411839097 639294730 157595565 454904977 317505398 433153840 537768116 578243022 219877607 752570333 417547903 540024169 379894252 749593094 679394894 908319804 291542836 378358619 301535680 429304790 7091757 265052686 785602763 880781256 788206576 946038845 156194527 333113117 876588709 988035302 270178566 667324673 933657192 933872984 679778497 756179854 461215269 907020961 110014764 623794176 923841763 972287594 865827143 997988315 650897538 799956531 559071352 970205360 652199498 971496086 320863808 450575390 122794775 682453012 620296762 861722433 132069585 220213385 540546196 590925169 223893515 465226823 503360569 579453733 116945853 174568227 463133925 800054157 873015388 991371278 936971615 964426357 229542830 458205112 764017593 967767954 795708364 833664078 606382117 671513510 116627696 612018873 544938479 691264391 959337415 984347788 349731762 902522971 373864276 597705406 504873583 599631670 734742311 753285201 577650391 779906029 394664122 924759412 944952876 952680375 32695201 692512313 755298705 982978042 569632646 652952019 886093583 965807088 22625017 366131278 874387164 971552298 511203263 859637614 284586261 447101979 622796482 700099989 467848747 525987665 68359360 995903151 464381536 544867805 841147921 884338401 683205612 837956972 547279601 645266866 947796185 948862233 734090598 799714740 820554141 854984313 872356314 928774520 622812317 841981557 765289069 863206281 297924228 471716076 699531141 883379079 160226340 821729633 736675641 807197058 39444452 596271484 163515264 195103173 618482670 634143548 942806409 950887926 969276321 978141919 927013842 998934900 367060920 529272185 46828990 704799191 913966489 920333997 113392803 564296036 208523619 803998706 8582807 105357084 234537857 483509086 902127686 947916047 882037476 969710538 416955972 763831735 877831955 968386366 468312229 832513984 350381999 837692308 816979128 914900703 572029034 598510561 256691039 711047981 420021720 570081534 214365515 670865489 985582065 990627304 16669360 61891522 584194326 691296569 857617966 877475866 194690885 719165361 479977938 888887596 761362833 955658034 156851970 251757956 181614724 457908407 303564967 525926145 753340739 822887862 778494150 821306938 59969670 267119188 85540948 958023695 490383927 885485292 924414474 978861260 783115494 972044183 90453653 337934172 77907424 719254924 744391975 812909039 52049266 151831626 522413826 809979347 59260840 74894656 848785160 855333034 31495711 179197019 395494591 767583975 952871752 964669801 809228720 949453694 956704186 966855666 769943633 817417727 915838036 928286049 38982338 905471566 392219617 692136001 374206680 504946212 423325445 900870671 841294307 960463832 790554300 803145954 994157634 995610424 401082573 524257817 624478792 775584152 212263106 864733885 682452535 844138239 70340268 851682470 730694036 843657549 708543562 730361741 973764774 974569528 941495990 998358872 856187814 972598231 653977448 803868325 641265929 757067304 819906273 875257570 381872400 695641301 908706353 980477443 515669958 796040212 183724316 552169901 90985657 169040145 328653279 560408640 731552276 975880631 862450481 899340021 611308544 953396979 939084745 992974075 718462522 803685386 343354128 698155341 747208230 915534999 113941128 162097984 959039581 992889536 60608058 835397322 103755129 912670331 417745910 601784495 8625861 482996391 804948127 995564047 98659125 369624446 199043710 433367797 281817198 638886750 394703782 943638493 758979205 934496295 873854165 917504412 22682090 298085655 91061163 331823940 633541960 830917056 750459009 952519033 191457680 527877868 177013021 377877594 273010470 975124665 616258848 680016618 168772638 627506034 369072780 553617770 906669822 910542009 755339716 959824303 532507958 605815665 230895557 968237671 570828942 874289188 649699257 765823477 185036324 415276361 441972606 655140962 813696009 947019526 33033115 77978621 821952559 837901708 979545487 990425747 113025063 418784777 54066076 408079858 660849777 748056838 129231414 422499927 767616755 921213386 601818711 799687333 427786269 451387701 779651085 928666914 356040554 412414673 946511401 967657104 529075434 996549721 136157400 718840514 888810789 981843606 706549113 975684510 730290264 919728461 314853628 382444612 630013243 923023958 206691749 281803811 27009699 422491822 944781914 970189444 842440498 868623322 123633976 551462993 728347534 893164700 244596101 658093970 984505465 987171702 210977415 813633768 620286940 980301123 900580057 974050706 695774033 981311641 778282599 956067092 257951911 373947337 559528926 800911199 279785512 629090254 957970364 986102226 721860403 989173694 888829011 918259144 823732093 865388188 383922520 525316206 194012724 716320473 734780131 961778629 655801868 795903989 316134453 449230577 67885566 996211384 263725953 948126523 74582497 507530270 125199648 428508849 201819936 961667382 347884502 500872085 835319546 965628765 337507995 986181196 388224855 997365709 822119805 996238430 111361044 558055272 713947053 862776223 693167679 902571076 11360107 954279151 990512281 996415895 638770385 726341328 143206291 745106554 115052832 712606702 196895517 654520667 689218799 901167189 923114347 925058395 76870090 112474572 693307142 731858967 890940777 934168204 988524616 999653531 619299610 905225683 981970009 997238964 790198758 835850718 524575620 696538738 320210573 489034011 993811559 996338906 63584325 599006763 495756624 592584123 52930379 916252260 825219892 848285665 785263061 851147094 266804398 545918231 664131594 761021032 8014089 918425083 959378344 979299053 695642717 989561753 75012927 733970115 584493603 733515208 873582856 952417577 971172759 993889032 112419585 291185906 411175227 616169585 896656253 922070473 470119280 759562051 754941366 775261784 805738301 811290041 776885429 803016483 959297659 964309594 807416187 907108150 818434084 995931481 318419927 760428587 436357042 906543999 80757447 287707097 746028250 868341643 667113908 827009366 492352332 732522767 826335983 976325310 680007177 976006020 457076693 742746590 529388794 780213811 10739884 373411544 409454916 866060074 714509031 873540873 418406535 923650889 242956057 838655577 692623719 794604308 837996125 917103093 77802533 79096789 186545886 233095846 41057171 607293758 893281083 937072564 931160194 995662081 187532826 755621761 382674829 595569694 323433721 846919989 758077991 823418146 768816879 934295128 383638906 901002885 722159696 760574579 512192953 717768942 496210865 667115334 627306948 770878749 721020925 901143804 75047658 341033914 443698776 953554718 582228007 872375043 825154628 838234556 446434404 813748894 850952448 913031147 712194040 848118800 170798769 397824694 483764984 905175329 887083569 915390046 600288072 645798132 620178782 946030559 648736565 888728603 476710495 874779903 44452102 465617926 902452053 997378373 517306789 555318802 576032559 754568622 778736295 944020506 676377868 968513144 762444549 800259934 315002314 662880405 740280831 766613530 996670080 998321926 505958029 819862919 863719884 918465510 897135529 911591443 432678440 821470853 730610511 776321823 219997348 386051403 114475576 513030549 151062782 730825431 692977918 845241002 885962503 985167839 180961378 403071204 757990473 796035071 431801447 748945797 56928694 539426681 883493926 996429449 439637936 593616077 58447380 611068028 967088368 977615740 861303434 870281097 132148168 926707162 808645406 928777491 947930957 980176791 229459641 451218115 188757180 472556018 208922494 832063554 495408163 507275665 83165761 177469819 148266566 649299781 419514059 636047205 387032936 931437792 591601616 788244598 514915746 896234149 263537067 388090003 859916231 880377748 618051118 817780452 346630078 887841210 957200650 996335418 443428983 992003585 570139234 935666467 845733004 996474951 507533276 893806335 475888311 484829990 10045381 141522336 699215493 872935373 930672463 937787426 279673590 851721933 386810344 855978619 855441075 864626231 158885546 673291616 595185617 974313864 728748838 966436826 792368851 939837846 897427949 919834454 819215923 939773309 713395750 815568052 26559628 753090552 552138153 605035250 293571172 320390097 465913243 835339220 781354929 965392484 378701064 809187501 685470484 881288174 154791997 438306326 959152838 991701541 220380203 969063989 6188690 734342080 949543364 987943477 758578371 954933914 572144938 959414446 803911596 968566375 93865905 107838820 290452297 695133342 691147244 740534742 350963424 923092081 246910907 471189358 625778212 665411308 214232554 831393298 886135275 928553600 798414192 985637739 691449258 903955356 422608919 989326401 78939034 817717892 168146411 271090026 302047478 636862343 708286225 927787783 505856142 942810154 97209751 644639631 995615480 996710516 360838304 419252211 326975456 476841517 592780553 651626995 39663569 569741405 136388569 449563009 852670961 922124071 896800034 997387772 894267376 894413958 197899889 809797496 279620099 886703532 645617522 655720624 64942729 184799333 675437402 739569282 33193568 618853968 587524368 966648716 174890959 320757576 244685453 358733397 431784828 553137718 900959963 949599194 808492091 883811394 927016156 978884250 780880782 927617910 496104071 567688895 57348985 811452556 116551691 624064008 620409957 716482260 448024537 586382804 382016894 384864618 553439706 651807192 739867301 743643993 349087824 588746158 261593600 396028894 756588560 989355235 162209222 587731606 653807650 982097788 757704140 874656466 100974311 134523120 504829821 996224317 492689207 994657415 804477323 877487285 983398938 996986839 200666004 981957385 403308056 885688879 418599601 808999012 367721811 637522701 831100112 893114642 155520460 994170099 117175252 119500634 178945243 225134209 32073231 346644371 722437884 853611746 441762897 951054922 757018302 973935380 299767943 716158827 641219909 805839431 236022200 688728225 948545450 956148487 632036474 744230022 236818233 829678599 554324567 991950361 689670012 966430420 3548349 861021142 395810500 485183801 921293886 935788180 868008455 984174057 333012053 363966537 441793108 886796441 338083652 829406540 947539522 989571242 758771114 914743733 52738191 325444810 869782973 986460188 611431430 678784539 577086326 964122751 674334210 893334548 996984620 997175837 247408434 685818326 431676177 554098142 416486188 956110912 694354210 852164535 348054799 860450835 287569290 817715560 737945673 814523592 231525918 567342760 577304815 754115449 977481017 980786202 89954887 380942557 645992643 742068381 117061651 944933789 676885880 698825635 420353889 671478949 198058138 551604503 627013484 902640796 699434567 742074511 937739739 946484040 561570566 731171891 12150576 267800831 625981374 852248026 320611232 820647963 130761775 161158250 695693760 763830889 825322805 922527689 940316408 980858087 115727959 539721911 437536526 912860799 259853681 577171541 196927028 835416482 486915582 644991649 721726488 771295581 128109044 610256701 371665932 717603069 643930292 885582634 511947008 985042363 714153952 826762045 855086966 889504668 916173010 917365904 469227065 490304412 744171470 810668042 778272311 872088671 838184009 878452067 541367831 928566253 114661958 877224427 108092934 131987109 199700149 916663855 587110989 723273643 260786872 279050247 89867004 433845158 987395965 995413450 352292024 879787755 698565421 844900463 126416377 596789634 918795247 958264827 734520146 801732557 12207843 975425661 522522104 652724950 964106434 992230469 870963862 999231270 90313543 405145071 900404183 944677184 34138814 213499385 253631091 261259100 605219728 928670433 165186534 174373534 768469708 936909427 640404629 848397448 549826268 814322732 265737368 721043700 973531990 989586869 264949101 616781742 429701401 838350725 684538615 708377898 470118391 958598582 917813853 975709621 75473126 283413406 812362395 968956640 66346813 877135327 225848127 316645031 634231271 826241310 297802244 574959249 796210517 942520642 160932243 983505559 784478778 902501507 386861896 630502330 845063716 939020864 37547945 664390790 847639044 977746956 848875746 915125828 553622069 588966321 836172284 920957482 728668466 877123929 293888341 518436248 318831475 460011852 558368397 689638629 767063897 820709296 353634635 382862161 73656097 836376723 387900701 904773729 106613929 226416388 113105799 393473795 556536176 566457739 433297919 866773947 675562438 919048512 944449683 986029110 31508209 243120442 21658319 255313298 783545398 832126100 914483205 977948537 229439987 673388085 12688080 443646906 466388670 723675284 537804244 969202548 838634586 961960681 634093097 900551052 405020101 436472657 187272123 910960073 143163672 145985998 129987239 314685947 600794403 610048988 515097123 915452470 499454602 536944103 50795707 89249233 172399735 455164047 305439243 574165745 331698782 677683512 673375135 729420084 256964392 984325771 688794922 768623220 455637201 677292039 272750759 588295664 406120012 532645042 633365580 869592601 267869726 995514973 999356827 999515669 3327347 601335973 254743630 575138975 727650745 987559386 136871377 228938721 379789870 820191544 20464081 774304661 694813383 955492984 681259203 718763084 83485406 218743696 263759282 661976787 724684905 921121712 572715875 629380908 203753789 387974288 872175916 976855019 633952282 735378360 279737945 404566005 705405700 726837158 943341189 995752337 199018829 257168584 671695251 911621293 950110220 964158674 889305654 934362679 788404057 819767916 681987779 887001840 216993484 743788280 388239575 584717889 458926405 743840781 438568604 610006885 900967622 986929478 642694881 829164122 897719417 907728538 618952342 899985151 216970991 731899772 241411693 440185722 91331191 130039713 482528670 970620379 606270295 641317506 33760866 946876817 342993674 378782854 492434579 959247019 46978051 784069271 586958292 843933243 869592125 945410744 312536842 633673192 778313174 843062718 350723005 963570835 449691056 496815518 870754497 941344688 872813934 983558310 692089674 719325326 104694250 388902423 653085259 812293235 301419383 928872970 220409733 883503969 917591930 923227746 209693525 729795177 671050306 859991593 553482590 996376595 32061185 933953193 538144150 986956492 837515388 914848111 290683804 527564368 308926722 864998656 46250056 101701712 847641469 903359918 661150587 880977292 167781993 292247487 551352897 557364370 455059962 465101183 558842975 959971048 576074791 883346213 629031987 724418994 144868512 952994224 548782040 825714898 966146595 975945741 274954801 475978656 931921560 943556551 856562304 972903865 471944498 832096235 441516050 575714592 239783717 487972244 175723310 574854723 657416886 702506023 213453126 692572492 672709003 871512175 111859471 853913070 81998235 736633039 518051572 638640408 289809069 485244624 57019536 953438337 861229962 995283552 938922723 940125701 659077968 962271984 258011706 314845345 569618807 755176185 536361605 990003567 383197609 949342217 87619320 575460702 25401211 605523814 730095552 996030147 738739850 912207777 388291031 697820126 772006002 870559736 554160063 968205146 932119326 939885056 100620291 487526088 685626618 718710059 529604883 595566353 582720541 803274177 901096083 950908004 29816853 735937502 156700590 161251970 685306640 888468739 949301571 963394933 92796994 796829587 191874615 551560066 341107033 594222039 57542640 146493708 731089928 947722495 698819400 967038586 877351726 977704047 439945341 758551069 734048353 734761536 146406560 980195105 610844393 806067160 602073284 950187380 548921499 722721604 118840468 508130168 22927281 331303483 593376 362283309 793463058 833160648 903613362 943749016 881365126 903755761 694300953 737779039 21405487 874529622 818993377 954843463 170490631 411398587 456234647 915046244 400612439 680087829 679554666 958675673 758819431 952999022 739709658 914992842 398839489 788432973 970113930 980556354 500827758 971164491 775042804 797497077 650796104 668416547 759479593 949292626 414138522 679975755 163831014 369192781 535724774 863904683 131883792 173126308 447819019 512349729 554483154 557393867 790646909 967263186 759270088 959788925 13753293 258625444 588814790 871914089 403711191 894341433 82114456 927100781 408680989 588991109 979236166 995108972 468429964 806272740 843471728 966791990 396683728 759276106 984350039 992730800 221002574 822732863 427188598 478766391 863249935 887551294 786757218 931110857 567164802 969844104 938712283 948180809 822860951 888955956 311479121 744397170 355216860 909880575 512374212 598857789 520660436 665799142 198497124 648719442 889856241 987494517 544447642 589611108 802006932 822636845 31316283 896302313 602281151 757285659 341662032 880521365 609974909 815917065 637213466 664198372 556517992 794746176 382514124 801978329 641398257 815630352 386111079 690386857 233016414 396491097 805656436 996425107 463629334 661210598 302766920 447666324 761016146 876607554 688386192 764067267 698017766 905719401 190087933 781249326 606257803 680913955 578825184 817227388 474594789 551688717 833931196 941048576 305952757 506385598 248184119 814966159 645270983 959921730 518752403 844281729 609680256 768791347 239349193 759465997 940318866 987166548 580795062 985875633 386317314 541355575 751938533 794970328 734573641 881894902 939886571 991893859 740134517 841990198 961225113 962787729 990035603 993822478 678567324 883067225 562705037 830791709 415359645 754738272 532462173 835894497 196124037 949599482 295884093 450377283 655573462 970643967 702468785 890429171 426205800 504948625 543611235 702591318 991770021 999701348 775426101 829422116 849431211 877615536 495293084 549342072 557321531 729170971 752595519 994600114 328613266 832827142 34934788 607912802 571658137 712215553 711707681 727429915 905617798 946369690 282250442 989928134 97605493 608565670 724434480 761406622 881994995 883438841 262752355 997532668 842607195 866768852 156752586 360159377 447541872 765512679 244547932 769433625 277460498 997757520 683579496 938820023 531772775 715198679 288620187 392770684 406984898 494718374 403060191 468690579 64440654 174922071 29079157 601686978 102980688 464696031 949153933 969841004 847949980 917246390 207835853 254005484 757501825 902728847 66789551 362962093 842818512 871788321 537946058 652343356 608289317 905021146 417558743 613367856 195757 199274144 561558176 591405140 918998452 977758270 527279128 828731237 299820589 858981318 445113744 529713619 553247830 687725811 869612901 986414585 586169727 649045212 833915782 879091776 787447999 931532472 124186569 573266386 293820553 303198318 791763706 889905536 185452898 759887627 131590455 339321036 507184640 792012486 754480876 799886680 995926569 998878463 108231976 946279270 834292638 988640259 747479990 794878334 632639854 685710673 384973064 402388087 308051459 413584835 441947666 512465786 195555756 929025447 740049254 811628838 991321695 996149507 824955579 846328781 611202550 760549552 422968897 922192262 811400960 952975066 170318389 586209392 442047280 567933901 63191541 898396265 254323039 458392131 526814934 862401008 454308486 511757619 982679223 998465192 899196354 938889837 40110436 68062434 584196177 607764502 822896074 876680789 350123512 773304396 159826064 197200503 283785538 660016766 540660039 962095463 320496460 414663677 342081169 346580324 341323960 584742267 899603547 979402263 595736671 638801180 325961888 601821945 431050380 861426005 346837303 766740134 129456621 773190665 128292943 403624594 8788684 469367083 183659747 253573443 269292872 571809063 630974677 847358221 135539955 924651308 373439388 818553501 904610798 970629628 989774909 994302143 628662866 952516783 190178920 388390425 123601032 218191277 732285377 754798126 74323601 640580222 206944094 500144524 524220886 761398185 758368481 888577962 633784885 717061400 903047547 993162693 31308017 627960793 26125409 370317523 517262298 829719740 442224785 834837843 697788721 737044734 674805577 875378568 670804794 681108111 599523289 662220769 391278933 693208629 14792231 343733517 273087559 643939664 890075183 975509405 432772798 857618002 741433911 824917859 179404660 389327534 746390081 772671083 267863184 379281566 538487190 844752553 472838080 789880049 139055006 273959760 81375707 362871883 442421188 689741258 273450596 385365223 658129697 812401889 195589754 662209006 550863557 962681851 240018356 899801146 835374770 977354309 874219979 934626468 159204413 957037313 632214552 695407108 703986423 773936086 837328469 896315891 973226791 976707425 432629477 541157922 666638621 950655374 428421129 465117482 862234530 866061861 476477105 932328855 508195985 617224300 631165023 903694911 149995285 938006303 453938440 492791324 931544292 971162076 504535286 577696792 975679167 980131856 994421924 994920920 334574862 852691759 259842980 732137374 662384081 924824787 458125871 743647728 321001457 575758490 337999989 653807544 303792407 597605257 889203905 900631221 909545641 984177852 240572640 409677048 70682546 918300425 529272629 893806214 583111876 587397539 136465285 439319791 971192406 990165157 603305380 713890578 264190464 905971980 358333574 953428378 364238569 918406347 226385773 705552540 419676102 982441553 914897748 973339097 777135690 979826715 251873729 725249361 784118771 950943807 291922983 907359230 822182130 865336953 807353257 950797882 216328599 563543538 866464362 917884540 470920573 886346446 66680519 963910619 435434151 842674834 648888750 698028441 754508293 909051328 144897170 532221174 627466037 775301554 617860466 631860089 298562733 740910968 102570182 467428327 553070475 735616959 188707877 891735549 124959918 518217648 895837680 992002474 341269711 502962497 117128430 652522496 391589919 510942929 631604241 985265249 79377887 547822167 847176920 903869928 624599606 886593482 444076069 544192233 736552388 763650170 747831129 945935753 359111061 390435097 411137831 462730244 361463536 406717483 335036185 676930951 55619169 816224565 117285796 308051103 119022848 350395882 380924699 487360672 375180228 395949477 16205388 651458719 411758264 817130551 870890091 966817384 237915600 363985495 568475992 773325426 349155204 655800805 996641828 997514783 964914464 986933632 568527325 605937169 176305853 500336275 79443396 500673800 366733845 404546050 491238733 525028956 713923508 787417332 284934484 641081706 172962263 409463430 336673164 637821098 496257873 566213318 400452929 987001478 338001528 614079265 526778061 784950430 110737838 627561530 125867084 873092683 294281199 588015615 550235886 922599998 357736477 386271876 679322265 926480426 111384643 754168513 104267387 504102383 137106966 874316305 566292719 637163885 748457252 938874554 832346424 955758718 389085648 969461919 739075142 854728839 213826060 671515775 94581553 496185435 280533362 351127032 716725091 849448117 864706348 869052164 269906902 350718935 620749315 916098761 922840736 989052816 507213045 790872058 537457734 568136730 80510449 166361739 197989227 693281757 609910132 972701206 94778414 395713770 708843865 716599328 818856519 987034862 415119875 573170952 735756254 862383495 851589767 997610025 491190911 769847532 582743947 644495467 881678969 923319892 423994356 705788507 506115760 898870239 76045540 767316900 545378204 566481509 99460670 739646373 195455275 332688874 956216331 995050428 232378016 926932865 751856684 833068836 587773605 677308702 537727525 788669138 913291702 957615713 667142370 824145606 991632420 996536329 444053623 838803980 340923579 487497137 106245300 304089829 741718679 979976459 393432288 721935424 616426459 837768773 85321333 467759441 982068672 984023834 484619423 531464106 292809983 360750406 980650495 991407757 111676419 301398970 758830291 835904947 568581863 642496811 926813530 982994080 239228580 707628752 894833810 963223842 841852719 879969382 960227871 963075203 451270173 486517678 84284549 568119454 550279963 679015687 550360088 623953701 389311213 393377610 274480950 278977298 58348008 120367832 394934021 538674822 28316685 908494473 872641054 874603529 773917638 788041243 683554357 942747551 252943077 816217942 143702613 579270987 568906409 872776014 862424245 887851248 449284065 455411662 634184294 810934924 211897456 603847561 840053504 890645239 843645259 890607279 443187243 581864776 697030288 967487959 966554174 972397818 389819959 566685290 474970015 573041307 517915215 585326081 761578576 973381469 727556087 727800285 143403124 165212850 676436480 986691399 583961765 958885507 555287274 843361414 984690818 999729076 814116584 814862551 605902312 754835019 548646265 711384662 370014994 792984391 946316024 965824005 938720047 982239693 434756663 487471927 939799949 947521779 221040156 382377560 829435118 999353526 774414438 846207041 84658098 721114631 173555034 983626986 246725542 305648227 365510075 973778656 503302771 559999134 701091547 747563355 728364348 896380720 796035858 869754380 935887638 980362424 475155708 856398011 55131942 380972715 712011411 895296611 70675618 853859289 401480175 706548855 573684651 702779493 221731601 407419500 524059456 873334869 296273735 536478331 520120995 777000139 523756648 564844087 86830532 675593056 629647306 994938476 405733533 635424439 694268850 982559851 887955145 931333374 890063987 925980590 40008153 465869589 992799206 998644530 517865171 706587539 504001703 931185221 822037187 893169425 373195868 581626315 129411262 354208065 796045876 957615217 121614332 975347840 681368094 732366505 532795668 768024315 193900287 887487690 234773149 404359208 412091388 838989280 553496631 643480759 259247891 977973254 136329056 816268886 603860460 630775904 567146655 793210824 778502323 887907283 674083383 852031757 916550976 926975350 109146747 607344100 490519195 947586332 754045555 838220967 881366743 914891746 492429368 922908310 518445782 570985850 173851484 254435985 22621199 36933600 232778720 613508012 649843507 973977949 669536473 790231026 975788937 996067261 447357624 807999933 33360112 81974940 544707437 628395135 147880185 603286159 45354803 695340906 688412432 732817596 291796179 807173382 916420664 995254911 175306769 807096400 389982141 514575552 608139279 816138624 344557986 548917486 329643453 441410162 488517888 930704028 886389533 939011262 370644814 597224083 484369531 550969176 191668351 336069361 442266165 834729342 654742398 878644579 402012678 674053307 934809427 966820283 931917446 951805412 866522536 981359757 187018219 768754778 422939765 638128126 768476926 918937724 235679971 385900355 932486116 933484536 436998959 849526792 684792091 867722940 354680186 880215435 514529194 588199853 839982113 859660828 454799549 666380918 845774606 953367077 54660471 352559862 986074893 993260125 216622105 504793622 560826312 977523217 520046804 862343100 9722258 112357473 71959354 726591410 927139467 953245177 586693208 920194912 597317803 633916175 289026110 587431658 241427397 246825034 666348366 863463400 918912180 930788806 34931226 576743121 29075668 309377602 326981803 832900086 253190230 618343614 704854133 989205522 91233702 508824909 812747710 919748504 308805816 565620289 234770905 439779248 245563998 643516950 855205998 855919013 721114210 950769266 556207619 763461771 862235514 869113060 520346614 599188390 649778502 710570647 994065387 994564906 247264061 772834757 110466423 943492474 404038329 888416064 888049837 960895150 574783317 754852159 938724151 953062610 827814275 917646747 605811709 764754221 612944131 714604130 274259019 824366261 792479263 921517454 75549896 787419222 814239955 838606689 494703107 654680999 537964337 576749065 58853352 354380159 983723572 990053058 991465963 992034439 246253525 482510628 781273033 932405313 491027441 915899087 306514619 685755367 180975386 195180691 270041104 676272715 557168653 779565612 379858061 751076427 116161026 160920125 631509631 829617133 202035682 514823101 502276230 903555325 179077653 549618234 748986047 774394996 788393259 911051835 126999905 256791077 906343151 924489365 542884698 758876730 621867299 996540175 648068669 790262475 476956314 533421277 776772860 815185120 364452538 622945295 849382603 925453488 672264776 755827268 676185013 757074635 392129972 630611042 238761434 839303811 651373348 899307556 982158742 999987718 955423745 988279845 955370995 957415012 396911346 563115686 109434656 859526591 606333090 848903046 414573596 824313775 517521817 933451940 502682443 513791988 539361810 969358846 929078710 954888433 556005775 720051996 587336694 971746787 480757906 650376665 313597306 567370647 467821650 742251872 637100053 833255010 557225194 912659580 619848456 750998134 343469186 929746322 845495872 919882682 189778173 596718468 831770028 882003326 638291856 762174303 401845370 788697566 441472017 876432677 519492026 647162826 466276076 578564335 333531185 541988223 346938366 821755463 762758549 916051594 98813155 909295636 75431713 543877010 259010411 534074925 619605573 703048036 767951322 929350214 725214917 766023267 105638586 728879670 314345402 931784420 827923488 877449245 411072690 430762148 553304465 573013129 123447566 993949429 90431132 738290399 488711438 623809859 665438732 685296856 920689004 950252934 149725690 387704532 537864354 856434724 212747527 417152062 782720060 933745209 320913690 443180685 700165316 819076099 490880115 931902365 400176036 946360442 802516539 934863206 715990535 776170389 350795884 932366761 833984112 999065056 293491955 438944129 746382002 926995593 899537037 923552025 757129364 957708926 372209884 467878589 722026471 822472375 820781204 952407004 309664506 881588812 833097202 988250506 572184464 830402840 121499926 135655370 107549323 849042920 3841192 286647480 920027630 991721137 565140456 747043089 78863879 692342133 96961753 550045991 63687310 567331239 514825718 634645819 623872566 642020965 553231250 992122458 284013913 725338698 749092202 970795736 275751794 388216945 581912940 636632026 417737451 898179646 231747402 397684582 343443895 439126345 777557145 838255414 893666006 983400684 572712415 637233523 288326265 495620523 134511379 852857295 389716835 589134687 151786089 170003771 350680091 661360966 250601536 690863012 13261675 935400803 224231257 961994690 821370739 900315237 366710554 808853895 624858672 731363216 300222269 350949774 792885983 804489727 896858216 924759556 284197132 457738554 524389739 586831397 798346366 954425932 23146659 99763507 420910243 785593086 208805177 232066039 759726893 999884945 120574068 883914302 783268922 820763170 919720687 958027772 520020917 874005593 439825978 658866761 952559601 992574574 670259221 767086092 561659911 614229017 416134607 931668194 349458332 366407109 418804612 728237218 723734987 870983921 856621096 964720059 710639942 774831477 881018695 915924330 969794164 974639574 746293752 858267526 682239970 814675861 301695013 572272492 301701634 879871656 4162463 561625146 600671726 919584816 601134093 902321220 39141433 730687901 666475186 972451654 575284798 995613475 99236816 718371908 328483390 567857584 526321957 617114409 705222512 997730455 304657945 495400198 566706008 774710391 731229472 880421375 72116235 737605750 416135398 713039130 678834208 687119526 387333085 942785756 243385050 523005625 164605205 893716447 432391224 835375767 33995498 116463602 30486567 641566790 181790190 554699891 642747846 957640517 580507181 667955704 212886119 248849064 777702065 887171098 154613523 923367774 493401876 914958683 891586592 987587154 200153362 764469307 752297808 778869467 655348102 665090334 104596614 333933830 700594960 736117699 333544069 706609994 724901587 887558334 978961536 986857132 110493040 817905985 855112891 931335835 436358506 626734904 843475521 913022357 13869938 474236067 787373954 891401461 780132029 947454375 18092158 862847955 543144527 610586398 95738362 884898327 179837644 332013402 705356783 813165870 624564318 687672592 980997472 995148744 626892214 846796801 123088126 176876451 502611414 640033078 55659081 61043667 646850243 771928310 522241346 555236013 181559207 704375220 545067127 557765389 351779612 974955190 815108333 844153222 585474775 883121998 270923051 769795134 737519045 949669736 424763260 664503504 961288415 999164076 139428625 265774447 789043864 895384476 953656392 983350094 165871501 249769326 379819031 877248699 731639311 982490423 997753825 999947813 440721282 717070199 467317897 854432532 598817065 932858435 446341369 475679941 925707240 986755133 137976801 325782569 981293225 984535351 40171582 482418856 30972413 731712848 42974375 810772155 353735206 528365009 913183370 927969116 749207398 768981439 779180656 827746326 846543400 963725190 539188577 548183041 528555570 932195117 51793200 224451806 106066721 674335472 857245742 922353940 111371142 707133722 343436008 355507183 852852622 923353383 470558122 938855983 175909496 343618317 853416771 870516523 903789189 972990752 125002604 238025504 809055607 972701724 478497665 727405197 129384548 304700207 925568908 986554502 912790007 946953602 517394703 880186668 417273860 819066565 759139337 926314197 592328099 619501536 718146714 909265525 616707930 765791561 283488881 768279396 654363224 791009566 892994931 922342545 665691953 712979327 8240229 192181291 341583756 783125640 269359290 386293101 556221678 664849843 329753842 489996245 448257804 657595926 336993831 346961072 896199669 986155775 189455437 424087544 405353545 796523748 554158201 619028935 891373228 973626517 547502606 679300392 801098559 973636624 774712032 891316181 596797924 680931020 612301549 972155551 47301411 631646989 829021344 994130322 332696348 527019352 568257061 615621631 423201597 480797590 700063954 892444970 660342339 797131548 305249916 499595835 766624209 914791545 122143082 371727887 753934016 946049129 499601345 870060491 67221546 336394843 543359802 564620389 303148636 719712030 52310597 77473722 876048263 906667830 448472205 735455730 635009444 753967623 661529731 715842875 865538377 872231211 112075650 795853715 628318167 803889988 482344365 515517177 818762237 888368690 974263027 993043313 196883821 888451988 35017749 852997205 921886751 963406686 79481680 946030578 952466858 963995915 390299710 568690477 195950627 328997545 316409873 840590516 2927434 484904009 287895898 897746729 137082625 371177734 938248300 947920583 941737509 999703182 333495091 445397784 21213281 269824848 98018207 487206444 346185289 590207360 130195893 652227021 759567407 896506927 983494134 999549650 516199987 879510223 859956927 983902261 447574969 902197399 432482844 619288975 147768121 616243073 363007527 929905970 783960546 931553388 913031908 997648195 543444541 900578641 675702765 913741786 450230425 776608315 792869491 990438286 458869637 543401479 779219928 889957847 691926564 875978161 169238063 508399993 366291319 476888370 825370370 947198459 116710773 420692018 777614311 864232211 823923700 828352965 267186301 861419428 759759466 852872017 132843623 690443361 244175516 851658396 827697996 905134424 731597469 918916263 750068334 763468736 348743849 642420284 118660155 820237507 787925867 990824358 200023009 406339458 446413204 827547358 476526339 574960911 466807234 638694917 717262458 882587459 292689013 327689129 125745549 289581045 488582963 812748522 260727127 617154708 991462469 994825155 413713995 674216001 2364419 16090433 599259163 925167299 504276660 937195619 306223693 847792018 116663705 717529478 896774516 966044041 967133839 970045175 420773962 841250598 336831850 901385659 237561409 819212269 422481034 986365879 829579040 942589916 87499090 533058261 588014082 974668142 580584605 581037517 684784354 967169557 195796138 291155686 678901551 956671333 290291622 815575200 621805846 629261759 100665442 364036871 459612335 694916741 723313901 925169002 650969403 862287020 929246861 990576916 997791530 999639234 45693587 512176611 145306727 821386314 835064155 945931814 282045454 708844107 275403338 348801629 769606495 809827956 757953171 935532576 109500696 130189098 515435775 611362951 960588722 992395112 741140142 939868741 12348977 526737858 394969005 462610306 488141561 746643257 397409039 988895456 316145156 644828161 552926692 872009762 613323169 921455846 777337064 793659872 393731354 929658991 114968755 557781721 378775353 501379158 727078002 735321977 633074066 886292508 737982571 971480480 577282295 881263425 823025006 920688267 630338858 910372459 145273775 276509872 827343107 950054460 64747887 844183628 201657082 534776100 513383027 560715297 339495425 411351466 829795939 840807803 149773552 443064496 667368495 763499428 846521926 862327593 750718716 792568840 353724102 676390420 24599311 463144274 2210330 260361526 538553816 641245381 557958846 715258730 487734312 722359601 869827066 888460871 852997625 952837193 273376207 729634590 496173478 657794073 187214016 536347826 463132771 805138398 823005448 866475811 700190359 882720016 943938874 967341778 605647798 843697951 351059330 852222545 86666594 106518671 980321699 996350680 907197743 919340813 307950639 311408684 927348681 987025974 180634002 345625327 90748447 628151216 807966577 965808581 122960455 473527500 81619088 857830852 488226872 738292665 656485372 882242417 964712196 989944388 435397897 855051043 858151618 926660471 792255425 968445058 674353923 957024585 966158727 992404113 142772258 634090771 291504858 946632051 630731372 699741496 540271675 957857478 958935437 990411503 557440018 643252122 995533721 999806790 177947115 543636659 416915049 880731071 961930635 965073684 15305320 40432917 311864326 743228184 697092967 910261375 389194428 976140330 267536768 930700663 350532590 462601455 636205535 945869918 708704161 753251178 130693616 861022655 740257931 839203402 742155353 912353823 22199775 863097613 516501968 569479600 141648093 594554563 490745126 952604898 530747275 777934994 458206752 845902253 921158005 976024345 193825202 361862954 31707690 107453107 556969434 571471114 611949153 675385649 109134295 945158793 186300230 711895605 828694542 928275175 707994902 770722675 869288374 888742362 987873829 997949408 322157780 590620103 303508424 829220135 509256565 709612122 252016940 495422494 845007715 997842315 220434351 562674299 57831165 687212523 633816624 928639986 920562496 981643802 246801180 946547064 362123624 524694463 547747058 911336785 331174243 796712016 885626768 898797075 308158765 377668834 253393029 444937055 463460408 484076318 231555103 934617683 331325371 702098155 166711752 290596755 149933439 536229107 803312569 889073320 271208126 886110880 324802258 477338766 379495732 476503636 251020166 875004113 96997381 442084382 63892818 305531435 633522533 716413524 677434564 745838677 569681754 694263210 528542496 685164838 627434690 824139757 344176313 722783083 484477451 861068387 10964736 109093238 890088313 991530974 51197938 115347201 647069094 707077973 629571577 984410408 100932849 721329222 876594513 987676201 749218061 752503128 700671901 806694735 621613507 799098081 525933866 996384877 693421285 751456898 99133235 816813033 309076002 955591048 469947701 990155316 600905881 942750937 984054918 993204804 118434686 156215980 535949900 884726966 240482028 375442169 194791421 370865741 131720485 400517177 212440412 350404745 743505602 919969719 602132644 932323297 857645926 971573305 543535902 740074191 613569112 745264834 248671530 710916008 279323291 616150862 1493033 792719131 684538531 757407903 634556247 830982755 923223297 945338343 914215729 927788271 948377484 976864910 341263924 356388117 83761400 573866558 278631901 919666657 875660071 998148971 120235029 129586339 743522354 983369413 302850620 319000529 900839429 967455604 5746210 877760745 901052894 940520561 724982394 894675844 191856001 622713687 608212803 783105001 923711252 987719926 988025355 992853012 637153311 665184403 212172395 326652793 821391241 988643109 18543211 838954635 143251950 421060004 444733265 750221011 476132347 648824996 51522306 313495979 263054836 767260982 475633331 631189720 301167654 767918755 726593935 745044361 771846040 855836815 373731677 682218760 679409974 731560402 945223327 955086883 122245458 580904833 179395214 348191776 375405089 932005585 599922317 772152713 876371608 996769576 997145462 999917891 301804357 414955889 408723330 770725512 196086380 314813292 503726845 699470346 131285777 406699605 681526422 870730546 826614703 861521153 964765600 995025789 987259248 993035170 687435929 750223044 482646169 670332605 233021904 940045158 882861792 923010674 86453305 444010539 428092968 456728038 268248619 935902521 302031337 538380661 641265953 778213331 292848128 541481046 314644299 388174044 883668056 949950317 346474878 488935258 993812019 998855991 935423573 951048520 168289278 362311461 797231217 928574022 439831709 845911681 60966504 694766209 421390741 721474950 888436703 890487664 226928319 794400069 707841691 801144619 845521505 901621694 551348280 746707404 123013553 285197464 482974401 549975252 750597346 832968476 578331055 792583165 30538762 607002806 278154213 526189976 370733642 618809693 345643743 996943990 507230770 639072888 18267748 827679318 697485921 698453101 548392144 937563367 127751224 521732467 80515671 564880556 353383533 543127028 785211275 882231319 989210943 993132643 948541974 987984312 506732803 706243971 638894485 932159838 107643163 472624690 933612264 979321462 199018252 265234631 446843271 789996989 810262072 888191110 643470549 764590065 339250037 423302713 872776258 874473231 882503940 944833516 838600185 914579409 938257842 980158287 510359938 971228159 416787822 922854621 877927862 935127275 133630279 904961998 654986370 807684095 1828282 872228567 810223790 959437831 170171030 342754091 362968788 768349103 658856650 835916492 810228962 859298907 664274244 772963306 711133431 913802138 132618718 803481750 295433834 318532355 609189353 944871704 53631358 957036760 959340071 960602849 85855384 461797948 409160640 488276161 768101409 833721400 585940268 751972675 568954999 783160066 261874909 888121219 38517373 723694026 329765202 755275331 555636796 665086092 166754314 568370506 87785994 545777127 529912664 892174636 528747637 801886548 607640459 889757306 439900639 529787880 732896749 811687772 347665723 718059784 282245943 315091241 852431665 865817806 326810713 668261244 949494789 995075056 123935659 660062665 868506595 945374376 231454558 601304665 634463382 758702639 139111459 787075018 22654069 95682462 733811927 816522947 185915303 733382968 572348130 632562191 717346857 957015780 868092868 877535292 294664045 910118719 895245446 928532605 774575840 822990370 424479865 948004624 434598555 514463044 571936923 721769154 897108668 932451224 823745533 871404041 131040622 840811890 197674540 952627267 364890848 475401887 178158710 491218868 967797999 967997240 409833495 583714787 601883618 928286460 595491320 766038717 879085278 931812439 880039267 952402480 445804679 700254002 774710222 798388814 823909375 979663756 759087483 956654976 502037953 790586575 428731918 731877987 834725971 953720578 870938455 973338607 819641156 972612560 895245217 972778887 313462410 327975917 903499682 972597044 89338770 369227704 16219950 421293079 540335682 911625052 310046445 453429409 136317653 222999075 251232175 670746695 904495341 986490450 12644188 984782030 932275770 947218385 177532208 443215501 637947551 824749028 513356032 617529832 163860564 555291586 358208303 781788398 617302237 985573132 199432452 957672383 706991515 962918703 407779365 743950753 24843448 772166720 40701363 104079013 808036415 848108975 803875443 856884194 22721155 180290052 421944758 643211841 880640392 967037541 956551044 975090296 437185623 647704454 115883000 810308939 814893599 883754912 175117897 189643555 731537993 919108618 655948002 937961530 992400482 999438066 527021555 999717242 342102712 528732383 502564522 785795194 999951000 999988789 389881085 696738353 468566089 504383582 867326157 988928211 554757598 738456978 726079840 989201153 990905040 996880730 545056832 665176599 869650193 901544180 917719370 967437542 41929836 421124357 73446385 786561825 639255438 975307269 458262973 458971479 388109712 746507816 703979534 909342781 371153001 947946974 296475942 393182914 673232302 950715572 839478306 951432942 270279097 276580169 976809044 976880700 938369445 966824558 423182547 614908481 876415760 962097838 364098358 795542447 968051794 975942746 479984649 849863503 77227711 636337319 32443864 995062906 213868498 826535374 384382486 660875396 730282617 749428995 741842213 840703137 386857491 475625641 843729013 883305633 755747753 969655941 821598376 914420198 576755221 620200334 145646747 605874630 450816362 741732758 365218202 877339755 733948056 926071967 327043162 758043706 838466386 903334817 759411348 796941882 535499734 551708974 796356728 972482274 453790442 681572674 961161542 967892911 441725907 527617297 204871489 210313466 75710053 574694033 73743286 694286531 870358158 945899801 599057555 602355634 354575788 610736514 646966627 955096465 733844752 877751249 156971920 541889227 511229785 738057033 667884513 843794809 273665725 274943523 624291347 810906104 196957667 945656226 348927571 905352550 31293161 320126693 79618716 434111713 686663669 980381190 255565376 788123882 681591575 897911184 434804799 497927008 971138983 974427377 852534725 865827171 495004579 711860101 335618102 356872495 808888138 959141761 753058799 771019420 997709014 999007815 69847987 667676992 497264008 824145256 618747163 893842916 398872847 498391390 459173680 957624636 937218901 964255697 507478363 629867773 114270216 494633268 274471177 442338585 917738213 953150312 920472066 922839710 464728703 758412706 850675555 922587085 940836215 958846060 14476765 912744421 643230591 942781973 533791265 861968104 329456671 372543107 267030043 457412412 228022388 507944699 625325789 628739637 906596000 925653241 345365151 969617302 622911720 965687897 719721068 829828521 522380401 855387730 653630582 815271285 84380339 259367431 140019474 746349569 925687277 984794118 361656300 424471906 827079101 892977171 941636366 986374137 858602986 886266561 75401336 477430093 785433767 912686599 428702293 786168103 653752261 788111808 779185864 911423923 214464916 936744146 853423844 944836221 951452604 971071977 857020785 938679444 735875805 917455488 350422079 679251201 204165707 589484835 701838048 950895127 321537570 398850316 100746376 536842038 304800761 641242027 58275788 813819578 755288208 908572069 643018199 824334166 190450019 747756990 448237033 914877047 381835113 871275272 183023445 695739131 79535935 291910684 571489320 666192099 961840267 992333447 33611695 823540462 332854114 780475391 747078101 963888358 384724681 632776223 693688069 709342236 15502611 242464307 894191545 907342780 929535045 977774557 541799391 902199179 54969415 981744475 473825465 496511947 339956908 810488908 93971704 504570765 504228099 692892529 453415124 768824289 273920681 650116015 178492123 755277849 848634924 953577223 876362702 998133050 792017646 892105716 289026275 579312053 836472464 888778313 531613149 753845570 621361268 958361511 79040038 725792292 856705180 874907003 432220715 658329817 736877626 941763109 93472405 987117396 394800573 895337616 380721470 837294942 139046940 261318071 898762054 903407648 923615296 975940474 192481446 317080014 32356347 675606932 11934352 167550030 672729562 778240844 428732031 485286458 146823662 421149112 721060876 811857234 201729545 860997285 588033874 873565145 76910920 952729147 466450948 764058566 74009256 387397787 695041378 978038991 532763337 961463079 640723274 686226672 732153131 979702964 633491337 731049098 935895649 976154864 269581254 353291286 809637543 870258834 602792853 637932574 710207892 810048597 549477463 966217705 740382914 863374396 435469187 874301695 116439443 860567489 920062797 962795335 791339326 903394929 235194842 544785424 505165717 939599638 174868633 281824398 89988132 588923789 267594896 768304460 111879639 744332878 397293228 643136538 556735059 881548937 57143887 61467108 306670565 669690337 285368104 822805068 653021794 723327934 229315521 697846662 869751634 902459421 384112171 958284225 675198226 781467412 557979010 733476759 128164118 702111536 397589023 685802753 586805018 994108617 849057312 946188232 311792022 809784831 482700096 893348313 874928107 934841793 418644179 939948522 336086977 722886617 486573373 796985843 506971746 879143631 197103801 477650316 192847883 252085068 106839779 552423090 929578544 950995592 572045230 907810495 461053569 625566620 432513538 655793391 156631121 870895836 364048990 537678852 410133369 627333215 71514535 124085657 325652352 937918670 463421469 600290435 649335903 965039184 564164164 951722874 889759929 961511665 64882482 398991691 25221462 349688645 980498197 995957827 649073950 923107689 306942796 936491850 760630318 868770534 273243782 574145244 208988955 471770311 933458253 934194932 453865875 644341410 346530352 586403408 370189995 477139121 984382466 997452905 52310903 567854563 138691068 275593287 558271960 723298741 101481334 607115802 739431167 852629456 465140780 653756847 224262322 288666206 158656215 843442995 275700967 851648861 868038346 902662030 361230882 690938941 461897392 485845068 648946140 797062387 912689540 959847917 175449478 439558196 13820750 717500554 396790558 718206371 242838570 538675263 601389756 730447978 941777005 942412724 521737851 563827569 328886601 793607073 995145098 995560505 373580953 727007600 667682898 699234704 19277084 997435579 776789131 925216057 538385255 636594013 763487162 869035764 968193745 983014879 202910706 697942477 361551447 472505790 215819475 652961477 786813904 823628182 208514293 235500302 471428817 959133331 923468456 998737880 859681204 885770295 983104394 997013590 834015006 902817526 904477587 963914220 797669579 883613145 629243257 805619226 693405509 784517934 102718738 522870438 459907721 627608336 88311813 897894720 83669361 698469560 38018424 203744163 400766844 560049500 641214258 809775127 278817086 293330480 814076192 864069546 558742019 956463885 46574567 335453439 101920894 465568260 546400777 958064719 780528636 838672262 518161124 638381949 42596516 466368468 38779932 55036938 556567323 987526380 717793401 842475418 270739625 701577692 659062426 834077326 981383018 987703483 489737560 765464121 868093410 916324851 815338551 857571330 141658543 746127415 454520482 827922932 33212371 43452128 833533303 874020253 196897767 742621112 854201854 858687785 941973759 975890167 549003198 982214980 93505210 938736246 971996656 993873717 28707542 679669100 22701749 369980474 706686056 790692451 873002313 945776642 453874944 463891108 473840793 486241144 879531603 957910904 756646212 947741393 932581881 959961547 559549502 841986378 341525779 762290852 253871900 592971934 74035990 243491481 820185287 908086721 993217546 995467956 446019936 688593140 805996441 833417469 372319452 391166530 234993114 236290254 712350101 893628700 148245862 611876142 22144092 997813082 279929261 481595231 599764276 807973117 363821223 944967910 997267219 997578286 456716344 523606203 241109969 748984045 508705274 992965391 685752118 698006314 273881193 436333262 759389654 876814513 771916204 852887917 289906927 873693026 170026698 696300760 307718682 742300599 593038089 704955005 25633449 272417893 33809848 340510489 571905161 634377057 578425955 587038352 875379500 881410307 227125143 941919777 57087705 300675486 624560405 898406106 365216734 812586097 449842336 690266068 919947684 993786041 1638117 89463156 518670482 818110215 598464842 747199338 65714200 66510085 464161550 675164833 250194252 889790254 370789421 684216355 814680957 970433565 255190229 566592753 852867582 855899218 603115192 941628744 172868403 228222064 486322335 807517139 80948466 713502960 648519678 727626751 376426397 920864347 934359443 998946784 127715008 937253092 399187581 781302677 266289213 452346868 309759095 765591118 556943789 808066728 259384256 743956522 810705781 958298892 585932861 871504897 406455446 861007108 171909131 709745049 736545640 980887907 681266168 991119360 410709198 737929081 742556586 874829677 609910017 836635191 457686299 726816581 895464209 939494940 466362191 490880258 522225436 888099584 373851020 612905025 781046564 900772364 636969984 975949433 227099446 582064212 373407964 664287373 633894805 917609932 460949261 709188787 964925653 997539561 882484509 946162199 88317664 601374585 866940490 876560568 719192852 746783187 911813695 940094489 162847860 476357900 10842106 222171393 168544558 627665403 893747858 984453835 449410074 850046361 675133755 879987194 360019415 599977404 84964724 387424844 964634318 972151311 537624753 833615187 179332935 938369560 56508353 832361494 64239461 903333922 285124676 670341760 874757862 914819550 296972712 311534039 126820720 558776818 272709463 877170278 229295536 520292625 919163979 957730680 488034638 986048862 138713401 310458896 131009780 269216449 296013969 951912553 205115733 984082973 20900985 771404687 335424371 901583343 303994559 589908856 614753359 826627232 26004810 247512678 967162708 987992407 491338890 804933104 484100997 733748856 220790297 368078424 165267522 310824499 310762992 771353460 955376203 993829437 7259423 491543872 366059012 884459893 149622525 733115143 316362256 468769033 605752212 953732418 382376779 532797272 462898306 905268936 49541634 72917777 577241086 895962572 169815681 461803685 22934591 833014785 481340992 818898932 225815462 375048721 295139642 303776342 781489330 867112073 997571305 999825321 838755584 911494435 974799646 989946463 57772395 533995655 903636962 980448678 8761380 603781319 660845752 808571958 577759767 758543227 241530199 257453004 706986982 879258940 415528458 947690877 775231946 850880619 142151182 972680932 460087756 518931892 285924446 625632816 1573913 427391980 476275650 778964598 347453976 512969543 762255701 872591774 568210913 900408683 262386611 728382730 213781277 452579585 372842920 979520435 538897035 995477426 492257653 680752208 500037004 592384685 818889207 900397718 527804807 636481385 299608537 839557488 149769525 949571007 500494979 537386410 397250217 831257239 838394956 974869532 165718613 719765382 367554173 431747483 477746657 602820595 670170711 859745804 701925910 979638571 745761371 761390401 516777312 983767279 436136924 665820974 623635759 791554814 15159112 586738386 998774372 999561314 117195644 173412124 394828767 756500059 90353758 893444585 900129913 945857574 157633185 171582486 798216267 928661722 16716416 680539885 88985094 496332404 705055535 938060761 645727582 678578145 241831996 714825565 236010176 479707789 888973535 967935253 396160171 483458645 294150269 644950328 715500441 931799776 479824621 490659610 689958160 991855187 443627040 726240013 201582781 986177662 753841015 876401465 284057664 682097704 557710108 955345759 648437553 828411497 916881812 995273391 305078654 685733326 511163344 569514611 371475205 763120596 11524613 398754859 387574315 650156873 506297109 681634339 690969044 982485511 433104829 490576809 280740221 704563940 723194050 881349485 718898443 889485581 92646050 930968524 305960417 422102919 676584897 766967589 309391884 986429933 392970804 865434801 143003827 735929225 118128158 222558010 756649560 913208188 47055718 458605163 298123152 827706222 269456196 308668763 47957091 91889134 307166762 901693093 36022364 320951657 248067667 661464937 410539870 596684681 184583602 759641191 879225337 925093311 691610372 858630786 448361873 695516482 492778378 640310898 448728598 941417241 605043845 894149168 497753373 620406923 337084477 777600670 484059270 698096059 30693552 931837337 1055508 562281270 685176347 955689155 317767089 716939712 599032520 927947372 536763092 570661490 25279316 872694999 745499972 904013478 390512467 526264136 337506639 999325221 345177599 583142639 432327592 534117952 100965497 107091842 214252722 326154098 991897644 993729399 579288452 845418931 512188151 834686856 452149229 657807467 92686640 828290266 908108810 958475240 689284872 907408900 263107725 351674347 309013473 736110086 303417360 840688518 736698744 914346826 171401613 335072113 758306851 926587004 709403170 984649246 189872852 418499639 706577466 886323181 110842565 190753983 118040383 929623051 921626253 931349717 665032575 820023599 462917324 641391527 559657590 881954759 998280751 999259160 606819015 795766052 906447194 992152209 793711667 995468948 647063416 828812700 796370634 958027915 989096429 993749157 771978853 952415369 961055302 964081974 916801084 966273816 80199076 552516489 443321686 771450272 719762726 968238572 525075443 548132701 418858652 425302082 654254783 986878774 748748999 836994924 727465131 770328530 294020797 841358397 79689986 172772504 323453095 388441153 253131888 641026529 640362691 864883409 370795421 461392197 78807161 532536868 577028628 973050622 544132864 745048282 452509614 946690423 556197645 731854878 189616627 664601113 364285012 919793899 726499194 745521354 927945344 971481685 912575210 967689336 319801984 540502856 870874443 944646847 160536779 161716967 249023377 427962208 143736754 184018152 251887616 254785699 954161710 956502745 169004142 203032143 187960194 581576691 238157760 999524569 911690646 953270377 581089167 586762478 65363748 91903593 767620655 898674029 32422154 344996718 795006191 877875185 826549483 832957789 261791729 884584339 405932107 569220021 524973544 817952040 769862996 976051167 240140705 453423866 824771175 991855349 699869666 774829455 943645210 982272677 977934185 984788794 214954585 592320549 404618218 993620247 86538583 676961789 822986405 898627544 820218917 885271532 793377686 824770825 160456831 266227121 175129809 260556491 327618582 662390623 52708264 490507319 609006728 851892688 928139869 929565657 852530372 944285149 562589502 665900323 695867387 795864430 298340909 455059910 379963228 692502041 690654444 707156984 469926897 623009113 454074170 761061226 256824397 861086016 937527876 974701589 109950134 257584710 361197269 458074763 159973038 981334101 605413864 813771063 221319619 346675309 52043882 252362067 480984524 662988456 751531526 768977696 207871072 300939577 497768205 837204072 768558912 994215915 681276786 952394536 191560231 360277389 771575499 810864447 449640647 640012990 568529868 764538798 139041629 502971429 715037625 785576961 898868799 980882626 262180854 627061082 269386011 989027221 918135719 996059594 472335923 642516976 651447730 849751752 318915159 533946142 872841222 974625349 1689014 385761620 258196433 397048072 318120197 794278976 370161597 919724615 337216822 766313946 104137245 225076704 932264435 989347813 200172472 505853977 665544496 794750480 826504283 866015181 227758149 730224005 325446922 358412859 526892730 920971825 447275931 963440220 247781545 301218601 586409967 813018470 918751581 962582896 334885224 830739216 707572252 853108718 105632434 990647266 815556356 965430594 456552546 567753404 75926107 857463284 992041954 994315072 149441088 649514744 31859732 615398829 523581999 824351781 203219975 393580477 960287233 970809010 681010787 845594571 268816356 817825322 718675126 935244465 967878065 996328951 9317745 792304704 700764851 838591531 519825806 627499730 346726638 571879028 877583690 911905204 446020486 671312618 635102789 846867508 874308611 965355714 762075109 858196714 542064608 881147823 743275811 849081973 28601767 608872055 372555134 496449165 442596275 579273685 528204395 546958759 813060712 955113900 162729821 881868328 568168092 755821992 677843964 920920014 226098251 926011019 926796088 977982420 968205288 972492842 271606702 622210703 170857794 880635869 878076085 895071702 445115877 645027649 786810731 829561477 414273467 908797549 768390222 854681127 389459563 810799776 253367587 807456434 60873200 965548759 215363951 877388603 749075312 945432028 509465423 536178799 146933038 583357699 13580377 445348657 282859644 765848355 729011195 915122393 616932112 837124431 419160519 558141317 291966310 717397792 656255706 847852311 954838913 987046587 923252857 962332172 667606231 706854855 935620885 990983863 769935950 880854594 584782731 987834248 906883962 936013128 619403363 839797336 831461509 987127715 673899545 922187790 865500898 948679965 881856369 921818909 916460574 928135137 631833975 887980227 974756938 992332110 499059482 691534718 152913544 451629476 572317231 771815573 947358158 964636671 353934278 696325474 839652168 918028007 342553286 973005309 83206168 735675197 63665894 983654712 969800324 991629738 238876780 717006799 165631655 531873255 828622017 834063672 516376905 898893444 421433597 558567840 898645555 898747566 345581699 629984558 477258132 868995464 370055132 801472033 473094599 567622086 872132785 968654245 130361929 157423658 771409687 854888898 106044577 245452122 354165542 360468487 679356564 999251382 680383801 750122254 243821558 824864836 418928982 507182862 375095185 665534879 245093162 643484653 85763284 816050063 426466086 909513758 857311139 925438235 192217287 916639809 933426352 945481383 907197797 924849523 278237173 528022863 770841105 819516438 259750272 843554686 15628925 371655167 984812081 997775739 966991452 971938162 580783723 682426904 388210306 664529631 651482458 716465937 395297976 403962680 756094626 771725401 570586301 975701470 735979871 750679134 219421611 310858308 456919022 738430590 288860232 977423733 39824424 745265311 790211372 863699390 456145162 859215998 647849119 744964501 389321230 493621276 791365379 908359641 763112386 853726013 783193769 865508089 411152791 929325116 324184273 944284198 557082947 639821623 604390831 643649093 873367209 938741605 840221573 934705620 310805112 986644924 597302561 744927360 506271361 964413775 564048835 668693147 773881172 985568560 33776900 347877801 86291043 488709935 385242538 959127918 579203194 807165989 455199031 874105599 643009166 664653927 370109017 992907343 63514767 296075685 184403656 586869286 408499967 858033906 322530097 423481717 667013682 746785006 294060671 983545786 992558169 993720723 670884741 927558015 858295026 874409131 198055642 246308098 250644298 306023713 883232818 943051588 137316736 690898435 920680456 969723145 189512095 383612446 879674934 905593044 687327110 706872827 3574455 560678101 258723978 607703158 325477076 913920676 376348924 715929270 105891910 797601156 367505360 658304476 929191916 991654816 516717324 567554646 805362436 833543787 649485156 967863653 815708759 895839359 263107518 571942367 786267481 838317486 815000771 818689793 484874881 676303502 402032142 717881070 730329899 900635960 891818704 935886137 610500675 655553882 305493732 441479834 424157388 544520102 961083738 984559582 496483667 890541804 458566334 472254981 384524060 681117129 960230326 965471825 195862593 674992607 341628697 765371518 599564344 777166705 670319654 708732646 951052711 951334338 311544029 613714989 983432288 991878256 428486169 875156309 151838795 319612045 922414364 966758485 794258356 853856508 768219158 908695992 233338410 411932127 401140408 486215267 174647927 814824010 429090505 790274950 49570856 608530760 378985678 641355150 574062412 617132763 838979752 932983895 946258784 958711740 413681068 700525727 795429667 991180006 682701357 710349996 408922733 967707187 681460719 725290671 904753629 908982995 837931647 971715253 322176688 934919199 790955786 852129724 589255086 749681271 683508102 750163703 640243177 675537384 815735547 848084923 492575292 844522282 710502511 748791714 928865048 962495908 758674513 935090447 406146741 847547534 167576466 423927598 569731369 780307011 82757982 738123021 229715080 345975459 199435363 908013216 931266134 991776139 840572602 970977525 524967769 780838418 46670956 919827394 41442157 460265395 879861478 967800935 532289156 890971543 126562232 839261795 551368075 872352284 714492923 847086420 829716497 880493983 242299637 391325330 746821008 927582040 374980369 931127951 61784363 275566790 148988530 223464703 37576696 780480600 593528078 696904728 211586172 662554335 140170804 196486238 322072027 477567105 183160242 921795472 763004843 903155312 841186746 973446716 474792048 616867876 390344355 431472670 642438643 838008659 427905379 797394561 151320474 723670939 567088035 894526084 709545330 766819238 635872196 852187700 352990275 774625927 132438029 953372020 698805158 747538002 138378821 335063569 953526019 987991663 923138052 973311284 566773391 590558874 546940983 970171434 86644424 771322404 134337971 571255724 521022668 792065500 770585192 799500625 848684971 999592767 903981713 921775104 86910632 835425553 820291162 865111400 432475088 449266044 566449406 665415825 757295519 871592420 361478225 967526119 852659323 876275365 728250499 758308370 728452697 801598989 83373773 510348984 633153429 841320963 448001092 545514276 657850226 729973089 550121657 980431790 974689222 989057653 422500367 743718349 517984976 829979813 578472353 679941567 883631466 884945089 410485172 445452761 101487810 212975733 219500271 495823355 457765193 911924096 917616083 997318465 606973632 886681407 734079848 772897179 671698092 703869744 267760328 518405704 143612081 695401095 25177767 134744761 746416345 822938570 280957877 653008824 923559430 996280569 180116533 934214099 949964822 975642552 33906105 96955037 648483841 806443708 219189815 841040344 270721302 700027187 795181118 978712511 280858572 962488975 129172136 211989687 228829927 537740487 926028123 969268011 187378509 735928352 825197329 951671848 40060070 109014554 576480822 831025883 454882153 659812029 748425074 834478837 471412078 513097166 82941571 376856370 869086671 945720209 594923492 842636898 645557835 742767229 518735247 844450686 334660976 740493896 268958902 914029306 511380171 752692284 213056792 366102250 204969774 338209552 793419858 803692855 956057926 978916394 657384725 809970401 77743844 629942654 737020819 781516244 461599532 629274388 54378848 292855682 36418534 505911999 62141681 783904721 448174644 669627234 256338410 361802781 486863826 491740418 360135080 616525217 656497390 912416360 754003613 947202021 867086120 877581089 675814612 758992389 212315667 328147013 843878276 958230234 998603359 999146836 994783483 996251821 388444484 897320550 449846005 982067073 617690959 995669697 867443853 880209853 730341758 970497021 15531708 433380011 345453386 397312695 796625135 976968794 123312878 750083419 253356018 585670513 629388436 933119188 358320056 537478444 344446282 390578730 567403224 998376684 902577924 930046484 26357175 370167914 799353032 862458434 415513067 757783581 490613706 961286048 208774949 449086433 65630191 800958985 593468386 646469614 998802639 999070124 203136692 900978939 510677081 593765175 856178331 909377593 39718039 712848242 913708290 930432380 221338926 717057857 431420809 962954410 667203584 969944325 588980526 851005260 386975176 567550148 951444999 953926329 523562115 905442138 30266462 255579195 652643055 860782817 957880427 971949005 21135896 292197946 95791212 346626540 998385695 999800343 92488087 937352568 597667035 823637098 83569308 201223552 141462741 453579961 61560398 716721630 340864056 465832248 497953565 575765317 172475934 221609407 171990286 243082970 120352350 408113160 1250579 437448092 303674222 992815980 139552791 145056930 764547890 937420874 830068560 858204267 461512084 985630150 644259109 957110926 598608450 621254060 422453690 737241639 446244220 525293345 509311253 760775198 370931471 520153422 941626592 956639073 203752686 975060554 857850294 859917356 433108519 988224839 488868168 867517891 84394124 815715614 581176625 653065348 990793140 993387914 853013037 918223969 270783272 806399933 123277 179174305 137702589 967078756 40571155 162661879 133116843 781626561 966718218 971055713 552455469 974294298 303246611 656752318 531553982 918060332 317244621 589028085 756261028 875306164 922223001 991309720 733115880 778278104 631908709 728291548 961762842 968754765 729983459 989010085 609682442 868234704 52425809 151035308 652408522 693065730 653031048 809243375 534710783 862150911 171768888 656328551 55747002 485360049 331043627 717103275 119373366 666309282 825494035 946006640 313653856 758254754 519843484 522572269 123887579 706828591 906436243 928878399 728239475 947358424 999299085 999551022 681175379 974635366 67486843 339741740 63019785 831858906 886300826 964686271 440390563 886736642 163348607 985879253 717148154 860522852 431419028 732527542 302710669 829134801 318323631 635232553 780564589 788067318 748382896 924012377 549049323 949697618 796161000 938834389 74057845 773294718 54163166 99570551 668508758 917199622 528472611 934906485 924142120 947941262 519675446 707139818 503921591 554543826 969829191 990603271 317557943 511972503 29008132 664515264 989978437 991141743 121967222 363101954 435067750 850652544 115603591 978624602 16407103 218148859 587479421 900118207 535817344 556199805 386561753 933037047 590229173 739486287 851749275 933651699 473514357 843597810 704913557 974554976 102867806 810004437 618715060 777926611 844937415 858781855 415627228 967552556 431752296 523496476 60798698 347374277 580615077 834097114 744179728 862504841 683408584 921113897 563847680 964687752 46931916 378389978 280200671 538951753 987727845 993485698 318378857 405918192 189712322 596097386 687834623 784483675 360461113 792705624 319406656 478096697 646724426 943471368 650481005 997312601 470321094 947372280 936813540 987360037 175221791 544279203 372355619 879634883 752559427 847616615 944487735 995071156 310777042 477069055 849585818 985080408 812690436 830683707 702065631 757685024 782006975 824008300 69171294 716425287 85768014 593519745 218797475 599021386 472573910 747486904 885397796 975342849 449776331 882366286 316333022 420948771 918908755 926399150 383100821 724224654 132643124 414146662 606397834 977325608 127827982 477253991 623916371 752987440 492019419 561941049 706314538 944987743 552802433 903095709 927741002 997173749 513127309 761520394 449675153 612265160 980172610 997588316 41896100 536222936 563347930 968310025 368665850 518467785 557398856 635953557 966577001 999095938 317109047 951455965 364261060 709468825 464738389 753997184 805988745 936809299 666299554 684224289 488027992 778401870 488433597 655134880 797220111 920155402 656937617 702895411 585346298 949220717 266061876 405509599 781458764 902417320 901948837 978504517 569738499 644823891 455474452 658070204 689303122 862077194 981651478 984380030 306109995 987200643 308918592 603274748 155537936 365453801 691115760 872854954 669473686 874453586 979713144 987701887 613124185 849023489 109482980 286239690 267352185 463846780 978242064 993441912 552068362 826521606 133920078 623377823 496251777 689625195 420339917 928430836 998108435 998562985 375746339 953718981 651479284 789083323 807624648 923949447 139347240 871705120 966573424 982413497 311476866 467277899 728276445 800459536 263547811 442525565 144987865 175641640 534695898 987024540 170800234 770306069 469935548 619082181 628591352 743371287 846930620 982551063 407942021 735630510 444738101 839116765 510650455 773374661 639028888 932130653 127654952 619305840 828854755 897872028 766918579 790833815 589452754 846878540 487685681 873378010 845041562 906752045 483826849 832314016 176821932 995980185 79166220 952299752 924510588 936100606 102062943 510496046 959799936 977267196 395252372 845317721 176730776 208287660 10149575 680001042 560077169 941698433 333032289 382863118 795924451 809059297 905605948 969225729 321761590 731829633 60402864 786207240 68298817 120240542 259326701 652575188 761283819 935208026 836760883 965940954 818255380 913744098 887917304 904297176 167448476 461516372 294225858 706532195 561398223 748336201 23457633 179364518 158549966 428759935 286134163 341235465 1210134 559132258 795049841 888805599 170357516 826004904 956926583 995428411 194026915 703439646 548398522 715602033 49565701 944451432 158214626 179408019 633874087 807393890 801087635 816245087 858890856 892690364 110073529 785865042 304435849 810749486 60296487 970998331 579559937 708186659 136382152 942326931 256453527 271633206 738501817 974224845 11579421 610949935 550355535 691875182 272401084 471589443 450628032 952085677 576727580 881343454 248104980 424620476 828681154 974078258 473613559 683747578 392530284 573093901 486672302 942197664 228008137 683439787 321239611 532046985 1666374 736093095 44692712 600853192 226953787 606449937 511291326 688490449 141674600 248932085 653909080 965912580 858567974 860929067 304032244 472354084 430333247 947690152 443981707 540673310 102260027 374584574 302764493 975559113 675015148 704940544 213232557 846313349 800209124 885632650 681804942 894036405 520301533 920026043 651051666 656536526 635223325 891512960 61031663 354500582 862130675 883404580 69313137 386833977 36334619 92582974 840818012 998965212 98011929 465675841 564681843 746189569 929346932 969548514 353864850 930375069 100607735 604527588 898734187 972738865 418474015 920305991 892586788 988236767 431761049 843646762 424653660 901844598 850848895 944969785 680863693 707672009 504826840 532118133 673888147 829459475 393461687 474874208 4650488 282169110 830626261 987961355 418102200 489673308 252519895 371375548 439697394 616334536 84117712 108683897 606169538 814171455 586023588 914945331 790166317 874182122 676169574 724380564 262632112 717857725 692914910 826643463 243562039 274843154 665021723 925293616 726159407 940251237 807083921 952776437 459620565 539643844 769483435 880664400 333317020 489049314 606323849 959339670 861994027 958277744 284313782 999695127 10924424 343731619 813067629 820861247 514712269 622166241 91135155 426730473 878613989 931773795 827062595 878840150 761520904 835123581 298893614 905737522 762342769 973272415 682761541 913378512 954960535 980289461 958771598 991289472 665676080 880569024 799346507 894583222 63343202 677949186 191848167 762083765 296014655 638609624 338665311 354091084 589477860 601999531 908162072 978284139 478087228 652011133 685462185 954972672 304629521 368265462 3361685 656375678 728325914 975110489 81181287 665780270 755312368 765428106 802623084 931739202 570798155 951064251 294663057 882214297 959815139 972256103 76753393 432979362 429516276 801197577 565721234 597367735 250297396 773140508 684201141 886862937 181574713 896681593 874160007 895784622 364573257 843269954 121383802 764319115 207023052 306397154 758791753 916733413 402902874 418512760 384208345 884522096 399085053 626035780 731725 618152855 298842549 628879339 980781345 994970557 731857067 920072437 406560336 924420314 46820647 971346150 472761561 530257969 412896699 750233078 970423281 976331510 983815427 991797404 632198277 874968769 678644912 880088759 408482451 791708190 834671149 905017045 180239577 287998190 466399493 673200486 732789574 820833532 854050900 908565718 78910457 335077164 715026598 943705469 490055589 921620047 684630358 761866888 974792929 997248840 819690903 897159573 237152384 396769603 246594814 488192956 971213372 980491003 479320610 798341218 42405206 651625279 205489245 736400399 936330819 960747499 275151894 804566298 379022749 793572933 236264705 354220332 646573435 675569404 882278014 960740720 434189683 847365626 558220300 909466042 880607530 989176035 815609213 992413086 250978873 477430262 507079462 805216242 873946299 989432670 672442646 790918777 890271100 996550762 855023228 891222500 538375969 683775972 619262286 742002434 254396653 590551653 37975172 207194108 655038058 853144075 971986006 992265858 92971384 422397252 884624180 900175975 326011609 837813390 244727136 750840801 574840386 616242671 520135559 839089397 436393779 906374342 640613352 667558031 510392044 867283796 941717836 978822067 384077907 549713035 588069920 826771852 81254211 364433417 814274285 844212407 21490266 211776416 974034106 977312223 20524368 589983792 35158434 339848605 188283678 432755029 199955111 852185793 882907061 896188771 993890030 995776355 854980264 942803508 538044965 775957819 132675442 819888957 532374074 868885205 363035016 817090707 963082716 987096917 611568001 880651013 276444530 443001254 549492811 685654291 570655714 753297058 652544334 748379529 257633869 701669756 606403638 636979273 556217401 615187933 303204614 338609535 166553030 926988140 125480646 283436583 693823755 782020759 650588290 916749011 410535699 453463799 886189509 964718388 863507657 920951963 514148574 967067917 304120517 581427694 270681299 442766570 377829577 405694515 720570755 922119603 122937038 544779410 607084290 792357137 998209348 998992108 990979180 991991802 125569184 718170777 389153831 872120782 339121974 461693714 997007167 998708874 640980769 847893193 559352806 950377340 480772273 617822327 521761765 633040497 627413094 993102691 428103746 944080557 954477830 992404906 295131991 379092375 88989964 779285892 479480251 937509489 850945946 940994061 911238500 918909868 880834710 977903053 128593526 481361564 879402611 907170549 686000576 938086131 634272303 791288500 945915219 979993057 942847206 965634817 304857992 524639567 841293537 965775761 825864256 826226248 188724432 567499402 106542149 565336395 95189414 564278516 550187914 922470205 574732672 588014357 165476569 449987864 324767323 330184752 408889579 645135516 734006652 911498224 723223303 884057776 814400908 925565685 321707826 485613164 542181890 603837445 81122969 248444552 583004373 690520214 246015704 366295524 220132143 735268590 436274963 584148525 595072325 834396670 863882376 930625848 844491845 990539898 111500654 229476721 466709323 895398480 622713875 698846053 631428555 683280086 622908031 832437354 125862667 487633666 729814641 971097297 479285037 791434548 809021990 989857317 685442861 847598055 902536366 929412050 560275116 728272035 210346361 731343014 8871221 378403405 203407783 806708303 157771931 304368407 146563187 419722404 826166617 940588756 520997314 541019122 414845179 710517391 51629457 65572568 966539392 979894972 159947808 189813895 563883769 584817174 294573278 860397845 221274053 303694981 678368389 889648456 202821457 880065028 970606603 987101538 113467888 468626226 458662193 831451687 672239881 943417155 461148738 917870881 749387434 763432431 498659900 702966577 582793648 811443429 570874334 972817197 288330621 848234750 875074703 989472964 289926332 671045709 571377100 810316033 261073922 702828482 924833742 966685269 846361054 940162183 77177019 319660275 794445672 865730006 885806680 985591804 680289839 884853212 571690141 818000854 660109690 754001931 836315321 852378235 709372675 873428946 807167068 890230182 834260333 982761635 55905304 526951759 750448649 932469754 979917368 990304021 981945179 996340178 672993479 736421754 483557878 652621676 57069165 952227075 749295069 955678574 649062924 786175206 55784484 279488353 737511935 880866341 355141337 948803016 617696719 623263199 107548488 799552396 146603308 376931870 981225637 999843078 577351102 824994640 867665570 889095836 101347 483993957 231400499 503324934 520285774 634126623 49960186 704874593 17340453 444031582 691995306 921339080 629316166 685984388 901282359 961129864 583105282 704342358 882097488 980922158 749426046 771349813 417910991 658752146 729171453 945494867 9946430 501321936 36829858 490651521 159108090 615923105 362877332 532081653 879434228 928577019 181994152 670630004 350461959 351828059 877990331 890001767 469578663 846291745 717444687 990829470 276042036 880448913 202381349 678088864 559203520 926871688 611872460 989486591 298631581 510168355 321349137 479853785 67664496 211885965 556560901 732055086 43478880 72036340 478385296 672155747 706355380 732476245 15480143 537574716 421818178 928953799 22048008 133457282 981098567 996468137 357913068 760623345 92659465 618499376 873480249 947333525 867213872 948959093 432557826 934506540 300347780 559795438 329093992 561474441 997982027 998564096 134171804 175693400 944153722 958036043 819447125 962883415 720195026 814530015 60397829 615517858 571220042 596383527 104294474 801363045 609528238 909341879 896828006 920342704 772056262 942235406 464684931 483049030 838351014 941023350 632500499 963431747 598493566 741911862 894886349 997010654 933829903 998022009 130333426 475694906 114174774 574409013 28148213 630022184 203946391 635298293 149969388 581407803 171431334 306844192 475369554 925151180 196744604 558392405 661200835 812315140 600674990 891144244 711879098 997591841 522446388 556494343 790406446 854297259 134050680 869582144 55762282 580674757 542415111 766968669 717487195 718917388 247223924 979768280 186688560 564549644 335884879 972233214 896545367 919652725 372678010 486735237 346477187 911858338 847041590 987763525 324416789 429893590 555262728 907716633 754581170 761530875 790345877 881199487 74180007 87928666 844928607 912939537 976524148 988594150 695493396 871520343 629985085 996480657 748128146 816902221 740573705 909075120 410220144 686067596 756296494 902394036 326858104 468634706 704789136 861028212 609684471 675363467 665112336 673304825 632473715 798644075 491776421 984080820 240737936 901578064 612556418 739510040 147022173 569832116 797650877 990223404 474986456 779817873 731554920 862606361 182378450 209120085 721084765 737249362 746857289 778551585 153195819 627019612 949079123 998639360 186746072 801218477 653477382 708213365 615266635 761815005 120574347 901456042 721997828 976824779 793271408 848515327 668688551 714161374 369495505 980243858 746108857 965731903 186795559 780475648 480350426 750858483 186223751 699653482 785540453 791139246 830168226 911164539 355590178 563525390 893267017 956601575 418374033 971839316 939100332 957071757 585884401 735458814 125965053 888672643 993813222 999624568 627142843 799524298 820622742 997061045 890107500 921430883 437280715 603858316 793987644 863723508 73874876 499053772 452792596 870386780 262816955 700037833 309558180 371021732 141346366 788725541 487587003 756346208 332906 928942793 742347375 991778265 448429212 849829168 546125943 550504132 348456461 612892385 778996465 986640406 401533723 735386567 644479407 669530055 327460201 915081044 887903684 967155602 895371851 955719749 730551057 992745754 38026809 118853038 267106391 431915732 905073441 955283487 343628089 759736940 625243588 974429773 836109025 847477878 208499770 399995362 922941638 974415154 649307896 855944067 267238800 899689467 248076482 891762884 829431282 849997247 855130482 884256972 396381423 956912279 93570492 380099647 908083887 921461972 374919152 516036604 436804256 679444317 115957532 305136857 370082518 378363338 622616083 997654352 411367721 553676678 505662782 788796855 844076485 849689719 980936091 981782328 262575257 432467193 281898550 480816874 210460596 587716984 40605442 902024709 209376864 752325333 259608962 989482652 133458862 520548652 755754350 889686432 502932186 574351259 428416022 980927239 329042245 543434603 262380745 528439719 884234388 958683535 73089926 538445844 761604754 948945845 664982123 727952609 927285746 996878829 644560272 658814197 438434398 477631218 987149165 990584214 526141603 913298415 219139576 576593748 73668145 881521431 19068696 580501442 77369866 991470503 941968265 947470556 94944248 418883508 431504586 926297315 786407298 891249296 722174571 961709631 82024468 966509406 483987835 500813522 439682006 592490717 312556171 572552170 185216785 711690471 744000545 756285841 43010630 707097488 237094068 964883401 289699219 654397978 362922399 870642108 178670517 365046819 319143052 335492431 175836763 323368399 632562092 974106071 681429712 971603315 878631657 958026090 777236017 971892001 101424717 317086321 941889059 972016361 364728791 570459325 720570610 727600479 645559 18739881 135541128 594991798 839867499 928729828 971558849 990504889 22089557 179941045 417267856 556462639 738457926 812409124 525546123 912358294 526385428 711527959 724532928 893489408 926180589 994988435 765345565 933231802 969334051 989798418 320527000 841258385 672755312 941334827 217037469 487390378 302419848 421512840 97880965 841705782 643130810 898447152 301649864 820803143 186031492 750462390 389053407 970629707 641994994 784159890 518622056 531685062 212388995 940864183 946998701 977444021 337555341 918546383 1697099 714185956 37841081 855891430 896505023 988747801 10392809 466268485 655719221 689203999 363431179 920821423 751575843 953475997 244971228 431930743 929505217 955273858 316129824 508539650 959855033 979276214 218932204 513678458 901898915 931502023 522471638 947960051 507862000 977118200 829279852 941382113 738048797 825255957 695810787 792220448 65327113 870720759 913521092 992568418 836735577 958087000 163867803 820343442 981235347 999975670 873641862 898049255 204537550 231223568 21077340 860057321 629447446 755278697 605529417 701322455 153522554 235151764 757164936 767106875 15768980 612751089 147312417 553490475 881176218 986285245 919579607 969548331 408509319 813950344 319979489 381245093 416091382 635385181 241427655 605990890 666171096 823227407 564093310 951033173 828580957 913160714 993527823 996919535 181366174 404114437 191444967 608789108 26190653 767395944 197455488 479636648 64545943 979018929 145725951 834142292 776133084 794774640 174218098 331861708 125117160 891138683 503381066 916980100 703216509 972775332 346938461 561756780 109984530 923208456 818236754 955869698 289592571 569686931 677165751 855881317 600558491 814882535 297796552 464183257 100660249 749097028 235275302 877920548 25134985 378073954 417609658 709214349 341341874 743253930 750301024 850581970 341567066 848666321 835923732 839553708 155294760 417019426 435698510 950875784 995531401 999210752 832981987 972753723 705195039 754034377 782433139 930050136 528787002 556801741 739056165 949652344 631876011 856851508 458124703 851104180 112736849 797228221 431718665 995646199 651581210 896538176 312796867 855829453 8963575 434644479 59639395 106195542 502641128 755926656 277670876 368625891 394948980 450704109 662377728 865310308 220934258 774024818 315177564 938082609 294718157 853455438 160750198 477148292 111714142 495115956 131966836 232017094 105675890 940391832 718887736 797929267 46223458 450522574 123783141 735997627 719433878 946648569 236994426 932752947 284573740 693124551 545507315 736368622 37591623 655825167 21601098 728853446 478308026 763752386 58618503 404829736 563403285 973275822 62320666 849932866 650462323 961853918 186884954 445008184 331336765 644219695 434721803 738264452 745023156 804182101 40083711 874609116 706609988 732466709 499507048 584236012 118612174 599534034 309442715 720686724 986169048 995814022 702014601 730418980 192850578 677806886 542186198 877998040 994832926 998858671 460595796 809024368 458025113 801880941 488234740 890389238 208551534 494590612 490485266 587322018 634628857 989825095 750219934 934342215 118943966 467575180 414859682 887042754 843956899 929128918 920105567 989693836 912989464 974749548 537572741 916824640 57135841 787235081 251306976 494338885 981400907 986411512 601300040 837428897 722339072 889504876 198436417 209870550 704190899 712737095 790550053 920575936 580583468 638026753 18686499 398666351 931495022 934213281 324018363 895808491 318608813 736981266 183264875 760159354 237771371 417347120 789203800 999932700 283551486 355733412 127352234 129014633 855718 369585918 767560168 899893636 139230071 242832952 296015713 581563187 897571667 991544914 157377651 253351718 101721682 965194456 442549180 676535507 642188631 797424391 211019146 852816149 879928181 980300276 523514084 656740205 37205254 116851685 690801371 971438601 824157909 940762631 486778013 655059881 15978446 298658841 999854575 999961538 30253216 217201458 54487890 919671971 246698838 568363791 435225454 683278104 596574259 976311558 312305617 357618304 494808508 667469435 413823172 990757537 952260537 995791453 951678711 985162685 317084692 956118831 577057246 845610708 545819630 683211163 290128139 927182642 727728572 768623672 873420148 909934683 376318102 961835555 827446934 879704839 653242823 791811186 903506823 958137162 982382729 994327383 439675942 699991589 425487789 763420612 989645103 992019653 64993734 794523723 527955538 943594883 137086262 504860180 200859540 908686752 877507680 991124119 692300629 961904697 847079887 916427481 620344103 744763989 278055582 297156487 636777982 885691548 887803206 976168391 610044661 703224855 767420419 900509761 151692385 197456852 432423146 898408961 128972150 886745693 249376592 753571123 606754397 874730455 995437413 996304836 144525701 920147870 344363829 372572967 500954865 997028329 204318797 505911638 998972092 999150451 682845035 966455755 683194559 686905797 946090239 959625740 295860168 896804935 505346407 851841535 437919045 902790141 339689067 421975655 596851155 845512524 427205921 844327958 556271492 882701137 884144800 994157146 555807546 726543704 463627011 488295109 150967467 510037355 793723830 878696197 452623075 626446321 902329148 918811423 54400265 228054549 662119465 664466294 982562155 990439653 162347813 784138545 695683317 792296902 965782295 985283547 841864166 885905927 587394709 938094390 512784941 802985595 189617049 943254167 258449618 600219414 697377617 936672069 659751617 727736107 305068335 338552597 634441630 644462946 196513094 359209023 527516713 975594128 824298048 838138685 263347249 367845009 633898475 835642289 624028024 862433043 887398279 894741775 920347209 949270977 659148865 935567318 224336649 878414024 869645892 906977152 498883377 527608291 822658283 976725690 479034838 763671441 808074208 904223595 34477253 719738102 416886279 904133482 75673972 187472575 855463650 945879598 785264831 859204768 977071535 995477185 881538107 903422702 208904053 363885970 193545718 984146531 68238181 831639110 997988540 998622767 567703869 887200268 65985114 769364414 397161714 419116440 811208153 982410190 94586594 295567816 838435319 987491226 253353706 451070209 488188758 883319513 378095593 900781511 232662148 929632977 72875914 295178701 433665570 710759224 561710986 887266179 636635483 867948255 521944756 667785768 152935309 255678586 760859272 773294276 70598352 994972287 979687052 987887932 766565133 802344553 621903702 790037027 840566759 935353163 206115209 951357709 958926985 962659190 216191426 772697078 626224804 957650378 59115347 176313037 430101445 770357197 87699297 206079837 996669892 998453720 463273033 983144294 569686469 985899168 366054422 569626297 869136872 923722501 484464997 766206809 922343883 975942887 63429525 492274572 817570105 930173927 720841908 990898725 447924965 546832351 427102132 470427822 813263045 861135596 655234977 737928756 455610451 831954785 684531607 993946413 245990724 317944632 943568851 973107177 188964395 970793154 336922482 395806904 480802891 973589383 890433877 914342477 994499123 995609650 209366915 869749292 254481871 373080810 597700027 983830107 218772201 691797411 760084065 944746085 607926076 768311305 706127659 989384301 852027014 998962045 931219590 952159197 923444151 941539280 444606637 797999946 695852404 716031084 346456087 684919209 625068394 713296923 169435119 474628210 145777019 493908999 289408364 483460869 596008491 942454481 960326972 993629120 162047077 543255184 158755945 785533980 98562092 175898220 488426311 793043073 644666882 820538678 808449637 901194870 637954967 797664394 652293968 703397423 911715991 985037450 467006596 576080321 761603659 828172891 516852720 977239964 77881424 458108353 120110175 741042464 863998767 939630363 88366899 303322014 507182526 607608729 168938118 816622168 773965836 880364163 439577786 665083097 452084035 707132011 921294975 928588369 929883571 980766580 716075388 729645137 767244806 811822841 29167940 328650776 707097808 921350879 105141585 953078845 414115355 750655154 736194921 809573252 653442224 741055007 758037431 966220791 927103910 941301639 797619119 939561677 423654147 875452940 883991599 967499194 287916274 869089531 848679907 866846076 549523119 655376512 178996854 213146077 370959816 416962231 243997326 928505603 896984936 928151300 505269086 834636868 472159478 745697722 940887229 963991556 77162953 660743869 895156233 949867808 873467345 994556970 480463747 574444397 354138320 554444016 979931018 999174025 586839753 888947709 608188397 672095663 389661768 989405974 463568162 873971501 313001815 788893990 482014785 641281400 403115604 610521175 589004904 762159634 964280068 986327655 710414207 735036431 725427046 779251202 477157883 551908434 428822611 758985785 449036255 449531910 950597556 979569890 614588560 962920890 125907916 222821073 571576623 844882006 9957712 180444339 19835554 119927591 415034439 862182781 834770005 937904751 134968613 882281711 654361508 832765821 947796124 997814699 324154047 445649599 412253733 744528444 141702824 481330356 262050364 517395742 236105294 526202443 849606775 968432892 178820881 519944301 616636736 684415311 50912139 484034601 590972106 709479026 278668791 458377598 929047510 993093575 445557432 557725871 487050892 653567311 900723991 981150468 397564469 954759644 604312707 623891028 180201180 561367422 731549997 934121589 388392948 897844522 457696359 948544541 917010450 956391352 664198917 956907777 864776805 892902275 77877256 156718554 171585341 178171851 175710320 337819731 731206601 739802621 305173239 588101215 497080364 789700727 544342905 952810391 873941643 998939415 872653629 913259147 128412638 888329939 270839899 591826165 920677893 969947543 941449490 959861341 132512557 870859525 994537400 997545360 541368267 846779299 84358432 534128075 438098413 470108469 479581186 667943979 628083917 635370082 765607729 774105411 587474490 833406684 868330227 957049205 861051525 927427577 6106857 114566287 722286165 816188098 358661726 385476928 780049366 919096375 336969089 798277435 27912218 363337655 66677362 782021792 356693764 909788309 672585407 993528056 786421312 989838961 975025223 994831537 952584873 955602143 979660975 993891649 423425965 848305416 297384034 995019563 789080847 851849161 672608045 880388210 683998228 942242542 296664514 807747983 610883583 808577122 576855175 965718407 203556543 773020093 331683713 569044163 561629243 797735123 197692940 979899804 305420079 997662150 615281551 922617045 243762231 741060024 367517736 772904466 770159054 978938948 780803456 911023261 113437445 247709614 264029636 695373197 403706663 714088556 950641688 959868319 232497215 317236727 742317243 996849992 446241811 915068876 328153856 966151905 244060029 511392932 134345801 552408054 20934957 29972658 754795093 801963256 973540014 990313480 334181216 759697282 987791069 992629378 372890584 485015195 116643493 933955001 351845513 990763963 859951728 931705323 460660101 878944643 529360798 746905269 376415011 969432778 774190866 970767200 440611231 537238331 45149526 356288815 242050150 635039707 607663787 864315383 793378102 909313142 456246927 666541164 149272355 783592085 405987849 571386891 239326274 762267970 682623128 734950502 959557144 967755747 244264187 616670873 818891854 955350258 558083336 848878195 209044758 417552460 485591663 742510089 254841029 448563332 518193674 528374165 676432626 774535851 396103589 476079744 273635162 705520531 654164695 713003171 486600440 544469888 387163602 725015715 409423278 959793720 478928831 951373560 183616818 748961987 695674431 739054658 660942699 942847250 287534304 483879891 50090475 550247670 538219846 852370846 36417979 934102074 206099201 592199915 391686232 588321218 889591465 968300440 637185876 644523933 807284357 943847132 581748408 978560387 457319869 760695468 929522907 988986996 612114641 695465509 550500401 653768543 95928307 441771156 164514944 390688883 561340439 894977725 56795465 372657219 716691550 729284541 594378481 986037295 857749706 911302078 385749326 544475115 952680026 984956952 192847352 678644321 142742587 918726474 23509429 943042808 685590896 860073988 278687894 703342499 84846738 656135499 489431948 610619550 153959414 215208991 854899533 976363896 387173679 612232486 910476360 958185345 991235604 993007301 574480793 616938542 112502879 196369579 733772231 768077304 165259509 454904836 482459936 848969639 361950339 860466583 468168115 582622640 212928069 671626319 785981232 957377042 848943667 900873042 11085458 939489208 5235459 464035762 702923436 738484943 709868797 825874327 525776762 966581365 660642241 693579719 104531698 713162157 523960774 604529639 760739457 874299686 129814163 695309201 460009578 624359324 802296467 811272973 482339657 959747729 828639492 883449829 178926043 450368433 987793126 997059083 335231557 387041980 54876450 316072342 255644274 749731277 424218288 999647215 972594422 984687916 617488214 664729775 319924555 861648068 549057500 995996868 559293392 885691966 477766969 484034625 752346176 964347654 403512526 464141151 230624187 241304615 446538717 959812350 49644532 128410045 706785300 727348928 57997551 966228378 135689306 527485747 492362387 727926994 117858602 953458387 535064889 604496601 463953585 768772922 668248052 699867640 879256206 970621261 380068669 639549729 905015374 914644897 774996729 991624101 622422888 633815389 470963718 949239976 264680336 793728912 635329876 889122317 529039227 684201757 237088794 537415393 220812657 988861356 817094655 866781810 242878776 400365169 190173278 556119920 390899413 829088513 376189077 390913174 849277267 961139035 137935931 594911324 802073275 807850955 857496108 863103073 300545798 954175699 844693949 944118331 743701153 821614219 523413276 688015733 140702664 771701473 930608643 989122053 606992092 862775918 497285105 805401836 414526585 626605263 481882144 731707432 489804877 877718473 597730465 770096025 418067288 770877390 377403704 529314385 409496535 961315200 900388713 965256342 835186252 937398511 461223800 504213332 28886866 439777789 788170639 900447665 463535876 538517809 928368276 934748695 413949063 450517729 308335278 967286236 35265395 844293417 120924270 190541362 673005462 710870651 673600997 677170208 957755477 977047816 698895660 998263620 977752663 988128126 784789955 987465839 292767945 854866653 572883408 913586561 335193184 916531722 820018318 999151581 135215085 395338571 962361298 988465824 624926923 807470590 85086198 183596777 623714042 852531123 143774490 521154776 728257839 975870949 169996779 565214328 587078732 701287545 647476059 875777258 856978104 974084958 896565612 961402350 499281412 708211918 377208151 981165705 396410114 860390435 936250977 986097485 773712815 982414954 460595402 538154013 586193574 862302400 363560253 472951643 889188012 996265657 117204763 884938928 991992385 995622075 12558622 184927827 893029687 908486158 104975308 423567269 553664174 825868674 54722056 93451033 387633244 476717071 446340814 625083544 652430601 661930287 182637686 440233738 913082667 940389882 497523944 643273526 507635132 596135306 784066534 966313721 506731995 737632829 15642323 745996847 274460841 443232428 414143368 808714341 594669085 748698971 156597392 699269545 21049438 683774601 803072660 926977449 273902741 775960203 335143547 684079546 258991282 521099526 953693395 998207471 925347128 983303478 853081409 858819897 840144000 900571443 55861557 908266078 622673359 943758042 143070046 144555549 942800993 966150110 203285587 888961020 758584297 777141349 825724451 893319272 377975896 928414285 243490354 528388995 895976731 952298805 341641964 421384277 921156361 945030994 996420148 999872099 887424371 979603226 421201937 660496006 569010836 957972651 649949236 744009481 678403348 825234123 998115676 998804846 125557460 665357182 806485988 861993078 212852422 745231576 440271749 883269630 57275481 991631086 911759900 938779509 616974539 946559010 955159202 973988680 294682366 648128846 349892507 574062188 840007649 995977628 665717157 770818840 167919309 771223514 469007796 984999527 855734499 862167646 905409759 957471559 415284722 624425547 473826267 659154888 140385887 264851393 629444183 701188737 717181749 974837147 756457498 891961045 235740605 770986686 149920921 345198111 922559764 994338477 685820879 818163973 389330807 500700605 791436538 842972303 972929807 983086422 881475576 982350224 941985141 988725548 376059166 631690863 522159816 859288699 422171502 823813857 825868750 903128242 77831628 539022263 292885366 589064010 407828211 875155739 320940627 447079219 756066958 845210976 875368907 929223678 607239035 750846070 727175926 923746438 820179153 951353987 380051196 554993742 836319805 931414454 630915808 966624535 160692858 629391155 401748225 623861893 505429006 746635387 938337563 989688539 516326112 533422791 196171046 309092724 720432311 734247758 861842864 926206647 916444022 980813599 575811270 658189409 239615823 699623960 140391514 987388602 282483195 847720435 532553641 858439190 414763707 810706210 537499168 688962279 865310581 871097183 72102001 243526187 75724040 530744045 626010970 787915097 482464439 593714005 688131786 804378337 334143577 995503094 804133162 925012746 939944692 959457069 792407166 944802980 56173235 633319117 329901367 794380197 620259633 681168469 96163276 206560281 539026553 977667487 132512818 388125593 111066130 879341000 495763950 623333642 858419850 989113646 168328345 480921430 720203122 858728590 212334063 837162556 129391173 514850309 527930446 750182602 453874818 456645728 223010196 502715192 3269328 76026619 391484466 889359709 573943900 796110070 85904637 331068867 624987306 975452064 985479509 996199348 526102538 960958460 6538963 420456448 95464627 741992278 251834784 865028021 139685782 951995432 755002620 859222118 983555613 994551016 954487764 957236221 786392556 939044104 955903854 960391499 851577970 932303942 430582332 862594304 1459402 757102398 141956526 588409681 277878595 373936618 633341148 819053394 583959565 603735636 536267980 804852238 305191099 896155549 357002378 397155992 639671943 683166094 801872697 849169485 283659355 823036969 785073545 850271017 862808116 991101755 657333368 792930028 828062561 863852926 393257494 952594848 727231238 987723272 928540838 956126770 393638841 666366552 3085749 107625629 52415508 342176368 837953430 867257869 811556342 996908789 612402934 885040068 100585244 453217822 579362595 715949751 748466377 936324516 111069089 657718752 827715126 913736142 80128104 709945530 367965121 946151701 447732841 683436061 912092178 969647543 253327576 716721822 470328726 644147839 403496546 919804064 878840856 911894831 52300108 204081395 837903060 879102303 304948502 895493534 665348548 714565624 947470113 958717105 717282744 745951437 258521674 616297955 832865213 890741449 759432301 779426138 961662863 983461036 708668594 765510501 126509696 533925995 816385933 990787616 534972748 695291237 217018485 890681836 885593780 934487796 686912704 912648203 340418928 497054339 805431328 993291389 146163101 780883302 739112821 843093520 472930170 646780224 532213997 547199810 17520424 908212947 91609476 802395116 265877842 667846969 661681118 788311727 214159891 442454366 215039470 365671721 401063487 450096910 913090227 966932219 785194470 987146018 274194625 813909842 351790109 544951283 289926207 454102254 940845905 987767986 471670069 891603940 430174761 565949486 661035496 771884568 743275717 773337216 36608876 579803647 36388976 600245134 523216594 620608028 262350720 989439784 480199879 683660956 689217727 811383997 89944878 606679527 602265726 877901582 928714882 988864362 153780392 952661918 507205845 521507944 3695096 455700894 392091421 874030596 564384611 977323150 14782963 764128580 38117759 317858477 558817202 767170739 807078763 873285174 264724777 339806308 327793247 876516667 578601834 725374529 626589443 878873056 724407222 913371537 116898688 945242746 736176660 801437526 987741635 996612488 60521253 859019579 765711216 888695314 905239813 935389883 501494274 605198357 223196240 634622679 153044091 555343800 706131213 971528187 106478515 416696982 261625066 554062037 705168828 988759185 204113969 258738989 161422813 679610131 7165763 113235446 217844072 634317463 284269140 694762250 488130629 779451447 66539142 127907754 504367491 575554882 461905346 760470558 878756137 902046893 778124505 806559508 692984265 887402330 731600910 738598020 705337849 931794113 840096680 931509475 153684135 260413060 677525215 723274661 881727157 948772072 168588731 252529122 836776676 909013443 979591921 983189023 529445572 606514919 621481224 861927634 513330037 668739254 824784421 955371941 416679859 650214288 967772210 977526857 711135011 882368216 657554520 993446497 611036317 646065992 135549539 738057334 630698712 788470529 260675903 562037685 759004962 849078289 233923200 764099184 625641582 702652676 916043072 931736781 166857843 560198558 929042385 960437945 443798421 981620577 772399093 875479933 227385678 661085527 264439726 995996962 785747591 999752017 990470031 997020828 249087551 993883823 164740472 460861680 63602128 306799945 664676909 965273844 454667550 672579929 160043615 348201708 496770067 507694066 766008038 984216766 913647268 917260591 707471923 879100405 388976514 576223526 352531518 986330371 541981006 899474843 347463913 650708679 723508274 870450813 386854684 398402824 581225438 609606621 134871577 869869319 997590389 999046560 643533914 843003866 797539867 839961450 129307423 725690256 730392842 878131513 916451256 932843370 381951430 724958953 75622606 215827242 791721650 945936889 655832403 911871052 586356940 871102321 807043295 830161699 603518421 689191398 929887686 982349142 218531957 746338784 661996025 986871495 346352126 391792108 91387089 779436427 767191779 982762507 299159365 330902556 240732494 397737685 669155546 707476094 106248391 112457919 411196772 963473543 475981044 591040897 184815962 713708864 110843947 300534975 935526414 983444284 207212231 451457469 907739353 950721808 298339185 944330625 144782030 949549398 912169343 980872585 172869041 636154985 13857189 271421361 324529020 431416003 619996559 763881237 120804011 407299508 248611816 507500212 396025313 937908053 371190274 542368181 275750698 370816207 229313300 384548472 543776646 900446382 439142022 780228957 665205111 754980980 251951672 339258196 477915080 888108789 574772048 766403285 281026666 374810414 772206262 932408277 995348408 997007398 746119610 823780447 926174171 970111633 994985544 998229841 812641811 905577100 911804459 934143845 667441372 881157346 610660266 700521442 832824522 833435825 801740965 896265245 411909258 589185801 547677530 858070417 89488670 263346089 143146621 361977283 575117677 819234710 895519358 988061557 854065753 946776957 933310083 997231865 551260983 926875743 313995887 509466125 324868208 450707554 997059773 997954754 377717408 618965261 476508779 750594884 183021439 582293728 879262080 985835695 715486498 909409396 366715664 723318009 550657028 708400376 708399119 944954997 946158390 976427088 296737424 593129663 183146281 311417934 483705995 610796669 198230840 394441410 808159097 886808610 136339441 932757921 920948413 939836480 380531411 416394797 788584741 797650404 100030038 419995714 800853348 925687572 808235559 902756173 874500242 969850745 315230344 705783052 327787396 950681040 601568725 737866401 863215907 950848271 179811165 368074803 24808544 307134317 141019012 596686605 12789772 929689806 764258844 880896483 361596266 870066213 477477767 666572557 591128117 664861849 75967120 950443904 733087871 768165672 709422020 903208850 863976588 974959120 595178722 872716464 700810294 899168894 990768028 994854698 324006977 940256085 527833506 734324494 832286059 881113861 178495518 352034159 521347025 633047347 332742040 478155801 165399463 811245894 838785433 999235533 10632102 643280543 753148783 769201937 594917041 615225098 864813385 941748821 721788394 904574164 780428398 925513262 437774221 579268602 23703132 113917907 816892756 891510373 635304773 812833455 218826349 768261759 977148229 985363853 918099802 937845997 462908943 503925680 154838141 469548794 525999341 567043082 203906635 359289175 171978837 512874706 301415922 940916520 638210276 748209681 743149119 774944977 177965947 708531629 915126809 938926062 638570907 679870409 581637164 676649675 918856147 964726550 185953326 677725199 52243510 701617573 137375240 281719916 382892468 681779039 267889409 434534129 206399025 627604844 61723668 824884678 348474515 948621045 640860640 842564236 524645634 690801546 572580440 654122868 173506612 282013059 465736788 721672462 672476122 752494049 28001149 520754691 860559092 998369061 413740774 989582191 909022236 918567163 689427244 864904017 948180100 989061316 142740706 445540454 72137266 805412961 194898337 760884925 289502265 477174081 288988788 503280856 749090508 816166815 804929758 829307017 926702075 932224518 512004555 587464664 953156857 955630455 713479537 899195101 949675419 963727285 38293162 979551094 85309918 999848877 478742877 956572132 658692895 718763795 660142966 873854249 105476029 503365891 339439821 844506877 282373666 524639949 798786679 985886072 89082313 321649634 338505105 870142618 111594754 781448399 859856146 871225071 684741358 893090153 532115290 607846058 176042939 571214815 969346760 993321685 292875794 577006610 610870943 988480275 937486906 994940851 477020967 940845180 889184515 906450416 209942742 954107989 593331746 968957057 173632582 331530090 701318735 711325904 766181742 825133920 934297132 976185655 438580142 921966764 289050663 525903863 543165692 675408181 719718365 823170508 528437147 741366038 169099942 180658939 255197105 554568656 891237822 981242184 619589113 945486719 569293617 982915375 215283740 365446679 8525602 366313637 106373575 939096601 499613902 870723121 726070764 767744473 632629451 740908363 874232496 891577937 924702777 981276543 312132769 655496748 853848703 872362779 727785540 843637136 337549873 719682613 240330914 284215633 465164591 700134251 279332144 482082546 664456506 779646902 189346078 552857684 332421283 748861572 440774002 918574119 927749885 984421711 583288315 909246857 294914083 407294662 41648047 783524444 444841982 962593914 982102052 986850781 285136856 798205503 55184451 394432604 657692739 944233606 199470223 683640493 525933687 836264573 291459509 322560289 784878610 912642928 971192506 990553165 659795079 889466614 975938593 976528962 894786124 924593814 521276149 982975427 377819231 933311269 793228357 956361902 805992682 910045010 499212481 709725675 542049457 903652961 755408715 782816980 421462425 730862126 434384995 853819594 576420203 647015246 524535349 634828562 494819300 886410629 69410200 642666337 389998818 576573098 968102421 983586094 604938207 740606505 571623329 932158201 458345368 559860814 214238090 467351263 360888810 596312896 285916516 418883899 657825643 861826305 631100639 688136203 2704845 62136351 849796852 966410560 889258025 939394632 740008178 918577177 250335791 585983069 321587197 785059033 189130337 514750364 970843139 975348286 563888955 605820222 669472608 805894477 721240702 836650101 695391460 778691740 55017135 235443109 228165874 453930914 758043811 951077983 456589952 902219565 114591616 141680798 844483596 920123723 250418299 881510543 890739409 998237045 274131480 873159044 50783223 554440723 687937513 774092203 60332167 419958477 280137417 330805950 948535737 985814724 353873234 924177580 168278753 249944744 962719530 986916727 882837921 998534103 536833064 753147896 561183705 836971116 236073516 678538109 851306189 900798706 323548079 351486877 867792790 993302212 880165542 961346017 316449709 617688992 103054479 883098179 18609946 946514451 470180557 566540102 649238702 900446212 488862102 837063517 385040957 897907287 865598290 899139058 869202714 987188909 883698395 932289051 264732292 625800804 797368216 953902931 408327319 701701634 193731300 360247186 352523575 745891237 923367199 982038797 822538464 862327879 757359251 877514695 900734143 970902619 125238160 371557114 458564698 476447481 757052809 990936080 560662522 916365666 577817865 609759405 263006990 675594136 763051308 913505461 336449647 505170616 206504939 583173115 899315186 980776826 436015681 550573736 35149003 589726709 566041292 789640479 555124414 708826328 818225308 911694760 200600936 524878220 257758245 625421111 281695522 305269275 507064449 690433820 200404674 707678013 949401611 976933649 870405781 994549781 118467467 372812927 934008955 986175623 48266971 845463481 442299923 468172949 970506429 989995396 779348751 803022186 655092489 856066837 383595927 940099025 876728194 958711563 742249401 934304025 75831485 904520405 672217336 792726804 64814773 110507785 92538201 383883074 91101184 183364079 701679217 840780205 211448201 683122980 518446563 757067714 634256575 966182735 864636463 928783701 126668433 552789592 400556586 808757045 824551797 845692709 621373933 666154591 991735844 994410724 880423028 937519264 462244450 784192512 458402313 636178550 583144431 665021222 462288408 974648498 373534770 756955549 872813100 952885913 3851 379660072 661393624 859102828 677979142 722109348 345145279 579565698 716174069 793540320 197598843 481713717 829215990 870233435 962761214 999837662 493757602 724566303 354043032 842592891 199680841 689895018 61243395 592725584 323356799 327524725 274196399 807316116 713471382 733713888 562466234 715798543 723706380 892084082 800264940 851394995 243601489 533486157 19116707 981590291 540776441 600875938 649147093 653996864 479658450 700102110 698666259 953513911 827138049 981837722 928832538 985809948 387337884 643771964 328383605 521959364 108363224 166451681 129074645 582311393 547321828 744535643 627205644 919652431 875704102 972458633 807540672 867612011 4056595 552557168 359478111 840249099 169831035 793663622 621214473 810431122 135872403 902692419 504454465 607562032 329998168 812094212 921446547 950234992 540132812 705362913 691698960 980426692 656577560 935256345 587037322 631539152 37528820 563001504 252140847 629807778 919741949 988382535 436879194 869096504 473823223 777413554 799103765 960148668 560202244 804542378 470276429 870577132 5092648 473555193 538182665 946027327 95559166 920226995 393743623 942846838 848173386 920781476 507089376 564965552 700382954 923211431 207567041 939236661 290922014 404104043 969660575 996301674 464628558 591867330 313147261 593939559 77547488 684016867 703358814 766237023 661716766 857981871 842954950 899474237 57684188 364432414 218901812 921808603 24965235 28436489 281748433 957414516 868669273 923703408 91441412 687596281 662067801 668172217 833151232 952031998 870025988 986349417 451251669 700112920 643044512 845646806 151068356 688025592 383097127 687473113 266681170 935127973 938950245 994249519 93474199 608004438 252563607 646216185 513693233 606939552 866636257 975237805 564248011 571994262 209749741 403672264 549244404 743388180 734375043 973250748 419116332 653575901 885806025 960040574 113082199 895354325 73143686 145225525 685373882 778142928 658224882 969919483 330943647 391371164 977168150 987772296 171825094 793509349 193679906 410780027 972846249 973356444 382005561 644013224 575082300 774330902 67869904 171123650 864710878 929506581 441011996 503703636 646032178 947326778 992834426 999374302 501082471 512642717 511377805 648391670 361275634 483337327 689621441 947899438 683119871 824068734 446641210 531314623 529912290 824679209 292339644 591445827 710939612 952464951 139801838 170076584 496196100 608650252 537598609 680819287 323507430 751321458 248889649 474057783 949441481 995025999 122951049 395772633 196024360 663601270 74252109 109974146 289053007 367927465 140959060 902907499 302598687 849828759 176391688 364989410 266557893 345861281 369856411 958133459 272194886 511175091 953997548 971383531 827299390 944673555 579424475 628549298 72700017 948825144 421815896 698764454 170803394 864290044 188153282 848504505 286511520 867888216 194454618 855670422 542430829 633444705 646790923 648695851 615298451 835918000 288118324 330600385 754434086 942600696 56290006 878599261 262488659 470463217 825006697 862984952 872731307 998062873 765728998 986481176 10602204 367712813 119031453 897665212 987196615 994882269 10810573 315943396 82259610 589811740 119190443 298792725 661291207 689979271 289355711 420561072 133616782 360411351 352903329 742774525 528350908 852370699 16530807 211125117 400027204 854601257 406758883 439967789 497457179 862413181 521463598 919375882 971577851 972613318 713102082 826874931 634681326 798311669 459817140 462232845 968274857 968919533 526865847 904623320 214453159 522013300 662353822 822413380 644801596 838850840 93277858 117849416 179570356 718925736 773624532 832986826 194527301 433892387 703439306 974865787 643985370 866098179 176414971 368158652 878771310 886326124 415873475 443743870 122988173 606847306 884084234 936523830 398393016 418856098 705307370 862333106 653243146 928314919 82540726 850897805 987109437 992123212 897672189 999290788 160906407 470266947 622006656 659784054 544957083 557157944 80409458 226718826 788955678 882079985 555680214 639342907 324275500 979076487 962533901 964556132 753065382 980970820 526057493 531714991 580211030 989061301 238187385 795246785 567430434 858493362 323003511 740043690 205368683 913968751 357840308 895248896 904265351 989981163 999207087 999404895 854795266 869585973 400433407 607153621 387926598 841110725 439365305 770376467 724931060 732983450 817415555 949945946 666271564 790763997 438128272 570210882 754715615 809818706 88456516 843419758 935757890 952398204 499707773 584909939 309110515 927114528 126227204 156135448 524584187 715658883 728375136 997402602 221421453 812412403 332046140 823006005 197156577 618322367 830376127 854295115 145558298 271543305 429176209 477877524 884448850 922072127 38716750 877153103 941663784 948458892 199481 674385852 6299381 274219074 447548805 518896059 123133978 302193430 998914975 999037877 760221811 986791216 162469919 501070066 227805585 359964814 972640176 988824308 125200500 847472394 930014294 962561630 709613133 798487264 214742163 232380490 371953463 397438466 907720905 984786407 196873206 259253906 526252816 650495891 194668897 878263059 179363011 282814703 269386104 511505207 487423324 729176517 933278975 991149220 458474558 751529755 177247828 230282632 913375168 940196521 503217129 756122036 509304923 722161588 546816787 908841153 606914143 620682918 988539307 997341956 723382637 936115728 775501480 962138267 382899338 625954330 374815657 745633015 811528763 910846378 616213509 703784267 503462301 863276269 965198994 973371286 927361281 938379857 337721842 650294406 189619614 674140638 377284564 758599973 241286924 611803192 126795194 842219484 509792148 676672438 436763312 899072373 783766224 954354860 61582607 414274273 580344084 849680265 861868102 985908207 808812923 871250334 776715013 944709938 968063251 985310920 167913809 525675804 157577068 212684800 707016458 839919421 634925240 798638972 417430422 594217823 776202282 842609802 537526474 771676033 609183861 610807557 770823830 978777755 739408630 993236390 676121302 778034712 444123406 772522067 901554406 909175949 773610927 852883262 468551495 502526737 123290271 552532066 578136913 893205393 211876323 274275312 681085310 795766852 787132329 996674603 888937629 889389459 417888335 864364230 357676157 643904651 287383961 847163846 139764551 794659198 652065098 817339442 138870531 235043334 705803496 790495721 870726061 980307340 49798219 781867470 473434640 544338479 974152459 984158838 234248279 493769314 104642170 481264195 444130053 759334024 276894609 928956882 432752342 716881727 39671615 452612163 487168035 591265084 277292507 785483432 616261196 908780986 449730913 505670061 225302099 845004148 187339526 331777957 855380580 938192697 44685542 381605342 152877124 593698512 550605319 842009300 617916631 890493706 953073936 972117672 982151149 988038066 809687660 959139464 31963128 251945739 527577105 994440381 307112096 436593395 870524971 916282073 559445139 840225589 768318831 853295010 919759576 993903704 145518736 338486022 947027734 954302182 976005628 985095770 825720438 891779230 217590449 899586182 836744884 987299065 304515932 786860874 235051172 419814443 73014462 435948632 94287257 133173584 489876633 493099168 394460676 454893486 233586686 892864700 993333565 993876002 2805063 545093130 63376067 176806883 715642231 845075984 843571867 953377809 699111967 707637755 362530869 853450166 449594703 785792758 235022678 706727436 73311270 268677217 952672341 988702197 668385640 916672909 360122257 623979753 595474343 649025371 900046123 922320344 392668181 834407054 657458638 831534673 482540152 921660222 605138269 771856117 631287463 852440493 788534333 806360419 280165852 603735219 280834155 474780720 682760095 816932162 43054471 593830179 620773599 667368208 536482381 995263602 330936051 697156130 724241804 810747160 179016208 736443737 479793128 523437511 24213142 568226539 117116027 775625619 470019910 802346904 166372585 792775232 459960997 876782880 362299331 682197738 989881397 991442295 787799809 852266389 694715592 979625617 599081205 834456054 441531790 784074613 953800498 961098673 212448654 801596257 30715601 262886660 232402168 835080792 96038923 943161022 786687483 872591262 606222204 734857571 588439853 605733576 514455835 882483934 515794681 595080610 584858535 923195831 306097703 683579585 1788226 412518793 866648163 982965514 266284208 614931684 86144693 381840875 981928737 988515381 207674360 243634285 836436961 967072875 440351291 743449328 619263183 858609797 861662450 875053692 181509147 508519122 925291483 955084014 910161565 998467372 475125236 526934350 957126068 969901572 121458861 626786059 860430593 961048569 531931724 850032108 413932679 722889907 969577003 990407004 927137415 937643239 271599927 689195562 282025611 422360476 135862652 461294136 106582738 677260600 748243649 941470632 431850372 726589180 346179191 359585249 832287710 974197368 700712389 792974508 958278138 984118489 548394991 881489009 866323050 897652617 603228086 637361609 122783045 973168198 68395237 145004680 761213214 928990910 419274603 576031044 214810964 929664296 663960169 872922980 441225099 513999215 798915421 934031333 383940975 885059707 957759459 992602730 788458995 805823557 725807470 726915653 177962771 255069907 143289294 994529975 413306834 948034041 829416433 875231790 566472210 956066194 46379268 960797360 932507385 990379169 530800573 925170224 846743620 882764852 672154141 895885066 42404701 231875070 667475981 714198716 316868069 890175192 65192065 162340579 536785031 786345865 328691127 911538309 47205123 109297790 633265747 657527022 590681799 661485545 318604086 542084129 5264477 391566658 585099851 807671764 405953509 583551446 27943429 722318051 11451508 178687655 297858691 622109469 687746245 976318390 611900715 944526372 156994596 652503425 280219826 946107115 39471457 498118060 876686316 958802463 996931960 999896164 496686146 931134578 309367375 749543046 202369743 778624244 116996209 244337375 522926126 819509351 866858979 893743431 428158899 789681039 262079099 976120205 422551012 952253142 564258245 750603465 116697317 538215349 926311374 934457664 229019873 609223337 810141799 870349702 839359312 945188822 513140403 860742398 473372851 786406789 557981014 789529643 522543910 997296422 152101199 564291520 600191540 907164643 972040152 999610537 69133445 572057708 663558298 789300477 887724309 954373477 24687040 83293542 92681827 248638083 747092852 786236853 651157781 756259740 311918933 905722562 904502013 951898269 313337693 416607467 283121490 497101448 58132181 100941811 399274092 511181696 245890004 772371977 497592536 999038090 807103891 874218151 224591618 287325599 649785449 941760609 74627036 672939329 868695126 999519025 903009625 927327582 477770310 772413655 699025874 769958945 177638540 540212558 207209927 706395469 110083604 912425890 684343321 997672505 288360244 416826314 816322214 873712329 827118181 913933177 191149032 640176837 397822487 937304522 304505611 675062340 64589733 523535069 953170673 988394877 702452692 757611192 908451533 949470517 948683212 978713632 144600939 679783595 644252118 923071830 78862233 108720721 787976356 974287614 512768183 832352056 881259814 901140771 665908581 693625764 722747803 783545490 292946214 582570047 719215382 731466874 648000582 796690008 784961139 808119988 978498503 986863402 205887287 885898528 998174428 999432173 619582102 880489741 502624034 768725971 618464775 805140317 878538665 940175556 180660198 509119968 476702403 588277183 165065589 920665801 168700426 301242240 637443295 818260332 522564872 697308825 932207650 993607685 520718124 784775277 818956667 876562178 815836842 995919266 981648630 982258894 766805595 922345869 204804431 715619638 361352152 893354664 15994641 472005248 810362657 999917150 777266402 783952832 773558715 850068315 606325342 939326666 974153780 975405645 790969178 869237986 403816020 831367364 199328010 641544259 454595472 550232237 810908867 945157730 216191572 314094760 127670775 483814801 74906269 596279319 426053913 750906889 382129876 731804020 689704397 697646031 136506221 419540596 306471697 814900509 791538825 977078406 147669965 903993055 914737793 917633345 992883321 998396763 106704754 591236092 453736261 644517871 903848601 961713011 737780198 846190059 453935492 642214563 62222541 75348390 572452308 593600387 35501341 842448497 206172628 525335954 812029234 828137748 881654617 902514570 517343930 575561765 724998455 765501092 314892538 948860740 894524660 923983582 692665281 710314418 853796545 857368083 874950575 932184898 944450906 998238118 199056010 993889608 259372944 733506115 566128468 975742337 537249424 733706618 713276033 731020383 313559162 975135290 650547077 699315348 691617906 904287411 312860112 948989697 417184688 571906749 568361205 709604167 627489442 890343117 580483972 643820572 339055287 535150664 985715122 988934913 402675003 446420887 255652054 295540323 122471512 793643529 336094225 998557909 473246427 741634462 446669479 702074625 319527734 705024950 328593875 684536637 903828156 973980981 9925387 952962377 340582494 578342974 504079790 656439229 799088930 870572688 473176085 723450977 498060521 887553358 645465542 941620009 268931198 815228477 86141763 737570523 233600396 652019895 746616486 957324439 682481081 886226484 305987711 479513369 107091014 949073707 403938077 779642449 246951926 659384022 835260595 968742926 167613772 776704037 248028584 948275444 392804677 981762120 151297486 469889197 706915333 990693372 938731182 956297986 997859336 999875701 170756925 250670069 12999218 672919460 302361984 781508167 847920552 999127727 483684633 856583170 84633402 478350076 638743208 815487104 759391572 883937091 844139840 945655269 425817861 597486398 540973245 901361477 117409229 738289134 422286750 884295989 653362354 767188598 527678152 562584497 310478216 593403677 657137394 994726569 312568917 988206279 182680165 214915169 286864267 455928148 194442092 340821551 268802424 565988584 490844199 586090875 247991063 603319637 217304572 426657777 179346436 238369585 593792220 626584817 62306157 884780951 820295490 919002853 202107451 738067324 372691002 578428247 956326368 971169124 446197734 545027263 721047972 796019294 775347387 812945052 414199103 483990963 831622339 917243672 647727733 997443613 19527453 782522896 126917742 645492563 788850826 992743144 847446518 967876736 174866611 320907287 41695775 871641187 809340062 849037167 27752948 573170157 370320082 720249717 796796738 935143695 956308622 993814358 440694237 890126407 430329764 592594424 723502531 977051486 291749084 540469643 717565510 913959377 801595877 827845307 165642739 938066437 41749074 415798032 810368643 954433735 451140312 587212566 473202845 975303278 102653797 155108405 966256182 995094564 226223793 262610364 44726550 732280806 33833396 651579466 619119853 651420240 189531515 650447391 159784033 835283568 554954148 760472383 241820 409946157 186664527 740464497 37130448 844183684 390351205 721048595 906662467 963602973 335737754 508432069 714248284 824925545 142108765 281127673 983012346 986395217 871415589 957260937 797700633 846774756 494660063 885751916 630880427 856367990 44014835 76024017 165983594 397359321 427642315 687076501 871164755 914336030 670578683 787599406 540106612 645226891 463402543 673022348 210127938 400669847 700890103 729540782 978127546 979925612 439529120 645780709 585502415 841690891 673533534 769533181 548881929 705363794 537866254 793616234 406932446 875263703 748009712 771743673 696652813 852963889 969512519 995667360 519311060 537762476 773499128 991061259 51572130 323173290 309327242 929456158 198601603 303390163 302291274 321593181 549685523 575338845 727862804 762913397 554023401 634139400 891368181 949153438 87969921 140375996 289510824 801819057 771258846 962687789 615898180 695861396 101311851 105063588 434316373 991498644 899562115 948878307 467607623 913881675 977227153 998321511 37200298 107181385 576559733 881813604 533456532 790123032 198196721 456928511 574482210 902281427 686362630 821414937 244905058 769870770 366824331 619688853 254781389 535214494 301166705 917419009 879216243 931828518 189618799 688278746 383924018 664255851 973425694 990224022 402168116 841520652 738460211 967094558 236469131 672344061 420698241 759443612 359595415 966051327 220121127 612027939 326692496 338793819 534052257 865223574 310694810 399309079 511932162 971623144 358876064 718226141 368576112 405203045 152336381 681309332 502555138 568035957 662128578 724324202 972069507 991466202 374556401 734890900 933849372 943881464 89692061 835128012 929146604 983964121 484936064 973136582 927976228 988675040 697392228 744932483 101556006 767781992 746831834 864551748 2053468 920443722 101684586 351729323 712869830 745565826 517661099 640352070 847785722 971921394 494410678 836771720 61546988 859134132 95084494 469445330 50807875 707288475 304303017 489645695 468237461 656723184 926664765 985732646 699506671 902695883 998159522 998958463 803107288 982539989 913088871 979151374 539416112 775355113 337485766 615809607 463346878 600023151 703059082 913468332 199760595 210232429 475498855 513936972 354104082 954658256 397277871 610823650 562830048 834301915 553377826 724581471 624373457 839598758 863326176 890981414 964325780 993377397 873940480 931576909 751814721 931947430 983475926 991907777 860163408 978268387 789087794 921201858 409230304 581326487 691054856 709171671 74687861 334143595 477592969 946510082 883612033 925836226 684729051 822178537 786901326 967405165 946704457 998447345 775646954 919137006 945149951 990561965 514569625 937701923 558390232 837832497 202084183 531732774 156044144 982587066 419184738 874232090 438312375 473863146 369345341 558451333 512106262 912001772 408752270 817253194 853767816 998293142 488386620 598310425 39159732 648937011 309026047 720940162 37765663 810159080 120045326 346505337 601364125 644807432 706781019 960764117 769064436 939262249 22486062 590975271 894925234 961187671 978379308 997356779 826191086 882497874 42764061 602701361 282688949 870469477 926924255 989116722 215309050 817101795 972781467 986192898 450355501 625376888 116124609 768531483 493073792 842088237 778450356 899996343 260653113 270567201 680843329 990949858 451302584 673134533 244147457 843920404 655872929 793377686 583477435 932759385 142268432 270258270 558721919 750638757 721511452 784777778 37478671 377746810 571769994 632815572 934036011 996883875 166911342 684972657 319757187 413714400 943764745 952783109 9835724 522140318 12853680 976576285 618015002 660138444 475094477 840329279 552644603 781673153 380395532 983403513 27901468 942100544 860206994 863708105 59738620 901802754 689842568 732613173 699868083 752631203 209395923 440760619 600035638 966785954 273033508 364676802 7947749 255722056 581983015 660757830 747847464 953374356 159453788 944024207 391855877 634992245 244992717 622702825 448435883 636663933 827992263 848597517 529586350 764808321 755694664 794002952 528993468 868666657 237173221 741719404 282830050 907684409 492551749 612624127 59037243 166166912 257673136 676389039 990163374 999441427 107538503 249006191 763026391 892559510 504798682 643575284 22506081 138721954 275301458 427968026 784052980 900984310 676850184 731989080 243277528 647615054 9645115 298797844 702098287 802210567 586149164 896712804 378313797 687765698 822424974 967737170 73546780 309903262 306135151 320619900 206838687 875085029 497228192 878088741 818300901 948314016 687638174 969159885 163504351 469496448 60405692 305560819 655804781 991122493 868278292 964770767 321797123 515763333 259910621 775130837 637976027 947751331 21309082 633624090 458691417 937345907 701323980 822008213 234969997 363759224 381742559 805029051 420698693 681471375 64953670 766888095 311539012 527855687 564942463 687541869 482108820 735482039 167770566 927182734 58623530 122354147 413891651 448646227 975527791 987027967 817406583 876306021 716054433 778065284 126996726 654274854 538172309 855479784 920700006 948901172 483362854 636250219 331623575 458952965 369417194 442094011 210353724 490033027 222650107 383739698 848208344 908766478 382894844 587429938 940400980 961475728 903219268 990513684 234840802 329178244 621214433 933552634 877814624 910366950 102944737 247139692 368518748 485021325 549774330 962891370 187571244 584193784 935917688 937980152 694357673 825554307 276128462 378468734 833960303 976758951 55860756 153726064 866619792 891560120 259095938 711425678 81581749 254972140 286820023 299291139 469600901 789667943 197586566 639771995 330930308 893590829 341966093 840779944 847233333 863925031 536821218 559676126 681615959 817719998 4673426 581999656 880498977 961763968 336955743 753923566 796681770 851773247 612883260 857667925 368804797 481733621 583983420 619027324 894735837 969345027 237195652 898258397 790247762 896164552 254417730 781766898 380731472 549040156 508717784 662638226 286018732 680394557 978739190 991903434 617413602 638904678 885488872 963205604 773892486 974999788 451330293 484734739 700738288 718360826 323671046 710796064 799233900 995247600 872489352 926765215 529670970 838725525 78204865 976648566 329522973 401781561 541339142 592920341 952605203 995274872 142769685 206246840 737472027 824399344 685043802 855884839 155698413 707707976 660449533 793534474 750126991 900136921 136037572 598221424 440733153 819859445 420840566 819918408 869728434 872156715 324042556 511975024 189275574 210049414 922184409 961613021 626132304 829446676 222589800 601546433 48008546 484856199 779899006 903833799 597653075 965893948 616753941 986261761 499340057 604595377 126384453 306564447 793663744 928537133 178336261 968416163 849961277 881929037 686352707 775340308 692665259 945255056 350617912 924444247 905791507 975619814 906713271 967386047 602583344 676989857 813540344 848918584 498006228 498766292 675408929 776115682 602733252 953049865 482520731 801933619 451156567 959969285 813078138 886272624 788795240 829021589 314723464 530662790 320509738 330233158 331010471 988273360 505900080 601266029 174409980 633102394 380816966 925512204 539028440 757202705 584317435 592076657 161469476 372864345 912184391 935987856 908494544 974414928 882596791 953606710 115969852 832604896 339291792 811997612 720715460 849887348 959197602 996157276 694119089 939658067 679097592 856283829 219391144 402603471 193609635 529982701 800023981 937319844 143137412 678834607 574845902 693057163 595214619 615806388 523590122 612594643 747235183 760332927 655615246 694386071 614082503 995778154 155050000 314384769 237985204 656819386 821967346 969153382 12955426 734394738 863408387 967679820 155491769 417842519 219523199 626560789 215904708 377820468 354985630 792148225 42952789 892546469 943071268 979370591 217270310 916005944 802262935 993308010 373788414 985427653 102928905 211036715 298895666 662718679 323098459 781140562 853002459 854184311 537977764 776115795 576620573 918131533 964112475 982442602 267125784 536766181 158475481 614831028 301063244 507066220 840893113 982606195 876829468 883246990 835090498 958630644 812013024 965959046 810125297 878987529 902358146 927762610 568372587 972799616 712867146 790156109 792666606 930242268 372352262 409248717 101907291 401735260 850156070 945065128 28117056 185627476 696763569 906544102 700436330 768931179 74847661 640686093 470769349 950699130 334327529 348687040 742247186 960742995 859505642 975627222 960658240 998407784 29081850 735694276 769582712 779436720 917263590 995697119 47837109 430442687 702964958 911758787 523218232 568544427 515988883 763168406 44278706 209090223 377539807 716341142 885895104 955817223 581986870 599189933 602919896 714993035 239445194 495113388 35637764 625187935 640540600 997155486 602063352 931450743 537667688 684137790 534465675 979917246 199904204 942882702 19302037 27854925 408224758 422146627 377580331 768184251 624338615 990544190 999227886 999368904 872378450 874656561 167619213 832008960 579730329 770306944 784097493 816765093 865435842 959666131 725318860 771825480 515799451 557771860 308922052 808651843 262398046 380155705 171320808 363706827 62698297 650595795 457463370 552291146 508106554 849151689 805875262 869191154 394637172 583185598 134987126 635896964 153243563 764718574 462771494 829031822 862544341 969458027 67890150 474317005 589596755 633358462 845775102 859473141 967518906 983035814 261953224 858828091 778416567 926112525 865744160 884584957 82122515 782178709 52281222 599067869 613942588 724943441 539593832 904640277 744890986 918204964 512270358 620317387 241568881 785606414 280630328 555190095 202441039 428092795 988148302 992949412 443401649 619336028 554121538 562395893 263065071 646606376 604474656 939100693 93388748 190257656 814056634 945346006 82997914 147868442 168575538 428753640 615425955 663884866 620961635 808201543 400690821 854569782 124835845 747460738 951489863 983406624 984343610 986015622 631443829 880572563 127683529 296771493 558628188 827418056 922174864 926327395 215531014 337109906 3174366 81579472 917143740 926484032 165816125 344425120 611571305 838715616 265350237 451267862 657114434 862928524 942119240 989730377 700321719 789429675 10859212 135691581 416479237 973483887 868005461 932879567 968149382 987197109 19633618 885170831 820707951 848023273 782538608 959443123 919849274 990910993 856755794 892164751 654489260 768368293 643355587 872978386 320162579 702339616 851472263 948458724 10587457 619856331 52515002 96496270 128499398 350703263 583385695 973108901 428169610 897923650 333774140 598210395 115672666 962607758 674052372 685887268 438114525 946311491 107426092 261501815 589052543 871009182 912262542 919239814 723858202 933478489 355459078 385872629 120647340 953627606 69762922 182010343 947832102 948836627 224098124 519431274 127821800 368068416 603593157 959119345 146783589 219277477 335242056 532378054 687530942 716859506 475064846 612282801 531952470 662613552 784658473 911404951 584622726 760143663 491662219 694000049 840528475 873335491 862088888 904048704 918858419 964593882 112588905 439254162 928599025 950775007 568754553 680794438 554898465 722808290 772662319 797940245 169257680 999450685 145960986 673161223 976293305 990017814 676406570 934535647 343227104 762979048 355000699 850733227 558818285 650903014 295499963 675102978 911964426 990920890 70428091 218860728 560451417 564777558 699524191 727635546 597665725 807764299 501664532 929373811 613610643 775223715 435897971 650240602 322576183 428886614 564756775 752621962 749714600 882511585 312378274 542753129 28951644 671816223 91848505 944709548 38365875 858490942 408526355 426751849 660222612 863852024 398268165 941466936 645957506 949834021 643335366 707183609 643021767 799176749 218031327 624423871 884672995 912403792 708921176 723741395 764961629 994603536 786270531 962401503 593786982 715958364 818531365 825723580 60621701 517380648 319197567 853187044 105494949 879673847 112912255 453106180 970770002 998934060 954311500 979478120 984590156 994959750 755237339 934276047 327224891 733259433 13804859 729077333 573395790 983251129 243382035 884893942 495562909 559476245 601906969 782680392 112574656 742864391 757918902 901917520 664754707 697654453 967207824 977153483 386590428 732601540 816898624 902189841 764175450 940401253 234662153 831904470 582580762 755464541 454176001 821615878 479372984 582044887 69438571 790573447 128334375 210784831 329453809 539423421 260167741 545863326 447726338 819237743 954183756 966500698 444194413 873194484 659668653 891895021 984838364 987325858 356207663 365177888 703672409 720153734 481687180 801682502 327410689 856072159 938549418 964911920 526675349 955977533 772194231 902017651 884441690 937552966 261489248 373095319 318151963 956561180 163760790 435337720 389742394 743582523 600080695 669751284 45205454 707159776 625172916 838137540 304791986 913802592 972228244 974568114 808166298 961550360 983310082 990516701 703126775 860201260 786150419 850640291 297209964 397009865 688510741 864035223 860798019 906207067 579182932 851207700 390509764 964032798 164003893 397792446 636684425 937120399 899912719 961610461 15998484 212914491 661115065 883951102 493613500 538348343 783447828 941747720 923341117 948118846 328853725 522904232 59644003 694361748 473752079 995872548 663023713 824891759 779673559 787847286 923046323 960244958 339454797 864408312 209874358 437435270 405402172 579038755 664505987 831996115 355462533 923961875 398574128 489530675 657580980 700510011 696668212 745076500 814183810 914516258 501336010 634898968 850329440 887940686 708765453 801057682 451948298 821938645 379660927 872626055 515518287 859077753 950934749 969745523 868590902 939613598 663505747 813156371 59004348 878286389 545371580 887643557 69807468 832655257 990455830 991939088 416709760 593189922 805776362 944153267 748941521 844157907 307397785 558789000 747261622 815338750 133665009 250782689 279017429 627401633 101130089 896109229 827682006 876126501 622996361 958909426 625489418 822111902 407368590 577768711 83664250 590584479 494306541 723735604 379178653 771751721 481535913 522203794 636183465 935522886 335485969 735551241 357697646 635548533 604394988 957935420 903698234 968432548 517042769 571838566 868621704 926884886 563384879 777712055 991995085 999767958 584371302 595973701 919464526 971301503 14058451 362375570 24376861 844324798 515634733 828149917 849178922 875639778 499405780 500255146 879008351 934867318 100206543 640200039 625224712 792590596 47453094 270076065 268435109 843347395 948166124 986415379 795783963 962429619 17331814 276501497 882409114 921463122 850832622 934109276 965933769 996263582 700727193 942692023 900011330 902334083 538010336 722080915 632198779 765969685 154412955 632724163 535484565 846454461 95123822 827499914 984141100 990145517 171503883 330348294 97884272 501432501 62929905 739876618 101390171 313529439 610458233 997529146 86163980 481180401 713012245 830671944 370381663 906419623 953364050 992418758 182102673 674376317 350318831 356178673 691835418 949013634 772059587 860170780 818948073 916339486 531797373 795989203 690495539 726312407 216133974 925087348 455478875 739983100 293880270 683854921 685913608 886539997 422875251 669414287 823087865 995702524 689329555 860177843 775822251 788244009 579133915 842396875 851529733 983389022 578980249 732733112 475002266 834228473 885210195 889753586 54715573 182858727 987894433 989609547 442796644 671074060 721896698 761406832 873354975 938671346 126546649 977162426 677288636 736632912 62946040 356373237 546613241 785781052 979031812 982042082 369524238 454728336 503190539 957240509 869671783 870458070 983588145 984294527 290238709 609008349 57159851 479124953 797690732 827605542 87560382 432402514 996804808 997308337 523010954 672367154 298546655 855273464 603000692 644489267 22399623 906154202 935979027 968310406 990461174 992219404 601290028 814606641 530107174 935667205 224958708 458485252 696393227 764520350 712916345 838258805 891152623 973664102 132424786 965265697 698553569 806248113 809495675 922698132 428709950 682698358 338493237 430982958 533595922 998705274 438417313 919474526 832365463 955394799 630531826 765524817 590608935 809218666 655183795 831054360 429247602 767156005 263023974 493141270 125004998 472542894 495557511 722193832 644721831 801205010 785547178 929692910 701174354 770221329 119733026 697157743 733647259 909671107 115832243 647717807 792483781 915885006 229471584 534835896 572540655 938398683 536888272 861993295 691460729 748727840 818263720 954331231 319865583 502959827 684425694 993346473 448369111 901660965 991529495 992222216 23333282 305739988 52645924 132125489 610220168 952718110 457357494 916989298 640579235 955226080 593084619 797817798 553511795 751220675 703518544 852086240 718773350 838478669 284130734 565836951 652370988 940128284 953767378 972199108 509151659 989874635 166082492 972144817 690593353 983359435 854287195 992870224 302636732 403578416 654255541 879435699 138370929 565487747 805969773 942305332 470280178 891366270 728194136 846556870 386971731 416081794 622553003 739349934 707810530 982864127 654854994 919954886 273184047 567001706 61757455 799349018 355422068 372038696 423217809 538194364 147027941 353497858 340090505 840760526 785115413 921485221 811805494 829843008 868112597 897332957 655133439 725572248 80516842 155495219 78199773 356841508 221599772 537744302 461045660 897463116 942849256 968377704 94736243 736943170 344774007 786066268 226106160 509179532 13693956 916876510 368190396 528084784 571169283 942455837 97986641 604332799 995543373 996461541 249620793 793026137 931965608 945597136 127883364 232772841 805697452 996801230 542632872 835512710 583155434 894285008 845211807 849538681 247692610 711494609 751742818 891247102 287011017 623436680 792826218 863306057 807554003 849074349 555685057 936999791 625284062 768054586 210204800 549647313 91149444 539344604 122467394 399697372 764347599 951807921 423544177 942098050 59206860 785359462 107709353 286328608 393886382 651053401 641707330 904744882 21403794 559919199 908524243 913833846 109969985 200189234 893211485 956402000 570567041 622940851 39573560 917421276 799971517 886256310 187360886 933871376 671282670 693264890 430346493 655665440 360546644 743730434 964719722 965472836 267341739 788783677 601070523 659377280 473775021 892080099 806965392 838104653 289673098 698435873 137597519 300497259 139399427 977995345 127579504 403871945 724892752 756714158 636999890 928284731 928209472 952768623 911420798 982618811 598853837 906877364 67012420 426268153 607433033 986345582 20375936 716554808 395307929 679119967 255588419 830581890 103142508 103600789 801981367 851085100 933736189 975387543 332729912 939410753 767682212 937801458 293319214 710980164 442923228 932743052 105154502 678243374 860783957 929172787 720945252 802114271 848658103 941608919 717012193 985534891 696184334 826094010 169222818 245838710 440206728 940894924 573273456 670902097 484600522 706420625 942922446 988337927 943616893 973569389 634771935 759476279 526388616 691250079 798655476 914059968 481984292 721965470 236749360 417910186 782803271 958134784 10593619 785827693 315136099 374301240 590197801 840906516 492399324 801442560 698214240 780724363 58522416 691704457 704520973 775364204 194758143 441484324 235838930 682322517 535067697 688659987 854865517 971381770 345829977 978098423 306630248 890337999 755232590 878292255 66096560 509385350 495592845 748761951 483881149 663870443 540056805 735822568 272939045 394137198 764415665 820681833 316686544 849656057 68281780 453813970 891395154 946037047 483865157 486404325 48508743 625567619 987822006 995110631 40771230 398152301 772801267 983242813 359957375 910713947 438700706 776498988 692071959 936610382 342407379 654781057 280374308 980544595 591342204 986562173 223876300 914509089 937858464 995949212 363126297 539413839 120324727 627335738 491013939 573856406 992929130 996499162 934651614 945268045 498492342 758101453 564375675 658634227 463998954 626070183 308154150 563001711 475748004 749154501 22697441 856343331 510929386 648683258 688325510 991305614 840249357 993806787 914270730 969723593 821930257 960440030 394760185 582903593 830534628 903227556 155430149 866940670 112204439 398078609 727567383 759450057 702288469 977043622 737389747 764575462 194089445 418644917 588668762 790439373 503856070 608354808 537290215 972313833 458060333 496786784 108150152 507104640 603441398 646374534 303770672 819692961 417947765 509898936 773043571 922818793 265305025 650353739 714896039 866238917 421865476 916494408 288585503 945633036 86094114 675898494 714421632 855567145 147900390 554122378 867298769 984264691 808367648 916464817 376030859 430206785 678966179 812759219 963680442 969336700 78614186 817299278 913371827 987294488 842172910 932210524 671178301 943979307 506108440 527865940 243528244 688796871 862055610 905081737 220780340 537994714 798503393 863462692 776526123 964393995 578770992 631262787 724660720 984015210 404343492 421314583 375742082 693028389 621909877 770841694 372968465 479416675 116183804 171517440 730631481 961617260 511765594 831819280 338578260 389374752 701380751 925615120 572384011 756166087 619638049 745844029 917290957 954448009 515881261 647119775 296406809 602970747 243906658 719280308 30640705 137802415 608411821 623872266 646163623 928942980 152169681 860323819 759131637 824842223 218823395 547542013 389792458 712492751 276334617 802018179 226433929 852959566 885515706 999749379 593457227 660916512 673887229 754154645 530187058 953498900 458149986 848424269 880255240 961164291 714421387 779071915 822500015 855186557 420097749 787744885 211380811 518350285 241520728 711693064 719697750 931912994 965852628 967487561 376961545 675376549 936227526 954239598 980012593 984102162 248484538 470907619 811342282 947620040 24393552 271153000 471780649 996846011 206057444 791499263 404845855 937177978 47199143 207794711 240482942 452710646 712302422 933185403 476968302 977042861 274701631 349042642 54754709 832744734 945806011 994927067 728878628 872723676 333645332 611726452 212408496 432817247 26151094 790790777 655761199 693695248 838242146 876845689 538236118 542183940 799246667 916210995 375204155 942144758 584504359 718379654 503562867 806050395 517066770 578776315 451006418 791699368 895884260 951208564 29228640 490397701 556953863 882541411 477765447 847087963 182713742 796350047 390290171 467040307 814015588 874143951 231999392 282622023 332726598 975545226 87315675 552041112 80242629 314582184 709106873 744979364 226106618 774061206 691025001 763642667 934502591 994319188 373852930 403580287 326817446 406862456 552013031 896756626 696181476 925812359 757567728 782392410 22091745 683975045 609526677 937881979 70784032 927163064 190043539 473400433 167467276 791743482 654283614 688926274 700298855 733672904 199477811 629314381 45804441 787946063 322326498 958588629 754303667 857197782 949662251 966332007 126614590 508737309 601328814 944948101 828846597 870224389 692637080 772961301 353397695 893732197 690292644 943461710 948680364 978615618 980951424 990395489 269020549 511457126 480674299 826492637 278440440 307132636 561918239 581372655 806040884 843702575 378999496 505466894 965497974 984110591 928923685 991963917 223485935 651112255 373583986 555690953 864149112 961814922 932078193 949243723 605566949 829762847 125269678 688190955 51001104 422161297 869742407 875812765 142147599 819668538 916904917 986227350 544302886 562088433 788041012 853604888 892707906 927885174 761158718 947417597 924760513 959152057 467671026 748358371 341281031 528572868 18704057 168101206 642863352 968980639 340176220 979930039 511174897 584938100 458605137 911452556 912741976 981674156 543811163 819666530 280744380 805345352 110597825 474122701 509311736 670552737 240239556 713221122 923820848 976700801 833141105 969625199 808169727 907185163 926896578 997248511 231252987 980270793 36419035 741756451 865683626 979736884 220175200 875158080 793906644 862839977 237903591 460765810 325753356 761263807 210647067 619024117 339542055 716077214 143178310 923484579 731271343 763291319 758253217 949268478 493543864 760586689 423113872 765587853 744512589 777542611 130264228 217003381 178797183 614628832 239057868 433870657 137742639 973249029 6072831 640763439 792966714 802730460 918804791 984998277 327633831 756272583 727504838 790350443 705829156 791022631 411122585 955433087 728783057 859044031 836142161 869220988 299914398 506828345 823361285 885580912 869527800 990174549 248693783 507239884 34738294 230356181 790639631 817112634 213555089 964708954 134210588 703223930 333049759 493496555 287055318 454898475 30739632 189570110 677612720 900121184 793071065 958948704 375951285 769547758 153784941 804872643 540546870 582048242 759079648 952218178 949969509 961965126 686235143 693551661 691502904 807863287 909169041 992074866 699365636 951571317 417444620 496069689 504247092 781444390 35124192 480810498 129555847 462459211 442573667 563712960 966226082 988912769 228962284 661119840 19499288 413369791 803980501 841081266 717875019 932081499 403918761 842236307 605873540 844221476 202378232 634910297 277965359 910779243 953628509 995313449 738532447 996599258 519722567 879893093 963340508 979936272 269859689 729157326 648805569 811382485 97067940 312921382 671854103 878641300 755674477 830706017 649318527 749858598 375236145 582871702 723429770 806875062 681229901 767376007 701053464 863403196 933152480 970545636 9182014 903189204 315089781 636473986 821589568 981542380 328069550 443854406 764902823 988336136 350336994 636922729 268068493 835924079 219536549 921814096 837639874 967198528 351992213 572094762 924441310 957457170 370632872 424771344 804924833 864465308 192850879 371435151 427772633 715699454 186863656 333001514 550316654 774795643 437255664 681217139 415083884 487707489 572091819 916475615 726503117 835385978 870991742 872125984 450104761 693218688 872403188 925705577 368395727 611249083 979105920 984405552 614548528 704357291 840167513 978655171 183629660 299416755 110643897 711699280 879011152 941554260 96548724 376368537 507830265 924218888 213042719 773664851 749225618 978174625 477929974 930733628 124656514 916839063 809347865 999128269 767474850 905832328 604481045 716818563 414988532 965037732 719975516 851291170 508848907 665760828 933432698 986411205 589669134 771381992 218758088 339514641 331304638 753078626 818311247 911520847 883376808 936730741 86219305 341758396 34142086 242019732 739363072 797003946 490081155 568618972 504868431 648591080 958173049 967309561 285524035 424042297 16589621 520142753 519136820 965162075 153164273 795921185 392728566 802549227 653854973 670811077 709280291 968416681 332341687 801101282 238280877 773390204 252147584 622555871 949766740 962936557 90146645 310047561 950889577 997437374 648594937 913258368 973310395 986533885 459233474 788758691 482526843 647931413 829932063 858097639 555754221 621281514 718354097 800524855 167716678 804736740 161311500 375354971 129208589 144860070 850700271 990078368 538198557 713277868 248492331 630228937 595470707 741235343 155734397 405725748 815227610 866825436 649101997 912542047 408484807 784941898 691463206 985095554 27063291 276300496 264840948 493025775 346314172 659562943 822515331 831507123 904979366 923362188 592993838 922770773 125229879 823586966 470069046 889555575 958672436 988934302 878228667 949457949 82259412 309575064 108710626 267884044 855632777 987669490 674679330 701588134 391791483 806389358 239454256 570796310 374334941 942689275 366353195 750601641 514907155 854873967 111109297 439521639 364753086 898665845 996718759 998271349 921153470 991039242 504475011 949568484 816430735 966528728 966009722 976145704 364630695 995942126 81534416 519803509 874984605 967691954 214562589 359981188 560983054 607856672 999189165 999192841 655558438 823902224 172426015 340207551 534172444 909202354 435470854 735646028 8582451 333317119 580628356 975119623 385989745 596004686 144612349 185598887 939968816 966653660 869916331 979860722 165788211 815976899 697755124 756887152 280174650 385015688 41027760 429422077 244901166 960994271 38824513 816802512 939270922 952058673 590152858 694617852 46198158 188861948 973172778 984126402 511034111 513879278 475062920 779480914 397185308 443845253 592972701 951629851 642151959 991054371 314403789 886305627 195584716 594411206 396003525 411715945 543281010 969844670 791072699 846975989 799131800 941299527 751322656 819447274 62711555 575965496 35539135 862052253 359624364 660936672 321348156 689771606 359063439 869831272 746442678 838239243 470425575 927102267 430229534 793488741 825942352 880402270 297902868 773305744 663321180 778144070 236563456 416190485 955920705 978976865 834190051 884124427 590883853 972239847 251896558 556382023 207636299 226559572 672720270 933315325 899725047 910877298 4319531 860192417 651425774 908539880 271573213 583041148 114512010 898980409 493985017 745185357 662766495 876157695 112734809 451007529 979691744 990948215 550722112 761483251 449976685 834608138 830506488 954987337 401413231 431662356 821180124 878336021 113474189 694000813 434404522 997005647 483616022 574945027 211921207 728237322 478343879 549770693 734368603 819373394 757535786 984998625 636576557 852473451 560493202 666287256 541345548 990904943 224815499 388491521 898704942 908293056 241218822 706942625 845276598 987592888 934957448 984430295 565822177 569056344 651002233 784659694 498116472 725170836 888415804 933379894 995774383 999962727 870594478 980068667 585595925 817725164 546909725 846083476 676726601 834648933 325615674 927574446 126316923 958450228 64116912 272001025 933534704 972442886 179128502 487679767 270532172 275111467 734064848 836840574 666487036 852278097 563405494 934245540 262244245 765650615 162866180 402615537 933312920 938641387 334970296 598420431 646261828 974323008 665512949 682715571 671347411 791352152 221998384 964357666 932858447 979968561 419628514 529169365 354377821 969937529 118461486 252013395 261652984 304657665 423805415 602414602 253847142 852220484 601193998 953195112 478752427 972199061 482194133 758380942 759564338 913696681 191945812 505082616 526994148 616246241 31391181 167687260 993812837 998751522 85851680 969969800 744890389 995855497 532634923 769475246 583188349 606507576 779590929 964656693 44365147 878081047 295878478 942539721 724187427 741192819 146673102 734943874 97251649 642659518 465910324 881253022 558991125 781017448 173262691 191948947 676940966 795386559 885029849 930309741 221690900 725321849 452895718 961018506 65048948 464040855 119243114 997234786 88232401 751621499 375794590 722158560 296260906 598999954 733865443 846082400 204796247 400021661 150772471 370849694 560114619 741760614 620307814 649196337 361803022 815893357 747637025 909337101 460919382 542121475 683614227 735757707 127217214 635269642 9353397 278169432 642813308 862098443 313698731 523922972 229621052 958832736 735747360 914781143 225227608 836457652 404031090 579753468 480424798 600767232 452880132 885028404 447707933 915095188 500198604 513284340 269897463 389337953 787153519 917432703 173159680 346574780 877891368 942536564 473288767 745388416 297266884 406804017 348720421 536909267 112070556 734954351 908044055 959145638 111943492 610465076 712660811 963336978 962060711 999162132 257150430 382030346 264193432 362480117 941154267 950642429 438675228 900798940 599103314 719580521 363056355 678818630 857129780 913519762 687669760 915352637 947338365 970976047 924260824 978834378 439852356 934030255 145880916 297211769 273683314 573222239 445364928 897216801 11498811 789538863 920872378 950607452 559296905 780141229 524248901 932312553 245335890 722327024 23320702 836982799 247338364 540108850 279893034 524763092 156460318 971260017 542128049 701445080 700429150 946031112 164457463 417294949 301331785 933232206 226127714 792563782 180057817 500242263 731512496 902776658 469125207 553841764 911464996 923236599 934110402 968385043 562033125 609032495 781465858 874749670 794654332 926590193 576907249 769853091 276288868 970317460 150822970 696428212 807052515 831959993 829698927 930896115 122486570 442662102 141721986 997245855 847600722 994080230 445946361 464540464 330939191 732538136 649348463 833017894 176400389 918197605 162488143 654109738 584443731 688091135 823990076 933703165 896661073 966553460 773085644 858054879 388589624 659240391 189862095 874840959 634904332 636933805 532977057 995268313 948332075 982899614 713190612 776299843 722710923 789690855 152363426 553601084 655754110 963678396 536452049 853034653 855508317 929226951 748279725 836070466 512767126 711110773 20115107 453694870 353242095 931480288 463512914 702880275 786420162 813167446 615239453 686409412 315278595 988511703 594882984 701934201 11939282 935146193 11619224 533232152 360648967 800880574 471613117 870802888 10112478 621231123 302503534 472444932 327390184 374925354 148474512 323154074 700339949 963797079 249164455 270649734 787617612 892922654 95551782 825005327 54821355 482845006 928871025 930324656 182910210 986486580 701464405 873266739 901703669 996183330 255465060 493738789 5869641 6939540 310294584 920140880 717390211 748535542 904232884 945408686 113242146 795843888 856980319 927853599 656049207 849594336 503162945 740445884 595136613 763420911 725409311 976956472 560952934 836245937 882627930 888277676 163059196 430109083 307664099 931049205 752308314 827769362 73418340 644493140 981720011 983756115 352240778 407880016 328071522 872134408 265500506 766092464 235253859 931863144 634000521 907573442 187063504 858830607 84998452 373843767 783980898 814196935 965132303 996204094 270662600 929996410 110697559 591723053 69987162 193305302 627620155 801166334 594812568 845206338 247267156 580713459 722885446 884853157 995804668 998184259 91137684 972195491 734120095 891281889 712035112 825945940 32173728 951412365 883603327 910338600 693191963 799819175 925861778 952836925 853647067 932553450 270622393 559975017 602074100 819591162 666177470 983056994 797594129 852039659 423543282 733643377 814998864 942101713 114924596 327577132 17178597 219289927 986224312 990223922 352616277 783958321 58225272 991049031 677919895 963776238 5917567 819101674 795899173 914711473 459242514 688243627 56064887 914463956 455996215 657866667 211552883 771925472 60819084 156391071 925420374 997311031 415370312 938181780 141171329 176986505 637346900 821514947 96301612 565653115 429022366 903652072 811046419 944666322 552755177 646117443 453799102 605883831 852967026 964292022 27542315 125949690 532274766 927188519 856198883 951903766 219135872 291220510 717301697 782616906 84332158 512117893 254438453 778318961 264447202 955120793 623878071 860099752 869264171 925038323 180378609 319051111 388064435 438204537 592071125 846679165 746325815 887200979 141032066 867174576 733487901 807030309 146644540 165637131 162171682 620362035 622534184 848211721 296327894 480014285 508213351 859054915 47041645 555292711 785775879 794285848 646386802 734083241 274890694 467708364 807811547 862879885 150973074 234803349 690115993 866096234 562982383 727275040 932248088 945711926 868888631 950679415 967151039 979719551 624201246 917793525 837270772 928765997 747543698 982381669 236629104 933541638 78496122 426610033 998015524 999386736 558215071 620674221 509467104 706842759 462594888 645913371 479658374 678381743 878978445 940272973 752198250 833839400 123470530 271655797 8971918 198078602 190413519 999810537 383943755 586024890 519749565 652106671 702130820 996443468 316159661 408807288 351129692 999099927 901414326 945228797 179035530 425857480 772589786 869254837 907383721 961430144 66469678 384850690 741771440 799088717 764837047 857136048 387866356 650218559 868538151 999120000 483126326 953202623 3671509 50882178 595814640 946905167 169645708 912089828 161452736 445444160 178984616 875411424 886345285 929074569 619190619 939590855 519091191 830214788 228208021 589677585 173619897 692725501 305924610 469272430 703131382 826968088 986858939 986902115 195295098 568731847 718906987 768753500 748974116 769378530 341106511 820392068 602259394 837883574 678144450 822759022 833744508 882786177 988459217 996764470 516722623 705294721 228483934 903189848 368502334 678210498 518113680 636182950 108773819 884362791 197843237 886042378 886452572 947671466 15820793 881938607 382026789 743930838 449679313 471987209 786725322 965378316 897770148 936293373 472241896 802091689 807892789 937954235 135277756 644469280 554169976 758388468 489382793 901076528 651438476 974201720 1058377 909477628 97533334 953538742 402436594 474010462 261543964 424818611 484102808 974390548 130833845 994282494 332756044 620998122 992436245 998350623 349715219 780246861 882120949 945304318 95519794 164869243 462449179 516858011 544562324 928579908 295362741 827855538 558617367 916672538 480862153 734371962 107398828 275814783 724304633 844086543 557542536 732552878 743499819 893775416 172794780 667788893 372709314 598693011 767723720 962421548 28735089 645039902 621915203 635709531 46059792 408008618 242726750 582066036 121749724 471931207 300611578 897148978 525850518 558759332 226974834 232755607 648686690 780010908 193353280 414347366 798520971 922855228 835118392 960066637 366195674 992364925 384990381 801984686 630835614 931822749 846206377 903088747 614574658 856387840 328095095 883181736 117146751 461355650 58773681 810416666 242890403 869090424 113156685 134235490 670403702 894903252 519257872 687341089 29376000 643231505 892700960 895010229 100922182 608431715 810721323 920891457 840720391 928668203 248911770 306272847 174404691 592045006 871229901 964114580 364548474 851613434 787869432 931627484 53196401 838100292 299229989 468767866 46304400 392608842 464442764 476280723 653924085 903262875 561213522 613512240 391896386 641741912 287220818 453344622 78489133 311672315 771767459 866204362 537433063 935912040 18325215 123836708 605694818 911592663 397093391 653725544 439666392 806614164 160715342 465624836 941510039 954170940 982440697 987803582 762360810 863270495 457340467 800437813 497764189 886962385 403503193 480048963 106057977 624428135 228335641 871954025 984527356 991526903 868905571 882234694 358622438 709581903 72022162 400843098 865276000 915934312 255584009 835904411 499259007 505222126 508962683 737990708 330923122 463718921 5283173 693172023 273786879 421395308 473132592 649525679 904615212 949320370 480253840 723077683 905178937 983809026 656551993 750415865 850407736 969871249 349253337 503188123 779349444 967571569 603318617 664721047 416480474 694248534 440447058 765053749 236399820 987626102 217362844 221720528 881049477 991152010 636306100 835288780 561823978 673466425 837711429 988149680 764073107 966671059 591196160 594357266 800580690 803647187 797311988 812891152 759069271 947222521 492862607 929835230 281716441 737958340 80394078 511464982 55813099 995144781 664195574 919706923 243618295 358151816 315643285 544604950 373533953 454884228 621249765 825950825 370117003 809125573 5684704 984336743 151252613 555634973 481075349 921298926 270690780 446251036 399768420 816061645 678920724 826887692 927662179 967670431 232242064 753772925 145244779 751567251 249872044 895397655 232477552 593664807 151396652 719971171 966546210 969825164 184486380 776407361 290610247 911183300 957010909 969113604 904475215 945208995 606394222 897491220 231592995 319872314 246988639 897437751 899417661 918446353 646550092 751297310 900009768 983065698 715292600 915198379 205102019 322158640 896923658 925068676 974037494 977292560 446501966 526928367 369667624 668105989 934349574 948617233 33785657 770529759 211797209 275482361 861846151 981690950 398506138 910673003 821764485 936984090 818390912 975044373 723357760 952950602 783330395 828273522 780941688 851164295 959542971 981718328 345757834 765219723 305158345 885276417 269875705 981527699 344614786 764739405 774359358 885454887 603669440 776437164 703143203 709484877 246041443 269325769 334922796 603168305 338961410 465145333 514629747 607492025 303049302 384126347 593442303 954651275 358960385 533847278 198570045 916703314 337559969 494150719 295672834 758709982 623542302 644393549 393928749 714406281 146832630 712946603 265994677 297933036 357993719 444391432 738784948 841500320 876714606 955405988 394631460 973377489 685764726 859555747 293570918 886360368 468912956 485890662 870754042 871621126 579560953 612062426 679387666 684468312 45076057 546099657 395169334 496469172 994117388 997517543 145045272 298298428 397223551 585964366 133634438 801504612 307403552 569685300 559104392 715203703 933378445 934407806 477328156 515571986 345357366 633833247 309744894 589953956 715462984 957639785 29628895 954853806 289620114 975626560 704614131 891199262 229126372 505218795 806700839 915109693 671174167 698830724 837108967 930220091 992452646 995766088 431551780 436126208 167884354 344317555 49997311 729873792 337295325 905447151 307824130 657203026 788283033 820240343 950060358 961949225 604653248 687660271 973706634 994299671 741332695 776814174 215420282 430733291 93959728 237772743 874659782 935533036 627721635 772379445 775313741 904122836 886028352 970179682 109376355 857339857 419947091 922946304 352549864 829258229 966525751 991150074 126949508 872504069 549440841 636756082 668824207 998168944 204519586 631361053 911665660 938829791 724087303 929745713 802653278 922023886 565197895 796978636 817241654 909064977 336340394 955636461 425721978 722405427 339691189 704638089 786157990 969809069 425144479 872940537 932011139 958614053 746153056 820074119 431404528 772638163 861777375 999092124 298692328 466914876 54077231 179951324 820857616 947362478 14327275 348583759 119204730 203569048 272471058 729940114 26442890 982698616 82426438 829155918 124295895 544904059 187112169 283857782 108572563 463177131 965942704 968393313 950445460 998291624 65041598 872976035 655236714 870377715 348285823 479626265 736392278 958498561 846188795 893255702 367711056 526968603 810842539 968607063 717769278 773300462 362171505 903818110 550886406 708909422 24433926 222883156 343652033 892695572 289681903 754649323 239104778 813536532 403576315 697515999 557519814 671413738 145760873 463876641 269503419 636098100 692947127 835113997 508760067 661841799 202015090 564136371 322706798 555723324 973086718 977916447 405809887 537147794 637431711 777507292 39649071 998314718 852270148 853287866 188705713 635259685 864629112 979783353 381785389 951454206 277942939 459478842 118800825 369736898 915484482 930052569 360142906 876998706 82065006 610439975 24124829 98414130 24757498 972300945 167242843 681870483 81144167 261998703 717496590 780947967 452332128 589317893 468604968 889482066 278344488 340196251 193128107 758923715 724334032 784080841 625118537 931578142 656075107 847300954 653232136 780663749 782245927 940635081 635623320 652809216 303169580 659148516 104384942 318455611 582482740 883338263 768722461 796040312 660163323 992357286 111346457 866859402 579663662 930311708 318489664 399767628 243616473 365975995 495906389 620126895 246202798 330287510 778169539 805040926 637477569 964151222 145755630 782355556 903553120 978673323 313180853 991424937 397841489 610963499 496817960 633940462 122439973 391509903 71326484 465299986 523853974 539253399 262478276 710303438 808574238 926395201 262921756 455715039 18218616 430648794 634716158 640357024 677672194 945835279 23183773 206261631 843409106 964939116 180340087 782105366 256451413 868985387 423262746 738850598 969728264 995631856 905007458 977440008 170229443 980359251 560443077 681932828 957931769 989774664 183951488 591101801 592247700 831923079 212131494 888113985 294760033 612384582 716180141 758282164 361831217 435966125 43843572 624058678 359923255 997647209 292583519 340278857 54428752 157186746 978913018 998263608 195246027 902531493 23845140 870931805 26244762 273697535 922012929 923258479 436857808 686539228 66195459 733389104 960888227 972985134 772059544 993785622 293604069 563021260 556785573 985393553 174336370 604931834 808750992 808850519 681037533 869325033 748116112 885358468 636709431 997114528 269889695 525541559 394385166 542536440 599421970 851331084 539279079 863287523 936254750 977279115 71829043 668142789 948884567 989295374 863668045 900368536 763727968 855939023 476610593 813279370 119237868 228130366 850478489 937838426 797967920 884131273 628847875 851960806 945944697 963050872 2775428 71972341 395322608 519213238 953316374 964091501 633783722 788170932 889513179 930791313 830220033 873885685 935671994 944961113 734522373 831428859 623495613 794307559 787517210 881591483 750857364 752807018 875484560 982550772 33852660 410381122 932481377 938313096 273373726 632402345 563855978 619493445 363254435 885647073 486948864 613776735 399460070 721819215 985774554 999830794 865320449 926513916 52912277 742076904 185402647 292570599 85508219 386658693 202737297 387943122 549292163 704674262 588965756 806051655 563792920 576676688 72986218 714324117 384275203 748617307 934461680 970073183 172587875 301821276 628249618 833094670 264135876 503128374 76600215 643142240 141305141 822110883 668377546 899956609 346768218 798116783 237010267 581178912 753039177 972001593 257811740 860067998 681968288 721140371 40811790 155649461 442682770 602193399 649816786 675169812 597657324 917546252 782361921 820780005 525236072 905096430 278860456 631078407 208723772 894490870 688424819 863900480 503609658 909113666 87415083 193858495 531619103 579355808 164391529 899906181 906815479 979554535 239309730 963198413 811176146 884690932 870644539 985416130 803218025 874125500 536244501 898897856 810141303 929032419 452702385 871839263 962256917 964671708 907771963 928304901 213076791 866161679 416088879 750482672 775830711 809653681 655775830 761630275 217742977 270859106 595482335 789157254 9087781 109196833 383027354 822274106 350034436 482519350 451780541 825907666 96698906 912520084 531569618 552986189 248014111 529567420 238843917 904778023 463230216 647902542 262596763 500537470 558749879 837017088 367507072 560585582 628216166 830158553 74824815 365013029 655034940 973267800 305633056 563995563 173902694 347106716 539302574 948791074 655201446 892081652 238415832 799444161 418996422 469663341 433234822 610580876 868313844 994177667 741417664 851190302 929602543 958394163 808379905 951827535 508393826 858638717 372277982 748666720 453310607 515956125 134012646 318080356 360402353 888097375 36596746 628985225 848488435 915501259 13101600 21413321 840014938 942862442 629936622 869826448 787503771 863756862 431326895 811824999 595426826 859812942 697597470 907430791 515062394 652741648 274200157 945789934 191166170 576480071 855963413 890969355 561472390 712504501 152195934 400235972 437795263 639923096 503101159 963046982 660427841 814531570 946894565 977312360 487661838 607930665 643364314 748843688 558585357 707693013 405543304 460523382 559054148 641071069 900067501 917753166 239727182 362616658 529579214 808869663 261320374 275414350 58886585 750019254 474142724 542007511 917256110 996775863 714998381 941682494 939148800 946156529 575958987 991763896 240042166 536728009 765408801 816248282 462814213 734822554 969122328 977316037 558561573 765422289 911170245 930279271 467881809 584726599 262806304 799222734 999716622 999786738 427797162 856595872 82511041 759276858 420114185 521850607 203110690 948930902 289435064 587748842 542135769 993320223 444310339 538710989 502505062 825937834 734278826 768795375 990982612 997605810 674113683 715295786 752430203 789828468 965008830 971110165 931795400 962921589 769518097 788298777 756124128 783640546 887210069 947204382 896573016 992569162 283194528 567603120 85828863 648641339 339719721 462004603 59672540 512849394 67188555 295806637 238456527 895647406 77382455 403156847 523271539 990868288 285461246 338027146 78628361 85585203 190759295 559087625 747950989 755994160 475956457 994484563 450464322 808098471 241565288 528130498 521298380 683902874 892075907 944366108 112951872 527932424 539165386 968757170 159336533 472650758 377112771 432580810 550876474 704068504 134225814 311717101 857993210 967669222 385110184 870178572 77454931 308995062 387737496 804430386 984910658 985827638 353450765 892543398 355033407 499757246 390781362 537190198 496087588 541067999 721411351 943784724 996010318 999669426 765836818 785558979 703765161 996641191 438235021 542792602 680660011 902874390 904150774 995182184 561479061 748898367 806530861 853461072 813311277 949063407 623075176 913788471 4254308 475573895 953621216 966226688 66366753 410897655 187218123 485213841 752779337 862244240 75218034 486775990 257206700 912683432 827030517 945146530 254082124 313637365 305984106 414143088 128541892 143198970 346146055 956433805 298071395 726567974 391948469 569435038 859638361 887071838 696861058 951574268 344594043 516211527 479875636 601510062 997817491 999450695 203541614 328613152 31909261 576643462 651391709 945187719 479592965 894961843 996999921 999789826 451782165 642952320 435187676 728482950 503704910 760140804 198805305 492536191 592552760 969211896 509149666 529728623 4434074 797198142 411420588 601217675 104637324 447302474 109218620 925101245 679999100 956323079 499159021 940910564 157404958 757698561 964785995 996450959 661781040 916284422 953004630 957166786 717033416 864026826 428032085 928660091 364611646 759079316 619384778 746899031 860740093 973532326 329117015 597636746 920318997 936536700 714999050 722700116 230825236 765606551 242431401 320359038 97187792 122128401 310825933 464577646 679534277 884978025 767193795 947518833 103314351 508763569 457429806 734561647 429466427 439827328 926754244 998368997 206248996 902178999 191481945 804864619 83184623 793039179 764421858 898869101 340948993 910981448 812698440 928626736 362407546 796727945 4934240 519497450 501295808 594352018 800083169 838403194 870675774 946468312 540402132 732866343 474749433 603461402 265065469 521156568 12419329 573756331 349958582 386402291 945681801 992704710 180861037 988140715 77580597 679044666 852677242 888531095 496299414 974618012 894943155 938014898 757419825 819568590 687792068 758823880 946445980 955280132 890422191 911978901 249534911 454013751 74327500 648011875 369951395 982731077 869297563 958024528 486441685 725326054 994592397 995892742 358522749 376787613 736185226 772402371 220637166 253025581 307358776 502113405 812819526 943188369 587888958 761215821 507921108 873414514 791787560 891138617 210774356 395394889 930936687 946019039 886914824 993299249 750858612 760262021 936855254 938952034 310718008 852230317 224609641 695668390 674200995 700360647 928259495 967982880 51732175 109466753 302360632 561891339 479322844 858311085 760117438 783994406 970735873 983920993 415560745 920573816 761551573 854350077 634020129 958050238 135819289 821845525 126452654 318834371 238316746 600720838 800019079 956923405 478574562 575367529 316959307 932172813 190624917 729212309 772271649 786464526 631156391 767252130 21967072 580671961 213070589 849109534 476209477 890598835 355972735 476303863 526742944 527961451 162757922 221160704 414173681 473152935 125887450 523421701 592587448 774541785 41509951 979060083 244223456 944598147 220318442 596282610 292716881 595376274 942695088 965315595 238354068 261909455 90447469 377282253 588667659 823670950 80518540 448052862 627480508 758791438 749680820 892403107 742459828 810453951 284192792 633111747 92952593 581187538 491267544 732942510 986377870 993037456 528603246 580081774 629201092 951353006 634687970 680343075 726970625 897336316 641548782 743462474 512093201 690138489 58651351 841901653 442928273 491446226 307655284 448108685 756995956 853646024 117102140 537917994 560344076 687339535 304362806 698217718 134951 218410467 194844674 860751179 15082923 240643707 727532644 750564571 818374949 962073211 694966277 762864588 687576035 803210560 973009328 974026951 101581839 422876163 196429231 539139638 2589643 963797027 75163164 450405268 568518106 679055845 193798042 904369067 773556037 961142475 888328844 889326522 332105103 846354066 452268912 462070574 560094309 888654448 372723177 872027499 392847725 577946364 753014037 787504288 932111261 939150624 799737608 818241061 481582238 491286733 511072301 757167058 530221070 631954182 824570600 886303571 318947821 833129314 976098736 997161117 315883399 316501571 651837735 757701078 924845698 928121721 857200586 877367827 955315422 959048333 361453631 578619178 255119574 687665001 620657657 636821082 459642753 590200241 312861031 752636416 847309767 906459071 135580090 322809908 163120453 906521375 133003262 213180013 313750210 752573890 968064386 970107990 134789454 425814000 410577178 898928774 928752326 931370973 274120471 280339644 890695735 916689691 472443778 790572215 691508573 700655659 16719596 540239192 981287221 987400907 489257166 674766751 563865555 904315415 628809426 789367697 306024055 975631367 611514764 981052547 85485528 637756411 100922867 150855558 363254778 914461663 534553204 786849268 694544189 861059632 281193675 566900671 731221193 967896632 165806131 317316796 23718131 938263120 781074685 785800492 891393424 981803402 268735587 842452983 114893788 835483352 636613677 979873364 665994202 805727027 54389434 729227481 730997437 974319955 996936860 997178158 87797828 123131627 34629123 955804736 159981336 963757478 712632244 969628197 865248767 947366522 408578181 429917494 503049096 855910352 207693332 978099497 583901136 741887810 549429265 692178225 261786241 962593830 152615301 456542938 201631829 633380121 193463106 421211002 323779419 984411269 785482955 820513743 468858580 720519726 849843418 951618733 508180543 641566862 499104230 620828878 47445021 506715682 571626143 790357661 441135054 712055701 818071518 931602321 569117867 678083316 924867040 963132070 401618178 568160252 645240818 651199320 92274813 346575097 350873830 355536927 636770257 747439945 121596134 427829246 915688997 942029119 868710553 881019655 847770393 973859562 706076446 832939632 366959093 628900277 817670197 821533314 686992865 875443570 753600087 962833777 836952549 895293381 520221928 642702241 92770350 309454504 952320473 958607194 697367474 738507085 720335619 894596516 288023193 535422808 425419984 446490316 469673272 705847619 412010422 970015365 612394585 817058519 636129960 720127137 466752181 645190046 89300602 794946591 436369856 527597803 299534427 388587311 353131227 798448592 327409707 365468536 897819997 986167730 934414355 939503991 676633182 967166607 76050294 87688930 418908154 710767215 836589083 997860682 429893683 698939611 597451457 908389248 370359498 939529881 267434809 385077461 342102366 628273533 212328488 497021013 624594073 704319289 469498269 695493515 201532526 855370149 998056828 998256928 49445113 852400463 779126174 909834978 476742524 909050443 404730705 779490929 156801681 512671100 961517840 997241844 261034471 843800590 685510851 687660046 567785651 913687102 559473463 595817411 669348892 752648409 589131417 782305422 448528707 987842952 48598434 587693093 850550543 895424061 401735533 635399942 455700709 721408262 252695575 797896756 989802875 992555479 413026116 449314127 568744675 773967610 40473472 174703676 507179385 664832476 37284106 730682187 907610695 946828998 395752090 767396609 898694909 932570892 525479140 753351674 459659503 497244735 786020016 801286075 489928950 667347029 45151602 405299639 410671325 725552442 555218039 816353730 890918604 915862222 551736918 617882421 650639570 836143904 750135065 955633431 853166680 933880337 347525540 776451776 92123525 590535151 240024152 975288585 983156407 995575087 730554885 988756693 455905160 778080252 751300695 808292234 973352201 982312371 94250631 708478595 620189043 698313440 516566665 569592893 713030733 833643899 424764869 826153938 96600623 140944746 715652017 860058419 209143423 707008866 340947283 898898785 180003920 289177832 502726350 654587952 700754619 895499544 827533238 950738909 627220373 899692215 567592533 807281812 135328291 592079165 326942812 832928961 361580883 671110988 791008056 867581827 312359422 891255249 792219680 993850666 356517794 885946835 560386207 618125321 972735751 986608922 711143916 868578374 913624637 973441769 446235150 890043863 498061937 952942683 676747107 944135074 187835960 705296102 36504217 956338249 548758416 549346851 275692806 315450121 580140977 732938194 869515689 924025389 345510266 727737214 564596048 583113492 326854167 562981011 425037170 886343962 189187332 691376167 127326982 866076721 191271227 806130016 209822210 436950503 298702400 628618634 638808451 836283518 514930912 535056855 859940764 956745705 397042231 815894649 585337968 598991127 798223392 808060326 253773776 742914865 18609367 569671672 318733387 756565966 189315284 713918670 317061216 544010061 712892928 723812018 338068909 632302519 132873158 338988245 338022313 921829634 708111638 766917590 376112370 681475039 459104617 946124238 403113646 910548487 285990391 640563648 410008354 893570689 514466024 795696823 402361518 866078316 94105787 903075123 373679981 941893799 269693734 727458837 948649395 950415529 752529013 887405794 977210229 991436300 802204981 975014018 251889429 927134328 794926662 822274177 669527618 890730662 422198579 913597070 680275076 737498771 915404304 951901676 784722523 902211225 819510816 898305297 599052402 719003233 860205211 903269156 981147832 999173328 727340566 782866885 54239905 335297617 975999205 983420726 462785813 674999713 289947600 679190125 270649057 765893247 437012608 756863787 468561644 715654897 380251343 887408085 963281479 966840169 335567245 502177969 139945861 996678298 41767599 625552022 775379809 783283179 438898872 849234929 305132743 711052162 566793410 596763983 329615554 572937746 780150240 793575551 59734512 290339378 100766788 903020971 269253935 336911821 311447091 590184711 972007994 989950174 286569767 944047080 633360615 780765986 41680520 581704841 93939513 247218972 960060867 976317223 292717753 642047706 9703136 457709988 682055867 701988100 967158114 984928590 4430885 974577767 156393890 622773878 379189078 658066867 527688663 840032619 382904329 833437125 960403742 991717651 320341429 938470545 445918646 883111226 883750385 964360459 528152775 619363518 510107148 599198292 469197957 765637102 632046431 940578564 718725995 823408078 445766539 807956273 495166444 957259516 889733063 896667249 425020722 785745988 899619659 919237340 775162095 950829889 52450581 536126538 122316292 557075914 421401806 803829997 767447178 798314643 328699630 431517063 932949061 965886095 49653691 966314531 969801451 985776330 364487742 427204385 69591161 337642231 366536924 702719296 705304997 982542887 855628155 857303424 805074603 840555922 797711331 842677378 106987949 231000727 876037986 978821445 996336037 996930021 112295440 518315546 876817492 925554978 732084616 916567990 848260329 974596557 334629695 674043367 988026785 994167800 545788479 982977714 213795152 346229414 936283508 950410453 927049794 943062005 671080918 862624483 826024958 888717692 767248206 927846435 613974920 633741765 862031783 958056734 100563125 728530710 899550790 946961171 491641401 927650465 916083234 950505012 511953193 603752516 701178987 895331435 280578925 607620069 669398118 932356442 387939725 589059703 802243667 876834034 447145824 597777327 375662129 490716905 463448634 887714540 17036774 743406385 176663934 623028933 380236947 861447285 756834251 801105592 830271506 851837776 902154604 902727309 905737611 930451554 1341544 720665911 602957450 852849474 678014007 777295938 893479387 982375042 592837902 829940180 718502845 783431754 958624339 965626496 173132734 206064350 572804972 660972647 269142154 446520040 507103209 679947765 235362091 396267372 880094374 996753705 186642473 468419814 129251279 594487960 720895736 971700671 132243329 299354165 313641302 487502457 624622627 829389126 653997487 897162133 115976621 824908453 200112968 585170847 940153098 966587854 63074500 465187312 167881032 536004586 510101585 864550131 497254321 580455275 62663359 89993151 420840215 713374270 867189832 922665171 936029283 987046592 887226186 955487071 890564966 909685084 579111834 981909478 199579815 489371127 239369290 801209907 426964433 720791506 483426483 904758400 76316901 895600998 430281484 622574448 475744114 818699676 60655596 491751336 360235268 717434203 306121989 634061481 260147730 470925294 732357044 749913217 868656689 913849050 619261569 861261596 318498898 569309020 932163998 941043154 162839300 345733513 164040840 967275975 774470792 991705194 695822058 908361298 310063572 620018462 704862645 753554975 317152859 402730858 684725298 767846465 834373790 848874961 781648074 974101800 510163362 640409407 836656367 956318934 128769866 157290790 340562334 419766786 289278236 752202696 471453552 745368048 895334415 897915479 154945595 873282195 487543559 510033074 135376248 752626731 993083486 993447757 696344305 990041903 272341899 309304561 102935348 123450988 31535268 241453992 226475332 443793286 661283091 760212264 796443450 889650975 303278051 772864981 528454409 715172812 150541405 333400579 739537143 874633025 234043963 506592180 172627140 873589829 321862813 653787933 467861611 848479772 336096833 389016277 628645512 922150649 260365177 729450977 390238759 491180837 878338585 935085012 977865595 991297713 978028532 997166699 131157820 881532583 318254158 928721707 880798329 972463261 698223994 776440036 791441633 799956754 624938035 890954895 992448621 994337401 193533464 486976680 433109782 975743032 620286935 852412324 663348915 688532487 268339100 340142388 957404576 967270773 126103449 575104122 555715818 924315457 197002020 997871869 843882381 947514358 436306266 931940836 903012703 985297164 69056526 118254788 944057542 982152440 892004968 918925218 462913537 582664786 940404989 973814918 71234694 994547471 269522849 716013819 910794989 934434681 434035222 812894345 875030869 906539903 536271428 649968605 886106 922430415 933775330 996027503 585575142 965055774 367405417 802963743 610676732 908899682 729937250 799237315 72327605 819651626 573829673 715885507 268697591 565005145 853113209 963227355 109196878 939431351 287309644 907193905 754803803 973123476 442084633 660860654 354643711 716663387 357303085 762835998 888976236 895102680 436609158 555779044 354923151 818538165 4090126 856263379 952209392 999149696 763845642 991444580 310564545 514909836 322515375 394784955 618169977 735278245 59642258 320985523 897791103 943803168 915417647 941617752 682151787 795822848 342661268 963633326 319835442 347252025 635557881 992023869 415986261 925092388 794164171 822969877 960305178 974931181 573901161 954656839 44726514 698237744 310558496 588858816 585184688 715083755 138863520 821038747 109722516 273816752 739800941 781347658 260749569 941562372 809373295 812618864 595862566 906267943 34847174 365643320 833051147 884909406 204396083 231548345 54577189 824124432 647591404 805277988 312008327 853251964 23351761 645235433 212160203 837359694 345196419 724844259 330634942 559654953 549240437 607473590 772170098 943698754 499121452 779644880 102779799 585800066 904352476 995424034 305575966 757136319 434385121 830186878 734507144 786370625 509479477 719847323 418483569 592657024 921001907 960664402 365818608 708837843 206871357 409229309 114258378 332907190 170418794 386052191 203546908 582165803 884932558 982386109 640072299 733651039 318747857 696672378 566982536 937489935 936412189 956550618 721732885 798787540 486054694 964382316 951567499 980701149 440557240 908784417 980510395 986895625 881997639 883435421 143150033 848033397 442025732 917499078 156638776 976013857 591650810 781853718 590670408 953505714 236821958 863869099 39027344 400870811 506991554 849813562 32035544 678947762 90318335 276587765 314473822 883813523 988669411 995954775 717611574 757479916 834448603 967825531 731024858 754452424 329058036 411688572 649248881 682888942 697489779 812451558 259802021 683494981 119334891 254944491 355609413 571369305 735484413 867371341 115716434 877383076 958102699 961499412 95035039 747974599 48841163 810702355 814618587 843796356 651894916 774448373 377481582 645718053 415530331 676142176 972569738 976919450 297365145 875424092 643966812 726202279 663929599 664797825 712313754 915623965 69077439 659584446 564268684 867381990 520620632 632548213 682741654 840041886 564190032 872401268 452417341 761711440 475824881 812097136 796822942 870456816 39465024 455280972 958229588 965519615 63806152 232432242 397204978 797638729 454051692 939575497 566582231 748913736 780343622 868193354 503760028 635333570 43051002 107304785 544978276 988011199 364663528 427548402 947112352 992779137 167362731 598114893 95882888 876938100 19171663 276273017 805267264 906748610 662384860 754116141 123632847 475377386 898275313 953030276 862088628 882945152 988498272 995741313 525958177 735627729 721506886 736328333 748023029 749293705 831616585 984382429 764072174 891264613 20584491 402369310 526673196 692645578 48706969 329246081 68626049 817636895 401768905 944307389 238945753 519999777 238878314 289075401 578323710 974146986 151705772 812106583 235237463 698932919 812394998 979383475 684430577 948890496 913417000 945447131 251533560 272612592 66222279 378873738 412330014 668035393 492839098 892891637 563829952 707186613 696896687 786635091 495192989 653378779 53642550 522133016 340193869 871411760 306086477 448092804 788198460 928613255 605825102 700476049 207041439 396278637 287745261 377236176 621853088 749687753 542950147 668389233 707152083 721064175 227070106 668616091 387515813 866654021 330813793 586076843 52918994 353714362 464937788 829137543 133836910 208092833 691721360 819274883 10359262 69876314 398667207 826562065 288665833 777484805 513140865 760516774 31567200 146580271 652261260 827978423 628732621 680491200 505678113 795486688 329389411 953537894 755720500 780135266 279615633 763599790 561343068 918129081 892178430 895773287 742416814 989564649 60375967 535461152 843309349 876188579 817718965 858371553 798078849 961452692 539248359 747129623 146926188 763865414 803237384 824583029 56696668 63072263 470483 349070865 318211660 364636681 700220168 821483988 271187038 915516090 936628910 984987886 861442872 951160950 391219017 684380165 372047571 432109784 653347712 702656217 578830568 711371047 793217439 928811353 577913658 597491123 457374783 867896326 712487544 924982616 124979822 930377165 237260169 268872379 290017589 668644781 93020548 164797547 806847157 908614546 832722379 980032880 12138289 792721424 820641511 842151286 718936710 888242930 523770178 815088540 189098646 277957965 874103786 931618375 7067495 987208647 415247899 906604793 419444887 941584635 633947446 923095261 446269359 465711268 324008284 481117840 193615922 199866487 868301746 957673401 510554396 624867211 88528460 898807307 682804680 957565577 170505594 327771785 589283253 875099914 208258046 864897912 554605110 944182462 714299074 912295471 411569104 648835250 613448572 940770205 788524618 972320437 135102458 701179463 704449068 789390478 599848493 999385370 45067070 539036238 518495883 714493463 300123824 810157785 722130900 965267725 305055223 456135124 42862189 194331534 98898772 852842184 984121632 986061473 1439221 588188463 719793621 768615692 285367381 700104592 180219843 371619742 692015279 936155642 450079671 559683050 955181274 957504582 584680291 785024206 501107478 802766380 918449179 988127599 537397317 663006377 226681497 355281717 314476054 585549864 74048328 732442022 778716889 942066478 153145623 355098674 675060022 879894741 202720930 892506149 733526977 751089349 211747161 763564627 724692000 935862299 669075184 804683754 467179327 940755864 554218098 770685961 542671014 791670154 938754689 940085848 867478260 958104170 841100798 848955494 914863242 952637263 736499722 741415964 17678945 387353549 576429962 876884495 965205884 982896129 478683620 724474078 963714100 992417702 521087713 665061171 385008509 997410487 585526287 837309271 756399397 803054364 461993115 497098555 301337359 427085925 359933458 573928142 294557636 487075766 606416317 631466894 427227061 770070926 703352416 990507473 40359599 375172279 321437689 393803346 909403276 924553341 490328396 588140414 461403092 469790957 6545248 912446234 292887857 885241297 192906327 542205538 212678246 600823338 396798222 752230955 793903702 892758036 923381244 925986285 434879359 980924177 349801815 958752588 278951454 913653972 729265299 980769727 941178634 983148707 973376134 993759498 836740768 846399144 441900796 764123350 33294636 692495284 260681721 731874277 364730535 644659586 750906093 904053361 951165485 966951697 64314470 845997928 722645397 736638650 534647347 790057865 222766065 824123483 388477792 442999771 274110656 489874887 962661687 993124173 631430440 898136443 267868390 337268030 342794330 823520703 275974881 581155047 396759484 548484440 62519438 122885264 811005030 837727758 207929476 305412645 928007746 929971279 733099211 996789813 750293455 818695484 17590028 424709763 835532770 984335583 329304244 522466044 119954925 385816510 693160165 904803154 557778790 590805361 818321087 923186937 236551920 932308494 798463197 811823548 574549741 764569031 768348586 859336130 188848248 792387617 743741620 880151342 610056336 651011900 690077049 981263369 959568186 973662752 6173857 124719706 229202170 974817393 489838586 926304543 89517373 136586256 649763385 680034063 779416533 788538021 632219363 675666846 494504612 743068533 535638759 656868205 228464747 576596914 135457512 976008328 391983469 474749530 711219135 762684057 776768527 837212887 100175890 494221597 276506153 365028541 390901254 553835947 603666382 863948810 212942933 329057476 730436340 852265386 705699820 840189978 351190824 593632417 183334 98744705 540031340 674936847 464293572 580032180 333933415 874225723 939466249 971876862 609736667 858266591 86246271 589209649 480051279 581974147 555424362 959405474 921425862 998295258 974363667 989657129 982527518 991469824 859881331 982235126 748447832 868781954 753504097 892954571 797271232 902529342 698232240 928215699 69235307 921771506 892386950 913671861 493462489 564404007 484805615 814657167 620189761 992866046 313561473 486144024 698382443 994025367 242071923 596784073 938410760 965843758 478040980 835004391 64871532 830981121 949571019 970271868 994945030 995480398 362903965 980937758 182349246 490446813 174167246 302913336 392080018 497888462 728328235 811595756 345102639 384427925 877907201 999289842 721572847 960143700 511905702 824335908 782632933 831794472 453088407 572137138 486813317 886696332 895711725 899222585 491712191 672349775 953538786 986284278 714446136 966738884 726172944 910353630 9556621 250029656 208186461 293235298 979274703 994128380 529059036 728228179 588765726 825688263 493798047 694173967 660605804 864863183 284009847 764443627 413776926 415762424 341504427 918278240 37903250 357611340 11888298 367808585 21330657 634317596 696814657 920011630 554964617 865157042 856505641 856799346 831110724 945852416 599189738 945826017 130967885 653498393 412139853 586036466 126337372 152643085 146010221 974912603 70199568 801562440 846759985 934538044 572988604 913859520 849173465 902398304 612039333 842991110 653058820 675924003 917685299 934785288 216145517 289794188 98017663 336014112 477563382 674594982 643983668 674108096 268184041 813814514 32602028 502646177 685443389 767996059 527141689 588313783 65114237 429405594 395825821 628060281 943449017 987389241 798555229 921760206 713176604 957740876 140245149 710298339 28849833 810984337 136066703 868504188 707225782 749926434 824057585 870432114 608007737 920216023 603675878 781416838 49166483 485931745 189289305 590709096 350679131 555892894 895729900 961181101 75675392 340649341 43254758 960904730 744589308 996049792 102288507 734956212 927567041 943714038 836935391 896071031 57191869 572513253 376509651 840219219 301749480 521071368 863964896 977639683 722689165 755585763 947603669 959440180 858932314 958838701 882836437 922639224 297746547 375810413 294666085 382900351 955740432 986857518 202254523 212877635 340987353 925172521 43410386 348556040 46725156 264110350 245586210 323065893 316606699 801021460 382446284 692222406 481502531 782153791 341104577 577264949 426787297 990283136 439334227 757987111 774674999 875798811 417863275 764428045 696449225 930813714 367947072 896432248 958468786 961806156 318870279 574838427 354683379 478759496 952976235 968321620 153925663 514567360 9033384 304817266 551497526 681357145 338648728 434888608 695158137 701974620 481357195 668365614 66505152 128984408 590794137 863125014 734542162 806742047 916332545 961655793 842056951 917314934 969461801 975250484 218170304 995679091 353170716 976342271 196099971 819514712 265765133 656843158 333782841 411924574 515779967 558756182 896468318 969746415 468736039 761175722 776333605 987152767 948278678 965748861 782409766 809240664 533262363 649628459 247244576 471404127 445866575 972565268 169772479 757151086 110869323 815175556 126106915 397261599 267623673 388734915 699650604 864218992 719350481 944715658 930425066 960424748 659552771 713932619 230598927 761450975 514586995 764203930 509271019 596794202 508175105 887985083 756055553 963324455 587517330 996375049 637669540 884877952 931550987 991219092 898234890 982898356 189713372 599969681 865186517 923984677 266653683 825628240 656644953 785646281 626904097 876133165 934392675 989304925 106487472 815317957 959686881 988307340 669216142 688405214 315523470 657725170 756116077 926083586 464708109 903213972 463457155 915525889 80370295 946982631 910237911 913702017 992538065 994041724 627766667 963066284 437302973 857075507 3943942 785351995 671359128 714972329 250108846 363744033 384424600 853101377 699170593 943110957 317025620 900962589 429834119 764290736 830664013 903909535 197672791 842472999 818490615 825287710 631094184 865380552 158874559 617335986 414258022 437419782 660383671 796417705 988463768 998907455 542039604 730466177 865259300 946001823 396066894 435091736 81347301 148236389 170131304 310946822 867571298 877436319 166477838 381988940 980549851 988448775 554342043 827533197 501699077 655454429 658195951 784951900 426271820 684375121 398095496 661306865 313689801 582698742 234802521 950393186 594357646 684532565 159391697 163615292 128879001 920958026 447711009 994778117 394831594 687669356 977972056 992924505 41637075 54962801 188414741 234292015 548373847 594558346 634699413 904195576 91101249 778199136 706522887 766075966 854159789 974950891 824790210 959607305 52669635 372612390 67944133 314107875 588514548 897425382 81514240 970475771 963626440 985478573 309609758 715407199 407342776 486495533 800327871 984135516 772584700 917126279 504759213 937295241 630475289 837679312 960722988 988132247 319625099 625958368 584770191 682985314 812248292 897626440 748209446 954111342 110212816 397492262 917862967 967647063 970151881 973859515 527673168 538672741 981046347 985554519 814250554 954125756 255725342 320499368 61756434 779837871 176676234 199190725 474502677 879685604 819304462 924077050 52520090 850975470 29056508 416409309 273708693 783145020 809033115 896104853 581670017 939953458 73049822 963545724 579425056 980658393 584558505 769805141 349972886 817176084 644739280 692598991 668101670 776187189 883538034 980843357 898007622 957095449 248449421 482789744 111275773 991837899 313586703 653815117 933365175 964235127 874933833 923103649 663672115 802141786 682714965 757661625 545845814 679556353 400063114 468106056 142159739 178147462 763903103 822669888 491399228 686146823 871107859 989374210 330199871 809540547 704938365 912152220 68216019 813688587 128095226 803374092 566950097 717513163 502961199 666070481 174594026 402052748 214217958 371048480 693927934 814845393 157452644 189160749 979256761 982809412 177057013 355664802 118609690 858089206 752197668 879317808 416090165 654167588 62151518 399426785 664050321 795545345 433257309 806172619 319527124 879137847 423833529 931425440 438663433 460878056 252828493 659129276 768793704 859776002 557648573 945094287 611915461 750801241 786949525 867265448 439880137 495328860 263496970 544772592 687073536 701110205 98371352 105138062 317090473 918737464 71245253 662173106 464742876 530096221 51479161 534407281 309209774 884321554 30608882 539094714 781241442 830696333 529413578 677816876 256965428 949070762 702256451 921745157 50156595 891358533 204085762 395650371 391093667 778410431 197999754 239441016 712668931 814715740 983845934 985204262 957843199 966842328 314936780 821502337 969488464 995983663 254070750 728262000 166605550 206150552 433310237 749580999 389559949 523738554 1196354 912579195 121916302 978027746 413942828 913223966 219257284 755292684 241339779 244712045 818029050 870999943 363664038 851915091 68153543 318760428 91705679 581381315 172057031 208752292 516737855 936153167 781980345 960059128 408181393 555716763 325872107 533490182 968799274 999097098 450967782 738981121 251482951 306808030 158770855 451921399 213359336 832373071 336447331 656096312 833155637 962669581 982411072 994801355 573883535 886526614 517479901 968787564 506989605 760316243 332551723 490489766 905830149 912183210 199470102 735038473 798811832 985071269 66836463 778862437 355813734 637491959 393049609 497644588 719380517 722971594 311817238 765497379 543190761 903625090 821634277 874438414 253198931 761408833 584677169 920317044 94591264 823348888 318102880 590246986 763709852 932420607 557043456 869430844 664138252 731832098 682050552 723301147 878042737 963570725 228270946 969140713 424184180 746718136 822052390 966348429 701407837 891909020 88822273 676659105 219080028 895882900 238989201 432397368 185913523 191402263 182513413 634872203 156607671 460105162 176553143 611586958 503877930 717934980 354908059 396643536 933143308 964194474 814572076 823402801 534664035 678698301 638863880 657727264 918719995 964923601 72019170 496105548 547442700 634543813 438614581 599484817 921810330 943530350 288854764 561098336 584885010 702312084 28530950 641399262 399963635 603922876 866689971 903631816 874394061 899128767 350609359 400784169 203199563 950846410 182662806 975829104 556686329 726874772 319583565 460018477 992491443 995050010 61497642 603420723 802221162 819030349 287137960 804830904 113171017 790816278 929502791 951343825 413161791 419069339 932768111 947021577 464478174 585115366 658018068 814361718 451152089 550702952 501879319 886295613 240058593 687821000 338862511 401098782 622292725 634420379 231139868 797040272 152953129 872554506 311352802 651100309 727551977 843465273 764617889 813111967 725544620 951931359 576232325 951860282 726741087 762622989 454583776 552333202 111696510 610190364 876743163 937601974 256042492 644402192 668557730 704213660 475600331 733930089 333783511 490247207 25076319 456846829 597189011 688908821 76448470 244095215 281972131 574780297 412591050 616210781 424474490 976738423 585874123 776560459 500045829 942077833 610526714 941028821 100884136 964895251 487347561 519022071 657925622 743939688 76527760 757475938 926964231 927763805 679777990 863932792 406949588 487590026 269947701 871534649 2069081 572563968 77393595 388334412 933670988 970323371 776338108 808573618 188236332 272060489 800188681 905425711 676067127 899628547 14285862 64304218 72105617 957423350 943926752 974479086 397034589 593632399 17544381 146411331 640780414 673645588 355050435 853356473 170138878 363180447 343585364 531397567 259161543 662532265 902621640 919085519 309750621 639764692 106261039 351877965 318418946 582843690 134903514 990301875 853139944 883558935 54407658 129945844 87890138 754123353 374279374 558413175 365185655 777018144 853559844 954964510 132917113 667487456 526068662 648966513 487840772 603254104 715450754 886435849 352888734 879829221 382068767 522403751 79805189 804087206 882205439 929989289 13829079 416516779 108671362 558696987 210607758 453320013 533758725 971142940 585347475 889040607 781544074 796537319 206296598 922142087 266881854 688066343 522332864 812013415 693759933 876959659 22443738 45180198 11516508 561404338 78870932 319932381 980085651 982459834 133557946 808731656 275254529 363301606 58290961 795849919 282860313 415327658 302658531 826909697 935521749 941083094 306551863 697466780 726134716 900335754 584044533 609893211 306144414 836405555 905593069 973871511 818478429 893099295 867813050 888785223 316622992 598708480 832448037 836125894 397963006 666012001 54800210 886660471 581605659 923236828 833502389 936564167 903572603 977417628 375459911 852424552 208616626 342366053 989026391 998002109 957698563 963516695 11635035 542440949 874661239 920880533 202909307 853357378 634937948 692871156 555018705 788065760 197730641 962444860 14114224 94833917 383935061 951339559 965416385 995590475 717043745 717306129 893497304 899658594 396489356 557298796 93730872 973348000 780058552 910146003 535900348 625728427 252778281 897966079 309184731 858000971 810615158 847893542 28662266 531791064 384646195 806837031 559773057 789186755 112335592 906139672 181994500 613734776 322904939 750665069 259255700 896201725 622020198 946863512 415563440 443997250 647128551 680237134 210403089 485798419 248979901 254182966 561028658 898598113 334794150 621498592 65558174 220609090 997872570 999879241 491071124 513228781 861728147 870179700 611630351 658678296 814659031 902627154 987733536 997301595 401820513 556345871 205256719 466734334 427500241 731486082 656834137 903932472 157051400 445090497 935942519 985905469 546072550 652574185 648474514 995247959 719531842 964203718 320997089 619062495 385360335 558754360 391047695 687920200 964532550 967414223 155869625 657761074 262536563 918933255 822128983 925076751 540175452 784540983 656461693 972261676 980346140 996848862 48595671 510738387 616968435 982614067 781885572 851767135 938916789 966353216 339929084 943320659 326536738 623765419 566626371 796572907 379272132 526797357 570576960 786341341 53846071 381513692 701695297 827949364 598520011 740671592 703117141 785155927 603536326 673427156 414930906 919790012 901374355 914180143 236375623 293501920 602460524 714676163 753942693 875695149 914598836 932282530 623857768 746998208 77252882 972737025 367636123 581770512 818177910 892085177 151008521 956005516 958249931 958308518 551045267 722434067 59414763 289608949 570513593 833103884 309734745 909954726 468677673 993999936 700692948 911735599 273923673 361908135 136351856 741049302 531271392 807127197 13641764 669377493 914997522 920813269 709264768 918075172 68589189 508340591 783244188 896158861 881019618 941723055 706638277 943883399 137679450 668340217 913008570 975964249 914121468 927087698 634888174 874149261 937881241 967269044 484276526 610657420 122793084 304683068 470059499 556371050 193791772 567322849 70883867 424921935 999128633 999850640 92615459 963378235 137106811 382029679 516734808 925712003 640081971 813930686 507005157 689986426 602269732 644922407 355344985 711616029 742253476 786949149 180654685 737415002 829183769 992256545 464429621 734417824 604196884 868658221 816699280 936566884 767373902 803383558 699914544 717251152 403149751 873078704 151080303 176202152 219881515 975222928 177018617 250277650 550810331 826527609 423080646 426558438 313930482 812623286 350774698 833203027 305860283 440552865 459347405 666100777 10384785 556116302 361767457 539553745 838337310 890099213 253213338 352388075 759514756 889558843 619184428 940976324 748877222 824392213 348272714 469018004 53596726 142769600 630648960 877585722 106601412 821526914 809642333 993284491 667032176 795101098 423442150 675120468 701984163 726092174 770158124 982324706 602037901 709303620 494171770 504752422 214320185 807469306 659150191 706003811 792406398 993910308 738494816 859705200 463938944 785514429 456418813 732736575 824732610 874215564 189831818 262135092 681326965 784489446 533733109 741797652 944611804 957350716 11057884 775048728 248390124 639821102 41195240 987089698 759858120 908062564 882951144 950238547 944278719 952132228 420564076 644581070 586973065 756901535 593409906 936782302 807787387 970576971 204015477 910638838 917245714 989086304 446188061 979509280 200212334 204885981 921896352 925853735 376758106 696279595 627911997 727245999 838429934 958570127 738034212 981281121 757688068 942375708 778022678 824610102 954655191 962273829 347202347 443843729 557538273 678175325 661947490 854915847 970910733 985352303 661976451 907356111 608617155 888516247 469095934 896333459 471790200 512256869 549796939 571654551 738499912 976942225 845888857 982201793 12880173 253632605 600191301 665129262 173320568 772043626 49665046 54707429 650683872 786599460 615073984 929540460 495403389 915253907 965195342 994375060 371930570 601336255 408778119 557346780 31713981 246069777 294620135 589506500 528165356 541528833 986667426 991669510 365353963 408137288 344002410 697832930 776580158 967594269 675810796 708822439 546706508 584569788 116997140 786862889 99264430 946274663 484606506 687219175 447361947 826797353 671114599 833905159 827737817 947776048 824111959 846768005 509240996 657732060 836854889 947450582 516810854 844666468 506545737 549983933 10642677 952613488 473243283 772152860 972000129 977355903 383109916 636908185 303541053 534257483 142937880 447163394 449539498 931935261 839443146 895564270 839797486 886719494 999393077 999642881 688899031 876156297 452728988 471012481 880706655 922524488 286655434 580919898 750295193 843155009 947325474 984999474 905957017 938159715 23039885 736111182 691985595 805963548 525061957 934693864 811071921 935299523 213932331 520634576 243436523 432226168 138159934 841993611 617472344 978779057 759006066 944788450 485411009 959814880 279977445 292514610 116220693 884167075 635861684 764712122 172562334 468188592 468147449 877905626 469889758 734664324 52948666 103491388 755410726 911102306 471781360 814119743 47044402 420627951 501546604 501841776 597700279 774804776 848194701 937256365 552874977 873670998 2345582 905309744 495250667 712889233 76470766 773481875 615042206 918511312 802827846 816439215 598584353 924481353 531258744 726036414 252964811 463563489 44385566 637071884 173094672 397686152 33976718 574846505 572788239 860100269 793072125 937435661 501629659 734925473 48078819 731879381 172068895 566060210 313847916 580231064 510227088 573612607 957272120 967849849 506850042 728872133 94124994 223400983 184242418 980977064 681359100 829459023 153096556 444986068 651498764 831686151 793042386 815479849 876849750 893455026 344895379 944304997 890586094 948705928 398788531 803133678 486984645 999569019 538792877 676090741 106384463 389450349 736247355 886678224 85705096 468118406 857524588 896586767 395479550 548145825 917710489 919206968 941231047 964800325 430441298 979732784 550017014 799288451 450251597 994905120 576002355 599240088 990491320 994490470 120184883 774027944 87654800 363689589 108186722 591215048 202153460 515562806 969358741 983358600 385914180 958733137 614394704 891036635 177408570 857994604 861759195 933550776 435433740 510576061 3509170 839143351 881908195 986858279 730904708 812460126 398070762 661347218 337710993 620134895 5807987 590255653 81113559 127060390 429036223 883760337 304852281 761733309 403021642 652635547 633359512 751507757 651489979 669822612 649461961 995748549 184113166 931018908 225234522 395708313 527505512 699896916 743197528 799797035 125219838 838876144 854494515 980036323 15872076 265148006 775419786 807693554 599943097 885381046 204046608 311685243 997859364 999829930 226363084 423127117 186516576 615419488 465309442 585422692 443723650 849038265 141908171 167715669 657097525 811834404 598370372 758260306 305325012 376811639 833592705 954191340 272741980 966716775 908001612 972089023 72396717 506965589 630291971 717556974 400855020 581944509 823299811 873966721 559787207 689689762 281102478 328267320 474347291 718330530 807340099 830228568 919753458 990903406 87887525 96199960 816163939 938374057 449016077 530211505 78891677 615149998 834028057 878110056 116512866 929502692 997743365 999833162 906568254 957952121 175878724 911028221 467051608 625190749 698768281 955152164 526143986 686209013 396342932 947607679 81615324 738871205 616056666 927101718 991705094 991921253 926213322 970338858 202074249 858321028 727288818 925621702 381614215 979192978 994737043 999790973 569359262 657080413 934131202 995944147 109302352 636566179 544278571 880072086 801497830 867313281 785999138 920727881 978653998 992004991 745101047 807179000 862785158 924459217 2147531 768865156 922068740 923408206 772256988 805881577 190059772 702662220 499723495 503546706 21935212 209025752 706355230 884818957 73524937 556269102 436876062 512972881 2855621 181507127 497572578 535125551 857963266 882816257 109305415 517540506 683479884 891819662 479649496 723694259 17442217 217511959 170484172 820874749 915911223 964078810 866793173 898597083 15004643 45334502 792841818 909427573 626611554 939405812 426147225 479384201 181478039 283284554 496084606 617164695 137542200 267589145 672196623 761692212 200115936 717999986 796703364 924961771 20681157 311367631 318797538 512960427 170609151 847134839 416639328 777903169 193872397 594930152 24156559 279648797 261014955 401783281 858032197 868356546 381696021 713808614 572287472 665902693 524584648 860106516 358467768 372080488 834389217 896697752 824783030 854204165 268247190 370219785 771893070 772167727 235337995 470509714 645257581 759390294 238223492 458058683 411466324 534871438 103602089 322638790 992991437 996877644 935190135 979491697 196492683 299129216 591322465 684380522 788564488 991277836 484038254 691725518 86557866 730658763 462592692 736202990 734788741 855776052 789529573 868913995 127939783 608133768 835762998 966365412 259881500 834563172 739311413 938622296 808244716 822476072 307994030 539852006 10683229 945820077 425720260 940008521 914163147 989794474 894339096 990914749 417431441 901835547 894772948 997128268 812358151 975560192 608980440 772687762 676575770 947592145 903803221 924226050 143186962 822814861 181373364 565251154 588399973 717434208 377713009 927407069 750788338 929404613 657195714 729143743 765438986 901428852 487268623 622520681 125312068 156227386 466653836 812568624 996305533 999792282 788818764 959146467 365625639 891101930 938145659 945469395 242394191 742282515 172604352 913589957 820676758 823561994 58598 149200573 119190815 607987115 936341887 936373422 258208794 683827609 964476622 965743939 989822187 995893123 309698033 550986633 815360436 881902574 714070337 944507003 770497962 891895984 451450399 678672875 74805203 814483162 254081834 619116388 657710128 874455556 545405155 850485824 342567562 566476895 648442833 774912957 823240453 845166030 91375791 180999321 607098992 646931649 126536122 317798859 425160502 428426976 144546239 194010954 990418213 994727344 705338152 767432776 571925707 862217091 194923005 729107456 726925152 830683783 151509978 272384242 486361141 497076241 13052370 740574782 634722588 802206278 239171787 435473508 77882383 219537366 303482836 961722074 776103226 866104809 811064740 954472957 263357434 375792214 836961851 899843575 287140193 918550297 473409611 864583759 5231198 666204328 132181477 637615163 806333306 827145160 464801262 685922223 792851140 883382491 762405122 904936465 341071230 994524458 811549632 979219608 135922989 439921509 593241427 658953509 836850179 926405047 405704254 450048351 622567196 701497326 970743016 999493416 792118633 859816233 413982112 936862470 293763301 972957441 274604253 706018457 250162211 910493547 16284160 623755846 837829139 964680925 303618815 701669366 382573682 684600920 126762832 168258967 478993038 517164115 361659681 969662176 673225049 852087879 684389225 789437763 894465576 990827763 548175653 573461534 704857442 841351001 684483256 929054254 380886367 444692894 671504735 973640708 201709855 291161419 566504077 845309198 18190206 64603042 885649884 992298670 983960455 990360640 454056219 595479906 724074402 888759367 54913407 830427531 910924434 922636585 291752366 986300716 720111618 982930467 295413631 384991117 12920589 20603377 94264911 801365663 690219775 862850244 714873174 881303679 125906073 356542756 880335623 952024188 488886997 834921361 576579882 790622749 447971508 855320033 156945771 789896266 752491357 761346977 330603831 956408022 846283156 867470532 160878272 919740082 214899475 814206166 195205792 573805113 669251685 833862769 360826016 688380333 626327843 894285113 128244467 405709025 577477330 665618605 389551851 874914062 223353742 628004988 250878739 313582726 268163136 660264678 623205267 809738286 314906350 760558032 486971774 816302863 794675566 946179567 712526001 858789218 854944050 984129911 5499770 711502920 159652756 680952844 544380883 882556478 548566153 990964438 437832568 977594863 227076025 947901420 963008567 986246758 52710990 578199225 960831257 975104061 148551515 596904498 729580146 811313736 621402339 650675551 299374396 659249823 3005817 479970219 325652325 733655744 348476197 678263732 542250937 724113228 820467018 853054586 258439288 918031673 40031079 811859511 722495525 888838005 425477963 703306289 568576955 991847947 87480636 906486247 221785104 668965386 764286237 847463055 68377787 221916855 233631653 882827674 145730146 432163336 886250913 994794138 814226301 823528918 588841002 746682366 427752577 830657256 506430633 822394215 821432364 994127108 50786690 289593352 822340502 946219613 358536104 592896432 89010943 123240499 811481419 980772316 492436144 589245436 968331143 970100373 182358370 754150065 114034741 180476190 580933718 965987980 717971599 804726316 770938971 851918373 22858143 323374607 423218621 572611167 409252010 617711412 101504644 571469697 67379092 588254382 217107177 801534175 253102459 717835892 709824291 986777456 480012769 850735274 285048510 608427481 375143713 623834659 444115576 633069887 458886797 660888623 523868475 761039630 638644833 701332961 538759541 772667580 631051494 766860512 880776382 990613524 75299384 698736171 898324763 966017884 156601398 693728941 303178768 402566818 162903503 340273038 233397767 806612240 155948722 226385348 434651898 904501244 787379906 918980291 852431383 977094824 692871170 888761644 826062348 848215051 180180261 257030241 952759232 994573905 129739809 306493965 967355168 968329168 933440275 986433043 138043261 490843303 328922075 670324648 157870387 883276423 766155592 827400812 584220118 962580451 939707900 997335265 915540053 942559852 857805945 973544259 786619660 982044679 635110951 648808464 598823519 959281084 386072420 394422303 558982627 823443203 848200494 856031358 947606707 960387769 447209612 763351290 328328333 695952983 796741960 814766072 901773940 916662928 998691654 998827311 462664288 838505585 150279547 766135571 528643101 654435169 428526843 809145550 133314578 329464508 406162950 666268349 980073917 999713920 669092154 786032399 479385981 865567926 288998502 770869876 242405965 875349975 234596926 399253442 725907327 861739865 100949005 794314655 373803205 665645803 59628031 356519077 174167817 284867735 171325919 870880481 773817962 930246174 548604402 736380733 907787998 930643261 79522914 712157969 921393066 933031053 889133153 904413123 24724938 500279983 357119234 696089544 139029345 621916989 310683459 961072151 191563224 919335356 389819614 400444558 950933334 951704016 585514936 611380530 220759978 536149462 45275402 573666408 272450973 644167810 266822194 740876349 480707462 787614390 394332517 865593046 672768090 958589074 173560917 507791065 305610517 936967877 548524559 649498978 507785245 697757985 462343299 624854082 818267997 950435506 450849271 532142283 47890640 893468255 679113475 737060262 379488595 506400287 203430189 572745271 631649040 817788067 181689976 986477835 712534185 939776334 72499041 135991464 158745426 468760642 405812979 823626535 625543177 973719193 567683645 708579832 964882495 965763836 946768597 948828675 156060915 582833628 137790277 627314522 12738157 708538501 715269581 921840807 522642971 628376185 102431267 893902751 79448530 684572530 107006101 342192910 373914982 626927371 193403174 233480956 53003605 510839038 661979121 936537635 72085788 674344715 444548291 850679648 209907392 267553077 195172947 896674309 751924124 829447152 288225325 322739731 271347249 481238927 209351065 802930797 693076521 779830794 979625428 981108994 899324173 943000496 364388056 958473894 903151434 959425062 204880695 596466578 256704507 709149393 264949693 479606534 231175276 603457483 285605436 357858206 601138282 811440562 286770513 830278752 399756405 883550246 825915698 826345581 108604062 500604527 111477662 155547478 825879991 926457979 656497857 942548502 434235305 565018423 727030878 923240827 385172568 918973880 934621117 943795188 800862689 830402909 386789372 629322604 872109185 971670116 168761042 237284567 112213568 348637739 860643407 866145777 758992584 786274395 84068768 255855585 62462185 656804393 754983331 977573617 171905190 185778974 27058136 823410276 155049637 735537687 238177909 260248482 918149579 995643589 753040791 779765596 204091438 958282873 113287900 618597062 442940487 643617912 438402598 859314279 788285435 880768688 850478958 971869396 792158596 921735171 696328899 886007762 155818289 848251353 453715055 857879919 526029686 841728640 604057823 690355850 888014655 994431633 939498634 996178257 284422926 716901776 919688186 951223813 201494944 720297735 374699444 862640834 267253573 869628401 275751394 478314515 279467435 481262959 321046031 725709607 853940352 899466891 490693463 866445189 256281944 377549038 235070464 485787505 500418973 511084548 412884572 456292146 159553779 623478151 494307000 672828230 131581970 993477911 372674541 470659359 108123216 963711487 56752025 663524250 216893246 869233793 824068962 886281859 157661334 190742362 135079815 345764685 126977489 673780158 439086853 504323609 620892205 634231345 573984566 877802715 983122313 994426453 688117034 839344851 355756311 520419952 775194234 847063269 724742910 790413459 412547168 551076264 581607925 981801929 236807449 451000765 494491780 709544602 909833204 949866710 342265882 583735454 423246911 650193338 842396420 858602349 258558785 355445842 418572872 898107085 597982366 955754244 792393532 914905814 77442270 344241725 513886878 880282367 395778877 764846696 364302116 689933930 867637770 875164392 890191406 938967522 450400429 576536559 364875458 971804239 291106172 721863971 358446231 626943590 10694820 362446662 245081705 961974784 417104498 600792059 177520554 219196243 147677608 916000884 111761570 758846548 219214691 323920733 570975789 930916620 726438701 906759633 954101569 998369542 228962996 909243999 54153263 594447351 113233993 751809221 371697611 598490890 997557895 998676078 191848290 314687088 805745268 830721583 877611287 889668656 163662274 572829820 695158760 892878330 591590569 949282146 872877967 883451187 118871612 728589156 137130589 230949038 644875995 935803082 963023335 982856874 682673493 992378096 523935588 942300119 378203892 401846441 541209685 617447148 718051026 861407384 724895646 821757419 250925272 422131723 816945105 847339051 359153597 748747352 799420192 956389827 435098755 924973561 317928115 610385395 356351640 926300684 502198105 851682388 766448059 937453011 877258751 899022789 496463384 527418947 61058224 991091790 139017398 526986741 486510990 932365407 93264850 491825582 999598223 999987276 479585623 622493942 252672719 638699243 278922060 813831079 953246568 999688042 937852670 996095225 163051608 673517054 277521006 643428983 113841194 955368742 91286395 493687532 433103716 592590060 444522753 689901749 35700849 756829819 354261647 566266409 65049817 662565846 1655633 552998242 31518411 956837687 713171095 996613208 835113400 852417309 362678063 441885402 881248110 883991942 729760485 993680319 195945712 973450322 174978408 810514075 449027143 993647146 47658328 225061141 151193116 615576376 311964576 939725685 560625195 857583895 987153977 996316307 742456586 907670178 766549305 841773782 742289844 877681038 892632231 894396355 391556343 850993309 875388886 906241306 924673633 997103686 812037470 933951820 354703163 474780958 90531575 187493407 600425265 778029633 257945342 599529189 490265364 823715154 767648949 783129686 518453237 635662830 120728615 498215860 674625839 711916694 868826363 982531862 600275560 913355583 163555137 556160366 940428141 962359191 550054137 916041290 989035019 995671848 433950058 595751426 454389829 684972395 733062380 769229744 84200032 98594023 852976004 858706638 74207885 186150910 135708347 329296636 254274644 809133472 631211408 694248500 736939056 953555809 167976161 996949265 164646161 211388827 929196110 989056066 440271019 672502435 232650209 773197440 538476500 818527413 898340877 980473128 839774059 894728714 301975967 923033482 98710886 790248427 188379728 875325860 242447788 886965236 490259695 617384051 743775009 964099611 641308168 662700319 857421887 858313037 265366789 915343217 322375333 375551488 468230137 504012463 934254782 975229221 936133433 976130676 706774487 721917168 891365929 974150163 440220743 557870183 342617336 792592008 876401702 961087996 812098809 858451779 529632641 988550789 955434457 972502013 580525259 582929075 431612046 664503618 932775618 942129686 623595399 853382200 489676939 632300072 481205225 873447651 729576557 882076564 721872928 739099588 774687730 992989297 948546359 989631977 548883654 839489812 106189537 782586962 20712544 946318380 359377757 931851432 15811586 77925907 325817302 806160903 466766862 718261010 704624900 887714160 885391908 938075359 299040397 730815390 30723149 789647574 576130954 826203779 98193587 238912248 272224367 997969324 447354601 506093370 294928451 624962286 806897231 927358701 976477266 978616824 524546335 556027764 298469541 554857559 938000883 999657814 88876072 496907320 141431611 171262220 294670235 899121396 118737717 905784373 287594086 525557583 57953714 286205698 134456764 429078110 499143647 716253834 822617767 987688084 153139897 230687987 95737133 460765518 167512695 388604696 641382631 810224091 4144910 159473955 427306411 513339332 865143494 952088768 901236535 935877381 346808880 381764107 516328136 678115696 43486114 433788176 512261378 928952818 438116864 647860662 551443029 842484049 868049599 982680136 87843759 300695303 463262659 878260874 953728691 957550160 54299174 600493091 713335285 756789334 631099534 796443055 568570756 678690804 515219111 618185142 725742344 953116489 501313420 851824950 154517310 884123074 835175562 870858391 102235054 314144716 581497920 606472628 910712435 941293099 489047390 701465174 685239863 861210948 612752277 936075727 547023921 921046394 732672443 990346722 469710022 667618974 906994284 914333980 328263580 661431812 484935829 513687832 655256421 929365486 447050518 570688285 396193369 995174988 692760053 997182429 662488826 827849426 668844896 891827308 449870676 948617282 524846394 722392073 327730989 455514346 942283670 963262568 907686431 912007363 917268103 939117489 369106922 574822580 817557022 929430099 931228207 950542115 25467273 500425843 298127841 813826304 186019459 439181475 127358077 244917195 520923034 877947538 391442381 461997818 333753588 865645767 289021297 853336322 211419330 907961009 534496869 874110821 152843200 259856738 175828082 490333825 768587571 871529999 495136726 619632206 106429432 426158694 300800872 453967846 156116260 587419917 229524294 842047553 306814370 374838661 672200642 885099724 694108812 761322341 699797486 707333167 985469855 989940282 590470149 971350933 991297596 996211996 351139517 552160324 976636416 997567636 427420100 650870285 27470563 358464742 963828553 989439961 927818239 995523018 478487317 920533711 64251571 867694452 882577357 891591569 241805257 700411760 704657857 950617835 976871941 999194758 103964377 986612497 476613717 569645264 233671684 808319175 798603036 878515420 490303056 610455291 767480412 972159514 271505099 893393896 95537954 158629582 955732357 970105495 674123711 690494554 347318830 877410671 933119790 948688582 967043156 974293582 858311077 953805021 326143178 923327590 7689639 394360652 161256773 484441537 918459672 967434243 882082773 909377923 392938898 998056408 764935579 989239475 769205500 814299600 200717004 417575724 409083319 833287724 125097309 302280591 414297891 610563282 603131715 792200637 738141926 757317257 284698593 585542121 863947165 899940227 573492876 944743725 406492351 438778793 387023999 693884256 931632449 963928002 766198222 829188575 810818767 985724406 696802250 886044435 172507573 955072825 91979389 544547029 9811853 311939482 270719667 875853760 857339865 884760790 630894604 788785101 56084209 83582055 963566139 970910614 837029012 983316092 995485897 997933676 174338830 932576657 616033355 869089262 75207533 94709077 928591768 939988005 299569536 438922290 386729737 615836181 759460376 915590640 167967268 203273669 802245771 991841154 563179797 755198078 279944734 460544942 52783215 374678438 706338922 861892777 715119284 756422595 488226221 744498960 321445251 429755543 733402442 986531665 619812026 997674845 411939921 948355320 207330166 356672997 542653707 734913648 149149246 323060195 364914848 855284794 759908175 937881980 792182072 879678908 583814126 765846180 157139464 630815659 425238025 639515643 96299786 265842747 374545476 907665722 447662431 516415602 70411033 868851837 208829162 743861291 64899772 640497815 627647632 755501031 791137581 860529248 240662083 583971815 732096620 879154140 635464490 690697523 801877412 873531324 795931986 989641209 516873299 803369682 265418281 647260664 869725576 954805529 404904578 695381707 304540402 535350423 337050516 505422952 105555896 907230706 348847034 770664588 995925860 996276015 719002834 866679544 170067651 289378812 327427318 884604041 43725984 706120172 650560763 800465225 80927402 798990102 874232122 952734395 294731596 830720774 92346675 426093062 494053009 669258451 177833196 893659938 840370414 975129423 162021000 873009656 463950274 509823275 991457464 991930952 549166658 690349831 62123856 484129343 685048209 813739426 782366058 880362547 882560704 999786809 433141736 804886238 506892895 571195696 132870639 928789488 412092499 829698625 156539686 897906238 118323812 500541687 254343400 786426234 259869299 725837095 138294433 895285057 606387385 858176377 77521154 275756142 605369006 954194944 443327429 499269246 927203314 937189631 515923932 792417136 433961148 494091566 477600742 682894181 314155855 369951248 143720148 460168560 4903929 184421180 759104400 790355742 276692189 696092007 22621658 816903599 380406677 821455842 51616387 870861958 226678919 706271698 160558205 411263123 415787928 533073793 884663481 945209104 808371224 918932216 75876570 724811870 477689318 727656487 29166983 867362611 96523147 955586537 940443062 945729675 655402315 911428322 477982246 971984801 92761403 235769054 619499445 663888171 198452084 604439917 324472152 686651355 274932074 813936585 163625475 384396847 869895419 874170891 666145603 809793914 181123 417899365 824114752 875049185 175148756 192914553 377977971 681897431 986839678 990336669 289957520 910673337 646569869 886659304 829297320 874431860 574058401 607744535 297403134 797052383 867886091 941659080 283437897 977274307 551557873 665518400 903095571 949587356 740528478 827855601 967134087 990063872 166295910 191677234 421357978 837644189 900489243 921345216 148070956 857032629 940669369 957876217 19876981 929452656 17975905 342632140 404343305 567672464 717122161 888494198 859710517 866073403 115349576 803703707 240638109 791748307 290469964 348144168 419687019 608435860 980557162 989556978 622738687 925925105 139168780 659086485 984804396 998746178 804144964 860579804 811819781 841850289 233836310 409538037 555057692 685488206 410029908 449988890 591631648 630821915 620709174 681612090 511365710 800204586 408203735 851411265 670257745 888787882 581385644 761023219 817366501 939516837 206427808 511260035 354187128 496637557 80494144 962342936 844291770 855754815 499031358 675131267 967689546 970526803 169748766 888409351 609792531 890354491 183943554 468554154 620406863 678974036 996280172 996803370 256686436 339011705 414027992 445703288 255129601 928556825 106738690 990751701 883568608 957382192 82131292 974003808 469370147 795086954 49840521 771209851 796405927 889242461 622762801 974382131 501894664 523660711 842511700 880724515 292231704 987648382 96807877 259508189 301151419 516539671 233162919 470477593 850117388 996286667 753945024 966516169 606238472 653594582 320730581 918730356 939974706 945603463 348354872 543228932 543787097 740989710 930721206 941575433 999171269 999565115 629312912 731869355 827344654 830008083 248807545 355812247 768297803 911838558 203534506 764568009 306140594 452289793 306843659 494747240 904232256 935114428 54847521 545978468 888146362 967622247 97686951 970148204 71058024 329379051 755784252 934192139 890444890 918319345 305093494 356220012 890093071 955822018 859337197 943438889 120078987 173524657 686836381 723858697 822168322 929841870 217809737 885016732 726697309 746437941 974811038 978576464 47972509 729896084 343487824 581261143 373265592 726165544 152915556 493148306 498772013 606665537 972522098 980299564 409492898 555909444 84769800 148834546 152911188 752196559 419374710 923291734 641279804 801721300 978614582 992546725 458185055 877756083 352293583 509518198 473342275 498496084 137349820 176788809 140832980 185096400 368262621 481071561 737449898 742153043 60515317 651755156 597039505 850161301 670277749 705170012 477403060 724807343 248157969 547325792 72953206 226621949 961675638 997767938 914539453 978765629 260131485 452917666 209546191 562848610 783100592 796587238 864960716 964388688 189252593 769992007 94646132 378347181 596705556 944163422 630020987 760367734 350160676 401990839 828061574 872306306 472870194 870371267 770636875 955552553 165259394 917015621 404332129 935417113 576284788 770255125 995080560 999077864 982774826 987654872 789039139 961563898 323705216 651191150 667855403 769037759 815024687 877220607 929303249 954863034 877367326 962656372 418980116 517113262 208790519 471561214 693893666 731919674 173946628 815396764 625086183 990976874 255041528 474307267 247668818 296280543 663005031 901284022 934715251 950312220 26954572 822463167 794995258 999159225 640808223 776035792 11557732 306168382 426160827 701866388 521371000 885604844 36550164 84500721 588327369 782321327 290487775 908019332 433639512 830175228 918764889 958582093 305417005 970779289 265778619 438536857 37394088 132033587 600856509 782242236 664540020 731290645 322635437 595636109 740012585 948978752 603638248 636781810 388519566 707157260 98891664 836937697 815641604 913003975 331906809 363574178 369119947 884707051 940210241 981485249 683025081 916564738 877968924 977214582 837040678 885483301 213066430 280541122 587177163 637494332 163066780 809304503 437136858 699458196 872769401 944600682 988401672 994569360 206525816 317618947 941330157 967952153 235486043 633249330 282443454 647532995 519034839 603169164 555340832 905664477 376169177 784048086 402187524 654571638 705067818 746279033 91669920 237972683 981615458 994633366 964737383 996362450 972559193 980682795 81187988 232669857 12898565 455439379 769916598 867732283 130091995 819902352 167534839 919518697 790207428 847776056 678940643 898890216 197824710 688370495 189590596 586741649 910024769 912204686 258717398 378485855 122948381 158211525 998453542 999027574 255765580 339605162 706240223 790484737 287331393 642679812 508762284 944217292 467122551 639938328 329317486 633189619 387433994 480332530 114362574 742115474 656093504 808065332 841157108 898170037 210676813 908697959 373008711 386626054 881060771 941528311 374052458 551415209 743024890 792938879 13061562 352703328 410704593 990712189 437498593 586580384 419368421 836496456 184248949 534389661 659826584 929927776 187661054 713299749 860682179 999069940 349605381 412560260 6371938 792709861 507022173 995008772 714564812 953320663 611872716 811472821 324808153 366739702 534668347 919733376 415000921 473191805 729685461 883663864 101026805 767591700 806309029 996008823 622462067 929451034 609546955 899569749 611526625 784529633 907811046 940092646 609586790 862097842 740486525 875435272 99251924 546600702 731312904 917087528 736346383 887681261 3486440 280672356 405245919 563025874 454561070 768303986 359120881 443826613 348485587 617211990 75718649 172650191 157986029 257069362 263688666 475600685 737937271 821986488 834856490 975123395 198642611 208426592 719760071 790414041 627500661 770458507 63760622 326092285 78812731 431778642 23184331 791399713 615418009 709016446 415515027 435451970 824450069 997422449 483512464 800890315 698033960 925777807 821924177 971343363 411109635 545600259 791862040 807695480 564536029 803627338 813478199 849459072 848134933 935172552 651826319 732806598 577790176 901696719 339724542 793853891 287963682 326971454 66514124 249782629 861439855 966502200 489675608 669659020 75682161 460921055 342235669 427311570 991544294 994972795 581033242 598809050 457758188 794499259 416781022 725702188 959149776 967634863 74659553 688133231 590109020 735361588 5929554 593622805 408808797 721930298 854124458 937827301 528561802 693274726 713292698 793530205 644569013 645280661 591655894 750213105 235498551 495227623 93871898 864937589 371004637 374809913 678488769 955485870 365629235 789985259 785613372 904692566 107094661 985760466 372983339 538294308 368123074 789397003 920094393 954177722 195328973 455860944 284684409 707437844 455023781 524395833 778235014 833970734 134826496 409632461 488737329 519827187 696437812 786041948 737759206 875047352 727695924 736656539 494421817 543124051 460869522 742862280 398580415 787874964 427176935 474510955 843003523 886488774 804637755 826399459 429074547 553146816 68134082 972386345 218386360 369713064 540704816 603994978 638419925 701460224 10559691 17041444 639637989 753832133 921599029 977387803 691757919 881594952 447379126 790737408 907584187 916671575 676035671 963698665 373143990 836191592 798570884 998693270 124282601 743813733 424305621 514200121 110238749 682975710 448075325 573245497 328439409 405890242 418884721 510981340 473470761 618529919 809123489 855652835 713484138 876776017 261225471 904410833 61453224 323364247 553534434 643459501 735207250 810349233 490291489 971067619 315328422 917933217 219896097 482997593 21462592 949310774 290636520 634565783 166449839 188702134 831440602 913072502 916491979 924242425 136256750 484671516 633853856 855357112 392724837 512779248 368273736 634669277 947555139 978289373 655797710 940745648 51278812 516588134 210507933 601470323 244855833 815959973 553801127 638854880 881255026 925868245 343795844 421973540 128811623 163753252 84186640 403299740 296257152 606949329 261134261 633404829 953891454 955220413 19397497 803029168 762954944 853983173 29234387 838021402 413368475 991815550 430737379 671825627 749238621 871654944 578694959 725929000 973864923 979089022 84951260 879082488 59347494 449185044 162249721 363906479 621260002 946789959 520487281 955003097 970434798 974195570 513593448 962819061 870890264 877555900 611160311 752292561 899732087 900884865 877292240 990211566 235659655 397777533 219271434 738780956 88495981 611925983 837070498 864138055 134366266 357988720 597887834 702367412 888941599 904501762 519208280 848019394 678051329 696542217 460378368 469944275 206219429 303863972 204940816 476328962 814822858 940589761 371376550 470435912 663047519 696426106 916721293 931686701 673726639 983092510 581816740 750715405 198409298 607550911 151403946 240526647 215304317 649593458 426239246 580274049 282135306 613301590 962315169 998346995 956803930 981509951 578641343 605815228 658678211 684955993 231198 797758489 196047805 509196887 264968737 951795681 296298522 860026327 677586241 935573331 830332720 977064497 79561192 100312092 833509651 835463213 251120240 970473660 81212559 95020738 262529952 839198108 946920722 958469315 964371945 981649887 86604083 673659586 699891454 974248128 909652015 962374063 163026110 441737334 855139268 865666955 843463923 845037132 401046834 832049781 881398310 922206185 873347474 925119744 423001286 766011053 871813385 949491894 718116595 929719994 896479827 970682575 84895660 968566945 569802020 614878172 918822434 941739583 130129455 727194986 624019708 733481235 636096968 832506160 964678025 972248539 466232436 643996468 956289308 972374549 750008966 970689659 239149007 306808865 25390001 551881281 268074172 647360476 800964998 988751449 526906701 620707363 897654744 985073867 260108475 661470659 81427018 197362024 358707457 978924097 516599798 593108559 350943503 752925996 187221955 662105205 860796513 929111108 276677679 318974783 938043222 953028758 932328504 983998642 924888775 969616169 545831849 878709093 865918537 938839710 738885677 861394862 666731129 722950133 835582822 883534657 350756383 850999072 712612871 790740266 925226641 977891640 191023357 541460382 882649960 934013490 479855374 702874313 669662055 879571940 722600557 996242332 170355176 521382906 952150410 953863055 932317778 994867705 129427840 170835677 702893545 906916651 664245616 666145684 412500059 852315541 938992382 950956385 670927558 990760070 132636653 498106464 38365976 518244375 25495077 331585229 342301884 963647812 37925943 844169490 428236784 697759713 466374323 668109273 617378002 964303603 225207048 270506097 859009860 909467742 765378974 856998942 828727115 918801970 141595003 781205834 53392751 783143959 682095542 809295062 460109563 460794695 248646697 280935493 780798391 937247941 590334414 739533994 858899518 865301850 739125253 868641982 106010632 438749125 234768720 906196813 535965473 698000904 588805071 858811155 239431032 310711429 91190795 975383693 180904252 608148422 437750858 651642176 567116358 580845179 545766544 628013840 784890442 866283390 398950298 890393871 596503809 966707855 170747561 511613450 203411030 892828202 764773062 967905137 458459460 578240324 960914628 975531963 894598936 923325186 337340043 520371166 726170523 904015908 651895082 939601199 583353408 634709731 801866790 985700560 508938825 606591143 189949076 836812944 336951010 683764070 784524735 877119212 235068104 907432867 172317614 532871571 515339366 903659317 828419859 905934326 74149990 293489085 911945241 915850395 188592840 251937938 237803706 258143275 877599170 904730668 641322512 659398979 908444696 963390389 631057994 685314158 221329692 776688413 11842011 812623392 322160589 859583574 201751581 869613634 372293457 747066659 909478261 994863363 882538769 891878568 217958538 601646168 859771087 915991222 632374655 860948235 878430549 971702393 913795064 971572524 953717649 989736598 520021117 878447060 202805188 412037684 346387048 500936092 212860053 481790204 463300291 856714580 431842418 996777387 206559718 501067302 980309356 992164361 885636023 903813280 663145303 899382371 332835878 904258907 602551780 783271289 879347985 940880586 811633007 961088528 38795428 173662181 847377178 956513545 721722298 787239269 803784064 837439140 49323945 374735705 284297637 876984236 585758855 915307846 686098342 773415567 504455454 538836604 325836332 676305316 771013326 957837393 99893105 313159573 55776391 692605022 659831628 800211255 799376800 876324044 317011262 709567134 434689854 579622326 431525652 868751752 388179599 944309140 209022371 219285141 376861742 901407300 559042372 754018202 263887382 424373520 692915433 907908819 445609034 531705684 646772218 842313860 537407866 882214466 668764835 916467382 296399678 578568818 675464924 924643040 821251801 876587460 398220738 406547479 353078502 635601658 111916559 921176176 590218588 798089848 997877851 998824474 622548065 801796820 949191281 967634895 157712341 522139788 75588700 718054249 829390226 895616351 449332467 816417959 737429370 916088530 679461415 902292609 956855748 993160127 628055253 917065177 544141457 604748094 1786949 137753638 76421085 485144846 874979063 921495214 824993664 854594236 628653246 864618271 147560649 836955992 372769356 847582910 314260448 413106739 430048105 907798266 13165890 473392851 629158898 846979651 495638363 815033958 163415441 402441406 209313059 619316706 430749933 942033548 220223908 799486667 465608079 987105146 682069612 948729916 894998613 980308157 366097623 664526112 281720882 348939883 123473102 960489325 761047630 940922483 257359957 321244307 91738273 224904384 564886616 989371529 358265928 532551168 226402111 988677356 155781235 325782709 330368660 830163081 469010830 988021137 570247584 579219158 594155486 756799388 696405203 720315908 630009220 924413788 540450276 775401019 390489791 905232569 193070621 218502085 177089432 651687150 485390117 785425248 206414747 766201409 245164521 462008604 814321511 915454925 940311776 997182270 35333958 915661013 115922201 955325620 559685851 759608500 753966330 847261224 395814732 851521956 908445175 955852023 605428841 939995018 399610184 768914262 492644533 806169029 122669893 750574878 250514828 595274980 630680333 723820584 572546311 599727557 647827182 860625353 191145869 714354096 531663384 997267162 114889457 717048086 878485254 943187100 216955276 463540855 117933316 950342145 474096677 921566006 702830096 826429669 447077338 473167420 325859040 610511569 74421940 537957108 859103097 981488690 896269067 976933341 209261998 394888770 332789222 781983734 885783685 964805612 890714398 949745714 107184225 138261516 78384532 135169143 961907405 979590834 754902962 940095814 96271371 426242609 19077372 684936768 378965202 752270623 454516846 702496907 631751337 707502173 153785203 929687501 746740769 903262558 12651433 930557516 197011140 839403262 625670118 770838811 641481347 836976337 495658647 496845028 728062740 990426318 193447713 518518811 54222966 485895984 656906280 912986154 208610742 752831032 474267471 754535880 565385695 699835338 968997640 982456073 849907719 898971761 136462934 265445984 279304282 335924490 209220839 482466675 289728947 675403936 904954970 910053337 392986446 667391756 418033346 563089913 321933486 585094747 11548315 110775264 390894141 480749680 346633107 927271308 507229655 753711248 746596769 879511581 108968402 481012448 875647968 966853050 179407522 812683683 966590590 979097369 169830394 242531426 686026205 797694734 8726010 782163391 214374539 776470376 325613771 666223330 495066035 814647956 937222554 981773675 240922122 895936858 801558455 944200824 640987795 794659489 540910986 755974621 742806883 782471047 645035211 816761827 4617747 386271801 45651532 830133607 337121077 616620913 360423260 531574495 130203692 291245539 69934163 203140069 896046453 957464881 965424056 996612975 570923619 818773909 965785544 984263013 663550169 683272326 518076832 772112725 520050208 632163454 989162562 997875818 333315758 867329099 618332830 698992617 161853051 371705644 603581580 952204410 565382638 763646721 856290154 982447187 578614837 616033655 342742407 971567251 383753347 688309972 548869121 771334469 312945877 316709795 214843273 639928026 707880972 909911943 689852282 941504843 437704829 691592671 189053676 564371201 605844047 624993689 507707145 720745749 618391865 831886420 765030693 930950342 440866879 611168082 709357436 849923460 628499431 951389678 470370332 839089951 128497941 340648926 301454760 646302541 753640625 771531277 366110323 487151937 107460312 370473218 194776077 664575548 114451638 988661339 863975277 985158153 806248279 910345493 464880809 689166243 540400236 680466521 513780703 757806771 87866963 379536852 328630724 793695920 908992474 973396640 629065352 774094377 449992761 984986112 327072084 536970068 138967691 317411705 489526637 752233712 728685397 932659158 686311596 722986630 136558508 191474663 627438671 661745947 954633921 973101764 123332229 839336949 324003562 958620405 198398519 463850556 607207714 896551602 60443976 888980813 132024387 406265261 275503227 602080810 542638737 758974455 62813720 271154728 725891970 729245611 529636463 873388856 1850483 13826659 698925503 926183507 796322328 813246451 272837674 809345214 327949135 389792927 704693098 796512394 825979602 843060511 948836927 949160465 307695544 716900324 844489912 856826213 341549641 964897599 824207832 847704310 853170943 998713541 61857312 428585946 173503601 186579316 484984599 743421841 213350225 477207512 687353315 957894138 613512656 621020828 644442969 890251587 508764707 804466188 747427800 756623211 556281393 916759923 258338568 734819885 726544071 787682221 321325467 576146296 699692347 856068854 983299285 989142077 89363199 575267833 121610156 311961713 318594759 661003714 272648568 583640686 867977576 902560485 218228722 330118386 875499266 960158138 853251174 853790555 243360081 246252322 146494442 889109843 225972807 800883967 603547419 940212264 369472591 857837140 25177712 724056557 878360037 992428588 286603715 486133825 746785595 818155280 768436081 821469419 638143696 855752449 715453995 791195016 147658480 878220379 574245757 976757258 686804437 811936314 273472092 910419875 800428809 842522240 186743286 470563598 964699458 968353473 973806613 973982128 670083952 843809907 217923568 702814741 43531411 742784651 569761500 869204098 62297946 581494815 513371819 655476468 623064280 744208256 204822807 864572602 731546697 895540984 888642984 962698179 819676059 925902850 359530323 833117392 834454860 901354535 137838732 280754614 610686977 886410082 916539722 924762202 887386687 914616138 232729276 562385961 601713504 707581640 88328602 781172532 852836638 927670415 424083041 968983097 546531823 708791958 810195267 833807697 936998232 969533058 693861438 792628866 277835109 875478996 178134133 872183698 919524473 938082991 712079911 852480636 509547262 859866766 136914951 535368009 626176613 861328578 169390208 565610134 778399995 915760187 977881277 992229052 76502063 726681471 115339354 268297559 199522497 294274246 976032425 976924187 764145913 965365495 255104277 857853864 82884688 422593107 813886961 974559882 818958902 839829741 205465133 239900924 801229550 951503518 852652959 957250623 608947343 661420763 412362757 528417367 649947116 749761569 804683372 892201566 344483498 535111557 188376945 264137415 520260253 747090463 752430834 864944754 867762310 983300128 904916925 947403399 568335194 798677438 16978437 43855149 699479426 779526515 297353782 503508730 356074204 856554700 232393298 428535822 135342011 745037590 187179392 411352391 380653753 582570272 633312719 881447382 273438017 669936999 992500875 999660819 629997414 898983124 343394459 684834619 458031798 482857463 73614352 568190352 824559708 833373451 629488228 758619109 328122373 566052055 355099810 949570878 743783784 956770945 971207122 997606178 664186202 795718074 34184637 617206926 71007817 728923624 968749439 985692704 157429344 527814600 908160315 981734476 501344711 712839976 896265840 897244254 564907908 946367009 408784572 498323483 966948957 999697520 863527278 883438334 446184799 745517162 169177358 424098948 619863935 856132353 190030537 615571147 332580644 515583013 976255388 991518398 498296371 987706662 476370311 970061085 383914976 952004175 183110305 325947764 146869792 536360540 669342308 695039256 372376492 881240682 38337899 829623539 936402148 969214041 775918836 919114074 785532387 958166398 280837984 817902802 444096195 997330982 810410702 990388735 541786646 733725116 326033683 911262343 591846575 812868069 114426269 854920087 544717837 742992876 696610799 795013450 320229375 884221105 957434072 975217227 602029967 826661377 257228859 574983941 676278917 946606791 460820463 469335464 790427563 873747649 775802021 864386434 331916528 924148244 921090384 982260395 497617293 546011272 643861123 842141647 271973792 405970386 925890933 983957301 880102735 884415798 952339869 967839086 103966665 299902957 417000719 937752508 102784520 910968886 586721814 997051943 996966274 999953607 961779625 989154180 3547591 721922381 21983907 646065560 62498170 625829144 922417903 996025007 457497883 700827302 980218938 981492423 483067242 547266339 611611440 812231828 765838812 992780662 781936510 911551683 432640533 479149381 182851910 193122076 386952026 870909597 705543117 806689284 632205889 700736426 84346781 173747865 700308960 752731533 991479218 997969091 956799751 988041636 616132689 818627763 432868585 538174636 773345542 784393881 106243433 810580871 172288903 447247989 736852471 822423492 95837268 492591725 378082594 899777575 18242201 997281953 479294286 560706700 308806332 974110805 625935057 877547350 790179019 846994406 564366098 643469676 14960437 83829367 110570711 261218740 508490268 851310363 741645291 840566683 393751206 451487644 519498932 574835308 761171169 787012618 678960755 983590509 964327130 996305845 809394005 902737168 167022389 392212929 310064341 523722492 734673053 872090172 520538434 617187089 511947344 724388772 794387607 982902902 474489985 695792658 638051706 702755618 71051194 552482544 500048923 653613789 371211761 519816861 262189121 780073511 771567993 855430767 639373255 650488500 616736974 908060990 605463661 961463609 414501060 838704802 325430404 388336338 306909381 392005261 468403622 664279693 844319803 867252032 652014310 656811110 373135497 620179465 640903459 656810363 137195105 525077413 793611347 824112546 577914787 744521348 117792123 446928844 167282408 685255698 867560637 949038428 880570738 887194606 166180897 906849995 327720685 581911285 365029776 728722528 526055903 765266433 216256911 223072692 220930923 797821747 156340210 476466660 614931507 980805535 106106780 308045871 144644779 764705747 283644877 530940615 542349572 675182243 948433343 992187944 215021807 388436378 606097122 914490508 505267563 515683847 995273843 997749475 369972607 716421912 527079748 941270079 775081643 935042040 48505239 224689761 73660094 859653358 302727469 928593676 562970174 749224789 750883993 857290445 565426777 952868487 870711095 891982025 413443948 507583235 413396474 776080761 264023213 431918018 876804438 955308803 945588104 969029153 968939922 978477818 124778810 942231995 159728060 187439148 640986475 992202346 124776544 706932549 295258420 834719975 116064354 493252317 365412357 646714513 943852135 945279208 915459708 940080586 618227094 919926777 53950761 234866729 331162919 755882468 311972954 859706967 799474898 846130428 366538950 991930327 302434202 973485102 59528677 697053711 963359527 976012255 614248386 805980848 748766393 879359336 894071358 921428309 723473240 849956905 301126664 338444274 978000209 998986171 838900422 886189785 55865521 586088848 110221374 789580895 696332597 738430174 647236861 913147599 482849789 812826752 314313264 735989028 3203940 606017453 110302672 386155775 929259935 957196370 707687437 749840497 7452625 42861002 332724983 430103975 859458495 919088946 822881060 965770450 410888891 464627715 181417538 844272598 913806241 970626577 873858842 966543047 662452500 971288726 173177476 210616988 850984762 888877865 368842087 457846991 660300437 915886816 749087052 759321447 808205655 903965542 789543022 900174054 126459914 620217016 808185421 839081954 519598761 847672785 508346390 661647401 295242168 462486750 170784144 837666651 746100875 953726325 931447561 935548101 278450268 318991273 981767525 995254871 728887994 897167981 282408964 868969864 305620621 940860879 164983737 692814187 975909073 991823703 481496617 724916297 416332374 579983614 157278097 703179154 865465704 913507200 68593296 645992179 2715239 409779951 856157207 877155760 473791091 811386499 16013623 300844570 95508614 796372975 132275624 625251187 952925068 988409514 638805757 733740036 395594386 648008612 725474574 875543216 625926010 743743866 353301260 667853446 242006169 609242271 106233987 433109003 560257411 653980781 700447003 704057311 339770168 441349498 499544354 931460141 675913747 964473340 500363953 868383262 936898589 967895260 31872852 712421114 704296193 872091948 400837280 637733478 481509077 568606719 543131630 768528231 928252403 972151084 364719010 698943166 4210277 639378073 169576886 838347203 120251781 565833183 642020503 865128795 94390554 960401299 18963363 447429209 642883839 787562264 49253185 876312810 460943452 895488181 224140026 517000953 993321194 995283480 835236885 997194790 715561103 785603197 220314873 999281445 766038255 828758951 314854613 370684493 939738244 974693527 815179684 861199589 785200278 955422426 424564863 790550095 15515451 705493041 511639839 676663022 589315538 676539403 180920877 570036843 722825433 953252071 886814738 903165362 264421536 327754428 997890121 997949662 49383368 645133287 56732771 954061647 337528849 569867398 484777267 501036429 29405431 280288534 598791294 856597883 300723450 737784246 219113791 768678737 572132834 650561566 513913036 571619096 565133032 853084582 378301037 625066335 560033677 872908982 817419830 817696165 472284469 480953232 432606337 637761072 846205533 987103358 933874706 947963649 774861459 812225881 543489705 739339121 376028749 630867063 717010605 913510369 724450513 732990467 745934539 861115405 185107456 475285561 77356365 800396868 75221049 751060387 955077703 998289170 571690635 825172459 758210756 834240707 990378653 997529812 532446010 579639814 96494479 126157233 894619697 895375952 964158223 991658581 504473981 644863276 461844968 859614868 127986026 822526148 754156414 994998970 577186993 597628144 27711403 552785853 788584600 789309982 786941008 992129477 764533786 837394827 37882720 572374175 903924895 981950919 919911869 951106569 577164168 951722430 316062064 851110276 661396882 701132788 656987107 691665164 613030765 985355807 958522591 968554512 534683823 990531863 658227852 789249790 427313846 715351827 647393363 850396218 940981394 949973024 972361292 995573441 592928533 994369344 433012228 978499338 585892433 954949465 8039089 691906864 240712086 441594112 722912974 844552085 42780335 124777500 451628983 741061222 663580475 978617599 318062481 858095674 702348106 934259319 789749678 799210783 535435804 751687358 452842874 937183241 195941054 498195909 520513684 989344316 41115263 112269287 91739326 450587470 789277352 950885884 254345048 480941090 86815294 818789773 929274814 972151612 83110602 338781516 710222952 807512277 110828263 192834531 441198558 760569072 578000016 643640353 41910828 973553819 904417900 952138613 338716089 772149510 114495191 991098528 908906085 979957182 798821429 848677236 298092680 497005729 909586682 911506572 369838775 468700096 689396564 891896535 60234792 256688777 61544194 904438338 980334218 997665774 244220630 338914001 988720667 997322832 934425373 969325065 337227895 826651574 389540508 914685970 844277304 882679034 702023822 993284702 680552696 693251887 612476716 690438425 687286731 728445094 416438616 886501392 92726052 482132700 601185741 979992807 716299970 939710337 305142308 835951385 587429421 941233725 444884704 783441769 789968455 888725188 269257747 461298277 331440616 706313393 982429149 987278824 545771952 631976823 740519402 813126398 208718231 558577971 374209267 660341692 463608785 529284504 231309665 586617318 981589518 985856991 318855240 715202418 253170962 610964453 155567850 498418931 840785568 889235260 709422680 826728911 492364351 584725682 957500523 978070709 44798671 690899348 705943741 987924339 911501855 932103848 209462045 460347376 75368942 658396548 417957284 703951687 865185944 950379785 178638982 741199735 921179431 925222975 127108405 890025292 681324733 925844172 884223006 963464662 762810378 942762962 985185615 996486741 176231101 448914022 307851422 417336749 797836232 908855574 907929651 914922617 345723845 777782205 523697774 910802978 526232827 806067151 233578279 482660281 448677299 849765173 443560213 556720484 722639369 768207459 262442583 737095672 527345714 599858993 28853260 995909458 801545352 945338902 762335382 769918375 107399591 464539115 5059481 574963120 881568873 971449651 220610684 608734210 484025645 704598351 273743943 571315624 153369780 567274898 858328298 914422321 145656922 636700538 390816252 421110793 507743945 596193031 924962956 957531353 244120303 327656925 778448133 811932562 433348758 850805397 705347442 793448789 930818165 965020775 641139898 684140953 128171685 316202789 31692868 72630919 902153904 975911854 930676046 969503069 585429745 977361213 598534611 756949443 349303290 706471781 192727588 229986313 143054449 887228446 614297418 907311898 201416153 285845584 129439023 463597694 854958382 970497640 164691804 854310958 95781439 896901481 571625712 950828559 574057904 901025702 311209740 857370406 998034751 999722838 36756438 105619087 557790636 757423387 284890554 888410159 346756644 689387101 972172417 990596524 916801068 979040180 155208427 280811575 403841324 759514292 418355793 988890037 395192309 852247765 149142883 883780966 201694945 353500379 777670280 865515541 387349191 428560428 715600168 728431573 352826213 591549851 574272927 942095321 690127163 906955215 50161075 161835060 169489 366746356 590755570 997898886 743629812 953524976 707837313 853785489 48212304 905274795 704095918 865431920 476791655 694108900 199277254 277945028 612877042 764879137 589839428 837581575 721434711 840585124 752340346 825630755 708311013 734345938 125165152 568154837 832262069 882231424 943038534 974818002 589029967 603156865 451093825 867507996 38663137 222371135 732060679 766237378 683836980 862649984 148059878 151708901 931091412 938573975 496392063 522191044 93346088 569144455 333819325 495816622 13752088 720757191 869673191 927044506 95339484 511902523 849315254 907991025 292480896 879597876 528734169 692977020 115612913 540199110 428695736 435204171 601867218 802151187 609120054 621676747 321530034 895051765 664507496 947590413 809515874 823744728 597616585 911891993 688065110 848473221 13145002 889040766 878892271 927513240 156208193 332790483 772861180 945533618 322924859 405467759 768405248 837796279 310770799 395722268 417554440 978463384 588953189 759473113 970701627 974778637 149624952 986202106 602857982 697131183 15118461 674529203 894288931 972154342 455675505 868922877 375368165 590706140 704459798 955783787 826183245 879142262 126667484 732325069 387818087 881912108 166916055 256162311 816501142 853756497 431369101 473037801 313443321 316066037 260660092 765741012 55492289 626080699 876817213 895114374 148970915 943365089 275433171 355520576 931991959 935482934 101400580 151645827 499020775 685660016 330931872 821414159 791864427 981982481 942101992 971656497 780449915 826997725 404607449 733001863 28806429 646007358 459242352 767341389 150013550 447056012 580091366 693422043 859144601 997810845 909822107 937172055 4150912 200684784 386663803 641836937 242132713 623185269 190737119 772164264 682086030 915522479 697285936 721763907 973034490 994369318 352253544 755790702 797321102 877149734 13923824 715068485 877244272 931696354 730449629 742685458 716835270 799197163 472828822 602248516 108612837 891419627 780906700 798718035 883441122 980215188 241599018 475810489 51474974 511786671 54199192 215731614 856252232 925780578 216416577 432722134 983490293 984911807 479077648 498337293 633758123 649020917 700690097 845229090 356036476 362095065 946725042 952437766 392818127 682647637 887619281 913123533 374384513 561943894 400530666 446813383 848705091 852065163 818617021 845294712 125617183 949017894 820348790 924188022 284993637 506353729 808646388 976610804 230600163 503773135 912015582 939063235 369739070 972688131 229676571 823813014 791468472 915298131 916554374 996665317 720719699 874002391 930277580 950801564 14658145 50003067 46552184 188991325 391558126 781580446 614803749 856749859 271609575 438845489 83821291 102583438 583778335 733925917 596838160 856992507 698006292 833977704 435877877 833578818 168978885 492551790 125129875 510647304 959847435 999140838 75228251 856374190 46543503 174438944 666292175 692641450 659185957 976599251 927532773 937202236 375320099 990608398 55490603 684752021 821043944 940580330 267178824 847469497 525066161 641006922 184422237 597936378 135860935 801921198 965505442 992985335 358858325 758209884 663186664 776338722 980398576 987637045 174873122 723125912 261859250 637856061 567002656 736077084 590912097 893359830 440348875 764644980 236504258 993077809 149461553 325168169 554039367 730864416 836804434 926323928 994242638 997953197 404038630 873183330 523490865 814278614 165412306 885433422 935191682 974790781 540602344 717794436 662198544 868975130 598113940 832974268 124522667 829536892 927076038 966409626 199749617 986487349 907352127 928655625 978712065 984201932 363642182 365650758 717510716 981897778 821575715 965127414 428995990 627860455 499837947 975302216 874758836 938946529 917457706 937456618 491997084 951839001 318774609 845777649 184865451 774965219 812761721 882066897 96602961 342544146 785637291 837221896 123986126 639364199 401076081 965697331 849841357 955840095 86919766 780824732 26756077 813508354 577302572 728868757 642131158 653489055 790939012 826034775 419095216 697403256 42658960 943816529 368718958 438920160 183004062 276061103 454823054 804108166 920720513 958707832 881693334 985215268 951741546 959245237 213611717 476326220 681183018 713007693 540956151 897179587 172323296 852341229 544784330 955843901 667305074 774282486 933075287 977826651 516638589 725211795 539760299 672923668 825136516 963908494 631106077 863712096 614206444 903235973 879166933 995940100 54953175 638089833 359860867 770160625 433719862 969589168 143156927 531836819 599055819 844422188 692514129 854849541 831584235 923039115 309131092 583975184 253328402 654988642 162735409 562697402 738584129 945866726 853291492 912837532 102797290 134303843 817540043 918883360 368786959 789567095 444710034 522305568 882231800 910371514 95925917 376170643 89376800 544456650 974640194 990286488 428350365 598337368 314312695 640594648 194587185 890514629 711879151 809414779 533496627 785401455 465677285 937998477 193794413 634637088 522551380 688619904 156737261 287367796 278886531 367233876 374876545 788388200 926407836 952043884 412564521 971978656 90501486 960254340 137661264 813684618 338845010 402338452 794993251 967955189 829735435 904408985 117065792 264239666 98176802 520461698 852954978 947108737 61997405 223825677 67443586 809586748 991695797 997616152 247383280 698743435 887624474 950450824 366835012 629679962 512442294 754200069 471624032 859665864 823341036 831559485 705303427 882058749 37096239 40997994 994488984 995888423 699458635 911759841 560593486 747733791 173563348 276221411 555582898 565620699 465111249 563925290 533312670 876996418 375096233 795785082 3947979 757683263 511746918 654520445 339998012 426374802 464548291 480994360 399597699 919508390 58507245 706657595 266727116 561806636 516016220 974122377 139008288 690169212 907913089 948926702 603102092 801714443 996610547 997783961 314822278 656658188 443322833 885906865 299874878 869177344 875189102 910129863 164590104 282373942 167170545 746860975 208501419 639621080 654329964 787858093 166707199 437628095 265711457 607085922 859803611 979112736 54802317 862152507 399912352 482064933 163008322 829274177 670614084 978890217 441422732 603324360 135224444 950630372 36764167 865416181 778071442 798353367 705048513 926445483 763067876 950317608 888936921 975525943 734600853 837256736 168510757 261965568 842672491 995309891 615003301 929732830 248185691 808591236 150981575 829705027 461848394 733628020 234668498 778957032 880278655 995805735 455243260 684215447 426422291 794154444 831580420 895403229 471728641 626351107 964257162 980163153 883805343 927812137 188922381 377821994 465869896 919113164 696507848 735522136 987513081 998105721 703577163 840154006 345023392 567336817 38190988 765242012 647195496 939620248 453749894 912238342 165606241 796222731 730160005 761388156 43344052 866370873 670862219 996358820 262763110 384454836 856438886 909449542 312685333 988457358 708844096 971457213 172217858 943795031 756555220 965470474 426943641 815285670 426138978 953307367 126444935 348663942 316959054 628620934 328718881 781033729 786129639 817471940 536357145 575253472 438475277 603991856 374399233 833731667 640574875 773733700 455629569 635857594 176707674 420370618 977652467 991557984 208557362 438152310 161495832 471110764 950285563 953982218 201221994 516601371 593007365 651936144 815936732 952313574 808162150 915170491 110699737 828002435 110305509 722164472 198848966 360753814 103511665 925059515 250282009 531028008 318778023 855080915 390853300 584998368 63460329 963021127 830572458 910737530 384774892 786034918 502428404 820070108 8399737 980920883 871162220 906544287 947289443 992416611 900789273 998649882 635043579 735171273 74537338 440873837 989364548 999302385 857246347 922899783 670452859 890292118 671177021 716286646 875506729 887038223 641272644 799825441 85580196 736721727 387097745 673651112 223414354 239541653 415450074 903524893 141479514 594037749 902081231 924950255 322471454 964404413 25353993 657063869 586274670 838219262 885093728 938990642 287395669 521556841 144638706 598613808 653465637 838553630 64786554 990859454 706100168 716770688 156633989 430853045 352528597 727669807 276500097 451327204 67567289 771769459 582571022 932991507 135049917 247851447 677538321 891782356 699169887 830602789 37168881 579726960 29935614 413993888 240651292 488371822 620289902 959497117 10888086 989843601 320917324 709534086 353502774 636416077 491381974 682751751 695405882 807805385 866283759 987968387 814309031 924331213 302144116 452910904 185632914 349899697 752560407 793613250 244315343 680523097 452312094 875888361 571110883 807597406 95482932 168182905 212203419 852313972 56682099 412313305 247711644 766383534 61271251 593203366 409350517 420464752 63415792 715541333 825336792 950277519 466976876 722104089 347518425 502188688 423146901 922124182 455960853 711824967 752925357 821684156 794075222 960839895 886031337 938034747 593396551 751538749 552623719 752887382 245583434 755577932 773507600 800577430 4344868 816817716 168919173 274163333 358576794 494466771 964953560 992703658 166821025 643656267 296809597 684685344 782539151 998212498 148213742 735298890 29651995 282813332 312293627 882342113 645471274 833615681 649840470 803280756 188356704 355905254 7964803 579398213 201899151 638111096 203297516 278470947 251702470 269292288 185878074 676140793 816162269 867530703 729785879 780903758 811068716 843063262 922634555 995347437 744000829 810338293 604605 758900965 114040333 165880382 655294368 885687387 682875877 796709459 431097617 688088799 726250107 991286690 429972723 858387321 109550845 303752709 554793865 784635785 604353371 949939553 40055862 788481191 293660899 612358577 14800146 618407662 447751513 569338329 165189509 624750525 377514028 952821759 91912857 663321737 396398925 643839148 726333006 868125591 418043988 976437488 652951896 958443272 812640998 826232375 224264086 595347421 768560840 865816834 237551655 571149198 569630810 691547427 454498556 563681937 722276512 955195293 344040696 890450354 78499280 423877789 136644514 290894733 564753882 850494661 186987597 377844547 105602019 234019850 422705616 570739565 638921412 734042664 344913116 748583966 996481540 997643330 513730524 814471815 110379983 141713635 862748774 927668028 66394207 954217169 238757672 506633272 457940811 918563806 226124442 590896281 906365606 995642050 723425514 878283944 351227467 915025480 802719859 979771050 285868881 550950938 691222055 836189188 819899617 842749776 863016556 941671015 818287775 842060002 796096996 873633517 81135389 511348494 320644887 365404236 850612527 982461597 193780244 887824445 482167040 852437903 240504338 984135514 148929204 598361539 378474533 829266333 225885825 705598678 682772766 728345842 82419227 313041390 373425137 744207964 432776526 785519357 558521660 666530980 341442146 612931632 176674656 180770439 813349568 965215051 735714185 743184719 433097615 729256380 109132872 221094236 36164270 83942363 935558465 972106533 949358382 998198187 286896395 800058945 591801327 745652604 115440028 471243505 603109798 983008996 66806208 924836207 938683646 979084179 12165482 95878759 537704660 690940178 536195473 598114632 247089333 904727576 233376492 687322494 54296695 933187728 825749875 933143101 270249171 485308302 465808793 503090487 645189335 941894845 942771661 980976207 364967417 445706912 591336008 873787506 929734381 980358134 826267526 914646196 80650401 791385098 966234833 998815644 3455952 903478469 642638477 850800783 865941424 896066085 925788336 972942338 351213820 462861702 643313478 997196523 169164867 187311032 147577920 627342317 918737808 949446037 664047429 813345894 187684236 389468857 56808996 300150078 448280634 697281803 837189989 913891587 435499260 685662715 762615435 915559335 364269288 745059936 376193125 861391132 122713638 435440696 620229925 987946176 68222841 457736831 687189699 996893005 657707290 829815082 508993178 755947071 14837231 238772870 702977017 900892370 827372926 847619589 331211352 420934581 593066750 848509555 803569301 927258057 957587472 991160430 666306999 867412847 750879746 905875906 549734133 575526114 322515047 348471552 112682507 490373171 180475643 381080798 951747589 987664763 348055028 790259529 512916407 549146309 630370873 729397994 62215529 181168894 606257706 714286092 622890307 639991749 264550126 408057864 167159901 698248542 376557990 414939741 962472133 985722865 958155560 991894041 999520440 999922139 43329442 404661732 714913109 884535701 60364637 533578714 723897427 979085801 188536029 750886389 717502926 825327774 778566668 946366639 911282826 980757229 62879377 883592589 141918062 705184897 599119765 843247827 141992615 608959774 634919243 657890805 574535588 698913169 228028711 557896170 356622064 882159524 644106386 888711588 344668554 845532166 976144163 986198281 203002245 776531193 127847481 620116131 777940129 798422375 307563355 397005044 104760568 367652991 358136996 410804316 945896061 986574543 575950101 635266996 820565040 935348976 291788614 677526129 605824148 738244594 844550916 885925535 824032617 944113931 392167642 761396770 323801870 950838010 163052156 497148225 161215076 879020327 103384586 160304619 313865944 350209701 42318915 831715163 121996656 243075752 858980281 882401094 247947212 432062858 420383023 462502348 20718350 405896839 226723480 390187022 346382247 741738559 321342413 638627351 919339975 933566238 688764724 973398398 53706455 477126490 456023601 514914447 556227133 866927032 121628240 212084107 465374192 546152706 73383151 366167255 601852522 960925635 370699390 417117361 514138712 801053739 690960219 693466583 703411435 831925218 887671618 932628288 823520269 859429137 48775913 298186623 923257211 925292442 875239634 891543931 583784843 904058382 291560421 530798335 256022960 350824354 402143046 511063548 984229172 991611851 261838476 737280942 138883365 204157880 939572402 939774929 139391783 330815865 56965550 298917661 134089772 346530643 542985359 559364339 271724339 981695378 409486685 595639210 743721475 953690454 394766559 911680938 650001582 947860512 271319984 954630393 750613086 959587195 855850411 936458328 798491140 938842923 601857358 916887351 794510724 904945433 838551249 902552384 796957047 968810629 213100819 283597128 995310822 998515472 451094101 536977884 993933603 995643209 267233098 553015469 734938361 784319707 229164170 862459450 357036005 872971386 408777190 812404150 865977186 923567125 926040334 987756569 171785339 321156231 68489569 261300711 186938835 878223996 156380545 489008978 109788677 221771688 326070680 868222529 768689620 775504899 142453431 948428176 20613270 138859127 266694232 647074738 255898854 784836742 947738880 967569511 181578800 617722710 883176135 971221507 256637492 262349163 395512020 484435803 454849935 689030057 878370178 987299136 604772224 679824446 802393000 961171085 193944261 872705839 118487432 130230250 992089924 999852379 14094016 891746383 811936597 904992824 771320273 812384956 993452838 994434765 882466408 954941911 157856446 885238464 404760446 432258618 245461140 740248643 401336214 416818120 254756032 590338416 133310724 840156921 579670476 825466973 717669703 783105946 314770806 827901085 302829655 830244954 219064624 499471111 657942512 809901770 228491749 969069749 612509295 715284357 843427643 847008905 17035285 756747097 218016652 595610538 303176231 953424411 829421884 837554165 101006882 514640307 310574907 391519230 619760850 919594102 350376864 894185719 793121185 938537289 67285680 785571873 547025687 930906706 148340419 445644328 22334182 862118769 36744604 271678287 38213709 410371886 166082543 616856206 51654726 642811989 463484958 549362999 442278719 978195483 744799913 916596455 743325285 866715177 464388278 681450749 84612949 648330076 904176266 926065373 782958837 894122460 698952770 964332027 753926797 773857193 893059783 981063562 879453114 899856505 271158433 750758191 469420983 753850222 679320484 842280262 902953523 984801028 64514860 781127552 336766148 669149332 728611993 858093694 591360532 937541407 22174577 504738703 45124432 995738775 741469339 894596723 517400195 772433332 177631903 540966813 992850353 996019652 722642191 733980047 600586983 744275007 845496357 924456587 540753068 876865001 644289073 711559294 759600789 765264083 987318266 990312474 667312747 757950142 29143630 840216006 544849346 614703280 330517102 414888396 533039735 921469473 376039061 895031496 609357590 611538753 685572525 963179335 974021591 977169978 817296076 982073996 587733636 607609184 346925846 959906835 306317955 512275067 772865336 995492640 415505267 564637141 8472947 795712559 798223772 885778430 610824897 683491713 159385597 915378753 604954170 991246169 526452830 662192628 937500265 942376530 557747017 867148175 109772789 989499528 702338003 810594557 648554221 658638647 83993259 494890690 351539347 803730578 902874269 959897012 608815996 756032917 482951572 701577058 230287031 332445289 28213902 554596885 245001743 818978361 553952038 602331218 296904773 935676304 886736691 910990465 391811364 837771241 127154867 541525280 854515274 940046331 913520588 977964898 915399424 975186526 242892513 492286828 730397909 898589584 603307019 921684090 541522855 587900199 267566914 780599784 357361476 894733769 303609513 682111855 564073345 664540501 146249499 936422439 323458192 338571521 625386829 818929415 995921109 998152504 541911294 625901197 700843033 968451705 928292438 967304113 992468593 999549160 529991225 773085054 568540627 905796332 365902016 857352459 828771857 835577388 353435994 967712635 940032286 953281627 251817806 910849813 284144228 791786122 758388719 871448963 514709653 529386592 876508493 940700445 236508065 635155503 228307237 779446727 186955257 700176917 254973681 987305412 526402981 813567973 677073433 809435936 486070993 903487352 74895109 876232484 588539881 960367481 581173828 638996626 778002594 855858827 501843632 564261816 703918376 724512569 174465683 474153601 751854669 797446523 472427995 564319067 414136441 957025614 684376299 851770294 141837064 169200178 582007048 935810897 906986126 941254385 755747112 830791663 92975421 364444392 485592071 859242306 225028136 582797648 672833368 772453296 960468240 994829821 32850388 821699940 75369904 526767279 101008735 905471131 291187729 665612366 805870764 857960457 150978061 971853383 879384697 944854033 613886257 927833226 300461911 313042962 852263454 992402728 389241078 755305156 653471851 952059847 97177049 957052073 148596080 636027192 232632705 600524527 240366504 572879619 666862254 854137309 718254813 985714369 987143602 999578969 799002647 952500708 163787735 283844444 129119644 482759260 19128026 827207927 275750507 819676357 333077710 744224141 157072806 409236071 70574157 334327217 677827635 816013851 890653055 982564455 586962267 962508489 597831454 960151820 599156602 722821254 261472438 436451882 386867239 445507280 55671877 397337088 667281828 804108334 993823393 996783435 946644513 966196933 113874531 516431235 545099442 612118820 228197328 905443963 901524087 951989865 265040214 807184062 332494997 694581761 244902885 995431626 810421757 852361621 973642538 997748127 484559245 977676817 538155573 793730177 148430720 996598524 511691285 725574820 657309482 731637897 572186585 917158462 870598930 874062496 834098685 913352654 298747898 371810946 290979999 348403261 281998384 336310364 120750686 538797333 781274526 871398031 536946925 619157892 311166137 966561879 254622618 282548871 514044817 964343145 150756571 905512920 846072367 901168338 66001086 305907411 129409382 861564617 836739238 842897444 18681139 833631983 298273571 923023785 888921832 934243186 891007793 907332639 960155194 977420964 823691347 836924993 890066916 978491097 150525552 909974201 436044589 543614511 439594804 685355852 923266532 963152718 798221204 854294560 693168591 922483369 336924790 711849668 233482609 559942126 831847034 975138927 243535063 715992074 215041237 407012154 279167477 425211324 184911394 885833074 779695507 845685597 694368369 711825409 302086336 447822477 96973143 759595105 266060997 679374520 873341904 908419293 25182438 755923163 129434063 208158867 667107434 982381390 92616869 620343739 813068001 956568949 211345871 593050240 730418031 899146140 768366479 781764875 327473087 734162109 927080242 982319751 641489121 743892847 621015371 981773430 732373215 862089970 262092839 566029814 599719764 761679821 651960157 730962012 779452081 975602527 477914860 511725088 190639648 870978218 832994850 856309498 916860716 987968133 814892367 964322871 874485089 951468670 784114587 820551459 826132350 997007626 750392494 980526748 980859507 992637137 714695475 759940864 798895417 962682506 711978308 933008407 746955861 920504493 311025281 464622797 174007890 970500850 263563589 459350627 270479012 603468260 526856967 937427724 679409780 951348123 918004002 977723156 639845879 857292992 434680470 743583780 804433122 967448761 934822045 950927019 520312493 618755371 822280517 892404747 636719750 933046589 585291420 959155989 430157527 594208538 818361430 838974167 938102974 980082064 540622270 566034868 331444065 346094173 863126253 895448415 955267608 996313202 691885267 705686250 833382529 959766896 461405697 697656488 656295532 969068557 587583910 926200340 786775589 806992349 813782897 900040053 86492512 629994402 340926065 675699483 353190017 769219785 146020917 594457199 758974913 788735168 428279894 710383254 354630153 916642083 873250260 883214253 674694016 781589754 420174591 519635287 211861921 708773888 510753307 937417040 321468741 429562697 894263117 899885231 648909463 878935453 54604641 784807916 953483726 975732824 486224182 938635003 685339079 841759107 347332581 379798168 348435508 809163524 645731487 681085465 213146325 406127597 820078845 845230531 342513294 598134785 411246417 541529784 196794631 307991194 894613271 964658710 187204317 237176566 365439427 548978807 61169541 519808000 845456796 958229707 811913320 966411555 877326428 888399116 880540965 957754225 778997357 797710533 564209932 936094778 127195020 935770372 474063372 871435065 337628849 704465820 913569195 941978791 609519259 651230862 564283100 874247891 969587707 987512438 747746980 764534174 859727204 947558395 469412685 508910299 632584306 762628766 114698858 684359277 808186987 834689949 247436366 399995387 626468731 635813995 914904256 958738925 861430374 932432083 470717384 830315603 905282591 980821738 832849058 904201303 145693854 723435986 458845798 534810752 243925524 914148090 103347471 927976390 35621099 823925736 990337388 994360425 997375385 999060624 898634357 900484752 955761826 982014942 638023123 839736526 99406004 695812873 464652702 677119714 944316377 985968264 77088968 598502809 809612731 940610900 274944917 316798939 989959293 993478594 205737030 559323599 553456847 757199912 405621365 939304719 782398584 793771571 840672905 875176481 402632096 945099531 567197979 790182321 653102148 736385053 517248294 850617570 304041488 781424692 743350894 898347434 256341215 441762318 7867776 716083915 225419350 380407441 898266419 923789121 15224713 831064219 86342074 972276446 68585900 337419290 87197004 770836859 223423360 387927805 578394828 833442153 544180072 659624423 174605194 931978763 1840135 187504713 681710840 707959880 611663331 775743572 33839770 912574804 728341801 756679485 781857218 890026586 971063064 978356940 212877370 891429773 251606038 415492405 256658241 489863006 70537125 861393415 56208402 438159035 503730955 968116450 644212549 727121833 289653641 772483362 778796940 856523410 488744479 660496058 881916059 957763352 815432038 836940037 209052557 988823518 943393914 948466118 108895824 530654353 819956202 890050798 737644709 881421546 303980186 439562165 268858780 834693795 641944635 823755609 552994907 868000075 72289483 483499501 951696493 957193390 615424076 734765917 740683906 760472760 522715039 538363194 71213086 347496041 945453576 958697698 953744071 957079961 807588847 825770061 95450140 594406022 638726085 878224036 190120361 750044467 600783667 767017798 10032409 259343397 91529246 384000881 228286735 714493364 916898978 972283617 372127158 407743149 200632522 366102943 459906693 811893369 648311442 984655288 956963833 983196805 950125435 959080001 352471108 495966482 10899477 852633942 457997975 845183231 692382360 735751232 18751938 792679310 85646832 222189471 858811811 940373202 292645741 423167591 453536657 671330325 801051273 988575505 716078527 807577504 507417858 996978806 562542369 979389720 8244844 204275136 784983204 851318261 237684034 290646418 488976287 636543819 759884847 875543641 114152212 361858435 894847140 919414360 362034862 518087975 729069704 926302434 410259430 926303938 11810947 674294645 319711670 508725230 910391234 972890508 547223783 918394309 601025308 915304431 294012829 919707963 471155779 496177895 524979903 919086199 173076497 845441399 83363009 226997547 794307641 878769946 476076587 739213218 916651085 974112723 881053902 902623170 541241964 950478411 509166947 829679098 144934727 242318590 269009303 651216700 174913150 449989282 176988743 522567645 451964771 586544386 226938352 328126117 634445353 668699819 455080831 503381728 571227323 681266868 890398872 958069658 435787263 674387132 794012245 873510426 865342802 937486940 547604065 928388413 696569928 759976692 239187652 414265466 530980347 866019968 770287279 841212069 571365466 619937117 428408860 806998102 888159355 964276723 886812964 919442941 211386485 732877583 359008201 765351726 953318015 969773312 97446000 986068309 612882570 627965735 397579167 708726350 660921071 975782811 895431726 919705232 391430861 846590472 845998543 898970168 231977098 608788648 275032533 901146209 170120380 856772942 295273489 317645706 476607924 513745667 720005340 882029859 645096567 783073227 34972217 205361848 746945921 969018754 60616717 682550945 828111520 924047361 737713161 851679605 292158373 730772909 156185066 823183797 396897525 876597153 622702242 815215734 878637158 999584871 215677440 695610758 60890006 71391550 906354864 938424434 779432958 819125309 993602256 996423923 628578200 649864070 588357121 660428339 184624852 922131237 371483873 465109271 166267132 260217260 176691296 734285627 135520771 503266188 311777308 374664366 603974296 693928373 993549074 997380855 62192907 85980950 743659801 812471628 544954384 829645205 263911928 410055093 737923766 745812652 524147907 947624439 240569294 635833056 978452989 999261631 706866367 817693867 752693472 857744360 533995040 756986649 58545311 841054572 767572647 853400450 201252290 860591547 398975827 844746278 508951794 996873425 107899354 736553896 299073939 851460731 707118622 801794673 442736239 746721103 786933221 966212516 67543548 280827404 989240875 998392502 961100207 998578928 804606176 806120128 279500917 383723174 125635591 232516012 46469084 348867488 3826521 958335969 481599197 805141128 865059104 968014575 321120297 981017905 381192169 644537859 412397967 724881461 109375230 622167248 81494007 238097536 209121571 888108676 260840224 952941956 366782827 401239623 968208502 990998403 833355073 903227503 972407303 988575132 328454923 556002420 747657381 976248519 415878876 896500507 610261781 683667156 422917566 557988518 967626027 972293221 256199369 257894595 781123680 852459653 377251687 989029487 57158058 126067289 144498022 828556033 803387688 826230478 483218578 792307739 231749609 934218959 481891531 910502321 725871228 989599663 92273337 815370131 784230485 889053088 996148145 999264558 892649820 901365887 221517067 903332079 592558410 671773656 818334795 839943472 693368509 709855504 366510680 816606387 16966150 623485240 155988384 608947497 429565270 560314043 272779319 755880849 221291898 275282217 225239717 737756441 202543180 707182235 580363466 732270644 542875444 782201407 529592462 902528693 440957885 467936967 521946839 888213245 148442155 829270880 639989603 996597720 10435352 747777392 33186555 753753202 258839779 421320171 341166286 836342389 145468742 805639386 692656236 802360493 937147866 999152862 248879116 381450464 606644390 990473631 936149244 989336448 218249789 317064685 774749265 942972684 627143955 931504973 397025772 855737222 77228878 238784319 773729056 825537631 805606477 993323552 767309906 893236112 401440513 624140055 987642541 991574069 66270204 820856366 308809407 350446997 298232812 658174410 483763978 855469374 238456536 425649773 497066869 786142111 600856787 798730448 442970985 838540335 234326166 312244957 652857746 999583075 491069051 819601876 244168969 394417904 104848229 522163327 557025596 833292223 2975452 102199842 881412041 967732453 701247980 956429583 918455701 985915373 961341339 997094445 820958235 961512380 485731393 835309071 690884652 807398147 598688512 886501739 683391768 986383672 617120254 723726994 974464786 989029116 877459209 909562534 362820295 866746280 991919046 999160987 709204819 732875854 865937114 993194847 359529008 807929673 983304983 993648313 926417424 958265162 758732003 841385926 959067346 965002998 103687211 142158345 262913701 480678774 725294568 955152282 689801438 902715994 983182830 990114151 138646813 242988081 377853181 903279352 431320258 591133256 533477673 830996611 302661533 610286284 498316450 822852298 911836554 980804773 547661031 996595519 460629188 672915068 91283542 106958586 437628189 559757163 161097505 507075698 629809908 855725934 974173726 991114723 217252496 909254672 291564107 327233125 651927068 849783347 349606637 563668637 844489041 886996739 805636187 999777319 110303438 776293893 1501213 270875293 282559746 430681728 490475006 636600506 185789232 365839288 165141063 943842967 646149191 695245889 910457809 925847778 819081245 949452796 956183421 985728779 869366967 996148705 219601711 748312244 616645908 999803520 844734578 857853696 844546874 886455431 145521906 260068060 513972840 960774392 708532357 896055244 453491185 984877925 717326183 977921404 205541738 825039405 960415623 966554194 312100635 682867861 288633140 529710766 454944614 686317664 787926466 819673790 232245553 993800871 166412149 915838014 959831930 980381765 727682569 799480875 302187710 476674909 390586161 844815230 903856798 920866845 96107280 899291326 819216560 853002281 668588402 833241781 63589465 920823988 769383346 937288324 821869724 831058602 249782334 761585819 671577686 720018720 350138055 942782634 105963471 739348921 973435776 982494667 246098180 645698833 594040039 999697059 556902579 715406700 985434249 995605089 209076574 348551025 633811575 694990204 575089417 899545031 471798664 979917685 336056159 606188137 519870327 533816793 363512833 807052310 426690103 590549830 755767192 887572872 202577723 529678864 240223616 357104559 540376693 655184637 404182015 923632141 282072747 432428524 540323701 852658260 97919041 647624343 913408717 917300342 905334493 978268807 872393515 982994872 143541494 678190265 137490599 518532743 932461342 989222011 338223303 356696619 739808582 830434505 807777989 990621139 249297743 503597905 626843188 931526105 954472527 966571546 873649015 926834001 577499676 644014145 55960165 904958025 799594528 971769243 67194007 743847161 876215502 884703149 949592857 988619658 473369095 749652629 349790539 807734389 677999185 697535096 197853214 612227868 77296897 567797622 448019252 551618257 559051481 944748937 640526492 651534856 455859115 523524383 626499809 938447142 496291109 772297136 368289217 388836599 910304170 994035963 608348473 901630173 556672377 960464148 650082609 652248786 774951106 944345801 863503317 937720763 721782822 725081594 449499684 942401667 947562502 972966096 436008172 572714371 209788743 766466594 415918887 446738712 957291755 971774999 756341798 833797013 497984938 626812695 511280319 622111842 85761084 671804698 340808562 803149883 517333993 762078623 223808442 929295522 175301998 261959774 814248404 955510743 682720993 816217474 92745160 569376753 173428255 916656485 159551618 355140429 118592629 224386476 513668977 964821547 163735926 898990776 508287637 788044686 268915772 776321551 849651357 958104848 856566205 949957436 492452890 880972419 5368754 939869822 414554351 587878169 756810467 989764308 98407737 286358713 608544742 784806804 777741927 890044917 913203933 963261678 318461908 884278739 658371977 850001073 100845721 141603537 450624838 562976319 749170800 984374360 93264002 786114443 525476135 796719457 994479430 995924992 219646833 424932914 978887078 979498787 82196352 742708514 621483590 792696889 301676187 880115857 300394511 817879936 458883188 763760939 307009192 671644090 242049738 720000485 673718460 920636900 968918641 997587188 610238667 858426705 47185827 987329808 804353277 941741695 581654539 752031063 51362517 638612331 410871195 703068286 398383620 956022842 970781078 976240710 882492692 895973198 119060776 513451069 606590276 885544156 452533247 575427813 624888567 882104747 591758676 714130109 126994151 637457507 962049322 966865898 158521634 597499863 219034142 761171476 18286942 690392703 164018350 387798422 327803707 769077710 498165797 818522306 285913388 711367329 458638437 470699435 528217044 565719352 988320702 989260921 473051530 741883996 635160333 760707681 949821326 960836828 535754749 735233193 123508943 173101955 480556964 838652284 116607029 759549398 539967367 748833122 482993143 790013810 36979955 805777248 301368696 572157521 130954615 639458371 769375941 953080741 434968367 526648511 6921844 475173790 417438817 834781099 482033765 732187222 167589859 465702731 774825812 996293466 127686687 151922938 853852904 905915835 960480984 987385002 530568956 694779552 112060125 146372702 482182989 681915156 581835609 781028322 52428080 254885998 299321510 361635889 8149739 256747292 4046637 83398014 566488828 815895587 252948998 770709414 30458999 395407922 115991999 931591960 358633522 766870571 493312785 994249378 918709562 982871486 925324556 950501195 176567238 813696915 806604260 891141444 201576069 849253698 804699983 810242545 297431692 765907649 606097866 836849367 587074037 850354840 583474362 631899224 173947866 905313639 490236464 760354753 841457350 869964412 461754776 646332653 974031918 981343961 979784584 981150381 43783007 751715449 775602048 978123915 252356077 499857821 503399757 542581478 997523067 999518224 545425997 733649436 887218088 920312427 870686925 986841427 103810094 360320215 504469248 519850419 406639895 720713348 392087103 724532807 229988606 847834730 384967902 822986710 694361136 781457145 482779833 810818737 607636572 982452091 680502076 866202397 977541787 993384795 792241754 977095638 571161584 720707500 434324307 701877230 28124916 526529314 781507247 928956458 569736237 850292638 92576829 870403247 490127994 637412289 899219342 931122993 737649458 802420865 832555028 871915636 848543922 852553988 722013877 796557715 746816027 755086564 684963848 873198736 652488415 851277042 76295684 329649161 57965353 762956811 897487141 939851017 883112837 941000972 767393154 980998181 421082953 720023187 609692205 822368509 779674803 857816470 602640792 683889591 163326750 951514426 986115193 996866688 636641753 689043885 281103591 413735936 763585792 832424832 92909788 438696129 967937905 984528340 745078773 840533283 165508322 685568572 174967716 280364785 187214136 236662324 844143363 927296310 573498810 733074497 576200529 939242829 951632498 975289690 989997464 998668699 638241381 804000109 272997160 843852426 615371819 904607736 433849269 592114071 251510733 557593995 880452120 973411263 735593047 752530582 875566500 909972156 636167568 707618757 253259475 802838958 215922446 523816566 37244158 305022726 733753923 829723482 703432437 856880448 68649880 244080528 478162703 579863814 100657063 110803334 155581784 555697436 318058033 979249192 336493688 469778422 777146272 970549086 582473848 740901587 798069685 858218312 183562843 660176636 844293209 857964688 80559853 442652805 66563009 940514518 957153019 978711564 868359700 911549463 26355619 402623036 1329916 134080289 220701222 317719236 489646150 530410448 76647287 842316795 735245713 868177766 178315603 897547110 450054153 914496460 157699050 572331826 566955297 868123389 591696115 781400214 554746830 947279921 757620697 954914758 811127257 887294175 944245133 946157772 18180424 931541706 331063107 835223493 607169441 661484319 640534353 727739155 322303952 781595677 782165093 896699765 830832431 953732014 61622488 862008541 987790362 996164345 971996603 991295952 452848307 554187707 248494428 951801365 919480105 940011187 878614768 939004467 241945401 301415648 769358116 891219628 415368056 803176089 355717475 418716291 13997998 418242965 938537504 965979778 33070185 572963525 201994889 462842393 777887479 885845289 629408367 712538551 592421458 835602898 571630197 779904669 349525252 848398344 593864531 690425029 181913965 817431046 433454185 878164943 873619111 880301874 821690711 848045244 373947868 692002381 104431214 350057014 539987651 780811633 592422541 659272084 88686174 277436233 970735696 996587953 46673865 720193039 652821719 888386728 171272874 942490423 891826439 901725092 631813526 952258867 694775850 717307720 229022330 545088932 127134833 859795015 155567309 615873494 165664171 269383548 831556317 920851802 142902505 907051661 252652465 774500609 399205961 550456661 32599275 503846532 446390953 633884267 151862417 583171666 557975817 614160644 765758428 805493427 120714147 198919262 90280071 839497056 236785773 583413859 308266363 459196399 987111999 994938764 825947596 846957844 918633216 947301189 537272947 846212918 519019498 840493136 157589241 949561653 787132043 919792494 152074956 429692076 984184129 994650392 435311968 759322429 535427457 640149557 257138340 777008244 532084160 963822163 425234945 930326482 840691750 976900938 639920608 753327740 79644322 952516822 819413088 900526467 515300219 968510110 790147313 925064241 592433226 938725670 601625836 974010137 751431035 909093208 806755457 974154252 529426132 863689629 975582677 987527165 300592994 756692100 751465446 877960398 451837091 743297482 210177076 488942288 361748360 774808995 46564766 545820422 865283076 868892556 327707997 449282573 621554662 641563195 84523202 97126124 35986874 671612950 919782329 943091808 1898893 758143413 963273453 980889984 985683795 997154408 288451960 424109805 118351918 185537951 591035982 758283309 184399283 923077717 285007530 862427561 501061044 788035212 918858515 992064887 504375544 582096593 872412087 927114228 851532056 894394122 997570796 998375456 84982441 165831497 27451497 865621428 655824942 762696793 750128479 836958335 835838901 865209276 381396300 564631884 456870529 910955501 135795711 624313260 37924324 516129438 600068542 603560533 16881442 708007968 155830003 780178771 152465907 212369724 656036054 819575850 990966137 996171122 11387219 651453504 810953119 926643480 715920266 895630728 989261705 991226498 195259394 608753117 910014639 955531730 604495762 741281182 316706206 663922886 489683493 674089783 962323378 965434402 694584549 852089821 946665201 960274428 872473400 993828958 715615438 937945227 432810801 874293426 154369624 212058483 327511098 644032764 234894512 258655961 80554262 455188741 389854727 395665182 199977136 254074448 146520045 879614778 383498996 929669173 765265203 838756715 119063862 692977015 40608096 679357914 563194484 652206548 226302527 816743258 584424994 629348686 789767183 883959137 848467272 985947226 416911054 892575269 312799553 482740968 367214355 731538107 428919182 746113572 560996567 623681312 504453509 787953665 751699460 857584559 489896245 513311654 821370158 858752426 667702821 788129975 474240735 606335495 441633433 642972255 972593322 990881600 638329639 668827594 608774036 720939357 997114491 997900253 666317572 868430224 41875268 763146962 555678792 760791135 93572697 607582239 411613633 623309293 483558486 884479371 691080918 920874942 222922768 958729647 977534256 988639595 138466454 259043223 483749212 918703856 460853083 466511377 539403038 797946566 299616613 406242549 694022594 985818202 794319752 828509539 990935334 991235750 1195864 880404450 929210823 949476331 692333032 707938053 183209197 194369516 320491780 621915258 626595004 941992059 937074105 950503786 578452058 689034884 123671582 293862544 639617309 676330951 10001907 94793044 891796428 998258808 570416613 862862559 125850568 708008597 507468340 923940956 420125237 489659476 666523608 904090025 992262430 994449653 765554849 939400172 424662917 823659410 886727728 934461703 448496832 738679670 54742719 720962746 930316728 951679456 816745750 982178103 751444126 808094764 369921104 896618509 825078539 860261759 6949903 423393717 937316527 993230100 998117988 998210938 755877659 917405043 882910357 919249023 349778790 514540908 155222098 230114875 329603992 565742456 193826939 868688174 995935669 998998174 134423509 937867701 691627082 875065973 787352619 918653481 677506004 816373990 964501580 985431901 530650791 856425266 681364900 750685789 824280425 902135090 400940350 539195825 617196599 864897775 127408485 547669771 203390822 804707318 177116077 950268789 537617771 909108578 704179585 825231859 208011035 370237411 563376756 647057570 914993654 932200648 662076438 736900317 942459231 949601310 103044572 535016248 301994191 341784266 450572010 883807413 681169682 681835347 173625218 771198271 985320512 997483219 5943007 552226147 919321441 980209117 922717741 946865999 200836226 462341071 810139336 910465521 886953222 947096345 85474817 579147678 820329691 966019411 522644867 720618548 573552290 854588120 413489426 825315209 167619392 598463207 733592644 793294176 66271621 140237047 271241148 857087720 524089197 531898344 669003203 946900248 107133908 519679873 800759847 850087624 196842152 490765048 456081623 735868315 416040516 448328130 272017006 920267954 103546435 326918062 977282136 978521663 337135320 864600624 614814003 958115680 629399819 922610435 866833037 992160437 193231180 388821707 931953240 959997064 514008976 829281145 620594701 823653635 650118592 753990124 19718513 282383129 927102088 989283905 350945921 649012585 3313951 213858092 827407075 870905862 257810215 381018283 479275634 759177123 763564162 874025361 626005019 841993096 834831658 974568404 290352863 565604503 260110449 640238504 820126319 884474065 167801292 390697496 469433779 523847359 223193975 463656590 934711792 946630184 282077276 545971595 301535812 823450104 359540863 664449889 401972365 641885381 83864017 370036296 41704489 881265974 229218731 936886673 826039462 884294108 617225060 948780766 242637054 373163342 761577249 852832935 227615523 257830254 728171771 850920744 757091263 875178881 351567629 960879594 222108959 298805722 363717057 602831042 465055949 540683858 753899664 904658672 416412258 523993284 995769376 997163841 52515971 998975761 710309284 833175087 872033391 952906547 472576739 640225956 77276113 529651942 657328471 986912206 482957307 561549874 237387508 501735999 916033947 968390324 6194233 468255301 87972076 805321225 578102566 914941779 908458277 995129828 95908563 538686535 801566089 898544263 133232605 628620181 884983097 947802354 322916546 514100942 332099219 952381861 186994616 681562726 924714868 966703736 682547177 683319334 254077873 449931846 813847550 879553309 680017040 971914314 639686058 816120751 791044573 853716589 706948290 918349383 882830600 956495713 382281299 704575340 696058600 723178203 728774414 743295966 440427135 766805495 283145493 952761397 371140744 641338027 964978002 986041805 61576877 584165244 286684552 327962992 598728087 962067044 673858411 804052412 330675734 383288019 518202010 786362020 661030579 792478404 707052840 792425593 504135030 731421835 314301331 726834160 502290881 677650685 195772281 842492422 503761266 605194285 410740214 776718912 970780676 987619107 285656524 898428252 875821137 915805843 825968356 902868527 103729378 787514344 208400713 345155590 655280492 851867129 511911904 669611232 378124141 776061152 707063852 919665680 920209870 988275127 20119927 729375076 545471951 922093570 659225564 909633989 870247314 942743264 89857422 873529710 27921298 921807382 782606245 958601771 207475986 908329131 850986622 982103620 900934777 979358733 396502974 649162477 396368808 870848847 273187791 847927880 773149712 952646076 544633229 766926937 681648358 945646888 524516159 624111571 692702461 958157345 960317325 983217449 80797177 470366973 754167536 981678510 969218363 993537551 253325780 829506961 161387266 793571106 550904180 684492033 677327083 831703272 623857474 852625492 979540961 998715591 874308931 918427515 622677987 985792513 754084736 949170735 41682622 773336036 917763764 966976207 870209274 963840703 898789874 928179884 152454120 528272462 737592520 746097108 806141193 930025292 125270353 964972249 749123989 791081162 245646675 761590193 350700507 867825686 672107628 998092593 290606763 303601192 170210324 857276085 630183977 826357478 582979408 771359283 439514028 572886674 920011668 933751335 552878344 761514555 690415292 764533374 263354143 306732190 521446646 898151284 13980460 608121512 922515878 945480778 227245395 506960921 764328627 789428951 366991871 550487092 862339692 999197792 863899922 922747477 71034506 948654799 452366491 600367114 880405138 987496738 298135723 515962248 663794204 832394474 412074745 593550801 458683854 629169426 411791541 950268505 237342482 242359418 154294766 518771867 836839329 927531130 762581925 917285490 106348201 427335609 144124819 920074877 76945846 980678487 130258454 176793673 463031500 823445711 126566530 283363321 551559422 930646206 84621451 616842316 278642281 975664840 504318486 677093204 819359833 869535421 867391244 882848119 279294794 299707197 284991341 891339029 731042422 894969795 648661015 703765289 614789684 932692302 328300880 490640975 205045348 504024831 987783057 999141652 183358185 972831430 988406426 991695961 302841165 819898234 935213239 978681032 810481901 989890291 720322993 947516623 235941438 893866653 505690968 526549501 811832660 981377598 169208021 825483085 783324435 935807883 900741090 992351141 223431875 893069281 839671129 909926827 812866835 863048956 503810699 626343878 25705301 99270094 399616307 478519504 674030623 700704254 511995543 591629322 349041745 943653313 553710396 983902065 699012064 956035563 411100810 557486740 669133535 949277012 975661906 999743938 295354672 417482675 927207191 968943489 247213650 304148382 65957923 417022461 934602137 945881009 103526593 168314724 330406693 579113495 365218745 617081074 623339012 843548882 703593850 741196364 968260160 969394990 650228128 667437048 784163054 829952153 234429454 537625540 377390635 717830394 572079291 656750218 615960118 789683943 477623072 813902011 987446391 988194290 305665876 943811600 908533573 972550736 646443301 957721054 294327158 440113150 947723877 959399865 353502386 769770873 832658783 922901463 702330694 710229862 321726365 821208624 241111461 942161022 621059390 747223702 648327757 720680328 967610509 997218117 34315032 433104185 869598570 930286404 674951472 928054272 623087481 673838713 894679952 938412207 508194430 666198437 608701846 689873284 604367437 912028659 967900710 989938210 52781058 677370551 288076271 462475053 525866958 964910776 845225912 877382734 260892080 363549620 123763061 315202758 566264594 686800019 221557956 366515866 314046836 848458971 33782121 418183654 558556571 871162210 407864787 526006009 509692606 619882337 976644197 982782607 696535263 968236266 721474841 788627141 404528494 482013973 802785458 849016648 678279218 974843005 235796153 322285401 23850263 155614347 584770187 959919681 864089992 917638532 780603571 944392290 142518736 844342690 819247763 842827994 891232501 900749413 330637727 601160447 212945881 538640131 895483872 926387420 846060009 908079221 226168408 560155138 557523087 652804276 95734043 540116131 678201729 966495000 324362524 796838243 34064218 306413965 769118804 951639094 456048858 684607605 855950202 979593714 688715678 852483488 67454353 152957579 174306580 904461061 316501655 621786299 368899297 809595948 607112866 786391166 516141837 551443293 960629659 983361222 416232699 665101726 455102424 927387590 604910409 887436469 469600067 832744502 969369119 990927215 938318818 939614201 987691071 995016662 282837104 568176565 970261066 993936404 534384263 585613280 461493969 929448538 537201990 598702251 987471252 994221804 414760573 530747671 396487146 632832352 95244839 117322470 622003535 677483002 998579497 999483070 842264192 996446682 92574396 369119465 286216143 658544291 201086322 762067780 767410157 925879894 547079172 678213051 238168702 457443203 25628850 153270334 723825360 864853783 378764379 962853171 621874444 692386480 559394596 966395169 708401129 834547478 834771588 926376153 641777373 691449356 497032843 896077178 645450400 984462171 472087460 621114447 356581058 859869882 216455945 815211402 734269549 978669498 254381983 705321869 960033064 971773002 83495214 202327658 927744675 997290537 63779645 202471302 201048816 825254590 932701886 956099158 908735557 938052615 413629371 682894711 23392503 163604012 58814946 319104591 101696845 337918021 565275045 839014309 680597338 898971136 115914870 746562130 886478776 932082907 241718868 689537968 864849407 955682944 799566858 809588700 833873155 960359882 286171488 301555602 933178479 984507858 319746623 706668221 263056371 312849280 967711972 974507373 123251345 543504305 996308619 997113312 285435575 681186292 288107153 610731792 438533123 768623470 499895619 791665085 904967249 920791008 233114721 281261879 1183669 19094895 724476914 868149018 393588742 763867562 860988012 992722964 233480407 323643104 194417611 776599465 871913237 978544392 586873187 659902499 718852626 871116126 430683824 494292910 522044218 593326095 830786660 980489792 947519253 954858224 146039907 274779092 112355541 462488005 518889616 922683267 237116913 316039487 226289203 913151153 273504997 441671646 123165336 693713160 163038389 471297276 836365527 973214120 714254690 727283163 724978977 817689203 412202452 717485537 818659737 895065682 27389711 852551639 459529133 618006922 252398085 401388458 165990803 521703134 390188948 970766821 209609389 731621044 755845782 962380840 598945650 706004162 911807365 942596472 905847681 978172170 45458980 402816407 844592073 929083111 425035433 952935472 558398807 741907240 173197833 906389228 937711137 979339250 84262650 348971001 660298917 750849094 162205989 484798157 135002166 478956289 906740753 916184288 113376490 668645657 677120701 684924082 725382657 960865660 935673473 951886878 891021367 939003494 762838919 802653369 361636524 614180389 996112491 997004027 746075180 903296315 427133666 765806403 66556792 974701139 780139441 814745674 99676000 776895964 100607375 522138344 768454915 798559438 988503870 990682412 69093997 789763869 934574863 982138006 219397100 913756693 287092327 694514271 971765255 998541259 157903686 528289905 450344464 451111071 434529520 483827639 107481840 194886228 305844933 388270048 982630095 991018071 531177401 767741375 335130228 708504527 36785547 538797869 479611041 485742331 80719115 418797682 638261320 808932026 585548471 602944188 56983350 507820301 189674063 456536657 62065326 811386210 111062832 305320228 237691306 572089928 421990264 516329306 562661562 616840688 195123757 748914662 829872278 946964662 97131114 226544000 553386491 607995578 399244833 585206165 237101474 511438256 423991951 853914935 946899838 993414549 530977372 886014185 100886104 360922511 36082021 549988322 368103161 746396266 842939151 969412015 374660510 644765418 491401868 874522103 3513733 206707189 972406578 978552265 388082396 807180092 915522405 919703347 34785185 618148898 785607232 981069049 291675363 960678730 447488281 665095837 243937011 688844840 313456799 766770998 983047635 990677566 15951961 545192907 273644498 743705190 511186317 513718026 945195638 962648420 278155269 971951300 232423324 421359577 470711612 656357173 605739802 738689694 313569292 366415468 729691745 970964352 293283202 443379231 530982103 663932573 423527828 839332656 994049874 995467083 719800177 944808033 230981149 838245885 223032103 812740315 49870968 252685006 175342171 741932560 35034957 583578529 80433195 785154080 549063235 701632718 92314343 219348419 840090466 873337025 214996198 403233795 415608177 561874050 70897522 326157022 808250198 820980453 934538904 982642827 47715895 449923633 565186930 656307205 220905531 945384736 953068070 983074797 822340749 887505612 167054804 487412166 457446537 478038959 962256697 996739350 809077131 898894083 378525572 975013402 896772926 997351866 517304970 787464617 871585222 939389130 605698126 983572651 884294195 989385685 187233112 955656194 835696955 985729861 867076692 952795803 790792223 906790645 88002079 202233671 237096717 565273498 860108001 962930405 642797075 785400030 559400220 732283606 87519897 718320792 514766271 710355752 890803250 986254544 472093714 588145190 389806297 586807113 670517870 904277066 266559793 270310509 217757710 465010954 457873051 897589924 999812732 999898721 147042636 666983167 398228631 619853467 963691809 977670884 48291332 225785121 282034203 603349430 197579671 707138659 56380665 404985898 265015618 718124536 120518612 226642480 454692242 913599087 569562347 896280933 253892168 976290594 970472750 978859454 385821804 471714053 489196906 989397939 207613850 444932997 66339307 599973085 792051022 952747418 16518434 566021621 72847924 861650459 371345258 940071223 837342779 902257515 364242097 428109963 30840894 411364518 33376115 241532319 532554767 641896887 86619066 137630410 242020087 515744594 205067196 466359225 244325703 965878575 253202542 629509754 374313433 585350545 176090411 527638907 126966168 492689885 345823492 455713697 809715169 836809858 229410759 360668005 856886747 970837308 920490051 926060998 748504919 809447337 835844058 906043858 32823879 710142656 686046502 736858972 735563110 968296323 722307231 955264212 182863968 626136494 364848836 420000221 551129505 987538033 326775914 335629981 26761768 840649532 613301431 916623876 825435542 903705154 943382834 958712310 262912404 888193563 367992920 685577116 967113876 986441703 819417948 896707153 642371977 957128826 674671321 728708209 249700453 640295572 215440181 540465878 761964369 770708132 87816527 917658372 367728836 408580814 601363681 853836521 165166150 765514284 689178810 880962404 773073933 928733926 965931138 970587706 751469278 828213175 708246920 958079240 729492899 780667466 100625347 359033807 991529356 995048859 496365682 512941102 527218916 625977989 134181391 759239432 874978381 945502382 119320630 792595615 582640250 927386779 1701978 250368319 314863052 933840566 280351394 635316093 835217400 846074018 579621107 984713063 603900111 625158840 390886347 656808609 875205165 891308232 909974966 920898499 681137906 949206780 61393163 416355551 152100842 903823257 748604509 786117395 500774459 721596654 294850831 962269093 584515152 596388333 552695029 592646332 44751231 965979101 820002200 881685909 567468965 674949554 479841287 755472960 436219545 726478469 121188512 186632532 547816056 841504641 498388823 554824064 443356887 489822469 678187002 734055325 425872177 888313168 173016703 985260420 499381028 886098394 760581552 764912890 68546438 249430490 854391395 920989764 39419580 259356651 962970753 967910332 498664477 518649646 995395131 999627970 495717496 502129958 909506213 939484699 982291002 992137557 167928077 281743198 16800664 854457163 610808775 813922130 693337619 992229856 513043676 922605287 870792137 918813733 954266689 995489708 505915551 909379030 271617639 470391890 949438552 968014081 104091582 508525745 323010213 583313126 58377736 726028602 821995027 917912327 968404921 971013954 815782099 843138464 603013239 603372752 942845798 945124940 749982904 797747059 463861382 607128192 848608058 952161581 100448614 815646023 663766333 710632327 246908326 280378100 522322299 894960440 205961168 696611177 801148919 922127609 645067176 975639873 443247204 477875658 301472747 817275175 665895182 719401218 440685702 554859250 948030769 992006663 926800771 998355798 499114255 808421530 564007606 860250500 939793862 962566279 596227483 706516650 567835267 891149415 518368178 618288309 462952272 600053233 369175539 490785117 269284417 386744984 514128528 752197729 496002166 760060527 893552597 985358180 496405211 756714567 220285595 765011685 936192345 998677722 958098195 975260494 938418977 971418365 236687130 305177112 151042607 639420813 505165050 526581684 645957726 909744568 810449216 851708932 304049219 836866042 466597287 770430125 379624498 466712564 39068227 827150656 623787903 801566304 122143685 695603262 897561699 931815074 516121503 764882880 734131699 933776469 287937072 330385634 13201003 183184187 900359018 938955014 30265057 998589552 454348486 979744704 400706035 651812721 64352484 937106052 52478564 616182805 918768076 990646908 477841580 561508893 881751757 972626691 638555459 752169763 198465502 315018967 83410454 165576855 921728261 964062989 291029458 579954089 601736865 818420592 400784440 960148125 15304475 534418229 488088016 896505850 502955705 976612075 213925032 308567603 141867928 681567402 902821315 939214681 504608101 835251465 924094433 999411592 512639081 691477077 773425288 873627873 44394273 623538279 34727769 455014196 930308602 977739839 932539814 963214525 865894327 929844918 304514312 947391208 612564962 685703655 48636634 253421953 234906546 250006865 326331858 554718139 757143654 795170830 489011758 679354101 757099448 889188756 313496522 357183006 618620545 668056474 631861270 924503447 340442115 911621531 30027910 683966919 710888471 911032850 119483615 200283138 777473973 815813908 994565248 999040169 96230828 874246108 442853426 874606793 220985221 343585829 158750658 512716362 591981101 784591734 380701073 657582212 516300840 753140957 580842773 774177745 757409499 819404870 229838888 999576658 802000433 992318381 629138003 835222219 316608151 790904368 157468429 728278389 608180256 926097328 717350929 825698447 979690758 981289353 33495158 610227225 394024585 671535317 354567656 514111672 322078248 957747690 531092313 557643333 231808669 566661265 180863660 881422352 15994216 899580004 56843874 755860439 618800861 756710154 612641353 747593296 765333195 836199679 995255359 999189380 102833437 730595604 903035491 920951101 949529648 982475644 711559154 851082902 668659648 862968501 596989938 650068079 90528679 901431091 650529245 792725945 300418703 605608423 610823395 652239528 793842526 864164556 721155371 946612108 944492203 959090464 320420868 396155493 678484970 769149523 719085895 936923321 102178497 521380297 446968013 541989208 617391672 869331429 709137080 898256043 714907946 888990879 155861251 852876948 527307055 699032617 93638189 428047500 951850576 977588675 714272229 963677397 592790241 882934933 54734757 715161353 456679654 816313834 128859199 384080133 857664758 960045384 236049080 503507950 183001813 382141867 34173053 781454122 673293787 689426775 311976622 564136643 237281326 521677491 73960690 914804301 37104716 690612696 404991238 948629270 185956804 863443666 707437657 747027520 197269999 262359016 914481386 927001028 445342061 467252791 410780733 447839051 417206410 736629953 58050277 601139181 565980050 734700895 623830776 961150719 407397603 777491883 27182571 296700491 791274038 833165221 61620036 103271525 138241209 922614742 72636593 459782118 971897579 979153355 792282339 899450873 430082522 827276213 150881047 261216507 725172008 989684308 825762414 957024229 294195038 356068581 40634631 419109544 483070535 992407657 501557527 928318957 525945360 851794978 650337501 767569449 282750057 676449784 272368365 643334235 346388938 920779826 224918710 322113229 169258141 772602460 158023876 682085953 733328 402774017 64344390 339403613 674478936 747035868 891306573 902932625 434076644 671017539 508871211 716562151 718072536 977819456 579821824 859886492 292392229 981370800 754552835 898798144 940183946 995545838 29483081 260799365 403235364 447535885 940007147 988000787 774586239 817720813 110509905 665751180 366414172 449942889 150049006 198458407 429043339 764550168 300798521 898388782 723936572 977893027 893926123 956059092 193580962 526323905 810144814 872351398 189566840 721583738 197814128 377997053 487578551 723103486 384895318 975988196 151499918 888824740 187047200 730818822 151142096 967181170 1620162 559736876 978110932 999826601 475257587 673189842 405127402 640409416 752775467 840491127 386264929 812664641 121778088 650785219 385537991 740387207 182085302 536826795 668377509 981834160 816023480 832708122 396421240 396663601 964682869 988231808 812188575 984960215 877063869 897396366 608401386 946590540 45281989 158295413 994163543 996078819 853369338 924525132 78303288 605170539 983634879 992241603 599158581 881171847 716183774 842592536 730390851 831282150 923565563 947966873 252592725 748205632 622369665 911241287 145395218 224477660 927448082 965278492 44220450 919856362 810324395 943823258 771001723 771623847 848576980 969307061 756533281 804092175 461658342 659480284 207236935 623369040 300724181 974483352 224216630 387263720 446404907 846605830 688262794 865735587 900472390 951591205 407318302 593087345 209909164 470871156 812718094 992617486 393145005 741137386 521440745 734619755 490658718 841143547 515070554 605215879 994527976 998479466 650953015 734981415 337882237 721732702 606078676 983535956 838291856 988750623 593643055 636707561 790452537 963438918 285370792 711748297 118197299 831245424 190716922 452567195 42756236 544456373 481903320 529531048 338394238 853673938 854463714 979375147 332219815 498277665 237166274 926040391 954740744 963784397 848264370 869112818 362092518 994918542 949955307 974624390 252912766 483097987 551692542 851502653 488764069 576452541 590176041 742696047 18670764 841512462 843610003 857437302 619996589 861561859 602103727 733371826 336625284 338413403 110052724 858572572 619997476 886144758 203368897 996523975 402061567 877559927 183580607 659387867 794977973 952347696 256950297 481556848 204558912 442190059 548943949 963733130 238632825 933871399 983692958 993838034 291412591 739243289 530085525 623517657 489599612 971510415 662472780 966173049 356700321 904951799 301743659 468967473 602868727 612249516 693633229 880236466 665575458 740967836 12030993 67094479 316241459 351906074 297707450 921749506 519464706 938878558 447342858 796215165 77138113 629725299 428931387 915647042 819463001 888178983 321778228 979499246 187970473 267821678 660844604 744865870 901625626 988576213 575881250 733282191 839575361 848673734 978936585 986270545 419077115 817287827 470790726 732233604 889986606 914486545 451958070 499458189 212585669 626839603 504497481 534015483 9225911 589857430 46626412 981171653 493344240 972095173 414819692 908534188 877359558 913519845 77770291 307338874 228429885 397724709 281934294 541005321 673278716 816249278 407829284 756041920 536067833 809676622 357716405 460845181 610597198 961100666 23208036 943346752 524351361 992129671 5862460 593961583 328795056 530260583 650605320 941237443 306897565 863439632 479358993 968632796 815523044 973543282 126468690 704360635 215458846 865133521 966576456 977920897 458737579 951529307 157790309 547951542 42954807 247369956 463467798 676306594 555873449 920258626 883179901 891177709 6904506 247825285 631851188 724869511 437398652 980626063 969309881 983213319 845313589 850933137 78350892 734444063 659569478 794295538 861077706 998146160 584567087 588952105 928122680 976386580 103151552 209974133 465451850 907153148 657041336 988886330 578985404 612555583 426925736 888086798 327906922 406562813 773213042 783109219 176206170 775836826 808881389 821567839 86273811 497942510 649048019 660025034 765582162 822752176 891916742 912277041 555379519 658130014 916713258 944023735 215656764 520129616 663970391 805995630 800439795 852485366 273142071 944646460 998737351 999980492 506555866 827384675 381875954 505636419 968060461 969605657 217565950 804016266 684842071 756848398 285490938 633714610 596006866 618432415 652806544 845547763 699275234 985834372 577497089 694811812 501065086 605331916 798187817 825779746 971303674 990359233 873613995 877418053 95302308 825701046 947072721 982255476 396182790 632702772 672601590 858506974 789538828 912622485 20818484 84696575 822045562 826725174 778616252 991794159 715845252 922811967 217830983 837833403 554574517 735621055 496739380 619815853 887167168 974035528 518463903 795846786 453482862 743331860 477446126 880885511 449839162 568747343 559061565 989246881 32210690 849763344 827914527 980740977 421403428 999579787 627664277 972949214 273422136 877205078 83045293 833334239 55913392 565395358 75037039 604664600 670469889 898004431 713777532 929218674 640693341 909737409 56877026 662505555 498757942 986064808 889664128 893371848 492700746 974860872 151040023 741455631 523674555 735579900 56045662 294226861 103915063 162876407 457212392 521330731 87782833 869874150 172990288 914411209 689020394 860137958 176712236 349023179 729369209 922357189 576755087 636315130 962125085 974110278 701674226 859070780 181311480 774440138 308089009 984801048 466179896 601467194 489911938 531750788 859017283 957783606 946902705 982310842 477550663 885419700 284876635 337267583 148702776 422653658 932956067 963283054 326780383 897432163 820110019 855536054 158217290 631443915 500035386 949872983 391494405 895475560 437212190 816282787 597923302 942692820 608874238 627015076 964512434 968408900 988743973 991453432 612419021 739425695 777833000 876481698 803667102 894662358 595038662 964760038 22298399 894171405 940079026 959982371 925017232 958612275 875907377 986488786 544709229 749777921 369209203 381284753 416282877 452015501 268328595 990993099 858293309 932699691 757543906 832945672 813936303 861489791 625233171 826357026 729166127 878648142 981361647 985749406 430993274 902819039 577557134 779386679 236931118 451157870 726747756 980913226 210486605 368078344 225754131 827226584 822882279 845596232 607066238 943417279 516444500 990582000 593213818 981469766 472254597 515227974 8405746 487392764 399534071 542359225 81891666 990531596 731909377 998932987 138017407 688328682 704236602 860436227 417955295 661871917 147929176 317625912 740660494 767623337 114453772 660315131 968723071 977488017 970623281 982632385 301260631 408408019 730015875 875712818 615497402 870310478 782797572 898172220 135891617 550729463 521384101 619309359 836360596 844506622 440080471 475857365 100535611 205015821 464616195 530837806 910654067 995185399 717670426 718400580 78768617 364533561 33612568 177380737 408855447 858097969 178133674 966190817 405354977 601538947 185300655 421420354 472528208 712890810 658343823 992944614 840636854 860423907 133831630 293537228 735457268 811068330 161148040 484303519 235242893 593459764 838477273 978287984 809118906 856972093 769963124 934451014 103823362 968618282 555958127 581006154 617458448 999228120 444127239 522162972 559531856 585855470 159101870 219774732 413165030 612350963 457976222 898437296 972878282 976633210 635289273 897015551 877508137 984886225 647551242 950281146 363168813 415717960 834529048 980602304 407543379 682537278 919896467 993361639 225521615 439545341 797546507 938520832 523119179 954581729 934227902 978173115 827550136 917188505 116612452 661590652 635737277 743974991 18625477 842632302 676725403 824612562 553360173 769761101 712262609 807164044 276367820 794845710 949371585 950033491 121446682 795792960 446132763 612079355 655355596 796124619 625667636 665804086 819696591 962144996 688387534 935221862 660354455 932728119 381575725 874719718 77367580 348447940 558871383 759712642 541799267 617034304 899805812 948809646 151097650 633285354 207890075 304366846 979430411 993191188 21870602 923493592 899237005 998753633 354871521 622735172 339657461 518110208 399916880 876865650 680781465 986702291 274583138 839231685 929420687 998390411 534620245 576726666 679588042 690424574 733171296 966875686 348564504 397070644 576873749 967891466 535140191 910514840 634526974 883510414 695854412 806172153 314328681 347842093 900697945 999968797 1771893 43376431 63165838 77818320 49150170 707613461 855598243 908051426 356931075 385496638 993272276 998898020 817815507 910508603 16197226 930893235 430383941 757098499 473574803 907183473 103750806 888240381 977801183 985620324 314380743 624539859 277610791 670711901 165121282 822633474 388695091 485049655 169101915 794631775 795008282 996609249 182992930 990159583 696558451 893365888 368247186 972764358 876690598 937832649 216428914 744958691 708962295 893403678 689312126 835898591 480029713 998935391 209003915 952498791 306930978 781164519 339870913 899130583 247880693 380485409 168342390 583497426 834484391 902177262 881235368 971037658 401597914 592737570 130198982 455626536 626087738 646239356 423620659 879001124 307726297 906896889 670090394 710593329 84524614 632038131 484188978 713587689 874991701 943024265 545744358 835210689 365961570 575238815 558640889 754650686 716872072 829643891 637166487 697250584 72356627 571085663 172503468 284801943 190786582 511036067 955820957 970466642 104075954 577113291 698546280 777041695 888630517 954065914 653183076 765301519 305303340 346284143 104245592 125843697 825410177 956443119 913667131 979997027 557481531 976094810 741073016 879421428 415635443 809701575 698517499 963932956 257191665 798297812 712640793 929400180 451232673 897782414 813867980 870656493 990605446 996214351 678494338 707394198 599727582 626447237 840221242 878287693 616380149 767751133 417587078 473886354 463575935 797304074 63243769 317944972 387849264 708488741 125323470 777253000 750552570 939778932 506271181 863119163 70405630 174318578 436421432 500201438 852031557 858695978 842739552 911561501 265979313 929277783 605667873 694829361 727159741 923032500 667855844 673391466 38767994 789061988 20214699 974682187 491198218 772973483 934804230 984310799 338253635 766116287 438297616 908904417 972081516 996112006 501192694 792375902 721737981 808389922 513953949 642924269 455662201 625330739 196627560 670575645 67054115 396791607 128154049 515645109 208917285 941303037 797691989 947341938 814435030 877586557 650751367 985823057 942174262 999889672 775900380 809522679 667157448 880136697 621185674 632428884 665478539 985763639 494095405 719638306 618934231 726989672 642184852 814801881 768789447 985728902 135601819 683316574 995532633 996606547 961671162 963961050 932124134 982367810 915959331 952462834 874190428 885130366 516769444 894381438 757870758 853053638 378952522 523617976 799847946 889995749 351275959 626093031 192135421 299669263 322912213 630653488 552909803 631927771 461766124 962928840 796606543 962418579 439891474 864925454 257155892 286124231 679071833 952616935 989794181 993565285 602616964 676341357 797082786 950400990 105512508 765277857 153926498 633542519 278119124 777935277 626633736 654102077 820819847 907005895 288658075 751253854 273732702 420623736 205213530 283485523 960811132 980299287 629093410 861194511 682956843 801479618 247116619 996999827 934059108 982002865 120711747 485325289 774738433 877222991 104587008 179964664 988699762 994608311 952510633 990661575 133493035 140440490 194071459 698071440 417692771 739317162 704656111 729652039 417669515 852082843 567310536 748785136 600853517 747432177 459334559 722015297 901086811 945295709 95676966 531850402 175388818 788596479 175005473 543646633 650950734 960614257 316905895 406818041 764689870 913169725 175961884 800711173 51777549 179713764 824295813 825583947 148610566 420284921 222626704 224416066 873582804 991423671 320557740 854913603 190945141 898561524 267180666 975683957 446356686 916340488 791704454 874863700 451248312 727661044 127196850 499492381 592674212 902198415 822577880 912604878 608943066 724074793 461063199 556647460 318565510 639087422 387323716 554431743 657466566 806075491 833801294 947315893 353732044 377408076 576918195 869254930 449432817 917050866 220353416 827700222 948463590 957299813 452038929 633701749 482915377 782406492 618579856 672469290 188449503 967830262 486937164 540278566 948448679 957607132 127395993 976905694 806387498 922357116 361259625 740356993 651505403 684193406 945411683 992143286 61083868 685287124 360629298 603268112 899512820 937045169 818957927 926161768 32322190 884587748 203731267 751049615 998762345 999977049 49974371 715542451 166054556 487021051 229679985 568717880 124758757 568203503 350888586 423937505 118636205 258208171 91015082 143208338 368174941 410842040 518007266 986099054 647005775 877835993 812552513 917807884 125274253 615982569 909560732 961192257 177928674 394633455 53154051 150589731 790739700 975341225 943745378 959991601 377491231 417518786 978610085 985104522 865606680 867919054 660585203 888876177 193994090 855515054 660608649 846708788 857557096 991947690 779483617 923371117 271998728 615032172 531535386 720152670 804908185 840272474 911976942 964829990 125844513 653012580 476839427 953177374 741783939 745276298 776200959 816103198 812622658 919203743 514582970 690584757 341651236 598583316 592812620 725400647 80456597 676051793 6978765 508280567 448101146 638481730 487665870 740207778 640925994 879770712 804573707 910961039 516374621 907427917 546628405 587540807 774751301 916777824 984001583 996903671 132404264 879068302 537016596 675865343 375441547 719863032 996562331 997105911 796474024 930556609 167573785 905512819 811959309 840539205 103398716 318232725 393385070 752995471 357425415 490527148 601565932 859632200 630026636 904187504 359942006 731640381 911953951 985834559 594395558 706291165 911018320 918042872 877085205 919266707 994327697 996044201 748527127 942428079 317841774 556737095 708547844 830143289 670004949 787338186 306498217 751294275 768097177 775392996 531519364 975578571 902154876 958677208 729844693 772745234 534133875 689487998 525361563 527577921 89621620 337125195 708780240 750757342 225734212 989222045 283501884 724800569 653834308 667514340 171314387 205117410 996525335 997576587 769023053 958523857 40021685 536299605 883010079 934285588 826114908 843554472 906649600 950809771 289526347 853212235 736629453 877331368 62054800 530343579 838658591 999885728 302377256 943187693 662991699 727396174 622901655 982518606 784493503 917178106 259640256 503706308 220376872 634683788 70707410 333197367 764486610 948081659 875348040 916969923 936772302 962593753 380204494 971802645 745020748 870320223 155726009 722441634 221571479 397409756 822545043 918876939 200147029 741876413 25285691 445082289 104692602 183757961 322547722 464004881 301761597 669742128 78365923 335683919 975552796 998604926 629025063 894131432 379812997 497567033 836870348 965973069 739505667 882699203 727694582 964421902 59178024 366949065 794303796 974119893 748165430 808119381 647571463 969361451 793273200 868802620 88376802 717417834 618561145 949965665 485704548 951831487 701641858 737378132 20086035 867812424 803340973 875535538 539273132 692361961 298613531 767958345 86883156 797273681 879141542 929900886 132642359 377811689 589206489 824085400 233451433 686680998 467433670 819214932 141887551 658444105 966510429 971298874 791291451 870805459 428101535 443937639 988265800 990927437 119120827 697839106 817326217 894155850 957141929 989406274 823294958 946526784 396633922 879333945 394140168 632056454 859040198 905119849 87706058 569204950 620059922 639308298 564895308 624251564 573767591 804545068 144766741 813360366 745270088 853660953 403527372 778493112 720567414 876228749 541374382 872700705 116142029 225526831 350798588 696351313 35453761 737058203 577948015 711680121 448928822 493451172 880570657 917353249 471197197 693896443 874118831 902817251 993779114 999704144 417110188 881174306 620452936 850965192 345105774 610775633 819758132 948848074 430466755 669479105 143798760 205266624 950716098 984300029 538839453 939143317 793411528 931207501 88527606 648798128 263307987 954926675 797073834 918013145 380248765 597842712 227549812 466227952 425231267 809056050 493122135 988884293 819220868 937782110 377073964 984975682 85219656 393505629 195887332 910732562 850191051 956856258 957121089 998413003 398557048 623208256 674463270 901244358 197347510 832774226 89499615 430548367 877774616 966668670 222826577 826036909 225738550 806342101 824514028 959779534 498997157 999787452 504890676 750977918 507607128 591466508 720423245 966628299 351465723 948704948 846044118 923836934 482476624 867052413 505211212 830279183 108006463 682050368 358705922 920360971 81727692 756569372 168044006 995781412 297022664 472504325 406781821 671762014 594284976 856369940 52289365 461622566 471377321 714249837 150895005 900741887 590458843 604567709 227382493 735624083 679969102 925397425 745371178 827265578 223326715 521322157 339661107 723607616 615816137 708456485 394635638 721517929 252144599 674320177 230654742 902281704 169090107 550179258 9838452 781433620 325823329 659134408 63227073 155789006 895682196 999216688 90423378 177065132 403533462 985347386 600214387 671721142 499447050 722062830 210842622 372032992 760785622 932940955 752052024 937282045 874063846 890732090 471367678 619245624 769534854 815994779 979546082 983195602 960351861 984368331 727381485 994385771 40047589 43679397 791807534 855584782 164611269 547116488 33034566 487607605 315612753 328569094 622525516 764719735 268304630 310077393 790288135 840833959 484026585 770909242 416632623 773584876 482896896 632524264 576073776 956022476 447541339 937231979 890028824 938254295 327252591 426729500 537030875 619950947 713949754 862751704 554622474 755396275 585184318 685443381 744878619 746285027 267095269 464324334 858952441 887250250 946697059 948524826 271753801 660992881 817447158 987873595 625634792 762709468 20857051 751390558 924197459 945561315 563436775 574003332 502568196 588062816 64362777 529640225 966933925 989711597 298002089 619724037 587691914 988894637 745864786 936883286 90134092 107783152 665817319 683969934 356759045 434067945 655032422 756775209 199570989 674632077 342378696 521248978 408743852 662250210 778817530 857140337 91362231 479878584 346336135 563642851 945664662 996809634 43388993 706332591 54273552 587812284 311312453 489364760 956368754 998569601 16015520 825524404 525918121 908870031 399365064 934348237 714783850 802549327 752189432 832850296 932110378 951422038 768412629 916678549 387654931 802529658 440666099 629055218 798535116 909842337 691745432 824309542 377925931 730025107 690541080 996935302 305205818 672774807 94001584 636470774 829489479 937020310 476227031 592446451 913243581 961601363 660824483 997478801 871039082 894733893 380304789 883294101 485962567 999328094 800473658 950264267 139563955 701308269 923727183 975939086 947766003 983164227 786464122 856501105 97768799 957720363 449897217 624660737 656129622 714663636 342927477 343642274 779160026 991282041 353663953 954046926 760288159 854952414 952205277 969429031 32692742 507510982 12540884 652371951 182039345 335377602 193416232 301738242 831788506 853192135 959117287 964244505 796792393 939917621 977916576 998090853 318929324 839256010 335100563 365643492 135643196 524527225 930558895 992914320 539191225 577770903 424618294 781715080 305976665 632793156 631208831 841292561 64432934 631038751 739412411 766430593 81087104 414809779 193201784 647275276 326865520 999913761 411052721 870035675 44862692 98715538 24605020 133709199 601672346 638224235 149920948 252137720 728542589 782154786 51755553 710978086 420866097 935860735 968811173 976287431 679052497 693756335 949837532 963748986 595894244 617079346 892813388 908744571 417373029 445525075 417539613 729520731 444129951 752572196 319937462 550201695 710788160 889736093 235726667 790019613 540374717 766726104 788725726 990155702 87235152 296827138 819212051 969111848 745861882 808049630 110037453 569160679 423697506 485664683 304629799 442191393 999514650 999653068 759177101 821994648 40815553 211899270 651828848 820072593 226402182 678360326 391822116 832585729 916066451 994378064 544128980 880685088 770165532 898547048 897213732 911721401 794143679 851073780 905178535 961676654 981444054 986115224 751840600 944675697 362052993 485384634 118395140 616532737 489721721 678615325 113848215 256912510 993758140 998613195 410705390 560114954 784719455 969992215 662310623 778728383 4820442 523880653 735401559 915344528 743797118 903665192 414300318 568895592 329810996 772968904 670350740 730938867 334091577 502817672 505932820 570741165 134909653 686559155 794617734 961081832 702434305 772212984 751126532 755592522 732146086 862669831 863265082 940134580 767514537 904999658 836030349 845966499 45293554 496839201 402970711 479707231 417772108 537602687 751594479 758454726 575638766 825059127 166903131 563018633 498967001 743551919 711776018 919747532 828117891 926679054 24540514 458825844 346391998 483679197 735454125 920430270 118286795 542371726 579338854 580650117 98847078 769708021 569566921 571941755 774101111 789619925 495014021 836324383 329168836 365740878 524820487 534642186 203416098 256094919 856915374 953695975 506175803 903537519 958814673 983449664 161535391 461605840 432408618 752764606 597711811 791383042 865245760 920654038 332426802 507521505 478033108 599610371 361868931 736869723 205457156 556039257 315325186 604911586 612249365 675361163 662164322 958285407 223344607 722991429 446494491 496078530 722380248 996497416 155559023 827951255 321021975 544189751 585237187 947756702 954558277 973328975 923216764 967924008 780257956 874958895 229617619 889144835 284499280 390545116 971648198 975589748 321035169 571542573 421090297 888001438 310266380 808698541 784421916 911069304 631108149 921539951 296386000 361220693 396092939 911615394 405717116 739439277 791139922 861224299 979304158 996422684 787657442 864996215 92589326 598559955 361989244 939622096 807157689 903763322 412543578 888114693 266375036 732822332 124693337 488703958 236408136 696128482 739762765 960556454 458197230 569831332 652934493 806601906 906562820 952729624 716556760 852283058 544008543 648743642 37774937 725509061 29396335 57902032 620868480 792599616 374927984 572813068 773873887 860018982 8844710 991641489 482979797 846361059 626781913 974416524 534225176 803031940 694713608 889532206 158736844 331677666 922537382 970438960 518171659 659051372 705698187 900274662 657238445 850718833 465707574 772826727 805744807 948046120 166346859 810547069 569141630 757210200 37260006 428651379 248552415 547089120 915038756 983117338 761659750 993750296 69280891 713203750 126482128 311236273 309254431 652969786 747620986 801147659 295805672 737296437 369780852 641301615 681978452 721740922 150655279 485872754 923931763 987767929 795575161 862683925 563955599 596925334 921651709 923311615 281900146 543928474 441236688 528332408 461846729 885449996 214490938 436538987 850322812 986006886 479193086 986648696 683842329 823074371 86580743 302569895 126488572 400108169 430323064 595200295 696596046 812712751 161107085 872356406 802072022 993675380 667662985 954768683 457973824 889601497 227642349 580272718 755803186 771674710 405781755 638348749 135996103 448454051 6753995 692332909 836331614 954548570 221452932 770610223 123528531 440250991 522403639 856697157 536555690 793841342 574842488 632300621 788671786 911761243 604662458 896423670 719338026 747991924 944589491 959728595 288543174 604967883 186194271 317082476 604894889 660804868 486385150 956245468 763661477 858577078 316249542 582557675 531650090 823546163 964617330 974544724 74852426 938274092 322041932 700004718 305585813 388757159 367333045 967397265 3861661 454627927 9064097 569139454 988817019 993228733 607266620 685586463 711904887 931357525 57613871 235220949 547696922 927344980 653324755 817756053 573787523 746414792 775015393 844536794 258214066 390654213 635127750 850438424 919811369 945470321 31364585 272153601 256488091 439199406 456609887 918766748 307703400 918455588 141549522 287632433 868507371 907814426 796630079 973569681 386150959 665457111 322321403 443104203 984568653 984797576 611824393 701395838 865712186 959083575 450755492 477317901 878496127 948659521 346906365 566037880 787946995 823911386 41175586 175026900 934003927 990450954 604219599 948059935 962862123 965072605 123887032 929885966 373984423 967219694 908546456 968477180 777680572 931377462 755580934 960235782 437210022 762951225 881652102 969661866 28734861 117610098 274999082 865284257 751140487 777213151 618354822 651667514 859389749 960217329 79063997 542350445 394436282 447049932 80196279 796920391 688679848 799528988 223390646 463031040 573465859 765149286 433489044 641214383 376675997 944082830 44742761 477654492 827978004 947241365 649108361 979429268 165186504 586782199 503551907 586609403 868474135 893506788 473114088 963280306 250389088 405082028 955611808 980242309 628118262 923495250 429381723 873306312 519010556 840293068 296490039 402211166 626453209 818873676 176588220 429563696 849023109 955555139 354157805 640566665 2454209 463707906 351753162 592443406 425621255 627807266 222127612 237315034 911068082 946049969 575596100 819206709 39099432 991580568 392114203 687138267 761510692 997133716 767614194 979319955 653207932 817035499 531245236 619747978 115262772 405350841 607077608 991274162 398629907 575204595 496562389 853411679 16579120 55098858 636649174 977416748 974726023 993800351 107238019 714257203 497069055 590715100 111639126 209453164 87412480 457223014 995828527 997951063 444967218 829385232 408621904 594978078 582549804 966610786 841958328 973748992 495763084 522577294 97956061 371364492 660746688 946527690 698476501 979568902 730022057 880626510 853768016 896160895 494017776 561180123 646253899 936030337 586138064 962240093 80664740 935598110 536719144 756405893 497445417 742852899 637340596 873225656 18478874 492226108 204381702 633894573 915115318 935839320 668992215 696194854 628836259 792936983 34345261 39083579 107965419 843171430 856611296 977454391 761018371 927491470 373985988 690122336 716804903 992762847 307111014 868637833 639836625 790914001 448510647 853074198 851273719 899265868 914444589 941133090 953741875 960043156 849472197 953205863 258127625 367418265 84388563 958774332 314030647 385891722 551347647 651696669 7959106 357043447 668204306 731592007 672128460 845890788 475162390 947783041 933065972 997468250 387246791 558274253 637107823 667179717 656123165 778514156 643109461 755371206 540772152 835067563 963749275 967116320 682734697 829003347 170412276 270423730 426214307 899293499 277823273 440558596 121336189 630606034 346575240 921696662 725769287 816346845 646002656 998800158 256347690 537800322 594879762 972899354 820739408 886858525 182899555 795789538 424852919 828231962 586508439 669490532 870728964 930251135 187949095 831492523 713435031 806625725 648489286 779729835 205048745 604441029 404623695 966951439 430938819 917214963 907999343 926369006 567768882 755623564 478153500 898290150 504649717 860591279 618688457 732227568 465205980 879458963 833412302 880710864 968628259 969723413 72362624 413833903 552801154 638321958 913382097 947399524 335710020 908801081 145940925 812573291 985640943 990640674 660994423 993989718 951973499 952819009 298221451 481942531 703655692 792279039 874575554 898981441 441619184 667250229 213750874 594672874 519248420 770419912 930957730 972566836 11450126 376771260 349677748 456895655 112435381 668193497 765375643 781238527 213115975 873809045 608080732 819062166 557585545 761319697 604639705 964299308 400196031 709913265 592273608 686635118 494060662 504327526 862591834 864512299 177837619 900033797 854290377 970825565 485923717 745529867 364430534 662700216 542552540 596503248 53508830 379022369 644178512 829221304 156396760 323123218 917449044 925543965 525074044 559875720 867523559 995939910 446636392 627069726 528249848 697919514 720275114 796431207 294700817 580806441 828087251 975366387 719224221 942645215 656255887 822959509 638115161 660897655 389028771 574489783 703876942 822378404 346184247 693006621 84733249 476269665 477291820 796368751 12905837 324005885 722821331 807897012 976770699 999288580 22641057 581693163 696956425 904142091 239758629 882633357 644589738 800688935 32840653 525670240 674017532 936284319 287678896 319172784 716102773 823405520 572979072 960169877 566134702 750927799 601733996 717201716 330835049 333455611 603443571 854844690 962111009 991040607 339184052 441005708 777665918 941716664 424737835 805231469 231172878 264250379 276264578 599767413 289517182 911080222 56605937 223675260 405294517 851745164 446323170 958711180 844232788 883720721 384230576 446614833 450953771 679148886 228855962 816957781 332088275 525237782 143860635 402315435 166891071 876174020 745591750 988723212 41959299 445601475 357607480 446547078 447317218 804980548 791650716 820354360 738092687 768699517 82344916 847506521 846892312 852996095 775363569 991646652 515441817 574305296 339350511 874575486 904355653 985870756 296452316 925417385 144776031 623992217 341319683 702476068 659236088 731909632 599659286 833148256 258651022 787904718 348203423 582631310 855808589 960709229 946663341 979326712 131154790 354383699 423516953 815372672 759631314 972739834 143491061 943657823 725940312 945633257 267746174 810414702 626107526 897720370 807259931 809408784 135711304 206268348 675804613 755932617 874294773 876094660 482805621 519195300 548217924 869304936 671994367 731037314 915911795 984867345 769425604 793165471 3704284 82706264 565277703 705713493 530109100 806941906 997978062 999495731 596722393 801336290 656368723 759158264 808351231 858722894 906255979 980206150 935319151 990277206 757818966 854469906 793445931 854034236 328082541 389926801 584377866 733946847 550304683 566321328 143470789 996662595 209861503 843610116 508190128 563384138 265231611 385975303 962798122 996586328 675169860 967412888 971940607 994984246 512603653 723645687 484900415 782343798 146962189 754014666 724400804 728178570 235141779 469589015 827356161 890472408 387696102 578532779 135919391 560983133 129812122 480655422 976343261 995932141 796464301 954156458 645821880 667018659 607547529 705085259 400975288 440488548 518275639 880673973 202653024 383060239 882312820 896742444 313240739 772371837 476456907 690933460 815952094 939015993 327790496 622210697 928486538 970647528 103977009 263242069 287567942 422681151 484965753 969880510 800101606 844558895 546518592 973904084 433465453 929548581 870546051 939815408 393972390 399768064 479351758 691830458 287657734 879640432 225477304 419729660 338044326 586985411 982499349 997178157 83696474 392435076 788118829 793764362 229072740 961483827 17051922 648153083 840561040 990723396 365161917 475055373 102837976 657725218 371527098 585044588 298678812 407995373 715866285 990262234 74453761 783865666 482277976 589412136 531028766 778443499 930312181 940082100 692175382 851960973 626344411 956928945 579750236 803781325 480508685 661296837 696326996 817063362 390207833 518790534 507954707 733014321 578635624 723600972 871434709 985600907 40427560 81454459 532163884 944892064 504403205 798676000 412987888 523213056 856323050 936122163 400635136 780340700 652721682 933918353 603200587 610311761 581303545 932944725 291545812 735415630 708515012 802392165 814668311 920222564 736512546 780105485 521379041 809184740 965341353 992126623 545558587 837150053 79961982 766785634 547945494 752901933 901270565 989442281 887604026 968928704 986481379 991416379 185854208 907758451 366314497 931315974 181444083 795129085 576033438 777812737 269921966 557514437 925115626 959779889 622663038 772983460 16106682 501439850 174840957 332555629 895752371 959803066 260364804 682381994 759870490 765573460 442718242 796556137 414122421 563527536 779544578 793074759 516780428 639026911 170218599 338574814 571026435 686600148 552775630 717089994 564041350 630657828 120199247 250281074 240765279 930334959 552298984 939732900 390268287 880937684 903210620 924372642 131309862 983194351 569556922 856862757 990161119 996150190 117538597 214805049 294287282 660547847 342292949 801275271 608634318 624159391 212506480 481635828 452648228 541132503 598227201 796585617 422061924 481095825 985057510 991736441 459800190 714648387 320924866 783945094 19312008 137695283 766361302 814130941 669617007 798872742 238134229 955951393 473218508 479582532 753202437 968320637 195558672 859219904 279352255 759265352 975715246 983163119 291353931 703114525 156106026 775094988 93556269 285411539 564250119 662155408 646551620 672401597 958325079 982550453 412180853 718727023 857681894 991765994 40660517 948919406 488619609 715755280 257659586 922523016 245889331 534144612 591912791 925458733 822745875 865362784 918709987 961917185 420284078 876056598 891353911 999899595 403724087 653738902 481246963 812476319 292359173 352629316 179294467 361963364 801093925 835665008 711529471 840496725 75088071 995395065 525545721 828729709 666155290 833420552 18987356 273713892 527531475 911879189 136845399 669899037 32116536 539767832 911242002 945310033 493953055 932982686 962519663 970859676 37378838 866544371 32822892 83263165 508596275 972047969 343807037 752800856 615440225 970589317 115806762 403428663 496773441 701028378 845685849 855230978 263856446 482685576 534170911 907002643 555978282 862503806 14649575 256586978 545283698 929640188 228201136 370256804 102364904 801191440 456478509 948119741 150815874 485595381 701683862 916908658 972889742 977200136 544134170 679097154 619235281 701389724 544506913 967867589 613880357 624693606 672466767 684761263 13238417 60105835 245521109 545841101 398235854 904486502 459832275 634407781 550284274 705668529 417910555 659718512 453498731 954042285 982420035 983328866 701980153 999070942 682646042 791301814 593240936 668177468 345752898 891037954 289074487 822215327 877544904 913113910 98436154 628033809 967656692 997031795 592396804 973719683 487817328 693358690 300299390 618257057 480624438 621622673 865290738 973788597 531395522 589112908 937470460 957069938 199519395 676536008 189659523 238106034 960576264 990944387 985429447 986090769 866097187 969285875 312406818 936435733 962416216 966389792 645776764 849144490 800673122 912569199 280110473 330760620 758695103 816103271 149682654 166954846 351747806 902613010 462682524 890715668 850531883 983147880 999675867 999803587 750722506 939987871 664341420 710317421 807233100 874481464 971303959 988119007 70487988 908160826 617445374 963641011 788359353 942872069 336598618 448740040 216451597 645405988 626015694 795748579 511911627 587786060 229935694 710503638 259178231 720740284 311984413 860119029 660430471 710027422 971524109 991489493 559109959 592914536 584756132 604642449 380324293 742547289 652746351 820957598 984125149 986002372 917415097 918383906 71612929 272603500 590105217 762123199 659533682 867376368 799985146 915240235 755973984 906084034 336526578 532648275 395573734 950200414 181361032 917941107 673985958 962674442 505872631 778308770 893423675 895644771 942706400 966819070 159233013 479354745 244638104 687021658 677030531 865034339 327481763 595605505 420818008 777945269 970815853 999394992 735400712 945242269 621328748 822102068 5006039 91834150 225869784 676773292 877761046 895546763 269991506 753520998 816271442 837189276 313709816 400812793 359613766 710131775 216753054 656113603 662901351 708710134 422631292 814721192 67486444 442343919 709225837 982648479 258941631 733508728 802659534 979544077 857414353 937186670 303928245 645499453 202426743 841345090 552021881 949630525 942653783 945430011 405629682 445631217 514711513 518940930 289896735 696015527 855079237 866709333 16241343 765426944 280973523 673032862 796982075 945141377 569749411 964608530 323658311 816491367 626446759 909464634 903469026 952497281 450553763 676459997 495859842 535140047 698275617 843990932 272797866 799441469 767017349 867578580 141966647 445466918 774802098 924059071 657809175 904673542 200374557 248736684 674002049 859063843 3787789 412642458 641760418 727010473 539092661 970563893 43891611 335201651 930745553 974643641 771587151 995298026 685394089 840715271 901556823 953972073 406417109 792270662 168187891 853899817 812561915 995683170 244387331 875833354 213386464 533774796 37292509 109197312 263283560 732101957 352920906 398801372 986600341 992385703 242015057 824969240 798831603 975806638 459336794 997499832 475204254 951822774 535235610 857014509 230000598 840346480 649529923 721115421 850866520 895353460 533501774 684234477 359473200 840519815 733818601 981551189 512540682 608991614 491261360 965955618 520741884 854617117 499937658 785089370 755230092 926153109 309668805 599270427 165440521 895365999 561514362 925490732 475662130 486691013 754379955 833749610 497895356 713592182 48591042 342973198 771844955 830946929 433051178 949909885 522053013 898489776 784545093 963689343 30214428 998115305 912749439 954605230 453098950 785943212 583527748 936419207 831514327 909418732 841299032 930205576 296092487 612165093 779824803 935303833 327736022 808538101 666943561 732820261 383809628 587965212 420734581 854415332 613185964 832859300 475294761 603796768 883571851 984340530 302230596 903891078 159430508 718790480 338554461 964182369 460546685 692564744 75877249 604238301 150659058 814039435 755725808 865652633 403381996 632165741 261901249 649749557 671863495 762329281 165288474 265485752 8614128 898018465 649084906 801888551 433313397 861235546 956177092 970263613 795130899 962631459 762799125 850748881 528679916 618216515 398742233 641488836 114238740 646638984 736542858 779001222 702463183 865324503 123361525 220109353 909424651 945781889 847518890 910080258 534808540 748324576 389146558 440692988 442331357 475424319 758995288 852224445 962536690 985899714 388211925 564311328 568216003 621389705 765002598 877031393 78665941 818510905 73168983 305261122 327669586 333530708 226239483 662509566 652695417 984268575 18651226 403642105 839917158 892087456 189029371 453512084 434642905 467433892 89093159 209959626 196222335 327400372 569041255 707796684 876064885 929098662 287982733 739055869 358249081 725767898 514082076 892248968 697811525 840675917 688741528 790603864 132919221 344791469 465883437 915747801 465086107 797102918 971793364 995144279 164153213 542711597 893705630 948945340 702658385 722597040 613667957 853892237 286130344 779530985 280445116 451172018 29414147 394075619 851245917 860284748 592445476 667929206 513013946 952201556 745516262 801550865 793112387 796330800 318975587 371429701 465386434 708426168 445446301 470358337 176734073 477086361 551370810 760167139 214069779 861186037 330430956 448599074 841468172 936078659 710052705 889501345 175221495 478624654 644329396 853006747 430325765 680270790 7997959 227878253 103321438 366430177 589429366 978998091 252552642 384120211 207692761 520929935 149835326 521795999 849111484 906274970 415284037 988569628 483419869 778514607 669872332 787142220 491569896 668455587 808717448 957473045 667379744 982068240 766643614 819537542 946420043 966545917 905521601 935320602 813938140 905007738 715456944 766630242 520125119 891850629 266422574 851573478 478558264 671972435 707973109 849184233 350850822 742821386 263484513 719857817 380926196 798223904 971071107 999756658 250713881 341610015 377579012 797077890 187087256 886953680 262217403 547941501 920276197 924235933 272057675 971014927 219173557 248530264 869058928 916772533 312696680 934200090 179857376 615401980 464673051 878932670 610803720 920219744 456562475 698790042 806248805 811005486 178168658 840698207 707875923 885472708 723906492 762485425 974268238 991955505 82690589 533611533 81984364 889835273 352184342 913905823 773927820 863177261 776700819 939217243 373758474 769232257 785704193 877323619 562106278 995819983 945904007 990896133 420058758 939364870 232684058 298669950 458980898 925036452 793198826 886401194 565811764 684637568 991129039 998531388 599068931 887256448 76888319 864325644 492221999 891233311 38053176 608012011 272938228 374983555 635009095 895744004 984791197 997532237 62344748 498640101 350002561 951185789 252691199 267378484 204763515 723054816 396690330 763963137 196030944 326727779 561567999 959956488 411215227 674355757 860435429 918129442 726247119 818475378 999838828 999954128 28690277 948277401 783420459 888515725 377229974 469800297 548235827 813601076 61589377 278448019 152855268 842887597 741205706 971463897 45207617 896285441 582136835 977801108 614353121 957179178 467994204 910576494 974562757 983904761 920949045 988528568 66363335 396091953 722547871 777041058 676717852 830303369 9280364 587776120 294598992 903052133 412183167 758731145 28393236 716679416 726402717 927971400 952135450 986308333 853124814 883598954 88582813 550022129 259475522 702048525 851172208 967532648 419679372 945853791 504034065 949330072 242774594 453024407 132492930 507101779 923530629 966742931 527491728 822219920 240151159 615461409 66770166 312939017 793071022 972143857 804580008 997171591 668042749 718484260 611901064 958162131 700613853 921768107 241829846 850148328 634311950 743486905 962896025 977830479 470213027 504251559 604710862 794317587 112291628 851799845 125719854 314863375 409093432 957190880 282470883 980210407 895262531 911212321 885561233 978529913 83464571 255356109 448757233 808216338 717735961 747259380 37963806 480136731 672352760 818043721 129411514 233297974 164407378 346279131 915084882 938524385 735127629 873213649 144143729 877187568 532711020 791442399 118241575 599351435 701025459 827723106 493520408 609399595 369125462 565218387 926373789 952060056 942218374 995806238 286188708 742920473 133804127 269266289 423199066 760234689 869511226 926855897 234748727 645538458 82897372 250584539 787098741 965932958 587179845 678057089 734525799 797735858 763619108 800552651 818404572 904073593 93418420 317440550 888563717 927852323 247133956 678668991 787534218 996248880 931808278 974380465 888776966 992267202 674067867 969225392 298832656 522532834 262543587 449179807 774781964 837863096 593730470 870444178 714077438 795108023 598298836 881977825 78095809 299850389 78995359 739886904 367472511 962606303 534579010 719376963 61504399 254419085 405883394 794558844 429933649 902564708 859868940 955442986 190050988 387075920 772761801 928653884 12059524 767872341 72324192 596799705 307231193 770954735 258639604 407810769 803970258 923593387 537349432 886526578 31708164 394535267 538323876 546263983 225747532 817140603 653613209 670765617 517926376 734976891 985835057 994800397 684561244 840174545 630034414 743184295 250043190 697557758 309324700 759494383 376971180 479354824 674346767 782843190 915517103 997191836 250527503 838875207 746913046 955468799 201340950 830217659 798767263 889573647 942860361 961987846 799529568 920093128 779212905 872316436 768399183 801285486 730938358 937147872 827823893 859422707 360980506 821504986 476327051 612640141 367697633 849151388 997983244 999901874 171356856 591963009 299262017 567006450 833676444 856376989 169384469 731296146 508515391 675743661 8835986 455057613 867816501 948917432 151002149 705269211 8679093 662838316 65116872 600979636 408710757 549732196 807598903 867099282 405465636 753126067 364942080 436856229 592270304 860696403 817612469 886997140 565183721 913778799 19502308 897935921 43461077 963712782 200981580 790092413 268671728 606006678 949878333 953409534 834773380 936906964 201483626 843370392 234987953 793710225 925646318 937291168 916383790 949165351 738431558 768835908 641194096 841552449 111611609 455901587 343936171 764845657 447107081 737800885 255427739 846406804 611870189 636232751 767733326 872321720 589120373 794098481 17847454 265174910 593444224 618702203 343469953 757415604 182539358 851287675 227016149 541443671 661778615 754148301 190435537 703572374 929063056 981570588 39072863 931336251 100709752 645303990 958464816 977567507 441251215 506182914 982118031 991861883 444071186 826348878 169939836 180601645 609568873 844728717 478732059 992756266 429802228 489036553 67904617 598195448 420411642 880038919 328094051 950445034 709096919 821709244 20050298 980168126 830402497 939145023 522435089 821573334 18201677 108072723 269433442 684007125 312635222 677900454 899598424 903238025 278164774 574776099 867863002 899009280 112407849 936192429 525986955 727864282 786019172 973503303 823969268 860586277 643230564 713752791 651898372 903841823 981866543 997708820 793835585 892923817 799450291 922355240 148618605 295741759 774377095 962183620 417776149 787018045 43032996 103826193 5498131 28850008 583894866 643319463 413487567 420681758 293647583 375057571 178703684 509084323 86184305 525966571 141651105 200707493 784153409 938687089 845907970 888102309 251165370 467793767 375016852 451984131 559978908 767804516 986169677 997666089 98002010 936326671 773423495 843698372 332108880 759742456 540888951 960626020 896186635 959595949 207141909 214385776 687642178 796759891 274806660 329988438 933612448 989312459 685011348 953131853 868158936 887425180 995393510 998022554 481201979 995519988 123616254 748882321 836405984 920584798 71406098 474432578 707177985 846543306 29963042 336451405 41900369 78712867 101122519 516949800 940215659 951114451 575857141 613959874 396793558 934569953 607443804 830025628 145620410 593481579 834025805 857311490 819082447 944853596 959478395 996146044 203189367 847916984 604940263 873692723 254835212 709238924 676763482 895382028 243578476 679165898 182576392 503318698 178192244 923521319 584303233 613613783 286638169 986965685 403769428 868780442 833440469 970304938 437865528 449631671 253018669 365116053 457594651 835581513 510252254 546633158 566697768 726253515 106341375 849553936 404352045 713006327 925057464 974980816 798242442 990208324 797687407 857870642 291851760 528299940 962738958 978164007 108416091 153363566 181618523 391975722 621272003 854547435 656144104 824150187 707522388 774413495 599596722 766865996 888581484 983755563 133386426 908132242 389136070 417482062 275486736 749331417 885976700 999717646 61895743 402979029 968160845 975916046 965963541 993264705 435050548 987705984 724881871 842515892 539918423 730814314 924323429 971015534 392549939 814601632 299678784 799805868 543852819 662112141 895789293 908404040 400367317 922594351 821669331 957888809 881495050 981612020 306292977 945047125 203548615 780260848 652421555 971263888 971109052 973305462 250401346 460745367 819481438 857070780 82206390 459776771 37207019 866799064 6539555 784268600 303098231 896882607 678965227 719113409 726764195 736021064 296895633 936603842 399837688 583348006 146684915 268043947 339804525 622439537 647837625 856744698 52232095 672818688 580979279 909059613 107399254 239714753 402260090 964570176 88571094 821383243 337038398 549355066 987156062 988661314 111246933 697292743 863284841 984011831 471214221 636004257 692823180 864334510 342102654 859944295 76179734 102707102 262545455 612740028 20429499 541386124 720961882 808074627 444811501 785299394 458539044 879651349 1320615 372888207 209073808 796379830 458962767 709459328 993685757 995029989 258304078 547572539 311756584 566229105 128750357 912062682 679164915 762487911 308787493 694703104 637074500 947890459 319058224 995547586 819445195 855738124 51023819 315642027 4688454 279134664 585742023 616155934 688818288 790489510 682076202 842809687 13543714 668555522 890434839 919035157 605711328 753179656 304779107 503884683 659641927 911595810 979152299 987385173 330927328 440061438 968610150 995360227 133948460 234489629 726603796 730170127 860482017 926407957 293121922 897706794 516861463 549676723 749879903 815756902 600490351 944404840 966096556 999533484 401660610 509713271 813040789 948087640 296792899 823696227 515012018 709464964 4576076 688061405 446179185 967176245 162717954 703100773 642418741 900613736 825381551 939249945 219852346 738486172 262892958 775111042 319526757 807752803 853672226 994638055 380511203 864177413 659305868 951288012 675475731 903023819 958440778 970787935 959947377 988533635 562704624 701584037 399539434 620982238 227156290 550951733 981527846 997205890 287378377 399080843 802249660 839005171 672331689 687258662 748833444 813115057 870392987 973569058 600299002 786553230 925493807 958562917 706508320 915873086 900131927 985947729 358919132 850301932 434124169 524682828 11369008 807610454 270044186 399471705 577855152 959975519 756499945 889230279 860891795 882708625 118425180 693531508 141647005 704020205 992916527 996702252 659570946 991532300 802331486 985343090 384025416 970388421 906352283 970746886 539823775 927011044 298101956 615276979 599043472 875095003 136509321 265207845 464588879 818127366 278211850 332119601 143625914 883514200 851315936 944216285 907750212 970790288 277686428 416198695 734068816 808542863 333716545 593558978 486725728 975417480 670669078 713040556 817635497 974226212 988429439 989633210 224513462 754813359 385272867 395399259 25056694 270620212 954084016 956480344 475201968 587306616 368289269 449092415 841745761 857023934 198697803 460021091 979531501 993443945 220661628 716314852 653365069 807101445 628459176 948461804 886885275 908255198 329746526 969455198 542377484 652153906 423630554 783657383 32029440 672433479 430463265 667543473 859680800 915284463 404460219 623174072 952876529 982903444 900208855 932327575 638951062 941644622 2350196 347778993 95630813 792763799 401576982 666462485 903825180 970023685 390852345 668180752 619062207 853054703 828642143 923491688 36611521 258970385 138642862 211980507 417956315 888274520 612499374 747267386 111037028 557476754 680743132 891327216 409003653 482513778 888192915 897797565 969862690 993426678 87505430 703576616 884123123 955184702 820652730 845078108 400987380 684988503 573254102 961316849 91030246 217817924 181541254 726150528 558061972 794252504 10729526 444963080 18943686 969418174 692358412 703101172 837071874 970636785 473050850 732931869 809812706 822421515 274649328 430985994 380498459 707303212 272297545 378900210 392542919 646225336 10054620 518582866 122061771 212268039 5156282 451364722 818282061 870154877 236753975 316908428 609574061 731488445 573453912 851688120 237558926 645143865 210150202 401463360 438602593 824860669 131396232 549297887 432926213 868989088 525468938 792817765 154395384 912739478 254691610 924152829 606909728 716658336 300336929 339453931 515136228 524183633 767282588 918856365 495899377 653719956 961433182 967508689 183775721 918518975 583893386 789985741 15066876 394169463 757304476 842937966 95134689 346576018 806094439 904658326 909742665 952844919 691633255 902371399 507291648 940033099 229041804 782681296 769527741 889270294 214739532 413085780 716974213 800230794 716834022 794121096 278251628 446496168 317524292 859766602 599725973 860190205 990788795 998722852 682850302 806864105 566599231 888142660 2724798 290603690 788746748 930729232 382690245 584828561 430440147 711162821 270409189 732446151 562144225 810933013 268330862 467721604 344988783 428217681 410581414 494745252 49034505 940617700 242173008 436284404 98824237 435007277 897954090 974584852 529927867 896472487 261029505 798223265 130544041 527880533 561262336 749501490 287456995 952280673 656252886 855571866 698357848 824727405 851861655 920666027 383761255 885513714 241179669 530198366 137537767 912449920 608998079 834961400 708498104 796640622 466513422 536726826 253719450 640689919 457207803 890477905 200899390 735661315 751012210 890135180 104943871 836847401 591041710 953916969 282678353 515390465 143739581 888841041 509194877 526414973 724783900 757946906 913387166 972820350 996582693 999314291 560903627 711784289 614252408 636234156 307061371 788098806 543319059 548344887 626968264 964309063 541948012 724752077 557564756 658299181 658835264 783177200 851220675 904791735 235109419 783363544 180375930 215556543 321233531 403226671 593730793 684922635 643689116 816021426 617739891 963560909 586026908 755303123 114938503 443293436 704071215 740099170 630611526 697188736 213887281 495089352 740532484 908022506 484628153 508538469 803313184 905526034 635565499 718980230 58796145 921163091 519010987 766478262 215010690 857283050 387207170 887628057 149673907 658481608 547138506 572558896 452498267 669140992 916695177 947442624 57464969 608109203 927723240 955082423 898306689 936569576 603952151 646391530 273255346 981557587 960470791 970368604 387710186 920831690 157697257 653301666 350345483 990545130 391318285 894221930 131330736 417206214 765569514 941005899 796971902 906128236 65389234 592323679 972604563 988581437 182318271 190500251 570659458 651154110 951611706 999523360 467002857 975370765 879522103 881893616 391772575 980410537 698020451 715676115 565482877 807628735 184899014 685181211 40383280 285738384 767015862 791995540 94951003 585844207 164277249 697252020 852842848 922796782 919043766 970903854 969203455 977070468 479406708 788118465 215790928 369237142 87249494 204778195 158490075 196480311 459225286 740766545 181867261 488831515 529373451 719631351 522958970 872870791 430415624 455177086 630742248 672435500 566656097 806463500 154608624 596244440 468579755 637758194 857340119 970965146 721361681 744797040 995866865 998726874 181250738 815189026 72572805 399357591 773229438 830123745 868020602 924076479 871031807 880320022 328649923 505924267 100388332 179879300 846697983 912334528 166279003 648866958 450653289 774704583 438745487 855992491 712713522 735082312 912994063 955476010 145805222 410585376 598080650 702574034 664446792 925840025 809440895 910600628 49666550 164556868 115815087 183199301 797495385 881157745 249661443 752974691 809625115 868692090 276417214 301240380 296460923 829276664 549440866 717567353 197369320 357441507 770275265 828756813 211729617 963074631 460939277 576204841 866372032 932007485 748596437 995629272 465118726 827186882 392819247 915684049 162050548 589559933 873409895 967143207 722923300 929404087 976469649 996178898 518392699 983378695 310553511 336197257 626115170 937566599 570252327 839768897 601561991 888762923 634175272 759965231 740816345 918000739 796312980 899727010 776210687 931968984 24092665 817056191 278522456 594411981 395055057 480932145 198589137 893002762 102667122 776520207 836766236 947177398 235395234 757919487 453330046 967300292 494374054 824870727 281838750 283922931 479348669 927821897 345894580 710563774 192897793 677485344 172765168 898229281 876745814 958264568 970136801 976713829 571949805 661169701 461809784 473179629 962769486 994563409 873369270 909317225 680757367 827117584 319753478 652141556 782449171 956370129 157702589 519188231 757753405 811885338 630372740 705059546 369784331 785898739 175403161 750599894 833742774 851247932 579649542 857778223 707146089 837556989 391835943 680044988 837064186 881807974 495041523 533840966 363046071 662967944 707224196 794457893 435157038 746018543 552024618 696820835 646978523 950484407 614392126 892059201 88924248 877474044 197242182 618558070 442320246 917003784 81056335 293745829 395473281 781715628 466235694 957525919 63490267 451876532 816179148 981519190 469382105 730557652 373209888 985326310 272330369 923775529 791413767 920255285 688882337 978269183 637234102 698674425 819194032 997248645 598979895 785616857 359198362 413068120 659591781 846157109 33014199 626837177 772345499 801701668 231311297 823963879 436254861 781472275 371749199 559736084 469502185 790964680 172057728 593455030 801348802 887449344 117701780 373393120 171593843 299301751 996282938 998750359 274356811 778971502 905242887 968315336 900045749 995585599 884681251 981545692 465156913 746016354 810768511 953786708 839619039 909631618 936852018 994852355 57133232 816811909 134864996 889976734 303224417 593323825 811799591 909200983 544149206 888729163 779167415 994099939 21219303 649081311 183076879 469194825 823392939 994415584 67397834 378517064 501145738 889002680 585391146 867517621 665089494 739146483 869945088 966738109 561071537 819564104 470680372 494041461 953645688 991071492 58711887 983620225 310955688 983093135 990553041 990831027 208625499 398646951 610499930 656544513 471338744 672685075 477392542 948194206 152765036 965456385 475648364 810714937 530060068 879593121 844767153 898590391 386048635 593859818 27620954 523107413 135977196 254102038 497992428 568772459 355843359 823526952 617542237 907690962 458871651 572427475 946904275 999872351 768783708 801821890 576006764 743574282 975772436 989130116 747016549 864717437 116520238 604552840 909605670 984523201 954057602 989865928 736533471 895538418 795248275 839023368 4943261 140011599 628918748 789732771 477751336 764263922 911812612 954511845 789138542 877921434 809381153 885872088 305584530 331308289 969671537 972081966 813301911 917094976 952743153 982323981 794042253 962251849 139107122 872359494 948616550 999372003 909685230 943520143 474950577 945779803 921272903 953072458 200193897 575550250 20912129 339326730 634825976 893647611 371300155 959537843 123849359 807273053 508816134 688108065 919658418 989547214 272584118 849227595 775299579 780451737 171306021 539146594 133533887 820319102 24142153 974547061 312231906 629764061 63317488 667149173 207203673 777381615 22895966 511227067 707033664 798193736 730322581 997875578 675681033 719275178 22180222 357570352 23449671 315676471 360414842 513249936 905466081 950275949 89589162 480257533 911852693 931905056 368317112 640453839 705379247 955956906 572659819 704014796 62983510 826215371 709037354 865647942 404614452 914747766 288528514 856540419 983097534 987787261 130418240 674031638 891502704 916589032 751424522 956287664 73049205 433573509 564295114 946657467 357893439 428060776 283785665 863046528 571620258 790249342 199994360 518136004 71572305 731597993 989873417 992406799 823565729 998567584 654443929 900323407 127232744 346404197 155779557 256858855 679147071 780156886 304288407 993428370 666447384 689980394 277607612 433804660 63482041 155887538 350609250 619021691 415103874 625906801 719856046 857721366 295994838 907704723 233120359 267155168 64467107 512332542 393803544 713413411 129956879 736631538 692774430 931938231 644853077 861498790 539497678 600086435 831741031 975575944 202761377 252636733 491700960 516474732 730072783 941920307 966596759 977409539 783230346 913199123 339066222 932935048 851339537 997200539 456602829 843365645 787387451 817716955 587240182 950479303 735029364 971721633 174526896 705079947 461302989 783261908 845082145 945776781 975736564 982960395 167214094 602842700 179172113 687216032 896452556 971169682 610606291 719872581 13909319 608795252 61247518 306952154 251013304 350737291 551328459 721425976 714327889 783522728 751042652 804313678 507225944 722424187 17386051 341517525 369792358 904502746 409626871 910352374 141451835 992842304 853856652 859500222 165694738 607755593 780816032 930593217 499683105 836888690 404983982 567436070 794497363 813244888 558848068 929580718 930618787 982869052 983088548 990868828 730018631 929597474 877406554 982781427 31740415 950767821 870887390 971804880 594426916 728188562 739935514 962271889 754408289 872375595 182343700 516483780 843464715 871583800 429838350 928187810 323190736 739499928 724280280 774516217 303339934 741985091 999322075 999675477 145735326 730023710 909504291 987919359 402718991 847460426 51311085 675680832 855344581 888814625 980927049 982715486 400036650 632156814 127233283 921307474 865771391 938015381 792666289 976717279 240205154 664199810 802995345 841117432 296836976 979967085 608854504 825995911 951010343 990444930 883684989 892385881 457981337 958188212 875304206 930477897 185474186 694105861 860364025 935932839 403010083 736912777 237396124 645897003 236572762 470212060 242427336 898504558 942096966 958339010 582801384 689819466 531121374 810392665 438338824 704023324 622496794 902475683 949962256 959186767 557711959 680626624 900920129 904460287 806021978 915915423 56607958 322919927 918934684 956999167 605344459 842498147 451856362 952876275 287574657 397966942 779224089 781399372 954958704 999971083 875891370 924377372 873440556 899332793 301268381 717640980 749794508 862179796 48162312 692970864 560079511 592741489 404079920 820012495 237191093 846493253 634724563 644922549 657730145 768684629 201393339 582145527 83746919 378260182 241912744 415991421 480460188 844499731 965505659 990117614 30820267 283672827 282707830 297338096 27700856 741138118 988376019 995220507 620004732 922696636 416792872 479025109 747256481 914346546 122204043 272549969 843858269 844359430 849338864 968079554 509415668 957442571 729401441 768507209 249381847 931135601 863427843 912098107 547651569 931359282 739888156 785734922 990173335 995148585 264176128 760696315 965086468 994343385 559838545 586370142 252777234 908399694 903472191 918442538 768863346 937414338 375531481 524295610 17232967 924474518 456700330 678100859 678997176 792727002 319730905 761337258 509581970 576932614 100674682 233698294 715466130 855820790 501349662 661904039 200550027 614352351 398267980 644640203 444849342 945003452 970872721 997740895 968705730 973421002 634538834 906058779 296073178 933038713 419201559 813554129 784146451 988984115 845273618 966017410 523598757 847337176 230935425 328722824 338693813 855846123 890283075 953664644 41355035 674811159 135092492 362929898 605107201 783834368 68113458 621607284 839482805 981761545 524576259 846828955 662010700 930102698 271283769 801382779 745504497 902668873 74965152 727060352 541968580 812531659 33133467 576714155 529136876 730922868 227114023 597442229 302700095 773299532 46901332 167931765 653497262 654017809 830227695 975659894 174142490 307210145 578014729 646323466 3214501 599863718 583526266 609694462 65987730 290831231 639271347 764429474 263072319 841289971 632769451 655643835 903112619 942945382 578131123 601394350 611215799 731927928 892141257 976152278 267945173 809989730 999087956 999279498 434705331 808683801 463774537 938352931 846255958 991962680 503507142 757865920 451742910 603272942 949872745 950311628 967560629 985725262 514643293 631399444 158533064 593379519 979510487 986792928 396232815 442239030 810268908 881714034 955200105 974564663 377864730 521623355 243745545 545341940 643541387 792800983 914756933 968690304 4004982 176731608 995298557 996835583 355076556 949994182 460207229 545778213 235051688 404894299 435273600 807718438 892534667 977989883 488142430 811493109 31739490 501896182 28257433 555404426 538667968 548823503 444777494 559821778 855701034 884115599 769033040 941920428 383111409 900196354 733089937 806507994 459158861 801168921 56097154 746121592 712689377 794044213 803921069 975802741 145512444 267172233 13832673 338876612 765025830 845222756 607155671 771462450 614227599 668903662 894187382 995175116 875244536 990649423 22282306 449620407 452899715 691964460 966455007 970685465 845126896 899642607 923861750 949736308 769407402 827726626 666908726 693877658 775654994 957085593 787688084 887965060 371594785 599295776 180100995 440345450 215615102 732216344 475439248 550691541 853093542 878737207 778300616 814180798 621586858 999187706 489549806 919756853 682496166 764401536 344876000 460495956 895704373 981269694 254859642 695519105 124394622 214970417 298379503 650654321 649529065 770721970 196818038 761771937 970516082 971617604 414586350 708228505 478932274 530806676 72913975 487764998 534362866 786652826 89758610 183081250 407149103 456710096 120796936 450847012 289990551 873439727 419556903 816690535 903714821 964716858 806140823 869568631 460774290 778300456 774623893 973908750 212037839 936835614 118727856 610349624 739077366 812517492 738255019 804451392 539638446 706307654 171106765 456389324 51697085 66633972 926377320 964652308 348930183 747932609 88406081 600123183 637977757 781294273 795894460 822108841 685150495 769153009 392227782 971085730 495349903 960310368 806759161 905084624 548381274 917854433 153050007 354299625 887061487 901764992 586386316 704519777 590800864 707996825 918459097 979991514 96445649 771735340 606115383 873235367 613280997 834908281 92496560 965142011 802968689 888064412 637588414 731860319 756660906 949771638 986085920 988447040 345074363 399804182 37940746 965776353 549401320 735704371 233991104 541614730 783740050 946357538 931152067 939052865 716355211 948250735 905055661 999698580 316217339 966830071 746631279 833348468 845260068 905065776 569802731 608618253 715989463 939299693 949653546 994099580 170039357 275810611 37334377 336284257 172937732 742655329 54757395 277060611 715965224 779463316 372477373 591375519 655663887 826367220 44092955 811221110 466229078 467475595 271254539 685382467 518855518 686007850 923329677 924996696 298167443 948419705 285105308 713241378 767111315 887658270 969565352 996489685 40130 614204961 157683087 350703296 516446099 826355035 43389293 764463837 435128802 960427867 755771191 792315939 845071035 996253932 574068172 614235664 230445863 855814611 835732086 912157189 669396740 696298908 444373442 470636364 135743506 257290992 109838238 345149593 868400182 960239010 779485125 858827350 23916068 421655833 944243972 964101861 769366102 872348612 284468480 645449653 549583262 911002777 203752233 748405790 692950128 873613382 401875358 617937983 136904505 847551170 920974535 955415070 392829304 685058917 619336600 619956809 808068555 906900729 577955851 715422221 365838899 681433657 9283109 234718051 664560981 928223267 366204488 512244943 51644188 488588505 139932073 510291419 625575108 967079777 417929031 542190389 739156218 756495958 514939254 966728342 26648447 176061300 550544340 928143884 38789783 535739747 273442706 366884655 684395559 855920693 914303811 938433713 874380078 913123871 732123411 781518399 936507092 945177816 774149261 818846540 479510665 557079416 625539235 898624940 464868638 528830782 579102691 690379776 778370816 953839288 188816481 734913843 432148079 783372709 465796980 672910355 555757297 990494524 496236437 912476701 526765510 898216618 160382699 989513186 667385079 750085747 236784287 599793060 977740087 983574720 175739188 279306852 621048660 797172818 969383358 993788306 415433737 935521871 157080073 522993229 386148707 402313825 213349463 914886283 573908522 820654701 565395878 856475984 216009423 516148207 597354997 956142052 635471119 923658539 142637766 772161554 404365356 918755902 309561001 915654495 277154972 796684560 806353720 812344673 751729969 854516538 829566414 880437563 398012506 466094592 887553864 900935881 630741113 767732107 625361239 731057619 482625859 818005829 683438721 845405192 190850060 388081840 430712467 676585724 752552624 912469853 652832864 792468733 524760746 906189032 321242909 687796018 208193471 427885214 908965716 922499252 23172517 373712068 274036392 321414196 250327958 447618610 142360826 212674204 743850913 779733119 797130199 856884770 318373520 935009859 205287901 530204535 779336021 831293952 643319463 949539788 438441214 850918705 820380241 869716046 317167096 787307409 658109615 678215769 546605170 592529867 730031289 819168867 81102071 261548415 118882120 512698018 791324239 976741238 921307210 976080874 456911267 897055264 359399852 512576921 391021972 427635846 816837904 978983426 976678850 995425063 926850295 975721351 550278196 722703168 646177004 840748133 571577064 705602731 53546370 845287941 213687339 287004381 880884989 906359948 453806174 936408773 395092329 908127687 273611858 395039403 364106968 805314335 298167669 351042507 993934375 995692998 870389481 915609486 411174195 735427825 54684135 203495229 831239376 954678105 543223609 656949328 826162409 922312448 290546065 316332547 102535702 547333976 817368937 986127200 616964900 858327021 231561649 526946257 556104440 989096336 944453278 962879786 68960414 747535799 490783934 762308643 896296852 921279301 742283874 975450872 840928568 886669389 422204212 953352891 741874045 928101234 263284580 934594092 258648467 295111650 101528686 750459868 514977413 937811723 273827949 565758236 9572514 806799878 563111925 722423469 478395796 519869515 78388434 765370775 318780637 339239630 674091437 982554042 266517532 567805602 447146055 502529371 727554858 732311497 519043826 671746426 995738904 999554842 979605649 991859078 608719186 685504099 307272810 417848729 281921841 939129540 863631591 921505086 332381844 347021112 129599199 549764472 714222966 996858332 444608101 538335669 752720443 977432721 700591952 964208376 606767832 881162487 272258876 590641791 613882647 928377787 571149185 592599430 590338314 843096118 908032493 908831010 747544572 784684355 701821455 973273398 248407564 474300835 763569629 855220163 165803692 686405626 426298692 503713741 594275286 989985833 696717534 961048282 835982093 851300245 617855276 940226479 655334143 830791305 934631260 967231214 344344950 960102437 913401292 916172394 999119522 999381478 713268875 748000045 247732084 658666744 964995924 973982029 754034334 923176402 201088551 997680998 142423577 417421571 221097748 376721267 594587666 837071788 406420613 450360360 455483631 727692840 405970219 423079667 898690999 936629048 901620115 992246668 987404741 995083787 865301208 962128689 246100435 441442437 921707677 994546773 55798061 929166081 918996045 992247521 930533712 988732331 151196192 762446745 522357375 881431579 501811964 863828272 278571306 345837932 452046800 964644899 934561254 987776239 913877296 996880972 766231621 912007134 114854309 177751987 115161117 839125748 104231989 645433390 740275697 824643987 561718813 690365740 627675857 808953635 409416989 765876839 90114942 803533095 948858879 958379564 816673014 988596081 831691184 868538369 449410374 939169230 873070922 982252139 106891921 967055014 898353897 968469280 775158418 957027214 466922023 767901517 814556280 902724284 912596182 923892408 225598818 480779693 46499393 768017756 75290326 581964089 811192817 967349834 768944494 971678165 902813236 903857540 143933709 554166686 762967416 873023308 440008254 710040729 474918759 772665287 575167134 708240787 673333970 989444728 726311690 970459368 124998920 728427044 22522464 977599987 714625090 806256026 272877347 520153120 844035882 919355795 81845643 954549241 208761905 835884776 284917488 366142034 824827125 973373913 966047530 977546456 124373137 324107890 91138439 183181249 938893270 990362148 549131647 676141208 304576524 381000742 527824915 954164070 879020070 989916198 627152495 747045169 449663123 841387791 481739338 714310083 402346673 825417592 103062034 588048339 668905212 886486420 378412943 909903282 19238334 742010937 185136406 872889241 147346725 865889884 954156081 959669428 628570887 765022231 30322912 400036340 459612957 533816225 903668150 970381911 426007873 664352104 45231762 328716303 210764556 311766281 876620168 894230650 89316741 457872046 144508390 306540346 501766993 614878633 563973125 721437710 83950282 878390022 290663105 831921815 886141226 934014913 691239003 713409129 282196388 499816665 579159063 799256250 473107821 622087451 892847034 946218525 98252934 345815894 565375643 987217776 10057954 198211509 70579025 311283776 377500320 710323695 452664642 904153056 104728381 797897802 721933185 824292336 251128507 455496419 112942339 922446916 589946460 812357048 262003015 613488718 706600068 886334142 335252390 759200303 106440992 441702270 951176611 967914465 103019629 381252192 895855786 946001353 312702421 740364428 827522655 897239474 450663428 782356335 79502091 582791659 737556372 786053097 449191506 691248563 546867145 940311963 164561540 389406089 383755131 998586981 861433059 924990528 75315102 593672498 557417158 822811152 379618447 422763196 475041030 743077212 448501065 908293886 474849905 918840901 509959222 583193104 116950222 324343720 898479991 921705255 104491925 363779077 209849111 569451114 938077017 982421401 357608731 766497180 844092696 914313821 857651243 914915346 763572756 961773614 135930359 927590598 605617236 609395512 391655698 923430498 171300198 679487433 168843962 874359349 165228996 468454399 451548716 923009427 44549658 907968550 378068096 683708370 799447917 915642754 882397427 908208618 37260130 338646581 182435375 691255162 182413229 736298712 486341367 822845408 63072992 328161129 139707951 154265031 295582990 691311171 483086180 868114246 225518732 418852991 56745232 760201442 746298844 912246071 744040296 819558114 73049210 745843741 495501593 582436547 67312064 587108927 480664190 481448034 534772311 988123197 156199295 534837241 544344433 592419117 770171895 842473387 683083993 685839497 16955233 437119502 620399842 983336482 386964289 540313162 72040815 546888328 162837460 822681493 189850723 593935728 584117774 588692666 55086365 132513182 959667053 985399575 332493731 501615251 524865329 789413819 932422108 996200902 636645820 831194052 237635706 834467321 666687116 931155830 550607802 831630068 907860930 922427838 70128561 207458543 469272154 651176722 595531086 618041103 805061680 856758521 841177345 960068432 964983770 988320112 954901421 991008612 26737846 315684641 673820244 683704217 36342513 220271044 45390841 401617669 718280998 883647931 671024760 713650782 994338203 995413785 512978107 659920712 623553766 652179558 124115644 274656852 800928263 833875162 429554321 968412084 5436532 816825479 183956918 449468847 905765289 939797192 948927851 980487208 767109950 921505675 913012994 960084271 404760270 713825816 829907597 982761287 943952951 951027799 68453079 363539713 779252250 934607404 254603473 712455009 678140655 953600534 134131932 262877890 321542225 804739316 440091966 758715228 529113162 557426260 525336281 706199012 608014184 804168051 830338483 945124871 867702090 948196930 819828474 962490159 821222685 822607062 806192267 933881230 136147195 855806464 471568690 762761617 450434207 979893482 293990148 831153660 842113952 979103426 287646954 954377673 16259246 76928496 100169318 960289975 641001419 644181618 59401813 231991656 996916737 998816607 538804820 541271591 434479727 912649103 336534361 608973226 784788402 840234135 147262855 637478973 896244677 968330349 481952075 837379973 233782741 746070906 634431103 963488825 479660462 673565260 887798244 893782429 263357317 455443675 522676296 880666203 645160082 660228893 404417722 837221334 745414717 855613175 535008496 798891920 164432565 860098106 9681824 691962908 267445679 396548227 224966367 368735990 364327355 405321504 591445715 627766898 916736461 919857880 627721313 727417089 549127486 635632351 998438804 999082851 395448835 824760598 597951116 714959590 246985213 251290609 214306137 838202493 227493797 902855192 808843401 907937916 528792044 633686010 655278308 725360960 353955569 565177781 617209762 623411236 59379100 412737658 488999979 811480941 657250316 863694857 112675468 812566002 218045880 446218453 679816502 788026432 71973131 724967360 139260552 391267679 78060061 162631767 778897019 786958581 565764176 747211378 299203721 724308672 412175224 440865170 755833125 766408239 865629360 961155938 639474490 881568025 893086367 917017811 60630899 278162545 107120037 879522467 639088559 817640412 523369534 734584599 683398416 691950378 98051406 135226197 454213108 547266512 109252989 879416157 646495203 848228471 714457632 971377310 356444799 382733710 638211511 681646347 407988650 922549314 138925797 907726474 544929629 941632756 207222570 921664967 80563724 595760206 193623370 415078400 91229084 811522614 123067444 199831975 63377038 958723260 77830148 451621143 647357400 911371378 227671248 338463664 79740498 383140976 514633421 892458499 942217200 973487985 798146728 849051861 258352834 669925202 272714300 812145743 430188450 794690936 972031950 973241116 888980755 927804474 791946944 926475012 385216406 992232707 245488886 519975713 833749285 864232733 818489315 826558468 482665359 491102784 855688073 956015442 835144595 877269659 122037182 956911371 309145428 822626797 749036455 841400177 573455519 634616478 391726774 914314729 916261215 923079036 574048917 679277526 182680028 824169514 437148964 523896725 728222563 925501415 239838328 304471605 354451529 615360154 996934943 998689876 877952006 969079111 141531603 652947287 296270943 335388452 569308140 957625520 765016941 989573644 990288420 996649278 12679991 808296713 757506305 916644800 817836022 918255784 830840362 906792664 922259358 957180385 509988060 576237724 492918952 723356027 555851768 785462531 789445338 933567157 67683452 98730553 643776457 964122209 684353808 690964864 420866831 876944210 114120911 527985895 949789346 958765365 547576130 975407697 118856475 756974649 925222298 963982968 348955332 543255949 22121755 313235910 84492211 570300185 43562585 571411958 560047149 658698136 485375674 873912084 821594204 891330901 946053518 974182756 708977350 933443371 367009901 847888342 518002540 844128250 554922524 871557622 61127010 598446646 936702155 938368615 197663575 925634360 313012744 871657411 383144326 466183228 439422072 824286515 664996778 776533033 851577447 943487525 416835923 783894019 769767378 966755718 429314016 523325369 624889480 876242541 673178566 758165382 687646115 767332288 68838081 508034604 16193443 649322075 119644586 478967251 752415354 934723778 138301349 737009009 549071585 702329149 671243208 986192168 146582001 375898498 165757936 300128711 946039229 982356643 754564540 852416090 319421728 581422927 308251171 500177698 630407281 968069818 892162941 914754484 936049147 991756172 479964089 767254252 288134404 710114517 124639776 696414486 878397659 903686817 760910177 950548687 606027339 899718318 327602378 585479200 316671783 973738189 789596955 831016435 586575847 709404843 538447373 669498692 404342181 791607181 841926664 995407246 809826017 946843099 822872804 888955293 839930506 903748644 988260216 997793210 265245966 832364213 280851662 669365078 498002763 568847842 204724430 965410757 627997726 899093639 138050059 919590353 623525027 923682960 694640143 914158575 292882697 374793742 804275326 829712469 34744101 583020280 169231851 817608757 126700692 536915976 745947165 875081735 990342579 994951184 525205821 954058425 361089645 726038443 794846289 985788640 419919685 453287041 173010333 413463400 981810601 987743033 544244893 837642293 953152954 996363816 44782393 441548942 489516940 550227262 76350001 937152118 110150612 890632303 421175889 493151629 90572167 818521862 491114285 755052099 958091148 988235319 147069156 992749306 80667696 951508515 70290888 575395124 79374173 110487157 558797493 841896776 51050406 78419388 736834144 835709020 67351560 97435383 387970993 434039649 35071397 98422867 390343295 618027249 987605995 989058211 689803242 990777404 775730597 993912941 862495508 878274132 543761417 734193974 337674937 347623842 841871349 892101496 942653454 963026215 559309016 831727008 982615026 983237370 735233642 854497204 564114592 795913081 188385327 781364795 728028872 760863678 26532346 966372791 599569330 753717917 627199687 883575226 829102127 957452403 18638288 725713804 608034422 793246300 108136069 856640423 348446793 626506930 429418532 694195464 398608559 467843464 865556885 991068387 471534165 940086486 265352369 352685193 618098204 959431467 610091994 904803783 707679210 801136242 896266419 903165052 895608337 901060856 32022023 563132262 280817604 844459680 662018782 798766092 945717081 977218677 350884758 947790564 437624595 903752772 996703803 999392893 949444773 965617780 617019937 930698472 743743159 845077468 321559642 636211330 810186821 813547316 497347392 932958175 818551849 920577029 870130219 899164799 713417801 984251956 405985890 712707042 135920340 363058784 827898836 923864021 373922257 679153923 324291631 479745448 17933629 854273935 358592723 615834373 718405865 905173582 62092647 578763633 250510023 534365199 250089459 321057796 406448386 608519817 942228977 978096960 835950842 990797070 646697129 694248386 860163213 892659894 443263527 748826372 752369939 794158108 307379493 657266756 502831740 610933513 441112397 900038017 508386098 683009653 4794478 240772162 480118827 662275593 137262622 966040692 768917061 890586800 682724996 918955725 729974370 917675892 280433019 461965653 124834090 281642640 610484773 789440419 321212316 451154850 986557747 994838978 516385129 656581118 709046292 848970844 984051150 998820320 962655414 985847746 364838378 776419865 768282604 818923344 816711330 835639869 977427306 988610756 17592237 73923820 122611985 965227418 235377275 699905380 316523714 838455564 37382299 549050553 804372027 979066657 932294397 975822097 877840948 988966100 28840932 38992602 240891952 556497288 507887366 838442006 956388904 956513258 951800081 959190633 120693176 717806367 848520468 869517145 287947259 789623306 203504149 413190925 346715057 943269216 868819955 944554041 998084623 998314735 162271317 814743139 625511862 730408147 115048639 379044505 630507998 641397372 989269151 998332385 267999360 522475847 866785465 900546169 547164032 927501266 343044123 459936011 116595519 882298471 578481697 862160580 119783902 317933623 33290539 206383786 728603933 846949773 177777663 344491431 649967507 902450813 28220039 794822848 14743028 331374636 602290121 648690290 433881946 880948498 965761638 989168945 81530670 358740477 818487194 883048390 364488809 542687814 893165637 902588600 844227390 861375251 132153710 821708589 334223964 590874921 509824456 592971441 952516484 982088623 538331784 943019210 782185619 934667557 306251685 689714657 876931094 987550590 573330528 713890262 385230712 569747381 329662764 745491594 516106000 969239274 442773017 965141117 470185939 932771818 385767976 712651844 283764241 655407108 394851683 716413704 863447621 889907143 981614606 995774311 459177492 724034987 816556036 912977682 744968158 992026679 10131751 886370687 283582312 631659014 672058652 749635160 265647810 524055948 502361581 504320065 212573635 305300195 801513899 999196668 28565250 43472302 863185327 986942554 156818505 480937403 780144758 796865763 172858970 560313791 173687147 197243545 716738147 862068088 690581482 756917575 47230948 171914259 288142471 741967674 885803291 990040339 11155901 466561461 511113038 716451061 811573188 816098536 283098153 487386607 657287851 745761862 102302551 724159547 93053161 567198755 936697386 941753742 579160852 634969323 35901511 895011896 724083901 803870547 839903113 959808959 509558354 951416331 607528677 833702393 924577308 982472007 839464739 975255467 515081957 951016487 528208412 905355576 299488635 442883394 679021769 909498943 484920381 874129960 690144868 761610912 424519003 555772928 192575133 726432483 243826685 685790799 231463851 557414547 749259415 811836651 749469658 805671898 134941295 908524879 299626675 495193966 229958376 331582742 881004940 918558353 60723565 909424450 478853811 990478895 586159584 636819847 888372549 934274572 213651788 779317179 252704278 423389971 156057663 584221425 365755537 646286571 111964447 195648840 143754015 512881021 593505388 845317826 583541722 878048082 589177138 611617151 384335489 924934644 253895996 667657401 827820730 941651004 569966378 924770711 921048958 927795016 441268259 588299215 723212702 739722823 383129794 636215554 454571971 666488257 569876210 814384525 842898648 900020151 83633625 433016955 914549312 924796771 626606386 799467467 739343343 756658614 274772141 357611648 409335335 942211304 968944256 990310891 456304159 496821023 52406475 166818384 653254930 751165116 527763171 995103838 550934808 891204092 418961703 643387177 228938123 419958090 839007721 925349970 531129531 994939945 211471288 654271791 423079150 652817055 161788556 728497119 861009042 999156949 49684888 930686337 114566777 626182392 707727368 867006082 564095202 925610226 491950961 643362406 573894725 811280120 233082269 551075497 40261993 405460580 759842890 962694162 902204643 914681556 227454511 439340042 13986041 767579676 337332387 711046926 868072690 985220440 204685167 331071309 588706298 754765628 98573108 756576033 555639523 645639260 461607501 532683260 677357706 705352219 521986696 861826241 161979187 436668689 439550280 764674130 657429451 978617607 269036152 353976331 640058642 836993373 308801577 340920291 846485487 992890471 391104045 633139664 203998248 603829868 725860386 837377350 606509623 869524938 263612298 765893328 181939119 298204618 940662433 984297788 227710333 999870075 566000384 937929895 445917299 642011185 163612123 225502670 240329657 634742079 14886708 827594129 537575955 951710763 443753022 841802246 575952291 813457436 494301346 883971197 562431225 913915839 277511939 557941268 855182144 877857575 89698158 231573195 677504513 869022016 811010812 932153506 670334678 782774131 397933937 787152102 380911331 387649663 45678755 795898931 337502813 417503918 759061268 778668518 499433504 606396363 878871129 954134666 760078909 990941641 316494727 623846327 16538389 922929087 602180139 678248018 141014894 146333700 242399839 759313115 18671506 278786674 951112425 971427712 124500895 344634816 452795973 506147709 892801118 997658196 823344197 918763381 193150089 427663320 671315070 720888116 989889958 995415739 232611020 543877789 925764333 965812700 71005418 762290642 732415838 757121786 559167171 740563019 216790624 823318159 413740233 947180650 735236996 779802481 42328942 858834963 779103946 975929348 256912071 407263241 841732803 979064022 657390769 720480090 823379786 977472708 305421138 874317120 736861641 970130750 67038811 677456515 932378454 983668298 856364081 955889844 339864860 630582269 585623040 735684486 933219729 955190481 382398574 722380533 805511365 996976277 883999432 890561246 602581955 810448379 584624879 881478273 309793718 705445151 751553788 893190952 322345841 941816725 140634630 299682400 715477891 794046970 142329637 351793915 551485883 872047295 299066991 926350261 110472718 120276981 968189481 978346142 747718260 921440636 782343326 915842548 344662648 719871228 966633874 980311631 700351727 959428625 235950287 471774169 450840268 553140948 32414621 870434454 317162427 460101601 780070967 836162183 999982772 999997166 969788571 989260546 925972939 965777633 799668802 888950039 238684752 840839750 755780295 774595202 604066146 810964356 883900315 952486423 939472182 959576193 736467740 749264106 205687712 570817281 368122090 872593188 117411970 147992913 637844126 999871119 432228123 977025149 356660681 953410735 179303513 966290876 460833442 866449215 609130615 946662489 225987007 514264730 425597551 756383480 359569029 382874283 389386908 715585102 648151227 804931245 11018508 468252172 90515776 747099748 701947693 951071514 903219609 908064484 792264688 905673353 489118279 571983530 96230747 138640135 121435735 349920939 724534231 972097822 37349960 496722471 771965506 917782842 401333686 734876173 118758785 591641140 550841555 948290736 809766703 843450206 275915458 722266810 614654226 682069235 515421670 945831280 119568533 291662137 10533303 51229716 289614007 417368170 379382783 658811580 988478508 993819033 992982545 993825348 538838414 586738711 374702166 378874265 477107836 602585505 702808511 873819079 611132198 852273777 710644275 914170084 139637531 432574053 451910822 868296843 368606108 615974580 978537360 982664662 726454696 981807374 767933631 943409478 206430334 502744647 164799702 730203813 360254874 648509417 380080832 711084162 981218720 999239919 787426338 878512640 155747150 837209542 820018200 842802294 22719953 134226031 453606360 490455351 166381883 426263823 553370393 582297579 877900483 921329763 414827040 513928652 213977270 537558272 303140826 863004820 206668835 650118009 423726472 661749717 697678130 803207345 790208271 974998618 807607189 949854247 333226415 338449142 967075226 988800682 928035857 949790965 506161606 565668865 136474816 841324950 857386836 906194947 895812940 900253171 647547135 702179262 39319012 176375865 599149051 964538614 162733915 497040995 180354795 245007918 388581372 762868300 687471299 936664086 881406031 892204583 501337631 979860567 558769162 604254119 738172580 914165735 727520796 857788477 694076992 748945112 458384518 521609170 211715474 333082418 686908565 819976408 346636562 898540889 338622722 650022555 722306700 953734539 845434447 944705349 353857336 483572485 921690279 962098646 576580066 889194514 11412638 312750744 815236992 990161637 9680761 720923815 510964224 930384282 864685304 985492325 424803278 952522502 352016581 665736301 899567164 927077993 449363540 719482334 883569151 940835008 729453085 807652723 708805961 936145562 608560324 833083525 353785188 994741972 990558007 993654744 241930972 596870093 373182179 481724791 109144874 988107029 858061846 897741037 57740738 956219843 600013664 772158333 131211724 603902215 288544877 660579627 653268279 665215848 3176300 105291870 965304883 982823575 901132181 923058846 359847361 759038897 37376763 519188337 539809865 999929239 917546776 947693807 535870498 894458526 323049009 941778517 618024589 888997375 972802712 976567512 499053925 876063204 381970926 412264877 418499519 530965579 573801538 838588754 90776283 770256990 258495754 991798891 857240031 911314142 973783844 995934960 898894909 936770730 777306570 918969704 541503195 559821754 695219878 703075175 179617458 842230091 156707183 757225063 388704443 818991099 389183549 509093797 298387015 372187142 586382703 627652576 657702698 702079875 655072463 701715815 462801374 843432343 547306118 690317365 468360316 831531648 717173734 914215699 310349861 873526898 548783923 881755809 410479376 809901116 499354107 753879538 684634509 803573349 472849514 822657582 210972305 306492304 194795363 447689676 183100367 787675430 91572094 509424608 472484218 916308438 425543173 760502224 843613866 910306494 748777643 813197222 774926202 783223259 782111844 866258166 24188794 79305629 317441512 542925566 215490687 839529746 942522499 957325117 596710822 637144684 457557585 938683789 208984717 411208756 402842560 808351078 497367468 733816501 657491780 714270197 831264968 917998498 94691551 674177158 793830107 881016098 657596952 734165183 732225410 934740716 183147944 470454315 333210364 472426197 426319650 961499614 629983958 739489106 119148200 291971720 923201175 953724315 758299036 977223576 542144436 613201277 559565755 641958126 145070613 729912246 684578610 983569442 527601311 698753153 851066619 864625229 261831452 964396996 965652679 992115787 473117512 898356138 28251105 142451886 189850719 254428903 184862877 604196398 708679776 827268992 859988615 895188598 263690922 747428238 680777021 951373159 879764519 941095421 499645887 903834323 481596220 951465887 98765921 524296022 635912569 936027426 150937112 224525452 8829309 419557316 672906411 878066720 240948883 439042844 928119230 967764819 590075263 806690624 637433587 899295025 985597541 994898062 43907333 49544691 688729094 821316429 534173629 886208509 450949035 579871074 838863207 859712243 524833076 618392952 534809197 544315508 884071999 898044384 538366077 801686008 737456353 975208856 179456405 824774651 848533770 900952487 568878937 758492214 320583037 573398293 826717064 886398004 817836420 919089118 821123229 950209069 137130213 555399301 858299888 957322836 463086293 665381993 516959689 877846815 390435566 900268083 494588495 927016323 422620976 630693956 840499144 968761550 695767519 802631561 903934606 999120391 158996442 293620215 80362360 901902112 857407422 989471155 385991862 833202352 609384809 968463965 394736922 485714985 848727173 870771770 628684123 879470713 889408865 999107786 382465935 881014334 835207652 982369421 555565593 999398234 990113570 991883960 549326981 572050717 697992093 984209075 539820571 730939942 275280630 695610473 589550606 644699793 35568342 403215467 230388501 466638385 924828111 997022903 468987652 606321890 160408094 921274710 938905186 980704410 842744172 906799738 680236276 681889590 10191027 955076003 554681544 852256201 403567253 726613008 989761479 993085921 447809013 630642383 42280445 248559712 357016166 937296732 353957736 787587512 983218466 985415436 211077698 771512104 199636131 683396372 149542207 686823012 397977681 961954793 294221896 723400311 780947727 856147048 243725975 903993404 751502028 925757144 747029765 803032183 61885887 889516889 207379486 420081593 442727924 819966201 112641163 877300565 830967555 924389896 572209875 897694520 574983201 803161946 152101823 809667531 248993128 517861410 111064862 904957459 705496394 724630712 602412329 838211069 701530455 932870329 924745759 995321491 332381966 782879016 878962719 978232329 988798067 997134483 846231325 909525612 262567096 605742773 662929496 962612026 345431644 386702776 887051155 896590812 357188786 386907198 807629482 918382118 695277876 977999030 93384587 936987165 61012060 721640839 633298495 733631138 944829868 962423014 591232793 828194938 699772779 782279322 359346122 827223535 861333593 940529485 522093124 842382681 843889729 914416679 253968160 561640052 739068116 782592926 889727613 940026354 715179522 909930171 866948837 918013207 17625546 395250589 72497760 655903769 321187821 801927020 919554251 943796861 300838002 991989289 462861022 803369971 288239407 910849434 346104511 360647681 487216679 550850194 9057987 400184250 853290452 907819625 7064003 786274125 621689179 933298062 292822796 748428596 576132472 997876230 768128194 808608089 512727056 564197587 626077396 722215984 70914706 850780717 18663368 334608747 306823112 647668140 268884785 447251681 938855379 997186662 723971344 994065925 65340446 72273527 589965253 687952817 223719582 677195019 861669476 893158793 553175679 611380171 928872104 993171374 204611169 438808818 629237970 711805344 598439535 821051564 723190051 967694550 732132342 774026469 977303611 997495484 54042624 427216114 56437544 86895904 550993395 578107964 268131374 890145920 454614919 686425726 360702993 711915730 387959978 533755969 500694248 918608352 819144405 952766736 528867887 583439311 246865327 270467147 874261310 918712212 782925368 983276329 612765721 642187599 776218467 940882902 621212010 705706906 23213651 284736984 840577407 931584853 636902692 795899956 920395428 959083827 829107128 903589993 23842757 274822566 448984618 931066958 22808365 523752840 664807757 806564234 688809477 777336139 899084924 932918266 181949600 870506082 939146071 974434128 14769552 614070367 345536126 520793123 279805867 552961557 562263673 697442522 142767048 291691467 617125853 744984220 321621326 548634520 384526054 805858419 99338803 437794084 508594424 864776644 410967679 829875117 359215735 488220605 353109743 809679028 694846647 865926892 610688703 664327142 982065404 997167718 336014290 370128689 564135361 796647867 272097555 672895496 165681121 657221755 819700446 873764018 890933294 916500283 876923832 905088686 543461200 579740615 5378356 734707992 463239336 982352337 553813024 661551198 867195686 927052204 873459330 939223923 698585150 725701331 197825500 586598577 881825122 988996713 119556661 139323983 225724865 987705059 285165691 717725857 81671586 206963901 536645236 810186448 772169623 987623477 249789288 798352065 448881679 493395987 176199678 514052087 747048783 924350267 652966970 869907633 173459958 287768124 843522352 845690927 936599760 962140331 669813665 701254515 835992240 925668419 150177974 717985061 206531047 245978551 801224820 835755978 232536161 496709222 637203659 664843978 655902320 716569817 726921782 809370100 872242161 989846897 493725295 771634477 358042846 950924381 735754379 858537715 960675455 974991213 920416187 934477090 33024887 711094141 345215425 510319149 679434289 747924957 598622313 813824804 563768931 893925822 192536053 791430014 860956346 984743645 339669869 705502813 540905332 836045313 913249115 921678960 993529916 998271063 967471943 983075268 439642956 831931805 723792236 997405703 196270326 831823292 985179782 997164697 43220846 251475323 271765655 728465487 398274649 522400732 548718741 958309568 165504006 745552546 931587227 958430293 127495951 191257123 302388103 528514054 203246762 593165077 188190934 564935870 766487421 940347143 824193448 918697992 644055337 969208743 902043628 938476001 640689807 822715866 928088410 968815678 224803542 875572706 866439190 875040078 133182199 839975986 76804708 509877055 212105560 754967422 195038762 999945749 145241714 383920875 86092682 579645939 644449194 904927008 809178992 904001850 421290511 565035665 669063417 975925107 450908821 581524190 964325359 971904976 889317929 919140113 455010990 612177374 919393553 961700362 842029709 970701424 657741335 704875353 759522229 852035435 435398988 777019174 480745267 835162000 277966291 861234829 866630678 958144969 117389163 485386995 224320123 274783046 445934587 965322405 526022643 638977611 616506754 921533515 929779710 958874037 559450415 741179383 489068758 936128817 42778658 882789702 743642187 889477663 298137927 313311582 928525993 937133610 145001611 909453632 148463760 834507584 39973606 785765155 556834590 779757907 750449951 980644936 959345305 981339130 283519512 605533160 25353022 27653996 717296325 869546194 985831408 988456511 218021831 938117355 826371962 846716282 577999979 676473246 260912369 738490782 483623016 990277505 447755910 792333095 381763088 930600091 965014209 988382373 331422626 778233132 317590025 894281808 972305600 997213035 963009674 963653359 235352010 329866919 644498152 690422945 815888486 862606061 145469422 619946616 22458989 887742152 209893848 376645499 679296781 870180257 287319116 813994034 356346477 455696566 440092888 527027168 479148887 612091564 145390759 606766252 360419683 730672379 905466782 975211147 706437483 912341987 556536746 579441490 709842403 886140529 448438602 607373465 648739057 932350586 660847524 984779271 894319870 990236857 875171978 994699463 714531380 743235616 378208536 530413805 422927714 444116987 442230241 999446733 446489037 858905004 495344037 897211449 221672167 900620117 857127564 986407975 10374629 405502883 11073348 286934197 234919377 876809225 608848538 652255703 480605522 758558159 451533050 697639483 384223949 751092691 489765667 792547601 709603792 722588065 776970157 850024899 879302871 972376588 121844698 214819545 35080457 71738090 220399936 281894435 642777886 840724896 180728343 372700488 803523170 963595845 182930293 698378643 283445139 684420886 59900332 486240283 744000134 925268634 814207004 989810512 350185728 643801770 743135803 748203195 648800180 760613246 880862286 882206039 206597032 238761037 883369289 890246569 325167073 865562707 166799256 311549796 584354781 997484254 537005490 789416321 976604802 984392443 361106723 362450747 160823274 981045967 408046256 828495919 124174254 267584897 52774097 882639738 440552583 900238200 470017579 652994573 879808646 926862745 645736852 750408600 622046469 974413708 967189886 977766427 101826488 594718938 159907996 436869669 973866279 997115417 136277420 163616785 762939187 966803691 425446560 553107031 195041808 996746247 886675288 927363330 100479622 983829592 579469535 744543985 851647484 905299474 45837454 126236014 647899145 793343820 915291199 924331768 595083818 839153000 83099530 683833535 846135847 987043299 548730500 558734909 505035877 937533333 159658728 954835199 302975068 965368303 578519020 829898975 817371554 880376413 669607869 831571139 280725069 828776480 213317045 798548907 133499852 870195657 580860421 877451691 445191523 580035089 744750326 947440904 654647352 821640920 829622637 837446274 609425138 714938542 96837978 984135368 654799785 877964616 369902438 498889597 231291665 417264828 341368186 517329618 483650332 671765105 193162152 266813394 495607311 800958944 196030939 963464595 137088493 674401351 799820716 978729314 902955096 933858759 624297259 841406346 238526846 891162176 673907283 866667596 305214179 692112077 541246446 777983200 196124233 624693138 268633112 358245869 573269955 684062192 777797678 814136149 99414959 958400807 569233839 857614131 131984677 882610631 707603533 876898448 153332762 385462460 870422678 961540375 670666208 812362460 925909204 950982230 789511280 859285550 387031485 508863344 269883573 361849691 880743025 953799437 695999771 751824582 643575776 800821382 923576899 978541552 987891768 988128590 818390499 972833968 459061748 535306611 797698735 854547807 191781123 956920538 689630009 787681232 943884717 949275371 278828829 898379094 735164099 885379273 66352717 74797489 912225748 949136595 497352106 806040380 416640656 514057352 675779672 941647981 54409832 416515418 46563008 72281531 636004121 924732153 426573925 535730447 390016602 924946254 779650463 807283846 676838825 786896302 503866836 900526573 143031227 591703018 233295906 258038406 456128600 856534601 78031332 828884343 872189874 902967269 940767317 987775525 868790191 947828781 335001573 843122956 368484081 379671666 636758578 995991262 712683959 996446735 714399661 950272248 471665301 526963023 177564548 871935166 517526526 562032053 934070798 966939640 527604726 815776815 354032083 684065421 316938980 565391989 336459315 437572596 742242427 918523918 180440632 855058571 616736511 749639548 3887081 221077170 192565998 970850098 735684798 992542682 608584185 614278898 500500916 502634146 587599561 967487238 229030769 262146400 66864487 227615328 389478528 635529444 809021456 833643332 649275457 700489806 330120197 598857389 241805155 715782670 71420948 935421365 261891629 694734292 457582887 503857580 461305777 466972534 910974360 941017289 706454168 999247312 234105692 678872629 486881491 624210989 798008538 891234219 857173934 865138195 674287314 775037703 976063544 988646022 530560813 601436790 286992200 325919933 620197866 894983880 987903073 991895892 47217463 738535484 314910545 876155460 277997328 368358552 520917767 952258199 613367514 683726714 425133961 488239832 332637106 806721116 29678282 842039943 486609170 520775722 676549130 873241648 824868502 903731569 936290553 989372082 930685587 997783988 205924410 949587260 835019143 995611732 955294856 979194033 710042375 782415629 803153328 928135574 679224576 762444524 702492557 709170549 897018541 932511698 266964781 320255309 253129047 867865981 438922889 752530377 873282254 955730852 721241781 757759050 54329731 159240721 703291373 843375319 698002225 824340450 718046917 780372808 50229015 776593374 769473478 835836435 14307207 158739871 79237627 926988755 362770782 871223378 246446631 820065846 133164438 509504746 260289872 957708037 6571944 266089279 290153925 745462889 54443777 554129546 261365837 694129773 481276404 605567843 516587963 806213082 675819249 834124525 819954106 826081382 478894736 871677668 158404286 176298943 213645228 730478500 244621590 555745491 928234066 994779842 683035261 707418604 788694706 826196565 584039793 994630914 633369826 994363227 657824529 707477623 838432160 876998292 240411392 766289235 495409829 753098973 853283678 921693298 20498849 780499963 566755958 872626174 272019927 741195090 568064894 902399493 441211092 579878190 609902424 858875302 465676342 514443555 90649944 163637346 56541925 854872102 374369832 451469225 549747466 598540037 468576173 844406233 108074383 899954727 423495640 858661653 180966070 295395775 327436166 995437276 572720587 828553132 940971159 997573257 982594544 986816307 741028074 741277994 818886699 959689150 122445316 273035021 600324347 939858462 920998774 947108753 317959106 488645564 633224030 872897442 235203487 441394869 9877552 745012752 454594110 760491077 404952276 762071162 309382813 521416104 364806912 788735495 869106586 883959845 826499998 954442678 382155184 507983929 344136233 487391012 292405680 800535870 351940792 588452781 824015762 831627389 222639929 642035919 282908753 536969216 411202625 757407118 909841485 935942340 182958721 853823283 840003530 879340310 793393021 997366734 732349060 883902799 472869282 801898059 486450433 880123643 273566464 932336173 598946593 968617964 583009602 879657778 846804479 971689459 123518812 370863399 184500658 459020493 779615371 860339181 556850772 933026164 68844689 776885476 993728550 995203799 955305794 985067672 414605475 628555403 795660472 972205937 562473570 757664094 201018889 536732946 895407666 990812117 655120944 788821402 894280718 964099861 102410654 724896015 497302284 506542814 17976531 649809085 920373804 934443705 26893999 451882974 789203128 919876444 161833958 389938287 762718587 875184846 241213084 921873992 84438521 994247634 68158518 497538258 48314136 665246413 85248497 366190565 49961886 228260332 381266107 973426975 367786848 537613932 710749944 902317065 110901381 299956915 483410660 529863156 209983953 330291883 955299635 999227771 631151378 953485290 695891246 815376131 111726339 299133890 813872926 884642275 666787607 997617423 771880712 910965101 104979005 438669366 12860230 730227553 114745015 516198840 383434512 866449863 166070065 563452782 294265099 751743172 463672998 582158724 660531533 761673494 498875054 784157376 689154585 877189592 258503144 882595093 994088315 998688539 220919539 621487688 956333636 979836189 261214036 616555790 92013767 874236759 81586835 399268591 691426762 945486494 765564477 929776785 108433980 495852969 728808570 995729141 956934944 973965248 318080947 367798957 34226934 744875384 47349774 459538186 28760111 392586075 57110194 854709469 727249544 752102302 992553266 997835726 888219061 975998718 923588702 979955229 408235326 619506100 293482995 340727343 861012484 992020438 675904336 691495743 755177715 763763008 922160494 943649994 475196494 602007738 558829194 891150135 419594356 506033338 12375559 416203435 784567585 817872475 378571333 764645272 685553109 975943861 62431212 278113416 131957107 419994464 574945230 901806825 586338501 734676401 920306751 924864021 998025658 999400276 625799694 654787746 711896562 714284983 25640966 775939972 541612447 628500322 240756774 274321084 376633676 437235337 350322435 610650198 325428581 669288034 214132395 288021708 518921570 545196402 145811816 990497617 500495131 770800864 377638198 990149287 990240344 995751446 964835857 983165529 478294887 588809297 572300903 636609724 734561903 738508579 276091681 840161663 596928125 621163776 9148120 446450684 886946102 982217657 515032454 625880573 545729193 557071815 976192025 990911001 498878081 762476909 766178950 812131576 225200821 941184552 66669682 767833615 674116201 872106748 782404749 809027363 42889810 570044583 528295174 776099499 358301959 908730976 90530688 408138779 95314947 182002254 502788355 847170877 155824771 949923502 967837795 970274279 124341318 892542891 666556636 848970764 459709618 464162178 218108349 968767367 946912920 995381544 21585811 59936847 815041005 924403735 596534074 961701815 92838066 283304909 944557582 997467592 719575577 979473193 413149585 696993698 537665170 847783068 612043044 619844848 737763867 897465974 78008078 761375214 669036656 842198959 547629820 954352891 880402410 996513511 222178558 319851458 947157453 949777532 334219022 992376039 961330043 972517002 297445048 735155335 590944603 920113598 962771083 964845385 122424281 496284333 322336919 906437834 37210888 267791566 698792171 996275858 69892767 539827574 838089128 984405784 119630200 137074250 363354675 488930587 532124503 786983028 4445930 451604624 25201244 265535793 643463594 698287570 569945283 685784452 596874798 803667363 546322300 974614905 603352788 806504516 77941842 481486609 614456387 966445080 174830258 747069733 576372090 868921381 606301420 680844335 929604610 969734739 512530045 859227870 684591288 800627518 209560676 467528307 106726422 346710005 612466361 708026766 423530119 927990048 338836374 751764617 830171569 880366807 49858393 973544782 414480489 484484324 102622260 716488542 926915422 951881987 13872850 350558353 315862779 836620721 961699163 979443639 601256161 914557588 657777593 970039214 239327201 975146052 764660081 810529821 860475152 972816249 742801073 930064658 333389431 698082581 704984308 949836730 656952960 926941843 218193877 531567966 704784382 711589790 459966856 615427534 870012087 920077277 201308168 813915442 981517353 986020932 287038572 298124342 940509373 987944954 137332627 936404411 679131236 742743819 570410745 906624470 54819360 533854136 7346007 486865239 35507290 729274850 868979971 995386137 466270758 639721295 829041954 902960051 282994173 383462775 33080206 803383050 482279554 583143968 604630628 755285343 553431882 681160495 796083705 831643667 297576335 979099800 173900888 616566979 744780514 974042428 797401353 877607863 256326802 679052989 504710910 753316074 194505483 669495428 645085435 786737332 225728173 329373543 143258860 289510128 484506890 949900308 87946343 424728508 136729596 597325714 540577487 622816546 990991630 991853048 522456117 573134379 172052830 728968562 663738293 997591186 722503196 912538387 614679024 637458333 361441083 636069990 798235819 904413196 671732076 952918813 330477828 547842464 298276690 940009532 726390962 943820044 774003555 802979008 577384025 882402037 82270419 264437284 200947591 494122254 144194321 543861451 437530311 812210634 694585589 849311336 916133465 965973695 738004431 853250562 27104432 298820248 375740079 815519540 849364196 940383857 854917647 867854870 728642638 922454348 730117436 926016728 110056374 511903702 484425029 701743364 322111389 631717608 154299785 408440620 795426480 995805716 838768921 870445075 857800275 904072253 3541180 482346118 5659789 115056967 383403000 545461050 494711975 645505493 188681455 950362684 600887774 973519878 524765944 582103314 255088723 987818765 812004986 930819990 828919398 902012631 251133278 822763082 679985086 907378303 360023070 953842499 854754880 963627098 514219426 958304387 363482325 826664717 875374672 898666651 11858329 401931259 505004319 970511521 140082770 805536798 702256884 705425567 438409905 962652917 82979175 855184015 965687221 967862297 77686202 129918947 798065901 803765436 481893567 886111409 276208137 916677063 914238763 990993943 163465203 327890214 513249185 760754939 482977685 667184052 578451377 793618934 792755306 975459266 761900471 772744067 439164507 458449527 234474480 737638932 607499083 816244480 222937501 478614708 361482983 538065984 673961342 829450234 577902908 998294049 403393796 674294537 901809312 997068406 53421881 826953441 522962889 797189268 981230130 996655565 739046734 760975319 605313118 854387694 243827435 554470295 555577317 795052674 745762380 872669444 552368840 890707971 121663898 394721486 246526060 556970924 920832053 959825304 751941297 849522319 464685003 680632333 438631526 974670965 255771710 792633100 23258187 190279034 380891707 799611390 170904261 213396405 184702730 882609306 392080692 737206040 390733170 766924736 555485193 997057657 977428493 989822229 271028521 562323611 994863335 999716699 518868165 570173585 203617922 541965040 558240180 755994426 99374367 357651981 638943035 968702388 955224635 968689062 218089569 827470033 272002183 704261755 148145792 380315299 777188749 780697989 813943465 860679589 650844122 912113267 976198165 994840313 187347236 543400660 241278572 638562398 407211659 602430246 84579278 675220523 793015645 846165983 52743741 952530978 882628870 891391899 784199765 947877425 867378633 992274594 31596777 958483036 556742857 867402192 888727795 930096500 172180073 528499119 661600572 806864326 632052181 830726044 711969562 726600545 661393588 864474119 123434854 279547483 547455107 578903835 811377610 982134707 31126021 313110806 250280767 720080897 78231031 763134759 862127826 914654068 416481985 635435144 412354475 894977549 416656142 570188214 364561110 553423690 7397328 265046014 187136830 266967033 980136308 984697012 191647304 290301134 646204359 755573516 214134946 553397122 696894525 875852624 40985063 285645803 302747743 940940635 26989868 666448024 870174181 914126468 733511271 997237481 551113366 850537964 202556067 930761205 941051572 974922269 978669731 985567769 300860505 607026741 208532441 493135178 975956641 978281896 866364946 904831322 401094694 834597254 706752593 976952368 498958720 848306039 914636709 990955876 941342156 959780727 10490889 44453702 206486623 902303306 616120668 746301923 720958004 808798294 614630829 934773655 538811109 919443767 9610851 380288057 875478932 965227890 648357286 705871385 858033140 948697512 947192243 986622272 25798250 110178346 727697076 841305835 548834021 994067713 892374805 947105968 690127585 925013989 562689178 666729911 420537122 848855200 541415766 758297426 272624203 814593307 947091617 999821207 683775051 692564852 288820432 517886232 53295558 259900676 861865635 951711222 775593229 842310978 379242272 990767983 65277576 448213123 700424076 772861364 486342147 955962674 102883074 764716663 734670776 931843012 91699464 287975380 85389332 390675520 157152974 695727441 949924248 976250321 483608232 835286588 526265160 813302742 153218275 360605683 946286164 950057724 182582924 600132322 771936957 897804049 630699623 733612306 782646385 785926952 600964055 924139096 67594013 495193687 126822981 807306518 416796228 901320070 504657438 641202230 187153304 302151590 942375645 960264995 469218251 522469622 271018578 299014600 935660113 980304754 212656712 521954414 783172774 908218997 2896421 654956046 832150078 871858645 832687226 886858902 22129409 60078619 598620048 827459174 251239069 315639329 759728544 990703760 459785649 464290487 640876030 840176520 68904941 737467283 852132444 895199896 421657195 480076692 763679445 971780710 567715123 994031432 942343227 956449375 42842726 684148460 973712679 984904638 321635777 413227290 828400501 993390342 482640610 695443551 455901911 594736646 643513495 645686215 47636094 563371456 322708354 377746981 351404563 362621711 520577983 750417885 568404854 742958498 765432727 993705465 842364167 852757562 662338453 767934229 103136616 191925644 245322517 840902539 973408798 985650489 895707117 905517250 75122555 420267425 102775558 787053715 342443683 812142842 288973660 883650818 349727818 425632461 903709574 998987504 686565769 815142085 17022860 966414943 157578517 268653248 240684074 839512130 619133391 798780018 916963056 996532755 201861661 870233279 982442736 997546504 963979365 964021073 52092958 631072688 359745365 764511881 845253970 902529999 393287443 524639375 845750976 879888770 293874686 674614877 495494068 793674977 318557697 670960637 623412875 857635591 30321938 389551177 117955162 732874502 161378948 956053125 940891019 994648787 249689477 305218914 530294698 959483437 765049205 821745510 733440675 851246536 950147562 980810814 802321219 964878956 136504203 560522951 178151766 594402839 345395582 830254179 806858463 851317417 710955745 732614602 393488788 562336274 747896847 978229828 285259703 668672135 739461627 936813990 126093716 543657995 791578914 838703378 323519606 524789116 347850959 861667514 450077135 861805347 455113149 463229663 44270130 328844002 514639848 585587629 611293770 903239291 448117281 481534417 648588563 665537508 234501941 574799188 170985654 683123974 411501134 782881890 6020732 506264717 81724969 388034480 838753313 950098048 304160527 304659762 721553123 835060309 609070704 651499448 62214893 153098363 340660637 805639508 668397614 731558948 598368145 629721129 960527093 996050258 478755431 874207525 313456358 738848773 984127370 998948254 782829596 875022371 645099774 747962522 250342652 380168962 235243525 686649482 526513442 884667513 450918035 572909310 319457670 797638661 266335479 910995792 953694932 964500065 884201759 950188999 940415354 999412346 76214839 244009378 598186621 866329667 78975996 395811182 328225259 630253368 817485874 912016266 138310635 967257033 264315202 540598081 496041151 794977384 68114132 326456824 99296623 346573765 486461850 496071556 560514388 912224399 685489183 818171082 863056461 915275186 670488198 863356222 834768813 944330675 737136011 786196597 324676364 994829514 648720295 679896165 226524305 261580694 657772582 837711322 666823207 943140263 262485982 683155565 222434945 960884502 2466222 809780150 944955969 993643259 803513160 967016737 648925240 702842640 692525068 778719748 631388859 991290452 210230243 308749974 319522297 670893685 389280706 534804964 217417914 427091685 744071257 987895829 138215201 274644537 334410781 500013952 983636584 997631570 547020675 695802351 565655192 895598560 958827910 971140518 624158948 716050393 668333098 928493013 65992312 914763304 597467796 997092344 477744107 976318416 522719468 576859651 212851270 301515652 379741745 583083551 69421721 826983338 683940765 812124164 249862354 889643228 933306862 975651510 582732703 957769354 187365804 840011132 658401358 749169891 313292529 835394263 986849443 992385243 618625688 727907594 758246634 885363181 706031016 707728683 624682180 681183514 172324159 244466675 825448730 844411183 401098632 729422312 911721959 958101981 590146920 594943094 630151926 885716700 326933782 906145777 569648105 917003063 741772847 879091086 609328377 781539282 296386176 983297184 684502572 804958464 879259008 968969313 864150921 968292482 401522666 635970447 132297261 507776360 794308286 969845447 433199659 829664124 170878123 449270875 506981219 819106913 984105436 992854864 110294950 581208568 29763657 333914062 161032608 650423139 669128273 832291728 565003437 975626890 472406775 991647207 163138252 252486570 957478555 958452036 799733478 825653845 887752364 951172770 653188351 686859959 263338909 612388297 991929191 993510615 579695029 703341211 975591579 997451310 551037112 693521559 555476255 760625716 813242546 987753207 293047259 335208635 13243764 185920400 664483040 750189996 565075854 773585212 307759257 587374942 51684648 633686132 694550619 750242870 763992768 807776472 380128324 977185615 834721066 985708001 464981820 684269747 866924160 956959723 563354984 916487830 907746507 976221088 890288366 992660959 669026112 716471235 522587872 561456967 339699668 693041663 706277004 784612104 395273563 540424233 253739763 761453201 552756801 975511423 839919768 935204900 650688967 709711579 684426525 920243712 719307977 840285476 718536464 758926240 365711607 853998733 358940221 907212215 468246830 606015667 687372925 716201689 205319873 658123597 150766485 789296152 284560755 558223802 243017844 583459145 830137788 957990632 533910021 633621702 791002757 795280334 637252135 870633745 982111828 987157946 372404455 564095304 515499908 833802340 289759256 739367092 128158729 962604408 596941528 608961170 645185107 997407370 784829412 847154028 437237135 448842825 248157412 428239282 925712624 938266174 204099047 550536559 571287117 798633820 7536735 148062354 56271370 356958252 198420400 203301077 567096872 854401496 592137744 902466173 409095254 597913855 957678522 957875662 461757190 728045696 175686948 520301776 758914190 778658657 410059874 418525441 389510576 988443304 545780203 769850790 866167243 866242172 505007415 798281280 828282741 851021043 15648701 703381435 248635157 757431030 549980145 968599992 67157735 703062586 73932911 194127736 694115240 804851805 184455807 686436377 673143811 747746894 96899870 759154591 226115344 467520866 260655789 487736721 717877725 934937705 447286616 713196917 597641058 725157725 752271395 920942490 147353928 834313531 542762731 671817196 400623417 991390669 673376714 980674086 900161598 956719475 675330823 833789555 745978851 998629314 220117913 562028986 319960282 876701002 451737697 689358229 372569007 579467578 567803850 597598224 339967834 568338355 639378796 763300482 854775657 946665436 732085913 746677381 582335637 769777020 559639500 928538553 282062538 614725805 317488277 989421488 233607215 935078062 798264589 888192365 372923537 842472661 998249187 999439932 112799069 968027202 234158523 499335282 853454514 960198034 160174567 957722617 870880413 963028129 817309136 907872736 930733454 988256450 337294809 476232366 248370940 895693387 898181204 916551008 662245391 752712266 328877179 608811519 743041228 891031191 744835235 747304088 523216031 566084866 521657694 583996588 162039602 734621636 317398647 503982112 313730 865070638 198398670 583112247 145794476 889159519 226963122 538835822 164468241 997894244 154708275 869306787 250637813 365638483 960078524 984092495 87256529 765852033 635927771 894507882 196389162 235251009 450922089 492364566 365682679 908774116 84486801 442302943 824505231 979979488 952920739 993632082 114165539 934310453 940763698 971647310 167418218 205222417 694987262 883545500 687159063 874554024 651672106 970222590 333365029 577451725 369464058 445823508 694417552 813023526 353267169 482602952 195653223 691660390 721281254 842857843 509860768 575400042 294682335 316959394 627463490 784633081 703396063 707812017 535413591 743085798 493352026 962980933 483789824 986562829 867538062 909042297 516720641 815067982 406665733 718580600 434242842 785092232 228034808 674702809 613167931 704515040 229186861 968496703 149528149 265059861 324587521 835822512 641698875 752425923 367109017 544173711 718934754 784080499 795214244 803132834 36051305 509289817 269168583 575865281 64388478 377713595 412346654 814541824 225442353 920375720 842787557 922012370 736159604 934697185 181209589 400041419 34909343 37926852 535482155 963957365 792392879 883181630 965678525 979658764 705407975 849850218 392379459 412240176 819715619 840289462 197997831 989851541 878247983 957364448 260410240 955168680 308542623 833349002 313369897 459639246 22244444 967814761 963304333 988873753 339520682 641317562 293333386 537588682 429841314 827129447 465121199 583194693 390987988 764540677 94706245 776312940 940937695 971596785 487843362 813417868 810148692 882905164 616174516 986591736 898487144 955322659 625847911 807770144 377586938 942788264 578348920 618074253 879450905 971774453 375053767 462947076 813114954 857337444 324681136 793797519 787916091 837993183 41654748 648914187 568319709 736789739 954830088 956707228 537652417 655546178 465807281 834309604 504169298 627473198 893738079 949341837 148360463 843175568 453760061 520070583 315746204 507138261 535039011 591130066 124194396 974956284 24289421 69150982 607001821 675461431 836515260 881475699 326688521 797399112 874178619 896975527 894446007 901855617 552172731 803050261 103114248 216837693 392283158 555566597 803146257 874254570 820594306 994449025 511546326 925181401 940890907 957860211 325045339 968012689 756456587 768628581 751497629 796501843 422222976 528829788 397869607 462840406 559171408 798514670 293588324 672179525 213861844 454898622 722169816 756153691 93658351 657938419 254191789 477795556 137406502 295696567 389713921 543137364 860800822 871420080 325450037 907806873 250757201 759840606 853223363 957270637 706559057 743282014 203556955 477661043 97999859 830099978 705049020 719739672 212810578 967392769 140066762 473885792 583237341 899111984 70377073 619467797 502939405 631706698 286376551 915451073 612827885 694706994 760272733 823716238 439962546 508199826 688231565 846190339 319897011 413429873 115939416 830112183 839625108 847107105 420509195 482392601 620848299 942255457 941606109 978583863 495657733 934367035 316434675 422881427 787442482 985110224 672443013 676903399 387161957 658963168 389022659 766582777 552022134 603204891 691550348 840514715 873429672 945311895 55198640 221076752 144862250 939423113 251085501 829938011 58122111 362588613 95253603 979939541 767737207 896013838 687608470 719860266 104204785 916242659 603302820 949193226 644725615 713092696 87832419 269310542 505105830 573039375 804442692 840872191 774587482 780368752 702429205 731376468 606477842 849529296 253522556 521001792 729885384 805936085 274958271 455715157 610565664 697023486 66329723 82425221 667766809 910444167 14833378 85202113 743856640 748777972 468273319 699563612 548734629 731231585 778283094 872933920 44078131 964607110 775042365 959676184 158216791 476751410 213167457 379538329 283134210 287305320 635927259 988807280 467985103 769933141 215048743 839917409 886192405 954828660 722163910 984741665 219938450 677953051 259662864 413506669 466020795 569453226 627928272 980198946 875090280 899145597 593297118 890107280 552819488 783593716 565905482 974716440 379891523 973608120 974139794 994811070 108714575 487294308 118785968 674075005 508749628 818075045 492124128 839081468 922500844 994636501 676839925 897262107 30686837 154804645 698929425 822750534 790974563 862081493 893889719 926177120 961908304 982324829 938819086 977702536 583761192 841935286 737063364 785833222 167218926 551240758 791845902 955738365 62711110 254821386 843135455 964500570 254009956 547818751 132180256 962762470 909204878 921221956 615925748 771043137 876332972 919930382 67073280 498609193 754932841 990937026 338876464 605985050 325182401 669769406 562458054 843786338 91323504 956018346 428709159 977108754 188432184 974377987 607693447 734554908 625742864 880197754 673992937 916721805 336756945 620533729 783624403 977073622 790356064 858251642 94451777 175533807 127915317 561146371 199599432 360954037 280190725 907183817 684172577 939856946 391950707 931998235 126650676 912084684 776311325 900165703 985404658 998107396 295223719 692907428 287011963 803598119 844521875 971557729 807667961 863114875 342467744 362806375 161318109 191032775 109109289 752196178 961457500 997624507 825600934 909489632 686444437 812843463 857917774 995756977 650153619 892514548 179610937 643858248 786671497 799530962 500966628 866604630 829944155 890963880 490222476 954598212 973303264 980815294 169632839 358485315 139144485 969641849 873620680 882200910 531461999 660263923 323002789 638239465 608547596 886257168 970881327 982692484 453259337 976500271 445189387 895009899 125592973 765160684 98087743 313212062 189265098 606398650 770414344 932204489 538973124 993293933 345069357 700583624 602713878 812147627 820080270 897995039 657959877 778370529 871449707 937108333 923888826 929215842 115353668 197364604 512016153 588799897 512834708 642471699 31252745 171623371 665918208 930154519 283370384 736061289 599634397 730706733 129975771 313413566 737527094 817275227 653363459 775897041 943852764 956386975 244185779 751399780 407055884 685444651 583312210 747900011 125872803 889110517 739711166 797161862 293394320 989768112 866870233 872728677 462539247 520164632 839155601 920845842 298227726 614508589 742394832 901225639 935268482 960918410 679620284 699387399 55935845 412275844 645486802 692738816 579981620 977755840 542888719 919618752 384745617 778059779 258878219 904816291 422318400 798158724 903997031 956216557 223498467 883955070 423078529 456761188 305383422 861477162 217624378 700850673 669411315 846658690 746886377 787092572 629436722 813428307 742019306 994203816 589417734 723771048 817643019 921702337 818519734 887469614 416453888 475634619 544529371 936023542 73643143 350279464 863643978 891162518 755310968 857201934 140537581 235445195 862869218 862998047 966327762 995844520 717225811 977450125 47088496 393560412 252670908 326748858 370167924 371369422 378554581 554335065 800577290 861715083 859868169 896221312 777523096 861579088 736585933 795758790 133144844 418587059 375047110 462235288 364483752 901708760 194303154 632488731 398664506 655488381 579454458 801288621 117070122 428538339 638090953 955748531 868704935 877541546 518625067 535128391 986964897 999264058 514288534 539450457 867640548 989571381 665435466 671165489 257925836 946969568 752598697 832917060 90442606 964923046 902574533 921430844 156221890 922707488 368260247 471814943 814325612 850000406 354434301 605531420 159324544 206543059 968127937 972605541 357548361 951017081 942416271 997443016 901089775 967030033 498591332 983308581 997476741 999407960 189762189 703186459 48969668 228661126 912371265 957801657 566639237 816175704 400535897 581668120 912738168 932061815 172811806 770270257 907083856 933849506 484487968 691776832 686690459 791151042 722347239 879805817 773606952 858294180 825708233 993562161 909602424 934375574 333148533 419688719 480081293 913210460 235366558 688905445 376728923 552441431 889710182 920856880 263340883 805632747 550179148 680635044 771785085 842666573 957746723 990567180 799238443 940253494 757082792 855971138 87605866 549679295 190395865 507105470 428504620 971624194 492566 108666983 532289616 937991292 921509920 925350352 225105084 704764723 855276446 863083916 511338844 915570408 406294548 608298862 718209233 764604835 220978891 716484797 924641628 940648193 8265234 203229660 930048665 949536826 889997947 992969658 952161398 976163388 170360512 908968636 394049608 995896212 981704597 987632571 412457031 430460380 656797174 932453846 449404217 648854359 353016693 858780492 228672366 378052475 695505504 853213012 20182951 279135369 854117365 957482707 874201412 874773376 389011878 565899472 138434393 638428830 175432985 867523849 890122800 919512267 539241021 564387178 839572848 930989367 597705795 814808558 917439703 962699512 112856286 668287949 459922517 977507361 305649006 841819896 519732669 692904396 650840113 953004777 333488025 965475701 383806455 999868315 430247847 528291382 454326458 714068223 607304174 918525270 6109110 113854760 469328038 895791579 999505993 999652367 717080139 942203784 906264798 934287813 134677361 388607556 201678413 801080737 151838231 704844414 474652336 855640923 275306161 447353889 617204592 711851719 303643826 385334323 582198710 784388202 553014857 681094325 527188952 564254268 555592974 810374732 528634589 586785733 29311469 631422275 39147080 279617186 183844707 995697511 88197445 839602169 798656981 892584657 419254451 466318988 920516525 952401157 125028796 941411883 605090083 854978298 236002027 555098249 456266686 919523815 478275850 909266489 203812691 506272183 217568625 326180203 383496175 703805037 424273203 998944903 184014351 325884441 642816947 744867875 637636619 737945617 990289815 996707248 476719126 513430198 589554751 891142953 757636475 959454977 925892727 998824951 560610247 947809580 938612458 972543664 99225312 325907785 145109708 772597138 589154256 984427085 638613073 922806332 445119357 942570227 174075238 283817876 571261966 645643452 78491974 796686046 983054397 986668139 751218322 826111537 26425930 946991707 488153066 963246593 23533664 937235832 198197473 224289155 514138818 801509352 917668959 981071432 501845531 685382096 985016422 989228945 532502233 729719038 550338556 956789181 504519732 846941962 280047346 463022469 363725241 998786489 692789682 734384555 434260966 834834687 222974180 473968777 918444301 990215881 192293032 440022082 5593031 320454301 753961113 842033092 351875288 631128830 957320271 980620985 434180632 547844327 355020459 762802050 396564827 474895345 575115323 996449218 977214411 980631938 232893149 835070809 844213529 850543352 996475071 999320881 617373899 950168511 229504835 772689986 111289584 267003335 81211382 192858910 833916311 875809729 330551316 333943760 449143860 819178035 538514663 983173907 421634009 585021797 4268228 410754098 845235941 960105006 558418202 943088325 771271465 972042449 756278406 780604036 369878446 705222674 839924998 865889865 717595429 909908688 869546535 970258046 110896523 725488260 276484260 428330786 778193129 782072631 776207256 897228366 488014966 682404571 76439806 243905622 414128835 648628383 423947330 812060534 974734602 976382960 343717448 648185920 203992141 929623427 696334377 995069570 238936013 293481313 617683888 849526363 185852578 436120750 440539873 755076305 126332978 720242717 251237915 527687813 959231474 968289272 478373199 574724796 452471023 796343661 315015083 971428806 231707568 697990874 484648195 545547493 586677147 808917967 111157550 731759717 736577290 946143998 574089023 590005218 141760677 344979514 641180354 686009475 790856819 913163056 393025214 461344573 50138395 835189786 539805047 852560193 486517441 737414656 563094373 621859068 590019424 764806201 433733833 857912440 256936070 927172406 405403888 406026614 426633426 480994234 510584047 588627225 567962306 888460738 384855123 658642081 979134241 982978175 527164375 598329182 358171838 810447727 62189035 663943858 677026794 867104779 203072653 211917086 648660074 867085720 364983140 549155156 419183736 448001839 590279443 653951985 299393147 748036000 650983223 911700804 333610567 771202043 823962653 937158686 572060414 674377971 516066143 780087756 681808951 792760433 934637728 948764979 285924385 328885651 186135665 449400862 103003870 155387255 631337396 926247686 535976301 694599921 262244070 954135622 544129460 939201652 745132245 947193366 797525733 955676330 429473800 669037606 855680336 885326185 231511705 910218657 888615874 959249504 849077704 933530698 506007641 771952070 646881318 842234724 387955034 951629131 629305868 774256027 403379495 814817671 134664997 401229948 810315564 886638428 710213785 870664700 400301535 886353789 579680786 729634433 856414364 963110140 498704428 570436062 87093321 275993755 72766443 739065136 78997292 793001620 351577684 740705387 154673445 284966747 513849426 602411049 72400283 153092173 670281356 765376017 197263422 505756278 97733449 261002939 131937592 221744862 315670451 459270427 921212359 942160613 665636000 720739593 895644323 968552450 486290110 717330763 18446393 905623221 686345091 715484271 635132977 703281370 346141641 942379253 39842789 325288894 446998779 847002136 457359801 981039990 178539929 688619394 644644914 668068280 253051170 644124830 629456256 791030659 12800384 753681483 481241829 882396712 252262609 476537931 796157052 931942350 257931252 352212288 190301003 624895173 739580484 830328133 266369268 498762153 735870535 915446246 744810409 851968854 52970900 743529547 941177881 971849799 380691054 815745834 959698840 980424318 693471238 739798885 655394451 690715840 495466087 807987212 651605701 962844832 209205196 582253897 335077520 701873367 52951142 416428216 110479842 125980937 245004354 904348671 741621434 945615624 784384035 940968706 468759453 585115691 75349860 596473789 325242171 524275579 935710980 960555763 625087565 979635933 174588076 435228904 923632033 923837518 951103305 977423228 540314448 705917851 142868705 283349196 781170155 968036764 296305132 714382190 50610149 647249692 123006672 862212974 288302524 794568269 199098661 530405797 399810547 931019995 606905120 902248114 176617329 450190834 545337973 608843097 630052936 951001910 714534699 888504360 924910892 962293197 774022306 865637444 616572835 876449456 391687415 926379750 856908756 998020685 894061543 938723610 943488244 979905970 576552693 947295494 708221887 961650337 35176239 869378716 798964683 942546053 392020097 724658432 179584962 906189309 485086005 691117221 399911076 879443087 913181426 994645920 691581178 769858204 355655246 387952879 485739596 780896001 649132748 656062218 488974665 845367854 938603410 943281184 927393378 934155831 985102199 999360684 474343843 750304259 72212163 750596107 820990598 990853258 302015451 387123895 49866651 660166563 938766496 961780574 845492043 975589980 218585912 674288150 204307100 380032460 500463979 917697920 976825545 999437674 86577227 187621213 16699847 254577064 259444513 926640455 175942606 356513322 521092746 632942702 88602857 418911840 241671954 710571003 33145027 693478885 27035310 323584338 158313106 270088322 655500588 967495284 355341723 855044597 677777720 831979193 774803306 950234299 530793196 727018910 856341231 887445552 540820810 641244049 589869921 882121512 124567934 591890517 902955964 908382612 261891702 910284696 761907658 818307043 326518534 512293209 601631010 860939049 369086695 803936237 825963554 841881733 504988445 845750974 71550102 589940564 465485883 885783770 609564923 847074957 177435410 252890316 682336043 898821836 894879493 944026992 352750106 592637709 56894582 838891806 335839574 730336338 321116987 738493377 300486283 745754128 760582032 835079329 572479950 598335871 171085251 422482422 733825517 768679838 26040503 145740726 991900698 996189560 105848300 163441506 790407075 802569354 113949101 953923203 597988640 637703381 502899697 894040728 946455581 964702750 770021741 998313346 813526467 836164043 180029197 430438961 845163570 989813442 979878399 990791871 989519047 993428725 50434842 966902670 956098530 966432037 313705359 490529395 746941522 974905636 660595190 716714363 514005331 727924932 389518233 952823728 961202228 996500872 500876006 805174041 382094981 856868388 351272969 383688518 306067669 982517014 350187734 461776306 534804730 602896614 338635022 417266963 902773186 997219138 898785194 935887212 64396780 782285535 641329502 792581973 291566886 694113232 90061558 626342863 238806142 543048620 862857960 915215813 114736165 876375228 881957648 884172158 253897726 920443005 484579853 943085010 184872139 316638333 322942073 749268697 292562046 621323474 552209345 681706163 149828555 983205627 245828794 678558235 847043300 877436352 535512788 876401285 184485697 282032277 822279116 995772749 953844853 996736092 106488735 796917575 35757445 193213416 826769822 875519618 193917293 684375877 616914224 734419474 337529413 786334277 560505964 666662199 13675690 329872500 707625268 997493697 828547832 839866993 69268416 482845907 4530897 594306664 182502529 738369877 321265604 498587947 353736333 677542982 842406928 908473666 394781908 759822544 771971429 792951138 473242194 963507547 462093532 847006706 400356572 441302272 642198490 867025797 915354558 947472322 544950824 993233052 721315412 767134349 244215373 425768011 153644629 684165900 882542574 909788394 614600017 956765658 346299448 492969403 133014660 754071675 784262161 870887966 571225107 614908368 243249807 909016018 277463254 634788202 579274962 653075453 268747477 794788537 191110305 837660696 738566527 806613695 631108763 683286154 556658668 869409129 439773258 541030996 870614226 931785984 938804875 989024405 798890282 826502981 787099312 818785247 269840039 279711721 622052729 731442374 545908108 931215337 45007780 938291830 281301497 824617847 149327593 265916732 868913177 928300913 746779764 901233532 149038458 618449432 475915733 983743028 340857020 661929571 396399408 843292501 130531062 786711774 947018700 996767997 207406096 504410644 532588480 586752884 404110050 858896716 580420955 921276806 687528577 989535309 12285490 167258521 547340467 671761175 81428296 635257608 204296576 377071644 338735705 426480060 499939274 529466638 224195044 255005402 989910131 995745199 332104586 939133808 888000918 985590067 954372482 998610276 90687018 515725089 549927481 871202428 54891608 706388570 125072851 509578029 94271173 330610126 742790054 769869837 619648146 819193513 769998335 972627247 386179867 808892659 653998809 684155804 742761773 960494888 15806356 945424467 78388693 567244947 989501664 990328616 28173191 819321899 188030315 788304057 420790683 837856795 898818505 934066919 499892178 615182401 832001812 937070442 179639687 765113370 139736612 868173611 697981761 713507828 832756586 917204445 279687610 678046337 702026720 846779571 341229766 513975380 189930566 917675889 894730873 921192443 145219435 725613757 226647079 650684620 689964152 818711210 803155224 898300066 137231871 950122000 56088932 952055497 958758632 990595727 710166792 718769328 953348592 997783685 378511294 745880177 825591307 893393456 944421922 948056341 326213311 477700632 5457110 161316245 980245931 980525885 815648896 819264260 155281687 840493918 717184698 941020823 383578971 851271355 105904194 409778689 45495238 580527529 701629575 768011474 807803727 896756581 930153727 997055047 97060225 964609663 348843754 507832607 285092643 382873566 954199600 954993627 744658393 761385652 908796142 985350917 172732799 461884451 88706984 798927543 134240494 421013049 640638894 665840373 747354460 845896614 126442345 707107286 559443631 842004300 476158174 729808286 509241459 796459243 724400469 953425657 129314464 682419584 843628675 979329141 456987950 822578192 507295152 632623317 357267803 481951693 878104015 958701557 890448780 931875527 953597680 983693418 593703333 876152232 374276006 800963572 181562474 552571975 980443126 993633494 118779256 704818734 358855042 723956935 840639271 876332735 408241797 863733592 908925806 994693763 156322919 429882577 604406539 825993720 630458137 994820216 11299992 898634848 500667224 813362818 746322247 748176706 117018295 599175758 494056242 683568294 692649644 744741109 42020402 840682483 47433519 899085117 178939977 360767211 398422921 926291282 885224146 923581969 577336131 928330688 537345400 998010608 595113347 937611317 967224902 994455198 915521801 989969694 70419837 847268354 353469149 497268020 573858073 577962129 483327595 716206544 354984468 528975645 600646574 693631116 221634902 224331051 833707668 957469237 385425736 934855948 177874081 634732583 411049975 752875076 198797321 530186289 560769590 832407977 795345075 926323614 837921627 874892212 869573863 893174640 469431568 632679903 8456558 961172222 525409597 601113368 11213277 695597035 973966933 988055431 943011479 991422530 667916715 845855945 746558799 932583613 861784882 914390181 611124849 979350171 679072568 755046683 373469661 706116201 69193554 847018984 509534581 637566803 224722506 909539027 502510224 826258834 854221088 961612174 41402855 44619622 877193595 881575274 674345673 811604891 23676229 964011980 570768509 725114762 582125084 764401075 856724664 889940525 68824608 480722733 940853985 952877242 181034147 583744405 786506182 928870775 192305985 645112159 340958522 547632090 81695667 386804638 541948750 595162360 106086141 680712101 850481308 853901335 451435997 808428686 916506986 918129095 512636010 992850195 197157903 557402554 367840304 505436973 405996343 902286227 352031775 907819191 738848133 944963820 157948249 203359076 708808486 909547652 17088615 30768734 569944614 944674519 40110750 423134473 240849683 524328935 509198698 970893281 47344811 811303568 627757722 707832246 446966437 859612991 821456428 863710620 347004624 862047626 776762547 848851854 87650401 985959437 856370935 883510954 992786226 996619892 293692967 551356182 565413527 837853995 181245849 887699554 136949726 897777621 791973952 861087481 449423275 848282341 407404430 881698454 732498368 839456094 660355267 811644558 216272943 850552965 283933645 293186640 86468281 151004628 397585964 398785030 433884289 440193920 228039381 427063066 387970003 509800292 590979319 887189096 126546218 601887004 318900053 778218029 483317601 667369760 517624914 833194050 967581029 997768630 533524810 801464199 150437994 401274660 635066031 751505992 910786078 954331226 830798288 964301632 454963600 889484441 9507518 904418301 566274475 581205645 7614338 248910192 913347815 955551749 147960657 183430897 646112012 906909360 367138683 551899659 66342870 315374477 472271969 986331677 29898290 217029116 587131260 974601709 163813859 736742821 685536880 898660881 563389481 770542268 623744551 683669295 43867373 502228738 377605202 436973772 82769064 822014369 971129357 981165228 334419034 544158766 286222334 534210381 372219685 819237644 825905143 838719469 390403388 460758592 413605189 913947054 288351611 569377494 162223842 349265756 589354878 902687244 937333763 944937739 547844185 797409372 596066985 831081935 672652871 894277869 771537355 866071547 685897567 831847847 164125157 828968417 538852892 934114769 432410493 490306533 295893643 357460677 564652172 811090893 436878776 710547983 559867193 909689080 245869412 952102143 178607414 210704630 20544988 200065854 692262412 728598432 755343886 988776889 424954222 817801576 857321596 861235137 575760311 964664369 280394311 727360211 78605313 230235462 529821101 717537277 802102004 869847224 764104871 933342934 531716513 830622142 941158203 957918430 361352042 584809920 414142214 627974019 152393726 879364429 618089624 711025845 411723738 451977432 992365428 995368859 729948730 772065383 734006514 843346277 491337384 629303070 504369751 829440884 93903585 161785567 952314087 957941770 273859516 516659861 481396144 714826968 771383010 920400767 224989960 855326803 925832698 971977334 464534419 537427969 420527380 512454373 845708840 969099488 35044116 461841613 168821114 537258589 898043326 915855598 447289711 796295778 86090344 845635829 971260398 972965533 646705570 891357549 706384627 869910469 565322887 724930162 635376974 866701038 392749946 838819105 286204206 911875830 939248749 985193435 338618205 340188588 406150746 479191757 433806079 995951078 400957249 734362499 730569537 751702138 27429470 216935589 615418332 770874505 279721321 907202634 240541276 678852341 673851093 687002257 560236690 806511657 365545555 817377061 697791479 903302933 388768531 919555161 417709820 649983412 611657213 888977288 615826213 637126885 506343194 782112890 794891990 928096016 791857259 829799517 797414437 980944221 455064332 716067614 931758070 963600863 572134686 768636119 250633212 546562989 467826161 577442146 396314910 786389381 167577453 808359671 907278327 998865907 806565860 864235677 430744735 576208005 83284648 436216549 743893817 954389539 547423330 652760560 501099509 637537341 58552822 747728686 269766607 927149750 323698054 819287831 733026087 803848394 666096589 987407511 508456738 905758167 422640806 864486580 302724827 631414891 413739704 851466423 645796200 784082022 15388442 560602243 864218379 973544148 330419749 913568415 358569470 668393656 603921722 858705756 984360270 991958472 63697969 413331936 13252371 681916322 914530001 936373617 219627608 854122458 18129761 710261795 437925801 505693988 372011913 456819940 590797246 784833238 788904668 846554063 27679051 523480597 863810511 898489822 500361548 536939671 521733676 896154213 202424746 699371749 306614117 618623464 846046790 979579216 128128829 858021113 708957746 868936003 34779587 948230842 923342423 938555156 539481635 865234856 425795973 554255678 345831509 422276563 823111122 871397390 127495557 339968917 734266080 781896046 859065064 894079738 54078031 197897647 79185729 833013072 547761653 657394960 200680558 312388810 255381653 414416505 429806289 535995116 145112481 785586848 876064658 912553424 939596865 953669729 15282168 920054726 900931827 944373375 427045744 528183967 490024006 905324777 404252300 491835187 476728719 719956263 386284074 673494520 765976542 960067882 65401860 391487761 601627440 607175281 405039900 903646819 283997912 452793781 377925851 624446682 722544833 999662656 675730159 707096888 945197673 952924237 780149550 862638249 26329671 775888261 796489677 856127314 908548334 941587789 53153321 708052014 251191189 518929785 327734614 933972349 482991236 719190306 463149039 594561166 782357335 860522312 957736949 998756005 205248817 660300340 270933862 801729781 461443653 933570272 99616310 134429872 393692408 449094112 6137283 337111788 959502968 965660887 941819001 989901121 105616621 892816970 878088089 906238717 673396605 941248424 960629048 975022378 952279000 980497088 541662559 565636226 457974115 690045541 71945471 808518104 969879105 991763591 793005733 875638614 764332481 898127651 330478408 459379976 696485508 723708703 815072300 944265559 953969595 961879195 852003501 864277468 524730513 710718087 129388185 738602035 58949252 702528867 946198172 976147342 989331306 999415872 424949351 843957314 707013139 832310599 225355299 531345133 280307198 579971682 455586190 948672164 282153235 602166996 665704301 979688656 93381333 458343160 749794536 885340584 886570600 944987747 191823921 289102492 566396173 853019867 789784766 922539601 511067269 565579858 386519555 876204032 269407250 645251998 934222602 936986316 528219219 583494975 334245118 888565372 99847887 806637932 515111274 686166541 264134623 783787008 369576752 623157408 68676309 313108168 478195422 612772933 474550711 978654938 684576473 717552355 374481429 463561591 163420095 799566099 85717868 767540297 85619995 351586599 135941134 962792164 336483315 827589823 213232678 903690137 625071757 644631385 361267368 826340571 642674566 979141381 17651842 977706121 376055054 991456239 988404157 993142191 233979629 823792273 276173832 374070644 235538713 639925457 349077682 856577245 993373855 995711032 243650124 515423352 784884641 820997792 372029041 925825124 846912253 904485482 301662346 555354319 328148984 797483612 482619158 822237541 730633181 787295227 102932833 488685120 309148170 366356883 278393817 377604125 857090383 930124358 376744029 917460933 994793104 996399333 497127099 937698841 692139478 915372065 439860097 886437710 353874147 670528967 734364762 801490830 915357360 958712485 989401652 995799561 410765894 801270199 671096779 833415508 223182988 676667983 623840786 994239830 262120667 287484172 524751121 920711393 968343895 971766660 290758856 939099451 540687215 916094307 367498687 998177771 949238197 999281260 589218121 927735155 76985503 917374258 114213883 840177085 645617799 991608177 431580917 926354933 113465508 281707964 68302687 676181336 925279442 925852627 328335415 981403190 352371514 833717171 566067981 852507961 550779612 958481752 48203158 212569826 260042601 635300006 42774659 518853448 28021570 661268818 663173081 884108139 309349860 615936637 954315450 990152827 622616914 721498972 757228668 783176296 82901648 629122030 875197690 979966859 718679674 986599977 537016886 568940150 772352034 964487290 552231963 967100900 84347928 322628204 991679378 998831370 329888087 352675928 31682699 548317058 962551943 967520940 871001334 995605499 760074816 918204319 397466554 600127963 309207824 369605892 332080999 739545142 976781286 991415340 663769537 723326584 901057302 982941351 458464093 970980992 139829009 172647201 845138181 992874537 262675615 918635161 552486777 676898224 606129934 897450535 879703156 943209636 131175099 371145085 77350709 572306019 97701469 641739087 429653552 522276200 882553648 904833123 129924230 910102388 187048925 962550590 136657940 214627530 384878024 769352764 380816407 906381250 364863705 821087151 200955971 463516555 33002501 775959375 351491113 885582362 384133309 737774022 329749167 764694148 425301680 768677048 2202028 994041035 921399542 978762445 782111178 963804424 519341964 901693642 13208445 680741825 919726808 995090817 765341544 979921462 576167334 920837936 459251068 530567657 457032097 536359464 978660679 986834403 378855466 943611316 321614776 772572352 797021935 906910549 189526354 633647719 932706180 938901324 702393806 748750164 585722651 629555096 413098686 439198334 772107533 939127056 598896892 776575325 52941157 493397281 649342032 922131867 950875677 981457129 822316629 960920682 852702219 993265725 671341023 742954893 113359570 742219267 379609007 560435732 373696990 689868386 665389741 844056025 520330744 898367602 200209665 699304830 948937514 995245180 806191651 916574493 636743463 937435347 860154245 942571992 862128354 876359978 808882286 907262836 33127837 742256442 23210390 907402402 815203408 878793964 268687662 968617310 716839174 758979744 133938122 722385098 358003445 826938297 337960850 435476765 222291143 950060593 16686266 339124047 111760585 327639681 301086922 957166823 997237771 999325093 313908682 858698533 976418201 993452518 604529295 647579356 318734396 616926216 748095753 937692342 689976091 772149038 555913687 833496294 643992082 681540316 174739385 224303659 198012082 534128450 760025767 817726554 193825019 325373367 396588051 422012021 23491078 503774164 474860439 744473957 539565191 755904076 580058567 779864710 242129704 289931465 538877166 932822326 770716412 979279838 890436992 965165441 628660152 874044174 723942576 965319282 367989802 601592073 168933400 352495670 780392656 917079442 324090569 522835999 160113142 998216331 421454602 631598083 40419726 995148145 392516988 526076304 126917415 994269470 482121382 763482770 540642731 577371175 725389090 839255223 920421745 995104392 204015342 348385145 136110226 645306784 400803995 777280049 585970665 937812413 992693811 999573994 760030538 879348667 631950949 835913868 527460668 802997730 348874428 538068626 958281732 994275681 673884803 829176197 385927029 421702585 637819172 948659650 254575347 819365488 143141920 903647202 647866238 962867393 170306959 261051200 780004941 977437945 118133451 488766289 764183466 849902029 899421270 956848074 701675350 755974805 886069556 906873441 829537231 928750947 395628358 502450993 697794576 790343316 398332620 665032714 672110548 970575570 468444407 589518203 159233999 395332370 533924167 539057486 752185315 944883139 574267998 976211753 405951117 857312413 838300981 997159296 216718029 940437001 844700741 928522432 885238699 997181220 793115735 943115148 758869282 968004858 264806025 364069870 27211343 277396673 384607253 605791628 934227091 949001190 369187122 719229061 996012650 996454666 875117701 910599141 121551031 795114915 634578778 730882891 311444846 623260074 112415773 517488620 339392040 943949695 171196714 375364605 971696002 981766877 412408993 557664285 908315966 964792509 272232288 890997518 296929151 511374715 787978460 809729853 851872976 910731783 301227972 348356749 217479040 693132224 209514721 460061514 990479390 992262616 282862552 672416644 416995266 831744827 965894700 979802759 800271443 827935981 380993099 536998388 984777564 987077532 139453299 294129689 740000941 767404495 759104424 851865018 944512768 994530408 962593864 975110107 386972427 562242465 268084630 616169742 297731240 797293016 553199791 830125375 555012867 940728653 351903564 431683281 658541506 904781261 84273316 230176920 920113262 972236828 830695981 833871369 296665091 393835560 252298275 484230383 497515189 843222166 251389815 610786756 326239703 330212931 241395809 912184376 421131408 742630691 9938269 606720745 887778583 910039458 439587216 764290700 155988495 793114686 996726927 999876792 417259960 862377887 571185200 790966472 830182882 848280039 768891652 782018730 137474758 311284597 285564810 461995756 969174912 986692730 509807097 728661985 100385096 245206157 85455467 622082863 283541702 925646781 922386860 984199512 142615594 445856691 694029083 705004423 853673903 987735055 259743146 450365263 282222976 403935728 925741491 935572198 289434742 825841293 336092274 616624824 365432077 818687272 947936545 951682545 916451521 934056742 798030888 832431393 538652040 998333448 904134625 928053435 515977882 542871934 965814629 977654862 113650833 243263683 725701508 998478503 689373918 723053820 832492650 834974780 172893409 700169966 580236504 813653390 866420220 932530762 117864730 782455992 881044837 907258599 416760484 660353379 703799608 864028664 278428282 321922991 406973535 435160722 721359200 995072266 320999389 793083693 954676630 982756939 160202313 822749048 873467648 934815300 193706760 822340712 841349092 847783468 778869938 848730018 941544510 963641938 584067387 702379086 818615719 926986370 974040822 975655982 388624392 479728147 294877011 701704373 977110256 992291905 337862918 806539445 735921723 782197935 972977697 979848726 824628173 936669927 562562736 857761560 979510967 999795401 505279977 718162553 244843359 513622886 376537294 423795186 330166167 566987705 559927316 994915327 515525294 692238270 386195573 436399501 517213805 649115419 928371726 944289416 942785165 977874536 735814991 911227749 306948749 496885688 217024833 833138513 191415544 666909971 958102240 971455134 209896458 314374708 561990722 745827573 414871659 564018016 11953686 295719721 272879193 771002593 49928512 243807267 555525068 829134347 943869436 984475149 91820780 969246603 849940811 944571885 145932622 361998925 236970500 288246446 41260111 165239122 367523781 901376897 149798085 590471688 346963049 895103230 94572113 790914287 694781821 697992456 898038983 977760761 683035915 916794646 993239890 995806228 609237189 663375814 786330685 899081131 349411093 590694478 809819356 830258950 515780375 911097428 858992754 921493839 276106758 894644559 308293613 598851250 233989803 510989325 440227378 538453336 872489426 948973772 446415009 661530436 160269023 389583738 76442666 824327402 802644287 835562313 725565205 866386302 179437604 595877766 441414603 733575516 725036363 820406867 72345256 982713072 324285607 549032233 873430666 919493791 604404281 933102447 788511981 796233390 173774510 246003482 62765716 913496916 166671749 624401264 228768714 345582451 186373280 474866724 697939816 710609942 737407032 777449783 568097296 880799840 545041653 902370947 118742308 232367477 711928981 922278899 863742977 907755950 998315243 999993954 457389903 772942061 361493126 743581477 549863343 986288101 905979239 949877537 903925028 906386457 549877114 675794987 229859766 862011052 96400983 867276075 496621477 941752431 917719027 968173768 870315559 946631530 146370652 500148265 168655011 407996748 267859484 397103521 475504356 831265534 498110766 684706064 535777816 583488619 475800096 652370770 122448325 994621398 221966666 681413215 240301954 767772570 906522903 989883261 647688277 718201648 507240058 987985322 537209663 734103916 32271483 411358383 539975764 998448516 816883155 944536380 765988978 911434120 207308163 499576782 877335934 996870921 451565299 944339549 41471587 735555472 720510285 816621274 397008321 732951101 723885310 880681505 300321613 464375216 280242514 676989240 81920215 118217481 826101491 895234016 799815270 856282310 605664957 882262418 498353538 749369860 489944974 970707031 151292412 788875708 68918368 655616989 422991304 740243800 327095575 644957170 565366459 988318576 536281905 979824367 535772696 943482996 272619669 635666517 784816997 889890005 264853677 542931004 107311941 428383871 558588483 948237090 108806723 171718226 267519513 925773266 523885260 655835172 775302281 953409967 3169805 719735881 791487533 804538820 128355703 419978982 151667681 929171328 173592579 241814162 512036305 738362725 35934224 287989264 121647446 257708199 989665929 993461128 69108888 641588467 765047549 850499988 932950902 944948388 673521755 818226452 967057238 994200799 892752659 943577480 928922731 940762949 59560008 461412559 513919218 524173712 755835472 763152649 507966720 998788153 647605279 997662278 774796883 956137044 845543008 895035865 185464417 191014603 621337576 919573052 721307930 901411754 832200957 952689593 42642312 825484384 48628317 573268891 711816152 764399269 348460569 830694229 342449558 436322192 162889270 246534095 781175471 797293302 193644678 312272037 964583964 985407446 165621031 707572689 117017555 374850334 926189737 965732857 210641682 899070240 41216359 391933446 757551296 873158152 926794602 939308571 703827420 959481284 747147969 925623588 582411199 917213568 178816108 322649735 289996731 613363185 808182388 992364854 191807631 895279586 386622375 784011746 89600602 504794918 212044703 287042455 710151590 935486632 903895129 990310751 705376772 794695716 15685818 357233459 855528486 862739960 157613641 948053630 803699270 978088138 136490081 603649955 996832991 997641196 350812266 973834167 247094319 361174629 506135063 572631519 837234848 982303343 499170013 535974642 700981666 899708887 395164997 960071644 238910860 698953294 157395414 519178710 198744541 941867393 545837094 931411810 212114987 417990840 268713482 854969977 814697869 917252709 394300019 682933169 909361741 953116892 290215059 860775810 581388287 631587850 530659952 720673028 470469498 697536517 803725294 898819198 996499428 997498942 289677191 551303654 881987159 905975450 965445279 995211557 683925190 957379056 784833035 830718510 625097762 962264571 922228432 956244068 317211510 785885876 229946098 765920559 546862688 555965049 396782279 620337082 712495688 812935081 891700671 910455364 3657371 823614402 303786517 921173135 568633448 717883301 364247963 885074044 149729390 748515285 241463525 872250704 677055295 965022169 401735619 714178075 596164446 613559253 539135418 878121909 964380203 984517469 870809731 983758334 75609285 577416273 355681227 592191088 35202723 346152650 647335695 922804359 85796204 399337708 797536907 914192119 301675086 980507929 245341006 567392375 581146951 769425665 989779817 989893006 383235686 586573391 987482503 989119330 115687351 583996449 227010161 336995492 379183630 736973571 161605592 205427263 823418759 905531340 116678508 616088422 398713105 804041822 66280701 467713247 240813030 358352013 44639968 524060272 994218991 994752593 150520194 520474106 571749307 658615241 767806402 879477783 81713162 831014468 959279703 988621209 423890257 971980367 180917343 291114039 703563081 941025635 158721285 268507803 863486089 874959833 274133530 336543345 718947112 938901292 891011717 937139737 983254453 998427043 422141829 895079388 821635545 839794427 954715154 985002957 226907494 367440713 590375018 883512349 698902816 985845279 64149718 563405379 211206467 827494067 881768456 913041471 17898686 55848165 169152838 316737914 565555881 632725175 96006471 162155369 413108636 673042857 805650219 966977900 464344701 560177933 142628028 591819227 757565645 936886225 343419282 750143753 593772840 649059973 14646696 223039236 810949263 931824752 190181056 698980290 952226971 974168597 51438370 363242693 890737187 991002340 460336858 538774295 371071709 974237885 161033101 940618625 668985555 902833119 634602598 664406210 941879236 971524163 339379803 952297054 247741245 910811221 26705294 111771091 886459493 956668821 878551507 908479575 743903663 756174141 873221316 934997349 579804904 828487816 464222141 486134720 675046608 738517820 701890965 854241470 594695418 841008996 816759689 863776848 158763159 321932108 873153387 898822056 746069779 965491307 534347217 959288989 883812591 966620937 736043768 934317540 879609870 973837392 558186714 736658182 279853559 366205218 791280714 858735625 416696013 506229648 523871823 566493037 708425532 873561582 292993024 572772888 775787921 780246457 407728772 835117752 664903873 857490286 611903874 899063987 603977420 942057606 138193937 844204393 312111717 656490676 190988623 201156639 747051360 961729209 775724208 822651408 595739363 697095480 948252950 993099179 367547751 475900753 778185771 958012495 220483345 421234096 311562103 810454265 77857967 741250434 118921818 704430750 939597390 951185360 681857708 986483240 387394222 782120706 637702004 708628101 473493562 934936221 25092806 727212744 268257070 356236492 878001210 991418271 531776786 887716988 188085999 887627880 913154727 976074536 52049375 265143580 670948694 986176608 534209203 689596439 783154304 826787022 628085505 953976715 288162410 344073953 419237802 570648520 865562815 875531397 67477778 661635440 16235752 975003974 360597672 936883607 598200719 650597963 376474420 885327496 745466861 871082399 892094842 969294375 813117133 879570001 350832025 535692529 610043869 726307637 738137889 990556722 992908099 994740252 784646096 923063136 698768579 804799570 26235973 986158512 934297220 944437568 886191567 940201867 62089177 113071859 844272145 968146794 642592004 995039647 404404799 524089240 229068265 744146597 940002078 954706198 11095689 193730734 398728804 488542634 335303684 958727051 961489811 967108878 53147404 460826287 365484520 408724904 700316434 706006270 231157843 926960557 901874545 921192365 930465284 986841759 251041688 666730297 262233421 666235143 320076006 783885977 226371013 354322315 580133752 778108543 70350760 507779443 883976204 894336578 676490504 954999048 921226932 985255437 433623841 717813911 987272939 997262609 80533553 880637910 958538331 983299300 217344984 697532073 708370372 851343458 477303351 886262043 139534288 298868595 208765651 314457927 988834123 991087781 745475891 956697458 361245646 872942523 386316812 837340159 848813971 980468074 611689780 620614406 183734329 669422868 988922328 999947972 65447952 464762071 863039162 945039071 477866289 805059023 606276843 937687959 90604526 786065829 112670000 889754128 985600767 998452901 118424718 160148603 717939793 896649090 237658586 831614410 49442038 302886929 906309525 988565494 804546877 927816508 963475664 967186173 837561276 909592149 321611743 598052060 826525680 908424121 223173953 481283785 167191013 908051048 759769737 855161770 150644465 410082658 645463795 868655446 222254752 704512314 880491199 995155075 283613590 829142802 300648388 500859558 977634842 979248558 702455753 809039518 551825701 874463468 682684381 708189416 452833657 690232497 71619807 394959745 834693431 890571715 895043635 938730093 835470178 941408099 930843999 956215349 194553766 596311895 78582162 187866863 292974086 734630605 488280651 989189255 344100515 825468016 875483439 895952546 420285739 515667245 312335956 498998574 719649452 764891472 51715174 683299253 333118391 868915895 991013136 991826254 42462095 268305683 572199575 680886581 303379688 540293666 852166805 977434865 67659235 510035217 305402496 550916390 388674503 963347735 422158370 638473646 396000496 752674670 102322904 308450372 383641095 863290068 933569926 970090535 733760259 976714164 521557465 742336225 430875182 610657562 21058663 808210256 3429206 57864710 78671453 977275206 384139364 453554993 80227477 692398064 997381719 999291117 789785918 865701823 924992580 965501077 322815131 397606890 758765423 771082761 706285437 995889997 10420737 49859061 562808110 810400535 533861224 939010548 892710421 904147582 359513941 528497853 334235905 335221203 413722770 539978853 945749178 970660539 175684383 518769609 319819525 579493026 16857673 191069370 873494367 886562369 568056364 787865379 16555158 662030415 61024533 619467591 293362777 796702553 467471808 738713607 617670433 877560390 221539394 511787578 99659826 819462738 954293979 986005146 950002753 974680582 968410043 991183172 441064894 921329097 119015699 781363539 300972979 507937824 176894684 755790729 247824083 981805715 925466298 997928968 21709999 659928397 872230372 906208761 786611615 911996781 646914983 694925247 805908664 981885024 888391435 934112112 322756971 981150760 959314990 981007088 222680240 965014906 61697258 856610836 848948743 985298633 484678077 567237474 1578566 995709346 87232959 331997459 578312264 645318599 384142528 750471438 92514889 451181496 188029050 897741505 408701801 828114742 589715308 805371828 691196883 711385119 795695216 859319920 136088051 164765162 658443198 759502718 214903708 243172756 286715580 433370448 258166185 261009455 912229155 955459105 692571849 778773947 442258036 555798000 167158186 608571022 354656036 458241796 522703616 570682981 828358423 993878886 70557934 393431124 14499763 130131758 595764262 903429704 775882104 809113033 776685567 922791372 285092002 362482754 790883677 796388606 570364990 828550201 673608448 749132555 691198243 938026119 199725701 956695425 612335205 626122415 875487197 963658816 143825428 438776522 379928846 978534001 4367972 947635781 198812295 474727777 741865708 857959675 470965920 790751462 722676584 905808633 345562299 486388329 571811510 852049692 880010883 980112185 289947827 590712008 79525222 317766510 92058006 157429033 234450817 545337356 46075117 180299695 356788248 845664470 389181259 822239138 723736551 882217699 314719160 920037145 115167265 534001735 414185702 924252778 931105344 971880399 81548458 961838478 452558950 606293849 248519601 874187927 423137062 752039875 942817331 979092082 872758985 897429441 71933264 519126955 190564339 216177498 79494406 721197722 316024072 701891647 860112420 907237599 12490252 741276766 232226224 756829910 614995407 970171574 423549874 807946201 32085843 404908286 739835902 793493065 612334551 900046578 716197420 949427518 69420735 542823858 213290822 220926430 512458977 683107055 861643754 907499086 434148530 455067576 828342175 883985464 860533978 951000036 581699238 983088739 858948156 896178084 601013174 798955328 740386637 945867185 542158135 566634421 672757792 945759578 400306821 803929044 357229561 435119595 967614347 991472679 70410668 595475973 32243996 134195069 882335068 917189437 739856873 980949394 94239429 652576837 358016155 848910230 729356761 917708365 593680470 726703262 364737991 546878048 815126495 884459565 653288855 948106551 551612718 837230732 993729518 998391496 13675810 355169993 822119697 867305782 540197027 752772022 338097022 361942807 772947445 855136110 438806636 610949314 402705611 411204375 920829150 976094729 179012236 378794226 817543792 906452110 293295858 340737535 736014723 945556356 309500137 938910324 82454168 983719255 136564259 331106180 479276734 944461106 542614840 655588914 938068556 956021335 568115962 614044831 932468224 994293831 223165890 391835397 283225164 642124182 630948457 858705935 977866024 996523444 67213728 388066130 417142333 705260291 829811683 882040444 15918421 639694823 348670433 914999948 164487836 284211199 963063818 971643560 40576497 764153425 788151337 801831900 357221228 374684066 101922714 445031654 342340690 374357791 60706920 134222376 269139420 776349177 801783237 912167006 280031366 673534748 230274351 290734147 735030871 937266225 304550840 499019669 483675124 638415027 289578278 583455961 86605672 884794916 23197303 525966764 840341018 883336858 593381818 691169549 454106048 864954465 691382768 740019802 782375704 965941178 248507391 748046013 878329584 934307344 735548741 984032910 407559421 985456715 319575578 948221847 68046560 827402201 678440159 851048956 935343387 952171885 943147680 994706609 311054802 677699538 469341479 853871953 846416444 995909138 705822962 872607071 366808557 589068770 358246228 491700202 624471129 800272734 596942241 905639810 133667063 444848230 352971775 935876674 593983781 689924296 843522405 921776146 484687837 963129287 805149251 997103801 107632269 890176283 917238041 942072858 265830610 506683691 100375976 189447831 837785811 848265552 653916562 685956504 79204187 171471686 352205727 980533015 100241574 762648778 960935483 966858308 725555455 808834910 195840537 795631750 40252418 390947954 832269515 849951436 508390304 848780645 82923983 773987529 790634722 886903902 527468346 667291334 702825628 965983645 963830856 981536102 665484622 910938557 736797987 826702927 478421869 788184438 512859047 682980534 61444252 621555598 478070247 628485383 173145581 204342919 965656940 980186085 927080277 942915238 289098417 390567853 493212294 759589352 884334902 923805289 277610931 994447722 760923544 924871479 691290945 799343755 745624738 889511616 340243128 945335482 692416183 826638822 75410079 102731685 177911302 382256988 58149177 545752049 52464214 521109689 476935213 620667026 619821289 799106405 109121862 491574502 667953770 850859979 219126747 250293730 577444484 956526357 878823106 980075935 32617449 977033503 203778423 861132057 796174854 816052062 976662721 983619171 856029201 875578703 208907174 606386117 208378477 805083633 520920587 522507977 85340173 787267134 299423975 632333107 249216661 711812703 993237179 995786651 786959541 907730791 245011925 976720307 70767360 271238391 244734144 867225361 172150439 780822531 239127711 816598253 158010273 682996696 934961529 969019968 189030316 247371074 976319607 994307123 710170916 726553183 832727759 980878230 782066456 988663487 146484545 638641505 341377861 776755749 730989618 790164582 157335164 404651162 301330576 840988744 524222219 990835163 691125821 923447036 564942246 822806297 387889231 781242735 662053210 983908996 319730940 563379288 137660660 578544882 236069040 866800669 155045289 861165822 120028469 655984804 395147004 799125089 803801020 840249320 869508706 920172737 846120147 945089213 632026653 990285212 166922459 874432119 774000333 845295762 174572685 251342126 106107347 983708346 74169966 172602826 449678774 776321023 522110383 632603916 82616409 681911497 344379313 995244934 916527421 946087292 913677887 949992852 931862844 968218426 386315266 668919829 435460784 816102800 392812126 757888099 947207833 987083796 561192987 726618909 568044411 817789334 810356238 894346618 531852373 837271136 177447897 268011298 252790608 445184935 293059695 365100568 363792999 936684292 159343072 654770348 726195684 955394653 581018259 951566302 362701202 990656440 871054999 883748519 581830025 750915288 452996267 519324659 556311484 966421314 234855567 367193294 678286759 990524438 960348972 982378103 77209721 425515076 118790289 321179965 787589489 952259619 250681093 456134765 302959351 592955875 440493662 896986680 290390958 865021274 49958798 766898296 230409087 573811061 916090339 986167816 255708143 443139165 274277986 532167956 858792190 977183462 694669617 771063287 229296328 831198895 106483289 315617414 234962911 550452494 240119290 312040581 774224402 847213243 279501944 841452131 819838178 890506789 769286853 878119715 264242859 725561788 685867799 988848868 650791490 893273232 861085463 861441295 795348999 970369134 89435220 835559109 663645086 813355974 891758711 958976633 285680103 937159928 289886411 981943384 874758848 952936604 207682855 572562276 305449187 397559051 68712237 619634606 691027145 891977764 271222309 602420346 43611330 962803109 995125152 999451799 231378263 566716088 457691548 989405269 552302920 746954911 505887630 671228530 184444558 906491702 721573440 971481108 20932216 610605667 876482503 880870124 470903511 478466352 699039278 845179751 479559813 526836986 504092048 504605746 309662188 974773159 686830746 870339075 28920201 377221234 423978710 794372837 818029816 980415823 217620560 812790108 946841517 970673849 548107337 908977766 709837653 896196954 471761373 551076768 296602710 616933056 32981449 518914015 638022035 747851261 37553111 310965887 658743887 775988465 51644221 342404134 512235550 895577467 641606993 651869202 898247533 913257834 29807509 735837476 274815178 978203725 660433254 749462633 542946760 584938343 299543474 401045287 38208271 153409766 874302715 930622866 886847379 940255045 954855959 982728147 179289440 422841773 495578602 880993198 610334505 921835635 978669491 989956684 551153622 934875968 379034863 924009177 348101056 583098827 651137835 765455309 399795089 627548648 222705262 609702166 316970825 430555019 37198401 100473736 169067662 895445609 971376277 987486563 757996245 998930354 484142881 565467450 960646157 962567161 306458091 842239905 554381112 669684648 332331801 694689659 558917151 590770661 396913457 630491762 933711669 967399017 517728169 941966475 989400977 993207147 506992258 745819662 599837503 747375212 141010349 934634932 380814499 576942573 731689221 899548793 276498352 634147514 199071701 971093474 124843180 726229097 214145560 528175687 175579981 323867330 467924036 742338433 199380365 786607116 315142339 477524517 411615458 494859327 412449352 869543817 65107145 520080688 28156957 633455891 267909814 562593698 425716190 815091535 503382490 566305390 198318910 341076632 891218585 937313885 820788828 954123609 921178990 961005844 837405112 883781407 402504844 785517202 743083 839229748 231030104 605161379 864166107 884587053 803376481 912748410 339911261 763392580 620791190 874995390 779775215 957009689 124482204 577216950 38130126 454493901 522636955 691126188 379654229 936880800 180277344 592715849 606768178 838375792 647261825 671115723 704293061 731696477 996836604 999643631 355860382 436620020 323414395 530373635 348445179 960884919 68548950 677423118 364534762 847999869 942357867 978431229 530957487 635658711 479078324 956689989 441426234 730319292 569520115 643297700 205850877 564179794 309663581 474401007 599677692 924550029 669947485 983008500 522676018 859483443 344179898 854088011 426631701 748071086 697156057 935856371 876664235 951053674 810128372 838481845 330311621 428930682 692911388 835291667 774389783 780792371 902109273 989299427 93780238 529259841 523280227 863036666 995385935 999295773 917495535 970566390 550809407 584819903 755873423 813560042 802803452 981203762 764804096 948384999 283862072 847309142 65362113 178386879 438235754 753097823 644658130 957522610 672797069 963631883 440252051 808468952 673668803 706327934 177468219 801928857 106984795 299169352 338527088 574706397 50807567 270192086 876381248 964192177 658924819 983970837 915266129 971264550 176744506 429568412 198034548 742135760 4702268 518604664 710266587 729001178 609824567 821922043 407312720 820230330 680124456 959344301 494820710 840912846 379031174 448377305 968211503 979820277 931679283 938139337 919277269 934177979 500752500 715335801 228287976 988128012 290784319 466891185 784070656 958976048 873375929 929967799 189370785 302827694 739969010 788607373 196498384 765759393 735550110 968959705 874565844 993505094 990839292 997495569 830190495 845936216 67928067 997321730 784338117 890726558 784247695 849878984 940826302 943289886 448833791 551049111 758049829 873538148 599239987 942334327 326282463 498656749 485739877 628201019 385442201 871787247 649526484 884854895 534021080 771249653 187046933 254209160 839418520 989275941 523873165 806105470 368350753 661801287 741995157 857788108 340887972 911297368 564336918 788830640 469343458 994543071 912286697 967216484 963515950 986762654 193901401 599223844 820850506 839429811 168148764 675531436 786712769 906313770 615024616 911454910 181506760 377006273 726567971 964593082 844299800 911641456 149415882 738971220 913693880 982188926 311514866 383689387 121002587 768541347 273241986 811981863 195536697 445220649 857459276 890351798 452626427 872579986 527003470 858883597 413421664 959729900 338967249 783993987 269835909 639555638 585440874 867162385 899644568 993597495 911271626 970500963 299913618 695376025 290434551 449523821 319910810 500587645 872836397 890809792 481976101 583295115 759092017 855051191 695974413 874137912 62331089 676623202 509454849 637601884 210452246 258194655 260238263 762434056 361017297 601856767 372848780 522551442 974835189 986414905 269050504 893028741 249097918 568731230 134822380 262980832 141814816 737135554 207972470 539024999 174013353 946803045 653220370 683536953 319834562 636732671 77905580 581760597 961638677 991439130 949418904 959752522 180833206 990380824 954572301 964796780 3946686 59879012 986645754 991018471 818019598 836252156 396595493 592273147 728290435 763588649 171916987 920708282 555240112 700282673 618202038 937288029 998682417 998829574 689616103 789337966 886787364 954056428 723836928 842743692 88729633 492233958 621119091 690109851 512130827 559137847 895228876 993356425 32323788 929702214 484502864 902312193 312569133 662872642 348495782 599584851 623596775 787558260 962016838 973493737 982801757 993547845 836077003 947916891 485940098 649422092 922600635 923764810 136613333 215451015 197748524 306461479 255161426 694610812 992750663 994417411 14701702 694810626 352980466 555119241 814162204 933435839 909818817 914829600 345175042 979336866 443212668 966115872 121893921 366219394 449336550 465194706 138287601 877042763 663638870 932621601 186454746 434627647 630837359 770337636 507492450 986078540 440837448 629374966 534386522 928054791 75107000 944703874 849321875 860904181 257483422 707603519 480263086 976320504 92596712 396251892 634483202 902862013 961792043 994275322 602485285 822091004 311842042 937705390 937715168 939043163 97175706 116128452 181738298 993233593 998674439 999535577 319390112 434895195 298594351 874568512 984318376 989547910 589715930 696270152 241342253 545047549 846192842 846281049 371695091 541260437 526517091 583299270 909327205 976916144 8007019 176919411 382394080 644428342 399954127 820782326 83447305 326184277 112235997 455340696 67251006 886003718 512510531 597417174 215189616 383023455 472257288 774987521 955442994 981173969 512221266 939770934 91475336 469071090 423498253 930018727 69522750 816875025 956885846 997021556 81344820 98820908 161339887 361603622 281349224 919503825 282371693 953758132 495761175 959304531 357732402 408740843 378000083 697020994 57689711 916715385 895274891 943150682 155769957 927558923 265414074 277785129 48338196 650438822 142484859 365616794 962300131 996368893 228418076 941023659 568781211 741942246 588917486 954656275 915883541 964499740 548075254 789700321 525013553 863787731 789328834 993183714 625023555 864976805 604049863 973323498 419541583 818804185 134430166 930703180 297044154 426871674 136533263 653121415 445700598 645018651 815398183 865177174 953963119 988763395 216104202 874918057 931465863 995504913 934574302 942941459 900223209 965258583 214314587 586783313 748257453 927667051 315389175 476507443 372889811 438949298 196208702 952088137 265637148 886609627 266483100 971219023 586907292 981605244 682851475 883200307 880327579 903090031 77700996 344281465 41814226 277368492 531229017 651642890 34945995 185296128 926969295 951709921 825694604 954363830 810603706 935774116 403794450 533777260 281841879 669509796 276841515 887872015 129415015 606072695 661350839 964750908 69965228 959773930 581091869 727587342 18469606 967531795 814032516 935116600 258901725 339143075 186212313 941453951 848635714 990721582 496172722 893010501 953842389 989401360 639524106 782629157 593160063 963874990 717343497 883393531 988918384 998342547 431266156 613697162 660464496 706861046 975461316 993377351 514758576 851633129 985871190 995135859 749096165 827437573 831955729 855987375 34292589 586699876 451574616 945333469 168044206 590438540 308764493 314725678 501696166 621928901 866045339 981546050 585010572 601908694 555073423 832521999 402409687 669685811 633650575 663291981 28937010 828253783 643008956 834801676 430644765 641833218 802751669 843336521 904999368 983716110 57984412 507165492 647340397 675378074 359968809 982336047 933101843 948884704 286497854 587934731 730246349 985045979 591974614 721857854 724932007 844187699 997957369 999979249 776729916 960866115 428996619 674755571 514380217 819030492 496594807 947927538 682147501 784480898 861651408 863771953 927934428 984005786 162415628 876083650 779700707 978342061 181356499 356496836 475477908 541950643 895050566 963781276 774258641 815177532 739717104 777014200 2916904 686103128 350791923 609006916 975918933 999364068 701670683 996132753 775337975 798790043 399137587 472972147 321826006 522741083 129292428 399407382 54753187 918105634 306780780 389357578 221250229 471913960 167245926 169099734 988561806 990311886 725882910 810734739 349959558 652441594 356164408 529561904 18197142 458661391 39572028 973896955 641055440 749643032 889244600 943792452 501891238 529940697 826891702 952927422 302360713 907437299 233398513 822222294 582908958 678795213 364996942 966712801 820294153 928425239 834247361 870535819 830399356 984775521 376122697 546102783 617972866 629236893 936208585 981897111 858813565 914568385 606881572 927621099 96686624 641700782 705810688 888668019 149636714 283326241 20705505 864647588 400873237 989461572 184826274 218900908 389497512 960789112 369487886 913561041 20338635 829512265 251121115 690572960 142708010 562095533 19816944 212324720 467753669 681222163 5806168 519833840 272576330 331763364 140373060 594527089 263324800 379564125 34914274 637805712 989015307 996736132 402875436 991628565 351654078 970454344 549106987 973024924 741382283 989408663 755035684 900571269 988454872 989222015 465910630 767437691 395874342 482363620 990796191 998238345 99475819 360249159 374667426 804988877 160526481 165539432 805592190 820137234 188287087 395980798 425211394 457665125 338210087 695282921 52875183 764927457 486914820 701777994 971845023 991966883 535837165 707402924 906927576 993744216 452683139 589596380 173815457 972629172 638722092 901123724 787478796 815914923 738289823 848562612 459767651 546132247 764832875 892132943 104970689 183007495 298390603 737274767 61130124 260860858 875506018 969178710 536692755 649779899 213909073 653493328 921077342 998128763 562197324 874153216 798091873 992448415 438005592 935193291 992387617 996945785 43877204 68188645 185758624 368743048 393629178 809538774 940113769 963996359 207849754 602245279 610563600 910290061 788575254 820325233 958563816 971950372 443021481 571477761 441836976 736613907 429243990 575108703 920331534 960583897 564762684 666340702 762282077 906700843 631735413 645186053 501339900 797700602 181725311 389529343 408186530 501685077 438295043 530002055 687519090 984096942 303159082 779152865 363702398 896652237 119402256 704387423 575219408 598808955 362129333 768380153 839039669 996598413 850327461 944359944 833656621 962109325 779554989 902750111 29286108 915700162 831595671 920250170 738185069 832750140 555638759 707422947 369198920 423905992 754747223 798421523 614894249 991939017 47173724 312524190 490036684 846287687 399490679 443875207 797454691 875803955 693480285 803930950 736548468 960265008 967384575 979924003 232341761 885507681 22624951 26053584 36140745 848728316 876421026 905974686 990377720 999794998 140872958 289946634 413789701 706874554 341151471 710568752 739705304 918228697 309885537 580939353 351610478 706547837 955265638 985536487 618525927 983264807 79355643 949015475 518386180 963908318 662359035 786155860 231349889 663960083 562051499 911877074 462311394 798318014 482342621 907092964 99401096 271752747 143920214 612169428 782066224 953677486 134795492 406988415 881699874 980348026 626579251 667280474 132038582 990664792 233481764 636120803 695136642 906557613 636682220 640449553 560706276 905831010 290774166 438782241 435287407 898944603 107947255 533843972 51187720 218162220 999287958 999405009 805547282 857724088 870402956 883397498 493501907 844981227 992597858 998514137 254761783 624244854 343550281 829031185 243329063 252597871 737613397 765295835 604360855 881975180 623439364 990091652 700608716 759533987 162987692 243041067 114803494 526717260 756977356 926287570 130197697 745839794 4941811 790943377 851386691 941119397 414854157 596405858 146388066 449525359 371249164 796943152 665859160 771533368 329523213 701262540 563415314 954230696 743631674 949459733 702939466 922897550 49072175 536147108 146983700 167318752 664969698 709322735 581989264 824557105 462286643 672452473 617579684 739716179 714899757 839303756 764244170 793182486 24804147 231688823 330346881 717444352 987497256 994366569 787758566 994215261 199520135 760409061 569489899 867300141 595525372 598939095 715166916 970938923 81649137 738080689 670419067 954642686 219074197 834211922 705267580 772278945 295289365 897238261 152917477 180193486 259269150 625935818 812643388 822595246 985805600 988744047 759827117 808962165 346389084 851649970 410677122 642444704 620042004 741592040 606743597 943597921 18011362 463264929 312338278 622718356 832819607 844523861 641189353 951554874 643494960 895161663 440473676 882964793 342795314 634464048 221382986 604005902 134783366 402331125 271256525 633488959 717699420 864548420 849799189 933517906 297671343 987663164 135128606 390655913 202591168 411379028 17182336 988269294 758463803 910229217 385308774 565006847 961842523 998448066 763672162 821642748 804877736 857758293 61973941 304364293 805981251 931328048 858205796 873973748 106173957 697985848 631382780 665030865 501303093 957083754 88048404 649608131 682906240 817549190 149741732 743164667 704467189 738163851 442723901 954276570 657853339 828555725 654308053 889183734 142581341 437097646 241024267 867601873 497138600 675979733 927369509 988284965 50347994 95548796 457437725 568144450 852278489 937556791 745800585 910998337 420625660 613020450 380714699 461327212 218087082 822212235 938608883 965694837 814392890 815690457 213751336 254204306 825601667 866465714 484742264 760519238 663498097 858462119 821949474 874538351 111637889 734436469 387001525 595732682 941783398 993648115 381669271 510185494 638991079 698324393 757386417 795366750 892500643 983892718 645458710 840791548 155409211 512858001 517361891 719181663 816854384 934484019 147672152 895460900 575413093 699244336 94721521 746728673 176811430 559693098 649567981 697834213 632981461 781681505 572394450 866588282 385191741 497714413 420158571 642798720 244993571 358292169 396324683 997682849 209781763 619107590 939815054 940789553 21370809 590965010 862021465 935545972 610715308 682467071 915218152 932180483 963077790 978418274 846956436 982153020 238478811 388376648 704013858 822187343 393474513 901189167 152305080 211317931 892649437 966202649 469140626 790377881 279163710 344404589 543560525 605443394 956349080 968590328 255515359 872267835 130155781 304712320 84802275 111383860 872323007 960852388 98735396 450340046 777309473 935092755 72834015 803413535 489714692 989411521 376944424 618243801 401965823 463897698 946352162 963650384 811461950 978199343 679154010 739777382 590789701 837739882 950344127 955407792 935208696 991999743 93033827 504506476 946369095 951953794 947643513 986565212 117391014 517710396 75806422 210142129 360858540 551147990 389896883 633379037 527716213 647743070 753676275 916534075 754670574 842837378 851999698 953819868 428319540 863668089 812125050 969646797 40364823 886511323 859920479 948011902 542460956 873952490 920149039 956703263 455979733 753505303 956540628 991012587 889095391 894702124 603318490 894066753 106986487 841072263 272204238 976402788 126095023 172061332 268275010 553077158 31535832 466692311 68149305 247794737 197568815 770966589 165470951 952461975 778505328 913458928 241436507 455717571 672671417 852648390 117035221 691662845 319774143 649821014 415374562 488889553 200498779 980560227 62856543 140113174 711481737 920321079 236543956 391542828 932288433 975199321 283594948 995627864 981572533 988260242 462406955 473476112 18212390 783611229 813735844 906676128 177010524 305767979 162055623 871006393 632185054 745295443 736604421 826803336 455562880 531066514 660038257 746774828 601407271 892374102 167224497 777575141 373334913 654781484 370864183 655211248 424586901 982640134 427469115 785001002 58880974 423845809 907366751 940261527 779050633 784146130 197964496 273049324 66631813 416080890 66198163 225398792 977526243 991921279 25906813 635401743 977552113 992721188 921001694 981261773 184824009 905348032 700366565 760524406 85817939 244012805 23249198 309415391 45885341 348672059 550246491 812050694 973382896 977491271 620028655 754711523 161341826 857199787 626769275 932612305 236842455 733857265 490556058 708433254 203567267 929554756 699505070 705076754 881970537 964453073 69199318 840522492 302102507 778481989 629964306 739840799 177353031 368010308 662914540 884224399 429544072 555704455 73412860 209810762 560204249 633897729 934990681 974507003 174476048 669054135 769818349 964973900 798823351 966286496 471218888 823860200 655610232 839215994 297678618 980406297 886054709 919995497 227513918 396340621 240165909 567709933 747765712 881023926 224178202 736390534 120471506 654540013 197635122 393636826 368780921 407807289 410896188 812807638 287049121 866755167 576442422 987144037 885897576 911318979 870204383 878735754 886747041 972921963 410854448 655017060 501856844 820055237 808516140 873585965 775917385 810542171 503332966 593806817 686292016 970504357 222796965 605024805 751768358 831787175 818124710 927390200 975428975 986705886 523870002 689431720 518507788 664412024 852689158 929028446 423390243 769274816 541483836 915700125 3937185 978104732 842007289 961706922 158660486 699801071 382008032 892239659 95780308 428536794 438085018 846776859 343121360 726708484 485278688 648105103 288962384 625693742 324140671 388288238 899474093 969245277 482024244 978308127 487379813 559185364 41280879 745799312 296622142 683671109 755597268 770883548 822260560 855985741 223141835 822542017 968377603 985234848 564769721 725475852 805903603 885093893 262385133 443794665 362870005 837236822 835240555 937964786 575352260 765675454 572373318 875675909 387202981 796373726 564455726 934972389 700153744 948788051 79249610 104362274 58871517 372909012 535860348 938427271 20279733 791487282 466225742 914219974 205627154 468072648 630709001 724841683 204628187 218115708 839422195 876407046 698184934 869155169 883339370 992511365 683132627 862851457 472385701 944958169 26114979 33998196 751311868 927744301 411370410 791501785 318493390 960683202 574936944 628124322 26943537 980207666 137003209 546245545 350416710 764676414 136575235 437106797 109983705 254375407 507786111 966533302 937170474 955656723 516853791 547405592 297964915 676887975 243918092 301272953 915810111 966570127 244805251 526488000 704012917 977735488 668135334 893903707 518191963 991877841 24331674 294350637 308753640 759233639 739649073 796176890 167151732 765582584 283484899 389446157 960156378 963734187 182207335 393430189 114444099 823286591 732043412 831232618 676542092 696071569 847540363 998549953 782097771 986375238 996204590 997115014 953706436 980664899 872397163 905819464 947373240 982481256 507239873 531910290 546766399 661396238 861838423 992022297 204852959 985206950 463897727 634455492 848018573 996401752 265703481 699013673 995221692 998358630 599743168 918042634 239984327 685429879 366860214 564247539 1233407 761031371 936665248 966698708 550640644 780090213 111448469 281953022 713379784 931780235 664828354 842048396 229454418 769675751 754561372 824162214 393678743 663710133 556483079 726346449 696368289 996448705 352130059 419855724 344119724 432415360 131482027 521519943 205438712 246793889 695555799 985575358 667653782 742547694 421070833 689877489 740922150 978200688 797106525 838296535 615851462 939103611 739297445 911433307 705013602 876735089 92082608 195780913 422685089 836031365 449612580 789923821 653021623 762865421 709651434 952443048 109298130 316483780 967807001 988835117 332619299 404836409 675235538 986133773 86411067 874627159 626723626 766064040 639965187 954781572 895327967 906146981 521205708 748324248 20220374 719654631 525047106 525990456 305657453 907336103 520250381 891147980 291394113 380919725 328503668 978150314 864130602 948408271 812543545 964998898 77250044 765461974 221343576 555608617 287299160 944075728 379406955 815072813 25812968 185746903 618885998 831400520 287100526 590455905 410640203 416854284 412415396 998890967 443949003 490041689 699539602 850701629 981965926 982421778 319217378 700680097 867171198 969849619 738641755 906289317 609492105 704852873 920158514 975061916 627889325 823654406 740023906 993487626 128548763 990617157 82884466 886034593 967441625 974228701 165245642 236025799 232810438 378286461 863258004 928694352 617438922 918163070 102218337 827748070 328503240 536260406 260417610 521282931 956156559 964786242 294235587 352485066 138327367 995130548 258975072 949085273 201715242 572258402 964544354 964617746 182618720 788852308 124724072 766240861 748790970 790412643 243552353 467987274 219971207 864899814 227473481 760997436 797511919 918194953 318906667 603706270 388315434 613436483 189927390 759986773 792911367 959629938 115257697 733670805 178355438 542714176 454884106 703776690 421843508 937568731 404048066 507612051 927194694 959661691 394384223 941773596 79516478 907471973 188187322 230004782 453654731 643121695 754392240 926120648 606384610 806379698 908820900 935135785 836157180 845633737 138276957 994596733 608370649 874810059 691238198 863414133 488678890 522648330 598224601 834188886 19010191 28915801 939326722 988188890 512126912 808270193 254961169 630175942 665185504 924838681 124418609 548936071 854616717 981098296 317027623 486115999 575830536 746762733 950246029 984366028 510463556 590686285 656598881 718907577 928546436 960553099 708752640 805509812 874432891 937152556 775419772 800737324 298246871 619014550 414817801 725139685 650371902 709636817 329428603 559330661 923459452 954793854 676610637 813144924 674121983 769447267 220632265 649982412 395239210 626274228 914843194 975829730 469603067 928177582 714381291 890208624 278813919 645611166 854038391 919734758 933585110 976002857 322661774 551369664 841002665 957580840 492021610 657227254 3678416 464325944 398681666 830665776 279281384 686683758 648793606 724575395 193126542 932270703 985183895 990680629 268118195 641972158 994652162 998664421 69300910 971879716 451659329 493154887 581549536 931842908 833093678 901217724 498414438 688075372 290716632 620582689 229700120 705655736 601269252 814365365 616226197 893081070 357421319 738423035 501829665 973548327 795216606 924139610 415674922 422921879 2901048 134486251 804664912 893017029 49569152 60133415 140053237 227457259 778427650 848129526 362743030 639278175 402574193 655399607 173118540 844330828 781488406 785087129 885177778 940465632 114813999 552682101 516743011 667464034 295147805 504690809 865201599 891765894 328495605 657755370 627535027 838677044 914534708 998963130 736889766 947722247 100642343 470039779 515605226 643993620 931761559 952138834 142130750 510619073 336529107 945963925 463297918 999178166 573604090 943493046 14477489 197702988 348872517 404490599 996807489 997691448 506783701 933236249 57037785 733885408 700875964 963238529 309288666 378151807 628322833 944556802 129565586 527667155 507546153 955538665 926165 281834512 425316637 612002266 116126363 979215058 640108377 926583689 198699176 598163964 59140436 388295888 158926940 432029751 878121800 919477141 193567788 970355587 834945150 899315079 743884697 808175694 187580380 236677346 491245657 849380148 53850009 233133123 289227701 539205300 517974975 682122675 795788825 982392179 474065297 980671924 30356390 703359035 255167749 370052528 514692543 609222742 612022176 803440433 428470343 694500713 68313171 736031148 239774413 596234839 549751116 688588612 844538936 975963416 306651548 911396095 714592875 859631842 290585992 394808754 196642983 976397356 57647993 389059821 306620397 857883990 862849262 942380247 554280971 590923005 647940053 913950738 392010289 766454391 552489042 715302801 241974632 884516757 993892741 994443320 116102058 139648505 22802452 946970301 456478224 839897662 959932729 980798576 819748741 987201634 119568263 344322461 527243220 942496931 546570293 600748526 123016949 373059859 82047383 575819397 622639246 868804701 408663721 632131597 944914958 957238173 692769897 940069531 708637349 924533558 509916204 710178130 937821135 998569093 183619940 667949067 52083713 830677179 428906665 440032666 889378532 918747823 349342640 429047380 136716165 878965223 989968498 992121597 944261303 960559941 925678144 961037926 611332672 954265251 256068559 862065367 855931818 919691914 343490065 639371854 89641187 466098885 548744430 922374008 705389844 977761658 120072394 230527061 991794795 997626529 646807091 677566994 129185323 882845298 201832887 449789107 657198998 907835421 280811654 768551014 375666604 390779894 241921372 884294942 118690649 762635029 48110692 398841963 942227786 981553836 385910465 560032851 896260774 956602403 446169413 481631246 556432535 640517732 600854240 690089706 172495270 770971441 867636502 942429323 668393853 715764670 171740075 482387411 928297588 958864354 70714090 647654641 323767637 333368602 997357784 999880659 269534589 614665460 404681766 497131514 931992508 997065778 627130103 931105020 912080438 955657660 77229829 334361620 516524928 830913240 876924612 934025764 638020351 645156469 331501412 632704341 69393660 374344531 680877351 902764367 308534621 439402326 293518648 300226174 162025596 649935954 40267604 331499091 462800058 607211488 482175491 619077849 909223621 954220246 450210371 821597148 795867543 864495291 783138653 933693145 416710626 479204267 987761297 988541266 988576756 988944236 970698969 980650095 444307636 638225391 457018411 807977207 867814346 896568587 863738644 939766236 124062464 276345842 765512664 984760744 303015720 750233272 194158318 806764580 969734217 986015237 730016526 968497554 361187657 940276363 595438571 749936505 282486602 875607116 195982865 679349245 935302200 971035629 360039869 802153740 639967300 785656522 745743834 793556932 930327223 994059017 452259248 529829902 429829592 672500126 672097133 856310717 134264533 620345051 191968894 882228214 206948618 381867439 94650363 329696847 289534702 453607747 602773441 796828384 612619461 630761127 116987752 879483524 530567505 638065827 768758675 878369174 965483994 966167459 380380459 408180989 975862310 999579302 196632320 778765529 841088078 952954821 443256996 513056154 100358964 712254224 212923639 446217802 864463163 955746341 155326805 915690233 146950129 172940219 354655923 890019031 831230291 972099468 922042735 973031612 137366975 443289900 950320960 969317757 529987954 923480300 129912635 289638441 60419435 733460561 613557984 992107458 356670213 503856804 7489155 694743050 261639655 701272417 877241615 927819081 732793048 775140354 218941207 517140204 693395850 988587308 468867298 839707769 450327785 659670273 418450017 481290333 838412594 895690662 11796625 679888516 336247260 853199541 716615983 753064491 431434482 915679810 796146882 799860086 336887295 921779483 270883202 317466292 529820110 533159581 545082030 651594627 60501497 727313712 583069712 790588487 194490741 910416170 902243990 930542470 455780875 915932040 282130472 788480287 272677628 584283539 928160602 945146550 795198004 861151777 424270217 641771086 133924653 245913202 762661594 769669855 676678292 874461662 857684737 994158862 244556429 435349559 957891694 996851472 708472189 976724484 943900326 948237622 72133610 592136839 126260825 366935359 207295810 725808653 727621248 811262627 720274998 802587915 687275906 761015182 303728399 840230956 310040488 313593858 475344982 847277619 30130574 380360727 284431784 520886290 659214236 791766058 137517023 318556374 945055579 972899153 540224345 907790922 568363005 649055847 968591550 987498261 605433163 746614777 29054934 418890007 777197155 938114107 777060196 851758036 54345310 402832891 81283158 376934445 746215865 863500598 560089383 828711788 372872252 566145034 581950043 693133967 463831453 711850279 387370299 993822531 645841327 897834381 174578720 782400729 746687708 964041166 246042357 431404180 344843305 930083009 751439247 773561619 631761841 906774861 355242256 906289166 454092109 578946339 758343547 953433041 93551734 969605914 503945533 655356215 15057927 69465471 965879543 981252158 76280289 806220744 798291713 810524351 315946153 737729466 58558891 487600137 319281466 605243666 62911776 353228269 304544920 964102544 774104901 959255061 711555864 736449645 370020081 557403487 507821135 765150500 909174198 986003078 385549632 532889452 458253085 592080189 680545880 710116586 310404073 552691037 95695011 620012610 733815975 898085829 817692519 847168905 361916784 994201246 837158783 868592789 774507959 848047229 99860144 320279218 163245585 203522864 164112916 776109293 44376552 851013171 629942251 704963766 342784761 578856742 846809470 877246974 933496363 957185695 667557619 739489470 97040768 280217545 505925521 553747996 619349519 942445348 147754122 448695227 353152657 905580925 744034880 830973634 626845594 863148316 238897629 443612089 456621609 775792910 562936889 568049831 37273773 638608852 596537592 771544487 273046567 744873954 663149602 781244282 898456213 970240806 348884723 730931914 248862679 567081799 78475081 472659560 390125745 631298619 219947610 347806060 627581997 859466876 461625558 675898928 979769650 987406436 291836428 761034446 893289778 948007160 62308771 914595973 828419056 848831492 486201416 519974391 130734692 695117786 495833982 708293414 789654100 967221625 332026687 337661573 947267681 966229410 373629352 879267683 134669478 214260449 777450388 811427790 565418423 655976584 509704164 725127408 712344975 906023501 493120534 777314476 561108745 875304150 308906701 455617024 75739629 616841331 769906736 784726124 452699063 865691239 881791265 900425789 606149574 989400190 854866339 931151227 510897110 515687527 669983274 920194155 807356694 934308488 23235670 886848994 44166903 686564915 483677673 639498837 190191462 565781915 105700007 294719774 554284238 589330860 470231459 914915708 103703977 563400050 118305970 982154615 833108185 940509386 525929125 728177331 730374883 848381662 108807776 474655488 350418147 689334039 739463325 855423429 951864907 977868785 757592072 820236048 552786751 883879163 480288222 615151168 827074466 916094956 707008428 813311751 72505517 755491085 572965569 817233021 859697758 862946647 421308507 744360930 2162700 273405266 122409378 476754205 536626382 614060522 831074125 944938361 428699207 569739265 618128112 785347111 764477729 769019323 194753138 838436676 857905694 972233261 981832193 992304534 207275799 911904228 811917864 912786196 851845962 884713777 479930042 624349374 143583683 693304326 303187355 752225626 71970902 711489779 948504060 995980512 117708568 862697509 449378578 451928027 905107982 953808107 765777501 980083837 242219151 302639664 765754736 881759697 570229007 591635231 613674421 892977391 754344441 837299422 496379885 837744603 270854637 674367430 527076006 582578006 614066703 925100141 45867069 54621443 222771403 708891168 758348456 981302409 704855121 888456893 146345207 168572769 967525222 978291235 12051123 824509174 439224875 541468924 238308908 841099443 69230740 760873539 995482796 996003619 386151660 803199505 278864359 888106229 746420114 895005302 941687404 989797879 21841800 585717681 512664420 601405571 477049387 693348026 326668178 507617743 566574536 718794705 130550534 310354283 740511682 747388376 681427356 712842806 787357877 895349916 254092219 569978713 858401530 874460073 708913604 963113107 973779456 975629311 626995966 851069337 100295305 719800339 259377985 744466277 397926279 967845073 70565433 201758835 860961024 872833516 72728737 869882161 883336510 935551576 549959447 699402263 764754555 863193566 832313730 949910238 312068442 569895884 840454169 889009493 977739053 996715215 331446651 542732113 464498868 892302956 294419097 430559907 102144981 455445922 567469522 957060031 177794179 200879669 92645476 539745615 933002018 998500478 549798071 877681412 215527956 945981583 587894346 970429136 679900855 793878228 120252886 650539059 216503810 974474709 177993019 306819147 878489526 991204391 806850875 878556939 735010385 944229340 388669279 934190842 611416629 911464388 633953646 678065635 602639913 665302917 917185676 937863407 565707244 882212738 890202053 893937506 637066221 977540346 907131958 935774237 586813177 830869953 586275743 993739187 298322711 352710053 211317947 548057467 215775321 292085722 366898243 550798589 463833331 841227800 188290875 891291260 394937355 803824654 419709799 487576263 407717830 438099755 47722 393750565 306527738 759445336 819105193 974771784 819080941 967211497 46527582 128791037 154210323 843248872 977906377 989383477 549179942 994840366 187521112 469412422 710208553 790165688 661166173 789877604 781396052 914657354 153649530 390250687 701490416 901899893 807972856 918819922 374554247 575281400 263968496 875696861 106846589 705510103 334080294 860248105 32112512 595732862 616985302 995325113 815812369 980293697 902942648 995627473 453649515 606464146 558646618 596900022 58394899 69817788 776710367 814222367 623844696 883517345 238273951 755869316 959844639 990720518 693783612 876781410 589173251 781248954 747886844 889273465 277456385 907187756 790398215 877463378 336568860 346512135 916256679 999289841 636288135 971747056 340011490 979208290 173862459 528884258 701009896 820546007 451463882 477108067 409132483 685660598 87101886 170080167 11437541 448326089 499551566 668995101 703089388 899496030 976359297 999646335 682206807 988787909 542187945 816392907 327038482 551403656 843205406 931203786 763392657 876712748 547730844 711959337 666988086 903956168 122616639 275608145 303827939 342108386 411748484 771414011 155699050 700963323 551144905 749306881 666863806 957563614 227523471 623704672 210815909 346766085 979823281 999826108 840840419 927378206 224594504 335965715 12558701 979326351 353644028 426762429 106169873 847853782 586086155 893284050 886830009 920001284 389786391 805911052 435304623 846415005 239868621 943320350 635576504 640149029 144349628 519463640 114193092 549101833 145381050 632260878 403020276 671771598 50951707 273725716 43241834 603042350 898375140 976606415 927313782 932111111 277572682 345853008 51997071 892796701 404947377 925944931 781899664 968029291 540020134 942280721 185065367 443925349 455962971 535890843 725744989 883332895 282056116 713040359 781770841 958639455 753667266 944691755 9207497 47930595 726874874 898539115 187520289 412668892 855234387 866128083 325073681 696385737 915809367 957029024 318023001 333467975 57792798 515475117 745431742 882245272 280416292 988181296 795507355 882273513 103041572 207569311 705905407 883418159 395961508 927175630 214633996 577050897 932981604 999857704 578510189 669464049 482023253 689473423 894338873 997471116 721064552 890797261 663077732 738828850 585054896 862867763 819163349 850603850 330168122 649100795 570668307 777131375 804360273 953884133 340203943 447744520 759983481 793810197 932525621 979562428 229100727 913818245 794205382 861278871 889168177 981758060 824558429 964708875 459503353 674858087 599206529 760253804 256743443 623156859 129295313 990359605 113538170 735594997 413879600 443615082 668369607 804740713 424232848 618791357 446494036 741644916 764652341 885611364 655943517 670331046 294676374 631257895 456073549 778988949 675638544 778583801 692523166 868037818 657410623 999594714 851093119 913612027 727095284 977880784 109984894 948086289 435290339 447672921 790922545 984763716 405748522 535800985 659874086 662371060 604677448 872378349 131876841 972152669 687086317 890805243 392409626 970137084 654489022 786246631 653061661 811325095 97048521 561539432 978305863 990259398 649495506 979632424 421019560 512437312 671030186 917299391 356464494 576243796 153107404 778074084 25741412 715119172 376965640 418464055 583273126 855847077 39507343 948171833 381563730 772080514 390681614 912372681 483836801 832950015 353037464 387236426 751599705 851476412 522654655 702367007 78501168 767466246 983523648 988752634 257957831 933815455 229375461 233660264 704693141 835880321 230312440 336353462 952557502 995214490 551978231 563757785 633755789 965008493 562418815 719289122 312679061 648513724 737429208 835758528 493370287 512857930 128462450 898382699 296481940 664559025 757130333 775052636 870666944 968601783 181282036 839207906 363769918 464722585 989975761 993339699 945002069 984811208 128794874 680217834 155239606 831329617 499887763 794133132 222563580 450254090 531622353 672605289 664631457 698946731 909449716 978073343 952190904 958032786 197178564 737151472 114086699 597906376 585251774 841073575 605799673 711588471 218109379 707938457 241022253 586307467 900494301 921110079 887274022 994789010 875172049 996261667 18560399 534237418 544798889 653206767 383664948 852388134 616897011 964460761 403401608 805929283 528117470 794516739 486882820 956345176 958711675 964156450 391408206 499587738 820063535 858562524 388130549 799827763 384854447 976090439 605295388 806202860 829162618 896923051 598335071 763819277 655438222 742647510 101446999 319177737 308825520 635284639 229777211 523350568 243522495 517518540 237374667 439825101 753455340 972377089 784710983 815891670 6797517 537751528 311067876 736483531 432150127 811545576 678241201 975166927 253036051 565799621 608911422 804826339 614112315 699141621 914244988 979975975 43886270 543219167 769854732 770563753 110188926 984243772 718848492 862328442 390353943 846060704 636204238 956157057 336166710 894432918 863477748 911833601 671092994 697767522 337889860 542293439 742637471 876851897 802699650 902330402 879696297 882280209 60898921 696986377 125899081 873838939 854259705 991164664 630668767 830103204 318877222 597779632 258613679 582912107 202683127 460965856 447747762 612331995 164941595 913246513 673987347 890700011 512629331 863894926 767370799 926080013 838753096 882397995 530007807 962580570 604173758 801070401 143922221 214274530 220388931 362236409 869495286 899994630 943468475 944596527 271029967 395102500 537222059 671259557 161683083 904062156 721297952 828854223 894474938 935402087 228563384 508651589 44523673 175290387 84730276 710157121 725697648 775348873 854685077 917409005 421931584 954376368 873891328 928471720 248773858 682145203 75922119 252070809 501920590 686109059 559908410 999862990 53810625 792613290 667063076 869181375 615939364 818396853 491999855 570796632 32096187 218379725 282162618 930713215 848741062 910726245 336111956 473444926 822776342 951202568 862240394 996052188 982928624 988335859 657314014 723740400 174805243 433914577 53631596 507529050 708186531 886604303 473814960 829740230 375150746 549334420 901822576 984225342 45466415 429094061 800701551 850173068 705298498 747880878 794799036 878534525 588007134 725594788 443003542 646540134 734392931 885198449 145439191 821084077 230616551 863551436 132839702 993118377 709357057 744758594 797754688 950813923 911645511 985091368 766634084 978406856 568540445 941251736 855284243 874018397 497029738 856807948 545482602 625605873 353286634 369796325 915246350 943656873 948477129 948641112 864967440 869173553 590591014 836177738 538357403 986286678 374015952 399770376 681562482 783500295 558817398 745976729 674066846 994593734 686879810 990804567 418283586 929106863 422788044 892063113 906301397 909839869 991513888 993188443 490188253 716685970 759371278 971548890 833910982 983963969 595528666 635204209 772743545 923888599 204302127 897174454 160034533 276939377 37150428 910857847 374997067 734223345 705075559 961899132 71277097 153240537 859249916 944205864 384873945 537964316 613418557 731437396 785309821 949978852 451763167 805737541 667516604 755031468 204469037 713802274 2404149 541709763 401124748 966975029 730029394 770110420 458045198 664373432 742403435 827777976 10515137 185651097 501503462 839167568 706932509 777088448 60250410 182426725 863089557 947360482 644404025 677105552 939624498 970951379 384188339 731714258 945650224 995913268 606250583 944198552 600607507 780338656 549115440 895566618 648728083 990667620 732642186 858928033 534372395 770662855 55229013 455163692 843799906 896315446 599595799 668968759 150408761 628471503 347565173 876146630 208595682 922868307 862879190 978965051 181193718 671506935 430774158 842263797 246680561 640301619 190535916 192686984 527376983 981724737 411275739 814124916 775033180 982926626 603548877 769827982 612046767 695362858 122422023 850028389 727399600 798070759 447268043 751151943 37862435 427452589 325603709 658001694 755221364 995713692 662338530 768822996 951709802 989631753 639733165 660756883 435565659 854992187 259956379 671810672 745659906 812598695 11701800 285185987 217583414 525424483 700266669 778572253 752029972 880890841 576577444 917096149 782882391 856929835 734883822 962789195 977707320 982856922 526266041 966208599 317065877 348230180 856409389 931971764 314156874 495905050 689479822 793409059 155501006 553625430 930683374 957538489 468365118 727007240 292402831 652094429 325905081 962049712 17243752 837016336 696060484 808689879 538440389 957721433 208361774 775348137 264271103 284914399 229302949 677695947 410633333 846473129 857402183 962829091 490275037 866598213 142984074 824257242 42034008 98648184 909084475 966881555 626053676 844103422 481209772 572062359 835211543 875254250 11484264 244307229 774124633 901240241 574107766 675464287 747380782 967046997 330249313 609117392 904350045 957009881 44085667 208998835 120116858 285833344 604139976 707165062 809136559 963931486 699616719 976877333 694837494 775801707 518265966 831238336 93278741 349774568 508285025 901489602 703141955 741868817 884623891 933086276 382217870 823735882 751154702 767600251 600530267 648612256 873485258 945259659 91292681 238711901 869761632 939388718 43325215 364182003 52013896 270072037 460746011 490298163 415162811 752288342 692548809 935791898 566567090 585428834 481356671 546581305 335575182 704610781 33024279 63456973 766021434 995464977 126148096 482570996 568038712 837182622 272411912 679805443 799416566 870698923 825655001 938692735 521421851 909654789 790926996 957800296 744660246 933512483 221449641 653657421 800631791 918832502 253881096 612893348 735198364 844341061 629891098 730980348 712899796 796335418 975764243 999290407 516736017 650442597 136321818 838306055 633242097 986203699 271745212 725472249 39672247 375457551 222904402 425377609 690875468 815406698 504148935 595770903 196134369 680667764 841657493 963554679 652021471 922449949 398583241 893873593 372372491 434584666 247143191 881985875 858794079 885007623 918014068 977271694 577942038 733754625 466016728 488051792 309130800 446196001 401993238 418957823 360905986 749372624 53899289 955690799 923437082 986416722 303161768 769650599 630553628 826445215 26747271 914688606 417918348 964704855 495823772 752931980 101246701 714309650 481017452 552208263 940274005 977195562 878956819 984982621 43304981 102340556 388441950 563652841 351673884 742719551 848159927 891934463 69871344 967842701 601286391 823497523 405666037 490125823 78599299 612650089 791028502 806868841 927103125 963905983 672320231 816900549 177295720 235075714 363046594 617948394 195959217 395611505 660559702 901962749 925001246 937708623 143780510 566049267 961455449 974503271 191976086 226191422 244844692 695673305 842524038 942617938 606569108 880440213 708339736 972608455 378204842 630477470 595917701 612929766 205902129 810937401 758141893 875106311 660537920 739738637 512672728 570705061 884949442 982882797 103229850 175351175 440872520 509189976 525181882 799791579 31179282 665199653 636817899 906320422 543885569 987831335 513211590 685776820 553692495 974594578 370471222 608860515 484267897 933693574 392835738 788091333 626404183 987801534 83382611 571421570 466729814 704899020 94728609 575414067 989401034 994383874 44460308 738737789 995858720 995902391 899141985 948401172 323685542 919685684 198921408 889918916 85319479 300100207 376354835 834830604 251160233 914558723 12199211 433486087 109085512 532290927 102844482 563395124 769032838 954233254 141650502 739754342 386419115 557954630 813049248 822766874 224826834 928449930 377216555 400064718 926252304 937635040 233159611 237004956 265966330 268552055 970079779 993662745 906295976 907063145 807808575 814023822 867151143 991034296 577725006 629285521 829067650 900088656 396761287 689474604 584921366 934970742 397051024 952746088 732221792 849467086 172127161 365223250 205269746 976385954 130882467 317207851 986227913 987659748 238797054 259536382 926391006 993608577 747106506 996476589 556485595 612474188 548363009 696457198 233351438 444233055 424443675 581168990 449752639 871045546 201717818 526013265 640034007 889340824 629863161 748461577 626869712 955935020 718794194 767790688 922981659 929539623 827993200 874935194 795709981 881239063 966678451 992501993 141136489 991675969 734777544 950839169 888549937 950845092 662987611 876024247 609785054 715250762 954886284 991788156 161873334 253803179 266769602 584719363 273645411 333594548 860453549 974769313 216714092 507553749 752155536 985304768 25191008 721396889 455286470 904473457 522646775 776890150 187901871 956560845 748951357 827839831 575487718 928403805 865478062 961869960 875405157 945532803 79126421 605286444 443310105 716524158 950482152 954262100 883260659 943339179 145804597 969479965 148748274 661212158 634994886 785873771 853484105 886104344 276310735 483661011 761589829 774847891 14211284 552835513 963205219 979362403 961040735 966240661 165789526 960792552 872184774 874372045 327434694 445179890 349895825 970572834 409063288 658239558 833689445 894599810 774419837 776741396 266784143 953658220 77291376 242952639 99133620 261784631 643080529 715236747 603121641 691040778 432944467 504497593 322745314 628985942 535804726 690673096 267885214 291640300 660761321 832559855 220235366 235867638 914078912 943881533 603281180 821703267 489274684 964414289 296521932 698666417 520166508 550077399 856058743 920348338 376065912 597247791 649777443 963905320 925860323 984562489 554951004 962591521 302500810 816450483 474858614 595690619 216201871 454712114 212430303 282800287 250517170 500675869 96017223 855098694 345521991 411123827 233104731 241297328 89282348 472810975 195987294 245965667 127596547 599443052 54914511 611730072 836039402 947584815 480783916 848806590 683813869 885160136 67091591 189519146 982034098 991752632 732444378 775754507 781963213 970158198 151181914 827517057 337756796 679337394 769968718 893814889 783732735 886307904 35662775 410227179 125286951 885297953 438732199 452533185 171775036 322347404 391161229 876456712 252041436 936429313 746695432 821937638 782759484 939464427 313187561 716725396 734477422 740020965 804375047 826745080 780242667 793813042 360989203 568746125 144493309 214182462 148154999 780837834 717520923 970193466 244656969 701398959 208613340 304975733 851997248 993975356 443849904 656457611 250803542 260713744 505801929 951741727 20455909 556247759 456830831 834259321 335883502 717524682 819936373 938524655 977919292 979218767 751273885 777920667 30628559 739690203 448864258 482700788 434347995 844452701 308296002 335691257 949020243 999407877 759068100 934621324 141163146 715355402 64181830 221641888 409079727 705713119 191597266 871404270 914983704 938782264 139470807 863048818 129580188 230188162 523693268 703346839 797528001 902994222 639079832 745437741 290965121 778276108 356957736 825002530 655351403 711760694 132825038 151100283 268013479 526171337 133971844 935297239 703636384 860909211 349627488 849582318 4024078 862048652 99309948 470175099 516816772 829302154 817147451 821724220 889136333 963419188 746026854 822212420 229868578 568224288 920041261 969733279 613228665 690735271 430641859 619676635 583304976 974144512 186666983 931231632 406288636 753503004 774292877 989723903 772889161 898064350 780575317 859614163 857375411 945627796 169940470 762652671 598099649 606807227 533535366 621338012 641852538 647509026 998616155 999287604 138412742 289956264 415104026 971544838 72435656 951129475 840040965 908743999 973685203 987218306 201317618 945258079 382764790 628985077 591608294 641221722 231114878 323741714 478884979 531988400 498118776 981649527 634486500 936750795 210480403 381337640 870343176 963269152 853606072 914772426 247033944 733469290 953718326 972182512 665772251 727863958 299924673 768715015 647042452 919589311 613529951 769626161 10107311 66112166 693766469 950217558 216193609 961994239 945429017 949010628 144003829 899234872 700814591 771053372 781982575 919614981 641732842 983810570 585502204 656921547 703848040 777416966 768568458 806300698 894920043 908650339 713105079 844658745 656498743 676414652 750101710 924393566 271999143 397082028 941364254 944559918 237955505 963528525 608994207 707157002 953621550 990495453 863022146 931116103 587210206 597955093 800176650 864795475 73391461 332779781 646973425 839095343 663013543 760010607 391526482 924485215 782276680 998918649 76658901 449499352 370792569 696106598 571986406 947423778 37193704 841896021 358501062 865951830 191960435 299032835 769371559 943716115 697008277 745183341 833286006 908241393 724043211 853493234 770200246 905868025 460146988 557592574 821832089 981905396 323031408 817580665 139208281 247893257 896423730 908708034 899456087 962382783 765666086 895531943 42018873 279161684 293034901 360787579 269983804 598330935 404117078 944069720 84443557 563705460 779437168 911139823 911880054 918992190 608814829 636362563 942536346 996383706 918935861 963289973 328387982 549392706 670787892 964411880 869129909 878498673 668313812 883136278 471766992 880614093 382067960 932591406 413548352 522625569 473411219 667361994 927444928 927921037 631653034 790769328 512358819 562944810 2686485 330632081 566329390 661014272 220848563 838761319 229070814 491973490 528593914 569164247 761449266 801533526 212603014 215117494 647404427 801012213 61509308 882704481 759529013 833358381 266213772 751236993 493132283 766679333 349456009 679268059 942937248 994403089 916258187 923195189 594283987 742309975 700394594 926441687 936916142 975666425 847673268 850130333 739993283 861154929 912379411 929020690 489900526 955072769 460207529 691557912 42791555 511162646 32772593 721605464 172907646 940302937 901881588 955168310 86208451 340673595 481179394 763678252 588623104 933922306 10263207 503075199 73949178 599814754 426854104 674456466 60574063 912266764 879852513 899125792 27819488 514239152 965623291 997129926 968457920 980278306 317300665 653497581 217898937 802728247 18946666 942446991 881841968 983637404 720797773 722046287 717872643 900824034 220694253 662504130 413921771 968639857 152200257 458730039 29979181 841503610 214416989 748801663 94838755 801119740 523722955 589975307 601653182 738370227 201395754 851983780 763407466 889022932 513357449 978395754 507444472 944476232 923387868 926389259 201204895 362327452 880237999 935487399 334842827 571982884 944492270 976268617 354918548 859570003 23580198 998003570 451520975 933796602 819852395 899686701 654488894 993795762 51523500 823074831 48128846 467843823 945921492 970375384 916758427 933670230 701970983 893597159 466155706 983505352 966236604 989693874 206960902 378220469 398630784 592429945 88897647 494982546 800694805 863848280 629986802 957909275 701810963 941831176 481698358 621851630 112362506 370884883 456458651 519008320 421806063 491882171 315517599 666609433 929813812 978922897 287331905 525890157 761548054 863172015 222089978 820549459 842373000 847527753 662168095 970201830 283977881 788887887 675560789 745505848 849127012 950585548 321309825 692903007 808482777 819634824 836328736 986748983 230725388 513846445 808874104 922117910 896628015 901587051 568197184 887482820 742777050 887795052 389456485 885682766 603903420 776290669 118482448 923859377 618247618 940231144 409602826 621802167 131938375 230990722 309027115 909797410 189788742 650518716 335946396 711107241 903854393 952877653 502546579 998359003 349959908 797970938 733697776 848087523 14239449 729428606 839106731 892675165 516337191 670542465 842556823 926515298 402967209 668390926 330619398 655774844 102333358 214974665 737286162 877047344 721831253 796448017 757652766 871888757 134530769 686669429 312576392 358471615 290067497 649638298 278767739 438255037 545933289 673068997 789959744 901540379 616988485 897790210 489218088 632632701 35514716 879824228 88080226 656726952 144396503 146326801 729971602 889249468 706013382 717370487 936417702 941102385 483507559 775294866 528959056 932046004 832406381 980198621 68853948 713908048 738896918 915195081 703980043 758576779 226793738 856825145 134747290 922436272 102816258 597655288 234300004 746283643 917609786 936630568 725394339 761624723 59913024 656341588 245754927 775995024 630651360 976957897 420985812 661027026 151457714 657476797 936289556 986044734 387940556 677957645 229789044 264945079 902412667 970734199 639670073 758000818 519952011 844842186 364066902 941823559 378980308 538634051 806209995 917963906 726459652 816141741 393695271 475500040 722200984 917897220 353841459 997087311 371670550 546762895 966731763 975423047 930033296 964900301 252910538 259669246 989227981 997142328 551353787 869287086 789575418 979949008 30992072 245545555 573055638 808318930 104192101 756898942 62931041 696513625 310748950 899196076 322383557 647831997 176658853 686031701 835368512 979472647 820026525 902550885 724096963 905160029 687270735 829816572 18737850 592078033 635035833 749430494 881514877 942328051 463700042 987700654 150217787 652037319 700823124 887648513 887199100 923135822 169515616 835799215 831223542 894524911 817433142 830571789 223046198 327533113 922532981 985016843 334918252 901051004 449865369 941434533 169898671 286131689 695668382 910225585 452732137 949100848 540791046 773550907 408945565 712091539 695735237 959421505 667093570 790315464 495188229 752146498 207275704 935955628 127717014 720605008 80262391 682422734 755322883 916918692 829791698 950866004 694931672 927778947 835565460 856179037 96351696 214876916 604942494 670094493 3306950 517299369 773035550 873845334 957090904 996540730 641014505 973447413 308437838 941417819 459580953 957129195 629487529 868277592 807184648 934670356 935412688 954541182 493674902 595220551 411519956 964201663 338375736 364706006 555506808 956264339 272222230 333468758 457328427 938896943 669812770 843466249 446596227 509550081 519382664 557846944 227393601 825417490 61151004 186440942 666295723 965415681 759866240 888427788 441084107 998278281 790671210 948982778 310506676 945187377 167651458 460808066 935390190 942214312 613934126 768766356 742618525 993581482 138104446 694110019 472385753 609270677 853116739 927076729 35576466 306361453 348154287 431348285 809244907 937628839 128204416 331836391 377875423 507830199 523611517 754224880 737976271 938366145 772637887 894370414 20701511 855089441 250429198 849978817 914397219 950158864 406950374 660475795 254609635 723821182 795053923 969859588 539983906 924803458 567122686 976577047 935923318 971523952 583253 486566658 558075846 559095827 544696143 987202390 778705743 794460872 363912585 450616005 178965634 670910814 162606307 704794058 132613539 661035260 122787345 725141158 934702556 974116165 273274028 309494550 216361632 907161872 759345562 963145589 260641271 293549083 38830227 486633922 806289305 987021201 183407782 320959374 397320501 917137099 662999113 792961349 723307400 861291780 891715391 922486741 688701921 746545703 33635037 777099785 356951292 846167240 289870638 308047551 744669565 890240883 782088589 944130028 171565554 692198878 580857477 942127913 111460178 478949929 835319851 999936735 65011548 777546658 403831725 618893507 846598762 917731665 428421519 988313652 895053575 969883917 800407243 982998287 19883939 383951821 388753614 920518875 154770194 987687766 319452417 404426509 286412106 295141079 152812587 754874991 554815715 577088589 969710176 980768129 584502642 861378496 239895970 602287683 396319526 964807085 474616836 611105914 384454820 975598480 214652056 307507151 565974704 978577904 670173268 781180799 307004582 698806196 428711027 781266081 944774225 981191594 765949410 950414412 776839866 869729516 642099101 770706689 782770653 824988371 87688072 264302574 859852452 932235216 102950335 664255857 863184702 915835923 279112600 930600448 571173125 804085471 251757314 645384387 648463972 701080846 958992716 976701731 576532914 743470537 171224358 748774873 991499876 999016908 906933900 983141762 689749967 971323526 77813053 166373954 581837860 900056660 437094632 994058283 633769458 803680756 675753812 743913594 226019764 309531328 844243028 964363239 119294574 599405114 28809245 944677137 812939376 828816758 401848663 761470272 956340326 986311628 628218485 897549612 753769400 909466886 108731564 776009626 371044391 611384496 250336754 259987305 823140247 872548781 92549928 592866747 710751977 747557798 902124032 969920529 880477236 915529827 936528630 958155083 852064891 862776506 304183350 924232681 10891588 705716246 537325716 559228603 722998380 753910299 994710674 998731815 454724638 936604436 407135910 697750850 174577153 964962524 930535155 941620600 820196036 935859359 508840827 785515260 495259147 786046566 95304292 840212160 371757303 968683337 573968790 654864775 282146995 333389391 292773768 602290710 914816014 947662186 736855696 899263078 875102926 896529973 91990708 255564545 935488198 976804089 292754478 549839615 243118749 407123964 229916624 647354464 661107740 679300060 875040917 973936368 946857607 970044523 825654046 993250039 539393023 962275185 138270058 543439393 943663105 987456629 727415716 882788085 180913803 269940043 481328625 922126853 194801280 218542219 82171380 384852134 752188171 925014232 848321893 892920075 888805897 948108971 705466569 782151333 808778278 864670626 798580017 970009553 290444053 462605607 673576520 920324614 29903696 355888576 503864254 868276306 399024432 805797734 304971326 964379335 69079361 577634005 515228917 929385646 551130147 886237217 220792456 689987254 770859881 887745670 602873045 734281137 764506178 930652148 746942651 747694856 987062843 989213541 256328061 929796857 792944317 910107597 384036191 868718958 661210248 915599476 320179055 846147504 593715656 858704045 104471466 779524068 518101645 611537062 553920477 728526731 18093334 592097839 611876733 981846784 372659302 502048472 267651055 798560687 572373568 637042525 837587638 963088268 489064015 780498935 952480692 960375281 597332415 847589070 375254550 500169043 782920341 824573432 826981226 871150323 932588416 949071354 925437742 933810169 165700980 426649831 755411041 885757498 217471225 860957288 775744500 900980566 722552449 898020652 951758475 964079662 863219993 958345695 6259131 797818575 937126 910681302 139134358 514764920 381400024 604762789 424115890 584214072 446876141 779037652 501246803 966102063 496558432 973305418 904097464 949484919 442735837 766038774 77038726 518680047 489210168 626414835 296982759 345863545 535783953 649189712 995069113 998071822 349514417 458560501 443601101 883393061 184649036 693186468 489830497 858111128 854112880 936399059 898071065 918535604 208295879 638157270 545726665 656762416 441066955 691291832 707397876 728786692 874007010 882339602 969554657 992589449 818721579 903258019 690039878 851450359 633053722 697977655 921470073 935512362 855393372 991984466 768445669 817461727 477572137 551174819 188674078 738227636 941025819 979361078 557990643 615270101 122726583 478583157 734050843 980596008 67356404 146859543 914000584 929489925 859112310 906685569 732220533 753407895 405598518 858684722 428843591 486478397 510929002 528082115 954054364 991829947 759290464 812051501 48304554 498374167 845125147 943576706 409875810 855968619 548484845 735522899 710902184 966607090 238568930 252497948 140499673 853141738 247155648 830507202 962148154 975248747 402510407 583334663 427222117 874856046 782758653 886104240 231636311 936297777 472988857 930699100 981796627 998174696 828160467 899305575 612955899 740021924 918516295 976348854 391272483 843994145 430729319 630689408 14222332 172435797 760248438 977065761 8863098 300879662 627733354 992710810 597696491 646772869 920447369 927260312 136957849 542695208 624041628 708187259 54487076 753707934 154097729 957551174 382855161 652377970 236158888 585332215 266581423 586728993 559791939 801349768 204456981 714376714 622825506 783054865 804101923 860500448 775080078 952815434 196514760 801809494 61033977 517415976 429574291 913616234 526031368 621757850 568587083 950068867 274134275 444289584 38645691 304796245 82414203 940613178 355712218 867664383 154519198 734655141 915720307 983393826 791615666 821476840 970505824 978576059 26332076 719937790 44834353 669755712 667634620 913548934 828058791 937184424 54168242 241500183 686827550 768861013 618002076 700070538 476913034 996891223 144604994 962160110 729217113 845530871 270374706 573792290 800352805 967714604 831336930 998450212 219543327 535354443 89550100 295565581 909718811 930228225 887088281 899685395 517151044 596277866 926117709 949597169 263554922 957437036 387264930 640655993 211909104 682828890 733793375 773768923 869786836 981443396 390871552 821648187 515415075 720782468 118367145 702295965 885093960 965610912 31165387 597074859 767748975 805962237 368779568 393184255 202882337 606149042 83897845 632433754 403218895 705610869 510537865 629865216 605014570 926211300 595928767 680934093 216394063 887120756 412396101 436167527 106097171 532886617 184623005 749214155 645558857 829593842 796841547 894651609 532592239 558571661 408543412 472700248 162451876 547374033 147073330 794229919 894354505 934071015 759627952 945239703 833148849 845448622 475512704 957354399 736458441 990008756 572538616 625734881 944712844 989403408 691336027 706387625 398056461 731888565 424726337 580667148 485379053 532748699 777754194 948806975 872298713 897510402 135733086 865787130 301555761 499475320 160294605 437465299 756373358 873354585 214648485 959781622 806316580 972931383 515475297 620042652 311720644 616818670 834207334 929137049 616877771 789665192 574216193 676766852 467191360 766864549 188180323 592381783 603927519 799868681 421528514 740893616 306073617 775945944 179485563 686589395 800288015 825313983 800203992 877453477 192808485 649257687 235853409 823367931 32333044 541241301 58834626 985654992 10562588 607498154 930905836 999079955 264118058 975882477 518225079 913319511 775459457 994857452 24261469 959165599 502698837 747679505 372442385 415092084 917608248 959562493 583610413 861466812 972112482 979644609 332405645 783428340 185231493 695009016 939567242 978364512 21787967 673084355 627088053 810315811 308439559 800630483 524969733 669889016 233553374 283653541 984412612 989054110 940391050 956066543 47412098 355056205 668908424 988638475 919193105 972923742 18106001 963096182 232357948 331617572 813051989 865493504 16142123 173767864 150858139 264555439 878101746 913986170 767370016 824000921 488741260 884048092 362072657 782289443 793777108 892449746 683932298 756608370 763792031 894623884 941051040 969401444 232848341 910843163 371112034 926801767 901016906 977140798 481689164 495378639 881397280 893204406 845515588 895932670 841858451 845022770 275555653 471448633 564601376 890780823 676616545 835661759 492970154 926823818 254137025 906452632 697087127 965745132 243555498 483075392 433167808 633632005 889055427 989892549 611525955 763494144 776903333 912232087 564800832 822430957 215568269 521819673 244612769 280784987 446479072 909475455 934197825 960493075 669946746 725493768 882570057 912768930 938540463 964978228 448473221 839911623 573125473 942077528 312738830 684883614 753512406 908527548 768426396 960811977 635650543 714381788 294610371 809225203 375437644 583430367 208778275 345325882 267846507 605408941 713645342 948120774 110219320 714126075 240448241 576879145 476082991 478650602 653252629 789496126 243003876 735093462 473434563 944311034 97186361 941886926 106344144 731938641 830401319 930653817 439285674 705031652 997246549 998160547 494148088 571496669 229621070 872054962 389941645 899377358 236405286 671013286 365598091 759926298 422971658 567915761 968931023 976539686 742451442 781806702 232666494 365869306 272226357 481238698 150021151 655048578 766365985 786394742 312283666 882507449 455778985 550348370 228276850 594919144 218932424 632386498 32129328 856498316 786215217 813034799 741135063 838086200 928389522 932351484 630294370 965758154 885932431 993216541 749677547 980391343 181015774 400061000 217158830 893387984 773079125 799367312 344247072 864385875 829860736 902868671 973857855 992466650 597830539 944140414 373971958 473031388 877337161 878044839 349198390 706571531 2842859 986256311 239104349 438862056 733682511 746695294 648107917 860045686 969741968 981845014 520953268 996737319 657329160 736446740 315505407 944059654 567910491 898355554 25944589 958442407 873021795 873749329 914929073 921442616 17312202 930755186 872770497 923481596 306299265 765449280 339760892 498937339 63957762 337206499 558542890 737870226 925956 147895361 504038584 707178654 771169032 819349110 764008382 867540575 474173418 739953253 185867106 230752886 716395994 733349183 781211374 967158367 677725376 985962511 589784738 876849949 379460841 844031080 294242044 961456910 611992182 615021415 500541536 831005539 464418387 535870453 458460538 820915751 677243191 870250472 676590500 760612643 85992460 259537195 56027622 277071321 586846156 624776691 994589855 997511489 65845279 125926622 290480974 513390922 254231436 434626140 694679532 909638211 571023961 589573442 556164652 563543512 156593790 476107235 679811152 900879551 45678760 832860296 667039626 805693687 752308775 996438763 924043097 929049363 987719652 988707935 610574861 786429569 744709741 858614695 535794411 597376383 428970735 883158908 167069904 603960723 383040088 685219128 163042944 421335888 63507084 966226772 229462470 418555711 592899108 838265969 871598139 892599975 590791896 712258417 763976293 862200532 667141103 980550947 398753450 745989265 373061125 807029058 605717348 911690741 568815847 824297766 237490826 249312389 881201398 893728068 601545766 786605137 655178706 936890154 581911057 795586473 730192604 881084833 511247457 821494264 301691841 942997907 996516399 999879340 310440746 643831848 548269166 842870613 949251374 998983859 906820142 929277992 167961064 923051951 709788147 829544142 167558412 994852689 799084145 920224353 285384230 726628131 243643878 760946707 402557559 531439332 922716441 935263480 141573980 367655059 262836008 927660901 604555575 761551176 52417093 965432583 628491384 818010367 933374750 966212974 572737748 876466332 617536815 630317338 653702836 975391155 889333189 937262786 452501559 576826129 947033048 998998198 435197203 636037699 925987364 927334878 108337095 170465540 994668002 999651198 239060687 751908628 118405790 392418717 258504983 669557493 416256787 886590722 793413490 920594388 608440183 620905737 925193277 941160955 554733863 871845341 499745911 734200001 344717294 451793072 18519744 663851102 140280826 151249655 800452792 909773566 324962037 979633571 424222090 714460332 207693329 624277171 281051356 960709668 27884775 966337337 535719776 841938908 528680345 894821066 938746214 983599748 679242141 687064690 166499513 869885503 262056766 484950289 115687959 590010194 629468185 991277265 15667015 590470297 646720821 873885871 792498284 901176051 909801420 954934781 78307936 157131854 340614414 568005112 461485165 943128581 196407867 908185936 771402619 903804993 376269116 976092311 234061488 721228367 149431398 331177890 242368080 468043567 132147349 684250946 720330391 791691881 715004824 831580689 787063362 843875982 36611259 392350137 278520515 808677903 541180237 920314237 916551504 980514977 948082265 967321999 471808304 718413432 708490825 954300966 516118757 670067383 262725303 330541344 992277601 998674239 214182056 401871596 840059273 914176443 306984024 397334194 235631609 897868520 311999509 752335794 671838939 829473766 962147807 967469938 300425245 942217171 42886708 375913519 176780202 548194310 703564644 863663101 29155065 698264043 862347256 880182344 245466614 781946512 576472284 587202536 495861214 660539190 628274715 793938488 27707554 749965861 80594173 336887452 631696359 792985649 222567607 341172529 681313162 704812789 337255609 633174469 27992999 557284978 254893959 682186019 401120404 873613741 715109295 782518237 80172607 95713698 97648847 320202850 953837122 967278298 826838102 973736172 416342559 787581421 43528862 334465419 273365182 463798170 829690025 904445298 992346068 992827365 293061923 954295369 849000334 919495594 493382045 853295179 918982720 944153344 555116235 873823040 495957727 688203635 612045251 893026833 613868980 994034281 916284096 934235298 152411529 415817182 387678309 429769137 679261496 790179602 122543518 694698351 180726456 461985831 185168724 772948684 787914869 816698902 117045305 742756270 375989129 557854448 385683182 816999311 110188684 648029121 199436127 699519777 176973533 310506516 147528577 619077900 804317555 996182694 584223034 958437706 649973828 821997573 175268033 520407452 954772318 994464756 464137498 556937734 333924883 649464122 926400286 937998974 766238907 967601274 211502962 373023615 854515986 941880222 91400661 248995058 5952130 324129058 589507761 898875535 449815114 633675863 839533410 898179267 813073042 999959531 183349711 776724507 51295709 418913228 177762344 303977672 297174735 714603179 19725353 657597048 403438605 895700466 197797799 739156080 330318802 610797275 600243488 653169112 159848626 969308471 266227097 515702144 327042076 633175066 804368147 925534714 692615088 961639394 407011299 525841363 997809478 998582439 771309605 780045248 59336453 283480039 625561684 863682762 167216505 478703797 627223133 712785358 540248898 842114247 807263922 902490718 376665161 928896755 553907942 580599632 44619188 251512618 389663475 482121990 9955628 668454618 748449408 859852629 180878122 569040055 648000388 989566147 721820692 767582640 878544877 952049234 397655671 547955862 807946877 845194315 502784570 814008795 142106984 442538531 532494567 726699070 683208930 970602035 836774143 999742584 629316477 823971119 967129051 997952469 190372742 793028899 669537635 821294964 284326700 591331909 177992531 985423227 369032271 622829097 411640282 426432543 198454739 847790758 795751552 809635528 338729254 393980507 893662420 941593045 264400273 589652302 167691505 331777405 287539276 929037529 838532246 986248553 237022160 468523561 328402013 901697796 584130107 624784234 426356747 598883821 45597418 245205435 846280285 992120089 783328270 805005657 691531186 896253479 140889448 445451385 983897869 994249229 137049067 265999116 364110885 509220117 627482662 690855197 619079882 999780001 445015503 601995913 633741098 962722549 562828169 733675010 238524180 871001408 279581021 722252922 631118454 976716839 30644003 237446742 564704708 621025911 204326976 341367929 209361128 429588729 814971912 826876201 789740585 854422728 167005836 633877951 455041541 887271890 382376075 891169601 166110706 645595377 117461634 553139102 414059638 954993410 762281888 977940058 914781127 951234759 176148156 408861705 467103689 661383198 529139568 791218175 757882103 928403287 766143423 980435220 674094435 970162578 719656802 967015611 872505148 874469050 688512978 919605291 213302686 912248359 625760677 905580881 547024117 668955194 295043381 497693697 250212907 524926300 46005855 836486178 869853790 878222568 403940356 816104827 449115306 657342408 703100374 790847410 545591852 740486934 656711343 738289846 468665894 891389013 151809184 291321808 352828682 696378972 276541044 871069538 873263339 937843956 459516354 589392641 699971647 896043053 596275041 634797883 165026350 220139535 670556608 886121388 814116955 884595547 921732771 933931453 267683405 864745783 247309685 469643840 724563858 898148326 808992803 987284865 213313985 510069180 208294726 850694608 29457970 996884223 840603953 989517746 120370618 489293705 779940700 784713071 606066387 994996107 131257722 976146504 717032890 778300129 87420 552345493 761555799 794041975 15248146 759619992 843103258 964379228 993894283 995838178 24309386 461078123 732613104 827608936 434558970 819660552 340854487 632675609 617815702 969396650 436435706 648804073 441077013 716796009 970342227 987666187 14871772 326968957 826954538 885163950 744420399 780295891 628362313 737440549 822106586 897065162 958719301 962761426 295853644 405191458 892319427 909969365 563951014 707088772 254669314 263128639 550840992 808757274 506410120 554198591 21968469 914904405 392452675 989403108 810320437 900838753 91153052 533224575 363695158 418826365 725570992 743539373 546082296 549759834 740206711 756019649 950409166 960467101 733600908 962048794 86487226 422762280 802217573 866757594 851579906 977533518 290170733 334756341 954765842 994425148 543381566 697659147 757095083 925137657 140354953 726514818 335487321 877111259 561497700 583802986 204519752 516585753 375416665 410494465 386045805 548439100 52693531 173672739 859367335 910851253 5734810 20016693 492060008 919334792 137334728 544716393 88187474 987332987 768660089 903830494 43778474 646969829 465813635 924700559 195466314 503198325 883322751 963189644 45189465 139475510 146699497 335541907 271286470 435161737 846570273 879486170 505546261 546478665 419338908 837278982 742091529 761849141 67012666 921579785 567145685 984192086 273098506 884585251 936505357 996191535 912257791 972226534 279704153 333987550 68281670 295478481 321131901 876584841 776706893 824354567 825380432 992121336 513626388 548014306 855342120 897866887 536050071 639604123 430258 377385853 969204322 970695672 188458580 797669747 869289592 951742274 979454205 981283975 223348631 580329573 116980226 761496756 690224670 940421132 934793073 971468330 593505027 964481903 113320529 910159258 17011654 631470812 404406078 581084050 909759167 972008379 172158143 183514419 125811856 625856465 227165443 558584118 602754548 914616203 643212041 696959630 269265116 678080631 194945792 563573542 671791218 919510084 969629326 983469188 37489199 900359465 803042186 866318544 324175333 999201298 933686548 988540101 463695420 717479561 662635059 855844004 288492374 671643693 308248253 813833624 93919196 935455852 693044437 956247445 813947853 823408978 139164337 798903323 927133115 959189874 112047064 803864063 824594208 909954842 635421789 938477043 76738046 499207502 770515957 965586472 474931244 983899446 573985504 914888625 762450826 879965402 848355981 935799050 639865565 736106170 681380616 929755070 680753052 743602407 221612941 592905128 930325619 931721546 191955866 438103327 638561054 926559071 205973673 306285701 220385321 437110599 662941576 750044378 802940022 921183787 559585516 722939332 935797163 965155335 505504268 864684849 459432675 541503997 613216389 617124566 546953498 910548367 785364952 813648924 453518447 891917292 868453749 999851453 917403028 939110922 339771709 481780396 470627122 718214438 875084712 972834232 281192674 900986061 894093473 989894763 694839972 838555326 727379124 905648275 700428571 856948773 735489851 735915306 275202284 391509335 98942059 903857356 8702527 504473321 225506784 462752854 441530533 987563989 231867353 735253056 447605541 456695806 740893139 849116784 893534308 921521965 180526157 287388800 867757617 985070681 324182911 598468486 23504704 546777293 18336292 552321025 618616718 827322861 851687500 866261040 25325002 317654946 472288529 733611498 824288716 885917787 707524189 791899875 77427375 550742923 956763293 976758974 853036977 977645514 492164996 533338873 858406378 935722138 270298312 389163289 617806724 770954264 383698653 958332517 26940334 306637264 881878876 926883423 170164562 301170812 526897132 748900448 466368826 684138820 643753566 906713800 642468247 745615507 155065408 639752340 454194158 748278620 178660574 898641003 593442903 602936278 127097476 710128675 505298796 617307713 734652456 741922560 130159286 274583508 920763892 959910445 6760595 545611031 573635375 658978037 387318023 984925567 374440110 602315470 446885632 633938692 371918426 763001801 147632304 807579306 619769058 764271183 518339138 810809747 676854148 828739310 346956175 406658755 928083982 969418076 143486059 598354562 753011644 832466645 430068343 900188733 816412832 992727456 793327141 987645120 854454890 926897022 158260752 321665994 711798911 754811249 997816474 999089648 619096598 811074638 376907932 700844357 871810579 874606916 123149098 550378811 94876748 391334780 950208652 953729517 58372523 205504217 983300835 985603273 409397864 756768175 675990807 862222299 136939213 382096065 213122519 648854942 89074671 416636877 559446912 985738493 374057601 784991709 728009546 754059965 74512850 675379157 533021716 882128935 548402242 595751568 590201199 744739430 30349566 377126139 621678204 809814646 823418869 932662858 84170056 665702214 753227571 953645499 303317532 393784626 545528652 758049396 987692203 998467407 614530781 980751033 559354606 735580894 315403917 692659402 195213387 316057051 181825465 792751693 205662371 833427184 714445972 779305867 906152929 945965616 779295358 903396512 117238280 421204719 747439290 970354495 316392106 984029079 811436985 890994570 138831240 481620843 849420016 957320714 715504632 760564052 958006871 993460381 494658403 907998108 202962104 454798548 807409325 844981344 435944117 727146108 495289240 944578096 166934019 757595555 23107385 82381633 277064340 730670916 941902481 992729536 518603078 952707291 200912491 972107751 681053814 736354054 924830444 930409125 834806917 913139376 239428186 616574097 566636029 711474104 630197609 678436789 275618369 315075109 967108147 986625018 148524302 380700684 83770272 561258637 400298009 910602012 750518643 793340451 907057986 980471544 964828684 970888245 161841647 556751205 385393210 649794264 493632183 951683595 329158392 589273317 601228467 960378755 641050828 670039930 693596623 952913397 378416494 717438236 937305524 940429399 242207611 953499719 544853486 614029458 850708631 914043635 381545559 987223367 116859971 135253730 421580892 661907064 122289651 342202025 424725397 784860182 12771272 712303732 54742785 779236827 130389137 940753493 378104728 666482266 239516183 695677868 310461380 377587430 211588830 467225668 3241883 441411181 580549518 786143034 965001291 979235093 500230009 957629478 324891510 946491721 84480702 533965050 730209926 832256731 111587215 806900294 797176693 897169269 992125146 998721624 445727608 568723540 872724499 891965311 328655157 843793160 286789079 899034158 747043399 781688005 622032869 746749269 571642292 890791986 134503459 320177773 294145374 664541346 591432082 911463472 784928739 800064086 147489746 606008889 71235806 537873080 10860164 774851479 258207148 791227575 302554468 634597465 466961457 632153690 835275129 962139137 752431078 900280496 871496757 970484264 38223451 136137729 778319838 941355895 45398772 328482186 565404606 712042932 396253094 888329710 978090691 991040757 575094388 653113430 146507995 158706319 467200515 603655129 326887216 348601687 510474903 554215052 937205764 988230208 605826671 741873972 705589786 867879626 272023159 445253520 721935437 865326138 652270301 789835505 778866741 808140128 29007421 945605295 547513326 709579723 171687748 994787640 158310014 754549164 331454451 929615380 849639934 866367686 295143712 865234318 608054825 918279716 803591556 917053781 290870851 521520585 272586469 518695452 722163903 855037747 345784527 582630168 727512301 785994092 679814781 841245979 913958273 937280501 156690313 633681407 592745036 988944970 217723854 837511111 837580630 951657545 767456870 994408145 797825738 996028661 792910857 998824297 413977294 508761176 767568266 913792862 627972095 717496779 28403750 55702893 942158088 973823238 741780248 891625847 412327883 677075725 958572842 962972875 351689498 754567582 245120157 774451015 20589930 782596344 766988312 892147633 775923654 856723490 371466385 459335169 550177179 627784233 60209527 835891371 477300659 573395654 347289783 965837219 460059124 646527908 550799843 624290184 636625056 914849822 605723424 967724775 308888254 778665356 709522296 821371358 234383521 347671568 613150951 919691605 73649101 679447890 864133262 924663373 129125816 648633385 804631690 964678499 514918992 905685487 512043277 855319540 227410869 505416810 422538971 483896311 830114246 940326804 178054235 632539062 607933523 787635031 732301210 891742450 331754563 560715378 665635368 976919872 3866738 271373003 486899772 976143338 400878705 745434311 7201472 918567468 453359640 896370622 551107201 856517069 586764985 736186003 112310695 812304585 845471394 999616807 491433376 693008466 933217127 971277414 464977436 914941505 390117152 408681928 407055422 437620423 162393115 612446693 603291829 615629367 114409117 545210169 756052986 952028475 201490485 445843740 804839462 882483125 667977439 976550009 238252495 833577742 416081076 696540675 907369733 934759371 729167956 966995092 41434231 249014342 117614046 357518787 996953377 999843416 260208346 900188239 460162981 974096784 797896916 995121236 536897338 769991689 684707597 803108745 298527659 384904094 728040144 834797437 707609625 967311411 893587464 947060077 307824539 764979685 959747314 997011129 10269054 873865692 704593281 744470721 494545838 976437040 154349782 555900495 322764746 392902609 502221946 820465725 451968476 531551538 556384179 886018031 331035251 754810352 286389370 701866319 417107994 434726737 37629947 725597283 599273577 858044881 382285702 601019733 773613932 994541369 91684774 361954451 570570079 662975221 940604208 953334621 671926784 992182506 212830692 852869633 115841421 451709825 411317182 693657287 404216061 584693743 876571775 888196442 20835016 531879996 631027991 678420420 118249273 456833183 17292604 564506611 51759652 852369729 334044426 423864769 830910702 920447086 169367433 319576750 506316834 989929998 170052446 300256596 893681818 943518434 540901406 551111540 622875240 686686430 360847182 424715479 727286961 935742470 707994803 846599025 217159303 798211298 356939466 659477597 458130916 907880303 281869077 874918647 841010839 858583292 789801647 981541594 149706610 951689509 45146215 209958734 503234158 560961574 464628656 555145928 419172778 527835314 950210479 981812609 740607548 890663363 872314065 957626387 384629865 849216233 13643638 74571500 368232264 765948300 223024187 948230015 503682146 550943193 868425454 985058216 665852328 949445660 697763626 803854824 493147586 822295561 64637829 770660311 722418725 795671169 419656096 674945308 26108188 406289069 797237920 824642742 776789262 793455140 164671369 278367511 479481764 497113255 144178590 881001275 329986798 768660193 423734896 694245314 787005198 904771147 231451859 656896456 873856924 929321715 551214468 788292408 211404225 329909741 317875127 617270430 227714915 821942311 678533733 819213218 719715187 802828206 789884444 829555221 681114907 850535346 161476813 674615191 867463805 896741080 49105738 646686833 665944847 783938725 248723748 338379912 357298687 959169932 984756069 999089711 460915858 656473197 405518655 528204895 636612573 814856717 548281604 560014088 257371948 506239137 383581918 771090874 664884869 873834974 175275549 234534775 219522542 835331423 680377193 725868094 61566539 888827309 976726027 983756331 350147520 577234723 167549444 214352009 669540232 760695433 535117623 959849511 841565097 857987663 638613156 952383006 87817343 296803144 156570089 345273232 49493765 384547025 112709967 669195232 314339422 470956134 626041144 950368201 651388430 859949699 75745614 83066976 947108360 990124052 109990911 394621100 957283104 964771134 128545738 160132539 504292197 803730119 578718933 733508740 392011066 701823234 29926134 661931485 713735411 738062838 348938457 519230112 437917094 718713600 84884708 907074852 392308038 630844741 922662340 989595916 598053266 668486879 280356432 725025895 281014165 580895841 717227108 987403326 616808215 678490158 918992175 960034304 326711827 673860751 826513614 897167953 343802013 574551027 689786603 998036272 558788448 689655310 693976185 827694162 355025130 768445052 429250698 620332043 280758074 589138290 999456291 999831109 67662007 477817222 596162669 832538766 936359191 948537543 400264691 640754187 650908040 900088781 82856051 286314497 931243671 990527597 856836932 982052622 389080276 958455928 413741465 481302261 101141632 692469713 26907551 609805960 252077209 794108668 725482556 847298814 881089269 986566086 970404478 981533857 314217098 477265870 153176407 514471155 569147236 816720172 792949940 808022665 1858502 83536952 462002344 764567357 979063074 986914240 683650455 701834635 644281943 900074710 922800329 932217659 530620317 884829252 617208798 981794726 689780807 839556021 776043704 964815127 879548566 949796353 823189395 841915389 108474891 954722759 140031313 550929668 291329025 560482525 100445576 871802584 521923979 819643700 927653573 999301745 59192953 374411757 61623673 198483576 400371583 690178878 558776448 777735841 46926268 181756472 395914433 792470473 236024860 697666753 852549077 970681181 797664552 946911426 997203727 997989148 557407016 630147504 607652278 994471406 698215547 786857602 859593213 884009428 591675542 819514324 772649042 984136924 713757905 746958914 844658618 961894165 527127251 705311344 691236679 953209090 849430345 992220222 356258656 881363399 289721309 729658717 114049547 657238989 455378636 976602063 47796537 327523638 911972305 977651551 484670842 894540683 980726998 996096110 689035184 809670799 513191898 841862767 182842218 645069805 753145543 821690800 890777029 930357319 254560349 821566591 562833836 634965847 682854189 879162836 658133796 776753616 654282521 724820709 989154146 989646071 440194386 527561273 691084805 883110877 995427793 999942527 233610948 402342025 80956461 292220805 850515485 866211186 11642244 185413730 215221812 750498678 619844244 867821312 811227451 994505157 66639152 857582007 708405410 772904560 232561410 337832735 658416448 976806021 422720983 620017561 355640071 383484918 446704620 752783201 568942982 880755616 752426886 799005825 553945101 790519034 548618944 809133938 933872168 991221879 325487911 905790902 310249190 759003998 724424631 920164045 660446658 711116362 818644880 830950968 830806610 963118748 1915973 187126050 972976919 983179314 532708030 927169535 764210903 937291499 988058258 993004650 84224930 648372345 317965282 489333935 766090896 988130838 370503586 442656881 4989143 922715582 226231889 994420241 905964472 964123548 482249008 932213566 704786237 852944577 612917750 830744252 838025927 972181411 692372626 791146647 514942152 580541486 867640869 922727116 896088175 901536830 350410737 829663852 105561871 348048652 236993279 903829179 870948767 972298370 562435530 769236832 176529466 659798402 891517094 964559045 813939883 838229872 95442511 884885448 696565290 882801566 825645284 953567241 268073113 971597909 968685817 980987926 111984780 290270593 945255083 965028933 857022230 916588209 10252088 734737758 937808832 941515071 660417056 939254172 570308190 888588987 353385979 563885255 142942240 676274611 379041532 867955782 644744301 663921701 781237919 783488940 344420289 712963965 569977813 766085750 318372974 834938195 168808945 465316612 756852347 883424281 86268217 696362914 110477673 261618695 655137624 875902186 901080814 924123456 41272354 478191654 180357020 770577271 917722774 979564159 856607453 886646627 271920032 980847708 334793017 453087228 204727251 710577155 401577696 699911557 434789894 823526981 74990101 945015653 81008635 848548628 768271748 942814730 670289911 922240121 935027763 989452614 545086808 589882959 600607554 895733763 975653737 976067696 206626235 798237433 287480917 780236698 813147421 866122461 465658957 869298504 386005323 809071585 856473087 909514612 478980350 808335396 337694444 719590946 887875399 929328869 167804237 822521829 590547077 880473459 187209750 871784391 790816199 803019450 958029043 995871661 670623425 981316213 839104202 983778319 600019705 782235508 55118886 967625353 128726079 230702572 901753086 993577219 705927878 934567157 421702311 967323850 650470254 701849690 10693369 175128554 455787091 686796145 447167477 801232375 652866575 958172369 143173672 327378276 706559517 979856996 963412034 965606220 648141947 921921872 1550350 637630449 365829482 777473767 368619227 663103372 85678147 312540337 235388037 295200705 568250253 805875161 17758089 805904056 263489039 317139994 961446710 963962237 670375489 918936074 207861049 799680228 778320225 989112488 324182052 649567742 556117210 698208129 769782657 998761635 891411634 928740562 33487260 142114085 935106276 979546551 558932810 980698837 324973426 454627306 794186073 977706846 265121369 753417283 785434444 850978258 492455587 518014832 960558413 997208287 200162671 304239734 78638257 151576581 450666745 913398076 942953093 953634121 570272608 786877626 266079842 327627386 234022908 889834710 327394087 602069551 437770453 785085318 991036856 995910879 820580403 867652626 293985073 623874878 724654162 771916411 647272146 697065993 837343308 969467634 747046188 818739366 670972783 919416076 823128486 887821530 821402696 879671048 487762004 586239398 613840529 983234187 427891437 433544101 551000903 969913578 732800366 826363721 291452237 457674974 376138851 846164992 760132499 846782394 4393340 854208565 62511885 427337598 825480894 862816238 738247123 879969144 97769305 284553556 185420352 485441435 395742985 652969771 400809392 709612139 692309718 806094523 546351164 793924761 155757725 801835911 536368984 603148543 559820002 702315977 784558941 804440291 727444591 729959932 342585987 455545579 653340434 680374876 749447390 930329458 155661926 440163436 55151594 160266810 344764640 443758825 784663210 876713249 832214803 956535407 925467273 932392519 443030233 512723254 393245226 575211274 54870977 290190408 893110806 910710245 292097702 693832438 265052949 294292215 913779316 938719820 584141909 633158973 516485081 697968843 788840683 870911036 485970794 603291295 961718443 987923816 402247555 463986345 345765743 806391057 141314937 417764723 811267085 883769926 627522903 804884029 859840387 984800864 463804622 754280206 157167159 495485008 360295619 793536664 621812427 750154210 482656401 613668136 723212779 866781147 677732760 748530506 4921828 507957018 784384244 866933969 877260812 971022345 888627059 910150533 590462087 970348900 367746114 910172396 424834457 627102182 468886636 965527517 940648330 974587275 686578896 977373807 818998087 832036107 312592769 929698687 806596984 937596732 18063185 936257009 456411469 719884695 512206551 997336984 165822816 240214221 462498199 941048276 382392434 548195200 796136719 953699023 681962223 730930875 953745358 998397347 5446134 607045347 572450820 890352196 790725647 830217759 601172626 894250609 464202007 888560003 172773913 983640763 868106320 961026512 967366184 987536480 228122285 286723314 849843280 926914239 79194449 440554025 971375986 993595304 298360417 554974755 357668933 761017408 562344212 751615229 978080394 999413131 879322048 941923108 943867463 954329907 345911140 595029835 355536452 455362236 639562500 822763693 344718944 670197998 929559054 980347165 599657886 955523942 131768286 191197533 497469008 629063625 78162148 308416648 219098253 856226848 99427945 353027917 113708961 217930026 491392184 581189950 642093703 780751198 711642499 980829749 202766380 681984062 813844855 860134269 144534304 960445912 801816561 926105594 35897339 585597312 700507599 802470296 686323455 938461888 21454010 692246398 528204541 668826973 183906392 720882061 463663947 516858414 793512811 864839657 250467915 662972862 962184909 969857809 105608390 125127140 867525343 966763749 894663502 936537773 885401449 979980461 732696443 989568056 368849680 540464371 962955010 981105690 251812525 564095314 210436527 509646652 595778662 634795239 666417116 667637859 838378468 905760129 559717547 720362102 787078756 976898291 536781853 972009060 652479560 992663148 105744655 111685794 882717967 897853474 946409062 988082578 825100602 910524175 960237045 986163918 271504671 419305051 101653818 334026394 595042554 929815495 957578713 968640105 425162218 846587214 106782963 846696952 985585655 995377712 781523423 801162461 543479867 600434539 873099401 966165581 377914143 915344741 171764056 808893695 731539709 750150095 350816526 880325836 769694839 814019178 749684976 814463877 859917186 872103306 488776151 696477811 67473536 880183491 544587253 942820905 614941775 772864645 275274410 547535474 389379812 582736602 609456512 664344214 75463400 485921833 9003097 237791120 144748459 306886525 212982686 551096060 589128246 733368779 554773260 947953444 889774092 980557178 974505394 992801300 894440440 900557556 707545456 806940545 296086170 583295079 93436261 803960390 111962353 968937128 447682157 926547159 722409423 929567113 23208724 82539476 602098112 778896861 781633027 959468651 386383402 459133894 369861330 615423662 41364216 502133990 894612500 989639583 866555708 901764883 192680025 954842277 397066832 469824266 363372128 380398699 799798212 854574787 27489456 593955780 729948078 850026811 218161534 489779466 854879315 945424511 772179984 909004658 480601332 686764936 568451963 765185130 584335610 626929363 982034062 995596015 914732333 939923394 964940274 986066198 579726999 949646693 483624033 909270413 469829495 965196994 117733499 887362519 668238105 914908861 411677052 870169856 412212158 896896164 427647813 596389223 520552139 932293607 87517814 366160519 438610335 439466057 424251699 651213776 740844371 746155594 790392164 872645273 212110760 746262428 157962912 441235893 168239879 788291581 646374342 839607393 350015262 580474651 69696655 346472577 254502848 338617267 403591255 796555573 774545107 994361470 749830144 919804555 196258612 912818120 170645649 846437449 495294197 965209473 954926038 972792165 569662154 732205024 534937857 923101983 735045543 878225647 192151689 615463187 936756900 979131948 367140374 762523692 957449255 963831381 944795205 984610733 253510572 773343225 474115528 957161944 532000582 846982079 362038785 654382307 381390602 853208899 66775282 421403231 640721232 751461080 649149181 899074478 859449641 979612331 26162665 653152576 556200946 975909458 337222680 554380180 43117114 454517420 731113388 977256876 302182392 771036449 350570402 574200346 628062898 837302095 662122015 952964334 432026998 970046162 493709110 920440147 457167908 650208339 308387912 980412722 80066104 821801366 247926822 933749652 790983907 921163944 957969112 963447332 69680201 464360449 939511277 983985227 190697220 874444210 782138400 939873923 544670825 662855400 749999428 891415037 509487172 816276370 260914783 957148884 170720625 932375117 617001992 757490600 557804157 989672732 21769194 524500073 536677488 739093890 484090472 813202878 61873474 82365292 191792450 887074504 538831238 755244059 328861025 617947216 612849851 811244799 743668789 794366463 260140135 269440453 973163103 999174546 82161148 675917364 2334397 923038916 885843407 973361662 902823685 972016418 557771503 821292677 17275134 586398496 173198248 748002361 983680013 987611187 334407313 407263917 353003200 628103081 258448875 873155674 2838903 914509953 114308814 374137545 875138743 942961374 412821496 925943674 121368399 679668017 87365496 655574887 677246286 805718873 821121249 822536427 544522442 911142250 308554629 412052024 456602381 707304244 314974564 767423436 676511789 782852879 611314595 730471992 493861785 513488690 703690126 949946164 128902250 213644247 498366783 935849257 983244105 991973534 844438068 915921883 451228559 507544970 31765877 842832439 274122006 402823421 565935423 761058660 14983903 925443973 294709628 915642365 667523053 690028905 862168407 932645720 452978831 586252513 919882158 932632838 164115405 819291068 476031172 930407095 347316659 471145925 433366216 520445648 851123801 942696499 351730854 505981586 338311496 673523437 855516721 890347587 164769864 992092485 238337920 896456013 511737919 781583063 38831476 412700369 315259710 560945210 174791721 297929248 229916018 423017819 960051833 967507594 966639382 993965633 719150996 979422054 30158546 830003732 489099685 740201334 720883442 901668497 778917278 937766381 456558687 754253399 833532132 881761903 409177769 712673260 721183440 896728075 289315013 602759649 171439629 233783095 504209422 509014259 409571356 533092558 358040772 972095917 284414174 584579642 629307672 797477034 258561544 313482296 323129083 509009234 473016393 601157166 315984422 509838270 175587111 939028314 691788215 976742425 633867888 787278827 552296265 693085973 775981025 924691048 246504215 525475182 454982851 507889879 947474281 967246168 274254488 926805796 962150634 978946139 627058643 814744181 207323510 545094489 605057981 924096631 187588781 319583006 575191653 626013211 817464782 852600072 70140953 607153504 707426433 729790941 419576834 945772988 222321806 926118141 170505722 851985683 290531065 622451338 685469073 727357767 369957836 489394682 735265433 902253526 138054051 658335144 177741452 402902814 977544297 983405817 213336104 792676518 859807195 995421516 365329631 369800628 541169520 867696384 456490433 974360214 470877006 549499347 434513932 541124628 303840741 627467630 908644392 970290636 474428521 582151886 466036573 861150101 154189428 927905387 42849702 58507873 507811182 791492703 116925832 448275417 474107755 789363385 993890491 998293385 510890502 686859637 132235763 859159481 640105744 714060714 575201391 886670228 184018193 224750708 607380665 681471888 817428867 867098422 379775003 618016956 835676258 988615834 31829589 763968860 971596144 983497593 100692978 540132453 603080236 712093560 760297622 790353995 615380791 618001637 207072465 990099154 646827855 664228931 562367631 567245257 884710257 902912682 48076938 232652893 846710395 907924020 407637354 685533598 744973056 918362895 971248166 979589796 470220832 753449460 921067094 965073385 556073952 747563131 483332564 599518649 991530861 997884227 17963124 743570011 582356639 993582445 655759858 832546534 480283545 527878024 812797480 975843690 190811359 574550493 413777482 608749654 110080057 810214580 170925522 260321776 374940710 618186117 732534104 968027956 171073040 678833841 179313681 572825195 402578297 788394941 428516223 619099887 8797333 350408300 913005989 941644423 459585671 638889278 787094445 808536471 343803257 391473653 425941048 602487264 206372920 374418801 906805424 933212643 922012646 984883170 48247801 411251366 56633397 916007120 452134293 608386042 633964857 923192473 309270321 675371508 747263005 968661176 106501399 587586789 791355148 956048610 388542230 465426341 124231750 636528921 889831921 962452856 462693642 733058921 613215451 691447086 830345282 893745636 455427365 891425385 438240459 860803771 922850905 954928616 44799454 208028662 478660483 918974509 109892921 514139842 304072214 505492418 343213994 431305944 656179027 862284911 123525377 466541791 134545495 732472523 87733520 196676321 970197047 989563275 882653991 934879039 568666718 867122448 267529033 874249760 549892611 714617038 202883525 613496723 193074796 564994136 928008060 967906831 545415385 999120039 277857996 788152128 460939845 776131087 669027381 725555156 822886758 899757887 291543706 308226417 998464395 998873673 405198489 772596059 274924822 488334885 497840547 785573798 778743837 939746141 621217278 849513903 877085015 911393189 532377949 851363099 206026994 649748908 698360616 844487254 511287071 785041358 429283802 655785457 436128319 785585945 114589036 770798975 171138172 681933127 503864636 595766526 416578630 464748865 293310413 331973428 563082048 708680427 825111802 915717751 773326761 781768259 201613697 925462546 794495427 863448621 2974567 435909848 5834765 354987269 671019464 912487140 970173426 995924904 452537439 709398428 547233311 938107854 65662459 878865183 643135521 921435145 149026329 957267524 167260879 209567799 125035643 866635051 335977000 494845571 558264029 737392518 896347594 980212971 676041013 759862408 932488574 942400624 696127091 846426886 662519147 895466313 895361447 941118025 678779343 845911414 765677473 767660995 345700017 979415154 451587282 461076989 412283099 423278056 255178880 998809482 94634638 312238648 658690581 855606872 294358037 938972010 866062928 933697239 325808580 744103164 686626688 932745140 484483510 576822947 483251728 887123378 355131871 548833121 453690236 871937078 384862099 445119915 386435221 956803637 629471679 780803095 8456862 760266738 510374910 512185153 400329785 483561808 890187987 943860477 497618159 605169101 196591326 751856192 650279557 957049462 373829333 579220332 615916384 765597973 217137307 393040530 17309297 64042844 385163214 535754654 312283458 494414051 348240356 817525679 663868073 737439316 7512058 708428279 517650178 980284074 974312837 978204965 29816349 274329802 388858732 640714459 618480942 725369098 179281515 892917229 604098519 905783226 662325648 674409285 486787676 864042068 204043633 740763326 890513675 920930965 749973410 916823335 225968709 712244862 788279597 889023532 166425366 926639533 498132447 842404797 132750506 332185939 202436825 249864071 365652456 452347661 787983331 961556894 191142337 994458531 322584376 833334155 957635151 990941359 126709478 756040495 891119913 949125291 524930576 983490748 246430877 252558820 232570381 742839206 653247406 862714101 234125229 460733573 325913901 888664862 307039388 977176468 115265723 657475333 444565587 518189374 111537105 852760561 736297164 760437791 868469346 992072325 455243308 916910191 612020254 636204531 580237388 816221314 183195828 306083917 108561878 393396931 663643399 938889888 962548959 987095615 919092627 923189807 578462044 722164555 320482946 789284846 151754335 811358093 573680918 695860208 34625881 869209035 797917652 888791445 710598255 764821424 407232365 783083830 350990548 393202509 1821829 432081809 645864067 989613379 117372872 570775705 848903806 866384027 843194596 887926184 645021517 811231158 677101700 846735218 667657600 885267135 556181544 895486721 284257830 943014425 695724920 752069199 834178014 978528645 402698742 567519555 581627231 955679340 104939628 367911013 421834921 991338737 141936452 783417131 924890202 925773600 590670500 829333361 539107204 760304819 547135910 668285702 554070417 695162586 418690557 741082879 998607690 999829102 245536989 397304112 306858235 594838340 884323554 980005188 960554146 970436084 492879383 964096100 582364411 892997805 368597974 981813485 715119319 961311392 425041544 906614416 892182806 912679392 330788884 389606470 372938157 606427812 24313091 779454726 330731312 859861904 571301297 635648836 218011602 237609947 892913760 946072905 416983029 764814870 41420603 679368492 735801642 809277602 32247958 425880338 457077807 856097598 495757136 739605678 724133579 968170626 832515881 927884055 3246330 62534550 684942903 750013988 300834743 869334035 353126254 814518473 512652837 710466312 754571883 837648253 664673722 780867904 641006771 909171107 186267955 369837231 416908200 499468776 170766367 982664146 567106059 796401170 851902432 949267588 92694543 596733911 809357115 936453872 923501375 986927647 981635592 992214637 166111343 301706373 18782446 483403527 373502032 481588876 417239592 833399144 584968967 853532055 410210376 547599966 949195499 974788495 700142826 989234967 97173055 624420590 803237828 949470251 813180522 890120620 725980569 746873527 775613962 849260515 564779268 654686872 305742665 429001883 464308729 501611621 329430244 766448615 966658489 975154263 40338700 148728339 238908233 473440526 573244769 739585118 882552546 941366671 174569882 541497303 600656560 991643346 747209388 798498832 63232047 615824652 408440550 603022095 926565338 991415308 674366671 894460721 945333696 984388999 602845527 657138078 596438387 945802182 433968019 977478668 166804235 169701515 260922313 413835696 825896625 876676241 336150904 906170868 398873463 577952412 116658713 635029947 649362775 784380381 272048001 838175422 475786890 983696995 952214640 959411095 18194933 128441938 614258782 672740683 72288713 762480374 901445325 951549100 620823559 973829388 857306778 973100885 274996433 320634458 822638371 956653011 27510792 347352042 196544558 664751797 459280164 465872003 15104483 799880553 994693123 997887741 448794508 890414090 973758625 981228562 382240937 731046998 454282218 503501258 423511852 541357792 719455287 912774916 623025177 882956895 587648455 960284237 253965059 830500271 461244297 895771933 843916255 907075343 30258472 915271158 619841785 802408544 146793933 577159305 950051635 987511256 14414228 621572364 976149151 976879554 880966055 965222122 587401616 770050908 720482112 760537695 674640439 702790198 630249465 671396373 272098830 878585990 170045167 327666758 260950578 418070031 92238652 633455870 20168925 383088493 797386977 839591709 715295966 854653203 699439917 994868775 755443148 913400553 431556598 536058506 497476830 672489365 842372210 909964797 684703184 935917071 972789217 986823231 413033353 563485128 648697093 773632433 473682087 969822252 411508539 858285932 68390522 750120065 435383170 469504503 678007945 850003401 974251784 974467662 924406939 930206824 567669945 587811087 771972997 934837478 523123961 551686306 975804881 989646392 59405128 265741987 16518579 636991535 247851684 928354563 255793951 489413269 463662163 812742027 665302649 935925148 108913085 736035795 980301425 992732287 264074489 770993450 87226743 548746816 729872563 845035637 990525964 994774846 489614377 977810185 196948352 594890446 206190231 406790697 497836263 930894530 280861670 953789948 646805696 694619410 51682570 353138765 360619684 770042677 786853271 966345591 32511492 74903995 202409405 330405695 913976803 939072610 533044046 537964064 245902691 718653965 865936583 986172782 489798115 864995930 241326743 307621136 101124466 630151808 438862813 849095859 728807255 792754780 998634687 999070411 148902330 738402654 130826747 142056175 129850259 148802891 167342858 566281651 558668893 749646465 606462516 659091816 499304878 770893648 848838409 853075795 111160343 867386058 146984014 309645021 515559128 679927588 186280215 550680290 901152564 915759883 388195095 390373052 300768416 531787446 207979069 572313754 978031251 985576644 491744459 683604981 712709009 888572451 707711379 963051740 796588830 890628413 478618265 822397112 644311820 654304429 559388072 992956575 907319845 989297298 796144749 922096599 811423632 967766362 537618001 855771079 998110897 998621338 264403552 819726726 446804989 739009276 955653292 967289578 355709201 917777098 851144385 971475673 269670966 597265772 154180308 758410098 282604156 337531049 182621995 694172119 493492060 808207669 24794902 994811519 733288181 850650855 154051295 375573743 770040547 921533649 442644056 776032919 519784381 958603686 306392041 915953140 484507872 990933464 774720769 869407510 905075258 957571119 383613922 634027367 806029591 864681865 324920708 975655515 681141381 888307283 372053310 711337734 623221070 788036691 976317173 988669611 838043437 932759429 115178690 297477653 548504292 670750970 689416637 920972289 638372370 915124033 176114062 418280347 462060818 813700114 893643126 921310967 975481562 987076202 949148491 983898230 686498791 908046875 93986038 605077675 907673677 981671300 485234751 564234534 343960500 609124005 549206055 853056707 428807900 585466356 728295214 747850503 773620334 904282439 878573528 935212229 957858376 989227162 919781687 921131643 174567994 913247833 655771028 757649006 459455118 865089712 954248128 992794168 445380477 513375973 834551471 860081017 649062879 936231713 947382084 976641875 627410043 953108991 195286110 919319373 910710858 942320239 603980087 837070902 273440284 599228468 2050973 576423659 70018067 474087201 367210583 503373602 449970279 452390366 818414459 973058047 808211495 921431832 292318868 792045572 539928268 982418851 99702757 901784065 285240474 357129344 255286188 587400155 357944537 531217637 434330459 488892020 524336929 763695539 110439028 437065947 102212935 127728024 820406934 884851183 867815454 914597631 942733309 995708559 674175001 779597098 93885116 384081404 589075730 865914391 682089817 687151653 738295719 753704854 780143577 910053026 276146938 384120390 271795307 417540461 865998464 935988072 504529242 992575518 313485535 910170985 981458200 987837936 581010689 719557744 604364143 746397394 92439260 619833699 127170088 210676452 412969029 499278430 263983046 286844593 629072276 882996626 737521235 925650855 738040112 814255649 946980521 986064658 405262319 759359362 608332845 913291495 56947553 685074324 840117023 934278955 678818468 988137082 659685001 776183239 787187750 850439730 401636269 539643707 194684923 837294036 365381496 930639711 282093967 446672611 28306338 927167895 894465703 915233517 616218255 729451518 127855863 642169141 22380787 107958985 292124623 542574098 700479751 775103557 904872676 989387147 643043150 830352288 770163051 801944701 112132981 324233760 969930381 981277504 802981956 980627403 304941704 496667418 832672819 848787778 887455445 928684804 735152997 781233488 531668907 940740127 968385259 995228240 308389843 859244824 224478776 275613039 533957086 552293575 291979131 381852888 231590276 364752303 504668748 818375799 512213491 629835992 1445366 559318982 871563488 974563342 933432475 954557806 169332259 912911137 687164344 971526547 150663679 965650462 814916572 848917959 377406860 636055359 529251694 556458027 325984438 331641097 530030471 560690821 9153520 376248702 561957410 570781330 187291593 743499537 807569644 953311177 781762057 929135828 289422718 940439949 343588149 429458048 941233251 955134682 95661556 479902590 30289118 632260173 116892523 602169982 250218519 336357831 747479557 754133726 990092094 999965682 452881896 894664386 241212820 805301771 321750006 639731755 853366627 971054022 854552174 889411971 290611405 791553287 652114890 815600391 355745023 503899546 282203610 639682481 550481598 747097251 965479776 986093698 852725074 964284130 856231597 975951330 966409471 987266359 67066209 364272625 416470259 698890553 867198107 929939206 32711779 532941882 937279856 972242795 700464308 848672621 24658619 919988308 819087371 828756380 26461738 242423340 266081834 666703437 303895496 950201112 902617589 978262562 998313538 999703452 949529430 966120204 831253180 993504935 915422453 987715274 545949874 601138170 920858583 950608761 698339595 700171385 382938816 518233940 733543483 752446570 641144393 676349066 56288831 634307840 960881539 979119877 323415814 691140438 208609044 563549575 85489547 314551237 815858063 917201828 190352368 751077065 540879962 780840935 719427611 962560726 624530110 730383821 239317171 684005994 29272722 832470330 301962879 767800086 132249380 328694627 959148460 999179345 822972147 999592068 733539605 823540976 977524625 996707623 484029575 876647834 235483840 343531955 734413703 881014924 983203332 984383499 781618799 862924369 303330960 808731195 663293588 994661264 602547523 971913457 467553449 607039664 312570336 993679271 79493486 170865828 50557908 902755780 42654907 132415234 497025017 625617413 170386530 361082833 192694012 801231144 87998937 608234721 737232523 976690438 353817146 921942904 446987620 931940386 134914407 758775914 16344895 721169554 567981250 929269027 161676113 396710299 480798169 584799608 656053115 711625371 163016311 816488953 766806552 776982909 136032635 991112655 272538333 701251336 275446860 996994723 914605077 990813084 167987224 392488514 433442435 952902176 355557973 792135523 259292782 459346089 4265463 682249247 408652119 999279057 90590600 788417948 327646747 752934912 464619932 863462254 105566904 336435120 520551100 992607448 991749620 997262996 985019620 989338427 713029369 884486060 820036108 998224054 682959480 838781891 278079298 782200291 53053299 471610855 115582786 480255056 729314755 980561563 655080034 877628513 233642455 824384026 856564657 998456000 630645400 679293190 427378913 955974961 800780249 980420964 879454091 913678354 497658277 543712782 734146784 987676785 829019179 988773857 12352449 656377075 382389775 561388302 945948447 961612758 471461003 784853962 65662442 903219230 6927039 526462313 971615483 991604894 356280826 455939026 908724680 975864402 90173603 545498816 30810978 706902233 248509554 570204044 127654196 885360167 392523937 733995178 832413299 939700459 854594699 925169662 767687002 880403412 641718547 852344636 862622462 874740869 136720407 550226034 488520575 503534457 546422963 687147769 293556834 826000561 243505766 837438445 385577922 908393340 610413889 978411634 241321569 698485238 5280814 703676255 40119937 844139766 563578559 564463986 797350514 942862890 693033594 823127347 223098140 777194371 268665299 468000742 373215932 605849552 406479183 973027871 650276640 660509091 866866015 960423880 940561421 987697744 61604341 139650581 955767782 975799652 942370189 964907458 767520990 962057293 625960835 626251047 708063929 795376792 843814193 948065050 373638056 709182204 339921412 585325971 675535980 810422599 105084452 536062431 996220986 996970308 132884802 475765323 896733474 983092499 350982072 356045654 591250438 887096084 527314078 843354484 662049979 910153609 727127616 840006810 844104199 879439326 42407078 785470999 252464480 858038462 798836637 903075416 816498636 909676931 408125251 963902594 134417978 850345566 637257851 736665782 273537135 802022201 836856351 950537710 402821421 812364277 185156388 302830694 531837180 853648356 894724984 986167741 489875808 539060639 183885879 540747225 729450826 740197341 374810328 462177171 375038606 940416845 697510660 990278651 637968525 839027097 604561607 632276105 945894863 975466470 186760400 195976549 206847991 846996072 494075396 650926778 783514056 873024403 432049691 742090351 727199558 859566893 513730240 723417148 130345765 476031956 639737339 750310296 146238835 629490260 771435551 847968612 625016062 731033692 926501002 932870124 179698251 512905623 405793649 812315755 17353583 537352183 591798529 650867365 930821272 960817313 425352598 958341705 781690398 925995287 966167661 990667167 395915 323818719 728056821 950440727 375415927 454888201 559367132 578203513 665153893 830552904 775019987 957359350 671363424 828827558 117492112 699553010 474129825 688770618 301004053 697678310 66384509 866728267 380169541 769886830 161626966 952326939 355459976 997960132 627124357 654573101 631605959 916829034 583549232 956812973 584856515 655253265 578052359 638690512 628674291 943250895 900766812 953190162 345461312 675337001 209843174 979558985 386979631 715677572 934805984 948480420 774349175 843197821 822448605 986575897 694444019 744272152 602737310 659123786 908452892 948396294 759093114 883345275 970827466 971227957 788780133 940617622 782553205 881385152 241696139 581795798 696278093 793432215 294984836 368771849 864627971 963645700 78370494 215286432 811870393 949809049 919954359 998964718 127082570 710117336 730771016 784273650 980071597 999531358 718405181 786704548 488888931 990507463 960459678 989692567 816768894 887841370 42490821 684077738 574766577 681175039 510334519 617141168 734944328 850006221 242187758 914341349 421216575 905842599 854395583 942179970 808214584 831328080 50415177 576290331 673271885 725957923 390070754 791730985 943970774 985946429 705182025 817773016 818316468 891820907 691807694 727191940 178110259 493934402 795390315 967028302 129887214 177455937 629246868 630726897 77192734 435798328 133130094 827051163 464693733 620645956 466783607 746168483 687614872 978532263 48371706 930333882 693978467 793672241 696423599 734945263 217228399 671326145 923528732 923844953 807894496 957390414 759366974 983522299 455027451 521206995 65235107 754418141 921353708 923753896 955102163 975183224 344519693 823427711 117386929 819719924 337426764 683871100 355171904 396399013 113053213 867976608 963547392 993401323 200249445 974247036 959898124 998194892 429808152 798179287 56748898 503719836 205598657 428618023 875725684 918235101 193859716 590138615 760386668 851707754 808031517 946842498 16811212 333663211 823760533 880982745 973679118 998023603 229342375 398186417 803928869 998597405 852605759 976648148 26343554 64437966 228082031 535282378 642096564 917944583 502780281 923427361 321964962 839860754 295800821 590340649 498236729 890663088 863860594 942170382 343205292 912201868 324720648 855012095 235099921 699518504 189191612 731229949 303516720 467439699 223633979 830644682 255355854 893655214 712977728 765752692 205319352 664085439 950286961 982082774 884213523 984629010 779494419 796868073 840781247 974459058 780524870 786469746 180314675 710308333 773082841 795435677 406816406 621947350 171135466 748903217 102081136 640389862 967042247 982760207 395504410 857537180 573466033 723169798 365162373 462021694 609201776 809972134 936288637 977970287 693108803 955024748 858196884 999269762 879209558 921678777 391954649 741818721 306518198 730873149 810090409 857422593 793650844 969460352 755390183 947510229 251164171 445378757 611719287 838531691 627327837 946135931 498699364 932546471 154049841 446767586 664815389 839761994 44175195 93389687 808930492 888956944 934093907 959409550 836162532 841208443 519543562 996486935 223444486 506865574 519290133 573026259 678768239 711268454 378797517 379812858 78757662 298192167 956158789 966290830 564888352 834953456 616799554 675835644 696350034 993291923 529715227 671687398 179493498 403700244 986315750 997907359 539983865 597352686 900473244 981712526 409563021 942505266 654300744 985783142 351247466 573897391 172219669 645104919 239473536 798733718 562933287 801150755 766803350 881387079 465008401 733502018 349111934 545503863 541123090 882068735 723910603 810770514 587891416 712623211 811845309 888922393 899409425 992212393 407512671 515799096 3376369 401631686 521241431 671517520 248450614 955133780 568204562 746641778 375909549 881972621 532372893 730591022 889986200 906188283 858714058 897586565 281987539 779626972 569780492 938790536 560360395 750618209 780472446 864000534 583305839 734831771 945831067 994849071 578154591 672587968 609080133 609790660 169934642 358123414 652761442 751888386 16243612 255396964 265468153 873768312 336898848 443285160 963592775 979018599 718855806 828445831 552305862 942360756 388458506 771420924 701037838 900821337 612221651 985545766 22252119 873688008 752037507 867231695 832472027 860137947 228349010 651856554 354152143 851852495 552914163 626139573 406424881 702908211 113020617 893456544 41095109 915043567 899867937 907424137 122299112 715486510 689103443 745713247 395168107 482980335 305634383 859630465 455256897 531341515 655883239 863467846 951407149 973569862 882433867 988107184 144289493 894002483 582953872 791795337 971766146 992616644 937016527 993589933 793917857 860998131 157161862 989477972 350127966 388758138 795455292 993024620 263538453 759758852 922171925 924023323 513826152 937782152 575552675 849910807 739521820 803894938 803579058 821890710 905749868 982861650 236403719 929643657 455309730 538317245 306867715 315247640 51862866 931080387 797164896 885636560 261494870 661302042 712450245 815174830 509768855 907504881 372049004 580917943 697572781 717097996 347363733 432533133 307547213 439710067 277370125 474596556 480625066 718224411 400446746 494499531 508755717 987169860 51563867 84919287 236017355 543632220 978004715 997013191 225464513 303859283 516406395 747918560 780698720 892836882 403693908 907613471 380601561 860269561 495888989 928908070 102943742 995390784 90576825 630897757 113604055 347903102 132209647 316273469 666369200 870262906 310504398 715648834 414292114 734737014 592644840 699889430 725650782 891775841 421668987 847611422 50493820 637294968 2027838 633328681 796984801 885021044 550264857 909537898 821566626 868508137 787823681 843913401 168556487 729123321 531949092 546272723 702285317 828185258 962965721 978492338 687242459 947422386 267823754 708756325 972338945 989712226 972038282 983737837 734162145 966794818 172623897 658202455 54500549 578493599 87941098 410208331 164644318 308983426 439582927 677454453 335195755 914496023 863579273 886085666 266502312 684284421 884048461 893218470 687613785 800941016 514543390 935006454 431389965 957208789 752866824 993918343 578672258 941967657 638207565 704888666 263231178 402496818 223231658 307019393 451874764 506381775 641881262 872298547 21917070 382508452 272049125 895101759 549778302 594803707 915236822 928136406 316809513 896234726 680834865 916950434 494719854 616786461 721247047 957148274 207709034 866337451 459014629 694043391 529748871 539173656 130751615 326777586 747869031 774131770 432247148 496246748 813599072 858965073 48988029 744322673 353144355 952872732 190208710 741493590 931102980 981189033 437336791 766597311 748637694 942736960 79773402 373243278 701486609 719974518 463900227 706989581 638985868 922540120 893169873 980617687 889964829 900379108 885332896 930778603 74583451 195371434 423352463 838667234 726188363 902880928 216259281 279607208 698384925 729855830 1728319 281474392 486353036 776009971 44537339 476335384 958275820 995391161 136444434 860900262 917021273 927005370 964228231 989864833 18782190 24892965 594130058 951347835 564933957 571446201 485800112 706430504 351304663 778895226 264586133 294700265 885651096 969596314 576096322 885770745 363821662 517531005 806543809 958586365 308974444 836193879 780198060 978790438 636553209 879108572 865457763 955828111 876197803 971450793 599576784 936250459 172640045 306107911 724969020 894702518 563376465 669516623 566504825 651631453 542420396 746903523 642575511 867457889 544199321 691006520 418970013 534537560 833342083 868451846 853769043 920300373 853658507 898042310 516138420 652070601 370695801 792596542 479186442 599640921 125496922 437408699 846159850 903390329 275293112 406295017 108991025 127053665 357827479 606031509 639963754 952931392 811047592 974095235 338119602 643536359 913766702 994023884 787146368 955680502 507544230 641061682 383387039 670407126 241027081 249947015 322271783 866831070 151752505 807894074 310195316 644227445 796693639 826454101 787713571 989309910 49844235 934313332 210415125 275056997 784851180 985062759 834895349 853354327 340876925 505884869 877136443 970464109 402093590 789002212 400900514 865610622 261544582 648609207 279228145 716278072 873666479 926123794 127205441 525784869 633793696 822485586 340074483 559136312 632611123 930899130 556237784 815081355 4114201 74458924 487091010 540335580 202546954 405272935 315249370 322863432 976323652 977995061 179428576 922320394 716006156 966147186 169852010 255413478 823409352 901061088 712369514 929272262 325048634 861916309 486980296 695914601 580469827 776601141 388772216 446830543 345200167 808277874 160536094 649047243 66480085 88069265 665758657 774390816 405835298 597421774 127538920 641370346 661681449 882266304 356844434 805796838 998600383 999037085 271361841 773229379 979134987 981097682 211760884 331253966 564670667 892529721 68642188 103572909 781287802 881090689 226829836 771205691 481157907 853806525 429661021 804502524 424161119 872960990 405744557 667851757 70515597 255259256 102039130 512236484 281072904 437301343 70705244 308341801 625178104 800144030 756432445 979979541 15193471 594921995 84123012 413371852 169310712 678188771 908850397 944133396 231629279 959010969 209401553 799537883 562188366 938010181 771155895 955198252 189972313 386131897 361906300 712956923 958354811 995309189 16842614 904898154 258957738 343515291 227240525 360876440 217497378 505249288 553802690 590585874 146654346 402501056 178351130 952861209 176981762 332509301 665744807 789191970 7136840 27435712 940856183 991888118 584034670 929452590 929376890 935446152 431078631 553950953 322204760 584444332 518436576 540261195 306473382 458083470 482362309 888568457 827233070 863566816 338059099 556475644 509039734 889836778 132794356 508162597 832342507 964471380 678686176 866230690 165586949 961189502 44183478 519756623 608775223 945149884 587369552 802194847 34036938 893324583 475763621 537472095 646393620 948098308 220707457 951781788 871939797 927677672 480014096 618342735 816438167 868280106 256988114 983657106 21931859 416063429 531915483 636254565 373190259 631339817 922217153 979893383 755709270 835524927 454513401 706858195 108289450 676659457 667419781 997385123 701992760 712090846 201407925 363337151 623773947 898536186 896579214 952243327 102995741 150777072 117151412 919970644 343298987 767715039 493649397 768609266 766340486 979630697 852716267 924929892 227649155 692143374 466733442 796778720 446187717 448543003 305956337 931448730 872691112 952097447 176215389 335094379 853018584 886332388 816343854 998864417 103926770 701285277 697858374 892998706 594692307 982874319 349454335 929524701 775957051 896541972 838903486 927919863 101851661 488804555 58361382 63881776 64664848 988419391 123426138 221252116 122931249 402969106 577168866 858681216 271683266 881595908 387835797 806987132 969627764 999789926 601278782 602686909 558457608 970369972 638467770 946267959 59470314 913453961 933445123 994333139 789589979 956785512 234140105 968941754 983036034 993721102 481583472 652536686 733265453 793701138 497937714 504670095 343353371 996355198 271738387 516055900 988488313 991367706 461117510 735407148 514652955 955485325 201512736 841092898 516534710 614807301 882267916 960016516 955214144 972818020 265779220 511676592 860075470 898267504 131875492 391052711 237630005 416703616 761685290 983816110 67930237 797331902 302157508 677897081 957779898 974624409 931758433 995410835 749701948 822604668 680666936 934643430 836478263 938178669 90576344 365085849 141866279 890074498 728583250 924100810 452245131 690618284 401983070 614653210 805851773 871791949 301021487 644091319 178477139 391937467 401113913 953453823 92151720 978996996 449633883 871833028 816441005 973955935 186097573 902040420 949392460 978900052 413906065 636560994 896125234 914774860 757531690 866163996 177489929 394344453 64196580 254757499 538294240 758024441 784857853 891506367 322978460 854409433 62688470 761936955 361455694 732187252 441550362 858540154 741906424 807644395 103360415 825138484 126462781 577635045 944243808 994994279 310351910 949720645 727981923 926849130 338080051 956600588 991533385 994103373 39759531 235232646 281504780 867466718 766262729 885519418 509813818 909427601 358560403 757567982 290897891 423765551 4161653 994369722 782587555 860198344 331623962 520541787 67090944 341962910 682555794 791174456 451110658 509825360 296742058 430790607 926397493 956085520 288926233 352765974 876291881 876298445 969429206 999101116 987022648 999733405 779377441 875636846 828980109 928557145 122372006 624414145 229579804 675409818 849531882 994031426 496136871 958593313 758686902 759509492 286536210 649304584 144757501 931320885 847045765 946260043 910239209 950274755 564832884 855565250 581631378 691663216 709387536 993082440 486146051 757134354 490807908 661310411 569195722 800951832 41024795 299527378 598918178 822109074 823499252 877993671 270210664 317778460 485112589 687200362 130871943 766586039 966079869 999345174 979852449 996521825 487621574 618739892 511194012 913617546 452598198 972754410 429564954 939253048 824464199 904017138 204182617 465040385 368597491 839250722 595578877 759850045 303823523 780378730 500884096 545229406 469443103 717796321 585584627 808393019 502220991 769775416 301657204 876482805 605460176 943141244 818084774 879549773 853124427 857491532 216858870 557638638 457494611 907354295 461763715 466547617 684706711 945543138 855392890 944047365 7258808 595727626 250196841 812677076 90265905 723887839 33971102 106679118 501940860 672975019 67410244 803862172 330774219 691517099 149856175 550529817 454686882 949969965 564750249 782999500 556793995 768836058 914549419 985992703 823255492 873168144 333249007 410526648 10213997 39036989 210092247 705166241 778617915 850124391 270962835 522961910 7905833 679414997 246766953 510130793 846355414 881413157 271903314 888166261 249327811 253202142 665627055 795717133 537727571 742393014 636294517 735220277 480850807 886492241 32386655 74664390 239700592 373486903 498913680 851085417 265543053 795458132 432119705 611751025 249590515 355262394 28374088 128782126 621652377 939105359 8795948 619441543 207864933 734168655 407467345 898786175 351590239 951868436 496914405 624952842 364682747 689284652 851010101 937779545 629097732 684378158 856810653 980845061 978531491 990995886 755814157 758710687 510828709 828375892 324875145 839328748 543061381 585755144 948974881 970570707 254203209 673128815 40582547 83167835 153198838 162363200 273527097 690676714 938002458 991470558 163477624 732739398 631802371 954864313 479465025 985708606 752360900 769143579 139249598 475088339 161360252 650808714 452211325 888883467 688465978 816883237 562492973 858397815 799595632 980216119 991973924 995149682 511231197 625661003 694590672 979436976 656800363 882830218 708254349 950224181 28037279 445248161 266234026 780263091 435903986 703486717 441001517 487969603 157364788 221315338 697948677 961498053 869543842 904214572 977010306 986915994 997998492 999263865 803411880 927317936 268629870 977258054 708303600 777760366 685391655 906226727 804336278 906315646 146295136 966816979 143171317 554871231 256240356 585911841 494160686 568095491 298119522 829270671 391724858 778619502 743967139 842781781 113594819 448777167 735623085 851664552 858768692 932766258 692718746 838347760 502889661 552916768 55730621 421913212 623312044 948460505 705616477 963264385 614329111 738611761 333957775 840626922 854429906 870463855 561066461 825094456 61587915 255280315 540684846 839684093 292940746 695625384 993181075 996257020 966406977 967857564 212789728 237532678 133220797 322027972 555256171 667956991 652257754 693570307 857394251 972845085 875112753 955176474 947759676 948076961 690239793 921814393 913606423 980395270 820671994 827314186 924582005 954398245 743974045 893227768 533824576 579579960 465987122 746208725 940978298 990830140 740036431 752507487 689982795 805456402 892029343 898160716 572128964 920388134 929113879 933148666 728975472 891418071 411659351 912876763 607365067 732858334 278048637 874661593 677613489 832774337 522114388 853172570 818103491 963024709 596401481 633334625 317700276 813932850 432460368 776381121 587644771 660581639 698564547 740874328 46207282 574244123 653097373 774071505 542377402 834187541 199787742 537933264 777476020 799529271 656789721 893607138 738836803 949195235 838983034 963778374 765822596 817744875 346055815 629612070 772489531 801126501 966896079 969434871 123755207 652278871 234595535 265844473 903347502 996103731 280004320 894722288 919256347 964346563 856750939 921391472 640687651 997038082 554573133 989789790 16339816 884697282 414876544 484046933 671298313 955136170 307876555 472101387 618498195 965112642 515874972 633988167 557649094 568874828 58843364 674108380 932969166 969988850 91359518 916553106 710756768 863956569 217114258 655176645 143199011 143838108 861709277 937403477 60223929 562099483 897088379 976870040 414669575 989039511 546656045 860947697 470447644 970015244 109756496 151478782 223731616 456984826 413625787 731719890 537315065 576666574 825136439 969708294 85609895 725938831 211224667 518433197 161050498 753331358 781631987 964709614 399425550 830649471 862800795 992089626 654194293 764871049 89577262 965275095 723230871 802123546 551259807 852435044 81572620 373626685 861828523 979659024 793002997 960301756 500910439 882130024 461281712 849521305 411789354 817587344 51028131 522252502 960714401 969014879 964084053 972753711 822163277 961732903 500061725 592674474 381748492 933809956 419203117 923740436 570229626 592775214 827373786 886621586 883384607 950105485 12519517 717188877 281413664 364504704 507402561 591240833 698198889 756752984 835143570 929774999 78185567 156786112 106571077 307831359 375481595 866818044 108228665 718349035 677160016 794073355 48993182 424882393 687628825 713393046 363247479 593776287 728825121 731000199 515116179 583551140 965844500 971004012 123676292 720233342 398688697 960488413 402882374 803871245 531182308 558687569 713949447 750880393 567343296 934657939 835457009 843340671 756147850 814176899 278656999 576807451 775875591 818905946 300617332 434604452 345201163 420865056 730284499 936527616 389999582 817532928 479167098 892599205 499456454 998015538 85721145 490577597 644300829 872781079 89737016 356697974 375782907 945944593 517306637 522555151 490300637 516458972 82971283 579068470 39929079 57585414 434487876 988201898 963598108 976378620 550169636 923440251 283758297 564675025 291516504 613612893 486242945 879824267 261015974 489435203 510154187 573912773 929201736 967890172 32027083 800511065 181366416 826223568 227120497 750495147 64554488 111872626 658383357 701286038 871026836 962458887 183166676 251115185 124260012 167037410 546550719 585013595 392013301 656333860 88241004 618517882 861919064 924030721 919122534 969800361 381943127 514094149 646729833 966617655 841098939 967675493 965304953 981040268 837841042 946510406 746603407 907706260 607887854 813822113 433917495 832988088 226247878 950539340 364009172 795976063 251200761 880168311 179036377 633691985 689321592 906076374 20138982 130190599 812973503 854236917 603304685 607209405 664241743 854520678 439777156 866583295 876386122 963254234 57308273 705470688 128356811 534848146 612983771 782180301 501818371 939185163 805120257 815771338 446123838 565773119 935191046 951627724 485045392 666652383 277793678 399611636 438246615 869408141 392957374 396267342 702241578 711077784 286921213 586341052 356174492 733439354 890177286 907449666 180865120 311744506 719246138 737777006 489318552 564781780 780344364 894160183 960728908 999723661 565285392 985368470 512871761 737489152 126688693 794468766 996143454 996191996 48579575 585126288 149000749 564252676 434597489 759490474 232951757 262402646 692383712 940177513 793828458 954590790 747707024 996950505 970183924 974868752 764606560 813394172 315306526 556396206 51046237 427136804 181696354 339957844 712713086 776292816 437414509 868760664 697160671 913050335 784959908 927531238 597089786 605370341 141194388 387631996 735381845 860664013 209515961 365447940 571245294 863028678 433076658 628109036 366214395 992572093 974645886 985005792 425026166 768836202 660554491 930562993 383941366 695035176 295791729 702608681 429533487 788097429 165092281 242984042 712718117 810729767 56083355 221006759 800441473 882346652 957086170 975001094 670221323 957195927 714243841 855900459 142661582 552110554 323631540 698276109 637560308 698487975 884152815 973999646 837170530 841033240 768731334 822363519 893678474 951842655 293264051 458851527 197282614 261063393 447590648 747213264 410258392 997931138 123713285 838893508 525024219 715055147 706226801 769009990 204295584 604330950 710051554 996593555 697700460 741008382 200596981 297409561 887576359 964391859 117401662 986466137 182674581 268947200 64541131 181297858 875936861 911756663 633294271 980895715 42868420 163804556 496327631 747080374 76223560 877720710 695135663 770255730 384230424 418489172 780923607 786091290 454598798 576460306 259524227 368145571 355685176 423912544 9130543 729997723 831536627 937519883 829757840 854979587 243690976 827367240 768713261 903238037 967703672 990436403 428942275 959922127 319859138 401116982 515384708 721854771 392553694 402405169 64890586 511777648 782250514 851274895 117401856 420973387 563152943 592115814 868956649 946612285 496568537 823586960 170390407 458527966 529109217 902354031 102030966 134661532 810027526 897679754 286014147 620056778 12053723 788028743 395615659 571201504 226510509 992468553 400968189 938462086 170202678 404815183 920370945 965263939 403012866 538259326 248586546 293046739 456833440 832760633 363042081 747343899 243315712 717074266 68261216 369550186 102152125 544498992 427814488 807777531 507546362 547044517 480953328 623490448 851074445 931179863 729431871 919241928 146997005 153365604 262444778 845483157 778103606 842225817 738169534 890789110 870014393 962128213 801108965 968392773 210372579 423639338 923343813 927194048 344691267 905327007 972749159 975968417 188811725 693032988 433720826 454719797 469618033 655855130 544354213 706409999 978810502 980267655 482974184 994353315 735411084 976722420 883418927 906297705 43767382 234740606 883448089 938772901 560132606 967791789 735870612 893205776 306260167 514975794 180889201 274075616 230893216 740634148 534535736 709807687 385712576 890206453 10481264 126761562 726284266 875706808 677037904 736677567 870774076 880834996 544441405 635662939 857156319 876716981 5815660 944458273 406277818 558469369 977653445 996923151 35223628 910917260 825828369 974842019 217801207 394506685 624136255 694304799 804440640 880932706 290291190 850589171 665031434 905277443 958908996 975010787 647546668 960796056 189034995 525672258 372695404 960704554 622892856 959457221 449228343 803699940 831208903 943785031 440091107 962936127 369209540 965173139 742579436 820813165 49137834 426688376 44399657 163757439 865501784 970330870 205874317 847693644 406220548 572272198 337797518 368212553 293749263 438192552 102748009 804290996 85823809 291884749 182146796 544972170 13828327 44089697 525249649 985892536 312751562 425360757 204635249 363840964 979121548 999245658 136631068 296694140 347089746 539053281 558210004 822526895 957439271 970606804 10000433 858520043 995173599 995699412 99490586 186573155 743652536 965806164 637203345 752078305 351051581 834278635 630382596 904364322 992107877 993737799 797243683 842231989 686155814 907086322 545801539 658913777 168659498 675309124 265759259 920332599 610424125 623139046 409421721 542823296 952742677 992593147 312568468 929546656 683207924 857782319 568695628 945422746 60422885 584231057 958242752 998361714 194045949 911658276 626723557 886425918 306753948 574266338 148706242 470884836 934455756 968198820 877972570 905717627 482488162 549493608 397639091 813667084 749235940 756707488 429812884 610722367 297783987 611054726 488653996 572726541 233168478 670093805 942839421 989302810 684329761 869028363 282461701 732878653 547919655 755372057 233706329 956004374 524727593 909345674 892805808 965944047 54578003 776157714 391228383 905591184 265230238 371794499 152313358 241843248 893895689 944777736 833291992 909326826 190083527 861440281 3585638 691134268 907871122 920340826 104641616 517288856 763739302 854799854 127617082 539064739 859009458 882910013 26334808 572743394 437694134 548128842 650159985 920831245 905574807 934451984 114740916 132325150 891549200 942475068 804318454 983026444 933136889 977102578 398846088 497955241 434394335 630532068 138834602 485326201 688890371 990177487 577661009 925685508 109872913 268456452 18225035 746510520 372782180 494132264 404088844 753556840 225205085 961035040 793441866 904431811 694684786 829008349 892446563 931130810 899005504 944897812 251200241 933936445 434742103 841369697 286224579 529279008 923254772 942470543 753394288 907841045 712503777 721753394 699995860 919915357 259950229 597355664 848437355 973721786 699994046 777359743 526572678 918819029 575049921 602562055 337593300 590582603 873637202 909467325 698755784 942074252 541613236 929682851 911800989 931705115 333820492 517760185 245051953 769588972 154677129 576039937 433822353 973178372 906588494 937902802 463426585 544511412 986386993 990189646 382681736 949985613 564901825 968019756 309021576 885237574 820552818 838596584 447560078 902757227 113169374 693342837 994082260 998980036 563661570 932956246 2685463 35009151 562887047 943488837 501226375 701567247 454592662 939312432 692603249 889216887 500625674 703549840 791992911 903208821 205541099 830335015 839043393 900407530 497614353 590285804 863694678 929575243 901167822 961055553 869462953 997702414 958460374 993377315 48365557 261210909 166557258 378545334 960961055 973772695 720562623 924926158 460129541 845790683 486436114 669132606 862415462 870816310 355930852 419862883 666315873 756655430 130965200 825960593 861766746 913649754 921463247 981350328 340511571 468556164 144363378 852576387 968520110 979545421 415187864 829620584 118622866 275472688 279254238 955943216 34631280 503289699 852941006 968075252 773968994 969318605 2209714 813816630 970793457 979213130 998539500 998709704 943509736 945075310 991500657 994175016 468748807 800603080 959719968 963627800 250654225 919202098 831052595 886135999 368567904 645387720 368060201 860578934 971871220 986738988 10357845 683279617 405693683 743133395 381836911 782589515 79111532 776525948 322745432 825693378 318765774 676146219 364900069 774263430 516520821 684798056 726958848 964595460 523159062 789833882 992055875 992906425 238391244 872349408 833341753 839399017 435016539 529096398 865569129 927656839 276871995 363475148 219878914 229455847 370233402 559169338 859324414 875992538 429576330 858281875 794346 807946544 822078089 909186014 233864944 235060286 945256785 995076029 743953161 883146899 925960164 962033100 747704423 940954093 254231279 262657170 969007547 979747738 194193631 524209768 686954548 980190527 674832780 943992787 560935858 916828757 231793019 963861759 539500188 712378119 103879907 285542101 62844708 391083375 36380179 415353972 211391590 491115917 337754151 918618739 849933916 902031898 648737203 966129142 801456733 952785204 787171956 944989949 846637932 929633870 565813548 619172888 422218092 516361825 869317742 973920128 107136458 692674314 890684481 905911178 832502421 970562392 43337887 330546808 330128104 733608409 756953794 863611854 983130129 993900586 613516524 894782020 331968440 641082836 984638688 993050646 615068725 775333324 169263365 996237783 168867052 712854572 224676278 549480144 425219075 835365856 892502113 932375941 332306403 348681291 375498474 525546382 781668940 840079436 59878948 108691213 592566065 893361716 823939953 867769494 261077997 864176078 201727536 320563567 204758467 974756386 785849973 874528871 948298284 980627031 284341718 795988940 452592456 648375529 108833471 754567265 153830784 180367314 189814873 996231912 969444658 994566877 368966555 545495453 944812034 973117968 398308590 429282202 16996353 577495264 803908859 842156080 946322658 957585268 826930099 974557412 412649595 941080174 509518541 625150545 31476024 150162731 261579347 807932565 651697216 717434584 949829215 960228901 660906647 896158053 31627160 804043177 869523780 999913267 37633403 614152726 588703569 638874753 730072387 952189067 144431231 762612648 180467099 930309026 110119218 554303511 575765594 620930527 868012149 941859709 546136189 611741960 796934072 919582407 197356189 609265058 797379629 918311508 847394544 876779181 63764138 120287981 987489550 993700266 569624258 876537899 514242791 908836330 936699854 983225066 233832680 630280013 743589252 771235010 645836820 936452259 791856031 800090313 706476554 716574312 166938858 610214297 762162095 801538126 764559259 910308469 794712114 903537918 746819504 903406374 685604456 731913371 972926166 998177398 505673674 629048831 631700288 682703628 294847730 625391415 384951364 551707200 940507314 961229196 217256161 946318175 523918478 615956551 761839680 929904653 886002384 914070158 613216335 888133512 378694641 735749422 795388837 874623370 975189557 981978955 193404823 385484238 680587780 778312772 572212437 627102246 948748142 995632139 916707146 960629634 400903658 416812615 654681175 879986259 75391167 402847228 672098041 988605762 855808806 972250442 5762487 40358641 396728322 857204101 42207982 530451482 464764243 730488280 476372531 951255049 176191884 919803401 271112750 425917879 647802454 909026863 738314383 824191845 717302918 718987236 963395575 992885494 277355869 455194933 577652851 622928291 391243189 626438892 294946343 971140677 824356481 875716702 482206213 835319688 323162601 401070201 596389383 751648675 349872427 578483461 473919666 616786446 368577900 388741054 892304383 923112057 658701468 756677868 686563331 986994787 669571432 912569052 744291460 964054482 308001726 685409412 570658852 610207174 339113546 410201270 191101887 497525495 252391408 425958324 37958432 876174489 71986212 438013345 364062566 522891077 767321708 989592583 61391983 964789818 439300394 610953228 289844241 422109936 882267533 931596690 107917380 697095630 673901302 736512451 185632176 506688378 524341670 601569263 642704623 642868997 258112318 348753079 980213570 996659724 548104888 854164077 57280965 690430095 156266470 506205280 779518025 950743901 125855206 295513325 526901329 737871467 601211965 707090509 735687783 892582496 281121297 304305646 527461584 669507037 995176120 996723249 417228883 520976775 276260839 947759222 541333788 682242471 320065923 750654354 98180084 829835058 492693477 607434522 617224183 988340817 474295553 628478657 816517189 863561631 918559982 939119025 38704648 930784158 157507089 430736924 853462553 867851651 876306128 897003220 623861499 676398926 462981510 733675220 107481005 825404973 576188782 638064900 634224521 749112552 315557660 538791501 748293832 753931636 337500730 440926444 103387474 900178229 940444190 979787069 737413739 901370237 938051717 974944915 670269339 960518887 888425015 981247488 659257823 874551108 272033007 353682968 462534427 550568829 302272202 344586272 416884121 825662380 539768705 784663688 239100905 659001297 1937797 570521343 168320676 582112223 442139876 737071690 14494266 916271243 509112069 948612065 72021297 580521006 420377912 686892002 866158509 929903642 387387571 721815609 419791060 934425395 943599855 944411665 594258184 995119040 444951757 670281204 483319932 819936924 287196645 632329621 677929534 974357204 698468014 885592117 751623877 962556620 483126260 742714207 185751510 677455484 694065313 972304939 663893500 890108734 872339332 914994541 92628106 976985108 608807418 887530784 770913916 920354092 642231082 642433634 186785680 525078163 274850037 415951834 300978119 339577243 970390308 992128560 671185487 675155235 228370707 817730283 173670384 384908229 990841960 995271874 763955447 970303646 387497849 390983074 792127790 936715682 778895222 787732698 596294659 702697865 734699035 793446324 11749953 92711054 434386241 538802346 279726771 911545878 799923548 816762149 368877651 618800630 523363618 554221691 22465826 269887781 824759701 873975248 137099744 939530721 183458246 725717494 234103926 332557486 678159230 938111726 871504961 981770526 571141472 767539282 333571525 885830952 758220197 763588424 376035974 887075494 467236630 738013347 527378194 879321871 483419093 901808874 651577869 722076391 704860436 781766728 755043638 979613923 879628872 886658129 934504348 956962975 875545930 891961943 698598881 779852634 524447142 910036079 713086550 984762537 23882007 999629570 555152878 768602081 60268239 433590704 24285767 458295884 872454338 978891962 14863618 522634335 690813734 803679542 758810503 960676825 106036978 794427844 698981165 918981646 396327485 511474933 88528475 268577772 492198513 566893224 68534586 255904016 500234519 658151709 726050884 772855088 798614920 930959579 38799689 320580138 497382245 839084397 451895398 734097635 503596278 843158179 593207482 613167066 18317607 601132926 423413173 756985397 363232660 946359522 194444962 943323707 789341550 908941326 880718845 975137073 429066554 618616431 353616894 583666882 960507480 964577907 648169693 661243190 424696815 692840728 432484621 718065515 416231449 658291397 433676491 537614639 831667487 931965381 22013662 370613689 838897156 940426011 721022232 741935990 56599908 965407660 973931262 975290688 993374885 997915493 340960310 544690581 929988165 946753280 563533906 736212555 94746713 564941144 624387304 699889392 696798480 782169860 977955522 994129996 894928072 991316604 81477719 707151465 758420561 865713460 166338251 307116617 604262457 972778180 246910042 838780249 156297608 159967650 593307126 958914621 22274111 46446787 831481656 859879761 17737100 697092788 882430945 987058074 392031025 930703070 238746044 280930379 82773632 404782547 148234938 892133673 239719003 775004262 306613164 528367331 908237827 908298524 343920512 507372542 708821447 814915951 378610420 964621350 554040372 717926795 349270250 635538266 555467461 637861929 869860957 911250128 77347235 703366441 766236412 994906096 556448266 882055315 746880839 781525867 537142833 852100320 771887505 909167299 85657566 764657915 688396051 912531853 300143413 645495933 53654738 68427081 878252549 966385825 963278008 996830232 74488132 399646497 30430620 997224554 502452185 788149762 937292701 966297976 606230371 791403199 672712155 890692422 550523236 591559169 709180406 921090273 274106501 464401981 902756242 979221028 546417107 552853238 890612478 971595783 741441377 900547853 497716216 914892831 803893949 804006723 111858406 228970026 688145787 989705683 279227568 993617141 288035299 899497580 69344899 929653054 576759826 853286115 375167021 578214555 7596081 457861691 999191947 999841476 30985409 471621757 836690061 918635382 893220670 968078585 585334799 613802877 479799267 854717759 468307003 903360051 765050063 895155663 317242447 504357476 524657041 995587448 891669824 934220170 35686916 134631903 258596977 302380065 765736426 892511152 877369613 908108219 208031186 846542476 669404703 811393218 62585824 526355642 305839269 742317671 178693364 678937835 107665975 439764684 222749332 408005119 89215458 106538126 769208901 941512089 416834912 445760378 75849296 731011981 910901280 987770698 379376611 702307220 977606621 994488441 961456666 964435034 904463381 985023106 987714444 991509435 931562278 978225351 231853047 812944206 295022781 887381208 291577138 404556276 376181291 435049805 911040019 963663025 876941336 880889202 360773033 572958804 166132404 202841649 914338749 951788040 727628815 996164169 144300279 298190102 84289177 731820837 5638399 920918027 996601491 997035359 393372507 958116707 631890349 776191545 576558828 797452130 752632359 890808126 996274194 999171558 188536571 679053689 892486417 936190021 189691559 833405508 808273933 951794419 954133200 995838935 994755675 996653180 866803356 945879400 511997745 709064905 823499275 904727939 710080577 951760697 600577970 824410391 76289780 470240078 171210457 405466909 202200195 440791431 674492227 966142576 516772624 979325329 5324911 417409994 47764060 495602463 465256834 920206001 197762408 762002272 118352696 611714696 354633780 479766594 883900665 963511102 125897634 897316682 850582794 864363353 830934318 949191500 274898172 447534943 206808453 998588887 9618378 482733434 145819035 281776203 389724327 945707531 918694044 998139161 667167473 942140166 236820536 312566157 22405502 283259833 890630235 912529516 963181350 999070904 964854554 990941979 487407395 844818694 733161034 956895836 594833718 885466985 999116858 999439937 225048952 581744152 368769084 533743928 269852153 828623420 925919900 996012355 845100740 999348322 401649076 993162406 330140477 531066906 663297193 689799525 353191524 638153212 749552597 865933059 593601887 689747103 615405942 751116635 548296474 558139528 353033110 538312481 400956245 702078916 200452897 516256942 978865687 987942590 190072889 445904934 30868202 888611067 228556353 744019493 259522401 611519564 881612421 919918461 516499860 958966594 810201026 924014105 150133666 330547517 389861895 673541451 721007691 800427684 576928724 893140106 597669162 783579370 992826357 999907025 711313319 953445988 162588817 185964814 394189197 603011774 274585448 966382515 293553215 482241232 260597827 950197206 355863919 370693300 787042008 980447802 103825036 708143507 151739526 651063210 329070756 721490548 820533884 999289460 586194214 726158847 309105704 721447708 569883138 606641626 519608463 604412726 60247146 586895322 705456162 716890672 825184049 907075909 782022571 812415553 130680597 318912983 658377905 775428746 446403489 840173382 865714475 954432327 316732341 515261351 723624623 925862972 446924756 606284252 611915255 664666795 736287078 848117400 239608035 483882605 236601499 686172779 251832292 863138621 17517904 211527310 776937767 838027702 315896345 792676297 554245528 606533460 175209382 818874961 865391752 886890210 137940173 858727646 145959739 619760372 76900502 538874947 673475625 760049080 57271713 72254581 35992588 307300109 254304827 821542152 496139699 605266464 745202925 838709239 463210803 627208146 177309660 945826680 131083011 594723750 136243812 467723179 227864627 519635191 461995507 822796737 23230570 961664900 758279276 859758140 868176078 877374757 4592290 485160480 794812911 888458489 189088808 934481171 203845195 848226399 169083392 385173673 884154622 986747158 398743391 664372781 79305538 156182956 54888409 658702918 396004502 970379405 462298128 510967291 742565026 804221824 692154619 889438915 661221239 898686229 387388474 726497917 263273298 806426661 216664609 285080385 591207848 771273950 73062976 823837653 642080303 660953328 365913687 454157777 637182888 887730589 893012574 983988115 269994136 790415341 497650117 922388064 197502820 500126520 670894529 824794155 271477771 844100976 653560092 881668731 95436710 256705024 918779180 923389356 189002424 741452890 638044353 816537078 590767399 619033270 982616902 986960746 499798142 961042386 537739239 704164504 727657732 879152696 248788032 645313260 781420362 964505003 873419427 913776462 230464761 455759678 221727871 869852587 705845824 800147444 369335743 976183148 420910788 649836063 62882087 423957191 894762802 906897189 86350670 998334449 98621710 562698696 670429292 765219397 49837017 778136201 369690496 477996392 999817475 999967018 284681728 953191872 280085338 956089352 363663957 736053199 902762066 965692822 11520689 653560612 566803184 764862665 351136237 876326688 879745418 902592370 993519861 997690983 499881838 726049219 860739943 880782751 671668666 825474948 894763374 927999028 175769881 683899511 102537725 931464424 142492749 630191617 686480163 951580174 836514180 878362354 980766794 982320545 28233957 763692288 643320554 785340661 332365788 503374980 232561158 531702209 605744856 870023032 43627879 195020200 379367036 851518051 784840262 880503208 2006047 658338231 225396629 633194079 884376851 950994984 388438358 615108754 818708502 848240510 10798098 672729290 902613669 981982015 863193336 903112916 205448908 410170027 318459719 867509293 407640151 984716796 546935769 600892255 690572222 742539676 860888591 941895279 673366218 904587306 271751048 792246419 445643223 520460481 973937466 999579856 354171385 977652518 957425666 993328293 366350321 787606707 376110774 768172902 152461776 156891682 830378400 978099136 295727665 701976230 719956735 817947637 701360105 742525052 881016208 909795406 514353629 994710158 501531158 862411935 980638691 982947760 18941896 280593952 237638887 299833977 314630460 778633745 639061730 665520761 143776556 413670406 22775187 795323041 955438772 982282825 582240095 759401684 398643498 873268926 22005394 981688994 891439193 907983220 506867617 578824849 146437412 710160018 215127317 730904739 853390714 957395776 956896332 990543241 437779714 859706766 980759347 980780948 20666387 32235884 222229155 633167024 865920062 988039033 516655663 878786967 645365907 697498682 60917360 558273157 788648165 875658927 833402210 857767465 773278161 774642970 110116084 768815281 894434845 926753338 693057127 947476044 406851505 415914536 893626517 949629825 72889654 431420740 181798452 564970576 391913823 414330650 36342946 603464532 520277923 584662308 458608090 964713629 638242169 767043816 426195549 870258398 777669947 913720114 534542969 786486842 410611766 854838683 753113658 986337301 153352683 541365368 413464466 866470248 109984602 722650118 669607640 766998570 651055306 863352273 915066194 936144835 325886548 561884461 569385108 867885007 975990209 992596085 366357877 932922103 276069026 349574396 701433866 845444968 493832982 584926503 557823828 814160411 503477220 596850336 168488212 189458484 63755397 533981255 428927782 854466448 846198656 899381031 823116980 883195237 777417981 787523189 400167689 463104387 96413893 415296694 451432129 975344765 507281496 639934636 437191447 999262328 388999570 977608364 415069907 530277623 717091981 886648451 186731358 737126838 213937076 719486431 170505839 502169419 826427529 848409913 365093692 433475321 180008833 876468480 388389424 828733855 87143436 415404357 343561542 448222850 395304430 794377095 28379194 994047219 722477052 955420350 382976487 594080601 534222496 961076439 596679644 970229110 547223995 796055871 750662521 810652626 714654008 776890931 314911676 959049753 317440052 550117173 118400854 744108698 363279818 488872997 528993073 774319516 170341634 503405087 296936243 538564120 606825251 804275854 86375184 922258166 509566306 596353776 865641255 869235862 311880667 361887828 761784399 916711924 463168065 473426883 228033154 700100047 285107623 462153340 33204163 925061990 815867588 917483601 961659312 999113459 870095412 964953080 970709540 998424463 744788200 977715448 276794049 350095763 16751750 921981182 660646574 834586806 735727520 820389273 646539787 909668491 237222296 593625950 451424622 849561009 107839714 435340484 570139957 681601259 493173023 496408525 983478653 989781123 260629671 625782399 681341724 755914893 168608898 222209321 143838237 583207639 521600970 563189203 886906253 891821445 782888172 944021255 148878602 925775374 194119477 842651417 703675303 853185481 102207970 462634465 825258942 946867682 459728596 999795590 713671267 854338299 657034416 791155575 842394069 991160812 213692392 901788609 677293135 919817514 873428471 933800311 876323245 964078426 893829536 914135365 642955138 738564935 75706464 355654189 392664451 899698937 24759617 889173752 936513833 975256101 463514122 865201933 9302338 959121386 271231378 425602727 786029549 915622396 138181392 209205578 64570911 266266093 650844007 831162117 475188692 734681754 817873013 985796307 656655681 722077825 573273114 943004284 129281377 555378842 405724516 438193460 3989725 181426671 641655534 690048502 970616694 978466766 594723927 609807792 259624469 721827565 936154279 978237263 649983025 865766034 696815310 718276231 293525305 761860789 210933072 273843194 723348639 912531596 719945286 780097837 979019589 980770655 251094440 367852329 596864175 747650704 209670485 379682699 58953286 188052290 45948509 201721523 803278123 809546092 530095201 794433101 200596654 296462572 908148249 950013114 339864461 631397810 476800836 719844822 331715835 407767846 311049884 937540212 157373618 230361513 31627428 899888471 669163565 767525609 327898175 992235001 35760928 341447277 886529097 904348526 781850057 848821853 682461615 937807031 185874910 283634587 469502068 878493479 138768539 475302721 904801325 957794375 27606412 411906872 872874178 955073025 477942891 813481052 269456487 806925124 453188020 983877392 405412110 554341792 583661677 818965621 233489149 803106135 511169067 625383107 961963440 978712201 691004923 986776061 524131141 883230613 61985644 866249258 504045692 786926148 553055600 868434985 142289367 869940578 331378719 559451112 605454070 718539623 626541021 916404364 832116210 880511717 664245021 795048661 294294377 328761887 418731734 620439829 786546828 911876651 805540641 891187878 572398348 958368889 31824743 513496139 469197724 759954181 777641306 930113467 857290769 991198650 682441561 938851324 437479451 900612177 428810489 911925388 551737459 894292630 351674807 684713818 541760536 861250885 482507180 993903042 229140864 707478814 312677719 327164593 412330023 571282829 179463311 547071330 249562297 697792453 884903039 909494690 81136301 479251643 720242266 807419390 101613478 575969183 946388539 988594696 437143426 467658806 385629414 729009483 604999101 635231553 854294922 859148124 865707517 968590521 798789826 823744319 31407241 357559152 888899644 964600123 840077947 856195262 901620961 956218414 192580737 928694016 203419795 414329370 599234354 778595249 694864836 762684028 991020675 995808695 791994574 823149157 10164810 777473945 202753107 902794410 731834456 755106485 286341526 607645378 365359764 597627318 268912046 526872104 818328410 987102433 683026559 943691489 636954880 741306479 315936034 743585929 915206946 967225076 375455399 708304535 884848912 896789557 483230688 789039472 124352437 797639508 556481361 740686407 423921543 637786929 187151655 807477990 436985344 656812724 365529565 420794138 642835807 789628496 781464352 884210858 29949799 952341497 759214968 845678429 803150793 945430527 273234127 481081183 526519519 638239326 540710660 615725569 82019740 148094910 251803758 956433009 47574707 372293640 812211656 914166095 341571565 976574460 255337746 694638835 419648625 501170958 974899788 990005287 697227438 970440136 363053053 466488214 775253936 902928538 831655171 934336046 371376299 868742951 191620955 603574908 288723620 820448765 940382489 987039746 767911088 998856405 29753582 913323430 649577869 859574527 807273795 905473500 312326219 669617890 133820710 240539700 861004193 920834728 692726620 878356646 553166337 635969216 869480643 892680782 604726717 908663972 147431636 970419192 120492057 585420266 80844510 807149830 913968877 996415106 566089232 958463506 935876989 969729441 724034509 795537362 891897180 970001814 663596386 762412763 241034172 360723265 718160825 885680285 986597572 999164302 694962146 834589585 130326856 985414052 910502162 929021554 990544778 991920514 503294507 747849789 656399041 777716876 524897098 986565253 227155024 652996682 414217872 446883241 775373596 899463587 657422129 988690260 649211628 710101640 988084353 997000075 596002010 777932211 182708679 350540323 674781229 954952622 810165600 880169509 582401317 751170325 26351162 106191724 238670517 450965777 918456764 932007200 405010601 981846571 165188590 746609099 451052732 519894094 2863362 204558880 860818696 885593436 621375798 704045107 574854779 781473514 198471310 201437670 659756057 794888590 517731569 878455498 231661906 312667532 992526727 995548071 655368322 661013947 588867953 817784703 76353381 93719580 269550461 436687660 768718420 922275155 298063948 830846897 394929254 628049187 365478277 795277308 339472200 710130269 527282267 687942178 45037710 740983815 244847679 964095673 26083248 405992050 846390052 905499359 436713189 870601667 201008843 435476395 515716417 677869622 567207947 925775788 755133156 977538853 451728936 907632515 30499022 159646965 502803847 607365698 318435490 822389224 965614168 966805361 112260420 512700229 511669513 902151830 455221576 891476318 820883733 831512700 802937209 967037105 714914221 747123459 196585821 714709258 799115221 977676081 357561203 590005129 288155741 518398229 167491360 719261010 753290113 844896969 856619053 975086921 333603341 851934100 894601749 924756074 130468524 465192182 728617688 995492209 604671789 792424858 318628918 356803541 419656929 821708621 260658739 953666578 270390891 605818801 962412064 986857602 461662806 821311295 124568609 162718740 323454217 647551935 724274772 875572118 941937500 967067485 996357505 996909423 186454211 250081240 276445910 667919339 566463527 605009388 445950272 518931373 626685878 805938110 438029942 657887212 337614020 775309054 926969101 999916188 254301787 677781892 767689322 981602320 537055366 967331160 30908971 779754598 27376153 80262793 905233535 919009880 704896381 831936913 727662816 847665708 710162663 732979095 798922840 894083990 223368501 646228868 988831367 996696751 101405820 884208417 407010129 762497509 628175083 792321584 619666541 764690422 935755024 973417462 935140099 956498843 2494480 761910210 688563978 938040189 427176236 980154394 560116441 809205835 660028998 673306794 481100488 774935809 809704281 876121385 638957133 836762629 394833183 842692966 413511439 855340564 491095344 709935346 539041697 755349415 502405637 586920413 89044529 735194759 336241975 512520131 42376323 491367269 728559 7181399 742802716 914414060 727428190 972345217 51996010 61104836 857903451 921959374 177572991 270584333 299914820 573883348 698804963 699964975 772894954 974807517 267169446 965509397 510731214 742309426 762245680 765880086 313137328 333155522 90455240 623683174 17892746 624172234 466816658 875348033 484664307 750495212 249291226 987034710 660437591 717906793 590958684 812834324 971129821 993052464 64862226 153185999 919895329 933760749 532959270 672260907 429692391 851233021 530781630 695684185 246743033 685801182 121770667 308027840 988015121 997262171 544730425 699586343 551519793 974455689 66696897 508355961 392772617 740157186 103342806 472965065 471881168 774290325 30395956 471224224 54383821 490763188 811922918 900596585 33896150 796659102 378969783 829795946 592864813 617037499 533730006 540919878 690497355 700974189 531618350 771267279 450189388 880758103 412111948 424994715 47500207 926029367 360861822 662089710 73919618 649976549 218066617 239169854 439463480 997429480 592892299 942318429 302259776 726811986 873586093 987996839 172002407 801470514 52114366 813988493 603047090 855548371 688198084 764357037 796073139 917803600 940914241 949907303 698609582 885991149 694956808 861111019 361107731 677410805 425120135 871026086 653891722 895010072 568970213 793885838 249796979 412746281 493507835 619454577 271017128 904157469 257829097 860295781 441378880 649678031 269417636 505456382 477785100 813423322 874056426 879144876 213016046 604775695 506632881 570112627 637393038 766589497 325841255 896526986 169949417 680102305 329399716 554594623 306275540 936347142 765280896 990644854 541855301 781908227 289315963 590102296 581858504 845020349 254417800 613035149 214099134 397873711 246832796 990035894 240192425 584392636 540444876 581665142 840793172 987020241 956187875 974930664 746061237 943990594 982021610 998084253 287938600 391276146 835678439 872805519 911610890 990922758 884940234 999422615 774588119 797392550 321643131 770767933 421402021 779390423 816973488 932751089 891484463 935825625 3388961 772238206 462695337 550488671 868455664 974703319 392080889 801618797 44034163 545495320 397865704 626547782 221437583 532327291 353670555 969171422 398972961 667750456 387810996 626124666 749503115 886725580 365289803 956240810 246435010 390111147 331474829 829540657 382922799 976239823 720452484 930177611 237302886 526872829 68380735 713283811 114555428 768050040 272466711 841988872 581915852 687531831 457487831 818197753 900981026 953449294 188242633 300131893 299628530 340443372 170226577 222834519 460039596 619321631 106493308 662071977 886115902 910882078 527562181 849768496 482740495 832426204 857099120 903556705 44527648 146145597 646811220 715506113 423531876 605792628 895790491 915977472 103591206 989153985 353796756 778970786 15696467 201770746 308687552 450212791 184914597 541627329 287048005 310439128 965447001 972681634 101260410 929786471 473882544 672446686 739064307 768960762 227379486 959636588 397682349 907801714 600431988 910077114 563437895 666501351 64349514 265942076 385202632 447012742 897031775 975183838 438558866 751736428 390919439 446383059 518485717 757623041 557244857 743877922 274065564 830865239 292296280 705617709 15032794 688198078 439380111 484600989 116846183 860024305 788841956 991684775 59219662 333761206 442956620 715222904 731395506 774798229 96049491 805474881 414168326 798903750 782171855 818153236 247438326 874341932 15617305 510120969 746878999 864272297 358893078 614062826 51582163 936765768 446493338 546960595 961430058 970140734 881646965 968289557 176154459 762650451 141589224 734662684 547000966 662548872 796499693 820255001 106312093 589020720 675191353 746171308 985098467 986571884 190962111 363745554 865680697 947392325 870550497 877242582 942116412 975837352 14222423 320230478 105387484 611359400 23661265 223515520 40172477 500696275 944599895 965967196 866128298 873645057 914665776 929401147 997484763 999018593 313291578 668120063 294180427 352656775 127718812 681666535 405865034 774083464 273542974 348493353 11694792 331812553 779474930 876164903 611908872 933955178 537302985 611489982 381574351 743721978 102903325 223678968 509742327 936870383 558635817 590379337 635248982 746872320 741453480 995237697 314298617 518923836 825391159 867264849 472038916 947951241 996628803 998936238 571626696 892776279 533595018 961803624 920626207 950116414 477437059 625419878 937274501 956653413 969175839 984633624 672210335 743887003 122805270 143430251 802236660 871199010 424183509 582820452 765982364 774297080 17867567 528157554 721821622 740275016 432668670 957425306 878960010 938631648 34158190 302428405 806750534 812955837 318589074 441344100 989825874 992181427 19166552 594574650 550016604 592727419 110889639 636802020 531551310 904794706 808257897 928271747 235520359 359069409 579061032 616650350 923666108 946161123 523964827 848238099 220750340 643150586 12318413 674073279 589446202 876222076 921068959 965800957 512384397 657425520 210279064 577961170 952810804 998458950 881657654 898709133 405921205 731208222 455956369 577384123 491578647 813734700 616961925 747995055 332358587 929631062 236637506 618077067 112424286 269972829 442697782 746769199 63059637 73645232 691879349 780994194 966029576 997068500 216179353 961771981 256572208 762556025 161081673 409058947 459082202 834641121 134750364 336465875 354926534 954485305 995769176 999831349 667113369 758460289 293765696 965741727 635106460 729742529 477685441 532837796 59466245 600433715 230949458 995310401 625516325 785027407 332553042 996549753 690586704 856541263 695984410 789006926 180412088 855643025 727788731 855735775 303984336 550798461 763436944 987530162 143074432 456990523 389695295 803806454 143695425 811293609 270755960 479172452 414272503 471807784 701919908 880854169 720690581 942188868 832356080 942482503 641256590 898762425 323550897 923536969 302462549 800323563 184916030 552333835 642355517 822301356 94110800 400917470 189177202 789006445 184649336 886402443 426613274 781011890 452350804 520103812 42083312 752654833 752077270 894209237 909322562 952885592 873443489 948411737 588696028 910515552 355526203 458623592 209481058 654984131 880874704 921350388 620395696 923030319 140090316 751621390 565847854 872719256 793427386 854342057 972982435 999693321 773891563 817238619 928289438 969427990 566602055 603324231 507501596 704653325 903707483 927692025 595578149 891282076 39125942 939963178 138418467 886745498 897385239 962722031 910494162 911461044 984536278 995189958 893328720 941002813 951337185 989215592 383684370 604400031 864489143 930771966 894354798 994121746 253496197 260064309 180426419 549972508 446148092 450609388 34756692 563117648 575690701 683345758 412662828 940374266 39134998 602270016 159541688 535832965 12987537 121677716 815809452 937260577 800972400 959883324 649988324 827866769 810767586 880062386 685948411 806716273 332980121 977191046 797059473 944334995 568501276 645393052 528996010 686467264 303881520 749169728 876642787 939436287 527857424 734405067 433395460 559210472 373255274 863930079 647572659 652071235 404145598 503181415 330261123 892255416 536586956 900889228 639504905 945896594 110247954 681944155 913521002 931738390 683500851 792500090 721613390 953625118 709288832 920884820 133637970 646844746 744858119 804391725 337603795 425492042 980384924 982707224 822676039 992381541 714028848 734412973 906236879 992982294 857013589 985769367 834937754 997008265 856966013 878534485 33527560 95493225 777411505 855732417 205688720 598572561 299001439 455716220 647168239 744709647 737442352 852850272 11902373 928081202 36197196 505395579 611057770 684382441 190039787 362243379 926761616 986409267 874103977 949289417 118051858 196498096 870306249 898151549 90653783 697222695 868294924 961587859 668189787 781639585 11061129 28395175 21125136 209506888 431153173 572397086 977742950 987824917 88872463 696137741 757354364 772458917 679156670 685621251 824179103 987956524 554284863 860606885 225091017 747477788 135838628 739199728 606090323 797990499 659859343 973624831 731730011 950717898 930370575 960346050 357016535 536441461 443383581 828309227 559266708 560303277 197559010 564629709 755268809 756188472 228391541 847254774 767241700 840793302 57448281 976848192 834588683 993557030 797223484 961738861 965371955 998026900 950644302 958281697 114257188 319689497 496021642 814277990 870881402 935112925 16510549 565269985 312094366 505959624 109007084 350962875 513716049 808792327 392913330 795417668 57135552 724190110 583321403 692395823 497128060 930139897 752245487 943249550 835123406 908924292 8552525 523159801 580926718 934711134 679891721 990570589 853697453 901397921 474848868 571705032 323943624 663019728 470115099 817442935 935042578 985826971 364190701 403711139 655995554 833301997 276923636 976339941 956186189 964692803 912359952 930585733 573533699 839404279 209762949 849106606 82815677 94819416 316027160 953614900 590835286 821947235 198372630 661274094 523044458 733045949 464060182 820785804 8992137 461256540 5677460 755292662 710441338 889391569 562087758 976272036 841134755 940649549 98493481 873445679 917902502 919508436 542581860 872362207 480061666 888576282 189608151 548098029 129202625 993359377 432694672 763480082 66219485 988512558 927169210 943446768 843838794 999393718 426624090 842518300 201659899 506565811 935604588 952625739 632020514 694522844 935584634 980627296 680240302 720323262 505535965 785599250 180738301 212816751 145962717 551304992 891381079 920872891 910797300 931392008 333789959 580757761 423594368 980112595 481103187 805021320 14074407 295148374 665982921 822601595 649792151 669957440 951071804 977963947 985021955 998121568 821035127 896478687 849326955 875705315 946968302 985831011 460342134 597533012 696840198 999888097 468931716 515129957 200604726 787970106 661651878 878118847 502157547 891731743 659715710 716080409 975356799 990564462 403586236 874386614 490326219 738531908 133268775 454166402 969224648 973742781 100286475 997054147 131422969 397740614 719795247 723530989 333408777 650702924 593182275 708734023 937468080 970381244 748897537 827845201 309305137 888531226 682457705 746587934 1302362 26975387 904364780 950093147 231161718 862759405 880843660 962469437 617153046 821968577 163988923 233568413 509362163 564127669 664543828 945490229 24258042 173881751 210650946 784713106 629390773 659518071 410127514 665627285 926800960 989611251 776621400 868146042 801818616 814295668 299906766 926304734 262766691 564047546 958997048 990817690 702828337 829973786 765903648 910137952 632946780 729852811 606979726 953018057 758193427 844157641 171462424 853165815 32759015 470231573 177639308 459166573 794785832 926767097 46458225 915877082 384729982 894801819 215816826 382559448 157825269 269305014 752856181 887518418 15032371 503803737 929282698 948093093 559326533 639998380 414155528 960340583 8062591 374600673 601824676 621601708 761139963 884013343 131641787 626143762 204077066 398529612 482206859 902832526 955777090 976741124 195205255 470040919 529402563 717015984 104828645 473040349 967928108 983776488 166227087 555238353 454622955 835483882 579104514 655099148 876574636 965720382 268820032 639714454 425054863 435882387 805780934 937573052 903987248 970298786 138594631 144247998 388207403 721344014 93135609 479230772 982961143 983251705 519317654 801288877 398883804 911498100 385831938 450832899 892220665 955760373 912841739 963538069 59491828 97467045 29038708 749522665 593345551 943571640 952965498 970296022 755621420 770184072 455037344 521973788 798484466 857934218 868608238 914522586 738247422 969387303 344316914 801313100 690386466 703091937 708916230 997453826 810697589 924567258 847547908 988356324 903864631 987819879 798258759 866445696 317360185 585773033 520929676 722065251 264658763 925962458 860008781 907745754 910648120 956549050 39449403 483324452 278507491 594953301 21007229 412568453 661601450 922147842 964783739 973358430 592788845 618078088 37304744 868877958 306928316 791105654 666130824 972203907 829230695 843601956 566448899 771283764 735719389 915804330 124665531 491876668 740305935 946912132 952208002 970300909 273404793 676695188 551355159 781145126 266193990 425988615 838178274 988937947 546365100 965481788 840558472 853899921 124041104 918571916 616248043 668449085 773271354 996996178 369559928 669898057 614271777 994379164 505245226 505692467 819693074 968206012 390908130 723985698 717515251 853195904 872584623 912286667 770105877 918618391 75288146 862048709 514446608 641903628 777298009 821209598 253306847 860752710 670407741 854158542 188474330 643686275 519780674 755353347 146699136 433355462 567731176 605452425 815518058 882130388 959024701 993254333 32341442 140271248 297003397 842431651 648076212 912906862 168015140 982893339 403535476 462262533 716608999 734557582 320687846 981920218 522327698 808812480 386795358 925584728 272777030 288862328 331397933 353382119 633332509 746382228 271959998 941207680 746416195 970851609 537273795 635687742 137871876 609882875 413586820 904645858 326257182 910190273 998124816 999362499 105918983 748908748 972843507 995079586 648402359 892196072 132366600 333291743 243217798 495919915 945127967 951988930 28311083 809072739 648055838 978194841 391388182 723127533 770487974 832974477 121841390 796065996 15330787 264581837 157617017 366218481 429878306 974878452 658195557 887014097 62224311 712075292 875245369 920331463 774127579 806561718 890926745 983499020 739679578 804127292 723082743 890704548 511686445 548211554 298258012 709025691 877612142 996994417 720494355 735901091 143787644 357267509 768486731 999381678 526328061 642799484 117898057 787526786 297505986 996899785 57482380 806103162 483150433 760663000 692226950 722357299 524272036 631351055 273133046 460311599 941488590 956056639 826315466 843074369 596621277 651862649 37940172 800371398 22400213 425795463 131627516 296319360 708449666 899996248 279531038 659668196 749968335 965946321 895481192 949274259 984093361 984944610 677745180 961036374 902642802 920202762 137113984 949149697 615133483 956729674 470998181 808639390 558984122 641335984 88727451 983353827 172901239 713671958 513165297 925452537 469985376 811596313 690288567 785598365 252584087 913760474 134284031 676022440 359975028 591535443 393334689 956371066 562330856 633596203 516599576 917935698 501395993 555209091 11536709 624811979 128719952 359047387 542640543 836479953 159334147 186384613 572284025 580696064 349798173 776944202 294029041 308895957 248548073 802383450 722322027 836217742 623515450 633604340 655179656 665743696 853405805 938907660 344861798 821678167 565903901 582751749 608522299 687246085 12194737 941799173 26724293 460634416 445098114 509266292 324731125 824772181 388329897 640811572 709134014 776930676 289924657 625312157 638351978 758796369 577176132 585100487 290361086 342174142 711687202 826959622 162541412 522910532 633902996 889442271 366644254 468493743 212026059 325457181 894924952 896292692 911988484 937821152 367491499 416491583 827006840 849636161 485671727 752024726 708431430 856663897 308310800 890704131 557546038 871977254 128007083 815448351 472702034 673399617 793208362 946124896 148680326 894220834 305126312 679749545 249469561 904544732 714621611 788415989 206732818 591885771 929779649 932810376 472534415 635137313 453225873 983483807 307065046 833218445 415211459 592436676 432831574 718001201 574492340 693059638 345208521 553508568 23946156 239567270 839488718 989393331 287848233 426435645 271963745 551062409 866966178 905905448 211808785 782238363 931988775 966803906 481879000 711502259 700263068 861543691 72922967 745206216 946362439 999358868 881965154 945427999 268728301 606039717 170895580 317402997 494240987 515444476 23776086 451858596 453948677 861140870 771244018 885006313 163799151 926263788 579426662 586838193 642253219 663660000 908867645 911164645 72584054 478905788 936237050 989506019 11540739 78512159 190220830 763470194 392063547 574156051 879698363 912764803 238664550 758923313 818814134 984565995 869687891 900829699 176739999 411287413 398626407 909089801 993178508 997675132 427633013 954402478 957355833 987548899 725890677 815096471 372739787 946448607 279571185 839964763 365152210 949845521 230921609 672067058 699532815 824118921 157911680 423599116 511268332 793233015 593524579 769401665 380668534 962226521 851738811 956517626 665045021 806190552 529091616 540919333 806020046 909528675 602432953 703522803 508622444 563173552 974364364 987764317 584449288 630894198 550478933 605866575 919530525 961049449 921720996 931927123 982374321 991223895 81847256 109743442 504104363 791305838 691398751 716399912 760945079 897505579 34077340 764125088 104927190 671091047 174588689 605198260 382593542 723501411 181212777 963524539 626428162 751810545 133043169 982621301 182379667 620120515 860274264 943259538 154831958 517427829 845865577 877513981 384897743 867917242 439400777 783611907 532466673 753901705 968094773 977497210 366183440 464618892 87192424 705130805 930927140 950739386 54918471 346782507 495680804 868661635 203646626 314438011 16716134 635273410 537598414 616807914 61546883 524619203 876658696 894559003 889949674 944477602 509208640 784777297 930912924 951703568 747065074 900509972 701051611 789760217 377780319 751073325 582917792 607210418 259353760 854717295 6974298 479291130 871250922 936413174 260327200 806038323 167588311 993213207 397036103 559801809 222553275 696007850 993239479 995756895 209150196 346783825 745546373 972139874 198684250 758754488 652342802 793894134 520474419 778717209 139600656 569059613 62223442 185935555 566312808 934312166 572867575 917599472 301672271 753403338 920777118 990454671 283003203 498387229 833711738 878664946 674641225 974904992 740070728 995479672 852902149 912802926 4124682 265640773 370377638 530797584 560753963 749427768 59165709 647913497 29187725 682413048 962228949 994846938 961045158 984822296 876360188 954856315 110908140 541837764 223002491 752734792 428772896 927241083 833492073 929796507 387491977 536384047 221513396 671197930 75596312 549118041 625325092 793187914 972849591 984392193 695282914 875329414 326353624 891207258 368142299 571430599 769223346 985935592 738143526 983721019 734727237 877788160 29551769 659306221 383144304 495882276 831856545 974384662 588216180 764062265 943432082 951499267 216158810 762984961 531020824 930268928 81622838 980298759 415306167 776905723 416252678 442521177 290811080 520643443 129643305 882169891 846218185 984567462 58156035 962467485 860857775 963183906 212446159 352434101 179465449 700385502 402389343 492846714 951595852 958350728 930068186 948783355 246308698 631745292 261353767 340766506 633280278 639094653 482664792 777027796 778677644 929047645 594017035 939904155 176890888 437509354 873115636 885148967 357465021 428728880 821656501 950726623 577742762 788688936 599986392 725317024 223037178 368059539 421216138 617851710 310474183 926932586 327322290 676286434 661051209 725058429 501962686 803003124 197094880 811104977 308923233 656490345 208736141 309479734 982716459 999094166 67225352 723837335 267477637 712684127 658808693 790286311 315524931 964397553 329540416 758380140 293119098 357907166 52392190 326543864 457612106 878033251 230317829 396494445 950444558 971099041 417891854 463789073 564104701 848946484 385939851 645328472 348546797 952231850 50155260 568938231 437483901 697308703 525897958 972497591 307708318 547247777 279927828 633795732 947126536 977740197 229898856 437898621 640363284 837410047 536127603 730014355 89009812 261436874 295811377 519096737 125209980 596839939 427197070 876268176 716304655 917921174 247230303 416040490 648974233 902380983 276971716 279206155 387339103 470534784 930248909 981247918 337554405 492505422 230245666 405405745 281065849 975494712 771381832 782622423 449754261 636848808 608384142 754424996 991003643 999455699 908776741 931693528 131581278 987990022 544553971 723625316 930302220 974903684 289655133 689341389 157197945 849661076 810349486 982477533 512099656 528317066 256670583 599436186 511350357 993570446 49137174 252971271 585031869 635726668 873429297 899857869 310959664 675731291 277044411 776831938 751950826 883228614 299702479 466963973 153390232 972569857 675203114 704848382 670891613 797641839 813269591 966284048 564431009 991962275 375084098 480096907 798026807 994711417 84167454 992941043 465824713 786857033 225483956 648693460 997801483 999236433 91399168 432277266 409552820 875834624 273620196 566977439 70730024 932044480 119355785 491357253 241781998 590193694 183541181 926852971 932874132 949912241 520921488 610872346 45146209 549134036 226994797 717905705 543475112 958334073 263902100 452154415 406680796 509101670 773937910 923640860 770139174 807734341 321180422 950497283 640978104 651228877 705910560 929510953 833664001 992904506 756673975 828722645 370650273 446487906 873887626 924001746 673514087 814595682 806364869 907664722 579056835 941375523 421637806 783847408 892950071 966823054 78131621 707103598 890901266 985501367 963571850 992611805 70211739 139209440 237043567 960095583 958990995 992916571 415377742 697549097 229143462 256127743 463729637 965459038 869155144 940270218 813130728 866307387 488889873 595366145 660860361 996265719 399774947 974031185 18561415 34741693 963861399 973126409 922141973 991135144 142252673 154331222 78898511 812076293 337421587 337625655 510754504 809812682 661937045 964425151 507246303 673975772 837945152 900727840 812929705 832480171 359303819 368552406 137997064 985797268 207764368 290264780 989849980 995527370 2566286 578832948 551361347 906443161 473808468 870168771 292734257 978175522 987328184 991103910 304766696 429176038 329403830 905809451 319472827 859177156 224783799 732076179 130781623 538741479 361812488 507424518 205738974 286078616 675116529 883416062 85485384 449349844 763447455 893509973 165443404 206441429 965106092 990575453 300270196 449375049 940544061 961371833 784397285 799482825 429467462 466613030 53217052 226224031 980117958 995514970 712419465 745976341 517666853 857529171 668238928 731419919 968066298 979975138 511504238 684680121 551162461 649326214 763514335 872548028 707458937 744743209 78399776 363476739 500321834 540189332 229562441 685607464 943988770 976495996 253793682 786627979 291670631 500776334 135522372 989885194 636690704 790409172 993078528 993989129 262797238 732303524 588781877 741151158 240713754 678718883 593933085 711711203 502344356 903074113 584394339 650248257 797892279 839794762 393282780 731347335 485435006 830428363 102307779 648587520 922616960 973733611 53511463 926627093 736759032 913939486 280315479 836572890 237496920 499874853 817165305 996842687 312638976 559449733 409803241 489186721 753076159 812735888 12669833 80657751 809877655 893378970 587115062 604988051 70445977 498765949 501366956 605019706 538333931 657000119 740427853 978394074 984902543 995659540 718767945 785531546 872638847 924705889 845313016 950830485 536670464 755006624 785692453 895037789 834384587 982568433 187426513 695725753 869728876 950051159 410797646 471916243 95046846 676045350 461661536 701974854 924143025 952870483 440738754 640928074 881909417 991300712 842393498 950816729 548044242 898205503 482769346 543852573 872079451 879552965 568187649 650181261 628754284 875085321 432837571 994595564 378388728 516638027 154319621 894004380 108902396 532642217 923517936 975841625 441875311 594781323 964332292 972438685 733188342 753441675 289915521 578351009 403149495 609075690 828936856 897584797 82729546 499102348 324716138 750377668 396387400 690762285 283169626 659718407 289877179 801800174 55385913 747243957 62506713 868774321 614277667 705356171 305120212 848794096 101576743 889205737 215973513 766124848 631841490 732596951 550915730 588442435 239202497 486020718 921503685 985515673 250416747 986740979 456555712 913927356 530850680 914038678 925737512 961694708 907430697 930360145 254980460 519289042 657150359 717370494 536460337 983218374 163120665 602738505 540556929 665420110 408511839 531287761 79087923 740884962 678227292 749195140 514220782 667741503 741008980 983872517 10504139 747775362 180890356 929861768 736023830 853489131 116538192 193858327 822855402 825094509 876992491 882315964 142134189 943959238 486166706 760578763 239612313 465710670 503733600 781034017 99515384 583463377 470290447 579616410 818405048 942058247 978980676 989778947 768349536 995756724 785773994 930352708 64410320 531148609 141361130 598268678 660467458 881739553 632992935 808188154 60661582 287674669 408088560 462739486 165089008 472032695 697789361 842731325 862745856 884669729 833541052 955586533 60381021 299547841 229339087 389048194 175699755 546101608 699537221 815511210 108783711 849488873 672631249 987381910 484358270 780214831 948933726 949919833 968085007 992618361 132416429 439300057 612016850 824499064 827596816 833691432 446363690 996745040 978872626 998683197 384004400 457767075 524693875 863067772 715342671 730451510 58820640 867373625 100601532 480804008 621783162 770490880 666849599 914129685 590184761 896660057 706146948 875358729 776809011 972841313 112818377 229243242 291250841 924846665 589621187 990192308 362748139 632700412 368336396 394298193 799998449 972915442 901976454 951522765 98476713 589161344 721554280 880570240 182262025 551352271 714253837 927949169 807781950 988045186 377200957 766122239 51108674 777498335 509995144 906335226 274980645 635278967 321868524 981391620 764512429 998493929 275831282 929367753 122705379 650452930 73145450 599475916 174170433 764400708 209882510 260691364 253156350 717503938 826757886 890678931 327799633 779950345 112857412 549285174 355455203 586966982 792487323 840240867 506138804 540104838 942120012 946444978 566553097 985619738 189996980 892255177 14362578 560294871 419323567 481010443 750993074 792937793 136331902 652403306 321213017 871187694 923306953 968030642 411243161 759019650 635793840 824006078 861635431 935665243 270116146 682555950 504275527 830744501 993536211 999117091 974987623 979997563 24335533 787907286 567146916 884704508 888922117 900432953 387251051 983466201 746866755 955887355 603291243 760926960 592946572 773211306 566708891 670248916 119067116 804358706 236980505 527580972 918709273 991395830 475711223 734246344 996756688 998018744 646937171 737006382 898878458 950035027 715006858 936558639 105586940 532308140 930045410 950659075 253191272 919446216 680917118 757734605 490312233 551160590 218079966 947515345 763000882 871979868 836740879 853243935 387279090 731786053 829881914 915258104 427792167 440038041 130067247 404942664 595857120 654569045 949850382 961547313 15515036 88336078 426470979 746830177 82475524 777479236 645242431 958866956 70745408 396716182 598259805 795898605 618397204 988810887 988056615 991680442 317613249 546642151 539155742 736085066 578154646 978528650 793962307 929547944 356430892 535782223 605467541 821541684 441995553 886207694 320253153 675979668 550825891 785221867 983233391 993005761 246756092 258583726 464171072 685211959 980324405 992413157 640916140 897677955 552565144 891469048 341430729 947588498 334301936 547095732 420288813 940023733 37829891 599008987 472925643 722375636 248735037 711373000 958363308 992012244 901776993 938965437 812532840 912389440 372547934 811805792 724668522 908721465 379671542 647191400 348491352 666779273 313537130 766228024 289235490 825463377 378624544 741195009 170473244 263923781 270933725 390116598 622544527 719430321 851914104 886266877 572567935 667779986 297920019 298000258 327334709 577569719 152331829 421233226 261627554 966347453 382413981 491486379 654809720 684582245 64807728 539754271 901659501 919144338 653498377 952222766 826543284 941314169 480686119 645137765 474410127 745719791 714974043 964849009 7073669 495760547 740486169 906201105 77523079 150685138 99613659 540738807 987054951 991540764 577167358 694052768 207349008 585543120 611456199 860392784 706492733 804833290 30809369 361742606 992830125 993256698 112841384 438149469 572866252 654661264 584278543 937198481 306814534 644852011 472696505 492805515 253855969 372749227 760669491 930384367 727135984 933715718 888487666 933205597 960255176 976248212 566688993 841889467 128373042 935640325 459409977 492323049 3371562 745885186 400827623 869801874 482101493 536522954 525811051 605435687 730997137 993127389 432449870 763029765 451553471 963647547 165169293 916671793 625841497 715191386 410669134 742856269 428981379 526085401 493659629 500858129 601650822 635597284 184013448 336137760 246467869 803397382 548365352 846323335 127479610 655810444 927813026 976813600 26559133 444173303 373394751 528014621 55096768 896241778 474019636 488647158 892119321 928523807 920748015 978593480 131062013 945524465 158813089 310830142 659052548 773977700 804424851 935289632 231385012 557343762 694680505 977381573 403869653 544748197 966697311 981359632 192321269 435121292 102337904 282622135 834289813 844162846 904956568 957928347 610837377 633697388 51635393 676759783 118909779 797677068 301618479 469361760 997370830 999930360 925244688 926267032 149213175 642836619 320541460 749332219 289609988 953627397 728239017 964939340 311761050 965364899 160686703 423974054 451532263 681149254 449290820 794125401 517296733 520464179 548027407 782515913 239211786 892718667 495245723 590120596 699309646 724328463 622867084 717583647 178623965 340778924 304310195 593709023 598483430 643978934 855112562 913221409 23443464 200850361 26393276 437396011 623698100 975216732 78875694 714919373 611444054 916731970 391539956 474389976 15386770 776650228 468363018 743468468 812410362 860051453 557065168 569546888 373967150 589502918 555103814 591768626 947816809 995440131 903971218 909264874 100597852 270088410 102224537 802547134 735692722 743747225 129545112 206403586 759232013 852836815 540326203 849123617 527982131 790882292 989664956 995048005 257373022 672694982 747635275 878906767 409385843 648935702 864397312 906941045 996420626 996527658 326819475 565196166 897405512 908897343 615434626 808949036 674014716 896281412 658111702 888073262 322478805 854965997 780410827 949597343 460045410 954794485 22380216 857452396 711514187 875153878 806893758 976869847 491297653 794937777 111330215 752783954 595141266 645410226 721494965 997971958 97523387 942805407 936526836 981771580 44518689 294300902 409358958 479483626 750629364 831841101 624298632 914784646 809293007 880910713 558766650 749731340 513152708 632840998 493836066 839079958 827165585 894513365 839029724 957485580 213759288 812515594 473757966 702423114 581349024 798042087 686040990 819920320 291692942 417174369 88159825 775967083 714254955 825479428 674581995 718470307 50021176 248247617 477737820 696386303 24126573 84295289 919329856 993642672 743671996 797837560 660652731 890091585 612956745 882195082 640865079 715774947 859764791 879829971 669865350 959614202 835019401 952367011 459176124 535884234 784771136 964676647 157707242 672064316 393268530 413631082 832742930 996519303 762241084 807641018 214991969 441404044 612544200 763793615 454697124 846366135 985025061 994453873 937011512 940982023 935334018 996605406 646059038 918359630 97250864 572575762 321521498 697039552 655639031 738620693 493482126 918129803 598748360 724087252 770479863 879900308 246266628 778221027 419495101 754839873 695232515 948558441 835432177 917047758 849515574 916653593 234786725 426802581 597458265 736119576 688431114 751612959 794846887 795005637 619470474 702881546 392222927 907383914 957528570 970612846 232599310 498169203 17766215 486049846 954284011 977260267 570575170 582060314 878967742 938103924 508403426 631919738 357209396 396509853 213368536 748136880 598541050 833345193 886225270 920457076 627435689 869045235 8011784 447574151 890508746 997010064 232752059 942639001 323035290 903375012 130615688 555367217 441224340 896016923 35583800 519511242 646783398 881836938 798710885 823235911 226168791 354506814 36176432 236996995 531452721 904654492 772663466 857367783 588777024 676289315 71850874 473399234 201810869 248682640 581522413 899423651 641777383 833301201 159254995 284776756 825650593 991726143 564877677 677553792 808791102 836854877 485694887 863854372 719520736 815230922 256818078 562078104 860144051 940363053 435026067 973862473 509071427 871597571 157885671 646063568 224611077 701244610 776172193 903582073 320834942 678796647 407255644 609953244 322088405 825509527 108932376 933695228 803887597 940575102 766407910 811900775 328190101 979458836 512013824 854336566 51904119 976214251 581709082 692524174 276338895 486156127 65817750 785935048 366344384 833929673 865417367 991592279 159026935 931112113 33660859 425685418 880088129 935235699 539791337 945009913 393437248 527192889 442076806 577791898 634664762 976498750 584896467 754233882 687358789 813058021 967335873 985646139 77775386 402929629 81050136 378486762 823045270 940917516 334253857 980658079 745199690 971691955 171597622 500595651 757327589 984002848 752689364 840352364 912944156 986688087 343802943 766253892 802574271 869135005 797091032 909644761 32951587 511275440 274506042 539651263 245987399 280177259 860675698 947697855 298617507 427365253 669307469 938126014 249529662 403715278 331808688 650813085 594561256 861506979 808076198 852078630 239922564 830950882 340390496 695320613 883457893 923834502 624848399 786005287 760717188 890896513 685644135 716999318 870898645 902724889 286794560 991367005 867708252 879406668 278962430 598990103 561482432 699949473 479689583 930020504 77022742 445871059 1928489 836003856 654224175 755653938 730477345 966559935 582533783 817566846 978150404 987430638 158319668 718588989 440596089 987608835 355444471 623337542 342087945 424630378 514679183 738886948 306892236 366947013 338834440 723161663 41386913 756533917 485589541 918334264 362159184 413437765 20107650 633662098 224442293 350839643 711634112 873188543 996355831 996670786 178298757 588572654 964296264 996310724 476501912 907483728 868387433 925279470 884917519 974457455 398354531 403027303 289331065 360065927 361859994 994634783 614592785 704444124 216704205 567796950 24434368 568644766 477793872 555351355 237501795 363954935 688347047 703522358 241657364 852623944 959802686 996688516 388981814 396995100 832792872 967880566 14437626 684397556 676849335 973139266 576133645 873162671 322148364 530342517 644849897 814904946 598616858 691122626 508577465 581922328 904492334 967090686 153868359 652255760 808507813 930233372 784336605 980361822 267920965 508488690 350714365 356617242 804793966 958262327 80837207 720557590 482086250 658354088 625770685 787892827 583653173 778450808 324419067 446935811 573017391 928496009 102370964 608526539 950285001 983142375 350585257 542767335 326268425 548776335 320833332 693746257 961901539 988343732 809520854 930437777 61925698 291405853 32026683 269515540 872610923 928147427 484078998 583542587 998018136 998276648 851060258 882751113 612123873 876628579 320019696 458306195 594243654 629669848 425729448 843909462 655403093 981118322 78895991 920262108 494858511 643372529 945431811 979940410 333359210 999404075 70130751 788195868 173626683 290907330 605153426 872166427 82798916 386909638 400589052 866745279 281398422 544087969 311754901 593948758 195411849 469761973 352796701 780990871 488742447 895075869 254048986 897762177 324846579 806263125 955729705 992101682 295725893 838624214 748436182 810105570 66594645 579957324 769152669 870919270 89365279 471250260 909141470 991177340 22404347 437541195 136907723 360829556 269462086 596841888 851620809 883633000 916448853 983420513 832355863 934831425 79556110 293017870 657949112 741436281 798433160 896478717 723033458 758008121 77042663 512882884 852072270 983503227 588561387 623216593 94907660 109175598 695517343 797657506 984376030 985922034 109701534 162417174 596088121 678414488 940047060 983705969 697287698 791833820 860634323 879299772 74600498 121304612 520253504 833684436 869860134 927047795 317461379 374536295 713314716 741356578 136267783 747807451 101444887 979518984 944657592 968711399 525889435 698413175 921215919 997810898 686099921 775479956 288036849 924753011 984015619 990423211 405666369 890168848 171489080 403144138 868172218 985641268 285474962 562109178 572752316 965614287 885195964 898014119 946662436 947693293 982089806 996215645 474886674 679375984 684247415 940823237 505483698 883162745 526898389 730141281 562375843 645570685 106843771 374402303 140299396 734962337 716714923 790326689 612740601 895749310 690544988 735532242 255472192 435312558 677672497 690668575 397224334 513290399 490715128 665406553 645179814 989903087 792180551 821302382 889828080 962297996 777066713 825163465 758973684 905303766 168476199 745143519 124862836 518735999 956901938 977113065 832302759 941057318 373960380 760473351 700269919 806970484 690267691 700436144 423904757 960754331 969845442 991546561 896298697 953411882 789536350 840820463 690443813 692036914 984496082 996288619 25523650 914285187 477946408 989804800 100190900 477827741 837764222 868182789 598863203 798464240 656523053 847068156 877965665 909655377 376195082 862045907 167883848 779623375 334746751 946567861 228259669 878083464 186143977 434919486 80923724 886297565 125570973 903517589 628556782 664232651 179148972 920605401 600599704 794524587 508981587 670179998 172404487 264542493 837334688 921595786 995553438 995604145 929578646 956222734 757633650 797217807 927818030 980833669 8660016 61445460 811992352 986804682 518738341 690466105 287950365 480240351 911917960 986716858 844338560 912895837 382010085 607233730 138451990 602780673 616452520 639312601 867941237 877583317 427114316 850622197 903651054 906410040 557107431 698404775 676507396 787189348 19619505 527614031 255503051 839404176 64012650 254194698 657777804 768739546 426282318 477824240 565652715 931279291 170367655 625376422 598604678 831576051 679388694 979421521 631134364 675220267 168363372 456109452 490234344 641936855 800619985 957482126 863849040 986748012 987658063 992201543 770462233 944799007 462183429 957300502 632716987 846833948 553933244 894172920 191166213 395459577 925081631 989499689 588504232 850153373 476204574 914915678 120686090 573392095 350568970 931737191 734803229 819099233 783604039 966645884 511203256 565858204 783779710 998195262 435624699 651126559 386267309 675498197 992900752 995242335 87502299 907884744 622544841 957854033 113244464 631272607 285885968 827420759 953655392 975590216 436655316 820539773 846598780 860136534 809389359 852992332 252274984 568842184 840877318 905251627 154904813 185465022 146372527 863655311 88006896 944839266 692176676 921414347 398276747 836241611 325455907 476772147 586144101 768150829 309898405 709755306 578976776 696211098 668392666 922900726 142749133 232026495 139467841 794840317 690934407 732380334 551350819 970464559 978979071 990852883 901993942 912861786 654470361 755226980 276077185 881797704 993651435 994620898 611961075 959699854 69467617 641347208 865921694 903023271 853812454 982111117 368865224 622198563 979735595 987222092 598745462 682962613 986223826 986380936 759679872 887535516 791772196 879996786 247991570 333023967 164478191 168581446 718094480 843589241 952563589 971783947 533997955 592519182 711432857 722118932 677184757 993852432 273963512 701814272 529192920 570589348 116012796 423675833 962215769 967528810 846477658 884280677 87786400 872977362 203223518 898144623 477584628 602248875 878745382 989153362 503247621 663839128 166672114 707828615 254394167 463353441 12827860 859154336 779989647 824560068 287026965 966074788 17061069 888096859 745816043 774530012 912366413 948824592 581133513 646872252 888572202 994527484 42981982 521308185 441688281 970462008 317751503 903903799 104898780 244291625 250480955 714277704 512325419 801573616 275449930 754329866 498682221 780093783 937776461 983848276 773153543 926150512 614169924 720713248 772976177 935726432 986302585 997009497 556026055 894323789 166301692 611034590 318759214 483972750 152967347 192821507 517758083 623006872 159802379 737969348 424860822 824624897 213425347 768922282 745635453 995028780 961311416 985941370 17311832 410906070 60382370 966650022 889693513 982552544 226055010 840134592 937503668 942479552 167551539 954386538 348550620 951297787 299206961 606296734 98966436 127862627 645610972 978830352 768165050 995528599 332923644 791447794 190548054 373191412 839174597 906456934 447298318 698560893 605143275 912155118 849510821 909051029 305881340 473879110 772798696 849494296 765104944 856343976 465379737 807517764 990925293 993294028 113738644 642975337 294454038 307680533 760382277 986354980 420206666 684731325 831032509 885147638 742200409 865311130 316095455 521803602 804610668 872297342 796576429 823836413 254357959 951820575 170757244 341844363 872322606 872862446 792761146 904167574 712470962 849714629 671971614 736982884 504112747 989447015 828384698 862414961 690099912 911210121 100615362 828040181 584327731 689040203 549292708 695664810 453760256 896650899 82369887 680926501 967825463 987187766 11780858 615607297 959212646 982346574 864515660 882796891 741226374 964103276 790146654 935010828 406563043 801952897 929212601 947230259 16004837 693934288 550136786 802257129 345653666 418919762 853152314 885971930 19166967 772516607 657689619 707599290 460808380 574952321 392684477 557038628 993303618 996605606 332145770 417237164 801802303 811725607 165582775 307073995 393605321 493808142 776390053 822721763 392272736 928826981 553290340 733544754 724706301 732351822 312138821 910004110 935788309 962075995 683442028 996330272 960067227 997781710 51493417 960452774 358068223 955246439 272815961 766014643 294938387 674529628 668599518 920131523 468279486 569754602 51677476 486665462 985995698 986941400 771658771 916765732 877343040 898961532 266591729 329746724 666822414 907698090 751778879 842525484 565211558 939062435 919836998 951965464 15203942 42284530 963665196 974695965 895806324 995048800 629933314 724641745 339415772 859188414 538249195 987960490 801093584 833485586 649072278 879885829 912217561 930175029 667457504 956717602 683591212 977510617 44306903 339795420 286866924 492631910 591945201 786540453 385765393 415201549 271274119 848365497 114494834 995240526 996937401 999148737 927205672 999297981 206444468 823031439 113892612 502004148 822787288 989764734 902183024 911813669 394697369 991136886 944657400 971009977 588373869 966213910 427224674 511446902 530764545 558683690 392109978 710638857 70591806 222967700 587342748 964361284 776968423 817263252 240009909 843581288 980520419 985106898 357814633 510621137 259158803 987107524 930103175 970108179 377045416 387565717 336001453 962074015 67549041 352757071 557219622 999418917 637947376 864760230 559850886 795891246 914247666 968881768 618653208 716842745 892977992 910368190 974725785 992446120 910137499 987927740 798904761 818444234 246273441 604376456 433948446 631025610 148620035 996820151 95667736 178241169 310160311 824701797 217570095 339450298 288321878 876297929 658201369 911635805 493865058 499710154 41147653 565378580 936648140 953512747 21892397 499798181 403143903 472280307 862518980 973618958 584126597 903679193 349107135 877502482 960904079 968132595 108831627 794801740 392708920 593958789 860266102 937619289 300039916 829130487 917176814 922881878 769385877 905125943 25184968 137685780 143446354 725669153 244228096 460186112 486113086 784249911 415832966 467195363 697940042 978523602 767965987 970588020 193762312 506968559 612084804 825081250 775223776 851523007 533183943 843027534 343073358 757282569 54757502 893769274 206605395 849501544 334702680 945462829 509628478 757250734 883435912 997771582 734799800 940497764 922775050 961370701 312563608 537388043 883296223 925608324 143284444 864840108 249299266 551773019 784685638 914750084 317650774 430893604 803788848 904153537 828400055 940324386 543703501 576981190 95963357 485151676 734876083 911897069 75826718 345086748 861481480 930499761 73888900 742672891 455323625 848433392 995853145 996161537 402836406 924742069 421223943 485965987 966759809 999650883 150875996 611666357 938519954 987222017 1871388 188394376 253636740 691846747 337489317 881160525 176569292 408253712 702516856 874143801 592422206 908414657 655685154 724715281 741266253 744779577 209951150 653126975 589931217 601425868 605305257 904531721 334754570 464703331 187606872 863351034 646527323 752031608 444856692 507847938 19274591 715542801 44448931 47615185 575206460 844840212 586950216 698177502 745359445 899601578 495937212 887537597 16005620 848154114 162631974 512075014 461840692 720998219 638758425 688506904 61211608 722889042 729875001 754204618 535291640 811176050 27496503 277520996 282288991 412939900 739771997 789583806 639125218 869382230 185484183 911437605 621639164 895710289 863181051 910207884 37935794 546787908 138332240 470961538 150856139 163545433 564622330 862598952 777780562 778611187 16739740 430273295 356581640 826231536 510953076 733623789 215195060 869062009 73530608 902667781 690874031 858154588 320257704 793380176 48492154 676993148 565870454 909546676 34747405 58618828 795133397 812324116 12589642 132772706 761432655 942728872 398757199 808247792 583254096 725378935 557152123 778725340 739961364 913605528 776752796 923336662 760423913 797563649 913549904 999390760 13527085 671190612 231682503 769564308 926824943 940216679 242502151 720950081 907641227 981502778 308903761 666475803 781762917 949349429 736526890 779675626 372846834 859601820 290450117 830958590 866027008 868575029 746443265 972203050 804551559 953180201 288223481 686665449 795916500 836159975 774361121 777951234 450021897 936916665 233819152 466537139 372321227 420562029 781804613 888930128 970920021 989031296 110257286 283272472 633229361 997440866 223807301 438079150 46821789 352653498 536691333 617628497 899964113 977738924 118249276 126177424 112664257 595815418 250559827 682048653 576135721 609146108 12417026 744117931 850230794 981109771 210272395 864634173 420001095 552254783 569495512 698462180 119044306 815462946 905020956 948943051 880560901 894186828 839592614 952736148 577927282 881607576 989960569 990081629 991264471 994215078 179860167 605885645 124945431 320082319 507075921 993137884 998457685 999920257 556907481 916075619 102710248 591911034 669330007 983575377 563563581 858566968 281245954 906662992 859277340 869947775 269500295 581286554 154681812 587475328 805311529 832162202 935590373 973720300 119327140 613769614 360618816 961146323 575137098 987544873 843736258 988825882 8134045 802606037 233576509 326743630 669917758 766851492 431291788 759977802 676940174 697449684 975632306 977256400 583090365 691462069 264338266 643623280 808823792 841735276 970418740 985435734 385025070 786232044 445647902 457607555 202762352 643304743 441181291 658534819 473897809 981184360 113837597 910343335 9628126 416883344 273131517 791319312 955030587 970418200 696206886 855095937 325925629 694462980 257833920 915456079 742677566 894885434 183939180 281754949 331956024 957788124 788927443 910050848 535574096 950052165 602668661 610398295 657428313 721298333 523865340 699394519 751048370 790393430 844621422 981785602 177752329 236979471 512796628 916115619 199646052 719112222 527310975 686500860 787062058 791535302 237738403 265144944 179140048 448300597 706378878 903726463 644441001 972698686 821297937 883952416 394431278 802709370 797657343 812690194 763518825 885738102 424221654 511429137 521453326 626291830 227372511 829438145 742703121 861781598 572647523 585180052 667206131 950997677 230696870 409493494 81862779 896577644 377106641 998163088 714159669 752967077 382192489 712720307 175064163 255699990 246406522 597935730 96257717 331158503 564737673 954533887 409642827 566112342 154279668 854033281 33564179 961358038 658559412 838560038 325955062 872154757 808200511 820537080 212306268 900244576 733354484 736097456 180759323 759327970 831440573 873387095 388885265 485989585 764336221 783130441 581735348 988254444 914714056 961041391 315668986 615230539 927632088 989575120 366965253 438545094 201824785 319042604 971407209 998427088 705233616 800777389 225025988 371845734 901651921 971816463 992382978 998046330 307182322 462927170 96498898 549789953 603394311 967462890 480362620 781785097 482024620 787514497 645713188 914302700 976171645 992838964 541658372 594357351 111031646 481516714 586333885 659924266 851142122 940219125 71748627 637147275 86880705 212789700 341142374 429521311 382210574 859646477 157395736 348437109 777952041 919319957 534071568 871966754 671047968 791707714 615921066 941878384 810359670 916845453 905574214 956321853 585526081 801084096 695574697 974053353 636008372 847935893 227544191 338740094 31244686 156458029 45826812 291877849 755803457 823882943 779090745 898727624 960228519 972595453 39065136 306440090 361104902 660338061 179916680 902467662 146191236 260543638 257338127 560090606 671502725 716764914 453739040 619356849 630319529 865095821 887694885 926670741 663186344 902093562 543090648 594217701 67200764 747306925 11035587 575376213 607039104 649655781 500261663 824183502 529479397 954285013 31628215 441799267 571311965 576100393 521079965 864999467 188777398 758286632 211211631 419946684 879045473 968675442 754887060 803689342 149438 280469787 820559295 968369982 706874355 734661907 16847912 692367757 124205945 522390715 766200325 999301646 13191168 466242478 721055247 777270092 610442784 887836495 189572102 918631758 340413312 659163281 603248973 861381044 410927936 983204979 136735882 239484649 757694945 846868271 369607659 549030892 755592556 901655330 217683489 226993893 524987281 688085173 553560864 641525417 911601646 929312189 325806372 696166176 402690468 451408405 287387060 853756034 14531872 786423971 447802200 479267558 543402355 934729893 969233238 982423626 957287480 964239109 711386977 780770843 754364624 824740570 662122576 860178791 710956590 803249716 888459130 914916132 445856740 770016003 732245308 780128374 129016807 131034037 302144535 547534417 233773961 374325637 201575082 732840838 598302063 831018918 61023193 113740648 951191777 971905370 874263825 976322446 361919679 650934866 42196687 196648885 402103917 622902813 17496033 262516595 732509751 950056765 213477614 907860966 88437885 529875491 443889093 664527707 288019656 497871847 398722318 552650548 647112964 657481376 44287508 162816082 877741314 908031920 370148060 811404505 626144834 833112810 956599164 980638167 453481471 720920779 744330462 882224628 972945317 975736995 414817031 622254691 874388430 939761226 164768523 935393717 341395250 651987043 962442089 997579516 317290614 902421902 484091214 654192987 273720754 464709671 834405957 877047348 997507633 999996293 343954354 484473187 355519210 565093565 676120439 892238930 340986946 685763289 815774140 972094803 180973137 741130780 536845716 967339633 505574564 592440205 296263391 653028429 11999223 188082162 343584617 461064314 513009082 573718002 854313119 913630539 152882031 476055013 748425033 984261739 196452379 764964222 19668993 951928560 441284521 609803764 725637458 869464067 519236796 912180700 514937514 874713553 666288704 751192824 715499956 788791602 206974098 274739227 648419606 828566649 514527745 940419543 427617285 664105946 15281773 638539290 232678643 379924976 445829583 463638974 435879817 663750936 185319304 754621548 990808424 997656499 869861954 907236144 250568137 623899192 400262925 414998859 513880357 744571148 712517869 952260674 95896450 666234309 847718652 868704173 295265020 877982715 644116885 980577565 610967987 617460800 254245950 594471301 110659919 382797851 455019650 501742125 506857172 559701629 120753187 326881411 832540295 975142232 348859648 989933182 619565978 757735762 704143177 808168238 422529520 448748522 66629332 90437047 782321684 876576611 240363157 256691388 824379991 922699739 102678747 999792552 539640280 913428197 918091794 973912650 110749405 404716425 568180692 725990144 34616921 90270876 722808467 820305385 911830403 974122473 323922189 417430176 57314401 947308842 979303996 981144211 301831638 388146814 845198087 882549789 884003627 887138185 259176746 841599034 18883471 626281928 336576882 962706012 446291548 893821958 822410098 960040376 447399950 850348979 582737241 865874499 632091727 900741987 574929631 597968800 414223500 779808396 704094943 743722389 60863960 929950916 584893074 963344717 421586587 711961766 36783254 995984632 906511032 968416408 987045555 995798687 548026847 761438960 951105342 981008791 842954505 922651249 691443120 839824170 678635352 683995958 779056395 803395140 65320929 180478368 538526750 761804065 79363363 676789633 36383140 978149246 572216663 695136774 673039139 800301027 987072759 994345840 341309817 698968708 86618247 176923684 180368936 572815294 134561090 279338658 909232397 971731133 287741349 826442471 778721126 853201806 422402217 839028018 232612074 752785755 730032315 763543009 400608838 813344686 924607971 962641834 543169515 684890061 927270856 955560898 281125505 462399819 320223502 609324196 368159314 452612417 212009299 525726565 222378622 559278767 686287876 783959426 402669542 475657044 848432669 972022449 573471869 978593069 625466212 910584986 775167438 830072745 579744085 870151629 233024806 334448737 803344654 927536091 507778967 866514970 72797913 330657190 779169399 938038183 869966764 951882985 774839000 806616218 514462832 902781452 358272068 456026191 977503347 977978895 382969185 939284332 874014194 894507459 385918701 924398460 349072886 870368147 877750160 893521400 604409195 944910282 634870761 655061145 830368961 911842166 501461833 662386996 650144170 965850331 608228691 955869759 466956265 699442902 803287118 856519647 88605059 227068455 988592833 991918974 321590431 350563975 245517617 953661779 937511594 984031172 886459432 896860029 297121290 710020791 748098133 983373932 596061725 667287553 230330292 861140409 231512688 335899830 185818850 658716969 776865968 881812846 950169891 983242675 410709705 687233597 339351732 959856706 442921021 847422347 577828084 688273894 94778080 771908662 808226713 852038801 811546363 966036642 471423031 972305524 569095197 733630397 345093553 946566678 289646370 761170111 283021454 574756162 740028646 796327206 934885188 991374787 174368895 983074392 933339253 973841796 270160859 639548708 657466427 925973136 190921998 204358004 753990103 934534818 476787144 912454350 791065130 962218778 914896265 985630769 230934431 829777010 142546983 911573931 859561238 910380167 224810266 376726947 73763392 78604650 606892663 930956727 242749139 789734418 646086287 793630234 763889792 896651920 814600290 951724323 452352138 687313529 962132501 993510335 446419129 608371771 744821379 884195436 238434136 326987661 207166197 865499324 819277064 997382011 240406350 507243261 811288831 941492411 540166628 636485699 659901017 701680407 544496465 645368226 64664898 610372822 235974482 420130321 733491423 873564625 262541934 993000168 821083819 912835176 301494559 639001064 159695910 849770155 926269986 972854456 300329149 501481347 867144418 966782196 323206529 880099690 785983087 955725310 641002839 976805221 888473679 987901632 690074494 892507283 949152398 977382572 851984301 948435678 669017080 773393391 338052306 708546566 769868039 882689049 270778517 432808634 620792490 782025491 272489461 340741486 463087021 934246007 242776576 425471528 769800282 951832268 239538840 776846748 148136695 432988813 454715653 545664919 83828692 964657289 741901725 965201991 87970618 929761476 147448480 666518914 475542458 762879355 201310531 699338724 535177719 754799527 314696252 410442679 946000755 962780318 951267900 986898195 578187347 954082752 302999866 965810987 928074870 959182731 144817490 904382284 271929664 434771638 29237847 731195519 189735192 285004933 482088541 940600645 493181401 964591431 364387455 870993519 340549272 914262058 609339105 913072103 920000615 996316134 175615075 857773053 496200960 661966630 980750684 982774484 534125203 569196507 161536763 393993814 524207477 570269332 70435478 915839753 935661550 968324147 151034794 958612889 12341289 894729038 4119579 543390526 688009084 691316371 370796191 731050121 947009726 998364662 179473769 598474132 834794785 997236501 983782231 987997898 450850834 556624452 693263574 783271333 364674603 609617106 508902099 807523204 561702865 887196721 176110493 466167978 144869169 970991602 877177143 937952273 84542421 779689876 566373673 567488288 45409043 266012605 36659412 351069120 74418498 448488533 25460292 177180231 644581596 940040057 161155320 645637507 893687638 986924735 756496370 901836944 778299768 805613595 46673874 528554572 317411268 379807454 567081135 681103551 753777590 873452056 874508984 898878448 275026455 676786909 526933330 925950935 220876749 323776971 789359042 805459668 487355249 939629271 149724304 190696461 786133245 896018990 719032625 899193227 334838040 878836041 563509290 840824432 537569712 863507482 67012412 998827339 335645376 738615251 450330770 477939263 584218301 864791350 296704945 606767827 157909781 504331277 955659963 986169867 181269452 930248681 97674258 821385222 664619094 957764928 818029794 983760111 383220561 564560273 637606349 930906705 719807540 873547716 85554836 736177421 579349791 791564327 217139494 784863003 936091346 965382824 80069115 141184027 851146913 966905895 338146563 967519873 648354819 912584940 115081944 695921294 637048726 816379976 541842049 647044648 248478808 484312430 99475465 124365666 316668549 342090972 903169005 962238451 342714077 451457883 312224192 919460492 745048685 805677727 680271450 699660627 542090651 994493431 950804072 953363731 890662177 930908353 338421134 488577919 377626509 531440833 174627818 279342599 131624981 299210969 89720069 904881219 337498942 435316379 484776154 804878245 286077424 371745682 588013053 780928656 597224599 838390855 683263566 882538969 125815622 904530641 374054521 504038485 66981613 625660711 722308950 795598172 127076040 674480425 278831226 901080449 276548008 482824547 774971265 988647213 83153824 250223215 882757479 963669162 64198337 431531625 212305545 212939659 9443979 281969424 780494857 957179176 482957032 835178015 323167643 586100636 785761037 996517660 336619428 877815182 154720941 887511201 573487455 597869103 431433255 478460555 508505021 949124524 166298953 167853807 146633057 993909891 725196901 981863749 806388310 996415988 416567851 535397650 143045796 732309401 812378573 906125810 835903774 851908454 121443365 994124679 90815906 136494147 655680479 833755433 378814453 576542506 137054582 871565164 688686128 959042652 361475620 733316339 628889990 973296059 312325971 360484917 514974059 896970994 219482668 955033842 690972533 989008413 580135539 633289878 335049475 545069517 584706210 826270524 745664625 778725495 401553788 751524207 395213603 743172590 879957099 933215682 940141983 982935560 12273094 629604239 213357240 648717092 912116228 960131492 663866893 802531417 77888344 361173124 37438579 818233097 889190148 976805538 568587736 981067093 792206516 897111654 752163254 928979056 300451550 585761051 186352632 942130403 13942675 377710955 58668059 169184585 333422679 509592962 284763752 514971264 715310605 893991630 634844311 921737447 436088152 707182592 414011007 883754474 252394830 333308787 813598452 842047180 362844582 652921065 865286941 879972521 311087880 563476371 367512310 938236718 612531976 699264984 362796552 733041152 727236820 824322677 526787554 674054416 835897126 886600911 883493368 928066927 664185756 986031965 787111697 888870111 394816156 677901843 370129384 802110312 676957652 748851452 281037918 341478005 568187062 930672138 511197500 761789650 600288693 763347361 141643910 289650831 94883295 746280263 431631053 637512939 87977070 757894818 678216953 826264317 730554889 823464963 913613167 932887525 797971520 947496486 397176967 526890666 484802087 525432371 845684662 994519507 869483055 989479232 345780169 579032629 231070281 544960244 604019108 800034489 133502449 944281329 116403501 920846681 196413307 557484775 558772808 934976497 425797997 723892308 372765173 856100136 325226183 745403565 957883126 970538917 613963392 786610339 41956003 861297858 842277743 948016763 777381252 925953725 334931118 926076000 81634816 514538286 801524555 818309551 838516149 977449611 346896482 975983546 421839503 995015384 119707960 882804858 566100882 787436236 110911088 663115513 746230620 790044406 859868057 991687456 362377953 935549997 12996862 405489046 308114527 465556572 765037414 820831346 490075135 710886203 226592059 829145599 117970522 865592017 69576822 696268969 894628183 944502384 136847543 511693687 885659890 893585419 744893943 867015688 328940999 650926133 24686486 639250817 840699798 971312720 906735011 974360741 265203919 832374337 125855959 128420066 764818300 870408984 583210895 629527967 914245874 914986193 120145798 485430435 575324464 585695285 391268010 450280593 840939331 896944933 460036068 992492652 843276376 926368999 889144445 925159915 814259018 952401000 955686940 982606821 871765785 974434032 203647026 960657799 693660935 760689844 776427230 905462973 331924894 955688015 464969843 854139572 484726119 787157124 758707657 933175747 615933023 941870453 937571056 958547520 79050936 674828786 960726878 996374867 249245654 655114751 323572554 364065991 43777837 606814700 360716061 424733907 853377961 934703671 451462744 856003013 181300215 267376877 121540642 967757540 843397460 972457200 697270872 844406312 614116332 622267568 876140648 953831067 760480878 787830393 537580743 859540910 466231395 778979991 666717790 761300803 30930155 574432736 255918413 352464414 116415237 729662508 794762065 942683568 129738968 796024079 474408597 984583326 961203661 989491054 258512119 533762614 285331695 619957553 155103690 672697742 357726145 456943160 533863587 859472560 298164381 362282932 96246365 154750220 185179884 470290549 293105565 331759284 625059749 674874373 742143213 931515608 577736199 747619601 161876888 782317388 121564895 577314806 954577388 977049724 281317211 900113912 469070736 622647611 73835423 400904563 98565157 266797101 669657911 672357661 733716615 809601151 77048810 593378544 551267394 753139851 280144850 710927032 247635551 315002646 11784997 203758365 998583676 999215141 481966870 834029850 525163246 750803622 278677597 538264242 969358157 983915618 872387157 964530123 423202481 530020984 416644204 645693716 772101988 911089553 136516312 370583188 496268657 704206903 465367744 726113035 367687098 853711920 939056376 989495167 41347570 337559305 750116565 770655207 864110013 938531676 436937692 841827220 176262644 493455260 266848301 353216527 194039426 853372218 33498780 860204078 928842781 962554963 26404424 210604363 154563179 620628077 480671868 602006964 313179610 884778885 204226892 707611841 542112127 923865200 599685634 872980292 513033656 583502757 551745838 690259444 581596285 790968476 589504029 836375363 779268277 899740055 71558975 391983729 858458334 887323652 434166470 495462829 755747535 844063219 703242148 946850347 315793730 795733805 767844574 947574455 65735007 296757506 762943575 988480049 791589911 843731205 597364042 679908003 557812789 952953947 487703375 563344475 892056718 955654456 307960364 912154242 320313743 727035296 854356124 859545999 218549175 875894953 548658595 758752482 706666817 963975192 541319923 575424032 974173253 979604882 571564423 834358980 532711664 811908103 325608987 350076206 576471271 935666914 526038853 715042103 321363967 839272446 815526506 898520083 925878565 959972784 464045865 529774667 170165575 253604442 220159163 854394366 653321957 939454769 90426362 230702413 411333267 810504687 431091048 519963511 655938203 699341153 457624602 541270883 441700336 943600254 565083675 745827337 928539208 985902322 706017568 814268763 780534215 986767140 230969774 765968763 751013163 910135402 777811984 930337609 622816111 644797551 732139447 928214361 702342677 703364751 291074051 467164531 923572965 970996991 383285541 662460610 540723722 700009868 46605541 269701042 797977795 817135930 599822395 606025625 432333369 988489247 86875118 235286308 820933504 943492447 470614242 630350905 936724952 970896008 485468914 848061344 477286898 627621771 808140481 906607619 487764884 588259727 935372944 941005800 68748966 301966519 793180637 974215984 437124002 715516905 358583692 401836601 750934171 805049853 409342514 685449205 479336953 792912939 372970151 991789418 605949995 779216988 766985778 921533536 518019109 763850808 517029844 790349126 870704976 929687616 462593285 767109840 844320840 966596005 701671325 996475557 285780914 452041260 857571353 905905100 68172643 373939991 460134985 765495571 153878058 244093606 990686934 992112669 39292367 483858112 254226277 975956165 900062490 920766141 297118613 544813982 511934005 908441173 245554302 687040979 100146742 647608480 900659072 944233305 65708656 802164046 297523903 669744249 101439125 353971464 442998292 968664382 344344943 757958102 302366511 581819839 780616 985207441 494363585 623342883 954290915 958607151 529295357 966034980 859605275 960545572 285163466 845767686 285140820 866660082 525912469 731804958 221568231 517832966 88664408 942077427 342913037 924193174 118889313 464414407 95836692 520976448 28298844 79836572 646942395 754800854 703352980 913545793 803407830 836423042 492846105 754175509 755772272 895279503 897646758 941274850 385936536 456648900 220534594 315838080 881021857 985769636 790165840 803014675 430332404 699489642 109283440 570499881 279868089 331175222 699715395 916442804 690350345 992197770 766446471 777444216 185125299 918087285 373887310 783515969 560975079 874639288 736284483 789312095 125033549 214767092 157923423 848284617 52400519 199595372 156532849 656328792 515978658 589531739 523759569 849196721 811602885 834858383 743105455 949067350 400863843 625515846 806083422 886359854 294495100 455375263 275152196 674166038 104971844 376318707 242998788 492414190 430902992 677517028 658529704 711465681 581155924 902080392 278104399 458985901 395728337 891964704 944234949 948544208 771392974 856475253 814710486 942662312 911672902 938019128 653890731 838143259 863148596 887342372 230561148 985227681 207759778 278864997 379568335 530911651 87009188 263674482 446038755 848702198 415011744 774074928 102415205 477218402 558252928 719304239 6123288 221183952 565778680 889799315 923264824 949620883 584444803 749316753 240689987 878232015 694500878 909500213 461647934 477969665 319879735 761717109 198474111 407778472 26296593 332678965 732574224 990378470 607510357 688999126 53708018 569144839 517708219 787054223 237051476 318090482 283044996 901767635 449146148 968525302 421789099 753027147 952261399 987453637 78805979 474012444 372315753 789307637 689564592 708633204 374848186 504509164 744342931 903711225 74232451 161953919 900140122 939563347 893084561 893828293 138296359 443597245 355221963 840533211 611931724 734750044 534477056 630785148 562594650 672510609 916483171 999337250 354847464 957057658 814864898 855357454 728225878 989085418 920545481 956983703 696139830 886864348 150713165 455015557 853542739 884232797 153285287 517291548 301992395 797018159 512468413 816160458 698268021 932770139 829896362 900972766 306364770 788095703 52420039 245892128 379160695 401437270 976142220 995860154 718121348 822598058 722278503 850500101 85923528 692520353 153768771 333825260 38594899 906765836 786204641 849013763 483336253 724526073 291127334 684139682 203430787 764874668 366848772 627901747 672812697 999746567 932432729 974513095 117225450 188337433 789816889 919559027 551451339 651016975 565509910 730492074 775148026 978978265 745671839 771770550 187076219 434620841 484376732 880396578 535044295 726806818 154386771 319584819 539574620 879268528 649498220 784544349 867869317 877398508 910558799 943751823 595362745 852147246 864040258 963171018 511583349 681598920 463242851 989216327 22146523 674980953 804778454 959093138 972613372 989318678 813264799 977085129 142594667 429920154 58748609 493299759 110092778 935285359 944189263 998318702 121942550 936792312 918338211 990023763 777664341 900747409 323455875 665682429 630493415 637211467 706249785 755550018 737847786 984177881 951129971 967377408 570406279 661807904 798086590 813803465 2130367 672638219 436567320 864887661 874920233 945748870 986219239 997155711 770617921 793739223 303571311 406512530 600401724 899497917 222904859 910665685 105963062 301786897 647367903 821214114 444530888 734672702 656225414 718205968 736359467 746863247 766276362 801499356 892865112 947894159 437403556 929710606 20246943 118984331 624595067 966214999 705280072 865850514 145832497 341162441 657888616 882539783 908713501 938728072 392393833 717706253 370612648 640668747 162457333 692624777 111510038 867967760 132147412 941877502 103557195 919471252 476244213 595269925 473381067 627678013 112035216 987303097 770903919 907324895 994368191 999046713 540664022 753694920 318753887 878437940 57278500 768485647 982661252 983263271 8745867 679243924 215722165 603280155 593859331 923446082 347454848 489687897 824042924 960452230 952829730 977400647 986824241 999655942 632320347 695108090 769151161 988263563 438059911 958162364 497649698 683555386 105557755 908172283 788088081 910902867 458694310 896081094 243599880 373578887 134043096 390732597 866650813 873695206 741152131 800458255 746816018 897717704 399531243 484360696 867246851 900289450 225150234 356996726 231682839 943976834 26261093 699703415 967425648 977186794 836224500 933003808 547713026 628701110 743892120 913611165 762523035 907397847 207089800 563997699 363563866 486801394 570563582 683385846 364154935 721974640 247310511 568104472 22858759 117069152 86263733 742603343 94223270 321331626 80848557 102789814 722549084 868057099 337826663 793709651 292759668 591542091 279003550 623417401 241502119 794788935 491434724 856253361 256189378 308828943 151635110 894082842 274498719 969481603 802595276 947241667 366369583 561957206 355765074 606097036 153672627 754855906 145491519 954961655 521804008 871358821 337067183 974207112 454103300 909736171 916367521 947505577 624927913 826638960 647668026 863333810 364118846 921934812 518427242 760586307 953362231 966159955 157454901 321922174 35708072 544391343 953099748 960065204 66953249 821477515 209862591 349070366 271770203 439131796 623712836 719333357 461563178 996441612 786874113 981256803 28784633 547245227 376263373 934325027 111661483 991870064 463231663 593475466 62983446 385516301 391383668 643863098 601055341 601255108 201452612 670616222 825001208 831384815 807813837 809647123 673544857 907230669 530213554 692098380 886719640 983845328 697821044 819638076 610447597 737678541 694162536 849160886 112010148 537052050 411835742 855504082 30128840 648573372 155892529 731013862 124651245 973390739 72122489 353330983 741269680 793811527 951625625 972456519 228689857 411626155 620433932 972507649 270117571 754918638 52893059 144102481 480151076 706263028 539181206 570049247 136780035 274461444 509703752 959247405 849236562 998416916 993800458 997402658 696293970 930251903 428388778 589837107 700849442 975959013 550901349 554723508 95693571 837394292 298148515 449077321 424547022 737547320 397288555 876611570 95707561 710019551 747132793 824688280 433531574 481581540 913578463 923041175 362645291 914958733 811611548 952496402 129604792 211377123 527483048 875163281 476670996 668509978 86238841 829560951 802826174 947025913 591543413 771301390 63710528 637439472 116293953 680916345 321845101 355941355 986944606 987814792 585762469 619860033 398318961 744177744 448311826 791331597 207209103 579180601 787031093 804698559 64136666 592181488 58125831 186561821 891431497 996977600 1675495 686807862 170092356 309371933 703518473 811333733 503296067 702888313 197731987 956226235 318800938 968904050 973098511 992376297 817746692 837811342 828867713 859978608 284954636 897258674 180645916 195376108 446120210 657557399 207417639 855132270 116801280 808480320 657076870 918068033 994261218 998625801 555162663 678427351 411562499 899372313 888609523 913931902 242361387 258333906 48058580 984364138 824196187 941653602 849704400 975111417 456778714 494009407 64565020 445290260 45315216 753683467 240672597 684787486 65706306 639646506 774524704 867398541 697267347 889535604 863345568 941227480 6513388 150347221 390625139 609471085 652073728 940960489 629029711 746141822 18386064 161551768 304393394 422861884 484078671 587148657 873200188 914052093 442324311 889455088 787409770 808066302 585974692 713764861 636474312 796305949 726769171 991405483 892644640 977992236 940064375 974657015 297404125 886068434 641333158 989809851 232242485 583239571 303077257 379901536 164189359 914095680 183464590 946956454 208538480 339316304 881315535 983074719 19160826 147340891 94633361 583555781 348993071 508734895 182905586 346198630 512396972 653954049 716446676 831558644 562340294 730073285 386667599 823643273 214433283 461466270 911150349 924965959 334639042 737396579 634290161 957357555 159457524 322634362 168603843 336614369 995536161 997078275 738263722 932400308 441562338 964981961 198020286 390665187 131257312 654773958 481968811 627651794 289390861 597000638 832920162 845713612 271799089 572925725 633456845 889442508 246023710 458923582 222737416 831795288 390304114 869793544 540139980 565845652 553026176 554345459 585845071 910108306 467835209 919885654 213708910 824141746 316549920 387321477 583971506 848606864 67964917 828561421 390799303 433623423 234559091 886777933 231447841 628869751 32989604 524108649 788041510 961024615 961445400 963182548 949468077 951890063 883574950 936189926 979544236 986283139 91056378 616071776 172453681 335585207 568053140 947718465 656244910 681269975 519387273 693140156 600309216 836573213 449681638 749576358 42651678 885222097 515110100 590245744 954254644 955736719 622792752 704762881 761124507 794626437 407413100 732647104 345442430 764470648 345822858 994466146 290357593 822512757 238167765 874399957 198412938 631983136 658384634 970996931 353019505 624424267 650377175 849615764 965527672 972410434 687774310 782083355 996135673 997726868 982109291 994387184 75214235 815621121 130885762 327725883 75567321 403154209 822097018 866176947 970192449 980792742 708470961 967239363 281303781 493529342 932842010 992776995 838282682 933754982 312149733 316873821 370946781 818438136 748000073 792956227 131124280 663618139 70843449 834844447 259418340 945191757 535661398 887100254 150848554 757710101 597150704 982334309 623847668 893259387 180107830 610916979 777726877 864064182 840472719 923176701 866055720 898157086 445739810 834926800 180609519 539089887 141513053 646594195 659805754 714706477 896355812 962803793 259474268 346616386 907491235 939207947 117192786 645253610 13833211 925121528 460294207 756895064 169146748 993840374 185816533 515452841 854863922 901611120 581384851 790903974 397955688 752190390 758915021 881804860 39686985 630959043 266680277 724779520 173533631 371480743 212438568 951487521 317077885 722159443 120586145 482447146 534094644 538935170 210817262 772004051 136842954 802940083 134621300 396674504 923693703 988356728 406188259 879471047 806056778 915863240 656654446 834769848 656910095 779228826 863394816 892410212 552942664 595278285 511621309 813294589 166429574 697045927 504233259 557646736 886057013 977457445 825615062 920248848 175999171 375240800 248809561 647548308 36957293 611420888 659281462 949477664 762517600 837439524 818719954 960671729 908931683 927910564 981808815 982189669 103201819 163666060 495360465 756286309 810788301 853573343 355482729 684439714 946335904 995417946 514792909 785179259 133713564 944118308 493063422 535844791 145459530 784158673 133553567 241506803 463999467 820010212 352708872 585662083 223602926 882390839 968352758 985661688 887487131 958944273 328807634 991709228 140068001 257361483 160083312 371334475 433099996 991412700 890617181 928389507 141629864 982327050 980305747 989792939 553780209 952505219 48040113 550279498 615985886 994236507 192446883 273688137 651475396 980297046 608268096 827838748 462470450 853033818 267561022 312972733 916141572 931064427 537905796 610546152 775345592 992195168 185393993 937796255 833914277 835304774 450147426 602826250 453561686 517699266 814425272 925702279 474822501 926673934 350348717 582377961 268174075 909075454 117539995 784275660 676556820 695690787 799745248 875936136 54124984 489813108 615106999 880358513 63368593 563778299 574473118 599484183 707180394 917185279 574404471 845663186 332357133 784169889 399726851 748722310 699508108 967953548 673133115 779585458 637339779 986259879 476670145 946748545 391295723 529735556 558516156 855587381 707696497 980827899 361189925 977538258 797476733 858226185 303523372 711887462 704445671 722749238 373585061 919570321 278745712 881635317 84893424 419180078 449338498 624229630 313587891 843347186 319412451 620165180 909082065 970039106 3884572 630981993 830750840 907778066 117886959 826844733 727910663 754610572 387093113 649453577 208045232 284181900 71333234 277380674 727328533 908893871 802064951 835918198 612964474 826801467 811811606 960672168 52247373 814782314 572644273 791675716 368136257 635187608 71319412 547014642 282568969 819946476 215351548 922730375 53901063 473092757 486363301 991941253 195877404 491947414 916394928 973089185 677448891 985155854 641178780 767217803 871520264 945326974 346006678 425218379 56290584 134035185 475096083 537849231 430975481 573029765 892499179 927871480 973941749 996612332 916387262 997824151 571342305 834390536 345655014 929813277 258416028 330638210 446030475 482296112 934340755 969299200 343968154 603043951 916134468 933535909 61970284 641960345 867682484 917173204 397871236 690884037 664882659 959306333 818068725 915661476 40647621 95862721 476373800 721425310 755835645 760134636 825763790 943381187 487114908 833689134 45289314 821647773 499809557 550549805 475122081 770562173 328563715 856026002 112775874 550695923 862684129 893095562 531464724 938162184 565676953 878892803 448126023 488974130 162136656 449737484 545084267 694445224 142929300 606300111 39663053 965929433 495537584 753805553 255726089 373329747 596447807 973126448 721832986 911753624 697598764 768756748 863649292 865810312 986077679 986295909 104993068 984561879 990236815 993347154 682217147 892240294 936984173 997845091 472180773 950325303 785073903 785759749 791074328 892234487 132708238 425556573 213939266 821943736 901560418 941185024 301676225 980898045 360785035 400214866 373087689 938620326 458687167 787848663 721113326 846979160 606302863 904771410 173407682 551079652 749778805 852807058 575192652 816007182 836610544 893354466 950489413 989954725 753617819 953609909 856129775 944959359 885704026 921295736 444053515 834138422 421826434 916534026 203026600 256335204 534090947 588724094 696816934 752683081 150103016 958559286 323356830 380976444 194313181 288885808 703428351 839375249 887632342 898762571 671695680 958772485 489809860 737590440 200186775 523031973 700452241 818498804 282585458 672548114 893503319 923845120 363572621 409128720 658294346 817008543 402849355 732662206 17930588 735443113 623234744 850782094 468104098 505845274 659480645 894157034 340211656 406758059 652292086 734606548 132125948 335821113 34924506 758483270 557571617 627010976 349757051 872959261 62881818 285734029 935997475 985690223 145944837 745814252 142975444 391617502 518238203 975942602 76541526 782844991 820982731 978375001 657420412 677808832 456727729 653488119 272045154 935878405 469258951 823694016 253558244 744507705 319061729 907213440 387237593 625430392 189174412 463847704 297579723 502940076 111765957 179308989 189134297 836186035 435702999 492286836 337227259 919463100 134787674 775600101 845218273 891169580 381360504 771904008 23380903 55098574 526439019 554672121 923114517 961385126 315716833 345745284 714881574 851313682 130263131 369431811 531826507 981837152 482424416 968253696 855489559 982754720 806166452 832782829 927883803 944827325 181842012 878855936 221588989 252711077 768123690 991322255 285991051 375784414 481895668 885376813 564309936 583036649 951117440 996176564 498959709 967832703 964576168 995774514 916985565 932653975 685385677 856170912 260682873 870427434 988649837 999545528 85379330 759953308 48851810 974969055 525940076 852638802 19314170 216105412 490837786 765270685 457356169 984232956 269397426 677465743 381572194 438898983 544494193 631976625 265599295 735336673 851959826 981371185 23138500 713726097 656259992 870065063 712005437 999050823 337652792 628974921 463190240 670727113 640084725 812170733 629714968 748659693 813868635 867947103 149366683 916780993 830738122 837948981 288040189 697171492 586164392 704566989 440923871 570255929 609402357 897965089 767348153 844176427 594411097 654823003 731897267 798896364 860320821 905888926 184325852 304745850 527722085 984185437 144338343 844653425 336322482 507219318 976443131 995648851 611397947 787306758 737665294 968386011 805312291 992268122 118919772 522636009 792215960 944860895 760463607 906209686 595010682 810854447 810307959 925659529 564286799 865955730 869466762 889347720 993159238 997266017 284604355 511743613 475723841 629976358 458094445 834883479 299428954 915880013 341852278 351393860 733875595 852693843 889941334 892369104 234775151 860472658 478554288 985474842 455869648 944911195 752179687 950144586 899848076 909183647 167329522 374406988 999534469 999734910 548433106 931352751 529369699 884394698 487418054 521064060 641110188 712509114 171766098 339413366 373752984 629182106 868465558 950077155 59593576 298275872 503206619 956147559 702104997 723912704 673147629 950595000 450684611 829751197 478818208 879144661 518312526 720577572 867185411 880068806 210356794 507661777 578931661 733862586 483265760 973162488 879283698 929107272 663320479 910725425 995167243 999493806 170634077 820861717 361567338 399977622 673228299 782012916 895616547 962751765 675064891 708786375 437573858 905938339 762025838 838031385 831359770 973271404 527874920 599223452 349963959 471090012 485840610 664368126 493896903 720558679 203365862 239886879 957075700 961018886 528351620 587509654 634508558 894343239 553930380 632774151 37358135 677375772 451997102 830939330 15151526 931297818 194648569 301510849 286595851 919605942 449852427 705576495 472496599 706061111 36678236 543515046 324839730 325522629 857767977 999106863 663304735 975361825 381743344 889810014 569270082 632593482 606519421 975287844 747162047 816435999 937089425 989415973 408766954 714867031 999438449 999888849 340817799 747867002 194170172 369190048 792404196 942417585 309465274 344815077 897439830 905527150 667235260 734076358 687773982 746621121 107930966 133866517 391075504 966528703 108043121 291945763 379657787 588956976 336900998 579746451 754800063 941097737 325391613 328088832 50411496 851451765 11134301 228940237 208807683 882429993 331457831 410406040 526821947 879772846 932406631 987521951 4981249 60763271 129939596 813289990 106165688 822547770 762286703 995488440 391156885 521666500 43144820 151913652 417957178 913600791 784188104 840530112 197578504 679056130 141020754 676263069 355644032 923332007 549057157 641126053 250921680 851917993 943420987 974872649 280786230 573093301 435969907 786388728 88636221 704569011 400502825 680081285 80479337 129252480 498513495 761743497 802350732 900746917 146496521 791287978 117881652 332825514 162330063 464499926 36226895 880948250 551723865 644530971 451444129 662286655 776421946 882702196 229459282 711490893 17555037 302016691 560522249 693375399 209252899 310538041 40220023 885025611 716497156 734271690 932880179 967007309 130520127 376461475 249950829 497953302 810035654 936245999 127188492 175655894 983517898 983783154 280809291 898435395 415191207 805546734 565813677 808999512 442531284 666453213 619842665 714976574 799406672 978370879 884956638 906827405 15383766 666035850 153226407 995651648 433717350 617487238 950074125 956302734 718096474 907116163 735789236 798999322 745183680 943719913 12820613 408306433 200102945 701354938 581585765 844127132 881252889 900705343 269217378 999001422 841220700 866706850 349595352 903743471 742179447 847636978 795979374 860158758 262153116 966176840 679178065 721471498 327751359 633739613 815309096 960389032 544720985 824889168 323272115 363774982 81968310 937616611 575477317 812653665 940201536 998445696 675892115 735368181 147965280 366436759 415664139 940036811 509415882 901058877 183100416 399378651 978861280 978917732 110466921 622224124 454933173 963889199 638353142 808015417 465597549 780618096 889747133 955993450 49746244 709720357 20713332 811209058 949080795 983255107 840868153 883409736 603652889 986860520 113136309 818694816 634377014 721213435 923752318 945522647 343124199 618930301 432893701 754629301 45115112 791959036 511240011 621742595 317972164 652888231 389546605 481951234 475560121 584541992 832356625 866666241 541901917 724090840 723431564 913192578 241977394 494871918 525727206 563665772 283259936 646464693 196569630 665170113 762970663 776020486 287943683 696572344 988777878 995666408 561472013 840958885 760778001 894036890 139161472 420465678 86979586 714003893 171371987 188417250 348481817 803651326 825309727 955901788 65845926 157607185 581538707 957856279 492542621 528883157 776338893 935734909 541115836 876811761 353727322 481680835 156557347 231357026 753267796 832096618 830253188 988737372 239219466 564349141 929798211 968277866 162002652 889401448 293471316 465056700 552254 999951077 645913483 737519858 469219356 484321860 357508207 720757595 686291190 732786307 643765932 719059191 774761860 853282560 270908344 862205886 273787019 630798395 369835488 870720738 366004203 664693950 322938526 980979328 813411009 863992037 658606252 730565168 663760592 888294512 114552159 221654191 783024511 913458848 578054011 622971462 703098549 864333964 415173644 627053426 796707878 859362200 836287403 970785686 538804043 905403673 737036366 973828765 558727982 903575540 509364785 636588578 913997059 928883439 419592214 753662358 331905310 429104445 449025086 959468467 620716781 839335797 74404963 554659522 574081198 685092588 617095442 713140722 880350429 930340596 277436156 537217092 17898841 406675017 248104964 769180072 903270367 924819041 322087158 936061702 883192096 904474425 596816134 741028610 459245398 836991164 164654728 792442288 733786183 750159524 118971167 996140431 427744696 684584212 417462846 618359708 531436720 622325308 756199753 938468405 395748482 596387795 243950996 600293346 317731435 978641639 292446272 735069981 750095945 799081999 81127730 681021664 152429380 631162978 828484099 935481939 2306306 162876156 991505104 998365062 202826918 672131461 695313510 886383500 943301081 948174541 775016687 823185692 789447341 972622093 748159830 804580036 254972419 602956990 287045241 550062953 735989478 823897930 672387122 865245066 7991317 289665543 486548786 740686195 795751676 826819304 394028140 639768225 710368219 934940634 349198187 836792179 195435154 859680788 510391741 950477542 720715426 943669968 764361243 928294488 394223299 841707842 150948588 931491797 933825789 934833924 77549338 950079955 407286806 576377346 296849396 784756887 149593726 564643210 424150254 772845310 711330055 880064232 369662014 517225985 18672111 647723573 979733745 989549420 431613481 984931173 138157980 274285805 380592193 892660040 166400637 940661627 271448363 777026790 450986229 977456557 583573191 708842806 807132988 812088689 619323585 943808694 306915712 347999742 520768514 758624703 531340010 680142971 24413471 114485157 61247683 641363387 165372834 404699964 82435056 389259173 747785715 803850390 67633636 246205294 476468544 725002530 373151550 731547104 335773449 590959033 264720893 340976177 17979344 645741622 967875238 992087926 993591999 996085594 190646358 461374206 298194858 454548783 843719315 974844257 980133452 995265310 108855476 669615880 641846029 655133897 64189928 839224270 697328870 849647418 71252264 376640744 441302992 901694490 209996990 474367909 728889335 895861244 637159063 892791103 913543657 928110052 355924272 931346867 133586665 803169353 787975568 827965717 626866874 973232137 281361219 558286619 353082802 976478290 101483508 611549374 427613833 883045100 403148195 980596376 739078492 770629535 354418017 514657635 856460761 957750215 225000375 941914008 660851281 830534769 639748767 923217153 882157140 978265563 883910115 900045404 380118420 427707793 216712347 665071151 419739062 520589318 637723185 827888290 610316315 646285124 204134450 660583615 651321523 740184149 669953972 851597428 143065653 381511538 687113298 750749925 143308478 447726050 877015208 993354309 826079553 943522251 402109586 418890207 860920350 981126691 431614530 518987109 641586249 931511049 25734068 901344980 734268846 789689966 18628740 948722164 255634029 368737104 573530956 638604939 552633017 576030207 715163861 721222647 608773551 611417463 253639988 320300875 851294691 886381957 182163421 241712879 363477508 475466353 654990410 993325855 537491588 970855894 877123876 948623701 745473456 798893468 105912532 933737020 165491666 466004669 48745121 102726786 56512494 155542982 783571984 843024479 93086258 412334138 599857813 747660721 948487276 968121719 718010126 825842759 138467180 833454280 489345549 953572327 745634505 771734102 670186721 836887440 944044353 950237323 663084642 800583969 649688456 927902365 902037383 963519593 367496791 668861698 284841300 369879688 427610840 981268652 522357583 827336892 81432431 641278173 672864165 756622099 279591446 908395684 132055344 728436185 392906035 961832789 319390034 783414462 241811364 780376050 367558439 692277341 513609307 553056873 481572180 580052033 119732412 575820287 533275395 652755127 873949095 891733708 643547814 843420104 131373308 518005179 931818157 983116681 837137339 965663270 253096593 812664495 373108761 731123294 1003578 935608820 419093475 437064238 692871041 720091002 408245459 472491046 372862755 739452155 991058122 993934985 595761284 612140235 172540307 371194674 739330739 751342477 376456690 643830189 384908222 633151905 593128366 855600025 548224735 856688498 539183330 631711270 11040293 403780567 974911320 992026979 642611842 906943938 206646891 950869401 217938643 766507836 3650695 632955157 879034468 916919201 819298613 846415512 923791554 980030584 16501644 648180926 100269372 781315042 962744405 985863684 609703017 615061636 122922575 127898952 433933323 465649214 22749745 503514609 380980365 763133633 423689407 455835494 999132460 999393600 278600722 729520743 150645228 857012048 562342252 699827088 757983212 777100905 518624360 585374619 382390544 718483581 295768567 572973002 444486008 610170878 728108499 975157948 663885412 744578643 457106138 550744634 184681203 677636921 166235559 218438227 1625119 556537165 59537930 288494599 204110120 321558210 73004283 327664072 14789858 93336213 549604839 660134055 278057508 309402262 713262208 791308417 627378805 958716274 351446395 770785780 310746821 940459986 266757084 777254433 283238994 377595764 964842622 979707638 16162552 878482321 59848885 516578643 828926322 851877668 39329746 231477027 782149309 933655546 478654123 554684339 549609871 785921883 244369564 285830450 833075397 928002384 904530574 979720499 344384295 836041260 682968587 696796008 773344942 971254114 321586339 501609021 787845199 986966362 181624811 403522822 233075108 817179292 969815191 987502581 825038180 848172946 684324166 878697258 523458090 674777037 984777238 996393846 715945306 791576855 389197522 517649789 586091439 988050380 827460572 982735766 153947434 491099468 948119572 980789675 722034829 892655347 702395739 739160489 11709490 273393545 405459548 629027082 460548363 658645912 902651412 938066164 866498875 957913436 239561957 738128857 889168505 912300143 937905920 966901373 506486263 850732013 708160320 965188147 188268359 526655480 105316378 371760077 40998795 176232715 132298099 956475946 368129007 642168564 154952123 470115733 372871898 725508896 246560173 977254802 76919497 982505256 787427144 895582501 647620936 793151360 919550725 963511981 998535208 999341804 130634092 840294928 920863817 959295692 467120195 662437453 743609274 868585975 202242148 302058786 356970853 796247946 132215467 858530705 846527185 958027362 482272076 905986542 766574064 946426257 274652439 810205671 236598552 468351121 360623373 682043008 884906206 891223817 472174863 513099598 180313147 767823045 901608095 939641373 716568498 891224203 200987289 825598224 770584099 969148897 58304460 603580914 522780594 853670563 194006772 598725843 694622275 709276662 422177950 535864492 186824469 696315096 323451157 343843044 174505656 690436750 502733490 767651505 145836119 373979704 746669251 777375197 980652065 987682619 771241221 782603840 742361329 992307315 914309666 968336328 379809213 425135344 719612135 813536789 504871446 844730999 393978841 929339501 599876696 909888294 127155959 707104468 212250399 578774218 979414694 985039582 765080726 844741281 476987048 828536462 475733511 939243096 2532772 957599157 620208422 681642290 34686139 580790251 584591961 964264581 196166453 745238029 610310120 836171160 613687673 830469398 419201261 615908448 238367028 258577880 102962410 853410783 540851079 631440139 225927888 847909980 388592929 960376841 308134187 777322007 483839156 884865793 337141166 677160388 946660693 977349330 604870010 624888448 573537415 636299131 736241123 844965417 892314142 963314118 685597437 753909196 650366121 872437458 11027734 197957112 612006601 883075895 815656724 989953388 528251113 941459230 34262560 405519014 682123554 806788380 129490627 462808765 760686552 791772826 371114264 946509309 38280815 864401422 761924106 922492291 305270851 700147630 948593326 975649014 699067924 941171633 672132341 770094961 301107089 723704738 714602161 936725077 689457503 691335180 586298214 835745402 980507632 993472394 953351224 990033034 532549491 925069372 568459181 843933514 619173735 852708244 640317101 891670401 449243165 975964106 11880650 785923337 982235542 990550437 402021486 626223633 84554762 679595280 218874096 462687130 785294557 911007536 499589714 837833039 206856181 670942286 255900737 362239800 975560580 987148341 371025464 863982561 926634347 934513614 277952874 751060255 416492074 764196891 923529611 934263709 964463282 966584393 670047265 811670911 746406603 788169783 386504714 601998116 774468381 996934682 21250165 509754751 686676462 761816888 994879390 996309790 378831392 898838355 192257617 521290761 95858735 752029170 837564122 924579279 671527217 816543274 193309291 976311438 914155527 981871515 231084127 941616426 25157866 80233967 456878879 694069123 868549960 965608795 407262333 531778185 559371270 736527923 154848635 684309266 93997015 939196567 612992653 767193554 613515093 953981981 431209965 949805656 198919793 803252930 699718253 864057603 423108022 661022347 594628598 795888598 457816006 628637443 876617439 920848708 885698204 972204580 420084818 454088071 473502400 845196524 790151148 981569768 940147953 966374428 150519691 835058981 801780118 991214386 891407277 936334227 628963949 999045123 275270460 425913088 627492965 852494922 43742753 685263043 999477051 999735080 679814790 773290026 219519358 381863297 408396890 433894980 535795900 764047695 590143171 624733962 139035761 890865774 894275236 971759900 431720038 673308144 766909139 863129646 449863255 781129989 110876991 280506719 313086231 895870379 758455255 838545258 970825633 997330292 92248468 998099554 396049941 935373901 269170391 413770649 886641265 935112285 484500571 893157759 884529978 969929412 330732702 666309572 621991572 855893087 100924764 611130417 873113158 874153115 436046528 815912566 460921951 831390152 642399469 646977184 216249366 980672934 468309528 809960082 355714391 633701505 919341120 976270156 468057273 586943772 499857986 851732381 110295644 499297422 188846710 229390636 36851540 220099161 13043925 252538774 630030522 787004218 705452643 784701371 825128003 903467797 638444692 886740869 180254353 672401709 260078285 455135199 969561583 981745812 853961255 972380859 475824088 802090716 553455592 946958823 844420486 871514199 601609224 990136437 427510722 769778210 580593335 707067545 236585985 979726290 101537780 731156745 109303110 528890945 430820683 822151702 389509097 914117955 492080162 775738961 24879088 227910504 115308623 212362946 669901214 711542056 252495241 737898633 863901601 953402424 808127770 842164971 6287515 123539052 314111604 923493749 953169418 967031857 326221859 724798393 418349223 937030260 611723730 872693684 108305106 245321199 780929625 929694130 253292551 709775811 247703131 723743002 366627032 671458671 279591139 570575947 901066420 937708374 487294569 868449856 799643633 913253819 51623923 325788947 262979514 531712915 887652238 998702380 989479584 989977980 173541877 601120121 344821878 967840493 94130281 875826627 774413086 994373479 434942711 750237428 386344708 705131140 733538524 945779758 446222729 909459335 680260144 831958270 374654731 904487652 959847463 995500126 606096192 868889148 662001199 945225966 917409256 997807083 725707652 797181718 428220981 822670757 995815183 999806583 544164743 670602170 114298894 119537342 807732573 901806228 180915601 252680517 829814208 834722889 343957628 944322809 876452407 961497945 776178771 982976176 806979643 973456441 771083573 943812267 700967792 794221392 654497983 860757618 76375877 881013780 398673116 808219282 287465839 634472137 368078708 981345205 694113839 908650731 599756110 819526145 875351497 958848345 389551856 416795479 892394040 925850447 129715698 829834510 613080032 828965835 114472336 278530890 552365442 603701272 856425057 935825210 685950884 840475473 134202531 613248899 10045339 626239595 254438702 667557371 387363224 686844210 107908380 279547810 272128653 527639459 268884884 501300781 338940965 449519594 140076396 188127201 393367828 637241919 689487883 810350061 408642732 680886176 46593845 845082740 391727980 904399706 516475194 764515418 122649155 182710678 446721363 558631184 826358477 986163492 303435844 510842037 429704193 947210934 975546775 999314067 228707161 772361824 609171366 911039783 780176325 960862841 554209927 790587585 837132081 988795923 376961144 418113655 998353424 999260851 522273088 675847085 930568716 937879090 545326102 956908484 476825800 828585881 479873313 648770700 28616458 693582182 979283366 990249204 969957168 986999723 408121616 865344175 540603234 923665482 586241952 877016548 554165032 937448029 678474104 956358647 279031432 855459659 619177218 735746475 880118600 954902382 971446697 984873399 147487597 149352758 282033084 879664450 562965592 879829743 251578171 777657619 184880014 271812922 981630997 992171646 851585860 974679032 488449692 538596994 675151068 894042366 793201431 880439258 430137859 754658533 311370724 502129869 757176305 977120970 622129245 701030161 503609113 977300378 619936593 817412231 824056195 850701006 240438483 742505924 184466779 809166144 546711131 646677767 510540018 886621401 517907025 580630458 371315285 591861212 606235416 792468832 427611401 638365023 822881871 828815009 277170390 598124279 561156746 881680676 123493125 174790038 962506981 968854343 65825416 767137953 928912114 978941988 160812594 405795597 266701404 417504679 924139185 961791139 239828268 891798236 460537726 923001744 375350928 963738052 81735678 924786051 610990554 857202891 654495143 926676021 902361264 924614199 167914062 504081019 331071836 699791544 759820202 945867702 767464366 789966906 836836631 913606487 784848366 832404745 979950738 981556760 686457577 968760331 735306333 854692107 284862630 544264367 491244453 893579869 30008527 598121781 513545135 733160999 128756896 442479098 699911949 839080996 615290640 758862469 459619663 896984953 880142114 925734890 626689993 716887822 242676197 762317721 309507175 978603788 834782167 861712356 168958418 364640093 795355135 873006636 799002391 802415667 467513820 918831445 192556824 601166008 788450671 816154119 771947609 945357038 420621494 509277609 483742084 759276466 397978604 530877414 225763210 541027913 227220916 576138468 711511544 766100333 268676886 808434658 711847110 726749251 85637748 560421153 967295032 987922670 597169055 715564352 621750566 844712272 330610929 987308717 921293205 990174252 349327330 777521218 726328110 837876028 134787089 646595267 114530384 387494043 528772061 556179194 760836069 775559987 112151306 965254545 1997959 109238958 993283786 998173542 41210543 250720183 715985345 986828255 106567166 919284777 18302013 596792181 978673763 979300593 822450155 910578091 898156686 942346498 231253663 648271086 471150239 995279171 921337564 921996584 589699023 714812478 957745777 979143803 886083824 964313032 56752342 975045221 607077538 818117511 783697070 907812239 282172801 901972191 434934451 637988208 352718756 548884591 51676909 78965308 815051830 822778799 592892638 746164399 406807176 493071869 903932720 992104985 45737803 574260594 871070328 995673474 615804288 967842201 64708007 926211476 850247747 994595812 484759534 837819894 873236899 951154413 404360133 775876003 84932660 93788520 824755259 835777157 447228609 689722120 52303966 899407801 426463430 664640695 226016465 841033820 293353565 865592404 447905133 840773079 155536044 923880475 80044168 376724297 148898388 525297396 208458294 594449897 561833870 806396692 875942757 946916897 268980528 457552686 89215898 453735392 806679468 858789527 357543988 435327837 277249632 590808212 689641324 997401135 258603274 858812624 568175429 811895425 524759218 950508063 204545870 266987312 450203579 759847279 317242520 981080648 882536702 988724034 906765955 999185615 734648305 913284694 219675807 408109970 565602188 767559531 314473725 365187298 831804929 874911574 797095402 959553122 719972917 963978529 167141509 314583524 886965224 996703908 539289862 882243793 108832956 299807350 904721145 932197934 887938557 898179486 635753500 715047294 900641610 963352307 430855728 564242029 751569258 966931930 684958145 994646188 960421064 977285875 915727602 968480728 336993322 784288672 72644458 948105844 860965223 974976485 695862867 811670713 209535368 962143192 961645623 990907042 357470210 767674090 809350314 889107975 467692102 752707953 537332869 943605620 912473288 913106810 192644265 303280032 760115759 846280376 610887499 916386019 426017520 600497679 486832401 800985777 910349914 990844265 867651962 933117246 98843603 762694741 125458695 239120906 158035417 734535297 880118242 972953863 185778026 476216800 304837768 737282364 662258514 888384270 587728017 630609382 652515264 994966481 584700665 949332656 906084879 913328114 55790702 458254763 553800972 700563243 98796046 849930672 247870881 784177171 988720206 990472218 515680751 650302487 906224722 993425197 951464764 984583714 488567710 771187481 3179839 208493984 611595560 840657535 208316375 445126648 881384664 915723842 866780783 906905764 739748025 810549911 392425738 561073084 531076110 580183783 563780162 939245667 902086525 922433957 453498006 925669129 283060676 401349258 815064475 999700318 648288304 872197694 773922600 784590020 956893647 962611377 828889750 834061745 317084161 392443724 839982181 965315529 854976871 910993795 703206090 762608290 740334119 943836843 141091634 461733459 922316590 976087427 322114485 911935332 780741722 912720853 541103888 651378447 478543838 854982652 605672828 896343167 591354713 859503297 464496616 756131198 916981184 927790360 380670594 472183631 297641321 928676426 337090994 808366277 4764989 278868429 1297273 568353409 485644809 582070172 640225504 857988331 869338941 900945405 705141607 984783661 817455758 856072250 965646831 993430320 587275174 849540121 960952757 979842562 846895370 913097599 829967155 921727578 872486115 898771198 102663995 225507135 475291159 575932620 389500037 781003358 471831002 617099697 576083475 623621783 294997217 928668245 605750109 973017791 846344645 946691176 862630678 970438809 594198352 752836623 300954895 755238017 7263577 347478256 714942886 937825606 49759366 188493861 161228941 685411166 496298229 528727162 428733088 737616334 382765168 787410468 426463197 462530681 963098126 974436880 7314306 53391739 919753573 985512152 596701961 653832630 244243882 866952199 160405434 549479146 403880326 707571639 291202888 496860322 965633406 976473241 540580988 566748106 267865027 711723992 706347559 723968422 923819767 947174866 806104104 913588775 351794728 939309491 235971835 923418050 229038628 720754538 578588087 855002076 194065770 714716547 3434265 72973951 738523905 980617977 826080565 836597350 472596726 815251574 939719134 979506303 215616004 404829491 918245394 931009702 173310111 318531548 754090591 767011651 726540612 830871822 916478264 925114472 804704426 942024485 489946233 890703634 909783928 969287074 802992636 808937642 309260728 922020367 5347583 739479558 82338729 901299387 691671615 791445131 849035384 894242804 710164493 901589756 200507239 494874462 459074240 913765037 211104437 566661728 963143468 983828203 711901769 897750174 805378550 853756079 165714874 663098078 616764280 737318299 963234196 965289961 82987531 387513387 145250155 408595180 260206893 284130118 767165861 910427418 421425461 924776287 845576724 893183994 857534603 939752196 672219290 826420782 576599993 617304223 767357265 780946688 485002011 929707263 915012324 938552074 632904293 883549413 701914339 891351324 715257642 772063390 729141725 971350950 107308472 816191362 781589054 794734494 206676986 893581124 346129956 931851414 504341331 906856254 781036450 954302591 574182261 720455532 157986678 377712926 248520796 733171624 893462183 985845967 48381813 776808534 311796506 506805197 325078743 334349742 852457718 869392699 464017077 763213283 955952395 998119156 912371280 940104662 663639043 808753520 383899768 988580858 183101962 991498258 12428474 815220759 765130706 908230841 566867181 870223486 283790789 662756981 793553032 824107591 946538571 971152432 186585013 243335400 771015332 982681943 203530296 889348241 999749097 999854021 817247494 976257498 52778273 942958527 179268842 476929975 421158230 806269161 86144659 242897488 163654271 261617569 276411986 852331168 399998415 841464386 341143646 852062955 468702376 632551720 657096865 790861665 743980112 862021543 640638516 780549981 157551715 769155342 106139462 964040318 627840953 914196884 133472237 621549901 239979912 908755004 254804202 655737051 189046314 486505660 400836977 492917303 802246901 962885904 742457398 766818455 856893209 936565681 341190956 463280722 921162368 925577977 413225541 837615595 464627989 705601550 260665446 569237770 902585786 911576490 765215663 993893335 108935353 695877944 673995306 987498670 543750190 739970417 154163736 894001673 252113349 606117985 634806503 850295719 765632973 795286181 833272072 912934744 911080109 912710125 752679900 855906314 869455573 995310822 50730521 757715948 244750258 592985198 787523761 863205392 505492357 832460637 844684999 879145680 987347521 990201891 62847105 395889501 759706666 983659665 597521459 996436516 71138919 719421758 484676375 954597953 14294957 397929796 676408100 707070001 734026908 788066497 238980567 450681423 787187296 923433482 203210546 278547298 595845309 601787887 509569023 920510120 234873491 348803192 847690002 986885407 579207822 674521229 572050495 926966757 735335717 748581236 326950714 594310670 143285792 225873195 614129533 621079481 698890655 770349518 527365238 933993116 835312768 951481447 642686973 896429843 315183650 548440520 43839833 303169040 643578675 650108002 556409563 866289828 813889619 888190829 662938018 721264857 338418916 550926321 453171245 773236409 588341070 633337082 746530779 928340001 343062702 360626351 617786008 910584712 902817243 917537924 711681843 851309666 252002552 369484756 14320305 562486196 913648036 997190868 278587060 522452057 294322416 684596605 632211692 675630004 388685978 774214061 775631038 853302683 551293520 675846704 222673372 240009283 489536098 973920580 157033459 349878925 772544397 841432479 639967600 953510824 242192941 621392488 75061040 412564264 466563218 660169470 504926108 880704812 936090041 962899905 132726834 270498887 718224745 753259202 408165555 574628509 580396292 899516573 860802180 943225363 616863457 831778521 394789571 946145994 384160834 829906377 863936193 914216295 206156698 537607872 509934974 775431088 511505570 937509148 122962110 378985904 306217999 796807190 599198749 737752951 379712545 499383748 290363965 840843127 996069668 998542162 11609846 148332993 591797924 890966042 907178509 919456808 921648504 962364032 384682378 848487115 402065645 892988621 283717668 584082076 998560963 999374030 642045846 894480243 258044212 770628499 981456188 983974728 307226351 974876687 60558194 786774197 337855547 451086785 582121493 625585405 754386593 790993668 102638628 721531628 340685282 373790011 922054026 938213242 501525403 580605202 202223239 566561314 879246439 920288351 953901465 991364109 441861371 469381820 131715079 263023883 364295026 815772534 697114857 960548443 373031488 586110257 261028303 335968797 558879622 763511136 707774361 771939200 616888783 844663976 815207689 925663262 19586897 284315107 136132239 750227374 348750436 896097326 11001330 189117131 460980712 565684721 741439145 982013365 381179661 565718184 511765871 783232772 340121263 839507883 70871714 918967159 588601850 802354424 915493969 947274268 845724804 952660115 434104051 529662166 366085676 899084539 173237337 754477158 984448018 990321136 664302905 772702722 351458728 714260725 291288786 553747162 694657004 837264687 313913310 648415069 445596104 607509913 608753571 833849369 936749428 985981795 499936836 895852366 551525988 726746380 752187269 902080567 727685193 759993165 26958443 89615078 683856444 958340719 52287118 415950667 916728244 975969799 231378660 732612015 483977009 997958350 80198663 835851966 710864499 795650046 220843061 499822707 904932796 908070263 373978268 881579497 241726506 532999052 315718182 964531187 386278282 775460726 663483056 955109060 900682169 920403033 954534334 993069987 183970942 228064443 326523555 486297273 815003921 871282736 100156342 226790667 858358241 864978224 639402656 906242218 13633695 895034869 134936911 307224562 715939296 945858465 383370950 465521185 719822466 797618607 49284327 851308301 216726781 515108165 319056168 897584737 156066888 536297661 578385453 664678099 932849102 955670960 972023939 988350464 853045557 938908755 930247330 974882058 951819083 957172479 158693093 364085101 545844447 922675660 406451224 696055027 43136341 387852296 315843004 591684507 265487657 710251691 563359313 846756928 856156533 947371578 998077452 999926997 796091488 876497305 320879964 511385078 345137134 479412149 317980108 985221573 832667736 954406339 213659289 837824833 354526958 405724683 926403098 947301980 906429768 997992021 760563457 987614649 535632156 904799242 85600554 510409244 407312703 432427829 664991812 820524631 735729528 957750801 977484293 991262994 61645173 826079177 16656534 283929846 596699287 942548480 306536739 589692675 642593547 727952577 594975768 673590682 61238285 231710678 650361910 882989754 569274543 573827481 881225644 938057981 242928697 246783975 416396397 868979839 947194537 997505069 405923757 722939304 540868074 664165519 580684099 842973082 323716049 330884096 933627396 962837662 331399351 931169607 279801242 597677014 871045236 958883066 820131240 824251434 914912215 945871352 457150680 967673913 269394249 491804496 442852115 470409913 517884490 684105494 214722622 554194360 734179263 791809373 227825791 436185483 718262605 739195206 417638124 486190381 936334172 953172180 489466789 630510712 100891062 643301993 819426253 860766357 375905800 969573596 181502582 974322709 538203629 735116672 935651304 949946822 67507071 440009671 14956645 530468828 591063038 966548392 383055737 690092160 841697501 962726836 111119156 818770114 117168233 864186176 236756720 983094374 479161604 557259013 237743204 938552947 818716881 894059161 858228906 986189159 821153076 864624735 902989967 969220784 429602716 686959930 540467762 907362751 144442787 876285764 938520459 973422856 669583420 694748533 462129624 603130461 479983451 696607840 686905295 860059435 615404736 833444787 954945391 955837503 401070743 801194093 693907401 972206324 514278009 962672013 212413729 849920626 660909851 954084748 835646613 843116862 571226030 584783194 252792495 534203810 393063110 530803821 282108914 525216599 772580371 921927028 538314002 952146588 672076475 750541184 657599709 848175851 724964043 832538648 248100540 861450686 81586414 922774282 777099555 785811335 85615110 781663552 227122921 842146246 155488478 312884125 915660216 992007051 639481026 937013762 325421661 533400683 147030756 527674858 781389773 805080305 185224941 324756646 858892914 961460871 906245310 982650917 872220345 879241570 392660837 846719159 807024781 820621760 927149203 941267321 321574 703371774 555910131 843013741 635026575 664744444 375257593 815454890 660214854 894763048 457120168 968943384 941850582 941975992 339056846 560630946 686763356 944390553 572763809 703524116 347904758 359927074 171411850 660712822 231131356 743908983 3694225 384828618 316863875 846518066 573507770 642576585 54363194 451993150 661277390 886164898 684756075 792729732 580342509 837214504 862247760 962135101 242366965 902239508 96387677 687981512 528786996 998826597 158093474 965369705 763860806 766706617 200838373 785013998 505711013 666288573 532560342 561825611 215705707 282556922 372716610 991088417 842360862 958557500 952224316 995800526 81748592 167642790 330457961 535725343 311545546 391867550 110613630 349855852 198862613 676750269 922272768 933913380 5955987 544509997 363682612 744926872 455908780 974624467 281889815 726302635 385658993 912050959 799541848 869437890 520096272 556298206 340629141 655315812 453656108 897208572 59617071 877943105 24452098 470496339 400289322 524715251 326024334 844202763 294648578 767292918 206370558 848983556 484081713 661521681 582045664 932612727 764989971 955166108 819680777 903786756 626680065 861725056 857040856 990594780 12658277 632551657 498816768 908829365 690354287 905548722 982172996 989334825 597243266 699228958 41191982 631191715 352079072 784876011 86498361 856922063 495170270 939344771 758854011 776811991 145515332 660846542 351760811 506722381 113201496 949172656 250541799 635843111 367182543 375127688 255579056 354579809 818284749 918045689 745558557 988012725 240244991 420726470 583481497 832057754 454016431 901742779 622578562 824422356 899483747 990790329 849291562 917561010 950895432 968574472 814116593 864855203 311502192 857693678 267302815 432460563 363797647 901944303 842859163 920408523 444750922 543045469 272816953 451125397 97376294 519675764 52842992 602842914 233578834 770310239 698438216 943805636 648136740 695190856 246187227 370243862 285930573 892649444 671208299 925355661 530110821 868519791 923965323 981728807 130206358 435633526 223596385 590099831 741180094 775751340 766844129 817301231 376665247 477514893 522944145 648241557 816773863 849234116 333657470 510110468 951709233 965949348 29271009 829588710 422753478 832593034 427080750 587603268 223131556 903556568 356768886 788602040 70386749 782076283 566365229 785147906 700484494 886880505 298449645 538697435 216388686 244205373 264804449 531384037 896802776 978088410 777765638 799751673 890992317 897829788 367376320 760810114 542665743 848612777 656664384 668657208 946628962 973869479 157035104 509544341 461480903 479715412 851930225 863710735 861361681 926639358 344004729 424850917 994020624 994524067 555252427 956623362 129404775 377642602 885887260 918361877 123397686 485484620 422010370 918345873 581126823 668065412 911488654 919377251 890708571 979749424 486116915 590395235 548264670 642073213 994297477 994359672 157509059 783508028 43320087 821043081 304849283 750501449 252135749 871611421 410064705 872202876 411754968 912440603 849159227 878360498 423861805 602376637 665269404 861456305 401418213 565513493 979516794 990536018 693435466 770324822 48098535 95627002 404213683 984458781 990173643 992729214 913684015 978923666 207699729 594067960 24294543 277000168 340106222 512084940 111500330 259532291 652437164 758468558 417326753 810585042 153118634 380197375 245251426 255515517 243158490 787623985 62823471 789829499 778894287 846221290 571517368 603974755 517459466 946936084 615802195 618594829 681534756 910805050 349250665 855576783 757051423 983852433 452549108 478116542 171729768 990952794 568183897 921072307 240191126 333576122 482837998 969425368 143499467 491701037 86553554 995929122 507338640 565488273 748536363 924915700 499817779 516286591 32518469 426197244 698275603 958477450 738717533 883115183 875438641 904508001 397009580 527423595 493792167 546286779 597973371 853269989 819367306 901702719 263063290 880037548 198997500 572070098 594003576 983817720 524911613 861963731 673849883 999010585 113268283 586180602 166820811 579018283 744227317 870766065 538410022 814468528 668912807 832293036 359933899 425090091 548046976 866848403 100136194 869980364 565785220 757391405 167470824 526160251 801083575 904922553 956169607 971507600 164587994 445580710 199101763 214740630 895395445 948197159 379959860 640629168 211927179 460146961 186031341 479237245 421530394 589213497 118981002 178730798 745459974 818651521 838069208 989377194 963311477 976935590 40595773 585484384 53804163 421149320 23865395 925169780 43122514 687874966 881315169 887304439 24070773 293505283 503269975 823123606 934602708 950446704 918968512 962512875 990965981 992216779 929464230 952928987 834644062 982484554 219982393 509218550 817403664 980984573 567749219 784765357 340331576 648052959 854315192 862788005 860125001 865767078 295238945 533070358 398145064 630456431 591508218 646529945 750163691 852176986 488717247 576844141 274243867 624577930 698803252 986112666 530654195 983894939 172609925 902904655 202252338 779322428 942995538 950533722 423692193 827342306 289555282 291938765 55035 839168625 640913628 753098492 136762306 761347615 92512192 997894208 429646773 670568796 802065765 968312957 157534924 931867273 905642909 997669844 154712389 554656506 316281536 631509608 184682652 444633391 791858219 837514099 592157011 785458900 968634505 985582304 401712007 736115224 655666946 900701174 859967000 910839328 812389398 867109793 531622528 985916616 475428133 525396112 764925838 842147668 236956134 316128467 953949003 981737886 551177956 781236541 260274805 304892073 758167985 921560087 276260111 445663552 556759881 834190067 679503637 997214081 919874926 939547759 423213882 756826493 642806643 784999228 771772731 811333531 932523771 978427466 147620414 916933968 581508949 639412073 597975381 791376039 930609683 970415987 442265338 980354118 994236636 996334109 738326827 819725476 580004508 986553851 584348349 991995834 499162186 958047938 565671635 608145400 92299034 323251953 110964755 741739989 819551735 914899695 739859981 957755184 297073499 955782045 829801696 974756157 862395602 892509136 703982976 714937303 263600041 439735696 539071479 644765642 527635574 918714016 336094592 721789335 658922158 825731000 788495697 908140824 747312214 867554766 801937627 979349378 683161750 908195479 342058345 580625379 261494972 292176975 622043175 962461583 428425314 964592921 412046656 508270112 569085138 604044901 168422528 694658925 340418604 762261928 557071378 712793692 263603665 466337704 274191924 479386288 179477685 954069962 826321796 975784752 662186466 739251686 512976808 640193945 145905908 265037548 628325051 967865766 963452143 971885850 726015285 729254127 869064674 882027687 39893197 307497585 134365700 755529296 108698486 973366118 121342972 618936518 770008691 875815195 561861300 862372383 74740121 591583412 845880991 897539607 15755432 581836558 311795044 946781015 775103706 793949639 907625446 991558579 822239359 827016195 523824799 665306336 554963723 885626794 824988985 929805024 366486814 409120901 235679011 909150470 223115646 251262056 229571079 590556304 997496560 999402604 496921004 680127607 941122921 966457202 785627984 848921071 15863409 196593267 91649847 177794089 867953786 950589384 826324630 894612180 458159993 960650945 636461875 696098747 948824793 957280727 993253378 999774233 454540802 653950391 29953698 144399061 334466373 794446898 926351706 946490267 201566289 643938155 160920794 921597716 746423019 811951865 167662936 904424812 154423647 440931300 895882205 915822311 499500292 754691764 938366442 976882343 367217280 850394229 361798616 974001454 6108344 191610362 886620829 892272746 865787396 932820779 250592191 707669516 107113177 962401696 242194095 946763066 765243824 769361020 124169666 590932576 115710916 659567424 571959597 925462480 314486079 468618825 696126781 823985587 716265287 897652671 967789184 981400969 748869350 842750092 714925078 775759670 685134553 717189514 324145927 672691894 531213082 832538272 959855558 977062781 246418232 501934678 668087545 760172326 390233645 780002654 146179873 149061532 779813029 821383181 537796218 557961898 526609008 787708063 991045367 997230243 996879470 999129451 207663715 428275828 44165710 222216439 951740006 979769822 652365906 681790469 631552959 889230492 502054615 680974989 699319449 954261499 722561408 992096649 979745475 987978857 358621429 403344926 599344214 629404876 290451163 650955369 753084818 939238344 725999761 775413133 866727445 884021792 630803833 895296835 243637563 608921193 484843512 747200895 204736875 381023954 520072805 961965942 455793973 729801710 101784220 207252160 566633445 625771162 437926273 446621094 419098712 493996593 763047995 889807479 580482716 825989820 587743045 622417005 30164912 599157649 725328252 940232835 300886818 905660589 536488173 675842264 921063142 979650059 845171425 901053109 779457577 942631205 66443605 519728028 852684452 937552941 363461650 502702703 485629376 641285762 227189932 601419763 414786171 961949652 627500629 658066763 187918330 901073496 275556563 543085856 511798213 827253523 987089093 989152007 502621585 792969336 241756784 541855852 636760607 670433043 486838738 809405407 23037667 651984979 833284507 917903871 689674420 994507784 43881720 165719388 764345379 937183558 633610903 925327942 60492381 246348681 463341529 785906522 734461238 966725930 206050506 276852543 411048150 817953169 60195204 705208564 373201613 455387514 664063215 759805069 867445903 919666527 900230856 985317521 434211632 527652683 799530705 826543246 903561954 908430441 576483602 884681079 362120697 529481110 667513545 782219895 111525579 882920957 712914373 878903303 12009107 479287911 63357641 467543871 73186159 229622098 744967634 967632859 753267594 803333471 939944104 979976157 756284341 863710139 216304013 762934077 505819956 606808576 323783176 955724969 60451915 627793668 618301897 998281768 678655502 829137703 549424109 950215894 10091125 551771152 315052237 421950412 995985334 996975005 441715702 594369975 978580065 987850697 485236474 687996179 456552528 990244156 561036098 998301816 393786954 928378574 270264554 764082426 583205135 986271755 690040000 812578948 510473162 900061819 550096386 990844390 528978065 708767586 329136704 381750774 120750467 983111056 300678566 659148601 682524574 873347468 44231222 433670946 743282004 956399889 932909476 937548097 931429767 962940744 11905265 944156882 314087013 614330561 916544310 990896963 834968729 996073423 580086376 612292101 182226111 437079766 311623371 678360041 413324740 518779790 659224505 865881007 70072913 693819310 774322306 781751508 167913945 185652155 379507974 783187585 730347129 910161047 543253505 592668153 605476445 885374584 3307713 622686408 801178171 988475741 11570473 979505212 826820680 916776851 577595814 980203209 999205476 999641822 360364947 993954187 181964288 901941376 270690348 958793701 942723602 968242686 111094583 948885642 539741583 930742771 86051484 946414742 763142475 887362550 724961644 874809591 427035950 563489230 352211024 896407989 331940399 800864061 410576731 554499690 129019018 491045493 421985639 842301684 524264833 802675720 289649291 482039473 766368561 942812591 140155952 318003442 594792816 625748519 161030229 633557553 884780746 888417346 584034219 833763765 362575602 972258385 637898570 739611433 914830084 933173661 51924526 956639932 863825789 897656892 376945761 655266193 114407515 467305047 102387915 200569292 786165293 847585163 247604991 810068951 290572939 735954043 369123738 891857458 116067035 639117163 172094609 739862958 978740728 996898650 857861778 962324504 383127433 456770558 14600478 35247411 714193443 744197839 700234652 848941010 580551205 682957119 60518326 79497910 530611149 700383777 821043134 909832626 193724925 966894168 823605744 967627158 81546963 922630109 832352096 849414274 897923856 905736910 540177127 716200672 187923706 929377207 981021580 998723413 649334743 705920172 769426045 929714282 741721569 925870716 187293542 324557190 389422359 555721298 722739083 738896263 111272597 548103046 125767967 822390877 890806760 913025559 721692412 875218693 816612192 843606273 267677247 770439592 249538740 771856257 465265095 471059372 763930254 987992923 80577995 292709474 765289787 815405409 334115676 340570815 252018785 583396883 508134319 628265718 159433757 830917009 242658843 357537450 998155743 999649141 937565017 956391560 309762595 635180888 310648982 947626346 141175452 764154266 62483196 226003235 976551589 980302861 227246391 718271287 885699790 984856849 188943188 680338108 691906114 790903496 344962180 619537258 172062047 771574800 977565886 990821911 716058292 869618968 931085633 994467781 734349761 967628965 879706145 944982232 747466965 969852349 956214945 979655229 140698490 864336932 929288775 950653511 416789348 759046822 373916052 959232685 344257008 392826582 306092005 430346890 33183156 895844559 174500059 678095510 543361528 886890010 411643305 739951124 265236898 709632860 133179992 551345215 855336363 918881209 898557089 948451155 163030164 494967964 940928547 953450590 584007800 761114993 170429223 314895322 765799142 850143706 785601044 865889777 914730477 980179605 491131438 858435438 113428286 224850062 47292549 230398716 119359007 218155820 362356582 834735118 621806141 797275096 235135653 634833908 219648970 273799068 38276009 291139325 291237916 655751038 773937021 847951119 350374777 540220109 594713212 703746728 528514549 961592703 795388946 960526150 149341029 408336409 113461131 598292668 996313411 997281002 536769593 581030121 685923138 911789522 954999748 994593834 618322006 992828467 491703860 865687988 161135331 765310052 796842117 874014685 972326523 983163048 777088753 789665562 884371945 937907802 23989372 841466083 226126753 864690296 18686178 235511021 982422927 996883390 261371501 424675093 906107925 953065916 574025363 972671639 647228031 842756034 344739227 575670977 848508671 971464188 721759429 854957429 390672870 705188322 5474982 72442779 100906991 915184493 321731565 730275227 258918941 419526854 318432133 635236122 180894809 412559719 999444352 999518779 885642116 926991475 772729233 821562634 721393284 743813644 724234369 735841419 788805845 890325552 273197328 834368639 15541932 373926572 180548914 755493139 583002940 663696149 18742599 58859461 52953264 96388955 575364459 638299400 108695183 882991225 509085906 805312334 664821201 964680383 723355255 839026611 752995148 926436897 530739976 680026912 563311195 925447625 89411128 134683274 806159050 858991611 976605975 999094982 213354209 947160435 805553408 959962653 535101299 623674735 615251639 767838531 73316043 770845158 42366203 784448881 140663512 278341126 851419265 897759519 188815960 972490695 414458960 445416967 78415480 720500232 745198405 766626926 296401578 380644364 237680519 353834762 66202395 738369512 237898945 811820069 488221556 840100431 721720433 853379328 721359731 927312758 439861851 946110433 420789279 736705074 219016156 792599535 188536800 628396711 813245082 959242532 76294157 945241322 175943518 522217515 188528955 210759808 321379801 735180166 260540564 858372000 614900027 730991856 551245522 574282597 860039127 905994454 769450338 986529023 847515817 997233197 193653235 623713636 259119734 694401794 298136662 958090534 434378744 453232419 686179283 903748269 861527752 933926258 729953709 902960185 168675851 889743119 428208093 807948856 759942337 961354041 982139662 996292583 439024639 540544041 869200444 937705757 814967610 898387107 252182263 699681727 668064473 696052516 941091512 957006580 469627343 869391035 793561025 818711296 40889628 950147017 493667337 609913086 705071608 922506127 559967557 789199216 560888619 572545535 562229109 894583485 455709066 706954193 12617559 567281067 748816800 828797121 523108299 659914002 335506998 484111975 45263338 900501529 834056903 865210530 335611800 341964524 409216938 676750307 889467898 926016530 376568141 637991568 79354316 247007608 1256947 627237512 154527231 656587960 79258671 585025085 829071109 830763165 44322976 989104443 694223411 886649672 513293785 681204623 530031098 952189221 89160702 781215288 344116228 475019409 193511383 903083360 89301653 457411427 126025977 755694224 61672100 553451686 346251548 353794580 691450085 724541031 811126975 825111568 6861647 159930479 793827968 972885852 629243715 927021278 88051654 423614862 440375103 555093231 713955007 724160290 658652357 752839776 956423763 999775175 396501818 618086515 481988018 953095272 214921004 334481506 381115815 472905813 963308151 993062412 431328573 953725944 124156291 718471334 261653133 421656337 794249344 841631020 239970249 396969179 818813392 954197981 425224811 871951622 889368017 892664182 510364424 657495930 898321291 900777158 525907212 644761919 148331303 782996524 934905956 987766217 196830360 475744841 470648230 866911772 518761761 677166522 544993632 884167936 446371549 588240321 648105969 788371649 173383187 297954569 873415337 902345302 590625841 600703582 452934378 788425694 695013189 725709531 655445606 764314102 832457505 987568260 503374033 515289803 967154632 982263471 601622592 791813244 301883489 543372721 745031817 935001757 612643144 640843802 718319328 932885691 560452406 735844178 794780460 966154847 183029837 242228565 493673467 697417337 442381246 771557304 609991533 951532197 941453126 941965931 40035907 528620498 935085073 998395089 202417708 651415546 487668170 660347286 404318853 900676350 33718176 733875767 284204206 442110648 612248302 620114499 458224591 556785998 769303964 928150324 815106833 831646820 64433473 461927405 521751235 921050699 412067294 873736931 990009915 993933854 339829075 718326793 574612445 921304287 590874151 828814558 413364000 544227590 207022545 451850433 479283966 923980793 679823231 902581493 810252885 863436794 144589151 352625945 819203725 955881494 568703745 669282038 676721241 890892252 35262235 352726078 84593944 251718718 377644136 546280379 761836384 977857496 725911825 755002169 178765840 568213827 541786565 761030147 99470681 748804460 188713198 947619166 380641715 839492729 324027017 356853235 245382327 993736194 97527422 902986703 700949185 816056225 170668539 837566255 103342892 122454690 927425911 971156513 757674941 763958605 224757258 589614214 358507457 571945434 485263220 503702998 459664137 495590849 88053100 323816143 76520659 202540931 681843190 741346134 78981725 625205601 268792837 610124294 614107848 824150084 488488590 765998899 314059718 455605136 935083082 990586194 699377311 934782927 101629277 962222741 898030959 911050950 20997350 843186171 797217664 818466573 450248025 503771687 964463287 989286800 513523012 579934378 206147559 367199699 76906020 237425115 320218535 643210166 861939546 924466077 857405359 942583964 505778144 968048516 472395303 985270329 189249751 951946552 349322792 624617013 455601444 772599088 415806884 818830646 823693677 981700979 497140482 616298857 587740593 850394410 761650461 894961479 233595611 861005110 770597137 850381797 512019279 581055182 487603877 596393433 134500053 988374751 188787435 492266003 623986334 999476288 601168940 602282560 751376931 988804557 200347918 541742513 304081109 929901391 838025187 966992844 508845714 835608416 998073001 999914179 760467254 850591555 241720939 542002463 827143686 973793642 197379418 402511783 12407842 559011525 32855836 572858469 922367526 976412791 457732473 877266060 958833203 960994378 197764941 839918662 877553995 894590935 549388939 969575979 702602343 746889386 806254994 830849679 467320216 848378026 729889898 967366171 282399146 968700250 439635504 946210836 620892229 959570102 830896338 966258281 500201178 669420260 937883097 953814528 432085620 521177741 201390111 299390860 200615333 889389437 987321547 991849428 340808724 349789191 371257104 895581808 743204533 770671119 230844191 397780335 860165462 946705905 41523930 842256068 53604681 140473223 598148168 716432389 138497607 562349840 823461995 827272702 459512029 953802847 357935621 402296249 338549443 940654216 487906267 855249416 866321716 885325549 537453862 630286422 512855313 942526122 802189603 996745965 398019496 906576251 679730267 954369953 273348292 642717282 730302628 924150655 25989563 354103462 713410115 829611078 116892216 376569464 896198780 986158556 777128521 950618488 952409610 954741177 391991938 723902313 908951145 922552453 633424204 786709815 906967283 947915755 524554904 982199929 773029246 935178464 112488901 376167787 519769906 794623573 573098873 992816328 619436637 785570440 926676856 974888743 983806424 987165610 303271268 878413565 625990094 843788546 117640830 790841005 74242595 316479005 734324705 780889946 707375093 944649898 687479095 944566741 132970027 982329963 893911403 949744676 414963776 660932579 411317009 963425336 181532849 693876242 829081969 896657316 252050532 679634096 374227309 525806410 411798226 958718587 571164984 815521039 144239419 428859943 730637964 920280398 20992115 850078804 881685063 904744873 803425960 987852003 776843214 995498371 236636080 849278646 698806021 997558858 236812765 773327129 177429107 756043799 731184770 856052318 403105163 592764754 327814898 708011980 741497685 889994528 693284698 844709045 763769353 956277728 527703358 663787507 57405693 68735291 379859031 516156746 102421083 314128087 907889338 909593993 87933510 295704666 694744878 713690989 286844310 727199489 640891661 878203099 803192247 979187923 391077437 715136122 475094793 833107457 171994780 840636808 985934250 997643948 467087381 538221029 743998945 981374758 997653824 998270776 727115265 960973431 324491353 446836462 966196298 979603110 39547887 47447577 244222832 757630984 763429590 890554406 208889312 267366530 395081831 777522518 966111926 993749418 17826400 912568955 53719298 112295167 524823814 893194519 285828924 755362225 228705168 607554410 894769594 936460950 598098621 849562300 546486699 653182749 885878411 889182098 17012569 711538805 533394378 967581199 664935935 751681437 681377084 827931817 900898214 995893674 734662356 964677753 899777461 903963935 453040938 804955862 591931646 723964451 601746459 713181510 571957272 687229739 74868825 942399896 404757051 899510886 384253896 545273746 802560741 870000452 152349698 164756437 591485888 635250131 824552420 981485897 691032059 898306980 543413088 952540975 473707764 645550289 559351352 766602325 618746016 702917736 609293966 690290197 705472351 941283903 624435339 733139891 776637929 921792390 703114559 996904686 211543565 964145785 572152525 948907501 281433798 989096718 212002683 575058452 236897382 318889964 683923255 749994868 422031100 633650735 427416693 842849940 540349085 661469380 258909276 882521266 860547844 958466690 927967985 945757975 90405942 778551181 795659637 883376275 590908390 951703197 215879315 302412751 890575071 955052092 84643897 747741346 81527210 145539211 749432935 794113432 77010248 907226643 677696449 734721989 214832797 565574971 327130156 550533369 227705293 663391409 893399508 966456987 91947606 497121459 290978947 601469476 682699834 739010722 321517582 913388374 574822295 954243850 255979458 801833788 390275224 631179931 803600145 869111018 837522857 993419517 359078003 767066643 363175077 852498420 252494788 713896289 492738875 995722645 273022004 496840086 412046174 510092381 619597540 816103900 156754605 705585989 607912595 644710334 225335983 444701835 847650119 974556059 55671858 979344678 427208616 499891544 403282492 716411913 69783379 392061566 938036324 997127586 804058853 872718300 584897742 893350517 529573683 606389235 774036135 848687845 873516498 987189993 137312010 808475651 476507949 596400553 48125164 815517540 605420179 955051481 775881567 895971194 650047196 698996420 347168741 876167391 852613579 921050693 284253676 899678705 711152319 999390675 953237012 975553442 881638351 976613156 103296885 218939486 750130590 805366617 596939159 800275635 245340604 938669323 390160245 926579504 524319894 643126485 313445478 909419046 3883272 762560296 78994686 90931601 653387404 697714454 475586008 643699094 956953662 999425913 709730340 896259585 548003089 737509132 871021224 892910973 18091676 821539183 843650388 891422678 655144343 896434700 689888990 747845719 703166202 777554488 84008266 531472658 915888674 927226513 871336161 959211248 590572622 898122215 365034104 812256063 35106544 55045220 583730617 886844281 760579820 994805732 984227528 990725981 930852026 985490732 475900719 906687445 751348384 884661426 430236527 436690251 945251843 993814641 208119668 491037108 406616189 525444791 623750246 655509601 609266112 941825077 238823199 956210622 218010658 970865346 125500648 199499894 728374848 844628126 743757445 961021900 872169430 987007496 720006793 787915058 897303984 919407316 783216194 958132810 978424153 991796447 11214507 954800189 911820092 998636069 935722656 940099548 999486307 999871818 176187250 770529577 928725149 977575253 867951893 907413790 293628186 587412439 71073402 769681537 933474743 990916569 188698499 672844444 649931189 727559851 939834061 956222403 94471199 672454336 155621915 352086630 694041491 926099960 627783266 656801128 818241746 999194630 465219087 569885721 930784792 944847321 670752591 844756767 675789292 865085497 130507946 173291824 228725810 301957264 729963917 802524781 536819646 862977163 743332608 853333422 808805982 834177109 53321437 213404270 797071566 915035005 52725799 659235750 731951177 956184183 520915252 707785192 163570331 199822333 100057358 670063553 413636737 690905930 943376093 983791749 372259681 637861968 869555914 938301198 827630869 858049444 619667004 795393694 899787056 970797901 809202377 901063975 406308893 815264426 724979355 807629647 900907574 939939172 508350474 800206284 248110885 441953197 993717476 995884266 97577494 215547387 687186126 803320262 640168768 966189785 277259391 462480659 892104275 981865448 255832615 322156839 555495798 889765173 11558771 571756157 842587426 877941182 943285785 959260677 137523471 656901895 572426956 656691810 607917793 770334522 924176509 938111938 87260354 472745171 230530801 264174991 991648990 997747625 718967574 819820518 838505854 935676839 29842355 388129910 933917180 939230878 745300257 997059447 566457720 605882396 797293300 934438643 657666392 845485038 946158280 950177658 924773197 960070552 851589482 879147008 370265489 833734289 94621781 288665577 573560748 686008310 63587272 362317985 298487550 699533691 575430445 843514069 988973924 992216786 194122660 600113506 98647274 929381192 612742234 820580386 269310339 309976886 308932611 489246000 650903240 884908938 673194074 703647132 164361516 188848189 972697959 975946293 264843944 945918461 551458952 756652278 664267232 864284798 114404686 428528680 771657932 986170799 523678511 753641814 812485985 827372460 800021238 867749567 541198077 845920059 975184912 984799624 61216328 708067467 160029234 743491787 968896905 987972954 118075360 796266611 487968657 996222678 408820752 898624557 488139271 526221488 708445080 835535360 211634362 774520533 7664091 370220991 822220137 875580090 706191607 968435487 226557134 411544055 630451793 789904223 947469554 979613424 800205903 863759760 206610318 604629159 199084783 866378498 738861764 917492035 503986516 614186704 710968551 842156041 899860459 960509165 478659294 564288116 136112997 795522884 909970061 912863375 122098046 157404822 881897906 964969209 277740524 691421703 527086812 921545833 742600770 937475327 113007075 296234688 126508876 535283686 798324094 899857040 729033920 893203017 551558094 904971100 327736286 603521683 209362793 797786574 622377700 897601049 416478108 927734952 978810221 998427344 17540655 203319424 278339467 990093009 490522035 523848542 852968115 922349098 411153167 620169271 151367174 255512251 666396726 819452485 490266058 736127404 787791947 882345865 960060265 976684862 285463572 728985613 168889983 294793749 319264822 402006192 382380546 607864478 237960896 521567164 540163861 724936823 157601788 511083190 116472793 958259830 184553005 541406109 706571374 766300271 913507512 922462830 883460822 946206395 988589607 990806194 84105879 300280260 471968109 640145191 277655035 767759754 686849180 882720062 397216608 627053930 23582674 250237699 31621468 638518074 902795495 905448544 106555400 263155414 27743304 699199141 600328824 672820673 305801509 665661292 231797108 751496753 323243114 661079729 687652587 701145447 984024666 985949410 217059408 445123940 993158396 993464546 492802223 676127159 213475776 926661639 877381261 897401614 233135561 247120978 751105342 760838026 379329904 942589414 503960959 945461493 517961840 799138816 613638435 912987531 649060973 692039204 844152620 883458002 567392039 689664464 49368583 927814580 589651139 772527957 429499554 495507500 45625019 209313051 222505714 575627631 953180695 992130079 648894235 946941767 584782550 950998307 719761694 896638275 562945543 810673654 304174797 564769387 710832447 823046410 852954454 895287405 489477782 971130314 218466273 743790833 964789671 991621220 605181870 823158544 326674941 975194609 131736093 627635760 836704763 928996106 643520180 964067407 543389069 772427417 283683905 308214687 853639106 888438325 793448507 817547544 75875148 236891906 696797530 731766277 879820457 964915264 74420127 283959459 425871327 479649267 577704311 872215429 379403757 436197824 664313601 943017015 946298148 964511717 244403583 688824770 301678456 819962687 468278621 651233069 122639211 760564088 67564081 726456865 74962162 183461321 956694512 978052611 786159737 980156791 322458402 431472138 245230662 301471111 377594901 411700979 200492710 796505175 920056724 995785675 85393917 388743774 316326139 668945470 550091355 582315903 399906828 790414571 279276523 654192100 187842489 950873139 227690729 451627858 873179583 918713329 904216320 928280950 37438352 744576866 289471744 348482567 890790536 967874312 787271575 906672046 229631200 268314735 13736371 816595880 556589577 778451190 565256606 597327115 67081047 866852640 961074728 988516239 338719907 869049027 403264018 716692009 72955807 312758258 841373518 894777315 789658151 812910940 603720747 728144519 832599577 954405342 317978061 758401841 194949012 476805815 388665210 955428325 94195400 820076459 682325732 764537719 51344781 82496618 527273295 573666924 139102348 811008233 443327442 788301460 288348181 356453473 331216860 386622654 56927217 695584289 486755300 873111104 884088254 944531034 820190652 829545367 13497451 908190428 111736005 924742757 669760863 712659534 745478920 859525881 397004683 825481145 140696406 636675783 561912668 597357303 6033429 645868697 559522310 807185225 334640136 741309274 12436726 904834652 888508500 990628341 63662088 936504635 522655278 758627700 574630532 724588426 699837552 949486196 326702475 733781458 605814724 872376738 535483970 927049512 424031454 841009667 397748534 979092539 869809660 880358620 78102218 117722783 434175039 772027553 404046600 409272340 901497899 950435125 178036800 951483193 597383202 799613906 541609168 836462440 50977629 571411652 811501753 961546794 91460744 113168622 232524982 830895265 48284297 833210318 144194162 150362220 658893422 949419386 429941569 893823994 19495265 955531061 455251458 657074069 498875247 599519527 230363221 794726118 373255326 469440064 584875003 686599079 120612431 801246796 937641374 955590554 798904254 828583932 116337996 271936881 484421255 550551519 921981021 981473362 111211022 192881867 939945763 978374894 399927824 698165761 184164736 259939650 723774825 914885572 461561375 556717502 803397217 887073751 977839629 980889024 32987857 123317958 247394810 471477819 577372114 818980643 110400276 391067698 810897167 879634441 976626434 984589276 833459235 855661218 3138581 952490880 485238735 745569628 113078148 364005617 212492433 375993820 301590797 431609349 152962007 207340407 857046272 990846622 9801636 66658220 135779419 523683115 172250796 376775601 233774783 646224280 720397046 931618391 879980751 925491523 196329866 983277629 843576387 974017348 150216671 563175449 28354016 512000714 342472794 585270500 12383926 368895295 427330029 917011356 46405920 880759056 673896781 749428589 149006053 201164387 333031124 973085972 117451592 231967035 24263867 192024588 422181785 427160874 310973519 825829568 485282289 635671369 348153021 737261501 79840679 592073475 279691277 916672126 349496782 507812979 718034368 935507415 677303026 924592229 554054617 795406823 424733471 666812901 12540365 301636377 703255042 730799872 959107345 975116233 714938735 822371886 436178083 645252555 46431848 554016960 902008272 918318638 754272135 945697031 571515271 710797007 818340431 852053340 100663358 444133820 231187314 487129998 797466033 848876473 760100262 907815195 463243272 651223852 235204060 555222891 394209079 425280365 545402547 845832382 126340707 679406446 256783101 541445057 111114772 362799727 815165598 832699969 119436033 392789506 707874284 863031585 887353922 929733661 572033562 918302746 361996268 856278466 165247942 939432838 829404262 869813283 702015083 899272579 564292849 878720850 303111251 984531252 113358985 257637671 582740042 898990570 375790369 745743247 868760966 938946508 842050320 973565341 553918137 817672876 281948682 526435805 604498548 999815177 957217253 965197720 259353280 260248674 453217170 687014390 339822687 810450282 893629108 967254342 362804562 845711286 530285458 853983919 117806402 825066286 711990566 997167191 550188160 602105461 184726370 604304591 687437942 707060910 634613848 804927692 728483645 795164286 578143588 858180820 535963230 787096728 113630125 274773797 178962449 837368590 680725750 725585042 691442631 767907015 910067294 969890161 643187357 789717007 455776653 823134693 544964354 917610516 243962217 516310481 478448552 969508007 405014510 842186366 729844790 906273724 456252795 908345091 524706564 624062995 892988557 966964270 305232467 461631482 610079381 632597854 712228828 876588214 47474684 874059047 293865508 719801772 489324955 750434079 368272004 850837741 783797017 930078462 581495261 676245969 71547691 978859570 989905336 994511156 690777778 759810088 411481009 462279083 771192887 793516320 208826766 941302531 381700541 805441769 164490559 450695225 653322409 886899962 44821663 637841597 486220888 837297387 282312940 562992690 519022967 644707721 387253819 800882154 268686744 480577982 492484254 629955743 355698251 475647074 587437631 941655697 133495173 939104870 887086594 902810420 644451778 807941586 438620576 607815421 913427229 915815512 967399110 999092793 200019155 317056397 763426963 881579431 905077947 913815182 957407858 986391095 693697038 738848183 485107392 967057773 272076458 464967992 166982589 530543315 515059549 786356364 260247881 693246288 731614468 835339975 183135128 596712739 57681275 922570380 380738991 779265749 787462532 834226175 938407083 949813616 515341895 772932891 176970016 726312539 205877378 895740318 248495584 578760966 759740880 845696578 46350257 886156606 22670973 667130070 290257919 939650142 588243986 726630619 886482301 927639421 40899863 271738117 530359832 659315646 231689223 634266914 423567335 613738821 853825495 925389445 597066636 620753091 295846656 921669337 947848093 993010844 864411869 979560927 804030489 910421294 884049985 911368049 304901733 425543271 591507537 691151104 232443692 630040233 844440798 925405418 401335313 975768918 437283635 750296063 17157190 784100809 490953856 952454442 953394014 966043318 777206261 906680508 647057587 935341085 315931348 391851629 975204898 975912255 165967317 226915943 197221659 953242925 441610496 685022816 387855911 701494491 837359333 913581494 775624259 961991946 869250417 953463182 499539669 840503948 230640605 966666112 534891612 659450257 447168061 502595197 498519516 857313056 475672789 628771245 582338665 855432847 441878757 944371291 879449256 905030820 680863873 841228505 909369740 927028464 939966579 960751801 842533411 979043379 422534792 968254474 180637164 232557316 105844981 163365117 493004621 826732053 258526851 667172898 852951040 950721263 312550184 450851921 302735953 565806958 928627408 964436958 271900311 622160836 102807333 388009699 337962568 981770851 921056176 983996736 540584467 797411130 894706001 904180673 65564300 997142659 67486069 622183853 789384872 955664593 994624778 996361477 18899297 470520074 946243226 996424520 290934217 410171081 633564829 888587450 69379537 235971308 191466567 779594521 548518574 867742802 5174876 297350618 356932205 420755255 496297858 678687084 100868888 585525426 711904249 741956513 552867851 682414316 756368340 983706559 772452681 968220032 524884272 744830540 851909350 960407542 501286036 811364795 569918519 943436902 287363656 322897488 922741392 927701178 59988974 728938937 723184253 995997443 395094647 849742410 876606761 960587379 168688599 632220989 482704113 555256365 364586763 416914892 476140417 880889451 581299958 616421450 53119758 184046777 973942402 997896999 2428989 877803876 512216373 830045751 776244350 811110041 713304724 762870095 710693206 835969023 281884426 630094773 330211465 547784081 41928520 109593010 998834064 998886411 327383175 552339885 823080863 944174793 354688225 492686121 165357226 269094498 404071206 886151000 134950589 755955538 21598686 962081465 185523740 708011514 844909209 994361347 523264236 976052614 846023921 937346661 657439134 958334893 830505616 992074079 462322520 760967182 302941724 695926408 681854993 994744266 374368465 640836997 568566912 893435640 8423530 652501980 887214277 891406442 855857830 968621921 575025717 621855747 609754999 842669219 137722639 689156902 630272551 907930882 778533133 869158532 375838682 978097950 55955912 544448384 709987646 750843725 788308700 925146152 100078016 230723955 681271599 761077593 780549651 940602946 332638186 666070933 314176774 625243435 675043308 877141391 336277432 999857182 220900114 631328048 205486416 299521536 535365859 689315339 680516512 830113711 451200674 827229576 926206502 957052465 537813683 544143337 25030993 757755559 223091854 243686056 745368730 848841577 348790375 359502289 760739927 811424464 1257608 679066997 443525897 728207749 1703775 71816143 832422972 956849286 49585955 770963502 650385510 757151818 80861333 873288293 769444275 917384564 781820761 987452843 613655167 705119698 956075979 962820388 991957706 994331564 910022598 965760124 904492530 931277557 942581171 950851191 212723370 293001345 861954443 897708827 993015184 998481405 393954192 432844455 634175642 830512493 631581899 747209211 713122009 803055692 397363044 730752067 534898061 957910270 293879962 743739935 609721720 626975714 289617488 898447936 268220139 414177236 129843469 938750757 713410394 972523187 180945556 842995451 247973779 795325541 286500874 888153936 88514391 505649645 453771417 648862639 287282954 651210826 388952911 908650486 395717230 563105251 248179739 276829147 83762764 629663926 998233660 999447333 318500188 994456040 379932568 637067414 94967969 368456868 692033558 715545508 37779900 399469123 257678244 279464718 394405529 686038824 544042372 661032165 418516738 868725325 930077148 930688121 516432702 983540397 877287350 922697950 858360408 962725196 320519975 706698193 554466652 568799878 137991281 828462814 369428760 482107694 36784420 481904841 47298470 892747392 534471826 700396283 976165884 990162290 219401972 454206227 533155749 752297372 77456685 499891149 142265324 222562071 499756485 892467627 396589936 873239580 328502431 402506334 291721483 309838138 727596768 993555294 658567632 727865259 265636578 384205529 746643986 791174846 322519400 647236973 473639964 931628416 206826385 379533901 454413250 587215609 934809889 979677502 85735876 723607987 973380846 995798443 943651478 944423108 404375789 940349080 408642377 626232902 510752058 884329575 758744798 943909015 96441622 264855013 379011229 544128561 549961300 792509359 990078999 994774239 543326047 582934306 12038918 345533913 855471428 955702843 303271467 336196698 65499383 283271133 346457970 451634419 612479930 727499551 811516231 968334737 901935042 989753686 480131087 681999937 788714070 871157287 822817617 913286925 555956127 660755964 762951822 777526028 916335358 979318499 462444378 881131991 537788991 852267265 446344386 492714502 838298209 977901528 286858764 309533879 33816779 813888449 379072091 501661283 832202133 881234511 242623528 902249340 732738087 743626535 794937387 863420396 503246457 762397657 872922213 991743364 979450018 991341175 496816312 944407921 933132188 986927439 55468414 149828989 665222037 887194586 589401413 961224255 648394378 762362481 213617114 983486269 770247484 984265544 93079532 686644039 210822458 308243508 512760084 937773715 461266958 800043432 36200448 448068731 380568506 562539233 385728260 913400859 928532710 999118861 419956475 948732950 276736835 895594569 416896371 837186839 201833148 337789542 951931802 991095496 284098823 843356026 560132983 607029894 459756039 769452466 421129013 768749199 600534010 957737514 380565442 857005933 72748348 251146191 167264351 546653588 409055312 595244109 741760231 808914013 200296216 316925185 866706943 877810556 456999182 470518863 287269863 952345510 220759075 816615576 702925363 912521750 308736034 505614715 531206892 706302065 456129054 993650816 841944333 923600210 678486225 917721890 521201734 531835100 502631818 802617219 720670928 996849364 237985010 734518806 676596007 774863601 70812686 430842559 143556063 769797100 357749758 982462406 806954093 990951752 677587478 958432372 312333121 730760518 697249931 946874109 942751790 958390910 796968590 808741779 311843635 873783589 319373245 371234732 83856207 248551935 11158162 851575193 888001823 906344575 166460868 343408713 425609954 698832978 700846837 811499881 219894190 559219369 796576428 869189020 309638137 630147930 50965922 947220924 486286056 803792448 865047122 930921905 808731467 944740279 161247843 926644678 237287150 807990842 347186148 470332518 843717319 976175033 293009905 378355286 10655707 473512835 824122989 876540252 753294014 803083697 836102064 888325614 932734940 974701324 884375985 991885781 594744831 629633471 181756417 459573063 640041308 824462246 837622101 939903595 75257107 703107752 627779786 664180650 657897328 658102350 121061167 714500568 933854082 993484091 547890893 818496545 860094214 978106571 662468878 961686493 304883958 506404302 514958000 957284431 610092638 953510468 165429845 288912032 11160784 586636315 220802836 795487552 734820511 973401005 369034315 688496949 211731486 328528974 57010097 535481842 399509773 447578644 453264879 830285925 762450193 807871140 900401931 923576175 505630198 611627838 789621632 868716740 840838429 989700668 959874898 967540469 326529375 705307620 242633516 365125025 320714154 534776117 981160824 992247296 19950289 582994159 737412243 862787820 968795029 987726778 494527772 537487919 988175459 997098584 849067515 977820932 843083032 871107083 95965005 927704701 572971689 744088199 756834962 875389997 653288748 909343539 34412628 141207339 9504817 711611201 905900324 955978543 84720671 864742635 405389807 740910724 870456696 918575827 642797750 890931046 704486728 939416636 96820392 465493444 528806385 947371925 839510529 907136353 251637201 734685129 81991215 639688244 564829747 599519563 708212885 999073010 860144366 999685113 812259317 852764194 90467028 809450495 690681316 714811541 922193443 954029532 84460094 591431178 670449764 837295781 710688877 928797645 116030618 789721876 724650794 920598016 37343997 698143157 93881559 351856485 107402746 929659575 805440054 841301389 534032205 836707370 735964202 871086300 838859178 965094537 519643863 600128833 643774972 861627124 290348209 308447449 381062672 554026158 746044839 943869869 203218349 593495347 676693822 870471435 106971575 675870275 591649653 901681804 369748095 947603723 68168468 137585968 221037083 561323504 616326216 995857104 962479085 999579613 767454466 914970831 752395576 859920683 82560671 261237377 815474813 864449594 151656729 311686973 818912745 898006248 223024842 738608839 834612595 946021847 617408178 872886150 798766613 825615298 675026929 966036415 542617267 589920421 820939386 822991708 770956464 972462239 448949680 477708821 228727746 560758568 142123616 965746468 334562876 808745998 791291543 926020885 816163701 949531586 704621406 935243331 82928995 935046761 587378476 669126707 826320036 975847316 140916669 201902595 867953982 880607005 450294723 851157988 283237221 558172737 435686539 806471569 199236876 896508369 55741551 313526986 768959007 795451775 460785561 508026738 833308982 985985203 298863680 858676973 364430254 367380187 103905743 863366566 431382309 509855325 924028816 956019034 835402933 963818705 738566557 989710827 811226589 971176265 470988882 768607931 918200246 987417120 921693343 953030141 801209948 938304426 364711632 368867105 469908703 769164821 714508674 883635447 355000168 763112472 495425201 780750978 275958227 853009371 335755675 739074568 986165619 990802422 780404029 883169417 441705371 554611822 280820142 283320785 829091876 892954076 23085557 648037058 265632945 553852494 197987370 201630866 502567371 930170951 62696326 622668823 958220777 973850621 975733469 976658946 483423935 494022824 969194331 998302725 678484108 954533111 35164957 418525240 902385311 990431571 237487734 588682425 181616710 220936958 27341917 892400831 545357890 652721464 62101197 207167373 388034865 479604024 38599282 135196719 891710251 985959262 517488760 760617631 183398077 509095775 413509414 546441329 777619417 819302303 831337258 868546940 959472833 964976863 543050484 717294807 51095638 863527502 193252867 909310799 521473347 891401489 127110683 154163125 80488078 288697590 913915419 985093415 257308026 671305491 424089560 970082985 708685732 884091424 950340643 994289217 730916729 803741096 430280413 821148454 307512194 397302765 772729879 980997315 726490062 910644628 71186498 223840467 883113040 959763665 972078530 981763503 115149194 468909261 249493347 673750478 645917694 667132152 427864277 453766105 437742797 555095899 328747686 483595459 745853957 887976277 356585312 857345269 718321206 941245960 95589417 183141052 281683291 313268027 109779818 894530098 491228257 639740724 361484508 854297960 939641517 978652031 702838699 790962080 350233760 599728578 687142332 977734140 860329325 923918511 589903082 772761427 219022500 884699057 309859832 475533307 428401951 810983175 316943411 664260390 866361167 933363835 370607110 619419166 390644811 899169185 534168738 590143696 383537626 613534502 493895928 631854525 86819945 101987462 512798863 515606713 545441594 593171674 828283122 839569255 213150168 995620804 506451191 624355033 741469548 885142012 798800950 973705204 694997392 861003311 535212825 700800566 849295327 956157451 135440936 201532293 186601713 612770869 440035180 771538606 969418251 993950710 192489751 546914830 451273405 965598627 191970071 620684931 922439348 980306090 984267272 990637128 771848856 789241370 469412773 745735701 771957962 983914926 809843918 886058918 687923813 850487233 704604739 876035824 982571272 993707791 452242549 477774906 103837736 754012570 447878927 824604488 256915278 615460889 955762003 964150878 967038041 992043794 684769128 865861229 700475251 793927969 605588653 818527302 163871291 407651881 252542737 633170078 189130803 699805059 612052619 973653522 308045727 982162278 602473852 982429035 629448451 733388959 676924970 741835501 951954816 996206354 253996631 324655133 257720310 583556083 941919824 995035944 697929737 994245128 139815700 270027956 716344229 896177226 750485153 944721868 118753430 706171560 615678042 951972604 109692007 806147271 32141464 41793626 182203692 964457439 143463793 513295813 880639639 958881631 596609171 613779987 272534709 491291373 774509729 934741497 783980047 885308343 644792083 704395639 359601028 839358385 987283505 996012480 868448372 917404260 691510366 789312885 664547319 678364677 757336706 835484081 601729893 645083086 950511098 967859343 532545848 830240162 659366341 671393360 767501878 898099778 374497663 550389192 755310303 999103424 553905005 619026783 551933284 719878770 426129099 570424823 276730286 706352454 318784393 966666366 974119557 996772760 782283275 791151292 47031791 240964824 366827902 977289616 541697844 884428446 627111003 855841726 750844632 888456547 230915593 344677461 877650794 964665582 252552410 960297379 51624534 617610745 364617278 833756971 53253929 116577810 212694578 339061036 276606441 737252367 147930674 744020538 505328688 963565539 37551843 376271369 607766497 959978542 665071245 778445606 284260862 581302824 578389749 581369528 387081449 870314551 437237484 688124916 255947341 485447176 454240576 763531121 792748688 870176972 858868065 929023566 633859098 906859854 920054663 960837802 179976511 864563634 185850381 555090891 178207949 919334129 503714361 507185459 101290133 634982407 571087965 834210650 405544153 979170215 478545399 481236207 26499212 94363054 276321162 935294441 290246640 597270323 154935571 562590221 184667467 204850744 359034390 716364951 868367778 909652081 437786097 507778518 258360943 929328915 138036478 359083854 237314033 445855275 916812044 935026253 210975572 535268314 575312943 871590030 538187458 603113437 832437305 857625017 54840874 393915506 14973048 361666383 469200122 750743887 95322570 253043103 325375510 954958850 1710878 959460916 688998532 729073338 540846100 731760464 210367206 855673093 444434811 928254120 729157144 749524630 527924428 685880188 964742335 985266088 459855852 665669254 646112913 802996534 981144198 985634464 62046795 928887981 894982772 935678642 756784639 910548140 765834408 785564468 633066912 874119946 532677660 662091241 420434587 496862564 598350912 883522550 530140787 580868873 443458533 778479994 8928608 200534986 640660716 647545754 454247108 529279302 468437674 541941966 650167276 675191197 357286768 707897155 555923407 795775986 163286948 679211405 653226439 956628682 50268456 653880586 947398990 983670709 527136730 933779240 147690477 588526939 540792048 805809840 687840560 784014473 556826920 719192357 534718521 746995049 534077427 565518503 559925987 945201745 7722942 367930844 904938629 973421066 575463060 890979644 969950828 982464993 630252932 654945122 282337752 539960290 406297925 567344898 303155190 775596343 124660902 411269698 513392784 566753585 937898184 943575941 321553189 363500485 272028632 794639021 805075827 826002232 1171359 865438916 16606616 255932815 98469591 803891620 772978175 963584180 140272460 917013843 651187526 716045524 343442225 709337675 833144620 912664577 332989085 377841650 353609788 817738513 349976169 467826344 335513872 704630504 641713420 997865720 853144464 858126882 775429715 849713004 557462222 574179999 141852356 407703357 216596533 293474663 892734249 904618479 618321200 683185318 44958099 413478161 884199451 941562751 884115798 958593928 457796945 561636837 490009277 502810149 913155607 958463252 884561655 939895331 222232890 849061656 125154458 970221549 233882267 417642362 158092923 627374828 667901254 806935165 694451946 781623310 648395920 927919827 342887092 997407737 961062166 982225707 726257523 997064608 403264716 663583570 561916207 596259969 180209677 563221497 842709543 891087922 111598512 123858035 731486465 844176461 331863110 453752341 689933023 787104757 890575115 913260199 120319791 686018489 78033409 402218494 795327829 935878990 390664989 679360299 45246151 207758061 638187752 986249200 74892426 650221294 550749127 695051117 829084465 977478611 92234750 307768384 169087383 948199502 835652852 904845083 283260545 289512473 526783880 971697408 753096711 766604272 977402740 981799008 362296672 930042924 348968626 844308162 798354190 952431362 307011707 888866870 603245939 903631564 628276119 781836337 267440720 288813749 894019193 912915045 471248584 880650158 687837788 977364669 346569837 395383876 93929404 377955776 45639176 888620538 924050503 967398772 442601120 465453957 111592940 649088588 807566481 953251288 438948311 443604374 73020296 655071565 936577911 954424887 248037342 690829677 351455555 946720944 208151681 769078766 598862432 660509136 324988941 845699469 530416103 761968018 897830438 994360270 38770433 257343308 463126546 803400912 438136857 579304180 699042751 803527159 651883290 807107160 805976352 947883543 588850417 621946067 720838443 821164108 475004151 666037984 928957123 961026300 498470174 667214639 528898679 973256412 756123352 838439403 96441012 768868981 709815695 879828917 369915867 741021805 888949548 945025890 728174545 792477428 59590818 380521176 480824831 847516584 415039353 632061087 251049633 725739157 502444725 647604159 601776043 998753255 384265003 766236590 21369441 814435230 548957817 820599363 664361197 823993261 436398019 953547049 656316430 994889796 539006318 791341465 489977464 898268931 336903236 639577332 131270446 257808488 160869398 547011102 345149735 826826218 788698583 796288126 809683419 881159825 595069653 844953385 547086435 815753323 111369006 351815968 451911093 725037816 159816634 640759270 494919743 717236994 880493805 957908656 965641897 988393972 618057129 905841597 46182262 65754082 260895359 374779585 149896406 509116233 830204109 988740650 977671610 980859465 834884466 933147314 257756935 384295309 212678319 812243480 659028622 840568527 281404084 691546414 389076847 499779717 515076783 739972971 770219994 850564969 723219874 792608715 352527044 630202876 794679981 931327895 188910794 698479084 300578515 534776474 491399424 773399091 132728000 489185024 505827690 750410643 223545156 741680114 304148930 309850377 836336191 941668903 422719644 558038351 469197802 658668054 302869423 983783296 703860815 712015987 601383775 806969928 566630461 592694032 212480763 457653596 262327908 432582294 564505054 700147759 168468230 500431950 15896326 506705617 905735798 932415261 352300599 994508661 541274178 776362820 977843474 996287429 149320066 387776819 130865638 770434271 753159764 819118665 178408204 491727770 962943546 967459265 546997796 820435656 176871575 189444623 538694444 696630802 647465663 743807245 685490084 791530277 587072 218614982 24627658 40014986 520153091 560387994 265397067 831806609 792423302 911889547 376111572 922431619 379181149 590654643 740364945 876908632 814392698 991644954 647943597 957452432 398056324 823546998 514759936 674442303 397464103 911421276 452629029 783527743 249461868 257110929 811402381 877215003 931375530 970051857 620582127 963698036 180272292 819178882 22601466 553244282 183577828 581432498 373053341 888086461 683503415 887816640 168047568 544570232 905996738 990263856 537490655 819706191 396115536 564649080 140025361 198499832 61756979 110354695 997802568 999463401 761946268 919756024 626893397 988672158 726216115 800476602 83869879 192043798 128045705 377492878 441956573 877556368 469164529 621201433 355606228 834604950 981507262 992346482 212890609 260193030 916415377 939523546 967719170 995283072 350281863 625830563 40941753 244350708 864327040 958854509 810395742 957496824 973470141 982056896 608887052 848039951 586763402 973877072 385847221 410506153 921842025 990921983 786368905 802941887 108521644 274897777 456120640 899985906 150181568 988430544 691412349 817700720 461256710 532587848 307229142 318570440 515932754 810911787 991301959 995400923 496377919 878418333 653569354 786749475 119264063 202320512 588429036 943816015 790235957 980729213 202423857 623311495 603738294 959410485 599825808 748266043 407526630 895895930 912183718 977011812 992378455 994301413 724280727 968052992 800695099 897362828 257496863 740416510 290471191 508936341 848851008 874969247 879478880 972406976 229770184 580587319 931397221 989045441 750972633 860796341 438642313 568156324 431212970 914522595 585681224 814665506 775358735 791464632 567153158 730561077 368048852 529225079 237289400 808371696 789649875 966385577 818850695 902524862 44071829 681667278 812385410 852954397 606211907 758174257 805437938 933993009 834517870 909065652 354049285 646540323 428633067 988662639 549551792 849303060 793315804 858779387 398400468 751819768 378216855 926695764 5590865 799045505 845649420 971223706 141948918 681150061 465561386 763860081 777468223 781974151 503659292 546053864 138955501 466879541 168078668 360833518 541102507 880953475 985682000 998370278 149367184 257118623 675506352 953412086 373717375 567452310 110546515 596879301 455893152 512481488 448147059 648821888 737264784 798138966 286633535 478322676 98452209 242567978 362155726 764693449 174345936 717571937 839118642 917549799 469415477 536741034 689860325 988698013 37222096 43788431 45069201 974443682 307662033 338363072 373089329 840793129 260015455 601528156 192402188 305010256 386827283 924182054 478678004 518870469 268600122 670043023 775595846 965531096 907633860 973232039 926520711 975264204 240310926 409539507 480640876 733164756 229325808 477712450 996227238 997519718 458184663 597411545 429049456 657729600 358410608 378610541 267857345 663981444 934541860 946059793 515423150 545350955 865002597 934817148 571854113 762680136 979367927 991408104 485908511 972798228 33404640 654031722 909251417 962920612 833825080 841257842 242399833 547930759 27506408 621289498 536655446 906231534 56325514 663353027 29919792 260257994 984011840 997437559 26066441 509499767 275508738 709768164 159129662 540431187 507720440 524193959 709558763 973216214 792150475 846916102 209695329 577645802 32488255 709762784 99208723 946532725 309580986 578923335 197007738 766911427 332711734 933823517 980099103 991585207 664751852 722185768 376651770 750885575 29123785 119679569 172005244 603715661 762240042 895828062 863910495 935346725 543838973 963487963 794536250 861773149 191140593 649296630 951621557 954949772 709738178 844922667 967225411 984491311 548948744 833296257 814668977 931963777 948334283 988259131 200749132 216221284 528082992 795362938 651366748 698708564 555194321 633543450 529158618 751273140 315129238 473860987 853703667 896558828 690303324 988097282 438705907 535300493 907131172 982987076 924973089 984782490 519534159 540775573 733741933 844948916 904773837 995653381 986365343 989539626 941695699 991942055 520366758 552433795 115693954 777984711 629913329 685578607 992872299 994463151 34638266 111056437 764246193 960033496 467108988 499959503 702695625 775055631 507559384 799482007 957650869 999629744 545094746 853205914 638079211 799084162 770960947 943831330 119686900 290722242 341510214 972617656 374847687 797584584 226716068 470656311 433729425 675813030 983580243 988864129 706465620 772410816 940226736 953075603 941295955 951829603 791229188 827048385 226518445 830684157 298425713 729659572 280575610 471492403 168919861 545523407 8449372 185191851 673642968 689057537 297280632 379696511 267630588 405645541 13508272 732291108 852297126 904844490 287731092 651993088 317073005 689656119 833056661 849255751 931347381 985671258 845742709 995859870 662178042 890014255 842689578 876743664 548547076 900230514 863730071 944332831 675794003 783303947 381480477 635467296 592690314 809662106 378292604 656638747 485412605 669478949 331376868 439118714 34367588 887094153 829342970 968000574 587920003 894277903 837563187 911111824 340085442 840413556 594967521 671667982 468850760 930400934 969515074 995287008 164319672 478864786 3164385 168511145 892896611 906520479 945242205 979714877 186845074 189646576 768781626 774151116 543486686 937016192 821460940 886214540 997747730 999489188 581748632 883950409 773445960 956776783 673068713 701879438 867759761 954924252 337361126 748540288 964075308 964766240 486637230 975261054 820915719 943391005 651789951 865510461 525159338 558151697 645840885 751237612 393681637 946172600 922233168 973748497 818080415 998465112 524502141 634280763 909709395 991308177 388007634 897273615 403498005 684931273 508889433 751750923 553799658 852899907 827467610 896476784 22395987 374036762 109985548 553153548 474551155 887666694 533024439 671817730 337985703 864237698 564380784 628934108 585119219 860065254 522872264 620148950 590651798 917518668 69312208 576567262 604041843 984821793 37247621 696790601 182214929 961208867 183826190 536912351 504018611 743917359 421758690 860938108 329185864 732223373 141818478 351388636 456116830 713014055 419820572 652236106 243121436 465071865 490526742 518185594 756568924 828940225 494606595 691117166 559073636 712581920 760957147 831379248 604906031 811143279 641760710 735427896 296282697 652557839 126966284 194894865 539923121 706290801 809569171 918083137 960259786 980409645 820708098 885860693 11072602 476014989 819365066 890667228 499947994 699426179 283275010 345559176 222441276 433598388 140689415 246510821 961380173 999274512 953931525 983911509 792742134 847402532 80531455 646935769 441535306 995284552 867202237 990474852 536212321 873554859 111812013 180667273 884601415 938309869 129401438 274566426 460899646 559097921 37107988 384241006 110469490 377289387 398762329 929338493 233703279 734572266 594633734 616134024 404910462 892853814 456604427 958839603 545797977 829060283 257401928 406123059 601648066 919556459 470122952 888686780 934259565 975226307 839197968 950480418 507341411 935871631 743977602 950367274 653893870 865800590 183740612 652118735 388494527 756914302 24222478 255450581 478381230 867601917 691632499 796846075 912645812 961052365 492305323 988584238 97735509 371083100 571675755 812229363 625508161 953719136 689072880 906490789 854216064 964344073 127164458 934640628 130287034 448457356 939678931 949092404 735134278 782028393 325342005 848729566 227684558 517224070 251356649 432959329 158774470 377124989 284898731 759706023 590601068 795579036 721243567 931895799 555256443 789637690 951098503 958789842 654103803 686518709 197551245 218566611 867772050 965083033 414825061 911604638 653472661 755115705 679932034 703651313 797966153 969177801 799504676 889954185 177996627 838497238 84584575 297515479 169258873 619254323 753255328 855526801 290546535 443468507 930493576 936692397 164279672 892488706 955321691 995893739 534454201 703969972 268983356 637395037 888275634 914799337 14860536 977370902 537591690 768351857 988486363 999841086 196984625 858126295 153500925 745979673 873023939 883715873 153959261 578334520 249133252 963175968 927216541 992407715 140209343 306820107 744200452 751536404 214626230 629589991 157391353 996242048 20314457 464656088 404304108 419244389 844109183 868332276 837956078 949551929 409937318 551110554 425809164 682496562 126804256 756761555 215222327 407867937 546387433 931650322 109142577 800644743 852458785 882152507 188910298 832440903 322605463 352432570 622872699 904788101 677655791 974657919 567101327 763358952 468928018 636785471 274153742 918385887 727510084 905622329 736692272 996465706 756694739 867382279 915639980 944962918 500670071 998406803 698129125 849577291 587486897 910428586 115523993 650165530 508490095 719119535 492231923 878912438 545505687 873471427 918355257 962085855 6478007 643459910 506963936 759621099 22649645 179294359 182768705 346946718 271910737 310095449 243348225 748855881 267998433 664837880 804171668 856536656 379157980 423573991 639501150 778001367 880975010 956640853 502194597 613030874 894722569 965795243 40540005 73244156 928000558 961954877 504091571 771940875 869838532 922413691 393519488 607270326 356724213 928776791 571538825 859938593 28410504 529879636 273262422 633345834 158697062 961490054 256903349 287452546 837897641 998861781 615098843 944968632 637791942 968539680 94627332 670748947 625414511 657267309 212880091 537737409 834862114 837122488 161092610 664572261 316047916 982154443 717094375 748168406 115202333 629835851 492880148 950402990 370439290 735352393 436586106 495749511 971961754 978099143 8749764 187873107 368428410 680154646 444589514 495806403 764233806 975886862 169748225 377722897 851110950 924687864 675802838 892823229 353271873 774108149 250164417 419537998 157678824 251604144 430673587 633435909 536523779 854320347 224961034 749197803 328851495 829727880 135350990 982006479 738956170 752738750 339235399 691771112 587072014 788957950 963592557 967664509 523103665 743432690 508864735 938106167 189891296 846917076 452514954 638596752 390821256 937044840 87945534 890284533 199036413 433827914 914231626 951318756 809665887 842035707 676499858 847876334 783873549 794709634 413946608 474030121 659788050 723779076 819934329 844135490 748128782 938164216 826512752 868526304 449708862 816952197 683048129 912198500 950452949 984246129 9033938 281875963 94939346 317412487 29596196 816116744 507322211 646748813 579480878 789845896 630310583 955081819 944483846 962616525 458296521 954160393 300230740 432606957 932577668 956407595 684674408 904114663 727727198 786846009 353445959 869523634 239110682 546939710 27228268 161522395 300019815 677624099 576957596 861448973 697678898 879435247 440533577 828087195 834096028 895145379 830106466 963382505 611953154 683847322 14358362 803010690 674948029 707608230 103100240 105382013 649095419 810555687 701501828 961963383 512671392 919169722 709243003 756151939 919663871 990576531 430743395 548839890 432640240 603455308 499383889 678819547 356572047 649253566 182743419 655583634 990415921 994926546 436380822 633430270 259068365 912386117 377338868 658897255 77026242 453482647 295453100 770689519 774054167 941473134 601642041 962634529 260923943 770363839 462164621 482973488 216389787 506557322 111369187 316194269 474906883 498836510 143146325 190768851 566899398 648187227 263482956 594861702 363846843 991446072 463704697 670998105 154388598 931675859 510941172 787408415 216408202 695151800 981895779 999979922 400624023 451757027 14320038 660307839 144505209 842253247 759767124 998196743 145368730 642556377 220928446 946960006 101126860 261239762 949934203 960657572 912194010 924895489 671810761 978911216 620675150 755343967 403705484 972284628 289551757 508943200 173681807 725897440 980147773 987534090 899830166 967673336 64439283 76175977 984573422 988848402 328965132 682728823 684144185 876622050 146068271 712185822 901336613 926712039 218581737 688009118 327512914 602362366 861613705 956401709 524311386 739125139 633707125 738458435 281711543 605448308 263101810 422881989 776336540 866489456 805616333 904234380 605534242 696615235 210032925 492783809 479505656 660111910 393637763 910746818 56326775 364602745 805681395 912715146 929661394 988173207 247650491 859197960 475160096 677774559 71582130 182375301 615030387 790956815 453742492 567411513 705902419 931111956 506773341 728985918 944862984 951790412 268812104 461079097 403380035 449830122 271433014 919040474 304514678 938632461 244043874 727286524 964702228 988393012 86631654 263775786 589763698 621312328 913523213 945166110 188256383 595690643 573623717 719494964 185267540 306444117 383130580 443965679 713851623 939657084 848538305 988716376 709722918 826244876 544246365 955156545 341205133 933232644 845247780 941723905 69956180 413683643 68192952 916795347 778523325 884587870 689954582 800847120 586001484 948605005 548814326 733883165 47087639 242017368 523434905 694944724 295559114 890164677 279609288 369752068 96482869 593862061 758033204 783699343 535745087 761404476 9120325 328185432 767507387 808895611 65369560 879193834 212697557 606139790 582395450 740270925 683704128 855875304 90944038 979502284 864430832 877152663 460461877 610963053 748587567 928877140 178146108 629669369 929582937 930433049 578951712 730042718 766991216 912761743 123105263 554134925 355713453 698846869 457248424 622774525 801773151 910385444 936769210 947951425 784212102 891942823 531160921 659423104 527482690 615639833 775146239 792636459 764203913 946235606 417441485 765822642 501537335 849712642 730857995 794410443 113340628 948368799 911587031 928598484 338839225 599855769 143120847 395581144 939323187 968468116 23218122 858053297 50321357 134792532 185286435 201495708 562325451 567975447 265307423 276856231 176534252 455890133 179252999 421758514 134191355 327141289 317875980 968362803 517309455 603498386 863610493 965539340 517946807 585005323 810944402 920013349 37856419 702982219 24398279 541199825 462001144 496125415 879015097 985984553 275651694 895984333 135574157 711074703 259999640 663920346 250431036 492809937 550545217 717338138 73439580 668391693 230775693 242837033 418535301 479781922 664458473 993735703 633825831 994697486 39272075 938787412 936616467 980654579 544382777 665425076 882912192 944818222 918076827 927796131 649288369 773023157 289522386 932186951 248056775 872923411 792577697 834105231 751692096 961567733 277271816 390225330 182435571 492447847 770323854 975868066 157633754 908594393 534454642 884143925 294645437 623489115 974063846 983545351 376406537 697878921 43999450 325570433 569251647 770207965 985333831 996117950 257666746 935069109 537225777 608844096 337487335 786824045 255397411 433452712 644828592 990889014 223177236 522096325 589973340 877611455 662610918 935460791 379984337 911079898 203246956 389603433 363807424 845503865 738587177 909602655 176347363 893436456 519792522 597104843 125273498 712515970 354089723 406418657 605177698 772485688 553147104 847710475 642047377 680979556 49782284 248438817 430168404 571943193 34444846 956820294 40398219 45837865 300693053 541404965 361986682 745280505 401749687 918204572 7457552 861491059 979835560 993779301 881913315 907397092 197384752 952587246 556397397 700592747 531231 388618783 203034989 604196184 189403637 427398721 440151629 510214276 498214565 779289814 992648229 997828887 631119424 665936229 182255566 534231898 932967802 994850291 774332074 889127417 852901523 886857744 466762883 647376570 872281774 918117262 53668479 140126128 702430053 783860689 560926349 961453503 778245776 936280911 942410999 947553847 77639513 932235877 783223300 863444719 162595180 659132011 536699394 564159611 95832554 112060704 406046268 892805505 765241345 974107658 157265712 162772028 434586794 861477568 372788355 803868380 184093148 274553716 140940872 883000301 807274077 950120532 197650763 610245980 215845740 393533674 962875871 970289378 428219073 545305580 318433748 416412603 397048068 582652991 34225426 928125774 686049801 858576409 953865063 987774025 681497898 836335845 659477173 872968177 502235765 685599601 100536873 987088289 268767163 445703812 159046755 760075912 325697937 603598711 251703760 830498756 736474285 818012014 35344682 327293242 658343070 722094351 710234734 743773395 674103349 696112865 330647518 550187686 741560036 975583933 552944615 922039893 434980098 533154507 207269443 902846364 886149137 959359947 142710267 730546803 247307208 493373310 997268112 998939904 977710297 980464593 141827335 610211235 146461344 570706501 283052484 652463158 730339849 844709675 705803 743370618 380902816 858960549 162586625 833331659 314116272 456828950 511390512 932327574 824235577 861777894 605203841 615016489 901292403 954493218 630440300 735807982 169904314 801623998 167438828 341998119 410557965 428303315 646781313 673393842 817744370 933759066 669722165 922080751 783423279 979400887 582389666 656742787 257613974 492808301 961584016 962394235 743571624 887455546 870008391 971982171 992788120 998603100 171075557 242757559 965351876 983723386 630298642 850349960 969701061 987373548 609586004 698063822 963808516 985638689 433230424 855299167 535470185 919332761 274360661 949650798 571542555 866537441 93646012 739236043 426681639 789877267 814734534 884878041 53569009 811447598 885107772 970220578 807131933 888503593 53464484 661135521 885737095 906300891 258415615 503964777 508311057 863808074 589811907 794134369 379291610 384879044 628807627 642235787 290040058 637577120 743618511 789669773 113289214 273920374 213470425 428099763 295276891 797887697 249230747 359938088 361718771 616143715 81140321 151746192 6092609 774966838 229713318 949959051 55095258 583226644 602731051 719566506 109532771 792614378 74050722 948221737 193489441 786603150 600179405 824535033 619830894 947180422 79974856 383791012 955626485 983879794 319672270 819712818 251658836 637870764 2655821 162136607 11377994 701669068 188651197 448360559 363540400 814152301 504707168 985188706 649900589 848673209 658984503 874612938 493797666 982177410 307638016 747373567 308782029 624560775 471725637 886482317 876218121 905912992 6249686 937382674 1085608 493907173 159853556 453315102 931456250 944672985 746760208 806689651 640561113 743137875 946445122 988603994 830578277 923174559 980458109 988149866 141993411 389633026 876276153 941211379 265323061 727000853 75783485 131506525 509250537 932064569 512899202 567305949 203680068 408679840 604213103 726408321 496681601 595193648 249690443 430195619 854601014 954408657 517224354 673971763 474481630 913918046 745611119 979083782 306285297 611528538 644902648 921152345 91375713 717150233 950237063 952924485 272383634 836331284 401195229 428330475 469509031 506447872 570555001 975734979 559249218 706170873 692067244 859851952 401794466 407874230 356524368 897915318 99621381 560598815 570067352 993227604 753099562 954099823 843212110 890884920 692142554 935879178 79799635 341804325 623712758 971116145 571503872 719623818 640797015 853860975 456081550 574317604 991679479 992714388 986759139 988331531 678463093 993559739 123689804 214918366 982887812 999045832 558142916 695754121 34146589 289094225 646461005 744265003 958060631 997223406 450999368 680512028 853333838 902831451 291161125 874120200 256301252 510022879 497875935 737868672 69555676 249348204 683500068 887084852 432848246 954065019 611016035 734776147 351057872 600314820 718253637 972466610 146807936 597681095 686305628 990548074 253137482 758872043 143052559 564047045 639176577 717295176 288536234 476305654 678877702 967199442 364785615 905871070 89820837 790655889 386157734 771778066 989830657 994663474 492905751 570014105 31222583 644754553 439889866 848047431 692516243 846673847 612311671 969764504 989861675 999453592 602192812 833727667 647018765 792483472 871235696 933167887 979980125 984017356 729556655 776938225 196723532 337001085 95386150 790818125 787700429 820703417 183347710 463323129 732156008 830438650 711350184 817784463 396985309 661640278 379400876 970710327 837032211 878699088 72016466 78586521 323170711 720959440 724473935 944213636 252012097 652043041 816627941 896346720 566106345 842053653 225464705 527902184 922778626 962707197 600186535 848503644 393975897 669722870 880221385 982962140 136842541 900303161 806635211 852660957 336269320 839582613 134561966 807567464 707031985 847321526 139114866 580320134 542118853 850961480 289596878 805662538 748006857 865125628 554710404 746793159 319542096 453265599 876368205 966339837 446377424 514088303 601967225 917150644 663828581 744735037 7673998 681007846 641848112 703941969 936475174 978078309 818551261 913259307 218559474 527633262 315515199 661884018 825737475 950930116 991773242 997074643 94218060 963660296 719129848 732170046 852787093 884928159 135170584 145591256 1587804 421582649 560336982 579771368 125270794 910993026 266501815 399441377 626168755 841538530 934248104 946260901 569787212 796333821 106510768 306851873 771350128 924696509 415285900 871686616 912526688 959447169 100027523 787539525 213906332 731513841 716501915 860030986 845320349 947785561 583171741 692232471 378446222 833883722 404323295 425242933 99678833 774471808 315153815 998939842 858462121 951227332 314405801 358654318 176380284 808364756 574891043 994064850 353212628 933788703 785434905 929254916 821653116 939808775 420616641 665584987 747295518 833545205 644443907 837022291 590978150 748729283 321399853 989494363 910839390 929568734 166636618 639026955 885804912 958263608 884197515 940807989 468113630 772608920 70113364 825962771 331327039 549284462 672596829 777225711 289021126 999861130 891919199 937103686 898192493 979257209 675216631 847672757 386282926 965856494 618367238 772769913 785315581 801462920 176600853 729818679 812320546 948062841 154536607 407529185 361497798 943284866 670505463 989368592 955203062 979359018 438832857 686101798 472639452 846860075 346926812 518559882 531247847 625475780 790571601 794223372 811968278 952234459 207124439 264094377 198682478 320351547 116195135 448017652 865639059 908203123 695858547 812485408 311682997 882888282 819612279 887454302 835789234 958789399 186028791 652434436 934047199 940268252 598045600 991084006 338337848 549109395 48491123 873865286 268600735 683147317 207955081 577656807 82001594 529147567 939977123 974677094 460433402 494381714 536289268 574945867 894962752 938080269 436725800 469439822 370002736 888599347 155634416 898437378 456453442 742467815 65286154 93734059 674254676 717739248 586667280 844535154 319435691 666188335 290931055 519487222 907674914 934588190 109550692 429597357 520578239 885994364 922347715 967569804 352479262 427683821 970586576 986695844 943457691 971367799 428651931 823184536 193826098 238201900 44207085 177214104 303767600 634367310 579672585 944726119 54981516 976487397 947370914 958173416 721715699 803281142 225402908 452279443 750253492 833494856 893016539 933309252 662741490 720700115 161339723 615462280 57370470 186238532 462461291 550321121 336911665 653699676 726860594 842680372 839655808 934308697 839966088 886002809 640795680 727365047 980855918 994364813 166397834 803378671 530187516 846894960 754110689 871027804 924671620 961270060 329071457 592953786 955625574 976363533 883880289 978372140 398842479 552628598 505107560 647237049 769069027 845902435 160461741 187358430 248912368 285342162 273114537 675196032 699199729 824306290 106479132 537396803 803761099 986823441 419703080 819934021 243247265 763991798 306044614 454928047 798111530 841053199 25793876 356616893 187474998 921017992 747901066 825875041 440566224 892018118 621777509 727884031 419670024 525918408 789662039 838655349 428672666 844003397 175714736 413400702 402984332 528576798 336836391 814595508 215663017 706304263 452303203 731682609 683772021 979652027 326749575 821749419 653676468 857099639 736224463 976225611 952502555 983787096 882024880 986190328 138849552 710055809 199785252 229722995 48212154 522276756 848373675 883627164 569822220 593203091 312985778 818922635 942732566 965311638 557833823 656503611 521329198 633254778 323893441 822908036 388921749 466565017 244908229 301375773 18924831 263398682 659164258 927026378 141670135 433964645 806056664 851267107 925948642 928746504 42144156 265371023 942146140 982674307 372821631 843774909 719487944 934560133 563302192 726764401 557530831 801466979 770944179 998453492 418084139 687364864 614349905 777849641 106786213 405197315 932701572 973753277 979581945 983947204 118305771 513292102 439781755 617455495 694886866 993861633 175450576 679911383 507289244 852276487 699952148 812675960 861379468 910882396 862607038 935118737 1341866 752714052 829502786 915311021 892834875 938120076 142213093 648919000 328804129 456030782 395706043 979572966 306009212 330548409 449665421 763997822 312930477 348495932 777585044 977823348 249921831 884969742 445790729 620961139 471627351 609799089 496542317 622660142 136361435 527852456 61147427 868188262 561928102 971999679 296836630 430376716 215197706 925723419 81420898 331570634 43155051 835667126 483944283 597799376 182190191 401903866 22756031 235466117 446953545 473556476 588889630 605038420 483832853 637769778 672383635 722480590 800157584 951151004 589459140 714777233 762579014 774170290 428760135 446543660 868956246 890839231 296755332 674259456 730129975 752577433 609340892 711013511 761883958 934875317 336246416 468167628 697204538 984126610 19252395 991065940 703902883 850618223 494770563 790642404 769380454 773893722 340621230 975224186 864979120 954424392 874958439 876707099 780175101 932692158 446824075 971518337 204102634 721614887 932479970 945974241 976207200 991461600 342182110 582061071 482484119 958950034 609973018 968746646 591467317 822815546 512554640 735005950 965102864 990913359 227992911 873906030 736237366 885487732 935416302 967216905 899558419 986664039 870263272 996234374 869662102 885464902 264097778 873869246 406163479 927466650 23723902 568226169 518101246 904907114 630983947 972271340 86331049 348960330 178835821 751484941 288600065 875713982 82063910 366151226 223882339 416221549 677329870 811453453 887640865 989050264 978203487 984227799 304235448 355064358 34418707 956360087 95438493 127476182 546911977 735338119 537472604 977061882 910809903 937430360 61312369 90166285 29926304 838510335 416433031 707076937 496248774 776281174 453964632 706814224 777051669 849959675 953763622 970888793 731529142 996917428 33003719 354090736 555488707 923266990 192284253 834936815 850443820 879000405 465463849 769104108 239008614 453717075 994654789 996438879 510071432 983207703 369774911 492741180 555595143 821398528 529655441 657922880 419920567 439627460 598092220 700907819 235093495 288833355 430677862 995793726 729878178 905844210 758065064 816586274 646442966 731619070 689325459 769160589 667973625 777741039 599416577 839727763 55571108 165576205 100292693 779065854 184049353 195133606 876798890 932164289 22624453 823041471 707732446 974893104 45394651 749915237 172391797 546256021 65007351 524389001 614272262 953206741 309551439 744025968 266612885 779737932 648590651 735046700 542129342 722151233 388521550 803797498 692683614 870385890 347471244 594382461 1349736 325186749 557341858 700872567 202990013 975085369 273795392 896779522 699527933 939983355 278071598 400433253 534934254 751036254 600102400 784250490 75252100 358659935 897324412 966741838 188134135 627788585 350888501 554661865 603583222 818453732 115004626 601668938 120701671 381440247 19792736 236665484 662956780 893346784 334343071 825801917 718623439 901305050 689263408 869637256 476291185 504327463 784705132 982982079 891364975 943939619 985722528 988080123 767533166 823647359 987516187 992235857 56691248 957138267 737248272 932666298 579348544 828157178 346873206 669494920 833990221 940561783 509132968 783540654 120200463 416019414 745384555 822421280 577673706 790288297 395868454 864682054 489868634 949726999 36353823 220438827 867986442 946348559 879140833 901996956 198645517 623970005 194695409 271970681 485232317 993412433 436617189 566139169 577996689 830444005 674275843 741035045 214445620 217627868 627970583 748167929 905749921 920707941 17807812 931621105 456822320 784322268 967521192 995670088 861975779 932848165 844155411 974930807 434207780 579704597 914752887 952745425 64661478 735603693 140436071 953778911 32992394 101150887 665899489 942969202 448251161 923732228 500048908 668146953 751873444 808941393 56275552 987687777 255627747 522376342 571038640 765018743 259123814 942990979 601300143 619153340 999633183 999865284 642225227 706101137 962747287 987783914 960667798 970734027 16671886 682535124 274067550 452334800 878614549 918750553 461830630 912800028 705999168 930302989 179068190 356612763 691537865 710639283 532335245 720488901 525536955 591587590 951071733 956797509 479596589 687418253 665873113 933173715 414145001 617608963 243591813 897369454 901456220 998558762 508379738 726003697 404749104 499506144 296550405 515707535 120420397 508783192 790167365 810252486 455281790 514711133 689718763 803327124 880268953 929983441 574582311 617624796 656772582 904004214 538665971 879548341 291047433 693583901 600863432 807166661 483692757 632462123 740072928 993635569 798014483 922788227 923991938 975243886 391154315 825331473 935727047 983431329 703908998 999094592 949208466 979104756 88605840 773781210 337366459 532051873 135970125 775842892 98143313 451644137 464636100 800934792 624233703 956963922 649645551 803436708 576417058 667346140 341072186 911202135 978590345 987193291 748914566 802353101 182077427 651185345 349131973 427873660 851738004 895615050 523918319 553688862 626013483 777751196 515426225 656118580 197767528 641634913 108942656 812300181 403625956 579293355 935455798 943490909 933657913 949609125 302530215 468583916 883396265 914668211 704144727 857901337 355057994 476176766 353101692 729433463 204947321 315762039 232922371 524674972 629973312 777243930 245869688 576596731 998499890 999886071 418542016 795203451 198805493 967367485 996651875 997124182 106034001 833709380 627621242 929710857 160039647 711935132 246947828 467361516 360698012 917625659 87992870 958790120 506282063 668724493 24481963 838405326 623097708 949907100 659902150 834660015 108215914 282349569 655811403 803498805 932209716 991875493 761452277 807506126 24612074 455820650 892802014 918120797 699093353 705517598 912188464 986294717 245814574 578893854 3132722 844912108 904993535 914301064 913542899 988331475 13755259 468640228 737265032 979728684 950742041 960251432 355389090 508764448 182369518 898892880 245455567 992747287 26828857 33581131 35889227 593736717 293750404 785338139 69085557 216245253 843471699 848996821 767496906 822895273 551243636 992368913 530921524 749021655 655732809 673153265 387505716 981116553 707704563 725043682 884279200 915156110 421342954 787209716 526913484 921834579 673447213 673664566 926956891 957015931 351752343 574582599 880332234 923627807 257367524 954471967 587888527 753159321 949350539 983746549 957107074 962161284 495642128 978636519 445264683 858424426 577341963 615094084 880693263 992501031 347597454 363758209 214830123 218003225 315869575 464255506 306481677 543943270 566188218 881614529 261739074 283948100 61701719 515203254 163830875 364204150 912744567 924590484 705051443 767257119 508643913 909598443 275064848 744229472 618480724 717269385 629938900 941592662 600339558 785213343 559668090 747368517 318518615 869647585 680193531 821045839 95289608 526547744 940819827 959016438 834343626 851466690 61098647 370713954 796975901 870375809 523170071 935148958 117232965 310919434 56294613 233002187 373344768 795348117 807818518 808403544 317349132 551486833 684850104 805608694 962606638 977191574 39113841 924535937 726389555 979132341 293391596 321052491 550379322 959540949 754529882 998780981 180814843 987879517 14353825 197584859 148919228 155490004 579057875 890270333 857092225 887962443 384762324 772627587 901827816 956956090 61149545 770833369 149813612 637894294 26685412 106023395 39164548 771828613 174631562 216942162 602784430 786542407 248732490 788418080 823852037 923510204 86452200 295812019 836682846 879517251 398242012 731979044 584901115 845104077 824941194 993570610 348815823 693617283 577542577 877739685 4505864 999523887 143713038 992245369 219677397 794810091 970819081 991573388 992006002 997424185 45445049 453690865 590151412 888247445 566493341 945203536 69862851 380814344 875910375 951997181 120497550 648029658 721007460 957437554 27899064 328564087 601666008 847669138 969079386 977741439 494685287 711682610 44786154 128834654 931694933 943337472 78744558 543000217 741383553 854936139 612171560 841643560 556269918 592685328 128272457 450233074 220093370 570743259 605244978 797320370 204906988 268749000 918336380 955721657 451116287 538936855 885757105 940604527 628566349 670392986 204327999 942608511 999503424 999563468 405100224 575403949 355540245 498837822 156478936 715540725 157584457 465915814 334281424 786136551 755316063 768375514 106907531 371101564 464165265 556415944 346530654 694599223 830260467 908529993 474363839 545226205 534381447 720521275 704596925 939467052 983143008 986822729 229306066 602639242 863674643 906948487 458289637 476876643 457125766 797672719 288130794 755653174 376935526 837096800 466193441 673529533 514809999 991086606 925020293 993153152 172204699 445618995 3252655 114049972 435058705 955964284 794621769 837340039 224038203 872582654 445476607 796677916 292907529 763256800 676061167 680584559 575619680 948808155 319123177 995600222 346461541 727810980 784792523 829253964 449208486 489859775 328538736 667259561 852263266 852460593 496998268 976084222 215947149 336971976 773608154 792212611 790487028 976772051 243677804 330446603 493450305 655587478 430778621 941459850 232383790 944919523 694657948 774664887 690867124 693855639 140080838 924379469 673308365 976344791 150732724 917745631 781193920 983723386 302164320 736833354 310219330 380196742 473066910 640728434 746441734 789527959 794436073 931645140 443463996 839512788 661238592 753798522 537689557 926339407 773186412 804157913 412255910 823249325 77147270 904561600 420542982 733626770 339338935 787462282 666723987 736996962 613982635 645193299 620023453 741633636 70201275 976247960 257566756 305125970 938253128 999276176 110224352 238458219 499406436 672018335 587792013 674077948 169043941 923753455 351343700 764376067 133845517 254492776 757022460 897585970 863235174 971416587 682634726 895598566 793084536 804820357 86065916 598280674 107087152 670957907 222148006 240528468 510156905 702166687 422639671 555175011 819427408 820461622 358867345 491811751 534537847 967221404 265837874 765388638 314666296 470900023 641790940 772266393 498842732 712399374 94189296 896337005 815727409 972756765 505069830 859061919 344037272 633986303 784807909 837284408 660299950 860419217 855154765 888113180 48596598 184845809 728674918 808006689 521656169 757792886 982721973 993130814 794033443 882494819 149090340 521001013 120463415 894396992 760148600 900613219 712908401 867270684 288505853 482266026 331455403 453750651 528483175 595195265 880667840 899869097 525432281 860760208 2666148 539032574 596169301 995281856 519946199 891850485 388519342 728468249 339789078 577879880 708574340 834460140 657261476 840945416 151621890 919715326 922865370 923833249 864302329 897375452 356843101 869839094 301658967 401421267 33344407 435214601 883489984 956559482 599199575 713645655 51736532 226251852 853330381 951472799 977114540 993812989 794006160 926835376 187074654 349793116 404218592 612099251 8728269 405222498 824522781 993610018 956834641 983044846 226436806 330786726 877963082 960957045 75747796 518758538 798971303 993836165 68772760 848999940 833245639 952069231 342516404 477759836 117594588 252707943 258577534 783647870 861881353 935175590 997686052 999148370 648215947 914964873 60493229 522761553 457001425 762174647 95215526 813734713 234907721 486011070 958642008 986690360 642722350 718534293 568294386 957474717 269047360 735422579 980030565 996149192 262372827 387550312 728155482 926514365 179491007 570846984 521290114 720115066 697189380 886117981 692103882 964542459 545333285 653526023 53003468 555669449 763616080 885234704 245934377 868276455 749227659 801095299 539750181 892372865 813537543 973424220 498147241 940542559 582956517 611829676 930938952 972787891 221846871 794990043 183146366 504717955 32003976 540954182 93160106 341361959 298550244 915878263 479044378 812409222 955158686 956455596 918417356 982832384 253744340 749602481 896785832 935018954 167591575 733727463 842538685 859148257 751766576 816942402 306996620 951548878 46835188 549312096 96843420 877656093 252940475 273655538 588478390 657057886 407731150 854308300 363395905 799619681 22270052 344754104 742615103 752106815 323426012 932582521 98483343 572847856 261492624 884838311 272777841 619705341 940548154 986907567 359604208 524102294 13618454 320145306 725197912 935683297 203002700 701551698 2968881 101196818 139209781 729828250 213837502 296725888 132046139 829767590 79610127 224596019 121133376 760086541 136203015 322306127 607664055 688434699 699090585 938378088 680370543 741847422 116314457 424356009 168946336 347498026 555760217 937389423 334743183 391429758 646484309 905665949 361530691 690050819 886246803 958931703 854346527 995662006 800283866 928902349 264239354 587026353 303416865 869528646 694676333 817013333 456876914 529677602 16768063 318577763 337743911 834473999 694697994 910470883 951709192 966961325 267303070 891859216 607258541 710685315 851782037 896949617 116622309 575177592 447190390 765561891 882248410 988202178 32252624 306441656 155636274 734503109 400528562 553778163 543684447 902102896 102221760 712095705 606779944 937034535 814704677 901476921 189629236 292875554 325961732 733520774 641572383 654675754 738077980 804676421 462635759 476291745 378192960 939785064 525224497 594583049 425313465 760569263 108877861 154129118 556200764 899819105 402237290 884033855 340817963 404766702 691954254 772778853 197148614 614417933 171568057 420058772 604708096 861326533 757116045 822479881 20809506 114716649 789060530 951940027 46533978 871047507 454041580 787936291 913780471 918918047 879322637 934528275 174454269 444873375 813639254 969768987 192674579 412827771 903108338 912008009 45966800 74640470 915120718 967472208 528330592 744305590 399930892 806003398 927611884 970874341 944091061 987255792 450392726 627340245 523965857 842439652 250266810 751355321 521405350 685754974 583606440 749195146 997489284 998525695 206992461 710390590 310578337 728368321 522057141 922061439 582445973 670717331 945551161 996164677 95237596 837508757 467100589 771948758 883352538 968834525 119021390 990733208 359021668 724751354 443683332 938899783 272824906 416629054 576240292 698910694 444503822 484385512 446366040 527673788 550207678 656824950 308251521 688438215 449996857 872170289 310714991 721944713 790640634 804710565 12430878 381446849 229548832 230484026 363832490 976382429 560919381 662065167 335608078 905829719 653959236 879194308 460541177 882384861 760076262 876517496 985058248 990187435 857799057 963313733 186247862 587183342 117413846 323334998 450003153 574296979 245457177 697704682 556917911 557805372 373404326 408349259 481354761 549728214 695248873 987845634 486190062 893774527 999315179 999809460 452574443 883302839 711109023 863631468 750200135 782239082 572708880 599233639 34160984 285697870 84520499 143440673 584206624 654736749 606248379 665094146 330363258 789188238 629605475 909215380 24116470 840597142 680605394 682927094 746651607 925446760 827013928 969688716 678462500 832471979 492807322 543547159 258881269 621030494 417901958 815817705 794612 757664492 322530985 641045086 337008086 846120307 516396777 593276249 151318012 191916051 34269860 859261313 490476096 539271118 245145043 574071665 599905937 941230747 585430667 912347139 942852377 992428297 728638085 795350485 587960220 941174975 362415823 749244397 670191252 932019508 693436359 724868033 316973099 404375164 150852025 301745715 297652948 423980317 716264439 834312870 941441814 980508614 64854057 436298688 824294965 958637370 87053366 607540442 917810115 917983941 727147892 948099254 65111996 677183480 184326175 723987721 777757815 965555900 80451180 797213449 728039070 836749152 44502149 782011385 253631402 843477943 228995887 249618106 393356095 664700757 473077234 615701660 312600521 987118301 244217908 582299391 874605051 946218215 609409734 730956354 447791794 485821129 159885695 252472154 348830671 420214060 253329059 606111712 862144573 964603670 699747405 839794714 443642568 670648506 961055025 979585697 231614943 915142551 777380648 959475759 565695718 803911226 22447069 635753560 920938758 965530954 956214616 996799252 422006621 847314384 289894847 504147271 91626334 272453858 196230927 937253465 365646842 944167062 667989435 709152873 774717962 972610281 551392177 852917367 860294714 953315184 136827812 563359459 638302028 673301041 616545806 827246547 381539169 486214931 581133186 934153527 644655402 996495196 237676218 565546315 653943984 733969445 81151503 115811076 944486845 963206089 645161903 721247635 706613957 936338641 873186766 954815935 982446561 982616623 883055556 922177187 88440562 643666222 38551893 778848653 592362594 852819201 905131698 909338574 199776842 914268247 14474607 27323372 262635477 707673948 388068390 583917018 338954559 623207193 239208905 755436724 889516775 982844113 998404410 998745346 439610126 622832651 491105000 798253660 234592243 329435998 617712914 761203669 193775440 425008190 482947218 908154943 473926400 815769807 854377308 976848473 796353132 809337421 59919599 890440798 780359533 892147524 375735064 717962863 597808004 752697110 554948119 900264618 495056159 861782116 957212309 982164420 732396115 844242937 976573441 992239630 913470206 960484293 44293756 635510920 969549457 972269345 169896544 875908274 400494302 980892897 508992747 975130161 14995699 92989806 336197823 971883579 366793795 763215039 249018039 741122028 242286750 342263906 915688042 996863172 899860138 924206362 809328914 997467677 482298955 657500337 436565711 802874581 412849917 587734908 177927067 778488345 637964344 752454598 227261173 431222514 515414091 843431393 95661246 442734736 398233794 652316747 693003437 747711748 801724483 974953630 862316075 908518831 141501511 592071652 76759030 244712725 405239272 849208318 803051263 912600039 401812872 570734491 172667083 874780325 791587864 853635664 257735493 730202044 499936705 707653297 257317571 406777735 229684891 637997948 258042584 557994990 517560429 726561979 294715663 332499474 306164759 732837980 940722307 998222579 513535263 839197755 446823086 723482006 395538475 754850293 267581836 497862614 863323850 916128216 196684113 244044588 418776401 591858357 605384755 971517850 890573910 918049094 932675411 982113737 295634914 644157605 845460654 919371590 780774370 934679878 986458259 994531669 497447906 801559080 739760493 928929220 797096812 900227127 902585943 937807256 928624835 929191239 786707112 945468844 135064205 365422526 523649984 554296971 62425521 903655223 541714992 908326552 671802187 812649074 570854430 622403857 172531370 411796657 983225039 985167302 63713168 809036595 367074069 811982025 348187317 475934868 708768134 801836030 971530061 994528201 408553530 617609413 494273155 837964867 892610147 907840796 577245715 649121787 260274708 426110360 70681661 128518255 21949253 35440804 841594510 896271537 152406998 700186756 297686098 972463435 824223740 940748727 119131574 910499112 792821347 827333663 584743900 609719632 304542319 732446376 512586408 547236701 73347902 933264498 751713009 890742398 836813400 942446880 625549078 721560086 407312386 996499682 870088877 990794006 493133004 876374914 554312465 915726588 59240639 916929352 255914716 516121086 551748827 799169195 151959392 572492073 833627266 905042764 135063698 835784667 388215680 574541329 412411384 549740753 7354602 848095965 251586610 955614925 458826813 878930698 319840975 551464278 593215856 917242572 338805995 803432825 432794572 982847700 818531437 908753541 281204023 320092801 822076422 923710121 671761265 925935614 305667766 575708362 334376059 741695429 278854449 534816736 280021161 714754380 29639202 986805757 308027563 943726423 601948168 977107820 861059935 959953705 495441346 959945396 492574873 774359179 140511015 391820675 147038344 267606506 218836986 824290496 956015374 967331993 955033787 999310545 579720800 752603844 806069983 973192442 374746333 536083024 166110684 422753906 657190408 677091356 228631298 980464825 777477214 994229780 159671758 871757261 402684820 917680402 370259417 626604677 372728723 864954855 396545729 542684073 70037036 865052454 367175670 736050426 683109901 926361424 447739753 833732569 298626564 392430539 903692978 993763520 738914651 896436765 926181070 994994582 265101431 870838563 330473272 782544642 236518130 390074714 137474848 294934101 116071733 839099219 602137598 801202799 93052495 709118845 669077504 825095084 699571027 801401423 889248728 928290606 402185670 828974786 835519708 923253109 396593461 635944702 165693983 467584291 277357652 760709352 388982162 888387668 106402712 904840773 288466324 996146287 281713606 571824500 403764098 870775957 238288798 434157419 970792162 996844720 652472611 884295266 400328029 613379055 169300063 597760047 653570878 813271789 164458548 866424237 286711258 724111535 481894894 753062473 314827356 467895521 309520005 424017297 977711233 990550637 814394331 815471733 549432102 598494055 805008691 915667380 725155023 895574163 682291767 781329194 825218409 962168121 189891337 641164381 351284135 978663161 935493227 940306883 162433860 218329229 756534944 951625772 668844044 816163582 257156429 277133590 30487327 224711184 448006753 479811290 875643591 912886744 531530465 905453256 788053896 822654616 545487346 698046298 620258334 922499497 169768064 627343110 589959917 905485821 52711671 933557951 662589484 730610285 946453594 987184257 941273984 960291320 139766846 192819530 349694635 618363734 6321591 173493135 445839478 836689811 960773095 961059749 97324655 287252181 594350335 626265417 799064578 891393758 223242708 407163152 193595482 728754963 237626803 379774391 324134449 870329352 66045457 728862957 307550305 667083593 297302333 344329145 873963416 980779903 549363211 847362709 347611703 647583181 194117816 223121090 421449876 804156788 587149018 689037763 322425459 956998990 399606409 694594861 853747467 971230542 61357209 741904123 684327387 812921126 999872478 999922166 185610827 485137941 697595910 741209445 82198967 360695829 516721956 701562763 655921153 677747078 665890476 863147440 512417615 948477255 517929035 950575725 782590925 959078834 100218801 776859770 610489508 937094595 470758676 892980154 515750031 653520981 955872078 995819001 773797878 916443211 523735521 804093389 706680692 722359221 718399244 955785725 863694228 997904111 634865648 822267565 528981517 831857168 366440483 510989045 229633177 926336072 557891029 961822182 585320480 794834947 105451556 257494975 569326959 937959573 843738199 878723873 664437495 846591240 324531819 639320049 686188280 863565432 217673056 697051012 663598587 873824921 100357539 558167785 107859288 646652380 968479822 978003533 542556747 928558439 316734854 480776725 587954614 849510856 494555420 756056173 423524406 604671841 669534908 760824337 285378230 973819550 765781198 916037619 968128420 999591695 876120947 881443794 699855721 922479579 109494469 770215887 816639872 931173583 695980878 801560113 818803266 824842431 344116384 662103672 352310741 799731570 741216166 853753303 795348638 841231590 936147597 990623498 838228744 892563153 5721254 111824688 789969107 985679086 166433439 994591702 849984854 963021330 772984656 817864141 363510978 877098116 246044022 695505654 442459410 715901517 318403485 839815215 81600979 662325966 423531980 895364064 348247213 540296915 28566434 223600804 560653049 703307691 311002413 625706047 675940407 759393831 854244860 987242244 265779037 280792910 855357485 873073634 290283725 452536755 916665492 978135603 166427637 755946505 338163059 964136824 710597798 929279614 180682069 991531589 168827915 711558891 376915739 806339868 531838433 963280382 968572111 989542001 754503779 789991812 745560519 964282618 861109276 980725657 692722482 711277614 409972669 421508447 37532991 363094543 36240211 977034830 61748406 904020045 989963009 995700780 228165933 447906567 573304213 949369393 463732821 894575353 404878081 874991701 797197129 818916301 517004408 653591537 852101426 861044207 397076695 668659716 374639255 616563996 741918707 960749808 429859683 714133563 13115194 324027932 446120270 888399589 410532929 975517239 538238491 816753796 248162679 526823325 12091388 851641053 377149924 416584834 585675811 700310466 342870871 522636525 466111491 666082717 375399028 822984580 784342216 907091633 569790295 737290419 952793495 966839242 67293864 337864475 125875834 139197390 201304220 296042685 286073361 682047562 348171850 661832111 669081239 948988439 156534269 564707562 488563647 520087671 305549594 408927544 700968582 785977977 292459518 948752502 143974782 920189371 867249168 997153141 300281223 580461979 100361257 244159077 983111703 996121306 798054022 802332651 371095709 968521847 658417339 826072756 921161544 963536850 964704503 970716599 964287560 974898569 866554172 988055357 858285814 954662398 633786273 968319982 100282817 262143679 876929558 962856428 804912698 893999064 42840958 589145823 587540148 638343782 981559871 990472587 196208487 656926568 338743622 619959229 352050013 417014717 733078938 902093104 963680637 995377375 669979536 877976989 750816401 790805180 725363885 752679092 136736557 172618176 212948175 299003201 288842029 736877952 331617487 878080517 218181033 857527381 906728358 992095479 319340891 726892996 81531820 895247486 646962154 949316213 600952017 963969999 264136855 691531764 503480841 983159245 560305467 847195270 214341962 384645228 726168633 973474388 432886239 908971101 645031663 750980285 773134312 906866090 662692974 870264926 54782739 840143254 944395250 982602595 650392422 975486233 545118751 883229924 333322349 447387730 717124850 965463134 103637351 395094767 917588192 981433877 882592350 970802063 424389798 840226886 35381754 355086293 105236188 750201994 114427346 526119717 397584621 399258318 393159181 503017348 738701264 747022089 973234602 986235271 388424659 875133881 700701763 899050025 769217421 774378811 658182189 729372142 990790397 999821651 923951974 993724691 608731459 786209852 353317330 982641105 99305262 178567454 560086788 893162786 535928609 882179999 255874685 427985692 348683963 928880365 309484272 821946676 937452823 946568550 754770994 981960913 587027974 707676747 308717352 991891920 236355204 605074920 105815613 749962796 204280437 308293210 976708436 992970414 392296345 511582212 203766514 319504576 901019135 930168649 169403995 188010976 590376842 852978084 759861789 805255122 30496045 838317128 460580109 613289526 712322011 996646092 650808652 712516041 903785296 946544819 340193778 392430663 436579147 906836468 370852216 907333680 260352088 634413585 385233898 410032833 760033655 951128916 383555122 999493935 306891565 804402247 845580780 959647875 601257070 626092131 398360242 527440824 854431295 963769496 783052315 953466312 694605812 747872202 83407661 780886075 405981836 967164422 305692236 458260240 276200446 530614594 915996506 925886859 322063471 804591900 29136061 753014496 77151726 444632787 905353002 933256795 726069981 923458779 519378188 770481972 899413013 917383976 463304022 960627395 273761307 798237013 505001725 879325249 551706388 700324344 750096214 823694730 193590764 341079924 122669550 878733794 576794089 797390484 485739243 709858298 237031244 390014107 62137911 796108904 272097484 658059751 902584837 962496892 75959021 374666271 229833996 631426594 842226991 979752954 568759384 809057487 20733318 59529764 486742873 602710650 533906723 765576682 695029718 866519095 24059030 708548520 752690676 999955753 594927983 666409234 44807497 538721980 508890402 697750165 387099730 625014065 495636314 714182923 789776106 874847301 793812226 909434841 96066321 659403276 202656683 449585723 908613283 954764594 315677065 438970176 674445043 934821045 570687470 618436488 315094468 881770137 962727297 963647013 925906757 932449931 147214213 604268809 662931558 824614811 677790582 978877749 735786545 805389105 586092086 605044589 756583980 892831125 836291186 846529168 781097854 907334999 745254315 825060501 540115568 886826042 953324627 977673978 190132174 797201558 686434435 903428396 440813962 668457615 579473869 908586144 649783411 759948355 247490205 259269230 803071475 961621673 970485973 992800251 95602261 598011975 492674561 612842558 674384524 732316864 835629983 848719630 151274883 778650274 478752589 812691602 29206000 755557306 498754723 973745204 563931023 916783603 875426192 962478659 44829408 818925032 866754636 870616920 232789149 597980357 787276298 963091648 939584901 942629645 486080419 632699756 728597929 972644838 26155488 446228504 910634816 969368977 758538114 966329986 334226 946124338 36795651 671413140 691100721 864529017 441916297 519638676 644166222 783665976 853564581 875322360 409806882 470786466 105376850 217126548 834273217 983177797 758260729 932552536 302358906 951704514 24944482 696820917 345738140 654994511 755036371 978405398 683804201 864174814 731901810 890054687 671543393 984631229 33841740 116085147 900636322 992548744 426263355 931675352 853720666 854739485 517035501 674042143 890468126 966733098 846162664 910572921 148310584 665756218 860606268 978318049 79711288 826664833 762930522 935019013 120229 38051964 660016818 943163550 230422252 302185828 947081362 965747698 564546997 831409587 549626667 719294177 850264292 887817786 253650511 687052777 52981689 417846842 427804917 990188102 247464288 389230337 10390300 986282042 176624029 496941560 290522022 471459376 195783005 973406212 563990069 697484483 238190838 819669120 36798380 547692682 220141389 344842423 64793725 813261320 186956893 830160882 623886082 763808487 893094480 904895963 163381583 439300117 517626576 917281075 234091290 349451893 1676447 126845989 884218156 894921871 355473094 615545617 349841759 865093406 494264199 608276004 929988054 950158555 99408840 169823130 574213254 700304294 307576618 934700989 133159768 362666815 26997717 609998878 888631651 951900440 82069902 263536861 465859135 584367584 890158898 997785411 921404193 949829250 228066870 780775658 168001748 897335695 728387283 763881169 49960771 990977676 571523652 601488517 151312741 402392765 579274321 946943522 650869156 867073041 159302286 744240663 267290667 713126906 297992586 943667734 148538896 727978057 512126449 653141282 353817332 674751653 452981907 621797998 341771856 449043832 657655322 714445492 970741693 973586765 87594765 918724613 280412695 396709481 928675555 946853969 456076912 710612617 987060359 995698399 640149343 954899709 798641835 883296375 214817634 328312597 992828823 994395648 383656051 702015086 760577156 839262066 816841029 942672428 459337656 718933340 473261332 816949907 735857264 852175831 898286498 933745150 351805693 815035833 627865729 674992416 575813013 582044841 719809870 862986626 203803216 916055724 400700008 755597670 720831823 775384557 338198154 777705819 687035462 865394901 516912638 685881402 546187122 649421288 829898433 967872901 157480790 506935274 120943991 574096899 276964789 517196816 983068413 994240656 475602560 799584548 86087191 200155939 239125049 619041568 134632446 317215615 731599064 737598371 226051086 359817494 564306195 925324319 73736931 310022425 517331685 876915660 163910270 646554303 936035767 949607881 500076666 997153576 423883262 429490222 364321842 674027441 621337894 975374444 248343188 851933267 258319942 943727777 503284372 638822052 954776350 967892492 379285130 840547632 391431294 717718211 627946474 642881518 648739923 775680568 738893204 825741321 602820425 881774931 342428279 959954028 102039128 263462495 578732252 944344608 835454001 895167526 501347137 810364803 723911026 800886596 415957698 636838007 535041150 800306643 476898756 763352255 835662082 881643568 100086055 194336696 792963670 796704300 695311064 886529846 100927047 163698067 130560403 483671344 585618437 682747564 909150780 971443704 66595412 585679038 846127357 979372066 700632969 972852496 88716698 145646018 684192068 715746436 748310237 966605045 485439766 488726707 127037897 472014477 670912845 776489533 767369811 904765678 259271563 520772445 819529413 980498736 409123572 822751654 939793055 962093052 548394193 990232109 628243229 861327694 751029490 841929450 774805690 808800390 172444974 704949904 471880991 869569792 291757460 685759405 264254104 564848543 664035224 867604823 808629936 977276152 721887630 776816060 784788986 982873298 24514791 349107988 15549194 234963415 285979654 302042999 36716971 621821268 338945097 852159116 398299520 865105688 576314664 942042235 247187806 798242976 949957976 995253431 367557107 755574733 17696351 636504906 841948324 862457332 932199657 969530400 977367147 986829002 438891706 449742323 776402567 838287198 435195282 871233542 583868645 957936212 240228024 459786274 760461896 909240435 317724039 331507909 362114259 734673279 784576498 953362963 625272609 723552740 379212722 563221828 138338934 656068918 662497877 729371262 767110410 903414203 728953902 903866179 258506791 874900132 763826770 924606707 798411988 881760516 818665327 984386226 357170530 647160528 376880673 638695938 338743367 569248759 241292990 764473004 955447073 965456013 153145973 405989716 903368134 983264923 98517922 823354556 730696419 765817776 810597284 989008103 971320516 984532404 195434377 556654234 984998838 995806413 755622325 937294881 348329948 802016734 764611176 860090864 976937033 982165118 311986558 606174666 125392273 874631638 289508156 592719527 719228974 870164517 997131844 999895589 476150026 921187866 662906453 808862771 263545382 940559408 992760854 993972403 183368966 778159449 245671666 748820195 343264459 949503310 305489001 914445611 189367855 422797879 921064701 935715316 955539519 999608961 961008719 986430788 7042545 577625018 116047126 496753928 852378700 975846837 616523701 659470058 767682072 897568244 853436797 945638044 857890479 912434738 792549535 970100634 957912462 999536635 171249744 992204398 131056789 494658588 361109177 488377191 273827263 930528605 392035535 862700167 228097609 336245916 268155340 989351768 27434201 755462536 426071485 646003203 461832587 665312910 904886306 987546758 560513161 951190884 240134519 377943609 544274560 980129346 375028958 468518817 174584846 511605761 800868414 946543542 361637391 855683504 783557607 810148980 993509927 998736121 118713738 646122334 541015299 778016822 551366252 956428724 515258211 911995048 996332199 999578752 669135256 814711622 696222 709133388 498730581 969368415 129976266 146080482 996513721 999934229 692444926 927978675 357615806 657892028 734206719 761137326 207857592 584739881 979030000 985114423 12724301 856556008 584410411 687008431 707121479 888242724 59383383 465663528 539428730 638858481 26008946 342824273 281312800 951466863 572931388 942243348 793249781 793996886 361354048 919854276 790108167 972563542 488893352 553214065 181292281 224302473 307836781 663378393 562872550 985889817 980637638 995396373 380980001 441024532 229964965 616435570 899160493 949707975 16623012 517367042 67700970 792714077 553007192 946779302 78040561 445219908 286075910 652186702 841061960 846916979 584279773 857070453 153738602 360614347 488744462 778346636 242724488 391706437 711202267 768685277 436607770 916537977 435528256 640807270 886328745 906774906 897982208 916200042 911612198 943289909 796497677 816370518 71070041 917146016 680607203 746685625 557387949 900090320 167621966 170068668 88679467 684145848 556484012 808069501 571879295 635042013 64712418 917650842 409936674 453224050 573238673 595107676 222063351 868437464 953790072 959759166 24198202 645476416 271127595 903490671 159496417 922102291 369423779 448831232 606987740 848651386 335953982 632913225 483124340 599811403 917592203 971908181 494370231 566702321 394656554 537646678 392456050 619048315 741350579 918720932 631208555 787599626 285306823 971610437 151502404 396660883 33089278 655819275 545538117 592080524 250808526 786052339 19678836 82098742 746689713 958698440 919507751 920259666 665650191 802910950 169393718 856555503 103147680 281206931 821758468 964023056 260066285 645919678 969378672 992439439 693326866 958625806 491180819 670032709 314574615 706295518 896579193 970160826 978183737 989818174 579625036 898835686 731126735 998694908 152107584 725866639 374965887 477897432 533175060 690568882 106497854 157269595 156033656 577291852 353232156 746768388 459664258 921004824 375942749 878196408 36624621 57043696 549644591 967719356 575475549 971074042 398877694 564559359 683004235 927860926 102526181 310509280 140762606 364898855 334767193 539233175 436083982 768555947 348086419 585234003 878080144 953563524 494530980 599907181 578907702 925338989 605162969 930864725 866663000 939569745 471214115 624524552 874290488 938399040 433011367 623789783 541323550 683256534 413597614 504084129 317426081 736941378 201548538 860886496 655449312 944518949 22079780 82765299 484663061 745384980 246216812 386584873 679032278 912906022 328127603 880757629 943270478 945468499 844208271 932179119 391656325 844905071 603425563 847266248 881527625 972110613 855257702 873126069 84361163 388594220 930560345 954557344 58986231 521888689 824491464 871871720 883272627 889017716 31515539 956092933 814667193 921288095 7799385 518854731 902920846 910827414 178968574 480171810 95508409 130085554 370386648 739653901 46158784 544355288 936902773 962910452 843771093 912423845 312048778 628341412 202116585 799135148 106771918 857112669 735106370 868087797 694724371 951989252 146152724 200919255 214885081 708041938 482093421 565965131 956640247 992128624 555479849 720439778 681831100 713196260 536419112 605955014 600079644 834658855 969511673 992424388 702891636 850993993 40533134 553194321 235426234 281254885 765980535 823708790 398911939 811460129 875808144 913168768 703162918 880707887 883479091 948967451 710851591 883066137 720875632 997003956 533288338 611650127 348536267 662451985 389509828 691425013 519035995 706035380 9854772 323005723 305659829 750755758 533712383 743006026 158309377 576946472 502079837 934703628 784263301 899934146 601168491 770043005 829384442 951482787 22268893 63038291 834250815 904587131 778668224 968637029 818695536 852282714 943502992 959924868 278807950 472722623 443622440 809220894 946462404 964875014 939711063 984786798 134176102 170326305 31871847 303565225 721301099 754043835 559156849 818690160 186615232 427819210 911106350 974608965 911378969 984231163 198372882 996253687 149173780 456681555 270546930 422599149 832122937 859334768 670649347 930622942 947171984 965532699 574658118 775488020 848120243 872359710 807564235 873773040 228866863 585915597 23469781 954137692 114169339 882979760 926568669 970615588 722568616 968178502 384084007 508727949 409478323 803715669 231973757 941832538 764168953 891167209 539741635 632900086 612969562 805966353 620238161 944598099 979437170 988401218 181382472 252144922 421081923 550877961 638790464 980958572 336595225 369954815 61468091 400249208 177484829 506841824 974571607 984103764 712630335 949046138 386003066 697397179 702675557 872120582 679393846 859664282 135530127 287345896 649790894 783799587 489204739 793181456 653327952 684682733 780709410 996707977 970614066 993490928 364786950 714106916 7911291 369277818 750569783 866039872 901387910 951027229 933488363 967934915 532468640 544543515 790686014 890044786 927815274 928716536 289453165 665106985 696756554 907711289 319094019 847798469 298405186 359439170 869024131 881861863 492776191 811209513 452221834 989423978 23264072 249128286 461726205 728689793 133779251 940739617 456709010 614458549 365762261 780042812 722967559 792910003 570596482 915844444 244744814 580651383 88155631 884196901 591171263 946763134 96181948 366976201 61638550 377138394 808183624 890596720 830025052 993972929 358869363 761302198 167493541 983541956 693597069 751296745 117781460 841936756 258149381 991443025 134639204 269079679 280339963 697242758 25099320 188300593 25178684 119968823 424257434 981826583 599993935 956028970 234375538 838490839 353412347 841696152 361787242 779869273 67156449 339814123 412996702 736474097 97172680 722230931 919771560 963749476 221711292 668058613 345320541 577840408 958966145 966390418 435589646 929230208 651282900 718181149 824518326 953776882 677075609 775497860 275660327 839462521 679465732 681520882 420760498 898760316 775077489 777767433 95585171 653830408 7358640 163794230 707130642 943378010 934575104 952785243 582811759 685385671 937931264 972326426 876780697 946072689 540475862 906181645 738275806 768473447 33889593 120094968 408465153 759232339 28148589 662743104 65089440 134897879 374386931 702556958 390971864 817229628 45500098 74866322 121522787 804873869 898877649 911611689 705194379 826480831 485123079 963478505 785598654 994549219 63518409 993696008 311478953 418141054 658933969 691697455 439721063 673635138 749470300 810731896 797040498 960855499 899154818 996771900 295784442 565070798 917581693 920757641 296058896 965943797 690014380 834850454 435022024 831603649 429108363 521863472 982662943 989141652 206785944 225159534 571650906 782869910 583281937 687114630 643451069 914681863 172513598 639928356 225792626 627280793 805737385 814733521 403020841 929490638 882820544 919421895 943644531 961554997 605227828 920643236 748862085 757863824 992431957 997158681 337715555 835926150 414005217 752424679 521192186 580277409 251263407 379211775 460441791 879681251 50579928 299280364 773115530 830851693 453555700 846548498 611615226 918353928 302967311 334093642 810061218 883595219 85090994 413986369 866726563 917280279 962534238 981788134 608391545 722915472 243690085 981686462 565538637 603359804 648726276 910857452 21639510 788872657 821334420 869675018 787982572 958441116 70430173 362105534 529543240 678345516 579145102 802781943 911453837 921126537 524221648 877037310 698502836 899207078 187471466 990070531 754857539 896610999 512031364 838457925 788392529 835269933 841066016 848771549 600266300 991358212 922065024 935451005 927055817 946110949 312290377 761958738 640494973 829283798 489770322 941310014 22395717 803318603 84287327 948064447 835213620 871114935 701626678 864531102 496449775 564707942 908876421 913090745 653248960 728378125 860863239 886434352 66512529 688286417 711542237 961139748 557788893 900997403 349339884 623858243 616191732 774589188 344373517 503185885 755772728 839496036 128595472 370991908 214234853 492429350 260688706 715638631 406735195 772615625 65519722 255522846 163148860 662438993 255839536 904698560 309893085 924127154 358118335 811208740 742993449 752555044 999491685 999689477 542719213 628263050 785502685 796751555 295890095 887319598 281186824 511074809 705367947 733757172 161107440 632062375 445399361 655806215 393044177 705834806 286463485 775550120 95059293 832286156 285488737 875137774 300146522 849574492 306394340 678217198 65408250 693799051 272044204 637069878 57866508 543806820 234025865 784996565 95709767 519738827 395185898 733512158 330616874 405069934 847864500 976039772 502896620 664878358 311131108 993457211 929234303 974554596 935016777 948871952 300788253 691424571 501315619 994995486 886984280 990332710 879608898 956147662 727086367 977151673 250552022 782509206 602774195 819025287 118913073 313060564 481487275 622982722 162493948 475876217 147152544 832235274 867640236 928696792 457345601 649554974 54777607 402746339 650461019 815424354 993424044 998517815 338848563 527819027 722145084 763273344 144019421 487972264 669064531 799238735 299889973 842819867 453428513 639647152 114361138 179429936 476035556 870673512 283783265 893732641 534335602 862256269 182626356 552778574 729125805 954938331 469440723 785720129 718666605 920137566 483527855 645794622 516433427 653579279 344736874 933133965 759848739 860262400 95822267 664605316 521578187 744958905 801633125 893841487 868994316 972177347 763698768 786301481 504084630 655004714 810061493 991612857 714421098 983639277 136324729 378394570 296108701 337720169 102006497 889736058 197700322 400270296 107840602 422871928 242280925 699204740 193194630 913110393 800241235 901620278 666178954 844829252 173493108 317303606 966295227 968836830 610044219 908060805 882192756 915084373 839824493 960972041 275525734 365985235 450846659 682169741 974419828 986517047 602761613 792274257 645034971 692173577 802715538 803869435 167571674 782827035 712871164 736846609 780636677 858251444 474895680 627045975 98589084 447771566 650205275 916372560 614753019 908674921 196890139 670476920 699878926 794750879 866566078 873355678 418123542 786888019 554319407 895107708 450935612 765303308 733915266 900594166 79437799 94604267 413793339 883244798 332682834 705571394 391732402 980106861 144049542 627165403 235988531 663106618 162624645 520326225 368558528 708722027 775735881 834302259 667584355 725171359 686613188 948115720 37571818 702681160 390169238 480880756 501154266 658031336 890165308 969976445 109327038 586669328 576075608 654594691 215290199 570969377 902384721 951667587 65080051 548362432 830464380 834473448 598548982 995900719 957587826 971242838 64683296 474192428 939928073 982624479 256525216 753030854 738654523 924809249 937144346 998796231 810564901 913279095 464986069 736250717 128450134 557721481 40269555 423911945 912032311 941337914 588011500 672961997 489945586 805704982 390444825 779308998 560277639 596432613 768283030 874850072 199089071 746679193 675364662 899601190 45459486 748053569 469668421 853706510 982203889 992988797 38089933 694725667 311178034 764536981 587741827 617592150 716977537 873292622 255756846 869129122 904373520 916660646 556710775 627685596 805565413 859308051 958430602 994240602 886849813 907495498 503241674 920003014 526077616 930672917 694053739 987747006 165177334 347724344 358304259 753221011 340106470 764257492 580278281 899881386 762592725 948828217 547779395 868217977 830261895 876241124 914431172 952126890 985848777 995922910 775088107 821186069 515691620 957085257 853128886 853771229 540863760 742834545 976914144 978122606 418097785 590787444 412986464 918875091 129326108 556435341 20549728 89970710 929061066 943393457 647873362 834274587 570602117 623280008 403446390 694325226 721023167 763451865 643019891 994931454 601527148 644804467 263702463 372808036 325379711 555310618 405965119 986852928 736076652 963086577 34929618 155134100 34195628 694620701 330754172 608944676 872901379 997439197 26382424 181877662 641014371 923965123 234201609 397187655 264509007 963241359 721825117 871350404 915738716 930480157 207220754 880089662 738824588 829040559 716774099 730540188 805819168 826405619 599924859 727595658 910817979 965314896 55983074 69396187 144673927 928771428 438805034 782691743 140713669 521567164 62074132 139014006 710668576 949121410 170091815 694263720 650493373 977319404 799730987 839256173 826543926 855300324 763268329 931394319 638946948 665293210 605489885 676334482 730884694 961124422 628281326 769795784 388692545 810518500 313572004 797128535 303613704 469873845 784336820 963060124 559855886 591654020 941060603 982514385 202663818 814224616 377304694 604061128 370353962 396580580 393296341 855568591 651823664 961459610 431575676 444509030 556416114 568489784 687193615 934643163 69304614 734008177 658551329 961017842 710057627 933571196 816994962 877465226 385607460 604827438 554583873 681069269 764834045 841873804 599319810 915823913 256458507 422342228 783533469 889147610 984097305 994073198 174180042 837485336 69696322 466800277 240960069 936130375 232375730 895873120 339470859 932700375 184168341 575246993 585225372 864533606 360298833 500921220 744126172 755055382 377822373 681206557 433043510 996588509 849519258 957588418 361758419 970526180 156419225 548923584 918833090 964921473 77028300 672228136 13447113 295206633 413931758 542367973 777052614 888368832 642612063 704468051 705537920 835753591 102332105 466624876 903699399 987594605 915686050 941635286 810462239 947446039 336770189 495491114 265940586 357084884 852108071 988065101 233819434 911713444 571550774 848001761 140913448 361606439 278034237 781919553 368730298 800272023 162047562 973285666 342725083 803673663 188482149 286481140 988740082 991248542 240618504 998903711 964456503 983334004 125613390 130298978 206283870 577837696 803670998 824317571 708417238 809647283 833768195 866939715 160883012 687671464 464993518 740117080 66590961 896244761 118059031 761009491 334342296 982438938 273256632 499322509 833994298 940681839 896815433 945164701 389251851 501484123 502395392 571545833 293944243 602612538 899018724 946692308 488396723 799750462 501003188 920164814 395923252 877480310 22316377 167280166 37424602 857315225 120827211 437712060 991696834 992992103 690512978 949164491 72642591 568426809 564209624 841959241 67909912 778577124 723668699 770399854 13885626 727764132 609836639 700005835 213275978 523871869 141134657 397895623 257800885 681296829 79378397 841210222 262836903 468129588 333465960 753935807 673290962 922400529 687998000 953950732 953062354 964367132 833870490 937572425 980903181 990252473 993300105 995803486 68977524 916769405 729025732 911709446 164132755 860273965 213725329 325736683 906544574 958756469 121777884 836951026 200184042 487268461 637868387 645674939 468742130 874815362 927790946 967941495 120077412 236981451 420570112 677739885 497230020 616794446 691042498 878541867 786382963 828012378 915720370 931634370 496546925 581225027 702611265 780923551 531626113 805569061 333884366 720580039 91561883 383257186 202245909 911330897 412889827 697880460 174792713 611882619 17718222 697100969 288414888 996097133 948850002 961988693 780077660 991401549 537130998 554936296 410638601 943052319 636333727 889466443 785001369 941725532 650044534 718848578 156506009 504004698 639813449 971967073 961767606 973061953 654688333 906138001 986815174 997569578 711885511 721227229 812673556 829425933 575498021 860626157 824952685 857352018 335985001 714960209 207745454 880515312 7001713 560985430 538691191 880374828 787268837 913690637 594848637 735778366 777087134 816875464 131325281 161480263 516636788 674415321 483157468 612225504 569689209 622234440 60284425 480779716 470275472 712955809 261213580 863756600 309699869 953884442 836632791 982547103 1927402 966299890 328105704 406241247 171723552 526874987 597311120 968856961 73670220 574986315 223551123 562207971 49619584 238338239 893217449 996031920 501958445 790115151 247343089 538250485 72141126 785057088 810672508 989830479 895178345 970958901 312903722 925773411 220499086 729104473 686369095 709508402 966701821 973240902 576828460 622922789 484907046 504710405 538367699 858396721 672087976 813173683 407276580 995810652 251102090 578571971 219345299 932445111 835347387 853548641 286046582 393557279 351840177 971803369 494713942 642451322 355937233 373335893 435588969 525658285 32037945 676841201 686618180 947154534 880008420 913856656 992300344 996007067 967313606 991148196 355947068 596773550 452370770 461689086 363892362 766699354 390506338 933994003 300432006 802099562 546027763 713841530 567352083 893953574 481033839 502768291 130232290 819787595 940479911 987807051 261089092 809807163 241208722 728948076 859994475 938429376 892974841 971829953 916579284 953248216 359271465 890012079 187067869 851387448 785495510 940441564 128023106 928337980 401651194 672706629 472808570 488712585 599494860 900406291 228903083 725645578 848868560 925764837 806960470 862140307 130322155 448832988 201374518 557310230 916209923 976553032 333860532 991703675 652262736 763556299 465559576 541712967 522811136 999981766 853072775 881699556 754165410 772959053 190390359 617666850 461608437 757198051 131957213 461008972 447723239 866076310 40901736 576969968 324148429 462073870 236221796 869367918 480103582 765950585 323473581 377530295 955346469 999202346 1043907 933809029 779916604 820232661 3513648 534230284 543447538 994062983 251390717 416796365 953410580 994557966 672412539 933272422 547899746 659805195 797958701 814392554 814970310 944080477 850487095 989024940 962643685 992077549 374196181 660351126 271935227 696806712 298291472 765830305 829752124 931538455 146685417 603949961 769367741 933916145 363766178 890464338 187408654 597463688 704228881 907330981 422903993 948639655 268988010 513175669 323792143 523167003 596911748 601323334 983645802 995173455 982162150 996124561 851974099 947792175 131213125 824195750 749404781 869411796 107880988 934580362 552294967 703236892 480029270 640317118 746183349 805726325 856143165 887265813 718704809 900292541 983121172 995569982 996110771 998230141 673305748 745211275 309784893 610691634 799979187 834877166 886037292 963102032 927666466 984458281 867872387 921796452 742134746 869513640 361476637 487357257 371348870 573322937 89307476 578150039 235487862 917325388 207248186 953355352 795103680 803918509 330971801 753714610 588087494 855328711 396481169 902839924 255475442 926406395 426905943 590744803 597520217 840144426 165569429 489393326 742878873 842437628 3750553 191960069 198196935 669788364 618276824 827952651 366559020 839830506 197371897 637364223 944376918 975555394 449733351 896451604 976178859 993152468 363199788 978939465 123246715 143052002 815164761 919630293 606699323 704750131 241154264 343834250 381799734 488762451 403416909 836526715 353239115 884064750 635389314 836343791 753644014 891316642 467634176 579252813 890548967 973456602 812876436 914210829 564212480 838743549 323936503 831993310 660289978 801470453 721010187 731175500 951989818 963903794 506770778 581707155 164103693 398497307 537311457 868970552 232455466 689595101 881000879 918395859 419020892 766225216 362405581 369683387 478294611 865702564 725068754 883439961 169949490 708439543 229706719 616943099 229469550 502248238 352261108 929547178 915699039 989801121 272699206 986690795 558412906 934560497 311720405 928441309 646557138 871764456 780296211 939897616 534573172 678407640 374866158 804743653 432523158 935400043 133144615 211530740 626165694 863362909 56806225 261724417 82912065 608349662 351238340 397608478 100034375 404350254 186067805 973882198 653961065 856895529 279761554 754615205 972420615 977293256 922586599 968198324 465198060 482152462 174659682 654423991 779362745 820943165 709582940 903979333 749080833 877715983 191986475 915409387 120703034 448866677 321980681 623630242 701486675 811985852 851364375 888907019 141934943 605202404 442062670 987124317 856947035 960262514 114577128 266985181 691793051 721148181 712072101 987497850 810150953 831889824 236651000 943148027 766972702 939943961 807779499 830001487 745915519 869007937 427171741 679706865 255229226 522441494 738391789 899631609 678083473 998543378 830810694 919606834 674487975 861662845 456242262 947288868 223359698 540048223 150009215 867791313 144037200 303115670 867729358 895653512 915392615 952733593 155986516 496957091 400466520 484649675 978304661 980251325 649383957 743004098 439017029 821322655 131165316 614993253 197831464 968983146 248593780 705640154 993325470 997382831 320245995 997883696 260846243 268884884 650973188 973309214 654941863 808665962 29688916 58594262 629575082 956330956 275964613 878122192 307364271 820427658 42439720 886855459 600464916 810191975 969999695 973211838 521836554 635069114 297491270 318259824 721548964 753597261 164441346 485029618 603100156 679954092 705699012 932934290 340126293 888852153 754265186 994598478 158370567 872436377 471858978 940984342 29541065 403753736 675671500 940410701 191550661 733812330 791463895 996296359 823350522 977544044 197804648 294292249 646949999 763289137 12648377 899912637 573383543 741859987 55066882 767265798 68506340 860017636 268710408 327318273 147221317 288280567 231323903 679735795 756897351 761959056 656628166 964464592 517282267 880081315 494034111 636367019 57083215 376050442 917459929 957972650 105115326 195204366 943904189 976924541 792125262 927713957 536798192 807151092 874592420 955785667 318111552 724109057 522547015 800835321 534500378 673438756 771678324 815578523 516169719 750648433 908885890 915626646 7245415 836022922 718835356 837826912 502162130 970170017 795822099 800033651 895161633 941604137 959493944 967074968 412446007 845986121 231757981 634610627 849349794 852786699 745849258 850977906 542168825 845075275 877670035 960394604 679696704 960516357 765744337 896501153 756744397 955876922 895214950 936733501 444588476 628012095 629180154 656035677 425619065 821252133 146971333 763950338 395591363 465963129 22757728 746891031 386399430 615156246 52112317 137486822 565963135 922940555 800818437 857778753 177739202 335330879 908601658 921278745 960289557 976271749 388004035 431452918 36883172 499216878 935308909 998010248 922261995 956604934 607566900 762196294 61404760 370124662 517037942 706425338 221916013 947391622 504599027 589619044 43001619 937221078 86410624 283242392 261605007 331347095 246801876 338950005 454582787 952617178 156226771 985899689 593097040 918734380 711420654 994497893 312866879 382577832 731228022 880647852 452520043 635297514 986104609 992334009 79800367 157356140 784196546 934907594 873933475 951064539 769091453 931924804 370531242 811830387 873388324 946370883 77285450 239480209 728697467 846265758 735375155 950571864 856734113 875654653 886818133 913829044 750856091 806387632 408875794 453453628 636856713 736912820 982800816 994139601 214076203 552052778 17531699 580902840 384993979 582703178 785497214 920146095 65397707 363174913 695796296 846431102 341446057 351112377 537204740 641365518 897112045 993934380 888478302 990131633 248349518 316052020 951138150 976204633 932330340 968864654 265076210 488723876 772564565 883811401 962262534 976493765 70369983 428452973 844189362 941193951 302090592 770927699 770195713 908213786 636610446 941474941 408329007 494616356 486840902 661718581 520658789 638865294 42257073 796365773 858638092 960753278 265796215 986379008 257014484 649797066 521586558 752379581 826154866 989115645 726201133 905693502 268188314 592789221 845532491 968949294 682460007 714368514 555014528 973346345 65266357 359945014 291545850 489163761 968267489 998810987 690596555 823581722 100878303 386473640 750484590 997899043 328839005 840066583 351174558 677102476 463050285 586574192 495224919 597035060 965330709 980028107 593004372 883078999 894990857 999397850 836204483 920744701 207994677 291260033 260077245 444762837 235025396 504839881 734157302 801162228 790865610 881011212 461591948 897272537 161233342 755610382 794546729 988730702 412902152 550771147 397414076 844487667 272936657 988304926 182021375 779253401 930612161 973429475 39940506 999573861 305002569 925642065 409331671 442230893 367963362 461530277 585633517 757368320 870668827 930289863 125462893 251931135 796514009 972389204 533208440 722301792 422671520 687401445 131289623 872657261 853952186 886731971 270832732 905831459 699444973 878844631 344644293 639679224 501398735 639626067 759205875 868190654 843762405 924033685 118564164 176440538 831787944 903895542 292941259 905903324 445596576 815626509 883122054 965828215 220032634 431007544 591409219 961291893 376223475 686777939 636177678 722082959 346794650 758718335 679163561 988509178 980090177 980250686 722407020 787709636 988606259 994679985 2563503 65444739 16152254 921881648 593923479 938443542 265819083 269413073 105849833 365010213 325609667 832015676 71576746 399973908 856009619 954397858 107933078 277501798 711510858 787748461 719919268 729050269 196935492 449878224 508640836 740022301 343254661 791141464 410487057 837590040 607305520 860583047 362334980 979163836 967122105 989726469 609868056 930912188 646894222 843575843 567277171 736815802 499724329 804152895 652890926 933568970 615644606 969540854 15972809 389063745 345646230 677953214 90760367 791615676 579518401 792474430 532760213 612951779 903828885 919833849 985688129 991542911 263921320 766973639 869693272 953593428 193925377 817099357 803900459 977452907 706239534 885573219 619983103 962937074 779632378 948584059 772218203 864113590 331232237 410394687 606373791 702100222 359115601 906376765 374070850 498278344 620508786 666647129 222697156 802012471 643204828 901482752 769487111 856175051 59124637 149330824 775928153 870393233 463832834 568897824 992228305 993921606 259289629 792302214 935081071 983854180 518476618 732350288 816469211 973640873 860041665 884942204 662205990 818386298 754734573 896777293 561926822 640756959 375339480 549158333 540082304 702053576 989613610 998528192 861120789 892767989 928757209 988401969 135340001 484995076 319898417 842009236 86897960 832687673 927400577 994569245 939687336 970448801 421725882 526218987 862374395 880028267 543107700 548283422 989449943 994693416 513114209 979653574 943055219 972191775 724293107 843459472 579515176 910459134 4777510 141842131 436893758 630290613 744979628 770300204 462783427 484472082 726411499 830507508 677948464 697309343 890218710 980684619 950915739 979116675 471165091 815348662 181600838 845677209 960415840 973271835 11704598 395939451 996541783 999035976 364511163 658133526 892033388 904557158 531523157 554401127 844757281 870805520 622565560 992681316 34232676 650842544 812659017 818579600 690196337 787335449 534920050 801121918 603511485 689443575 896902252 929680003 899730191 966004743 144652982 212460635 696456049 994233796 430091611 733394660 337071256 345459786 967617030 979829932 96317402 191416048 859019112 973587974 523168953 778241151 585152007 604038868 81706939 149740831 983071565 991844655 980235971 981174023 237582259 956602658 770135152 785497827 634380922 808364509 412173454 785673532 231177126 642810571 512796556 827530866 940510174 985019876 938291094 965957187 942752211 975567570 637547715 730078820 138069112 574102862 390870151 869876245 356316890 954188048 658349250 702885125 842663395 843155797 176818744 413384026 339502499 560927140 839666991 885153549 366448720 821406945 641650325 975964441 54717445 680935314 84079951 647820466 745127309 885341112 301092828 851085963 117963955 129023308 646188999 672238856 941690805 981016162 285662753 917721759 632791794 890221768 506552718 584550228 371974933 523096943 350078212 992207609 729104120 887739770 247225781 850465523 707679408 827203823 142001561 747828192 696174936 793486190 25168868 163159347 935285864 990333675 206581680 660737399 296585687 757497967 496754546 908596783 286556876 652154542 451671937 649719285 428665197 823553678 364628292 571406569 416786508 623465622 542797018 683645395 909829957 960360662 969306695 999802127 477125372 989191602 551076995 973031731 421429890 656411523 269276215 425313993 442251870 793866974 749307390 815158573 204321143 580262357 550713526 788156543 297341660 508329355 186278788 518460824 385770911 512894613 626593569 895637797 603455477 882896054 382141113 889705491 945453131 956192940 803653026 899888616 727353240 926742145 438807608 880512085 157035797 742107645 219273883 956529516 937755017 940417488 94244171 151083597 323437414 790473620 81521111 412877550 788989833 907709725 750656750 884921588 809017574 981948326 191898694 409609940 513433336 661619555 537758106 736352879 685132257 905906259 768611058 864042900 115782127 246661334 888462211 974504776 844235481 955492249 761451731 950730083 627632078 818768830 75560058 367322779 71871690 526201621 260633911 811386223 275801355 771854219 74358387 827537174 232590117 376218604 689128195 903990423 6478485 823312394 423504736 727151280 868761620 934588231 90387905 453816881 990772078 997575061 629598383 690720940 765908190 814624824 229094407 277931134 850496772 854808596 971644989 972764249 475575940 960267040 732585506 738993877 346314191 659346827 902869275 966414224 887288855 931322812 795243909 800428453 904382157 973672407 159774732 975830435 458464548 971090588 57288069 574899936 894353234 930127417 615410715 851253311 274248332 796294654 113636730 646373890 123183201 375428440 83182286 726785437 696987539 954385701 769123306 847993593 840446723 902824891 80153757 764014044 361428278 648903484 468590486 488028857 728094122 881298427 469007556 944097893 739011169 862883086 450268872 892007457 888248966 896627148 133349483 381119477 937233129 978757611 909301727 910317510 168311366 850139058 214261485 773460249 609800065 664173694 323735971 589172265 674742219 719652614 100146748 592479635 739348852 762541099 200144633 227449765 922830256 959729740 193126149 913318403 704325518 806772267 74554151 588301867 358371992 704192003 279605340 991122578 540301777 548219735 813832936 854716362 17019739 599009193 839188180 988891327 915018696 925934517 477462372 745794368 168262877 548590226 792518876 969544942 62305295 938999859 762213888 871325124 477652347 669296129 714422741 910847487 277618621 329369796 671840412 741823300 448621082 503726240 75340353 246608001 958741639 959266269 726104200 748227179 63523566 828438264 747155945 849113182 677253068 923320963 661725795 775148409 210958328 489119181 472391935 861973721 591586203 944926309 932099182 960578050 460898494 936169216 617311795 745170745 677648612 727128069 29811549 565614507 210500908 462485262 410993219 639431590 381455993 626815147 136843928 949005616 837687616 952549545 631293970 927550269 864467480 980860439 290247794 445699387 690601512 765599593 905736176 925314636 166234714 306426357 556832354 646758459 995671010 999150224 869758064 980213459 738092926 889946964 684562908 827680838 593317713 600670260 110257833 406983984 480098573 967775053 251057615 601074919 419124727 477077294 547158491 634806558 40647632 491024330 440024804 561802834 119383385 499033194 21755201 637127475 810021544 918084625 248042372 798779854 135714457 316517086 191253723 406014932 291119841 783382877 619269123 893516523 782639911 816941919 494695910 506517110 549750462 620821729 614621293 808462433 19001453 410004617 471805256 992582474 582320503 762264275 746474543 887062843 839564262 878716899 686124192 884597557 493102217 961146010 717454521 898361391 965290033 987134924 158665510 294624409 722172005 915154053 926938100 996992052 58642105 631003518 562030986 801543681 587364363 918208614 889386404 915503796 342372801 991465949 691547078 991410619 144030520 321869977 246638542 566465867 40031039 263461301 329525499 406310054 123407698 256543156 509144972 513928462 484116420 990631482 975082285 993106897 594000076 598262259 624063229 841139559 570149019 779773875 343493913 989001239 343436092 694475473 705573417 916299162 965719149 967630149 119786321 804721183 636761784 865577124 358942529 507170784 823862045 888693777 90772590 894996212 401153472 761795589 358123735 736831378 455764573 672254460 490038453 702984020 813963430 836484444 24676018 250220848 989667338 996902929 239226128 628141204 716916640 804301702 985591717 986955696 411722186 933072630 910719878 983194019 980382442 989808894 749594085 964560287 164766400 308230505 511907074 698328958 948696243 960131177 546730141 568908348 469424951 761044058 222302456 451880553 962126129 971046688 538267565 880365753 592293471 979231695 192213607 470096297 803974967 988012972 503036932 718878675 818480750 905362337 418888805 892403479 712208219 832828770 756110378 767733363 611329392 865993596 789551695 863264598 135604142 213572021 452462303 751575198 376103687 938875178 687384774 852703655 693334075 743824665 973158381 977370098 351337788 729729130 969727345 979933300 337813154 711920933 838161006 875950672 122020347 654762014 570070293 751741566 828693905 999868161 579298695 795436924 776616460 823423856 541962497 982055875 662572205 875086467 346891980 394060823 720136132 970672257 141491447 690194273 927165451 967577495 970308772 984692466 788787973 998784414 92664186 901597712 745685025 811662336 891909759 985494192 76106918 741084752 730536288 891985258 718836219 791791923 755552954 946899761 87121169 853939637 607214795 646866820 385705090 967514251 52986355 315756049 797998051 824783427 381233193 703090066 706872554 801858010 38708957 588969931 317215847 631977379 825444734 910729495 43176747 189512707 496482637 575426036 842398740 845387701 420985378 926246791 413265035 480400380 316073903 638851908 637375827 689086760 131731874 623487991 555916179 772718994 291153318 866305143 701036347 923798225 824862644 834422408 763025264 776962318 706202652 748232211 685806711 897950658 284301457 437644951 294345725 533665386 98364823 317553479 838151534 934607973 669658164 680397614 693043068 945002289 728552681 786578316 77223652 436719254 841009086 954484475 872374467 895984993 58778044 906019149 122890464 336559598 713604572 892111581 56662428 382800917 458251847 610973435 239374784 937647934 341342805 430794003 934698866 960871933 120643917 398365388 671703666 820025974 506931867 755060827 951914348 983892091 400389396 491208964 2493815 138929308 822403360 909688658 193412045 864028259 107138832 904617084 256843326 745918632 449340524 892371856 915015262 977016391 2790885 712917906 953351755 957537291 655814097 896765696 279875040 465594595 557569866 794534388 753386796 804140916 769688281 994368447 772539108 866877503 275915874 402798778 853323766 872511700 774381949 877980685 665410512 712136355 679696327 945089382 751632497 884133274 982751101 998450206 184516185 899906747 280075699 465382339 615424873 938076595 9633053 606828519 17817690 615325378 276704423 903627129 425776907 988224822 204624744 263012734 957661750 989723845 829885443 922141078 485432802 876266997 645074826 892333381 59642730 119786877 488326645 788411398 521697533 656764191 575838141 945410582 577738351 878202058 59325779 59964829 809697387 829273398 286579649 834717264 546768822 553062330 125032909 547281472 712008591 846815786 988946201 994284374 210319553 841798781 346425477 783689211 359771851 731112987 238963701 315150443 817425204 902485839 685573386 779388052 180530105 984012908 620934640 692437315 65213820 193409729 328236777 525195341 653228955 933632172 537559859 803559261 997567643 997834940 980393965 999908954 213440468 889847823 174260840 468259375 341153572 519956765 247927066 763627945 892938215 965174950 706779251 813624815 834567466 904014501 381618259 914645470 478338342 969150042 934355775 992147084 342442677 718474494 157234766 921936127 603153727 982339968 413064771 842274722 571478586 762972609 765426287 883604366 256610889 921612084 558927190 791027638 226329882 790339870 545941860 577579557 480149959 572400985 731060938 808394010 505393278 761617371 533350664 747491747 896310012 998540314 993624063 994319625 875317303 989882047 24852422 105350271 842848778 971622781 73685958 438016587 529303849 916454279 790403622 909361979 117236489 119918113 199040666 963359483 347044925 406075524 191534213 346138154 192267923 912319966 661964109 915732363 544359761 649321670 244116882 460939732 485203121 697718418 965981696 968196437 197859382 496376699 904122547 936094632 546960892 880960530 19835147 560412611 593744036 784905788 252118478 714790562 899195392 979828573 72856733 623988953 839330593 916963969 788819328 837968138 479053762 490007265 737047414 910682361 559916619 635963918 870086582 878760178 840142629 883358477 102954178 185229084 23414056 704166055 689123932 705630669 882332457 891827455 504408791 823009995 730117294 934273669 503622013 828595903 726688809 839829478 999620281 999737917 492351334 932187188 234457657 720039757 469612831 820185359 249426427 426291432 369315274 626531897 929435463 985536659 265235490 705348735 792717119 793615946 750640750 944618519 26798573 561831717 852461973 968820019 386020668 636924746 474376831 795718062 234829681 977104794 586510345 607947307 739836560 742254853 585599602 640061926 622252371 864996608 803847192 827709377 793215405 821594802 344980307 482587386 632120629 677079870 416691139 487292135 472883281 475625020 552956496 728749274 176520447 862113615 397595658 732518620 730537572 749962130 297511051 760538348 246047204 944368409 916933435 937570675 382520036 576433021 548196077 888567666 614716753 773368203 931160040 941525766 257141559 550350777 643698021 867938001 43167495 95676427 649701203 823137003 794752912 915598957 278810158 637361721 122487437 386001515 64482243 435782962 70664504 313431672 41028960 312109670 286740291 421216134 675302639 824264122 886519484 918351412 483075696 506602228 537322971 567410687 738652528 803855668 692583250 909477867 951886485 975469934 830633849 924614561 646798738 947733292 193741082 933784155 218106842 280095728 152829864 448488526 956838983 969900231 877855822 955890285 549335022 731138839 782400657 936441725 723206766 799067312 779208953 880176609 605422405 826459935 783392167 989755601 388689469 837017991 320297121 569457317 344203664 933225113 342849049 689389255 361237556 691004333 169087563 621115105 385530640 413494652 672333467 781161895 849859317 880549147 8725721 419294743 581284596 740428209 378405581 982516601 907782331 998156701 84679341 207297269 386439610 883609318 171098899 928253265 178026360 573348570 946331693 991479804 443074314 632252307 625441717 958899538 761394939 900109429 753951554 773107746 396523493 890171254 518365645 676256175 869673937 874150148 290272680 453136979 561629260 774010870 48592188 346900275 771562588 980407638 702177205 880627931 589876774 596565545 43818331 182983804 696017600 958709924 645601278 882942060 519680348 907970640 460713863 956724063 636627189 795472326 857117220 961785028 197348791 487995741 134575885 566800834 687891293 784071667 455999979 694978642 893198880 896668945 561880785 648576848 824060213 884754716 692968464 802893806 863814159 942692184 635561875 939726123 664794688 921368071 778033744 781659141 506894284 618895246 240647540 505788412 168733760 471046348 217871132 347540885 638522508 957514667 679779750 808175975 120298972 250906610 173955718 602930420 896041355 923092875 67489573 544863301 480212783 856256787 755667108 810689089 301384978 415742016 580645307 682047284 257988359 702848670 88430486 768171731 836383898 993208263 559432491 825381259 665187379 952662754 126991724 396316278 824589519 861590769 124070299 483179061 454556459 516794367 359872272 592408977 492371915 613410226 409107151 519627084 642948665 761716195 320292881 889861011 354997784 839978375 916037967 935610187 783200758 802660418 14469017 311387963 562432515 974646233 389373138 933447977 701706835 763403398 231274187 675801427 8563766 231368148 141261925 398704476 716133297 900454285 185617739 382016072 625593832 687831206 606302122 898181828 765262374 858116664 632236942 902559760 252348972 818985546 951583356 992499845 80109381 743780863 453336715 962305991 196973844 711126522 62231699 732360072 878118127 980360114 16952985 741683238 301129047 847508680 155034271 169538110 858086097 907085718 977619179 994798903 726564877 926388361 124821295 363488113 907919598 993559430 50179393 814993978 221025564 673557073 917701587 964733829 756706830 775328070 411808497 746710746 736502114 952761858 151982029 491894588 285328522 431281392 254230036 848941916 380121586 537532336 485632781 908364948 303077705 892334423 891264785 968393125 255647893 293934932 898703493 899483588 423208193 529994992 68192371 98427777 709007843 746565849 25665643 919004159 71978256 660929756 819280386 827781559 627792973 771426487 955536361 996387287 231000902 940609958 447689265 641123394 876602289 926579662 193606782 213013510 833401569 964447104 62836733 878237226 760854832 879684138 477030324 803108559 78481610 435803871 952136873 994760909 301611614 394371700 504652656 840204223 737167661 968004922 326559553 605216769 68637395 776399509 17385155 352368948 346346949 770202054 713138588 812923082 459496213 471964585 13658954 336443249 337820838 449483445 326522661 523702912 893078457 994893421 147420410 367401333 3546496 485900641 480573332 913207254 357302910 823291614 579093148 836453968 216625879 643970761 371548948 401231811 735262313 976406686 288909544 714905589 214348628 307175876 590695520 597407334 167999139 876009664 979072922 984101342 128142572 279639284 779452055 830966741 34143500 558019638 882992123 937699139 112787604 160229385 619315064 776118314 37791310 816708948 932011524 999356050 208579089 668370568 557332442 934118419 689435409 771244326 170797901 696514569 740744700 880255750 123288268 187407142 125450162 615299019 769178237 823163101 535704353 843168665 59786969 851546801 889361498 908088419 915283874 919981507 432856627 677056905 606298366 810659560 258367893 462740494 939175042 971271196 164804705 402223665 653066713 775701393 74539352 474565829 653996601 711743073 944859272 980796063 909808515 961703735 860214108 886683141 585166666 896553242 586858501 947558656 962330020 982725214 655168383 756031058 391470236 857325337 403998319 840810670 511141263 708707949 911294031 941648859 85596866 442903781 132304783 425218502 719650976 893241155 318593411 574128311 906163081 906383685 817798570 956764183 591278916 805658975 40960906 537575149 881247069 970015932 61706499 975009239 437233174 575685905 133565694 237759798 566851448 946954636 621630247 767323731 362790172 475825923 264225000 933572567 619448404 800652642 978239602 999354406 336959458 981142724 209289068 790374914 72191592 512444535 606718414 945503607 394710353 953468017 623636064 931303006 947250146 971134507 787257349 986556078 46796914 598583153 271886893 746561466 424077170 761146033 358766396 561725008 808766508 970048063 266679223 479177195 574926961 775672698 387643523 881046951 81657019 648294133 714492999 858068774 979556915 982650279 747033189 910321951 471195384 936532895 836376830 953032231 445662547 751280119 312828163 702621456 730585929 983283433 783528562 951987217 832907493 908300575 282556591 494101721 159308692 802861956 980715972 985621006 407876453 819150974 821771955 855301947 71533971 857206538 346187997 564092872 535217463 694347501 506046137 577787438 69180382 507660616 665304641 998072135 536653411 600670670 148770249 890735042 304363268 936827229 507711111 944949531 257998716 477960847 665133522 751959401 877109715 969515865 465236842 748746248 116830852 947675121 525093104 833807134 900364494 906852641 18191323 224726544 298579752 856331267 762111885 883746755 366978550 401853311 760934657 833157765 388285328 547671946 329039176 462198710 389615886 401156329 897389463 900557078 53878332 252802407 103962139 909560211 632070732 725171391 20897663 602529015 406363172 962118594 36409541 928935150 618446556 973341189 485871113 858287757 666101061 981520904 835376957 922594849 704174668 912401178 755345764 923255786 684188242 948185717 618556282 923920623 702944918 880264661 329120198 976256285 312052784 580399962 213508884 255510352 895613147 922739499 903254981 934590221 822207694 848835374 600821281 649931610 102577749 768188285 268412434 947874683 204998659 444830292 307986706 415149702 489703365 747908980 855920094 948496599 191108185 219846125 784010016 809767095 458963685 780531877 436705457 604558392 984691541 998480654 668456903 793146425 907432994 980290917 138185594 608155747 995423202 997672996 270291793 992104833 812427580 846110630 619862357 636689824 722890153 863293031 703952548 823496547 827363200 941904034 468672341 501520507 369150092 992029247 107322430 867767331 562076226 756374939 772545019 857267745 645117973 718271801 177729120 629243662 951757338 961639885 697627071 921376487 12818779 145748200 289937345 330734834 53716465 754022068 591586051 818097869 448264003 751154067 415033015 484085949 615104846 731786777 29796390 32843638 319688889 425877249 911482440 921857159 807483284 971522324 911879826 934669386 438161235 479842515 657907235 969178082 229337918 928813052 979620889 995239613 273619247 588913507 803225475 907278461 175515486 247350083 844050985 864922487 621178758 642440746 267815910 555874918 275633012 989162484 267670389 877667936 303328788 532401513 810036856 886154069 624929569 953926050 156182690 400192921 996309098 997362662 755335173 793282936 510463108 734650904 74827063 276951492 861022565 938059886 662684722 848226107 128374173 278252721 624633869 645755333 143930273 334792949 702348940 975843771 396583330 529059962 688546516 746672978 518021730 756214767 128845396 956777122 591208030 601648591 558418601 658229052 722861245 831271755 509317650 544348782 224359142 763060900 29261878 922046564 118924601 456619075 667598117 788901579 873586635 927423538 587181597 659810910 325492465 668681175 172521557 930084674 11966290 497372031 549795364 973696474 284729561 485818616 274755813 786857426 55830844 342751735 163335569 680507529 777837646 903901686 273855382 496600714 746630374 948266081 437457496 881251314 853203361 884592753 911005148 958197973 202541401 776111427 616585980 878240570 445070780 462185774 907770194 939466638 834903506 891533669 758149887 876598875 736780380 826126925 61115246 166090275 980970680 982193029 745962342 816785244 980615331 982509284 170330987 996800266 222888588 793526489 287301911 869073080 243302542 749518401 303592649 818766857 234745745 816146263 756442805 832825789 936026427 965151802 281065638 756954651 707785168 832938958 421892318 920594347 640913017 827831756 656386636 922132887 172491725 831315871 966459932 969398966 258421400 547875568 238509242 811501773 791962574 984113362 32535796 621961013 845211345 901705850 416194651 734210977 518110128 685003391 222014633 459201709 581392530 952776486 239463335 244598802 156481997 942106323 63333063 247409230 313056834 969541333 908551142 927421011 36941547 518753369 887580083 951044919 86368712 473104627 111497365 471854398 403767224 565136001 530207782 823149967 241429664 388644959 980839093 997987733 584761423 594098924 935200490 961515456 169629517 307901817 3395137 495896562 542728284 821113166 559677175 990939956 363718781 750933380 754922729 995412386 677319730 783399435 315904564 862913337 133413071 170841614 565253611 926667967 815967900 944931281 835192173 849805645 752800354 932039360 105349753 644849078 14289537 920748702 439319831 643623378 242818854 738955766 217977678 475015500 834069471 997549886 736005210 923400820 305002020 308367473 224682991 779753014 688437808 919487995 229396292 693653241 472141454 992446884 478394980 868323590 773369360 811233172 281227925 923488982 769065123 950235165 30483754 276545886 217915262 545525152 810955483 832351304 271198466 579869736 843766020 891507149 528401263 993766213 403723018 691054917 403120391 568382214 576961424 891246259 431189485 970792073 419337797 736831577 317471726 932958618 174244762 509115360 760100938 868751874 198073148 754954312 648544332 940621198 481090982 866492062 469338436 696559869 174699097 296227541 286719215 578353981 132036571 271194313 657520169 683228488 411067520 827346270 364386387 617564778 949515515 980823875 600955183 729906084 521152192 941294274 722167980 892589573 990381922 993983605 151930953 596566718 987847331 996496621 959889941 983508435 605956664 966487929 42050254 225043626 392352674 538790004 45154899 704262067 705425439 730182665 834533345 885449778 643321990 901484064 462815554 982192885 812401235 899981629 501872129 972582621 134758514 407989942 243515668 349920020 292477871 861286221 196361988 506358537 528901422 907891812 13928773 931131282 877345498 916158422 464841969 470499941 209975054 368862804 849596092 966560063 38390851 155607637 935857589 981764323 67927049 928352933 224475849 710675531 787961412 934615507 120069483 759621010 88547398 550957575 738957519 799177676 566358026 807325154 741767865 842293236 735679901 860443227 901371664 939678225 963879189 970304002 654047731 663973343 707128242 922475442 239752043 307863444 68052580 948742816 230176851 933162740 501122950 803022895 717489295 929889332 540385671 845010766 902072970 996231905 667995298 856869591 806300300 888532382 407712523 746297125 314362097 576894266 171032192 414875110 74173915 554676780 112851971 191809900 107593522 114781000 406941948 588010032 185876290 328057323 918174990 989489390 121121574 762497857 695526830 910023221 663474874 991541121 904633411 935214708 674543420 965856607 920675305 943326606 777961496 874137190 484947333 811035893 662448114 684384797 46206705 809480542 443175198 616127202 833039247 841551041 455455460 527372845 126263064 652596429 526530302 751039501 269102881 826920940 529851838 572475896 458620431 741786821 655055657 678398060 693143925 857129113 874854444 988929715 948876726 999752405 269440132 735416146 680251945 726664054 185626239 598614463 677815795 850549671 375091011 862189697 923658973 976058717 107445143 451296079 524852565 645711751 591901689 638374013 229169241 998882465 291169976 833291561 955819438 962682693 956672328 961822403 385265214 607891538 214461761 939801334 272400682 353034061 754047567 878199718 427140468 518811214 764623583 790593911 74548451 338844511 548986432 719348989 15789587 806335543 744021028 948635317 9030736 423810315 931933285 960457349 273549493 407265278 62264167 880596545 166005451 338822811 624965453 755674924 760760894 926222226 652093457 839824066 635541528 704439433 459987097 636416893 901171888 931116119 126668234 950540967 395096213 592298029 137434447 596360562 573541079 755527476 195981685 513925069 577566018 645712698 457176650 663951183 727332189 835563542 866779280 952645250 662021914 707319528 98386596 676632448 102192551 641143738 919943187 946068062 328556432 791150664 716901669 901678561 352088382 570390892 123655856 781266941 482906881 649339131 142335153 624967453 237571773 736236118 518178039 727403794 625500705 689620586 412890240 732297012 785593802 984122497 680673285 795685306 94606518 841346456 499604888 953949822 691259248 814142752 389554500 654893520 632176175 804117832 905647713 978583930 758409249 769917668 844576850 959911296 132527214 407235398 66139065 236508620 352668108 937983995 95607238 648900624 9590086 943952332 587641608 877111623 627164698 839280723 769508400 836394762 997035423 998597003 877032016 944044667 518650479 824940539 409562914 662099378 282539682 331808909 84984304 437835984 929379959 943407634 864344377 971091221 177998675 589189784 773493091 794040499 29759763 150369273 333453492 710694067 332595871 978220755 968841607 992055042 538000702 567898723 225920553 652553221 402870418 995497489 412672830 521517416 720321144 766592011 297738707 345535267 164912631 329986571 958272170 974587495 837310946 930546027 615763663 988565784 560964963 793396372 160671708 466140979 907642835 931844454 839495190 956475457 260675828 929055437 838720443 988843612 427894878 707077950 590288162 874457461 686267679 692011042 242324615 242454308 645161103 874085491 190934054 202969079 307295321 438347239 754431424 762190734 849805234 925375795 325879770 397300273 406393387 675578062 355228335 904241518 493365008 761465149 950038546 996558721 70206486 771507615 300515397 958463738 174826903 940646957 228480225 647877540 163804951 533938427 673689663 861177040 170146893 274565584 732393571 844532150 547995595 670693424 701497174 938380411 839359461 895970550 109320557 410872362 406205288 913737769 710554608 740077278 618136141 949430681 566896475 810194426 987625649 991273751 24014983 975803596 366813698 971726104 168353118 929525627 584651603 877230141 26989555 581779105 77960756 544218983 380855637 682231417 222238390 716518798 394156208 665187321 566148091 932136439 878254160 934353559 170173901 800916123 961899046 993090262 785651380 899846391 982232773 987233595 14233664 438677000 319104901 976329127 544443659 755384699 437338825 958662917 603915031 849614371 73086321 817082487 909280660 973079914 925034121 926387374 375496679 818943070 2283964 11424064 607153960 626109246 303606808 412197765 490506480 841242382 941136756 949874987 7431677 380856417 630740423 728623591 20630113 97619801 50587240 665111674 221073739 651370552 374682308 524476696 636702386 770670090 319470994 690579411 246899533 416584445 575348105 592012943 7648457 922587723 516222986 713788487 394796044 724961271 143163028 774602344 214218538 989464403 958673351 982088342 586785335 852426866 912461194 980958237 40996066 997493412 213392913 375498007 56183216 141683323 352130361 943957991 670608024 948288448 597549750 977365383 626300143 823167066 356984863 509126868 790125024 996966876 156734244 960217002 610548302 878553987 175963571 516035511 629658304 742901028 678873576 827772727 682682498 850338424 321912331 706699235 493235062 793873471 787975924 995929494 143443019 965716413 760956002 971474325 530105775 945297889 336175484 344214057 18983600 611741338 694373225 829828753 685092098 909391665 102223000 996201935 898740426 951930026 954272195 985571896 561108598 840014459 907060718 964073620 214455425 627638342 880238819 977917888 266279041 809654830 113997771 800778638 796092156 868154755 912559889 931483529 72470716 349588156 666287976 880050632 60795724 438478836 791145427 865224409 146022349 489604753 708667977 955836039 582188152 742164510 387376342 965806686 850043910 945900064 319427655 359621800 690170806 909066346 758620102 886960527 887626962 917675718 710344476 860802884 815012883 950323377 873153113 957935855 680977494 948708614 320606277 891390473 3611620 384634231 40876063 429761288 656151858 731776264 989748187 994069158 801544871 863141782 983206780 983510415 315969075 382091923 436552435 922573370 482731713 960508490 537181087 915250702 749021170 937972622 726884117 739217251 386958860 497824108 453319293 798066236 673884586 940477692 870496540 948653949 513180989 837836874 132160820 801814420 607731130 978521084 474451738 839281516 674720033 766978660 845778219 952555929 424735328 544074062 777055368 779225142 445391530 483496490 758751603 759740767 689979262 969541542 466601238 650356638 671596663 726399663 857922076 915710396 336788855 585680134 30943095 491624921 684320070 897145638 497449531 883393007 5990160 352342752 989393475 990085237 688292041 873911523 382199549 467266706 109265007 308773196 133933958 782544705 242320624 419167663 748228590 914772740 832690239 934678731 325166759 892488792 629646621 768762222 270127125 568515321 357957050 706938982 226861786 961729748 466817470 504980565 655979350 744715553 513493830 877434386 614811576 910288539 577658 519789312 33515509 735112020 86148291 615637063 321337864 380609305 378467563 972731009 146186616 459454190 146495173 619333820 737309069 852289568 42848036 263986552 441564262 527378132 152957841 700232709 698128436 795008370 198133078 628292152 982677663 992664354 955632831 991208862 147841503 973679243 561069446 819619512 133722546 344518551 13278918 924215901 551903676 752545018 218270778 317999658 89555319 784628996 454214955 845133478 829437785 892230807 972767416 998528029 666347740 705917924 555501878 628633857 917808256 997409550 379349697 872871928 661645921 720925953 485995926 993082736 439353384 886500236 329584613 671068498 681974407 729302001 168724431 750010198 795643766 922830860 69796553 191554627 804773838 951952359 799087010 839247651 236768667 776390289 311694196 881902454 461879182 746123144 179002444 701310381 308302969 769668349 291447270 469419856 665097136 916742241 434671429 913728008 593751603 851675251 763580151 951735833 79263394 859194398 225846009 720913537 503893404 927722772 822507768 956030395 692153058 782625098 295049694 756640966 601712286 802482294 341971045 370480057 400244764 430307077 61486872 723728543 629652829 640757805 30603232 894880662 497963249 512840157 776272318 856882235 797151736 883091693 259276228 898146734 498330221 499257191 986254983 999551626 89371084 845678624 182395601 989727043 285885910 334210607 265416518 952161969 912782346 961679785 560042502 569992437 83344830 147839043 46167484 455804999 251220725 943802244 396586669 601173329 55139410 493218664 224132596 507776695 276986373 526728158 500161586 575027056 842352734 972787667 636806822 795872330 897693786 934426187 663695887 881661927 393253573 636362014 148012818 943503743 35946305 733205842 536918827 950892959 445013307 696527156 307268825 620942678 475962287 516916377 835994305 845280024 301487390 955459354 822812723 901467704 490705387 685624100 824773092 864432053 684246071 780433513 509593302 718286711 407768026 467883765 871205812 945478711 967407034 996515328 389392108 556204742 753975704 937636963 309143759 680794448 866193327 968699297 417875541 736589142 908606918 987217670 902305154 945977624 227449943 679177182 773859970 784550897 496977721 934318272 333553728 652320770 962727594 967385613 672662578 931944846 226956545 973088478 83848832 868342064 468784879 957712117 893860500 927120166 614116565 758599777 388100551 881438153 247723572 987932328 415460242 619289376 195469118 350764376 44474601 573809624 473259652 752195213 126361690 995947207 213261075 784555689 419831669 728622665 350682877 528039624 458608056 830637147 711628622 848202835 580878798 653320654 718717186 869383876 944311315 997138866 154956175 322754624 842398559 957787435 134623326 380828583 546665940 985420872 816250643 877422221 561281868 572829241 365682353 596170607 322971623 718943977 964621329 973845262 437879049 816209713 742116413 919083657 832412758 990362668 232202513 831188913 588167181 985656774 438783049 912335354 595720589 598602228 266543070 419584066 554739856 873735809 21055215 970508519 585527834 727971583 698615425 913345609 481112996 780431027 665248703 771722725 741768880 956202665 737433832 892616664 359213335 584647083 706175832 895392771 464637239 524591553 444995182 751070207 247722624 292239611 524071353 937603238 672502165 741721446 48276161 325973311 641313738 784913398 716397131 770772433 480306894 550321246 677411587 832126135 479276299 789978745 131134898 568874329 125379990 995549632 298950989 422090846 624892010 833725669 488798543 800099908 862824405 894334846 915751348 959772741 754488295 980414378 52435617 627783348 52439519 602027217 378739223 601885781 214959673 386901039 817478827 911363319 529526195 796340526 24877615 700257877 923670416 987097741 117437493 221668906 743612153 848752912 810601180 895584907 608248189 839011231 875727055 947312432 500793587 776464512 413156533 714201762 802292840 933993113 498208468 860272811 361926364 367229942 35000776 172768854 430246533 643974376 336458764 919136445 89626573 557337681 380730584 751831856 506891142 820548520 583258383 974489263 487058479 553269331 699031458 795197517 18305473 980319398 706725288 872321977 436254209 558010394 237380892 875626779 180768391 219557579 315823226 384259199 599180369 820038557 376638470 875596013 307692145 382492269 34842829 429762749 189907223 249938767 381913463 569383192 47870438 256587023 431485802 589318327 154570434 843612992 612380313 844739925 846993514 920896821 286358921 465180441 451466003 844759764 252061712 860113124 181380018 297920382 978931448 988671609 609355512 944669393 426589513 893913651 836590011 841387477 949497895 996475997 127011782 359358047 805442892 988042283 319597264 769958652 863377377 975135080 863306921 953021168 290989943 435879571 448286364 493300170 442832103 624686298 682594771 929807368 575220469 957025646 222156335 612360661 797999866 968006413 453859366 763146779 204906451 530757012 676396742 841299868 490951059 865420108 133243324 133980321 102318589 831633908 531517537 707963647 868485811 886653249 369841996 692429570 949759930 959331661 895203204 973286132 856738885 953668774 719505859 991953158 543591037 687098384 268632835 988787215 227112460 876580067 430395614 779576267 190499230 669599037 404289872 569180527 833959466 885797872 651814638 938637048 829424222 872768847 801279436 828358302 96362887 277536952 863673669 904910740 388906849 517213495 474445343 970492822 833980063 847752530 951457958 964937568 547330578 952540188 961184587 998302192 6658902 770682001 80841730 697409604 126182165 716876259 608846844 913455011 716188119 906790585 763327884 810004838 945551187 978901333 234929409 505540660 776060401 979838732 367065821 399933356 848372689 966835041 274312986 383890076 403023308 484925666 964112657 982294478 998829976 999415227 163215316 752781121 393889188 534186537 375339152 741230944 914057387 988830394 967945685 985784063 932292985 979582364 47176472 918781663 569385775 934281108 829209684 852856825 355580535 501550497 973280947 987137554 661214987 926837752 777380820 830503162 273569963 989648540 2507529 939419859 474890960 940643490 790902482 863852285 59191670 691781074 683214445 900632419 372998052 676086870 732841229 899106821 535850641 639089149 935679566 993342425 90178958 98427275 869318418 972073180 923291090 925718616 477806601 726420844 904184630 907856637 242452034 246883409 935346705 987684770 748556113 782804675 576764646 826293553 790891711 959673942 131895266 248206238 765074981 863872759 172021769 819548136 36910325 774426395 830826200 957689191 785352574 854216827 511779615 755815346 9329270 353648378 971306993 999588263 449778904 864823101 670802773 781437278 706454678 944389745 995851682 998312897 209458162 629191088 191190831 939738727 281043406 407204764 723128486 790331919 783084949 929715066 75869702 553985697 891016350 913800816 11879265 56155578 475217289 783529623 981793038 998111927 964905201 993143449 595554078 655774483 332126815 890906295 909664898 950860109 780076892 861619407 700938306 884440262 291740689 788750525 195524229 469129638 540982582 867836995 406645266 703391917 171980747 566996299 599247494 691873483 84952903 187140941 774493040 882949113 556463241 850878111 183980615 365643437 711443333 956976183 740796783 912967031 750593543 788426100 596380999 949687257 957366359 958778656 114785117 497862239 608884034 781466819 152285130 669581695 874610268 891038134 415209302 633698593 983045118 999223784 605841902 928792253 744253326 765750496 933945826 962670518 247253467 599598440 893346796 984628421 671019832 740855032 462589207 906383225 91930452 269281295 833966777 887083581 355155615 779755325 842335879 985635505 330286975 676289166 603263047 635599821 420224269 939817471 442409834 564533329 265448271 941289707 829448408 902452510 973168837 981550124 956343125 963050986 410679330 545702071 876896975 943001454 707987195 822670743 186693486 906803289 241678376 362844650 497819819 912003862 661646214 764009437 443471952 731545206 973780266 997668952 561831678 713718061 59670448 809120889 56246561 526572559 372126431 546202083 236549070 648468331 435216062 705097256 839014146 961300236 319337154 687820885 428486864 685098527 102568067 746240777 278939882 365060812 596262019 949905465 836817956 886455389 857838798 990047569 454833586 824985539 97706014 403402652 238701866 825338376 625607885 763668845 660180089 780867048 878052170 931212189 504195713 524780376 392140387 528957383 474953038 894964925 143389367 600724143 355462743 884367009 780358773 999534380 131914563 961765268 957250169 973450992 100952453 342634230 950584544 989786381 640049230 814195491 373977393 789994465 405263742 790041787 260388419 339226895 906851237 958855889 397914993 704212783 837078373 950250149 24826265 847800121 885293694 910670319 744334857 764621569 25477866 672104837 450285928 725237643 779052134 872666838 635839678 779610226 13966168 791506669 129596729 857622232 461462903 621714780 906394552 992866206 591257988 684356076 772971589 884746469 493678524 875161979 354446281 691842047 682019359 709565738 95414152 543349999 571647171 605685502 901240501 984839821 332013332 937237151 158166929 442329609 54546946 529169302 437140156 496166311 924357837 992469681 750743348 813796562 575224123 768862488 430182120 442921296 395590871 871814414 371257371 647565335 44043257 458406531 941505377 998306817 991671530 996666527 561463211 927292294 692694468 873382436 391025085 676599763 846723080 886231543 752537253 984087012 742154759 825783832 772745174 984601301 769554493 981093712 973654084 976298024 570025416 683489674 804214980 906064534 54500544 711586793 81807383 210171709 428997306 784725974 7595809 454059961 231311782 973697945 509795330 969006640 466166151 473402528 247506827 414275935 884974515 947705657 94529711 834466310 533484579 942823028 124148171 615008513 430255908 621946610 498221508 634538904 417484734 593938905 10230754 857134425 962117447 983134794 33157074 479211102 664596262 855975421 977389029 997732340 445898226 728759641 266981316 735756838 690644292 815007673 121350190 919481550 559127644 606257120 38285777 612718119 751663702 808233539 23617713 193725834 68077084 220652693 328084132 934892809 20897654 420987696 420171083 618519287 653718701 766249038 253238838 836218286 539771457 989618543 474352069 923360185 951438838 959676678 987365284 996468731 36552767 422566894 681463454 876866384 181287623 203815493 694821303 988354102 740634196 887178034 779698597 836197186 22975037 666424466 433561117 962476654 262431050 566214806 305609404 900074433 590115896 821087707 789866180 968659427 376897932 919452826 254467238 511373295 395837437 550881489 858985772 867798165 571105037 874893348 957664202 961648649 790381947 966263400 114680781 914785516 724556204 955561322 718212676 989305312 855384698 952508427 696761419 993780288 338457426 342037399 374325847 868758448 314245406 767039254 699983241 806747511 678944462 974532913 356242432 700334334 687388972 943459988 297852134 774206278 255671383 821151160 692430679 988220868 894770601 974872909 311745970 886211155 134371519 375675350 117278841 825348366 223565830 279592622 330174508 624724105 363594537 373282442 670214891 988790826 26503335 600470540 499876010 815914715 920768945 938290905 308367882 966105724 93018284 503685896 795849085 836326780 815224992 884109165 504422290 942105684 267462580 799116476 511741767 751620516 369105596 874382413 946708143 976679902 675697596 689746520 369320787 439954476 464477269 897907870 820261716 977964889 718476671 928616927 771874341 887203900 885440972 947805970 223830314 291865435 836741434 940132492 164689813 505045519 460110601 937660841 184608616 736921847 119153696 192972163 996320326 999814204 816980452 863818323 296515092 388411180 170095666 694634628 75011204 585705252 471790215 611109625 531283241 541804323 608195749 758648919 335424355 585148348 313408075 880739985 804057402 944603955 633874926 780989863 429405555 499202009 30715144 178768281 452855976 983471175 765360950 797537442 991889816 997310363 374204282 774093182 662524801 997806030 133300758 292113457 708916626 982887534 767139714 981451828 760430082 806281300 604259467 617605791 695774847 793429816 114158 852930598 297013696 600941084 734039868 738811146 46689784 994950704 776191083 777821634 833601689 919462581 91415497 591727843 324329329 382385540 434803109 635110067 507753448 959133816 350246039 397852572 885708671 903847639 956648337 976859159 849853598 977529458 652510022 853349076 165705452 880453731 594585483 832057605 595942779 751717504 651774405 887013159 260443982 726908879 699273189 962856321 339378558 502494806 847506681 949936417 895328045 923685876 298065360 916391836 529254712 865366011 699169241 878142644 484990561 623247149 504155557 674818398 712373171 994536520 235064405 999691033 388028105 425645373 585580631 638842293 824274954 851131515 791067743 959761964 696298967 728398064 801708229 953795369 276890595 755549687 71244207 769264623 777634254 958329835 249372512 473185494 478183087 717315425 360609557 731325921 509227024 935689949 812144896 965955231 589907856 784555892 740746029 855037255 843209445 941393428 312283229 454587798 294228695 989065718 616201905 957573340 335605103 958735126 902863622 952428040 500096862 955284943 893330915 903335454 790599933 862368773 928994617 931597861 384413566 745092733 704757191 919489523 348839604 462514129 138146584 203029659 852556550 946471635 604877543 977775395 465729544 618924121 396247063 972849103 214219849 562101754 849562661 874695967 560472397 998229104 123007825 227547770 732924242 791551654 922068834 922646073 682062477 754456106 750486569 943769547 213142998 944526160 315613482 387444345 218759686 714787386 892283560 916076708 919940280 969226291 859855025 914861445 399050516 869743275 115901723 132878473 232989287 915093583 250484397 580367006 468205934 727282888 278518394 763336308 945853396 994063430 357631790 549881795 434600242 918673159 486602722 641314758 593688498 848342369 580237299 679765642 561871957 927488451 480898003 574082150 391593449 812663270 175556396 881285432 846265161 903401472 295271170 925664804 18279139 809332018 636986804 835346755 247078172 880724340 710240990 772901340 904173916 959745002 89561091 525513134 614471018 972304601 775125793 779623873 380710812 626467624 275910361 550642662 400876757 978599203 909868094 928306950 310911370 580763839 917487397 999509850 965891557 968244634 683413737 825150272 96931103 890735883 532108425 659299974 901349056 922716241 983959733 984682048 755694434 894809610 751649714 796358208 250807110 630568803 632069769 942741223 775583355 864058773 999693998 999940319 223734801 243125432 715145929 934769594 955448400 969701846 830861540 902798244 866685239 975295544 531862476 542592878 744156685 853234501 285608562 894754738 631064460 851602120 407096555 793560548 653320460 902640062 219726507 611393538 360560863 664124700 818693740 972883369 530010981 935615036 570483793 939908208 857272426 977582954 790837929 897421022 568653615 987004856 481288672 770220832 182263614 353722613 17062175 70270680 462013450 553809442 427601193 542095713 809819766 989959658 258481453 483145166 501913310 913816956 580520871 844784609 791067402 809901184 563996220 649457275 818603119 835384272 918596624 966746543 552834153 872499817 682190381 858492055 263984536 670886743 63288624 917624054 732104876 852457895 836465981 872199179 936756078 983904621 104149689 402360382 622168448 922148560 454123571 587023858 836760526 851045958 638409871 691311900 652421914 669279664 651698786 703678862 788816495 799355795 808698088 939271183 80074318 599950793 888904840 937902685 438254356 454603563 446703867 649659643 435449208 661006670 398923739 964729850 41809128 147943232 951938552 993663329 933656829 969549441 32847880 64329879 244413113 619738007 586848124 738928432 849062456 921584845 885689797 978556655 892341372 954749166 430637229 694067603 222837141 745891617 776180895 886704237 842042812 964153331 250329607 833110734 626092778 920005039 620606360 681794085 886544414 972427183 838529666 842840315 977981900 993595760 892028771 919062751 101121112 155065026 681590600 832612329 163857975 769453771 388753447 605052161 580994408 864464664 194237090 909125101 862335411 964222036 115763173 534294798 850866275 925740698 927901621 987838887 858170091 869715641 596277890 693745856 967313480 992544988 569067273 790651766 248139107 835414987 354942790 430148176 255846994 604547206 12087016 76975884 66894018 759231768 133712645 319117373 124577913 805437071 386173832 528551734 967001661 994548443 566700929 676073733 577989042 621900637 94689670 604695445 622457701 980109847 355827170 692255495 962802726 966087519 141559466 775631507 132509118 707433536 990192097 997671606 388316265 706892246 175061702 410140598 449379019 794731418 489329285 574892994 889706626 980684861 100370737 248274034 301397573 762502475 53093383 64606780 508713326 605903203 612565460 794648513 944306337 969636627 991040179 998950965 810655557 978717036 868325758 986053532 720386264 839837394 814089930 932154649 854019241 937829290 428508084 433830276 225844900 620198026 77342368 983483225 249892791 589284696 299076064 335461864 519076170 886587795 119565243 900835265 181786183 223708683 897483745 918599967 551006198 736423376 201280072 879982594 153953857 735533811 165843954 833278798 622758268 825220377 10532865 925429702 873703795 990734819 30390268 601558513 157656200 464308140 171808457 821520574 764247764 998185566 313582597 546025759 480951431 940183582 206154896 991374464 720513896 911143133 606035875 653176084 277404439 668479636 457385920 803319017 361751635 619785426 948813674 964027679 778940503 782147627 192849421 965532501 996450390 998103215 426266954 534205286 651434325 739249965 287379239 682584549 815451144 895704902 214513675 986900270 28449280 236487533 646756761 938714527 867464651 897324402 944337761 964781861 532445566 540728082 580992901 769191602 984908308 998602647 639081914 670940331 875698390 915296054 625853678 862866467 597246047 965062051 663194767 891377251 514341176 689315388 74952016 925901403 98650069 785288597 936280778 974820644 777382831 837670039 450818011 701039894 700067415 982134621 697894344 801761248 216103619 998329836 985820940 994841940 401779157 910170724 95361928 332028959 268081787 649733378 450538808 741302011 944727248 945727114 561538148 754150148 640185497 764910171 980029321 997571052 58507515 641755388 24676285 623066068 578796615 719978229 923999193 924593676 552478022 716201269 811416503 885203090 427493165 960604038 150004438 515013579 370112735 494760250 952865061 967210501 733770252 994869120 480621804 584656664 938326275 973909157 774735245 776816206 795399227 983351889 602492522 757448919 68276902 386839548 520107527 780616388 684604105 966564535 450768782 745930177 825881194 958123933 393005049 545498847 81221142 763548786 839916252 936219029 399632726 902398291 268766263 271296341 764777725 943385650 858687331 950347239 301157249 555220728 572057345 631366065 580205517 754773744 756504560 996739168 805371345 857382776 146579462 917999763 963822065 979352507 496334141 703897344 925161782 985318483 632805710 942675048 368002071 640638701 956992682 989678967 86674960 864073093 28315158 356355988 103147676 415573337 14717780 20837074 125477183 623889244 922854329 939033928 5101899 567235759 570800934 708790509 276037875 891587918 210341141 335026746 418326088 668421445 351841618 590996063 356667050 462360677 713544218 971452258 926887586 945520604 582163870 773162730 675092871 677739319 356464036 461083153 66737046 80242030 349988085 945984675 747681865 906512723 261616233 714935433 88343053 933596696 968848326 978180226 483988854 527010904 972005929 999107891 451247954 830889731 579469397 818832456 192124392 716475069 327404962 744286918 76320128 729691149 44405457 368341578 745335327 905918474 545333896 726983963 341672005 671511804 501640767 652809490 827370830 853834667 191438090 443161513 6316319 314801476 898834703 941419633 274638496 942409984 2584781 244127658 91081941 587124647 31482118 200836198 584731222 807503747 437375547 651633699 976605644 978752783 578373412 899200953 572547216 700241120 864488664 924372980 413006295 764550864 248719301 855951626 768592986 930124265 959011063 969699716 389200929 999162071 898779796 956019865 972416915 980416095 821094096 978291561 223428352 469634852 998017748 999149174 451274681 824581410 54766984 988160273 785331415 906311578 626922000 777792420 521598203 617924521 338712300 879477749 939897351 986981776 809091730 836131617 740870093 765046673 251180040 999681484 322113598 857365489 387976311 621067225 992582867 999220353 553099939 644760328 486968864 895117401 374030128 407024654 950362613 983435635 476974252 865139324 401558950 856695058 841230545 918460356 911658400 939719166 44584558 94856284 787102584 963263468 202496932 809950174 970511516 970675299 992272016 998773241 198102498 550343163 118903661 813225777 158437967 560875280 780347369 964498659 987195836 999637316 531106444 664263820 401055477 777269493 548297534 655724989 961471156 979358907 998817821 998939688 422163537 635891626 952879514 966541203 925441034 991051527 252560889 822212996 28750606 789995380 390888426 649716192 978869404 991271537 204962173 634207641 59383547 470743261 342270139 554820991 214914517 413429263 684303709 811780422 265271251 277325672 29155709 635642719 800938293 933238096 440200241 937740576 493193189 990312986 405135691 963095709 117141397 935644967 724575593 909262191 574653300 792625091 687483128 854811640 397605830 963476031 429191012 540270384 594786081 711178737 307588135 507255638 863106788 921032721 969318255 989529888 229206734 470775223 650944414 946652923 844716441 917427352 313692504 608716314 797463235 990797917 850174090 953848866 463745114 626211402 580846356 662891886 716034950 960283820 597315038 846951786 913505925 933594955 501822264 654157849 673623747 825333741 536853616 764790221 429681577 538583805 538417909 996423001 672678514 827047439 173605894 976396992 703422000 737679304 245413324 939012551 131093734 893229389 54086063 635354976 154386497 250612913 432618721 975426896 92595501 134211120 926568570 963533591 634542408 766013842 293717545 459403500 328537783 858243214 15903565 483649345 578064267 599829958 711054035 974701964 619652892 696432853 229843341 559523823 586945861 756595591 403668205 722488943 309250855 552576958 288251947 767622519 943948244 969458747 635153165 879602263 492318136 853653623 564557102 729980999 274731900 295236789 948135201 952623384 617733044 878678698 871519029 919466149 815224532 947395465 545859815 618714274 823030737 951434201 903003552 997551113 575199181 668360391 366481683 772096358 843195818 983934377 428013201 788513426 502531093 634597359 254414060 641765868 379990438 468935486 507640530 837667268 280889130 843823609 165665287 337265516 685103606 910883864 359915547 621832854 763472228 954392691 705602015 875534848 607660437 975908055 113545541 951563199 291353561 426346295 645339341 876789295 147725565 229154485 513678321 642543356 303977952 378996788 190692957 956196111 150628144 340340197 342393736 550780444 382471409 878453083 401041452 940986292 442280727 600725999 109881413 480839829 731322001 841859470 613445221 642157652 672611381 911005143 514245307 806071091 706381083 881203136 337639143 902899489 627025963 905511049 939152306 967044126 296249832 743531482 256130273 527621378 485413132 954669692 61477658 816636514 428741923 984647784 828172047 830034282 453852867 914087465 208505277 524151086 385468371 476453120 732894325 928921882 153336578 278764564 833234111 905935848 633392378 743862338 10335805 915693221 505810922 979807020 562289493 645467085 708776663 878226144 343573884 672498790 660244897 722037975 270959047 804416144 383000971 962888080 984814422 988840612 303018339 952479285 880091894 898146136 570267990 810876064 337987197 874446117 125501985 660908479 229759049 353714415 160823667 911125671 442092079 763199609 508025718 601713969 965938493 990111138 119334976 391693487 725596933 886794100 597350831 919535758 516771344 616196571 817112622 835578082 338680933 630580102 151876015 592252520 622792583 742931067 686844719 750042598 227258504 354938766 899584749 902286587 488673720 639720571 606495830 782093302 752979563 995312227 444490950 974290137 88234329 721532679 961976403 967744146 995418392 998975821 367927261 613480481 689979055 848423939 282970607 928238713 218221025 731896031 182789280 952821337 734631926 943785210 968879683 989166667 859694134 911137533 982393088 987850269 52512930 533327451 901645077 916029684 327145015 452776171 867740880 926242159 583373824 592385277 110962486 900323172 247729907 321433706 524225796 609909819 233829430 336782892 535978967 831184548 87119853 477026437 357757747 580708843 704977999 797209464 392230109 639145219 925672369 957846864 710554511 750549133 48861826 908133365 82159212 886866742 162978341 819987853 683969631 790155529 99787068 321919079 41299006 845025796 279510169 720379277 247787334 950280947 447948948 729610332 648272222 896060904 543990062 757850555 181292825 430011414 345688072 772072295 628749849 819765983 634138852 638623070 353599503 611763376 269129921 922511965 141538239 688415060 232665832 613035527 497513807 962648675 942676756 984950861 188884110 513165087 902829076 914387147 537295713 909082213 845603471 850256391 605812471 692055545 867737465 942009320 201653270 275512548 185069096 589034432 340554502 607530449 80034950 310680129 271971100 874347445 70513975 900814943 561244900 585247355 999945742 999973920 334188457 672379726 577742936 770743555 823089506 990907708 178957938 552875040 428349064 760264903 583284455 662678059 572685011 645585606 525541372 669274662 859838282 888656067 281704431 730954696 451722532 879050830 173313978 448559705 100273975 488446123 451960765 638423085 295801167 953462959 522825391 735139325 891904030 910110609 705409534 855201475 957810009 998377236 266697323 930059677 447478271 669743905 197734868 723329402 690511537 887507925 267322775 596124450 71943009 77447216 464827228 707077310 292137108 933433356 780764407 994684741 541794660 683459268 490815274 731189198 208412344 518697931 293873681 705648149 565668888 568034883 543165954 901625978 418745205 492833427 448479066 478272617 906068467 977025852 533596686 579244827 557879154 669417965 381581854 517261945 782285688 804445371 118077036 891605938 100347210 114483582 92133533 613111608 358358845 367585334 690168649 946512886 965971749 966993497 926540864 979137601 959283151 983728463 858233092 978884347 247088314 993951323 965651294 987158996 223056916 683051008 845176577 855481767 58743954 693393677 821455238 893094251 153820744 951752747 60469230 635015949 326535322 723503293 568751970 945096324 693931586 986139110 733714199 936700680 826055272 930213465 748089038 951684460 612650782 898775121 633743877 958513926 177158091 326922797 724294932 747661384 550484230 679959680 934504914 967612264 873426512 883428224 308832538 438452701 613903967 823719270 124480004 992930674 259361521 887097005 973033774 981906518 380901786 908645585 665527588 720936108 310792849 887341899 742990856 935143837 607831726 641462090 164172156 247893650 671554471 867720445 134445601 390161117 881344783 922314644 380049567 597655431 478922035 936088090 191946275 418334438 77624110 820585781 243920891 516037641 306275654 316517100 966688621 992907452 67089759 983345187 748021140 913160901 453712934 999147176 278964507 472874519 23391973 874750997 316141495 809139141 44114336 356800420 751933147 991790892 297749054 407207972 785490689 856221544 705427014 877717965 409950702 771298771 335897484 820709071 74792715 259072848 773360873 978313685 555740645 929568488 683733300 905777146 271359885 471535578 721205625 807405336 92752534 507468462 291888902 734726935 6265545 415944953 293537568 633037345 613561067 738982512 343506862 643265899 582777189 658222506 585156532 909358819 838790745 864193071 122877398 841755616 266572769 270188585 737997936 743071001 938778296 940444352 550463016 766509710 150648538 872695325 235063128 783922809 508389920 822885629 178890781 505713730 387167655 882480386 308383118 495811628 180610504 705911614 826752318 853337626 442679941 717683465 680426199 699751228 379108698 809900556 111653605 855524373 167141472 440850626 645112755 937058031 208517797 901702602 56023043 390965263 671214117 781382940 959112832 989259808 384231550 498089876 483653052 497389437 48158216 428334257 579372000 931186711 68999703 163098738 445083429 777642020 904359226 954099930 498781663 887711326 193342740 931107847 994323417 995283020 628006843 768884041 361047502 838317453 382507519 871796066 959001343 993767203 171233065 589457822 14915792 486123347 464321721 684733510 117135133 380948119 722099808 848500719 682009566 776586654 18756045 960176028 943621208 989833211 797699412 815010947 474692235 858102012 917756813 961691107 786754193 864794710 122689626 597754223 669664872 757588930 891516263 926716078 882049405 960728868 16485562 65652578 695476813 770806167 608096281 613341297 921894628 950309386 109263403 830799507 525141949 938426542 113231597 387417955 691415114 940913387 927982291 933640184 700383515 983318656 677138617 893075789 417277170 831261882 422645548 521773269 234704344 774022620 259003162 883825613 153248920 870665247 260077611 691932656 223654359 571895968 188518431 201234946 461838042 929390638 281122966 724059022 426751698 633709178 171215560 897267618 725543000 942290794 154731531 771119404 822770930 921571959 271212194 466516721 659987440 943475346 767999957 858609433 699665744 762907994 341877209 833944307 836788306 850367584 601191011 842207871 631921751 853435178 828319256 931418189 40239046 387061759 333851286 801815895 981767448 997591312 953721508 975808346 195629086 416181849 648110094 924088421 885755951 938705329 699526848 775361625 760778955 984372430 75451182 934415400 997937854 997978338 437291924 673143456 629314990 638530035 379977504 973664779 797783663 835424437 397797075 814477938 842702449 863697201 849233293 988912185 306331303 826508855 53718112 327442636 473800449 645874705 391665581 499269310 579767445 825082947 560739647 933106225 24456373 321431596 150355463 734600475 745211831 832852773 804040693 909045435 217157073 226141861 737231317 813403712 640674494 989624583 819987154 836770976 765856685 956509637 531285682 760112498 883815001 914842550 455482481 472812609 264876777 736358989 437756129 947548972 304187712 338365176 163073571 283890985 220093777 522692172 298625428 788926230 831916356 902515679 437159311 580783051 534974166 682181064 959163324 993270728 280524591 892113291 230666766 605359746 449049684 617884202 583753925 680597377 707912679 762678402 937133770 967785013 614922883 734027185 718575162 760690298 496684812 921309711 720362753 801287501 616012797 845955892 587037595 780399893 690316356 838103332 385144375 655293567 791285054 953073091 286244730 675883860 150003912 666324470 202705417 981484948 291730065 878681908 298531182 319642644 924388636 933038455 75378686 927555945 187672417 708085971 779727799 832868056 308137820 868036230 125112913 382834742 644044799 723394681 464478036 857537661 280119465 582547273 174610803 471874970 572720756 910353818 419965306 895644775 582327721 996613178 19431098 287585114 753036657 906611356 531917429 896633080 96893468 470298414 790931565 793601863 379797892 539937473 962047237 978228793 238300621 574169650 42534466 401408028 597756189 812878430 272256350 973041087 225465094 308341226 87989566 626049318 144409890 830169774 20695794 28605228 657465919 810454308 500677893 996224798 607137223 885793654 556418401 886275185 989162695 993745103 704351024 965867491 210611877 851436737 131617580 619686049 5516360 969532449 529203689 742418503 126812887 212252906 640011911 881117405 25629836 234765000 594812393 963045932 154574363 899767266 471164095 562265855 434617747 789742115 85741328 926367750 255061175 844015537 322496763 683389066 910516721 950715884 129071600 539237129 892647384 962309984 312251260 803016444 72898655 825986994 750751324 794434557 473771466 579005692 616107070 709940568 454330332 791669843 233847779 265489772 509822603 518871611 494744593 761092082 596397551 798204570 758511799 992872579 179767533 623517232 396829721 952025556 593924557 844713246 3168274 321559977 68455029 556033168 462808645 582285290 554202175 901651738 263524900 816104432 79411812 924260713 33125361 412399486 383116803 800046893 726858548 926177033 465379156 858012872 135885804 978191320 110462003 475859725 232090665 974107778 262099782 614710295 796698809 944805514 245166873 446421817 697052157 705286857 658525581 889163697 335331861 939032254 149265370 479075807 18877789 101845420 421123128 638659015 58604854 688188598 937951687 992290684 970745493 990080725 653631546 712831561 571796190 681348924 724235401 955737831 767236644 999350023 261462447 262677260 772847286 852725098 891974703 938288196 692209849 983988941 704652314 881254609 781350146 899995758 553760883 697493967 987583401 987682191 638386619 718783848 546967060 721992192 297015734 814125052 514728310 961990809 510577679 773201956 469501502 537893346 463521845 943839044 500354831 984769642 603448878 819295961 526302532 786905026 914401798 924752252 533401038 608574559 582961152 689378242 537631675 631176628 132849303 203890205 277928287 713541344 604796323 718022465 430473595 807610032 945366597 947162180 957265891 971347515 738462006 747449795 897486469 910929340 47724291 612165068 709467672 896097464 573423119 793916731 727629476 919499305 371326021 987101456 280252501 932056722 860954617 910198225 127891784 754112692 585363633 617715095 242583890 932105826 303000228 307734849 93810411 336108355 422405942 801477410 899480225 909989121 169688876 897846145 655016968 999709261 313814356 669683760 518220307 745673717 509842303 773630300 35816430 368116652 593650238 601963488 486075768 582273755 219620761 840235948 410251497 722715483 109117207 995306465 358206381 709029609 752315689 842716431 56148306 147950862 240419147 490134284 685270890 875527808 578825961 635303650 642972129 991008859 275899323 299075323 95448034 291039207 647867979 684361262 992422546 998510207 544769414 700320785 175659516 584321128 257629061 743343267 838128 770103042 365563525 947990353 664975252 920185173 768145689 963977873 555802293 905678172 594334610 636103499 226713669 232111919 185021518 402594715 215112600 842314503 558605047 938996936 384836192 875921628 709646465 916265948 12464402 908884447 242042337 524897338 12594010 297302261 498037834 607590159 966035352 984639742 181686065 281854633 56804707 659028527 563483692 774818236 147142162 312875000 187990547 463267934 104394816 911335630 98883409 478355886 937240851 977112305 842602607 933743701 974149941 999910987 555493214 651541802 32934017 763698667 376236530 630511283 995658748 996206534 104243093 428103347 450902041 513713326 772141925 808989458 450820580 917131018 140459364 769093765 60897663 736340433 648032041 681806239 668455517 845358080 711323013 801368323 922023842 936110197 551489162 872403313 945456203 964063192 456475712 476616261 969468537 971359778 582363401 924315578 669697760 848400906 980197334 986264748 162265489 240177787 60964778 160063708 935363443 938861307 409251165 717013895 584427479 672066409 777963176 999848818 295235864 421465069 488690383 663315452 783779114 936387975 337574220 698181007 554377171 632585075 702565685 780663650 352455845 604648887 228539904 602532150 971545744 987318901 915539982 980527869 919729615 982203403 393006937 432932138 481632779 641090636 319807115 845046636 589925449 944321454 526061036 803250375 55409832 788084248 897571826 912770229 829716661 978225944 177122493 666836592 759886145 976444653 283529406 545059166 526823267 988357929 430890496 433486930 397943893 501255340 333490506 507494384 301175300 477148902 862654877 893689152 748396952 897253104 316864954 599638561 71965094 681496672 738080214 755563474 474871274 516752574 400664145 637321782 485862354 806800320 542813054 707848658 396830017 683598381 700720394 947406513 358303707 578216169 68046805 133284762 306460807 510505858 641143744 850987953 719940984 787173808 979838435 985239039 159070724 744575573 732787207 997731492 474021494 830853308 250343093 420592407 738216523 812226302 369466115 806855220 241279959 318901231 849552713 970270529 653744624 995943347 338334252 515877648 509046209 726053551 185822042 235944289 823298692 860382819 190435663 594502600 351453383 717930281 392237483 960285375 945083749 957964681 172041814 637932268 162802753 291024051 614144656 749685951 414536066 902190608 222358217 958798615 869512252 939131151 147521594 844276333 167007124 276991052 516106517 576071017 824935819 844612867 962253088 996062550 706497809 918620694 162407322 614903954 560092742 911151959 244867207 361616841 963335371 971003533 876023759 972864391 771717554 915486136 211712900 461805619 598028205 827142922 337126938 745760981 562741144 572427384 656593068 749550936 476331177 527401005 173686655 185664865 868164027 894061763 658541836 813043748 13088663 948889585 351159682 806007022 719956470 857159939 513505133 593016231 225472641 745194819 699242897 945192275 164948130 411183432 243905293 656405026 149919613 222625046 660199254 684694960 627352841 925896252 906984984 911510572 80728932 282312264 880490855 887013459 744688693 794217459 420736388 659182273 765380884 916237943 847507930 935196852 548779288 612330812 688873405 767827174 931200687 957337807 173005891 266241931 464359969 610271855 260628722 587469537 483803972 571410923 527289236 865652091 514378979 849207860 226125729 720954087 464885063 798601178 620256931 687282778 828985949 916268469 153855816 615747451 962441649 997951410 804437102 889896301 316064148 537344140 43021156 558755865 213473450 599583379 146050758 399615006 199730488 973522025 32017911 875012782 546654522 866407017 869916676 969658174 262401736 384867955 987412255 995193645 162128593 552286664 779409029 949185473 371050630 807581814 142670118 761705829 492207499 879935576 106971863 999867959 12676983 23205124 327458084 850119896 708489181 837454525 294505523 796133119 224919886 416454325 20376838 468077669 928163818 950471086 196908082 745179640 842235047 941622089 390248925 461682593 176472633 620569773 538658440 721929842 184333556 537746220 460092794 885386512 691889385 786320196 566151913 781680452 974925332 983463090 389009167 432088742 130035231 170738435 702796799 877934663 128878720 942082419 537921840 896019921 475668574 827500567 8272717 798912041 837010450 937143369 54726821 849012018 108203017 447732762 675344060 812788802 563247436 941667189 247431116 679471988 667424818 910544278 425417214 504644714 756530727 963894749 981618610 992105126 930319296 968425847 238505181 280885393 247456900 437395702 99860328 738261918 71960353 352769400 662046197 835963507 589063464 815556262 86937105 800070908 492861416 813722005 136621687 604833293 725541199 818249608 69619325 615452316 780710437 974205318 924423885 943208879 848011557 922879923 586884014 694514179 743238655 880986452 300619346 637981069 711270904 982095050 137659254 189160886 191829484 990724657 764450551 849125242 590977287 780192383 113800386 809572763 638749938 932286108 562558433 566153237 440588314 700706461 474495692 590828619 869539768 992480665 238638908 400591210 347315235 421156561 152638999 720453963 695172653 808609391 846051096 991822964 809502096 981383581 258288129 563055091 926553483 995956473 376424912 457530741 63004968 589545617 202624216 453258128 437031083 551738668 991630887 998707616 623940943 776182923 44044526 100726784 307521567 989477280 440058295 484423936 568087656 783947503 980129231 989131704 958350269 996213727 854306829 974707122 965973235 983033121 213849358 495916051 710908609 744329868 413561201 624791653 617382533 712868691 350045298 783160366 868497444 957676724 940428159 997022677 346981604 465181294 181193846 804994222 317342234 460792842 138811209 954008557 754543210 849035295 651273749 757603819 96832627 710961804 755069740 877789698 426302969 929988219 850172273 920453716 647155643 713942148 426665050 948647031 930205471 981734301 232488821 907073980 999858439 999943528 728856355 817723205 356244811 804110591 329716239 659882963 931080125 948734168 763602505 898631036 52317914 202027781 54755796 338540396 651776634 866084491 282197191 767404084 603646420 721680669 851627113 930225544 914171663 937704018 610493452 746525943 429433206 821593230 320415608 806713930 133851504 539508526 599531455 665910368 484705817 877106069 964848861 966210868 861703483 981056904 906359634 924058115 597273219 712641875 210395126 640018084 35906528 612256089 318851531 603214574 353681801 964572127 767480451 946124806 527054302 778444096 349772398 594735542 59060449 478599733 581299582 913232549 671600331 718528489 390446526 719081790 455703670 845493739 594828684 611254926 104405766 818714035 979772942 993870280 925893174 986493409 800294306 843527947 702880710 725688441 161633213 451934678 198879949 564415436 959999340 984400946 329694920 785274425 440526023 800563550 859736834 986383028 896870174 979335077 109924982 597533844 152282203 304332064 19388697 200128726 55734735 790014919 818428787 995199651 532056204 856399861 314126850 618750213 587578582 862149818 378160600 892452303 644373403 959469973 151492327 707061974 463588734 870673053 349316266 879292001 174650098 691701277 997379796 998242073 144234343 162394471 222892171 474200490 800225500 816158559 704640859 882316325 416929205 489400700 407337677 625659978 436930703 796924028 21303027 143427433 595193582 758136843 925657936 978962768 44873722 526789689 173776424 908651664 978346150 987974220 540087578 663793290 559335731 852718901 851564667 882231144 312211137 347766084 369035636 378214689 880637631 909645475 499571968 847558246 878670933 997486584 961245361 999006692 547247036 692856436 581558043 601246544 474263703 708267264 116718663 180360451 397057659 873998876 660443259 997299662 962869974 970602431 687090683 721609568 306616104 481903154 572892038 637766442 164996335 631827253 718850715 986224280 888272286 925197351 53087906 132121474 333434673 807699920 597598403 686238781 417398758 978494619 564758315 904142999 550975001 720325087 233525769 686282520 113112123 176373504 472649400 713743918 5671124 236083030 930335073 983023336 994645696 997138186 647155853 889396206 442736532 601478923 32124782 462120580 224102665 514621076 313461831 471225532 827551801 932507842 380666293 586060589 61530450 743480811 450686054 479920592 837291152 883479168 250453101 849887123 117601749 328079177 496891896 690883832 841123718 872735468 967031847 968684770 23801450 790863444 345057900 422008256 862236637 903123034 469063415 983498814 901127159 915975746 38143652 413499310 135440048 973929143 5818723 609208182 664240768 933903512 873402367 990502941 170692964 252201775 361521511 460369710 911413368 957514626 308262583 731959264 305684191 882435704 396621079 900894574 677030454 717047325 54195209 126886945 939631031 990309318 127019394 517173741 707092755 936493634 804985353 810542012 310599684 444287159 531837093 893163993 316517951 861403886 181378616 872131569 332391830 589857477 388521777 771979281 620468862 947664576 373294242 745400176 858840693 880835655 34672159 291209122 406570368 719415051 597178605 917567734 128292260 254079383 834991230 892861849 315565918 864519803 295434749 354948867 847221855 899306770 208545117 814094492 13713219 528635102 349242991 834156844 94037155 956657172 355459263 900087348 216570528 608062669 374066064 563840110 909628534 923998184 259899607 800730400 22158988 691005642 261217190 450728384 854135033 912033565 278094827 455136426 331197265 960863768 510596327 565099776 101001496 473048388 83254871 308551953 214291220 782966835 31437607 492841049 62475163 786197532 572442946 696262739 281452162 635234164 711053436 876390574 895883264 959231688 174471588 275522726 176585327 384287950 466003851 760126555 452309331 723750469 233099993 536603507 121007463 369703635 740068016 943640207 765330103 969800483 267941286 519323489 117719734 824459709 100149523 405240159 700289923 861450317 977244078 987223164 348307709 384276271 353550050 730897649 892881556 985989511 134552604 314822469 211333285 439531732 979257177 997908752 626787056 678160360 934396252 948494113 207876090 369392849 259600059 955050060 311139949 431604989 182874899 855305876 803470978 910405862 204870940 845385984 922101148 988405196 878254314 967295594 923683581 989462299 415990043 839873176 62622126 654179001 360763795 639993663 667871727 875614625 634261664 856508112 47227269 528404243 895267731 997688831 543355480 696594088 505748571 854591708 631102412 710402641 830308271 855750817 182346543 311914118 241611661 871638006 47319911 528686792 580520125 649473153 698995651 941209518 572461950 719465490 741158998 958353232 134579325 704893899 11253009 491249873 661202253 970479068 10923354 413581500 444611552 841661147 679726267 701738610 25311911 243779024 456364996 774400135 128822406 385619922 532188558 637612703 882612403 940255699 637866064 755722361 883886640 889801858 468862581 949572602 934850263 935651932 618799224 707930603 37831362 165978475 553268816 773468236 845042516 962810244 315929819 981712143 687873554 823403405 809369457 958220062 315141295 984974973 634391070 993899492 616004213 616315464 248308234 702713680 825147818 948753256 194150521 742402562 589277040 846145149 711886362 998395903 723363440 803785084 7147438 680182032 639482593 669749967 865416020 950312732 787600894 922741998 677037188 959342239 84701006 217322775 965929305 997761647 756488734 943434144 334724058 461624180 219276731 781369683 747090275 782586751 784066262 805498066 511803168 779932283 64149232 385774458 809735 652700185 154183258 725019271 662613221 674504349 181048773 184235595 709756523 830916141 808487450 980096619 629138512 662551390 825861537 993351881 352760415 897820331 172184943 627784056 210918331 867843029 835147028 887087956 992396934 999869618 949885689 953050447 501979980 740234100 138384281 682535313 984531291 992246882 619263367 801165342 468205412 917633228 912659187 923040585 615778640 780610128 579817834 828051229 967709792 987083121 708124964 905013826 684706372 936358728 452947479 927747173 804278522 844932306 638400937 659509617 974491146 996084603 983450688 994603008 121270887 654962188 570545787 960880178 109356248 776662115 657974145 733701242 88596066 683891526 698814520 714068568 450146311 486823650 950169799 951213501 982438663 996485871 823626447 945711087 553391234 982126817 417955749 962396420 292324459 769515885 323388729 549721374 563058654 670650569 28245808 142157947 441299324 914667442 497816781 533877184 657822619 721157928 227696505 854267492 588088450 916329893 997751939 998895689 34300566 707230448 923563820 990168033 582267004 751267001 389835267 905117017 480381371 564313153 296753368 694373127 293785261 753331960 572664705 880671654 372432581 656862105 985778735 992101274 773810956 974021619 158757584 779677940 446260790 939160733 886875712 931699704 536169332 956430149 657200220 959483660 475742172 764123485 727202912 869210320 541656077 712523987 822223247 984627239 940922055 997240714 133601944 653186104 73630743 636107904 728757296 798932081 497417395 696500355 285636527 523992561 416820362 808561427 574262952 771289233 765234989 894303846 802400725 803257945 619414184 984849538 68776846 943454897 60008408 544853717 427887302 486933068 454870348 687823694 190215365 984477739 27820306 508584470 779404050 956336261 407226855 665030307 466780670 592197501 206953216 248351035 363302385 879040608 610821071 755898508 944610998 973127044 733590982 746988555 128751556 404996496 194733119 590737946 53788515 246155709 36584252 662830025 134462372 601325588 431703121 614836536 221718401 675673065 441190685 746248738 757419651 821867400 307737376 836644099 718732516 924560119 974368547 986960564 273180846 548668074 330348527 424436394 67909939 201890896 390095004 472544134 442599645 901827443 345461052 377992473 38008493 424211576 136563036 288569853 164271994 882063251 506939939 819186513 959548730 966855594 216762659 239999486 676597956 782995901 856911817 871699811 56594611 641507282 742382974 933960114 207635713 234461085 917928505 996258401 975709212 984927955 523890021 616314481 532937833 887771257 803925773 840763750 307498368 884452616 928275938 965634308 861958157 976265734 633978767 811650339 746318708 812583770 618148565 672930085 520653815 888577531 713211992 914372523 460796147 866453128 453114553 943532313 832958500 836541889 71358 807852757 717425505 904666863 856718308 951122222 260380855 446132679 164026348 909135569 637135457 643583691 945831080 999810311 659693677 960269553 374482849 476175230 241716836 648161708 580742729 588163328 763400024 848774664 58417693 983519023 599006582 792431427 488350868 765161017 856363220 949094190 460378242 651443197 495328275 682385881 532051641 614141429 146464226 393375453 973956555 974793909 109949778 516862065 494083570 615192131 771965298 826297537 43685400 805892146 52199295 699471138 724758924 998598559 495678155 875303496 284963537 402053910 872150311 980683407 989952368 991648478 267889176 922640749 827094068 912235501 391712078 638066276 411537768 588339637 110859514 580400533 744297527 897932040 892356653 974022222 775981181 832416129 28777500 289789584 458556563 686158365 394790371 478922854 252436918 391228577 196774165 938087901 119863892 777004427 682684133 867405650 839964531 948891922 157291905 997641106 11317782 382382162 94315616 651440775 459583686 516719836 443186904 604785588 343738808 941796722 103013279 725629822 783930656 819883324 880449971 882513931 778164849 897388648 317948166 411378734 512969383 584504175 494725124 922012214 356607549 976450316 946828757 953059084 310957660 750098866 798082730 841315161 964841077 989855555 70734440 229316368 666991353 994018435 245700402 342953291 97967744 841625444 877402200 925758057 343045446 758892007 835967470 866730333 65565349 482028338 511205372 866734659 531471359 698612547 117796206 827811304 278157664 347468975 498346175 956193703 398586315 632944271 769849700 885572958 514258617 532910445 512766243 619762936 675818499 788762732 149920705 487105237 874485861 981180218 552922434 800237645 123652474 201228654 87066070 409455095 102697904 414106890 342278943 402478926 40408346 633637963 321569815 901511339 640032708 845475816 427743885 808011554 627659026 738384806 761206038 920394585 95913925 447114495 349194415 837397610 48917911 494052790 28941216 536047415 122127293 556281911 709124707 996940945 99617535 117755165 475093872 977037801 858856683 995417915 18061880 174477338 917185183 963360708 644569666 880558755 579921212 799050892 25184722 64408906 762254636 814327538 309961897 696356653 70210268 547980262 366432865 523470454 979386664 989086807 738367723 986869635 254358021 743017807 979939457 996094771 124460458 428187745 669806443 672050971 620395472 804507369 785459899 906243524 688731378 993825837 710563271 906457624 138863142 888820917 479796798 547339306 772214000 818954186 158856731 259355501 496607187 603334654 558716556 884562090 767313019 990287033 1381394 749127622 196361541 467911155 98558044 326441641 465280885 713167428 797789203 808471417 17670753 547446758 890221991 943180713 883845114 941729475 899432450 913031695 999942439 999980431 647241422 999388057 33035783 967051978 25608200 979258641 658031744 721891399 659006056 836781181 952576545 982639911 823918633 985134610 537948838 637201083 405683936 558199980 494425883 905110693 138498147 238233565 396277702 791211211 125468354 714316740 579776505 840407532 37373940 56756187 258086246 569449497 395960771 403605118 87780941 296717527 376615729 648814494 692078209 926742248 202390479 896077807 513196990 850931074 600534431 686882890 357591505 649341732 606516652 852561122 984524702 988654921 239372315 356144130 612158973 936261733 826917739 982703201 965178715 991293439 967546427 984544143 452493111 560730716 295384754 404171339 801635135 811172413 959156845 959769753 442447954 729042311 32834890 381745534 464551692 966177237 887513260 981967814 825786351 828607323 667741058 987993983 285319364 816882954 628730958 920690389 38637302 790391425 431676827 500632906 776071967 959207717 724499890 738246080 377841798 557016817 120574559 969684253 517314075 799644264 258506608 597644280 84782449 127244256 869529793 872263654 281244007 950926300 477744848 602659911 98653560 896120015 346991281 372048427 775206973 843156531 881786044 918833853 611971050 854082510 212029706 695261135 665537578 899505866 250989895 524093621 394037812 457348601 832466205 902179422 244403753 951585136 824853562 825295419 766480990 925948069 815295800 986812342 866678730 921387007 570334328 579093121 794851051 805840600 748568115 859051052 610652024 958989209 476260368 987620972 779662229 797407639 800859776 819712930 81750412 989881523 227611872 315225967 541665441 990387111 882702622 965317607 903547234 918369515 305132101 515875298 939939291 949421879 118752110 236765810 650331561 971623240 528383655 538040422 206102115 498900639 84120273 825854816 603982226 757876412 700328865 848924655 985190638 988023623 431764944 725428691 353444117 515829042 232696834 303136863 501835210 995069578 10560994 841406309 142872379 799498384 357416415 508215030 186682745 652653770 956557460 969563643 168639636 904510076 311290996 749666359 843563231 862858187 466276342 615637730 736047567 879590309 712761782 821238400 393526058 812561910 745612795 970851909 588316051 836807765 267028663 385226873 229943889 688099651 806348845 949359090 930873108 951084214 917311100 934478855 307036808 479143706 553144037 603591869 925667250 976187705 392744762 913835611 637889576 816433942 588340213 767410879 222146645 854393092 123367566 941174879 957186824 967481763 528860373 911527034 647086544 757787199 834783682 840327086 170303480 273209174 121945000 305027911 415218435 487551839 276124564 965077764 579631630 844555047 438184739 552984883 694461621 990337648 241703931 357244665 139026690 564336815 936852188 956614804 705543029 880272507 85258506 609985681 954664459 964314207 914429245 948087924 812038670 952833341 688090470 725416009 641526705 896382183 289125110 320134112 959786860 979103105 280867986 680117228 846948311 909920858 49526926 585304836 868605631 956328868 404367912 417732977 754500568 945931372 295879070 449114918 237350108 975663791 638141337 886872482 691596634 937498617 996970378 997015294 963070715 995463220 74899493 756338338 202412039 710476729 720479825 977361119 128879062 822243135 908820614 980913062 323676214 500930109 948398787 997328234 341472186 866510292 478434873 478868636 407758449 826040884 249765062 738034269 718045075 726022596 478227734 903757608 98780323 764646250 759832390 900681921 33076652 536405408 430757631 559312394 382824819 574975798 522160138 894634121 787926272 812545387 68289239 389954864 916136021 959147021 98558986 992784664 768216775 861857688 35303713 717407624 217922455 965373544 934621574 951827747 731268333 895556113 373246715 847738061 706809643 820941763 586634110 655480938 741607268 937402951 375338128 616646375 457457229 712105827 823321978 867398521 615108259 812796216 964471623 985783472 808830257 825726375 579877501 774188753 501202317 623888236 843798251 992685024 599593496 862867857 336256033 901746973 724235523 861796388 99957746 226252261 399288727 725358823 335764327 592866556 911521624 953735477 861758350 955493469 989108303 999135205 150819607 376309961 490272766 784440316 163999823 888338762 928447322 952070789 13846160 419146742 632212015 796036776 138076060 264253521 350237648 562437634 364937663 417234522 212763877 587129516 231605106 856911620 759813861 966341156 272297996 862729722 173097425 562425188 279051106 886636188 574206106 978239351 337920573 774952657 499452557 921560001 994912122 998322141 59113584 309358771 522878964 937567779 395570989 532906942 529610774 911045875 507983774 859274145 876227151 885527648 318428854 738761369 68101567 696846178 968513370 976390498 362638959 466675901 343922505 412211350 249731686 634422735 234130486 981766041 440249923 873854350 436511792 867034862 387071472 878032001 708281275 747011183 953039250 996466957 621682553 709275177 22388954 710674031 945216243 967013541 976634046 989412121 446675352 629579340 269066396 397919766 972600213 997683902 293110409 783170915 2572092 944175856 766304354 905918852 532807191 914918725 747183568 928444507 746602992 999759221 21992963 981054715 28738300 832091016 805960007 971792914 641273436 830057441 830321564 974068393 335189892 927163683 555201076 616040292 274157044 627074669 479555544 784906680 204561775 528203503 691540864 725248776 27277469 601892148 872709350 985778780 95108787 467344512 488613980 832286673 839749527 969825351 560795185 690742590 416044341 448034839 558677406 676030224 576005623 920425212 585428982 919021674 128002013 663580220 401486231 824430150 722437953 980048912 497078793 731305868 853034674 863773970 681271275 694063779 228202992 245964281 354949339 890063172 707075354 931754558 252564381 618128319 528743756 552349551 6335904 197117145 840327429 953492256 402733031 770700200 858753725 911737277 884472519 972245521 849862882 885863913 701887415 942889038 436206100 436832325 446428816 680899077 985768422 996818784 685670091 787482386 486924247 874473548 29967243 735715731 199251493 246388064 132414009 290809247 135260535 279981874 692903017 911199003 911598009 992524960 827101015 847417154 385038682 839994024 208933351 741148679 171548370 611510968 712255866 977553426 686771058 742497404 870583439 870860331 672430863 893705117 466533641 768650809 225371624 935492647 212244605 947621103 354570794 866023127 441678164 923581542 915459272 959084933 405875826 899295894 750952579 923447804 699346907 998909185 208335374 254147953 192369731 480391139 336794775 462982142 583461056 911501555 855318872 878747030 872436930 919395663 328601974 761539987 170731943 727626467 2765432 849005932 905194438 977068253 918760389 979139436 245361884 886439925 537213304 825550527 375124528 789886094 85236657 96402476 280753606 430309795 213778348 473892580 145899752 835643017 175308438 613347425 291622341 885749004 575386510 577472611 44497806 310182512 132217378 773905847 869525024 886830740 343621436 383906026 99843656 596268951 98880806 679525982 945783664 951167545 850380254 977983808 302023237 904785600 683611553 711656690 498927690 600222247 753381467 924003738 314436624 616258385 335883651 682559743 667947740 845015639 797927017 806863299 268248103 561248277 30221476 778072425 189582949 318572152 272962159 350759773 231861045 407374928 985576585 990564261 535542199 930395393 786151005 938109386 941670111 960129805 115840811 323334378 22807928 840502126 194166216 924676027 512263652 533264666 960528304 970372386 277146538 679876535 50352094 810102569 983150519 984314815 827772261 859221964 303378434 426077107 784462920 859203144 498993284 727877248 404473282 642186887 551565880 731740919 874287898 926276130 666419054 834637730 216697364 779186262 260946908 572692092 129081253 977082542 990940522 997714206 322101885 512430752 543223727 616462856 131596499 266836125 388014994 647150088 937807250 943635392 49754505 709257587 297934536 775444241 831049681 976366570 847166432 973356713 414871591 680186949 398130703 694777036 396525522 639224647 960346490 991223816 491361303 774277700 736801863 945753591 214692679 385676346 78971079 501244220 597773800 827217250 576759116 882347780 223899819 447357023 385726948 638536234 400726094 834915114 529396497 940469050 235541536 889747162 445300285 580531628 385537 441367698 729611023 903019045 535535416 836769283 805501170 885221700 829223033 862793552 797738361 863042647 899770821 968584685 421982830 761774315 554994756 629457967 751676499 757169225 711876039 771209917 604403710 893615243 748619798 762902578 821825632 889806390 792794984 970863653 970605936 986644614 201496109 309371376 667743052 968940303 692095039 724802946 869386028 876786837 959023078 995714006 355576112 945579326 315496773 765080517 851825958 877907876 292077768 357296868 279818948 870808808 488616128 609577221 486754050 879656927 484776508 801742231 474695102 517183815 756981143 865069821 390261608 645535704 372565297 379103079 205187636 555658300 904197502 938318371 345050922 384821816 605644089 848914728 960898183 990819558 969449878 970116666 580013247 934056042 331841641 938883417 74390364 668264529 814143038 926314862 222572415 895826681 640006777 971230904 958793446 961301401 744795667 954417939 173642366 875519713 205791051 690774658 512903127 792904741 207559704 510688150 663385026 841498909 651443221 714558538 50781668 186014096 750769036 822173224 544664065 924940406 374468486 416907629 781309575 887561716 598606167 808994181 745383155 875267008 520810533 918886452 969077748 991412792 37633460 140644992 257865129 873010528 893446197 998861874 461936742 932684625 571142951 898935816 475941765 509626374 904205038 917604180 770689389 796383781 828180126 866161207 224129419 557964618 781882690 928811553 56057482 147269354 965406134 987741371 54668508 604478446 143784215 442626909 499144422 568982670 767033153 864587311 315098408 575117965 570424560 687364466 628853992 783459928 52434483 629157423 874637445 895210553 921993518 958662543 370307982 380514041 719627340 728528980 348229546 702958851 96618959 597750051 266058115 454136891 494110461 658144842 702164525 825932457 702021967 895184186 510338304 743525499 326468097 506061882 198514783 295296091 26381785 238831730 941974205 960249934 956728596 962108689 829404093 937690688 728333955 747740086 748539842 915727924 166449784 330637109 109801720 491331199 532663045 694891464 86983852 777693404 405165079 935540919 66404262 942421147 177810887 805644845 572229528 603446823 766795231 934288191 760447666 987539485 135687703 192345807 84909484 253305937 601508055 839121101 195852442 995573163 311187307 900042328 271956882 997932074 657090375 943212000 194280083 767796181 57328723 146618928 344691043 669962783 291555909 793319691 276127459 472669209 397961804 814839042 974223332 982198174 316188387 989819730 805303624 993800980 413556066 948945212 465250571 792170972 630423594 978337650 184324512 454685221 457299647 697692529 278660658 996097741 488350187 709684253 524893754 538113325 585207657 864752340 859436905 899038450 417537390 607270083 764932005 769155213 665307166 729405125 258335150 881597498 104691074 694497826 258101045 455914998 668394270 809104514 9725675 462085511 595976561 616553099 429586753 543962006 761795973 769287410 664649461 800971838 374225973 823626990 690818422 720410917 21351377 109087966 610579316 921652908 525244579 752488198 493338152 869696909 784607942 978035380 11198377 908090438 452312973 745487749 481533210 800728270 849412920 950773389 4682488 489064109 378488573 986872368 819274997 831691447 754891776 922261449 570005411 940277865 575032107 950076958 919138474 945149377 41606388 714325002 613222329 793250890 687778558 730281940 473917637 570657881 604910169 771331013 87390848 174015252 90304006 505694960 63146640 858988049 440922164 904271597 731743416 892148407 489348176 977746005 902994358 949390897 61345763 273640223 501508655 801442320 875881988 966996736 678176243 980813321 744241073 887207297 76154134 618613605 938149015 987256588 457407581 687441940 8797084 902284624 976064488 992246065 188810550 995571484 984272959 991115018 988736593 996350421 472299161 732870520 3337502 490098867 518114744 916479888 637695034 984018814 679027234 950924516 163902541 412657080 48300628 572747205 617735683 641604547 878321032 931207718 407845460 899111717 400231899 511701427 247836457 601402485 497842333 932496864 108232357 557685726 851107017 932628811 331427234 690646596 320179339 427802276 252917288 728254164 837657163 919692228 67747179 805599796 143138659 573832881 138067364 756444353 748365394 757386674 785665467 842614024 311865552 438205323 82694496 707841084 615600171 935593860 328740912 816078695 655375572 668924128 261203161 346087282 279299695 704826893 206074120 405194168 990179483 990593015 734833637 802360553 254068814 876587990 556185177 682119541 751659531 757693459 73818955 374723564 363251132 571075167 937010926 946913018 310411981 869195549 993790817 998266449 887252795 946474809 372623275 805989525 293361320 324914624 813740147 951228696 98204887 118219356 257053395 303069873 487865394 529548933 486564524 605040618 998286753 998626800 312015653 672993346 740252204 913818804 793713520 885957825 465200711 839232199 351675230 647999819 501414358 749802064 439508906 941332066 300597606 573985488 521077665 651557902 730478269 845403978 801503179 882447244 417391663 439019024 715762104 730473836 788843574 873130173 564610388 958447021 262142078 603721641 769224643 913879103 139214250 878334793 935842464 970074339 570781570 925935422 528719580 787491337 657963227 869272990 293554392 382985796 476343949 499084805 533309396 859072212 469503571 878418621 801358185 907714069 139099031 977511586 395190442 820949694 306298923 322009337 605821370 954197739 103014890 769255060 567528636 956890260 56407075 924375419 349491450 518459190 798878282 914127269 867240051 951923667 233375333 633013188 570127587 953073462 888324815 985399451 325677541 634625054 353592424 907782460 670319256 772001347 3959042 39507941 25223234 543845394 161813416 773835983 144341976 800441966 860362940 866883466 904161229 962716176 918470662 974233344 141457494 295826653 834272131 834860781 140337726 809565657 57368611 170764570 144569084 157154195 849585554 912515010 215031216 439466421 571062808 706464632 337074639 842294943 267193140 321954225 266641827 428574643 808801582 954960622 872793412 941271122 959927474 971597104 106816061 618451228 270795944 528891472 737818171 888614407 40982340 475187502 832707234 858766826 559801308 849754554 309502302 743025560 182799631 335505425 144939371 712363090 234765353 404073622 673013863 989228556 114793507 509957044 764409873 911009999 501634519 800507974 535687825 851272183 263836444 581718359 24708875 685234408 204898003 912030140 13377871 619191608 115722330 251978900 995077212 996537903 319528529 827245729 673045877 677164346 953351582 992119437 219240164 464905525 838707788 857198311 187402356 400441034 900356455 945171647 784072923 856315203 659471852 973340338 840962784 981187021 942598678 980496847 55956972 651424749 363022545 999326132 705563068 892886552 959195886 964135726 950277750 965314674 309444544 682802355 10836220 589659093 349441847 363657549 188543043 749115916 886274954 978411605 4398622 878879125 883458342 980538274 777979232 936433244 938802997 964250734 36185612 517447975 946343018 990103979 593249990 753192982 435293490 857856723 551338456 711505428 501308625 841501359 682545487 922114856 481716547 534932157 158103125 950123137 611697605 799278280 463512101 668493428 591694742 914511905 885766781 923663636 743797670 795450658 693701349 816973481 838028498 948365460 13163679 115131147 68635288 245255139 496235620 950928000 457793565 971883548 253307955 278710800 665106701 795460329 640352611 795174759 837045472 860558523 12626862 546746592 158444693 884281730 447732575 920381067 558931991 662242909 363107188 855240506 264727099 655612565 46513315 648243266 671811882 805331842 771626073 868178816 339584934 697650620 561656580 915917482 108391203 307561203 676218991 985183089 623240590 713590166 567826909 630605638 445268139 726524285 679114641 979406873 219968482 636845225 715128794 760413053 533009517 925224384 163799790 678400846 633992892 719290521 95251764 957884596 797616848 997389826 760834931 859455757 839511703 976123038 308869425 353715487 494768358 776417080 238675770 392082719 420210303 679129851 759723788 993756130 703020504 870109860 663611400 701790332 10203592 474137678 172151607 517696250 762225669 985761592 518142620 629410342 599195110 845763832 986445684 999916338 963921471 995896531 187888187 367670786 4044325 24914819 546835848 729686549 645101038 951254677 303481723 691853314 835581418 971303956 660348612 892282097 178780350 674195239 581226707 861709497 510710721 512391070 665425705 736892676 856498812 974100306 598282635 624127483 732873286 882014281 334402270 690184170 997234805 998440445 600699060 858603340 168462855 609696062 897004586 929408692 357983915 777118547 301298906 623066070 609645555 649966948 590375526 621398798 285170097 415074961 535157059 578200226 203008646 338189474 545806539 908281564 455507545 942885220 158788239 856342476 894302630 963159760 377339364 503936538 510002112 519012710 190225183 639507056 956052116 999263569 951708713 988380791 33999662 440489128 876848463 945301577 338080368 995611388 458762339 764746034 121848065 357173769 352749823 940933045 445265063 877262261 362561373 575093846 71116614 544436603 111281824 594841148 140277771 747486798 126902731 557435882 15918192 905659454 357126140 814572866 120995372 236461273 225500358 357185447 593191071 721950614 325586342 669072222 323168493 989306515 880304976 967450566 904155672 933360135 576717423 920065055 212631827 720688596 629192900 755019957 802511915 886189232 993008390 995641100 409678227 719883375 414262317 496507432 770274446 953815104 923040407 994076880 645332308 860302384 2125327 805086677 498924154 730602751 271989760 898900911 142947897 197483522 193282624 322514547 601780903 960674089 970219794 981041477 709175996 824819395 511975751 692685627 999734806 999909767 22709215 36602018 541530788 579845290 230407694 670276637 212824365 815058606 974769071 980490584 605088615 734428101 531234821 988388035 520291022 995275983 724062184 738831881 200512884 496495303 652291459 815875946 302760873 680865532 696456524 770591361 770236800 792751286 396332100 743829087 345794117 453133722 406809644 988763140 23140067 960821167 89532436 747972414 85936885 657506204 654183972 880807158 504780873 736003447 2146081 234940134 391687686 599282597 742018671 794688445 627561502 831211297 410987439 831662910 428747685 700530688 933999640 952605168 522368602 795112091 691934987 739485829 837259397 917119566 193368740 975884448 762516489 816180173 698875573 931504735 635231596 960430303 686514761 974039570 70085977 118505001 575380219 981084464 685457149 749431284 195706743 619940769 389403413 725648930 583279012 613523574 329881181 769769727 342296644 962025185 264452666 585555402 383774705 742862514 615722540 789209039 98976507 388359991 541261496 635258058 634487986 701126603 789884727 896080447 635503962 683438969 357499212 538487479 53284001 600850080 558452853 696444120 464168896 488339318 405051014 846045716 233997911 252137328 121493980 703455583 714275523 799353945 548144535 693291591 741662777 778603594 522849641 840688775 98607592 976675852 766743977 931818083 943810987 957796644 79338072 920507221 631451654 959187802 501409455 681079756 557519192 807189722 165842596 360019746 260300938 602932357 891404427 936007616 359040775 448384936 608129571 696663723 274534208 875729778 385188494 766606206 226554537 993639038 744663210 927659144 700038660 741332824 477399067 734971227 227916652 871893232 477150970 820152840 540402671 848779182 878154974 976459778 503513099 973511928 272252473 322101988 78997182 986199075 855063592 904392856 276127686 473250623 466980587 634502776 5650008 262122301 783973887 966187783 612266511 826479323 659313611 904836795 35730156 870926968 650488712 692599908 551879616 667945421 627818205 653312759 464563536 658244511 619382927 979116837 359029698 848554214 522583435 678243577 443810287 479729681 727585561 753648144 121466212 863401295 723525663 917883835 915293486 978071004 864200464 928924478 374000293 667931064 813442562 995143694 962216031 964098279 626675778 978086005 916251708 989969192 462248023 703628353 442248441 885054578 170222352 945677883 857606170 939767568 773238578 888459753 605237832 703690508 656492023 851479932 501194435 911686731 976650848 981302853 465980835 595302444 878942532 894837619 265065367 556254990 98327300 790179225 559998920 783349644 193298838 699379068 910375119 971400490 74571539 171638832 816546173 961172198 895965037 953969918 254885538 766633218 660257214 813970423 295581459 559987297 987226588 998459206 253739661 401380858 580932567 883977033 500199571 504855949 672320395 692732088 788110026 865837890 801819549 901452774 174794083 599042014 807834774 969847240 718987002 891233651 520367391 953726952 194306251 754158382 231724631 385762086 941460822 976102639 49879368 289815538 747957766 888084087 797741937 905653504 601441978 753478349 396318590 399740980 420130967 606712999 333710473 719522071 866676336 909040992 466942683 668593878 241657616 497473074 851378342 949330645 279486969 797254591 520639169 601180455 152508296 574234942 970876050 974341175 411009177 943212108 830138497 912289733 395279359 982646783 227975856 562806834 645396422 773945562 822587104 926120034 730962124 988208321 853644994 993897651 966817610 997748371 901532147 945619985 494083247 611203597 607931304 739641242 604643744 978993895 511348962 850074870 243580417 514911433 66486338 428338127 912978776 993907104 761174841 907427011 977175427 991744921 371987936 381025056 788976011 972703868 621640917 771420161 123064607 709318594 243768061 422861277 374046636 954632675 648683500 905393289 690793182 958522559 428789756 616895168 519715843 974385486 508831125 682237043 335759380 340006829 945522580 992395783 445285514 722387585 703489792 948702812 704471076 764927672 810419679 840313285 685215615 958782128 552702021 716609783 181325581 611613641 723028231 986827783 486641041 636719837 88598622 126776712 584098084 828978999 15914352 28851747 531087128 622157492 274954516 914774427 348226926 605682913 754941622 816381983 248679981 705963671 735176106 923263727 566240348 596866380 724542083 838300453 909163414 920362545 344365737 347624357 444413981 594854026 349022441 786644950 152622205 364992245 64366116 680340306 329460775 512304090 387601842 814742097 116599911 157446379 938183702 941195736 15435137 829280656 459916348 886691762 315122925 939980367 242145264 254114529 695233141 971183927 593694902 983697324 302867601 745440302 13578489 998104966 393545879 754150328 20228221 538852374 944152022 964076404 732348491 986980559 709673249 971582578 461509953 785509639 915217074 948924183 785251737 980919348 106072477 665261178 986812949 989612046 589681742 753415475 767201900 990238338 570991929 976674805 357241042 523406722 127953199 159691729 61341630 441235562 957190172 994925388 749710366 984202022 731222896 875849243 30466938 111421613 215127518 777537137 944137599 980654862 14181276 68219754 195201032 337517644 139869578 979375812 987992605 990233164 316794589 519568192 717258984 793366608 619336173 666310003 99469391 754502016 890791141 978728564 129481285 634029837 535544756 536248276 961946122 994646566 989931455 993361580 908536927 972724859 708261818 936001313 155295069 628558622 531075284 879059701 188177706 542652187 116314469 382396611 905963009 971666579 482100547 786274411 156247210 486539590 682471498 691794512 14443165 71327966 505395480 874084381 691187131 742542787 930640604 996752062 486466399 856424476 522582135 592414004 739744419 916344176 146258005 484168274 225445782 392289527 597177201 644683382 318839650 824048532 807454719 809652309 525300164 944986769 773468247 786574574 405360002 459051981 926216839 970869773 484355585 566075582 689601512 869452855 912160843 995123319 295763347 632347704 968725972 973766944 102768840 272075662 230745381 728010916 655208741 885284136 296473844 412251342 942437498 956360231 958734885 964319525 834372599 837696252 699305216 991961746 387171684 669593286 24708740 146525594 444644262 524391188 975705824 986301360 85891148 579781758 761835777 939772240 880963743 994344870 355223578 620182014 769961405 910876912 874954360 925263625 227774844 530865744 634084460 713840367 363113734 914591163 762183375 797473427 692522572 992165176 681614218 754841225 122911626 860858714 635705543 865430095 710412754 842998588 683720802 947980432 170525843 810952623 746482322 765187739 873795689 913828024 719315376 911351300 235042813 939511613 796208973 953242486 177501273 598206766 498292153 868929168 598682187 895374895 844860962 966126616 147091677 478445000 566794025 742761504 595972037 932148933 72009547 673572103 133275802 240739888 939213907 966546301 800498482 991756488 764822705 861430686 38708694 996855824 683868759 849153574 373504808 893330849 528982413 800373630 222565881 235447307 993531593 996815832 212099546 335809281 676782509 690394351 560649726 760580768 205823114 790767508 119770019 766523600 76232219 740905142 201651954 957205807 146303622 470479233 127262395 196237874 637245209 941773522 322194220 842497442 722848513 899669703 357423377 976896800 915980679 916989928 978470042 992712051 414723039 591631948 921269704 955642972 660651630 705280408 127446312 486490060 287260770 798399175 971640699 973822438 479994615 834765121 37126083 733307327 573350274 635705674 199635269 645541521 469934165 695922463 966397590 979177276 229397118 264343970 722097079 745892752 102545244 273104643 354607510 770116530 736357869 933074767 91815301 917369831 233306650 601652871 616001320 966704980 828825642 858493387 130327849 772396018 589353634 785904206 973167530 982938069 981727449 999874632 5842940 359303812 31326635 914265121 710219245 937191017 618731495 700656380 53707406 202401181 461187285 510252207 904441800 994014911 551954430 995168383 222995228 511055719 527899847 692850809 947091135 960743890 589660737 985502820 710024623 863979922 219613267 665072963 469494546 813685038 333211527 908870397 189544199 575840111 544030338 901391364 644302738 933908229 80764168 202571109 19487128 854963187 132536246 372111226 261540755 901695990 450096279 675818035 591423622 745084160 172310394 863364842 272865565 588417273 775663895 926503453 739782718 958336902 725990165 831654007 230453524 651788020 745546912 779572944 865845102 905541253 110701526 253316062 137308901 743461832 204718632 275434337 207135250 343903493 752228289 931742680 260973854 302593728 517814152 926648780 453255797 808872917 54944009 569515963 707257470 909170415 223277121 644669308 285908267 958947710 290321915 773111124 708548753 964653472 297005418 655748304 424723505 540310421 878822607 952355710 761498544 810727622 356642912 439655464 753447286 843498519 484893940 943722543 604430021 703211636 164245450 273361715 497109391 824598767 24832977 167554389 844804796 891874640 345108715 633799991 232026604 675509478 956309853 985284616 38622236 889817005 616794520 717898959 84687707 780974204 978284454 985096437 752059301 926481555 869409830 980924127 866361127 900811733 947758872 971820171 708261442 808261238 397448119 730087743 538634217 655522135 162095507 844176856 549871171 613664327 329838361 386415650 593665739 631025097 311285543 481137083 65400382 117651860 155484181 364888407 869483218 995873393 246546134 291565601 367617268 887358608 575068440 949549076 353533361 375010302 28047298 598276382 197993879 849163468 901900972 964661605 542545284 675516438 69607692 197936284 42393743 115333282 520209694 539844594 910450041 953120510 711074174 962023261 150240901 983691280 286542618 954913659 789987105 926498419 818032226 933171902 113683026 293582084 833465658 937060502 778892474 797694642 888577 759686093 20396774 655602734 734845813 866763778 523470200 666860342 741787194 760271847 45409143 985808252 438498600 652574975 420432740 904993094 579498625 857199655 240411620 327780999 16166143 522551860 196730827 405889707 74903020 525647472 296306121 464722285 464780954 895720489 150184876 937952125 30023458 236546633 83332907 407133278 519593931 708297585 200453442 445641121 323705562 589602855 702860634 846186461 564311860 690202025 58763426 943725265 68171878 229740756 19390192 632785679 115131209 886740364 606083170 610029331 20810487 693863401 480603761 632173190 388512121 417647477 514536866 686530572 453942249 874275792 682095821 892825123 233604935 913002202 988768236 999028181 511494639 534262562 327571131 623913643 703840907 801447831 454562749 931798456 299091680 432832454 168097569 852990849 561684506 874832962 521082562 685068916 523487443 664485992 820774202 957131702 420225499 530889797 216995051 329814685 856901003 892459789 158397543 677637651 221125511 243409437 518980806 576420544 331136976 362450069 581350023 726187798 599916323 887375659 457106181 796205372 122334661 923256411 424141738 515559624 511541737 922431515 91930098 926279478 541167034 838279745 262480926 690432180 76687091 201531147 964917688 986015898 992071835 999181214 218472582 970433679 269813509 436113731 694695037 904971575 632869580 907274574 562239467 597116107 729316340 947848059 765508332 854204542 213400790 213534227 691848353 910863825 237741754 352755625 949349842 993583278 792142266 975172949 217361933 628175703 84453136 455709986 294491985 551469313 795675592 998231043 79890585 873225739 982056866 985427880 641326327 921838547 852710399 986784240 114475086 543425692 532318374 634457588 24305073 435363722 140315597 913914409 294921798 426027563 678976548 715277483 71497954 368621491 636675673 862044522 304538428 323470744 343969945 707872218 530515376 996983600 453967087 459357472 165471790 224716065 257425953 609261523 342840835 989337733 785452351 957698686 237493819 947034123 429203134 437064807 842117579 919108586 237078616 372179863 103075806 926769686 560073108 769462613 614675539 818220913 431345303 614663449 796403865 850667301 852917475 927432568 972667676 999638478 460299009 833013209 416597103 444746193 419021712 681360478 777151005 799013009 587007088 831236693 241195763 924629856 49697117 660956939 222734770 861700269 293721884 317185804 604708868 731148145 832116255 876662661 714174903 930958822 255502820 337200247 224271344 894305256 955446562 962760206 37588564 720832399 403644448 649416732 754783605 787485664 450676696 460660385 849425102 969536546 945779699 997765850 906244688 995206760 332114663 732497745 586609599 923650091 655813114 676610799 834157528 894586134 387170592 497932752 982894941 983726506 707930201 878388550 131906333 472488918 351764195 877906842 927424358 963168429 778353531 844297977 72354804 967741751 11626524 636149138 807112340 959497424 669235354 737898695 231476271 654140462 133801015 313846176 488855478 820964918 128043851 468884312 612617130 623564760 13372963 49514023 930880793 982441883 500300924 811470743 619563819 858967538 859815766 992202776 353778686 478749324 781171257 898660092 961638676 967554600 90140738 242627025 576315176 678307563 839806123 971311136 714455717 967456938 776045477 885884593 739339561 963408294 131200900 798329840 218465286 944843985 936474349 993217214 95089062 957703702 660536043 851483508 844899784 876145924 382199961 915991147 571532628 632808785 981599236 982890028 91124107 433973623 898429825 933208626 255690761 970209305 972173595 994355866 733037625 844815560 527113057 776902153 572027538 799364325 427137204 770995063 531309027 794928335 778417110 966571996 488309706 995918263 584479133 842132849 832348676 988015620 7768991 769010738 687004933 826336515 462446969 656087911 668347910 748224682 113664927 301089350 810870859 935741213 135286413 793160968 688426240 869167891 305250516 990251175 334303787 884877690 347172584 822136234 914915800 936059665 480146539 827938301 561974464 603363701 343115766 362972178 781935910 783903778 866714516 887888117 661808494 785250608 995782969 997887559 658134868 658995367 962972566 996145805 486497415 853907311 153073884 352055397 944788646 970345159 975760530 981822123 228737651 487118830 488267148 658799473 214883177 581552432 980895302 982380339 169559187 313890606 79078018 201978612 7047364 736157612 300139780 894683625 776839345 870330324 233396293 288697874 533024354 973643853 993491498 998273377 257037859 460953389 887213326 961582826 296758775 494904373 693429454 785072941 485090473 528551791 122564047 470920537 595841361 916760291 96428764 170581647 519612480 936285404 515803153 821178175 136923508 253187936 547548850 788454915 511951939 710808278 170036750 199657844 294278467 973352119 906494609 955315204 233546680 447172114 429489875 532079751 396425423 750347053 872689036 978474329 876461918 930774128 613220905 685908203 971140241 975314987 814303198 939805851 324752887 375328245 5981226 828030787 815291729 862334768 995795605 998325570 715766372 966474870 880614898 959352047 611303315 916161216 435489374 465811902 248051273 392882249 337491442 712097764 618013097 969428706 732706264 966519951 239708438 555481415 324060430 346354471 761147026 925355509 404144156 657879131 201696156 851285308 715210852 906253160 19152749 766373542 783542579 821998460 730416309 958098385 59454462 763014454 197863745 908686148 316718147 920043834 749995815 947516781 794827893 930890591 443125005 925190225 758907681 808635469 407646840 915534220 749956997 794224812 940051975 969226466 773658606 844421928 644377387 881326615 739276478 791066966 972787134 995118741 647512674 964032326 773625251 839777679 418370822 752713847 815646708 902310145 930166647 931389230 993033818 999827566 719901909 939621863 857709743 915891811 410972538 818318960 89499551 563843816 47696255 932341718 651754734 664438556 486325898 858056155 41929931 370894307 500107105 909454516 487067832 583926238 142926851 952250790 723399540 960022154 322228721 701311682 307784574 665463152 554927741 994160611 269648772 786411347 167438220 482596232 288273415 548086750 404066665 546464538 305395508 808878545 748485619 775221914 264958840 892962348 950574364 967329222 737074317 858278244 612525015 881875728 244658478 906600575 185853148 831595087 618153895 851741580 244685578 292939896 182615350 894296074 856317531 936188286 937790939 952794909 71782288 259889458 728663392 800584069 700943375 731656694 158278561 724295100 921710312 985799879 216066827 578750332 398596509 980461330 894663234 900356512 8890741 212764821 739603000 904594444 404189610 857031131 22459166 604582421 890622666 930426296 934819238 962903129 705913739 975367990 669936918 713248284 539600328 995068142 545922597 987890526 808029862 875406686 235377514 512420882 36018780 492814194 968755283 986933641 139279331 748220014 209082973 237064427 611226613 662125012 590911393 826790201 32708209 252312115 999762593 999775203 790568512 979686214 116954445 900172023 561826551 897848200 296332543 960470801 666536962 930880792 825696667 894133597 275568865 527076205 813708191 991504926 792350730 987906794 996865067 997959479 653818959 933025813 426108449 701565546 211395698 835754473 746661192 844586135 74622219 700685315 101325987 658278154 477193020 973028086 242157569 446619198 406721641 552256823 220060041 330984223 631363367 671815237 57465840 995991463 377464108 521925272 985786906 991713514 773403094 799164014 891314033 993291307 805165920 805349755 19102743 592568565 60087417 854397966 727286776 893842036 680556584 804130191 30691085 850923636 416511642 795759074 315228099 522229381 703630460 839991699 777499743 824734207 702974331 970425853 513775032 941600966 329640894 381582567 668442243 691920152 424637582 717556385 56106454 319315790 402955719 682537184 732790668 934366268 431607325 686009962 857658134 915435058 254273708 533103384 232504280 410243634 550583018 769403122 328703514 803353452 823209971 941194120 943112648 948738834 765543804 907410388 730450025 940873580 840898224 995999005 386876739 712986477 934856108 981083157 173959770 616195652 988472624 995647605 11983475 706343036 516339614 979624192 79498841 480674849 309772757 574287186 341578990 927947597 317874259 395277090 379028476 426896629 988184142 989802986 327204439 982605632 276100907 925330412 796184022 858925579 26099239 690016150 965651163 986155408 139321666 532808699 653833002 981295764 96611347 566659728 198758606 459771616 213058572 759799662 325712192 931263113 357751764 714459086 512348233 839203204 32510522 545992699 521891595 738318857 977018248 995878406 315069373 982805162 970544089 971133836 253798648 383491718 743944909 977514365 941506734 974124426 472980197 724196217 767584399 933222601 363005596 952265829 448854474 617181304 143973975 962780059 29415865 210957796 739815518 955335374 647720779 995714274 908792551 967037850 771453323 825044517 247247400 531171907 367439050 502816241 816883694 899762432 227267164 379320851 976998901 994822553 321164861 685015655 928361651 947435312 721838672 806999539 881403490 985068029 912865395 977532542 832882317 931432442 18658513 271115799 706453770 829992852 195472613 316812634 863424311 913658653 971627865 977133819 514687734 515979425 924048578 993777087 833412832 900395744 669402795 774302122 836905149 920492686 10964284 58247398 92039196 202898563 461542975 816887254 526235529 942521147 497423224 580498762 517105085 766493599 658681735 798534735 172333196 430996554 454664390 939526199 847510403 952294711 897208643 929653953 464526470 737105026 444085211 914116610 376010142 578974162 485044981 665995693 678736441 732741443 739635417 806369827 201463467 264763074 922003028 940777272 658430170 826374311 258869911 436025690 435263633 907475657 158060807 441085803 494999925 813055551 32220551 894806072 840683621 931194797 524281227 653258293 431650141 896464440 756665853 858060360 388666671 554703741 196747411 902945988 355190496 882438286 168150875 801936577 172381330 184304185 446004485 659108578 178768278 883110392 897452657 915249335 611491418 926250306 592238106 927162826 831204623 977382813 110499964 855102652 271780174 324178871 989000936 992407958 509326525 829443490 619197424 626804700 473393922 680566665 641232323 927755919 39683351 172306850 68784553 789002842 822021178 990524174 365867103 604509731 701811428 816971396 684369364 744175940 849072055 955575983 131561032 570620679 734740332 998457228 411307811 533520439 469816287 664994135 988430151 993208524 852291698 889074541 445565609 589545985 265752070 658205132 172434662 881825209 721301467 965207412 985033424 991533382 851806633 912099646 302316731 682866218 924665737 926658976 268638628 713121516 771124044 898812381 73004456 733261153 462146388 469891787 756938844 776353006 333940559 465912378 857470627 859082955 448396931 878945061 816976950 966901085 386414939 844801809 481391303 844325133 971604301 986041105 635089761 735867440 454342922 628777168 83204875 706150882 604656644 688736567 426102442 627567104 257400938 262531015 369634246 545833560 19317243 126763887 627612979 973293166 104969056 704585775 598204797 652296439 939088190 961047622 275702518 891442154 904216900 958535402 723036148 852569424 234046432 333974120 525297315 786468497 888414641 930195365 103404982 723026820 949261698 999594760 575607260 946602354 967760969 984526702 987770724 996264048 40409592 712095143 388954095 903026421 5384300 855210912 333405363 709865632 76123559 630902535 203482963 727507049 112120645 178576769 318599699 901430056 967663629 990474260 882393443 982894249 963002362 992214177 51089936 535536555 52513861 697134976 852103208 962819767 580661593 859719992 384771621 863701858 129567111 692969577 380008657 636978930 616188318 960214165 789020482 795214869 992530947 999861793 253105176 576853681 670773818 992567134 767765789 790945605 243502199 253860637 204230114 233386528 373439997 595901679 81984598 881923680 465855638 856196624 226990815 646985544 528337209 957404317 457685144 465998091 680992436 690038655 49364912 392222778 737589826 956866222 301280181 622916768 754209932 934888899 425368624 798157442 653078347 896834890 316573529 359352181 763659927 871962316 759866013 861850173 306196223 784056611 564049284 945554822 457573047 941605702 51664631 499343123 911963820 920705425 746933257 940590832 926147262 933978619 191436703 564922312 161309672 746721877 232829331 243170573 529212610 772401327 15469547 333579611 379986985 545884879 623349649 690869835 45961764 612089208 225285508 782816278 230499796 414271624 35416513 421331213 77912689 273580140 65468430 192292377 200520870 627120140 721009741 808525332 521080922 874054620 296661483 364299748 712198151 764981078 583288257 798051470 963610078 991661273 589100473 615607551 831833542 866598540 274455269 825253617 456778883 704325972 982674325 999988539 38074732 275146920 917434039 962642031 86193549 157210376 462057814 615554358 231989181 281888013 505828979 678614687 481759511 631236475 417711173 968417331 373764953 548633973 774847416 933058255 589284668 779983564 134877150 900217437 806793924 932634605 666149466 800432694 292032070 886301255 398507387 950751160 775524329 919128671 494424951 854366774 263204357 956658676 489060464 987103991 684900428 901976070 312645147 854035873 271754157 821510938 794482283 882856648 119833723 949244831 236169025 901509981 656835827 893688835 151123955 338617176 842556188 899310019 741373203 771480368 853687905 989406043 54782253 666826512 24975146 422488182 954302383 954753032 735917263 903651193 12563906 319347734 78016869 880263551 987712544 990625295 234897693 827581792 514264401 847469586 880737815 985967282 54857533 939088281 715251218 750362211 344213715 651415551 397013374 643729545 52909818 639601827 110042322 440156421 132045242 266085873 500884806 562674544 48159576 163773302 182341884 199994892 216827856 796507951 797600275 926378114 805300922 989073000 908048091 924913934 840853870 920993312 212077392 805229654 657423734 983538359 35772724 820048853 685513335 871170801 707591867 769529189 525124918 625356914 238593055 813677740 808653175 820360849 783378547 925176612 377086531 464637932 419314960 495728310 600485151 741887994 364792682 787810441 520978873 801493588 250666792 614787798 897506270 915999097 920098058 962760442 753639215 998773769 702246379 789667467 487955459 802045336 116080309 771849992 479474512 598778990 2418822 236706590 410052288 616889424 98729464 968039211 977236843 997149462 691871400 940406329 902913793 983913680 168932240 606663046 765903083 846696496 966515559 988711834 796671565 812986287 753466070 938222600 218156445 821933926 594353661 878446269 76083825 889638331 87517675 773402768 697828499 861946099 380064625 951326000 966365897 992794781 20578363 610627347 723352869 945223099 740511882 896521833 87868988 975186689 94636184 404522790 385227985 560211461 109216082 642181890 703997788 756063473 727529966 944790414 851597664 970160283 382287073 990821656 736734673 915731085 665938295 705636709 26683285 719484416 222195773 260604105 36335174 780266169 864955078 997479451 851418633 971948631 203317007 948111646 881178298 882268160 359643348 606707338 697503831 970461119 917038153 929668898 387909784 552300460 385147058 775162919 116594634 568146916 985261862 987998199 364607241 392706982 717437840 731038079 979661238 988798984 979660088 981762916 80338070 209128090 798727475 957616775 532670818 948916828 741058085 828310123 256900247 852812959 332692338 933778623 649882009 963477584 885431529 898378000 586502558 984253874 779499197 804315163 117689136 209699289 459680931 941283298 235257998 258026374 455576404 535426091 830773365 988253876 16726357 962055633 237180798 395538974 108024570 224091824 399533070 768471637 601089620 684258304 7159604 862760786 402431440 656287435 640903444 897827521 595372209 945017362 359202663 685689229 784590601 916851511 939850313 973404136 835872826 902263564 259149083 784501996 866979836 873920818 560631442 781412709 201559777 990667912 740389736 920442030 601356862 735165705 34888769 748360687 108995029 117459154 485290296 543924742 699903442 846267671 52681903 734599166 418882368 971637275 472707167 956695707 164577923 500160223 891648771 929687243 334626251 857829922 182661289 596038777 162277221 378372306 263767992 367350382 822428966 994123935 469554814 922110091 303283974 326375687 164234022 583570989 692033457 751691970 932970120 956706078 887512771 933911008 618903355 764562874 884072996 997555751 325002655 390171386 960363623 979460921 88763050 684818635 489702752 916167776 364885499 378768040 199753060 360023313 8394792 435168785 770093482 830452939 662886679 900661810 106679593 188973487 997840108 998514427 428855883 555525874 758205311 872704309 673754137 990618648 36460157 910624915 410553981 701537622 550898692 983325135 148120578 532753428 73128165 979893719 154361953 400648561 400929414 878274286 774016575 955972270 649450322 674073860 188718652 596161406 560034417 946953915 447754885 664536969 925943929 962277132 72666802 260217460 145820048 614983696 169987164 549147938 44445108 550928962 21984607 769830138 191972636 382516247 40934485 694849681 289301316 749051060 430762115 807044856 779009252 968728406 922266230 925968088 286054577 485760518 146801068 759514549 956424003 974705643 475757232 665112605 673195980 698388858 196302744 254030505 452390678 761527207 233282894 437629223 405882707 899463302 682786641 989330892 854400370 994003517 461889826 982278058 366835215 466672440 409433648 960965720 266928792 850870458 201961884 599429231 228930424 240934933 832478185 946410743 255337353 987395800 726092471 727174182 84559023 987214355 670111769 990054500 291746388 649629485 698898894 934811833 516316397 643442355 674999998 675314099 155366105 539009027 644972567 923470398 852192328 863955416 555481643 931560560 155518302 749328106 768840508 816149424 674392995 917453342 555423295 840410519 500587762 906949406 685502430 973236905 729097889 775379212 434880055 695854769 843931458 873541072 862994399 940034910 391660074 452220099 418612504 708231828 88572297 235920447 454737229 644877457 229770494 885856709 403133962 551603910 400936845 589079122 810141254 919088858 465428212 678848542 943943748 997024448 309329780 332345703 736620474 991157892 291263271 631466979 675654153 776377359 123073372 671704499 918505260 956258535 771196446 814386878 537281560 556155750 611380204 788121592 691374824 751097567 46386433 706031200 694539614 877100016 544110255 627136292 305249272 508598945 722994958 728583079 253940213 909913748 322114492 412994011 157552931 770280701 222298489 348468200 851935421 895020726 629791855 841012655 744331881 907899278 287610225 329040472 711653776 751956255 375128967 843677171 365198098 849118380 908663473 943300020 201976258 257269677 830509241 947354405 60684152 327040824 911802749 944991341 353024582 366631320 209821860 863712359 974280774 979393687 705240516 970594591 987897396 988681896 172873523 535425728 337601500 684232495 532007812 979017978 111121274 840079464 754239692 847815676 831653558 965479561 283392263 718485907 60219956 877685010 892099550 983691910 267840360 338123260 851612539 919754542 161550265 718641021 645035187 758337881 640925178 824977565 477264813 909470386 731091616 809669205 653027288 968163292 134141259 787633582 793773270 983557052 596977312 914226260 667369418 833469386 622746565 943818411 52546744 392740706 509135774 689513131 602228893 685675661 713800165 799853088 486077836 763030350 61928364 370766302 257479940 595156166 861092960 963391549 545715815 577558299 57457830 722871919 873808912 924519581 409371853 907153242 698396 381596359 813307921 917161043 731600390 972303184 74630674 266750652 849870935 993943015 855526368 952395804 80780039 419015484 587536442 807178810 389986030 599111767 675893247 687334902 339395023 790551140 601863027 878853477 470240271 518197343 513953695 686507850 28053015 707215092 90708226 168872002 635082584 975954995 379084306 694314231 131621500 865871991 327132097 864897029 579995902 812064346 10855757 230831538 593136249 749560833 839735234 983546922 316523196 692211418 360361900 598376956 803447095 805965295 897554600 905629863 593063272 968993996 267085635 715752415 213950600 465293425 896567323 927214514 952404252 987451457 869526589 911569824 544836660 789296583 926924535 994294886 208932092 968179733 105497063 260494978 866951313 870511815 423749010 461628165 758620620 779341477 440991537 541029727 632164613 649068333 327828895 462431994 726508197 936032136 192306579 456083338 936323857 984228084 519345087 933567415 135659450 383991763 760002948 939619152 891682858 906459024 711702850 899022550 483601738 484558447 443121742 662215041 873085429 932208788 458143395 659653908 88483197 187517225 655957458 863653980 571437589 748493300 299501380 558208897 155854810 185872521 587760625 673078986 44362403 431000645 839308996 871584850 277049304 380335892 720037620 955203943 906888611 952078574 569953507 624605606 971473261 981654023 617706719 741817575 35979504 586445178 236062549 752972909 352705091 974749726 979287497 988648326 786160769 861175927 637298445 765869129 930568477 935735040 963273949 991892227 341831176 747294260 579770439 772360941 681416429 715055295 331205263 458464086 543143853 572854160 75723859 591460911 769358944 934254690 233081306 633097984 136350781 438082094 773957719 940966632 478052953 481248715 288419613 606736309 215578557 299243523 402123760 447577453 888638692 954243147 869311937 942949604 489054830 586309694 686546421 868886595 903413105 946279305 824861720 966331860 199967401 890257300 603824065 931393549 337481878 860808512 262196331 409867662 132832915 359026152 881034011 977426619 241304790 894016863 903443203 911165604 252448615 878178097 944130955 979682015 403722015 634622165 655277075 917023920 681768671 713577798 174815397 312561306 40582938 354099548 928236723 973502933 807057629 989658145 929345894 980885174 562293339 890639520 395947168 999229099 971519331 997595639 587973485 863105259 771326560 837428475 928498518 971975176 972056087 983020625 618789436 815577301 444477808 922507978 992918799 994900719 539050227 779701083 704855217 829523649 992143316 992339384 864760235 878796165 346938527 927347402 809555012 912299478 468303263 884582774 941425164 946678136 702693733 722491249 382364075 984222504 514201066 914148404 260961660 583136247 376466352 394137915 227953075 519708173 33394420 39398281 797402705 834309755 441633281 598194087 349263963 375843964 62491970 477008888 188764927 979956241 446169735 782249364 866418305 904886313 116339166 966869609 34962359 466962753 880797950 999702946 779690591 901318226 305861686 394365659 282561390 413437660 594748398 823863318 480912241 854675926 613947199 657184133 481059430 526438556 745539840 923443821 385066068 631544746 76072058 785214082 815017734 912460876 820443143 820944731 869342527 973112725 728578154 921885581 659157270 711464348 529677189 975281687 325439708 518455530 797925819 800321543 950744118 978880369 81540626 510785356 85063317 104030184 189373844 898369596 690403453 795571147 699759933 932445477 188893925 475160824 576488211 849458350 453561159 937096129 367384301 678205824 767908320 993007742 368335876 616119500 445391769 950954044 811676524 965220695 687773068 789653877 182067290 915172421 645198238 911158897 765330449 799030368 277232677 669980677 972556807 998443242 330114294 665933591 576092605 579904317 335625786 535596795 771908356 880720641 420752319 428444863 759507694 767334012 852790931 927110049 623265252 637293209 265018788 650372816 469280721 802459358 269185607 406278904 965967763 991730321 489507787 539868366 305995168 395604273 823542480 876218307 781814401 997599107 902950321 996300007 356731045 869777792 920317733 933403442 191688000 349213347 318123770 585729891 235540728 704743746 238562303 657175725 511281802 775017126 242320008 964707458 308693927 639264150 249352697 402810667 612642013 818514978 695495598 933881108 219013649 843532219 813468447 900670507 172797280 819481993 691020211 914943597 750113318 842108503 423558798 841295466 271800971 562822649 584919300 608447175 773407975 931158226 583129098 877390346 872807738 877687061 817141909 944924248 812426958 821354714 747532979 761215855 103385258 971875881 827050407 879543287 517225282 613684517 694273524 741506793 331715522 736219376 212837216 843465818 479324178 809327830 578168960 610399470 285462187 516745282 677148070 749138511 340404514 460769457 943185625 944825106 583669616 869881670 425640813 621091091 450395796 932893164 791232565 967768602 534508079 811104716 564753516 948947073 884250494 991270078 990083604 992218203 517606452 793517706 809198671 893965442 797874666 977516653 973140301 990546348 433027636 814199119 994781533 996451167 820741901 838897687 968492927 991482497 888333875 927267773 713946552 863017386 125030362 975423320 508626326 940591780 400800067 886625817 643527927 930327166 773325885 982568690 913325435 984779985 699228806 898118429 359970858 507389554 755148431 864472955 612493675 871913814 817794435 844600576 869089592 991513977 105267612 422948181 378777530 622201702 284239868 494147586 658162820 846588039 298057401 419002470 207797082 798230049 18649198 527655109 573484713 800323208 212153926 740345194 502428533 932579728 349982262 698926933 270957448 527667912 143205232 850559282 596072232 898785513 392314690 546240052 144333279 835341883 923073154 980537193 802238217 846540250 681510165 943656936 256100665 863267425 264719169 841454158 137691383 701361394 227200964 855450955 732637978 928337057 410330352 988292609 830728621 987032506 18094919 185317802 749280587 800865212 628321728 679493599 344482677 895113371 354520718 954432873 991613072 994524959 131406291 454857230 106614021 413184248 800526288 873920410 452860604 531400375 828210744 840749528 678483851 743181376 808754042 969812450 164348194 213411353 727325297 828205161 302218534 351576786 464808325 698263748 769397491 962032347 670546951 762501074 797814036 860461581 27891274 703609667 943022633 957660717 328166334 781215125 103944603 378943984 494341260 817697490 263057958 522328990 323537171 899597652 631502969 638416060 738890927 865498765 741446927 934110492 876477010 889455479 215643764 937476952 486995415 883980181 885544403 893913908 669948219 739507594 786672565 963436919 473067 519721016 400783443 915650420 371467834 439227118 850388907 872805207 756357 993359964 390872204 961780486 911514584 959819250 787861340 852734336 648183542 900481967 765679870 893073438 508019799 640094315 339067776 705859949 768835827 868463575 90965515 755957055 691696687 862723885 951796714 999669597 971407933 989759659 951561901 997530804 316119181 992466979 634995359 706375090 16308103 798519030 682722734 867771272 388884785 874434690 348368747 676854630 973036275 993015142 863888143 910089091 979934765 993855720 467698118 995227217 705861965 978851972 980572533 995393163 277185833 845104256 446163870 750791460 85520984 458774040 362202921 704077318 639621602 670693730 25316714 290784308 818628404 880894313 959923381 972272521 830493080 882777755 741144752 950901212 902256818 965073483 198959796 288507052 806645940 864302331 348401169 768753910 863796680 886533607 175333235 547580596 704760264 730149402 644533898 833623726 725726189 741646144 353044864 703565790 445051811 610921406 184283035 973152176 644312919 714724162 585311051 810581732 687266177 943217642 59229908 506114055 469237970 720515788 957464810 960188945 159403197 162067213 694793650 743203941 920053478 920444043 469180431 500235876 698445994 901543931 878533217 996783276 142588853 408744251 520271130 667605963 870427227 919379885 111921399 348804581 461967470 710381262 90209878 536746858 34985555 542711119 666295627 976095385 92544349 788683910 232473479 246424431 469959897 724882505 202186212 384336876 218874505 284672162 33633667 814047670 588862802 810302974 380630167 591471926 766011578 817348454 224275866 862831352 881071004 941342668 560107475 684313494 569169940 723617955 722808906 899199966 802957283 853401396 866369670 893456519 123746051 325207566 360598692 462280664 908595131 943433751 545952541 703804419 880019804 971730769 437285177 837117275 578659647 805092564 845020827 983073318 775893840 891421741 370886486 964045775 880885043 969486641 668213422 975299296 372133645 872389335 89817170 641673941 130103585 723905593 281709500 796454587 810833551 990885622 869500366 998720855 649150724 945380102 549226641 926365063 453241015 716559915 898385145 947786850 645101353 729039891 587156164 602784532 952028700 991428722 171509284 465808139 15855653 557206357 946801195 954673415 84406927 399239506 190033955 238465366 516028074 807507626 762826767 784474809 193138006 770511663 89252833 130184859 211098460 242138366 460330334 474984265 903440769 912695182 804746588 922465438 120903649 487993336 34024112 731804596 890827298 978467780 30434319 859240759 520319254 647241695 458195739 625643582 167159438 737127695 370454318 556011130 428154621 681630008 573938577 629253528 182916480 422374109 183731424 849454778 372663322 647873685 821572415 893886959 578728186 754924644 298068766 779678700 264038639 697430593 126522959 704157121 962427938 997458434 223163673 432449974 130278572 546105727 2442810 89941207 785521623 962736366 316601220 632913881 509855743 697477771 753680221 969113314 336219582 410691765 648953473 667232815 956588528 959075014 134452344 360414852 349142657 686860802 473454547 756708397 38879252 877081971 375235284 846402510 17969889 988375921 205078095 624983266 474649308 925581864 501387781 929893629 882216092 926096484 966840725 996337734 559859843 749644800 620722288 979880450 296519579 788625842 387242316 728997102 355828918 996031026 211183237 462025052 368251155 981565907 883634354 979146390 282054907 983730176 126831556 198788074 196371063 517939084 763760912 829336910 10059649 519939818 706263765 772200589 69842409 897213247 568702370 984626250 947599304 999463205 318233250 779645893 647600968 727588738 621355067 762406535 716539325 971203497 276747166 991423341 658128302 781274481 832437428 987734194 354561501 778914186 6004433 514336355 11126882 735386542 915368427 948104024 913249426 932302792 656970342 700516065 111225075 433007886 623205874 722468556 342642050 473980434 50623938 66683967 616116428 933289534 604773847 668834362 394982411 424347597 509025717 884016109 441889611 796167766 370503016 529074094 261927053 676785412 437008895 614813473 837516223 882045036 923902733 971761905 426276913 612692098 938956354 967088405 38707480 680824600 226715192 274802088 375038275 483218835 984192595 987406776 962403655 978175331 254693700 642879921 466126757 977725435 833919809 959140893 448760945 898228829 339040239 709484274 391326239 837729532 46907193 845158839 383062569 781290197 844372220 978618516 451201295 618945892 618202332 680996185 195989072 326690566 598514175 993779714 709617002 934344220 41864107 721058398 651714853 777077436 983390323 985392688 675316062 957821197 733494830 894190903 785144992 890415542 442759456 797195657 841093199 863095035 697559308 894283667 52749107 757152323 892115775 924859956 307111297 370908424 189100639 559033979 492928917 717628488 528399946 735973708 674140400 853824575 445177043 982063844 811732729 840184085 955491203 983160847 706106950 750667046 863429792 922926997 256397973 448482097 46066033 858824673 564428473 783090654 264615981 430651700 978751239 985303720 391365450 988306413 23705586 429582340 826659481 883901100 252444417 766366844 403046705 997397498 344480933 556265377 374210569 920930219 385495997 422371218 984294374 999704716 161330560 495543869 463415761 952491255 890537094 943000590 572413986 664628525 366707072 814548414 807307034 870809372 757257385 877639145 824478471 949246461 988576248 998808829 507289687 568135599 548838528 829878179 3010031 774666080 689531103 862851214 565147848 825852900 322547202 714915663 286969789 641555657 604047812 738512940 108638754 762336272 579402392 622615639 755650588 777199900 753968602 985642305 331811650 599951307 949329499 958771540 323238214 445502268 807445558 896000509 874846888 890312890 348683717 499746604 723451533 857449933 584380261 683004302 822653472 982221706 917906241 927696046 306895164 766701667 259982532 929346060 727918828 967874957 48360322 643636791 18883265 319403954 413953022 938322700 665887978 773912703 376313732 495511085 293453344 326642829 487463455 661495087 104564068 169978212 454051300 995935224 562340273 771749920 477147980 839973193 966590500 981581369 969759569 987751406 793983884 860006981 428193241 577966390 394902446 959362108 774122239 877024412 819267002 880065981 885495273 899182930 584456371 861517235 567444708 807070572 543884734 593277508 813445008 924691009 89841126 350212150 449456320 905984311 936518800 945347234 907232769 978903112 369310898 783780497 736587477 865622448 20306104 227616055 257889395 297296961 747108138 961789185 471874784 540472290 81939772 452010636 428477400 581201371 53754068 546153064 131765307 726314910 244854434 997251432 883726876 973135732 102989416 852553459 838011300 886943116 267595573 422036057 532402228 943420016 349125920 497252274 924823439 943585246 685588665 993970048 405887268 461888898 60051245 880386605 321547221 617897196 803053215 996281232 646789973 977208896 911864907 968427000 308471413 336333873 737514663 990163945 866966251 921070229 318264660 495905376 773569867 994789150 899784834 957263064 643840406 930523208 964728071 994995213 834461672 853629998 632003164 944556654 151238483 893273511 524191578 542573969 334538503 916035495 352110379 684704922 281472887 286620730 970340580 999738200 892517408 913107686 516487282 719412280 901051274 993542166 948840770 963513201 949902579 979678599 739603574 992010337 285149885 781544640 82379312 124415438 578845568 728319002 709780266 940537939 651401171 656478255 103472332 422415766 492010335 723190779 193650007 814295125 277179725 454752999 302687381 461220307 90413390 170427068 549423544 741143109 267207466 516102465 36333295 92572444 254941193 671722362 814968852 910404141 652454448 876247003 53207808 632839609 522813840 756625655 77380967 627977847 755114684 918828435 38988080 359962959 246179016 570605446 956513077 959113399 446520713 946102547 133130859 168425758 349516142 430141197 481430050 957505696 345129107 399184460 237769363 239673002 100179900 892656451 261428143 584457612 198308797 429052190 845567999 897190580 888698648 911803027 939034052 986720711 156318667 669368388 245336015 731902078 64855597 499319243 205211748 933352848 358782477 444800625 36816087 517876223 644352173 646936799 678817011 873884036 789044847 855815581 211491260 632889437 254380844 327430764 344032445 873356118 871983803 889681347 423625116 583429403 336196710 653757792 113708026 442158580 481935553 725977647 18147579 861426116 464511843 880930179 239230121 764413169 659003770 761848058 689431068 866667412 737056759 899034354 58672326 491000750 310515665 985609118 574311130 750781368 74590123 439631176 260963577 823462550 28705838 184016015 306873933 794615879 392447935 702798973 751031200 921696029 20987373 44279565 167285477 313254517 41419867 452883859 723980767 981363506 626993732 670021137 137788208 580498577 167927344 792520325 28865820 742617752 401681187 438711976 778069038 964375586 708008950 733197527 712511990 808765315 800946176 954549462 104364863 724082224 705466485 840016782 317939562 649254557 220660292 729645318 273064877 403094409 536163306 583421573 582746842 586908533 370059346 703553827 772691122 857667098 912484495 997544859 995284461 995530259 838238938 943417207 745331637 818510361 184260540 751770390 952196304 966249427 183265545 570384650 799815233 965701745 936148314 943175375 114125235 947405129 289559736 518767071 763815055 838082948 160645783 283162827 185991273 950194238 384189965 751744605 623313527 819117870 64040569 637431967 445770048 851585364 52921914 319085767 122305303 477367382 530051143 944950386 358697593 884188977 679931744 965140911 754347379 909717356 331326939 485838053 854638621 860521913 405157800 766564133 587079060 604293300 992231395 999638361 701165797 854376524 216265362 555711462 377107873 835818806 70844013 263840892 203746873 277329649 916795220 964106704 224700826 309407118 821039681 827204761 237275988 618626575 933377993 991585528 336734457 913417249 423008880 484120143 826502296 876582617 106224257 632487603 275519733 302316154 712375685 843885520 124639039 522105403 657140688 917225092 521898034 787759795 601140000 822476173 51549098 369235120 17997834 56155976 553059410 588514280 915716926 989351747 637363288 684918352 485383934 934936321 185264884 548670146 62704812 789390355 623752122 644779400 126177185 304720235 111810230 283818881 258056524 467692921 263593767 462690072 355235281 809554553 345841358 847778666 237753610 535198060 186991065 234656622 952132801 992588019 761175478 940071813 175828954 288874103 886444445 936447348 180807529 687630260 428757373 978097257 326302142 840127000 633338251 932277783 7446007 293700709 500832420 719568375 949526053 989608205 533065678 724375022 276868623 941698012 679806194 797580078 925620149 951602545 797743056 811204820 375564492 772981383 506777289 789859622 811125820 980121881 704241972 770746760 906786272 938184148 775306471 786023207 802414063 920605723 746692680 827325806 476487233 689639605 66177339 983849224 648355719 780869650 990701199 992844168 704009300 814742874 824690342 953540036 95293167 542689046 277096516 585432706 168815423 909120308 802313289 854039865 272610627 453594362 414617863 505629805 354638027 435002139 734635509 942575990 101418331 147543788 981260240 990745093 146327908 843191926 467767387 621473788 659709833 808028263 343018314 393699982 110332956 388186059 243934803 251480858 757245257 975410414 103852053 617507061 651994200 717375106 932711469 967056167 507574832 899965452 414433956 658794962 709091332 766792575 588658152 777103320 398049896 629072349 677558801 880673064 481982542 927071305 177301089 786184293 846224221 888834823 700295465 796494332 378774156 946625743 327326090 847529549 126486387 660817965 257439122 923447495 996784167 997177403 65328824 603469847 828142404 846540639 55486280 604193007 452078671 893398080 711479789 824261588 337210678 514794734 761664371 776703681 337178612 674499913 870142556 891510798 559594878 682773058 882794273 953987734 125016663 651655942 63638061 636602487 88926271 776872537 312822344 597873851 600468683 848598614 670935488 837484561 618184629 773485797 924659550 939331511 394736534 579062266 272881978 807952096 793985840 954983367 261609252 316724768 104135211 718435543 709107512 977587613 932280938 952319744 861856697 992720414 587063371 667136711 814848604 870845726 942124754 977514618 347595617 535256936 490836724 815572724 965014127 975060469 616925714 729279771 185107887 275407414 736321215 901293202 429007115 442510251 253022127 661432659 104398380 912075498 817934589 834438258 443949938 997353702 450707350 574371226 891622264 980789215 826356793 886161863 70425363 482851210 90628060 245858412 539879134 806846878 362263509 907044637 176885272 820856658 273465097 888828160 284274617 810853192 334165676 768618177 829269463 958698572 961471927 966971379 110428212 992288465 203538692 693514204 256531410 657742164 941381327 957366561 623144528 640571509 771889730 946338688 677188587 946326855 615135165 665425065 224772584 689211803 654152394 687119807 387578292 505482161 151878666 675418693 49746866 664835687 373211360 683965749 676592754 906361306 184190531 987839034 150262114 502539538 83765189 777463424 905218985 934792104 603126128 805382568 329246111 365662691 76498453 927925498 241888549 278692287 207715993 585977452 613358467 925320622 820752242 868231923 692718629 962283619 689494554 813204491 598541814 806769831 570504700 873024356 519948792 601640745 982121952 984826251 403855828 797382275 552917241 830408940 305149065 378238069 175030469 990688737 266019741 860430244 452428899 870879266 512285351 834868026 122011105 610111325 661395319 806939362 688594821 794937900 988964766 990493262 875416139 974531283 31405227 245765104 66546186 726723164 63461614 285751459 853727567 921640920 462051414 576560518 836583701 914306858 446385531 905259775 704236988 900050880 617862066 909832163 836722277 934105961 70587894 692601602 753864083 762165005 446000885 990363600 156561653 509939398 518143881 773051450 708589169 975813491 773831394 839330405 545421624 627148178 937252446 957895246 995085760 998597879 457821353 478728211 227660829 982217626 838892752 839810578 184817107 836412505 373541609 571432292 386332844 725456129 561120414 935531534 254281088 710548649 597048315 739691585 185550102 793863568 7425112 526124842 686937663 905550385 816702219 918334380 947564684 994922340 551536858 589396050 679547677 964570301 950572621 966375956 336198068 372674903 903847143 934906156 708019109 997981258 186051833 760537702 542475605 922759451 485343360 655585977 80154455 842750559 723603929 733323430 58398101 839960255 779664286 987515422 820276935 872156129 702929286 964503398 942994901 943449550 882458613 896039257 220546369 565956598 100426926 489175416 517801409 910769653 682302177 865329346 746122695 987438735 470693061 666124253 937633639 961825816 777376834 929083105 812776946 848588189 720099143 850236948 910974455 991131788 150673427 531295108 298219711 585477826 496395106 722779572 23752199 791607467 862219168 913944490 140932254 800653966 603109943 921078936 354524304 442629858 503139106 719534336 41415191 184698339 290835415 545648762 247524047 279501698 746074244 842799330 49345050 229346922 333375124 701879140 136507703 747413600 207254329 422301848 755013400 972832247 724392885 858465663 825479046 967806334 140522821 716207202 515589956 706297278 152490365 745740467 600018291 661768606 297571243 664484975 234274010 637699773 668788468 936430532 836549264 909600276 847694737 968088431 355534089 710533566 237557654 659125881 787793138 950633386 309070521 350189857 870227272 877024078 472532623 900619560 170557354 998192105 480722380 807763955 710628121 715156572 613465539 837558582 99849597 770074340 569996243 961706170 557312755 747178823 457919189 708680837 776077937 799942033 582734193 886586484 176962976 566413409 839483518 902692279 277620152 457929404 260623864 413347818 322499892 355130622 663807032 811113723 134066195 273762151 83214562 347779875 194481153 310261403 674339592 823440694 934136463 956417733 912123685 954165509 984640290 990139918 360428223 449742297 791599040 887575584 457406455 523206889 968210266 976834137 834667866 962970574 617866638 954925516 88937692 119043294 478413036 733971352 493331076 934549078 54866761 147993986 405786814 768229239 861312626 862625152 376602726 758884184 478332918 565737376 500234605 581172561 937195793 972873444 220430450 282662739 608395445 974011596 890895215 904490534 404880969 903847819 345782297 978695719 270940719 278487109 884362617 996517416 62361816 750422254 500445454 610790081 105943495 592965853 933354656 934110607 781655903 808846944 216085959 928853296 395478899 965126917 118043767 933362230 554861243 921742393 403356235 748335920 703163568 844920321 812457405 988765130 50333665 509227537 145344703 153055755 956447437 991907097 639444752 829643492 692987439 805493921 412875193 971733450 904315412 979371929 920825099 944561096 603392719 610068718 799840172 997730848 871128648 937019012 918829306 924131278 966750223 976193558 867450445 927477538 402272905 929199351 506065667 511009058 33416036 747701448 520152763 862139580 606131833 924365053 638300193 732384284 779296347 950178674 850325685 946412983 36443188 715088026 253519422 500937002 343341227 894222516 926850243 997102544 845585976 947731958 869124530 920633446 821556901 931644718 212366995 373622052 754443693 865845082 179162789 765206231 774978620 926082909 710321632 924798217 222059785 605295751 676167153 944052433 326369611 428898602 567201422 686580578 291661091 693564998 507111017 551601272 712289507 910095368 484179359 745128757 456982514 492178295 724523122 954288663 286138456 309076883 826086138 919878975 10023628 474042193 321713810 743490863 987086716 992278211 973933721 983915743 461704021 506382781 694986735 959145840 750371026 812170052 853383287 896666049 200527845 208935501 376647060 968902465 21629370 938532286 374449639 739143528 7642874 659011515 948599976 973052663 300167573 638114647 488931578 771882068 904960510 950243310 893697213 944991014 70290813 412793441 13001490 392561733 883542508 950592211 75805401 749202931 733627529 906930638 289985702 452664568 408801423 627766098 740617902 793654361 995699209 999775078 269190056 864309072 1005954 635811023 746202206 811910280 266772803 591802202 203589457 671886354 651657780 865521295 494843848 594887007 45464643 520059201 712099343 991000975 53953359 241255441 811410089 826976503 561323478 824987435 476168331 498640113 261474456 630508898 228059501 800005336 150361519 363848351 945835358 963068535 673735885 777635503 898443240 995397187 305799779 838667712 36411909 58115470 595521023 609309929 167903436 260292330 815776608 890625775 238666503 522252763 373740239 930836403 482874802 567302715 270797118 679339103 189116511 365426042 261765760 522783908 945219625 975162008 675441769 943395966 406162469 610210123 484505109 495285392 113341316 461133037 180399747 686202210 724914121 910910377 561949517 574284411 620667318 986259821 239542971 785570623 885724022 920520576 954615289 988044317 349454614 745695979 806017380 807080792 396169017 956640334 677476687 779100932 748433656 870228151 973129228 999976433 46036697 347006172 776498070 880857636 192540090 670799183 649045072 879089890 897893917 937509452 316562506 973398362 132291642 345589195 834355267 935688604 655324447 933366518 999012034 999274368 862541611 889463899 280223962 448557327 959918074 990201666 284562396 656207273 583088979 628288049 231049422 973276331 326324563 900253035 428219870 588683602 654696700 792226819 956363660 963163588 186177955 458282725 260546288 938298034 563870689 594872364 32979320 967813924 615260312 760566869 77120867 895220194 343388611 893720344 597134250 698247320 538618640 547466111 276439994 911252391 550270356 581829684 808262786 826347925 742467424 928316489 391899000 717777433 380520318 770361688 868883503 925094989 755057623 970805294 896871328 982243805 943385918 977417440 209147384 734043397 582557596 722615160 427389002 696272455 575004827 717315642 83628263 806433608 159438814 335961984 326718463 636864981 585319755 705373863 896136564 991991205 840744245 840860923 599552788 751801434 219330384 637579673 570038816 942002475 531645498 815945690 507109329 621406285 97661591 981511285 827786014 980298539 486598382 851751893 956921040 989475734 150744612 309447650 36016915 260123545 290979106 772237275 37167007 98312508 5287245 915594692 272617346 326041904 333161103 946306880 113519042 772740318 746831418 823770559 928140752 936060240 573694911 978212720 174950733 764639902 278664976 961847130 497948024 702687751 453022125 954563008 1011500 92034880 290279630 904755655 7065315 752935885 855548452 931210343 132568718 415083957 977509651 997956039 247761325 771722449 339978180 751221164 110197553 324531398 494740921 591543230 480648713 540064955 623683689 898236783 249754741 915840931 58963152 394216767 285379408 947095652 664477024 667464945 978538932 989774542 566966283 996433524 15031011 768315831 103609296 291803730 128907546 539255032 887061512 975098062 968837 421792403 228917354 865270641 544947246 928874608 9937781 365605819 77354363 708380018 378522380 950596467 614790584 816964869 51724542 142708530 417797160 927946693 169648128 824860374 875222893 913293508 845550021 906969381 921728287 983821515 978651204 999043692 324210761 771425961 860442681 963635798 532503551 775073670 924433900 954971530 803086742 852671737 700239121 723274675 412313482 550233712 653804907 671328277 552149901 611758969 187725068 645633835 788752852 968218182 399323545 544297815 467650719 585904130 307423283 694144498 623775992 931588670 919422457 979074038 814563742 990303161 699164827 758288888 665645135 930218678 872376003 878154564 461985727 969223033 895404740 989630773 524043669 894289740 409676515 938076723 217949219 227652122 788591562 965619300 202689552 300903794 712631448 825744981 533166237 897139510 946429288 958128409 974800388 993903265 551887911 756396927 219608878 893738979 517305079 814159003 171568589 519996719 86136320 160240120 791200264 809821990 820873620 829885702 329091516 483901785 219196233 607177361 880158723 973801985 389133591 637187825 805924258 880899593 220969409 734967186 50202332 516130257 621554575 811001180 986391972 987624943 315615731 576872050 299756074 411159231 588412757 969301279 87146454 207567682 501838857 812237622 34956136 622731483 224252067 233351147 637859311 776848321 595207956 646316926 406350694 831546658 247925313 300250665 343877608 702024211 426190308 940113040 456067343 879057372 198254326 678276395 465999835 847567872 495795864 569414324 225232151 608010058 956443618 965463130 348981169 975096616 554455614 765563539 31683107 995053145 337384096 535578119 402013133 760663570 551076680 602402592 369731882 474968558 771437888 993470633 605254027 923241306 684333915 792530980 124606992 834014639 461574708 462895407 501889802 902845218 445516312 614391175 964127464 983126966 316588259 360768075 824880107 970346542 867903913 908553062 393046728 513159891 627108456 917076186 507828692 724595563 185791316 323442770 640045544 908551018 564604968 789128195 109632842 366086077 513527068 543473596 286395545 313008658 189913122 777155837 252212648 712787919 776042338 907444144 606207619 834558870 985973337 997579728 527221330 897644404 383145085 702861574 845732687 869779183 344579249 715285764 916462173 957616763 696039191 733756751 638517600 732167535 280741225 371185783 679452728 851803135 788782595 894832091 42654161 449937179 835011819 898500051 492636199 729407121 967513408 983161374 246809580 329296564 337461769 604407186 438341203 626271363 71989775 525559386 907364601 982641431 321713596 605101382 703574267 734663683 356776313 607472986 922432820 942629437 36121376 337014762 614839635 664111172 768975635 778503414 958655111 980591200 174472295 942741856 296604347 396928128 205358571 446768347 171519491 522290644 25081134 259938049 636892099 640773171 429291022 789784694 169060371 970825704 387645879 610547643 502689305 796520600 361999785 882049044 882245718 919259743 32194960 304060871 356570676 680857196 762812828 941349965 74045527 571537369 9830563 312605129 121694316 410827388 714890042 831503990 148740934 656952758 661880497 739767866 674498648 813966611 799261717 824634015 925753277 987026987 745714581 823219880 228052539 324514262 667298996 758112153 60863249 561836649 140432769 652678768 45797593 117290486 803778351 981048349 432288540 684438152 808846472 935085641 8591978 28223238 55094753 371789292 563791442 688111268 769086579 893366010 223882291 336832458 579319138 912157051 341014276 704365297 432322103 523917193 823134443 942302334 7539140 451435955 567647023 686641165 960217179 983299106 561465392 658915657 850540360 899638108 401001088 632914855 723047442 862943765 884700646 930401124 962618432 966172235 1158251 948529107 765140592 928873581 640268482 975001921 455491147 783302014 611282389 859945546 370612101 635258263 462689472 609742622 678269830 899422266 119492823 397443555 447937912 586675228 235587517 682399653 374607931 387418666 450691474 948881659 640193867 790600190 126744503 424301938 902355819 938567665 98199336 272039696 993253243 997897239 124212885 235011292 646505450 981731065 761342902 888326194 804125691 911768732 873529274 947318186 205589373 983384150 338102601 665466978 982005265 990215412 57897250 352611517 314011981 926748708 641892110 860187890 665521926 880225271 601370849 913611412 405717237 479462401 360893849 770333422 301727344 314588867 862077355 990359034 82736094 90900547 726844721 952419823 390956643 826397547 651396895 741970789 430679314 643574339 703104272 863979450 735454063 889295178 518134409 762527944 519783061 624870965 402745347 419670871 983974638 984794410 315815493 861482078 179159129 591870376 613628309 745041239 438809606 866706660 664370429 959317735 329031825 706194602 603034438 827073212 40149322 768701028 509034571 531578409 868185826 907598544 792391227 795224413 469793964 604781850 149935944 324473575 290716078 857084992 906395585 936711656 458512903 840613631 53314781 742311086 123629680 849675169 713026830 779744619 24880703 497999416 184245417 397753880 186880551 821345846 490583397 840315298 252994290 971449556 962410704 983254830 646096295 710572039 824629927 828265011 731215863 764011591 91523139 297370091 27694946 410682830 738478402 986581346 40602538 357829873 768651854 776061725 314518062 720639893 29221673 457841217 886905687 928744587 911615132 944961480 424463796 518534516 872443515 979213473 431536569 847094150 886259718 917308181 3997569 79684297 891179215 930925941 991309142 996612210 470982439 971338794 484321858 926872390 612405032 614453094 655556528 682256352 596455617 993111809 547091930 757582375 312413997 523434333 392323051 909398984 113961090 844149700 104892635 801268110 948190790 998064521 857484752 964318092 714477198 826063504 322959900 382072059 493457492 495295261 474565595 851003344 349847737 994000214 142463273 761351090 824944875 908043227 331966951 385908162 488826385 943998212 962335334 998118037 53286909 442246500 346248011 706698979 271316121 566555659 944701468 966923929 80809225 516047736 180757844 750515680 21812191 860544387 438928046 755052833 320309901 873779763 631025517 709601437 160172887 944448428 340970932 747552107 989998826 991591118 467366131 472214402 943831050 998434277 308149964 328555037 281661819 447234637 792830094 919854649 655456649 881693841 643349964 846769481 817968543 871766796 457039765 509559155 157461131 639545941 481694484 705839392 41685529 481255264 140793288 911398720 47250398 304490985 395033591 744120554 387063939 427522983 274953060 278372399 398480121 546463938 576346163 921741330 954155556 983456699 129260305 166980696 916520627 943151896 149122457 337172066 654260534 993753096 393770615 807295014 630523867 632020450 267953527 491493453 58004468 808650101 523517841 956218233 774890972 926941090 829543835 992333218 614829433 738338940 206208905 812288395 683444534 995480041 499942244 638398925 304900321 584882189 974690713 991575993 420855543 498197060 738328529 890907080 851481608 969210572 701904748 915836563 103640022 669966352 964316703 999369678 972825962 999442511 802667442 896808318 713517185 883296788 241248056 731963949 498524138 978302086 816331005 865824607 700215720 797147382 496208527 716706641 3361259 183413852 412081166 736547986 479912931 891813093 164997213 650432262 857002727 965653296 632742030 758739487 932324939 944874249 702115308 730527433 965819472 970077224 219028836 500322277 307814952 403626983 340792729 540246404 191582558 227809372 372366119 487387198 712709196 839180133 671587016 959057689 739357053 929249469 813413634 886755689 725754461 783880695 472026054 781299402 527907859 556496450 308856649 867974796 757174567 934486070 193594745 969970876 844017164 943929986 865661336 981683733 855901071 985636270 220015124 588351964 982861424 997644459 199379550 567500051 634204073 928105212 316191981 837920592 792525852 807865900 762978218 927967401 652133954 680092956 379090033 538109296 981801719 988063740 968493328 987050975 361898256 754566444 893865697 921249273 243403795 986190251 688458158 694506524 500883870 508253787 897474514 959511021 256997538 994420309 447629553 909027380 47480417 102600414 417149037 811935009 191853173 660162096 140526293 362060578 658057132 793386568 34004071 687173706 734046307 737896596 12604125 838994873 631181702 874383961 456370726 767966496 516444498 591882425 30555134 728543915 515972887 660894506 163991171 700409941 433729891 691858026 488375989 549214457 216557162 734034172 778947758 879785224 214076967 880334360 192340675 915416307 345273830 933753460 123631850 660228776 497279973 609442730 180748101 708817989 600621161 870408916 872045291 895792017 513489363 539580996 979261496 986974775 689392148 735385780 346855112 387156689 704735709 833160853 46840364 51556942 237568712 941867429 363375659 851574444 936776244 995595268 575130057 623459912 349400459 906417529 35917422 94996388 423992091 683012057 502184720 780872971 456644375 942457676 112085206 243740956 234457458 861328940 743327676 916949802 955729921 980140940 721101261 988210392 946316941 951342326 624997520 830783366 35871762 435224772 934544417 949113654 104764293 701888783 438452981 655993140 486321370 985003820 551268636 792472178 332105965 865152074 895061658 923039341 676637867 953802451 198333985 465721880 473548147 740266760 473191757 523991996 576945411 592957405 325445226 358115279 352104773 961645091 38740680 817304527 14004656 251329500 179686625 879434389 115405687 744154737 850942314 871817002 4681779 349282572 124350008 232910965 874010483 923477367 605614740 903681512 306844456 602939195 722393844 822843699 525858045 667216581 193855663 537188647 754196870 939889960 839231859 846870749 383465225 417123013 51741186 843489723 737706451 744746022 246181554 906613483 384478898 942905568 507730672 668833884 97393776 215176372 398003029 497299314 546532679 768458703 927048438 932282416 542668155 904149990 203806099 415367636 827962849 935167149 823929636 948725379 393393525 714944231 10762731 593809529 917351713 930355799 44405419 957162990 918957070 922451064 648822445 830231620 608221521 734600812 987901829 995369559 513866764 537680037 336319314 997384527 251177338 410157506 87087702 685966368 218838351 806071985 805237047 815127811 51335689 280624128 619833769 744127455 779770229 820022403 112956061 345795768 192914555 866545385 540631506 829462824 577224789 651521653 792654114 814735128 99549639 924498596 435536490 692742057 869162033 907571202 451503439 482742834 241034291 772003384 809518827 809996380 569888667 592034534 312624509 754154886 69958716 125433720 838146385 954048238 497494792 639190628 432960160 681284947 346979992 674950491 300515959 469650452 17351992 442016813 420696780 443964491 901902943 915773277 343288794 891513226 748744837 911715816 194243477 518813132 465224764 787469521 768013577 888630510 446849545 748410199 645113583 697653594 387896442 433482968 989428434 991407938 978378120 985366817 389644111 671848241 506944699 985838075 289937786 300290030 497448849 647448152 186166102 839593180 297232400 741486011 40876149 297279731 489776616 780860395 406353743 519620916 534613224 849410099 788693520 981147981 473461736 875455756 209180156 230786309 934199079 988186387 706400840 915971570 443774285 576098247 205073170 259246009 944918111 988504880 510153186 816173934 290368490 378960398 747766591 752131573 763733136 973803935 871184773 987097367 867597932 915940415 769428550 871924906 864130617 919161920 994625000 997961433 991768447 996396856 672751498 870079794 753894266 770503867 565835578 870274024 182605699 638028537 447328777 880259184 716593504 849164189 702670560 730935334 960759807 966089688 141276492 418558361 993171218 997381792 367634663 581726887 85790286 336625417 3867798 331152186 897236655 984157446 885693401 937275042 342867511 790648205 513868277 527073280 180693770 314993075 493139223 694233075 610650621 758821890 756412652 761519899 183481046 593337138 54300658 858092972 724197716 920409873 615793487 880318986 96209505 668713233 58583692 68428115 960269223 992228696 137096498 460175467 599531369 692899553 3590785 919067189 499374019 631434857 978159087 990088733 271529852 318596904 926463832 939313100 471923298 728307817 267372460 796960929 823465898 891363180 272016119 875126473 33148075 535030126 461781776 715211845 751277367 884778640 730485592 790458211 853802294 931484752 385140174 404569536 770366272 853011086 273914786 997465956 509236048 527825793 342360872 728984717 254930740 414325791 842341153 918900362 704103889 914240556 455651356 801484460 386701374 616259509 437336067 783107680 601668820 613622785 854853470 981234065 689271018 690031564 843242836 944003450 374460764 665313503 464805823 566365180 237093790 697290604 242772422 508216676 404640027 934699161 909239569 920094772 344675455 380808845 888457669 890937594 254530137 727827810 880572921 945857195 216223568 533189595 996278436 999138928 295112320 521834395 149848473 518739861 465076817 974397120 768585021 780416512 568505914 925859903 390012727 514056153 915971820 939213628 798550871 853732080 105456550 513787742 824352284 825648679 26189463 580653214 231241123 429280949 691679548 743460172 63359109 770616887 902319124 903461500 598006297 619377914 618805907 926823738 393935342 483927273 855758533 932728346 951136674 966104089 333494610 938920095 227849642 308534796 959752915 979960819 236683309 336008309 843700139 868292657 943509568 995894108 621688074 758590057 421266886 763069071 900324042 951817556 831367889 972229426 436106487 704325230 479529277 921534043 125672378 811503042 917930661 992939497 498809455 602002727 41082804 913223175 443943692 890579524 972610970 992619218 744928665 892410932 557297951 803707138 255888026 458568714 412339678 714944924 409406767 868581520 665873236 889263252 139426134 406263587 429790285 489217332 522974319 618893656 223490760 521112428 242447955 401908569 8974348 686280425 258534130 816700096 486506276 622546249 452358239 528545393 332385140 696445835 169349349 651034441 442580985 989502287 598911516 937706081 488214625 875258177 568806127 767154936 400340893 881967897 580107747 807553953 425427587 875296654 207960287 894867566 785184406 833322242 891771448 954168628 792661563 968386115 114727733 451750644 62306615 350939662 647413261 870445878 487930283 890396145 375202385 950552545 392944349 814141575 751456280 874400037 707161829 838294321 315937112 862173090 703099470 869308808 274620346 810838543 103699369 799513905 519318597 799644954 668183296 875277436 187732458 734652995 466991448 675342238 377789171 957738000 542114318 885310531 90432062 933916063 694545687 939262816 251896144 507551598 565883435 814189474 207548124 666628197 220448156 782740853 483723776 607904462 207140961 506301421 971262772 996962818 174988146 898856254 671999106 859134176 422667097 470054301 240503783 532870635 449144687 841881085 833378862 941694299 762069314 769705525 566852709 844208814 721396184 990022394 214522313 249471903 750081618 999030594 83743911 400649801 268486906 498729414 595510177 859608387 12751013 333873215 822408825 968680723 843636907 900382934 680618405 927951759 687406510 861700196 674337777 974908741 519312874 846446769 323699949 931318725 358179059 629934027 600328497 791917824 571082774 643453058 158323352 314611931 570724670 617634076 201116880 989581633 420350950 500968097 291657786 625117082 726395788 935669953 29864602 877277694 55932072 425045813 738456011 876897045 498408105 817190315 45855489 977573964 376784689 530486866 418700239 704516158 103029155 977478866 460762707 962792626 757686966 901578128 859101509 955877582 203631939 336584547 575408227 853120690 742440295 945060189 43725034 481058430 702276657 750285719 414005500 576047948 759816443 979741147 500847786 576743361 258566280 600658984 730031743 783242439 640854643 971372809 714794719 782385026 411217232 475741918 336415330 764830052 922700108 999892668 337112240 976774288 650894679 825186210 120276160 594538779 882997600 903055878 63824596 164256831 154159183 659025863 847555238 980175548 253451675 808800345 228404531 639707694 257670958 609493062 706791420 752535706 814887930 920971914 364553837 487284848 721515137 969777196 30565581 557762754 601212185 641738467 589010118 624869918 798286573 995381467 684994173 694106766 278659452 823745945 448966130 527325265 942271574 959376401 641626132 994410596 921835558 963937254 504809318 885912471 394845236 825692211 482956420 850196540 827387353 865439998 354248093 966567825 89777122 963551571 554457575 976444296 971900263 996684082 400111885 743114148 250336262 527542221 937548954 957720167 274615163 348583446 898914154 926255520 235325656 662738483 671029366 713735970 86415805 120293712 371846021 751057962 365796865 714945809 808939117 976637681 875198722 910645636 145234518 163051116 696339 266878199 686217403 957583092 56401371 970040303 706768943 851248558 523904237 781538853 437645157 446717594 251485006 436234913 83678813 556647568 311709123 354573166 328796881 467735083 839287617 978459788 276617865 927287131 406631125 673194083 363494983 639739800 968800973 999323084 705036206 767150530 340567177 855421852 364014957 401027472 346253660 873568962 261069434 507927611 638366147 894469907 266357704 930105255 575199900 672367302 914808823 957400038 843297293 884064119 526293854 953072545 636971824 916918820 439492758 442518072 455106487 779969267 171156684 501108830 366649740 373941758 53920177 74423682 229846497 443018691 721004326 886452779 73992809 659529529 895996319 935501137 913180846 979611237 924170288 976952832 53482272 992518409 784608503 974077224 504914387 617712602 145552496 516119124 648926028 991788244 336971645 844481960 340199012 472682246 482551883 579525921 890397249 893247481 867429212 933793587 449784669 968212613 773564509 938669678 772050546 809952390 272646269 577003261 735169848 771327327 460105191 557421272 810895117 867395751 349161289 404504126 591350961 662699172 134039676 229745358 550854057 587903128 426456149 852444579 829531001 846367737 878799183 983341853 926464868 969680798 883976824 998599295 496409751 545659937 370554294 901058316 904239771 952416765 535321290 775495247 516471135 525092500 3646955 748501131 825991634 920037934 619003550 761184507 579149696 877626451 134907638 333289652 149899014 437895082 921330210 947018616 168411737 409454772 286009026 965885611 81188727 536916638 828813786 864631809 891615880 980505258 19327770 117618623 110167727 887801830 831778577 912156025 315938594 500961347 130100544 818121421 57610074 120005852 462358124 856116574 553821148 997168902 471924583 892484556 744073535 932784993 864618657 895928064 220416082 829818318 809264867 956140380 630157223 844878905 264512874 909513712 318729952 513962040 646175502 827491041 520678519 916166391 720833356 921176441 613199976 745274983 312702970 442886116 464906908 990689319 261382846 457613361 39583487 939699992 402165510 647534436 328104334 566971448 679884543 813816726 412246097 982911313 565355999 716949292 289033259 617004323 391244797 850700083 915630054 942121231 952018699 987598324 181485980 550986913 986648676 992462911 868753791 914391375 348019989 546014745 215195912 619353230 190222956 391966574 417257560 585719581 509691909 533995633 284125868 552441415 228648869 995494523 602419425 669367473 296829589 977286521 679356392 883938142 185237076 470518593 238378550 404502948 245367922 526435921 978026274 993096258 865517123 938082749 970321208 980683897 220961857 962753003 741809982 927005698 766120198 856048756 125575826 600788619 923604445 963458571 906896594 926021328 749272111 785059299 937964272 955698117 713074293 855959864 139803295 240318227 880792119 913985682 72920807 607383059 408046793 894272075 552951236 714865778 986891935 995680894 755038741 854796867 353504285 633375696 258005300 957142104 744511173 878620169 465138235 881964978 902941796 992483944 182615399 537609741 506456484 595208849 71150070 969011723 900235515 922780926 952757346 960328136 447788674 934812804 818783015 878115512 408074308 810219602 55193934 617859306 714764619 719937022 190221049 466175593 523956340 704412903 903102141 915252189 817550397 933206863 382836222 811442332 641577296 714979951 77079296 682743839 412348201 528857893 155625912 981746721 696334657 702349347 27796551 294817566 966703967 973273671 166931200 934961146 900700521 915071535 785010936 913970348 450859005 998719221 472405540 672924593 747658982 896960040 829574489 939382227 897917266 972592179 336904133 646647628 656070650 818321064 170538864 747578975 797228553 944502041 619926361 719611725 122255398 720955568 408273261 563817815 8912407 778930823 94526866 164923295 19293275 919851965 735398996 997590179 449854698 947227380 51139730 215795576 787354950 977746838 955131760 968512379 99456029 423943367 88528839 983941197 552109063 592151152 492260660 717082788 677689280 791296528 382133305 706870981 234154592 365406384 412466199 522996805 97909497 488185259 437902707 481277538 828179495 944558263 53278255 534186688 576795751 867243613 196930843 964399954 183344787 234715163 40519691 548504235 842308494 889613923 46565197 534624272 381957872 774931728 526381556 571887320 621352490 813081939 556100700 772386294 151635053 290234052 754258082 973300862 505250415 690592045 474400499 874755630 602899166 936480031 134608074 524659552 258799871 806902556 302180762 839955329 226423824 367215671 675338762 853687659 982898162 990850521 422994782 740399291 703901502 989515262 702424787 861468709 345894440 721296423 182989965 322017757 254126034 668660119 303330279 571561025 303791180 405381511 546314688 753366537 199693478 230875129 25704371 465331359 500429406 758156981 995680594 998816259 153962068 470241820 506946545 778226097 48547968 489463162 305220611 652939795 952854932 988737235 142290966 798422336 657635652 657737591 990913044 998279680 977790821 984487650 214044672 366236038 917957802 968791328 450772290 833779008 158990126 277915735 349156951 515639826 928122281 964268521 696964404 757140877 525611227 567155915 220028923 283922685 900922029 958198110 153932397 710088718 297712990 723117400 926490708 960932198 857817258 952909025 103197065 457010545 29603847 961624160 890573118 910648965 556690878 578721312 182840548 818406976 399947629 505800503 79524593 483453389 487464478 629038611 860730313 943051350 125734330 846876043 312666538 420329856 565957741 767775059 354574572 648887872 33966551 764332511 199916712 589840442 89541886 697311892 425626194 693919938 129122116 147642912 20875270 834006178 316123644 689935878 151672847 642645491 610081071 635481349 437654124 917281384 260896891 676125298 106030968 742571920 873551081 896125974 700524200 753581262 637090128 803461495 995996197 999729011 712838290 961934065 487007943 754454359 117995018 296124380 692956663 929532109 155735936 836428916 20693656 70669416 870824263 960886550 99931798 561898041 93616286 348934541 707304002 923939516 716315419 959830007 731636312 797335010 976898032 983826645 732310053 868123910 381998055 956142960 80995620 469503587 634566965 907854857 611425078 686987119 78569092 562834059 402057381 993179587 115909326 871507963 960873568 969120891 557263722 649887304 370511278 466045537 564523228 605253698 298099178 535091007 457315005 580429391 584433271 989241150 3335884 995904371 984771367 998196765 157849283 731523079 403644467 625301253 424405136 858922479 743002905 806039322 717197822 717702133 503097345 829637574 999784552 999866556 196251410 867665161 440300840 921960275 887854055 904254579 851086221 926997591 428144541 837824686 954362222 981203400 322773192 669481390 867319243 881779628 147267576 274379232 992485254 997542738 12497127 669325059 758475883 873937237 722942947 859866977 695927471 740734902 847748220 948997509 948220768 964680909 210271807 668444213 891665107 971018395 295760314 608243196 262021751 352827019 230495693 350408832 40817674 358730371 351787997 590700310 396684630 793706530 607329863 907924159 827131932 909592960 562935886 861853877 105720038 915934181 855115105 917969258 933231941 982670015 464168063 934246756 827702432 831621734 604055251 855659586 834887470 948801795 480948799 734841526 955574418 979722192 649980735 660647112 974770907 999493773 954762704 988817376 550436482 556148146 295765543 404527159 378744883 487236533 250689736 557415004 389380263 568902387 670476279 915020593 506251879 524490502 588165014 712946954 395642124 644671410 96459233 613257144 426016885 674458490 788484817 792122996 352175709 467986483 684520559 879766498 845791828 884156355 369800785 619325519 871973029 936738552 723842736 793318578 153937637 539152351 799908807 854509472 616872510 937543562 877074114 887866162 265349474 922897659 774225821 911250036 7567823 191046803 694326653 817530787 983830704 986968926 357708197 458744638 767323939 905650632 405542645 876513753 446839137 996112361 446226797 531990700 781690277 816132726 476067889 858163653 893429553 934893876 437420047 627874471 253495124 660165565 94206672 254365869 451398090 711307935 751845488 994064543 70241036 755910959 656472585 860257770 421711934 832143393 256309910 818384416 615018943 758899790 192771841 321255395 781405804 838746054 688512168 696379014 662906553 794394717 996035132 996303448 872180292 959556521 709179907 876100004 106043072 641880704 255823538 854392059 738801316 887914125 877450366 998594445 674222623 981230323 502319825 630084822 966757210 978751102 291926377 930188660 509721971 965122225 645864684 680677273 744813629 832310088 83665637 145041382 737333699 957439982 330711695 469343558 579407813 908753926 56146162 451438809 878110471 949072726 804737603 924406462 258614069 389852600 938715611 989231892 515018742 743595340 755459282 804701654 42586553 703813347 323080037 951766731 977828919 980511315 367112010 555018642 1943057 814476022 163054753 767197513 307952561 704254696 249859026 410849947 560715328 688040159 999554743 999724651 988451631 992626722 916539839 936556544 923638064 989917528 194935843 402219239 179564364 429655613 224114568 284645009 47729063 945947483 470850578 619562349 554666507 947634029 819474110 970780278 496492577 832858977 284313687 994019285 773633917 927475908 609645301 972941588 75728878 958140251 485081751 873138106 88845762 433292232 220398758 255433288 354356331 383965040 234457155 332543811 588530917 927360015 804176820 851539362 453674833 936469440 655535071 976148978 228484453 506190957 642411155 983311708 442711027 489471374 908938159 916490582 282593453 886343669 601453663 871328260 238429960 970192940 290446512 652567791 628174431 655881682 742763083 809156297 466402698 641608599 751357842 866606680 31285233 33493190 907112230 993807161 699467836 953828652 762889590 899156948 486141668 979454313 427142121 623439138 448447322 913993688 514667097 573577219 617539893 872789246 257577150 945008542 165638608 396941332 31754727 945102326 736197802 818066053 866022408 958920706 996960474 998391377 421528026 840250528 720897008 972612116 684812487 974722264 332100845 652919945 56149673 685660735 740635665 892554806 974031471 990487805 635604591 656702154 576239673 601872243 162642357 734729472 622219680 847330372 382817057 953631499 557539863 724716367 250037839 839295583 85472818 496714051 53745204 412937461 682554152 885416057 310814860 443414848 225920643 469857126 716837916 726974865 339599380 410523403 304239258 434170183 36954900 353349856 359849805 782476140 15508853 888622714 442339602 572361295 9460466 397980344 115722903 996703479 704268704 928181217 724109281 915267650 649406894 988078775 534082698 928747410 987564758 997769226 130773404 717061371 304768219 858220605 752963897 865953503 464296203 571326484 659729270 896192812 119104909 624455247 538936018 988125486 809599448 894488076 445734719 867270962 421439480 455474862 397663249 670084756 523820541 920747845 175178781 209342710 743519811 954877535 18724658 613220260 834248605 884759773 340712249 620705032 42859303 685761920 350073341 696093247 733913501 946056708 45497126 873730872 305793749 589009968 695631194 867340318 858941303 958102021 108139870 270112512 363928547 815028457 957029866 986363795 665461470 677232021 731981531 954799994 519652676 916636862 468506574 587811181 253866826 945227930 804295415 860756238 481679053 885937780 153492537 357623641 187024446 408402008 885876437 978865266 691446649 920426016 612896128 619761199 58706653 604836343 428059228 736095307 316152536 836928795 760337033 878152770 886879647 911884558 76338337 833196827 542773810 817056475 45059920 739468085 798919441 889443705 933738582 952448638 591198913 781270820 650621575 785274487 554074255 852857275 385120812 546426942 634554985 990546269 284653339 639965625 891011208 987697006 571023753 579054270 312527903 570874917 686641820 697717020 911864820 972289997 797582811 900115641 969357322 999143250 292129230 848472854 292986162 827406130 400648714 539367727 648880806 955640069 722258634 919407434 664841643 792459353 25337093 694972244 976499496 990836643 6413127 352144854 203857127 277135067 853488264 926397434 863742721 951635855 16183642 837519296 372184240 663909489 27342683 546215401 907668086 989374139 827927356 918048337 171129350 752556591 649789602 837763648 528312128 531786277 242289196 329437026 336392485 952020674 539304517 797775570 64837657 830287769 182409204 508852580 488886069 763610391 929278982 990966174 958180259 967068466 813247341 891168877 572314095 895588580 457223497 545683228 641376007 730315097 190907509 308530917 560374594 989578969 783360319 942863291 13618983 672733449 613437504 625714350 936739451 942924651 260219516 881502699 991505803 991946294 632063702 841617914 25036658 859533780 571107296 594641141 586054554 803694918 372361305 932784701 701328475 724001986 429777210 654684152 326836336 555137317 903639385 953577156 39489844 415486895 376725074 998517280 821159653 845805379 64286520 567656528 698665669 843378378 265883707 946789400 326192078 863860531 260661788 715848325 405349574 942852432 462726922 662022193 130783358 889675811 53983150 232124052 639347903 987448494 252805074 517051716 246155767 511827997 714079533 752888554 70642884 267963040 439952300 759899811 961306624 981660842 156944840 665048252 397944308 795660980 607201107 829645525 923515535 934789966 530937316 792859458 528279090 735956706 841915454 925427502 241290377 631767762 943915276 957544113 433625592 913716220 728977387 797389774 550160509 801920674 932214537 992722930 870585079 990231376 958678954 996146902 41639768 278091055 51951422 199289175 54543712 850403218 630166608 703434461 47192167 174972844 756240391 831383903 695844541 870578974 948405981 992877483 838378698 964977004 669634853 752818903 220901836 632828579 271480743 587014501 835415690 856170920 951829796 967474095 374735243 936136040 268049393 453262671 819490020 919729959 953768702 982566901 749380008 905894161 289853684 937239029 471999382 671927818 674441062 906814229 168666001 310797789 393516704 545744374 788565546 841380734 661448251 921685767 361038687 615229949 39592251 260139034 140001786 715705645 467585041 862356661 67817271 642696374 519744384 881782266 458537454 980936884 782382697 948832144 579284642 966328536 825760400 972177421 349418928 675378249 861273660 967940856 259006396 966237317 453065979 752672755 763202432 814918135 8537131 607610280 456459659 582562725 151240022 303885574 659535162 816669400 26400907 226644976 555042784 776834287 973485283 977632889 381743990 577571603 131976782 867469745 261811319 883801975 695057654 709953554 31384531 375331627 887352576 947349810 791810319 962076621 818243295 998412978 964987779 969669053 234535210 898536250 633705211 650372379 126849464 973170864 260665272 805341631 604333305 833485552 398642823 708136700 933603001 937489856 367448242 769722862 971768640 979774426 702112778 785347486 736472869 757188336 541932140 800394682 130466818 846861290 407215339 723489561 433709934 664504752 923791238 934854079 421310772 580229660 460615004 617730603 582976001 660630747 297157884 678768804 240434650 492598577 418555024 655961384 965861962 999458570 801868896 896263401 629934911 772477570 408948210 780249229 357099133 695738400 929801742 981449835 69583127 127307039 488504845 563342380 470958835 840654648 128685500 346108975 154301490 175476924 800739192 889878947 559014912 645653477 522546826 881711678 826457460 989889015 922527196 958887528 911180707 946016315 98650962 825930787 558697006 654949026 913843185 992650615 952657294 959869542 896272375 943006961 953266116 971664157 51364316 699343911 220496727 256820794 511575912 959537766 187006088 565450400 448445218 793301465 696720616 896372361 167395990 755809734 876943560 887716801 944048695 955948239 132037213 354462373 388701443 846053931 550694765 793355620 361574985 506334776 456465788 837859561 880756808 960662071 306582528 904747467 218744011 708534285 385788534 612346824 967824144 994641522 490316952 664493549 282265253 876774125 583862013 663160712 887244892 931103526 735112995 981320267 180083565 584092819 804811142 984326297 838656331 958484150 33771515 286452734 30063354 62154567 935459246 943509582 129702112 479365589 571014976 579691153 439370314 815541183 343447038 865731417 874358203 890909095 445783526 705984844 732686610 991413558 543587846 639904673 887847409 934083728 872769550 920585686 86924273 938094595 186000160 511462711 678802226 757545892 433443692 883760068 939886870 947873074 837704890 892829499 966563666 971223542 941794545 972938813 569856741 687653581 214495238 267245103 240599832 381799129 10862283 976450707 577614303 794825290 377987898 900429714 988634180 999615355 154609703 747900813 808908461 922563701 158641154 389846920 333907471 446216236 126532924 479107677 375746130 469581652 422359572 528737473 998289333 998899623 411136073 703450938 962107652 969993110 397661586 575261559 31009093 34427277 196372429 659475239 683386348 873371620 604701710 764771098 476181228 750891121 904062479 916502663 147974927 172132627 279752632 747672183 963167242 982126054 110623269 934763558 794834336 833714388 29752820 650317975 101249579 788747779 924266322 959333937 11754359 495756303 188580698 537769787 402406465 539305405 604863263 711989750 462437621 717851227 921515360 972504439 421983717 849381425 679720052 716148952 16751557 931029653 161692627 895290092 120479733 339291778 139066716 989896620 978281909 990029049 71100986 125490439 111233029 888424215 331163052 786236969 732914879 812797852 931706060 978599005 901587164 938047100 218955927 743425201 559604540 594870978 25900033 217788533 105871808 939143037 55945614 583159771 633596157 675590103 852946675 903127439 428994516 583366474 602797213 700442136 219308098 228524493 541150749 762591296 451688615 837719720 259526751 784672267 794100858 934083133 830061804 946689039 711579784 935734811 586739586 825341556 943111052 949202108 940561832 991495456 104848709 336043359 39847716 676826641 798935085 986176089 112303927 366864395 898358089 937381143 775198280 942291823 968322849 980988899 806999648 831867854 822562699 957476746 531585908 718044969 796129744 845888233 494191746 524530273 970039070 982765157 991310089 999937902 823676060 875185337 738393703 963482440 278720462 564165794 699264033 806060496 792803675 878028424 946048378 988749156 89066293 137198624 395330379 537418724 240416948 915166849 314383010 389542421 329101114 716742918 978553000 986653485 329429364 623356402 851186941 957361599 690629164 809131733 502774114 574007839 511250932 747064041 51624955 352481232 856915516 971138451 841047307 996556130 458841817 527694156 435412908 818738600 325585575 933761338 402592815 672782949 427978163 747910717 876518248 928076073 634032366 650530642 701813305 889201237 942875846 988278285 317741495 678143793 943694846 948429075 914670489 961847427 309422823 556802944 936680207 962566727 879294557 891633626 913313699 960332942 412376013 635963797 259553304 333273826 113305055 828354971 308683750 325192048 197889874 911390342 239161290 861889603 194250856 912943849 836062284 854751138 930570893 969715890 312741878 653903486 44575650 988374721 290356197 981812956 117391645 117919518 244313239 929346248 27974687 390211958 758110246 944030075 177211967 945906754 704125539 870406697 179206718 251299528 496563963 790264664 981583053 987729154 656749974 672181793 352616628 559467885 143015161 390626773 439657959 729717296 573776399 673301507 269045363 882115154 561313463 661410229 645474519 832052601 52070345 833748435 522321905 860023291 367264841 871213209 411785700 416604801 748349483 879792931 758598952 992263154 574226983 943442713 881769092 922798642 357852367 895064049 132635285 635967653 304749449 871941691 33800007 675596740 982466813 985888417 564578470 882760296 52913519 953519052 649210335 760031462 686833648 924004559 949450919 990844496 138206213 445607523 533835996 830769639 78177752 943510679 324747285 907559745 201052888 567607169 537679660 805552527 878958195 980303052 754286799 967189708 353870701 424193244 210055361 273045081 471987821 498080011 441199070 886792088 852254853 936600728 640664133 876723877 881557564 976933694 891144832 917904427 576313927 799018438 435117097 518441227 22253454 274146426 158497393 675045835 178678714 240962170 309931609 365834815 323097064 503110493 610054837 616394838 359429667 720088827 20466783 534507281 475948363 851185344 438771460 897444397 342840363 680382307 984254946 994840954 840851331 954172859 935873108 997289566 157837588 843948478 429873311 596380893 805734539 952738361 796564184 828398341 413860589 692986240 718144424 897484311 604449614 754914107 396397214 841234577 365995643 446794174 107054590 753932227 821022775 934517553 891636225 994123294 316584154 853940520 668760048 930496678 480770657 547103517 130094904 683603354 810611095 952407258 94105059 567836657 211433097 828845765 933389238 944125849 606867876 615948483 726535369 921886797 63479974 586706379 504360689 777991891 73514289 972757808 765838918 921343086 796122333 847959378 975193423 978804093 750039157 917202779 421937201 777037582 441053426 705119490 520099189 750188985 65118481 685472556 574445759 583739346 157117937 264947857 448499495 882083059 225430185 823378259 627392976 945999016 926945085 927938914 609313322 775729876 916899485 917677859 988705981 994805489 217909367 786792474 929793916 980344880 735087485 777774198 775250375 942550368 363722278 474710280 765478666 978421809 766504214 867598258 516329306 614632647 516644284 533133926 358640676 858867746 922514613 924875944 128285044 398491972 203984814 872190551 155166868 865849467 19044207 66501082 513510127 989524249 887514044 954609163 326668319 398349616 781816944 945864667 567040155 976763158 403688577 742006326 241637552 751425510 980504672 985886545 907908106 944506899 682737598 776434816 673251080 775623523 339298141 681996503 106720737 587695896 619760294 645172029 658545620 856358931 880614845 897826062 344874139 763743713 601990593 770892849 191350506 356853874 414264246 497310934 506889594 598195802 102613833 205127158 103424876 128786444 468869645 619346961 278491111 296931207 874063850 986271985 669479971 734257704 516975178 553112598 238979191 659525941 65693784 209222756 690812801 898860040 631288932 914391234 308320068 745107848 697369869 948318119 168701090 989340427 357096610 507044762 232274800 234916637 241080247 564048506 727407350 850242846 532845294 576287646 893440214 990518382 533279845 788249763 110822341 842191185 913293601 943517358 953521210 994934310 329596167 821960829 643571146 972574035 669292818 955943041 574975859 665874897 927888614 938041484 105696911 700657193 739265815 918323572 853515274 943349750 758970744 784426045 312964639 363458375 909569195 956695873 75014560 794169791 143662748 787786359 397388214 711520068 276410111 688306585 927462041 977048140 858684048 990836882 593688384 755453114 785824137 914669276 747029392 866260231 690410302 822532262 526196250 702438219 84554326 705902283 820538852 847049767 929808408 943028314 836381777 971806781 691400877 870189104 817232341 860143053 160599649 869469615 273484370 986959437 791446298 930309308 188468899 989678670 131738635 264319477 341772733 810272474 509464229 830474642 627822167 950443882 15405306 412987740 394464283 419050639 457566123 626434524 56433080 187683101 71951117 429089628 601743402 960644389 444844436 853054836 494869063 674641871 551496650 597595804 351638548 934218519 83914396 502659803 939280585 970512835 7686395 239814984 728510139 961556006 974073846 983018159 997967281 999055687 397779631 502091578 524193106 648559347 614849950 968975826 274682489 701145643 241855185 805306535 398682156 720316675 624546063 626714162 592092889 592897877 526307904 729182687 243632769 439673459 147388290 168130845 372562707 621788929 599911164 971827746 127162240 458297465 63251173 673532351 556939270 875878502 279656708 833399369 457486393 596448119 283245410 351298114 481731769 527716534 673618923 942139751 347540643 708988635 731194082 796361208 832391408 996819878 39298086 881511989 327767664 375447952 571201008 902111925 25837766 795684493 69567305 922862279 984649037 990228442 308441978 963720857 782492175 941861853 737325493 940605411 149516479 891241448 890847677 988726005 870238871 996852537 545426969 705343184 613391811 798493201 273429928 565428118 239009458 839558739 182716070 372486961 587721245 972494624 213046136 877784953 598401342 635718308 843245214 972933166 558315640 806411033 91509117 581340082 887235107 898280874 627427380 665842172 281568611 624937669 445958983 476081507 616018421 685405854 507447478 512077475 173541897 395221480 190803264 446908196 972764015 978667722 419348405 729080507 150268900 613050676 827514954 988998977 978734527 996136381 785085908 801972463 51882635 766655382 935593581 947918299 580736269 820779762 810845052 812317351 271804839 603084453 127918487 565950062 613415771 744530880 947808330 964628641 103675383 112072672 758362733 994552409 673782114 816392750 580299531 714929246 178924479 374679812 898117445 973442682 410773021 528022015 796662680 900212482 352206464 774330718 941267119 953839952 122023409 539977661 479579375 843090094 568374050 902413865 959080539 991186407 930238093 980312060 870485564 919982281 675508484 860850563 773645127 774786956 479022818 901757714 811898459 963213546 493872805 549488782 543461742 999904595 543940872 816210541 908601563 965512707 134775934 167713458 212805476 792473674 394777253 510578614 427069973 477717597 591220394 973479629 467150521 876418465 738014344 852749983 995865594 997340823 120247334 952739650 428384690 617940274 143990676 731625147 581001836 892175035 457811474 942055408 986954229 997904103 836962372 841422666 423748714 902146434 693927271 944452783 728637323 913598382 664194064 937642606 340711772 402118340 147346869 275547031 875864694 981039836 795952214 895660617 379878268 532457460 633941423 803634222 399311877 673787149 980526677 986563656 577556745 757109978 122664708 592677111 309011798 564985098 773389661 927783651 743265612 797870650 684626455 890096154 745434326 902129083 685828889 950152911 993727477 994513937 383102543 562762933 766187066 841668923 610900608 654842171 670875094 895994369 418400149 434776864 471153995 582353436 14011592 341714120 457060554 951099658 899926943 991346195 477978657 931801614 173376757 422126385 845234828 950110439 874933546 983644753 601113149 789338603 57543247 134727691 308421769 514771496 458641046 897114452 354193201 974678982 355724949 830286038 611643320 951320831 315940124 318455704 579203932 934759115 748115198 965273932 332804899 811529370 850699513 972195292 520039681 687223992 782373366 896904803 659384914 884513602 923499969 937007867 525697943 922321904 245877423 982465138 630288940 702181024 864846940 952510395 732745619 852127958 565703919 862863359 879755695 898353704 143412657 735575884 691928653 710454226 924823360 957855262 683749313 884784483 575328884 709700900 374548562 671334937 320334455 562110903 570804635 990624906 701663650 704050129 411783791 430044505 200423616 757216495 808247384 813722165 745306715 971499532 713395220 979264951 18090640 524860469 647305772 821732613 157906623 257587791 730914784 917015781 975304302 988616636 71208656 412575558 130340703 444972901 989195027 990072724 772419254 954530036 835890427 975418018 30751621 46220730 372952328 824590235 847371702 878086554 991094139 998643247 721088108 823922169 12673696 26020191 510215021 754603884 812123389 945341743 179409821 296299527 389020328 486525089 852481842 928001208 539126100 819811118 157218925 221104305 702198138 941322087 715836503 737134185 287635074 880756509 65104562 347647897 318953989 835032312 314567855 947083974 276578305 854011923 763618576 863550261 341732155 546766696 807292641 950781897 431691038 607945878 654385682 853280282 381280074 395617149 369807369 411252388 960309532 987769491 548725653 575420740 17775416 815450161 466385495 777650688 983656510 994677462 552185678 656493608 965781956 975729519 333018212 339171425 698958835 953505697 439226160 869582471 891104786 944640628 646690190 687803281 100515491 339735869 550572684 676077031 416897313 933526262 151552235 244365672 851005307 949486789 276658857 523106273 275216104 618644984 366647841 582304184 65200060 441861149 788597622 971017178 386820292 709518276 653575873 923389216 433608442 462437525 610214286 893569112 132481177 324035318 375823749 881150573 821476446 930344451 754961657 762504851 977252519 981235014 288848390 712317140 104951943 517911824 122569620 196396877 12684915 551830386 913826788 942333049 562254357 881019953 899822 690262710 572472818 891626078 366125924 562813980 123954593 862005575 397788432 561333034 552275438 663774955 704559707 884430751 475520 989127453 985118494 996948565 824518801 893604947 496413148 540017889 397516513 816882907 886415506 996612656 177713477 923249518 590215514 877954260 99474725 234070205 122081989 299173869 517329668 557170066 700906568 825728002 960077955 975107814 384308726 449168221 284467513 337681221 197854977 371970485 23875784 349186422 792489450 983986866 961624842 969586475 541719240 999052738 568210069 888488622 636814399 779672798 257514530 528609896 562075718 774760024 271547137 336885019 230955952 833573036 372386329 674821405 371609271 662069155 656231371 763566908 26912898 377738019 406433028 838289243 786993697 871591353 598467797 979576423 620052631 662114319 337509976 737055345 870560380 935113117 374818629 722506973 490684677 887043426 860324725 861989103 312354834 628679127 703531877 788223283 629816905 707579914 888057793 953238144 804423869 987888497 899550463 956937262 173058944 268199649 535389124 717699488 999888329 999987950 847694601 914404040 45641067 110550270 693721525 700439957 264601130 493225544 433332123 452918443 575008286 839676168 973003224 979034169 51078267 273050847 882750083 963563441 923897251 946058254 329541304 412223915 544928279 882892576 453940613 927470509 499507918 900241207 269843447 866886852 52111035 750153709 756310133 812669785 294929056 704285252 189463636 612039228 609259461 710431192 10745319 465702388 760057982 775118746 192523313 627641587 335290243 774129337 259922676 770846037 251776142 546153777 874807062 942192099 942596070 949665661 76116587 927367578 907758162 989736264 744998800 910172280 610323570 660516842 390877099 973205354 553809448 686181492 429300679 717968795 981142309 985817015 748193674 756053513 439431355 999343718 127013004 313518187 395290792 483307443 440864293 618558936 628421813 793150867 73005941 292032437 629061307 904792101 655331186 913024923 499646175 919091067 218321192 578294176 6897502 386924099 88322558 374188438 339250120 676561035 826134264 897669815 855186222 906207810 708025552 816555242 199216289 710409873 754513188 964829789 229272793 247512521 489740339 604575435 12552619 36848005 309800008 962616796 230994269 915779112 872248197 998919435 43519566 293507750 781550771 933042403 137261344 696079415 13301186 874673759 163235051 638075560 858905609 895046648 539743753 626304334 681500957 994014858 448129836 681170472 719033100 948458763 311927458 706583642 362228935 414500487 294123549 852034566 801129453 921192457 870341660 941563845 768128300 974081597 809925928 873747021 382930923 885500216 614046019 693566132 734665227 792231206 549513918 952667768 345070415 532395325 479165369 709982722 548868169 632604970 461055708 727150348 381386465 961997622 675240566 924756689 836196599 937157616 274378787 719941619 991365923 997879282 80285277 500726832 55151534 891392968 822043447 826933037 886822291 923194402 727391376 977505077 976765824 978375200 592809999 729034756 327989465 599716097 458562493 527332948 320047265 661610767 539179032 696512971 799297833 967819065 92408363 645743607 57835407 442403893 180201078 523510792 20669921 924310536 665608838 667144594 432801464 936212852 555585316 933530438 490675017 945864726 604344731 965859674 21504957 151543243 661643248 726720388 171793972 793072486 213095229 472218516 169021132 900663141 37353386 328133423 533258217 806096769 339783353 775135128 168691169 528141002 310316123 769104180 926265487 949843095 183081705 533369707 453699800 673185400 793920532 968892686 341558895 495130436 772253856 869431305 117441447 452797646 756522120 928194883 46028484 216708683 255619624 698599389 269603690 368240974 726843675 841188910 688850633 946917370 442540274 669393298 27532089 729997711 685006120 806185781 301414414 848983247 648271858 768302054 415671214 592387404 578591307 586158609 30536847 740493223 311547554 468755984 391122947 428211807 646854951 717594685 277638735 748882765 541436473 756147761 297422538 326007006 752250335 899338458 865641180 938478016 962014550 985885512 416248842 834563411 413648459 892623199 668862318 820068481 581078857 954120646 280881879 836716806 865973958 920136090 62563496 408175605 299928965 440109708 871794812 902925393 221904697 945428542 966798947 987742044 193584727 345187334 217395304 760365262 807599778 914053829 300333458 847711032 920268329 983634889 804627421 904382397 78893989 630745723 638342552 661047789 983561790 995058546 499280973 915324018 372859569 759590438 217209328 911664063 858151781 882628402 239151859 395163400 552363501 994742583 900325004 940689135 760970831 887035586 430287581 906554381 679737910 709048943 582318307 808953226 966449411 976644472 179683324 605248283 329299607 900898521 346714004 887597098 482216605 822164483 741133236 993177933 73261402 906561672 839818374 916434108 781772481 819427828 48629750 540002539 320477602 483843130 503946344 802148946 105770433 532650230 376581819 409398990 420917621 646993670 289533761 876306854 472975155 777842047 269286248 988434025 660688601 832058545 422693039 499138191 918524584 974983968 940193406 991355431 392914767 778791309 634621808 982540163 65838579 112811342 437999736 910316125 285856200 461910105 867483466 943490208 444036443 926271419 878477247 962010883 787608423 825885623 301897516 303209894 670472080 958258578 410744893 501653679 521068421 917565261 455287760 921842587 952387278 996190939 286863248 359819479 444792060 931502651 148198065 994238498 309756069 384851420 872856511 998720643 428575803 429332497 906897398 990857591 293788731 446625861 689540434 806180906 843811229 876973726 584754891 953392415 947240385 977410236 830128432 895068459 968223954 995375478 719992079 746456139 737374599 829701760 117960876 746362514 14656965 437282065 996619256 999801979 8729638 662938590 706594559 734347261 944842076 979412568 270204613 939919078 655249544 728971567 242448543 535277352 598901434 961010571 337332194 776313704 279424773 714623877 559942702 598664854 583420759 951281807 485381799 959536633 255312306 734545547 276599362 565561303 251586610 908380653 186106172 403291513 760769142 907191286 791498497 793228676 879972177 987970657 461326002 829002547 778734485 938534744 252210535 701674949 784482882 884553866 139699465 525969624 674459030 703277448 564607210 914326279 931864077 997833105 54355250 804402902 348012144 394643421 738131389 927070747 298261773 969372620 338487060 836197221 386422142 746703812 777161912 994898925 999215964 999926190 30786208 186161185 584483130 757097595 508360528 529474175 488446033 815977778 639808018 869779567 609622497 998569317 118267774 917161353 267167506 822935298 375258957 800875700 308177863 743181374 619191918 818550379 588350821 932201165 476688550 848079726 171754794 547373297 831831126 874966252 975748426 985764507 885942355 891336917 465300473 885092378 431293758 547876977 197196018 295860696 510800471 618858467 737793309 936237740 494672599 803885665 441953673 514845896 221876502 309019383 132413797 634993394 811906586 937898307 765889276 788779373 482038897 699324581 339949602 986532234 796778285 833492816 964272745 966563795 996199931 997472406 552580772 674122557 301406592 871471762 480857663 959465131 203302704 399046085 781047680 998877038 268977380 305448004 311694523 555525954 752379330 829987806 562345626 800747740 891984725 916172531 555752675 687729542 937683546 964237327 10550662 755066149 45385304 926629297 655902491 918404581 23046782 717429632 727774431 828100187 622146240 675721681 227426669 473529583 814510487 840098540 314647483 556252004 289976483 499870790 836010926 998533601 773517669 896942229 372076884 758301943 487694554 680170952 993089225 997271911 831225765 913548905 173591602 764989892 414986678 979285082 509688415 950659841 666839215 773954371 767697588 873965779 460432221 702948156 680427122 742555076 399492114 839215575 279692520 919077462 594692294 703220794 178822769 939986507 655225491 731757008 109348687 814641346 572557113 917190887 670061690 822311893 876540802 971251914 69475369 649311730 100064879 862902748 650229302 769882502 409171025 582151598 556221428 779978822 574895135 881741247 139873460 943731723 36340796 636671926 581116493 708565297 337499868 449843814 738022563 978383627 896465495 980294975 366909818 719408795 475415205 874294724 360192715 430856769 527289714 923675132 265104630 976654403 804679681 822104678 768152590 898576710 918828017 969788035 670590066 707388320 447988110 780804132 250408434 379301813 102670678 555697845 629696083 906237406 793686555 920652574 985886665 988775768 492938796 972550599 391920562 690695642 847838574 895424336 681164902 771716121 785996319 839409437 770487319 851004672 260897573 276729466 97456061 492949423 670796019 972228747 996220573 999479207 514295933 842021119 53857261 569780692 607564330 940624496 354768475 805252312 687741933 872287408 921277762 996632079 554155775 703604831 807775879 953362701 714256203 895078835 680719424 792219975 814067617 983520326 56132576 869823463 760217452 973923355 408369969 688876755 514273126 665625508 933871950 953032545 631575380 988796116 652668849 938699379 971567004 976729201 993002415 997018005 142156299 797845957 256013654 310292696 789557619 792975555 386487742 707094794 199218628 927937943 575757772 699461558 459813817 691504572 341225398 629966498 526542780 755308011 350389653 850753971 546168358 759265583 370055461 912606603 778150826 958377001 446689492 734604310 129998854 653182708 91705819 547334091 727918118 822396039 173949291 308675215 90325024 150985405 58366244 168530364 856414884 995070975 662726352 783229679 305811554 733673000 341499843 506474920 818849769 889969204 165777099 466024313 799698365 818562374 270064146 392442262 737371689 880064069 851542369 896851966 351509928 920034127 143045969 817250996 432541343 595629143 886903731 904653269 504427316 722531708 227369479 934221463 616367192 758474655 380056764 891526955 352921462 816650238 896542785 954694117 329164848 388275493 302691227 349124354 797550804 937724150 114910646 723205158 257087536 518143298 767720154 812603115 939225829 995932658 973933304 988644655 536639504 658043509 390907653 898489964 675965659 951556055 186843904 961732791 469669911 733383510 820932812 918987106 149671504 985240847 373420613 625628594 538835099 871702783 923982208 931816593 703227557 796412283 516232812 815814940 995982555 996893266 162397249 482105302 719828862 910845672 98829606 917991357 572570824 639905014 742279838 935045379 418475648 972317710 929439219 985120701 782370590 951628715 30885071 736174016 919158460 928732557 166115808 424669783 344475884 392481844 786545798 908989710 329843666 864407534 39608962 383592758 202769094 968410199 331377871 442868843 107026787 174846897 989765378 990091066 233944038 707939922 307710584 343279513 83655536 470816832 109264467 681592634 239102541 677976932 141666043 368833050 745033405 787595790 335241366 676596772 870202386 999435834 351757041 720606789 423041626 445032739 734584645 747845774 60386778 835301046 156302217 703695295 555453427 769169274 164941923 378781153 69752462 265663577 355843025 500493915 296777559 458875268 314033601 948912605 763982704 962342352 990930177 994283956 144840786 440397059 876287953 900983702 216028069 249205486 26579926 846892270 416865283 914347502 693131801 816647327 35971073 657339769 215592666 912296051 238597520 826093727 487484041 816558512 256714309 706687960 315513375 410338809 756117007 782309475 187839814 483001701 209098749 631907422 653100443 841363993 783177944 839144761 771363472 916539947 941013423 965443547 930922252 981599029 680952220 759067260 427932237 806724684 513978678 783233916 703946490 908892650 199529184 552143124 587104633 841370667 793702574 874133424 137164986 644757278 465145274 844933791 882896372 988724210 113540366 387379552 863621334 871712804 622210955 810653525 321614251 792755324 176008188 589952415 485501126 971326895 268741231 945264677 63552355 925576266 278532160 556842977 237590924 482329601 980202513 993338810 332512620 704547045 85049000 630779112 734376564 849987710 469466615 839219379 667714667 716175930 509788169 594542188 683829980 799701971 665901924 907105423 258003856 885054180 192558868 616881152 295653749 582960418 243646834 774257809 40894030 324424300 683192958 918383396 601016794 907877158 295919510 849917730 697672027 772808834 688200953 990223564 12848839 475379905 102737175 804682486 502937702 984921462 742009603 967267979 496821072 699930292 98802301 881012593 841711155 936275378 576188354 956202099 478481627 788431019 133114075 164544794 873130822 962292304 773568403 946059998 895789104 896588921 834895946 962460590 674091319 985592456 356326294 768827705 940825175 975074492 187881630 349806677 989305180 995520409 111086427 648882008 8618919 989023306 839507749 877347815 435815866 822019584 772018083 998544066 227439853 243928662 568710161 813712893 618916598 901491576 574701656 882292159 499313252 881176910 215600753 259385819 599574556 772923150 563186217 956853603 347240909 583354226 156139350 315238171 909174320 955068368 281356306 723774744 122730893 831271698 618736967 878167285 416617770 510376363 676809934 690960603 450914193 613520179 424019276 788060522 908667688 951497399 408412596 649575814 89533222 711551688 858146954 873979601 115473948 677073678 67453416 721230815 464895952 791539204 552168350 739555963 781278549 974688269 391359988 424303511 279805370 580806276 428141037 820242675 482655846 914025999 616732051 867237158 427364550 740378601 729436734 784846126 6541972 204007422 631818587 974012317 375937698 591872976 751701724 905187956 366736643 491870330 980367140 982586131 751628445 803329267 344677022 627679370 957780123 969534602 781111551 808458360 479029667 695651317 170556944 842591126 380525575 411121568 130005247 642203844 6031951 178039497 82794146 143097746 119418509 679116795 100989110 537710988 596330287 609926667 771566005 781062465 282727022 670499124 968972317 993168250 748328080 998955529 198800124 610012648 522603992 749838869 36525967 421567485 671774609 872052323 133991885 764939889 700993811 719027902 72225154 673024157 304676045 399725883 326598786 822163268 185637209 803672088 606101016 743007986 964341859 998927291 874692066 929541513 174598475 433924643 157372793 165293494 69907324 724124549 351408684 368317974 774181982 806805427 401838969 486444644 643384174 845500328 298102369 519013595 341601277 708072183 355803809 939614800 241171026 346781638 692127099 913403780 163161299 516842736 399345783 817443747 625852087 816117378 338561448 340644977 263812417 503793593 396534214 876018438 13451093 79407494 432714201 748434942 449603141 644413837 86415192 238549457 855030386 924004433 775275554 864300303 738537255 861783737 764999265 906721394 945710040 971074880 94191235 339199603 454459159 916239725 959190673 994851699 377864740 964580932 498497020 678530403 87046421 520530198 76803037 355517081 249032227 843878744 621130827 752409891 584332173 763027142 933231713 948020360 804538419 962619361 613426934 957808907 366024339 570693727 548171617 934215775 824476794 853847664 1014323 994059588 695187151 738405742 609064091 811818819 788851321 922752965 167956140 800605351 236574168 264535601 867261175 917944570 123532355 551138931 268033622 339343955 239429712 700133391 378360146 634615592 160863404 700703256 30212369 956648442 481934077 932130544 602043547 927573622 404918049 866561398 24465576 700104877 765441822 913475955 329913661 421346387 350742918 729446196 991452007 993613184 592947887 894898746 157688472 898045398 905990949 979988801 277593474 888848905 551642537 732843812 987646969 996022589 375813622 847445184 883432329 897757529 858741 722114569 635919974 937688881 916304544 973838734 72499432 949160474 402755616 651282253 677497039 874823775 714937284 832441700 948979924 973069815 999515314 999609053 777178882 999061193 939702467 988911340 904492709 990827587 733856299 759237207 857697692 927542598 247673370 356749409 360562328 370252104 831115407 855492993 699469106 990227897 610287030 621011186 494664337 638954263 732332959 765976948 973867974 993000538 941291692 973458167 233194998 825317767 640967070 877657913 137931562 424592941 244799450 985835832 248708974 268477647 873594067 972639953 394883942 679748524 213376754 915454335 393219428 545256931 579348107 628747268 98379136 500197811 667175080 784710673 283785607 794221248 264974231 673567412 917202702 969379143 694544596 941803415 930383569 982000837 505658343 931231190 629654221 803536714 282997896 982591789 410827080 889450056 358703156 690983734 614975827 872114956 970912625 985730460 600106950 798033311 906711507 932093073 134765511 642460342 88377753 177911365 414599213 810276226 939260421 982198876 313374684 473699173 864726009 871029899 153308643 893422981 397416965 946773031 635772504 684724333 185903852 500683926 121485925 890449121 623254016 765017192 211050379 334802295 619449609 961553577 490017482 603823645 284324737 458898089 918485058 991061853 256911605 432552184 589148128 626958479 465312058 772119335 837739878 866843709 423075312 958424711 73348839 582358539 484435016 620393477 268532108 954537846 505717702 823164766 914647705 980200548 262657571 753507643 900194879 974910102 232109873 359660524 670133210 781205288 460971261 572981076 429332080 614395796 111145803 756314366 616975658 906293249 349782377 479762603 324502240 764281307 632322462 654026831 222183314 547251524 447748237 650435097 739483895 985572282 417882094 507995146 814419264 952741868 647756500 810624666 428505265 540346718 433412681 838035227 199736461 448025946 747813113 915750013 444696636 571250770 319270365 886126272 480363606 877830998 568871011 711309693 794302717 999977167 677373399 929832029 691223584 920408295 338598721 609282482 790365510 854655093 805554869 889645328 538477341 683106474 230317193 253882214 586829467 979845243 949700480 970824340 920533944 980077495 335423076 592705085 77127094 991277179 48064220 378405812 716220104 833534556 461080376 874547094 47066965 799733221 688506420 827207422 104647851 338570675 2923690 748699025 334198269 940048630 758679005 888721345 616468129 971001274 385806144 624918224 291798478 418880289 600277579 898043192 940847557 969105479 688017692 811170405 944084325 975742887 666229245 957058804 534348641 731917573 943784943 948790654 355467807 763991793 262638846 451409587 680122324 959264249 463041677 770611678 438343024 607926293 468959463 687280456 550440862 850053161 587670888 857199311 828850074 849497854 172117070 823298827 180590696 878766576 537105320 981788747 75185925 649596319 159866925 347624276 869153856 907443907 415769880 652016410 607383744 800538602 636880701 937139558 546275615 687735616 586905452 655192503 438109186 804697461 760163744 889878633 462000710 714342491 985169897 991543308 543309956 881588322 700854882 729858411 553996403 704894363 949581944 981661962 150558707 561868088 711951070 777874144 420059143 445311423 19718978 286251232 392510420 683329544 656858061 881231908 477228715 608118107 507771863 964314826 419488382 946393372 626440886 689774220 982813136 999830878 667814155 670507980 455810616 725540020 125106470 261957182 920879625 963582472 144484448 232757461 175564610 500199392 779029294 909295196 627730460 972370618 771557635 942104807 271132641 373626227 676676771 732060699 636341249 662865807 342067519 367700288 801700299 926686891 221200908 367932053 470349489 665714572 551214600 977503106 508147060 697324335 179190468 432509662 70671084 891609474 247642461 963953865 757729774 907189360 851027926 927875664 374808235 525280794 126666530 831776170 418398479 502338054 11228469 830457379 549337773 605047569 490907307 502438491 728978402 863461299 99595155 350766148 450909130 904793901 583044573 705597098 208579603 479772325 421791786 761116617 165623239 195639756 980967569 981691179 151543353 993513378 16419705 594570611 667750565 996552746 222575172 295414812 856675263 904797331 904793848 947093862 517997105 791472641 788758704 965867056 543522337 835315775 387660 537880316 980863205 986341274 83942106 297844927 945231421 968209611 741928162 944818744 776824110 973980620 669084043 694931017 697167243 824945335 432136517 433278596 646354144 798427735 315828475 875574026 747202939 940129315 534395432 602245883 133059944 352907201 719062205 801944954 89807265 213471116 650631850 674700303 98730972 491375746 445166019 845041030 237591109 404199022 271252755 922145978 545383531 997834981 276861924 985208072 488754537 589589304 440441101 634700501 651856708 898987257 824613766 881720722 413112441 858350082 378191780 985044488 795881561 883287219 741350210 876195679 921227261 979371996 442746497 532138329 554714985 778829788 602671564 819714824 952420151 962552138 951941557 961582806 618183282 626528151 820258035 987921063 34286373 499339568 771348807 925655021 856884784 867233843 765781212 896847439 974851588 988429778 374692405 894909698 556396076 724936325 644288155 844542175 39230822 112810357 285602577 771327371 487190367 916871626 126905986 605534828 163793565 200546465 914176137 969440056 711080289 729479156 231516837 719508260 375252463 995433647 428649682 744024926 709273631 723894378 495883193 980314391 438789947 464022679 754768847 882594752 836214616 916258142 206186752 208463773 814319872 917908663 390874845 742995362 116766115 797989197 352268807 594910687 59293167 665443414 399429810 458362417 181183066 713973976 161568215 691087339 467587697 954075242 160423811 287408689 867940475 902914929 898925486 940847315 33759575 214216100 643249819 911293266 968433451 992247213 379562128 726757267 11530551 63889604 158462597 247556335 947396815 999298567 404919123 722724578 20397740 185781607 166309879 982768440 989447858 993729992 164184375 839823464 455829314 880584342 9226336 399754411 819536762 882125484 504752165 620497826 236862268 487000210 24307078 877203371 329571469 663789997 777446644 992732936 753621084 769363702 532761792 985016098 410310567 708631435 306350189 561044379 993180373 996719875 509626396 883334447 737804265 796454939 358704473 672399932 411218622 412016735 425578289 597313739 572902620 694076300 941997153 988064252 51366046 558470420 59869355 65042526 787598899 796123381 388641836 879872928 897703342 939324515 479570879 554608960 822248310 943888068 342854741 931835305 819631797 927738157 350839007 438125373 376435999 680430180 906156343 999017294 723726787 871615465 386056 317468264 781963374 888063682 82353877 444496584 922950775 994560323 117984201 126464915 99316398 473035717 68704257 745292791 7808930 748676425 103862198 740085120 906727779 930578263 408787097 501819917 431682461 445017577 205335592 455220542 358791565 414714043 644286186 833589144 279809910 603773156 232713960 670912273 115676180 706658662 671552396 973966659 792288333 982361440 640367724 980320921 500298890 613835170 944499709 965075628 778997710 873565908 593963461 793790222 75096471 762389721 220402187 520214702 347195535 625165305 24903084 949105025 70876430 608467775 857740845 921289081 980964617 999248286 901507233 945609940 272995636 743108630 923150261 991073638 573675004 810452873 148282191 920206217 436795850 877055836 324571137 875154895 652349901 721458001 19144628 730052307 557304553 974452652 717050125 861745613 321297702 405728568 597292091 634983663 210979607 942350642 569541694 586583816 153923037 515752836 366292429 657695121 416401673 482150256 162462638 623622681 939786497 949707671 536322360 617547428 247560469 906531254 833384493 966861205 508172223 674343040 969312308 998895080 735460852 787887426 791246402 825272128 661945770 848328246 513990710 544261905 84870678 444179779 994060355 999831782 781687452 790545476 409755836 581571745 805610753 849342361 151986860 731840451 385198436 537493917 617927843 811932206 600809778 774512417 277373022 380644226 673142392 692146152 330704921 725646656 709669480 802551347 865747745 908193252 813017217 890294730 2217040 239089547 628942377 688630340 689550462 847113165 635653265 984916026 693557738 763031057 422251138 603741076 945794839 997372726 611562558 965936813 230155193 683309609 879526702 994068597 428565048 529840126 953241333 988018600 937667542 982855452 160077428 925057663 55037503 269209305 993100344 996748399 688620328 857310486 996083280 998287047 803232627 965481246 779114669 886276935 891480770 999585676 191403673 536915785 614666298 615236738 614712548 758344243 519779084 980901584 433486788 717774716 297465541 671395332 754678490 842926589 826327881 992643718 810938331 822296841 497092972 995864060 751657350 945685754 192233750 220448049 911715232 947644797 292920374 811273048 154290253 716653297 329616334 756716442 489310776 558016758 714479373 945193371 84469612 138831398 411752358 819354385 864577146 884297898 293719443 712101684 551828380 977807000 328098716 354270772 677992011 781815661 864049999 940936108 716752225 997518637 758223812 934296994 970336420 975888529 209085212 267158150 574225981 798425660 859457432 874151922 131562662 626943972 675713581 830612849 291028333 799965459 811847333 957325257 502657031 992396338 451492149 844739074 645205496 782093169 607622516 886163211 931992929 974474892 487288802 880095067 48011395 234748511 108953597 803844943 680659581 694883417 741742961 822333643 643626150 824380883 543979991 698470554 212216610 253245204 717634799 763813992 483319001 763940577 655076682 720147782 289871138 315435493 34241050 711175409 743224723 861070023 11677058 252582639 315978849 824483149 897868829 944987921 90386942 247648998 690007084 710375127 386411369 860367305 817448516 845426482 889884762 921300421 458966973 629264366 539465184 856883817 260340271 745048080 747437110 922337775 610422810 704563611 294773257 782611053 954543041 954565473 756985090 771874608 762642055 806346774 362179113 803894342 106783466 142404928 240413116 846076271 279827346 494556932 992147042 994251627 746606508 999455268 271963507 621394703 813082592 892833280 91966994 999693341 705266094 876974623 105031645 619707840 586033400 742317759 183947307 203883748 795864413 823372182 381904545 563165200 402982005 860325401 822656264 926443081 110372301 388622510 943160793 957038398 468695505 743238935 605960101 893203664 413383645 605403008 193020222 450602949 721855941 742698351 474328973 741702385 916509234 963329872 745284870 997587841 486169178 818563455 800991058 881687269 164829057 813363705 7326409 358495849 991150696 993693349 966365306 984746407 193096585 815298378 807091122 815749035 703158655 761087186 635966599 647972722 472366896 662801666 421604128 525397717 573067830 615504095 122763212 947485496 931769913 963246890 193769553 974061124 74821871 573415887 251741352 766229033 517814400 656427594 314683490 842240209 327997890 433703042 582317411 956754137 975586353 994350459 203273900 869714415 937189701 977550931 611296523 944981336 22344823 174114335 860373471 899435095 370915984 774290011 306623959 721136993 836963689 897289567 584991532 684371101 287651531 926082463 185641446 305836998 910054091 975206134 408051983 507856679 749399976 856899226 429553614 812436606 277729040 991109510 660561287 834743656 763405804 953741980 199835173 989801790 288659365 641403941 211500590 911642776 328317532 889751421 982007480 996553462 153076747 231835884 810709019 871069329 924817893 957374758 807717060 977439262 119030671 697062044 615357664 744306096 360075664 619342092 233872656 347309488 162716219 790654499 846852093 946847214 551380937 782406592 489317147 587780886 779284075 913145479 730843572 979553265 139776508 872557831 251860156 486152526 324684584 526073516 213982061 929389177 257248040 313151714 354027216 569182525 342623856 450377133 50463341 368671772 647050203 968411306 998044545 999024807 467052112 474794620 772824132 881821523 245287623 830932484 491524130 538323517 321303621 358282727 411016081 865119485 828633836 895824643 868483640 906882278 230953001 804859889 592765083 721160498 852565679 914730841 442598506 591150178 688493681 865759716 97144999 127832270 135695438 768470415 392922701 418781879 292725937 375797157 826398626 873296296 839843222 845114197 724221404 912795908 590170623 957904307 510930644 914017974 957810504 962611954 177373964 868678087 545648533 674411902 390220643 429041926 843029344 874446593 544535777 961495183 556381893 822090611 720817602 898130550 904987315 945512388 584880246 756784200 188081615 335854593 606059872 914864877 384406132 655365911 496220820 830170563 526129057 788271698 535370556 653949963 937177187 959489856 770395821 974968156 108384879 978012984 952417317 960718757 989801784 991919508 748445030 784832026 167290790 818375604 893787671 906894499 562986291 941922333 455262496 515873333 553747828 647962983 770323446 982859623 225593365 534077367 492921716 559747520 868563241 984012904 365723998 907693853 769682881 916108117 653113539 851242970 296810975 848933666 719231259 959887065 71360981 318540928 819558779 942006841 631733008 771452506 590132505 951979665 141085422 273524405 69790740 624030376 484540320 491832662 117379065 520779795 276000375 454355237 891126168 924903723 848764242 952698706 45411129 718974110 856274834 879612983 864786497 950635482 634157904 988628290 774955986 795788697 746855843 967882749 796544639 902610483 701234265 974329467 752975785 949035931 821343365 873284662 94032921 968469620 378170639 661487095 817696667 891284908 845873905 978559726 308904845 784234465 518162730 945021174 119336464 825642493 630791848 967814877 992262956 994599866 54980150 485935357 910636219 995686646 286996811 288503309 706850139 749752505 339732087 389671396 609666559 954121840 264992268 821994555 492849741 763827477 474616609 662664230 476458435 685094678 196559193 712292726 419597052 695913580 856791492 919862271 450456534 910342750 820895608 990007519 660311003 692741521 434045888 572399470 572492888 763676411 864542250 899112019 916290825 933629051 834763082 842956533 577218494 725082485 322386374 335168390 7920174 704647661 636350337 975834011 755441549 868414328 807770264 949264483 542447462 563590805 969859890 994881293 121929087 437580439 737324361 966150522 542772206 754321792 123849808 373076788 649948967 673520778 139065054 488164372 497824855 657086662 965465257 990155399 533694915 907368240 940178138 982762060 459651262 752191376 110331901 266089636 987740579 990618858 974774830 989389430 900055301 986344598 987310975 999557816 752468481 856475210 66785601 740193565 903428228 951870815 516924000 691882943 215602656 442139052 362777007 548875239 886953775 926421751 15072147 256908982 103798075 439943300 907124650 961031031 616752112 669591085 685430815 894704691 650519630 933558594 438557298 711237620 632541203 984612594 672170581 728059622 355239132 505639552 132699737 981053020 99611743 167372840 588451573 697778828 494776814 916680414 499821561 783114134 865051684 958434491 972968880 973102600 496725635 851935331 775659368 868931003 302726851 702011717 458496691 506160709 783307495 928680788 526683416 900631950 167825688 338033705 975575072 993435285 914565883 981674498 697492186 745041134 370868199 699048013 760543301 861963305 931531018 989565726 730658385 847557076 289771417 342558778 308918386 867513729 570470389 848178163 221448017 997393721 31280072 349573117 818056401 885208721 538356712 632730840 63465859 276311505 38514156 820529410 260654991 370038596 660917547 864133167 547445606 752928026 656823214 811638827 501136501 736606993 734613792 994326331 549398546 812915415 933044200 965223630 171883211 411506835 911124055 968575722 229771503 675258816 952538782 974149163 914137323 986087929 944115087 968493811 36346078 157318364 480925735 772876247 182720703 941171289 598391041 717017574 797003394 908519947 346818960 803108030 300740584 706191341 667101170 699854885 224553201 991509818 223745381 964547835 548452576 851467344 109216796 221848436 833986728 980436447 100960442 986636551 99351725 291262456 809474436 964809181 170859246 196568436 253573967 644231332 262456449 469658271 68755854 518531146 693625938 722090721 262727096 308602298 354594277 476659926 571363469 899588733 935699552 987338022 30290207 949071896 519830274 909898340 12536982 417320125 409101478 599563971 179273744 687396918 707076335 910961190 745174241 808090743 826949021 914335341 850406584 915219756 264168244 557547272 639008409 847227514 804408610 949321822 943223995 996135093 113562774 901276386 366400639 769070846 312666433 572231614 302684514 992624297 267029762 373123707 497301060 742206707 668608743 970446373 62616033 807914954 131828100 258830500 468312850 545052201 966695497 976949788 901644574 955172076 820712720 852857279 967650295 978578279 195001768 692866206 985943733 995368250 358056878 739933846 143926122 512527242 425734476 653708193 988711874 997758003 77307842 177394516 787064733 792978484 924448616 962333333 520115287 791913736 691092462 828090142 49588809 63443552 609466045 935629726 831248457 861247887 790459256 919039269 918484701 942318588 371373020 456064075 102732333 617222492 119943352 174180604 325749521 761776483 644778958 891645419 133243757 574081740 413904364 780523420 27995456 143934536 980305351 997961633 511787795 794224226 978654070 988331736 316645775 469546557 4113661 929771469 297080684 890979367 99334400 581248907 453994278 777199681 800698666 994498375 574365777 603379961 601891588 905342664 594722953 858405378 890059308 916039902 973302249 980236792 270190725 535806931 838050994 870911323 50889981 328331700 207666023 707653060 808034725 996304231 799692634 863278986 784463585 804110800 151004591 351941276 763794208 851614829 855559555 989271193 456939786 893714749 946946194 960422013 333097374 856304164 393796844 791170757 371247184 867197352 685817317 702136267 178152578 702557900 348668414 355933346 452053083 663647054 839360618 898505800 248336593 502827731 526791289 893374700 541715598 997888562 657912648 845057070 284591086 528127720 763253850 988002963 54938237 91005901 513939791 746360823 967534271 985949195 600011032 791496983 51531705 630275293 772266364 953125978 155826726 574115351 834780800 862369536 86428441 612032275 861742298 921763753 527057578 699443172 459103805 945772382 375083776 547495488 823913581 841723433 698612059 752747409 243866780 739787564 388431068 657634947 843411826 902523726 231851327 354557327 397145125 645706821 565892221 730075846 107899558 174392959 640295895 996900435 689467138 996455196 736931579 827859141 679801023 799871854 224796842 823132990 237159884 268906644 876365934 969191392 342879970 960520690 342158785 365256304 474606836 804665063 370512964 994959934 730452141 855887213 325363779 942716912 24365448 225204630 265152210 680505298 332510944 910324042 482574369 929227773 634801284 767379808 69088972 861806640 387938596 952595843 290183528 496097623 49748444 812040549 659294524 854244595 846716162 850001033 646882614 670583230 341156202 401475518 590895604 737273093 792170398 792399541 557730472 670140718 854627451 965394625 568077718 792041002 428324711 728011904 633677882 883111823 556940254 973485025 466119075 635206827 763807727 888462090 477689494 794920735 902152124 995882242 840578297 995705621 354682087 506247016 171197150 920166196 950144041 983657323 430550987 653152687 531208598 891580687 191541932 284708134 447013605 558100874 538591741 640697323 923993133 984247189 416643397 630675210 508909489 743630659 322938076 778003039 192313473 264462507 574163694 998619880 856539185 858183400 289915562 593041708 648967104 895576296 733310943 904364036 749290848 925336917 294894613 798398790 661832742 765214389 486407275 869585281 313311264 689249849 76031251 743161262 888950849 962861354 168495270 846831096 732158991 830550464 751875119 786012953 96292561 630580750 252665843 388003328 626143550 964163354 677988930 694582350 812469437 892557228 71121221 373258264 702005981 852021213 1943290 476827136 30022565 502925993 339678975 993462499 990865644 992767439 906581863 914939998 833127474 833960124 545586172 862825349 245371877 646836869 679200116 974876489 238423609 244722980 360916509 705183831 95999702 253184444 496246726 715162055 960090997 989457425 408322753 757513560 861085732 919124858 314049167 316699524 265192927 866726241 908732250 976843547 394826902 464281067 396831307 991084494 456095659 533291034 363682197 663978003 570424926 612690194 918359222 941020051 474139496 743194033 299583673 776574513 996919464 997745147 413695909 830800157 599882869 957892099 16958790 329979089 632179917 768311780 136604618 798851464 779537625 890253375 924893086 977312964 409938024 783396018 217607638 693074201 7854133 455882901 266032151 368425066 177569860 977191004 294042658 980820314 650204580 793067124 222060192 347769779 6113644 599064348 97589830 473313785 784620069 967698905 516922183 687566604 623980779 778250201 376435548 756717869 113039561 564151964 611331126 862451252 25725657 978466161 936463534 946607131 747846535 923857952 994645025 996683856 166835347 257576103 157010967 282075872 791977231 887020524 78998649 128431625 86437615 749827211 762090587 889840832 716631922 983574946 604136030 920269841 476236539 564261174 589855085 950863520 521133858 767783244 549980738 973344953 207996440 932356681 613506724 652857700 868678923 964484974 333269280 799682495 494115630 865863961 90154038 486151771 509488432 684640285 321729122 965899021 16483294 558104973 207380395 859899463 209357603 897656640 587540569 957008516 842227093 915824870 562935577 866116118 791631721 924587273 226173038 492253571 498913761 818453152 489291160 720853802 503295173 588064935 300415555 438045940 335326045 813034686 62615876 772040870 427829749 770491627 885783421 938385393 536572493 922916733 839722669 971089051 44749974 896390902 300311897 504090596 481804003 744211050 109346461 459398443 119896880 607682753 745918282 850471866 395463075 505214010 415791381 815796474 749778113 990827789 72688800 529756394 8293307 115886153 227169467 946015430 853262890 877962490 216000172 467927835 640307811 868473469 786212339 986096575 114502553 137239600 618367197 702160865 677920726 980333614 172179653 587663659 110717982 968771735 603787540 624580115 922028294 995851312 597582760 702840658 576137016 611529963 601064160 836979097 649731164 933767065 673230825 730816696 636860083 963622566 451194228 468041656 57764048 780073046 394032268 663230344 905711236 986146493 467214286 902444953 955000354 957979093 361868784 914831571 424395417 638192927 639822012 825924919 169352966 560651895 972431711 973824649 214606508 249704026 534884583 783430293 605684435 951676691 937159031 996611167 604974560 902493124 626218034 942360024 411181227 694843189 257076129 503402433 34317140 904608755 780269491 820948248 238302460 360290954 694670388 751663091 816993092 903389118 142289869 875629899 538465588 795094664 947312125 963094367 616852120 833802845 579289912 966183450 704750756 919878165 571579700 825884638 244219945 967137909 824325769 842421279 257834381 463234487 445054909 764010266 479434754 874593562 724757320 929646992 873674298 974654718 706765556 901452010 933454480 953506812 277151316 613162735 774556866 809239748 388293963 668124748 17688363 952350362 959951881 976358062 929496867 951287341 209824993 912341009 450740325 687424678 950164063 987918744 59252935 236054242 505448832 624110212 836326929 926145763 12826 690125229 651328454 952466662 53466304 357961030 117199207 201964515 730612596 897738113 831729819 953987984 656583613 837482428 237293865 630263794 452267973 608817088 471279792 693432117 608830532 914316931 349798389 700938021 335212062 741828631 677937023 679336515 371250864 914025129 136209144 845952503 77694092 405073661 596198384 929286364 593477157 861115939 384151518 986284959 300784659 599122481 395486947 550217694 929200157 946831537 130524232 240135164 211124986 736519625 134235084 586284765 415847850 632084199 627451088 918323255 340824962 977054764 313179667 772343498 40425484 753383985 89603371 985863591 458024716 827820294 599171287 964431176 627637597 952634029 766336780 920858865 824987756 959729579 427591815 683180196 334363967 874240436 318792800 613862840 664159033 759156925 58369480 477966060 916334528 926062949 869528981 873392727 661135347 663466908 837926385 979224567 249471108 405942313 105327627 631752583 588843359 828681425 570898335 745450414 676563759 819496404 936336822 984890850 453983294 948555670 862529188 882878212 378296693 927402536 453615034 816929857 808319369 872835357 562899721 986058643 250776880 580441592 535831189 860829670 870114476 972570484 337861883 404692258 689175298 933154857 703886535 823957938 863647586 976893940 397163771 407818001 960257635 974891064 336752748 642964408 790698343 886602326 969211097 994784613 703214957 896728754 903314163 963414738 786382388 898769368 684937955 918009066 593477907 776098500 625918395 915161308 7041298 602342836 41146261 362286474 930023121 985202120 709985467 798316535 409947738 633349668 575722092 604723125 999290168 999981695 440821309 962414602 88447634 356137758 613640195 688428042 247141732 558439436 824782167 885782667 927252766 933577458 804788051 874535635 140570714 345874638 246217543 607568871 334975849 905118516 602384332 826475528 783127418 822697504 926162000 937406624 241323695 924238037 35641167 952832818 436692216 771612102 608603084 813028645 976596831 995165801 195620296 953043577 365600653 587881369 306472967 762664807 762629445 830584965 102574958 479563574 823905722 908806526 423289256 859132255 20027862 570771034 835622106 933175323 754831070 901621777 341586125 552066529 8508478 256607197 425500662 870003352 685287506 788839963 592999761 719807288 910345686 966804112 171123909 809362356 639782187 917612514 522461396 530407870 587789525 780749885 846215970 989251819 692334434 919104327 844664354 988009041 365104880 420839430 987908873 991013290 607211819 990951892 958929870 969181303 656062665 935445439 438026848 767846938 782176438 890197103 23463001 784484688 433894733 769673105 664166751 950975654 358722660 560765503 964190217 996272494 152950848 175306100 769952196 865550876 767228606 925840701 702781678 977406114 904877177 956605366 782371889 796446422 345015742 871249173 624838748 993117493 380166740 642812106 542604482 833474797 407336346 784394496 397699212 920583714 887389569 958030462 736586613 906860391 605559244 850265266 659989151 788857387 747706743 911931022 811455415 907529890 5935319 660218012 675093161 966878235 584297934 654041442 401756036 915874695 228743232 677435853 975627007 996257169 485752536 637338570 413996980 693715951 247384003 583052816 343608512 739607498 559906403 932743993 605612955 682268936 183773131 777938328 605204623 903658673 588765140 645048110 704078106 829720002 581648981 745283534 724399161 902800072 51586903 937549619 562774628 884488709 138152922 659189790 598332217 600935351 478591684 763972418 54766104 274447020 745528937 905267096 150243600 897699799 927012450 976692630 990256151 999577872 38978342 771683898 799591837 972049719 45750733 845203519 59780047 291647635 357552240 669070884 32001980 317916403 671684497 877436161 675283510 840674586 460441513 471173166 451517960 995855362 763517916 882430083 165132763 891232154 399215868 453160127 519449804 833802630 676126422 725492877 686312561 894790765 541298236 685909332 889156575 931132214 43084256 511754172 284046774 923600774 941865700 976613543 150224260 872399775 371475549 676076018 453396138 488065598 766352268 895362594 484533714 588191485 815726543 879039312 175992418 347194890 262318839 604794277 762114024 988912386 349371937 618178268 388141309 616446957 629609540 875459233 164694033 607375234 797735057 936415106 231543990 401497807 219718962 910796042 422115173 831467742 304568931 392454342 919137297 967223893 646594161 926748093 126296633 638390864 31909 822608073 598901262 965242037 488266089 822083242 914310451 936355301 919198166 940418863 68185908 169361621 964978682 998511022 598526394 997172543 539100336 851628577 578428200 794063596 930724379 991607159 556245051 786257310 472033402 787101346 90359874 490430972 998968323 999813078 937582394 995280639 370234792 540249462 806741347 842973192 99302018 117024474 852452614 943635696 443006665 689962632 920968031 992922036 211537354 721004298 955440399 976549600 263974720 770183697 432648029 712666355 650979265 669122107 549310351 826894413 742192691 790806342 273866112 281293218 416402015 817260864 612760707 735955903 884453487 996171891 45039564 540384930 403682618 861261128 824395520 910629165 122231090 401918258 878789533 903520220 615622454 617151180 539765229 798236013 43816477 194228932 226334984 589493303 856443869 928486125 818974503 854952922 869785543 896073463 198461694 783190377 200876367 430266227 399306179 893713146 614489579 934608079 574429478 993082132 700648305 888136419 407376231 543842841 888827223 978599918 672612892 987834111 885289258 955242731 537332146 723647407 484225365 490148411 707133628 999643129 474900407 847493091 140310322 658777076 501470273 689237261 646492698 772072465 660487575 924184562 849427708 872706902 322990294 384628282 557708019 737771396 699916257 700449719 360744648 770573318 845364799 854976255 397023632 442488592 657569593 683652460 276639903 588771223 261397024 291610699 295023913 619692898 323605757 907003959 485962059 700574687 558410159 827769666 675283734 713133723 784373771 786624487 867528399 971386892 96963956 925604909 649554971 793194136 616669772 698921245 449342788 652852084 757900176 820558751 779137139 998363505 416009881 638286596 434610494 872811576 829145837 837549199 108203442 407164702 967812008 990008925 739502991 994444246 58656943 898308517 581991363 670443267 659678241 742711566 901107757 938825528 579049530 840191282 41383345 623356213 120583268 650938562 251943065 895804823 719571052 904544029 572426092 781090455 623960622 787784282 169485707 757039076 371723114 884305808 745962729 873370261 746658059 911097584 553351204 955547945 337679832 550329944 282486090 722908864 470275164 513841369 645224126 834385625 504557169 779729022 959615570 976991024 442915673 600529087 174743233 463974508 87128678 619380965 438913019 592851305 227228452 836417775 134442917 797726778 451613950 482725075 94853665 237921612 696789743 796587703 149499718 282808818 978169096 995242952 901253534 979472295 782774566 923015460 790892915 916791753 432227432 966258509 243410659 623997242 607097667 636532214 743632520 922055613 220948641 812103250 392211387 858491910 423597952 556966242 609007018 793545121 73583337 378124652 742123863 748588408 67326535 349029366 306999606 532023339 158679273 766244751 466090401 904448180 651031106 851020673 401365779 600590876 287379788 626770157 156480820 189353477 107794455 636329622 529409121 651591686 251621320 936440608 994270870 998609013 276610004 914682885 125384538 483578700 695744597 806843339 851456573 968428974 942291574 985163851 830680548 844422932 648816378 896908784 458931973 467419467 380391405 499548854 625285256 754391153 400046036 429548319 593034401 890385501 489727309 725854470 217507457 433276213 955655227 991126465 178085458 923587743 706316719 894524875 616447948 914024051 790494205 908963303 696540852 723118295 358198326 670665499 430307596 761156856 628387778 871926307 269350899 380452486 186819505 189838195 449169232 753661498 959900396 981374400 774842934 814458600 114415633 818274717 171585880 514109008 299439602 679325865 824845602 883217628 297195677 414537680 892969087 965173206 813946264 981985491 634565597 755915029 871031474 973377422 712177769 820610367 654367530 894565929 19775722 555222029 976521415 977567987 208839462 728962747 519291362 988789030 49598236 490557539 995182613 997379676 599037406 876638879 847608226 930796229 643000419 756658576 504527994 815816111 939299489 995040389 133921542 713624357 121549996 790739272 92887411 401548049 46628203 516240748 468337714 491362599 33816772 704864558 211481250 374134049 785264300 887001064 449335488 698094524 191438203 842167716 18193053 48926937 865550311 993173139 464219482 514097149 829807192 873138453 822476812 851746793 845823946 904916388 804592510 944713744 755009700 898704959 629675556 709791113 24032178 112847772 501662071 645489298 318763139 927323481 349134033 529093857 407707232 878247686 20555705 539600933 621981726 657480866 255298737 296865293 314041197 723238614 659356844 905886875 741719116 920138851 763834514 887067582 693856060 908543752 557428104 983311415 575117122 978648487 541575882 889681057 53466452 730582033 136543878 992283566 932896016 938634917 538396450 905283484 68726108 584397304 585626291 635148194 978820708 994625178 725880232 922939793 477029230 810543875 240124110 469981008 431899017 453306453 346265522 844176807 908035843 912438444 435127894 832148221 50013349 559320759 118078413 984952270 16010253 578668159 36396270 127969116 210937256 247848607 310519321 497804042 969831621 980287226 461610990 670757137 985577221 996975507 89017936 638904091 128689151 484411536 19562313 770133313 751557941 996018351 638710655 952560547 289163397 683732467 102364791 427983982 611711809 705192193 672198057 770793042 450472802 831311956 126513896 478356178 615509976 710288433 244575520 805442484 966780578 998621915 15284805 984048871 938400067 989414065 396883275 943836677 151207911 698852514 346047370 827252717 849043316 905732163 448358951 810689895 905195160 969319069 813854898 929834710 154184708 840171705 975321064 984513183 515831164 912893673 600091342 655883175 693559595 719936862 742412953 802505529 946395153 965709974 926294989 993125409 46326063 818634430 660402304 838800457 704254128 783919965 766127557 815770703 180554467 206126995 314492991 769346433 982634178 999195363 690283266 856232882 95076012 623560079 854714691 858841491 965918417 980484789 638511449 782417692 993937715 999173772 62726621 705747355 773583338 907481344 402062753 558816249 768521690 873153626 249771316 549053422 959460863 969864935 300850528 541834244 412826069 649866322 577169417 904395328 99063559 932768952 334343617 650363308 437446250 984191050 56056133 734914711 571266376 811050009 811338578 867383806 391145352 804591763 255058877 661244684 619717483 823252083 957096163 979302299 37300277 309230278 744572796 785473319 165842374 979829186 161229172 249522452 753663484 909344038 287359596 309756775 524584949 608183705 6020560 573730958 649727885 952439253 766095161 885692608 668403596 688875912 888070172 907259532 802463699 857204733 458744542 797108975 431303155 832882214 465653055 635829864 42332766 930773280 245971847 494841930 238086177 917748730 945683764 972761454 836994518 891751776 236241388 749985658 59933068 954240631 897954712 979243246 306912916 485985453 84321786 777755617 137417508 878363502 512566544 877864452 972716536 996663766 694144682 858160516 291330035 999575727 346049947 962806677 43137141 288151368 644782919 799211086 789500604 995265280 484458644 639533537 547706080 951233756 923934915 991170382 224953606 472233598 343004943 598971000 544935289 726162499 897345789 993463176 328737234 453189291 548552114 722014243 126909829 748658765 359691812 408718918 615171779 858795801 303572693 460806581 119340002 945990009 690676633 969243236 665645791 714266283 444268541 653538548 384684667 786766920 500593595 654473626 78759752 877462722 924231340 963513783 912906270 924010892 413382896 774004277 903660272 933965104 383047111 789117259 989143897 994738201 244299300 939027167 431584986 926669982 29750887 693909739 147353229 407885304 230796330 758412639 491194383 722489152 284207119 738218594 422387386 490562484 915453146 957869402 589704367 784611819 647228467 932084597 834699248 834986708 543337037 704482262 696761213 908671444 925418583 957761707 415481084 540819738 2693357 98075185 744264672 755272772 175290186 177837433 828161423 840990831 665222963 911911616 247352186 647893570 980600717 986779098 421334864 903371791 183354671 481169926 827735067 866813852 459749076 561045185 293765788 897083045 392400101 680410480 982647695 985573675 966016730 974338115 475537431 628752821 185542932 538360395 344096047 720814199 972790535 997356272 70400963 392190579 876525583 888506845 334285101 370937154 101101070 610740546 983840800 989234058 480157342 511625342 260140247 915029091 679135566 858814605 206529612 672448146 28495151 745189466 987621731 989677246 587068480 857044808 944407455 990146856 728555226 884761651 37153079 765727140 217208569 541405194 289577785 592280809 234000065 410731745 720531581 948425973 484099124 689196768 959017651 968664133 616157295 930753653 913869250 994693983 167841642 799909435 73640991 192215436 800414656 871674785 224798113 811041055 85955709 551094282 632909975 916272282 155384057 438712651 481900537 641810692 700019414 821486186 550264577 785667669 537335580 619567251 430746893 737998197 707168779 820041439 489201871 953346049 4310929 313038277 901231773 912344452 408361427 713469548 840061751 871558781 558495149 778433307 330797501 864215424 585894701 621972235 116646937 363876738 841929072 945635953 988848459 995253004 896818901 912654572 531959001 899809240 24804068 541559915 128574455 361731451 507313887 830365801 62160607 274143457 808605886 959864844 475445562 681420104 732077846 871831161 969253364 970144535 605658837 947129245 54898535 117203431 384056339 750605498 755145985 868813237 471173443 806401679 524401647 538929748 547419813 918263032 749707698 948095884 152018404 582886020 488118522 681570482 158760343 312412760 456971021 591275840 806270534 850282300 140082066 268492058 383856350 917033273 498106106 855971861 713973267 819845039 612718235 652168896 805493006 840562031 419281301 747024420 292460046 349080064 972397211 977710836 839983470 988385586 110989728 593543487 950037895 954171084 189374775 269945558 182405785 851841756 678714367 797698424 703417918 969706880 30868230 371730833 756494397 876980141 354881984 753566002 23493075 441741112 810086936 977708780 855087937 983053729 724831024 873016643 808898903 986886742 89369826 111010092 952072442 985895278 458658568 765580350 862226501 893960818 523504922 780310734 97888089 949356202 510074592 896438746 288477052 689724898 501047649 812151077 869480766 993657513 646832891 859881886 149768367 771375713 87218437 645822602 803235940 803283227 440383630 908383859 893811823 992102893 700346755 762589611 508273395 687504308 782158044 886288564 433383917 598801042 330340048 423146411 596653152 932161931 231236378 463262195 892275908 985268554 212946907 256684878 798960658 818592275 997350991 999653138 867761756 890658317 952688956 962366267 950728339 990282240 889707627 940611237 660273846 885702505 625355873 922585843 873458835 884303626 650805503 891142871 842923460 981512196 282858117 444384298 166014685 479333376 920185357 982045874 323499455 861465169 928707042 973293320 39214244 408547234 322784389 368168254 679283167 893290720 901451831 918125186 30506559 41072089 292283467 755358877 532953129 766355127 615491394 929133444 220501137 263116607 697010418 908670166 381600711 613936926 450944172 669277416 302579015 348863406 559135577 616887088 990168124 996785174 431186789 991195426 355671127 718024648 439512901 856158472 779238255 893386360 383963286 898439101 709963227 961962921 410570221 764961959 987759778 998534553 445314715 609638047 105685006 898281573 745922874 897351262 689812752 701081970 904206048 962665604 424293110 470285293 454919526 760200713 845027343 941251289 800429205 935339586 532610782 905826495 934293320 977616512 545213144 869441500 521815511 611484463 572291509 697070683 158456422 376762591 691386152 826517503 522431197 727689035 146071239 499983838 979588775 994259720 340415387 569245137 385521097 711437876 197979153 248478801 660332239 703969048 24140031 425196240 508668262 583650628 825446280 920913291 112947325 369570920 198704844 443088851 996572090 997139299 901158562 902466067 103764247 788131329 454194551 519304588 642613877 896045766 575987590 718155265 191714370 298564885 151463130 671090337 537199289 913399108 759377476 954038312 370639226 742727556 604980483 641794110 423828864 437868873 766741743 882828353 742214952 924337720 136804905 489771214 486452794 722905508 379282456 800268653 999517176 999685240 608375330 885711238 264075278 561505112 233238547 622852682 613656327 991157809 279331435 906426016 438337196 914587272 882900590 946046528 95692452 495424186 527953974 850946198 714672094 898536033 818961099 887335210 671628438 774514060 140310467 192339795 19144739 457931917 935015963 935078022 911093048 963238777 376189621 687077672 549194018 829559428 267316926 582708122 129011836 248902768 415949905 877536203 686849055 884328146 22421574 858901109 322729114 376220040 235836256 661341572 253840165 476579033 704880505 712816608 47834341 626486539 980658796 982025737 427464264 675812281 751426966 760809675 848765808 910665845 877974010 907355793 389448200 956646524 165036551 456752228 384947017 868511785 660342919 914688023 163277957 254839545 463996654 799479283 645469886 928822899 919227883 927301995 781938483 792505517 585724983 769270501 968359411 978053167 13261048 604250724 61411449 519190836 78284332 450859974 70901320 794810967 630388526 739286284 180437625 418797403 248911929 470747247 83876174 731447299 421469950 992915980 999458599 999910530 181358313 362647888 688077094 787658512 861437344 904465997 63380351 414031562 136626928 166323350 62306503 450973506 188019674 951166830 228197703 797701039 967543342 983836070 753748074 841934889 545379910 815932085 691268789 771042224 459101578 728237876 698723508 902081453 279119666 428261426 852185104 989171244 222045537 338289507 599381111 980908949 210536213 742087909 6833726 982279769 895275103 963572408 256603581 691127582 583337451 774701808 394987670 839563115 999759358 999957638 298081272 733499780 548551882 603995298 992848071 996946487 23562505 212520929 602415983 858257348 847619913 957396138 39706498 381766386 516987899 874932236 482498747 824296278 969444883 988337310 935206935 976360866 247211442 316777377 550195205 670855830 974472503 993769271 961616532 978385924 841717524 913968571 652185918 720356732 320759647 586632495 933024251 960298392 173656991 584409207 27496718 930348887 876353275 980268802 579563716 682547453 735561930 877508106 157425255 999195576 458158415 858299157 101492365 841928979 971676559 987226145 90992288 550589619 410425668 992125593 603319766 639077483 836431343 955570299 949605771 968292814 91511263 348113551 824683227 878987760 953719709 968611235 182355092 750376414 68222098 670031216 365294028 617358106 250867256 361881048 607601623 969678641 773198144 941960840 569049355 833667425 468721822 933864668 616403798 940117539 954479331 992885064 353247697 774888793 628909647 928454081 178879643 446314528 20399771 533978048 63565629 453351077 169697180 413000560 688465352 740309586 418676782 997540593 569967759 903941173 975729681 979514643 245714993 470545257 710432486 923580400 222587299 951994311 170486220 966601295 410607981 838485788 244423299 392116786 852406618 883594989 277801104 839990264 848008997 941654071 713185373 924986165 470464179 677415474 236897676 852723161 777134407 883198894 995643385 998667675 127528244 541015739 469560117 736537457 373816695 801194702 121500451 916879738 410295382 722796672 561767346 831779911 892155492 948158532 74253522 871342095 895140269 974337072 184176147 443171395 379404591 523450606 951501945 975741839 934697392 986224008 401044039 685111476 857894634 990275718 555336692 990919169 179411963 424203693 12592103 472219449 924291982 967562616 319110204 540694672 22005579 183437782 728345485 947977439 79612431 605473297 825313029 832769833 476326883 954843964 516719730 542895529 595572160 624361221 7299270 53229103 203961548 895123849 674797389 903155521 227920301 692824963 751942738 999329529 200102187 456121238 985320086 989541060 284780481 308088088 540938166 661205049 301611021 540064386 590547890 885705856 711541574 769024642 110135544 596728639 494302867 527970106 128211837 929779288 990834529 997034458 56997499 341705868 309882929 404704495 987718259 998587739 814524100 981630165 197712169 747701752 17624484 904261506 827311856 842390145 655290005 822652756 526955287 941091023 370733517 703515108 304256924 543186412 896580694 989459713 250347060 975288405 535632948 829419803 966207554 979113451 855769485 924584537 652864955 924760460 171359370 814993150 432137357 515873299 731834431 941488259 799584380 957235671 263234148 792844419 257227962 823370150 19552588 23054055 217554513 680658282 120590693 251442586 309798380 423494234 168714807 201450425 637943390 863253754 860629897 891897389 145765464 430701352 419834863 873159763 357380741 947991521 227668349 724159318 462669507 606467693 281633414 901778494 463243385 834790293 277594907 915834100 403172549 690171783 592339666 648175770 892690944 982538505 748898655 955051843 207666230 283909884 308910143 445192721 294059459 338933196 674065280 700425417 719648620 892564093 26958354 99669124 93406064 626518824 205579313 683474617 396339323 864979916 883548630 894224828 490294990 644959249 86243855 440627827 707807769 773324117 18791634 639295527 746119119 844648852 786985654 994064243 558108017 817856105 830094883 952842057 454942432 947567363 205847564 854299280 112429132 989838236 418615920 504832367 636943882 857010862 509900072 839361870 421363931 433417398 97998133 475159913 20104342 422564244 903909253 959436836 112154141 501666834 587443608 872171371 653713889 772174610 185023390 582679760 142413215 219378120 53749023 212590080 290481607 700095285 754052098 976907852 651881109 971191773 625275224 833572697 494836979 582459783 275016936 723018004 909349103 913686973 350136136 920456165 335899787 791536669 321503561 638499337 929902671 934936456 279991025 289449302 286777982 369444617 394995280 517116246 208257157 429749487 655872021 859419175 944104172 974478684 550893377 936778487 680903188 830067556 411795525 894955141 947933226 951286158 840901094 945623942 128712052 606621072 262632422 730778277 798222546 926341396 221508704 814274712 742651549 840005999 252792728 377506721 906983344 938959394 779678207 893627969 967813964 998618676 694478674 850122492 419408252 650270757 891249062 967190471 385286885 596760300 331979488 632862945 304203878 897936627 236908264 311389716 970748162 976264901 347015205 823774684 116149332 840140391 33536289 931392112 222658893 588800659 257436037 650462680 665684187 878711396 701651202 709607886 448397601 847556680 317722136 583578779 34356764 52593318 540687040 561438536 960916157 973217097 512823785 729325519 932007959 937952335 574779680 631185283 193259187 684407330 823817050 933935370 907948098 956551252 547580103 565944780 220104830 688066519 170047318 820713942 909775192 982619290 234554679 311691954 465025597 663672020 850836376 952321595 456935436 750331575 61611408 606029102 878477759 939912580 864810443 917654615 255129015 685871574 861372373 901429150 934655429 986565377 792994570 854856215 205684891 729905870 971381718 993686875 881291881 993665928 457745031 775592979 910860099 922391894 594576872 728641334 317729940 458708901 527786746 668330786 594732253 830434041 740377309 865935260 38551850 681125831 857350931 957347469 514910102 776213796 368550427 985436589 983019581 994401578 958681037 984119040 43729896 630183362 330912306 432717116 767343100 985542036 970042154 992631546 462194098 944741915 843675193 872928398 756246059 984752397 533675558 690312965 495390187 824848900 687253545 888739403 463683077 776287930 712542955 743237026 366498589 708911428 351242523 396162884 398973016 625972977 760879801 828932274 242384635 632646684 771129190 965157140 257462980 943832231 294941338 923289714 86445615 335021344 525738687 700826523 122652794 550821879 513130495 899584983 720696408 859664025 331416294 421082035 297088603 855585732 156071680 890226759 254284485 889746411 33444269 962575846 900353954 946615138 36049159 768765934 72410131 300244580 303660539 499276839 372071617 958200293 674641060 917884206 103111759 367355518 496994761 752752121 117068890 485387809 569114538 866684160 144317671 886759245 373620027 828248170 244206867 439337147 998944208 999890741 325078557 718162896 890478310 931329794 350956856 613014495 788492283 842602784 181565790 812111989 167152863 682744234 353629117 383338597 284506647 950439553 196653067 798045584 95335112 413851122 445600661 510793572 483040746 598390223 157330384 454842408 130243186 366479091 375742703 944735395 608119722 759272962 255288503 425777425 508418975 822625884 315280416 710495064 45626341 755093970 318015068 687812902 590550512 708711076 876829464 978129313 570507647 873972948 260442626 334493199 454571382 934909246 135091425 553354515 796192906 874951127 205094963 610591777 122071481 463589624 879387836 923356856 982303829 988590121 577353305 643882554 317880558 457652107 63676491 84388691 620618748 740738678 960721141 978632257 362700720 525171491 635220178 940334458 590360749 612815233 70118107 714142769 130104209 302409270 592391959 930299554 658333754 936275328 323239340 477953486 25764325 720110500 122747520 332169839 883903932 900329119 55219371 420030570 291267982 476981958 757444754 791077364 173308029 491450776 714393996 960442567 545403952 993578339 671944309 883147768 314877632 899362622 972026621 980189359 387417505 991312113 305437753 323574489 789334176 823128488 357784656 389636440 547691010 630821324 719204412 931419231 647930834 908045191 309996198 770964708 655032763 806484374 275090111 828787879 825327176 893313426 240902560 602794713 246773225 538193465 629789576 681382946 455359355 487016144 34968138 637213568 718441861 753851090 815782280 955237308 994366075 995744277 729281713 843736793 164313454 813323414 382057533 827712060 151394355 832047777 479052947 977152392 175046057 204666726 842970546 968903346 357568262 747264127 375738118 460446404 347274270 467376003 815391922 964080674 204298376 390747644 632098011 987224235 253229908 486630761 970863927 972866874 219710046 607964032 629958511 982089423 590303312 758316713 277010017 551751838 966433731 971869188 611835559 873924327 177116943 583466715 598788308 837240232 203725134 900130994 230215730 948785356 871010827 959589611 108823422 229414798 16815658 971972385 245863826 478328068 154611740 749678046 324428128 888450106 827061027 988907484 354149430 550701440 124242321 756607218 86373426 908761744 791589586 921181886 564307607 808910480 370587574 782010874 903917682 974328084 422791201 425948686 101358916 486291849 327495335 840514954 800910357 986480556 515692646 760497543 363691967 578793802 165371370 211800617 305098729 467863554 490932162 835077455 729226472 892326005 54098737 643391251 190266784 715494379 131738638 276472060 496729444 994416106 290022568 689888486 848691557 897956233 672270786 729071311 78546299 542756715 813388731 870969873 944590304 999525324 277654801 625552892 616443297 716466181 494755804 500466794 222874347 922474092 942755427 943763667 749823555 977380829 308302937 552539088 936813436 994727231 882824565 917416134 728892815 869876583 557692377 796788617 46932807 428819305 100364150 854449774 228449941 840512544 765191426 773574891 917226683 969703065 2243633 703916412 776927516 877369804 818013204 926072393 785164145 992909912 421211220 843295519 28501597 757678893 63711970 453805640 775483850 779141259 172114846 720218555 60214402 680500503 392515751 828376233 875606771 947829159 85972234 567038052 737717943 978633417 508556711 513163124 36222868 826422279 447596579 655252079 569515109 682326692 723826385 877332179 525234062 666213105 384129321 824672252 478569323 671188926 591002537 976038423 698425072 928759912 424681904 563262151 903859417 971687394 845560611 977711422 949065542 986404051 326876906 424810071 654656784 971497529 860686548 968315349 756642258 992617530 757062103 974786023 483963038 999142808 300305708 516945313 57217688 938360290 861492916 889167827 579540062 892799501 108088925 874919390 216217098 357212330 768317320 967581979 506665723 966339899 775423735 791024949 684269779 717488627 742142358 918116430 321310315 799476084 809611626 828598600 208976733 936660916 567680356 838165353 276022254 676098285 495919912 868915237 346718824 583395816 81535337 457644195 857669113 943901705 353465514 997197993 436210075 535242421 188963912 804168053 996006254 998487050 700035114 907364094 733736634 946468074 824770315 932007086 569690873 847782958 490748000 548500892 917349236 981620600 457735553 682893524 825442748 834298952 826613421 868134327 789690440 833564142 672301553 745736213 963738830 972278479 607576294 822563172 43321621 820697943 665175959 689316312 531042780 893580480 348009456 897028927 756840422 779722573 603728307 895195027 668781717 681503499 634228938 748639297 326729364 604685665 585531120 919774854 7396285 650331414 481028422 822257076 479130061 855638035 163551899 828151683 654165223 783921308 255930450 497594157 251668512 425050719 208063664 718898133 323981510 720510637 318192791 599187313 6512961 753699572 511295504 573603513 71546754 955446422 287299077 791209150 745731752 917236132 584467209 925226739 190006077 327328970 330211445 714504124 694047624 842368606 428336978 946054419 837976668 903661990 72073696 972823116 694394308 768289560 609944591 851357087 704628763 969348143 525458533 967927125 831369272 962241081 651224225 795096005 507215025 749292737 541691421 869256443 215987738 420513831 377073735 956040328 497359150 628770573 889048913 932751825 736977897 742842393 801305853 877497288 274545497 821900321 42963547 249723626 564367331 582560188 548601206 835950364 712136064 788316384 781568487 966492156 837599252 864216877 121498876 301684567 662772918 741544393 116366232 457803023 724813515 979790004 750045836 898584500 701313528 767114745 611295649 645604587 888628647 892306444 686149997 932947288 547101526 574572016 210804229 498467940 819027986 822846246 580214541 757696087 711894419 808329017 472885948 932775872 313645112 525364146 176188447 889204428 866923026 916314228 221847072 632398404 813173358 921635606 526599485 553585365 718215969 751676179 103931009 314003180 726224396 974169341 407063638 520366143 730531619 768085192 595214182 610597635 855159275 875221864 92926772 562865484 979492059 989004174 733845919 867719799 398074318 431404266 739320347 974105838 576048505 771952520 651994701 881501426 680444876 696142106 816923061 917229824 898634271 983002187 437494366 973176172 797827180 898578838 589571491 765738114 930631063 937751377 190380172 651486833 404702595 760429823 651367631 892953702 200805181 778831635 366416848 789135506 116946194 621698497 120525938 517044120 162868704 694684500 954296200 989589594 820775163 924660098 629454613 978069048 821413627 946781920 619324851 758528679 136802778 561191873 421421125 877053876 71208351 587039507 673789364 774245624 702877510 787532720 211289778 225061396 888493696 985398486 192437610 822960165 720204287 987716551 770839059 953501500 380408087 829881251 843376966 905455978 707595948 860067505 84068033 788131269 115894523 798182025 565475956 696275291 84524731 969677086 282464427 686149942 302120903 677089436 62052267 977400727 988134635 996951380 753411203 993458287 477310411 529630968 657641244 848144850 96606918 579054392 391344276 448180498 868416413 978421077 617110396 649494890 262584941 828042366 885440599 933632761 431005607 711111621 360124469 958720838 457520059 745300066 844633463 914090596 979097237 990785392 273889840 656674652 400692062 589583105 359448602 787152589 470601986 819541974 969851402 983095411 186811484 774102022 652127516 858470064 91894324 443670971 793931240 821857155 768665184 778210216 794390339 847896535 647798518 695882838 649836267 833150412 654825710 893548448 509357196 524563567 843554127 903415333 371032287 938385688 380334708 461641329 880800860 954742585 959362167 986607352 977641846 991138462 318185938 816563669 389103343 812338552 21515002 428532528 475538858 943292719 897908832 941582074 410518877 898271080 206392441 455913264 496375776 775418646 808139998 995894615 43766376 850794297 189104274 342069849 930903153 941327868 698980256 849911448 898725050 979902585 295637443 376002272 915181799 980613152 128191471 863814218 371480364 623783663 746701085 809169512 520743800 598735489 790836775 815596216 948097661 950037264 438162336 640305292 991440032 992513236 24332405 298175185 649345717 975283577 980900378 981456274 702739908 829828508 91002924 380341180 473333075 553683716 140621618 464888956 291439194 370200314 337161141 372413272 263851043 518934922 530302574 946724424 206830172 364002259 679698792 732746960 261836874 339641378 841643976 980357273 973175016 983494739 503933950 818245642 691487510 800118302 528022216 707788680 19208727 965292789 824600860 947411754 830478465 883887923 844855611 949489665 328125825 561810349 209977419 288490200 911573194 988551502 324588234 762340678 23620521 193899302 862786515 982539052 660426156 768957177 736518068 771557213 364095308 438912419 721307163 948115690 129598619 336565507 900213441 943522551 260425033 678372775 35322217 892209660 441269732 935932627 769625494 962163567 385250312 539305340 528792841 938413919 779988689 817512209 853923779 919409803 640083278 770566422 103068156 822409198 990759852 991374399 324852651 895929991 166186764 794523761 931610437 953576367 332599582 341364984 681589837 808666819 105901714 959217313 193594139 360893797 34809570 63220419 850622995 961468571 84238157 980550390 207988386 405049276 409651062 659785471 381108621 558131384 990409432 997316935 883375507 970893287 748460211 932935012 288133182 368221739 336858649 666255962 338806528 675382543 187081193 392491134 928454232 943037865 485256835 759229614 830254956 953248786 564876819 677739754 666150600 916373115 210837913 700312370 392924568 433746494 354416254 527766928 890476713 980216019 703497984 894137135 718540252 795991565 371065215 916536913 183090491 922322732 530086474 978455039 53691713 565074928 40903789 498862729 442300123 540544914 877098306 934470892 411126387 549050690 881825844 912345919 850549977 856523451 14790078 255089760 268305668 654184163 118480764 771242178 704591583 871424286 143513382 856692318 987301622 991656997 97293546 741178165 786976399 887058269 370080293 644705257 734093781 768888334 780245066 904158524 267188967 555217249 338567776 918226173 637745991 717062561 257880865 619637779 774827896 911852865 609926774 775989726 860625289 965207392 467054423 971409839 479784531 880149340 705561604 921965275 780349819 910098909 976816718 991405243 260085264 574797581 130179042 634040573 314230642 604181419 758362546 973862789 436161766 597699490 507883911 525781142 392276068 533585332 634596030 826068605 67242095 560530961 216055004 525047426 443469923 679713540 134712378 719528159 898078765 980936216 930393409 962998735 406025375 666350043 494885752 875340218 386540873 759924469 728200201 896748799 240624150 925568744 955299262 973434711 922291905 997430130 656905793 684613523 351810840 683272521 367882289 435311075 654659271 937554831 157635095 761889705 80765250 740351415 871589954 929560768 177883431 312372430 445729059 454607394 944781182 975558541 820631120 853906780 673005446 832198049 643760499 800193216 650122874 880853265 721832321 852952145 149716661 290004179 28585665 680689018 848334001 954001575 637581663 663705104 436806814 700580815 600259297 629031371 643803716 651598866 346666550 353267114 634166552 731236475 103656197 581768953 144604352 568245496 24203471 732922558 688026457 916534191 99037300 913401861 686458157 993225675 382079897 558238507 487963566 561012514 922162775 932422582 624159095 905916519 98011593 212452162 487860327 992795639 377784595 671676874 162988810 423185160 165805183 349144996 896065166 940130316 589564198 874850502 413158706 520829291 223798921 855034436 512323227 605333258 55852438 236398916 657145966 657371195 32833156 832437726 106538547 645500464 689938204 952438628 730202887 942839096 743788860 867160644 953018086 985792302 358674530 390701122 943617274 944166559 133751386 578000176 581357667 817984297 42319033 990549611 841256410 856741640 688015308 986964682 984360508 997702707 624950763 853204987 417440710 963357001 239627208 631120922 104166174 614056463 564154835 958515225 739300716 805246354 435713127 809375854 640367128 702403709 670171583 808341771 377307013 599386233 192195339 772156749 382778584 644754537 496198241 776105896 996938430 997811053 286471977 795994902 104530091 789180636 801382445 957021936 938480315 991334746 526992840 735747517 349592658 491153269 564983343 981263907 373687304 602427384 641354664 982672367 704199595 960443584 567740597 717119659 111520904 835768704 312460872 838565799 576736036 935952870 30267770 515561791 394245034 551593437 960988567 969652268 349426064 829857858 382142282 499981621 888807295 899258475 835821711 847863026 681936519 745865257 902360069 943691725 114315199 757982418 357261573 730469227 583041000 730090318 765704609 805204698 894482537 921938512 664560595 666353623 922631570 977308841 837503063 911065472 447477894 574912313 357838740 566027280 80606491 446214903 80164918 593374939 963907029 993063000 757499190 762550406 49013393 634837245 282231482 683949781 289142927 320038503 333620447 419501508 640677792 951865807 579944181 601759323 599290564 646595089 719046596 796320457 299170030 693683828 190870600 716385567 463125469 862318019 570271617 809951607 607942008 804179195 889749204 979075381 769450600 900012244 27256369 863743568 324331329 565619929 203057633 462245568 835905380 970404603 912655407 992543244 190479824 763629395 435168986 627310074 397493474 802641675 255660189 484640722 421534212 555139046 344205082 769260210 412524628 591580054 349717521 886980509 151998091 577845894 644383648 970296951 150731413 333880780 140700029 501215598 883749670 918153971 348358943 638728877 618396579 849944635 35463447 788400436 614749310 806571336 601970505 989173399 679775698 871947709 441046419 579435626 962462043 979060360 357338967 633624670 757648991 901475805 517009957 578200432 492042726 972735365 755560716 941962933 182154775 558261938 614564822 806866293 974910063 981914408 684520745 963807138 125010729 750189500 410008573 798954842 863844970 881045081 740044162 967902320 511968643 775174315 487598770 962989480 336770414 432457417 442849152 956265326 740393888 942613799 741180260 967279691 953025017 992988214 564646400 771764389 289288068 464432220 463215574 578242069 663672830 803817564 651486021 788967564 286845366 530141572 108948019 619155600 253852671 893698279 896093453 940310548 845181778 973752084 36786378 932456052 183353154 972472187 355332420 546813803 861784931 873972625 487056002 635624200 780822284 916682769 221996324 351813034 998280284 998683914 702748994 888302687 315560343 354712882 125339679 901542876 844886438 935999397 167280978 691622942 482837513 849249346 237475039 921538639 894425051 955406586 329081562 655242013 209247183 400720195 513194133 842848604 261175549 940356893 897539793 971718461 702816791 844359434 572352285 984604087 812092235 912539424 763319834 882886591 404241608 465326196 333613062 666596099 428866973 950437782 649155436 786861819 30028646 710051578 645196814 772878454 734657649 989760023 818603156 976965373 388259122 738165359 826560900 853359609 793127041 842009575 842464958 856997635 776366366 987910693 8927368 985946847 895433128 999236527 72327848 864608857 64863701 316332934 675875542 969437732 15434487 601497315 933681347 990629453 149685884 218630074 960674040 995652032 277154133 742983802 507506703 625107347 404329358 970439718 191335075 421473319 455424672 584541178 351156545 672301048 483994337 780923798 239779285 345103894 265714786 336429638 915087945 999677562 143702089 949337553 500140477 681377592 615035215 954931332 981976465 992236769 530016346 994323701 417772059 708407896 128900806 315439511 594400806 882538269 196764732 405905017 653730111 955061146 511622135 710695208 347205838 899182692 12348966 264017686 409479313 431131844 645069578 922996607 773417281 985113603 14795447 645811307 724286061 937718525 941992845 993535502 272086240 338544951 536591292 904135825 765627355 869310205 905908251 941794234 807424105 853212037 298493642 782704067 476416901 841440195 33577979 820422788 858149825 977699454 799077006 960478523 643951122 881103877 423572378 967637848 204290777 610716251 933243376 980887223 19396107 388323622 972666274 988431322 867851295 940032145 296018718 847587933 630540295 651294135 872871166 883064989 921619274 953684800 158621098 265644728 458517386 951331848 362365282 442291253 464798697 828134193 420570029 706425474 239786312 672022832 227909453 634195763 564071925 907920484 848944603 905193228 666542431 691348196 160767298 219878611 919239675 935878619 427759013 564142825 988761418 994413153 390425198 644691748 50137824 470868433 270757601 686019337 94996143 165561438 936920191 963357984 875353640 965022986 560166702 787316224 987264435 990287491 15406628 75693135 984800859 996482430 435741401 644280664 695355441 922311306 403788500 819163120 791789498 872681894 748851003 958017616 886668690 948134761 731337205 911625952 535356640 797310322 325399547 914604859 454571734 596439640 789860785 830186419 305122054 610644424 924165378 988121683 576456785 720406063 608596762 776931213 923009546 951464965 2322169 868188585 633901868 758744672 651427611 783959861 542894605 675723955 91061076 606300918 787640436 867971663 471676858 937211939 315504239 542816652 513726111 725208885 527450017 760257065 927784577 950015821 362340060 456880953 625683528 731102894 592152059 908399185 701614772 815315180 452374367 840017132 344637807 642801877 75445522 680918097 277529951 834174204 782122403 899386290 943197140 998915270 558231384 944621831 744257555 905653880 627053857 663132160 193202389 674951547 779933188 967193693 381274135 979316904 516444484 882376219 988138128 994746803 109578000 561929725 967182518 969669151 805672245 934615030 355750059 593165395 755802810 831334962 457458777 714639868 649404670 775811420 460375024 647386051 690297104 935861429 916528553 927134632 341292890 603008683 476280720 488602918 246798677 580436568 905703836 992929718 388853551 686924218 442586434 761151902 27305547 579491126 124003842 471488524 964950142 972145702 749797699 835740191 752716745 877775536 228882773 419640197 889335901 908964600 29962445 714786763 497667396 779665340 784827170 911590860 231079415 415633900 259625546 822066774 496684171 675921690 368494565 674774454 492908296 540809612 68933314 528946714 321342345 623886892 739619913 748948722 742395031 954660853 771213395 913770290 130722926 364802581 653383556 736253767 333373047 609927337 524219785 950139443 819697656 826350402 907823817 952464296 524705328 789635815 691651001 849226658 786396532 911911120 351926680 467492460 765853334 855266039 897025687 905790085 877865712 907099013 466901945 858882359 245980504 569977677 38161172 477561557 538058946 708932659 154439180 880170583 321835635 330461270 223442685 485836928 13559759 604252875 212694398 486636477 802704076 961633626 398210722 736854751 196831142 399805823 701863144 806358274 582570198 817455121 794858593 845277635 968079011 991703505 344084156 606978726 549285015 701728489 405134975 631480708 374332577 741884677 629282376 860122246 395789773 839804837 137240621 244034386 138681569 211940937 907179736 967301275 698641332 835427696 297940542 598317392 338602726 417543726 857566352 949876541 691279682 932328432 161987676 271009564 672401038 907515147 837436701 951287555 895158830 998828018 568867282 729982284 162889803 560255976 96950235 569655565 103800760 314989066 132212582 485807751 829840448 958189766 402713108 597797568 205646749 452868828 856334501 900814590 404525844 442798416 653338907 952686919 416705476 472529277 478540405 825341680 51258658 509346036 82097247 377594545 884608271 993540862 14334878 906305836 921200593 971751234 277041874 326884364 613235573 682657506 881392117 914712348 19717309 223651325 185357602 222176622 111938966 425496229 854778612 859587400 373219015 870010248 856805274 918631155 864806500 912279099 542957342 789275503 322915611 463733447 783718527 936575773 361499661 731621599 271904568 748375400 210267468 314502333 684517786 759888118 791055298 855995681 510712736 561098832 73355128 250067751 763845471 997104906 275628370 732401114 501745555 863904788 240228477 551331347 632514762 987064568 694980028 965004740 998897744 998917392 828875297 870273345 900354056 925154795 431783168 562161888 743330863 854211920 94344657 99242192 897506677 959820588 436927971 984328404 252028693 767164863 650212375 773267416 739689496 762870582 873675295 887775383 257390952 676413383 910115583 915494642 939217065 981869576 182099085 257074115 839734064 864176624 989726434 996378455 327659619 389875423 379816492 926689788 466527105 746357594 365847160 765003040 578533049 656950818 902571555 971703011 607514715 996623329 366283842 881880167 171445376 394519339 200974223 458775415 927966584 970754014 844812700 965744059 542689240 778337545 184019881 924961578 378409233 430462546 787702091 887158797 891729688 977853385 679768482 782090999 936044260 951294996 227303535 506801816 995498147 996898259 768116814 843719945 406332345 923635325 679159008 699863001 19784449 513521418 242224993 447007236 626695167 724558503 303883112 470242084 862838244 930254929 982846397 984857616 94648882 661816327 559655887 803697391 538396676 773717015 17307822 942173299 34996104 798343057 773301227 829194110 985468088 998921566 628358297 816578744 160255973 538857336 406385299 967149952 491159583 910389793 266842546 487303926 634921143 714891396 605835803 794688747 276602825 730401066 682951453 795648397 779391050 911715110 953426034 961290069 855329664 968236644 198221907 290004007 9057083 73377615 13877266 444049130 339146633 857343701 378355624 860105458 355349186 753027534 195126424 855009857 902736854 963579688 40768167 267005790 593488324 919368866 115431266 360668174 544983271 734979362 316941930 858819906 609344619 734190033 772891160 960178502 446852613 747274786 5327821 977764226 284489826 569734244 573606263 966975576 763244546 962023664 657778397 820131028 156392 6536790 313370618 459770261 289010572 482971634 536126799 547681987 383352551 764426742 334111121 656188646 818086668 881087190 778888449 843501655 452865243 545302699 460225424 570555569 944797612 966830791 507117780 566261140 476466567 948300607 596964784 883292225 664916413 997688566 835554726 871654748 364820859 541299179 103259206 144643051 226701642 474808934 978432347 989462635 524529478 598232418 329248947 869830639 395871984 714536492 900757777 973465472 941320557 967638763 435981704 585360648 26969532 654231323 187569680 609633158 533707483 997423640 287715428 709417623 451712109 799954637 216543040 951828894 743817040 975488907 711938547 863607381 761537499 957274875 801801973 959584323 548220154 761381247 753778758 988091579 808479278 909751446 196536794 762421758 721511570 984449344 958218356 972540881 740351086 899910494 474633231 652946444 162486334 476776943 1414245 378987283 756538634 871496557 198296806 817040056 428668728 450810209 614264602 629419998 392120734 522307871 236759138 446244840 91986761 371836664 870905306 973488450 987759031 993281483 946998826 964973714 621273329 645386805 143536727 951954545 290225991 475617168 44959119 960800727 275405356 887275259 510745647 654493350 540435538 828046005 243008962 811803611 62881948 517796794 131555141 397631590 110178821 741313715 653212944 992394225 902873049 996523472 4431793 651000061 62363747 966435515 838870324 949855465 81500719 568284378 74527465 906268453 23791417 270511019 596313995 921733894 731662216 759879197 387228218 771707073 307811370 332161342 169416056 698217409 586632365 986693499 869054843 877555295 246132351 481963273 46448677 941999660 491132540 880805730 706366941 756533810 723336543 964015678 742457705 865818364 796793339 956299593 324863404 767850977 948764649 952273140 569802824 929155497 995542042 996882436 389310231 846559142 296211271 581789963 74682832 311460332 994706086 999258853 522409959 998530836 538754306 782207525 375179561 501325969 76419342 484110958 150883440 257513422 576611248 627266379 689690897 707070126 272186701 920819959 140095052 813314664 449611495 585652518 385116021 539432560 968208320 983699527 830943675 920020901 528554236 988961280 667706445 816433737 859772569 874440840 885507196 965955891 806730813 853305387 888381558 986978525 186953608 956318942 221049686 549667733 644562518 849210632 971251402 984420469 49063330 818094713 269501555 364876530 296744628 638799571 872368866 977213517 225404364 869660889 382493027 874504702 561768211 780326836 374389709 466812558 150628515 370273216 644321833 994844827 685016962 692835848 454773540 717538844 18959505 424296854 632658605 685780674 484749299 675212657 811724253 864415558 460173424 749503950 289076001 676618445 444978399 712762289 802003666 898067845 820091973 991500926 194227295 272044688 632449757 943870282 951783243 960564670 974211701 981229292 698885433 832935474 835554312 894021126 977893847 992099321 342189676 494483445 261531323 803786959 547270406 886241827 413878153 901086588 594774502 652494834 746374158 920751019 492084989 517446891 630023261 882955214 429782388 912352818 64693362 176538853 82814518 189912499 912382499 989477120 121748589 128489870 740076145 856042763 861351311 951666587 264796181 992720738 633557129 897740835 154941145 526986408 518442040 556697323 865831790 936315981 796035388 966314367 741547545 842154949 707639809 976829613 699005039 780559184 184258655 432292378 945399039 972198738 365805987 673001172 879093440 925833755 741949464 802393206 703827706 711315356 611985079 926169428 858920760 927576818 346875882 817399977 987595638 997954710 587714500 749608989 514856795 516484596 393267813 607281252 241909682 316513603 933420863 969604790 88129059 135862448 988566691 991811813 329684195 732477158 898864301 949802716 804853312 907332389 790342292 941614719 595084237 790960073 973197093 979177221 695805379 860129442 400680125 777100920 941352032 942819892 295849735 573370466 913717579 924770135 479047832 788753478 769428858 777486971 468245700 756216272 772375380 851081188 352706474 491958085 801732863 951529594 627346209 974548627 50389240 988797172 625040510 924538332 459685381 706474831 419877939 587616890 462161996 559261586 538665621 696550080 271898201 916948225 317702717 739995083 925846033 954292123 166060853 286975194 945524468 987746218 49570856 88157448 304753683 359962162 189019798 415248540 84939271 885393089 613721050 968624443 837018545 970048107 660416066 732226870 929649628 952928539 583532911 727564907 897614994 933070609 36604646 491274268 942169414 990558201 291225690 299355906 389930907 670664235 358184354 938830824 389864774 519571711 166647648 560812344 153753591 692694813 689952767 914416972 265561227 808081281 450007743 529574480 876638043 933014561 510596200 587945683 567552815 876140947 673668864 795478685 472086430 726619742 809136213 944111120 474739803 790349440 528582894 911645473 998332448 998850375 929865725 961765202 593291817 731461984 697339558 753113800 181673423 235873023 708426309 835348505 430587490 437063907 275338991 935121060 677520651 701596329 564190226 626118273 87226103 157180883 413986032 608724284 880917280 927295891 899582136 987532918 791615846 999083948 380542555 470688975 352110875 853944386 854075916 879293111 143229223 800813185 809118417 812326822 965706628 999951976 2163591 571123895 823438172 832788296 384498632 711931362 161118427 645752235 537412799 550305139 689393252 768273378 146164276 735958244 249633197 288893248 101154175 438683551 505949198 775530451 39355877 481831989 919903449 948945334 785458711 975940408 85386879 453701602 603370610 991750293 855596460 904768167 770032389 942333682 321257127 986538978 565104036 788212328 774310011 991512701 729235063 904514895 335602053 628241373 269607044 722458353 253010665 420668545 652658615 964182122 128216039 414770752 183272244 292549715 882271418 958776913 13664002 170355744 690655254 858977265 741825947 794829126 401608903 982260261 842167074 996100366 795133653 983774322 26367333 119367289 355006341 608595895 548416583 998994598 345547348 548665132 381983530 719243790 15532550 62499387 144435709 175876533 812050442 930002524 162119028 814404028 841479817 885292391 856444043 900167618 279461821 622813143 977988059 987601637 470168514 745050075 39705275 743175903 711782658 738075860 337781469 437254176 183891632 286783804 645174917 872722239 781345814 788152037 199484927 313122034 321765926 536936350 998501665 999012636 293526705 589877028 177538329 624781497 264056168 809878082 39193657 457220556 2059735 733237668 981499923 988730402 337348605 599686436 94418934 325716904 241186825 244735631 833771753 852454876 420415244 637463675 184030553 413887229 212909765 663680834 86566705 913221478 195266332 935062993 393258367 763892397 959331217 970869858 306318679 623982591 11079268 566653114 918153079 947685908 327546727 427849772 655254729 940595351 509132771 699588148 316084833 863970003 213316441 766053655 7747837 428514672 488409332 990546040 28289083 770046507 124253713 737144393 241050232 249707546 335532788 455674029 581411914 586034321 57631015 928473624 515981257 933260961 163674124 416481747 955751140 990953073 214003215 502032156 766330290 986356918 959718902 961243786 671635946 818198711 334801222 489345491 430563035 452918729 927114673 974496920 223904286 332408776 910845254 918525432 33611606 180850636 645492971 797392633 33812537 324182629 41832912 675155612 530977248 869244339 993127383 996260995 498719205 828787541 912050148 978919804 821544743 893964805 413139813 560645119 446216571 722999354 699576478 838385262 559341056 997035471 255302840 807025353 991158888 999262828 10370968 813399631 346065117 841757897 866854447 933098024 92876478 453099988 922188195 972610678 223933793 557498670 458508768 787714068 794826317 982988385 85073100 461505773 74358048 247325247 664563148 860647712 54965128 992267821 338917375 809302776 306185302 482933690 499283889 835570414 475833712 521370575 200314926 575890879 439835113 688917382 663288444 669744063 149006479 884493827 431448831 681991307 990731544 995346056 412541176 444186462 840039496 921978039 529987383 918621744 444423050 846917053 989640095 992243556 926336075 959504705 665690569 881824977 748676843 959620266 538681939 671675435 560767820 942672792 828722541 905028735 456521691 923164842 788090079 788850957 753713508 889272169 744919246 900235371 824101860 875608201 38842333 194168179 814816219 962435489 436483383 660954715 978784645 995720839 266308539 532711048 174814363 481706292 247859172 487453901 990672868 997078349 933309951 985668544 829996273 846159823 450548285 954704377 535899476 687682747 564503700 740399390 333439354 760203291 883916589 913188892 943070763 946204307 36647813 560998622 219933948 469342671 654363750 885049118 837645436 881869837 486856248 897377027 395496761 570824269 757289074 799664262 426775771 592344828 921674689 930969325 336858489 498924125 894435776 933203073 18070647 624141130 302317321 638088285 250654231 524846902 390223561 825895860 687006746 761411111 855992483 978386127 851553204 966004705 867435143 969831017 320375317 987550742 344640339 889695040 224913330 723395518 188516986 692463926 481072324 920311609 788130320 958265383 895290306 999063978 569458176 668042632 522973666 860204648 972020527 979913100 656475984 948645177 179766279 766048126 248827835 979146319 246327014 433011351 85602302 457528271 684681272 818521705 801653786 973554863 336043789 465164949 321792058 781862967 161666677 976784108 2622596 711301886 832659113 835914498 747574900 781270985 3449358 6334984 94893309 154727257 692876164 986452136 210320761 924286947 312331437 696647437 51422953 711409192 587699751 774984737 742073363 748054842 94113943 770632880 310904214 963515782 297117553 323418410 281099507 703176837 929702471 958761905 10506391 897180690 118892193 451512531 869082051 947206431 396858672 551116238 224330957 966085375 213622062 834868705 924180990 968474723 274316400 438439422 516116901 742904687 850072773 858308337 652933892 740701926 428636206 603205560 993398996 999796746 300714079 749259220 48173311 345067872 315555002 890668870 100727151 266334725 760674239 994425558 128409248 988759008 270913996 601513041 117256411 381655136 6144222 362959231 385471464 691695881 668832988 884975864 394169932 515526458 631655504 887546561 813742797 899553475 227769169 585949208 756755953 826015116 33863143 483440441 229605442 981136956 297287751 395350551 776931217 924990563 260248758 360299220 106643616 320512404 900022748 935092571 690378815 973133519 44978630 920050809 896285854 903270396 927746802 964775975 757454494 796543860 278496439 534630249 476286198 624688448 984819799 993909604 442244265 602493757 834892669 945593615 453149554 939965256 61764706 529639498 370765557 664568478 161809611 540396520 307563789 849981226 26555285 900910307 19546645 683429343 300263949 548553270 766612275 872246752 221557640 286195264 261352327 310333778 336583965 531267287 422728063 545990529 636727677 641528923 843469201 899813066 307484995 825895206 793339372 861005745 419165535 751539555 432065755 768021911 292488990 627060727 584169052 589581723 438646448 649679901 969496326 984655441 501461699 875442825 208734661 682469357 152965400 865645390 846051320 940852001 969259302 973340180 569811034 758044595 956543804 964297636 145616091 576260884 822013127 910495641 939550880 965462824 403932945 733060420 184814133 590536934 18431284 149764401 317553641 831980909 860035830 931719455 179476292 954223811 4974024 206117105 497120802 536889371 243109524 861364611 711276312 855246500 89156761 360258039 968239873 991345555 463790610 844082825 233978965 942716198 21006279 498085435 451285251 870607714 472760544 773405955 431980810 454161406 170588544 910454974 458521688 573938584 505197655 509233952 176142028 239097874 252304639 418138855 185299344 855169908 101323580 636682368 554976489 905659897 434652232 881584132 430242224 748615900 553467556 565638512 212793386 856148056 867779417 874355611 166466400 548059044 592235211 792307546 789998030 927367385 121308787 277466325 548709513 742565244 501300043 566399080 96399234 297950172 601982231 761694944 493900122 947194693 737301934 780551001 237835340 584484551 377614318 977207520 52570174 356714304 231995490 546775071 379089347 473077532 562554308 814814483 898003265 960109671 45893768 785746564 717918863 857875175 948341924 990961401 897032613 984626310 212837607 678237909 504112746 949328609 566214505 602841540 561381623 640238621 437190974 499672169 821102927 840469463 437840108 574219400 495638624 934596875 432903033 791165125 771111338 896108295 73728509 547977467 556421927 892074645 638549977 854057640 678101869 853119117 736892969 881006916 791196308 854302736 831202782 849428426 798117421 804210964 940793035 985009069 608181285 962012032 466389947 840235516 4050614 547471221 507487309 800081046 305230050 895313369 445751820 470418143 116755465 799123496 146342932 241023372 928614226 962740762 757676771 973194229 213268117 717513704 66602310 774851533 420441825 874258335 688084121 988884392 409726902 970108672 157788251 322693653 488354202 886451630 213430872 908114223 529263029 546302387 893559942 898777108 588623642 905239169 53717661 807730851 154402298 802765969 875591972 940478782 285018369 576295830 615589466 645817927 305980428 475499322 855795616 866810615 666546441 779946797 569339850 971840723 518503874 633793193 295495838 683088157 965117227 968062870 588371360 771303560 59440956 337288226 39936533 662371838 788297230 937528214 604429931 903864742 524375246 582970583 433405405 795383630 785639890 799931789 564522540 612981589 986861196 990774065 810409225 988502876 54203040 805368061 346288336 662964235 288948893 653056030 845118505 895377610 999480517 999612819 44415174 88151169 467393086 715743240 684661935 770483511 946543690 989841649 643733276 857358773 542029342 623519549 843655786 958040481 588955912 865507712 804091574 850955499 735026434 921712286 907533628 922012252 882092340 928426654 239305470 350795850 471497341 786806717 186483129 630825883 940368967 950760934 691034198 783208133 892028690 898890076 92565723 752016436 795371936 996235234 57537296 965370460 878713938 895846990 688882352 894213821 236867868 877454463 113740192 929842061 803761476 945662993 376619281 854558732 513101472 787635294 656037055 764258987 974503478 994552247 583631338 743037928 195865815 331280677 322192404 926983910 614878242 981957875 347939713 469887751 518266354 575927147 497288401 544835576 327467825 573807433 827487055 862647852 635469606 849497667 954470411 971318314 253378425 837751336 679495417 728085151 267837721 726571455 966140724 973886317 490145127 730062359 602920291 944831324 214898805 618190585 690603402 726629625 530369944 691399995 794881672 804458253 221020646 415775626 272702032 939037582 6743423 387781790 832650195 952322040 45212555 702464605 180189636 201059592 2698718 556105048 843492992 874701224 475242894 601985703 623691598 971048190 617183849 743732415 891911325 997147003 150237780 877456981 603401507 610551772 25679803 837341069 796205765 841616832 147265968 585541364 200602419 470401669 48195818 819577541 659831109 745767049 372137705 894196581 405309331 838643362 279811170 491427858 779229040 848226025 374900635 975021695 499192926 827154515 291355312 434791686 272055061 933004641 954272380 971217454 365075820 982717948 542159522 780731366 268107061 570051539 548554935 969419248 470214990 781354633 531848571 987443426 787815887 813771726 858722306 938627192 787871077 898491625 140570010 195693362 214470237 999328911 631391976 978403861 118999775 485705914 276182303 820589803 63395896 684442136 589767353 942857320 338949903 597269910 905532578 996318942 323920084 747768444 798932355 807505390 1235783 109744437 964380682 998675238 253099828 784905085 104191738 984923365 499920535 890563754 512504873 807406530 814816865 898421600 872146363 983620294 653720490 944511346 286780255 356854653 686849649 773287585 182520798 699027678 816049715 891388867 79330455 601442849 218994660 279904561 973203562 990908069 800588756 805132451 463718865 589558245 751595393 937044548 431641471 667155692 536070068 827418054 799250346 939510607 815118313 896141325 321606594 987026987 138133373 491352899 938621494 985006145 724166910 745648890 190969656 246562563 664515168 941179462 9926636 199002457 730721546 792689331 138699360 391202596 116237400 557628717 936138551 994146278 476249573 637010347 321470123 828051114 366950879 832122097 189707505 526540774 718795168 936249844 166916337 293329625 982571428 985937975 581648089 986619214 976017750 981067750 438258845 780296571 238472013 335522651 794632507 876169467 624126520 626829150 603517349 978448898 811725225 896117935 203789647 434308192 445575820 812905434 73615051 847489709 762794045 966460625 507555084 515086262 866366551 908142944 800946672 924838775 900626903 943736541 823040347 866709384 45805572 429784878 488132559 877221778 611277335 874819637 790828920 880578624 876209333 990803963 207264574 591850549 201311992 602180589 40497618 278564676 864621802 903926324 57918443 779812096 947119460 959587719 973549328 988844622 290959902 672320361 844448914 869553993 382171142 479810302 480801950 548133424 542526801 924848033 481198243 837197597 421337411 747017167 951358737 984861880 985101633 988904359 317993955 909247439 958475512 986023792 878378620 989414179 524466671 916044818 382911863 474382679 360474726 808115459 610688226 761949514 448759073 862749365 858507229 938090453 881886769 982701000 210932163 614403134 777424947 896536994 537869397 619196970 231779374 749839528 289785712 727083572 18858208 706163164 438813508 975609018 640439167 796176540 382223520 568623800 15117707 754433316 462761623 487841821 588313101 942692125 817790722 865585588 266724552 361548493 101782755 117204608 356536727 645654078 950556788 988925142 750414980 894178854 931928947 956040647 492390196 961008544 879557456 919921913 885620416 895070936 558173416 773965237 393641552 689504356 955244488 993188089 397937070 418984544 704238333 758684201 455854614 545687613 217375535 654328157 884159528 935576479 662465228 718065986 648367485 726830215 945537715 946845415 241189831 456991173 466533271 932313848 844294820 925511103 218908216 301212925 115683920 321033407 370141807 598221352 534779933 736844094 796773451 942943649 621144010 821225518 900105906 969581955 13462184 532178694 339801320 781657974 169303003 368652634 177235509 679005462 154520203 188876376 481749178 519224981 791783453 815409662 923963415 924143344 272852107 700506304 555910557 891685796 813394863 837488555 936279755 965884994 675644427 710246409 365173092 743975603 88998998 953495668 954023228 964832143 623770984 722414107 601855583 779503120 214384442 444589320 827340601 836680797 358823626 982546075 966037903 970306952 444037584 677071741 923029813 962414716 327912263 364376208 118455209 384648193 886372178 924651411 853524553 978002449 91310889 794906105 235823049 508511225 255026878 810645060 440524764 588920177 25202833 511755917 750614204 793666184 772323243 985523584 118568414 801764299 226721648 258180248 979038964 995939080 330786270 918723888 790803933 807465100 305158146 761118205 525513168 585708738 780241118 782842361 91366307 355579185 564901133 785089197 477027184 763302659 830608018 946477116 584236170 763040268 891912496 919891477 595397532 718192560 675704325 979320427 684136190 709720728 287491691 735117399 628539516 707006509 531969078 607600199 654257470 798544294 273607953 460886763 408192335 437332076 544353910 853582367 974619566 998966309 591156121 729021615 391025340 614412665 229392391 954855553 775370584 777430601 970826686 985038431 407611661 527628138 111627443 317918868 12099521 912224213 381893476 808576087 835602139 922280943 957748593 971723722 767073316 968983548 675227221 809818736 752397592 890862057 843239045 964842544 222697891 727321589 229503441 906262459 318703863 349252612 106766644 663528331 713952951 896986323 814274423 932355352 480148971 800308024 14466746 107369788 146196788 790996668 566235939 613837547 803507239 986271053 334051086 621237481 126925672 314559405 831223684 922211657 936033439 996702361 560190715 747695257 809947246 944389891 436098028 640137174 240749956 411088223 758673473 835869482 919025970 976100839 240060335 296063503 166727335 192761287 151570223 398783507 956428673 985398318 519570075 946196214 881375378 963437909 115999238 277384549 454142977 791300783 589369756 661858806 595277411 614440926 307884202 308204596 459561443 675267721 363032592 886664293 766999363 844682791 191902051 403066885 353555838 380628701 513392758 817875303 832676459 940521201 144411775 958690009 75279579 242541374 16951165 284073674 515670134 593817083 8661009 841443775 558963584 773770811 843379981 935454547 741708538 940073619 171253016 584981660 625849974 902934473 42544195 875527393 223439466 659956435 300391812 786347537 728433612 952974007 326893496 925765638 480297756 805453718 571824635 871566576 986543895 996280578 540132524 778330544 522880981 811049341 646150321 777620795 646606728 751929179 915555077 949849340 937741370 964691872 461043699 718789747 987234728 996364756 258190269 778462637 367532282 747507913 949770009 980069562 314911586 771302877 777159748 966361432 421790429 967263296 729683108 794733752 551488919 610565177 918371546 919062026 694815742 744017344 374541050 577989007 854551021 905728783 870092400 891327777 359667494 535151697 466462063 729141607 364165908 366330125 670199960 830926660 407178494 826627975 896954191 985314730 859063269 874625125 972885227 994549159 299715740 331838798 230962195 463420412 980546739 992919943 845468635 891429503 829462625 959811903 265660140 940084577 639824943 987992163 656335596 705540851 529472534 912930442 189301019 958169099 210403587 669751087 313674069 386158320 186579643 244590230 989146283 995993731 355784456 563247943 530587422 588686915 799788172 933395678 176872838 442630655 321152172 867529711 195462226 218495717 585247642 681094376 480318040 609740713 398493555 879716406 933139131 976982114 72981934 432497358 333337159 644809763 536006251 743360317 7277759 439153183 868299435 981803417 155678013 390203529 122489041 383324019 807305778 810745465 248621638 499173351 650159167 707673437 297339297 354405127 552229935 888621258 640983886 697970555 422347094 547043496 961886325 996418172 611824628 825856362 3725468 388828152 507237592 637099092 242059084 708691835 74978381 502232010 655203970 688888135 608123012 800110952 77643858 167854341 371905884 410417063 749682517 953164052 758296140 999872815 178807815 908729059 488749958 564283778 940775346 968588271 861896354 879901509 409060832 753755092 661355206 766409994 56166613 863383076 516331206 897928894 504016350 802418952 834947991 931256630 445501413 882818113 252139461 605373523 337714829 589894328 546285079 558942401 2275281 594929710 837088557 869294138 678101105 992635615 424797906 995005896 833554556 875593975 299324758 613067558 319634401 858832931 378613255 986745812 120531850 537683708 310317291 570596762 727352618 790662409 223735334 689460500 923945649 929023849 803399730 914022307 464443506 911425181 87542778 280915497 947558574 974209654 890907132 911010380 767403218 949990197 475073123 612022993 721004003 743322609 464552127 872814558 636635723 959886705 241121933 654603735 348456421 699696898 554103363 857604934 517620711 687038534 967303873 972686853 265203338 701700237 416630040 668773009 770005298 778692415 181852038 997942026 712617728 776741674 493111522 860052760 701847007 714750978 638971600 725398677 586381442 825154341 105216103 272386128 1201639 851940313 873095088 918228338 640435222 901410233 255562754 520297749 984529741 987376858 405268057 409327528 678951216 858047809 456898602 508994910 118615858 155193925 954958389 985298468 267329921 620532386 185293105 813198075 319275183 984310979 128631019 324425713 434455455 664954631 499803633 998814642 893990869 990037653 544621052 825653437 344744613 384968405 8345913 148596691 49047881 633642015 168172230 895625498 302178791 360387442 915929543 930093844 932416602 992527323 745912747 979909738 237839844 827170109 292391693 677252782 622608619 738653322 519039808 992791623 744928084 942311633 231904589 812773065 450370902 598976338 316428805 718523889 230604081 791404197 686929281 931306619 767816180 824716907 648564531 649193217 746317870 862961849 230835843 735249730 55690449 921407928 89718051 394854658 364513242 837233511 918885380 940967542 125952490 718356832 687054434 708822916 556358889 752252928 804356543 827659674 403478913 434945598 289699083 995615085 732612021 897314274 846332070 878854996 550870617 702921851 643400340 754344806 721351235 904204343 130317992 336370685 290242367 434727185 556060242 906060570 549217844 894889030 460178033 664439123 327079233 368185714 847367483 859626870 500994547 627064857 98369991 617737038 589812530 642631734 565971318 721197661 888454378 940730276 246740453 791409761 390116309 988231502 140551192 774498536 674121460 948577789 743949115 868205456 623421536 895397474 837934624 934958403 19009982 878068285 7676125 545283707 669399167 828968958 922749316 946048481 14771601 768086713 378016061 524565306 292781296 391279669 640844745 720355441 711670124 823912393 709539793 793402795 528611891 683047987 143344105 581278627 195078660 569227738 603352744 929643206 570640009 590400852 997185198 999365841 437856171 782364481 575090773 785162358 659354414 779964336 923469425 955435991 671958441 720390887 296267284 688361933 549685683 659337853 353089604 386882590 597696107 724829160 492177686 964094720 513952752 666763098 29581637 431855628 528166716 780740307 605453955 879611778 314228286 370183386 852965956 905286371 159436534 660597601 828788013 892495691 603743024 987023928 537408437 555531229 92193545 580162955 123790396 919295134 418333673 694454743 331042785 506076112 22304253 724412626 343839737 868650095 22028289 451462366 775618813 838010790 994868497 997916281 557992316 758699910 891214594 972012076 940342809 994214137 529088075 712646307 227765571 410660188 451982807 710735677 143108875 896430271 774742949 831260150 288995093 935479392 795379797 799957340 933512154 957375072 762976462 903265057 475270096 723842823 491504114 573920133 107344540 613725411 493800049 820190128 306643287 814513549 124384079 674844359 663969600 958766627 647842605 898361203 424889679 537584274 703681365 750942472 195133357 571023866 388886854 847278192 169270322 887946614 881214215 993604186 266664329 658067288 636249877 977042306 887799695 973163303 132259731 944758863 823725984 870171959 813629126 856464578 625830653 857669282 578118349 929310322 572142046 901826258 77756661 995580420 582739247 737170892 530779676 582662061 894259947 900166685 93620022 357015019 855617711 946555073 221035436 749636093 829549322 956117462 284554363 722046478 199602886 903049850 945347590 946918710 122281586 870571302 597770661 615578518 731093061 999304394 73835106 272188262 531179105 961178257 777079600 891422796 20181645 644199450 163254850 169665476 241142338 332187004 702534267 799739693 435846215 627637316 276760761 530787041 861872080 929632244 657275899 958375814 583891615 814925675 263455713 640726583 790613679 956557492 428048234 781083727 647197625 805246168 936958831 994545408 881440200 981292572 320394677 353173041 149142441 246219669 245927290 652518268 640469450 785186796 17365048 542710375 112336131 664179292 419245602 773553653 957618033 997483634 893900517 959177224 26997882 930853279 9176515 177079854 624395782 913947997 264122891 722067241 854468514 902874247 724034045 835188604 616266745 640975314 253897680 982084041 563987551 966675415 875323635 875804405 269384686 342124437 49830049 806826332 635802917 704089838 552127137 876509475 733856800 782902029 239532441 868981618 582950877 723122849 876449236 943098406 733188710 796456016 411570339 491518272 115065429 594849440 997971621 998352415 361548888 537460316 388391582 917142461 969614693 992011439 751441340 780966406 911002199 922702939 683528369 959059097 253459474 608047416 697538860 939105198 449710564 753995931 40530099 140507014 464395639 901808234 558648380 582148677 889722413 912774683 274490828 469495186 343223867 470456808 543216073 775391715 74475569 971619415 103587564 267674300 760423324 964903784 463925370 636450235 523584272 868344986 868648813 896961018 853378052 973145229 422638158 616903976 705721692 728015808 996802864 997823112 567542773 578124042 491266705 645198751 914897862 966775335 791852878 977242781 630507861 952539236 171007571 995036098 255876731 338606968 791893619 914656466 258445148 994481109 255735163 388674551 440649427 509282068 451640460 879897077 849498622 985603944 904825894 990702604 190948072 786957826 987006997 999015422 194669910 624639302 807056560 941246791 345134580 578325430 81473225 915783591 616607020 861759597 115554708 512466148 755946965 975028129 21263944 609403607 531715725 807160494 289390240 732053919 269564504 627609984 719350077 833456726 117478228 362042858 426663045 773592456 625759413 662503445 184732133 646605560 600059413 826676562 405570330 464766398 880967394 996901815 694011334 947194214 573720569 782807025 824623251 844444812 466147457 957628230 577112310 606845135 615815071 717857556 599166015 977999146 603410605 789738087 831188455 915262933 861731900 866490954 855972451 858348076 118448378 807018984 492111259 620921030 430050081 979150754 297556608 380246274 904709088 943727895 544654133 798986728 362308416 413597960 531624496 650897985 66724328 257488894 742022970 745438069 283669422 403818236 699626522 700701364 45249061 874232472 241800031 380832909 956869296 996146698 845746366 977750260 820146152 963973788 544507878 638393012 13701295 493773200 73675345 748366518 705630483 750564151 354255901 957262458 238260022 597895334 605529176 736577179 64330391 219897362 402207675 806191479 17454375 422969397 204721834 992127083 636910408 845321945 285233931 450257940 526253985 600075496 847520037 915886691 646431178 669756652 723959047 820433100 208408423 970442043 315988430 785582266 884412171 975441783 543733570 658422647 363219610 617185699 945161935 962761457 897263423 966395116 573963228 988840118 64885071 621383157 701350479 842117615 156179700 865178339 523983592 727128982 37451744 289194880 787111268 916825218 887923456 916493175 76971072 907939464 782143054 984766682 29919553 214827082 869436357 902384654 172311837 595848713 161276072 383077520 62211517 544777976 812615723 963213257 302336764 894605643 792608794 971218035 7857237 884063653 383960482 899374246 737601533 967919098 458580726 855283564 402011364 865451644 824230477 840153471 659628964 771191039 793222161 894100660 691130792 955658436 448211177 647138911 187078220 708223851 590652089 796891043 110770770 158158434 410315608 808676303 525090590 534234295 324687334 662698315 733619670 912641772 145234208 320467449 163583515 539030269 952050527 961791434 762592667 842277026 316413748 752727186 838383586 919958862 131873209 604373126 706409707 733293014 275145703 456817029 777485721 939916857 559918065 653153769 464714705 850279883 889751663 965496659 150103244 609708511 287281069 350467521 474282722 770144051 624636813 942745051 170445000 659998309 531929204 796103525 812694698 924731784 458280906 901298195 444425824 461454280 378988784 809689569 858893128 908612472 983902004 995498040 784802135 986788919 8761167 834834474 879215446 923080754 630158392 769377778 216278589 884187906 823971271 921442598 359280731 466304967 756333735 904525841 762272529 796469240 700667116 972824302 723922697 930728674 387988006 391749603 109269747 622578650 898220901 911620503 280702013 628675748 544425421 646425159 426363260 677742976 230222631 690393839 741681247 763470754 351463977 959629184 93764641 332605185 25653831 228086803 488700714 489319848 81382603 994191058 614079483 838415990 68200892 209720539 224711791 363500694 399021564 976526345 633770640 896875883 245796823 280318501 191016038 505857910 906595678 995935655 686620032 810911194 194657253 859203797 109978827 825970429 36466204 721567299 338040715 742436151 55558318 764365788 464075176 886862893 968093121 971267228 438921370 464237681 923417197 974987264 898042162 939012861 241385661 605475459 682896969 794494549 141402546 254799912 624616047 644347870 108202928 892115532 493814396 966329710 222015607 675841157 679451220 928743779 748093449 768198519 600995169 693762333 47467808 173901107 905663670 917471262 287964328 481934735 94680851 736855749 898178235 952659761 235705187 318544596 154763252 979201064 464436479 815369037 41628102 951606447 200619619 713066919 563578590 597051633 21705492 101754156 316912321 987964039 790070601 904344793 11968625 78122936 956579647 966008950 712666195 715249552 133277225 365251950 282055504 349516587 112607421 265774633 38135224 845525778 755062905 811864023 275507088 791021794 569017301 992482645 369325332 466298753 547813864 639671751 934146120 994504770 203972478 824865797 701063645 714583204 718302599 840989008 938573753 952375785 390016231 436462356 310066488 630360093 215888936 434181206 274918668 552071848 977490739 993941462 658931221 884613642 300712585 809977833 128059738 849034537 368829889 646050058 523330199 889994870 517139706 580389320 310895628 660178987 89262725 750782870 78487964 835945412 635274301 918291537 32975803 359376219 29318457 919257941 280197744 949531123 616058745 794760062 172938886 659586209 462695382 748768772 209947525 784936808 795989024 930893640 779010334 916948212 420625846 807283465 527670156 857804676 884065471 896512687 406016232 844148642 49818723 93255901 890086654 997169081 696479266 829069867 834304320 908027910 956088577 963321881 782265562 836268974 185419164 721323461 89417312 693621296 668558306 787258469 261657379 443071353 775431022 991388029 963959416 980016662 631621807 947244322 663220426 979109960 552349767 631670707 106142037 970698021 326056182 986810045 898882793 934334836 370906308 581768775 328556960 732666685 196480291 339482894 948601136 985941276 978652603 989395235 692609714 806186406 53051664 260137669 294304380 673427420 684588098 776636434 200152685 524354688 809384483 900312294 352010192 393213643 72699837 327769083 441603858 932693262 793661794 805772108 296062161 358670532 476876605 762037741 510929311 904691551 934786009 936969116 312823349 465108370 883810137 961984144 69297547 381176222 338419580 406832423 404210167 420313254 349791655 455686764 813374445 968710872 495758256 985588201 608718429 884332484 154068481 499944503 144209839 647024882 110181803 159874057 556935290 842648497 784435097 829516312 128805691 610966209 374081141 912835167 19787558 974029588 594850792 982186444 188301741 865284822 698471242 999728662 55724855 722166967 129830253 980650718 712078970 811564515 841879983 985954147 525440911 910227415 268157976 522282768 25621649 407023386 405342812 725687011 859796136 934593962 701380800 721292650 406396802 631546755 970453707 998631683 874849221 890177777 756779193 971111958 966970828 980507806 91667742 423966660 466676310 702316246 603692148 880098188 145169047 799996461 849499803 980004659 63540269 80555501 993945684 995297402 377437788 463311913 26447817 196491758 704284693 851147436 459853984 621313772 64888645 768369529 527324783 897667500 998714845 998771155 628050165 867941744 766153280 969701650 575662249 598470178 432690612 976426723 874191541 906204782 15076682 694580955 108607926 608035120 763738925 997035948 778213795 798492167 932680628 952868994 391304091 580322979 102795999 537562706 439971075 462667522 393496157 618707745 929411563 947170482 68824345 830646394 626445983 688296656 977574261 999952634 615681426 826045632 518202936 577873191 863160793 887591793 312779695 737943654 670163896 699826863 376010647 713395077 597911880 801941904 723395669 726635024 482627173 646758074 160385871 713830161 842332053 941421562 971130703 981185481 314553219 947657287 661078720 814157879 774146065 924208733 233456841 340493078 682875856 761484278 846923278 871465511 684247670 684446247 833913401 959400887 876370127 925912036 827529873 952317790 453324537 988330201 914238215 960256030 763312841 834983778 133249416 878430990 120825734 860437961 474149123 553679728 348570955 984761581 463085533 472023285 335246156 737712822 109654532 407169910 801134317 972952145 16936002 747067859 971695124 992771616 826892047 879585278 398725644 497794980 648720759 816386003 303761270 602554809 881662397 976642062 689512703 981142908 703444647 948398154 585908280 585963001 18120615 256220634 433826083 861750018 100335777 254489187 730899967 775597347 841267472 982460153 146942613 972573629 16042604 110078878 173886646 893479239 791415016 999170429 321337923 444680922 476885458 941294230 636329011 684347077 694092523 695699201 69427392 133729518 254716805 366328013 993932903 999407452 653178245 788476168 68806635 400356557 402155977 807484602 444012573 537374394 636918660 966097788 281822288 544556421 313034135 865808486 827278697 964985289 648781947 698261405 897667544 977189326 515318199 816707958 260275535 976320268 689289576 715601548 516173559 884026058 248222928 451953872 317588683 353778806 26582611 710999393 464242596 613549545 694724306 723762206 489495887 632944136 198345022 557256231 506258611 671222870 606950272 703145167 864577489 879406286 741858738 984920029 978007477 992125607 174862047 572606626 259055529 815042103 20497607 347621966 359326201 549476677 380486877 537353971 269322274 704036024 234533984 244903684 825585675 917141722 365328198 776197671 395965791 436265198 752709209 780745357 643665817 698306376 989654345 997684721 176503418 424104100 729673441 729886483 613124336 752768633 634806659 746316269 409291466 937192572 472065292 479358862 552352569 787108250 704741547 723171878 163796478 934590958 812732622 819123449 448231578 777548122 282788374 507680548 168024294 819739894 911234438 998359404 23414730 628635445 501076372 705235694 808127921 955981636 525645019 573878120 743598806 999179467 327056543 554094741 95150060 193014710 423976735 902417591 223831138 685187030 482578447 650595225 705502312 984631877 407651044 463963448 268413310 380099010 277936446 540289380 231975892 544232154 923157354 982963898 111840887 382136184 539655892 914187348 772138270 848941958 17043322 573428364 510507450 875972782 815918439 964701808 27045160 873961811 886377625 893201011 771887069 841029972 421798344 971709275 788353376 978539589 461405468 776155804 612094963 842728234 494219185 580990606 632885689 749917110 4447260 237991019 707902769 873712554 523846754 929871276 509171097 529253305 184838066 441027389 888592766 976821687 864672061 933310261 170979952 724155899 601703650 959930541 228936641 420635510 316760886 339923169 572703338 909132571 849897268 952284875 181555849 871601785 109991136 654762557 82296356 998669881 156685880 819860837 766293280 927453826 915549090 953630313 892478760 967714196 230169826 860024837 212552885 942173239 409531291 615184988 383225357 760651801 329444768 437332286 837363927 970762441 78528019 432595656 95142592 755984910 494128852 711625207 791938274 901012217 99063421 965854991 359705694 743985536 87247229 116944838 492693467 608417603 871876322 890658138 776646972 925098198 995961366 999469302 406706510 503289098 666846298 997954592 721632451 756482558 300652053 357896935 799882557 812319397 324227985 413393310 247492930 857023572 829104939 894440105 259447818 520913379 46921993 653656302 425105995 813385888 635957524 900575124 7758665 569806784 634261302 700720808 557426914 849548091 49794475 701651525 582434385 603314123 362483999 724331387 211058400 375484380 339274470 697317677 215691484 902195058 783854116 881293863 521219994 603977251 217807564 477707443 111521263 499565162 894189222 964103391 266325183 631286108 47896444 781615149 948108714 990215772 938457814 955956289 224195543 721555447 23677167 565317101 673882993 886515023 816318409 822356964 385087376 892184045 865354844 961124762 838965534 981911324 431113686 919748701 302000990 833623972 650557387 693731000 824400956 971634668 425905678 769049572 501845872 919132093 574695738 701094245 980841900 995689086 351199181 675680195 374401012 386232513 920443868 967511359 559874675 774556931 332493570 896893451 327740604 535481271 433966361 798722876 703644338 791948610 589190944 632577153 670682113 716172416 982842892 997157578 416818636 832199041 394236702 564071136 702924203 959060694 330454296 953826846 355794213 936416501 681850042 888829221 202225766 556912200 853835304 949274142 110444464 726292298 572021974 735886879 562577063 818386533 790621952 952016564 376277845 816286827 700896318 944041617 194638309 475502218 148018273 550701341 828888187 918238428 504892949 631017498 545116676 984956778 605264286 930306680 867505782 945473763 856346993 975199023 796495481 834985341 563897301 580727629 764410875 768647585 532610157 916590814 967565625 969139563 432319504 993255026 383014142 686336428 786085606 990059246 738393631 749471126 270662102 781233575 890908785 962467006 823604586 863675472 408825641 896094370 519680534 710502144 428878255 457701180 754351301 944269430 731829462 965506191 427613964 930042234 334567592 614820841 359098 236239689 522983671 740353842 86984801 680396328 393133918 421899774 510883415 810628531 508626710 569505228 618947736 776800396 625963201 846383866 608198770 980509413 460770004 974557511 910470918 951228048 155695407 705391297 205057636 659684178 487425665 910017111 239534823 782613403 462892975 725646108 766095148 972274782 616626082 899405371 120282101 500576631 8465302 563846115 796278312 884769126 84963763 786710689 594971324 745797196 882261119 893741025 653900443 658063229 176625535 717631432 366277052 564346168 668948222 805849386 190233940 676431288 320349096 552318527 581060401 929321804 977409685 981308969 231396036 294805966 137358813 253481139 737255933 871187257 344399748 416499569 518530034 547274522 420636737 436252452 559325511 994536842 79757276 641671686 799205307 946107220 252348419 894543022 264734572 878149036 27392533 542352132 276178773 411350348 941841934 987390941 951726444 965733270 88525246 333525479 211323184 660213575 547132834 741843182 269127262 577777855 87241663 859068003 202417104 681345929 525070336 764138189 22475312 177145282 372537461 638920218 826820122 832443233 209419239 888002273 838823430 847762492 868358026 971409609 473361136 607891487 755608069 868206111 836614172 885123945 874603703 952056408 575496033 892678212 293242324 417881569 680458059 810500288 717728319 810910037 793603868 989235910 141663417 573708654 295613003 647898898 284783054 900378606 371899076 624270389 463666333 477127059 437967927 461190897 226853904 411177116 349171230 830529872 295054235 500268051 245266986 305849764 374163385 849860811 591957911 993908550 130335310 783529909 692955006 765379570 35720127 188400274 695029723 818826396 82149174 691077713 675377864 875684495 957238980 973877087 257912972 938524553 6583646 530925187 543951289 749159804 687363877 907808332 281912153 647586702 53704175 879884853 154385326 800958773 959349008 986773787 35950773 57653206 700991511 715326918 385487723 684064412 790491746 923433273 240326606 543814752 436347105 849925459 824370324 983527774 151781776 303964698 211669119 826812661 625876081 864575340 485394725 601369591 774598931 871716615 310091616 925176775 290927254 609372853 153986605 605364271 637365788 894593479 532607854 979735975 573220827 972076194 120363762 440425610 984207913 987339405 693560959 818786573 49696455 351733939 751147917 871598595 296495717 558953881 103537185 290526907 154340460 354020502 124590999 556779003 608393003 632777591 244026353 977237591 121969330 683756257 692941402 910723751 979999302 993155620 420513818 510689336 739882404 820739900 849408851 936993342 497410069 858552537 757298955 939266927 879309565 943523745 877195145 948296777 71930528 165585377 6475373 198987619 90877417 194858417 830288649 882133548 369066554 761773180 271756813 707619958 767510737 936749929 960217110 974239932 86096069 245712559 120576955 442828013 540355607 846118774 377629081 883636215 720474475 971098157 280652625 724378616 300361562 784359416 40587267 360875329 758222259 806709058 710265719 862497686 410126237 448116356 935677321 980927976 875701740 880469583 59204756 196329826 201873529 867424811 89450839 113344939 275443774 370538781 117593975 478461621 954907608 981533523 928629000 948037065 149626538 229341698 31332002 211087431 356059149 593618280 496570056 969510850 977001848 998419555 129937586 363546068 961774506 998705768 47473455 663292085 259475136 512672174 592835174 887196348 174098643 395322447 858115633 945872885 169407584 421668975 939460141 971681287 184573587 948847543 572730481 935558385 140155755 556129866 902751747 966387255 140056158 787445579 563166493 817289903 763071003 847519348 513643051 575498627 664416125 817880157 633338465 736609240 274717787 782295664 539033931 942450409 822374439 855461212 641881408 731796330 683113942 739787776 77410022 352549749 100366238 323950538 890092697 915703105 739444293 955851054 623814723 690498312 500443128 668200974 898142116 976636725 555230520 597146264 151436899 707053879 187258585 884338133 610037370 746585202 29794514 145597959 550311124 810643200 723415876 805548555 114670528 814628785 529480510 786185324 715751216 881272907 993441674 996222534 662948160 817923641 972770155 996858732 355363768 948054134 640307306 767176768 685638949 901106210 143604119 423131303 768784080 818019827 786125846 810551226 454672953 673766288 979489883 997848775 30036509 850533545 731622846 990377716 366916955 992142626 727712678 881031265 472440029 648362919 468460512 891269608 270226572 971452739 937820418 966375078 712214839 792493854 323282576 625704938 503929560 974185263 413451137 748552098 350204762 547963978 152620710 524125726 600523836 666310046 276769188 306452101 329095674 585206192 12879936 941274916 124292524 608373286 822551093 956291709 506866019 562955248 436081779 580953895 947474185 959188096 31534057 615726735 725140941 932187398 844309288 912194197 840128517 872994072 90433250 940118858 208843526 855592598 572388659 879077848 14727381 851132587 754099147 805542470 645050782 802404037 438199475 743527044 377044630 836596338 769690200 875475951 394256224 520278588 276528000 431121080 845654427 852362850 197557121 592658565 11777166 641761001 792407942 920546556 398932592 458738644 850578855 892805101 462630509 766534262 649022291 926623579 619925562 953601758 567945670 803633596 438570027 809511783 676342972 805963800 953710454 994976665 469411630 953956509 665741563 991099691 239333298 444057539 325734023 856951982 768002342 957158526 226748642 488071600 862276016 948689886 971146136 983955879 408756009 929470353 350721333 780900799 654431497 789064416 250089339 842635393 459398831 833087065 955863360 967434698 95855686 618708037 286983151 737225250 957283015 993152031 295008676 719381934 139998477 881620921 843903778 983315860 975648618 990637001 830708784 935518856 93195677 909101202 995294460 998359883 390936808 732777142 273053648 476503117 556626066 571953607 93372341 101292598 63970676 488654122 356443298 833607081 742635612 888835618 569496394 872294678 997205917 997905868 45951604 311268611 820746253 929930003 890177477 899283708 784972075 859874251 129963702 765350870 627317727 678460284 771051648 927529254 202651111 628513771 820437979 975037372 398519637 678676565 633393158 946325116 943249702 991426929 763379769 931541014 408056957 927652477 413927163 415412847 868365804 929735880 234399466 972103076 723805403 847102104 483989680 739728130 827519606 949267200 302666823 306677919 367440875 875576454 517624020 946954603 811458648 944583198 347203121 990806706 164060964 879681559 484379766 869411414 109031772 151428934 997625330 999657239 766516541 937784963 409922568 580292430 73233191 337495767 708580504 760723628 257094482 455917688 699966183 837033440 306950505 500385998 838054453 931267726 182254320 828313176 242367663 450678141 527355091 713673664 454013462 536787901 968143388 990465834 801865230 878248523 796583330 862741980 441037198 812876069 159216813 923288712 316870099 807681867 486885737 928857828 87072229 539304159 743373946 900385973 783467110 834560824 313545327 717124861 118187110 861323176 216130489 767676823 480231145 873110122 330080374 644262824 672013891 710679826 940410625 985144767 106057710 888997749 195858769 232600472 281308469 346159724 823738522 906025528 47902620 253776120 693120307 996163902 297637846 834986955 393073780 654736103 645070913 955884028 895815103 945889485 561028432 563535651 696674510 830200363 919740721 945869303 930466197 990601585 572731896 728595983 639098993 758901387 614889583 712046554 188958076 715479985 614419817 625806841 132635342 829807109 187232913 475141689 840018299 969049357 696289888 701372258 851798424 953825561 540635290 924494706 37728031 53258890 713694150 871230080 892604452 964797599 134684379 398386939 262955740 864403834 228857490 283034650 142754722 144195009 599822578 736652771 891603183 906085416 991081759 996447205 70262728 326658474 959220902 976831298 551887812 679889742 55874490 798418704 541408992 588205159 118938275 319975485 605281679 770029441 49765394 870304310 278432311 855117701 728384899 998649257 14813085 635150465 65484180 462332717 820626733 829136711 950641157 987388678 721274091 897682621 700245004 941638558 787287126 881984912 291866241 792619174 162386350 303413003 132877850 975254820 706079916 836136823 990263140 993409363 245038253 883748828 325797315 848711393 189728271 606466087 355243867 630747352 208772266 231025186 401946936 940414549 502917952 706355503 33357405 488007101 39337736 946635858 839474440 894374001 208140653 239767735 887642490 965175946 655856571 867903847 356413835 613002506 248401916 338755221 692534289 721163607 815538460 827876307 324407941 478674787 81869500 85412406 663107411 908270911 370990160 614157572 33387618 430068743 792592669 833138100 142970610 577157380 417226758 756831584 351289609 626515345 391423488 965430689 918788768 971979083 487778428 577845643 317046976 984653794 774095532 879793274 77470252 315354071 609561857 938581269 461863877 818147869 448921801 852337264 89567315 969660360 444697885 503764892 448589082 713207788 18364328 849641917 302211918 539123515 276255292 668752478 261566864 766772806 395193411 490333119 73825485 442449502 631252389 931387633 446871666 510277566 19390827 688339576 341025091 385683414 379191644 868345080 677100457 912505083 991360160 999297145 247850597 994087789 552785190 786156294 993644542 994821530 597086703 954448913 414001026 753808611 148230538 405156539 507474693 723591545 583605086 613130628 642579124 735721968 905380000 984423796 900560259 964553421 908417632 935855519 283620406 452982689 542993562 688688660 833186932 935884390 328045957 957376079 371692687 772315528 231095583 430851657 514960348 598664192 188022211 547099729 835342775 985650376 251598838 850400117 677238808 679005486 59619465 162020777 930249079 971341266 127092603 665170193 730896489 945529230 563033007 678502374 769719945 927431855 748634569 938581186 674386439 703486058 767818170 848012759 553219641 986133136 846767776 934411949 980830009 990591553 362881562 691116841 984986151 998983664 146032485 530833893 243675006 357848694 707510012 976356523 855276378 918762929 976550252 989271968 339920851 578614072 678221295 938796052 64763197 81124700 945759044 948654623 450648199 769680417 574335111 661809027 853702015 874141155 860780833 940826176 45415364 775207366 463315967 541709172 122512392 168760718 210632114 224837693 530330819 696893512 856137644 931970258 834741779 983590385 594876041 885909099 397261943 849584190 611788270 676021426 315265317 406981614 921430589 955530680 924789483 929511847 816147997 923080925 809922457 992071361 866556864 965795422 658547521 789714291 937884019 985124439 243002071 880639689 621777802 806375965 643212785 949222425 893195769 960680892 384033818 643816454 903355302 943071465 446742768 900701447 500139613 919041253 420860765 646870271 312898939 582575843 330982047 956576659 379910176 929423075 521316346 831779580 674393812 755757683 44865753 876336263 574804268 809616708 89308841 995815239 516781542 845789601 684698492 801479395 126296394 625267896 540848200 943075704 501757168 625413259 179002012 824601460 857301384 896064399 318181297 561323726 592113944 870172510 814249981 979433416 496525023 858752776 465840180 750207506 52332771 479285022 14597760 324363330 603727877 999136739 208957808 846599916 169622233 330332646 171104828 585696785 595048127 729812443 387206096 652127643 753004380 942547140 335395707 851950733 978900750 993586719 257431476 788612219 649943442 666953898 305127195 598609475 602594163 762823689 231635747 819468197 975455175 991818922 898629098 965733698 450848454 895006008 21185764 925268079 729481511 915787128 736804493 852056932 347313090 855675530 999402938 999928417 274724004 412965695 972122890 999638969 530038576 927114927 84017842 369206985 54312044 668807967 939364671 989412788 145910590 413535205 773218922 829393608 349002708 956788758 401657384 653742953 764228129 800128010 169288879 506566008 517924359 857111890 554782856 846363269 452472157 939186303 593172426 771038032 803346125 805760479 280928697 312614518 955676644 956702829 511693328 729369840 393257832 420850097 565549017 680021193 978699065 981282635 807385136 845844171 916553644 937143394 351296546 359997676 905657371 910619326 85004740 391503206 522105846 606344058 874666787 933253154 107715300 488084999 777871466 801940979 360292027 705403153 853625443 917813915 438537277 819876898 590404165 882155596 945756821 959260686 473975497 801647366 744873927 945126750 143408134 673748607 315041162 834258668 914107150 926814003 87397251 214201005 389086587 498758410 200586765 970354001 508983463 837562237 357851212 615536533 801671967 969344137 10258984 762459868 376351868 903978423 963012200 964931869 685534189 740943824 82629707 378059498 67601209 506756929 648214464 769375648 62109814 176864230 142368124 956617485 713579427 769917746 129125290 340188480 789935054 979739151 343609258 362123801 107970349 444579279 926950785 962456434 909240489 931105124 233570917 528598087 664678713 757022201 471588407 861175911 680056165 732790718 499373496 869995688 406141627 440998448 687000554 744603490 814163078 901585416 998434477 998983777 695295040 751868713 991772025 999194155 692489232 808554025 260229825 551430039 306017873 730934600 774447704 854976746 497075304 699218169 758404077 900450345 890385370 927481500 839387343 982022542 837084526 945279928 791542769 811977567 38457556 271222497 839626691 955762858 702078609 980583110 858114725 901754901 290220449 465063357 899444625 933314716 651848180 853699881 742589802 922852086 181867920 497597811 379890891 487539127 604985429 854620521 537723408 836126291 761319953 988868117 589281425 941931558 616020978 698487656 740529196 830372226 45662141 759776590 687703070 874091568 507185790 517337749 319489348 683663490 695912727 934180570 898855522 979380540 511928821 634447652 759936665 782133699 222075886 567768616 310260275 789692741 104674529 160575500 545674636 921985144 10551017 402509294 388588604 868882976 762297064 868038840 957027194 964243752 419034285 788315187 37669612 680710232 144274189 768729116 23934605 384319718 788172385 919433388 989798285 998311598 622053044 905031498 63331728 643843566 23656670 381433977 70443556 355722690 124746718 763389170 519539994 581493615 662571525 808079784 91006414 679765344 939172261 943997781 70757910 647277391 114972691 482072786 699711410 998886561 459650487 769173149 908962173 911060937 216571139 566661616 332458512 500322708 624572915 846502958 270749540 338072075 2366114 685400161 606435333 938197211 84886834 236613013 106563616 860384439 6728407 317060609 563172810 886261449 596702762 665620267 150677936 817979168 587001951 915529479 370285777 934303293 44539137 829537240 459718931 944255019 887026761 914536895 901157475 973568038 808365722 939836255 842968485 851082016 569611691 964707376 706403406 842148023 120625691 785828866 149280417 411324945 78176483 469424591 131811058 525849086 242511283 439640755 458376857 828262124 189851402 912231804 506939966 600688066 130356891 831393899 684039434 917542321 178545474 571985246 396144293 916291527 240631695 948839330 912530462 986430954 798449700 825816308 726640387 841145186 357948577 811228770 610331761 800186815 736659113 920393527 35981542 387883697 163218490 702851899 25794748 138862808 185530962 259376835 223092811 777503612 36621298 523527310 623498385 718174236 257703110 687027874 856791242 939217056 266161661 877477662 190052269 229657049 811541727 977357816 414171160 707992445 484330289 782321063 378827979 779385301 647511932 679273422 309085636 493341569 583576844 805072034 431596145 776790257 159480681 511840261 688189017 958847138 850438880 860685590 546290920 829812023 927471986 968562992 58545071 305150641 238282476 576982572 960814859 991341178 994114393 998167119 497598113 752021174 190000227 977419596 383505369 496263726 109599827 385531493 329426454 389535684 272736893 906901598 358331295 551810375 982641359 998082652 42464205 952563128 66119041 638223214 584523689 921776690 420718974 666514394 910028830 971150476 865648777 998553838 464476552 653535013 927099895 933017974 394827526 404291774 32436419 381211698 60473989 638577376 607944835 744510135 51896126 410436145 315579076 645315878 945472518 977356341 28576222 752065901 990460750 996191766 305325517 732455573 712548720 727609162 985290510 990756185 925973541 926367793 9435700 851031589 874097436 878756067 155576336 664415894 172291618 591381931 875322181 930879841 160473180 727394682 14280676 985481467 652082485 981217106 36997751 46336035 661899578 805839491 956485542 979877622 818924792 875320686 362308731 477027180 376127997 588569895 844286528 975041933 25363000 559255368 419257914 914274557 804803155 854488984 471177570 892967135 160418738 299964210 955551942 967809826 231256752 459716750 227091170 896646032 503144224 719859817 677313928 691404603 621377569 844378219 275500287 722663048 97610624 289848713 207601954 727312879 309454870 727187589 652650080 991879615 42504623 334900234 875723814 988112030 48842435 284681277 829933184 945571921 644453802 840059221 495804364 665756861 503567834 549600210 31799176 865864093 683785314 825408640 592918504 763460740 662906873 982609518 529416669 840271000 247455226 718876789 871874186 986012890 355611970 579920589 807302892 860388625 77013164 824533203 897749224 962086434 584248948 649023633 975279890 996695618 385654554 963598038 251782504 943930181 396659181 973864506 220316015 483434920 33822447 480968083 54139675 999210971 536740542 669513160 145653085 304522363 909826466 936575162 740049366 740907431 304172712 888463535 806304833 904417665 42799137 486072728 897053322 987671322 478817860 956377338 497894715 640084345 891518459 901499589 949866962 993622244 502372723 669447508 531927301 984216970 833975050 973434760 193978349 469657355 315996075 455748406 940958887 997497776 143356302 148033445 207151776 391969927 446439453 893778900 685926552 773189108 315783974 417837162 741948780 916730335 902353790 912718627 393243879 866866662 927756122 962223294 512135622 788074295 90293837 409915950 21421757 985096726 56330768 161968353 177566284 808530379 302551907 589968417 610019235 736864429 502397557 738516805 356515047 869984395 925171486 986758980 748511529 758254879 363010499 627545131 946954992 980511771 841328414 850894220 934840028 994896130 384998245 443668518 3219759 215982132 490004614 582053362 438941133 542771773 152043771 159969608 743494848 748687681 368638997 421598180 380563584 508995649 980415883 987379658 422680733 976039539 87852785 667217803 654911211 749510777 776725414 846009936 703479927 842501962 491305493 502782297 530894024 679482220 682314333 859678919 500967417 714903651 496744208 529767609 388970322 514275690 503943535 862303684 544243373 946288485 791981917 989997939 422714491 503710291 589854047 785152327 4735662 982586485 925406000 948349123 263447191 765624865 572146791 733977864 586141972 755669640 513729535 988098323 687082523 750334634 891825012 982123656 123310998 705448934 936824272 970506567 252932244 725446752 728950148 994098933 569768748 692666044 282394202 564888176 887654890 997560126 334619095 530396397 805808880 978097069 258620560 595658488 177681557 468887335 566392227 572360043 657437807 931162201 997056806 998368256 285403754 804935115 753655137 756187931 530585139 713560411 704421399 951217588 917945506 968837402 789635860 959138238 407935313 775262500 756978210 775700542 98605043 923760210 379819816 753337963 385165671 501929511 526945050 885674784 719839788 902906863 958465164 965467417 531492743 874332977 313041851 324840808 167252394 381987967 617555458 818936704 464153182 610729649 306212267 363482352 489175919 953696496 655284110 747067557 996312264 996882582 721996588 773185521 257267764 963990276 323882319 474492641 744091654 990556636 933896676 943215949 338278507 972610981 623247299 655339508 932358083 994646360 983993787 995446916 284774940 329217106 77501149 221941365 911003818 942258855 795814919 936255842 366864534 882715651 839578242 913213230 904177457 957285439 215632802 786802571 99036891 787769522 372620539 680843099 485263298 719596080 493196209 928943710 741233484 754826592 210537828 343019155 547035743 574703244 208602799 883621631 3633773 613039870 305579533 802322295 920609808 994518137 663363536 696547835 681364408 841667888 728836950 962191885 439675630 764428583 895396326 945541100 59696143 682763132 589548288 782395139 286441621 774683296 598385901 752359834 61798322 268505875 823666355 913457144 14069228 719924704 953401345 980434550 75202068 295980499 396566077 963445367 906920516 906920662 370297404 614966764 436818140 687598589 315142462 596185016 269405618 655595892 802406119 879579028 180051271 483818150 927503188 965022342 171500076 333157424 622495393 802155845 67792766 230297525 548493892 871102125 602342704 771451454 267579712 571333878 756397252 909440984 140904818 466062793 956262806 966380824 736404379 749893434 599295246 826391811 584544867 786236313 15712736 386923839 641170262 896031014 832582121 959623806 927886764 956128783 169199838 752005245 997772261 999834866 9458811 467802816 714085660 911155548 250467515 552207614 824209249 872381187 692039463 872126023 600326930 845900840 582047969 763961807 510857394 515244622 492609534 921696212 710857010 846976301 32041911 804608219 643601938 955530583 652307265 657939504 145969219 392792279 354216052 938256421 529616499 950955562 220594354 270162293 466949085 625330211 774969529 811395342 547520424 997762469 165315069 857412429 395733134 900715509 47631977 404887836 993422557 999003287 631600569 862012919 599847586 884392962 381763314 502175835 279457485 289440436 319421385 661986677 86679758 491839998 512433387 809685272 734500838 780962121 709688597 837298846 357491281 904814038 42845634 155910634 358088697 612575065 266452021 926941787 523173458 908034780 143211301 495755135 379611272 846801628 183456632 550572690 226800079 289093556 995989407 997362414 836229308 884928357 401175846 781715970 697816129 840286560 224073233 709509753 379063007 913977743 199937497 421389064 766844271 804519287 47652506 414443849 563574827 645709247 729836071 962482226 995665326 998685941 656103401 822805240 236068512 953481642 278648910 605298740 922248312 925851600 956609437 970905589 735660959 984588928 662273201 766161267 511852381 617330338 448334445 754201630 506782027 955339976 854652816 918220667 523922177 919105462 448722063 912530531 840626552 846083500 606370151 814908634 97580937 788509704 291585009 579874701 581078265 674786981 826248237 935315678 254675100 577408326 540934160 601474230 154931746 746769687 757200627 780789717 683464726 851829604 277851106 718161586 152120541 352709145 453332775 533919055 919929069 949227058 38615732 796895751 609862565 863172445 717728554 868047449 385751730 565922789 621507344 875361048 841727678 945390171 948344082 978057142 26799540 162555938 199994469 328595717 951678508 968996854 669194797 825667132 829767420 937737699 939496002 970588339 947737255 996698011 379690170 732513383 62049976 323263533 612980074 669912202 236993455 508181402 221489940 934348673 746445183 752911609 551148635 784518441 697116167 840767786 586400731 896005600 912940639 934385552 977687440 982108389 732591030 964966593 267508875 467340838 101335720 586552112 189854058 869071387 612223763 982806126 641263627 836773759 508641569 607792064 830497343 992783671 821008511 932288625 227466486 888112487 137283782 633356835 332074762 410437833 721948210 982389696 958227361 974312672 272568670 782745651 888289066 892551625 220651363 516669901 197607514 961713298 105407740 752327656 822257942 976740107 323018794 361890213 618020055 845094043 366578796 508524962 330187019 703384549 874164655 989210487 105070426 789979526 641144056 875503582 338060937 481190270 23464780 336819029 193789981 379323108 190861242 515942687 753434350 770910243 869966357 870684386 376836953 943330282 86458191 194379787 389158984 706526090 758676045 926911118 341053926 754716028 588723133 720106025 550401223 942302882 782067720 920708926 144390795 226792626 208704700 745547836 599088453 777789025 339752257 637912228 364073832 568816937 725099524 991314302 152713457 708862429 871604196 900890598 65197549 653160455 145292799 194860836 999457281 999809578 620471030 954642823 864138201 882856110 410872971 930362088 150141711 646983545 462786509 869096778 463424879 938122213 129393998 312520322 215712770 268468207 519451404 690577408 392330816 705675041 201289284 824637700 205903597 958454961 258726960 928613203 298500077 687810688 549888561 961911536 479837204 963609314 931405078 986107878 482197310 927950660 229974879 650194120 193210593 892604177 74691449 536904344 518183342 887760171 687166115 960497062 159551415 300523665 914973381 966748021 325106817 601627925 788262012 895357271 969816765 995934388 144592549 716763331 928447294 985307150 859605031 917426343 18461191 887603670 76326423 862672682 64563497 157250848 741353172 836903700 659475943 741847563 782210632 967858085 515079118 571813467 671469284 674880464 984514796 992170098 551497135 790809458 176786638 887494838 428630213 981550804 53855837 637407018 588079314 953939618 825530272 846915948 691263877 996987449 945057686 987429050 625765131 996399712 63474305 549683257 709857263 888575366 35414565 757758504 888049466 982310354 571847147 617509535 935243749 945042638 992853970 993325145 918690006 959537225 777475653 826197740 971303526 972570988 666310966 893684397 365115137 573993388 797985591 922073643 831208424 930583772 978721400 987288228 567200872 815237143 700369696 980839597 316374564 767893656 722878357 806455410 506511151 569573507 252523664 591534343 264224254 966773124 920128418 980467076 523422963 959556990 592202027 827960419 484256992 709340348 58365409 310470404 445348543 787194519 438781378 515271457 708343437 814900342 187587913 515271907 323053532 953215235 634381103 887968356 973989536 983052077 864046338 868562982 988875250 992177831 857429325 943498280 443382036 454432068 109468712 727158732 958705790 961300088 434341868 696595097 259497304 273894612 412805128 649409498 159360592 335619008 675146622 911614766 404551089 848596479 173783960 941425020 128700764 847133857 47651826 696998811 14255765 651618173 173430552 576664964 643494307 690648962 211285266 372901686 134415719 200975391 968559547 974288882 592090493 816800626 955009567 987009648 999015227 999588537 250388983 534766522 351607779 793757169 125434611 864954871 10571395 597977932 131251788 470214299 560777642 959249310 196275426 335880110 925141739 944905875 898453148 905642563 463429418 659754716 901008810 913431575 11801484 85342095 689202405 974873814 372122555 673322751 326054719 340259605 824440055 845672568 576914954 926265194 40644117 65367271 427286393 588284855 241419872 844863634 240349715 320900438 872475257 907013445 118980077 261974762 335472653 740342520 190838015 918240116 629322270 928895237 466731204 812890151 454969927 513644015 922081891 978331990 7828891 805297366 361645958 811708387 742733399 785393975 35259864 537212910 348565584 474822013 153654256 489425837 746506045 799117931 639428698 744614521 338479006 898901782 899781149 964529375 613707264 646075899 482650998 693072973 508888404 557713139 371966986 592393104 660805205 750844467 987484992 997881942 211829779 362170985 828011491 995132673 970837899 972399496 41964730 838385831 817372933 891563974 719261465 768603560 59427169 654997353 640018780 982071875 445603372 872411303 13152711 260243607 866220223 952040527 409457108 695440169 836304125 959267630 32524155 486992730 589334985 779620671 911228444 977609589 673870766 818996868 342005099 906462609 598689101 645628565 811203372 893622150 377153478 414590934 804742400 909693011 416236161 447026386 305308939 402337557 98244104 493009245 146549564 882436137 970830937 979314753 651716798 891860534 557390686 673971021 385328128 604087994 792435442 876521888 865317946 996754865 777208199 804651898 196877661 866583961 311831377 761406792 211892026 805900829 849277175 923901150 390941192 731137809 819548097 946493243 312555285 777917658 79255499 190711072 438193458 493934835 353026945 515474235 141695349 144654215 339834548 447695876 508685164 798274859 153271505 237954654 963558813 990065613 638098155 975604181 638672622 890846411 626575379 907188467 625222187 970503224 618565440 769291031 714137499 938154053 807088220 837409630 453263267 762940858 451823043 935364301 717764103 789823420 242849445 272942068 42319055 532761083 949029603 997252536 719978586 945850404 654129942 896074101 405304320 710061687 956323246 988333578 853798036 908111670 492487946 864643848 464555392 953758296 648928342 872407641 552224189 862505286 268898539 270269117 230409318 990760895 498505484 588509347 317449088 676453860 786589761 810628769 243425801 436443062 184229316 508977604 220588596 643948452 855149136 896473954 807546343 920726353 647609487 800543257 210087498 954120374 446095358 515170187 120893667 576360027 217239309 765507765 774452804 917671551 384534235 896716878 751692715 837301777 694318844 725039281 688782651 739964619 553244069 796146212 482691489 811988020 896734545 998489005 19857869 844818199 881017745 973364948 167248052 195438420 540633607 923853328 104618573 967259041 218228396 640313587 804006160 978734615 389983594 990504041 914669839 994965233 86644471 775745466 857667869 951110692 436285012 944227454 873065281 937805906 742631826 825773728 802240092 885706417 825846371 943967081 273542791 464087588 825975173 855329276 988527321 996722973 415596570 521638121 374472426 589846283 244635732 990200233 165501765 825717577 717198922 937193618 420161676 506861553 263668096 901018105 133015370 831373645 561714625 966443842 212265754 597729197 383686673 498041968 17010184 158778115 439643409 701307271 105447938 409824132 26947401 856178511 492539928 589633370 810213126 816358221 150839284 354766022 466273876 841786631 200954701 349336804 646800683 902842532 150940661 880632047 158861058 218360939 156985934 208875242 981940971 983302426 878513262 912041923 481344575 581235955 738618418 821338671 119217494 666323255 308433658 543584493 682475162 730544963 660089706 823938708 840832594 921302081 258485813 600935536 150452740 326524448 574539554 955622184 248031954 985706070 421623022 719395423 356132029 643136194 454865324 473522776 782062120 956119568 763064845 966402172 970274704 984500658 87154411 301222168 224788858 928367617 100774002 903680750 276054912 477042755 757309913 927556052 534707498 710407027 619094774 953618938 928986838 978253501 988624381 992106358 893286050 928547470 823361210 905561344 609461171 809190378 805428645 925208426 161268428 281846894 526306679 674011106 362977593 630544191 249706124 281378678 316323736 382284469 772336949 908586601 146444256 877460256 455604067 529581207 351914526 731168279 207352033 944996610 708101769 898518581 733634941 984377362 95079236 534669855 467551826 592637908 103479753 471615338 180676529 670351612 467414116 824458559 482931697 806564847 12358244 484977643 325375829 885398712 997684357 999398665 341191330 665818088 13834636 44256546 602719128 817745083 179710676 925515641 454603212 636715731 75848738 114952966 575943113 789926993 478287642 783456105 599047083 882129810 140888382 289887207 233756264 809921607 185186854 934965382 714210506 881558486 694120033 911591661 753958159 927831078 787222367 937182326 335814014 613607402 855593512 897153080 731355003 794636082 865932154 948219133 592360199 945564193 957440320 988175279 878431761 947659822 84237199 110363435 310161879 457421821 947689568 979943985 955794237 963861640 804040607 919516254 831128034 850086392 931995535 955546320 930283726 941377225 289293354 529707500 660427416 878614306 698081099 897449824 146960493 885806879 715259715 902331364 616270254 814448845 556578916 868137398 465219121 663696361 436648579 863871637 696998488 939909578 734059440 807850266 172090663 552776816 951896559 979531275 129837022 609501619 795430936 981442063 520755980 615182205 215444892 266648968 413156046 927992270 684198284 715763292 191266201 860247196 245345238 913789432 495535672 564988246 510472291 947981061 73804012 965917814 270656169 394011831 689388080 725972737 866116691 895355923 927834904 930752896 162774788 406530638 643459161 951460015 529846275 697025364 21648910 694049738 945313497 991062037 350270008 798802333 775418251 852674511 295328772 780679834 210945674 679097826 609289033 832347605 973137044 997342063 743915303 812818205 444466087 512330878 408605440 611061623 142117269 669912970 960975441 973978870 951404761 981997133 803340286 978144780 749334117 799614490 627763783 955141177 269534529 923510718 291903770 578741495 695281559 940677347 118604824 758445296 323412994 722622899 590067666 667145962 769448663 873039232 475072389 713409636 682423709 980231502 337970595 396249262 405462404 615097003 271008371 757963931 141562221 740940116 378508451 728850824 886773414 945483234 247618718 569099074 143837255 596664076 510868752 875458832 456052561 983804734 563895968 637782334 755145668 983771382 186697279 302778006 382982762 943418739 843540480 939550271 644796498 735380095 974835324 997749373 854193823 983793418 551072063 739287982 738169287 846517168 341240600 532305722 492947357 507813767 907625969 934646035 693913799 926906304 28570466 943538540 582781059 907263211 423708192 958219347 6955084 335104424 191349391 836828016 689674224 935914382 669637382 710662886 572458921 991346625 458572115 955460639 838788146 945086474 407613196 606785477 227468202 254629653 137238392 236718285 134378897 208441747 578982556 605989834 461070984 529878856 237377278 240056396 623398514 985872258 752289073 995768025 553559863 850920946 996223256 999796478 91028792 761678559 726462752 906220155 29319481 606554035 507859705 913819210 456130110 952333858 151127922 461570062 420800668 664833054 778567283 956834518 276923843 389787375 815067148 841327318 543904016 757727307 33836080 58666171 269072679 437399832 539216523 660457687 146310451 991695760 33926408 934293592 272748585 593276241 879275312 933983835 997357311 999996930 760675443 960757392 889347667 946445877 898114691 900086414 234847295 726776904 158736819 414111464 590336804 916361886 665063486 770106559 305904747 810151877 405195646 684040135 267645942 725186116 281239423 510873270 999199707 999892659 791244026 935051081 993262372 996068979 708319150 757382758 756873950 953234549 210042496 228313067 532181308 576479187 794753447 924974064 15534967 603565627 794455450 906757978 525445680 614135405 136133959 463324387 605592633 967238165 12524485 783931244 120727465 317045576 367592369 491197985 761238465 861741065 967720786 991738534 939447231 980370749 29589473 40832115 19940256 229864170 709538482 834395429 255918933 267343696 815970676 902758521 563465047 781170343 358631917 550121308 694391013 851816560 45786633 751500208 558745723 992025667 392051603 493364798 116494283 151757095 519332596 928262959 69218011 772781549 337974386 834010164 992787443 993645211 345160274 612248365 820443534 885102351 919548749 957973853 252474829 513024781 209759932 858120648 568754897 646732127 198847531 667634670 796233274 994506745 25177900 653802818 129145911 371603164 430099896 914094001 723146922 728431652 811664547 990126753 836921109 971436602 490725228 722408222 512607617 980627930 390015365 903805187 224988302 343761671 621948600 759038700 208511875 619240334 583889980 601859098 900553101 984480517 100396112 347755964 393451653 466465493 879655312 982888728 477806413 540737195 544598892 568489962 372051657 578802763 999945878 999985369 767943191 829707487 664217202 704093958 856276253 954940816 750570532 975862026 934341184 962625593 523035771 600019146 303538123 326286335 700255758 778149842 568211603 787418666 223217899 679970013 203365338 899877097 970887948 971361459 623814331 878187249 312458950 395554663 191492719 534832242 788555481 839290500 252073068 954334913 959870268 963598538 414595891 909415151 165462552 566798242 613398314 860279198 267487149 281547854 742079926 800336247 870352684 943262521 287275687 931097519 81469959 228707565 191928613 822110086 942498663 985773246 975534882 979616885 34701432 790508233 539201688 809340011 399686164 996839708 561172642 859835987 139713399 345383611 645355136 749568166 967671010 992398008 923222477 931042986 400959415 768653133 779950283 949771036 111352369 736044018 691097690 852026248 22348146 38795498 472743335 953443466 441635013 910405966 576221165 622961769 909462837 912859434 698191715 868618710 432555088 972121255 472882889 712970890 850038972 919656788 713499858 940280066 267430911 587659379 796828261 831940302 598326974 830961690 917526688 940697826 900534925 924897173 244341099 866974209 364929324 963044687 302588783 784944045 105817348 969363770 825827963 883945868 674529266 778954162 391599432 405593169 325858480 522038533 674698893 937168782 854128232 900725103 322063012 782498861 814163087 998926016 25453920 147930929 538026951 546728404 302933607 544003231 156073536 444804478 522290071 797095466 73028315 862732263 373742687 640246874 435943161 707626531 202030509 496130726 477276227 713505732 37858033 926893964 185787743 357449459 271647253 966007563 366257851 564081030 824979426 835484416 128227025 979155888 617274849 964439064 303463509 577461274 196820845 983103693 323461713 393301603 330775894 473285672 379798036 988815392 148888623 512369030 519039663 656048644 986769923 986863003 607541483 671978023 463873553 912366329 684303564 936450303 71748475 398867207 767777748 880577054 935650815 974514035 497263142 725317362 954966954 982649750 492898038 662519153 297128625 587667117 306042389 627867267 267981121 667127100 699932643 777597469 99370768 677481974 530626013 796251125 995143655 999623143 88157724 350031566 264571337 336143947 757318249 942475758 570135427 794755008 683405121 946282996 321235053 905585715 591444648 822955828 20873122 961512392 607326411 611649225 402052336 766705739 956219732 997804350 580465402 905759022 535839213 989306900 317182875 659895494 23142199 910164906 165871363 338229048 65654235 977808930 844516798 943457523 891256923 932231264 364404575 949922032 734547596 870890766 881316224 947408608 194805542 383674300 571816554 882328293 883182254 890628132 255165677 908703203 954725395 991048757 717197706 899326838 412611478 504925853 654551021 849112686 588326596 961206986 579419289 917560357 267348206 780939843 846458061 911053402 364357204 966653372 491578664 673763187 745976262 905247479 834011607 922048987 347463329 961274355 613094487 620614882 442099453 640887955 829734955 903838216 42711870 573410526 396853053 659661713 245486895 431455323 822043608 881489087 882225366 953278975 186349009 825285693 522270887 997657355 535546475 830134586 455487476 822393085 999009724 999782991 532309182 932043404 674003785 775293171 791650265 987958028 987243891 996976494 777131778 998191991 380072730 514223553 440146000 569412485 977277233 985099265 129386757 580578693 242308530 881040408 924302396 991927092 691109647 818106394 943582269 989476197 590532462 692839605 341732890 757928445 794588787 806946784 923388471 927284100 869990619 986940172 163826104 910050925 620912149 647614381 391752439 934877396 22179697 990482119 560123830 963077086 283525437 455508178 405274102 765833770 92075380 766471400 434568716 839189388 198919844 725758981 77525614 976321192 415611214 678596747 301835747 621404611 953444936 993243409 504330818 972107410 968821217 991086379 110904410 552184332 391589102 545636918 374362802 484167112 331349914 692897730 489169240 686136035 584095356 999694480 409099675 863884480 230233162 430880189 881110190 963283872 314612397 332825531 284237848 889181743 82732840 928036029 943305983 956298736 289908571 779240395 787422461 998723220 195600727 537440812 295764305 785028345 274109488 844242369 213756349 926568137 658480678 976524536 561247450 747499137 549085603 595042859 237658986 617948513 586129473 680089927 283021135 658302227 305483677 497268269 899664939 990648400 95543600 138950140 862326746 948000767 856680769 887018268 164363226 454397936 958679077 966758431 800722000 906640682 825459046 859791526 118873814 911572323 614608154 919557334 385841148 424936915 803743205 906665632 513488798 762284087 920106687 973685277 985457599 997835824 696952074 774696183 125226144 418476190 601771873 730439006 200808581 819756284 124700801 520214686 625630356 937039764 442211370 678350866 257418357 629569601 65103590 926443512 267078709 752699254 875542108 934678995 227234447 687580993 135816177 686539082 982390231 997253456 79338661 825432892 866324800 909243093 878750214 955696732 833901471 990035049 180818959 405172292 465134427 817207020 903934106 909094511 169353424 920019840 310964294 451041699 544013878 973501458 866820491 975755656 649330608 847929305 6857395 997905040 926334367 929439212 212365580 665660968 539113660 715012967 895505331 946034108 181241284 267060857 86524491 526236803 49663033 629554546 445300636 636444085 870776094 941592080 197411632 999915478 881893506 896204394 494185794 736768582 15791122 886226306 637874454 643950672 5103200 538735766 963091410 995377131 682851331 818662681 861514084 879520590 984050767 993940094 737804389 768868370 221958702 840834192 601978921 709976646 802073871 909526299 259431275 542498664 151763834 530710199 9369495 465812556 449274994 917679111 411538464 982949907 101116048 835855162 917521963 996205063 797716244 993746244 944429113 944451136 826921860 836012223 670640738 699764565 176457571 829287100 451386260 702683323 469972932 933233846 231028807 332171559 886737154 887235942 625393556 870979738 349732609 498643344 463150185 562700841 745181901 838394061 41523478 207605152 107641018 511099999 772140817 862045284 488296048 559290663 891918157 953265166 660002947 789138828 352070336 359015340 900686421 950234365 40460211 869220437 57883755 620962364 266068616 737580549 981103604 988481862 749428046 796698935 14592656 556423444 822530524 942469607 602749747 753951031 493582292 707131499 12819218 786826404 249102767 668346889 509662107 677787820 767123589 968823689 385646588 875853389 748999395 757607776 541133727 721173512 235296353 450126288 669698318 954045569 876204310 901534726 931073949 981323501 268253938 366185912 19004138 130964025 62602956 321690312 638307759 886061160 604412187 738505259 652423336 894070546 8575851 90223743 508384663 555744628 99244383 588919080 781708834 901038480 168157485 278924652 878720228 963439924 820573371 965005095 344833614 519437766 314275291 892635533 969706203 988640350 633572838 847293185 351011229 961990708 758804253 915486709 420633790 475824018 386746315 959191331 242937784 468858668 721056121 725938383 74550526 395243062 37437938 144624425 120555431 499403477 339125616 999750939 975063968 976745070 942608490 962527338 906659877 977763953 345824377 480183251 938369804 979233856 652736777 890145517 164154956 341684286 167177784 594282955 716114759 928092775 68526572 651032675 155218993 414196252 309487880 901035617 969620823 987744128 666327173 782900582 706800355 723662276 70487597 160336087 669810737 919467051 57015822 656355433 470908836 650882550 133834776 198675830 95991613 888520695 927545206 938370559 2583732 405289937 738552072 745155972 548001372 999020624 203669366 814359635 370448666 880533105 740974396 780716700 139904421 387976312 304495056 883165860 713276194 932559652 129444620 356512129 908121754 937320663 599370446 707184502 421344450 853830432 795978524 879595950 503394261 506164524 270029111 537414131 820742599 959507955 199168281 745022303 109683268 145329862 889932105 929274283 810309004 816632240 329493327 730427718 290124926 309425215 533289436 891028906 85319817 192131420 191287890 416324648 764007384 904064250 88186443 995022944 704129377 911865724 592866236 714792892 236550117 903477440 189864308 261210748 235806391 425638165 701131479 708835141 594643353 741640128 107342294 804949543 948519118 961942714 119770741 348049537 812637984 870370789 853008633 966638834 939767712 964030232 433386491 653541476 900971790 928135704 873138389 922706912 957133695 978542540 34728003 884449571 673064157 919712939 529392491 626533250 622104391 816381646 108046623 844083352 477406691 750236790 405810874 511453639 72065791 808268180 993406679 995257658 389205086 538426328 131308519 390851837 793097792 893882286 349540556 898153393 158014053 844674996 254291636 876343468 949190533 985468724 717043873 973610450 620748536 647834210 912770135 951606595 531133734 772933595 117435279 926141303 543927575 997979351 303241956 986957728 14028582 591364184 407459854 924638891 723947438 917871057 522800695 826456018 306626327 808082887 167411523 378577889 745559762 942772622 493532900 990401563 849413352 895479390 252733483 964499455 358470134 522917407 995137125 997883998 100305378 890221949 520582453 907416053 787428171 963369593 466296576 570642541 286458374 336708557 238406413 804416141 904002738 915174706 568662723 956469876 388975331 527790179 236353098 912272505 285818587 894860014 397191114 816477514 99407744 701120596 573897012 757823370 746122119 939661947 42497476 528795839 114404783 960485327 248247894 690066715 951002363 987895725 198367939 905307738 170023136 389277485 921201026 936238216 68681983 334070682 259648234 401780336 440638870 459265477 887728425 939689224 386643523 395336027 909077744 933245729 204236996 753494939 159717717 952869503 765292987 949681276 847363151 968208569 458192752 531407484 350306685 698777947 988221790 989378470 421890858 876940704 337284366 785392996 576623567 883398101 643988711 673092105 734165769 777440668 471791052 971062592 829641418 884503525 178312778 808621577 239605605 645796546 177200769 570801128 593818639 625879874 888611367 900767475 393535999 860835177 263893489 365558472 263152284 951729997 59679178 233755616 738592691 896010732 175226515 242645014 454364044 702622026 341337113 406019237 53133641 206488880 646567593 876350628 748633277 779277713 201136914 971091111 17082667 683133817 375212914 472219016 148123649 149253196 834138422 978737699 852013111 973419249 726139597 729693104 893491772 952066205 333260660 474564082 16727246 347898364 524812824 924866855 656021784 958448234 283129268 690415790 664945348 667980188 949483488 996646970 652617201 673748897 729631902 888270454 243109859 931159409 883115124 983487823 966692698 979902460 92874761 162252778 373446665 405600617 57462829 612046150 846854222 941278047 595006835 786282215 151879695 304550566 551635516 650328090 630643763 685612383 868800183 933347614 308722778 425699617 426258599 546483416 257053970 730921969 952803648 964316025 776543480 805850535 932971734 984527902 803193781 892395035 143625294 226370433 892584718 960967711 283789360 689108630 675561778 900894938 486937545 719630045 17249435 360428881 565098516 682598908 343895539 982554975 951899464 960040882 868514677 912392721 90703109 574808746 272958961 988103343 78887200 502767310 827400529 950403020 351153870 696789124 273323885 974747530 104209914 992266845 689437856 837373718 518475648 949121430 322097253 889029967 407057310 809163598 187654332 679008405 644690702 774146060 127162145 924780659 941477826 945966940 326175667 347488385 317874567 625769379 963812831 984386811 483996402 710224347 153489738 242190220 964226156 989420368 590102173 927867114 417416407 600691955 319389400 979352729 402338039 561308362 893041171 903285912 275958168 730873895 856535285 863027092 141884083 760676273 716452535 716755364 501601711 563441023 748373608 883382189 922211181 922782466 966084338 978602018 953263291 983407981 519350647 659792274 502845039 823309799 973170479 996248225 636675038 773274100 307854068 340960935 791770819 959123942 525653659 588794622 885385503 954601924 121686133 449408201 72190971 923300741 451529816 722420626 337848177 559555588 605853501 704032419 686224960 796018986 798422897 814317558 773296610 986773463 886272256 887664019 176337357 764844868 564529664 632600524 139865066 548452929 941826499 996317015 610566904 848830653 628476850 634145640 830659510 964245278 730054868 839564796 366694515 645545320 634954239 678851645 903240403 996964759 162152950 655914492 308684009 435837847 522585990 735846036 12797114 781469386 53566924 905611830 342643872 375242999 365881737 633945438 79736252 904106040 701799611 938069882 40375163 757691398 42355976 422823853 266796232 653129751 243242751 861775667 646869301 853469055 857254521 891524844 156480232 713835247 954901584 988274436 960754017 989386785 711002935 941842211 153303243 585111957 522049128 570441169 40753031 963698749 635748068 848736969 766437655 921398009 265080556 615367398 53240745 268945292 416916253 918975922 491751703 542467998 344500629 890386901 878536570 911655681 204068242 611368935 890179036 894311282 672879593 828465819 267248208 641956053 704172505 772808462 423302967 592580860 467951430 515271865 366505851 575980654 37753830 526965771 349413590 596358475 700333008 962273716 789036704 989818403 796580199 851999075 990525896 991926191 156166320 335331991 725042156 961469024 125659694 198798931 514841138 966291276 976961104 992831554 339917130 765156777 248467603 938292816 727169015 950533307 427649825 691589250 622557752 688083984 775823907 974826715 886197197 887235836 47135972 90825262 183428128 242267746 34694115 524698067 565784842 626119123 670095753 808213141 211038214 381348698 636777568 797187143 373133869 852507570 471848783 684152608 979074663 980971378 402085365 681374462 785686001 855334117 131587043 463200304 621419037 623184664 646230858 765354089 976857776 981252474 974284786 990254187 818577355 909736793 634222842 651108480 544652303 747440195 722477695 787608832 281117690 539713611 567780366 966292133 380136927 864367703 16920367 621150026 634360782 889353555 512218011 859387202 562736037 572667773 665892157 887486102 622194634 735096841 915709884 971490315 1384803 766548176 262985985 992188157 850595564 864169147 984832398 998014431 936875273 956492993 930364326 956623126 654536092 930221952 712876337 727916121 205538579 651633192 956368179 968711787 17953790 790425127 811908695 960125112 744583965 942271345 813429033 993859523 646956974 836577657 994851360 996449585 673274591 875313617 171214271 743141183 602145547 752857241 10326379 756943903 488467992 894055827 625980788 837239488 361565461 863608688 634123105 803257678 57757524 995519218 497212709 721530802 718678614 974317191 754542167 991996881 625520513 886341392 133836443 353083347 435053396 946412894 86259596 298413822 45422683 879008554 801894291 868845681 936914187 953739760 755357912 837302772 601116117 612829856 500983571 504882251 436208873 873159703 500699833 809264932 920258670 953000646 829676860 862111674 372443324 924113989 332513183 620814164 240724927 264081101 11679465 34596544 740306776 998679461 524849626 545462522 123840818 794912643 974732092 987794605 64659296 513520356 700012044 805586905 727845376 905897300 997469865 999828739 506176045 837139347 481969122 865209583 485177951 796390733 919216370 961467514 326810450 663381408 280424413 556793917 76458690 575644745 96209486 613123353 480691872 481254150 565081420 943164636 751956089 911496520 506617926 810953341 10193931 185132567 195498486 863855693 734398466 810071119 951619148 981870506 185094015 909014489 69232007 720560714 854526490 979529629 581981757 907315555 168940954 538815232 126764795 132067813 408378343 794915916 335011339 658317847 573629171 767119130 220559489 344583255 554257156 732394670 721387285 869849157 533693975 552595286 671674279 760158911 582423045 582536271 52501664 186320327 505833797 768423759 206833085 402533174 27847556 81125387 6981202 262680141 410948305 995752386 520974450 951193428 761785028 866088448 809090001 940987642 138804259 284463164 925443619 933042317 268426640 982662796 711257764 962115032 211567382 516350082 990638937 993870921 50993150 295108309 161264366 777116627 207604783 550119370 631031729 758180524 686186296 742365094 640313573 810228940 104759760 802680977 464210261 707766906 668640127 751557097 162266106 551093859 293696140 698642755 767650743 856888662 877227716 967084750 879561442 885274160 245204194 405115201 611889991 862618870 75350317 127302941 553479150 602551371 480517718 862034166 187204472 287794251 960112384 988990559 87238171 434844752 351613473 722447335 15692702 604431007 166427461 513500434 58629286 399659781 204405375 556868915 398609533 642660851 916265696 921632600 523745112 766390566 8513925 661042421 172955675 958071360 460981171 949713591 963337909 999806409 197810954 646830618 59345134 546462127 89253151 359356344 566206828 906430262 648627133 940102496 625751534 668518544 696805600 814997925 221175646 835566444 650356409 988490557 854116909 862615390 169333864 896895176 409142879 668570502 285264737 485934245 536706354 939904351 998657786 999250874 150605769 688116748 694839255 769749957 680120234 712792595 640307371 952195292 19153225 988308312 934288948 965451807 563199324 982474484 336768455 851716311 118238138 227367712 118866491 839457599 540651191 804361204 483899632 847464547 886872628 897195391 70267308 549446847 778497553 939765499 822095797 992624880 375966125 604546303 889856273 920507414 779355339 803310417 642665757 673559534 221392708 761672032 806896139 950370674 656498605 657415458 130584329 551656198 698701889 887068471 185352488 879314688 634957039 949995408 870173475 996303633 759004165 906786248 263894588 451807860 924397661 950859570 154683421 243301192 515328881 708395557 484651433 747290115 197479833 451361937 589895138 893899620 873068493 942771087 442041257 879342133 310583607 718941788 488031537 758264007 75501633 447050719 180565883 628208834 303429752 652728182 298616869 825175297 118763464 539169812 471698952 867017590 126540400 414214012 594479838 725158848 348469833 740405344 512289158 737157608 149405495 250665082 110619829 746238149 7519839 572697767 885079372 970294683 251971151 465830669 837990854 921494757 540822633 583329543 62247743 758200756 302045545 756886273 17918693 331810881 362780521 587712338 471271473 694574799 217144473 712859965 465243550 987813352 475088127 709526682 310128065 676577427 666001359 915082999 932172561 975666640 827383491 854900973 610970448 898960369 362147775 676953183 706907373 908453636 424207290 730298148 398947572 697028948 223186395 892141588 714324598 730996121 856015407 872058872 99219604 159515695 315286721 994365150 718451012 764590726 77614257 618633155 939854025 963077172 997029661 997818097 652741859 834031101 632770786 732079109 731220066 997304782 704488221 997309542 300669059 572346413 68970761 589027481 499634428 702592693 98862230 383839540 935101688 999712277 780032436 954631070 435152585 950869218 952011750 963157636 826360743 891755459 523083215 765113736 652032388 999475649 926933273 992480147 209070235 712114288 574667578 668160561 601461108 777195160 337471176 705876428 475789215 733836611 287841413 671392072 869977741 960029314 175925078 950321971 688888922 777708738 706156205 746664142 292005013 878994311 480353141 910328837 668421915 849020459 379220013 795661144 744496590 995929084 749742420 813464225 583687818 655352417 288701399 466258669 526875739 616477704 644370760 762646102 296887823 688838409 528239308 587552794 436198134 437516828 24054804 30478069 724450446 886923201 893760371 956091690 667317271 723303707 39556442 377041202 865735610 932464914 277604166 973322979 764616045 779673784 478073435 491783227 868788961 959171400 988107578 990356418 897328848 927258440 137554689 623039010 290382137 470761171 438818632 722229412 621738195 721424185 63361633 743584601 529527479 776870565 462342945 553252526 299853595 909081486 660504044 823185185 606280687 970642642 883622040 934349423 108414162 179602201 116628107 328593670 974706670 988027183 695349420 737369612 420400863 680263403 235802990 781781308 569134920 606739785 580990491 597217906 487543465 502518185 335904056 347951612 601036351 805590706 405121345 630848191 375330929 489429117 17451845 456469461 15772257 749633998 824483230 879821348 722423343 941889283 567185282 942750437 211942953 425989242 51354359 755591446 17766329 186234410 764329985 766511711 14873920 609930080 954576147 997237288 240886195 465713915 208753815 317971382 980329021 983959656 843690390 962931608 425117911 649533044 635245137 953536922 954493215 989354446 249206547 903754141 306566988 933544637 779124919 783288869 180367059 379482250 743805909 991533189 679852368 735228390 61317435 422132169 18585426 471096424 112867325 939158036 502887329 546426181 12266002 984955940 263654377 278416738 913722198 985635331 826681347 856248682 453787932 720930527 278158939 880663552 852662942 997503316 792298592 850622950 699200932 953418840 184314020 773395001 176281176 508265324 269791664 433582890 785858578 799026641 770774335 923225898 828328639 946662403 468233604 827916530 707551993 814076314 157596861 537059131 599295936 867724208 940648975 987569694 751061211 820951274 769956987 990286661 166452673 217652778 24976015 508997978 607518834 941787151 269844542 601055855 311367104 672250710 965212994 986361541 836130086 846752605 963898858 995462912 582036535 964336949 691364660 782927665 725425743 801362198 667026867 950038121 695756187 742893397 316309603 925857107 568937364 723936686 570680589 719763304 268507333 593760213 713990583 754972920 481709734 827752597 775031351 957311449 474712517 996214581 3187780 43933581 269143693 345808911 400167351 477933070 280233162 525927516 848032630 886192797 177174671 221359858 196179912 322173655 532233940 544436917 616956834 711433065 679124517 915275662 206806861 768066169 967934056 987246440 486879015 858327463 11177477 820125234 238778737 794661314 796120049 953870155 348202337 956584628 397715403 402438532 990600075 991968846 797487837 950330894 259765234 808815817 865006158 894930549 339675241 594730443 375267984 614354820 503458678 797279998 348898515 590477657 208301334 657160323 697424741 746568986 43502741 896662731 762414286 936746519 186649832 222336063 812877862 943370284 586046894 614073918 468885551 790798091 934532809 950607511 822083110 891083148 304863714 994484465 839007910 950059906 128637911 848999735 368105857 654338166 702138090 794737431 29529058 889805162 206605217 293425382 90548281 383052846 98819523 907670460 608629433 764903972 233731835 654646246 880699508 963519904 641318824 813583367 785324762 829697040 798736422 850011101 644191321 683312221 936565473 988203408 500665558 873786731 752654825 753574174 763755052 904946939 922929628 935243839 126871872 807363461 54507132 183404972 406413656 628900374 911031202 966051668 683735861 986544872 675982002 804106889 408490007 627920289 557802881 870202467 200344479 316729311 788708817 825929382 774145854 776960930 572632609 699522242 734382221 908077462 416944362 785974671 438107850 719951730 171513151 244122782 665710829 999246230 88011506 307083220 700656302 901808469 361701604 525083417 143603453 522260272 523699780 748934064 851536174 946166592 505583078 641535267 681005537 859557143 897458962 937321816 752728437 772241276 607167779 818286467 947041478 957788383 741743458 985213768 439243926 591369038 590443880 766963002 540974066 726988064 649245933 770991991 505776468 978861282 809245066 964936690 85230488 881852950 875985026 912551136 534010856 973892991 713700744 864496691 226067590 840492944 548945814 574853630 647967060 861059749 419321265 680887850 912185323 968785359 758415271 937920513 834976280 892269760 767491869 801627396 873948260 935625640 690358811 721756070 529977429 542492526 991769911 996467911 15120232 424388621 55417359 556798713 149029221 307591609 373999525 880988290 80461690 297508712 358181806 837474431 340275661 879006819 597841293 636481450 484719825 801660336 446260028 833078984 650472348 806048655 948127814 971002694 160935465 938941124 678666762 751670719 746202621 830470686 448246356 865671253 550840598 876859643 484238384 761413121 142147538 792009727 843343786 870227149 581753994 679776095 940088702 975430111 612402133 952940510 491465670 538369150 562933723 621510765 62226414 379755076 210251520 251602363 924807975 994524345 197248952 389776967 667226557 683830229 738003231 965680429 173944399 658522768 487112604 497524521 194324061 453877316 342522726 661680541 111639014 875544073 617317617 772254708 119265312 598153562 252924122 769685474 627474048 754399429 902567907 959341545 755559463 820865811 390074470 779604348 913055380 987886074 508374327 907893250 555171999 740535490 579476681 599985350 166361997 668867757 586871104 804378965 386366099 915537628 150429340 898869955 379714138 900745704 735605647 773744544 457922007 668617012 24149880 523336760 717799178 719474216 35505995 216300977 968354330 997611847 895919491 925762825 583371590 999918902 556622604 949485933 356431215 973666451 483024650 808681580 202916185 520689531 776518318 979113327 381466936 816773726 218253179 300556120 886855339 975636203 961929587 997388422 449065472 676593965 590811190 615722024 215131438 915808158 738652807 831486943 161188606 643947367 886127742 992453413 620713797 662751068 77812439 726262031 102243336 999110492 851212487 953932659 337304675 404222360 978442055 999933915 693982207 770520166 618162516 671872734 762782281 781068880 940149062 979578431 825229072 993116714 956052214 961925286 534253317 998074526 893441080 925893297 781858997 945763130 889007531 917201845 210032842 963387945 770887971 905259626 43332879 610719155 178921381 440982775 823131034 905059323 283774481 948930592 115821646 168623520 434493488 778666533 618487787 618752220 263189783 956203173 624570710 768996023 275673080 676584740 560378237 845299879 422884776 946603272 559076424 863475982 681591460 888698035 95105996 214445543 885181007 997882043 405983800 578302595 71415542 234520933 452146754 620864206 530186087 723124327 356352846 457721009 691239121 867989094 94258254 273940656 497905645 750570849 991614474 995909087 439245879 649168312 404560265 598011344 538013191 978887617 381493406 740061034 240002867 253816639 554270912 905290135 229076881 473154883 146978810 651639862 997956434 998563878 600958220 840360257 452696382 500638741 85018218 94208242 720656112 822137689 406026704 900418983 696559310 886972650 729266078 756447141 756646605 968216068 309363110 739765488 35580119 316655473 387016405 550823379 158277207 595064748 167597019 673041480 934367715 975431899 486263897 489629293 784210801 858145466 382638773 971132365 464932745 985568591 4798867 541660770 64800573 921588233 874886553 896754586 574793532 800566347 332477980 981520832 546552971 702936036 335960266 517048538 800047594 860753762 530287652 850070057 564923955 704486574 993440221 999883962 335756576 928700848 756114226 835538640 343795652 999273714 905550280 943976265 933552760 982596232 262071694 755224919 290800662 543291248 554200384 864430594 966627374 988063317 222964849 481184464 707857055 993634366 29185207 790594734 212520816 304933217 366136269 878695051 175713072 391144296 178676569 636392852 421737238 843381232 226028008 666802431 716910388 825518322 906067907 975717306 432818815 805436577 993678864 994672902 760752121 961783367 248173796 857822759 539549472 948461555 164318292 838273846 691036969 987968871 369913740 743246868 397335313 939787778 20425360 573232323 534808313 565771199 380098833 588759175 316340872 905641221 502263841 859414451 839173339 908467795 5064692 243941345 819310593 978861660 923590118 990127651 28830670 61670570 245896768 812630185 655029501 787005188 125174556 323170655 471750783 618365612 137909846 755722720 239919139 312809939 502227117 933959611 151341826 175281595 181552732 332290591 721000400 946474438 204299785 532827205 417672878 618792616 895253000 899537301 67808913 298957139 632712578 853790141 517120626 618086023 293854744 530725514 296425593 461090702 714575049 772232261 581948856 855699563 591725107 632282518 177941605 480333096 337163678 784038941 688050135 749583956 908175114 952605893 396098668 841254827 457153943 829441579 686173747 899178404 38583235 676068797 516599672 864192930 125152230 945076562 542262750 668713694 879729239 923945182 712309365 752040155 935532324 945808773 776152311 845140023 742938161 769214889 415919356 439528682 369930970 420173123 584536575 729015059 551321663 667281455 544615317 640129961 688831135 760206504 497811072 897824592 890970835 960878265 873588956 900571165 755119934 984535492 648983733 871009244 970684554 976695955 736032539 950066769 445797402 726940939 802533100 815341735 362556933 580657137 953862153 974712947 422149486 892337879 845808225 912656957 627372706 821292973 787302861 946064757 470452968 974397517 251039640 942604733 346629777 607461753 902091554 912155614 733004880 882543777 814368400 839700746 575396891 576751216 838130603 952028045 971440635 983185574 837243594 915189039 515170482 831904609 130575280 343585052 49028808 510780470 990154953 998527298 610505874 765301847 378378082 404285184 833183520 916693937 506716646 804115111 579166174 911017219 529019131 904422996 702399675 995137623 222800183 619014429 14294183 30732241 551508074 947107067 337683658 596150445 945005487 994648588 544900946 759020926 757511804 951263631 520011237 578264879 186809552 740562840 338935595 987256355 974161194 998592968 621417784 864161054 295288935 409651385 297408083 629857076 459796476 560808175 71052814 416317814 450228025 872443609 611781985 904053716 604955358 811972036 364337726 571096155 993114135 996713805 672831784 822722970 933526985 937532551 990540452 996490675 599287734 623877110 201377041 667832454 64907342 107320360 247358476 742931784 172738848 248380704 828750931 913426424 110184949 672973585 548652672 585970794 639588448 926468692 360877874 860781628 150360899 976119956 810670557 987643719 368765299 426263091 749093181 974586193 328824192 661854808 677401387 690851883 622664015 824736440 897124534 913645235 568536234 651524212 142025321 498245937 691776451 763049706 897019939 973475792 474471821 686957187 624594065 821383178 114994679 393640726 447688336 529523793 134347600 477476333 646007331 687947607 145776515 474148555 877642526 899850030 903649414 951559387 331833169 971154640 691191703 860690698 245998806 408379635 754111508 932663127 505997860 528843190 980448138 988235857 498975559 534160833 261428082 632635357 644103715 822091018 898016374 928260287 409247247 738779909 528554710 604054774 670998365 892452591 218155018 544593759 420678915 535365156 996089393 997340485 334360360 997969085 964540618 979814488 971918814 998125693 614889225 618837264 385501755 973806819 688962164 908917112 774552896 943833196 733914588 738983800 787413068 807744196 341006332 700200022 72498443 96047883 937110753 971402214 854617716 928553993 79295018 279908392 285408484 329655891 373090010 783972160 128883207 223168146 678600807 705234110 190176053 986714394 997934851 998329665 637176282 708563752 933445450 954264349 562843462 729628510 373730790 691787278 851455904 957844622 968013508 971173360 643061528 762571338 655165339 780322237 782770529 937602875 985524702 999150644 832143307 913500442 806446918 880380261 228039612 295470623 79357337 929684893 564470650 735371275 834565703 901976834 290606681 651061742 527748381 907707433 437724936 835139811 638869346 742680489 478709718 978326948 632085139 906210025 562413539 761590219 433527175 801863067 208149785 624825106 532354934 687165581 925722004 997394414 164176078 328506790 629398279 775325864 137096301 422735183 583852288 994597685 597220061 641162271 663266379 845155958 204854229 568324003 755227730 876671889 896676410 920160581 87460009 239665888 732588139 746564418 788378595 991374626 879370399 890315972 870495529 885783410 114161243 502690148 226402537 904045240 459314164 701221180 743307772 836554798 491312199 810142628 827993046 918064468 553229795 705807612 508746415 514469050 324818054 568083998 705760933 861619648 95758087 657201574 996454529 999226448 74533410 956656123 553963491 872904301 350523224 398252223 22772317 426130558 152886336 968767315 946270052 970679944 748509139 940870910 160627558 204563767 987195675 999000127 706643064 817128833 530176093 653222553 204800241 804752058 4609229 538786360 4107480 553989135 642506966 668003103 209101420 618877921 401339006 711083839 62595967 148005123 972290403 984250327 457095824 821199077 720363122 789479712 67183671 210930960 25607527 931521540 273083933 949984833 445419526 885102939 124193132 861149456 728540808 741591397 351424519 452406743 454049803 627623532 847090220 942132022 543204857 675605959 199484403 580145933 930761161 988832077 780195406 782269857 329612867 397817505 805350762 866388415 270231684 437263128 412531944 451964238 164609404 543299266 47859935 457049126 321168765 855002121 834259582 934689677 892552311 913349264 717737502 832451204 411781255 414538278 426763998 875247368 321011412 978677373 244636537 751237267 939639740 976168048 73494117 828488283 463541957 903820136 378914425 709832764 598957661 773724159 904274445 962569818 766540685 930189264 526166835 632681654 973032133 988271172 311366893 952567022 354873892 445120621 332473497 357901468 693809233 722998578 761463213 950560885 285032873 382221307 611551334 735052404 745400715 910622298 927627994 971925879 363339337 902260251 163619073 249898383 12465988 431486627 963305581 989890306 354153305 667531908 162210567 193823277 890075363 948962034 201390962 256936067 421937116 461755969 880857491 932139242 510121109 955151576 261564524 638201769 699736191 923950640 267503798 706195191 993206394 995208954 702878536 788208203 894707179 955953921 384730402 737048812 143983491 571117247 221182276 827090266 593346180 700269380 232053200 787733948 831783756 894400405 474606714 893334905 445103000 844671916 15647316 803033606 694288380 781387446 919794252 955638657 366177034 635995436 746643628 937562510 403766630 501083025 565236170 652367309 229976804 256244075 224935379 508827040 610159323 734177306 747170806 827303648 181399229 418829342 24110210 70493937 802641202 955959186 520780242 830694928 568196886 623388058 398668623 714916377 613029828 951261943 721267072 740113558 30754282 896539153 783995546 997742215 673212227 843773866 200961260 383925301 92181381 523596832 131217637 737777778 625785894 776698520 242238675 934722182 759064755 808056161 475028744 763650748 465713582 739856081 532591603 753130921 478513156 986557668 329208257 449570557 594229213 854952106 674759176 783885474 312718269 913130787 367680518 782623473 405873502 895304147 994762925 995579765 204227202 775516735 618550821 919695805 823000651 921896429 663561371 827968048 70295514 414180089 87727396 122491715 384036713 524074987 426785616 972875699 921735938 986912575 210205739 591407540 333225210 553607203 231791964 351558137 936082219 940362494 12529551 431435589 157437626 618172903 323424650 724139303 571300956 950686637 861870503 923647749 308944756 418349946 472029114 564659270 29201264 90073118 572648022 652378072 270895709 980527303 360020286 432733909 828570407 858043872 586674429 831406014 750497362 837418731 133519957 137880524 330788077 337783463 128658711 390202234 634515801 909068455 486322754 504987409 500556646 555270796 964385737 981099272 790884342 829902453 217526973 749074939 501535636 738817951 600656207 663567095 535704615 796881773 601029926 862779896 978625050 997225122 836795483 913932005 741135895 869108683 52383803 573258207 725331244 988894594 9814853 342101201 309724351 939549264 142208074 795210535 148879952 170145359 528434148 606292491 24322602 678967262 556424743 917117953 988556415 995937157 455097643 737571550 736811443 960966766 13865507 531839498 10385032 370463677 210433075 894037213 439500656 646700596 343278599 969661421 318391070 471162758 968557979 971211185 141995991 908614355 684715970 735978974 770454933 944484679 194077802 699884441 74589921 106270086 431299444 660495969 82717291 626210149 510588024 634524350 178621009 432106589 129827733 648888298 138544003 904272727 264457081 743836202 33518513 522822564 236555450 825301537 140465734 586042807 666416760 894206490 897782447 999224391 935984022 946199494 559817951 623807016 349240508 868792143 286412119 545448217 973571658 976568008 883613545 952423977 962684630 986619604 734539467 771504312 219995937 618628833 511362352 683462808 561424249 712231480 369007031 445691961 828028598 913189260 649969783 833167495 132178070 314533611 644734251 761143443 186732859 406316612 831978006 927828981 650802544 873474813 368310502 842530901 706154254 904245030 951934846 962297970 542696319 902572138 873366911 951710400 27736815 56218718 424032794 560179144 104139717 292622017 321060567 706011222 123882995 729337278 807729294 881529211 965073213 993325735 114608007 833498781 557788709 749415709 18205934 869851044 603182172 955298071 974347676 978495368 635492089 833143252 163390951 907812810 207108408 407353613 976341866 995405994 332588494 394675286 629578399 850558165 155886150 788129904 132393969 372725704 1724326 488776593 698720797 880605785 253418307 304329072 599628786 712071828 180645556 474072243 329637642 371794851 650177419 746322893 64512905 747700280 874371497 976958480 41857430 115571307 784729034 995989208 395584012 927947110 176367566 530063380 57811868 248499757 777097724 964497927 40034921 686577610 651124756 819659502 693855928 875048659 67406683 940056631 226409048 502585141 752748372 804238759 782069358 804569384 587964006 906548686 514737042 577580382 753280290 888012574 975215967 991545918 483614781 772052457 465677826 555796272 510656540 733459154 901684089 957008002 915831079 941725564 728431915 743103605 353741009 476083906 384799426 908155214 505346354 877897799 32178153 253767877 252262379 348544824 41652667 737213665 920009491 955072754 716360324 815994575 896237165 955619680 822713411 926296815 761246027 891216774 850469127 906275504 625382625 815704116 49457546 883385601 447292467 958823253 827835043 958709816 870645338 906267728 458278407 536159830 488601610 550961854 981486643 990007963 917336677 981231543 115277016 995727002 71613739 247219414 363603529 690851560 445719608 779256772 437840083 994951723 165419825 679080060 385384992 753693694 476800715 927517406 364138134 889790556 746017762 824994157 835705747 936315535 21302812 877417882 866173940 866911836 583537395 903768608 751989461 881187930 156104042 407404524 839869068 861720986 377648786 530325705 599543919 651456538 874867681 908346749 3327299 448070066 862366007 998879165 191209979 229009560 617316082 654890603 159329376 592665650 814798144 824513121 928449753 976053550 490514458 850879834 156509289 773473591 742949227 944915663 72355998 676648121 817455593 829028361 390054150 659031812 613632116 714477646 703483037 735719010 384048137 921819454 782182583 949685607 216493292 237098590 508343588 908545954 924085017 928694899 345389867 806685893 195244217 950460581 146796824 544268617 589268406 653959215 167443849 173003326 267156374 309716226 352498558 726780985 78169257 942057712 698202662 886898477 81786450 521479628 905594791 931087126 483692039 654740163 331122424 734927625 340314806 992327371 529143093 889122725 899345801 948647456 849204230 861758358 665601044 681010427 617136452 893149588 442630975 608782063 419487777 902897173 238237293 275062243 551170096 712338282 670170190 793111542 968490134 973545936 709708236 792242404 17183211 24195124 93960464 378014822 574172984 914984741 568797824 844167889 47416838 757232723 486281059 819286225 370422691 717311007 24138937 915128404 128030619 454681274 148974670 782993933 152432469 700853254 401929605 640722590 388558307 637468254 961012988 993732942 611923759 681051560 928821832 941483398 781652150 997771874 843058464 989493022 747869421 969816274 359692163 478332524 90686700 974787090 914931485 967722130 207836510 212021817 990286214 991377974 527859455 860785640 606622414 670121701 91319185 304663900 502965955 753619817 736719739 919800022 14383403 439912170 740367365 915474925 140848781 419869383 939935676 959907516 282070647 910122418 878585510 982465886 835539561 965005101 767866377 900099331 484470848 971172184 813264356 832223833 272218701 482351629 553939554 882826294 224074083 992385303 663921794 839109207 87449968 969348572 803504668 921377576 749373788 757678145 953755644 999477022 103056328 739999878 808311606 972650386 632478282 741983001 697453974 807879023 373966931 374647812 536925937 669971222 355058180 537524021 261455679 714677558 788156332 854919424 53304455 169927852 388924437 590624000 765852189 858584070 735148521 830987604 208653662 856662038 739604203 800579516 587238320 594534315 731448630 816121157 609866170 612184459 416210616 802299955 760220290 971991052 888368116 963884573 974525542 991882555 902826124 989231470 37074370 642865630 558908797 753669383 314939092 812863674 498312176 587858904 276974000 707285576 867228684 871536039 463533818 817139727 449968780 584535560 378034037 948643638 515349540 712877746 563802101 777957792 689632821 966495260 26003278 681967764 755779115 963294453 203884746 298301092 697638194 944812994 679950293 721015400 806144020 871579753 12495865 116577445 903386739 930704769 773159977 880747699 7274081 702745227 70969474 541836904 374543992 873903017 171441969 990879899 66041680 408139488 367392265 651972128 248645471 964684483 996171629 998930075 209163085 834433149 154301539 534962659 33311564 473427321 865490618 894958280 918389258 924516930 504542570 617597337 757556061 894341825 92053896 188823009 776330661 951468190 856460744 918714514 58188006 641622276 20642181 588341335 894713216 966277956 199358920 703800920 285635558 985080977 566337571 681068440 81014319 441627498 111192474 240049829 625848276 691187647 406816328 888339053 562399409 598133780 935593757 982223295 871873644 949144636 227473734 862254959 225634180 366062802 685550441 817055435 775077734 952321790 808366984 966955707 733903516 839788587 624298509 785595450 566290691 830800279 252849203 347026580 63996369 570244541 53625416 379570255 616926832 919216652 722444735 895646880 754507840 962758055 334298510 902510407 882675948 961977340 707119226 716115231 778789469 996842467 572605604 985948795 94924643 948387757 873098930 916286700 37994767 818052008 740074178 886221042 928920175 947385866 757469947 974493986 328238843 998521174 333869351 641448993 416136359 668878250 998613706 999472267 832414103 987930713 397676657 853488333 676649147 970276912 228458311 563138312 765269609 784703744 286107877 633146859 862709082 904434601 41113737 759784400 937998294 944681048 779653423 890469312 259439504 264282453 631159763 990685220 706004134 883938090 907560693 948141885 324973394 424358007 451674238 953161283 378214062 692472671 611178027 939447280 663889153 881539459 84280393 730143484 319888125 886598518 341034322 706892758 158062748 398234283 924391852 977927424 88178242 632020996 122372156 697828340 687881269 987229163 617157891 934965816 981933312 982117106 689740219 892744948 783806988 903428805 42792210 324864122 246486593 754746588 724293952 988943283 47338746 349519935 137633289 985725974 154583282 496165310 956275681 976922126 318328431 771510451 731809367 886404158 41374341 307089029 106899906 775866456 729221752 852430735 836272557 871113663 106689548 545922233 756940253 862869862 103071951 227533534 533849208 684532983 815357504 953826097 965389201 978678249 235967074 894011655 326150015 645801728 442616436 583353600 175767586 486626216 670121308 765840316 473023460 834590348 552457664 954393767 232382333 506695465 780546402 902302817 918004290 948149946 4652667 666283626 920862970 973316235 92025026 327608627 374617742 794243649 71189324 812712415 73426949 450707454 203331714 375916173 428563882 757362464 474750728 931439830 911141843 925346291 464503705 610818973 581399155 766942251 273051373 786227242 955501283 975777503 593925551 734537164 819212731 900187211 608635277 885831386 328560947 517331480 764916305 872213312 417306324 440946812 310844322 705606154 854783309 893589892 463170711 997515478 537509100 569067572 711269395 797746895 221548284 394621837 323567061 343731410 978884352 985780574 128828091 821531026 718618512 904204309 261402786 979243093 243582732 991882014 461237402 935599317 462807438 567550287 175653328 560339741 668791016 693188205 489449550 884519848 392364635 641526913 688403344 694783351 347017604 376989065 459472168 528277845 202978061 843593979 524133705 868012271 276405033 313732625 767868458 825250186 553910672 668105462 74949450 220527311 26330088 203999625 452726892 600868372 260550506 481664061 217000572 651127743 537266978 918158125 875829159 976880223 114492200 289188228 263855179 501131137 356236811 579743006 923167416 974089803 784938180 791177312 540215011 688223122 594443789 689176950 793946937 861145096 787951288 891023773 75792163 109218945 97718052 717672589 884009717 902695736 909932733 921885220 804394745 886368910 981440507 995125689 945692263 945844693 88224609 672167969 576359449 654309873 226066532 588422307 363239898 409816059 859378957 937406367 23489947 589038569 684921372 864272296 129397191 848112458 931718961 976813859 570436956 721960780 642956996 870128423 272801469 319320254 164563640 953347155 545196269 809537953 931805114 956510974 843630704 857960253 111203532 556242714 96131875 690746022 581344673 751863749 100986997 216508284 613756279 800246061 238825191 915811427 804570934 990824315 184522785 258923685 198402401 561188498 44259484 992739204 639846627 921191129 597102553 674711790 282073810 621952906 57906730 201540576 245821283 656207778 608356742 941397511 897904988 934487097 259483158 581633641 345700829 623272660 160027565 264285270 344340989 539051457 226346618 480869754 131894259 847251355 118648290 379159421 941615717 943301951 873547689 958502311 200500064 312901125 479810405 572435054 520019988 784384430 717946744 855291595 897424212 927615773 550729476 673882921 692855326 799283292 76516224 885274999 472540763 694122022 821720242 947995509 698035821 801743406 920688885 924111327 717365631 798506887 294355422 675413336 268195220 571852453 314604318 686012956 284338439 548017568 919260913 945728645 798403641 852897786 236747045 326428453 196054188 302644264 105627741 308711875 165316344 938531354 542617059 847611732 843232441 946455665 169273834 723829588 316005973 395137346 995347284 999004798 400908496 879269999 855145065 897742667 546476283 964036223 222687271 474166523 169618256 217580795 727903700 915170056 500820896 646956393 789676995 840730712 470367286 734385366 972940811 992263697 815924224 911523985 89549496 878979497 869052003 892046072 118604752 783903503 665413767 968908816 424739334 647207259 713593409 944906513 499821505 712497528 22466867 135152520 722222991 960519983 265588911 853316120 737937524 961972894 420635197 760595323 360455480 569444603 27906455 367257200 473867041 678220655 664806381 818559367 661855960 764597010 272725597 617221791 544964155 885869358 764107117 839173831 406830150 434034753 86611066 511865363 45889335 286399966 745642915 897356861 619767919 851402526 195918918 426698421 345136209 784684522 313397273 969400189 775043066 908241641 132416402 487518910 100490823 580477323 819563636 905080662 823486302 875839795 266466229 351120490 699688279 801688350 158045619 616764897 978559772 992758799 704232918 960100873 531690668 797884477 196704209 351707776 62062462 673985399 161762093 281181209 259026304 846855805 879726910 936731701 878623760 943016825 856529178 970734063 953454445 972903618 439599231 956263529 978383783 983245427 307730672 747673685 851978265 881890860 942277809 991189109 410251639 499459600 386821392 608509261 646488573 773315667 690168740 955138272 324453589 894270069 378125751 488022928 792442939 860903559 156210828 449396281 77871427 351850168 690569075 748186354 620234586 773923865 796012852 905470250 676123468 755865913 54411763 506735297 82629119 642559359 864116694 920682640 274102661 822830080 135823647 440584874 461540887 642037992 85297936 223177769 346816660 701663110 907151772 940592177 905209752 961311073 860942761 917583678 652648720 810964847 634320864 988004006 632612450 949466202 272153691 313192988 366785479 637629063 448790065 835756513 203485441 969502047 483140955 979921694 815485024 887844074 782134142 904280041 811109365 887443246 62820848 999924467 617681612 825714570 643156524 804314596 542315933 585784427 961445084 991756182 244605228 799794067 669441186 776343036 92246298 679009961 259018629 447761822 451921939 576915543 128319508 881359185 875764797 915796412 237262780 437850097 32026025 131563066 993790551 994910163 66030682 477315110 84709407 666728113 125385082 925733359 405437082 539262651 62648306 273198127 776210387 942230986 229413141 475405603 689797850 725053691 940813435 942612572 632947277 806367869 470315039 520031233 833674346 841776215 645159727 823344213 975961296 998195526 52655861 974749052 744314998 938258347 845448730 948693330 829429143 837213606 855173709 929270106 152297224 555636752 178441574 677847602 715464017 812298917 231266876 947531490 610666739 679166228 976157473 988414916 315070443 500460261 279609110 646592255 136841334 543648708 772850556 958207987 398510261 940953767 558070054 903304714 219599964 959343931 506746404 901072076 966443803 968956910 840987573 985169112 963430868 994793718 239779153 716383230 549629315 607617235 564527118 787124396 633206484 739798246 1875825 328303921 74167822 306541261 823681265 842300183 503369866 933362462 162771848 228060144 481957635 574921278 443455947 765147352 286328391 680127110 275796324 497372445 978395712 990866359 65546225 769120949 252592724 618966822 963975395 974636200 91748702 735279357 634628777 685394201 213248121 254947273 347799333 699276377 519341786 557362332 879469584 956512408 929415725 996937151 748600078 836611791 30465578 397116353 271352081 911672316 250226882 859583070 527530139 898539802 284346728 394809495 766501853 926887258 799469018 854586662 620720425 799378013 259850755 392319248 135167874 204682767 848225811 939974849 104571066 712186953 781592224 851098774 372317542 846733670 434950166 864344327 557281496 791758581 210487685 833487938 228872885 551245195 693214085 885707202 561365401 648468647 530124519 958488917 697984396 886172299 810492669 910149582 819019674 887075019 860734708 954437906 973343540 980062695 848184677 869584238 201331869 656036580 978958106 991274774 913425550 995625377 13978236 620404044 9918987 220591593 512306661 988198756 657210530 768357395 475202677 961504059 835284725 997238918 412633344 712047545 684662268 871380780 473308243 487052228 685277359 925387010 94810794 539861594 742260230 822141599 61581684 695119132 452493720 461232030 616692557 635704488 614338928 887516652 455509001 700283036 298125248 709593779 608667401 664681757 960361896 993530746 926914057 996894591 607250470 884547813 558810067 698140576 314199160 387810508 660278876 752916532 55566039 108088799 540235842 828606345 343454053 753534981 318018918 535378031 394165569 744936563 963416404 966472841 732764080 986154357 218123287 842755009 249873314 980897205 272580536 793799910 650194131 750199201 283678894 349647499 234440498 406334143 192294387 695420431 939495573 982819886 186101511 423682461 731703666 994630430 771175965 899059961 811107930 941698925 217728 292833276 49728567 359721296 892046156 897584557 975206217 975522674 126925438 379180618 977321643 984668360 958790506 994057551 932385542 955750493 286175277 783900779 485202129 544112157 536988709 799987601 887255852 998195022 379528373 537307421 643049642 751067361 987228153 993767578 414839709 511052349 318345759 573623883 140478385 838416260 74072464 126209691 348653702 427677731 79502924 169262173 961017957 974040084 235799938 782031729 650940935 875443019 398516394 401045947 29982578 917910691 358931767 925176865 929952838 977520158 958668282 961368623 874617003 880193601 668708381 775937973 637090597 792705742 734843855 875297040 367172991 417946707 849811897 861264189 80587295 420700296 172712332 348706920 361902219 760018360 747743735 816249079 822635808 897961476 315195500 651816525 203369540 817656680 824684285 872213038 302250354 739485598 303588863 525286706 687555277 885023529 401189911 691512242 156773265 719079853 290262288 354988317 796933370 949142469 38831504 181151619 873821585 930264843 229192457 309053792 818373292 974581941 515251806 746935623 123425068 692474856 201566368 900876341 538298213 860000795 466872531 820833021 587346395 811234807 83148236 951605090 328100672 887095086 778505728 984886421 718367404 724607835 741942398 843289426 703476284 818330424 900492295 979558298 374685342 823686734 11036047 534232953 266285440 694320038 338075941 714062880 731960779 764792153 149377477 452870818 672922200 943208313 482425744 519406265 670584576 862572517 492722037 808800029 26726768 499101002 97859531 228638709 979415108 994902809 74441287 600198662 855941111 986792527 572634296 928140677 137962311 637920575 581163084 853517709 473725527 529830478 470100224 721215129 9698816 383434318 890660373 996744066 922178731 931272086 919464211 925585616 2406951 414264397 589771858 693377167 447104538 812208736 315003136 410813307 319082681 496506142 983243637 998894167 3193182 355052700 793184758 986822808 786774121 966741121 978225805 999000957 565340759 566356736 535014342 971228209 258279825 746862159 728865979 916146201 283654462 655240461 888656729 944501775 133561458 608744677 110572225 653495216 354928052 897940143 63530159 672448134 331733312 707143780 838755774 923348858 157515662 173956854 887002616 942569407 441092062 682497979 625753875 801670423 744034401 786271401 791641822 798238821 54221287 276599334 292699762 758844437 946359018 967496767 902340889 959437990 433675779 647425681 97143113 880121730 135522027 633131738 259954660 407233803 360744043 431226597 107856774 118212068 215824659 413860037 106735853 521944869 867212951 982966591 783883987 984721349 51790550 298912249 200441345 962097212 743297753 899853142 144540410 848831569 420177850 592683055 588045722 766254786 886085778 926935944 252758607 986958373 25445308 126560082 773367763 917497553 297522183 323444819 19048127 154050579 774916646 854607425 12968387 928723474 97081684 920114823 37360547 537348892 832564750 956576713 402925221 595706832 866718717 868628650 559497989 940255744 684004828 987750613 484546882 568142282 303104381 961721744 541764426 833453010 73001274 324705633 751893551 877293326 560848462 862193278 347840891 412768453 215037302 998715696 815599678 965044084 647643347 971286972 794962200 939582559 479358929 794581573 689124163 912124556 283686725 873169317 67191746 351512210 167139550 265583858 895304535 992297803 744141754 810479575 55489835 473482903 162135221 939787513 46573456 787888136 115382479 362687799 979332511 998895343 242413145 564841200 771650936 989735908 723019905 806046319 732907442 787750677 776947797 886722704 797357823 825430234 542532920 546890614 242753855 709907007 361265349 415184069 491491085 976035101 133407573 861486945 236264268 558294585 392237517 961670816 597255479 748247057 393209380 676447894 609626127 863335274 421100865 810766436 979826714 996162152 454441834 598188336 868259446 896868458 668746574 751784156 314057747 673333226 278987984 560675906 651528831 667893873 626538274 634517921 795269924 971093119 93187720 347431023 834297257 966208210 933365577 984610871 749928891 980336835 61263218 749100315 254270382 287495503 203731961 353831953 37929099 576967418 522902102 705189405 306795380 499760645 386647042 942847654 778953302 931478683 984132376 994004640 470459006 697717603 489646308 932760174 308900060 471050229 205714432 730810030 374035971 972406001 215804886 694203064 240635101 592957156 703070771 802141337 222164380 840775995 143891851 890910183 44734501 810798089 284484295 427509352 626405199 813129026 477325340 856227604 318405091 409751217 353938425 374568460 789061121 857345347 915455112 929364212 77718756 955564351 310487095 807306303 736321775 852590847 633250777 703803731 706613236 964985997 748039985 772853948 677874501 727591200 740967604 754617717 245147535 679250063 644145432 656823015 783600136 785613581 687613668 802280099 446388932 875530816 49829997 584532977 50256181 215504515 29282409 334668330 456107744 610641390 581639914 982844680 827271798 839745481 538313248 857908918 277915352 701595669 215139055 305206886 87741332 463785420 192438623 229632591 450287286 969240549 179640063 352165041 668980146 746968125 360792974 727130970 37559886 76422790 961685660 992904595 69408367 287303560 747346897 900735092 794926404 804764349 979461531 996822066 220034670 605234616 382523906 984716861 299619756 797740304 267355906 783918499 992188075 996509162 400984997 981317841 241580984 877913431 745205360 782264216 181122326 449420278 4704076 551805734 928483684 960499496 625313237 989050973 961510580 976605858 651439904 864287554 545868704 794584808 840668081 879249758 2451503 340499086 306106042 652270271 435836928 951050141 224882709 842319929 976348351 995151330 80647341 120884219 497837932 742459047 284259996 712019743 479950400 603428842 263895971 998305622 681363368 817389043 653275095 721654628 186409427 339291343 335123079 572245839 412828590 757205120 968725922 979877312 515827150 517365291 451356383 851628573 666519171 835110091 525569884 943778293 324874133 617596765 687797430 688162684 505908937 751630335 363810279 565363203 666946173 986918674 539580453 699688682 856637202 869861596 422519800 935347938 757380286 791608537 675452275 975003969 593942985 698145204 873565046 876415160 91843908 239977727 307071367 366998989 984069005 998165659 259827775 547527257 358588569 615059541 891330826 991772422 292436441 507880761 802663408 892252273 707873136 915631844 418010712 471142278 115995209 545658172 73516578 246464627 430549018 941191577 759602197 869700273 206467426 834511703 691655347 766543372 29441611 694448258 842280633 913025259 379210408 514246949 777869694 812919743 105241439 722431421 57786757 481784180 962092217 993945839 762571827 998063197 569818329 908849137 265542830 601456740 182821001 233966981 47347392 766523528 498958609 676014700 603921734 907610185 905096936 943715919 111652980 615197496 31398004 745572020 970845381 991130891 459524229 737731055 699560748 942102792 152197649 320229723 233007786 707623141 105442605 836026619 558305525 999923555 670705468 992633359 84270184 495576899 805468398 866173725 222993094 872353558 666148265 884865218 276336306 938113388 444763326 459611694 360187840 925716295 142382138 821239132 672232550 718490112 736129532 929434958 401122363 502248653 262726609 752659001 238041716 833490049 801496559 862989379 408158801 467078381 907324784 924200055 127816312 787442392 306881753 789192865 693175080 708621781 450802624 488461447 304141847 907738453 372450406 932905917 320287792 945727041 137174941 353417330 53339130 987573705 158085302 699561964 134204505 738848403 243943670 946167194 196561461 643328581 923608955 975211396 702514915 722791186 180646040 618988381 119204984 597495299 99202801 306807237 575887695 843975963 291118880 657533016 271217139 337858585 776147781 836376040 450489490 783776000 541003479 643208990 866489106 914368812 232573973 704505166 298251057 423532561 750226103 963695319 537401103 818909231 197954539 724171155 917877756 964314820 495805721 569612047 858863768 873291953 790255256 973121644 138760652 362133891 621429494 708964852 31820738 280285056 152111258 869366522 836457891 860473941 983693322 988967362 222946475 968368559 929524463 977716737 530172585 539497802 623781317 739846965 789644624 860906245 689632319 911001192 625568525 761214825 154951626 507631864 554875117 774670985 670219349 922279724 338070129 945159534 190072570 947681284 788281611 832565265 601843240 691479563 339776209 954850119 67944731 673681709 200654085 383373339 565592291 577687859 733546258 817151137 719263164 819797378 448179563 605549710 76276769 560961345 210368105 748924370 725988314 950852995 929901917 987705129 385354542 648324504 868622864 966112990 334515403 882242109 593989436 845739500 18186332 747409397 88796531 559496621 153485021 347428954 593897287 671696970 796681474 827459508 895138839 990259750 210235171 850183925 42379710 976909087 431992781 672307462 44313890 483792395 812123430 894390481 233395677 357570683 152088821 315648629 71785804 707550518 593700123 964655148 560892202 838231892 455317340 691340677 944700953 951291397 929391049 971254813 482681923 575244470 546438336 582238539 777798380 988899737 420860409 768160701 79611322 755628693 793322598 887570988 182036672 921706569 621664976 645608976 826851914 856007868 605424584 886863853 939504434 946408999 894218561 918407822 954141080 979390078 972698211 988784013 660766868 777481328 683623402 916393402 427442008 537955569 604086589 630120965 918979536 934021229 620184650 779101347 409521041 634968350 815523125 865915542 832071473 919357721 102752524 705367502 442356741 815799118 30991407 362018702 187513936 755898338 501187455 725621153 605736358 792699293 936858420 960009640 426477635 967688740 267736669 600743420 402642420 534424725 118741444 887706527 216618697 611721642 608923764 879811089 442813410 867232518 101966912 721903314 512633254 663957155 368314990 746243962 187887094 845119352 920023279 933759019 222324173 471074904 636545907 897846329 389844563 414310823 293056687 829061097 297888135 406865896 534718255 563308617 200097629 818792858 896639997 908966767 224582610 251089881 69333948 193508646 94628906 196434960 768227520 797951407 287221859 575201289 458113287 689776277 954536662 977090357 259244828 577878739 759094059 937531945 144255743 510397915 535556767 856609248 618778486 630152054 610940441 901681040 589204050 779593281 601636790 700338737 430280766 862513520 805273960 883493031 884338779 886704681 629779046 772444496 462470557 500806063 111642347 988603780 854744056 984284313 684740873 855931312 444440849 618229139 592017097 818588440 637624018 778817302 385392057 895733789 977675902 984757925 5000371 252136181 499461591 938586140 296061381 872947219 447355655 583195000 575518842 932981692 40428230 815652189 822531132 883942647 755653556 966150353 810954660 975705152 820716241 916816917 502931121 595912235 743956649 973659949 265994444 661331157 481171586 638856688 876594504 923620915 582025987 895770201 343298533 504081070 943348846 978755735 531013468 815034062 550598180 965996992 771167018 840713181 957420722 991821624 194674478 932208188 458681497 882430607 557130107 745132797 766973074 774837858 715294434 740669822 47684311 49750992 825225240 890304165 912279844 988288427 959859774 961375356 378668338 645229996 534141763 961248624 669309261 838645811 167564804 181410100 664182993 994763323 356687001 855271745 319493012 960215415 533360751 935201315 266327037 661050057 138506041 904031176 342715074 623075992 963879299 996208274 850929301 857890320 847896017 900694947 953120269 954411582 128270457 530005409 716569118 847742280 61941800 62660225 569527567 829693640 724250826 890394901 633758374 692685952 423556956 726536177 237926218 409754751 112061252 684177391 258498583 615666615 283349556 664495152 194433673 865851731 561664444 953179336 283700271 831108570 399001417 845692805 536725383 935951905 406799126 972617895 846392469 949177695 523303395 581662282 243045043 663089563 991647454 993651385 102741902 630078663 713778656 813661288 778408944 915738490 146972403 733232084 130607400 162490168 887524155 973794050 17313977 168870120 847049819 978631156 97032665 111420956 229469121 661367889 328250064 625866781 199845759 949478889 86760481 644856434 726892981 850613866 24310247 700646371 604129245 790603436 131658492 612846248 639788871 987634288 993922956 999518510 607777465 713448887 702431057 834253990 749100103 853885501 967766267 968641733 18457855 267136442 490754333 645114598 531327823 800755332 417017133 554360870 130803303 491881175 930359907 930416883 629334870 664554004 129631798 449400552 747556662 998306032 347757302 461342700 940156964 998100634 919495958 984473699 433043965 707733020 931662329 977579854 691442594 988141438 49569168 626440635 342276968 828120686 326552148 626714476 718587065 803640608 516389616 732980463 985666975 994310404 257714194 830769817 860558757 919360504 635169928 750449045 265874674 471564236 292457386 668191698 254676093 578342886 728174241 891359195 166984657 463315965 137104724 411319855 109297230 549309265 542616270 755153861 173018302 487907236 610840106 793703530 988150759 998831365 582032057 821189534 583641416 707059605 856740190 990347040 634446844 790309466 744967650 829142679 773786820 968268801 879032060 912646390 879093369 942422230 790664338 860758676 86503668 985897190 420832557 522969289 999869361 999894752 342938634 692510666 690051871 957120954 736628425 981965182 927180502 973202821 983227593 993398784 857956074 862159377 381980640 485144550 522246797 714225379 931944609 970917762 4984464 708717903 592860900 754833767 610108542 649192466 50968267 954135925 433584968 697130833 176275398 625844360 595175938 933488716 856911273 979047819 135769888 339363129 589834260 643240851 69900432 433480669 592183375 855470957 244183650 646156438 421086799 809759528 288317313 368330434 553616829 775075658 254175205 450203306 251566094 774155058 15928677 801399972 616415206 701160267 277313994 442202084 791501741 794408806 638037515 980843299 481637530 552729120 300375576 540458854 173685195 732463337 194933641 309858890 104819445 653674488 296558189 669520383 582709457 645337129 454683592 773203722 8657765 537131459 963432776 996508508 381227943 932514300 18952641 332997063 41077047 449749547 449970944 636191338 308815916 845409962 509290353 539139420 205552535 697390409 735665037 903855172 9180180 806583238 379592065 990303219 318261359 441559726 914438383 917262821 780457720 780480964 366924727 929744567 740977115 980804343 712662246 959537176 297979640 411138003 140080909 147676172 47670511 412321320 692819214 719857702 65704787 712331133 990998500 996550992 116856320 576255844 986106592 989527055 200502478 690474208 871886491 905533619 836606914 909485364 498897849 766718518 642097987 672428779 181509054 565189740 720945780 723218177 320733904 635465746 83796561 289277927 483437840 552862113 921305375 921566017 294478584 948661490 851726512 918898900 753129157 882280315 148236588 367472933 533384958 888068174 999604063 999957905 410294333 737285000 982775782 993990626 341005573 655249751 768386318 785775778 170631617 342008116 635933837 801787896 978721737 984346165 701278204 965203838 626543237 987055790 996237018 996338770 260266449 570744025 210384896 437041247 714994142 894665126 798997511 947895663 593303275 966889596 21551120 831382094 350123038 701949475 432183846 769833579 844350863 923070199 853744014 865747025 942694167 979944576 239585290 325543494 317646160 696795660 688619259 942853807 613505392 996901658 49729395 275120606 442015075 777172206 7215509 347745225 742803722 919298694 752959441 758294406 548524183 584907783 803343003 959578719 629663609 658773813 548162457 760465119 963813633 984802135 405696297 892648614 738407173 757519495 552696825 554941143 931873906 967415850 38438155 445836310 420076309 742031450 679526728 801356632 719852693 842742665 794784280 809231328 292715393 587714273 923347394 972337648 106410708 344579024 806363069 986878427 380595259 914344684 768662653 982253627 597249245 631050427 114207436 549656556 758469727 794892648 633427095 802242145 576648326 643860223 685681137 754574629 738637206 826407632 292899686 768036633 538531528 576241634 267781250 864987172 492906827 646435951 862859610 895350195 128939367 177036939 170148993 186394353 316707869 826235654 726514802 819241967 795463431 997187324 644622494 939044388 737897937 880455981 624365925 860131738 29984768 937761980 334899134 488020980 893590271 929274458 512611599 989657428 313257157 469956483 388132346 739981581 760867599 940110164 569424309 668722653 555597569 766721889 53049727 972730061 128265084 679246155 460279094 515881687 596009308 832973145 413813096 989174009 971952287 977784396 942781096 948702160 524140556 745777344 62076501 883633352 3964861 673201201 963527702 985977031 749556514 753763065 403044586 453876670 203447551 507268430 750403891 876183708 868759581 968379487 376752374 739720032 857548947 900407234 926094800 963446006 437858369 852906669 268879188 878254344 734248152 850538816 103835689 257124412 637703405 654674461 462443231 744889373 17952836 153740549 885664321 953607022 693466612 875868235 31454996 196864689 626234450 739389752 601724484 930101705 893646247 970556627 711441927 864832859 451709196 809412190 491304789 721579689 266147712 513261132 209384289 490190443 678415514 950158476 185399943 418373837 403275041 788779731 833234335 870919773 10730419 420911924 339500058 638342793 512476756 906407727 132369937 143007726 634423676 889918076 32004923 646070216 841552900 900141793 617748334 826228351 11064711 272439643 939196791 941370238 631252350 703240840 273435533 439379802 119806343 424827915 1376555 165196358 551101334 864169790 484231281 690076520 27724360 193621643 49700595 303343149 90597994 552099478 289264766 447513076 792450195 810270854 752962862 952489740 732926311 916391605 675475013 808955055 292079172 945528722 217175785 831401634 167282294 973207779 251493856 376283267 457066670 773019302 900700995 979295289 291106907 529797340 430100228 569238115 730036674 932994162 455767993 778490986 649693256 771244322 981384347 986224908 751672949 851539478 629977010 642375176 71834493 140084005 606607326 788166125 279281604 487954211 558521573 757838264 223438929 773609129 962330127 963618762 911712447 915873025 224564830 574534026 23564986 571732124 242771207 650566008 384308415 909408940 577639487 947496028 94721416 956969567 674867531 678111858 215362420 545956424 398290931 687494612 846058118 875065308 78224113 763044319 815373901 902332184 270609436 630307128 820910457 921255075 446501423 559872121 358277997 606355415 467648616 778450428 629259128 947400890 146543532 613381223 699181648 750306816 993744447 999743309 326066824 465141146 841283084 861934977 911928817 987331935 199358133 556386286 552291599 553623225 798260220 888962196 913892516 922644104 560795515 864179084 645702922 932084381 91627109 371627673 58175764 529086176 137308948 623820175 693337404 955849341 729671594 897164210 825315187 972769812 423934427 547303098 279911078 546193629 216571251 920387299 516161125 972694514 96785390 924622739 575766704 635274349 27876538 520878926 227031220 397193309 975869849 987711718 273572939 778358275 128652771 358265270 9332853 380531419 226105026 947986658 481115411 545017049 492201132 753199821 789991662 982957994 393252373 777654184 546463495 860000749 210305348 458493300 576036328 839505555 58609461 995170235 592677786 643742718 261215630 600119080 352919780 683294279 425456095 581565184 692974345 753418656 915117097 978944175 727181097 756489019 995727698 997553218 821476876 988128994 961994093 994880317 810875644 826865538 742076414 859513230 226063675 522469171 302281458 832145631 289885815 743980494 157442620 789433525 436270285 866474153 283723618 314431779 710637171 843871403 268797609 374469664 922204210 992354624 761634485 784354629 471982272 728393087 19868987 809940540 20121477 967244798 358315944 519940993 897750478 924442105 824353134 921342700 481112560 549659575 32209321 496586014 104556240 714780598 344698042 487968360 902190947 967057957 926842642 989887714 508372623 876806751 447521423 836316786 421938616 497794653 279830820 650787762 695543359 927307987 736381499 913387674 249860247 352419185 296939175 712827626 346557234 371628239 516468409 659920776 497295581 949833238 528392923 544435793 483454659 535126439 641930866 922171886 118483088 342063758 205701075 420520862 58333451 652061324 355780786 388597877 584077351 876503595 674607169 877199644 544099872 616794273 1601711 937047945 436273665 893295240 319859607 483050300 521156992 686161880 363989806 605532988 34588218 664157466 714342121 970936153 401185063 538306556 561910165 976178804 415160358 640257571 331909212 394760781 81575409 253198126 443486412 644442932 968734045 970175584 404767934 532455115 586064433 651195001 551044033 586271037 266328108 971264762 959492035 980439321 964332011 994963505 948067271 993200622 176458058 807296365 765042060 875258546 465032106 682798226 855411836 914047978 794228727 977402617 248914687 803683484 230405205 796029177 384364569 637737755 595048333 692853798 546120405 657108133 401046443 508972100 814496183 898528268 682793020 926896262 733943413 740861464 329287353 508231325 572909739 612183954 869943452 942369916 789015257 869997521 205618933 829370387 602028773 960325767 93053911 515883016 668543381 931573742 716260251 762879406 633276306 654498127 62506789 167663076 401457548 715008077 826494188 833185587 47199205 494212797 196111393 568941465 113585163 446332167 86717292 364690370 386953124 847838716 368037710 441295788 673203318 956647941 538785526 610538188 697984013 714828977 15478269 949289632 173627425 634031243 407091213 458402240 27200372 172996087 902712593 989043163 306238410 633040136 982312107 990238036 269362706 524631917 686714058 798917645 595526019 772842818 15319019 574928670 443951702 789854237 210477146 468395047 701536793 961553158 78783834 962787908 315502482 690604252 265675958 297562627 688831186 865954418 623518233 815387964 278156094 668984109 202253614 328781370 672780724 902191464 843287851 891705756 172847711 428485011 840319013 867735927 964388819 986000996 520428520 994679635 495302409 651236721 816935719 889572978 984957200 996389610 951772538 953734277 603301433 870512207 637237380 746212566 312968810 459552449 552379098 789596924 756937196 959556015 61199002 994986440 80877847 746775886 455486746 704957385 207906952 313191654 607498832 754175756 504373777 973550897 138922535 156959769 295923263 312640125 520088685 918926520 941796804 976739651 980623351 995415748 602388830 729358702 839883364 852664415 726061479 730363599 170584649 576788133 489727868 510102667 438294012 453441888 655575236 972786685 144171087 769266555 999385508 999436792 193859039 854231414 153647157 664861174 453961497 859196020 607500790 613347101 186807804 260436909 78345928 212856288 49151933 387171685 883208930 884974557 527477847 852842161 899647896 911980869 230466901 635941628 542099448 715778742 215202479 738600087 572247245 753844043 713720204 919415169 443601362 553994510 183143502 682297184 290014691 557607820 376829312 483079540 197213694 477278524 600942917 968888244 546906863 731923158 9060145 787997224 378274591 586598066 915327980 946555542 121457402 171410784 413240991 672027434 829606441 935808026 840567003 958593084 734724712 740174994 190890516 432598496 60487132 513489196 213187660 840871940 6592625 100536118 235047974 252938926 92790654 843636227 79219680 772997146 399951778 942248431 951065315 982405620 621677387 910549357 85311732 443308336 522542505 843042918 270037786 351467959 375244839 390878209 655666724 918521983 12909069 886680217 374566773 700306165 676764494 816692647 565714438 789082669 542814124 958284982 497731409 769163765 450639432 993940014 417487138 497278004 256744176 659336879 578842326 817804492 696890878 815491602 171888353 985848116 453493529 665699121 957744580 972118138 761935844 821605118 474500107 861800796 994563957 998261165 848740610 972479131 271870402 740254815 256451743 555709396 115210495 870517775 540796310 972048223 807894851 878754007 39528662 245533979 229283209 879896928 850215388 906299337 371025711 674802867 383635919 765129287 876433289 978586702 679719937 747790466 455675788 882168709 888484625 974999506 258018017 561624991 702991656 738388670 296133045 690308264 302442386 831963579 385074518 523774936 117295369 242851130 242847412 367704091 408774893 870344244 416980955 988427917 697431812 808744447 523712010 634914918 52109988 730655671 794714572 974103620 138297868 735896011 716907088 758705061 709240934 920303275 588238884 968454126 142029642 408668038 797482051 810546541 803343582 919805688 552908025 650740772 657580025 804999237 283497414 310779406 460106596 575011430 174984053 815459078 494609518 895289710 957890188 993982887 41034347 877565993 266500970 971119857 17668759 388902400 608574322 819195975 952112598 982976123 210955508 348721203 589174101 656859435 966181948 971153024 576338830 970564408 618929586 838793671 306806981 491652410 842478916 971186112 836892620 944323193 480036036 986141950 687898449 952481997 747380915 867143530 557228820 685207762 295777314 984097251 20507911 986532428 4887432 302252737 357081939 777465697 810518488 920690037 266367153 412338885 160380614 381696184 198067744 828779257 966392498 969232926 822218345 906184245 913280083 933225562 298091515 541272592 863515802 866150346 45986562 210517354 775969771 884900772 243182522 278333112 599698529 761276730 59359852 367377193 443438349 629451560 505432202 655418137 186208503 586252262 543090693 802869803 703659113 886659068 611606022 875746311 99629368 541918037 673670802 723159590 822600932 906372950 648630574 693406967 579954425 757779509 915391755 973130067 137462984 589423109 802486561 840187393 159215160 913536260 464287877 582115465 652626403 829869641 158178455 336742713 127800731 788071899 173788687 625971538 818086383 925895047 961008228 972198000 987492836 989223597 570933069 601667199 885259305 985574566 144907738 286455718 19287233 978656692 788358750 885783318 221253869 274891607 49761583 113807592 737441883 959999410 326282800 746008098 710057649 804433294 754156754 809849467 586539683 618115697 359595622 763341310 683345830 811388165 160687390 791310679 910888040 975030966 557322981 934393755 858916326 994697833 242450243 603133410 986443051 999599012 135091744 504496002 631944787 899692595 261793085 699053741 664550288 681753151 869944119 955626944 514762071 528999576 667118142 999454273 809667922 876772915 275288056 972805236 195118649 730021424 671052705 751039376 205156242 640905564 151012336 157216033 88221 70008457 725469868 977815525 92198708 522718907 251165440 561105176 640517354 728231394 416570989 525478980 835735551 937345811 499298799 817606489 909410316 957903043 992836739 999273777 888033342 939354049 166627864 191765949 178054345 910400369 129374178 761689598 169792859 384387331 689713077 736953868 303062189 983823429 36801802 81883503 129583676 890081279 988975968 989298770 551404627 733400388 813477889 888898207 300813112 536283230 611598915 808127620 299071403 873380172 670471056 896359997 833695001 995771187 158812946 659795776 722355688 732930969 16552829 692704358 249111724 538645883 14630464 568692643 286550899 625781700 889962924 992719258 581301901 960923068 927037047 932123191 368064542 596559740 173536911 310171343 282744948 653579016 107859585 697155713 899096750 980985376 243420266 751310447 834882255 897571529 679131949 726188699 266669160 761383358 85185105 331003491 128072307 417694901 86795131 791496393 762977714 857794298 709435758 986608699 352887273 588177503 837789328 984864880 909588134 972194066 841576820 938372682 579945039 669166786 879057572 971026161 384997841 848338247 159580840 691698060 814148560 874544742 823595540 921644862 950753489 973392995 819677160 952433743 65892122 979485708 716345849 815184686 179517035 576847339 929805609 951745351 558593042 707820377 437657844 606698832 401957060 553303892 886458500 901853939 49717936 69194760 609565871 878824855 400513593 876501859 551869700 823383200 121184902 638068161 196685429 869448510 869114485 999144593 851353926 992458070 958190283 993736230 411573293 732519749 26077809 447608127 499451537 627675377 832410895 869493146 776987150 879892639 134682234 568087469 427947499 614344104 968060917 989903051 451713594 458654813 392347061 495954699 758658063 961528547 33674686 912022529 708466596 808984309 240682050 797896058 721381275 910838970 219685051 411222681 217063860 642298143 627508624 821643234 756836349 885399514 226235332 384252733 921703509 949528870 24818818 80768298 629768462 927654547 773379176 959607603 443731174 697364833 436524773 718031616 790430163 992247842 181112740 213375176 924204759 945481763 752197067 772658554 790415114 995471604 479288734 522213738 494346855 591777716 720248143 913535541 615978851 629797256 606023835 895775049 150335601 789168976 841227637 909657414 346183137 860710091 756706516 863322457 253556182 918687142 482292242 984261903 909188118 986524020 112923190 682427508 600632123 643488313 512451587 890628970 830540621 854162954 102760117 817723252 321500206 893375308 719597968 890213602 480916596 673884033 848284077 900755425 330717294 630087190 509500032 577757778 223460831 775399981 93463941 469620780 442585402 913245817 464554724 505793428 306829300 839276372 654722579 921783736 810086409 848705174 787563246 879371068 109951198 583512997 952969401 975858694 493519849 683971824 925482550 943804058 370480189 371120853 153390185 560385668 773042092 800294949 182461575 419244613 959144381 992490542 372372458 880781861 44542238 230470291 23859143 565568941 808828307 862041932 19786016 778529897 11627392 820575408 874366605 951866135 689041207 871762090 676014291 925137173 801870507 944434450 117843008 118886172 965278739 991631284 472616849 692758100 910369640 937007726 706473943 910297946 6129101 224744595 216251909 796439593 880848612 996852534 400891432 402941624 33827723 634333783 626555107 675212316 93348927 160972937 582625956 838500518 682549442 851352822 629694405 926802369 764667508 877475843 390672886 424234433 915632825 967575710 252507393 308548428 696601738 880066456 137047247 197509126 317584524 985884572 584042456 671287990 744099182 867297993 433412821 703371238 210348704 428448329 326321946 771811300 702740307 922092599 418406161 583591659 880404296 903457301 360850914 425666390 2301611 174366887 536215135 692535844 390248645 811616442 330630020 796500138 900873502 943753715 807226396 885403194 975768545 978225083 640340725 699388244 298489727 852421832 186113333 219537433 550564345 767539719 972685008 993032634 95841690 917844846 287155679 930794954 942749082 991713379 122500855 558965511 687240398 830020733 535870046 739704964 526337809 669781155 152483940 757552307 321966465 343832209 805975983 955957840 889527813 993525707 812014744 828246539 140722275 487529405 683501544 833187447 199298833 444676236 810468923 986458275 285253489 755921927 779475327 958911802 850018332 895276880 716919288 838603432 470997807 846660200 876779319 946252919 180643522 500191624 559644580 870885150 626798637 886434797 101986918 268836927 976103894 984456510 645437653 820963274 217679719 435373493 495392068 825304085 455326454 690646941 551739418 889971093 484731450 928616571 163491892 546468475 351380999 458502544 555853972 967320640 952409574 968782873 771415095 903521296 403293583 751924205 226682446 643508308 411420805 508174676 758550503 814206016 26517448 597638447 711942428 716759595 696292108 891068091 226447565 979642093 130567196 539591962 137252829 146205405 796200185 971745104 509346103 624763460 254796120 630424338 455380673 501348133 666813734 692391086 52792454 506152063 785022765 969040413 797430680 855087564 868430943 878434426 115747860 344882097 792131965 829415739 808531377 865568260 681733057 908674149 538957092 770288776 679020391 679761708 318195787 980958075 73039759 582529598 806890095 927120770 790419083 798953162 31642470 269838409 704584735 984522125 68801677 823139674 736178192 979592736 122246438 777173263 652580308 677383293 808576116 874240178 746835038 926339708 591382367 843871013 407043850 631424744 329240973 351039617 885660837 931675139 17478010 821029281 780864501 893832378 377138622 388088022 890722691 933664519 479783415 908694829 973510754 996033287 489716800 966980096 169614680 512507168 532174950 987026110 381950445 857781774 373011831 523405658 140562362 872000576 1579476 795393454 463680430 827489030 904156412 980601950 521090379 731311897 219157740 558801181 797077689 820934478 37510872 363992230 650173182 698676654 73218331 608178699 166429833 354402834 194196729 597704754 329185884 994490471 343082271 999081770 341558734 560443189 302012109 592765522 386918860 810727146 317499758 927551635 633691581 648036556 229044065 766522629 572454169 938334542 395176857 804388191 239864620 476117238 864703878 999686439 774131384 847433048 195747552 818166447 753000480 992938561 859912763 956953105 487858047 743031844 364673304 466957239 429615067 965624082 985528585 998452617 921091527 958654466 881870135 886104794 199897569 455464048 746474840 908183279 184390616 307107860 410850051 505461136 715292378 897629658 19047668 393503593 505710970 781037847 865240361 985780558 503024474 530587700 58610507 319334312 822763885 881207730 464485804 793653694 430885105 435529318 245499267 798595695 416407324 699360236 789335414 924116227 552069230 907150579 18687070 131343947 906061054 995308252 543672561 587966257 146707635 186364011 494011788 958994325 645187167 805049488 242755451 478849145 415766279 974208616 217125428 981874551 988823765 997405835 919504461 922528930 235722282 672075414 158629603 479113641 376691999 649555632 122093587 363679110 420026068 747362740 797314495 904773990 560588469 820450497 216502962 392187039 515170130 656165174 643284443 921738008 796428305 979503591 931832366 945753640 281302247 833647385 211703229 702428178 978885629 998058594 854907975 915444069 660471054 928834448 877161900 905260525 775801892 967328588 208317870 687880745 659454850 693332870 477087245 956055604 790287296 834794335 833514890 997147946 116394293 604589722 847140549 937706463 931808665 953677327 817147152 936112413 517962617 754605369 381138258 852280342 381362718 980024583 54689343 497751134 838163100 880136693 581398620 596873088 608070244 656853023 326539628 327262590 103242980 398920757 85977347 142448786 88867960 197644673 606603818 637204570 901256160 924327060 533881622 632630660 422875586 563621679 502104756 555585757 650727358 843754587 932485596 937101525 968495588 988519459 216258651 404772475 972008450 973066900 96160997 508991130 172175413 876582291 521880464 967083216 36746411 211533622 832762685 933620283 3660822 759212071 341732908 410859340 91589162 765410663 542503981 545098179 693988042 718533353 513012235 613021598 254445040 917063468 149527211 397531842 306094331 648512845 806979153 925645141 37182420 605647832 228991086 817463397 12655981 495969128 888337512 949967725 421209826 631221367 36894021 939714030 962646683 999754109 952275367 973925994 321412270 442692633 284820739 483879586 139783338 633018884 335603362 488427976 109989601 530503568 913907284 966063587 581657740 793807432 298536587 576604832 317098694 506229228 71657023 639529837 426852246 840397511 585280226 752940878 618988169 796977223 748828663 972924994 738946208 873445970 340582399 811079078 46991041 381776102 596378337 672932003 623045804 821791420 91458608 608952976 345760001 696470030 3017247 419484678 963931813 982177393 295264841 646215451 939567167 965309863 288691339 499541607 409387615 436283525 174305653 310973574 179988693 920056085 321703395 470034750 119051111 472286745 538348482 752168082 764750474 804374555 236302032 254671154 749337061 919063156 66244831 422159888 391181950 733470688 894768904 960448809 545836060 659068251 180585451 527488340 168653318 726948246 955021584 965491963 90246278 117220203 13908068 144551521 936864589 998553069 116233322 247259432 159528217 319051447 117012287 471103010 847203026 878048740 32118141 351923762 253419889 337749569 453077131 975388268 967071791 984681802 911378545 945417684 764513012 853615729 955268852 975454611 401051036 417486668 800484871 956002445 842363559 910565145 324070533 357842543 377779222 546041609 552159226 950659332 651259874 809628581 435069196 549319610 777437836 919821844 157972053 684825512 819326680 963293150 332444333 982478859 456653880 532208973 688046554 859948299 238368338 617518899 941714933 987512195 626409802 758271563 491454333 698976463 317881178 441243826 491410682 824605960 833421199 874684237 611420245 970727466 615488172 802260838 204998586 667974502 432965968 694979896 682309081 841974705 356722127 622694268 18783432 829509568 593116174 993136872 994312523 998172860 666716772 957675771 571206943 855139930 197885185 509667234 344797491 436827731 546834567 559627139 208867393 239323908 620777023 801100417 535627848 852455970 13254456 915140884 535566929 848563078 869307392 951386714 977386969 992638128 762435661 977106052 922347094 964828472 625127995 828555917 900568595 927861862 909575319 942151551 325061498 368913172 123324608 774962954 866006791 888927483 983423578 991136882 562944937 891182498 182957933 219316671 939919600 960380615 606106808 612659472 856083878 973740779 437503850 465719329 759293660 943651139 652917896 735392099 503300467 952282039 919236882 965718452 623814934 802830579 388425958 488050240 825090872 879698292 660973442 907425730 39733730 749644041 755595299 922687763 935911968 967264477 93075354 978523014 349685240 915583631 423121272 571463194 371077720 937204041 544519857 666223479 646294893 973400225 413868405 459209668 792144519 876528279 718194036 871718509 80059698 809958918 85248843 929565107 535609786 819292294 120613641 654404925 36621839 787417414 280944052 777716486 86388373 538488940 596909860 699566703 188571377 880963815 296436562 337379580 390652189 433413761 880366597 881697996 993203981 997257366 463672972 602362270 916125210 956504061 148572507 768807498 414741554 633266432 103554721 257391552 679172893 991504497 323462261 401705975 342550431 558282522 739714251 962645280 356107867 722380027 668004360 879443738 815387134 856308404 240153549 883262225 259277595 881294252 230905865 544274999 105752391 632379712 341736945 383280458 530902723 556998438 534874487 663642815 164353491 482339500 2906949 429628277 328091686 362203378 965571886 976603545 153406691 337471061 325967923 878553784 817591534 922068811 525725466 577878419 140090753 954157374 755709937 869267886 564175411 587443038 183396515 407419527 667054873 930776508 912830051 990887357 777225591 804842006 411021027 507398456 673112050 836753642 891656676 999528578 206176926 646781075 301190964 637344342 958556308 991345212 695413662 724422230 908721400 947596577 752925981 952220088 139796244 631951522 759057632 882980427 24206416 412835961 170979264 495921635 477153330 993181728 945963719 949822900 264862936 877313764 237796982 992675137 82073613 429051403 256962555 496415283 759131610 762540020 115916789 199403394 504222082 834126135 803727444 901848778 316306132 624148869 873125392 987453467 300320616 569392597 224984793 782397265 89406939 578291153 828459940 960815924 50827835 711111414 30768954 715364426 838043510 993132838 120240006 622545678 941606661 951715859 717005927 939902113 490863022 794837264 798795073 886485910 973976870 989335529 787993317 996402335 976184676 985280407 945493684 990447965 188231397 573131940 650590427 745693709 141521609 543959413 924972510 999808378 973158526 992277546 585888262 985353887 169801798 514064084 697686681 951392860 457883885 764621723 896651536 945544437 20059008 364850538 879475139 971357692 640546340 937347915 990797124 999696687 645559502 899790481 765337455 954253915 797266597 901792281 988422711 995583948 408212002 596421624 154021542 220439318 504151323 533630290 321452348 952949660 297951009 760098137 373715094 439522147 747249027 955352828 477511673 905007493 977606429 985810159 998701339 999824918 884854307 959298491 429045259 692182560 826052475 917341864 762215055 913249389 35528298 580065476 746534471 819055650 41473627 118795938 642306264 805133092 928089403 942120171 953741780 990975862 120254707 716399006 648872212 839877195 604681956 788838017 19800118 485542038 655709858 962666828 811626210 954066634 529645741 747528896 393734324 896633988 189938619 446286664 631946956 832268938 23867832 190354170 816644406 887116480 697120398 947756388 618679277 876703636 503419617 751348572 163305030 636560936 102349658 200920697 777941872 997784587 20827723 308786561 413086464 597990486 562143459 716618524 776164305 828461064 695010943 875602373 184578429 274302693 602135315 716710154 965518516 972638636 537356155 754173670 324671777 416065354 48594650 210306035 435773498 679450861 959105473 968411567 252996991 472741184 869186002 889501591 233907172 962243106 44076455 700301336 725055949 835337803 295450831 844362722 26993749 347361435 340908839 855224387 591098882 975618102 677145882 855002290 314143490 726461008 310891540 481752024 422620634 509116900 9818587 897485526 714290375 748971948 22059061 397229625 579144248 848105868 239499065 486052780 342364400 646000282 588399484 605628975 953128046 969022937 938206269 955775973 777139510 895011371 87742898 849197284 325553511 448616585 759295232 909841050 166459402 426411247 637634305 767512197 154768063 841167877 779057402 914427354 900453043 903777086 113679983 200792657 653432567 777859747 146930315 299794372 772924958 923629256 393541899 644699421 587632458 848372200 777915428 969282846 685333127 910537231 134246058 746253874 90756980 636933446 497225695 681160918 723756913 925712648 167591208 327040743 274431552 556258287 244929983 828961877 204000982 713013105 824957002 908434721 668914562 923143907 486378661 845694638 197591867 489789243 912045060 922722406 901055621 926254273 674310721 849475797 885028450 989553605 314701076 443048203 860939117 932968729 406598826 536462167 242771628 263738952 930926009 947803995 249376609 287841126 915732034 986949198 732568399 973039379 691276935 796748061 879817550 956727069 778082789 829776417 53824920 687036727 652759581 748224570 216052085 900879842 502114669 687269015 323740869 610467473 95935264 439815544 525382901 828367431 935994094 961217253 816615642 901993382 223405447 600480714 896140656 904064286 143996690 153942434 244132635 377216243 5094557 823141037 176340733 816114484 249551577 518868716 376683113 761620490 79234953 776521105 800024311 839289835 70146743 307162627 371962262 650492842 475289165 747165371 159477803 938129412 828921494 938514040 901390129 902428034 347797015 949807366 766862637 975236731 667388470 668031745 816435194 948618117 383641852 995683769 226336876 410097842 313615290 904413016 753939599 838834933 919901687 977192653 986727818 992496306 318463108 440505438 278012124 712698852 253945160 976284381 240589860 718042590 675100835 874003764 208747184 216516043 874754195 915016464 303336533 455025829 508184531 701845660 243876291 648464089 322272387 357900351 12243806 613132025 682848202 684255458 843613513 880559225 185118892 678631503 894228968 954085159 308455366 975879982 508971088 568118821 936242605 948798239 853371850 959727326 387543747 518870656 265912962 434355716 476104244 833014970 803278063 813065072 123237373 844839382 956129412 994418021 375859895 862089154 590820516 621392852 292897690 612058247 387286021 975763414 251326087 551727750 727875069 741172948 323782364 868559173 592872941 855455595 756253960 811719395 559006125 934033466 927495275 949273281 207055269 448803410 855333045 869532210 576914100 986040273 235749918 641476471 690181897 756958325 394250426 432580987 769557226 925212498 572853317 811450188 431235490 969971492 441682816 901294752 286145077 498629873 79717930 590330528 462577785 711001774 826719639 865488829 495579692 988801885 744180721 787793595 793517319 871152684 616864271 845781112 815174960 974777521 577175161 995022548 55543570 543476691 828229470 901603552 944938368 981407386 860240020 913128562 394800194 537091358 203100668 609152708 44325883 512916874 743255950 984284084 42534157 230247628 127603531 572990070 32997090 489531819 463167711 770082689 651735039 656228878 775980508 913159814 319428151 678419917 223489822 831085791 85636157 329301792 99721781 651236910 461369989 590012650 916056048 935068320 480481099 828933067 489462926 959735148 242873218 722777619 461458821 714719327 820105417 954471238 341648542 871674473 302824480 931154715 385883799 873620549 626611541 798562242 94865399 311761129 851625434 878147162 667734363 747904241 207999572 471382015 134555834 222467918 189335123 848530243 487344145 691928920 85909806 157332844 18824970 394231817 554394509 642012404 33578094 962552833 276359040 814559972 423330804 428065364 430242914 503043553 901091061 960285155 862621411 991089460 231312727 993460086 6072399 602112334 452853527 760527013 506729881 923490535 114455073 649849113 720379432 754130509 78169370 979034225 558208119 648622063 114428794 465777792 941140862 990050443 326880353 786018197 484016461 870224022 349041213 634313323 272746584 746389858 564478611 791374347 534890742 726053171 305885007 835578002 398089323 448328021 470261572 730578768 94987164 506601097 413098484 919751076 408332719 830648303 921438781 942396258 411470878 982361987 254828520 376225257 65421574 77252193 760893086 771885348 760941308 834960896 944139766 947339381 789992948 822914542 840260346 907076866 87174386 930618623 555978147 633503284 204899313 496755380 129855754 328589536 411537249 423829690 480432166 680985407 443090681 978376924 716743885 721756419 601993989 795557514 857770574 932966760 623878659 711178415 54269513 670643851 47868000 678024361 184155214 281981714 925153943 944786580 322143220 749782065 879291620 886406004 437717573 874966783 445324917 638481678 199503942 682968678 401893586 585867519 1177842 745240114 497877568 876490201 929252352 935787777 84889767 536187695 12008641 425153871 928595043 940202420 68997758 390964781 698824009 791572842 548910071 668754210 788405395 847723783 854028827 930282580 288760926 533164705 341707190 678239276 7055006 267503659 913603595 920972111 625154744 964194474 313156772 809543645 776776957 935997991 251819204 310578731 840947691 982151564 426463090 892820499 483474791 998936955 677984239 853227904 275781161 842057209 886828188 890933454 366867303 610967505 369970469 392631751 544321276 673210375 861484125 939891511 156664565 168264373 709940068 735422532 352490171 553024487 132160007 254644281 901629827 981186570 94418021 390431119 864074363 957086969 543406916 561864122 641859914 784397842 82336753 201624543 34234219 520488040 551626140 702199039 714062014 796648703 787100889 981635996 171524280 554638182 188803100 300109709 496953162 554107620 938821764 982830131 78714782 547115895 626425366 906099153 941278926 992287049 731471652 997618732 71722171 289450590 71798325 978482018 193074356 800446243 467684673 539243643 637710203 829847107 562432217 596016575 544955078 621688400 622867074 819890049 606464733 980783780 392717227 787066897 677426586 904374564 765362250 902214081 660687503 804735902 132943759 204249768 916407179 974993497 496975969 910100655 166949181 787937006 738097896 816306822 647572950 830010687 972099166 978123600 807240796 817618213 414030404 723660431 270313511 681275080 680765434 956095274 727965587 800654437 278724734 328798617 808698499 999732108 807731904 979502785 42545755 631469997 985644204 995451540 728094466 851689691 615360665 662559803 457961978 787434510 772139377 798028860 317244230 503581838 909365685 985539441 121698767 876179368 360540983 515629023 216816343 643505966 182545289 657841013 69371641 678125783 552387346 553511125 726598276 843989192 631186258 968095339 622153222 964467914 943321324 948367361 217277503 487571015 685451632 889558751 529120370 573217392 940728049 970063461 893110755 946504202 298435147 863579990 620794323 926362847 922449183 924325974 338328877 677835432 492234219 930044353 136646493 483199607 123798127 750536454 345116494 603303212 480276589 509934749 613395001 628002641 89986773 884147328 282997572 759863367 490443800 958636858 22905395 274143251 331753377 887192303 93521148 772644900 989573242 993077359 226385620 982498099 481014034 617391202 122519627 490916797 779737066 894063652 254937168 422835668 126845123 447502492 460439686 764854135 399829281 645764827 46540046 862116716 432615890 454663379 844865202 958197566 776201649 996936192 974844681 996757970 894207513 953887065 413594627 949439059 977915665 981868972 276700621 821914312 617439418 787098610 217687861 957949197 339897330 375803409 830704391 872518515 463316477 732348344 419288813 686243746 224248062 538960163 301383072 643140411 204685875 565932930 74450832 772645489 441723705 615262075 494562878 841520745 248844480 418628136 453251191 888864228 274457095 642232688 697832309 780019621 654142116 778826022 7712839 617561448 823678123 949600823 511061613 644025830 450638202 623669075 308345198 972746601 164683807 908952248 869503293 922563978 887945027 986878293 76327736 574866604 198036484 375046484 934916342 958739881 705184631 783808183 563285831 905360086 414947291 535437501 690302621 846684792 995246585 997761842 455975397 967046353 278242982 802639790 155873618 242011476 806665431 977653765 182543046 798739626 465045961 500099426 828577051 907634246 266135089 965385432 385111810 999852088 896560117 952696348 416004187 726607438 298653904 604225728 868480623 986552727 647419114 936101667 178859894 909106979 569293487 716743122 256865025 997665077 677664886 817210430 503311348 796277777 356553503 678776175 543753900 614521084 991155076 994789169 471821427 634157485 907938418 968230474 372090394 908289459 31281229 453042095 685071919 862644050 438157927 998849207 478229498 540297184 583493878 856402276 257675318 377792000 892519872 896539516 44165278 69382957 770235249 967875247 803268942 963878876 326000180 571533724 805241662 931033411 833886167 982061799 233589250 679969445 748376676 939962125 653228702 764227758 830073818 871171685 566065174 810761256 801573484 922406449 716661381 915519103 485668724 536164085 359242851 476976024 19767992 907363055 352118241 402529045 503320340 843107802 171752897 983803369 701276925 770053292 480397954 993298857 185955188 315896479 292596796 355763659 622160912 974539132 531535582 896554284 879649613 904834539 387016803 425227510 532030216 967877212 858321746 919505514 835352881 911839599 707306552 826175772 241704736 415544460 291827694 480617526 696192037 745780638 515925548 550804018 90746967 699814883 5166471 267300068 254569009 669692810 968850452 976661328 333653755 477625375 79547965 601585325 736702197 868775528 391933165 830380319 711312045 794838809 30744445 726768299 253253524 967317820 521039815 582245481 843875668 975662975 589893446 879481072 89151810 604008204 401774340 883139350 554922942 931928820 34112205 260920430 136497378 712070441 898640533 984587592 523342410 806911098 388492205 915556156 197168366 301888324 94127396 217299578 847931954 934471106 192445069 793601401 736586338 815153544 711306829 959399737 295378801 965070217 772214687 905196664 650279689 848238578 144957704 358006677 656988038 932943879 270693316 760539073 2609633 292553619 594179960 601238312 191347355 685283985 950106422 979095360 585858098 865809811 351695101 762983632 577574953 863503955 913737226 996898208 55725277 818071724 396697641 898069313 946927048 946965386 612896661 818149330 800605310 846187205 41286680 955386439 955294714 974492917 186922594 577777790 190691677 888901559 243097639 972652092 955457156 968655925 87503862 931849209 115892522 930107840 469853692 486538123 89706161 629798337 997763315 998731606 965047474 971076920 349838062 643935005 652890244 871803703 70232305 403510446 605308061 679632775 666715711 814728806 251171434 762198955 568943664 962686802 622643179 779488741 628006025 958143256 400259939 995764905 40407683 714833774 363643098 659812091 963790024 993361664 447880111 582905221 680845915 742480488 644243552 929432763 812023350 871696306 344673500 734954124 89990731 271512488 988337640 991773026 354127342 688443886 858468300 986051247 99162684 277697064 145452869 661644837 401175761 540929727 42975880 214400844 263472446 616316816 49834192 950361661 147095202 291603995 964407342 989101280 688960474 705397394 201689588 909816568 396698479 533712292 928440609 933968687 870629467 932962455 122751133 207108908 376278493 860459273 56514863 158960820 79972580 128303553 641161064 929785632 857933441 918471448 699007244 923812621 784157833 831323076 315588655 959528613 195326704 944859022 397962902 538091465 473600807 535901263 48020359 310108806 96605531 767676869 221514013 315897071 605564518 726321010 90327467 520270608 502817502 926005906 173752218 815491243 275550155 939056032 533946911 694442530 570122683 725422205 539901215 712164526 249699220 524859868 787214753 981513517 780008527 927014586 157532917 532990104 15104939 743965070 243711748 939376525 214750089 623993547 479315938 597557367 555940306 997803332 79597387 508959628 190058855 530991739 59625241 328960057 8933078 85083899 552001337 920939089 772465765 859173765 519663849 594091395 661234326 958994982 779322819 922805741 798771614 860985916 49533329 794662509 449500112 491004275 992454085 994992486 71856013 694386208 306064478 697308288 390061098 799551870 813491854 865314632 311544413 341043967 22466483 319021179 639901432 738426659 906494635 952938925 404547945 442822438 437905766 783796363 559820555 928767540 232249755 768190677 692834549 893211812 214689939 881243506 864142276 954359630 460172458 595428075 285024554 452124145 374171345 777896310 999933583 999970051 749326906 813515929 116163499 771310709 111242241 857895449 946685732 979483207 311135851 853889173 470731083 791361332 100314343 879334118 225308452 710109068 381345312 903492108 910672045 930911263 546615173 847696067 106296640 232399628 227176501 506615703 810765258 855561185 351899189 965783854 919692921 990663626 245473176 813117808 245497987 709384690 462529769 715263609 22783451 553360996 999984759 999992809 681245463 921892292 432319960 623508598 84908239 720213302 129501729 366073884 959037830 973792356 306536123 842039678 877998588 992636814 709596768 894977489 935916776 956906900 296534741 761870586 752136617 949592157 396095861 855420210 811837350 945115577 352919654 695803456 955533099 963149402 89069319 918872961 618534338 896336900 191542919 227276471 294576820 326103880 754209079 958267071 482582758 538295973 195430121 741977549 674829578 798812737 515828351 794420763 243485359 526284170 169478591 867203845 76512404 637694924 233672518 791457940 817216693 935711232 800653841 930213364 572787657 937877982 326485870 559394272 258955786 389413855 93205968 852267351 118884338 351827861 195471605 600698932 970213851 988429284 170209766 522929586 103701229 765639349 359065301 765156337 430414728 895588096 303939513 891570743 339211797 429226245 125066240 957620420 189889790 502208366 131877300 135312397 738576908 973514182 201067725 416097371 938515074 957834781 349029883 452202956 33983240 528387416 725191702 732940081 844886084 868034606 87445353 312831610 302013464 463275343 539220134 690738768 664553764 810675017 594565423 655612083 693859277 814697993 285801026 624938668 231633703 689597568 479250939 533496173 712391997 806953204 311939303 476062499 176368921 432915684 832064389 837618331 410416429 994077839 906685094 926594362 354843195 482406765 224069235 672499030 74692322 329942657 472107405 718592987 346800538 361338860 910022271 988920468 415615919 436812289 477542369 881567609 394393077 588821274 366629820 844747380 661242931 856488949 811437313 889895597 318795634 818011734 693465482 736428752 704294889 818115581 784825865 892268358 698069334 801358015 87891714 465589123 219468934 479996554 541155006 680791287 19324685 422466224 719251257 817746287 573252502 654859161 229056938 901463325 276455292 629246789 597704883 604607835 869670980 928531575 357107476 916449622 156861082 638619691 373322012 874135823 475323454 858463036 133201206 646875982 333028122 676640545 588033850 660547283 881304838 919588567 734626961 932580763 382592630 688681855 206734097 447493429 482512831 626083590 151146373 318464011 62272919 922745891 868243275 927474461 39898195 910698376 304908957 674154272 703247941 725986567 38747707 263216860 25292659 665716817 416718226 641228750 251098261 331365340 780409753 791371873 50501492 958689305 537329939 695765204 129684153 393943430 856024247 937784185 988831497 998982198 905884050 967064475 263902764 877900266 192877017 262232715 312287428 530144178 944112395 997958954 686658278 755108718 923175567 974142123 25563728 652747959 757325324 899230504 923325046 968980532 952215551 999640522 620472110 893479400 969122328 992848649 841509015 987874133 634051239 929038401 62171134 831401325 596409263 835916372 462721993 610316523 616865351 827349851 695528117 983629319 737230314 903713650 591660830 755719703 440079311 865511951 570666766 864728605 972362591 998625414 251944974 893737390 978960260 979709559 408157032 454429225 538848543 721407283 894943009 942617088 518994335 825268923 673172348 718641429 452152860 456753689 878208216 918416052 646482617 899745662 153380247 982932166 574664233 800386447 374952752 513279120 402783467 871334424 919415877 952502122 564878603 783911583 527939822 550829975 134375898 938811670 757307428 844507431 148436239 503155486 897499156 910201823 721682175 934858207 497215089 941089868 338814165 731787804 619455684 835489050 237976632 908098908 938303224 945990969 879101518 941925219 220602108 992366688 630742608 843131670 167404242 311376074 370683417 918359585 311992863 843089322 60563823 592732163 691514318 882565613 755542898 830031156 849989917 936143737 777785614 918726357 861201454 894368013 305120864 901330632 74918844 219084541 343425474 346445924 144305251 400051464 473942826 518213844 961731356 985216582 218341617 256179490 530585026 929644896 459944146 663863741 783238462 798644102 132051757 760024099 995104610 999191181 640054351 826855302 354416589 589900013 563298387 709148237 527076526 533031168 306676640 842674113 113192593 306073135 342135759 955880844 966255640 978544059 223835901 374105002 850018482 918159199 280952514 749424518 124453437 880211681 15008404 683721146 19355960 527501186 534452896 756729313 485945127 651864400 290464159 653729971 29746786 962033102 844635028 969206978 899890082 985280526 134046775 508505448 18589875 920159022 348630627 709652165 709888164 912455106 834327596 873464623 307555194 792206045 201656243 696750598 134939123 970857433 484387005 538779939 390826631 854417448 361252708 886596561 999582723 999792749 61814009 874875687 928229858 989648431 803055215 895359820 101071770 240271463 367047215 789228526 838847998 868002103 322252666 706180832 542209702 952131154 633499401 902736815 527172956 778910831 231873170 501538321 414507964 596556958 770722228 801104701 598485982 633614287 554449897 806078234 389603446 404076173 824539636 826175487 468276117 760973886 699276834 932419614 467826564 759461602 689295195 790182066 183958088 968542291 294769822 665381146 809278074 976766605 419932777 698205756 767034440 815209990 204041301 330771214 988692855 991096152 274119808 466826349 616392697 711056442 279913911 411283228 544171241 918329984 673137384 908098889 432103632 753302571 793487950 994837363 111440967 381074591 889063913 950543270 992605429 997472278 149943877 587507622 33507005 769193507 731375705 999855145 723704212 940852969 468187350 622640609 905393540 964091360 596692054 815271712 642045451 940053168 489443714 913807743 683445264 772383275 524819479 844195504 907252563 993566575 769553114 878362441 539824290 636909850 34161569 799630957 454633921 945147720 789369119 941076310 322031210 518553251 198646540 911207152 224624257 923217538 142821490 636938855 554162906 721866172 647214941 686087019 892226522 958882146 849468023 899270177 6828198 795573891 866493020 984532025 604868687 743364593 266114644 611579731 553885649 592302585 233007675 647550663 283163573 869650064 329704898 427069998 776876415 967203600 128870357 978682229 459465469 529102463 513407156 872388395 417073914 564914863 182858050 622502587 965704406 983016629 166076014 863856490 850732006 979730702 324649921 957187547 590201961 605871058 266003954 510020556 495456622 954178089 984131298 999224054 418530076 832196768 978446606 985138787 379981521 561724107 826799223 959185150 812848661 949057275 122741862 779369751 132962469 415635453 700066857 738744905 337413231 535599708 123555502 424739819 461163325 505833110 911142571 934337167 227735523 262928161 902713429 924800336 706258528 762943001 481142782 621094209 653244498 818442885 251585470 529648531 560422574 768087482 549792605 704239512 265808968 331657378 300129139 911584855 101563003 923039514 721721140 784246826 100095718 297083879 377174238 517684461 723953848 909296674 89500538 775587682 532612235 740770119 416483505 578694221 106131181 537581744 581360830 753697015 423323741 813002949 888687102 998542747 396436405 764031426 772553323 912180030 424483410 526129268 535489895 861080890 631919176 701881032 992664924 994820717 947578117 971246290 714690102 721243305 265817917 530872022 30574007 697322711 769340189 908736002 646049035 780640637 506035593 731343624 475428437 489134125 61474004 121079467 331928748 539233881 638376660 933216885 715154987 991749747 980816860 985572435 692942265 906219089 658425359 883348767 405866538 644886367 993841004 995719208 327504240 455358883 452338246 985052417 234833245 749115318 875380756 877953068 615860772 806306594 689180018 836177402 462122464 589685072 869359668 884558223 311690335 479093336 722712357 971754426 40238810 839629433 47107953 140257334 877767650 890077007 2660469 933994120 142969525 252066234 322207552 931758291 583698153 885374152 983804932 987313621 790571748 963021132 187415531 788266517 820114576 879303167 989536388 993995578 593499457 654710362 701124186 760885423 144478740 447114663 504073152 663769609 69177208 626882829 404368567 774107957 205941669 224138820 829796657 963606362 923857131 957663399 471473571 596344750 83286529 863105037 452126258 777661263 60009901 478285516 154797939 853258543 528845629 812106150 829754218 856016951 229937418 945413131 292123187 955462539 423147526 810952569 678022047 838031269 378747470 937249485 711754539 920272973 598506307 664269595 717868739 969412813 875772250 990829715 726504905 895070348 30946435 381852471 377118222 920500991 331926673 591296224 373531872 660455241 979756938 983321925 847853883 854980435 190418399 903600490 397087762 975863808 743766879 868364393 154400700 856938939 22065585 697804949 531323969 873052162 679341658 993695788 60843995 448768507 347214577 679448440 643243723 712861183 9456273 63301244 973384821 977430519 27901387 770633662 356674168 474885433 286768776 429617966 174408142 209394636 636628842 960364036 286616217 592073453 576613086 827862049 44043893 731486057 872241301 930877821 477339144 915578442 361979548 527570022 433963431 779161598 316177421 957922575 6541799 51804100 367005033 779888070 542040959 942291609 616006708 922305111 431613879 752538990 306744662 613218244 328135219 655081490 601026962 687361422 964893229 973300137 778869155 828673627 980483358 995282829 621392512 974996326 452468996 657686423 491137573 510597037 106166893 333554530 974213940 979875969 766638571 871977619 165072046 891291484 747689782 799361213 340241644 883107170 271701373 777821673 320279816 766732333 690039224 730810698 213210883 952918486 878730823 994244195 306033958 595280229 881715146 900775328 113081220 448289520 31475969 875950869 598498401 727855568 846811228 966366286 517914751 648344400 339622059 979100086 466144526 517362684 562603039 662422857 61359345 566021820 499245377 775195669 478649825 758300774 167756612 544868465 611115693 621858417 864594044 884534234 414935424 877028590 988086884 992516916 496644893 529695233 995195625 999122713 357200288 779577246 239159268 543979472 533502546 682344156 317346065 838718733 101272707 210249711 119512430 432272026 70683527 683396095 559382337 657160193 154324503 988298297 718626922 781786756 570517061 607627919 87546296 106329249 671324483 729483859 866515455 895952034 624024101 815617385 788096389 815352965 610085585 996793807 857162618 925754658 631440115 798318524 344775702 876682508 873275768 878745798 44534045 605024790 527472746 695660911 226342172 244414710 417988984 620564870 151657683 601435550 20535492 226893150 717944398 729744305 693160742 906920599 840361952 998751140 236987705 558440115 269055943 459922542 578629350 725222061 239308615 754985447 66124827 746749721 770013433 972363485 827845195 941796458 86528512 263998291 119575824 463125953 570980980 683171079 659275746 946697545 12667488 279592892 240535759 788720166 687965430 766392319 338500993 871131549 625290845 965829059 110381852 384698215 602584555 623562492 447433446 818587088 87909960 947416508 261939575 977329667 697799989 795301254 451529818 769072060 882085502 906729345 119615845 831689256 65644340 320500005 356427069 757225206 171907552 249178854 906362679 926510812 79744419 493731137 313213594 703521330 907822842 936218053 917565680 956991911 612278475 679478840 378361682 800803664 924105705 984639710 207137350 690218672 982927052 990721351 949078405 996964323 14797879 438372331 295914577 560908595 594777628 997821210 522122477 908727142 647090420 949702513 242233431 944927667 359192927 386601556 892367737 951157582 491337842 759293415 857695787 938199806 475963071 738778666 279934853 379124632 789960833 902015971 586781084 596100302 960550724 972011814 726681729 869515480 512488212 662958860 366876333 627640282 308609199 366495228 151266555 753027513 100173336 540480795 559226822 865344280 10798415 757772329 704019541 810036684 459741346 627970245 375400168 391033483 224874466 696300816 893194787 957918455 530502833 593764460 943831535 955340656 372114671 426991664 817791118 942349036 160665151 686331293 944772110 994783369 293650110 341769699 380222973 904989498 294974139 867229469 559675785 971472755 793467828 884011915 11125112 270937720 284595630 731209448 385354604 423613724 587775650 991556261 2638633 502178067 922612103 956956865 25583617 132138015 626902715 952018377 438614730 574842115 784599220 984157582 882605541 947316424 469206343 701410545 394928052 859449997 302185636 802765519 239331282 396303075 221647725 253877003 238551530 942574614 904068141 922151328 501586104 608139929 960951851 975558256 530819849 543121176 665881030 970348170 111534172 565230744 585359221 860383928 732922899 990542830 585565462 947602200 487328566 556761838 332930417 334339265 950506855 986434569 416746846 599991756 996417483 998999336 373301655 489034411 201646235 820072763 336164130 976972250 139587467 459960937 793966357 960542640 744967572 909242854 58730197 616752840 129937785 261255489 766020524 873086048 631327113 868976893 255741006 354267451 158781182 554343815 241922769 439636394 88593492 312247828 187291838 922073444 211946079 756964035 139322471 668098374 49521213 333949276 689850097 826023288 9517450 149691726 8699453 618974143 185791403 287876505 966295698 979068479 585187562 893271775 902993060 985421235 49078962 81767960 134257645 196778627 353137432 448759723 292327291 316627556 639005332 880892682 906816205 970974426 839981707 841401346 950831089 995675748 556921410 587538957 913370651 990139136 666620832 892652670 81899326 969359231 178770033 892347085 542881926 581249915 202787132 616036285 73667414 258662946 519530808 774270027 672552473 966365007 13975369 41952348 765715371 804795006 605868860 966578282 387810963 981606803 213864186 900494483 188417 133963671 922061715 954353993 755071448 838058861 205976106 819555168 409072150 788085395 830126893 860155092 798861096 959672128 185569664 500124051 70667849 546195205 135247635 539363573 46750281 62459429 597422927 828404472 605739344 821147529 162477878 202040008 964555256 974845735 696637382 982225044 576041834 996068345 796113722 839833157 689870174 934771749 12112683 641649043 527339104 619396072 576320633 850882370 184995770 600398193 637852604 860460451 176544850 906356333 932099801 980377808 632140708 943931115 944778531 951280623 402990506 843294931 467963685 597241459 119244440 472151940 67847160 179928297 302375702 573576778 720153204 822509783 824737639 956680466 475297653 947877725 750659547 811969537 950139391 976857155 773174724 963034372 130819104 291647363 671857873 768833151 420537254 606698910 212676667 447954248 508319901 656529140 589061818 717872801 2693611 822128793 882331716 959271831 231308780 841462802 544783152 830521769 107500414 977914201 986682610 998178939 282464984 361229098 376481528 892938297 785620002 900595611 926185089 947078616 497213247 556074901 714616629 849402264 435264291 744636254 284152197 550805920 336167547 405380774 97757733 133654203 901946003 945112840 68336662 551238906 902037498 928242915 138913154 528720960 847807892 978383449 647927623 892173537 851786445 920748476 472581744 622352628 677646125 855540988 10027021 22191174 177467938 855708203 16581490 488976364 776296250 940322105 482086815 531089480 895433676 914875624 277794366 757278332 51073426 922169284 217453161 969187289 525232819 536957049 995298360 997245518 263753843 685485230 951002590 985843217 180734955 684200812 240257561 528009821 317766821 349054412 502089363 943735517 847198793 988967181 545018647 832119628 343972735 594629907 755875238 806585945 919506751 931851394 915533042 960884748 167308834 864074736 248106089 420023250 10124950 954836852 153674311 993797714 117523112 242287494 70188279 647781960 682569011 877124177 210898004 769012024 237292925 695373183 375937468 595844905 479479476 611415969 420181120 800748518 672793029 734115487 623603057 961564787 27860745 473622825 667801774 758450829 651199154 971959674 713656707 961735169 689827614 872343447 882210035 965692063 482059819 757993947 449324071 718480716 168621837 614520915 166293836 783307864 501548039 617313646 729767643 783332695 407179557 966776126 601407788 749061456 879342540 959923896 564235536 754644500 332574262 917770418 821612750 982454746 533244853 858040319 830353707 917950566 277227602 983914108 381257339 904765989 207582569 840600271 512921094 626082542 75995773 437711070 703295685 867137751 847694185 937118310 637295341 892817215 314951375 334050349 124217907 682320152 99254156 472257343 761400714 979180186 216639090 316066817 765437868 927485417 640106935 905320333 287289975 831405362 182341957 958644940 609888578 900872651 118478303 548048000 404831562 504430037 415065911 779144281 136969721 909213306 478848018 666840209 524923807 991344332 508630898 582195911 189648663 277713001 58270876 985758832 335949440 942884333 595391689 961029216 610751107 931007775 933264696 982404020 870401296 991292387 634285826 691677139 847893392 962350623 761163660 917146635 971302812 988304009 824265832 951890949 503374526 706755863 263205744 347451885 355157738 967419937 396306673 598461367 233790418 395648791 11175618 466814213 763098549 929383382 770073165 884942800 35225406 532184158 944355777 988411537 17866876 50094522 514140170 792840895 836382281 989114035 175513632 618758725 394003348 515669171 71327133 825525146 537522785 925360478 910156208 924693227 678811586 867244672 178715126 932997317 294266790 955057880 695919261 834815223 966963193 971594012 533123014 889256874 119628194 570748944 684910037 934606743 289375136 391708911 370101847 617258709 386402349 386712775 59428050 579260681 840695113 864404538 270079427 987077508 622444392 791648086 999920353 999965562 269692324 708032709 959435880 984175982 25413632 889351402 841677905 941029054 412252149 523926797 68803989 265559295 488184501 979603396 690864256 751779649 694062589 909600230 289186863 927611788 217478824 930137589 891357693 894994608 306848821 801162601 436052971 907864071 388497120 482428580 723648831 971647607 212675022 235801590 554193642 845856515 696502758 736670973 173536217 593179684 492995128 672871445 17238467 377143394 581054863 878759106 866314520 868867990 581461908 696155548 156371830 841010406 819870628 960682108 543300188 859908679 858756519 936652607 577559914 841453211 927072623 995317643 798656703 855209236 977813165 988531600 328962055 431825218 883000823 941772474 854680891 883054364 930282027 973771859 312784483 958927667 478108296 913324988 415493926 465615364 811134761 813391568 896018638 990544506 569547267 927862035 609273528 893259585 692001742 716601617 393665197 859091693 773192596 864331705 198799389 985680783 235644539 279215134 790434350 866102403 179798867 350170845 62706736 361355215 750549776 794185395 585660198 971594024 813972924 834003637 122481379 638158136 643189040 887556475 914079416 987612862 851750171 914702245 874415241 930829079 989783763 998598355 510696070 898006116 617496349 814397290 192810485 942071824 837449975 980634511 148521489 625683769 756295566 820411981 391422790 682328419 290446695 792539247 931278192 937718877 874810413 934698635 630070864 986356324 517879002 613648752 104224009 595393767 839211107 944616109 47664871 353120147 666417947 861126554 371009793 408286656 453933205 914319639 339538013 631824580 347523227 755953877 443471437 644114048 238863273 622197428 937773824 986855610 407940393 635837331 248196695 628679767 417871641 465407872 897004060 905340959 417908664 439850533 44303971 243154465 729524070 951193909 808399605 815063887 374282565 691689845 42048276 677279599 807338173 809990753 253607062 274192273 748895091 991121049 193650020 881577139 509589379 793067817 938242693 957813972 666176636 906025877 508081015 939746856 990507948 996163256 974338637 976200199 601474148 906058382 527634512 773366731 197925283 407815227 720764162 765612714 514394737 612386548 877502321 912960878 874655489 993256324 438162315 745717886 487243849 516332101 815485250 824506646 890388233 950710417 769362446 836563250 623489740 682456916 813204548 872432067 533884629 856910952 658278867 745193149 870001444 885697126 357423360 931011499 291281183 562064788 696932448 731359090 526671635 908561197 4771220 863383670 203053162 542080714 460228116 757746234 228517697 882840549 755714836 908354247 70868928 332887677 758042976 954328779 354473095 706829075 138504866 902092589 944455483 986911710 996439743 996800993 545244818 565971073 640582321 865963235 410401612 728910595 125305478 378669422 961262633 970830739 624796022 985984406 886780442 966252313 379429851 550236349 387725324 821599342 756315223 853252068 598958719 621853564 285218877 294525561 589586928 633692986 359950338 683529698 249089697 968835497 780671607 990460095 941361402 975097976 938772002 975452856 601012869 749929990 505042110 511233157 243073901 677148439 540798879 746813870 321956916 355584406 931694342 957363037 862662010 864632899 930350108 943681736 618820352 656172552 591692369 646238525 674762684 841028523 193651582 777664117 823394556 875097993 729829493 744644385 913054934 935236227 865185823 900875867 349923002 947803367 168761664 818248999 89701169 313889211 866904529 933900773 528124829 859765726 336133174 794048289 497151398 700486370 33993347 161542424 430613647 477338266 344317870 599154378 579082068 784683449 639162784 921461915 955517132 961847969 525191107 663263617 53536529 352149980 878093510 925150069 341240301 755160673 686375889 786689375 426264171 743080792 692446736 788611485 898718950 990439763 655357346 826321275 555955307 641817135 920040220 946371704 347616964 627212739 838340587 913851989 145279392 870742302 13060531 314821809 99259271 811721531 569198479 626903441 175286950 332109669 939520022 944163235 933846130 999579373 237708424 731615914 912150334 989710850 976445084 992521562 207083916 207282929 929246506 961288265 601182728 991986386 334477986 460787099 899004934 932583162 193422995 479187956 627877819 701531147 151954939 793771116 182122966 735649344 298428101 326562270 18801092 677604515 346756408 468077034 50733573 531284436 225219702 999072412 775898619 851197790 675587145 677517102 169324806 323302351 748094835 832958554 674076348 972877660 747497915 759454598 435206729 798084411 767757651 992428460 864301317 912484780 752292887 873117460 123024785 955677284 682441067 763466799 241835945 343623862 517246117 604520075 673591411 873340247 421620416 729185317 936343176 953383167 533896836 980389581 790125449 915052783 589044362 625262744 620187928 707275723 807174571 900492920 499750293 669722594 247144545 692747409 887442281 914908116 836610527 871140364 844553067 954175021 873681500 932308078 107255882 131656869 211924209 894921920 290292352 677380035 654562656 747102829 236842383 820651546 51537958 137036186 125177204 529033459 343015361 977328622 635964236 772908938 621846725 802546001 286910146 544549000 711622547 876345111 205919783 547632443 480677860 928075508 615556948 677948184 679466443 690985747 585902013 761753790 546216939 551719286 75646309 532400387 754341614 816469055 582821505 935652239 669330705 781349472 437703478 872456749 459905120 837837751 330591522 365577223 664704973 755636744 165864931 638363058 127529324 886332478 46736076 504096989 182283757 746209168 393841947 892242664 370490229 438153510 4357015 595348378 894894916 985608723 416265708 710094132 983623712 984632142 870681829 913890616 401736226 554650482 886686725 924204073 562011675 610717858 600281109 721031127 168989526 243736811 317903147 555848449 22717712 402491133 22126095 908778642 346726762 444565422 498217391 592284555 750263783 806694684 766754348 897680102 565603407 781198025 740083760 898425692 892097174 922575633 214371920 728677349 833285898 961274427 399677648 615605669 301850518 986269646 41030257 592596854 187591303 355582013 273217514 946912892 571446419 652909516 50058898 999498785 686759437 848529655 809689958 900131729 788497394 845928795 14176132 657127733 175715140 311313912 458868121 674406034 112495331 396708512 342521388 570396105 416952145 955480210 687650719 860374574 547638183 989641257 88773631 150056897 238072031 667194176 917696802 986868844 471936302 652677387 868228047 945702963 504706524 902349843 662966864 773379554 555188538 611358879 682666975 879215571 129970711 920197207 228490252 498610194 593744992 594575250 44288021 745539266 661739447 909063034 621064193 772473317 758882980 864787223 122697989 179658515 237975548 936880173 188007806 855396244 119152016 614437908 550468731 686737650 757646325 768695411 175271505 236247740 437651177 841319831 796371563 890206866 882189905 915500335 73077284 308683477 565107744 812628667 152033518 465001984 291759825 739096180 22612946 788540141 698969205 882793530 899759456 970897837 150458702 664860709 369396568 699656536 92639848 469239106 461178553 861499558 212811458 594544427 745345075 860191451 722925647 915006514 935473571 942541585 743824783 889606255 254194679 399392761 543127473 915024872 366815332 380079634 244652217 710161861 125772557 633563323 853296207 894866079 143271951 293128491 147063122 737379053 928828779 993872557 567129387 912884192 393117990 643709831 160486353 407639262 34542637 939004388 600586021 891833155 518127545 779787090 474618922 742632523 835061503 912201946 172857657 760031040 619463671 947228850 297358282 834179665 614354421 877709569 795227050 973997467 836392880 858205133 740032962 967146700 695067389 754812105 796716790 999844412 67899748 860776110 350510098 372059975 594872903 754915521 430379496 633647748 27983397 485838733 567199054 950186884 675725993 828706861 520489137 729187558 982348995 987313136 520522446 864948567 36352435 398717251 373873678 470526056 923449069 940217858 925772875 959593203 475453516 588537675 877960211 984267019 9931245 939439793 263866671 409135402 484145878 651232959 584689972 771460294 312377826 714520026 14367906 486517300 646444002 952823619 253885185 643919343 737382648 742137480 30517574 453636508 831925195 858722593 468337025 971032740 798489042 949829518 183628386 517117215 336099703 967667873 973684365 998330707 267449780 940145674 197834600 451978992 528304679 972615726 404974396 770742100 157047733 671733192 343667208 875721180 595508085 629062063 235329618 996216247 880359582 928289578 651151621 860272142 415460491 758088790 366801471 549143996 326601791 536712237 43799576 108020221 482877814 870520188 365252798 949100515 317927949 329501009 333138729 465196840 388457704 934693980 896013297 968593614 811541638 979297702 83051749 308069913 721300813 940740090 889186764 904444816 677742435 808058879 740119095 969342009 918533774 936965061 427570 722262701 196284835 299519887 716769720 958147052 385487675 530605588 38767111 525694766 215129113 943187427 806610230 854974745 782922689 859885664 753357128 845239239 947131381 983846667 377196171 589694972 7582581 64367647 702933827 782640624 565688490 875827932 676120926 899949500 461631655 682497992 646218784 840691433 509365457 857739424 715449710 849140832 431332862 536473255 704722807 914425383 489382026 860213407 807843579 971124271 463249000 705713416 573699884 610080374 58293922 593765119 495116235 525944415 777120202 852007584 897792582 981311473 575396667 929170923 202045345 248823311 488906589 712663096 376971898 879051042 71187502 565979800 986033244 997286154 28745415 483724792 653407815 732369431 315631569 578430730 102818522 663711413 971205960 999753809 546023280 783170041 621962269 912081604 560207748 798967512 965021259 984888106 607242631 964419454 663044871 789756776 146999245 989917518 320434017 857777737 340742991 716912208 100144869 401376888 307435839 480865878 41689911 196148077 922069645 930494463 802691381 871708226 141777205 303848192 886308345 922455906 99333639 835393376 538739883 752775812 790797335 907959336 672783428 893274034 249796859 550575842 97574498 891250219 623690523 880374991 20319089 749573351 918104307 970514258 646736699 722727336 894303732 958102731 762621299 973320530 886195847 957362425 252067865 759420668 241844044 983057027 192114785 674323809 47910814 194714397 397315467 728366841 485228591 996307282 39576688 994433845 499443692 552920191 375849847 531697007 56793315 440644460 596751649 783136143 774851703 854910691 702797021 704406156 446469265 598895041 443473945 985077814 591556535 783744372 530322336 876171348 921647524 978471398 28758674 662762971 922451707 965958095 274041720 894451383 831771448 904935505 620158899 983364409 783432395 814776175 756704720 763983502 701725850 981675763 890977405 977139288 649828365 868361792 944597424 966145047 606299780 644100072 514109222 732868975 542017481 867048801 50109567 422913911 890898225 913791633 595509316 964045085 493803247 740645193 106941128 462773447 632612014 785868859 360210539 684046019 684793267 704873710 434414558 945344946 820306910 891431484 454547046 869875331 165551682 782131790 824472505 877052936 226894900 567381154 11297577 420107075 646401557 883052162 623835478 936457972 710551587 918013223 229889198 588127719 179864018 833614130 203616852 730057448 86566089 141079383 317417252 543680033 505741895 693578465 805632604 905636053 357248879 778576276 653140340 898357652 955756313 963686894 676616998 849635426 52846570 316971555 372378082 797187459 554245049 581246732 890234849 911199843 165806922 449202176 81599108 743791117 483289672 743389186 831145934 922628306 387167501 966059942 265642090 333932871 540108335 845544860 461214770 517341221 879352774 977681821 550475266 981346242 98836007 656592881 403996004 804501435 851942977 891433318 569468722 828035552 898659267 935028016 63610786 414416991 537160621 683421146 312985886 450351339 851918630 913421199 526052517 807092151 102421609 419504864 579662044 759697657 124205476 519968002 827936200 937404518 25081956 623044273 54540882 806046646 527248070 757331480 968639191 976758055 355998946 902348812 406258549 827441127 452296695 563760457 220635817 627362240 196383520 975887900 533208922 929855237 291482570 421479576 208565690 762994375 595015317 635314087 739847497 792977380 92975856 616728317 237501715 386668442 295302196 495737163 284648791 377386334 379024260 737571915 348813796 350090566 179824682 378923295 980865197 982044474 46655445 641724824 576270938 618160142 608489776 752998306 749242869 918336214 554353871 808754776 896677351 951245973 372190178 465291090 687938291 759536269 216445431 855526661 610910333 975491317 607307904 967471606 986228680 998628525 121053569 951645725 787152357 839987920 274455577 692742226 714727000 918389483 61001419 962870079 229219420 243521200 594162375 834305009 937892275 983504986 572617079 698606833 748669552 959834965 35190486 581218466 195947003 673296446 126529316 584923705 876742292 993016729 755243829 759472079 679111281 887193599 166341963 202998120 322664198 682534650 653603332 894159081 25374886 648132015 842494731 964372653 146172838 184887750 790061207 895624769 101921874 276890644 608258898 759125619 410657587 483053829 934152356 947729826 861097150 994765777 251623050 338812895 208810962 419104389 895269314 937762356 340781854 588030105 879070512 892464194 485345546 700672125 368517560 902126610 47580538 134555335 744164113 867089591 65754330 783782865 403975277 435863904 747691023 821348302 919326986 954882697 930781876 963820844 427940961 767333840 473660767 514922841 21485591 209261968 99905659 817375149 800015456 958839370 848568912 988901781 223158891 919399773 690901193 716751588 518234155 714523398 786669626 918068378 860257566 922881367 296000164 507514397 244319066 988235645 974262067 988204684 992684937 993901432 734868410 978550159 409338694 612323867 632796127 734584438 856692182 884318887 254136709 750188463 608802463 642093801 950177399 951589807 552214555 922951236 250554204 452017518 342854918 357190765 182317384 509558709 286391469 933299956 84215473 375179607 588124030 693716567 204584426 698419508 269920345 353555887 935928560 966306761 221492057 825620449 237941499 827688337 920354577 942995934 812948269 847860752 744388250 751158745 259313656 364541392 932255961 949776759 220367783 357701801 509377109 695268482 142757896 607922965 905803375 935092588 328679487 443716669 910949845 992700139 637889270 644181431 598101029 702048847 761431049 909837680 730710882 886133668 447435312 704901376 871187611 952238198 887027089 932002530 377176044 994167187 624644580 970636141 980056406 992205777 587273586 612222430 854417049 929969929 374601143 959526852 308771997 771015949 629862044 942105003 94798772 167941767 291929291 613041739 386472087 453626670 957890780 966876073 584122823 661398557 831123139 846601531 311038645 974203673 837942726 884334635 758946372 938619069 36261096 723448076 872517570 956045462 556716676 954283486 736343843 790922875 837855339 866145253 665029260 752563450 580503894 774755935 60786104 943854675 537499939 902148938 248798898 901387027 468156238 619774177 356272557 617845634 552669421 784910104 923040861 936370143 441929960 755078517 131537713 659926123 216368335 724206887 999489151 999559484 94986198 165921582 996648183 997622748 547078652 789994433 789278298 814844647 239532275 512777063 175667863 569395810 168686823 695824081 872657487 994585565 445431251 959489484 655324152 995903295 692290909 961572020 533609516 973644865 158709627 759446345 454107983 645834218 661994248 855836125 381565425 671654130 208115323 860029499 94756761 159444346 398365801 764963394 614530678 872460910 875295860 988899924 728320744 771521833 169226097 806959379 646951700 858417973 887769445 973122843 806526507 899385489 118108964 299463105 391652147 570011088 805577753 838088982 80743563 708593508 298992779 760741315 861852764 878103346 144260882 217714487 173253788 838273249 356829726 441327947 77215042 637496990 978402897 991156171 1897753 765714578 830815592 945985533 746430012 877233471 907753274 975796411 934488682 996626023 579346328 917876889 182213528 749652058 324264070 376012687 770772177 927601693 188545337 526061189 816192830 921131848 250702536 827067574 416996025 815608309 256124512 558304167 850798267 995429939 307898511 468067199 232319593 647464365 207522961 788804290 868881081 975484483 776998263 794328254 888820449 900934174 640481503 785066608 651245426 856544183 266589988 276067144 95445556 300103680 392183584 975571225 69195129 885562280 936491279 942052351 268881606 657852691 35078129 595376571 341507593 845650842 18256891 49635360 3042921 399992068 70993113 91743587 321343211 462929127 147482563 563923919 734054417 927080448 576020851 962601881 350540763 590301423 520902942 975052113 513809814 825193932 917070413 997655713 638184343 801621679 67148377 979912148 775749508 783373012 20617995 437427625 131333925 296942522 660799940 732193175 113758059 275024260 361826422 392691309 895776444 998059240 33881583 480486312 665328460 813343296 310417604 721844004 120229281 359063080 737848143 929673901 43591659 264867493 463909761 916397535 80427440 560490782 455161469 602645102 581918823 885469524 304363775 905492265 712540734 806358842 517322218 656338115 270792989 706341657 416421618 889205685 436651080 811213299 59723799 749428693 844477167 986335062 353898728 621637461 643167644 646993339 178230687 592842160 728706027 738610068 939008999 990729753 734723037 942553460 475666130 597654310 160446953 607591869 61189201 497078572 82645106 692184324 693086690 732562429 570781352 949782203 6797863 517717787 164896815 760498163 657393517 925629250 917801575 933717453 632915711 986677987 519430140 533106916 990521586 999821431 388078069 809957844 891907365 922948160 822194405 963413498 74711304 374625892 674155109 904418995 991871777 995259407 265325092 563833592 827415981 946403440 389206924 958228644 104698041 898535115 317752220 890454554 371616269 798275544 318916449 843117090 574088372 715868093 574131381 982398310 605399361 818833313 409961017 428290144 621457560 972187121 399920843 941912198 5001266 277540858 650539983 907832585 726244545 893313916 725183354 926738739 541965300 710768884 398045225 552726160 853921320 867549647 233625514 409206525 836238349 935374655 521095391 529490464 923748097 973088446 407604415 839056134 40232519 803746813 465890103 517579414 95071116 230481952 941116730 994414827 324650068 891352370 486451875 744360058 266285483 743160783 131477006 178115773 945701645 974297252 739917657 901679767 132814287 184388057 660529998 667543068 986902305 995366825 326887598 982402515 320752789 814243252 521066377 969647706 607169447 750729936 692546656 910785924 102024166 534192056 171476677 382878968 980171247 985938664 552280664 583968655 728451415 841733554 736468153 983530039 613148647 993600838 290618656 453509000 75352592 956155301 736402670 889963660 788655919 962249149 476183359 534770868 850902237 858421281 794748269 828996611 560516851 820755545 438167016 691358515 928460968 979367774 903212678 927930849 829924407 830885568 987612953 994158468 307838573 693722420 383095972 556395755 292874367 467260694 248326803 789396845 655508148 914206736 749559790 924826647 85981284 453330145 654861187 912432003 447988822 543237100 705723881 816717798 115494181 298542019 875058271 877740970 988205551 999523176 720919988 856739203 793036675 896932731 533716069 952004549 580199886 637834506 216061964 355236562 585683420 948479925 721103980 733574161 633643591 954544516 676698033 995259252 115980825 671744092 912067426 921646347 998510981 999286003 186651731 941455537 687861115 954474678 819269814 879757600 751739926 819635177 336694082 338313592 652291840 874027107 56160979 327710480 547653482 837861898 553868896 673710128 836071178 954450162 885169431 912730023 635042392 919330226 927588250 996155553 246245979 993443273 65417051 354226385 135436495 290637089 58411560 78533381 418237196 760606644 545508940 589295674 428700539 620123578 169078692 367554952 599660860 792492266 896291219 915119769 809406568 957529750 36432278 572681782 23775641 239966796 766575186 941010313 9717284 82142061 534763305 645040678 418342774 801870914 621208372 755003469 850338558 864131935 80967051 390075920 966928694 989041639 481310008 533601663 739682866 932375937 455875974 459630534 365901181 979852225 541960798 868109690 492179833 766638256 520680239 526825258 273176406 812828024 869632013 895674095 354870869 785020993 916822200 973386506 59588186 682731197 333066282 412002446 704222574 788546989 551173607 702836711 178102105 376612412 694308664 860672609 610687851 770424086 330316106 723569620 271634695 900058933 811801160 982666713 687603010 860907224 973613499 979915909 84534602 110350714 595409667 750330166 289048418 847656221 703464594 873512204 908568787 928526417 709121248 782259385 663061973 828078656 733981211 913908291 881148211 975353806 664932639 763304887 174804691 972032851 27799129 334461459 322612095 621856416 292038644 526466168 119279240 830607183 103509871 321483873 456489405 905701733 654570061 903751603 8213494 921888637 549244603 691222193 104454097 680271564 121327581 518584253 304880400 697144402 348831866 600043609 172282405 869897684 213493738 350175568 44885448 608396523 371389727 456659362 268927816 577856216 751540295 775411834 478920466 771505271 186481688 570644875 172003986 598166667 299594772 522005342 354099923 577577255 278031951 960707989 51845407 181482625 371094701 378454071 283107275 603129856 284701639 956704516 968849559 985711964 198172672 516014180 271029778 636088869 578877445 715971707 198806512 393252419 254156713 479671112 34535877 711730020 274692095 713529712 490336243 671499974 733292177 853699959 528816549 873917670 828739276 992755458 936784667 943178909 642753255 807867605 518174686 583450110 720808443 831492563 806481445 890310818 722323834 846777582 829840514 894702983 303406394 432885193 375225364 799441876 268609929 817747682 793623378 926431035 388916412 948617499 782105989 985976232 898034841 925237833 334520413 817314425 182505633 402961949 135112736 834739048 590881708 662881435 956241516 973983849 515654214 893869057 877789674 958385406 779520595 932017127 683703764 694314774 532052954 863001580 584447393 945465425 543682854 793198450 147140042 917202015 25998511 842891118 734974903 786329819 15191006 622430064 230379745 521174344 464287786 488824241 261271784 510526168 153339665 170800037 159542571 597372304 950450231 965507843 394135481 630745604 690787793 882338133 859133634 901242561 205934322 875476592 687762634 877951623 395234489 974235743 268047609 678640766 553105636 800764843 433109923 487759653 902414488 994718672 19992027 341123497 346850034 358719812 266969560 367788502 330137401 342744856 795754735 910380370 341529557 469789599 736221499 742673443 760351786 871375022 797264066 814128476 8415559 400054636 25340037 442286952 729534178 756635526 416766634 569249629 324142931 987371452 263720760 759104156 695935320 862075804 674524655 760863536 437183797 570310544 925865420 944643935 500570923 505645622 242610513 551820960 172386165 767344495 913791355 997591123 671184731 928202346 195714203 628218272 808436457 928375519 691508047 947249124 630527969 812426346 213662647 939272033 254830514 904054155 72471620 289840293 735195397 839954515 167371595 937048462 562361858 813912294 464101936 679556333 830277154 897528420 899037178 920247659 682568252 802784011 700032709 881193667 896816859 907704775 122244932 569057621 799561649 922239041 302955484 918720095 989442863 999560688 803143967 856251242 534855728 994415721 142082584 943128079 981855314 989245245 659500212 669696929 935746702 956518892 109155212 672680210 240116505 419796260 432335127 998987867 381474708 562618092 777994616 803229441 300386255 562028285 244335168 503597589 179812644 427833535 92938026 448902728 596054326 596811437 844764184 927507149 936329452 974094771 511785226 587908550 276508852 700271182 264644007 600401969 31598323 387554083 409834872 861646292 769467014 786308214 726959571 873899346 108617985 834585965 959269437 976532450 284602758 694160003 593673320 672092288 754046545 812984258 327601930 725633536 156876409 231842938 947272293 976620917 416250034 682865584 623247593 986721637 218487586 968327986 866734820 932339650 627552006 985339416 994212637 998051129 917141741 956687721 147615514 899949036 567655597 839653895 300918926 919946300 257391957 750408510 669719788 935450260 322118505 870745486 721238392 942614238 690316110 847956300 710583605 822822663 991067 848865466 342918539 443518497 836070594 928439921 879460395 890898409 370412127 412395278 117837582 535864621 549678856 857423566 57356745 810131172 143415326 382776886 474849337 496174130 722387907 820357324 180937473 354894383 555533835 707220856 499575981 572919979 598700213 784659239 372648815 861656535 100627957 516922672 232181836 893426918 153145926 543037912 778419065 819066992 784242828 912142662 693320203 992668234 606075787 995978710 356580641 497153347 634611003 994575888 558438101 736818274 114989970 180604440 343428824 412763373 985724583 988803228 278615314 522115581 377310270 617904727 634419620 976728723 55683401 633364915 534950734 760547466 589724538 913776826 287436863 596204804 915592373 973180146 916115548 997989459 705329136 806454406 794269327 898788001 68255316 805405569 656633439 830828029 761209370 883658050 434425886 810588104 346363348 785661794 755679051 964871203 191218003 758328235 922584555 933144067 930028403 968033341 678229902 709623663 199603620 314254731 912877150 930259135 451718901 770990547 606335347 712636534 341581217 908379991 26481591 717218430 866451853 902627660 393104534 530815918 131123326 652909068 191473936 947762484 333282512 718240725 835657596 934731857 873971956 936045271 686677699 812644922 276178616 805373691 982098376 983682277 702987554 776057399 677908702 814673995 545823590 992329677 770900805 991526429 104751235 713613436 544302507 819017575 791091201 878171270 150726116 853845370 831685188 893028551 27863346 179598847 41405764 441125029 440276269 965144514 533669693 551299420 947068192 962597617 855791815 925179558 429000622 615604852 796625208 973584582 930071632 995587856 353907003 475944674 577545190 824784204 938260290 957829907 719703842 869188903 579713391 976265548 484822262 643100857 783752278 842571780 893928378 982480256 322800750 577612450 844238088 974440627 69546399 75569566 946605340 975218273 342021700 416827778 381548893 935622278 851826037 969997057 151682540 552638346 580473814 720475053 74205982 109295991 650666976 893281700 741241934 809647129 843667423 852324025 788677357 856745656 732898444 878223769 7302358 577015375 979828966 981626715 234667182 968242773 501089794 541308921 474180716 804123468 761171026 895794367 151488420 470893056 872747556 879931295 672174954 924227817 287114885 357169275 823078993 951011738 435076189 853140838 554876244 723214031 74954752 736450110 34861860 109656934 216326294 888225635 861647795 975375383 791954134 972270642 575188904 957086668 158199115 740008791 934571577 955315536 107334615 948806889 664856858 846543702 777123102 820715904 611849187 843545893 857725937 952045486 895738291 994891383 204075662 850739081 100713715 586521377 266397841 940331235 578320471 810938847 340946949 512492893 691637566 979924213 161925154 230215999 735051901 991101505 346608721 428011751 755624963 857654458 926832717 993528724 50789852 574351035 279537786 431940529 988733812 995068349 300390070 393129128 895570585 916795876 324672094 745400889 278835157 325797955 594166792 602238229 288575645 645316482 75108807 461548685 596084306 616187598 487520962 903082048 574195311 920415272 342690247 903469011 272546556 958911791 559712919 861141199 971295431 995055707 66925471 766960230 972289110 981426604 872729470 903083867 383772752 444561301 551970874 648470674 164923297 221564088 125269755 693231430 810615333 816734004 101693149 695892772 430208348 951864684 618410327 939306580 983587730 986258559 75258896 711743147 543427310 939561779 585081622 729623616 945836331 966013004 530751611 956784809 303677440 978720143 577369426 657182643 943432014 962331387 549587056 839417820 465535563 482928659 898169407 963268378 42403036 641878023 168630475 190721758 314072011 315486944 710824970 881279364 547177509 667566581 704365951 750002000 408267300 592743707 200544499 837729538 404867034 704045674 943748244 975543645 540756437 739059002 762626477 939658751 686642230 835293336 211799302 730409132 806693547 892545308 995308992 995729301 576500821 886025560 632254444 739386955 134730541 523660486 421583928 888840555 975619750 992911030 745835201 793427710 250688477 407267706 752391914 845157428 857263902 957419205 876784747 994196704 830012791 934637772 171044285 182775425 714615429 718400519 914019995 918031359 343165602 369307720 290664229 564764586 144479840 648334968 648743694 804870912 507808778 626359398 665870741 758288744 23477780 245920753 970129335 977820406 646240017 854815566 258217461 447196601 831942668 898492287 822965871 940519834 129598088 817621670 813299982 909968399 722302276 920722841 203643777 963149682 445968687 864409430 720734541 962089083 912875380 914727588 443449577 833798123 302504492 565973903 62250962 674513252 472395884 930647907 647503587 953130863 583838816 995277082 965389467 979087982 167512581 449420098 430730296 675551484 493163431 683735717 235733633 513100768 463131440 854489747 873972705 967547888 264614133 964185559 548789466 696870755 554884644 705172226 868574528 908679220 165259948 341393824 391080650 742643869 938428849 969403477 235687747 755695708 793086694 980628801 125309718 314551757 564280213 581470338 97798296 960018295 716325081 879562694 625610656 970299024 478689391 702035862 137864989 289676736 782499710 969881518 328659193 829196314 559401790 608929268 566342692 585327350 691060441 886508475 459823212 979996555 546346247 628925223 112259942 857980333 422081208 810648427 510449962 581857506 238780738 617169426 121170861 294160480 538635640 817439701 806413832 986087594 370436024 543123739 572548375 876917470 664004991 830362333 996782853 997522985 892661773 942939862 291170878 710344863 938952908 939124186 510266724 675324014 160419434 596589018 825547153 894187103 4689714 401491999 483649021 582472697 258195053 487216609 103715147 811971973 106523548 878342346 492846797 793625933 236930612 591684143 917494553 957094834 710092819 854269260 646479896 694488074 355056155 717964100 447450411 918293410 983715832 999753993 193643117 660015054 508637683 934413310 501883049 907958427 670482695 890972089 371131399 718379069 11598713 537206524 793682274 866207405 829077827 903947067 981410293 998241733 502765338 869974245 881828351 891034007 161232966 733631036 733113825 848340162 64143962 709467878 978886965 980643594 959271808 993842707 530321704 650626062 653014789 672831003 728091437 965732215 95437228 118269089 377103253 553909020 237328012 267020810 820957301 868249976 859555248 890097268 6191482 604909561 369472719 724903463 131805960 759788431 921478425 995891768 731183641 986663159 541423423 767453534 770949671 821977605 152915244 920771814 731329980 894930933 519105193 801056264 523444711 576758058 30216786 226289870 222457112 416526002 849855078 869632302 471820282 574956446 863249981 969984775 600910837 882247734 992668963 997466681 45726098 106759352 322125058 891240077 690854197 794458227 69527383 954432678 441133524 817325315 113268752 433376897 589612445 779150979 778102770 790557492 763314472 960338725 391952252 736836406 245835890 538847917 469312499 956995458 6401270 283089114 540624262 907279329 111190741 634307685 18256459 670471173 229889724 415382543 138642903 667419455 951780844 978874909 358286216 903961841 963906122 968079125 132944928 681237548 102948356 615544726 71360353 299502157 784647737 903491417 744848623 923146161 295079083 631869012 175828654 411387219 152517346 353587937 966847936 969578082 492765089 641237114 30727696 737715713 6714761 607074823 351905267 790024197 559788187 572734710 9526874 836142636 963083187 989137921 374371118 511854847 350889595 667454126 788646191 975880295 355802673 968386775 199572736 829464662 667204456 842136262 956115583 960759077 611950710 617517061 836922979 954002201 799130327 933120140 952782666 990626374 854269646 890018772 895896395 958543555 130962898 897568977 535350020 614250857 14929690 364132715 162098602 684074154 188327434 484284542 3030426 703814242 127250037 768029328 434455030 631269292 843824936 932296097 91334846 925365818 321960277 639199593 520150681 929459393 380793296 876119771 234041652 379853226 295400876 558070388 477830428 558845005 7702405 907052034 332983028 746008241 2296435 336282380 893312970 907351780 668855106 708051141 701463958 748079173 921100884 953759671 422481526 703498764 662046874 855891648 917008915 969274875 496289634 719875760 674249049 676038505 987235483 992519245 279098489 560606169 122985981 898830241 67856272 185586715 831291889 940744213 985115392 986682625 597705824 797207960 286670263 856920401 870282169 969798162 209935592 596560971 47249498 867548893 13249576 703290233 43192334 557313313 265011457 820301252 225385721 702087063 977489997 990238965 829470116 888426820 388822186 395317687 592949507 626709889 235180702 457601157 912523388 960651617 602611070 844766310 269267686 486235606 950063647 973785697 589288187 692516080 962361046 988481432 427809927 705840489 432976038 806598407 265556404 667457281 267457694 771388346 702094609 999584487 920080 606929322 441162118 692067855 527444663 939830868 220161070 689585230 914788843 942686097 170896139 715213732 550412007 956216803 727368362 761104644 115427537 398639081 511844544 668079637 643122265 675258837 792161112 841835794 231893949 517737621 160112556 742987284 839901096 963750947 57151112 553143679 295705632 607740670 912722674 924832634 588694339 753815992 138183446 465816110 822354780 976716964 474141574 649304292 888056254 971099044 66228248 954612076 199835655 446214629 678695779 985690671 628058192 796961213 641482864 973101733 742762970 760510173 500072468 797140986 254247317 867244050 256264765 392699865 436214495 524309219 32055548 576662928 732360377 740879327 825293236 997937335 916094104 923913896 416550537 505575692 458895077 727965990 540846584 854268355 509375909 733118775 727675859 945685833 232573000 606054525 489134140 844403145 64083718 160261747 152478382 678094491 31947127 609478808 161313280 332706570 318605846 564537839 244459847 607896278 255184017 748380788 154818776 993864985 285448766 515737173 564264719 822377293 903807083 991361709 752891784 868667927 751330547 843479925 832546911 963308552 281169748 951392310 9777507 29633201 317957867 870093377 786169163 867328287 240944722 884163259 548597702 977847633 353565370 668580359 794612256 831963243 21656817 819268241 680586880 844285509 205788532 412369462 969003667 986723839 3928621 776275493 455304199 732251215 170401553 476560385 268205350 653486491 241759701 331264382 743425798 809921345 239265375 745965457 453707279 719852247 589039700 833969043 166045341 632334390 934303606 955746498 245158397 364857721 238510168 858835019 554820366 744066724 397613783 732389373 152045318 995641172 47027199 589664379 530639109 872235147 105532897 160517358 83165560 494473389 54880123 252597988 591967249 916801764 508830171 963719628 621379356 654966663 418941698 465535376 384813778 596723526 917551033 917840998 591434537 654077502 684005069 741868255 948938190 951913521 380396342 550419910 269886907 320829166 59890010 483451410 904014300 962006142 117716303 471220511 378376066 509071605 973388713 976673178 682791745 692821559 342848469 752020890 220535641 387021925 337833689 705691272 986767219 994305954 622562 4425698 685587995 986950510 743354650 792151154 622581214 918931164 691771270 950486482 815697744 932065652 426330978 914299735 281106304 633779859 812744706 819034146 400415765 947156489 355052232 997593070 180459703 268219546 170980261 766156754 823759892 876284852 616329004 952261539 201344284 532488964 316924763 565137756 436538724 748459271 94330464 381553100 318506792 883163950 487495397 718248969 27066863 256936356 199738476 371631020 59843709 541791267 786778564 928255529 108742319 899423223 781582344 902514335 748026311 847324978 470769111 904150113 156652738 475079876 642206252 819207688 588215666 829424129 493173596 793565904 153915150 720472605 268237827 342420126 616385010 870253512 738784473 843957423 822966768 998797781 50997099 174460907 932529265 937868681 860401203 929115780 330539123 968084871 149883972 819691295 754268559 841544027 851703674 901130852 297507329 764729376 163223852 415547255 224681267 791895004 902390725 952583428 976743789 976886701 594580280 618757318 800302003 952701736 278035279 836943999 102871501 598185564 491527316 872589318 358356432 819911681 817896796 939558379 194866219 477901792 261764612 436306032 492792282 823603008 987912669 993901140 928959708 950872720 94272802 804478760 740375560 927560266 361446517 565987379 682046547 698085222 163416405 929753195 360219564 528688100 711443939 782642637 161430235 441007900 587772101 599767287 92557502 627978276 241221013 500018430 618022504 774109487 426485012 527012587 374697216 832983404 928183692 930152970 932596421 945879614 973436103 985406893 409189778 574384009 234276927 357669034 706705390 883969518 899872016 943447274 233157395 666652480 393055710 684225903 506652720 862121091 326780406 625880704 907798530 957552344 572191731 808645834 507400790 957901653 131884199 210232549 53644805 56439105 260216912 548970652 873573804 931137143 514185700 556129127 248367455 502659735 923203322 974342133 230338216 815297057 471855817 852293306 905463267 947876954 828549915 998577423 478757601 883929077 641839562 811496076 873542195 951489044 125115818 991483615 342271688 852929683 86747733 746670693 594040761 876867563 131554354 726111239 713407278 881524443 387335637 816428409 350808290 933123302 209520611 644508509 361331750 943368983 643511856 997641684 764108683 994006513 611430879 638369404 26259962 860128498 560132029 686845268 87032824 701236931 325348555 842923159 445190456 897757217 673620345 983151306 483698349 551379568 530027246 912985958 651741585 683585822 374282599 867074585 607949127 982239047 170389687 816423322 317391308 628544533 316723158 386553721 635372794 816201888 42990591 889954676 706177455 830637075 685030057 725625519 448941149 529843663 794106822 941355705 219183999 446025661 836318286 910905838 972778954 981231119 160132201 273359722 58304575 213220088 189793516 284475821 903320405 969922860 68871899 574017754 902750790 959463786 723388546 832586479 535919291 846187963 822927236 863431509 142362889 412450882 89848481 890320989 325686734 935070479 603551901 998730961 234607273 655164188 616169564 824312589 831928202 909295794 966305799 971809302 725460498 810457945 208076017 261472303 321715070 557080452 380087505 641154082 708354383 796311094 312999632 433700152 305125654 424287941 595620853 847203069 428300669 862322415 633201635 720102833 409599550 855672566 242031290 862451927 874464205 906852477 353552783 673771003 429677429 711569692 227428055 769924230 422740167 958137135 125049782 282093312 569108422 965237357 198139479 722515905 777150992 851491218 675027284 736663516 578005915 747405816 44581770 581402253 299571521 567967718 21412484 735915989 943876072 944062749 251497919 329455785 42865744 697244397 986026556 998984779 538747080 872455776 751067999 753120686 586162626 652821590 82152076 140901682 540659009 710041921 26883253 537156122 609889813 665691466 628009228 864647553 574111748 953058164 276753181 507941245 847763564 894439993 237011910 644208801 918028484 962440561 447120206 881796074 576687055 659960138 368867934 732293394 602641010 856805364 121726014 324457304 8705648 768866753 921660790 921979231 430716692 450655397 70849434 89981716 197711761 406107810 41443519 751015150 49060002 372250039 85006184 247108500 558068464 958804250 400543937 792860533 808859926 877594741 168903221 345780880 594061875 799972683 755949631 830592217 831879876 897962653 119232342 720306202 676760719 958150301 944735432 951100440 171557564 765305220 581193907 953939213 128966109 715727893 441026476 844034787 71561576 990057953 440965488 867869015 286763455 833282340 113896872 932835674 36995719 71796547 709311300 831323281 737578403 811887498 263061744 813290262 823016280 825731242 490520532 932801806 211630475 993905450 409631102 667964538 909240400 938610066 912490663 989081585 868570089 893688061 310317005 751239135 857621524 941155832 552080889 745070184 130843659 182455960 887116018 943766034 116406613 471125451 747141978 875426040 389344864 920727851 185632969 575629654 735190249 843224126 6221191 419320515 657234565 811547574 989470820 990678416 886045885 914674568 695539592 810690407 151846245 935281473 951332069 991897613 613017292 728028948 73670821 600567188 894141824 986063616 17666693 317538776 519217825 833595332 159321035 701443431 353278112 623925034 631225845 900144333 139483144 922955443 397832048 738631248 492837399 640980698 723129017 968373987 67650239 505798325 235184970 513811202 709581682 991338190 377939316 898521817 973044951 976985640 869816124 906611598 670925095 772380703 709963589 791286830 141806358 326923727 142382967 228884837 541470704 958133272 994816946 999943584 484485638 808376140 408641076 546323817 215477717 443332693 287174013 333920993 303173282 323404426 158938356 342297508 216383329 706496057 936321584 977631790 224568064 384898750 194672750 675739086 770889806 982008080 970899659 992877407 654364897 941805230 588523472 977947249 321895438 965215365 1700164 358395918 126843721 526842212 89805964 375382786 436372412 894928615 855884593 959759664 438878308 772609209 754655612 811240781 682755611 947376189 429692532 473486154 294810093 933692464 18236938 125011107 956440877 956669264 148533618 383690934 639826827 835698828 274502081 870077709 192242236 940217710 167803704 703402621 468557025 739411052 985439071 990094001 290302461 564937672 278822860 809848630 974939785 997383389 504986059 744344981 397411984 611516605 470871153 844807892 329671048 980278432 396517042 889341558 252730112 415092497 587027592 826905281 703839715 807206716 846668315 928060612 15831243 433810872 795159271 828881608 455343152 655300577 447244127 457694252 133830141 618244584 891300366 957255285 751577746 791735375 443542766 578935919 116100419 870362209 913162529 994859332 829441203 980567240 345547648 613201996 315562323 972044415 696229924 791766978 355878961 574373966 609499936 711202582 776371645 943605847 108730936 681772864 705752417 863229677 49134674 594292403 142238553 287408045 920284977 926288710 827837493 946265253 124957899 886647757 498679523 939032102 834008466 877361837 898805048 913536181 992346977 996278113 149286994 657001122 348875667 532950538 486171430 721554199 481625380 783678835 225862188 999655423 21131282 497796081 611149273 805848366 729908396 781366874 250799391 787170918 703558725 986752038 55153847 57315747 8967425 24850318 227581782 240113789 702443397 830223682 945616969 998775005 512354882 715967459 369575776 725391264 592663350 900119449 11718512 480987981 655201640 745244516 223687875 602332840 208329947 973620360 675906485 930386416 762353411 932764963 93132703 443943852 475320668 751118316 468846945 662101606 10754153 756935670 867128576 907199278 789428059 924314645 336214989 401607949 660970172 965513155 483656890 525742684 440625982 515262244 870343645 931307044 266234624 960830246 299941114 301631084 214961354 775939190 324821884 980981050 314753709 797107998 515121265 536325522 159420885 373700599 74792981 445886403 194930019 722157617 42532356 920706477 178882126 610311197 38249186 906573611 947345660 988658293 940800006 981329335 503661235 874810652 152743303 251575418 231846101 684371839 662269907 763889609 803502005 911840549 692355425 729031326 732957270 795626400 184427009 729418208 664197274 757175026 404326092 944098278 980319984 982218756 489084671 819596524 809022442 912212212 22454491 39421190 962083707 974851113 618628210 743718149 308353209 913418422 587433330 765623443 253838330 666842790 889145745 904113190 113364136 910836132 437546016 980829605 192991791 259226754 173751402 179018251 647204198 978814617 472963464 985003508 124767014 809724592 645223361 956797302 202050996 849448951 853278270 885691254 650190982 994195808 23082960 277630826 998426873 999639544 307408179 560743627 485710767 891473583 596554165 906604689 692968902 741334498 855963643 882074506 62174452 574263716 355607405 390241403 940386893 960019262 478128032 749990284 608592647 876389336 593418264 852152354 236003015 853334503 226706522 518832789 611990002 708856559 458592216 798020987 283333088 858086879 958370469 966637576 478274949 792040510 333968262 392168196 543569645 979733577 573287218 601877577 429037359 715155831 600784094 686034150 537743723 950032547 854377655 904480910 956929871 967008680 84812409 274137145 361930066 622815718 742316484 791577092 743553416 822249279 827282561 832632497 919592451 935870033 656161485 673218193 284993842 782861670 352449449 841022631 579787266 594822256 649995389 843825991 418980059 470299107 385290150 692845318 906909501 969111695 386452755 508586000 960473924 960815424 51958394 181807102 147793259 557524634 45372741 252066477 263490127 305293857 211804314 577461016 320656868 698957090 549425718 840621600 152031580 488909300 883780039 895123803 279792095 716550041 651694385 795711204 742060725 851433130 348240326 917312917 880864754 976724509 284163226 501428389 111358274 804527225 476077946 768446308 87688293 658181620 342721646 807744849 704458104 936158000 400512770 862988296 766138161 799185795 732806837 819278064 8660572 890563830 656301900 793042947 771909008 806256998 354775297 669282646 274495761 284954585 557234793 755590059 762249477 851657512 939671096 983230822 819646746 981558194 577029650 982690036 459468481 573811452 510656049 884833362 21745505 697727945 979265734 996947221 46580440 864984315 166540085 910406580 557273870 811260976 684360524 876731657 678521341 871610660 443300864 827673804 870798308 924547074 107719757 816903968 838716825 905879238 422474472 667460143 367311505 479204296 958989299 980834786 401447788 620530152 673455413 699109594 224607599 231549540 874961268 914807458 112097235 433021719 903201385 949661706 348468624 663300178 707971973 987656470 614831925 678654555 88709293 481020438 793460235 930226474 708199471 753892229 992349941 995853583 699777334 767773809 921817799 922030225 825972807 937008325 92420353 423931611 617329123 640162320 151916510 425491342 376137294 916872988 529789698 768277460 39499762 242927431 97574142 779191353 50788749 959850480 467172332 613559538 225055485 321836228 595738135 867133638 219414402 801948704 316452999 908573073 604991157 946460467 588349853 750767331 169682309 394201212 572644602 840387104 553690926 793507317 732704716 806583688 25574027 449384048 656008902 688520835 811857232 868595975 324437335 566074515 905585280 980045664 584204918 607400758 965743330 985020136 864029272 995883830 995694005 996059550 23615976 163503940 217968940 280915057 847069240 902926652 716452889 900761956 436170951 712067331 264462006 788486618 194367876 534040800 624380894 815275448 629928508 997404172 513828109 871764759 297014765 581187375 250169466 963388769 35722607 312865761 179648774 828572882 857911283 940410541 40021250 531622282 860360628 887853867 892423273 969010023 405938061 725985466 254395326 291820336 182391059 263339099 560108960 782604717 809499934 871152414 421004763 548300818 25820148 523816314 174102961 763171573 851426718 869119228 805345073 885627660 231466967 549763402 389512145 516522361 996092662 998383427 623880831 815362394 616954146 939739539 313243125 762155743 478573087 798873748 488261006 904309497 716372344 727459367 578479870 974854002 525129562 697393178 101040202 286331321 572935081 825051878 849384943 936555148 633216874 869316991 979144049 987412990 875098184 994344169 810506868 861827804 950900929 993914621 625648971 760154880 916556529 960460043 948091353 965871996 513773605 591999328 672313893 688378180 141179783 978861168 111466922 477981696 794047227 949463823 329275531 677862440 305402026 409476625 200822937 777776136 398181883 618762760 7514911 715087331 171307351 626841402 763460644 901117197 420476426 723478768 785478692 980604137 982337919 999295290 498683950 992361805 363300182 533169090 552793437 708653100 844080840 947559976 833803999 859940569 14286939 782939217 765966339 963784316 740773011 864338728 91511421 146465397 665026886 807610827 457526385 585649132 461750881 871668416 571863841 913211224 675631748 842451517 440048827 758193810 480773947 879088865 7278585 485531552 799493028 837835304 882825378 993265058 918377420 933540543 744171356 880856129 217449134 513681396 231195499 375627742 665154326 743150486 17341947 688408481 215970285 800883983 510197784 921051487 646163948 855851345 134469624 752924059 105307162 734061190 818243563 969778723 168870876 493976723 991950368 993697515 747359635 813440135 639443015 838910485 565421367 833943588 531128299 577477338 787434967 992223341 592925179 737915921 188285114 660856866 289205808 293827297 171424441 258998734 805311851 828680042 266683039 964258933 556645607 903026090 174127864 566656850 609106019 624732871 98228683 865369974 359685228 509365934 147061247 625971273 259449230 440218730 146505301 259061016 989252146 993716470 838088166 841136924 560295221 887374046 787710017 871315274 335362575 895729482 745522797 807294654 919770372 920084265 5775645 99118823 953888949 967774258 90775785 227034910 683129858 758922744 236983155 244055891 459014103 552755073 338303563 439652538 148000840 840750047 321082773 615518468 534231564 571378795 986935300 999984345 892060088 990525053 630786865 942429436 798509139 887619054 667047170 955839410 725942998 840792157 285365246 884433106 904365587 905168058 371203058 763586837 791865204 914980983 212547089 821630174 954497062 973248116 5124884 801456909 567145717 848160929 487968434 929360361 790056919 829467983 7823744 879064904 484336690 756039779 762036889 944871964 847095786 961268681 611794790 714658812 61397669 123693270 710174736 885507644 318480115 814199068 585980433 640279380 474434309 671955455 673664022 883041161 417095163 547292281 856595998 967921963 94928413 847971220 275413723 503587304 797423889 862201304 70263172 400171764 325957388 575387752 406187554 722625916 746172986 888782369 78563930 455887108 787486475 955620893 356289940 886625833 388591374 775191817 253719058 940684429 810382779 811378600 958288142 960930625 470954267 660453240 446513575 613553164 135195812 300898899 824287441 904833907 732471794 822490118 97798313 752966477 12635136 947784743 110111170 967548744 125550299 712785446 221820055 595337539 287931471 618325250 416402359 820891700 273720613 316410455 40222556 140604808 99533946 538023472 766600756 956423382 958860803 988103633 892388625 993658197 864718058 907715250 208085298 608553906 300185351 864555028 285896303 517702990 106881029 233853936 903099756 903633234 377479196 482939771 68642774 68965297 54075634 592586516 510470985 555759333 337280287 379435665 924706559 994695159 389273732 726019071 693458658 939492826 260817174 580366688 222417705 547434174 557952421 693063622 915687653 953947340 469869909 694734086 109501587 426256004 250104909 579904139 103270751 155119183 421901498 711260229 573459684 678393231 933752479 995319898 214813001 367276302 754357316 976249847 37427676 610609167 521902076 755498304 85848201 335621392 234572298 810887706 923469947 957735995 999032003 999603085 162453313 237776412 594531244 739676186 68058864 286693334 456418696 958470844 480780033 524486063 429935802 702541485 349545342 533599341 61126559 751269700 985149996 986929356 675891323 881863405 454145551 937093094 495619007 800490898 68925320 243787546 280546963 713298101 718365122 884401838 327867139 654551578 523898255 773275871 617518089 992569981 572844324 909873167 69294414 377160193 154537061 836691498 534234352 791037257 352257085 368472410 383574790 916745213 98586618 813345745 273076574 784436042 986358532 995582032 24070077 501769891 647500976 943547595 929824410 983045380 122139652 253959414 615092680 897533817 861450719 956122358 691887334 888379079 166833231 321139381 232663449 601590336 851720132 988221767 209442252 230168397 697474010 754044229 361304774 782203479 248529480 779016191 756649014 779497296 219618993 866317020 877794443 991994084 1762929 277742681 750233098 974459464 921530086 950277994 138343459 984258948 332384368 837478451 427902471 955693010 804946339 892243213 354473453 458012421 488372015 808392073 107758637 627034086 152264089 692573940 931153349 963190833 320955762 670097299 843189295 952225125 805691413 912167226 939751014 977893728 205669461 442371204 503032054 834224728 135360113 193453465 518778851 651719177 354569238 707444826 38285635 707362686 536885157 649262211 995141244 997461097 130300541 469676631 339262861 379533751 145648 315899057 951764077 972293717 250888653 768747404 825327697 864683130 27726150 905040763 569964380 637647772 460824703 942102932 84878680 811158534 896940793 901968571 998775979 999460734 907756890 918291960 677892536 901180365 342725891 470569809 628538216 651867486 346434264 688878086 877740355 996374598 576504539 829719801 580651275 702039789 900419436 997286254 720292954 908865441 117104570 592813861 97223750 451636187 981358196 985053367 467173312 896187584 225576104 537040816 422897465 638422906 17442195 223011247 666443301 671633067 330094201 842728722 593382629 683531930 750065250 935317417 393368262 535247342 318861129 644371542 547162011 680774313 792377707 837262122 10006286 504397338 83009919 462088800 373890647 907952375 629656449 737498574 555812345 589890690 81609942 725553585 421786093 459621966 426293652 730156485 163716675 691009883 889868471 896483235 439331121 884458737 264913303 433484894 294339292 931541952 877882233 910572944 502309303 970051997 315053700 970986072 956767588 965042065 980019995 994010085 56359677 751434076 515253235 576805819 749689624 910924669 308380247 744493757 16115263 269748546 688193149 707135395 115277849 715363845 1918221 284033872 586617980 791375757 570518338 733895321 192348369 570214745 542341490 590343742 888255147 976818655 404820141 765864848 776398276 866556098 447495514 649176582 795496553 883046031 685189650 942612382 517450417 578758753 522758183 881915627 147218256 246403763 832964918 833610286 783704047 927788048 596861038 637510291 704889875 956663568 771110145 860190816 917450750 979060054 397108994 746197922 269327796 723068785 790729482 816315305 206828789 690611971 557754767 759153880 781273269 829866704 90533773 332498073 540066622 714344428 308874115 387984551 909821289 938435907 637156349 936821381 190783447 473565668 814889462 932428668 801854700 951029147 574095793 651733923 907838395 974787918 574103924 835353945 136597428 799064615 181007580 885190104 781767302 997413747 569598201 775682075 274718219 587623220 644040816 820280651 9152462 913057386 801422570 892792672 825145968 910048395 171397349 459237978 116726890 272573960 300549853 695718922 168388515 607224084 182086778 351273357 190069350 517396598 267628144 807909576 690013497 851950857 453232784 680965842 868537204 951419816 493147610 751259929 200163613 248264404 131187042 832628725 786339200 956949660 692337739 747347283 972816475 996737019 855868132 975866780 886116365 963529038 892676868 939072449 793766030 819446300 421684992 961948941 73540953 370624293 67633967 535012560 68083252 730413847 883760910 981408540 501446218 882202665 815564656 846269240 149219879 430125846 864716533 974496985 857372448 980908961 932987779 956295872 808494291 848298163 457674644 918270661 31393287 174709681 148686324 689262601 332195660 811828536 314885515 452367595 622620545 858686380 666501525 730593676 204797370 430319560 160860839 545059525 547189470 923425268 156151496 905151954 586967518 747406406 701609595 824373529 21766263 106552792 890389914 904119508 259027576 428860660 46535988 162973066 663891996 888947056 114074644 180281900 701725236 803900778 811106546 895759462 100658650 639129380 490012677 917930322 337083819 872786292 333863513 437599262 309105657 890910225 858763007 999770202 519500025 826120875 335576458 670736216 904132020 974207512 775583108 957409458 172802861 715126187 439316955 688741379 115813397 295171516 690637185 703197990 92133177 473557867 763731506 848501902 26579269 622877960 353272152 893525390 400886127 972241447 690174597 874528727 27007816 447267991 155948969 972301203 649193806 804540511 308637189 629357797 226139696 417667694 97769952 229233955 44455655 858863627 177371801 714618719 279355926 596493957 626528770 769871038 522971414 565521067 484507001 778809512 560661794 702186342 445291167 515245194 513398943 967900648 725781695 930228350 687484762 916971368 671378564 831148595 646785368 705647256 916879309 936333058 152375211 188034954 170518176 566749812 379434856 715645141 557164154 834443251 582333883 767567293 464196831 913053148 20939578 905555361 643112009 658734477 372614211 519973852 866165464 906501945 509529304 605263013 368433534 632197461 216373864 268859272 93174083 954301435 385346510 606842821 584891353 760364227 955660718 994428848 956878584 985299833 745036249 889711606 375487572 477092704 58294174 853342973 38396877 739516636 356289263 363150127 926543038 948143968 450362162 872164945 927324757 997617883 144288204 710355030 246420463 393387534 945679763 974943567 847302655 952747111 684916515 808493752 155726772 974842974 987574504 999801499 694952026 730987220 27054866 798231910 576591494 967871241 311626716 563236330 918885623 946285397 215179578 762965857 707406657 739206012 753447238 968946501 756162887 880434878 636062101 772147565 672701542 721513082 706636491 879344701 377069360 777760569 224185710 807508431 137636241 530678334 413474543 835136308 938190413 973990135 804621622 848199221 678319938 828139237 151276005 300247230 685930033 760415078 679400816 780992300 250246064 415508783 790351515 951242327 453937238 858377114 764731065 788413765 560637967 580433514 36409358 601140958 494033820 844724297 151436704 409413724 419570770 514276631 510334258 640848517 884980871 887705476 64973931 650875298 317794331 673046739 652378687 717198522 987484699 992659723 986950461 996367983 500033723 618225063 595596167 736416371 208583635 234441233 637209156 963240439 434592812 688007493 784767340 821685514 183299725 761405256 149607015 549524815 55255649 250934075 753202624 819944248 173259954 573661829 597402536 895219797 964354662 987386365 376853205 614829584 516760192 907799896 413936917 560650204 546369082 661377661 36806271 130024302 754638362 978172629 928074995 945080399 384553890 994894366 335163172 744677578 42054604 861362126 927455887 975341636 159702240 190000263 933169059 990388939 753797897 833132058 183306310 322631704 415264539 869809123 483858452 508553893 649132056 768636042 719248474 737879410 984961676 988105127 82887817 155448792 918951812 976258965 266099486 420551418 607944428 702613850 963573683 982338060 158515804 548360859 994353231 996812882 744660702 911845969 566360537 622509353 30996288 74835446 45224625 664369570 952549925 962236549 883740588 918950705 569283490 790769437 866648236 902479159 645898155 970767675 986006587 998802760 80673008 652672440 481182898 939702096 938181202 942930666 294542110 839873089 793842935 999344676 580604582 691361484 436971617 898644917 902184049 990071779 181106434 779795348 486575291 949300647 89304754 355115240 161085580 763914977 381757766 902380473 311830423 898043364 922086980 946708999 805055584 989117672 759435289 768694098 601873093 943091962 421889272 624367743 274040486 300814115 681058156 691688087 434949417 462126557 121731464 688199937 32806709 404382034 511090298 674828382 761910284 845194833 85840690 323548811 115964874 818717421 21997068 927075009 528810644 902216577 919807363 983233585 164915385 411626303 68022146 582149406 387589625 518056214 474094652 687535306 593441941 604937240 401588237 731196845 255262368 814349472 406979468 506016081 310255616 841753600 945423360 981064486 199146667 212606950 426576578 781366723 410401629 986848754 172810251 216407525 9464962 925061386 181662995 427701817 442896789 551026377 388065277 589806007 523573584 995531093 113798251 351129774 789129899 818005482 207918470 522093871 350365240 391786314 765524226 957051753 318834165 856509752 511103335 864646956 41314968 968890760 67305293 390948673 783744075 871171105 385889764 915586263 507117889 844984824 638978012 973491503 18971519 872362940 495101284 755231701 3012709 555181022 83962037 311679729 490235590 827139480 765193137 815744196 755500699 759810806 915343366 972667394 399142982 619166173 96815476 474918167 81118290 618543131 385053984 924725367 295380750 855527432 258342762 326295813 533072315 561209754 728108283 797171309 193790592 924057770 704710543 926809438 338688338 737132954 169258627 990517004 374256836 688960457 441730503 813434213 579468677 925765721 814521879 858843523 2176639 91913188 113708883 894062615 749396670 913353069 333615272 962962493 775393389 981178297 34135480 900255845 929622684 940775001 668398042 679803390 161376055 954800326 13259948 328331919 195968108 640658269 837071635 890562929 284204991 497230147 652490965 760574338 515150474 733098965 968606762 977230671 69113743 614313864 324345652 397713218 417827732 881759739 626668702 991871078 993825595 998559116 237141555 419155931 349966215 407115330 950516983 960085414 462156920 560729388 984558305 991966252 186518750 244103162 677483165 830938429 145265004 313159464 513088180 975229057 82531246 127333368 115525838 894556787 353914233 358524052 368526168 514920876 497460142 771666276 899369738 959108691 540581376 559849993 650414501 831971691 255816383 601081803 137494080 443253272 969866535 970210206 926404632 948080606 902045508 924834249 305838408 597820033 3724278 962766081 741954318 802337042 648787352 795336965 444425992 939601003 528230898 998406842 969847444 971763625 497608002 913304595 389299539 610971651 833350336 940333771 835790434 951036232 878139275 886712655 581026954 892857713 428767505 652063439 632565845 745667974 289724638 512473459 153777823 981169659 508154023 742138744 229709830 755348406 523217497 594329730 197130306 391464347 673720192 788248457 594338191 786398031 466523422 693091271 484301561 907154105 480350520 517078142 305720280 503010382 479647091 579143875 511060238 942779351 586971095 715538348 503354545 658781215 981819092 995532858 846182751 933916921 952975744 972434618 369788315 996562534 430026189 545246486 843954350 917069458 503577669 835807186 697310099 846543717 934109163 940745501 634450209 917865137 193091526 840607350 203252491 391864660 512449531 882727530 897907775 900004087 689741037 822189447 350720259 533754155 666431743 822274282 496262813 861748576 563167646 703661314 767611452 962932196 522123445 694124684 247365862 801218190 919249259 982661880 159831075 902071014 522912801 770206207 367032504 666250642 879896516 973642700 125943265 619532855 208155412 802653177 728885209 739359106 239341558 728300465 631447742 891358059 941350662 974900579 617246390 748835101 341715728 746608092 251179882 669350361 101100379 468991500 789142730 978485586 658142990 666978470 240766513 518352845 894147821 960136867 650303585 741213649 331942020 353183252 605624482 994385396 241461621 498997021 907940977 992136168 737097096 763183124 651824730 746328742 545986507 678275067 342531526 427713178 566455779 885925067 592817118 693372583 231693721 878594770 420311370 942196622 133057801 656993565 549511970 736540729 277978674 752731450 856395166 981503834 906639144 940554627 399436352 774980539 862006935 915329042 239042206 365425296 344942237 498818027 731027973 847784509 63630722 945918746 724129100 892394535 524649737 784846225 629293292 639822391 556039384 615222715 853510191 975499257 230965853 886973754 981039390 993099331 452984804 928882764 472170624 961211745 772074696 775021621 969747558 974270051 300638901 694850155 193738898 274307658 536371359 618870920 736651519 760777124 742005018 952694156 732442378 831560841 838219444 956002105 316386084 374446863 280241898 844153947 604427258 947991387 327147629 806115197 927028506 949653931 347663533 905762959 133550814 663508977 52354316 916337591 969609008 970498847 659430094 678229300 859605408 879954145 827366141 828368035 771347952 838099185 298592205 862209151 454717317 603384042 318690112 678833289 585348253 826649667 833325263 932521728 171393124 990704430 850093398 912951506 696744898 787391452 412616940 678563358 809362267 856870873 72232236 967761019 870407208 905959085 951690841 955000302 521928920 747035686 654269698 890818048 257915428 321499310 166878263 686773193 127186342 930997195 317626203 923365883 906153215 992311340 968706611 977208273 286209695 516765520 732814075 840992621 240452688 969014983 536265072 692940615 560337577 799994860 54356485 144165379 787537069 790053454 158036439 883281813 49395948 218906726 261596713 462886488 54981154 135229292 143983906 423301788 767385513 822939502 540342672 655499677 456829715 583814182 750549315 885888534 488362849 950984194 655200083 771848631 845590432 926739616 867023272 989386202 336972714 912406784 793032907 910968985 495762475 518859492 672702356 966552393 128657893 197853562 167303198 829378440 324595593 628806459 439894935 769158131 688321283 879636371 289532763 459618494 39712627 125515028 73091847 808722710 46088049 64240543 746051583 807921867 730405540 819311759 531435020 989512089 557193970 767154590 228957760 302069997 917204580 991780369 55147177 333189008 732631562 808871157 753905543 993658181 684457028 899069111 67178896 627802429 911381121 923416296 678019794 830744882 492935568 912578222 664690977 781308432 667258255 782515524 960314502 984483907 221749665 742000686 84888853 374552236 95607615 673236997 122505506 384734355 488604308 813553228 651487818 800700226 787513676 903616403 208681758 294903518 177578730 280319969 372074935 743540634 133904284 634678445 700568596 904884873 848518277 898876734 607331506 831440407 276343608 938712252 377374522 785507955 987878436 991695129 792591283 934396652 724708823 895375915 679362168 780533694 97672376 364782066 173404897 884844840 625948823 730534731 115898199 844413897 500732195 974812067 6596266 746114844 988719021 993905056 526043719 833869023 15172338 972903780 953591866 977957071 88046203 525843867 57944784 953682126 59663454 838494582 609100461 869946709 839302783 893389308 491233063 752137574 350686733 735350134 774945954 962318549 281524372 684233538 819266778 871909303 20798301 603106246 368149318 880113093 755153161 914642970 85900512 928792033 43614311 498129283 776594302 848896565 361834905 509803899 36254537 469706103 756028140 829977224 661158846 791756114 657019917 801231269 544577647 692097989 985100193 989836151 356927384 414917797 549383598 792507402 565458613 775409163 76001027 102157571 965676929 978526176 940743865 959436173 204869129 307504569 80799028 977459969 996843546 999893048 381756084 405178696 386617759 973161169 349841520 528987434 603985670 639694156 254728517 405130588 400129497 612030007 623696409 995856213 487113793 730740419 617352334 947258735 71470645 997582825 572740395 810566215 130386756 374580580 633206583 956676504 334274208 904713583 353951756 580435335 806953920 967547051 35904771 928749780 14381742 856759653 356882001 940563356 158386725 920181451 915522801 989308947 938264616 967804256 336958032 589350486 289665199 783224997 279766347 541265288 706808927 889592236 12479008 801469071 750465443 995218032 89254929 879157065 255833957 413276284 755993412 909274288 615620982 925516468 785336777 829172120 240750221 298429271 197303728 580159493 450193297 801927771 913785830 994046045 247875326 582029706 437465489 612028330 495385320 716376063 164227712 178737457 634625837 965042592 717391172 998790411 882467642 947329214 210012396 961348080 280552014 591787178 42238843 340427564 765900693 898400785 101532567 517675164 400368844 618973227 978302171 995816668 440857327 611081455 92217320 662462258 555569014 859568663 124810792 650153289 650001073 867513249 928035795 975483180 613928994 633272239 744401491 797738841 661728890 664613704 387962560 706142811 146521855 257112929 672221740 790608915 425255577 913998811 777567498 995237924 272490780 517156565 67966271 581896277 429659387 968580572 651501444 941148048 483029146 746025994 186394051 829436387 520396468 583367989 87630733 252852864 708655941 712928224 910556567 940168219 353160156 767706342 696144906 991856490 586002718 827381877 890642484 891641261 180897735 193892356 417787294 740889152 869320980 930709270 305034363 710780286 683822583 761045553 179389757 564394793 91665115 532134702 692644761 830029926 32433643 871904807 694671604 707510106 955630598 965090490 20292350 915160498 813684351 913664988 763803729 999257752 72428945 533957236 512680498 680225741 384315969 572528757 184531744 739488711 985921055 989531504 898415115 963791466 594638663 676604538 798242745 941730102 283656896 482029367 745341276 769816239 589310614 772973028 161181428 808988063 824205029 941969006 662842381 841589843 503537032 929588231 129129416 313281456 468610635 998465351 822239538 840797323 896916180 899955629 552742548 576322865 770139743 903179084 774609290 947745186 980553961 987416998 514338000 850313026 635796470 853770193 302933836 376705825 199179704 313946076 893955649 988850610 574924232 672021015 914044044 939643613 752885984 808581487 415462345 666862155 778911270 825160453 422724370 467106544 578062252 672375418 326572512 678135477 225952307 597650569 409771944 781501229 23620939 971747657 207382736 695837633 568952256 735801840 724053737 872664330 947035983 950201339 103787688 155302805 457092347 920800575 999736519 999859169 338762876 833636320 76513337 820648300 486905287 977582496 548123948 743533964 96478731 129927341 997115333 998014496 455319810 475366550 818164373 984997781 298829189 505551085 84172045 719273452 698099598 848748800 268158520 821442833 416401984 599899425 216496004 655759021 775340857 977696869 498670133 970244010 369624082 694875645 120643098 443632385 600143623 881676860 714103192 871429209 451049047 935373308 471289066 666190600 439347413 836184160 868838358 907580475 948552850 992300949 12773258 635702457 922834585 955000146 374898208 718499423 485164055 677346938 553204517 722262897 318704676 539442927 23983932 601197147 291292119 683444867 235698433 821563873 289649699 437341592 696918207 742165533 282368575 408916939 461264301 632193436 250925720 455669843 649115925 999460847 578088123 853732123 311786084 927353467 246860019 706748797 311416524 388072161 660713608 996368373 299362953 334458266 332762097 364377270 905305089 952518055 399446892 967853281 772281385 968524799 493568670 850152951 795189725 859107067 580601705 702616393 945485908 997823720 441805189 568399451 56785928 184816501 567703109 706244539 546017004 694685186 2687371 318324903 389707085 686465454 324066495 603798708 387655934 779173824 114359482 528018268 718786755 987182349 858518192 919864790 906039760 926147949 435620199 517212265 882113585 895351125 957195067 968302055 806906462 934695138 935569848 974866778 496699946 667517921 503981083 653072763 924205974 925805664 827458472 867623728 679506102 952413528 484558829 981998894 722678115 742908063 486151908 841324699 663030065 828861480 963361979 999614109 548831822 885157359 549187835 891764920 61897901 985840201 30000150 603361565 463310393 481663350 939477014 984187701 785908517 883103541 102872326 809181204 65011572 750152924 282452775 338959967 271523735 520402896 66571270 886324619 718125667 761485628 34706704 92737993 749553309 767964959 946779673 946858505 146526041 225333983 980124337 985344404 609244784 864623219 436449224 439759897 811851167 898939675 659693154 748547398 415239695 542908181 323817069 830233107 33232683 291599106 31139417 703991591 26712035 879713551 909341583 998354430 350209405 982045756 144555902 937467661 8781898 728359739 826710269 954949206 59595497 542302133 62735122 234850919 258495504 712520471 212680948 912446067 922472853 947218197 854848707 999027216 92471775 464790622 899292564 995932787 784793133 808767965 495482247 738642651 139440991 476203356 774066439 995759337 584958011 914171373 564987778 574599988 548574291 551758008 208512297 300416499 18976351 488883529 351699086 944050662 636748794 992408027 990743456 994126447 256822464 461540540 542529955 832837957 254514527 974252211 395866045 421533460 504095346 514246085 488512089 815063284 840642218 916315154 779485398 959031144 517004065 567804396 742800030 968309161 225354621 830547558 787989007 854181913 843153916 980979945 214684933 446811983 269004690 551864963 454406548 658807075 605842709 798431248 405350241 522363051 159540223 759056192 774582268 897224024 35474009 257539406 763014256 832709564 979464369 984937602 338807972 884262609 298008849 438814648 695307928 991050255 556395225 736130499 543859850 704981341 125799916 868185223 167736722 624300270 907316446 913283571 709107221 834492520 280741606 896329268 784424145 951718063 459324942 468860193 32841081 362883156 592653695 797434199 701759108 917612637 672008257 924049209 452278724 528532315 679575881 725591675 830299961 971272838 318119174 331439861 817961041 825048462 63158052 443566877 996059313 997130072 716351798 856142811 643238594 698957914 793256440 816280387 624241570 785857626 139914617 798959686 829665176 994657077 323064111 731317856 11569049 105791031 230550011 874803519 876786421 942050226 100818409 905078220 920056955 922620446 815442329 852189383 762950695 965175861 316739995 668047964 680254919 953492790 504542358 683916582 237446840 268573676 429708660 515173852 2848649 916587735 493068181 772901168 55045492 636490447 377216313 985979756 878406531 912468951 204364816 434248395 152100401 729881308 329910516 880559738 502653305 683167290 335636616 932184907 872953878 888195790 513133983 816481508 836637848 844570221 766879328 981300624 209988876 260485303 295840886 992342627 244908983 825085954 604843201 711972331 392330593 722213166 99871518 708300799 580612529 622662148 92350143 767087953 525043646 582653750 222240232 401877858 251430075 849630821 829145768 903637089 540857060 873581096 981775093 996358780 554654916 807541280 922734709 953132349 947355970 974512386 398243229 739166316 681842308 694415684 158856893 347363322 274489880 489733852 956542204 991106696 332792309 754193712 439504454 824290948 974564751 982128564 508416561 855168603 511664787 847879993 459552444 529421958 933726790 997780679 258753734 940569639 780906340 885224563 158970043 394014659 772147637 834817947 897023640 944634341 194031213 386479722 178996493 837942318 242053048 460981125 787565963 969018161 618372688 869535967 743512683 763035575 290000078 635714537 941009443 972738632 727973459 899853220 879350687 952836370 572266563 859538767 96536925 428127044 663361790 796602292 292643187 834262749 682007220 849593945 684784345 808128405 363789291 902071506 173709475 578905644 515281591 830753439 95964728 769659020 284301094 995898828 576488555 754271973 92605368 326846491 380719368 897661170 445024177 628300723 144606416 652107335 48119766 136847296 737566167 946221305 403903745 436592975 847108172 883667366 947299536 960321796 172968014 583630592 8195390 177201191 487198203 821041342 977444320 983902319 206635569 355047423 174680602 643207264 210167491 339586012 516215755 938422083 910010808 951571717 616217985 900137236 25438218 555533093 241357008 535268192 987375502 987761731 777673667 976089436 224355863 545062024 919181189 931239286 897638601 975274992 627982185 750105930 593210383 667434847 161815783 253097619 394922098 919114382 788587736 940118717 248634935 380545785 398795748 598109020 945809697 958657553 734915009 781582562 990848902 994437847 18524668 991944438 201700183 795685235 641819319 829072410 742081843 937891493 472614298 880902140 447692206 524658647 92294944 428093722 671737542 943315133 34263442 88978845 765921995 880186021 579418789 675284910 308504503 683899034 926800607 970110141 755713232 812759350 39218272 947018146 876962689 917400121 726421414 903189596 393977923 698990881 266680653 782600616 739616050 773911177 712583700 899853592 450308763 573089130 206038731 351931353 945084751 996045884 281073034 894612695 423857932 492918330 778362965 951392517 289871291 669094334 690553421 873545810 652608133 989381162 479329224 582281935 575422327 622242002 676244156 710928467 61336598 543510903 977673257 984464082 860749409 864291231 747216865 903210956 654996434 657882274 132311599 776207426 975608379 990007377 755903911 928805507 406677045 811603565 906272648 947549241 155500665 829182877 839756610 951273217 898964114 963467552 890515216 900741721 457741805 592459138 354253483 988438290 435048145 459777185 687818519 812220121 375547511 812877788 177606841 263947068 294568341 538282302 169468016 370658425 613527955 644820910 247085102 423231514 836217408 992675364 714905625 881578180 396706301 815547698 858304212 877816069 221148147 511519716 30603573 648907160 232566043 523213459 713938554 755153549 614296136 809661675 155082525 301395634 425522350 602571383 512137435 555446035 67455165 452454744 358364789 593117865 116446230 951062746 96479663 900335416 955202842 971195255 717442388 783455546 153162378 579719480 976922034 992888049 830355180 925320049 757452253 845010076 802517033 938462082 308110491 406546566 468968515 533770483 985821119 986595783 529410557 600990646 817017237 889787998 472337012 968760018 90681096 319638224 627144620 683493053 574602811 892303648 610798586 884147672 626542853 652708648 19124786 661578593 69029904 880167903 128690664 373306506 344940479 730789395 496806327 544441040 294111306 309647148 201782415 667499038 65267870 415677585 478420992 657294159 862139986 982393218 466597184 957755602 681645100 912350365 230280170 973381814 764815399 906142202 484196320 597729359 366658484 694698930 94091217 846745001 175174377 521708857 804325747 858545740 750079706 764561369 590626342 681240126 641254709 745608033 13258492 662924161 32269135 691978815 516624139 948777512 716813100 970049479 1042139 987319220 848266130 947207851 504300863 989584211 508580983 636505694 763601708 975201728 9091793 92200448 920552256 978851893 910884911 974294508 972979793 993673638 420789839 816619072 380165699 559935869 566044829 684264223 986053630 996808618 545676813 643277846 689943378 909058482 353140441 855386842 119800270 766187798 149460028 249471514 812373207 884512103 365826535 930127218 550415712 620156480 346089989 778663139 478669213 650316667 826102361 951278134 906529393 963044523 395065421 655762681 503166116 801470840 199358263 357865287 314899497 450612001 848927522 963831341 686665507 879638685 545737459 909741904 763772362 977770491 474979263 887785300 56629428 972896415 495673203 903162616 219007480 285757030 818717493 933566053 785592434 842022787 141204040 436700640 546458395 566795594 716450361 970114783 630007426 948955638 41268078 672241181 343163877 515976556 11250916 827882635 265457441 270483640 270967580 765852960 931100530 934595847 153942156 889584418 613013353 871544789 299844725 649759107 7520532 446344326 769881263 773169032 649522446 986349630 393627242 779883573 188722597 469686763 26987887 308258969 262532770 930989904 850118708 968667360 510082341 581020737 378871534 412701082 61682121 702579829 703043800 705135357 670008752 797175061 222295564 263651088 445804228 876340540 284783483 783037036 16221995 542688341 254498938 323379875 583457095 677183423 620507653 866882258 124088172 656540152 416600863 935748822 29048451 203177495 154333871 441032267 305055775 702221077 882390259 988062019 930923124 950601349 835188074 942311629 450236739 460840328 588055413 916610797 612014599 904745445 538847330 652749728 248455865 800919392 942466203 958471877 11456163 303426259 636380214 910079239 755164453 773439428 377534589 730792943 943066777 967191219 155959458 394185290 485408009 605468405 482755366 496038185 858483883 877637701 796600658 979568574 210048238 794200203 540025533 751304463 746889751 935560772 902641749 955984477 578038033 733407069 580219566 998546373 764831733 940726230 18567877 818363489 620968439 997756068 91895191 578452674 565634739 838995909 971868438 996046172 133283099 627007245 272777100 382228708 869707553 933469990 797142189 858472991 618689588 944902102 407413335 954943751 532862848 962382136 958905570 965448790 275402453 540100230 101517953 248333260 23164053 921889556 340401155 476490696 790730026 871277600 319590966 876964343 263868157 767165191 595657066 897370590 765675031 969009663 941314902 996536047 546053724 784117661 346712901 877513496 443378301 951177914 57436586 79359881 237404155 344976306 847723386 893178181 839075318 922170551 575199130 778202907 263555081 338136078 150174560 833871608 682775841 715163618 235096402 965740098 894112204 900833151 939458153 978012303 159654307 653904472 850137583 859976214 45940748 175305544 160267233 203645616 304395115 442477474 60839976 931185516 206086629 482490113 453432192 920303414 348200432 820572023 887927737 999964430 657695638 785628863 373634098 722157771 888671224 917119746 360343582 878024974 558107346 581095038 130482298 789072172 108113044 437379895 552522478 734675515 400219643 890077506 233406890 616461395 729754356 849618090 925340415 965879008 201415265 777331451 543674902 710190399 893806294 999121699 446604341 977468661 610373979 718654118 989220556 998100106 984192441 988916839 224656054 979340136 379912706 476208126 677374769 837464723 628480962 771895518 834930854 882683821 277680296 621128570 492412217 969088976 219455669 611265366 265956328 820289354 599881053 895937450 52602554 104047672 535786901 951650063 668957457 907743431 305246872 804760900 252220298 850620199 697460843 916067640 883515457 919591281 171230196 283395678 803559183 945876579 518607848 696430055 798865136 847095810 167059235 907516137 918485587 927672150 394320827 887186325 79092554 740305306 966523001 986875511 688231299 999614434 491887367 777744800 857087817 926958708 253487234 757429958 914369283 993210706 430821029 492235344 311701161 924335748 59989750 465638357 891391030 958912246 663337660 957278025 672926454 839168823 454498865 756161701 106560834 359343339 781729436 959293211 139874370 848318122 268278561 534548500 159906343 923490692 246047747 449353927 556931432 773903508 876317539 968871669 384117009 907958501 602409517 756382873 15520510 87243916 386455589 831051332 200614443 295442348 675747764 947067037 973401658 979818281 953066648 982308113 383601394 927759374 299679368 423787819 417737501 636364444 354722883 606537295 98496709 281740417 893736469 960234640 896795112 900961514 206743808 614779027 69319673 193302940 751804638 877333691 345839422 366555855 601746360 817545102 108536001 961162281 451814033 736029761 536058976 658288423 287874541 948741568 207602296 417872043 44385459 129608184 418593679 618079901 24738924 832338824 705520519 759177289 674437600 834187001 695891370 791865051 286455529 298961718 23418049 535981062 680917729 912899958 147590741 355878841 872997586 874947621 901536387 989889519 717094981 872535735 818906048 936162248 882065057 957452561 799261040 865545836 551298320 711580227 149773608 316806575 106823278 885828297 439683980 734625109 364991600 381371302 734871343 981440817 396787340 497033604 13922455 593910106 259075449 977312481 120762007 574364040 469708466 577389306 211460023 547682321 546530932 654635015 315379986 756485429 676292404 803569903 385091071 600901977 717250343 904682374 129015083 531448554 110592177 750924997 902633764 999510128 924616728 932544668 964589570 967798886 412099505 490142431 693353456 978162555 158975189 429067055 675806794 696175711 266366953 693020742 77101239 892329673 237195314 701286663 670514210 794758453 927759779 995057468 931130567 963232621 510929627 592447646 135580718 810044729 35353518 504280614 835720189 837705123 406788567 656352831 902491851 977167823 891395655 907163649 240256627 457673779 384928607 881958530 802688178 966034394 437175611 547799591 621044253 967551177 110762451 690954065 333156784 378118008 256704825 765832737 733376789 831319301 686603265 775959824 531761012 824373140 449794254 810870790 235107866 998964920 313667773 423134211 56797975 250157251 703899432 960455035 907095344 997121854 114780427 361636419 17733688 206061405 208601991 815803703 643962085 798945484 739242529 888587267 265815436 590991206 615417232 820985648 140223107 875206013 708248017 954339682 868245499 934294063 586095159 890869296 381463699 939867214 148366892 573726391 171993534 672623153 808121155 906693512 528581222 625696720 357782334 636156191 625037474 930984631 827940726 896472201 33001066 916526626 25521906 409510547 322750469 865072688 677664803 906019181 162297345 846843976 467566190 530279039 135634561 641355310 186100669 862093123 264089011 783644551 515803484 990746763 266991611 421039049 528594046 868670066 359657201 553895378 818124604 910447012 347182176 452761776 774547681 795202247 753184243 779022487 742604559 896354375 609250669 781560580 832870002 925112705 826753466 840558966 285590392 591197548 448248882 975180545 491811885 857564981 719021561 747124239 112550610 385556982 539042766 663045354 704053910 909243844 224465626 333551674 417525858 499322797 806717932 925114366 680311302 898351189 71937974 665824995 78131666 834418199 564318517 978896030 899251135 941874344 592029065 916982869 911824700 945884764 169747276 274275469 809099831 959506991 134555787 534709211 393417615 794189775 752350090 821457356 662381695 667549831 708525152 902912157 714357819 840518570 790015632 893715387 299464465 833468011 320482121 600257667 348761848 525195494 260877920 265911564 255646461 837213270 11192211 668382902 734342561 778878151 474972313 731905964 156401525 682218861 455241838 479120552 53856674 138789916 828094865 829110606 788388335 852164787 608104500 619972891 584178189 838026642 695077556 699783578 950431048 980893295 696965526 925412487 310836926 435459771 607191009 894823839 123303976 454034338 792653720 944788500 281425818 361727400 130469387 805634117 174060950 537029064 757361391 991585526 740512539 956782700 556679022 932922027 359944553 365089939 149222356 892824235 680239017 826346885 788619851 931979198 88144934 753314085 710629670 848944926 932448963 993229796 993117064 999435459 710424931 851749367 684959745 897624115 649121717 660147219 750396110 922839336 770640594 911953794 801269112 970207801 96872649 303081292 128649502 344188120 750697124 794209987 50153927 546320015 18004232 248206867 320890852 719683601 234754945 510962842 815029118 865826020 562762174 836622526 562762623 736517987 756459751 979109198 992698227 998282762 584085591 813206012 460108337 631355109 895489541 919027199 665167706 914614745 511917654 932200397 10165673 283286343 786049900 799487955 892204124 903281934 797186448 977775955 823931585 987992908 123026378 180749206 41008686 94489562 312752007 635046003 241807335 569861712 699171672 986199591 674324187 680531864 805711357 819944559 986645357 996931841 204333531 364625380 333567747 783120203 189205514 943320415 980740834 989430750 934862901 978603249 769373602 871268124 701778111 702745760 347787670 485744594 74969387 271579155 336319278 754249464 534164054 945846614 780722331 968271285 294679193 404909240 79079180 556253446 959138990 990498229 208951876 357002054 688710520 792320172 198940412 780145649 808690301 832414858 709275400 922877339 87724568 685821456 585449849 614631024 242752774 325151893 976254633 980466259 147930709 448756160 636091624 949277371 56843539 149618246 966801213 990249844 23828185 449411964 237748816 649370119 885358357 895363270 438425854 749483795 255747756 463052215 987104250 988484524 59440300 485689164 130336608 933328022 134808040 614093639 732483887 936257978 496647550 602722201 998737452 999113300 105775429 829209468 892189562 901115938 15124405 99498520 198109017 551318001 349650268 353912281 747432435 916769602 266712561 550918040 883154644 934187737 504097075 924916467 898022918 960357230 169907377 943799863 653491816 731922749 591008901 622848927 258582752 897819612 361523606 428734391 783916021 853355451 368309203 666118096 97362110 238816936 460952582 472977490 955569667 983624956 497382559 608713391 754795299 805589748 671594649 878835115 194016988 783011805 340009188 605483022 14313844 998445327 876336218 899452103 95344262 144690877 411045625 823423890 336209396 939520540 287530812 323735318 942587080 970469980 862227181 893424404 728097333 922370574 96099455 235035635 91543761 303421543 578962675 820103588 11148831 907191460 683658343 750476386 185953493 410414937 966946529 967943634 150930223 503319798 14447346 79414000 885474485 996487576 494228714 952283744 230557321 767302056 530438834 817023155 437820790 987987965 345265179 750541208 322672831 559003390 966776028 996376756 312505896 568287320 347502236 850237937 352608453 355006246 251310251 496589982 384323602 389191904 261321956 586506672 716175748 782159866 402391595 698454308 516562346 534833769 443899645 792096258 700421675 769220490 1010533 97329730 310387647 602377426 967186981 967911762 730560264 926827994 659682439 920368899 674614632 813627556 554749735 755619886 376676703 818014833 957246925 958655091 388229244 657645606 680431193 919602946 227755880 267685175 405378893 564846261 690007396 809606505 934651111 946635814 472667729 978666866 862957353 906694518 499885860 887201532 74153633 98670975 391967286 881622298 398635257 993814569 60728734 74784326 821074036 904051599 91447988 728123721 405904935 411209953 600596748 910532740 414996255 550403944 704964734 884632161 385671319 821668584 84618941 136357813 866715727 912749849 425640899 825446256 980448421 989114642 785735826 987654625 678704487 825022568 280407869 456857554 391324325 556062092 340291598 816839750 378090129 384493815 288052 158051174 757140392 975752169 67996753 106168788 987578669 989921553 998276922 999187227 435174052 482052843 303292504 485903237 944690013 997476496 711047602 998327399 183268174 522257643 106578395 446968901 74716550 977669008 304737243 901590007 113738118 871639670 956746253 994396039 546687957 595826294 241020885 999852313 235063803 555152742 911544500 952755300 971730491 991297476 404129123 660687341 943593109 948073948 424994423 860538413 34332858 671929099 455811863 751864270 299859686 531057193 877014904 936460769 831688805 838835855 89945728 672703529 850277640 943675403 247028388 748660271 972199973 992990431 221458745 719912694 708502463 806951298 434477944 588635811 869664699 975113963 175313199 401873823 222577222 710911928 23156052 588181150 336356296 476138591 2822633 211179100 223938333 407638422 542373825 959942029 173949646 368475046 597502390 830729936 154099432 673487446 952335689 980045300 851396486 977332804 328771761 775709063 129335048 921549987 826991221 899492588 168919706 599591007 330284784 730711416 661812978 925214242 480112742 643650485 632733949 813557360 233664196 554917874 720718475 722565462 809361044 985327894 922851308 926387744 419084164 999696021 434931630 635614608 590198171 683086503 613106204 622804517 464701144 948038605 9815118 653608023 505503870 799546196 508533086 872449525 183718815 693533552 93414513 503921197 86300328 543547767 340377131 621769253 800740603 975519461 153043581 572866414 49815345 726967996 285598807 916291810 366014697 969852818 201275831 624643654 356222815 699215128 923315588 951537374 671287229 863669953 159545093 583778907 790635700 801277726 201978264 510019600 118406833 151744240 971016881 974749170 451093714 960303889 261989672 318559951 113443223 376030558 579215582 833273943 786970941 936878107 944112913 958726811 798634656 892449969 988153478 997463449 880253074 884315749 45310340 922331294 283803317 470648815 971109639 974226748 1870145 359287377 646854858 856879471 516242360 957565631 835790228 923837606 15236098 552792392 278001490 469045555 826121055 876948919 175173168 332235323 391031065 797976923 911689232 945684441 553746951 741546458 154373961 843644851 933522598 985093753 315268211 927021715 74279294 276727613 907472339 985907569 269290820 947392004 578617999 621698012 785214079 814476837 363602302 789976255 950583322 988813819 454901229 688437214 188497036 970717358 72825045 619870388 241766916 505021891 860159281 930110959 175135460 930131201 198243595 707761215 859703542 925772760 362756945 827816955 104405977 679841212 834441184 966231639 123362306 314122451 449120972 840746916 81558994 142820918 22259887 753978205 440976911 841915056 16150615 343417630 188720080 541595946 374434118 794940123 469060196 767520483 952655575 957683661 965507091 995580770 215809275 979451840 635236073 832769883 759268133 859124660 505613699 684778102 463138018 590833073 802664156 891101540 930925608 933397434 853713464 858635184 876699421 885530936 571989386 746440054 257414195 728314957 776746995 928755598 417213619 769440515 36471103 247995066 854600208 978815775 819905255 851761429 996718081 998409716 397998837 877680697 174031520 184196095 35727104 95940741 557523035 634770934 657215449 663094776 807640245 970133893 642335643 899953545 611164472 812308353 69481931 512171279 557136843 598864741 428658746 520686331 593654265 823888129 499820065 957606470 584155082 750074869 294018340 728572193 854027431 923823743 304250930 344397952 828190614 883056132 277776672 639768756 165312940 739549565 868808028 902309835 191487841 356791875 489952709 605235243 237518641 632728194 565701574 783442880 445290509 462275679 382216070 529703152 265612713 372000540 458625067 717573302 948553536 960370083 738548107 897117171 136803936 919291625 232733324 372794531 708013744 844149766 799184129 896249360 189344329 979336017 130920561 494460067 227504238 408764927 831923767 915182573 940688565 995622542 793703411 965390822 951829636 979047983 107951908 260328858 644466649 814769988 638273897 854836935 359367868 807294564 130110160 184944793 229297593 583860153 699555195 746664195 113145318 716279555 864901691 908257829 16912241 634600600 739257339 924246897 999366311 999516088 627940836 877061802 362694983 395771600 811487428 987291230 342273370 817658688 599458886 952441333 505758935 978600477 4539076 196175617 795202959 922059572 897553314 903567512 722289771 922168762 332966519 477950183 496328140 830898737 601209045 802980035 494819267 718799702 844358915 899123170 246846263 774231989 685009213 789558176 339476217 999477746 163884348 843965299 533686114 876512498 180626588 564639556 229071109 849356536 518852075 680582882 610882295 688386268 483764817 977814236 667833799 849480922 682311332 991922250 490458640 707701021 32976496 779433741 177488517 590817296 187005575 584912443 378203763 713422841 26385500 985229698 190527884 638351933 221562138 365974513 866470881 921498213 189050684 586866403 567840785 794955164 333669960 405090442 347961495 802901917 543791683 581270280 329971295 996520077 177783264 546062816 275791101 285979158 659715883 937299586 512531457 525196525 292481240 451431702 634928926 915630468 318273537 320685707 711254130 934778003 443055504 771594894 454393409 548624781 68382858 717692966 279502506 514081643 230710843 583543434 692299611 978766530 111547099 675181230 982185123 996781399 642883541 683982863 772242498 876331651 109599768 377619481 415131980 880688904 111173114 636519610 455821374 865504365 98600780 318545054 830159411 894976475 181064482 233983352 415846063 852505876 734167562 970120927 684426692 857166826 766532295 918897793 837833090 904832997 739080876 983790797 699441810 760670053 538871435 882083065 850658718 887302584 976368832 989679128 920770782 929428284 151482961 962853623 56966917 413837612 965481271 998326582 474837463 930621281 160260440 290440058 414099313 673551158 946986440 985540867 741750556 842950508 937079216 951643662 650189766 909213539 782650029 990358119 98694945 911229316 226146291 553084983 459864832 566645369 689281707 795334903 661678270 977012393 45820866 61083420 912228424 919362592 28268009 298710812 850526652 862202538 900606467 921837038 670305494 838916976 67857953 307073719 702176926 827952197 986549978 986969898 921610801 991138217 640443965 856868848 917526319 998525640 444484000 453445801 468255812 834292732 823381516 869000496 916465953 936181375 490715473 498724952 2220057 514282794 428734744 921648800 17760484 311040715 259316675 849404589 336407165 665961881 95957312 136271412 786108255 786460542 567857183 651909888 31492418 246705023 98461453 821950228 480071731 924243744 729061834 964564724 574749709 740524476 820684971 940359716 463002963 885227552 963091585 969001410 283389470 972027682 759876137 902247911 280594492 999706472 134625189 228115765 628052183 860183330 470058204 609438154 321132427 803651259 845044620 865743146 809710610 886914556 130191415 736444232 767471456 963129777 435302790 772409444 525308427 781123854 851276201 889686554 107260262 915656281 138307807 362530740 730645242 887336231 48173813 604998613 299805336 966788680 17914282 823947966 674299898 737967954 98285114 290661793 949582082 971355658 291439856 450021069 875504777 975583697 285611645 699847812 863762191 998940208 300035153 434933229 999083975 999541656 976503788 986827434 86173857 158900684 672293532 860648786 376522347 574743648 576615711 975633867 756499515 790322311 663059201 977259528 996770839 997922794 290964002 982782991 857887132 974601950 690595787 823278719 458475062 907635388 90532171 601126450 25418302 194393109 962850744 975403486 66484904 520577310 402588900 671841482 355973610 732073319 559835024 777012043 867975489 949198863 371458466 596925049 909037441 931155966 654009524 654548562 935921494 994553963 402769282 618904917 928052936 966568390 700326450 869034619 346510565 625478007 593223037 825419592 809035363 941851039 111518897 240278202 866814878 919575989 494608535 927842333 301163327 414385264 844669055 993354144 825776110 872451823 32390316 600792098 732502823 849651719 53400084 766953749 544872521 887463557 992070488 999332519 745713898 962078269 310068822 599241504 120291929 574610127 449522772 828442237 390636342 718805361 499237229 597005435 168314856 423304675 124251327 607483542 998548328 999540907 233950664 651780638 581027355 647844612 459870580 856467664 626063288 825206627 123028746 995978789 514574121 735031359 106061355 132757550 474622380 488841866 967082093 974533680 788070535 855764293 889057278 966155242 80599183 240203468 519160859 680969330 86153494 579887388 666912069 915075330 183519354 278036046 986529076 999510519 922379399 981198217 355781573 869248509 556878568 596306594 774163070 978171101 701903777 926889982 323184919 600102938 880430665 962190021 673503952 930131373 892540632 961856575 472569879 530543196 217171168 768237918 431362669 525839597 466174734 705257698 211030154 352938963 106652037 661131387 772341446 863813175 850190801 942337902 369219314 598987393 890759971 916325855 402021187 416609797 451816305 663521188 559866397 572976916 180576123 738493033 70619528 920846404 549686655 980194575 582366563 799100982 568718589 993548243 833480842 860599164 268461976 682706431 573937387 633728105 251142167 461135100 510337130 609163124 555370842 817019300 176806009 746068391 337630872 879943452 990430386 996361160 310165891 529260708 684402862 943196067 427558609 655238181 279853729 643553289 868532115 984221547 710798735 988961048 821045347 962723305 488829362 635222953 997672115 997930733 839818128 861635516 663984852 724682746 170746984 305133146 690326318 772309957 900094370 972594300 613190776 922145221 568148912 819303286 957280132 993917794 307007472 335345415 736782656 896845869 801373332 932917820 808401785 954494364 189170503 304795487 694755937 972982545 972716700 991587280 524808144 559656912 17084460 592654843 581068257 908636446 225845564 951336816 323955692 431091930 321236466 559955301 434677654 878606288 493201197 603429536 228475382 602515480 724230100 936548510 67159806 632548510 634214064 840941473 64272980 388321570 555593687 968591507 263880535 744594418 49495756 490157055 618277122 827840098 62243417 414363152 532807769 692610812 782892735 830326602 923004116 934012201 933546282 950795210 533303587 909838661 420536148 442808934 615387599 832786560 617924035 907321101 266835619 749298447 337205626 517010600 626714934 721629359 949003035 980652755 576693795 984996497 970852500 984437584 192795554 706649253 141487775 935103027 11335455 665231285 548353302 996725614 769606373 955311671 650082728 725520220 14486982 74121503 793071464 989322966 70775607 767337574 624935343 650701462 140311081 848636465 374804899 533140584 696615931 871342560 938722629 963506052 17137863 486452017 21704514 449719173 675955286 984262146 284135149 609300430 243879357 835468439 343585913 678940255 366943005 403365473 678250601 930222483 386352801 949608650 916748691 947000985 706790428 878637565 51607011 731343480 17495534 125077527 317312562 837125405 270794684 312416127 655007282 714340532 710840487 913404581 720285374 915818729 676193865 717453490 446338674 485146971 523077539 808437303 483605440 841431459 809964951 827794673 333144945 983541409 177836431 304497658 878602667 927145600 209329138 910639321 122588141 138228503 274163807 349538274 72490056 432319392 494589101 746326715 966399409 977644759 104469474 520546422 267055830 846136642 310664874 967357183 765996201 911186432 738820976 920935540 272392267 833314864 861300723 933385069 874137667 994978089 408551775 658973157 798129996 885600389 133223512 585953969 650186881 765416573 66767386 925053031 281019599 296537075 820519072 897550687 611672044 656445852 45058059 539944576 376529582 465255559 474276270 649158367 186681816 840751155 124961548 471902187 362198844 378250537 314232541 770745488 787711177 978003225 88376751 769050671 599706085 627604751 574341641 906389229 784159194 847057806 393334763 932831653 39622634 760557968 803847021 873003857 120820689 725344968 42762292 153751711 363395778 917919526 611275983 775651443 368741106 799366672 237441682 785256430 546543188 633634405 211916530 966996000 26429777 328187549 723015711 917463554 921144485 944628294 819803491 917393407 230699631 499019809 63100194 617327750 302383297 500039659 169442114 594583636 75136681 366813815 140835287 968735531 1821235 751417394 532424274 741095011 14243334 491846219 353031248 457947838 982675227 986830207 303244781 669330128 94817452 697231904 832555251 909020587 590615435 951295010 885326644 901169090 684441849 781961102 423855813 650934798 489064056 661305127 588083797 704476192 310179444 745743329 104422138 750307841 625471649 855902904 551568673 569862072 413764718 489224998 700376830 727641161 928745643 952111195 128547247 805679744 392651219 850748087 594142725 939651850 57273645 883478484 761827296 970361136 932402945 978073674 381599487 394465981 308764135 980614103 999259699 999968154 376255655 563835655 660991910 991921141 611023405 774598910 108387687 854498306 28264986 526610451 563410855 614274235 492537178 762690546 768058106 786114190 454952635 828035397 800338839 883210724 224650855 273633503 869445688 972629025 822878210 827611172 733765046 946493653 908647415 940790076 261225756 654011944 117699481 211221886 441527507 989057707 609020824 949182354 41397651 60774904 615157218 821984944 961384585 962889814 60524523 603789907 399066050 872100960 443570674 938235354 520680294 735041184 639396423 805704027 575885494 947006203 201962235 371016617 416818194 880283790 471691269 749953900 251244259 885652836 691237419 723122827 760241850 873373225 597106176 609763393 520108937 634399522 397813749 833438311 129334636 160312165 894455506 897460657 985538702 987069581 915373458 968115967 377600569 502597822 998586302 998929174 741837232 991167100 321143284 860950615 368761550 714487433 753678775 813352377 852812863 921575502 940223701 974135594 864564970 902290377 750875553 757007028 179597693 304855405 112751804 812457084 528751610 953307868 569948847 655785100 742767408 950560683 461695331 745233081 63848885 561672972 22339847 421415995 360648062 481415855 72406749 877614284 11972715 368015936 639321935 673697696 834638620 985655887 565306822 949178518 380056067 812254953 532675835 584403281 379629535 884648814 424291021 700052222 632631114 654572960 60466096 238025375 627856654 690028344 735833564 997470131 855275088 974476075 122380021 794772044 138446360 269216085 629075567 968597040 738192516 810620895 846422457 937861474 949014612 988908703 584679868 803452795 885290772 928429073 22407141 352854183 990569065 995547893 47091475 785229191 348144905 836738233 827444658 955093235 856527018 896585289 15446592 238502763 860205160 875425163 595070736 611873726 349200950 877288968 911775453 913493919 695547154 921320753 266008571 643682119 975790022 995631591 158929456 931918518 269433327 461761031 964714596 977442418 548856726 963359731 147981612 824801900 141872445 712101236 799698542 893341049 33302713 419757129 502150431 896016524 34003000 221928602 27471115 772674733 612386095 674985228 52738547 502045107 393191622 498967926 120099690 293502513 847735253 963543834 25813788 900459701 669524360 710933436 238430291 690632026 195280383 719489112 348642885 542405524 622524387 964021166 194832754 935649400 36896291 376730897 965411105 967637648 279570585 743167237 609223385 744173917 343797389 511578062 915154031 926009379 140291064 453382823 825039642 923249205 534055478 982776127 735679210 802893694 241599605 995525013 462013332 865410109 233828505 939528269 231631683 913056100 552687812 907495753 325359172 587523108 384589763 904365165 130615 655622483 392843635 783750511 871853078 906361775 975760995 994727029 911291387 999060083 350159031 837210111 115891561 133332268 431347256 653379810 584996198 740467177 26998648 936993173 631493152 753239102 848422637 961189799 730076107 785459942 95216105 988113022 345200993 517463338 453646679 472595129 612600622 671287420 927768004 986908535 507312159 646018598 501515928 626577526 969630182 988460092 907328826 914132923 636375606 978595359 889339000 895725179 850449580 982467222 66424018 264147697 936733642 953931453 458528246 467003490 113266354 504150770 914716256 925089855 417930843 690461143 955420864 966215345 79958943 283024206 103386917 790547857 395213810 788842629 846705581 910000738 23073643 931704814 159593447 348537172 301166514 543638941 439749784 453267762 343441383 974590265 703830667 818333970 345302208 472031477 468892222 800833297 614193446 758445580 575331240 966233234 774696802 803116206 160532302 234488069 220376708 739221772 541078575 709857125 552569 649883698 180932065 681002743 658005650 897373516 382039223 984094549 329396595 468877475 796649696 949612297 65285840 767852992 604577745 778004453 440982541 469145332 324090567 764962791 793945807 995496941 992836130 997851094 3102400 442232247 166240885 760095751 627730651 860819584 582007139 583010427 10053241 288451091 311985999 834933355 229023088 537088173 251251033 562724107 316647996 664422955 482437132 604096296 688017149 773495070 289737975 836924868 479727112 773270678 220774571 604503143 593885456 665903887 905410546 910668521 681354637 818249765 936570091 981305990 161701417 463697179 163039025 903200691 297213298 370432027 548512369 559384565 798786583 825571815 89113547 776111273 318470084 660553969 272488159 876090685 300797147 549645308 225550879 440171458 511108372 803833101 658510468 990966188 29021720 844292610 382669154 629626027 859524139 982234964 983939966 989639960 398951722 974306728 955481702 966780908 581077758 632221847 372175788 558617498 108588251 432165371 802064877 852761863 661154836 880984228 782495005 792880976 49820068 312366235 620829419 694769302 280620501 556909855 673931755 839980920 469408913 976956212 97684117 680252666 504731155 824007913 196878397 296148122 47591762 363276311 135025473 209806498 473355009 979689555 888972625 897118801 70305491 395476559 314633019 813208119 816963463 860709413 272087913 816567199 960847270 997344150 57657856 346487293 577412523 860670613 508924632 910760945 845151594 960341065 458750744 920639399 610764970 741489037 946489713 982710507 943847831 997677499 214107495 682826174 998409372 998758017 751255798 838653950 52950962 227781139 261840790 488094700 782544394 902822029 807225368 887842952 561057937 999148699 533069861 645667531 181790777 636729031 709169580 745647217 672007961 770733454 649369114 885432801 678854433 987266515 988178916 991189807 836365576 841341977 862355473 963886577 944881118 999461627 542556716 929683019 460675010 933767661 291281501 663793900 61147458 436795691 267487530 343308498 73942400 809870719 320699847 738644645 149295470 252559667 260070757 702802764 918671813 982524042 412116081 605985100 787021494 911964477 119807690 356759068 589790498 885849082 599910064 936508980 862309814 998153656 651412564 705021985 849860324 979418767 245426860 566063707 825479714 942902203 887798313 983276959 674337770 867893135 318583900 768588329 29570293 36106920 953799282 971382260 973337438 982348227 730828068 843259644 633877955 937942542 245333841 509140079 696073770 879466095 946296990 984733456 780325732 804474681 63067599 920232997 712971411 935186453 327701720 946231850 297040077 694703942 465501042 830555717 540853159 580107919 507527609 713940164 173457119 698508378 511590918 922904530 93698115 702819824 577804573 984224508 201876111 248207887 714088942 952866385 981592315 992492255 45275853 699194758 909458323 977463967 637765780 651533888 522948103 734827320 532674073 822089991 156518043 948185083 296400285 544261702 278332447 320268325 233170520 817072041 887774310 901310501 908642111 946370007 468970735 643088726 732385939 958583682 178670399 729247998 321692479 871155514 485216960 708810479 958470445 993910927 554919231 659345470 101350360 111023436 404167342 680513328 306739823 365662609 33631085 386697144 525302750 684635123 781983659 848036873 455260366 706434874 255940953 938395006 368226876 939342993 670735275 771472084 673302989 991603986 275967584 704762648 353204156 506010460 194246786 848437572 271329013 510970836 404886312 654293368 103579831 126771938 59510211 912344195 548391427 590489047 987035158 988008547 227766779 267865759 329910127 524070192 259181545 622420477 717621015 879362223 729051726 994366549 369074020 967429851 279346130 580141950 862164141 917032234 361415811 770309624 158593228 766946630 286914469 749631797 876603573 928013613 26825834 999673544 931452940 991529615 364977378 943658686 18112733 761534291 178925905 452595508 946981972 951229156 655110480 725427814 679857901 844287393 660614706 831786060 598298965 911001228 245585519 454396670 159589667 614871174 290597522 886074447 33046242 596675972 166472110 499951870 109919605 967651607 318313262 688546348 548523411 762370949 410352803 770135282 279624404 704203148 361983634 548607964 360785072 630104252 15810936 575892617 905577786 948239817 448592609 781342641 156283914 925210409 993478805 999367821 45838195 144403080 903948540 930922748 592494551 884511055 666205603 714873791 748767477 977125192 403142434 713708540 89885463 754110940 16400821 340073906 754303636 793629655 39786750 718767887 206334956 639899907 844212403 975535001 924347206 934449901 130040582 431351198 951419755 983763144 999846053 999958519 790689727 944859134 749584058 909968668 330159606 617186728 929901709 997571707 63011726 104023641 781856931 855379619 595553365 743645895 788672088 931670172 302997427 991737805 702528672 998971941 466242980 544405660 223018798 835485544 21407438 67961881 539403115 570375578 283705759 407949650 390921345 523031502 894357574 896436625 285079689 300469272 970196356 980432710 966946560 987407309 704587679 884534727 925774511 968771728 588636847 658567336 525407717 919760692 270834488 758695480 567796125 683303852 784743470 786502908 514049629 999384180 182836379 970890232 524252709 732823568 858102034 971784283 327723704 728823622 231175410 828127199 245201886 955840266 24785974 298667657 79352246 328199832 896586675 949870343 20731788 709427873 613165861 760074381 8461974 874455222 683749692 825453456 236620727 371481824 230638551 950332110 784625108 903101294 868522068 995991146 219904744 824226488 406126785 722116332 964082369 988352829 294533384 641707585 704580541 959833165 756589900 811456692 59995677 945158519 816677063 988843136 540387313 721477254 346337205 648990622 849919090 885518536 855971889 873687014 289710880 605777060 933460960 939705887 770669658 946166456 178482514 876848395 700525899 997070730 836773034 939540722 287778025 553262422 673490295 771831681 863890696 918774947 859937415 930798429 969342259 983742826 559537830 771693224 549637079 863279354 652033516 665206128 118555709 423791564 788413589 939691934 673589079 997479168 314960714 664011644 699554060 794459542 574893295 620515189 114205128 117379971 442494080 662089374 847896861 860657779 426753021 615908771 631391095 869747241 375349798 804650529 395018461 985146486 992549973 993150391 335934480 905955133 382867382 983895731 971610299 977890458 218444447 243659494 768518799 784864511 417265006 418672523 912309218 940137196 125210891 489998145 538528776 644733516 661879054 847517592 628189540 937259520 674379912 761652951 858803062 984440862 653022219 914263673 42007106 767526735 935054884 942240139 815250745 970152010 102489111 182698564 482032792 962451802 646989848 956857176 744149444 949636638 942851335 982786815 202856244 915484185 80046935 453293325 898985402 939803653 334139168 757951219 619994155 645631776 137890952 733286876 989938627 998030691 984971276 986590348 468103701 869702031 232750047 685269685 58790996 414561742 834695908 849518021 148512967 959414956 208491984 602409682 720916088 906428070 802546698 939074774 326026541 496489581 822479071 971378571 812529444 821216829 412196236 851523434 528318094 845487762 185613391 948370092 972667345 991502305 12520333 730620882 379069294 785525808 855584523 964393956 173824082 442779524 469493720 568030783 338048105 691212108 638209599 984790849 859040005 996489418 515715057 801741218 282948937 523461164 222158457 959337401 773367031 874693915 694406100 930427260 374943421 698417434 212419026 361601534 942782235 957646712 83658847 558566169 274521217 792457231 734127704 735740913 481814815 672496721 154418165 722958926 41698152 536784488 967422434 967583130 917588304 969183613 705934294 896917246 494608623 543533940 781133634 846753275 519043678 968455141 440823235 472799868 637728912 769100628 320979077 902865093 863609308 910126597 940273709 999523936 895906489 961209387 328990486 466625735 192488261 291734444 714830593 891117246 345948998 760751619 377178651 604454838 149563068 684773804 342490349 359890509 765547106 861137589 298347381 384947159 556807717 959505063 960276851 996257339 42739884 919613945 376327134 683395141 342818858 759313980 62506739 928339048 960454408 982908709 630538455 652602838 599179388 867047370 988881754 995435715 282880342 622699070 599236388 650100245 826662950 896432678 948058603 990747405 592116759 641805722 397745179 940271703 238451987 417392706 479301171 509668700 573362539 661467084 699050330 718876546 173594085 651413976 173633720 861176677 961505931 963794189 764509803 920930734 708920269 775367429 688730896 881233582 841255220 915627466 372828395 754899213 294211090 974067115 180580527 513316732 208464822 452368563 890518157 899485359 348520107 508505167 87551821 246106034 941896585 993193080 734929406 841473226 665826887 676868864 247471048 562260691 478517521 564835877 626169439 688777762 658661862 956505760 75883622 304275800 773040413 988367751 466647513 724857901 243600184 723737064 992576173 995454002 48459484 539246792 797080622 936054960 832277782 848381788 588699516 656139493 551497216 771919635 447044435 837073520 868161628 923534796 465946113 826124234 550697024 662699885 997730753 998546917 316237679 652589110 786126887 901929982 285728132 754151133 375946375 416224605 647808695 754373297 868211006 868713821 503430550 633497784 190391197 282517561 588501830 692785832 942349801 998858565 433040114 433476870 681246995 895608225 293441990 700192566 884854087 914026832 773127585 906933811 493294772 715393612 865487087 974996917 896985537 953808429 152138094 481088398 949396773 969630779 941418215 985429299 604833661 852918277 888939054 923854971 740988622 998248715 540081204 826189498 51894227 914689803 365767546 546081633 130460025 385793513 130423659 241406126 853397228 988037135 414215203 700875533 490441048 589705995 830074381 861672803 2908189 619332228 252202043 471496252 597928602 926509864 431082294 631079538 710730033 912554756 590701726 637718119 885070776 978263019 618476428 718467278 592230343 687587759 780779239 810293867 513809007 773217060 775590463 849114248 505426110 841516681 625265533 725905941 81651220 348601784 93663412 152018923 96865893 977985609 589345095 795305386 738031645 964485445 149752160 946017689 171438185 555699175 643532052 976946364 568384466 988311013 579334339 598043409 993607608 996421650 618051770 976826724 163228760 640579243 333434252 396079403 43476088 547878916 642510461 694374136 137049194 346128706 900093996 902353829 233201039 718080407 961614325 994004616 559243465 679400204 376859369 720441451 64622288 502958567 35198678 292097213 622422445 780963628 807691338 890258273 506411690 738742988 626059095 716154403 540333238 621584069 537381058 641113054 174898457 823425669 352018021 638303366 893762141 970755236 934238883 997511357 10878590 742697055 165958851 763226364 950148120 960083186 979838307 992847220 678823403 789818339 418984298 978369932 65528178 237009526 666013208 934150173 170413121 267610949 426366497 670816816 242109047 993435623 249248306 928865138 377728335 863246949 882188966 903097345 114622532 692260060 918985637 992294142 717021424 852531181 903020245 946023709 203893309 331874714 836743419 915554325 544252884 750878560 901207272 919033892 367920409 818412613 61339739 930414914 45717027 566850596 631315291 771223260 257647533 446841836 204812046 929555446 112443627 790218436 742012883 929908246 994530415 994557090 227905275 675681326 182299126 945046066 146222808 876689037 793279054 844679339 9004087 638848870 684864633 814012024 585683246 995982912 554783958 639436768 532867017 858777252 960433529 966902109 443010910 938477495 934721279 979867712 983975263 992383579 447323488 631797527 103612454 390703813 568301915 598049434 139326407 181966067 457854805 715791444 994589955 998741247 953595881 964818213 778336830 785464493 388757094 421725835 912274807 974674191 29924433 186306716 589095033 692902854 873958951 910843692 343757311 725421948 451780352 575860991 800236784 994099528 349578039 713018293 639961094 651090804 915711259 951395443 858790483 885148817 852544281 892907421 80057672 675784702 629801049 754418847 190510227 355105013 50623711 90059052 367074080 546711010 346093727 822451330 502392883 855027016 641760722 684949070 37810732 365317146 969786228 975619259 375497869 680936093 10903958 360883563 226939609 915242433 800898092 945726545 853404716 853673763 970574526 982269882 975101048 986918481 487691570 651048796 339181576 580902149 465408972 493534584 8622003 810402311 755965727 838453757 932071169 970062067 113230980 248354403 947564831 967188571 211000997 698047002 579314598 724775737 881933607 898651479 797439732 997276994 510424799 634188517 849849015 998165744 590448489 592119220 866617562 960838985 575867679 925632704 414808408 818338390 190350835 481452098 215045098 576080183 813281780 928439298 528780404 625403483 268625743 359064454 964889889 966802509 28520933 246637873 564867212 804791167 262021966 707953173 139140349 954174895 352495635 619284694 97580563 596689318 598027135 966623145 906842713 936813345 368237680 701417368 160373813 926819818 992948159 995152810 350843477 777789010 358465407 851633309 418779373 534508492 114526510 382033681 819779501 844651138 480023620 899366087 309763281 637760576 92657414 331639759 523918056 705768350 524990558 640006327 381428138 417934754 873207998 946694940 496162805 565521681 896486313 941905491 460481032 738809549 608336438 866987583 91741275 295117982 441839465 508830533 685253971 995405080 680867257 987330260 387999073 514301163 508450828 888942002 85259547 335571410 607256351 615953000 765301399 790117838 327887042 860877996 628013620 727696945 897489248 934200484 24670529 186643374 973279586 977529530 742269311 884019470 164693052 687983970 718755914 802002435 660388115 844390403 23314751 284292220 625753885 769442136 9161408 635197152 913650665 978735405 238212563 475889232 953581528 971414326 694830128 948509366 736307615 976616267 196310996 357384404 96505028 269665663 768864127 866047964 452672688 480569339 532066990 889164290 54799511 901855485 337813246 690371325 615249274 769871895 504311118 798309592 283053331 386810426 481648778 657612492 61361961 133157584 158430318 661257079 888923529 959836319 55872739 92110292 390215914 882651376 52369934 956888378 890485267 945393832 601141519 637458209 57226356 196777006 589642800 917706414 588748251 894507789 248287092 417580277 623875853 924275638 385303371 705415525 488150877 684062471 128870669 703328258 615183373 900811661 150817324 637905604 642590563 706715284 521682685 644288102 879163825 924787984 576327735 748065600 717462570 998539476 208898 509615144 341848459 992321383 123956691 143956039 789643426 985425490 882106966 978465244 921740856 964927400 874284735 942620275 160480638 661821229 734935079 932796178 834309609 911060943 869723830 881546540 756728547 769630599 745257341 895407743 801800049 985636263 487098970 958004796 50039326 457811198 21442934 889031276 653223336 897526757 249810712 482253153 784665711 861594290 16724300 240563197 169941306 785734022 288435266 650214807 914594933 923997578 491216351 882515093 703804071 894102812 539725668 599549223 851926459 932798505 828113092 890092667 458442630 907973382 104641550 837169627 809500856 979596370 126312076 602201889 156319266 406377605 380443894 538633082 425464742 587700044 961523602 993655871 483092815 502667421 112170036 614742756 121065819 869574247 575020034 670724679 655027521 891858547 830268703 876923931 253656765 407593996 258889868 576143243 441398358 761046775 19172551 442335434 450960618 562444832 894576836 909470713 923582323 950955380 929085409 949856389 656929775 812160835 143906167 152357815 886011518 898111591 563844437 817910340 738188365 850981445 605716877 799412640 380100669 811551838 717653421 900176844 856037696 865533014 301732234 978459993 245996045 423702994 678305145 757250078 382525416 864454429 754696785 949030085 343184502 770898351 25168043 378001659 734337159 823598746 718152369 988545264 924390506 937605793 39391032 756898262 681551189 705206545 837839347 958512847 800863015 980869074 520166885 608793546 851528275 959473081 486241435 560703387 303442325 937647586 790042062 989966574 482975925 724427262 966605751 993389787 277304802 966021968 247017518 318728474 765521347 821353110 215946112 806616263 713781735 934501085 744429648 990637703 549649507 734213722 571215805 935359554 987110524 995082694 694578781 887950656 232775412 930753960 850553360 858249758 966474001 989383453 607307151 902668129 601064183 763019021 39270993 660803972 13868077 281931882 680883031 864314986 366728530 483903826 33668885 176050233 108512517 699480288 640973265 747498029 448992464 935526395 481919467 700734807 266763956 907521235 95164654 788791358 351377313 642014372 764338125 848160452 577072142 805460204 679119014 807221059 773459414 897126918 710802613 775113344 713528390 875430009 28789529 313204298 491895657 799618345 6290114 576686334 988666442 995277209 188859405 498571960 175124473 336660689 308362585 756067261 90225256 294983036 653012457 748902745 855248579 909626203 63046585 711708862 850012621 961198904 907067808 923424804 833854359 845557034 995957944 999083590 158097757 201841413 796467726 922627785 445634430 704641405 996022555 996974033 817989387 947058372 95331513 349442811 323596199 919757222 272663241 434076251 986532902 997916525 848329565 955998748 237806040 632365503 968651993 979639419 704327314 877553097 220787329 625491596 890110879 893159615 663334058 967278569 857714182 896720752 778861258 824137714 550914503 755146373 261356754 941299968 521334388 687063683 815590613 823929426 720186371 953476851 524480101 586068300 836404088 860377566 171231089 304201699 232582011 678435287 979889291 985045881 524210512 770989011 955437364 996104983 787649267 826587937 139624362 982533664 115907534 283693359 822459362 876679774 29084349 844419085 166849077 409122001 157301280 185810195 83857929 203230741 565455105 691309020 944741559 984657939 441594683 789259848 144925821 210587811 369228042 890472224 663541627 813467876 945731271 958749030 871872411 905520486 520156678 567570173 404288522 835437311 880960522 907396806 342739693 563396530 15081937 991514088 602426298 871640343 939998004 991556345 603676087 694462800 103247130 355655887 114550820 739317384 807788553 822412315 416540951 736124482 72372438 601566916 559229705 674441459 843996388 887477662 598044760 697393737 403409570 455335598 100020447 221462831 352182052 643722410 381463433 498805554 806904671 929071403 239595313 288110811 950913662 968727861 951272774 983561807 543203563 858931638 260269701 724524327 464385979 983064399 143514073 649959781 444894539 893029366 136209185 215880865 147907107 636967239 750124221 983200284 562509566 848276129 29636827 146925008 562763366 733337460 320956525 413441604 543764282 561793269 547786053 824087270 796955608 891055404 26968746 455145532 347535213 381994466 676010792 799580433 840018464 998405156 192867319 270947925 71050538 270307753 206396099 839198730 799838306 938098535 271209989 870342679 623685785 771066126 91003493 844173758 601148159 785785031 51955888 454997966 59154366 794354484 742110056 860906083 515108491 580069527 304836668 341784631 536254077 634737735 379783657 651188186 617321234 956185344 527730994 740965776 83653421 903127347 191433034 683158680 541220159 635178323 916113545 930651425 287935586 987188235 987215824 998007810 488941158 549542806 830526027 848448643 812101928 898153791 431279165 849624857 84486888 757551124 498667535 822714190 971065621 987686336 385457278 893876136 277283275 488058679 759113491 902727179 805975258 958514351 374321588 770154855 647203344 917907973 714309262 910042083 916068166 982749176 465891419 849068185 500777643 856710866 687688523 884823860 323126518 378667953 459224427 969116367 479392609 503986737 923652804 947540247 256894004 467953792 390820512 940202927 719917102 733821551 409024139 545273053 629382939 651416197 896835985 941788916 407953624 998967879 326133639 859198108 192467576 441110685 914525082 936335055 820122435 872395148 337504357 691956823 836348451 921000156 981615883 984276351 346936939 582989270 911092555 926908098 57106457 623385481 266076905 995398189 116785522 477428188 807224501 980521506 428896589 541841369 129111827 443007978 670707973 941562517 884400144 978311340 863709979 875071419 816315632 838799861 822384166 871278264 544846464 808251876 720759429 997393003 546484008 681402619 353053896 974450566 895337176 987763262 425911995 665750793 593267696 716020305 256913051 556826507 455094288 657050084 709585117 999153243 313659628 862253486 328287999 411783788 237990222 971892100 692959351 922143509 387200384 607765335 137546093 938999820 17609585 864642494 732940284 832155849 479304894 696085482 286155765 482113254 75837151 708927890 80725490 831373702 236592732 594810752 553875698 982032467 271410138 566642540 854761110 925926160 720213071 782845892 959792833 965492448 58773501 779826409 417933024 767476141 841899563 954250538 182569815 721424684 617782752 894791571 887232408 940066640 180790874 921453505 571759418 830084647 535860327 730366316 678827948 981808120 334622999 875756691 476949042 620573106 465428826 809938923 581899925 768683254 947671420 995662143 447226326 678815368 213911809 438806052 118012286 442563422 171386237 235141944 44026366 562461514 8669068 42249715 16859039 533183274 967455022 999846869 524790435 954307155 669624858 716924363 275365472 840839246 115262491 567594122 614760962 840368579 792645161 936669931 14320141 751081497 296684152 563226310 396042682 510477658 566001343 831292382 881960537 906708865 809737067 812112972 477194265 669941569 919013172 928964872 696007490 705422947 454414119 660238095 325659801 531814049 977468852 998216667 585400377 999030620 360353253 812181616 55674065 171253840 916467566 939270322 142120056 943095935 226386336 514836847 480052314 635804950 280345169 971555692 928993723 947774092 306858421 534017126 44837136 608677205 588344635 675240290 304413472 924898151 207764882 416914889 994423838 997521626 107097938 606428684 347979424 671169554 933399521 999028518 808776767 974608048 366623702 964900568 87340371 648433575 274058227 693637753 635804385 762625231 447188588 942666659 432042715 984700830 799853740 901033721 916980651 958418247 82052117 359234782 159720568 689667363 886423020 925688594 798245577 870267621 363438376 919778873 602916842 757435049 434751471 632220472 239802374 999807878 175157533 839568211 998399250 998402957 894534171 910237582 77964996 298381973 633077391 722533860 367066788 722935782 4055083 754747827 293208084 756853143 301873951 533798448 599863359 759758288 682610125 962648278 204906700 546265982 303514800 491603583 512879516 720347122 200015423 516896145 464283983 480958079 486546961 939760224 32345355 924628558 969179453 981737631 951406632 957120158 581385162 748090716 105832705 361041296 993621288 995169395 728247161 931987972 472139628 866089907 565508468 883243515 118742167 289645803 423673493 804842473 235174528 970195258 635516739 650600971 862669771 934904382 449377634 963682280 949873166 997639451 224523367 358635047 780594551 936338244 418819659 789490604 987604504 996570829 279049565 963789908 878590059 980243963 837388003 964274360 527793244 769858826 955089334 985747249 429732526 975807696 837366216 992037926 307237147 614512485 46426265 109297295 224426524 651400275 461296824 787531305 457312602 755506025 357229364 686709878 334996295 846368863 973900262 999751548 80630338 552806215 311880148 929258030 666484892 776623144 32201911 945347374 500960704 515010691 804381712 980641234 755151414 847880470 232575803 469856762 98326191 111444105 126903113 664991906 9094730 442810737 73736481 405317358 782259967 965712651 915408367 939783658 879628993 989674104 334664041 768603147 843919224 944647811 569816197 741364689 5200419 791714137 425388519 575127341 387045472 762554965 504408293 958061935 414734061 749880547 36315992 957931699 64674462 166464709 741643481 798396908 63256561 475700150 597120848 685231881 846818977 889113581 596532780 744477712 378353085 710237876 390679293 402300754 186210436 592611262 157736977 184623320 984614515 987933578 335211799 471098093 679063400 971349513 967702775 984856959 655611482 750099002 240637158 557741454 229122499 589396738 23481345 792861292 513932357 897797340 314612198 605022581 1104578 987704631 618266413 777108383 815933551 988146620 677634605 753186288 762515467 972685602 684733112 750168247 546694050 912889736 956655138 996096738 834139858 978683453 2959595 83616336 762082808 955538179 382411878 865628936 899091025 933299943 765900163 862695176 717047095 845456960 133100723 324275151 308046366 364549979 147629355 230276613 121670675 143666710 6756820 940921728 86940929 843883155 972794286 997567819 25286024 463124479 446358865 843820153 288635676 560563571 185186196 234414777 945545143 992961710 965813059 993468633 573090195 834699455 32149592 897261854 644136067 896982508 420968321 505689193 746927042 857999187 750223472 881583699 455167028 559688068 991585535 992496234 578727198 602181781 386430759 643817676 395532977 603865431 231816673 317444163 70637288 530595680 695531799 836220633 395316013 994791346 4413683 705176246 640513059 956514744 29187082 766824628 10590599 921745819 512442638 757710432 905778682 913010666 752812398 805889557 961315061 963637275 769908338 814947285 444000521 632179598 507802157 915334210 752394750 881401729 79770953 200687158 617295681 834633938 227932585 345839878 450903362 459198682 577317195 629116734 418917933 906291906 716757818 781461519 107734598 313993509 681350471 878097733 202427782 790713360 483348456 727441110 723506388 952820738 416090606 767991835 669078701 940975690 990169834 995191594 626526009 682201570 95705742 590625755 223951464 321211269 167276292 288636769 444912107 997718376 894543986 900568044 400037692 922850464 836349146 951181937 839745528 873190377 273391916 994870882 615838524 672879861 636006314 799912228 725804376 788819555 573817512 852834629 982556996 993785384 404844571 583580271 196685006 345089942 597695638 860937395 125473540 529299905 697768095 853895392 664402548 866014631 358589123 444804674 625256042 805134198 133652138 264116424 880596146 947198535 689816607 817943448 347907832 463967803 200702062 274683974 161896176 530946298 256123084 538165311 224021867 492642738 17225395 48475768 795330545 914209837 21214507 91041682 302618215 805477709 652299072 922590938 10340476 442676969 595437650 914254884 309082430 571371648 778962959 798126219 195465999 683650978 864227548 881156854 281026428 610484944 461502374 549386790 355317782 935104559 296795696 721787964 532610936 825379098 719500806 831521509 948891308 998416517 780053567 803483633 182416715 526709595 339062012 974814842 483736700 919433481 273324473 976496926 605297791 790022515 681849726 992961542 722491633 758723023 88381059 465290994 796473377 853893704 149226937 251990771 190945129 929991547 410543534 802019588 160265372 792312144 29367039 288974155 961819599 986951024 16577726 656090206 683863627 942888300 263441467 336949151 458620086 648344567 738930658 934878698 770899253 829976141 607038587 865212234 141541279 244227417 483682232 903754920 628136716 911529679 842960125 963820192 240313485 361548795 87903042 492413945 4651951 374969909 303085293 381043652 380617956 471922125 370028209 738711254 432078168 783381899 993640392 994011532 484669457 848309527 371456938 637694423 317170860 673727175 40873525 978717172 383679460 658375897 638795583 722228505 833909082 844869422 719640688 832579392 849699915 947022713 963485210 974023175 761807821 830729723 376484873 983986032 394488096 907025834 400641926 695199409 200947542 475839373 929276222 946336718 252489136 499282066 281334726 680330585 447004820 656689914 198704233 676475802 599950058 811400920 612445677 651910254 116798188 521674738 762707246 874467312 525607628 952484540 225783525 982107701 394361902 443454196 175920207 666801004 504176241 523922108 157334514 523167277 241273045 490205396 311267104 625408326 28602572 913466650 313451406 387601261 589380578 924966033 912671134 919378951 936815801 993591749 474460048 898616556 579371837 952482216 596281076 831208330 371742908 883190598 941907976 988414889 139060714 404332273 44802948 155367327 870601877 947974094 666169544 786202020 810853908 934993664 962010259 967021225 613529473 708927886 175823794 839891503 861872217 931897299 413721329 522167929 890623539 950148168 172747095 887891448 848575094 928123049 110254139 140178111 127972174 692232197 135991164 655017088 105979861 321223891 459973905 826269224 916914398 980386069 405451413 841932954 519844830 615078736 31725890 274039279 317927378 337530495 442229574 481801039 182332823 995914448 84332874 969841737 199068103 325066188 440543277 666325509 686608147 948082707 863378908 941683016 5738473 307820425 8450015 237307004 59710910 814919039 220085899 563609838 225910458 881147380 97514564 344013048 586337552 600165697 366510854 978395843 124859962 662028497 343074809 434951404 534229674 764383039 280861568 546688795 676040031 938053728 351450170 808244203 105190705 731148438 842216652 900516465 580340705 810452366 532762022 849206361 834710180 859843674 861205026 862085636 853401164 891085894 652573162 863345887 340466139 980194899 859938891 908069811 157956528 204253463 471008958 502936406 497425688 929618902 136239232 487794639 573052064 888739987 974099496 976134903 734201794 802219831 981220147 987095889 726725360 809126914 509570732 940209573 257528977 943402471 674432612 904758113 339326958 757487636 414434253 434588570 603516544 890966890 220877813 816460368 305117934 966905824 8558961 147055507 983706028 992192618 71547465 429237182 23682207 957839202 709283528 832280286 298261815 580627824 292887585 576664358 186613774 468419566 518925090 547243232 887233986 962618988 70467886 357455367 53828495 251336979 881522581 934622961 5738553 97710982 258199231 351996233 357815459 860366885 781807134 932075348 773866322 788871769 244552030 498500365 680921238 758256613 261627060 812790399 849541584 888432471 656404382 937224885 463333338 931509535 61391968 638067925 389802114 934667246 638977977 754985684 554770825 979797488 812067561 983126043 615211161 700287862 980177560 984735205 692964854 801040388 52197527 686515832 585085945 680451504 455999021 585383119 995744113 999012218 484065584 989660208 424908221 508035000 930632138 991520942 158091046 342177047 575162698 683490324 623702572 852972834 529331802 995469554 353121349 724677503 686196418 822061603 270160296 599531477 869737444 924615424 48202821 517580178 143988690 244637301 233204457 857568202 193006981 474234759 337235403 484771299 445810119 859037526 793138661 970989922 713021497 840632618 932826311 957905511 359838673 721716407 111993212 562809425 378539600 846480250 598647584 734727600 183131046 260301352 956597131 999226394 426507640 825442958 4197074 311787843 775361161 969745821 805741066 895142902 301149885 323833338 620489286 712645470 942472142 972364378 658260508 956015185 842768780 992973956 773281117 847776165 833906578 956612716 558960036 779527572 295892546 523018821 522977459 666295582 640268829 869318456 902003339 966264202 156003281 268155610 456451893 972520670 975857358 988507287 276066908 808419981 486425053 860059917 688304884 863954821 423450026 809037892 990383493 992590942 968968243 978569060 501983562 689425805 605180964 690429463 684258834 970249085 36564115 132436523 520235373 709119384 275708207 508281837 372931470 457743230 383848438 552654333 441325347 537892642 70041578 533618156 281063807 992487100 421120193 464054944 969426206 994002329 342694385 771736202 32906080 44190614 817044046 955815237 976326282 981189790 856143506 879155295 980793251 997103071 539863646 655369185 30224645 275589594 557153754 951669670 724575948 883590860 52134587 870246931 811865080 993865168 462391270 468605155 246304781 556472927 33757696 565285486 729417414 823405786 212172904 713889346 51554867 400991954 92748811 684201256 667501055 820271037 369053490 436533795 817268402 966294595 220949679 285560044 345512834 996136506 788674520 847027379 254986038 842510872 295709009 757488201 964425239 993473028 124453163 512769385 531179038 727016504 88253687 121795752 877579505 976331593 677283197 714623995 787859452 794354227 603695590 930488200 386746567 671403547 677390006 941981686 438789569 513365615 569749195 754625694 26845032 765957015 783727615 839213540 797020553 927881368 470036134 505419706 437086433 913433945 456265181 805484778 548449833 579855974 491865132 528719099 210326478 607175850 503077377 942094518 547267196 734835393 215287064 514656779 690236362 980020397 395552636 405847446 808786229 937938055 402728659 580517445 445470632 994202071 82029856 356915699 884257130 963017027 288547133 567170566 804317350 949791204 78042929 342205014 359867558 912232396 659595350 932657058 326039887 573099582 866639335 877727382 487136247 854705163 169457811 532959887 333245655 977817168 423344627 770122082 415060645 858228986 500431742 877406483 418877812 802435549 749151788 787937084 591236462 825473013 531269792 664438738 201313556 746442244 649410267 788016539 788901589 958393238 516403968 773783070 209424714 428983779 9169645 15266059 359526684 578174528 520701266 774950071 117235848 519487122 468257999 952746318 855735323 902056286 465327658 808944501 132125372 808008291 453473681 774209011 363870815 651139422 584828845 719204782 923097516 946628473 164126856 543816731 803422164 916763101 672229990 817225990 502119749 959606326 624484726 755854943 689580571 944888023 724848307 742357717 930331500 949808770 65448356 374641477 451491483 593300322 676160647 858551212 386574719 654182273 77182786 614457380 803535418 929956132 284204642 423141319 518267625 661203684 398706265 797227980 81411883 746215812 734955769 905583731 314050301 651878809 445040436 450299718 21577107 706966145 505664019 772023740 568223635 742593008 485751356 898028990 836361524 941526552 621288558 705890825 194495397 570186952 446617629 857241885 456194380 757363366 646044751 684453674 210467117 643101400 420275078 671769666 536218678 591859752 290437457 339629447 50850076 480110812 232950846 674380148 541829972 893401369 506566613 554372813 443530408 962077772 732263918 795039321 925893221 961250691 35880201 40299040 185091717 669957274 479447622 666920587 88386383 994925148 286421444 876583431 404622012 579053859 140024857 875114700 465160035 555455742 417195706 471819807 711684547 861515994 402598987 690471896 480870375 947904789 346511334 815824640 555173592 858305581 814393774 880666817 519689430 618666094 709795683 811354524 857158836 968266984 41279529 105371043 234336051 358215469 119515788 567704201 471280711 498413297 301672556 379744029 896889087 955532197 228220980 410224501 720272950 924616683 230049857 989698304 21074417 118256107 818369015 857458891 923941989 996051411 661887271 957273977 921167982 969334005 218502423 290439029 66702736 613916320 728086867 789548987 529951838 975055683 914820018 931899795 564494144 866799203 847461685 875365781 112897733 802782253 157853374 673951837 563546413 600879545 601759660 758313311 945528103 977603087 487156419 831974808 962276290 988089230 118197663 609074282 441415789 528825904 951710122 982848745 724323492 732864451 217350248 748793067 848129244 951067908 931260424 989930079 510949884 980281366 78036426 328280975 938159862 954911086 385111408 711269186 191567325 193592765 399436747 843057569 279294855 596811753 693529232 918248297 536269993 897580633 927094787 966283774 493249142 578917576 183564949 317953675 15957111 882677833 647617423 827958072 141056865 268589126 224325052 681916109 727532450 991761387 142671930 951077171 752647655 839556766 318893275 344478514 993681290 999840767 643472752 916203267 617721849 799451865 595871621 721695183 25045806 27686495 652263799 724721194 946232218 968087681 584292269 684234232 564702387 953581053 966731828 995892082 857821409 900601788 64674004 958278188 13852074 904919963 691579953 968825391 602724616 900271733 52435932 572625772 144754869 848035941 418026806 454986309 5081244 783562727 275883217 893877598 863323029 983931736 461308121 532109145 221492916 948702802 420255100 484023841 352445696 393335113 748733243 882039892 147178707 847048733 527578031 764114586 525319793 837324429 435819014 641280707 255769962 445330497 760845930 828830061 928359665 963933101 655744529 809886178 100659120 360431443 51847857 345134797 43446861 588667004 641939049 992517623 185401308 445620665 844063620 904477676 656499989 681206917 428575043 650863680 185229694 310400118 42556961 473751859 119874442 647155537 628402890 935618561 151461998 356159206 55436617 201835620 321372380 971776451 671998596 710562259 360358577 439586423 7349918 197884673 20532621 373656419 746561158 897878831 808565208 886253644 922773196 932748057 621343744 831138234 231579543 773398311 122567294 337419489 57142765 481316564 232760398 270965315 686900019 883530971 534543944 890090098 634026606 680209265 851154196 901872697 654547290 806938461 904879570 950181034 955526368 994429667 805584111 987507279 961613452 999351257 686872327 721320525 742849488 962624047 612516862 717150541 398311175 860261158 615190211 664317944 818707101 966912054 511430533 718354608 813821194 846417921 36579792 734867846 795403082 824951376 697329599 780191086 360178904 729582999 388764216 699269124 640278175 653180856 409742265 548262600 771666167 975021599 924649698 978970228 224291120 988350726 925760023 950337694 5775188 810154935 103461071 131270817 180402357 851086151 460326745 856867962 895593252 943264032 722273759 947366566 391236782 991794588 183164456 638819108 370310290 381313047 98219112 413200271 155012164 595212159 523686937 604336629 655333987 817516223 153508538 875993361 224361926 640842279 99745209 400015019 625176135 642077913 789438984 808864395 823311192 939616964 887061466 931659461 838069880 994367585 314468723 749042167 717399680 742914035 758008083 758646750 35892997 548395393 236930778 667350052 779163027 808329393 932859783 936312140 332312332 448348569 310384819 354296105 538547041 826698339 374972437 767103516 10258181 784996583 138934272 962137322 231272823 496872106 793984173 881464963 440345658 495049893 354552266 811291747 852416430 911924537 527611568 719379800 714150700 959207916 212156195 800841525 513525195 548146885 640196368 789960156 736861377 942547046 993961539 999909546 194563161 673992364 408160907 443842974 673282311 893798925 922719998 992783387 145877078 872797152 486433917 687485725 266499677 924905811 37780926 796416327 330398774 588030560 584936379 605723100 975257929 980447476 752358251 793349587 966916474 994551766 946265452 968350502 830478812 861705724 92509172 927040696 759986007 944744945 296311540 764346780 450969714 568691406 313108437 502621627 167637127 965695731 45695141 800356253 472510393 725234006 674129236 725042934 171257056 362679108 222872317 361571149 732088508 987933464 589884853 905487826 812981331 948627366 264467018 371304534 881360926 919412620 448107751 930662611 325144999 802505484 850227875 875416768 185122853 820861315 390570070 723631682 176256975 702456723 211081716 484784784 578619747 608962813 892878907 983322518 684539226 749876676 9805699 838910195 250343654 981760856 965478226 992435679 548337381 623229677 659983650 663090956 698016610 893612991 191900814 869609850 586042513 588918213 357242600 816129796 329955507 514057457 731354506 747006239 734737572 995127311 649623724 775483587 892703959 916795077 690971694 935565687 357090620 408231244 3777423 241057592 88439706 770955690 743836745 810745094 514518965 798224486 246271957 480127726 424234142 645120153 29924265 201600873 698359699 966273437 779701017 986027440 156197970 387998435 991287955 992803283 625041623 715316139 69499884 798363384 179514330 771762659 673549857 932529325 375357134 472894564 924721179 943908487 256384349 564319861 847636478 906102192 59950542 470801506 509150234 746098344 796419018 865114435 569189194 570147904 562608094 810315754 737348148 820390270 542246886 907077130 338742946 498472486 459729047 609021977 43713034 161348783 15703307 700436698 353384114 849500408 261859421 329833847 110334919 229804285 514237589 746955151 956054196 981903921 782885287 905082585 656643899 806517589 223085021 320698142 937535073 989703483 377492077 581136842 227533209 518396564 44871966 812147270 999105024 999792222 171880575 317321424 985034181 989170892 919353211 943571601 700980260 989272278 630724273 796976483 529622822 958694781 645301272 818024216 478635043 658158449 469631639 548156771 51584899 367147739 451985446 821631638 16826875 648163235 245841748 647209786 32074781 885188614 244946634 822329786 997747761 999190040 715889179 779740405 769694239 956516810 261327475 314270906 86688554 650557761 983237513 988752866 147384992 659278909 478742865 746241491 142696856 960576231 634973269 719706141 492455728 988243643 707279056 797496403 949769424 982547015 25325553 973134702 219520216 357355814 106438906 956269974 708511076 799581075 477296671 787888657 51350845 470052435 17820940 404510380 348302855 450867457 480691177 552409597 985706685 998281581 19025682 846769921 322922395 759134734 630089553 980261919 964325148 977769584 159338051 293548569 237392494 635350023 637180396 663319974 976970228 983025296 905363450 940099986 427243734 606100344 138399718 554333508 207941076 242420872 446239332 979212296 164661393 944390655 903118350 938016144 437563755 793673186 2177489 210047592 342423889 680637531 604119455 882975663 843766797 974256187 775999405 878965171 269438710 698662442 641828788 875110573 435591137 844059913 673748211 886967326 738374239 826389028 422266410 430225114 459670955 797017218 521310810 841720011 381569116 620301047 728019522 929160388 783080509 783938833 280661004 376195933 672882639 855625087 14915045 816574502 490233000 843168669 169708464 436389181 513117116 942543187 761574553 810336952 651262618 683559003 628907631 727351718 558845073 627469965 421650638 905884815 384186951 931067752 608944471 862686817 418174181 719144625 787325684 842944709 128310460 996750228 994349651 999892635 33015053 946242625 894727853 909880786 89285305 926196971 294377954 448122053 960533013 963072530 962245200 965208318 186581868 525402064 278473082 625098047 822726232 841535047 988983980 996489882 21627015 727573306 783612811 821150693 688395608 903682795 229846886 238535040 398611339 430799189 139223602 721572967 719944606 970324681 310626029 946989082 832681048 861333931 498482934 898218519 773143197 960829304 624744639 947198775 333366475 527193167 728776840 874464110 227200988 720348688 764495072 809524961 458509113 759639424 690220782 760941162 162257486 685437045 654854181 742054185 198438437 439338393 440456667 979956838 32902490 369059650 227505173 834907682 8624167 878667628 235117380 885419743 962274226 985571928 215050200 965479302 82230154 713969084 674205278 827609620 998310057 999605714 66540032 157212079 442140248 650554352 230992674 250622748 518117772 980238107 84754423 768310716 587574816 603308339 738465631 880593965 716884254 959626064 273440798 949893699 1391167 199712546 463157822 919263857 252722107 292675109 819758924 879018614 636300434 942552404 161250894 954566303 167003290 297438948 471557859 635738243 307278186 379256570 521187205 573123904 414611533 871328141 437261475 819046488 638975213 944326784 164166387 812999551 290846216 722974925 397415829 591047554 995314467 999885933 163987369 810781037 640920551 693330831 585397760 665835494 554237360 839415361 972062634 981822486 179443609 195509741 308969413 942820068 899423599 955517621 60294849 928249987 762501243 897016467 702444812 983889397 38258158 598911705 705285518 915007236 254687578 919591355 65992298 383022616 143901984 946385579 222300714 964511528 211002816 433596295 583604658 600061432 176918950 636047099 114134022 616514670 81893676 272512883 878830624 935074556 210394657 889724514 429627749 726644983 723187846 922688781 169085058 274188865 585550382 914236746 870935591 922883763 115340572 981142966 146109330 584238175 52184948 615872546 435452405 785639469 705903493 829720948 990774247 997778270 385924926 544007456 124610584 345422858 983366733 992896714 231990454 920924652 632551422 922205991 57087777 353160460 254926671 338703784 43482688 714106794 290203610 602985356 413669820 570671813 139568166 786706908 181169470 606567150 76902762 464155668 346120054 967108892 19400657 306380823 842762823 898584802 355569503 383459719 944102350 984271789 863069456 992330711 916346627 954275922 927994979 979012983 119670034 541463623 240836412 749911505 906954351 970675802 474332580 662061321 945937257 992603379 632078922 721382335 852677805 998436499 18401160 179033276 955399472 969031368 932703683 933986373 749760082 981046652 767653302 883977867 792368645 967589064 193771479 691383120 198037052 754548066 299400754 536949261 795122150 857704718 404503296 684398105 95162725 787252756 159054474 311792248 462317064 832592370 415009767 627558405 964993699 996019527 999360023 999663574 645901305 960948672 814255921 878437323 202452343 357032086 702437832 841277219 601563404 977376898 622102095 711680715 816096914 938528097 917891889 928412920 344806738 483414075 103040647 981814108 309468184 381705226 668914521 947076697 918736679 937265175 919546232 947277888 556873511 634600151 741187975 833456184 612879248 742718985 158065621 529657175 695296535 835251495 814590060 990718515 552720983 760649870 234915447 299653492 19380614 368157051 726230153 966340219 770117427 914502728 214438175 812855253 209585023 227568971 149463911 414661732 161625515 298899365 776157390 913006197 287360019 590764154 915943211 927438775 607875999 802525249 763082791 942073255 203660277 684024179 573396611 790313495 435218275 567772462 197577602 817779378 470721226 841136322 284752289 721447282 233332537 870173880 230967651 239599469 513120619 862697067 477672368 771185511 269275805 750535315 782571076 950786722 167972241 906812524 596583906 818611842 358141258 934616623 431129617 574068279 335103979 456406704 681574978 893612421 497630564 726657932 529404017 717924757 393373524 882417477 843592562 976641668 822649835 857202831 736065623 778908455 893791773 934078262 905332896 973255568 854787630 866025065 788867715 922272061 179114309 331061939 262246900 285680914 151692670 571280616 794179486 851210038 994186925 995046887 198000465 203239226 929189629 967831404 47258485 373223744 153371612 872298870 404770591 776213951 901090457 926821597 333183200 970353725 240236760 820621939 934465123 984438807 621311508 963788436 936144206 978305921 63170593 483766603 87060367 779903872 506714531 920448932 932527403 969726775 991152838 996674374 357600937 981701933 839405401 909403740 349809216 747993744 651003310 748090304 331798095 409010819 40968907 253946806 461151151 763643780 851750715 854575324 652107505 753947383 953816673 976673648 838912206 858979789 216519069 365262378 172839330 736894977 263430620 675107174 91001897 935615301 126044121 977642812 735711723 828289422 706897312 843534910 866388713 920409211 268652741 546748196 568972169 702509945 735755936 835974089 544283278 989538215 383575035 452833697 371057052 829333129 187979991 648643933 857671513 869619022 177422338 556448961 536841609 671856077 17207567 663017589 263610360 505819215 439817848 855766012 775754267 920728462 317789032 770167660 547016063 592302308 883824290 950544174 194479181 844875160 971091147 982107463 530645159 839694799 320782036 679825619 697026154 881228382 526674217 617990943 116465170 632848381 280065056 705479939 657888070 929120650 122628591 375022877 381303421 547934556 961104864 994952376 54642165 337596262 618222470 812840725 199328816 493634000 640235398 993662172 459919855 864347199 200393148 386957534 813877670 990531366 181455987 425605993 228753004 267363145 696725017 749125001 244784121 540178880 741265669 877422879 850064698 887490545 151272051 349917398 91896571 537535398 155090808 852976816 903569850 980408221 479434954 743856404 86514581 650203731 690004762 873278791 671059945 765129337 222551592 237110656 859217991 993196154 156222926 235042267 124978368 783564976 987327312 997965785 515040067 707838802 325527457 946436626 719467428 913637647 84716428 647962527 90391526 96877193 428806397 923354520 668775728 864526738 47123593 892562791 450706192 948563651 491930740 542989910 244699817 323053752 803771145 969019886 261637238 618266798 155472777 710314792 948589435 965262907 619245025 723519685 968890358 970207677 958720362 978484140 808607251 831414707 514212040 652225251 435257924 605135927 755060034 858258825 725293848 904490493 808948854 888751415 632803619 915494456 743971083 854363684 867086124 962649259 658105585 728053733 763132908 871277667 615851368 636833676 340120194 875685409 907510371 931336780 845438704 879094970 634705803 658650322 98027661 696328173 706730299 852927130 245667462 324476755 228662667 365842878 17907802 623390969 253455558 462816750 145797170 786592598 708320926 936323890 430429925 724874524 749124600 873374877 845965814 937919014 984228457 984521049 977293898 995176841 952029751 977184015 305906898 706472024 525201637 640953198 831311566 970846578 169312072 614586268 153460590 494982660 130171786 291738091 957519987 987982005 283888625 527535406 136238296 669496498 826933860 874791516 117781516 454733048 552315667 702612969 994006743 996288106 858018669 870655409 362119105 985475158 16954194 672824847 494279247 656541071 446001890 641948051 174307643 715763450 302873762 678388249 603269248 983206375 915997311 956730804 899434702 911408154 965647555 996675818 832467931 983304896 501231972 795438333 22283222 752971933 554724368 821013362 909517544 952097761 248286292 972269436 62159855 425862107 145595076 494971196 655733349 702632463 526301587 701854202 332629246 726531563 808906439 961415975 624504346 799625075 946138692 995352816 330448407 768791388 734189692 786580515 242627306 864977836 246271596 306084958 845782351 963215577 727509853 731956939 239733803 993907192 699950377 751765938 186812642 581010604 936830872 948686419 42091392 240194401 796227601 809346826 887293532 974148534 34526676 391549092 663263979 747818668 766644716 848086659 805864288 948229098 24770860 658306839 588085296 846211986 416197172 747998038 565824495 724028588 918122142 991203796 892637071 894214056 829372870 946976148 584510531 681859563 54963382 174901929 468650545 826983086 358675228 895136871 766126334 784573675 4494993 718139824 33759686 427788214 742946767 773413173 107050420 197998611 920430799 947167722 354980397 438477836 769585072 950548852 995063217 995881184 344161760 843304164 846764349 930619229 304384823 734592494 61785031 407520852 429989832 874808318 81767567 237991897 845435232 875673394 929860329 946423328 719417510 921560929 312825124 454744362 735016868 743855345 151120454 982274677 2564575 434727944 568432180 595665616 868008839 927426144 410893441 987663242 666923955 746350884 412456537 802874635 93136420 323273379 938461916 990242725 332227552 967208894 633997411 675922066 402781380 520964141 795097565 841643500 577930269 994183719 552520409 990361541 47195947 735902284 279323805 799951869 54614730 622056967 573181009 948734277 451556374 925717676 942310372 973275649 245931951 977111011 925812047 964111639 294832591 786006364 300310265 379652689 786964852 846065685 611346961 617325636 529227801 543919158 881298398 953264599 860965770 912660082 372480642 788519735 618959401 940906200 496926810 727905839 859077219 968238423 956417404 975084354 652288089 936987316 167600490 537051115 895198797 931880083 772823996 909357838 566005147 753991489 522512955 605429202 320558290 357917061 389471683 766244284 256693727 933224749 363554455 833666067 397339749 844458485 787768489 794286343 167592285 473094889 552110240 927416211 509341782 634588210 705315992 790073504 32667561 510933860 205313997 843441983 285584374 538393894 147626996 601610739 320900050 638768650 487695385 818550730 877499822 925188232 429243441 777091901 792466572 984516133 53026715 420489986 57471989 376522277 668858568 764954024 835297287 893626210 724395891 891844173 101988602 630989127 574182528 913866834 490172531 578267100 585627462 998875869 952080872 968572620 691864875 833405626 975392130 990717321 197012191 495485935 541139363 981903013 64579630 961516515 521245027 641774380 280142692 704463529 731651724 763447377 483906272 612039288 345366596 568386942 217189458 869893411 493924592 884456835 77270107 701793441 133596769 727439672 307606323 495513457 348087426 494044976 618646379 920572792 985461103 990257323 427091715 840930332 243330739 677877880 737902998 782888586 59161484 392856559 843304030 991252674 344063627 986173156 566491922 909277233 823473265 896561335 15264265 809346945 30130388 80910029 369529702 540402991 330853493 807959845 19923634 178703502 365384444 767952023 704288650 885794647 41549188 387727580 938093211 940510716 703782285 775283558 295424846 708252971 555833524 805226584 478862695 534787981 439869238 855894411 774370502 914239549 441342054 587047597 975230679 995131207 244423209 413662163 773212009 836441648 503410036 840235068 833634128 970088948 476605272 956658250 540115400 867415737 500776743 987892573 690735100 953329781 695999768 934136121 798286469 820061517 798147190 882709400 605058727 900769293 797648173 893585304 548431256 557000703 63268387 886793280 33966035 246410769 846628330 868876609 687000427 877917695 723322358 880301816 703154714 966806740 980968052 983491634 892690680 917441263 680745207 751936900 358950115 794406298 989242733 991113766 796047739 807188617 460859788 522648673 595997225 924688750 2106543 817227397 88876127 878660337 387252046 672819261 445071652 914541103 674963993 733040794 358324166 554630446 999727257 999819570 827347895 839743884 339767462 984168253 623374277 839106778 374777431 408138044 300424170 511175202 768741668 823077382 86913869 252337635 358166841 549738728 533241980 852308074 205954749 872985834 410271344 421529897 597238772 742094941 65976997 171276789 154847760 998726051 16397289 124078268 416718361 777435282 497164234 665843787 976924618 984119592 525415037 873085929 53723586 79712051 536230122 873877734 262158180 984444540 599315142 978529720 15747252 59051006 752693961 939857698 186044785 615396503 510621114 786521512 585296896 951560081 456423617 683420649 129445786 830873156 510434603 991439406 347066292 821704848 12320409 816768069 575471951 892679777 380217710 933375975 803171557 961436606 836387205 960602978 293884786 437249418 246203500 877046312 601890626 683669572 986718896 990765494 35921172 753429859 755734533 798243708 982075435 994490870 572391855 970743770 316289367 857678189 584886201 933022004 214749872 574718286 309106381 942421988 732607353 773319406 637233908 887792052 54665538 529155966 55465029 596267042 992292104 997262359 217207094 235224797 169755428 302055063 770824256 832217618 532890908 877557198 908615879 974184376 388244054 690865498 797929151 895875761 522061930 970117141 766690014 867072701 985295256 991576165 88617211 203333529 946384659 991185830 62214217 308059569 712315830 932232346 869208465 897703991 394942307 439640170 253021398 509601304 865050603 932573060 407924159 767421892 560639941 633369628 481820362 671019728 924016934 982113984 106885015 538848160 258996439 359489919 69778738 76032321 939447102 959432851 637159855 876011272 731217191 978671373 414985674 838762689 112172337 352605152 355185768 696743983 826053873 850710958 608515613 993849440 739349361 824960037 609513625 839142860 625185557 970282148 647356803 667421266 641191041 712485751 381954349 896981805 553229554 612982904 797476718 889925121 413931808 839329452 508431890 885715694 823414048 977113158 84677809 208812378 739724599 804728005 459327976 987499670 598810384 868734687 636616932 822171163 34529549 212559786 189383221 952122799 364626645 747987459 894865714 972207889 499138888 618760749 309541779 875442096 905070571 980340405 736159511 736945765 919163997 995038160 483484850 850132377 207968047 784323759 570413577 642925702 939254022 997941369 420442081 877576278 115881351 710519348 888715878 983064575 988407101 994021922 140641197 583214879 929981808 957861524 905517983 912851457 713674944 853594952 167047866 321212101 613356674 917799801 133026486 416884014 138119792 471581405 813735179 959744187 794986600 822838360 132273710 369861312 423802367 713108451 622990381 662211922 186425490 439632723 835211066 885853329 977406984 986295706 923908600 978316573 844985890 933267616 288250988 315754330 835761172 851979992 986717810 989045455 127732714 451017509 917845342 960331658 647744526 804352993 138911330 917634899 339286372 910294854 590570480 846102724 288535142 527279395 88901823 200848381 562578148 710070387 58317601 630690742 400512868 470067871 874749329 922186605 333679447 458845247 866211503 956438899 746217710 909824430 552675033 722126490 456368478 678800679 800683299 999964561 484205724 543019997 499286195 630055789 419519799 844091852 478304520 621156658 495355636 880182610 28089286 770898771 268915871 936366709 593216989 674105580 799314655 918417002 705642857 757458676 657014651 770422138 543301162 795200069 235256966 358178191 499357646 778903197 660685759 933614355 181844519 553728077 36882578 981247382 390966255 652125216 445589723 546419131 28173935 487925463 88032973 401560977 796709658 845095354 2898848 793274497 970082448 979692808 263958577 698312512 209948517 807551432 364011553 364269576 396193888 637239015 727289376 830203696 767548838 913409546 508059190 989547744 263632368 976999150 336108506 462765199 777407073 801458382 969382060 981688113 284276945 678176073 75629444 365805735 524942179 739547267 888244942 951969824 86209441 526051657 409572865 571156926 642599619 738577028 929255813 949392029 438919015 595272368 870301944 899358186 282016569 536258397 294283423 519820610 194794055 831634786 349719689 604431852 953263682 974520462 854633081 979430251 254506063 850905715 989828884 994357641 838126615 911100827 75909244 825839227 794548987 999236189 405429053 491687650 55423968 869333436 190893154 659612707 837959369 991940906 361094707 754035368 367779840 802348813 361409401 747555703 215639992 450890037 591176424 829930810 230227874 514307273 924466572 996202508 6198770 848052874 966590417 979773087 623544095 962643185 464389636 853020096 16100506 801532251 841694373 919494144 48742614 177119102 348073368 948446096 365582190 472030319 83100124 148420763 24163672 648823990 560759332 660529750 897073922 975625275 464082670 633762032 758962770 774324991 15734598 673568830 830654971 978358915 950422845 988636777 408049368 996510317 363220191 732336656 981850588 991180584 640017872 817403548 703637524 709368498 620197443 971060999 885042284 964710128 678634298 874072605 382391159 734396992 146773546 368776095 914348100 970820436 590980607 690273542 112836963 519910809 212077059 527743836 36656142 764852322 44070397 488929008 393448147 735648509 143237903 580965669 492571520 681898483 577548251 788430880 456623874 787290053 850090959 986767016 993221248 998879738 834637651 967916403 409617474 827730420 422534070 810569302 579643328 785332160 116605235 148006190 534882393 989361368 271561274 531996191 793470981 907555960 510784477 673681606 285973330 741117074 494532287 676305485 706455367 968822539 583904646 636218876 741713107 872725247 696095989 903306886 700087520 732000241 249818203 499839144 949817980 970515499 44195004 727787763 109313383 975444047 983014105 993587931 904246535 953475989 504570704 689144626 41187466 41696926 974605557 987568529 988521463 996938854 350601819 844542807 935536117 938234260 824612213 847238658 28126969 170729094 186931244 540662578 159279780 529603925 409244350 418420450 957362658 997985945 627970010 904427280 898034559 898921681 263078309 420417763 798418807 882427762 201573879 477110594 333318677 992012764 594567858 613857108 210168631 785555767 404303020 743808197 159168374 475678195 476412897 867927650 655703725 795658717 97553860 620380612 882538150 891178584 42988461 532268156 465365752 717966634 229478352 906492899 969433234 975316748 804914653 850333855 509769658 815391890 768060330 849703696 24221026 389069420 538577848 759445356 98339837 953707739 481145638 524577270 156272181 994712570 327562268 858318438 776562042 944679318 643411560 799350265 773736048 883439714 681500553 856732563 959861472 965526279 9641815 226758345 996831103 998975440 875746004 971282402 212604046 544695241 814485070 841736426 173683066 603120159 146252916 381997703 167732231 760935684 42944193 994114680 380126627 418234575 404010736 528865888 653742488 856383936 658535496 724008787 464053552 800207143 747616096 993119479 639388535 969062071 822390486 852041085 186882929 894688156 510794861 536129224 447510424 751264861 507504198 671809110 394654103 590243025 396560296 781656802 522715288 774967432 676735834 894613571 737876499 786646532 812287706 828670575 936360461 955855260 251664593 471662797 400568704 969297494 535971139 971438682 985182893 986697893 717021056 976097782 678980221 892413268 60386316 751393982 92929301 265261429 331728514 787951499 457463102 528179102 75217880 806685812 822355922 978577167 465415299 643201620 484911692 930795391 974581472 998777191 174846687 293408865 802241869 920525208 81464938 825722745 638123147 856958391 284428113 730081533 835481209 884265207 28911207 117812000 19984426 678055001 771022012 916246531 108875461 433829143 583294548 740217958 726251941 862228962 782141865 979501948 582636135 752251854 841268563 979591796 31092019 143184787 926566097 988169105 955254353 994104162 338197900 351387279 784198037 817586117 748905296 798239607 19448984 93345662 678020772 731791326 80250625 622749184 50371911 763769193 638404522 730972266 154467857 785911673 69744644 541812570 823173728 914538618 259421374 755467736 114006617 366287756 722288728 901962781 87885471 500246304 785629316 822860324 327730889 956995811 703841810 822321693 767682678 986895785 567915333 759792234 233560730 338569395 915720746 968869283 561529434 912255102 961539309 989743043 835832427 901675847 681572562 888573610 443934052 544757833 386751246 877392085 348187752 971247226 567590477 998258758 566465236 792261282 506676495 652284849 449600341 509863833 89516789 879307216 300603313 930196228 773120369 965477846 528809497 910394206 140144568 577553594 748210650 863350138 251187684 885609435 709133312 925914905 81824062 312321206 800694202 829796105 285552517 797404687 345426662 804071159 315243080 900605719 984217917 998277192 722460893 819503500 121483331 319615022 947858406 950084238 959719911 989204967 596545018 979033848 411301955 838671484 414266828 925583717 773680188 969369412 690511588 745719104 739795920 784805947 292366899 667192505 288182679 638561974 670270664 950302528 712189264 887138703 892433856 932510952 625163368 840033555 675384293 840017772 700426029 786554046 250576862 364422061 585752777 804318131 812566098 974769795 668372808 867388295 318609015 655615270 838742738 984056513 353014326 737458902 441911696 627622322 370071314 708510509 417976950 442652308 66968598 766118601 179148980 677303883 510533525 980056391 601115519 605151089 586516485 795944515 650879661 965834835 918094529 927754813 936214797 983559659 396827055 840537294 321990709 362973505 643326272 796138241 762750523 822545678 572608017 912495977 361584096 899260877 746024589 820842179 517672258 855051703 748290805 952983586 6879380 431418996 496702077 543890082 79740834 361192343 12327496 629119541 825132409 893806991 290377911 393366670 931049380 961014874 874526300 953455607 906149942 920008149 320658668 449505810 129595366 344518190 470438133 901452907 935899128 976670014 435591841 789124200 563198463 968457521 401638015 864951799 449406018 803919918 179704991 930629347 990562583 991345869 667639558 965586860 329524316 636951354 555449932 913171996 405760323 679584092 380067962 797029485 309146731 451366575 934157281 959931736 468671423 957314751 629889161 884397098 472692841 820317677 292589070 519300480 974467801 995018981 545656995 951864293 723424533 881663701 547548376 675064188 985799604 989286199 482858719 579536266 236811320 581566628 907755517 940187215 899563128 949896264 327703278 696193384 875954508 882364685 701217962 932944076 693903048 881111382 651123737 997829800 368215580 645447021 918765548 982627168 567028321 895116696 580228462 810001293 353478851 766211081 161128291 509786847 395633141 942490709 94479281 831413637 973076676 990150880 628423045 800973766 285562219 735666794 295804502 375714942 8959350 400256924 146146356 895994001 323603067 496727618 530861285 564750535 316962948 676306886 799068589 911864951 867914191 880696667 55886319 659760892 826923730 851243670 602240364 647897179 157161875 900890011 714020574 864607271 902670749 927662605 565244638 848369527 546821702 842010322 454499304 696879975 462790694 648632549 735858596 758098688 908787359 943432606 936942210 992877377 866483218 881028936 144459415 526624625 217170108 468510384 411254803 637201015 352754033 493017063 537862101 692231470 435966414 575763356 428229495 438961866 469997813 870534540 466171516 538507632 523028509 895323000 480397353 567011637 289638873 563705819 165012180 419766381 969093953 974546379 474201702 915114931 52648630 577360659 851506052 988372109 361426496 595078256 989047184 995905670 366158670 936717135 302199068 384524433 714160751 954085055 568749366 930716996 413774442 615277210 590091792 799426654 287169622 582574056 299792905 970722169 346067208 555667176 495421341 618610965 917549402 955127124 973600806 993106231 931890980 936143414 322203374 324531666 851657871 978002118 153211533 944311652 549153316 789547964 893258890 918223990 114533479 687265964 733639218 776249894 200393486 214948649 594347258 728041674 655839737 946225535 924143746 926699770 789881728 993752839 973320174 998070787 600334154 677882447 321757744 385794174 138900406 759816328 758880602 912192668 900838399 993035105 994336772 999106191 574733209 686651328 200270718 933945917 400096866 857052160 749527310 994730020 112775132 637267608 732052817 875797130 135038566 949747249 159865549 785119243 878083004 899286521 27919580 192097175 781416845 914217541 583586314 730269465 336075011 402963300 317803382 839411097 60042371 72215237 174076501 839363002 653244819 897475619 593076154 720767448 778111463 885044231 867634484 882655608 392851761 471169098 725754965 926394829 390578236 973403581 244088560 961024372 169108793 678958434 726121667 807917531 993194981 994353477 406781627 428148324 770842880 794463181 945585468 991756221 592420232 971188683 261148856 725363351 543292798 673869638 325245208 712969652 152622409 465231082 759100130 986785605 429988986 607880018 8156175 198152013 447324819 804336781 693329986 976448083 339409848 937009039 522055016 938686292 20248134 158086406 361450552 949544109 504090238 866186115 234127347 599971887 104885370 804876416 367356991 547545352 160377962 180294017 998694235 999136621 186416041 413158173 692221825 927184462 701844885 834113556 736163618 739148461 856737510 872224356 289456219 778417005 858603582 954496707 418084222 534634528 353259768 537033595 686939965 845254675 645822339 861764762 908645908 976485840 48014059 820535703 578275853 824348618 61260299 712322606 725105524 890116948 573468307 796754740 901504681 958156193 184497685 630376898 133055007 277403334 538141171 940163434 941077947 987495988 164692318 901092571 171423831 369228487 525704848 796379716 858395359 974879858 803202782 926220860 486415001 847111948 390583887 819803331 300288369 993831662 368973513 491196695 851352488 855949379 905913164 908419440 457775487 623685894 955264467 979906723 868371675 939710490 951316077 955729750 860722450 983387280 593419461 860415110 386925194 611077101 499875605 816804472 681292801 866286996 889984763 932782184 336617852 443150366 515470895 934517653 192056912 570037994 707485848 948945008 403030697 908223405 609109064 902431768 345300269 948045206 528981120 901235367 901701600 983099449 971573042 979287945 201076990 783503727 858943372 916160397 609742539 731341986 785694001 902030367 550029675 912878267 240655251 432971151 747682914 935363691 350777702 778589404 422965652 506802369 762536834 885920912 2418126 804183558 137586333 438707528 943318054 963065792 370921904 900396512 726910533 815565082 720210287 975698965 196342170 914548790 336352292 560844614 704790537 767804191 592197642 811824359 577465282 951530732 196030431 202348638 226840712 299847848 693369974 748477235 144245549 619370945 887443035 942041431 382673377 430305387 613504036 657480434 523340375 838767714 799130724 983893914 363408704 779254057 940035606 985368846 815269336 856028169 927010118 936351029 997817915 999226174 317550180 694469755 283623755 446883957 811049873 895394117 902090182 920943402 297672321 511427450 140020538 424985705 743385106 921117226 493811049 721065148 211537546 937715104 501697224 967614407 73266300 865645947 672007614 851937450 868126929 947594625 592137658 913975290 921016633 921155172 438247433 963912396 178582802 987603214 123337862 629673308 543798100 799110983 617691585 931903743 248996295 633658141 649554945 988420867 260873572 339876232 682711855 704601733 886068781 930858254 921122880 986249832 921767139 997401463 597013522 681195253 143369341 943566088 767863813 989815420 720179834 905177469 293028958 760064825 505065812 959382077 997913197 998705074 457687050 597277906 794087792 982104045 282651258 477111462 675184859 783830416 936127311 994234742 491598870 781606459 54185745 220985852 699981031 900294883 205448305 418744280 513058929 840874161 46203949 305662902 978719471 986676183 155090659 412502854 346330158 903218418 363780742 382738250 987513318 989069067 980734256 999563493 959080554 989791529 178320685 860823956 683776589 937952339 690526564 786578516 916846270 961437303 982706603 998196510 806728039 960602992 267865533 568668396 792157136 803727891 504261228 987376142 867786371 999450690 793670956 882405264 51890535 458197133 178283025 952240481 754967329 997461543 43276683 350537586 457990028 795003507 885615035 930792108 728489518 746109621 225414593 478828882 744511459 924400284 929575307 983310563 790539246 927686158 78767291 198090706 554189197 946178106 958857673 961456966 774663722 802942445 186574042 468907106 684244201 804851299 825855470 990105589 739722247 898874481 56994858 333378070 971819722 985387976 658757678 704547197 823323619 935274126 127241697 251587530 413635651 665039678 737702891 833839876 531697805 729631608 136426475 670530948 208249865 523745616 825104143 983262373 863032248 910928645 434812943 437355558 168455458 639185339 403953709 584583915 450743423 932047090 849135294 869800701 937019612 945577913 688867414 892617927 612093419 950442268 418464247 947970530 286020817 871383009 667936372 905745536 989484754 994305204 706384248 923169524 336887435 885226169 536428061 871634460 64037885 244256969 27970650 649711107 842609623 978978198 228493102 501989145 626436813 973845390 726498348 815719037 225419513 761583842 334912220 661788904 960629845 992331672 833582699 975897324 156180286 991376989 363318458 977095403 820075782 902089354 696142862 741344094 763865142 922137276 740047179 815866001 511062869 846146996 100820857 715261462 427033396 569577667 555548254 622562146 168351272 898811113 908666507 938234885 9222449 954040147 285419463 874277998 735909440 882817554 86704818 369260072 927882001 937463231 874242931 907977786 568470360 802600322 883770590 978778802 249557979 324181226 180561425 361069895 378104458 595511689 43377976 460952056 582162738 651267623 566980580 909210942 277184823 999574942 116892412 226811368 615262207 710760541 939371125 953319874 288869303 756992520 297638511 873734722 197274817 276422609 194310515 575748200 916495367 986637972 404371593 737379848 823597460 840016522 727360131 985531578 442498936 700546781 681310285 739031539 324340136 959832268 545259912 752345449 672861870 785995686 817919359 935141055 889740407 927784952 485788695 506672048 465666835 472191181 302430508 692246865 685591755 878437829 351579276 725353039 224322498 633917992 644355718 870341358 120680874 312620950 58084483 499040770 66300764 718190673 573156661 878600395 506885066 544228849 437799797 653812390 744475173 964365434 837978959 967002035 541654797 705899184 699405098 946108944 204314218 207563511 244633846 734379406 366147172 993141222 410582720 744528985 176652917 893236504 544916543 780182275 396989650 554034755 713423232 826233233 266430741 703829706 21807792 246764433 60335337 788466588 420451002 455073187 152334259 669718579 940142001 995544828 785878922 897828455 958687558 963108035 470299739 725212312 289268914 369861124 396482165 752536173 352358870 403325229 87308844 473294954 234162998 371320762 347903313 447580988 795087546 883738491 954980368 967623709 664632472 811962060 155135870 431726413 742168980 873325901 180996447 760020223 991870053 992939450 715383008 865405037 443286116 499655952 115776407 932917162 983038871 999446476 920440415 927498621 676277825 777454269 709442112 953105896 525892543 684159695 975343988 990123740 287738797 320719270 219903894 414390646 218814002 552214105 114888246 797808986 64277624 233650819 767894609 825929408 946681743 994599016 344086186 899819364 886988966 914803644 699385726 711598250 886365680 972656080 447636126 490472289 28228149 170048703 914430979 921605191 668598171 867336480 756238615 922540605 561045058 584241847 112898131 879540523 699098925 859818691 451237950 991305514 754358768 782295983 237628194 861955884 683118532 949058609 953272930 958651282 970375990 991444872 307289918 879877202 787430303 836862604 557218823 850542009 514395322 540695023 758897779 781691540 528381382 803833119 876855604 922654587 909724931 962934345 164533541 578913818 669845468 842501305 199053261 964987036 766067513 945901325 236294684 948401015 654321390 794569762 859719744 871692881 544401670 962996722 940487852 974805833 472390618 711604156 400869430 879101704 602256382 907171770 771775215 854140901 74930749 443449851 291515172 643586586 461331479 848149302 78230428 934126414 631648879 694337459 305008186 605552934 399920702 623114046 547227292 972763407 821068312 855788176 290548809 841379323 10174575 849607157 118003162 513990422 905592180 936503130 372205010 415977655 55278052 853176203 432110591 485981342 385175893 835654876 497515094 908729776 231110977 503708110 603482461 946309322 655366782 862634772 36768554 793966734 594126975 801343865 597321425 771594403 961920118 976170214 422244573 633163949 445303313 661471025 581763137 669053587 380822863 601498401 803928770 950349388 346561245 543847441 204530085 835512663 545675313 582863487 84535101 803316887 579936979 901729107 196999333 457365911 744778420 980951752 880411494 941939220 238405508 963236500 918914200 955003218 584725867 747959943 318866334 518049915 745971335 864219748 603002726 913533290 647403575 651121530 780479482 966082895 267433938 413607688 662721983 732428944 190955385 822048268 11624135 138871984 496052102 641821956 909010 709016769 109022911 523288677 200574635 638761107 882002533 921699850 731235796 808541028 373348655 564151806 197392935 802305235 50858344 669502612 526548089 845609255 349586804 928976624 836524278 886623658 31841738 628664163 380943716 581100414 394257077 501363774 949818308 960026728 686709374 881312460 819900984 912668549 295552164 320305029 998484961 999439715 230346605 370020131 522928541 726568727 495206604 637477396 302825085 629508765 968246930 981479200 783731167 882267798 195023184 694112186 647408541 817809099 940501597 970048005 12551467 59110650 880519160 996179289 206784629 414269192 898475123 963488807 246308841 913512998 69333555 958041942 279015952 698540075 543503049 782053904 89641831 901705326 630646258 654483450 650579145 890052231 311538751 806248771 797619009 927549826 127476772 199514183 661613194 669962565 65392374 600681531 271334001 924435748 223831097 519018074 455292108 522068133 169329040 565565270 298683192 790040418 927757256 992785635 853635101 916780759 668088645 763529462 831453774 866576328 177870130 570535043 661109485 806607299 9314176 696747387 48177687 979611906 634777814 837347069 566086718 833515745 971784129 981470110 108313453 476014750 820906127 994751552 106276524 395018467 69736196 867966590 220545952 982743959 29503231 68343096 954931923 968973405 82987882 315427233 385403926 760952354 143713840 230499258 152658677 970051393 104622117 771206443 911726740 925013042 716453653 823768823 33876667 780704740 733779010 897371445 999766702 999774034 405864004 811204681 727004572 963792844 294665639 407875491 312371523 335730131 318946037 996246258 888508783 970334202 796377201 943180077 356994974 517891305 374074910 522901174 415527230 577260131 779537130 830160872 942007761 979378533 274019939 692547671 716735626 924295177 716924026 899278113 313505305 639537099 353050176 905344255 75885989 763196213 660612367 964330819 664677 606208127 385146984 914856486 75788761 403673490 583263943 662343378 278801316 693031317 601324978 627313180 591565646 977391389 653669276 807908257 710000716 852500196 618188678 721396131 319274899 353447281 596548306 624368456 997068998 998469885 770304106 891167112 471557201 589478898 896022091 982796437 44503967 414679082 707469384 792243800 197311418 675740592 547175954 647418222 275720835 989884744 816459274 987277973 277243070 983917556 152711269 322780186 733074278 899544169 60845149 873175767 97118635 472969366 329716831 815315056 347576430 706167435 211657051 726841985 473647545 623684548 574900959 776034189 115629365 436013135 345906292 640195777 826699238 964475139 979381944 993627664 876743877 996005482 472885599 508376426 299855557 575831418 121348211 927640500 208885661 763766120 449236437 690637320 34503848 810515624 337053401 996529909 675390476 706904065 286792726 795417715 958356375 968576361 904406482 965376537 198201211 383803314 586059466 883053375 92982300 813815570 755524984 850376673 269222983 442553133 547667949 847317884 13096070 41578319 851156729 887947994 202492008 285065867 494342897 716194110 456050641 634010986 439561559 520586330 798359389 843951228 859444681 875500702 632288525 859172832 319155849 749078532 121064326 987164001 888697922 969798073 640066315 845782558 885816797 920036850 887560654 985751016 523418273 552515631 237646921 920276821 190680454 485027260 112551069 571861104 285875380 626392949 742892993 763793469 555219647 670069108 553422858 570697136 243137996 876002390 141258602 866663612 755915246 851051484 92191823 567039931 424917921 734728808 533718900 633593398 905462691 992510521 258123289 294226015 348986143 844020248 431603864 991106287 272777476 864266095 260466293 479300969 352539996 810081382 765952019 832350654 899456017 984007834 696026015 954805448 403561772 480514897 610128864 679306464 466726629 497626979 268761812 862848436 816696979 891481878 747941436 759591845 524226354 777865749 440941003 530367875 854807381 909357586 309473592 797117267 422471419 747443588 843411712 874197267 532114762 712672997 853900871 946856489 708582486 734408785 445030681 867797806 799905074 907468926 609409565 830697519 437297351 553171592 514751539 530744976 602040936 923780381 842275195 980027653 548735691 986376210 372141828 608545097 141859016 516269441 886567173 891532473 877563025 903744923 10001950 960064071 445611917 880298854 35317213 170637332 422904942 443674901 69858315 116124413 312098506 493635573 309593116 789965309 718703976 820273212 504083109 812468000 708100141 928793641 541887866 950498328 106392028 954933869 543767577 968794465 491024587 524459396 519585754 879386228 405377203 654848504 640811410 972129896 674552783 702762993 715221715 968676700 84409608 100899338 493172839 595478405 843722220 973870352 791045428 961100404 896244705 978753798 632134722 840527107 305723067 576007415 176901105 625623628 678472941 769735055 143344316 840860092 610998964 805050335 523404810 804026273 173896091 456717548 708435893 962664749 256655111 458409095 383964922 824576621 602870929 943873788 410302425 814171485 365433453 771669874 34729871 859627585 330872280 404778645 457594039 586024876 387149149 445803364 414631898 458532544 691504606 712221104 39402710 546176233 673191399 777095753 412818614 497535758 285585825 504585732 967028279 973277154 444621737 520669234 957966648 991754707 877553752 938223215 68946804 797941965 578015789 993001890 691465993 765659667 387345085 960180998 921501310 927710645 990080054 996847789 688610015 916949650 984184355 998343381 339947170 391681530 472931084 691518918 788749297 971350745 768597463 892519065 216167729 836217189 835044482 896366264 830873170 882393293 879340913 987840198 248421572 757032793 126377969 384645685 880394249 938222199 998584440 998720776 674784559 978518819 186183381 479791274 336752418 820617965 518614602 529660809 555834645 764597491 824296880 959399101 934969669 988426851 663221785 844817583 976190601 987032661 358253661 571884821 422980555 856978990 322703121 326507731 792311590 928567097 521942968 662727677 670640386 728220142 18285409 724590766 448009918 784635546 636474480 846184961 108544580 995610933 252013347 544174432 843433845 923749790 177136594 196844477 436501102 795957244 834035746 859409105 833589565 903571107 655439077 870983033 866222616 912840073 4426584 219907654 521555450 901021904 297314032 717157922 629540039 780572538 733319098 922695506 107778487 662965876 585284278 761217257 429442825 442624378 197415209 524169776 668498099 713617709 128062836 735264537 15756827 137083731 24472692 53335659 976550893 989708554 795851318 860536378 305630588 504416935 778209490 817532847 949718890 973432317 270464325 327050046 961733916 993289481 298204878 567560271 572311968 992879832 808002402 840150934 915007618 979644404 620898337 731657891 420327960 491066670 833177480 884097946 892121959 896345194 881875256 908593170 215777766 690580103 816043269 829154633 133619089 335989476 748329302 927631490 127209785 918642263 213042261 538149759 4627 456195590 117326084 288527812 810764867 965851881 605023664 972906942 590974284 632001814 840631821 958571654 497887590 723849613 728627222 983540524 297892191 936185206 340429193 888169790 465390038 945093716 796154751 860275397 754331527 777701267 735083843 760021064 513372835 579434695 858873023 946411653 110155836 332646130 570565780 756390754 579977667 688145566 471365073 512593308 484872554 563990032 637050130 955053042 707657862 762626863 697694355 844504964 224752738 902557511 726240011 948348415 723832694 895886638 841359686 871947809 59019046 738746909 205030510 396718420 982916045 991253858 764566809 889616522 263614911 924151010 222178378 497425800 577878597 895998644 659150082 664971717 446605164 765407015 413589597 671735316 555984428 952234539 805421113 936107766 348782372 370122501 51990922 803124927 841397928 846412436 503803429 803494872 85500648 580501448 691600397 930051384 449363763 887240904 913995807 939916589 322160005 865868167 279742632 892092260 952015146 998722020 113330561 679087323 116251321 295345708 500532216 517454946 646861110 786559907 726873670 994201565 308825210 688307124 189848466 782322917 161729173 498070780 795769413 869929557 235247242 462561401 663201583 836105240 717514840 806065067 552957759 790971861 505874930 601601220 899415983 988649218 622839929 855635500 531724402 727466734 66548873 195275579 341225159 997445067 891137956 929228191 484444986 571072773 199027241 911590538 545094215 692878005 490541406 500546594 194098058 521322366 109516743 955622784 685508010 722510782 584948014 795273869 45299694 160199869 145441903 362725181 505605792 926858717 526628880 611088609 159160188 864051430 734628661 810152502 455359892 813693287 863478139 922312894 893884119 965909657 465936140 562445059 949399335 993105566 686054031 721271363 415007467 942767265 521977193 796600402 19706146 540018887 164993445 916027433 57931236 684796321 826867877 941947585 106005284 659067554 548581914 880794025 469428416 645926703 25338932 802528226 421744532 604313751 140725515 212489600 757831265 954314788 15989435 572608108 514868006 887402040 72479394 271548018 865965348 986866709 824982717 839267716 712392358 851047779 115590588 879709819 820740589 912461501 929446129 969443610 977904830 992580852 302506331 950575314 328922563 451647545 593708796 596028072 785625170 904601007 607086933 612444328 66595154 147246697 435182205 573435856 668730596 936764471 690692100 903865333 460549939 821432035 915581497 984967056 280882594 652129490 776110407 886732408 108348398 607615943 251541072 709871228 29071979 628941820 123707163 325746226 52827067 904693503 241583100 698527643 74215550 264526348 298054941 650227334 900374666 982951283 497124722 732299148 47885669 678066487 271402584 876131042 892341280 999017318 837750812 979157735 245822891 445439021 462854840 850235551 323878228 984941213 275660951 459212571 214465494 734557254 416646343 510638414 520700417 715897229 646766949 803203777 595516856 872711053 761476588 809586279 58096521 914718195 318603634 986514886 123724928 817539049 532613098 778530855 125065650 358563851 213424114 311220177 846900611 975641088 416018370 481853207 66380104 282597231 753739761 946019022 831004958 917827192 180169425 185478646 124207204 517116949 618113067 649773668 969260337 993222647 81584097 501296119 438567343 557743925 615347132 787332809 129751667 971039570 865734786 869557902 606679333 747651849 256429977 831413920 896024345 960675033 667846362 776114361 412848711 667894402 644448143 964879238 87191753 853462200 89983187 347651910 871796931 942806660 924159708 970103442 160888490 459036849 456744731 499439840 513994952 573016122 232067645 732355572 366394468 898991309 845394947 862597010 337825617 879770229 624817682 755124809 787286984 983526000 394967114 855618600 139152585 822650308 784001150 883068381 19595899 169727460 7774912 731078934 911217158 994476109 7076995 854425779 510086011 723261541 288569194 662764210 968358420 991044952 52835556 498703781 828486698 837540940 300711775 901087685 53680757 337755251 553076619 790505064 37974079 641862892 353779860 697239770 797420121 831393833 237297477 681174516 648386850 966501414 16726476 865579708 773475976 900007780 290300129 491834924 850304949 851674814 581804970 796743120 509858854 551021648 291404236 335535365 668074554 788154360 399741058 482808284 803243763 811167690 89457752 796619825 763964926 933833251 852488056 881169075 349264641 372398423 411621567 700172583 122095744 502143447 781740582 908566819 184830240 500018253 401077046 498143019 422435112 998068302 161353887 518911007 778909146 884493967 323988640 888829981 680074420 735616672 829306118 972486919 38326251 697404783 791867534 831477020 106185688 984780515 13427719 253391174 883897075 936968715 64107869 841957485 132547906 309371299 945771165 947295728 434819369 907094015 851711185 912544284 423995991 708944543 118960667 873101899 181090194 756032007 3630511 840709196 792849626 810530090 816070834 834822211 267854521 840582713 950975815 968177730 753080065 950083967 274125611 788981826 873043128 996345900 50527491 873669936 976063490 986995555 920395114 977146494 95111020 743325789 842417772 929476621 803842219 996654751 959204157 971684785 280580380 519647545 618650715 646406041 57584868 75375637 903250485 971471767 411688047 735772749 85357018 329021948 950605366 975629428 995402224 997047308 16641155 323000172 75514976 688328262 945544300 978547959 514729142 706756456 940482393 961397841 527541177 849899613 839882558 924994059 287209961 685389525 291472166 570096420 75691965 896373032 655110243 899415947 79203716 218567704 576570849 604472549 975798180 978021994 562988704 948708487 939761384 945161717 141863734 790370731 984681252 990578024 305476245 340783017 873067966 902715598 231605955 480822368 585417638 894642225 343497683 835105335 589683113 896447028 862110909 926408661 421871139 842910895 432097135 959552076 686925435 692047940 621911661 954216391 719522264 820234052 460065091 809143427 164952796 914542725 70506372 718544840 726111384 783573346 573385529 638843835 386324985 420339417 568776773 874191777 809839502 862818665 209757859 569023313 81443121 718125380 578882436 605575614 203558065 275989831 513160998 753022226 895654762 976813956 394393417 490600048 107703275 345226310 246283549 633041637 1337766 376374231 890522853 905112933 468911730 764023129 683037717 974073361 708892598 936816136 74863157 657630518 829260027 951248397 501241786 827165513 584489671 783596886 303057032 638457263 703616429 820182374 11861639 787293165 111058475 133771424 107101102 884416374 304754253 344506547 686430297 893233595 609535295 625252415 915225509 958656938 117287277 859018457 274691613 432384915 95752707 491052518 273689219 721109870 51194784 52891106 349700443 541732053 905340436 999200510 318078061 465957440 550089139 957539110 658941498 961888551 305778699 481092333 441195318 485665843 832955229 986818460 653461872 993888994 771288795 984533345 939091457 950057487 776500574 896796889 23558245 218190798 372949684 902125724 141030744 430991068 92152496 862577489 287147433 550382019 631185665 804197022 755211781 862799279 669510757 993874596 379395625 481391182 363303210 864791934 984857596 986431254 125491910 652860649 551474683 598718806 257171878 532476141 515554025 908041080 584083771 859908138 445743728 831717652 2367488 466557427 829927779 846896857 396034857 698577193 952495055 992617662 263329920 562565008 995237602 998949751 125474567 532705848 522583529 585480933 445801815 535533849 688886630 912180351 237830764 833003403 469409948 575393456 983334019 986849136 97720571 167201925 603777439 768191509 757712231 927435650 514343997 968988873 91938266 102583497 976579176 984296343 666828861 967600999 550819408 849018504 173278807 692515356 487089508 670550303 138427831 755792867 899530031 923728268 816200208 911969158 978752653 987313661 680333785 777061883 968446721 988169657 145822230 235214860 774001939 828800221 593301671 756466472 404348997 994808999 800298304 984125237 58014929 418410338 759755157 976145557 570378813 660083480 600345836 637762702 69740232 265746700 956802222 963066620 264248936 725395516 913714009 919583391 254220541 723270748 768078664 984125031 270290623 800631652 457981811 597529890 359242631 596575716 162042340 883443054 686635727 908860669 231401109 406108346 4409363 455125720 96739074 274387285 396432899 752553353 108289305 273202982 589138000 980749200 890981581 931252187 922600808 978803645 313534335 871881356 465567245 923679483 334582707 945314582 839909034 926335861 776222691 817213446 775051096 884399781 159114743 675472972 299744209 360663277 567289199 894306293 28902762 421008573 970821872 994145128 321858600 350875143 957779559 964564511 598967813 846488825 131314316 841713549 790906980 913249021 121627451 396305111 897270686 918811880 806709038 998553354 464038494 690146796 447109673 694819502 884614447 947901472 594715534 667109638 658104932 888742879 244781097 800329815 744499265 911737243 743177358 905322416 202340715 899286138 934113021 979633528 750787669 838900025 180880258 859091534 41394767 568306176 259264222 532917638 727280068 854602065 774898149 856178126 849093830 928499398 56611810 881549345 554988906 602894912 202460504 472212331 491600657 494970746 121275609 657582651 615553041 773406857 566994178 894734432 349593490 782856829 299988132 814317114 155860875 830738849 498387443 566976969 992508847 996851696 133887110 229453435 99622592 496100852 107464524 443980962 19519807 606988952 692178972 817307801 92120944 776379818 179686101 188824365 330790462 970236334 928358732 943095444 859327725 873510800 796229096 976092022 274360689 566931740 299402091 733862915 589360894 657691987 761823191 946463579 863130584 882682918 14827367 18033738 703042630 913959105 563821238 754656621 35382578 140616489 364861023 575901219 840890332 889550354 30308035 672784770 417983737 960050434 659763115 817013538 561319104 975879643 417871168 643804337 579485565 614890730 652850783 799118870 126790424 933539822 631026425 933746229 955885140 999450083 68694070 662104576 912179226 944310401 954912855 974079425 650278056 701426805 145287688 595677082 806819283 994176254 952746068 962893500 918501785 952521220 354492526 599136492 117892100 603835376 877126203 989934933 909376129 993631331 497122307 610045732 253408619 438544048 831149442 985415651 461434819 638918603 855174858 894749211 199306582 614427096 104616435 600394743 870871083 950883320 823965188 947644397 878042339 972443226 357497505 507926287 131186461 414059168 889325243 969743466 910364260 996474918 974097256 993591210 220009604 754067668 724678194 792390013 730194177 982322944 602393676 927805641 674099838 863164567 790911778 975435795 254057020 757729925 36444733 740968234 366909558 647608438 925966017 940922171 979876705 988899498 136311317 630591799 136937912 384203286 811945525 948361257 317204662 765021347 473843438 625702757 465804129 785878285 287535673 853866237 568813478 835693852 924888670 988280387 791764918 841740643 637389669 673779457 768027558 987688086 631026990 686863598 207631943 838490878 851332448 966116539 967721813 982307065 211136826 549311299 383838811 950036798 943612561 952859084 923502656 979414405 79899452 402727449 253296494 476375518 305240713 372492124 330634995 388870184 774860057 895241192 292779682 625941455 906979630 937224701 69070759 808612832 805676177 830713657 39278312 871064708 696957553 958799623 79801754 315626751 594547199 609918853 464636553 679092819 362629883 825045973 739591893 974274943 373808613 871110932 352923873 485760244 402979200 818917948 449562296 828841763 581927607 782030038 575407629 823718968 24766707 575598969 275607856 685151382 423343573 907912277 595986597 668515520 957915116 958353504 195376753 605807137 84932036 821489723 64247102 119319958 105126552 973076602 741503854 968788722 651105795 860969374 708683802 991134539 735756462 915242682 303292877 825386431 423442608 467023463 654224653 751057458 277707809 904507866 579184667 903437212 147899165 201826499 636160884 863406419 442515829 582758121 477707429 925078759 150892164 885031946 315420563 854182514 505362203 534043196 709836373 998050488 647779144 696272542 363166721 831126063 331760540 744854201 634574055 647529843 730808001 929931385 790357820 921236698 655718520 806082524 327666271 359440529 677780672 678613410 530336309 912621786 638106898 852595799 231071856 488904031 571387601 794125240 270335316 488690239 50138960 984583493 238055641 632497413 321752036 504352939 234849488 517237104 375131530 910291736 936686991 954323812 880290094 939765722 271491878 535480906 729180472 862884257 357719976 502168892 846974993 868514664 824158987 907952903 688924715 849049043 635793142 878235908 930746467 943924652 129463535 742040677 696154897 885808831 84276463 186114552 960043660 985850561 82463150 953823383 680362974 765947307 47703179 298645819 789531576 826168875 173237379 963520480 142361575 442697039 170690720 175073805 769617429 983991221 12849794 283201721 816596801 972710930 755820045 916175030 484268848 798213196 597470202 626669635 665273446 980927274 908930259 981950917 966435740 989118606 692179001 839013164 442425797 808962244 105581835 895611278 132814746 425542141 941692017 991752527 457639129 546114296 739044703 755290013 257731992 962785979 419243978 537348562 291223855 842219205 284789443 599520667 358430290 640720328 295094776 323558527 999042488 999850729 550683637 978550087 895407554 953178370 376493588 789951272 508942963 564861475 85508543 372489419 85377197 207874129 411187556 429282452 365096871 868575440 270668974 342343462 509123093 986508486 207326064 344567194 429880808 521878307 386740508 414462884 419684142 533021310 119039009 844606372 813183809 923692204 586424505 968052836 619868728 839421106 583593919 806880131 580844236 769328098 753021226 865578373 119295665 224233983 867937496 973368414 554976230 781488107 858601325 909106932 12272786 444229086 288548360 512382302 228808699 231386563 632634766 931729770 764955915 807174104 629901276 942056016 60037250 835051747 669937393 743213352 33989182 838377894 952729019 997293778 230555062 488469832 253203658 838485799 208701913 490538623 165310485 501202080 315918033 846746239 123887307 738438755 999570479 999882529 311883002 401075632 812748386 942780404 149753812 281397801 949066728 993836092 439633064 830455289 621945516 920896194 524684282 597183255 580196932 911941165 886573333 932876717 627499202 965598534 679955278 817968940 688921936 806275586 906000201 922800209 50820797 277012878 345906745 931271589 708433513 887936727 105524042 282394049 766195377 825978059 770998969 827039340 408310424 603087946 683111886 806098539 416621665 838022025 562278365 598111719 294025985 536366237 287778475 797029927 283991872 730736715 558147932 649981288 705610881 766192326 998902453 999656601 462514029 551980791 104772088 911188453 206129092 783950821 495285089 515020196 550713934 654957503 635677559 859053105 55126720 354185325 418301485 732711077 767466188 851028736 772455209 778474426 552312062 687636326 983976956 998473095 322771009 750939806 949814044 973910119 707050505 964347685 487647480 496544904 83821271 923012383 940192704 980775687 425365860 742778798 294220316 929618044 830603422 916826285 223761543 999133530 460082568 702881571 40660532 257518448 696192424 720369273 864691936 972386039 708174650 942475004 274005627 743531074 669587547 922879126 299847448 698069075 717079747 976434766 360369942 443485531 257390582 472336999 88216353 951327300 558248267 746486480 78710855 558662002 388571571 627227628 463032562 472352311 525857612 546619641 541990796 994697999 760596779 898776606 723822910 846965979 899009156 933928856 604973857 632326110 851698458 918025793 501966113 983904819 377436345 724762724 779623780 979102324 283103943 802125052 249305656 822189165 109389309 203242072 610215742 929423552 772932102 952010358 899856698 919263290 136142377 544054995 375700495 802681854 969427567 974565527 107495110 936209649 33545660 716929397 498825956 583195632 428365365 637882076 649932544 892274356 19272494 319896364 320525839 708339363 107606530 165763749 595397865 848749872 45413898 547671075 616047826 767496983 929537616 944755580 551489282 551740040 420776050 745494410 296855325 679496182 144624137 170063043 225181859 492476310 778804621 825399697 515275801 632629192 400514077 575425316 947921519 971875858 308435621 809402018 795197521 870718617 702425739 869207820 297902747 848337910 663658251 910382947 420457037 837176674 722305215 818102737 200379669 238514853 229088777 723203823 458245087 787002443 752427677 823063242 77686654 139551346 257676908 378926899 733988330 812278831 451148759 549250343 469565104 918487887 614443725 741088392 43931409 313924879 918116672 941533854 653985149 696968475 850567494 884954226 431354778 950944589 98848426 248157508 649722183 942689643 125602797 316383475 5981084 847954482 54135152 405379421 983557626 998965846 320988439 848353165 172279526 221747357 226830850 595939950 653341638 977015575 869562765 901967990 736318699 848493628 138116202 840599377 733888771 753215629 759816291 905312294 668389455 807888725 118023067 780886097 574638167 895262774 304154925 554860144 579630330 806404568 467828672 823743615 437675907 908855793 733267262 883866121 161488675 231680045 770330084 822902324 955149287 989850726 476570314 964303987 97780711 438390680 408692086 611893507 230439797 801452735 225551979 550574006 628238641 979720529 28521802 856940051 379276163 745060388 416536470 724524593 232249383 557181566 352244282 869242461 130553991 705459211 59221311 137213289 192745208 374826754 74622946 960504361 901084082 903925092 649035538 992814340 311196105 885212805 412182450 417872784 633150828 755386194 80258131 215810491 204107601 912401978 938516993 951044152 564621715 838691218 239652339 654739486 360744886 836346694 632116988 712826734 670936810 711872569 557796292 932794131 68805875 575947202 622875339 930940581 902489727 935114800 390274637 508601418 236696699 769986422 190372903 388525576 572526916 932120127 90967074 347156152 355027103 628767939 925877740 953227075 303279228 429147505 57278195 946891605 601922548 790119641 451202863 913145974 316465580 477644077 334060057 721753804 951328668 956540782 624873562 978139012 156513196 629249184 552846514 977458319 770858569 814991493 16538382 621401584 738715224 817032412 133123055 856541735 580250164 918070910 731269154 760195322 181935395 726063339 343208930 388576705 654034447 824950191 627705679 802069474 942107879 942471224 703693363 924218229 925238545 940816882 371836810 953617975 18678666 42599192 348277727 715112938 209682995 596877956 823211502 868062846 182334767 688655500 436475390 964027282 828001813 937984661 66356145 971757188 496482037 686760822 447152391 522298932 444780933 733379990 547461083 674231678 537625018 610137111 182079615 312380480 866943211 987910271 7847263 844369217 876198650 911988853 846271150 938177795 840829753 887051350 237733704 355346850 509590 688660529 462450698 525545763 470684396 590704255 677265689 776133051 439782561 858878871 414113753 800272799 233294044 502177789 26979253 880185117 229033745 795158386 126068407 982338447 866732446 964374320 217812452 389641465 91309404 575980560 843016973 895705061 748146785 945091466 702524973 912046491 529554746 773660189 895539371 976553896 270867566 543705111 628987338 823909761 719981346 743326999 942688047 998600002 483514298 526773105 37219070 176986131 227522428 592946186 463646822 943116817 123625057 889736777 111180891 191429324 126478781 340553311 804399702 937482830 524698180 984357257 455423779 713631805 135268717 616746923 6409589 612504553 558722823 715983847 477676777 966191938 209966072 452204721 754586343 926716888 467861897 614744765 290912350 835953041 235953555 256740032 425812183 845088207 943874089 965897420 171904709 377206563 28481100 608465085 789736482 886571154 562309544 665467857 846171266 956562768 631572444 748891518 861803725 930715024 438198245 454433894 162761968 794151737 974828301 983034882 189184168 743702035 788773174 804275725 650797211 867513813 786524694 940704542 90872361 731888545 736603193 781031100 385465038 559679098 841170737 970383460 343823903 899907791 505238646 960933658 523200768 702549794 30023549 760440495 155857096 722525678 837649726 929306603 49797735 701008338 405715639 756213138 420109219 522410228 495171430 785901205 764031506 795735544 805301281 945961021 95987256 842806621 852717373 865433355 332816543 966086503 43688248 727115247 648627766 781415313 705250662 807683678 25571359 83512558 654300743 758320054 296762385 586151854 453728381 732522999 394362772 631579656 618035893 871905816 751747304 867147313 357520802 387993029 314710420 338880836 852381805 991869198 4388599 871696603 616051561 968234498 292559725 365921391 770699398 913669661 903602984 933867274 507371225 808915095 4320564 824982720 701226288 867591345 664363497 896677758 14624700 800987598 403275630 724110039 671667425 706671620 408779269 657207948 947653176 984640468 889348344 908321946 477964921 492156326 688024571 975606159 45282142 267973224 632400394 741325919 515638804 823336166 850200973 906387995 487448721 594474121 771361060 972032964 370704075 834326051 19830001 372441960 28470489 892750914 847331541 992816126 848002838 927940381 283201261 815480056 337082336 623840682 18794158 526283391 736988909 818790638 182846038 183348440 247238366 775299435 813765099 865389213 367291012 794692787 886932611 995282477 993543112 997905386 359066817 872527826 943996163 999412940 744901213 953736814 960287198 977168241 725100921 759703899 549959306 740390131 913317284 982559928 103785007 215703755 127328111 911962976 100069298 995093599 250106516 818312771 525570325 829478894 33770075 521213647 255623831 917736093 704378142 768806202 12822454 366876336 63155596 398787525 663784614 719050886 49811331 364488780 501140243 607847492 27058690 245433763 295964945 456150229 56812647 397178617 215755625 524909910 364320523 634122832 477539845 994429018 403534140 414872071 927743710 980767202 616967130 697092050 155674265 709722297 31342247 515431228 218186677 932116119 633706663 952931359 911475949 940699504 877277241 894833164 248694720 694849034 218588969 879796383 881849855 910612373 785228308 978317951 707788166 817620956 88441318 378527574 449671706 586909633 286946499 875730581 761926045 927285969 727817623 765914706 362602533 532601391 938027021 976919251 570013495 796842076 933166624 963008799 804205535 836065985 29560261 90257447 475546438 634067229 512955962 640221535 243820833 734591513 628581543 815994440 460801034 780596596 904669764 929481908 278508177 635330800 17566114 671250065 517015833 569327077 851371050 985020594 762767723 971956881 9636584 623417817 277431607 311661514 195650074 595729467 623541030 923186754 330423311 652054245 704545207 899450025 777121425 870380481 800414493 977847864 84886482 356151744 192661279 492635143 537747578 567405530 825793684 896505293 976705566 992140369 57096020 518086438 902279504 903780356 682382719 896288439 107948917 271337037 814487527 870467193 998945409 999097355 549501906 828854318 280517120 631689241 658596067 971112981 696870097 799931735 18930658 813660264 135850166 458735499 275757996 602268945 594112388 848283441 904404397 976040664 804521304 819559920 549037928 789996054 254280290 636946447 696125353 821270477 200893022 975604896 251366432 937914241 26066285 820926892 741065214 985761440 218678110 733168066 618502210 688968525 624671201 972186516 610453986 985235037 990755507 991455996 510260549 566868659 458174391 808322167 196283690 368597257 135328302 334645088 773611641 847183134 923430285 958364130 430046200 731555371 114810374 966235085 120120418 818498949 672204159 929173003 606188716 639180453 647857762 796866900 46656140 163747354 636065798 682923162 640345641 925277287 228386025 943694375 82038473 961664023 460714015 665099918 203969455 571500479 280168511 670201831 794919296 871539246 778145958 857990877 271321718 502346644 134594179 993440519 851420036 894257032 731906781 955369403 436859580 878041906 944645148 988094317 615220921 700541163 102106003 511376261 953234134 971855853 219244294 238387552 807766172 930491858 80917838 398809329 349699417 689562857 735895210 818047445 473646979 820461328 764498590 828928511 470098563 897621039 84345082 325564886 234428340 500429100 712999582 742666767 937617429 953079658 834720507 971214965 642360637 792409840 726235041 750839494 974719915 993339284 480797090 780742194 346213986 375429557 840927153 843730558 440754303 626323072 566393448 720969917 492397897 759458742 629775224 694572909 847713259 873769660 289879748 596116298 345456124 953072607 749205550 945231815 346448473 441596279 297579589 987336352 523018967 906496429 138641533 949670101 978875128 988075497 195202885 817325780 892696767 956852559 534539638 632231593 178857005 417533306 541292364 943140071 950827357 975805724 314163428 370552548 331021522 859418201 217054242 344508424 332069279 612729892 43481383 486892578 431954863 967953152 380530701 809991634 490338116 621549790 802478423 967226621 655655820 736736283 586253853 912558580 140635958 382654488 155488248 705528089 428080286 799172142 815374183 998277620 657135089 784919451 106845377 694510807 343072679 780476190 797912004 842427189 296642740 694273997 805702032 976756290 961724887 965365934 1704473 667347900 746233287 905382099 802104543 928901179 239367590 866189759 465210513 645586237 243427508 470222426 40110992 212608904 935399603 939741353 846569703 990352245 75457108 970718969 746459909 809538350 331857114 408762941 113406873 719468209 450160666 962720481 405037604 589441235 344399096 897926343 94010801 521774294 840732765 978208889 704911707 999753564 36851476 319224485 658011378 670566834 405340845 759330582 577695351 671741988 791053751 817201790 363818502 768153845 42837758 93311466 179307633 358522170 180893133 391600737 258052182 287903973 482113085 750842373 305769687 872459712 949796562 970866800 728146806 841386637 110278002 556321616 898433403 907992827 468136107 554353883 809241169 970989365 821550624 899544618 426996576 830906203 31148996 155657315 865546302 870512566 479209828 861497674 283968066 668298257 874435092 963499584 611172593 647881441 107643761 387830116 102586302 280422244 717054640 743760248 33459661 467212636 294032015 955433487 110636022 798568676 148790328 302624757 916233411 986986964 47636163 711689172 796238656 851237762 680271732 888150618 630873932 979777254 830779017 986946287 939831041 980608903 63848435 626643704 13720226 274551283 649148161 693571365 190407749 792781883 655918539 871317320 38774485 713348806 310718684 773564402 522735659 780266158 22215829 910007011 950361660 993736722 523912131 546156776 574782749 667119240 349708517 475828100 596530300 788354360 64818430 420133246 638792571 965558411 274659646 469648284 199983805 689097438 402432161 901187448 966936073 997144775 115398453 213364684 657054410 923933847 174354119 800616510 961771465 962523193 578694768 970090205 575492679 607309443 373810614 740070158 555828060 707965421 627457427 782615090 693825476 795972214 824578683 917469194 8536607 743554701 698393680 992821872 346993790 593075435 416654821 528351903 69906279 989382196 285551599 780972942 887120565 933884918 361508380 796489332 355306711 408667324 125863008 632095784 331206133 842195503 610104027 729851554 687085546 741246992 101256452 204870819 960464337 986702547 461228892 755872516 184145468 471930887 277416065 600286408 666164949 728841182 32248895 243347046 324663891 611174015 320028525 392871013 429983865 437554357 433520988 613965981 587561160 636782925 23738009 144537371 559369963 692383332 98158622 778679839 32291916 720105654 648774000 921608419 975622427 994730463 405622784 447849346 872052928 991493308 66725021 426463077 572070782 711079559 548566859 553622380 989787836 997295150 705276532 898943291 432183130 660251831 651159978 870006090 543110305 790056111 37656753 960660023 396593139 562007709 86780410 136888023 650449338 753898648 26026008 229787028 524635602 685759164 679189105 708426565 388565533 583147955 650849846 857946200 824377416 965863038 563805749 684067440 976196835 988731035 624040300 987804520 13099582 587215250 677232269 762638743 150997694 174226918 553700783 600207201 300899762 386341210 894768436 908611796 372430648 556740226 505946183 877188383 143416664 743120462 58946594 758552404 22470259 276569545 631645077 657618196 601049168 771131830 382153455 669812612 964726455 991621094 507102063 565444946 454701239 475441842 990730502 993888483 284542899 724385530 829643792 959839507 530380190 697650737 284086369 393376175 214682421 335056719 712267501 867565591 461303027 734759695 451245585 674807593 647046293 908543595 570248150 969677183 255831186 664741492 413078972 775795233 702687382 958972424 837518139 865919409 371495371 946311588 982603690 985934946 193354162 690675908 945497973 991620671 859324130 904220629 640525889 787227242 899772132 985192784 947992518 985885740 159640023 949610120 914163420 958989076 562727075 676049544 938424165 986493952 557196224 986447539 421690231 987136753 812333871 967249685 373384644 693841248 677023280 947652028 771474697 828495674 804303856 982672755 452747370 684061258 743432489 850659279 129178858 624253288 961739042 991988919 576489830 760295896 572511420 576211234 976299789 986739431 661958011 691737520 989674428 993885302 352216220 804155496 406278928 501038284 710043197 863112790 107061691 448717101 282286608 959175846 329431826 807216861 109242980 754646635 316530926 361460851 968670594 972833388 292908557 441334142 881455621 968248419 813045426 900566700 817852245 931569552 353768105 605325324 238994691 357813732 809478974 988518596 966384445 994926658 725681197 771027307 975878706 994481216 105286300 681569943 451504665 949020890 715222152 918801049 759820391 982038521 100153911 985762393 615212283 644633949 941538415 965391792 22474113 515254836 832975596 938564864 307169280 645954694 803370724 886600331 890078834 960797647 848227923 926738629 765459311 879965331 890131712 962917593 69417719 492487018 599794541 881102999 213390730 290847989 748527066 896081042 733946184 912812031 913730571 951787553 337272514 795699464 795797884 827054724 113645852 751688136 43833432 524564050 82708632 792021907 290484544 565879517 150113018 238756546 756419353 933473499 485453126 777533007 898145646 955394268 691290767 754537860 109199942 999160144 684274672 738667271 474520392 609455504 737201769 971586223 651317019 760662662 133328556 415185706 352357996 829201315 612983467 723732230 700992022 759290127 945897216 993258903 975801000 997097930 740043898 817933261 469095511 553912230 227692250 338692854 560843422 631681899 671519609 944821735 786697409 921629801 556230650 987631902 442477499 677495762 995916547 997025556 597926540 929584452 821859808 994218135 52943240 523307812 548595369 943207524 498026486 716193408 424023112 995318832 901955713 940495240 30730014 832335525 553985736 710388292 506169441 861305508 493781038 904696397 552984682 790158047 247700948 803813616 134450329 366307405 531482531 961196274 370752683 568804323 170388084 348092865 534445200 563342580 624714783 744538003 412501993 802428082 156126225 832843768 349128918 507835742 539859988 890560195 649604370 933390562 777847506 996845984 276299115 996799973 114846980 413120398 648344421 852753649 398474784 423158336 56697754 568603413 917184062 969491539 407511370 805346599 15521354 64383093 915993070 964041190 259129265 972008586 242312046 758445477 865039089 919854853 155484896 856612568 856905596 881088906 125590710 206060722 781777397 853278743 251521112 331543921 951150068 980478405 413546643 540102926 226184755 961374822 154175573 282240096 226297894 441686246 353238237 938481306 930607873 949316668 540829364 776815322 652012484 775148747 247815850 560107387 974279678 986782579 421581650 713964704 63828823 390714753 799123153 849350282 681084410 931322606 668028621 922109171 654493702 888411159 418211307 443432114 938457183 955542688 79367557 214197514 736248584 774597332 67232976 843095767 205098153 206495910 935080965 938152276 319836838 509037214 441934798 466295244 716253688 863458858 711588056 842646125 625015709 943007887 484561581 547495150 652117568 805054466 348163681 607746535 951838672 989466899 950410892 967323113 537201107 787905694 451369257 722254298 932535701 964903509 705509173 734495169 749472278 969424734 602629861 634165060 673120221 974914308 936560066 968805252 386785331 614453315 322409888 548183325 387521742 668791489 803604865 929929103 729756910 731793231 962937779 967900661 890883888 958432536 893806591 956476953 942776697 955662977 456442214 481391406 577028449 917260339 981290674 981353983 838131052 957023238 49014671 464156257 898173906 940345193 902557908 914058642 620769043 751725745 429176796 702033722 803642924 865115196 550130510 754247139 492954024 577317357 271440227 523532212 45726629 279002775 85554464 693967835 160123894 492337507 211027680 908504602 110812598 283751734 150221147 903008833 422808135 909487756 616735041 856641905 786528766 898570696 283479100 744092787 236653719 419731745 880383676 959267492 250410132 770479901 137469668 666653242 985341817 988693046 460496307 949763587 302603971 853692422 160611007 306326727 561331055 885819015 47803392 246083561 714771601 920530779 174846686 855803403 149860092 704142352 381947105 632910192 342398665 989483945 779125628 980163240 203518079 943591379 496604616 673438892 671283561 971935965 471056285 987782943 311020333 653829588 981278 767017014 748493154 805091296 839753816 887145536 227163810 430519638 295193310 856082358 538837199 591730580 752065082 790890655 237086100 619952234 544988508 594936055 933662900 940036991 396847022 759372715 739363773 844908355 494437033 730877956 246189650 956899924 738320403 902730762 600419398 672986662 13340449 574549903 747028773 904008270 185226438 318807209 334703207 943228808 384891018 951760143 306393665 589283300 958790510 961094764 167838203 808514539 575518910 960765028 826628958 954310360 104316368 181330478 59598468 116968087 619595425 990993045 288532808 439969334 928109873 944323792 427099445 503348798 921201734 943822701 713348952 848608505 927916330 941251032 14381210 837556338 66829707 697117722 625163560 644001153 575704190 813843628 657796706 878046497 637823915 650279381 629476831 688466467 377462193 547685066 649262572 914537341 219344449 574870053 523929470 657900291 12723425 673104890 570602919 839887912 175238587 749322221 733277791 970651864 229846975 401286803 163941525 799067743 905317165 990292864 257602458 861964654 433573219 549544190 857876433 976744087 456478904 595089138 506788528 666004426 717336607 765566158 639021242 678701458 249316338 612984321 278727998 340506503 355739382 675187162 673940071 931371106 52158098 257965148 302468522 816203349 554123191 562327801 469843716 690919855 718637379 957462167 657460841 667814899 39684297 784389503 31725861 721668081 876251847 942003554 536631568 838629408 87859853 256274110 932950194 965178769 595086020 990231675 902266043 960706018 495220841 626537070 192560677 690702127 793022985 960078462 959895407 974551524 288085556 479617004 202983005 712282455 97718863 807727055 13144406 834876297 78967576 915373506 926939751 931208527 598201169 723262127 407107380 951652226 535042831 851083122 374188049 537191504 519983175 780359181 692678391 723454555 615399949 723419194 347353897 505605093 135937217 331129021 952169904 993264534 65115033 232665095 722818311 868933278 876050683 923380649 293980201 906682462 233474362 555261666 608602481 714607183 751330508 770032503 653200572 841464849 340226598 773796522 219211386 429930511 324462798 341244666 444860866 744930797 227442550 257618502 667320870 758015361 900967776 936158731 170386471 337816748 448010280 470651248 819895553 977907745 767561353 953161058 336312429 940516176 942528909 996441140 159666618 712923087 478081534 526429855 323211937 703445802 172249371 592431609 638574173 775820107 698073559 930692977 785634288 983004678 933236424 950220277 64122943 674485351 259320878 775594025 479004596 726207877 470834331 889380218 992759196 995796495 863922000 951634038 360364614 791031261 624988035 823038288 886836310 981759415 522782592 816387799 405820246 551218332 244637083 902311135 525409904 566648975 589892066 738191684 84713605 949767991 159805408 572459132 330309066 916103644 184168890 543068895 138039051 541717062 433321473 630815503 988168441 991959456 275108553 642351393 311549802 759960645 564552630 871192831 92897929 361437270 590380811 679862869 931347032 988255098 37463022 280334151 753126977 906571635 702927478 981637356 745856460 865734069 373928778 718104064 942439930 950212686 479141041 633459877 968446323 990458011 215884457 225377552 51919573 675633008 605993118 986152713 462664267 749873760 795666654 815871454 580850225 787812712 281550534 812237886 456037934 894535117 474801314 775702757 402660624 901958918 46508565 364988135 739651331 894849106 772169343 917045700 841046446 930412441 531305671 686342712 850659648 923330084 625140889 701460091 762324002 978559959 353081357 820220293 836097087 849805072 115678948 970728157 999462994 999888269 665886708 744895545 630561947 659976277 638631550 986723206 889599150 974341738 647422739 880871927 387300435 810465716 501825990 899395883 135538323 818938960 512307593 752921459 885359808 977621905 273195983 921497945 367106887 387628090 635572391 714045765 177214972 407203940 797875365 881697454 138267612 680123139 809766674 818273989 364710577 634277022 664113434 861488084 226147332 825552823 511009858 843247726 919336491 972962125 825397841 975156720 596990268 672724170 719274501 956825223 702395456 928688845 575965739 770300261 788544541 912966753 46960926 659424310 828357309 980970594 721429824 989678812 176494797 448078289 57474915 830027140 611366440 893612269 274927942 897188498 958996177 976168915 200758749 929570906 144270305 818124505 913796323 959666297 44464180 524098067 596903257 820667427 175534335 716352377 575378674 665534964 444946660 929056001 611195606 675478300 955269839 976455535 575493152 706543556 731629888 815182251 70235760 630791404 397647401 436984339 616544113 703563788 586828120 882146212 671604488 848896025 238610379 859429765 186810915 887145231 816582836 938508713 582084691 882477690 336894866 516145971 753224095 975638973 369329813 435836105 302614699 808473643 815487493 954507006 792226453 949693204 731369116 970213220 537284117 787112197 874993348 971723017 283454075 621071958 400835996 867783011 986589564 996534174 962547357 996954859 659220102 849424915 435303871 919443874 328245090 369378029 563567189 730408537 262455897 510163334 886252694 913367132 694768378 844336121 840610315 932399210 793651804 873842126 250645931 431461578 192535558 968293607 617526236 706484950 247498367 911441885 336736914 901493174 978888457 992351640 264007921 796782546 657387783 696425919 828949035 935360387 943178751 982098502 903189883 955723431 688217495 931485558 856696417 997043881 507056514 732410421 639655138 754936974 990088732 992703296 829937744 946067986 451008250 619316971 433957865 744140951 171849017 514743485 464814207 911591834 346769524 482321634 266100125 592975874 917611836 997681567 34728168 107657573 857256170 918376008 497616455 871177435 928829596 959612376 674558708 686361093 269604449 604725412 414623732 421430826 709400146 932654605 902155844 945379040 458812801 466950358 333864594 524432268 291117929 879526925 597047445 999430278 626715977 678627614 906459447 915137688 815795673 880966324 391219908 693920909 835945947 836876524 759588976 936671709 810408612 884786451 496916443 637422242 481178672 790974966 464461402 911751243 901571236 991015448 133743092 923744064 518461288 634305964 368079957 896195947 323615061 906524800 29983315 355938964 272844489 449276929 902103117 975241379 274347128 639129363 751519225 961827205 309105590 689275955 365825818 844441194 410207645 962834864 764932277 936969936 382195772 510127691 566139818 830115440 797938927 889194355 903545216 915535373 260080157 602467999 250292074 706916006 686827667 863986457 470007476 704771759 243140741 373820466 192293268 199594521 273173069 773702041 176320556 463662848 679574561 938889744 732167428 900842660 375879026 535821864 776204162 897201419 807228057 844676723 582338817 635891837 576179475 929681169 990041537 995411027 218896114 570814419 332297772 754564694 670209697 999460519 320715840 990714548 648111127 712357681 759241426 762739057 196809003 874579361 146393013 311828947 471022550 832803475 364127756 967667304 964548933 972234701 673192472 863357038 235653174 449883224 184437136 945710022 598259948 739378800 910799578 927042937 650393308 939699509 795277783 861814346 767682525 934677473 316472313 347724235 466435131 905720748 687034720 713120576 937970083 974952322 8851709 780044013 761069903 806977337 828801401 887433601 707077261 972863715 376031531 733871779 930073542 965959648 231510883 576893523 122019353 667600714 956784257 996648860 476186500 762085741 170165781 726216706 372202040 860369315 557319903 574818074 694453167 947375496 607546815 648137226 722144999 779205042 420073506 957703087 683775881 841584206 839212412 949178535 493489545 941254179 617414591 873345295 339742555 683160982 499058097 602650118 407168998 794975699 941296422 948813065 532602026 958995524 917554763 929362940 325301302 933875566 279715415 895649993 177574579 192837711 716636825 989913879 91970663 631074006 236899832 897218602 30601979 559819704 553487474 618309170 297624097 805574305 401874854 822468439 833917085 998966982 561440934 942084955 136059493 896007469 474893910 945803084 198010389 794399948 7188647 353307649 750149711 825362298 83506307 288216592 994305491 997011041 415886749 603199221 373816643 577970679 708844919 776194029 618349508 779056275 203179468 873085634 432791714 949277674 247046884 853271794 425289593 645415683 895824301 936782584 332670678 480992832 295253196 834702707 936016821 980745961 859855001 956366702 750102946 955593922 909210999 973357478 229333402 650367445 366133602 653972487 134655679 960115956 41929260 752139383 870328937 875022963 64242077 557012485 129006399 502342906 33514437 942122950 967308875 981435785 758103712 882056825 343392404 624063173 425979872 930848773 164108248 387376755 705840440 910696822 592166439 991067509 790827753 812947139 560549533 684568247 595311183 640022703 517637159 566766430 558559342 794022077 1889497 445712526 520920378 898965549 853544841 971830627 327689668 913332774 899924471 920461287 47456532 688375949 699647450 933022242 789427315 919951278 396008355 448332001 265399679 358315278 147369202 714351381 247142393 635444022 732731254 879622507 253249403 326853674 195204667 280333200 65617910 618615655 637199998 965901844 50800670 982891368 877120747 969306718 492844123 598147309 982854180 999835268 858756686 875561961 798715271 968990615 101273787 101840348 627594470 944197461 369696352 603822519 326621327 615144022 71889494 835452545 649405079 862340082 158348076 945620956 627669511 977611592 968210426 983108495 383811272 491923068 642670807 853763061 401993830 857778338 777507094 892595181 913198394 964803195 562681005 876572696 815175368 905187048 587339873 837423755 691739434 797894244 656268214 866597759 50478147 783528715 819184131 844987433 517864153 762709615 984164946 996033538 660385574 990962963 152887546 970163229 406676804 793555829 85227764 824054917 761443384 839892374 296154996 527591195 934612335 952911561 19140113 458628613 301784841 333861967 610228288 670077497 726907462 788846700 162332181 172958370 559354758 996092197 20888626 619536982 353941149 882181010 560211931 692417726 626378920 743582843 865381840 913098179 600225518 695622883 96975498 504793064 17211068 744911885 97536700 119596451 754093941 907683440 438498999 965441398 958302450 987569952 3363210 462176797 389084520 702362305 260260775 855533413 162740723 873544601 146063807 242389196 144793073 441294595 228786803 384682908 217855685 360406658 492256220 947403794 607344114 930670623 369989805 828994909 891073833 918640563 310080559 787201010 298182234 400329019 497003740 782142456 574988928 824366678 357074081 875300977 247649178 490735654 637179832 906790863 149644787 737425553 728897309 901157747 234173103 398682931 792149489 997112380 651719415 930948842 396496804 950126705 422832594 724688428 292271378 726460696 439271088 635411391 929860539 973637514 656566978 722494683 122580545 524918544 676187930 871092856 92901984 702643348 414368523 479000468 24929228 574152634 27823250 680043781 382564425 394138804 866047592 938392086 418617998 647690167 884201031 993361470 165475753 509862370 451798870 931922078 523895419 971211541 671926171 915455873 142969432 938038044 756061781 783642910 525992791 729486066 543712020 862102295 440269887 845876470 33168198 406674039 565741936 981440432 781744951 818435340 809283290 863338655 489227533 757957664 668764896 860699950 388224194 843782866 471328372 838079122 569909967 624413782 514008722 677026196 353418878 699955294 46481557 632534220 631448636 960711663 540634798 693637815 41342034 128494560 713568766 918728859 958870137 971364952 522961417 990941472 738827401 769417343 747100156 975454498 965957021 980741113 2130442 212714307 876259901 989494488 615638026 759368048 390110750 830740319 725158596 857838882 222811939 903235782 60039660 260559977 519254249 856022372 65243555 782785855 527626914 620326163 371874209 403816129 870238248 923999219 918327144 989286532 555869288 788398486 77701801 254493407 812818008 844509821 567887062 773624860 168772662 756854761 713186850 931640731 545572150 958705844 950558975 979216043 917598042 952321988 343859944 613295649 318363417 512786330 556813428 750955227 902559391 958568389 450785912 737405271 940863115 976657359 831778657 964162837 281654792 647090941 870197544 965330399 828833000 952233569 844956041 860414146 57262248 952704490 953126677 964848908 865165070 868165035 531589235 731078677 781658138 968662028 954505617 968980958 942059561 979583704 548659213 824726076 58744469 739199456 561723242 582970629 783328366 866950801 330255444 661782960 669080776 699204396 115074905 570441540 686301208 719697579 773698650 995954123 191644705 788638576 258729568 665216746 659208777 809910389 460333489 825510910 997124547 997432296 198948640 599320450 774617022 947067839 360113670 878758049 441285699 983614395 906573047 975204312 786236723 850746074 214597711 361596649 988680511 994059413 305065437 455884316 116126450 779817084 974129960 990264675 668250755 919897692 879314300 950804334 802784104 845650187 457620696 800051158 107856237 821459175 542109882 960620570 689681229 720871595 118488419 842209527 48010000 958130306 709911976 843745792 317502547 629643802 263531747 459509584 381481972 728726376 624470780 746545279 932304952 951160584 127400039 558929466 310815319 705208214 239579135 534288255 226439455 632961687 539297306 832168386 333948689 645693961 159117126 694979718 226142459 432797402 83506694 605899705 182496406 922345916 27212024 909232062 421973448 849790421 960962939 967505995 488439945 561547084 393363691 905120814 405176459 847154112 762536582 838078784 976069618 983530344 191931400 845764291 455010478 559767873 684177602 691765775 343020483 389795701 483753491 697622515 389286528 816545330 215500757 500340094 375775396 560526496 2747216 748812864 597537231 663191143 142745517 793468971 42311640 748118570 747545677 935013651 359364087 884706020 866121353 890823871 16929314 828995064 117820397 845891750 366522199 887799415 861575334 877742219 34084176 871090635 255518515 332681137 65668317 799856010 33086175 271502656 926922861 949045334 305678776 638199707 582838309 894876972 783164898 824289278 344881853 662628052 793488559 854332929 801714644 967814564 819673599 894860811 277186290 811281459 871042906 980741268 541182884 722405814 847209745 919060331 277103684 408126614 289152891 458891409 432707603 932103203 821161776 990042587 556593766 965946366 932232381 990056002 220352046 230996304 702425023 993395186 969746738 996353701 718756 480312397 14776165 991411022 312888713 852989218 108707876 634662846 491252569 792055702 110799868 935306570 809429793 994289038 763091864 845615655 45492270 968421370 168831350 363600915 297096291 336777856 223245304 531790557 690271735 997317664 242554183 877062546 276529087 654029822 838078954 998570688 598540715 844681552 629062176 873188751 349091599 712035206 416352779 472457076 939703274 991836126 850214058 943437962 210697973 723977384 940997410 942440243 115127827 204225754 384319383 929662082 201042149 973956911 848032593 881765640 527584775 715883766 640043597 717952791 986317949 987928174 364286957 366540742 895297511 907280865 836770819 837931296 363840131 814266845 976364661 982085412 584374241 760237140 788027752 904723410 993635385 999340976 902259297 979951706 313708557 817605015 949898608 977729336 531811063 592682366 291512253 604795124 247321650 586021583 12737325 102462694 604849855 855769902 424103516 487817462 390926127 962532454 93184722 769718699 485420533 709026245 221819893 970964226 389059827 480230547 510892995 535682157 503449095 517931798 179504621 958899157 312466662 965115639 368532181 624766947 816830228 845760907 35800895 694109424 453343301 557057177 889104933 905701240 749731708 847673794 771599541 904501737 853972312 920295913 711924247 825323112 718699856 979931640 296084097 395029164 74270892 142381420 189646081 450098676 728203918 857157497 241427321 394513835 247495566 905774213 673376237 974489546 553635871 563421173 326405491 719573778 924930310 931723880 885306291 895834866 333272756 958889212 153083146 674305002 121549286 577702098 419046878 631757107 97314390 500692243 905481442 951567652 262932213 940941355 414601728 495229547 206326393 555657551 556102406 737510941 208639818 330959882 341965932 690281823 360885680 519741186 841140690 954729100 473100567 968779497 377753383 607529331 427095424 556153611 314365333 552842158 971748862 987574816 146321178 970167305 433234986 721380432 788939049 830082484 933999140 976992392 477266488 888309866 154473561 252965694 663298159 681266869 34201981 403716711 107482827 612880868 57446522 287451302 769761385 906667513 550259253 687986655 652616270 844346834 505604029 963447703 650831587 855080950 626076130 707279942 678935160 832845618 193198238 717475603 980166836 996195236 529359143 538458158 361602492 690489672 96372761 180108596 939397278 988757091 130613572 243149161 754305060 889951623 851426901 956889583 17706314 999233400 149657286 967239197 893445997 990615942 845823346 974822290 993235063 997447846 961948036 976428403 114270090 963708198 625534749 920637821 146200371 216284139 648171357 716277200 513015308 653861381 69579690 406761610 335700954 543892527 389617762 759341332 981171883 999500860 702504814 880178678 259559612 912339771 657044108 807163908 792840098 856314229 301901322 920755718 779620075 788159229 226054531 746767046 345214589 722820946 978111680 979539402 159210365 569146390 379490955 810492867 804286349 830875343 914882154 939196524 701250750 724423953 483752163 573296273 396094676 659311522 189613650 440075532 609555285 650000239 328582699 849713270 471572978 766358211 314203891 354986409 770941964 914959047 85860736 954635043 477223085 890640826 859389384 863317837 611130280 772983557 801654468 864470602 249303898 588804694 972318150 985917549 564190146 930644913 369894698 770365751 196503339 528181024 548144178 895771649 173164498 229547408 945357282 949435433 571276514 863503208 524737468 529137543 171688008 644182758 945089515 962489012 293900177 621834333 45808240 87138377 366393583 486993953 567302373 648788126 877049249 964290168 737395122 954975440 413089718 570652375 807178585 910913030 458690793 818074313 796631768 894945987 920611368 953133099 821078549 947565619 953229588 972982122 279581663 812593814 287755296 875963963 361471300 594311104 135221289 460274816 690483347 985938893 89143248 526488756 282515025 473547285 444381468 774616149 746137959 964257528 297271673 779358934 807627183 923503762 712725251 865792770 317767390 439827350 276684467 287345961 684469949 716025763 924171465 995863162 427327087 492109045 777161907 892218188 449557816 480801963 167173866 297498285 525705400 909241135 139436023 852487828 893700425 943645136 558269853 908051623 603512031 635710477 827858069 999811875 776532645 919635799 259552348 497723195 39725451 265581699 438106816 763492337 677408633 795987537 924405917 985251613 621238536 714762935 614635337 731947086 990190198 998227005 409603277 997642480 761154641 824663853 791121507 877291285 290049596 921844000 929653451 956001252 241351304 863672332 840673073 986411904 302013847 745856385 805015193 882963730 44170948 559056968 19134028 533642919 641567272 984411578 196587837 364761206 698363691 773309600 720830381 949836465 168684803 358060917 171784472 423006847 574018344 824668659 157438294 586916330 382286179 429014082 755550483 852685467 978081972 999638473 723936674 792118669 583072539 799731199 431508223 767197119 178612052 516649935 906076930 927802931 47958358 392273419 633661114 815885529 980731575 989944922 73465283 614178988 178696378 402076436 554871029 809738696 801633966 869909712 919022040 988217922 273378347 391866101 48930949 315564434 695107415 909009460 482235304 671282478 305275318 480593329 57252096 619861955 496166830 617822760 468243186 857806116 639643934 870376453 876561462 921354483 830506015 946142395 282223579 501714218 267541792 391277520 42317211 680925933 589252750 644985568 834540520 841741148 958136130 991542193 581391473 789078364 928676566 941963670 154130763 423209863 260475863 497377400 34197500 53629062 465138048 868254460 789622461 864337938 672674383 747478013 246487806 282809717 202985651 679577998 226957010 831038391 345136866 586950713 192606686 672569729 492049072 574685367 916142555 980320872 53511838 815868324 887138960 975826127 644406347 949417803 390623105 857785456 398545458 722027467 136970437 985887701 701246929 825887345 709784246 962901400 471547563 572776298 58492749 190332331 930622726 988381618 593157455 763502266 357001062 770149954 858327798 905503009 810783701 871359613 92588407 314334383 189403169 484015090 288924016 784067305 861878736 931445782 817374065 832459641 734185256 948097097 653519118 974688285 972978116 990743380 422210704 875632178 929695330 944102040 400373625 560647347 486420435 569839925 506329731 582523510 124268205 710526846 735758748 877420670 660634057 697852397 230209549 410940545 944245004 984985614 372773104 683813230 526199972 951632040 883051528 931160399 860125401 951645805 852437216 923532461 128817336 197859745 986671798 991938989 568365958 791276671 910257946 937259035 232212183 504439270 244019203 417560406 394776798 717219196 626671455 816307002 176272667 606728499 227535029 946852017 994694421 997162469 495130612 543070592 349709172 618343619 632927172 919760813 151289209 372459884 382780236 773135062 402485211 543339045 112092532 623884139 644198796 697538634 337517909 891034253 24410282 587662757 583005966 907824414 63976888 623247464 804787210 820578012 594571382 876310317 743606535 917861663 422137056 529728080 232290049 984707334 925327806 993425000 72077521 707469518 587967413 688357083 629088299 685400136 385156410 628536121 30201753 616399600 627515668 724832368 661745070 699141686 858068472 903143883 244978197 873561643 467724562 887096861 165314771 477006585 886302090 950714811 887491161 932023951 344662994 619987584 641304562 658187292 112084011 993790711 705669138 894902397 173339586 603002467 431895813 511297477 37068229 148881065 559072470 694989275 215759256 986413527 763143804 891020229 43532684 214127177 826658531 893970649 817520609 971854033 973152811 973320232 412436158 576959524 562264987 957378276 848447561 933131938 532325458 834548407 346174427 586262656 478932480 780303520 494641394 664269459 681246752 740077271 130954673 799731339 960572211 971774162 432336448 968439085 966106207 986252650 778330986 840863673 841547584 907945684 426512648 573259878 259063998 778896912 928919308 987275192 696248192 882152156 514703535 691489319 629419635 643536979 310646736 535605875 551990458 967201208 115976373 824616499 420878808 511517312 470065637 542541815 497625815 529454281 926367390 986445618 153070688 184285930 16231257 709974718 184520228 360441808 882222939 991059581 997498903 997548001 991052403 997874087 914982865 983771650 373114543 785573452 375229040 441402090 805146794 809324458 545697355 738490100 609733808 885927188 828700643 891998997 300733306 902336971 142074866 167633991 276420038 384422193 399141718 523292784 12207689 918218315 295502802 463197925 39101408 480899496 656942299 757836760 492019960 685768322 238051508 476549141 918753031 931248995 837224873 852566309 207737922 555083378 9154477 510804567 451358949 582101161 129405608 914007000 437840136 947760806 615049154 768938392 292240494 635839460 35778949 511154442 244400134 387239572 464568382 594149007 875738487 939438735 898675057 989447876 281065963 974844917 263441087 953632881 164082813 235412239 262133511 759609745 780816332 948480336 200760529 946784409 693068830 957317995 979235264 980396972 290728579 947243956 651618819 800832867 109269253 968009693 563869330 814127894 592964717 840232029 201651011 258540881 169769298 727591874 579853988 634291793 813614211 855872183 172209411 753388223 215379999 385522088 7798738 167072183 849676326 913472845 43195630 571292414 69595442 667206911 916726212 957963109 313652531 881772317 155204557 731062381 531803207 796601819 560875430 706856953 4424942 885887333 857881062 944914579 871014788 876949104 160115445 434108053 47363267 657971426 416295348 768520270 988705288 996904263 668955547 989439299 250509270 297788203 686524620 882532167 930708379 996171183 842275581 957950753 332117204 664110126 191299973 346037994 531174476 652783945 8334809 426049972 416252509 778582806 241929917 658120823 389387795 941008582 850323204 858565387 540558739 625349335 948401574 954797680 735713215 811139161 436012369 817501845 445721500 744193725 46189662 456842217 50441069 522599053 86012272 872897364 316510318 406963731 861919063 884412332 144237157 857964803 405198716 961724556 758634004 916983991 142753651 924996443 725541778 729401911 309588659 368377347 246568740 749730515 157755319 407969698 758981963 875058832 173776544 180425614 551788318 695380929 968569497 989137336 184326390 903301772 801393103 939318619 307194858 327475461 575769919 670028571 906186106 995273094 7934165 906622957 983872022 986637709 763905698 911724923 684157981 720899388 390291971 673033963 182119768 618500042 533425582 699791617 971378423 987135581 207262896 252843878 92339528 833687181 535537557 850691185 234713659 612862409 627219422 646003465 420211644 807837874 61251299 195275778 81615812 277074981 851570382 964143691 803372549 809595867 336255067 778950007 85336928 743147050 321904825 905209620 550276046 675696235 419637272 727879329 518798071 716195868 408806898 607844394 676927898 972947556 353050540 973090599 459112092 630300933 816391907 927330359 586942615 842185659 771297138 826163611 393568287 513414599 882208373 899260756 823145244 829850084 883520017 940761582 100501498 902756730 505238932 912160721 331107369 746233137 876501586 953891169 263639038 371947780 196776709 308378154 941483220 982204353 597448722 642638934 742173185 961246969 644387247 664219271 554379127 658762035 86340519 258107220 840999070 885796674 126807183 863459435 562108519 632327210 8767582 458414913 937218090 999147559 773857712 985400975 913433179 945942964 759535133 892318840 728281987 860942258 436208560 744441077 971023437 983119845 137594312 208461000 57703181 152439310 169696370 231101805 256092354 721371026 927711205 958781318 846615960 932212108 440670778 651503052 241350535 392312929 325990223 933185523 441818552 898492155 119732182 506136810 314017387 561761909 927805240 987601681 127160858 936718651 760815084 950567549 237836620 672410962 561455053 619177593 352036040 736072311 899457703 984645447 886716856 937081976 822943292 875189068 279459519 919728505 541844132 675477514 463963019 699594598 542722588 545894894 189411052 334901943 232462522 837995125 480006308 540010168 993600862 998879846 512630609 682055663 505422263 791986780 896703452 925726621 940498662 964244036 830243527 964199783 686804463 942393773 869075262 945287352 586659236 909247434 318551333 817265560 186538712 696011289 779631425 912971539 472254189 950224423 784725864 816161605 898048070 904108278 19688757 122293917 911897559 947055553 455383959 655586767 254175534 677325241 421122194 906635777 635983890 888917475 881304759 884984271 599846783 700722928 272087978 357591608 768008139 991952048 131826414 849092054 962057974 974440206 423876603 825912737 331441410 825671372 161139068 744836386 742928217 863324288 187044678 439602731 933504879 990899454 521672100 911513988 62116480 266852606 665628456 785144247 929745311 977917103 339618163 833337335 147894915 402370399 679644512 942334127 157497581 743556122 491367000 998554744 583886073 617064550 221850204 531599068 428736485 649923136 615668013 959661091 756573138 839345812 970578390 972676617 515994481 745158996 547112884 555223981 489013068 608336975 795075892 920931344 464032192 576595557 790352489 889045712 294264393 758341932 77503129 105902839 998559779 999604442 354440140 777709385 26826220 706799738 394839914 733874628 880222294 998635134 360525918 416729273 786155250 917213314 997573171 999833631 370896490 625944872 368098803 794038553 763098863 796096536 445994027 962009418 165183625 615900415 313246296 578404489 880024009 929403949 459564556 796053179 69131915 336356733 382477105 504763221 158666620 558072274 153707066 441176773 396517065 793269602 900937601 977540225 468223125 648001766 953498309 985033931 111089237 116692853 815572042 844834340 925873690 980299014 351076875 551296318 328998653 936511818 640157165 988989833 791216282 828977797 961824501 998352439 670896486 909201779 619596720 876893909 563535791 840934592 285933731 750581084 574972368 878178437 638129094 979653382 688643322 716746612 382689815 572765062 183000445 288347983 868338271 988494735 876175518 972447578 670807336 881676027 781159325 961092371 857630505 932831084 786549114 799313532 617838156 937540208 117153327 409888002 161953852 937549873 915654086 917979817 639613304 994412027 360344718 829666530 238809475 723353530 910503026 941981226 545900358 693616758 378724183 486868618 324826947 988655635 562666712 607017066 344387051 985221058 458029718 732995143 764684772 828452263 661750132 689937172 373475413 469234447 850251503 948692993 915090509 994033229 711041801 951837136 315548619 473243411 816851051 857403009 582667371 805376445 687821 110875720 155057558 652692589 568918461 625658020 984425250 990739058 280430870 820026640 522461858 639522105 382689431 789223982 925593589 926910765 75025869 392822867 16934625 179811399 924388156 933866815 576878344 620732070 705948480 776905513 558257469 906904654 202248509 391168636 948305875 989379756 970797590 997396118 414283810 926822571 425286210 592498768 47782 306186388 704692043 884921146 129209183 456600773 175623534 412689659 546010108 700445209 47580916 557944814 305633745 346321180 767903410 946465583 184694941 342293106 580180289 633912707 774262045 784606113 449952878 989722395 251258078 852488457 35437837 489419817 862070057 932624862 352300783 845259592 828691008 876691116 285722516 727202422 757538617 775384502 134670782 549091205 237183731 730040446 172239622 551929577 984084973 990907909 969036287 980866274 133863973 946177353 769570188 873874537 121315857 271777088 258880746 862945609 920881327 955028014 756281824 792271262 143154254 629903344 928553584 965524777 432381458 718124415 641982126 823488930 851520511 970631644 755285587 819200507 76757947 500071764 278342651 912627795 159762968 554683141 620205025 983074472 671044327 822416923 114768470 584326152 970472646 991892384 194632076 798896929 150271982 582761710 811731389 918782788 774887378 906853493 568750342 592658356 760002764 976422963 447648078 831544929 167950154 678482879 622362963 758396384 934538033 988358610 525471577 856042212 591015831 910578693 380248496 756482420 660193270 789442531 503654153 683644279 311380891 318089194 776890920 998762680 741414021 819170772 548814802 581457876 482471238 700698928 579994542 852488814 3556435 321125510 210846505 275320675 148288788 376086593 68942838 388172925 433188337 603279008 991420445 993500632 178127878 182099848 110395141 945617416 726566149 781070351 172738085 905027752 349855035 549238421 224840172 481794442 960260443 997087283 997477664 999342687 455741907 894453028 339866073 914416181 588732396 888687387 404636184 936869436 11852132 133382374 110573965 872086070 248848338 459247715 379559870 849730674 691217762 805004623 942149408 944392667 162227007 663605881 599923706 855365167 917317925 964006564 773279874 799728505 605908419 613310924 862978454 907976804 47932364 180056856 830033552 914869838 280652189 552918202 201489361 738003418 303535567 796878451 862415133 959553686 828871403 990139430 974820387 999573233 496923542 588466362 224896759 593293159 24163872 27462862 712782235 992989252 15851166 176873157 124852195 646700224 43636012 796210869 956498802 969256991 199447351 924616611 661065460 789200962 329243304 802345725 211167716 694042514 941657069 965849255 334180683 931232015 685544480 954977234 339945605 699804749 55478292 220386825 518318313 980165200 773553537 977414423 123636103 177161341 783447180 879215679 392627531 482186265 872155017 950226686 351174455 475718836 715038657 912286721 791777205 863302689 572794241 994530936 602711131 756684973 398075511 922672829 56700027 194704361 45164377 560429193 217336659 705800424 997780525 998269277 821771695 838428937 668643327 673059670 870661074 959271020 330325392 950898329 294692256 317007212 815913200 970089977 753224876 996829271 727616492 942129888 431111879 740842182 574573141 768687293 109292749 636087375 345283522 803182911 805022005 952009009 198645857 625925459 416254075 925530768 62890397 168880460 793777365 832567562 780073793 946681262 720436262 929699900 343437493 476535332 534172138 583805918 896277128 981609441 791934236 825432247 334943678 471541034 626975960 878155481 814614032 833619659 888715274 969388097 301417924 744019522 405200688 552101554 205222595 511384991 28951383 818180932 212128494 960178451 420067716 955181675 514533310 797193227 454137115 665967037 670331275 934691261 244053809 537919277 84693857 674898367 263874724 644793081 111842307 231362979 482790397 515543858 418753830 926359612 916503094 991235891 345472901 822919978 179582726 353001300 878719705 913026998 553764493 579210095 433062297 741741834 496828044 941058310 412170768 752869114 723555541 803206037 924758379 946856101 128575267 704564803 744627368 950608770 899098855 998920446 881761619 930918655 915385505 944587494 711612236 983858850 895502933 993213729 411459982 491750740 805642059 840212425 760256585 797008816 99945484 323119165 889422087 913993282 769697642 853289155 301193630 522873762 407433365 899906658 313638302 924983343 949457671 968342646 852726433 886601513 589727961 743124307 156618094 612403268 119729419 949164018 296075824 923738567 346198209 928135299 987885331 998790498 14871183 818251401 661201309 760520006 320658202 644941634 945797428 976042251 836909777 920583054 906480629 960585466 251456676 754825311 677446316 960865669 748831298 883424923 162712642 357089390 779646461 809704927 1850283 999603839 518545054 707199405 610661410 687515977 643664214 944509504 789432940 839029370 721531653 871205531 333777157 680799596 241090587 685489983 476820442 896537894 608831682 663602123 430524175 746779049 719099810 905685214 113216901 874093045 380394837 952938302 669554639 855078616 641326043 995210890 859200870 916050381 862523254 981274681 695158144 733218727 414404387 674077844 333969106 639366396 636642759 858642507 612246535 989621306 949916282 986552961 888612802 930509892 673907381 913775544 783066148 991317062 867841852 894968667 883027207 976706487 928059423 928972236 387515787 447610642 575361196 774803719 813076368 920588185 36444785 783606557 942775926 949325778 923191099 976563322 229624202 364382044 505803477 744484184 657026342 749413674 584762772 638969386 516692365 752299710 161690063 942291855 531148407 951120227 744779845 806945427 393432652 917519325 526109217 940225001 894943471 993833783 812885467 846930379 148478774 613480628 7202292 792968698 628926476 965017483 886144939 895202008 477547199 649678781 255586199 336012281 13373342 606529311 834817718 882435891 982660016 988471448 75474349 413626346 193200639 924194628 418705034 887231273 710669493 803810641 248528281 692173773 634747312 867530176 45121705 363917866 575533807 787697412 402311519 409287265 714197132 817581190 20317658 603904697 62783161 68404493 793735073 868336679 581364596 721283386 887545580 915983172 177264734 814903790 990738569 999846610 639338759 670302826 558000518 891049526 57338717 266261931 440730695 521763116 839632816 916089425 586274749 629615261 61768986 264191145 957685852 958815389 740042941 993987371 331013640 951406969 338963111 755216721 605273244 872850098 756874498 767396770 289766971 674117682 698200975 899333329 169387648 260550900 813614274 885065035 170709101 478489872 544721831 728444294 308927825 340494871 799491942 952848580 681442366 976207617 703998673 855553908 890876746 898037172 697213625 897651348 7628140 174583663 970979095 995085785 225342966 728218262 71465710 493018622 596968308 732409535 868157765 975679927 114311916 718946684 126779790 553300891 439468421 987403599 191376292 940573374 251222117 962513340 587331774 589150969 278848106 891436003 561215069 668709420 925557031 991665416 603689042 723537258 768283504 891101955 220033769 704080544 248783321 594846810 50783602 859781121 405243849 616488575 651847353 794378708 100903535 877456373 616536551 993594529 868420590 978985932 182143035 408838861 945995367 955911081 956647079 987140684 75923486 84595346 212296047 569527058 655306609 930321216 97131756 300999003 693989624 949164739 93094653 592561497 106081862 218577942 410253253 801855792 206247863 783437119 681590353 851922800 496728577 773504738 808903088 834301796 935308408 945863611 515299828 549714963 397186163 714965256 421553521 696714194 770980355 938051352 292599636 735427728 996558276 998425971 736800764 891488427 890144066 984796971 950293472 969961865 438339282 645143039 172742954 708114280 853146291 927638672 964894155 987994922 940946154 953665919 21537570 138147330 587330803 692037230 362319948 875911633 911444511 942736457 738831146 818079782 500906961 835525679 779084928 910735055 18400252 607355354 961203293 974649638 831019630 958563246 388468939 970202511 332933130 776376929 107786055 693286507 965678122 983641251 853027587 856167871 160711049 728605031 311815495 352664527 594947156 948454187 593623270 996272707 277500549 851349409 730088860 941614063 563929543 667412448 777091984 983988561 486077181 781909744 367774584 657914513 640447579 757293638 291300013 389741999 49356419 125257061 117975531 490743410 198724939 493804640 787033704 957942297 604711755 814154949 475647166 812338476 453709775 460325297 858397428 953966369 182776101 935251161 522620029 830194739 944424894 990878119 466164553 935998482 691158873 890783825 589741540 604401790 50672010 649322410 312595830 522185166 882788797 994799426 919634265 939227631 914388115 976672055 474418972 676693526 533795406 757490330 412235367 968322827 957473085 957924114 152337333 809215656 843409197 849978867 723708239 876796251 828631354 937177294 705324140 771188515 896478682 897650015 765327277 962153433 509575538 749780096 299503814 839166841 929511902 990430775 910143302 937040425 331456672 345981141 178467770 608366340 959362921 962135406 48708151 256560180 686527096 764636673 62234553 685667036 980841554 988112761 273297794 286439911 290366696 847137874 429121686 937257017 89922992 632731217 730736953 858610838 207042564 831815397 490059144 912893072 49179258 402345712 545484912 579813846 749867418 819410527 201648648 431393951 825967914 975140373 378366043 443127615 681218009 909967456 966498009 991486505 747622341 981398248 542802033 948890723 65114032 643609346 171453746 776788058 252649654 337047424 731230 611940548 892928762 977486733 944122839 976431295 241249925 259078613 868341274 937128838 761848166 845161295 402617051 691467217 967995230 980799648 915454832 984185573 493546759 662078897 294928607 601100938 211362693 669062403 405825866 939464018 974613028 977068907 652615839 825866502 354142841 838121398 762792540 994304986 784751294 896211555 63724788 567525320 44636737 49602930 490286954 816879296 246800528 509762359 267462111 628469111 361593952 938655263 485234802 509437071 357909381 919467489 789475448 844373868 997157953 997301010 306574984 991841925 366364876 884301897 137646962 878403354 80213926 505393619 121289397 873294310 5703854 682662464 247011994 864252045 865447677 916138018 621822369 985347564 653191756 805024731 642256262 809663143 580402344 685430971 87123685 658435176 794371522 914525044 218727251 616765202 918390363 957395397 525697022 832735970 771848285 954055080 349641352 967734761 711819563 872726228 183676593 389861068 477361917 849812191 732740587 861400566 475643826 904921187 477345091 593206707 476863765 903991525 899808141 965448731 72863421 410277141 332787686 341855122 215822748 802494215 48124243 848631731 43234119 955819184 461169119 782617185 18584759 368733031 726092274 937064582 477084206 741766400 992968965 993435040 462529026 579971299 561160524 872760245 965882963 998392560 112861117 678613312 641345021 824805597 372148330 439450471 822446246 985703914 63882804 747152227 482744660 762334333 497559768 849307796 596496506 961267692 181581411 775968408 59762276 507061242 431414700 587715982 784322347 786308066 881925234 890809418 57615188 770066141 544758521 784188444 404162507 780259701 495587816 820415057 609034438 949937054 356379957 835625527 947038187 994960509 190400681 371647082 599226995 944153600 113193398 710582246 544698937 623407272 584445537 891421590 399923762 754228053 652701577 824096531 186043677 716855944 467667562 692829009 818309541 944137173 677715926 956216492 185998018 660592455 601826891 638036420 806820586 926144833 725220206 743142346 519452588 910193869 246588193 644404982 300827496 521715368 659615869 951681503 406059393 498958522 762983376 924919575 937718678 941439654 79879100 452439282 890711549 998806295 386072560 836195014 889657799 951965455 602350079 746100533 346589445 862280257 771691338 820176810 3317366 678121638 796606038 989143679 873949332 933366373 868812503 902936672 34867073 781214270 177783837 551307138 172082629 933362211 46431767 907152274 683486053 906974093 219277897 848235831 252415338 578230646 367329892 396744661 572205509 605339070 619801444 898217306 144278258 410999640 146366463 571836228 741618731 757417404 272717550 541798492 841766596 939193997 694358039 983241764 250164509 858392329 256908718 317724902 416783163 520221397 438791966 444220816 978327726 996555080 924790228 949643036 992080622 994111166 305798513 668854333 767446256 917791059 342801060 671141708 621918505 769302688 615870668 702902260 679335780 814349920 322759160 732438434 967863515 982562205 803660657 871991440 650669072 741340868 448344320 925215260 235427266 525887511 627953933 862175834 898570717 960124887 637054357 971026879 508741739 688787311 840495301 905452343 915261515 918989620 489234329 918931185 953996342 963262534 685751136 861662121 36387090 257018615 239379343 894918929 505134535 833821196 668000908 737897721 495852724 964010400 727445123 960487618 254654517 546563894 488660231 576246055 970057691 996474411 766589570 928130119 835101014 879837275 978322916 985968394 914194499 993543516 107052600 727173660 565589865 643830499 327020488 502349450 6107575 404246737 223603403 664433112 97116716 793820982 885494537 987798713 494917546 908252039 696278545 935286068 357375384 952830628 377338832 715678083 422740021 515102518 795040898 847518086 907107790 928278294 622189378 754009212 802870299 888395727 183227922 592165986 645019101 680639964 145433951 431797371 674681248 705036337 437371141 968928624 8562119 273369927 840090418 908687951 133646609 611967198 475533318 709830118 297880687 385581729 205830527 840302950 972825688 982558739 379501230 746735012 192202005 379953929 381769596 876309509 305867684 633426816 826697838 846832393 283721358 635864499 877976955 938813630 212615085 803218960 578906920 682525811 958733691 997173432 440036833 742368482 120612861 815482956 212730457 753852992 680460388 959301400 378871316 545240818 231968785 751028193 189753612 381490374 740615173 931432792 349129274 691719119 796177667 920401682 708690070 759774045 619747146 727775997 174747895 808281032 600447221 843892399 13010530 583472065 703737816 841285190 246270052 571907951 357004012 426116917 926021871 988868128 768511579 847756240 539142294 997022127 832574153 945740350 589302435 599830673 404939737 582188562 438673374 840507500 352159753 767437491 124603143 889692036 437349 762400005 717486309 998531593 624419645 660009806 155779240 288145568 247482389 482813389 571732817 794515609 335588189 589180316 454204891 959423668 513364952 908905054 742034214 905728787 116002927 667336869 424395122 431151415 83223137 348228840 381373017 632557254 532364076 557880361 971099587 995663047 541138512 710119187 391844198 889669273 91070459 576151471 467010086 905389580 147359069 883914256 477840526 913343201 411890393 423607742 226217785 934693327 808859046 810342296 295102243 688336540 435015496 467640507 909317851 961768400 828391872 979591413 567873126 868381592 884278059 945221692 680825571 866382418 955648915 957264174 533617766 839850138 341823050 499005128 47389366 171298076 320411188 507440031 736739984 799693491 288167126 686347382 193830592 276338221 326651220 946491503 413968218 868498975 474757470 577238997 807450759 985399302 791814074 954346535 641804541 932567043 908152349 942750422 239800235 524131112 253513446 296253749 826155587 928082625 465073593 923486064 809357141 977649458 974369251 989351270 803096635 907961973 144847034 768403233 524021191 596681867 747263204 822525354 565514715 663140901 235825077 351843264 731475737 830936311 228430519 558353723 945217536 989385551 825696314 933601263 639407635 976824408 393317819 531899967 261076435 321384778 185452578 740141086 432733979 665857964 242036279 273271221 912460469 951351245 558951142 717122622 510987588 968618538 933049129 972100176 183216230 654868825 781531892 882547520 292639778 999305075 586194707 884395865 373154624 763102128 126379609 171643263 61769169 602560148 351548285 972152434 604701515 628186882 157408154 992211787 62778090 240239613 855762941 857123099 110235668 672511058 551542307 908298369 727922998 899508782 864987639 879309847 370800924 732750622 804507552 950132634 496457149 497665964 237561856 279421447 986966412 991674279 771914541 934942006 259037256 887874489 975347125 976797796 683068031 885491341 398433793 911598525 917138661 923834306 800327763 909633528 700259300 892928730 929194219 958003005 230636540 409818888 665030588 733675001 575434176 765173349 215959143 989062463 187495488 678258005 542965280 937708657 971427536 991725047 504534254 722714607 494779391 944940470 489007354 926813229 182303129 865104412 193980149 364353739 533064674 565381547 103226789 108567346 934316130 988225655 133218849 624132157 337444441 422768613 537059056 813493815 350933335 585908160 521837785 876260720 383944965 758064470 357071931 642827969 820064248 919324650 531109561 906798684 535940189 614018069 407221587 972537210 699176241 852177684 623195661 784570056 991602675 993719685 757867887 816170256 443646889 818207785 984903171 989803952 410645906 907958219 774763860 843440571 815829176 959453054 440657142 710439344 31234575 562614617 506926312 817447192 924349940 959191760 491365464 679219323 262746117 362987966 501171984 785638798 340993039 392365013 110573062 902536237 259042405 957439654 190542770 793315901 417545443 435059964 671911792 916411049 290341017 837280637 108732811 618552691 888971253 902658270 490613809 574564258 336181740 352101134 539112069 626519664 418512579 889512618 307279266 803046024 984437793 999472877 762326454 937888249 940569890 960667214 541369730 652105192 981079416 993794394 668540943 837885099 144877498 952262022 477650014 819040933 324590491 837836744 124514605 447330345 325771945 972501323 498707089 693107971 479773242 942451745 666911736 676070085 814938066 976428376 318463299 962660829 140780335 772254213 284581080 642295683 544173044 867703029 182771794 330439682 282376029 708350219 413661431 460327228 749072630 950889892 538645374 605753233 802865023 935751381 68917790 930090485 58226684 155443397 463168045 523222640 768035048 826954759 941446987 980861664 861223714 880425618 104127996 847943496 794940224 847099662 527737523 674427602 132123888 333594068 778734430 819891911 725605793 846233386 712883746 907023021 960446181 975826808 473094405 479367591 185752507 563591483 974348971 981655483 805882086 891336292 576617359 836947084 212812664 771906331 841531342 943119180 849269570 869052379 896417826 991934721 689015478 794406914 911775191 917710876 400664441 594952570 220907058 317979799 59912333 294054537 552958998 929507572 897168916 916907441 657911185 875761460 345297357 827025043 757081960 952126119 301832035 561662329 132089580 786230881 362303787 416286220 966340929 994360295 423256410 426493776 377226695 866079928 973624442 980288066 481884095 718546029 20899706 821493944 917859891 968880467 945339770 978375370 213582172 505656209 826616616 920419791 80135288 99511494 430483640 971767111 93713495 642292759 662609601 930966715 640406378 742381799 219275307 219994114 578982440 866167320 223919083 531341026 377032222 911164419 686585836 998896303 386273607 625431376 579486149 984202731 502169344 526385067 984601980 988859198 548357481 975460827 553085705 811822975 785650288 937679329 355576233 573955400 15705439 997049524 13269105 868162842 560550044 963071698 67703709 173269836 265068920 480407820 93386517 211949985 841964585 851702270 566528480 860342711 778897867 804660069 379781769 738845184 781723249 951531551 13861124 704404590 996446844 998658491 102459662 127796634 726954565 970702647 843516175 993532872 524724668 664714376 888924508 911382803 862662982 893581293 701397080 715756677 502597763 737319172 448446993 913760437 624280544 677535523 396539184 843181915 307223727 676795971 319715274 895796534 105304119 633994717 307691779 606646125 411294365 736384276 32315767 489150367 318527104 779454033 793525849 997040189 201584642 890617875 812892991 935173322 263847368 437018997 159620853 347767734 198660267 565204145 973701477 989314629 677084426 856539287 591239781 591873969 951215465 991067066 145625589 458302811 15718855 259262825 291354034 578194203 565246980 804189092 919912092 944773287 514123218 969885312 947565349 997283882 900753852 912385923 171829374 393193964 449068709 945940212 695465776 851103586 985795065 995423383 252049122 887946283 605786931 762611433 249043067 794449186 936229495 995352614 675599685 832795694 628945660 960738044 857519416 981776773 575535128 665542178 869754033 887165259 445202382 815986320 957625535 958825935 365843259 396717177 427979967 602985661 752956043 853251396 723567729 969607983 753277379 821821337 110372955 279433278 939579450 955927335 556977174 672184664 504391206 575188394 594154950 838588282 939351184 974700764 400897799 665709117 677354056 786187603 524496259 778103254 876736115 952583541 118598424 347307984 821817140 955043568 522243939 738845848 484353743 758000050 773822072 887465745 789454049 968723355 938575571 963471360 259997617 574421814 57270811 701017671 145560116 683901880 91187370 590377193 134178 688718380 951912445 975708751 210651064 580211454 163088920 974442412 636605046 663541756 151130166 687234458 417326646 944667007 812793537 840680030 39254165 453812001 429849534 747688538 524945413 817070893 909183097 924553916 572986115 618823011 292419100 321997603 838162385 867374566 471301072 845231985 487385238 819384893 938394652 989451954 63269312 599821555 61442856 252307687 922774756 984358106 955395181 987932870 170106802 445360490 321217389 786556744 469664605 862738233 180730122 466097372 182864241 847007252 373093943 451482656 988618312 993689264 866681137 981604803 99296805 912981153 675579849 757282664 279782937 468288831 212993562 415461975 720280434 982877251 344674450 918169149 36015515 789750152 244860423 609755571 806276801 955466482 961861631 972103406 593561285 767642049 860209125 884916826 589340663 618728501 322656373 895138631 637919480 753067217 581625506 854596644 695665440 909863677 952572868 969317880 94153988 171254771 118830050 384500329 464228487 892855407 748567829 935816207 671062564 794896521 848928024 901588060 143176582 576724297 246453317 723172219 487174602 600177911 825573491 929541361 429040253 526999054 200641400 502145665 47694682 58575047 867076675 950307142 127073402 749833223 740778064 793255131 740010182 818828405 455117561 650143315 846140036 939178493 67811823 816677433 264599464 806169997 375660668 963017445 933156019 976767576 525751641 697169556 420821779 904533799 655285745 679363075 73197283 966358323 621599003 671514819 690601095 817486721 45735784 710014500 917415361 917895784 570909107 787074989 951783187 959062216 626240263 804415487 549491047 933332061 327402038 370560683 722597550 803970648 353767050 497781695 627727345 991689080 970540378 998364190 123206883 165259248 632856354 929021912 962050741 991507121 41340155 237483345 127048456 627652050 854003802 945668835 646545104 722322618 204676712 846846875 333797384 703741430 261697253 543806772 265976141 491557228 73256291 229718176 381874222 772097814 449503010 524966714 257679519 903531586 236082449 810656787 436406900 487594662 915986760 947136098 8958812 873236518 296754985 297808163 811401606 838062197 285805688 492579410 408530752 773597585 354314944 778929940 151443270 244467590 231745877 789724368 531492804 631700023 831969281 952216930 306249501 454151930 21661648 108882866 89368233 717756040 930510466 994447178 130237126 703562192 751748632 922458007 529876110 783288964 400264195 744184191 718135092 777847776 669713419 816081983 481109007 626788560 499408932 987511830 487311059 540681004 727693006 928470749 386823050 599481995 513836805 598799441 167687740 713454912 709387258 870134986 91387447 502298007 842385508 980984278 400451619 601497665 548397363 770540571 58594637 399134944 668690672 732880412 368944257 475242427 462515915 875521442 788490586 916483767 724531243 809441205 742362754 754851322 621392059 697807984 953186354 959258270 243963597 509361496 276188909 422671275 787228547 809409763 462621984 477672760 366742616 605198216 778583808 989479943 821948774 849990461 730733551 975691645 845385020 915576695 638356981 836216305 252097459 701454740 147568052 561190221 743025550 848948191 490037114 630681154 882132678 907042245 174839194 179226287 808041001 929725890 944477250 988829117 930008492 949967188 387526880 910427702 685558000 971441067 973877822 975236540 143916983 408040850 112863774 940014576 771230968 981521372 491491380 582642807 589447980 682153490 431402188 930167930 159358302 278629627 349712530 449235015 48123943 836099706 218122626 587389899 39043889 586197169 204128890 231727148 740043903 759425168 668013994 811577108 285058559 374529440 721162140 890816710 264257475 813582154 537099165 539603696 4363585 226621114 457566055 910273342 466941529 871996863 356306554 954272855 545979545 857641386 673971686 853716365 284946149 336550651 260852024 924560192 244668671 583672555 479345726 689073232 460083559 500842190 506555026 629597851 134466790 417250958 551842922 958735207 587301390 737965470 25986765 302786675 266415933 526751098 246591691 915742743 58980990 233576930 514813690 774843586 766821902 941142332 133576834 257004463 965241678 991199607 652682693 807739298 988660314 991695699 98635022 453028519 839290021 858200988 206335266 737169167 457687760 790454334 341424718 669494938 173272477 909971276 299677728 917482464 483433335 545611324 610967433 612433376 753905919 931781479 870866295 887006394 692028593 888450462 65574692 133434573 56102947 392546068 632549387 673312553 613026253 705904290 707637849 849735234 14683012 587429164 740970273 780126283 641801486 799072043 231667350 234073910 211402286 272628536 776335095 876388005 240805223 370982512 364073055 974358042 328009872 925140959 434495588 960934328 549918391 750638952 99332469 357956428 169004616 414699145 165743480 450415183 610821354 786689430 702743673 919904867 582423494 742926216 294111948 545226582 243669318 560563173 350439575 788961230 128497055 745775761 447786048 902302799 492151095 700224577 80423356 510428739 16212773 285720440 790968891 991710206 867244895 942887528 521630784 665270192 69984039 288475619 289590525 613834399 147721737 612848375 562221052 721864918 20123561 677640022 137602289 345520059 320186597 848095486 508933297 753370789 974566207 990441812 393010770 625529728 261067649 942802456 352187149 650055997 116734593 182586048 103351063 490239075 396143830 421774065 668228225 764238001 312401828 530240981 539459540 911512967 879092092 996985600 894621574 928059212 941684900 961991981 903192486 905623123 740912114 837707543 897007712 998579878 236826775 721817865 230124340 647328672 819959235 947975139 807300813 980914431 265193474 527516242 341394137 801768024 506546589 520389721 609596812 729512889 363345309 449214020 726145287 944163201 652949659 759897689 775245293 804573232 201308417 274082392 189987284 479356118 490826021 898391201 175415110 533122360 406902372 775518868 966423761 980929786 825334666 885508105 822166593 871079807 835920389 878835997 562665072 728649865 225385861 672600148 133689936 743636354 260715080 754285152 163596427 460692042 458922402 646109605 392801749 604406402 152172440 957920214 184118001 450806747 729661658 785409249 431793731 589313955 853094782 938116973 151966371 535339257 529003038 693771591 340182458 354602468 946628775 984588076 2129947 9722932 883041208 982526593 689698537 990693335 393584183 490915817 286315284 785171161 954012040 969011068 975535898 981418524 307679059 486544967 357071271 814548058 44517113 890399654 389124669 584896577 799435699 945324150 365035075 990869798 278076726 982513769 622239124 676098188 527966329 798093891 679071877 847884225 220739303 911229033 446069108 654044278 31967357 630489012 961962541 988640053 646440855 945693331 360208149 962653996 975970487 991692787 428859103 875507887 35545252 332606234 218640710 802844450 504820978 541767647 366902336 777288586 464649913 853346424 455128957 590610624 140514183 578212635 975611409 978158338 194972871 654649536 691814758 925521688 563964987 708860329 136135555 728121842 367826148 934495706 247112269 811883699 267452813 799698939 817692668 866775876 300826420 872088485 798914832 933962831 760484131 929419994 120426313 532855402 853707609 935598341 433268905 740770664 155118685 831695934 98286586 331576954 539232143 893787976 360628033 426056249 213064179 859197964 557382773 806099832 587747501 892376869 728584252 729353702 585092781 812070855 346188664 913355985 223145794 551021274 904027454 956176478 706449195 726244073 896659859 926630501 645866859 781781051 695358095 850405480 403317222 429918100 178661082 186721412 790653484 792451145 254238334 557593940 676699013 694467454 145332939 607990653 537247886 902129671 336039068 880155256 952283429 982347138 875093858 929395505 475595465 611289652 64805700 423684441 878793311 948135789 72003412 713541275 495987086 562844962 619087199 735561290 842405164 941934938 884615549 906886808 933603073 960166037 269535591 656778948 662529269 777444874 851463545 880607702 465391148 709260237 80633657 248625927 571581331 641520706 471047902 632461160 640778853 883840192 659267003 964838867 618172506 930941744 40937629 279635356 461481465 846861614 617122773 843013611 880819706 995675471 655415006 757054722 964389622 977757935 373552621 603775282 234620674 547472421 51029780 887366730 763191464 793582037 756116787 874496239 491100458 661517226 859037582 878538053 707849302 878512527 147089652 556180564 431079014 476053240 496725016 832455627 234850761 401697489 424809321 716244264 365488569 474017508 772432050 838619009 945104493 991606018 650491460 756992521 641578045 945253766 661723351 929802982 19176758 743695556 973784775 982840849 229138878 372438758 229991650 291438019 898980748 920866070 896823655 930228372 724266274 929747635 942756515 965797670 362136768 594337772 141029718 507579084 734772956 763235790 845686132 932299854 838689244 960314375 861953923 993150288 412310105 683051806 473789002 654719380 955349840 966485371 150486284 267569465 664866841 740368136 514581902 747663006 756190895 809299938 44545899 265794564 194279032 796002133 388220184 597757791 374669666 608053885 133471393 591183649 200051918 599130909 528631575 638350183 134573284 835252120 941347586 981024242 562066781 623459194 839444875 881100800 58276986 484654916 252438655 888720843 72216213 832559159 990021834 992372895 462659366 545280774 31056231 470701717 334033824 517973256 950145734 997917573 897597528 906266483 601322712 894524001 361134384 717720054 439762631 702814287 214201388 267590979 732564927 772240597 765614394 804368587 331082193 906120548 545602047 963355488 611824387 646531236 576256538 782162889 937948625 949376734 976261536 983189314 172366198 825767414 984036508 996029569 802394997 890838843 708473607 879071685 259270972 471321179 804602700 878410530 203699321 677829182 350520204 508821731 656114829 795680805 604753774 678201978 490318101 824180909 986867926 987867777 776997989 825965833 155005135 928191529 215052133 602021230 646274576 682968739 283906312 508261573 541876299 979657994 211008625 796755267 908872729 914798466 173301524 576923952 573785874 939687894 181554877 380897922 381932471 943161526 52265300 949485887 463640108 982669951 384313639 739767355 895273868 962508162 188719604 667960846 632747102 639684976 748224222 762743970 593366804 797122176 446696238 667595396 633908818 829469773 518734885 808943187 879052525 886580019 512963 684330625 343971960 869445300 262329144 942477730 942657047 971388358 668385700 986478741 316129407 589818979 704631987 949570764 242286850 927663833 607171338 928623512 617786189 695877394 714293222 773750916 786095171 844883373 235550949 839117134 573003072 614628279 153791077 940248152 223874746 540847284 432748163 764229269 411040243 554971631 977744404 983958522 530212166 655156812 645904766 721122792 494640150 795972046 135437796 791019151 943561769 976428449 185879002 319580858 950646281 977373253 581737800 939487428 393651233 701410260 22585782 853358760 95226723 235160910 136309025 572070759 344388210 691074830 672606863 848326227 415922673 730102102 901756062 961062681 573158986 888358188 444462751 866084772 186121513 564108644 537764320 959094953 418628606 460215380 407312317 930639807 949613363 988536600 851269462 957666654 563715779 713374925 958455430 985287310 918320403 934589814 563806151 629420433 488079197 688196519 775202873 923945918 515641057 543655643 269136288 381192590 176715891 185575511 898909770 973438053 266537482 430160539 979730581 986853516 28713689 980562195 529058391 574575447 195449158 692851935 993510780 999511232 124851689 303432631 355785624 892376675 645061120 722753708 765494678 956771970 520942409 522601788 546522678 553235507 483889399 569557403 754049673 766054489 890691852 935826998 592554305 874644011 736955615 872864825 646468398 974042100 764589594 816201962 880687976 936195965 323946322 935116782 164330516 741988684 264065369 442531493 399871187 471300755 410134816 954167227 66887247 998577012 847844757 996502913 818819179 996951678 57870101 320537298 12571041 125740842 335902626 574835006 467389258 961500991 387515275 841762029 173491252 527899882 158618683 247406873 643255473 834858162 73080989 931860615 57697232 535653803 436749303 519848542 527932776 816739656 560891129 856136348 24964630 220254731 329919374 799434957 216275388 898122885 985407246 985982112 809968576 968343643 392681775 701445074 227743477 984245031 239189612 789436381 677214052 839952228 689228006 809684398 955009762 971798803 829557023 896474454 888221168 930724886 335632566 732963667 145525322 521007709 634893102 732098992 773718721 897371682 209733801 590269807 713826850 881761682 176057032 849455712 556224991 866986947 542172525 603643461 875549957 894367638 270044569 813299357 642739761 644547360 999385976 999440477 401621101 868259596 264442750 310211094 925700720 926117708 780926405 918718467 482026471 769352371 588091602 987676671 902261098 925029777 737003367 984368155 667871193 758828102 241367103 564373556 560137514 840594758 18969244 87719112 518522766 573780092 643698596 841715445 709418811 811034175 318042418 665572414 416910116 676306586 843775276 977149538 575538416 756615138 100216500 490471061 454524205 495763695 935138317 984956399 16696792 170341175 83996975 826896209 965704883 990223784 320863636 701246052 720870621 769754205 347679904 394833779 764343726 928543268 212737389 811762548 415305747 592338266 797837551 983057970 138637341 372509770 379116454 453735565 367976379 430020880 849200885 862498672 326347474 442819975 312525226 341233865 48591088 324718550 359885033 966790191 67663403 933805176 920618299 957158407 312260439 650393662 966296122 970554013 773094740 901214401 430895714 910027992 374243378 620683868 119864586 134614303 12254160 665846021 154568369 715670623 514544260 599781846 775903125 782656937 512740769 573623957 141811664 555974101 462290123 520741966 992989989 997319940 933439118 945851918 223130125 890362592 334654512 481779796 391997376 542383775 593966186 826811953 302400082 446188391 171960265 436391894 27862828 861516791 906912554 940152698 676941802 762570689 615664980 878412363 629726935 644137377 553724442 575591094 557109166 917819114 290125747 484891437 532604976 714955203 708932512 762757084 787972107 794126328 483752728 948682114 286273092 813674818 143273666 284994108 840865173 894082533 1159682 5112807 610237267 925043949 299506228 974916546 679812437 867036472 841950009 966055199 266911553 701602304 592532766 722269528 325843222 537249351 886078759 923897212 143395448 217450639 29333385 868049727 207433298 878581450 287702233 795757167 123210567 971784638 508155625 897168223 87456298 647691293 929074064 981204634 675925076 746188508 704089281 751485023 791757505 938867733 852373497 901976697 999744107 999807383 3803287 774500588 982143276 994185202 408418257 470778612 734170752 958561395 604166825 801843522 918118475 989749259 920647941 936358728 57850159 602985948 409629893 909760119 465159426 914820687 668073779 800604952 321675068 668854814 230982325 800262427 589890667 942970569 138076471 515471407 10950536 49198621 765966063 969262915 439754557 667494330 667186979 947888904 988336128 993051263 761424715 816947891 664714794 713464769 397528757 729685863 423780884 878571665 622976788 950231984 135473188 577626094 396230951 928629662 880135054 898435856 415698044 746253010 216274928 730781966 575366152 639942780 27950463 606912336 425841014 550381922 581406850 750806197 574431503 926644242 626843099 853267112 361424659 540395835 101627181 299187357 369512295 539814585 458315608 894493685 188240329 357738837 273081402 474922048 471389415 757100537 57336598 420695940 110696997 955016108 608372201 771404227 467783177 659594497 296747340 657703724 160036607 696265366 654188365 804015152 79747945 261921765 751520189 926758754 107313771 451428097 504411591 612895312 259046911 285724301 626787333 830140690 999501735 999636116 523394807 596412772 873478436 972271793 383011870 383689701 728363625 922990176 336518713 909316754 243265305 453921506 619566170 794815976 598430050 883567540 626075904 847117399 271669245 814973091 595445720 811975971 469238972 751176100 655133810 661192295 603650322 824149701 435032553 619939944 212176157 896395898 651403401 692596419 40739879 230859260 460477264 730305163 84542999 576646677 516411552 931057842 741614045 802700791 57633860 131917177 205270777 591611901 864245404 950852048 383776755 629451930 677537468 924893657 922801101 937876316 415731984 987316923 848303544 888788503 61451111 767589450 660731259 893077021 279476266 688487614 167260635 890037003 808534385 949059902 25704500 558836944 641661987 721419256 911319405 930705632 760841783 866260617 625223795 718939359 702548640 805653804 999948782 999982538 518663549 790439930 392121857 530420982 47735081 238416958 533962984 549231648 899746385 983513645 277224318 624840826 602592212 880566698 880015036 893929017 532206094 685518703 422825560 655871026 273254796 530362876 117479921 346452823 372832903 875362825 742574595 965668586 459522811 701647815 984537238 993184391 628477784 964306145 802720381 912641842 360291685 493483875 762115701 974347478 321169217 824056612 657447258 695303649 420740739 848105502 423573032 973630337 574467597 664240900 996495288 999044277 798278701 943622615 430670655 753091875 668483305 806431904 508417457 589241643 683831088 714080448 386174637 842145418 69136919 946478526 44337330 819330178 81050593 333739674 406872179 888393276 618927308 809962994 575442169 921219351 647304792 823897061 609626527 760530045 549373431 860690165 404043836 803830247 644636269 873225687 31565891 607084255 627998586 772494048 80311057 244434107 62624016 155217440 562917913 622925670 377220828 845220286 989345970 994876316 189951044 952995349 511585530 794989801 539444150 699522792 268280635 901529461 981177838 997404146 857398026 976377731 404629169 983390300 962592459 982916634 651353065 863813437 137036437 474945503 964386001 979643794 750888417 833263135 767952691 811020278 143974205 376878808 241520169 581631602 795331983 961386201 140809632 411844915 622264192 801994696 621275234 852194460 265487552 424398713 458276376 927406227 569998438 579629681 842412484 970978288 470631559 890791407 950285900 980803970 852469450 950437974 353062665 478846330 272599984 583043776 18118466 560403725 509802023 569886004 226457001 910633639 708569649 851910948 852163876 971375154 155245070 568615158 177969252 491397540 951890577 968480282 477655274 985861055 897099606 914276339 755863616 952538027 750550119 801403829 325756793 835542052 805291330 901956933 787398163 938733232 795452287 901290948 896339717 914141830 981599676 985365034 581015223 778729172 758210437 864050827 8072136 723448600 74629365 591817389 184377227 343226844 797560449 862852771 594622976 741914172 255876260 325643029 81400241 448267046 344663405 380867844 410439162 639458808 769046415 779712399 135404412 536429481 839816179 940029112 771177081 910706781 690397998 875475583 637496757 832563877 782518619 787654141 287519118 486434259 289543492 426560570 753385577 786355126 686097528 825660297 188184101 441903626 458991248 708897023 227287507 807884459 938263811 958432126 962804384 988590966 402306740 660554351 295710535 415357708 601874823 850823348 700849814 995931796 342364620 896921589 37896289 559888750 881974355 968964660 291298620 393507037 651267593 832009629 626171454 962830090 703863480 912139013 620060997 780556679 409856507 412463576 488775381 718768611 233143707 688108964 661142420 911677807 63238276 748247324 891535298 929397012 47209363 680199165 471914666 578987619 453767192 939087666 209666066 855523608 944900042 955637764 600799580 838714347 70702038 950471447 125117376 430799912 679135278 796059435 982824403 987519903 802991560 851569147 688316191 940438498 799185330 804977750 710512154 733520394 643962 732441438 456636627 537269210 241018376 839237629 50884106 376867342 634750210 991298942 183105116 850072141 879540700 924079340 135211566 211590846 394983950 726035595 877746996 971293768 485788726 898319621 260517932 572344584 357943208 971373707 91151749 524295927 596849695 605132783 927012300 930509687 39989282 530496924 313216689 367166477 218765330 645491078 277939266 447031922 793471453 918456139 639826008 977059015 873268854 900090881 765584740 776704860 829937593 968418683 153826928 929656096 355066417 975607688 238404243 517735458 668313063 863567200 115616142 477446249 740908419 765094800 300804199 492715441 310100645 760375965 718260492 736142976 267687356 316883396 171581083 295231638 222242419 754467413 109664996 231591062 494169805 649657710 635501720 746189154 575879835 928155204 373165389 428430308 269608093 326004001 474726641 698766309 819008496 939999560 202503574 921684104 701598476 930718834 831899201 873244029 362466415 982866424 580429221 651558315 566449098 997090592 995664278 998655513 548777547 877514732 875400283 890525317 586460343 603790269 909728410 935087303 913606923 923235852 645922103 901180336 555590279 776230604 214515439 675792854 354391154 952041421 276547000 957351057 659732716 930480692 468892661 729251243 946173749 981862092 582216261 785979475 275322564 307933888 121433351 148581621 860598653 892280095 514645937 845098691 307123006 588045056 357283092 426255313 643206740 713962214 515217316 681149513 787203265 837855135 292219822 521894936 422764310 563725586 476850934 692774825 235690815 716121978 729843581 862150933 768092865 993572156 485745209 938825953 53189970 272482124 800529651 952873649 393250154 433428075 426292042 489216272 982089851 990054759 408337426 563597091 700017758 715056303 272324381 663098378 569378960 913177536 227283277 258062416 720932917 806355429 703012612 769343100 240147775 273830070 661416731 987589612 495048569 585549291 370999271 723046101 729816799 969972448 421788395 519971328 523086886 876366201 497372019 666641532 399408015 932633055 621386598 689956449 904493356 922883734 754222707 773045379 661793865 669808626 976181450 981794480 697854231 701692843 540051724 599287929 775785726 842134809 351240726 572507100 241552405 473385344 974184963 996987066 443662274 649176163 596614151 840389043 729048717 753517025 669273284 872980664 985147217 990397259 677665451 741613605 593246296 930830375 38012719 344219365 991485883 992305376 557126641 594294171 28242640 339594178 755534016 954310294 99401704 652171269 520459034 770083670 187489502 812859253 138252077 660684010 235041899 239663246 701260410 986327256 868758152 927697623 999930200 999989685 879266900 972440303 40897753 82110677 333264629 343982430 869912978 916358112 242707418 882511759 474985646 809744562 275553630 958155575 847160650 861268338 874837553 927330833 659851238 666975959 526535977 958443235 80015408 331892374 779733184 861608757 794196557 801314868 77742977 112724242 458119042 741551124 760781436 823502464 633944331 781467767 62783375 610110636 413668493 982493944 32228703 489012374 116177950 285242623 572393 695085207 366163786 732839285 225256580 350553871 175974854 438287871 557423942 612460755 555767189 770098341 391175524 665981930 342988997 880541438 835925448 967050142 69385793 519321048 20104344 502539686 522949108 810530392 883156877 890304399 89844299 853673980 867133457 914974342 107691272 838859892 328098320 489872150 121942865 544898249 207504768 828231546 727815357 759856289 917250949 927243277 469088678 934905066 383811096 669160838 235858537 368238956 612163099 858875545 229334710 738731981 788189219 940803585 928993526 940689674 753386553 892495967 166100159 444787914 269502369 590564728 452760627 802869497 202199691 282088750 913859573 920142218 37307006 741779950 766657679 912603870 143389651 323148983 703340816 846618243 307919005 369774470 28704942 455534504 19342310 185603894 711018917 899430933 453193178 732446115 726349666 933507267 586862612 717177385 240727421 350280315 377664736 385799918 498936945 971435585 398506768 558476684 932279367 996177834 554812547 896735100 606219051 735717132 12075973 188319866 757244681 963222602 150946999 268836272 257805802 281677867 650219852 917908243 121055684 552338924 203199322 248084238 368908034 491435746 97235614 271004559 390221472 981590369 616589622 904725374 322505263 539911496 861313421 910293146 114301176 565505684 814690754 816512579 749646300 989470407 526251224 853249568 397783900 581214590 481040228 723596509 761296536 904796464 611579904 946826545 420668201 693615103 137996980 775578801 212681509 735189832 542322046 745516339 306383886 839521524 972155638 992146902 841477775 925041359 664390071 934748906 34373786 618639784 333260249 632951405 29615462 891777779 538531044 937536671 560124710 616435395 306028815 492881954 445063224 591376579 242123406 694543687 255380429 545898029 165761921 533222380 389986461 538726510 682235353 754173705 157011075 161820364 81290283 619610242 634783810 703793585 525265203 805279484 517180287 632961349 306693290 349920843 790571299 864805658 493969645 666731001 86628672 799683550 94692327 430603922 119808884 460477646 425083006 514769814 613506069 902445191 463436208 700211508 682858785 749944787 862103074 996187252 65931973 624287353 24842079 746889949 159673978 266144560 517711770 786948585 273306840 798012636 886197220 963192887 693765232 790309768 95370027 878036653 887722698 945769888 296535615 538485597 336967542 726920307 102812996 464332309 494831952 790292954 185856082 813136380 126046605 362966958 494849382 702958901 378925365 792781591 297270931 572611801 437711979 833586378 639631717 923281943 921989768 948793682 75771349 309404099 380067053 543819597 109782151 381987492 439635953 478245547 628516930 820483198 811276166 960202971 927062117 933307947 496537781 817443969 138226835 471207248 659191993 732113352 164288949 267143508 353285819 884104643 979543512 979916080 181697081 337632854 105440631 406462709 263747622 764995303 771192191 857302882 443093931 583901025 249930510 678732648 732811152 822696059 182016149 757165662 9337168 133616730 864671320 957009406 556131183 944603487 944436597 961613788 257907839 433263865 310372329 828151434 921532644 959096721 360112580 719934654 536689072 586269887 166096747 349690127 692055052 835245951 456107212 789679268 256811868 865557092 174402128 394475418 7835746 840171312 184091591 540232911 614979852 807606315 788315444 869437822 734499197 758948880 763517438 871388620 819047103 890356030 459917819 904814873 256251461 575723691 500014283 643164148 313787149 663674797 286280034 333275573 128641196 814098277 504422373 722503689 458012888 656800506 939481124 985868681 58679990 805608681 419464841 473154623 27492702 367245022 198512862 990288969 760271520 906871966 102382132 365185571 517248605 911713038 987613354 999804440 280112073 853540981 174799084 814795167 481954735 593954360 79280841 469077240 915958546 973565851 813349076 904958813 465211638 536071571 199448190 926866455 617096400 706553587 830921877 949978529 416615778 815048085 450017161 697713064 268920374 414653728 389913848 662297352 64726240 528627369 660922643 878224449 249606154 514894605 263369724 980035269 266805782 943310629 864313803 906563465 558504527 870442768 542372935 799773892 851859881 973292011 32847599 571834706 589849079 595857750 366081232 719191430 374201297 493283871 65000257 965188317 392046621 621850222 256221979 455405819 895367751 900907263 916394460 993779067 371251671 666717757 720905255 877605464 350004184 722557730 146898264 233032501 87521133 587024397 877988909 880894979 194182999 690885201 756024499 799531354 367204313 866599178 904325221 934468088 266531994 957759498 18727343 133580735 499911081 926616723 605624014 683088465 193023385 557585829 456038452 639559201 715066221 763904508 377893505 813872877 104806443 192576125 558655156 951759067 380759133 727355319 105542464 719801197 232910057 250185825 779451265 815092419 986213163 991533884 994001780 994279461 464889774 932644483 427803425 883248353 683975217 738402892 95720964 347375431 1651494 77972292 849658069 930611830 841032338 903576895 159592024 508572625 845971813 903701837 452402205 618499788 596791801 727280220 130022099 917829737 127389901 324671138 618983270 650658917 518134769 774398769 202021265 250259421 382792438 907960721 649070412 968246652 872050776 964144021 619171483 857652839 65847885 185234321 58605325 477960763 861532996 879972199 971983816 976652179 990334799 995939946 315113663 653462611 776669321 843042243 986115836 997514056 512009505 846105171 976757448 989526779 664684332 758417186 584465432 929168554 146402415 662292653 958881118 981882704 30662285 804428294 46176315 895315938 99812435 988552770 777314550 912025853 103246881 868792082 791171095 824417611 488372532 900410957 571083922 774244656 934373864 995888080 177094282 724323387 443793706 649822840 407230803 743672200 703960610 720931990 528763232 643066498 861700044 991491383 270194314 394863021 261273360 636260664 88150038 379881563 802218680 994101574 878009740 883585745 924617389 940062022 802417348 870653334 794922861 807030398 814711962 863019563 530352556 587885531 255704373 308931594 93679344 722399114 589667353 702966308 717433302 867123255 70402569 758231012 667541375 768867563 761643004 878005515 294626039 789099265 37874220 667921867 639876980 815291772 269516414 361292333 961368140 963028899 475666962 571044999 847013859 865427934 359721945 718651047 390914438 770721397 623461547 720826138 230608504 748406710 816056568 870704292 606804951 616237762 955660466 967817423 483552538 558010530 136652774 678907990 939500157 963823994 603635937 764495293 205193744 772099554 86256932 574665815 283716626 573162121 392675688 677715995 992367236 993858615 849056699 864140436 428185282 952150166 71157862 859996462 900673037 965268948 100938002 688157670 201418637 942806405 516682258 892144230 657508460 882784329 977373441 993656611 886504278 987467497 326337751 925198695 927271762 938534698 761610116 871320881 713441585 869090917 647263000 682021058 957396064 982883285 766166074 773430788 124074934 844118524 144375788 994900281 702468282 905456025 194382157 738773634 225460539 590415772 777533112 797147595 988666193 999624243 814724829 966285560 529177051 578826434 697950406 819971429 622819051 703675253 597508685 630582009 94970906 335111444 597952037 751954126 735581621 900621091 906090698 973704255 52183572 508899207 360179289 722003907 660830001 813657715 999514765 999644654 859692909 981924239 337611897 996041773 635195869 646674674 93153402 265093968 761298959 991264793 132742435 392415451 6541309 259464690 743648290 919008725 268750186 747363122 444616206 581184395 866632508 940701854 556204502 699376161 821053705 943338044 103893379 885125860 454440901 867480942 49258692 787801457 914986357 929924895 888000282 963911742 703895604 881511484 658431100 709092229 772047299 956034061 951499641 971371915 473894109 547955982 709185607 972622974 836114707 963989565 38149555 726462731 157671544 683326924 555248775 728587258 499324449 892151087 316276723 719994924 83302778 940259871 801035014 839118038 508363604 737237667 105220057 253595002 948155476 998027668 980038248 983128700 190258078 896596247 200875707 830120096 950604184 985159961 208977583 267770199 627114961 937200909 689604776 691441723 596997184 822668684 187199704 518858928 742559196 948409746 176125435 482990934 213433579 587639847 214752463 471560980 661738366 957326389 613425458 836433247 304254608 359412670 33445860 958464552 288325845 791228701 655673691 696123039 960296592 962391823 661195475 739670639 431571068 887162684 379024870 420076788 343047198 953957529 705626146 863460679 260043718 282386106 512549912 902963498 20076423 467745107 976455319 979317799 901375220 907452760 868803629 945066432 803443567 951433561 771563732 783921988 305801670 814743703 590292994 742708903 46939743 138342919 625701054 683950429 838541660 935299056 891566068 931732251 19287167 954252829 146509062 935288327 530792522 912355893 226684648 318713083 450140445 856391199 101709629 814593371 843459864 868874865 14262457 965063735 390892622 686138154 185955970 394041360 505850105 632243257 169059481 430483524 298720284 373795560 147868981 313811896 677558514 735612173 287608058 527434541 923013359 960979032 711379692 922126049 323065175 943032738 43976188 801001584 31291094 538683052 576313515 740417342 55466622 233776516 184810415 386554283 274765843 951551620 83752508 878735601 120761688 614831616 752749081 770004769 554050481 599368256 39210769 325278731 349479860 690275525 335462690 792285462 633693727 799588740 808868129 840485760 594622192 700090669 769958914 885684625 966196835 987550659 480959465 952186679 757320335 890172091 199206085 547485783 287080023 783222928 353027360 615660982 151223299 394593201 810275833 834297162 982732068 990257311 525310947 617651082 242745788 418817984 73775510 449938487 958495351 995257892 949030373 955849951 93744603 536845765 526187639 841336196 697856218 717747509 307914551 517622314 166493990 312947714 662084716 727822572 302704719 735993970 709765994 913233321 858183527 860505659 389257615 488751477 430710083 664707326 235374523 503428808 930652581 946532596 884990069 975416302 45153057 921402972 473452423 947595385 759316725 980858784 134256087 593102937 390557586 887231771 650042607 757935005 409156186 492793987 957650386 964806661 399297519 914129562 285060517 650053705 702037339 902753200 964338428 978568346 132685918 424216366 736540397 906771142 584238453 840680909 360862036 485148348 332117051 845602514 314087575 602114356 673104385 805937269 56945657 619797690 853932961 925089620 747449896 927562066 593773700 852112404 407717909 778740687 680715891 763929145 104953720 451672342 339386986 818662788 796141140 855491503 564590800 750709532 487052150 615484829 39000780 62922679 794843808 905910699 456654464 516958577 443068970 666729259 536531633 606833112 302922803 864955662 616039369 899669312 877546268 899947926 859714693 997791177 661818431 870715591 48558338 259118539 610352932 933489189 946150674 969493944 197372945 912369537 754527496 849264096 763387513 888056856 577403992 812128677 869210618 974796479 147078019 198218313 178018090 415448559 798916056 799380336 547678479 699999733 505258477 664195709 46274760 749326844 701678741 920842993 610179705 632590068 145161169 775297630 631456171 843714842 816712701 994785140 471159737 638505583 559723779 818936604 545484482 687333733 991218159 997170256 772085326 913021141 610302644 828423077 856890873 953248317 632662431 667429611 205915511 982243579 818791263 991031073 167381063 336585606 767325545 770220999 455418749 983565215 976263954 980710430 449084271 844900813 148809954 741411511 612490757 898083249 800835451 814102431 963766792 992598452 202537784 866917565 8450678 699854303 148640530 670239530 231292078 727894894 964001548 966696878 793982650 972280866 749453365 976726452 365370827 525372030 512523079 725543496 163535391 378861528 135059946 570414083 834322474 969496763 178865659 810046649 825479121 853698456 502833669 786203807 542337150 574770182 889880539 999476666 248223562 567678214 565450371 705029923 567451458 590376488 550041943 980658964 239857680 953211852 71579296 236029604 962317712 995310859 29429657 459615782 287660579 329093428 909653993 979034331 236414902 983504268 502383611 825027819 793232566 812146513 831859769 882044604 31364686 794683374 936206708 996580806 380429527 969636825 44761533 639930162 692397719 790525513 283011312 348947222 697047364 972359322 366744312 494556413 472426397 822097480 770128126 811690788 422935372 702998943 486160558 996683489 366169432 397785506 817758704 848823549 905519334 916854298 899045807 972481814 367855836 491228731 955661374 971632941 515066726 954290300 216236160 456369232 91887711 680105433 585297911 725063176 886001783 985979607 650984705 807650171 956391657 989474004 722711975 945035022 641584818 743081949 622166546 930167058 698806247 948342830 548966130 817482580 53632658 774730338 19524794 705564326 394757383 899618091 404154665 992514900 201365914 834110599 661619150 811771140 879343198 993856387 595000651 802377205 547087049 764164554 971799132 984907843 845019882 975406101 587801395 715629500 682544239 864086145 760838799 786752746 741717912 941408378 275485216 731142648 311922730 458344225 343301171 951872800 769254123 872493340 93439514 866562230 634395514 892435847 282386448 362441644 947090111 979692472 226650846 977182666 510068812 782023921 19556434 635637153 859255085 863041527 916948239 943292656 949137224 963801461 264191844 805354921 755078493 758411645 737832992 822099231 350263781 816550558 405998324 688389348 162955908 682257161 498737723 584854310 308353746 464165310 363881081 811319876 757517807 835472319 120354823 839492548 932411418 983038868 155269112 731032859 469633513 757600165 539869270 589629303 231051974 777311744 88939605 383490631 63779842 690490377 75375846 341056765 367645990 813037107 935768930 944543934 240920667 469215030 683865985 730235079 919189919 923223395 243051254 883800291 901405439 942054026 769087484 774155047 393437797 424392048 939972257 974334513 576319523 658052516 982434791 990576587 904323550 951327441 981316693 993082440 637483685 799509656 334059340 357188334 904772649 997536246 289966687 703170429 222906331 984109662 151286249 353728633 719911124 725725242 240926233 368785894 756747621 862691176 149553913 660356687 196340277 564879619 276988446 710703033 536330879 584416087 650160847 861177365 78273784 978236442 441677933 598978419 264227777 565404935 581360009 669422483 431295829 598548150 770959122 996298363 787445185 814492016 20148430 848430348 6100631 126474037 335843922 590107983 636905859 982234406 331376659 812879786 382417214 459826184 649006158 669495957 965690767 981163032 788604837 829516451 719864655 846269847 790377844 985037477 848667078 892880502 731680238 814129845 237644151 478414290 253343983 669227314 716815761 976265069 14147996 311657203 392234452 800694636 957209736 995348719 384295982 391082610 460274893 705168320 19808814 631516763 613056747 626586922 58668506 288226446 426425646 853026087 887225709 901382019 87738547 357417241 67458350 610097067 694956647 786350953 995403541 997513132 839820569 908935513 885368956 966979381 78358501 201446765 831379968 971021222 286859289 772750903 53143805 863409778 696872014 757552221 990864187 994254329 433110007 924061933 378356206 612849459 16829490 269559538 311497814 912011045 833540811 881264234 197355041 318778736 399504884 592718046 543096473 976585747 403661783 479139170 241514472 770315102 762224917 819320220 830653339 837310618 942811445 967814010 911874642 995210172 452759115 962120414 582684038 780919689 351117901 401228863 204941388 224936995 551490973 734989127 819817815 957216893 329336606 614369147 151350953 818761149 43231968 434879903 542418061 745253819 680184601 690376631 84952298 664308661 520074685 696711120 614394507 961557190 568802688 680598943 397035075 767489841 328214811 752031526 244811341 526906025 427315002 977361077 281858790 339136335 305104882 347230489 996308759 996964840 961183394 985299322 182551589 492758748 651722490 682299554 204524698 731494529 794727148 802556594 478716495 655520445 942013001 967544617 941631891 953373417 44600140 673974185 371875740 799239296 231794764 504592500 714125132 876543210 794121699 798232162 419357943 568949195 214804018 264269455 439376542 575990503 506054456 719760029 546882467 561014038 261980726 304922579 185125179 657515333 735632419 932743844 833622504 882843304 520823394 784241252 762105483 940081857 19607383 386543276 464995632 726168199 109960932 373021588 281539466 663167762 714502299 932297063 83362087 254881921 58337189 931527885 776225876 862073283 978085931 978836932 648254504 961243411 645837339 993512729 521812235 624205251 123523915 594464822 916746789 921969579 138098451 568510534 996263002 996799284 806996714 857330621 151337397 354189981 836677307 887275795 600272385 856538307 481827079 926492159 689682154 763582363 825687141 899834152 969773080 971371394 381876751 778450243 406277027 819579956 219932439 490153249 376311247 778502655 907276511 914378432 572910622 976650356 127608282 300932395 26056776 715680287 212300193 346364626 342650661 642134808 78982825 848914228 782498624 924032209 637420199 793709245 261366895 626501421 298194936 741706920 420486766 425088568 602511880 726428406 124925215 729254710 27768275 971394549 183694702 731593387 528842576 688259369 305824127 881843150 688737747 746307434 159407941 455354923 740760936 877278546 277703970 807483713 278231553 647567290 12564377 203018418 317861376 886048654 368000944 571259784 704274141 907279013 242002782 920122894 791627511 862633871 84395942 190637701 829768947 951867196 677708905 833196957 974683208 998121812 880919643 919734768 665085832 946411265 928863869 980672495 155309306 874273826 103363225 337246392 585697411 811625474 753386861 762167002 402442646 406314778 878943559 933858469 803936480 937955932 641523232 685337962 462662176 782951685 73909706 210410280 57785620 196780525 262269233 930589975 246028851 859238329 317799749 456531040 615909774 985251419 768819386 852668999 16820335 357320089 431431331 899483140 519503068 704239317 363278576 741672685 893018574 898219159 83570954 643208926 688003542 831830237 454058390 636837669 73812494 635628713 752968827 844529810 326914447 796075058 550169680 766599248 856783984 870553346 409669529 437779146 919828174 979368114 941386658 962342564 760571044 775064919 982312893 990747747 993622698 994593371 596590629 917331028 415289021 496069592 388152609 807145886 259219419 623998239 204364213 632023708 855824574 984768247 762595614 873877603 643695568 803928048 905603435 940121296 737394292 953277387 753699550 985655915 747950082 766204179 424158708 581209597 988108225 989352267 175572081 772130213 110050564 628439624 827699713 994717357 576485556 808829959 103340843 477860914 677347209 958216222 463197822 699856942 358810056 776535658 686407925 761854642 889877615 980670526 670170104 935680794 353951850 560872095 264549714 453952856 339853244 626010188 557056803 607274670 67009257 673343025 606112353 766496396 208553910 748571940 142212149 684967350 91453367 128257995 745924451 960580398 326279824 729601032 453868499 718967004 716820874 958197240 515141189 698362414 160861879 714838975 356030265 688576676 716559222 734855326 825853592 869151698 472187688 835545430 856745567 958480941 642245002 700283505 117422437 702283496 661213186 980486041 853566167 979009100 487013581 912130602 865025144 885561453 25313159 296040803 240313837 359884830 7787672 778841130 418099645 737229217 390988323 478286039 532412204 758117115 989570585 995263812 574916114 857109840 239047390 659785566 796634030 969892753 35848567 149433807 862654989 957160463 143030819 305520651 756015928 873353049 304763554 604691577 624272973 697042238 667192524 974645209 888764694 959707797 175995077 394116785 229892804 637035784 820130921 915574170 754112196 940413158 237910169 604813208 648501172 879338328 33101328 484336530 100819992 557503746 977901656 999610943 5908414 50222757 483276556 919511457 82550445 269152594 641115615 741832170 256196946 730559313 734536025 787892906 186810116 269333871 911480443 959930941 255794998 943183107 335204446 724524758 33698458 405727639 130407354 272351683 744449500 791917953 831255402 921461562 834475148 927035042 426373805 511312234 636139498 960952402 310261081 835639763 955887229 976664931 542335970 614052265 961445031 964944144 877404387 956505652 904409900 970043650 418377990 681241303 499054410 603248527 708015363 755779763 927077896 991459565 68188051 319475066 274040848 901832998 202638177 876020544 353287434 844825403 755420542 997243700 235907699 870498639 856476877 907725055 170806946 506119167 703921268 870857044 180814332 186214555 175462527 744994506 695603750 846920425 985794319 996518150 71084783 320947796 830182571 831736921 348170386 639306613 675770568 709173782 982184616 986250569 841394200 960684627 705208554 835607271 514589457 792954980 542536279 613576243 734428681 763092833 320827788 858805837 418108442 800798059 604486625 683605029 601908584 724226683 594458 388258999 988499341 993663188 72742349 907200639 863926589 975802977 885572843 958124836 783055449 805558755 949485069 977160124 958063377 987344356 105336109 975068189 519555420 792100366 916671602 980316232 146978112 324241836 729699787 972492554 222197780 506512343 881752787 935119696 846816133 979321989 67332632 620768864 32898679 957589863 896095482 992919918 142320540 723799323 724425412 768695350 783142727 895858725 257830831 948365204 295960555 374800025 384296686 974228648 637523217 724100087 811031697 897217318 339899783 804109564 621815707 954261499 397860954 983339109 381810765 525544588 520897290 902676005 214530107 454274789 529000835 756527375 507040808 650162123 812170182 849254598 878074236 982743613 632004731 754952106 50897765 573514927 890486193 959173734 433235587 894973047 151181367 572797684 322171506 745667529 982508869 988500072 434949015 482839823 468264253 911035373 79380190 779274943 452242058 483822041 109073426 198189668 631987242 881319455 188328809 297064498 736319883 974633507 707555832 816303648 380261255 780268840 735434539 746627857 133348895 621026515 199260679 483344450 918955348 925498396 409833403 444491438 947127728 961521343 197599284 602963633 547196001 743906362 576206898 712984144 663383550 843423596 433478838 973299452 30620284 278021459 956941590 999784825 393733844 676449268 101490971 356079908 949192277 953962432 990109389 995701095 792640255 847645077 687463012 778350896 661924884 891748749 940328650 977333375 235323178 360598524 497679371 889612700 510988430 973900948 471493563 969730222 40771261 199347796 724516205 825246467 226483162 506602594 885203091 961099016 220494628 771631293 148781594 677482184 86747926 522773251 153286223 431396160 836569546 917553098 840967504 998333361 385229634 404312137 64444657 290223331 123151242 942629385 949127457 972152416 921920542 951225720 105421114 149973867 136670096 213128096 541157214 639003291 989825452 999598580 762692148 875380438 692736660 874016437 916845869 987076021 515311804 572359458 488682610 767040369 563431349 930960113 264187290 482705068 292917537 512804942 901509439 920935316 200358628 369025820 732884424 765055456 967146842 978241462 325192490 897738473 958748064 966976828 521301391 541487270 499020567 942404380 38412129 81706680 260322265 753576400 797829105 921268153 807004905 869127310 268582875 941156907 881533430 973219928 598666501 967758039 309363110 615005990 46364041 344257931 312263421 882388121 407160676 905328571 679283539 723126815 201103168 476488444 620999446 697208157 968868616 981436707 611833471 737821118 217011240 682978451 972092182 988385564 306006765 534153409 347622708 643401304 589850835 811485966 365460349 420194130 6233009 223182648 407006262 966715590 949346263 957009791 698097517 818903066 282115754 775155812 799740525 994883076 345246490 604551986 545662173 762134798 879026589 942324461 468187053 546404782 73245857 955408585 402773618 697845692 343196142 717411432 631570280 756726563 465563485 590080931 372645676 592126058 220427724 438426012 926803557 928968832 929727790 992209794 735635951 826873842 699910552 816262653 256840296 492745585 637197764 687987330 843548678 851458138 524630438 773922740 417374528 736090144 597482552 785426768 702740498 784982371 316679266 492299522 597023862 768297046 814096813 970882339 603102924 827540563 195094505 977525616 895232918 989829169 16672868 379985444 399910089 436279270 335566876 695234915 971853366 997004044 113562893 987600938 724390819 989758989 748746385 906971764 230267531 842687788 157362619 983946927 146022718 894166306 351409672 758200332 878254040 899586199 619274727 724648078 905927344 992467228 298793246 565721844 303396595 850039104 719522474 895232393 356112921 874482171 215807384 916088370 196827258 987992891 687052367 831034351 733297827 825259643 296980190 954362086 859818367 972307666 966198654 974174954 155155156 390596976 503903490 607372073 404714700 936127807 155521008 285282993 543427758 804905015 599408553 692446782 974891652 998802403 473084236 995589877 92716359 880773318 502913316 508495785 754576957 973747879 631474299 714121874 714634588 965583023 471778710 532204328 466876593 851906104 159265160 534689216 392558120 567324157 258496866 725444579 144556737 854040005 840183060 945270802 593294565 792087205 398324135 409175274 981145417 990174923 414994183 457002148 705569211 726004144 157988068 429582756 642835993 658321343 93066945 795768826 873239722 987557328 609611351 976431394 32341538 386274293 609758052 715949614 616492736 933145162 530608066 936482970 450951284 829407173 242828345 865645984 376155142 967496050 80692207 653930968 831136104 836852064 514405181 966716814 181932436 257499091 906545453 999401384 307714529 511173064 758752784 840701701 138747545 979023685 610386373 703231161 858938444 865525544 603426495 927014574 357513198 735803558 585628788 954869445 339247475 342088367 417489820 496305291 508867806 896617729 164996202 761007985 775918281 861969498 711323441 994850764 408907272 826736004 65049898 310745014 376259626 606787085 247531752 906315414 448774070 553653625 473770261 724124989 169156112 379069241 790140825 806043282 291498888 788391743 788256860 901241784 716763524 998415003 317613864 527571437 957939967 968133472 112366657 743153205 380447492 844598832 733077695 819096488 167817498 654324626 857767776 992404184 384066346 400274656 102833113 752291266 789771851 851841030 76153996 969742942 861100323 939846642 808481932 922005876 144087196 831723945 947977520 999991827 503026631 678305958 528306615 747900750 915144457 992151276 86934739 930883583 518926172 525158357 680268093 692858583 412109677 459086975 557297247 667694497 666074379 850710066 589506589 966390250 580523240 711303578 97409226 246295350 810955614 827134162 698844237 990493699 664259797 875961419 638039908 950814582 28267566 942405095 969584228 999297623 131552905 351922683 740910847 763183866 69612071 939990459 552948221 613120999 141530142 429352061 919069551 934982669 349090180 692739589 88587837 261222015 384775606 813899376 828097265 888244282 39876277 513929969 159440974 652523440 891496618 976165788 96122748 704596535 851431479 977267075 100846237 835118553 261804837 763509914 328767823 452667649 778028946 858032421 827480290 869942160 416814040 932343685 885070350 991082245 829454796 896423871 102489513 577540678 128981612 501065936 626769968 836069230 953737161 970084351 816426106 965593101 670859293 830263606 215798851 605259965 382393262 780063907 218240108 965880471 26998242 698494027 171643171 889972962 196941026 318908856 967343143 998317171 63359774 159996315 292666034 595446934 488809511 553712366 749399439 806327442 355829753 692853414 196256112 713338346 541271929 547516266 736249530 963996381 148775592 324361323 332340700 797357020 941190091 956393150 727536049 860739945 438649634 632223789 569188903 969536063 218592140 972290402 795426845 949825278 921007071 942492517 629888691 680857940 627889809 827930895 366549105 897460238 557516593 642838143 828464687 868914468 359183010 370598752 519547689 562828961 213246245 684193495 157599286 473859631 511755290 876056998 561399499 799141363 276122625 504402363 56942926 182553514 97838642 276701858 624031112 921011046 258892833 947525313 876311653 986339626 602397686 849228480 868198268 882902236 574003718 873242589 772899728 965928697 872841549 947518082 460253450 671730156 442309147 770516626 250957201 951663574 721730292 870623655 119927134 647309232 166848871 566984398 991126123 998853539 660527369 821245503 32064030 590703782 457576716 738842095 787240474 973567411 21633262 892442848 280232055 888169725 84248792 643639846 521037554 537693015 958919841 970578419 322744013 546060396 457443279 757222636 527770094 745041592 204167826 885953701 634950677 997764005 931842489 942012583 243148613 882547209 281397611 857930695 841772702 865043824 952397571 976621441 67742445 887594091 416896070 462097847 159107854 628637732 363701833 971028070 650402344 848775367 236974648 988417107 162783115 984827501 77978578 298043201 816454195 987282595 471585569 510378133 438880619 828161036 730657029 897217308 322244565 634349036 178481445 778397538 410540858 557158437 575749693 694881503 695819478 779118303 168629392 612331923 851311070 905700431 515793106 764935185 128714551 183035669 407679212 539316231 908711003 988748680 420682158 980247385 848156139 997365444 90643263 477668822 443055968 694129858 794039314 868260469 9371407 789111161 108566528 798947364 76793192 436398753 972934468 976226640 223738121 243758179 181571229 679949632 540536213 676527651 462578682 537293887 473421353 627963966 470171455 536458937 316807214 433951641 944850020 977190978 122880519 270805734 540641886 642044404 691905976 772904399 257173359 932293332 361428137 742565878 367192284 676241284 883886457 971867719 536848245 762438856 662305267 811041811 991159737 995260274 140889888 420907598 907887484 998368049 191383439 681236732 451912654 652434437 235482935 656540864 223528292 565713431 875549439 933833305 3876965 774045214 108946560 616220096 110829907 733683084 672125869 725452961 443272675 700692616 113558336 227100838 369493061 522851977 951039100 968634421 164960649 529616098 202339504 531627801 752299478 872999014 742024536 832712962 777598943 991108486 422297036 950611027 894482016 918776163 143179385 688851588 700427049 856896614 439411305 524630323 367559987 799303878 99245036 545683234 79276924 735332784 854356674 866014368 232322687 946481927 535348068 769545788 735499045 740511294 468355464 519431852 371156055 782004502 921881059 948662015 805953941 938382358 536593213 588834933 986842424 997700771 773767553 821173599 209106921 868500950 322079973 783915073 467510693 806145845 995699367 998576617 894868547 964311813 162054652 566597914 993894951 998701818 573542832 915654610 751013206 871942773 790846902 795233129 36729335 447550728 735993405 869462814 141242666 320971185 910133303 949662253 673695395 786728036 633583722 689791504 539943808 915135660 807318400 871916532 502841415 596369474 941181871 978999478 130421752 687833767 25754869 512802351 550695724 665552027 879864410 884852108 405029934 655487260 219484830 881548819 639878079 790444870 929800114 957922426 771390460 837121625 782224441 815002014 849881489 938950950 509008506 948254845 627100894 683959440 695134170 959698145 736040221 963475494 923359705 947739178 364597162 386986712 14028241 337696335 756490113 907153290 54208283 594574644 983781232 992495573 99304239 596847892 205668486 623451779 56779018 613301779 189135099 940561444 651824284 885425961 282862494 400043219 684645630 747552624 964386370 974999275 609160325 986013966 714435039 789162017 225227348 563144937 394130446 658609113 571609605 574658222 509780869 718301567 386533865 607364028 9263989 333102703 506442687 706255659 819904394 900390741 409333258 446332063 772717048 855602926 537736631 899622212 582813817 695128792 97280617 742632216 716814129 933837491 299924250 731925955 44457005 259093749 752503759 812837113 765944376 786901414 516476146 663420584 100869150 768803243 875671795 958483323 466955887 729552732 103993931 185435398 90339364 620033522 667476888 700364315 951574401 963160724 595057971 632855270 901339582 913588197 436218994 776944317 198204739 234091821 598759881 661421699 988806454 989974048 782527765 877482008 347047621 978492841 417495846 907187939 118206993 549505858 871539927 968891605 575555689 673072250 710678204 957067179 37635271 84115641 39935083 578426110 506099009 989944419 882563966 956290029 40174506 733837149 696064325 705544939 221903720 348471072 969957206 977864511 449793411 620139768 824513317 995881347 842089608 921029434 575302485 690170338 331974439 392441845 271474001 290681405 963073468 992119228 925906541 943759896 872344764 917148782 530218207 660384607 785919464 876228864 691559911 802639350 314695053 732313354 213501154 545762811 56671194 488435951 553005522 984946306 305411118 627992188 634201504 856116181 102730014 677492059 838037581 882043452 548863732 699215177 203105665 768170816 974307244 997742127 681383572 755721465 642114948 712615770 273361131 349999359 613494621 851791477 928410296 979428183 23678285 261887953 518703783 877412527 651601731 924191197 616443869 831979439 564204914 930546691 671247015 849098570 855366405 882323841 23083156 952611626 725044929 983197902 682052178 879466649 776282842 928911240 375738690 812619056 938789059 960616827 670417502 778254121 719568089 983655020 960652807 963724974 370140145 696660561 929221181 961860820 577333923 736889374 358382975 995083568 950338981 984230408 172782582 499694313 429173899 923452609 423199186 729786646 861215092 982464954 66358356 326714304 902131765 919072230 63478940 342212354 192596732 473712202 286709818 927210987 589079782 672787984 106139328 258387406 121896548 885653771 18068365 191210330 316308940 405454772 432461039 665228270 760315424 963115557 573317045 897442235 317452507 905819256 422902745 604937480 757454767 994051941 368962000 429047421 455816078 822204680 698903954 933944942 713585694 745261309 356399856 617001584 601681443 709615129 652037622 895894875 469855935 532540468 310653300 994256582 192809097 761445351 578065723 675739932 996185227 998335626 343389111 822687440 773065664 899162587 438182646 560437805 653023444 776409087 200744816 218215111 99519428 833786372 685439178 754359394 642907447 786814932 138156498 745637450 277420829 487591625 488672613 879810531 49602503 792885544 561844504 909697848 286006481 642586051 730087689 945964808 248708084 725013083 229448213 693314721 601041498 708866051 261170582 495125124 592045314 999059285 850167608 892257984 272077289 759641883 567295578 881966254 765829764 830551089 729378535 832800773 930310679 975295798 681902731 927093493 155474999 760935820 97956252 531143638 963728199 969097034 636995676 740425105 845323345 929830278 340700477 798279520 378906959 975490194 986523491 991172415 127603022 928869251 915881219 947833164 405245401 884638394 111189790 935135506 116463945 411216236 288383063 292071170 487796983 777380753 18307749 748518073 37870592 738766492 794776365 875206121 29201271 941253072 250472289 555109086 8609615 136223934 832457242 996214413 913812296 990115954 240000360 893512866 534918140 876735371 999479770 999696789 522184221 630801432 431611934 939611752 512506900 931299272 119156191 653381931 815947771 996583181 479446073 498101947 974547649 978820717 707273827 924283729 838703994 988031652 37493875 700872045 123097592 148531554 370377182 527844536 276066339 480311372 391682654 860886156 609832257 820932987 11993942 34071616 516453130 890015644 831988669 930116717 95313624 184153321 837963557 911405796 453669901 921426152 199889828 464111760 748611501 860109008 507622822 546203491 636284366 733229385 253398622 747000453 323807006 990471146 773614844 787134398 182652041 597964430 431371769 914140305 272090957 748396744 268969782 736316443 552615670 765810003 731902961 890179598 384439145 874466643 766618191 915205328 346008654 439741984 30249074 290408478 4757316 207542634 545672466 722845025 549432979 635438913 656469379 927632506 794675798 900991559 987878536 993335482 13657289 276741233 952524358 992717334 526714717 827691743 352861042 978959477 347186425 820503995 585077192 882117690 256549860 646341862 368163062 500803634 904884778 992201397 261179097 972879681 569671064 908730099 647619744 964444170 686311514 855404149 867868722 877033327 575900161 958403770 27639325 532609297 811794878 815743285 528358788 784002094 686114234 804016248 67777348 235657326 347495527 748844769 102446593 660941941 412527165 751850838 230516435 964106130 242468142 499165534 618291192 837032122 289032924 478992505 704097110 732831533 726983598 995292234 379700115 442158136 949329421 996195198 213970017 582966941 96276462 192651721 66516338 558090236 272557561 901777917 883557280 982802202 935220988 953264999 153876790 387239464 441208190 982165426 853385882 883189586 617780432 978230757 388748278 517677755 765336016 988178777 511098629 544133473 292919325 522464785 249484800 455960325 932752788 965291413 468583953 928171678 813228025 907964863 784614562 800890751 85481990 877371911 439979602 898517290 506746246 539063268 987741390 997687477 840206057 912705862 841922741 970171608 402038376 545919904 348674199 812503089 239984456 552255570 312014032 657010984 356493206 793604953 414976420 549313977 47629614 997512265 934333284 957039844 851757466 885664810 373048865 528199927 843073215 930666026 140106312 346621731 43060295 998791197 224002338 819821405 105861910 355606696 447009343 580583776 500500730 653013298 579062822 816875570 857943700 946967459 317085283 831027772 348363582 800944338 386750129 426525819 947717184 994195875 223205450 529706059 230734110 979638908 400827999 883370709 961841049 982062553 481529229 726821589 745099578 779531864 170690243 458099424 495441658 624184067 144441272 280788282 842739238 901746466 224122233 565400081 608553251 819720017 597896846 614716960 636973404 958686053 185012585 982874023 288752944 744783565 518671838 620968052 881586730 998948208 491772939 533018866 534770380 711469318 446456756 844646285 213018289 673515950 989292051 991369340 505636710 927137986 475299329 609590734 54171547 363177176 588092136 842359240 412835884 780823270 791000981 984982743 663942475 771875554 178666599 965320702 639458055 697193633 59587170 866592544 990338961 993722518 112513755 274286965 212644152 576166144 446593680 781795831 565975331 691084692 517087914 690751302 605153998 890081328 949933963 981139800 672203210 804854481 766301464 959855429 671797886 851117511 304452527 507164115 120052460 860796804 35123834 985242702 136198616 962457560 537379722 586145479 395177167 934396107 18665137 715206707 273119450 369656245 585803201 674875063 641806410 888484188 543936998 781021052 46286104 385682634 83038321 184372043 402350417 771123637 508305839 598072835 486775517 769697477 721067229 824661780 248874220 757137246 175921133 293237703 949227146 970359155 652549824 674015247 972457495 994633621 655878763 907916003 13205382 124068305 643062662 748022054 908737144 952081656 528657176 585044312 888001361 935744825 147591925 332167357 504503020 563994164 928264095 940950540 84244644 464887990 883599171 924528689 101797897 277426650 986899683 992649975 655651160 782905622 701658820 812412578 900807791 915902264 346947636 478676328 236750398 424682822 796288047 965112314 76997474 494756567 846306022 847604851 548808555 703926399 656365178 924805836 983070571 988044562 940888659 979548419 960527347 974201748 34343842 239879925 791868469 978641863 560538168 563701365 117083572 208827220 493763125 878256212 602254714 834574291 834618120 929851054 397652650 592210123 519800054 751739332 676118315 938535339 383635947 746327829 819620757 878244379 658308199 786422440 767646147 909451737 171792308 229360715 754070713 978240389 916563727 961920194 330050484 916981007 522663733 746382976 500900890 725056154 338565998 338591637 623139664 818827244 876370858 990573499 441040822 824792166 7739195 92952951 906037137 942843082 358806871 517374523 344545546 903863344 71256278 610973766 873297223 945021700 267748253 323986677 673245443 964576359 65793765 494936500 61646193 893574040 285147698 528598892 335219219 924338662 118360214 226363547 240253963 335093450 477241517 575015699 864305291 875396229 133484818 585351806 302839231 689724227 770231017 805665011 362837431 431674757 308568861 567871277 730323335 741218185 855617374 892889899 125282309 888899656 885968435 925367076 804701772 929163577 174067668 183836219 647465168 656773287 600154347 815467789 733596142 788415963 162672546 937088677 930056384 993054216 709232153 731542669 803317095 867854932 209793477 900204030 434548426 463732130 383644627 472561500 486076548 698654367 478043697 792918917 246415103 846402781 192377874 762168319 26219311 220678992 10815505 776196875 758556944 974779081 818791807 868590050 970286147 982818141 215655589 795756552 68800315 221412610 373837044 601865517 431483249 490190487 171047138 669637527 213838410 542386760 626822243 754951677 539811418 917025501 343249436 959911044 470771408 559510077 786853700 818878221 430581352 859402455 845887315 987069610 319841112 659758681 770710290 970198081 98813387 557952871 178236436 438931995 482400400 516790846 15361103 448904571 39121622 444378674 650890539 656187329 506426101 561259471 333520261 379298307 68794153 309903279 692678665 968806974 327277202 646243609 243963338 283727322 919540923 965443248 751792887 805710465 412291096 813471061 98253908 368525461 223199386 427839801 336255502 347743520 266615030 554750598 867862640 973060092 850087999 928986317 884963358 932148204 972409136 977831714 722515148 927574267 191861286 368171496 47708445 515513175 669766995 849945733 461087139 939971584 561019971 808371110 548920550 691406092 691746201 746105897 925811135 979860812 89582161 723544915 965744425 994707416 66357390 189304426 76812402 789791415 370762030 904302029 272184331 275111261 796151915 849935058 336640847 871975830 139688950 965014937 563934479 740328988 713981360 732241661 64113617 810245873 354766928 662558200 468164423 667416718 644142322 840456428 986339755 998178487 495341853 899240984 257136309 874606491 728305670 968020167 29285845 201547489 940524195 950171854 685456358 727621179 80298089 919911128 897869175 987148800 336740506 376822238 506834208 956078366 654330067 714889486 523224830 830387590 269969569 418578873 87814584 916377832 915828370 954859784 285031281 884213988 911090992 961315191 912662620 935080702 396342883 885291340 923542352 967806989 393773603 942430546 946755533 949631457 61235255 295075822 188600330 868844831 753023530 818235226 166822344 599022107 194065913 250316230 840725331 876252702 77039458 967242769 372220955 873287289 829277466 930278209 467918943 492998838 249847885 935344522 755011658 779062019 156039238 588994356 612109886 876959848 958586819 971515935 655511969 661259468 689988222 836864283 81602108 557442035 38621242 911308181 903347855 931612005 808540745 910822347 383756848 756895583 798583576 805020026 524207890 524401962 684594614 844127741 500810332 608426930 898226714 964594438 43312259 181018962 280293497 772544555 62301735 641929026 972474943 975366055 153853002 901030708 125641279 280032009 445697673 908240718 235029463 450447032 386115123 758675419 958870441 977387807 761903229 973868583 221072507 523884843 931040654 975619135 422001513 560592242 481509277 493609901 234875504 331709637 78844038 792018514 65761646 514900340 557209775 640170309 684701500 867952574 657271952 859842732 942096123 945458879 125732320 984875369 170436755 365941455 472245316 895748378 562338527 951057201 745120213 901192825 833012057 963888776 801660693 815198245 745400458 785006724 695659466 861456127 211753308 495008547 900222916 902725416 385691217 873243266 555960519 799056526 22561399 495975999 995751329 996300566 675609545 740595538 292854045 581064571 227476013 688986848 151048229 764082686 471630471 814061821 720130215 755263980 537811594 821137101 599168723 739607832 720528368 845683452 115958896 763265164 554647498 564633231 944058045 959049620 579621031 839454732 262631632 343873144 524921589 637929990 821817298 852676591 513326456 677219083 90464892 864686567 927765742 961867878 654581922 945517435 85381813 672971788 786658416 949396400 684078086 822256558 921202436 968845204 167145158 495005734 883646185 948961324 172719236 333796281 24774183 290235098 516444285 657467345 292847769 576570087 818621577 971606092 602922238 822629840 212426397 616588359 674716576 908181675 907535134 941994545 411337297 498457491 977426755 988468671 464267000 874258575 510741900 865979248 994849196 999706726 146296610 362244993 286342615 850684754 629775591 650378089 284840509 970328594 789178715 864498999 236823361 817243828 323253811 848877292 697233492 723706842 567893166 966246858 456337794 983404709 259725425 730040005 494281329 514517905 215746306 660378557 835432275 903197647 185405149 214446980 736602863 907176571 696318706 849928883 599718419 969738098 396868483 571702270 65504253 126215507 250757951 282799293 875095708 916704363 424280207 962774419 140152043 497501638 434278736 473595480 656919987 912904552 45215847 129994118 570824506 958538311 817544824 921235364 293063821 676182088 502738988 958121898 801626567 969518950 569558220 618959193 407739971 588476949 127470433 300798803 725292287 788320002 168730409 333197842 499343442 927511506 202841106 554321821 271633789 419820353 11402620 889126343 321361139 470211576 505113526 775136299 481048061 654760305 325515208 776522590 196096407 969990552 922088421 958260442 497755234 704538588 71777668 190798573 96028664 825768274 759726738 917175300 80510977 624532207 583298036 698075540 475607188 515282359 325838616 679854003 386077717 552827127 764410782 912758470 520056397 917473790 850212205 899161634 763840382 975838572 681698228 765985381 965137265 991051410 202576895 437895507 91258346 400731492 744712085 852176320 40846365 631840665 934385761 961688914 216713515 297827699 582792462 989145144 633498376 808644490 305203109 600202150 32763271 787257788 47386738 460702249 814017411 941404222 741640484 889655760 637471282 810269773 72494115 305350515 257276790 534629268 92124404 388905431 404968202 535464434 604918782 615290147 51254660 950354714 474524414 715114631 551927546 718362791 427321257 766208220 639006610 789193151 406718391 906476968 91811324 866617016 924720953 946295935 675987182 994240069 851201839 984495789 724281557 950785022 450251635 521073010 17490765 160668738 780554874 865692075 356066664 821161303 882864481 976462214 183860339 384133777 792356254 970177575 807268005 870824910 900626390 960071810 18392059 232945454 918751938 984693737 414250077 577960302 708093225 993950988 513382501 866466346 650869692 654051915 53467018 214148146 66321868 542694545 64812629 886631108 22503792 719563185 139977966 854637811 307395066 896117057 842660382 974480521 419655702 947318046 318906548 337888474 936470649 984275408 702695935 958007617 902706352 938934126 524396733 767552647 375621407 704080517 90096492 547462019 825925788 968978901 563979017 673501263 558075192 881677340 347872621 609943723 433169506 794714312 80212076 612375514 645312920 756275739 776395961 846096513 212974830 726493899 744851535 892006216 558298601 964080779 849286379 930899142 598446176 675552365 547964496 786256353 789534960 958079123 237547251 410040470 742096266 994210598 466815549 940658830 622964243 925530782 609931976 918786464 504441940 954553038 134913564 650994680 693124817 713875073 185233895 414151415 114568362 510024062 402805195 900579808 367636623 766329699 120717578 261889067 556833851 869554648 387865896 634278624 818949174 835694444 253147449 526921654 717621100 777245418 791673312 986713934 590083948 737566516 619728887 738865836 191827673 478039592 936527391 990027147 983652050 986509214 219515334 674297643 659410927 751689426 166175905 963319856 734089759 888144255 122619615 836437166 731823044 857252123 665204965 715722265 52976197 630568540 924736015 988532709 932581637 990644542 502904225 875510850 498240552 614773373 905413923 907031598 614865199 965355866 795785190 904837073 359044628 539213818 128707244 900778301 843172139 884873213 529473975 982363696 843990854 937949358 362990376 513059950 50692304 797417136 548307869 652042570 697458025 890388132 506937159 724783590 536138297 600401507 802072920 924424913 505612979 906586540 706670065 998549978 227741090 847179746 395121196 610583251 900732089 902117239 661357648 742074547 67892394 420677705 66999007 482273387 451625259 699830376 385863930 870961947 25413988 565806588 647095330 758981283 632210453 868487811 137650135 422786433 217524691 269399183 410122820 429238984 212889058 558430816 764388381 804624567 838779129 994462753 210358962 402314048 775302772 814317902 632330961 673540362 4001265 492919740 347515423 900600561 23924325 507781221 648524235 916359608 175311471 947990604 95027887 917972265 51377665 783393679 339356256 546854485 286960520 741581020 814591685 963538150 385650941 476789596 887488244 904036943 439603557 490873867 664693250 855059980 251503948 283331400 76862960 682638544 630359773 986635949 736370756 755039781 285475438 464835470 760298823 952237697 755014722 962078674 14317331 344248205 281833960 794897596 536984217 980128712 849393012 954825193 802136582 953049914 254238183 331513206 451022746 811146028 259511626 978538888 13416507 659712397 474437223 532190513 890684615 966412993 199856855 948346754 63003964 805146056 696963983 729549688 479227747 580184934 761568952 910429394 251923839 308823189 593318460 921138232 564858039 804766219 382399715 685684296 544282816 833679976 552388978 879181730 403394091 947545414 269311438 341832770 310519891 385540192 36555411 897013492 525274667 991000834 342777259 966022226 471664696 495453715 711163243 902844698 220645407 410439564 227801316 612009625 177613103 411297504 937242374 971836729 9986979 983266654 442930041 725737672 890825053 906798558 412041859 565805407 332531835 778362341 536013210 629760873 685972106 987908878 851414315 900981821 407042306 488755580 201183275 733725584 149368229 871864128 873557081 953536803 465827807 657119278 394569745 819229849 7419350 420592755 85139951 653193591 244411264 427054317 208661132 509579647 278694452 550468577 939032786 960021825 708517958 835368103 425315588 581487137 159370313 541878182 852704105 947644114 227393473 347067849 336471311 995424961 294491090 442358516 308660456 607564781 342599002 756327569 222443192 905885049 13916284 818185633 338280831 667474390 790602756 852444199 112871797 276204299 451815652 607189046 92402707 439717726 522219764 933683800 520202478 629596430 658846793 939662990 833461178 843051454 174690228 265260195 377955152 747040640 504197905 513929740 815392482 853784482 239730912 752493543 218207090 467990949 37226832 575874927 415891267 959352952 53833483 588619151 529935219 998243437 34421488 88159252 56309931 682774153 995295423 997279834 110379795 600872353 140416574 382826659 278241872 983360101 810950856 946188256 903122374 953427453 665805004 871724645 739039877 877158118 786852130 788571161 82414250 717496934 646209111 947565250 697248415 987819746 630675260 754921378 488990617 825193887 609500048 713062290 210721455 981194020 963010867 988289831 590722877 921321374 189655205 705652628 631031129 637142481 67154223 940641462 94042084 616949078 662917527 823704196 987563759 998466347 5121212 490390464 411005912 419706967 255278901 714675296 239267549 280544522 34320421 587138754 174246258 710493065 9350198 261344663 365980389 904921383 92914981 922662334 329992959 894499459 519316502 826132565 696402489 928877927 372465446 936508751 59991789 530624199 192578035 535043037 222575094 660873325 620069883 854275174 522269696 750620235 505803298 793162424 941582001 988285582 659215605 724691529 211179034 685686403 337207107 405498445 745753022 777502190 193492753 584480074 28069515 640493721 746442347 881799501 832640694 881635095 889181495 963440580 727854473 752316205 836521792 909832645 224170396 691793012 764489718 971311297 734334125 875396353 976000452 977300831 355268989 618644272 494657358 788155423 337886786 429431171 983222355 983432216 355001406 732631714 764095580 903925491 634145786 697848055 216428610 510598736 782818287 949815410 21318621 699328678 985661583 998436170 43953749 690696907 260759457 549312660 205757548 905145504 455850604 772588776 374716536 572162455 78425195 81767715 113622773 325360222 438892229 990362355 233175376 623375911 47337133 856450887 750551744 886117154 812957995 931498587 748057297 869163725 183026362 950227281 275583382 741174635 142444372 342747095 863499782 931796213 771064526 775942460 991783729 995537779 574920739 860756912 733431516 795392785 286158716 437789685 718973468 843021954 423701524 453275527 730987133 979993587 383219050 998875476 781463378 994824001 446638334 660025659 468105658 518841142 337004771 678288310 450256787 844265707 369632632 644832961 347431281 891064264 900504280 990030640 911976046 940057854 648230341 816419464 668706754 884130569 973743873 980560277 314351920 439577199 204440637 572058084 198481842 349887961 667400969 800026627 875144976 988250145 87603916 304651795 478661428 577331027 629993580 969777731 920377356 928373955 987676715 997043559 545083950 660051631 441453745 543623434 853681234 977119580 331343240 614544518 329134426 641051011 613492297 870989584 676342048 692882700 566594731 964553099 961135567 991554795 740571974 845145960 404670259 796304837 307071460 798512841 148298069 413964457 144977472 598964326 503560821 583048843 419248541 576784054 771351521 800775537 145644932 190538703 76993496 425454298 262768639 352598662 162493757 260122716 224585184 675209890 329780640 602570042 766061464 874695901 216092482 942763835 440389854 515042259 749670190 828096933 520572600 868908088 993968529 998674961 843934087 982333476 990295693 992320309 297799916 974920738 945903818 985522674 145519309 659304825 813680537 931877462 412734683 749461211 772275148 923120677 478786682 928582707 147474632 389047552 490869937 701907930 785814536 838172215 443431479 470231258 814179469 830815250 978281330 983587196 27484986 786323122 379238210 703410613 865299575 972807870 231010303 598106937 215843878 914215553 32264285 901137028 514196999 706385813 611671457 944667933 448754187 838183634 953242761 984647697 201062813 434523831 287060325 546490211 132503083 831277658 205263463 343600718 298201520 867704035 690915002 715006287 555398241 752489182 555684009 845097333 740245399 933726828 454115733 832937091 120359661 765916184 556484011 598738411 12535566 972770198 16174937 279039777 261161331 877188708 674541426 912818917 625187911 738697342 385902694 729889707 902137294 976676910 49073659 734684887 193926633 950416063 195737373 973875964 326581492 532613771 620938091 678842113 729851938 764121511 544821188 625980807 458619854 705897973 581008883 699620605 762533841 769794818 155025037 940543501 746658032 752275990 59017354 311218983 42412972 790770935 507523110 917559680 625621020 992995289 58799371 291871532 614900671 892249015 253159321 341457601 762372793 996562867 289970068 407359716 626739663 723105745 674436789 812010708 341020738 710686332 388732756 888657617 136073645 790911399 862701047 908654946 575848290 777754832 14198149 176584947 682354794 898885711 242017326 864257284 804052737 910963891 257899731 914444416 285094293 493853570 181273917 413075776 3535654 928841840 152800948 565932938 294407530 638202033 273912304 516243433 458300204 491660742 637920162 781874815 905311858 982343336 480489826 495130334 771437910 955345029 143071075 376896964 499307236 554694838 339160375 453128758 871856861 959259442 784705143 870524695 334682139 849690755 209601160 790497131 605912585 837273906 466770962 655175813 173708792 709183237 783079027 894611967 905404821 935855444 195194348 301593109 310287645 953787123 945754271 950230671 528565514 884795511 738320889 912154264 127728893 910424919 865142958 958501580 945713249 981048741 916895827 956763779 911381377 969449761 984741028 992634485 500440522 735155709 268493353 315941191 833687432 873837333 278866280 599807648 856669733 891566678 540890539 555554153 688699393 926552217 633270309 799723416 304877914 443067027 476973355 515312634 46288246 330641581 365190818 529585416 361935452 595599406 370482817 641745336 192498029 550158762 263941614 264145218 253515360 917815137 831605657 973725342 120370521 605697033 822139241 899900175 917835574 963400916 179461221 391392898 113056316 900629091 680426490 955530155 652240421 915565021 863461164 953956071 934631551 989144881 559193874 685452115 215965386 351251844 514524079 533702696 962417886 963892951 573080944 662040065 760906315 954393923 939461993 954102437 331279900 876240595 796651805 887768640 95757002 510723440 720787584 972519220 516233987 661810519 593546257 614876163 104603460 118597151 650250804 848449246 900002242 976812440 839050920 961596774 712553357 960450918 224173061 569553679 412620597 599501585 365299405 439132654 364867565 644466473 2626786 467657835 951335568 995800479 82971447 370635852 876563065 984827898 94481255 420570275 7629538 64077091 516227973 665102693 106780866 356727672 229313548 792535320 604751194 821859319 81054950 256908755 271189608 814473933 235430319 274713136 97355273 274867672 101901854 102766862 232678329 399765014 964752606 982697481 305624040 363593900 16077274 130118157 347088156 703399462 211255693 931503213 231730319 534230687 862390209 872058313 430309461 558361283 757684169 839040500 331322272 484452584 354949280 443171678 245774575 523991828 305753855 523215738 40696663 623509280 394579041 807872342 482411325 608788796 549936826 721659206 938372242 986469335 764831583 897246807 425534701 991092270 468666126 709549066 52300239 573230397 799977102 973992200 118066795 813731749 440299458 941517829 386519277 671869369 383226350 421718603 953930246 955212768 868530315 962940184 403710317 972232264 86812844 797310573 81077744 586580096 11133722 437150940 414941874 885496646 628394198 718136603 530661589 928635124 407261728 532078684 674194436 978423330 686303155 775358113 886912603 970630415 764634446 813964546 285581367 999894030 81744448 710406562 4303983 988800105 300892568 378201137 251469913 352366859 889438946 998544759 88073822 398777750 379767022 994259808 993700095 994644708 104505279 307279531 138140833 732743062 608382003 758597075 337902570 407373802 89366191 846161169 398672691 675664808 422850532 744775960 337472477 558178147 964890931 980386266 605255104 744871968 539397488 627059016 505294604 513770890 808840468 849232670 248383686 531772073 167269942 183093310 852198424 987721682 233353891 444500416 131991067 697271272 635896232 944242970 441988803 679210932 544860654 804178581 107853009 138557116 639022475 776111654 372877544 622181708 595414192 777299277 951475498 991465946 852213622 929581227 559951721 607866302 990527494 994932531 602727188 947241304 762131779 807285044 322612455 655161554 14918212 60161893 78187829 870656401 236406493 412619714 826058373 850946363 124300067 601494040 206306480 207894606 45503535 187110430 468087258 596098164 333746800 803545737 942203722 953118623 689165346 695565877 682396052 856172521 386272095 872483090 882504612 936736345 74731681 981841162 988277458 996677106 4390421 907391880 484528072 895064767 503822939 972307938 11125806 690728391 49793605 949606223 848527690 859328663 186240077 573774160 819010603 843869866 529066572 912222287 442451437 885827140 560514968 719125682 625340708 657327968 235346112 351909200 818447492 848148879 656307058 911991813 975151850 992743830 888023306 979986869 82661386 790296025 864778754 938490422 391042321 980487094 628495072 844439286 415428245 661035173 423790204 476962913 340738956 495361156 752426956 881240851 179013592 553807063 437951331 732891979 580214110 648060711 749065746 972387934 423546780 829357560 183789481 596527854 700039288 725312095 73103237 173868072 713356924 814859085 275081861 707631579 725098829 867262866 9420984 183937092 77275922 908092285 694857908 740028975 74739903 657642072 775165163 983207277 872012200 956832244 283466128 285040359 690130788 751803704 988899769 993710842 392614777 605353682 988843008 991202586 3333242 396380687 888503612 899509560 175653127 379605419 606204632 684360861 887088752 889162521 617195197 990928258 737977042 945030097 908150608 974951527 877577173 966156665 435285710 908860037 325327958 691164357 382546471 396694014 559886036 887324596 722795448 853088069 289866036 977236100 787720788 821980992 975838263 987983524 661766962 860133541 543562137 877476689 912943400 981712636 470004842 691949289 329036720 657033599 224651850 449884106 249967806 736346862 916554038 958579512 139937938 422170382 620984632 876856876 233036845 438197718 39717219 495368453 52565824 648089716 958762413 982256401 862942566 972182150 737964021 842291434 330754155 426003990 930282345 936255952 561564627 921005538 416999864 857545140 345353856 607862549 394864505 715010637 466260255 666875442 73068582 872879804 6424540 56555805 192002031 552229959 287652985 832704463 332011322 886466492 93641155 97237195 233604479 551690054 543506449 803380602 33802296 684666216 385406617 959789396 391329748 998450548 870697601 871630196 709864733 745800068 203867431 722846951 107142969 500574773 229294715 956258596 949568449 996074166 490955204 935836996 498792029 906325604 583480858 682323987 171971599 909949187 974332325 995078539 487338869 657436873 674501680 948369019 365983389 554088289 811808587 837776378 268303559 482061530 38525765 126572591 158697557 952393948 429552688 457326542 818352514 985750862 636123026 671291066 435505665 485466508 852804871 982901263 4980933 995585924 231646117 256862085 455777076 933874990 277502666 882371608 332536069 660473215 927600100 936658907 120774244 736546378 483176759 747356562 231893834 624182167 596330039 629313828 561092221 904912575 299599818 630939060 328398445 573823877 621377342 865611038 688617458 992946412 291534185 530357798 171589984 783813320 110693719 301511251 859285692 991971479 546076680 998039347 868821143 882075350 640588702 871046765 292413523 833148382 155145280 282113705 521206054 815563563 163903707 919047907 443144829 751753949 664328754 721434336 154045820 888438569 351271723 353131891 761232201 992424324 375856866 667278527 241535766 386143121 247791696 459988306 537750588 570867952 302059342 778265610 561886911 914947481 942507958 969071402 361234941 443157575 625421123 670525621 656370733 859796505 73982758 75123564 908103961 943905984 604082616 942433811 648799646 780125655 712327973 899154078 527696171 768800747 686938399 734361417 466441163 912499682 644795002 714780305 514536648 781259624 570984043 984067735 350309714 895672985 403259019 814274967 166099037 203447774 307559059 852771784 636523770 729006865 657462677 810766386 823347106 966548997 62933030 803303665 235288648 676761558 825386269 887927261 313994307 837734589 406282849 665989936 592512438 901521166 146230373 990649861 417405564 434797977 192828843 963254088 967849731 986699909 684331165 833507533 123232085 670964782 953215436 974127394 205151937 440550161 551085805 564613650 787287784 976849270 90546382 592120590 228725060 755091969 589542684 958993075 259907608 793892877 753581240 993387964 863815173 955226403 866758022 898330337 561666371 717762663 919694379 979739182 442278139 627640582 421307847 464705814 777687576 879021873 5580064 414497021 251106484 780568275 492810572 670700806 501450089 685611197 652715737 731835986 242142993 590967420 674284625 862938241 229073752 364946596 549340778 636513893 195516858 233133695 509781650 820842935 879190707 959880148 815669877 981397143 740419138 776333981 711129201 941929254 970662216 998344651 683313419 870555441 539579602 612256126 221067045 557194316 483642173 609897497 569184550 693739266 127552354 757743762 757568972 949032721 352635729 441011669 427668202 621354964 651674833 921889586 167882608 867854848 903115622 938955408 404837447 675061616 479222341 767087002 442211491 765538834 969213116 982713009 197129230 846625982 749903136 911833473 987024369 990893822 506696449 814187701 425606932 859184465 792239978 818682572 504035716 554501179 604052215 669510165 645567186 981951519 739811024 921686308 815462015 921159509 257679140 362162334 87248232 737472222 39727743 164387200 435741784 638958018 298141460 359066054 256305836 519889735 151535723 257246206 151315311 427077658 968365185 996990260 202860030 460054915 95080131 557473140 216367899 264783217 162545314 339090606 654202510 722299275 564068707 966904923 257480627 716406465 17649042 588056533 193203667 360269048 500634543 667523732 658468407 795907355 773028558 851402561 929669419 984488512 312799059 399561625 810961111 856915172 536097694 908082026 680155955 885116999 131410159 258357339 187822703 777061476 957760456 982555541 931568914 989812782 260821067 435104802 511439435 977618833 209387404 824658074 338628354 743711767 135568797 291606104 451193438 849524834 388844355 846931482 337053547 876800870 333303715 355054166 507108253 844923868 729171128 831108917 277554119 942494120 479403332 568376105 568215196 700706969 399942735 608331094 822455404 861009138 754320974 945121921 405271155 495494673 800702564 978353995 815795042 996487714 290663815 657718694 545670280 694956849 399991768 506643426 593964087 833014385 321888005 780436703 660462521 851044625 412598832 497666825 169196336 529179288 923650123 933873001 784833292 786248147 486746292 977576608 963072783 981913183 426645847 463680653 324897423 900320423 895024524 968027380 906795796 921727083 698334205 713687576 48783604 237204538 252465263 508122763 118787704 858686497 616078275 943920801 287622903 807890770 971084664 990451669 139293294 178963841 138610816 151832237 42830022 106443103 140570072 405424089 343366709 738229744 562853088 953684075 384838451 790702235 780145857 929268244 489939210 978448837 231748877 316935963 329997751 469032468 252935313 685545224 223678424 899065040 525604166 676678300 666450987 820648677 477927237 669652298 2350853 312803169 174945678 967576759 1720886 829316687 412460055 571342680 255563134 969561862 569824670 744057916 572164462 749030913 708669744 984017346 534323165 653345293 424006845 431378253 227612031 594717346 224595016 916840309 444696946 951080663 79937414 953316482 590132963 814974500 219376562 953807596 201794492 357355983 659461285 896958541 427490734 895696870 113844477 645237593 689347276 825935535 108485474 556453240 681915096 741888813 173667180 331682739 172989287 473393934 283704086 863462747 686461616 822853429 648652270 857543571 344008448 542982061 596284278 664383095 669724037 949590547 151240089 897493991 850161181 852876274 117765684 937824544 592943817 845385714 14776282 485343872 836361702 991707586 755592341 773627886 800744056 895954959 176263026 708960996 368975811 921304053 19863219 314420965 357873193 691544424 468934863 652730557 361621938 584800063 134376630 158595658 361775779 686022554 384730920 655822666 527707853 531402791 917404730 932487250 727722627 924761478 485135659 907143043 627684006 858707019 827505383 838683281 52517014 414536170 501422482 800213780 300645452 446562280 696734155 954931346 517654042 682106040 521977086 534691671 940440579 974142736 869322054 902048406 479040597 739496171 168540983 793283132 972102109 991909607 980005105 982420059 825263582 989723318 716762277 978982560 713319912 817802866 394712248 739273659 489019821 911518784 683647388 966187770 305532802 429407588 897584869 951979881 532442404 956783804 420724279 509027047 878418423 898248091 721284855 723610002 265705071 305170373 942540671 993868309 133525203 675802210 163460166 787543610 852996327 954742915 73554507 874273938 337248288 855868820 734365922 797571138 264826514 893018257 756632077 832997144 987817351 995799269 80645023 836206124 246765649 690091138 283673311 363244559 922271485 938394688 825973753 976357220 644152012 929997179 269960779 541021266 277860131 782047069 873392590 936582429 378613855 565802819 394497329 747079143 354348522 551569835 220574388 226132954 656384616 932172396 735762060 782657169 30948566 396758528 579516960 842184804 483837299 618552862 614698859 887190536 377980955 463103754 829552194 900454305 843412336 935552826 677701318 989727056 603559348 784536296 727284371 869071414 201998126 562791951 360858304 488209377 892846104 898854335 458241077 502172818 557360 232253900 560619421 920641944 564861281 920361562 319478716 403254181 27743205 826649305 269067354 892047740 571060668 910966169 181166450 597916406 655563611 870302165 525079272 965698151 625000734 818865661 980372582 998241451 657802738 733090199 480354154 795332997 184357382 536837755 579150258 693896022 277873632 869780436 267657379 439334443 609398700 678927330 366638761 838233642 418035328 716519267 362033802 687899120 936844749 960290384 751603269 905125531 757448769 811445497 760446123 784144271 394424368 763504394 332460228 696378885 333894444 450827449 505035699 516034742 839327096 937344277 553202580 853300542 660764320 771902691 426920899 489457705 779475109 965125347 764637066 978195090 142231044 249570895 290642515 798389306 875646179 951080442 386560700 867399460 659975209 900005439 411047718 866590333 563269065 902068414 506260271 600053049 594955773 657212505 748457101 790061665 993213909 997143514 36951571 136228991 30059956 786061236 997452204 999394159 831632925 961668942 589395713 908369470 900442313 920578710 869357921 993811212 278977204 799400770 604754604 648230132 681486359 785802763 43790174 468334936 8099926 435092301 227425513 440499678 850651633 933058143 159463334 363975399 230427280 850343946 982699652 987123390 276027028 978422713 918400995 927966589 676724092 985516877 453699367 870522994 102502233 173737054 787827703 797137909 515421346 624307972 843251415 875572992 611079403 672575110 997236433 998619957 176794577 837351886 95546732 621720254 947247056 965869504 812380187 994863062 996609946 997919631 374200882 897410680 790478540 987695252 290727405 923550776 461210426 995817400 597157270 707866153 829962740 890890405 356032483 815317313 855561904 971620973 498705668 543586336 18771162 805795287 937133832 942592140 578329120 604055142 575362733 838497681 710375355 799048269 68136527 615930544 212969627 965912489 884876808 923244218 307111228 653156109 600066591 606386005 586329778 702537482 439107530 764527903 302667772 465547464 511237598 984737312 118433064 550193277 503606941 857298643 801868041 967052659 616109048 756052559 565702269 656182436 960182877 979448758 975954060 977163281 208935108 853679587 238324355 314091825 76516236 818894290 843476946 879311369 21435088 82862196 177568672 325364519 49580875 417979331 14957540 425215720 298936728 823445145 35491798 879015570 793530461 819683166 350862491 677993943 471904611 769550053 370392774 794140657 24476982 523660093 881821222 992384973 636995723 928112494 705627475 908057686 920261474 932864949 575477043 702828389 93951571 194944483 333708749 678775904 389903018 396806804 313064597 776138037 328815723 405691290 676134365 742818400 702414366 931309369 98242450 910504919 192912834 706395936 182778241 567517827 374163645 599871163 591764128 610253937 683611334 882585427 189083317 484674069 271123743 748914314 777016490 961424217 831577710 924355146 697483085 905916491 705279983 830373395 729381044 938496078 901856878 991183233 202056922 518714669 626898466 930746663 208355746 640698912 88531692 954380560 664119697 819763085 89932020 347718992 186872689 203900956 838637330 955972374 900150248 992837534 201868987 584242986 268879104 534190998 268003543 497469445 833236818 912285365 351446243 715528400 47328956 66057090 578651908 640093696 218285682 518741227 413930167 854577725 424590106 480846829 362139327 650890753 309281135 457953594 842860781 993771188 786808376 841906132 9358415 291802746 724960435 894076144 383495966 384688201 227784865 362824779 86459319 801790126 51700632 484239505 425339936 508564257 518720586 560043641 953519770 998940716 495407912 723991432 997079937 998778962 911808929 981575278 628223413 701878693 144224952 452281756 218039277 473798976 234201739 283063992 762424256 793827835 422388834 556077305 317222705 925545214 218830850 859040064 562712637 813362530 818691230 937826477 938444207 953871315 400991290 991272776 799854028 846595351 113991731 566633028 140594224 633375187 988024023 989637278 907043858 990444395 778095848 941074685 544638007 916634768 874229574 901979360 640223246 813771231 134361324 274904273 638715941 978208854 884462676 913921736 691849386 900551585 647780080 914955376 470493871 696208080 667875306 870364312 328039967 778740831 470676296 886951472 403996272 615753977 688268678 962627215 113155330 613140589 331743613 543967174 583297211 751735737 566777394 870384959 16783256 248899005 312806460 722658064 752051088 864247173 923848896 965651191 991052539 993106832 273534867 779611538 654836964 862006492 204240296 988259447 251542704 286852754 897524034 999288859 94562834 598251953 272431271 610817213 731583852 912627708 179646927 376175985 451676799 998792057 754182998 863723109 909284386 933024730 987734375 988425608 11267864 950429295 66146712 449520577 838959009 950932391 495360174 838000297 817461771 931490057 302749044 799961599 50402964 111483761 187198578 900833809 76645920 272492154 59951020 929770489 886902934 927596971 396364524 462267116 220866275 755107855 123812904 853310502 808816070 933861798 797355226 817889555 227608756 661617606 923673199 960286918 275260114 516559966 676007363 829520660 946573208 988372407 434595612 848960709 716605172 860642166 111209739 455425342 56458905 66187350 391291941 640400498 672435348 862620093 991705372 996684440 824106947 892388783 511553859 646483424 779996631 888096675 535624814 684237981 162607140 178712978 405586226 851231018 499470424 990653492 303435534 464436829 997362270 999636990 983202847 998924853 629620037 935661557 792797926 894926031 282029828 807093714 106859700 125635837 947603600 957730661 932029133 934748709 18040667 951539498 171136079 326106829 734564909 947539593 33627029 528676037 24097010 804233289 91666214 140245246 388688475 481656521 529536732 671488256 276292971 575750900 834478719 917230178 375289587 498015430 574009780 668079084 892201751 957064361 806168312 983520178 136714455 873416865 640590946 901892067 753341980 995591081 549163144 903492480 322069635 387660003 160217890 479461846 816176851 987026589 468411588 648690393 291606312 893170076 112471684 509128330 175975704 918064042 476601625 903505345 536955296 647019942 936906094 976451094 14205503 281620224 421162629 978214199 319073370 609801342 603460443 770077842 253964402 818611259 608551374 850523545 508134481 549654804 425376025 980397310 852822731 904650267 754280472 812472913 796754029 951666703 176681433 385976123 559206353 833261050 334183695 698303888 15848038 899113867 535662891 812161459 666845153 821337613 200046596 220472832 259837620 844343597 143828125 799354512 884310864 890044078 387702197 573255405 807374183 911638777 143876435 811475661 307267404 922484176 995665757 996405563 141568547 203569865 476617362 644707122 858414758 902041168 476960405 594481680 584483582 985726593 120720456 570881921 531642810 679094498 549012788 710022362 189658825 226910279 958735213 960947843 538404078 960237697 796512020 925403791 50023023 560587997 22632688 852171513 749370552 835634233 753573389 852084853 226789445 551235447 957305356 960645059 402937302 533729996 191232672 946380780 268417084 535560250 768755909 823361737 589470105 819892564 375158888 680711153 157628043 715905322 285414452 780810787 394823247 874104903 667358030 988042667 140452558 276744703 496728763 872502741 563270592 951366889 212303624 640883497 407841070 922287529 231085097 671842108 452472429 733389935 887254432 909442150 804974984 894470741 652399417 693734791 742834835 874660705 687509333 789124645 169259645 879107852 361168356 780969317 758884519 909030897 58169056 509410372 284397785 692343219 281819216 319846750 826279055 871081912 810028427 976029199 910189434 947797147 397376367 819633591 66057376 367396048 34991933 361007934 273324401 611845613 882485407 890966880 239259593 646117595 222257794 502859847 38864979 426741854 535292136 883070624 986766531 990984535 958087283 994067847 405027439 977015697 645370765 755234007 963383142 989618374 95892985 701403176 396968020 540623067 865781658 985446242 339631314 898200538 298898543 894287382 826047991 929885505 850543544 900336262 20292685 718508363 764633685 805575322 944243406 962911205 974305068 982822153 922577070 965273510 384540126 958998350 626332688 814449278 544815031 618127384 277865215 519685793 779357706 964558192 296102193 448143369 86267993 235073470 20037038 34138866 701756769 764173539 237311089 292452588 348613472 656141980 39772753 492345032 900415832 910179730 810982310 836215432 821170614 981347431 998926970 999739083 656782968 820248929 870073774 930294417 366708946 562550593 504638429 937718896 589428432 934645298 250833895 790108529 101012718 908412446 342098995 372769037 259597140 685325993 889342698 982692241 578782378 633103117 771642070 788474968 291050625 364628342 142428689 996745261 794091429 942401021 600076053 621235290 27701090 847386870 848651882 997623141 84452181 411151903 247638744 952013833 785354604 832757515 19398345 608478287 245325563 582664574 532659843 765562373 43946453 262847510 390288503 701316939 251664268 831008995 746967623 892985345 241828976 422976703 436426208 686174897 403314008 484071881 389128623 858187555 411910018 895740158 189102747 994475444 735826887 814782792 89995864 247579961 822128827 938534220 19611730 129060690 788346532 990432012 800586168 838408073 712163699 986201261 59202737 766717515 285458348 898648555 782482525 787810997 284087062 635290713 311374585 617009951 625685744 815357459 666345221 711844803 715597222 960886098 88477206 216385537 453125438 607005397 945459487 974955619 492069444 812809112 246257661 557321656 185917040 729939470 925745343 948291839 117916004 712502520 505183369 561997869 418648293 842464954 544016382 566771523 294311757 978870513 761171516 940643617 881688284 959842210 558901300 827752214 112241956 837199810 770007776 886178281 707938011 957233519 892098048 994309285 320323326 321692662 835281689 841642906 16327997 723675177 996272144 997385594 973982477 977153095 522582745 895096045 215946901 872695380 574663795 796091451 327924486 427062839 919421582 948503445 901852263 931433097 614161420 922898424 915395642 987374486 209133232 677095914 114793190 274139663 349341965 863080065 234275694 247068501 388397122 721360388 591264101 670631600 88380183 794312362 71563970 757685783 152149814 333439759 497105021 530316367 181541093 916974085 317600141 521228047 542734071 638121183 551884327 907862287 921718160 994252169 670091753 999003531 910980575 995982041 985570075 997298325 613008855 957585919 590481723 938541613 901110576 913947016 723195268 845364175 380243129 761198986 834597882 838710246 600195300 824291201 933805442 957014792 226490341 295389212 729064853 994843187 289958710 829652728 493061146 691430078 131419991 497032197 806460029 964207482 249014229 428753184 960094281 964119511 644479144 743754861 569531146 749242863 816765695 908877156 623871278 879777207 793210142 806802311 56332121 472328127 774060437 966020174 659515924 814600086 315144913 515224084 968800179 977374992 487802265 895587015 524267247 721249043 162846684 737673285 947751777 964278722 61818830 622955475 386252843 600252660 456714345 500719197 783556739 942928114 537713959 708370965 256515541 623281889 436216416 841875439 234515896 592549316 194955242 233492626 715317763 760937480 864942429 989503070 768395729 840668863 620373317 752095894 474656505 748573176 122146108 647655476 962835054 986757321 361977828 768546597 422885216 926639472 988117989 999384462 98505505 520506407 515298814 861651318 175920415 881277079 146206326 423220026 534567871 864836255 962085924 975176587 696648286 963275453 430761760 683655195 913382262 934786584 922604256 998874734 293591814 782979722 109149119 540459597 205236124 239101262 346160912 604029101 218501566 675900167 409111645 677530137 572607725 621199318 573374365 740677912 85807232 658006217 432377493 682310177 20831801 999095573 280515397 551462426 333339580 594320782 445698255 776588929 653325709 883954119 786544746 929686275 74133844 663828247 62240133 825805474 406882431 749332178 479818853 924950905 321087309 551101852 223956920 701478700 499326560 978053749 777155057 836162193 456781188 838590264 960436439 963472586 538788427 949469893 561516457 573269321 589872441 904515606 646714888 764989490 984702358 984990193 887252450 950380876 622528256 888784286 926700365 932592471 135930340 833864764 864185603 981210760 723374043 743730883 283535340 968903991 479827378 634119176 148773617 758814612 331191252 622785084 235412233 449128234 822137098 838120175 749148131 839965244 12317407 432444625 600471590 970546264 91170913 683999635 553844937 585521167 918871306 955083577 238048978 765755104 697278238 843682928 237187169 916219122 285392275 791989340 168050509 789973187 633088648 982589162 352386468 791061212 355231277 887370264 349123257 959443878 468929147 841169165 691932868 954516467 636352154 688271836 723993347 929608107 700152573 942244154 555353161 803623357 720396191 962365505 239232071 262173907 762916786 852296571 154147665 525229632 242554859 896747957 833682276 937507222 172914347 950804997 97863666 426169246 229048447 968725867 496249304 767348070 746626458 913258689 70124327 665549571 833102649 851475613 853476828 919512938 99226802 809258019 849048625 936023973 886430360 902976510 36694412 447355953 455735082 796229152 195397367 917375056 940589947 994693951 20880253 854755072 285894138 672831554 790169860 923714216 918117008 968217950 19552975 886760373 851087582 896149722 101176159 479199731 367954389 579443663 259963187 637355449 369080639 827052510 854969782 926896271 19379887 997148050 939885257 979239425 950502529 967873974 298638043 914138807 796775120 969476756 770674097 975731772 925783510 997728580 722766700 799009054 238468457 652220820 46406822 497887819 279442667 780586419 775016370 915717570 659562234 957000166 344374240 715514910 163922313 285312217 754266253 814466299 202855199 223152028 736410959 846808067 588037504 673423105 21369315 552513004 333216647 987591060 819721854 955375786 152044572 731353149 196275543 402817233 216884627 502439005 170681373 431629982 170515915 631381330 116051946 885919316 985017547 999194314 679346623 954640015 123913495 409074146 85812597 487964936 950979930 987031814 431744299 714714700 734071023 892484689 78797340 106978949 676855199 941555653 242477675 463422218 74126860 405291273 868384436 941525467 918174696 989632824 956579254 958962794 631329835 941885237 916420310 959468520 266104001 533803836 76870047 171401746 756057971 914669280 631972706 808117972 488276172 504204688 216314133 577728529 612329419 761073613 709546364 763507402 879512543 990273128 323295513 532377535 277422352 408826792 387746058 598831533 118195031 560056632 50157266 203220064 200863369 305761835 137102666 181807011 584007938 962012451 624719512 940401604 669808055 862093816 959752142 994339306 644763386 709445896 568647765 644244313 642476674 997672811 508350487 805403193 112468179 659500725 820602824 863750029 577735573 658251841 969870846 986779190 350867648 804104652 600082224 680064766 63634544 92765434 445485160 952288020 786384599 948583108 356379858 548048735 194525960 355293405 143684066 222077698 481865040 694570299 506205236 604739049 644315426 960612974 497710327 878227267 358860822 373622207 593312337 674023634 985809111 992036638 309683240 702028721 315925510 703457181 154583655 212396441 34659327 110589086 713806566 965643235 129933066 730210285 651593117 806168184 489528322 598228309 154149194 188798862 560822145 963589365 47676471 386763119 970236246 979736734 208585208 608016300 975338226 982191555 59223796 174666799 575324940 994515518 804504577 852513076 402493009 679871419 844044068 857829849 728627139 732080569 724307589 727871555 769200197 823374340 35434105 510313088 645174264 871984883 510013296 811851720 282305372 324050389 37671995 880612178 480326634 572160018 63015792 708845208 9831845 710080750 982783111 990698836 142430344 345390019 869670793 954356364 548874064 660662628 823480046 995704221 694199090 991212018 635296594 856488989 241373003 771509687 620359307 739233601 510045227 561645356 881959874 988729811 767596424 985791101 648815403 748464644 404657404 616169455 860195439 887875078 493913020 753507660 825681372 837744136 942927337 970660566 912897367 952769233 560149682 962812223 944024291 984322864 379925209 460755709 712217776 730876853 648198299 674631137 628029827 757478999 846850633 942918623 320764124 448516307 288655334 441528281 172609853 335040790 487941508 572593730 745020530 821495381 604758014 869920191 592372888 978742956 621684846 664186718 255412655 307656387 336183137 358509922 891862353 941706835 932226469 955989043 425970539 533948938 598043305 696106873 411463218 495428670 459533909 475579346 954161022 962258505 127095775 368523647 60840428 703574064 509939617 535117362 386783165 612295387 488713851 573087332 756726599 851153340 614947398 854191912 473165047 646915459 265492302 944612112 392082551 837019609 32929715 463369296 315705964 337895920 61213776 298311226 817366379 939670192 788556577 837657951 40744016 485433189 983963383 999327345 293524942 621683527 168797718 983303125 563363710 889286500 960078127 991108550 452791445 847637429 711484855 721357260 147210143 660075304 691763099 901663101 847350329 906343251 165032717 984701782 578430269 822053583 183192093 465726595 636214660 648656214 532310027 902893416 675857445 769986571 489293845 832940184 874162857 894113957 525161307 645177315 305185981 788239704 173514685 577114577 957880792 969792346 705405815 982622284 78973808 311830741 202084894 754897909 497012915 794404480 93346268 964981233 19439214 964116747 936131042 939323380 290925847 412191920 636784897 926187061 269456928 494219701 709567169 960643175 267508231 358461191 192456616 327842148 109812108 677996971 722541375 824318098 958304656 970445638 415233951 708512639 885930876 933041953 895022887 916241064 2376018 639384070 613213757 966342281 587191309 589848474 264716654 304338715 525666872 553664540 348970949 522370119 941870688 982867346 298587137 808912631 434110428 705181073 403650953 520540521 825482241 950375543 988329268 996045587 903783122 997172846 828958490 872625910 807065226 935607679 155403151 353361264 91748126 447922001 342032452 439905722 726151815 860272291 44800158 315170488 163930242 219857507 836821259 927498906 460422028 810950224 363832623 643362427 80782978 150085394 688805808 772386767 427810376 540847637 451920955 754698727 545907190 716259068 667574478 760651317 71835985 591245473 23439351 40392267 703963206 876249974 100765700 766619518 647936109 729961249 697803819 957591231 138288524 200474101 518101728 987363224 946256766 957092026 427370329 611558491 400444601 539535568 808691904 879704928 546354960 697086770 726314469 962302174 525703349 579057094 876668533 907209412 217298102 887641058 359306011 803695002 655189742 781096052 891938633 900458828 436095378 445770812 240398747 937315862 459221497 565375239 371956547 601710077 841425205 875774241 402175582 510428767 940258886 954006541 399534003 441024344 534854608 636293140 890341797 960316380 998509541 999670430 468709851 844763991 711423851 927369212 783101646 790148237 870326938 987050186 841331838 898794308 653217071 948820409 23489487 733641171 815176298 870319063 697403167 956715685 236358714 377291210 475317698 814785660 243123779 747796072 265541230 738893393 41903795 86681485 546753846 957917791 527312377 605326160 782816641 916219481 702243405 772791419 126706520 824493557 230011859 308428475 330836798 846985493 733280430 878840455 424779347 814752495 502301895 633858773 603159048 939813803 865533584 992949757 935104051 984189846 801022261 928399056 467212503 583837292 374038032 476258463 859116029 936822768 839575849 986521196 153014285 852950816 933217829 957041763 114988706 706109362 935768571 982767908 841585904 877826725 690676901 871944018 940630254 987176737 517000885 722112436 528952967 855861379 612762112 656726392 833679227 890970220 637423642 741405194 696153783 727140355 715404096 844905827 164837301 571564538 545514554 548965426 698641590 805598392 331747667 814117307 839151354 901724608 679612230 835403371 726873524 829212622 744740431 928259653 710777465 788488833 912000714 936578810 836753447 860261209 814198634 977404817 763079268 826553494 558161542 921569842 530427432 601000859 247949630 660123659 210011452 769906304 472014657 683908958 384688440 397427391 135488720 447627048 35901629 473222849 958308524 999176416 828938795 986551491 603743994 645819910 367617320 660709449 547925199 850334770 883097876 939964090 898677851 919606811 71991723 161652350 250552672 436845889 850661215 896733811 596614426 615302212 32947337 564166576 208366025 347808279 510918075 991737071 209010749 946182347 12173982 603736033 116873213 299809339 928736276 969701504 712218159 995419275 652553505 960365347 902599956 917428012 355090621 444654217 765475402 956041357 618375356 990045987 753625345 854655790 782740144 818187570 621662807 674726644 756427923 774788294 650841554 670907289 662437721 797470482 922141065 975600952 676657399 834507650 859465185 940687691 296552753 647702136 631299310 797760476 550336853 609649678 325444793 605154243 280481599 444591258 479399516 830031794 994614696 997963884 532167114 814335108 926184168 938583913 198961933 969923687 642861528 819547425 56438968 794370971 7048561 823420710 957835050 962100316 529665667 878045590 736842246 833693586 860750367 866250096 604140491 960389787 507891889 936944134 82208781 935898422 990683316 995659453 496560419 742461922 469201763 735824268 981543665 990695092 749836921 784645423 305971465 766154519 494866022 726600426 970147625 971537871 300391877 332341722 459495156 507867988 412847133 413409606 890130343 915160072 789321700 985694587 588627671 588650285 235069175 731635795 835670605 923174294 37653353 677134937 695422021 831766867 762448542 940855249 857779871 937427182 588722794 938397443 803703848 805796978 847527515 895477003 297270185 721614214 107814826 815162424 333189860 636051340 900481918 969957497 18948313 247528891 838186097 941117216 152464920 312327252 804153929 905111372 551640961 812434329 946541472 980399186 671851945 768135793 412927294 447904379 184920585 860811645 700602998 778453690 809587507 847106549 185356887 786594992 482847460 657258085 814132430 846056275 618022588 790040449 659033636 975875421 39427109 449812815 131085871 703824693 243249748 397665040 646275145 982172681 680479716 786813597 175541340 822287450 22290625 164910382 364913145 532739192 435655350 752259915 722027947 941309032 462488688 950324097 765966568 994529296 46818880 423905210 551655675 600502414 180835723 598570766 228554434 318183901 55412299 94973702 429916733 645373064 545030666 574794916 381568507 748133379 940955363 954851530 59267093 507852093 401901563 895284122 826591473 935486191 211529904 603799295 254013215 969609016 999446967 999537355 568538172 609855989 220866871 312045109 570936582 900698958 831728878 839926409 782219982 995946752 257629547 323017928 460648387 852379780 155684378 358180805 280930704 654698129 169686006 576212771 156203157 312361998 711837232 771340653 796037395 926535608 703796955 998275044 53955097 678004482 229000425 826418798 302915351 314716474 108588453 791958464 917777534 952697056 155638074 903856068 367363009 948782405 590957456 620758420 507565176 600773954 250469323 288839048 490300998 831409835 986215780 993142182 847504689 853146727 40196193 536859976 346379238 398324771 70238754 216958922 898493192 986484571 400489567 401101319 390315147 988719037 907009440 977492995 751883238 971517826 423658442 959114169 411626728 615434930 31707000 373335232 310480503 644061557 987432379 994366060 735060587 770707456 602999010 775260866 874661959 879792697 318708536 931462528 68366018 648420645 520328927 829812894 535195642 936935128 606309214 870568311 370633886 389276877 69804436 597182938 745097028 974104074 184183724 471369813 626583146 977186821 278104113 642822389 414667282 539499995 387088218 668409800 359229809 931426062 833537871 864768583 511583359 535307437 44822133 843448786 667593100 949250919 894605262 928254943 939984632 956817088 162486876 763274238 919263163 956505524 711832657 984632051 897275187 962234699 570090678 699239098 185549776 972493431 389232068 908830123 400373731 467484651 472221853 997694016 366975765 670053384 348943029 929956371 555366660 831102669 436439958 767657522 593894423 945598510 146924294 536419047 869219916 871221869 938638100 994174194 243835859 867814629 284154588 677061023 14844719 862083073 397447307 674920325 214034972 303865953 933336129 979589650 362754729 716231159 103049499 560568088 193126123 914194667 902771351 926813790 931446812 953091529 466246838 551554585 692316738 979493583 5941709 391596446 29828576 746741696 918848818 947278690 714626427 909458482 84885933 522796084 567245668 901147089 550632237 671483756 856973701 993132596 538293564 546512364 445166081 574773632 355442511 543954693 779649609 839961155 81046819 194101921 867220433 982171836 626324456 641289467 872503625 969783598 664929850 866251528 154750149 294808904 443375563 513991190 664162049 986585492 662977263 663074842 730248473 795204267 287684044 823236738 762451697 771655290 91171981 492049507 842116239 852633662 335126470 745105227 673150630 780843398 178121118 643255146 95705928 373980524 35214431 544679356 677673128 915030541 403106389 738331822 353014021 500367841 467846842 491923917 114163208 537132757 429600827 706998866 918107080 993268187 145473650 835336525 928165971 982262139 129345950 974656591 235180796 660392834 407989261 589770385 945069058 978862135 628665011 913426827 981026815 990247878 618459493 783039729 123778390 598542199 767920969 933937811 369269927 808866179 436189754 460752498 352890141 921803655 173313800 743953703 756544109 982765026 264180422 315525055 673700326 902000321 12925654 259227252 896256135 956644559 520800282 988209123 585922527 851204645 223503419 529448951 52438171 211817983 994562020 996559005 166696773 948605904 733045548 912783635 957244454 974196378 726469788 907183765 883558454 916554297 119308042 451418215 226648236 296276490 84999099 415384966 809969055 972133030 168554943 391299437 815148301 964005559 470365684 852364791 81466463 883250719 391101574 835954481 823514129 981105073 456231508 813248096 58135112 828831443 7709829 275059654 35519601 550947016 470007420 541922582 173795725 529497691 332186054 905422495 763564619 949229672 35367565 228573526 775300871 982963919 480047334 704646304 174283227 377731531 534404662 664498638 671818577 875371116 52444200 332037024 400088960 537014453 154666543 934218120 21772812 937084556 317953569 366974569 704253840 806568916 391444522 564983325 549328953 620151374 325146695 476402145 341760871 484461643 422007487 598306606 585914609 826692108 672605372 750284907 539625711 776592516 728020845 759555925 932531563 937324719 390309318 714863282 830613094 859869123 636873539 771343687 391441898 733713721 322356165 532598003 647038216 722758328 80273840 394424320 77949439 670075156 951284359 963233702 27120826 358443404 416096880 491559159 654794224 963901522 797978704 890340246 683580009 980543161 707878593 799579741 244746459 696043819 895130039 916096621 528864340 728337346 569621260 588038822 618486400 948710225 642613242 839631164 141796617 836549694 387471481 419394515 429505075 681798471 690074670 807566305 833402205 851568048 84537040 954578060 824490192 958177331 348068075 556690398 807268974 931177308 36482087 258966924 406484485 794840877 901209450 975901505 322454631 599423160 468808899 749228917 43413873 825225148 755568156 772197651 104297532 525050026 417507779 650481329 834041669 899776950 627379657 690183291 116647518 573291604 569601085 733903318 590948482 665388564 78779166 95591506 496882824 518637383 278466064 901231461 527617598 987314227 746690271 802206234 953179962 989909700 514634161 647774727 429029515 520092000 379867622 565369915 737286357 978098623 241500190 269089645 714256864 924423670 110316605 129870907 763348913 844199855 311527227 532439590 174693803 198475679 74455887 694078213 168470247 977540186 918109980 965456317 299292169 539028642 296515112 454526158 183187048 393746141 953114677 955640609 23126905 679565939 544354095 572203225 533750019 536047727 741680245 802690370 844582825 963315219 932460318 975607104 151489294 349657544 56231614 720315761 263600174 483335807 718632957 759052517 446933620 693575258 988316663 992008062 283777496 377418112 811161330 960012273 859329160 860554300 353946733 779057335 674914096 753625107 620079298 792748851 466465595 980337674 83585039 275465531 762721920 772389822 382257421 609817217 519958898 900384871 453804170 652140501 613583127 917873993 119592584 885371213 460999424 703377087 519614620 808364884 977662790 989318728 312838866 617554032 381143350 689339994 961643983 989870928 977205054 992878191 773484789 826879800 505841558 828908826 736472658 864012137 915104022 946861811 40704383 254181808 636829538 773543657 141396144 601449051 798522546 860689674 665712206 858916881 714355364 824947548 3930218 852405023 610256606 901358047 756143102 756462357 867475749 939999501 55495131 810439912 693713610 907768104 248897270 328981879 2943463 891879279 667273056 716655670 167957163 536150957 560984133 597572326 974196124 985453090 277186496 933644711 667243478 819870520 239443941 594024365 460993087 764613538 135623274 332883572 143515166 643907454 874533433 891642184 503545943 647157575 298711255 626533635 263986821 628856872 178559873 920327729 137544171 345879014 649250434 751187005 385528363 529262600 351452843 804818861 616229830 813830016 725529619 905371141 214040308 439919915 13165759 204009707 520264612 666994073 664457970 866870673 106820076 450173518 912226849 991733761 778631335 809045521 801920280 979235952 443421508 658284559 561206510 697282852 854118178 991855057 663296578 763214856 562648547 607498145 428233689 648252714 416930402 495551718 97373215 247764214 51453311 455646532 106600005 733434437 4370003 191583885 492368545 824824241 503790612 898937594 247269745 913044269 410557918 652575585 39530442 618521941 168575566 410622548 657520702 832783807 990710253 997557453 993918017 999843602 810403629 899880566 873870052 898637863 738036666 970197003 880754355 938622076 742992002 818516119 302614103 886731342 328719743 612357438 719098904 778029057 445377869 825649147 799346374 805328656 142776207 815543275 278593119 609947774 429858426 938278381 122392702 834525619 592372663 701312576 848915655 982453963 368530755 995486376 281720273 670501044 738540635 954811740 694057210 963720959 875825745 911621744 59314067 571117673 214630385 340643455 361705579 768521173 730378183 930498494 237729304 632615651 539395419 626316932 849644038 891105544 928331640 933327064 672673202 780820716 378838343 994656151 539876229 554997721 69781903 976358160 917684755 960851110 349937859 688596610 950885112 983055443 848352584 969034512 440728331 620430336 420354247 440233067 587950938 713491932 570864260 997615143 548295563 877603938 301190790 822272064 326430698 761481241 20673719 729153105 541911275 629992878 589784348 977202989 27034982 934628230 934907992 974286665 114763264 912066992 498927755 802165006 198535910 429933545 26010913 546816936 549255002 616376394 430652939 773916672 181412757 421165829 785633215 820529895 463350704 896712959 565529969 807914429 85320239 800026040 2791695 852406218 679742584 996211413 198730468 263357122 446814506 653731306 291633215 817792958 83296374 512529756 755153083 804183156 659277440 921848280 501518407 620998570 191288693 670047610 511393352 625240340 452210043 516113441 668688846 919623385 18826408 467770537 152056269 980051977 794375991 948963749 847283024 933389809 429156277 582789697 581968330 692438277 657071619 685288776 648565359 713200363 670307011 783756448 18608957 156132355 172530248 522482229 138143952 827008072 754249229 854622202 903156163 929171314 760433593 936205639 711429492 760135510 180186196 668660408 165825119 921218399 768794946 806567949 828983317 942302538 258776703 550288420 279667185 465700642 220084115 287087123 216376994 870554386 197539086 488807222 692052772 826170682 923615957 944899857 81595625 844552556 6047543 527508140 135803496 743706931 962163434 996088514 879520199 939064083 575740772 854590491 927586848 966607815 537271281 991258519 273614450 352599220 260173908 773148629 140198684 950600801 987543895 998098379 548367189 705589935 859057761 933645026 994503680 996980935 748712157 989245238 392484601 605895618 501375865 768040621 977433123 981191452 644446385 966362737 195299220 487691860 720930407 858752903 31065247 667558003 384851361 818499375 288193441 507646246 106686554 227133975 806098140 974650293 292032650 591609632 551024373 850895548 491560081 703788789 534755313 667567773 407621398 559870604 317372527 432407548 947439367 973091218 612369255 707303305 338233861 920255457 394319749 810970138 934669461 999746274 638386886 922745493 718604457 838562864 446127680 726630400 532080241 791000566 254634083 620330014 51453602 890360092 557620484 661916042 825363158 997739223 657917221 675881177 131900726 475608894 623726736 824096379 279446913 821495463 315283906 777717243 912660766 983865506 258598095 820594329 133537440 674891065 346017730 910073132 862533969 989565393 96844838 161477955 889538904 913530218 620041078 872893948 197254222 861246341 355677786 410461057 514798872 685259079 836626819 984149448 941982627 983905270 691727716 846506245 645693270 765663628 525005665 545566249 968511805 986197567 397850245 533028929 453229064 873559805 64925030 902265863 716255070 740956151 142850536 802445543 385731355 967528944 740315369 797524501 525411261 724279448 259823213 262703554 511335294 783164039 619682968 749086346 186894309 571395720 477752061 601762252 97409918 583123990 631338979 844741295 467986030 488655902 850180433 920900018 819782786 864135395 748033269 847588369 161969754 366325544 210066580 855352356 332444568 413460367 510290965 845303925 944386660 985051634 799473503 810426313 120821111 144118246 55462117 82949585 521501648 903539080 107154308 926752919 584468495 790944617 965473197 994519896 444209027 689411686 76521002 232464495 49520248 500458226 556867119 948336259 572381124 871179633 834890880 985637114 653110394 696518262 183615675 364051829 59015438 766535694 970296407 985756243 17952355 341964188 692362903 961936398 117210210 283738547 48567162 468873806 530816124 810825422 254474615 882227584 106472816 603728836 842758928 963989222 210632811 600335074 809006819 977081377 14655348 583424089 282492995 746769997 255655419 302976092 274573086 776350775 742492017 814091895 826051178 869717601 463082786 465340630 680141526 960479361 437203294 773949276 480819881 761265759 319325223 976305162 666954724 791387934 791026891 970534912 833806562 843525495 311046492 404561310 398078320 982285151 242006050 605496150 262762823 588654249 478084788 772600574 956132577 976636927 352693729 863832864 501637753 853173903 316461617 596088974 537319581 989329227 447111184 908972154 178489172 630514459 153189335 909730278 499373384 584150683 401048629 598151532 783564581 937906847 429928865 916347467 840245825 906686917 328205421 659716807 914760371 945591679 182059479 463172068 560392500 767031057 325018926 527473450 912164615 920661408 937882064 970659272 534580771 604562475 569581720 720963518 191173770 750384928 300015343 958744775 639565907 666998276 591086023 785741042 295656051 379292919 256738996 503696771 117772509 823850877 191030126 761232964 973771518 995433070 437992770 582386748 170300025 189185167 249774132 992298983 16159268 945617991 850082870 874606144 277713016 385779216 880386706 883831740 186212910 860360370 442556481 660334248 511669997 634383946 708400742 823634271 696240625 787944183 557573182 897056866 856775544 905121326 428644054 552121839 73576380 257023916 317246039 784917538 871487020 977261837 541468192 575837953 653870083 871632112 528017163 790090873 326485979 357018604 101554225 758834637 595243636 833140944 955483740 962683059 463463012 466386233 836858388 935807808 199677940 508313984 798690487 894549937 901383251 948341717 678442064 877777664 587755803 712453353 262741958 292116770 397498277 961086542 777609510 848290079 287034568 343121329 365125580 725851154 967651899 998649542 409303876 953990507 798254795 896365318 491872950 693687958 113676314 170432330 748113916 812273612 845426589 877375867 541682681 629272607 588383849 934900357 71658996 182525271 677141531 755681065 228537632 892697977 463166597 893345541 374279378 503246251 320019800 865628347 413050615 959750242 361793957 890864638 304788416 693077332 520571937 919198973 590179052 805745695 823670281 938789697 781528886 925332709 297844927 444456503 858883758 932325781 457549131 774598196 176158882 562933129 975621573 988783827 447476650 716934542 808402546 945559668 532308728 803708733 137093903 399544938 212108128 848366103 671256128 793381699 90423333 984712640 417447608 722117461 8865700 575667741 733987939 968874722 586961984 730667046 329208251 422937484 539767615 989957565 949218203 964057869 665965176 852995329 529089549 534706949 703374710 768356030 850591005 858470547 10416156 125693523 906980516 954025747 430635837 457649820 778729011 876834401 764454172 798948374 762823947 949333994 823943732 857257482 820808100 878587808 790680977 834002579 748869338 907316081 368887959 776712545 233794311 944522238 473197248 887415509 743139279 928417570 303860408 354999013 985169102 993946355 101845391 467795678 813457851 955084797 310101425 565194269 677750478 934518532 484899780 501217619 400999841 599287127 493816959 557649312 475545831 569626384 993593685 998939509 922857329 951080931 930843945 940895904 158908248 515469271 366504451 530003297 647433175 902694933 861221317 897615274 816560123 959176948 293035616 706012286 664323136 832678404 456053465 747195474 743977434 904249494 595157289 782986656 93200284 700442101 833848030 979497431 764419731 968558175 401953810 901379381 453017865 671623080 552266957 834023002 606031074 641101822 206938469 640988872 537040432 789874605 879277425 922350407 764812901 802364210 778097596 885344514 90351347 869698180 292136849 778044459 139213548 840272808 148798846 962328734 685523147 907571749 929470660 941768972 943941540 973022214 837272299 867223826 329641868 641263217 75522377 530390439 50466428 758721566 161070053 703721418 512349857 721878038 246246444 907153099 675976090 683481312 610429528 867419598 229010849 723911748 635643770 842524625 332068472 729514617 727730029 834621966 494943624 549076991 391703726 496297779 424918305 558855035 779231071 797282219 698775706 913798528 609683252 748796052 757464152 819878190 503190598 596647037 57633168 731893115 93229864 262754668 57805996 962274263 71967964 626743202 913672457 955428163 565811175 667125853 979925924 998865671 797075789 904321122 261929334 975233988 644123561 817013800 316170765 346885223 531991032 971592566 124478501 521126469 966680503 988696251 920675310 949701882 761529882 977821145 335487607 426963834 610445015 889383829 957987324 987226685 839499125 901528723 307309265 642320326 930108207 944486124 37206426 985216171 377763353 495089710 725340685 766132003 632448947 899224119 303159883 970958900 723651076 805980482 45883269 223020892 285105043 453583194 972594946 973356623 989570470 992195355 355201192 721577297 542114461 791497178 234784176 236229225 147702105 751052759 466850184 939192971 48244700 660507456 932571918 953953710 208885980 499368992 116061042 435557230 897166926 908433432 784097967 932442018 90732596 870748039 527875003 535348305 309059496 369405507 901037466 915468866 283128401 724441339 202362481 784357399 775513538 915230869 729603925 933345801 562648602 741213595 460926442 800301050 562278858 797586200 792134279 864071910 423886949 477594523 278684642 931303888 750198292 839059848 244352202 887010795 195943222 593606961 812538896 889382432 616851071 926252257 561911961 577735838 209708599 592542611 160157662 631288569 276216120 327541716 157789310 372546566 414609504 540265144 991778906 993053474 102347833 161851763 180957106 364930935 995970463 997826315 671282857 972393228 194374006 439659186 57492753 231516906 144467970 643814053 730655047 859737361 530497164 984545439 666531774 761291138 891198091 935210983 690348479 788332877 903111273 962455745 211251733 620141541 629953871 968911403 804287902 919578324 140378671 379531576 822337194 880861248 301887888 673436108 724480007 888607186 466359923 707813609 690841879 815951842 857046488 966253695 959791514 997188123 277683333 362960030 653349014 852717929 327532029 368562905 988279688 992452742 78320090 359777461 535504683 896551998 713680987 939515732 677733752 751860571 138457899 545710762 399887149 434961126 860631345 912452983 205831384 864785757 936927866 983729239 153453115 428265412 470167925 858337429 744326843 894195596 579662674 814582203 529234362 530391290 22633937 605389071 579404395 776299296 285269283 817483186 775233180 991607331 625690547 924219672 327221921 574995945 620141741 836892156 535656476 868299752 703728114 855036220 651048037 838228465 53245494 504227913 917065608 945453548 758630592 971569814 54849948 58420585 155811217 453461296 982994247 986318536 727575898 753234549 545780333 933636703 815526146 985078255 499238832 969298650 44892771 771064502 589878161 621476200 364787050 439955016 399465922 915825759 804307939 932178201 642377065 835805758 577519734 594038860 904791608 982210114 692090659 853953232 296363299 747226427 277654472 543541949 407077190 929387662 700154736 705714070 101560681 327040653 292413208 786873130 126317703 429818737 195428062 727406711 782413699 934456881 299586842 461561437 425567806 742276626 249830040 299040928 159716595 547481359 350075541 724868999 120898888 767229927 665586871 855398934 33602587 71713745 41003585 612596558 187134677 855262538 804574016 941861745 519276281 855325942 164278043 494238161 901080337 941469946 480511418 563409981 509715820 934185932 659434821 859012949 430687684 643047862 653407910 705502243 788803736 961433557 703597706 914671033 153993176 337831474 859735221 891216009 848519254 856457801 913352246 943464356 162890212 750961242 573885919 995613634 671567078 734998835 745267707 920352721 119295815 222623259 885659014 959308194 901231891 976456042 539146110 608879907 493825408 505845650 975565256 991167004 847865492 928317243 206294344 825034719 638551782 949369846 29272456 509011205 348551243 748099193 145613756 840987341 847165718 970146020 634415146 698299682 760427751 944054202 348609843 369713431 246916582 643982107 108292562 246882121 442657566 854743535 261108075 691016652 937330569 990342435 762546270 991819405 745169012 857805318 140140677 866279064 87529435 114187416 803938485 912343649 759467571 950681708 917007810 939623515 130192167 294976227 810782497 821428260 673446094 954364762 641453017 652993816 686486494 834800720 916840512 982433890 434722109 745636442 124864564 576719096 650937104 708466179 364112377 784016574 984466994 988996100 742202661 840730775 556284019 821755699 859436609 998147629 582029867 915948923 727255754 754455269 666140019 973222915 55818614 865451146 502813202 985892563 455905032 741984749 423993497 568929203 479091810 928298994 723038077 849765585 639132191 929357916 737884172 923781890 42981674 639158255 432061012 534088480 153125741 496765835 599266690 844183942 946982023 964246422 424146431 991045801 551003002 915628624 713033834 964571408 207540682 650972717 910645265 998556687 911477638 975429504 413121934 742681933 942780598 994628028 346341578 734513327 552624104 937653996 188393029 944932900 343954539 580427888 538390452 623835273 349576525 553210312 509277333 979975781 601741004 915266580 101082946 688759084 54154319 848478258 617694998 937461631 640736325 998461866 844792468 867041100 362308075 716787379 740433649 969859162 514991641 857046377 574503996 734276673 215399076 836776487 72560307 827292168 172751575 738752244 940411955 964812822 210636156 680982943 251130176 319565227 899376256 946857513 308967729 426366867 725228856 812892067 655134471 863363765 363204809 400789497 510732747 835457689 211500175 856324859 741855491 886635808 425015535 592018997 792164856 874297536 939884991 974753089 381122681 695498873 930978360 953423698 587416198 685618118 506031462 795096911 29664381 997589657 260271066 400884823 530557696 865091162 793898556 874383460 540371518 699768738 960094895 966492773 677851337 884831578 51676953 817975523 402118124 729095012 713034182 788439720 988616478 996268909 726428853 836571968 674743067 899233592 991897256 993745329 772488080 868698423 649723707 847958780 782282757 978485878 875773208 920894195 511767894 813146988 561731576 972266898 345908221 571140209 20965626 790665881 58463260 518897189 38852599 140232463 256333704 557119513 532283619 922422468 648757597 880290235 154872656 380212268 849842654 962048714 983835520 998846240 800108553 885442057 438931781 939512832 190968148 680416479 24737150 424608878 305195663 847389848 920565453 997479262 287432021 487272087 945771892 983406081 873122318 909390354 834964541 843770690 646874869 691107136 65082134 742052857 263598134 716163450 837576063 860332989 834569520 944774316 690776084 843867741 865670001 928811991 230125752 683383551 376143634 799954694 210160995 986119220 345943865 891385722 721394393 948691180 228104196 963477261 377127673 964869033 24523572 708050769 492868150 568308958 867070908 960992437 460281707 999442845 288672759 806736681 637250828 852442073 15959692 90516217 431136352 702323978 571716478 968314574 58123660 194969417 218963347 392211258 993605944 998255740 46797581 55259451 782439822 921855666 706021742 797676469 907903340 959442444 155086073 526101765 242690283 341990332 935793771 954968254 489995110 676744131 995411192 998214615 548443541 917968879 927788146 930792020 139009411 757918057 529003729 570076402 554685075 789568630 943964713 944169531 165406745 756642801 290347701 961159923 144800 959341125 195182139 298356500 654264063 915788259 543907877 948221038 940898858 951819425 508241103 669855997 676087655 778070702 421705120 985585655 215693543 946517385 364277893 722324107 773508247 973445037 159997579 301002768 325634320 935990033 968816150 982318422 775280743 988315406 426235683 516766422 480224045 582638074 54595414 716896601 366731099 695792365 785496662 985111746 241356560 275246142 343714942 751919542 71825849 981147147 548531459 700611427 528929382 729292522 193768497 410761784 216121051 560217168 565146607 654877762 459050451 875448680 213165629 957488305 789709886 870786318 632115246 801662202 404314804 988668412 583073211 725331701 329820457 582894128 994820020 999864997 706473732 802392028 844128055 922834923 594195938 608941852 896961896 978462607 427185938 624903530 822601934 979441879 396300091 979103244 660887459 718426039 545582294 940188443 392168828 704044279 859381773 997179194 817675672 990691596 523348211 938298555 282793128 983295056 68922241 931252993 149415523 588363052 35016922 416519892 767071240 871041691 669244260 735072922 705818414 856042546 723348293 797792236 555251686 707512106 488556237 804731936 127269033 546432922 72653089 913083211 867384801 883496575 834830244 856713720 439193010 578591437 327477847 893645347 552113901 922863166 441100395 784064593 89890575 684932215 942525014 992673048 952632588 954208746 372694547 736136186 199955330 932580253 873035718 993794397 691322201 990013889 671696201 680960546 718933437 912653214 45155840 407856674 858025503 876657320 882231630 883327269 148587303 921512233 431843035 870241055 699141851 843628302 763751221 781141265 838999420 846893950 179822944 367735253 776814501 849899362 774524961 945428781 247861678 470929385 260564377 742106013 355999433 490844101 311547714 555016338 819786598 940426521 709547227 718697466 794542587 836847221 817522608 834050361 793060996 868734705 50498152 461159758 452053863 466362564 581852408 726640934 859294036 874547604 384569899 774444031 73123198 415486763 246287931 950811669 416874781 454139564 27201812 211558085 492576349 876749929 678597505 765944928 521904824 751480244 314809586 764119468 170357632 465514692 498232367 788206308 311303245 917677756 257966286 379572980 85685467 449986018 381343292 739083668 83587786 221470132 112512149 128539104 243096650 378004085 153366235 344605522 347196605 389897808 516103605 670903373 834889094 944241580 88232041 931248609 690282942 782689911 954650002 970881083 160597581 252950432 61436060 176040224 517743905 546642802 975202572 988106576 818591830 892841396 209713293 753929364 258095877 377252460 933054541 996303297 859719282 883404253 980585296 995446073 197804864 706901455 884998134 957940239 358884113 896369002 108072165 332298017 998511167 999187512 496095119 987598649 746176618 853856037 383417802 887482157 227960180 535864225 78106700 584412391 152414469 616295454 326382974 538489771 962385582 990246837 432275639 863226422 900052424 958671662 729984221 938160027 123074321 792215704 599748554 827378909 249503286 807504028 46748987 909242048 221583100 820824849 146539779 473327260 508639982 704501010 560865744 678223207 534246986 972782526 628602137 865983873 644237111 727692774 779770218 980693532 343378681 470354570 299346935 587400810 66869318 532750027 207784136 523901041 152634849 800453340 662989138 713076732 920926768 985518700 642187652 820226962 1569755 645802615 295860299 712936008 975535002 984011607 641782385 795146784 720944898 941013653 749055819 830630905 650136232 971937996 827139223 929705629 830690977 917238680 420378196 544690586 729157025 944824036 470467622 746482512 710269409 980952737 151216507 321682180 52214224 389328615 713714038 822638852 11459839 18806075 991088499 993450120 344340151 531065932 645918113 700544933 501783109 883274915 69721180 741959427 609065985 849451687 710501742 823082393 973241650 981319443 469485941 890304015 976346446 981193302 61826226 164783212 161338730 828145945 267536658 929602000 57549751 400179168 549311134 844293509 954501833 969259402 459692359 563625577 12092179 278301941 47666719 347093812 879479887 962703282 420896309 963229523 910912137 991681238 517002605 565431601 867187635 881502981 590739547 622953383 218941883 720720865 925713236 959267259 326310489 486331809 311252824 992669632 645044437 668736188 491047348 813984618 521839062 581888997 461779792 895983068 703666439 950325756 757644146 912323182 447426616 598471029 520119868 857564924 534748502 715946331 849034569 965717893 262679369 703757476 555327297 843258054 578931210 667448563 670303331 980617257 279557557 805999581 488127211 841814311 631293773 806797221 379718240 879153593 900023019 951720573 511278904 833422580 842441485 925320171 535138982 717176817 736871835 854855043 527639702 846668075 628611154 842837328 638217119 778697086 967392019 983020732 658774342 796542787 158345318 405910024 966148704 969688158 34640846 369990191 747679960 855057312 366444248 507434347 259281372 329224235 150805113 306270003 776995172 995115089 619635712 938713377 421098208 916837805 798792200 823811674 387969789 562425814 276749599 480426301 924812976 979650474 854345094 855232599 752674467 757184493 872504728 922337517 614744709 719037654 599831276 610367146 618752460 987132664 189971291 336451407 811552316 932696443 909196818 953578935 116925192 479222663 664625879 947677873 575161929 820774231 763251741 840952478 616345380 980843106 358476058 691135926 277687991 466633039 703538850 948272437 821848569 923478572 113676866 477367552 706207264 924798523 479227201 699618293 148222677 327764574 245609383 951357521 822989367 861127533 713411421 800226098 819322055 909599309 401303256 429471355 596901800 779870407 956530465 970438921 362245097 976391870 969627773 993001812 790797873 904522040 295009535 847120567 692723211 768152586 211857903 232451896 611392498 874767193 208059190 366100310 234339220 746923069 174264073 989683335 222252431 996248503 707865685 925277497 684172491 693916234 432881913 603274903 361935644 692093527 914210757 940404838 11432350 32864044 257184084 632625224 172603558 470576796 146904247 942068374 325923523 735639187 57572365 363142068 314724404 474505262 3831234 778558212 796885962 925477688 643999279 856702234 693887228 887161812 618708728 855038034 200343613 304844932 144200884 933863837 89325665 167035334 874354797 998875060 452605199 951217898 655145857 850123072 532051767 676126865 624577159 862701614 376684356 967572898 381413943 646478916 651203845 805036761 461271811 948014556 912970985 997033055 52529626 935945235 796072751 975544211 219696965 270076520 966853990 990145454 203567441 928920769 217910078 547380138 189754525 961271034 335741759 669296923 320893094 862619149 870291704 974901916 236919474 619329316 312057939 946854311 677564417 940736590 175708234 838932853 824771589 973232193 376046741 577673970 267160258 859990847 254555741 999755742 66555230 603427805 775512446 855607344 639903990 808820906 315565846 939753382 627525444 745688221 150769073 376243628 940431791 963977137 757617493 982482438 957882317 962578950 346031634 482899251 910205589 922629943 534586129 960479179 528076293 885334106 716132307 889487621 457508777 610958669 572610590 899538233 219951857 533434732 607963255 731783469 14290142 414367228 400655804 672825342 643895823 888336732 587200399 770885746 898635142 936622785 627471791 752484006 655034820 772038798 737223360 892217710 61620041 715252676 563794290 859523558 34336449 834449482 169921661 792179572 209660149 558127752 474990447 560110900 692756737 723019599 926019408 977205421 933477698 948648021 408630261 947576010 29055624 586243783 107265734 714142009 320072826 973253644 486019812 837874241 223459800 772259224 408343269 956290733 179777730 622023358 81267225 247689620 60678660 408631874 967866857 998032323 350746721 467469667 218478450 442247869 857266436 949407459 416974328 834176335 37279938 602562663 717503336 930697939 752522799 885530850 67303627 471388560 365834762 877542450 517948175 523489978 596252371 624708989 656062090 720890352 384302055 590207053 941908712 969031681 595980325 658251912 904419650 907864532 436751097 534144662 207674205 723112103 899781870 966031570 349116104 354864136 365169925 497579869 928045129 974845387 207724037 540445877 50249969 298783050 354719621 914586476 687853025 790062049 94166120 623895118 210665511 661259949 103595492 722755121 842244034 936840399 457385097 869653751 384043607 822140970 376357099 825948001 575644586 814479662 650618568 956023498 183225073 185198181 533657216 819263737 651769322 686576455 54311636 750683704 809424644 907532726 559994297 837245965 914062293 931545307 19444439 681653561 767147645 839759658 868551645 944948915 890822673 894423450 854576319 896357660 982212920 988160433 22365917 824771238 455637207 941400936 446359779 447622252 743356442 793345272 615157333 905764523 10624946 998317023 909647193 966634343 419914223 482291397 556935058 909801112 304044231 407231765 188683691 327214674 633329384 702906615 513686266 551471759 536877476 714693332 409806988 730456642 817497924 936715126 590969446 874804947 512880404 559846481 794598194 939262853 798431776 800841368 886053483 993377956 18680121 369222372 24879917 180481251 778576402 798672518 344137204 864293286 391328212 651338256 729307644 876557184 986965755 992900999 15107190 461607845 500273064 974693285 538321587 810999791 258356121 343686747 257212245 905336775 874099113 978279540 76846497 635411337 291255144 699613862 991178204 994645588 627717466 715984820 367771284 812921137 611604229 618381422 645442230 909388990 689073671 786676688 858686305 881365173 75851137 433775993 525023110 895197150 970442569 972233981 620212177 722952446 608510166 876144683 20102569 370164621 170654931 652224812 908993104 932685174 425766913 720605386 345462899 547262577 245043823 346967467 178888568 703642963 962511710 984499345 757846823 811006331 533292021 577286658 639855931 684156433 355286053 380522833 770162910 972760907 882220562 993779875 498533456 633758154 490295084 970643399 391164984 718685702 749628159 920104684 116810839 247442622 940218093 968272951 55944489 947507454 386770309 964503109 369862317 917616261 890882388 921292582 275892372 817555325 255214999 750644472 629525865 672573528 625313309 831326529 687483010 738137094 809757735 871133832 701775041 920777987 400794570 698127288 600020966 984790372 657836180 902322078 395917900 691591993 172787796 724214997 811405835 888266211 965796619 970126108 923137284 987925337 330997298 466119137 515909035 813071693 18035438 650148006 777257693 821640207 503427458 607224166 995503079 998653839 757654314 849084215 293978706 582048136 535684466 950845732 342798094 489070902 43570861 591049667 43680437 275519439 567831489 798276666 791886425 986224728 357423581 528843577 120988250 873668360 198744594 543661767 116010657 580575344 784384581 809138105 461250028 561752656 96138405 764473124 436762748 444862977 229979344 945895251 767082898 981061560 627721393 819659021 28930616 821608484 116306643 851459063 865768288 936323488 301172616 559541149 177156425 958710983 675177257 929540390 20130957 250297506 973338002 992214041 860781873 988577448 200573501 212580210 134604767 813547748 348907628 721755923 204383789 232995883 328704592 436303940 906597883 980194689 298778507 846928270 124725413 909612361 696347474 772195426 343061007 671583991 394873683 669154922 394551408 585927802 692052789 870828722 49342622 50219003 636172975 768829638 170939011 245763778 611689938 692413195 774298093 903633176 748275276 977339011 317858648 920238475 521474189 739669614 651411580 895016679 182134827 634646389 789235180 934554862 670133851 732408312 993647581 994024626 466448783 879180418 445877911 893531029 627438545 637467930 54477550 758271070 665127974 684278189 228330698 800359543 553430387 708517593 48307151 427357876 600571516 765469902 448657199 824801064 643319958 929592948 743346622 790496643 205972480 609545140 959005985 977330193 252705035 576722008 963588191 974823916 997782703 999234197 923394690 938927081 682328717 724078582 590604435 853434941 796546112 900250269 835771166 854476917 894610363 908345817 617824605 905228518 612231199 799096501 207726166 297041239 41217167 81410676 871664894 994990562 169804078 503688035 696194197 874731585 661363309 829464629 838122982 920999424 564663849 762471198 273877927 942126453 646695414 764161693 369626091 626584107 298216804 893680606 605501921 828348016 239176176 254258149 292925008 402773445 535655322 958953850 201357690 605204375 524911646 949629724 793868204 860576544 959510264 962692354 110243022 327243320 807365003 942454704 917264316 944808598 323308895 441200257 668793970 952030936 230745945 579192961 428261509 746642975 502944737 539262250 311332766 490641549 759800770 798969616 901170622 964519634 260151399 676466673 867918145 868916738 2996528 215046123 817126259 840776757 823316395 891546300 230355877 647802535 914119136 975460121 45393357 654093674 742630801 786104164 289688703 501194302 429241256 609335172 368145930 691589032 436956187 690313831 517470058 862114429 972622677 996676217 76481802 225259752 666291562 705059301 509087365 755247547 124813520 346443043 570664222 700775684 407020632 422242699 670495995 928945423 726457223 727577073 503924455 971062254 631433171 659312975 890859301 972382996 851989765 943381601 464337214 748789909 695009677 852468571 555401354 934282162 977601050 993952539 38039991 840515204 680986205 967806911 423918510 681976066 606456721 661243885 689759780 926637840 248352932 970662278 821105549 957643090 111652554 994554194 413989105 521536925 717497801 910834088 740556692 870323206 558542711 914258617 837400075 918032452 252438813 515339420 777787737 909088029 692186852 795386774 529522313 588558473 405102199 529987104 709670422 996306427 784676668 819230696 51302309 414581970 549292995 724636255 585111904 593089346 431488966 715643590 486696080 593385251 165532687 884431796 876656599 878928660 656794447 831979443 623488915 682411130 556250455 659680473 599802436 732696701 144786233 180766530 741765002 743656846 12158823 510107209 276006249 927172712 565685143 972568502 507427345 817162591 168322921 710740156 165259372 964885489 146789563 189714939 883302431 965118635 359636455 852900541 643732987 807317450 172269689 847425674 336118273 683330393 788746055 916583723 958064122 981989052 731500497 841271229 31137208 289435449 49140044 729423333 454196526 702709064 351623773 370722734 969566386 985115847 525768197 933910204 428512687 588916771 164314151 420977839 998129608 999198036 601274853 691365122 135754843 727447910 663184629 826490581 256164729 867125199 161990672 415799140 482498341 805980078 269822365 723675379 304316583 729734461 499103818 687597484 196465909 846444472 963588471 982097235 365271548 963349782 510858642 861922020 737026505 793331847 497186267 986649879 315468276 673282645 706457173 807612731 419476208 522578963 970720224 996315109 297964370 783310050 748938701 789690600 228791867 522475444 210987166 555818479 43878543 209961238 562111506 934338835 445969942 782498322 606214473 629921133 166084702 237608021 757985266 933689706 563805650 658079654 818979520 981308573 582620073 806228039 507676493 694154843 308526087 539522397 386802410 613081203 90121751 637222318 268808454 463619048 242687664 610173482 964316520 991582142 465603920 727755643 672545265 859001975 660543866 811871298 23375333 640300721 192055445 446014347 838543895 926764088 577795283 634535189 207081946 723377838 100524432 748644078 51626460 440518135 501370137 802061501 693646076 735344991 425524499 716763892 157807690 368632676 81238116 107687490 463442637 663033227 923353290 925572340 852508363 900653630 259815512 534113880 514324336 994234667 84232029 315590464 665516232 924254012 218068414 883376248 292949432 955611520 48159653 323099890 496981782 936993005 703377780 749563803 479921337 701511812 624942352 840350866 599692093 735662861 838494329 927921991 195638643 290453785 680165530 799827643 736637897 845319187 392848990 815510616 976991435 989069572 168909218 362941386 27131421 612034619 148161893 557368165 428066933 760805276 286616909 576943126 899694432 959724282 46222585 96014695 38571158 910203315 898017620 918473248 138678793 353827221 257502693 395296275 384718219 938931202 807603855 846566104 881749623 943074922 447177053 884794250 899794788 992912764 976061721 992731491 840326811 946921128 466288357 859622498 537377019 841216734 231241620 808216554 310940664 481179008 884250401 983864651 497154426 807570696 560988294 994317959 163455022 940522869 701929024 736399860 638014452 982468872 386513840 520614170 982182241 986936472 999146195 999827674 189321824 581774910 232891068 757398439 765884735 936192028 523098516 596838452 488426546 536093938 819177093 849678600 218415764 733294459 250831696 335425256 536718959 750153641 619112990 761751645 696769797 864266500 95619194 553843795 754909753 830040378 597077714 598187877 960858136 991492963 446069690 897580450 609711145 831251233 359160921 750740825 880239377 957257062 755755499 788861827 611825823 783703209 359282323 918824965 477850207 537833620 971795161 974816220 968585630 969263438 116151935 688686333 386229516 882582139 466634275 658761965 291439012 981180839 258783066 804091511 612399283 728598217 340180609 909323083 764028817 867591921 886408366 962782651 664167712 829692146 933573670 994295307 857004168 981547637 225429417 636210025 212635079 313369737 830200240 965789087 701715836 792893466 142534239 556563293 810242949 899905967 834086527 864224726 86178876 356535380 830582429 872623246 167648094 958629585 319428668 381276942 573692402 960977056 632851538 700165426 234799180 504557673 619598977 775616532 935818460 967201422 13305540 852951605 886318958 941403422 187651231 641340461 555932084 999212786 409099077 499726051 432430893 829673514 426097656 471539275 92988508 110990383 432115943 717747786 627359893 894919208 536074713 839850133 915086906 948530386 790088151 951311112 401969367 629438830 808796294 889371306 109772352 417566406 26109080 158116885 724562423 759303789 971061084 998235882 725779887 776100107 919679259 951546656 719735274 742869099 602871243 754026730 31279197 400882627 629484192 739049538 38417823 516807398 850724312 924831816 933780350 958566618 540829974 642328129 612017387 750516055 248527208 360321415 318363006 806184197 192193283 560952732 97343977 620223119 764716284 877251543 982594469 995148292 434323423 500913779 399920122 634846101 740135871 809818875 539297481 651570731 495280164 844143117 855176636 964739338 637571551 945133465 629776479 797958240 487993944 879738279 156800872 701464500 318385840 514140209 838049548 852576624 930848439 956273139 442115144 618180649 245359088 312763869 197295910 371058449 730180545 742426540 195094077 282266835 52125797 347691382 250230333 607914365 879631922 975838198 286170443 831506290 731398391 907918980 371351250 610294436 68254096 708449512 492933270 999344709 37716713 403647333 533214511 929749918 775549623 882648276 868388054 892544704 856003351 938568445 333154732 492887697 365810368 510366433 286607185 688536053 669538431 972674296 526589616 776090736 939091546 970589250 558381415 663981378 604772740 689957581 579547521 924637455 772017630 869983988 421351500 758276705 723973916 947627857 730673184 895868821 353462322 765635884 24036664 675156683 276711135 298082688 377702778 528259729 134807278 632159140 383503083 996435644 281468326 473393333 592950449 742470693 87449363 198652620 551775589 804221406 324403654 374999037 675148816 860306230 213876662 962064509 762621287 782346044 540839565 963679428 647076463 832066619 788833804 998110413 784868630 890609825 156208371 772468608 860483414 894266495 691308540 838506783 765547601 851038067 181323927 523371072 237733785 787593634 212543736 795941595 873742783 972448901 473149422 707884438 504820224 556532564 53168684 295196258 650309131 674796579 825706205 962085394 598727545 992952477 493195878 671246619 705324880 810819847 268810866 915420867 626991953 640382777 778985774 879510287 883261901 913256071 151059474 544195971 622458202 734197039 419388818 837781210 860587292 910836797 769708687 940762139 837818587 885796505 406969434 897006481 475488419 892786340 813437628 957282343 808332066 978467138 142822962 342103661 6200684 539778719 174377920 409511245 364165097 393257555 369953811 772056890 609067064 915444681 885452942 985654241 818070297 960122132 995914507 998712269 527656025 564981452 168820666 368894819 402394095 968000535 632644670 729972846 297209892 746561046 708277563 897269625 930297131 939736856 389146630 888128987 158546690 676745776 366738020 652947515 862475557 916490109 712343230 748649887 849897243 896261956 522711822 630766794 665032174 907927930 914271929 957531094 741611831 896129352 493890318 549003164 316768337 794044149 340472267 399005326 353978656 602268619 521805253 642249071 784871291 858750452 576755182 643512024 198196498 923517874 63387588 854692591 733749728 953556345 138692725 912255051 380357093 962465999 96543818 541119185 759848080 965169522 574327475 912743462 476768926 676327086 402832761 747431783 757605798 769248600 942748242 989226905 47966663 509846420 971158627 981198150 131171704 966401806 507479024 876409787 392770118 623360192 575087490 646998889 856414535 984116166 940212980 993125152 296899195 460318184 430277217 718886424 654567959 660926654 379067781 757690779 259317887 902057349 928693141 962408015 737940200 961868329 398761693 998847563 479514740 857755359 430106259 830786163 614660413 675763060 267375836 508643798 631367996 903473293 850633611 893902114 900552445 974220281 393066966 806829361 118168372 919543021 437734134 747819819 324127787 370610185 934430152 984835445 424384227 803651229 833026575 934152214 367919331 640047093 770751537 826557854 799446394 932090273 907263050 979612334 846151835 993276250 696541180 766331587 951470897 971746008 934564771 965105846 222054789 307227116 932954755 961493190 970735503 971944811 495732422 803619892 946584462 990546594 482126774 772490148 803205153 947089507 114963048 167094572 898467635 968748763 743846610 822426364 526967666 796857494 749943604 903368256 516435386 658927800 238400417 514922662 221187293 384793035 425847865 664676833 772757527 929378887 862416054 999218190 456670433 547452965 99479729 553055412 556280017 760632629 267265661 881328888 814989777 850489728 380321092 837989756 736929173 807584392 889692882 898607456 341188049 350561217 502445798 792381931 328084611 951701198 598349945 957091243 101092679 863400253 464301989 794548808 317970595 576679932 582927595 815633708 270199800 931192834 440681991 677853783 975108109 998986063 528821618 845820338 982107524 997446426 2696926 875911207 355479312 682025762 987384582 996520961 163754045 882524624 608259434 798602985 922886936 929362399 19583199 240218537 384821673 398645149 970287357 973021985 711136876 944616028 858533861 951870766 966839868 996116277 245715507 700412634 61654533 901702242 101071902 719029637 199687091 770178279 209894262 765616510 578925699 863238412 80546776 801183797 778755823 942747458 861973662 963169655 80376284 310297425 220734938 715332299 758413316 803762940 590425524 978984981 565355196 697079845 686094976 823712173 918098617 934567963 596034751 838598634 330244453 736808844 656180177 736633067 575122734 714169264 726281277 926839298 898615131 926223175 400981397 571823101 484857101 953126113 428102097 698373298 641878641 904222179 163068489 226719246 917787563 953111764 653910948 779422422 441975249 847683973 214952923 711680133 513008032 606888208 406020804 659744861 709112280 979059348 747896674 847097078 380095543 469841076 264181435 524830784 211231183 565728252 775601695 988413546 248299025 750066334 229809597 469337473 309028966 537392450 243680721 429566946 788172731 788365106 579737917 835256742 498002597 999788339 836714673 946929165 546321500 657989546 320736753 353222450 880095772 896568526 884042543 899107657 765595803 817955799 502557640 572822297 29165498 943982911 112278273 651895450 57941276 296102945 101162764 717807595 737447423 856982960 275630998 606488718 6789197 647399671 76469864 126801460 718357672 884444283 464964020 478652220 362231521 545162892 496215143 551450592 609929031 687402927 989282392 996414946 556467360 667695371 602262419 790297298 478188899 722302320 782673791 933665911 982775407 998587624 243809295 554869641 491284150 981556137 739098063 893625390 166574108 286091531 714962339 805430573 5308740 373199249 544162171 673707375 159253731 832313109 791741110 922367830 842896148 873726847 886154721 886874845 27731402 934749544 642653159 684403054 104306762 578203413 524635762 607029501 780128107 983704100 853503411 978062359 908920281 910266617 520060689 663420599 206402693 938425407 629078432 990280655 556263989 816803386 163786707 888864098 117810744 210453637 726271420 984932872 387394004 664353136 627699577 913310903 741894156 924317056 825818804 841010349 820984210 984084382 135305023 320487525 478476665 704142168 663505925 939962952 295395352 329802861 347571498 937756164 381370903 609742209 239035263 576649782 459149338 974542075 320424461 645680427 528603233 541435843 214750906 255578497 287098950 815333929 239125429 634802980 756622674 933273506 722557300 847514063 839606669 891990446 158084863 636392688 627191233 919030263 722915838 856548924 955201594 968259613 16537769 246788584 669444541 962997188 628585151 798880324 885259616 966769060 693514453 775687112 202015247 819279413 362464800 565755291 785110867 838769623 35549467 921843307 454789694 965306420 165868998 239588886 428679948 915555524 855736672 993457429 52912730 593808643 232836148 845049688 148860327 749370145 127965933 427340331 602659435 828278575 239923990 803727749 579906624 603559319 296113533 972010399 312937640 849490414 603645814 837982007 787679638 816869478 755021234 909715347 233880144 891163720 635069935 815206011 110360405 755256938 176996312 572629044 158951560 876810636 675830094 853675426 470029133 784255712 904933964 991813760 676919041 913288896 197802322 382622590 25325643 719156985 741473438 762314350 11594631 663796265 359531142 655284948 637409065 847958725 171806101 803102437 31276162 280615660 177416515 593577293 189656907 247767753 337677649 552106346 440048272 623175874 828338893 852872308 405924294 524442410 708138159 938114627 741532283 891210505 889515795 922445604 348799572 602247234 730021365 760001586 35559186 844062130 603047583 756488932 99686038 325790109 907951576 948546149 381683131 767199769 616440553 999397551 921560105 987328346 986879416 987131559 469045733 553670068 606513531 941092882 559899338 815079310 552149888 582599487 125386364 878034662 102431105 807347115 583972766 882436018 539524648 930230127 887228362 921677898 580086795 898172115 809205478 931884374 64635943 634506055 380764171 414546354 987890332 999210237 503307839 651460256 433936054 437959515 644755110 666020833 599555412 727824887 886576597 891234729 899740764 939585011 646418324 781381266 41435909 211101041 262575936 896150336 891765057 894377087 92407901 465153430 738637355 793484869 88348313 843825522 736039949 855192687 374986714 425618510 352313716 551960270 192535805 444206935 294561916 666153069 87484196 418705305 48332893 227868417 168167544 940079321 965062542 986522567 987408393 991979925 816144193 987885784 794735148 928915272 160747822 777626211 250688291 645815291 714180634 986925006 332399553 669144852 409650833 803043844 665425462 987310012 822036257 873476804 978748737 998066748 276134082 477707326 157876478 871028474 333813755 457544219 661722318 874714337 102732426 990225988 457794430 935739525 111170607 986477296 772807037 827410457 673148589 903678235 72581600 646267293 228888222 858835775 260297935 792273506 989691179 993476467 254201953 774457152 730775816 936428481 919196682 945664179 899401139 914484964 19876632 265383862 506132433 806070991 252586389 907731531 10466576 137955065 214890366 945475382 650939915 910670873 630675165 819438165 770308444 964048333 888763062 986031516 862851792 942364898 717127453 893416109 76110424 163209893 337741694 522067724 969109217 995598286 438217172 649327102 42227363 975099176 246268351 830273635 34338682 476925540 599455427 869934281 633119156 640618438 713206979 892585365 315849831 918905037 246274729 578437444 411160471 441956979 654334476 867514501 701062370 978175192 45360635 792201718 169642038 243521452 894092727 909652421 333929943 374241732 944557357 993196434 124108666 557912469 14094168 148210651 981431553 982493531 875633440 980423664 106025403 423819079 473384441 839787703 370715173 760775682 239366456 578432128 988696879 998790472 890968429 943167255 372704838 546777445 603787126 704563365 468099546 766856446 643721860 875507169 718442113 936366909 474567485 591278625 340369160 606424527 691154399 913038046 496290152 613612064 789197115 861207581 548150218 610396717 730252764 834145100 275045487 378941932 17163029 382639445 170334223 950277715 837771209 971337822 766297550 905478311 603418330 748554132 842428068 968587461 332140323 698449241 113321717 777813572 866071920 871161559 598376885 979399300 985648428 997235844 673439349 787929593 334144363 816356856 545367926 634415218 359784635 491026737 122789481 331095521 823805528 837313294 687356135 964412359 479347902 741853394 882208230 967323515 155627645 472099880 528476684 898100164 726017837 969267544 743032337 877623509 646732514 710538751 789897455 809183385 863221698 999993407 436413577 822542078 943389264 959674116 816265719 818849001 187249233 540632680 60097986 667506926 739226966 934638969 792115233 800444992 249682346 689250669 496344692 983608571 759018582 830075145 843032938 999708366 753818868 853828093 67947652 85383567 312089947 789576882 510832294 868974632 183232899 942278766 337872005 545355345 381761163 904012026 940352049 993517376 323428180 818557445 647887485 792074657 323277571 724477765 61701146 506962790 955629447 996148844 496878737 936694829 392746506 521692987 158049450 252627556 659396078 873637904 548247423 816106165 806160400 857083674 541124197 875561483 211100321 989401256 686668088 842076265 433590305 766868348 607900018 957008744 814307212 826322589 415669884 726851555 842535603 959279235 341337694 816536964 976977191 990416147 539719606 969722612 586637088 958150068 746362995 776107454 454423529 942015269 560960448 829319151 162091210 652282518 390067815 442266491 721421467 879716574 283786617 450477093 483435769 807714495 6666885 76640156 947364296 969135370 584228495 948750360 448153187 858312539 206162766 636948580 859694350 922560886 315326881 398568586 235062082 604656308 859909034 906385963 988897759 996812823 276129922 708290228 296834205 784901968 768887146 775025473 722485166 837665951 735784677 800399103 416788447 590543481 157164012 818281919 244122240 342083079 221834664 933821109 375824000 477224622 571545053 929377281 197502328 944053634 589622875 984725154 767326808 986406602 320511694 766558730 489029680 501723611 830109870 840586647 657222129 951944139 641310535 953972164 170526028 998737390 418042616 831299968 5979421 624311836 81412344 747039990 32109369 530611844 411655604 916463154 326908908 541334807 86619647 786638570 40980659 281542252 212214575 846144205 174968921 548485986 183960909 610461124 106527004 926727308 386987959 798759538 572938011 991123554 2063149 809051803 727161576 781598736 670031405 961245156 45339900 391011402 840388949 990565507 813640615 935047617 80842991 168808806 519779378 551911361 246601264 399252926 727665703 900272536 265483977 630470925 619865959 782757893 834517278 974593321 660967224 695161968 606634317 680609580 231132895 421102310 203560953 660777637 623137488 918727770 274864131 642740220 557234788 985531817 512231969 808985446 448332269 994532792 734163362 854279225 885131015 979405278 609821737 786739368 388409955 641751026 195446684 586824694 347682918 958387868 646236225 889556543 318701718 738710629 752627050 948506726 508173334 988773130 290438010 704168874 991315453 995513117 103471536 935950355 323618749 905602250 213292713 835171670 854848164 891223270 911132291 943110708 506502170 548826594 752883406 950257135 777756012 901841872 69562431 130092520 183759918 570835038 867231654 940984751 822078323 852785341 353305851 710012545 464019882 890656396 971449299 974704289 32973807 370514895 977524165 992988765 140720459 333283234 616539676 641946950 865813363 994614975 653653227 848646200 990082890 997739036 66683483 502813399 427279992 670074853 507800432 732213849 184063834 894089620 333687435 570077227 8563293 573895088 780591392 814738365 328219863 924217391 976535762 978906651 110294536 456752137 374445306 842299177 244524737 398344199 288179509 581636376 298170933 505522827 883872475 896047786 887549225 983032358 490937543 546954101 538511333 871719323 782822276 855218812 998961254 999652148 375569605 872335739 233166111 258222496 680196121 868876175 134322105 586191894 565027958 676327031 117463578 879839567 260195814 910555851 599894310 653006385 253502629 568454986 700222114 937935358 947978917 973144471 295194692 789548453 15552313 178736450 110441789 820135845 609140817 640650440 412118204 946195846 902008651 957930063 344210433 505503003 166358921 958578678 443350814 878161279 505111138 631485146 998997036 999499619 704602526 969484115 655021472 867948095 575184791 662006031 474322400 740968019 864165119 894814643 595744656 967501318 712701694 727410471 466963677 515665424 262700504 477514925 558568389 867284939 690163795 916497879 113384928 192654101 894072561 965078752 351700313 404967326 845568264 930296749 376511698 663905716 29186293 420611439 697184961 944706597 431274684 506423923 814253213 966198152 918714868 957292943 662676397 833567217 983642222 990316044 180466892 545639706 229037054 518596032 798002429 803228409 310957871 756004353 121912830 304427035 824240065 898605563 506112318 513223245 409802930 553397146 235351576 586861882 143522346 764593364 505555588 607426917 827962873 874726249 719641699 977561005 92556655 352158524 641610204 994336024 364848713 440783947 788927400 909995147 94649265 426441700 344642413 501553446 363191844 520519714 198371125 797938484 305451036 608075060 826591274 877438290 267483675 383208574 540044852 707120564 662327733 764659848 190699559 421723130 475977840 608360714 847481503 911122922 955739049 974109846 747012240 753028091 657719117 916631266 815170905 993333980 60749217 941455652 264221556 425487450 1147973 976451946 744937588 949321276 394299999 570739029 32765731 441806359 801931174 811013542 109429743 300357326 872609058 938618348 259322229 528692301 169483388 860217524 31001870 326405528 915429747 998241751 255505176 275821768 340470256 630698010 378771374 781363811 124115742 234040651 992056089 992568226 907476138 996839906 532675462 896209518 880205596 906224443 850632178 976675505 289175443 625680958 448844699 980638089 305126569 894569210 358064818 468848131 881761804 883782258 712439722 817588861 863401991 970005922 936578257 997008980 587004611 705938080 589109481 863878410 862206893 924789068 954306715 958110201 637655557 980861759 893500664 900409322 189929072 271384900 402411800 833151867 21659512 909123254 2248226 905846023 521322044 902811303 592609639 667675152 99767022 690553098 714676156 870258246 244368194 753536811 260842765 272178920 687744540 866410113 248914536 692834855 483968634 954984366 460933688 545980564 811710967 967924172 280862224 962872640 348492670 962654303 730285318 867756462 251661360 323987902 508303494 528440363 844179292 922714637 778119560 818188132 451129622 610641055 223863321 469400109 140701325 569407167 986131135 995333329 461837216 927699302 361627 793153562 897785095 941097196 453904609 707782299 922755912 961014217 733789838 967032501 294420422 558618289 276328328 336128917 466055593 485507638 78810421 922844694 923907313 967168196 468151686 651287390 13815336 898494159 695426555 760174611 786659354 800778192 995647307 997229905 970182908 996498103 85520397 913702225 403330061 964732429 234363474 388781600 357730509 761919835 424317714 479871621 398592468 446907667 873416208 953082336 436236170 832336531 560504544 597498379 71670363 680430796 908951157 923740123 967738947 994799821 355035469 998163345 510367184 853401514 264345278 790830692 708184991 790462607 410116272 938719323 469194360 970575841 260608416 450542910 108880139 495537302 762801795 911213512 709272666 955084386 200381229 215189938 64902392 941393757 269208990 699093005 272462064 554601781 249313253 882272516 736454517 944872631 721961922 961116075 813145442 862030778 738075171 888740751 269704386 995711298 109661070 721829934 216453417 280471145 17595241 164820292 218075401 798450760 301676446 914386180 83637661 989514489 119835236 722507577 985305595 994899244 975199532 989374983 394359059 505540904 302829126 767942253 509196632 661143589 840101522 869682211 901523540 963704162 4549311 652900220 545857884 791827179 652814316 684783443 699323955 920490333 648456995 658972330 339749207 942187423 414800586 512286873 448263256 770636795 631001404 962521277 450573111 884564641 272709899 434349995 823135327 983956892 844027511 928770245 681160893 922231923 534252164 800088098 402399875 703442892 93468194 468473733 135453874 370495483 595731888 874215744 341916510 870645120 366175599 842647198 396811607 797454422 191670351 625502969 921861784 948677583 918528249 939383496 54360045 919420770 360671529 858288842 730766671 839486698 568582820 668021168 35803567 931352248 92994303 762343015 921451849 965281520 599055063 877291598 314662763 564281761 552977349 883847372 74363229 511140863 935371028 984216841 233041992 416331525 56663143 131978797 46129935 185009248 66221250 503981965 561246965 888517519 82772503 911315132 614224546 664862959 889173879 993797523 500329906 820832503 590788502 834005010 653117596 773698163 636818218 961851454 102038311 672416084 643219417 931949301 372633315 980121163 857647607 858881056 610985529 860942396 271359411 891419737 217533375 632532033 829645494 990188611 853595856 881580714 473795647 502451367 58402494 423320796 173887044 828107694 641331352 694301254 207040997 773644879 423504123 840937281 712179161 915420115 340292021 878333205 694824236 760730452 42222062 504076528 274657764 729641094 774845438 893750076 413449008 700140514 239431376 681401287 22713542 617742266 645283129 667766861 710912594 799805270 333514803 952384144 887752183 918742437 14243951 272998940 698833043 801050730 476404086 499316120 68043823 987855305 476534625 678217483 931692282 936415987 188456893 620246413 569952806 743696901 29810563 565350022 668671182 851567125 2723760 383893595 459555416 967316732 557693188 899016516 216428063 478235169 84119293 302075016 137397095 268096319 751180018 771976281 483831719 487466983 373775761 394297042 167125843 693032589 933989580 994258393 378006305 466786010 413082177 625176679 902539790 941030603 439435646 860683745 386146175 979902314 571139425 884349268 541205797 559512626 719744916 730227948 292608278 918218230 19781303 973759058 6156708 192295083 781530936 823055938 937169521 981472816 277068361 432241074 251824012 417288016 713650427 864792675 249815209 401811085 82046970 242861447 914047280 989690768 483355978 751850021 569983597 918992836 208022329 712424954 618823182 687268654 651767874 995517862 233476647 438468009 823934506 870251241 903822980 989430515 161364652 902074930 749893317 995945702 630248715 963322421 448430654 843726961 688018838 767815092 979956019 992013579 772451985 966432749 843161507 903960964 238754204 648576626 99445346 847086898 333758088 758654109 328426525 836217214 864440400 922647161 154267987 315618529 617889922 789002130 449983340 636438379 264754941 748066628 56814499 876052506 40241835 976814737 248915179 461925952 864955484 880225479 860810485 996590860 203808804 408469435 743071218 895026953 359991765 742909993 778278495 973871160 241055209 820678187 2239249 313321758 736485283 834600328 104750503 342755280 373741103 481534688 661008265 994876250 876710992 924263872 993408892 996595821 273218251 855301392 682061338 704105843 522403649 687144823 130805880 535464067 976032026 980467684 985313889 992694088 292186289 400401104 671798506 970021898 862271673 994223560 660705918 666223342 954822324 958095176 7046237 814792845 384743120 864987622 101895677 322677001 394312731 575217369 808578966 946262842 664382612 751814496 896139554 906969404 552479280 556079072 60704495 863909885 654409411 767313779 205572068 683962332 692429299 835382453 778650515 952888138 741342809 805284053 538073359 714480657 386893831 713357180 639743763 978422487 387725865 802302215 130927709 165425299 566739422 990738811 523359187 926192817 775877817 893935521 949430473 955466895 26876401 216418350 505817935 626632091 794329040 863285273 317870117 885003917 588807151 900317131 772017914 936282251 788510292 905734740 798724342 996271164 649557596 783492102 709508846 912484383 649737549 706719201 936648841 945972961 47383659 296812309 902044241 987757935 987328449 993007975 518739125 540870201 886121474 966015642 973454715 995291193 687455592 746836726 888970860 971096128 543597258 717347182 159758316 923545858 571623801 744275379 933229890 988470454 137009844 825815465 136062025 918944775 477285307 862784411 886792789 940326286 93276548 195026246 176863008 411332956 648420576 876175272 385869457 785949796 709806413 915757872 625984288 866391792 600976396 921108944 275936169 338792313 972341888 973435879 995362110 997165185 482811256 746525515 23198707 712161380 929205604 970372181 49066178 425494796 478465815 608297734 212859952 464936494 506222453 995860174 261137916 784665384 757362032 924171807 149937103 350444276 635435634 728148135 997287426 998378385 118328562 363143747 972649853 998819319 960095877 980423362 1721252 660961950 14056785 740482344 140931335 631544445 507186007 862812225 345883996 399943679 83511701 582900872 990424134 996334686 976266035 997387493 987574356 989589142 549059740 819399876 374265967 704224507 215235132 359720761 250712263 902720891 243900259 776397320 48752932 137239114 996229263 996437704 847464896 976556168 487657159 903117771 168210343 787048791 418851525 581018253 494842665 522885462 963992903 973801136 759437174 841136592 42111152 779453295 3211791 981850618 378506349 770670198 622627020 871719922 122517860 697556522 786606329 923355928 478139630 898280589 151214435 955605109 248190840 289614440 810178175 990578035 297467352 498830353 607487317 888137426 222072018 373076679 84208464 545028574 777129940 878139394 38203819 694447480 962231434 987088633 266107401 835083450 653169772 807410042 596612595 864700117 445070715 781558766 110443677 629719780 397902778 615185689 116616896 353853759 196616599 220827170 548510828 885283081 87240100 207863219 554133538 964116509 609387850 844759992 909263305 990645793 501019888 728496711 609010392 703186524 960951754 964528175 342331047 426137280 420992810 996145643 323187437 532860011 992970757 998893137 82061559 797957456 533774315 686602592 845195204 937851104 221642025 513622947 455056958 652690445 125519764 901322839 210113546 373850358 518606476 792876488 308510138 613738836 279224194 695955428 274964467 475732553 234095748 822340562 224331596 681909929 288172108 436519855 526444229 539456689 912249353 960162319 984432537 986300061 204565143 484329585 956192112 959716253 206428302 667192264 124294550 199337218 349752614 477320870 962931152 982174193 682406800 690701047 771121266 872904386 289291421 698206504 685784090 791292016 79859839 158999254 981780410 991368932 391471171 543546557 374925837 537063809 369306793 676573754 171067580 789599289 227388209 953859560 286474672 403944662 921851526 929473548 165533873 255285166 757358988 874204228 163037403 277524058 841249632 894039292 600704250 915789054 985089727 989219706 874552184 976200792 275283913 620558089 713926014 950774573 274507541 771171744 458178911 815514682 941223886 982491971 356975916 717595465 618955162 973898261 684874092 965522132 910395315 929724688 344783578 441708341 211057944 273532155 83484148 536724471 252501503 979138407 227768635 648053149 484441457 525852094 404752240 950645035 845164934 959247027 289916300 643647500 762699476 998708720 587074975 655387544 794373855 817012389 297674279 840486745 106710146 190391728 440030270 997835876 457084583 803420200 97062720 713669221 203290818 269005269 370836369 798309915 96158104 101946588 98075811 751312933 539562756 962208682 402865481 478423578 356897497 581944647 175595345 777596148 518178882 850108932 573977364 875140874 978985411 984329436 99121452 643333020 222405870 820220369 593135164 604788336 584251149 746562458 597050533 676255278 977054055 981299860 248810683 984883788 260960261 399698196 407413189 842425231 541405849 685780494 871896088 924494157 930138924 938638194 180983635 310293430 796991148 884362134 98193491 424691461 982012722 985774854 23612840 868842242 20919422 630775050 585874862 962710479 728693829 779686155 467515653 991503595 341447773 418248382 827946180 900449085 971758273 976023141 546090473 836945476 230996482 241507500 152447097 512112475 860322030 925348521 173952724 445452355 439764936 635630896 315601313 371678460 381681780 755534841 681687618 759431661 155081538 436992358 443321083 863174649 672670734 744175313 500330147 500778768 865045177 991195152 257768151 798511445 638367231 884811037 237147877 472768197 436893198 659887036 939037570 978718728 897243950 968599724 726879969 841284459 771459887 807023644 337757593 950936666 437559740 477223391 527786901 946523900 25850216 424708454 910958974 945772730 511359558 782609014 277736098 551621918 639200811 716022001 859407491 986303713 21013602 371642539 941120994 987209612 927601600 989526014 837355294 971477516 164340733 240458311 654570499 731061026 850398417 921602686 968736396 995053275 973063186 997340699 839613021 933419003 693517813 841253286 628478735 713275030 742963198 845040837 984456781 989574784 703257697 740247370 809732929 934698462 517853475 695008939 321978838 489963091 719710574 888636259 82093255 903798486 162344538 773914110 700474836 892924803 969640431 979333282 406542911 745220269 265227167 562504966 160272999 244382604 743568138 750039986 856777394 966111573 718595261 782235065 666636161 939309007 921142917 994455281 228266577 278615677 996419805 997369157 865091689 931107318 770017514 808186013 321118634 890067736 50645843 610051527 530312174 759090223 559530081 827933420 25210767 92794782 164997283 864973686 540131057 796744555 547949023 981119191 134681168 736448360 42506400 899044177 706140324 750133191 582638352 923332443 856974853 872732089 710041877 861808126 228148669 336492025 512237572 581549121 222694675 703070637 118280332 692988707 957793925 968323702 208872268 995380735 206275989 385640300 312205091 454498446 298592992 310230569 491743355 878596781 667898371 776334439 357114702 519520565 620980693 780640609 427422829 915433672 857169848 896096600 340678010 822308540 153229902 387197861 719854229 848054749 620316297 981200669 137912942 297029957 342789370 368496106 751360812 796791438 204032294 466989421 385359883 813161661 592566214 840777568 317788568 766938660 368032457 740763185 371232103 793166385 915850987 984609950 414848555 974025790 784381120 991286545 720066056 733100482 315699612 958406824 53181048 710262331 144077345 171449525 371558768 883881180 207247702 546831635 882075692 951823748 949804135 951593457 520043349 737544637 630766121 769770357 878962103 880612227 206048381 241681181 858616915 928042626 146030908 932329914 656838282 688770925 187546755 658733280 839352228 949103386 252018998 588281994 47802211 503903584 772032629 810639125 914071226 970753699 154333789 528820783 300734868 416028195 234229139 938043896 430044943 611260819 49685620 764756074 552365698 847928088 42053641 811041700 449593658 622345692 618730571 709178531 468683528 667672597 872653996 949062689 980328475 991068887 565277917 674580888 53179327 718326206 997264642 997388606 88198088 165554723 492158114 617190465 493055297 907952561 946301881 960888458 471107380 666180735 383792232 477057731 540154587 565178039 510804709 918532480 261751141 806297380 64551356 414077321 13297941 887552721 872562051 946633437 95287808 468815555 405612112 746268503 917095068 976361216 483062243 648363026 798337531 989178219 842273848 925789421 563988964 719897897 974377014 993507152 837559284 951236518 80391505 427558636 621135254 927553566 436261718 720371813 509882245 975648732 809731719 999886429 874319525 930498790 912413536 954736138 158700585 212719953 107266540 275457718 807915014 860695987 570775776 987211385 474637998 671238594 739936368 756931107 486899990 830119077 145878506 163103396 524875995 779274145 349284177 866903977 41346621 847559984 950264343 987642257 938525548 990891983 25873273 343027766 39272721 840344237 583201175 785319266 432547323 539049123 539470082 836311895 381433581 799793052 176938176 488139132 900848897 956851448 846751762 948344038 50371110 520350587 633973240 793614888 610259984 740348278 560746302 695231194 693280579 864595662 857633591 943943780 283773325 314880142 908888662 997113404 686181220 868573894 842842458 897210415 51430848 382289518 719530412 891549590 114254556 127017013 647521933 685673155 674804675 694923473 805801195 927877879 426216438 743160224 671762049 808533465 370308803 635079640 861713944 929289753 363046314 540940490 863026709 948309936 131267322 175422511 805472610 989367493 880556045 887748936 597976263 809131038 180486959 195796756 101504707 208246426 117717430 122790745 284094422 896807455 114437068 293198403 493014304 791997886 665519570 835286949 139462631 780116730 679368779 922448098 285778859 506191796 538399789 685067697 829822398 872723671 604868592 618215554 147532822 701718680 188684406 406794653 985213812 996290107 832968932 865741692 310762987 807451467 457403373 713544757 678013298 973326152 788521746 970081729 601191639 750708940 26542681 210360643 100651354 775706961 515860623 663670243 635678761 656581611 627929965 842116000 802946819 983479506 253370179 539560413 274819118 569426858 551243674 578978431 481879594 521307302 777673458 951310342 577832336 883185395 102920398 392042113 71012066 312666046 310867292 526012647 358097193 965988650 960120732 984592064 691540596 799968985 753493071 982177236 779334159 945447774 725131445 839313387 165320957 258615186 179431672 854127116 658709067 762255747 786885683 809212004 77752920 430705513 927684655 991859403 68935847 243328402 178153433 853054574 955081665 994154089 542143952 841784884 79453003 183249402 600294231 798026029 200564015 874658625 299251126 561291101 621831869 813934281 852818550 892788836 862636910 956077033 938005737 958923663 966182938 970570024 121404027 887502539 54050540 688334947 349007902 511401746 861580503 995083819 107213845 561251626 351436899 548618211 406302713 733890790 507545985 915646349 70240473 979153769 11221269 742617606 674903737 681612387 381765501 544564596 986507288 999088309 377969802 786582994 115667258 546921764 498682140 694909724 967456605 972610576 513973904 947188085 524848735 630435737 829782218 904542024 206648573 474678745 224985648 990620017 321398410 585912568 306979808 468268152 886280401 886430927 249396943 946850876 692036425 956128315 643080531 767358292 345804347 595550440 869131960 938877289 104643651 393757867 325576055 683616876 576340874 649241827 572812159 818804269 852522512 863031541 513568079 963494874 622566601 946999327 20887553 247014957 817616853 836290943 68765735 86767842 846910958 941606285 845742226 979011047 317857773 377620915 873651320 919522773 343362728 905068515 709743436 739612541 180184462 589597501 980759435 995484234 456159619 651496952 688704396 980852043 182245601 584171947 921220160 941855657 373439156 481774268 304338633 534408904 344676205 728036894 109605568 942295403 718168386 769299429 529116931 719476010 500962097 674759311 445352572 607792227 875223727 898554489 659218082 862483264 680391235 936717787 571001176 963753522 805229301 908635749 102543261 253858010 368355402 868939522 73179179 266428215 28195044 638334690 619184880 691924918 670828516 724197904 262265862 548136408 82907738 293806123 2859436 713730293 858761202 972600943 2290488 457417403 876417835 909544146 216360786 362892409 793269427 826514852 52034983 963807950 177900462 804051034 24114097 55181517 898796483 959706627 348153287 729276415 953196333 964809548 85324868 664783542 890777938 911430141 555095052 950429267 733281829 947592769 100710856 318664874 219298607 920887105 728049755 842042274 41236646 273247593 212591334 714055979 688408412 927639584 834284041 969267142 464141638 931997059 219748384 532989424 778348153 823536505 67857563 866285516 856936365 939965835 441046199 913992144 500779390 562118997 774910018 944982491 921712622 934917590 285552749 484466858 520439696 872779234 457423073 532802571 10569079 592142433 882282179 924153904 761147453 777264010 787355635 787510078 462720440 971543953 167535786 895919329 969090382 978131155 380219177 568208729 404221332 747879912 2771994 524985300 221144177 917792007 644639492 723439435 85004939 177867403 609000998 732340852 214240355 551787087 505826768 671619009 320638916 979395128 682838022 693923163 170462444 724489017 409458079 994437834 514766930 594464503 35731688 194539184 555145639 629375674 4144192 860239236 231105717 772269519 539375726 596664757 166621949 968103189 445110123 571304121 400288877 909762541 994931509 999172557 255391940 455501835 492164106 527124051 764956079 944681721 766327389 977533912 104382390 733739416 164602652 748640903 590380236 813740785 685489267 870261745 792789672 967384140 874976651 901771449 228650396 805733974 710719307 777252650 247565150 528284291 794124888 905391378 662349042 676773218 367463327 416764631 683382942 942787557 524628632 882779705 768661078 815764098 984304828 998113354 614437940 997382628 289219778 500676186 411183302 962304057 287974681 687900840 188228450 554077669 597291057 643875937 785870494 983393222 896230056 993660333 168770473 673937135 25636033 935539353 804348932 883806761 939171180 968532838 855471734 959474122 679086086 889547771 978844443 986531812 64684989 844704902 78940866 385367161 335123551 468057387 179930935 444644105 472540820 956950444 256866655 570607457 134394551 287960606 669603116 955986636 28531113 747155714 25884459 819662394 548339674 853285658 410000754 621866894 181755778 488031110 719319431 973194567 513041092 594285186 439922609 737736537 789208078 810628079 318282561 983210860 98715293 750106481 229826226 802142167 20554902 333901828 396655890 968356655 232135401 961520132 844072677 971357571 797400694 820609782 2460274 518823325 200935483 790544587 571914366 733784009 673657888 738213420 793008201 993023679 485571911 602506169 162814022 445944549 642824493 816796680 729897261 761676613 718103394 999553727 856811271 973209637 913838510 936941496 538090218 846509391 669241207 706233837 151083535 298091372 88306867 506162187 280306174 795505487 144042266 518582618 483258206 909893794 706742854 767371750 394299553 405051999 727387433 895039405 898225386 987198796 581356925 864871609 411000025 774237228 192612695 443468701 150678 136474635 245859713 836810329 649476431 778672401 609783541 889018778 498799678 862911374 932306474 944298488 994518809 995328811 993367248 996373039 275944489 721631554 740196931 953060319 481702084 973480082 682337219 814691304 669176356 981913187 141114091 610499307 405480717 602626856 649654951 798540315 253897959 550110533 78799161 760993133 89677130 338682185 909159937 910075756 453081812 717160292 971170213 992136137 244365003 782725497 855317335 868744723 138392412 794583914 548985723 937146456 87312758 375273076 394938331 800387693 106001223 461432064 736387739 951335629 346453122 399281081 970340262 970791715 277602424 384735037 37902623 580250368 6183559 713495223 675071810 704063998 593251720 793383597 645149566 721330953 373779276 559753140 573243419 714570398 387030840 530372261 50246778 545412225 344037767 686771808 91367238 934363656 677830869 962251041 529024502 890596357 364990974 971173655 582232806 852429478 545312309 838358505 586256114 770711655 417919614 467390132 230591490 380980883 971007627 996941601 146895651 357745988 703093870 925728602 815052932 983380149 524964616 627885339 648892145 857119969 283819864 819914690 935206953 935361875 129920315 682221816 341369318 376043214 63209776 185328171 966224583 997994999 637050241 638998315 552276767 910586027 503214379 652080439 860129922 999511849 657013139 789524649 661805237 945228265 985986891 989373699 58781632 873108272 466102004 773667877 997804002 999110959 287091307 930634477 244757911 511956988 676560906 951733873 162694420 265400129 223798022 596783177 290366594 903121766 201834386 766126914 358780137 997958351 430035938 570822011 255261537 448393056 419963666 855652093 159683440 683617310 927046801 964646675 763346163 847663914 960893586 997853819 922579100 995818024 652388475 975980617 174426022 910227987 912256931 916644568 611826660 709771292 814907430 964652379 950321152 995118121 361448689 888995556 913746233 934571217 807000329 832611291 421954184 729955776 185589053 386815906 16524931 949363586 828288597 918011890 100214977 172759419 973533920 991794107 109838902 220360269 506558174 901898567 127627772 886870673 437612646 449639999 175686788 928485556 138219834 862461408 199153507 220880266 552792514 776407872 3046770 863878334 804195066 807232389 269108052 499255484 898663618 933383281 850843799 956449378 839437943 891480961 346503952 603513936 13041104 974775463 689812910 942746859 320760229 802692788 236007294 366161299 357868947 604750951 615165114 699727827 429384879 686005797 427258398 937619806 843636025 915463351 809018166 911997981 338793061 435425419 651782870 994362932 828241976 912500053 874597176 961340451 824073354 948285041 877763113 976450188 714859995 828696456 29042542 592239557 884725389 896842827 595309478 694921859 285792536 730163193 245493012 964264375 256380484 698845940 231928498 295930386 573449018 978539620 973897950 997056778 195925402 817388936 930700483 963609030 988043221 992952564 734089607 825679610 757645840 840876899 663299714 713008315 424730288 439503942 404468413 674411487 507806902 997834879 105848673 622351463 644999336 903061288 298517269 895749694 912300488 939831413 139603932 518048042 724605442 900763311 563767444 647233455 231534285 281168947 313706116 950696039 897609621 910401245 415535455 716964395 496343224 850428804 531002409 683965591 498658523 523966832 380098602 941248645 980930509 984039084 194897141 687218123 495582055 684183849 207680566 364232950 253179860 891688076 121649528 689594135 447110493 508753393 475428171 527071438 787961747 992834426 611079000 831880361 854489459 877850996 860814506 987125164 938050562 951550792 114854358 548423274 136447872 670142370 360905590 445953466 980571943 987845029 490593223 818679326 398578954 401504903 234478152 964841229 317953266 833788198 558123962 580079829 158315309 752936025 477374387 760591826 503447814 505688207 42838042 95719907 51775018 686965682 710499428 807656814 251097705 809559961 943203548 998825152 441414747 876409210 847624184 877756861 27666622 544428229 533727398 756085084 828008059 972474773 153704845 282907564 996205969 996740493 680631459 846497301 728542990 907814784 537852503 611753068 518274160 961339332 429400350 630427977 666852503 871219021 238249322 665228565 861210870 865580052 82170814 947430179 693064695 774839796 973718150 989089280 330415924 555829162 130015093 824544809 834101372 939197155 289085760 965136495 431303459 861421941 109842656 257604789 477067789 730223393 527597138 825582068 667420190 978489449 966496781 972082414 294448117 451477646 592979855 667272721 563297011 741454958 152300960 520507409 589109135 997150992 579657422 661766001 386324997 724748997 17977466 414127634 760117806 977753775 285115768 928681566 179672888 794427906 550068207 864746718 419082871 433445145 918941117 931549976 605804337 875996171 89699782 687273466 85454598 417453690 19095163 103832851 200567493 991722471 546038369 989173552 170620430 663712845 782966774 804237706 55112400 452289409 604479727 664960126 758621640 881127470 415393931 850623048 169481478 218427345 103288438 181356766 178730108 987242104 548487424 785031675 330892360 998014354 470434211 841783997 752894500 928597762 455397842 915295616 470384139 903101816 277921896 487538247 143861555 475688866 211305403 471843283 583445967 852535654 931833687 952502063 653888333 660623095 15708509 810673637 537412996 817972117 605038598 899954368 256059170 933830126 998836399 999010451 429425724 744317271 874564427 942094397 263726003 477550700 699356684 824477945 348275086 613550703 561002345 971433556 98027803 352009010 767451983 805177589 659051889 990055205 205601096 207386727 542440634 743242848 497227220 676927342 564814060 743729068 539013640 924497318 422495435 771437572 535339757 596310597 501387015 906901761 767496706 885072559 964278166 999573445 419206891 429771400 860372336 992054976 38223957 911804681 240115842 630455658 286163909 368183769 700016890 843970873 155656617 783159371 919643386 975976832 421891365 804230911 486880925 929770333 171855139 942252408 48407451 577920044 560430793 995909998 826378895 950091700 844812815 951905458 211424294 810239670 948201365 979203339 799492731 944046640 234399006 748849107 721189593 792073812 431468390 740830163 301232658 658937929 437482592 551679927 790210509 846876299 100471897 696662039 661516739 737581724 42463770 939841343 607429542 783582535 97787165 795708995 644943478 786511578 158828636 817689012 14353462 359596412 787622549 982392617 88812428 97932370 12362668 277442207 28504769 551514188 954782860 959981224 622094370 718343506 252541137 674124111 354780644 624777452 975755720 990024079 308063187 537553245 455439421 465513460 577830312 744169511 672863028 693075756 539619112 785328337 180341503 836272771 199366417 497666338 507411265 881446293 713201388 900241778 11706000 449220001 314703489 604610845 504701258 975074548 673263024 832108886 343551858 969003142 939424691 985877109 947029059 947451999 376663080 941439480 864380239 864782940 22791435 165504498 815751384 971202618 44511397 680839387 647647956 758101815 514053752 996179204 831014469 938786085 8217413 542839084 448785669 947385631 440300656 961842824 938923224 977243666 271212369 651209284 401353675 506912471 943909141 949222306 584408061 798729541 845890584 867122920 155135201 956227230 42059968 460677966 987138515 988809558 552530160 881787696 493510894 771252412 269277788 550106709 352492117 785714405 449978566 943598318 562973642 571320304 442901355 901403737 228597564 794152297 577006935 936300875 172597794 399374583 795141464 876389357 538374055 990936771 949165927 977703184 143883526 720658528 603192644 983510411 702230323 899765025 294624003 414315592 925018860 977707600 278407677 368392906 775227600 793855594 700277695 843801860 700746748 806140538 27394006 268502588 22041309 543102930 541313011 887681787 887666462 910967678 170228183 670021626 639099934 998412840 589801139 750124710 766748329 814522453 435799701 635409387 346890388 437970912 626822633 719831140 180837302 954241177 316895388 499176569 687810359 955064926 539703910 591221802 676622594 797170556 177682005 480433610 761603557 802916484 112671842 210764086 715240292 879575178 461524367 566185584 550385691 771322369 703942445 971610940 448208759 945956726 246264670 794480826 573397100 666324528 520391439 538993874 518658388 984933010 992856734 998898407 274937029 918548731 672610783 999470065 370555023 496399669 408815180 507577162 973324523 976610859 144086385 197556946 293803341 771977678 833585092 866958623 703416354 907718865 51348634 479466352 293686418 745077134 51907467 796338753 464685388 718280749 675058466 870163058 102619730 843612757 467379572 881791404 477318815 926957642 346877962 767640184 512801174 981147172 76756359 723288869 759393936 874336290 582037700 731682992 129012432 188123489 487681592 877810653 755021599 757256334 483499410 873145133 633595139 762928135 811363999 812940645 825425431 974731468 774223729 797453971 698037636 971406137 437942870 920225268 538496712 717727080 249900792 608668602 853361650 945485865 678046522 752622357 117880800 915183627 459075644 702907075 969924884 997679783 90235896 831390926 853049374 921353427 107603389 477744826 687073765 857915854 705613777 798369615 838977842 992293957 903074664 965494395 448240890 625004218 948969078 987994456 105151797 485942305 277224510 897558660 694952751 907410032 525475265 854353230 777684543 984906335 222341064 858415803 210059740 557634827 75953623 614634498 447988200 996615887 162968020 500060675 126621931 324000836 306897289 881668472 550069489 581521468 591880714 884647963 78856102 643139163 275675101 983338885 12930495 81145144 573106304 615494339 983259532 997247882 38093078 917691509 349545764 887143209 679415473 855851595 34849067 751939330 150916689 589228732 644262394 907625093 235865789 475414632 966576071 998248149 24233244 402553664 977046527 993330964 954865332 985768825 798261472 857550683 14006280 870160968 892905365 945942462 268491008 502214381 614385363 735758525 716834839 742649264 217576780 799850012 182650665 889943552 441512449 700106226 820807997 835505249 295373906 402972110 170745755 361896727 493710929 719491807 894694629 933974905 118072943 308103629 498609548 620840576 241175533 616592788 831990510 850073130 954673787 971065769 648154150 924028370 952909852 955185962 519568665 715680679 2953554 910457134 826045690 875841820 401010863 952357638 939486866 946912068 354975359 444414204 900525231 952269594 421906782 961291620 961738591 993687748 423088174 616595128 50453 403199691 803160390 860866789 601402226 999169217 714321902 823529825 388246849 623846986 527560755 904697465 972000867 985393547 290228841 872402509 671723203 711053734 758424421 829946887 668870135 719032883 29879993 749612545 531025513 804697597 915230476 932302551 627341325 922333656 32192559 183593795 453709537 933088180 172131459 832232836 862613713 962654435 658965786 956708268 771732245 828165530 139535039 422623064 498707237 559217735 262365194 885801059 567612465 716339917 833185727 965797513 689318275 985619691 147244118 539910587 354272206 554151207 228194009 619779178 998668370 998987892 18828155 144792031 562885546 806864987 172144558 504501131 688571591 853996129 115689509 149873996 469261957 501916996 457581609 810742928 291529548 357814485 81804104 923717537 607886093 918167833 285909096 713391080 255703134 401777646 306899619 875154864 994175246 998556856 316546472 587463844 714408138 792042957 549155162 952479094 448863860 917183106 610154060 808203193 368749543 434070399 505731086 674950106 540302541 760325265 122968343 732948010 785145720 889699685 620893216 869769859 300709173 910152203 883925580 982508971 578390531 948496586 878027302 887264183 937750857 976138509 689237958 942272763 822205083 833682426 661018757 866458083 413431486 469437841 434126529 609844998 314479449 563089059 793238430 959473634 514977285 544493625 333030291 375026319 256729519 945026615 921101374 999212043 308902080 683269625 125375058 212698430 492461339 892914084 262699119 537368379 529306944 787658181 737986172 953103485 470401422 557482108 670592979 946244996 497443624 724997994 366208467 863793117 31686214 577575763 6770470 604367554 408013127 874563162 966603307 981780580 579799399 801600258 205423336 458061141 306157357 895746358 407791899 846663518 205709658 889300110 56754302 505554889 780442468 872363269 398562095 695581002 500196722 546161843 438658063 471802975 679986071 809780124 691663466 807586065 395029445 655483682 567417114 697301634 809946956 903481630 990091512 997515057 160131946 341707671 164909817 331023267 240323903 819824839 930863424 943003224 618629951 827687269 117706161 946106827 310887045 926349750 104757830 849082118 612934348 749332452 342141933 848600815 226999174 576588672 701674910 833284830 942790176 986889658 15669339 501069058 224025322 706844304 493108266 589545487 602526312 744837392 672264933 857904157 167533762 208638931 10124665 261966176 882077421 958019772 539442129 751074109 222403596 790322413 651040062 731051353 853622327 955578954 185683419 206710083 226828849 450877835 477771391 559597584 399952367 520742398 398624849 788007754 7214849 697037321 541626430 838086253 478446249 905893381 28728056 559788627 352370461 526703174 788316269 902137402 408447449 493879589 202202169 766695241 456678075 676348245 808873613 912908513 561458309 966348455 337956660 594356874 723613541 762311191 959430170 992155834 504673682 605735474 46317744 925168275 922078343 988096879 245256025 719332554 172949534 469163894 636465586 887385425 882126061 894579912 65764044 743923866 305804524 695112644 289836285 321817810 634515986 697269883 546191377 594239788 799496117 819901440 554278682 851195878 813887214 920125265 106060625 779935054 406393231 597791229 852268658 855894169 112849975 393677317 335755764 596227671 454714723 467098099 305179656 482467979 355506856 614216982 685208341 736821140 524004474 683941916 947817781 976417617 752070642 903138756 579724491 758786317 381487875 937795097 20872681 374648144 149515234 327373248 707355033 819840761 324070189 664103353 566284659 834157298 675134158 775678173 253065388 600886907 808117312 821058488 592506682 957850025 706453163 723536858 784583122 867718151 746413644 844430362 685272925 840706936 774140576 835429298 565653436 771271764 294018863 737815050 695582464 852188202 265280182 431914907 880586902 884021725 953225756 981442597 507239531 961363888 664456554 686258063 609769737 804274736 107504879 824145581 804741102 815416208 942014235 954268315 536633158 698898068 889223561 903579016 806915735 904680104 430774963 510905187 346073640 988544769 470101187 898082926 158941781 236527262 194738722 640449622 834420516 961474229 894188037 912599324 103227532 803710919 173329164 245374499 603202382 960363066 52327648 670210379 225837686 645218879 534104378 695019058 985722914 994916063 990563209 991042133 284944692 649486011 557279657 916549997 390274214 623490031 648064936 654898127 666323010 730333225 114037202 173267553 854092801 895588451 298353375 812449997 61807770 700398321 257168711 500098888 555691557 702103448 248133725 333854020 52251967 867373187 478491514 751107604 994997218 995361189 557913473 994815850 324739601 873969736 173533687 706468747 898930533 927247984 451533393 874455447 610619014 704512337 373472723 601459002 601010799 938764105 703882896 939471862 759841056 873323916 339729369 734763564 888037959 975287682 822726334 893988631 145339999 307848749 501270266 805987432 368955767 692824533 976011835 987710894 256752011 775551565 2243352 794344950 164870909 831255274 260171207 986421852 414076329 755703354 967258857 970780998 830762796 839819962 656702250 869772133 599506845 744774089 118142244 904502238 944256374 975663430 388923745 710591452 865712430 881564832 496293891 734553843 8476511 255081573 391225779 994436315 820505008 917851138 106396544 107427984 925110031 977164674 418018275 556900033 21759990 968080129 762887891 805975375 46868849 265949932 211994695 417048973 564230123 668489124 694435866 978265206 879108804 997041496 593195188 820092810 469769011 719211852 959441799 968292732 478087033 706787807 487528257 933840853 30412148 747086999 964103617 990188340 246918203 502986908 204941096 853799214 649339764 828312627 96211951 242768243 210933339 880631962 705509570 797627813 560938795 925372155 863202367 977736741 441849615 785403481 445032595 548311709 462797948 743204344 642642605 780915513 32804156 779948800 64505371 567081760 777648227 949309626 655300026 982621586 61672906 453619939 145259178 536234532 471091268 606795399 64605704 135011869 41872007 947264743 788530523 816793982 895032221 896686475 276474132 791864604 55807467 845923496 747525782 854909370 805101891 949410634 879112871 901275078 453149263 500627164 97206155 708265046 873996546 981368512 801022058 849832021 862532994 917235399 554266596 913969923 417224839 914514508 745304421 977429449 531506543 965981507 145047301 930705402 822895508 928458631 51595580 927098751 434856447 715590072 979915203 981092364 838826914 985342623 381962787 632123345 184385829 878039378 96435459 617747186 886351597 993115766 699686094 776452186 776623218 984353426 802664444 841985772 591887174 730285119 340424265 371547329 911219823 922772263 143053460 285526837 677753087 769694492 764286265 821337762 881579040 904398390 650126460 883993087 303963157 974573343 110224359 336709343 458066281 895336616 993767035 998716173 407085169 682968934 236924578 799777043 209385318 493026675 629498589 832832234 760048269 934413240 515968677 804597660 578405067 844883908 625978547 703721966 402724179 977436270 706497916 971374476 317361425 645827177 206994028 434521526 823654746 903528670 716543018 866097151 106146184 684558270 860569728 877972253 149563959 644747795 439402579 507726306 518744050 720980602 17561618 297759989 211327769 847457414 358370970 977252783 236103191 242493654 275161985 377029281 173217597 692783760 68181560 410725829 204397724 756353834 825784059 836500862 498534039 938345377 693003508 811948026 730545577 849991817 414227640 650399135 106587350 372629352 281048725 855244936 994920714 995529930 894116217 899882453 497443441 966342691 789814773 939251267 620991310 707400773 940988891 964759618 126943325 225422550 982554115 985203983 606369774 636752844 920909538 927938045 99497549 743041676 972489625 972967321 700530218 976017802 129548717 768594907 562514269 719246615 504610224 648835788 91022580 297666638 579829784 588661544 416375378 504919716 672326760 850295944 305737898 907696991 546380176 838354088 958128545 981526824 930150698 949809642 661934131 740811302 412038129 763636470 812492617 836678890 840765915 872188300 303438341 816632595 250164623 259260417 22206890 151824163 505467207 522668827 408130239 917341023 235944147 346292235 749663088 816931049 521788765 967273996 660297638 925779171 248178839 675514488 120371440 652130003 988604297 990087630 564126968 688216769 321319203 809845987 652526054 720395405 65649713 701947859 820298916 886944558 229459542 778537966 856344779 893794529 499934645 831110556 165381238 953491156 516008231 597117017 794516805 997891675 468976813 993533036 721908412 935067970 740583289 959295915 870095003 980589505 238805122 450907066 109678603 338027583 702083093 749915424 879316346 914342429 590225647 758702412 126092766 614082884 997614754 999248054 417196866 735799258 955590897 975097007 587565216 709868689 975391848 988560314 407925030 658940780 145859904 610786178 376613814 505731142 40420589 375727653 77826706 372707718 776474241 816584423 385947864 496954859 658390414 800579786 181240633 930608657 811999682 935135320 902576152 940947661 942228253 990627660 932605087 988560254 317720120 435105314 7435840 857048770 459791335 988028229 606500674 907237846 626392652 672581985 724747507 920264645 864243622 968092835 249069999 828521110 429143415 450785871 363065159 563018648 472755404 864590819 182784123 214793400 370927733 960443038 796488937 987966473 169940652 480541918 42389079 768870360 431305559 470682632 680499573 757723804 546850719 581846390 930356288 945472729 636059603 800443629 896271127 964415906 27114440 341769152 556427035 751175066 206474644 637208876 843447149 947475216 656495753 685582592 236327470 290180183 859646521 995660552 554524823 900907863 17067415 735250037 261020168 489192519 338469431 909780200 723756972 907939574 902881042 994916490 360012639 845213522 681697813 765187372 270776061 280472278 950223285 973864741 849982165 945546221 710274948 844567689 18416417 426524333 272268131 688666052 852863010 870610569 162187568 436011245 107804171 657009500 193238597 252488484 55946690 465229435 761854861 859999611 63117346 902879823 436802004 596376613 915397755 961050064 786579841 972074587 348391304 854702184 36184051 744151854 86026419 640151810 886113890 932216614 478285179 733962113 10554166 579027408 972885504 988387968 480578010 814817138 505990636 784224040 779506695 965996921 49247041 471615618 579965823 782008679 350070629 877650922 942896482 990987231 214138694 587503827 221901724 261882636 723282613 918056313 245727531 302582105 282113663 524521935 224408218 521515243 878095262 879892509 255404429 257086286 103279461 267081024 438491996 682543818 521286309 790339004 176044606 470637822 41184168 104234797 674439797 697611656 918610092 928387238 328299969 662945070 734380814 752359253 41314117 717009316 534662082 571105393 644997343 839015353 390235919 989389337 381451305 385802073 109042945 893114671 420835607 917436298 575677787 719836268 553304252 881056076 615519782 855293966 743393171 886403763 503006962 950586936 615753842 907142596 464649594 868772341 576882523 692392179 423177564 465831871 975451073 995447870 155546767 562445751 520215773 691588029 202637903 296445648 297332109 685136105 243805458 696813534 396933549 505238352 565399710 722180570 975773833 993857236 927538814 995417927 13127129 941494742 574672956 908068618 841604308 868359209 694691852 888780631 51220594 909001526 26747681 871695737 982921761 990931026 711530749 855358524 628253451 771286389 176894171 460815330 759857706 931773085 824880441 955751763 382755360 383315308 748292043 922214829 46923630 923164497 846437833 900030728 94717641 910766221 286258009 955583553 69336753 538251212 430312300 674329655 687949476 706000799 813599120 875481151 247329390 448867128 975686021 984654785 45169454 90939580 557398385 657611577 340565091 507703638 450388736 601347075 383212763 390981921 453826422 871467376 254124500 754422765 131403008 377258350 335972111 664189107 12162704 127480937 505986913 942405806 584022820 692883704 48581666 819050418 63108724 513361652 511004857 864709645 485304874 496112730 795160888 996276419 61546205 830116741 873087586 905560987 183843113 938594190 326422074 633767744 265035443 760264136 329499619 526399657 926582775 988689041 242622306 257053663 911228381 944055009 549257668 920722721 955852832 969640556 355078114 726064928 270096922 634540139 800124906 819041352 763765694 976305073 420645469 676987808 954493274 976864229 748717004 760446774 279140141 710044791 36125674 487980151 917012256 997851689 331084048 591101067 846921380 850417355 379580710 987323897 162212558 254937570 403831705 898945924 657267194 773161944 680142043 733627906 903171051 986424118 972396801 987690626 801291531 845982372 879602467 901048583 250423584 849321490 931599882 943415244 965899641 999428454 763306475 886260836 357746573 456728441 672299473 993320231 169115415 700623370 50308023 467913323 816073403 867877805 208108699 977001260 945703917 978582815 379988189 423398114 814485821 867031010 106148245 577687670 188992336 839361836 101726586 341680953 62351172 280399027 283602737 586018871 254927442 471776830 650471293 789984187 487537227 519413216 684818424 765511425 837209174 973272061 249567937 976116662 811798249 860868312 430439515 713367095 544218768 948709513 901206349 995974120 215304889 418226698 618951173 985427097 776939233 890653034 385096595 719089552 729688235 895091016 673603584 915100561 367489808 503645560 701807563 734217994 107199774 879065027 422942733 569911834 763949766 964830398 288330276 472765468 742758424 867577578 238956832 580368270 858136892 903974923 500476246 623373688 432110651 584808146 479116668 728650437 828473759 953566641 970421208 971149504 293565298 332700759 268865702 889126975 831205536 923070639 217792668 639983084 322777351 505737600 934627263 993905461 775020445 931330502 171878020 834631026 792916809 876709748 92355575 166298811 443469494 804163694 1415867 530447281 407027413 670639582 394238253 651112600 182462792 611296589 443232344 784225003 868998317 995966602 793826760 818975497 97786484 749733974 336796919 845258616 567210519 958226647 519864493 678967468 420960446 542362985 411010138 912331443 172183406 965892618 454468017 725233150 826145744 904065725 199760590 844136489 685708708 706534393 399550275 737656966 222763895 880369577 561063639 999382406 257130821 784004755 33099220 682955453 966288427 977721286 770991478 858562339 435411907 928255754 711463227 864865778 765429227 903322816 552567844 916024662 474698805 507663455 975943025 987741981 829889234 951006829 306528496 401440975 468020853 498073543 717152451 961699446 545039706 796745701 555028924 990779051 215724975 249941704 213846124 425580824 539202036 648349996 643836431 910890303 275912101 939101520 301728413 629979938 331592396 483317929 543997774 868962731 486139534 841458085 448079958 499424574 81672073 247837858 1781876 171510368 366090043 570881531 710745523 894985229 953375187 971522524 502526684 711603208 405103724 947578956 141006255 981457822 557943791 662182272 20064754 528097978 826733249 857799124 861215393 879523803 358640506 939644751 221782091 750644204 766396363 950902210 964344109 994971699 907203968 948179434 928777803 947776425 67027483 373278057 611190218 618940122 729346655 947246652 333957791 401886266 949186639 999670760 498235110 560808376 496886316 817599288 867682329 937014592 130706908 184880950 136487602 555315674 552184540 735694633 430255379 656656090 174700161 940904449 853383448 899843386 729716353 886085385 766337588 905192366 118782292 501220329 82323378 822599666 877753623 889620836 469713488 757334443 703758107 968934846 338853855 923396728 648881780 676042483 182114458 812035761 5882415 134052698 367492254 989207774 994377533 998722795 369501892 973840953 65723331 840001242 344097397 942492427 712984290 795087716 645928783 913540689 727303179 732575897 353313170 445204131 157182244 605524216 834720370 971717756 931139118 993182446 746033033 750528401 893374199 898125031 202953611 218246950 643901862 661104464 809853685 828369300 261730240 753009499 697078224 942235987 234072289 332120857 932029406 975093760 318425385 525223659 879563439 919903698 781577052 933567321 676158526 834836582 912469531 916334272 348021003 431858360 632692135 783124952 895763327 906788268 226321195 955768283 58390337 66892303 488866736 991558575 299645922 604688082 364110243 846366895 268659229 568264698 468854192 677540459 804504931 975026298 695281602 809812389 474926135 549669568 491406328 931898091 228314667 950407099 963882884 988949229 622360296 862599884 71322464 432653474 799745192 985172859 753778397 877811885 160545207 984313655 795099335 970459945 275837371 661668714 204113675 598049748 466589967 591801502 172580459 752730532 244731549 289881019 873610603 944060386 784945640 821237602 4916195 482289697 7088204 567642741 283261259 700274284 620476871 744244738 666480016 810405797 386282739 878651926 2088486 921366272 406391942 835003378 384987396 764543143 668349787 817624264 486657193 586179519 326644765 414694938 722700487 900561326 742124249 981502022 810576043 941260866 768474316 824324086 231378362 334077161 430830995 741324725 519502286 734168771 890084452 925341105 186108891 773003847 572838897 982704763 240692738 679909115 936494716 953959056 303524490 717652102 911088624 923305962 850725739 978627936 229326307 983365895 671237651 773076470 398526508 801404272 639563281 949415923 335265121 753473796 956961812 964357887 718049143 856600745 6200218 379858599 307591891 531582205 534203802 581614859 225195020 885163086 628612327 910823200 642095963 831357182 122595557 561588975 9804661 676827291 277651718 860735453 612792328 940292452 830304915 866363479 500231586 823151109 228376733 855409175 297686122 962059063 250097544 404792214 303209864 343340869 925102775 942086610 576546183 968976735 703586484 868269035 549331957 593146356 847844263 853863244 557968267 653208670 659713933 692927617 320070649 850618010 718151102 757846976 347063338 920476816 202219757 275969485 229768627 807276648 48874608 177775568 936789043 977050707 583273866 922280141 76812335 718162919 803689476 909493461 70012990 877044697 6768387 666838240 8333056 285401792 304080897 755279514 196371622 566662132 316016495 567789157 121344761 486267961 270161637 706149553 694970533 975394487 962617970 982206068 152016450 458778339 705683842 793993246 567256269 610240126 162994540 418206358 463449064 630125027 555902146 585063834 6260856 579348301 497913091 710693375 292372141 655281939 572374324 804495578 258468361 710729650 331890232 976134137 192876736 408111926 640521900 742570239 25826481 402656697 22242962 596784074 581956910 976077052 459681533 677529476 442164391 647591157 180139333 944610471 617883864 908103795 51405431 648083945 694635436 993887061 223485701 322680509 533020128 848367626 860744931 985763955 491219449 988526545 612332577 738628916 923183719 968786690 565281675 832936237 581978201 635821765 513094998 995846056 774837934 826605988 636461850 965012289 236924425 980025275 576384252 748274011 117609091 295786806 953875978 995534267 680427271 816913052 885661879 971554872 470987335 501625188 153230752 400482718 686668005 729082502 333427306 496298925 814206176 878184563 950297105 988959478 249245854 988372808 785794944 993061683 702513082 909371888 988082619 999188572 655515967 963288242 672955742 899974665 447951538 843853437 551698469 848256458 208922440 766874530 473991396 535670075 361468109 863140030 362426299 732630394 589302478 803977971 741195892 771101834 584154766 912978303 580707219 882160099 136566607 799639438 519955795 727796373 608124826 722765151 265422989 551001214 371047585 536342737 25268365 254553693 940800283 992900143 356015452 440481690 983440801 986930650 284517902 966679985 751788633 954419681 523690024 845514717 855922162 962173643 689606824 696762761 975265143 995544865 264745720 333715317 933207076 966299450 124205342 814985555 264060614 714808064 730462797 984966035 168170583 315017064 746516339 913570132 88303665 681299553 770968074 815193686 732710322 827977775 813206738 858166686 834244619 958035649 198598302 791669848 562684935 671861593 604793494 634419101 231749111 383942560 913599090 922044604 800601343 915534878 628570800 733456826 500770093 794963182 714086909 734235944 807977078 815870147 549462649 992610186 19595504 329943967 492804308 936611571 876298500 893911700 266366495 489135083 524899136 926434515 629928308 831412003 892109329 983936369 237787120 862580823 573225163 679066722 750434854 937867718 497159412 783660040 1584639 728087157 7638378 177996185 585599285 899711450 440139985 485520832 866681662 913528400 244744876 834903443 500249281 862902581 753982431 759681020 608977913 973187625 457209017 549753989 271198504 677321705 413481568 427137417 954841699 983630520 150580349 414380551 525370371 699192834 684764823 838077384 913750337 939600554 200623131 228843896 899961716 914841600 927249035 975299558 145467576 606088752 310366348 506683674 387007412 404959035 429286187 767114357 889573907 909547189 956231861 981135092 954526760 969856955 81922137 944192886 713560805 995796474 299292461 338297280 117327771 942018563 722929134 994298050 760360535 910189637 128611740 810044112 777526743 985850877 423268250 709539440 204648860 760241334 869615965 989306410 459196800 806201235 133406707 530271892 204861291 380156391 573952107 967467847 394465802 412044883 676994268 897078283 598491192 930651711 235593028 879026264 278403440 882390320 158218964 165649361 12736684 239294609 298301425 741484769 285010534 663592246 707019275 775164224 742788253 857148842 974996974 992172356 261674726 327630410 798983804 844953829 773674602 828607078 148688575 732792077 701373653 795485217 810886549 812641385 1971848 65133611 660103643 679849910 137546686 616175015 858716309 960670181 709268301 968364084 730295745 973243530 988185510 992324255 248174136 513061882 26191054 831155479 550615594 724326694 178884011 676676279 160190043 979908192 598894854 665878292 512162632 907588554 325478812 670244322 26044225 980235532 990865826 994514544 719555893 801536947 955246088 990291244 455053147 726029219 751487387 999993788 894768498 946192810 657180648 817781514 259780244 946713486 823109299 999101567 666871449 883715094 836721533 911240018 272493099 693700936 832918999 906151560 446437510 704069314 618881999 783495347 672592580 934060697 746563273 881594736 974695173 992806427 114821243 766148131 767503780 982110535 897840590 917569187 371114962 426277010 987804614 998248792 197738476 796992380 9456088 543673248 444596307 452443669 623002772 775052470 172513842 974869849 930348283 932757770 426279719 487634044 349423295 497248143 233838168 298445225 945786789 947367463 436318944 884522390 927648575 932761036 271043670 303469617 241986778 743604508 683104032 783762749 18336105 949814524 488858639 705845439 416060400 870106268 624719127 908851259 117637899 676658242 904900076 915087850 446694320 470923964 747948671 997508674 275848166 439072996 177225221 659624834 709817000 935195179 352989099 557512853 484989816 731034200 209907592 898720409 948219315 988177840 112097525 222402776 731478682 989232602 193590303 613419092 959453331 961017086 821527003 823244067 609831064 913457974 56227197 359881178 26408822 325309958 313754656 413541593 112258374 188776683 642298189 693792624 605910987 817536483 806557920 816127293 752499850 935060161 762642118 954935875 721074016 729755310 851901720 908325090 908841127 978933560 823262741 900118149 518082108 587128306 460398645 640211438 485105191 885827625 948693674 999690671 899042863 937037400 227979471 831952236 879642439 901532458 426978228 556883393 106658685 723393035 491498562 912708176 396441874 442966320 222780528 562152696 373899847 946791104 648301545 677264155 281191502 585490175 227095098 807419736 712077723 999645373 735846117 982870901 446117498 510156901 101836200 617797488 338571432 601242196 222431300 629271723 284048784 596569212 578119127 614032020 723698035 949562755 655719883 670983477 407309584 909400666 891808165 965615260 351913684 882550894 8590871 275998166 619384318 766503691 304418675 737417759 382972727 664941540 872055168 902978814 458622130 781906503 930333081 999843945 889973425 890407962 738086276 765122857 426225905 502128402 750755068 993063228 707889364 738769429 870401513 989736600 378584179 697306098 340884512 421544910 484938992 649888044 65598827 881842232 497087368 885926743 928414714 957552464 681263294 874680095 733436351 825055884 264480791 722200895 947794717 993657688 74091243 793887859 984258281 988149998 912904167 922565008 793333699 960058932 128329083 463726551 865006220 892565988 896476691 961049942 38226504 335215115 663502563 915766529 946433899 989470530 261760176 721708503 68437644 330129873 968684555 988279474 141139972 794444783 669519742 790797246 775419277 795424562 123121062 206941874 688353234 896507897 403764611 938708920 422729823 720597668 114762689 861576583 533556344 933531464 190852077 513406166 964829568 977835976 507035183 834832232 791970926 851767752 786565248 823869171 306320614 690909321 178658975 682687561 454738550 785456680 959896185 972159815 812644564 822021865 66113199 955050197 119479057 847577223 532978873 576330823 468530700 585646931 857427983 971095060 861028230 885919723 667371239 930478877 704428949 882411604 986424523 997889694 140735316 897076166 764772256 961289189 78555961 467622794 550887510 848102287 102235981 693721157 751398588 904784154 645800207 679184067 323263134 736941856 109093861 753934331 615139883 946106604 430489521 494815015 149338327 845105905 19032566 895195070 202823245 934801115 123353527 328191430 4839627 413742240 302749585 577191264 643356773 989957693 473699622 610185468 45769799 970689281 256569348 500150627 345285333 587180696 675855067 994675353 232022084 640319736 118123118 847476139 137482872 787289656 843562036 955305672 870823065 970687105 61075162 235105725 843071909 952389846 813385169 877130903 828675929 900778593 19532249 915662366 994828501 999605232 126449548 557897995 225617595 819157114 963963575 995460630 467296474 559154139 26634956 788119307 292339584 367900058 420041215 560907628 70914285 368788347 44697645 900548850 793906124 994834721 379452893 596853863 337683576 609247334 621054218 649978503 16182874 368631826 300151575 921042679 644237906 941141263 383909876 522601399 155128005 692336136 987001563 997298813 292280076 666617757 519427302 972096508 718007818 911999355 533704105 645071562 183722401 687256714 713103502 940151903 536773659 689624913 347999233 487565738 3404839 429433082 67559718 283473666 673965423 732554941 438005205 644170285 119411884 646176122 954435325 992613674 540068082 877824788 508599534 772928879 345177600 471064085 777663340 947761360 87926321 578911480 559871712 939462599 202660965 623926999 230866928 314385321 279760326 742574614 518405658 909114455 667973725 677556414 459916457 468765596 302117345 438458187 360981313 365626483 693612064 896895064 775541078 808057495 420717514 954777134 271328960 874750999 296516920 980806323 586324931 907134321 706703280 709680687 750993492 940708729 408062287 971543399 324958075 339342256 821178631 828161591 317004879 884376996 137314743 929572234 960026548 985344092 726775621 854993539 524146112 983341327 162088084 985546460 247536485 689100960 961218330 978123974 380121433 732433241 223244481 406050095 586451485 928294827 482690770 631367600 100990638 262398777 156537492 463901126 536338552 550146089 420242721 682598239 696739186 959892912 710301722 872264291 147947117 722554798 543496941 622824620 202354012 313845008 325279608 452385039 729101735 938764183 601403481 898836107 150892726 247524425 4400834 649049548 615557012 830561204 290280957 581773801 284907589 350635135 115836884 274729018 750270536 888245986 574858597 927758931 988059604 999905514 77435864 732939642 306176960 583230887 391155842 554534253 43101659 918108237 595770644 779838335 772630331 787002064 393305776 713606506 70475538 103171041 358611933 726027586 232116585 802457601 513576620 796416982 48613559 850220496 381931298 925481582 688984926 876819070 629949914 818071707 176525056 376777359 276695801 555030196 762458994 918487336 294815967 579126836 426099422 563543709 425762780 913218230 455383075 612746359 887469911 957388502 856422291 979923662 238303268 658369830 934280540 970660648 352929151 962300405 577189538 612563020 421055507 993844414 157414754 410741084 898525832 938443227 885874461 980988385 377459358 449742197 142310141 380114920 605414072 973287795 776256431 815559754 390409674 927611526 326724713 680234724 664924465 964492465 284295702 525058708 558139178 757000141 56217622 824105010 616705931 776513655 274377452 396733148 644848461 964896558 584521874 687061360 12443 486646348 23077085 136674844 7142220 74714753 590940312 671231133 477486161 949055040 121307117 695256016 117878285 732839673 193508591 931543757 496756434 550076554 47338903 622302061 540183055 748719566 928393294 967450297 525725743 625395917 190882012 876446277 221372596 590601715 422543597 751899612 506556856 600499947 365759979 627696127 934247365 993396446 590912603 994651694 9111363 256262806 598224599 880242123 794048269 925695506 995407296 997750913 637709312 988069659 150467007 917929899 112770830 701739895 142607169 629097003 658919217 978052691 5801706 958023748 433735861 945717914 215387628 853381250 768159106 794902596 533556034 750759384 107873276 283511750 143607388 642153277 45553787 107680549 6673441 348016876 697636466 787970471 753752432 848969314 359507564 638403372 771516468 986110754 699414182 889561780 788090360 792500680 694575721 717702563 955600843 990423872 39702175 661589537 963398153 968296207 753319363 755094249 533051486 943076956 217409565 616149219 358330676 894471291 868938324 897682028 672991344 716482267 638114003 689012728 461584320 835072087 778145022 956992054 101467532 693220520 350223102 445755406 384563974 625434747 349909743 782594926 728366325 744486069 347432535 778255643 646595848 682437931 903606389 985916099 579251385 751027534 160931380 983762166 265512302 485824330 452583175 963152784 564417852 568477172 614645907 694370857 993727876 994985624 35713162 109256059 504000313 784513380 15984868 210862142 731191802 951408019 950898594 965977118 563343755 589335016 678926843 920579383 398465225 494955285 944994627 976274781 551751422 634393786 314769814 463488424 592920396 892577735 51718087 410901071 905705365 939254613 265211877 437633488 820050859 861775838 375979294 872444084 49536207 453478101 653601333 996883672 953014786 971667570 720670049 954390297 887411409 991029752 134906921 905904944 919426914 941856212 415061796 992285041 222452199 733127690 663257872 824877696 71171318 906796999 499235221 751560220 105950867 600027483 512340134 562942744 498151017 595298982 812778691 851403090 809038261 879245021 929152476 949069987 650997244 685844170 45905639 696694153 663834233 723400653 386512848 521769815 597522842 762336418 162089050 182827517 807960056 969308660 766813999 970314867 813336788 813860676 85550125 828784466 21202713 623647976 26786127 902371898 191032851 575698071 663049219 982517838 956580730 956942656 943516571 953861330 12383614 126806180 657462896 691988781 765137664 790210783 484810606 651165270 274629640 593280678 513517861 804504656 789911319 969085034 299750282 513442998 558640692 904828877 164612355 452331520 583728281 996759439 211109549 873693548 101321402 914814138 879680775 891015124 466841335 538856193 7231058 203628528 551985212 615831463 806075908 912736226 779943265 899034876 214986652 896519695 210641558 458659245 541294741 763158473 817782546 910306550 837080149 987346357 688310164 931329128 287706344 844640377 292701781 720700735 133125704 948729895 507853324 792649804 424948028 936519917 61836322 623510217 420019496 659580928 619033539 718629045 346926799 740124882 735393180 902877078 889190155 998005586 388560526 691563483 879514156 895170251 258858327 392307868 285552281 478704943 298665724 536004986 643967778 869719034 250928933 724469879 318654502 892793485 349710919 460527236 234003453 386435577 39970257 441620087 590362589 783194692 531711868 592874701 388193238 890560074 460113939 577637613 904465530 980574123 526410550 862366158 776993275 790907240 801975204 971714428 85991245 232575801 631969554 681836731 142626279 573068421 847599274 966278560 152914024 944858528 849143210 975621346 209848609 733968157 445671895 602809326 90743803 576713986 665950320 717901221 263686588 680481771 123779915 338205460 60277261 60355580 29636858 254379660 877863083 887254575 428911905 500916666 268310157 791129198 322246901 998608241 932429249 938730678 657221314 827525267 938360423 949627877 3069973 109132751 845028458 901417131 132142367 973157049 325909488 985935758 132228914 440551272 19185950 733671285 680027513 820298517 875617397 990627853 314230138 950500399 422796382 728845553 814708373 842379812 550206112 854306784 155887815 443683130 504918260 640410756 937375644 937994807 317259547 625463318 812675038 871361131 690432198 714386180 278707743 828930647 903921791 960046814 702869674 853333640 648929256 768639283 669035651 956210082 184993166 989932318 772019001 896701281 522174112 569793932 377884210 532621435 477059747 992987721 210319007 971149339 994689192 999495504 60977226 960981331 723372612 837361143 401165368 498489226 318735765 564714164 222048360 276623326 239493538 424861606 849997700 938601306 93705115 629509328 177629554 676108984 499706745 502954863 873404240 909458462 112960294 180936505 378767929 870950113 288558337 422477028 220630668 930614472 283600084 941878873 585852535 934275152 502197940 644780835 493960397 902745546 333371969 766696673 469639080 734596428 197639282 884166359 974128721 995671769 702725033 900603034 458757934 789502811 107052633 795939689 323210365 843656750 428517538 925255177 302917550 387115206 250456491 419047893 204775638 332445991 973903725 977946263 515840237 935904968 29241854 629915346 540348867 966149479 648061124 718744982 938462133 950543541 875317777 990301902 632237910 724830208 972863937 982388853 634759200 720219196 87789670 940871081 393224518 734608771 202988880 304524116 992123102 995555664 681616005 968068046 76198621 572345420 842595579 881262660 159673392 814666739 18525094 161878946 131552858 239020249 72572149 774418019 915880603 932154969 243295817 673921216 245786909 569258715 897112517 978429718 145310715 969555409 770012922 993468978 258166570 958075311 480678633 842031890 529142997 726925466 287260298 812852601 432195140 520263152 6798297 74334170 974679570 985222175 505758064 623658432 122624384 500836392 49774501 657384724 364544771 386837658 816860221 981477745 747309123 822092371 522323377 809027454 324535905 358381332 189174767 919601177 525726881 784809368 946492888 973339715 555251547 887168038 869496710 882122102 538577848 951844911 309072760 377457092 542465634 792570669 32956301 302375226 964884265 972862024 551625363 959051559 539359663 620430948 544139655 961069983 425398877 818026860 379517439 510931279 95758754 193431246 365493925 644137191 524850879 828995459 159221312 446779477 1858807 13792393 212510533 657949445 212604120 567040249 408248713 896453265 206432647 424466042 962016027 969265777 106240878 787437039 151552068 306429845 902060209 994679520 341894068 843942405 441028827 605186423 260709858 553826171 634342863 966894740 73540620 127418960 930155280 961677251 127102919 266300977 305940181 430781911 958775449 998658318 258622639 299167005 954192345 967705620 893976838 993000235 555940952 885335956 721737876 815971310 684536286 745295550 584399043 924666941 371568976 775500292 321017485 544078294 981354146 990248753 439518973 959315216 212333027 879213460 93734193 716431249 361710232 855084875 570805375 682832967 705797430 954505221 116010430 264268262 868566363 890215181 359062139 738776222 920997784 990875201 256828962 414027702 326985567 733501462 685681517 950746997 259723685 957424251 25562709 392755656 125245147 929724623 344026186 547522035 657003460 889910225 498409224 860072202 681847284 923039615 789673551 923129516 829919011 968163927 912461702 939851090 975486139 978481398 613676608 691334878 645664356 699741681 429588664 822969038 835569306 856955528 991683834 992614543 633389447 789628264 617406766 685350754 979147242 982864278 107443727 299551946 484836380 488885850 262498737 532659724 325232933 514724469 313948315 889987784 897524609 960091449 238056682 643121419 361633472 647284121 515225108 690387217 559422159 970048057 417935818 523898749 325567158 764311394 870934877 971777296 728442346 961797318 720642311 927178241 971820703 974065970 275286012 772046409 214951100 567875271 603066493 886911094 43765868 123746208 543959525 904182603 47307808 999673687 428807584 933722939 614780190 621707090 552274963 861522689 243790157 526633136 249098687 756051235 190720152 950527662 336005234 343550292 300748313 421663869 49439791 115324179 372966894 857225403 828778301 900744679 127460381 833878968 749640638 765841756 825262085 877374297 392701878 584676256 912179399 943700430 291985197 459019212 433388296 486948051 919683453 972899330 638082148 794788541 901720133 921266578 143970279 499138453 950301560 962710871 762244066 950975972 919806108 926295119 236173872 592917471 977746121 977933009 10945938 223055531 214486271 239668185 152346435 222166438 364494469 770308509 575745836 787114648 334593009 573578276 203865745 461831378 678695368 700950947 50053760 310426973 102165742 652314111 691769636 763036493 810839181 972787852 306129270 889477025 940463765 960456935 795483431 881845802 909925538 995787962 801016414 869731280 785423279 974463295 409191150 766891936 249737823 451960090 517004985 853983538 530572795 798968136 34030927 349117089 398899015 628839992 393023408 779380301 618750986 766197059 306077740 752130527 447176878 883333816 288045113 759739041 377836022 437705204 418839915 868929431 444293599 658574219 63771391 228457904 144105526 169394165 358664587 650030100 574366876 731533448 365509761 575623232 654221663 987878925 372241400 944896254 77630959 530142060 950635412 961343506 340413988 552258747 977164808 994311292 745176332 790938325 974283275 986597697 974874524 991044040 790808516 797755831 937258573 986168269 517434687 656224131 326684625 888849959 167168883 570994250 803352542 928212034 279158444 453899573 202686375 793526756 176444826 613695019 258978256 596386925 183245755 205448763 856572039 949721287 441323122 487714933 60036309 87216307 703840932 856647258 963535448 997868980 856831934 895481230 960283744 989266721 35175481 521052186 790166344 913307061 305626396 607426487 8120159 977968180 374789141 710835798 316713788 511357527 397625084 474583575 851570597 940803361 381197070 689821018 153499959 469224691 983739845 985547269 770297261 949459974 533608141 705720131 725377268 830128432 106824906 613147184 83563374 802204711 76174675 701844099 908137045 951273077 661166933 737328569 403600652 701006688 954572076 972446883 823865266 991721790 746061375 945122760 358608392 945635312 966418560 991100810 367304035 547466055 996237933 996805612 81991294 758096146 567172304 654311116 327702371 873367025 929579729 937927817 68061925 911529749 952806975 975329700 285773795 421514964 354626806 386001713 180336239 693375752 365022495 698651349 533019690 819316468 622197325 625612221 916584162 984481671 820699902 851369630 170486172 602079157 31571974 110090385 863819496 985376735 602914470 649346722 582937606 695199503 311426677 666688192 639723553 819471804 541602642 762393542 57593602 753371244 721221337 757251130 397826717 819406956 995485135 998112671 250651670 514884607 362968742 460485136 132250419 696191734 847216103 936717510 625116676 905642974 832103222 985498190 14916678 722604079 468434945 804258786 196605954 752262487 785991241 948507291 187112074 853210856 31524108 586558207 43891089 474057684 460926558 590829414 344707800 815654372 657737407 686114472 527541532 822981728 749600876 846805323 960884907 970986362 655355066 741666913 679591375 930929932 239745215 762503653 284427862 551354755 469389124 751618019 563513581 967451435 757740870 840184024 312739005 694968476 886353897 987618878 250092206 459491771 910324202 999807220 87799538 490889141 837220759 995130204 308832958 910892893 268166190 984134944 895261160 914076993 747499090 902978545 988281750 992919455 445101692 879964717 871323089 927415876 918383530 959776404 569595370 806506378 199487399 870230155 542458984 582857208 976716265 983550439 335132393 596071132 687952451 897106993 309027461 824591643 621002414 628380462 342626863 674298701 311906308 805273583 80720848 336888755 378220588 616770718 153124959 695551079 70353895 214589018 860457616 906012417 803785911 950327398 605923007 679638887 652540287 664259943 850193392 868369308 274982461 464758235 261346721 700978308 244132893 377012134 667116290 990240608 255545526 275758170 252645376 428619011 609063715 871629778 161628472 228845613 624438541 631674765 791133503 858096521 891828376 978765482 685817778 861199770 598013304 856183851 848873320 878501980 964451204 975894338 843110633 989540653 680939551 801872703 867375798 886458913 843666013 959276367 492615423 577384515 727770622 815394769 993864533 997484671 888606722 920281942 919752470 926069951 937576273 988145148 564087401 701927957 750737604 955152637 504698592 941526404 500709165 616238298 751230280 772055901 41542247 235429462 103266298 330554051 986251980 993065256 563023103 841257317 434870421 871653142 636127595 655492062 518376251 601852912 503993299 766974422 720482678 973328492 70089870 460458275 57217095 501646697 768433279 944556531 828385933 984024141 300890247 439660379 511818455 521205992 817412000 866351436 430475647 554352284 227222235 531698451 634604754 812906491 400507340 715102732 114460719 861143851 857685233 876702268 1713425 858086378 793730954 843094370 718507271 847507928 590652706 739629574 355270181 487076677 665194892 919119652 687264157 786253498 746238664 822101414 902723811 947442157 908941445 942149113 151772285 493276071 279901972 630720809 338263155 467257710 926385130 992314589 27462946 303007425 151078956 231280383 466400856 714706039 901283071 964886006 541471397 589858203 933088205 959784484 970629559 979971463 443017646 750264075 235377472 341003895 550980121 827185117 335961015 869458035 778066407 789680704 836083207 862175193 57987938 541310720 783512639 858910039 431272560 795409317 862804707 897186635 955597475 961418311 572951986 796677273 767888914 955137047 120092997 841383303 87476386 519712056 921261106 996212579 796942487 923659759 510688353 729335593 591267578 846216800 208807872 826505962 454699537 816620797 348751734 648102381 804163456 864083026 518006500 878344470 164554639 508453762 877055526 993424037 977130876 989401639 420334338 748438246 256657886 382072776 347018558 929639479 958967286 981724338 927520765 969059386 706625060 942631816 162051206 424455100 600948508 850810752 592385812 968403115 372976129 715122951 186043167 917312545 932641548 962614782 797895044 884619113 618832758 945959790 759952737 782401248 677136663 886626031 220402051 343720582 252291486 298474790 176964310 731423383 209165094 841161114 342881714 697061824 619539296 675837361 380346644 932091740 881022684 889540909 240339087 734518778 810957285 844848001 390150721 656790141 125946780 348108458 407707995 718566646 695142788 800404242 746892310 777375955 710484949 900492492 311828007 970794235 402176475 864743431 274384530 978402162 888604595 958345859 482592341 813148374 159789670 445365925 558067191 611434505 587735353 934862074 443779044 466643656 348094800 946046944 435605589 511932080 887306583 960878036 460673806 506061616 653909436 873971536 663341889 886979024 169388533 785118024 812244003 913260618 264774601 368627811 162148527 535290552 422602696 494694582 972652082 989196928 114677558 348366917 264695476 929910032 450121727 968366008 793162216 924371446 356319864 488161935 289720794 795196880 253751397 656927205 36413675 836446061 874816833 916586922 357414685 829487714 530088909 852412778 430205492 842015349 302844475 981694655 550949600 630377414 280619255 783613145 27974739 462243687 775956907 913439358 290099926 477939284 725461487 807342260 366021691 688596719 976044442 982156691 27917904 745210549 956404783 985094332 465880777 529572556 579390607 757733880 597725238 896341716 183491064 397445963 569829198 711442122 588914565 987982319 389773603 601560887 392469589 476942472 561871893 671637711 734810473 901020015 850623757 967383352 152561742 991251955 895578238 990974779 763136219 960838600 928288688 937343792 549245081 753195953 956696204 987424172 45908906 454493810 250239779 944438947 608662464 808206189 84287586 419052419 466871893 645833264 888627937 951072202 405860825 803738465 202488461 922627180 686206460 831117559 729663532 846946080 942107703 965333182 427558673 837635627 332383591 981702447 131746444 608451991 128934479 330189361 421961458 992309755 624993344 869283508 142986266 591700634 496589075 971082446 436503557 818045663 916839400 967784371 446662472 776986866 298555564 855452684 571560534 856423281 293334588 777721803 284830018 597215918 633248304 637189887 634874693 812843990 691970363 746962203 279898806 974683364 131094554 999259829 93318424 992745721 455417688 634297816 767340451 790122806 898602935 909964330 442232135 632138515 159042966 284901465 452708029 894078944 21512472 661955548 485634836 615657488 347106839 384576734 980591125 998772505 812067594 904731436 639282377 744158674 705025918 794151234 563418059 832757927 216258336 924125898 190383342 310121217 556145759 724806260 223881921 310140611 95444950 884407432 77797172 654249973 222589435 271430465 848982631 914089640 523601712 666001196 411104842 618949661 262010173 704171126 944780511 952819981 299380411 397664502 927996217 983114381 438419045 928545437 721544549 815281014 395408513 709298307 629327370 787638273 766460704 954112168 825247181 956285168 49622135 282445761 942156928 950622173 979384910 991608241 491221175 795211113 479593071 920702488 99743753 361908742 232753891 458257972 502526263 955404848 247328588 736112231 616167477 819502676 418860375 498406263 267192030 454679770 371884627 640180734 704242871 728631111 346353393 686418224 478531983 670341543 955876936 974467212 869804302 934628459 49704240 305987554 777050373 917986237 985413543 990675720 218379360 481381053 149125145 670432595 140281422 354331841 593623999 646058325 265707436 294610625 21396708 252173582 862191427 862276249 423897963 709789034 951081597 962202859 973898759 981312428 630315299 893235242 92879206 124845507 979660826 988128107 854287634 921750066 423440068 511531480 302186378 444902119 579178882 902595271 785410887 811437389 209923793 792256706 245612825 700453889 403293420 521555731 669919216 914904161 208628262 633334237 66912257 543098210 700258519 766385830 308768995 722720530 32653526 975352492 169342545 674595016 945552360 950662157 550303244 672015320 407387527 581912806 391726171 584544802 533728805 577013603 521720694 917910905 880595360 903330282 689031286 760693111 864094081 982108191 718873133 868987515 431850211 630567047 935467772 950747488 792267513 944857594 443970559 869508021 239594068 887258909 530643149 816284724 485058645 979479330 298685265 363470972 396925286 734540621 804119307 980398320 700756395 895217499 588870443 607037771 66825467 821948324 75696317 860896708 227770543 700290794 857134910 975566887 443596460 725409228 35054615 929108900 722493390 959948338 10383186 256073971 946174895 959124699 19159162 827774577 463473020 721047808 715796939 961289465 283233200 321482341 592472487 726095909 889562671 914863313 413070881 834805546 315330811 364120920 848883130 891183576 498738436 869192411 877795129 972802575 627895683 995088030 618811349 771136009 192281758 534916297 646277307 697604287 751444402 753652727 149754105 886618554 610029159 759105793 928880550 963212284 719253830 778615566 601333166 940841669 475584575 726822250 601895573 803692500 759703702 851353175 164241036 486043891 910782528 959353464 78097983 334390968 783687575 800539496 856348796 958185419 384397879 684446534 935276566 962716381 285479568 687298763 282802818 408382661 535965111 726353288 932108829 993042840 872958387 995654955 586085363 987051402 659954693 759607632 994375061 997117245 473881528 486547393 382036842 988213483 282998266 555444125 241425887 466231464 150733297 893647414 86559305 939920853 518474141 724938508 767809907 928586229 891851402 899268269 796694729 951699025 564800464 820087549 982963461 992262085 760513687 844383754 729251797 977232488 915014926 993893315 628667972 970413788 452760901 626100304 486433890 899094037 905764338 924976611 379466631 953271709 813230821 863189296 713674227 983654554 440478718 647674134 987220273 998233795 72221382 189697900 543618241 975708287 491539308 511905848 190817002 244987744 317541121 893375286 117518559 397870347 878383008 893613449 24058427 307649714 322235539 821980331 24898658 360918439 410319286 739422509 859703650 980528446 502489655 939725583 877771319 890346839 297090507 396151451 496307008 919209543 195870985 805522661 127963696 172748032 327783318 456125605 290342234 927778219 845122021 944777853 774040164 852024926 113377281 431676450 762377087 893824277 238706232 880202701 574162325 952577402 353606022 377415454 858080825 897862191 726392088 894018923 636660032 798304267 529487031 918738508 953059800 959400058 744771609 912562916 454789536 622485751 96032289 882153624 239103469 335020393 193006969 424820541 115908750 634633199 307730406 781392031 7347605 82339012 439066536 886135023 120155033 518841807 882678495 953702542 576899808 639831771 556886259 638212761 618619719 805391853 536192725 980985179 810706594 938886740 585046662 671255047 869033329 889145396 769499979 933443473 641822919 830555936 521307745 770695959 1781101 839365888 146529633 653122328 736569579 926295714 91049343 159036361 132505897 785578133 675387379 948837539 619847795 766032875 619511644 876880125 476854171 700978613 986914791 995153620 122892388 252927710 325435325 640203402 574628183 928784796 848504877 965454145 246536697 299241159 732336287 906079201 56199753 186128005 851900169 883223642 402043058 775246017 821135935 859563322 842331557 974887806 503971112 727661770 810411951 930972867 482348338 588747679 892121477 948402387 420845874 754811453 504964630 787968600 124731477 207642259 236077717 856297973 642322800 893065311 246853775 893017203 759414827 764313750 291421222 672193121 402998059 838757072 42829383 811992008 242565586 785448130 565055643 908662284 230702414 588968689 70376930 163598845 454950700 499835748 600834924 978356400 393158385 954251524 76154569 585828066 988604439 997159964 809499380 871473978 590053529 960951962 670745134 750882884 88651132 807024415 770630847 813366599 154027787 413527088 963255267 969256548 695609574 739937572 145408864 668635952 92134151 139216120 407191247 966158124 614731131 887609309 947460505 967302825 77004409 151374517 616989228 924446968 256733490 815034702 908430831 944701035 781675565 969246626 417257435 730999015 858724119 927988673 219503330 220251480 605960652 879619862 515837179 644848190 659627876 670303411 237195550 984435222 348255315 600331175 427888592 742781817 609946652 738747522 857430845 959637682 315350070 569993483 397421669 825287051 840114137 858414160 759136310 760744209 948112903 980897158 150349884 651987689 836994053 926956855 178824513 856995649 708897448 814077968 793407199 885817420 127974254 620856762 221424078 644188563 241109656 734401569 422353 768033407 756378866 975925923 304877835 664079651 656356877 997843146 320654328 321844700 513031663 899290727 971507893 984567556 359650104 991219342 167935572 634887284 580746559 737376150 564325704 915564478 736533166 792039734 395471824 727722021 62261585 470831380 928140653 953201138 216448555 222176843 527295743 957542169 983414089 986395320 774343442 785002919 655133003 870881251 787263059 930141123 604162935 930994954 739308750 879890705 144756991 719094124 506723605 701309732 413811815 962033950 535103543 874506308 233720075 608586985 664274864 665984887 351333614 440773752 156692863 817918346 537777749 908947892 853556731 885745183 536667412 547599591 643550545 653515372 113477552 349717533 642246362 883891292 777271285 887035772 703835777 925782894 633771508 897381693 219531114 464798035 812549009 898875164 52181531 716633500 645577362 704867131 982854298 985396359 385408235 446696955 274812011 731144305 694866747 813008258 453000467 687417489 286644610 307056893 937351035 954170854 252200400 414032427 646827983 874636616 475986726 804833168 566097884 789862731 148876790 256040484 138200536 196207604 60976179 888873230 695621441 797257524 462725620 601424460 695675886 755339117 727533481 877714600 357131400 917157711 84453803 255521364 633286556 658383771 528487378 777250870 527593888 989381330 338360891 415381355 233289031 408966087 244492361 399535937 190893341 539841894 546331415 753899008 871748079 893420136 361726318 719696224 440673076 624163441 524028992 701922170 12966786 907871728 394660017 939521057 699768059 789370831 759175381 821324190 262619975 781364604 95344081 195114524 174168276 471046007 355406202 937381786 441333124 857875640 32616186 823774931 347040521 685517165 84620311 671094659 260129762 494570596 604271501 659524016 627982283 987992191 579951571 706263848 469956515 613816880 157353653 675563105 193643721 827638800 142331536 790648332 710019294 838525024 135604908 937625413 898487398 935960581 384774762 607500576 692973573 952758825 2118509 416829791 513348070 745141750 379427441 641948562 658299610 906138609 105542499 936825505 118204184 851539479 562267028 893886029 402541825 748431514 111725648 751689256 137083375 195266732 619533649 791457031 573475192 775067648 659746075 854921809 326886915 700226365 32384404 581799737 557285237 733322232 755403218 908272234 486811728 560149666 5714723 607894383 638375020 985032720 204742288 635413998 545844613 929461915 625583317 653592301 776092216 925425857 854167705 935239637 951951416 987856786 272463172 436656103 337205044 755169465 68011173 387284210 674104312 776062393 935245395 976023517 318458616 523117518 408650479 532982450 205499282 750020371 177284020 554387101 924061725 932051135 587615816 639330200 561610630 744984176 383272179 698710027 979755448 996497657 548150717 925507143 263104246 395451631 217412689 609850389 152160337 270028820 152515931 501770964 577146606 679631601 428048684 825545833 35543032 401397421 442255338 608186726 100515686 352216086 800381870 994318988 86927327 457749189 765341678 899716018 686629257 735164438 535706744 567716146 73530147 951070109 459427688 655916855 681423769 907453489 850942090 965043548 695241217 766750290 275473104 514181104 42819729 979529472 223353449 412993278 598475113 602324880 207496857 368340871 205079639 559773517 75760651 620768119 907814578 939860564 372590675 767130146 104088291 507430783 822786354 886749445 949785789 969528261 305584291 502789967 344453501 476652485 735029188 869575067 535076458 996574731 56897558 386120116 665273643 678953488 548412591 673906111 950915205 982081079 427473975 502862957 226307063 672857093 87165955 596381802 963507998 966273026 701598987 767887907 225757112 758996178 291032996 695267481 133924020 896625961 712007623 976687425 365593100 683522963 954365962 979399098 971605472 982118472 962620135 969770038 945595620 997803766 435443966 697731848 644649216 836272873 979643462 992108838 636473588 740552058 559079079 762710069 727016729 875662049 51714436 58876633 709707424 980980938 523537177 854099389 504350903 921436426 353126668 751166370 578809473 833628957 618408553 628925348 331324615 733451429 870621927 975783473 789486495 914856436 179013494 231055085 240525963 279347564 658116822 795633305 325193085 454317478 166480688 602489610 625850217 814094633 69992411 456850409 865710443 873340675 34507331 180302262 777510491 918303589 342262757 437068047 728934401 875716402 557104232 769283333 90112426 557945916 706546605 863847899 634687004 924128621 67391035 598823152 132280187 706176659 968002440 998419202 478093813 562766469 931785843 943873810 689973356 798471098 692326745 912347783 451067833 592964084 649056116 990456382 43410476 464418019 891286971 967620597 358893773 471682639 682698454 703722801 35097862 700873012 120851738 758010158 322005030 513165055 23754597 779677674 729097366 965968056 372236995 408794656 417838964 690050757 408909767 649904358 243192205 275564671 63365256 588242035 434486333 720574851 327541972 649709181 675497966 901242189 901807301 945952129 599537934 890028901 975428259 982113809 249318841 837263660 810614618 840871766 250717152 496353288 811269234 938583043 547914875 942405960 769047146 957047875 502413954 603866520 235224043 255520971 232421331 883992913 510520994 789586654 132132903 470163022 821737321 936733708 687628929 942105260 264129864 268544277 80391534 139067847 836171003 940525483 716148767 883745218 227229992 934675755 715267418 807630174 953975190 960329279 883572182 926359371 48728830 970185554 378827528 972399436 439099668 475074562 586325051 631292987 112977094 550189535 901536022 918255275 575671447 890540212 191252442 341685284 287451495 852750450 29019926 216858885 356496921 966066637 206844462 772387588 880910600 919878295 933921889 935361035 584799267 667899300 12206601 88139367 693860243 788933279 251635892 805441194 258263341 446429693 142008237 531243890 160697499 203740184 322344853 688121148 990394430 996827475 850535759 926998602 412773051 497331702 542175176 761217454 982316327 983827053 895241041 965986872 816174230 874988031 652791742 969789829 157012941 580869818 126886780 397055570 902237826 939748141 354163041 819288306 634892493 940768755 95825004 907221246 165936023 320244964 239841574 990346648 722672072 731538580 862541098 887105019 470067780 919518735 647478843 970323888 831279181 976952450 8233637 798120896 71830893 623771896 591564121 592902375 326396176 387684277 536001655 757144892 591975694 709405319 287595283 518326383 881718831 890741297 249761570 392402259 511724417 596470634 262178133 346916880 462846897 900214979 114541210 496633476 234393401 814426142 820762914 908485930 32254505 95866262 869638750 953266513 174180550 565954323 301013635 962017652 677079419 734777268 161338711 424837665 798118389 964697874 309040974 625225574 458681346 749424073 308297821 925394853 701516605 874220903 150695289 336391179 811742341 896782399 99462760 848799036 106681912 281586833 481931263 832961477 251947600 563241621 336190549 543167456 699085629 886958096 425387416 922612305 505721688 998244304 12557159 656584430 443180644 827147604 553250794 639650048 822000591 927176016 87588312 712600001 657018564 732168882 49301274 695087075 373910456 840853932 915614783 957752537 86750988 487530418 247294574 394687523 386793775 760128487 935474122 999103664 832141910 988609825 987462421 988564963 936455502 976819287 235584254 826274864 27620785 622612108 463164138 935653041 411048276 664596928 713435211 879562682 178008116 914439188 75470805 581940054 621851862 652467176 541618076 640196519 902354055 993127682 437612158 672207771 575274757 963485276 516152443 849929963 403998188 877634905 371242855 670765302 799507669 940111575 597596973 893295904 382768721 870105154 483715791 538510763 439021468 989877113 714988185 871463075 800935353 808145646 44228639 78000146 851201517 935992439 33021660 188192062 444019675 598668219 596486996 698733257 549505789 857398220 450620555 517604928 628976618 865345919 745263883 855180964 482442746 655354293 240292254 717498175 641481395 961717767 269183840 427254679 612277711 922375118 456275472 909730028 540740814 547637480 435044844 599386810 440668115 554347911 515434479 867648280 630335022 694132536 469087800 616820584 876501014 954512282 827969106 857152987 990625094 993558009 539323465 818955130 828644886 957857171 203960967 671603198 841645801 886857139 94734720 166192222 76526707 265283952 918636548 921826130 675138882 918489732 308741221 961201813 758575106 892838135 160622063 243748084 238564982 918284784 88286390 823049018 258828723 893568671 851939379 876777311 967023931 989924527 789725995 924834093 647518091 761939873 240335610 590473130 821124137 925084987 190955373 870593047 386614503 545549118 405701875 903102044 712886694 798276981 829401371 884945787 591592558 783608856 23573547 313622401 932737873 961393505 929310667 944799816 171697113 692920632 274741277 725484860 624806163 904011030 298930129 738192407 387325779 670196504 724869604 726007594 780566640 914749488 809859014 849303608 146232184 713372660 79305703 746233482 82978452 589342097 236576985 445790622 497155289 502044719 974447675 993694107 314196943 756800379 307923379 942750315 873607449 911723807 233605768 504139923 818772366 903884096 972785605 999555766 943519547 980890356 471819131 693421632 300153461 743894430 777248403 932223788 19652469 523801461 692185178 919347224 4753801 808790673 399952530 591238858 179634547 688035764 267332510 460526520 706959129 762051370 523587868 921241516 91948206 612563232 888470323 921268708 759751076 822022671 81021060 210419489 288720759 305585194 234956451 624585361 925273645 925664652 66454022 99078932 224914894 732251087 123007660 806628684 37264969 572286548 463298530 915598706 790906653 990064289 754722185 860570850 203922087 847322908 687500939 996741315 598515696 808870025 499244325 986350623 646560763 804803087 377097555 675670790 481886371 851838960 231889819 743039955 666423161 759315392 264614205 420109175 743261117 778050778 234245963 390683117 922954513 942520389 53979770 801332244 631181709 837507080 296210869 514195467 157688807 455969770 15391795 700197791 829903270 837021563 462762000 838228849 689871228 948790170 528589867 711356215 715019927 822841651 483517834 591642173 281114417 317334509 819622934 938985530 512811182 977356781 333276485 766797465 528018813 953060897 730637878 757176053 626852495 915719244 410041551 512345607 352523285 822612722 118570696 959720811 854276506 993900732 319287102 532837661 830922327 945104697 808017911 953132469 30282630 989500222 969865297 994859723 497138952 864990983 435481947 576329405 900937431 998585116 265383349 349688117 137508887 357795409 645807753 963421283 683943490 779125806 618055017 941161863 935996383 970086206 125013281 558747876 292510296 885210917 63060414 789991670 304843754 472251554 697259629 906788543 901837065 905041619 228502280 952499737 936705421 959095272 739190772 991007535 227131606 394142723 760604167 993048245 104847765 696759236 166181277 920864041 543036832 687672399 241478396 507604079 257716670 649833260 918628397 973724612 551160872 627244196 809344413 873882025 850024404 862239869 392694857 775443974 572157169 905710083 266159484 604870384 252680697 926512771 903715724 985247610 289904976 429691197 60487965 393128577 678958378 831478764 962725322 986432626 599126973 901169933 691006478 838849165 700487155 975193477 734148724 805277402 460634827 666407443 766735680 774858392 101374676 992157588 614635543 938156188 693756247 784923672 591437884 843395382 784766559 925872999 465618717 515631990 301055458 470233272 722405174 859574569 143009255 213283369 560079281 689355277 325031342 449764750 89751546 664407354 834349843 834654012 585016640 706429947 676146641 983973523 564718779 978539393 643588150 786284151 278354866 366706953 290449728 398278162 567573160 843303894 907165531 974349124 668284493 954345974 38529238 450862150 482934606 678608023 342508184 534578309 631501137 737723278 510864100 596976665 1391540 784535642 869533550 974139085 720670302 841638047 757031174 919268309 143678814 719341588 454811637 913070857 251468373 956227000 575603102 635797536 631379541 735746157 979018832 995481196 217835825 256873085 339279727 867583394 984980937 991407110 957879573 968372458 810104772 879945071 449436305 810945229 337103989 794051740 286205475 376663317 370899349 516294240 635388442 902724971 425053652 943023581 2964020 449284420 797774342 809358279 522819248 934476547 936330677 988862671 143713101 491445449 749122485 815346468 420355831 533888107 995788728 995821675 675147920 698233888 585834116 638740498 159361932 620083118 770893751 906866867 838762115 935900859 573696025 586632457 809785006 910366112 279842504 634175167 565540558 953454289 212291245 487881211 387671271 782171165 161588052 315668284 656187372 670836820 248170992 951711146 523227899 692956640 864212232 955985529 574673247 926765623 237786723 462894390 702208222 785752901 6496889 605487667 315580378 795151064 460895152 750592917 617169140 728959361 15346965 134049970 91318014 487882850 474035143 947362924 178858755 994557632 947449666 976733110 618490004 746126078 655682900 766830778 972998601 990880362 538238175 786765438 890855791 890889640 56547055 149534614 800691323 972963922 785606286 798602931 940256146 988377888 787993674 899534735 575594373 798673442 633229223 945113683 686427651 776719610 94189001 871110429 542913140 752904738 425790964 874902205 821680722 978758339 839699703 910927219 138517944 308091078 32934755 437427159 77468902 106148929 69124722 396068316 354587968 987503851 389882883 608741439 670681190 981210231 615409685 997101598 291665388 596782398 101022547 709958437 290390380 756152615 206016655 780763874 87962938 942305504 447005901 559210663 795861023 907340961 230727752 253319024 743223210 884641961 718341613 789398646 938169779 987661508 898625614 937949150 685712786 755669928 957098311 995465580 706361008 736241247 454792540 694034416 825870687 990030069 142057544 211680042 916532748 984883978 36964469 107406284 58584590 231216136 692171390 796618498 906838246 935521917 442197430 808477010 399390044 897385845 787584039 823877888 226740325 529501040 44763564 75685195 602607446 819082668 980404409 999022693 263910740 667568632 76479422 250407536 546647926 613235056 945851895 994138311 785767165 816963259 801980332 925718618 668846630 719773845 839555922 912352103 513239621 957505960 823657905 928249129 74649693 479879999 747397495 860006788 934718714 960543998 297576123 680456692 674817342 682651827 984603612 989591514 861419185 879785929 336709681 434687112 719604611 920593045 408817945 719372431 245151608 435045725 590626871 984634716 587847459 823435390 853701342 983192959 777374762 914277645 384370108 684808370 967475883 982751390 760956464 897114055 195725748 374411102 204942035 220412307 887943058 994693972 140720809 316568816 386254833 812878781 55187183 933317594 312446772 497524418 616974247 901542903 699507913 713289971 976694446 986540931 303953849 815031219 807534316 827149295 449078390 782941811 946561712 959354974 258926714 979416697 584330309 880308923 298178246 441269637 7172793 994508815 527072793 855656022 266467707 314219794 121195780 392212938 303925890 761623008 239431640 341470693 277266977 901920859 961108070 995145278 788415272 809691786 337515005 385180969 485677417 809838412 216298061 341662054 406434026 721899741 268704405 696561209 133754892 911464223 345419567 874435088 500757171 724199463 843083984 988995440 374161409 622270740 276435131 451286603 196280768 810966034 153615726 821894006 189295074 653486294 784199632 883732619 859599581 978104316 459121669 962222020 489358247 798689774 488027847 863755268 406326220 741361925 775245089 795767081 908129795 972289325 809184499 831052677 4114230 95146060 218260250 427199771 771711261 974941512 319175516 830844496 974586570 999389501 911466436 917543479 826470162 988411905 592577724 806376359 827210600 962843939 323168429 622608335 621717429 874379580 486437352 662331402 295033333 535028191 938813499 972858279 411123473 421328719 621564733 760484953 46638006 339714766 663492612 825391237 58568829 765300521 230490674 574305163 74807000 424826434 34580101 547573909 745990778 935731763 616425254 921090007 984593672 984790673 446851663 661034480 872745076 955555843 760037488 834758941 334534968 334726859 145310670 363048172 700782075 709775111 371784508 934696571 147665997 950139790 714131315 830641819 25498926 814000852 17597367 917062144 637851189 861650341 529611241 911155805 967872648 992859030 939083420 980928879 881314533 935585601 856086047 927962161 209751933 250741244 384933657 842170063 746085854 807580352 776776068 842908676 822532131 882127842 657503653 707295902 48535450 386052705 469407072 688481203 571049299 936065859 181524259 939423013 997400710 997803794 676062345 791559390 537982074 894554813 215185859 985054560 809512112 915045657 348695298 852698410 494713864 603289302 967569079 990109147 628618219 906832494 868222358 906465287 666050461 725845087 912849714 927806066 639044976 732964098 858130155 988715532 788111808 995087216 600666396 920633240 887344614 890569302 963626810 996585913 66703821 642018804 418552757 860159935 750327806 890884653 281472830 755037319 285038586 379498777 830732272 919552066 97442356 625778055 917502664 965186197 718154911 828476834 245911885 636482324 842668175 968025733 388559561 839583185 292247779 480567936 350537772 925014949 471410576 790474014 746285921 923862241 945950387 997221612 976675125 977733208 509450118 512328135 525522979 710192260 682424369 891083171 860260904 862780386 461570282 685614759 354586636 566015697 671211828 904236281 887754984 927900728 548272329 701622454 364251984 899057068 758402833 944030695 993641164 999827842 289983310 881246120 996095759 997375811 334474496 515780209 602197977 642865634 207271264 843314088 226009569 445401535 636773033 765792322 792012008 975899480 432173050 981033234 119306634 213440240 339249274 361899218 272616115 750007654 283411814 511826574 266655957 375704261 220235419 281151607 960226705 970579497 281846134 487597374 433269102 839950481 393912765 673907181 482769203 524461500 678239989 927763365 533153626 860880588 845367003 862675157 571279494 644179690 669215307 779984129 699104349 927040556 515490978 780274968 725086869 815186891 908580580 978388197 22015406 52014936 430361674 649094265 941579800 996131190 365098267 526021800 19365334 574025884 418978644 622514275 237370996 989049997 662295697 879585993 154419683 786875571 195453714 449041537 763860558 962554714 394022845 690449908 983512145 985793028 923173693 991467402 490039232 750230866 516320318 656507526 475371684 965433535 369490491 841494214 453879267 886070914 434747144 990021921 738126676 756869081 417882283 882349786 432780815 763424230 264753632 457405308 388367793 412693003 516923930 915344565 892966675 973315072 485976036 718864680 226776387 324051475 775526021 957918418 70692326 859988965 682937444 959773821 872027502 874788642 617455234 626059927 522775803 583608602 738011302 782109981 138497911 893321492 695324088 732078442 705871647 728868077 161775997 755188092 545875573 920528622 32942912 47258737 718018677 907772593 22210260 68629444 56383900 106009314 573187652 657170978 439858967 469545199 738693632 974681261 555149603 718735458 290190554 385178174 254029992 711094621 540766406 581306027 777957632 840934863 769822931 893460927 388301880 388874883 681967455 761897326 398456614 990016431 765332000 777534144 836712554 878836448 369687296 484982940 599886527 649210623 214394599 748639626 863325134 926060949 252966078 781569324 114654214 899649204 817989007 872074340 998978043 999909267 249630238 715715689 731235190 812864310 531032548 772831024 966809309 981526969 858873295 900489572 184985503 545120256 589002097 857389622 602085695 969143561 108621584 792272706 940846764 999021329 282564262 493844727 20295610 899845922 129919549 182598676 386984152 593823809 959988647 971350230 755391576 861282774 61264071 231677476 926314564 932303660 209864138 293099981 800931619 884459312 474791681 530171203 755729068 835093927 110613786 458796562 670237674 796041506 314340556 451840854 976028757 981957541 353118040 545662661 402625050 403771354 225726229 932980309 994388207 995437715 30395025 751255604 78166223 248179649 282865304 372233132 238887056 699674863 715897205 749234982 169488497 596443795 228077136 841347016 812455424 929297903 814471294 850257345 170814931 299860379 731987362 752851376 697990016 864568994 57180668 701575392 781545761 920767383 875991748 953590125 268777344 974271019 22838004 611820396 464251052 921160846 408233987 688457498 397471933 781583627 940439569 991120953 880029115 941861905 539325865 926130439 848200775 877054418 535321299 920466995 933117402 953904656 769541944 827479622 167405439 945210420 475540254 910056834 87087800 259367360 229192296 434182640 832872244 907270864 479864023 748459209 441140150 571810367 593584214 989399909 490225554 686919195 584847150 961796676 93014465 842126315 520107469 959937271 101640004 882705566 315920386 537443600 982819939 985779180 421717572 535313472 948950244 964487877 613464978 913553952 42832082 683843178 438301349 699627392 533223787 966125441 972874384 975720798 432568082 462154971 587033720 850903507 224313853 779312842 538422662 717383516 319883059 403149940 116874130 292905585 507768899 618158512 258200990 416730468 711067580 973069454 182862265 729771650 241437536 807404220 175316022 341654884 818136788 892387521 945515487 976762275 955612987 959134555 86657832 336508087 522923895 939892071 500831721 803827700 691958035 990669366 603161039 809521730 593213952 866318545 720468020 926943775 215992010 524230723 91089891 229037563 915147130 948874505 198671753 684465667 422866816 910002933 608806223 670563529 507744339 945581995 907034049 927264285 935248221 952408430 700079199 702777344 118315773 925930731 966558302 987163621 162685168 730655204 965407234 966481752 268475161 768800942 399351077 813855872 10581061 161582922 532025544 778621725 305442432 601364624 613902360 659397501 765656666 866575564 393209607 807256868 416597377 772247940 642572831 688159390 399514695 943273145 542695748 643444038 751828057 864989122 471670623 687338214 845887057 990669213 414769734 471675939 508581881 517822861 252020922 916042921 872229621 947294738 222605857 715675650 139283468 460217212 513993812 881741088 483986133 849675989 776578844 854391770 991410292 998145896 777842771 801007795 350166329 501016132 128770874 307758743 50992476 941380327 399561686 719241438 681079346 698359885 998975234 999229115 290594755 744295986 147490087 901832674 266693896 543371869 881352723 926964519 52424460 721728148 199253537 743863661 483048228 776873806 855164758 949375878 758592337 831837661 375494481 687754079 388805350 647427993 341900777 618039963 282223184 369824250 924568815 954662252 81970194 141250323 417903619 718959586 85682420 516017679 524362996 742585063 858173595 959397588 334055523 455457486 866674147 958131825 665248278 694759720 153556691 659500065 637180494 873204438 12311197 720106201 749017079 881404126 632817154 873555714 667711006 745770088 838337962 892474660 323811469 780798774 359166229 885389321 166159359 388445467 664515723 870005550 418061813 759751611 971921221 977381226 197924399 245461033 137047806 485653644 874734660 995848168 96719032 232381837 322512513 531950497 729776610 864720247 371676504 440841637 310553118 522187118 635114821 668244271 400861931 745564076 791349401 892217787 114146962 554823659 966211720 985993064 910597513 939183988 757621424 943092813 660968254 789602796 61727360 997270998 869482815 882047611 584614241 864904914 690907147 971873207 183500323 343845696 765458233 809804093 735542662 843221198 543243745 754684346 936911843 979361390 193148616 992295699 797028497 903298942 157445712 670296397 751471073 977085036 39198597 578344709 696728159 779428312 748066226 990381365 314963716 785167881 111357705 374783701 716003056 839962962 830526405 937625901 997009112 999610487 777165704 844487381 72307620 448390404 286879141 838043870 24201518 77331301 160634423 566708159 762609709 982678454 51269469 214473385 431784726 817411422 841130724 906761562 567476172 630089471 646855875 938343777 525645060 774290825 71729747 93521786 575249346 940436073 791507768 815845940 201081287 969002431 190958877 551887440 74108200 964309735 139818658 662425559 46922788 134251414 99663518 381291613 366924986 458924838 624543776 825296224 912609021 988946668 562208730 821829484 356178849 869627605 880089581 919800912 721457158 963027896 648537708 826714356 709911406 856831152 262944614 933049880 693650431 799747011 332936948 994167508 927932119 967805344 786346693 998269958 464291258 739247797 529185805 718302457 77633812 969479604 622662118 929381897 73790578 541302728 531773974 741860734 449954525 657904958 427344466 837786399 62599367 638374410 112745458 693933618 791250897 793671281 252754297 839660920 920040070 950913503 931823416 988465432 734521223 882654620 80489782 842035625 246044444 370450587 930555226 999640311 421635320 459987676 985844757 988408167 136039539 217085732 14764958 398726858 67702552 188364423 450171223 520398472 693263858 721962314 493280625 892286831 974791114 992917408 27618373 825585642 326016865 944321471 326539060 936500922 639904041 816815849 108328617 710928551 704711007 944918982 675054559 948857802 237059476 420834395 99538221 714689211 570361844 693383065 188984497 699386198 748582528 776208340 18572558 699116172 497327035 746485920 99617822 266430710 312471979 947013004 311377882 423274826 248569226 829054635 745481971 898425205 706139768 754236570 684266450 875801282 297591365 952644130 404056745 918073098 535662524 652625933 444982919 863209822 851196482 892469407 560990131 565218179 736499775 843938440 619207361 996191662 963895231 972622949 327607456 967129237 368447922 713117645 73100499 830429814 222563576 387270071 520234984 692330838 599126885 934111570 948862687 997182437 33526733 200066013 842031563 944495717 845644710 949585384 447429694 623032608 531350973 645873324 149150855 737050022 608283573 718220761 45871093 705261268 247747730 702781531 170137848 468304853 991715145 994996109 844223274 875629815 883339303 938077800 268732666 809434933 646182825 803833392 351623064 545964197 9844507 348679582 133691458 711432255 148422171 284749314 989722350 995375019 251640968 437581122 71093313 201001735 509227279 760641715 765982148 958811142 547642687 602419520 442078937 495823099 609347703 678299583 89884845 972514747 4764959 606569105 3782979 957530224 662865721 875769781 930321979 949580663 283768641 334308999 833841560 859229819 158589828 275327651 290467535 741695373 802750470 998706539 275951146 382941029 603392343 724649666 660224509 744647935 740448166 893422716 519589247 567882308 627296362 680027247 914722961 997988330 288622242 977754524 812091218 829244015 770172383 970670516 60621088 644202484 676321090 931237753 195942155 546996235 372951322 770707435 241126382 381195521 241616015 730082727 871967379 979443004 941490195 960988081 571391330 670820751 445132414 584599292 422002476 857670920 26708934 613979645 443004785 926798016 491660290 494991244 781332164 835857189 285424702 860841942 596456609 907732128 383521176 456631083 55038786 399884068 186976246 511078157 384830808 534664963 330940657 655285046 804244073 912444832 829049083 960431344 830639821 989830868 607041397 763823007 805621408 997204075 959979664 991728463 294751226 666397770 168321351 633720769 452451667 677451300 356311715 485192591 831320801 978654861 47248566 570322216 898541536 984805824 350152942 747684717 779683040 976304351 69885448 162449147 923664248 963751954 767778264 831013054 33965033 678214567 869713584 963114176 29872238 895773781 888430842 911764284 668634828 703064003 216195555 962180205 894310659 981472208 159206242 965293936 760609689 835561355 771727189 966925357 390310349 665591379 871059060 949881503 912067159 937959035 150839455 879030411 605358049 957404227 758660161 902365014 245044430 471596554 385571680 852699343 506038774 564601993 211567705 723208971 906633753 998444603 506050462 965105899 437420401 964892070 869432803 977640666 850053134 861366534 39793027 914093701 176124819 228664641 694777241 854306582 201405650 339658849 935233253 991537020 921916625 944977382 688928195 698291397 855246672 944356328 448790475 763316913 797375595 909622357 217824834 230674764 142985969 239644928 22375050 343406709 921230691 989688519 874339243 946301085 408071572 430216535 142148612 767585818 511718494 528964632 438158751 545047372 582148589 735271288 710946928 954930200 983782575 993127840 458282438 527397851 773193311 979317435 8674528 587002954 648996766 884281083 85660441 865398663 942539088 954057211 752392568 852324053 611546620 884838721 320933624 374084459 293636522 766659498 352049762 977588342 544207692 902733279 771993764 919255474 982248664 994867451 935931403 939153442 942561186 986854900 807632696 822322185 925128728 931429612 168737111 823250750 322814334 565055302 738549837 968012354 474601063 937380461 325189570 855089122 74207841 393787814 665445499 886197312 353204501 961374700 761867652 907422713 952757239 984932053 402026243 911656199 922076104 932402700 49804168 572638533 93659405 304566780 411230715 837643222 777689174 864987071 354799951 539623571 174201818 723495101 873726925 980298676 81013506 133217801 386655198 584650940 175633087 783154328 26326882 292837843 470871077 762257262 641060859 654967144 609316532 730985030 439485947 541667337 419306525 924449014 756795681 922014787 941641883 973360279 849686275 978349105 879745850 963080456 634802928 678060911 800337811 940248613 634852290 847521653 689468549 857883121 95989076 454576031 516584718 560531096 372924975 460015101 880279076 887939285 140597687 980545283 169267809 340667099 492690564 836487403 673533774 824226676 774815978 860221016 900649907 999341908 252592506 602721659 804747819 834692280 508803611 532610489 887919587 992111601 76349328 444914465 47381872 246618094 410405884 626736542 797277857 999638283 678545784 696725622 912350280 965957045 858534329 893770473 218293777 297730566 698267370 911258689 92676915 679008551 959758785 967292515 212939533 931335338 782297341 925269131 118926989 696791543 221118341 535009947 552114386 570452844 540135305 867581050 922811294 990641569 764963578 925950850 422749796 979805204 446612946 622463867 834956721 939294755 521902418 847044938 904161113 961652039 587754309 968006067 912604285 921373042 100149242 600019052 362842919 617826867 643684312 836616863 784280686 938023158 467285276 518383499 734572476 904165207 780119523 946230116 508216870 569736526 172277363 225665962 944414677 969737049 959649606 984639218 660240285 888069902 696617634 728910410 365714081 386909439 237967010 363321749 915046570 972041172 213426022 301927930 504496857 878510394 658210914 719650782 406818859 452408685 991813903 998041060 273480404 640858028 95071894 257074469 705417882 857286682 522905250 907577987 43419360 636671201 290113032 624212506 727088458 752419699 614192475 828386658 771352971 829917504 375705002 590131759 671209709 683327997 816936213 851775689 396651115 665966018 312161752 490243239 176943663 632670132 15101563 840596667 682304953 974377573 29322552 608041505 71735408 646877630 905324864 964795322 456061128 505688181 880363668 920671649 318223302 990754803 953401564 993759848 319677350 503681213 428655352 763006639 36605630 539020168 612483196 971893094 617788881 887769002 150929980 618227513 809948091 982893684 678429504 882059691 218461031 570755243 363698487 737626863 701008889 976475797 610673569 876081230 773090799 870943449 595045721 864147103 86963861 741696505 444255836 464583869 90361380 462224231 907533935 964393158 721172233 999163578 125433765 554259238 699538550 774185413 383118853 558572645 255686072 979555463 246786080 662523187 147325141 290396514 448859646 950439476 11776042 973651986 638770152 862605905 946941846 995191426 188624884 760955917 217326783 926232292 931395997 991442745 312769456 657216684 953269962 976378662 973024149 992715759 169973575 539333092 295420431 331086574 436293629 921448751 747448175 882902468 569485974 960391711 228277168 589627176 866374197 937335060 679832964 783042513 291006484 900512031 691508792 983787432 506459943 953537946 984257353 988548441 477762048 879656837 642008400 771751237 478979616 775217338 405547355 872609658 842992191 950843214 206528073 528528447 618478468 707350808 546470637 934226522 570799126 688595634 726290089 905671373 815819463 956081053 117804614 593225534 708256082 810660432 737931730 855635500 639974685 991404672 308880293 804677902 519618926 815921992 538541034 857182009 963263570 964263927 383520578 800884921 322082050 725259498 845541921 919892592 539057253 606374264 786137462 810640053 676255551 854918807 662480248 772045458 268012722 362822856 824428329 891986726 189845102 311249103 297922168 517485303 875272517 962953421 547530859 608183867 886154317 976019910 507759076 964876322 830908105 971647686 894523555 928030609 833798643 983084612 942955232 994555645 259909338 309478929 839358461 913795959 322511349 475967604 30146199 192823207 23654332 330369484 563034111 816897223 468266863 816632298 194752569 217578630 124293286 377383815 364518819 676788931 664946711 708167678 427611265 505279604 504545567 786915612 687349593 913963821 98941560 333499620 673190902 713484758 186454836 544967308 135440408 248193282 490443492 517866219 17709705 281489524 923850249 966606816 874800247 979168195 252447898 392866766 856602334 926931757 390325798 526545831 334520212 775603442 178560188 223060420 943087760 967559541 338939737 767969282 542274799 771535995 623348606 744438524 749453984 848468088 918604760 976456299 256925687 948157722 953693457 983060568 959193650 968450135 794418442 883360630 178818821 493422424 640727135 679259313 853354121 869415519 526030246 862751943 923887972 937780755 567933839 926902747 882625837 974011534 667814817 681990563 196659047 324699719 958655559 990461800 554380328 900353050 359042148 828862943 347258420 493158585 682243568 949898365 414400083 522536643 146571415 363841638 312461354 709268821 104616454 695883702 926504027 942369015 964614545 970241832 342683478 402730652 449488086 845301374 244637298 401109361 127449066 545998994 442009092 646874822 3559135 866167441 397990278 571165661 522269756 909563723 971905216 972655390 246096942 486550921 398071835 890430998 873551021 979964733 777746343 943408561 24322215 809227475 480129310 753963550 951734612 995861841 846461425 888017760 499448263 853887539 678395618 965586808 672516054 918413064 12730733 177678600 369889595 471818336 465348238 809478553 537175968 539700811 155769481 790227269 70597971 978242225 606481280 840274341 593738420 978722379 461174023 684429910 950463887 965571094 375942392 878286945 782661811 966458648 128521141 555938997 366529683 662230651 433356136 594394157 557514107 729483957 110244429 451166413 934224342 936898607 856713885 970680605 144999393 862390542 641136913 819077472 762084511 943783040 680828551 688718706 983736495 989897899 700792177 996335425 370223613 726593537 75378830 678715990 629950319 852269534 133859291 806978079 777988877 868499825 372142346 885983787 32423633 198807247 856405890 986123018 953838151 979796435 871594968 948981347 121210928 743019181 790408751 824041534 89557571 106961359 341339284 605574314 593284340 811734465 676056494 763963685 492022483 592298198 760197795 876653343 87439553 860881484 354939806 357474196 640363103 922430474 364807029 718454698 894783373 974128626 278116737 281585518 432421110 607112515 723782043 987497235 514464956 566792190 105070110 664664421 989813278 996512855 394018586 798003811 727663334 873156696 923422961 944207686 288448414 670346311 583626590 924067834 521857359 952020811 495268678 613556591 647806007 926974232 761004212 956662697 789559432 857221757 241957348 268562320 405380620 908373237 414055847 504187495 940425047 987378413 482459992 841099848 946574017 992051502 359654006 933801360 157332117 610783559 452385994 610820902 703711040 866087466 100294866 701545749 864886461 951411568 911159844 943238358 21471409 180994635 890867105 988811959 576921198 922022396 592134650 874730050 177169837 521582957 191882085 771335973 553352507 667132054 243211853 862282689 772374352 902642730 817559881 887585741 799957244 825998659 402857985 893770618 344434008 917076879 763727790 842126886 94160869 295165549 292775276 356263799 295150015 879896444 323263453 842537905 686495769 983165093 622184146 855121367 155097671 991429940 434535260 755250516 629260167 935491385 545119403 616998251 920110457 942121092 542414508 701903881 875000640 894898942 134707712 496026242 988019336 999124867 336888075 522246315 547738047 587778414 305937117 904962956 922360718 934390818 474608686 633730813 717976288 995397561 850973339 916611189 305726783 792835506 569494162 847619995 35076471 875746914 50381798 242009027 396089670 908234314 881144529 959460659 838671778 843619274 78141742 719227547 957880128 978679189 260763495 787271983 820666661 879293222 42252381 942053921 245741040 426467542 659355960 967101685 696414302 728134690 596975223 877704572 280939267 906738867 212419771 546443810 979038974 980958349 222187863 424921234 41399209 890323551 255962346 353816949 618246771 825882034 392469424 513933380 470869400 828769785 241171629 734745343 846094090 946003997 740994603 783181751 302208703 854247356 251183144 363653930 114507757 798970777 343363692 967668917 442222351 921859575 968613226 996689778 321523381 861433917 616498125 692878679 150295879 262548744 337715657 851754883 481442431 864742172 894456329 990682559 283788389 748502112 408363672 563083084 892165955 977252618 328559004 673327910 654467082 849044254 504674969 590814059 682033044 998894291 974409706 995480795 863849282 994501953 296627191 425974473 595656421 860613303 144822495 215217792 662547207 898805060 262287532 500554787 633435187 793514187 868042918 936846360 356489429 892850007 315029395 461028611 498092444 996556011 72845630 91884309 721992619 846135097 469076714 980619782 596725399 940177215 961636360 989806681 76381518 961296537 551317668 944252614 317519042 621857100 450515505 833585354 922122914 997061007 308188775 937334402 290916676 744084981 873654919 947460425 252185436 621647981 143580927 622933148 33098549 136294496 162456875 221707065 967289830 980408424 860204563 882308593 555438666 743178882 750657071 914750179 452671288 993503286 7991274 590666357 291187446 887982816 821720022 864141544 593310569 728582767 335123088 405440634 790241472 959352550 510401278 592430545 664506384 931185574 152768997 377260049 717333349 861419536 892903250 942878519 835967543 903110927 177626982 842778994 254043608 634447417 9187129 647066347 981131189 986092310 384897466 542151454 49607330 746393575 303505418 461521851 236445475 870530537 482122851 642327926 103065555 655320045 311114623 538949778 325216348 706295551 435910430 934021310 809548149 982087034 59302712 734721815 442862114 656984434 111359627 218836033 203334117 419586615 19556930 660519336 294978333 299921504 83901264 889805216 341222499 707923807 274880773 687347146 766163804 938089643 844550904 999803057 929227662 930916681 549968564 664463011 854151704 941640294 622199402 670071616 215375844 358631156 313137827 336788300 387810576 545013514 755087698 947439439 680814720 768467895 977178022 998035317 76677924 976562449 880750589 957137724 548632919 593982369 375225399 568726872 234867699 333134940 263098644 449170569 919965266 946186944 965450258 991370067 832993065 986930792 683960050 838442966 476529543 937137154 99904841 623754923 901476131 965612433 405733175 930085573 335742705 965663630 567931361 818493314 743771711 961164903 678278899 749807830 940131505 999509118 829303155 893152441 13642829 803800473 952861475 960523309 306130657 504928283 497752877 918648732 317759604 928482495 771655797 848653859 987687200 989197107 91338253 979877881 161378752 172944508 733873994 776979818 811365096 811430673 215402141 755513603 369587171 532687445 188398429 705232599 339203563 615578460 797781539 933320976 9086807 281806614 191954432 450253559 110601297 855307777 195010528 825412452 251214283 677847793 614128560 905792297 49975583 726564525 547832164 601363689 224715401 739099262 746716445 830453378 513199661 743906431 682558484 685944328 892964162 902749253 936067147 964352121 378752617 554965892 28113409 391643167 349387148 533935825 710071072 745028772 162026418 181925863 484498588 494606619 738904003 961146151 929893569 957813005 751616542 908976168 845524461 940465111 733674805 783921829 427158809 641425545 102327925 804989873 653562020 676989145 316671695 779324674 139696297 901989082 121706007 369771387 243860609 866539058 76154287 799888202 131414671 248760731 680039658 887671644 590157909 950196865 488905877 966055615 895436284 913021081 715099639 780645698 305948237 857754794 769170362 860187959 394921839 559571125 147662912 316976204 853303275 960519031 179358977 309465988 665601841 791816051 616718441 948022635 251891473 837481859 888155738 892228222 446771781 702505873 705208997 970049024 708458666 823705875 724074391 907189668 103363119 334084921 755658404 915427336 733612189 756965506 698568342 830279878 514213388 998340055 599180527 743033353 687948667 932140494 275310383 305185066 40827844 882596724 564317333 919012382 63139842 366267250 814552864 975720415 113997908 919069542 342877181 869839597 786595583 919985083 838771190 894083345 895257147 963039987 875220699 940871939 224627767 238070682 598357028 719097256 970183821 995545509 565737239 575635427 46398912 250504617 299997666 788742833 516575023 943073980 394574829 896840714 224521210 808223731 859560955 917938222 36148455 763575454 796941441 828061992 156102046 215308628 295033660 791396415 934083472 944327819 562314092 562792522 195351109 690151838 577293355 778706138 403697707 881312291 962753114 976779390 264774408 755451147 227625728 481711579 389304097 437445411 339307923 974110141 240624861 580959587 798510527 906154276 80043805 514232285 863845129 907451340 284319831 393831989 850173370 877627464 654851798 992325483 20179999 921701955 549102665 749255992 529875380 542795177 673485389 737884382 715490859 985054378 456676611 863399511 894197635 932778765 514204648 540775614 983357954 988145121 583800123 785154512 799072321 894872581 721080169 817648432 367187616 520937524 413628336 538641503 368587349 857737867 536849420 760739797 572607844 741131943 828459450 938305196 768991109 827026709 276545607 941144415 911063735 923071370 428390784 986778677 491453099 803147102 40547127 438086788 999924357 999958846 690231812 890726707 10010493 927579311 369074709 593057951 850855238 969984832 795865320 820263761 361155672 825902362 313232110 850806208 542621896 594894971 675762923 718463990 742810079 815188412 599589717 958457231 53728237 916533490 167397794 397110158 943857850 964073247 574514867 806072914 188496137 903684195 810721236 929800864 495689515 546399569 607608283 871013503 207496709 853755253 590726619 959849162 734414148 877504635 64553152 299260365 650197107 770283623 373193687 589804096 131251556 892171974 65727456 420840282 222565023 435314498 410700871 701449011 95581990 470517999 735885120 753034913 412853021 614484332 653865974 695522075 324933058 490561255 640705564 954423553 951070203 991187225 782746232 792762389 318611534 699453378 968765157 969097321 897175968 922156751 634001652 748863331 991617354 998188129 392450804 807385731 2566213 76764315 317231781 969531461 654377420 911412031 381840438 417219879 975288272 998411157 661294966 924158410 348123405 814759599 501803025 668060694 719427096 729031546 22277332 120335977 516563074 639067341 715462074 865767071 247301915 637974266 554597810 829471048 841574852 930736719 244650065 629723849 280276925 603659269 222650560 494677609 947947082 994412171 70923571 826376460 476587404 591956704 108093755 972460176 314102180 715700539 517317037 680892322 237415677 420117954 633786863 750533174 277681613 888360961 668194334 693167539 696319831 785648664 83615244 693002067 762910763 953897043 85813360 889828025 786643786 942155222 459846669 546147035 996405974 997325226 813082137 952407694 815097684 905625412 329288285 758019765 594664423 836278945 234099832 918951108 351345472 794302147 891310346 910878681 310719806 400869386 362902958 425441906 794392650 816180590 824821863 955282650 440612676 866957393 115370232 369778590 439360656 446995368 32813800 642812424 485650670 734996601 279608333 625191027 792630083 861771148 814636905 842180204 982337089 990947758 552270006 886050866 626331832 851057595 593718554 877897795 13112181 660347395 264351435 984748780 490469623 767365019 178911177 472015254 360481352 447077350 365615008 420606549 86292187 380704584 558293344 876716596 265742653 857698900 94533651 413838502 910956939 991129143 464211178 923558660 159127924 404714344 380299150 714592181 230200958 647597700 689366420 977778606 289271547 307900500 775664167 780731118 557210719 811364701 578371615 951949136 662184117 995669370 43140058 344228497 503219543 913353135 724598110 817848092 727452882 730253426 544817377 663314796 435933563 565610451 682900307 838162910 548974252 791505116 140110327 960712558 29689813 606694099 516162999 789061094 117527194 558338278 643376022 776302546 259624742 484180910 519683298 524886658 897282546 980843080 143865899 189049788 764895477 813311439 707572326 828305699 918333815 985040688 184481795 989317234 284527163 551167547 430373528 970146646 300479541 910742314 976779667 995239109 294652921 453884683 673238693 885428459 849399903 936444489 900905985 975190516 103205271 582560759 516068689 893969991 544446122 715539259 395833617 624189941 736084874 756861923 133092665 754198329 833947024 909073650 731308479 775648622 938131265 978890407 863670675 979701794 475064487 567729604 478460438 815951108 223103202 775623809 911426330 965325734 308779311 983158920 567712867 825985812 760462486 937004267 745601744 829063573 278706725 945116287 790415265 933649471 281952800 722049345 264007075 942138601 628791583 672652419 806994834 858774035 1783689 756627663 949271731 993738645 728883534 945969225 973949612 996593509 936115052 942718441 22593344 359611741 490898137 515060493 776225708 834282580 137316991 811069237 802305104 806813649 166812013 213954587 732453528 909724168 954377576 990887603 927766596 938422913 330396639 825128146 168685680 977870919 118479047 327401344 424789643 567274128 610919822 822407284 617975497 714208928 363200778 585035886 341187314 796425072 54974505 138356337 530910224 591923204 364336657 882200707 545699430 843263402 266439898 658891342 126914164 221795466 252437754 603101213 256549938 713154708 35916733 582257409 631913178 896616280 728129647 906479218 589747282 860947553 630708854 806406676 2495191 654946817 337162964 973121409 983340002 986631741 740468176 986388590 777431102 831915232 2402667 362386769 17390857 404627221 365991753 388230327 943914330 951271834 11556075 408108802 599610938 622401537 315406259 602435597 921320902 983103183 872478789 876116983 819223272 845997269 379821671 422545676 945046298 993352967 211559441 934060069 307578110 322375157 964345230 966234003 515201437 706572484 522297741 940512845 45673711 112573756 436307035 714987096 563325087 777078232 893113951 969981542 56067378 852508489 629949843 683788984 64632792 163841459 637592499 946915833 972941201 986701673 762321478 837646021 772806589 780410516 421707996 474477650 428394955 552928995 622226064 894190365 834596679 884167101 779007481 824034810 702914958 946636924 575696090 978152390 956452933 971335147 973865452 977883620 637412146 688701735 7777893 208424700 426660391 446288764 940830859 976958952 110599516 211990347 796889675 969937501 819545204 836878783 268359234 862597691 417004162 528968001 634000009 864619464 103539911 491631782 787822686 905653512 870109756 917608002 987911759 999887670 716662935 989401562 617633914 859225074 535189948 673581845 363739575 992859170 560351995 797955943 40175622 147824080 489367388 497941671 217647382 581029202 465086267 848403971 387857722 571309443 952245542 972669508 840811996 900589949 914758920 939762917 225945820 365265926 219220558 709691768 671322749 710360304 34184384 996231596 339788714 524614110 836478668 939291823 290363155 658925240 7172105 648767497 578421810 726316634 220732474 317654107 583998402 715757958 319564667 700375825 620544311 883513996 399807599 697197457 385401662 409817004 505281711 586547654 607810598 970896740 306861017 905415821 33935790 437865524 798305527 832129217 260852963 737173616 580515680 643976686 785920877 879193332 322021509 572134197 436439314 983026710 55464961 478358806 994105979 998885378 690151172 715818917 177954742 451893528 870941815 904869696 654147306 889141523 494943593 504450317 706118754 982535060 124154948 129167422 795517106 812485817 264406145 413993272 122913339 861201350 576543303 894583080 690504438 918514174 540893139 975905201 650355107 817102103 322253599 881639321 91076159 365093075 868632891 927403891 327540402 549042101 240726498 400237736 973263211 988420495 633241698 781237831 70182003 991514049 1554964 461586514 87321738 220727699 150988240 202177838 334246533 959461133 899267206 900772950 330614823 480813807 132208803 497037265 896814159 926177487 687957597 934964470 10221750 586428298 405798851 931515125 400868102 788166311 567193349 574416382 731592166 743452848 441892258 916197455 146783884 160935866 748815407 778703207 523930099 917425812 654317960 723300845 360035851 818170703 328557663 531461533 70410937 106031262 101419417 229416893 297003219 404517646 361102830 539822450 753008980 892774928 464554785 577547552 269370992 929318885 413010070 877536239 649594637 921210695 770432271 969894216 360416751 965292210 385897753 649792354 754323812 993111634 795500081 842167513 568571789 664891161 944894765 968589717 544732232 690871444 735410477 809275281 681612636 953848032 185778549 927926903 932477721 939141511 728729127 869024381 892649765 999979093 39560890 990800119 916867250 927227866 372824663 945296440 228879040 800846525 248595688 292383043 476984333 836429452 43747638 215338087 999371641 999528534 533927493 880383294 438920475 994093025 793738060 913069265 703257563 709700943 749876559 944243651 202384295 421012275 49860560 839224919 840469583 992183700 342394458 353735725 816469723 875233994 554269812 668973220 789963020 837702696 675081058 980967693 804639338 814405692 604780542 955791172 739874676 909619607 274324841 633972525 644693665 645509149 79383447 89014909 400075809 531669654 572991586 898157065 800635757 983947854 335751450 493868044 949414789 987809063 369136620 851767390 268913821 427650899 154650929 580245159 101120108 713160380 574869692 710724010 368731768 584040629 211580686 543560906 6275912 422393951 149786028 453759336 201125311 947154337 505198206 623813435 236054261 296462865 261049466 961624426 812813848 907094240 626014593 755747739 886229502 974182581 463126412 739075062 659770447 957336325 233590094 947030105 851045305 873587591 6939586 303037759 18918292 606072220 400797248 642863725 982374211 985251463 803145959 943887886 122844617 655611358 468819030 623524269 972412366 997353880 135115234 638914929 772442297 973940858 639078420 824778317 110554283 828009584 111046159 552090608 613895755 841296045 519955879 966638504 263732635 603946405 924154775 962569481 925659146 941078775 534123939 583528751 917139777 943871958 208527198 462552927 582030914 696970134 761629014 820104752 359003475 782785358 421941998 748180271 364056143 495735994 759076885 888670334 179269906 611036606 415170623 496607909 97038163 571873569 398779616 562450158 23656142 411645587 584995265 606922921 193587360 598810067 960085094 962961687 434619883 592271556 931588647 955395940 109838342 266510599 162876171 818451248 166058514 664190206 257805507 866355079 255601438 706426844 373024552 870232087 735924251 934717604 624390686 895475953 180485678 700599327 735461806 877387226 830850205 932678928 114561774 368675235 351081942 924468165 975372652 985872338 86858009 382149692 888600605 959909841 457759101 674924097 215904101 928748347 197957629 236874845 581398695 979826634 82351972 756929228 222786365 806857489 435553185 740124454 906358230 984629904 496447836 766370330 547839747 799757311 894466947 897757189 462374700 619550537 484753135 950145254 158253720 650129985 124753797 141371843 449128679 607575124 890817795 988297800 955112195 970795372 443310384 794733646 656670487 671335147 897756780 955734822 685265098 858296792 596547042 729596377 161208079 771299612 232368745 307847273 553150006 699477638 372993007 566425206 61317407 250517375 855396011 914275337 798814925 932840420 878210139 992102531 16977817 160953036 871831350 888994621 670781437 930017344 474562128 765531606 549727667 807549991 960961421 986487326 683467346 973800441 715991433 889889408 863857627 999017820 805866238 915192919 762819331 944237975 106656408 347136006 501849693 817631881 724997063 833614136 45252949 278849143 589975324 862208130 831633128 847654874 217684326 325171368 151100011 944228548 824913484 961701202 109224784 428612042 263255919 717412970 450988479 520971444 596979185 877254289 93148834 359230915 173899630 424297460 830114959 975817449 641671875 643109632 152298986 333032079 255196384 426873057 131150521 607297298 103067714 257012240 191027083 569840205 510778582 779334041 585951439 953212871 848357874 981360977 245823652 470419894 783381433 943164744 429094148 956842116 977369458 992876270 873455516 879745234 189605441 639899520 776666829 959585978 626988991 953152877 957228949 990987035 96254644 652407284 60775799 911958718 208972513 932941721 840330234 924310970 54630544 104449725 352282411 652179341 81302201 245194099 125642443 516741126 749647380 995577477 961773166 991528564 507690553 873015897 131176380 813617698 441350002 896705474 471063949 775465276 600983729 822617256 962883834 978236775 437662861 857806084 648266211 833032873 54599099 318970509 988652264 988907706 206108551 714464256 397094146 439552850 513226300 912841928 826747583 858290846 476515028 642632555 869309281 997855812 607535447 695578042 109740232 571010477 871336685 878465415 103068936 739834097 551968335 948652191 722541021 726483823 931630515 942659491 266705330 762815791 735267736 793253780 22123427 704619010 289372331 399327258 390824847 878636183 804859670 966701019 375155759 423369667 665172162 749441585 161521963 482392703 768421930 870588670 322900071 333314069 7461180 293047603 912447499 951818736 567684255 666681503 170824174 944191139 112808603 639173138 200013467 448766024 673807859 729007502 874222573 994556297 246347955 304323996 707998909 823933976 620721616 876581686 134686448 253119664 906975487 929052803 426636814 728639576 918136822 983981735 530488513 840191127 585918910 921202570 88037534 422346905 983366755 994960597 483206107 606471950 352214139 481487686 748635446 760655203 147225872 925557615 697579506 777896794 705084030 748447982 569467077 801828492 64581764 227805732 623957737 749927012 286178513 652539138 885470172 945729467 773000889 814062651 108800173 598578291 816239818 899812770 910081616 912497995 392911892 914805665 569981131 853268944 444741179 501972516 987996381 991952594 143931033 961213321 812528462 830956660 935542477 991886662 348450477 662603297 529656139 807871907 218402909 329174533 156463987 734842381 998886670 999149095 656084569 749366210 476847931 952522111 62656766 516228721 34751690 640574359 721960784 994709462 636400397 989337018 475656192 629508931 566289445 928740473 115236693 186486873 611899133 758378728 6561162 887660235 748268081 941585643 71182864 369799022 422277118 730334361 155968658 801267791 618801936 776909946 202570446 680394082 463181787 804293664 760862279 961083310 361203173 672946844 727444251 910618959 578183986 795096020 242058092 615509653 62664475 321477083 149506521 203291128 387033052 937538118 17941636 723793480 65512695 497319312 40233091 506008497 457119539 947390772 761712541 905458090 742519717 773297324 625261163 641957853 491591427 843605028 464373296 924810898 714916833 757374028 895869829 904364406 95984986 212866865 389880476 783895603 305974140 618831079 656045265 982173780 575952486 731275474 428661927 990319377 766667159 880146455 171826470 251670196 346950858 409139357 815620905 911251912 623525110 893385895 873904431 973581357 87593442 715143223 529728179 871003719 997000836 998428520 498981540 561907746 572457836 726408458 329068633 635559448 189753442 685177245 597703682 957567883 250575414 698149351 60335498 913235943 11700582 180807495 405655598 622040769 553221286 823624154 377699147 591658482 247396861 988554202 269748999 779493665 394975176 771744682 654237281 864920812 761061953 876134683 774310679 938617281 515926388 539499793 206081236 430209492 69416681 305094965 290206355 890998824 649680797 844285672 243179739 318128987 141542803 631503211 961204102 974276010 315355990 345954666 814070590 880634819 913049162 955650005 568876510 608674820 972169797 994266491 717161624 937236462 630837323 796559518 759976127 944928288 745362120 999191701 379928445 984941134 727328592 897707523 783147851 966856037 386818923 725422082 346970792 930033634 197965669 462752427 967817096 984080077 2853117 639318630 475339254 732535934 913792443 997560602 584386859 939030395 686389740 977620187 986655042 993552538 690166939 850235093 82293779 489220896 494397119 629920406 625066241 795477756 2213981 778519322 645718263 934162581 392407154 410425519 139814530 491862705 648291363 782001324 745177424 948866037 401363126 780253164 120624932 947753135 870080483 906461953 214494587 264270883 680421586 978100044 401878667 967685526 584205957 607552154 206490691 784797646 938060385 939490428 414627475 688409576 167470651 551442530 760409662 771164962 763901143 823011391 417385010 938662062 414123867 439275132 880292533 903727710 397103752 820302125 513009675 727198257 744197802 907168510 768163799 922168819 755654907 877348700 24670582 967296483 401575921 837849534 610130045 791195476 404377949 958701022 569387017 611655090 595862475 650790392 880802766 988672677 58712993 271307890 718325413 849964853 713001922 830514266 337335240 491246567 191835311 609632548 669304049 910071604 940455994 973386097 622568918 919598035 514457081 748702154 813729723 951297336 950075542 981213594 803688179 860876983 703108722 762684315 634520090 699407851 584091149 775486803 623674234 874610294 815747482 876902366 244184558 494010517 757918259 830037428 403680681 518274295 491376041 986745680 418038000 633342220 423555936 756262123 447448793 835520301 901193466 966613840 985990431 986180743 556078543 558808217 809541485 901789721 42253143 382881609 520091741 547196143 565522084 876988382 19483853 128395902 671380231 698038555 523753835 588334193 561357256 655509701 657429343 720071358 519563278 591786520 290006246 509002893 44491363 507353206 499396394 821536564 136207924 246388403 215460770 871087472 445704798 799646787 39373517 808345073 85146576 228686951 526838120 798205024 548888064 605392972 834967804 883578627 221708881 456494200 127507920 860151902 543655792 590940451 87747258 690945007 525222980 669869510 914115735 919717026 526163494 564100761 881399393 988286723 975501378 977845652 289053991 523375691 773693440 812271931 343382898 624971590 106945499 966675572 495298953 924148312 3010687 24986048 364509157 453148951 331468436 380795238 561401937 591448188 607964475 692864893 177407792 993036138 358490984 507453674 168642358 591308436 943823553 952107239 598116446 825052311 660029570 754325421 100842664 183536918 875119753 974188659 813660898 958271045 118132678 611289936 227306988 712462658 887889732 993867513 261457726 403111346 439613050 709100810 270303577 882778188 63147254 728310161 165546210 312427194 491969585 937907041 136774793 915665877 718422787 949594310 621824656 644193974 576068193 703273201 39440057 803590586 673067045 895623325 164121783 443172502 356386090 618157429 208724448 492613673 994264645 995324920 576986911 780677393 292484164 441341479 525567349 876539300 740673005 951723524 867196183 996367963 329141850 414056154 262947722 885346441 971376964 994446041 895306893 911329035 199217632 881372354 769357884 835769137 862386570 918783864 292113486 505998726 69282023 607880677 889910352 999933736 922825241 980873796 635396468 860588710 351318596 754373614 572859988 885842180 342875960 621748860 794342109 805048646 152452829 240056371 583963508 772813474 254135370 775427035 184682584 804178659 523712956 958320773 665262997 714134885 519124287 980510345 93644672 279447569 565827877 710485812 848533080 887197495 999720931 999748436 952196615 955746074 492960235 676730950 317573789 931859413 305698135 450665392 223920875 505616233 155490252 729178975 258051781 725005341 896149794 949208299 492311622 888311753 855554120 883936270 424725931 985955422 228337061 279159681 861124451 887840575 267473629 642354223 551687157 929367475 805577822 903323907 615685611 707027246 337803428 634019988 654674789 767468849 42795631 620333440 771691833 841321360 363282381 535525389 542293704 852147321 547613419 919470201 407188034 597692982 337953210 607856521 911768737 946282001 385601701 816717409 981029116 996486500 652146780 721667451 682681309 875552794 685291778 787833377 856052369 877993227 523693851 614476733 517232621 984466807 146131083 319179693 45134132 880155575 600178207 865631384 462208076 997299991 606481720 773946358 717324075 736594313 291635392 773592697 313298759 804620808 588380716 928777872 18446687 976862137 995753442 999474472 41381299 675088519 444547455 770431826 957469023 981917404 458996415 773974040 593697430 885280059 324637365 987687450 689225884 891661590 497411700 581612163 28605135 469093262 368869532 598627874 546503737 931480545 326662971 798592096 735346603 835357487 300199404 692105699 176012699 858417204 503152653 733354531 673905124 824044381 81946498 180123280 834040090 956827028 481904415 914981323 738791856 986834916 291922475 497307520 627336543 950562787 683068016 718816232 314678169 860012564 545584791 927980521 344032229 746924095 294348371 849998929 206214908 261121388 275129342 444922477 286271237 542187707 677053806 930628847 141773298 792903660 943236852 985061696 833445274 841188916 269331146 858104270 823661329 931913851 295518995 528054241 877697154 937994975 871735495 925907653 174728916 386414288 465825964 633600774 1613363 975384429 619876753 943474460 160364262 846260410 667682973 729987492 573425592 914931731 653373870 793339867 307433615 544940960 308155846 373862149 51046556 557839180 482070457 623017589 136181476 613887272 382965843 816241873 881373985 897028741 986069568 994778554 215867689 253989395 455954466 704316641 822651801 888932549 897651329 913914662 133943361 999922692 812799763 940813090 661055525 887941454 665062870 698840248 229070657 515411648 928294346 930107177 224827823 822604227 639583509 727733608 349954782 809028361 543276233 826580568 97816121 363533399 330495301 433235944 766823300 966606838 418815820 723578705 69125465 319217598 493205393 848042415 95476827 298514458 333572186 680752592 133277436 617929034 940275532 974732504 718584435 997213601 776868753 896828901 102081887 805875942 660399425 817913628 28485944 169203066 63711633 785123683 950423754 980032787 911641185 977394665 763530230 825166180 747555089 925287023 809697610 925849166 687171810 881004398 240565584 283927625 254514862 740879484 6656506 592723109 248330073 725519173 255372548 868473780 435737772 840846345 726817614 746972671 957795034 976834811 415854152 516390820 190763871 870880132 113209640 604115724 2093853 831114538 728392056 955388568 404118961 913037896 860871341 919509674 842659043 856549113 726162672 789135388 322003195 429098847 546016383 849691673 545997214 843265541 882702506 930655427 366707205 664563789 200196539 221538009 396776249 526608340 707189431 758861576 212642944 690449602 132993615 708679804 203618686 294739710 691756401 987759839 421251130 739404843 30004698 501278179 862889496 989055548 612600227 837790244 840040926 913596287 841890805 874493879 649776356 884225893 721831368 836588119 774698112 836787491 161705766 490361628 715433987 895157131 864865195 993650157 574979403 796186282 631081796 858368239 172583957 942857551 625192111 994277397 931089702 980098745 190087915 525729025 647915516 703585383 680714016 906369461 796138768 955186470 219343119 684989236 561896147 663665158 599085063 695749460 870190304 984443390 782318554 968799076 918473814 988781018 936332948 959411122 244583381 470116441 930179637 950689751 944061810 981006305 586747716 676281104 170403027 809471514 530060747 534041608 743117064 804327582 819791447 873114104 623805319 932977355 420713160 796759079 446507983 844259967 270718474 469271097 624097991 647005215 670230231 932936516 421225562 429127767 729240584 759887605 745262902 832540658 287244625 479130854 481179417 975731936 538716997 756147212 155966233 973951050 964670378 979079274 521148587 687950047 59345996 918080746 895848289 954020469 465297814 538913610 304279570 955972907 860252483 973200505 359352652 686283139 798847376 888713018 243053102 598891582 102487515 535787838 534683783 775582005 415332621 675560364 940203948 970871191 459172812 944588170 380682740 664300191 416282619 552787695 533505609 596315838 277901886 634997313 164159574 797670422 415764026 791700872 923844772 966629825 134470009 959190715 308467413 545289755 424019442 900500002 612481953 736581294 227252021 358169498 741483211 880787426 645891838 981738272 898764018 963558388 746646855 797688711 42825656 751898519 836892035 984241079 401268891 866262861 821520623 978071680 670937680 974428120 494200850 592946340 270974978 305894942 413906400 430058300 97351014 114233374 695372240 935354320 893432864 956961486 335380677 980655739 635547935 863228819 773610188 911112519 715973114 949634964 890955744 963530774 140259205 317358610 936552586 964499537 324366840 518296095 608528913 790365600 879245748 928321768 953758454 970226408 916174439 943656485 751700434 816456805 269725317 286076313 829869631 998136186 281584923 487434319 598609387 682108092 231016252 699345133 39297009 359664255 332272892 497499446 740648803 830142264 254376210 736606235 598317506 611290389 874973836 948534132 724539983 825363830 745790454 930439254 78934930 533342739 331534178 808757416 128319615 369319829 762619023 995653369 246616793 541200954 478001722 581014429 126969936 793598914 380584265 581579547 525513884 912516375 286874233 960279491 553058996 575315177 699549619 922033188 159100477 721385982 843502455 888572908 483538695 558072230 532977679 900887125 186649461 347109576 124253292 227240046 14722573 297228946 940525014 994566466 397008608 409098147 656522528 841970112 152377772 566742193 187051530 473652012 887862758 943442341 346057912 642687618 991003667 998337872 858948647 944904923 225818938 813399483 738670304 752061477 899216149 951080656 151478683 945461595 16501018 150537017 883250933 911277263 896064078 992176714 327023800 699719664 746525261 982501500 983099392 995596977 551058501 926554022 148149072 777205556 647679209 876232708 924148453 949477631 158921031 559257413 769515526 970504625 512693436 845674856 368410491 564456855 946675754 974609273 420800379 633429526 627896410 846840913 882995152 910652082 274607425 931541959 478533423 588235501 983381460 987477531 159472785 255173516 965173707 967300312 737848745 823461219 817629810 937989841 862133728 959343442 263165843 781603705 61144230 334362153 618342084 667252683 132925569 940032140 258264201 330865840 663393331 836004291 552257892 727033291 5131133 962681780 687105431 923422236 23938462 491748093 152236361 455746438 463384361 617947237 274506095 975018857 934264985 964272159 197824074 895737376 514631646 912573647 653645302 915976484 308218990 985276580 706288293 815522994 406809374 494943194 956738205 992399517 689505529 791593059 745415195 946477081 605628231 713742381 910137291 928788144 217740785 247813883 428489730 691045162 743473353 751197337 302728851 415412704 658055184 977090511 610305232 625360501 117191808 149984022 399667051 481323849 558762866 942688760 366735222 691993269 382879643 794886165 502719465 506181510 144662878 590720343 322659828 438232231 399471062 942780090 931118342 990096153 810512131 814069549 163532372 787424369 25155433 243504107 400334026 779357553 608185185 641679450 984277285 992955686 891815474 949229766 10032198 755642541 849288257 971577021 764915989 987970515 193993296 262815443 752328291 873530880 182266104 621670132 727644158 992449035 579537868 621305275 953618835 986601712 887653209 942245470 574968347 816337746 965335386 998773138 398837777 978170958 48620859 700597048 589080631 682127269 190854308 546335660 558180319 782193991 879428874 939968270 579538537 942600998 33612937 298721241 922107599 926207518 124653655 888456372 14973357 215166264 7782597 23068754 125625546 791949696 658714183 783205226 169298710 299720979 119618016 843406364 661146798 847372690 986179501 997841986 208353203 555299998 22305655 463342044 198082796 520864182 681725001 809149170 830520128 939131538 467365860 881841418 356415749 516954547 706840746 855370042 986674757 994690257 703265491 722890343 630035245 662938631 587106542 758861626 320770636 784103588 780141970 844672913 551576097 860164554 185119584 965978598 149580593 639130269 611560133 946418712 515784639 847186486 895826957 970552178 792826408 991950544 408610732 666795053 162201102 772970502 961887653 973392029 718868140 911537728 195717111 942316563 499324785 707534744 380150724 873200852 68549810 172360802 180549093 473824765 604049423 677616738 992483936 997664476 173786241 705724457 481490964 509137340 169275208 558220880 115059406 243741611 73389487 831137410 94954118 442841646 106206698 153371295 472500558 862984364 699018510 918031121 114941082 816024712 99702152 902158772 721592504 789301063 321333518 778586536 507810455 836432071 531765886 684694604 900633530 922294199 168353024 375769146 688869085 965508798 709533109 841784875 83511916 330739841 880585826 986071497 231777535 642875337 749472376 771728917 678004291 930109229 494913764 959074197 891596147 936121826 783667919 898642338 615386812 791100744 381250133 790940419 318186759 871264030 482888575 890290218 938281619 988147655 244507310 764958694 998253369 999083144 730889686 772441479 716407597 827695468 102849004 922896259 347193357 563096551 127398279 199130533 598759518 799548468 2806680 484460584 872241030 915935009 73127263 225098661 41613730 536735989 386087077 806956745 45513348 931509676 380682264 892756575 611450810 708024906 737370362 815591415 915745736 938982516 513712229 672457987 605579671 791697104 626576794 868344624 426710294 902248582 77859628 362022791 656964305 692203759 449611767 924676637 872137711 936187796 619299008 743780459 287171348 690244054 94253519 599283035 709193593 753706074 430706298 508948937 680012296 688152795 821750669 961472623 478590487 758756894 53390061 797200595 801022381 824857602 39705731 777477382 174962783 690009713 488374000 786200325 313053263 604041865 316573547 992829873 61567003 404922200 723891577 967815230 497599978 805937438 328317437 907755658 373515481 659241739 975040022 983991039 387502537 589613694 439942681 730353638 29420778 732779862 404082021 889810120 870627779 914982892 217731128 927311091 806212244 826842408 382405409 978385565 384163546 938670122 306925381 588896936 151799417 760423002 550614059 973237204 145924711 659161122 757909977 909472433 971225447 983348199 916166164 988097211 490666344 782118318 476249661 578839013 58333944 882557753 765792601 839420272 906468024 917739489 503241589 850274634 967199095 974931002 998151689 998486324 924864989 972344299 956659468 976379473 294763800 583135554 652936365 731196952 171420018 868858746 628597466 845948483 298670018 811705883 262950873 929115025 612984013 909015366 609310324 693822247 957048829 958817363 984701595 992755447 409313643 513368714 955560417 985694261 767872518 891908858 213411036 304406246 374077943 451059501 173238288 500600340 226969473 832658281 126398678 832978864 130790827 864750590 341924363 787946709 313871202 767235863 280395540 557920602 209185033 950755661 398784997 562531060 603081197 608825942 681929018 820491561 900886254 967415396 204891394 503855320 542517928 851880680 501602023 820260363 769041105 852466328 496714510 509423966 753892993 971412246 178459616 225924410 452237915 986855254 218597891 736760728 650922068 929811888 861585599 927407634 705627506 948756391 155365039 882747994 572854545 693172749 591293600 975064805 4182809 558820819 138323911 770022626 960338000 980336037 201521731 605330656 790044294 930909557 8308340 70543231 111650905 550200501 765041864 914895976 628168927 696075880 567454126 790416494 361686385 427236573 192078021 765513026 140782381 962442154 602396943 666049745 254214622 911011728 616063111 914063606 557329408 742777959 931988189 961469301 54134632 100964389 968695985 984572552 216624633 270504224 997437664 998631507 103709297 625301053 552585819 586602466 943880314 964574040 556111670 746902177 120447406 861145473 431280419 569792276 339036710 500004199 648280661 850303582 229644347 584049363 280581369 837924711 31749130 661492587 977168105 980390676 692131817 819052886 676933269 903170664 394438464 515078300 250034896 715512854 46442510 220071848 33314305 128383765 306845713 332600507 825643792 852672040 447069192 914188122 923082404 988784321 31002117 371528609 142620211 863381080 16947080 402175464 106836809 966652593 963469280 989893139 262027468 718408718 658089377 995668826 95478616 134125153 437333009 543511962 716070309 984220541 929715891 952202266 11867215 549915139 213092444 908703832 803125223 987031893 960586889 973384225 15124834 972601513 731589584 983858546 653092661 751653774 698033730 889254794 178860096 213073583 172596587 750282678 450498705 465513809 728806871 967524959 153782183 862855188 382947817 437128105 157432793 456901850 264418752 824818854 671710035 869087736 26006202 897492749 928020805 935825694 26408456 93745323 444320439 738028612 672511629 826470692 939404321 999386307 336338680 356070029 61013824 956432527 375120179 553977943 400246362 660792537 471881648 744464753 47278054 640480424 320791284 550929968 934805338 998388276 691296784 771224089 815508258 953372945 715694836 918979234 545762482 739929653 425714755 554727429 965976320 991244212 160162868 693021755 851432286 964670693 176307955 841556149 780900724 828219577 507478690 789343714 634243348 698756237 901148368 931023937 739129155 936122013 350365783 567037121 182755759 692685263 76946311 397483320 884591114 917529009 32032985 820252295 285300361 484056717 795835289 861104814 738330038 763159433 807443204 811397222 801982933 822752788 577460531 666399382 591336125 752648611 766151568 908301420 565292673 726572414 822222999 882759875 165546077 737028257 35103878 366480641 513738290 879028621 188912383 441901413 491708676 522094335 564839113 792549053 682415473 743405608 194062639 220241349 361632031 603423407 245579145 522062105 712983370 800401549 814143355 882907690 533023527 564780964 422503515 545298521 765147762 843242450 481999184 529916989 738882780 802987884 257216104 299579315 434678469 768867628 132198788 140484577 16786515 219622278 654855321 886508982 933474558 986928814 478105176 512328962 176990828 920117944 733449955 977339867 550182390 801990695 76907734 334845492 19330401 90707621 103246895 980462347 408565485 784388716 189365128 681307218 160249696 708365060 995379569 995791113 111605334 500348840 685385238 695991153 122053030 960645919 260942223 624945870 306136238 448222810 297779817 340723682 134684505 323580872 672577120 914918398 707371033 985503914 401856136 846682424 996531336 998027430 371501697 978770631 58630123 510975858 804971570 988018251 95304341 376697853 258184310 998477234 113639546 553578917 947366201 979206336 320895269 966114398 388566333 640669637 42756652 748358337 512993877 568664391 594696127 754614064 639208921 783215480 719364062 984433267 284921680 516030762 881169309 954296405 538137316 827475652 870324694 937935875 38170416 954972536 508071175 836049135 815285444 931184456 144384725 315962536 726894988 932020668 544568604 625969682 776716411 971778989 816376446 909811816 324463263 961615776 319957943 394787520 873625618 933596178 421485034 454649745 946312067 964477511 998489277 998659915 443469239 914261004 121399557 906060298 592402548 740660119 160227431 556767557 30717689 110078225 167808406 558596601 440778453 932205613 209310683 784858319 513587987 617870285 737994074 986649347 894888070 952609017 3718583 237898686 166653001 460076794 302156908 314448604 538245612 744834791 90191258 659190089 174734803 445638100 395527566 816254222 8778204 135625715 365615499 707774709 779940828 886940180 882222402 986350635 692900090 887209182 682346901 958747774 11488893 942962974 874490685 950451951 276450278 330002504 499540037 743104938 341029804 969324384 940843044 941769107 637899654 922223368 177357702 479748514 149581773 398620361 758141244 890182968 402797835 542628804 974799259 985621871 513575590 592639298 112203581 868638038 372291155 857383457 986424049 997543675 421026103 957616974 183626657 863176432 754938832 965271146 326605441 958413372 864727285 926859656 597695580 704363445 645086732 690840318 78026821 744953211 752265838 790930786 863010792 873643835 887900386 894568848 483788039 957063455 432227804 555024877 556974937 813422584 132630453 821319372 733046623 823966406 440659982 951853129 321290054 795583367 106419280 521953859 144043039 825008145 6809096 433932108 309140949 880193486 185439506 455728107 846302717 892999682 353363823 374258505 838837675 854345083 819718621 993223384 195872422 206665895 779046600 888231958 953541180 974365274 985731102 998873580 502229373 546543629 339289516 737512800 6745085 423632073 955244252 976389652 975931845 985402412 411101906 483283733 775893315 857594895 832208812 982900478 113631813 945853223 234717999 437248850 596189697 943875024 415812476 418993306 166178609 730390414 385451644 831413819 3120795 515927277 981937279 998103300 240006877 529133816 674640870 857988620 264178999 938114602 91343723 106471732 321749253 785948358 346183997 514981951 733058469 971263937 286064324 979711868 870112459 927028118 950202998 976933895 929210676 984838341 809783466 924951404 910936323 956785166 620936316 706098328 924444984 963248527 397354740 582662815 396088859 578633544 93513739 697390062 12113376 999971146 878452363 899091799 212335560 969740803 179136347 668183092 93476858 644065400 709665022 939845805 127896807 636643308 970314446 990878573 572165422 579007973 296140436 975506057 253339501 342140069 467690904 518985765 457417163 578881216 80849065 617558764 534366394 772417166 248894585 407741843 848962400 977012742 548070689 800302170 138348002 876665325 995420448 998428019 765742244 853097101 51723383 895758108 726998961 836909716 206887108 904483608 124071335 742088797 840692776 994921877 305653582 824363782 292734689 365790379 72717032 232989014 116508359 383319847 331435950 481670581 980264061 999477754 314173154 833064316 83215428 594499796 848178703 971339456 51249174 432162574 649558239 963460513 588562707 931046994 605395339 712577321 183959727 742083102 695393717 940754914 570278683 949058874 486856563 700935801 48868406 875145284 167946835 689047558 920655378 963016680 138312237 345597738 99282413 753221177 220497604 973595577 290098060 797049820 214895866 772766132 803790443 879941778 111496204 563571179 782954320 827794534 248856450 709064567 911469390 985510265 625137253 664604716 903163449 918075244 546263028 591636108 360482697 868533335 99404494 512680536 890105794 975294388 662395879 831467310 793334348 916305898 319512650 502843079 706452535 924779331 855006750 956603311 351851742 381085513 884724851 956435205 108973850 569979480 126721949 176951891 812604845 843975841 888823902 928944401 897366148 952628480 531562854 624342121 12740610 556178334 981669749 987486613 310415351 789086653 95117381 503683876 591104558 834185237 378399725 445852868 295725525 758054977 963340543 985687093 614324438 652321468 481333020 677844445 667874170 756168408 354613319 655225743 207141051 575201156 550296330 859477447 706977093 757154572 21897105 190148502 329777802 799587103 924733786 965516875 727534462 777919407 83241660 716279446 93837694 148817998 650816698 807380243 405472084 630466740 363183098 756821737 881399954 931830377 278284702 594233555 747674358 894603555 601838931 785597022 546464022 608063722 395777380 513199490 574572692 908396039 960547908 981624294 10130033 566862355 657970949 787823817 536952872 624442489 602755415 759563648 280397859 636874493 917295034 988790849 346527064 759102624 63389028 858708895 247436865 247600777 888319021 932652189 148606218 965785664 121685723 367154222 687216278 751228571 190343070 408555534 321899651 484798207 530080122 576937335 216173174 586409061 806885757 908346949 285962976 584637755 556460024 752108765 947438149 985098007 942116582 983139984 1040482 565327022 761698924 784087359 631647160 790593722 283624349 745525648 824647639 990371583 909486675 993522647 518766335 622666157 538752405 803878172 570547797 740784682 906649690 917717442 441029255 563965909 489975354 656638185 519300786 742811771 174469930 248277543 217854531 366511071 227399092 587137711 682890101 993213923 312266932 884997091 318197207 878410830 757429937 981595049 373513666 988073055 624740537 746665616 208459228 318575327 623156282 823550990 138955790 445118020 765498451 926345729 820357083 945072064 729365375 985619741 53622586 905793820 741290270 849062104 402850363 772902028 842181108 996001071 189215627 808405696 139819674 776971011 917824889 935554625 768773885 775909267 897846927 976579103 655671407 820212884 624677510 700305808 610516246 615030362 545214660 564500980 806431309 879357037 787553274 930484903 538645705 956634541 525348230 953334053 209066961 398420717 896723251 987454977 706717062 852686257 465091765 711251952 343579119 694336847 704511494 940723474 963641046 988458205 146376176 745878609 102101509 136352784 599703191 965054500 554686006 559932305 277125993 772051950 25813001 104480366 658058373 990930086 79505127 781152981 771976972 923426425 464622879 728640167 926442292 952256830 862217750 973404705 130769730 397692085 817056658 965029137 747431773 933547331 635556226 906585651 875451576 941504350 516229060 920856091 271284820 604289195 840725364 927801851 71750123 517300538 310688799 796829206 265134935 420982509 718161176 734738779 246713038 439911402 662495612 718141280 966766235 974763170 299874362 406623703 376276549 643627380 606942146 880891339 971684547 984005844 113868469 131035329 504557501 699521473 819698943 952857456 721824308 997415700 465990963 536234668 701045539 869189660 335084883 471698661 933599697 946902978 202070635 954466648 513334942 663074130 454663074 591262449 237273031 738117262 665683490 925347888 829520104 951537167 286796495 534391078 779985027 853060354 50470863 269732173 925332128 952310337 864997950 867241673 313836116 508299947 519902368 922434406 68758554 484615955 595140815 835951946 312990125 559350705 23347966 250501031 348323030 699186042 603212770 880616745 346356438 426552933 510322947 566165304 244472524 582976062 452911156 882417711 967520375 990145476 31729683 872574823 214983049 425448325 949858944 987152277 60890571 868850915 536282731 759371517 983525961 994019005 7245064 936247934 785182035 841245992 108922926 507461585 13001399 314707091 339810410 604795704 429713646 782970440 863127854 880447351 926164707 954596391 876817228 913923873 354014661 542433398 339429468 920689831 669191671 937877681 46361718 480378695 141468943 261662858 140201731 492461160 417031298 724145825 240333306 737290247 185856551 413880980 630452327 887402206 857960384 938361135 168860920 867107842 152389495 719227244 940340627 961836954 615335956 845906493 493431610 520102722 65852035 626218619 13641561 465552121 448846858 865749693 894576259 957701277 779214386 908540833 481755713 504860847 454488957 772733225 452055200 961652924 748238892 917902541 288135329 840723313 241435680 422721478 621992978 814375004 952590042 981791167 211239760 447549872 931588818 978009758 780371637 965866688 57452730 234831206 332052337 929736512 40465216 627793049 982655925 990777729 154346154 642562016 859420116 937699878 332229428 815112345 720004287 813546637 640540440 961215497 330746922 853768343 497624578 855172597 686717024 821862116 825100201 830896429 324783922 364846887 689634179 819005625 17761834 53412445 638828533 672924610 916279873 943321194 827169072 933810869 773010447 829851354 807252353 964463217 167955337 660580333 391883196 564977975 553204967 570026431 886827118 891609409 904602089 964142475 342360722 590527274 318171287 835289112 775873977 864600657 441384234 740222792 445837448 929774200 415784068 477783385 922173904 923742457 481721982 924228544 873910571 982406762 878091573 940847501 262754191 850542246 879555137 960904980 343119403 753325356 634670636 739218060 629779571 742192338 888452546 903649811 829690851 999795218 789044527 925301863 639723795 872022141 389725850 643067363 447452191 538434641 184245559 331773031 727867931 867394349 184410938 350047702 368690539 856847252 164382808 927476587 846431923 885132019 204188247 609778596 926650289 937472825 126627032 686684734 625086045 948312299 928523545 968087902 609527833 803649102 940964198 985352293 95617395 905771148 474906736 497371054 423355349 567944095 612286918 617356113 56687970 239229722 141373528 144096047 602218940 926880851 272765163 392934627 56805921 536239419 554543636 848564746 166659045 977876071 811745326 877033141 734914840 843627241 98052717 266648704 776913394 807209733 335686303 625041209 572263465 576840491 965550611 995863959 303960248 410434766 250716218 761311352 953906036 960586458 439459545 915861229 230923020 386563781 690950838 897964550 499877450 968655179 966770656 967698281 900317430 944762005 700266367 799505511 612227696 742175924 827297905 895984866 539254800 904816917 329938057 421611118 499922354 711411393 643909679 666758993 24835697 349298954 975324415 982431614 468009482 527838156 101912581 435348623 576536587 601457369 882322304 919741027 455408960 882884804 823361219 866067354 228490196 608593723 833697907 966958805 345154003 817817174 879932940 997829438 124658743 883092951 15808145 515104318 339045650 743552128 119195029 447792078 242227921 412924809 632758673 701444870 496209877 852763964 434650916 896487375 880657621 978322540 90006483 594429011 888351199 888385159 89877097 601237578 978688840 984042906 959303398 981420748 860426442 913016092 393067732 792050697 891102437 954990099 183140699 714297555 736924237 980379556 355526273 921116616 65007882 689599584 976373418 976603193 831620896 920851491 35549411 361448625 550257941 899775800 178547916 787990409 300109941 397573381 620079074 655877866 139555387 903658591 99289171 428342671 385984667 413813454 473312866 517026599 662570958 668391958 189939334 445591571 81386829 481139901 87661436 393715215 702575097 855813647 117791188 286345639 688868829 771735496 502277585 940894329 662160548 686328718 370127136 606627125 592179080 601499334 424611534 616200328 542763622 974753850 920571326 971222673 908157189 957510081 63187629 254031142 457897922 949828497 384551896 983715601 8991245 776286283 375797237 585419206 645024111 649568555 155729743 272415507 984164495 999923480 25825042 759667996 673941704 911301522 623594501 651700674 535272893 862797603 257977877 505825640 617698819 621968643 720784293 746960820 383855534 392922631 586469119 909276754 439644306 758153725 167984543 936153697 368464921 602855294 933060204 961122706 517145025 670180848 982686632 989424674 954233976 958484402 332188476 846635370 751422379 988525971 873990184 996465924 990271013 995924570 892361564 949019683 185595776 751505257 90145268 124156286 230063645 458091742 540847170 589282993 448710522 845954821 726580329 776821740 983587760 990794574 623621918 734310231 796283360 886582860 333025053 421500553 858622870 992267092 96375652 333389873 701732393 838153155 715093582 903672924 11375743 68930900 117593872 902246146 253146606 598262642 216717181 249220354 904481420 975967755 912852554 977414933 691198111 850444621 265038695 700131637 688676063 885570006 372295055 507563942 543736453 547529280 541563299 544210351 366517581 441522276 599774611 678596659 670016268 789842155 587743036 868988675 886146626 901514655 614180120 795996180 567015768 820095622 767433253 812682726 485982412 981433038 152344900 689525707 419174570 572755394 203016474 609269052 533800840 817239460 902671748 978379718 300147150 678386571 646357672 846230295 49627041 482652079 300376270 327573291 645966843 860447329 675025967 910955872 770182838 866222759 839464998 928550990 546364220 867704916 513766968 776016609 390308321 671443468 196128558 501809331 926338797 993080401 937234675 942989484 544054424 646068427 979845563 996968868 258697003 468150647 60811550 848859081 930913438 977798074 301066252 567923872 464362387 756393175 389039726 996181947 527285013 594483622 357296808 953353604 280336224 921202434 31862056 815198164 907406604 923003219 896055187 988669322 214344315 441188633 902396464 967893188 160309333 808760239 411090064 799908273 729895170 840453416 14089993 528709019 34606917 661763416 101682697 564775413 142850504 752616864 44987161 479161614 393588895 399273813 960338908 972494978 611545390 920723349 918718841 970272408 866593041 870745209 141049375 897698016 379548726 417161162 717898782 968264796 352853055 524530822 856745727 903540937 258023510 763661377 631061561 876936620 488203217 960034361 358460902 665620649 702608637 855418588 448734900 755431695 692389065 920423222 640137237 736738081 114928699 184541140 289360825 847709316 363572510 601000284 495612318 722513972 661192877 871274174 470878155 816476630 318948862 855761655 478704503 955919691 788212254 824729265 285472064 906443375 280467049 462471445 106723610 524054498 460670886 556324007 384650831 770245577 629754417 825569448 31763570 361861057 51228499 300380998 236013688 692620205 850647905 939177892 27497131 928933276 497637782 833217256 471250040 700241967 661498757 838605446 508627954 599426838 418478846 505201476 768072804 819298202 937479220 939015103 220060211 469378682 528536669 778036019 500676306 935665962 62409434 690787910 360533654 564891358 773797063 996836363 513957778 633580479 141406912 207730628 986666560 992523849 1442990 477831413 332939491 737353552 559472039 932003113 668097686 692465974 319164019 877253662 435855884 857390687 256524476 628811167 651182278 976518652 404082542 518415421 47956645 99575185 288613729 355339795 129368763 473421566 361226575 805709574 147319927 558765231 907359117 907674135 765535493 998706309 35774005 988905214 156520378 981805358 907194772 924376742 818981785 846927845 497690886 978721442 434620682 840613754 431236467 741293420 691011070 991151977 26113241 991998771 303219996 464189461 510595947 811655079 921525946 949969656 948296468 990393523 28686650 148421869 161246524 643649148 957306256 983910166 61246666 394658304 121572539 515783201 279817557 631930809 253408886 677251362 242652605 405293881 915960709 953561177 891898772 960008451 876083144 902110704 547455369 899330497 897445409 997718923 302189147 892713358 170191464 209442655 97466376 436119987 332579107 527773774 904988334 967342234 876348317 989493999 61706890 514179337 1241432 386966008 95336654 296073098 838446189 939590409 592197491 879585834 253709574 851254385 973957819 982730416 462816162 878909204 422047919 928723691 870863014 971966526 294318157 791416969 322707668 577394651 362682062 478391488 676863109 843745999 583459009 784915835 492217122 741972608 810419513 861569159 463440156 971587151 619362992 834941730 236517964 493071913 462609472 642755995 943377043 944576100 631129167 969566894 682965806 885254391 36089463 86894631 824212024 887337605 191950287 803761879 831199833 992743304 963200264 980863287 981117238 981891255 326403767 721724945 661922638 737061995 352840787 521825014 395196511 769930271 905983703 924658542 812852302 964193427 194281178 223165473 596960907 601875691 831790081 926585958 132487025 902642454 559215914 854242418 45282381 682560138 145755671 863978881 433914637 718632781 635883402 944194924 676926052 837985509 911878331 947752121 227759487 487766674 514518556 883497502 123227098 156505305 683632323 684047900 668607291 724764231 761353377 972603780 930199602 956962467 827248404 849715714 517976726 828580671 665915371 993068405 135932173 322144063 875361199 918720858 393353409 541034636 224805032 959088875 537364035 946252596 643024574 822966807 329048117 499392106 616435009 806163370 750644452 930960097 476635755 636318013 450855760 746934834 570073054 862230887 108107639 198336379 9272863 50472808 125297953 652664390 957028709 991008661 482802834 723768971 450299074 787732694 162315335 665310114 291259906 664848716 68139446 661063387 625815726 862843451 842354510 930667101 795940481 871578545 982462977 996109997 529572093 716683879 547090243 969001936 94444107 356702740 583086560 783013062 366944786 683298510 462309338 530559658 427874173 470093947 687151821 971004854 173797011 617396755 551466183 665310104 318267003 894099147 15895142 409918927 821382875 950423593 676641674 764912090 572936637 659022734 155235178 458878425 449897511 744967926 117698392 893032289 842540458 953483032 534092047 732375160 434820661 896267856 312807193 985922387 1301309 251258480 702865609 885570751 86122149 589217361 142176534 537425055 492621408 747200997 678015860 802005481 409747883 621080125 412440876 850100435 292340028 379420288 588986409 752943866 712861001 800183363 601833684 731363935 255451922 970807458 389447578 881472709 673268656 893870214 423651120 880375109 804386971 897320841 626342197 854604364 382730139 521509945 743523707 764428101 427866795 916597436 759452651 891982916 677245117 919900342 935081720 962973421 148411337 756519139 337694063 777976597 989976416 994380082 207850991 825365592 359038125 466925682 158762581 775873249 239239 895653325 63809251 195613437 11156086 964668867 3639801 232771286 292673907 982661363 62771573 703852329 611624910 848265123 952363651 981427469 740076499 782806263 665645670 893750917 87293497 733945292 414613535 945925695 904323864 969275408 423744876 628347882 814812004 987913613 228706869 923007020 562455090 967415156 498875732 536866912 939114147 954347849 130495987 749377518 827771424 862718151 313707063 757475861 418136006 494880277 841408335 860855578 948546855 994911389 558856321 933816809 763791884 783064003 816906750 955289219 514810744 713816309 262312128 501005809 534255068 638150603 894494564 996452406 12820331 252205202 372314551 479825169 21128192 105232209 872367739 893458069 953341221 985359582 195453591 641536884 425184192 560359035 913951639 967807673 587959242 636571144 93404408 395177457 853508429 872114192 695402511 859220561 982313507 985128376 893088855 965373443 914260927 964067188 817748153 820043012 764090009 781524597 848781093 991509431 267203683 444264508 608520288 738548583 340423383 937886019 50736921 351322643 451438206 967983587 229832128 950643109 988105316 996471796 380504087 963783090 245555467 907164053 227516168 524794503 588579137 995528909 337397750 724037759 885377683 950991932 196012231 434363269 656525905 926266587 262325691 568835366 384124328 797321586 880714634 954576195 631883974 664229666 83725742 377837201 331074903 879341064 395439743 675996555 747744355 986236732 734169508 806826284 1806050 872780947 41119378 428178120 117824910 879857940 426718745 836891992 489947526 933981601 338693728 737066314 476767191 810116778 397326461 485762389 608458721 696470108 913789258 965632340 585101052 920254762 250692186 559281155 791101648 866069953 747555252 917562504 86577742 889299218 736170386 810130731 517794841 683522532 525857106 603738159 485009407 568887182 954168168 991735077 71502769 669267922 197171799 868090830 705317971 733112642 7930047 308185496 244150241 468556953 369699075 595591564 253527236 327947109 681633666 910724889 641014736 945454402 649230621 655005024 268698131 575496181 144173208 450020995 655955156 917434038 997341220 998578899 630081318 822563881 623798251 935074468 536361344 935336765 130616527 814232741 610531139 635208374 646858708 865064499 606959308 610299556 734047703 867930889 851754627 917384983 342627725 819463294 20261121 212330771 200104707 254959423 633404677 780120507 938184784 962888082 448171051 890263278 815826753 902121032 17078795 122859291 529107407 933259087 212981178 480108503 160597597 855467315 407791947 528136228 894021098 925846955 466575854 992172159 820536803 857545952 793869603 854008467 501327112 717365881 508141661 886081462 745449175 957131981 224403108 903056546 785283125 839187784 766653753 801464245 504966414 873979532 13132305 379862831 55432706 844285453 521749149 539883836 227793587 347551015 959199400 985348058 747490422 865305907 164672796 679248219 72383572 962148436 383972634 409555757 52388321 269279357 133487929 434999409 651888918 935717276 488537153 760018850 317171500 698814295 278836981 698322406 211812014 715793592 703220287 878230171 849527810 965214903 372177868 745798397 646488042 774736339 972726939 992347895 930741968 992129435 313530797 875218317 917981663 935194262 876475996 970918662 272235089 933091500 873713639 951941164 618192218 655380308 669780041 707398731 321805850 635566570 29246434 705915876 214958342 254610386 275201791 996321366 793396927 849189505 707678858 857883331 592322351 676639983 444463557 651826782 426914401 923084829 531217086 764586827 609715345 783654549 962609433 966815870 813525810 871551946 184534429 749199687 502733796 983115542 546342173 712753733 797522677 877087536 314497601 655335308 206687742 308398211 787758375 804551568 463698286 561490465 779731518 793202116 571848191 640441191 427165447 848817393 527158012 543616316 803564598 986766644 295749567 408796724 143033246 272528814 208537970 428818919 826791872 878563243 737517 330209852 617555707 650867616 647031099 742360379 405954181 598058630 396281284 558659617 901646685 998993075 298195752 642232119 632325445 962011722 424662087 714204688 810692683 942087424 702003297 885996038 926576809 945229259 504747782 778791544 510090173 764637896 194067489 938692789 925703253 943487201 46906243 319350728 15351320 120464745 282891137 679649902 13294547 833814992 797963108 996911785 444391809 850496718 258742691 963460847 339555137 757786491 241018401 724117381 969384555 990063850 449119266 571463821 879147744 967861805 222671560 610778442 644898330 895569621 535435612 790516752 884031819 976819839 443769774 512826939 541789360 674931548 400618241 501756215 666436628 910900066 510266564 869131547 639459331 862557835 242106935 679132541 103402860 762867341 746729703 836349676 116707300 597810810 263764141 306903701 443704170 774620723 674896113 986177167 571931998 718973484 86367485 241855165 833852523 969565935 585960972 615331770 168688312 762078988 677174210 993976314 24214700 631102978 581104059 693187168 347991344 892287349 823839946 860186792 26210972 949497957 86972553 109069003 483670096 882150892 151223972 176587288 534178987 768393071 32529929 248135515 886833624 930932206 286827689 585482802 339578384 689659113 640399347 687796914 375050 618588408 546474860 670114918 555781053 562204212 585591814 951340236 560497400 828799971 40140364 655098286 347929427 416592042 295991803 937088304 744561169 991879811 98520519 909319062 440792311 800678833 988336686 999568211 560413482 771743392 288940883 790539750 721502667 834707126 13637709 381499756 440040304 688683289 109352147 643562209 209328763 340328365 611632838 781225555 895306353 971094844 436198092 595161066 251321597 978245631 37189719 790381058 690413973 871863319 32876467 375324262 975959066 994128839 320352524 524749811 628124967 913445991 166546710 801290464 84993737 998234093 899370228 961781661 142790327 906327354 796516837 966094947 985691998 996095766 415137650 485005465 480143015 512098654 148866662 496104460 581747544 690839087 18690130 536566098 809528839 935892143 87160073 255819236 871203367 881436533 709694171 967659715 101339110 484531608 521513666 768700944 651787275 930782115 782347722 864990566 287918691 934669315 700420604 885030889 42559303 562710475 333373057 890375222 299245726 599995860 163945163 632550752 645828774 809131646 976669736 985563186 690035043 900637857 376409812 763707492 700814490 787258849 39005725 239328551 212037049 884232350 62198127 640043662 389698309 925574053 28151248 355669781 975793916 981667950 266191899 448925347 453865619 564147509 721745193 749577582 100347649 910618055 536057913 549122041 40482159 437344384 38862492 300550273 217903876 778184900 605946697 645654691 121181970 734004999 19768416 34343288 889628339 900130966 97395012 285713273 760987765 858164466 335662695 624984953 389291903 633111586 269864138 510948731 304186440 350898193 342409526 757449274 754769413 930237391 876451717 988296856 927583789 957112576 173358775 660688089 322581708 335862719 65416472 421501024 532439269 994175037 275649065 937541467 378257431 574903709 877384382 940839022 154437714 178435080 595856274 670919493 59448103 370078583 297305869 833675451 322713472 885307332 701708993 868830457 948960174 999245916 939083649 973113884 164450156 636174706 766800267 921762406 703681608 771696182 936773602 968453183 693329823 745438486 697390618 788819773 143654654 936259236 467736294 934471826 518558381 742662480 293096879 557389134 116079576 542634801 754217208 854654608 529258372 608917555 973154625 978532105 326300337 376532682 2882538 677742039 362812206 513127861 945366237 991699600 402834984 442357905 733715296 752249060 101969550 519367315 735289101 762954739 388219513 974918483 218395551 464896196 315521957 563471810 46336103 131868675 691949758 758359821 110709210 609180045 663342707 702087304 304980913 446421654 51122197 218628561 510041809 596350229 697093020 919218164 871011078 936068727 753928664 880675856 213635837 631112545 298992364 622098523 801396272 893355240 362759409 640041500 671429531 827310428 829614341 925940399 988183521 998977957 565204832 807182973 496697670 740442605 933391940 991795480 850954236 960726691 323354526 430635970 487738469 826338963 593395454 704900766 987497341 998910016 280528230 518499230 606207780 898815868 825054668 970616480 563325990 620437584 27828192 821499114 189122772 235236520 408817525 524121035 129284372 999373332 416306700 968013866 992796661 999152687 18682905 604758284 9206367 336883931 193078692 725904878 964184031 973955638 341147099 752235974 741503954 903767230 626873101 873130182 679578385 942929567 560944833 798516722 826628977 921883650 435577872 543650092 982756598 984696723 205058206 385927026 188188965 874656833 712786874 866610481 24050841 42274940 219816455 672341939 178144426 929281741 551183194 863818310 287402467 293091867 511837181 587540122 829121676 939456620 322482730 597674782 443666698 748683717 415367814 877561601 361445502 929219329 403999351 961877547 767634131 917407622 791881861 842521309 819341499 909895550 113730389 260994138 718413358 957154058 474381588 917462536 89224815 457907752 780392919 924373432 489974239 932296748 991401567 998062344 422133036 623682362 505641953 915109387 813199896 969097764 425901626 953276869 391411656 929721883 228517000 325214041 699330690 937173220 423498446 601223826 524272033 728889298 354871439 509412386 537288332 873543917 484354841 609517516 757137601 761455806 25985311 795832680 682002406 891675693 43691939 952122749 137601094 813452498 972703541 988051406 755820354 901575182 198074466 706804383 215034787 321487012 614027401 630901452 145091134 361360516 143635448 392033313 296625789 349506422 805436202 812034555 777881920 908399929 167703492 254167956 688388721 797982869 421900755 834191518 517866505 565654024 293712301 900734579 196585987 998601677 940140066 961175867 515920027 912723738 476634926 621614232 985731949 987607919 30796078 220150079 848270204 947745982 564045561 823910203 320367034 963422079 392992682 999568791 925049584 950893062 679598691 825831005 207521697 397014830 623243326 797044264 685025255 960336384 321279421 677392033 315059439 434540206 292801990 576314104 170581627 609913389 732573875 986148626 272633488 854318748 676299379 952836251 279578076 920895154 945307490 964345217 146093592 515487890 942615432 983244562 469505279 478709081 450686577 478635238 28177189 825622088 617683905 651242403 794065542 986070964 861079843 898407707 313807821 614102557 374470713 647906444 838534649 907702917 10289938 102118445 574210909 596433510 914458230 946119167 683966540 693871537 659714286 948437256 814373716 941317682 584387746 662583500 447211896 578589420 808692659 894328756 839219020 895534175 668676222 682211343 814400445 959427129 431088731 961221066 613671942 767359308 507410790 827502384 325845844 613614199 397150435 482525675 496801300 951969544 566580168 952132239 565724510 623357107 301546234 449643312 846418532 996701194 592638125 823985546 183062094 335139892 35692501 422060490 777019439 811044411 834784975 930470791 126942494 889976684 274185074 772424280 629930447 654097436 900668115 920886668 96387891 519830158 548836645 795094408 541652940 939099539 42004346 715370400 555277300 756841898 818489116 976249048 450312925 708901350 858545117 895442130 305372495 789535477 767864719 928523925 888908498 954330220 261707807 424651537 222438209 223588043 284545275 830639320 933322091 952370081 19271466 122734097 530213834 998262613 696850989 717987092 470195514 902495424 100736447 225629387 649780696 754481067 586717129 868376926 503411753 818890426 475852138 493075287 892273121 962528763 879034764 886935218 306164143 475522042 832651168 978759149 579498829 855365655 858183879 903689950 396845686 487044829 395064675 418633192 367639629 550089309 326036635 601373777 777423992 922582138 373549433 830321864 133799722 526733785 582445306 827620698 986338127 987314014 897511429 934921394 873903212 983970635 568136336 825702991 528233378 745813133 578998232 797190036 592068424 834067167 856926595 987125651 223700216 441662508 3592471 592724491 437100788 671721657 37805552 382422184 622706504 793309764 818765310 961981159 907744013 949892638 217787861 693047926 634120101 796373654 95716861 484992900 319180456 936601837 897667567 960868240 726656415 775863022 353561761 468750301 327291514 726743887 183790454 445378222 873405654 915296671 42060687 955862534 631811627 973987092 437330314 791317946 891195280 991798074 43184774 938834779 242890360 370477289 496522405 995969199 308192775 371158645 576306765 751949602 865977938 928911853 10530192 804122198 699285708 733226098 500187144 858534248 360603596 961321535 577945182 860816735 998934962 999658764 348223234 411833117 922118044 923354892 246892391 293369613 154599678 235125837 942526370 974217721 841481469 842701162 657944182 925578379 109829346 168944753 315608629 931107216 712806375 775769197 119730900 963105158 488558367 518663663 967577833 990713601 94654159 576368567 816478400 957662002 406995228 720011248 354014626 846828786 425034580 969750040 33185642 115058020 149431249 943538167 505761823 693039540 241441135 996594435 49199541 505456923 284717164 930915818 651039950 980218998 232510411 318363125 806215785 860354464 249473807 323679590 648274846 867793912 199373208 358773288 895042460 938909881 697278496 993202725 160618342 809259954 990046760 992257007 376072520 709012506 947946376 964468770 92723551 936511102 981083858 981867004 612205683 973039997 65738357 720502085 271776986 962496579 793607235 832844131 353690427 858326882 557877636 840566817 668361349 777748670 913744530 944403048 85945352 308586155 897893206 950184307 301384075 976863457 579821692 638806238 160194514 449750060 48281541 332090639 412537656 415144164 497079940 993946857 542290071 608041804 271645796 603226757 117704579 310903855 690726495 938402083 475291012 615635764 833097570 875263139 380094444 985690619 570117719 609913289 559660163 714613516 225729592 304417211 476663750 624302711 247189392 627858746 658059850 943447998 781380754 788596710 90245805 721642658 41259619 882072082 476198771 706250251 21711866 953111581 917051451 986998584 543249354 733506848 433196726 623442040 362806359 781806236 287779679 525412495 594384103 689332620 215409855 370034219 753634350 822939928 902668294 920100015 895938005 907535584 366795540 852807837 247531469 496660584 432519239 502249778 225473168 976049424 919467815 925645211 986185187 992531027 416470376 763914208 919510949 981963490 842198117 989506039 143622359 834699868 279794398 839579193 473911921 692302968 656405966 689252374 935145545 947033565 417019746 830581009 906976976 959166054 984021005 985839942 78230078 552868061 449636241 544160796 655180426 729799447 769398974 955615999 79632702 745793594 831700959 880377441 479370316 864187294 273512810 749779831 486712390 725839420 335454644 933318590 593145143 929996613 382926356 690954091 25470397 143738418 330233620 780702046 584093520 810220199 863970721 889347595 555060010 578541381 582032467 725130821 227816446 232416761 661444670 671257613 963768515 965723328 88073670 399227577 474653853 721780710 334388929 462396026 394423629 993972135 135012961 377614113 436666341 483614033 692971845 983847035 991033885 997962766 15191402 141192608 574071981 723898170 207254373 868854963 46524452 703203959 863177731 989973840 4850655 356979357 485254622 956769620 927866982 929830563 581481751 851384905 714490619 730754697 216419441 378271641 342874059 393005086 461150920 697387959 873150099 886474411 534675561 936253568 273578568 985961577 920300493 947539750 177840439 967191080 854519565 960333431 447877019 731358084 533703783 536265986 562158296 855874188 920080262 967789196 22056260 521358376 695228632 797843976 178600798 221467559 982121794 987337017 250387350 338393854 467531565 984557818 263232301 398806358 497389785 733502447 698923235 703872414 669945166 929037740 734807253 920740050 456857945 700080149 724130829 779996471 437251837 727026234 780655333 885707035 398654938 761586940 898348279 929755695 756131726 959305507 148703880 871319624 263292493 973248238 751592958 785500670 695169199 903083347 97060610 288673101 813740526 963482054 675315123 714405269 252919304 962329305 177226575 991976665 319144174 509538824 625769371 678394178 733022114 874521145 357006352 377640594 794418136 909780646 182265082 743756807 52453499 994895639 46355384 593279531 953761419 964981962 11129883 548597801 345126394 513936555 882505060 913092818 607760621 944493309 295541045 434702659 286938467 839327948 783904650 926849313 153608782 410253036 977829054 986669447 689643094 757602450 505964355 572031831 779630157 916025563 948705328 980015102 668628974 898831332 943541657 957438699 718206969 806007675 933427418 948802886 74583372 747752367 670880403 964475085 320950594 511241116 334189110 954605442 509561183 896918173 122476289 522900818 401132688 479859012 846165528 946596078 324180715 471614836 700586960 753016464 279131026 815817496 701497276 967481389 376543505 672065841 863320752 968965865 226745711 697618054 374547807 784032298 493668707 695962544 341764725 712892404 131697746 189210422 261415025 604069359 723524325 804466186 368035089 665809891 969360159 996308042 216571304 787686685 543471040 956417099 381553313 900869703 968830287 997965083 719266896 940224181 442176538 683158241 255181907 547542116 503481182 743165293 433591449 773264367 84817976 641675158 138635175 598940048 566022491 825954425 347652927 478037490 814720493 945005169 557515951 699401696 935989359 998162255 469002486 953389238 409777374 577910514 551728055 700174613 94412631 295395838 661178227 969355772 325998200 771806492 515678807 601253905 170652413 595760617 386719471 431618625 48888555 966595161 924018648 975161915 118634740 481386810 982234724 992340895 754061513 843374886 440357638 884184835 802845662 939947633 652079705 700063547 261472429 448175351 75569850 482234940 62293357 518690692 245544797 423917275 425440004 775429873 352206980 835226481 968039790 983162635 782999922 946940027 55628762 797059949 376334806 747333238 942066067 979973068 233035551 349357967 950943577 951903743 235582828 446946497 385638654 660284118 194373838 287098643 405134980 590596406 529630639 735516587 631596090 901545470 99661127 864714947 312232802 378804512 822246882 898280166 515570089 829570238 900002587 933766160 170870429 422678596 346883949 418404446 148142642 574090965 740039527 807533031 42059376 461188436 189752003 464062812 114632634 134138443 974772941 993214313 606647564 887958412 459928353 465803877 590649871 816922098 137646605 497410424 647168639 689682798 268945406 754053323 779471161 846478689 140617500 158577310 252227965 648977139 556899156 903959183 978974212 992349308 552566142 819355006 820416014 948746652 375844879 430562560 867170460 876013813 182563198 276357039 439833984 593768618 218434344 355651366 832720755 978235818 73084600 273815947 123964681 430262550 824418916 988771907 934690357 989315152 855279078 997229049 756116280 880445584 265909985 521992054 739618353 797818291 770349699 888902092 963961026 985228250 218978935 902097240 858525798 970322830 923157057 997840611 544468236 703867928 655659475 692568245 60953764 858558031 894253846 974363888 575129889 712545449 427406285 544587527 232372051 826940912 386721130 671518042 73979813 374995318 960251145 980652944 741362774 809481034 985788646 989828067 955839301 961920286 863171931 884945890 489243753 866138180 895288165 934253332 777808207 856801110 269543271 678428962 264367484 357789447 416321055 559826006 628151053 792687006 253425471 542507278 616142355 813570957 920599166 951614837 308556289 375186300 509291213 523390237 292009792 791748908 996843979 999002434 677067021 964787055 737471689 904314026 443618788 513346337 293506116 560686070 163923237 462553298 855343120 926493182 126324587 592803513 970607436 985828535 621170159 817774092 360225322 575576916 179504489 659564912 468587876 893405826 495943748 660035371 511285694 531924024 721771929 996127297 28733244 98259033 560843393 974187085 395901854 928084554 538227089 714932082 956514623 980543849 250186957 999245566 40217325 984897736 580097011 791183346 856858392 878591950 426354359 898336444 545340952 727186190 286090468 831302060 170477424 203593482 405930556 979662310 192602914 265195769 585294992 870751889 160354544 572256794 988027210 993411070 787481916 895296969 746558037 914722060 104645516 499390201 993880855 998505699 782423994 932977208 208658786 570734339 975283240 993962074 606813576 685131134 117316634 493822550 853620510 907540490 88668827 241787742 397588774 711177116 394260004 651381840 596919868 768294865 414713291 542531717 80668617 899505416 651221437 971299348 420156497 440328350 307184278 509623876 781081310 810959932 558868719 643529705 505536057 782936185 685052507 777023760 826347787 827088566 533135201 683775698 155123739 340553859 942932688 967124032 721873269 910137185 731747144 837763151 266321606 966032294 892071789 950981750 839148571 901384825 848966524 880233048 625414013 918475226 104543459 561193840 62406549 987013506 528388084 705046972 701561290 723377347 739766876 883611664 40417215 723878990 670654564 933097143 763282234 949214467 901702494 961744580 10984590 698930101 440722135 680935594 796743855 888449247 898384673 930171450 767341773 931668433 833416644 835918955 556608970 852268929 655792323 803938669 655434031 880399841 470780473 780293174 416922302 653001773 663095749 760959682 997345038 997846602 634484337 978248914 824174545 968092565 205784405 692975665 471627810 523848422 309976666 418869159 832093954 951872949 734466259 865016324 720868864 789047524 668398020 703531091 463736767 567315140 507243050 595881734 585257690 825484036 537955861 859279501 184673828 814015794 69282101 858886611 724032694 842998931 821390729 919412514 172994706 326369760 457940943 561501508 435431479 684993933 462547360 872666695 496799171 912930992 875663533 904647234 52478888 553531269 871797454 873023985 179400478 254137714 174058502 641215121 372259073 791978226 33396466 785097530 568027392 738175755 627910325 995654063 54984744 874001845 254498947 257889160 75884818 785351038 561503194 754580505 440021600 451589851 343990211 351860380 100659295 354468490 398185165 948754985 418684663 554002585 632762286 970161964 125928920 720619833 959634066 963676409 110959860 694030140 424501878 816963544 640361471 865266938 762139403 784225123 380101240 531770641 219931557 987083082 599200501 805362043 509236738 936513158 226038805 446061398 326629220 955076641 399496522 530485951 161467328 788388595 62459273 882573115 751797752 849108780 617789828 806165365 975882981 987584252 204561117 264619569 727812750 832087958 897868740 985044454 951816657 970608944 940453363 959331351 514672546 590682549 346284334 989799510 96860954 845521499 321091703 392646911 758746869 923767977 595165543 679052875 699824560 948969350 891109913 930802191 790390415 933750971 186981290 313478277 981892026 987300234 460183446 802911126 368832152 667767520 397762035 526565902 599131925 925258410 590540885 846832596 713235850 783333691 564921191 650003967 500849298 520800040 641001903 757234708 699570162 870801279 385034911 914586473 453897867 741096371 561898061 698518265 912694081 945703587 906868049 996278973 836952846 846642313 410807134 789482609 980944031 986685586 400963763 712914631 715183877 958202001 346298938 680127686 133324082 493461344 262065958 716318292 284565721 772612083 301888842 438873054 685572133 764704457 337371641 783750081 782988025 909163541 984945248 993109575 493570333 789650044 61141423 113358200 889164521 972308348 541539017 834161825 661686547 772484031 988804715 991839997 707278342 757006226 477193098 628889142 52022041 626181254 960727549 968965895 854702147 943273180 674637595 776139356 932087212 945166962 353231636 704999320 72553830 110205528 654185529 775632456 742926570 833265748 528781859 962605206 420907964 671716938 218120895 348888760 171261752 543729083 251292247 687892979 684548836 883800043 289642637 422774362 504679103 721329144 358256730 431926588 804033368 921690279 402543464 605190503 164332862 644660647 808386986 886103963 851634895 944084377 881572787 903565927 406481004 570263826 495033016 607921112 276989354 502429410 584018105 956549361 621179558 847662270 627143143 914412091 372251578 530792943 576228536 913922082 636019677 952591854 950866771 998133394 472704797 779800359 694412614 859718420 945869808 960534491 898617373 899142560 251017633 855939743 548404149 797995488 302249788 999198522 188342491 609269898 521649549 785608648 470990827 878254374 693529902 991952823 407122755 568639619 889374051 918954919 34837599 655354075 632632252 913865235 588639674 662122192 291547117 430515050 239196369 396109691 445595478 862575419 644884262 691055786 668722938 768326524 195592932 430617392 572772794 801142829 503928321 739692113 762197320 836089381 925917110 974516095 537813503 801987014 765464297 811838765 584466767 888215306 147378878 862841318 462968356 616346273 25924894 301839214 334488508 483936077 425927122 710195213 194310337 386187886 404960334 687314611 480359736 767315108 841277502 872711561 795273628 893396426 966928389 997074788 649258659 934482650 630232998 979333143 188112670 209472602 115250223 471075956 382225655 383501042 523756525 592760173 331101391 458139075 850266889 919701695 498560688 582495281 239622901 441895244 992247037 999026748 780168818 986687691 972804541 992252060 381121808 641333348 695852126 843132402 76747968 917193933 519442332 689864689 675013447 899089145 249195409 912112196 899247522 962938998 613858884 744060478 861942881 929845565 484098849 786842825 212028039 955254315 114933334 228489553 102557390 334179214 309228077 731557961 67032960 110896794 548031944 626907803 800122449 865384468 450443870 977837846 259480708 995404796 700066886 795003778 381029493 665317789 357374855 670586505 977902027 989887043 539387903 635407756 895436151 906904163 59493883 540393727 445259687 524081498 896271843 925885034 6633233 431456647 414609779 618517015 805383261 960210792 624936811 826854915 983726329 985402167 383268350 637224277 548042896 957204810 249019788 429073398 513023271 917672467 442364781 629278393 689902498 832841506 545478310 643030407 792547924 839545439 154807037 313568078 988931208 993961985 626326424 895530975 851808920 949320102 34379082 392587100 526000474 629311374 931193009 968176151 860874612 988181519 66950442 854372041 866647303 972149633 473739498 659246802 441854119 542410834 956759419 972311549 49341886 547759927 956747875 990192149 987316616 996896872 242429708 772819316 624700626 849892562 923605569 972139354 207660095 623844625 478643784 637515189 529372094 972162915 46112812 450095555 497493832 899025486 686247464 983375368 608086481 705216450 861200474 878053676 452786181 860058377 583209608 753160378 119723205 887807870 260790513 271022457 20175702 218778443 592937259 786633491 902553175 911218062 413554441 642035634 25909092 325391906 122350358 655359335 991970501 992819955 346306885 709489154 839384233 962655023 297576870 477831242 929681064 989531667 209461234 747785417 582689214 855152778 579052342 831685027 616136338 934893080 678352121 693471551 482032898 495252478 804834687 950912176 659714678 806068435 491534230 814422042 684494440 776419775 279518618 400178877 360003979 388203060 584761609 715465243 772731068 910321011 954296565 992757601 91525858 917638008 107057746 967378103 980011254 993397972 703871494 717902918 348693663 515107477 309074308 396576968 444444512 777097258 479013038 561799780 598551531 967293648 494796385 931443273 689023733 826806459 313689689 373829317 268188889 509413247 973781919 976072128 854148552 994896278 504622073 631180356 121264696 539613923 134889512 279470059 951926431 970052947 261937505 455435942 246113701 533685918 104617657 921015028 318182438 554708482 27168679 892249986 128827729 625108139 821367883 842211804 42422014 132080697 859550068 958538897 735703828 784720733 424253437 861325434 764367188 938817008 829558419 903809267 811606138 953536401 900157474 998237438 796152289 876329022 177550797 413539153 538948169 683503181 933546118 984238482 268112234 689047602 247880576 818364327 424340475 744696153 645728310 798783674 615065686 672641652 386291455 489894704 137856267 785113909 106994593 443369751 568119677 691993968 189965978 913200468 827290886 915929357 252113909 558552596 437359583 881352016 782707808 911508268 476900339 538562772 66287409 420633348 257286586 597154624 422495066 505621679 514849962 727413241 602989191 948898990 120160960 155989907 152377280 740429160 602260779 625491176 897081808 978279478 422493042 607743971 20648111 417010603 577186260 685187565 313333277 367946651 868230409 895901874 648092199 954208849 564698246 987958262 786523314 882908447 829849445 954586998 175048270 313420623 482043183 791014586 39824858 512039160 697967843 779493614 39328153 841024638 701608328 900628029 129566442 386272937 682915607 990007882 148251511 585152077 838741739 912463481 577279210 801339469 498224235 893274110 357464700 860942915 463240524 776089481 313445387 951382867 143398643 350427159 454875407 648188941 281428013 916233281 519515984 962382469 11386495 238683168 668140005 991069501 58312370 471764131 769250770 980716694 236475726 561315395 422834257 589144318 589033832 669865995 9155268 292987724 56283105 225034811 687470996 964162919 458622263 666191103 556951102 754114410 338849951 555402756 987651225 999861264 361980645 801058770 913539323 994582024 88413736 422130118 688907791 828580890 496914168 765764867 733393827 773597217 148889779 986329785 830864959 901399130 109995494 489827074 899316461 919676171 988957425 994337747 395016621 433871558 216057047 332523152 3584267 226742467 49260299 543723798 138584722 936406846 400136717 866235522 502686491 601456289 237872714 712829221 706829705 747330094 59152460 813116573 238221345 858310338 685273651 899847651 502446845 830161445 263378349 469248368 536023312 541642185 305157924 668243807 398606023 537786187 511935396 596728163 205951247 285560552 377309747 726661661 758830229 832713724 11773475 267434166 222168802 737435225 538401779 905087458 381546241 899444856 431627388 571591740 884559611 887580940 684347749 713442864 390732919 941450967 168786622 589680927 762740749 880357792 318339573 958362900 384502872 674766891 447399275 450626399 585375367 891904266 439672729 614757521 599229907 964611737 964937696 983441591 769511025 995592761 275159329 859318318 509427780 667584595 463108060 473727383 315028659 827731049 652866267 790803067 575423054 979347677 273312824 571360757 294186165 603470540 695566746 876242237 568573979 887312601 408062099 685834882 296963426 497253405 244868037 564639364 904242699 944185256 218369392 406589102 79640316 611752996 780930354 991643224 444895882 660553729 116474907 423215476 31661997 902548170 6486923 637857059 280274348 950636792 292810309 523049572 272382686 966741426 887681692 998708903 14339132 567349262 732310518 946852320 297326599 674728611 880456228 988084556 180818384 409064074 282275772 538551177 513148891 561093356 999665249 999688354 155430768 732025130 962037208 974443692 872392476 965722757 259386900 405390626 331744776 569639249 677698228 875269932 402106437 509586515 257813858 512416027 792228745 820571543 280486559 988878991 176040469 988407812 68559757 899209159 330604974 392391357 688658628 946569169 452164498 704465601 232254956 541594844 680739152 964427040 652967414 709250289 892898380 910042549 762090112 805057929 798164706 946251972 724999864 814801760 770544128 804144287 187318218 438975472 698753789 988011904 473607651 487842903 992469691 992470890 922360742 950321042 379210215 549223036 534633949 672023228 983091239 997761510 546376780 908297740 994536727 995916164 349125057 647202112 873655489 988541872 800117951 982175919 270154664 624614718 301599562 980724026 400643961 423943988 913884635 934496883 378933782 555698880 723884064 786469028 475391420 498235886 630706276 697698944 746243586 913486200 711312899 881528489 731207532 947162067 795653059 846682865 33119876 118768888 564638430 962751167 728148317 790683430 820665533 909656073 921574957 936955109 331029599 443987416 912897280 993312314 828804783 954558717 513388266 568355388 455914805 593464959 530612598 722119132 749340365 772301745 948736764 956557721 840415069 903105206 481748267 717728222 112307386 844513442 479451598 681063174 874838046 967642538 823925445 944282419 789359082 822825119 512209188 808819803 5656376 598963830 648982844 886981789 321686150 431241346 298473888 473270231 824974802 997361545 768863341 972867271 421288406 678940096 46187602 534358227 858034163 975956897 348168646 923744838 895922302 900318555 725242301 828391118 586885442 676184586 171552395 946734508 171750682 907450398 528268719 974761125 696046516 965819037 617962819 988312142 159141281 462899155 860873370 875761261 711248795 792801757 822766529 953752953 896643684 984352134 915880277 972077581 241450143 779980225 68876117 385075825 828193303 861606269 351842740 857895068 386062937 594111004 942753848 945462366 343619158 746800113 364217356 757232183 865132038 881970291 355034601 527070161 631016165 960388751 894163132 949049484 185352607 247370172 182662614 921032914 383425802 592200453 723057167 996730578 956961176 957643427 617029643 763158490 604884427 734297124 316880709 935483994 363927 258422334 417806050 637954498 99858519 110634101 770139043 931432657 33100896 993798352 305507328 442455833 779264754 815596655 165863929 290530144 393862294 898356960 521284536 982312294 10785517 172545494 263604164 541779273 682987552 766282859 183166204 664033654 853915679 928204992 770009066 912888152 7829303 717233318 319951453 866915780 936703714 983454235 766518238 979151925 931267693 957573718 18173836 282502557 513076487 852710849 240333821 380879442 448305960 847758412 729787924 958131884 503334891 634466669 921636779 970453038 782747698 986665882 415450833 869817233 903360779 970713908 218631687 873307835 232610557 735414333 118212963 430963616 562001038 959387343 122612063 584593156 535062860 600095414 935211069 951528365 413710884 860677192 697287050 913022624 84782666 799448955 515333758 881190050 283442957 401092240 36355072 919125329 553739303 921885876 897939284 965123930 398980703 491436493 232088711 320931595 962483595 992865517 207854584 863841429 977724929 996846262 329171751 703329305 788724174 951337594 40162854 397202094 474927804 511162702 491466960 790341866 557246325 917671789 418373937 504215977 833735668 900508670 427593133 533383604 6768536 924614048 564549214 963954947 754568637 801881766 731274372 964837479 831693818 958487912 734958090 858108698 948177620 964569449 728735326 842314549 532186112 931488399 600464621 848987650 385727840 596454547 56380494 863773652 668268226 812152063 633887601 773538892 58309484 819500398 213020662 258804851 75050405 239657889 583300487 945055969 950481186 974270897 802312438 806679815 106761511 555076983 107445092 425414559 508327566 958294593 569064544 731940967 652180927 853392115 90219571 277034754 983501853 998015579 991568676 991573349 108673066 781000604 58550364 892107939 809408203 976681895 478810199 620646298 804805387 846507048 714669299 906018173 219317219 559174321 924300620 933876410 588158886 982393975 13921565 837596200 829154160 892462709 528318068 534139102 406201202 801409686 529142727 852411330 656638392 906951704 230201852 958311857 781370281 807917358 491357511 598509374 507649855 714587890 37449910 284213898 730874005 866001233 858436909 923397799 605408428 749394840 934815365 991325135 814519199 889787868 697211794 894536802 7702688 249815852 871601406 902152332 569436088 940675311 790273376 923299145 982474370 997242575 400786122 784273449 701713064 717625850 86930879 418360003 187740466 977857321 325329910 568922022 726454230 830278769 663344213 824295898 219808796 776562162 134858477 511197316 764815931 815364336 494201372 736648848 94538990 391536986 278402206 934162432 27078705 917115045 784346262 890917437 581039848 687501856 984078373 993123982 837351253 995391733 564337884 811081066 37528594 523239044 647729066 984130761 589595039 957335192 183624926 966188506 175097894 384722594 117571483 979997135 97292454 968914094 374717027 570135830 855534211 884196196 624585494 665020459 761428723 858895460 985930175 986444851 522340560 856462533 414380428 449294956 346673259 476129581 173778925 799612168 668914385 728422798 919737175 950447100 147649400 242747174 143702967 335188429 24938491 175490860 162816902 630806240 917880254 975377692 399458572 758295750 514010791 973750196 981044123 985590518 458425673 948096928 247726751 968836920 834919088 908100124 166437379 948863572 352824368 633083590 53589333 95252994 281959607 962378486 103490351 962122116 447290247 528260146 617733734 710955797 184602816 788107057 111924929 572730122 307904702 679109131 203081261 215321468 716318167 737070448 57194006 141183253 185028745 481721154 809703070 997986589 398754852 769518959 749283537 776115975 700634987 795074443 108036877 766217640 484756592 816586025 355162023 678995059 978555430 986900928 619346791 716190394 457386569 524102715 966997342 994323210 870111964 877890909 882866986 958305466 57688316 209737891 310677239 579643294 647783722 972513218 14544005 753201045 994288046 995387393 751224539 909070155 322990416 399963545 282314156 774151493 993557001 997435591 130817388 466892622 277081928 667504757 195236052 770101435 708494432 724292817 691057700 708195475 792015739 966086108 665900462 921494409 783509309 819193058 366205543 440573596 875060912 975513503 89051704 359656828 931770009 960116556 993507311 996806797 510906774 550170275 419857890 684034611 996838603 997901249 475960733 841654047 305936078 341939983 743654136 947128113 146767131 815766906 992788781 993549967 181670575 843827500 86278349 220712817 579661575 778320855 878276813 949789057 347553608 574224097 844943857 867686443 178817986 350751257 9525997 233195234 37524746 769045791 72052935 510051098 678794917 762767785 387258104 608271957 273765843 511189321 180490139 304201173 995689664 999575563 840045653 941827549 641039736 666306598 684389269 878552009 520687029 664790069 627497276 950719061 849155477 977563037 822413020 836024466 149331265 661035092 102996483 807742688 94013805 830432556 339540384 730365705 985466716 994378142 6104624 16154828 583312034 832536909 677892374 867332075 807716208 924597759 820156818 852372411 579776433 820362431 687838784 895835512 268664716 752117247 333443123 617789291 994923880 997426506 271503943 541289761 299586692 301358401 366351375 709515497 234527908 289652781 445302715 835528578 555848906 764371812 741153994 920620544 853568518 961072136 936066293 997543718 416630201 670809036 312946005 957846882 274955026 793239249 973986919 977708062 129845922 959789594 916320184 980270306 669699962 912013134 374438357 745333607 569604783 626495930 617264870 702786713 543455314 886337962 756227021 762560923 731575705 744157085 355584133 807241198 117810644 217369912 424390350 904208826 145505586 302662899 20331969 927514330 676514217 864704145 706017601 792334831 748730816 750098211 153811933 857240245 23293125 36505140 200905473 819421923 901690322 982044562 273605501 716421491 750595553 944841189 287629664 963136164 60742076 314584426 352716851 397584075 681684377 814026213 141450975 549888966 564046278 937716512 920886382 989583090 767468277 840839283 304229744 760559668 113391773 898400358 316184828 533815250 790808093 815550717 311513697 777707358 229263950 717066532 891488501 957739736 768797967 906765510 259519144 645850141 25457009 246775065 807191845 914216512 580913874 743768412 112464889 917606988 612647765 846998503 721215181 725232814 282349090 474596016 299504852 662444050 288581642 901176517 539662032 851728131 281475064 833798465 410826458 965094945 222986296 863188021 174340570 600698066 852288031 971493127 309771694 629524486 698913269 869533763 839633419 998543955 994555494 994735932 617141958 657389456 689946262 710696596 74305208 230208277 751981609 797688213 90382311 974225150 593391892 875473800 568532967 860815228 85074352 251591203 358675420 979940282 443650813 510488468 781784140 848282380 792490245 851103252 292593078 911859127 228561801 701903011 755255204 824575220 271068439 906463309 518304459 567536293 421637007 991722798 435589556 495735745 813854817 887258701 970780594 983451748 446904065 569630256 905886849 959653012 44253377 507819652 186337119 949977174 337762188 585269274 677107057 934717098 620376481 842737315 491267096 593216849 917939162 997926969 628593776 764756564 61981358 587634265 796231960 817682052 803588155 859303852 389474541 659104282 513044268 780803547 826281712 868088781 79942514 202394566 548970225 935591799 578873988 756769076 587510550 627112482 962886427 993423541 751228334 755981513 53231779 532431907 943355527 998742191 849182930 923159028 496548785 763578308 786463884 991263081 585061863 599478266 438839616 604279894 519223210 638952015 499266746 704790068 668644935 731811163 583481642 644026164 107342735 303153749 263898111 803748221 793562352 797352603 407518364 514089451 65821774 291414159 843178283 959349750 162684372 914585732 868284234 962864248 278802769 521787938 359838306 378411630 780314321 916141920 430612035 933041957 121273543 500745065 506005006 894115103 27492586 78802305 556080186 917744617 700363775 971036679 371155380 765456626 364337139 929162789 750287178 851611990 982108929 993491855 132808736 677878356 921791361 986972309 904588730 986633464 699704748 733763229 837388423 972383834 335182604 991519348 521152070 536682728 32397143 362475855 516087976 698447347 112749490 653178074 302313151 348883977 363169945 517100190 499843681 786138156 743165966 787497993 883519217 942820211 330646317 628088910 755710189 869886787 729048993 783184023 505899038 831141921 79123999 306419353 410040685 422399518 68526646 160456859 744897487 781191387 69807487 308548459 693419787 717375248 372388618 521328272 158957893 180681788 716298313 993943626 822671743 957165392 833767579 969870274 542509101 710536246 958360638 975091161 997546069 999822458 660277746 736564732 935638481 968833616 535167296 713893453 429532086 467739532 390514348 461743497 907841126 964771889 37379587 720205871 812501017 864253855 801522633 832560682 737886986 864571169 828427663 949946058 207446417 365120625 536121954 912458206 35937344 617381553 795698762 982382739 660618099 748655509 148629566 676608455 805201944 819912866 440162273 650352304 772165922 967655081 948045374 982289423 149691303 973678358 573915937 751533556 228629798 501208675 110606510 229889381 476279095 932326803 387719867 467598604 983178822 996054862 716841341 756635694 122236190 567583288 377117302 822271049 497314125 693498130 582140472 876798021 134302287 274193777 139439479 218732474 939645931 990098943 634061125 723165142 107508541 886354667 547262114 682326180 354047783 725910831 357816844 637953454 905263773 979879475 184361845 492345898 532377908 702980857 74963632 348181522 93137575 639572525 222804122 449745962 362223214 432316674 146354765 778696723 250175634 989265798 969568874 998612612 927280670 956747831 975728167 995801624 367893629 600565824 5725305 312018158 14104835 986534959 800490169 800887244 983515568 992313491 735838991 736593271 858655938 948337512 582609190 919168989 335030221 450929820 984545098 984851994 333076982 847612200 860211282 970225336 857345808 939136720 389297603 771373456 843917800 946488439 744521944 833278958 31700167 163090130 541501502 728710614 259158509 904305966 990456666 998921706 3233492 606383894 407825352 442109826 668266997 889804167 630857285 713922549 619879293 890461489 963702161 979525787 457904973 803304321 741430334 842065522 788078819 855189794 131225618 655865131 154515266 544575497 631979574 681527238 183564150 296416812 497042556 498287011 474569407 776073383 847585922 914575937 716546386 828517227 855733982 899463876 759131379 910935187 422263653 519791873 221667407 713240592 746129968 779919396 926313243 927617392 638965377 639855230 399038132 859619957 847073232 862268223 794062863 823424557 153827506 647490373 513861244 517922521 780604977 963078181 475810286 738416434 508979160 687328457 216130424 877145315 818356457 958495599 36944227 47332452 1623027 354208575 557582162 901391126 930168226 998856209 584563679 701626152 292097336 581866029 336507536 928805574 799788142 881957076 694537719 984590819 583201649 780786860 925317196 947579245 750556300 872127149 802321163 973515574 940039741 974200920 36327033 340615639 12895503 476057270 947051776 964697965 239643158 472727389 395725006 526630136 134236512 964527255 884384562 926100718 359794936 892625818 59907932 181294643 233588640 789150703 768572370 769819336 249543271 410920114 776605436 900471590 521574875 841103459 311980757 717870965 158606971 962516098 104531219 537480129 304730202 772902145 716385652 836668186 234840317 710000500 975061704 991056755 765157156 794913578 611300640 711289231 55991511 911878853 552628584 745064144 936016652 944284637 669175399 864952127 391965016 682964848 183309062 982207791 616178293 989129333 161365217 282079218 191285072 296703865 31860369 170165274 390369373 584528473 180023135 321836249 503070198 645524444 150748444 919211332 744090126 767523127 352518024 887112876 203828247 724414924 635322051 708083849 9955369 483036150 139480898 275144045 972216217 986291683 27027241 907878440 488368235 868237388 649812964 957856178 906846120 922169425 396045077 836750212 152167514 448573621 416604294 558120663 673595319 680619360 657379888 829649001 647725739 898899814 908192112 966928767 58595693 833838338 522465288 655273309 766280511 773601157 871611479 924542683 861401281 891304977 468640866 670702901 574224079 876802065 433328017 741282885 11936852 378532682 249568011 407219992 704242472 995621143 999267034 999949883 618127875 819966006 106996633 831005575 429649649 884682162 982049231 982516346 440194597 826942169 556752887 659190685 336468605 433822149 293499569 980116141 714213199 738209880 614405237 621329339 742333638 780569418 816996568 963687243 217667977 466063916 767962185 783395730 696468139 777569030 58497870 801026218 148822280 763367540 61058829 721809625 49512000 479994093 196369317 389389877 830277099 936142899 849668578 876676201 861953678 964702867 615081109 708593368 855612861 924421703 83972806 342503470 149203905 959352737 819846524 848298849 789339865 823908333 487941661 933500814 91526696 187850071 766895029 966809743 571055140 914616938 14833187 649436366 366238830 492818439 129693052 431047060 290042407 431220306 589134990 976748293 16778341 983484112 762444128 767863885 34946946 582464984 333181571 714574122 918997310 981337740 27381251 850471083 408049946 455074881 302063050 920839262 562534691 829960199 179589505 970327400 329680218 876980425 581692772 827124010 308158547 476929206 458301881 755359483 866471488 923374090 483560123 795479858 372437176 709815234 244580682 922692426 303716556 940714423 988909869 991444067 925265451 975893801 661997976 780061840 421871212 908259989 204468820 743666539 565254096 955074570 443877366 986989199 230830703 857169006 715357736 891276483 475741456 535116554 152269422 757975691 144391913 503090691 175494505 738049810 144595321 733889818 252671203 650396478 63271262 879907882 793492907 972608019 963619489 977077598 331901051 355333200 667040811 980065471 74279708 640406744 941536698 976042450 614561036 963113611 213400859 971715296 687835216 911782134 354145481 816101722 24350895 874286169 564387440 592517347 698467083 993990010 542863704 924415459 624489908 751777785 941880808 965081675 230469700 432355416 295616797 625623351 538168932 857668254 648300587 915345312 942739702 989888388 502951230 716727236 823684513 928341615 903831661 913596830 951462020 999358496 97994272 978255037 924007286 980136294 634886964 913700283 833899374 909384831 591733174 971044373 3449792 220804527 751705195 822362106 110481397 239490790 120231489 832524710 236424740 560977766 506976959 630504631 331768487 400552623 96791085 471359705 658434564 862663319 382530799 890188225 846527883 921200419 600652682 619354171 156819506 929546792 129817734 305039932 93186315 731006427 273933038 751744263 88451238 414723907 32298266 354627292 292298157 532699083 737276488 834853239 288220935 996475298 157034932 313702606 317881121 468465749 810026750 865817513 338388224 649229211 913510428 944548353 774669178 858679900 420457611 644405569 406647866 916181055 199361837 398656979 782051971 819700374 405711481 845157385 295778659 863240586 777325417 785075751 521035458 724003491 85815295 819021327 506921761 703753723 780943261 801515419 477115244 597853937 906178001 912733292 676835031 931771043 558607398 887085927 714480182 979907747 435887566 765458968 491338840 500975905 906458368 987150207 489979377 820947697 635090411 908320437 730421898 833118502 453149878 917256088 863889753 864434821 219371184 572062327 929283561 934121011 670633689 912307115 340592706 549032000 732844101 813910959 837806783 944877139 585216966 714416843 682801250 835587935 490250269 936814994 669252870 673336047 95000113 527472288 479660296 553529907 903256542 937177709 453832918 546326981 888066218 907761569 583297829 711432821 438215384 727089759 885465025 916137932 590724657 632410172 250614647 915230936 732962825 879250960 104271398 616986626 182458791 954481107 244476138 971514530 331342122 528067590 639749461 972258890 876711151 972682197 725520528 877769841 927394911 973488840 419689715 874067270 502693075 740865318 59610474 259719904 471739844 897907207 3158528 167051421 113371026 379450887 520553896 818247086 770225392 807889837 789233277 845976227 326265856 990761819 988192232 988472349 921779892 943118484 974945623 982035763 822988233 924908445 512980199 835415046 571855377 807733729 281879799 456633543 67275936 324027847 777218483 833071984 451929900 522640853 750588528 982351407 592371255 777458175 652643170 789749514 117486102 417713770 241238352 550546840 882260679 884063714 704752111 890336994 99631009 728009735 105126833 146417825 75226951 779012027 349379697 967863839 922636043 962113137 718386882 940877560 446274698 549323682 111891800 447821719 816935720 859503896 974746222 998571880 895292086 914200194 248685586 952522678 859449117 932020561 699293557 936015797 908657621 973277807 562581297 595037779 877586711 887650096 181500246 915254658 680078408 782065528 346279077 858178841 649688149 658605452 870552976 935870040 686378379 753164938 298722564 972806655 713492137 819686245 571855491 915840972 415572589 874524586 631889957 854420828 970002260 986855795 543614186 704494718 996372104 999536509 846001698 866390530 427237847 726141816 353670388 365751259 149131196 461067025 74543992 639032860 317053492 482685921 433263667 984875955 766498925 812574715 462680707 511266353 566428571 720519253 23578352 612035667 632689868 923340872 339134337 751280083 940266168 943524930 689671874 747561765 976082011 996590605 232318805 470435337 737647262 827395453 692519079 866385287 744538497 762356131 813478034 920668514 666131143 752113254 254912061 988858626 530857568 843591733 482806990 907812966 208221129 895870923 806650389 966234049 961748832 988958037 348423550 412355759 938325571 945338925 405837092 519224925 177992698 445007269 244044411 876185201 396166752 434463005 37452179 396012084 117363997 588618209 368265720 766727725 963665445 975338134 288202855 368006806 856359246 862984173 843283334 852662653 242345058 486893869 18177557 748707599 311490284 854565046 780597411 800276736 961616067 980154273 575176963 903002103 185032323 273008356 494681292 736168910 508044725 644614960 222594733 309385938 789058933 845843788 63339332 803226747 888330827 928684941 368956042 700171152 532275653 909383159 199075537 941037279 813984800 866661240 825165815 828943647 137962949 970686804 888901728 992181164 787121018 833958642 534808503 758388307 717687377 842079570 451972686 493106943 288523303 421138045 944069865 960641145 529099062 573950623 701070279 842420736 815392029 896742642 913273216 967098790 870389152 972795773 229700470 417342199 840369521 960122969 321060829 870485991 883152035 982176860 120327806 385046634 995238735 999613472 323956570 614131377 154399641 734803024 678424648 846924938 724652859 942777028 255949423 684904029 702369792 978608711 638855749 899395803 579258546 740961397 999321915 999958762 538961664 880491226 297920707 969349367 38347398 697524760 924175514 971587569 19865902 331772224 720928446 925571567 206376677 623431102 991073369 999350422 94457372 412696909 533845810 699582126 782913969 949550121 441964475 685256452 225218690 432061802 624705227 897346584 599339111 873584146 606141780 813489572 175053269 235349687 375470606 659070750 213546632 453792391 125075376 820302370 532434159 549227870 20013576 119472653 721200951 812914446 381741109 925648159 337154817 885051453 678824986 680786942 664486028 930227671 854195464 981148812 600987284 637404086 370000145 982016903 417778284 457707935 223919001 501140414 67458945 268352977 912900484 976212281 985208736 994589720 419515991 516957402 246435705 850680541 172391927 494108617 357185232 858155619 338058655 970825914 289411501 893722163 568826649 909658450 642942510 862884303 247412752 351529378 725961987 941826487 308802801 714788023 771344341 787442554 333434015 680861580 834201343 844054097 95383240 470681176 19320396 246815654 755726433 958067840 11639181 666739060 570611976 916205534 530744309 751951866 140597066 662442327 538503994 836319053 6496075 264748990 547994829 784509237 760870252 925966931 27791193 876475226 253808993 547928667 427609407 958007321 847021973 992249003 498987948 898618761 480043037 715412998 259351058 521409757 196769715 667649176 634670508 908712175 551768712 776506026 896132407 910770014 367762296 913267408 856773598 951899692 300121590 731528948 422925944 577489179 414738859 864199112 638948786 967220535 69579163 167687120 488631838 880032213 524846290 852387542 52107917 669704154 279558903 894316370 908074332 917020396 249586664 759632329 31477218 775232513 897310593 933910565 855577557 923014013 131517519 935610449 853188059 959257206 116149130 544465431 499167950 892248973 862799996 917032868 307475542 450310962 957176736 962558528 579509179 794120491 560397614 957078257 666766658 977456011 834625747 873089976 562712415 982034401 205393428 537375069 862205448 951557625 515731391 783513436 673262309 769687151 533970446 690036945 227781610 509386001 203037920 569271180 306083759 661789476 507872472 861038888 639078938 722720689 380199379 962162199 589053963 959767972 624252410 823789461 355546731 897310696 922255784 927342128 883506887 960832317 950545887 955615769 64458877 238884434 215881928 432680023 335978599 527378670 110390814 807568718 437910655 840015281 532757041 816395533 802975740 948766978 11014202 818813182 804033893 856136558 867345944 953790283 736622498 740337983 562101759 629078578 404369051 808111411 964126127 975268195 44086035 150001817 674780320 894726183 58175096 692058471 829417445 909218489 606941858 944235058 917867809 984891925 963053320 975207953 915229260 916419435 876595375 929748534 852893212 954142177 91075290 749388132 53840460 946678818 511831048 742496154 906042349 971350508 361010542 634662966 592414489 916341090 886964718 915989445 801900610 919836104 660432425 744974601 281145634 997682645 36496105 748304196 256160651 709414325 837272747 895869491 122483463 438690721 157076295 716141238 875508574 881038965 165519131 272013130 58788458 457151503 347732925 741832034 634623646 847434438 724572793 871476761 554364073 802371333 726951954 842104377 725355757 943335880 542233146 564198446 646780520 882811563 627403786 960501875 884754206 911558643 29422236 850748173 641787267 990328003 178044725 699764191 863195860 962967177 586495003 655588579 919495393 999840698 961611946 982477341 566096061 907093988 602776910 823608456 475655834 505594308 456441728 907409664 787651302 946670271 532009326 953614632 671712838 978002589 944098517 955393439 584720381 635734727 562046728 846725126 685207947 699613493 534169411 722638421 352555110 964039867 23326849 955360029 293520075 393426629 190413022 259476411 353522327 388886133 66529919 539077817 132255627 530357742 208814776 591413690 405127834 897468746 447811596 558725780 934547622 958511416 418022195 897120294 997536464 998429963 623678003 639733225 806435251 876411226 855311745 876128229 471141436 540658386 342431089 896540475 166287870 351511314 999919201 999946614 978820193 999785654 149747106 210204138 357914708 945724630 700391958 711532764 163910103 508129875 536911402 702322677 849901973 911162683 27734105 671039131 947697273 978501786 792702677 956780068 685369598 886980614 806097718 864829697 413864309 994408420 400274491 689704449 951015475 993059034 193712849 230154912 702215596 850406891 723237422 975432570 381450635 528902650 590240 733301884 521969875 992603910 530174755 783692784 481894313 627893408 564865121 992876368 252459008 854114038 536586791 754087778 332688754 754625833 958823553 960022526 661679002 736606376 799543627 898565161 648456182 935588938 230403773 583362284 940658685 952001221 488874993 653879440 951025368 968206319 106077509 548233635 580545143 778158341 687945760 898720939 304610376 862561830 600826638 756830389 187517671 947946557 566077676 731534028 451988001 530423238 403229832 920552948 808889885 877004652 2851683 898359509 525327366 681631753 96117791 727199871 351726175 813594643 768342753 794177748 485185962 719953458 143039625 374333794 543075338 860088906 234833635 829575092 850190832 944032610 730816706 749062094 682373527 893017136 310998859 581777808 499261968 585565325 864238810 902693785 465327222 551521228 233764340 390517264 644502790 859129817 180292237 280901217 39291682 391767431 819663202 871311402 125597173 553052502 315103644 763781814 689709348 844458979 211148867 352970793 671803438 965530167 296299407 964831628 915522998 917910812 720629197 977828206 575849161 630991563 413938682 931291497 829703231 945642351 629394669 654186535 79097976 658966013 139170731 825877078 420633103 954774763 700200678 789508181 896210889 901689644 459353426 605728575 360648323 703688659 812670614 924103205 737840882 864569867 876539084 939301946 435596445 890787911 299830553 415785412 175299500 595946652 930616589 979320248 115849975 487061283 872370663 884999881 735924893 770485329 294112088 899636079 111667188 732771927 71873420 605839556 154699881 543513299 967272229 975834396 469751248 744490087 716297794 874714077 127707059 655941243 113523252 975976281 871035926 986360172 499727263 573925819 923377991 934784996 283759176 590370714 656781059 931260358 368938924 717409761 904286775 950346237 226690214 617224507 512758426 785244193 748356734 763907617 707603695 868269308 382905003 784836249 179033584 684368333 80833698 583659564 463070493 926960334 735938622 891709766 278462503 485232571 450697825 666718088 189948144 495793251 868226134 934472086 741436645 933249128 364783591 393965058 234709015 975052505 72847507 639854440 664656104 753909440 598746408 672500607 760703260 790941536 330191 99130066 98518623 664561852 907084651 937620478 652951241 657795009 342887880 587131564 786569633 829846719 204131779 513163912 915430174 972408600 143674274 174451962 778629245 937855867 790773683 794626426 957811491 962680876 900925405 917367295 55149799 78242583 134336093 611873412 905055296 909163704 203188543 900534902 507690099 904847707 915976801 970228216 351734322 745877523 473832895 569121709 800727062 939860976 863100931 905380977 603989110 783775248 469403682 793006672 934623377 990183053 662011118 895880554 743236260 934050914 626972431 935312729 534830015 619840223 520473326 939919565 528602298 714858281 358098095 615998950 529960515 596819076 643197202 941497321 584984101 769143601 92280777 745063897 288296871 970653434 516304853 979265931 753056926 766413041 722220989 740969077 967191692 989379344 426347601 535236869 855255703 914438170 718380274 793337256 730152528 924088653 715497656 921775477 344817454 477599523 486533863 719231669 410694798 743312411 817897381 908393926 204310196 803310161 107784745 985777574 835107202 869235644 452377970 911745556 86374617 222550918 121904199 535505104 948065447 967526550 625730534 718805721 164426929 391386775 280465491 602975201 752988660 881392734 229577529 265698628 570976907 720990704 294491314 439924036 159797588 982351543 949607234 958480593 905147086 938405596 274634368 313432014 331887418 614351793 365185349 772953123 15578516 103049953 259860650 748275740 137292703 517646678 755279394 778955593 286047571 752205600 967582951 998655084 613476973 717742658 95344279 976600995 312677988 978180337 125772083 201525351 375965060 604712610 72665594 758473753 200984879 247827331 903261342 934038064 559775897 675015270 653067215 895054950 933416363 942622239 791061557 846521299 269531958 767628750 145662037 725742896 986905341 997509564 33165523 476109890 238707100 712385445 859733013 970090361 683542954 896060273 617044374 670358708 264525977 703095453 963495635 997457009 977159337 999745650 853719652 975401452 946404703 981981154 201607338 666644750 330669347 690847238 657222641 865932630 801576027 874768708 498681370 801735849 436160723 755870951 789280531 877733885 152569978 393968442 212232154 667323939 327388487 701841751 165685972 898774519 283545168 746098984 702192656 925305590 208370280 950169034 242305806 589480312 346763332 457778237 989977891 998400583 552577504 563742215 35245986 796639082 102817583 586256346 40200034 708621462 45696980 566756827 443498546 925625330 134999216 362452455 152036591 286718877 592228186 998570012 519015270 679769417 77923869 839812658 545118113 575368621 288055210 888161724 876326612 901337003 635825115 743881934 562926828 858203504 145833528 958846500 293111181 768105430 434766751 596282365 504452619 851996143 926173349 964688620 78416991 720661286 20406505 177361580 195624512 595460810 921079171 973385308 775845235 854776923 138643745 210112020 712470323 724828737 830035774 857988727 911160219 975196762 526868634 799522136 393218874 708745189 214349045 284766099 172987854 346042349 690655660 692568299 844778824 882934875 629978801 696899659 110845475 997806376 844067357 961085438 435187755 526836867 18780090 261164954 303869942 857154775 722712394 814905302 772729533 940130332 520727991 599152239 97908289 357597079 625278504 951745253 978246444 979638154 815171956 956155562 335551974 562280855 780320339 801884530 558018769 621638395 858923672 893456211 196255569 745387186 655185850 701624981 331939294 731110398 634031736 643106073 225496325 586417095 528721312 899808340 426462848 531457651 532335002 938916766 551423486 900342207 838157778 906115334 488324358 652461227 385172080 630839623 11736951 72626919 104798503 304181590 570096624 921609891 293029586 620160952 73690731 848099496 872119771 908302244 884675185 915000702 27380912 490833676 101908347 920218190 934128450 997590948 226402612 799739826 577315558 667616500 994864542 997467018 32640463 550701665 9522614 235346651 22083414 523052951 493986837 618216001 892581367 946546618 113833678 404524519 544956560 870216754 73813009 921770384 845590854 883098583 108367873 274946260 15579598 391021805 113217312 361247468 285349745 759860367 574762021 611055224 843633521 879700471 9227666 540594533 457636896 534864287 334804602 398923286 366012999 792213513 654605364 914362601 872570798 999985117 418333650 872258775 509903289 934273603 496709008 511558164 605031035 658875483 987957338 991892892 744379146 849859746 714180854 731178807 763230996 853914358 66168617 357534908 879520427 928202774 585292560 778302198 769300368 899429040 205875341 718301789 767510868 955618555 233280059 933614351 569993734 857208819 530979787 835497807 89247978 744094913 195186823 964502687 560499489 766834805 478141767 674756735 408251528 926168543 378975482 913684379 284480480 579969803 551938135 997076830 892072578 943420278 450954176 664225482 493764937 564780517 463886956 532073459 339701856 961379477 532465641 977545162 923103415 926055608 84540433 601050833 739696544 956876184 623205207 705938541 842499608 845842790 884449957 897659505 393164980 884584142 177860676 938249382 297187665 870779139 55480541 951371150 456519540 846937200 368650129 663323675 73576001 966340411 20993742 49922832 606638556 694842833 783141577 835287346 138300398 942188005 239915559 310042762 621661276 748004294 901121625 929814925 645449404 809034267 718778881 997899230 362587620 755558343 673450278 735144413 836904719 971425802 676003741 750604913 370036824 624607686 662632340 766024763 290097286 575223043 444727212 673948975 116254887 879187842 184023280 333094817 445775511 587367105 63509288 865750499 360797942 368884634 602923871 722308370 511464806 990369064 424785728 731210932 165909304 245584142 860943130 942700819 454897291 599622910 397316759 766011117 829176457 979593893 62374618 800548418 500938782 866684559 562081541 767353088 71020522 745918150 499907663 519719248 120229901 838812141 954927274 968364732 141635442 642999042 397190505 546551418 723609493 966502644 523760618 627898287 171374665 603085133 157147659 951594159 313308576 548221394 299203121 438337610 700229135 893348881 122988211 399946450 701001932 961994092 252573515 935168132 44401678 65755686 336891858 486053627 550565958 578896394 366149632 633566820 300721426 352915379 554382727 584072171 812363121 823366084 278872359 469636669 439447775 695553082 991271684 997916563 681801288 901928502 844333025 906205851 636783652 993578328 792193728 878706474 211649994 797229515 760562908 821678172 191055002 921248633 73535899 131235993 620994112 873792400 396544406 644697534 374997394 873244571 628044064 879310469 301808568 621501171 798567103 936016203 574577725 938356548 269238026 372910949 22943478 949350543 131864794 974717839 646340744 939593342 695198632 878633927 785092986 942038497 442843588 473644593 152745854 664812054 828542484 908757366 547963418 860962883 234856651 786846420 826181036 869635003 177685252 580060042 787014779 858910103 571081130 665252459 159953907 914174703 21914966 266064248 628706771 997363749 797867873 977823713 925578560 937827065 215270575 703710849 951541805 975630262 393594609 725120238 690444027 994939496 357959486 455144904 607361899 750092960 789135208 853679208 808473043 939030315 218142788 626013748 255044273 625491680 8032891 285636748 306016217 314837312 523171009 792845388 536864329 621045088 318902613 797436135 533829336 966990612 368432890 374621091 168893278 393409638 191792563 530442074 145688817 797635722 959686115 982472964 363276687 806360233 724530284 817906970 323540589 812829333 481313483 666637299 255897458 745541617 677104580 764142921 196739680 704924101 495759341 794473213 355674824 398175460 136337799 571965481 205772282 327545397 760687429 766627164 990177185 997727526 537305816 734478086 28834528 586681540 131135541 985428437 951763915 986116805 673046277 682916334 205581448 776207540 685473545 698406242 261957487 706766438 918345122 927078614 927710601 999811542 466895290 734216702 779114193 992340132 512957623 662410302 511820052 851746842 621279748 852385462 891164124 972943782 808723803 999492973 791995431 953061721 925901360 980157984 312897668 854147537 48555483 409038977 666598965 673387998 725528971 953094289 314077166 533842668 46783963 74968639 285254909 978941404 205084437 414052990 981605677 989053028 202148698 279848075 931051257 995976517 518588620 889624339 286772399 894095812 743168320 826036583 270607314 838936425 592499331 777907835 279615295 860462627 810476140 876839675 457174274 846783730 324553624 464446229 140880307 362508514 477277103 803845941 307139318 701185582 117485399 122135273 542161617 624274420 313449777 676693060 512825123 633186787 442661082 723043624 579303864 856208842 228157474 417486894 656612710 977468942 627285788 638687928 174797275 246533392 190978074 225085059 902136941 958971543 635916052 720870261 899866231 919531978 530469596 581177809 231233637 786878283 555623979 583453312 446774002 635084175 834109093 864721043 150918620 187417772 414738651 887453279 270857901 516096555 623283101 637787970 888733421 952241732 662753213 963690306 726086127 747527431 985624623 997432392 334285927 914096972 387770351 716251840 408608258 745261510 438602798 972651188 375209511 796276630 560406259 661418348 398275162 488608550 286593149 311717708 894981570 918103603 611739445 940580826 961340808 978105719 189161691 663394744 536852185 745219330 934174000 952860310 422338110 810014328 634118185 823127436 505009640 625670603 715346868 934591253 420890302 774368882 901734346 947036429 362073612 853759365 288640672 354639694 663189042 996809162 277714081 448479232 815575597 820139988 105063389 857264371 233736781 760851770 805223813 890663344 412423584 835768505 85678091 566180233 895487943 921426913 445483195 633446541 962221673 982530759 875378244 901040422 823745991 919963647 499659949 562292931 751331213 804106484 191537532 306807722 344785115 584893353 171384186 456782251 872598181 922753932 980440273 983750807 286863375 877942682 26159211 364684728 826080441 930091779 485805675 987090297 665917567 977438791 40380386 474219995 951167169 992682005 945400541 946889508 366811436 874457620 299323058 539963025 360276093 964347604 7415493 269405506 428552739 618431864 585893473 596079427 9729905 583521808 66831706 753190899 761691691 778192168 875146083 967699371 505126853 606300921 944876285 950477579 143975965 880801146 447618401 688991688 338821412 716981971 545372363 771313973 666855599 828005547 10139076 334139759 805984037 866208381 194561405 349608142 11234329 24496169 997419098 998023410 467784259 562464684 896146141 954442278 865551456 908952901 573672403 961709002 839325333 962725377 170509457 370890444 695524500 964387355 157966926 303601865 187229360 751936446 335027530 739326565 110814469 661933616 213333174 261699175 785077181 970690699 246836279 771804026 452475743 787776942 371213538 964712664 265201873 348352298 26522780 846600309 280755406 371608050 777220190 867018476 82881900 475138064 14596912 870022538 645564173 713265012 427310311 798818128 228888153 490659708 548808843 594051904 220571027 514637127 653757728 803897344 304561687 860043651 715338902 785913885 160558928 243583591 912021045 954671876 659006927 810864685 927042853 966066375 943202689 972248011 443345916 619671665 732279787 937109464 488090804 998316892 256982940 632681921 580039445 994284197 79825652 179038836 755407780 882564513 234390391 303833116 554384548 784457197 699021795 863053252 721572360 780465411 203010520 879196799 450542524 758698418 112076260 354834550 704619384 962516545 867332443 909866359 241843329 899027521 811876050 838934839 816810470 841447684 242509466 994386957 146353993 956641633 574012536 848675244 571472125 870534700 17420207 550418165 163327841 827980908 564575613 914249850 45595369 658259888 277281601 712277520 856469865 901623699 735837490 919599585 406006082 920145351 395428279 630215299 707700146 787178984 98025573 844493525 88371108 296956067 536339544 765090258 252274952 383338290 622738064 993021390 223504911 356139253 241750532 632796125 291406710 416431576 497232293 599574266 499683938 810066242 148471943 899428716 593395609 623175803 433577976 681047173 828123129 873315753 998612045 999832099 603087282 703964729 334900850 414178307 953974215 996338073 22245275 661252418 292232296 589261725 521356156 944924112 559237500 908571338 164258888 810244903 106387752 690582701 6979325 631904671 923723062 999470032 250833 702060375 73666336 781710501 574765764 904222154 131131870 486040482 569954038 909244791 484473545 526663815 354314504 429022214 799120925 865272968 990448193 994305456 602429550 648675792 939660450 997157463 277317459 836501881 330666677 620034044 148136175 299676820 384065432 703718005 576175087 655422996 23406032 407827919 154062590 959591023 270464689 525247370 308148305 411445582 610716431 735209680 128582006 944980217 538127211 933664908 567053847 628792291 338460290 618490503 230158904 548523693 158762621 505941649 891092496 982508908 138368532 862274431 373375487 851712569 771416125 976760114 20283018 736639869 218996714 293058584 399700563 481913198 500613844 610550178 328431764 722008761 913247012 938149178 276972230 753159623 227016082 393967367 567255479 952669692 717515821 823750960 915824276 963240994 848593335 992676219 200565377 408114766 464656768 651248168 362343332 966961204 125743125 951266947 43797321 908248830 418349295 522724622 227146612 481473350 753907247 993513387 664145692 799087687 300853860 699007138 651091978 672373750 279102141 574430296 151977161 638314665 377536735 928840174 116352444 515802855 985385396 991966392 431214365 928771437 37246239 654216295 261122873 511528198 991566664 997560698 824958036 980946320 513652647 652919876 441675977 962502976 646602819 679592935 519495692 766728844 210488904 455596008 636979819 991995781 232680377 468849476 879438307 968788609 925576107 973709082 843191324 885192812 340828275 613938011 368595739 572063240 277330997 470037773 403953334 809656630 688840179 689920548 326658583 395175360 128742379 712158749 654143048 918262140 746888130 959028035 538645711 639128958 69894629 417661679 524678111 555547133 479506244 835241645 413519137 664860399 244427297 483827920 95862790 377886522 543247132 787511015 135976587 626612953 725908665 877258785 943591737 951891691 385525720 560607204 911889315 988013491 266214202 950319052 846648478 865635036 906663440 944616068 800651029 894507519 65753219 232906048 457425596 672115117 864967053 904063518 775184968 886464485 519574522 947302507 700835912 719992935 421292228 997832468 43159529 382777746 911285070 975048069 93663539 993939267 990413512 996517637 627221047 935688018 660425994 664053241 62853018 708088302 784700898 849346708 694990744 794101505 235268440 506266668 318622770 850122390 780233448 781604182 545948470 911386006 597027324 690466584 771811407 868909529 964632620 974705236 422749699 890895173 677495602 907539493 715109086 942747048 160628975 421194084 30804669 560221734 302266342 497611296 786590928 949582158 922449874 945483975 914148166 983720463 964082313 978693614 192271505 231143244 813658071 956497627 494770981 557319344 271380771 569120555 877527222 888278343 596291939 905726221 88006443 988568658 65861941 989049831 478971912 683575121 85019854 529252677 496280789 756927854 864699423 926097097 545750044 780767890 692667435 990603327 82010121 913870108 32202097 933678639 511085564 848184052 726244747 748521408 16173869 838052598 112435305 846791126 667365288 780687807 433670180 973941787 20567820 898159526 672325862 883592348 141820167 824885601 725361975 814110506 287669199 736565231 608528496 962401273 91519407 602145790 388687502 443140581 94942335 450762048 425474051 904936000 134423111 259707023 982670195 986367714 436608827 955982662 547574386 726129556 372384345 660840989 173025129 317175277 670544755 918442849 829081394 853776088 135242509 210084086 541998885 938628919 868837881 915921917 258814437 785253008 445786565 879380034 268641455 562621698 507777939 769614143 590980820 897107500 793972261 867801153 103959374 960532384 132640411 150985058 732474364 863281466 708566454 892706213 936604167 946087228 506056620 654336535 41331751 373365550 966141465 984127405 818452286 949508512 239664646 574498828 203210712 880271042 349381512 449723312 66925911 304993971 476183995 943804788 422454485 585261668 291305565 974646733 580676487 715183699 82149936 471395615 889830183 982839782 155885832 654667405 652667946 880577246 122268972 393408222 674555873 905870007 520381867 952332440 416447149 633474064 649835635 797296422 240700243 550461333 95251455 486212750 897289865 954840867 110411317 320667766 877949807 993191795 648601843 906351682 179081349 923433091 252743543 388661629 100889886 348010861 279225327 744369488 917417722 930333927 560697113 585175347 189548193 639203101 569488383 598051230 451810799 729030687 555302388 744921278 496885845 938321987 470922171 932199464 994583057 995724484 596235550 832135897 81630907 714773004 181060240 862773580 328281735 992223756 733741616 969696094 723365618 981033845 423779184 789226484 481661907 505799518 38224699 589963962 740751065 761794287 741285518 932413415 98082868 182423871 84624770 492854078 215922765 670870350 742158118 900638569 253754887 295052555 564506160 975229858 895600145 920180868 622603136 762989013 345908036 375476305 966583143 993527906 297345686 697813094 533566814 802574636 489018722 880150995 967958859 985427253 133829315 594733295 107371498 514887333 808500587 898265363 866586949 970471585 925255224 947053940 902005024 970640059 702483514 985190032 350997640 601697178 894787307 961334965 26504887 240452993 179839787 192618543 296734135 450175742 552849813 705096982 56064253 546209704 850956115 927162564 172897661 817351375 573533615 773289638 413401623 708979874 945039615 982304156 828400962 859971494 277429885 330364520 626786715 730663662 708392097 879835251 788068005 942363940 628463080 705959309 610610129 994184932 98444402 806585458 481892317 914768948 665797947 736350765 423935037 878938797 461538826 910330101 750718647 810457631 675571703 966509947 640835919 682856971 485521195 793690298 514183700 843566982 163819595 991802777 400977263 444384138 120647512 229546937 255348184 502254759 770819372 870736164 414950053 946431476 842994500 936923133 366100403 512458882 337402580 475318021 357618169 936637646 274349325 436275702 556242848 964426895 105190672 108729409 639971645 979657168 590111069 771244608 492208435 831843124 709590298 988477760 13858872 368900866 276246999 610496585 609718544 820871166 238474771 297282192 507521809 922380118 567287302 580326860 964033990 999644124 924495079 954574474 729190272 771252983 967360540 989425388 401405591 961738143 187177987 336625325 452488789 739370198 50305917 144494694 664771373 738299562 425634285 910611397 169319429 416748799 38422837 224073194 276215894 708292657 211953887 373194876 894417235 930991202 39813892 298865706 111919625 229491332 453648733 966617613 425480636 900505492 664389737 873850795 516829925 831989457 939950480 994964454 982741857 988827639 852570252 975279729 907915494 935502066 749778320 775665023 15817620 570108428 636366410 842791612 622474882 717278803 195063174 351929404 570027740 706721798 206619860 378463442 704783303 884147946 695412478 923213257 685123805 806609042 502516128 868482724 304189250 863640384 181752398 366230747 215463609 823411995 598471795 600364898 274302402 741845243 760602455 879830144 358021531 882417193 826496578 860659487 435794994 581211056 866334231 944407005 987701603 990824726 898373751 930915443 779805908 849109888 256241611 574323765 851404418 853397610 10875939 29455743 444695257 925519987 186947190 585564423 605654496 809930775 488191147 991556953 900817318 935932811 590383508 995444303 892309723 999522982 504814504 799316257 425888070 556673877 593711958 973197496 381948961 527106262 113533902 959587772 876077965 953699686 251488077 733375439 917087750 920636861 502305361 814533529 454580671 561572838 819255766 844901992 283509910 900891457 950103192 970634621 752450724 958581908 336854503 716338425 485543041 624747516 592632769 751268561 797626253 823943245 663361237 775048123 602801994 942898749 107835827 778651511 512304279 665874439 557632582 778800399 965243396 968370763 157123015 868533285 729997865 877988124 421022893 965591289 775431333 801419018 601413363 658721781 683252087 917534389 742834621 746882789 153726987 385929964 752900388 814578296 70681879 643916659 877284954 915815590 948313968 968409698 604395296 762423231 152567578 869146872 349717993 830243770 25796855 997666340 604249057 802597416 239430087 847770563 612237447 741952282 704009965 742131059 685270650 900690911 324608611 956634647 313184530 436651794 532313286 787088448 349997088 787138413 12860362 300198909 74581138 569931445 285476217 798685969 82770252 808763566 447053425 833086641 45835116 556998279 844913813 847056360 251009201 984754829 69609220 341810276 260684809 970068238 656373260 943954474 803901154 836424856 923369089 973408321 288630808 881267427 460001205 464931620 886346285 995311823 591798782 733086211 424075614 756460608 802202680 938641096 272995196 999442052 296473899 708999175 646851810 780456029 73489124 624406323 546321021 790713397 171001251 231041487 625877240 774196686 849747999 862167881 289239140 295119800 7191609 347952920 612201541 669020300 785361038 999895393 273054550 694649163 788419155 959135278 931654183 995020588 828490744 926095170 260376043 519864341 974822806 980311767 960897075 989046565 889774323 976543485 321175221 803652980 673116794 799428979 223362747 849772639 557974370 626467346 485423141 831640467 674741289 931906395 992680876 999865544 506818962 989582497 46813464 380764646 245290150 826306414 952935040 971620874 256603675 499475948 965793799 971710449 436087080 438383872 148935312 872695534 254725141 261932658 111178597 155067309 133248186 458903974 853062082 904824160 745376116 962602704 512911574 825511203 254327491 621063426 792353831 956592474 901500853 969649877 767325133 912096374 484525479 953371748 497976597 841991361 876191144 912424242 105739917 383255407 308899462 755340588 907925578 933832049 422693510 679393871 897776619 984915473 443648138 535124609 631156150 964077204 3611875 93076844 43391393 378135353 814349279 934957028 326630743 612722098 9951900 822407090 975496095 986299774 299118624 659523401 729677389 748738788 657811703 762341220 391584392 514972520 576601302 866479764 303070070 843956997 132680088 364341425 212745342 635129716 878128841 968629200 681658665 908454107 228022873 296360925 241008355 295173948 865343688 902161219 937415885 952193176 612334127 770751230 995865931 997387791 685427007 746927313 484032700 890276328 675418056 954420770 668248555 868264722 251974867 697041765 644882794 957867214 803192497 960803874 43791076 341304559 683127158 818572838 263182347 516631119 966176309 971426230 955184053 997853561 906168720 980646604 147120836 303388276 108327733 781785808 964070664 990418218 712083946 751401566 420829836 931403916 37147380 374420994 436157452 949837810 316043801 475427525 665698354 875708997 164052968 653925383 484141692 901391500 691304263 982484155 569939238 776047096 711016068 907833141 639427654 878478584 154853624 363199941 244669915 508810042 303884169 878637341 29708792 730969203 17242939 948368405 512821327 995923066 398058013 458355831 819145965 867041135 455024448 799858045 90037850 805209428 230531931 988497713 863811732 989199638 663251382 919770865 441153649 737143829 954296191 993063742 950039960 986013165 938387051 964962863 864280307 989039481 568940710 610396525 75736708 286844428 291629965 749382939 297005261 558823000 862469360 935307900 222401299 264321839 27440611 714253174 112066560 963094769 56511927 297432391 601462299 761157560 632785359 914838583 973175854 976830934 161308650 407772483 845865483 954226475 293798339 452664324 630354330 856633309 881459404 982659054 440141026 979069722 250330252 629704308 30407642 369927705 304930235 482326084 358205665 950464872 285035612 404242057 728081392 837740167 46126382 812261185 749768804 885111398 274282229 929875376 360411261 608522698 509424695 729578847 59697761 353564719 716870034 721548037 120233878 902810930 30708299 760185687 702206438 817062083 145938139 905453489 221725156 798894238 22314248 415525592 936147870 993505149 89730053 706756927 490588554 669847293 299589979 385029157 901821299 964208480 199143090 209039107 248135237 487427635 449322546 783719727 114100494 462119408 90079841 773418536 554552252 555519530 563031852 875350917 454194876 798626386 742617414 946902287 223371556 922680827 853542154 893007975 611997947 694384635 122906448 920082324 310360599 779892036 280311475 825166700 82134751 403950162 372341552 414767911 354136842 415984722 679171928 748353533 522116056 947440875 197199313 339654685 192984664 569622021 255908803 292941547 18306205 780916255 641990811 736983498 717808602 822580227 943665960 978143873 696216207 992767300 472158641 587512763 428596722 940382122 354094980 578055742 78699816 300317719 763582313 994338155 712000752 835020122 615787419 988298571 426892487 453991506 46640543 639845099 772565704 823742936 208862505 986457019 936546857 952206268 45288796 57811844 75227835 586573273 35481448 359486395 159492484 422094867 447567117 712365320 621169291 635534607 487194186 490566560 809359224 834539347 827527554 893947334 319637858 376275952 819570229 820043867 580029241 905093476 392288689 608237017 465379381 815300192 955539333 964350299 719790009 737006673 64564303 640331836 921250897 972635719 803276017 921036054 272538971 790624487 598321564 610975868 447232768 557576789 15629824 628289749 272089460 455040377 679505230 968976379 589262833 887174815 286859504 619571000 757134912 778112785 626973907 785596610 739686186 944451451 781901352 989480021 552696724 950276198 179451136 913954919 502642732 592368365 277509604 716280355 204012114 205484387 898584916 971275496 373641062 522205165 514928584 849561645 104780926 839856559 5176380 828740872 826863869 916895963 14702914 517619650 12739828 367603756 510642709 805248843 433264086 536502890 795321110 887173741 150496837 243131876 424734229 596809521 499366696 822762167 17010369 193532934 128435348 912819791 848127047 871612243 501318960 719402310 618200574 987340971 893817914 945454737 18592714 365933492 357192714 905796556 250946093 710444273 1860048 170883956 404989038 819103282 481167699 767503918 594465737 813795277 367358575 818395364 684938103 990459612 48197690 865373957 799816521 886768076 771561040 973002145 81474750 797056685 243911978 381007084 104465754 835585341 593854255 824800399 369934040 749347507 843872860 895208382 844202296 871892002 225026393 872878589 209876129 941720138 753909872 849527447 650256855 868989345 598822885 814939848 225735869 597743618 309730908 489726287 297690657 722385055 244941068 288201266 906241462 986834973 870068896 924678869 460594757 641744196 810203425 911125824 421420605 872478524 163243413 816830181 628111973 684132813 866239068 952873242 555939461 602120776 879027601 935433659 113578222 955994936 208605793 377355283 22813569 896006713 158875228 753776881 890259832 960704514 380580845 772916585 739882827 838229562 36789477 712377851 547536949 635908489 727569303 741093864 11938124 415885948 424531900 875606947 710898319 970016885 65890506 319932277 405635077 421295351 671015536 915721840 303265801 512943827 880890391 941285460 547886667 624260350 102676048 103781881 606331150 993396705 447741967 955012772 820856690 861557640 915853090 916545582 960350243 975456916 754498493 888473958 478220724 767868803 775385307 920995096 262847924 527081922 364566295 710629818 283068780 505408677 207688598 256266537 942560695 968525659 662482042 731618838 4248429 101798305 790668956 952302207 420302227 661248981 445516376 477394846 924772492 988572960 982971003 992714179 297221174 343514020 196655040 905093525 700101326 751254159 61914879 921238217 741164857 893228468 115439494 993117313 280804864 454212701 654837809 977271790 974004723 990170552 864951105 974273213 509904300 554529743 89815689 660765592 282411534 607200539 49711993 604091794 468676894 844485305 615323870 920727608 859224670 872363687 577495663 592551863 631362208 933051307 679285254 703371144 63577119 541763325 441249326 474737896 206416942 402561330 362134217 450021580 235480585 697178156 527362098 763430265 780170464 988615804 167853354 490456077 227487300 729742202 464500915 871423508 704348194 844378014 321846843 598644822 362325581 957987991 505074517 612590904 802946948 820802936 490584686 590912227 262725822 853969916 977019016 994052776 534620921 876523652 844530319 979604718 178712500 616972314 363435950 516931514 342376245 781460967 411834882 919429107 439982778 995121014 74959139 255465603 777833509 959120014 473078525 965037762 592858945 822925230 79884765 466425674 865796336 954223292 94033288 678217470 234217129 871547121 44738067 336850176 365103907 821238990 611586304 833594649 354172970 576936386 443866421 682399083 932283098 972250453 632278637 971209632 911296545 913964876 559460067 976042226 993307544 993885940 919453349 951997464 370391352 458357833 428990881 500856805 230126825 616832944 607812603 883427246 486956022 945611694 370082738 421359401 186962048 395950665 479555202 613709802 493180167 974382520 450473676 619025401 500074362 701473970 51878834 536739011 14258704 902958735 346442908 899486189 617716504 939986548 962055458 992508589 619541026 895796513 806022138 831749395 836841423 853860986 973574113 975745211 581613865 688555760 438440323 711027344 32740478 363537722 63616773 637802117 698694283 906906099 420166180 528007972 775190056 850892397 127389910 544335787 841297751 875613010 499035525 662671312 734713109 939999291 416818179 492757545 777108665 970274644 152927663 266841668 21097540 867985988 234197425 868708213 823738068 827127139 477590770 927095111 341009878 709032652 733985375 751345280 595634906 618231799 55168358 218999034 228639199 696882805 735576021 753926872 622393896 747226036 748961630 937562462 189657668 485968127 696754781 818670821 825713912 939404607 900923402 922567393 653088511 982943639 452043576 860748252 459231679 686807149 981315014 997775810 308652557 816172820 48114319 485041267 587008154 627035822 824299331 980409553 711690584 904755750 832912451 882545075 420704141 575437390 455558399 915975634 29677667 117477494 644017389 845675701 243128522 749847148 767813332 894625170 910888829 967964756 263308395 999041692 809660992 809912627 256152850 828501431 878855025 884983105 804875470 847719059 341807974 500582388 38308594 587860235 941200810 980548092 878179498 912243175 137421356 239082404 964956427 982919041 369964593 955325906 485427140 876758517 285415800 398863445 47198996 176754958 187198098 320090835 375611128 864412228 301007748 571993941 775749308 826690092 938259839 971724297 869828619 924181453 533719382 926164267 37499994 813286512 498454006 768622968 306220431 686205838 536779769 814292567 924333318 997862765 795598131 832297655 727886089 865796186 740426181 843360064 265855634 854672597 574962848 760875008 741385489 855193304 237440331 895093581 634556931 989431516 576255403 953047854 988789115 997975307 198315427 858099414 470823256 996047286 425502934 992657620 509347996 666216830 373246102 885211855 802956031 997825134 841970983 917209223 602128178 912100286 997128272 999111504 175452005 912230274 519825884 634248719 774171326 875945374 574162760 584096901 336655908 557815220 848961412 944000530 154536061 794369160 238746319 290866615 608851343 780814449 51957494 80687785 833588342 849230294 547432905 763950811 676597821 704741663 735680692 918024922 807276334 864862386 926166865 961211450 270903105 673541952 260430403 628195172 564614420 749722078 473306220 916161604 250659678 477098073 939290046 987151239 931876069 992467166 198157845 420697091 517300748 640560084 348367038 698399465 299583725 869240816 788602657 821572150 154569849 268506738 122751784 522977769 494938137 841086198 945754483 957326547 36829904 938875999 146850263 374024125 404059305 582953443 381753699 890659039 112281228 636054365 202487870 209936423 549875834 676272740 875116142 917492408 724278338 957551405 562989079 907246244 749049020 825751754 229464150 847881051 204324089 634183645 241725859 951576806 994675286 997791618 303194182 372948232 889894577 982809147 827512775 967221461 339369053 403397697 498465439 616777899 614358062 791287979 439486258 854235165 627741668 791374614 681246694 907548504 415509053 538126357 640413638 922621966 736101998 740410254 822240041 925972715 769144560 772347892 152820008 443326747 27350423 523945860 114448403 712963978 773436872 976057353 435055803 705751312 476022683 624353939 496592403 952836427 967097748 996948157 710969174 767259990 777104379 805288253 923987841 948031407 747125578 798727370 202963095 247210780 277848357 743176599 963002095 964504915 359806954 411609071 142104779 214577291 635330562 746900206 318902211 641059908 39830341 820500950 320807157 991261499 389280055 727680354 44934185 411101232 564796124 636402566 851427274 882009036 415414822 983820929 187310317 390389093 303099021 704420812 714866054 726439634 96258605 398026707 72162227 810554243 74679127 122089356 285647390 918258420 978877187 984127499 831491889 856447488 586139472 823414377 951762307 953361078 741224288 955299211 247721563 439553006 532150510 586245540 330610337 867712671 353028781 579197333 140099905 607307400 109854731 662936869 18369533 313666643 729165317 757451383 178959668 277926923 900653389 934740773 719113493 846047053 631172994 779140540 450752794 580020296 959182756 997873125 146615778 594542340 326799942 577890009 44908216 71423352 330441344 638955394 323243199 791710503 45980557 271769052 909653233 983665460 148661414 898235960 555994526 768446968 374183658 399445764 884175550 918799970 221862930 503195182 989139028 993662802 957507403 973841786 428025914 662260435 78281962 896377393 178412480 446986906 586074450 934342606 898218944 995530926 98396274 189825976 861535785 994640570 872482463 912757583 941884680 978040195 359812909 927913313 528788933 846319784 145921890 837650996 10513680 124085390 503633415 523063001 592409434 971093996 368274419 929517011 198998364 958481806 692672209 880804918 578164304 986538667 298787273 608329293 892747162 906116508 250594970 439292189 210125813 957559213 295075275 882270187 313781115 532882459 181733820 732459912 965369679 997593710 341238170 531423960 741173362 944415347 267468392 515354729 878435572 936048188 864881668 988275742 703484980 987500759 153104132 304583933 765728716 812487401 420235196 767142103 845157960 910756830 914734477 952485037 544674845 799548441 596752021 959692557 5358152 518640036 68712607 405252080 521805382 922823654 625806783 952871542 137631927 464909862 775251272 996157540 862544621 960646827 915113748 980442981 10490431 68938713 630905905 821133974 87530857 636058325 174378037 516758129 756313221 925566794 15310841 767613285 67224196 197944513 753759322 900081117 773511674 939638275 233833532 791770491 583145712 852653099 627206209 960271472 977871818 978615788 521729710 652067023 223442038 634656416 755090863 998225890 729472620 902245102 100209800 835173411 883111314 991955338 169132676 693439840 140448289 453583480 694544969 755249406 811667560 859859275 407265714 614831637 757834892 897632791 472159689 852518157 525493787 665364900 352686839 814426086 94865202 588133184 630515417 825449619 417291328 764516799 662062600 918012981 154853210 613442768 147130702 270698563 35508901 372078358 765251318 994849356 118366286 839308337 683497964 862546798 612693936 784688229 872283137 991796738 798413383 979591209 761383290 938741005 247129520 470042819 289623008 487314143 158215964 831855986 349001318 576411412 190160902 576289541 25955417 405722496 128665923 227646183 468062283 500333897 602511936 656372233 497367749 843815387 103867286 161161231 404897395 976010422 659393705 932629265 483144630 670215264 619882783 759070638 677205263 808773371 861288507 970087696 881479966 904302424 103586076 961619898 324683902 879166845 344096389 680039430 335434123 986630856 818530170 992985514 436049186 694794792 577657593 774584792 329949465 408866236 581487882 832044773 101429943 563525219 220261134 412366244 998408370 999264013 488373051 914690247 774708570 796798139 746714819 852960437 713678855 975369936 802555523 844803543 898348199 944176514 50365109 643919637 519497492 727816403 835195013 984848945 20388295 787170794 145595090 461159069 145276380 424661551 205072414 543561825 633340880 856222765 906870756 915650765 675481356 974990781 83379445 229456570 1123043 581291092 653344371 775781973 77690618 763819032 441077195 916488798 261811509 451426667 214898002 271438341 318462169 682108424 441705671 702651074 399532765 410600727 136872522 358902001 706899384 855152221 456503293 752621134 862405218 975701462 543725356 587906330 20062196 897797176 479815906 667161317 35876185 766789074 820525691 845927472 511966195 959639965 47217959 756968807 778694761 817891307 602905332 990545239 652699402 713353080 861250917 910829415 335826829 373101817 185907004 992241168 943061095 949973686 103385612 882204453 256761427 885955587 78551655 340177792 126288989 694328878 602683252 611156055 419562099 792478397 4501321 464194582 788833415 968495795 681413176 806179502 949333286 994029193 824520398 944452559 895254754 972609125 161073674 246962487 191096231 572805067 301942240 659014288 417900906 637217429 923527250 933317244 888746184 920247069 81070199 936321406 177655902 272532819 868014140 937712812 34940576 691515736 875105847 988291589 609824105 617447527 148209609 683543128 74616034 951790847 522882676 760089768 581221502 643634189 970839450 980633989 262626487 977169309 565596058 737178679 143380794 236104377 582522421 906318072 866873908 938235623 339363530 814099100 917847021 976879544 837855691 876012559 874854076 937847339 211547652 852890831 21742189 105425388 891632748 997851427 734570617 999659148 753040946 901983457 659132990 728555362 190296295 721740831 45134162 571910521 7672380 483368379 554595456 880560550 53483734 160663999 275262119 920427738 561244364 619561101 287443855 334171776 556381069 626753006 606671609 828706676 460840652 948347037 591360832 700044845 929199142 980867573 486474555 908959441 177263079 872825119 950053074 989288695 776836454 943825162 273527989 337209334 340670030 979647852 907164359 968611385 182516547 689223900 899293739 928451069 486563638 516918323 396813807 843420389 623702956 996497446 846521261 955246902 88689505 934915728 925433850 950895428 434656712 509730768 27152177 43921586 718200842 835714570 312881434 453851106 772324747 948330505 104447046 136804369 217122778 674223115 331826268 760693899 809262469 884210912 132212839 619759265 3318121 309410712 471083794 580567017 863073891 992585096 719774552 857935311 231067338 877051506 937020938 950367963 462372941 726719024 722016591 731229677 440668843 622564576 890819708 945202075 911698256 976356717 525441828 613180797 594926589 656993603 909225648 982486564 661516198 781177617 766860823 960852775 585970390 715787490 894421046 943836400 281122458 355976167 544812689 764153607 204369074 685529536 139467305 614468418 76746723 660010573 449367204 789719741 293127703 640579838 863750521 966566221 13042339 627955576 715886207 963019435 462425235 804484297 645912153 728777133 296753977 678829554 203756512 531613309 414494960 736883288 295904279 814500609 176759701 437001996 822576250 992254916 928121550 940695042 171916969 271208120 4873532 720468668 5130163 876122001 843077482 852563362 664900086 975510628 346521814 988057965 153462266 234233087 557161505 903213622 2371181 231294429 741273669 851484746 981320149 988360371 39809272 150042512 819756663 900526643 306165323 443450037 265964203 958036340 644337436 869197999 387875920 935402895 145281751 981825756 519204757 959208103 113039135 628311642 790504255 818962366 248966434 305504462 945295087 970534742 943569741 978217680 258943673 551283597 962927027 977677833 746412262 796839169 890869163 902656076 486765230 791982475 728057823 877121512 173231864 337658429 22891288 757595137 964407900 964902052 894962492 940162571 625178377 934615275 349098975 559456901 906474121 985430040 371101954 607344108 469814870 534971362 324263902 952586329 493084514 936677473 382223434 765839995 454658188 470665962 612395469 673689974 907255017 936823672 666858790 994105684 942334052 981205394 544635612 832189289 409442877 876596125 20245880 376563996 851156448 904615051 1211332 137290595 886580076 957130006 419511375 529372552 336799374 997150629 984809313 996141419 201382140 615799986 336491892 952792454 544937630 891826135 133662027 971302918 673185222 701389346 136852959 871460982 319251937 524031047 172491258 985058523 454111667 918595461 241585192 315503919 770106549 813909429 539197049 969439287 759975651 939537883 117400130 399208250 358041202 875220873 304107361 672026122 303131048 326491775 670712928 770191278 892598472 958656734 257313881 829731585 817035881 880852695 855954716 913673518 782249464 859534274 242467460 679892731 214049249 620884932 291407395 601422355 997527889 998055864 290576032 834626560 346962038 626673843 466911667 839125285 544251778 724185095 554020305 725729622 101861519 926731573 737289099 936352919 202747769 548251552 412169121 957841545 73118882 874490104 503652400 937812490 974337784 978928355 368339642 737526755 747256196 859193346 697530529 890733229 393435637 669064970 719081874 896105970 981305469 985604608 892298858 980462656 576417567 683090265 23816182 598166768 71733692 362517550 940685776 941099506 548507698 785855515 625805333 945289600 251913924 594015005 586650431 827300113 798574184 895251673 254738343 683698277 983036902 996801863 968847946 985617402 344136392 799749860 517003166 599875858 76790349 989730063 851423960 961806041 941859271 997597885 963242927 966803517 810049214 901550512 252362394 336639346 601651412 613904824 252950382 836639764 124868142 850760419 187161785 630200851 199260141 439520043 764118227 876062149 979283293 990060446 361002497 761264124 849296122 879882781 922061884 991473564 261480898 803359120 300061530 970820595 695785104 802172532 991232485 993064589 22389622 98614230 113537191 951195506 486583742 781096539 345643914 876905889 268735653 779104183 432635978 562954783 62747954 349280504 402755431 409699856 865813860 969220064 35346100 224572610 604536546 703952173 852456488 879987210 697964225 749952955 966058699 986723126 658914828 805725013 267334115 348552154 657664347 882982083 456070793 722204895 604630017 917052939 397970550 666559934 35492141 239015516 330536047 449552923 227454057 368559582 900880148 914792514 694382039 822564615 806943108 979650004 354137130 939055748 109570486 146273929 549249073 749237844 427946469 864950759 678981693 872672042 59311414 399737753 231992979 235288651 18103539 583715168 926239983 948339864 811802924 873639835 456188154 902040275 283747841 323143307 400990486 622547659 325841476 519765213 517224453 589612843 136048154 582331501 759733304 898838865 322822239 651159832 849144287 996310912 128356530 878365825 860247656 977513501 55036349 526470057 209857267 675887916 563487647 842426725 174242028 439538805 899281704 902760559 240411548 817143280 521306537 640483877 649542622 773241927 266242324 635467452 336658944 994076300 67467638 791429812 709819966 840756873 831730230 978524398 184835981 703756668 986658822 990436351 515157620 677224066 384196634 623251415 369610595 727093638 946554095 956054530 792057003 912181089 808468457 933238275 729171530 829596309 767226081 970153266 863014668 979083211 906209107 954732820 412230554 455848760 310358977 926906379 393017774 569085620 81416652 112101296 3731749 999461714 129300246 805122517 831485347 937597271 187323569 870080167 630760506 816728901 580718461 761760637 461053525 934366669 321361825 972025617 141492458 320619119 216969705 625873569 984174306 985473409 429384408 787888633 932698456 945903960 499911163 624054695 85828736 995085808 101256768 291484335 867434817 930821523 51449132 164556539 157855118 707177697 219229357 222463501 635652162 985109976 34032354 139806369 342507584 820971913 388350414 996529393 864111558 934166701 318077082 545022955 796800505 835883605 415698313 840059820 303358877 609681946 619112387 861312040 532397152 864148928 525636657 898979438 129995873 947945622 739555038 974233003 826001923 907022022 219405291 676122643 313304454 485076904 777612884 804021075 920410023 963743049 873903304 903841326 340181161 953015371 355123057 475683336 110580077 484123447 574648265 962550608 92375501 307204905 774892337 912482169 861626961 894103044 711208466 769492854 716269984 861159496 914205769 992931613 34120973 237289382 549559806 626472751 842889482 945342816 10988306 354043569 229525377 273833232 120782864 932373273 594670347 703893847 170992243 397973827 641207676 867961674 630427218 728538483 95076368 856608292 312023205 614731587 908935154 964986376 664881781 942220578 221676689 849220903 326512206 978858538 552366615 564774355 288073292 507010753 408604392 985524574 198889539 811108941 617797434 923562352 519633617 633551343 938328431 938434446 438614714 689897758 215499529 248263794 703287724 837886977 543132160 924338815 673555248 877466252 984773779 987781525 737373754 844192298 511932471 517888233 519214316 785611702 605980966 985997557 874616762 913913400 644449807 701042804 910809037 924348983 941896337 958399186 491221794 700696658 281062508 516578824 319449464 630254458 442053471 741601617 172635868 755032985 943891207 959818752 304289714 769943399 113594388 764387365 474258894 773970389 523108431 726444331 90037667 165035974 812539384 967017040 75132538 584577363 167136608 806663112 162573260 819271044 764875527 772915719 646647064 663815649 394867812 602201594 416302698 631749364 97268288 201458476 964444232 990467547 6745387 746001310 646487547 687246240 618134592 964570432 878093039 930320909 710032950 805457407 263888040 781562847 937821369 979394597 261467844 309677007 262735205 740009129 297860998 422877460 459411259 944653267 213205205 756906444 47213915 371656418 764222518 886417280 72678820 772040035 43518333 280786647 227671047 527610148 520715881 959235172 28931987 271796955 305587812 785890268 182556436 451612840 478428659 954634775 959041347 971874490 655356050 896590294 904133215 994452942 819310773 998829644 968037232 994464643 845644110 865189911 499443880 938924860 160782887 218718572 120059190 293767727 166669050 783677962 834235158 892872490 827820529 852005875 810074095 950392016 273587202 614223317 297707784 412084530 603454469 843782913 571284101 689821830 919143510 977749270 11097048 723389896 315905543 903196361 826332246 929179526 961572 958947582 971434720 978634342 822161526 903267305 61104329 916297442 417807065 472660075 847092089 967695663 33717669 82852200 765817204 957930281 564791786 630774384 705194267 948534789 518620486 891419561 444482501 616107250 615365996 638429042 622011672 721259040 590387969 682632645 960388677 966207354 335196519 428618509 337548280 643742830 935710447 981464150 88508335 892730655 526653304 893749882 449412324 985460117 695493889 961874015 530426379 550253027 236328599 792945855 155444482 509061320 140179593 840740794 417998999 983274242 928903797 954755855 747109829 824594417 765724347 796193875 485525634 814961722 650825706 982602156 171188593 230729500 853127150 892640193 550695833 676646510 111448857 333952262 297142574 808021572 598418497 767442875 629268704 830636775 482884080 832182421 281987958 685102013 247280905 282647889 552959430 598668325 271082973 930938824 523964452 804931476 504835093 739462544 758022734 938170456 538535163 756068037 621064872 808003644 204032466 597938827 283351303 640154091 595365756 861430590 425319876 777437440 239366398 787914044 387005422 480983514 357569899 885952279 279172065 891028725 655277412 674190723 256937477 556785753 673814681 768199042 652479996 702937697 508159674 780825022 362042422 798470565 44388140 853049653 16851565 582554551 914074320 954219732 405196978 876563843 380688261 879141731 555362366 729197168 162166381 500403491 618025850 705490924 117804416 921600173 23786748 587175364 652543142 735025929 218756073 572836144 803988774 876070850 728250170 837942191 92406394 518247798 669154920 681114201 796741826 894452668 268280965 703870330 873218329 928962983 433480182 679953645 384374261 431753422 230768351 803304165 677504867 995993476 795628921 832077399 360577518 893562272 587120088 745809893 26981737 187264521 497268108 611671827 115967865 994908667 317745599 634145467 51272522 139643163 163152754 256789703 47248694 113976719 548501968 944174725 993559616 996826049 849699706 910049711 303942813 828135014 491054783 719029772 726179375 969935013 748662835 794134265 850268199 926179312 815981464 925055349 430732661 506463523 438116943 669597211 531323975 725069456 264961348 499571022 10383390 637359853 719702571 899590773 969085668 987897471 562032234 654457962 82862910 383785229 432184313 514140845 680669324 816900251 221100625 241311676 54766687 222969663 587524648 723906130 566046488 636340997 919894887 922005878 825936244 966828644 911975911 983631068 759913858 789371910 580587985 660405040 829104122 930198844 90646765 644659664 963573445 979502477 824275456 996166736 427393754 754004198 247293483 771055237 498487027 869360378 425920595 747915646 132472678 918128614 631875899 950331356 150661299 268707027 460728336 687646572 551134589 724969060 559311269 659330638 700622395 747381010 977173991 993407784 763662398 779769644 826799489 930129264 658903051 678741739 815951765 825628643 970973345 979770286 588615918 804945560 827030467 963880143 521414399 778222706 116242454 815502117 270074788 562280309 684037670 811532768 656500606 838633315 97829737 603342084 209842077 508179206 97789828 318400062 661370206 886594727 372983106 570226898 689923769 992359909 466001073 805561432 674896171 778175288 862559884 868814584 852951447 995967862 427850843 898223686 778679387 894151141 163481220 535888405 594496559 769637024 849548104 882884078 536484625 832079104 446313498 717860608 698620602 703982356 307219570 713054746 717410390 977095510 413870686 599297322 566232966 727969377 556431646 577854006 543750113 914003001 738571550 929409250 903097166 938059719 792012285 989902456 198159797 329085569 295768184 385555309 572800959 975832896 853455380 964185170 239459363 683741800 916784127 934784680 879549859 955917361 736160867 983653041 950718710 995952326 926883202 957791994 398596615 724716162 6409077 684254969 845219200 872823044 896339157 969190084 52208067 648221492 322268754 820216737 298019777 859579386 749882640 999298405 134922439 512976171 575724402 983091664 285960341 992767157 584153290 702720779 283653639 290324778 322635244 664199633 946222532 999783125 41514322 363943861 638921116 782717140 799668682 829642562 177365275 871026115 251808361 410644206 766778959 833325578 249592305 974528706 915283113 943189874 990711074 993367432 112152579 171158191 715811581 766958836 555493521 917685505 500733129 669149095 347390528 862429077 547337863 610247879 983769795 989458961 90884511 953023769 523701928 858364723 190637399 959405595 509118278 817839262 438722412 645331709 584569428 973854226 160249070 560569578 283948210 902108303 639230106 817355957 923875325 998427907 940214896 967453268 417829574 579109412 627028095 655405677 287713478 780323608 694250579 779385267 881747431 891737264 987578463 995262222 967180757 975579533 605645431 762781633 640686244 663231767 643828483 674312109 943124282 961336131 736476032 820367202 123555940 534741307 993760517 994704179 10642936 447218605 463410328 696846576 500522765 683094667 462309715 582125066 836066623 904846622 986375130 992192154 701902897 720406267 368435726 889989283 445522646 566558828 424481313 910439916 6755737 194557479 853210357 996374064 407624769 426352355 932685779 959815829 780059591 920535931 897199211 977051569 77507103 272989395 191751522 309586891 585022503 625227020 596932025 625973015 628427233 921508661 889885082 955385994 263190949 546061493 426620617 582051200 175167966 567505252 246346196 729231023 861346321 867628643 400453180 521273139 804700912 840510880 640438930 734024746 414412886 834087720 576060151 939599667 669577725 926642011 528644552 799486892 100526759 386028969 358350744 597256523 940497260 983311410 869313659 895240046 980555975 990481473 889996680 896021020 167714643 964319259 544543940 866202744 753082516 914261709 602867456 681056090 35027669 190519858 834622421 955307670 889186060 929816267 358763222 704734696 984489549 992408262 570871280 616151598 2697092 973479534 274233767 389031320 583814451 895156433 126969589 414386672 519859269 540802008 595044694 927060455 413952202 989097293 401568010 428798775 28571523 661289789 204254745 536011996 847499557 985811103 581937995 955468905 362530136 878566764 554933573 574811543 514800634 681173456 528806854 731319466 393519051 900089953 955921534 977332863 663434126 714821113 865388380 875140459 128106112 999036649 999152497 999436000 603637436 824230404 564563929 604698073 389752228 804957347 53327339 161067659 928229751 994223488 867458943 871504829 119703438 452240217 321283552 393867991 94330361 688144068 134013308 586437218 437143049 624639851 943701791 982956873 465759056 741828489 467869836 568823732 545253991 616497209 580325584 726981261 321125008 759356616 772840791 856858627 868056069 936354125 119601920 958461839 14476190 644685652 842338680 843057307 176902374 807988131 674309684 984743952 972867062 993989325 59417068 214739181 513205381 583105395 915432844 993154448 59430590 623516624 499955073 687381815 231406314 774098246 235529632 845174932 221782539 888148573 33195313 702886890 174786196 951867278 220999724 944927093 702677096 880303726 586906160 643827702 792870017 952752257 759945934 836588646 196083849 911231279 34005995 961168238 482026258 609053755 77318015 984034047 667523984 716201522 374054550 788042491 738975347 760052176 330466153 581616759 622999579 759966748 554240253 908136144 298861698 768710980 599440335 811431718 734963336 832431268 358896430 575222825 297019087 920512237 332265923 539598063 261649472 758271658 933650345 939446494 917572195 967674549 787702468 939668822 795904687 869721829 936884107 992140576 892984928 907357425 601273830 797238656 572999594 999325870 462839558 993978727 557823778 691611008 750153032 904792416 414339496 627416427 149100353 847401904 501104223 902739543 542960077 637941232 887218671 895117549 620273905 707598028 211663250 689343079 616742734 954161544 928244553 951011118 426263561 815624637 424697479 854959908 116547125 504386404 761534863 975540967 710176719 971159227 225328245 496501279 365947488 533888892 34881402 38741064 616007540 767032046 763790224 860637474 830028232 923546402 224357872 756398961 187716748 219008132 136173360 310464711 917530311 945583520 128921344 410244450 356880841 369616844 299065456 981944160 683919249 939334014 861911871 948886913 319072055 400922949 282240715 760411527 903141055 933285773 284375050 634809608 412389392 929809004 42481819 94537136 61484166 723700663 465465631 835433930 190737430 741422152 85717158 915637820 984942807 994117923 543723309 751023030 749551570 790420603 243459493 683161956 935754728 991464417 718749637 897365408 290346766 687673470 987477253 994114658 773439253 866177950 433964302 708660090 514968864 972160482 512301223 726988636 2952383 892770217 95259552 822466116 575201717 733781531 491929029 770929430 84656960 279179898 734963259 888424784 284265381 702479786 865923491 944505382 16300321 993384332 555222054 784536587 172457955 325582077 783446938 973412995 161440505 887064681 823730357 828722515 955409060 964004511 93693585 265018215 79924026 767595902 228615058 778430330 638460345 769761020 957024078 983999233 475124110 802655838 670356099 842545927 230450793 474484947 868180275 977667053 316204417 491932672 883552973 927422107 931526264 977723314 384936875 780473017 551785226 832403500 86498143 729907886 90325803 623227535 146262289 266688330 83532985 681204448 95412062 915099740 789790302 796584691 961127658 984568154 166530186 923443078 296035893 662605455 474070 480614997 416663403 745750885 923833502 988567750 944152319 948086055 741932562 870554963 611819372 621010499 605160724 714719819 574317165 915339856 448385967 978671461 669747166 798014690 644545687 833134282 699678582 901186728 253283904 451897490 903342364 933954595 206250874 544903990 473894998 712509391 838757234 989501557 394053809 871324772 467894851 870909200 591585749 737868596 651567410 833117954 860175136 936567931 877068953 937501629 125390587 847414006 539290205 935479506 80729827 838982095 133550261 540569191 13155353 101956410 767531546 898677330 461439157 504667099 167501663 222291754 649912132 872246224 243588687 783310079 153477445 491280475 977612932 984806832 562943976 760979282 118273131 700106145 575644422 891360359 722335164 743169460 549411378 979471722 676729087 989430724 648978759 667271848 585075293 874264343 347300581 531834143 66731836 207112614 629216119 808684306 709251344 991014534 359629632 757560384 952987944 973567096 891990397 909960573 380462255 597133856 952800308 964613418 609584737 839451647 665711699 990484643 967588813 984060613 348724717 570956563 89218652 982681665 202346177 698982008 203494619 683530348 903056175 905601393 33450450 902499654 223939032 249921652 952866784 996998338 178768102 258622648 670867568 983172644 342340962 765394056 86031044 508610497 923481210 942246612 851580034 860635247 195529120 283466637 771010128 971712282 825041318 973682006 109294335 205150553 232208608 477225006 88003080 487964906 286789156 682714396 523803638 897929748 605704754 628811203 807632597 991272548 717519757 800866928 981241083 990817299 537034899 991480751 452258568 882496838 496337192 727812765 210659857 927796539 55799968 545337266 511854663 807825203 841915815 892783920 398839888 883423571 672250657 677509411 878251251 888126886 952457290 977693285 553303589 859566957 579237959 670694950 16988951 687520441 85595123 875136269 261040683 748461597 957306209 968138810 994888126 998748326 550384027 888937168 547421383 583527996 909997547 926534721 890908129 915675062 455349353 628841850 797820024 939609861 255296944 840146288 606886027 872772418 792436643 803417590 707463825 873972287 304450504 724126356 258393930 410900991 840533646 853192714 498144543 776216196 170798342 636976627 306633604 685449108 312661897 543418393 378866274 931282466 974818146 997036797 101479307 298217721 32952605 219340151 483823197 663195315 543336225 987047955 371153674 477399529 573231993 744638766 450212739 981014114 305743706 419763053 925711281 991884791 384908951 621400706 842403567 986935458 507727787 872372973 804132328 912489476 79728761 533758603 345671239 809560304 591548074 995133759 938802093 984528013 538481834 821964763 417551547 495617286 666900474 764821352 348444262 873961187 787992411 824694853 128042945 205027550 355800546 456879030 836431378 870813897 504077461 738728602 29363220 956251270 218762348 324836043 577943345 696605085 595962898 624528245 897280066 960976506 525404613 836383089 3841874 748929306 783277220 839819501 513969567 764908956 807784793 912706686 312164252 537663268 942595318 996196869 135689539 225082012 622714969 721664606 240085318 773290197 251121677 845940351 136177059 710582822 678717203 771413399 302263093 303491542 78842969 597634399 703575283 939885532 937065716 941724459 622665838 799359050 885805367 910391832 956178481 994915253 200756549 930720556 210393607 470325908 155623309 914598559 293858366 362797193 253781789 316100460 319108375 558615380 6081890 117018140 342528468 864556488 773371235 965453533 137097842 273222787 544909909 858683854 163179708 723724879 286825573 663628098 243837343 439375499 770181699 966893852 520016656 612413513 970578060 986126826 720836251 952861560 551663041 858660416 51124978 568264178 174053882 186552054 54760633 307526745 988036525 993566446 890511333 989008534 579276963 974912169 6680410 181690237 109510350 901936056 781800715 889533256 88180473 793937931 575117440 682884273 631204963 864190818 256203082 273131709 992401202 999621387 343795642 735686493 335892079 867445130 805863257 981342929 292478830 586110766 263086255 945249131 746362954 781061421 213879553 537301759 476118241 983116164 891633228 902091082 625020575 732430239 93090319 585890470 654850701 768207630 390246794 785910992 591230769 718532717 955159485 957979465 924108296 991138726 54177939 88558269 196601723 444087064 429267902 954605147 41712418 95449079 416918480 845556456 283335549 955758278 540278427 750449422 40261370 499156542 146159785 204534290 873689661 923815102 410871962 566516873 877686598 928759232 806111984 997949783 55041990 307611306 896495451 997339298 182445214 801944142 176033218 612932116 690981067 900626272 121572169 840748602 466366599 615448735 956593390 970972510 247622024 690481589 592383552 883645620 589574169 746922504 944640231 948877825 152633067 279848515 203198927 889312021 614855617 684401548 180763025 295864274 644144845 698065841 765916531 915186849 874751334 951889909 642249120 655285469 749212324 910071320 114707174 164235451 796329895 920015953 929454491 939167653 7810045 738580086 202198427 868401892 373254832 641187693 862463442 941067844 605550215 614260908 696886212 909405059 470293134 830293236 680026440 878684974 801113660 999886106 353272471 545461643 873196006 924156275 918147323 919459609 490650295 800160087 501237103 620977130 160087541 395232366 936401649 974578849 234443130 740439825 324595879 741075759 361460074 659598033 451676142 623925854 811319932 930280601 858545362 890951742 488371945 922410705 691365968 842005820 257438541 606564745 595044633 675338125 975848242 986419150 238745188 340591515 485766796 857789884 191393283 659798236 483535115 649530680 398511521 519279730 401738983 593827084 506243204 554580076 544419759 751982253 218670209 826673485 190262333 898772281 477820481 533304022 968031758 972631549 872769392 955264688 834836754 846966505 64062751 799751096 848546851 941394782 388983061 713577059 959457190 961684241 756735277 939289646 417261334 511897817 621538572 968806303 594851723 641268062 971948814 974956375 931161343 963518437 807334887 810471271 825447711 835127947 523222218 687629927 942527784 955761896 804877571 863113531 530578630 705407747 819754124 832152818 687935255 899791115 99392992 444964949 653084709 725355999 642600221 677083843 660499143 675628120 618970594 641437480 564787436 809048425 186264044 821181919 264883176 717070760 420218357 593877792 700968349 758112619 964714819 995073708 24196403 752494107 735130093 742264656 786831727 893477060 479067005 859842266 327487505 689384548 715810971 948600149 31654763 840244314 460589823 892343564 748663142 918987134 945649166 957492756 975481426 997525456 596241499 800077835 323044054 728700385 273322182 835645108 277269181 367331045 851360617 862844027 758179293 827632440 419205861 785124812 450453338 979856434 818637132 952967510 884224967 988076050 282105424 619248924 484316936 974469634 428165154 822960786 968070549 973950972 397453566 837013657 446958561 653944741 384362283 656825905 607784982 807935592 627403063 738969648 160570358 230041931 436006672 538526266 119941552 377505796 675678869 929287517 977768059 992842865 5191884 436324401 923333212 931396738 803514888 907961287 944884344 995219627 281991222 660159039 191610605 797483181 175746319 843824392 287054877 861318800 145394776 697321060 688581619 797660734 628571522 859802533 866424580 911057263 989983075 991733904 798769663 992405302 473895138 895595813 420311034 712035285 705611852 711591913 559867601 653331797 346557626 425196767 230373350 945956208 859148036 860811932 906635528 927688886 490111022 611765155 415284556 531051798 107863799 244651041 531139773 544709198 284420364 635506992 696059750 856132650 128038229 329420340 40943471 178579350 280673456 330204235 630892752 752071460 536286151 730272986 357733334 662062979 804144600 894652531 512651215 605423478 204117001 302614531 761260215 832186761 401234439 589629666 403164435 872660316 349478769 874386656 800891947 806314603 13121943 696818290 955849776 966311070 56864316 512349058 43690763 872306579 253355919 744400086 238216804 543880363 23351671 423963333 416446609 862802658 710677743 966600438 105824637 981678133 822952690 933481968 886514200 920747489 776792355 827829282 487955204 858556807 93218903 779618129 98142406 803330445 823004459 889661798 121021328 320284084 288973436 560019545 900113847 951418263 632807337 904852896 844131595 971281000 714565064 909719907 391359487 737408476 847910372 899657854 688817266 895834031 522369404 692125663 483923 191218476 726854098 877235252 622295279 673327408 40081952 349961606 47218614 163471537 389130911 977027980 142197924 549896064 833854718 837168461 724002270 735887784 96179282 139983700 677482491 743613943 719813059 926122024 898043066 926732582 201842805 872694924 736572348 743470139 301080547 446493027 638300853 883360451 617725942 794225560 388728785 884037764 251228596 643671043 327675445 878010200 715898661 863539733 993135173 996793974 86290239 319800562 783345223 998946911 292128351 889071082 35664163 709256352 106100994 244696016 521486944 860482667 176032024 833654326 556993046 633969589 806798257 934634945 307785041 432491775 36819413 572396662 207577494 243176128 464655375 926938062 759257315 930662115 452921992 714107600 87894697 560195945 524296118 621075873 699109607 832603746 302040512 984003149 782115233 956681923 439417244 692515861 278182921 428571547 65496045 190303022 192914859 565647480 893723782 951236297 982926148 991502542 666895644 934941026 30707155 796161512 390252433 694961875 331701397 963992785 724728745 807872961 217856422 722423061 974782948 995434444 875742241 950803698 419154472 747774781 526973697 879899203 596539357 645758108 567289519 901280631 541601657 636598442 714500796 817947487 193198343 918747887 369560964 933281311 28067863 763134254 372896093 607656346 202122723 882748254 559587896 672423386 723033086 805116530 722686699 960788922 957529355 991311451 542490741 761655079 514103158 687759142 917189613 925021341 47436960 981479747 24733217 545222075 623218487 827859370 64161616 449556729 607987343 987138027 962623894 989343650 203008280 864485059 683826995 973765290 346523277 724043075 819996284 990129902 846322586 983465957 196586114 872774192 315446319 349924174 249225287 683612219 105944334 871519839 918803111 961904575 280101769 514650843 319725199 505598554 520453289 982605452 42233047 43244359 292674763 869517355 247308072 342223340 192809505 595859264 424630976 921327777 259705624 791342869 250528049 374214525 459870060 947704660 743690857 761929308 848670562 978850502 813236097 854715128 82213318 392051634 800566370 830930225 718444310 743634227 52001110 954356702 379897937 388437755 622122759 685549564 174633878 189894940 586146718 618885633 507060390 779347886 872080964 940611036 983435520 984006456 303516301 572412559 499226878 708968804 728426679 760068414 667159329 800659186 352466214 714548419 336715291 414343854 78980685 336416990 240354030 869363862 471622514 485147920 572442863 914136838 331118853 395437449 533993630 565941199 963419126 975563469 589675745 855205232 967916093 974930663 281805555 433126936 253060082 774296495 451171477 536974728 395786130 532517046 415137026 628138739 86554940 296730963 692735669 876328950 923851699 940814025 381658225 803783277 487114477 991518240 651551971 902162112 310499636 588098565 915630314 920979641 636518771 664107398 473138289 933362738 423876732 856923730 121828486 792271239 937389357 962174438 922428820 949937290 318413251 401238549 240736869 750325631 581344015 681242145 117819476 316434995 92925143 389695549 834506455 959299796 258409646 442233366 401204391 686227708 752875359 977907669 71567719 374277593 443012007 529136310 322145061 557296546 644177362 889088902 782986277 811834177 12232682 445210089 851985190 996728397 508406831 757343186 131532465 483960668 458907425 843629656 951939077 962197921 439644027 444944106 893621833 924007700 341804729 773748706 338644688 963933881 802738667 922668769 236035694 381319507 65730006 276259423 317373276 866445843 969410357 977914876 308997394 572915236 393277056 398058533 274733363 725367189 795054318 975635989 636738450 842454535 110453736 824718718 865960396 893787220 377517224 724232306 295438223 492004783 382157864 401469611 173297069 870319451 537162081 627358375 914663328 940923752 930339038 981914664 723791234 978593645 539988209 560389306 489473593 941609224 321324597 710531092 392280523 937618547 571667544 610271568 647397029 907272725 558679270 647582139 272388349 787379671 78696689 304923356 134932770 157685995 592489058 614737572 969800745 998631779 144915888 520529199 641434233 944578996 205822360 783505033 285770552 692573005 458142582 785810109 906730869 991286955 782695284 918427297 403688485 805560604 709987578 832125093 201373340 857549154 781734489 883490322 292688444 845395313 162907857 727157397 154330141 738848621 867040291 896823873 353835239 825895354 309924214 353614785 470028399 943697913 959767864 971225131 740506082 853227326 231300459 904113594 322844891 928076342 977074085 994040128 910785402 926148103 653166780 975287266 896016463 980363350 40958562 66611039 380970285 887334271 983791017 997755961 704897286 917499485 812696304 874989432 96230930 978027882 776693618 960422156 295520470 453277267 534419102 569854220 983227764 999533611 9592134 942441040 314451510 850429969 935920971 981062555 142019246 641264154 778232336 825920136 697537727 972237392 206384899 917092502 118600632 491689105 430245225 983078786 45276855 377346730 472548145 566736141 950385248 959640074 207330686 675044086 844354081 863615091 151281215 152898488 361890762 787676963 554011147 882759530 65241502 497723476 108482079 653599805 492688193 966685840 692187683 787992642 502485944 698133112 339618375 453200814 246572760 314273982 955556380 982229015 147176009 734661263 266674663 750738669 356775062 960248559 956363767 958118015 207880343 541078354 352908850 909250148 995231462 998173873 472705167 701206002 282744956 852412403 8564319 424503476 250081596 390685349 56277328 448365410 365605695 880155503 971221280 984723449 918352709 990962153 118572931 524070778 729942787 771968027 12233031 539952605 600723122 814009551 255576607 937567562 574211404 901685456 197037125 294303808 23007294 791162051 916527697 918746219 970704577 985358595 652683238 994090513 550570931 773080018 640002570 907727162 251169935 314814805 680397455 927095090 252499528 808473633 735783205 826817921 155198679 831904501 488800730 880561765 873572827 877414273 256004160 440305271 901130297 918106161 141535720 996489493 759411533 833452852 315031431 887185985 108447063 618791330 993865835 996900005 215229228 285202873 480076431 993249368 762670628 877021121 419981496 636232874 416093233 740137226 14018448 879967564 110480608 296061688 852387972 979128094 320389908 962066424 783963552 970930052 438409264 443913008 898005324 941417700 426633047 437502811 134084604 622305850 231513844 527895218 182767127 637978475 669198146 714187915 230543711 420238432 711479554 801515457 960637514 968505801 215629586 974706289 739042411 769558542 884480312 907795753 890717545 903082813 537457676 723870566 454997196 500247086 917096654 990751216 344083266 842595710 861830555 886338878 389663335 917050482 386100707 978641468 236694489 882228100 377776188 799180479 501666799 685996039 921142897 931007842 805870555 922462173 454133821 938287246 281055522 497159096 897127602 912382329 47503361 998525954 25607328 516992969 939595027 944128034 859163961 934577052 231503194 406538371 198769072 517311672 390412548 933854577 538298782 812964057 935696045 980074021 430550519 834256662 626695952 655637678 477667569 884058956 695822018 889368016 909127592 921570122 92402361 958665285 464340728 774019272 892273926 924147133 253053308 727584800 43005341 935599867 319486626 751650043 2063961 50709032 477860816 719263597 509264558 823629766 355023991 650191705 986963759 991258536 469915499 875230854 700619816 815421637 925723816 996467118 782699206 886281165 922196176 941022970 695225922 878164620 33974032 940783171 27412786 242654884 836648466 855175027 925584356 953448444 189216938 572253288 206797938 877838041 11414830 266730575 971012458 973320883 695346769 954011096 601163023 886524033 419796024 822446619 384474268 907737946 716999491 932548279 742594497 954684756 540253357 565657603 735275044 961171611 559528403 911006601 757305334 816427653 167457512 854247603 457096368 996879998 746468147 897945630 679356803 894009297 961446826 969604216 182124849 514955742 283058359 603783117 172121214 264065449 471178187 582791983 235596689 537253158 639139320 783649223 804100466 919662961 654628368 859755127 90597989 176508179 30474382 863978043 13587672 810607360 682726037 860202577 342416979 818620354 868334670 888263373 615424922 863340345 199153381 514668081 375250267 955094849 274266851 515293500 803982583 938210178 61982677 659931439 150514209 256077420 895383459 976548895 136414312 546099692 565319910 964360185 200256855 916146743 755489793 790894993 982883891 985895858 170499646 707395052 301035545 371838169 713771353 976874461 820035298 846853550 677635063 722940909 584251642 871936766 457847747 472101368 153412863 875543652 501792937 534895916 391578316 408637669 890782134 933844679 249476463 523574544 818201238 840320735 378583797 509765573 41782368 516713663 380037628 656095436 63344711 700280846 434371315 739312203 802209823 803890784 281230836 320883955 54131639 455286867 770338434 892403978 364882721 526287557 408090868 749726388 783181760 827204836 438918209 511231175 826740355 944081237 340406914 883229376 171508403 976866846 481789354 961388839 602348714 950074041 69696640 313268122 924335521 957065798 742887113 816815379 570132864 832637654 76368119 398011803 465996632 523452607 453500704 878360512 167190302 804136743 215317137 497002867 649721403 711801378 83813400 537398473 528117095 929561594 628108726 719782976 783785576 923034972 374121485 865478412 899593863 942944587 968919662 975725679 256889269 484345488 741739980 875474292 134708514 874909450 949967339 960013510 477831767 689547983 649896153 931817717 622212028 846206041 554582925 870861538 920598843 923350278 336020033 679218375 826273095 987443596 978027866 990739368 197609953 965456022 579641813 965291933 879728577 923667454 224356672 539833893 935502134 961628107 31587274 797737671 72677239 863723259 484759464 665654567 836833347 918466801 670370875 884375396 142080336 701610307 263535922 931132629 100282220 980293817 558667843 782847199 623958533 713555703 614735137 976131280 784374400 879663750 258930977 322571089 658159507 907047955 546844791 764015362 716670653 893373062 233611391 960557759 939225879 995673575 65335892 559367597 300563748 318563010 946529949 947995972 361007347 807970171 484565757 807419284 42407122 159028931 355883415 943279101 642375040 977292696 890608666 936862637 711770733 735370490 998702473 999592079 618668448 981699952 15924085 164319673 970460249 977723659 528417420 955530793 315975152 455934951 171809892 464765557 979062012 983813476 769921221 873424401 696163109 904383653 489084618 629979684 721588550 909475749 430268231 650958113 735855342 878431403 504613689 599528219 392272024 486389956 62909839 981310488 600836212 777129889 925432153 974842701 599445459 915635492 694424012 921288583 239946341 404119389 101569569 907973602 966759165 981220924 969565624 980955487 134847918 656969009 762004063 798954257 241115027 751509792 311814046 591673320 267796 848147966 848865649 879246007 22677462 157017926 448354658 787464290 485491046 707718464 382720959 420794926 472240640 557194599 419254231 735047497 343635390 472654169 196667120 424411988 651215484 774091918 851852422 955111254 27342744 97617266 707117316 739452261 991590198 994945065 954605013 991536416 322765973 841092405 588886462 793267712 888033319 978066711 312058 329924546 582917786 672611058 134818445 295228393 907966640 976554521 608385567 671302155 651596020 831844134 953543391 986074225 462786352 962638085 575203663 710585878 621093854 658476495 722514688 903385268 974508531 986821532 713601311 982588356 417212816 867632484 96634038 869925917 118882040 154279003 737938099 982235986 503126559 954901037 136837506 890850851 484271415 779727129 430020254 789718904 334663198 396176741 591769049 763138484 860642437 972331387 360766849 843230329 155304890 175987681 545284245 922835323 944507596 957565592 140492805 362461529 550943022 912819696 3379864 399013630 213879333 499880092 109674764 537847038 89751916 434532753 153154701 354539127 436615826 774423233 229252986 577845838 183675826 661022108 550765722 712389274 225738061 699524311 112817177 620967264 622678774 637537597 500670804 998722646 338437876 720243311 830108225 937945793 937688884 966472477 275354785 417232266 942416844 951507748 406807920 540524986 71198538 702758357 141399870 948257548 87702675 798942612 176192239 668161776 768877276 837047763 531417066 725802566 932956711 956415344 88409712 824026569 332471779 449812393 609464476 785255308 100612087 350675669 342837798 395298651 332822609 390078636 202211303 783266261 422088084 595441203 971489737 996862836 909316313 999815225 725534752 733962044 812267078 877849050 873338899 932076728 436416401 551091782 731129995 877575779 147290042 970728970 392458878 927775860 56649922 257487515 35064318 464129891 273539717 573159618 769026583 808937253 741489499 778278389 126589707 514044520 104298790 462688857 497784071 540016919 39540924 572053125 102518618 972103958 672155067 858783178 655510824 693507454 669742292 892206818 570783395 593674603 979557873 999348720 651082552 675179247 162425194 546795355 321270042 933519711 21415268 652238707 235096566 966090456 440332878 805356217 320113945 808621544 163687362 169170868 984617809 993643071 692508995 881295868 507699971 705305569 966657823 999925487 27336479 38080983 808330857 839496778 845679930 922052887 28338113 795268243 262965488 326930416 391968805 997156512 765121749 911429782 337569968 586796192 923270759 974408943 182842432 742456963 81817242 733050352 316818539 859840626 254467168 294547841 65068062 368845542 419947036 690642700 842060252 890356360 503334538 990127526 820291969 889871945 272246911 781486842 434098639 534103424 350550053 843420975 580676015 710724850 711239566 988399221 374414433 515400400 643270366 796993942 667496785 713985747 409192145 415575368 709029346 722461396 82453789 122629933 208607238 660493959 431804870 651518831 24361101 348684126 153513799 308743312 451902612 996503457 988817393 997628225 712561602 756668413 50459724 656501776 990358115 994043396 233791978 258660126 512400899 592207260 3202887 238120171 948050235 969575976 811121393 864316097 636476921 639845449 591479785 914335843 656389505 863331524 427319515 564498942 441004554 540813904 154615716 932424545 669279714 727968910 95739373 163340137 167624012 508713510 2729828 140724740 854788670 892934910 204314745 444744242 384740974 456901059 993359643 997766084 235841017 835005464 23855921 258383851 377873991 905316763 231127235 900726037 770185954 857008127 420766892 694172932 729440764 995595044 34701555 107539259 84629370 447459128 684171304 754808618 753878459 847247856 193076730 490280486 354244988 908533193 304288062 365829671 689301377 799845969 809350891 900464232 147442215 691007429 518244282 529989298 349059019 661383120 364126022 437926520 281506215 500656066 645823835 806970579 313844642 789786135 756152175 967663889 411607417 711431778 500112293 948719114 585210257 949164950 877160211 994347374 782025940 989617817 760392865 991682811 78657761 732558624 778481309 793878214 195471949 652035898 338862414 566788644 159999057 503390502 689984134 701017580 195295758 530621396 968596763 976387450 439450756 645496211 371778133 929621662 184401157 820596864 710340224 717842136 771953857 777801421 695228680 726729702 383823340 936473716 687306142 721097490 958540520 999817202 291534924 765834010 130679168 785420669 56975639 276992869 535945983 742463547 385509429 703283738 707879001 965640709 924503217 959752177 938663195 985249729 771899631 882155653 668284079 733619580 357486506 935752758 339743110 679124587 477610149 778365798 609592169 922233370 520430532 607340178 958651297 997288880 941421962 994200664 602101329 873104499 664778580 726512554 269998012 539822854 717264972 945448961 265636824 616163285 340290886 503712811 751720889 928024077 31736458 221095451 334111107 391838149 115634729 147790299 91130912 760092822 89411111 941295872 966961478 980441399 766478503 967256272 496857764 543095219 767193153 946217997 538530870 960637709 926704836 983438406 607475193 938991179 958489971 962334311 253323658 418624238 553163980 764243876 540085364 847865626 140469434 983358695 684157644 924146909 662703865 676100982 882026086 883655577 883120244 972883704 491387572 541524363 198714214 310770618 329159752 372308155 143809092 610926612 312989775 435875173 451250022 642571437 507658934 606540522 757003967 791623394 443779281 658957335 29600201 128560846 357530304 580721159 506954563 995689956 488602385 873925587 766557485 781770403 800919023 969734519 264717532 815088712 230232061 922635321 157618937 641035847 785564760 982933608 462497542 777777299 929138635 967768132 837109777 983265734 405561331 645403026 850213996 992870481 623668693 830372123 752965122 914501404 514975004 532732242 374491360 948412443 198940080 325376311 67928284 269111935 27611669 835777852 387167975 841010151 105742502 132287539 566383899 697665827 85883218 111996623 188658242 488353634 701077915 780618148 924724691 952750638 139146562 741673954 91841540 644320157 452855415 932200723 860913348 982848309 263787937 996578537 527774730 784717595 16845045 324972136 574148612 693399089 222102451 658464786 89586755 591554659 29044894 618587238 465069925 630152396 436704786 712440272 711937406 812525452 279155554 640664306 943513893 958429068 136382652 443903173 730320242 828238745 999585649 999733534 175860761 757564801 946494766 971526638 322294233 706798439 260515937 908851559 310454646 978972577 90008234 307860464 291320674 777958483 789086580 893854081 525406846 812435604 263516218 871994387 629544738 669286457 828912859 979603888 983344978 984462754 996892540 997302754 511879459 948562708 485057256 863670213 982122843 991522707 641661529 795020628 58297463 479590740 597718750 684033605 515691023 992233737 838984027 907521154 369256510 608766064 332579237 519574459 334626811 516022280 825112357 999733681 937134904 973109679 366102005 899339755 710711047 853172037 832567132 869696272 321791745 707775171 589827486 698366283 99716437 922533194 335106985 802294614 725094588 754969647 357355928 834109361 13505424 320957837 963998427 966702739 379544023 541522227 317572031 321763427 770952974 981666115 801806954 899383508 440470287 597520021 303062688 500780242 968382486 996739130 374038552 736294684 870002312 946052037 476036719 905339194 498445069 898021021 860032477 894222173 659263518 806064343 864688968 944461880 922454515 989095441 422283406 501048616 223135902 366115503 952660876 971588479 184728223 657375809 806621902 807049604 233631883 836706468 657230754 860499114 388008792 894990058 151149734 583673600 366874934 679212160 604708838 987106413 946751835 958438913 489247280 894939858 783516794 915051253 315511427 942525301 250877803 496000548 994388137 995314341 917999264 960644224 307011859 317986776 163975651 574040920 418748338 545540526 930218472 951744917 836766160 993541352 601820959 822038479 566125204 980675787 490086147 512544431 733683981 830351700 331512779 505909947 520719884 719341152 510555740 924937942 801675318 888928893 702721036 977662923 688003108 973797260 414645491 802726948 704111234 802643592 610310591 940440784 125684758 551316488 211583537 726108772 441301980 926303025 304571455 378308799 344577726 803910213 404431369 416083616 223068041 332817353 941970295 952891652 567340711 867632604 472903907 887962719 166272005 478438561 320328421 820633549 653372919 870249682 291383323 715647974 893005425 904590046 685359419 795691272 659720085 819280349 495747956 742871330 535169218 613693697 106641239 756464375 984335524 985974725 11145571 59239213 631392743 812661680 702855257 897003690 74926910 901031284 662240838 780925047 632686858 876996480 229955821 999384847 579533269 629825094 954270566 979522406 756507189 801160438 726879458 989845471 149937230 863697726 314885365 557306645 947383045 960045146 131658254 739315493 633921025 683767793 3860510 893262105 931993807 988005956 196988151 547485115 542451467 721264047 332691864 491804774 96016368 174615216 184854862 973166230 828312444 958762333 537324924 787324747 878818552 943183073 502043746 928246028 495601935 495690331 666478050 689881620 257510297 379747062 491170335 790157145 789150548 956636560 340799583 959820820 22933185 710572799 559930120 689633431 172313770 871902577 692791718 990022004 40784556 182915740 176730676 891482229 673993572 803804092 851020940 896671433 279749892 317739629 424260154 951624391 671486557 770305923 82931584 376044281 340112571 581083934 794184977 963266605 12277640 567576112 665513530 964706676 297620474 910711568 262892495 560618702 516890948 763689646 779245238 821537474 631470861 793986938 211063464 687615345 641645618 855110985 940261106 999873808 125394358 715996466 10863547 145610738 638270070 927056370 900401946 912312805 866948112 925452655 729789531 843376566 35980086 955009684 842872210 858642203 435759580 906103339 335462436 656078326 72883965 193290960 804466711 808433286 173958181 511195765 1599540 903629943 627171817 696088157 158770468 416270229 268757991 889185590 937146844 961988852 589725963 875282746 730700246 849165291 18850206 121193849 862769036 863821198 75101868 284778718 636287747 743843149 846268737 899609219 562973176 884431541 969563275 981759292 721353761 791864581 868495496 977991336 421507702 730012794 521002528 990426512 756896606 762184857 562851698 969241384 707325227 869137394 491966195 597832452 505385905 886831102 120658768 714961877 784582620 790610701 209893211 356047973 553276563 875539890 171657906 821430536 482677191 642842846 500440105 639726360 7412003 696737610 410674183 936437323 410169042 650153508 377046057 932153284 650732815 871704848 748346928 984140409 774777204 892508839 660921731 798225229 672628223 852747912 720237261 852133312 804312777 825431062 975043635 993724682 921638125 994352748 328412024 930232991 722967240 773206782 829985007 883717024 578314675 911664222 75426572 771580784 461202528 558810397 113915112 955864147 376298905 743432491 479936832 839485376 345348724 435094576 560991501 614460652 385626370 529602773 808170278 835656195 302012454 883427293 819009441 935001473 927569532 996588553 794666336 819249454 18310944 56209789 323899903 937773909 761034530 943089295 635401917 705341871 539371697 877526137 314609189 869568550 495388920 734486094 834567344 897038043 5588886 556403251 146807589 240973569 353984623 552556973 437312378 868325870 402606995 439466122 221890158 774639800 598381115 848200170 568788824 696190830 903782504 954191668 88211863 561472118 536984984 933896962 485858370 848737329 40316953 143328870 474338988 487719270 640198517 823154271 554554481 642280669 528851893 535979638 251167546 734934706 981481919 997527353 648070997 901858175 8542337 380619260 5656067 638461954 740060716 818865425 795661266 978377200 257427947 985593442 258318011 434116283 312686061 389878234 245838274 428853198 102899550 248296039 962697674 995926904 781804391 935198162 979372214 992632760 828394140 993210195 64909763 198997021 138985192 454331424 544677009 550365533 593957995 983594494 976074453 998725311 954356659 960828016 579130747 874062445 858515551 982644730 706745145 916717119 409465914 702151856 222851268 689609025 73702409 334349989 475261428 635458934 60670996 250384072 860869762 968331611 200977836 758933001 65309643 764662423 305433868 600449586 424710168 511089560 841401601 864876364 911491654 978747679 396989775 693117576 211877240 348855611 620706447 797223348 288704079 295946798 377041376 462890733 710136886 936729578 554917714 956590767 531174863 726681104 609729426 756004560 295555818 954729606 629819930 978336874 920780507 926250392 320917881 402861075 525429254 936584044 316679273 595312004 642207102 755327323 97697965 847055774 320242572 527283823 407832310 838723280 181606256 589362224 516589542 584392594 583481606 677715380 170263998 359482034 873782818 899388145 977505642 979961814 800480549 834203796 299556467 960191367 407717851 479350835 631836109 946526318 512825036 850109750 10080152 464342908 377146656 499361437 271892046 894079694 610759468 831460203 240338499 720159494 269187851 708958769 962954270 974978007 756087882 806931873 250163217 568825568 145816860 754042015 505944396 805158056 938124260 962867831 121458131 458132144 865854548 888491891 655804930 946881117 384517754 443107554 849792914 944827359 647281705 903756896 573301354 658930218 924108135 930692878 597838530 738443797 984160251 985116100 153622189 687398603 849371167 851673298 698006592 714353977 165354154 586629992 115027245 357549431 513766001 851880777 124913724 371347718 514432828 820930370 726410481 894310299 315127291 684139185 667978010 948297737 776224630 995298154 760494405 859258169 648392357 686527658 663316372 773847438 782548481 788206505 629802837 868478823 81631892 680536798 662271164 882407630 116225162 358497491 952800365 990695545 85587794 750319688 806808721 897518405 53099402 323502717 12940286 728783627 194692279 742943684 902475526 910659548 275076666 813743836 603492948 809432174 792848174 865054978 572770646 884917512 55638628 480478254 609558423 615399267 915534357 994811409 601061803 604104228 32002280 458103249 332668635 664472020 382052572 627400529 856361742 944327081 545927000 862702098 544730311 877312341 824047016 948836608 792840309 810449729 8156522 860783284 894152905 947997361 310386764 472398584 4710040 300499565 149381016 319812156 370027891 660991764 845114701 962231404 866410267 878567864 107169985 513319423 261808724 490686621 600369235 861397659 550749793 559076825 782131182 855610116 264643903 602133100 447722954 900972857 332156343 606972308 222471558 680557006 346653916 432872495 491179632 844315812 507857446 523663240 15152549 358936957 871765667 907131410 541700250 627624891 13273623 818777967 24866858 450303750 65805460 386714265 95850045 533923348 662035716 845295231 941830829 969200188 938665007 952149210 481017951 988511169 344223693 946228874 58094004 524439025 705549176 726517045 277742282 944405684 56302804 260477988 392841561 474173887 735252966 818098163 861309494 877146381 566133584 985275718 294230160 772747035 794673097 942195435 245040077 419277896 963457983 967698251 842954972 876020186 483472207 621376786 991560694 995787463 288747499 702781254 98013077 347411139 875042477 940578355 339424358 577027584 331097730 556693284 54405757 97159198 501472174 688270159 638956329 744971267 351341001 725640770 845199063 854511580 713721974 811959164 677560923 998173948 106002688 795351356 700582688 730517299 968147238 990544981 960227614 962978230 475300739 987790112 972342469 981872154 949737043 973466984 237389299 368816118 843548244 972446431 756301011 918600795 731854906 908317338 331941150 755648437 601196630 765163395 947650744 971649902 747049493 878184104 192284509 767587609 826140367 884962562 279616288 335965139 23761014 775020955 506090723 556877022 279409946 456562170 257137945 461846371 502156778 913720911 921818761 928308488 681550153 707274988 387601821 759490950 863825223 997777834 504629246 735889002 767012251 991664917 706315861 933785572 177392065 461760481 746020345 869863869 407681373 466636050 24926139 807214449 143415103 482844715 953163373 999848219 986117639 998601458 487980416 528555233 238239854 818151794 346719522 601919701 544507022 714035479 478980767 491193674 271440358 561166562 579756462 620290925 810054121 874991176 270825480 794351894 533295091 877635318 609764055 884076620 205893348 446303882 352149262 769329320 827027524 948868746 378827716 631141638 575296715 874973176 173762792 993318783 727420452 759296831 341015028 610998641 502046092 606071251 614270633 739629606 856960457 996826842 993041390 998856680 126996814 653315271 527671238 924492283 147538693 413811074 856417905 925830586 24078308 101396202 9542962 649944173 318446704 801276980 461694303 819260651 180856172 788348307 350637045 828669882 219838971 907826260 886090418 927985616 317667080 482490375 850975710 970325086 79135391 853363708 899278549 929240780 239307419 960513567 497271494 658566004 708087371 730052179 990779898 993568358 641663386 747123233 708821309 988431649 811581892 893890402 823273680 950995298 502150406 720234668 283386525 518091756 344487660 446080419 375329748 404588898 423816081 580895724 462307536 480818635 494685543 777096164 377776027 791598128 919233296 933689426 18393820 78326224 676215054 897361676 876158111 932623172 934153746 969225808 211981601 243830711 487017199 513020976 681504446 794566739 893880247 973592066 975122057 988123352 8885275 503835998 521815071 606286664 296221036 855509572 510924274 562662383 620304798 937033446 597449342 646796523 277246236 557674181 45510569 661913094 935247341 955229976 736943506 983025831 111541397 302422699 130715495 964309049 452644785 880480708 688244173 719523752 281016866 602454996 125721202 771334642 33701779 461036276 108905985 723571329 325580030 615855140 654353732 821712297 411667471 983669712 322102237 427912085 616472776 763180760 672547193 682650063 233606421 856004853 742551661 986079809 316411171 797522819 821061151 973600855 371101474 920953379 983288003 999658905 834580002 850239009 923204556 959333114 823243946 957864208 900782197 907960984 460796644 619518533 675188604 842634323 326294814 812396021 27720437 33215330 552986978 737752799 919734270 981693074 981308572 987265811 753318391 979445701 18419656 835233599 646414170 766918329 27312878 258888049 88073919 125870065 282778802 553827205 62163622 547361233 17776477 817411487 676205289 746564769 623784916 910515787 769165663 816165082 162089086 585682152 363229190 536344798 134134693 848264032 849731696 956247682 936228732 957033282 222285728 271218654 585934666 750173479 435640140 773320479 822785466 926733820 84238526 718294586 131514068 279517709 956510655 971237550 421855486 715813798 631818809 963266643 528960930 622476149 874949019 984606023 299667827 754252125 834946670 863020922 268954710 638582105 487135655 536413595 980423034 981001278 672888157 919892092 531785871 834420526 616872324 665199887 246533881 267640380 822540003 893765777 960273514 963034990 115761599 990732593 148451371 215051287 867805055 961468564 372070921 709823660 188646517 991336774 597988830 860744353 135880283 483843447 977935602 991352441 22278732 924887712 776755882 895244816 448427620 992197517 709303123 739740713 164820668 472381687 466094984 939701131 923066237 997607231 669497425 963330202 173723272 805768763 788093072 936068743 63641948 542958259 888393945 913580197 871926084 984172297 236482044 822671240 584822742 979149070 295820871 364788228 226635295 903001327 245969769 740189481 782491865 970682988 308961755 871742509 959711045 973212562 512255943 866096434 983633068 999356940 320332963 749176770 380239159 420114111 169673607 414256061 503627559 908685760 77219018 128743502 56260204 860585505 137371854 945583268 903168661 942309911 467406170 787862852 775680050 839278692 924571683 998293662 570295365 756669526 483184499 819501657 351938444 590670786 529695104 935064521 612189482 995021421 842876714 997771962 64244133 329262673 20864782 50263436 257050880 585776450 436011321 557305211 303704409 893519062 755335402 766216192 962709286 968698816 277001043 800913608 851685587 918029289 546614488 565235928 687302773 860676815 712600362 759130139 489008994 927492359 483448930 491272123 982482061 985393311 272217334 934678345 384900898 867794740 38744602 544008928 483332157 648796315 42200237 695614561 730385079 982857361 907218450 965640427 1759891 540887166 337130789 619140961 382992014 980337162 312795652 955578659 577932194 615151010 17665629 536965093 56970368 312934780 59747106 87843194 347646254 388518060 274945112 426845860 235651430 520451538 62766367 782316550 840115062 893375591 603701119 648819214 765413081 775601236 279366978 682220057 600196874 802111103 814245540 995101571 163579957 684933821 379677162 591703224 141404380 155277389 877633459 903248029 813183443 842609446 352902176 943937294 202916649 550754620 171743922 907635595 351086882 680245717 611176136 851264161 498100221 920273215 607186254 678128933 546885065 725902801 677899000 953128010 957491632 965434610 484048142 847526498 831221748 972236183 986650403 989900961 876739490 956116287 377673500 972310585 754090690 956059418 547601135 568358549 216284154 704726469 469196105 724022593 637923645 687827188 562988968 764967253 343458755 931566375 886622389 928167307 300486165 597677309 547081334 619626940 89581618 687228672 274149758 789680043 758457223 952639978 196385425 245189340 854499215 963500409 556413528 911828495 592106809 944378506 514507263 822561454 20807323 307200358 844377126 961446197 10622629 592663211 990590978 994645065 217820936 398072631 37043093 822579508 104059781 248537997 709727105 901969697 293104655 731429878 843341310 957018449 896378912 899033090 548978771 816289557 696092777 937234678 1553493 385594099 172211418 897865934 504952312 641662153 583875464 795074174 862241641 953780342 526432980 703352375 254471820 448025480 703583122 791194160 438793528 859569784 934531557 944923100 55554202 620017745 806155465 830593008 825106991 826138043 2146193 156984113 565865457 720526247 598216209 711717545 358325451 873485483 26434965 806185889 259072073 336658022 805937233 814468964 819175729 835527303 15662209 53551279 130887430 483800238 201973135 555183880 726067423 976838441 425981036 764775966 564000453 765035001 537756060 784872657 929374799 934120875 238633731 815445773 212371814 616854204 462857841 653882164 138183387 924261148 800677814 943696273 458530774 543543080 448258353 901983109 39585402 399400512 983378378 986288006 965489217 993877184 655788568 897306240 195180627 809534829 215150900 275261251 107984567 938867046 534938655 852314399 573842412 805222641 475480405 639133256 448122898 548309796 888649897 892169992 943261621 956215961 42300344 126875765 673960135 676357243 621808298 849598889 111086699 265561096 984994914 992706909 697659462 899295920 616541629 776495061 73158969 431383737 251605350 501439170 38761803 946798486 58268175 282545889 927402043 998353358 234094716 987044916 184226059 518770140 138988807 370694679 513905320 623536108 865691859 926030425 857881675 933582493 16868965 283831355 806509565 831016472 238837512 552179836 270282634 983525530 978149993 979861291 880279186 918027606 211629195 833601531 295037010 371914071 660656436 699081096 207229052 861589709 843653693 850812004 915956744 983820000 279686147 851823544 962554017 983966977 350337302 809601316 246701038 578411231 802836980 890220236 904549068 988937111 474850963 992666174 209895307 264217146 223868232 253393907 566182640 596214403 427024076 878193723 52697062 556922874 152287705 747902461 305441998 439970333 454865752 784857768 536070548 695352513 590072342 662001612 981257132 985847827 57735489 641103746 21428029 92397073 564553754 600811355 515497092 737503990 118228287 622213714 332015801 942414388 190606668 950858204 337466537 876357530 891943803 924013593 568304138 635233690 557053193 905071224 47864917 944539709 702832525 760156354 920465414 928511277 332531111 805535346 629825303 904514595 519501746 696865557 384221552 716480618 380401672 522569335 228792644 736451244 990798797 995854884 620648500 872308023 356874871 677554515 518063430 667860617 460406263 556400790 585820397 679529128 642622414 838673997 337627485 590645625 662911753 964926891 86492310 788684882 445983575 769047975 517435746 667103099 16594230 986419325 358477588 659283356 977859742 991755325 365850111 914183028 398143126 708593645 687378268 948856993 590425519 621536534 106774781 377598933 552568448 814476261 384534428 808920159 953307922 971412836 201937034 826917102 93186353 512533248 16523184 567172568 968026304 986420608 760648110 934706691 329008446 861075949 525378487 762487468 56086897 249080337 340511871 899365351 558027808 669288743 137445273 981883065 936640899 996390612 600424995 896945602 427541225 768298221 602193616 773995780 113283416 627670508 820881099 838580710 370542758 397684352 170610709 775177876 376934039 902909215 191223952 980828524 289578848 716160935 573158792 809184175 238194775 833134444 746299706 753087173 481146317 853874748 521575313 749757227 392916434 404372298 484588687 591829441 245187539 411197269 568336354 740294126 245578616 411692989 312831852 899695003 538108973 645392288 119821962 828093482 97709501 597983544 144115199 548997884 97648617 752812425 177871287 467015428 356363732 960823476 817632353 842716296 670215872 734801274 906417322 917015350 879274084 906147536 422442097 665362722 694687912 875540197 861921992 881139102 463428692 849201270 851400891 852049786 805898615 865659256 703312954 971395308 542210542 891232876 142631888 436837563 437098183 659838173 22478035 147944289 838421446 903994043 474609115 946613984 99776402 384997169 402994811 502207483 374407896 616223898 688784359 775299590 454952856 473241340 851862980 868883219 120459995 518473496 266164357 350439241 869834888 887733698 486201818 983490954 664340496 849456415 952817265 959989115 50435554 902014420 984031060 996920030 770840446 832835912 812764876 868450712 343144801 971652815 545784241 896306303 415969780 422149141 585896604 593120803 101694665 588277080 518282650 782016173 334457619 489313306 822747942 933951242 26939150 501792836 68148158 695743547 10382575 234016826 7308916 906080830 187874671 398492046 225915 283287337 676926724 855044956 694002345 915906948 136296729 189911430 162266797 749835926 934873821 935822287 605797244 835274628 518186310 834135190 948785954 980844427 983941334 997566164 711945311 988897559 764194717 920197395 324271301 752051821 739312512 755163923 785459131 973152522 62026813 461016444 794635817 945480138 91965117 463618496 995077476 997123303 244552958 296912255 777522799 845164101 462288272 565787361 724248507 798790471 559949854 598474375 161203139 820498135 863044948 880527788 785159063 998169381 405914999 786279616 115854794 162642909 835779304 868065206 278025075 623153280 768527907 986568667 378594955 730515110 429759440 660950240 833254608 967589544 957152161 976767507 344297666 636492152 365351320 916367050 428480325 447395857 409132706 523297347 950400099 954399635 157760159 662722049 882153515 928955362 533766026 737833036 757905374 914979310 54341038 381510944 756717559 791042673 65150159 539795685 614548890 777253543 736561982 741572667 30008308 335044149 784996470 997974043 756260947 954875580 442608705 658598006 963072567 990277672 690099226 786453720 430537689 959224913 910725976 921263098 4455681 987162101 348169824 566899510 697970139 871951453 705180373 876689429 937974529 959657322 388675533 878758200 235723533 534072985 516693042 836686004 27869206 417585738 492391071 920261720 374254048 548465486 598118305 892576155 279750935 327110295 138049808 402308594 115558861 184658463 384038141 942665262 238563280 347225722 709010580 927794030 641195068 792765610 284931655 860168062 405453336 531535352 693245127 713009695 761879310 885402565 269437759 830155500 468479028 480113793 979852489 995222082 601561056 969029625 201111904 831900349 857129008 960849829 8825274 194683083 688233377 802735900 969788449 978244769 258742438 951233181 233049802 627591031 974468826 994557827 390693299 849067654 15941044 799552278 413029594 653390166 334096984 670904070 864626655 965513188 177747833 727623561 919610934 966039234 108474729 449984336 160580821 836278189 66594115 201813835 12980421 833770140 266334941 788745345 945333759 986982046 440579169 726577454 658672492 734848779 112794973 178696999 301578288 342281571 918719969 964603230 529937648 873486971 780185889 860170109 576365991 748044843 456063926 661185079 742457209 866508596 424577767 600235385 788377494 851941341 605353533 784042771 274386160 811898859 196507834 625718677 341766646 682210298 722868810 870167122 935119836 963925149 826221513 906650729 432757947 780033997 255414009 858848797 42763835 249680540 690311444 943381794 447202613 570421307 186839306 862920557 898506619 901578217 391243040 553796454 898718856 904868616 914483911 968315216 354275818 619312626 781396255 929695282 726226508 980848399 261271296 494227095 925548488 956914125 77722731 892338716 920447019 971529679 98664244 261237770 367293275 558585886 280855834 668251718 534622934 762719053 765555882 990951777 773976521 859840243 900724737 966705165 533012719 694118525 902026267 902050755 693925297 953183054 399446903 512157635 263080325 349565437 774222315 852320722 549230856 607087159 751153584 816044643 953056707 956309958 359434480 611919697 82359684 894047619 527268893 796846871 493691985 626479587 550962417 659024539 612019251 973412655 781009509 851284913 976496718 990570217 133037450 366307436 90814975 428498307 816495690 874595726 135955385 942701004 466250554 577721994 646072315 961480190 753842135 822783141 969611524 996641773 631844446 635301653 865070543 920110554 492074973 533060344 504757102 733301941 699116396 970478922 575604056 660254033 921724470 959295040 449040502 518114996 832594245 947101138 374525978 712857092 492916786 995737948 19939922 116860696 804719407 910477876 667337223 998193314 387474146 767234745 921737713 979195862 432596545 623364990 812863560 880134520 320987668 868875103 632374525 797718631 101523351 569470222 829307506 938767229 819514981 972432560 719472583 934280360 52243238 896967979 38710200 665396973 625527040 654306029 726286993 852933850 92862887 432036701 927969739 974421537 569715333 794414204 539953184 639971042 597820524 769495723 148646406 730468984 167131155 520895736 525633261 756013055 597972167 997815539 408350638 422497489 9503055 899520463 860603471 972045752 194512423 880972889 709980475 734271344 624373934 890469034 624726948 632269894 290508040 365787192 666567664 821339622 145430252 324853381 239854077 359887595 57174557 973378839 689851676 858357171 611644528 817580504 745205746 850867748 745155312 834613989 378082605 486150565 37583019 874003789 625640062 627641745 965554364 996435927 58559084 72053615 532067326 668805340 40154457 264992648 618418159 928257113 17569321 746619800 629623049 790722039 901387504 940172404 634590530 768344421 408144215 987121661 34785258 603066464 881592471 882517282 460121161 587984105 178585676 644960159 384577530 507576699 33603751 792624089 923179287 958447112 24436789 935413900 750756627 790561002 775827231 830356965 840119236 946730839 816641102 830292791 295615453 535359002 665282236 850147523 416481318 701808388 916365046 954447517 77538302 337324315 136112775 202979057 433788131 622547778 306228606 878046635 653574209 821609222 221837119 602001503 865748400 890168761 980211281 980857212 85025450 512287852 265406793 472275931 32224994 305811696 947467044 948808621 793406659 897100625 215928890 717622170 285490199 305060069 768832022 865179953 847135269 952565125 249487663 378844319 123725026 409443296 970690427 973736094 778206697 903596937 548838263 720624910 44274977 277189917 860191462 972365398 904319171 923628483 434012613 957610404 117420005 985193941 492412145 869866198 586695865 672542086 932104535 992148219 375568192 984346242 121575601 220655295 202452511 699427741 474208323 703229157 700955716 829866566 396785824 652623071 65613486 738089422 377956880 766674531 500416715 891334068 574423678 712392123 372697889 703745087 441980234 496477410 780262843 878487176 76960465 653075165 863922966 893361393 106477364 900452449 746491805 856561326 239696364 418701418 896169699 991548610 14219865 719667054 450681890 543255352 91841674 963346194 727238196 855978536 762624935 936580301 106848442 156802665 773522368 967043687 92984543 859590840 664552231 769289287 539877575 777970482 222284062 706930966 660479308 844441920 416365410 985330332 427689367 764368164 202037528 731849621 482547918 611567751 197604913 352280637 831024967 981033707 229380649 403345273 731028858 962214492 382244819 836560439 868091688 980001004 868065772 942553449 134809083 613817275 66604543 978849335 311989552 468032723 467521236 881670806 885424035 962286930 870408018 893754028 477794819 746777630 418122514 628029039 549151350 929494144 538443118 651440179 163240062 984679745 253214496 298820028 154534671 237176421 243586542 703667563 55955627 907182429 308087259 872127928 178679625 503835780 373932012 620320523 503959142 884678213 292223871 802399575 429507820 962073106 631356199 897258835 872717519 986546385 882406745 962209417 669423991 725489303 863961879 900074382 860813459 936864920 153658292 993120139 444840650 883650042 877564687 947416862 566628874 779656299 679382556 988187341 684890410 750195295 891853147 972597253 9370409 978564155 857358868 970096363 666892545 880731614 775276816 970365171 96156123 599092910 97545900 183532413 33979105 586825886 930085843 956786992 19141952 432287233 896080474 900584020 535402620 758031752 992487666 999741453 5519806 179400583 115417002 166744955 618914029 638349114 215947777 772216158 643267553 862829686 330358173 342289282 784809533 954469945 452495743 504408550 664320848 878507532 643795303 726644780 413589170 929468144 894431662 982750448 814237355 992615507 79255520 791861003 749378872 879194597 513122776 767270297 13070569 29799181 366985565 701937789 206599978 882714273 497936308 779167499 482180726 583165234 628593344 993805983 651767962 963931896 895979487 984606331 323546690 868251832 928388002 934143923 42382267 231149874 131458973 742871018 380465604 433376959 366086578 491449594 183504444 855459695 695970662 899674551 717355901 721033903 266257921 488410435 632188689 913654248 750239178 850761183 668492763 759232211 880145519 882271477 437189902 775353971 613775905 929842670 801661113 914436037 32232770 982407660 400523827 540932033 577245688 956646476 907395972 959662702 457399742 832820388 569765195 771652947 949037054 987766197 512031199 783824817 391314770 959786911 697115645 733887339 514030017 643652929 454259960 774067811 404165209 978500369 669305036 749778445 777682637 819432058 645391238 762846712 686010750 734760139 630255386 751468553 565399188 651747987 294659167 821374807 604315139 910763942 178267698 430332293 894861735 921085541 834637412 960960831 286933342 828211299 878168856 984112313 34134898 80511819 25275595 671747437 816273358 841483138 658940090 869758805 13998124 653954874 410183488 924320276 436951805 520459780 670956364 722606344 458815979 511873901 112303935 487105414 147416631 285236974 376428145 568514056 507306719 539925968 879530676 918840150 306584158 630506973 370394309 769879708 411205131 487606328 473294185 643493694 759635810 837603429 432486510 570074995 488555397 815095072 109106473 645543275 660453520 680012827 516155033 604389342 987430959 999871387 870338930 895035535 251754021 689219534 905330748 939553366 402161811 581701497 664587069 675893775 300418630 434758011 330461548 662851845 869375497 918287660 778043122 892700396 577693107 625556760 532742666 572810795 995071788 995867953 662475486 840110092 262226045 745894036 923480489 941063353 441672331 971164484 410863683 512365000 743924184 911151635 890203204 937124055 600602930 995798378 272495608 342620596 155268884 299282282 268642778 822015443 189397507 909197182 337593592 885853083 194343779 949110161 501350666 613160237 404720991 543482657 597559518 824987947 477911068 927437386 370988036 689273737 586942318 892376040 167668530 230403339 671762808 947483743 161740843 279534170 582497274 884079679 373165076 422176613 334459541 996588106 891491957 974764548 32213386 630776118 804853726 849138540 564248556 767094325 867659180 948632352 27427006 100015365 224216501 898083178 616038053 732804303 896448107 936372520 799982619 860677394 775847129 979050279 67788807 188992336 350156366 524063405 347375729 788684499 692908113 712837162 882010082 965691242 62079333 582690722 422875185 879169994 901824212 955896577 496286025 795626091 168184224 367270115 770314539 947339764 732972964 930090836 783402347 803755305 226540157 443767980 363599062 906893624 434103513 487124223 198608602 498023946 65108711 825548475 867352736 913415128 830116759 954696558 544714373 987133683 613692343 729751083 249089975 684006989 806999234 813411696 873481079 920119438 369589414 931275484 408093963 808910825 287210653 985875599 122906123 466667359 369961750 393402827 538859757 758055143 925965885 956465202 452643166 823154591 399081937 441929983 658275602 811573947 679828129 941164722 825154203 830215309 571677445 700170176 294428384 499602849 572275571 620304369 196204959 938087899 730975585 731411820 952520145 998214075 761287862 952380885 523521784 907294671 8280218 324145560 92154750 897850165 583696172 966117319 572282122 687788670 596212253 950085517 759312892 974100255 159142419 681790641 96670484 379028545 661686077 726570914 725879231 760254974 17638015 707605412 523554504 649145266 447982911 748275289 293644599 770191496 898416009 983685783 785884160 815097320 671208725 987369648 11506353 86862061 112851615 265358635 321663276 628231049 272508123 861810717 784874319 960618488 958613812 983082106 384790711 471819810 282937287 661002112 526540217 989948251 942818531 980798434 967068030 986960290 984981950 999618226 177812819 353317571 273810475 989717633 965846699 989517454 229673069 634621291 952953220 988737565 881939087 919329157 471754424 952298291 80678308 626529438 316804763 680609109 629728385 770837466 58383692 440870932 725362241 891090674 610290967 828586433 414299138 621693504 468507542 517041393 199144120 908497686 291738352 970916629 796443541 952739445 941540866 995967162 243346411 623724536 568040328 584714735 247840469 589160101 726726386 961978444 815068004 973707908 464691015 844375194 506062543 692755485 225466228 511088714 696747129 976322330 701577267 935577514 723543756 848431766 615484930 754517058 565122334 637906348 121048483 701421435 915064585 967926818 591269031 897646102 945931852 988804132 39336369 792520492 704638547 917366319 936193003 979952085 34228693 586391831 114228268 746359479 651961316 807545211 549380103 869260974 627358008 761304831 117688491 849337384 41434837 967876929 125839723 717998414 700451835 884396073 207323242 932764398 963776758 989420403 196680935 321008663 544137827 638162447 883745054 976237306 195822511 825949192 751056032 844550708 270278216 350397990 994404894 996085666 810101880 922956746 294356903 357356177 133269591 322326208 577518348 919647883 590717226 637325687 39668161 436736323 402706501 414015721 180505515 237992771 901305919 928328595 122262614 852865704 761914674 802940617 798551020 961982272 549027757 702119873 578876948 841924733 767531065 828430688 541896267 642806857 92688215 269421171 756413375 892755858 648491046 835373155 906137943 926925416 537920208 952190114 8370204 39425778 489559277 533625079 235561063 972758958 448509658 948118022 862686214 987464580 509312935 558902866 685647161 933844655 66625529 510019532 137969151 388134834 415009772 717984536 593896598 846347932 68910375 88900153 575795480 644986599 941052794 945909109 620363358 660487877 396978671 522014219 26645389 626842882 275415190 807673464 415771804 576025418 705566290 987702349 705032338 840845915 769219821 832581533 154559480 333429211 794040038 794880394 180919176 797518803 826050396 901442662 142563224 556163463 817389953 896624101 762260083 811938756 256493784 319314757 991150223 993584526 649997922 720307353 783199121 947336874 390118632 798983850 787331537 935632028 270319110 305735832 389023879 823006179 335106445 866110795 776263989 797680547 917213368 980616741 673967893 770664127 133822295 256953618 935773174 980983370 345079371 990168767 516923618 871318729 193470855 400438756 277857131 855422108 977860211 999207502 376790806 403610746 649143195 952398714 474088673 693275007 739798094 904288850 523288662 648423497 820165440 861863290 427272234 656816761 64252013 676424545 693033916 801104374 420591821 837715601 605070806 722554829 728420530 747693402 231497607 876194549 520569889 938927605 942092859 982107363 559564977 674385008 662218234 882001516 67908287 974923633 119138299 504647353 725668792 810348160 655858964 777057098 494941715 735336212 787940925 864875743 168642350 697916368 294877259 698239313 371689648 889528271 906892767 915817160 836218744 839495169 953625802 990004235 832966165 969498545 702553260 747393279 116853199 295057973 349638523 713042050 60826851 886702067 225109640 711844106 160237981 303282386 275969564 848133702 984172859 998935569 417925450 924380829 898447033 919864863 230134970 567435425 142844924 377607684 731389263 927301364 241862623 265343745 283012499 835622379 549578553 549594388 238567538 984269445 166087606 808811494 490591245 945620092 397703158 840717805 457708299 850635571 581213288 985914816 565082237 612463468 671295586 838527071 159810072 942007136 539876419 820487076 263060748 706009184 369960868 400561842 80769120 305457009 753360747 796652222 667185971 775850589 895812293 925388522 60714009 460395958 617707382 912259094 734603352 859320814 466178813 700537485 701862177 764155695 535660570 876421511 226637122 555887662 297758567 662711356 97412894 741817954 678707827 848588415 961310887 968668451 261230434 804643906 326060024 376911653 861197258 995277246 622265143 768653942 357630987 549443323 795553781 822089576 131331779 703167267 836911814 953060764 213750481 351086317 733536975 961336313 17091452 500720372 904715648 959839521 864261564 912265146 469078021 917032293 876223205 878684382 147843594 869029846 442493106 764230143 251943767 652919467 561065932 789870409 397340857 522874497 889142737 988479761 380916115 878182481 619379487 766609371 597632971 702904971 547902775 759093327 925077176 969818052 764039279 884421949 418477921 890202441 870525109 949614764 64234343 185559828 864703095 910387551 91604683 704318550 612198999 670086484 905332062 911810539 699503883 753293519 917575508 994525966 609788902 838187374 567325728 946002574 592281087 802552933 585197878 638938309 103369434 470982474 927752934 930145280 56523135 540070209 394108229 997181883 119676058 533053223 168103467 567675643 305327902 808545284 12639080 815092032 577252665 727597996 288238837 813309394 38855327 831498325 159098401 866143092 905702462 958476121 136761048 658420470 667983952 982676004 951689145 957921873 378080874 885410497 188509190 268262130 593641432 850473590 489070252 753792034 612472673 779897633 730937943 849615144 757028649 952846226 175251293 260880153 967573680 976907812 145854615 815927487 958286104 959449076 863992608 932459493 762207710 906713505 612176130 928223627 627699208 738501356 56142862 633419608 227997751 873292375 311676719 514864500 356392923 426158204 490390399 681463302 223902999 314897583 147597660 839325052 677015521 987847857 62459969 888745256 159215391 881104825 90641669 291074557 217440695 780722635 988347289 999766241 382459474 941915432 792050676 957935827 810981763 900828952 565383372 924403651 787977003 998968994 566133027 896235473 65171384 575203017 257671047 310820648 534898531 622702461 368934405 813207820 338314091 855325278 206861309 552440172 579259765 740278207 910813797 962018470 93379136 545577854 318207132 977480959 94148037 829023930 404682603 979917667 672061300 874632321 73341675 831367062 616572300 677811776 913558656 951840663 548269618 612085489 796786703 871391848 126470702 217336056 993391734 993980492 355142531 925560964 529351654 551564338 96833550 613019971 95108355 902623605 84466746 714774645 776749383 956159154 782575718 885647578 30911732 85670866 122718987 619800402 893741217 918209128 63344015 746974467 627289088 670586409 808732916 818067049 515463760 735909262 537124126 923894984 203507008 783487043 286064454 655288039 58063534 489276727 387360944 790763610 7297013 24333751 60050827 897991549 36218638 442610191 298125657 862152760 989062279 997047798 560044896 598065342 94719362 964885412 887836867 942446035 537777016 698785136 927869753 942137380 678091838 940074728 267450028 769300243 663396835 864704050 813868855 865404409 331426215 671215403 343214706 441465224 1765958 39854397 293963299 320882518 791491380 834560754 631052700 980166187 737644387 853188935 126510358 582814455 719774278 765208778 534879905 769839284 211752957 604046116 800676418 887277159 724354544 835551846 284274630 892042830 276286992 885937096 821530720 940707745 414984972 457624413 452381249 900608584 754777438 887257841 971022537 981082583 449393998 718616720 983106738 986687155 719102387 800493554 935438631 988130090 951060778 992677389 806563461 984704459 496134730 947828870 57563964 425108801 854450255 953352209 12791829 257809760 615056448 659325260 816475474 836018479 192739917 230894807 406365116 917138461 156293922 484702528 944373530 962156842 523113281 762098808 604582948 963033519 192267824 405053714 298168366 747719627 333085655 478626618 795392475 922059113 392890606 806137876 457597959 828894121 838175771 916519587 228522227 622696791 684667866 876310023 821686109 970350780 218981772 713951983 308745765 623124613 691642685 875125163 150617554 453812842 427146345 860734779 468812724 730280492 620747475 629966825 622368337 683740394 878841024 953922243 526961887 554627682 946566107 986086699 193001440 756577676 329647175 647513595 693638126 736866685 161426785 364231230 391415371 657888372 771628839 864955033 988736014 990449878 10340543 270716420 944150305 962728649 427151521 816888361 132755795 678051300 232806567 473131690 707353062 796691936 54442494 412189383 494038226 805351513 364735675 532547259 644149061 679756964 765282798 842479108 51270116 649125834 577939793 903331087 740910419 740932558 432681073 603203114 315057122 895177283 268124492 463167782 202000685 729968898 922954253 949311031 543912812 971316162 65263671 568413808 906003375 938587543 827373536 951706829 522555737 749165539 122181532 939756176 573292607 914170532 138532940 403208870 655497260 871737127 905253174 975044206 389072322 829004136 504085672 767006505 572648955 750397416 334692226 619369365 779111173 932560551 7218491 567099847 965810147 982238311 809401658 874960246 332221120 388609090 834968193 842186987 965984576 978393390 990456236 991729240 645512817 752237963 76173698 794049870 276437050 661433926 877168435 982013184 32099443 131112926 248995026 780488341 84993337 277978764 879447686 932224132 224470234 922789011 620265475 675701613 211520628 308866934 459060603 962919203 286386501 427637268 721801864 852551134 865803070 981613101 552070640 562440048 997615240 998314819 261205409 800388564 950995682 963133712 42303947 575806719 417763525 968083477 77253792 507672271 377108959 810511886 452046003 846102904 263158180 848164998 793000855 935392864 340152688 408664854 327659085 788782181 267615692 372764536 755579049 962080882 645520997 910375842 547773834 599218490 971823203 983766181 795935352 872037481 702119437 834990929 662620337 871052906 360906607 911204496 430564889 489672740 211117073 665724702 588622660 911783211 289050749 367527799 348671960 706196109 559367144 582199989 344506364 638717969 357955177 525872528 330332080 869342502 563805513 716422768 977269297 985883188 935628929 967954980 494409106 781115593 458148760 556117000 136271701 544667196 408445600 433788377 314857156 367632131 809161277 916793770 641958312 757160924 699802850 880220303 577979159 967820244 483597293 960240441 695523472 825072452 41613664 616874533 287896574 854236854 76829673 889447778 255174838 615360216 939796685 953957906 277672429 408507690 332942857 465429228 421070180 547472883 371960349 775297113 633462921 671740815 270646606 882851622 349773468 737562954 364167327 799068346 294355332 902656616 559889910 698307853 55039525 974212542 102350955 797883879 999459104 999632645 573387335 971225985 629247443 954700897 580408379 824432411 529535205 597900423 980916449 988735477 465614117 499603385 236366601 939960777 340657275 810110119 909759321 992834111 836686429 987249276 328645031 471214523 750675903 973627012 390667512 901740501 202455593 834020567 149701327 368759336 160135096 582232884 85137966 144640995 562513661 819941196 488186508 988501788 152399326 629547877 432269775 932946280 192172478 316654595 195235214 708183580 666609610 871224149 944146038 954496526 188930498 274301995 311763624 481341967 403530637 653040884 571905000 917751075 82804459 536061786 62485968 622656563 54819508 193235559 846068962 881281119 554331925 814696861 465987845 600522533 662164928 691826222 83870172 943000436 566587057 923671465 347339773 400862201 130624774 687434861 701411711 731440012 950520981 958740855 96359156 585490105 323177349 650892967 347102351 733086172 36659319 678876087 957156788 968144346 138671780 391705109 362873609 993966111 660029515 691798679 310061507 723298721 429853657 855033098 572192361 698467226 806795589 982743455 863728051 893381591 386331881 694063459 822284470 948516861 883782656 983193149 33487710 369928416 148529256 637514199 7589389 688632043 371579365 488894210 674835552 809295098 189485295 647153989 706935084 863171304 330184189 339342525 219894497 605345632 731314465 865451155 962829146 972127682 310036669 674370928 36959002 745847925 884428476 913190959 48264002 431052513 503835664 847793458 418493779 611076778 139672727 233994024 29857405 304249710 789376858 976363978 895159048 919348101 390724913 807673997 420531540 582222938 186743829 951821173 143216399 568967816 963215811 996790567 994287981 997121941 931466271 989295097 686096013 964520830 795493922 923539596 640392986 709589342 808027200 984427016 202866624 603887379 421489407 724087478 761284187 851351117 970286028 980123907 728521566 750166793 287849446 311730699 16642475 456636454 615650518 811345738 80121090 192254877 516539460 570111265 791865835 911927447 785717289 819906150 70120031 494665415 738499583 759143789 655439706 831023292 911113609 920956573 429097700 877399167 359121427 961703199 243429677 683614542 831111235 989108454 867731037 992626910 611307369 668298667 110114234 235311540 152614373 389114200 8316562 882402894 574170049 833283308 87899297 599156788 870725306 932277624 983397529 989946141 780611076 882901524 173302912 277545147 444223835 537688954 543751900 543770621 621789565 628190646 598649243 670794937 681585455 815823571 113935567 938209420 678593700 695683010 343860997 799600837 760632206 922032553 59900383 101494047 821078308 865639285 785770111 828736948 984405421 993137127 946891452 960358615 667757652 753247586 463824953 875000283 633816532 682239357 539833776 925721436 485807214 585001941 941633810 980484049 114822625 901089877 114063174 495827566 379436067 926601317 154773492 875657448 43989450 248981947 933114658 934960458 902894331 979449810 453356539 520238628 506187845 858770464 769244700 927976638 144603269 485011904 296539335 312622212 814572864 994269774 38373779 851502785 301862183 784019905 376210752 529764934 913384176 968887427 606603054 886107691 330833865 745351730 143980753 421545296 281383038 844160909 339775750 702624096 892397238 991363723 39907346 592148616 911643000 977065859 431706957 806272157 992348576 994695524 313698732 456331361 99080210 301714879 245040302 881769906 393025359 863659688 81240607 677419066 883611850 916592049 605201400 646668312 191627277 854035127 624551915 763176315 349820112 646212232 687735469 906842639 92431419 165516677 205530379 253900316 406131807 456978554 889682002 967850921 486641980 746772544 926954005 969565930 703862047 859821348 821016889 875213181 698115984 794855327 85756846 634716117 834244858 901811326 115444498 946439389 789013124 880663032 437909058 828032833 257990976 561802814 681122922 716144040 575460327 617486031 835145242 870705874 998583454 999009806 720426927 861484791 786917066 949767564 972870236 991724483 801271784 882231237 902225851 924792635 351571419 840467501 250539264 319604472 36349090 457232414 664089483 793681240 236666428 392987204 277433122 672186092 467575356 978879404 345341206 687373118 558078472 675807649 789089606 883094504 535417931 813685970 970158883 986412966 975050357 976522776 923123276 938617189 356796242 608650383 556639066 618534219 853554947 926028676 20315478 231265971 145912937 529938496 519866915 775491185 405606593 545936938 594239495 604593999 911236634 945436843 222018254 774784250 250162785 267353276 467462138 504423410 981567927 986441254 372720522 916404398 795520642 958924459 781215371 790472902 894255723 986508769 519616779 719174730 726589941 884241126 154427372 600493383 833159874 863649502 952606015 953151643 887400280 913600251 610422746 947530478 786886955 946207989 865948031 981598160 499529519 903980821 241605976 668716506 392341740 442043062 141695575 489513195 629743851 796673851 489226716 847527547 259122915 917936600 308493599 540246514 142051430 373015784 838417375 965285690 30029306 101449458 446424263 648046009 268216657 975587403 920340143 934649428 351798796 713633514 901330332 965205825 788087746 943365371 293926529 428889220 317309978 962736643 699931115 818781583 672280658 876309700 747255875 856020080 449255361 614672147 240772050 490114167 37573011 741360815 617145721 804558876 826279556 912506150 686837731 972542396 428398762 891011199 187404560 647750258 993545757 998603449 900884345 916604588 40924029 915224494 295627781 605381129 161848516 710331756 185211727 971983489 105635155 164343315 460300324 714308967 203825876 951820266 811045101 936656405 485384723 515571354 821270749 916866018 61804306 798716348 831323866 833846453 813075093 852261036 709848842 895340284 124555928 401372227 488799170 764730423 544662077 607822115 394152660 983751984 375185826 589096213 802901822 846261171 839665364 855246063 100565395 588039909 228930664 583567589 5510925 977212122 377684528 723506551 320302177 640892622 121505906 400217750 896697394 992652904 845336372 876927670 663327935 817768460 158616395 906182335 186732460 617689829 177454363 297566540 271141072 646100831 663329070 668159507 775050092 860255683 259502306 796440927 712117509 789244585 86351366 219625504 885399696 972691041 562360487 767527672 121180588 796603787 255377891 604838922 562126183 815928194 76322648 621658286 919376857 926360802 665753928 939856122 503360163 513133821 11728094 593920502 692431464 787937970 546361535 715092872 237519290 422958422 582172351 588601853 18750418 172447864 956697251 989375833 832527574 938868784 648958677 752529152 637267724 933047549 228871391 229202105 777109902 784897243 945030344 969194235 225794425 684879692 89722337 708535000 572581124 954863539 384013152 743361916 601835155 832059521 732319114 893372951 585907249 918962002 9970291 930298069 759089516 785290386 682793339 770093455 978015430 982209052 730047138 940608155 147576332 841319780 884100993 934696246 663971616 951229129 970143242 998597508 384079470 636508805 281868170 394415041 440797047 506834716 916123912 989285823 637349589 765439641 886870243 995861377 213074782 634591184 992104616 998866085 309044581 392339450 489493113 957784374 814456775 846099267 296971265 589127169 393741760 448393790 699515278 989020828 930141805 941733280 749552614 809390616 621156312 627837663 298662715 465667291 49022588 763071033 116967177 561660978 783556823 882515307 929974398 941074494 492499986 917671687 755816749 773513153 76511061 711761867 221335006 634322663 419999969 948755908 897148865 938494134 752654365 878303747 184542281 339818124 312894307 627745535 114201150 723032350 614184720 883639688 676995749 782364010 782780080 815771977 603667567 700449373 660883684 976208477 670448902 676478274 520049630 612738714 353898290 795402391 246881727 726004084 281224882 843231761 25212097 880689623 159508982 725070583 639577789 936236071 20831026 784399271 742836427 942305689 463080907 592024021 771177933 822108708 119707696 143816861 857265729 984192923 551192556 772968242 225024032 749228216 619090645 850487498 349051217 684963159 397360885 633734053 978196769 995304847 819467726 893523378 492042324 620149487 121215020 967480899 41627267 85837522 244604615 883616568 735248681 895444490 383280859 696717479 814633500 877393198 559794744 728929477 875706183 924799058 281871751 528381960 314321653 772040684 686373567 687754355 808229918 992003629 539076846 546068334 844807771 925849261 729699515 788893448 873341081 960600474 142087096 145936997 25941190 737411109 376395370 859707432 390429239 645511813 298419969 928880409 643537492 829344187 750067562 885949909 925819433 965947002 522676451 882727413 140259593 789520064 618687543 894676978 353872708 606231483 83890496 603391064 437468973 635180062 731221672 791441581 134349814 880956719 687146747 860657182 198007086 887557365 276774963 940392858 125241906 974003130 966302452 978253925 363731052 565473384 515549997 803550318 367450382 560894987 466165845 814713361 856592930 938181071 229313366 619817220 332350390 861516382 506650159 962106706 824623709 953362229 128652701 362617906 595564254 946332194 54952553 88644290 133657783 789498344 913173442 933036024 661570456 725507768 974496062 975125553 187982029 207138667 419480020 472027757 205646326 857610077 480991784 847751216 421284477 786337682 810075818 954039950 43822953 748493897 243877736 870555944 110705808 512048310 318771094 705855876 237989933 996623427 758008434 891590595 786097700 863877300 995992782 996416031 427378710 772157743 205727700 433044873 205634100 216110565 767452037 819163436 766795802 850919585 572115560 864319649 921254829 984164923 850592353 916744750 919759449 989710216 65517271 166944386 434543961 979081650 529735962 739622601 702902039 779344663 81253548 128682131 162002221 815257453 772258433 871320547 362518241 757704167 202849765 479969073 330324256 552307987 16997837 975990900 663593329 815318721 841669483 942299679 44971122 345929048 798965631 841249902 189154228 755148748 166987305 764498436 488815495 857462969 125083528 212011925 881422242 945924679 160534979 253652141 602271446 786426143 691972638 988061218 850111322 939050765 828343322 995094240 602330318 775132290 726326946 820421136 910061163 919613626 664251551 978924378 553763575 558886692 564152184 795386558 162898540 218927007 647481573 747492403 460599014 700849959 177092102 881980803 258980056 422677655 674307426 748923097 331571815 611744235 488465268 791356008 659060236 901190122 773767197 957858547 466441793 481137654 649522051 701852628 376485394 395205464 873900703 917493490 636550282 787901961 205289906 950046111 765878908 876957108 984770593 998268783 994158368 998085656 351035202 890175286 136349218 696669778 983632562 994740005 833336025 922721167 478022656 603677672 200904578 245043848 130902192 660931585 279290702 455875307 984622289 997910089 544918285 964840655 128982833 558091073 84667215 823266911 31493556 317410491 1241355 885289737 86930203 933720897 595296034 751773934 458587107 964180484 820374770 935449261 767854480 976798980 734486750 803610247 288358223 373494078 266915671 269543092 621541171 895653802 516766837 970454458 708710488 734382639 298159666 482862062 192097819 938109569 787706904 809695037 974388535 979127948 580751032 608051778 469315359 929376010 480588842 798784453 205900134 524988208 300096440 644265015 612855634 807805412 375826077 910306356 646560663 940524032 270013702 756875956 185691053 385596489 616445253 966566063 195585244 627788640 621450795 866908024 455219812 634587861 171354274 981318549 48382668 860933804 233840215 999734880 185717030 644788146 785928220 962104227 226936272 776761767 387385702 885386502 374830321 986474145 348724435 690805453 961453798 995948720 30561927 966177167 578201605 874892946 647173235 740543092 729690159 975564644 94507703 155771739 806630638 880049917 766382989 896355564 314063755 393856817 956100890 956230779 431614532 467090029 461810554 630301854 797868096 810590928 710341965 808890239 701766346 909049738 661919927 750663897 318156756 614860489 941548421 983635813 38516356 91710338 918319072 968450686 868427557 998909742 673702214 974565183 806538734 924183395 86560949 544593068 191701375 856675387 168793906 719208353 150814673 879408668 625479604 647388736 698315435 777877305 645069800 705788921 506373757 594882734 789148931 972289441 384069403 678401374 514145874 589815843 857093296 999972760 320456329 642694770 83745657 760793933 920243026 998653846 728085921 849380408 225968781 549851025 262475453 420565295 302036951 460461543 191229660 744813063 443421980 518552585 66152663 613009508 713711539 980894661 10004261 630643497 387581665 698501436 674541352 709995997 253029015 645558585 184755137 357478159 679159683 826391042 251811796 477881902 785562909 833115526 549364376 816947296 657660346 947298366 455388036 599048543 535153087 967664347 163822954 333742556 336759235 339830903 390597674 926547100 947361187 958118438 528123771 832741580 517013300 766860615 971668649 999217084 968620224 975310311 551161574 908209612 946049713 953218233 622875572 859591661 526943629 860075629 839764015 845124699 451189556 957166114 165701461 672374393 800879822 873284986 583893358 731461196 708690259 935886833 301672826 390582778 331316693 566857399 439643719 712937121 499430640 612962104 195628906 516506222 824731091 990199199 808209722 850056217 892243736 985394573 545825311 650539297 132857580 167876849 188652511 881520268 956329922 984083066 358318135 972268905 976335845 977349088 476140416 996943993 811215031 827871386 979204784 994940403 796759887 946885443 128809265 792109617 485806590 967037849 648320756 672051545 884581183 930955982 923307056 973235027 687777273 688737545 282456471 819445947 975759490 975807770 493160175 664282543 11088398 542129345 628118556 920764592 665417097 854859353 52635225 152952032 143548659 831254706 637662068 901506751 711666174 885394889 216465734 943283864 917992363 992457554 105284203 621524266 735050813 842639937 978639467 994754744 507795542 610448432 768599488 829524058 518975659 619291641 391395699 901274994 112289357 903178020 103064728 555425494 923027690 981995911 684570924 725261211 229192565 702885051 103561899 137743346 780104629 819640629 811900983 912850548 369404431 430842837 168763318 386555270 889218201 921616435 823366994 982151967 555382287 897192874 461351701 880191135 326840517 881342803 606524700 827116455 697626631 805285062 788685439 895403961 119061652 341661903 914350254 959198273 910006234 934022396 698703348 985984461 34526724 557416627 718431646 937043860 825857161 930826968 704673791 801743657 703224462 867510625 85810738 168659876 984587574 992183002 347893753 908720357 415428652 585111413 462517783 713790627 408081747 746290311 570121753 639602107 577982123 587750071 433996457 844126469 148269931 942465425 317977244 730497813 251040321 430344343 838023060 945196593 371153496 816390103 401396208 499177872 985539701 990512763 933963773 953018530 54876529 459095271 993000105 997223447 157425235 300968661 205208449 935755244 129313101 826611330 79912945 735938942 184627221 781870700 294337493 592310207 107454034 519303919 872733959 968583844 189737606 635772009 11744038 157086141 26380531 150338433 626173591 842178668 813476116 905046187 889197923 982854233 113271256 533667503 841642196 936709103 403778589 840979469 148667557 248313292 121067597 138937007 126982521 422735670 265943915 327919556 62569235 90211360 1283275 489130761 186575797 763527785 750687019 869476630 924571378 997354911 343029770 677280896 660036113 822598789 53374427 646917755 221571672 954468904 3424782 973445913 198123571 246198610 479047780 486521125 978285876 999991428 926355233 947789593 196135126 322512944 82793521 454432324 579922672 718221686 570830730 645097600 532906672 695667951 335023035 457181705 15932145 589483850 787571526 879726810 923170072 973869385 283585200 715583594 682275056 999684606 198339015 395635848 139678448 160987890 791609086 938556919 413970410 418721466 252585166 666232436 454953358 492864177 938460931 948853303 204884409 889652372 268124170 955128287 817478586 896200772 686018918 944311682 930451559 963824335 581690587 792580630 743024946 833933033 471485949 585472140 391844082 803942180 433031670 705866126 64104834 157098305 645068886 976122000 622057509 623225108 603321856 637298062 424843266 545759498 838384188 925906663 142788137 611481676 874283924 978829338 139125180 812577155 631035624 884888447 886195687 971776145 324513308 839758635 663358497 859530461 232474352 550383235 136274851 143328541 825301260 881375937 164493406 340060747 594108995 832315694 543318320 968666958 103885157 548574322 783232923 807802952 254649612 694520733 122106784 156751696 270377978 689725846 457711837 677310823 878391785 964694103 204586371 386392462 949136156 951457175 386775015 956297411 758057638 966084754 649390072 831444115 87083125 790440661 660899896 865009132 885045366 888427063 442801955 607968877 228420299 239269445 979775373 999436193 313300767 328566622 55014120 839145904 305142148 453352536 983733728 986815029 109150097 473600148 355201489 686479292 810996939 969081149 45225890 480940858 818814372 994587880 559623380 611886270 884129414 957022442 702286582 988124141 86592195 249968133 234530193 461133890 719524418 838085546 266567360 757770457 173685217 378963855 522926841 864652606 816860589 843684097 946308777 995616477 745226143 902433888 300811597 799301628 630687866 702280024 173836045 912454924 267402352 338764728 147207507 874837848 871980654 923599004 290036218 793403847 932069902 948321115 494211434 840488396 567891022 816664073 72750550 316594996 628556849 955954601 776836434 787831206 177188652 962825139 411917334 745688274 708340475 733320048 109660426 242677902 12844039 354835509 581160421 832221199 407350987 427288917 898798249 936978131 368084235 795516598 480603607 749141639 310283722 434470385 14348187 236524978 683235870 810069824 312228337 620446010 35418490 602583336 366488271 709811504 993820341 996296775 44920966 675911728 568498008 770758844 741735084 946913088 443741389 897552384 65926719 358944328 901360498 983562271 333265139 695436148 322726585 650340610 224047395 558326146 252658913 987642126 597470810 700237993 344504960 363785368 539659074 907849375 245540502 538573672 409710215 496290594 499641024 505202435 905277297 926535708 462755391 495678177 609965006 837377876 669942036 931029688 42616649 747263398 247932758 575988828 70993121 990541990 221880209 339697965 97027185 203867352 804458366 813088673 342562526 986037781 786724986 951197193 856424 534217157 308629652 750595121 106045043 840105834 916717450 965843763 387912386 774510776 30167509 153087538 982453778 995248672 704908833 887121077 239332450 640814945 60460820 199262953 716707407 836189509 452948885 840167417 117926568 892903779 14815151 67606545 477529687 790735972 517826768 837937345 724726806 736618212 459346751 614676419 332781758 548547173 236754687 853133171 186338766 429019059 154660619 545310251 282329626 974976250 842002925 843391122 609267140 852780177 254195118 988034591 67850886 471077825 632329130 796884717 155903307 352992264 312260917 580414664 991784489 992069769 782556598 991704125 203304614 844133897 536081824 697894171 594029362 823030860 283023962 983336319 582086247 967856254 66282261 844122270 866969372 911293038 364455939 922901611 338698263 440304053 194696017 826491901 191599526 822313150 20157483 360453498 442909437 891293934 819693849 829606428 713917460 830907155 617228494 657251554 314026678 889529792 468584368 821574631 213830538 499468193 977496821 987951717 956046105 995916805 518642079 672075974 952203199 972505460 391607780 542598563 438121390 910567037 629157272 888773099 175661880 475327767 162978995 603122350 342854211 555573961 778954928 872573261 813543507 920484320 441088289 624254745 792420244 801294998 683934831 957224738 746926599 766496864 194109065 792739773 245523412 352494433 564774432 579323126 537180182 617655848 819869653 864867104 413467112 641580074 87543154 640647844 712327876 762438472 811100463 847707699 483923817 681431678 24970028 919263630 216107612 580981617 688169425 791307337 850287776 955472554 140796247 466898506 646625711 768746263 111377065 671544682 339315783 492151291 287106279 507201326 161765651 702736564 15398816 69996485 351679220 825351281 88929368 788427242 390820638 931706848 136303486 991320745 658992925 971723536 116305182 392208207 27275487 936136836 454745938 498844355 827405860 891421251 492196619 506432502 953101186 969895194 92531876 883497804 608746934 943065449 928928716 963008830 129628867 299681865 884746371 961798424 960824180 991079691 271402402 940428134 194975680 886382441 143660723 221839390 605616391 803841138 115670117 184851877 813120919 920962862 919113802 930959984 632526768 829113078 674198699 792046164 755587721 954165134 371980417 765723687 818452369 838445992 958838932 971850108 846575037 960623655 248888050 301955249 988898647 997089530 929801922 957630177 135790887 733310002 215339965 986417318 7892910 724868864 395129027 648380424 335909664 580048662 261460210 652638408 980464088 998950511 554149464 881395804 290695786 934697066 258475955 768732088 901559349 948828362 879003145 920994089 711437920 944138405 174702162 803167318 957528701 974235346 653430793 786887909 302787083 908829537 2940876 660773296 124033193 793892262 146151642 803024809 334052655 846829219 883727311 889152176 65301966 959082766 105692146 935607500 768108114 864664850 362794368 602525568 155528800 855476790 289542128 644710072 308193293 484393435 486893435 556365381 486433840 834247646 32076190 716993844 26306860 901524560 860943364 976499450 561979372 630784873 481698544 802996958 65603535 663593506 408029781 488487512 320424573 848504546 942506207 981612263 581711338 908594088 340627136 855499332 158825410 851637872 223255398 457009927 875428618 939160121 939848913 955533657 522972955 917413151 910538043 979135761 437456406 623972546 105712426 743735606 927885179 947272237 170762850 230830681 962281760 992028735 316955345 593687299 690774507 764102363 395462302 701248552 33358704 406591738 411661793 549250420 374142690 685180481 550445967 952452407 336738863 834160438 260858128 403307449 301794637 470156725 431693786 477899165 798670852 893290104 410623858 938642248 913405454 914829431 955874969 956698351 183552795 533302938 938783868 942429833 109764315 853040356 38134285 252017980 625607515 801688174 371440015 499963436 217259662 587826473 216706164 369102891 82818725 248402469 534694551 910831303 448870382 482335160 402760799 413630670 163632726 683373565 467654153 789398084 686474174 795965321 964396775 995370511 836308178 997663610 216819399 617453067 240797553 979667046 970296911 976930525 632610503 710022297 966818966 994564125 79153211 606802963 889803181 894936073 929336855 986077095 820686491 956512611 418791527 972996856 874546687 943026959 474556524 966516915 685482255 749871365 589716416 782875806 618062832 873816669 342387468 583930420 678409838 971050082 993960135 998751006 748419642 773654475 854434047 924689857 818794263 986121135 560435177 736422915 79155520 539620086 699498694 884906914 185157225 585775438 855368507 980510549 506489528 849449556 18409022 265023606 753639413 862960538 507924414 621009523 564149960 883441801 394814907 510809278 743520926 932848641 608753502 841050618 796257768 856464455 770831975 934184991 491499234 994167844 167233561 737610764 945113868 948613626 149756185 272662557 39475428 50762397 456839024 836669806 544154379 911374131 853987098 913636004 55787034 384164219 369360581 832292639 348581562 654272525 424281265 835129771 67634214 208314513 539926561 579885851 730897303 975588882 428736139 452824589 972766519 994921248 920796907 963529080 108745006 989937241 90237035 453139776 22416274 376356200 553376975 865997772 868865138 935568009 646874787 692954742 470596056 607009573 570268130 857166389 665218542 751356549 893905808 938444923 290491712 697098795 776914499 966483312 334844765 529889662 269790272 786700703 709801064 840136639 3514739 182201326 328109055 514218210 514857685 659464906 887362418 929385756 2610562 719826717 726869281 819104876 153597493 458199382 25738638 67285254 176875392 311975704 96144311 515894729 187449734 224474376 441023068 490386479 766867296 905902945 635076970 939170690 187232180 720266218 516708340 898652990 315796738 574479086 596388556 627456561 384766918 519301565 154469880 447224947 147528974 351712482 198081827 766848904 356954744 797405618 891198185 891313044 321084083 363475131 583445572 906879916 32335063 307845642 155890792 596778923 78487263 990816334 64638121 796613280 352695418 662306049 674178309 725098077 175918357 461615909 187741517 943847838 729684314 891886760 913985610 994497554 792744962 851495660 998276891 999388877 201009644 986004513 406775271 922238096 775793281 973833270 398280486 790372717 724210330 745502801 12855819 744406113 138536736 897553095 847162253 850144213 316216901 723181314 239445981 653795398 690027869 834704417 525820428 561951163 844991224 884397886 645973856 806911735 752314354 795750161 118778110 274642591 298719502 722563352 234541980 496821389 59639081 751653881 752661950 807211337 386035335 735810536 25971899 216815137 845462265 963832670 771854540 909092836 363918962 958782476 515586797 987000893 374620268 625589996 377103863 432023578 914802213 964767827 416623580 562206237 87631304 615370809 917355265 996793575 442792519 468019953 750462818 761743759 952069899 969246742 762227618 814298556 765074800 801036468 337222984 928362760 619025417 774381517 196275875 582376061 319303205 669576577 235792187 857368561 832115196 870584994 584049557 751238681 151719201 712201374 443281022 568231756 605445481 635103960 192448651 986315470 343629437 466513472 388879175 690468053 230072404 700561801 213009635 323517934 403776874 738446143 924458610 974889000 63249559 753979082 359504001 963514626 478535054 857335864 551609614 645547380 880147100 999533067 663145239 745167155 638812582 707612914 936794300 997307145 736471908 903616520 443892067 721953297 853867547 972826827 25179367 935561526 195735269 313965570 84978721 198962844 450539826 877046302 267891102 900816548 180176589 246634344 369895557 690094016 957911224 999131800 858128047 861642824 566657658 916914615 453051159 659344425 643784034 787405175 432131169 579045017 494876728 779503372 876668912 910502286 662725827 747514886 682986128 845827213 75432895 978492163 130279504 811259308 532814118 606055388 506654292 997127630 653208841 909376939 104817342 723956656 48992176 212630209 670626543 673106296 916255061 942473726 156075533 904284950 264478783 513812707 258896358 935413669 634947049 677835743 740834612 904029886 255877239 867604239 536887835 753616429 697742100 874819064 851818765 981391895 176846738 325276946 568565769 850369481 130322461 524499428 861850269 880869865 919797123 929657560 132806574 403178320 89321783 230200664 548545858 855270707 625102691 914683563 472910201 776091746 779990422 792316937 486932589 813137257 311949967 628743234 641780060 652612881 718407129 740428194 752986246 854708867 591377906 964591510 751112616 950621242 157623764 925922223 712513891 845404159 751770817 786208970 222675997 266082096 19876395 896635728 220886682 568754283 866494971 904757940 234570173 995084254 202523568 554399426 225980690 576078071 549975984 896252991 297984037 320991660 905508949 984772541 603242106 758859167 310669391 323155415 197721188 213567894 918552125 964853958 262814052 840496011 665206901 794633696 695503278 938080947 567740869 962526896 134388639 750762415 770459871 773968785 319723596 907715944 559957785 806634840 741527157 817723224 901722750 956300471 129080593 214561472 932647455 977616355 66161415 281551096 936936102 956614390 406791718 813725737 695900632 952672931 473214770 948748871 922148398 971668845 672428995 718048621 754542809 797685515 119121952 418517715 711592317 877792561 843438662 912995608 422462187 637824928 961129252 966396551 159454649 486832940 607228255 918802520 564033242 844648132 773207034 791982664 626186006 987505126 898588332 942138517 129617433 499266625 41436984 845879294 412733362 505661490 291825950 539145549 399147464 839454539 708270705 811573789 513057479 860416770 298560648 591510571 444059945 554072026 428960355 907842720 596089865 943159304 607250142 608923442 940393951 961776334 140342029 189839648 694982539 782302740 586964163 734450900 234331388 433711010 43360142 397376192 809025879 911392693 509958044 565849597 753995183 863584928 605929674 898502059 508150924 510684381 595711724 790816099 126527826 557772196 91789303 584426137 149854280 568912519 796326772 982747429 232464259 913948269 788104384 928733864 111421145 710716424 245953718 470057221 982726994 997201297 424359247 663389250 983696422 992163508 769061428 832987794 890350599 993201122 260345535 545352564 241961758 357966419 733738462 878698517 780772109 923166205 607529532 732053489 522581496 712962488 605991215 846531860 492334265 811759627 686158394 760201873 493149978 815299315 708283667 903129094 712874764 731568158 19368263 974236335 866480461 889373631 768251044 788154401 123247061 943545435 753932832 836332449 186526725 561051174 486096495 719025406 969137762 986172821 665915439 692405223 134002383 142742706 265910064 884392082 266327074 961027220 570036650 649218486 611310481 655526950 169860096 649502715 25200092 141083348 199532315 298288757 167964745 725837827 272073910 503316730 255055807 705215990 937876876 963350399 336881301 366557907 662490694 929610418 781247139 844412413 52187742 686340985 696479594 815279687 668942817 951321141 435664567 725386981 202468063 724864725 512705075 697614102 828007215 833881573 401249819 517203780 8146204 990637574 137305993 681011678 102224392 382669908 798802018 938730720 425324292 708091098 709578487 725018406 771031568 879800615 301152985 471525607 190813887 859893088 246216801 689431796 470546080 832627842 444708578 799103257 850846833 953534410 369206412 443641264 297495317 360630870 686086323 899011913 584931102 778429364 1603253 364640342 533888510 663997513 80624559 389111410 220337519 323273464 98580759 110826669 647105359 994379090 576415695 651271796 477838893 645439554 811754443 938242653 327133309 908010353 664494696 845279572 845292544 845628691 155715276 575427226 324593639 559727664 302552227 900952825 95858057 823264020 830285627 965761310 360008693 498846211 342703892 731046711 324874755 373804664 287725912 513935874 412185008 447022842 669887514 981009112 785626531 805414920 257902307 292621424 4436740 394359042 837593745 851836666 581074041 917727981 563826677 800807638 945071751 945126255 3740125 689821732 984211702 998670829 984825531 999855087 810521805 842070545 842089329 869572610 812897566 853288508 853900223 968775451 690884876 931940777 994878351 996081625 862702999 916094192 114603063 140986563 567538825 874625153 307065465 698810614 813356024 910505963 13864828 291531697 830568366 972277509 205914042 639140849 746290673 801522861 372948895 861501103 81608251 973265540 757073834 782344173 131852534 682166129 891690127 964822116 2659049 25575852 97390952 765350045 778400910 919458840 64385868 294231303 725527454 803126884 177972807 785311358 820630098 939939967 646164935 888128822 890867197 937448461 329430586 456489677 88329758 406716067 257251649 909930121 503541136 660239451 375507265 639263355 982333139 986187605 367312853 932736236 541039660 950023830 727201018 938240506 372993591 635323234 952082953 975272873 289267324 578761786 895976735 931469664 117723161 801699366 292452920 883995955 46135427 209516103 454670596 706730365 435858547 729063971 216385035 548124079 148940817 912298976 50675553 626148033 697058190 828388471 745687806 949691435 793037861 901840506 424089848 631016987 646274041 690143843 858954032 947884289 956703744 957309773 755395386 909625318 452314487 834569710 407226915 556435190 670654686 874965917 24509157 263672954 714957482 737240925 842431185 876499344 614020432 973645661 972972547 978732767 217026256 724110397 416529959 835595512 821996750 936625297 99702103 127837683 551661313 917317633 640796973 737886601 96444402 287869371 203320845 813921812 757697811 929336837 475614667 565806859 457800732 981385657 585297842 881038678 234493398 747451710 347522521 985755191 697569145 945125300 7747580 51931695 577862886 651401404 332914951 986650437 218740892 323263303 959196096 997418951 935766417 995581398 626009561 850365729 590516673 910720955 97649671 460748687 348185470 865989887 227168866 756899980 550704069 828033780 882337403 929910692 860549090 988725274 681451201 731026798 201852524 820654588 407191470 796609869 437265485 945923102 770694524 806388163 498846097 817602068 404143468 504345314 862657966 863886938 276542465 564245384 208286129 396165384 589459049 687618032 482202234 933852490 581333650 860004049 9623173 708434892 542571335 581725728 945267472 963386076 205206866 369647097 854326915 934193496 41636473 962424518 767515821 779562745 401804320 682104429 817359967 877400186 776083478 856380499 186293962 452865427 829607311 993243116 355897117 714517333 328559165 491705959 110998179 814099225 533773039 653666452 216546243 943584300 595173602 690914843 505284878 808473233 995534357 998729596 567908836 791428920 524112242 694686973 864598149 976753444 330965530 887563683 568206129 786362473 10100495 212406176 473220248 710503817 933287236 971418598 504965321 564248323 827162902 944187825 420205230 957056986 64758043 414691921 128906192 654986328 458449365 929894713 24586238 493007517 705408787 938437780 963514533 966749467 897988647 995914466 958945919 965258721 851236394 998413774 746469532 843933814 374726968 792021258 631699364 775141616 426687866 750438148 179625437 681248730 626252493 989725609 792881980 841631328 716803852 871333844 389846216 954261330 966822913 989090873 273085517 805878178 186942567 774581030 965367126 998136116 557187691 585933599 474933507 500619078 956523115 989895918 239985319 444704061 842166623 870012905 508605495 715935715 766188501 926543626 710280493 823372204 793679619 932213050 712997126 958215497 248136892 443428360 36311597 168691271 857906535 997111332 73907549 512492207 675303792 986588083 889678494 998617723 408059014 741628341 828113210 919599271 963587863 982298913 198934188 243769851 59399076 509480504 244274272 389332849 125578358 765305220 571611233 655257601 234133923 485832536 470120499 646592800 179190900 745388568 442128347 489718096 835331996 864780162 744211269 838415035 307525718 906385803 307706718 408125965 429826562 676743877 448961877 753036251 226656607 569968699 55561692 436900214 883002517 888693746 19652860 857656498 766948887 990335308 933860490 958591695 550377569 739772453 867140212 956066024 311332388 973988285 843407752 911833804 231083502 238587446 766699711 930980633 569191930 812562098 441814021 902183835 387899564 638470238 988582020 998931180 705905230 960787507 883949446 916129864 581834346 612292866 8327970 345033529 208178205 349087303 729695956 841303017 301913661 847095441 535007616 818443061 735067895 870295840 741305115 941437139 433122328 888221953 476816045 701415831 148494892 438351118 630224255 859633522 642880506 905631420 183256191 276418119 13397003 511770767 559834243 874544025 189932148 749807219 507628720 662556679 183996768 327597458 108736072 964040062 307373361 363034164 261921193 603988020 202544389 703492407 846361172 898484238 553629468 938014796 315561107 336866361 163405146 359010946 185167203 812758755 23360605 784753978 141380957 365915629 955941226 969207472 381580383 975804285 51240286 387114398 861809391 912875031 413073284 711610209 105599185 233506419 430478884 617187402 206710510 429563777 906805705 951207690 524688296 976272003 449603973 822479227 133443817 204618845 140112616 830368725 538344778 724018385 108227634 792995676 464065973 736846960 872935722 946468038 23702330 285203114 82046772 430666872 999142932 999936827 633712414 800035884 557752289 559844155 452349411 588811095 21054982 681933509 432329776 475133742 42501257 594564781 936966816 982122024 519418850 669491069 69043256 888367230 946691610 995341811 561334205 615584200 251051281 936943479 681503483 731066158 643278795 672778419 419968849 483851375 501643858 758554771 995003481 997530415 587451828 629024595 260291869 427813500 152970841 466095623 408123724 410970237 552115955 642506275 313033529 559220894 784271336 785025351 155186577 861512850 649581551 868392559 409451446 833086354 175707636 380710518 274185192 339743085 282119355 544005157 336761957 613901090 748481650 856477019 904423361 974855714 400922650 632328147 703335570 956315790 611463932 869726288 777740739 786865902 395530964 645320944 851424964 872154399 697333896 724009028 24184048 117305321 222365735 326890633 409697247 411925070 186592447 925584609 722570169 927246318 628482769 645269952 22790577 298706070 53450380 835548267 898537687 916175117 908598927 939723407 187204910 326244088 514726101 566528335 353585001 540582416 930918825 983838220 979126457 982053098 544050494 747017481 963248532 989234001 33786647 748837613 292798565 646258832 966587487 978928865 382125981 542753404 800217672 979374823 119707346 427037195 407767100 827125952 617806553 927844797 619809071 659294998 686127571 785237483 469344419 669467795 333831017 530908284 461798337 874053496 897589126 974147934 132107735 189212617 146494624 268285967 36052068 657787732 947205195 971792969 206129312 673058463 942298262 975543061 898885091 936098076 836855399 916432745 790125471 882559112 12895463 592892897 532990736 710040487 618472040 846223011 187215133 282882123 126179830 390942899 21345688 825252110 110476709 328308857 345380894 403275969 402835184 965268663 443041603 853054835 494910031 523075081 79889914 116456792 897940333 943064916 247938637 771864352 857125846 879880687 667257437 769011477 170953418 173772436 966809973 994582335 98315355 125222738 77075443 181479452 695550646 772167574 333018556 603985592 447560518 680046338 171612845 862005408 89681707 564914501 472214433 905066749 900068695 914786775 427211532 470891002 657939446 766862299 214930202 375380027 811932184 957609845 716173073 868332769 483423162 915670892 162456303 490064502 652586748 791931815 510157204 647880059 728732361 875185968 795587615 816159376 618568209 902961074 490931685 696424407 565018042 895587372 501366505 727775939 467174858 738062697 788162120 824013488 116814059 817522717 486718015 510440147 60206140 644499767 25286648 628082138 443801317 869976860 911874258 929611129 538800453 965843199 307273446 408892395 313753623 723770632 167446894 641272770 967379247 991157694 167745151 546507218 604073771 872148065 552015626 810054280 367736986 610258561 165483513 670915343 343532127 765247127 194607285 553392421 869609166 884327599 756747580 986342289 147434633 696176606 194536941 410352222 998894691 999176867 569498922 969031169 986406983 993443567 647730110 998352940 10869918 878183212 953158145 959642044 556326960 949682829 863650829 946946293 275477643 797634673 261366860 756727838 203048040 515108173 34112483 984886391 741295205 925770291 855147845 918202859 487562730 663259818 775383778 909369389 888708558 894352275 303669679 405290888 997845808 999856047 661879596 849116984 930918467 936920849 148913188 510637094 118345216 491978564 641498055 685025638 900448589 963485330 784159122 829431620 570807971 738504076 330303147 345894756 172906676 676348376 423477606 557312709 454018857 711652237 858364249 922021265 787353157 962804778 298123862 575520487 248057651 308802527 230436971 944876749 609947926 897721175 200000820 414284958 985197380 986951590 483936595 633835864 656170965 716406802 252131422 420838609 484849792 884037787 7049936 503879123 131966132 176960592 922261089 943204874 167858156 988049404 860346754 902526423 347744301 894547254 118418300 125233316 332363104 335382153 386516690 650751138 819877594 843543122 779884864 870031680 291803972 934095990 936480596 967466462 728707225 752870139 111230354 246339466 136068905 665381840 107145989 468093742 272006197 443410090 329280831 374271596 136222751 692479020 28648565 179973961 838537297 927576836 987431326 995635227 957683535 990711325 618303386 669817584 293602914 486295413 412893987 761824439 436899188 483441850 433111171 969349208 209714272 317172277 160420027 994602056 906590794 976034293 64894442 189790969 685170266 827781040 570271389 876731428 792578281 919083088 686306578 799012389 461276087 664861524 361103929 680404287 581542779 583877421 68287154 692882906 963019753 984837484 539464588 942630088 8584203 18603237 823177119 912151038 943502833 956026708 142138364 778102765 888966567 968186104 459741798 597797387 433798035 598261621 40789460 768018637 689640352 875057768 177245170 499997854 425406558 738621036 767921418 807826194 76838174 424714067 948622420 958915872 67881163 963965433 337596919 461592553 890230491 983587935 187577065 330542940 273356145 709578823 899709804 916499293 708192980 969623705 274690032 462575306 239503127 934661820 928561322 999259157 225545873 263555354 253516551 631476413 815094143 963329822 213571578 875634934 555281186 758411824 892993305 937472811 507350865 543956948 487622337 496271588 502172810 871749395 218833510 475262143 247915151 875709171 336611779 901717002 393156318 923467185 979111683 993860494 897817389 900714460 247442566 992457953 469987995 875358053 742111198 991090482 64952626 849786391 190761515 514126871 441870289 546941787 103790122 547086995 42737641 661519593 333896181 674843325 652542195 907939712 884120176 963226736 173983316 499440547 433863688 579439712 420815641 789297731 667643253 977695776 693111146 751531317 51589355 947235198 138851773 628703489 140455863 914909798 71205664 299999158 223282674 478119063 709013676 878559205 709916753 816183070 317012869 960745617 749974562 934484906 294026158 417822928 677168497 757151368 182593402 876650753 341049614 502222726 909695364 932519540 704862484 818983359 576358686 834493269 814690995 889086171 730456556 955016441 990566409 991550348 768727208 990104142 362258318 405760977 22585517 813304686 463153681 977378431 137107277 312405616 798459769 970020266 635041214 665186707 491445943 846004172 6541315 445866123 409252161 444215283 202304552 612406731 519085844 874293555 716347352 805108068 473427583 753525614 861490380 982466688 136241981 431111667 414448771 891943490 221390586 749201852 302557610 486435255 685921305 797129056 831908607 916571772 506537317 845034069 852403546 855860945 699528854 874276267 965482995 984086184 831051885 931318345 20117735 523138728 950403361 962948314 812774010 875430574 695719997 739945873 112079044 836893346 620678378 663753919 899789645 951482979 219692504 383148698 245969116 390687658 90920780 779906708 243832993 250417950 466240215 865206435 735946469 803264621 638207487 691819840 650193060 706736783 155950379 813029787 198776220 269487394 536067631 609322849 377720040 538476330 143454890 291760703 964557075 985799315 93621784 927146236 124651651 347528067 682837510 813953132 920587334 921064374 744354178 796294215 203253862 232218629 493030231 819485023 421173649 995949253 533486834 992103698 285488431 694263072 296939279 506969608 337385867 986156314 728419418 982705494 482271226 843309758 749518027 917444995 124569411 741379955 273583316 793863742 17001812 194006169 987888525 992185215 857216520 980569381 144862889 981120912 317328219 366556089 241812380 716099275 993836662 997730702 206256298 407748138 674406705 928937623 857875808 943917627 888199437 931574565 482716971 525899038 930629050 960018215 2888233 722856309 687944815 767042935 753107354 818633940 553777789 580391494 868342444 905949729 278454393 921989012 773658562 883235491 511425007 974659663 728781370 864367970 711932094 815074301 613309218 807110292 955779946 998453037 422563894 474596840 371627913 548348985 685747567 735629723 203711662 204209420 167068757 590414763 711482037 789988317 761245011 996148522 280194611 766779041 516370723 893702116 828695407 914998526 265112942 978355706 951615487 956546014 29864241 44927591 811132417 977525973 426962790 853327283 460612925 956512185 968782308 990059616 932274192 950734873 536426880 615085383 475202831 530507219 432523729 989713976 933115903 947011779 936283129 987913387 78988711 910062475 820611833 833955867 602293089 896290285 307301020 805397656 66170939 808208753 867809224 885282791 629370618 935766168 960393019 989698130 24866522 571649855 809103138 929478480 997535460 999788352 319696076 434249378 449789204 505850117 830754198 839975748 753236467 986386893 833384323 906645129 211649342 801836383 773620726 945317959 843317660 892503513 412853288 856377110 618490920 702497253 561279605 718312837 802082461 830981104 577927430 617276450 135284787 857345266 259392844 801253161 686862357 870950566 771309333 789612592 804258005 843825656 775225675 928080896 768341832 863274378 426949956 734099936 764916803 772287766 285902106 612753581 133838627 928049920 620111647 764058549 684371066 976482875 206970872 390295443 768623450 770916154 574084195 963446632 895461155 982746456 526701333 839090048 984156745 992981502 910705519 979757915 178125794 700923189 482457682 655995415 836654754 972946019 75154387 253917438 517508402 786572942 572877210 902736088 482742549 891148897 513445731 661229841 865020628 947613041 652133648 890433636 689276611 887485803 463535069 697913322 640675058 916609664 279262124 704356412 42425644 722675675 289088307 409698663 181905964 577595516 388904928 919110715 835298785 963639298 522611242 581744209 338107012 368997780 603852475 678167175 363496098 716830500 672642194 749429730 421759483 559498253 276009680 765662191 482498094 794665706 149481434 819165823 803507237 895013432 909566687 925513412 49843945 545055235 432933677 665752422 287334749 982620372 10598706 222423398 818353441 934762522 103554239 481345073 429291254 614061730 836104391 841530554 630153549 834201486 59297205 139000717 454476468 539653522 902577981 956296723 70249156 890070295 790710500 885970953 63012524 114405166 546335301 742980198 476437125 823292557 247183015 282093879 683334202 738151051 98664349 980716577 497382406 827392481 107065132 721460261 4130339 693898407 699124261 839686784 691022471 988953975 4888848 414455643 548356282 771053810 841111828 961199926 365550951 592304448 969573874 981208773 369690450 753313318 227470043 666882122 908741725 957714921 719570084 919860559 369449740 521605637 152272241 500383580 485205802 833251020 553114417 887726462 414062847 905361924 371803663 992490525 139256197 642668641 548777441 554030663 15363334 168853230 797926492 882991517 803468792 871378431 358716439 675597062 425781412 522645650 357307244 663231628 764885577 948522428 945993496 972804762 782066596 798680997 321660509 817824401 244998156 248315679 837311495 864192891 506343432 955213053 743550602 772011247 968251436 971982525 529363254 804343088 892184791 938041172 875603269 956980154 805655500 807748597 613228537 765531755 606153666 930627217 672049434 845503137 325632648 520363154 906737822 972774563 775871678 992028550 184959598 391438173 472349997 643727012 535852928 809075295 718092218 961546218 400940257 598152843 765093437 842620067 272587897 977821921 990548683 999837928 569843033 950734632 198123599 835466197 730956023 908513998 957569954 968540939 670665752 725168774 380661214 720252137 720387456 776338818 745946934 878608902 929902378 954371312 826976064 890889645 805700056 868541748 846764391 983776305 800941061 942828101 964895165 993388188 538409899 640923732 721649935 810350298 283559676 740120502 11907894 976643806 894998080 957487069 979107175 979686500 910114804 944879091 760851559 967061961 548876481 914040630 650828109 994011300 313037454 722808980 344998668 358712093 315546189 526728869 410747082 502059425 759876215 860208613 113690728 868098049 976667249 983353802 211320594 239003792 496147242 906105416 512916441 936228999 811540744 970956923 525031001 742840967 419916653 711391044 520328114 690295307 638955703 791881430 117932468 716086372 873660545 941464524 980807748 987203033 437194567 524641810 976340773 998591828 179551160 305257412 476883310 630284112 206058525 433595688 255541219 333700767 738874126 824789785 788833636 936935217 582751029 601292000 501287600 750642136 798649358 807439880 352291135 791534095 98540434 150157394 341820142 760643688 375233643 970185136 568203674 994976569 156203037 890138592 780094383 998892676 604116859 798490696 201681331 390591398 997541299 999988761 27796411 504414500 885861149 887890527 321036459 748331211 338847122 393440846 79164156 418559052 439952644 778795222 267166972 974398571 541589512 544599196 328111965 700047290 986696383 994737277 802079228 843002726 762056120 821345627 361074983 429070082 749011021 843334756 430611650 959498677 366763152 847713454 8119336 193544919 368489574 882621573 449345100 676003910 661415495 876545148 121546636 767906344 371327595 398572307 773715264 925308152 948173130 986983664 879017621 935067658 723751244 799783827 875096934 884292074 220432556 343685941 619939289 693927890 112477749 959385225 723395592 962935250 730900711 958962273 24838551 637238459 413996094 894008221 420103910 896321623 103097899 216293709 367814064 761063625 422453887 860375263 62705387 390522240 436842034 707286013 426696259 687482243 737547384 764066432 509929338 698217551 250032993 963389912 893019402 918244040 643381274 779667402 4549038 344998891 145626740 497103364 531675433 619353998 661712819 727091866 354885004 941808284 105231664 425434444 445985168 596855348 673545389 853952711 911711257 916262511 921058124 930037515 812444765 978082216 625215138 625266186 927372916 981902016 728068730 962294421 868533043 979425023 362552942 583620226 104444344 552651608 391736452 643561806 813398920 821339790 561091991 816201256 696651519 943918865 767375863 920331424 930475476 994179249 160522052 422797611 93555791 154317391 743949992 989927117 270883093 325033267 191450749 526007677 292041003 863036800 497030915 998705146 425914391 849163752 471081454 824680620 199812552 329886225 828358431 965326446 332092986 595378340 651376091 816678415 705001410 726941355 265414876 885819832 935957989 973507224 957700534 979950248 234951012 927369869 881912019 899694284 861856065 900569339 755969864 805204717 799858628 881734884 591246044 983431900 564356382 820942577 476954358 572647380 524383332 833509755 964974734 974789874 209295746 268789573 300420827 670120799 448856902 932141063 567604484 836701621 945671523 956331501 149977513 558574169 559359356 824889649 887711343 936028406 661185111 915335542 102606050 696181041 579687400 611041629 862569594 987529773 279252737 968662074 812950098 968430510 726766176 759049352 114517294 395226744 530317342 681775976 893643814 955367990 579755285 597492407 828138492 934960339 57199238 510459211 792883956 830897743 328872494 719627973 834328607 896087363 410560045 578954670 272067800 918087796 473286758 848828325 591487933 646241114 431221832 827991294 224867270 704993730 736553672 773454126 553059948 674304245 770223910 885889296 759372686 919027901 27884592 629314031 434063036 976505718 117108336 282975641 272502022 524732615 388026198 421905136 89343743 90053332 979765363 995097969 524215867 894775191 747155973 850926164 270882759 781853677 216243045 970764788 830402790 897445061 219487584 480947677 378317300 560082727 42114985 321135185 968884903 985582559 210107546 756872420 845022616 970225972 753469126 972097998 88304429 402261933 589097734 815239949 331144568 974099954 301910087 755470845 679175396 872217768 690382800 779670920 128134236 257279341 80765897 524060934 832071492 976504910 304152601 368552266 253012898 366244665 102680827 332978306 308733422 369647485 704360022 798086990 51497728 638285043 815134441 971397240 629373181 863904000 82526441 985153742 69103950 331946180 612824575 862891427 588573703 841530889 484099981 904864878 426067099 890330019 704425796 995863640 166404890 902905389 590035633 938043421 569136394 608388304 390223162 794971681 267019162 949910878 855488591 989454109 904595852 905685179 989077286 993202343 969729394 999534178 30067705 560455662 717965720 976233909 466074169 648630255 533741681 918425988 695564838 747233049 366256099 830680201 427731733 780030941 450320494 744037116 856688323 891845703 386049008 419447183 752092186 970813100 742081738 925233123 900079990 904573185 191019926 612669443 192641117 222309186 996589859 999344594 87236994 208539649 45216736 63642234 188709439 449517567 393742049 972971954 110006860 342088752 704343133 706857859 254911309 847906084 782285430 863055876 668534877 677525831 22187698 422192590 290608974 671043497 445718441 569078994 445766986 878452566 120835962 456962856 188144568 460136359 919654083 926907826 846107572 895714345 628618589 863075418 856697482 878321981 756177706 980590015 926347387 968311771 142337675 235346950 116558054 415016257 771267047 819015975 666172386 805970349 115178924 531943181 919457721 968669398 98526886 619000620 260340793 407018852 565429620 972804338 891890785 959560797 903309527 986571555 505034192 848247591 24793230 419111369 39539607 256731114 377818983 858806183 336035144 446916432 258352169 628270297 280378787 702270478 371941959 636381492 438684699 653054309 978121273 999959816 388227364 760624525 250850713 897638659 686867466 846608560 714164781 903073098 833853088 871010190 752351479 806022732 123979796 855000318 688831749 774917912 827698996 975218592 126170322 999584543 716067596 716370285 904011298 927608085 696814031 702721302 113718683 476339254 219131289 751086833 909042371 953812786 387316968 590483906 530815049 907008539 998267263 999222321 577841463 950750119 327779722 746411922 602049411 651043691 344999815 808642447 353928522 838114318 286016511 490517995 782955030 894959829 840293716 984160167 221676056 539466041 672737229 856903975 802330058 916709874 845964431 901033963 332850688 437524346 278228718 981484943 625836263 630922811 92733654 363103542 680418244 885024504 914332080 961687155 989800031 998875248 5298738 782522042 97826395 238061965 393058854 409287744 391760457 423538035 718454717 990313305 953364678 985686588 660696202 794137114 11312639 140464094 840889463 946801505 319013674 784881151 396252600 464609659 564115681 970966995 212279206 486670566 183544817 413214700 370283713 722132940 272099397 669026367 786470169 845883401 479416467 646443099 248977897 622383567 24585893 161780349 252294107 435759701 434258615 567986246 530943750 955744075 834911909 934113923 70266392 466348511 402389554 783397278 169238360 276269420 807747078 903568421 19873093 759380476 107760985 472872551 523265568 873841250 628533042 704201205 92282144 723825423 256180535 432426703 249594573 763261349 371760775 485919127 828409321 957072353 673678379 897584257 639484937 716358665 469436081 717213540 558413923 929877445 326450859 446131238 506038792 975546032 891380519 913769861 906346673 909432717 945364654 998794033 918951634 984077517 376515554 930173684 655061618 784788914 993189890 998606126 572534762 889276948 942101922 960521044 859739237 879714651 811938772 837020224 296235408 752815541 545921720 607430082 90346696 526631484 153877271 652878540 5067015 790685791 233333512 307673105 926334529 995154135 211805013 440090242 785368466 939271631 15034783 455093643 498502916 588441649 258015759 782309393 1463765 583562313 465359877 855326115 796568821 834066665 716461937 734562249 894982929 952287639 173141123 625629521 239958172 773920524 67399529 470554822 370203116 739802281 243516865 744987028 709549565 734661083 123847779 705801862 975486179 983793384 842962339 983986652 219874123 605249093 456792291 646879531 577545423 755716383 686598585 905283919 268342660 279065090 671636681 964119507 770747690 866424125 285387247 628319694 109794038 496404249 723786227 977102637 508870089 694344568 248718276 701882200 870091087 903024789 619479960 769123977 361884558 734462156 701632330 863907853 148309288 337387528 452029195 543290519 843189510 921278594 742312461 859831160 858273923 909495628 22786053 279863067 212068797 992365334 326918820 529191612 452338971 542220101 880489407 988383662 887181609 958047186 338865010 932173292 834714070 839235606 601480492 972720244 616196377 715570215 786172997 953707850 553956187 823681602 38666016 307026494 970087823 984301502 761079504 826807539 960833060 981943496 105084174 878435287 473611211 601917547 204071571 582896755 959070201 960141960 801097217 960705036 924695977 949862269 146053094 794904710 358806503 559492357 911801892 997783083 398493688 439332426 814054788 834172003 322048080 721860331 702457257 812438109 234830024 702383367 463503513 808426023 122242558 200227726 83340465 333910771 715150468 861999825 451604060 807882305 302262949 324419214 554443853 663984355 245937422 786946940 833501978 929912523 653976248 759401286 836155750 848769818 344600011 542134056 757213046 887101689 453124652 932058464 924679316 931867061 684787051 788418383 44927809 660322363 168322808 635240560 758286434 942502288 801084904 807162557 364947968 820233136 201013518 687786373 875630343 990118352 652113013 687564803 645948296 829783673 87479604 407350585 321994435 677116696 352092859 604817021 698819399 999742240 95770620 715474901 431626948 649200983 268499798 774057903 980396208 980950016 691673989 923514155 628515890 631107631 804389866 982653001 620550628 774810448 182253628 554159332 268968469 503176566 81717517 279572246 495769598 841359540 245068019 368281725 400913037 634521675 554672599 743238724 828058238 882728806 938412069 953264489 222512512 314348963 523514346 629595887 886895751 980852955 644486967 925921922 197487634 725033033 412666463 567636851 602122782 664519105 953712101 979842053 87130883 849762105 270831964 419059393 400252640 806474630 905473736 987425277 260713979 946542189 966225271 998048135 283595090 497194833 848162601 898194877 247399771 382978308 581091340 989369933 601445365 996986979 351085379 549754365 972543828 975640588 193053773 518591305 129646127 856515588 351256894 667364140 360417483 600997765 980764947 990972921 633645367 850785608 2401885 245600342 74459237 503697887 728717962 763331027 597680582 638072841 738910240 873632233 121987019 468845768 402838863 767513109 818021154 893632178 72447779 221462340 765929926 771209459 3674425 851728714 154010914 215123061 837155456 949484252 996682180 997019892 836139774 851269139 393625028 736004868 642964572 939924535 671444783 920907256 667635029 897451325 37027242 953550344 765779838 781220693 378727696 669072650 731556449 741267104 636777492 895224801 24335643 240750010 297399684 974407413 801938616 882611084 32945637 184432813 786521713 835412424 169507549 194989581 895575798 915391369 590513067 686542532 548957219 938453768 208912287 703218896 203492482 249241535 533103608 699796175 714622256 718708072 65276689 749263984 624093898 919457418 365734441 482967959 307001730 440848046 816702356 977593639 424760622 489709246 836138623 924789120 757199084 908836859 101419953 586681113 298908027 927385641 996631925 999277293 296165024 967501816 554364147 889506017 1900709 71529411 738427455 879293332 159351375 469127287 553332132 873690523 83198407 535491397 431458919 727913876 427281849 824677873 62795275 64025789 578781047 929031278 146073637 887741665 570006340 817723510 822754234 891335094 255023852 972288773 160589986 865142841 609565329 938763251 265866844 691632373 162418171 239782161 229049242 234917255 514601817 535045835 956863073 991365571 353709524 684736503 648446234 696377737 533778257 672299567 310956681 541891225 950186302 970268513 255975314 410357707 365535187 558290209 484037937 840593528 788200269 962206086 503239837 516731269 769837147 956016141 204572368 411840897 284186115 700308086 869051934 908516650 748983970 947292962 408158212 770861018 874398988 973329157 818533653 899076569 841024029 889911105 783732130 828868548 516796131 651927112 583509722 752813762 892741391 907462409 741536838 877770986 99425099 305437568 587822716 695149776 512517093 772527684 229953940 490722094 883278208 955680322 252138544 871261171 715510995 864913725 713723635 912632841 686307413 933669529 963255415 970595943 586379612 753004679 633479093 927721797 448013903 532598348 105654296 346019462 363795724 602836077 514148635 698058708 964097054 976927292 257889146 345364182 358594573 367265359 196429533 463563986 326750245 706741132 266307453 614725698 992819540 996344175 899782268 952350458 456501408 617278233 534658684 640670547 330804511 644804545 279804204 756654304 655873944 848597801 854692958 882986067 642710266 769257026 723048671 765865803 460625749 796498257 554591044 980934924 617114916 808878039 544042029 939967173 528255712 568688824 586162354 858563273 61809352 767971011 112087711 423961307 902383111 968940359 75235232 975451722 618061859 744123141 488602229 632288541 154541934 529193732 204658807 642792177 115709803 532024847 252573604 472169559 591430621 698455088 682889717 770687718 894624642 952268051 49145944 979904081 420468230 875125463 749932827 838632697 616794039 805751451 920833342 984724146 144837364 821589841 59590773 366876870 321721836 689908574 436801687 593816344 939444474 977358712 238234285 396809658 1442811 879564124 27799185 159431289 216226029 846710897 720085590 987757820 208446893 234425441 836917546 963816358 894079739 908142175 447836188 797438375 91294644 863312035 711311387 744717004 215446704 996140452 854554717 984635345 264048785 523422845 66405447 242242341 724311360 808978177 40162004 970916759 438593860 804724194 313578476 562497940 84140648 798844711 405982625 708273539 313195285 435100028 377828075 580868879 274580663 380138916 138909821 577529366 953410190 971733866 676520623 808247863 682816638 984306296 960752347 962017180 505970892 710443765 465488434 604528755 911699551 955496660 415762079 992628274 633678306 894035039 196655915 827787424 697718598 766511449 87659104 759004775 811763867 898377820 611473525 842869334 681019726 750662992 729122197 877011950 12182676 476217654 151027467 370771680 415993739 523735683 629620354 871133237 356160783 613378231 690105353 762542762 762727778 810008973 405618980 770487658 486518181 756637553 790558107 950930335 593861961 949621114 216586838 683648285 107415979 445339318 144769629 328778540 851922937 906689214 317002416 693699103 141183073 887742381 886178516 950149472 330887608 514719664 869665591 894210043 143417823 176117400 301912220 582231972 129222749 319227727 837120396 853340448 607770538 652244568 927158386 970212396 593280097 677246322 794731345 798776947 11686139 894030367 758237209 976122056 993132522 994184181 435406751 598048550 996736140 997293283 700487879 830175497 517363507 580262586 45597143 875356209 144614324 816294802 326200021 726845152 396823109 887974123 406627074 621206583 519182068 917851794 963097976 989928410 65491452 907612854 137039775 998257065 481192475 884071240 277645923 540143486 934290191 991836417 54296963 403712293 134451931 954390832 545755236 708245909 75906194 647340429 573935492 876305051 236412780 660341014 934647009 974427826 605945417 791419827 178989575 937940810 197740430 213096442 525230109 817190239 682043277 857253073 995516373 996450807 761161458 820288379 542799914 849458558 279509278 641167712 969932418 990273822 503295424 930276447 549097356 929935709 695926930 828615309 478311461 586752268 826994794 907317669 112761128 517420184 139682515 998575776 961889620 994482433 189754669 833871104 887257274 957306164 381493693 864343094 633774240 911396528 741888469 811573442 919441287 935813617 660295018 826899683 73067857 592494891 759135655 829795961 788337862 904722134 194213971 517797662 161505504 351603316 308700051 677286730 605054692 692957268 508848278 576016824 827722599 963872104 159459757 938084913 707607217 835272303 619854617 625501680 275191843 948580717 24504672 625514021 217858794 345031082 976382421 994435785 304816775 569897915 336050299 447782734 849978987 972887234 672650299 892300739 782207028 874750320 728885472 993059778 494196178 805119592 874418838 897972459 612403500 680916172 329832867 418732933 794119176 849201990 146663853 796135282 813386391 893120266 963261651 973309134 126336310 898016408 189675967 564048120 270906402 521022012 861327387 948510486 755199639 819322418 826882403 995957177 404167386 513758688 48875981 645144456 623136953 984990945 702930938 823345239 743567904 898899540 224292490 457486510 749613595 835377534 791341215 988444063 427507716 547314316 908729335 909315324 157260432 418519183 915404443 971841504 312146751 536364978 717213686 859719838 852830023 929933431 404822702 849079829 493222029 540490044 863864300 940430952 529197389 932314549 472988060 853214364 389424722 473368977 354145046 549359387 872740531 976408517 40319552 167236315 832669647 985188170 96127344 906091059 921116167 976634381 662300984 729734353 318342478 767515979 452325781 917976126 857085589 907263715 398702926 956685845 994287085 994746061 516732014 543392934 333265009 673912682 114187716 566731241 427449829 600152959 384850210 969702760 9949432 826592139 708099440 797965773 695781071 786464835 833229091 948327239 882154226 918420533 718918329 830938975 507936453 699896926 709673818 812871498 180855868 417482837 218342468 516474164 570115386 730448102 760114671 848820280 98112278 298702214 465833630 973593411 467268121 939436334 398667297 924655442 334211460 652588687 134786317 151479304 576414769 973535135 282205681 471082767 383109009 668925067 815813427 969875084 782115703 951084005 287386044 392722444 171876340 337127791 901344351 956410276 692329404 800510448 245428184 544871337 410182335 874614734 737507698 823095369 552149572 558048555 195634468 839195476 981717609 999404941 815542494 885987482 335196601 994956639 389396177 691471235 687054951 689213033 443541487 455963437 887517002 951831190 74000009 784707155 618162334 938460269 803433711 976397934 172288371 802414094 366961757 535020401 382087870 392183173 665614627 766443844 391146997 409832903 217977681 844429348 46259614 85838620 178374612 917931900 86896186 905344947 139361076 268769051 245998028 566248938 768196412 769812950 84558599 329387424 305230327 781231965 341005628 430493308 962596254 964799526 472680177 590158225 817846129 839482333 138215261 450913269 408800312 572957176 648583253 874270719 392187132 745779087 109996771 686133870 783598751 908578984 702559733 805839727 63498609 289028637 332262829 718203516 816902476 885954016 631160167 822287768 391478251 698585247 553789467 874163550 939513665 976504361 564489305 896681679 73537214 287555498 171109442 846144924 348525609 509516294 827581549 897519716 791390769 808369689 399859574 705246026 558223050 998859929 342518452 561622797 699843402 994946772 447066339 644724178 215794050 825480856 404888132 565925531 660209116 693104998 549356617 565372920 331693275 577886155 700415369 781323171 469527078 571393540 485491652 863038125 829513859 879252122 199476649 491803609 819424644 931868330 543802211 797691028 438607197 704618699 666287953 853407009 18690489 238919099 153522143 808004702 183827996 676916658 966635978 977546681 321537803 937021734 346357681 910840927 679156580 717912233 653205785 940876743 260003291 509285320 503969119 861143414 687302615 759729475 921237937 939481501 693037238 915775363 314243849 955989563 926011234 997202279 587343287 618582164 185650867 965960560 478038718 478743745 568949794 948375164 513839535 802531496 266230051 998017282 343932314 409885564 836557749 952049647 232739867 853603150 430515039 998966005 733377242 873848738 472979490 572554053 552452999 606195257 827756827 988367779 5381087 770423812 721317639 960150855 873459127 922318740 254119636 317349672 369406323 717469681 550200009 903994069 905350938 970887704 356250807 390264961 246983808 952978573 828229939 961303945 204853532 534670795 591142996 967631458 520289339 819629372 679689901 774667248 351510879 975718803 289033701 751321051 783563914 799125406 842016522 958381421 659666059 934254130 358816311 884259469 969767935 971989628 745244067 995090062 714084175 901074429 716883991 913068948 570169597 915414034 527431922 784588499 297441561 651276206 565811280 724143743 871647129 967972721 945407541 988817285 500748833 941441755 662393539 688748554 819353128 986420006 237431371 602183174 194966588 891145175 669719376 995638347 202433062 656687015 569843954 662099546 785195900 991498945 71667224 396310988 931559528 947784323 360715738 656149711 615201449 772456270 376580785 824005902 671943608 822749575 581075444 587353482 463802247 694054152 332252783 962463159 41230476 725578537 929890951 993131899 678216241 933114003 424009711 932240414 934564866 961259099 802875532 845397170 156281151 407054338 173500050 367238918 899760635 941908635 800334999 985085216 715901142 992708970 106564652 413940836 141554358 396372693 915868079 917832843 264299025 530645065 698558368 947040677 582692498 603029387 688418431 815077236 623167716 860425938 471540240 861994975 878189255 930141966 2622402 460280623 459274322 814874350 842488276 962485254 902238601 913377123 694856229 759873993 132742957 385394104 598561253 856123415 122603736 534217344 586534979 992797691 35681346 208807620 600285356 643119628 110506729 189508654 958357641 995889760 318450596 424524928 600756494 704549964 378971003 998517770 398947266 469881047 111977101 911006777 3048172 296919714 981731242 984228505 420935957 823812521 844902320 875765736 414751883 944197205 847769736 934116474 950578704 996663130 534677562 944145714 188147957 938724970 584410427 600755869 915811183 964451874 334488472 492372140 826360362 993839145 995438979 998691354 159431511 877651070 485689582 898358046 128441347 262669105 681732177 885762346 376866825 552473961 765457579 884024466 821484857 945368983 591495331 993072418 369772853 867128056 990655760 996298236 822365566 982986193 985625351 997676585 565450488 827563023 418474090 932836382 228522163 840224973 558535455 913511887 810969918 950130583 447517526 923606740 45182222 76574799 520457011 624804241 301377292 910876395 885684855 967864432 50276665 312906668 97099797 275433005 122289469 645142531 603600827 895872416 966086354 974079980 760593681 788862145 802291514 984796801 126691044 932900454 712949040 840311414 674358311 932294702 688180422 711758313 971594800 973743967 103800389 751110236 107867577 245727237 280041743 775481831 582930672 598017927 593734819 810005481 488061869 979983208 200946734 980732717 288975021 662228635 348201573 483749273 846482123 942584842 6783594 932692342 464110491 684765428 423714397 677712907 3122490 518005851 546006375 727267504 866363719 957662329 141701340 233506798 772358232 962106502 433000072 877797045 89163899 781850056 444537081 554727135 314641374 843835200 330642469 910190886 80473921 704348372 405554666 584078099 563759151 853765987 802861378 910545107 108026676 500503444 516231849 708250524 721876579 864777199 899339267 968529366 38882042 935719808 969837824 980181450 228552720 522500630 256398009 974773762 639017645 890932044 458427019 506546294 188201778 444336088 837136812 918718683 814801126 928195780 922832464 993682600 902207944 965858237 604186842 928183443 611316199 720871568 167910722 536108231 997376946 998768740 705162662 722394169 512101041 802162143 919527432 970457809 509060351 896664900 340010473 466902961 128784609 413844854 448002923 897519237 231086919 307424587 276073606 755001901 291428904 366790040 415607804 758658240 405688129 910887095 925563222 928346054 955593479 996722361 727043284 759417581 114616204 483556926 803313694 882035931 765468177 952554356 178485313 573314509 346905044 574852049 793228370 999934543 841466854 942782056 811211414 917788548 716029458 769350694 193385853 959397193 546368947 754282729 873514772 944431778 272691857 608710738 380159406 953421056 91803578 365456278 106082539 121094609 467456590 950081584 600506205 862565862 193655053 628305903 673673216 736532592 179560291 568577258 809750814 836711415 716451657 918828492 628258993 781927445 867292600 938850841 800052378 857246865 462450314 910693655 347677476 737642924 61353449 111879594 254759986 426799540 290844500 903001922 917184341 956191973 883591419 924527265 878479216 883708776 903802370 909788124 680824925 689838188 757523645 998432017 298603405 923468257 333202262 431181260 416333713 433867712 856327761 915769932 31378566 661885214 615983038 872694011 335201316 677452527 788246805 985892190 845187027 968905836 201892305 916982793 229039045 399408842 422922319 932263684 649904366 798851679 991293096 992421479 848630846 969975363 808389868 987989268 68254251 593500875 925099148 973548331 693034478 858486776 765956117 869515566 431215074 844145417 349320507 873648016 980201673 986347150 43143066 962202568 704963852 798294963 806087430 953564365 476078081 674512672 346331671 882955323 948814209 963043453 714694453 765831501 899494180 921756463 156791167 259679445 688756693 783429569 993801779 997546725 622424910 690657659 763556935 782194711 254405880 508825932 943154430 950891177 857255177 975920171 62873592 143187547 186041525 432277347 858164580 941327940 517896520 895119277 30562025 747133429 414466268 741491367 844858082 865270160 346117066 960968809 820988839 880880818 825968948 868324206 720902720 996487308 561488900 687843119 955230226 994427423 746683738 941108437 71103795 343294275 404636093 942153409 770631941 879755258 327063232 609786916 568528294 863833751 61336275 931787816 990031720 999753378 84684362 561685681 799766079 866473250 736294916 987216078 119705427 584279980 638063231 704985910 552654876 812239186 608232125 810577342 203040120 755826743 60902080 862605632 889815265 993762450 267410909 922726368 703564612 851877652 796311524 971368538 647550854 994352971 356642731 965651199 694425127 697020576 778768495 975263360 337292658 794318296 254298061 309178690 251747473 484508256 675470387 865357493 108817324 366272493 677031660 829670806 993612890 998396840 664752861 817063209 805921954 807564544 906834083 938114242 780572542 889494755 365508187 827332955 780946437 910721085 7439596 966738460 868918730 920862616 758055892 881080032 302317454 540306336 258746248 332842960 816224622 903388501 940274697 985931451 418766575 643174418 848484078 959269015 278484919 936431277 750495759 798480781 509052002 671544894 469420840 739357238 289867112 732569473 806048980 828407810 649167801 909179096 110324780 610257951 790598695 968275775 216926774 398422833 282457833 619197031 458352936 511931705 334888215 393573494 165782299 853722241 760362275 983494098 969642628 975194709 944288947 994946078 495861682 983688283 83776665 234406516 596506336 698161980 787245504 941533860 382381741 658509846 323178276 347026172 789483185 892188858 327542731 623207627 826234374 854110403 513000522 881993944 3456599 480818904 783480103 816415598 229001884 283657484 933781205 944142123 934356624 975760985 720114931 996888325 430674980 799260471 656323984 773710350 267076556 962291163 400353032 885862941 89010202 275042387 440264325 644840270 348535148 637018334 539431050 579930314 144009066 179606437 412236365 548732741 518356361 964379473 946123609 982710634 880660107 978136253 616442749 633495291 656213767 980248735 454434051 667672698 737168728 819041499 48220178 640679566 259177061 781133527 274994660 739931616 963058396 979990135 881919794 927856971 155671104 937888017 903350990 962435724 773692574 864780359 188411270 346272842 201574127 206832513 76991098 914184470 383951709 710376275 939516460 965027463 941101120 942599939 33943295 928084882 344158513 580892240 355805578 673025871 609275323 677338516 410316301 742857029 206655672 619188090 875036298 942756856 412294992 952660329 16960243 242012599 151814843 954553212 251090699 533921569 877049160 895134624 997626907 999570237 840566484 948343479 798984533 990234143 238857579 662987433 170625614 479527048 521131299 537687767 332521210 924960982 979929080 982203096 293597751 345339900 261475953 999527916 103981492 147673197 86464608 901739696 484606542 665355904 535027896 702563760 567462017 876972814 565008476 624213319 262855190 538559333 125494349 471294568 225990631 786644378 3684732 304341738 88567015 292384349 986175550 988166468 741482439 959756559 497135237 977204067 206204637 262369021 136833129 507259601 163374512 252436189 902243496 938189896 925591008 968603058 830784388 987165657 867756126 962278471 619550212 730159203 51323551 341008521 489437241 909752566 562155814 826733969 376332791 502979213 157770314 328358789 508453106 971783974 429304275 584182240 82352718 598759614 72595073 945360277 878631415 978133340 470078928 685987480 982516807 988366634 428581683 470894983 23025971 337451525 602136823 970349188 887517656 919938797 864152103 868158341 552597711 765342341 809726976 918449785 965548217 991599266 737311349 830910932 213163303 982460409 682800105 851674019 54841849 434930452 939429635 942035692 283353675 956986853 145845473 217206334 877605063 898984780 565726213 586568203 731917405 824856711 150499020 727712166 909706537 990467625 265022794 385949478 18580685 460144698 96093000 892495037 729789439 825790645 733825694 884228798 338838413 806644630 604436034 686720766 125850790 635646726 984912594 988034368 932323223 962994939 464322151 921281100 275896393 291280074 928166486 943949359 769651666 783025676 722511324 924127407 826007077 902170076 956829050 973247587 202385484 437004138 320018748 802131862 491706733 584518078 890919949 972861690 512936090 539461532 583936288 821866775 28620625 799320998 915670133 966243212 135321365 165358901 107208112 278652170 899984660 904000755 431067841 619383850 740484541 881642517 676119153 730114350 359654694 995781427 943648625 944499484 640982066 941320594 757986184 862388755 294425552 841830705 44728435 557663204 963882296 968930855 362410937 472937327 80792647 176046324 409001322 483103318 778125306 917151336 182241609 696245958 704571940 867263922 74645290 360213197 884809003 981445929 767181858 812218517 126776428 583681231 581830789 982905434 231594317 751079123 710905742 858169248 858321722 860450550 112133043 295109078 967831570 994770264 49335877 746724703 88551727 160257139 380509398 724069911 280808440 294818281 798154709 958783463 792383476 996152290 584847288 619491164 117852296 758966412 506155557 570425435 99887637 871902352 616722726 767361613 815180678 956619645 467555130 849638108 442053550 643502699 998043490 999692648 19530222 733160794 586370206 651917267 143305428 623666005 398640385 494071642 512280762 809335791 465894289 643322242 35127747 562018710 547647195 568099437 900409751 923886317 661472099 934120473 933876810 959649780 306453732 824146489 405933031 958181202 11698055 867182482 646974279 699874737 799077559 918155941 371142160 902282372 266054893 926116244 598450185 640048720 813074940 914785892 711929376 756079218 875941526 940758863 768140192 812190911 940496963 951380507 672397841 719131560 241263999 325281036 777158644 956263278 317292769 814280498 839687678 876436157 587364522 601288298 191080041 923971303 325912558 706092253 488114283 577709573 923173859 971753524 484698845 798255892 600853598 704605200 784323954 897556282 145949084 890725771 420190988 420340306 990285985 999886702 970660521 990378784 493200929 760635065 175456378 870365019 277529608 337542385 133921742 153758554 956382640 972735285 368388727 621729181 100490174 109277102 165917930 794257484 234833010 869138340 168919405 390050805 535638913 651980514 597968398 849623675 944769026 989925152 69863117 601040125 544616553 710894809 653433270 836572990 376202590 509625485 360339369 536858235 561918471 926412468 14823100 95814544 599363465 953883015 674905071 758668007 976432242 984053411 613050103 977174143 537572108 912874272 973726222 997978093 583419017 865402102 130461874 758660773 667833548 807729184 183314123 890938936 924672320 982933564 25080701 92626634 161768786 282947006 546737017 600304178 845796854 987651813 4413964 139077817 421687287 432603490 442504710 602192638 277152012 357417422 261805084 396934870 124988909 490476265 284921484 714642365 577394000 651098168 579645940 707090721 530369659 697975270 14904490 914884745 22539027 781879471 842535417 990211518 856021212 970922241 749475535 901333870 291255067 954954419 194778156 544835736 746455914 976196434 759733431 852721227 299042138 800979159 555360636 744408579 416593031 707073916 719308763 775680452 166767527 679575809 457320795 868764636 190529958 829794477 837148405 913201577 771723734 929977604 953557380 957339563 545532118 642074834 724737435 779243780 791275803 823223714 998498692 999062071 760827709 877895060 217344794 904192260 939311015 985359176 823912559 852004133 83198723 427236939 154903526 171624916 763504370 784218423 549853892 733041592 533021079 556071107 175803455 224551821 263860236 594506563 784560174 898722790 823509599 865919236 350731220 586491034 256860031 757717229 622622112 683225822 245276949 454761351 502583271 536108741 858460738 882464303 844092478 992442410 530639894 671051278 968929702 986265954 286376189 841071613 527022684 627404591 878117442 933537159 729957485 805096858 655484094 834924989 328937107 412618803 947808599 984875736 9634667 736447203 906574739 913500399 658193907 952093395 335775665 475770756 602607741 939375162 177435823 387276483 194150882 775543489 728707121 950434839 23267465 962918178 797171697 903055209 990754518 999776214 863270299 865350185 8814863 569964732 483036905 871645020 311422410 389873235 173320318 826337788 367169582 996007065 945703408 971247488 697107735 917252549 995323578 997453855 402216731 815713590 566154723 820263834 120918895 815538108 552491161 764224427 55057430 604721058 340489935 617778522 268117734 480156426 288102269 468578465 694946671 810295879 945324204 976465039 745183033 817306013 87491326 366472071 560627004 573268914 871771157 969045671 925604618 948369910 23962682 457559886 476588221 905158072 938271724 988741295 411502198 762974808 289487152 554364509 504807702 999240349 113350263 883047766 345291825 404078906 695595442 789685150 985653873 998680458 749235312 813352434 477072542 643917115 560742094 786839589 396845704 888768977 771321897 947190397 898127430 900399625 741104062 897489492 636998191 896158978 95398526 385209081 932759087 950509170 317884064 439056505 217678800 762148879 356726135 822212798 549686433 692846978 21728491 913560817 798165586 969070429 526735216 547312800 845544347 983939015 3666920 102835307 141513937 492231450 349586474 844104986 806724299 866282025 463303306 929570301 722225319 758154977 385182670 543179218 573722851 704735509 938909279 983647734 478505237 515696485 295201372 815234686 36966966 451988596 838241421 932702987 399710134 428407909 605660292 732290318 298533762 636832922 158991402 617989943 690219581 915379047 170470731 383129041 804862991 930814360 995956081 999592332 153901410 184391245 227730759 966355646 528217798 768929758 636435202 662562120 165445387 287232615 522433494 870415378 674157276 675369389 802328515 932903182 241179804 921807194 867576692 959975231 260862598 500092483 499229509 703184666 42901903 651594577 531074903 881787279 196798772 344451067 899696583 905153155 181118528 688028671 712148900 789037573 672472251 724475320 903768408 956255832 332652469 899209060 689442610 979037757 224193803 898053040 703310808 921177518 878760964 912011931 700165816 894032564 588361008 798529706 227216226 277129390 555867738 659587320 294570016 441918846 826844438 885242572 284006974 476544985 825200637 908406457 796430533 915206345 139141885 942958583 996302395 997286163 76633719 514986911 735154402 991871550 727915167 835403149 528300521 936376102 276792913 807526569 482208447 980586676 498121989 802907851 255366697 666907790 471358614 521775630 311936920 526588373 169844023 920056437 291830221 979467708 876742103 972937062 966444242 995328330 48906951 627023082 29991833 869989883 168037158 193699288 891490354 962112580 962879062 979725292 850661829 869665856 10746130 533857411 328699912 527259914 574630997 723535645 244171303 345835772 602269633 864828718 233170970 560543500 963548677 995950228 535635472 662613179 972855319 985830633 531839490 974618096 602704122 727929661 288660 547039983 432104425 663690450 452469519 468668207 505589492 947508874 703500183 992065883 301740244 462650531 317585441 395891218 186527338 410246661 303647113 692785293 575057791 984605407 106881438 381115502 893631165 931357102 92600623 240850722 782337710 855734196 889215895 897947385 50417125 494465464 315040555 940711258 41047288 925314261 879416446 934580596 271669397 406186664 519293785 818654264 980405116 994988004 174317289 561740016 240722872 738758659 775519656 943804425 313699070 855464207 569331394 598619949 813281090 968012663 557221703 599398375 66817479 513050371 683249730 706321001 970187268 995614906 892928238 934374194 930275287 991454658 391521733 688277761 966874897 995919684 573752163 821377656 564449753 659161695 296832901 734839984 309646273 499861608 621997937 757040405 119043520 868350413 778254041 882320231 566104468 653079374 818874447 976055583 924166010 944773293 833909656 880430402 28363469 667949530 973203828 994341888 953522062 994358871 548469065 945202455 885311243 906272221 902243043 928175153 847289552 850532291 11937762 802741821 636139203 977211794 158465030 960731108 574522916 601928118 650763074 944134234 190129462 546012618 606989134 729088934 607678444 666089860 582375314 787065246 554197428 675990615 243632175 339017742 465606486 672671150 623172657 706753867 516923346 850536247 607153316 956719456 358428801 441446959 819178490 990701773 308033828 848603659 686282410 695659910 854354535 965559815 507749019 757555549 587842798 815962139 320663413 641372417 327040292 997616016 317167321 726201618 272419400 931624101 625575910 673973545 76083219 553685422 839611611 852767857 762634439 863454509 951012510 984973398 613969700 720812050 154558541 387432608 428107792 986565022 94448687 539785326 440899653 672156074 267017056 645346317 643786593 959305673 189015792 336391954 811353791 854031440 352631660 454260200 422622321 614593473 68190904 497256193 50926205 463011499 441899534 753702141 829907458 960458490 981916137 991124153 361989679 490514934 767235548 905530625 619243573 761932133 466454151 596602825 509332263 712964451 594598848 849634321 270668271 481272360 476341542 820729439 909052587 942476614 639566482 840080175 829790747 837193637 871342639 992251239 605503923 932580073 624006411 972374987 886290047 891677420 806241257 992995415 887192360 919384017 672521574 936567950 245148508 808827263 633046702 922362107 36678337 632020067 45315430 296598010 313541017 877313513 193174211 703291529 472303419 924794501 62353510 302782757 413428194 988654782 430554423 830999444 277125773 548042882 98178000 434291312 187151153 266997158 832292496 968836334 257450471 582207812 427326276 571308618 164173373 297944350 531250575 594181795 832967340 895049438 945686093 983935925 46917630 757596905 291360627 618944578 533203305 758463737 481392606 723045313 772814450 883733958 691652296 906905159 694252733 776012094 151993296 440732507 174013411 459805421 602031461 989203184 824753245 940402484 528046585 823176526 168627946 438520625 310180613 630384793 664284408 982211529 804665849 815812474 939269813 997175113 579333979 901357535 457626926 579013988 623950263 636419412 454411754 794809217 951818819 975117258 927210905 977316056 429277196 661386990 192628302 519835673 36918673 217497664 489941920 814392556 475102274 578038613 473958266 621907532 624424861 716090766 580546828 980852376 642505306 773966154 383607351 426329244 921592345 952860023 774493262 946130829 842174657 842832195 305319435 692397306 526029650 974745476 560323553 820877551 439636633 908369998 844096392 985988902 320619445 774831717 75427124 649033413 996113529 996638512 312132229 382440722 281664513 550836527 476689187 793403868 400936541 715640927 693094293 743173414 794392806 907841599 638933280 680452815 717918882 898172432 281714146 571440178 128516225 296820334 197004300 375957011 556078862 766152520 87586590 953403580 17231934 913515924 920364615 933799168 877919785 896989470 28661675 47577834 394712784 665044553 968703893 993108557 133669955 314946979 993388646 994987551 203743840 818363619 5700959 488119010 474007691 983928915 817939789 947705076 861129684 906842333 923224107 994933153 5256441 187623340 588928610 945138410 320617542 821633765 789027988 958908715 733541081 753614134 753868421 924184921 561983559 939463394 455691414 750166271 894229169 923457564 491984390 597150511 385079394 725859619 436978698 963616129 551916632 626443451 937232112 986123404 947825956 981416733 727871941 767281896 448455566 923413748 926545677 993834337 846858756 849892628 971664585 978896295 222460348 789903059 270973996 783660662 641201108 998221393 527556851 588115228 907589441 935279034 824834238 907987229 687591121 832116326 693726162 782302303 513763679 870054962 882851817 892475355 288107054 757067391 105794979 850568897 100848086 759055368 5205009 433676287 608777574 674733407 262984814 647285676 945418627 951693096 174522033 192396035 707497988 865347420 785398981 939235991 194751801 603519993 585533871 711046158 346881680 772104470 469701012 564943519 312419205 891197193 184866445 591265447 531086594 691606073 152023244 716761994 744593181 919594979 206568694 740166104 935304125 987852435 437759745 895767078 672889174 692396120 887037623 959421067 6401624 684650966 123926276 626445332 228529259 235664313 284958391 827425382 122262234 552100163 595690957 849930021 337602510 347367416 861103012 963306052 177263183 445832821 471466655 767364737 42503199 765847151 942954966 988966216 592094534 832165623 849911344 992373655 255513816 889288757 753983179 784274210 791077677 945976910 834384882 896158697 887259163 928433996 535974517 807565016 19256293 698846849 505446053 700829955 704791950 936605239 565755014 675083721 334534828 625077477 850467099 898250075 15613740 443538845 658029156 877762920 223537865 240545911 462942694 667709483 230877429 362523563 873891167 968108315 195094979 205237018 265710115 341140188 554719448 785994065 418448933 546285098 14864197 181877930 828516683 873923787 382538218 753741748 837661325 878685378 413108577 774913511 449301277 942109284 277733168 461902653 736403830 891799955 760888238 977615270 556318075 769367559 447876642 832636718 485902330 664591924 402466229 573208358 373283556 992176433 297556506 570218791 919348801 933578903 669154136 925774872 683161619 846974093 887969710 965774086 44332234 268683328 906498906 941690515 267292791 458041540 697003559 948314066 5638539 554749225 588669139 931534602 263328130 418543659 778095876 955743962 717515534 781732637 428834548 480072199 258957359 353622935 391525026 647387219 539611738 784898528 728662527 856893379 529735355 851328057 208593205 723403973 654405439 757725608 850681883 918049620 299698095 478320459 672240502 966646727 252685904 744330558 599349654 949775484 667846009 829814156 665751554 874668498 133855243 510041643 178024997 886710841 609883008 666519473 499916275 813041772 311921769 583804208 45216828 363461257 137372325 506675322 667827499 913103354 593849407 994046029 199122888 489779401 236695971 789678511 943175274 968575135 507644481 660770476 387500404 655283395 259866625 782614206 167433389 305080409 123361120 370195033 556049588 750207900 791188390 902216351 94412301 799674085 585317752 926807514 725508845 811977343 426974365 578627177 256978496 295703514 813461083 822817497 749005193 847000290 186884458 873669254 426272148 846711103 554603756 936809497 76870425 291500641 235467438 925692610 213083706 880952599 589256199 633653067 821768311 861441641 727904854 846611740 588110106 864058365 811774728 883232809 726125290 770932903 639241154 977825441 717909016 846693421 711888063 929613795 191270117 922921034 38042761 429570775 880367395 964983308 572263767 827977498 720068603 885271065 339170111 662670992 970484609 978673421 971222061 979756856 264523088 491621885 442706346 852553371 18674661 974143812 421818748 912218834 561503715 844709143 652535960 999219971 43067201 253111971 168075256 855295432 105165283 720979831 118836827 291577637 316142833 551014739 375351990 588270895 182329728 608300498 659193551 800969621 65010401 902044808 547296123 922490208 984628147 987356966 615924595 869415985 69234776 346898478 347880985 828489824 893660226 940780830 64198508 731313009 968364066 979882704 459221422 925464429 663803768 767150673 70910135 595942845 138755799 524983280 728333406 900722963 559980327 877453096 793264836 859259712 907498387 983718722 51170321 296355624 252857579 926461942 589351387 997169336 37076940 545044634 403580899 870570285 406413593 852155962 832371257 994305759 347810574 883902494 68191287 699972613 845097503 976282579 704587359 879933422 998576067 998840239 869141856 895671462 155465176 523743100 129853427 314765557 477190589 890206794 711705695 847492594 569310401 777692122 307308989 627478869 711989390 874267607 782600509 877638968 538808612 650383866 203038301 612404929 677519952 850091552 432737823 532216619 342112738 987420340 133091954 629342358 138960104 380614694 636837463 873738525 260058226 765932204 829717874 984540148 206129587 327402140 552480128 726469675 756078593 792616813 448917474 862408460 848303774 947165147 509675133 708714327 845183634 863347949 519207067 554820449 601410593 977284472 83663047 299765099 821924549 956415789 912038543 965589627 150903971 909037344 211566136 942542923 311252649 742329820 982937871 992997863 182228151 839551278 631661257 935659505 685554244 868767678 768031592 778797546 933033316 953554862 245233250 735146782 458476405 967802484 23438418 194844026 713297990 793393342 745960774 946726658 271532756 768176572 657103420 835338160 861332151 865466013 142435626 382418407 111727581 721465458 324684328 545811240 243590732 579966593 326009958 964342884 844264972 859730504 429505366 449480635 622433675 875990415 604118150 633192562 39780068 128615334 768041342 903573159 203761007 982532125 757307667 962070887 317886156 501908008 101504310 168097833 407641733 846325613 547603436 803541354 218884554 965234017 826227291 944808819 177267637 897219305 821752197 908766951 358342730 793928194 498326456 978438847 663780441 664387690 79917649 407848138 532205377 570224749 745196761 919813842 939391041 988870283 306973579 609000311 427025025 569263251 581717129 964549886 35330512 913474765 354689647 794685372 93033607 140089980 182478904 556095005 609511540 667842977 871994361 944597444 570776751 875086852 209701537 851884346 448054200 911496091 440598635 792827162 531153019 621612315 290588311 647932121 660736075 991934576 352021445 742680644 383815017 585385076 789819784 790684581 162130270 716116427 688912586 867669463 773027995 817232352 729159160 794833896 172965961 999198520 438548568 908704422 777521446 832898797 881427139 907477509 232431086 778187116 331414394 441151976 859244648 996825589 559982895 888530394 22503965 501760359 821996231 979775114 358383499 852937089 636059453 644907586 23520359 276956986 626146718 862521607 765097018 867815861 107759981 127160237 156489398 981877601 245934433 306066180 2287686 403943592 210011846 376024628 347075291 907960525 759795924 913374230 372220085 996323605 368997773 949072477 300958565 844930983 830598785 886625968 17265463 708726412 367026079 466632067 214248022 417955920 582893487 745730655 567828629 913545761 412842796 523353460 880291832 908257230 875177124 944595271 16132353 201976906 96849746 237345719 605135655 893129302 743811776 892729511 689111885 914479329 282291234 710755656 389436459 981278028 574186314 958342239 178083771 730237062 945629377 950750475 181633459 909350591 830665186 913245486 737416344 812514963 840889783 979344572 592665910 858422485 803177891 993455359 874336750 933027080 715058798 870923699 901926665 904482276 844668290 917126932 713342368 853906737 326428512 672325359 283517693 860754216 593873658 909573481 680205745 762783180 396286878 462159623 888387556 989029668 446319207 923258902 67909553 356485436 206092295 944303216 105030594 980960903 39930972 604638820 527080658 921632888 957633673 992710252 270069968 840106163 370652025 386494363 709865170 936590889 50802986 541438143 655766317 787169678 504841292 804927857 782841724 974791750 479243170 912651579 756027838 834096059 795926440 861940720 777489461 986046246 452564807 724441345 409856292 863390021 421071113 614185805 455374694 560947211 336704218 957288160 797835500 990235099 354534038 373653734 663959623 918853754 443030194 748343399 774098239 847110034 556102841 975043898 512098376 580062916 664874788 768562623 963302387 984554977 299768746 352660318 989929983 997414742 30346745 638392110 359730557 859740821 986529158 998864130 201547032 491247974 948795183 993146884 890955056 996447276 511268513 745682689 548481167 560655159 776941915 975636764 541655731 832154573 392692101 904847837 157571125 820131114 76487820 920815063 562670873 675831270 870730720 888657925 489276860 671848349 177293435 471411865 707488687 820181995 163423590 434454251 191984361 746725845 556564172 698074689 861649616 905851163 517045567 561898642 592638655 767357874 517047092 544803144 527918957 852408665 922613651 933890029 689012761 901783946 769156381 801804726 539020188 553667702 102839259 668610393 409719356 428598319 545997526 929602669 150818267 794434763 569436999 961110948 334876356 648820246 427914122 454294142 607054397 630858257 281273269 822192868 61996455 467832787 624921398 828393716 756513194 971389928 69429715 311439439 536592600 961711000 905375845 907672562 625593179 861482327 741581318 914789387 210320742 556667417 27713379 62447350 331393548 574234573 950390197 968208833 86001078 452665521 622581280 976055029 648515613 651049629 847920188 852657446 615672595 660670367 708977788 789602565 873068714 873259659 330909987 956514528 74522932 127673365 807585787 980042578 432501140 810575870 840532254 889021944 921258422 949906741 913076175 924380823 752590151 880774491 883840473 934278749 825192860 873070143 624515697 948724099 864821131 970384470 730610838 798475494 389633454 918866364 253562758 327080950 178463525 855051632 704797798 957247679 107789114 302900849 153277055 304476410 452719833 480345096 176304620 644659376 860223477 968320464 554562602 771559615 372552356 777455431 409642124 715949136 572953310 764647622 407201724 643906877 119085591 298596616 655311960 996594100 88870593 162116357 923775498 985755197 290941849 298274295 970791654 976044650 816853178 850824796 550980414 623210339 18553246 348031097 823979008 964630777 783661323 876998831 758337326 834487732 102539155 940422375 924610588 952289430 941970581 970199584 973351527 991300652 250848750 465175453 551440452 954022065 474310795 983501512 649584097 669304384 518409203 557524264 237080516 299966635 493348925 770838623 193755712 861059632 706840672 967281670 202192726 946090978 844820718 989577364 677048598 871065849 432867192 622297992 120942746 660642538 130921910 846730604 702049540 786304382 840468724 929824591 456697749 691356228 571727909 767349161 885517188 954610560 342069185 621776313 249765761 870295939 715152255 928161286 522445516 831834415 113324522 250201481 769600359 843588173 808932010 999926577 630393307 770194391 274960582 929704035 593405478 752439646 778310362 800716651 729450100 748346195 926079267 984686707 401434758 931298518 768195774 909121189 428099915 904983481 146465850 588301822 656212063 991307223 468632314 765003409 150243088 650474340 621645385 873543509 839473622 920857006 448687233 925653670 441469194 652837731 812024443 988788618 701098357 801318279 115281710 321207934 760679985 778399962 806681189 828993884 600139574 703891771 654211290 874807435 197835801 499811895 679255797 944254655 848561795 934875370 404206437 516493684 246043313 538015437 48424212 892569254 923660704 935660640 84913125 716804718 655326160 805419830 163493105 392930056 820259540 996831535 728344367 740207596 822421639 946034901 592268626 678673840 51471260 273755600 76018476 806075348 926334070 953346403 34693308 990975687 626521583 821648375 868882278 955374067 761440736 963896818 734611283 841698811 669848969 933458744 494773037 973457741 196694805 308039803 166398101 551206087 180194276 303101287 880164347 886507910 412890582 797341123 994725390 997125922 292909943 554325850 314290578 424789976 60137642 506781143 821916644 925731268 292804974 654697686 15784607 367455013 47327863 851288223 267376950 365680075 408414867 690577531 791926128 930799421 913591881 924831731 614248938 994731604 628372416 892271389 306364318 592264282 902345925 994808110 210708387 835275241 40077885 340365476 440135757 890284890 226732140 370707737 561668454 645452396 810206577 888457500 382898989 811076241 522610509 630532273 691791902 751488281 789557698 907631300 132588244 986424729 92771850 209814124 123088041 968665612 857695782 972540181 342461443 598276260 985705218 989169587 715548997 798793741 788885803 924095497 746379957 806181489 375234692 867620294 345461559 756671072 94758741 834212994 535776476 821462570 65753642 176711782 389097508 578402353 253394795 802303095 559593564 933975516 717861184 921793486 717500697 827754104 378480124 448865323 539422697 764626463 932727464 959545479 79578829 993132811 595953699 628113791 896370782 932019637 755170989 784024999 770864029 983823500 620643659 653931280 381889317 566595814 462227757 948415933 33030448 322163739 75774975 515479592 413307389 715216607 745778951 937901212 256883695 274393842 944041560 950655083 346309248 546074201 671756645 772178783 131551032 591210133 667378055 870368073 34849353 685602216 277986256 922546695 265629494 559208997 291035023 569887444 294700361 587126504 798935781 878548012 428442925 839593918 81384532 858462725 473794012 762165979 878796563 935175481 597701249 659190061 705389248 765597289 535651013 779790498 466314922 981034996 141174381 434663870 660722956 869532852 824681958 859808057 663670966 873554981 291036030 793885786 144481578 187561714 126922859 447711385 339931359 450475907 775801269 903615133 102005 654059024 683370628 842992924 342930165 898588814 376124215 935200860 15423177 345209945 635684433 671466898 819358506 842912934 527994055 558902607 996369729 998783071 437870070 510061462 814873754 969498106 835483247 867445883 97517023 373990717 339765996 622134588 264118260 355882651 189528296 438084774 647950460 690560881 506295436 968335145 782723543 899621932 122974932 343767088 963714720 968670150 793281244 966410086 518189016 739860933 431736741 701934543 866730755 874654806 641005495 973360795 408009127 417891738 191729550 590347943 244048111 945256525 94956106 492519829 645847034 961078585 616763024 867640531 806994572 932924807 966767611 999724415 775269025 936026308 743104389 983630767 774813694 836886283 493125463 844993744 219106946 765930995 857075256 965677831 789063766 878521470 980550128 990444702 519329299 677279810 225844073 980418444 475610322 972102110 612064219 702946766 427405967 595343603 451148878 758830669 744308975 932311140 896407940 934129328 644783156 907270973 301099936 451598291 987875806 991708174 427521317 428328805 144589491 780093916 707729642 968749291 675497050 903204755 736859355 980979821 859130684 900901860 916013737 948991903 401732096 567447522 779840970 888321934 815966955 871165580 466029856 705408276 836418195 900827208 508827448 639694598 37991219 331204041 588840632 989001339 493992990 663936114 876151086 909477277 667630729 688287392 511816330 577440394 282021581 554356557 351811876 869811232 663214380 893867791 55596813 362172138 674200668 682868816 837971394 978631959 590341710 781311895 825207089 932078078 819354751 959165817 199531934 787983923 144274808 571035806 490605704 842191466 623949237 680523457 620105099 929128223 56943080 487971129 592912702 955768656 607394252 625335992 840656185 865094684 392191667 663513974 981372886 989890657 211906588 788930788 830491329 940051994 50550339 788447479 708338424 724475498 808250834 877698335 983337347 990299101 228407272 292592971 693064826 957525361 11164373 780644351 474687055 700744596 172917773 755422019 117862371 143429758 310321598 632777230 995969156 996490826 685498396 769252436 104411406 409697682 591814311 934634752 742028345 850550102 434521382 592127604 6377806 357619635 230905008 928832884 813516828 963858823 291270236 438184294 473364793 871792491 425977380 509809222 835754665 997150753 999455712 999771918 278380559 285841325 494885466 661153980 502706455 873220861 42484349 288279752 114246968 465556224 948624273 948983941 82423886 236770512 204491528 419771287 357961715 532114681 429978095 828942209 576485971 611490672 39188893 370163359 391746259 703836808 676156653 899100990 517508213 807517234 634442841 982685365 744708029 981224916 559922971 788440770 930447143 938676776 599560064 711069711 267829956 604148135 380115798 918390767 856475443 937612988 121583960 755436671 280147561 433318111 459682025 890843253 434427747 943564108 914420373 956013458 172894942 597396520 4902173 30511957 129794694 489897320 961981821 965297423 879901995 990781274 233814893 651326529 882921718 993579160 132675371 574896445 605500122 787788750 278545318 937134567 465835952 889787268 879591267 923518038 988372860 997400981 241746100 791327636 145453115 321769788 596139020 802915007 76407079 758647672 927972362 968971821 316829623 847452813 371486936 608674918 197422985 925582223 537073757 962170735 196710089 514301199 514067932 555483280 254259462 403564184 576211296 766290519 191164245 706940006 897393832 978376786 863139847 998251915 896329865 981681135 465609546 732903300 907064999 932921804 88827112 511403110 281817649 703155483 511650451 800338501 565935287 838014218 49134755 743347771 336650920 441308794 492733371 764651170 377854447 789283745 154944281 820566413 923983422 971604836 844613164 940021451 255118036 404014211 366006881 667100924 842852463 997101474 690662122 910361852 505667809 640298068 92092376 228498778 119024615 695820593 469451077 793278849 439874747 511385809 288709071 507483120 930136200 997742706 546844027 666732624 829457034 843775222 291059806 424745287 570179554 656378439 982171063 990750782 959619445 969110229 442991980 582689654 839998164 970963591 712789061 798932966 786451955 813397383 254318138 392138349 438952151 996171324 335129631 816281075 619640899 922444003 760562296 939677490 859124389 979929012 137770006 731907419 176017079 384190769 446104567 895971616 13555215 555388374 662798065 798265874 673800615 918471989 462778900 524240743 639232542 917418125 897000132 953031848 900888025 921424063 361235837 978073711 633833423 918079745 773332284 846217704 973718206 976133309 468174598 688685618 214809589 990092679 718151271 931274152 886131207 898724939 693474746 713967074 541854560 658340255 189908276 907165503 339594154 470256571 870492975 972910706 779197247 929873225 653405019 872292499 47792303 157494938 82734950 412816936 499670851 972390485 851365502 989469768 591763241 720295064 248937464 856558287 664351593 864632981 551688731 877155504 980314458 994202575 853159302 931948900 892647398 965982201 360198320 918976961 660403644 757874760 422906060 532908213 639067347 983462821 553104122 856339008 160966806 722117514 335740637 831574154 951016191 978856554 320803644 404104606 55349297 703541916 484419320 921603992 474893241 638874841 841994960 962810813 655065784 859800528 405259538 569041362 449565556 682969253 720613659 958862743 910118622 972030806 888351688 931994384 630924961 859331154 569193208 973129948 240709247 790881012 492663979 874910220 961789633 997443811 848450667 985273292 952752722 953245975 83937494 609468862 137721018 770446749 291952950 767373270 527853471 528647308 185577654 203104847 150666536 327196745 578255206 809280650 230513162 667886040 336776396 457569788 588514908 662952485 224313778 334691174 594924524 872074862 988572483 999016262 800707886 972064564 519224946 687901309 784207418 963042992 151140895 762540418 343719328 984727114 669028473 955574427 927975722 994451998 539818415 847777218 410264962 509351099 410494410 570963719 676407819 877845427 482741319 548856458 400861619 501485831 675694553 954886873 256946554 731519451 862141337 985294975 981067116 999613416 998726094 999803339 749209548 880316509 419750741 514172172 87342499 288694437 86454779 336732298 558922722 833701261 978437108 978472026 692618832 856640670 506744146 719796212 98315291 554172757 815534957 844303569 243723915 817206659 391404325 403626742 556737776 582451532 656217758 895168610 548249734 738503381 941357755 949494809 642248591 651345059 531937196 803824009 902922483 991291222 970418037 996611768 601539719 796186971 875707504 926211730 932019338 976805152 179207384 200084973 103868684 611109035 327737903 732422350 455253484 929603253 12521248 204087439 409772690 725781166 527830590 553207016 455410241 514953838 116656519 599534235 407469355 737043959 285721138 579272730 117583225 999759350 21394186 320328762 928688079 967022105 720683517 932452387 574082648 805156574 687673019 723118523 680365102 879445389 499130593 562015171 349367254 997333774 868660300 970103967 737461895 893772667 632628243 957465001 589039333 995285813 336613905 476470291 864762001 966265099 193892364 554523264 705374196 852504777 333029295 592100975 394433835 950521849 154687212 165878664 976148824 994647880 158467677 414994167 44166944 332750390 432030050 907679228 921248846 983597312 955805986 991908931 248468030 796693083 348767408 469384327 632253692 935034622 863586272 902844204 607169389 676385809 839071353 859113583 465620397 541143386 284109787 576412182 843405239 981645604 165561695 486370857 667975057 744107105 707834026 822774738 153734945 447762263 423586599 451256219 423855134 997282074 814677546 978976515 187315133 790790136 459367632 480390313 239989917 941675483 418686232 903478305 487084722 995406962 218694492 237735112 378395150 947048974 235629180 240673390 822335196 877890529 100091460 452108317 863939558 884007178 236165975 947071185 282136260 530381943 57301954 755830117 399487332 792800364 349156803 399601185 672267844 875268123 759288772 851088960 41170883 229166024 955782820 990387725 180148187 887949675 357126866 502228748 415665549 797604639 268472533 719420015 379105969 416759597 460104477 982983976 926830553 979384839 363862294 766171672 986446156 987138385 198169576 837887464 699470811 793278137 350207764 615223859 111599468 189801674 26163046 268107463 21692203 275324302 765058285 829254071 480471648 657435223 968108943 989632671 221631979 404861290 691241316 936459158 913070479 914641229 77909825 319023240 650623955 686252893 840842877 945908098 79333274 927155341 74861839 359530645 773375867 999412793 882381471 960770702 141606863 846266293 539587463 871298265 294556729 531911482 611502070 832422349 774740685 957941597 548762206 566091958 610273644 974771006 541925016 680232816 83853209 644996246 710032665 765979166 873794507 979770389 154657351 486516277 504179777 659289430 305707445 529469610 80540793 503613555 18615945 264616584 101588675 748978433 715324844 954875606 410265123 852271652 382246390 594651172 749418184 751487224 842413712 889182760 902346266 970221384 574365054 921494669 842549154 970548603 582605453 796129458 296286226 417611775 136258393 492171493 871591900 935407545 560775073 890498805 870748482 974899989 547486582 690547360 988965479 995041152 581897124 638507100 991935098 992546307 963249062 976252966 206548198 301704403 980953626 997125232 244102139 653538943 965838416 992948441 883317580 978075633 5728790 277407998 185252141 623710139 417396922 752917347 476168250 744367861 218338399 888602865 295282537 714138639 280059874 515917527 613956688 904427431 687054961 950012877 31577846 83481361 587876256 957388021 387373779 949010462 728008773 874528309 751119770 991567512 441467898 760460888 382827673 990525183 273254773 890161655 89198737 611279298 627959441 939271303 616904488 909734391 833916446 878397681 16586380 155646460 181795432 828063277 198441794 831989972 676860689 785238685 961275108 989550449 192447827 575202254 716338618 802036320 46556456 848014785 218816785 859060066 380141813 699692424 496548391 591327313 71387328 183788649 382086808 921211052 7311877 426729369 602738504 728929072 361752582 684717313 923162636 998314850 819448641 956768498 966941118 995002513 482271253 679282596 626494612 994254298 862304899 873805040 247454735 794596239 707068951 922351968 209612633 670826247 255548980 332854151 79949325 805018257 622467538 757303078 581426696 971747685 729670699 762541174 360054809 546394442 418871433 437941860 169645345 363924891 22603883 334702954 783877796 846848344 463983229 678293601 678884063 855748776 327596080 813632892 106685295 395889605 553821845 940772423 699200557 994808222 848670568 954635702 250236950 260364790 85365928 143940490 279432030 326683252 845152125 870545925 975886566 993036158 432358570 498363380 725099259 846240543 209509973 505190231 550741401 680624231 24017255 142002369 697212581 861486950 646238355 759166732 756903285 947398010 631518922 952284546 144548470 268286025 508127639 797484631 439445979 646630892 299643291 806330495 365115468 791779928 41008002 724408763 114465144 692599758 73423621 174041780 478874889 708305268 944090743 955523022 999357008 999588952 461930706 527183405 162764042 302749636 295256779 493893213 653359685 778994890 515581868 893454331 377746775 901189424 685814312 859996608 951456482 967562894 924156357 946422101 789229825 917824459 463515450 664585433 936712623 986816566 101599245 154496395 413477281 834153527 258886833 311334716 540479756 755129845 356531055 412512566 178373074 657392038 341325633 592831721 47978155 585829625 318868318 358076819 573230839 786744483 747159821 921241112 535146019 556772550 95370790 744295734 656435501 767631666 929953446 989500893 651778899 869231246 875438627 886822891 185744965 569848126 108226995 947608339 13902261 98227043 993176727 998345237 961527187 974003074 940407833 956595543 407052111 467064774 507967255 829962842 665998366 945754578 123062970 698514956 672612952 940542549 319750007 881067796 113162893 508211310 160564257 186515764 269219646 598869901 518355963 954486797 515195151 553769637 668310838 676244208 230324560 462815788 942113813 987890547 728851220 801353878 669433141 970849430 191596179 581154021 831749193 832199496 904096378 933033118 874201749 905804423 767986251 801343683 735701916 963819788 326025933 392316162 934842351 951019017 560383163 665740905 364801403 844166673 880158273 996510663 380886123 803291043 183450647 902143600 859295619 869812618 722150544 837932886 950319930 988323994 63576418 605888764 219668302 720869616 387594956 783675406 774087464 872518939 736328951 816527050 500884533 712544729 878247417 889761978 675729823 839755974 942239653 967310897 373877465 817501147 67294236 955158731 658407167 802649872 784205265 978106289 859676924 931032457 993402134 994471572 955685960 963631856 115506190 728315068 186482347 953756907 567032228 853685459 721924308 759520027 981766055 995369351 690199830 993621654 321750678 431853823 291040516 557505767 608574473 945275741 66935125 573641619 182272165 996094989 927104630 952919988 456426711 636751588 159864831 650929187 532285887 878981953 855054446 980962700 181813492 948746735 803323541 841923751 242974408 364654228 465731415 620484601 248567449 567959074 87793528 188372051 221588018 970387326 238598737 511296090 177406934 554719879 136976591 791993657 142657097 961783361 790523883 808854724 875365690 885876287 322390572 356780264 918588692 968298487 180119876 393406661 768233117 977917395 544902280 844243342 504054373 701754371 663843548 732737496 186579045 877357521 544666966 712254429 717483435 875319563 93745181 523195986 550967965 643563045 60005219 885731898 615204859 697774753 989794761 990592612 67841971 473969703 214100035 867068271 299626510 461681946 485296956 991424590 667053451 694029371 509584722 676412745 191312596 944300337 700606044 907020000 868582224 971503967 891421847 962853475 116141579 399480901 357738083 419511982 911722272 968780803 584751848 998069748 849201734 853756944 974896257 979418920 863813830 919092172 192998844 730375884 988859923 997804227 79091464 153477555 618852757 859323181 168342284 808117689 877399922 990792584 294132838 423845686 751931112 846204967 171129546 193531119 631467913 731374825 929646271 984544737 351854596 435294778 322518217 336989774 792032973 874008522 727375764 936153013 65537222 857745996 716580395 885166614 603882982 668728844 646829901 968682105 393411341 924362373 711820726 781880923 30543387 970702856 666674791 891418330 831892395 977789904 463793842 764223902 196386890 961968131 727673129 783192319 437420599 905232210 129136225 980920298 992711030 998943193 201501416 904498121 655096014 882425734 702935190 993896505 308360981 950298507 512134734 725209003 428168997 712025561 527206355 625399593 540619060 917594072 919720547 952080651 750213399 770963120 240794345 622742619 306396176 508992617 322284118 526355025 34647998 129554275 644261674 718367729 416188369 945612587 635070018 772206901 287224494 653272801 170406391 195289998 76317484 229370580 667849484 861802690 856493 917054110 676396943 951252294 145193844 448400027 893316164 903611446 91587816 790273728 118472726 367622621 646744274 888172542 825692249 847036966 180296579 187387664 267921332 593355780 427759482 779662660 824579570 953048805 243991337 824867404 528155358 548288597 374604912 650778507 225169408 859167648 448049072 673439180 372489211 599886418 886110035 943178089 454514437 589703900 427656915 989119369 694040590 983701943 753454498 943380034 914443464 997296826 283286043 928030994 420443278 813463009 742373325 902270564 844780746 995450094 243425835 356840225 587266075 788864078 519572860 589451354 824775796 833044478 871274073 875663410 307693184 642967058 518896310 919266018 339567101 730586640 115377108 313495664 551281080 921792863 325186071 450025050 816051810 978683252 26912667 580588138 155282421 387948358 362912875 650442505 47821522 96724536 642341269 805892642 659500834 811771048 758425085 934591262 153831349 988780506 438894075 918957872 622661889 821604528 805365328 853228877 539468963 871391152 387183586 494261005 124410708 422837068 671546815 843523592 497804759 632459689 76622020 712216440 678900396 762670728 268459024 845312688 278739537 871859713 857532951 869484060 29662092 602958512 225340474 631956771 892872232 984568281 633716732 655387366 635648578 985180649 132728695 185238140 949261927 970992867 707244383 942119398 683423396 859864186 456575756 477422822 750454263 967999337 916437299 947503732 932107687 961773645 235050074 640053514 6408265 635787062 399211382 956119512 875305405 903049087 467399313 748341719 337525978 712812576 500533482 720015749 636922572 757802200 55435865 941611436 714248829 870518015 493695376 792428007 180703867 748115535 695360541 939512526 14212445 532803912 525350280 991827595 197804154 496041613 626735115 713125647 679319401 799654280 772881671 822638063 21149794 68983993 319915558 459252270 395393860 717912005 693676549 741533626 562783479 644772061 285280778 593159088 627724544 871491756 289082187 914974848 435641380 695409674 940364122 988811919 706015124 892556540 547566804 746520635 629272433 833694608 953971553 994341865 538744107 797043552 572882978 673760698 733721968 913739035 716779287 982388582 905566980 994519333 348162958 454651261 584042214 634635195 484212414 587312451 344930865 683692365 419421182 550976868 438266281 443667398 544218307 669451692 504678074 781104415 223044321 693521253 114108443 255814163 823227603 971785678 291467827 545166199 369603934 495290725 240052454 451422720 283968189 655178324 190390295 214862024 392277257 521161411 992435051 996111578 80831081 753219202 821817520 956674419 377571491 831451773 440268187 929950985 929503443 982139811 450360319 853406673 775551637 890161302 648335853 837162816 985779032 986038112 885457029 998162918 163832226 832405038 76649968 210216360 348619814 912666257 357742152 626847325 340408020 745765071 186449711 760683686 50554091 291171731 539060275 970821081 568778769 896746787 504720999 898488251 220071774 752912150 571379046 800227165 535881622 537591075 724985431 959687008 447284962 803353843 972805796 984427746 14581519 571619880 875560168 971930658 211197720 880427667 696159141 910626057 318645979 988855591 883932340 900189108 582310357 777182406 727537613 737514219 357046652 455766922 53030904 409397780 860609106 921391346 199158437 707193083 454685437 995173369 55783048 294799013 761538875 837478525 466576334 899114213 434623114 678352469 999305878 999954132 639147634 777886718 838911547 950294461 292634213 351224112 462784803 603137543 275315975 682779620 680675493 826194753 460422646 968180875 638780670 745731872 449085111 492402030 566402356 957942221 616219861 915209209 631596140 977156022 636642620 959074391 335626457 819109510 739556063 961309526 907944954 936103329 315278044 626820196 69703715 737283544 881241563 923408786 315312256 952438317 767706031 780518446 229648995 642925391 440019010 969342775 426190055 458582418 846066133 853860271 638445113 800118980 126320628 357809444 6168977 895212156 899267224 963913487 443232229 613414516 322427724 956487744 667911637 782043707 777265924 974459179 337966300 368271496 838764002 939601704 163931465 736392395 301963039 653560698 223167122 533506063 548106307 785971980 176329481 859451397 232081675 450382091 381753617 879245411 172179682 650271110 836660003 910553248 26013292 799174428 748142884 893124127 221774784 824923133 121662057 529635354 669054658 742214210 68677570 621043948 857485810 926539676 219803097 275502480 557947940 892588270 806455113 842668050 777568067 805312622 943822072 986221933 284584744 876367669 78432763 565840101 689759735 846713609 833663444 959169790 170583750 750617244 854329872 936847261 861384563 869653752 392244915 871854996 26776168 559832159 34059489 401081659 232486827 736625832 145671804 492207702 209913764 787379508 678257338 813317693 744811588 916122555 482738794 710530101 70058961 936486748 596687895 777445716 717211276 860611730 595828789 954260576 3499717 349505379 38898870 838411082 974398727 987667310 717963953 781978604 753951699 915321377 144912993 987920799 207679040 608417655 90146612 378673315 903762870 989300157 475798077 605995821 157934713 952948916 83912110 279203908 16523687 37404770 73547967 376265269 511520250 641408644 636443150 663419744 35896184 802902494 256343417 338361620 108870448 348916867 506771100 569991871 140430844 788349806 938002874 959413354 391274415 418845047 736956199 849282298 412568894 831965148 454175720 664620352 513413285 522990886 880553867 881531373 113060893 629294433 141224724 828034771 140105292 450691786 608247417 646846666 102523155 686975123 721901435 800701055 83948573 574381340 879638643 993852588 419113624 614841963 915459412 922014318 188147762 699490035 323880435 618279821 690463861 969298204 660401055 685087751 191233303 290785700 426701276 906795584 238059039 573647200 881381400 928125066 182583313 518788746 960193417 978499603 240525295 309681969 472687590 761376329 668245021 852664596 255734310 754321404 744986828 967471002 647781025 910961573 536310113 990404341 324903472 952664465 436859401 760787767 717302009 995368972 145010537 894430412 845152499 870705557 38029879 586925369 548343759 946460729 624649149 985523323 215557961 487864533 204642328 290727218 699691531 744226409 653126108 744369266 231844336 742186246 421651375 495567744 456056417 722661017 884492730 977850478 889615063 929539120 302741502 323345997 861041279 962097222 315701090 970713671 192721573 638374447 10254498 64015027 910683533 955894638 258122267 890007366 216649921 713697589 915647886 961122345 937625190 945399054 986396277 990861767 293290081 640010042 772610595 887869877 443636953 787259387 420955990 773125801 153392893 668082482 323882626 929103348 53488907 474135465 180040440 385353796 12601768 748633852 753587429 893307327 174444867 458286126 831289024 873387279 826347792 921260080 773381140 965006672 997517158 998697561 153749187 846017153 393396248 491902766 266833933 400907680 591726691 809671700 529258412 758478072 134447841 603095175 303618112 735876238 283779059 728430957 293402219 740080973 509182605 513486008 253806136 860207290 880930330 884068469 448609556 612987721 986152137 987248640 489468092 670616239 303907715 440477251 816013036 859570486 637692352 779716275 366295583 969774876 257788888 914851542 909796313 957077628 128267517 232979600 87277793 235736758 545497706 930592748 840980423 937986544 565332711 741346926 224118087 397091161 973685529 983689840 264020666 865938774 654625854 660893863 233783976 741885301 334969238 955971063 885691555 936075339 337690496 797124025 132674467 869632878 647184432 982501447 457474260 653822339 371986249 873612161 585715171 672640404 549861787 551048486 312602821 786761741 607486502 998896282 957332013 987506894 939818076 971529510 719944396 835910673 495122493 996245892 411655116 960793910 58380919 256295795 177161935 661654085 936847665 984687272 289674351 949753051 220876287 786126677 137877788 239248827 545315820 620665031 177492301 343237015 185081057 965235966 548844627 796800639 740442387 944863317 77511790 279867569 970531588 984150671 477588872 786994969 952287678 957321839 882385384 991071838 299470524 538558761 345784071 480707767 443401743 806330194 432315839 709242567 411050625 775884766 147488340 650717243 414337112 510948956 258207594 417097164 862302212 964380059 384063833 965893417 458042969 608833244 724362352 742652629 202776275 927065469 134986166 705532870 175355633 932038348 776603185 813995799 646506670 661077112 182064666 502516363 977856177 994359718 216198958 242984787 156826751 165370915 768252960 909276776 164028950 806295841 358407074 452192786 321377879 627121314 225246211 655757728 582023724 646439408 467522735 796090055 343827136 911457097 471227664 706062294 997487177 999434750 745628003 884075541 507463004 530258608 273076894 454076260 819770833 895780575 125368424 543375821 57306455 702454608 74979639 646143306 305797404 879033493 612762094 877064708 846835695 953969490 785253434 915851486 504305295 645863694 732160837 916760450 99336937 948403518 294692083 738903752 531452199 591988106 20366809 204878181 182144942 738808953 265015715 416843526 793381937 865796914 589191518 913874813 236282244 589259928 316999328 540203913 90938012 150195287 279932593 869765253 426720012 652575313 471623194 637405715 654106280 976739664 921171891 950888915 149169850 366262075 852991610 997901402 217465755 495808903 353498507 821800034 421641708 950940711 641678715 826340836 423069495 997794905 560690597 767631120 184096883 816726662 204742949 315949652 324208493 571642155 999053924 999385266 10473115 660610507 631937455 987859985 327425205 425417588 940123185 967128099 501370453 759707453 638150411 816981975 454715061 527052249 175101958 177326515 701247029 771987587 87622691 303887851 758569584 948324932 903368934 980554557 777547283 787884735 859370499 866986424 126473360 341305722 355725635 671211528 37251761 221693482 210740063 409538040 88658131 354658300 638631396 723383279 169006965 342183992 734332888 795283644 188606210 261082919 694597561 979494590 18407490 84323192 357222452 792812702 464168472 659553938 852800197 981207566 627847460 786425010 602310223 869570937 637967913 943364046 164740994 394781437 403741761 803442983 987422188 992307997 687255312 775310714 862733415 932802787 983995336 989787654 99569558 326937477 468526631 649349906 696633650 817237287 270874550 402966646 206402600 566996055 951842974 959513836 280157655 636661811 565267382 724025700 217142468 789065478 967584947 979939787 925098060 961532003 539426340 793581549 864702519 985855316 948717204 994439777 32878607 196411988 108350580 780432102 306791208 479019883 991845149 997417715 396427849 500650922 291295780 642076973 869036337 928910856 559224623 901078799 342319027 827654227 283932620 438965111 868448354 891965141 16171606 621356671 847227215 988911192 974178853 989041456 432785552 570897356 685856744 826769411 971685379 996728207 921541669 949670759 699624268 969923116 870854856 986267017 508503990 968349036 375892671 966840095 451245970 888718657 378696998 674745131 542710104 716309047 524090760 649584769 429561594 594916403 387589461 928755707 923796514 968210029 785764035 970386614 862317531 918721101 750705404 904407386 217938873 476230532 662209992 804827235 552924230 708013405 337532620 614033306 727525312 781956990 211091837 267120616 270349447 574892714 462044722 850429207 54598412 370645345 285241641 644226867 400950281 859012389 567231368 931697358 758772843 996074455 645433135 651001889 54777196 721820507 918059164 993090150 516283078 669776733 262362695 945509321 233151406 829580248 893052743 899328807 524401863 628118664 852171126 996645029 399376061 916120021 879656347 939030324 878553115 907529190 605047774 952539506 169746578 839444033 343725218 947154943 9821770 653135867 516576175 694987579 714947136 912959515 54081892 441066674 900502953 975968515 94331241 626622618 940110689 985492744 112458770 595207846 535417635 560791319 811438880 843455379 257336695 687606038 254568555 681280852 802576619 966766591 450895077 841882912 649886944 700362938 668002719 828057239 26198487 26594849 857434321 892741938 683783789 853280080 99683424 551030135 131247038 394585221 16681362 84266862 421274812 430721768 942969425 959737309 493551334 537014824 865401107 889419556 133027802 470194786 618865926 913607312 388489490 606674786 533149611 825417459 942684987 978824834 25936990 404926503 83009070 343833194 414389861 771175831 673759197 957508020 722862983 971372711 239380654 642275529 942476036 981346009 811736896 823744198 911049347 939699130 754896109 847079278 108375430 304468027 822885768 971599557 822971521 981989178 896205651 936268670 631856359 761186589 489185545 827532710 96543221 343374540 627842732 683907047 81882026 137767780 391951505 708441258 115331563 556909232 406884581 660754866 353515945 804975797 968854321 988704501 355237623 756381550 557588167 904544027 271876209 530352822 678889247 889536076 254425732 475163342 245412233 753598234 395537127 690068653 392781955 479487905 342159911 828042420 751453187 839240758 439009974 644915235 451857936 725947039 32899748 143140367 655372343 809900738 463720743 888995954 933393919 994615062 901092379 959517631 632764655 883042747 607714578 667685331 57668119 788316473 356958324 840405208 272360594 316230556 269377575 447268960 391873082 665690921 902729709 937989444 985883641 992689599 265138214 791370160 575071916 742199289 199985551 733510818 854426999 970217751 603150390 988306474 836950044 939591244 15520493 947975045 590301193 919275691 831714803 948710801 305398298 603673448 52539164 858662847 351360857 883559532 106793580 348516776 525753298 755963307 291881960 796098735 358405397 880107400 391088244 861469973 93911815 190178102 753292114 764045421 483362726 796965458 203451271 956779923 337956508 831507397 310059314 499053513 84871443 724068162 874222594 888178142 35316767 391351100 600194521 659135876 973940866 986287604 677160715 820896813 221497245 332326053 507647629 828510180 515725049 877785145 130823786 694978688 677052401 714129668 699821026 974853179 155793317 859891216 20164773 399414843 435457646 544974966 990448136 992106141 619115972 691012715 719415121 861944528 984652405 999084381 227381203 240357819 84749976 944167333 650694468 931896656 295122389 512791172 405295528 647009684 438254795 548576585 758820344 769347952 333934916 761915112 561187272 893088198 172737308 368440809 560259088 746834885 840939646 955627870 758027028 857831627 206799470 898558501 781697880 986159019 455425805 855799203 496046599 925390803 111679876 912041888 943584224 962139165 575142879 990870921 740411254 802547335 876794543 881410907 16977984 935548146 472530932 875231653 231628999 532236521 831988351 939550291 974104824 978084504 642682014 709067660 874318154 919028410 638080953 974245372 222109589 664505094 490164029 868675288 878820250 905975031 909032812 992810091 93276886 439241695 805762800 838837929 881698297 963098097 767539782 822206628 879595167 941807522 805024976 931887386 663322495 857000950 917228354 947135348 199816634 970591228 134414686 923166813 178484238 508939085 629365828 769107737 836123220 863770811 918623119 956558633 834337352 890737583 477015028 996530532 23609758 233111227 240982316 428622714 277471708 863229171 323702368 506510332 45705910 803909729 61962096 146860131 459128095 480132378 717756437 776455829 244246971 342950949 191399235 262848900 306587199 402378766 423120170 741890728 501808136 957201740 662204355 783909901 159708616 343567865 720680250 732062367 374439977 935478069 761422709 809024198 158343729 568266144 262985231 394251529 455657980 806128904 229997088 740947182 514202997 974185333 953171794 956943331 137307592 590785453 51658871 886289682 684355269 902787797 231284444 246058506 248806521 418237184 942818192 952903320 305904696 984545303 307404048 330521420 543053266 643598313 701577693 843151787 615497662 644890267 30780141 395345209 903114527 990299657 932888274 972733232 87639424 934493039 358100208 950805205 980649857 989363243 723886616 884652766 701925218 859989646 537985221 950966210 97522343 187550473 488656318 498031086 12673021 327693166 511526883 975372823 53962701 603814125 772226762 950812638 62642809 279125611 166309505 512378266 614798784 953493535 528971686 633853623 56065386 427368339 747852669 843234669 197137415 827236603 874891670 889084874 308650702 486508874 564033173 634984364 580571356 592509125 130417643 561249087 847004574 965826187 992597660 993575188 890802672 905900043 598790114 879045356 918333033 924206578 534272319 999555804 813856918 873844810 292396939 957382855 817880778 862255475 274421324 438609117 541407270 651971886 126226086 134932404 660738802 854728231 705970297 710065372 729087378 797513147 508308753 841268796 765583405 904360776 865886158 915863123 126682298 489320475 382829257 778780495 776299515 869987406 546758635 720900346 834298652 859628698 327113869 664485828 402990335 870563686 914486714 995380076 7087106 415009994 892021855 937621505 327232564 982170709 956761343 990500365 732115620 769491210 607943869 842143224 214503704 876687213 555445485 685403997 358089853 602892481 195718296 557427657 643945504 794985624 791602164 973742206 948637688 977673758 309270945 579180073 748123338 977824558 836729868 949906141 626594804 997631785 256605009 401184704 962275103 987047293 788114739 812289888 65098470 764683265 505823692 625454597 870900178 905636227 42764770 523869456 75280723 926240035 860820540 993129035 714692625 975748265 938733349 965821892 881233455 932699238 851285037 996015377 394478655 570514080 716858348 890049803 541763168 941098795 742431473 931005946 430002320 752297858 739976835 825515539 601951035 790371840 635457819 639045654 190083512 202857161 847261580 860857304 771976746 813651846 847991092 942156346 970584877 973001891 137756203 670538462 165093813 587936663 6061330 345217628 443282114 589257056 620214193 655383670 842037211 867929435 409873800 814008797 678514038 786372525 16186867 148857337 64471340 996631283 881576183 997213144 308915969 817577477 426388737 808523046 197457698 601948808 101048984 620515653 926442305 971055226 726148190 729910787 614222458 643976385 826017972 895781455 128909300 179132360 197481279 844111161 151488463 211457912 67493255 425047935 238367315 873132534 485700181 599731493 491924302 978232245 93600872 952486560 968003198 990317128 722069339 751764393 980608952 995216148 406890398 566186785 339677541 966976331 658754814 861268287 631185175 988633550 931763383 972367539 60412882 841144593 614380621 685983288 869137068 980041437 284896651 671779566 73086062 789690335 666598302 683936909 522419371 648168476 971553088 980293098 589353428 724139665 490563463 574896308 222754152 369573626 3842546 501375537 549332863 965007556 136181089 778162494 255673898 995603486 918945928 934445072 671890222 774790236 12643183 764159503 713364932 903337131 389769480 881504495 285234301 798855216 689683675 726280455 271341658 915006480 979938096 996853061 656806942 726624518 452545384 859140526 355898717 878201404 376354790 398755863 979391976 979992187 660046701 956835897 295728667 567189944 459379429 461585612 514031934 962241734 916278439 952398307 715529301 923824688 180749744 716977307 780665128 891962497 519822374 544804260 496111335 557222876 765880240 928161757 494825542 941113977 898086003 914377574 449752609 798814164 602796733 968739033 198958265 238860362 742065038 984551208 190866898 435224630 545534269 961583658 622735206 652635858 564857496 751796856 366863920 630398143 372360433 397679143 56439299 289386400 175541901 294781996 319035133 504022534 503783544 595306865 95888603 867306494 57950667 221705543 577814484 595790559 140255263 742020095 273473320 944870814 857879784 895500389 41368890 780924856 918423804 972153121 131481623 949283939 217045992 941016527 972046466 988208427 299516227 693940835 264390513 331307044 109490972 111510615 40782596 383489131 82587390 552136600 489921968 594068130 448341586 945158068 830753624 892399412 111966958 380894822 768718987 874673112 352868906 611283268 454165191 939855696 671528767 897354920 851940260 992600586 567753113 692709313 7401534 154029132 763146078 976171314 609864706 795212405 261428694 797171644 163307614 449884922 487385641 850927073 461179671 600610050 792722504 840031681 315937977 570915379 697193014 848230600 529059133 573636833 438517455 746189371 3219989 447746341 103108621 435186185 932428527 949581234 349499637 766065650 398771696 812875726 990851083 998963040 53656140 199863998 111477886 955385827 380416725 512545101 141799034 794965156 751379795 982351771 991926036 999143153 550933916 725202242 646192889 786731233 484877509 592361051 571381882 976248560 430005191 679122988 206529160 893014806 406431270 596227514 703341618 815329960 107144856 910824609 496234544 632569175 236603704 919653224 438051293 651675297 673885995 878847028 884017941 949452567 553362740 971087077 729548535 964815131 62268062 261921205 491264260 740031953 296205728 997261313 377131923 454164655 233863583 697778831 226442883 893573906 504941769 824920248 566317499 762923544 81520366 217170288 633638575 855855752 392060769 930484512 542814889 555416597 952115061 964428408 816863381 976142384 670375766 719484121 95325797 808766423 944390654 970224104 612856136 773875067 376252825 678634541 377044371 810870496 858803229 978508298 626229215 952141121 542072653 976384867 795457428 860736565 837241298 878838868 478880194 970467899 266327043 342684825 473008662 531880229 308725632 871343884 400073687 413353346 47120241 487296803 989191864 995611657 623132269 874185099 451759190 673975976 818428768 974006929 269622031 418188158 445502785 575721317 579703796 642410617 745991036 933574796 986803771 994931106 540247730 828449862 33012696 287166880 735374509 958556353 767443647 933933681 164374706 736410476 558989504 950799596 145344629 385835894 243258692 321521548 419696806 987012682 253540510 847142642 840106641 933979165 800680545 920408170 206501283 974860904 5307945 485236175 12911246 492297085 361927277 875198445 576748142 954149617 435535631 959657071 107459489 894620367 175503426 779167967 460527968 590040894 987302781 990861239 193485664 908882145 280866541 530936043 406652678 694021131 915272064 956562685 935740616 967092763 69345777 581902484 578418206 777436254 838882506 983813626 998758185 999740802 277878708 996175324 429404692 540606228 449429575 578266290 946508256 979330770 885828956 978617409 126791718 632811887 827419734 890359374 362206752 931942235 747660420 992610521 694908569 987764769 381801281 696893588 40485865 778272025 842114102 888994003 614002249 782744228 850865792 989894413 342266998 978221774 632224045 791417185 389644941 594834155 206010798 562621652 285188051 752248170 940132781 959806451 689764470 990505997 668907653 876885652 316958672 386292304 226623959 261266369 244606985 814621215 88744468 611818984 525146598 880840976 846292324 999732752 157267669 921047398 175661149 444565841 324500659 971516666 135168183 423232591 119378169 676639247 520823784 591799025 802185992 979455721 813996273 905122219 715764747 947711044 495299972 586404657 770928515 975898795 445758737 615212847 583514335 912523570 733108597 928681028 273131184 968515982 584127358 940599859 340888862 542490375 601369183 728387348 85689675 615714349 261914789 660063359 764699455 793946585 223314135 735752088 389629582 484471583 231802257 941813277 109394169 849062611 307890309 791571413 709649860 999723242 168561293 895878701 597307223 836460208 308405911 338718787 184973116 624480118 620890879 694635522 995323618 996166623 972438338 977270183 34688506 979524277 228680156 406189315 475248708 755039489 703461667 980806455 899402303 979734240 677843832 837453772 390404415 575851521 658489439 852217277 466718440 791646074 605081137 749331606 674600033 764206205 117858218 407757134 553681859 645011143 402714638 521460981 697780482 786645109 824079436 875777393 195807442 469933904 577405239 707601668 567115420 879231220 830219319 962622308 981968238 987743281 601578101 850324450 307691691 792108059 152623203 211231256 378240975 587695396 861738203 941842443 849532729 922398778 778731595 791440273 862659550 906183224 845652440 877453945 517390960 906513485 110295408 399063671 352256324 797650507 527844101 900903214 270463233 295291973 231785085 691120260 846800368 893164395 819487444 950229588 686203857 904735599 966421459 997581395 871699570 909866122 864004998 960276299 53732594 381009880 732346941 839492026 551162634 988114944 219487386 670334451 947482823 960814279 597029892 670989472 122279741 980890066 886440222 939587579 464535926 809408406 453898976 953102211 867008844 912987989 800755399 893483184 810887276 846924975 887498792 986564355 926934748 950695752 81889311 765174029 45889438 322320826 761420082 821449617 996748425 999538628 651261864 808706764 695490636 836022509 978770672 983411354 828066960 828216109 897534358 952740679 32846282 309710677 306658245 322191090 269050275 495415600 290676138 839013007 25721315 438480967 266626085 589465841 587929732 992387041 420650133 797965708 855160146 907552628 179825661 371990849 668233574 888383027 246127084 804938996 283323229 401380029 211780247 775964302 360905088 936093808 616114513 855261204 379446702 833761688 584955052 632272769 304043965 351075975 705548006 867232394 535004640 803082394 35946114 629849353 59802388 587696324 702367461 946751891 532954723 912641346 90590245 907399742 479995438 923511741 641925591 656421170 393279263 993310253 336139297 666906826 272838572 880413200 318696443 936916441 389118102 461261606 192159284 742511379 225585085 572913275 697577521 937417765 529069781 923646131 481688403 558805088 855928689 913218232 186690602 235802766 310325881 588274745 535659276 539361193 374017553 552497332 936944875 970998374 595745351 881279443 818023796 902067335 473592433 970441614 229472348 858560467 292498787 896828919 333891828 985144573 799040318 952298591 831364088 989622353 428955689 934044318 1977486 316098942 640348512 879276845 176976196 674239997 762767300 790599586 791409146 872683918 207059281 991309776 130883494 868653160 409564421 925789832 683354631 828452123 713652375 976134541 42599864 440630196 544850302 574291166 978828161 979886341 750097310 811594850 158901939 351626754 94683394 252853102 292714911 575798637 41851468 553222056 117883562 856833451 846891957 947441391 708367901 947801228 872255778 993248151 47983871 589146326 865362072 917044920 698264021 895826622 687184893 931383798 102545403 573956575 469215755 552892203 804912329 973255933 312168363 733637062 827058948 975748713 725794377 728446792 175755488 248732201 309589341 474082937 246594523 668056333 292431520 304572492 677405060 688064052 161219919 860525546 328799245 638299759 439384322 700600187 249136223 783642782 15492888 786235947 759555807 989389697 272511061 571656361 964190043 964328610 391855468 819644560 941688432 959231544 373140870 931481539 880856258 943126017 717365339 847624821 101998290 366572357 746721393 765128204 301450882 339741757 105926055 900378843 112767588 334777545 296229372 344312329 108556316 187891531 444223451 870890328 904846117 945264515 77970844 843976033 683131363 745645979 672132728 804412530 877065975 946472916 902465298 981714971 982838620 982961268 420534134 615446285 187782966 887742385 446030757 972349282 958797452 987141654 163205943 436517043 277665058 323187165 78009079 547741602 568942241 865487272 658511978 720243387 498479373 659969953 70605987 513554681 389169405 672860010 77236017 186315343 778101991 894826061 501136434 893341615 84665634 933843249 768446116 929365852 205437825 815544300 143108379 208668573 819329546 889004477 406239738 544676569 272080173 356548055 762190689 904624404 646469438 764063285 529736487 877502218 663230462 677463142 759600012 986121847 59969796 154216539 461360351 512048027 540447183 767091729 243642563 691110662 712153684 989140588 302406572 365844679 279094915 839537590 333526688 653518795 658800245 832767954 559107699 951979337 407699666 496544711 106073850 333334741 507818071 594808416 993786857 999106613 52193521 119145621 440181948 945657697 506088907 989418831 578214885 678720969 490079142 865813695 39543244 247421343 651658454 987782614 298074332 988983207 150373356 196421356 519502673 660491583 895313545 928285411 598855576 702358179 358099335 548195678 637418230 680964665 279413163 722828524 475262172 859380657 969857801 990712987 604407975 950095148 122186924 424280415 990879728 997015703 524913294 779157160 794049465 995850798 145343819 222768248 342772684 934136843 266072141 465407344 708927614 784800483 692840558 868085471 689711754 809618593 576309426 983017178 361519367 956472229 33084236 136130271 866383738 868949353 202282607 704648709 291415467 655717513 294471577 962557605 783574257 891893745 151840672 341790584 445118857 634757543 794103751 961390013 974719353 997714292 526067851 935061789 530991983 933405885 47741647 738276324 987462787 991924549 638444980 966481764 416487566 422869566 722413681 831755982 684457369 802996559 71480679 731645939 211842829 402156988 553035322 721483206 218051952 598652121 38768001 278898053 23840146 86294666 145262193 353149849 517325640 785229601 723294274 859766641 593366309 698595120 782364817 831384624 740364597 751627811 963490712 992575924 390234626 539682151 539342298 988097428 510471603 881919963 825914077 886038460 65347192 805432582 712838604 807412842 757245523 800165380 514770986 584775427 364431692 627696519 669108471 670017383 533902529 845663195 90771116 237920127 334255711 899068119 159791227 853144034 693227254 962032891 302182358 900436428 329975243 409844135 892060458 903989830 445248127 587528257 853403835 912466669 856035637 995609731 660613576 788632772 755069566 953058620 545376148 992662436 28650794 963484075 64636312 204981763 612936977 950275311 865030493 870363210 39446676 600662276 344069681 955306693 302886133 858649027 467972574 911168561 22218552 722954629 415877133 770273585 53091717 211583903 518261572 920170236 814421729 966744318 552516433 619228365 931550616 936128216 987492244 994122015 550641408 872444997 225801343 800057880 264061591 785763035 749067188 882703475 771372971 813032653 808267707 916971680 862636661 915050067 586803737 645557459 863398712 996507871 230072252 679343311 646006285 774637524 968069873 999281369 168068810 499230401 396968227 708839175 340461359 389030432 911323688 949453289 609783489 705997539 637491800 796122311 799631502 860760858 533699274 830252904 459549431 833465911 331002770 922047542 828167058 976608757 11788387 161205087 261804273 408572004 891977920 899852706 195725217 915476144 621171799 691969576 349925960 439617320 11836120 372803168 344126696 667758419 366234987 526484030 517190336 571158061 584272069 631004665 392591748 687173081 184110775 510791233 225972699 790750470 145615949 515914819 234140166 726098357 875093042 961912462 555146581 745411811 516444277 826142282 331384405 502301979 571159264 618204273 875208111 895075484 626251407 862933177 176070902 617065426 872893045 974029470 823412162 921375774 334346343 845396418 766699901 914621749 356858321 790172870 35480088 464520497 696076612 771673142 791809595 945459566 324438437 548621744 402454671 730836654 668930443 677712452 304620089 834337688 482711547 824735558 726823550 905782062 151254310 781573746 302243894 562590355 88000093 551577404 416501112 823268277 381836749 907538788 504994493 974628851 777130937 813888304 541494619 841594538 789155421 896308841 856148626 947710357 800331699 931706312 860677033 945185938 942125741 965939068 511076755 868481068 99782503 756407497 258982505 264379251 164781262 857807776 801674005 863139908 568874643 665706203 363019908 737097832 431367811 567214290 215682949 669864491 610939413 997956159 313604766 814879107 949713535 954829627 995976315 999055260 889492597 960642786 704860674 843083194 649751769 676925954 825504402 874043301 234394464 608976009 579608000 915316522 530427609 642270844 365961242 864543702 12511496 243644373 770558734 957597603 490122626 996044451 183154139 579725788 46154652 595034500 965254199 985920216 913087375 999586943 763460518 902474193 492969963 993844219 697857685 823700220 688087701 711867870 867348708 906486801 746866612 807799399 792118270 938103807 37688033 228554733 47943525 727795110 736911912 883933256 767258128 820147947 404308946 489184974 294532828 768156556 296285562 656707811 347935084 943025918 658832384 914973574 485507302 834769249 464351650 690197333 421146021 988192359 244654778 911274465 200813488 839831170 781353039 819635382 197787341 304529553 362014941 884704478 500127839 894538664 786152138 885897445 636039902 737367345 726216193 920976162 499448836 754943613 398145150 655466400 730944060 760391132 79582754 157812763 487102470 948244431 467751302 520826463 20018865 822675362 258037149 831677259 648801089 967488580 440290565 581279435 340251434 724346542 266868543 880470025 153200536 583535208 719944918 869711228 724015862 812609196 423915237 486533736 639467524 937265634 382721970 740964779 366159534 515905946 311463239 883675336 777631984 982891710 151451728 258962909 912105070 950068060 912354089 943961153 493376218 860415577 564903094 766801555 647273549 725157877 38037439 380200620 142937127 580406111 891516176 918760528 536489692 809942796 190144311 961157128 623996909 868203744 985878709 992921602 687579833 905667893 209731570 911225172 288667815 752265335 938796510 988195487 802782040 824298777 751796922 869842980 873125651 927011277 668828794 765385870 178376254 867429910 222232603 315679675 374967945 530595602 889393140 914660134 76391658 295670677 721568766 959640546 286166771 696424486 276917406 784546915 519111960 596953526 934571846 943666084 910068261 991525172 324840007 547688784 603289891 613132144 945171579 953218438 354370166 752090660 342351499 524225760 189906851 990791157 465552068 797208028 501300172 506315890 809250500 879368749 890756138 984038710 753855358 769403181 634672948 987749071 401715553 476118444 235251223 680831049 910372129 995231716 13167180 296773008 741126886 911700615 283746707 591643183 933088751 972040203 686758132 873490360 45901776 672907823 641460406 939868705 269759569 955946851 828343896 917938897 217846200 592918951 602853767 861420324 536255785 800110890 664157583 952261678 348592688 667105244 810847210 857631855 422852478 630470120 441898565 950356856 701053158 809347819 704123209 881901800 277781265 811110802 586954792 906853803 145972481 718924124 157301244 729813030 596543133 936307873 92649332 123525333 405783437 825574167 479102785 656913310 49527030 284207058 495178532 978251811 395957819 495585050 509880281 978100775 225905481 321870125 47599319 972446483 914093172 938046286 671889009 765159694 621182860 931385178 103675147 779700553 395156072 797724682 555470112 813094072 586253085 795898606 296698631 511873187 577375421 756451414 266896642 879039283 418238653 848849966 345501473 793271920 890005454 977554563 480725785 681881986 867559864 876759903 228038638 959682995 852366014 904481794 670451106 857886811 401050976 872068622 142960826 302312704 637478969 884036168 271180133 541439520 951467108 959687063 724488241 855641082 29068282 684628144 118844529 147471857 191900363 727730085 315568030 414487459 101083526 977863130 609882603 798171870 435351510 903570860 81822729 426505269 97861063 666282967 374261135 379813635 970535257 992626894 300946365 528590473 93005514 343009333 98170635 482030617 180212016 439707174 429700654 776412987 613488988 911257915 347425182 603675906 766305876 768177810 745657695 916023370 488761960 717111399 580589234 765004648 416825615 607962412 277499958 292334163 117036367 583501068 950098261 983140809 169250679 234525572 113168416 937235813 11373235 500442878 902123238 932668676 76655821 291298647 483937468 860335317 80078588 606955378 247123244 746088706 458481558 643135911 858611033 914971914 498505117 657910358 145155684 181381375 466677190 593490783 85918668 885357555 261037708 494357151 766788553 816683714 569676437 729495800 849035947 918750394 675354289 746371952 770967946 864150662 444362984 532831554 627970800 973841886 474663943 511499110 18169044 146686138 744158070 824406106 822325521 907326179 538511209 944680453 283917180 983600207 73021528 825079037 240678941 919919658 223172281 723218648 526402494 971552381 918633486 949378905 953524080 997748567 730219165 732417776 37156298 938157452 649150172 760654379 370629841 610861938 914333937 945900015 742246344 893797114 258448320 573174723 495651045 672486282 622377279 850251239 36402257 840342567 294577406 732750285 574756852 713114142 412226953 460311931 357650767 880171167 166110937 726186029 303153020 442228077 142677131 630458073 63360621 565397509 733517619 902739554 38946537 125722069 221576192 508299614 828357325 833112633 88762566 731819414 521851817 689948706 665931802 735533581 205037023 482454941 952547471 960270855 964604229 978756162 143544299 376348582 575624238 972403285 652322421 777723222 52554893 190198007 650875945 944126247 985136023 986151588 219639249 525310276 624138011 908344459 210628007 444464874 646670379 669149736 704071576 877373730 407723657 499591670 525794737 706664744 406798854 843066942 32243644 535094803 711690671 965018906 908927736 912424752 930426841 932740656 740548977 756746196 157702778 384989289 905565368 941310883 827353652 954624668 14550426 842646563 165257307 278949158 392350280 643989986 345301520 761394678 59300728 469261283 716028576 732909218 78681502 323957175 455279049 809451887 406724401 980962373 694891410 737797977 441986285 707928593 430350969 497737206 489838171 861951997 935799089 964954043 680824812 777967632 517614698 802148544 869794450 977816729 315473011 896046942 138999785 923945229 148985216 154775536 105038620 429206880 231281361 521438712 215974755 550129661 513249390 761380525 68637041 347816519 434465102 663121289 98735901 764445890 603035705 763942916 44030660 764155987 129663864 881653799 534467477 853948620 480291472 950113548 829173799 926725490 254734133 912523905 763063324 841371235 149580114 462597945 725853635 753568655 989980320 992530043 148586345 610856696 59871105 400691724 377425755 770550904 73229199 775477426 803617630 992474047 239749807 619970209 252233233 631864682 866803491 946375121 64492041 584467309 406784058 624312556 440172155 528355800 827745522 914252800 745067823 759783729 506545158 632860750 359727473 654308684 423236285 607550489 970103749 994498809 84937287 290495077 819060646 910371371 521160762 901029563 737866123 850095086 88406825 199409798 106259313 882701386 739244735 953077934 274725961 329098368 236369218 720042108 373776760 807611245 815180670 949384410 775188399 993512879 671189283 960104918 392626962 968754645 634991009 675697434 93432650 477276279 306622394 725630768 81350838 217058402 769606679 782582456 117077038 252398705 125607400 688988553 620198727 676815705 58753680 171808096 203506021 430648017 791567417 904862721 403846875 504197042 718696435 948090265 563517638 827384755 409418614 702519432 361909093 750824624 7809086 195273048 690838332 729846114 725442115 799078874 75869406 749188249 354092640 811677495 511180254 608542162 996302854 997498954 905036656 957660469 631672889 823920645 825517451 920127997 125515662 791796828 14801545 462690924 50885650 455995488 532203161 647241816 307986518 939984693 30092655 222689681 480265465 999383479 936822377 956097576 114201378 990330352 396135243 441872947 295158652 960627318 302158597 537417023 982222325 987815554 186945172 350683539 787351078 885646583 862313115 885037828 409311929 870431235 968356091 989745512 284589509 305662075 260098612 420344638 698961883 743828727 155139154 608906641 814983602 934169785 489994300 740553643 893931252 957492285 447036023 614207668 945264368 970363087 845424314 861235813 709695031 849511046 78839141 778861010 764267154 928294399 250309742 839015620 338142077 878160079 609073054 642409535 559491766 883053268 454942179 656144712 306866366 455287244 624597103 637521346 334596929 470029508 965280676 971788863 816134571 874123895 314533598 991121181 5017191 88511512 262932298 682423575 157287464 500855721 697788833 928215389 69301518 566045243 15117869 898133783 205285733 295748983 259105019 673459424 28539792 625586209 606894796 629566893 710612316 812164646 758597600 925989836 807079571 931005699 718833938 829368467 567880071 899147842 489473988 829808121 138932743 243531857 886454013 911560823 445586348 867565349 995490921 996250795 973276621 988864755 500852725 627831742 493837010 895564864 584160751 773897263 170682012 227124364 515621806 799969308 89745663 984740441 449754919 548869904 763233486 875193657 584506855 986861278 381050127 827973046 300093981 315938722 704130738 977217076 175780813 517224341 727173478 890218279 193324999 199561082 344012759 640516884 828191512 909502957 483893542 608480458 577321410 939239679 832999603 963135410 441809029 525339469 716740521 800070686 947258476 967943137 997839958 998703688 494422848 875843268 216708137 510701488 342337056 880049691 989686767 995830701 106373284 148502129 354196244 663307410 94236313 223957437 590574035 603930954 41553607 631240727 379770766 492762985 655811929 760858719 975109773 995163477 976325759 990347568 506175564 648797005 548023535 910149121 716384536 801893797 242605235 957832998 868249213 983285752 627453046 974623663 459883810 641069667 153022257 448967325 617474976 858507297 194043443 893959809 936180318 981152847 712580266 856161889 776160597 933212975 332289746 613631346 305772053 894404437 505106921 593161920 282916049 891929976 266429219 399734065 968527150 975552505 412397252 969998144 191736602 987772581 198827563 672462931 430647519 958188014 14849703 916139211 733641117 834042300 950602057 958593143 346320639 983930615 26093297 692962200 965128839 994647461 434402407 641785680 807844680 967720424 756053215 881928722 632457414 939861526 182825021 536252065 82471927 404995526 380626359 633522717 561476892 866879068 170536997 842920494 924635217 977453899 375147780 663994407 592627766 775445084 489352193 832330856 810848005 857636167 863943411 898310161 280776764 664785802 398581941 701381639 992796512 994640410 425104728 517203326 97256845 654518446 667261765 765686092 708780810 892353462 543729019 745280001 969403047 985395881 502113419 985377903 799480657 866167477 363577193 438566851 137909784 874540380 419364108 995462841 328600839 402971284 881321796 996667548 398203229 885066183 490996296 576626498 38258198 571810805 775904235 777750317 111063243 646222287 181367716 541573663 606408175 647237893 50248159 62129606 425658805 469843180 157781480 705544832 189134751 495499762 705132971 706742273 618509071 849439711 106739151 258258470 649716785 881559393 159461291 627776865 230362420 841088927 881313080 897770909 239488441 291193184 868270010 936706269 718160957 808815117 721435115 911489843 980463805 983865519 45021801 840470616 306480314 459551442 933389636 999208245 588029327 869109253 980127901 985544796 940228478 965973893 233594810 490244426 669974902 699722601 105264659 646057849 426726223 614477750 601330237 737967771 32802971 527149462 827433019 989904327 704415003 715575228 852764388 966748152 95677950 979338909 663102157 902640785 719924787 767639568 294984141 735534551 141901490 214577436 49675660 851386920 391419834 501568474 697918589 825572553 438508679 617775245 828545068 919416057 181965777 998522558 310334048 679073897 46544293 181525219 274266574 361877537 444571744 752059838 416675603 839754062 595658671 696951203 957926840 985752978 951849027 982155204 514525463 898902158 558254675 976947888 112035481 937887042 742695073 820393844 148382457 802769353 934983222 982342521 57458860 695255954 747846764 787260658 420937900 905762938 627367309 658524483 976169066 998486925 680674414 918081079 414192330 744969831 237230576 962582454 302108402 381099551 870330049 941878871 584044609 910474734 576733124 844576514 79614186 841862611 682244057 867935850 357443240 591176287 246934368 484787946 766815752 801788467 308821256 840751820 414656231 893281949 342087066 665752065 723307209 956905795 208776542 726615527 953551425 962191979 55349734 134715844 735339278 966840647 269235967 968359013 798962249 944045873 908715195 948976003 934901506 956619059 444911339 876841530 319153340 509452555 84483924 275560082 383952245 601753309 441017890 521185193 385800598 525806422 619365136 931422068 339672570 741863615 59944865 600756065 761655785 953885240 18839340 166022128 651996666 720733063 929036404 987171094 112295926 776374305 730276082 869330704 309189748 331364514 995776196 998437513 284613577 392113429 100164944 867624981 461296453 565405085 845079395 905707217 77071842 496671223 209675766 470579952 249295472 726592313 222588915 857839385 750707570 961703480 21567203 312997776 591471385 762473677 340349999 839653010 206514573 740672703 852502087 886731659 603720626 856804219 736771750 934889419 340036289 402717312 918453915 930827014 437353722 976460806 459688398 891045473 650854457 785825380 284668442 568745478 600049833 755644772 952567291 966142444 636574269 951727198 442562576 920590122 433865476 603834223 809534209 928989766 84230200 654690598 111467100 762564062 577720294 580208619 651969169 829066915 838672163 980948631 927960349 982469981 372749443 887941552 954575167 990821069 393858459 746517282 228672562 825506502 614719433 902642003 926018027 930722589 818413241 855879963 823806233 825126619 323196784 939716929 534401390 774708860 869542955 956579739 422045948 937342410 118645047 494136002 336898411 478425363 419935868 646608418 772048942 946787133 254033638 384775541 838915024 929561273 314814113 880007855 721625461 947429928 886581112 960932348 845767985 949757522 706417057 925304068 539202791 611538836 673740795 848287693 46333967 429063592 755107900 941885903 899657917 930482393 745752267 746481046 621989187 996152645 72654176 469330823 858612402 947979432 705011828 750001570 789270853 860069083 981191353 991470319 984441324 987475919 410746783 929808402 390282581 752769338 375335305 961524153 185875077 433382030 18323316 738733399 377481171 691850125 255474503 537296655 572309267 708902802 532826502 983297137 170483102 343866304 342962096 510124194 189078775 726237940 196311085 403593226 71399808 763841396 501723907 585901018 523973384 574427170 155323474 565622992 564454049 586933015 889244976 999331486 458488437 902106526 690787754 899958419 383521537 461738250 584883310 924192826 997444566 998185384 48270393 376039671 164938010 944141526 612040208 874908549 743118317 880077432 144129317 465571570 46097278 451396790 702208855 891547158 912097535 928790172 970181064 992161429 616505200 877448326 981355493 981674995 212000528 511855975 91079202 790651540 95241575 810702884 558012913 763511947 812881691 820322384 407473409 458067043 539813159 611163337 951432850 959201927 905220562 919987946 672977873 742735885 730830442 897766078 298939585 962703213 355765669 797456431 953255581 986745282 30446492 716854498 963067924 991600166 21837240 51041566 621793247 913319388 979268561 986095716 232299341 943710568 134709262 489379982 577473042 698852623 42167785 132123902 667439478 832166542 534908714 816119971 901410436 945795985 593410330 892483908 557683820 628903720 269158959 875910586 822816611 972127999 99407127 457478990 269459100 958893156 794769946 992154850 138288822 227439578 495534892 814650160 262522229 588300421 544037143 775355128 890621958 914103398 256345204 374923535 410754786 877899363 531640094 662875437 816370248 988929132 916401118 954907785 233851600 552149338 7876418 135683129 649119177 696879532 6346583 170140202 675367548 906958820 274205977 921944378 198000644 993733216 718327617 738697968 885915873 902526548 318304500 547536829 171882568 539925282 362762188 688111493 960371550 962422380 773631061 914379200 941864455 948823735 44520795 194433882 686090361 849588369 480113716 851622343 57578900 885980678 416838921 937774844 891156393 916240242 146082919 711363651 777914404 951754199 646509238 650089451 788994950 980500480 539741848 567127405 1910136 256559564 920685846 995359830 849741386 885931595 780736704 976647807 751630242 816827764 487873101 970038669 493198052 725485433 769549733 896788313 906430281 975952029 355298499 487451391 867884871 996607216 719212365 947452395 693469770 827570940 924733164 965206232 877142440 966674539 386244531 848993295 386206305 523956473 20722591 479772171 607806709 823946524 99233141 798904150 6716451 631591824 954293454 957572636 665764666 755440431 356109892 581390005 877889094 907727109 54522905 497890449 557270642 878957870 150858549 415379294 467206302 773613240 809702221 950561069 177580748 554114418 142904354 843907751 103834820 289607220 982854779 984487381 966910307 990428990 232540092 259020410 126691875 747318601 219000482 526861483 83736981 513087508 943734780 975819581 1772826 57885466 186498642 464354509 345537684 435152264 121713487 813895318 511893951 700653393 85755879 734417672 503693185 890261862 277825257 625892528 941537940 981704809 554856258 772849791 244950472 560829061 397476986 564106127 151282841 283467561 672605081 707237755 415280943 844962800 928560315 980822713 947019296 974244142 239965457 526670771 536985048 881294994 513667929 660026649 180706946 390381838 709815148 741525705 958817184 974924662 139522572 242462523 134920061 964057683 557878426 826762514 755868469 772005795 159479920 663951653 144023201 513388880 835259104 900234090 378567101 746551776 314407415 543865809 920547931 932795017 256536190 270522794 878425271 987163648 618140500 754623719 355781337 952734722 400148959 969318990 215088271 778982881 410807785 613179468 435259691 871313269 180000029 881863807 902585070 950138886 369157388 965189826 672345206 853327636 607116008 833726183 561998670 842195491 193005422 829459443 50998753 630100376 992897747 994680218 349557849 514036165 177099285 972192899 482329089 847243012 851792082 919328404 513992109 551436588 412384595 531609973 171640120 242115720 369206726 493347734 124444565 512808788 324980829 677399214 863848881 887041171 708910190 831952867 44362666 375893408 707277567 873195164 166197381 566375680 819803585 863874328 853097070 883894523 456075869 751390520 553459025 756299081 641574734 954314143 596469159 660421992 851415757 881873573 822415364 882082077 766839555 842259524 700747270 869753958 702014446 978723014 898435815 951452791 998646897 999968626 341097830 838401243 238389652 991322610 441115221 772815029 325335329 818250258 228924299 318391625 434853995 560631941 753119998 756643049 954164829 986102929 103497756 281804348 166671321 821417567 754371546 774281931 884909389 924861516 33560666 520670962 74528196 706913597 199708655 641924692 667633286 890492229 236757084 319821337 392498077 502144604 253481828 437263584 370146774 774766056 886484780 947795555 350612055 760325407 374381032 533081567 565040013 977092338 15055060 139900220 185853635 898185659 394677590 936319508 96709630 968749440 155211453 825484353 32558212 937176071 89737593 648295864 962353376 997613777 118618128 934635008 40413108 337170057 196342788 810971648 528611405 981764540 866353078 870799749 923739884 992576404 811301196 905431834 314641568 508817129 392295773 712304680 761643786 873112985 32713883 880408289 240497645 495186246 437135382 445030123 470441000 614446052 629064852 746605303 86935982 525694044 312671581 354565729 677747867 754239478 32914850 538389831 277123186 285278836 723127833 723687929 382212546 791001029 969847869 997706130 495373773 868767158 164275999 203631695 717116714 830408837 643925519 822869735 226181941 874695251 262264195 377171441 511050877 650796531 569533856 618807062 450388590 678480659 221210569 442393359 14300679 704407457 473402452 818028436 720831489 939213717 115958589 985894620 158862876 245934301 969556385 997160014 638357464 909109878 92357866 642175031 321311302 571355806 822603459 975402210 414490514 524963616 125813570 524616466 741743918 856657090 422201909 606808936 129616994 346527840 844568405 964547498 266032148 899970320 137137919 404819250 728115582 781940284 400436998 467937214 451526241 910566719 488742738 540890726 136725254 219619749 834028496 884884494 743852187 888822057 175849932 666419964 544804686 689085850 825443352 879471747 582415157 789363328 767715934 901395983 89630106 100302259 846535556 867993232 581268476 847795833 211269433 449859902 23844944 247493879 254368526 513729080 720414955 937703575 840835866 880655050 634439258 862097078 433038030 913224977 692421846 776807512 207950791 311696151 582029796 888502160 938264183 984228880 635622188 892763707 979670564 998728225 719395016 967189155 351700192 802015244 565567900 757436850 220621264 365591459 927772079 954670861 238755469 625245405 188975258 597952080 90960361 564910727 255922997 959108433 767024967 869610479 504290891 634429958 484491335 759951608 997700171 998202317 288120131 627691209 797025373 863728582 131688593 493017997 451885521 831882187 617012245 777090703 500811528 772997331 345630099 546178319 988529031 995586804 232075123 858091639 799513247 967206126 272824683 413843122 450680246 861369210 805031997 947095333 234213174 667593127 171158532 717433627 927918790 938300567 487868721 571227732 707688380 888896396 131189187 994698948 43295747 562520708 442370766 961862085 365439436 900795486 21959815 586617968 988948490 995452809 567948 843437572 502607318 907218521 994785040 995305805 184015171 411615611 532491708 942830758 786483906 829873353 625934650 783752393 509656764 694163507 270293225 351206051 726052713 882624875 437588330 491775912 754732861 804355975 585770784 773288134 662844628 797154748 44569902 189209965 272882754 673952381 250740371 528595945 579514887 737763630 115895997 174419313 696225163 844729928 266293193 589660228 377987578 752623482 859989038 983020792 241077349 727019523 409545140 979078074 954518495 971318534 632446985 746840736 241949683 442768065 273044081 619137761 573679368 870707975 490431707 532934068 740685472 862357295 20680264 886176301 720149024 727812325 116419428 418014288 56372095 344866471 920930271 999852816 863240281 874030803 990141382 996062918 230418795 350681322 635990475 852159616 661201705 875424117 945268907 993591238 590613271 691521389 378869453 565757497 844132768 900254332 244963826 884078327 314924500 720579998 894763654 922247078 335967248 929899639 256146282 608847212 108416981 197232721 150218860 989478429 910352616 989453284 20309184 809613900 553631071 917646327 835484237 938972695 137845567 573762741 678304855 822219593 590108358 964093212 474385144 526943653 395730303 582266676 550876463 849305870 172563543 209798867 814971161 963557210 365928294 411312058 104284413 405630808 837734366 884820700 213943306 767464478 683136999 869173540 18714777 967554379 893395453 953817865 685033482 786500140 364957766 627327983 182356279 663126503 245237257 770437588 228204605 281070175 276770388 642797291 919635169 979176743 871570584 978305116 747599995 928414701 922638177 946160792 983473970 987781318 558797940 740059689 456303903 720816237 576144331 688531918 409990565 936968063 990109888 993251381 838566885 961564265 247435822 441210088 852747144 950290275 91142004 604949774 9503504 859746500 588888376 975006825 408480456 576936284 121749068 788848904 413935237 793062383 772996165 954941082 84317426 804461578 649441189 942867145 301848705 366206068 637075062 812203634 824994387 895032452 644156195 945859505 906762022 922863137 616565578 718788354 985813985 992209503 682676488 939981143 722494104 803170755 116286434 371414997 287373952 554074967 510475919 758267534 572500408 879641374 105022433 157085643 173097760 501809255 574510449 601441187 110512837 525992907 650583 8506950 997262658 997820191 636046954 934741270 745882459 757178291 342812055 561191713 566359451 570449958 769908521 911624757 905671709 989362980 472629043 984078788 321260194 658325738 803727324 995698532 559736764 809092510 486658526 509749578 610342789 878330024 547234502 722611598 939783502 983822361 109594526 542483125 973222119 981654491 28455563 621153510 966911593 968017329 916230901 979201642 780288575 788255314 146377079 835939291 383517254 446513597 863338977 890915883 773893853 807295991 114581843 855626164 20754993 115426414 889184271 938316526 859112867 969318700 883656776 901133977 337196561 373092768 952799920 964758913 363856479 869921922 803472893 973697401 627846315 689560183 263166133 830332467 13330742 519858002 542263982 704672799 57744053 88570915 629736119 787376446 30151692 598601763 329460799 478652076 293089640 525409103 261844154 852314911 23288796 635481700 920845729 978674816 808845304 914521425 779663724 806862742 308198571 721983470 827283742 863234580 347762451 502576394 576294279 984412472 660218769 926215845 995038434 996048377 70284066 101147532 277020790 403475819 468840495 924259607 785935555 937127005 561369803 757149196 467399902 701849245 187407350 191208199 832029854 989748460 315601025 868810697 790484941 988854387 458874815 631203957 45383861 687298067 566929954 661403744 208227729 423549529 405689233 558788953 878196248 957102784 782586964 960204649 443080504 608762788 524118564 987061462 529730197 769218586 69944476 425828374 638242495 917117230 971240165 995712429 437175605 865738633 342343480 533011116 374415823 652099073 788769076 996357901 191764858 552334232 214427511 385199088 528935433 841034271 132972273 272197924 675566476 885737030 195778741 403451575 322078095 663450779 747786898 898815100 546533307 829358824 144126410 782224272 646821791 658005534 555425411 846127182 519933213 812082887 575629365 717943669 718071759 891477007 738131419 984778225 656583340 845206655 193649488 755156797 685863126 866883969 745997219 957683317 385755000 443420821 531750397 960125020 387128118 579535531 288758369 621426628 426384551 799450963 273905167 577825889 955822606 992750135 387676270 710617252 222543634 744531230 843633486 843815263 343834629 373377173 49187837 679880677 697198095 785116197 724949629 921445887 536773957 673816506 282945018 799540649 675455736 847054682 720877011 772999401 79464551 994386477 231544421 848870201 56478174 690633069 255081496 301608228 307378538 619963932 472169248 970793985 468218700 755971018 344544032 646337494 820006607 953700954 251240476 350819653 373424912 941490745 141147844 351024452 161546248 582967810 447466534 741255430 581845450 840528227 448872270 879541051 353687129 471658894 728262737 946039612 126826415 924080823 771625768 990392998 741403018 932927706 618223772 861502641 167761132 752524339 26908272 137864560 974785629 992460664 375702722 501722884 234493169 484803418 167096242 922589794 254227580 980419282 681545159 891135252 814316677 953178368 84281788 814526392 154950795 530005867 16502638 529950410 842453454 995361898 684211218 919569469 655229656 980598394 663002662 779787343 321827291 944086416 130645707 404367453 894892512 986717574 360171696 634642347 167517547 926944936 848463180 985841568 256993527 544413494 321298297 683316999 106028399 686383824 303887054 892629965 988047493 995842906 492763269 722807633 486988015 852024239 505688537 592947214 483539467 767489822 550326127 852269027 25952670 545828875 510526406 704509611 344343429 661160054 113795277 619256758 830933920 945518729 955603133 986423336 189313893 244997638 700791138 724726488 492543121 674838324 378210712 383698573 797242389 856390486 225656488 372335652 981714121 998579036 90800710 558288057 820290766 965523852 102553690 800692120 78190081 560613228 60302242 377765594 602696136 836054057 121196458 512913288 602465324 927793234 294458208 471566916 144455512 884292229 92815201 485506631 306908927 890974000 749402285 945071365 509229227 527679144 723166704 970018521 192959650 567066244 251084799 703911153 308117127 345328504 49598262 82477513 411552667 970530796 441616181 780558493 502979171 601657187 466453267 539810836 155463512 485612492 520458979 549285729 904541796 972041799 632620022 854988205 939035308 983281333 29349686 927335313 544471892 842291192 911197062 988129804 592110453 620393265 954987377 993929224 812021172 969463207 12965391 850242306 266578807 521215030 664170792 786839838 8202991 136975555 811640424 926083595 286416881 585485968 396587022 774030448 93331361 769238986 945764090 961137780 521897420 967597896 74487868 820019976 685212591 949065202 694876540 762787341 849929213 909051718 218630582 844194423 772265610 861882672 255075228 436219673 348242837 406931671 379505362 497305601 996510924 996838018 589115716 733181643 204021005 647485877 890442216 941619743 883145061 891522070 248634580 431605118 175978775 767958916 956307319 996674890 634580713 815499972 56744765 617602290 471028240 908395085 886348041 940649938 951218615 970640541 431752765 678136471 48662325 94395792 83815853 208702561 423714626 841010056 350734453 760479993 426467963 732820544 267591329 744896631 645938162 850501003 534736191 692009104 886896297 977003661 74986962 879335279 904158998 950259880 632057070 791621697 481082708 881169962 220034626 689821398 988082749 994921536 139063970 654940782 837552604 875817869 580055218 893061018 112387052 197696435 626377503 974352044 843778479 878769551 651576070 768823022 421297453 829219083 257634608 395135188 885217900 914610817 168626076 330487293 412258781 625284568 192303289 335178342 767079235 911100225 960147330 971497797 302258257 688400718 582631880 582980301 472553829 636223806 42345435 806365169 558173096 645194858 212226868 690785577 538240851 843272979 78124165 593843297 204701803 721525601 943202511 998224117 260621080 888412385 324992361 432001190 974493901 985883478 357847160 539987064 441537915 947029710 213869948 976632436 231641532 994090088 848459260 966522200 120211500 428449464 825935638 933464983 292742867 508651054 252881349 623792635 335650095 765935477 18921835 274944180 816648368 984190122 366323273 608067455 87884398 233035973 167952858 917297462 950984458 968463387 439479581 860356065 418836678 765771358 500852533 890422936 6172356 654656877 218430199 306196170 325559658 826170094 14837807 360021583 134057000 595308483 110698737 896055340 72973798 374049604 967689447 982701301 143491731 347166302 138735742 160645274 109077449 461816721 554692818 939880904 551267486 656230019 808742626 955689547 391869815 733822009 88517838 187673002 857891904 893258109 555758392 847919872 388460058 968539459 923132832 927708331 261301779 622633150 392695092 580695001 893951117 901903935 681225005 847855349 106216912 260687477 535114949 779813289 937526045 967569128 165891548 458674415 580185835 913415104 723235586 954503868 264090444 416954119 633356632 779479509 165678071 942124877 339349082 916174840 115535835 974552486 642220727 992675841 45138271 900526080 244336381 997214246 501807357 747286170 159841934 689495606 491639596 619053801 475609340 540987959 530856480 890908444 406185652 636958950 744832318 878803845 82331557 991105514 856044922 860781617 339872081 888378969 64928516 907546422 834563910 922631314 439468380 452911136 224494011 791659574 470263577 563835309 442294018 523174969 23661360 421077736 987334334 998901474 696622566 773869420 845547707 855605640 462154987 633471863 949878196 972840254 513252843 898531895 886525800 925602049 977347223 997785615 562564253 594180391 187104718 707087386 643744034 863141122 783361901 844776382 401028756 808787676 888990135 988830783 524517252 616975501 231700328 450530973 918198291 973461148 923312363 978975929 420868737 522869506 115084713 224007771 810928389 840640991 269501009 408086197 183305582 584388701 374622111 575452547 689880410 704385639 515455699 773765223 49393053 377906076 207096236 483051465 29110911 933317125 437815422 840853265 999662903 999969041 704234147 807123096 961603101 983823235 387732446 999089882 688235153 725652583 892240555 918130831 989076819 993919335 985641287 993267170 796829187 833511337 299073245 887488747 404645485 452617719 231730531 237363814 833377197 935678878 261918966 719203617 525904905 989471502 299184711 850003042 549520926 610655111 252243740 265790689 961182054 997313906 463137364 883880874 764091227 872583266 949840636 979108709 743760861 994311670 524316527 983661055 11212553 394344980 473625419 477726914 992594454 993169426 610301250 680196448 309224047 692545804 855408467 878160707 82482007 462571998 657126954 902129101 804823383 882755927 13046259 115040565 438366988 514426381 479716936 555655764 283303777 909908837 646470698 978037948 926939231 981741613 34520493 903428912 303415469 894073001 226122946 898263335 203673064 582097015 507916752 546835932 546687965 563434747 574026995 761319528 236126820 784133208 457207102 610694471 223237558 920619787 805769047 952842071 788130376 955586072 981519091 982259801 128573047 411498073 463384165 729928248 135380400 929618075 132937808 165520905 81453173 210731083 626807681 853085373 522200425 823991432 240200962 940556887 18341544 642303044 428543182 707852966 713549776 965575835 690295567 818507628 889966908 994281331 519338207 946555495 753321576 790070320 265679968 550491074 696914077 844270368 805812804 901439856 815387627 829388518 241046068 444726846 377500093 431406315 121368886 915472408 216815546 702349670 453514527 957477054 514662057 700647774 879628392 881376211 986765635 996118539 510264321 639894666 17882262 723417274 831931473 988937924 969200159 991977071 739031622 895316863 409919178 899369695 178165949 617921405 724658974 738315718 5351067 349688472 624525023 942788511 931885755 944546407 665231987 874607736 679606143 724678859 169368027 468834458 906599838 966111662 579540791 844180053 91830745 149600888 845266782 873499902 421364122 941575078 241201351 695336815 701356694 720236758 278718581 660562837 153305073 579062472 674091067 925832206 80033200 646033756 206781564 317715595 148793551 786561365 123080144 979653808 390701932 597118529 236638014 846175678 763844301 923176295 529547997 709980761 745630311 947459532 765701937 932582955 203312812 921061374 277548192 601822430 479329677 750082029 243344835 246209737 871123353 884100150 293148563 918317417 122269044 203320777 179754974 291622847 307808908 677064551 925582369 928156485 111640558 527833564 335308749 737101194 74231320 436954923 705702935 878260371 383451010 480329044 637440216 888070993 540433666 917025744 746296059 867500457 128140764 476832005 594452817 827611550 816175842 976789832 132933918 858755755 292901467 446685697 804527706 835590110 944847067 965955256 198436935 900077344 61914900 124208057 521030358 674707176 851822952 980250675 456436749 763092321 846877688 896083215 496388441 610199094 31859244 389200433 933056353 968252256 4151406 137450292 387750933 834806216 765192212 981228489 391432782 607895932 686578717 754725152 302275515 862762424 351891197 821824630 22105967 987011967 364925258 823537317 279583093 282207474 823070139 868679023 271840193 613196235 429929740 931899981 298901786 336020489 259521183 304795398 665071125 887294905 464793638 715951579 609063266 862836676 413892459 528356226 937930382 998389781 882892371 912800750 371759465 444448345 305968303 837155738 993943406 995925177 625964487 749685518 550939073 759945318 621102616 805627034 735667903 924922808 105702674 536514558 350329696 792615528 800445919 990331055 460346592 877772319 87001521 420158742 465995044 642104651 947382181 975938590 948902639 978651104 565156516 685798846 795813064 913946707 87081640 291122993 347537969 397364797 929961436 976166931 249560013 922392786 654635847 850825662 131624800 329298937 715278546 763377847 364489034 387106533 305120676 635874575 27947226 592810382 992891067 996465562 759849647 767455614 231686380 590711904 950586371 975627486 930879653 967065491 562660374 685502555 205993750 268336239 777356104 817253987 500961042 952720122 593803635 692460684 390279219 730513923 561029548 741386547 415872758 673448519 814515516 897752773 350215348 605108871 131325977 498261016 403697203 495006563 405613125 569259557 170309124 507584207 747980600 872112773 808878473 871072382 418766492 581341268 78826641 771771731 138971314 537531123 276430479 637880107 152595962 647389827 599352097 642402444 496299091 733270098 956565470 970894922 986825394 994642826 346539469 429358946 68310801 429247257 21407224 124296878 380412169 583096344 606629887 913298632 971393473 985057467 177400274 625388936 865999136 974269003 211054711 416533966 914598839 920516148 603489011 868818500 835124333 942748323 152894659 469368699 509506511 548000226 411050363 790801939 22687113 127033577 690224130 982672005 610535435 681582376 648896623 726299392 44776833 972344994 829269366 987595678 324559086 727207594 456349147 884511692 559918354 871355023 917699077 965579864 219054512 905468746 685668383 887308584 404266198 618880385 960467343 965494917 133586389 323686633 300386560 612269103 233714183 293460658 967434612 970801199 178616811 193540664 573062778 688481913 135142436 519470018 793638986 834078549 473457298 855217872 508673424 754426026 84890575 448778776 352294243 755715307 990049931 995563330 881645945 887372921 272636244 290036549 595579024 922996780 31714167 618970016 3153380 337082551 574180848 908178158 250098615 400181008 210950472 884794632 885313203 991611838 249862016 276155679 92160977 851523368 449182880 988388273 405551812 709944533 571793653 625085959 211101149 853421982 853186147 855186990 616588099 841857106 928266808 981194480 199298821 690824955 383324082 417389947 336996553 866135459 678521906 732854985 751580908 811240464 454306187 600322125 298782622 427594085 966461141 977741241 399302887 749876989 899314689 980233207 868532743 946308777 218856247 938170178 555719708 925577354 4723586 464355468 318694892 824890317 589134649 873567298 538878262 852256002 570141920 772959264 17760597 947365214 372305368 857882872 674808057 794867161 83608030 116350218 314012602 666630703 546652325 717332655 672952665 728670552 15239617 699721404 549466164 850003379 23097332 932536678 705723113 921125874 98502634 840309556 984388646 999309842 468487818 496988715 516077282 896838396 548904250 990928185 449186155 637527015 471220009 651662091 346964873 502639292 665041069 772385244 227920144 786856637 467547557 552493727 355309837 399246260 499261721 855802472 380272349 475744667 983740788 993732611 617006191 728807516 502049618 533798702 936619974 946004614 180086445 892293501 870280445 878701515 473550391 752197911 569512464 958022429 744638084 855815074 219029876 246495140 116277000 935616044 589550282 654251622 86749886 149639261 667011478 669926657 482182747 557866687 56589498 827133392 822105726 977551661 214119501 456615629 121743539 836402994 913569651 997279558 898531472 989469890 30441055 578443240 247389138 951515981 933145295 935901701 64543624 685397007 302341778 653231881 321678653 684604986 457441224 613072124 324446932 854704665 24657657 89204308 157162764 259414116 632404493 680747351 933509557 961945556 803200320 922975339 225156684 765419721 648016579 755584272 305761709 371117641 533990457 720107518 875772964 985267353 830960123 916134167 222887436 857254639 304025625 575166073 298482620 802784983 232065596 626467228 556258885 943909378 723399963 875538527 820389581 935705348 218419233 922858517 680508985 765858047 14390706 240831402 931405995 932765552 40355758 555900360 424104167 876339626 247659936 514579816 772022172 865521857 298833222 918131140 364226409 986940589 384149131 499280502 567749014 750571013 145784941 843918952 967832361 969260140 355184980 782415399 493998998 739821178 890672505 981300185 337367278 419091278 106679386 852976632 774804192 852845109 529292628 946816001 927023682 997611582 732372143 952506216 976229484 991393677 296069648 623644797 279771313 761777129 485457011 680651009 81191234 641494702 266341123 812646268 775589266 925060983 442409058 905861704 252992566 716694850 593054713 969034038 142973715 600892091 555052871 937351584 737789860 939628415 176032093 645753580 702858902 808427304 465334569 863109633 341989202 546676872 628827744 873883349 292203979 818094556 349255396 949577732 184455355 784789430 162202652 521945854 89561778 629014771 471414805 729948210 218558716 412497803 54272370 116415367 858348316 863482326 137162812 662215425 14983291 305905023 174116319 895397048 590904028 806327280 185208246 286013696 103259334 245404068 512415966 569450567 327404525 650070917 172292619 353467865 996749379 998637452 359607422 609532709 751515829 886458265 233151812 751236933 511164942 560462942 761956921 781940657 571359681 778127306 718233387 787529146 694942538 847784642 966060099 976573931 949933032 984935820 807377190 907225682 870543261 891839739 761540300 896789419 3677270 369506850 865049759 876434117 608668224 699044112 860618235 942843542 709680987 711422988 43208894 700318980 746863826 917450842 476152528 871609650 29079890 588560464 894592587 916980935 684702669 874805889 975849173 991445106 898936852 936627976 74350274 404664460 956360044 968159822 769062170 966188238 802471263 813586777 331415351 894972280 200051029 702570334 255854113 439096298 704791117 867546487 229859443 926891320 198335596 883613470 180023917 938594272 825466352 887939056 100016129 338186420 176149081 919116938 299998419 743903445 280594025 797083889 573454486 969812005 346550560 525295442 722312427 734558993 187982439 235447967 777148150 813921637 893553809 983587137 693930754 987390409 111901283 350088469 993601282 999374527 729480160 816018101 397025767 493109381 52983951 472434680 78992749 920641475 673142838 757572460 479488973 792033065 45602277 261885028 824234627 920387067 172441460 696814066 859552244 915799221 41494470 878284653 990255083 995526965 406289977 734748868 133731542 186950257 197137392 970035037 251748740 926412755 514141876 538896889 915647570 949284689 718855063 986686363 665452163 930882122 625752495 870574251 481295007 847368442 699581159 945005120 730058847 882953254 713921604 750470221 857783392 983678023 101350051 894864332 834567448 908532422 349223086 615998758 201998715 632453184 633485596 700363879 182931066 960473333 871257709 912272435 161038635 921828432 22030150 168944211 814175210 941752389 101709632 285066214 359055317 435332823 446473 751898522 232157392 809534611 842616064 893672521 133678407 894260715 415306718 872747264 619843456 630018185 335019075 691543339 440760705 830072409 623106630 683206661 793563933 890823588 305732701 730649012 336298203 792611742 739612651 985652529 57567549 917821748 643801812 913798507 478235180 540043408 869551002 880826106 238088880 272638607 492441640 731399244 714381556 940869133 665628228 689397863 470593797 783369695 464508557 768316237 785571679 929885499 235654303 800218796 16080209 546352428 617109578 991459620 895444207 926829830 917193743 972322060 998218998 999786346 617828030 693593797 618469738 735709503 950648060 964969831 207275598 265182481 433649339 850948156 624143856 768033388 932506834 946238085 690299165 803303651 389239288 496627441 156739241 484107613 539302477 877360367 667294172 907059775 709994792 729599853 950827682 996434574 817306820 899838770 111067496 396068724 175968870 626043509 617903224 687050672 382703618 994110701 155963214 934334642 94167909 345035137 903599336 910511962 62644249 526545559 289136785 535803934 695982554 765484767 338624448 620650439 959446877 986074987 103464434 480501292 674163919 841832235 716483263 878522794 425541700 821878748 538505074 818605843 392129680 884280791 743946446 986306253 768799736 970220242 306601581 732708178 589753934 746794139 810829607 970917873 370588525 504294905 703695347 759683826 582250657 880802546 335811562 378848483 112484074 309424194 657168957 737170887 641576972 883864797 830807621 848157128 309625969 508449371 429555659 449915165 515948588 763714402 405522803 456646995 124893513 969005635 429293423 950304299 978221186 985676970 879397800 907991881 58926586 68177774 911841466 928219373 798277822 798792957 517933851 858194102 44162190 223585034 546615732 620721914 986343298 992445476 293964355 937404249 596363070 916176257 305896948 434275971 47659788 75389233 405722661 681151472 280494739 310764220 802850381 875085288 70549082 216576578 203993559 944108498 915632863 935408276 499399792 873893416 413562062 701099506 507414327 808226500 386898238 628558955 2790931 621745222 83930088 454981097 274137551 330147643 491183759 503940487 723157925 815201846 727931436 891489839 14453522 456956658 580121477 788130498 113155983 799316181 489184342 947063509 858390124 977720505 689625458 965904668 365416129 712717625 86502180 957521745 953092581 996528783 461954845 733512560 332891468 913361580 702137852 802350457 711945206 742817830 385368119 733845969 397988448 516365938 736424584 850802274 206294181 379053279 151760681 399399968 509074450 802536102 728625237 796865746 249405799 406607654 327090898 887939432 284546712 930435986 106638254 776425824 488420410 711329999 531327445 913121200 623892496 870487045 496593502 752616814 472628241 879394404 705720864 792762934 385335800 985934556 374021634 917622074 211135266 614433924 720292688 848609755 371605823 598179378 94749558 359978433 667029432 775337193 758810277 974992098 492452695 977966562 415379308 830623188 807384156 947212757 377294091 566041457 988011583 999470556 453497324 947707851 175758201 630277568 337063403 990815129 237199 29205176 379891483 912641489 2705252 489345327 659764194 898189531 798696207 819562874 166681513 845423470 123742425 160966458 680948329 822051151 529657318 821921774 16137655 150368937 702716597 926435377 531153703 629494282 127347243 318374709 798232229 862024135 415617848 527107714 513209298 859793922 594463402 895981825 797546546 831477384 202422927 368119694 615939667 816738155 22780815 202986668 478588581 772098646 345237044 886023145 425287125 569611765 931252049 957733098 660110117 939251574 165857759 381726846 197971727 820028887 633777497 954101405 668911468 903114631 991409491 996893015 962813150 982306467 541574234 702384765 285234931 353259260 856155124 996756450 652851600 818126585 498900029 713035519 457684233 512699816 617880753 655167584 884084352 971325899 970051125 990896969 56565512 64041187 741054964 929029874 852384017 901970461 152078474 390641076 495288276 729496906 565521181 817603995 714594311 887073067 92192151 738226296 749892217 796177063 631978676 720327042 291810927 671601893 234973407 660742673 926500258 968278805 748084641 777116235 708631210 763255904 543331870 668668129 132121286 250688398 610542815 835144656 700836032 752306830 406438002 768245342 897303938 946184826 730118959 942201175 407648096 481252847 680611713 985727834 670230015 791622954 71806413 112253074 466907582 592592955 234254318 304232073 476546672 534936824 522569502 574957590 434658181 623703140 621489614 741165340 253534156 669096503 413556529 964981575 723252542 847102259 990420286 994272575 421876263 955904852 532334101 632245703 446442032 808586433 952251966 955499193 457302024 968784559 823260580 869105738 263337138 376169742 663538253 994739686 421926841 554768402 936086207 999911492 956201785 984585391 609926003 702133593 493634742 629878791 899433561 996675595 350382255 782935768 183145972 733759599 782296591 972830449 718325794 766045792 31230640 216555593 625099013 968100537 961379690 976233305 817374155 901707912 679239529 948816030 517532329 896901678 924978291 986086693 271765926 679336408 826003688 892569123 353296631 961555848 199839972 888052306 776980350 975739462 327818966 729172072 273371930 608073094 515153994 937417734 462645997 574806018 361768112 496476387 744266519 777496738 322616195 409329836 984547207 995394905 842142981 973582505 230409743 963741428 402241553 794183869 53229847 608466181 793915045 875388724 974327799 989715247 184106592 687385444 473341401 808989177 296269711 454232058 747778036 908207558 177971485 666878961 473339715 716976595 169812272 319235929 852832522 928176788 387626580 686914088 194332344 505950369 742851786 751813419 995162648 998701487 145371893 903814028 328580513 467134728 335947906 760633400 309646102 531079630 590259586 956895884 118477488 862028368 987331971 988915562 898337335 901266053 731867855 841208558 761200295 985756366 341657356 435210086 396306866 988363380 128127792 150039037 180336731 606815012 102229842 531916132 847339211 892961852 398527744 810102830 113697860 474774421 939409612 972934890 740537960 871140457 339665748 799021942 610926537 781949266 153394922 980364409 134184553 907731426 878296993 934548748 110632386 284853590 497742435 500525235 771535226 997577968 337250127 347305967 730414151 836126040 174473777 314663373 689762758 717638576 798227041 934863941 971718043 987115933 273286647 514006928 536075645 925240317 478561085 599830434 309003603 862370110 875725249 995548937 741722753 785203630 214614651 460849596 621343940 781756880 643755455 765955234 297766400 591442069 39439439 107846060 990158805 998979375 205189576 564136267 642247273 669946894 193547363 314204581 860198473 861031109 822078345 986417025 739582313 895313352 518321991 522871111 270049283 563282863 970290985 993826278 684378009 742663693 425729133 537511095 82567005 585007636 321467247 559108856 387921131 576269606 494195399 624208945 729044861 736461347 675463214 833712391 206256887 308125250 216955062 370348663 337572184 983464412 948885978 993386715 401449027 868705298 548148477 828199485 440500031 718878232 659637545 823923163 159980655 851180142 777652169 871472804 748603953 862583986 1006239 814053733 87443917 370074641 792616405 840039456 350928148 914665772 926615400 978813728 256395102 378190797 215881609 464862702 73631125 403093549 231495958 298713861 498499926 965773008 544875836 550547619 775169366 999602599 124382435 383739912 27342652 485140801 912296633 922563169 375900885 985333171 300767869 580335828 153201140 300233235 109298222 630683827 867858417 961279700 932218378 964186831 247703265 364724331 146447801 675117358 751124201 771534011 956268756 995777975 853459086 982924457 538693915 916893474 468246936 628762986 185546473 632869463 759154836 845207502 562504137 773908970 666973949 953958479 878780518 895343055 422282754 907762205 732467835 776588689 289991773 318093913 651181702 735550971 688733544 702809464 227228349 312961147 771804134 869306943 322312984 757611914 854024800 856642346 310706588 981918551 599987300 643936132 623514610 985920343 371037601 414770054 566899865 788914979 770248492 837710293 43800071 808436631 304449195 815071655 924257672 965941878 228336079 484140417 417158173 833441988 253679635 864336269 934850455 972593216 209351639 805736501 841825117 977750991 94436991 779800901 732246852 950018842 379031882 796929098 174217067 983631935 785247547 937988239 23396636 681486763 356947147 753315335 199308643 786290522 315733008 773007047 596336788 746151337 436531289 776732454 630667691 761569155 167193539 469084343 91055799 496574707 481583916 725245622 72920338 329697122 41191371 861555303 108418239 269050320 141831697 317055907 333791835 909476585 698910343 738610300 78080289 91709179 523957718 653160107 649624155 754408933 424446924 452543288 437634982 616207549 278253300 929609200 923224327 927795319 244272192 565789877 408893717 931826539 330229849 503191967 736296127 738404139 245091336 460523532 674050434 986168019 401147884 762115436 557862441 700674509 583826970 610025624 85712432 348910231 258037177 327818880 849321881 953850781 182051910 359624250 52581330 549661410 163911614 951289573 851380605 869243564 6049098 206405228 525054101 996277957 267448602 507296910 958148894 964319892 40278090 950571305 25915948 174310566 876649800 971829556 656501660 822269855 385259966 552631866 240396451 943696660 807764495 893568137 32877896 143300701 265246161 452331471 638807406 901176858 566554885 715317430 991841297 998240882 48410519 902494939 715669649 806800908 497599217 824500092 59335603 75906654 898821407 937491241 950730194 984742667 92888626 958246234 998928177 999204024 999518046 999635909 659891145 909270658 741957677 842653735 198675421 792882843 411593475 819079615 275304719 704797056 727713434 869547937 74398207 948250186 644671744 765183443 351088110 692978703 130836495 927184087 783395117 928263823 507260526 643589332 575022171 771088191 345583293 380281983 317967610 975174941 726602533 823172025 396242193 463817679 32793714 885442446 52305363 266308809 854464583 946484565 471012905 946383042 562209970 895073379 333975409 468630111 859051644 967683288 872002099 963623518 727130074 807963906 948026268 948913610 344220276 829907766 449224860 613004193 44834235 550221209 850374557 860544369 566597144 673847301 607368966 663192204 680737740 955685321 566528426 579180467 110289514 504226993 522082046 635743891 990865330 993063041 930635420 987951750 903557257 905372485 627696725 900940640 517573247 908094134 487734794 528772168 877304993 921583112 391246909 734973897 114398984 920628535 925465324 945163453 789627103 838739094 36811423 458124046 136299350 948034679 312372196 417483171 861278830 970471297 661356693 681479395 189105762 586749330 364591110 870977607 801303768 918849855 634817484 840194834 222793262 804837619 20985317 774403897 317056889 821396055 649690101 821325614 600992570 935210611 790334732 884237613 26385589 350727882 493368960 953248868 363639817 729321410 660411840 710591157 304029304 374294904 6626189 158336431 807690498 815684499 446877301 936730173 934264710 969580827 251574270 328326507 13326968 705954308 625155518 788493439 197676400 265719410 342339178 530000038 105314490 437130631 11153125 316543716 443994361 767065889 749672169 791307204 538716985 673925697 315489529 715845728 915216279 929853943 484694495 933335103 865096910 966350196 650532274 962510366 195138595 813387300 301035116 418660627 9882789 814382325 706781573 836926980 604175177 858742468 478564290 935991034 497993410 812149827 8644521 253398216 251221331 588995113 150868766 263882805 301030917 532061000 548130496 716079182 94054865 954681510 511885420 815318799 330216037 611636637 698929568 969238535 636236526 669303419 449841763 726738292 920335697 956075036 13130065 76596296 473173399 526619327 496985766 892188536 256899948 605992788 952162136 969841673 51746395 558037926 467853410 925402918 366343112 918986300 756450168 817388216 241583743 289216975 128990880 643892617 683255680 788999359 666880933 827710191 611565964 873432900 171941336 218766787 561578680 646690802 161688253 519664656 715095771 952735066 564436143 635259503 667065592 755432262 840630988 970867076 605998515 663229680 8536924 778923856 933352202 939801792 433758089 739687293 938619731 964528847 762787395 798014096 683234897 774859889 25652604 238326095 105667738 877654622 230156181 367338752 67945662 299248479 186070051 212110721 415158332 681249573 685327737 731328531 303989776 478890105 269521032 991786198 967569737 976433643 375984933 387979363 241230961 960218071 490172122 816196054 210800024 954720317 660231235 700713730 449360445 862696712 242236334 610932248 296575268 925488719 542161942 611900560 741683081 943354624 285962499 961223872 735483673 746310852 248769361 695511687 671462351 995870012 62132746 987056292 900061065 987802501 328387206 664376898 457505659 944910208 147562323 247350737 388138827 552251285 196078822 627949163 698072158 732162009 882396072 967298373 904969241 945522058 377253774 954090504 902388927 909913463 490488850 529976584 267848289 638267538 272214025 421033748 412915017 763305612 458540060 802589590 689676682 937047523 280734158 316320367 29234063 548307781 336949662 760507938 764685368 946705613 12216591 379173403 419167236 680381945 188023314 451252335 501618644 962475922 543220236 783877977 150497553 832478320 676804786 762432139 792281392 837919297 588036833 636510325 788156340 940188277 1028134 889826364 502586269 515720298 262938560 593613798 54319534 971825473 873538773 902514541 97571045 891219246 108969524 860719413 538721076 975568608 526492961 827662798 165919286 427910439 856301086 977391805 83193908 581674090 979030824 983610676 561865351 747413499 756671546 886426341 218323226 909978545 516805024 798531878 677871874 856474871 268247680 586812988 485328496 987242543 429301581 934407008 69743617 523108236 893293246 905881146 434717012 828010245 459432841 637299195 52434967 670654233 351220991 802671534 373564342 582862323 304969802 962935427 183675744 306544939 992228438 999272524 401475347 431000561 704534204 882957391 743751316 840393621 660040553 973555416 617008390 780891789 833288886 961701956 963342938 966250932 594468496 834208659 907277846 971250425 3041374 591263639 869685031 931203990 159949844 430281667 701599415 728074880 239457274 415846754 144125028 948524996 469834921 811000175 537978792 919640009 776174948 837265767 269294501 671722773 515165564 938661604 398751238 739617285 107904443 703905926 475486967 510252401 577465868 680060614 489925593 804443558 97989437 114638106 792066112 903749507 406323129 644926466 322452054 724819872 111859149 675688439 302057290 944435497 597938311 785326234 148600798 396010674 269634800 667105882 419538051 955967817 667714607 766920309 348299267 949615579 217648502 999354810 787232020 984108234 596550138 650468856 135193201 915103431 607195020 652077501 463795127 822502625 699316636 760041919 452389491 997012663 850079256 904461446 100800777 315935254 172643262 342164584 581280583 982451777 870632349 971860899 917033422 984696259 189675610 804522258 855433909 970048183 147483529 852827530 587267500 960766785 398261567 809657797 886096158 973726853 865044693 896622372 793986500 857518211 242719906 349161707 815142108 934756201 321341829 369459771 892831210 916006556 145301926 169770469 378105960 506913994 735511523 763897244 393181147 563699716 246642120 364153861 385447166 568584795 680945415 892125254 297726773 834948278 779474559 881253305 787815958 801947918 137926029 742459114 835022216 881229961 173927319 334027167 8135913 415306394 272893210 713878678 292289605 461536420 815857850 877161219 842976489 846770040 568602067 851091072 819078618 922329640 919633627 960443602 107949003 389458783 228306923 993727172 925041390 966584644 229793890 269858732 947489859 971228625 770489337 859116101 469472295 698767881 460046838 535005199 727178187 756442355 686931869 847066495 738837762 959275476 671880213 866995544 748163598 753949015 773032779 992171109 111638179 466146264 294564513 328950631 471048513 910964353 91163066 196996217 230100249 627379178 654914982 791456772 261526931 551465417 184247730 801806074 990398182 992291649 44766772 911227374 857516351 977562813 971314905 997776731 708985921 895349959 6307846 363244428 486983924 637871005 519278438 886488504 612953349 866404864 461505292 972618236 55331070 569959389 12298257 186221795 285212374 491923965 160503203 697596391 679656928 734641010 148401945 167509877 704003776 844239214 466353199 908770401 67223640 924129401 623771634 952551545 592023109 983596213 523204542 938408722 623036212 782839881 834963937 897530548 468374886 512111496 6381144 202836423 690640582 970518808 355786728 718750803 945761702 972022791 291274126 443395623 120903155 845645122 457310439 928990630 845744082 938732057 781468396 924206436 761258248 970658687 599735905 718162172 137651403 881225945 679414152 918710054 640211846 746864565 756448681 796239870 188370883 529997248 883821928 968663726 919701549 976067303 527364026 660559899 582008651 848954367 118313598 286427946 520538906 733862841 971573152 980571725 104905965 119027235 274265275 468048150 472580086 592026192 875438851 991326134 84169713 658668966 839239335 857966010 173213267 809558054 954117387 980190089 999575794 999813178 360258874 553257922 894896090 899683890 176996199 485261076 369966098 744569158 19388125 483860605 7287866 577045293 339306685 442709504 509960342 814633435 342220338 755249362 941959947 963339806 362253735 452140286 430565879 680145094 187392362 604856986 829724763 991153592 139622182 674528598 748925709 829452565 135568069 553773484 942972801 975272141 421100505 599603584 978654981 980758047 610776073 751566904 148954941 187581495 478154590 789122879 817809414 821080770 39596612 806271667 994889164 994939412 878847589 967019865 843892849 990626645 692196919 849005036 213265889 550064819 853180491 924015744 741830799 937113164 342479279 344794416 969968306 985713057 769634488 962482681 244232067 427905405 70504439 262477102 691483858 780278070 410193051 620567920 631530485 982939360 242269349 759454374 842007847 924246686 962415172 985369215 349406676 660567914 402077817 853859085 109753963 520055835 716704885 891042609 310451998 893436677 923269096 929253683 295380377 388950030 756549295 810074281 7236990 688783145 110529872 593076467 466301752 691867394 163717387 442941642 897785456 987317119 115434832 304283487 51620243 328239372 393131628 719545360 928832766 947859611 47464028 564269177 320192789 335615252 552198989 720716077 440585410 499677699 954797626 993676131 902513510 910196889 394439211 992097256 61906370 983900242 97293380 761384227 329185176 567168203 85129781 213548233 118380469 933523933 724994142 849910044 246963828 625039289 679403331 880733410 282805058 350215908 428272994 950403002 412424173 908580309 854051289 993443369 696395684 972153147 369940425 456154374 741594983 809453523 411831068 769705996 913330384 972868350 861086756 969892346 681847312 700003640 773870691 906017328 86512800 710367642 630292933 824029525 813988046 977229774 489617286 495579592 133635898 281676783 864633647 903080414 227814551 532632121 10653360 53238490 257691329 723817851 702160354 960061580 62392674 562139971 630609564 746305628 451280595 752021467 591424625 807763658 139778429 978512042 801654427 808981552 370134921 938021856 118359453 804575226 123089889 708106602 331669853 990996804 327251237 404511727 384225670 571591602 813720967 863643904 584633643 799654418 437625490 696903399 758248499 805433561 265911125 339680655 147858323 684303307 589038310 936962336 192503379 268528832 729677245 972657332 479655852 725123552 523952601 706833435 490443246 528192829 542059856 874357366 833081392 998395480 611966283 834726027 365626305 404181299 212016985 349194155 825145808 984945327 508860301 952942113 188412377 228453837 667606562 955877192 137150305 513147988 99800912 909940635 710968963 914629832 196200749 742245371 671445817 760535452 566325730 812398990 86404652 824910733 598705194 844711074 54999394 281875188 484876812 782413656 792782207 822638341 742519401 788298443 46635586 593337430 823604241 871172869 158920755 274080566 441747523 843108618 746272695 792759782 555113503 982244140 939839173 964529639 843162234 859284073 228886575 448423788 402274167 490779957 216914151 626959200 893012426 905233802 695790638 947231913 272490234 701508610 469260190 630155609 478470808 936109892 269831447 675480210 690908493 791465067 987508086 987820531 785640651 876990399 863135148 882490987 915998120 996852017 801834275 889901790 748383841 811433283 399288758 705095845 880278915 910281566 957050723 957640553 92151401 559522662 736831869 884100049 651722252 925003145 328650779 944236728 590554329 842432990 888712659 969119549 27739238 656180591 109117761 514909351 678348482 780514362 664569003 736577767 932473160 949776943 510412062 547807785 346381506 647816333 110822972 764269584 558938145 779262051 802970407 999241976 959249983 991271231 333811597 738814105 645241174 782335613 762938108 988471536 409907110 540596556 923582098 961081486 237954856 374225099 498316891 637606740 933656102 982666819 372188969 612236682 17498752 981520424 972917760 997347583 920435525 954401699 349988192 603464544 775341427 857606961 615207573 725086688 722591143 747618790 581286369 863544122 840505497 980070208 606586638 935741381 659248513 907455959 782460611 889805780 998201994 998967576 834220141 933413450 374920502 932491727 903823810 922292685 493135644 790130031 219735778 709057886 812270844 883737482 941283935 970468527 277670969 741192930 260835349 823657690 69285777 866891651 879901914 976437834 337231798 426889377 111008456 983725583 988692130 989933196 348704008 823253601 557971433 759756992 193414241 319883442 328755140 397371452 789688863 904414195 355629390 920021006 689400265 931271926 266208088 918185597 759855931 795562202 568910875 728087397 467527582 819650630 453538991 913858841 225275003 975210874 644708333 697128584 244999038 916857945 236909115 425111873 239387505 244221358 247777462 937641391 240412039 414273031 526495183 615368659 943616832 965812889 904091836 927773455 661184396 919735911 967655303 971203399 787970065 829411093 398125437 842999886 363422730 655815142 569282024 599172725 714731884 811750428 201541486 694531101 484200246 575589074 802800373 827620117 897056879 963025986 823344963 826381532 142045115 651652422 983416198 998612128 398827142 455835525 98689145 385184395 675534485 968294526 217429128 661370356 982140386 989135639 678021633 781220943 831880633 926652772 539323617 581953636 117977729 449860049 972495020 996462044 949362312 991848133 225853949 469791795 637889008 978518885 306926371 888184719 126463074 723775014 538727478 928428158 123874440 511402062 129089331 622898970 707390980 994073942 841144940 916095337 346437927 427092967 780969134 922796675 853600010 987896683 785580218 945374339 177026689 218562239 555066503 717926023 881069648 982503041 266983393 372690509 280272180 888222589 643548448 807700230 117080902 381389823 562282979 776594273 19246747 448003323 345438834 948177512 122158044 932407381 460712474 895047504 236229763 782683373 316650032 937264242 235529796 708233482 674616714 864361795 275200154 843305198 695712552 934498873 11354644 731034172 201645708 899128975 985424155 987075299 668932983 988205950 634371245 830252356 99406427 507748527 929125205 971834539 401961555 922325237 661400081 707806229 458510369 536006339 204852441 261703277 785039732 949706203 177748883 380540072 972616324 996315450 244308855 484962870 374247921 994772317 452213863 829621566 197329046 386315077 150441392 851675921 4737767 329180524 316128886 791422491 388604100 652532653 166411166 826739387 980536111 981230068 521701406 801588555 928381554 936395415 590134948 642116024 816124385 882659413 907592808 965153985 758234652 776631449 910672068 977593891 156601546 635508385 97509432 929367036 145189415 555385614 512399374 607953618 342462718 657961327 334826083 750876819 432009711 905985515 467993257 924926628 219360012 800445015 923543996 984884298 799601262 958645264 647850038 810387256 9713644 762135040 263379246 683658973 990903132 991474836 12630475 69569976 940154189 981132579 937783329 964758867 275222080 834263135 510509247 784699302 726589647 861175199 973060996 975764272 393951847 640685787 712298398 933369946 657695595 872394641 776437871 799952166 248861918 385176479 199058180 660521526 159377261 245785718 686238976 733582593 56980786 577948752 862275655 890329328 318149140 348889405 557951484 953499606 874429504 943633425 659852855 990001493 370554914 769826882 542071752 780574719 923995229 936372674 283491331 377950804 961737112 966773154 313675548 361534087 909363178 912038571 750642262 759596351 877992540 937932082 334384934 998710760 669107785 890051789 729917370 751807146 22755513 572027826 977244251 994870213 193638666 644811158 985589606 996265565 467880576 714997645 349221749 939418080 112293420 308815395 525957990 639888259 861595021 950475734 109041522 286237887 451546656 955711270 745539229 756598938 379751989 499854069 640457133 816680597 368376165 633208331 134385161 491931039 945075086 987907373 850535760 937440340 199188642 879470132 836589212 996740062 972431451 997652290 892387952 987469765 943707150 966438537 239654149 585229158 510966845 881501433 809496696 950255668 25103203 37559199 167077166 829832771 178443596 931550884 812553332 850298656 942254815 962991316 708239422 913488872 117825772 282191435 324347102 340073788 369979505 435071246 277709681 638900434 133011872 528049444 984547598 991323194 805418862 942418181 483034830 982753485 796826827 963477202 78639478 211630565 138799194 592149125 194679852 349261752 289371110 894854715 509295525 779116038 112930646 138474324 435552674 969354603 846940993 933052476 895234990 899259524 912504894 950982160 329123286 441071814 350261902 951531434 934788994 950119353 147225050 497029010 865935005 989738838 965903753 985978494 37596088 730537754 145548570 770273295 42538043 262985815 668503872 682256798 334211866 588605391 480228726 570658892 331949575 949475290 225389160 876108612 979828320 996652252 676082316 727563833 32960719 918103677 486010072 808188268 18549344 468819052 459016112 573517359 182594772 924396796 474351430 519428087 728736324 877337275 11724525 219123230 609885323 887046417 350735139 723335851 236633647 299495172 12713225 253514997 448627737 887344787 45579621 889700929 32096343 340877635 172639723 937306003 44573200 88035243 495144820 547936651 296520148 980987657 524741130 668369908 525546706 615335982 419055253 925896315 892956721 916358521 805734096 820483223 57822491 429502222 653349993 927101251 137861346 531535784 951455352 975182066 555667212 768529088 970602661 993216117 394854015 887191419 469951176 988191706 177426878 185720473 734786294 910118218 579253733 967145921 92431293 187428990 790548519 916406511 511071315 634817834 369502008 516529706 545612065 629265854 236825261 607779875 349551316 357497875 776984685 790636538 262520269 942890778 38341512 72682749 187978537 288143326 709358109 719460689 307410201 994717379 76973252 363706874 18483113 886119164 62607144 728882797 49418925 610723788 35982563 984852579 760237478 930858667 894263291 895263890 418452315 626595947 812055943 831922559 269188159 916782900 263690821 834779870 153408138 377222074 220170647 560379213 240710351 245055319 136243588 739455675 890700101 898169952 846821030 954919518 961690765 969308522 479070882 723026217 118452152 282762110 882622890 976868567 965746528 968194984 193145166 730415944 20645111 64905477 237373432 534186088 290988362 471712645 168015448 473029359 345516891 985485334 425503961 994431346 800749530 913403854 25791066 847588944 40363073 370765822 121040795 325961190 50454916 652143368 482881501 683507354 672229922 970966642 600548005 824457888 519107976 690481834 941528748 970519112 335217238 870980598 24450863 672913958 762014690 967918040 873428440 913518360 505695484 909299137 452174063 504754890 276614671 867071567 798150241 921940223 897927245 985510064 379767924 411422027 115723758 293285403 726946934 743108631 10701248 739377734 726370352 790643226 476740755 559774319 444383186 561350678 470166356 798386682 201790303 930552605 220729623 735286172 848111739 852243775 979319779 992894422 394345731 530818536 583461613 892192872 456232049 520826079 481198465 837824515 935457887 961081657 741610562 914430707 908310848 959655513 542761493 671955910 617711357 676038560 498443200 628741380 894253384 935969047 255837381 713119461 628546215 812927665 957320250 958619712 829759626 884867486 698360511 711327470 145101326 383673410 191524959 439016079 628583336 683122924 544936002 891468001 437492768 828940533 361085240 752406628 508156468 900202805 574956518 628071433 308830765 826680263 655104340 900591998 722528834 787433628 144225141 938680885 990858097 994044464 834750327 918175637 381081922 800943541 93979226 802840254 512026577 966970834 141032213 828869526 825751191 844532605 595048722 773141279 511264570 996011063 151962911 442785209 168959777 351707358 167135841 590104401 1324558 87549673 928442370 993814130 195137888 627263035 280545935 562492213 908724990 925324087 933565804 947360296 721250673 995942135 560369370 790140669 371735195 544639048 630488153 720691301 970679498 999784708 262728007 911506500 818391894 920356926 493964247 684461042 291261801 937522362 649401246 965514476 40446670 795259170 426977576 598367623 564184137 700600907 29663598 464543891 540931707 582186450 989490001 999844912 871424142 965497395 366785549 771587485 294657959 997903300 602066915 624346409 221047480 697199438 466694700 515255835 53179954 704269982 318889572 773997580 681121723 858396989 387974310 573000374 103838648 144825063 184220431 596684257 625970229 806699417 346534426 952745870 921228889 922596657 50163204 900033875 534257118 623495380 178461797 862289862 817021659 889572045 203602657 396689869 484080183 926402502 225650825 239120688 169276562 779577601 756124591 841708408 149768554 495504035 569886653 891815233 476711852 665782745 498163807 601885466 449717159 543814691 526997286 955383092 563695678 849720817 636337859 722141418 875363348 911016193 946020888 985324631 153525932 758948961 725220050 964722909 172354990 768379164 31358717 598994107 730468848 903810024 524094099 618455871 323583586 752591065 646684825 989436363 572871213 938663296 680724880 885118442 870427483 973774501 659006499 971032358 141069296 193729610 512692684 567759734 96062828 158273955 889656102 966612399 370193727 375612692 145767592 715609018 847977513 929983970 535903507 741116410 542293953 731505701 243396416 328700212 275618007 899397403 119488199 557748121 818236766 890394857 172398361 827486685 288234356 385166499 343129292 604317806 380605899 896948118 928764830 935721470 305127071 815221372 488216510 884856800 627123369 704583321 918293473 991018971 930156605 962458843 275236720 520751236 859842698 902734780 495620206 975730958 992857822 994470669 489100943 954789225 490402381 788787492 589159495 900273227 950020271 952548042 207690490 364947883 666172022 822307513 180036172 317587330 503034117 779642060 595145677 706733832 626670313 930901117 773757265 847877424 104948946 118482199 36838674 787089116 35367184 507344117 838691698 894462051 832746517 897640563 956199147 991882742 13442230 205598990 609856420 612672028 747723475 841123888 498599564 553883675 573633132 639571322 75993993 667092836 596399060 701274085 412436359 988658882 140548736 592767253 56923697 504252834 421345771 990856507 417736184 678121940 889411824 958445305 317924886 804444391 533937645 781586861 318877489 688746912 881882711 923558721 339957565 975446382 330566764 707443867 179568283 408788299 835256524 946357165 135442486 560335059 287887675 720652796 749613647 841663831 864597863 992831418 533391128 982001328 995004301 997057431 541481381 557381748 204892886 264358372 995911031 997939511 30809924 933415756 491690505 827577504 809149443 888978310 318062510 542621894 246688369 873303397 425772790 605128429 360400353 472339911 564627306 623732184 488641342 839497087 884162881 907167671 546802 540175224 707321508 792310810 485941463 930339772 69170563 761798980 314990268 522221836 58415832 833026338 158293397 727601119 920564787 956609982 873542374 886319048 232100217 423978090 927306419 958692826 60674262 914519341 952242016 981570211 794702273 862347815 646445548 846774067 848575490 937915514 752594480 931698692 521559268 815122139 269256447 559193018 883448847 937629796 696573611 895095796 999723759 999857568 725554786 835214776 970487790 975070048 983028650 991425391 184800222 344882526 285811445 308848032 706347354 708154270 478312459 487418651 138111781 691608221 857502778 868729468 140557136 163651406 351251246 774623642 406190343 803133294 185293624 515591428 15403186 581731967 604972232 946494572 568717958 590464997 580818056 613150439 231244401 399573774 496294851 965899797 630243940 707088688 602674877 819141386 280371376 459884716 794443520 876275626 718589169 827391196 285233264 966694071 868809711 936134304 310434478 562479380 123524173 527246664 732802232 969018068 759105886 811375115 240221101 269923947 301620574 900324884 633050811 720037321 49412306 143281092 831485119 832284119 549938303 965081280 679285347 846835742 834340037 886381518 811732460 864758124 34494643 707306507 990433185 996602255 536224290 997717697 932073902 986753228 738074478 947144720 196928245 625767408 605724553 958226173 36491729 40679582 650791452 908079228 686735182 908242456 912553305 980934557 102041508 966067844 739155858 958404477 294881183 594928809 52837193 788383506 159368937 434865650 435730547 454167179 657594696 769904897 223319174 542554162 768648703 980037875 877927718 966026445 858124312 920019229 305260765 646364904 503294551 618296636 810449189 857576316 34162386 56180590 258744165 334176312 353633367 497705578 330876814 821157054 928812787 979395736 899753796 998236069 79023627 185286237 716920788 995236373 349306349 885541381 323100622 956992803 970315730 995884389 678033723 771694057 640349091 715875664 717259787 855603595 475107493 726024946 432264414 900186767 301381697 673768347 30513578 236034978 648484240 974353454 2835152 353755589 130780692 284686940 950316246 958427586 444248990 808492636 640258583 662589261 843660333 844975510 360399174 944082440 839818338 905209696 909469882 914656517 120531279 276376499 326976139 742271351 508806749 738033784 443488944 547565351 47115475 252995287 113838437 451184028 535919416 865804223 652550560 776715562 770014559 830018766 195575995 385307209 889165686 932453359 59081270 763283119 754629717 931255816 183108575 599904892 737500271 913613403 449842472 872269887 146077937 592828568 407394923 570108981 332340826 635434815 252817528 490747773 225393277 410145999 946931961 989292531 687620431 805704297 247983258 302723388 581807791 678378084 626904657 742268782 190116970 458294793 356732175 724844107 552648005 815543727 407834293 870118873 29041882 497035735 322040437 413014784 64809554 274733062 339850415 819463000 939769572 992992094 901155101 925912856 134868415 205817985 193365193 755788117 80089156 844330026 838753913 977991848 378639591 849639907 919608715 964590657 842089733 902245927 457405870 625818432 916125991 991643969 369224341 828441968 90264727 96270453 87214996 600332963 13237656 577324081 170405290 483278202 771295299 971280578 141634543 772786073 887124169 914885571 730718614 764735582 692645375 907397815 970403755 992126269 858533354 862295182 509507568 567956541 960345602 992680702 865195166 934583014 7275718 296054109 891531669 959727252 640908770 735308167 570996637 812841041 870254365 920960592 783308441 947815029 229743345 407480276 653305920 654780166 651718067 950014909 800168166 801214773 316911080 489297655 146265163 863797141 975801381 982628156 358243960 684931832 174127583 261010740 93457954 123544917 750543480 751924194 736230121 780414566 376830138 514496810 919360084 978636546 398340236 929500939 420804282 713457071 140675994 899977998 339377940 514445156 756324154 838240764 286449680 298641201 976147678 979789428 881979343 944146257 745692884 839460645 871877907 946862288 442539603 621563258 318653094 440792527 455170129 664121063 787438298 885658388 510641371 887527216 26012536 688585786 457646186 490027918 1972991 530910941 937768795 943879759 806627891 830269514 515930384 575107585 623459850 725359046 7679032 279570957 894970465 941071252 375664423 772775595 596459542 782967563 779911305 830524868 815846553 946992827 138485078 573603405 654249720 959271623 842066598 925330858 872743866 880169324 104526550 403063120 768608212 813518611 542368787 988665871 650065344 864373703 183101046 482026799 359052723 605998799 54819153 680111353 531263192 729076334 278073717 657365795 530861248 754618146 127030006 674093613 164308683 445048800 648839464 974238835 565627001 777394469 99583781 972907532 10628724 380684008 313026771 521991880 797850697 980134653 713012133 856640708 977956425 997011958 59610565 529113267 85421174 604458533 531499441 824237121 742961810 966557595 82913487 331429380 477247292 584936719 155502860 193978714 22337235 173784033 960585721 980465967 493252251 938820385 255349659 901698354 901982462 954847527 284009602 703351996 302567035 665269990 504935047 626955727 184617587 696025234 214724010 316033642 22048327 472620000 675478349 736529233 678759802 722591684 91295548 567056903 931024343 996496167 750691735 956323338 109718226 806253985 646574055 769819168 52689933 372653148 870920724 906709423 645756408 723455619 840425352 960262495 735320087 866807752 445724496 664040861 293019953 696622740 400017544 721433015 851774524 908377943 395689805 660162958 451695878 715548762 735456903 903110587 591974592 858499517 279967812 618019446 61709985 450477905 371915005 573112452 711482368 844967629 687010494 865797946 690689199 950301149 361539548 946027825 501531734 767467529 214835023 945298218 16979164 539305129 188134374 456840531 359578161 976045238 104195235 261950962 155618630 973145344 440825977 995628568 356639479 818576928 32111747 207349644 330628277 568638441 484046137 569598669 329137804 810651210 518488987 805270829 204979981 757221778 660039217 765677952 998010253 998380115 412119172 485688348 807118450 958339403 505459970 588121020 554913428 631534937 319807942 443142056 587494536 885337239 99090046 952061112 188954530 649978631 591372544 661974190 853083770 939428718 926654556 987089604 491830081 504333347 888930127 919414677 323790658 940034441 525412148 701103830 54207680 963243709 719938507 971793318 113142432 997019896 720544771 851411406 361104415 411122982 672657643 874567780 311296874 644128094 496396638 772558090 104277670 189770702 512561408 931353417 784464547 898801042 481918715 862599233 50613904 197578300 976417915 989416014 685274155 891939463 188212130 669684728 227696818 504120450 918177383 937642023 802062048 854796951 420092363 696598849 421829285 991473372 45906611 920092578 490091069 621003356 408255331 717277977 92334032 879708847 917600006 927812188 398620063 466214389 508350684 650857963 242489587 390950050 757701163 900150275 460263326 461784661 726416636 964678137 499333434 953072707 837661982 906274414 993154675 995174543 753319627 955002959 390922356 670397881 587286395 703689835 462944711 607543784 65174698 838857636 350251886 818909427 989652480 996592092 689345737 806629729 45021511 244786634 180644704 857193808 39254362 353345114 347883550 905583024 370624144 497597067 840385606 901163699 33441276 278952118 613879359 756312572 77682850 599311655 713645269 764926839 970404909 971776353 315402776 475983272 220925395 790490866 219704759 430123548 424029690 596969558 16151440 458300494 235291744 407659476 879544014 949050929 366604108 840320638 812299988 854906084 904338167 977782409 702523666 841692484 786015129 894380945 574011892 901626648 466809511 741904862 236156024 992392900 777664426 974950414 827809367 995637701 953815144 962876561 357316337 408505464 80333740 682781058 916842063 968205490 340386571 376016063 557382937 745911550 988072070 990253757 114857854 690253935 304225932 858070662 593208037 872543256 558357496 951297779 106234641 652390346 767664339 863587979 175664457 961411468 318315759 470905818 547828425 637264969 844696705 946527473 776041142 932879715 556663201 926902065 134034707 806951305 38877964 383353718 808724907 890003412 793786944 896072733 896138147 980905197 655628382 665708424 883808040 954237490 249938731 335585528 193579342 987650743 881406897 935677380 281410751 460925955 608972904 736897688 303484968 650824858 638474168 719576371 948906258 968426733 526348007 650089060 265004527 776282371 825477706 999897241 888307 860934636 897297609 989678595 334780629 970119540 572095324 681782650 209050390 545518193 15602530 366438198 125404758 828764772 277492607 688156216 170433346 738227884 621141862 798483729 159150773 850220414 48692365 216200681 631963507 843289866 171152294 852638351 942537275 959714884 688337469 995899713 717644445 768881614 402857473 998341107 654896004 712710811 262198409 837878987 538990942 629587010 921480695 972437371 897315612 961570564 938002537 965896588 959036838 995244317 357454276 571535750 821110789 899386180 997842824 997963140 196522251 490973335 503683861 694834422 159899508 394291428 884975960 994162154 966524875 973253449 927336290 927632986 360408596 507034758 352910564 431827983 204152631 255221145 732678983 962468269 678428176 911636348 528522959 863189640 211511199 496040339 203602997 237642063 536115201 796830421 893549789 920990832 613310596 691072916 115771274 530211935 742042079 951894081 310736695 433028237 523114679 794320940 716406694 933359083 962777223 969342474 879842645 961956995 336700999 614869493 432652659 821054180 274078368 844049294 456417718 510068471 20605125 800042277 606394736 636089449 25859106 219165478 518737389 613759050 278624096 286800474 553691465 792756864 519014717 736374659 568371928 733649956 630383707 939449884 44285326 892153225 25187230 109230800 222862356 418982687 590560152 608077536 230480966 614374835 514917907 720399351 146304966 297807606 875344895 968531723 908160998 979746197 427424353 981921120 255140124 561177262 784670750 818481476 490642763 939310875 829378473 870107508 774769444 981021702 807117056 815593417 178020196 987293761 341590375 562191199 798057546 972635052 120229708 632740450 453424246 951214202 525506013 719529809 388896842 450398814 487625610 625617589 71793185 765040152 807621007 906924177 425500277 686805097 357510219 694112075 844519918 947281876 255491800 799584232 439510582 921511924 844760556 979922208 472808742 936150039 150629460 804630869 996544673 998833697 422725487 714997974 305668550 543729796 532987052 577653218 20790379 749662700 160682637 515915284 148874289 876580567 60443622 348156459 831200913 984788015 222113407 473790783 652010353 770524966 315483525 921869415 905822126 958261097 575926324 963510965 988220147 990580185 19743297 181693165 209848129 389428449 828978808 918151074 647942703 851062137 424630747 970731579 785706108 794001717 114372282 810577449 642352424 844047490 822928811 998828832 651079133 736618449 758641219 857310935 137638439 808013809 615229694 908184419 577902875 761217977 651607655 994974181 794519953 862242376 797874210 859467438 954281630 957863574 618143196 819709926 709711698 820976735 373214012 760571825 951400177 952617746 212899594 355594639 495102307 935967980 729451794 890972899 46975141 563588899 779963001 943020836 32361277 139078738 793603344 966909798 261841052 360962562 534591134 840210037 991519667 999497697 963018213 976499522 379925117 719888854 563795221 787644922 82881420 233999584 443452413 858226957 703506685 844817804 437931051 660097760 380056995 887919730 435505093 717721887 957163434 982293743 72126702 776456994 753126624 926182398 750545286 860264877 160011018 544049435 461239606 621116888 287304069 817360140 954698024 991835626 691206741 711830488 183565136 536027145 289609553 588214050 227588533 802716585 401578427 636656857 599088292 841787011 172947394 925152149 389743778 816774493 986282221 990532724 810742234 842275632 352471493 634720537 202607716 407225289 869739587 970118103 207987122 843496747 74806201 401155938 664242428 672560818 699388772 761133431 744632927 915547129 397736978 942823125 574939652 845983276 41485353 533699090 504623797 661487168 937191510 941745326 98749053 220072695 684231311 684592099 155749104 754935400 956657569 986817631 159210910 615282880 815258141 829840078 113494163 967007280 986993784 991590764 844802449 964781615 666940348 756094104 875560287 991833165 884656491 954028885 173113818 321622801 851882055 900705705 685885391 912976215 781233022 932735066 961244746 983301286 364579529 899994516 118899063 400967548 678983507 800335847 71748279 539732591 49690713 659473856 39199159 292867329 571122057 628130870 12716305 760579231 387282083 397881700 10043596 142897844 966196160 994066346 77696298 711278928 34908864 95350028 661323229 876100509 140063029 400845670 16216024 85069215 647519691 773596206 467848933 515708710 983104305 988880786 718810835 865791687 764608244 932319355 704375335 973339543 167774741 998640341 148119705 806009283 245698971 855820922 687185215 835929269 105168185 107538300 590787178 787826541 97372595 540102980 166798152 235954976 178710420 343658375 676037114 925027661 253740018 559481544 537166908 918200361 349843981 497504763 67448733 198494732 345073431 696960881 891718270 933306164 222919888 751332395 219165150 256382591 876802394 895265520 205819900 283014829 946792002 971992747 933423252 990762888 837523783 853365719 241444055 875178801 383617531 657550750 498607380 699664037 152895563 844929412 976670542 983685648 173021259 482509400 486369706 948366710 329799360 777829721 933450262 980564549 183918346 583404359 442295095 721968160 265226639 742891728 180801059 762131893 548178945 825727378 165622319 611420914 316867675 536764868 552027989 699947167 733208007 994425135 752559073 755614247 264356482 608762342 472000594 996004855 472709822 837715862 998342759 999607448 199798484 419831499 348380395 544050013 428245646 692277947 326464668 675226420 181426061 925879174 562737655 655426335 346708017 855177754 355649771 485010572 915682093 957383398 785346349 877886379 925683389 974069145 440470935 789549610 960273276 990140437 620475999 903160207 736717234 940825169 910426207 981959230 184093758 584254100 886033491 903562219 920878375 948746135 193307386 480176284 868270999 899956704 87313825 623887809 694985853 733516876 833359854 867678641 964457958 968120105 55504379 74794268 752837946 982358379 90522221 379764579 754577839 833810109 422007153 686892880 584622291 818365900 984378019 986642998 699487774 836480159 877629894 975427626 827828939 900018585 754704437 950262646 743093768 792847162 702175386 843379606 295167438 474073801 766908934 841368101 600286029 816984177 201929446 327763313 630800032 716992567 530399226 671697739 757761606 874966325 973638059 993687391 155217018 851861912 620280365 696555810 591383919 842846079 877324205 919109411 787748595 811965281 133140630 980574080 818051356 978386093 238377713 975542362 649499876 827610187 270937129 717995939 826909525 981888417 633311840 719156250 833924023 898176278 410168698 718121889 102896154 841641165 105771198 265275407 856882683 941013171 279529533 888915005 348328572 933466250 212968503 622990356 232266753 298934032 641768925 785944179 757353003 921854855 688943804 987328600 425501759 952087061 748038686 751944747 471017943 691803687 116346072 302702480 320507263 366610018 783601397 939684184 151874122 361003693 804336370 913398761 289696788 400760079 465767641 812013353 277718561 908964449 607620444 873270635 480268598 712511944 716133174 746488572 853232373 856836168 84315933 812286062 743942480 906485383 591233778 599321876 400262115 733023467 583364341 964098444 974953057 998648630 915030088 999818322 415435481 814255588 400264326 982272195 86948564 368682600 362012775 734858151 62188747 508724291 309875126 538403865 745117486 906403020 217461618 828939417 295785225 562296655 138014873 163894182 325650782 541725818 238477304 849609400 807646899 920875725 94862021 863943308 879822760 893048578 521671781 606265535 618721093 764283221 446198102 885117939 15635211 280621741 716544344 839747007 390235567 759624894 495187347 897618026 369195592 862259443 304250199 644072655 846188293 850770494 333603428 502552466 165982240 444485638 252218257 504750583 588110963 868279498 80786086 591211290 145603031 214548915 258559535 744723692 437721679 723916889 210628460 820396264 488540940 579707346 643861038 809000085 192227956 585754865 3515118 244805393 458815297 934496985 486726470 954133430 914200384 940601904 785835556 961796451 245840914 960830417 437350975 649661823 913189781 931844870 823514116 846074346 845250372 899565198 279752641 618345172 360264240 835634699 7216685 550225575 20895365 314235004 117043560 392773231 272500350 874747730 785554806 789879397 758657959 905086791 884219892 898727251 420967438 711414845 514545223 565368554 851487907 975374849 860435979 905694014 314075923 865782114 289243702 659408932 688005715 762568335 522642146 767428656 985786242 996680748 479268376 756462328 364993820 629241199 532740433 746798809 247017227 790348681 255111830 423210577 329550676 570269324 317933838 813793615 854176228 928800880 455640596 729521554 602276233 773149812 377167962 409497054 366915032 925148159 397755328 674736612 727782141 899007133 870685682 989940642 547190829 556112737 836002595 983884340 720048437 843746355 38086085 702449161 6672842 103824884 852560528 941533625 706627919 872606779 914646202 933813605 515084759 766697698 382003605 602978575 51356647 434934760 622383431 630442196 475714471 597842020 46306606 666949369 831630621 965605297 490873634 982851062 421472478 461439191 804535358 816961119 286396795 769316650 458739441 631257444 103049857 641239065 179303627 670390086 440288167 743274683 880418837 942702461 421469501 972454891 944177075 956639398 225516282 921887707 30436976 691508871 531969587 840662881 314269846 757933854 343066823 472329375 30759006 196997444 286799232 626458468 781471729 968652526 332916016 782785334 295816093 308649945 785483734 837858220 84691473 650567700 736292426 740063685 295764260 999846776 501669096 675931224 726163556 954879379 180872302 233061536 52837848 338442777 596844648 924597630 5476947 986767474 815156632 934133400 876180131 942576375 332048640 583687859 103353860 750267077 955207879 981501796 834919918 949632225 290967121 848472882 352244717 436868300 75521693 632844997 204517559 633578384 855760667 901930931 786530120 964388249 572724434 593914422 840451805 962354655 785616587 835168515 815404932 913599673 947516697 972662240 248586679 665178984 957580357 962693964 242482627 266079326 35504358 300230177 436960034 623263528 559767971 646164366 504297038 562678384 18089300 632515404 940221142 989571294 433324837 541247058 824110055 935344489 344301040 638312357 259491967 439372823 819243636 901944318 223297077 756550569 130363886 174860838 421085471 511452810 437627781 515318672 405615872 546557009 698346913 845593050 966163765 966509421 942783579 969736961 247269302 905482861 71870964 417947081 996864513 997758571 363811479 986222862 132727716 671138318 572729425 864586510 515485248 976607675 965190104 977259094 328855374 615815836 724903884 983500445 616087560 838755490 364919756 439297750 802116021 843525368 906313752 935456570 748182026 869138011 460561547 775342753 651156847 721615337 243616992 639171652 990938561 998726106 887377587 904224967 410293436 976657026 703680836 902518406 318509274 865666601 360770643 399917376 672822609 817838158 993044605 995912280 35851365 330310467 126139070 567822634 905477785 968432518 746457599 818034039 313579215 923458939 322615434 528463581 725574008 967244004 973400310 995114136 929735051 962864307 439146121 812657863 739155905 759525018 441076211 866407387 867451762 886727280 640220218 832851871 385426771 467573570 860816671 893284515 273765394 755747578 772590583 870227531 932133698 992099366 376956161 759628213 837692823 989720770 391824028 737336713 968685010 976918438 486074539 826403354 376498216 994770865 311386538 726708769 808970981 870445497 731449732 990502156 552524879 653654930 270706332 498559167 421361536 931553613 564230267 933308384 414855865 877870349 865267341 890561177 693914858 887337276 818738203 892867383 596553819 790659431 140914446 513230447 294010540 381026463 825938904 880313514 526265070 662798531 984674951 988690882 224236594 960264814 442951063 638080180 758007655 857300485 898177183 979380374 211717312 322024223 878666596 899938662 946102865 995520309 805714727 983453575 304923333 493492782 283411246 443388940 2777368 131280874 863303434 911814139 294330806 843105183 790118680 926193025 149803291 697844455 813599275 898247888 2452601 439537041 558505105 635623483 266526296 546101185 710979318 744293321 389257653 616213691 920093165 995597049 835364261 839482719 877840116 960665095 616107369 758694403 320082555 799836284 636859678 760576594 401577985 740829689 971739251 993118052 511100559 858309700 576039433 675779303 98782206 345460540 526785574 689619745 176774700 689226086 996167740 999978624 79610014 437489436 427829027 451830791 558789993 753281622 380273506 461003550 851862057 951616974 290351155 812436767 484267087 582002848 211385965 253361215 615106957 618147285 581678775 600143470 755786056 970898109 869100071 915539852 750211512 805242474 316075141 352629841 325759618 342575270 129467210 380357497 783449589 888935825 804658584 939928773 635166573 899007986 595767764 710066271 244128034 941094934 832669980 880453554 683767682 922045529 905270891 911252545 132778459 178740152 687888597 971702009 41204507 319018356 502065225 615243674 387654141 886274388 123914341 738481127 593885686 814639599 702960446 920385386 152757005 656961237 671870907 877982552 810902108 842672692 51636692 244632962 476660753 667544525 21408067 512016805 952234180 987490519 672650735 755412572 342946335 519940853 293632208 526694442 362094327 851355186 993914425 996192662 572233389 938410914 984015656 996372722 962673123 983137587 813533340 817412320 964959918 982072343 595408253 777158034 7408251 340022143 345732659 407890890 853915646 962072780 109733749 998691816 415625152 417211166 642854263 733628680 586328466 625434491 615678824 895131052 36129071 247928474 870547165 933622860 369310233 713613293 549693792 854707129 401606107 488106253 442019600 980632406 909092657 946946450 445676969 834461112 508275850 742293815 378308922 655981742 63282267 881695898 549648575 786367365 758649869 977693525 28297104 549568917 541233878 634379630 629524507 870688561 186863837 892629757 354919899 683983194 700311506 720210391 55830864 851481348 566431216 841126062 823990597 907270771 387699887 534838110 398257272 683938066 804865831 879486190 969674807 999182287 412888070 865362206 884955832 971075802 459474499 871049627 161706462 265709336 780848700 980581541 602203556 803971170 488122162 620842828 260188739 333028627 289345666 918388632 471311953 876371837 477567722 677825517 979865743 982143099 213807782 644923733 258492464 651064465 440980154 915973406 282514516 456940645 657652095 937942659 949454419 993443852 797483585 960398142 952949786 996618872 267238083 528003825 284317881 534638117 159970610 943255324 871367541 951980691 982015326 996728704 377818350 848305700 618977638 924209701 370169794 868341916 318117699 400614865 257479601 967009931 888263398 945447654 891838431 941527564 3663647 502329451 616525140 971125493 809132429 967633531 599433543 933748594 868131578 880955867 554444507 718447288 645994233 650626981 177493917 402069604 155268517 437969242 661286696 823076447 602845632 929980546 979352707 985509206 561854029 735204174 352462499 585381042 204197252 768863673 718988243 911975239 101467547 582831287 541337430 857419002 403032696 493893973 282770330 468980639 723008144 891191824 265774566 350708937 62534391 980561818 359894906 787674915 562017607 939477152 425110481 980508266 250118127 536164168 335323318 821883415 796246824 911995032 414691699 595321811 160248167 649982860 917996683 959945080 198912977 588599236 402517581 415295989 202482686 546236838 959807501 975851995 893393891 942522519 583020157 830084272 726174971 843610883 201813503 254313617 750412186 899405619 860818024 975611312 269238573 815911848 47967681 245791261 77663836 500040085 198209885 551304801 229630625 522376555 262610397 269813155 608833741 804134446 779351442 944134607 301193353 486444701 458731577 474224759 659531545 950845318 698923853 992485737 565047005 943166561 943842532 970944227 20022806 813876069 526531537 575658827 902039030 950309552 397168785 476327847 428064941 576365862 159981681 860512406 553659450 959328886 464766284 791958143 810650325 973914556 456092330 854010343 69604492 371750164 227148012 539718767 927531674 980552920 648189479 795915138 313703411 846750469 700342526 909032018 597637335 653497062 201668244 447614114 100444489 566141605 168777998 387419173 151380031 635285392 434904652 888472724 461203654 785939577 157694184 737165465 343636009 483356672 407001642 636037724 674884845 736061112 197088433 366792728 117410476 703196537 186202623 982806607 876408837 936398373 347104516 735598243 661444686 975156780 803010295 852348957 450098133 924827375 751173833 838596235 391109359 795516580 794531280 807366169 143527567 986653453 122128560 819591472 120793494 913254861 891279169 959173786 235108768 664871277 33925132 512320919 622175440 740927198 216036654 219817649 949100233 957327365 388925081 655339441 437547026 799416057 644511874 823873952 286816181 635407170 584792004 636453248 41425573 983963519 638695008 708721930 779514900 946453259 850992461 995018500 891451193 971955052 358582734 743071474 508243204 531029683 710624434 785733091 75021017 563184993 739798910 977393225 958606940 974888226 757768740 772111011 777592181 941950842 31579559 675468406 356093026 360615260 197003018 486137555 316395750 559093940 642414506 841371188 168478949 998712721 818703840 988543427 465676303 900611934 806426911 847723054 752496448 924397457 92003667 474869710 358987591 469285832 809504171 895873067 693898782 867310299 163698240 936298276 523604255 985462232 625816773 641170103 814844122 989443762 370692814 491009040 386290748 953955511 171313751 742803034 30640420 414808791 161284005 719110261 774353855 851026631 899172232 928342840 419967991 660423247 768561530 857613282 566224990 781221165 853595424 872031320 389873288 427774998 761489106 846914759 844349674 917590525 631357471 973732776 87073512 183984584 905829197 997139145 869737612 995143606 487656769 604575822 22838574 312488428 964832599 984138905 389475827 833169033 267041913 389794207 820916529 878292948 486564369 779134019 44601734 72010053 4142971 121036565 385431866 420268117 291657839 547018464 8817563 943774573 852542020 968874672 466522173 902982374 651457873 888700209 234691911 433063783 301256880 749111760 867539130 902178211 53557723 989789059 393150333 710778251 720360503 731407323 721034617 874242346 24905694 42749581 72234117 156965879 281915818 626019289 358111695 742046181 997338011 998178979 155235309 618645769 536978465 743448047 731234350 903772562 776975302 862636899 568074678 672236939 801946601 932564187 951091294 993922348 469671991 847791369 286040758 470334382 906651582 912724478 18579601 723988118 351949334 507890175 203933287 920918523 82107681 235285963 975031754 992687830 371972402 890083894 572891824 656313500 839312667 889336337 295604253 464312250 46789069 90026333 972032740 998755955 27758606 854908002 829946466 889455858 379371667 774699952 770584610 790370713 424155642 746482003 971000010 988780906 5470905 169869949 227107093 855748853 282680027 338073276 518272587 676723610 181636784 742372848 739060063 938898744 718909444 838086536 787751367 896714375 735694548 937176266 813455589 850077031 416283585 538891164 143439436 745957899 983338193 986820002 514362673 517043609 523031262 916827413 379273543 461252251 957312963 975021895 314499316 697197935 18631262 703589750 801306212 910450779 707681149 948988656 977464954 994174854 466961844 490282710 279481104 421275690 949220775 983386484 32872608 516405064 346869511 990355576 807649795 921272684 977704738 990169654 767036129 940532955 273071293 574688572 805370003 980304370 747532773 784283615 719573237 849857338 858584528 967139339 813588872 904531893 5116090 440667881 474188572 810276626 953841436 954816271 330079757 844324807 88215883 461440421 77304204 562853626 660761200 670892850 538667856 825134384 265627766 736018115 265141935 711636282 829951630 983836319 459166919 981016381 411767464 946916035 89677082 627766300 820794760 902028030 236411208 359271980 125958558 934460670 943024424 978645812 676086925 888452084 225934151 920126710 311156000 876556781 824247833 915225947 683210685 765141665 898379962 936322761 83484099 634587749 450828491 854504423 59449974 328602252 722945672 843804611 611903241 817799810 277539400 481641100 906005601 929170197 199122986 233749506 607585558 764838900 879620481 959592116 423995572 686192214 917394094 954667914 883661598 895906315 521531512 634402339 767768350 987594099 199391332 417153650 958511946 992557924 473013131 976522848 589952768 915374265 630750478 668068629 152680066 169656336 67052914 887299834 15591539 664753477 200720283 743782557 259677918 531224527 596558058 597782469 632923255 844188234 713081362 767767451 166270726 274259432 923161117 926976455 128680563 525124868 308488887 377450249 979637671 999495911 424468002 512256308 587696777 638003461 850520136 938545230 431052434 638260396 253011248 912083698 666664309 916873396 94268080 494650545 721883787 907976263 461991056 568701311 156179892 783239502 607466720 671976266 693967218 966509739 891981105 995322219 684903761 798129548 457557408 668388384 533275218 651274040 869379073 912909928 742016762 771705867 691289308 897317970 931352989 935107164 335639933 651783432 157831545 275550957 488221257 548089357 132743287 651201587 798419533 927223687 508158290 635547207 957819911 967718171 510556831 615037174 339622495 941698497 845314287 970805562 255056498 774722334 984408972 995811052 896555945 924884540 252081009 606530775 902187670 948237591 231023426 742729518 757975956 819200048 894129088 927219336 580334563 908905738 317470615 815233824 347438959 575521649 83445577 972185968 794651421 928947725 286646643 828720799 120078995 242830344 145007555 305713940 79134503 836997071 594311662 602704843 238831008 914509283 840107842 949187317 79405833 375825619 21288135 676182879 844520218 979462863 409232578 703107134 893651849 972030328 37154206 345450671 699627728 811865347 691268330 852911010 922052130 939636360 393709230 722249260 471732574 536682520 314426574 692377090 215424239 926830870 497549653 860569475 674636920 803283849 136759390 943108030 940898933 960327406 6191899 396793393 413615497 461137635 398685025 674285800 133608264 836077102 383613179 432912668 115393014 948937062 883881686 967691340 917489388 944776065 807129404 924850847 628095496 861377112 525160344 889975690 296054742 563954724 406666894 609043336 206424851 403404138 906119399 963576817 536943954 649093199 422547482 963845965 710722344 793050398 600902059 828315236 499943239 813260063 432072029 974808839 937546548 969326025 728020755 847029617 596899999 977382479 286610928 794602644 103984642 944870875 360094584 442183431 944272335 968640730 864275236 969256358 255643843 455266386 684221260 708125654 718610476 854859768 226139168 273939365 536525143 573969298 236147990 506512311 938459839 967847126 699017841 944814247 993903762 999802288 765503650 939132676 583212200 809372836 651951164 849719895 5037787 381012325 760557904 957704951 652371455 786047896 878649036 991915038 764457682 846724459 70860231 566019388 126369692 168728596 701607100 986972622 228654130 872564639 739313914 880735192 966194892 987288856 611233442 811708747 268051268 854688103 4363134 826736926 24454241 847032875 347414769 449587814 27415165 648876646 417925207 611701485 189977973 450375961 641430297 823675621 666836069 830597845 295348230 603793717 461198402 841992894 678107026 736494723 477267021 717974761 478042667 929611329 671930627 744407027 563040545 923655380 677954916 845759827 416078349 553007788 395630452 902093082 485873661 868188052 675205228 770992843 976619482 987696264 612723469 762099454 71707103 718418720 748734719 932561699 579613072 616760033 456709771 962803498 330940722 506099358 586899252 876305829 808542754 927363780 300601103 815756414 370061460 505932982 858765281 969035427 623347351 861805228 260480071 696038277 811364638 854166126 184643576 382624987 460595550 734326704 720235562 820571464 681861032 982268330 608161708 626215916 171575865 284933631 680855597 689456432 398961540 573548844 834559232 994752338 392403967 522234109 469557368 580172609 449471869 495720929 186981857 484431153 236016956 936597550 52645162 540855113 153383260 691272508 964840452 968205566 40709863 323162505 910964851 921046892 491477109 573641397 900213750 987472330 302863670 469699824 753604425 929757924 184413516 588729354 448591589 816632236 366605636 887029021 558421825 713178232 842600232 937345303 319701047 496265365 586742507 791834056 275845633 893761442 265419135 944655014 250929564 732944650 92614633 912357143 819588691 985136317 146812871 999223234 468173933 951790555 483620401 766357969 65145611 850059532 229194182 273741047 911293351 990502880 899437952 932978072 553778110 724701381 278074987 513232553 692753455 781708512 175130901 776429141 564947123 765086386 496493469 965582305 41393913 439108017 592507455 701092527 116045303 159699602 930477359 945591078 626195187 957743459 458856907 571577457 5625869 179940459 826406381 991231681 254934076 338989743 138989475 860805474 230621358 680850992 687487319 752054105 863992000 873029481 603313224 874706043 726033334 806854271 978291280 979196092 348010164 845091558 426294301 445915970 726993940 999408617 493680811 692634267 449641803 463847555 680667582 912862858 971018158 994513099 107338057 267545991 659082394 822565357 359207150 704925946 503078243 517084517 78046350 456747466 564797825 656359312 881181633 982518766 650079603 860886779 390900630 419962176 570395704 695938706 689797870 973994231 32661967 312269195 637734835 822255013 441525143 738061399 340173637 463986983 39888301 858546708 394971034 758760342 298687268 585511821 181722065 567628500 572351452 945106284 142123877 624834362 739679345 954289941 564293042 912479179 45982469 694890766 209201863 858420088 879691845 997086003 242780201 292098449 451089933 479216250 460845767 724815659 60738357 693909583 429381528 523346656 141833092 277575988 569532297 949257381 640865044 823873180 953970277 958178145 588167959 820164199 882919185 938368602 283153044 816277604 505960914 727725176 230023789 911564477 597224093 995492163 887800383 893351595 933720085 998651626 263901764 823377592 446483511 952709925 857073015 964945842 213990284 252871793 840744423 992797042 122265132 710615064 579786567 590262319 28048266 199293195 877224513 978103547 121228019 887640173 534269383 679745224 144717995 854691705 699668855 722028821 408960371 978150389 266698726 621312632 897246339 920252872 183220310 664905872 929554986 993427198 474955404 976413009 983495602 991588894 848799648 860097228 205681870 906630581 537502457 684650578 416835454 841038418 28146754 639609253 858599531 914324190 215868217 292062786 708246150 736041922 439611281 906682547 330119602 551527788 902354258 977952667 108756950 450379949 653215849 720858271 145284712 661242091 337023446 853095017 422499885 734009263 677319096 783696443 73668557 652371567 289168866 443201607 46966295 608242485 762167144 932976766 243988214 693438551 321587917 922765138 878943398 928284377 201397933 297286185 743930179 855062717 956706489 961400737 918791045 933339051 80943896 985194193 721523062 990477380 31873260 896132310 702543898 802967121 790744812 962123142 536172487 692318584 267376859 356659338 887268720 980519882 725088069 746460602 516057494 974786667 109556592 154484144 472275918 543767769 890148657 969549885 239662675 381400688 895976189 954941829 312969794 813686741 648687002 976447949 733643690 812729580 684244964 778294034 526187351 804051014 203752516 720494728 625728788 728747000 10327407 343672004 992216425 998994286 980956770 988539083 412621139 948208616 536028178 685415563 47451102 666818220 185333892 766027064 196696692 202076298 453722746 881158929 609433278 893041658 862886468 970132094 323097148 484921992 72607713 898896777 220395754 484048024 261287296 531779139 713213110 888174157 247403331 748499605 717935048 864882057 735045207 736577228 851162388 943282867 357661623 607417767 964622887 970747375 313677832 411126654 802484720 885426018 193062245 448478983 913170853 968695471 155090978 824217647 196919384 277455190 453926008 899013035 754491819 875132447 762779459 852748568 380452136 561364078 34374909 232004676 562563889 607589226 837966905 938217668 824551111 943916597 56517003 676760949 581333680 585314506 168577270 386318646 332848962 429652637 15933189 306182446 550537486 643579279 947215448 947479722 202104433 763866481 262645675 483773202 632619060 813788146 599592199 997236448 170502278 306467816 302156027 392728153 127816124 844153527 427786142 500082371 357371399 918765560 817135084 821833787 957554966 979157331 411408297 877798625 158831887 215021112 190154678 214079458 573040276 632070962 75546614 804605381 215640869 657250680 163942425 918767379 893458417 930146406 872268222 928822853 901122612 915588786 562399292 837427533 853229925 980582022 708566188 720821029 518081801 776061488 465337557 679090746 556718461 940206651 612954069 856801394 984250695 995524441 384649614 968109926 793870779 882442688 399386374 610996678 807151230 876419881 409139624 529487390 358286356 652483677 584809934 874718545 894401154 997547773 15809060 504122409 585205416 636147507 222581427 651904219 147205067 827552676 24894027 191002261 388984111 680508187 612771788 635825798 331317699 677698228 443169616 855974607 54520925 632822261 115124995 844636419 489010114 850779187 276511635 620687950 404439483 518341348 462369030 526417043 318962812 773525222 183094842 250972760 315665726 907737642 981885590 998137967 319418714 506883141 59711381 706625746 56677164 155703247 680340745 912361515 692805202 712496334 728661631 940601249 549496742 721081646 283093052 890978321 260051817 265984090 601231378 837805561 122463520 982550269 425320547 950277627 204494149 405852508 764028166 806652003 657815749 751477819 306389142 348127855 790340104 872959581 801910260 868964183 4056218 482951901 430324014 445969577 212907908 482087126 334961453 592044179 111702220 813561245 943003875 948313348 514880331 813896149 151891079 835270821 854710699 867401010 892788122 920997206 107708459 111036031 193784642 601441685 42482898 746673000 532376658 981263240 906686596 914659875 989033333 994027707 556051241 845154726 689220322 826184064 124009506 700721076 351527713 416587107 919106285 966535087 404064259 599985077 257908865 324245655 798962648 820396782 59117475 775975395 718291931 953788926 943276925 967449557 500848349 572423783 264129976 531432003 846109380 903678923 80701537 124155118 714654348 891839240 515341002 938967183 510995368 601593316 540758148 989735605 543775765 972144779 111355592 995737682 159212644 853970406 856640405 995079987 93007835 971821246 611996436 853048972 203808442 662132827 481592754 815916425 217292051 566401965 372232647 515063923 3555164 373097247 785236823 878535544 413404877 978202649 641312163 688102453 841175127 994680207 877728510 880163922 81633586 699630159 17719673 740261721 507740617 879246855 462543005 951518003 860203451 923435896 34807459 47617571 346569160 846430793 881674400 948125389 212201496 642610043 767167073 955817019 782169143 859238385 990639353 996640028 176644070 764560366 3365598 951535238 603070623 857437756 987799554 989593856 110818298 118521811 658520156 931514320 46063729 949713374 345171748 619510602 440678040 613002257 281717582 637277821 63256099 493851450 468604642 612677672 670953910 708676760 420436458 895324654 908612748 936666907 550674725 869792102 946023937 987426582 62054303 933770778 723179553 757360723 232138437 588452757 105181832 888855053 586401209 978729894 580440619 855353766 276911599 369325890 597929103 957664152 504112447 975811113 9102411 736633598 145012671 936927068 209449609 518077557 47492227 676594816 326844812 717419391 24628835 761234088 991436940 996492359 128147563 608967057 47679930 241411282 260630048 731071568 863848538 972615474 459678035 562441936 565674928 702115858 319687894 376202876 597691894 992373101 288251600 828205848 806860579 936981192 84153299 940408253 861827554 964016803 990479134 997185157 680660162 793188484 30191199 969990532 613142671 889552602 977146582 999393296 585413061 729094937 331070990 918396384 541291464 837967822 527357709 722656054 156245040 834196634 307937109 361984390 798444072 862845446 121069712 752284475 506015861 543527385 750781659 976364590 299436734 882439098 299460582 794378646 949900975 990105982 549382820 906952616 737990390 882161046 523613651 680969502 95872013 431797306 236396685 982809351 561354740 716111454 218623088 296611108 961847423 997341634 283445636 319207266 703897746 923816648 229423388 852541305 977897522 998649840 682308777 723027136 493793748 967317143 973855600 985764495 744582445 775242574 544780464 936207687 17350564 22899284 526725963 743070035 51128486 153608461 578293613 806182099 285682899 664379202 767772302 787999285 298333017 971603290 100504417 889766121 422307982 721230221 711519580 862996601 40874094 657036295 861905888 899074906 81975360 900857707 994234694 996585536 297364614 862647984 612149809 837472921 636363135 896312513 531678854 909575596 215745212 714780643 735565433 806574162 730145771 784419226 635877347 675640267 628965816 976625778 544176498 741776702 297433902 603007321 232039143 809404709 476044886 708712361 669766395 728346905 951730569 986576151 190826957 575139394 322507549 619318493 899740249 973089758 738059905 935542156 265246086 478241718 733519227 752428139 494361345 827058287 338418716 528566507 636843869 925064171 927608431 987601090 875348949 959121681 545468328 859851692 975342173 995091420 900421771 944531548 887254518 906879044 125953693 554261042 838099106 899297023 861309481 901198794 797723440 803855594 405067967 582212039 535336545 764549522 663819693 891880102 372143027 639267999 285827762 756610434 946837056 985043638 106812676 647129892 537545299 577945588 178677960 989674478 798450781 878818705 768109506 823456956 189514505 950873132 800917631 988882004 318625557 811281759 67622376 678841348 748450458 750834539 731928149 984944851 725092817 819797328 638784110 825046970 529738704 940613669 412958872 492641866 676381004 906937891 258562007 621179348 634834444 985255230 639511094 800378005 975845427 993803100 9201537 616074865 252743782 366295738 207352681 764444431 203629641 804683993 17086207 111056029 442888682 823431096 462013494 984620908 115697937 117107023 997092601 999475958 103891137 840339724 744394424 977377462 48148217 799876755 921569322 961266745 502863081 628661008 200442265 694222078 635732937 940938147 409575394 544159381 85707031 576376412 976477408 992395458 173849239 263034287 724757683 979875914 707470461 898729613 47610878 696143944 746963262 963703374 348964569 439427248 52365264 361577077 697860399 708402629 441355872 863961486 379315636 928377308 771286845 866656660 736163201 920764664 135049587 966554063 803754812 929544654 683496400 902134096 811106861 916035031 639083407 667933617 649569697 791864870 30317040 425304334 929657410 977201455 678968857 790389797 494881654 795538517 447259728 813521686 686296090 699465875 239236730 856566465 242241129 563142813 946898452 959273043 990551942 998342286 928961596 971632437 805632709 942293503 915962791 997710698 341018197 778093356 160327249 559597357 64172242 967498869 149387608 531435671 100698867 445726510 117971673 703514487 900936559 998346499 127192646 649528811 997888653 998765153 256584307 760221634 553079146 970289381 35462313 985632144 958521847 987049760 818848683 826221406 884707806 959646332 324527245 688554142 780420129 804942755 600125378 680115729 147265585 474353776 708338852 890573671 776518546 819074193 876031556 997679148 868057472 983625887 423216612 724251715 594687443 837825327 804154663 963762948 378514268 618934524 466604431 483456226 883821286 908067472 169267384 203799550 489806064 658494493 210166845 596650948 421573126 671746844 610669270 640122649 218834180 589020823 899573511 906495611 37545592 417581942 743806589 961309292 289637461 905237494 716742309 869574178 911995357 935371424 252871294 741557882 437250671 803430968 496005087 555215837 270875839 948460080 597509583 805132566 619036309 647623501 134926643 399896324 306946630 712072133 443286937 961433859 394940383 480276352 114499552 138983559 599279657 804299508 352310847 988866050 154344822 569234079 647487658 689009603 113333066 777083101 859560054 904787700 521492810 841356125 697247288 762527894 241755700 739695439 245942321 867457519 369999002 438528845 249141196 553945206 79625663 560130943 224893889 704080395 727711520 959800326 960486353 977520192 29577091 156211619 90060118 722046374 910897334 979231047 233005182 805152913 605676660 680849349 981928104 984544221 160771232 258394796 690342721 888105875 654310934 999418310 435298019 538248841 11108438 95626797 464410786 555737830 605237814 683800195 425087514 459678650 592756319 679578166 885168662 940943530 829038400 839274613 931042877 991271916 794036684 986677429 993785979 997863681 840852955 929315919 132674562 330236015 359277490 875817455 674506077 838487341 125115713 639718742 467155500 643459724 660088299 955701677 176542719 309113959 198146414 382620192 898146728 986911369 971399511 988531838 448440368 686220292 886946240 946899130 317583002 944724250 229104795 799943721 97865568 637330565 200516366 851401605 524527688 669707972 174995247 593909370 444976549 780107924 835863845 909430862 132033345 397045844 197936321 631590167 490992204 818279135 144323223 784805903 248278941 854435264 425210297 546883426 514027431 906819972 105562480 954241507 267198046 726387264 132176284 179289055 928685739 990130858 384756818 998356713 169778197 580033176 706202439 809329325 107390022 503481478 373543310 376214486 343667622 762255949 237024666 795480684 151394317 423112381 285833207 696822028 663390862 836871154 40978604 245725542 321821841 600579425 342335038 880045142 843923463 894000257 64118598 452679271 595024619 675355099 392396422 596796117 447588625 658099482 544244032 955359371 796994425 906812745 565633047 646200329 790020075 948038185 614578857 913535618 531287195 736904324 987307483 990767248 860688357 880232448 930317999 951699547 850857596 971055810 881976426 951214575 414055141 810532154 461696323 904400949 946823429 947072254 795297072 952318104 229174468 783104196 310540721 561269691 811047534 915281540 8780513 855217034 992430329 999544062 32063202 474143843 455409020 986498042 303594871 789075759 535090352 556619595 370270550 507541486 84411276 732756162 280090168 851367138 809179264 869780720 632937177 682147462 736000587 985781334 786821387 884114319 286075841 681593316 775996450 918894283 423636686 858149555 62289855 919215363 551848797 718417397 952149703 984696246 979116271 980148267 101958013 449600641 173759001 258611448 883732102 969284102 408706180 974123862 311550371 990380908 538979799 785228289 446244066 941270734 307525569 884373224 596890273 649819742 128457876 387070519 456790805 514120017 471716953 697804465 273897353 623738040 786237489 880857341 833556215 916470570 5173768 545601661 677020920 727792497 933877277 994511014 807273462 925616130 609453339 854130908 705762134 946401118 821342900 942970208 450154294 768873903 53463204 641698128 678595305 880627549 462722748 643081595 208142209 382843785 349585732 693075846 161975793 546798908 429643711 871216906 306216864 604564695 203127756 589754529 674420161 994614147 477737424 791607870 360402326 690393148 936597103 937678152 975418393 984246765 616825474 736718549 560210501 963248876 613367982 720750737 646935386 649120502 128917096 530923595 26603711 630640951 178198622 219281004 78499317 476577102 984385310 993448598 918775066 965686743 883865124 901776946 546957720 693837279 371607742 660517013 749451015 826830786 401463811 513153038 947437820 950011956 521812313 737871594 829261626 920025694 23499070 409148814 994425504 995092554 822033909 998203898 346705144 866294328 990444347 994652986 400417741 593012151 588675549 595846447 385144906 450392600 700429653 855723316 871596932 921490019 451821864 942050594 945009558 992756199 8481663 850352719 519450535 937320120 98018124 608148420 779862009 797731802 346307114 939700904 801555428 981714639 711499286 793362032 618921420 910533515 813508551 839507765 830337027 970261328 84699740 605838020 786454179 875474418 577060455 929072962 626239756 995827093 65015086 217279636 977504304 981007979 511588044 582129571 413299345 701114865 698141703 823460836 889749948 981463593 81812416 232618344 44836800 509916321 579215732 784378836 322842057 477002281 485539472 854109360 443163012 921081334 211773462 466607211 884181722 982561289 201024155 495373159 741553163 960196109 297183779 532145822 234701887 455812782 880958415 922074763 241432944 749770648 289038559 672769459 106044202 750734632 384601438 775711237 625696778 896765880 937048763 996721185 775288547 909358848 554213616 801561679 170711931 806902727 205601683 502556590 712471494 902655258 903774852 999157812 146457245 151474057 267895478 708802919 469364817 968952595 844592663 980105367 62842142 993787265 745873178 963966844 218530827 734679305 281718710 322236774 925168543 984362267 516249017 849971206 902831801 986182937 261471789 273246275 628354320 995945516 638663476 642393442 837444803 986340949 704592144 721094873 46424128 358804529 467849187 586482463 666381980 767782590 292602328 799688671 529329861 847446151 715794482 804280585 320979448 811811683 515153401 806904500 70993168 679251018 370401492 734458111 255242002 530586420 666227200 720158976 900789273 980658733 424147100 681208328 532142587 683217792 585624019 633288469 329937816 685135703 939403192 995829003 387525269 534013931 675946415 921752138 752282074 753358698 145938300 455265030 505464782 719370567 927288684 984702408 110236206 572325458 359917853 999590918 950387637 958059356 834845254 847814753 698091528 795268837 960178012 979045819 901053920 932503817 410458689 761681239 84022244 169875666 93168106 847883121 12805558 593512020 316382781 438343226 816355779 876395449 810745371 846456945 255096306 312107642 701398887 780157703 455798187 775706429 252406665 317960639 175101622 820224666 233527397 962240450 481347881 848318611 979681899 986602836 366310431 388630507 302299588 481163867 933579450 983224987 387111356 443550229 53095445 585781816 318793686 454167416 735806765 928017630 541100218 758399304 820270474 838856956 8359516 869823667 674995850 693012381 992790826 993285575 967360441 989461328 324386946 791754233 577019078 940665295 620619732 766061421 871665161 946305874 131630170 694067687 257560098 602936401 387927787 453003811 649947639 998801771 43852316 348093865 407146478 420451565 585030790 636032228 388421727 534159183 78248007 100315506 481496361 600430609 892219136 911309696 840481094 883596934 83624443 296290370 387624782 503242821 384189448 883524190 175057698 511422004 810636822 928634130 651243965 914272190 230242739 333712600 676328816 924745740 815321728 819102724 959115803 992338180 86676265 906272704 717109460 983134524 720408715 760465073 681652335 682107584 468037877 471854132 92233364 869952755 73146934 135280561 720183809 892604003 665697511 746449748 43690874 63354183 674418743 942076030 632589750 735275063 861183935 879866305 926774949 947436564 347336701 902331248 472712501 634869164 769818221 862754818 10941151 50362004 171492766 444238375 988105799 993873882 275387050 639082829 468899321 784540706 699111538 848609998 827676373 944287163 102117835 575572374 822922408 976412822 35137878 990452747 906088617 954139731 828681381 975514361 148142331 209095924 176502602 369664551 83543995 236564972 77523731 227137421 968470485 968570814 944519326 957225939 831910479 860017853 955348806 964082701 894476237 943963978 972173986 976843661 433805147 837303187 150519094 299209122 569100909 923106756 340217109 543120141 931750010 991172127 344518591 360553811 284646984 925147742 886258418 972276556 544636350 740993728 122521568 320938420 39429958 513587650 209192289 733566495 566249969 862022602 116862816 858506090 670032754 916213164 489770299 831994891 273597724 872606470 245424024 969026567 247712233 382064538 374383540 529926189 931153484 957020086 398437391 957241284 688221336 698437321 542790399 630256757 70505947 564111697 942976792 977765077 408193620 635669083 196333105 360229275 347029411 936805804 99569678 591464342 744874811 872195305 788827258 935804675 890882378 963023497 327920606 444803475 373686828 469033462 175172715 966285958 264821710 424716212 679671308 777742486 502446267 600959411 99217873 717017119 669642843 761283940 556144711 850700705 634355823 870902844 398201251 572582838 577319066 640447179 353096414 753547412 531914108 755681584 887712395 986104070 750229435 852665340 970133350 993120837 875612933 944456545 925435096 961753515 845135690 890893688 469364573 615308763 941219220 970951092 820036391 948736464 217027714 476680664 345018435 674716946 917293398 980023552 295622851 530274042 230418207 925211757 575641448 646645734 517881103 928047111 12529298 479248302 807744560 816918409 505826156 800427841 694018661 960583428 386733280 807270816 412360482 434517635 634933520 743414186 733451911 742556541 512235781 904855211 933051050 958358499 670217349 776998312 178603003 789608048 841644662 981361382 789983018 940480006 693804701 709412989 389609208 742809199 53369162 382519661 788415511 844226022 296941295 621687811 896407097 973554756 525487417 788699944 585760331 810949690 531570039 544402989 124199646 745836197 39327320 73231755 37315421 333619869 293847417 347917208 532886213 737251975 464595757 972587827 484566621 644760941 396206532 684598723 279409128 722085534 358835833 613763084 308599573 781574050 543026765 908312931 280054483 846356162 903940926 979700604 345016218 716199558 780390200 984491215 311077169 456795895 495425741 946527177 915016429 965238979 477715620 755239373 826404423 929491836 439696210 449184050 856770386 987868562 599168546 710661231 744659432 833400072 723605962 798279214 535328888 690807863 254520460 731169476 57007049 309327407 64608490 656792040 811823053 873623551 22679030 935016886 168306276 620973514 342494034 944275230 929899265 963980296 643676462 997400050 159761132 753641450 530590638 617602329 903436447 931451341 293297324 692706649 918671553 960308472 2877890 63734651 823209061 967771007 7881021 432668781 736590195 761909686 962683664 972058228 168262062 669660532 874982898 904990803 935588143 992605408 47100393 834007272 107890528 663977024 625374455 663627141 808134110 842911058 434067396 774739973 153409794 350616660 311798581 686770261 575516419 950378125 620743281 877221037 850959500 956797773 292928514 757168995 335388107 730396011 696675480 998234273 650955127 686439843 152625437 751586504 338383912 353737413 255720063 936529091 463673998 725910066 93086304 784909009 243241472 716432896 438357028 587011805 65759638 949954458 827782367 849918577 150100538 939984885 793269699 889281677 227023301 581315096 236431258 941150373 977927864 993444188 285117376 624824222 252549186 993716724 161598367 168042772 53568144 226435055 726501710 976220677 829377910 962922879 164890913 218519741 269219015 595607115 728208990 865294386 796506061 958740023 364308739 622091089 602892924 997372047 866513004 969546722 943796965 961824824 540959726 959345300 486427331 594019259 326508645 602110890 710200042 869085401 380841255 976465099 978717620 981364253 661429579 879219183 172867619 928482060 955592113 999919749 458018004 838142547 203449263 361759241 301610388 711501666 579749029 834559413 416895860 748261119 848535975 963962916 704714004 862370497 699551940 722246052 157973211 511682754 926103759 992765489 116105120 698028388 732108666 985976941 781708685 864791765 407867706 424248400 391783298 737819982 915889107 987615061 346032932 573899041 364723318 699007712 272899442 310113493 604370865 803059879 48396191 235892241 39769994 333518842 883084586 954849554 110755928 370405210 65406493 938670942 665298303 950761392 724325484 954779358 92715167 686920072 752334511 808442807 375341198 632402405 720885164 981551769 682999106 762291501 513771884 700552113 654938103 895732147 880140650 957505016 754738139 785138525 364321263 507238149 754012152 980044322 46252830 463779206 470552292 669840849 532120341 953124774 832198431 832560549 702253875 784666080 61309552 230356297 535020885 667582702 499087703 529552627 996783844 998459178 756417489 815442718 982159624 997543024 532961721 803414183 304100236 475633967 441378719 621011768 193258936 210043153 329574192 837870886 254751343 396555785 316831548 819464158 874405601 943802600 114545659 898794403 979556540 982551071 582234025 690048396 657991345 886645189 312916990 994128905 974897616 989268018 300385 655131972 858129338 894549587 835080173 889210770 493922942 575058344 697886513 745047437 113835395 673502138 59196933 960620558 804856091 954845547 400391152 471084214 821067868 826464105 344479436 459828620 99602520 275282278 219538006 316135838 877432801 917577095 582036727 953425411 841353359 972981068 826926178 970870887 110809416 864686520 746618413 834594188 721243160 954148079 142433446 900282542 512782001 600784442 726746558 744250238 586983522 970004648 461283261 945230614 398722923 888753488 424134161 512706402 83861907 936446267 971499415 987849539 560922658 868937483 198467536 714215870 53026446 312642868 983584274 997463308 309237165 357900691 485837629 597618637 852643165 860747012 451856103 497156006 714924026 916674145 503694540 918059103 771146749 924299619 371981239 843874873 903069313 977026666 477300787 649715379 940101922 962491138 242768619 699201027 357138457 485613844 652204285 809887900 451792630 705162182 808077323 874717321 407092413 562044751 608410354 944663137 607763684 884372920 397778025 550929695 692401486 709232209 36518581 794276737 61826679 896466532 366516369 821257356 319959572 615341529 9152299 838736942 709616517 937077645 283516708 988683830 569890538 723414233 997124826 998020110 751156006 896352033 103436277 294252336 325080540 598830240 384929383 497829885 367850490 878035699 608343463 663067955 269733123 337788959 579930424 619456816 30844066 562987861 721254915 928795629 867249587 918007335 919059108 979946356 622872306 832670287 332279253 988067411 705699586 793061553 45819038 252106682 48306558 177792924 789757857 988560003 497881702 906137478 119235780 885936530 54497602 228835000 642656190 830289360 972917735 976870985 351454290 878915624 59626914 606814406 747069501 796630604 528435337 844636663 915966755 972791154 90835700 228743308 475223872 978979085 14703634 221023370 621733677 946678742 815325806 869272307 146900855 576062812 135646414 222317906 885513116 911048126 56203997 589073188 942756626 989027221 371231182 986457470 749482907 953860322 471865263 842679596 283352778 554588746 965354649 987814380 885622183 976481881 459632856 537511867 426568241 883624770 778245434 897627657 795231342 815422446 694089568 946720098 732799647 738154939 78325278 899419277 536892895 977518205 128291700 389348496 900654436 951985975 57343169 113027859 523140383 958062715 238681730 701475161 88446522 396173506 912411225 979087632 904489181 934070671 655118030 895976740 187398319 398245818 594633749 999987967 113114341 379849515 184201383 535663784 939870361 962153363 41057169 259330320 135614345 406285935 819947005 977962127 713548669 987386750 458135429 824439082 494146746 588279364 831621156 930993986 182383005 578312535 634899306 999588608 974315647 994801062 550575527 649453378 669238020 992312195 389249886 571682182 186545272 967055791 172232830 282690674 641594276 662101846 970644635 990520867 817884011 930320775 351754419 717183454 906490362 960024335 257760638 800450425 77808546 108637672 264188039 719013015 473141089 693766987 894295318 911211205 479907018 729669896 346760437 915330589 677756170 994754423 70437500 485270125 910870790 916206872 202413159 367946540 58220549 233104521 440011653 753005308 607746018 829559442 535707919 758268417 410583924 549210145 25486027 587534540 256571212 257463370 742775213 956702490 741324101 935668511 144445170 411625977 755609955 851909483 787311998 849394843 85391066 385436741 970457856 988804978 193198969 640461961 414277007 598004264 988108355 998573469 367329014 927225012 600267678 956548226 687703985 720889287 396034903 761585352 612880922 838289994 515752080 792497037 339574690 930919432 742661694 867741388 953707401 965393812 587847646 634467967 350305644 565690403 974537617 994688476 999852534 999931261 466708462 972742066 89788203 533263481 368330845 837389153 817841814 877946143 475748788 477535279 915253703 965731043 620096697 746764514 26473763 394306548 110444042 807684434 869303332 935241501 628260991 987522539 283066627 721643223 220915354 693300991 837000188 893896471 243729307 708148546 805423697 936574863 184625050 515104952 323606745 890974456 162630041 499194585 630133521 871759252 486424931 966221117 451830574 831762553 458974488 752866825 953100674 966065631 851102670 975823782 525404176 991764139 147579195 240960274 310507193 940490718 435526735 450079877 197095950 656214234 934753047 974124978 278124097 847166512 638777356 857533636 980834084 989227311 338414936 904668982 882818855 966563162 528213019 681580427 467862758 844788126 480076431 964789235 34058232 892505472 749648664 906006255 223702996 692683571 608856661 900499696 384962062 830088148 857308336 958227577 79172414 100686336 921379645 993199275 860521527 944867555 544855107 673967512 809240263 816418484 36079070 402408787 97906843 753797025 437803639 576096671 623108925 728352896 556170628 790003976 202941411 631230340 720553608 925521508 524118003 714636586 684418789 860587073 698464325 847126891 268107188 640791831 238686746 631250482 875628823 926199652 446850090 497361074 49341252 477560148 577064339 934963727 571517579 889443479 679560418 996311518 852835264 998281185 786741158 929808498 711280036 869969546 904234291 956849491 771627041 902898483 168528259 840094206 680949347 707911685 313266929 844254252 255102528 748580554 356979037 559948367 855181358 901460039 715730910 720010673 208030627 805288019 741133339 887471336 722323968 892136204 340567765 430346878 813125653 960314454 364206482 606181194 271256181 792410592 756679510 796451841 140045660 891458093 76190901 94777679 649762583 730370869 859390220 984703428 25462867 132545674 644558551 729887106 297312777 840622068 547476629 647966884 566008977 859333815 226379744 737257609 23155337 656414789 471101415 600689466 535740434 951213416 435846793 483936479 376109907 688921227 604074662 733562485 750077675 763040089 824054030 974446733 959168472 978872194 272816873 388897448 796417352 853697713 868546119 963986812 719359796 766446117 52932525 723662134 452011666 952350416 82865529 604201486 251482780 531675449 933983384 971985068 601165845 876523094 441984152 803170969 721339683 732970942 505764474 907974095 152963985 904965835 624778585 777015398 455752264 534879502 53334423 119551683 656010783 775422167 538334199 755542731 344359710 510346792 727456925 762382877 637004176 807904628 907368383 921560485 919990599 992110010 642484201 863170503 516761640 550115423 716369315 863535445 766928171 900402750 424016675 662526075 122519748 728160767 563026808 762865148 556053987 863983955 671752731 940980463 774137347 787399960 295826872 719775943 841662183 917362684 156435467 167742785 817803377 839771216 589087785 711200170 785518717 828648222 256714531 597755685 951438470 991496798 55761663 598887136 361245439 880855569 838552021 915501456 549789038 747191309 511910099 922195176 479500602 804765270 960756782 968753489 652101379 849702153 363098206 573583388 724804647 744333195 223957093 936140827 840466879 891048581 581551262 631014772 214043458 598932625 570758988 640519169 489557060 928668258 803742277 980397370 405942404 742916628 152034558 276546187 712602440 857833934 680585536 792898534 862563510 983270747 695604967 745627051 747750708 864126083 720167161 798490333 359126766 450933555 395624903 973917977 228483295 938624916 793270257 793718992 415184849 943484307 309886331 976970283 117071710 915831802 240997502 850966951 591250031 628494256 357483844 670451070 228014412 977309114 450358560 886290444 946765406 990633196 490554647 727757024 55206687 140755737 597413875 950090998 574597968 742138120 573115005 610859055 386559715 674438733 402155972 870812205 779297509 985727078 319543703 685049069 554902372 954700793 360979826 446655318 313245452 436059667 761194498 983909429 357169215 633252368 852109288 969897695 970925335 976784087 147987522 347785572 703320182 777869972 268094360 830368563 631541248 738526035 537093086 882586937 25800211 490882994 489200270 954452214 157632155 729031521 230414032 659767342 458944241 790608542 909958847 968320135 819025787 967123238 140070333 744643818 261609829 525242096 390642228 904360780 310199514 420063410 241805309 438748001 556117506 760531049 774177724 993768694 661524481 952131789 727197356 764085087 800691658 835671085 226368076 604920775 826960469 875747829 452259495 595632806 297542348 470859406 467114398 553759431 857555108 915460281 914309582 940834974 933321051 944008552 35270290 235285452 402820081 517941856 531664515 736867191 328436341 480894076 987179078 997602078 780041246 938872664 70675052 354894970 893452905 953364479 799470634 849380483 661363118 862072129 323561366 505994668 523076812 779464281 200946352 903896933 117324612 940176441 147268582 775368395 366468869 480197454 205909698 522430443 912992064 961380156 328699994 978940862 349773781 379068170 511141527 518520931 911630381 942675256 691470322 763043255 145706218 848078419 240104055 956292082 996836265 998738303 361111932 393764266 844188289 984949866 407747318 676831412 941706542 980391986 12028715 746416969 786466055 874098639 891077736 999887738 687028927 995178607 539132122 606561148 341770698 831410579 305155252 400381599 346043254 795682031 419383398 524992306 810415459 946809460 75195598 916355857 880368812 919106812 604233733 632393915 423171447 645653994 379192947 479317245 733203835 778171122 93018520 152230753 609031841 810906182 749041906 764953288 768941990 929321734 695612399 696476716 105903672 693738487 897143044 937830279 944875068 985063714 372084446 901378249 718090417 792065473 880834581 937079741 49137112 829320706 416340336 557821317 875255482 969446458 788058854 871577921 87887142 867047182 623064442 669864111 566713697 750036364 446593887 454069619 220433322 504172970 717809240 788841361 536852322 958877144 912401211 930524561 71805770 907890236 232304071 334218450 679615032 833115054 951700811 956706174 724577534 956704499 5988868 588364669 331030503 674314092 182785871 339900568 982498594 996799397 139721663 262349546 172124152 216510204 210373872 462945054 465002629 550679876 121904556 531977600 452610341 639535397 913108591 977171366 387805981 595810193 756036270 961587417 645516792 849145415 318695708 594585159 130847719 623371039 149724857 976870441 670975555 917783784 340858552 959727382 615170301 779776526 824107762 939688593 885469901 958239963 643083865 680677182 927751359 979977627 448047889 485633577 898036572 911142918 310573856 998934201 133148458 635180626 939218943 980251172 610991948 702443012 888032645 896795838 28352830 103155577 256566156 831017178 785239178 872951117 387264153 543384775 374699181 981036770 297891269 975067323 269427900 498243216 835505066 869036855 257881089 524088767 629123450 949346505 33643900 640975039 611463792 858764720 161368644 898009414 667304826 808840984 857329791 913987123 481252859 583431361 992611725 993962477 588003321 847035453 201011704 694978359 442262473 588405640 513005896 643408242 203270816 726444052 616830352 854628916 750272246 893469501 32563239 680457653 334098372 503948743 695611870 932778031 139935225 451018792 527729056 754290569 910855428 944508178 543962630 853909255 418287779 527019043 47696285 681516762 437388414 532019584 965848611 978872452 144244696 828859594 789013844 821734208 524297948 947994154 755951922 976286998 362958831 838917680 872733201 884901689 241839386 652724023 330225575 839583013 300142510 420852824 346772491 437544790 459607256 598143762 922496887 992969408 65572072 191992551 943966467 997798269 236273829 730910167 846453526 903833504 922297408 962980261 264478031 701184534 16153462 62601187 640798336 896197922 308844626 736594400 455587601 787254058 887647898 933057769 126751426 526240629 87051039 237201272 862389696 950274008 433034012 747770261 346853626 636060043 927587204 979391955 595507650 985248796 995211563 997154402 699594261 833453466 143881623 938076457 930541946 946174684 308385195 939440222 248857003 710000032 514371757 623919828 27264953 612159170 147647078 750459094 279674237 681105422 388088405 984389828 463493372 874424883 605716016 838950289 229158141 251887431 505264697 602187029 470580142 964246845 212750412 764964676 345334563 678152247 618652709 899026991 857478165 970443751 325112906 601353272 1837589 515263352 859445737 911926501 180276280 807292186 654189145 785526875 945452489 997317570 893330691 990075275 334382232 371638388 645657232 977104210 766010629 952097988 171740512 258831138 283482337 411071998 961384520 996230717 689252017 850268708 455905238 679215813 739079354 793967785 89134409 530157871 929106566 941802208 370842484 686566032 946194791 955105194 142872204 814420519 693551601 712055570 999760441 999903545 556500749 599859835 695521890 754336052 627313665 788366444 473010771 762810727 266946120 320843392 893891599 921229777 729043789 878418222 646572853 752500285 483202440 951588356 629048673 810358826 425909626 832863473 514703259 529370231 496730439 756817691 88051969 902056542 316696201 976466000 950431014 962492983 95202412 261489708 527877178 619525657 337950958 487180974 696383796 725823106 388066571 701068139 301153838 618497878 167673399 331868232 244608091 474428769 758312365 949413770 184819398 572460566 801466714 953983568 963653419 992936989 172218907 318397473 136220912 172310428 577846822 817839235 749589325 844723622 609173843 627403452 613545444 726177395 493123515 999965338 328557266 723269076 132668550 919649512 925585914 988706963 735836483 970563986 678225722 838004011 279709550 378264849 29041017 564650491 541608670 763515942 887083241 972997759 34724736 836456150 257067949 617372529 505861222 629892526 757637820 938565247 263543934 791299070 739108815 967761147 152356248 213121658 749359033 835691533 352897471 816919572 199128897 439135886 893572396 940197934 444732318 858053372 773906122 811569941 375135741 420476671 252309122 791199491 72146245 450835360 503663999 629473399 795384498 832230103 161794430 634324625 335438185 741241740 730843061 973838105 244554476 572729485 783042358 852165885 788353603 809593482 452669521 766787498 318252173 340787349 49444693 357077123 901780804 939094327 475097535 985551312 658850585 929011701 344670236 509879633 451327889 884457298 9559235 553970266 702839406 854419209 620217779 855167516 287376723 413573279 73863066 597697066 372126222 771556818 57480631 727063692 739947330 904713167 641894819 923766882 857917128 960162047 736268759 932940679 562061229 682495668 389684292 689096696 168294927 397580942 201858981 442998790 574179793 887826523 886153888 994512339 7217909 773789684 724873192 847501170 477180992 618678373 681465921 812258685 214790496 234000188 581681761 872363949 626860999 684595867 949239576 979722927 8409675 823723403 311301594 876954217 893086095 926961489 687859513 915292557 744756515 897106934 630853361 773006776 457113118 804770612 229351877 583557941 413156720 460844528 495230605 875448751 112222433 765664054 269790066 950927198 568515703 792111636 689078655 723595050 360695793 862277317 740443989 833512372 609698337 734467378 643447124 745204260 843078882 965087880 384044995 418093955 887242786 971401309 560473425 726538994 567082592 813484985 857406905 960800638 99969564 170897187 624939698 648245025 257690653 308021232 764952247 960598263 646351809 700326397 922147638 966259045 256908912 799130007 551819643 853591262 687541113 822561311 62622904 720817703 493309493 844846090 482312756 487450845 530207615 942579313 147904945 709591978 979461829 980578020 321611124 833952040 117092708 202389814 367195369 634056975 97881958 653451568 740013297 957217993 555167992 853658169 909143144 997299765 590741621 681975991 724410289 743567693 614295179 968464392 151491541 893725471 739297131 899520407 949233747 964009159 75336091 321449190 481648541 772309344 792557004 974551370 927046427 946895092 279495531 507645855 623074287 886017681 288653285 729075168 559076645 776291304 974275516 991266169 534233347 855731248 372843293 664433512 665423366 699582140 93902100 697270783 591672760 725867913 882729973 996625646 59814621 478213859 668329577 806016639 510352027 606919597 866167260 906350044 981986897 998666718 43793281 388341446 252484642 317052767 123130227 421174299 143276337 145625704 382362324 866298770 163831670 689109487 889591431 990452158 945433018 994651003 499336509 837280139 174530561 240026393 259029057 339671919 241722005 972816353 458938509 588960782 964310671 969232802 179909414 401598758 613587692 993385327 900313691 986231608 951197597 977683444 768685757 939929685 211444288 711131111 580245860 806239734 332826303 810854841 593141690 658253723 978689849 987631275 204644526 830033793 364157138 747694791 38192130 665328244 372044149 484602942 798843951 937476944 31281460 436737847 773622444 845872669 464153735 992921042 29523058 862462515 683079210 828450899 80276412 687479762 899267058 936850651 292196394 878465202 518125746 921653358 253413913 307401044 903088190 935298768 264974529 888239496 72998092 134747210 818330966 940160906 67240649 476086648 932003467 999389134 255042975 821192266 638753004 820513239 313140443 773301412 384320860 519404529 51387716 801769732 431147342 647360554 122719076 686494687 985775237 997878183 716358151 775323606 882438910 996488475 412383474 761849250 62488080 895852394 144127725 860280631 366749122 381804474 718498344 749432228 465446039 588564301 397690481 951600109 724315007 865596928 820293062 914021809 903570408 995932722 287696187 334140905 900090247 969730836 675395379 704113579 265929874 310118648 19692420 321762512 473048380 830919643 373236177 952134158 590495536 678648692 290287070 465304524 174709440 372615153 230213353 364877682 614468081 664770792 211236251 556572125 136082448 195388566 544280173 589381881 524878447 922650958 457803726 979788723 315532604 852158985 732242666 792639791 748670074 838369254 478453846 817193064 372197813 958207001 642246471 924951971 52127630 903489026 99250653 187615178 904612096 975993033 405362413 482059785 930790448 949337204 489417303 767607607 471998462 908441006 185316850 764718513 981121210 994685698 592304683 913650844 508172768 703034976 792301695 988467892 465034556 922961996 796287409 892620641 577597320 970476467 260115245 845944915 326209715 887593867 508058832 902324837 390879169 830218726 865838234 968771693 897528532 950869140 792028240 854901709 520694633 691897376 408022090 694638960 417995036 594847066 795554852 926982073 816439284 889358216 302205977 463032603 698450778 892998525 48498387 302684677 852456015 869541984 40757936 658764608 174261121 295795219 220397765 360177346 656931652 841489812 880625433 959753393 230373274 881437026 891059427 943847873 929029570 950551891 917982932 941076373 254199838 741838605 772515597 814651073 599248592 734886106 448699909 748205984 534003880 555892273 393452097 517841212 768972458 867833771 861307780 929582278 948264235 990323377 254135360 675773621 797577845 915937238 453641978 785249754 506925229 998300546 452897233 710692057 885389695 906847988 389910844 752595583 321864516 377208132 587366673 971321366 884078462 950580226 404461951 568478045 865014607 942830935 774412386 924828456 593435320 671949611 300309796 352198485 281234020 846940377 247713268 442974795 979823852 997557916 473521426 676475251 783942688 924463337 21153759 127441203 56957661 912107755 335194294 573976050 538535154 629100477 570000733 606044146 448236547 762652656 622524082 732800649 375268399 462195171 599502592 974015674 785414552 868541023 168429998 639395039 276143700 460910692 812734385 947709048 989095176 997880768 330920353 751168093 114674030 337525652 399555446 636878306 517401081 868663350 273903150 358098177 967586010 982764708 564295549 668155240 560017986 676348646 81354812 87161097 2308151 387329349 486528204 979829553 710170439 853475431 570722944 612169912 12912882 143357713 828596309 862390000 272338061 726331678 644216778 832298405 950471412 971519775 511822939 919105162 810784396 824122498 250556819 956834468 598223637 990982420 940508848 964731404 243839397 495766819 603313505 819405976 942935073 980376733 111788720 972133681 666870506 820153809 959527137 980385819 635328848 852027551 534353466 840655357 732409430 737087518 763156548 818909083 786121535 885366376 762653630 809734314 547880405 693440332 718168158 720216005 664486178 768904126 961724932 974202937 345293203 686847120 322417606 387788463 270787276 711169723 239694512 983106292 736892656 777456228 494492899 964860804 622314577 926426470 287825806 334712243 862685754 966648823 623025839 825938032 812210539 825805656 161491422 355763826 51259224 727985505 234866120 733074616 880957739 945914487 678047018 910783027 128166971 397547195 193202637 929580665 375622332 623631958 169363224 427383023 220678829 825225659 579855531 969194521 611734659 688407856 274970839 881287869 600406528 625195099 915555725 915716283 571939066 977196956 362285144 868971546 550104236 641591576 40738230 592079208 448231380 486676820 437593695 486918385 22158643 604205416 869295567 873858332 505356241 820115378 427615983 698865218 310736362 809890072 442120955 728153759 402216027 464618837 525632983 570413123 360365541 819247911 976193581 976466202 169839207 407258631 741522411 910341390 609055010 967246244 65187189 723375029 911155712 984207849 256905012 919324000 845021211 948593281 327106265 541194564 454947412 884130412 983895828 987091290 664941015 917045706 819123733 826008881 158149106 240389492 73905944 704911665 583688455 922813539 372622876 872693721 943804693 963345524 166971750 180401067 685790610 757282977 931027493 965611736 212479372 232088785 67432903 962597686 398931970 411938857 924455037 999945292 701610721 834508040 437593361 649304274 140330257 212198156 573939799 968753949 793531555 809608231 19852290 780689050 429895968 756059754 307504363 849459093 510761410 834469874 668340981 863585895 548321162 768842331 1334767 814896525 546189522 834781736 305456529 461984372 600578453 951818123 687884602 714823182 383881091 474068924 444786296 577057442 876929407 932701978 58089522 463578785 185157488 539372553 471654744 753930610 925489569 957605647 236609063 426442292 870069192 968488550 656297822 974340573 746001203 830308895 428083359 906753414 424057217 503081631 603842667 616362243 395139511 636593042 422208297 598177493 30505766 199882136 724697983 965266011 515910115 788470248 722189345 733443776 179652124 794349552 608851951 751193022 446047004 457113380 315200472 388526318 584057264 728440308 530321526 532217922 365375570 890775927 348665832 790917755 318480613 846327693 531072345 736187522 916725396 961142612 533293748 662925657 359044188 515055654 678797305 945241427 618744798 727461169 972894743 995904310 806656345 931544993 497308672 576439208 431691211 517906271 667766755 792238371 94005733 509153960 618983647 634490303 387364148 713777494 81998281 283935873 193540606 924657353 956621647 975051780 347365091 887245774 76296398 628786259 244737978 427626031 926270889 967839450 636340617 859978954 982229606 986875797 221881059 394138399 475784640 712937856 236820151 310638025 567507744 980467693 77098850 319962211 376890896 440324810 184573531 387501678 939928886 954645410 740273960 912581110 687404962 972504379 458080155 735279765 41758953 765449161 24926163 142989215 213958928 255512768 268297213 291592787 383399217 706587785 342023696 939418399 81208660 791231099 627614335 649825918 897894172 972119513 956706993 968480553 103561688 871508592 967455946 978533697 649911474 690936005 436903546 921392055 212282326 742099620 859374810 951205861 534823639 984324699 887686576 952001416 349427629 540193405 227488950 853402276 833769894 910083718 535412734 611428670 402287717 677683305 807846140 904298930 394391814 731290397 660651680 915844997 108213197 576996468 913946694 976294135 457407605 594786609 96538276 403833233 849116336 919885970 191959625 842344975 75473384 698989123 649713603 916712505 438887184 476316551 167196054 515165631 767111032 949114954 799160973 904755392 211764503 559065945 838910536 944865168 29653936 707600773 441867898 659967893 738268593 896742166 803210466 833767379 553371982 746086449 436747008 796962662 137453663 638095445 217744893 831432472 992457391 995111616 53311795 581546050 791737909 804043497 874210290 918530247 360223050 382724511 239711674 467150078 690764896 859319747 589887195 931888591 232181589 494005086 453311692 977804966 319142678 332076408 355382918 709318052 436294246 531240493 285938036 993395109 493484472 798025677 311148308 841622015 842257275 867926462 132701673 625286934 294438523 727931706 70072126 858045282 738389687 963432002 876634224 907319752 143705573 656899395 669917913 735181832 633538162 997336873 643934532 955336463 227514990 652670400 457654188 643225810 585784062 788743208 336641765 803573705 146026861 537874061 565347123 570821435 850724594 861820996 799994158 961350322 212496153 495727155 567879376 660704580 858396065 940243506 886655933 964845059 575741598 801497980 3884449 795431980 244415494 948961216 870068553 890850022 83034963 341568979 892071295 929089014 644696439 915071371 529698736 958666496 749689636 981572671 749640130 948047801 910714277 976684953 973176917 986591980 831956238 893406768 77954465 143996374 489909712 517055236 852640477 903299191 895902088 900338616 612185621 816467429 378747250 974204541 416686821 603054115 461951996 646104468 548266794 908553033 634861269 963820379 708176273 788184769 768829396 896609906 800497831 833625065 808758075 887171739 137879202 844726388 38111676 853217318 221969725 510472777 571700520 840565760 382762105 400411836 683009017 924704913 273641621 453310143 2066682 925551791 747466385 762519596 742634904 985451003 347483547 777054792 306649125 651145904 394190888 428233189 159650972 679822397 456823057 741888284 252315035 914401905 336896294 924595467 877441721 991909516 730896316 769434716 725548602 943704628 305623683 883672695 765933497 808051356 988283722 993768798 16134720 597732521 146688716 957676990 443761357 758028608 854501110 890594157 841106424 877081920 392244926 708700257 622057200 721638893 49178024 589734620 781412803 942847653 279615386 661109719 183638212 766980362 580341015 679610013 788914466 872441523 111533902 531300882 516091542 645482065 378476297 929217252 898537396 945018375 211747308 749769512 284365479 537698166 728775298 912568781 832133628 919379841 29653188 413715382 530349458 952157701 756876883 846270712 947627562 950992010 75921181 281978804 687612620 950224345 680485881 791754710 475008077 768902344 401649665 415107730 270200602 581381027 965121358 985722640 988659607 999158672 775539338 990080868 960453984 965280412 637436525 895317415 621160227 898807334 933113789 948729879 236575224 425436395 830775241 947474990 951977484 980871702 282516307 422294431 45154061 184698913 974748300 974951508 933508552 936660620 557465767 571340009 298034770 860118064 649087202 970723588 612792589 632367607 742747992 991069431 68609614 82837703 400424535 597220876 259444700 720815600 28187711 894124597 329168531 720848086 787961280 870266161 97889871 189307522 143468246 768403777 581160930 898834068 183079271 185460590 758695964 868688979 535291350 798044251 811874873 838727098 387370268 683849363 132486492 506130580 668906 416891554 252488534 819504226 808812391 968458420 477781773 705425242 726676520 787442229 827801414 847383928 50517180 639412501 456618152 534127028 756617940 927569205 360974093 729205180 698515481 998048070 830345762 987370191 487151235 766183342 543346535 718992303 263621398 946263158 462899905 529244503 546999662 905512040 103702461 956170837 907575960 934459122 266443284 629713273 719741734 852913319 657803567 829930760 697642924 894066629 698419004 784173153 13966445 739504737 404527251 982762953 838130171 977930547 946155070 962678719 101070396 898234440 709409869 741834062 308636563 374017208 40329337 931458795 66334806 526261648 949159662 967729603 758085582 940042649 331192686 878502774 787250472 850405550 534174098 996811096 960308117 982653698 853021447 975617812 197400585 438783369 996118244 996426521 741604994 970688592 985967841 989980847 107018079 513902804 288642866 436587010 686951738 894966452 616107866 832168077 943483058 994247508 603718586 802342571 994600792 998752160 194589813 933768996 306018178 496552686 858824670 895924113 774751755 929629420 8552151 133996682 786023075 928958092 55151573 473652166 867045455 873547592 158922608 440035577 728742919 866087820 371454938 572756180 32169397 332883664 470859776 709373976 657928791 942805517 465916038 897528394 158563290 864052789 884728479 988822604 712638415 865643775 184503769 598251319 883364152 932487017 502462126 853956996 490479207 845010133 707679413 842256267 694818989 777612023 882942383 901867962 732412269 915353542 804761156 836756779 775742418 921613784 955420069 969740945 585197204 736233949 169050214 348293086 509031414 539912000 115806790 271756019 668365575 671219012 741586712 918730173 992814598 997083905 881395972 996001515 332158133 682148503 971760567 991027735 517686576 548364230 694001738 759663272 800416776 817546760 19942091 897708956 217243563 237479463 451745440 896368904 151517821 797016035 283994502 504251030 839182623 882562112 71710868 819613969 76013764 817723028 816614317 851487806 216014854 942681777 877669604 954838214 747368749 993709805 735546424 864058149 917430508 938733936 285244360 718878203 172698192 721602566 29463359 634520212 284438422 701375182 960072103 971186428 476025820 484063673 490219659 937749990 447801197 963641429 968981836 976978317 166914327 317605493 860215565 982903550 809966113 918950232 302491422 605712103 703848544 778679352 94660529 273286107 333540852 476363696 839669272 938726734 551525229 736564077 677972945 970451112 66633824 136994125 766192705 997021844 56481012 927981969 635170292 777831946 669132209 701623227 658643253 873584985 433559757 529038022 170519813 200860244 781073601 992527213 357906759 901487073 22747184 479242762 112727951 139340324 399737070 455708465 187453495 979019611 734515976 930613561 82397364 619610527 885794751 962075920 377243622 487897884 702487958 889902710 91147758 758372481 956732330 967107623 118921716 141990882 391414579 771293674 449231449 468639852 694979687 706318100 615311974 897098454 481179646 684791595 299066671 771578082 533531860 757230664 643922190 927677337 103942118 584710472 715308319 979735730 685789824 893417342 347783990 422640307 811843404 982508453 625629819 698559034 447540913 460504845 796102071 830861639 57707654 855001290 139139847 634859100 901354809 903464921 468703977 531413536 609760465 814493386 139723273 299409796 928226953 955033643 656416496 980186175 368295615 598582958 392604543 856194768 518632366 614643546 369447853 950586556 141424861 553150295 233158013 523228893 590141534 936213027 98597512 355053242 836777836 977290170 854858447 955632267 210643178 743705133 149581097 776922368 434976579 777298990 266165224 967243392 374647431 539564242 27295377 174787585 155243409 719014104 816672358 885250029 328938427 999879647 68857765 482740964 550905274 993806673 495472505 549734164 590749884 879464077 69426924 261249207 699242423 926553071 448774144 693411134 799684547 831726984 944627015 989375001 734920922 906276931 380027916 608287296 137077769 189271096 506141356 566909810 450116694 788873429 531748100 935455867 437823172 939584131 462948468 684453881 839520506 885682522 521957610 757671795 832592130 933752184 978616733 987857998 92102032 862622011 647405243 666857410 175922325 908381354 576114914 781110398 167282206 906939130 546866256 766466716 629316234 658513412 32877336 343389017 781872101 935188874 601620650 970033969 43292310 514048145 280696003 373930172 805148392 811797798 19735088 544173511 202875334 828094457 418301432 776277367 664387653 738730792 23006225 343287754 406312066 491909052 592787746 965797234 116019536 536930429 968042284 988485186 536178319 881753637 276663359 626418291 850798580 897301525 651044398 797848315 365252874 889335868 930476307 992764226 451066824 978093626 301484968 904163567 155483277 474326343 732829552 961259489 910771071 949862727 710944290 850753328 301452359 425721231 54885288 985102324 814612604 957508083 760487761 965903989 984256291 999925390 366296133 709584678 382867195 585887681 197949037 857238018 335603614 537528140 105076142 573393935 529674936 651458554 25198072 600358378 992153094 996634386 159287274 622087568 915910896 921544204 668402351 878901084 895507162 940773947 938568938 960771780 170684917 644437532 531697164 544264887 80058444 821138674 774360304 928331153 565397017 593470011 510703289 641615519 546583785 767769762 144841137 566347238 631715736 697982237 253494885 946027289 856164477 945926992 142542043 408950403 391654636 839143037 184952903 979836461 63839763 380621634 760808078 995777718 84429656 378455110 234264894 536349688 737235240 776100802 22521892 686489619 338951891 915598915 703705250 937389197 270382112 587217127 106071805 350428106 756203903 944677541 525519355 786084559 266698282 984407465 469517356 773252605 464244242 781933847 345262221 870072280 842796273 911940276 259728431 677316843 430719810 606313330 515054941 901924910 520124140 920118318 165438465 962454280 3621527 549096034 805213017 809273897 529607765 607324548 159013983 576133430 490770316 859923567 133224594 269940107 208365291 320043327 142836299 900818363 968455258 990369881 956751006 971110169 629351682 754382381 358866444 783554008 493842878 625464008 924417738 976336053 146951672 896944000 787834005 909668686 735522378 924537370 414950737 929394307 581916905 635822482 666835263 692643919 693035566 888922025 327954082 563113730 836443865 925922966 583792935 696216747 338009383 637991356 854204856 885079376 61221734 218540044 879536196 883246877 250747303 669667692 590775697 714477109 567394315 855942935 412715059 908908702 717112635 858105195 989202990 991914270 506158592 968963067 182692407 627893716 402732513 450653988 794486426 993783847 368401254 375259734 997289297 997308159 198745851 552439004 96415528 645321041 418250214 632066255 335701385 688916936 129838186 874525954 252336498 485419418 266822083 830085151 206252628 825261716 862701454 929172320 782858247 803194978 53855289 918311775 128982207 793978102 273445579 834524850 60796583 155419243 51115053 892987961 760775191 989685191 950156321 956114511 573045783 864001098 284264457 433322208 991749746 998461212 774130618 994387120 895042972 946090841 712040277 979522418 695947971 746224508 668036797 764402613 13363680 388793912 251944780 951285732 986986400 987510815 731891576 842001030 584790999 720492564 352358427 931106019 114211452 140409440 569760025 848117183 203008449 231397569 480187564 796188245 233120816 319542218 884662257 954452120 855902856 885593320 940432156 977225855 464441933 938061507 546102013 648866316 62045638 83866414 723871665 849105707 89924949 367486812 107433913 721931092 727545684 867965877 386190094 845253357 151954943 946800271 781726830 934585303 195535727 442138383 961795750 963348986 353072499 657360238 468414792 794843858 348844245 468755106 586159125 616348946 319871557 504103318 884240363 925645329 788345888 940252540 542305350 921490296 81928833 826214860 775410584 986949848 146961091 565552577 132031774 720893345 463505579 553753623 323014486 617429787 956991404 988347681 34591419 864084976 666425100 994757492 701083445 758979062 430757076 806060580 873210016 938297942 581042731 653759175 328405128 518226335 604423103 649604030 898695168 931144086 361009596 932077009 646087671 907416074 768083433 950092824 956507888 993047021 181987111 470005552 902156380 955742303 362685530 620207613 620856065 795520628 675199597 825173008 789768445 915113619 551729743 925453561 659440816 734324371 531974138 579459377 248864318 410178929 201379490 235658505 763672724 944310754 456062701 986084059 604677720 865250986 953147528 995186548 807364809 937793690 40183009 174556701 516213072 613710547 145716852 877115800 736937542 822013928 860285348 994187957 408306986 438624692 837573486 958414064 551888720 603235164 418383168 789472459 646970950 747859800 213346174 455947090 712446148 809705015 211045891 254823583 591306786 873973157 811588162 828489069 710150535 784606521 873372721 981198275 65589357 752803830 97193648 998249524 354919077 985678708 39228204 266634922 284703615 988001536 278968830 946874399 779420286 903949324 422306158 866795771 34497790 116927825 124263774 367807952 778655362 945456668 285042929 409240998 796938318 925465373 702117899 873079649 731257475 964140199 459198623 791517887 319467651 407803569 60700216 180090424 83982257 642337442 230538810 928214985 82153310 826096826 667517805 739895400 533402975 541409355 9754873 823407644 222343964 639313446 419778182 763585706 388748957 695821855 613015581 799644053 827200006 960033172 100973653 633418584 764845375 793278823 976166034 990960678 985714068 989856879 367033522 993906572 204038223 362689883 721347706 811601957 29804389 255295391 856384944 888670921 861457023 910317152 861459904 987811966 866907574 934925010 944356653 992066084 590010213 591763684 170297857 323381898 725535239 731794461 420331854 841633978 549485122 964036185 64774540 937542660 101234528 657853872 801357152 938014190 567246432 608313359 654817028 989616521 942652601 964207301 28803348 41480869 480340361 913573917 970971860 975196204 570384367 964441189 196491411 819014827 117793290 370494667 745902573 997292990 320545367 782135328 388730768 565770697 883969140 899694540 47509780 477694348 420599544 779125645 817193536 881057575 403120115 879848170 486243592 823248460 568322208 607188683 671686434 756149218 164400858 626614196 526675124 527440404 732743146 852577535 488549529 989647583 536154870 928797254 695291845 868142534 872479229 948042582 411792568 891690007 655193893 825658056 346571941 654349685 715651365 986901158 701973630 752991104 263935683 673764335 363334252 836552173 838943148 931011992 935399026 996556598 4065352 819989688 544339500 942922005 932606579 990680252 664657337 893016298 823676582 938340938 717385602 817997575 991866550 998724471 880837627 988699936 354962005 785387674 241817545 828907941 458181617 544356894 990434180 993618716 684288893 727898278 47148756 552693748 919396749 990132754 514218138 845331404 614904827 859186392 678881858 973882808 76502525 251208750 601096851 782096511 622077863 730267434 184495337 981449579 341786421 768052272 291151694 533175524 744295997 903145752 77195435 312085889 685271754 787723046 500328531 945940880 503696986 951984590 182124000 871195053 794232761 803034488 24028225 76170934 464824642 877169422 277699181 614118542 295925825 883726523 672373198 756645343 800393708 830568556 790039258 962566919 515429192 547519479 240179516 494776216 879472424 927954674 172622726 922651308 516135168 721435592 484710499 858479922 928355282 993467951 713140425 904361941 242935443 367711085 200837692 893948225 550138364 854116407 624099393 900769660 849084977 922003171 392039497 784094815 810176704 924763927 948175490 975760360 165222984 361925414 244024249 278111489 311150330 383240558 739350921 765273174 471645941 753224045 294258793 715850936 700166558 917461180 408438481 497651327 592617493 916104083 976340000 992739885 266190280 324334153 536201487 714360342 254546515 801029120 544952441 552778069 943924465 955982292 389303524 479349718 518344437 790418483 696859337 792731720 620918617 977609987 23907797 182468679 171403647 481342662 260040251 427477302 434418631 970264559 849803650 940161990 689971386 899617413 219676599 496102699 794541906 813742056 550273543 967406679 350618611 648674208 190892806 941301487 384658942 413720366 537269123 772201425 723140980 846265098 79795301 494451264 465540602 473905399 957352544 963801529 560218536 714787137 967300909 978280645 710330849 774009641 47526454 772858259 624191017 666649594 114366046 614134539 318056656 373252988 698305865 983438234 964319950 994801235 237465796 730339965 584707393 794144607 620658915 898068623 172286322 172518960 704230502 781702677 492316726 976425907 498652064 558115045 732109422 786072462 632498853 880240289 342693363 370958573 349341446 373846877 626892315 767747686 327825275 909286105 969728461 974038861 750414338 780345288 691246817 982863422 697299469 878416568 230506900 716195398 963065000 972183678 264011919 965519948 456294654 785470810 363662596 666600140 892500050 935648792 421851732 659694593 394219413 524444590 773843061 860526927 850652390 975837101 652120923 901619603 744396876 933740229 489819438 684253715 313399385 900583934 721181093 856805414 893154150 924689525 83083769 367986565 252186125 794419845 462670576 605265888 814940235 971667907 850784665 970716991 395965928 847473087 663698175 997107769 417801545 671175656 123470649 413199512 132473660 654580524 576459086 647767100 480807013 737490426 196892418 439448021 383433818 558294170 825687102 874609709 984308775 994123878 815301444 848357534 428265597 789988419 620412976 968318332 712964275 839291754 297438003 687885739 898552561 919259801 777886573 991910818 452621910 949778669 197797417 503331296 882186587 892900713 35494855 591209069 361789150 626057491 578312475 869428215 764146549 828477804 778647853 888214434 715232031 902723362 543429122 575502917 701446872 706224227 980018292 988161354 276590815 456187666 461377753 476810580 714640430 929683150 327145680 527146240 317296010 967450501 616062432 734912909 192984821 275951726 321280586 371402875 754160562 830259909 884379974 956483861 876959601 880038577 282005293 420584173 269683107 291686955 263387612 544096150 4127036 160227949 629977737 745467285 87066370 475373198 347550032 693950181 403956724 430790594 282146214 690255756 720662541 736784125 61395030 277085236 890162811 970647144 491093158 558055451 744521031 814112309 7830807 396203814 27464566 613871590 95738828 129430833 529876153 698333202 148418266 779446025 935640568 985636740 50958473 802078564 486143459 800083474 525271931 943201668 517028794 737085268 28982423 452732273 724390010 853117181 859895601 981998242 93318442 745503602 150870991 431635526 436733267 940552757 996563983 997318617 82378420 788505736 492204612 527182464 434972205 778920478 289227459 776870347 959210565 961091374 949485413 991340279 403861969 800482160 97120754 751600272 63782594 291372398 213985591 312511675 637065719 968922581 903809515 904657164 232538413 780898381 21279124 686887283 357193412 884055915 192117058 368622725 503861760 986334330 330187522 846842402 475208006 978068858 820568924 967678073 19968373 77960313 199107731 327777153 460161378 857805431 44210636 417959650 101357414 837248356 417922413 498815104 359009296 602034114 581892931 761925345 432777945 519922861 258688680 806227651 727185878 833360360 78082314 810586808 548252302 574874094 380288761 943442514 344676325 606582411 526322032 720170361 695709027 960499199 560379445 836352911 416925133 762812016 991131736 997695251 407350292 682678349 809896421 900632052 975919748 986508493 520498896 722676394 257761817 443884009 797200421 904707179 685973431 865959626 675993937 796774757 519176139 818699109 240422603 608790769 663320521 705463803 170125718 404741836 420845962 921613758 40380268 243014447 929740915 944099585 885625741 953986807 550497607 628702266 328338077 694152454 666031609 721618583 664787166 889367663 405634939 698731387 225994497 663891500 88165338 114853280 781784934 915165962 821744259 852567728 720026585 803210080 7389973 763784762 573591955 993030113 23450689 936647392 653549755 661472698 605079361 666223486 401217180 593092887 747428238 748909725 327565484 708496548 585306825 716948441 446891879 496611996 145376899 514161024 993777260 999443512 901573152 996617042 684217639 908843763 479877052 720880093 530274299 626760998 731131603 789529071 383789964 421867541 745604500 815012927 525383260 525540706 421734570 760032276 182617682 952124255 644856639 871670119 731077365 877154431 126894786 341807860 189820797 837592286 872469432 876277140 902672936 933383273 432825154 728163372 69154518 186750948 311992680 953997451 204232270 849439861 218056248 362532817 26966791 126017439 515952599 925544272 243364002 810554982 893604630 995430435 97161587 986037456 73649396 356139357 642255130 750811227 147910851 158161028 311102485 507805067 986064346 998075378 359997014 796174086 81454941 987873827 732661412 750837823 334827515 879793894 352930520 955122498 802204025 942702364 300894708 404825059 683557304 979657540 641951218 995180632 154138717 597729788 540930381 968832251 688938024 892648291 580323472 611041991 186168749 290818539 744158128 804161662 848172913 899529524 335103013 747618332 324863267 475183966 74466931 167703945 551053761 600368028 219783819 746509198 38815991 831951749 720804334 730587236 650740557 995491261 492090537 554702919 789978721 839210930 637204776 739507382 239221166 760973668 517564749 613649924 996770515 998706832 132363285 619088923 717203587 832337760 118534123 713284583 969866852 988687705 134559137 960464917 606957308 894918077 910469489 943837656 853088462 939248353 662376754 712563477 787278887 833515647 239686827 408425731 256843578 340694511 949153585 950055866 891726943 923682871 179038951 418564085 180367847 557692614 594481016 908514153 453590165 967053296 838809780 978719060 920054679 987198954 534977825 741356454 595240147 962959553 151144576 396417859 605820936 730665532 894068623 949217390 754442568 921254679 862210768 900860112 128712219 288282018 734632024 796353142 239798744 788191253 774931862 883487005 505293745 709305942 173237634 559198375 968101757 994970132 659325432 991562677 4981348 61253689 205153100 489730493 895066192 924636471 955760543 970315497 94133972 640666187 783052450 816552226 444887076 736973055 84691198 456797455 843225705 990281671 573763134 788412559 872839597 896790332 899308496 920723082 793422242 937352028 58624164 616631300 305133229 664517357 815090880 991210823 540608878 792823572 18109898 795197897 561802345 691780503 158943543 611225257 472575965 776212857 139585403 441474024 365316301 572518573 642140995 801277253 524040662 585453314 695552194 878591828 982206399 987477656 661873281 872030350 655347131 850484280 432807223 703709789 442987108 943188487 280018819 778093609 651894598 665890755 212212129 953504852 531097318 584762358 742376477 898629364 82207353 604324250 840181341 953591760 91959249 426304967 431042701 604179103 574138825 603255002 482388133 573466806 325431881 598693845 389175459 888047201 206668358 655864066 990338431 990956473 705841023 823488330 803110286 815790536 389554012 520806347 832518326 843762966 841686472 971059677 816778160 835773501 777541213 919385898 999298001 999992740 957421263 995616792 706136602 711305180 370771612 666886053 827874249 966372787 356694529 644384539 627599925 690196634 535025579 874472404 264221684 359922036 465565953 741675126 976490911 995361754 717619106 807102324 933492965 984893223 52577059 637718030 36884218 110889247 280807634 547752783 992548809 997083433 817271899 936682616 77456159 957222718 408239874 745380551 125431486 322451579 767924235 907396321 168642330 922314450 996175908 999490090 800319036 856307170 582276595 643845943 877728191 949234331 595057411 957495135 449439380 500614610 550354000 848290477 761034595 919548754 322994594 472354176 422673943 809613211 448567146 506683625 882301241 897053330 919299497 935943594 412063714 988791635 107260745 133143929 717080577 827443654 340660405 700259188 568773703 653752138 3204986 272500029 293332861 900940256 238970734 708207019 964698012 970579589 728749011 881939505 370424806 939892487 198064696 681440501 852324793 898239056 919022661 976723100 170827385 793512387 680503645 858680883 649679787 776315542 259503615 796206492 302080518 496145218 680823729 841493354 446970653 786393489 812862104 863776940 495550429 930094123 703436264 954711739 477293647 602388009 986314296 991214273 617313189 831834061 509303366 968108094 685141434 937850375 826589264 839721380 88521410 959463506 978980212 998009995 913718590 948548391 344246409 943163144 826982466 930924836 895874119 938153840 907339221 945859876 343167322 620892405 179687919 601615611 823525476 978587610 815379822 841901720 874891057 957778027 943623822 990718902 347698553 600462874 163722598 585278469 36947647 900349810 380480046 617451377 503006887 740893205 632012742 645845008 522272905 974128555 797501261 970395879 37081562 599599801 131244951 513098102 731430128 845785445 827122482 836565605 751441244 991106147 136227833 831066652 824290873 880513704 562624879 754501488 778870187 973758742 141987415 641350190 765766115 837945156 288624823 292070554 114792361 656110707 544072146 574198267 405175030 439068942 652566674 719528664 686788774 868043995 608980118 770205383 647585887 978215781 497729885 788147943 641022777 768721339 4913018 346866191 49944846 704522703 112430525 173682813 2738647 734452989 571282360 661155834 948257528 988402290 212243860 660202420 888254131 897010989 520887556 834500619 381804129 550318282 68346992 504541007 7076202 623118668 393631926 549932478 188738959 643172900 906003869 909510220 892363342 925541420 511617915 860016304 494867045 718148727 55854174 958125141 324791476 467782554 823897908 863229919 203865680 714048253 599746029 871811351 468084039 805325059 978475594 989131571 287219818 331193816 823259916 884789780 599109264 730448149 879655319 942676530 634614687 715170372 426964650 977159342 669307253 848493861 650296290 886521882 162447632 183868164 197489156 332803404 38177972 712667990 309831258 596937084 325187794 548255548 808843216 884131579 348135471 571802507 635042370 754023432 773566326 825599235 2113280 737207419 930671707 986961016 411787617 700913874 37828763 581688167 267359106 418318588 283671942 884178432 621952670 961109660 568799954 616864390 186942755 223453442 255890797 926166139 645095965 956309387 591240545 647073965 749547620 761958148 959412052 972819919 84681890 784767113 187203045 640707014 999691456 999720332 762101203 822366346 442492874 561218063 813583882 929993926 379919118 679865674 431393921 716585811 829430174 991701057 357192513 432461016 904210229 929071581 101965395 773773634 135720326 380101749 47287662 120172302 806369466 964563142 154189096 880372007 301567290 432456069 17855675 180071682 417779847 966884402 543943355 821818692 19055260 542520196 187188473 767307796 190337651 596490460 626866224 869865647 834627040 867833721 555855850 778985212 88910603 349968556 222422160 308659720 407323380 742882286 23793536 275892862 312170936 371803832 495808837 523205715 285028083 940384898 252412130 628811686 957023650 995853245 255852629 434616611 98894088 422974139 784242607 928794646 668343654 716009722 902100370 951733701 407816646 965512860 231867413 923280461 377452744 878903794 56825949 207785242 939658335 958447272 691275359 801760555 170897964 175452936 274461129 589339290 255919683 359360614 471295078 613696657 83961580 270811148 980803015 991891471 321112350 659577220 289011876 365080753 427688150 669506124 89960590 899742843 2235388 372606453 536594065 916167107 146680845 312677201 91666521 918272465 386022172 985059636 594408771 671044223 787153005 939781788 407350482 555606171 69058879 269319488 966799237 990006302 691430018 969557598 655651119 989627220 885107120 941965864 989756061 991823929 942160063 965754817 130606137 309243387 212890892 827330971 803100902 824414974 965438150 971218460 667393319 908579600 572264444 832892810 418044223 643253410 773222263 858922966 938034987 993257732 977297810 985451086 779981933 942266689 120674100 625940465 444943120 839878346 936921964 940724384 238960328 575811633 942441510 947345484 768963781 942945581 795010864 984864467 837742846 918209749 441425269 681862336 767826116 813380224 481782700 520556732 104672282 840955685 427966877 700722750 965432298 977485055 691692170 879271093 690574919 691003717 626976000 796700175 610052799 857353123 237775477 713613770 339584773 599236395 72386974 408735825 604509962 843287954 778263088 823716408 926209225 931885294 754913624 918431190 633915684 685561757 851152185 899477744 732641091 988478807 955542494 967635816 325668690 529413620 748004042 985222295 453154812 525463097 131773741 721996369 542727103 906643603 375220824 878633038 648152003 746662412 303283182 785232295 769127744 889105587 887752792 908164332 427837384 849796044 50086236 408822464 694646022 964477110 918881210 991258588 321515458 501325150 25779184 859565085 713379019 754782113 633441860 982293088 528790650 753522353 716305437 962508191 935651255 962307441 660246884 899903623 857408145 884168250 235427241 848960331 847997857 968817839 63793414 670891240 808353148 996004978 943040078 992279111 844232074 868675789 992773186 998133286 261478571 679095867 277560163 724861562 146940094 558521704 428857088 691211146 71630306 618575350 613858778 847404828 577282299 665732760 109383534 946146531 105882690 283029030 420476283 802210638 68866103 309823246 292878626 757081946 668262611 932468037 381516206 510370638 951079596 962354472 918743145 937687765 864974388 918738863 103931553 530637735 672403699 961270065 462836698 468458897 901486725 956791555 116593322 784476077 283871260 981748857 497904883 723772617 8463942 867226201 769472147 860628471 349516950 829445312 818660807 871484353 688292221 996761058 949847039 975825609 85499577 256430892 638346178 862814508 615278255 907725675 346593269 703408581 935205325 938713759 78022110 480409426 121228537 815707251 183251644 715492230 861294063 996069619 929535023 943029477 843124991 860819829 16120286 939291007 307991547 431647284 984443307 993519509 428975814 447008134 941622265 980210688 788106853 800548259 895667946 934638442 239578710 473309217 879889679 950048385 452461375 615929037 415452908 996280662 506631069 753927390 27795961 575466297 136268719 186870733 166828675 873165054 66567499 214070089 572985889 794784402 907523323 992271879 346147010 619398149 857464004 989588543 86529167 530147497 439420293 957268038 554051337 751662317 926292088 983151306 881141614 903101245 632962916 830191063 489721445 762828368 496492396 784605877 95828325 497562014 163095640 458129206 729091244 793285382 286352201 534152290 10351030 616584814 546539736 688414452 814287424 973366610 395339173 443631599 881503353 950118392 800820941 815680927 445953918 781539454 800271213 988907008 985377292 997626382 54098711 600193962 28289095 563267555 388557270 918117525 439014086 439388246 422228980 520352451 690685053 799145640 725509594 751564701 301140644 523437381 851316968 886254597 341847964 865310726 616310184 672787777 39807176 996173708 337227004 382769320 484088589 813678833 830691383 867817034 165532423 304042614 575130268 879897437 895196102 942750636 160477933 267287562 225033798 418606779 978647513 994054052 749380159 938007462 713599230 945724000 219601651 906366089 64940814 152538551 134738971 758309762 616730557 805860370 440000906 631718276 664814439 912557347 325462512 830529538 428396853 927264586 239965260 560508734 824011651 932429993 242244348 757683651 217930744 872924406 952051031 992119195 172678204 952936828 22170939 738866284 508164295 649227071 157538647 497729874 104376664 926047693 370751908 453971894 309110130 408141896 121789002 693186178 864318297 867246842 15967451 321403539 629942790 928129357 788454076 876459745 628793373 979293739 786402768 969251255 289969363 575177626 781456942 952346255 656581329 725392536 362416939 688914172 290665590 339768242 209469364 603413342 439014808 444178858 71335658 913538711 722216108 906347594 595870353 933644756 138292160 339517936 422530930 904666222 810406493 893301345 314526090 836224884 175615569 673995036 773866702 893682996 59130590 851387727 575733387 724920341 101192337 161084568 955543056 981071976 8110628 572218149 108938860 902097633 867716424 917916807 979579695 985250456 656650417 738862720 465453341 870270303 237680567 477531913 862250303 923627700 411360853 436256458 589926961 797398942 212615874 758671440 45750647 651429876 695214966 930196796 51730461 207725569 419018847 723211075 259247010 544482246 434414330 556857962 904251262 920248537 668463936 917070120 336578410 837940931 684995177 973131553 361129115 362685887 211620369 742723391 912029097 972817237 218017291 803576536 394275960 828964892 212245391 728379685 40920308 579619623 120490243 274658086 715318468 902381821 580280267 620678990 308467189 791541342 812174317 847239965 28333893 493369242 283165211 935044301 218408419 603281245 602712651 755664572 326182130 791843606 223234649 754315365 91889344 930092809 178361822 707236553 679302743 880124098 155183868 527009614 551860898 843079056 773657001 943648523 396653634 872428459 294372839 640770050 690385473 939538671 462696800 875649853 927126608 939766447 527196544 809331038 955668510 991223976 91195119 707469574 991595921 995056808 170767128 805837203 978023953 996629131 559619011 998951621 310436479 723047266 662029843 811976659 725255504 780188011 841631999 898302124 948620904 953935658 936588409 999357355 99648193 317950242 572669353 978469047 399201740 491358181 162625664 911514243 7392471 521756046 346565159 862155240 887882407 935396855 83182377 261541640 960236949 984773999 432654520 679064423 129620005 270977020 555130792 854046486 950756417 981601762 412001654 422441908 914337971 948969694 79179726 803158194 785522535 986946668 145936378 302458596 111410858 117049476 93293363 417950719 235284448 552488918 990122975 990611668 827384911 952559869 262983744 917668308 874381101 915198165 309209280 607675138 902216866 946081107 707360576 801327012 886238618 899108557 578525582 986819660 927593340 984138539 80067668 348110291 430277655 633119293 530859584 991025840 40872644 591758433 384440537 485497687 630526694 721534774 113095123 813951212 549126439 738758619 14763499 46467647 109944448 553442036 337938001 734713052 465221316 482507683 35394878 307565001 91534761 287258540 665944120 683722467 177477858 620934681 135955685 338120381 828750560 984187896 471575661 966870168 505009828 750210947 947527348 996664488 818386971 920299324 353737509 716365359 163467855 413306555 797099618 861130789 395449106 779334187 431575752 709428973 102266264 582943298 149939026 252720656 810926278 848915999 605685576 840084302 930289876 980857741 688039756 689143860 689364856 869194341 271404322 472888356 722059105 939697876 757358886 821992993 424686994 845462743 567329362 800794893 19932496 685838496 706039224 836133079 474131792 983588876 406162204 766337886 449973624 877982836 593913151 748124186 819960164 954414037 501566973 976617122 906353000 939636687 241454101 459798151 341556936 619830427 669156285 904429590 362263109 543714045 471569800 970605201 807194085 927445402 207367172 459795254 936761889 972695848 917229643 936903633 123760273 619571417 224252062 513072728 925872721 926987975 781361297 840017170 780498636 878195705 992511254 998349856 692333132 813750426 38461360 449133095 660436228 715496553 36407226 867171708 416545941 793383091 574133244 829777124 108734450 491381693 303581446 712662971 192797098 882765157 29625128 962034978 342435171 758457062 874090323 920426982 437094456 504593504 943149480 944012191 739612422 889816791 595529928 740182219 838757187 958834678 601466152 944399654 280090622 499804786 675393569 893413430 408622283 737972157 365738595 459383091 862603058 920620187 20642237 502596771 968829686 999775552 212900061 326347468 982529914 982954431 653530564 842061948 646808476 989607358 699445737 824617292 241806915 816338755 114585235 117834188 611094752 899152178 792550741 843421308 806002124 840708474 921200464 992585148 92861134 906084270 218055399 674965627 452036190 712351299 217451979 380004455 905363779 908565911 579165633 699479107 517820146 651465522 372504498 904276512 54992264 750907396 424234785 681899752 217907485 690092241 295973840 552464336 347723124 550410311 721472052 782044714 903930754 980207139 766997066 879404827 590102721 841452757 503096020 586227830 214551430 539797370 9732894 500527174 378293378 998806917 844550011 942816549 328149219 433250669 862675498 919615784 93694491 353650167 160607074 938123449 734205235 743246252 732229158 938781148 77409332 954034095 876514906 897782287 715234571 786542232 202426240 535492682 660499472 826899225 738187697 849959247 867033472 878817515 868236662 980854332 918979594 929071671 281626660 899405964 502152529 840880552 857795097 906079698 979692642 990200097 392839625 701800940 489888077 679799060 829683477 851499942 539670833 972313685 296540815 698537932 767421385 848832582 507293331 581891149 779223660 883467319 274267675 797843107 415919413 685974395 913009081 991695256 54208587 431416305 332899295 633461329 838530174 921791152 617329132 747788234 845076376 916025794 287335821 550039457 933008634 968834633 395034953 632470488 391070023 605551019 753866798 924908406 659671402 887724827 392909852 470979597 513800552 729952035 355491665 759411645 93223434 636049576 628055136 941783772 316070485 664508306 502277072 559976239 633589563 778158801 725010650 827418054 905167293 977250401 949879714 986886051 763337316 925069776 798147116 981217591 210490528 715599404 367793597 552346431 734442694 796733901 124711227 980329860 744707641 846124383 494204826 893666514 280030459 398541181 321412399 598469475 649385202 683904769 809553695 925146226 786535869 926928623 226207487 860885384 995717043 998260820 736657346 954430157 992580442 995265652 525052498 716478336 829806285 893410351 617014032 860143081 909083542 998074981 416361577 920176580 658037571 936662059 824159642 978335006 684884984 831429428 26177851 729535623 662202059 859207961 870979696 966862406 953007075 966934857 865697604 960323782 406904233 890471079 373521249 979431356 87286211 455400753 53703315 824493304 313704493 869410290 55408031 174758043 198004894 290203106 890130669 922363982 371591083 863270595 679419573 808334064 885774508 887151749 373021204 487471441 119579315 211072326 876096317 943036271 435458899 870384359 229941758 626771633 446089938 984203509 628337423 668595493 4281170 352399488 241212183 489241266 76215863 515143901 683165594 980493153 364806706 690142673 837987682 977171240 843151981 875472501 55316068 94894640 47858 570989731 515111293 833675983 106876037 551150979 115238183 124462649 432864472 921253450 486010330 520353318 175510711 459307023 290235518 581088297 15134401 433597143 257869410 630015844 4392682 71529162 936650417 958429079 78738099 386583463 901099770 933221596 67680132 938304602 241978079 473795730 430512701 817002873 124694130 610101049 165138810 302110868 931173064 970275357 944174053 979113933 214390223 818604136 305638597 960150492 617360526 738337378 268131106 425068598 776884724 995786904 55103840 410464027 255476826 350792915 824936988 957353142 459667325 659006772 818739884 978736822 724267063 748240885 647831934 785590209 842384030 987521616 963842839 964047617 614351256 886482829 591613564 775653476 866739621 907068892 371466830 802614741 55821627 719884029 866853381 909564001 319041416 569704119 793567959 987914551 281730497 915679343 689181294 992960769 848131346 995646629 927050908 984891761 50097617 480334435 433845461 755216642 164091607 861715759 301620468 627905958 90844471 490766490 170380652 309208443 874435978 934905292 614412326 737717533 343820579 660602114 510453609 878054808 411643582 579367200 717408403 974000763 837540402 897969349 402935053 614361411 165411217 940102395 899113607 902573515 885469574 968696370 501622403 742191473 126487109 768787897 49996419 514269993 901281403 976982041 731843619 792244323 690240763 696070472 594541941 720886133 511753977 777004188 782113341 878808377 59918876 85927229 884515544 935358658 849189593 890117415 717185408 725401262 803196006 945986862 395797604 445720942 860692039 957604870 363426357 386292422 198126158 902483152 506861792 713461261 976366364 982761801 629150828 878707119 135201294 765927075 898753700 952322848 387332847 752974081 157528483 454762687 794599704 866765356 911656097 917423300 777070388 815099274 277694477 289039405 773711815 937215282 902271593 917436082 913993368 929147732 300775291 432816518 749239922 947182163 200606543 978830663 753524050 823545253 867570675 904062055 917597504 949319666 382308504 532763289 527276400 736103463 207324938 403532519 573042528 626925577 200689859 593191700 688754998 753929756 566333792 950687215 875738692 887083410 19661643 243175922 340903316 955226664 363144282 767911009 387506988 630546710 424057125 579465954 251056410 404868856 626576911 686001303 363626669 737070459 436863682 898678937 653737780 738245811 696683683 776100014 689941368 837213961 482372879 748682296 367680564 595821771 516386525 653183141 233619280 864297128 507330558 596562425 577342457 876796928 149446112 812354167 449316940 525586351 19883139 373932498 5296749 657656634 378331481 480705400 918501982 963998169 758773548 872659055 785327754 797146776 205220577 524031347 61033197 854808765 441437203 679577914 442995305 894099139 720152437 976645537 52618762 981671636 825997930 871385690 39063137 123913281 62987800 830165007 143126478 589911733 630358896 671709346 750460926 789904116 252181148 767711984 656076388 915527581 809389095 950648926 76118234 363053704 14494752 412610634 422198249 755353946 500946513 680380541 486682097 711200815 875226083 989919905 549774937 639357931 902211702 938117588 640419464 922735761 52240081 735714073 527754848 965524012 305106931 605709502 849062682 950080786 319964646 840940482 967832652 991632816 363732514 931729611 315658666 454391560 328919352 659801337 658282508 663775082 946021202 999152606 63845585 726527214 35532587 287860892 221079697 972202497 315350296 901781111 305219376 716591189 144758973 440567419 134018834 145239487 31253759 317705393 640141716 867804128 616618618 716743520 435668708 669248526 22280929 713977631 790464678 983143266 65852257 887568368 492082322 841932102 267261035 626700083 265990547 398148727 822469831 984029279 773927871 911986799 634868466 684346041 196767275 491189615 905635701 975521443 283921110 874904762 246289246 618749254 45500839 158576610 783643514 791886531 81655221 627348934 826971974 847522353 8871442 258609599 896988761 914214278 462383465 568362551 288195745 469269962 272143530 703930540 789410429 925617023 756530687 759489830 199891496 227591896 671058881 988126591 918049532 988280873 36677719 376539138 6351318 728242786 731401069 981480677 238497392 665577861 140387332 679605809 982074775 992486159 301387930 891278834 579486847 656833471 851775770 876407100 607211140 966242028 330664444 747886176 971882902 985497510 803211682 941915358 461899482 911440410 218626134 640381985 47859095 748682104 854300566 911730271 290748922 872604811 516037866 851881181 88708726 270967263 42030954 75672343 866868630 993066913 674653968 873308984 87429532 325700256 486210469 839534172 813224133 879771965 314593375 738654946 589638711 881298790 872742693 938878397 68171863 262479548 526020415 987958795 958159151 966468719 590775989 862309440 848025505 986152645 350742205 612881965 439271756 908275176 16133015 630907560 230601055 817844414 367575481 572460575 24215750 889261478 210828874 685568418 270041505 879631871 255207941 790325932 483604102 978996661 33888320 250026624 340046261 731059055 534785557 826815997 816933846 936340161 785453205 812660370 127143580 868345113 183209845 465760685 589767628 764800453 795660682 938382651 51395853 940247131 62390952 518211906 372860339 606756269 718810114 745711537 707062698 884193539 30104417 525216642 115080830 931963498 512410482 925724714 38819472 589045088 83658259 395325324 336637360 630469716 69890152 517704224 454729917 957934494 623845939 849047536 905439300 924056383 462623267 717103282 33225102 203040459 502952730 824608160 765201137 910555767 647358893 856311177 827756560 955940750 743575463 869661687 48069862 568524946 108943209 197913169 614280737 665602978 696290841 843924093 156459237 360224152 97968131 998703016 671037528 865140882 721840773 943574881 91850989 555676900 123271167 714879350 104776186 214356574 393620549 458822790 589750792 749354934 344166975 998724800 310433131 550010282 268935596 860563859 659168070 708093801 861223742 977445518 481021638 961874065 702875457 727109523 617881906 710277081 965446325 974560466 231531362 442735734 310142757 641311247 908053320 997985366 934960296 967352675 146861912 808237048 163718864 992113504 37508336 317392122 825588290 981721155 899326830 998524827 487644677 840862127 440172183 905610136 325712018 453927850 207937990 470191421 513162906 997758860 136369179 694641302 389629672 467641767 106526351 744642222 575601287 614987312 53571836 819378874 899558920 939863380 859410583 866912694 338000783 445904233 271833044 546298004 569061916 746240175 30664677 766108625 315855272 852377600 117349539 675870198 176663956 972564066 962812726 993299600 741632737 760554129 2286881 232517091 136865498 712286787 218064714 544183375 773130953 872256623 951804986 960532453 314100763 473701366 988309790 999533320 427661355 634582297 151575564 387525868 98259272 423382340 673914802 859359934 8359137 454904029 198556932 622397782 592126856 732917275 223237663 627672986 506932147 780955809 379185074 516020864 243672444 551705181 262171304 522871396 893023542 937098848 453351989 488344776 577118038 873081694 287979531 336847270 387916787 789791815 484983088 962293265 325916708 421085218 133822531 388131704 866615717 873432531 729963127 758003213 488006083 500103286 657445265 695269415 935449655 953737432 305981254 668827592 494427807 834682852 945596279 997057817 832545353 962706691 749698636 995926782 74415977 126827107 797576971 903309033 600211062 837477414 513801187 556428021 964761375 994768595 149260913 809550572 307226451 917062472 952114336 953145741 741866764 794994424 564613181 977495177 427762959 745590485 921888012 985084839 627757518 735574106 883653781 963692860 109357837 642742661 230965443 463388051 774402701 782885494 782378782 842984141 736921085 823967563 331096290 803765841 886691118 887543662 937551291 958533919 341369215 745473288 705348753 777818898 984361684 990086250 422721761 487723334 425504962 870999801 180058344 205217160 443163715 785693526 651221131 959604607 583035403 849162493 458625592 572992966 681399205 888995807 582095134 838051015 530832096 673685149 806528380 934220453 165945423 767086256 948636361 982366861 364435643 856996575 246722115 905307989 423627867 693673588 561459036 694480156 617077601 912752784 573929264 955158571 1910038 692274943 567147026 959072863 429049614 768659145 49765520 747161422 519815583 871159979 281633903 949472258 359194638 772889561 463985232 592966627 444377007 647837631 569278440 992422868 358503577 815039311 944783006 989543164 391636835 970872743 459223891 987696635 387145259 725169071 63222653 680844451 976919047 984977211 221950165 776046064 912069128 961970446 249362135 664574830 840753541 923421952 337496204 493420688 237056767 912292409 445796892 658498123 98892648 624571331 732358091 771553025 106010208 296701010 654801856 976021358 121079159 891106572 885618767 903195783 362453358 607276255 805248105 836664082 897598009 963745895 859227974 993499638 616839589 755724524 719801860 850644396 653867525 932657994 805190742 889906872 892364326 995030086 171638709 949065593 675236526 825529842 953131785 966012271 914713623 944524857 429518352 469149035 689435439 698657985 511856279 817547452 589328255 785166164 328989676 996312915 321367633 451955604 268243301 713530677 336943430 367959742 381295040 429155544 737034237 906855112 420704045 591398778 306479859 791376770 340010033 717424484 55767716 979875396 390655671 749878974 653577290 880328404 530283456 973655475 707447281 909192109 284337491 526393310 193647956 596326918 615312335 945854443 269993228 550807939 882941252 901074148 641112056 683579830 515494658 893896201 842281868 925413302 432109105 731705829 353003558 383611046 139183143 681168347 970237793 985262300 896531022 999411721 407101028 759020142 728843882 802276621 793401157 872392805 396597569 625853114 602574953 755857898 5853104 805298619 371611675 632960217 956172162 978676734 133404880 696207656 500524685 923969940 10284644 478883791 656486119 696536989 657330306 967551859 785622142 994320849 231971055 680628177 502685337 785788517 832333584 897291353 366210630 613542531 59438210 111821142 811033264 889232335 551246179 714794335 240265718 731936547 987271898 999017521 231240495 639685452 651175140 717081613 670879768 697130709 468627812 655895094 697801546 855805604 61147842 139041794 783684737 843507998 379051133 537585434 79391662 303594282 290308282 748303147 943158665 971047895 377204245 865651034 185348595 826519622 399094947 694018654 313131720 891090025 521605402 815124307 131590412 619638541 265017135 469581413 536958663 715415700 392595394 855211132 30763212 819676738 858931173 900358673 260830739 963295582 102663292 380815845 114290566 272829295 368492470 715559239 988445336 996767937 852713852 863872902 361771266 630909475 127384275 742758596 457799977 529696815 43132940 958310313 838138691 838432261 998894354 999703553 632739038 982172767 382673865 876033684 856486918 896516819 157841690 676063497 320082031 909308958 637735184 968055307 742153151 878105886 569390874 869320927 302863925 471011154 256304416 864189140 685228159 803594209 907248488 951556409 150337702 830919535 37286387 112654661 190522837 891369400 128928380 585981940 640575043 982205451 133355630 346838554 726152044 829726662 426538066 576584429 788552297 855025838 353891037 791230037 635942176 852474798 717659607 840899383 344956893 669887279 14294966 887094491 820070291 860650713 373690286 997886818 574964470 828625899 35976749 732954178 984711739 997339432 205033129 939265781 861649509 888872517 988628214 996401009 571386196 576214889 716596736 838748821 502409653 687614466 72869556 909288735 164468816 498499944 985663124 986021508 132258645 242096467 167223691 741641744 476000119 908895455 409708084 491424008 16485996 353439100 889165139 991792193 975455749 988562435 453530407 626923717 327252916 437189868 144197379 550622358 955276609 983818392 639054333 694674332 298691688 969935085 524771185 891092742 645319690 823463814 863978982 952704428 519257149 766606498 180321953 306345221 584682802 965503951 449945535 755560469 116892308 671501037 534521679 820595091 98534887 887627719 483394867 525773199 668381147 692952344 234653091 371315539 859987396 943571995 177969295 245070753 568585660 758347905 454404304 497701447 447870529 468896649 162588467 505963980 387034412 719109960 880578017 982064208 382078063 932184721 984599637 989206020 230861955 426873417 588590109 996589762 80496476 788149725 148381522 736718511 775966397 948720979 370929370 721489049 241006240 780156573 137298325 429849754 271068043 636766614 217448153 672769691 476613216 920404555 861314516 937259860 64727994 102248159 176385076 832757382 829331280 957931654 198378370 719735143 48154487 256365930 905541783 926523911 21365273 866921844 375403830 843241651 404928296 861857476 846863209 982791682 910148006 935603163 152492204 704125633 958866919 960649482 439638623 760270293 744032421 879585941 377460621 918786057 434085704 989212153 553828434 603773462 200253271 376878407 32179888 542575283 589416556 796395252 947624289 965318723 427457432 807156768 233677056 788118180 176206593 305406507 942875115 979861549 908003073 983716306 767688772 984103792 460425440 464188716 557583598 976935181 568226262 568694390 216339450 339214992 368565537 457990460 53241365 880743004 344355596 756128042 512154105 783909298 136515430 802765484 158212040 359015484 460268187 578037298 268710618 698801517 504394284 989479739 30507450 165945805 124151757 832674799 390079677 676859674 950077365 995201484 751548402 801499021 360567353 949017381 345256060 375286504 912300105 916306742 343715264 779238425 95700054 604682106 718464052 969743725 424168367 425650009 521036282 640666233 953731128 954228576 530918726 550018060 912214811 938694870 843350169 904732826 230227108 547348822 804412107 956405429 550527782 822716431 204055036 650591299 946946632 971263763 740865297 927209838 10128656 286804020 802457928 835407437 295018310 492764306 352919054 546490443 214941278 294860124 40071815 342048956 500065836 790672533 628122643 928845519 882465273 988825467 826063953 915850801 820020148 967193468 674118423 712475759 799845085 803009198 239436214 268265776 436456594 493533910 262402697 826787087 126269924 898044999 393968632 565863524 48957396 850971654 440158422 475519566 279061351 403506704 706045309 743916640 334290393 925501012 355137589 465967133 179109191 476936713 822523455 832882358 468318085 533517066 710825986 821842656 393702037 449864617 717403920 774362998 44291111 797039418 354258345 809822672 555541993 778251096 16549887 207758025 349824879 747439671 162759148 332783816 833769980 870180166 836777787 853354163 680434957 833959584 20249726 356963865 812363390 985192982 969445963 991426721 849569906 995163991 197213099 572448702 829797354 939298022 913800103 915424408 193727695 196774014 33154318 407145138 39720085 400731989 667604858 930383939 929517982 954768653 448369245 843342051 35475172 285660499 860604617 976401097 131509546 416985979 443709501 518939770 595252253 754591069 648522578 879542988 425936853 975668868 845342191 989661587 258923719 868278838 818349189 881320647 958185248 966793552 575614937 876280865 211687658 270012707 576570059 774878368 375720592 815338198 757715337 985642288 613687250 800736404 438400928 821375188 852144799 933832353 519949101 532014699 479395095 811596209 657420752 706606390 785419503 901660933 910702648 951648532 259775264 929912169 198611115 543957132 33131566 733668397 450427562 641573232 952249141 996499831 716162854 734704344 613769111 671378086 370211450 800532846 156051653 411227442 618865314 789474721 533883147 616244019 949674926 968116186 421312232 587238697 14716885 257099422 734714523 777927957 541129612 801090457 849774624 917521024 609230130 643396520 349482464 965085265 81712180 649976616 312062009 757871879 428557772 773254989 718794097 800573039 102033619 482614290 376813405 871552642 682244792 798744960 743560914 797679728 993816375 999227892 997706218 998336376 243946153 913039274 624630964 946745839 2529669 496817637 353677649 372472106 681078634 822903519 899719538 974735539 526236015 691347034 830262860 886934038 372685748 570028646 768389016 946194674 382850380 713863155 988007100 991726167 765989989 824213104 653769516 715015723 103214677 239181548 223046275 470731385 108655983 574967526 960774421 991394648 261051523 325234179 845799787 985518407 847422951 894255056 794162638 836951555 260920779 531248095 459362243 606363832 962148083 978549948 963415374 983861455 407798186 829580583 987434202 996132413 360774074 637123310 25748048 407615497 789863474 923277470 150863537 744469698 943738105 961244708 319410955 760858649 986618646 997226335 356340539 975708299 357129311 667008335 554832614 786149966 609913960 612414380 578092562 832718984 593575451 621793709 709325161 775962947 718177625 892570867 432491288 669585296 334054282 931396935 815219029 896560521 194506382 586504444 981387791 982557812 42025958 343137199 185039459 381743456 604971051 741675115 306652554 710588884 364660758 378487961 290819739 819428933 248429413 352584244 635863994 959744668 539170570 976111408 33947380 632280232 531670100 726408622 760683557 954524372 201823433 689807980 100928538 281900497 562178384 798270383 780652592 839391581 190551628 248391082 300398860 891063434 964989224 991832061 5494084 630404470 63213008 91500761 48721053 901826950 357788873 498981037 199447460 207698140 915914359 994171696 346522191 929012052 655532756 925042235 506710628 956808570 284718988 523935100 876840144 896362547 325864729 358508368 741408751 882442929 255721283 458292304 201788787 214624787 586481303 919926156 464223058 740505711 399757724 933034964 301743776 303213389 775877838 895640244 40797284 699237774 348845985 453447152 252165097 900006639 999344336 999924637 244295593 479660674 362627089 474148167 411215693 603330790 107720591 976222125 507339728 898987933 822068104 856483172 583497396 990448445 952293321 979418690 63325281 341262095 658385457 706564148 989156634 997588040 889030395 994533096 643241149 849971807 830396494 970427150 403525445 480646401 902966897 950174278 162295195 366295016 367261376 933767568 465606646 969422652 799294368 872664007 582641789 858571210 847955042 897786922 409361731 508623108 708748324 878365748 511826698 613187973 867463846 899854481 625311528 821245332 742509772 984837373 704517488 864212813 200021047 889423380 580730277 965782413 541050132 670103515 426634228 547968887 675770859 828475194 64042659 628640107 256297332 737921421 284561203 818433953 287781710 736493143 186043347 617268528 832244665 875086709 665646132 880594854 725663983 831794335 218615527 544376714 29828929 251944125 789586311 842484164 555351888 986388753 932567117 940739118 230249784 330206909 288377020 768719528 843565982 993344921 895580391 916602677 11203625 866658412 872062491 943256487 379356151 458693089 738031488 932135113 350019323 793367938 587660215 699794055 517713862 789665605 74469107 104112898 761736421 888082317 176761923 975798231 359589511 470295733 209374886 518061807 705278692 937140776 278536546 681008867 621532320 918444411 309684350 582778582 429989806 986920793 882708828 908679217 108547289 527497655 200585924 478542607 144310176 393905305 110030693 206995535 710445672 948976922 997799181 999998177 381742065 391571425 525361848 593627587 325324374 480493708 785947075 895177018 846598257 861094828 661067046 735850290 661571183 966638854 154632684 198444599 985101047 989428194 568579242 805847842 727937923 851544013 180925126 440673376 826317023 998652580 883482970 994085364 633884325 948988864 119383140 502955781 974818562 991504762 333702957 701957664 238370625 307865888 932504471 967230507 466164250 998789522 491472124 950328028 816395663 853958734 349665221 848424944 317661165 869154206 716198534 832558375 506673370 861777690 305806000 529662483 149064141 823504068 878027792 928937505 127388145 846173010 552315091 960451611 676798835 720591078 740166464 952144174 791752727 977829863 838677079 857137805 390597193 581037962 464066823 851143590 404050421 878665230 131330118 438856908 644070799 836543214 820698516 875430341 677811030 993811952 940602177 980490101 114105127 716536885 106081893 975796739 10217860 793476506 57237259 733518354 300734541 355085491 604508047 999335201 753824671 891535912 372702164 568443539 307973501 895877612 883167080 970010515 528814447 990132210 810418885 946960539 492998124 868904893 571340745 991055006 904311529 941616198 241936846 946837865 800003979 863514044 383248084 894793453 715345832 771283253 632052873 802613068 249330699 763993971 727650187 847515899 112012262 450030829 974255335 976764921 970697105 972441261 625776235 696629792 881302390 898629183 452092046 895976669 482081194 806375009 520423722 856644729 283222293 529898231 549852809 593484652 993694696 999325228 603525081 864779256 231068071 901466114 775237232 969115216 382565793 952755756 825657438 903858120 309869414 752378492 801449867 926794907 854132552 940188126 382179790 910137524 832974417 966826527 102786497 847046934 642304010 884626896 822767324 911051693 795440815 972194410 775682208 988802777 560471148 778272311 781251831 792494951 151296432 672380623 575259668 948147819 382242932 415708897 581004400 687407806 745061341 759777011 492874210 510577618 913215106 936981343 94687870 902657167 394395085 945316201 637119039 893071243 584846784 896944533 439778984 912965857 527293649 622721045 64811519 426418024 492408949 643824233 86947706 766209089 597893413 687500863 958454342 980621263 421762424 926816217 304913891 640584033 693367037 791214576 383037881 816368366 986315274 998212702 755833060 780866773 522476039 837360193 453716599 635377316 27018150 478829770 969832530 970073071 31176219 797837076 333317649 475334087 869334648 961741639 553150594 600089154 139742008 404053195 588208751 814509486 175639498 658797532 529602970 750910706 59996411 248486945 378393191 898109801 271722403 741232590 293302058 578368334 512488426 968805798 359631814 429078377 854129877 895851676 406142105 933289069 347963901 579611828 339896578 492093780 652997994 966107594 928114522 938871884 631713800 781658319 207313116 862902104 395654604 398076423 56244062 308524177 415124280 865437070 42061945 531037086 616472688 709895699 139954990 855006662 424854190 783514163 383171135 618135809 621643212 624791315 987731702 990386610 920815747 962707259 246298836 317640690 711148901 951211304 918713142 938938772 15781512 128297705 471630059 475641670 446750637 902203165 640113020 984180696 626560572 985848398 489490803 819647174 335334951 524168984 152987421 272636427 75538588 592548657 373734131 804912828 221123078 583276873 803061316 941337214 774991653 775965812 857235511 942602915 342433743 767421321 911174717 936354650 102613932 926237153 333871118 544654752 143981999 908270444 795621428 882900818 335037375 993251463 387482922 831652029 494829995 698834652 101305510 822990086 298535863 841120372 124739595 448372500 960578975 983195074 875435564 967129290 797135947 993163405 808149561 902568010 849521239 979253632 306256827 912219221 448491447 894263849 824731047 898557965 128949344 229541374 123244579 985342042 663216478 759132028 897798341 952993353 264702585 785451556 356658943 698715200 878467154 961849263 448624317 794665506 554690175 852736063 806108710 835141444 481815927 818914806 433378030 577084598 42832392 306002396 187430961 673051934 492010033 990623378 205692361 639768457 128375624 564226215 591803735 696579978 833573107 974248126 299426281 929712276 210479064 337608961 368887191 683658045 496998762 570421798 15953065 592311413 830072775 915544287 238941930 849576898 965962245 980079071 654094641 794660620 68680811 672425335 671576938 760635973 378948198 763859261 309969678 650472523 818152720 918902618 850230123 856695927 283231841 767190755 14010547 280938739 231181145 650285031 989614130 994443091 721323661 733568378 386688896 880300913 981805538 987164349 521287946 740674984 530726727 932745563 832042803 946779772 122813878 785665117 935906074 985063744 847854060 922235878 347361037 988252360 121202316 600102536 50406116 880933510 615086693 863324001 884462273 940300395 467027000 841381807 490603932 921788577 540717602 625718182 157049299 334694819 143218880 621710029 478853371 914342223 760421840 875258838 99865364 842730294 911152246 983587528 470397800 961597370 98543088 919409959 43753840 968475691 355899983 746428212 604320717 734233912 414201226 885268842 185873152 681070884 772658012 780304389 813153007 964356093 85895524 871715814 263333121 863466565 364933977 660053399 101228891 877096593 781007314 952438994 737312830 741366833 733134217 818093858 490567244 635796106 951063783 968827947 159733984 430481812 823435770 902954914 478420474 973067895 436938756 821675816 594851034 760386018 370434626 929105803 263926275 304306097 609504324 759102204 187840092 894207298 668032465 808608738 862729383 978764595 283239264 315019316 807198667 998986570 916783024 940089135 254765187 675170248 425723884 824734494 10730537 81833540 388622147 427628426 391027474 544890492 360643880 657656432 679364971 715998042 529783879 558775287 868152891 979355798 476134494 546009329 383072081 608157022 898492784 908220194 971293375 998262788 543933647 841148233 814097341 961903574 91384366 835367298 870901828 999023713 767181979 880467248 861083608 947091105 130093467 759647752 153186505 266179308 602857028 928192261 423674676 869862618 206400139 637411121 795433645 957408222 989128777 999553113 933569472 950457273 14182732 49795046 200201839 277811455 659707923 751395907 384878454 455325614 862047266 955636737 243370814 416371125 654543703 693250869 332350053 796242146 179206900 214464787 161732190 234070344 110222439 366092426 849328378 909170069 421743535 862509808 611511082 814881595 274913845 360793839 977275886 980826272 715995732 940915727 913816675 951998148 188844505 809050109 998473052 999645924 938548837 996899651 717667894 795238242 929809359 976314901 428262258 715842696 373589672 532791761 468880229 621010357 50420359 597735807 771292926 923747945 799672562 889238558 352368533 536304587 53316470 966344771 621351248 833772038 613768786 991680256 764321646 812541687 303352992 525653660 936324739 945691419 308619970 343693745 115086535 600538251 541780439 710278895 350859089 680365699 420657807 803199071 305096926 996550426 450942709 817196590 832631292 949252058 52729820 856480621 427012774 566399078 260165655 568933334 963732783 981493399 225708309 799412032 426008458 715078395 376641869 896403695 119033012 437680025 374058619 669004188 888540117 926496288 227287616 440059889 928706245 962760703 313309207 377711748 409159759 519980582 206366228 682721111 488943432 749766646 746701128 852706837 638311764 792658339 224334915 665430798 588448956 849834889 204640473 810770109 882244789 985424266 170855542 508434186 429463310 679281392 288762211 335375545 759074814 980025314 943712665 958746882 143209753 237086272 31619881 199769694 51710717 502589511 124782786 766402479 846484623 917852274 270496608 613154237 477849502 573603041 505946310 790506934 243297503 319648399 403494456 987817854 740230638 910450030 996316887 998894656 235036739 342580180 403998847 619629491 349818168 956271100 196666477 889307880 93371838 890384817 696197045 738563580 316592674 461516293 478311951 882586664 789313267 994203483 433328901 670081820 814056784 958119048 988738727 990860750 123382517 597246582 253703570 883284339 99993048 110812080 39874079 311255179 41341806 584942866 529730946 847240818 675286986 770011595 178056770 817738119 973428011 976091452 696494212 961402453 850763702 960475922 171601284 970048999 472986244 936929664 72167614 108023116 384016113 522901991 579539453 906123518 331180678 542862937 92988928 165040513 676489459 825930247 76451592 108271864 403971924 431679684 756923974 916544554 457866568 571340076 633796130 833385852 495160157 852647273 219307387 372832126 327541253 886661055 890324574 987468099 303924046 855710839 446713051 726538915 703693015 717842622 101093901 583271119 245270205 591405825 837033252 932593244 10003716 250075578 858262285 926543343 880234608 964050302 306169367 472403705 644217200 757918238 605047494 893718972 885232189 982351381 751316215 869624848 926936516 979048923 624707929 960500264 189777624 272196723 909107493 947284234 908509353 950502588 359721361 795668253 243965046 966479273 551003740 996855722 885259761 942024521 809604926 981084844 175174359 255617573 50017456 271969168 225034036 365617853 11019680 983408757 727516633 854148616 33152134 453985884 728168483 916990208 26851199 165447464 674266292 740852233 656665432 949718127 788415871 789568988 207276507 802434494 654398156 684914911 612811715 824907306 652162416 795862555 399396597 841389659 309975205 529997826 836100724 840231668 740598048 950193632 116623004 714658089 86319708 919274194 411505938 972899118 693188674 874709356 651341014 836671140 939450273 958634598 907765591 935429533 905616511 937548335 440530799 973154384 605843165 950211138 7608478 70285941 788879830 887772869 843372684 890024646 879434266 935803156 550484347 992110352 20265872 219985368 497276553 842180845 318210393 539008183 604434849 665755257 297990764 364220278 64077072 708925560 550818854 629888128 151850989 489742573 228401419 554557987 213285039 633646190 771883423 909221607 765361701 874072360 146387455 647654518 405344005 778837289 54765170 305622980 691090701 751248255 820117170 827896829 468537457 840215519 847701392 942291000 552687423 757246694 799272520 891059414 907898974 933541561 209257908 897106995 684608547 746839786 909738780 957039031 408779097 647495375 593951938 816460971 109277478 304848063 389234923 894734338 550041303 646239680 497142163 558635815 531921272 885241407 692136631 831746365 916332675 937084450 476053643 991684631 213807690 429600952 9735085 116320338 657521825 704999166 350327105 787148920 582315621 967847803 855741382 946034325 263981318 334373460 260670579 322977028 756889615 991834558 664949314 769608933 384666357 826950654 684541950 975435085 775771812 948785782 611640983 945365949 775504533 986077764 70605437 363209245 281382548 804771742 480050637 707868608 711249189 828750463 433540883 769545158 433059815 711288765 384785628 578441194 330108890 858364017 371876907 937309501 29650345 470919006 227910733 255228843 554779202 705046847 937943483 979145198 522378759 871927804 690485750 929891161 125860556 591480672 87249745 501774541 473488520 773137825 117413480 829674635 563069602 639084378 623523317 987425628 916857333 925587207 906283759 981330043 272627252 524074177 99408995 397539349 964863732 983757740 267079238 793603927 688286589 916044353 158750878 731314008 139733497 832114459 766867075 997913209 127398594 741843590 217019882 496114564 856569949 925175827 472231461 679084483 301075626 354040891 976514054 980840813 268320494 534237552 298198697 957217708 438187560 742827388 733350645 735433440 520115964 869231588 438818462 545314483 965936477 994384175 905045 835996646 15199076 146314489 478090194 907035246 324973544 388965076 290557449 979187060 305389417 643514168 989807268 996332117 524232857 541210593 314654882 399495740 299185151 899204699 905647601 914238774 592940246 927754971 564754132 781528029 783157634 807246361 359812776 865441648 917080018 948872428 256502704 847513343 425464237 876946623 338475760 372669719 503976422 938182379 28301742 494669650 703351110 872970994 930196157 970511394 969334629 971111480 766975574 813310660 244563435 865841012 420363587 717731871 196521377 479576423 913337832 998354001 89178573 202163420 907490649 942872834 934464251 972973736 408928011 886639909 156562715 919843862 335168748 687279990 296311823 701871610 364956444 888457175 109961488 594521160 714644922 901169993 425648963 693006286 7175706 9881402 622569340 839958274 735547730 763859915 618224235 748914245 500505601 744338833 206557551 512088646 117902973 324570791 427433416 855035879 638560268 706093783 480983071 596507112 252268415 332148079 475888527 907547532 857356097 908566703 260938687 866369776 381286957 929818178 509121398 804270569 119201153 454450725 475532716 959831485 776715715 871892850 646001348 649106805 942166477 964749082 130342258 401797411 227742856 721501946 123500942 375865560 773796305 823272820 842778951 851227974 581188477 795787566 831717367 921925408 169495352 531296584 934847915 957353108 896572914 952726126 795570086 806703621 267589931 935319434 962629504 979842823 928458778 976173021 402554686 455329464 703361822 860492302 870373612 876758864 131913645 564726025 193513619 919253838 399935337 743764434 107412145 416165228 355306570 522926183 637123496 914759634 852667699 893846098 27008724 353079739 454366995 693202731 525225380 974722263 465592945 661653277 421853699 684128193 550952232 624284493 975227404 996389971 762092148 956573315 792791692 891760502 757198030 896867555 403295475 934046420 697654106 791669248 298044017 557658836 469582832 626416867 461909598 594874220 615607780 799495245 164792427 210931128 561624809 961990500 404056822 440477253 603591039 724202845 787428692 895385993 895073075 984156492 414556090 816284892 532957181 639186066 149629851 517140826 250252001 957805891 311992757 755095216 942590806 955111126 920627423 961066483 210630529 967592705 478486175 862167564 361043522 975429126 690046855 869777291 443379965 603175328 855021755 933093573 616107317 973979928 233197589 556332905 745771050 827469625 627839567 788849072 300658912 964843722 519430660 981060268 919223049 941222825 228873473 987493963 823166253 972727924 438608348 441626289 161639837 361554272 3972261 203412984 944425430 982764382 525252414 968600308 217953411 386978964 783620736 997953202 89668836 677304630 377390006 464365374 335385476 694459427 657593787 965522847 701047911 732150813 877369893 956914280 809082041 966906371 825494759 832644336 82996659 560536666 189748625 564932549 568995262 792698193 849107641 977624999 866331104 995835883 593720892 603233036 543869170 619716762 25490832 90193367 602774888 640009993 142177484 273812947 691747148 709859896 940649202 982825812 151230064 648478938 775605889 891356723 11102044 116030367 336801580 987027791 397977670 529660181 73893304 135580605 833991821 998403388 996655346 999942331 949762730 963966904 166829610 485852825 910974873 978393730 833301469 992267377 212363789 511780412 253689057 405085647 170807198 945166208 28617469 630222653 78969548 536078286 233587092 570877793 810743915 859673962 611062864 708875517 326481092 997057840 90193992 997383999 439167516 495774678 400745648 426742256 175728806 935530489 300547662 864051180 27280301 572465256 620179499 960965568 213220435 437716859 615611665 753499713 7062431 489219192 157343018 528234867 342418435 770925615 551328864 605820604 654632214 884089420 524295135 878782284 753603871 817284679 599198190 658323144 141032601 362691587 467523231 928646088 890767319 973459315 687958998 973952980 237081845 685479188 792452261 915330650 761860508 815393989 406716220 678597826 805448208 908817521 435377998 603772738 625835050 728048519 990867518 997998458 485695508 519189152 948331664 984398882 186879935 733417861 893741261 993986383 346829344 670183411 574544541 680673511 385246502 838359586 314409967 887769253 45584495 902069004 975764801 998066766 494877129 495119891 764557359 897301921 91032791 951775490 381476005 665625700 338978101 632277374 519321511 975097263 883313357 960642556 433900414 565976379 922816558 998144913 330539680 953395965 725145361 809378313 925788689 992223219 556317233 921136397 190792583 926665453 82608681 817331452 462416845 851324727 671481776 777288330 636014042 888790590 576803182 810442972 182856968 835223464 347505538 924887355 416571027 773279868 976175992 997373414 441936195 792305555 50176955 968180977 768528509 963155968 405809897 671783592 856933453 978527613 110801864 556595131 895097780 915744702 308030164 834716411 360088728 366514661 800782539 846601811 743750413 799998362 203301825 896654708 155156052 541727082 887845119 973606554 274817380 521912854 807144747 945389286 840773593 987092004 105601699 123246225 992799162 996753425 937181120 994831171 793665793 928690079 350459647 517602673 905919626 948482064 715396794 976019943 362530631 507533669 185013154 327689757 89094204 541800906 863494085 873040070 311813805 755668054 434062473 572527014 366895210 581464683 256251350 466151386 377515965 558404614 993436418 999835534 735334660 804535345 4299990 683829283 104727944 852112706 277270550 767661741 373240273 848272054 276578149 612545258 55845818 848076650 419024002 641458562 783475518 928975501 184616194 623969454 622895072 931731520 360961628 962180817 341397341 465687095 194504455 847237411 280752391 461495491 767110613 899204219 823313173 846655135 32081967 982183256 931751918 964592530 750714918 770425132 616571568 831262116 924906578 948638609 483306521 553394724 690000464 700631189 297298864 592553638 811756567 953516747 598945793 805491203 578276831 653047034 748158018 885578750 775088129 918945013 987360424 994004583 807840536 911193262 209322499 549624524 772419962 896147590 240446898 851529054 607780140 620523379 910814377 990313328 861671501 863162333 22454027 835712828 931015578 945798140 231945553 511166512 296458620 528507395 927131866 947293067 970927205 985056748 806831409 902388621 235929739 819081507 262574228 996914874 36294128 979405611 274736349 635790089 94070023 640215626 477160048 931261790 539977204 896165386 666242612 679228176 591709177 621900883 732545460 885222778 433325455 850994831 567317328 642606636 417410944 909967710 797803790 929302793 96712774 706055417 924347911 934083476 9100108 877758489 745345724 898988412 318920849 625063745 921567193 947809574 376129732 783188115 230908635 989263401 303161642 579377645 878383189 987895950 285559379 956878995 135001008 984326903 124640175 954252435 595193637 738441618 87945666 390753589 601284054 970489527 325253984 771161168 973622615 974387997 805556414 988672832 37823531 400995965 366711302 886730014 443829898 547462113 426898475 658433249 409837268 498116823 362800992 426804349 263346269 826534849 96983687 700148415 706096649 846671798 830796650 924564292 633497345 841061767 401918320 489270845 615215625 711783473 286537492 774205108 687503377 753597995 489439735 887739515 818063609 974435835 509296926 813439159 232744420 439591047 406616564 692411276 147025178 311820559 153747834 936267518 276735164 478018545 282665432 977529638 489943580 904653055 97747877 376474843 892243956 907409190 672673944 816399417 789082344 930407231 910003089 987652620 941856416 975784872 927077618 968597459 705691130 868024813 255118709 401077736 94872478 536915255 2307757 829246976 70850835 301953003 992886016 997976216 878542068 994547214 26540152 891652806 927523304 962054085 687703226 922398840 199039062 334294984 504384233 860701622 714103700 762668152 847498638 894261783 907318801 908272617 829298017 974770572 885188896 997043191 349657837 664450768 172718725 821763674 92001816 262292441 3096510 166145585 753346345 791037533 862411218 969693520 576277714 721535874 563780079 887059214 554304902 632487698 563581245 626822863 961663961 990212281 442668737 805008636 135729207 488818077 557289997 619346390 495969888 723052472 706052267 780024580 35778574 546157342 743215217 867860627 893622312 931749389 170952611 834268147 865779370 983119382 910218779 969331369 634767238 724195256 417820380 651708478 25840738 814822908 194808159 532099303 964367547 968757824 616343699 705748169 568186140 631066417 978531674 997516300 849680558 935902640 911983917 987456804 359271118 679308307 125108649 448146011 691757000 732334851 268651672 322107537 90606491 671745702 558751692 886252239 594525482 700658613 866388811 873970111 925272668 962581196 43077692 751544197 951755154 963769655 25070750 29736942 884099106 901637027 812438580 943779406 771580139 881155283 605788241 918993219 82442449 841415974 534340166 860113072 29269359 253249056 896929424 947154849 665360861 943624129 155600593 369803135 234145756 927292679 89989142 575478076 35396041 260625695 155592043 999888467 195442183 934762894 563251942 747604026 53832160 132377474 827107629 940933513 686747747 850843112 637586361 963948511 97194814 909821472 334536178 915860848 699954954 992862180 403656336 840266921 566087980 678790957 333248641 729110375 463972710 577465528 273493216 556471584 713776086 743373765 375244700 895260878 984921551 992531559 602811645 792423501 895003404 998443509 791889203 824564590 717203370 932270121 189724135 576716740 556241067 818914720 481749631 602926009 345742181 697188420 299080604 834789409 270870224 650945470 551594483 984208867 53285979 862865001 391089333 943130499 91710288 479766461 478720946 914289768 455011710 471416755 205373611 291945130 652048788 908458843 936484766 976579665 40516825 775763317 493655020 799326484 936050678 945883922 857816836 923123828 704308360 708496666 497264293 894583485 314059510 747453450 228818278 342801717 397346403 785891020 398479503 749368066 42407894 427258617 884369325 922957439 600002678 947456071 310451430 993459207 643239546 822092699 634984980 803410850 464275350 542990374 853179567 998805877 676673352 926587869 774719650 841001569 123582960 162063994 883896931 891143646 243179866 957207496 657794629 872101004 771049615 974778694 247138412 344028797 815831629 891993901 582047406 586354273 862476372 962436340 979468268 990658493 967468183 974751650 501450646 555264066 365996723 795791188 57772182 696251103 446610748 714693029 609300923 804395986 202749926 336987309 914673882 944782880 615920669 866156293 866440455 967515853 708892471 988893898 821840545 924560727 558041780 899903647 644788810 884379951 723011699 765028581 428041199 640699229 899859847 949596366 648103605 650553573 555376800 991909591 850146505 997979468 217776008 455928968 659888807 854223946 209053935 926466444 567175498 570707097 975820549 999367233 629494207 822451572 949763204 989302196 982993598 989734567 271684761 717039280 36111218 730684176 548763086 589251621 117743982 846866326 679302414 984861535 848669947 974013229 59371383 959585506 684961559 844071446 177975394 528093251 462151493 810307005 694879004 965431787 524688554 912536785 561487975 904905534 939453940 990683079 849150590 982137110 568532744 812742240 352619221 563675430 220006288 400556626 588044068 992112738 895363464 912230278 929675515 973455973 18407151 321527226 165296131 216458283 295560316 674260036 355327221 740293578 246010819 477381540 789718231 901768087 44079744 472006146 905159071 929327522 571901410 649671101 983274698 999854515 375586760 379952315 624564826 690506087 960414181 967178121 603489197 742281244 761411277 896258921 868040492 874863249 336379492 854551591 67923868 992872364 914618368 955695037 167377352 653846182 54024915 928543616 854208300 890454289 625144424 819918099 583264894 669791721 268092594 520438303 533063115 629387017 347881805 584572974 943942076 988704940 615308846 797721731 368313878 472523792 117403686 293355569 318775800 651360055 71439052 256747581 200790607 529962786 430892866 458299523 230720780 572346965 316427748 858908063 585851538 689922886 5779394 696797802 260572005 321288840 125071116 353173227 423179743 915073440 622465213 963144777 398191974 828236383 444467674 567449103 980100283 999089643 72545207 535359045 140985840 359011001 411947754 716620553 635676068 818770051 996889702 997595700 98861552 326708959 103207684 362878894 696239564 743038186 751343935 893454852 15652612 43326614 725246781 973156568 387304711 534720775 801281003 803392708 31061984 720324813 151770040 233234475 885070464 908696820 989009132 992833933 264774827 814049931 659137305 907533967 389344876 917817182 851082227 893002688 176097573 761056469 537910396 741123379 784737433 918463256 171000373 353576201 500031209 641678076 159832567 297746131 568407006 644410070 47455646 976528578 611727993 845132708 218570024 427974422 48455125 998177886 98929937 279257946 291704983 504735015 699478226 707880558 858853839 921705513 117972062 246823448 200207796 317222262 97755120 836445395 132330373 293389657 507913205 534309506 568446815 966303085 790463330 998217067 935069857 937824119 141916222 362613029 835861194 889445351 337270192 495434227 589230682 730002606 189129714 575963966 733373731 860511236 481285015 956404476 532393653 633354557 77669819 317824404 567324483 655160309 202249249 353254161 766486874 770308534 62200181 897585505 396946197 744617395 856407017 934455481 883667745 924053917 71466716 507865031 889840567 937765424 398143695 704481820 973695617 990662502 141759553 155368614 468470535 970995676 968530172 999189201 697999546 754254478 321137324 967020278 651330748 837989311 239811241 875506395 313279609 906683125 365676670 978557442 555779023 754243052 482316222 852862446 21777804 903868856 852401052 864252969 891574925 943598450 810193450 892015090 283734438 905340507 609171219 698252360 352182601 392930407 322318693 736497691 962236748 977240799 106891112 435507575 223902594 720022644 191171155 855341494 635456619 976729444 752262935 884571804 472505803 735201076 152519929 957952482 314174616 629291919 151551220 639147954 419968493 463369941 425970956 479940204 923760825 965601893 305388681 814807362 393911353 451077496 258205394 910452996 748818350 826067208 409738943 668449030 318489288 857268036 33773708 956189891 544417138 992633757 732152797 803711525 236537451 910074334 465946732 532286690 292735013 813469144 268716381 808657279 73817669 488463334 933936221 956069641 637979794 666845805 925710442 975153625 181742761 866467099 926165507 980468814 448732350 781516895 932796906 960224803 496326735 808498960 979873730 996152597 333629004 459975020 892624268 960041006 535983411 907911540 834141644 891454536 986685662 993846709 947999165 950088718 981362782 991278812 633227303 924780372 848986670 872693474 761117642 815983930 727837662 745206997 547154526 761624484 715126188 874776790 466978363 895509631 68104711 872279839 938724718 952897697 159841384 512806228 164523894 310371810 540432722 894000739 213169229 568772977 148729118 557479995 518866269 830814736 817959885 977539959 533762791 720781124 489911146 871958592 257678977 460301918 540453489 626899962 155947251 323564363 603861829 949924143 540652869 684378808 569235280 780852920 385019933 943819263 766848739 894965682 28413532 611219848 515015434 860756189 791268911 883396731 210870669 552706404 609457014 857264899 704932232 753604632 973346633 992983174 257441900 312004346 475679144 564857520 448254739 512580311 201665157 687086422 691207083 815506988 380585808 559732825 909317592 992202010 290981488 900694073 359506405 936799546 302240874 587533381 477279236 997350099 825447322 886319864 176378720 693827568 868268687 935407469 764391889 922971832 213550951 391797318 528476029 630286647 497188838 814920779 716244986 805791265 579290309 883674926 848238575 935643239 897583076 989849180 428377042 607967509 641938865 953820673 381553331 863317890 504662689 531867280 252089001 665253002 13661335 688080298 124103566 842204772 496433699 887064434 827353873 919843551 321882883 545101185 854704813 985782330 48549835 775436442 168179996 608522298 640075445 909880502 390304410 684660643 393162759 769138432 40530243 209707879 334445888 446267525 360312195 916405444 389565865 735603990 823090719 882869012 683961639 687129201 208089910 240415347 593561300 668015095 976243563 987389329 520056255 817588618 798148732 920771651 478080390 920049784 878132206 913062438 5931487 791527237 440537351 547802353 437267912 581244822 170457651 361982815 225050932 501009076 301845498 682399839 858637832 906591502 423312606 702763408 342193395 504990079 142316685 172597131 807523842 836404677 332152068 858544941 217951633 984573047 714315003 845694219 502599159 614662234 409026373 912784287 168371780 693640970 10490618 212366544 353387377 376042571 888911558 903773179 2153289 670537061 775680832 804497358 587720427 618035711 147669544 744070258 649760382 948876153 876510252 999541612 63755234 629882728 102800091 177713921 146995127 423277352 586649078 588016433 302840723 699460749 735282753 778315427 712968696 779709359 126968585 212322091 866525036 991121707 565980121 874471596 225676761 689460132 423032522 643689084 960959100 984646476 181838278 919448320 239944084 737840233 174965083 708563318 149058809 648663655 275483305 718658250 383157654 488470821 106300573 556070550 178895339 455422879 785687389 961235495 522413279 880557279 858266068 952521884 431839987 888661612 203772041 358606619 831422761 958028158 604453039 670546649 369993226 478095341 381022288 583606283 838787622 918508252 905497963 957519360 615437602 979778897 881838538 942638997 977592465 987540084 894397573 935559717 724011973 868885125 914638451 940344329 332471373 345153459 669990140 990185196 146818647 328407338 909342790 997549360 719253689 859522056 289511364 440503328 802431992 890718177 745373487 941304590 618706989 849126809 551322561 651877797 99915175 583165425 778815176 953529062 714595251 919644595 562652210 997760189 306598666 546714259 772675467 823430820 871561207 981671655 602007575 779244252 702858969 844304436 741317809 856305623 792170648 894323428 867594335 929097684 847660076 983625038 594329336 622777442 256586580 858782043 68722629 997615528 250054848 461400589 221487644 742971331 301860447 896454240 98617966 710305590 476620117 583332466 141738748 381515661 860444748 991270131 825973831 992216568 258576775 299545176 805230307 905057739 163215655 650507549 147778547 907659709 461503355 893116529 543928338 965857153 708147464 820954017 922597146 952499583 155183999 442614996 67702374 776680228 1975459 595262622 730681934 901721267 623317229 889083357 267536257 374461166 634228582 937209471 617352373 625883287 61546397 917435560 876271385 883436372 760478098 961335668 726993817 743150720 571957456 848002773 134847457 389547769 107896679 990264110 104878737 259143714 181077795 699328638 95091638 465283082 285171056 583783760 245097567 579470549 6938212 603213911 951133927 969596046 788720892 918755361 111435739 675422600 148716198 410535030 605133242 782285028 957274965 959417021 755972111 833729916 71567998 422644087 372185382 744542037 539021057 611018772 71658965 430760344 734300909 804735327 15153646 355473021 943968529 944193968 148226640 649001520 640698411 644184364 218353665 489560339 650439922 842978071 621173404 646946379 547849113 583142954 47384150 157198335 906982444 971230761 216780036 754920791 828247300 849130556 164285034 277496426 103141881 811131846 792172819 810505684 743996590 891208515 874432074 885873507 865655133 995505434 734119766 873616842 580288094 675664648 832654053 920101662 731227721 993537443 239912070 636839231 407478077 760367461 291129369 683680756 660783392 785623547 732357237 741178544 875536572 936233403 526791177 548408814 659811504 774650692 194621020 947473510 420163672 814798110 312016002 988500998 606316333 852408927 4846143 828169066 853841140 975195354 834204495 912807480 716778832 891568289 87928183 237276690 819895728 832179253 688655594 910924733 18982471 36708359 595644740 774550743 402995676 708063489 569303974 581785045 773732208 871144723 907395284 908543588 949404469 996922217 366044907 665272739 599327648 718630119 663837846 834941763 704258611 957304224 4288966 958444240 190455252 831911610 421347648 799568591 76169288 805238057 895293066 988974519 166248881 799719840 727327192 990371622 389636475 912173302 832891985 884193446 217390720 556588111 785249352 973908552 832559219 982919654 195661826 349621700 925228466 954017129 572666679 758508919 466223234 799493925 894254757 967564157 976519846 986909513 911093977 938663273 742228821 775252893 488748221 950839487 595801625 798177078 814762216 929416254 664071954 894586874 553483565 807276183 757152969 820001020 720212646 919040823 86700158 298436426 286200570 999844535 421075162 529623876 270503511 479932798 525234767 818828530 968121720 976524919 630034675 929082459 494628023 876586026 487741070 646320591 649399337 850769366 817286173 999257321 821785995 863746273 893878546 899113296 116119009 193924606 800472876 909137526 704514718 792435508 130726998 752135277 320286148 648317668 440397290 608692387 985265709 985441142 804785938 914002653 170755356 981940266 168659062 777818340 177674582 625911617 204166624 890355890 623361281 839682014 26509803 551267363 932677061 936110817 501797156 815029479 660848323 801586003 789362391 884574811 198053807 526207312 193909154 214316954 599952688 950848223 742845845 957098660 40684093 609920678 800594848 941601791 226436153 876434414 72073001 964124154 28066400 568196391 463539100 834890006 143673660 385373431 613944169 848000356 510660556 541671047 869429684 967459215 590699740 611612788 425681831 928921831 75312714 396813098 352403946 378615777 635285207 962521479 793274017 936985687 409477675 820838355 73151296 402227340 649810726 679204347 765492259 827966641 601341249 776207122 472390368 595538854 2062878 634478527 318032892 533933541 506344123 816113784 606229854 853174194 505166903 690933719 827249891 926937552 603249502 629851994 973003271 976678356 952374268 956329405 667574479 916807765 969722763 982301306 587807351 809331576 467477143 781739490 979084034 988349656 696604372 708147108 751957363 883112198 673397015 769964468 990560130 996117243 488658526 552410997 794666166 816624198 146988148 964300267 765526884 881640643 885436958 944243346 269076842 418992188 896151255 972238370 65307759 817327896 592457399 875623448 240329851 860566762 479579349 734237022 123688278 208967879 497981995 896446194 418652224 894396956 172712132 718246555 694876168 862324896 692718672 780442570 976828815 982363572 123958019 216822112 719615610 984190102 452714638 568806789 628219712 901352719 37509046 848772539 583749137 613394776 11107332 904392598 375879913 994054649 571110891 899255321 811855425 937469813 907400781 940349254 180264873 537419213 337361513 859727190 978976373 986781337 682123129 689238185 84890198 235712662 522932223 832401161 485699767 576727892 893712910 995433551 615494581 994339889 943797231 961669215 38437042 816510676 112249916 127843458 975864806 988715433 128801555 981387684 461684475 521609085 297339123 662425305 742089978 967885972 419251366 515027428 333226369 816971152 952965927 975602400 30804760 302804271 527606613 848223163 519808179 631459458 882112622 985197091 891317592 946685492 460001746 850829203 753506265 801922954 562690741 810490127 50844093 362255036 252729332 659503994 458104165 571875436 395443488 643061768 517634373 650087392 92295598 656946755 258414382 265389666 490416959 520768365 427746897 906340988 589039027 701825064 780974653 795988101 303912818 767798569 404584407 423158950 614474779 625632554 306249544 723266414 285295523 925123412 425324387 875577778 278400520 556070117 255097840 593872442 946816675 997417124 616124014 868750007 443118569 999485236 237329477 420767026 19155707 861485317 310380842 485070939 552132037 906368350 25040893 148891774 402102148 508714143 930679212 983376230 118525554 392333193 448558891 981380438 327736016 914078562 545690439 745946416 108229657 807012731 523212677 889738061 309602906 789365790 12116558 364526872 180085192 277159650 875927292 904888946 350286490 877106547 594943323 743829334 841281400 869065236 66429635 378170795 440039936 550540941 284014534 538390689 303732681 581414495 24742832 852149848 476580746 695459520 590146730 871200065 672307255 693238607 651511203 973006478 224178273 805904908 286258075 795295323 691352993 735567235 186514131 624245898 46297083 589363883 786050635 862305058 532685308 775474378 795413790 821830914 957222373 986062160 681583330 844648015 661986484 788631610 468323662 574141254 681016689 800342072 606500341 923442050 33129748 414331211 941747533 966603624 188296422 770138961 44607600 901474868 980298829 998410625 405140391 925666598 864771378 893953473 349341650 756139164 203333418 822842601 175321359 420524342 252388716 511665126 405267542 598630662 23332652 992833244 721521426 761355668 936701888 938830008 649325775 996810693 20914873 968140929 452323359 546962724 799337772 970167246 408822822 851515497 443032144 955702949 564456310 717224974 147099385 498691740 312494806 969246879 271620861 799833132 134623992 217118284 431843647 502000599 202168855 343438867 240603290 551930683 637749235 765113633 302915374 680757824 692822006 986273654 162036989 658071249 794038150 836265542 718182586 847318662 750655820 860740387 455291426 842237208 786776708 802292622 423764664 874765637 606001669 636126913 403127422 459779124 702026113 824588054 625643976 743715113 677723028 740394765 853172629 893250602 31898413 592043109 714408661 962497006 790818959 847949462 804452170 960485810 160608416 220786852 671914099 776281803 193437417 784786924 74793456 877748568 248945480 847940227 529451053 699068934 185245881 301178401 481341031 527771466 827154513 920679689 287190201 777756836 571789650 640046520 560173055 892137094 851451783 919564222 309166954 970312897 80357942 710411058 198424799 439662230 399082913 990038922 76894876 992884633 346244961 422274593 688575180 821045113 494957840 950659232 842301720 851822690 785621992 923091302 773180229 839315523 942666293 975533259 528969738 923314204 984365467 996317189 848991812 879905123 435505435 911710812 857785970 972309901 821309522 874383639 283040417 522378672 493191300 684295462 25750995 961301731 302017875 938925207 207683477 972908319 125842460 464616723 274895748 954402947 921955887 938583677 722323325 906221678 152820812 169653194 712804065 924543386 270019244 664623715 415612069 670795103 169289106 894034473 744036473 987259475 80995584 690700689 477267287 765852475 351128135 886377849 995428392 995690282 327360392 418559414 649707662 725572026 597779464 872034645 497789402 525774837 534020833 723287167 926404370 946835292 809932954 986221041 980154571 992842193 602981484 852032674 133361092 356172152 567377863 795972490 999519340 999956838 107645885 949940726 608683153 652099106 234998846 338025449 173617085 206462937 11755055 96188388 774652843 807440974 360326827 612038435 981741742 981929178 220998322 607811193 613230792 787823696 308433846 431676066 474233327 659860531 27761144 237062148 302953886 495583580 454668581 809549728 281208218 375557833 367413940 782702329 346222281 697857907 362190535 686999258 134823787 657072713 452943947 823526551 458827265 533721517 608874530 619292397 695920684 775847187 929756259 933683174 402673633 559316504 287610147 514801955 456302615 478672717 893002133 900117646 97048877 432349747 701045842 709644023 643597241 990869988 596820639 933224730 278596085 449715815 159072716 831276420 778965055 988428458 310133681 401235836 990145010 995550560 661865981 673366086 174267310 957658582 943079638 961922907 672801408 754690105 713566220 748686955 645159244 741751526 104304927 766662925 411567388 524599811 214698259 769351831 414147476 962666679 994687953 998761498 701645312 989846731 724135293 824645388 52724733 844971123 790512231 843997408 847927847 958969187 347303426 893748483 741194954 956141280 846821688 866114677 330319694 337997289 32104481 252933904 542495844 997609476 121848443 486523716 225297806 893790571 135250910 649622210 998393106 999700334 160897270 255366236 737847264 973560906 155044188 769609094 503019133 767632398 905687688 949078916 131607916 759407410 298471186 525131514 331566202 733539881 370833611 938772715 938403594 987890450 415357791 569825744 595371457 762930865 248825044 849139880 308896992 961004225 770490954 840943160 15557359 713904508 111886743 296582083 708528234 857014190 699102841 721890059 705065468 990174961 951827436 997151743 984946783 996803523 458307302 836844864 925689816 985338355 227428560 547071602 240050695 851357578 110644039 937448977 358145586 379869386 851970623 937684805 348591678 906601096 697320936 902734416 953443310 998136799 421843354 506678542 496241885 912200361 992512166 998401062 767681525 890723254 156070879 350122536 438367485 498752125 418952110 831859536 123642490 613740690 639396880 935309371 344144841 989679278 440685267 760580070 324847041 838778152 156666617 783313230 706099203 728180159 493673330 649975278 595211597 910757258 391542852 702545769 244828862 350832545 751609372 855665467 71142429 114215853 744230824 761550316 768945258 818996441 748107535 770075726 850805713 993711886 399211163 883323928 197321356 385429070 199246859 216253834 733447845 758503689 994995301 996552158 487087967 686949515 655758975 876784504 262943052 916369006 530486395 813255462 912836669 932923566 705603816 926758710 927393434 969559502 51767410 813881246 464252890 702628025 738639161 764091373 464850773 668747416 174391791 698657834 303920009 755085958 468226690 641982176 135593382 330021223 763348375 802804858 719625358 817185775 419008524 432637351 492703416 748402767 973059030 997835600 915796774 937139027 334463337 570561142 709130169 752463856 16079860 736779899 485886428 817667439 936699639 945259978 221962756 831010093 591229641 831852237 959311053 969291464 844429478 924676242 558699319 959861212 752047948 790827505 974572577 982342870 167184346 168059600 65327587 798154327 477383400 891678084 753415744 869034860 593550820 827429116 633582755 713711376 41525776 464708513 496789446 834115208 585434348 681261361 350420979 594816670 199506416 414369260 735750368 861460434 98990391 565960073 733084271 964908617 31725468 366328908 67236464 546046645 912709693 992764905 555424161 759649588 805350856 860740015 952863299 959516082 113389087 562471666 756926784 758730989 112371518 516785215 759864667 890952650 586644573 937005686 338292049 939218283 142806504 564416103 858879327 973078150 158995664 335562451 397552330 534890967 13440051 719283781 965160138 987956475 316125614 879174827 217105239 353804439 784237088 926332060 934072914 986916390 233261 325457917 96173173 368643480 806942779 900671840 74773974 400487985 629607465 666633913 656461477 916660035 611197814 701855402 315570055 665485671 377166996 570581582 306987389 519075890 39679234 419766010 631174340 753251493 291881342 670661958 911033646 911907473 573083822 908685539 198084095 267131562 218367568 974906940 348823561 399639070 381017880 772419801 945258520 986368334 9705967 110328398 985150724 996783952 987217704 988503364 26682846 590996265 743167929 899515972 278786619 986490369 224668807 448712103 78775094 867416429 645580870 654523448 449742575 763545315 647294669 934916074 22304066 306317362 369699804 569815256 393107780 962475440 700761050 870856054 482221250 533551727 492014366 802846433 65577264 344195762 998042838 999856084 327372603 511751746 841864079 988609382 946757065 974195551 213048568 400104474 611485428 694276294 436422978 465386287 175280855 677886771 35487773 514620720 355143582 565091659 747594043 861569005 794574340 896579899 256157193 535838406 333867289 365265159 582825930 598429968 133086050 779146977 44884074 998620139 811419915 978528786 935902295 953157108 591463919 918086275 770972101 813677062 468954007 686796519 645509205 713138886 867254842 960448810 698794206 700273213 459640931 928379185 787278278 893981770 923142628 952786229 66707562 278494682 872729134 986386616 796629241 837794692 287500417 943793348 858795754 904839368 978644329 999041497 686730526 815756484 135558221 423011459 721000349 970351567 755487810 805775402 373331280 693475601 513367399 742226845 759470562 811459701 329799563 688380148 608969595 884140973 455962429 732734449 222969101 442283299 387024283 612218914 580747436 712405833 787275044 871901507 381069879 435674288 877845136 911691234 142064896 773059180 149447064 205300106 420177830 469133202 743065525 774718253 319013901 392175096 912711303 989339100 285708559 447497023 976329111 991023667 48391799 284657431 984214351 986763955 853880303 975300690 441648072 924723206 461204801 573864001 75322437 346454149 469905375 909675012 909628021 958470009 65021920 621653277 746774097 959745384 475444510 971685539 23701676 237863099 843018285 977459781 886533036 893069640 537268148 844357350 877093231 997913677 270643155 521497425 703326441 785468337 833323788 966980238 405089953 785997086 625459990 723223151 912721563 973875808 269422592 696674186 843965845 902575216 100307595 255111155 904896400 910740745 476468965 482892288 939812707 949343843 632741434 747614077 792294607 932491292 403688869 869606561 19876680 468361119 63154945 800547718 168095478 989492429 121375802 365068045 772058478 933637307 391663714 948179452 558843255 695544086 510722005 826958802 458450216 854463162 869455659 919225138 777180238 921135728 943947084 979738919 899016840 962887660 29128497 622787534 715500637 726276041 975723398 982917824 438487108 716942719 425978487 502001412 752121049 768929824 113985163 369176717 166330482 727213166 500536544 756717590 963748668 972173248 106332226 205706140 690786721 726714624 543743219 919820799 568920472 660390721 874907054 960866292 323124161 874424173 808234775 867098978 831575456 998488489 778671941 863329421 137568069 364199211 412178228 761207096 611858748 637884076 937415346 966388723 585938625 904600946 896442233 986433207 965327486 997143537 337696755 713477856 857652345 941230687 174793700 978467658 38138291 399798265 681018211 958929254 944111345 957102238 269560734 680198352 904022947 977596103 420002920 654017284 114470584 553573886 109968457 340997019 548480631 933049576 190449919 353700119 764516757 938705976 174221836 939257620 889568454 965600368 523410671 998546085 682215382 771252063 316481366 989797707 517687602 557491791 326682619 748414296 626702329 725259752 258315747 913992798 379402523 859922152 253393298 459512138 339405776 855571497 614100967 817476798 563066025 791776386 103498650 203757293 714098724 800645990 946526858 948081785 63349611 75299385 766819609 851914769 987915954 992766185 231150837 734903875 853529245 921427111 104508177 930014398 718417544 726981656 870820693 956740027 863331483 996366957 980309396 984103888 663752128 783811164 5643006 770700105 877584539 902689325 635056006 643954977 53005187 95416957 372263835 520594746 262780202 781392797 33456309 363962844 157824937 803234665 525419972 600060985 99646668 782828794 183580239 702126811 637212575 692987490 616509023 747128128 847511397 922302388 71277392 778292379 970521368 993927538 471593448 864784597 834653767 863326075 386817912 720895433 994290562 996922922 296427857 445812203 643657687 802734053 881467352 958261985 485989984 777840229 201660776 379031349 433008018 996536422 392547566 494208187 218471812 909629010 998908372 999788327 510944837 992124367 689192460 876746007 542233740 588282705 786471687 860243854 498922946 682752836 933509886 967135555 591507394 593066037 332263036 541274664 530851355 664378750 695594947 749472950 718206869 957067064 647409848 951259730 934323005 945076928 302655715 836879793 213723208 421258080 752891702 829255542 898273844 905191584 659138579 674673940 81911961 526939854 452435970 794302075 855552764 993114025 208400625 718017694 67686984 630348720 729034513 911837951 224676381 485282063 777985012 852846068 20074865 291251265 400918892 892245020 836737281 912620357 778968219 952059996 931138507 998562684 986474985 990012323 32845216 493143401 164690650 595624245 802071019 939644339 705502717 932747367 850544117 968159725 463029745 506053450 89583098 909840737 729664242 870134919 352184849 649343310 329451518 333851826 663158567 736343063 724472867 760858255 305214917 764371754 391125036 611735705 547578803 990064224 649559299 734132179 764970249 959571113 39230920 268377039 463471162 857854949 945181566 995895077 366195637 748297746 10704093 185889969 869980624 877440023 151574093 577733039 262173088 855505842 297592083 582364931 388047863 503891177 561068968 715103258 393793167 764150621 353709695 481810200 288189021 784993785 973926062 978848687 282578952 338935371 241406828 652441586 48014019 736172280 476677836 712026656 810884551 923712722 366904407 500017861 693076232 880184329 706368424 903961630 246576904 366207856 316177095 819731690 640196530 909381935 56037731 649396068 963856810 972317807 530356721 661088827 2504920 440000725 91131221 350680189 595161429 810909630 685047102 823213356 254832432 564683267 906529070 941299191 703372483 864056897 414269552 414584967 334966705 375129639 102497232 676373228 913567714 973465485 472847003 913126367 736316905 763728388 406645513 443379276 913443881 994190142 576895887 769779899 905521962 974238250 756549448 761700220 904768567 977010715 84441951 546737324 417479412 793742920 118351124 565375586 714908369 755300356 372706789 384480526 926074873 937259981 834312449 936412201 511088021 880878429 688435289 979939298 628467936 810808873 379437114 716019469 234690665 737597475 673634999 806178254 266271752 708783777 643759466 825958493 769009743 811087056 636743546 978460733 33715913 672074071 952029567 957318512 998729070 999299589 201311320 817474981 101962169 385703095 708561217 788323049 3556593 973178663 695711166 767674109 253876261 266101793 857530388 928660517 679094157 806402057 219831832 670590840 468010337 709458258 780396944 905447991 191106615 298446740 762280892 906078682 457096386 616153398 114830280 616271679 174609110 997745585 344691861 549520083 816544654 868491556 467440044 534691592 142313352 721557883 310114300 560030390 41371079 173891257 368727933 715931936 105753244 787197513 375882880 690199002 587984501 874437857 595510264 818865153 100067379 385418451 418429406 554028055 826786833 960290379 972517518 983687532 612841070 760308565 385746734 628046322 929993398 990796103 416591152 424873569 432877486 527066170 61891723 280166968 159932331 610239895 490825499 740480783 517790912 984277955 231109101 786834802 965811292 996214291 192837951 766782925 228369612 517077048 113863880 732072968 20280721 546267307 509458886 620002507 790137309 799809959 330715964 772043246 699366947 970994864 858949678 907957513 607587466 719056387 926697849 978486561 413758699 441552514 820007826 869108283 248700990 696932034 186315552 293317016 850614180 858800918 151798852 251246021 674167377 783514552 972831794 983871624 951792341 959057841 380813522 796287293 542044911 600974128 61531564 538286446 641788490 902610095 485557207 875184132 839491370 940538586 736851337 780733710 554512636 823550880 195067778 343658665 400023479 647137897 928108698 936558993 110928938 297525529 706096317 766492905 932216326 989478480 677675226 890117976 113538649 553204972 396026157 428152683 475841914 808982026 491784647 726802880 491783680 814728082 341121519 548702599 35020796 357325670 775591955 892476288 803869840 854214479 285824522 604115292 902052269 970917141 756663925 853139109 52750665 467120922 815200073 856989594 590078773 918879748 243038305 446623144 748487856 944218932 863486139 885498487 310423149 948226438 866332351 871653286 497873730 801395214 301913477 994219773 512009661 902677256 556598089 788281517 205821920 464030744 44505517 203038098 43131367 728440878 887692608 999086044 868309650 909403428 110554103 564132909 224285244 325583283 326360275 828328173 235487964 931175723 202880299 652230457 518238702 523363352 881377908 890850346 882592044 915707263 253392465 841719333 189369543 835362972 933321341 968578273 701987846 976855732 866254795 996188083 2735139 672550506 872458933 924535074 606862519 952576310 400970542 625941878 981970702 987796929 138729509 489332622 542875555 780846303 911694000 928150478 409044017 671593878 80952748 374215339 780253300 951215291 81762561 203747104 356452764 586470936 151763923 756570575 142478630 500654092 444228476 783250963 150492584 885403219 255785590 381677412 494279012 791543537 600932471 878344056 330540394 468278044 686221363 975893040 778000469 960001655 738819022 805039993 114043789 524721634 749176039 916035168 147792426 625358526 450733181 834061625 61955796 642385945 114806049 570504612 221608731 651459655 222202793 989506666 306075689 691207528 742863960 803854217 373856194 617949976 260202434 536530659 571476084 766733865 9441811 723863526 385690493 807485242 973413606 990459936 693093911 833244969 135679327 728773975 573264990 574509943 471192591 578890463 676239655 903808184 341252614 808549350 448799951 529826282 607645411 803551984 216635676 927992072 675369836 986770724 225549058 542248112 21409113 694035776 814969773 874340899 630103542 851290347 424448800 657290331 227884920 713840110 437272451 456513062 510411812 526245380 614016209 903691491 917356397 959728802 427167221 770653631 485613480 963170501 386825529 617553165 450388726 505698150 704790651 919369193 820133424 997726393 168571260 369444986 10042323 871642031 964766081 985360921 337886083 646622365 425046220 527902848 490023827 939232655 298375619 858032348 972661542 985960091 782920910 904810013 74008710 942654678 325789282 477839697 991288311 995427912 118811582 888332344 476739119 737329414 169381529 668567205 143547314 346497060 32456854 344545985 180658239 377668617 171270617 298700342 796285054 865402347 805714885 973409563 645034636 765827180 613936366 648490992 172598221 326912706 945316637 992376064 909187017 994584203 389806041 487331068 37510573 93696610 573912411 970112114 702196948 742268429 764967171 996061819 8670637 535410119 520002346 882861323 616373914 656269953 212188779 729867210 773832142 874273276 46750652 839989809 410025951 694804548 219114503 622664395 526102918 976316233 130463953 372823993 307881462 970992966 456619303 579219765 840621371 947873921 972546697 990850129 323450570 639900013 375877963 413934622 840522035 864940168 726375843 899531428 855813056 958686535 713869211 919418030 476969015 584238279 129942921 297948802 593828292 727752506 648150577 772567816 966293737 984361349 402149964 556795155 627055619 627609985 536804478 907869484 107598833 866237470 194517807 834882535 4275885 867456450 197576485 409685167 693087460 714431429 637347858 835459197 964079810 965168550 894913644 963375515 980648716 987854598 748857829 750983676 68935995 987088575 813125651 978717949 162502138 219961084 654402020 913324756 197037610 607777451 896403442 912202373 525507815 539984798 354740526 962442415 953061886 973201488 555169819 819360878 94370755 261226696 988471535 996613415 622755343 680010527 280586470 938773219 696370537 989541986 602557081 989868421 655386995 995875832 664286025 962834743 984113412 991482431 703599457 888696102 545380021 937683162 552021227 608917925 964851822 978978134 637281416 685324154 595406526 884106506 520090472 560425020 756461330 793314449 210159223 882761358 844157198 985741093 524630736 955605453 85151394 136208028 610328686 639105516 667318417 814691221 933354126 997339369 528674741 952542832 465726183 596769998 147551201 411159443 622465761 854710834 947934892 960217455 564184938 753048159 494936540 731169909 637384865 672726613 822839348 973854709 661683537 721718324 870685183 950996082 987518379 994531941 600190173 832013222 641638707 972780724 216881793 940301132 481586877 992136972 142525664 269067025 627272733 991409766 493021634 832702836 662896865 707769531 380286611 740709164 391903647 588406911 446721464 986711471 976702616 992104459 331387491 582002753 568113156 710987413 100124772 882258183 30255884 332751344 817286575 876179056 615586018 883839880 4929670 642778108 132887903 318909539 822415889 834628065 503732612 849990891 231183302 379094430 983429848 998528131 971529930 984050485 137759413 214200664 125476291 403093851 12897293 814446891 372852220 996629004 691547827 897885222 23730052 375872881 625111912 936618938 15643991 39501633 397735485 879313136 724511538 781632163 627929530 769714731 915100580 915881768 884500587 899993981 324798400 758745248 404302935 930112814 524637619 622536478 556634140 937966202 462939590 833937458 352335096 427786551 870127602 968083456 316287358 772953288 580049918 662830756 973509018 974195620 817909033 976652603 803522117 936308082 513731506 562686094 218104015 767558076 52342474 413887889 22358909 330475077 118549806 152463619 895150064 930811088 395665895 594333053 235068737 950463727 225865946 724771651 456591054 622054020 461613353 598533849 917165458 973510520 881719379 964759397 441274478 835328125 682415261 801595286 187407140 348652483 729778574 964964557 950682437 959053497 20340179 993724689 980309370 996458133 27843210 811439325 954625534 962827531 821318947 967467580 529920429 969819729 422548597 483759757 393134757 820657773 83180283 947131447 124249270 811511467 403687363 656694624 704469703 911235910 124108731 898137763 883626622 992590803 986029677 994965446 959511544 983617116 981876712 988879593 233434067 784689356 739332144 886167091 323017971 580029413 548179918 609519589 375888374 433640826 906749102 951782957 770229781 860161372 198492556 213267830 111806347 916505225 986502172 995698507 168235249 937907896 526592146 607262248 618294704 983871333 31247279 595486349 725089313 969577375 538309201 901657227 154669146 177436574 587430788 858847783 498361943 773653679 820566775 975538584 729914880 876741221 814092139 861931197 150222748 801833905 279664213 322799854 452237501 782329091 377426991 835459599 787594154 829804426 376148904 860686500 684966193 707962409 153633082 506026513 633606705 758228357 834563490 887426208 412867827 880847767 671662659 983117987 672070428 925315291 176050882 194666510 804293622 831183828 822431453 879043639 936726355 953451052 445772700 962931792 154199967 849751812 548249912 911988602 642985331 877890692 764343951 972947493 390610759 807814438 370372965 662094314 299464733 959447357 331521463 552524318 896373461 942356902 574757722 620315498 288805465 596669949 694947125 854688415 821381358 992778945 215852115 379784761 805761655 960228119 550463075 973019668 999381555 999865364 983648500 985459461 831603221 988644882 324075373 629031244 52401640 302734618 700998591 813431238 893765429 955762322 924604788 946401946 593805871 888223676 778214615 822487335 431427780 995439424 611542837 995320598 834118788 904786458 312481517 379007463 196616722 838766852 808307783 855976391 349969101 698023239 988727469 997691096 555165567 776567632 836544445 915310608 474443359 991982580 3476585 128602726 356271271 585964876 807288331 812696622 229788926 921487836 723422611 962866349 521415625 595999756 450768579 699643661 68147070 413674864 547967797 718800666 321201282 927434405 314770 914308474 234527165 695956931 403666549 966425427 854992038 953937906 314755969 622630648 716509177 799398399 309456287 612467656 921820807 948062526 539925339 984572226 476869103 580506007 645555338 787855219 162490607 659885891 512029125 649272375 920432522 928081664 292070943 336674342 741925764 999905003 826590360 998034573 937119337 945511939 905776873 938130844 453909395 733776062 629990385 649150839 583666711 775381783 97259203 373366900 878861251 883464964 646015929 704284092 288557605 410102617 405921054 444471639 760372622 763384135 878082177 938534771 484121565 824359420 289264747 739663756 988444657 997995008 718745652 918281406 258965157 644385738 227513234 412757088 570776564 590297077 505486717 675834539 511353930 800636592 864445941 938769591 140087716 847814325 160616931 468633263 764662797 900182554 472064690 582917504 675557585 739454264 212036758 522766152 577413186 919991262 953014957 999340861 178961071 269730091 365939109 399279292 357785584 943318200 112404127 523434096 865332182 904122230 138158156 307793988 4089558 911478105 486431531 811164064 382442099 485419643 358298547 970117951 194673109 336315304 877641874 884391129 265515405 796911315 177485158 489944837 396370447 769011334 353864220 935073138 942865165 964965858 264168119 880372019 776467303 814874392 260188778 975635591 55996520 588917625 60900094 404147701 671848327 874775240 610536583 997682031 711104734 879837868 733770729 847686311 854046924 976675050 331195556 825429701 280898300 947776822 681939005 756946341 314613078 535148916 492865336 716568912 856046702 893014674 914859807 979307235 892271769 985076205 79707970 525693353 667245855 677874759 250368505 863936868 410566191 921203142 568388419 673356243 999978055 999986700 179688258 466736152 398283150 642080262 646093665 727779633 799327906 815892265 886697920 982885820 999796644 999821123 974851089 999816557 170333596 220112988 636438561 929153935 875248125 928577948 824226592 941107046 503524698 853968543 877809618 928776408 954306946 985445498 104474518 984207811 746833555 759313429 48459065 175727447 100198685 584731034 104908598 858380723 843619065 926855105 741531059 907590582 439976880 745425594 311713370 931152351 562549465 605466714 708430979 771517589 325710278 331180148 356293796 949350277 656316722 903826906 512569757 637373314 955721008 960673729 502659545 943418896 348293865 371942041 143087702 870098709 338018110 809375840 892238346 946535117 109149415 493086132 642001354 830539698 16930153 796237457 374040373 827610550 336080846 659650984 277303070 982861294 687111054 930717726 488011988 550570878 760348733 967632359 280879361 385690915 488293652 649456429 558912612 764659954 509681196 898598858 852015157 879578249 741784751 742812173 670816416 801271284 208880746 595724044 450749339 958707414 129930375 848752943 632526410 961620746 150214616 169971401 741787364 810724895 956680547 968035317 98542662 881848859 745508260 806642219 512839829 962895370 956780939 981013549 835775982 930166962 23890764 395346212 241792927 859772315 194390077 269953043 404349718 904812131 272060910 863838392 665637366 782472981 617147620 968929233 904079596 904910432 640805346 707374819 151273101 579935243 964510617 991355051 358673005 967611290 870604984 958971138 834935968 927564258 904098253 987112423 388024890 940640767 756584082 929713366 706770311 804040513 889201011 895215283 11333617 416119801 845515008 985704940 791415868 995921574 73268344 828402186 774259024 843639582 570689397 788282887 263638652 979310533 557954781 926594757 722198119 801386700 899597945 957224328 366925793 739221547 152636430 816238929 555803563 978925205 501789362 983957351 951685260 994045397 26828363 237251837 141791955 913891970 410836364 644292807 289366916 760687660 805253595 881640798 854608720 937506353 2893243 329955078 116420236 389287238 759246243 803710884 306538454 733137506 914236903 932156707 76877136 663110810 5892598 567377503 295317101 319943451 611372094 943018070 951840454 971277226 315239752 917485739 372884685 679868140 829583539 910866664 661379483 798612281 553396450 736641013 541739885 934866976 521710366 720162276 422248953 953504158 781756444 822584748 118445093 967729108 79735542 192948912 515506319 755214185 553378881 823858763 681953961 967880169 941641487 993629995 92211745 691520624 154065994 896748362 403010625 781022535 278052105 330219118 57007985 278357432 977067162 985693014 727937442 956798146 687790480 879796658 89255806 389127565 642128875 946865753 325716385 624012061 570018406 773180633 919667480 981837802 815054549 974550995 124757081 628696317 284533688 799884885 543174652 792341078 745575155 908059672 176710868 572215155 196876226 311858468 33976781 832346146 33160963 749958034 494220923 971143127 57738445 707901155 323718076 463276349 853126269 893468352 153774294 985732525 492452397 673354929 897523129 934693025 560818168 761052783 152337253 562457559 85455721 471841791 200961220 448985488 109580475 284571514 57764548 559044309 991977790 997453977 643030550 703095110 702791168 705735732 71811989 398110182 800372189 900740981 852608909 908040419 931710833 959012431 417305678 853360467 574670143 915630668 961833529 963966780 657941006 994677590 78087267 984016653 78612206 692494052 659369882 891159137 375431989 762400971 496550411 904711475 390389986 776783080 450049145 471837933 834575512 907665927 369564683 571191874 492026669 966727317 881177245 914919885 556118917 979258509 544554597 607898115 377556599 503589723 553604863 905921710 502461133 833409507 122002668 140686213 796415817 934361633 883387546 976648767 322151495 906283745 146205329 363953251 526268980 623194525 179451749 789250327 60214166 889958003 471154861 990403082 145827603 711416849 504511826 798196010 508365551 989476939 729578473 862944573 337676727 879904981 416423128 613089553 363683185 704652042 123988048 147918320 378394036 966219548 487454133 833618980 228890787 750137509 874000785 974815472 66423811 214287190 248002195 402865970 26811358 637004000 666907170 726177256 938857327 982141312 989526344 993046737 958264251 981204127 242809987 767081309 681951804 682346328 208807792 658283649 222847972 533711410 58746113 715689394 269757813 547446516 135800417 645410943 464740866 951589379 462692589 657718454 724200316 782089345 12296626 709418270 948844029 994942487 690598230 926550197 501157571 789457854 864941545 969053901 380313803 430303535 209611340 341854908 132716211 362416939 604341143 609694227 734377432 741766296 764956766 979349518 556730583 786529201 722015767 724892735 196254508 688590385 402622508 442709865 741541490 913237336 644744654 689992128 259184166 446749439 223484797 807389463 744999244 957972085 939912385 940421525 60221882 89191854 824983742 858859461 723219013 742924972 457979054 791969421 173560916 282490326 631636333 962481284 43822019 768810089 137816513 301887570 170657124 959091890 50425984 68725253 406894032 759378295 225543705 276283820 512575086 997850902 859007208 973481870 913386488 928093053 687860631 739962395 94532627 490419854 622605167 846034998 826017539 897893015 809215415 931301652 60834998 439405173 643244042 996580432 830388055 850386514 858668237 985370100 853157611 961235800 249854612 684643207 554124864 892816745 36376048 179294037 367829309 567996093 392410454 586509023 429641634 945952579 965016600 983137084 264252320 738269151 578320109 967042700 297524353 502975968 989090990 993308241 246822366 268107293 87383156 598002505 766663716 910665344 66826607 899588296 509119478 851629516 100547364 147128293 669503115 947030953 768462657 889690948 589461039 743147005 654190290 850009764 473652790 698063636 106554237 218634179 192772647 696765448 386592126 976862041 466544305 627564457 940212061 947339101 289417751 503232109 2196085 74857152 339082218 785526921 98924749 144975243 896166199 971190642 509468736 742803537 86996280 694108081 185240985 746387693 15190314 519678017 980008524 993506024 401662804 783593683 606507236 821163919 440975182 774270403 28069668 345987681 703712735 944558171 980222264 997756450 281819039 540439684 542942443 711006327 63091373 212672236 550227152 700216474 480916142 795558826 130585935 242201589 92466806 609448203 423491497 585097729 788300918 872765396 130251949 444214365 360706921 735041290 883364754 955692852 900714274 913432746 196772597 377052236 927086189 971751056 542201753 970220842 946653478 969765084 526054660 833017764 581880875 644152465 791201947 896105395 481294872 880064816 904116416 974156902 31276244 841579727 265188511 383655061 282005780 461313994 174808017 360106105 824916893 933109954 476871289 939172090 754782738 946204173 992175163 996057468 592405000 602946019 203448122 971853096 358630161 700966700 634741516 860723767 207968759 787141857 59517566 826005405 558809011 602069327 567444381 783034375 155403654 790602868 109079379 211389012 288207004 965703318 136673594 200176605 142092804 146788855 625726599 800962008 791415101 854158745 216517983 572368179 671406373 707338239 618347386 831189365 921059928 968139267 410773445 867817643 876514942 914175533 26282850 959650122 35834155 66031566 128349340 534054140 727504641 851625976 652124870 771894669 981597911 994803221 697216076 963715936 728395371 821955023 202656764 938893651 192351537 710332926 46608414 731621285 112050445 275580182 829463734 955744029 333855207 920789105 590216653 657133134 273974370 930171502 374321191 787364327 317969909 569879068 579452268 939568364 67484748 984675560 929061917 977373372 937733306 973063569 46804974 923244888 936621153 966264185 496674555 985776310 751130451 874429654 169290051 966970299 971204307 991256060 3598544 308166912 718963874 758158637 789425600 817861655 738533373 897405283 261864452 557455038 401718315 824437822 439627198 481049331 75519731 477786751 610896691 779716080 692295904 780166669 261121310 918271483 762941762 914893575 919681036 924826794 25487168 782120052 623225072 882855220 332343656 575709289 857816392 988924859 107935876 532636759 519394120 697880362 59928378 954755246 80709999 272324356 450398476 575744880 746018280 824126285 769484647 802244696 986727496 991974431 587398758 992210236 152938666 473263538 274815541 721229478 973984346 983731873 141909273 371413844 321852715 571078533 974650388 984169388 777800186 898641249 786082386 839944541 721977075 832547271 102427820 857794414 868668061 956230530 549650995 604196733 356280606 371067322 374543620 692624048 178094826 544503373 989902092 990408563 218891585 343581517 554612873 607193786 253856195 945304066 973291159 982690683 324732702 699154224 355813979 655112103 968438850 980713998 154502099 971431495 988875365 990049661 420236659 437399697 491008510 905689190 497989574 547140357 835062921 836609672 373340128 484699361 14359548 359376405 773655081 893505807 688788956 999790580 241841121 370644064 11473371 34294689 210784449 540159893 628282561 656978760 664136989 671730805 701653449 968087564 693923300 886919972 400620938 436663735 407069406 685421762 53071327 405965765 515418116 735020092 128977031 819341634 149433854 701591501 940988996 969677609 588151734 655661038 96417348 717749137 876595002 914922164 76669044 279235314 359874652 911959461 837464940 973304218 619535601 916889834 738606821 989407083 724922085 888236549 493534136 754364620 812892182 963253343 81195701 292612179 501184363 787265519 295426470 521359114 469344689 549115370 864548128 993009986 353585328 567649875 808033488 974597635 494723715 561730715 150053186 605181014 593195982 797882455 64843346 333431444 757197208 986582551 951612201 957345958 617857190 824286007 694632790 792060214 793519114 808592867 121269852 160568003 24628338 39785270 185076332 445047288 138066445 703430203 678929129 759544878 269785192 484562406 307061046 882587339 529693787 972237671 231691325 886592482 67411312 775719790 665342963 749733464 299623402 490497310 165489755 381070465 341701160 510720043 714409374 940304450 249137084 719106751 836322586 912677960 549329098 658778427 111569716 895736662 664274675 853130096 941307473 999899360 858282313 886844483 211527540 592313321 866729585 920879603 744124964 801954470 775050995 782631578 553251517 862378651 389106414 877632207 861708274 864186124 620207114 731238225 676554579 851731945 388015689 420410960 1393593 377008162 976769200 992102412 615707039 936807824 582419337 821544243 353822223 677279098 341431701 534042120 220189927 378505387 811696812 865844432 987479081 989368916 381979010 461341711 800020609 988731952 618373160 726372219 367783267 729174386 825373844 904627502 942342528 996500921 900202768 916898700 918375540 949356942 190291286 989234937 673351530 942149687 692575690 956831468 323016020 881573748 687639612 848524648 38598882 341051630 864894927 963732262 743463180 944892658 158105955 721428831 86895055 960337352 23768667 200733932 808681741 936133593 219749689 547673201 893028461 898652526 445504928 532210256 725192807 756946195 412764603 721088709 683731158 792741790 264723521 598041702 2375414 719631036 291519610 954179155 665388107 768767642 850221635 992712587 529331976 616536746 396058930 887628694 984859640 990744314 923134497 984425657 988034799 990963553 573891337 641935152 365312602 578996928 874370252 918117900 244735809 658196291 263234536 834233834 831660773 837665797 282768982 838743064 278710216 540375469 856684280 996388224 249039211 514044889 162166252 399544647 511983354 911954200 988429154 990439851 493136054 749860577 547560664 552734775 500001482 791508914 478542685 740682916 323907285 478078756 368234537 636198344 219586470 254555303 523998444 585321981 590429512 596942456 750497128 916187861 486156090 951459902 326070660 627100867 473733235 832145608 619803911 801760848 479011017 923603500 90234564 920391180 947974684 967606834 169353352 662674709 127570061 352112860 107646869 333288529 875006160 979356984 416414231 656413900 218622113 836255938 178880011 590287695 808863020 969081794 524898516 637230564 55088145 376937279 974589936 994726583 893613550 941705299 477597731 938296367 826609137 829754592 702256892 768797510 720069296 859524284 989405013 993686179 973716248 984585090 445937377 796034770 705276003 849918876 72186159 525880077 988728902 991353155 712184651 858404417 275493949 677872431 437036788 954507526 741130985 840736838 353585215 830964030 516307960 701388660 124299052 569948021 123938617 521726186 600670478 766232107 845888475 881389298 650352660 762264799 23729316 809800773 905253844 982830226 202374776 813909473 248323696 722294780 84747357 849366362 960864031 987347257 187426707 751724944 708453947 848037253 578542465 965703855 552543837 581522787 870158759 955976165 711330954 783816310 62931831 305830021 211444332 585825051 679949193 906052235 825296189 908665172 891650482 904948033 592472927 728375820 650838223 653602948 337529646 733123199 857757538 932426821 682696306 800727024 7464467 116506731 238551079 259605029 159479618 859165085 149519138 158546929 600599059 815449397 425092985 732498288 551038726 610475212 926603574 960200295 169868691 276483132 537745640 811429796 425539481 887709809 851492144 996911644 124279590 896319924 751053292 866336723 15027185 400088679 348488520 450030175 658329048 851392194 290104402 527932634 879727819 934531599 9529355 345430871 762458581 979109107 260240944 776883972 938735012 956799381 234019473 915967853 172663315 415229844 966542451 976152110 684538203 954542184 850309097 934484292 48914435 811454547 511414223 931885863 913774361 995874133 718573013 862934252 441051526 901996206 861536437 916212972 312893128 502762804 567361451 791672572 550827642 753430684 594277259 773263697 384456275 662808420 218582393 887220107 587566121 983530549 71011813 484535086 450402418 524073415 584838971 717837283 866561391 914068347 388480089 607045337 60788227 674724074 966312773 983241374 373737692 604939596 881583562 893639413 268599794 913103244 228060700 527242995 876788900 950740528 258846206 387849640 748258597 998748852 783429026 956253388 808051185 952630552 73358208 593585419 936453467 971689911 81933457 536011601 824494749 900932345 818916115 992448909 358945218 967167666 782681250 861747101 601857211 853033755 978164322 987799027 413483548 597633578 709360489 948964557 715178854 935639684 582853989 999176318 673904177 756270659 446945540 488981707 861278119 944276963 256902780 598607104 280419336 537932700 575917430 978747973 680609240 768285122 674011330 886443252 41732303 650155659 180647945 378708135 595328360 939106998 645081310 924150303 44939806 704924296 778266728 816600343 206361723 809174597 60002250 504302056 886911509 898773072 553669259 794892863 587843362 747766567 797730279 899933857 189013458 437468434 498842870 801337011 354329540 401285807 837595294 863727683 651732 309759579 391934975 704875259 852563957 909768484 38715964 964107088 269590931 823317481 895310048 951213752 108727099 514732484 897684041 971657104 755745134 947257548 574867107 918765405 133227340 527608305 717834050 790337899 578620895 974248978 854181902 907231089 285183980 462624896 33232486 820512935 39706802 603097314 22028578 878841346 777050379 833959695 806941566 956742067 36639361 398761152 102827604 559080759 922187675 998426828 793102509 936605730 932113701 941844225 714478361 888533441 86451547 622921155 195140630 916666565 962442823 963417640 55075414 770639191 633086777 708062111 25981475 613351472 477161193 639835652 281112920 301890273 846835367 853837218 762811923 951715841 580157888 713495500 764918769 804254956 271521274 697327022 495346408 925752049 237204266 899986344 634090503 790786124 251338 21970285 653086246 781726368 373604785 647741220 266156181 915430694 268787438 897084051 806904173 824863496 979045291 981113387 494076673 802983105 505846622 709867172 179631747 693898214 947910277 990786142 177243151 816375609 684052931 889915476 964955076 969328803 655232342 936257789 429331205 590124030 570863454 949085745 932325761 999670656 428900935 716928724 594624889 798582301 322230824 475532387 117701326 165878350 201586850 232553182 347209383 878478308 358474765 844492409 841755710 844594423 368640038 763103995 73667651 991220971 482626141 988367944 14300121 635573918 503686080 680568616 25976549 336969676 247095032 898649230 186851289 518983661 549035802 896581143 634863349 970225427 938730121 986215245 530169022 637105765 368536506 858187029 946880563 990418155 37447021 840742552 155311112 811445725 208371473 386326481 278271994 969094964 656589517 674159507 725638955 969854992 583825909 775361723 862052124 941291924 708068592 855242240 307384307 715275101 351571832 546444864 366603937 952365491 422057255 455596357 131378576 932031804 871783833 928618964 605518382 884602278 99049033 354885660 331591179 346243088 739507989 881347320 202094876 876627814 588705874 759314053 336048257 417054849 433864277 848621273 750306101 799947820 802753624 982166020 662578981 724423910 597989241 815734644 68265146 83990714 498130711 584167828 318953428 392186299 946313656 970814030 184703919 599607949 493367578 601669980 534445013 755624721 210350039 602743643 432360179 926487594 145586563 422802058 801161531 818419032 865620730 956053992 987320320 995274666 868902311 992273148 242596398 477183978 694594159 965720698 718070923 900935762 187411054 996169308 109120006 312232732 679863839 752848314 816169378 921910649 2256090 63110976 257593935 563072685 353695865 853216068 259999114 741814057 845811777 983438362 386120891 828465329 611706369 619515767 972212451 981484629 659464679 813798128 478899558 845804942 506424195 604454819 343671741 895463956 419589797 688121798 8958540 799862671 181617450 600132374 100747503 647936813 368415395 851146803 300432260 574443054 358673853 599068797 305635790 687361568 145183717 250124336 260354036 995296817 642543023 745515693 263955130 569518007 802381609 942782824 231408867 377673347 705164993 748413292 549272280 972443848 288009334 467593312 856243784 954242029 530055435 792190506 208480289 866542777 291023346 759507167 234116625 677701181 140048397 822145837 453084045 650289082 213910702 320396091 116853435 915914778 747540040 776643907 129514294 275953434 745109176 773951164 348718765 421171011 147870372 218813887 283500757 285633633 102788264 439353091 738668916 856511071 316062461 579530694 218013837 503074290 633658968 945327630 705703111 937020949 764723279 791706784 461932425 704527373 830824987 867827808 475950590 512769478 932061778 947360143 225751621 855920981 423960238 561010415 950329668 957062983 733508916 754174902 572818750 580933073 562390109 757381744 708118003 773364087 409562125 522887639 481903040 683499909 725008185 843474565 324873657 649827024 172827266 546090861 618355655 877323449 754855708 923861865 22275067 512197028 915406322 999052501 216926391 694149867 246942342 361820731 673402396 802888469 696696553 911144445 142284605 345232629 820339761 930569328 484238282 841427099 957362328 994016994 668032394 880516300 824126230 875679355 286734835 406246290 621947396 879786584 208153058 210692164 574860914 613427391 833174824 955062552 140948829 259572858 914456130 944092669 290877395 760144728 58747247 911631675 434459179 836545696 821829584 900868610 130686294 435678763 27024405 255241515 757892766 866988335 741952462 945910251 409315488 825812357 846155963 919787669 406922259 701500322 450733909 573667575 736131817 852172771 245660414 496292139 391378185 937119013 629733423 884509244 228078385 601039113 390089093 664985693 157360058 781053820 388300795 657862911 815246729 933159315 764815537 845742382 400365109 965902216 883372589 918734862 498494486 613525152 428181945 843413711 755645207 979491711 756319090 918964246 520009178 888909842 186381658 665524330 423882079 555400848 65645074 750464037 492372322 581427957 926702207 962191990 10419775 505702003 25923951 942045114 988499605 994664171 445414864 954072296 581672267 603420239 563309701 972976554 794920652 863162488 465870653 975329139 989744197 994242403 467202925 891900051 960878507 974796991 456938474 597356178 275840211 606053867 810206175 854437855 20729037 709252439 945904987 998270941 580719204 714302934 464234004 636285004 93333446 729481329 758667241 872314775 648435212 754824489 895956342 996036442 175708409 193699209 977160237 977355310 508169995 694694972 599178812 928152221 176552498 946037301 181756915 380522097 125505261 854248134 230253633 967287059 352346147 560217077 410705733 492130306 353180834 997996058 813085022 934240692 606146402 991129093 853560467 949847774 288116518 835419598 133337598 822051965 4833019 187208855 991504545 999563809 177246770 253599228 777466840 870116736 9715325 544738612 93168179 287269585 185354608 916071306 16395740 668858964 261982995 987964115 131806473 597530407 418343771 451400754 411426782 426205266 185013225 534700621 446224909 961920482 708222022 752476227 96803446 164742728 831438833 947786592 705534225 809492073 823048100 930448317 178420147 779943974 418783419 547630710 529544629 655960363 592885310 702874840 837152947 974351417 365928915 621799817 769572532 908061407 622516003 940383762 723754795 737179049 593209282 737932154 730238529 739215481 38147419 432559622 105496459 297338410 578367442 759606174 231616097 249919157 126303651 171143831 452067424 617692705 650639662 806091082 411071096 848309423 643237436 697591048 350006296 475403164 247789927 921120624 422972058 550553106 265638939 468058498 827254371 984106196 659348802 889044791 349966363 466147845 708312117 728692841 625164638 798959545 750834702 855437307 339349813 390461380 638048434 845507147 237443803 662882250 682654730 881784221 67229096 872587259 928892876 953533106 513191364 656752577 433042880 774947811 861413519 920749086 714544387 828682714 429894134 855433170 920399056 972200965 196655186 612800354 407791926 890454555 333048499 597121041 775625610 979767569 183271776 212808828 843545668 949324624 977102328 982555580 691932525 805971831 187993892 197867431 454316721 522545270 770457573 977746086 929234172 953093111 7111630 177558610 19801878 819120531 394869321 614889330 627005909 658261069 739668019 771989669 176375136 998423862 768160921 875321911 886023108 916650159 359880374 621655974 769313711 781290942 276372327 369452394 310160174 574912135 688924828 850119094 240170634 296205730 167173672 787844059 92946303 954861355 264776956 972013958 986061338 990077250 337103721 950699556 374655407 790491161 504897105 576380802 814102855 901750248 317527214 868284980 590166105 592493388 918828371 938519515 356687459 533920762 6907097 752746127 259723969 553584312 167257620 659671070 402177506 774989032 646663933 838763825 462568004 725759088 974897862 986467206 843356641 970090106 496647018 799352567 278936648 293872903 219448976 948045939 88865250 514447456 953668152 964182927 157570328 412726480 154787810 631786418 421691918 723923117 773644482 870236496 381983171 681611748 996649742 997593469 611934736 855387189 369142158 648654053 382981330 570756367 106910794 488945623 955833456 977563556 332045972 386841623 7744216 178220624 239608973 514318061 127808991 745905820 375824228 924913289 593507526 801128356 6016413 981885169 971348749 999551748 145023000 924055299 987204124 988580622 498268716 655124507 903562968 909039498 150250722 632152048 139036742 581954298 625492064 631357211 751449135 805246695 676928040 684238009 376696753 377399232 319861689 668662681 336802825 552822980 632255643 975203255 889796945 922582446 605062671 844232671 842767573 929520338 442388634 834598424 423918735 493346673 5555168 819722916 551961988 988416547 23425192 831724723 241730048 865224052 867494712 883909773 300625748 620802137 658007898 918799122 859878980 979757277 534760708 640070225 20199507 193553644 916608847 939383953 69056791 767952260 763350394 811268241 334490106 906748600 287058080 448178570 526321264 665809273 170574776 861450772 203985207 830481443 533777853 688307472 106185138 613393223 382212733 933660103 19738222 601325265 834228246 867136596 122696993 734357143 303514982 771004477 401604185 949425013 47556801 463219979 155899233 984924388 870022344 994243197 72768166 116452021 994323694 997131427 957236517 991658064 217004461 690882868 578907374 732341282 826761204 931268602 620614623 669914242 741007552 895137388 661609794 930282168 630993109 749518792 885527023 940247960 220289087 500111505 616264388 900848849 326636761 594057171 718001250 950175204 380381216 758414331 962537868 993914244 168661679 596822246 910881327 971411280 536891571 925460334 886395172 944823864 418356298 472773328 103440206 499720337 10873027 822452779 445528403 858083993 743694384 879946355 643723470 734033349 554813946 887218617 956195266 997112074 160897676 580693525 628607814 795820703 635841981 645178126 391530719 993170055 440025948 753576971 119168745 536613692 244655758 715219537 30717411 585498953 373512458 840157779 942999528 956949160 632432438 874780172 599219586 962222167 474613852 969533738 627516160 912731390 531176355 712531944 798982732 851494069 706754167 766740102 712002305 802780922 912691134 958009694 912073612 927920941 994166040 996298076 734086533 976999820 203953285 923475738 350592834 546004207 475366132 619887699 708983316 726607015 756245394 794684475 596223226 924937762 614232893 834684212 628859677 670538517 33973810 473059286 654196897 957618760 635350855 845136157 166888067 428446546 97370958 409572502 88984504 957008893 46111646 914414803 975998730 984861770 204922171 418248552 896547701 941331519 983537858 985813458 675039086 697315188 518052220 956912405 705110847 752951741 917071321 971777092 429082428 490826371 456261453 921615627 229526520 434757596 881045712 903937264 291466010 306579480 733279998 972648408 913314720 944700786 392168565 401163002 229147500 316463655 348517000 351250184 249851976 333273472 8012631 234172089 811722204 985149338 851259270 862687143 870360657 944627187 254361516 988560096 899349620 958336660 289660233 935788792 492792072 970069919 670699503 826982743 825895001 928353819 991260302 995927798 74844446 920137495 879676814 921520035 77488805 196650629 372424219 550107342 33628456 477405541 263043638 972947281 67703342 216093466 810463574 982115868 803566114 940172602 816046873 956124436 751073041 811081890 196463243 854575561 639798499 957797998 401987951 708817506 554996030 975869848 366231670 861732967 515407601 808483969 117730189 215245699 656477278 913090656 635967194 815701903 371824780 749912644 834981256 980076745 406632051 970022975 919544721 998847812 163739113 453271577 682301122 842732134 836388391 840423389 783792746 982589105 132199905 227386582 689967502 848689365 280030760 567644925 285139705 397956575 683274055 956308573 268700801 640835443 369717310 588356966 959088001 975521667 131699499 932468826 134133246 816262399 225670116 991393751 812507459 879476781 427768187 778299672 694186207 756772536 839133846 968428423 646349206 661875878 269851600 966385358 162229521 471392783 594747535 679003948 446379704 984974911 390758693 801897771 140732946 503739811 636870447 800122181 270638481 863981617 416476526 492869576 9092457 679455995 538055256 968396822 158167393 608877069 838355751 891047294 970137947 996548527 602009054 767936304 28920176 853359660 112235281 247669244 204178489 541116029 808253128 908055739 11150353 440584923 587274008 731531253 49636323 207713736 228725992 291048851 294330105 390852336 727964304 951173434 511532708 684496562 200372562 867630043 850111018 974472557 477104083 851017489 788452632 865360259 160509753 596054375 993167212 999262355 299626062 897413754 253809572 746762155 802647430 866176592 124547390 193646974 735019238 902308521 510757769 618028853 723056510 878722765 325413647 409723774 349615449 516526738 714481167 821279345 653857668 770751891 788284534 902644410 67811216 474702953 64093131 198489384 324398437 654866080 471453338 862688525 809613882 911556839 299226615 451242473 774522493 994569554 270315521 820884963 84717187 241259972 554070433 763536736 788565714 837446645 598421500 796772060 394421759 788307250 343890663 931216596 342668206 759594155 327952859 818403643 112385086 355003796 763471974 892711690 454636438 561972909 977162074 992047881 210923340 827467879 150817098 255146981 811000667 829118019 186222728 441937145 218458500 777932994 103076429 932972694 870657565 914899654 878291959 979905285 454045677 512567340 457350504 997527042 939029672 973508700 121363587 379616083 991934314 992333799 135625666 393516796 512503155 708193568 430377927 620185599 770333904 888617855 922380761 955099109 615570269 985245268 114037817 126277583 995332264 999047506 350175466 725376129 725579252 850720082 674253778 743694782 397799741 775594998 307748080 696108199 385670142 573917988 597251001 782072658 410831150 426423969 538432846 602545769 214013726 747216996 12781926 490054201 599637558 742368785 738921236 837699205 276590844 577048651 209973852 923470897 880163653 951175200 370145063 812422657 695231358 746862910 13377762 858997187 496594551 819512942 953159922 984106880 547125099 692410279 904507650 976883128 240493584 753599859 741883009 838288288 444775660 974397449 856895930 863348026 339781989 752935386 642173596 844230192 22352834 41235064 468664363 621052387 641892002 837592624 739668562 916770826 817386313 906060959 740702489 966691613 424274614 900132312 437092337 903785714 254038622 275049882 814845399 981057925 622879967 901364002 204883235 586499625 828204501 887285915 564644867 601304125 6049190 342610813 839600990 849394828 664606560 705596328 904385159 928036413 987886412 995785731 251937036 820532066 170646259 197995224 151440161 214104154 105712823 249982641 721287995 826301871 96544819 926722075 183452956 598148230 239307976 709930300 588922731 808253890 806171056 932402912 937308823 987269151 326880370 958082955 456499578 513734379 933975148 958701720 26297594 904006689 706122562 737265263 106818372 273214098 684413718 720932183 659056216 922433783 972624157 981895280 105531012 923510883 585458710 625378763 718455275 805352756 947673209 983482089 157990414 347683630 366357877 425555296 871728042 968162075 266377013 443412138 274438805 349198628 811480030 856522386 829560958 839085672 650059268 854424582 950496923 959873671 562388652 696720009 106229030 618787007 60310809 792539895 999143965 999459563 731096465 797211472 13038250 30827817 882436264 903970772 419139010 544727508 738971996 940204823 371082600 611878514 805449841 978354572 292233019 843292898 927220135 964295150 701805825 793659835 187815897 593506028 789126497 961976225 385656873 839843863 657264405 689574845 145622822 762555186 212916003 826644817 153492066 971652945 472679088 977089402 521335134 707042125 137024680 544650916 833888489 980885289 20723401 383697875 653607818 762168761 134116166 880982515 92223525 523447814 579265654 647163793 489264257 944753341 770672742 964895996 397064324 413442630 923661260 928466839 999846806 999890129 109670574 646222978 53891565 350081328 915001170 979598020 607390214 920887986 444086749 445278248 614071252 974393863 69574090 559487483 320963472 886156271 83656042 474555632 635127568 674100615 4017818 36178709 311470867 939175694 627862357 856464051 507029773 748709247 602398334 649872747 234384697 394059199 13274596 935258061 867824424 912101664 184976941 402925531 611808221 685549293 777115669 816846019 343080207 462861208 591899088 851147629 157650870 374755367 818338947 873611451 223168705 304794715 363840669 890666937 478333642 782728289 418648838 548741090 694465451 869014725 154579862 469126318 214193406 289798837 362680768 592884345 757455402 772428290 885675258 986199524 39629614 982303538 218616250 811257336 617474193 961766571 475161004 954034384 71083975 951094414 578508775 652058777 900100785 955135748 152589786 420636744 992424967 995116489 127637148 765672261 25088463 642962985 750707332 772126055 298511109 769546072 508879726 929320843 168636870 826823509 368380412 948832931 702639529 818514403 461920180 735980632 621745359 900812400 396015771 580929762 595340053 607826936 944793640 953922213 164447144 960650849 869917451 895008932 460874756 946186280 636435856 859683169 384454983 959164242 389160824 750369824 788383876 800135992 471711721 761369248 772741179 815165373 892423549 961323954 42802487 785979083 415208956 773597080 189664533 316907377 49463419 701369815 746559265 817820104 823325501 990631501 733485646 887243270 407203164 798101678 368393629 904308387 668962027 858586552 870016483 972553146 840216290 971624343 295772767 648002757 836530421 951576042 481199903 934237024 356060237 879930779 453210436 523697454 549059224 872825204 677875835 911361756 549186561 778228679 886938615 906290433 625456439 742762945 325399055 498867332 206902550 603302298 89249565 576502509 791738377 822057939 359625954 504351073 566764771 616471902 508947229 884157142 374633655 682537986 750015817 954757256 482518604 602910353 266863437 351457315 852791307 955690326 943538069 991767874 926370982 955761060 847940935 929181919 722743776 769856078 729814356 999622713 377590477 930933378 775667811 854048037 429948157 624604644 817474060 875754798 750196720 907113298 918155195 918702411 113764740 626759354 967579857 988768047 736189011 855973794 598043703 934462738 373376048 749842065 30932100 246467185 809541422 860405184 407991853 415890250 552984295 570002756 718634401 806432935 24734889 434276190 931541711 958023152 810260384 872598503 370082882 551026647 11693221 740963683 148276269 599283546 655102671 806300976 118146500 274104917 264088712 414928731 331995572 791017478 563095533 979333772 377336098 515824990 364170548 446993215 185101385 215098058 456923214 508874537 552745960 606779423 589556998 921700643 385124267 690099757 110793762 252569967 630575155 809093432 8894991 213718505 267589419 955324825 964686791 992439127 631638283 801422565 806141170 836052113 849217696 857506969 30073368 203749898 587861352 848221942 583948398 614973924 681967137 726955277 694418051 731688614 984819905 999275225 439775249 919557811 40383148 832523408 348109481 489911475 291959338 435467966 990642311 994195476 701437577 976593909 519647368 889302992 90422875 725330690 750898153 799680905 594708611 860094302 64921007 660100780 632638830 653386046 13776461 758118760 29414753 722226486 20011770 616965797 593659808 841540928 163517689 280702664 435939266 820482590 451550922 875297426 342845408 344788112 194252828 440828046 140171419 448386927 372214567 521427899 883305733 916660398 799164508 918631172 995092183 996091623 908253451 983595718 585365336 661578537 577169891 840021460 118138395 190931499 722538134 840890748 824017727 958756993 280547021 289173359 720019953 734741749 130900717 695515711 904367717 935076264 549842181 774443668 120067681 155712014 160954628 775572686 210617957 678857429 633191235 915631079 728254565 868169976 430672214 872002142 63409557 374397927 685545912 724345440 980706010 990886531 174032132 466477064 749108913 772593549 239113058 750150507 643825321 805133670 27373307 127734293 570199189 851021815 205081186 772703248 591871654 729505793 740583262 973328180 55089059 540575665 306434600 484258247 88805945 276017872 859206122 970832799 584968363 729271340 190418150 360452619 729850771 829699817 756367967 799300714 834411127 871859844 184455906 890992846 449143298 688048794 214844122 424742982 344283708 685042471 883096781 967645239 202219692 841188305 587849926 596877215 212991600 858348497 690752249 704292911 904470481 910561663 578525377 815257495 138055971 549511944 958951353 996805856 368369633 900264586 300741918 479491403 303506121 506018886 483412953 839424056 498594001 567129877 182032630 909508144 840588256 941515024 582802688 834248912 74794292 889218322 613301019 855734890 847873490 918441609 12480213 179518890 430182925 980811780 326688759 699078321 456190228 965037504 477001742 565082026 540468858 919283575 194961877 228559993 978281563 995060159 322477648 980521984 137734131 694791105 429625678 937555893 805680296 816959288 486248667 796071898 597299418 816555340 830069827 995842385 170510094 778739176 699491522 878467959 417711692 881066776 797661914 846190957 605562658 732575034 34696052 875839720 635379143 692982026 137288200 476834031 311221986 436347689 44582376 977404399 167184943 744396388 651435596 848673388 292854435 316156548 363628999 421470092 265215165 790228919 707520677 871795458 999255758 999272629 979662380 997238481 365714835 730371118 221329223 632028956 793503762 894593349 725750451 964845880 338063547 455214287 59913713 872563954 109298265 414238445 725677215 748462342 23188655 63931902 333917126 368396695 776278656 928296396 918124852 923597943 158077555 805626903 128593340 591214225 331858728 861637556 131816126 441559239 984193947 993466194 521580897 636420204 42277189 758795327 419847346 695263941 360392944 370206315 135248153 584241617 117519325 517875634 893361476 926551945 365446015 958388587 910410530 961915558 674188791 922619340 749496634 804886390 264394166 666227568 820329719 950374242 899310770 901384623 590803608 670049021 531277933 627863545 400556161 971845936 888517310 960642600 103521801 125215809 436423546 439753460 578171112 696022055 496631227 680011398 751856383 859814541 70012986 112553377 331757171 865555560 281565713 796919237 16525819 786719943 651287494 909645733 963306745 965495311 61507713 418839207 680094432 702762995 326778083 912777889 791059981 866134887 474274624 536907671 518467333 894097390 956835253 989377219 381783927 674360171 912504644 958537503 810681309 867405829 717374524 751887577 723719006 762502703 257672598 612043189 161319727 350843127 489758932 812217791 112859215 183374327 738614336 895639813 334737778 994618646 513381990 553076585 564483750 630789183 314039687 770128214 291592735 719881200 917055886 986701281 410345789 710173341 353965978 752775966 128914254 142865494 674640562 713761911 584085612 664040557 569962011 945668313 114288142 641915708 542725240 856612047 531310004 854113710 761610802 979345637 33042644 423465558 766247814 987014065 275261650 526311261 177066170 401672733 828807912 903942020 296462093 458703732 356076708 593439512 128785176 454115669 277882011 868783209 417913475 967720411 914897842 946362854 322970433 752957934 645075685 770982802 31578003 658829481 418812497 917145102 320543494 321601603 365501584 394888623 153790843 256278617 578226708 991862093 411977834 661356291 944450056 982980143 233836750 928264216 74509181 143017926 82536418 144226076 956189590 960373879 750423527 952715002 799211582 862131421 559653858 933712467 489175692 921421936 718347358 752597383 929605290 992491938 890294878 946343781 235956443 412330682 893772317 920715372 650901942 737283998 68069697 549251823 746717154 874589397 133878310 212852985 206307541 306890395 703264577 900332571 375610086 719862090 769788227 784051344 26897217 169617546 548512654 573123150 588541000 948197793 811690328 999186115 646935224 691691101 873781382 889970611 850735282 980911888 243952507 590975268 399920932 676174744 552588647 605375928 816661586 907868543 464569328 747591226 52919341 669883964 673591615 779748337 359101496 549974972 665841786 834433091 902099592 940785966 581739864 650322323 782764138 986911345 574507240 771511259 249076013 474549397 31965751 217931558 831339523 926984713 871305221 940106786 650059527 845416674 555428786 835885395 247796379 836332332 532959037 880077956 657938081 738816848 42990498 426029880 346043092 688115670 657574716 959543220 610244813 770800887 187625465 415453540 619498755 809000980 939001360 945186295 192785300 590922269 168530647 557530549 196361012 538193240 289586113 868159145 696803257 783736805 340462669 739703625 791225416 898382057 331440568 875145892 325738016 945505793 451075705 850505501 271591584 779260567 417441589 543082063 329726918 977679403 439480757 718019191 533138516 893916531 834091016 873567595 206759282 706118708 172019066 658696177 622637059 851982309 48055351 679457133 655231959 839826760 295707879 543038982 20676491 957306688 723386722 964014318 291076101 432697468 22279384 405350524 147002663 542360812 39400419 308206531 586363658 713273962 106196536 754134514 234911717 268288560 610004640 862895825 502036583 641350675 197112494 965883441 581081130 919368316 908710558 938060536 634229557 662379749 243505284 432670952 623769158 871510967 303153193 993554490 700321384 739545587 42787401 380701862 841451518 887513879 460142428 662474788 567605642 958110908 561356620 664797329 626385826 674475708 481279648 782038366 399271483 902545541 296362943 902291379 878865796 969491607 428421335 802746922 688699401 944778198 688230680 817820177 74258900 546249395 387052895 517757823 537204533 943299596 311398540 359263440 719934213 836054664 61986689 75252223 989435637 994385772 398542532 871272423 156622691 639459629 942376602 950908883 83272628 429704721 896114408 933901674 274195697 628539473 244755800 944024788 574547554 893832151 842321460 942146534 109786451 289817669 838537645 882432305 133631475 260922981 217746750 353512797 269401271 293662095 583528262 843293491 888005781 980518909 971032872 992810384 585334816 875735197 942345110 983847826 120990134 352090894 62181926 463672971 19481662 443514694 538330547 859506546 197902721 527858261 980120336 989007398 502110476 570301466 238972036 561986113 122844808 279836212 786367866 965522213 941001531 997271159 549559596 880669693 3825886 235996224 913696282 949280939 606253843 781920578 736536590 849239544 385350387 546470782 785821837 961554751 746336870 941749564 232960594 779763176 91439195 889928196 579376805 905289112 664305427 763987373 213769587 811028369 612934108 771130369 150592020 718892072 795417634 796741606 140546466 942633794 879247533 899392861 284963962 602252771 750862765 790502880 235565963 338587986 833081443 928439660 837307529 891929832 846760103 960030034 896561528 959623955 856212309 886091818 108691469 289791516 58945274 440906174 664735392 808603250 543250597 821766384 720114684 724666340 138882849 647498460 96304772 265366095 516092254 615983656 153458376 440009517 696893538 975961779 755571664 838750516 228528390 466387524 893723034 942662131 582581612 597367072 643017433 757866934 574461759 826735100 394555459 863033311 28498742 144730264 225322061 928205825 193781053 223217125 409764415 888983658 71442402 676970578 101610349 341357473 46081381 969606511 878371967 990582984 494320829 572764300 837582759 985165330 787539347 918300970 34065578 537199346 617724406 981438973 323327511 544831027 588364399 599913535 705595730 907609026 646145923 991071379 952938058 970200817 738738626 797270028 174274134 401664200 245058553 443944392 72919772 779856401 453513280 633940489 62995714 307244378 778470244 984488856 843706907 878912039 238310132 662954357 145058045 750945089 281904053 321048981 940314607 952507550 531364006 544207823 693011363 932626275 275387318 899380561 868457349 969139419 43498936 744883215 405651707 472163950 291547148 343480512 661832126 887782337 562070684 687723873 340120921 748915092 481720654 967462388 502292563 674668853 837418214 924195275 936066822 938380924 294766715 672016529 253308025 514301664 80294819 876058680 182642414 414899956 656396390 776125397 411245005 762485613 658505316 739392090 694710823 751735430 936053115 975799047 96278909 950125328 524794337 676236795 136647684 622680126 399506475 507888422 642289099 992124695 650820500 981091094 510068107 971037815 271316137 780468172 494590528 808365624 444032814 648689941 652155100 860771919 865488058 981445731 316062323 800688762 444219876 891345000 409696940 420692509 761421994 768536286 100941770 582323572 454101302 988627402 139506668 773109910 435110140 457181336 15576813 687563392 821921811 974569088 847588979 950095144 597889655 871989942 437876209 675585490 564304520 719270099 955017354 957949998 461130737 859689426 717886179 803347786 715768191 949705106 661286081 822592346 697708394 815037120 424643160 844328079 300641423 534173877 761096728 948636586 700955167 833265048 439468101 810209045 368511735 517904651 691167797 728025919 914422106 947263014 744877265 890365299 288740098 324678365 378787276 590031615 133788701 558353973 930657442 933253703 260083476 822267107 295862920 980034560 487215683 505549083 624580364 977531347 945758658 954274269 723452387 786758584 406672243 959407861 824431567 893499141 405034627 917762107 471506950 599740819 927742792 961921306 453088788 938050698 358010263 692246710 693026370 822766175 746228987 822729755 118999334 402894177 180745855 477923845 609763628 789296183 471598355 799871733 129598169 476965061 594608836 698921037 20884532 377056442 904386372 929365761 584650613 929413847 970844828 997467230 999509940 999657148 140463243 569312179 617275703 848161593 477943242 889853178 33050967 663676773 583680782 895940790 848213212 861881721 348343989 436867519 58545896 485866550 665412211 849758821 557816094 895967831 606215030 736283879 628579620 861388912 759392864 962287257 279490200 867114065 79580095 91280809 671056616 873307343 520384376 972278748 664123808 825444384 486956784 976193726 281793857 802230820 589880739 980108962 117712026 820448924 892210897 938477481 912137026 950989410 948542604 979778987 403113138 988188989 636957748 966389631 393496673 498161355 253624180 721504589 613805799 850423395 654991079 996900171 76929649 726654325 376839609 684709977 535350911 596923435 342667157 399289475 965902657 976062882 640075954 644926146 169891959 515907744 30212637 915149221 142845183 749152583 120365506 530495057 340528744 426113100 459320924 998217374 640949504 750868629 673373111 788420236 242361415 740057578 42507501 370343515 590372709 960989315 852184669 889496933 68920236 936339640 124175683 257142063 36320013 536056864 302962232 934262638 94986549 541765298 675154858 742386751 970508511 984986413 13896662 941468407 440587084 622905803 942314470 983442098 728958625 982840088 586092794 617327312 366619024 883144244 136527893 226686051 681997351 895757163 416655548 915014628 746861640 810660384 99996203 847425095 92701088 196618780 871085641 891735358 196131466 768001711 543474636 823094766 944715762 981809481 870933873 972562128 224668061 965632571 907799341 964596335 539698713 780853810 111555662 924018190 224459530 884821956 330820573 547917413 415662580 708915332 400849046 808289269 657523952 769543324 991782372 994988272 398833978 624317165 72616030 115279447 972679913 986346207 979678935 999552869 117394707 939899783 860039199 986822280 791280059 848452100 879431905 920040852 188758394 789266259 155875370 931564968 633297207 769755010 804168171 834640796 960079549 995739961 173266501 634081606 919674030 989703425 656045815 926081055 208053592 222088696 258645208 567611664 627019528 948452073 102417033 795318370 857448395 915558683 342343717 603125183 747949525 963029613 582462429 641873336 48834517 415096876 690487321 822313914 348787537 818383989 382437868 482274738 295159925 888695439 66860804 398734360 296902000 588183171 694931124 787217735 864759030 998364873 698301705 948442686 22119774 522939730 313990728 654370142 428664775 686136102 334024958 747076859 684271767 865100945 476104773 921765387 108785913 142273529 907002413 928496046 392137646 787703834 8780537 528441537 450476924 754961302 539474508 558470119 816454923 858933630 273527660 507332770 201381758 460023071 269677194 754626293 979473840 998766576 449987852 808990394 196860140 353651730 336776643 986715245 510713129 825117848 332804071 665396049 53090142 854904490 298544812 662505132 633327088 982194156 815673422 901571861 768192619 865911917 854624434 913259664 681994038 993852269 349646657 963348935 843571836 928916761 792789481 825357657 400575747 648942448 34400203 825997980 285998897 737201642 220668174 495484042 472330339 934276735 809127232 915162500 85479315 452432257 272698620 898086362 420128116 489269863 785939268 977497052 429782668 718584101 870213135 934764598 203037537 632564838 532186658 833320106 333142551 751338755 251026543 481849364 439192494 899510190 824516445 899590387 155108699 652178772 86366014 950901347 354955131 374463634 950086107 972678410 295882995 925399574 334017310 469484114 909532598 984598224 703537737 816233706 379272665 843590552 637281709 735303272 73781132 688763225 225267321 926360480 616107094 628828179 514979796 616987221 557426254 574165738 695452137 724485249 729258583 840223611 412672748 961453847 623524191 745664472 625366616 646072217 625997908 979310354 780348553 791359927 215033411 985383555 139724819 978750182 795214418 973451371 581320813 826887334 999960877 999981433 337242307 368764533 15243180 84408528 239915693 764463455 196422113 949958280 879784269 941179643 236557426 310799257 829381011 846969754 113215452 897418438 14741771 501587477 594125193 754046828 164289913 961512861 694454487 842449279 387554386 615586916 253321713 582230556 78725286 339639138 350470151 364823202 311961027 665025023 53616775 275204064 870845856 985722815 743797851 793505637 851435974 999034360 755431088 895253387 104470238 305649204 547893803 862073984 446779231 872768780 323020235 636569138 932182662 969662576 60169298 621489819 537119610 963133104 407849876 472798678 709874688 944955915 827072832 849902038 757373298 965304702 209009779 448870402 77908418 522395063 483103791 771755300 915869672 991906527 771913169 800870257 259575896 778587489 389659150 895745152 241325017 831698767 680683618 732866397 205945966 667488087 99485206 410002081 245171973 928340795 996933203 999578943 684057982 905669305 9394191 205117682 417426174 659371519 475131597 560584958 627595079 628340229 548473604 938108875 900139187 901973501 316900363 815823979 261569007 510904186 227378712 793276840 531974890 723145286 510078822 555198939 505537329 935486890 979596788 999714607 786718805 932607985 763459064 807011920 671886196 919739931 203275277 255207151 537891626 618284553 850126398 959714340 203341376 356353583 711169524 983858146 66736756 989086259 77607085 724293375 408289973 992928662 368560100 572915961 351308533 983724529 82326539 419705739 22248911 915319365 609587456 998703675 694430432 738595478 132801483 245574800 879824642 988587854 372707182 642582419 682583985 848937928 883759819 897839623 902799054 948975292 773594843 807748098 419672875 810427490 113723708 155453347 986993293 996348553 342322438 677649346 144579836 863385401 881551161 925596435 923162130 995418763 316743276 561029216 649934867 853524630 522573711 581764580 524449560 816817804 608962489 825097827 925397309 929604965 785817886 991190048 909176298 991209252 913342031 959381940 791270211 828772546 314005655 436945856 375723135 912727675 820906724 847647211 930234647 954852646 322022152 842755493 3407472 952556676 804461752 965359968 990403450 999901755 643393395 854291831 593945967 944816063 246160011 435216101 76827714 197723160 968401903 991394236 603730759 670040423 74087524 800013339 243397518 712196086 474888891 855949914 611033134 712969799 796542467 963332479 115724812 609554266 691128999 735651415 76026155 725954344 469886300 504856601 253096456 646012858 786154663 964048120 954708389 965373775 307175914 577169784 553539647 635986806 739290237 981104896 686838285 776285025 563576635 870393151 126714122 381324113 839449299 886011592 456617461 955326374 610268575 689698645 205068939 654551865 438081409 784811090 88477542 115515690 536448019 803422136 645271025 825613761 145561272 267670020 433934645 971221050 762195613 991871732 720879728 945551264 503192819 867546298 383407829 706620055 661946030 804903903 309031272 643869271 709665632 751105182 606992872 829395234 293047364 811751636 331250958 856610607 549271087 731103076 514995528 578498959 20042851 875343837 631006671 928313312 738238565 988072925 746980343 901418116 790009344 969382796 186277115 314010452 100288942 890552339 691931221 693542383 572714529 686401295 730848066 821466027 482699848 752297443 107993974 660899316 601077888 727149098 132792269 252523338 448619307 621140477 549281315 736941089 406550027 628265023 23268222 839892672 778867601 927545808 475970288 688266499 456746396 846784639 759501412 865522220 647448821 919456311 686815059 704450969 534689884 608742608 809428310 910910474 151003711 713558652 103205449 994927498 737308149 871905355 286843320 660358012 24631496 419401828 501363182 578093877 988643092 997637513 942378618 976133319 167785485 823714623 281471763 840457221 171438233 194897831 928737836 942106273 360056727 577530162 356272200 413605432 782131434 959964047 466881706 995933031 259173638 717318039 403844921 932252480 817830448 937349546 384255738 575770150 891717375 902300965 881944264 944450109 469874202 545184303 234529243 236672085 216538769 969730091 970892536 985044807 831637211 891087172 840959290 873374353 390308384 844100095 345959132 717241338 808036802 855856039 302514208 971080605 177844075 956133666 770457164 869436072 29024400 457213424 917261937 975000058 765353151 987130861 676978777 796315467 471066885 755277565 700276722 781725575 515524027 710372129 764962190 946005359 484987110 856477888 955882583 977209643 1891074 795773362 215305138 811564159 896395559 913024839 58415385 751328766 742932624 867591221 970058340 981192034 819040830 936935787 307523711 597971925 981852563 986716009 274345141 289152604 149120975 673992493 567265475 906256399 592657880 964581096 741810171 949123730 836682113 881183028 169954768 627985149 747017614 767914772 301520494 738500602 85400760 996283101 458329106 650900031 414181200 439397981 792026130 944826379 910861968 928716100 346366379 878911802 80678996 820381429 414849672 587755599 330233088 564747746 96727349 183023444 708452003 755920826 564859238 912633155 532577277 827675093 181890868 995643258 39592753 973685711 169795554 983173341 232858183 528109340 319830687 498801926 159518700 821442467 590108435 929516950 383052463 785074824 710504379 843331460 275855870 957737745 826520396 971677737 118422413 804435019 155114933 756767738 993920639 999023024 758080927 997945700 552390826 785474863 448824726 842438161 20465590 607034353 279655710 862276768 294900995 352638439 855241815 879483354 502474642 789869010 700888333 840814664 759196833 992678958 284986496 421327861 412625240 789605388 487858520 708587715 469768035 885477330 14530618 328112140 405773567 641842728 548716395 813074692 951503293 994191663 839794217 918850635 988818432 990514727 167220918 536322508 991041634 991767309 307606298 326271233 304764264 483354172 363107288 795986865 22743437 336846022 895186035 946472638 805451752 994805665 533954208 949603674 621545404 818979535 74430253 986646891 935549274 951917378 470519429 623897637 291762667 732612194 217975102 254555645 482547558 946094297 732746962 899956500 369151939 986329323 722455333 908262475 117244690 196889558 871422662 884798314 218029970 412762334 107563661 359231488 997881804 998336684 224365930 972227402 121073339 966466203 607361460 635021414 490646133 770326870 208795702 982679220 562666653 761695420 536807499 737065639 629744664 897766976 558092203 658320198 368092513 691917429 390747412 423796846 252772418 886933815 871502884 915154829 300508076 707688517 87057568 880739858 910115605 920004645 657567216 973171696 284091620 892670874 676738183 681395518 278117398 566983164 517885219 779221876 11118573 547684300 626618925 670549165 52366547 627026993 159256894 842152946 704157530 988842647 391057007 709715644 587665016 929769374 950201558 957144679 815383012 944594116 803483627 839565735 131494007 660706541 385718646 758678417 519947038 977144094 317787971 723511208 678835910 924377895 135211735 138257902 168742061 964476279 352461462 950142649 937817518 997528499 608327647 767595656 479653674 741109612 495874988 571103960 956987778 970749597 78321074 349537745 879348824 969212958 966107644 975697680 396250125 414203800 895499773 900874458 448305087 993013675 381886433 454758692 702193358 971062389 984424030 988331216 858855265 898960682 170463033 223491900 189593831 246797534 912833795 997378774 528047526 880929493 543772807 602442545 136721178 955547747 75716035 625144248 458917868 610316239 71654560 222182735 236812396 623860828 459328505 982755030 151088930 687122574 480363099 701203949 952628350 974181081 341573701 474036583 500674149 923948349 502213048 656397286 594899419 598700294 580413811 710201123 380896011 523913862 905018881 943390705 446590452 965690685 423707404 661165271 320033113 982231736 13699835 609288052 939671271 968763745 2593205 612522556 37644348 272041889 377569491 867020561 449602298 511207998 522316202 722694379 627722231 818666551 297410505 430899944 78587492 586761701 268801260 349381562 342448578 790481453 246642991 697300483 704859062 737290575 710876712 902220902 315814263 318144043 55373996 899927034 436452032 743451544 262050012 881746452 54589012 997310112 535741203 638615050 795232193 870030172 811654660 822194924 938351893 950542190 285824661 992188692 134363326 178542753 321286027 372827246 667900386 823118045 925916690 983408347 401676247 860748273 175048528 316795614 689684401 913784548 243274664 422763136 763563206 839348249 631810340 781462000 110694985 766838656 621127814 833365879 946634620 981539485 739492878 884173560 548688993 845578386 524904583 833519074 308285968 990770658 539906715 602995421 468262512 849372898 550545948 920153778 576905310 944087003 362082833 603449597 174189908 259511491 316422061 906530819 392939301 672416127 236237680 931269751 840944036 934481614 344391462 359316023 720240491 926122911 786741510 996126933 38270813 302336761 890422382 903570024 405120006 887573684 399217369 900815611 444386627 835960969 823477087 985113172 305910686 350333650 246555556 359738590 762116510 963038426 12531757 113590172 245488057 647230974 268726284 976830112 531477002 793181330 154343102 257851616 797188359 898089893 968433088 997530114 118751249 344636054 936788945 983479839 345144969 625582695 78683879 686011890 320573479 580357648 330035904 661123987 342824729 625876433 517910860 852347089 237129602 959481541 191642999 620147132 666325540 924106268 243003416 742514466 872309137 919013144 700713085 828475647 628559668 894198059 617147487 739114089 526849341 939529937 670987813 913116254 288321904 577034273 758795878 802326694 414734314 710613934 217808903 932091934 495959824 753004481 92663091 697813116 90672489 636233407 748128006 997803367 459297851 851107399 476919149 579305262 730991225 974486422 891134472 930634114 762905485 820336915 241851530 654281094 192765513 676339642 577666182 799360047 968783874 991653543 275914737 788491872 324320824 419941035 806399324 901389704 253413237 267967253 784200371 968865540 885134846 921480846 761359388 981429689 513267863 786693820 526118751 950050875 585131086 697957142 959583870 979795888 46311517 61676168 943500018 989288222 169371276 297202365 414146328 656372792 890143881 904618495 48809267 306822497 77791782 573238620 5360801 828274291 926882771 995163947 227387400 405130169 340326204 956156201 664885575 775641578 49341632 383599850 64108824 522768883 240043577 899665045 577591362 900636486 193357389 342789694 385706843 413522101 377799095 421809074 634886077 795216511 153347549 909893161 831397316 956989702 408602915 534050905 554261459 665041009 646036878 749615643 505946961 872378288 598130862 754600440 261714883 910966945 861501694 942809119 428791195 911738034 490661116 729963606 790833655 846120267 104914434 459345297 554131893 740817757 689831537 734415745 175089808 219992453 196920113 354879656 288965399 975765352 495675090 911893894 676577435 718035041 767195842 863672504 59314865 467717325 54315383 531312457 474179846 757389577 241340538 786863796 528925080 560622428 412916758 798189149 652696811 923828104 392669225 768051589 628007112 634321952 963563299 991008522 805650519 911591301 411856354 526565128 676542445 800094888 83297784 634079083 662403562 841376284 940824857 979032523 216062045 673199207 460859771 866338404 703560190 954817394 611735227 931282540 45739773 236240468 115163609 667288786 304032486 351798840 851087296 970806548 527900163 829128075 418618473 693457038 922422660 989251045 657825607 871527816 835903020 881147582 247342920 398302809 201111442 801851871 952888414 973104739 253034662 942553728 877087333 997557787 516964852 942852744 929969259 946609628 58445675 354429733 823221151 960187558 791900272 848597559 929878274 944955872 700111601 868265704 643633101 693952009 474901652 667034953 182758123 931432513 436261109 927258873 279077010 284876744 761692505 837206679 118289074 509676023 913850974 977458660 275736236 584602141 415018088 827540452 940586675 955649232 910506758 958878079 46332469 419514853 596433044 645621319 837010328 883431783 474575229 869586652 36648274 223947160 739432895 797979524 385171272 651856040 659614754 798917697 969608316 999172992 274113939 401131711 977472398 992236471 206668459 403947709 701036439 884474669 79167473 903204413 120916606 272804532 136062111 228413037 16416062 309461939 830147266 921344706 298182689 400943617 106745463 173061746 777991202 924601198 464676748 748759580 453230345 503538585 498895550 883946273 448916635 884515094 916013988 930106092 52935623 900300695 457688262 991493880 455535415 635851961 140077593 236891910 525496815 785646085 71385934 716318802 378166287 615744837 547119046 624561293 500870189 556925441 703183736 751602326 363843053 815821179 559924618 803571643 654706016 971243706 161920877 594533050 124530096 724386078 262913194 341236267 469751845 963450607 922810565 945318584 952691714 996459041 426991221 706038947 499446366 899442668 863123003 958876927 879871220 887262550 171663487 536089124 935908535 944914478 5500898 764181893 348182271 882476763 540866485 958375548 400789446 812739675 236406274 368205327 812011878 845338729 469821946 881129692 563117089 997376589 760604662 906144980 295652716 296359454 141130864 855906948 371292108 396867951 114017450 320683469 782288229 938727312 377534657 585066970 905630605 908484195 808983834 860153527 737726458 746266517 90038515 213316853 410416050 748705145 898719156 908029923 623954018 768697721 829411436 960245003 797934715 909721983 885135317 926664988 57573543 826539136 753434360 840540799 221438433 938564669 72991313 770900410 503378919 535526337 819863411 917027803 694168405 940558676 306012789 308188808 46295314 733851196 598459225 843175783 48880606 66876760 424715859 811209359 114608164 895221556 189676108 729182450 279705173 866021307 422867928 866528771 888166637 965170294 469592508 612999183 952491979 973774679 273572817 450023170 251323701 691585553 999686611 999964065 896351285 973305085 70086547 563795799 358958737 637241878 63902538 599908938 480489211 874402541 558595197 828157940 357856145 691601053 572734612 873719211 442204040 970191189 311195443 466143418 660837031 690401602 500470965 571523397 584036973 975210191 352234842 883678521 501174706 569358945 248670173 885201730 500089016 702851212 121313408 207238801 624732593 802878333 486208356 903733829 154808811 447656000 316489394 636050097 425127257 558512079 474750026 705596390 315304602 902736075 867149138 911982973 542640812 838857879 843869202 887958177 666623497 701473612 811615382 966724099 704502866 711711366 289626597 887113616 387779244 888850709 265526665 308260328 82649407 596161235 309234686 745389310 115026758 122761626 131849992 541199450 978283924 982402724 307199688 368173149 989547169 997744106 53057242 443873628 612825715 899024163 635393770 781550826 580199411 635224099 154954002 922399111 750106658 942126429 154078434 818371561 912118661 959983478 899064921 914833863 634703511 888079659 894145146 983752129 411899228 865105901 423561382 885977859 73108903 500974697 203334802 914488795 918439125 956506615 383465936 951621717 258853014 683149593 664198845 760187445 966953367 990371647 246463276 695616259 485131974 673665302 630478348 638397429 513762364 968270150 691931464 830173589 621231875 639848345 614696585 845891083 961316761 972229815 283200950 651943507 564527797 728055423 529606033 643701049 847501386 912918852 375835535 488129065 333033908 522596746 862300470 952806376 754829654 870210849 309611670 899271744 635920581 882552035 396519062 733921492 660737796 962482849 564477201 777664196 366193761 580379287 966906080 987563266 215665802 655013604 682599844 851883639 304789888 735965563 602474934 944077394 735318197 943337301 23865133 712505635 625478961 744012383 895229621 930538065 339982982 439540188 177498483 198810816 805887555 885877609 216509184 398971828 642938772 646601435 523717629 826445390 616188210 737096990 619131864 671641749 882175797 984352181 281827228 780196786 237411214 760675153 606404200 943472001 845823491 893976499 483419337 989221175 2290950 397400218 135504367 829567049 172286106 346142240 37770958 415432765 877641720 885861636 712876357 952333337 710511272 732538474 487649292 752707203 254646579 516139530 237401185 849890102 1359759 958914515 841044753 860880436 246815223 392113428 188906198 845670429 809450774 974712655 573664264 584468108 4543661 333009563 288479330 784415204 942174737 944922491 898565977 971959327 315383101 488544086 562168724 951838883 873092913 877617745 873301967 963199031 449177399 959672237 311205349 800350403 222437521 297318885 118335079 639046400 529760133 697270272 84202623 519251476 33661537 602773006 149051259 781293229 587364749 631448177 330654676 576822595 953580317 974966161 531554834 737872524 830506909 949348202 203752765 715750542 189366534 383191906 956145015 995018073 749162824 823040480 627500617 834563005 730037057 899055688 590216903 854789179 731477437 916785223 345939988 836741326 340733 889093211 360345422 942264923 945499615 987216423 197922428 629748774 222941063 499858579 452735172 761468048 526722983 839148582 923638829 945279174 727063335 961158449 120574303 504306480 460798776 827123843 115703668 900932275 814593332 822433773 316287315 895980762 757118389 895220292 685793977 735716599 294829417 346053089 175626725 418739037 386364124 541902447 765003038 795569842 450990716 549374408 642111727 932871632 511476117 766142218 648821770 713826389 347555049 542902221 668129849 697358278 953109808 963289900 348893366 411755416 742401073 908886304 384780670 721397840 777897150 921973490 505374833 661959204 621299247 691071406 744439331 813501848 892811084 941818780 301677234 916309834 312909436 965769544 153134651 851146340 438897102 505500773 877177382 946980179 705298665 723356031 779745344 781431920 171008243 923713435 418496373 785805240 182400279 477552421 712013622 776638030 243607115 262038515 707568150 996835148 177691059 814769920 34061160 67219828 25323529 463399083 467521554 537062067 279432292 723752786 265919942 943236487 899441755 932934450 69779554 645696553 736152415 969924693 704712926 914211004 750991958 774334215 710960882 982874299 781219527 786762995 641487153 693918377 809007162 961208465 630725756 817843358 506060696 954236464 354427442 507966987 841666062 849709529 280055785 291266970 955885579 965560759 891387431 940401501 991963883 992221441 865204594 866546290 541715577 751739358 420591023 855830558 404931577 864001801 7479431 232950710 655354246 847557439 987851180 993292502 113061467 358768350 338833351 824486691 216177094 440785956 486007274 544572558 369215679 485424820 572270943 776029699 288456793 427258838 994724764 998919128 360485032 966282900 596682407 648626394 402914038 727531604 313522294 695250009 895975229 984751175 347668394 834927483 985855073 992862667 968227609 997842830 238992631 901140164 56120023 197799378 674585692 825061548 285590146 369692343 487820792 487883271 526082746 846878858 162787606 778520304 50039909 89716696 771239093 882969949 363924370 942772737 460302017 920847051 495137158 847378576 95030159 850993260 168340701 457679386 305614193 381363050 710773289 824356835 792866861 809185957 827209419 964817599 401850800 986952028 653490722 840857807 454348042 711827369 461207952 685354527 944655527 983315126 730561527 781596883 723457226 975873806 388135304 674472134 486831839 762850841 246205349 795721497 388042155 901694323 512356781 867016729 779478478 805751231 221513918 846827658 894483726 894670931 377842395 947947068 612328681 790837669 885828874 928797455 100592710 231058546 300379929 761239684 896262966 927889541 35845188 307541841 808393165 835595456 675500498 711017762 134707015 365462985 611576444 810555289 548881633 877560832 869810522 995845384 344968515 377750420 802876065 809016585 720144976 853984918 741579756 964313191 64028161 456213788 818614485 860666367 7241255 651266576 960292271 961935524 185872899 285544206 130200230 583789196 435148902 944075806 79335988 463259696 467531096 556928845 483215580 557611494 163942115 359591609 950985820 961837693 998496756 998782557 550331320 843404065 636542136 823265997 564482846 935548699 66200707 660005412 868341908 985807294 525927732 857889829 19942264 763880647 441305349 778280152 910818428 988130327 665188400 797827053 207987297 924177984 317881596 444153896 505091328 697276620 782658018 946676888 882765678 958121275 998060582 999800747 830175372 987151129 154117434 506234862 396068564 861097148 978478415 999421116 792625117 956187284 850511414 901599031 714510104 915302251 280190604 375969297 816842883 918387917 884666380 932115532 39500995 457197310 95320289 586236814 450572037 580621513 128826550 493527191 760581124 898642743 612700858 692647534 14335295 685306645 86001078 999885676 965898658 981600075 730524027 764811085 330726703 915505773 183504212 366041415 273001147 869626915 538485135 782320283 665901976 747561328 899496907 951568576 583634319 709054582 118386804 325005843 254269733 977875532 168609202 482451837 622622381 873007326 793864618 890922790 288441045 991638316 15893682 759293078 755473830 800535199 613003675 842632861 786865208 926678102 810006808 915918859 169458709 353213734 492876488 587479204 14113818 780645931 510915357 597456854 357705977 402322093 667910644 887489641 195262762 732570298 375426956 430897366 650924529 712913712 235535256 804391632 924218305 941896765 519632692 924103288 934082462 963189408 974932223 977358762 937150043 985027426 465805940 778703985 996080484 999231835 887902788 972361655 234242779 831614284 711699005 984551476 702264508 820966298 267060965 920118662 282824080 738818106 948495916 976604739 93872321 763502385 11949060 301015035 442152519 847138983 809456946 834120641 323830565 403122741 1934318 69404412 566039180 859812563 557323740 941946475 611827750 760414492 551922560 685402271 509953858 913655584 484641925 926388996 686469282 976992111 967481596 967596126 347773453 659566502 668828003 984705738 825263494 837835963 705419163 845253373 823909375 901193652 753366647 777748643 851017000 947099645 9519863 931323965 376589308 981175678 282870161 373529439 713576466 717113805 709402289 798238704 450132485 628324243 369815387 986266271 578552210 697628317 286436450 671065225 302983149 493896720 688658431 747928590 432741320 878387940 500314448 544595838 330925377 380460844 970723521 986164009 492479040 844999030 765669937 892216154 182285312 655344765 292742948 434292340 86979237 117928739 451180337 724431032 517088374 818374854 34669170 862305574 137704792 475028314 154968792 378373017 238349241 466059435 161406785 183815267 448987207 714178830 208546790 364692761 388713215 700826148 89559764 740356337 850574759 876534195 94114502 700467500 387442114 829137240 252632237 795084676 283980419 345458587 128566985 990472927 648926641 706208170 538816313 661892245 740577061 893397472 423752972 931401291 662603831 997797531 829972963 921215737 391802600 407018698 762010859 927909993 279090151 788125688 808422189 893743186 240319612 377577178 63804110 587727089 645712059 817398874 969852438 998969426 758666345 833089120 183591164 413360578 316104177 626346817 994875596 999759878 461627048 783887268 709444983 977219207 846672377 893869819 871978489 892813885 636130618 782762158 911479407 974231882 356698978 886677863 130986223 246662873 725338006 960598999 512028552 829458674 257584083 553135429 663259661 735178120 48903808 807887051 160423847 436302618 958008278 961791984 998617432 999859719 720468272 932015645 418810476 992612972 380196605 996794499 718200269 808635154 814979126 958886903 600520703 622905754 866614489 880649424 832783185 986925382 951476715 965998699 124776438 972273138 325102041 420445891 761151922 907297179 114949399 952347820 511470443 666305086 117430869 999229124 291142548 835534023 369264066 419665284 21346218 318015425 617205476 773375995 699429045 932944720 172844367 530940974 382113886 751999203 84490394 878081960 565311203 797496453 362822840 749991309 601056872 819960957 373457184 990697954 363886078 367922435 342773982 538325806 955241087 993598637 137065873 993199124 786262911 856797283 439179370 607028282 343389109 928098346 995142777 996570082 894228896 946979815 830788272 966702435 679284465 801760126 268395375 893293870 242188900 816406909 549972879 961662670 923110486 998107927 689621773 990746627 623584764 782704992 248160798 676048561 29474833 507601876 30095581 811886987 614488862 860979447 113738460 588318836 13397179 219701105 152215626 808739656 23897814 569058212 461620307 556790833 296137575 608566023 795065085 847512792 486504756 497597594 720411658 977175003 138805127 309609474 995942155 998993416 973630427 973768733 80906936 466902744 550057700 918510229 754502082 916990790 434688893 636529780 141549413 677563138 625972889 657371375 439447359 796353048 274076960 973323542 207009261 855069686 26697618 325928430 470312079 595604805 790989106 984284134 175530829 511601732 788290277 897671167 152893939 343795516 797968021 914456306 297312211 306124499 989304201 991409170 837390228 991596405 938082271 999973849 659766147 849878688 279329748 519104381 438859105 467995344 838092839 923740129 920877121 966009239 686789703 960208649 806879930 938387464 799410781 827480670 924332657 940347048 479609106 888280333 437046392 587397651 799348524 979929090 505929033 805186966 674736876 925399403 577083034 662871944 934723402 997747930 619258545 809257271 56065544 616128693 321900827 672890481 53110516 553828037 499425088 814889956 820398922 891729495 395358472 835286998 1088141 407692564 892764997 918086513 209046130 675271040 588700554 643577724 254156054 994350855 770420897 882618846 243994815 422367797 357269946 889773027 87610815 413718927 203764798 844645741 513978815 674221162 830815309 972209549 844109659 950144686 424510761 829036701 219207101 367088378 623706121 801893764 428979484 682723116 252234371 756078493 344314596 404013260 878159917 934761264 429872468 714344207 285847887 587071979 114790787 962561564 93022583 544064316 70024568 614874446 513086389 729752597 708629470 715725871 675466250 898469960 312003058 944573469 838740531 897420127 217307163 560767072 879287093 972390384 633339428 837896034 903450573 951806053 804496385 825195434 140052443 371681168 201585459 620916393 939017659 946134280 990569159 998764128 408291990 500606366 621031912 658736033 461619075 623479168 609795165 894041622 722091921 723907955 320923679 527712662 746637574 994903435 814364697 988898462 780795431 971712379 689471230 703888847 529889631 541886655 560793631 826660355 133826125 699532951 273937125 406478733 586128306 994653112 447443609 849297660 469324933 944579702 487513640 856269066 175379285 459075090 164667982 665174794 154664632 969981804 786044727 823950006 250954382 769022805 82548010 535761861 348701948 922132384 286078025 825262178 26290247 149473686 864478175 977220157 141909982 642569767 228833562 507114430 811269522 943233930 872246910 935209133 729206141 878515087 341460559 421043779 79866791 946746684 401632908 851630407 462237586 872773045 372026780 388879169 33997848 75025247 262360004 334301367 286252266 939191089 945777056 986430844 366771450 824580091 983306493 992284713 169416430 486744002 673996421 905550595 312648620 347343673 607429573 992160847 6360701 161486905 24399339 288221093 447176412 668793452 962882954 966698039 207087376 367153344 792002059 954763473 767930550 855304588 299772097 976202730 645841856 859916797 453423500 818621651 45710438 371002863 374913238 593155678 275607452 676253906 302728714 522936525 832752468 934899550 681726479 843915470 910004669 995740566 34937467 36522589 1143584 966581346 598378330 799752886 320816624 985063542 159645086 416901990 66447074 409849871 974076314 980331047 318901636 683628056 977187170 993763360 71992350 475274600 96410185 443537828 872478007 996102602 75108419 862987749 604132425 746987866 808686257 811251861 73835977 997015900 226896067 536012422 819182365 997419569 306633990 673447901 837391418 966206122 92732240 919897990 560282903 768731615 534169406 553365168 529776419 530487369 613539201 799498982 838689263 994746642 793715844 853641461 710194024 715576410 479286772 827551651 951787812 971637344 419217441 788254366 616218283 927427211 165298558 184863506 942277251 952188537 615409461 919207929 228620436 546530829 543986643 716335724 349589170 494295147 5671971 156939351 8057156 801438304 828188181 832218433 115407674 384444996 473673894 823333703 623676548 940384578 112734173 926920294 204970941 459951598 77654030 700552656 149991867 509424766 580946433 639019705 167561057 861689340 295390459 597029942 499638929 829578247 258557392 884408760 333161527 496608474 856628102 895551270 645318934 864522797 290103050 725204975 54722076 401267508 982525519 994995782 567292058 800161547 647402072 834512909 604716651 607085677 796446926 828568650 202534434 895156136 569797752 899841612 457690465 625465556 216555554 393472059 626628038 914414898 800083669 829720720 975260397 998136888 728524427 960248819 591075959 861549410 988721478 999941462 530574265 733804115 723505107 873393950 392839073 759750631 801331149 833494398 665689067 883868389 369626309 830776493 147564566 512536891 78796478 683000769 220308550 422705772 459796658 600115178 227990109 751291142 648563754 847509645 596136703 801626107 257734604 631544891 500430838 967481125 509177673 670196259 338815590 769429715 811609476 879364680 160175019 435550575 908540270 986287592 615555075 661322565 666070687 848990617 265912445 467755634 658903478 669753017 955298025 961497758 323036014 742507052 386190400 724198948 623680031 949018157 51619094 548173548 393329290 692657335 249936072 270905973 664679644 983780654 545323194 937070622 696869777 825475484 788875189 914206689 229107738 718654628 667293260 747533733 80597441 432018201 322095002 372103280 259588816 795920845 700267914 863425183 932387096 985622786 912044202 968674881 756814022 840006496 680770039 914613326 583932472 656051002 782028181 947465456 696851463 760762779 841896852 875769475 374284292 659819599 334239994 412067203 413834986 771446261 233175378 982848979 924249904 949524484 124310820 166683103 169193878 235013148 574660040 672743318 49302317 292819679 155761476 353176632 57702907 983728017 54191284 333938215 391118507 632903724 469864550 823205937 594075929 700549522 871289038 937775243 315861704 620273342 637739794 796510703 672281787 750100407 626403518 701611635 533999366 855881377 611182190 707044772 938357100 978758717 232860393 415318592 349515392 584468048 199408744 753966433 785975623 894122132 788948494 795230746 222593323 337799006 192106095 563678995 340052471 770088382 689959960 908885846 610376529 714141869 946978777 979174898 828638720 867045958 432133203 751061014 328658111 464502907 790899628 998194576 346139790 460818181 110630277 404049362 141154783 629239550 22821635 204869574 166785505 718526905 343737494 739708331 48551309 977751011 100386203 667075087 512029028 699276554 951389303 987376720 992308571 997958630 145510809 882706100 114606280 208161224 340416100 639474646 136591203 857492660 378950167 697541772 391234384 737792743 595294357 957419323 543568522 637214560 638792669 713257406 457860159 738967638 685497843 867062631 808933002 934429242 409879152 433098384 216105798 754058589 51405187 522049459 502332285 672294104 407775608 845015305 175981552 890684184 771034670 858039696 480966816 748294410 837455835 855290229 606993855 925766330 627516650 786913180 1524618 306207644 608712983 804871373 747898810 875311286 560698764 662151653 294347877 297352864 438569828 643085049 423312813 506982759 512124329 787433497 231930294 573973301 783656355 809873176 946803462 969436706 463842396 883340236 196711385 633323790 926050591 969275719 704547571 786376757 274927940 897384415 227176592 275856253 950878402 971553227 196170647 241022851 795977107 852484193 147379213 884595955 510325972 576418367 811479845 925172854 934015941 977394628 164426945 400446739 466148326 771452067 842797608 901546434 546603609 844117097 557884902 824050699 540335335 656444977 512163052 729747654 181561363 773058226 765364464 815783158 737672151 933417243 605851810 620338991 306690790 701637832 641214795 755306664 890077705 906590104 144346552 628846745 484338217 953851747 823787826 987285740 305374222 458268056 116775315 778138398 717862628 939940293 796033959 856985780 885784943 985885628 860403930 993958514 683873337 895536624 360956313 513219792 872641999 888488747 747012971 824031059 795899184 942251940 187066383 301106150 881032336 982693443 104689343 611911157 582182144 910609820 201430366 933017053 347909520 726224029 832485936 909978030 639893207 737327386 570073325 654130927 990730116 997892810 627769851 943108309 261928265 826478084 740782130 864330835 491109302 765428129 290864791 488505748 605386780 649131064 278581917 490239013 453728407 689523228 736998485 988835386 309334828 457129726 852214191 886226178 726853743 792149711 89420854 565094223 15537671 939695216 329345442 944040489 740804602 896157510 634600623 877710052 121983307 221622401 479110842 913279341 276892737 674317294 973387113 977640318 863167419 901735251 833333413 882050788 269356567 936207301 236423298 864284805 770254030 969938485 561684137 749330965 198325448 967190371 949705793 968408725 216795833 965514984 167301214 507920741 997335805 998443025 770267389 954435917 600786120 789791659 221316981 816337585 987748415 993440276 268087327 635301463 282338761 923301187 29034439 833654547 329781681 886645486 671951765 732202672 873263985 935340646 306746238 576468796 174291888 232794166 45170244 317520327 979722616 996497911 741755493 883174870 795928324 834020708 149767861 929572690 878783075 954409814 961299428 966167979 171501486 177977875 576358596 648488051 29998941 978160187 636619423 787892907 504064719 783099955 216614864 787361570 378039626 385694253 979336580 995586662 739055612 777857912 52997407 516910001 823471270 946338810 940460869 978542374 749671810 976526359 793153787 854707319 353581504 424357988 527658262 591468430 160155901 547142300 814524664 894057874 631250594 810471615 256439806 381336855 411153130 939792218 712049267 884086588 796959371 954269018 713093657 997509141 752354612 962766927 520640144 603072091 350057048 412532949 769051157 771609087 783497820 804157545 254383029 777767540 672462494 728181182 848201229 977838681 508376685 750900192 525060892 932686575 324635027 420252023 566972789 935620701 843583261 860423638 248104277 707236979 657817632 681811795 678932968 927071587 363652414 820500268 147430476 336437800 779162098 902528949 826679973 916090277 241681243 860789011 576351580 626253292 860184665 867066678 750113418 952471223 502765455 939743595 380962221 627250729 925539905 959014955 659758524 726879356 107330282 333693553 199648453 807979644 643269873 843325174 664881354 708989652 802151893 968945477 497592314 911136105 124850361 200780382 246367374 422791571 398190397 459914351 897698740 899240031 167493518 989057236 657338723 849698998 185794330 353170956 726211271 808658741 423856193 837045601 434322370 761022138 844172854 904928268 839474522 939617455 726512039 815975234 292517599 982300856 991166834 993418529 370929965 381126837 137435636 573688935 15585671 726736058 139674370 712322147 220514059 750867662 367189170 637040933 161220485 641726690 616696580 782937257 527682662 594537501 450922793 795015221 682697242 989139980 473107175 811532713 109223087 356704540 66887939 946573799 617256823 783858492 301745514 619942104 223090332 626175018 722974456 905033080 204287894 679869803 515478106 762771941 774378714 940421215 646492899 697802607 358158966 384867858 705692350 948991654 756906800 838237668 452823207 999794117 492009651 848943244 478821783 734550703 28305574 513970253 438998436 740738752 205846256 464018761 966533849 989970723 531816650 842312035 55602362 962819136 61397873 393690508 951682235 994059257 631735425 694600013 702156013 773688559 411823242 707535572 168366610 247148248 92997718 384202126 428021184 863164058 768132275 959071867 309847639 705320196 315452689 872101208 446456356 572072191 434915024 573665972 521988795 847077906 93726724 366233179 885937292 968953146 200410251 221680787 59818120 239738053 563930941 896659857 692751417 875523071 152554825 206611379 937367404 951454329 811734762 849460158 350849756 790754294 846587318 973242729 712221143 742452551 774337062 858164163 951486847 977050978 475533341 505277464 757816624 891603096 430497392 485033706 353706152 741010244 502682329 732038962 536471944 774520508 187583452 251839634 475855660 517036377 846846732 977158121 434514465 967610178 179675313 279427308 524215397 968001946 733359612 771482938 295131511 798223050 634661089 881823976 434142639 538975720 255490724 369051149 410375270 825243508 108517786 927613874 957674818 988300469 285870251 336229460 367854006 558338311 144655646 551449720 10223310 579593133 409375275 792232054 952988887 963027796 382157271 436564974 324550305 695639018 981452571 985441524 210717175 979203879 322452534 529850121 796234028 833876783 907895237 915563445 800779977 955398301 231270286 679281978 881609498 886262124 678636345 879077350 802603739 925748516 958028175 987830040 908090403 923559488 60047389 589267095 820710697 822197319 133591378 482826620 311233149 801468479 319641043 530261965 759823438 818317095 58664332 786424396 396750232 991720691 440266536 956239000 182353415 503759368 658088748 951046722 294684901 866904246 155365586 795697200 40714998 960283879 370876995 872877704 3259292 993839057 434508872 927632578 505275152 803355535 753227518 785849510 959016730 977149651 667784525 729948180 191353809 570154255 256647756 423519543 46348203 803753916 863561977 916427204 468712609 886265700 995028489 997258380 853822880 871860270 413463958 421642080 22175883 837538701 706495651 798518189 412582604 629308224 928194198 987291976 176976820 227561214 386867673 714172914 119199175 525824739 333786190 612215287 657150746 815018964 951191829 995340229 838666089 919421615 954240736 971561339 221906490 378914738 720787310 944222953 422151633 826023041 623784187 882198241 125590358 214059234 915298272 933702756 406345334 800487338 842178728 975988171 617841075 633659173 261468648 892929199 225357807 404179846 987504079 988526136 527270049 838267450 170236224 708621786 511990124 731944612 200020246 825108234 729929574 793580296 513404973 720637213 412101320 867656752 13300654 592614985 236257468 278525949 923628715 962958973 134111217 510592095 105789035 346112912 499160218 909857818 866218745 932789770 910055000 979503438 69747103 320724126 129240731 995350101 24526792 192799418 623401064 709122656 253009776 314907248 712305734 926387984 541890835 911468584 644374516 822520774 621340616 792614421 960655920 965727350 489440242 899175356 897500652 975328322 607132409 874558948 376873154 515767439 945498364 947305177 746697277 838181189 840461509 866563631 532729424 694000198 986908494 990396314 97489028 948590320 707599 581435968 287751847 310032215 644974983 767338555 279853753 923517185 51886170 682955436 169229942 640767276 6494738 884791138 417694354 524113361 929223532 980717780 828273437 917242564 424583365 880724962 311826682 957785038 330552420 561918952 65957719 990956578 181492987 404189834 384147139 453500378 135712849 479411957 663565069 817933061 434440451 782676048 940640274 955442183 242267679 432357775 325451340 935300933 864253566 967145102 60148871 888751404 669473649 842285399 641653834 683528843 471276419 772461789 502352217 912547262 794707163 972949749 954342864 985313767 83884699 907878845 343376444 687573630 941652162 982182713 741340404 894479854 839932236 883685072 642976310 784474521 46705720 990727690 685887544 899826980 618282178 939453953 298721780 382960382 141904193 714970099 916768779 988910955 147748856 161192598 107665866 220906043 244839902 309265738 26415535 979449776 162414696 323641840 815677375 937573395 926188099 980209702 310469643 468460726 773344918 910816572 613627125 880867500 817863470 958453523 958066823 986819806 874477871 939855787 707222217 725898434 633630382 659734953 195399771 437191181 166806753 667182020 975134187 985927142 257964805 734105828 840169076 849874069 248314462 444719194 915969422 976547102 442590819 678090266 184194195 231930019 505059470 603461426 797865580 808838334 580762249 899428281 57970161 982389973 460090332 792811956 20053072 936116800 915027407 942296628 884237706 931575933 701224318 942420179 532889453 853656015 185963716 443860061 722983362 923964416 696916355 729640106 330103976 796132874 301435258 985125941 950115713 973074266 738018526 970958559 712722123 908731956 797338493 982348839 840541939 963261908 221433963 452758382 428487645 436923624 226638923 836763868 658727668 799650655 249026180 706257353 368974526 880009183 781690734 946945183 604127541 638345133 26955101 381175917 352768550 928297691 396405444 705775963 554249398 987465190 798600202 936667859 332642032 628874896 863310574 903207103 165823343 839100415 544889878 957006633 823858838 991748127 444255095 944185234 377975668 454032370 233190876 852795599 781074624 908535692 816814594 848695568 324351524 774754472 303828743 623566540 734869684 912699975 62809069 417385696 448429398 771435860 990799624 998336179 539361758 751825418 180175214 831833562 301002391 321499985 613321970 630681775 138780361 755948459 199428860 565910059 701291003 871525153 987168289 990297385 481248672 713245769 661175052 858146779 649583074 802260201 46882099 885180247 941050347 967829872 881051513 932756270 490035815 676049283 177262551 817363949 807667215 914996396 449171067 602343370 278550262 582503114 780806242 835895733 283436598 922857845 73169260 896636581 146439301 384177803 820950775 974445633 297304404 891504370 299500624 810800028 354090292 804431374 784853254 977560730 515896958 910142789 456872530 700722461 161954794 432531261 383612505 849646507 951266931 994083561 572214493 838290607 223820477 307498439 845799319 847946982 308500214 780347026 533521776 580603302 522693945 862402007 489478356 491178566 822072813 935534235 612102674 792437514 649468542 778788979 861810001 877030404 232063744 456987374 213855089 917523506 650107296 882198148 642436048 829245875 403977374 978872045 352694629 480820573 445997380 932658062 461394315 976157000 755226507 916484546 435067743 649172488 649859960 733936247 689305277 899586442 280028702 644238898 515089756 741472580 751338550 800275131 492754454 720778582 669085373 991626871 388294874 691998202 520887373 834786674 110162464 880567827 92063723 204612911 833406940 987373221 893714870 944188948 538011586 969135410 300250243 444116558 461703762 750551358 323971117 401645661 885122101 911314128 589470662 594888903 940613704 983627762 300086560 383865958 563622094 969458170 442684150 994237077 521568468 560678901 324023677 873097581 324271418 901366421 567235869 979965032 959699012 982175209 449084323 808819966 988964386 989035356 286015683 687681207 285712613 496953399 389163060 613157648 26277945 176307091 245182695 839759771 922771451 955142415 998261572 998783857 187115673 223803229 355008374 786819725 177553668 652493636 659940291 759396947 675995889 846636166 668273838 733625239 805273069 832053711 867938324 906159799 488036317 909449870 394906854 946795065 75368225 555438415 794392310 805851743 382546288 712641227 737043397 772637193 445699362 682995351 176720719 925686932 690029669 997455496 176885420 452761443 818555303 954947554 710421661 903309865 178686390 606903396 239012222 753247785 473396448 680331965 911495393 981367187 889830172 996827074 186746726 940363145 193817828 763417802 268534799 567947200 363661052 390172878 785277238 978452373 668160971 934490227 146952782 764170809 250711064 845417245 521274513 910490822 715200624 964963378 548502258 901649879 693770012 764665954 954773260 959355865 456243843 699906974 526555398 951874602 27134103 779459838 583953430 826665081 422014705 971739001 15383977 952984446 650792535 841008840 438282085 817931675 488368602 713415687 899972185 916174641 398894820 715647556 107554846 926138133 983691721 991199603 872059833 998650350 75596295 160896612 768570725 865106528 360813360 628644406 219482017 859950493 635250966 814969405 367705465 839566442 607964226 996062723 671172417 800606023 487068837 991341634 24512211 616548388 459590229 681743786 7601903 883835484 295292128 579270456 496427473 878980854 144512414 360899507 223093227 404400275 933791444 955848219 256544285 533774267 904048959 969139866 928330563 943946979 590667830 795315241 42721043 422787774 475643388 965943221 564048441 625296157 374442553 749279763 255396544 478647147 848204660 938128269 266985056 909598968 223985820 597736657 565585486 935363420 81948055 777728930 158530444 915332172 430394281 451937764 905385283 940892124 809540651 987285382 150131023 859603887 32552143 551628709 845947475 903320614 176670247 177969192 528803272 765318673 947871515 955133888 155544981 411789410 540480661 851109047 33480359 636270662 785155393 913280562 753249993 820381930 129558009 419596323 277556803 691105197 440879203 814713400 835876447 869156477 492442615 696057128 326176960 462246728 280259279 359829834 433771674 655665338 660819787 689547317 999172712 999290716 302563735 993049822 976262072 996247859 571979789 842809940 379085779 639002312 421745894 729049498 37016529 754169184 992036231 995952682 916886494 972477333 152660759 654386993 53944205 580898095 934371306 985976011 177740730 476925994 392754328 763546783 912848317 975247093 873531593 889479102 866760700 958912069 874015850 911225419 628895007 848019435 834685969 976013049 602557743 678660353 941384162 980076673 264404066 913096924 113929366 351138972 224042568 955119601 356771537 399348415 304985839 560404199 553732633 945900571 911643537 912719200 801565636 889678696 400297890 517524119 829591055 877344552 794015590 891436531 478428616 752727613 791308823 967265954 115499184 734480506 972878573 993002111 303675617 402699738 726751744 735930711 157316550 637806679 572575256 732938250 997277282 999225765 319101038 491501684 227826504 282924571 978880135 979071250 742940937 879823117 634779591 715366282 732921094 807022765 807381746 809282746 706499697 881131846 200791514 233146434 896402185 960794061 466704850 776046453 487802710 601478991 299563591 413663764 348908699 595314549 545068254 811388160 341303835 765868426 99497213 450367509 80059645 505252471 718086448 998021547 6534119 24041574 899325485 928782241 410067712 687765470 527318694 914017987 187096534 259055606 230317130 570309973 979083084 990782593 712583847 884560124 993384318 996514053 647229244 960991930 264338350 770241141 38939267 439392147 580434492 861084409 133122740 321958868 291894323 888513039 940186950 993370982 144431363 924451454 932637445 949113925 93343663 349852423 998053986 999887860 884189201 898090308 1749986 929717292 794635790 872196376 754403675 920266079 523764833 746815182 32537615 779588570 593970634 891562589 696952953 770776018 223176689 290177517 591803195 993620645 225031832 297673729 912059237 994426317 186206170 487706507 34775752 939793554 41312469 744027862 225760312 679065291 24744238 577482757 141813158 237055041 260864893 859304007 70439109 794523968 239749289 560340619 729174784 876310654 166332369 717925060 200057150 417381390 73499572 792520477 792104614 852732197 312507291 416003360 570582231 705821288 357359867 436448165 83370119 475091886 347448982 412549340 15287408 231997974 289278285 639478701 743898736 927224102 870980636 971221444 546141933 819024168 962904844 971925507 694499772 815371063 345651034 762310699 812037496 979306949 212134880 606742583 272166843 692027189 511562517 638410848 633837613 663169823 173274722 631207964 727825164 767240144 798791486 934076190 890949566 905298925 846651695 932405950 382633334 881973830 614825161 792637943 643664456 958966209 525653674 828777992 860894593 952017533 487785310 602301117 703495342 773604305 681601665 917820935 111930842 875387400 801976682 950671959 757937527 971757699 964022447 985986277 15354646 997274603 757270101 811640042 464362500 710186734 840557424 925244800 57377461 916936385 557102099 759125631 674693361 870941549 242634015 572444704 198326113 475458708 695901533 849238034 180061525 856405676 584756841 638808648 637082232 649766423 597579539 766245311 756494227 966809754 610532434 636555449 548480862 873266651 111857426 173303039 505176176 960624407 109315550 155061971 572194288 793193351 182207830 846667560 988430747 993097336 538444746 778464335 308081945 895210301 101388425 549114825 319231488 672050571 623452482 655948093 917628742 981691941 898985438 941794474 814860776 854722578 568286668 644595342 280055064 766323319 425196936 867584429 872697315 988604224 122741276 544940158 485083347 854161208 492911379 975275295 826349048 887398219 924531751 940499087 284847638 415336570 587349810 911082738 217713431 754324397 806028814 836120299 582432404 716730087 48735579 301440577 977795273 981191250 208294177 224690967 781574120 930804793 862691290 905912971 5381214 717962597 239833586 382574357 382834436 713548186 655886820 805736180 715241039 838276839 205552852 391696648 927762418 999200680 242544279 682195255 995863300 999206977 925334148 931330654 425532291 520505929 876485041 970502046 805491263 974240229 607792232 783535549 216142305 427176313 963133719 991236829 61746023 823980463 602953204 661892320 229018280 898854807 880401908 970464174 594574987 769546374 54298787 388956339 140508996 459136746 807569047 845884710 626559054 948787115 131885162 662578979 722195720 870955488 997889643 999632256 492946063 922472340 77649437 857306352 767278380 792091056 317577427 766172027 351452462 733066457 508676214 796654901 796443824 918056436 616411306 887622928 177996078 256916260 484185253 638880164 79856554 541827424 160724211 504064823 207803678 917853506 494138386 616167525 633146753 667305940 221962063 909084849 96197231 624255742 19317174 869951566 999161560 999752263 329072280 783798067 710979540 911731512 348339774 979764879 583947875 667956939 849419856 855381235 181016016 352019467 28197177 97650846 89060183 150372570 755937720 987893712 232829788 301998201 884275083 889280190 957162608 967318546 633471323 916390614 763983419 904097512 717641738 854932405 320904785 347219940 759822896 950090190 665599828 905134203 710214819 992097865 306451097 420536646 486192042 683126546 631251310 671653423 632958972 832657587 917699752 951541330 816440066 949126741 607446921 735913196 379131131 879488741 779753803 904725729 405988094 960806152 755433926 791332029 763679287 910871020 624769431 812591474 135439073 372088872 348925516 750993216 554220894 787261295 817101275 962920778 524941917 654551627 117533330 773883075 575257119 667483991 852366517 986724432 8513957 486743478 42539052 439127496 999032147 999112434 409524922 938098087 926591659 932111423 244477728 435948137 528171639 810621982 849681177 912671746 72390638 990768916 626490241 912592587 594062489 878207533 271134791 346641852 594634563 799073209 740324698 766325513 808976812 968329935 326513299 477031100 634064727 740548997 617694733 916974443 325364333 633018138 205163996 583240905 434284442 932911203 747833789 918922695 584064508 884820145 2029724 763723941 971477568 979190787 86062275 153371906 889785256 999402896 590486656 590708797 994645991 995093740 407523289 879640657 612453888 773762694 325944966 627466688 140163953 338437547 294217267 879206160 381982145 538243740 484495366 943881364 938447083 975501375 604175914 751034297 24254026 818846890 813458589 868536234 769613461 959378955 84114410 438391520 109976313 518842056 157699230 528236804 59747070 666125697 871464374 922346271 159243863 580259897 329082931 855693246 192665238 971437680 98901141 737058939 686811074 809274989 119374384 443597129 104118596 319468764 559650165 876347593 67155764 212015339 921088945 929059693 957113048 977472234 557340780 853757553 43138116 365011491 882929329 898756818 54218374 762306378 504208820 662395442 708145925 756385024 188920294 255288560 124511368 130341754 578268663 936456172 767517855 924565581 687680312 866505193 939081518 989887724 359325490 747589056 890225349 968707465 844045568 849431094 189277906 526373187 794650002 926594457 322018999 992317266 502388919 872463285 155130346 905409819 809316413 985376382 594365797 683601377 86608254 524139533 81583645 889603911 404633666 722971400 101187327 668349329 25121669 388613783 524081378 546340542 306623593 951616354 857181225 909602846 634418058 866633624 939723562 951212175 429441179 861229019 515871929 785337946 224810888 388574711 270719669 370376298 479652303 983722394 704514970 972635158 286752059 317059086 583908785 817467962 174699634 490570302 209200684 937279930 514709072 767065012 719056590 758810714 499314828 735267004 970386014 976939808 224791000 733489884 165698956 809242241 624448532 745959012 427934690 483743687 65131853 111920515 95594921 151558146 263123349 532643755 833432774 837842336 258606060 267984708 870966237 946749409 113929692 444484704 578961551 721831510 192895615 267964298 884164562 894870800 700938836 743069676 314024504 533042803 252804230 370269480 860710648 940105165 842320129 876774867 761061784 795081773 879415829 881080783 417657180 434826145 690301536 865627156 468823927 574695715 764257736 916241332 348542279 521659723 677934663 938093943 361367024 975850624 221385835 243927206 41767186 126673352 814109474 818126578 14644129 882611282 456982281 650559054 380346392 961131134 642805279 844609241 690561267 847033065 516667564 607554278 185375342 420212289 552299397 803426551 718077976 942827402 121521587 909791796 81777823 727615612 695946137 971779516 470353671 880348309 512075653 685802688 330592068 352157824 469436836 872622255 830716023 925474450 986419848 989132057 47071628 588311438 732078077 991259107 507448642 527242761 196018204 348451208 65933670 584227778 562266424 973836994 167241016 620211931 993718193 996958922 148378994 663547370 78678673 416409224 294169905 984490212 668567671 707127813 939070097 941532840 206657779 748911846 370802909 748823066 513325623 664954794 977210459 983157555 151576147 337019432 136784621 696482579 279498904 748275878 858757954 912880553 724714456 869955460 783880528 955450096 94031601 782788501 894400248 988509397 979196759 988932691 693077492 946583521 925356426 998237277 608726301 709773965 243041553 857755747 366758289 874421589 103472820 811448606 510040226 602449005 343264482 351599303 947155676 953185272 142452003 811602556 767827704 872101683 685115341 909416745 911567475 964952714 784730080 957190569 622301222 987123973 105403791 765380946 544087445 559210625 877133646 926730864 411311798 696674613 600071113 773957029 483808348 887397623 21324056 659478284 562685777 793309218 565962889 707937050 694550289 721630232 987233789 991682196 543028611 657642588 472646024 664363546 439601 12615473 396900397 751828284 962672387 991149649 660000449 982168447 824578996 834967836 654811233 790337332 613708645 888692680 489186644 908816658 161730007 855900193 994242112 996219320 896194078 900502719 960387756 991342470 197329332 198981633 944221962 974905924 592422982 950072258 945271344 964667686 791036765 885166588 125677733 914533508 91845147 697620212 175589160 488657988 464434360 986527846 983594847 992757776 667837973 844621984 83242752 674284173 864563670 938487396 259449193 755684879 383292783 812811633 984425240 984459843 457266356 876948609 852177690 938791609 499561036 525563735 632177628 640423908 4107795 254561211 444738437 981491715 910453221 922777484 911348272 998522985 748360060 959322009 383654475 441416321 144790012 355838783 199618051 310472393 350227212 413618871 834921657 904366822 932524812 936437290 50461499 127153812 134058314 202370539 400351251 903448521 162617173 623006746 162338471 872927256 1938568 384230251 83800335 131156816 475698664 885904569 727512947 796645733 774599602 967763864 353575466 412435175 300921558 857955242 412821280 894241019 729296139 826893656 892149140 892828418 588789532 731966640 642517990 992368424 284291987 893805753 95320744 982358885 5239696 438532124 485561315 803634807 479380138 690915085 581561327 891201210 249482256 439955809 523443739 969927809 219186440 475915094 525887944 649137909 214100502 888469471 764882397 883468119 116790921 237447217 711553666 856804908 931790087 935727965 857264728 973544035 732253261 929411024 850810369 999755190 159438282 963899432 750110383 897128652 873329578 931666475 77702293 313813055 300925422 367618008 6361594 681156581 274265022 622921178 927155011 947333437 744216308 835426198 974375576 994019147 989096135 990790645 370871222 894862933 574579149 849890289 289108860 701719676 847562690 955955378 201234817 926680044 510100093 571908149 316421456 911693723 567590151 586245725 635970197 821522454 760327008 841419354 496975463 901404570 120045054 561677563 137452063 467803358 977499132 981440816 930194173 936457925 34085364 648984822 279184904 545022517 874799801 984656171 402006095 445239194 73875730 339079349 955513034 972054543 579564199 756318942 961064428 981362751 483999010 635778354 632875066 727998954 363133746 566281796 583188932 907548648 250725397 771403484 797062209 817788300 61543951 891371933 542403908 977764660 281633909 943302638 102566690 223880469 56584558 715145607 627039729 883516031 432900409 736185174 200563724 666820462 571466612 751077255 6155691 444410079 27579535 110073194 192784005 219430473 595894390 886300288 557576791 827453370 662256700 914004269 251925343 728287700 507227113 519799027 218714761 530307727 672566599 958448783 328718371 585044168 561807442 670610940 379615972 658990503 497447966 523383802 215346514 547625582 54710456 786789455 236706583 719700478 842796289 896754499 159032606 636802616 301612765 616643505 915388493 922251037 477990227 913206613 707316165 859981946 868901763 946273999 623024108 775590771 316914430 895344754 864574942 914450682 843430097 888549944 101216570 726353837 589567146 848227437 958904729 989771537 440140598 757167101 194780799 895304402 604745143 779533208 632391828 812510732 313526772 780891585 879664808 960958536 692611923 714171791 140730443 919245555 852647371 853237776 561047424 813470280 506939127 681002597 130556764 293648210 597690052 910981307 262609498 584675819 968586653 996581572 356047513 845853667 536978588 733718506 940139040 996990399 416237281 528594138 85371343 126468209 255032115 575802654 220377316 384651091 376753415 785444073 814696337 973987457 884662216 954206118 19774054 112650160 541262110 890467913 513584671 593117781 940528135 956588514 718445931 909035595 709437963 741649709 319851031 682834225 243266456 440108951 125400380 663002134 368618512 438030315 177702955 453951958 795425322 983134887 498610385 818085102 248906504 450361536 247596394 492129554 554496520 692810429 493616991 776539314 94010030 153452156 891459879 908833750 678600588 741155996 984671437 999484081 454076405 552628804 550163927 954103303 104134517 916469488 938622938 971532559 338448886 801597623 330350804 376895642 949098653 975379626 535034168 891094179 855302531 980026318 122671881 709555432 761527098 833877949 747478136 964898571 707982920 869084234 1237479 116244273 13128098 33575897 348242539 743245451 471236934 723297683 922838836 972444670 357297831 423812906 746833906 850646157 752081738 810784085 830955719 979125881 453607961 530939202 948938672 950770401 855086104 882531222 775935267 776856997 690721644 987022685 258034370 670360479 671821943 741325749 163057421 712079467 406955867 706787545 71252322 847949326 406725537 952969390 775017031 794857676 797481885 960347422 377882273 705341782 524167258 868418477 862368405 978903017 242600206 784145138 292040667 389168777 206244474 996608921 36049188 224451340 569501821 836141457 825223458 838702298 332502516 654580381 216916752 601419706 191899017 891138237 984223006 998536159 653162749 661685018 765549121 787123526 835901669 989978394 107554061 697121912 773505744 820196719 913601343 928482755 393473108 701779329 185294291 219489650 239315889 889065707 666803997 935967861 856748294 902078431 199548110 283297204 333561454 700504462 991873466 992565593 751999131 991422360 28744058 154905335 974855212 997362457 718331448 854687102 432403540 941205164 125953387 834721511 156044998 230534901 395598906 913276737 842351274 912667216 681948541 831704641 978685448 989706683 117331871 266666197 979975842 986304327 321732274 810599352 598258682 659431862 913598438 957595022 258455539 623537090 90402929 889684136 263806814 991972208 947145716 960387855 818858050 870439649 617572658 618322150 199761520 433507234 867924796 983660064 258452346 400269968 522054882 630460279 759132916 764591020 490605416 545301804 721073738 881270410 193068825 247955834 98064585 868017816 502648118 950452871 385879427 465092813 895295453 967888100 968405060 998628403 887421292 899153992 642958651 662503206 937616262 957409509 276690437 947244316 833211863 961937047 145640298 698735577 164341483 265759883 373557120 732161020 732756419 938846203 195340567 704115980 1312834 465053347 676142381 895664619 550100282 586063348 401008493 666558371 671691673 916541476 267462345 831599657 836171983 895218844 192717852 259247497 859494508 939411800 794286284 923663461 476142237 654191563 849843963 919497005 879532242 939785676 645558707 954704217 316113519 527246124 996772160 999250339 530232000 786265308 799973707 814581953 899069544 926530398 332432798 887899489 685069822 947161849 861752274 906359972 597845559 777301168 990413507 998803897 258649047 767962549 261749550 478164025 522616907 989724488 896290443 978388509 99384228 910225079 544651007 549853272 862935707 994678283 561936451 710078959 314095125 420170319 588916356 742167838 221154623 603755414 122528433 515543145 273528435 614743991 172170630 492604352 419002331 820293238 603780852 766106860 875980360 885336749 282122142 656876946 437387405 522598636 493098560 551883438 215635818 336892538 354365104 922220943 588498433 603807728 101080175 524284136 641900300 991727010 865901167 996174217 999095966 999609921 936273177 981011542 908747381 917110651 81685141 278210286 565047340 814115872 312123806 589724061 126886722 486995721 178690538 892693543 153053807 512898630 847247916 907985599 547480175 715176296 741780155 909932341 793628955 937759114 608180138 626928656 785587482 914849945 323467430 612984324 181129321 253599240 122308016 712393990 804042471 822343046 412846812 494952878 624010820 671836656 373013443 760341006 811283326 945044267 258247671 284948574 43228483 187267220 199825684 838205004 938341124 962323831 495332428 925802278 349339421 967264556 884136606 987401554 789265653 890803594 266213837 959749881 420636719 716907112 688135126 919260262 607123157 678315486 73941060 273245838 999755494 999916295 902563807 963692791 75414514 839420270 826756025 849111620 241681716 415684837 171254121 951496230 517323303 558140003 43670081 289272036 238494217 894079159 977733721 999736293 943238190 988261487 934970774 941010594 15372762 639098218 341836604 724482518 257858086 282406822 227116682 900290974 591528317 913593690 353306838 833218998 37710500 336367882 790775079 975945449 443673133 585806564 380814008 417839964 470834352 797190741 894296257 979729107 622391878 891009136 256018511 960005101 318932711 327957719 717268461 877001718 112623858 454744856 172101758 987902253 811332177 972282511 566169234 677215156 440077591 527951012 158438049 947344853 18001226 652931628 969025082 982350386 764361319 896486173 21016727 493937361 376697539 380377483 338582163 545586556 320550134 652718948 221194092 740403947 560935119 741995691 249071235 517657417 440963086 471568831 292356743 936134380 140632654 614155247 173954920 811725104 868104291 998249922 686970608 694413278 209837157 313638434 169860993 752775468 179729926 756452786 896662671 921565202 305350305 983993443 290394662 982061874 222548664 800034706 765294760 833980932 979491330 987249034 887256438 889515373 784254807 805947374 400129154 813423000 276922291 382542807 665228545 890006281 263601291 920131865 141567110 830992061 110953114 216734844 162996032 386125828 886258436 923697337 478679425 647245588 852627980 919904526 411766615 623186715 953754968 960790768 889911904 969944106 910422453 979798129 735901154 802353853 151235240 970188792 996989631 999938007 398211449 728202546 592617701 976836113 504895897 950296628 313607072 448849962 282577385 750823115 354464727 537565561 229163857 266537450 240327580 920663781 278456968 283313643 88979377 500080781 302693791 464011191 726594363 835130343 683081842 775561762 752504842 814700273 169576553 756695054 939928066 980867894 934525333 945404905 552379195 673193363 797910660 885256125 637980018 762064209 6478127 896451741 338123152 723167008 439122978 713214143 669343112 931517812 273376733 640245246 556137515 638511609 435974504 843499495 384489550 813796364 41073829 657928834 859142319 897819346 447087252 671729082 118547941 899238241 61758387 860354162 275041021 584600479 707570535 898232921 10151585 347593105 724728861 896843447 458952641 614275549 484825944 789358295 393427076 999200128 678327432 888556696 403024107 940482274 500416532 771629767 504343927 853497894 574260618 960514229 136512051 771064838 158854576 369723146 194401718 726025373 917585648 969438029 444933220 504831351 978350534 997655283 672581911 836855116 720116010 945420752 561394179 806412084 216578027 850463097 850044346 900272433 899729039 955963436 327128915 413093669 959299229 976095555 103071580 313829890 878389367 971795558 790839724 834304825 166331373 394911859 471920353 846867947 421726900 899819117 281788752 736603703 637059154 716481424 87216036 227119345 97099816 723121206 44907529 494420700 140028851 903666385 504889877 988449109 633827556 983362159 549138759 832342629 491921341 685769227 181911540 765997102 699390668 711069367 231687729 382017560 6079852 498598345 910581915 957067429 928062436 998103346 696527955 812253460 252118902 896908832 823591285 906332077 352159927 447903188 631204161 958092966 284365987 492176460 954231715 984589237 337879557 423230031 117560613 299895723 466668192 770449281 247711645 952396480 549318132 759976833 71869355 339879588 582637132 614361985 47430410 128092056 850516476 919782893 821095984 934591815 960463262 980107994 935052685 957246216 672412911 906528536 42927131 227984671 467533237 602373924 739147043 961692038 379581172 598026799 132575233 785400169 665574305 962647581 472469888 584275964 49127332 588765058 211426490 755022195 434819077 919154346 56969912 601024712 521640381 877695109 559680346 906439549 280649585 737050084 850368490 899171754 845061155 979117396 815523106 823091081 665494334 674750012 307388986 757011242 500906073 766302428 841214281 879663293 756211504 883150350 780345619 829954006 311698585 638774305 532883648 813559769 176068786 267905025 691952766 702115324 66713392 525189776 978740478 980497193 765584105 925036580 414684009 671789955 777305844 805169302 277069415 550584582 831590670 887953404 169410755 652946125 285706587 672095988 745841566 934739789 525691789 608017547 114399510 485831036 736136498 964893771 693663668 744640479 717041913 766716979 765592298 839421043 5304099 34300017 480409668 701350913 938060078 941229874 832230641 858702940 167318587 938800890 710216792 792543212 350737141 515862411 911143916 957731893 33081297 392226075 187056269 629345012 225518167 351911022 849147393 887773659 409650815 605842859 453266010 902963586 630921423 720232582 569369346 915892554 130370937 593544123 548471910 957849214 705191839 716707132 45518603 574879836 247181804 859493911 339263714 353768563 544199379 650377481 377463848 559904442 450579145 756291930 897659959 981528345 987288137 992694388 58306701 866487063 903280497 982697492 338590413 534212452 458896954 869317082 559274832 786193598 407669385 930995989 185813142 196886257 621462926 751635913 115343248 500347144 744281504 904051747 403158661 773428541 61807128 195448908 563167893 792212927 840684953 967353761 506232548 514409933 660839805 786134251 312786644 982958685 627495580 841928004 754049879 869529177 844104144 886181087 853829817 902588326 365207997 731626811 922855277 923187279 315366813 494075996 571169490 926700419 617297269 646579759 286020223 628709044 576099005 781270556 248843353 618075212 370869790 522301349 364798393 828516200 367982045 558356093 354942963 388266544 868886475 910690713 526212449 807287978 226548921 735347478 759907315 963032130 510307184 748435632 782261135 977979971 165342316 293659966 794173092 981703064 431032464 831687768 509674222 644299360 713132902 971773716 869860972 958789528 691250927 712165904 690011196 896141347 924105520 976952458 333371402 991234036 313824434 502162577 159240501 477783115 968455147 987050058 903070490 931507850 992073064 994644796 950466661 972427074 329556241 844822192 201620863 753150711 318130143 557707965 787396787 884074504 303075198 308474847 807457285 844632390 226332267 240603804 421697337 463975757 638348320 964380072 242839899 278091625 739457985 965187756 784142849 978829172 687202500 786266802 521145604 740814824 275419658 323274466 530358236 922281127 49006333 909376342 840358610 869695179 249703837 570746935 460032387 671483723 52298521 515171854 826003444 988890807 981295212 994556983 690845152 949859685 268464820 780266180 380547135 805666385 193939290 417157259 814044928 871874864 803640939 880610454 566067985 649420833 768606878 820318527 972033633 972518650 871906320 891441731 607303883 916620551 382713780 547333495 503904805 671782797 368233122 773071163 271735239 966069833 723778918 857592218 860757878 901509987 88153417 916091860 373127183 719430465 711451541 911106642 725760152 922062346 166157229 968297644 421985433 820563522 907155497 937965147 791489505 901961453 710448950 782177615 176824236 292363742 321356708 562657045 261511252 578372334 324480242 920180861 364652433 463664017 403220746 530103275 232001268 248198467 532022405 937391559 687584357 935685293 311022582 932887770 545104543 976260906 980042971 994379317 967788073 998041327 133263612 933575586 900206267 936993872 662147692 782845895 544099180 802758325 743679067 869982047 442892931 583665934 236834489 990176144 246793865 744936228 235407301 789341089 975447093 994679613 840394700 888574095 229473276 625273346 606805527 758339857 467626144 571378484 175614647 700140847 677601731 700727725 57670538 587875829 918089064 959000636 129390990 698124491 815283940 949171056 515270452 893103758 304763122 865924535 704038676 841136950 116204681 507656874 787416118 931673424 600878413 776437047 934433563 996410872 821193040 830815677 370380355 959669151 864694482 926341104 11124875 497440078 885186229 961848628 486343880 871044545 679051431 950078259 30532688 295389368 370660512 449278839 128458328 642093573 622361238 942415683 393118726 524209012 610135681 947576539 679199859 893140802 395860822 695895692 911766441 921509772 888874001 889823970 462721474 577377213 837740379 923290485 850673683 856691765 613005407 952748763 12000408 278716263 454718194 670313628 632282274 836125120 533791653 878989221 60784127 716338200 846560400 966484117 95680106 749139059 558631879 733953717 988466145 994076818 484992948 733009180 48293989 643986770 614529696 659377430 587751795 856170823 941120996 953853813 793680743 813231118 5886805 200071984 508865184 602591752 646164130 704884908 434967948 435975073 252155991 322304598 823716559 829598652 823573888 851161718 589075038 798530828 984950128 987132877 924607912 953025132 83057794 600607875 875494490 956497457 635425033 678456243 279822839 701444251 991759467 995638964 439876594 901046858 636349991 721369403 534646440 646536633 609627660 936687976 641392640 794409260 94526817 138110683 98487087 796608515 109364271 203883560 118877217 600738859 356526685 959174669 491897307 849057399 178948379 539356723 705741815 963552142 540310656 988475491 861711235 978289872 576934154 862747912 110780725 382978273 270629829 802137152 308323456 740490959 312549732 419302625 164839856 654897596 721464072 867050780 542663023 639126067 886249304 984255881 53220014 422385640 956472041 983831039 171174573 681463284 475949800 938399356 689104863 760778772 10549334 810480446 895059768 903974259 612831579 968015107 953228107 993121672 167878247 740086006 511065696 835451015 113827711 535515528 875263570 985245262 730445709 882157659 649580792 779755705 65769074 905589550 2556065 174696791 969599931 995945676 422343928 758872582 772225006 948250726 373792066 450381710 583176786 635080353 768324577 819470967 349370725 468981966 535318453 560432655 132538022 948784946 505635876 521032022 330852660 742056167 161248103 945207912 556296596 833689364 319565127 995071477 764383785 944402964 984594524 999092042 908552279 989338052 871283736 883583897 950000947 952070495 956960357 960709272 666887521 953039774 706320045 739992127 615394729 885909950 785932479 874909242 598201340 910773159 797100164 817862852 233119372 945737854 416421386 900687116 692048118 851890052 506427045 519829152 876102586 949834405 106688497 178447522 882370029 932189406 340153890 847929950 40688073 927766384 426629564 736072600 340077305 948505095 463508746 483939590 992057900 998849153 767176391 895147221 261925516 448167983 276423684 301813889 674318502 884925405 14593721 741542256 911817648 938438738 980587828 986186800 289631317 950440116 366058574 959753350 797281583 999177417 98430951 971468937 324197883 422831383 86419481 235624797 182558921 709488566 717714043 877234488 253966229 322966240 847930827 868945142 337902754 629956868 24922511 245210890 51004669 101591321 108509755 839059790 633936574 931613197 634399103 738315174 173296460 248290848 643718299 863938979 64595030 987869399 530728128 906105074 224309014 602748527 748976654 806726275 109784955 648648254 138126186 751221852 325289871 599369563 87545170 452950547 543041175 982923603 796323366 833501149 4017571 419688127 637647803 755648911 657635840 884539719 764309745 942074574 467416311 485916859 182341343 406657962 6803428 159884081 356102010 356745226 35390232 649856036 404546530 960807650 699993356 902526099 121395747 742426904 927988402 955224289 445290391 864890479 511822268 560024434 292854634 922792700 983231309 987081089 474674729 891872091 500292194 932456802 164969386 546669424 327976861 908642617 596446412 908819694 226299969 449140886 382607812 541168978 583758586 791193363 977924238 997985923 738644272 953158256 808724801 842574917 841208810 844138137 5726407 634024906 162281980 978761659 203578027 680499942 515380373 634110955 129472801 864249475 205122227 800814462 335596807 441572107 314610192 762926275 217151126 333835192 827592179 905185418 331442362 489319479 213175648 386988426 233468326 405800208 633727364 667376426 893093208 930761390 170050228 975759485 470549074 774957504 638382084 817400948 257932772 463695134 277996866 427311580 14172933 669375663 124059373 775120481 600605335 784175824 196533800 918854590 643225293 769244384 201456789 211090811 185027492 596370311 242893327 543221639 599644401 909642816 644248239 734749256 291800055 844133191 61733765 421638219 704339797 793093470 482754515 796498113 306894807 734402147 728826988 833039658 206226759 597189417 415249733 969588346 901461587 960872936 376167288 845100061 190009538 613515835 11943687 675049970 204155275 466648401 231649046 521327546 56731794 838718328 371828495 603704325 420867023 880214245 898864005 974103305 30826596 879214564 445730621 780171671 910036408 972849764 346701924 749434930 685648906 974308819 77090956 949858465 574402682 850262511 875696042 994872090 640377678 859412972 418383554 648813887 272799211 457859974 624486093 885882421 366228335 832475173 771935344 858302743 354964220 539241044 345070595 954784874 543188345 619910158 122579819 611760180 856692317 866475471 522003723 695076139 391991834 677965029 225517473 699306990 575153130 777884651 48757243 348610584 330700996 829261060 66589998 469966773 789601111 884075206 672813854 753739517 70903173 590522577 120075940 918595186 34210683 353728984 141451742 360807388 578669633 709107800 145969824 993008916 73386190 121960437 952417857 995322874 395915627 947942339 514502974 833548266 836789050 894232399 36973245 858006752 341648473 497695854 169764996 842199725 17808368 471017220 796823983 834127490 638635604 726357645 831633016 958988531 574876955 849286863 360695834 959960857 891396791 917982150 196929874 697434847 701326880 787125809 596077482 910838583 734984878 795049353 956884767 963892209 771799343 817616494 944665046 984346966 405626422 420797271 432194823 874782663 291512220 428584228 536841187 790954559 824895122 919902192 800490675 956915025 328531484 486889776 902315767 965285599 630397343 662844135 478267526 757544585 344376261 681113502 243081639 363206895 175612809 905729920 188869299 579940257 426976513 505450535 789458473 847494257 67377670 455158449 328802779 669088209 179279080 194446211 147084620 274148925 492795837 635361397 65860007 978051912 124628083 563166546 93627863 824608870 866339707 869159113 92987474 273002410 94189026 191473583 427923804 551621263 983562112 987508503 455924402 905770966 740884348 857219267 949750677 989293844 904348500 994417573 591970227 618637699 307594030 904158376 21691180 27709168 43693032 805506664 897352770 905766001 865926453 867437037 413464005 427156908 76893982 742513186 897302202 993114734 854068511 988985323 94842000 398667347 869759367 929746054 386375963 390869710 445934226 899568284 141936733 673127797 499030631 646637260 881165161 990533642 964131270 999141201 873118914 967067639 425643674 448359537 997073994 999667281 634820753 769640781 274662142 276980039 827515839 903424884 41124935 129411769 294671731 941874086 862481328 967600381 611463589 663967736 760625919 939638302 696559799 776896100 287407223 728244129 659824129 828623399 807889391 876807067 612324249 790515021 673426943 821994510 752953228 962638660 247681668 533863168 67646676 912859151 922275139 949159926 97874700 716016631 938580728 983561325 437323198 809367612 800013725 832842692 553203708 692690738 954173033 976820827 712769221 844931594 220652900 898167006 303604620 938217730 241817245 540323197 790508159 966448629 120331852 295938033 465284458 789952486 949230345 974130793 213881644 229801625 378976105 592711622 832932304 869603889 126190125 606989637 13657281 445360879 647156609 964904868 972853319 982557776 533515035 985189400 335276304 876539176 507097466 824777186 676275405 988967795 821835422 966412090 827652470 891840744 339406525 955543748 270255799 623692238 343578572 879665738 278690649 528780917 855134853 983017578 46553607 120721770 561992315 887610059 914957584 974587534 145590822 629864213 256736971 691040794 368362079 923402099 846458506 953014609 116047911 280597607 112101168 935483328 88297947 664401674 135429584 870721933 422018223 816320760 162588026 410060592 239939847 425576329 648654128 720977464 584847140 907698571 486195332 532853357 753774498 926230310 394323434 743162207 619664100 979304518 742783562 793119762 537794663 563167739 192220940 449449940 69137759 861293041 884902331 949846114 357789802 534742164 672637955 891611430 662762425 710398064 737854415 814490803 924360445 971019591 506828288 986086671 650074446 903804352 148658830 209770847 387351162 648857092 683020747 846108573 499331770 874248858 468518373 474887601 255387007 754886644 998391092 998819270 97557123 631575765 993477491 996969005 956034873 986953035 506992905 785710963 145633088 382633340 890427474 925797302 177810127 337970386 55605500 454707856 507072583 601450538 308390027 538017306 319886330 420335962 359340863 827933267 125906958 896037441 712926296 772080280 900330462 935268287 584891718 603928429 874919653 896753777 28837609 822244324 490106619 700173110 336302453 621427989 552461512 700851037 881384363 923915813 636632131 955311019 589101314 992318043 234206467 413587979 928073460 971048442 619638603 838027220 430309597 698550077 54335025 162534966 828056342 850572954 596430346 850794909 11145337 364457070 533776615 622042294 615673519 642065352 958297444 971515618 410188156 797225842 139074016 845869593 984726736 990916515 43280708 157194802 266345849 387925721 348463701 830955794 893921996 930392864 280138964 322948746 804814770 981954523 261033400 622196938 667530238 921729084 676928306 986064565 696761469 707378222 512104465 888767873 834115044 920732319 704944755 861897400 16182142 387316114 708343816 925204517 730323612 811004948 919278356 932106977 378428054 736511060 965541765 966979147 782501445 832576112 121639997 913160859 532207943 993339852 578205257 971040295 329429675 795984620 134986097 926168358 288298200 874628246 595708762 877911182 551738314 582726792 547047351 698007955 616639860 817493220 459930974 893585716 308856789 328905809 898672677 982439844 656998811 925648971 89478314 750099020 589422760 679616227 420371214 561518448 932608216 961219039 565478783 626012383 792786399 795021009 547402955 637637223 886898748 959054789 61970927 461326645 839270078 990175481 419772478 648798801 647564814 747717349 191034646 368933341 917212703 919431825 765972849 835306711 145548935 215977091 69700442 715600681 836633287 855374753 956647800 997070967 922331762 926135944 122322047 485069183 123429146 285941369 280522068 338027130 634876390 924725019 771072124 853386169 639416580 702186351 459555780 593825864 552918303 808294433 990545019 993082597 691305147 941902947 745581925 752238317 690987533 901062483 735682477 825321404 485470301 723562501 47402600 590594243 693687637 795897424 10701931 841435101 478914987 940594919 854697788 982157621 469047336 758052885 407915433 768276493 145327466 606953037 692471933 744015539 542186029 602821931 231693445 614738260 382185832 469477413 940091 565377924 686022448 806980525 657421717 997150611 386591090 983820632 219348744 732592838 33875640 903217056 320415394 366146109 860575641 940118258 868063593 899654820 987964161 994763715 221852603 874894070 673224273 867136851 951610684 981860292 940187255 970157702 509082050 614414951 895945708 931281080 649979013 806407393 821521410 919611090 663129795 817704566 514706025 521683084 788140944 916322074 749181480 964606536 879057023 926398053 398105007 765682808 572632472 715344562 486411516 495240813 452983499 539395903 569095641 802875823 436436059 521407715 268048523 834270877 958405817 964393566 912227439 963929898 54408879 987280267 131780788 813771139 9047779 21781973 77171896 614575745 806029835 928846086 80033433 505783121 600052107 697908955 43832162 719906098 632586329 797878646 43295100 416776436 483060611 596612029 602080391 681623497 913840143 968656918 451966060 593719243 701299058 768445775 188715964 651990769 52502244 186578073 595682394 762806832 717868274 797024208 38759297 133332236 131058276 905426385 230491321 246188126 404038602 820026702 84082880 119081439 592529896 829771515 501982867 691684854 666465050 879859196 588878738 905069717 151834610 316311329 360938898 629156165 529923936 663533624 902537049 929203190 759894882 871734250 793309226 928590371 370021482 844254440 47656516 134815067 678961032 861170529 166306211 501225227 610040639 732495313 216037991 500266061 658294790 761372219 431140071 703381848 787069554 796274615 79401678 552213804 558734933 602066358 736333223 977063783 789220754 850080179 454333502 663798071 319581870 785066296 401839004 672772348 42954749 138395433 446060701 667113839 557563005 946334394 912986922 988478819 588278506 763823996 977092276 978533058 259654749 698638524 977728954 979812645 418474615 900990113 651741477 755237062 130954079 390268588 84071480 432890760 325268833 506903798 731394869 851403014 422283128 663003837 796867763 800399890 313411569 417097584 546935444 592414581 659198626 823364594 223353173 915116080 498676269 598111819 846553873 929958844 690644721 870680734 949800311 995839305 846908106 852311357 62015100 428309397 871733146 954388958 117448608 894782435 901847552 969582312 840878065 872689859 912478940 934944429 843760762 861787437 439690376 560462589 183841819 387896373 960547004 961965778 142609695 597318981 614280197 742375511 657204001 759796440 410633902 477336861 187911557 506506147 776387276 896991161 661311677 967859014 138197760 858522296 518954463 531573165 384090851 815645797 128906259 171110577 304290220 910537131 523273905 665056567 780809933 913863169 688350982 855052094 673665305 790405642 579715719 821855536 46386709 925734997 419419839 924722316 570115503 643135310 272642821 413881575 546576337 598670884 538568835 937558682 763404255 813919843 951352511 970722404 392954047 735968069 111883883 772632793 301630556 711136527 786678041 794622168 264955138 381076664 618267004 719427821 345585328 648892248 21999576 696121109 978426805 989396753 236084517 793258704 552540065 621452090 77107315 363844503 575578229 585552772 415399182 658325809 995882682 998890835 369343881 655118065 297745102 422860942 582340148 747661619 977352373 984174538 870686226 953631039 114624020 608997236 167664193 647346306 659436408 677792721 886934092 889340806 543985139 617960508 202588642 544390316 942974193 985614851 34004859 65805952 434524257 447039837 675417190 990298761 791651540 868210194 490227908 986072250 124746728 368716896 366556090 824424481 182216776 314732741 603031942 818282359 159666020 662058105 64166908 101144882 621400755 663229285 567807138 578119832 284727762 740902467 253813147 904484069 544374330 732836899 660397150 941377257 892267021 915415797 868547483 913143491 82217243 903487971 946391428 976724093 829609323 927352828 206198907 810290744 75473998 978113180 545461086 604908028 587827243 963854276 313354603 404584689 947901588 978823871 383517339 785750776 695479472 830039901 390981889 669752785 446052493 810943822 531511262 695975877 778962481 988832380 213179640 516344502 736188832 889552447 57538318 290344299 671491950 869182461 339789133 578381927 112158740 874057180 579727480 768918424 392918056 961479524 918828348 993133606 88072205 689515071 66595713 440247480 946053495 968735472 97159647 228823219 542415150 770063227 974989672 990753410 490840490 974518411 88355062 440084817 671337694 843870390 94023361 463783030 150558862 900057067 299670219 418840983 443859450 691494779 316136558 862987658 74102963 94879251 567360017 627509624 13712935 543342050 334315458 513364502 739088019 779403131 377565644 556496277 51867075 183712207 973727899 998456917 731265650 914041370 956116555 990780734 628821034 687534185 982172824 992322476 498066474 925034382 946493691 968394971 559284983 711496534 770062213 917125383 383404969 847448283 494510176 546470061 683076680 796885287 89489202 802105162 511501915 667787407 373661989 492179572 875723285 907773515 567922544 836807761 55622602 814513015 948820060 984930118 250619778 989634418 522847729 970037797 909431273 914199828 758155011 898405892 360842595 736775573 718241876 825108580 570739239 723802745 894141442 917160872 817887370 973558333 728264860 984177772 846331415 856817638 431382134 517495180 738357688 870619280 443469281 841844509 889032235 962728725 475121826 565108578 689559946 955242092 564149778 577453380 719196943 898108242 738359407 846086298 729327706 978062392 302880674 558345632 68229733 208412727 890496996 970413988 764847037 944695490 636286090 929113774 162221571 325871852 35558201 206698724 783793859 942767501 931840716 936583021 273375628 611350950 282658383 982366060 558273899 881346961 763980308 799885992 92443762 93922392 357314120 729602652 422428598 864923756 570968089 666466056 374117345 495751411 556781130 790626928 258980630 489007988 119214822 908027054 873145617 917398674 527145444 936506731 586717251 695033353 960147620 978633995 347211044 459587260 39125238 102868805 469814297 857989069 154228343 536155735 236935266 382857152 521385197 840172280 734142741 846770451 214420777 685727011 858676792 910311492 677071084 832744535 10981601 430497683 278526624 918095466 428602864 580327442 871552984 928465712 446368079 717336465 280378358 568309252 287579614 564404005 725088907 760253068 745643996 804646223 712834511 901494156 542720287 888702422 346996876 795498986 615533924 725552152 750083344 912498594 44755244 204023437 754454299 836689754 278029009 939745772 615725657 790832064 588492499 927788373 905275761 953529756 102655520 980888864 108033803 259016592 219047389 729315264 441944407 756756962 383946837 599610111 158147098 773482989 401284115 854952088 586897176 848928403 663999935 887151711 162371818 902701697 48280447 699742889 259219059 854153011 509667466 703966498 464304213 931789613 591698158 990864134 938075294 961187362 374415069 989524780 528137911 884382948 719021285 962548100 5790460 766987152 647801500 823247805 870016648 975000810 359634949 959976031 188225151 730246848 936044291 955389946 176401524 939528753 959942595 981784004 662495728 719338814 679623594 907169195 1571456 135531255 572475344 611744883 754247272 971424514 126694599 215212917 86089477 318850593 673031897 910499586 868443661 901202994 410973060 732437623 449173095 827096846 973096138 979822151 642642814 982078413 29940901 154789155 184831516 502450072 575693941 823520186 136643778 300434936 667091229 978260873 999957842 999992211 743002795 879331199 844440511 852953910 196275098 257141512 754045291 770426314 402067254 879464888 273531136 328568204 372055051 869408945 164399483 349831214 48378248 100095821 176128585 297157597 750438694 967174772 487167801 554308788 146431242 287759961 216815472 270544976 606076579 636006543 846789156 948234841 430159375 894163394 632679331 754376355 509640782 702916909 949241831 951723298 942411388 991622627 323255590 345890285 208028592 759000319 517608965 839557127 636968854 990538335 613246590 826574918 19582381 85479314 988114900 988996333 898009723 964097688 670299586 885167588 281431568 812020576 534071998 756609287 575796711 667476716 264513133 994677046 244130096 586938511 947969885 959974669 408123079 641760832 532739856 543954916 215570569 997727696 760821489 814590983 590663098 669353510 867897619 969448994 983958074 996920859 899993618 904556046 139288605 937200163 767832455 896234133 749534594 801192648 855583705 910929946 863822120 924375683 447923045 911405723 781968815 856642330 515297241 700988907 841423812 909363359 691353276 746979932 357266577 504924218 860022652 943729742 221329489 698782318 714711985 919121993 982690486 998574707 633532245 691889412 13008049 309243223 944650025 989539274 559573919 951267895 657444625 937483834 976817055 998514967 557310640 832928918 543536725 815845115 447492912 722186785 204740326 894309719 542535637 927363669 562370685 883139499 611410070 811993413 19257273 752849087 704497419 930408260 177444302 568961941 230559343 714268518 226053893 792901733 606591731 731047868 762270864 772957926 482808861 675371668 2145194 976781941 227320089 615124321 291630788 947505381 336441582 848673465 690308286 797255374 453548705 900673672 766903040 890127290 601490472 651997353 673231266 886513929 264089421 307030739 511576741 630318375 752915612 946503587 351465724 580453759 843110302 958136246 531015271 753747683 154618448 994987896 304556513 406226771 652547352 688150265 330793498 474771103 86425297 160731727 413194567 612127260 920851662 949932744 923385512 953607150 199486987 932093986 492779291 535115116 91683825 908937433 457650222 499535320 778890419 922301579 450262016 515283314 934787485 972303830 445490835 980137349 251722667 770662738 548901695 689691332 525924257 532915193 215879707 980490614 454997683 519738702 92777395 313282310 20815963 938295998 751288618 941412699 242536943 254755366 536386026 924799454 99622201 769928471 473399027 565143087 956366534 994097335 25603085 199797240 519298420 544306279 940527754 943794910 908071769 966914583 728946347 930364133 278533025 730052539 892573885 999046507 839679515 991314489 984893483 993610447 785451885 826613603 232568249 274502036 416307287 613165268 921517989 933995275 81585612 660461281 91260830 560353574 280765324 304022376 764329373 803561782 386517675 827016748 755411034 866454695 386346976 983892933 952848478 994938863 722376866 810783589 188284157 963169360 978613628 999300946 799478543 979397504 645515787 756228840 369069535 481340785 275257194 613227604 489697811 604597083 956559221 958697062 293198082 862858216 346979428 665478261 777954389 935801231 855379806 944772587 189813729 260538690 568392937 591204653 557123145 606345094 155457532 788244178 216023748 981760404 868612420 869775599 228350182 578911936 527645512 820332545 959296651 994538321 43126252 425567604 769884650 835011150 871757636 973716851 606166185 746660099 4353392 454094867 12029565 444066411 33051270 581043534 333566384 985955792 232384363 533514488 190388597 522197285 600673277 820934785 244949324 933119337 454791626 644097810 492524781 723295382 155027295 747754161 649852707 789498669 684286040 718980055 432802937 858304307 735099659 935650935 526832123 751558716 734310804 773054031 292221244 642739990 933395309 946741296 946042651 995524629 54124708 841484155 795630111 990886719 362119637 970207794 119815940 866776478 846328866 906536168 643209405 718921422 562656247 991238845 536342054 965565719 355081892 851242740 120776759 412385465 745587414 977187742 736937237 938689901 665395478 875423530 929449158 949235533 915861187 984908686 84593441 230842875 465105231 874784670 649105788 753896972 327359324 597773333 744296102 983763061 619889349 895197710 790315 46955530 804209314 940820176 939725156 992207294 899152852 978820364 797115469 922184828 880428779 890724552 897075458 955917627 631446412 753015239 934488289 944121554 859887454 912998812 360960071 887321129 329309382 528531089 803819591 930743821 687783362 999579133 307158720 407961516 64080539 495518154 11464728 456986619 603364804 927306178 278947407 308141702 645007416 990131228 901812828 928140895 793956974 981089244 714671938 792151960 258544494 606006083 834334747 989912949 918561098 924342934 217162267 728616379 911214774 914344094 23776538 89653182 362024209 634577507 604745101 761777034 78517723 192120774 462629926 734944398 659925613 688103420 443447260 822442717 718180730 959887891 320251504 425252281 240017689 508019015 765010742 924534626 333078813 479655490 572062087 716814632 228637748 640952373 538554424 547617857 662428627 725640877 732358479 922497808 502387935 774654827 856523738 882325752 417095242 641300532 956069973 960157218 816684360 918948770 399319457 562224727 117177679 425556291 436834936 925398054 706902463 935648544 403074623 961033847 79680831 517213158 616934886 755311502 689213095 954354757 611541139 735531497 197144799 204174052 977865162 995458203 557830386 990038521 64618378 956531493 600461856 681050801 290948397 691571649 721490141 748603470 322303716 822117277 501221473 742480999 445899570 982083316 341832856 772949334 587109011 635070409 636547011 806454067 277747279 447374316 721044007 782719542 978849508 980732348 4832749 883730520 673851601 897032094 32542703 430418510 606659067 956709606 904688241 996127662 162200221 607934585 443456167 720685546 399816492 686486584 821587554 869232356 348093723 839498526 611608915 825892893 832369887 863962160 588738883 893555065 572535729 685430030 978940053 992570741 941405353 976364914 666629506 811219016 855211730 960980740 507860817 725976950 354465165 774625823 769455365 868365421 765203480 846851621 617092027 988582279 750183006 932504714 236963074 644291524 259928800 793301360 959428329 968987767 447950108 739915170 291396096 914110352 751328204 801532991 851499496 871028447 431140839 872193729 967818015 999449562 306118483 509702467 8943105 388995847 444995778 845597096 204736752 987808648 375006765 403302430 771643929 800968346 72317399 85055779 708289998 995983916 534274789 536400812 356627346 814111379 71787780 916872249 550321296 871494503 534453747 860264359 70327809 649688721 726093587 772591470 473627654 997385850 802080716 810740472 258514867 473734447 946347676 996216525 964408696 973409429 751752404 797085149 894790096 964986021 797114565 865097299 61960753 861613665 859178901 867432201 697402035 790754578 246400099 606149552 353343155 399538025 807726792 878956158 297548724 317671499 859666392 963690024 402163447 946461923 224716558 438602634 254326186 524362076 706435344 934791865 175078673 771426026 154822480 321286569 568311579 999855351 241298177 515868238 667750095 770861332 939070839 993821575 401050857 884730090 73868424 700333616 131991614 870336337 209332221 262089859 974539974 999334181 831476220 864801315 873921205 911212442 595139605 670864768 923009776 982737230 722662722 752690439 286022885 402684375 519580520 715240523 946985909 953957572 723676413 764746590 847587791 929967015 119757699 717851087 831183723 994713807 740347791 925960422 632895497 856831530 196570447 920465507 698285366 744111131 284586546 850418299 863128587 954455262 340702886 835168413 326030368 332659299 189677291 867943502 714495726 991990875 412546548 800673971 299661622 775930045 706051071 984158954 330849812 600477355 607169580 789024949 925862404 975316948 655651558 777232283 25724382 45955940 792687608 957889485 653149436 726440069 434625661 494843249 389160117 488174702 448727855 526797907 73286412 964150789 275097411 322952456 858919361 933424730 37995679 321810214 212731904 644930453 990681746 993951080 453214678 521314527 502033304 714770462 483787290 765433479 77988125 915759966 927443476 948686765 787357918 953162345 702280233 942954409 17501677 492013396 639987503 857547434 960843079 993357990 718929835 973779157 310961878 821037699 147519070 665100043 801319307 827204752 219877950 707100258 248906613 955939799 716326185 868862059 324757213 893145518 471641149 662397430 739311449 855888929 768702439 948840280 777419977 901456720 246697558 931719598 961436296 962665282 407495395 576503733 112200843 991967260 426089013 489642307 436311169 468597513 597270072 989454285 368649716 713872757 660864706 758245982 493741105 576124504 662240315 750704038 633821843 867100145 267048304 445517953 942128339 944846405 951505960 994951915 933512964 965367448 621217481 987553663 171121559 265338705 7125106 666583856 507043419 856257243 453362822 720158450 605454340 630606787 656759598 684502190 334553607 908252823 344531759 657228781 314627395 573268217 670601204 959986067 194474663 196272729 266766678 608017293 102602396 305700898 637901834 685227906 676700826 918371138 561599029 966619614 750995918 824534507 846525617 856770428 422905487 482124388 840238972 984593370 689575581 972259896 75696794 291175637 306853881 509007100 305664948 587316351 735025962 908180936 489340990 858818957 245407624 800996926 837649409 843471755 454422114 841566224 429924548 616446719 960032685 977243155 745698432 984217231 853003287 979361045 578235781 812766794 639780153 987550449 534555066 594682976 580377192 594557058 170463518 854215170 173132787 385170922 704682823 912075618 737671773 994500421 96911613 722626298 880107650 898837971 54333270 542149356 572948409 876197216 370823310 986728294 169805437 978320754 802795550 889990164 40776136 420807366 860958952 945609724 900322363 977430776 174165973 359850654 389041794 410841617 799704169 925294674 996080549 997422767 973537892 986675568 893663527 956064611 740826398 872369653 912464538 978498693 454121955 890233883 479744490 974505907 844065353 867110280 228172943 947007744 61937743 542468145 95180936 759869872 88698258 590086750 261135004 717538196 272449802 447571225 283602913 754385111 756854162 990669580 300376872 483296106 939544168 957023513 617898791 887278689 596554983 801581288 364451760 837338400 82694345 660937640 691243794 948888073 95081965 843670452 85708273 790036352 681194992 986846104 663478421 809825894 739182792 873713109 129509551 209519526 50572236 177035084 112593305 757494070 876898980 951468797 153516027 350075757 598546675 619486361 525742519 657229007 599402151 650229653 557588084 568704011 575466348 725742746 73985408 652527372 311033754 757176575 138997622 942709189 744489770 759285214 146119519 739109863 760519017 923007390 908533846 947910607 636937435 975768107 625281151 796062308 896713675 903819183 778470173 944494887 20280971 678879500 938341538 994442113 413701498 603187817 574285249 589195548 339615173 944349701 1200632 336323976 188311148 658777801 747545944 995717910 620389652 761515647 194708857 776866953 962730570 979989940 448960760 964674172 774528146 859604126 822492748 863578816 583535464 924744666 821165938 950097518 658908792 671247587 420130832 927647578 233484153 491759022 397930670 466971769 587771342 948421198 542414876 900393130 437538939 509811845 358233529 528086417 609318393 793069447 355356835 670552549 187764648 791720645 451860725 699051842 677230728 785667614 13023361 292087138 333094445 832302871 44265759 963169699 821997388 903197815 354692611 515141075 113511593 594638751 225202698 258738805 209668037 655122061 176407527 534327302 74877727 988857220 637793433 959166639 803580854 818572467 258782762 358924234 727146777 993040421 896947117 933777111 268045202 363915765 904895342 996442141 88276596 594518862 756238909 800439716 904367025 958809615 390633225 673404354 526871559 626963566 163133773 504457515 217836919 217868630 808694337 976721216 334496672 802481835 823032738 945999751 949253720 973917603 157641588 340780131 184292310 688045707 61822129 441863055 779641059 974178817 102826350 908215776 162058521 789063976 20503116 585179124 703055469 765564068 11684622 168706500 522402829 667301430 195117481 532507845 641585749 950930110 581709736 704082558 582506156 700516820 129127411 976845679 547689973 960628140 168217036 900787067 142787787 206768219 527604266 528060095 612617953 827560195 854753291 966127439 715397130 963571726 257375951 669675198 969667396 997935953 301107025 451350424 699328823 708383334 534497063 673331478 235332012 243557144 50810550 398862710 447659443 962036173 482643689 874613358 477186473 642447875 863478883 874128861 668527668 734185295 136483784 273796102 145321088 427496897 296242182 317328476 280898004 354454871 122296053 324863701 851645926 918803786 436771189 915478821 320508900 952193350 223645382 809662791 39316130 786039380 47059127 415864680 123756839 574421811 201068617 772342716 180390215 202465278 920726664 992563498 351423506 677711539 611879723 932170040 802391565 949780213 737003013 959026951 540560573 593922765 585545979 801123576 460295893 792752048 834233892 931443401 619893040 648031333 558266522 783578680 191072825 379182171 632509332 936139991 316829537 604272927 661780650 700521020 327962877 553116256 221197646 956022456 470143267 933836368 151989488 421530758 240359573 992141264 339612258 808243841 850834683 971349197 662662745 902296725 703363391 773883249 973647329 980554074 740916247 894291565 243889575 250912845 822636701 848025675 141673541 953411496 780924430 833578711 115408828 460135855 770867337 844989936 328009899 795202154 269498032 361818393 355124276 461568304 602374643 997426651 331960823 503928300 536480464 555593446 173433764 337187717 675604773 867675364 932061579 937028217 396903217 938558855 35990221 479763013 221488843 322919324 60373218 978534200 809685428 879944725 110062624 748256349 259189802 472457386 407220079 914800809 941591766 971551371 565170348 932139159 334210324 681489484 215990761 310001195 724176027 934721743 265390427 592126749 192294491 982001240 626314614 666135052 745267654 802146988 855263945 965809373 797731633 852086236 366774601 602791330 61341532 257913089 184616183 629026402 148998738 222854683 232843101 474383733 907065583 978876303 393637282 685316804 456725170 681237778 724157767 743836652 478853878 664757716 449957450 588140075 183045573 274204349 884155069 968738766 683177438 802382590 805993829 844504557 462281696 555824030 922028048 968449041 380663176 679590714 797929114 804035515 243361218 253843712 570339908 976309675 201549306 845711938 569954244 741554726 190332229 678124172 464997108 821996809 508176328 943155997 266529397 478601255 926035039 975506837 955558352 985302696 429811075 757623221 114166775 587785740 22616042 645924124 351250022 754511995 923925477 963025911 2632508 726776759 472110579 740660520 487889601 875690975 902564989 952567425 865739847 957168747 668658149 826799867 567387967 678617043 650255964 820094628 154472537 268563525 480060620 660944009 425227083 759581358 962367965 990489871 577244811 893315014 371734374 422850575 419693500 446086988 699900086 747101969 180615960 464301871 227216152 849996819 582764974 627605366 376215432 566922349 8093897 722759589 891530338 964994838 370079971 393767274 729862662 885194589 494763846 567748850 896466417 914924279 935900833 979045727 486033132 882039344 558551839 817515138 635527074 706650776 243879712 261274637 81642223 640382848 796068604 842997502 892030787 914461622 388498393 446943526 18671115 577167500 989923134 990235219 514773936 711179706 33858029 863166820 338315547 994885716 392303407 416120250 444731469 479912876 192473636 461495413 498562972 967371892 841187750 940518460 453492387 804138923 496126906 541109915 403272121 519771357 303452844 514971730 616523134 831390057 518478320 788460588 482150331 786532755 292252631 531923959 3710388 105254945 71976718 566158356 185549509 484095149 549986741 703079059 779450522 867540779 299349549 390287413 308750559 577785866 37210667 951275799 285167690 364932711 530510666 820978880 502334048 771642415 31857320 209690088 777855276 932646703 159937922 224587423 244038826 441388074 217828325 584588610 87365072 686892791 358512417 969288197 524558028 659728438 851109322 976954051 475926256 564015619 893901313 945356140 613881514 694118138 201642998 888897993 36189172 401407772 656815464 896027328 81613526 457945565 259093992 709370598 632217293 894275765 59159804 915373089 450721329 744639737 654855225 951765757 435754311 531420329 707445585 987528137 37879840 431738523 925500634 938502567 916992314 981414309 901678551 928684978 851190619 884575584 36445438 519217672 856349957 906861016 480918059 538981717 68501136 111184566 488854688 593910426 535927143 779948043 379670723 866604350 258457277 373459946 231596313 945229194 278810643 827866458 239733918 282700826 38322281 879154786 937453353 995424106 233822980 997294715 143035207 603481905 833397723 931307828 857765822 874884793 245314936 401706262 469186101 667150999 221177859 555505217 967592755 986862911 743907088 875676280 721136284 957119248 587751874 880936192 78076206 82932283 650254738 768642894 199663540 757706646 927612818 957502463 198438809 628948304 228754226 433607300 310283505 833579693 595747415 824690557 456101263 618064894 329234199 467976808 19276704 946238506 91241839 804859173 36747357 215020735 96277618 110807369 338553323 942017860 836973106 884180220 784874743 941374831 621548857 827145851 792519660 803304529 39024724 669393249 955859615 969856662 329728205 679649874 661256313 794285036 782270924 906345872 114072505 978174820 562416735 604738216 192616779 961475104 829037427 971095264 42102311 324787836 172825331 542036984 37923649 358843900 756847562 848982738 381800732 936167843 398296742 516970294 836636329 837412357 336447621 819552936 604003075 643831399 647781405 751149343 302182863 580770434 580739491 799475518 428211165 806834497 768019290 903893349 173609478 611724899 631285401 929846691 455604983 804492402 550986267 553340264 569827637 999072319 219018362 389689994 82010071 876212474 123286565 990538715 81629592 863048882 378047688 447406728 843230981 942126589 919341099 978899352 494031323 702561701 175832106 241282076 698897495 854425269 123822252 191595678 993294853 995322045 469486064 518934205 119372264 295821628 406269004 746507713 497037437 724549411 635564365 948380451 430259648 905626918 955183042 979413798 753038168 944799558 694401430 885814061 182552006 739921103 13327838 334102524 196456196 899555994 109066016 792112697 566604126 583938381 569493299 823111168 920044608 989607574 313190719 899221056 887900382 971717776 388787901 553784055 874709816 943031902 637153596 883473765 182396623 625052799 679417924 845222192 482440781 878774686 345248731 915710103 628561941 781553539 348263129 883030796 413639052 681210509 508084427 642981658 877028773 992430566 675334179 851398978 108135860 349000658 255884938 641110256 869670613 942884630 19674979 848083204 38978696 955097087 498755936 841738028 80065704 684969383 822717396 927995959 70350727 998346462 874402985 995255756 319524636 355502208 756474531 993812601 336736599 990905107 610997718 892016024 167647724 310267973 878166213 994202379 859522073 923549573 298694772 753190375 180144555 483978145 313278366 947877069 304092348 310584343 858518258 915806371 234312846 732909841 227380591 765705881 914273970 977906467 48584108 697120738 639011104 844774166 845447320 872569268 409647989 834759483 58696746 302749489 666944845 745220457 890746959 998098642 635975337 873716507 578924248 873248665 774460029 884232796 262304647 697110131 269153350 374036656 70050379 757390934 679525303 882773767 116075135 691722027 558858852 625505336 48045923 126435253 997852051 999182990 395269566 497879452 945371926 952225955 729052904 942441168 927410006 936641459 701633607 985411589 760428835 856230086 727203300 794352298 250494527 313176816 423480798 851901910 371944689 777124553 226586332 782794914 983527490 997385820 794202676 954899993 799907609 983482824 870537640 992140707 91343340 180866041 660600785 844261176 905585492 969195646 321515914 574259001 586436782 833730491 75608860 670276577 778244362 923346102 613349866 865298971 94702952 770696224 963381086 969353033 707255091 896089245 800250446 894576646 799578222 882105442 323041424 614590926 101591624 742858591 621432349 829813253 18640046 464785950 335265748 498433574 977419687 998495719 524301667 531824993 31821862 195692045 792129735 833471116 392784263 549764322 218162096 248954748 397547333 470648616 580263332 780261822 478292272 991645485 661079072 903312081 851244295 855443406 665355426 938591669 181871765 794394691 677583053 976825194 277918740 328616024 89095522 667799090 618407184 635214887 988453407 993493905 141505857 976628299 146217977 676036810 368837288 861576240 579929743 785169637 525538321 674399402 390168445 462245850 321235922 966061293 477725556 790475405 759944997 995867700 288570477 567663277 151000572 657176470 245993799 610317640 980799798 988446139 687390071 932616386 906892916 996676218 887338077 955423956 994205748 997680280 252056478 978618659 349390983 524834412 652155967 899938554 185815769 688248197 344281457 820138218 347624069 437309317 684243259 724382089 335208657 372823570 881259852 957156043 558683518 597836565 914226741 928634699 799763689 912752311 624335869 859469314 575377170 790780376 789184488 993823431 571422675 815996108 473375051 590063877 996091618 997989882 366701877 473335555 231610536 237587335 677618392 914188013 630552338 971222594 342493043 628489457 859259750 951883607 664075984 670018473 438734554 962875252 478186784 581028233 327908464 677037892 542314797 763271407 96418811 620919887 921443414 980817763 164202605 982178885 426529191 823657016 365984341 515201292 712799009 948045925 818286099 967437304 433479578 682598191 465228064 684163822 865508704 962538809 537199843 626491493 230300664 277038327 429766620 791895195 35014545 802855587 764892768 781997102 689646784 956344413 7325879 14080187 796274590 988850535 808842374 926714304 101080473 927582364 113366573 447145298 950040781 996895691 675586724 806123810 362736455 522854491 292663591 684072946 625073858 867956538 66864857 657214558 874716628 919911337 434060974 870366662 687679414 871430371 806888724 808592456 917541255 990560258 412225200 958411391 39128908 230653533 326312164 630140738 823976290 831246010 430582193 572469685 729499489 859664613 502844200 942168752 883481207 884850043 560260404 664049091 658528140 890498130 751276258 789207141 986686576 994079094 781527394 843578241 192178972 928899837 19614238 635328747 47756414 500670836 465010024 759534644 518964921 933026555 252191401 953671078 761617664 990915000 753706255 879701626 189477839 570257573 814364737 923219687 789940108 937367771 920533985 982661089 765321137 871125738 893888750 973242360 24572162 29586423 739185925 749064372 469098649 856533846 550149724 563028286 551164070 817278337 901859823 952332633 525967292 693086969 160573562 208609473 350345462 971505229 446162618 932871059 1829477 316041547 687800304 855378999 457571545 889027847 616067309 957907121 955533544 983700135 459788467 949201981 985778529 988412313 364054331 984799968 339896615 972124535 535883755 631857349 728956902 901785943 791431743 804293088 826870960 848972732 483977801 659228340 398287717 876933253 697864413 841919265 646785578 848647287 920070293 936283559 841436238 949318507 678350557 929474406 420821480 511807729 693987288 792304348 301169718 678606148 972727712 986316494 364297448 463602164 347599224 781263411 904720773 962107320 313756899 466227871 538118831 835798126 444860143 868595743 921533974 956131299 881568162 883906876 127872291 672378197 174224566 638865014 378893786 831691156 747301858 960103294 2273383 214072539 949254283 994856003 837457106 946798621 3337431 337089972 664929076 850945317 740494655 808818217 11101989 699737781 697862404 907793440 696836550 883500145 489029122 852970445 410849467 459663053 160820384 349216525 860556044 999040501 753438742 998475279 883535136 889610881 320835170 474330522 486879913 928072924 439202033 606327233 106445584 558221778 819460858 939573333 609799601 799347544 880772281 934128864 346281699 703181098 331984984 420423170 560665422 679045723 490054474 861040290 127048154 911777596 59773681 546748395 53386334 694543619 774906326 854910828 483980085 845301370 73880706 528923647 56420592 183022278 693206842 729355122 702656760 823015917 537530275 751270902 624719171 689876321 666689122 864939532 198556335 692933286 84978607 498218303 970720989 993800905 733590455 864246159 93075495 673272557 367952692 371998573 361478372 821694701 341247500 423844660 669682640 937982573 609251191 978744295 296709576 512794724 732803014 942856986 562662717 939254273 218176707 587873983 783189474 976152661 495067798 534129820 314924224 825226452 741434903 839101808 772686030 783765811 887390480 942074438 207671377 957116663 393126984 650135312 647672222 893757826 779328639 883830427 877668598 938387520 309940876 976644797 205364906 820634481 990375074 994276311 726458546 810218100 185536242 720089634 97804440 118126856 460136962 700482115 231275436 635751786 157211101 273470022 233121025 854818142 340530823 787768930 77114506 182419516 129363904 611881532 256853231 887456784 125850920 900252108 354356006 473069200 748651284 967207870 989194598 989680674 195460319 843614254 367157607 583628911 878271783 996181862 566013044 583776197 812759700 965197285 547841142 558379396 105878811 722100200 961476525 968942108 363947996 913695172 93335702 155714328 78798984 493416942 634813044 720408226 898486080 924598319 85329468 488574624 680562996 794415793 366711798 510114022 744089053 961326836 172768535 512050874 576420182 984950671 690496286 774749766 130910578 429041406 269562437 431891864 798184627 933132301 544462126 762291519 722496820 955163532 324030055 412645158 814343930 888717426 223035740 366022916 902257483 986253366 716531991 929629612 815386220 904580128 303935985 340210342 589597725 972386648 304523524 530004700 633017647 952438661 398219526 502339182 450851716 547801156 924303141 929561943 18707237 475971068 151755706 698477870 220889171 727512299 379245918 398117790 401245873 662751678 362329705 802071297 354961745 809173842 508722957 594620391 86973414 709850780 459849552 666467511 852454876 933601878 427499371 499265210 142009692 658549092 670013828 929913011 93643669 639546059 134867400 579226105 411224535 689067401 186246188 792194311 135380555 283130266 537472156 919720226 428963606 629084825 381834564 971106834 819009999 845055911 196935512 806597833 978289882 990491013 300524194 526253081 951995632 955167829 876600758 886357813 724679961 804271426 351907108 717675306 773049962 900262792 152823083 808903949 665742691 850937162 97908818 983014007 504508459 603093598 296371452 805229785 325329789 981551047 747033244 949657996 402410869 610047750 570367713 740924224 355400663 962993068 785209937 948086356 281325689 665132816 592843111 711673628 970643932 988531091 593824165 612022297 456798761 852766720 685669174 827477735 470999609 705314392 238596059 826876133 427040573 722891608 786894823 913993548 17136608 896389889 505480250 811468213 501199458 731109041 661592946 722129204 946585053 956001911 990931493 997676761 373060129 743656419 90783496 371481295 181240801 606600575 677586626 953133589 940241056 986771103 581907487 689099783 211845730 947679580 15664744 132417041 544223122 880196418 894798123 942424754 684159645 797632537 535659349 582204018 778228933 886246472 200675483 208412700 463528661 628633497 944138523 954300333 112811022 142138839 208116887 943051585 600371001 669223080 764650201 956276110 867711557 937308453 708461817 709947262 593831713 861036720 512948505 638876196 421519082 877675570 61120389 768418100 136957436 613380986 393974118 692504607 855917999 922696558 415234905 908613213 607638209 904029541 918774620 986487800 592286756 607373307 792045557 810700831 933945620 993350996 706994958 998887347 7776170 291736999 279323559 352313082 234758335 505206251 506560187 789906739 326285618 931529789 25565599 869707373 409426527 652740358 980911644 983625594 596783376 743429744 721057794 937395161 813159416 986834935 881451039 961383636 503215882 928295791 626951462 728154831 131407176 669377165 621853987 988726255 41959188 298076295 210360331 331589997 409109351 866968713 395531178 589993212 692150218 707287550 767780832 919922971 376671537 550235283 952189634 988895780 938460018 954608602 678097879 913041189 450816862 782178620 567306111 954402325 125506904 376209763 24502098 363322359 112898125 801654718 573294050 860444522 119984908 729633927 419993281 625327694 306558324 784267469 482880994 561144855 389576031 838090847 813660443 947376896 101269946 636029145 988246593 990710635 320170930 328120111 343216163 711889825 58926077 382382059 562144149 720985973 615091356 805886213 339703709 352756010 786420737 849712099 115696648 423959792 172914978 935565842 506184653 513791087 950675994 973091446 494824628 942226049 867228583 971030837 932789418 975472151 66315837 615926009 991500347 995640165 200159700 243320963 76419707 927713407 118890142 631345460 794849896 822211555 427538743 854927950 828417613 951548049 340499165 726220257 811043337 949863426 931663062 995752358 388706564 768752543 367174370 899780727 473123981 741800518 831705568 883173784 978781918 983776500 833981164 983214962 848274868 980216924 251709606 797942691 335378659 879513438 588611280 981255878 216441490 724663479 507750769 769456526 836286547 848442896 300149319 408300683 692002687 921784093 193232843 903776011 445369161 768644838 16435367 51439518 735375592 925023280 823843164 992981091 845505118 957526726 617427264 619265572 532609938 899402377 710891540 725932548 80075444 766714235 671750527 859025777 383634466 648893133 769577001 888090640 449697588 627419423 25604011 248604191 983531832 987924894 106373598 396332730 738600395 868636513 286118525 507658097 145456147 890705435 672803385 761932282 701419439 973208992 828338906 947001175 681663792 893119774 753374384 928002907 851028132 969388498 579812250 939645820 903259737 948820606 69352259 737532311 441508148 648925767 149239084 499047787 94988161 543879622 350136051 999621381 279584304 970424005 721017173 782514032 464195444 803009425 4028266 79192671 131807685 779280575 436388160 951604711 589709232 787895406 389606002 921169306 190690668 883576096 356174743 489060877 384213977 557178658 65447582 133981782 644927470 696048918 555446823 714978831 221985354 899705586 244687411 958351772 691207511 718317317 772110382 978300238 684124074 875049330 220988137 406929421 713213084 791833815 850010872 871358861 74602735 165818381 371014333 955011915 167867620 424050238 315104081 564465573 490865376 888175051 202242274 239804750 638889830 859169874 349890788 382010358 87693530 807532476 798203024 804097579 101970334 374255733 784228041 987856271 671934935 744143252 283598027 650035676 453273880 885330139 891394360 994997890 986342510 988850789 728556560 992775328 737669670 971698921 736658761 750980555 172041520 234136628 675441870 982054199 774318474 809534495 643527789 833646588 785456920 949457392 987288667 993520571 671796516 806402332 889732973 950521300 8752369 130444650 549079028 809856797 321100441 891968093 39316858 408801659 911436197 921937893 594725804 738000038 288045918 320577918 217094905 223234244 325395357 913799523 621495234 891150309 809993766 928389793 311737400 818676980 972270965 996273135 606364676 728494015 522580976 623904423 860944810 909030398 585162579 972076039 922270541 959611155 380370959 650693987 443448590 878285900 154132025 605946997 36991336 70628891 291302472 301108008 285441631 871331615 417723544 428828444 993765964 997768758 242133055 619400893 426341334 710169875 719517665 796027249 414109226 502040234 620106200 757322034 51674931 343061020 558979085 740688134 808367470 868002973 367958947 874579561 330769293 851277474 950822487 951895519 569260426 888236361 752892724 848327914 639150948 701517499 159438316 160615500 454550780 728922892 578139402 599756452 221247006 298328973 326826869 448659721 378237121 630692544 294973434 845867666 411365280 647304370 970612342 981760131 640700933 999859000 534202748 975754739 640645460 722526606 295611660 840209833 856373957 915949469 164921781 686575595 839935670 970340207 310739062 604841902 262648913 436313126 462663676 830807830 671219633 887322423 205689367 266314422 489526951 739396808 602208314 611624503 218069209 901497926 278617140 750202306 638849463 757394475 534634089 976781149 458685360 991611288 937525727 949984628 178728227 475330109 552255609 763897421 217955659 266632695 987403535 992114640 354298770 657927562 138330012 562517202 234682262 633488338 151192700 527126912 891885981 993178630 993190199 993257156 430996672 833670612 381066012 495165977 86683869 502721714 97363459 670648401 223206481 441791245 24541668 576665117 620079130 891725718 4166532 888048847 401314378 436533554 313336900 998613079 806752744 996220520 18452703 263502347 111735847 289462024 519170231 874636817 214415181 278209225 271302112 392886695 210380330 928163691 888034337 952284198 20661813 735194931 333509763 832174047 694452595 998489144 762101173 822744672 269448937 965314775 714137426 921444579 646407545 916304521 13448227 950415582 650292246 868689116 393527268 535399952 757325466 864163978 385108336 578602846 439500516 714729439 898699683 972054015 928264974 937304260 442900350 722239742 239967213 841151190 632796294 897263081 632876730 749577980 347646140 597039894 648381526 660219857 621663356 912129898 136181830 618734149 570794314 727498223 548202295 999184546 795581244 830611306 577528746 841439517 330580823 627936054 683761225 927753460 106340061 457158541 357576450 745328201 766027398 892959439 488887558 856873142 612474698 756213884 801551076 811657782 789227372 829775162 110582507 871376354 271587876 879221304 166652963 515473574 795509371 880807926 808534407 846283928 343857688 416204892 810741164 908281378 775161358 878722599 710397069 767319528 752083377 853143970 442762087 555215380 189981273 822494529 105672802 864483831 231140432 355533581 849036076 954714336 542254273 705614583 222851558 331624702 153902455 439862737 317513170 477795295 66346668 328748655 34508306 501132987 651831450 834581586 478061989 964848648 783149354 965064702 484688714 548252360 494391632 586866918 447685738 557364081 159089262 593490745 687421441 801608086 927089470 979959676 318980605 563324604 357098042 851907033 726090231 873132754 306998350 309352664 877463204 900990775 302819666 519404443 915492830 954650105 553805161 650158439 701707841 704230543 263237267 434106311 838340450 992941111 60538594 881648045 980784960 993272025 951142529 965298632 440410823 662751556 49467056 819362751 236608731 636817208 991108717 997867883 583704527 930474708 239570115 241136517 645070594 877542866 561186197 662992953 220526740 252921211 56732540 690496387 380974396 895047535 820888513 885366735 38266771 150951299 893065277 984104979 738529053 912385625 790546184 969468443 429380959 799396266 677186883 789610523 969107507 997858459 530303378 553903105 770408588 998566437 662277095 950361403 297877456 663284370 781266184 898648679 90433236 535860462 443158708 796942167 539469110 901837962 384820465 799482852 750019788 987667204 635190121 767579127 491835813 664817568 743362788 817343219 985333157 988935506 611244493 802388078 820121898 858869541 29236426 554943319 215710732 308054412 288790271 969837788 927084777 997188797 726554818 906526155 647745605 689428307 395177786 761566698 688263304 843977515 312825354 431233554 420879828 631690237 317789652 814557669 306473913 427879033 761566084 860331251 725714075 784702541 122146259 236220771 679119536 961406743 458845573 728155441 23821847 417870538 480540066 879690100 579563380 865397136 206840904 283147797 883009917 901326439 305159866 774058965 55912145 899125084 415781162 431620374 357955792 725665881 995191717 997096425 103075824 587897480 446097619 666231212 609405634 913439835 735179447 994327718 617912815 794756193 78489559 623457143 102540101 266224281 347731794 513872931 433117352 433892547 892072311 968523255 265630487 340267256 708739242 937985763 207195721 691299361 54610671 931945112 422718776 608644566 951767341 965192275 123543266 519778829 737065961 863541125 975151120 982744862 10184015 358622284 679466043 685718160 240514453 946888036 688387561 740269080 643195134 773857133 394921756 549115636 47703692 896309988 958822786 960857241 106071677 202184989 248380023 961192709 286036705 619536332 77155904 322357095 807249413 997098704 346512167 715162838 39031866 98055569 130962015 533817714 934598680 986785162 642228868 845795307 564651990 743505083 946948310 957972502 219137647 909550475 702466341 859479851 367280426 563763925 844473800 923848133 944989485 978659748 656071149 790533031 592392884 857292214 112706419 774437665 991008691 997082088 759668909 991087021 12944304 155843119 735967223 917723469 47896081 561218742 83896805 797865723 583693641 814872808 657424475 797113053 935323519 960126115 580734507 738832701 235220844 451010902 29596521 779435352 126284823 545877723 812015183 846509849 907413339 963755019 33156330 725844962 895842139 965621225 344476573 557129028 315162967 940887089 96118907 630463828 753269385 860985607 610419860 892796809 733098037 830819231 723900102 868465918 569627849 817021365 798375044 913683956 324118085 527778889 125545380 269069853 55025028 795101471 110430971 624837788 422624908 627152166 39324019 682627587 111053760 232724023 654248253 845047674 957687668 999797307 80550815 305701798 575689841 838317753 971759934 997544518 882621254 992292168 103861563 199686537 723797889 968453326 486320974 937595180 553656843 906506627 647865292 747127078 125220922 837145426 640611498 931523761 814232271 916735897 766994480 837918440 377493067 883955689 656674130 921979486 819406845 901343571 268480942 548124081 327525559 329051030 830448875 905574382 642237740 642957958 633279620 830066783 228674913 329341968 444368907 456050566 517742141 889159946 966015798 986761527 545488861 550018657 992060699 993835573 853614461 895147896 917621841 983157838 234538649 680118956 791754192 917907905 344586534 730611676 679608463 913148133 148293123 288287141 420870502 746613250 450199678 963964082 743458299 878667215 71490679 641180309 55867583 159163562 97183947 168867007 689065441 877287002 926210153 998788770 927209549 929141522 608910889 707126769 423733744 970283245 563765356 771169732 277899367 337100257 131025024 161510626 405138082 430099246 987113755 999292382 894624620 961598138 68332605 470023215 629658147 821895409 340536786 892267163 275785263 705033743 270486632 464498337 985070427 999362444 930195074 952795141 176068534 690717908 283585094 845967224 346534004 549544642 216897233 882976113 27734031 642329855 96260503 758675380 18581966 788481635 633533057 825518601 824127327 851117870 70402741 372276777 84383981 132789921 104719517 550048171 324501997 337769727 597912359 838493761 470428320 537602413 217081970 910282563 377238239 895947114 182107337 969086800 590970992 691401905 158371286 830236349 220968156 347700500 689894289 761475979 997463009 999115701 748842552 884198427 416281193 869116880 910966872 916074310 10087335 421966319 913542677 974839307 39532621 740018083 596928771 765033077 82597319 742424886 8603605 989678123 175330159 740292475 765002273 956053496 979372514 992945914 479156187 722110483 755297182 755392516 382495366 730287854 394358113 909501472 423719102 427848478 960891611 974723587 774736763 991273715 678427201 708308967 53833309 884214456 217598019 561656506 478532200 513037570 903104094 995750098 663458219 976054874 123338746 799098384 729102138 932582984 685750680 923198548 82788852 203020503 34556666 462492386 52726178 614464412 853430394 990865078 904839186 963843844 563312882 677724073 596627178 971989932 293563224 847048526 16343401 357715236 389770160 543528343 169533594 871080258 499990221 506336961 720696438 767490004 747443714 843303238 806239127 998400032 236852247 994604862 544182600 968696092 967674368 968071763 862373045 933342192 248257549 889266255 540565090 967372397 622873596 664783384 732459881 788193588 493110266 791216131 729458171 739011776 229370181 701686071 962768423 974619253 73014151 196832914 473501376 984048281 348020410 796154631 896710660 934210215 940103807 946169177 320171637 989032159 253955760 679693198 838786130 977382634 158364217 243660199 907508568 908291815 921207454 986658523 269012847 300777310 360862248 410129845 313345965 489457052 756501822 813475992 595833222 883628039 412388429 763407507 176687597 721082756 37841197 433800368 485230547 937632632 21805833 295262919 23393262 71358725 38669985 471639350 477170959 690846954 286975042 656001023 591987604 788472610 197603049 394298764 564581180 665089018 60017817 407668437 607991973 718463172 988542647 996764930 561427118 608317619 55476100 331686882 500244280 573413029 188007813 225733652 186745344 316064033 58004579 953865586 235804797 313456161 185556956 856910028 318311568 805261756 173504833 757172485 418818067 476423847 623636044 869492043 657979465 981639656 154652863 480198042 132445892 917035244 885313144 976875849 223016119 881152204 573393210 865721788 79908993 368700745 514031845 680725691 394574082 593462941 290394264 982189215 782171826 902994289 988836278 991412712 336161908 694345688 671405413 758969166 404225231 740874115 934546204 968996665 789977839 861523139 366388336 853444553 680340389 768240135 541933763 814745879 691154324 958355991 998862062 999814943 413960205 421763768 585992756 942419351 348927765 619358825 819344400 989882849 500943169 518458847 132534682 430753214 687398769 822590370 826702077 856964706 629389385 848874971 303098874 577319585 74331117 279957182 879294928 935272453 743258787 992589560 582616960 694674279 953249491 965487470 662602301 849016217 991719816 998948023 706227164 761461730 268937828 297807588 95266684 763976280 957356301 975321917 362809114 709947605 787482960 802762409 773836534 790243883 947144724 997309686 998835631 999843457 284475640 518678938 306918575 853608722 44205462 863707831 90500078 753300344 221461776 706740153 339858228 855912841 297644805 498407632 199583462 382884825 749610673 835718947 413575334 977971793 683267422 738096883 601408735 766853255 661528761 841728935 714278834 966315600 697834095 919429978 928896964 975870791 633621931 781628122 174474663 327677747 851267236 924735176 98313618 677694052 666033464 793327932 434895123 748245766 984547894 993613661 742476796 754460377 161978611 821417874 671109380 847599355 311057773 865206480 201175509 883708500 930299394 980220750 224504401 748298734 92232592 220558646 495006772 906457147 129289495 908690961 551539249 857661307 117621247 818310711 222404203 442888557 175749462 698295676 527691039 780267182 370302015 696830522 716550515 842016604 237401978 757356237 928357698 986086036 810423646 890989377 726413631 762115192 224164766 861298069 28363427 699896174 397654130 455539511 87922514 212193610 24189069 649104376 748187827 877266614 998817048 998831798 799605270 811175500 27426157 671639008 708445922 897220181 752895850 905209448 242425851 628847119 256248357 579968581 37698103 153590322 233825943 461655115 752769441 948829738 129624829 864623717 295997239 543820068 162064167 686312649 753568204 968554337 403742208 916163920 136070816 542203687 137726259 952506177 84729248 615838940 206146811 543255678 74581972 967365782 957758566 999190254 210046305 818617818 100426658 823407147 238041385 472929016 815126117 967670194 903479672 916181260 556563389 803129045 827964068 932020029 268612991 757439031 149153823 909029117 959577399 959864323 864728162 886779204 281166807 782301930 655287649 870136801 707373021 853394373 409537357 440665105 911062174 955185879 184170046 838281024 821484419 994928661 613808580 956184947 130227237 366656029 90774933 465665037 38118514 306288943 765184089 999333640 931110745 972395443 941162598 995053091 678898458 826958221 283997885 686426376 771356801 959466043 874012919 885318552 393773858 944476875 152581831 344342289 499960424 970712367 118015373 548424619 90997045 419997693 84699238 103891457 748021991 966814025 301472793 566129471 968625944 982132074 67299441 785084890 883789080 886427762 463193613 605532678 209614775 766361134 948923357 962707861 573777475 970586932 95216521 609971128 385408264 713352181 749987794 992526643 120681164 177054054 898768423 939224370 539081108 602146062 798198872 902145414 40232328 913004067 571314665 594714927 30827837 986857328 426453886 963545482 757548650 997441380 820780999 877963647 331878991 525853687 268729082 707529674 42408231 333134299 59094058 409899409 545295758 749488878 977776014 980104366 967659843 997834409 677574054 759123075 850509057 880583815 587925597 966536089 342689100 417387841 963472901 991500589 641887133 858065147 617382500 642727467 900834241 904539146 572868212 773382633 482220482 614460355 640825265 818177783 148824342 354865311 431616734 606353570 461813141 663581975 385830660 768848671 337299643 966551213 395020772 414538107 752342704 787440898 271275809 942384951 921735382 970542168 11717537 93406425 448015627 526796385 950065701 959708979 32704742 566393046 517856870 781324123 485176084 861376311 260912825 379995162 498467687 589933109 372893237 691500422 296288921 382172940 87346696 324885649 354817953 401834956 694394901 892641280 42592271 415871087 476710249 993274482 98147266 352480049 683482164 764497245 538971760 792155154 114053029 821326485 306633234 950269242 443247119 767436105 511589889 953926920 852224509 964981185 128597903 227399091 957696573 991431088 934506284 963695984 809223362 819757919 974367890 989994074 196675603 982706941 291168870 775369531 986705050 988367770 722919590 864667874 44639070 154357254 461298398 517764550 531879347 734903504 451885111 607247893 429559815 762787013 641704773 767845860 895269477 936809996 828036878 940907539 829680155 837510677 449657 624808926 544087139 968870128 264800612 676454971 671849691 860063622 550005328 929241189 642165274 847461293 873532377 944488091 560000413 627540541 983918243 988440502 339800324 397889996 542291026 797089536 802063092 962714362 117495983 501289374 26321309 218352620 71053336 989450158 111212183 519387852 734031812 946183427 780620373 892995869 340960680 369054392 84083588 373682138 744006114 879343340 279622791 727686564 758137848 765708257 429047807 913290355 635532690 965026938 135481268 841528632 683622374 979034703 53558242 711220860 204622518 252750573 537896971 996923972 607778013 842901781 688697452 846488276 230855306 981960760 557134756 578294510 662619725 853120540 437313621 869520767 331311128 693263846 475718261 904521126 532670651 969114688 891120662 943974284 777042945 793600205 453829047 886139950 463537247 960534074 51745695 238228593 1200084 208952037 395693293 941647698 763767677 964428327 839639212 938818870 359696602 804720631 387611399 644556358 596613067 935574692 503261859 773613674 983264669 986816148 587675371 950376859 332477819 664168679 348276229 429614330 840024065 921598493 762543090 909462859 129849488 728252505 848455122 986027449 657697133 948048163 223614430 559201501 937784287 974634174 497710659 767322664 229713824 652418145 766761056 892567960 303086648 700000452 457595759 579090438 854985468 861505148 87968167 942649660 357521671 849793958 489434970 727754366 127135050 285120186 455464448 502481866 384107397 969478467 364828819 847679307 825737974 932353978 372122781 810985192 704341344 918963998 294560482 848513181 954073589 958552378 868719241 974464470 799141917 966552494 762090739 986508627 275377586 422885344 2167596 780605979 292328619 884186039 654398112 697470931 479827120 942231241 53076165 887443659 545096083 949019717 464524044 497294777 182865246 527477120 866582626 897074692 173901833 439155798 930430137 964654984 448470034 892420928 431300961 794552029 553000214 764100187 257932089 868780135 252024897 543309559 527985438 864445235 859792036 878297712 326668662 388681330 978036505 988025662 825321491 891531396 58618337 200676446 372249186 811429887 142919981 659059084 87728965 129841321 544837864 643953593 387632987 689639859 340266987 915670667 924038137 973453771 508521115 801756533 614525362 706890123 779972040 854652156 704865573 953655085 389134750 821197092 355166206 390175172 394025538 634536870 909107989 937361111 991707429 992905951 324993665 472492479 686006015 979110613 559928004 594075398 319908287 884827844 726912614 745546990 106317347 687070824 854359109 869163936 974222111 978947254 236744535 686317174 795541788 838160204 597714142 822337584 505067263 785224174 641442917 893594045 732620983 808897054 234692632 779110373 801751053 817888641 819047187 836309954 403854412 478621989 218065588 576019652 643148509 926411833 5582269 255668472 277801545 384476423 401906033 828582674 59463016 971635592 806001029 860350125 137771015 214512594 403134500 783698392 479165620 729286843 668059057 816753164 602719871 788818980 892683890 893656086 738431590 783972582 2491939 664805396 803030284 828017825 415639866 900779950 936769417 967598349 901334158 928571757 898627780 965234588 895919237 978743683 527551142 556855301 652984618 933186813 53325391 912190246 205808821 449463508 648001746 956744264 740134684 788022686 836346254 871803658 877431940 955674777 428570615 888243176 13992789 840882947 790844531 964795970 833708279 905734414 637386546 718630123 288593630 337962287 274965046 874561659 878094884 920720764 451837235 500154359 121989731 626322863 384878801 904408375 614662445 900449256 113099945 487803779 231048475 725809645 257588210 528178031 80586292 570688694 639985721 786972262 735657450 753773699 631101208 677355026 547652216 900442622 602233747 699553924 953710946 968496465 622274441 828495699 354798054 722644880 501141423 975826588 964139332 970440484 248088809 721923541 178603788 506107236 5751429 732112112 808920431 846304224 78426771 228384125 965137643 971635835 160234107 538571420 764574352 914308765 537007246 856105212 417215855 986306153 191093697 674422746 164743826 846467484 540980773 824331146 994638535 996393669 617693005 703402980 96565709 919823872 165070895 365666248 588243695 949983787 33591962 246803184 256792069 471343482 532600043 939116352 897500397 985535144 645302287 713549262 904981518 932016630 424294727 980001942 75467304 818694286 223357355 260760512 141316696 898439636 142234152 611262553 396421076 558976746 769981966 942856415 620695417 774727286 212553733 731650515 417007904 654298549 242592346 567804175 101183111 842406063 593884099 831654117 3859451 667199118 516866452 692534690 500543113 895344917 207037136 732326821 412562681 868513619 616168759 622474093 611142194 966298605 603833605 891561977 213073591 347215467 427391612 531703483 835237368 988085489 672632285 939698037 85542346 322264675 665320587 862024653 791198674 935926443 723033647 827901972 14875670 532538438 453860770 741324042 284292062 533225383 158373963 593930041 730485717 868520526 600499947 650470528 245465218 618501034 960257920 999745912 460934659 509113973 93728258 552622342 235779509 568208170 305843400 820341714 369543659 552554838 982230472 990018544 100203148 536933719 148278256 672945375 498188251 807131616 466929518 860742491 309968003 888881317 542348139 907727316 156514889 965456039 758435722 953702967 74250142 460912956 37830224 125075957 245644347 992375933 554652633 602611015 541053465 668924024 184270927 986804221 718786012 961709316 934925580 967487180 305367647 752182160 389368495 857785713 382373527 601576949 177726515 824447080 275234170 866312205 856152276 903164569 841461334 875414630 234305296 573513828 337147701 503867847 992593887 993443545 650752816 900030032 576845235 718041092 585313265 675443213 482108272 747358433 161682433 440374986 445489154 689523687 2636474 569421678 974331273 999749354 509883391 654904755 714400679 873397676 638847494 869801019 604875753 905781536 34228957 385992093 623797435 755977848 489359132 902517619 115140049 134571151 602730321 658772259 78072190 434414391 875130704 945631231 871545634 938359424 42779782 171400963 745266961 951313800 170988675 299642982 53013032 681836576 880738134 925368879 19722195 537594506 494495552 958409531 840856711 860082480 820287812 911924012 294446616 677698263 100641939 643281507 187214132 301012936 322954369 532388198 151233457 385662370 591340443 646754981 398555656 806886878 940139386 956218188 635113902 840822132 237121742 868448965 228051570 445287968 623978774 837124662 967999056 999020038 449847178 875891039 82967043 977074599 362607561 531614436 629600667 785930112 157656726 589382123 305872147 386986154 706341238 847574583 97755793 501493428 318496060 554828906 580762708 832054880 58530872 68956603 529911101 771716213 46784521 651119626 633544010 648348082 114554972 993723708 792293905 911019442 349740983 920497851 57012852 255072351 991717741 993018729 212182022 804384118 565436923 590982571 700662231 774502018 151639374 230176513 415422107 921113713 18372825 806256658 998356193 998856274 301949008 717876856 87513679 197586314 986282993 990918359 527149950 627367207 796209465 822073817 852487226 919530992 347838769 867453300 893087195 919421023 832119884 965604385 132177178 727337838 248014329 977235845 864420386 964604592 896496827 990671373 598313673 730575081 515347537 822807101 652009538 741822091 688868201 788671059 705539945 918673921 64679280 106269989 813507612 902348927 427186071 464151095 39289998 979450070 101001708 798064218 163651673 678533871 126506561 698737350 435693744 885604714 288611000 915112175 333382476 766887737 610286967 949353279 645386244 683802090 97385960 851616068 513072738 897302209 298729493 568785116 968589061 983203943 103035249 539420349 689426181 812792004 962842083 981147330 46000373 699081890 351587682 783791641 733120244 854204439 810135526 909968191 737539733 844472682 563257746 716084781 665190202 897801048 659805622 853557311 28292864 154993134 537098191 850800375 591964194 931156205 185498949 277477835 56267953 498873770 562794222 766133158 77691549 248909885 534277306 746131213 840618893 883750636 122701348 984437528 169436249 706781512 180515738 648349865 616507974 941141677 51007499 197301474 462653776 869422338 687633514 975942727 10037359 189105441 680379222 839481440 660582153 662631903 878672630 993734321 63358498 481527221 557296391 955656876 176119788 427329246 294900634 789646203 302305300 547392123 834378586 961230486 406201902 984870767 279136940 961460692 439788968 914848531 145501875 609021026 399707957 528500014 366029318 609044332 835504826 988320645 583914049 918972711 489738885 990012752 487730823 669498232 993049048 999990497 441088575 630163867 756517165 881676712 780148235 837126256 676090399 806752995 961745833 983341414 210435550 483621443 5146898 511253612 466809440 549553093 508634060 908451996 56610069 590831827 375612011 783969279 20401747 256431457 320113246 338781054 480950459 546296708 518460742 947578290 636823836 767243534 749255557 890454238 610345916 787458687 900131143 936639532 687619625 814847455 840012036 944111135 85847249 743993679 673402954 972876492 98176165 950284681 988786970 997518844 109734850 300356012 158083385 843199684 832360303 926122815 419609096 790343238 794517006 979829273 397277077 924309163 886431077 994120552 712837418 847584843 967915338 988038298 15071774 160179854 193796024 266769104 523047848 681340435 336829587 749010209 674237087 818775058 905217999 919415562 122141511 372682474 946029481 975006188 669899938 875975067 712829570 796902430 794072375 867076796 790210330 983183429 387832714 862524961 881520214 908707238 530382183 695226155 36051103 876590671 343584951 556462335 494358012 571086581 976481768 998555235 699928148 731926973 971339996 976295722 223979681 680209513 771853758 992925992 511912986 792164788 646858501 681973180 28582222 63353452 689894338 753153816 493984813 948018270 282045846 683976172 70451168 976187449 152619423 580969043 875796770 930724081 285508303 717361237 888774644 950644271 21859489 523383198 952697040 990718305 268784310 352731467 35926204 506526357 179942703 619312860 699672537 971479453 382711308 959089831 444803649 755662701 177027387 247608320 87173689 818550834 532947500 591316834 666628433 788121067 417604031 419549369 243806365 524365842 936245867 976964380 148267506 327103499 54518489 899006489 201869075 332332983 958219543 991454115 726016544 839526058 918981274 920603757 117154612 491856091 288707575 830350174 135584175 729872751 79104213 163622443 236470612 943058656 316426727 869219875 892680121 965062137 149691179 268241241 943401776 955268411 705773200 805101718 454261594 511576321 480988479 654315016 15649772 559809250 245011391 888999089 798212687 997403075 369748483 836390361 464371531 977243429 277830629 599716165 765269346 937912726 256814448 314265539 910127186 953551201 642088524 992921256 652473405 790240998 377175790 659732328 463266379 636219416 579839257 625756951 861255618 995590732 100189879 708285032 794841436 895637533 793307724 846151539 334664426 870132278 942349251 993185176 58690902 520904821 848711620 899094615 231556350 894699377 212726003 613776241 504764351 659694515 798560060 826139132 965254980 994594326 376809734 610130884 960951162 968576408 628232110 850366639 348058370 694544416 454004661 494899891 350817341 827813037 61559966 495202058 893149940 975871169 234377544 750147419 438167282 602403186 3247399 341311205 114797520 437348418 779656412 881141141 935087465 953718617 505850923 541172750 129252336 813193477 297492046 617977616 122824230 197988057 453338953 463117453 624772281 807971757 336929226 941752973 588468637 940049654 167032851 459453192 241834313 760110406 99062481 466958130 515183805 958625126 147382332 723832132 378277021 862886741 155140070 651089345 981586110 991313993 525877267 597920377 672448380 919396164 600504218 752565769 939857988 974555758 153240454 888999355 480516303 666464712 665316066 801273494 201179731 834204606 642194468 772016722 898219176 995919954 337485773 528401685 59569102 449179122 712626902 799008145 185880685 488387618 978516652 994110874 937845219 965206203 45889973 80154682 881190075 896739050 480786369 742404268 598554827 855018724 148552077 184429408 526104232 700439486 506358330 885230066 500639290 653598221 873172367 875108871 811230871 833108651 260638764 420647971 682216514 859711992 565322508 846941052 703614955 778180617 256245496 321206069 399928634 601332528 843065188 948095409 11760565 237240975 283720197 873899157 232739901 594650539 717681947 871089066 828376846 844754631 912515045 976290862 105483215 687462784 926820249 995817090 805246120 934793449 860215237 922926695 385469536 594038465 547127383 680395227 471380710 966226191 994955856 995499273 868042100 924386564 529123440 804978727 116574650 884539837 824674517 966466902 289970463 835418317 602981732 825945003 914589904 921430996 267057350 423646205 71839122 306081467 703545000 934122809 950904423 966701042 497381297 539811710 659250973 840196796 100433862 896915456 760807743 874430969 757629237 802331444 264063705 277875570 886743349 959161053 532975391 740783778 810800297 884720250 707321372 945267392 757576565 928344138 94653684 612412160 133021576 542796722 548141480 805652358 567874381 662933260 298409819 767658808 437190818 521181655 825404514 942785312 512879550 542884516 577400619 869638567 88638407 381600164 624842339 860554694 721781469 907074788 203507525 554840245 435438642 671171454 121308510 669495092 968707061 997455606 737323277 741114898 638148989 742938247 150776589 204671471 929405734 990902287 137105951 147108404 47809529 202362583 832019321 901292293 191239969 548232890 373967139 955218180 388397215 700766433 93317684 534555106 476233847 568088524 840985319 974450907 314461828 454100373 152964902 823751260 546088915 931692497 569798368 618397282 180980488 808040816 204424790 696070482 327648997 633589989 427106799 460755210 595089088 893179291 564639976 571380593 339644058 569229027 191393809 427662157 309520060 332498218 375592933 731774676 168470701 666086057 965888842 978304170 535452680 567836587 201249829 289974912 592838568 989077716 298534939 946120297 453898037 987035008 341731213 950946294 762894536 993319839 145882642 258778500 972242078 987070631 322292983 744451219 722969283 733930202 14066063 91734364 742564008 820237445 368262354 796544247 40092254 839453110 749256874 790273019 537800214 598301707 151900754 709365409 146524526 813178206 450972746 898378882 545810393 650351168 40416959 184845537 147042781 644815153 479311098 657751946 98603217 455044357 135218043 974159589 767577773 778782851 361718487 454679258 33229196 630437662 512276229 539978941 854473599 968600196 883876651 976243172 886917247 996480110 485132885 626947172 923816603 950337389 340786519 366434403 385315607 587835506 707788602 989761554 388545402 846493029 547593619 993733319 745859452 836242224 34584894 142198033 468025992 791602792 943959974 979724898 445475868 882992609 983131031 984902097 89656529 444888773 998258796 998866258 60489635 711298792 50394263 795941684 746063647 943814125 954002312 962227211 8071178 357966410 155684278 488740202 588784666 821820022 660236848 699136976 283008705 793190405 375770625 505768657 713501107 975971847 272389273 916065675 401820148 622972923 812425716 865621798 699702505 800481075 528358065 734545393 339586758 972439760 646218397 902562792 565805543 807007880 324830109 834787493 588837658 896587221 947493224 971952258 245154739 453034736 677677855 738671007 791551030 915152848 609458615 700831323 964450953 996213329 477370300 604542746 431287595 598552471 961165635 978448837 310794496 429210312 724524584 737750667 454052833 936931477 322781232 966597581 609761628 624526048 17920940 738155198 783996649 948618239 676420399 808247667 454453051 679516379 795151078 837709686 159379884 279317182 488682854 572559413 752244947 813725916 294171082 632945494 340672980 837171896 593056491 754676659 664218722 969650370 233256011 914937750 850621801 912544866 45430894 746785520 425543697 522608602 108352115 898728367 744634922 941614526 410104694 902844748 238227544 301656771 755202274 939512599 381408407 851736218 943225583 987902089 584319957 984968032 828432771 995769506 584249931 902238613 266780504 309752802 164564107 975255323 838254543 935568095 472695646 541917742 426732015 758016688 422345198 571499461 654988969 755036962 333811216 703909101 238074083 926540974 262799193 361268428 492774130 563043408 968475621 978321774 746617094 833696727 378680241 688000489 181396289 825164723 540265333 737798642 654427189 801271112 504567266 760733200 59175288 598561706 418959161 667500369 470794414 633770921 588593204 634458863 559612367 746695529 204912207 796674968 264403889 877795813 558261238 586418808 913305457 923190866 697122897 715651900 633521197 730729163 528793963 532705159 94394886 945389763 499420067 869580960 670352967 783356925 220796876 792788582 303227380 675789813 383356250 998399569 816334194 891615003 142213973 780664756 578000897 892186851 791032193 813784803 899904252 992992744 92146607 107095544 492148745 506011168 802441990 821945955 706181951 765328228 907059370 941813543 452167736 813982279 698561808 739486384 248957498 342404538 177996651 338482095 702822163 988809816 699083258 835347412 417532792 715455254 358064061 795998653 419170616 533741323 772363807 852050522 350120043 564543376 982458318 983478928 751627496 955758984 930183350 987733085 392154277 554691003 411503496 690892223 809214860 818516724 244829985 352926234 928213315 957575183 769411826 866066187 495705881 695333882 272202096 992135949 3318858 873958698 202080400 462271949 804098957 891538396 652119746 679531616 491121578 586441199 215882232 585346910 936482085 942850955 961014372 963391149 361865675 623678873 106505957 919954784 447133858 897123747 409349574 622492094 97697326 221363945 866615541 914079146 497122186 687079296 241424287 463819293 258861590 351439618 813001889 826633408 139665088 621685310 284337688 716471418 576633913 846511930 35002626 908700639 116793950 167259583 34022296 999246233 801648566 961321350 8708219 723168469 141237272 442146409 465445290 851652562 662367369 821259670 146938021 153546820 817577283 995470137 954519106 964515553 993280332 994436154 27624306 740930884 416590962 963029796 803180596 904115324 601786988 656101678 123667753 346968694 580361233 782075803 895345876 950135904 721440083 893036594 606833365 765216187 505628927 590046020 832652041 850329656 339734064 461220224 489677460 553285523 316312406 402838239 729458155 969980233 349376134 866747107 306895892 869751789 379292735 823357680 323429639 940687143 591465440 747842279 286722951 706153413 441768879 699521877 658592304 801720041 619052659 844631033 407172773 662829670 850664925 888377399 874150041 910066494 93928645 624229939 302646037 704547139 484898891 835245625 303479110 663927312 10638426 454821107 238598367 835559717 106886959 567932859 922618262 932169305 663457223 781121394 541788852 964113583 798386039 883861379 436320712 539407485 103212929 290909980 192601649 246792170 780407133 879443551 800535250 883999269 167771921 704585083 155873326 559309708 791114778 821433865 549982588 972297949 876068165 947551587 854386549 951821800 240036292 410968545 38931390 727325100 444613532 717547196 754055043 777468278 51146380 867042924 780998409 875956907 90856146 950436015 953691047 969249466 463005724 925853302 502833160 893965245 405219212 518613568 508512802 693308056 155221882 567240833 900771345 908723936 3748246 778022883 711815730 881176165 851986505 920266267 266313277 808456934 433575638 818118289 122047153 163038419 849923981 852219835 378845250 618586899 723029945 885080514 776317520 865860291 841915250 880466479 252190750 271541917 188354827 790004916 494613298 832418166 924482048 935495998 663465707 691544448 732306744 989463853 140854432 829573023 252039546 388399902 250765857 583857926 253584355 799952909 565673845 619840444 735058336 959441815 439943240 467028369 633584549 745036579 840774707 874012654 853154638 922675277 32380470 45530917 488093807 804998325 218662991 740479730 562825676 791263570 900779508 997191929 358027789 562944653 546210695 825510730 413297752 954763978 208342172 497063691 864999672 954929426 461660304 863321541 687647588 697594095 37044346 355467935 994500365 997400460 46019016 652899966 354094256 566615058 814492378 999431654 30425774 489780682 727183732 748320083 599779500 721729034 723165631 969146697 156896614 840865647 621580142 822217175 265957839 468739292 241612712 604561540 416723337 728344939 555041048 679776926 669972066 761674503 143016966 297040562 926446851 972565783 643879693 781453167 84953420 549866347 939989503 972207126 917874943 922646579 88212593 861554751 522833329 967868548 34827716 59717374 481971254 622453297 124716363 699634274 295061146 313573150 810711571 858221005 349929338 483576982 607432249 705825046 921235270 979685599 93070306 198349153 187625728 964309965 218552466 767762757 230367608 788360702 70064776 286970982 245464806 822820028 31878129 835356775 458513044 506953772 998858660 998926860 411419767 938377503 135808262 265314955 386278419 852169925 826806734 859883032 685370961 959035084 880548855 966752280 735375752 781152022 89979654 761443524 507079354 517217374 949956607 968603003 886043643 943831505 166133609 928521927 743833168 865391576 624011486 671735928 688238259 951083165 969507484 976271668 521698541 532380082 802239483 818393062 28482459 663183443 417140385 520404215 612927560 923195128 115933267 161282467 591863335 863681599 952670542 970602409 465356667 956494055 960119512 990044002 845515869 936664823 593486298 977564191 807775182 815736225 127686716 448070911 813201644 886246102 585209644 589451387 991511045 992379319 449038554 669010791 64384167 873281264 907348421 912462896 266138457 486470768 312375248 749903161 833266771 994568802 678578063 927268578 975040190 977405721 696078063 931296146 474795427 919712615 965010118 972602999 919932049 988082049 160594254 381340271 622725838 897368338 5889855 802279321 656106898 667760261 72400823 872633359 532855417 915585326 475882338 784692678 103995659 732335611 618729091 682883195 407785447 629597469 498417839 580153291 118242295 247504274 189696952 826060191 824701494 998210296 791847860 866343769 882293126 901947092 385736367 782320729 650498624 917377022 246470969 771235624 794379640 963569205 614135019 688134105 217185957 997005584 283695204 510362115 654301996 741951841 759848628 769653384 479416682 851887569 358250023 423677392 272715565 812566620 755944483 950238271 817850095 898306452 183923381 597954511 989322346 995943330 418585670 980436686 705413559 795845634 730059148 907105451 470078052 767287290 690805926 960368948 362436223 852783770 948748842 965819501 575232330 880580823 724999447 899741789 211883173 868903246 390072422 620848360 961820625 968779486 828833084 976582149 766393864 772470178 354223779 387349442 254040025 515777915 291910855 601403867 84412576 317406978 616554270 862304486 451505724 937845827 542912462 669116922 378858419 996390453 23175631 243980004 298031480 472517342 672408969 801310554 447806510 861848118 54881510 719133644 60104678 873869165 330388939 474258062 351841232 634079538 421607341 860006887 673969504 968703848 836575181 954687369 557581023 858227864 48256459 731747997 651996950 746136135 893526793 969352655 808950403 810172715 448715705 714527275 137914147 921940088 597029944 886550194 468990715 988102151 885922741 989156810 177545328 355095395 423632744 492880009 790279945 858604835 752334088 967367936 313172785 945018419 81942137 225574171 380072998 804441822 543617018 573225808 791641967 911219501 535793532 565718098 893214879 955773146 597050236 790344185 497371545 584956522 207835694 825616578 234931280 920521328 174770336 236257687 540960323 885236285 247493093 352422671 533132962 584547024 84460286 562027795 235219383 251666071 601727054 669019207 628721619 872674400 647430019 788802868 72086999 661644533 302928348 360083932 310088040 907475422 508298415 766145976 535535669 751616104 29702554 293283129 676200763 856223595 137714627 921975105 27248579 290825694 816803501 931757038 586549767 936395495 776653527 885443086 722665050 742192235 863992398 979412805 15628507 631570040 786468686 838397764 674370895 869934181 300602015 651888074 864347302 955154599 887495258 895267031 433233044 845210310 20317858 452480801 95396135 895359691 726869192 747992572 433556572 599814277 544206816 897736159 239885343 622996570 388688663 526635085 345397262 787870691 662075782 805642063 182429763 334149357 381541256 725898836 725571692 897246184 663601025 700807508 401654037 965990763 764047348 924124262 552689715 999757121 833356198 974154784 906105155 953765110 568630751 965246102 522468531 678542315 740796371 753216902 383928602 753278275 616299789 667726877 274886780 345963762 143029517 224044283 94123285 781225956 102181658 733994800 25954553 668100551 903075454 957924225 178129739 294644527 855616211 931767253 58126272 939259451 585232271 623377323 920857777 970004994 8505264 738689181 56120085 907105205 534103224 716947961 216428299 230109404 763041402 835527845 524404978 688109124 303800285 891969187 12835072 837251865 485193078 818866615 186069584 660536320 913401555 985830567 64870056 982044104 109490035 471590089 124310494 973926035 459583295 566351092 958603733 968194821 868287141 901484072 942800215 985777148 713465139 723847797 72539220 259975167 402553028 715917388 220080654 349693319 351388670 498369813 959591362 989585145 159841217 287050509 959413590 985023736 103407151 205310675 440410419 794877688 943575447 979852845 799208263 828926595 22572115 267492035 294069786 595802033 244438293 634822739 492432106 699761914 596733590 846379425 922843767 975714564 709102739 916170162 27072549 148803925 698734851 784312098 214074466 628314402 191827092 910174817 531139579 704594347 953729735 985878610 462202927 851473673 136073088 684337086 843675350 886360757 587806610 598171952 489447550 911410773 214624724 713029884 450214923 512106566 932897188 952529645 252223054 904714223 458088873 785098652 891076348 928771387 335663657 768476680 519712479 739524485 584495281 808195146 504718356 904792558 637371476 901809957 221585024 438489141 974724992 984218420 718946611 903788295 592355937 849979643 982039130 985395160 232667742 549192823 298308552 805037043 567527315 826831134 848540074 927580922 95920998 509856617 618465214 886937005 488640582 626020583 614024157 703450909 974897704 979673802 331618097 743751119 701910413 770786406 111081938 633511642 597263559 638489740 56133714 111012474 881948461 883738454 228046838 482822117 560975455 773183595 577311625 834848621 640978764 765172372 910168095 942167340 4820199 607514162 737075829 848059639 773618247 891466139 99467300 615228233 306102768 972472596 381080404 652807377 194164106 424875920 329641533 433684462 712003426 955423671 191748577 523698680 631864305 797702682 906033790 977179721 407347937 738188911 413910858 483096765 989127111 997702132 351545016 519082476 864766501 971894907 872993669 891022063 748349097 877711082 538747846 579880740 105420147 521225584 679566109 730713721 252732258 677194909 499757018 502075010 264993798 693863885 705234237 790917469 348157987 920271841 487362294 723028848 951240701 996863940 316303908 909057579 279001784 466908699 948436065 958601946 637710143 935388143 942385903 999131580 605739651 701148855 649825493 791598727 379973868 752043230 42593739 356574554 985782834 993061925 383331986 965052473 690653562 708895865 311421794 705218867 921234777 962760740 552058122 655836787 506946607 860964321 386880740 818408808 926582573 930027806 301144516 518432419 200447496 516157038 553636360 715925084 941939513 991621509 698113470 979229650 682379110 998520078 151050920 157940357 895529615 992904030 715940655 858685684 929407853 941483664 387738382 456876295 747560412 751250746 425930106 703729558 626114305 775225475 387493558 893100590 906520447 982285367 571598403 623447984 241787542 575989063 296744055 974700648 346995102 935015744 715864505 992168122 201186625 500656417 30188690 872324649 15673893 23305638 38692233 532486197 970492103 973078747 752628460 844594497 796806098 879713790 802825267 986583571 227616942 370682549 291701851 428272610 332948145 810364286 990071753 993719204 373514218 409043165 201026171 563156831 353261600 961089402 936585069 992561468 664911127 900770827 690533189 804270585 867905584 905033239 69044538 948802113 441100091 879905852 898589196 921673534 986402342 992112523 414845789 521474233 468669678 641869313 699643775 882852291 239709747 523786365 996038376 996156547 318613288 927745754 58403066 696668218 592930249 717702356 567979443 807666051 270519862 320141806 144260095 414598498 261668314 824963439 386933322 592524033 250058882 522580544 683049146 898451374 812646116 874462836 88937331 142257883 398603789 478261007 321899574 596374892 733769392 949252827 320338290 330159548 851782891 921074441 234218781 724777576 997661477 999958483 281963715 809533795 824725510 911599522 978919683 994058741 795343781 850638027 161803548 590088626 145616083 946687010 787686407 982162432 470142267 948225306 279502221 393855806 204427790 764242165 636095589 816517256 795903115 843194683 681583535 904404194 99650229 642905587 707738411 776043310 986323323 986830813 249001602 267958236 575989898 749736182 3930365 613881825 548304619 948340505 633165772 734441977 655189233 862276610 72140575 521781423 834720167 951990064 557693598 707621681 291332310 955375227 789881919 955450121 514990241 737538563 364925398 722192310 482643074 486685490 614426207 989619882 790254084 893474292 497350077 854775446 41425533 739571050 332030113 724808645 45479429 818708343 176538245 775104609 824125702 889993927 838147084 870208659 328982734 818338195 444437493 590393981 502359692 538988561 798422398 832336218 517756031 820582140 226044304 296912723 157616452 446913592 141324281 520773322 229973279 659917759 842811583 916301902 469192292 809197391 146282615 246943666 754043026 764315775 269703945 793181150 935022659 999343465 808288585 873676186 134328575 308479257 841238355 860392556 60922387 859274822 884906519 985766056 448893196 885147554 243263383 732163593 733666311 859031302 438754712 486557181 246707547 329799958 4204312 984102999 882456322 911070827 847574290 983135780 536372398 939989651 855982683 974083668 152636164 389643623 287580426 889676135 4272381 958073874 635016606 710791672 988930225 990296302 165664848 511466128 286944887 385042255 140704477 411393900 586793115 804252675 787155127 815630161 208416507 327137170 855017650 922802031 795802938 956456929 493477768 715503012 784798666 828366027 546771877 602480708 704366023 877303489 331767791 637345664 273496678 584206415 83221512 849243435 442386283 587568788 59067081 403330120 440321864 738748642 845167642 953361716 184945000 314466209 612012490 940273283 426641562 834659745 541499969 593328894 775122457 775905841 796200499 882967111 93590163 665370050 686918984 946091618 979976748 990130573 656032492 729348936 450411440 607335907 407643476 557932790 721048254 803482754 347369437 543772138 860925694 933217785 473926362 979793762 92508559 220280882 669539626 811859615 347621472 579852911 244214215 758423517 428599365 542292281 275652395 436066449 204774558 342021272 480025037 850931598 371803987 626512854 933718970 981002378 524982805 680628574 249105377 939030658 556267438 604309356 335270903 820862736 756285997 882476207 869141712 983637824 237903598 300667919 999073370 999262775 780419955 903212012 444124186 898350018 745720719 753240373 921817537 939720448 340942700 482878936 945551032 951076002 781913891 832633992 354070328 917266534 820392920 872745546 946553339 983960640 282129144 819815128 189493882 479749953 998360112 999186892 661551666 705160393 145725206 774830505 77309100 178634187 971822867 986200347 955363648 975055458 812440130 986298893 718749019 914641859 395370471 694238943 140752858 786734105 738680843 758876038 637233992 872753305 44836714 856383976 454453647 461062915 105093014 187818206 289462796 505787058 613639547 971634094 380897702 927793201 528728927 697635179 198622031 701621937 476235958 768849481 305154855 573773594 33904471 640875570 204042937 908975712 80460862 424637611 391193999 634703648 249887794 464781115 908982333 999843876 95740992 722862239 949246417 988217597 888489122 891356036 705527400 835999698 78465254 153226668 886954605 915858956 970668841 990901014 776802448 890214922 62957260 475714726 64109518 622812903 60921109 900682708 459515231 520366673 62056784 453728299 730123968 918623672 381728880 426722421 933123916 985185205 763188925 822845044 596439385 678381710 237972629 452811918 664979460 708467389 784822851 884445379 712269507 829387542 877911858 921161142 509963997 956486018 1144718 329260170 878760557 898213644 911453894 995912948 168458218 489124951 713796321 878228005 118249003 402069181 890448990 892665988 392892580 810036075 859981682 890138916 604177156 867441537 734491958 862776031 949262058 957698411 802127698 829749950 647559225 846943026 216580 468837034 844524449 921278960 880400306 997798193 8615523 94176455 574955740 960231801 161604191 931833568 515760008 866187587 295683364 385181277 637895948 698476430 384762170 810783760 64701240 803530187 402991127 406731639 182249901 429046020 863008131 940072223 267892136 354449513 391170662 941893845 277270929 908986361 930633781 941838199 131647474 772798585 79153104 88681719 259050666 301937060 408491469 911758811 655404929 941022182 791787617 886573427 969277846 987503129 901307060 992732108 21058983 981378137 707631212 811850011 562094352 897369564 526636299 825201932 385129433 620729288 870550347 927122202 455809118 787847787 837180362 994813963 90669905 171049242 58933450 783012476 364608861 652545632 599047236 776820256 38378015 968303998 199756993 540711593 41407546 306651699 279977680 681296055 827550397 992080515 228964052 870453112 984343563 998660792 481856760 803397608 508172948 692593595 967349468 983415469 732352666 797530065 602792450 749849320 608435224 688344472 880364927 958195603 299136861 817471615 930425267 954692603 293349920 599627612 412666512 642518884 668695596 996056600 474669051 981142750 24513442 836921543 921830546 984237280 488267709 618437477 997554242 999734030 754303679 866509508 479876380 990483453 526456067 828486178 285803321 659029324 120602885 384181522 638344734 728543287 328612766 880805696 805603640 964054093 774070130 911685196 504347869 629113352 770330850 820244220 758350032 906574809 383581270 897363831 699208984 808475750 570164081 909053886 180372131 786978686 401770582 789977989 239512130 292113393 300436179 548015995 185784911 919707462 846158329 872448822 545449704 799339786 589314491 772266262 684214284 825381984 319341871 539804569 444949892 785866722 638486691 780241313 287282512 719015046 371547638 715357021 989971609 990802855 425083264 642507135 908251363 999335975 6819422 615109806 250519016 510315479 511733287 834424535 863826742 963349895 279066751 917418388 668422168 685349098 380014407 749460518 844020385 921018384 52390885 556746044 852153638 902232500 388775398 965761501 97141608 766304004 584440574 594068360 223898156 889416906 241277854 527716947 575316761 746198385 919378179 927125739 291004341 485950494 230814021 712540053 358941391 914094644 862092299 954272464 57616394 559997739 516620670 738239006 368430035 858548756 932855315 973879061 792396545 979886079 670312394 913885442 381490281 554558622 403183165 964421077 285892862 704040363 671521389 911035753 37520580 755297504 9515454 289882286 346898591 475294612 553069779 919277473 368272713 463727411 902557764 921858515 760309458 804604746 482216678 998021136 957329184 962182502 620722237 825416988 811630027 948514906 564002390 717985106 659592344 949451822 123989918 540934405 729365934 925779601 283956196 697749549 353712832 808490500 256126402 594825208 389143761 621504078 915098465 967782241 207866200 398617473 450260291 464478939 149714427 447984849 765495500 986505041 676200643 745448112 22622915 355377152 120630972 830244218 849352389 851381692 510049138 950733132 280545333 620335133 988195594 991597336 728217917 795802945 363286011 974130969 286248292 884432370 455744159 956331165 228163834 325250597 28942944 756865117 958262977 985989198 371220151 524920949 155900509 255412779 490263565 713568723 243660621 962324520 176173234 513438721 123258905 357850656 466554445 569417450 605039570 959284249 273717481 996893463 965455111 983547353 20548281 434117305 404697475 817154102 970356849 998532919 857577815 965331166 146710755 954205957 998952522 999682977 737465621 987087971 354771261 538760365 926395407 958027299 753564994 947957355 831164390 954916166 670181357 720459633 637198745 962201913 919277134 923540232 172101988 652518386 606998745 666105151 821211979 826025656 71084828 991586389 545365428 956550881 406310473 434767525 843391855 885505538 371198064 666237463 61688019 387626702 494963040 629634456 797819866 966567811 152671772 570692890 950397081 981254446 624395162 873516434 919107328 946231220 25527824 985617854 411631222 600291359 223774450 300146602 529057141 904683392 372717931 443887550 277300619 873352603 396208151 399722840 330207111 456465455 949115585 979179742 990859375 991482623 654894872 987543697 560644514 695810457 8377784 845227567 992510591 996704369 461402518 993858246 610473288 694522752 211132737 588158927 860461700 962208301 487491431 750848471 349745916 371476151 173293133 463940866 214232594 854592580 134351413 656997597 960668044 998382823 43877636 182035050 759222690 909079037 83467714 663382579 204943099 938296380 58780152 821510081 318837753 921855848 722021640 854858195 584386860 598756747 678867204 979624696 319446861 651268803 931947602 946406949 903808796 990893261 944421438 984314810 551557179 898730783 169380887 880856688 155147054 917154932 389155769 611938417 211156847 540303083 718945221 992329728 814443574 819213846 778586183 947423985 491178977 567112726 468319706 507362415 47715988 912004699 872484821 883482839 502129475 881575119 665489249 836175559 252989777 401773572 672956440 928018205 628452221 823935039 681646276 987893979 629958365 995695456 620116830 971890193 459407503 528720166 295014216 361581718 268247163 466892391 221830762 349309394 297399908 940649305 750025366 893354277 877064747 905009575 70179056 108225871 105667535 815630910 415277069 736476216 155319841 202357036 776450036 824576451 730561001 852583214 796881112 955215143 402710089 575133565 923810513 964810347 56079915 730866326 724386608 902261157 515209822 705150694 207537277 645105205 561741011 637973456 302488566 304546943 326349294 407309398 941585565 941774901 318890210 613595832 447059537 920085816 178179431 904700508 201327815 928346776 371840900 676009759 361175898 950866064 250497260 765745071 61810242 418548295 332840848 956999386 451607477 977863744 941208892 982313221 792348135 823999229 599671328 893040838 294216528 823110264 489767402 551847490 497818178 894325972 254372218 843512931 789942139 993753104 304576493 354316823 979381311 996479785 980485528 981852385 511368675 896042206 966218297 973162589 269199475 528069676 358047871 604077545 241991906 624204287 352206212 882742222 909296111 984878423 646624061 770467824 911419845 990400910 926954036 976963574 561157509 718425428 762729103 912067876 311329574 775945058 479222841 676226672 557780024 658274043 114159292 321070034 998707283 999706552 315171565 500637874 92869981 932921138 418314146 920209317 897052981 989529173 479185140 603957282 393060496 521194591 94606055 436664646 291235445 934806413 454956125 966594246 631037936 732140278 802788633 973725021 494427084 584174342 978709575 994322706 997140049 999914511 594497457 953275980 173026740 364463757 824431655 837802924 525672237 752205478 714154704 904585911 609514746 625680972 891409074 974308075 199115503 205974148 923009620 963220117 985222275 996327373 253999054 847434476 192485824 752826400 788469546 987306265 198664121 399246602 85158435 647154580 508439264 736271489 888871223 982205359 780857093 938905788 897324659 971662237 415793912 998801056 72165971 765951131 676120350 880157297 366302047 834005375 956913818 959893368 744323505 889555979 228302507 632276082 858717352 951924703 891206961 948375395 350719037 434496610 457848639 705671101 284757873 722615998 738266781 970687424 632759826 719173622 36669745 561749370 94774210 512332310 222594994 761950087 128600424 434516463 410760867 596525991 434878987 654408991 243889902 888635853 566085794 719622185 677123818 701683958 888423407 927781907 435579416 780920100 144582013 709690792 15103081 376426358 933313482 936913357 246101413 836976265 706994882 722757492 257931737 906351996 535703918 620126663 107627527 385823417 714967858 989012358 712868769 997623642 972892465 976534127 481181426 713732901 313837362 995380475 752067851 996391549 626552318 856963486 77997143 751483593 631864140 665819056 774907964 843506542 675652372 933196144 78762813 494819519 488191799 798732349 173336590 897401346 881308198 895816759 457856194 808069499 89650362 463464003 543123650 706388679 273157967 799649327 25500762 129947403 678162718 977789311 360604870 677452852 852429343 899051156 756901647 936788256 207913704 414714029 641010607 889950765 736893232 760875230 783705013 789954856 483138990 743474035 171345507 996933653 895622804 934657814 132976929 932291550 767841056 909423185 466228675 961906190 410699743 699499189 112734308 497116185 123114686 583662795 138678907 354225599 28447862 460670065 940598238 942081766 876268174 952663487 765169222 813796735 431082004 521216746 884972447 973568037 668120751 826117112 83227698 813183200 300290136 755892878 283673627 365009111 727485707 979887530 923784190 996948918 691713372 849604172 966922468 981407290 273306853 408371223 300875454 364384479 182088104 464002131 637823291 825835476 402784485 630122819 46532230 402731590 733301212 739635210 167706585 727001063 183855612 715487742 168688817 784341694 118541298 588502147 924624838 967121004 88518517 309857353 55464641 343412607 793861844 867348359 547217728 581251153 28282704 862051271 391529831 793485263 676377063 826012249 245507954 812646412 481271577 815609870 612028183 861505637 114913916 375756524 376857678 881264673 642517216 749491551 115799432 121312294 516361973 522855830 41351217 131578741 865258261 979333743 115185079 639843630 121222802 132118777 788993039 974134259 267148557 663159812 325177417 604080757 191097346 222966163 435823395 768297898 257445122 402278822 54405219 816438074 11629360 394225714 11052118 306502541 998594561 999443514 750332369 859471049 15705378 470891977 22542418 345797240 467418098 944278186 305525623 996562304 720365907 932894318 498248210 568233268 44202610 195637360 681076247 728085564 903688877 936263823 288916713 667550823 856619911 930635221 565725859 677456879 171066728 698003628 264175698 404824627 840633251 957218844 998333784 999687060 821240372 928387324 619194549 926783405 486383308 773930607 499872389 989933033 888209507 947746211 131019851 670292957 946748990 990965506 664343298 922086345 168893241 892592938 856669594 903183026 473066461 799211473 68938770 362453916 480476429 515404537 18602884 194450289 151122350 881356963 445012541 508432134 484578655 761045185 190670345 552388058 672327764 947986797 866965536 891788883 976520483 996149942 772506226 993386578 161936410 196693909 236135585 798814585 200463405 300810756 962960066 972461777 742706219 753845624 256322946 385688694 892662231 941811402 465835137 767184199 317553116 358768794 639082245 918894557 943513462 943796856 241481036 552717659 582442213 990617648 269879988 866558807 524701831 526357947 410955153 851208047 39947919 55605956 115630539 631935513 752782023 831598608 858888504 973575162 607216298 746065084 734011007 809574707 430830780 571094019 761768874 963446124 217705610 843379631 500619251 725469619 470830579 686694677 567148804 808973956 834525074 936166178 698606832 952226527 453666639 618003805 620672482 981777770 569875813 587687530 486025070 973442591 737930147 836886768 446137393 917468849 844808209 992920926 160022046 714840183 513519201 775717144 886757268 979061289 49481228 156825369 592657589 793706610 971933489 982941904 417079841 907485315 418025439 901703382 977143658 997524846 96540126 759862811 547220080 942562968 111645836 854899409 792309054 845399307 781810736 817721683 356831716 502068699 668785715 977162577 340869789 423014097 236258308 891108303 192759302 804315815 117756838 843564470 229019083 893374332 667200108 976686580 289023105 312059687 415779976 516444423 631025410 889490994 857730041 929518163 65658300 327141527 561594475 977112300 906539755 975510342 427317165 681261026 257987826 640015589 851743929 886049028 234864591 548307286 313180414 642755244 823973499 980615807 617160346 978674367 9255023 827873613 724996887 977241782 203085619 836015704 712744086 757759582 347961195 504977043 480867638 984215724 684611539 985640047 944411871 987532802 29248256 280275032 717646423 942685666 179953519 566449749 50847945 518225645 110846211 776626137 436105629 821793742 663575843 736152831 909043117 950874048 433640670 926741405 27657139 177007619 395602668 974155438 308223792 314140442 852529014 999348939 637710620 707887255 396994923 830192571 68921647 368463674 496577697 759592523 34673237 539987072 571571885 778878687 467067236 823740164 897814266 929216799 549504020 902628360 60143226 485072311 624422665 733169172 230938221 493479771 295993369 384106092 83031660 164740334 822900809 970898739 131857297 905672299 219362166 582243361 622662062 915345253 876959441 990110504 352176506 779133252 711979135 818573656 857544342 963822373 770502436 781787410 976489458 979604457 195401595 695560824 459994753 497764903 510010244 731328017 76274457 371378864 291842753 883680720 762177886 962555472 521155019 990230792 949098460 969181592 269473724 726588012 417694742 816413372 251478026 389259668 219718017 680169030 601483095 917033949 834583445 842929360 90476300 141999501 904376494 999584581 166713708 779206632 632784025 677303416 817653174 960462677 91843841 833269430 225423638 746806977 302413464 518927303 649628269 707301192 138252463 480551031 350403209 965993630 902603260 905150798 127131706 914902961 577046654 782561286 122447326 928303599 662098013 921648773 408491615 935539441 648205707 815324298 438136273 838485416 517788801 577355041 909633537 938981874 703139615 936847044 385177621 843253107 890908307 939693491 204535546 610637542 446714784 693428422 55121340 293776280 896834169 985575626 933606148 949318698 332783029 728036209 705163935 791419360 852980299 925130819 411613473 698247325 641683252 734494470 64647165 598904151 17905948 173409542 367423004 814497208 878343952 879951363 864951511 868674556 173305435 821714104 108641719 711628602 262990785 930347793 786119498 973157831 920641965 973877470 78298110 218189062 110938830 444312690 74110462 136292008 313737473 420396879 992243264 993100809 813735540 901508767 501336437 804423691 930704903 965800426 281426823 585013260 103832698 874646935 729152628 869061166 699097093 999018865 702960939 941207616 882240207 948818815 885298609 928952700 120787045 745683783 13570710 317622033 397414768 439991980 101692992 583505630 369264436 785976805 759627591 921454847 300769954 619728473 352810686 786619594 568843268 688526522 401148163 729740903 23422038 349342388 291475376 479527226 552065078 900447557 35349294 408525470 42191276 221008282 874729540 929653782 614863080 706588291 561585962 858743310 725936652 880439545 878101229 994428626 682435259 998370420 26234904 426104282 56915343 509382116 451903674 906470437 302725483 559387245 50953670 795082933 84429206 481490391 475004827 993678694 361592550 671712774 198392190 844205137 577080493 737385156 632155920 914586134 562389296 752929207 530730470 818447028 412160713 495424354 792075247 889235195 765647164 937145200 415657535 795121302 833886047 963152358 717943081 792895492 270452373 325871117 315241220 863745822 622380047 872547856 348366348 991542266 588952859 845496074 187361116 556804970 704555202 869586804 867087231 885496955 281822627 423328969 524727270 968729745 758349289 946236786 71434094 112445562 978050653 987513897 256055849 312588824 692825162 975064097 855616846 922116183 928774098 990682791 326266375 932954228 526533851 660915715 912631315 953501663 219186957 950289908 317418103 338295776 598925091 850010439 944187158 992260175 139273722 184054231 550916302 875626875 272993488 928066534 194819528 574568970 564769058 663586887 789468904 985096582 409258879 800239556 415220085 837175338 484675312 590656005 547033531 605796924 83863213 163912497 12124813 146957839 617269278 669231112 294895012 985025847 744839614 825023264 414488338 498875883 730374815 996866085 97762015 211130346 901712795 902573899 275909109 588060447 553591510 837078649 345422829 470300193 812181710 820401412 823113654 904733505 360963855 362372518 134869019 549312135 927442540 945108751 47206067 367862586 568019577 647083809 200619668 643845034 560976071 703250743 510424338 859133712 82252824 408248212 422092695 862679735 640943539 650174740 115442129 414015198 329253779 931564231 670386606 827127040 933236041 984399135 204667918 949618512 879861119 941797612 842026419 853550495 740230694 751846073 118437348 286669352 203701722 353680897 658176752 941465109 261431075 895052636 458984267 742372399 99365736 976061610 529985405 615813389 376389343 827330131 548944051 825923424 917580867 937866002 478279582 729987925 27824685 651930005 48818661 400905137 777619830 947937114 470696112 530033391 517529046 646113753 203766242 319174856 591156230 638877551 471073948 618903993 71057676 427011964 678688246 823103544 138748319 775624609 450568645 950183553 875545315 914997229 956506684 992515198 30995863 896026314 339336560 467068637 58317321 275200117 919904294 976346985 535550136 725488842 75389646 681060770 159934000 220431885 991724894 997659926 526976408 759312553 438156333 810436916 885795203 958825346 39899398 834093926 910985482 935627372 583286310 931553447 442778527 571926872 600364599 996987092 494041287 743442599 609312305 661359184 873093119 965982919 196354879 655721873 746792253 985060350 73564316 931095451 328101423 772620851 146797859 567917081 943028106 994623667 118268106 750187944 115141023 929773921 57762635 991276280 130782629 846365399 113192530 347961076 943763408 981847677 567351389 815106796 511339587 793625813 414758019 792762347 54638492 609390106 576605180 736769785 486428856 913711979 941292455 952587233 441923573 954102292 822687706 839552025 693864414 704054556 685011465 802937383 255547202 258205069 29988676 116566072 7326288 611640099 77208624 275094776 111999963 830329677 150344496 650985992 506481759 764150643 305924116 521279817 760510088 791080866 150621801 797486462 380270514 519450673 299478477 983858277 941180705 984907094 546964856 626584396 647472862 862202324 310225873 938197027 362513703 966592391 999287690 999412402 255148072 460342350 790612803 803257795 2106952 516284345 793738527 833868747 633285234 719600424 304664163 630836643 27641596 99941590 200668948 294630456 532979251 729572122 748475842 811547979 2530948 44664471 973821577 990339708 41156235 480231270 122953856 723133870 895062150 921432474 656542399 986977949 357009122 382418135 728052335 859124996 970391833 996163509 861260385 900018798 535633414 926295683 403091886 463515164 442234977 952970326 13753951 456978845 682940493 910774791 246661111 628396913 220061580 446067543 375957527 649967840 717625824 816877893 950106384 971827124 124522708 851498332 755991516 989120022 274161410 524374629 518096041 701667234 502766129 679872751 371187252 750465747 530203918 740182609 699045413 820624028 902394361 948181718 784265122 851832577 301277700 593698437 272351888 760137390 689200511 844954469 105666633 840052245 60005210 523828145 985346706 988855636 843618118 896162673 775268706 978196019 938378034 947784470 585329827 704129389 628994663 805006731 229841781 629250901 735480761 899058392 413300278 760820198 575117263 919089447 456957013 817817643 174404173 574500355 736016951 761443717 390760203 862505725 738602122 858030757 897132499 915829655 496679957 633239847 530190615 662009752 827436420 925548066 970875914 977499267 257514927 575087439 718032897 914963410 155579449 578609662 209308716 323134040 808543162 883744887 613301848 653473280 643139431 896289268 601392289 953278389 826614191 985831342 928799608 967473090 372819982 651323362 887615794 946335711 631279919 775306285 135698764 382836278 863470712 952576341 802798484 917199733 194850579 670206677 592526015 826939161 234201129 359222285 132298369 368479090 401728991 578511019 944953329 947297932 92860009 460605004 524172910 689313493 926987346 948007145 748657842 782475712 847601433 900252063 14516597 238601780 654168144 811015693 550735955 659985176 946225608 997933981 570391555 897141371 96810914 398590192 874784486 936664969 193796061 732550038 334110295 979166975 603941120 886875265 829701583 913244613 860343038 960476236 60237107 881259414 85926730 900396383 971311590 979455559 101337274 708191576 326233442 845866751 570930162 920696361 26042904 452234124 981838599 986534269 941145865 991842288 241828829 808053975 294606381 444859331 970551140 975580270 918450981 985839803 920015978 987856008 715116590 870606373 76873081 878564942 297811908 445090066 640141489 712328132 225345995 424378439 254145645 501070788 305920289 919394283 430355928 968099847 63638556 599432102 737696831 895438928 577227274 782255842 77193783 221092562 896996102 958518226 29930799 830431508 562458926 907828558 936409977 963473379 256363622 321865582 314954143 482808072 297384346 993454283 314142636 688956308 738031611 880837661 250635261 381473057 333063189 403674017 480148482 488985101 407414539 887907923 109142390 248619035 516727889 972403552 771739164 882186047 141170678 581572085 177914309 364167126 94829975 214717661 989408820 994674348 719537896 982543424 854464654 896639453 917508715 979245092 699571333 862111091 243507686 483764747 229238740 786326265 535754823 731197918 255107150 506443327 832011197 852775598 172788977 880657030 781561242 810773977 666518411 931802569 857559354 935360529 526349871 672836007 637404290 982872512 385937648 424201474 329333467 952263664 232489630 618046686 557005610 701984320 189525058 879421660 897121447 985126185 572079478 769534896 492036363 907025758 436386435 949612416 566290252 613247988 151098909 499230148 240035179 356071062 313959553 614207434 490356882 918087956 527687330 875934909 555479230 994555222 360584041 545513567 500226135 721150747 993290534 995304134 836912746 943199139 93977963 450044586 848882930 925026039 844796513 918648225 399847284 732960969 430179406 547173164 706441281 733103908 721116590 762007631 718987615 839085843 790835435 870101638 981311040 985295167 392306637 798509686 328339865 910288612 622232944 638430177 561124904 714240623 36393771 481981705 490015112 619493482 540962121 681018992 332470043 411927679 619838128 811921240 130437318 853340358 221504267 854709794 655437036 828439645 546907654 800138413 236681359 609943798 769530326 922172421 801512671 871202917 257947981 736963308 257386072 323041394 340107407 869667364 569824733 929918456 542939147 853886061 896672072 964237553 510965095 966252961 573824392 993134939 504187371 626346272 185455768 957457600 136312307 814648781 317130632 985869075 1377348 291095774 965018473 980493264 468371029 715113440 87381654 387065156 816861885 925165071 78146815 928719062 883532880 994775609 435260361 815179433 387545932 892640226 552401146 668291014 997903839 998119179 1695481 130500565 846823331 942739118 623214272 655336105 575749408 630185271 304135869 989368676 463830865 474653210 231060756 849096211 710392117 777818223 41209844 841066193 428005887 792328453 172607666 514134079 897265350 983336225 212788887 484691446 205034399 862809225 690764304 837584001 373957443 828921394 112455991 556322985 760681387 916844871 147453249 782920569 199730653 807664821 645004243 794911895 735341885 926531990 762529016 863123895 970754077 981197825 914407844 980557375 739704542 943776067 60415400 855909952 663071049 707950755 456688328 477295930 171600672 633368054 602962501 731327476 891754650 915205877 93457388 957870247 535713557 551157431 12646798 759096079 963278743 970106879 870394160 993670372 418877925 583567942 880382969 895730682 348412997 763889149 692597446 974524482 631454089 750749087 3670380 502697035 394411356 519343588 523503445 682485273 934541914 976152341 730999059 731802289 91206384 373268802 243645373 769396192 408479785 777895698 784938939 806593192 88861571 348984198 738080211 903873983 508516225 563763143 60764609 111757005 494731413 627128792 329527678 997097746 972727016 977312300 612872814 683424702 407949019 643082118 364078514 637781939 610802409 730572352 558443186 671270939 724959209 943438343 883725447 992330452 546289965 948078069 493541551 717022259 690182701 748905886 823467549 925007622 902117682 932638924 787687129 816970391 352330884 444550262 813698748 824787479 124679856 967123468 98443096 819729064 286226077 763776194 953730501 982144822 349244993 384843166 286371141 560654528 356823483 923543335 724731053 769767293 950876197 988630650 353303942 900223213 486006831 658255571 94886969 691270924 327758190 945631213 88499400 814885542 401908813 469989895 628121368 935969691 487976647 907790287 673551762 692052474 842810588 873454864 911959068 931876926 375279948 421998566 293694377 513487121 384254782 463711116 465984415 880824676 635433345 842176417 492227215 965589658 919630267 976545841 734456054 986357915 279286165 656031681 751039769 996569342 700633034 835266665 459673717 673362034 4415445 505264053 656600508 908481710 185937099 522556107 28044168 828881243 720992556 837385559 672032747 928804334 460485094 476678229 45821386 110007610 529047761 654349106 349575502 447064549 994844604 996083915 598794062 850851749 597969917 971480970 98072738 183989222 548234341 789113210 571193187 673366677 182866641 620795308 380096299 823962124 337649923 731542208 797545802 961311972 987324190 992897120 623431299 899812982 593330094 661743611 345489733 542016854 226115054 532302677 289446572 724437769 720658516 728213902 100348833 922318666 300372096 518450535 939803104 942912582 537871516 996779833 981829897 997700385 931594173 962639643 862937137 985618584 140019053 755511449 780823706 996088036 211933042 606906162 484914539 543589323 287056205 942931576 336390609 675802132 200152312 321743447 538926868 876755750 974761700 979271942 963675654 982002569 632992799 921910246 573702441 747306674 984102177 989820798 706753975 815464664 293168411 327059036 793360809 875126633 387303382 420277897 728469091 894540577 159663057 663871691 601275947 650530576 337171536 620088867 716323391 978907324 341734096 995645900 81312243 988490429 776320450 871381132 48071195 754856493 759196310 767169670 577419277 693077707 602767271 748146389 453055894 909855073 540973062 812050568 711627076 854325003 336509680 460332379 207951910 433224379 303199658 728978641 167058639 929620045 263598373 864965770 2843218 138322623 560535073 640887386 389087846 688531673 421855705 977257849 136563173 924009310 493520598 775297197 151338119 278840654 139091415 923705626 34086453 900977462 717278520 850470706 608897961 873168093 126022118 658133150 840405786 854208733 330820550 634548697 122668844 686825061 521324121 524237516 777118449 828223239 868831533 986628252 263594654 549576629 311388500 456007727 810416251 954664277 748833708 930173253 425175365 896337170 69735745 543100028 98373160 900518593 780281737 841548516 961793256 994281904 318283924 372337403 983709728 991072085 167322602 170332899 640151961 826664362 3601420 849125133 915302002 949160573 86539069 604941661 397661630 944800857 178154085 564908615 244714204 528578097 605857899 794301498 434428767 791230345 44940242 739127156 520663335 862403427 52470617 719425297 661472303 819223555 516861643 901771251 94016666 851923414 867024247 959679076 963551307 979785233 481644640 486410067 809045648 980873424 798360956 986449941 93210381 939136057 904464902 953303461 708071798 748168173 268856037 359005908 988668101 995195568 418606300 523747919 106489027 679730574 204073430 640783673 971983287 981160570 77596274 660222261 43636550 162493325 280368523 779233923 307283167 547818101 760088677 801779049 955331055 981361084 871818909 945537448 952477536 984464748 484656789 992097529 260249524 643448400 140582771 763393846 433024840 908669570 18405544 339626357 602337167 669722301 739106273 900286172 975322482 985918202 71251858 883234006 571786299 735884257 582326112 772648580 97098050 907429109 758021585 903806880 524152861 757201323 192674304 897633225 769065106 801597620 782983442 958943672 800189769 959649532 915982917 985937254 791254137 950635960 689055910 935570660 378794416 595251080 314567817 627927355 263842599 429478594 156913389 220867330 774666955 937455562 658031693 890762500 170950845 385108446 64185960 337802353 361274091 626228081 829895870 854225075 437771572 880349091 629871960 992844765 284798939 452355406 281086561 418791561 992792077 996365154 403082191 553553890 534988332 858138228 404580341 558103054 156779602 838034899 340616507 649588996 64838156 111679790 973858659 982422990 616522508 742720765 499652295 904672356 577715113 962940646 686406234 944548179 51932517 506319163 243176382 693869193 126148765 531945774 410998308 810877585 253672997 915893638 25360501 378339895 161208150 377087111 657734240 768861704 68169434 74204677 109585287 769030725 70935620 409936717 550927347 787262036 781071520 857852357 590101835 759399993 822095942 885229620 975485467 991521977 219761055 275627637 722404805 746521653 637479084 982829382 909609996 931750089 122798139 324572401 680010266 867995449 66941170 798638639 781079620 810165620 614445277 813862392 108554 96842671 605628280 728460651 113282268 326803898 635724036 925607503 884833803 960169763 133006991 279677783 434216862 693033177 193105258 341971907 900463480 968724870 976076721 995387327 353949212 648092913 658097869 848621138 102382799 211248220 907608526 926282464 464084484 591268058 233077732 468765922 217427874 837435702 713321413 857354148 725520160 891168632 633351192 884352705 179224199 820731598 317188644 944968025 40560210 596262923 919028969 963089192 956902938 989160057 612751291 869412699 920553792 937449071 193177744 532045306 919424602 949725617 142608953 710022527 423395555 497752387 400954553 771645511 588847896 972962593 744810132 975335303 295477264 682974645 8714678 68950714 598660610 702857368 265297517 277035380 679381346 679563289 577790894 753298198 287528083 917104543 742418180 764412722 418537298 441168611 951818558 985037400 885569485 959903244 681722104 806906420 993869340 999239998 241908553 713287342 83993387 443683130 458098214 993507594 863118298 997498327 689013893 873581895 892892204 918039015 855914923 909376461 619056647 718732753 132299646 138969210 333927781 674930699 309713143 711853107 491661711 569632446 35774936 60865478 343261088 418579709 370739089 623176760 883198097 954958638 175041522 546045796 78624556 716193565 895105695 999896530 495612453 778930917 836432694 845506086 577613229 699961816 200874395 746810470 342834140 836796644 604516465 853299245 91488758 988041860 412356764 994539547 230498510 430695251 380282169 915340616 62102667 988514713 105621151 367265977 489035700 519390611 903662398 961568171 357942456 780779971 521857563 841463489 758798080 984750909 18861730 171946610 311755579 382008068 838628632 896282517 93193989 891409536 379391726 915167711 878605340 999987601 395357487 496897356 486952543 899536484 111423209 822550264 206755443 801661501 696290441 946259738 951608499 952103674 546820605 701992689 431749763 488189370 891972437 996397895 754601308 958649223 890015134 923901505 670116129 874833160 349022368 730289662 419253546 924085186 917956856 989478048 778085867 848646974 741280706 989606587 957020011 961122890 823347866 915268655 838613248 862364900 412092075 724951928 711973407 913290742 424243589 763455100 606690476 921680868 857752232 893223250 157888963 659617371 167048768 232098066 173909362 493362527 913336662 941404941 657206614 976618408 544670321 691156021 48261665 650841470 263248147 706239477 309662716 606488085 981355948 996047203 960040024 975967221 845304192 957199136 490248478 507632824 669380153 872284146 706592896 972229151 50188906 228337227 182243200 266973480 429149290 686468529 260097508 439870916 459733591 966948725 125920179 191098694 511369724 535513171 830291135 937595728 159853927 504887531 420226200 707674105 647127517 731814703 392472277 764903893 26398692 189858131 351143988 484542890 578402837 743139563 857499654 880415899 530844376 699983893 249858145 977939291 759603567 847859805 983191404 997602499 363549740 981341118 552705852 594131614 154466695 478128685 95024173 188972774 445265533 812969679 131233656 322432070 854152700 890854607 12055781 15345584 875502391 950186443 85910078 200780491 677053954 937814032 408215137 911915990 952253268 994832016 353530060 841112184 560365761 683445783 668020454 704158672 721313045 895961973 116492016 541632812 787787024 941367882 815621783 860425496 353365577 421456294 728984759 948046202 326833987 781595322 285970131 960000069 25824573 202970919 717181112 887429084 522482833 738820493 925319016 951615361 538452597 631075147 109233753 211356807 45547367 886051974 863590650 899982837 979744766 980040367 557160630 971445277 366581022 930472941 990625949 999738087 904977243 921746548 112069523 982352336 618964050 969974773 374638568 660618146 37101786 453678414 969565341 984929229 363114956 641666204 601106543 619000876 962794278 996775850 287138109 505808421 286490896 980079542 757523398 894877021 197632797 778413716 715979941 779870700 588034583 645936641 859852205 913081167 86338591 154879684 842724023 884422879 231635263 562980901 935261479 936336485 562421312 618525783 431687877 560437090 269244765 748868165 605957552 833057575 980191316 986349212 978146965 997996916 509533785 975391707 169051209 171731385 483562052 937301536 708882651 988711526 502176662 722173046 681413976 938808737 92504628 258632590 803246968 978026934 699087210 739532190 336436361 749201999 675962215 904361057 573549313 653529427 505649630 605729402 326654907 596993270 592714324 682170393 708703582 720244516 114987017 840777679 791794125 829569455 709531781 890779209 232539083 511120809 65460782 156864155 630034912 690035888 910526309 990079589 248979016 928675034 850664118 922918649 663778785 913023419 416970401 916482000 303442664 970148720 476254940 848818983 785098200 789318339 206478442 682753083 145931227 760214902 351671517 359743635 908620474 969268052 301622559 762660813 889045185 958974521 995415285 997052085 79397017 390915376 587101600 656728392 165893522 419939106 793643772 945933398 776127830 904643166 872092855 891904617 50882520 844764924 205257197 630877682 494424407 850715530 350459100 497569146 717027747 918404369 104703117 852696178 862443680 959311698 181279476 251667724 584166877 879306185 663421445 977778705 68184450 71629510 918821925 981001287 194754878 214974999 353927167 983216357 879984217 956896562 185463328 894376219 502146663 765219285 130751656 699694005 666659937 849143842 21262878 440060593 200265470 428890714 895088620 922207086 374954870 984532466 768673233 812547876 390905118 609497132 529941942 702762654 186257204 517845651 330786852 538767409 516212312 727842302 717098924 950803353 135509732 726727241 297229032 965941924 410755480 911332669 621738316 915994462 658697149 992175290 237962547 628455146 572328986 830865780 997537200 998505938 317073851 822841468 243303894 281284318 350260197 671673626 909157516 982264027 930158252 954775120 258408864 962773122 257048737 471480042 468846105 550296523 638272920 667316191 91264572 817729827 643801946 894461724 621842011 848257617 375097713 536538431 135694728 453383829 749562832 755042312 205128044 890808296 152793957 175951836 937413773 992472139 669627201 816527711 990456094 996804989 343523099 405207798 729321157 968397506 746399459 958728221 576087989 894367200 395771527 398771425 898095176 953499631 418410244 507683181 368688692 418951791 988976575 998343064 1058205 389242843 873615102 930696326 130853057 532763416 699011187 789565974 942439646 962982248 632364633 853019154 624856993 732665002 697595099 891990825 844436820 926560974 207723596 716177590 501559142 561871107 689620337 782544769 588914042 632218826 787077438 935423146 259586116 632292014 738833018 967175757 628664622 830025553 907969521 968219135 212221305 912740327 988051721 988977976 526186612 800331510 794535428 844913539 872386322 896330914 437695579 500855797 23708039 345730926 711012723 846091011 390864931 621384280 746719807 775723443 238747240 549482849 361326200 983121265 502761585 754233775 505839462 587737653 930912848 984507969 319672077 592541346 308992479 397765731 864779188 979563171 927995814 949723707 524491163 903544493 946136313 993855629 322335236 494546835 294133586 722565803 299671320 674598842 140942924 764873665 525674412 628147027 944266106 998133317 99457387 507342842 50148342 404746911 63001066 174706348 147947636 356612017 65713862 409183135 391784040 446047761 805179169 920517060 910982878 927331352 767239105 918500180 238438844 503315583 303571561 346337626 929742388 953942179 783178267 964783062 761762215 918818288 318265082 531470441 679368488 762300377 636198010 804500566 110402897 317939696 113814988 263518428 375330705 380333826 390727356 710480405 781189758 801878874 375806257 554413624 602857609 904336541 583033180 976667000 543297241 871137844 454879312 691241349 211006602 689793646 641010382 704714176 859999846 925585084 234604209 871072518 771258947 866670457 34707291 133196227 78152017 932185598 237742201 692561216 65944696 352692015 881526737 992822526 916890298 954509249 839162267 861997393 608021586 834677171 570912910 711551382 478618966 496557854 79997663 463616706 180693476 948720724 877496935 986404139 942630241 987402397 515116094 619366978 435874785 973543329 746290871 976233550 693524348 816247037 383348916 667483852 680271586 943367249 586270315 720822430 282662681 416727817 20329371 582958425 282417161 409275086 357346746 560053167 235006784 550764655 702510735 702548925 771100404 950827147 775014261 868213328 631439546 862661755 843693128 960371991 827746755 910510406 139364973 941111980 438414172 959669016 131889560 805319127 717911608 772433897 24154566 541821858 667131563 939133626 860489948 875260105 92455463 601123960 942737330 978432209 112662382 760505430 197133151 409953421 748197880 803017209 992307024 994589151 614087332 888212550 939414636 944832698 275051179 833916652 209348606 476393388 698551116 869812815 776632278 903507894 955694073 987904318 23554569 893925481 63458170 518932253 575561775 984715900 926919559 988271243 273301429 788222426 150221723 683640636 343249474 963823464 990228171 996222727 637353202 700920431 252302762 982114430 461376747 573839815 543383565 629418144 61743363 386155973 377938266 906515215 835290534 841690940 495488418 679209955 744762773 923798473 866140155 886179267 582075602 596473207 846252835 934011334 86697419 356997474 758319514 945608699 184027620 702134426 337335164 584258648 441086963 511971817 3412277 584010741 112545426 299998701 927122676 988483577 733387212 794138196 360519622 777132639 780509935 845941692 918966347 942062971 804288274 993986526 313642241 531966725 141298851 218821612 989603127 996096802 723539709 752998156 147532835 874793171 867573662 887789870 835838601 866153389 870181591 930385464 594665120 673929742 694060546 762871074 105840384 337147845 376503529 797677156 779235707 956935654 978362912 999389475 368112325 443850298 579463570 687673601 39170424 368805142 672017163 686357575 18115420 320633017 37365020 590407394 146527038 497258501 472414212 802102397 99476751 475134965 370783651 390727302 845240366 905571827 979475142 988070449 491692202 791285316 367621037 893368893 616346357 757877092 911179194 946415889 965019006 986843680 146583131 978246890 212280443 413638262 499948099 801740018 681441487 993225309 555232042 739809413 772324327 990838463 540430500 940797674 229077176 524229297 967099135 976752747 113044844 467974962 924088424 994446438 448429987 507904067 854280518 870931639 801107640 858860754 332309628 914724768 964115531 980652595 540046677 704345925 703525716 987407373 534747271 901036246 239410969 506653661 100389784 310087035 671793574 708986610 92640512 379841203 699019796 904535977 863604895 915517399 64529821 583346262 221558687 330406862 262690242 665193338 391201264 647290443 497691943 653706027 175730285 594938029 749843503 833635446 389934055 592290965 62153088 841703466 519039552 740010029 521940220 819175589 709549539 726896845 739692104 790289334 229885392 843846861 646791810 920561557 763992505 933913988 941691050 985809269 155133584 654969648 99818987 453409761 747677887 781162982 119465571 926569377 937517097 993122340 140339250 579121544 948491917 979621005 301489947 719947984 887058829 896689354 302938246 977032389 348145869 822830085 887380133 942328274 805334811 969722316 97941247 684986592 619622698 800091110 638562939 724189507 137207759 924359833 775534830 936184485 600088250 670656336 976420376 989355929 391626477 829235206 426503111 860442318 492533937 500197337 244714312 318635088 599037801 648737128 485034442 951127066 619852714 929677265 580808060 872763051 998962605 999299750 645176222 946013402 889838026 966259106 665654455 982767319 105149630 259244773 870697422 875814392 247839241 827963746 324099585 462357321 960333675 964160177 206396811 562740584 537378888 671986912 910730582 951649464 965655840 982870126 460195384 495787720 856380907 984853220 291471066 942145620 649270775 704731559 843025676 851966643 574479017 979480622 934013380 975428245 168943863 456827532 717085435 848065144 559409629 885644538 322543545 378011923 174452239 537449195 46615227 981715787 917660800 951821895 744355356 764288678 472301545 586193143 922363681 934793879 35535929 679258452 309819996 782325051 91685057 128392598 667119870 896943065 491463830 681442812 774577063 875177044 688985401 997351373 498638543 641109914 46465993 386325390 657831562 956194330 950061409 965630040 835340263 983347532 399257112 604521932 46921283 323582942 209384300 543747283 91760294 700530782 317185515 544101719 382518144 473906400 633488467 912873765 286576658 934990063 254399261 987336602 841069991 988974086 57040211 539893757 261028192 539325795 918382791 947301755 473484690 882380546 103596859 977004897 568027102 971814362 515941979 734726059 669569838 968183288 845894444 953777580 85208018 514348116 828369906 900329020 909455040 972453312 890886265 927069878 295131569 727029871 497438169 839671497 438638444 613790296 558805040 719497744 719414211 846319088 201127481 921811332 523855455 942484864 748627829 855162763 116518364 740788200 396898445 508143152 65158476 190930156 436791070 595242017 292527270 606306037 707913967 726462915 649347282 923277878 133070962 274022165 774436945 913163473 921940559 988926904 196864387 402032491 353916581 524282137 375997016 763938448 776282282 916199425 446727484 719665061 151739375 271925077 571125078 935232261 789955628 963046345 331072773 425046063 280331489 873623203 684476842 698391511 474490764 508783858 331862050 627844332 954981487 980687048 864634857 900917779 546518591 813987922 411217167 509167590 38009064 704597630 575587341 624853448 999468202 999956568 852706913 903452817 968663071 999931620 932057276 960692014 214068755 274672974 146406513 469606380 807792867 834882430 474649594 484291293 783948010 836767040 80110932 771743380 207637497 816215398 851447203 956022472 879310131 983298368 159932410 397079830 228705612 245151718 942143547 951070183 452352858 777379425 748056989 894858026 904321437 910666928 291012652 417510524 84321121 692390276 435021893 607603673 119663994 408638607 795451401 833570144 513066937 564154277 594304332 864223558 640600678 710665558 469888994 672179462 201819308 326688458 639621024 653159128 238093081 413807150 15766324 635519450 59438663 910551130 949481329 971583593 795651891 823395229 664921749 700163002 17642418 144813453 784373252 928526549 782979863 784251380 884486447 893107144 951173342 972621948 31021955 471988623 423348440 449300623 796022081 824993378 314000921 933789757 312605176 438629603 51409893 835950381 979978481 981404141 506364445 694395276 257419495 495291586 242617685 878541516 348177181 588535957 467799406 832878695 724976145 841187481 973354296 989603020 503263679 887148915 780041721 913900964 279851016 904902770 850840569 991525781 798833528 866895759 970153499 978825188 447159415 952901333 403650239 975198841 7517100 359177189 110525698 799135525 979707942 984333941 690581204 738609153 252886383 657579049 677804179 907302004 112997673 486236533 467340168 594988961 630565837 866946404 885032958 992349160 701078714 930962713 889189057 952808259 957299428 987348207 279690460 813088554 356442395 953983873 635989450 950150485 926656148 932162318 263252640 858396515 22976470 169222483 704422306 986821034 442247075 969784566 399861460 517822122 82822122 322745381 872007153 964362385 362440099 373967936 675191734 931859406 542558471 774798034 535500702 992715327 402596695 482255089 649991651 995820488 404927128 834629130 607318433 652519181 685295374 974072852 675276614 838271638 172647972 276849976 249363179 722001561 554304555 837111874 161118302 684646719 305306469 989626833 489491163 935955867 260610040 589136169 201072070 214700151 236007795 413073145 422368627 998983941 866664246 912838307 332051282 616635528 140549569 193681758 393763594 940010183 266869396 550444951 477737951 521379286 507149745 704631224 884438297 945279219 528546153 554803063 352890842 466091812 593013193 691456266 33527125 529832057 153021214 935041778 771303948 822332444 198666056 997318059 447313936 651840507 737389148 917047601 308945190 925294003 359754953 986079562 160576340 649987206 496763477 536695255 976679379 992598982 938401166 942470260 335633132 906834298 614699451 870750929 844929398 952627079 271416883 864863619 750167089 937127855 289777751 516059181 502850982 624698433 35686157 37299233 236307848 487370862 861788193 992727870 562165960 718456336 736654721 927457556 889939820 895377027 77212752 252811694 21578669 808968875 634003090 881402712 81164497 892094369 191825663 202516812 405053362 660912742 40935714 114382329 286008394 301619069 434071798 927423636 901806168 938378214 247822139 844856454 640556595 798446789 385274224 611965005 556312711 746470640 801450136 960513555 450765154 895105892 244088083 699144524 86473255 165515698 413473382 456902652 853120369 991665491 582041645 853758223 775345496 962055601 469946746 513989199 600830047 987431960 77748823 916322344 93846577 517568521 771026620 810349214 519189944 583750533 391738895 508528895 521019328 676280371 308191042 925181965 350679377 598155550 997944762 998952427 408044783 950303772 683041560 697498075 768627363 821468151 662254679 971542051 645136992 819052461 492588986 886337313 813202754 999252845 60932123 332646462 230361174 451737532 763431755 969988316 330428686 782364124 684845626 891552942 681037770 978781178 700646639 840872047 149847099 185976612 120068905 647500425 783234899 842909632 313128548 406655010 252704567 721437808 351916961 417975874 927767775 945131645 984529336 996857236 654210303 817744759 32735826 884687298 811081137 968004094 344222604 863088210 239146262 560353748 596601285 942256770 454370585 801802769 606732892 977838920 461310946 998056778 695630306 799279700 582895874 814757515 212360202 893321329 999014608 999841463 448366390 594581739 462976559 547427822 921458967 988381694 795640344 878876206 961200691 998648192 403463958 707135498 903095350 969844632 429634577 857200813 75225647 850561940 440456648 739001327 981342594 997412537 533614691 656841057 878012300 892447018 578513427 753223260 255304055 351629026 875093244 988010633 500585799 931448816 732763589 920113924 588320163 831886408 932167543 985734417 194500983 448976821 694348869 917899007 418274365 470252790 354052552 544164694 348027361 757131762 101675779 415530244 840188094 967184303 621078695 724627366 976543941 998329255 729292127 929990924 882908621 927549680 424631608 800128825 342248636 463945203 530462306 997696600 628339040 651230060 628355453 790002135 276076520 553726944 359062433 364012522 555707908 718122104 430989044 724576845 747405180 802044055 482628170 774222213 385745720 702012199 786005955 969512263 492412161 746492277 824163539 850380460 767960655 781149718 415000637 944644393 129496804 942235054 500682044 893052910 132875163 777577991 638647811 694167140 633700002 794686900 262949317 811093965 153090677 972077683 636939990 746673331 878275425 990011563 853047796 876054030 559014947 564307537 224644735 468377805 59048805 706787054 427656068 632902160 482740531 868755994 419112972 600463774 903583555 938421613 340767934 374296813 628693062 744271640 281290205 309479854 984265686 993436993 669276006 824197102 128918869 203044171 625775361 914826877 575736146 952582587 589699339 987650548 271445929 905395173 20635792 784969203 231403922 742004564 960709467 974102180 463688534 686465861 510220043 955974959 972202684 977029543 97787054 748556445 295789319 361843792 426599414 825257227 909271878 939916431 474405707 524782772 588557100 776491233 570976744 604123394 47004067 484162067 437716394 743658701 818396843 941617980 866159087 919091378 673438196 816775288 563518592 797925606 792482390 992919950 519005248 822916834 141829912 883276481 511703240 841487486 740433417 769856970 865565836 963375794 770369980 829737455 78244593 478815261 567119718 691177462 557024660 978879188 995016735 996223812 799324010 925440767 18605692 462940812 253925679 380884632 388540392 536660824 326211106 542559921 957644208 970695138 546636433 604831973 387522616 862684817 969111521 974812966 93078409 259722669 853755027 948280577 622917455 765146557 635147825 780000457 175564315 751782417 340426974 578558186 682934150 742014279 583952074 812526863 789321719 953153650 966537093 967989726 231283411 502546158 919525141 944943351 150723362 670569286 569245032 949732457 330759375 832898029 780399495 899604339 188598413 763355654 833058208 922083006 184474868 379777432 408432538 809958465 231403563 485184661 978033179 993258301 495863941 584022914 716046501 948520245 50694786 160176067 108742450 485169088 21414360 488997896 344242678 518519519 319272242 509366970 437310755 808335739 345819942 453205852 388986640 581625942 317917447 387751429 120981248 853400771 554298673 868591958 111705812 733161381 983613712 995405923 299329367 725735681 20893849 260485576 517285026 628409791 628505056 819647452 662035553 747162087 52083109 595551566 23824776 555457685 848075971 870528944 708312817 995010517 757535309 801699724 456304407 902744029 634308641 826685657 544573306 978305527 892174976 967425648 468273082 792468929 836405226 839893499 53805397 110939384 214009597 716163768 814616461 944411153 223903632 504332389 298758420 817520000 100876922 203582378 316139596 340172800 260874834 651861272 227611559 452177466 72287455 385134626 412861627 728720533 709921766 894532708 457407139 933329144 260992569 594336265 110246496 914278280 596584901 811270381 860426920 895148630 213579647 444605840 994597059 996528786 544579597 896380957 455203839 902876556 187396652 841032412 533072827 799082949 651683028 886623521 71206159 645185060 110493680 919884808 963115067 982757304 463874740 993139296 67281733 397995572 485342408 672241930 239024927 515026296 161243050 543275558 72382475 574547710 317679718 469908661 130817341 251753261 997729043 999694698 34242320 816493205 414731853 703769661 613005229 813427161 778093754 908949724 969842472 980049145 550045448 590912308 824826591 891114361 480408348 757754546 300424798 549383584 373520329 419980369 994998656 996697225 384585284 533064049 865369370 900955883 290086501 775448599 225836303 545945693 836315383 871129440 24522467 827753095 569395493 897804888 260467803 602260432 935830876 957280378 780056148 836993504 632244311 973607203 838170604 868394913 719950067 787031831 997851445 999215463 46322282 927409809 798151659 835964321 289310815 424971226 463252281 637390044 881590478 896491988 80373139 198629958 150180643 462171936 26222254 797789443 759496761 886447431 931409583 941810290 959334487 998126229 918116519 980073505 370994521 384409411 178480882 482190022 765926099 969459911 420904589 441273160 294786561 645617222 18503004 873943274 188329397 300447101 207018427 536265495 515536970 929873341 955654788 969990209 150606785 525927443 230648242 342668819 877377301 893084808 248600691 698049980 545712016 862639256 526725472 580956497 46243666 159492405 232059120 337202083 574790999 743710071 775566258 783741825 103020011 667442173 788363122 941227701 71766762 885527342 911335576 956013177 486080783 537237657 468956974 915521922 175015152 949761663 463095401 840388404 674132726 767606529 635173736 759725524 596278651 645263342 741147064 948410987 114638271 415631952 205478645 280035224 566998361 906861748 865053011 872263225 281117491 298641367 898246472 946463029 382490977 406146117 560960958 786778921 150343499 230301721 920831157 984419180 885222168 898244475 566383180 661255209 272993081 560045094 608365862 765773982 228271348 392315288 502268608 613337219 575122931 664661699 145145220 446588886 153398015 978623945 313264544 410912158 328063684 392308469 863526082 901244194 966126047 976753690 999285736 999738576 596478335 871036203 256208750 901260992 912536816 918054164 225451020 680008657 925887949 993327728 963595543 998056990 130737439 426873824 721681194 804653478 59058698 374432327 61412554 962014694 860539831 962125857 728333396 737279872 971209760 997737593 559909454 977276331 752242666 907203827 117122081 905452217 748122496 786508998 937966888 979741877 727898010 878210098 337656743 674747057 904602870 965090835 380880648 817681783 369693558 417635794 839960658 970936287 173709724 966127313 160105295 864185597 811879145 907062771 406264251 412230644 477624062 937108440 855676171 904866678 18857194 368916182 945717824 953019391 708242081 823683718 986532872 994587502 343646147 443035020 603531910 826827205 961388901 973942239 110787835 231199055 122772003 672680449 214680299 458517804 783825136 790849178 798539565 976183750 144412572 627889954 85116864 235188555 875231572 937930063 494856848 919902782 247070483 691819241 195598148 298389592 233182613 909120604 87622566 928330083 958419244 984672035 943258289 973077061 189880531 643638162 153224805 548480871 439387099 796715978 212593875 658130648 865206223 906159092 979009665 983244485 525460482 618317378 704684174 902076948 86512196 122172914 798555081 810739463 275793863 832296717 204640220 947450241 155574922 186405065 183362367 806094815 223657185 242481149 886758164 924475737 302315407 954044601 201612055 749762563 965051925 975260051 329431533 532460065 652157493 859202629 311464678 593137913 533186325 798299550 483973132 763863621 607093799 828874201 818768975 996477018 327520030 913869958 437016645 700476316 31103087 84018586 733394420 915370677 839210210 857597237 715916258 785530179 363314259 826097100 599552469 747743598 615412329 773496286 387276667 828050111 220115016 693368300 346540318 661350550 11281107 620986402 807074354 811734015 427158353 490956199 222290105 959157737 934405307 982430272 940986318 947458746 56153019 984178899 959670267 966609338 937019458 940922830 389938286 391244251 73337119 761380542 558159899 597442675 411162137 633152575 846441699 879365994 312457078 584781216 739700738 812097034 294451432 548049700 518526773 767928181 439740579 933866850 833896898 989321511 883371729 883680470 399899700 409839509 33541473 889062945 462211773 738403276 314880428 481468260 726004099 956800575 990381194 995213823 351652659 586121941 303952831 538556723 883755180 952804208 640577343 720441141 993056624 996992932 665183484 884022304 250665726 762417244 768643775 950415314 580275416 788488752 414525462 632772133 207608160 903196388 161841935 940631112 646602915 719019510 650234880 964490607 249907600 297384646 305565021 920940325 703231736 741115247 480429474 815589853 906424114 928574799 790177888 909335445 251692447 344971073 872312546 918671351 129780648 427176764 436397987 582199104 460984411 772138372 184817865 202707614 143946000 826497211 663616409 848353996 176123983 468744828 507918898 662387337 415637263 906208571 520160134 826338754 838976903 900017917 220090665 571530551 43146014 110298736 816061453 876083027 957088574 973108127 825977996 913420926 995050315 999843621 301515125 428506635 712835494 717004725 952062443 986202962 760796904 922646607 16255743 833150952 431623220 581331027 359866312 574605414 670597194 950028295 442658199 634528602 270835363 467740539 207157815 861451348 665426947 755640250 850594343 865885729 252668268 392348501 206734843 807876246 734776011 792839803 433357092 518494560 24290421 329380156 820146506 928392838 827292517 982414206 611719306 943281594 194569123 495671544 489223257 921644968 312752266 557035755 286407018 972638033 79845040 336891804 575272402 785632969 151659019 598298639 884907582 967248820 731204776 802641437 999929156 999980590 423378364 512157624 792966371 952678728 173088846 607894062 234535987 581390541 82899184 183562030 135832321 387210824 279139246 912291961 842956972 845854197 323848445 755501735 922030511 976562854 171931995 940272239 880196499 975327148 131227451 762865440 902974063 953649438 127347305 828011402 674734186 806341513 269573694 276082003 542395178 750393891 915467041 999606363 3447945 424601972 493162368 772972379 341388477 476797116 250757865 630597778 658513921 751064520 387840243 685941481 145495777 438067204 285002809 538437244 316497406 903441740 511731712 814945331 68254281 183177035 609168651 659895896 404819332 868544072 858627847 890720344 891558917 997676884 669019764 757473197 132861546 930688687 807669909 979463279 99883529 684724402 844978119 882012743 747759492 873660718 847054947 927486822 346984040 887386254 153068854 536688700 348195506 467982201 869146567 973601363 989639165 991448968 624740177 892135358 589792498 894145993 466218744 660401035 332052944 399389851 737769435 751889045 696563741 938851439 222092263 508814097 752513301 841851535 522402276 889769551 926976463 972585929 474415116 866450970 512218698 810130420 757621492 764318570 787632591 993169789 612893549 969899931 800552314 810181618 285715097 496810858 534617073 571110797 298197438 475089994 97570164 334813351 672232038 762848128 198295453 396399774 260700791 360215667 399238471 722124321 225887673 459967799 659155322 971805344 853911230 896729985 263039060 764024404 950335790 973646247 208304138 877930738 532109366 985654635 194650800 279702127 204502554 936363969 938427525 973163204 286620441 397819646 145674639 836683633 348921168 661059133 869818656 999196837 746595815 765800771 183640431 744145223 130629332 159271166 364676446 418606886 473346100 503656743 456633560 617807934 91932206 168694245 414681206 489738693 873646206 972236818 62100293 265317231 453302056 659399268 638200342 759450536 449883855 959365125 616235342 733379447 209711496 686621876 615189081 745363241 720226022 756271841 416635371 615027729 420575221 539147175 270630943 462135229 245957355 325231434 7666325 871955215 998436706 998639383 426717784 633668543 883327913 997490711 86641738 548780638 993166614 997208272 59141867 276809055 902164247 937439515 52475951 517249543 13386739 826741019 247166268 929902507 353815502 850943738 24424949 718505785 397171523 889610688 216380846 956397942 623070324 675418710 371524153 632604718 801777187 821586307 911960886 958683047 313296738 367030158 15926212 885634226 583173436 971063304 855649616 904225088 124823135 185315323 135771715 456474788 287554373 872128050 580555058 660961898 170397773 531349592 782089961 960700272 122437614 968783450 108562891 406215157 309839000 449769729 500215530 587680444 594058591 993010856 657148642 872514414 499197863 707730784 681470460 691640191 970700424 993612345 502535278 544978876 274729941 858077161 867911535 869561865 37906181 618418956 270074960 528733288 369735223 507064178 979821226 984334597 992773110 998668781 522921743 595739240 800994939 876192347 693682194 750746859 3398139 706884955 799898176 800177058 551824321 830585291 759902591 940283437 660719476 730644661 421684784 564740754 918250587 978181341 765034789 887753658 792449547 946128808 475577158 554734470 469079061 894735104 852338883 978417723 222429805 503788746 867086968 893818891 164940321 423480655 64846528 530422921 734673495 829648154 804251158 948541725 778915619 992374844 655910747 793648064 785201052 826574260 224371943 457374150 808154598 842823589 641734229 858908666 503669934 982865509 428578061 556210005 231021009 283748482 852774741 911378992 274241346 943408281 372265673 751909322 517213353 538320911 279806946 608965678 45817388 985675576 118991824 483963774 779138416 895853480 385372913 847027680 770926600 960854780 267234738 326388493 708266319 746726150 789004364 850524677 665003500 946493297 467093495 761204494 451170159 501146426 450154501 501508638 909756412 961341960 672933332 819132595 810851443 850130465 391869089 791810271 382907913 673818192 991976874 998165321 81714737 710421963 525728362 886798905 187172091 698140887 431981981 983886523 129006158 368971329 686708342 989987024 908256458 919106901 359477850 706990593 437316953 493528787 335851209 690126024 312864362 988870587 589527473 851509420 609087383 760780284 764528507 839497349 729604337 810057851 790195318 978156297 192198441 787460051 775842886 858055537 721017895 827361691 393246367 831167203 150168004 958090974 515615882 768963832 685515927 702242547 526222879 715032574 260430406 585233417 277367648 516217854 917195049 962294926 920068998 925919525 134634388 809663926 278572449 504230178 235197357 738561888 254595541 752166836 566081135 784200152 806683096 977008195 506997377 981617918 812894124 884135210 277380452 298152166 136122320 227102464 309026494 532336243 347599971 543606635 180668196 249181051 429047278 804494518 553593628 785232237 344129647 669536473 280701762 456088262 139953578 715559774 170562984 510168530 437454523 509462667 999930042 999949283 421070515 708883583 470199490 938139671 904861154 988981586 206981105 344518419 714313470 944192657 181394835 798675180 149314045 651265440 986094237 992047196 49467870 348072194 486314960 786187258 199721215 792858191 848327704 991011912 581366967 702871957 845062235 912635596 507517374 785893579 20520698 130542343 845972773 850248993 333631283 883988088 623654633 751557903 512480351 974919646 683434492 910792956 307122110 830592379 797249532 886890399 101723843 221039841 457774848 798762305 603179858 880741875 396173251 639335972 613568350 966969086 825983371 835823718 812923857 957852000 4171839 617499283 581290332 920471605 461006286 898009782 425039595 751848710 122072489 406363335 896124418 956733728 934209490 965973229 628889724 946851388 999948268 999960926 950875945 997671408 523032834 696147719 772330922 960831695 729353548 989928226 88623794 986978672 984292010 994639585 975536037 982017196 423827851 973900183 223753441 829522961 994861895 995202837 414862771 976720517 333520895 882672503 90568815 236618821 87012899 198166414 473858158 602755968 772078766 836735292 640411302 979456537 236214560 669852562 50688453 84190125 162216473 516139648 189388446 811986709 275657723 690376670 92918342 806574134 959103637 969356062 813144877 883718930 391036089 405688703 991530002 992195827 571786573 579515766 458443558 656426503 205779323 234885066 312612851 782831161 400092757 969526827 642287196 819060204 459835555 932401409 695822303 777955810 735684403 951470029 874869615 955103329 645372192 661597336 176363253 851222519 997951808 999432299 108077545 297024922 304928791 526876261 180352163 340593334 58568928 226319475 308207658 682690686 134458533 924103393 714913238 970892987 802472374 999044925 613324624 771259360 182682298 265744673 816083730 909553669 439538558 635796490 487877281 627074417 553021260 898487431 906610911 985490505 317920538 749588064 180168870 969769595 918085718 927493921 280531619 324970918 332852862 358135537 864967158 911462194 223377996 551227621 736147775 830086971 796346165 945323798 645531835 877589834 190424460 222242270 520320089 714511548 815922698 992604081 399654906 695282743 98011280 801681642 22701030 618365446 37018459 624655438 33403827 438597862 937995331 975184135 916068379 960609480 455714626 587631148 172843312 772888114 363623184 956953665 711932331 946985680 645086125 748743709 883000651 973105473 372373352 515858173 136618624 870941575 321774273 883872236 897164650 927157807 195910649 747160262 899621621 909316541 431937839 740173412 433172828 907956526 517591896 811560430 600326854 816622910 823282201 892342479 388883271 815027590 543194659 947598825 623060763 626183132 982482524 993490391 25377127 51519971 560186706 805746523 698142403 854075114 173990681 345804806 463763091 947803425 877815924 998590806 569439178 605845664 795776852 841482677 263160101 817243550 461825571 922726870 625351997 646770650 495053011 861913688 642789593 907712037 965665195 980748826 633449077 798168776 554959308 785935514 862842075 985709709 480370219 861426239 504269025 741610476 792335810 892743314 122026499 187288449 86503137 352086514 189421300 526191680 115774224 725426811 891793878 899845846 416250641 922016358 182119789 398494354 143463024 210035683 579633322 949768310 771081270 880443576 721755587 827499744 980535930 989236401 405611462 798321951 767395953 911563127 651506842 728425371 31284683 137725724 663125197 998521622 202057532 921069828 100957590 846753668 32170482 592451114 168058011 386506664 691309189 982617419 127845030 340721889 421829925 914683595 918539792 982883807 341740232 368980977 580334209 666658308 785188315 928158676 237544637 655822282 519941045 775984937 935819423 977740233 125440277 201912310 78286484 739930570 997504452 999048044 95454175 424042680 492509174 493158197 472812937 720146366 167113118 519600405 820785679 909325540 765205135 916987315 915796374 948824255 714083520 762659987 619470018 989527070 88364219 273330434 35630861 865893421 606499979 722057645 94983104 713914433 565521116 756295674 98225634 352171027 646090991 700080314 463856322 819902723 341076375 822184853 266682617 280752064 490779942 943062741 257999124 984828351 449061395 455914091 198406349 482680706 445886035 619549062 839690992 916099112 27627378 431624992 933536423 997746824 854107421 874114322 308087718 922121949 318298170 346253833 434279367 756736485 900552404 929376429 554022694 784705096 917459988 930803603 921581936 985208432 718843111 905174680 189751793 295148383 545752226 830725803 30823514 970688144 581306418 618063107 214689545 899947935 988565037 990844268 527022126 781580982 107581480 886311405 379931131 890632585 76066223 212974394 175688144 605345877 656339264 804796544 313949322 889623223 357253638 597713105 631313378 834079705 837830512 857941092 105936756 784395337 462818378 532956835 768554671 839335722 154803784 713011433 768045939 997685002 254033483 563957352 515009401 762709391 890563771 960190514 670064451 881431554 362692405 673199599 554921363 887335709 692457637 760142675 205441060 498903506 901430030 980302455 344499738 380906108 329909559 554152158 529269549 749220873 114009425 398215448 960658158 991937617 434609635 805661369 845829139 956910616 662637730 782701027 58797025 294649721 996841211 999651854 80278504 538783659 655074142 846865950 816894994 922492320 839599051 930434840 996974716 997111822 776057399 878789123 59690050 95174296 172252825 827294326 226723364 466103217 596702421 670692769 350528202 589114844 922592650 980631992 491751158 631595811 740890417 875912747 871371668 945006363 565543035 869225101 869199708 881421500 695491436 859929459 924745577 999395040 350030261 966581948 950427567 994098858 149795825 227872653 206956508 539853250 80856428 128588238 792460461 889244292 361106223 835370020 966401848 989709805 192067855 735815866 744720465 976445573 247012232 577718744 439089060 951438631 755709751 838628293 461148158 906128093 356559699 803594387 114614835 696318826 712433968 875727032 960156925 976759369 624701409 841310526 809016422 964826594 209704433 838182113 41119480 630530142 862496930 995444345 817790735 930540717 162634751 395931952 696164229 835931385 316945527 642959714 21754050 130443473 280757805 807458080 587062869 637217383 103972393 404065278 324068005 418223333 585322030 805015119 604988651 698722503 123886305 166525524 23970288 192429791 814044423 958522634 594017103 866526249 749742302 821539371 18774120 991614024 494523923 958840606 893205064 955114971 952829255 985077137 765750431 858639927 816176435 846459296 151028861 769989359 900204411 988057983 37313661 78506820 584237852 913530799 336197542 915590377 559867478 648832524 186383498 942183963 820731111 833564771 699256084 860479888 856301590 885760717 922682757 941104126 805530506 988858875 648193683 919818291 346545836 900531652 554623249 734181029 566190068 898624027 1695604 336970134 682272837 701642247 962227539 982219768 912158132 982755873 872068899 913181409 55778914 478333339 119920348 585171469 144064957 381401520 906772305 951855234 29417900 883251955 835818468 879388176 825079546 963637033 719602409 751036650 271614738 555384236 130369001 992262649 300126592 662306008 47169422 106597597 106551077 842497375 745189005 889921039 566678666 857072688 336222651 579810965 420282791 972186352 358793010 620792167 183284017 823651497 204077132 353422230 792905468 914036804 567212453 679049359 12222922 462683751 140956702 563805878 799800694 876452401 412996565 929727316 600469234 613423237 717843033 973093731 765440807 813090763 564295017 773444411 608771537 997582362 610933518 696461590 139978906 941381280 569701475 625915112 723970476 840521318 837494248 903011125 233343301 719241317 432692697 750085647 388594369 459916891 644482701 795047517 656834171 738568282 657702028 995815870 988882334 993483381 866487286 900753265 112676106 479882116 202772707 446114437 841537293 944411663 400190542 583047447 651701860 879220362 96398785 349265356 448960853 789528635 707929461 796699859 518058132 545323269 83161463 83162709 791396009 890778707 374180024 388392912 599808440 622714005 637073945 822747313 599305689 899312083 547705085 554217348 615347192 735522893 79038583 82027903 316878226 850872779 296581787 819147247 591329306 914127704 994762593 996398314 983397417 993785610 989998603 996494574 9916142 548259922 81874169 801317549 416931549 439036300 969768324 974028153 468776343 601288375 529472728 684620948 377940806 432667708 586957987 814735735 141865036 254763025 52767882 822713307 798672677 826202117 246951437 910640928 433348120 458854993 374948232 902564006 380145216 601214493 103236724 419548671 509902570 627803322 149369868 688989380 820678740 989541426 186356731 840355159 511465634 913010837 185777656 872634671 549575157 671631271 703648874 799389417 270190987 938009969 31026779 128452446 452911423 593312088 298706764 858479892 468233522 759092156 746699541 881951359 188866597 558343776 587158182 744759936 850722239 967734999 631020685 784777139 640019323 657984643 322965145 589853664 666028013 748557270 443911641 946528382 283116017 790631129 191068000 198614936 671477116 951414219 129097731 408769481 861277549 909060776 462035186 625534914 101347405 894461423 169078105 954137294 771507060 823911372 105205938 562182012 175575794 829697762 272763666 588660581 205421427 763415126 996155774 997998174 256320869 554471479 629304962 973023810 138349630 940781221 141637297 456785176 690107467 805132938 747787960 953986524 888892443 928834087 420576769 835175156 537577128 969143123 105228425 728321033 185017053 761454290 381563598 669630280 928230521 986692213 356528687 421053917 113503844 366419968 138423760 899168995 309880346 950532466 498754523 968938198 99908962 891444670 21223950 443739432 637668142 991542635 42409928 836840262 899905454 951633465 556978508 953127838 690994685 992381880 550496701 663836459 292400702 325318640 428485763 640035136 266946299 944676825 384107599 910557342 432358520 655874861 518394098 793884903 154590046 331286640 42700143 414469452 495118664 933646355 335842763 407461868 554029887 657770173 493939135 846110720 127685750 827149301 886002843 910536607 45994372 996007586 322726834 777532275 519949138 910482295 465584594 646719760 70109432 801462717 752437480 806316575 70949870 983625848 895592746 912588240 420781945 437870902 982627222 985080570 50077889 378482759 223005716 895288932 296202638 454629593 157021679 903587898 35117900 751319842 541148203 868380282 382967562 716349728 220607341 907345620 74645879 706184533 418387690 655611082 855130774 993642655 531630923 596824941 448161856 550298841 323772337 694997016 447944943 628495693 690759243 757288810 952300278 984111698 597001626 981362992 431483775 529936801 180864376 860352535 735459647 751308357 868987443 975351132 573064114 588298705 593442112 626386847 351090371 641251232 342750707 817049862 625175100 715538576 175420520 176417690 877645249 881603373 694876145 759031022 18462786 989212408 382443437 599129089 812430772 897768719 52202317 575694257 119022217 838706825 131162195 381817848 602836689 949501960 206488740 494643685 726206564 985454285 866658165 910855450 537636297 684456662 818074665 949379442 47534142 748373765 795904736 987723969 395501728 644804155 905099162 943666268 868795472 945179479 891472093 992709233 244439200 281318625 914140071 997476746 237597029 394353396 507036257 977361345 801790794 884992311 173821394 432414836 290690601 499736667 726200917 990038942 626945159 859425755 665292662 855400170 67187172 602156545 100664993 483418335 45369887 731417751 668870644 967160412 30952226 747650426 773229543 916484585 197291475 568329394 926553023 963534837 205448893 230725502 349567833 350175874 261559050 587982003 75052265 708535867 351975025 844245288 20838696 509176118 897958594 900227757 667695992 874337496 847827078 863231004 441877768 885487444 903891757 995885177 257826046 552527538 195574042 837002680 893608982 899644488 687702751 834465120 419997881 488205248 959391865 974325554 629996684 706516644 45490720 105269845 388015517 884105021 853244600 938930941 357373896 675523997 179331510 544975656 834340290 937893881 78956595 782162119 662597350 845396929 388690361 513322152 837475261 862793948 399568570 706051805 233813758 290162366 755616038 983230943 187118785 840444001 689980994 951565420 234742102 319252897 376423790 524565112 458829338 984540524 475175433 788955584 459432622 806893522 94157996 725425748 41923932 663202816 616463470 977996793 59702974 305896205 847058233 879005090 244027153 570896890 868171469 978419270 654029671 725719946 755877088 808080453 679998350 698836267 475245253 825394200 602676553 719168258 872500197 923458931 959419581 998848178 561631848 566667981 390118585 779047612 410299572 482349433 424165812 534960091 64374506 765377323 665303524 695438267 198750816 441979741 86115320 481968361 991273170 996900012 592269901 969344596 133700393 536909993 42868077 355939994 760816107 855723731 539837898 719202565 436457772 944948779 857023916 911990673 355104349 550771685 64762888 621202483 352651849 649726465 62022357 739905358 864001610 952081041 750495662 845669278 11383491 400228108 345254415 988445583 969620327 993579404 600600098 781904672 385364085 531930126 753733831 988897478 369226563 655416511 464330793 812280447 255698406 358095677 804906284 885092442 178564617 381078520 185467662 728871418 12089967 637652189 441257898 507876765 946249145 967760597 27779801 38043267 271671970 692840802 757310962 851724120 913623867 972277323 946477332 988174307 328756511 653414238 449950585 821358457 898839779 996001484 239709710 254123674 35006308 954765896 190455970 254062539 957192466 984767715 971695379 978428706 780753058 918616653 275917706 538873696 781598971 790267140 380162677 777962422 478638510 859605275 562092087 886308962 157560928 577652304 536453839 561056625 134010235 929770641 387277176 678623453 572182593 904268497 429709597 539613696 528639796 747582633 195082230 666783628 703481555 766713280 15710175 991829598 244935091 734503329 854280553 940981965 153425635 815213518 924903771 942134386 296456826 712212134 225758991 889303010 93140029 159279199 580110167 810391495 994463633 994951109 235079676 691964670 872411420 943922219 221573663 300082345 208873536 775538750 957401057 963688515 853727268 977070946 568803318 762607324 370451765 519525355 546659808 592227149 879711935 907493045 419552949 648600471 518408758 728720415 729086769 829690754 421341061 470931361 399138202 401545407 863824310 981773672 665066601 693794930 304619489 374328444 856018764 870548560 744830787 836470798 703321136 748339126 206708175 821739424 330100063 501070446 437402693 467087650 949946673 997653063 614627495 733477922 539755987 749138849 75791428 871656723 273654340 608931885 870982736 937564657 945988171 976567329 340107697 805245195 50698689 534301269 681559051 810224444 891499251 943078257 71201815 172819750 419044072 959446137 926847513 962253467 69996712 130695054 362453195 544891386 996526308 999967210 816664401 973476886 911630072 956234513 616113868 841710316 622041247 960653599 146089436 335716359 25224473 924042659 154283644 907308704 324141819 718846235 523440335 690720056 205913779 844976145 845039760 904087006 690519202 860219407 959766502 973058379 279477143 645877552 996597469 999592520 408611099 876400744 824034705 990140116 873442740 959073239 518101143 596058417 174207141 860162445 443168221 962560664 124656429 254303747 870968226 882572115 574465622 659063709 407207371 524860197 740021078 855785075 114449056 191068493 410619445 656187176 253452010 786769029 330358272 949166815 688614367 727036649 397540795 807244331 184915163 750196945 381821635 865423694 957478899 970942572 435380493 701271284 738142186 771570590 173922630 648278702 498364772 986704895 740919936 840865570 921730958 968352771 5822691 179618656 237045603 376582276 606399338 827390014 984034414 993919328 668942636 995383941 202507334 799219332 522067820 795110245 701663753 915392881 111456626 468893233 92314421 816202617 335813880 816704475 542757899 823345307 645030551 910822839 717155544 864994069 61611487 435093610 553868256 820278101 692827800 888487303 972083178 983583976 840540701 952483616 20864111 879277733 295745055 744023261 832469106 896895488 310308549 979028994 618975683 800503324 494668151 855239701 806861822 816680208 261500853 332827190 871772673 877581374 554964363 764822453 13883060 415101499 813889178 894998104 67409055 294310577 747799679 870667993 526460472 658413612 116394156 399429822 146685518 196869319 853465438 909547917 762190481 827382414 858789099 993101026 935191072 978855253 17795964 257876222 834786595 994345820 804732897 953982179 573918205 724810832 819062966 870532582 816983845 980580941 551716833 589148117 354107119 379126553 341801600 739828020 59178891 130304846 361463612 837776918 387492595 676808163 768625476 923983142 255099570 995453318 933750807 957064317 519802246 786887129 513807855 720052177 362055474 963601427 681208654 936302703 614492571 831957241 770698879 861794467 925950324 982110605 705883366 744832990 512982951 703769351 346399701 865212261 355409171 390268062 787342969 819950043 261910441 473932876 566106490 932687283 558607355 912000859 750150013 764525696 609907588 638117438 969153638 983740821 773438622 975986786 190320289 281490043 934409253 984690849 172089029 452041705 125811319 948546719 149291949 271929343 562912116 619507304 712134058 868076295 12651036 388073822 667985200 808444307 660938724 704880485 85038877 416637538 763998443 839079617 440215758 871800756 245059084 282574957 490151572 640645214 539639608 753716933 103017210 641292646 832527461 930912616 931870988 983448371 589143755 624568702 844861553 912806787 517351389 775433928 570015193 688993480 734694259 872774781 736970246 816478042 91614634 812605579 321420063 367760643 447366672 637873226 471066737 834261180 91915889 804049306 488078670 751582567 439540538 532447975 847509128 919295033 649897389 848342070 848619995 917722525 117839182 150615510 794870360 835651823 757719349 887134657 98552770 305107258 957451181 992182868 625001516 927820191 236921692 434900213 606223951 976357097 171265338 909818585 243553261 778253823 444854179 724379188 771031825 780486197 765085125 951624575 225221345 235887369 708499036 814564099 884732589 919227996 928998529 957597628 912844107 952125877 952381744 964104879 509149382 764509464 752729615 937269291 60762590 850442627 298939853 830767958 817018823 977424566 707864592 770946958 541533840 622273684 30852341 625780006 578379586 654562280 229589261 245250925 260957538 808444796 298352595 704714476 918625260 941496405 715301449 831722538 183322262 401850018 750242405 767825817 409490590 480395954 756605178 968849930 540963890 980581229 729846502 875369581 323978753 955868499 755639775 923551343 542288502 720156574 503672925 576826494 952132695 981569301 246170134 843035243 604966980 843989829 225681301 628567560 917659704 922471900 513812634 694114433 136576408 896872783 206573202 725450375 269896673 853054294 306791795 834663745 831059490 960092170 37873675 49095255 627856827 644207738 501458969 695694059 191954426 209789987 427287104 998038672 976504809 993277413 851604840 898216807 808417999 835764023 409708948 822772727 605338424 826113753 964908639 967616221 839309791 916913912 153237249 224316459 455777534 570471518 305513214 607273097 579323648 729744877 56654753 875576846 205303928 317260033 339431675 783780495 645457596 659963848 921228817 994808105 468158276 729529084 864764591 920313058 436091618 811174829 542271030 625085163 604979327 847691676 460515342 847655026 337413583 420701736 809538942 934126522 279702449 461187066 800875046 803635325 493872253 604070514 983443587 987730475 829408974 983126759 577525173 960030119 836220906 988006611 39548874 397659240 522250848 986575841 852543830 894385786 185690146 453975992 325492012 938548948 728329468 747165468 405099909 569201589 856192699 899135338 740934800 915143621 28055967 261182026 999563443 999773098 960253953 978487818 656004867 884407721 725079851 897794436 725949243 846657176 731541114 806359590 300537901 801942145 157825575 716586221 773769369 981785319 468219351 735291047 433551635 677106049 34149700 171794278 925128512 961773865 750550570 874966598 43427598 362558419 33115382 369741865 809516015 851541971 218831803 666126913 698180945 990579069 573827229 579871071 973771727 994376163 330436103 562030319 260813926 955488278 440398515 546725878 304457581 516244149 663380489 831300687 425287003 675176504 844130845 866693277 424971512 998189072 77260842 652891370 319016575 641679372 706404148 975177106 401681785 440451523 112513182 130715578 401490774 969229285 115943512 413597945 295534397 524030250 138922142 566453420 795258750 845549447 708558097 760548677 273301347 607766999 389605740 427559475 763039266 806602316 219665845 486297106 766968868 922384665 268290859 694357513 599431720 814124642 451902591 775506328 266764049 584507212 191827321 497996020 368275679 468419353 392949038 957942370 263648496 528468163 550147939 862521342 93787289 537397684 728037957 857842595 34402163 155832769 675944017 871330434 968069016 977358190 929782727 999877706 198911886 844928892 790888905 886775007 541300350 659162048 703957908 719187063 795727619 837840736 261356904 273881842 266974335 883970324 946426134 967721537 774406093 946779739 916117197 988249810 798512490 869732661 878849719 893728693 293050441 435513488 350979121 738827206 73545248 353161119 400759972 724484084 487677057 864638558 652450754 832064018 666631388 668355161 482649580 693234210 5117355 176523960 127235207 377516764 449253225 674643397 552002373 957921931 614919898 878497319 574021279 902169939 763316397 843534919 876041352 961614548 966290916 975105366 704579646 890609057 891548031 976263865 502248201 799403552 892622663 960223210 810136042 936666137 208672745 633363510 114536962 305396972 22212157 242454349 468166250 784801666 853864851 868062276 826853746 951429039 767598359 937663447 296875941 917364731 592322626 641112741 343199852 490548763 188493941 914875083 189611792 630174840 176887629 308879137 812142826 927265597 514869782 769224145 194198050 452611757 440253733 766090548 447487721 447718375 232495898 765141337 548758468 622909068 854324619 934586584 654500182 709853496 4098631 699274850 131313044 283333251 672107149 772197275 877403851 908754337 869549640 907958295 744668417 953042977 953332629 996452312 406402410 772790333 622978663 826111189 46434718 309235913 803257329 949734116 115523138 917267057 65387896 991030179 534188886 773616835 917425049 945963189 705405488 827284100 208327493 865206640 788209788 911215057 38544267 934286859 358878394 520882344 88819949 545504209 125349784 187386767 905094747 914831260 410867933 818422953 46659839 761661113 317960786 970040172 7846457 32378671 882028509 953148376 846172029 959751358 944325228 945710302 882984282 989162796 328975241 742656168 517746471 635238861 904090313 915216203 611246652 878196521 832736581 978686657 881741520 924459102 383728546 904689344 296225614 967145055 984675945 990032037 641209153 871416685 416452640 826756044 190020013 852317214 336164311 608263127 694092916 790332345 793776003 918911896 910605013 969054542 326939415 841584741 707088640 889587408 836267780 965853308 668575 708031099 36072611 586195716 228146753 251544403 782351902 801820357 424667968 683004838 401725198 665174423 544707424 979659928 560736083 933374833 429063240 727162857 629007403 916655609 772651812 997431305 457488749 904600967 839721092 991955497 53951857 394109362 109152601 265334384 684007917 870148171 738433416 799543053 316454618 329820628 126800759 445777761 771950480 781517737 222175666 768211425 72965141 898363144 402303960 852002736 26434612 829200126 990493899 998602863 151068606 862356869 588010464 741180690 257129125 454400913 964718914 977087210 641451306 823050986 775708408 867957034 367263156 602548713 432083312 506474497 769742209 787936608 388215999 717811042 274167360 394260840 405193143 774219855 553476070 762406201 473141614 755880333 125960644 726936944 626474462 763167402 856208383 959350546 96555717 446621482 418856087 747982105 686706237 849095117 456197706 664176262 894088489 969114084 954567484 956356539 574357097 898994360 91856742 390220125 482969514 940432759 668015060 822401059 193364618 980392678 718495118 891357023 631447709 653092734 514791534 697598702 312825695 663488393 638091702 985458832 419715307 744636611 13143287 290707673 479915866 959585707 750152237 992663699 793564675 810202462 546787126 804204217 74676573 348614872 321128090 512482236 885740872 904123880 351075328 711282809 585691132 651599326 340254358 379470658 370067427 812355061 688466056 751637430 379731107 457819852 626809377 785488218 721905577 984392864 764149915 938237070 766020440 773001989 327636837 332747167 714804265 743159474 705552790 748167695 473543518 856269141 913318237 945669715 308517772 904618712 453265690 675451907 964497681 967404718 361616915 466507162 358141983 399927131 386139649 387401524 472929491 889286743 702419412 893051192 907325923 911630297 111275633 609974066 355849722 926068727 888824839 917370855 941542726 971363903 866112852 921215118 1551438 302358897 613235263 779595532 888547503 925980930 345897294 936184471 55442334 724773946 545344534 867946439 706423996 850206699 825540689 936525662 812423134 919499031 995456191 999262023 659177512 802592888 787385685 950939500 732808206 764866480 501144428 550065944 382590210 671217748 354633194 538145390 136217227 387040868 664573178 841446243 639859615 851399627 24538596 89937119 511059404 584863199 942530146 971233744 865784376 990656193 791537668 836485349 221667842 359480321 927035838 957015287 808891889 988677479 273808835 944765857 775901387 848667785 379985063 686199819 205925200 377510483 319498890 421557410 637777617 731347678 323081541 828923625 28645197 290207291 586582177 620212654 527881115 540400434 370141420 576915440 26145135 488986852 163368473 593241381 23583175 190109724 814071261 867366802 612012367 881806907 87103565 386410782 410546842 880615757 111297947 387921428 701960198 753538440 262213491 988565370 102674798 684195371 663340079 715773294 596717377 840237624 602628988 911510995 39912434 928293360 105235130 919079995 682972936 808118970 689805239 904382098 680038547 809979893 503438055 958114931 90899846 685889650 898428681 952580909 452220254 796934969 543105584 862370593 959817492 997556627 80977826 663481085 397424514 619282285 791331424 842739863 14248883 400278359 956700529 971389857 409716777 670834131 775787234 943587509 475714704 667523664 724745253 923949498 974549200 987115633 995297916 999508225 748477549 888701333 363924288 743025290 212944908 405474609 371764604 560514901 84510203 295820785 518472305 969118262 712323642 911410341 701718637 844242356 546376269 729704762 240163595 355519932 891228864 914690244 235772370 880967980 367525945 409849089 207599272 380063816 453449014 967119411 55869755 402141020 503939591 929521982 979367269 998712392 449269938 475152520 979790507 994355829 550067491 982285304 793904811 978399094 36345805 71139616 139486364 994006643 561087572 669161544 318856881 672641353 228605089 453857718 665526711 722067603 620813844 894564700 309071509 732778745 11943067 319251236 988742320 999517454 783345899 803781010 557176342 798849049 91042226 433233857 697854666 914976631 77875475 813899610 627947138 999455853 703657093 918029739 900019390 973766530 347692533 891046695 502740535 642767771 39541243 800569120 802629922 804812756 746162412 859026538 7852716 174384331 643010463 674047501 945917857 953879496 633157572 899723857 951549965 966011162 28005504 286181240 100935369 870506969 532436206 859217858 389872143 485221504 338863426 679211065 311403140 958023963 170820483 371150600 75076095 997616838 671194901 708061292 501758974 525078487 388040811 695807984 779598894 874572619 137321050 428919673 798603571 813407938 493484995 778407646 987100158 998307160 197781184 681740600 536663210 765112906 69443188 668426438 792798360 813259297 53640149 184851344 793051866 861861953 557367560 801403010 359363540 656955160 674927240 679542062 662090822 788271063 225064962 464281577 118602511 715708935 255880646 438733207 328334214 598935638 837063333 941987000 101251398 244922597 511019970 979074812 88251523 363220414 620208167 746458213 465573289 703731841 244175408 724502362 157859055 542967646 679727863 844696009 157085750 672330158 506637541 652520576 238922049 833887867 431414122 683494853 433758231 819349368 916565918 954521976 223852421 945000397 13989451 252838520 728845167 751787483 633848857 810887147 772982696 946277613 142798121 754874299 104571051 137308727 314450483 444841185 807112009 859436446 31379802 640599177 20245725 35129818 123870110 926839392 725274540 852120536 216097431 369923803 289523606 933102264 689431714 962972259 662394954 905235380 842775003 944927624 837094812 844464691 891949957 904803569 857797494 926099119 552807012 932082900 595234171 779415392 42758684 335012034 968590685 987099245 571030642 627219024 593897236 704538306 860408830 880012621 392060805 722836372 4719868 197761149 810452355 893269162 673084315 775078037 745084234 976490864 421090114 758227556 23677757 415206454 918606727 973541612 40766227 346587953 143196146 670205217 508243977 663478016 215032680 720669735 447051100 799094484 181979057 634004430 250188917 716092520 413613409 749306068 635664728 693398597 363523155 451188807 540034744 691721933 504049030 542269089 307193178 489295530 224639977 814464222 236260773 345925824 992847716 996283696 692824221 863985232 556457673 672872198 65148794 712358764 327042468 553212860 429499856 457000021 663262478 762882337 626806528 695955910 279703862 599209847 89855634 369619993 791273952 837560944 980812429 996810996 966252970 975385314 707984653 746109568 943417585 975204392 121268608 329894420 97602373 486281844 287868192 312536174 838827259 933674451 718926406 817543721 659371695 756801387 503890243 590421958 740286881 856415811 338791654 541161268 117098943 127231241 572508662 862122349 303959492 489518695 374747070 999340468 807930217 820517417 446022538 835154296 325838996 693622977 164926793 451242221 583196754 660423807 10216188 686469247 789931901 928480062 602347278 784721301 3278056 832039891 494493877 673615278 676532206 981507570 728238140 786145226 434786378 699573589 558219820 819899461 784952143 789395874 576390694 715847061 652691183 892917898 197789639 292367535 195182724 372652996 456808739 804729599 226051213 356663119 160893535 671819007 493686993 732124858 564794240 607781548 86555757 884620557 946193489 966436711 283717136 440335959 525901683 834562679 595250052 796328024 219596972 910781196 45830800 921168143 482454947 499779467 398110357 607332543 467365980 566975346 231087590 856426091 114035484 385843192 192427240 738514959 776365912 869884926 852621677 859623671 664915742 696523850 691187140 740843301 765305980 918141377 802837859 836449436 556265076 686712591 949672820 968003058 565760783 712239864 952947101 996100788 257665104 528498849 605355427 725516262 11101445 417351273 950588295 987644059 10014647 873900737 978151312 983708339 74251053 450189479 986484674 993512319 810360730 855739597 754044066 829009922 13491779 372325296 151786931 680058556 727387640 935185071 798035489 819189488 649066890 654362798 713327199 954508592 251238418 827497515 301698934 665845097 663450863 824319457 693097178 916138761 975199130 991449085 993419567 995188875 533612017 758294082 235553094 948374840 764608166 871653365 377691864 523463970 739651899 801763456 419356580 511545996 166947145 928155680 421597596 747631844 637354316 786280602 820918692 897333454 339554561 870384012 828142721 871103918 503343974 667989271 334055670 602011678 154317187 749438561 119351435 598992228 445216818 451271880 940089231 954768342 36279906 82940451 98313853 964345373 899017490 934732436 927264531 949102507 17261753 27734555 345129162 721888060 943856039 995384524 260626036 328384751 670300563 977680718 131053376 330480416 137569112 712036874 631786688 742369143 301072438 487210461 792321564 796106296 444823260 683571331 699681616 735114336 35913988 924440971 75217207 517596808 721714944 916210522 313737982 441100147 220268273 713161005 587171549 656512411 907433588 927805333 377708166 923811384 612048515 904896822 954506953 962488868 151973369 947951383 464544178 503167578 360528343 852560980 174533930 879471872 321756376 913923652 872174693 894025068 155807828 909621696 263815393 726436770 438506322 896003107 662835989 763291468 733430640 736561106 486051117 906959428 390794308 614983011 223042647 795624771 169147223 307294949 214945538 888018786 481752594 642621042 541225559 790334709 525715370 960809692 490165047 566396110 462305925 807740871 418670336 834420947 195718669 851041919 864737090 995549156 967531779 991538451 263115630 891234902 737553071 950617339 202437344 828997347 876513636 932908180 450246262 844902401 845244705 920299985 40015701 199636096 649732208 672103790 434115115 482492754 893202495 962935063 438848516 447978045 43205735 979509531 510512539 650603168 759328712 789935363 129700153 721262214 325334841 787926161 40408446 575273958 755322180 772216716 177780306 493553461 562746364 979832074 413382572 765116840 267229049 673567558 578830579 991789936 354102724 813746950 572248016 779484696 884627077 968711849 52260768 612852570 929471223 963925694 394708923 408879833 462230502 929999114 761589687 878283425 910742506 914026094 98121876 584333306 155222296 902203671 476432574 531063185 328391970 581255263 46462911 362136999 385551941 629689077 903027681 988422469 332473268 944299581 42921023 107444802 547012415 629654491 948038639 951442038 236380145 676232643 641569371 661863883 436268577 882281923 688141951 877280124 398594972 554227028 811171074 838561284 336587348 931365110 749020187 852620809 126741730 343092853 499079026 562788683 440490387 585079700 499955748 856379663 603256079 936226963 611462435 788124433 263653300 501684948 152227752 730173311 198086838 896135074 788397755 809055578 876875422 945542775 419849250 518395182 897359048 903187367 501904960 922642906 550087213 845136581 974567142 983214698 383400079 926688704 721249987 786688621 647572802 765858027 232262078 629879317 586551278 748955684 985940692 987501527 847224255 862560132 134721189 366524909 486267367 739199467 536643877 725221977 713603796 773951945 317537619 696092694 485221595 861859934 845139386 902066524 891301109 926200524 796009358 976955980 552895500 578928672 350019982 637660167 402256896 473006532 653317073 838237163 694701868 873806711 870640538 892372178 235227988 680501081 740838814 744906669 999844422 999875224 510206930 745826844 493747896 705131098 226382661 542695741 134483885 340256330 256628561 847775072 950255347 990614061 428229301 492092932 8484415 650934052 46945667 550520905 815266658 931225557 215665446 232782704 891668861 916805754 24588290 197867737 519654280 578635051 613018879 627309900 719665446 811550240 2303927 373138082 382447187 892869420 393676750 636908018 65680250 210645368 725848408 815221563 843098842 938798964 891641098 973712227 724206728 962675330 723540114 735708588 342180976 634084859 491911488 523892434 323474132 662699818 422621107 888264748 415576476 841931342 836528059 904388604 111375433 868434232 843050440 956873251 738187594 756957092 315212712 754853496 396006861 895006897 124245132 582178963 775342089 978659055 569110473 617529159 69984202 716185952 525525114 806136665 812651970 925803729 9192586 240737284 958615523 982840489 427270527 503210804 772449394 860437049 905618877 949016604 116123472 371159589 84323227 370744317 490313189 801787723 146621812 642317386 872968769 887370793 494977585 526348357 987464052 988321941 870070971 970919267 32786126 319038345 280877693 674424927 453268041 724676877 284387116 734753232 676402995 723786160 290526243 989508952 24443969 567334934 378659962 964329092 821906638 953448881 151889954 711864530 158823663 205921307 176043722 585439354 751033984 769773561 602673494 921767051 948358411 963568059 978999511 987592806 586861249 696148917 912515611 985466208 427211632 823523523 423565617 514525187 756906630 868286245 479291315 946253370 185599232 854932277 544252429 752883328 155273270 470128544 741058055 812792110 358273975 415365664 11579955 134584488 246317734 386093380 584429293 787677711 270628891 793890506 167346945 818198959 720544235 956824108 181803514 683555895 6649333 831423183 819558272 841424499 107034401 277559196 323725198 543880258 74495546 819796277 957552812 974876440 806571752 867532145 570683625 904666642 857751621 947164597 324956305 640737685 588414077 752185820 251756603 987165830 36181867 885414661 502594692 620346038 594546207 885278042 551896528 659230043 748072547 847019157 259293982 677958935 10868973 579421008 882244952 886469301 139235602 629926860 700218221 888132442 978909085 992563421 693181490 900146274 723753119 810766204 656040399 746319987 841370218 945526994 484664835 673704117 807959606 901789777 892206061 926921460 643399263 706912943 414856867 866278896 480349700 944658870 810192815 813032617 562756371 896289543 500446005 680331326 285579386 422684725 131098625 294039063 75221038 442660868 120395218 635661543 926346111 962239628 815121449 847392312 416036014 599263748 661525468 770796697 761701044 934516163 457945117 765802609 157781134 758612947 595767933 928584307 70903825 644166305 254865182 823848422 425356491 895430306 623080303 991432035 25510288 879088931 709985270 997785310 367170233 979010906 622848597 945177510 501834279 582038122 265930326 414334706 564144244 691923602 186422831 616882862 408309793 986111087 680040118 965812761 362826445 826199967 257321406 863468618 202983711 956299996 942975632 968617829 988355903 997969031 270236301 541226034 208883449 210292923 317638420 780954384 425144133 615539474 104589163 769580815 90472815 499648616 996585842 999716064 632196656 943842008 629770942 664442320 45918948 951216680 489568236 787445097 962534161 988645850 345251229 858256275 164605175 305062801 961022711 977531654 995641175 999152256 726152225 924132288 533198730 671852280 845152166 922560560 392852526 978942811 338165003 687445114 924645806 929355681 254789516 806395247 14024047 779022394 745142745 888970490 152018191 863734511 310489137 338825951 454472810 601642352 654667673 824124648 286107689 720316568 226218212 920194691 135507419 860621464 827817320 995019117 619634897 851313757 356629991 386274674 449784624 970402740 58172020 499821375 376710042 802060740 178542568 602040103 422197427 522295035 680409177 775515928 412448202 917146630 142362777 455476197 472434519 519768784 176359696 337171180 304388420 557771573 371547474 747063144 410171460 609660314 770768692 953300837 302798115 867885514 143106315 161323638 12839566 87114526 413594583 437718943 945918710 984519768 467456078 770168057 925867846 973063111 782387150 951623592 549489061 837041783 889264799 944756224 316675812 934677382 492241676 810432203 4134397 182517731 310909304 852937976 53767779 516616371 943251377 948208521 859346801 922404884 212307375 803645501 60270979 713852123 126126798 681191473 645519060 687312349 123621504 181341766 504861526 615732072 849565165 863024794 155152404 557683571 220895908 376634648 855614057 935065838 425452622 609187984 362645748 543830199 427177780 681321442 624207283 901811436 502015757 566780543 801690764 948776126 841305026 990963214 126066810 668514213 714104242 715641213 265579448 555413969 856673890 914034968 448122330 677383001 725872026 988334559 797890461 985629537 887713472 978104722 103787074 435716988 687783845 949309919 228433940 557148964 571020045 752086489 526444818 628624764 888019624 895611663 703978453 886528035 985501423 990450852 987694703 994058111 267627487 319506509 497588599 689207542 499807694 816216141 581311636 936485875 279379917 611173947 68779295 682775830 535500548 688943959 609291281 825380859 913574471 936387121 941085016 943483227 838812599 967294312 999521299 999607359 170144404 171512008 50375518 453563952 762813156 894967360 133061300 753633620 528987037 729690944 241770269 907409961 722005224 937646148 894105602 937086980 889416223 968883187 775637672 966085804 446426784 874741215 548094341 622564083 511113876 673124669 309305927 374444009 806759138 811998831 282852999 937202240 460823852 463195393 384836433 662369449 252881491 767644173 727348724 974886424 297238827 315242665 931479482 970213407 54123378 974513257 24946286 700830500 162818415 685405620 218942882 368241207 620188367 678690476 329643429 591951518 160582979 619117025 28036709 498803094 95379450 980358943 18153324 781031036 722618744 971101167 9107083 828844854 701188099 977078317 266740192 673906183 750097352 870805560 967195579 991589521 16427316 581437095 598653656 613849764 26168517 444535085 776725927 957470370 414549386 764315841 492549889 516614135 935571219 950465795 97325232 769701967 284874809 945907572 894975456 907344720 246507697 588484350 618335677 934847513 127262300 360569467 720688588 793536639 934199601 979941043 735239606 962530499 672148242 857073647 998285215 998739325 581273331 790167906 447179894 783277503 410836669 616524140 458070871 480155799 255286326 835336792 192646556 489497606 751357954 840792019 757704335 828705503 797377692 854005625 214156827 367886291 597629104 952792155 265889447 414201554 525032429 691586560 155985178 182445489 641405364 967431851 283424908 292546447 627270669 759029132 917524353 963430113 166251775 948736843 752187894 900513392 694889184 945877285 386074908 779274417 383907450 933132928 927955528 928959408 113622156 601647443 4041595 631953505 686228041 822664817 784971352 845090448 116498652 837426635 197038622 944405544 577962583 987974322 815353491 932914449 406089307 728583209 70592036 844570608 51562379 113230083 581267286 833870420 15604868 173449196 595334182 749272964 838266670 969782269 867961030 881987459 321089711 481237265 546709782 710678764 21542637 528154117 639639845 848805740 435907326 588012651 16843738 853341353 132175894 414925385 594254917 649667407 971178643 987554738 745330586 962127727 408456024 985349307 518153362 628023204 35929586 771888373 73617632 524485581 624968317 705808498 632984272 884057540 168645010 923214628 819516495 896953487 301924270 568117397 511315325 655904503 362157348 821680576 166856623 273529163 61445828 769770591 259777803 369606722 987200647 991358747 573563730 794870513 552333837 773285829 119332865 199131091 197534031 600931854 182915117 450243953 629787997 844885376 514953050 880723452 191115399 778440504 615103736 937644805 872707342 888465827 840181103 947653479 633415005 928502108 996429486 996680509 966933102 983049926 642221713 768518853 572536141 588433419 522090961 706331813 346258357 902264338 508591308 991690376 849483757 947522700 94906593 506545975 191982218 404907331 16319776 436785788 685762079 887000443 222496536 280698642 601427423 628790616 530195288 589756363 611037421 725243072 827065624 979699793 937895777 966289835 80821105 997992826 877235089 939975528 994113506 998321574 538770558 932965640 903177039 908934689 551812169 809528067 53616288 275375732 243736766 601861993 674788380 804459679 739829743 821006522 136489630 755789539 289220772 658254937 444759690 646064210 913934990 954312014 953558793 959889465 517154572 683439871 226794093 579097473 903972960 996695760 299931412 334664750 161803958 475497781 673778999 780256617 876233068 894316442 132334033 134054610 805852925 899328473 867042028 891394366 19267090 344958025 826986817 971227760 919169867 957747071 30774667 776554562 430041418 831009872 384659711 912858628 106192515 873427958 551479185 817789967 817276488 891694344 8242783 829010446 879113636 998674966 923362355 951713689 732934639 792386410 6288913 900617627 786398167 964619067 766119168 856130858 315300953 984279293 752228695 953853398 109575005 452145419 293952828 316156416 956255733 993904369 292956605 451151829 84251924 463333269 899229613 983509016 402564609 857632715 778402520 932261292 188161098 469747704 643087621 803815750 167982859 457269186 84708194 243840213 900393282 960255397 960883425 987446557 739967181 770218881 513336399 969129213 24889135 999202757 861806847 968047110 600708185 764206170 159356590 821130008 797533877 997412781 790270812 915584576 613378253 873829404 795360024 912954560 282069789 312125925 947291969 974750186 946918211 981477291 415089657 806547304 860398881 878447412 946836300 988872302 239031772 795655943 44985935 228694051 572864343 927443660 496929782 551921252 909830642 956622028 312655125 996172196 615121269 771911465 726988444 913919597 565969487 850907649 572934036 877249279 98688332 604471653 237148732 576275436 680700254 971027179 84864068 770606680 759925124 906044883 413013824 903285944 974831919 980098401 214442087 596661728 68640052 425368350 201098358 582225887 292174712 955307498 898355054 950748867 457782736 656187593 793030715 853035632 575603896 786438139 390036590 646161891 963668165 976923216 570957324 811223431 770122462 871345247 640289233 687436247 907369712 978305553 509375126 804228300 413985201 798184509 747324015 788807478 448234469 529250094 790633440 808950726 67880675 593592989 788846093 817474646 789557285 850657733 545724259 789116254 373978918 475687896 902439116 938207022 998796949 999133159 319055752 995498264 542678421 543764208 834705301 985105905 52314586 259800061 384373062 671397180 909003627 936053457 998369567 998605573 71535547 221501883 388740643 916298105 282800687 873440160 34997629 626082697 268133822 340102318 949470319 998997853 241147966 457606226 604234057 815136514 370800431 609950814 938931355 943179004 643447550 707943056 134258288 213644313 691412309 976629182 344273569 368643849 903857664 991808293 352780259 994889054 963894316 986311304 431980367 806654912 930970668 995189343 242150498 816160806 406682008 542590877 670389900 982402767 759759214 961413937 130027015 998848833 832324168 874695998 716260329 981555081 552009893 922242950 563688806 928593911 940483053 994062093 419369509 839863445 326428931 794177867 650749702 950282382 38000155 393178975 958267919 994081723 843638115 909416969 559382146 584473483 152104010 627579262 985603784 992081803 886506931 949448612 407487926 436734882 953364694 989620092 65064354 468457631 868510151 882005773 403139229 749569474 893229168 919728174 991235897 998028149 933664523 985365450 69387132 431500699 322999184 453067057 893424438 948618672 256770121 770762411 593100368 808601397 802694728 897419251 603974977 822215838 864600322 867379311 48105033 206105311 718413640 800213549 297514160 777698876 447847429 808233731 147376041 228645159 226349803 524991522 773294954 877510612 798484788 980543455 848855846 984305763 145425962 174961488 919520549 971505903 267993266 946484082 371660852 713841185 197529103 255743642 155506282 688953611 21804754 866588491 420241793 718049740 372473573 435978388 116100474 156007609 298129424 541623685 593313043 759439646 675214446 775629775 253830050 419536950 797417662 950953580 336029186 375687139 567572740 974137664 169826460 665939126 412174016 880721979 224871292 548988974 37504656 388807116 135404558 315284944 165701904 944480801 139062654 581635671 639205007 800842125 291534890 910790347 869023094 872222868 277042141 412954523 504589895 873153475 203631008 536395396 956530004 972291601 786434582 906388969 440334073 564220956 957385910 989509283 596415745 925555910 389073879 551144502 943723421 997122424 3479223 573034046 65717405 315096595 883325434 951648826 385426563 390658278 154797878 656069427 869454185 886017434 81618787 997812789 297017474 512901416 522040702 951627548 287673991 409424417 911361178 992214564 801637776 924377109 637066415 660470689 342499082 887552088 749727905 867320335 237631911 743099482 277891228 657988903 29063564 240017679 308069717 445494683 285375607 961614902 878037725 926364196 943677991 985976275 164583116 748010537 825605062 838504035 334533864 844019174 754531910 924800139 272132093 621009222 808022465 909620400 578647919 630226140 279831557 851163725 560802370 617793320 208723947 212176429 253341554 365967041 653542521 696320142 790569613 844711429 380368440 724179722 29065073 993594087 693874438 701080859 441946745 633411471 978925438 981958244 341616408 374241354 381642498 933031249 289693734 853889417 257411469 774340833 537023587 689076001 550539031 860381892 538988430 940339627 713184018 740548075 540775171 828108273 885034911 951092031 618046717 872998306 620160266 707529161 851608705 917685833 828609474 861192865 21320197 883444120 223108732 505100630 86086791 763006212 540256965 942084836 578802333 996778602 10382422 981952648 777015338 836084771 157552266 938893821 846231793 938819900 978553868 987478469 45927776 412518689 561126558 910555035 988714586 989390696 263835435 592833681 435934929 985106922 277889096 741471170 118115988 374586513 307926722 616606621 398564077 779567421 46131509 182699967 704813100 716712579 200285809 352846784 100863764 376252246 907240558 918632790 966872254 997900799 992567186 995684927 692709042 926058664 639724193 906612814 992185787 992448464 569380381 927082018 622537437 889917808 465599053 952043611 815399115 844456033 12769225 863046416 133524105 744778034 829339374 973278232 440689775 574885939 912262243 955825799 870892973 952094295 150200692 621595849 723544488 917944334 776320802 997216662 728389093 928771875 677904063 992078772 393236247 741524972 938505328 977344286 165405086 189253746 35574920 245898146 446575383 847875443 26504504 322080245 507026604 779109783 402939817 684995989 376063786 678089887 280001327 470780005 480230284 487036685 784409657 907824575 999176618 999375358 579223349 653744812 736860488 799424961 805425318 976176426 241996225 982148733 721341082 827657237 712007335 968091681 7401756 427981654 918364472 981780423 979659518 998241307 896466107 952202097 54146582 528022932 158451720 556089463 244906888 438524595 692124296 776223551 625509252 740309169 356127518 544137263 231845366 378258230 204744196 545403944 711397471 799280457 775765442 973337728 429263153 754844932 878575926 888211387 124465619 758015360 833534528 850050921 723619376 867647252 225695528 787202339 598444220 898499266 395148696 441430624 130414782 673148445 12362170 860756076 273235569 439690943 687751493 900945452 185691018 460614076 654068424 996694896 389214542 456165091 350814764 733667025 634175134 772137588 59631391 992550940 829922717 983576739 438084070 757529114 295850388 797274027 395499377 898245364 948349847 960459008 595595376 761235224 359928117 385807450 296470964 455393345 577258313 788790502 756879200 978585223 488978210 717351774 648064473 748874883 730598344 841876658 158317995 949714008 282904487 978290870 206172961 776865319 870974713 942190296 846306710 942646337 693813327 899025190 753981908 861486722 916557594 960216338 866548513 870517657 339108209 816476929 315709069 909245134 560572693 839110760 346090429 776174479 778374196 819930854 913875823 934675411 127571322 908823594 338316143 430011166 25652221 827955370 63774313 241486292 39955151 72256801 232793024 395009146 891605445 935132439 217817660 534245776 615860973 641840623 772422222 865369351 227733496 950950922 390828727 838145103 388403127 778310253 710460996 909167672 588461320 740373261 25680560 838180201 333326905 807683155 111808297 481949032 272699836 630307576 797167564 957460268 133949806 785932038 175125904 723345215 555516022 663374753 715124182 763425661 379882503 756897426 580562884 697904113 763577417 888005533 567045006 780233232 869869295 988952634 364104094 541890948 475908658 993122404 943613735 950685970 517960157 659820661 611067121 794399765 442063571 895431030 345690600 765518443 696196716 901225642 318766432 435437019 439228789 493714119 555599588 586160469 166461719 652396325 565543417 998154007 757658339 792148784 449941338 565816503 25909113 901547220 193615461 402311036 223093138 962216065 449339504 763637672 302966506 903505665 636247478 973472116 162978485 299110683 110750582 727265500 140097847 253408909 22614105 311527875 99393263 148515960 259741266 655905716 525655795 995191448 477481032 778372865 237456019 425115755 326592741 598699338 828330809 929683897 526251447 598434444 250404351 516715249 796819730 959510365 402799331 960826829 323441603 772683469 671152767 763359342 932495090 934267564 835422748 907885720 585877228 760437288 257314581 567946972 769615681 909636470 238500753 244025912 401273434 686259194 757661902 777578364 361763505 614851086 881608006 889989794 677479656 912162821 54778734 593363806 486373035 854479101 620030330 855732656 603077424 991500686 629229946 934718271 502503757 911125656 210832227 823307375 756720968 801070749 93526648 160541635 794488524 927247956 541609186 987863867 676662200 769635551 226067521 333834813 945690762 954193733 81681462 649185371 1055666 119395322 666778676 925712802 144455865 519880993 588721763 636945720 488953156 557597143 719651605 873847332 129885782 793795830 639649098 899632034 709798371 789777934 777745622 809423836 917809541 943723664 940682518 980378051 347875635 527156530 337037343 530838162 418650903 789169079 464222841 529872933 574872448 836209597 130071615 892876591 262712660 865882013 329061622 646988129 625581761 821128621 957257684 960677783 710043542 880894543 27496933 534911452 212971349 866618635 312025548 934228473 764104658 975239359 854447823 911388644 619782966 889231250 411732416 953080716 750686438 902400076 783695587 873424473 303787788 937603710 704023674 747602677 329040643 584881928 185142169 952469031 999149879 999559180 563051301 821516172 558971092 963444036 754248739 877376442 509965580 806664776 433527205 556003849 760565658 954769776 755948398 834750935 992067316 994704253 530437548 577333658 332647433 803977617 68397007 984568093 551129543 577502402 163953991 324515306 650997963 972442573 947121563 977676762 754515993 922025505 38958091 893013319 83577831 945420025 439377487 753791206 577065248 658861440 155201071 704105118 645679619 673152313 312886881 987868614 900314350 929909182 991650914 992965448 687427339 927647415 624091918 984464740 662854230 758930196 693977651 746066320 39520920 494346621 107927556 452475518 980366370 989100521 863976437 889127897 500698113 761467458 928483294 975048835 881808247 945494147 450273485 924014014 248331020 563283349 102338893 534151084 968046921 970568733 330252328 697066762 722785984 851803586 804954419 857560386 834255080 891678493 551724311 836909245 438354481 788279117 665359439 773471528 703497124 772314746 997042107 998416634 322554747 707947521 773199837 965931417 346364284 550913646 258210264 781278614 168955743 311151225 49767741 560394288 779502490 878108604 576571458 868838735 493954167 616695788 138174496 634051829 337416518 466679374 81212028 264000895 554975937 740402189 322070704 454770950 398426024 609341667 674463443 847385526 701908495 968202614 219203549 240900775 313142148 576155298 508218455 975041813 663917025 703215793 179967318 991968847 357408783 913031031 853244833 901507791 975266473 997387043 677359560 859683289 201297139 717239850 581696284 882004602 696528720 724617701 151896585 920061894 137634035 253628774 429567946 443707015 841794537 925738841 339145195 485207608 510344861 648095589 524510617 698786525 411661889 588576457 314046375 976088898 492426202 897068622 913373759 993320349 882191705 913010609 7403448 462723472 740450971 844253618 563251256 574214214 97975292 649788686 495657516 933537666 827340956 839686651 204014741 451914034 56558730 541946770 534764827 792357470 498925100 819398319 643085199 958219395 987926238 989585368 360884356 981648502 574242134 956158880 472229213 557057296 187497481 894025082 672745640 783801928 608034140 948319940 268396764 765061543 228718021 791274951 322015631 632949888 657382359 924280336 365690084 455117645 668245535 842142859 908277274 919133063 246542102 665329026 667384375 934032672 604435482 692910634 998372794 998639729 130710630 484798160 743809561 802515309 987352708 994054744 209158362 775625586 476798120 852475916 79775891 400664658 738799354 851104112 780943990 907259927 837743651 862462547 56632439 608826730 529493775 955838174 485000814 766625329 323803208 882889421 955241826 994099369 746307733 859828407 524780567 572948714 145431958 164979833 296341799 891588480 717682576 815060370 535948174 642432480 658265242 894162955 853723804 889552487 231155827 677170416 536646250 892519918 226290597 350159733 387205045 877602887 764868738 833410799 656550163 803870644 172885234 694572022 202538071 227196335 428135834 665826833 568453916 895929224 596505750 677785653 205832310 502542131 776280784 857392851 831384458 907643416 156828177 970452518 663272021 770413986 421843212 842022364 13114236 189449271 440904299 996410862 30538569 517364969 212408410 821480377 892896758 976550463 8374191 139455389 558753235 799658912 90949582 358839312 963713543 990948452 424036173 579640814 948595684 961314785 55481488 170980509 589340411 743474175 438811437 603285779 937919677 974994355 708978343 837054998 422387096 801717008 869794596 897764117 363053440 627012697 846207218 976937425 950472141 964733236 523847576 861229047 958755215 979405074 909992809 917593500 967828231 991417583 605089161 913522583 243153546 562461524 392355031 432319215 251331252 399060168 532754695 755358140 464204629 945135652 517678236 871053201 123144540 415459905 796387037 867460355 506799228 606420634 534216541 893830453 679663176 829321741 957929333 966650894 99493827 472869138 730096587 870536657 148974056 870016969 469534773 936553910 165985903 905811520 301866610 712119087 109951796 514889442 308591179 483190879 981191864 986533707 565766815 896020126 253875623 326195515 862866389 877227362 150482676 232249052 88842830 148301802 726457486 843933391 63153852 761648695 472183787 694236740 432332829 534170392 240310509 890800823 977108709 996217535 144266065 643762549 355319473 734995306 597259724 643375075 989473551 993136386 137674010 468633565 195896313 676726843 909235034 943739513 809230080 866496795 457640076 868617102 521569619 828077398 837015503 904270705 241795534 774516239 8456803 196599213 716802306 905468187 431428580 767900257 462887645 975748858 193013515 584635237 864901289 928096030 64295606 273187444 688472161 700405565 989901301 992278045 120923674 864953691 204089374 828549247 574852308 746212817 330071361 336387763 685078629 748783643 550763849 824172283 458362429 485109966 815310875 998306554 636982589 989204905 632433081 853519081 167068566 346007793 372277988 657867858 874517992 916903346 144032464 373801609 395874002 520604893 735914471 791646640 153876594 433222344 679855004 690936180 741304439 964965761 738672558 761713807 563742075 851863061 214251105 555703739 477897257 849990397 784868224 920789729 281272287 904970092 594762945 768543916 47271223 163680235 867819340 969654965 604460997 649190849 908323018 999195368 505543448 724247758 509224611 900453299 71480472 442378826 925897028 926287482 395281056 555245671 186595129 623194423 993667209 997574360 745039522 947263180 172878388 326068315 689866483 735261342 535644906 814275333 686184722 848505384 985614676 995213904 27943340 599901119 237775344 636749464 115587931 221937159 893793387 924296211 735575691 926668093 641012340 902279773 787312902 932852348 578310454 873232947 820953266 859566387 81046204 533913161 858061117 947216606 661393160 696813281 774350079 920782460 227966840 496027565 385959604 863345126 365810667 612512233 561689554 647004368 247261102 301292523 99142334 924523498 745798370 831317039 279996695 287102863 750078784 935356018 14919593 263956561 938447095 988142096 339453497 955255019 263208981 870692487 355074756 549710691 783984118 936553778 742453363 802307432 16821930 719838279 516784795 773578900 862368357 981886746 871067857 937636162 877628978 949263825 270731739 561113875 344798392 810295864 517354537 926471851 296269444 501045361 132566609 638782388 32126112 844224195 36857617 747772232 875265148 948904921 336138114 880003071 68348198 294257805 267313287 740434690 691690100 797000111 218202202 455257690 218317663 641206215 888852812 947856999 308269038 882655595 565246805 616498502 366161093 672421610 952178454 988072898 567606093 668115598 762481856 869625461 276339222 437379479 572469734 842719830 751760436 770729360 788449314 866960080 738181015 819033585 687628726 948989504 580526050 831970558 320434077 658870540 708497284 792594266 214593678 295551648 377152725 474472479 580856961 838096729 714940652 807206963 250794186 702988249 281155052 310805713 120320495 692704617 503786232 625498803 220841967 446617679 956006095 974292601 164811034 226118935 509679319 882300935 590960032 976406763 795332198 817256631 833689115 916097403 608290208 719319524 880642622 897721485 796021450 855921830 156444857 181520373 581351574 712915217 933807756 952797431 629806584 904735017 99768867 810794739 657901828 685750113 928335118 976204905 441831513 566023489 143015610 989728094 972428499 992808876 559566191 978572898 198947827 259523449 278762365 421152690 932179605 984165473 103014876 977752528 604154253 942044043 728382123 837388818 748888758 942621516 204366676 360036441 611985503 888237595 873958083 921098349 238451311 654058406 288725530 533860973 463334361 634706373 495797146 695324856 998638197 999745063 380716026 752916395 848204273 981941427 458857950 963387048 934017602 978432954 619614360 662323140 74821846 256014122 64021551 214962438 403353370 810458857 906824602 978384354 632949722 866737108 661008547 711624747 138143210 823677055 346824222 977017318 716350115 768209032 139500792 503620419 325793569 847016283 613234455 817491594 752715925 891801943 10316718 720626650 861084638 872954026 307964946 537833959 650718827 796127144 559870570 923937829 245885036 764259758 420398656 949488587 858157009 939023964 736250835 740246413 218402957 712134224 247125168 986144112 546986823 768599212 236631085 789809305 855021226 995760253 501399729 960550387 57274963 864166223 811902063 833750282 405401321 451778068 326847942 371489962 853817693 906028128 156149218 414505278 312362338 689635389 725359785 822483206 372127477 859993567 605661320 878812489 220029682 682234800 466923568 991041334 72206399 560872348 588440641 756532468 364330123 532604370 370476592 726926325 389700034 962805411 415534627 500474619 649560619 832508386 754016876 991823989 506896297 655881127 662739727 745154835 324618897 601052984 994713530 994995873 687275878 747627325 6640344 72024681 27069653 356835663 33318080 941990753 578518382 873530208 592078486 860887405 369871804 690040220 743203127 754670337 49262284 373340535 543242291 957920781 654691347 687271826 943913749 996646715 941022372 964531154 32588557 562472648 813379087 966758836 678552295 940990391 400543038 807435871 863842181 989445393 127442848 654007982 705182973 881941032 708838050 744146354 604664748 654556209 900832551 967270935 236129131 470319597 10723200 332016430 11964945 56721500 533287523 790824724 650865276 803649333 63627117 689405897 555798412 904937913 253636454 825613022 202845126 500352343 582119825 617021554 57535511 90184930 542124924 813275828 324563316 569676044 546104500 775093043 790606787 835448969 618843923 868491712 456352080 928385335 134014831 815994126 393250313 393399077 68148124 504068253 797085716 830385509 642368253 698685562 283568545 604018534 332948734 937717632 747093228 968021712 735190701 740757015 497421636 898646670 905097517 967113091 145675170 221506259 900684534 947840990 743430559 917179945 213549597 460102331 381946219 821632913 232754759 299285636 275663577 276062275 703667607 841920999 180616797 459841772 466505523 711560914 768052350 779636365 197422426 766447361 749907449 884499827 480393077 951789889 234363872 498626773 506249616 978111672 460383906 767189880 734195617 735970706 829569804 964323394 14301141 822084004 403403732 766818779 715879179 725803116 360680152 843452752 557680951 559888794 128501262 456321820 973892666 987130966 80449972 646190262 144562035 896883155 340059983 708214227 454061343 926768404 80527175 227145844 895362226 989599598 844147754 987641321 784464953 863177005 838158380 990049991 230471169 747616390 99488378 952804329 121886331 304789151 14275499 678603237 153880594 283886957 619758259 907319188 962411237 973550488 923660529 971968028 107976661 576516703 357001978 544767670 962463679 983859316 41299901 735187492 70341939 450685930 392716476 498409626 607040940 642528429 480776779 838106857 167509912 707359305 963796731 981974159 566456173 780884163 806486542 807528228 843973724 978224404 998581220 999107143 886506019 990073031 130862846 186411122 465952920 546888562 483538881 713953374 953799129 997970163 497947578 906501934 305843200 361463885 342281056 654241331 336782174 543972421 942302997 972192038 841832709 938058644 778267090 989199365 280691118 604077994 283861887 753556302 918222331 953205327 270270465 593667820 639461370 858037287 288639496 812442322 246547926 857645339 289221163 687595248 226098784 394020250 246914889 493705126 54975077 554221942 859418620 939363069 994897133 999415044 640114410 941041161 89645479 323736498 928867619 999395738 269580367 765689239 293920900 957397472 813769995 867052754 543957505 721876130 660951656 838588442 971651328 979744431 414438223 667745029 58405112 988814264 359957050 984839632 860299152 989393444 628543740 871454979 479975865 555449826 552203925 775916005 252531848 336515873 793211122 869033971 555482771 805493400 972013050 994922213 381050210 510471561 850898104 964199461 665543401 995030037 72367482 773226783 813808102 834923372 11519292 405118228 946557642 983173298 276529213 450225655 82393878 772507000 6456042 678545989 214970390 885712822 680115493 733818778 98074479 891410049 463649680 740898932 799962371 828486228 204362305 428958623 578377133 730916126 724434172 945549199 570757250 811742632 125850310 755746660 597419311 991977200 57652117 270850271 791386918 798627641 925365709 967186411 125903701 226012634 310577305 926841958 129518135 535273154 101536891 187983827 3762921 645704986 842904468 922018626 594562336 795372598 819290230 835527989 654185960 732022327 594203524 848919512 992893420 998136519 232239794 265110743 352520702 675746392 30120542 246606397 805464065 918289035 341280773 453170419 926751087 956148329 610280711 777390008 435535254 904366683 602598444 643536251 339084234 858952998 667857305 733125214 257982095 631703883 509005300 605629238 645220496 918558941 96989419 256188482 351886667 436810467 632971760 778060452 385590595 510088988 737362027 890127949 555565039 629022536 242826739 784858588 960215141 978488695 997378419 999870267 716117400 878166032 875700871 927330354 813732088 964837215 592278895 594109479 727477481 799656980 966043693 980891761 51046882 982638632 473457843 481130110 997075619 998993362 719821940 905064912 171293950 902603058 497891059 685862850 508597471 621304239 916465575 952661720 162420825 284752696 66904949 966400492 113087630 557870105 830012715 941655453 961923160 978755121 31392829 999585648 815041605 885981416 163290070 868472269 552476571 642725694 782227595 783113071 635237706 685918532 476204003 717796442 200673884 852092561 797198196 939128397 823897546 956033305 366610130 893859438 807500013 936817221 406237597 457387157 21827695 82926149 811010786 871150662 756369410 921253171 291929542 377747490 675564557 850321566 784027470 930970044 233526233 266959565 474519590 690747075 538072366 779849227 580086287 976215183 909027787 961676506 29648023 381733920 580337206 634316332 130555026 620447103 531777060 543662163 155038723 157902328 844492001 878575608 985732624 999575119 536346104 595787440 144417937 842480094 577188964 799799377 689419698 794372850 417957296 949569087 653542013 795571570 689904666 862647759 341846228 981356627 758437279 910422105 164733649 955504971 665072659 865395357 88714032 404503463 316284054 695165481 559491163 789544436 177521487 716226771 287411026 537564112 587462194 958437582 136602982 760788472 232811477 949281324 681505815 866862086 725007845 832404163 846407783 847914485 822712637 958927250 56914125 423091649 20197136 515456107 970522016 994370029 902794061 991307705 510586329 969754709 183666053 963865012 505124073 839972653 147366687 269434167 702949922 922482370 633896740 877650834 237669385 381761047 770655939 830954719 200695290 967018220 550942079 688651127 412684599 820079859 109588509 896205565 93896557 870767266 390710128 399220246 703666257 786871622 529648654 645114786 228178264 613832188 895200673 947957012 372538625 769779302 866430983 877986338 144152006 492065297 437985402 884609665 691311811 973595699 968967669 995184539 341105891 555098862 16158683 643336528 998469100 999273251 329077182 812662191 661931130 676551634 738906556 838624677 641893767 712248517 964811345 995461249 910101618 970376755 826696275 949990060 727375 353094533 340415093 765007317 701948041 900154315 229995393 603429673 859576361 886360541 282659670 385308849 736739394 999947211 96325804 503149408 309563196 921558433 94038994 823465360 521145756 713545806 297735540 418774702 659637058 875196395 336151795 808320400 811367753 853510636 400184023 489409490 708492281 743427786 204430131 777692347 46543055 440524345 333407548 485834538 910711912 921671961 610003886 926940386 280489580 613143103 11161571 955729985 410565999 784351255 509662939 688139483 807686462 864787888 966152809 968432533 541968009 543210003 470561810 613183160 279811068 687141415 799689586 929505176 618251497 645959598 801987375 950611961 18464751 46399137 110121940 244547533 563601553 974566991 912629862 924903235 142627809 933495818 538789445 596317497 777436350 968596842 524276659 916322094 15738893 642265368 557681276 773237458 217325075 803600824 320383214 971041737 878508345 989114139 51108182 398841855 418934591 559950275 280141661 465668528 40562861 605403945 707453205 760734247 780979046 992704024 875871358 914616972 779545282 809420641 97588497 860495693 781142225 971824439 395252533 803020763 428652281 552747042 543226385 634291798 759913915 917175209 123984830 621533088 195684963 996465406 435229784 598917441 725564974 984692628 344121801 884459190 989590971 990787064 514865315 556089277 55740993 89868206 676997826 895291571 187228851 676493955 299299505 476717950 757415713 827989129 706498897 739521580 441778414 703193050 971210702 989946200 316497417 427703756 997387246 998291018 477115179 952731917 139429925 629174030 604057653 629912117 19921794 776969978 874055471 996200701 827161104 863371211 816595090 912796320 349686215 653713963 695978711 729832321 380685466 945950812 413668041 450952379 525678016 931689047 472373500 556458318 191850305 428375627 351400259 665861802 350966334 777430478 414765837 958330603 399322778 721649742 405405854 546029962 891810606 940562990 445025257 640525363 237031079 869869898 84480607 694383762 240577609 704970575 850635276 884161782 487423381 691648575 18554986 698526363 520116594 546537501 758561325 953608976 179276325 618302064 17088348 23739716 596227290 852527449 655431112 759927259 749485085 977937102 564242354 734039463 267928432 794631377 414982131 895803222 47910100 558999863 849204124 884122574 721639305 959353593 814766011 978479571 963202801 976816934 24153676 541206911 390241594 961553777 159688530 594937317 477486722 576276039 394937153 616865098 271798011 784562238 533381402 898057255 362309053 566001756 524548654 582941167 720291679 872600237 807619554 817264468 116219862 742640800 3307401 968848452 922938929 973829017 517891393 756543675 378597311 790291697 185520025 789296104 664540664 717446469 179806211 773671549 974370433 980685603 362779384 957277858 134919288 928529765 6273348 824193907 399445914 934169587 980301661 987310216 335691089 701181007 898468345 926756729 264395071 519311170 700160999 975309355 908734763 928604765 374511691 661847579 346577964 852957670 65487953 382729019 144988895 823520666 811046958 819978114 362434333 389463528 993045362 994584136 360631622 569987533 215977958 676972960 212131671 667501672 163176523 229267414 951260424 989393401 543590348 697505035 550812892 606477872 284881463 578278449 314088927 890290304 413652679 835760359 233589470 298530450 270630668 838843710 197355949 419373401 166812573 503637017 366107969 467471318 569292474 935993129 954797930 982141371 548983781 697187194 128233490 670625041 760986083 887726390 978823849 987388801 378371980 750970251 847979942 877552926 300559236 344028333 389619533 410387694 521444652 754050190 591440505 699981305 331519075 898461386 458086147 839330708 704702803 857181986 793488167 886332312 168848924 767939615 120102896 560376572 411115333 822276157 983163104 995205602 410646880 815281852 52355060 734384694 866229715 912649591 625447324 866720858 963064687 998070497 672951706 839352236 37056189 243745247 277727038 863421717 471420201 561168474 343990639 792895012 980689391 987574347 703719674 935516114 109616423 771223020 499185721 612530152 586115210 628872639 786041227 793569166 913383499 972711955 66605295 781459569 583273096 992706079 213053610 550560009 885039141 957145160 431533761 434916956 810215391 962776717 159367856 503206800 609746287 652148579 860473551 961008430 1278284 88560277 176628315 339320461 583153735 593472553 705868727 976508990 452460696 740147470 326897576 428208152 817617831 848170428 568211050 773895354 950989382 984143125 213797639 771755954 189977088 674890652 933492874 981702071 665140259 874244443 37886394 911680488 981727019 983222454 417275683 597887825 301235274 811315251 704912913 793914902 537326286 583685598 988067230 994959505 529512389 884778740 917641504 931470597 191435410 516968657 698695888 952044851 854822906 935337100 529810834 905924931 325339498 722636686 425316278 870095278 54138639 467861180 239043304 986914065 752720684 992336575 760286698 764090465 534829833 556034877 632163372 723317039 846521983 986453799 72776636 259883970 766225713 930768134 932748987 934475365 612555059 919745802 951920643 978224492 725665666 880052309 732026126 828866632 545045959 963332453 483913382 530567718 507416089 965211022 689043847 753359806 92635354 559460744 554218810 929276552 436182903 990389020 597275304 914563026 43929950 63148171 276503317 944297282 137870325 679025488 655121367 958147421 570199666 984108557 320953750 355870101 620668772 931446255 622454980 924932173 546134120 874039031 608406904 963371781 603046810 946376037 665722244 901057774 394290718 699442452 773729826 905507879 408787990 637657914 662630287 667557354 531370554 664540833 351407193 393782819 204677016 897533490 59201626 580103631 293593992 783682247 464723982 794067752 581025813 800245909 631583998 842933320 704817758 737242764 487443001 624605348 46028590 180955144 166942091 843406184 477599311 962227436 883612235 912013757 438891286 521201935 454119946 637438350 782482318 979861111 808509545 965777077 973372885 996337005 298127970 753872265 337589435 705430374 416651261 719632190 459341538 520786489 559763801 802031839 897545438 932348285 195656442 558451121 351878188 605652802 490374507 827965294 313027535 978108883 663692865 981310931 391854152 675997870 925322295 975602057 48695140 202467388 342033060 899655204 184247847 960203860 965302290 965574547 377277578 745910917 152466509 476743296 443157788 482848514 278207746 587922918 225750219 691575424 847104187 996739190 370133870 676300457 921645844 954059334 582952149 911339902 183797021 884085153 369771858 792029330 177705422 816365205 413198776 805070632 83341890 294780058 758594991 850183390 930410979 970636231 144527089 871396877 693531605 844852787 863224117 909090434 46084052 539180462 478817512 585408457 927402166 954362931 400464115 654408218 972687109 995000122 707591866 734550950 685444461 753722915 997717672 997925550 162966550 815994632 966593497 977933711 907206706 946354445 524325467 874992637 89046856 479959472 537877384 948618778 529477518 796569305 350046095 933252700 393522028 583035927 662383740 993352309 120043934 370864750 908394304 986317193 196490471 357437973 587573085 770162093 792467617 945483662 590876871 991762118 976769754 993308398 280150375 416576041 801261011 969958412 344738817 556888711 427689024 949206894 218073312 664083555 850425660 970743188 301737235 449605852 896536852 941783919 787320075 999324623 359452715 975876196 399114033 675884780 585251757 741928271 765868157 877213157 785006374 832279033 730402622 906422861 614458544 709009255 702044338 711063443 476321495 496765423 57343432 386995119 243756656 848579058 647602893 736295971 888911786 917936715 603992753 894538294 725555742 921514928 764175902 782872711 141442895 885961606 417217303 597934049 448732822 679399880 424652562 524538777 242432501 866364313 186811003 427656511 110135673 525277764 284450973 460760848 59581573 992751695 920208363 967327052 865344074 887507361 287141179 684389488 208432020 820115614 400472558 661850571 527364732 923627561 956027867 989416592 106965410 228045898 414848729 706450477 355270435 668572658 375998162 391844478 874467458 911952592 514094335 567129947 649511962 838179183 834866450 977475633 3801020 94367561 599530812 847325186 589045654 640559170 715485337 798368434 628109799 887882651 429823680 514385306 600816037 709713761 989011057 992103912 651309827 788642451 924991248 981716575 97361559 593286165 279565943 543130494 21887476 797191462 895827578 964407305 905787664 952240056 822134439 978688238 11955616 110720720 269337790 837593668 906790986 929226350 583842389 709593989 392858374 726080392 853560367 913043519 145075413 810500915 994318105 997684797 749039929 841996334 423677870 898825860 758256437 914147200 182062404 881824656 794334302 999844886 23011928 859612820 827408083 952722657 422569312 907232022 248597712 692344550 957557493 972767328 113454726 389984750 689153664 865408380 612934393 629944333 864247032 885589275 313013215 774386267 479101105 788536437 416939014 614759616 277489258 294062361 257940421 297563863 350616962 810558243 528217501 995554706 157215696 190162601 105426958 298084756 609925408 903013122 846645314 964181079 348756779 572052612 813255079 843938892 626762665 806020776 259240130 498571207 523751616 828321370 366737840 890209001 574086194 771406790 90219378 465058309 822830079 986188599 279232361 723976018 655730131 803125044 462316094 892483457 702372003 862266744 77407551 983545536 447861023 595651732 162883331 285000454 175649521 348434089 223625903 988572500 493749168 553435815 775533605 880118342 189391716 273981528 243471885 730111128 703580367 862454810 755726738 909097976 379490438 428000244 722755308 739820721 744097353 863291982 420592704 873635185 834117535 879919521 900361231 916702648 827585973 907313370 460355441 858933117 251655307 911889367 672729871 787480704 745162280 905415534 994451000 997883362 454562571 831487028 930972562 957362434 58514418 797911008 831025808 858480983 234110374 606801300 574991129 906771408 216150447 315848811 346151087 517331594 435351355 721090737 333190258 533517977 111495718 238216335 746433841 772289902 779399848 907805238 987760422 988086463 665100202 803468296 296525308 901051923 602550066 894990259 713220562 875928982 71937283 446472592 709556571 849925033 409463442 865439629 52370650 676048260 333698581 373468395 705618871 717482775 419537186 530731900 531710670 915446372 264030684 508729651 597443991 715810032 826655557 881794765 655019587 945956303 603794457 769843944 727567215 855148684 834878082 911002704 361282297 961099405 751310776 786936069 768173379 874738691 898255343 950787094 890205389 894875986 70987522 938710220 163597654 767110262 375173866 419468666 983355251 998947537 211394498 821496721 263501395 611642901 119178788 300059749 278137948 851310618 857860921 943296318 447030906 761695751 645466406 876726795 612510617 778428263 361932394 950474502 866346449 871732948 8944980 335169164 827325422 874625476 468299636 673594875 287618487 326560457 468981602 673777699 863862107 914504016 362498858 867322728 858389886 995802739 996047348 997613758 419293752 775944392 960706069 967300889 798110974 832843016 878343201 972382810 957270213 976582911 242100553 825963995 948174804 993972076 145082450 301916713 789230490 855933657 719000217 827995506 382003418 608283235 732554993 833865350 447250185 690012212 222731796 452052509 750454006 846694253 228419171 486483355 897853889 957028728 853153735 974293050 963263971 981174102 361106011 733758243 671913901 869970406 918137202 970743389 588730961 772382290 208571024 869710411 538544653 858083979 276373821 305679283 533734754 642922808 800264846 985661915 820645927 925267417 517482902 898138346 958613475 974191861 389731821 786857253 935720906 985863973 511706975 772010665 171817293 480046401 103611358 694438842 195938582 737739130 306580864 319297415 87711641 415891415 277988569 543283766 71927570 826886510 791127295 987598845 238638604 727518893 351532096 606592066 795921935 854691869 146230459 259312671 497152168 790775595 139681166 709771633 119169171 617662231 641773252 878911317 39338692 882370828 36905704 400970757 639613268 714698288 355566696 575601236 831132601 927388062 992059024 993382681 9231937 31221026 47441368 735011631 801641286 814591311 374150868 460483701 396907767 470926538 415091692 629297530 710282894 724036926 3548459 636420078 412435796 782295572 520268064 899186230 248561957 481212713 749464879 869795879 546015448 898115800 312210118 821997887 336290137 799627827 838604918 975047627 408836680 990904380 84830915 480810813 439692495 780975007 923123529 984258770 968177215 985816822 39468591 834727266 492696555 908730419 862828896 979479690 526006774 992951722 276102326 585547640 91824444 765858485 692433989 739646196 8166426 236693042 298647884 494462749 543593967 962011249 666073025 735234169 934516383 995803795 327521448 570320108 857057367 929428772 596499649 912985331 992350873 993744496 637444829 944617730 439895714 816350772 602422981 790002071 67260663 627542448 92839976 248688527 86326878 361282204 556799191 954551285 161644618 957308712 628644029 902578245 672639578 756100909 297128445 912104481 666234809 815319350 877908211 988892176 93305548 131579469 387490597 501305296 363994444 828183130 885888772 971076634 988444866 990280256 228750647 732210873 121471769 141798859 144829023 630141961 873515617 956881641 536417709 642858346 449333627 838617346 574898334 968323762 345503837 887712512 950860562 982650952 610373191 898585002 222789909 614489814 984448306 985114257 505907690 593717205 611838622 612659384 610970403 937315074 153668085 271032542 558152557 777090469 786100118 861874578 163531366 725153142 68927776 318255423 16410735 385947985 185748003 746764933 805531216 920533704 339590259 918723838 743667025 849945867 941870816 988060063 428536591 967415775 537163865 647421641 293710307 504886569 908863765 981014772 38036899 803728164 445278967 747528301 472984279 864149715 810011925 903290756 234627721 728259507 737568391 951937268 193895600 522166220 644879101 938238638 721617189 771953015 629533374 832669564 589799336 889264580 560960439 795215497 683680470 925348837 625469010 780778760 687355384 863308985 521631326 962780402 553884550 650858000 878730928 934734148 344231362 508237101 63162993 736312273 613096035 974496702 918645744 951019165 765495307 818533732 471790111 518796063 55896100 152312935 865826398 935831403 338699184 934491378 54048215 55151943 355961667 555527346 167196222 388601194 365093279 611219158 717127107 905244287 620907659 936827624 570698797 822899044 298995438 776795035 798935606 897210092 225358122 373243675 142454764 924914806 750617422 934009055 323551840 640106697 42862089 606509103 673957059 796623594 478827875 591262963 476326043 847848189 242393594 987899013 905060103 932501623 874323035 969920579 609036116 653381716 627472111 842022376 518933102 574970174 703149748 910477480 127706529 582121452 603258869 792545344 823001878 855637527 375623540 744669722 749365831 791651116 131548233 647822988 574142144 883371675 183783839 497410084 312722398 411561173 822070819 876284505 920848798 993057862 508145608 639754943 151865128 679068403 793408943 807714145 513295169 779906552 546609486 884955949 200370414 229642805 67655906 237479345 231284899 785676627 939264556 965580920 759751697 786906526 70352391 320296502 90284688 238885262 5243568 682786800 150654035 996754713 811441803 855816890 985715064 986778050 628444980 860426709 379280296 763193740 958385041 962378811 783474344 956977717 326305392 504008507 713452329 879295045 994222673 995275659 549775672 635686334 411606373 602953474 833283922 885322224 949355166 957235391 475922317 624383152 310580243 458338966 192894296 773855996 720009554 854735424 338317314 640915164 205935497 537531741 382489213 825755934 95338957 845929290 645787254 894088411 997890385 999825614 902118995 921262158 918701372 963146039 797874127 851817680 184599876 962043795 789267892 812289247 814002962 891460287 913547698 955158824 711363269 864713120 617382551 914315594 523082158 945058777 493807977 902872655 276929775 348284742 552926764 898855250 750273136 880748130 872181557 907115516 482732699 738217215 959568137 982604864 733876016 872293476 534436347 852023085 623514769 741944651 448767461 850148557 348872 85585516 387160158 388246396 19246163 713516052 545644310 979380425 341169838 363440922 723648680 797326288 179855596 708310132 946548224 963631959 43652276 178091077 679936449 790929627 125875555 802420041 878321992 902551451 676387303 808077642 476881409 638311821 194454949 418944047 29237168 691931793 409748790 796541630 32683504 367548617 825239829 874060986 579472757 767158299 408450885 553536627 223940791 952587177 276068316 493147644 589348681 961416629 471758688 552573886 107894566 305224913 570717455 980715165 714688239 949754985 881722644 941335388 612863770 648821294 767063071 778375617 530476170 803991549 940084066 984168208 391588736 996398321 596904443 804893809 110678590 179853818 936387891 967515110 815180708 915079308 39517494 655609649 551380954 905862617 474695560 690774791 7874768 91906281 270142117 851979708 608544356 705425680 885778767 966804413 967640153 995508414 911463850 928629398 900051679 962092029 277125371 969006989 56507523 237534629 839403806 993255108 243429519 539760244 359384199 894941966 219460415 372343780 114754046 231439407 272900508 296685966 81906674 146095596 8328909 810465529 773535698 909333993 163520730 296426422 544378351 644956263 366719722 887979859 629929042 852817966 665820135 738189881 532970598 710385044 7244662 751804325 552194047 923537079 166267319 990594014 331692041 781228359 776231526 894743529 925966192 991896764 699053982 892747316 637770310 899493219 15297026 685130314 531706374 715695230 670185292 743994929 773361937 824526673 126905917 747417003 604311308 890621774 714685534 936565850 174682522 457026413 468334525 963147314 427882083 715394759 526714846 561285991 767682154 878551741 522883766 546102595 272523001 701630951 943229841 947814974 842189706 997134159 765945445 944956097 541037174 790385723 156205452 250339839 966902297 974117348 200523356 466854929 839737127 913303201 871233178 971515272 619158706 683823138 635145792 740272234 721616858 743677302 739848070 743655320 261968924 430487947 283113814 568188125 95187183 738720644 60885292 141397001 906747999 978071288 983888139 985802740 552467765 859893122 887300590 918435707 730388846 779737804 830366452 958744914 118992189 941893524 15079473 644046918 289131372 478331680 815484901 909741129 998794145 999701430 136270683 681777074 557651513 651322002 206758765 251532182 598827880 634004585 444275003 767844046 480118101 843277698 220837692 882799945 543002227 889386722 485122942 820358587 441481544 809551025 728160086 860441516 617155821 960239464 268362571 730572293 686763647 884288181 139970822 793994178 543852893 798958534 332979992 896483444 51222346 793525533 849150484 987112410 746198176 897111039 308484440 593963560 994854797 995762127 471957711 628861589 621894017 893138616 522314152 960410440 420892346 776355234 603593109 790289160 551842078 829595056 681786227 879256248 125509577 303584588 246801003 663834455 707190226 854088759 430377097 535222201 567430800 743696150 505618997 825646977 122143365 932301166 348394427 574397034 86472257 304255952 943381027 944875544 314366583 555635098 994892121 999682756 671629671 991296815 290808531 754058757 745077821 975669759 320374565 719986824 456533168 856886977 494331413 609446496 127274944 243147796 609237001 649039092 113928220 326325802 711714515 867955037 135508985 414261721 334416157 982937262 35975730 251099643 207360601 452565700 700932461 721430863 125479891 925042929 501994126 798644360 352292677 988541599 319271061 838781901 17949503 421483720 834996487 843201081 177120682 676148451 56786882 556626993 244024283 290442450 874133939 915493826 576414531 973648799 78107402 210974316 806670142 972419812 202057690 636068469 793339280 983733055 761398897 770470390 660111234 724172924 381245671 479469608 82718262 164607134 655708810 701937306 909742449 930330404 669140500 987544542 629261907 855287214 877022982 881214602 803817247 823704789 3331518 57005611 798715490 871371090 59848613 172142902 341325079 957717178 819726675 965472823 844721128 965869479 282074378 911198118 52386041 130691525 828734117 889481727 670520046 732901309 862021912 930823891 536373647 944403792 412706995 947749225 681131382 689428253 852753422 930309488 555386351 815126463 483816068 814029192 87241466 930104394 938155620 947648955 347932106 652060972 824543900 907497341 306507359 840701971 288698582 779542897 891206387 987481649 210034187 744595679 629869299 830163310 51261283 981193202 728120031 926052969 593239900 617222871 610845388 914531278 873465393 956436830 124038047 629508326 833979755 836151143 89169934 574297164 900447298 968860574 858413730 923139995 373574557 460453603 227619240 615149460 90363684 163858825 446629996 804100893 506168835 600161693 603112977 958269472 533659777 942159880 311473853 564436643 366815513 593057728 221288401 544157037 780141859 814117624 632495892 654510210 632387726 722380766 661482421 709663222 275293176 498683004 462228511 924203195 742862740 911074807 588667099 750864829 175978416 835445639 82214172 596061937 41903544 749762367 904274118 940824527 50354907 525552050 503569220 555825058 796264735 864549211 512587443 806535586 51717793 906992548 686507019 803835791 450979668 891277912 360793531 961290237 854340333 865429154 148186607 227051319 709647408 824669292 203632616 662012426 105066096 579402134 81128293 434370747 145674006 160875840 300203824 954948877 139904188 568615868 778020914 791757921 2774217 197816746 332064944 454132342 13703818 185389444 488533393 819319904 527265716 958796144 972862673 995853767 944035786 992442313 49677824 784796761 321356032 335219106 549639600 743934255 139783727 432891500 385780844 426308771 294759209 833236622 506698679 776970521 525873148 883622919 51944359 294917387 66209308 99834126 861393755 894115644 627731561 681510883 212725145 720658338 590400763 715567113 829822129 944633127 900838042 974774625 477471977 629618348 703209317 846216496 983490521 995741401 404920278 893454319 337647380 437118755 919550219 961648563 390034736 556282764 172557585 185548535 578382114 731344045 492223314 925361337 154756388 656817735 863807473 912450737 818308896 834815364 939541996 970762870 508037685 742937831 819142898 990007680 79723405 535355772 588476123 804350726 577778337 959473891 941548589 970256300 258307049 342362585 689419812 912244809 521415796 881648212 387270110 887770701 4624641 649867460 382441178 777998422 777917154 812898888 447185384 633472981 655057368 931203476 252446309 860550395 192797071 679282034 189929933 499082695 539297055 748774893 161505081 621564836 600400489 839062969 747299380 777713730 123630728 216673486 758315261 985858380 728575422 838412741 797208452 921628637 397488010 738719068 699034109 929026649 106629090 479921268 161865720 592659846 387203691 739843051 196692570 814390177 256255181 262170461 733978974 869397784 276051324 763564772 141277764 351846045 365242905 449590509 278255535 776009866 868174897 994000038 218385592 689685234 747418893 760779165 617096383 748737948 603444414 752309688 826590460 868217912 724012119 896780429 149671385 249485219 541375804 827901052 701080977 993267623 668539514 928912561 150316677 252128387 491180714 815344525 353579974 849460121 609194632 856276905 272283633 414405606 677716158 743504082 780485595 815657082 398282551 873877312 312284964 436101102 303838977 618523095 485760731 625800275 459024035 756148290 753325891 995997722 260097040 794488892 173214900 208738286 382806541 618654328 519719457 940869433 178809103 368402059 917165628 999830100 863628923 941400423 703542634 914963356 372822580 709470952 194735262 626955179 508717983 884141661 854180449 908690130 429595494 804772206 819950761 989046186 822218987 907240087 945508984 959570638 249647057 995180054 716762123 948832790 218109897 560653458 522493272 594843997 842744052 954240837 283145045 680791890 555996358 564152217 700228478 881715736 11298436 313533435 527983383 796103477 533886965 815299588 99531111 672488739 944478325 946719120 895381365 901648363 465111625 525965881 797104099 984922377 499329783 806470855 302246308 610486426 515497592 864727270 495109628 779118865 361616658 368500227 691298647 945832156 466053509 831901315 353113565 970730617 471660972 731195156 387334625 409256717 279408967 600990304 786775413 954020092 736031732 831589350 141628832 694257634 708611771 824996357 683298941 909017016 918098761 960864579 258609126 743404568 253652247 960537751 790464045 795698850 342522920 817150829 887093761 940536071 87604480 165974768 252835339 302047671 407784297 728995494 309659783 955611444 943752159 998255040 731500153 851078423 114040310 231838561 31801498 237464393 125943616 307622245 242661696 586524853 834857791 910702488 658824718 762090981 422348042 784731270 731423668 751228529 873411258 909795843 913822583 917621960 990688206 991331496 375705746 830941133 290108285 561673346 786049083 869011917 262820385 858946259 317089079 946796387 142659812 899621088 17496009 256206112 768518310 899333710 737178133 810150131 557133473 765279022 206925205 669765999 903970962 976080397 899107575 924938690 790384067 895683320 495452938 620605039 464464684 630770957 69787669 526647616 478130072 558597382 169943951 211383544 816560593 910237858 280415933 904609185 874834028 880755617 997353668 998444393 15819286 527372630 753240482 846163121 130066829 548189560 777245097 929880632 38366552 402993064 49232436 556253237 18549079 469076262 470411824 844791881 502998438 631950653 143418464 210178124 583182560 815002172 622661882 898263834 784295729 794293564 281937712 818768974 36523000 884318397 134747924 927865348 159105391 602546108 358669451 707931244 899209457 913833707 525955435 775364895 641799997 807253861 889163704 921696678 148209802 570886683 794435670 988574020 488157660 753855623 996025777 996319832 231971030 946027401 793214930 970541717 249574174 911227083 539560123 894739067 678683808 740876775 157656123 643114098 350559562 826999296 791157117 838774951 851891043 944206062 179055954 535242384 762413315 813769052 870717331 930853536 874545694 953685310 425751773 697307439 598698635 881331297 176180516 513696464 130703301 785373254 165635406 841785926 739360092 902401453 44990372 435262972 683753808 920436115 762317534 957710131 400741571 566281250 952095086 957997056 953193713 999096439 975518333 989425500 737765227 852711630 448167017 843714978 675060015 906670571 315899887 681447364 238524793 685374195 375628310 689741952 932497646 932528880 469682921 679167111 166893415 554451108 880464867 934622156 997701712 998659711 717648201 741689601 959736284 972373299 982030614 994932685 996321916 999063235 975974713 984208741 972303319 990373285 629137649 983455245 69995528 562585053 453714930 559985537 629692814 665980317 222523295 593975572 63728440 349011750 361855585 652230100 347640143 416780397 704688251 876862950 932728601 971140702 924079897 924935737 146753928 710762533 961318087 962176214 469264528 750733531 282952152 539121835 981520770 984487116 905036134 916804319 187854694 504598040 569277313 903382819 226405421 632637165 555124076 814958761 325868876 623618272 915468756 924037531 674151415 925374250 462147346 508739927 611419592 638061384 514467255 663742807 450465833 717275835 813488618 823190326 159909246 216308398 694919357 929377335 413405015 421599277 303594275 669696813 472217442 616467855 829463786 838418727 994852816 997329168 630339632 759117287 309450411 612057526 496473919 603826180 648502815 949419254 713219292 877188744 523954444 827362142 609188845 824738696 832167452 897742641 862339987 882796172 62170652 702051880 371626077 387687201 454335738 928671027 374040386 954566309 36073607 823039269 659764161 792504826 376739307 939960320 235410578 600927733 855244289 929441789 312272199 788841649 387258211 697990894 108336387 139180299 54258138 560613345 750497883 841729075 176238651 930873831 167363857 850038869 279085616 581432621 803103222 940842773 58492776 614652090 235736832 249175502 528559303 577034873 718464066 839951260 928263385 972002404 69925756 785966034 251008447 604856828 88573686 120746725 420390373 703903033 239706242 856347624 933191814 952095868 396488573 729248670 507934867 978480329 5614283 511496836 54482832 541522043 275899736 284692969 79721576 809950857 468102885 754465278 315712446 966267275 344394870 502074313 226219020 778512742 32560050 258686151 456355367 568807145 734217350 799065783 700416222 937197517 525707530 929826447 602959175 949359301 988626524 992923650 1036371 173805703 262267955 294053637 51007490 648890639 715041133 898784705 904968909 979770883 264481435 339569194 662334556 665495170 887933613 985412284 672057177 909609277 58758139 440565663 393783068 511027267 155223281 935381945 127045023 493485263 114521283 828209086 636215856 783908877 843486207 988330603 574622603 818589751 612860510 756818725 35370493 865229416 5784639 953333191 771333545 818194872 946123267 995066292 626049462 828941501 962538712 963510736 345626025 421779575 677340850 837626660 877940228 991736853 615607600 820825009 629367023 967682784 633550757 767690526 170813768 853468009 355399106 955953337 301980692 589822929 822377460 873441980 326707632 990194582 538700185 947482914 110194196 394776486 856464475 937814602 522212037 887311096 197976317 823325604 509302232 904043241 798592175 941049165 23378796 827926026 176508822 825007510 301912940 597292216 300631668 833496977 855410352 857366145 43284298 264236855 201282812 886013075 901765040 960143739 103534093 953628438 571292343 659831696 813093134 934509203 776327934 903944860 628338032 851659619 603009436 862758278 465008524 565592646 824565713 930230701 168854473 765441707 505519761 737143354 246846278 942915223 873872943 983479189 242817711 278867096 434354816 861184759 729283350 987873027 98708130 339759454 526959151 792097679 641250043 703792353 283624182 879268815 202488562 252330667 378613774 962140672 683031892 857115126 58875633 368737799 962634585 965313390 183199963 858508021 576986475 868821174 85781369 347615923 280733812 386019753 292245937 816818366 125105101 886540661 973117014 980465525 299666248 918301059 504315694 682106190 456250372 596721197 234699277 694811801 497412960 727691965 589078257 744617993 115634421 687347854 732333564 882819301 820364358 981288390 719062965 808888864 713265949 769176718 269086759 768661632 252875903 689113349 54496953 826934991 771984473 930706365 949810135 957396158 366787624 859749829 535111004 624507111 197380841 576572101 646953651 802045482 119402729 645191548 358519726 667032918 968250081 985943346 16441204 769038326 545272544 717106565 698558276 709563764 824116811 832856944 618472634 762485787 829512395 924116543 53401252 595226040 690775964 768905322 385462429 413863270 948751235 962508062 642208261 891576039 9831725 470959053 194229309 738084507 765544046 990203453 794179729 932399979 307700190 390997748 227050708 643404911 707778853 973678793 88537699 208705474 44816249 238840159 140728476 423492710 398097932 497894483 789183425 876528340 523390319 944979503 232183211 531974011 449085469 493344914 30262706 497072937 553933510 912137000 523017479 858853052 649775442 998521172 497645855 914747169 820997817 843919160 606263639 847449404 634780481 786352614 777799028 873025602 959274605 995200901 940025906 948689256 173281806 487547512 39021729 782760475 917117295 946756610 450575378 605634363 10306983 671131945 344985568 533710357 883227677 956466532 467671706 770396232 849267904 937034842 870274743 963958825 750995565 855299413 1375844 668796970 855318422 931144624 907153940 946721519 625564157 660582535 751383404 823019906 879577283 979998607 972367398 974196823 920955235 949006146 42137429 664637099 76606000 290761426 689336378 742939822 731907197 992416218 337853375 949737620 981012622 996944816 316960818 626872612 695692955 981060921 864391672 879640245 67910388 724698609 857508584 943839467 972385987 996197761 346254362 384701357 617092517 806187612 882431378 943215951 426471562 652898301 742845095 871765740 92724575 568189291 587002187 795530774 994620932 997297810 605216739 754925562 143952400 352117224 779961491 895798849 225981507 560333764 888108007 907790550 337387793 837468311 987071576 991154744 923951266 944251150 970621153 987179614 673341809 684824256 21915121 826993286 20274915 913606118 639159080 754218092 426349548 782569126 405991190 478477511 147090889 608211433 645139355 985303261 331472415 926465916 477938272 665928050 192594028 211400691 87121706 217143564 710165613 818916638 707067541 823277564 856821202 989031830 189057730 416883479 771674752 998813890 264138256 618035797 671083710 694585822 39346862 89547502 957829123 967707559 916509040 997576332 888247840 894924189 819126283 895318252 421780700 520523859 510811982 686832798 216020853 784646899 752881631 855087407 79629521 991056901 877040498 974364521 749941586 768205105 78228139 575266408 571030879 924027988 256934044 427763824 534150194 815882492 600742555 638229800 850968762 869220326 755992982 811526679 22618315 971071674 496126186 670990432 444764032 554256967 499838968 763643369 225763437 496862854 303718446 364204949 339884294 972468036 20725924 668470443 365755588 626978014 619365777 951639589 43720485 404299145 304878085 317395485 209744622 690197859 818536641 921561893 941962987 985668209 282312787 660575656 351991052 824606087 61091458 95467829 327772850 578099228 412999153 997922764 361956317 986183491 906654766 942285551 622831494 932023959 787090741 814931033 794115613 861188124 759629209 900344493 353322089 782576150 780898808 915520483 761989449 788882190 710275194 945033633 559263611 713331345 399679245 424703163 466649221 803787134 744909606 765591340 587679506 679536765 730847644 869954539 753299676 970646710 930677182 933090163 598625089 693799430 506249126 962934384 136845246 667977851 924058776 999775625 279242609 888317535 715636255 865666711 114439694 621884153 805167903 917116277 407884382 854870239 313659934 588304561 90593508 572400743 47177859 355073709 276776477 317325764 623971226 804474764 819055630 880458969 585196937 732590556 881581405 911166409 834472242 877930814 446414974 714726112 96681282 982718123 859755313 911575761 559886515 800517839 973591983 988675101 400315465 888983491 278946262 624336847 136314739 597183204 284487500 318506384 231779579 437489330 197605863 758268147 60589862 615183445 214714961 733452893 949294162 975294055 661412686 727993893 154673198 399268703 880786474 967208308 452541496 598151378 798573983 999668914 803639854 831727005 342477407 961819373 390395729 563102032 748495265 816322639 764482008 980616679 182952967 901231598 759440977 964081446 163807120 756216476 227486224 906160332 730840825 767929269 730048341 819121944 696298757 847382838 551435639 604408626 750139822 750949059 945615303 958448287 563716671 687483327 465970889 705306282 440525563 847069851 328850963 928193060 169532422 201891962 91369362 313676832 423971137 854114988 963609644 983017263 298761354 896109976 504194879 723866472 527705102 584449676 786365931 880504102 461187800 632059572 221346028 978325781 43762677 786412731 83043649 618394578 790819597 969343044 196303784 829186879 713931315 851539759 372009764 491858845 631591026 814893903 329152022 779124929 868440781 984198764 101281640 189222372 103938864 557601010 936039765 985020850 60214176 238364867 224125220 336562306 869368910 916878071 139243810 336422986 911921981 989626678 687802401 756000455 538017709 670763292 607413056 856956350 603244147 970904388 802326243 816337347 936679850 957527558 423759529 720659343 760991191 971020486 342780752 823896383 106801223 227919250 278233753 358196246 755524045 789832009 184735165 205445575 575320822 902301208 58437102 295931579 15925204 963639775 115089403 955421674 107965014 296476041 389396993 600839325 142480440 407596648 698928511 955135944 613075775 849831045 642267536 825764915 305085728 765235270 149996546 328498913 101725648 293478281 626166683 876019744 183726296 855238023 856282484 946708911 636072861 637768737 383654474 494970664 474828865 585430485 29410334 651230077 346789832 608006636 32691270 56947792 494312504 799136900 763602202 976058224 907203822 984204405 119508327 542933917 945481848 962322458 730182145 744826495 260640660 784276142 186836014 818398509 971775174 978030802 616174468 875002225 48318126 124612303 805904161 887337384 673371641 876607832 480309942 997782628 391743264 930943295 550696179 689642416 263863886 830301806 4904747 960285925 943305938 989104023 38109990 693700636 898884309 933682241 908165574 931577635 135456014 991867703 7187215 710503343 262298029 901527434 336194695 792977109 178289206 832453997 694717884 908933238 609538710 955618105 306882446 557781426 908692430 999837643 286924268 349004870 107444409 584432587 751198691 796430297 867166190 946561977 151618642 906451694 518888635 648927925 772250467 974111492 481223048 974904779 655572001 716731831 470139499 790070836 997136387 999019525 65304898 376881360 791789159 827565961 345747265 478757076 409689218 520816400 620074768 993216731 962632459 991538260 412634192 480903115 560699337 807296235 765612550 768350760 713999950 983014109 138929936 453306293 641653688 921310797 267023907 274644791 983439549 997566744 773489725 955637141 650277844 882195545 408982369 968502987 85025957 85058579 143025612 731407053 410066661 642089948 595231106 776928853 904465527 906623944 808551436 989147864 319762845 385523528 489512291 990101652 385699625 599156147 571044011 685330781 757659699 815008539 447799889 865144270 900383956 919210988 170172314 475520118 769858947 978600268 687143298 886493780 534604141 811456469 805738633 865024440 617981617 898991197 297748668 641587376 500604502 730070916 112988184 438474458 504184 46380895 427032126 895139032 654099322 784734006 643270484 849903532 750527593 882620142 517909355 639971923 923469132 924999814 938856255 965877631 321677462 786613778 725912166 847351163 379673360 503137814 401386414 899647621 359832626 998723690 888784271 898142881 409978974 868883008 379583434 647466877 911427195 922960742 46882991 916607993 465311406 960112697 833139349 984761416 682578195 887689139 711975511 925252767 346691849 507060287 615322046 915307262 857288788 956361929 310169737 326575433 442328583 466205406 879129119 907609915 939095746 969710577 598083973 876179452 769380347 978332963 543188867 910422758 494325969 728101148 969348885 986657320 707197927 896964237 567132489 843053657 673954247 754684989 886755487 968358974 302558396 482646056 911973563 952608503 990229242 992857143 811166590 984428724 630324424 882147155 934788893 939813330 121574351 203942621 911847086 931729258 307469548 879786154 254607918 851090730 402110224 660646997 177464670 283339223 866806240 912879534 258915397 830753106 932237483 988658019 967543840 976664030 130444146 228241589 445149494 950684066 561025975 654551643 382881752 692491106 634863798 808753733 793188461 837397307 523252548 749234208 418390003 733995932 53478230 750834553 744432423 989762711 941583190 943029162 807802270 984574239 45974539 446929675 598957146 658921511 690417224 830486316 811048622 895148546 420997075 762449084 612383992 996247198 228759751 233839861 467890339 875883730 111669708 902819867 615950732 650625371 910256309 929590287 195477908 341869591 359590244 409530585 985648094 997859800 221777478 316391176 93095462 382245819 173292636 485579765 82375443 487112211 969549986 993797011 613452953 644059442 923923381 964416190 119673080 141913494 302640372 472496446 758112763 974813124 744425191 836062090 142096078 719315351 868648831 921627645 14070689 208762173 781701227 865225152 676758006 977725451 327658421 816349638 723859730 921714694 321143367 783562154 14556537 372174157 558030725 940559339 620652995 882421373 516181474 705678757 43859828 560636706 690835236 965212368 219347276 823469448 293216601 309086582 438649488 681893717 598500577 699109895 260952447 977453150 213566952 850322968 587347000 865050645 713584791 968568905 499913378 981067767 399239543 749577861 971169174 983735533 461741375 768402400 650053345 791773306 669380847 961444862 774721076 813097259 258215406 555389141 765040209 852915221 824882008 899110653 890218093 963278593 679541551 854812056 33005306 349228848 908807269 957676823 249032912 727646162 944960110 969762370 449775691 607211594 248581820 786251254 655272844 996093527 661236238 784382644 65524658 493850467 989407505 995048111 126320977 584651456 497292598 771182351 618157201 721200941 65358597 541692082 968535754 969776906 440606025 442423177 191051455 733617382 761237534 988246582 807514439 862147831 977711926 979681545 268264477 976238431 167488271 318129839 198011770 244404618 870753063 907468848 225028185 417264069 508314828 655530795 140704981 700615643 613502918 688142519 902822627 953853806 237678367 505020204 314268122 869855753 521710377 648085146 568244255 730010017 766300954 940851984 663365648 707093021 950308645 971892836 989535792 989588320 454886395 601357625 823193132 942409044 317324567 399102810 135932553 758622302 289853222 561445268 792645810 813645492 511272767 958720739 662518037 719839135 104645955 157313851 540001647 567862474 437053756 570734671 847114964 872754926 4303346 853220304 289274027 378786346 795972233 983302562 103319931 441445517 84299041 92462155 86161371 597800196 53757724 743040769 144608618 456982605 292405658 959814653 142524792 911663069 410215593 824944134 651064684 701948122 637771524 786627916 579679065 977287445 543879861 718173424 217715669 474416154 263994125 796757050 869207342 917977980 304933341 351764668 697495876 824084412 15494106 508258920 175941510 640778607 478614546 867895959 602983677 711824926 783677623 859676636 749366172 969423495 24662434 345991858 803428109 915723693 940890427 997436719 447033720 662335577 944360433 996005716 186509712 750679746 567860100 809572177 45638396 777759968 643162846 644963753 249762336 726636409 822795893 917338698 667065725 718923951 746571174 912360181 197930904 970796165 706780174 935623594 127076535 696805935 509917971 889903903 341915700 528966244 830598236 948179098 214575888 471747480 905221274 927824737 512634560 761444802 341360691 679238347 423448306 757459682 648570319 755062682 632358547 917824879 742964419 754196581 498900357 867970342 287838613 804495567 785090413 973437801 38617814 156793510 654539500 673251030 698907096 723280948 83056785 181225030 147901080 150800156 74506146 271298452 501073611 916387710 846900740 923060281 475825329 984754626 621127185 804945598 434469671 518393803 35928324 720790850 567160829 596699638 509549435 820750707 115093269 474043949 136703967 488633362 801721041 879231709 257591941 269720337 21579649 676627741 646145612 974569736 545221571 710747982 669241502 953902478 801324705 858568857 712686216 890929755 840945860 863995294 870123951 978291224 411918675 765886518 819811406 923473829 386801002 574097107 294747004 429780974 324702737 849598192 893073079 948149948 636213718 839372797 847289347 910251738 40985559 170056755 864957788 896025624 602879870 984100089 468326643 634187802 412351974 952761053 509673520 671990784 914034812 971668457 160284464 484099013 886773309 914115805 848156109 911032617 571356131 706328399 812008854 914849915 492419504 898774691 679382322 882283294 40936447 838561067 752158202 803486784 190939005 234235420 544225742 906043624 864374632 894198839 816860830 926298235 235583946 982266930 14372714 252851753 432195531 597144601 282020277 315679556 382208739 781250913 181104180 686169070 479810834 590545679 618050170 876290608 714894393 861739128 16308394 42842727 860334646 874128635 426278019 995910953 835031082 954637899 362924115 434469241 842873932 880907155 54370245 201010197 253806680 815513312 948387919 973416861 417362030 695310171 805150951 808509428 235260409 565042538 913587869 987511488 214304501 301486283 466017156 674442271 691787617 883225294 939524968 946247348 897443853 962272609 980386881 986724125 296154 33474950 958064843 967851617 630955353 694457587 495981340 885105137 392094370 999800974 755754570 813493820 971803828 975386816 130443907 451513843 418081351 884365885 806761027 916524329 573822384 581231261 958622855 985886036 549790097 850904077 897728004 982795544 577802451 633329992 324934067 510598559 69118033 632000938 590079466 648017300 296026107 958085599 395813932 642535927 14901585 537904478 540563203 898978524 70286186 335773216 331790903 355819301 2638684 531208858 864516577 928156675 878074911 904636830 994032519 994603807 410655644 889979163 600216111 721168189 417587437 914215620 967327097 972228412 369038758 878505271 211365764 401158175 163486790 209500918 564466719 772187453 251019878 587520255 370425672 744674190 917851180 938354411 425417518 987655488 988462217 999786048 729318378 892256830 780885636 938270132 152666978 610255419 304675824 441675519 846067438 878644205 779771882 799131317 780192025 801413016 356013052 377062084 844723802 950140912 231470092 347614848 350957175 558935150 368527835 436534093 351755866 940353971 646068608 675138276 691021146 904026585 261585190 930028540 567310019 932624927 178752400 890976109 476741940 948197323 731986221 947841040 670062892 770697951 14754519 408458906 190866964 655425787 497486986 927273441 252687918 566981724 437950250 713473607 147770657 608467208 990473093 991925666 886347433 985969768 944125139 972384784 179496393 909523152 475112401 504399447 533670715 982688029 286434713 337975627 109054872 183150048 482927277 597302548 931891826 966715480 934552711 980986148 261185682 642023510 282577653 938353599 959486813 966394951 966134951 971484229 454262441 991231664 785495136 906840815 833327465 931538799 14492872 542398306 195277303 631431460 696699092 860789534 951435331 966477584 593250930 876700258 696228909 759942995 697955188 732881273 129001451 374085620 353873423 615011925 887348411 983010089 646522091 801766081 269708976 431858055 312169346 940853059 45434963 989196189 445022693 578024342 342996357 772679758 530915359 953772597 644481831 827387480 186672393 340439849 89027260 182959118 390648552 528751611 727672898 782686263 951246841 965955258 785443411 857760904 699610601 855161430 818447761 938765654 797141431 943738650 665832392 771370750 800502325 927572467 320042660 452980374 847309483 878667667 275436100 923708018 744720753 965097021 370581964 595310221 146389850 843393626 702030462 766867125 778594287 963157953 266643793 568103369 392662995 926975641 460968147 680285641 493381625 659337350 260854071 413837710 489353586 749066336 820357427 859823785 563764055 847488402 67941832 801110652 806599350 834991518 857326215 952161962 896771133 958779531 534148558 840628189 703949153 756246386 108947828 723567153 363992599 413116447 629343750 772188458 562107537 894801442 498487988 591865845 312984955 800092860 666819195 767626863 64380656 811592111 802161990 889904790 256119880 354130597 870644301 925179783 175109280 559884287 420440896 791859980 610858431 783488025 361568056 491526966 442384708 771614998 709277560 823042694 234291613 893942662 858262458 978268863 995237076 999876864 990196871 992189390 609303013 859482593 87859131 550399823 363637750 618044034 644755829 732011389 840132297 842553228 395272666 686316537 681005935 954982198 746251222 790938702 761113639 882755173 233499587 333068128 289018197 467483337 902436281 904170277 664440658 671550943 203979555 252953360 985936022 996295722 195943496 376341069 352500102 507631028 559090862 840293664 142038407 670420768 241200968 956552373 653114497 998022003 881509397 888227563 329388661 353964656 180353475 644720863 70186890 318476323 542485571 639940560 887815817 897737565 702827677 807285017 248580211 870636463 312354366 434419824 654592622 681238337 657834447 693588305 172357975 634591071 922328954 957862821 784798056 932987916 881638582 891036589 912285020 995109144 440418080 959075736 772994188 788657506 173837348 562188646 391966984 888284465 942795605 964298534 727272606 848623360 83546729 152128769 303212155 952563329 559632918 786329055 391327530 547073885 599015151 999623499 364537954 906948483 461414629 843752370 481921658 554130721 606930979 692103315 862860922 926439162 496000614 868832081 573547838 842064591 308832215 843528886 679136281 874267896 769768312 779441671 563123339 848249477 869381211 959623438 944994275 974763429 959917013 995207738 390409214 630072637 463970593 661545659 515975191 984034627 554230120 886082876 489265708 890952381 615560559 804498121 268850013 447348458 551803897 864250819 994011586 999264194 471086313 690944404 648247099 941502134 350967053 455764538 738640610 993287136 503694847 758089779 780226426 869866756 122020254 627025767 164277203 986222001 987486777 991546645 945566633 975856150 854467800 944731588 476621093 983166711 957645985 992739526 529546046 538999035 257020317 496934439 626375834 877408530 208765230 215349451 114771391 416298921 454583156 517754988 4092312 62183804 766593101 807983848 517211340 930377213 304214942 840027208 861057548 879380900 383478960 890596153 433473250 605019434 115332340 531197102 293413603 728314364 578294300 895458029 836626329 862186572 512855481 885657833 275071466 587088724 469167380 579605195 669732608 962595632 503135214 549151048 604867877 774935535 850124715 917254781 321072660 361230430 646318836 698716900 534185953 576854958 74052746 284403562 119136455 780418728 676417179 825959115 275556518 936227934 140894033 987089817 220824619 864801588 639346652 875790571 553690130 969408826 378592648 709111628 229222855 926765008 67428857 650211642 75099199 749702914 319817260 737750773 424954214 803518191 827184613 898664889 113334610 995316062 683866044 804545779 254230350 894718117 468475209 809321727 48163237 285310536 416986480 627244497 20166620 399275709 836908557 958384058 90090415 917346827 632353540 745789614 851568939 853911847 716668405 801001838 104559580 723900032 991034732 998505305 17648346 466712941 174428060 244635670 440365547 820525693 378683621 419719236 236640681 527449019 968683311 998966579 54699372 595432599 964389271 977254060 419046117 976938261 600478445 831855338 630869962 814296216 785365831 882912173 356730253 851931114 3612027 581391755 581142539 901403974 6444456 760400720 753951401 857073765 221880099 243864664 711195143 935518188 16244656 141719880 573370599 898024707 484150989 894320092 486338781 518741014 568778676 637771779 728221927 735361452 492434583 557342112 993672169 998014936 856695855 911344668 87095206 293122575 844826888 994966770 903891066 967913397 883752066 948519630 974305490 998936740 309421786 708988342 706840610 799603667 103355102 234279499 461334981 475166335 70542812 395492357 830759918 994758477 573934180 994385488 842603409 847390565 311733647 944549529 496569099 934057325 870723183 937223647 578791778 828718513 365710122 517148710 519529883 551953559 722604932 972315419 861115990 971094151 432887791 750631947 61308775 695631227 126803090 941078004 792647184 876446687 668026275 829358630 280821292 657776216 496916331 932423088 73670585 192130329 119657554 172167627 957396268 999421195 623667825 813754736 162977941 556487973 474212560 951125911 423509708 766890162 509044706 692462566 30479749 987226507 544201935 594874259 63221836 461388847 412566798 547632744 282490600 972304297 223712604 326579484 87341907 191626447 549113116 566532816 985776527 986155594 386561319 932277582 734415849 763423818 525342060 555509921 292785155 296630519 743722872 895183092 281010749 537350079 223369524 512195494 885157116 886007581 177828978 929495663 842237063 875642816 724233603 862644792 157136621 580285043 565118265 855134889 196202105 846860634 929119594 939321765 616334476 905683382 81906211 709349599 974325628 996549259 162304320 712851901 755542122 983514264 436161260 564952790 613888184 812061801 577228529 648571863 649355303 853414549 534887070 696351642 665891211 745453624 242789626 887213323 377299824 848632896 342083212 812990543 768157272 945597767 318348150 529906788 441007877 790213493 605692693 726895454 298336058 859165855 690714624 801490710 181854691 683999180 688348887 778266788 720622082 764684950 217621554 569246440 641008828 984069424 347553669 763953457 735653124 886762675 153660392 659571638 82654955 106037684 576362832 578109507 190963649 490146174 964885018 996945786 534394235 621617447 618327679 916644102 940189341 960583996 129149615 974629240 597838254 985688882 267456307 823547641 659632374 952045127 99518337 516770991 755071025 816020292 638861324 855159312 699662142 974362052 101579573 345783319 890451823 945467352 493965144 904872253 105854105 715841772 383930676 907330052 861249327 896373264 723821532 945068564 194964883 718911324 709531749 954504092 847189383 934715395 322849522 496218379 41779064 489234813 928335416 934154274 467267934 855824641 577010485 963918157 704906879 974322392 107486221 540398486 915809761 938796909 704622422 774236884 628161826 728471986 772344988 881391492 389197836 986245221 994879663 995620195 286283898 582956227 969924123 969935728 375376119 762560012 607581697 985571057 822429035 920574368 819993252 822254026 527256670 866434797 120884814 530249772 796316095 941723652 438826510 740831000 738861630 805211446 161363512 884742143 342485150 659417947 606379845 810883268 51225956 626247984 105144074 435814561 693973742 938943326 953575313 958679814 121227727 364456896 163414230 321213889 313166919 917283256 149642708 774175734 679687542 722434348 7548628 580796853 722049050 985659637 610725704 944690462 912815831 922339510 342117100 370728371 40569738 672828176 129130145 844304721 646360552 707066243 957899285 985570213 463920025 606285558 329758589 665842405 286386113 396841329 612770924 778196908 418363313 844206771 810868080 860309626 542821724 898184657 422691467 446919809 74839936 461375861 906907959 984880422 269640129 393908710 538334808 890020078 20175294 202878008 413587501 640046768 386225198 826361062 225830523 522419711 710452249 964781810 220790271 231572779 659477538 994926773 492618599 559863271 320787232 504895661 91745017 877450457 863379640 988173730 132370275 192516508 845800159 957340516 405553166 526157897 329866580 872989067 856119857 931639551 916771200 972827728 674665185 821747132 230608880 556759533 365924873 406307876 496253345 773795687 543274883 939923822 274286366 979977109 279361414 363664760 348851057 998736817 640999079 975066778 509507513 926056676 424131029 544216090 48944250 875876827 762607907 979557002 278508702 510509045 475677313 603736870 680837202 955229871 237615319 632821379 502963260 505670019 191520005 352741959 900055081 976634800 835919157 861392775 847704359 888175062 766952116 926259778 997974387 999904687 516473460 573249017 645982472 818601608 272544559 558956884 729332755 766072122 59820033 627822648 630983496 632911425 481906177 487962408 342338704 676630876 315882035 745806317 334506452 385334280 22726935 267183891 185123543 942348992 347625796 513664091 519271287 974928080 96941719 437615141 304602123 328769564 581226567 827952874 184209832 647267229 346552136 993506642 789540702 819682585 438346001 924884195 709160002 878839809 133704255 462358526 1453972 698141600 252398209 436920768 471253453 768262227 44844397 216708789 745812219 845064025 665216827 799691345 456980134 761764736 507579149 978898648 64273210 453618144 66383319 116475016 517680531 749682080 285815750 701596915 633068709 963775645 748149316 926852288 623351091 820510830 944030190 959941846 648840704 859078907 11487532 343091678 957606486 983800226 108559621 185053076 973518816 988713352 925268595 952445093 835106155 839148334 696792073 806464851 982013642 989400519 185903892 677538343 694248738 882175523 51138591 905098489 412915827 587765566 965439007 994102809 889239928 976004575 391571119 594965298 253148437 814785769 919413633 922976353 386025020 605037707 307403640 418528349 142660408 945501406 195558157 772498674 137638062 302603355 275051228 357988882 878134288 976773941 522721938 548185714 869753961 907665265 483819321 892219150 393522227 995537346 200099554 807491730 572381525 835838706 105640284 992817282 520763765 551135140 304938398 700935597 878497068 971158692 509634611 851808050 509188827 523113014 96535685 357201700 510049857 660732757 460511218 705652769 969675931 997143692 821672910 998691061 384867060 719852970 900908801 934245773 639943432 825788970 197287069 731717390 976047875 999573012 4551777 630710758 885961243 915131024 746546899 970008452 670712412 968578072 830490146 863091318 34871026 313919655 271471557 288581410 165369223 600239852 90176876 940466394 92257904 377288458 47601352 636109782 708140108 732024188 214025083 486377758 119493476 735330143 331470106 444527741 7446116 381592001 431091957 861892866 524900498 681063077 883528879 974211623 519790753 787185468 100535823 373345996 797783662 799869991 582984307 918329354 511641899 949045099 961240141 992966826 988109436 992024041 518245971 574541394 561868015 698183187 969870470 997339796 104266269 948218048 429878672 570897734 357985127 648548682 430719369 758085219 507012350 768013847 412479985 748606511 448348121 897929345 904804175 999468895 288936428 411824131 721285779 909542395 769766051 978388995 437161579 581552027 896784839 951179750 12974925 688820909 219850096 467076688 920378386 971377112 872557824 875787537 954474401 973271201 709802366 781532991 108399563 522105395 82805749 266495203 569661784 751284149 680986512 800626166 177143524 948005875 488885720 900232069 190879999 200541108 239299985 641563640 204855272 741004202 291509805 699656102 996058090 997867940 696451241 947433882 245179432 905781084 988854533 996229090 277604486 470170332 367862080 588076178 853098615 947233282 339243102 620423600 36095807 843736437 600399438 811726098 799374968 925958197 457322053 506497942 804699114 986288473 441911733 948879463 618657352 862380979 616369946 700116293 467683643 842128574 80602481 348966161 156477147 610924112 626710627 732152044 184778 101894162 214923252 930671959 529530818 821383831 19002657 228366770 503599134 550877733 252573275 321921979 271450703 449861608 567885772 597781596 40622069 609456839 512916430 647210058 89639308 295032726 805345663 934334205 300164365 984806987 405061844 915186150 110503335 650420509 269797507 498015996 298108325 723632713 471875144 868231653 655649160 974965087 317179278 320807221 717480021 828449812 423126193 981384797 609050251 683267913 700617153 729830437 631150293 650750286 486380472 509295493 889069872 910309718 72648960 385735647 916700110 921771177 89164198 623563231 88513963 630017381 926769912 942225946 853392401 871358891 942882077 970646983 369364429 755194642 208184270 922124094 580042409 892216908 392018040 488730263 240504614 514841107 943602119 989424118 819358193 967794724 506689086 984736579 935479268 939481555 756797802 836913722 714646140 889289503 185345032 945527181 101874431 495826490 323800793 810532158 739886712 787450154 814133508 859451728 575739596 869112092 157340068 768071018 244092947 558464725 254304775 635428553 207275916 970063558 564083181 873020593 837241881 973168732 89023972 731281257 846431342 949322111 287329431 859661872 732661506 897994591 653864777 718619980 754502158 922327723 241545501 298256407 732074839 735051599 607104869 756177513 993964988 994768349 320013265 677620027 429637942 491394875 518785966 860749981 801827274 889071883 437731429 584773275 107764457 614390573 736395571 780693586 108823523 394525451 815240464 861106447 722677653 786039013 844055785 902229943 607615195 725768542 309770048 531686858 218801997 792184129 542436051 931127702 426179225 549334894 483250360 783618330 262390051 698408088 867086723 912835117 261749108 480576680 166914977 228750369 626833678 928066073 421489868 861202395 801948375 937275580 367989332 808619931 297685257 398032817 701193190 821628149 809920402 967175939 342434640 506567565 940058153 978750406 314788513 490694528 614026983 896228886 98975005 520231826 301847382 946178786 564801553 608428189 706326073 812873378 195540359 438673213 474400616 614434590 459778167 521481130 308804297 553435342 712371760 858475468 834839889 926981984 279001049 638462014 766735609 983611949 936601005 968519431 636373603 907962422 380154569 463330612 100068563 716195535 464656090 506726096 626425251 856736527 520059561 600418525 819501649 991907827 72568175 430705972 680156720 873783188 578425362 813972673 848355333 884942629 643857460 720506621 638567314 704377713 513860266 740025637 55676764 907412096 335792564 361584376 729552674 738961467 945782919 980897079 557988443 933793876 824677728 938078660 98082200 319631356 994614639 996237015 131709849 645191451 636877569 838183771 991939412 993337459 309644936 635465084 675468379 738030575 907679714 943326493 430145901 523331865 758684209 968132472 540753934 729203577 205115424 665462921 86018001 839844954 255571216 669661766 285556241 969717158 915989145 932880876 252959065 467907889 932507800 969848497 152285475 950905859 831904637 930671568 483555198 697456341 65393526 354511924 537997751 872078379 300500693 815737579 8396697 83874929 980036759 999298524 870440672 921418881 833551398 862222896 11122677 433229255 674169220 939122610 604136738 700016148 908123196 909321168 542435568 849116137 600581160 637740223 256864246 567496413 456047914 802282319 724814114 893995615 315358675 822933975 805645696 974819220 859944954 956267946 928736151 980372712 385704295 816521708 839047447 996815860 480126213 994209214 783763764 974444097 762111653 983018655 307444339 389029298 709433048 798355970 963753261 972670824 412814858 536271970 178149252 892470417 117902474 908440561 121116694 774280996 497493229 676563761 782200576 924173338 211726855 340246140 368539676 719180066 68597292 562437320 569171603 866074778 554872763 752476437 594777014 667547008 363470626 796323166 411796402 994462362 996938592 998434643 756352341 889363094 99063940 359094936 431760992 457081801 783025373 914617380 355515131 520386427 12325989 639364647 329838312 396459112 875872987 959508635 699905914 959099311 794147985 839302448 399868861 857640629 308786282 548390500 518587267 902843014 613180919 624495114 902112698 997545985 438002007 886220244 893361825 932306106 705983005 786372973 946681275 975376828 46587429 877277201 108873293 517105505 624824448 680372752 953503695 992149885 348034368 440253885 393719448 690242517 917414780 994252664 114077067 830044255 577854427 984898933 696223664 855067075 411380510 816433804 835719448 906655446 684653478 818946007 333378322 491113633 254532885 499739013 116136711 402520254 834984213 903278260 687460451 822959689 204482473 568117533 255898056 459292579 352732731 729931953 734710980 760194752 876615331 920373889 933491622 977824669 906600158 919126234 97369407 721695193 366148479 504149739 157067964 375822783 267783800 413514145 470172107 811007491 507845455 962188671 682472496 697941610 547329862 773996002 231780661 246913269 263584127 590840737 498516670 946836186 517234016 706368646 92821975 661736867 547927063 769008443 446473522 571770785 402332456 749783138 980835173 985327771 166897764 907348693 55790561 411128591 689107343 705384805 56110366 397420553 291710783 584361764 816663181 823760436 111045411 511092694 811084512 865480416 550147820 715331163 149104551 456527398 436633643 455280124 381123387 924229742 388922612 655474962 853571861 989971171 355796226 882742546 749805292 931682041 389980238 685193209 20532535 154913802 306549629 937378471 935443676 979867623 16120084 474593912 335190450 832372063 915444335 968338763 637739866 964112379 36934914 137560768 805343403 910937310 769976133 969515282 483160122 664326977 441682275 788836225 794483235 888903382 84197473 572994815 459175729 484766718 292589803 721464163 826205927 979056470 211208650 669035008 797170736 810656530 224824125 678400518 50797210 241039307 385859335 848991602 255887793 442047828 675771532 924150159 827686085 849865313 176987096 584147609 401396229 893876989 289764699 893127061 464609921 551542114 820001782 982103061 422952710 473056832 487470192 600646571 255417593 743091596 531705449 596280021 22111524 818692227 709530460 911662025 554690147 671058559 180906540 937905573 209156429 519589581 162331834 429895181 449871387 644558257 957872910 981504177 594667344 624483047 671088588 753939984 296926681 965133959 421928216 608782666 291517568 408991304 879414911 986630740 709505268 975357636 202175174 362734143 449752012 863484827 634333969 709257776 857886111 948063213 894617966 984484644 107765301 285949276 148483757 500397977 119657189 627189930 765009408 915685809 853495351 957075481 161354894 281267338 878583467 916271660 207626492 996885286 129429958 544814903 446922122 643273991 236232871 374553003 91566427 274574944 181732483 426887032 622384057 917667525 196460207 736777118 178652895 864007590 873039346 924615327 921747627 965490754 763278445 798245169 865036757 905567771 685183102 718166624 803030253 890899935 129926148 778457436 462353794 743856545 412169622 558342908 27441996 867465142 51433622 531705198 38481320 904575039 175501171 210780877 453955161 520905272 118564878 451898321 199548099 764546499 258003504 711036378 449636456 583364513 670218002 917943124 926208017 996918537 311462146 653128881 947749828 984112943 204881231 558622146 172295190 260814366 147619743 490358776 475941333 771006720 367762706 821396700 809439432 934604448 189933345 309868536 599221797 760002663 143777303 547098158 299406218 504817161 69705321 664243916 501264979 831786847 379322606 943222143 720713079 950182950 894019833 987606675 501110253 719559546 935561744 939181813 292620169 737028426 202696764 452757775 576115234 757264248 706273488 855695475 963830500 975101693 632436876 846764031 670074430 939512079 540673248 939931100 971372840 974737793 284597595 501553701 159686699 916086242 219447287 292284183 401477298 616218648 677569408 782591315 677018424 835194666 424575683 652019243 647231689 993711806 514711137 535980209 606757740 643869307 913687848 956834754 405900058 996554061 961037829 978363480 273873430 732426812 10926508 702559154 57357700 110522410 336366392 932430958 538878285 700203184 936824042 999176887 895813953 960282135 248294667 278238332 88726375 148785730 757710677 860076523 9069588 317974580 162843124 568317526 218988838 487745988 236861995 402534356 899579019 957467928 791922438 936982269 756929951 800518531 108937261 357872643 203407211 472898911 446742126 790004902 90066846 600890201 231208771 421613057 521964601 859613912 780322595 949235403 433926457 625009041 894829663 943246630 733516442 950548265 963667971 982842225 42644078 462524366 540315240 608288090 888164512 903826790 806287105 950991081 881800250 912401285 358439816 748284107 31793186 247794601 10575832 396669590 824084581 995129232 806260091 879897409 533319691 754453569 831679380 888822060 868582802 890664661 981335202 999592701 515215398 869181948 158045522 854354871 30180469 892556198 991271136 996877816 44192853 697190269 721048210 992913679 847598136 852995520 945519543 970256435 279619603 713356108 503126713 574609584 558361654 895885487 718788651 739740073 538064361 602636676 298109227 512397125 54595459 800574350 699281133 902797411 504619724 829047286 887045479 927882845 4286000 541098378 702372697 862965709 316715248 392297893 971588274 986439002 158959386 651473738 694682557 911368313 33176033 542312148 580640678 660246663 682000120 800848426 603424667 685511959 320406069 985925847 201745105 643979116 315503829 705947860 483773280 581276492 559628475 785696158 287591866 561092649 588762430 775452093 681657285 730846902 481848651 966498277 258163498 278921360 656410209 789966354 281164502 367758308 904632716 912449717 105422533 254940729 733067274 784858034 127794854 809853632 178257476 847584457 267669945 889036635 908980515 938290221 760920798 947297627 103800736 762024894 58679270 200151371 57979800 397782693 731602720 816167497 532053509 929322295 591880415 661910532 134882311 922055743 949153873 966622005 480542831 929650259 311452310 399665505 95402351 343226621 141507040 860647841 577596139 732404809 83921134 543972526 728680237 755109832 894766824 946147844 782723063 790141232 884935430 932538296 821301138 975955691 209714793 894725715 93875160 625394322 939028345 951600345 471551943 872775710 558507678 860220645 851625061 860702918 897576769 958800599 46622670 901890447 45017011 635664395 719188973 734245820 589362073 676545048 940675523 962759773 317065648 373454986 642019654 878370262 198076774 517377020 477659970 881293138 636802910 708332904 819619150 980178124 837616928 970724305 799718993 965643995 706278939 990601725 526916486 867124098 734273997 772310305 451305464 512402467 68952104 760474697 587523386 780487206 58891141 137519137 884222885 919152658 499760276 724811451 886080397 933524436 919864247 961426700 843131718 909111686 863581600 909778858 706074911 797085254 167232257 323559200 505468079 621987576 385308143 976300486 640807412 948344926 270398651 777552681 486224149 908713939 584135983 792601710 552018207 616322228 313371575 441165216 514204832 567585445 834802532 911564348 989092270 990177482 82834191 931385405 356476394 912535654 20213090 439570375 244640766 875530210 539495332 787108901 157641563 286563924 521895710 926325183 840088145 866245389 547199880 982595874 187112566 512039418 54883184 420291349 455681074 680917351 819893353 822299559 232547599 583415668 652439953 670423205 215831043 272434112 324259699 564386648 525220211 983409405 84447896 841780478 689488413 901485220 509684127 811575562 773084520 962713084 189949514 933498524 501118267 615237461 339305493 428146979 667088011 899772994 868084051 974374236 666819061 711799879 9901499 161860263 379277998 382162128 231829541 373419224 307214632 413901142 602801182 944767488 305299332 450396540 102900558 637181049 828315388 870918953 229176175 285171886 335605190 681395425 540733710 678018081 982747783 990624105 474919754 983965107 766565803 797322728 13159207 393697435 390241051 406106144 124883620 464867616 632920784 910683550 655464724 991572560 461877813 466298039 418784460 849906157 542482231 896610204 527339335 823935132 353474109 437524511 838273242 994050619 615196534 923434365 907651631 968995080 273985361 709388450 993575514 997539419 532346000 619544935 528230495 796978065 606483895 818144807 378726292 929088371 266624527 664737553 681670545 912286750 823744063 962880445 766965936 825773235 411880191 743566931 167661989 553156215 885005762 965869644 631482900 858208461 303841592 650685395 476426274 728785908 409111486 432219057 612965728 829333384 589089255 946307850 565907542 900574763 510595653 599807014 113392239 375985494 745049697 931069912 650762511 825700341 89877651 495348470 404302546 634900271 367162806 658979021 830908386 979354827 954375647 977601811 72375332 321436063 551841266 652662164 862411548 957386114 930708144 940169419 931851707 988709852 852971651 994392988 525709040 822521054 537935620 542500733 280787971 878619972 268584898 438237175 423252444 631634053 649527194 804871137 698585051 743887405 531851696 674331503 381443926 777777755 893811232 903734850 109180061 731968989 967269393 979358990 478348935 890062389 268363185 861681924 41065819 178208093 178192527 602657511 354537216 685817684 56625390 719234606 192952439 962201444 303877811 618207989 247724410 682340972 566703601 806838993 169356037 545010203 207207967 697997357 330375411 383373964 304284036 693080704 609893226 680320510 956542988 975208605 567484274 777170068 993110917 999385950 274501248 660297309 811837088 901015812 959362870 990128985 245657155 639993846 556821821 574181491 320125198 823641247 978528917 982553480 573102226 715377545 29830549 310478624 714199159 845936015 914496448 919855412 689961064 742698708 182753940 784877622 923781462 951463237 493927418 519124446 489103486 675748619 964174335 967232995 787245130 908791366 622851335 745285223 372234857 376247116 116198086 173981085 280811585 606204807 988704474 999370863 97759600 771029279 327765058 426937042 3670838 845566418 845070134 851024832 878474793 959926243 381336597 916140342 840630860 894511205 115865430 905163428 903998168 921609901 287529614 512413612 141439115 404001628 185546859 743776630 584053243 618643321 611137763 780889514 342272473 483668609 142878969 378826693 402334569 586328883 8501292 326758126 317437402 837066025 108747902 693339848 703525288 936564205 51165497 694076101 429539564 537634117 398760965 650309981 236509609 882237203 8692395 799844961 34378323 95193304 497419058 520470281 210682024 264053784 536812893 858780126 907947995 948672551 749425253 945374863 596666945 984198984 95684721 346671931 92932527 569429930 777426029 911530523 335777982 566450020 614152572 615861421 365017410 408424898 29760204 923831390 389486503 409102612 600344679 868687579 948414262 978552115 69437433 294733648 463769382 600034010 799037140 956936615 801394185 936617344 751485440 998785354 782935068 908417018 192943222 740264390 886353189 998884915 8687908 584209767 275315173 829084515 522147556 940055246 114941322 302164001 806027012 962399656 917013828 954990180 265368008 395832444 588353329 653354547 172382691 501303905 339112335 352852863 505419330 862174920 145686029 388322280 905137208 964008261 550156562 685425531 373107956 951000252 808073068 925814583 947323959 949099931 313145472 912042715 217029744 323903877 511157378 799263428 934016758 937607217 716891640 992540526 705291861 837982638 172707499 764057521 742011167 843586106 890424452 958813325 80540578 559081905 194447142 743447109 18673327 923111316 440827479 493795354 147775242 157728860 399661374 724697889 379369653 546783318 409674389 535858034 786747909 974414111 983862202 997222013 762748072 936144101 945101054 988127049 556458306 586920106 205023103 913806071 563851055 832476962 689699716 904384576 911429953 990407637 577957478 895573877 183603286 355195462 469174200 586375132 951132752 951986811 214383304 497354974 568658024 977791960 564413686 996690846 681930648 721244741 981262622 995317148 831136034 943425859 258196809 981286687 58794354 158053988 672789279 906519345 964737876 977902432 578439791 914976444 849680540 975631427 988140537 989256166 555918066 881637515 615020380 804738006 494748696 949290162 682635447 812450502 277426157 341249386 341442841 384450694 85397140 921151266 827489473 969191098 911990800 920470075 950650825 970472838 825197749 985826031 788296270 877343732 784284126 964885474 129378667 216302818 484048032 964933259 771073837 913387806 229281332 237270340 928058649 951095884 291371219 896548474 799393845 988804365 896674037 992603157 524350453 680341560 872983185 890982505 64506264 798047198 50652519 117413726 64435370 381185638 413047630 680105870 636009128 636530119 524607275 951531842 113346852 819665219 638716893 723224884 959920222 988643666 977680259 996310221 191913513 298453253 6736867 615932144 815770395 907276856 42676815 384123358 203892718 865273571 858255996 910365858 29208383 961885841 285018608 809469429 260678162 734400934 209516296 582345749 814976058 953412246 465917240 474242621 753499060 917986166 616366269 971055993 330122623 633054065 84633909 809577877 841230391 973012828 961441349 995770746 647213745 926283341 755558839 948611713 807179409 821240684 69414530 370926204 709003571 919752438 371189775 898237563 360394312 870100242 92284210 947141227 923730656 934722046 546961018 934010198 454911395 510697452 737629897 752975846 199826127 861379963 942678697 972638994 453493444 888530230 32787468 390654864 456570491 470010325 270943065 534086201 835784022 861605413 87248137 971045426 505398599 989311801 178233911 783110908 793925793 837457200 483066105 544743398 140932497 954271001 434867243 685549938 354373556 499034642 552919729 711338091 816884167 907567675 641154404 934533798 322117265 988783335 693590446 925238630 900319690 931562174 271742944 542627889 3706867 687403941 397106886 878805759 730620040 796916988 752613331 965141282 62463514 706675042 691988971 704263160 328713707 390784964 527886587 650359741 419009179 711074474 355639323 973633404 607514319 966559606 238506854 323392346 57482797 992784744 434779605 541623564 755754957 882125065 1103030 575421129 240663976 759433245 775955841 803995651 919753924 935880359 256226917 282072402 152164764 384546185 611416382 726347876 112567963 234209080 186114833 722569327 197784029 569866320 297920210 993818596 301509447 395006061 734863984 963275422 403125443 883557992 485465093 810092917 662045455 712526478 737944995 746464272 843009658 853605025 459105057 730016362 934004918 938263574 872130225 997689848 217363089 430273207 837116132 951169801 375605012 565399973 406299535 946310655 455193532 491435591 139670507 179677009 981604428 991881350 401627395 461427328 40951861 384533697 84113697 898366208 912505920 958144690 440060113 532713934 193279424 254736158 829550881 855754058 964400417 982165448 600350858 939888279 510813828 738112954 930796293 962619765 436710062 757471512 188457646 699298653 242746015 311631585 54126005 158851546 526266321 728580939 965680048 988790003 74909018 551615095 795685879 818817588 628899545 760179109 456552103 669496791 482654809 608407487 848031312 959350582 10152197 17771531 858266974 871788302 187422493 614563475 625270842 723409030 25765987 858222344 971717472 983688249 477256489 904709305 941902876 979531827 334881259 455821783 408659177 443562859 335938969 647054067 27310880 112590597 392232982 984211306 243277717 482428001 235462064 712828358 37702708 428329607 626436538 688858672 754074062 848374818 403404416 610274782 954613840 976114734 788124654 921655148 33974109 640069041 916794436 927600531 329827016 642029778 124763430 965411120 412905516 961045894 944280351 999261158 820256271 851496575 282255065 479809104 180510642 467069123 747438966 956916860 971474260 989670545 248182653 478352564 461004131 886210528 3915734 302482786 638439307 706852131 330000798 479174550 761644392 829279306 52368194 708940784 181422862 287921496 218975189 928548048 683682844 873129092 414034602 619582795 962941280 988240848 726103581 740784912 178197902 608761127 91812724 550158282 551197219 827086667 290260154 685325580 59034000 140285612 406336523 446711397 155186978 197597335 558320937 883683127 231774735 541111064 787731663 926703522 787383983 864681067 705296268 741799937 851468643 998466861 700340017 824826725 68753438 573391807 198318550 501279478 369168104 886761059 451253190 454750648 249471399 680020809 33323527 521997475 202144090 451262593 508881841 584482982 99960317 416726198 958472765 995455642 452158597 791716224 575825121 991841663 489036005 835377036 858903957 963426000 998762310 999423236 944532746 953289777 157322318 855338127 42514984 333205855 380283855 438313174 89312664 847449070 423480711 944129840 714042689 987226972 110957640 367254042 579116691 704554482 924899207 956609983 946548 969210485 89655725 260382326 803140968 846960027 874922147 951451663 489188076 979081254 141335786 339728816 919907900 923464669 745395638 993885716 111087134 383787536 528795682 808427618 618100307 711079525 171180149 596002945 999973357 999982153 592241743 595114515 289376405 926032946 964848132 979714967 969507160 990941346 435164014 594040086 171322590 305718723 634610777 753489038 793175424 880367199 564753050 720307096 980511107 985184125 737906715 788259858 536586231 560296169 717970604 946768413 117510886 342158090 930360030 986636531 244063360 849263054 698579447 940083863 16181447 768315065 159344049 514879671 438963739 805644601 768997407 862457858 910020793 984730613 877562357 892708733 169062360 469999244 981878939 990255493 580178885 793718392 288975956 385883814 202887000 322827934 742876115 856561698 480066144 996126111 273258320 985608418 511168042 616201133 778632792 930936621 841905825 988544341 599691392 636799158 807287959 932287076 154747690 690898733 356217769 574642205 77318216 624401588 465883052 805099863 161308032 790343556 89391092 967362499 714922859 765194642 463601049 693931710 580803202 762893808 312222473 459020701 792537780 958720788 895852701 926221651 342924318 405934659 867829939 952867292 817695879 828749977 589402856 818774193 83444661 290745276 352192953 768102570 741494037 812787774 821290858 976855203 849879510 892179186 144343620 828011249 172411664 787050601 809130266 832210849 329093402 555959012 857681148 997241806 238168480 460439326 828661867 860669279 882531582 960833663 386834155 709410548 446120756 724111605 738798174 822686310 497014320 726847857 340051834 978517417 735542560 892943230 586351640 811418243 256695442 388102324 67434723 559004104 512559759 512602719 266149751 550508587 809971486 908849318 463061517 583425792 768244868 998469514 396199339 655822358 37898275 276241550 621621980 910644453 590927927 889105703 592280327 897942580 518780957 611240156 373674369 427045034 113316431 713401958 840721210 986298093 231193105 794273838 752679209 780145481 325774963 913662236 436851724 498409892 441873837 903064927 104671175 683510354 925696470 961000805 726492558 883263249 404421745 976952677 526764473 613861156 655625866 790343845 864434177 951566164 670318610 971701355 420839112 765175289 410330321 945774575 273076644 508265074 575143413 761538772 982533321 999423873 289640671 406842592 262530948 681461683 81410395 286186556 913575449 943358721 548221374 706910665 954898980 961999181 589376348 953732829 257657451 670064461 978569069 993917834 712131336 805796995 820477658 915359580 12973973 544035954 200137394 510331141 816211720 838598665 3452768 764094686 639871705 720268407 335235393 338218732 693691687 858027780 260037076 898793349 117630275 132354977 459204788 563093416 686785493 744862431 427806614 897460800 256871703 308499628 672802735 719654368 816960323 886695710 111416927 324349326 945565349 985957380 449306160 478961265 301114914 678858910 946479252 969748402 90867535 458081074 897819120 990092669 328791415 490886598 776143642 903474431 320265141 710777521 74231044 179959672 439484133 462277654 887101548 930099534 658407718 869085465 867608568 999457539 380876048 638376796 623249486 773031545 230844287 814270872 704292901 768791535 215629869 719057937 655874558 990199795 115110159 480102814 904890174 999581865 690443042 877629297 275321384 766238505 469580369 680523661 763993258 784829242 474106208 870240790 494674700 653855405 556233091 814063781 297944139 380262423 480432513 701779426 481059273 911377349 127719331 942768301 684348762 850721195 681057696 903176190 394686781 885062935 921604531 975389930 537725127 959955248 881648789 934039168 614116069 615089440 132393851 248099384 616791813 632658818 781816325 912342659 598458155 875853348 705464008 858979105 906280825 972520638 262714518 946049501 698110851 971021868 279843789 330760098 825974193 977305320 190403386 369684512 838304452 955958914 239128816 345469057 53763057 288330706 892474655 967908038 911363545 983250993 682492278 710600874 618992659 678050865 61776876 561748849 744647667 791219211 214548913 869428523 954038460 969704675 69300834 122933194 947295428 961051069 686881127 878278980 637430613 741645483 755165527 822581485 708695224 782211638 124125760 207870931 688727132 977193867 875334359 955360266 537638211 820600385 824587173 972104833 244318284 482512131 677396254 944573401 144211602 869000713 222620657 970711349 927203293 938952516 878235957 948460087 870472080 896950304 556806315 804765279 939731815 950897817 585099037 689063532 168645047 181127955 995224483 999171806 466889942 899719338 53734566 221314217 765876088 804718369 494043883 864898780 143461282 420739191 3582368 263593816 531535528 980120805 612195093 614903337 317785859 855763124 857571018 898528384 578253011 778343507 535659527 839254765 901405058 919627714 201313429 976343863 325789402 563863594 387370077 549995009 703211294 975970239 816715430 980707737 100219768 373984568 952479354 965630189 847660847 861174141 235758148 290744599 850249089 861048570 400202676 531999952 166881457 571339762 869395914 937062661 573605114 786452123 425023893 653783310 173874006 706922510 237785639 478006740 863663062 952425970 475358724 580608123 515264567 976247482 561199461 639930955 242738318 451461297 688854404 776005969 323247855 386907248 161033711 571605490 230442776 708757126 301090416 790647357 334772957 659809305 895942681 918742883 222911397 310482056 670987536 849042122 596785270 922052050 572829955 908740498 186025724 248198804 275625476 590525223 565970480 746322353 30228176 196249886 267577061 372879048 625437471 858128008 721057278 925968305 44765408 299716848 303696495 867532315 401795677 846238327 437451742 457828867 853253176 962282076 335295241 749225571 127853450 711079673 335568843 729811338 842799036 998797808 681538820 726151601 165335962 725083021 153833729 927196648 92836209 169659199 409933776 466244810 772847194 871003583 999974359 999989086 591797940 992993804 556666074 926811730 491489688 553230424 2012250 648763497 904201918 997431101 754788655 980797646 930722020 981689333 670313225 999948348 898786121 991947409 702683015 945343813 812775793 872032650 629843341 705029300 492211574 593265826 726552976 966169857 294022699 989638189 562708254 881145727 470517741 933257756 294565343 713802105 6442328 198092173 977239515 986165392 123348969 361874211 859199423 922330094 495873028 885654443 455414898 677587591 675090176 749196646 459829186 708709461 210608672 994069899 437629175 853183471 871182349 887092859 466049562 737696201 100520415 510336918 971610270 974859989 122642551 146372132 793728341 838718649 97006781 541344418 818853586 884127364 314417705 442233563 623736687 756552802 889024261 982637357 563603968 598776062 211702163 774031874 522983399 563387810 54839377 815971217 956257565 968514733 724010852 950212046 479552075 805246249 152379930 315253077 644976858 986685736 631348422 671220975 237202603 845867088 461233023 621652363 720002527 986336489 988919798 992752463 403886718 912631277 721321071 795200628 409211731 471033859 636447970 898124950 105774365 511531527 136304011 270086701 800701187 842020625 136120649 863372222 187241910 378381996 955054133 992819397 432596125 736979901 962765054 985930423 883245843 949041289 366679642 654416577 184654898 717548686 236082570 817085455 489478574 638654005 804285578 885631433 850914758 958500010 542747292 889850030 635415190 844399532 156470622 516889454 139930653 944062015 252571520 387906252 194566310 273001915 118917930 550712899 432771295 879427298 896261653 939967483 67785551 675934988 641610997 782664303 647323969 710681071 118549911 872346185 169505360 685339415 921234164 927781498 485468854 651321994 902250681 916707478 47682246 124763262 498631561 957035495 308040734 910505792 591027672 702703612 353346588 815965736 494439771 549180235 753999363 810696870 818519981 915641331 815268119 856977223 201148343 622540153 35627800 425142132 448522728 968259429 419316768 806364253 762344398 818725130 379600029 910981674 382979338 915256429 251635788 912815498 783965294 958008124 26568880 140366651 64257428 569923914 677804430 804719706 257283922 373729442 349679884 819351052 956671523 978116337 294200448 450976915 547808770 684511290 969973683 988655409 550191323 949772393 420103288 694187553 274006015 882351856 62822090 511096100 24448996 894903114 334424578 875987031 291115598 356264508 60776385 369669716 986908000 996173556 127213123 624555746 579371169 624920046 43989564 410086513 496581679 860346194 600863424 891476363 968897012 975091098 435916711 521302359 251524137 625819198 752600985 944920568 59613541 425932019 94433589 242422510 707541470 945535205 247895978 754252603 786786900 849477546 438983740 788360576 791000651 872739056 270871882 512422646 681233827 914004960 470027721 564995208 994635383 999949804 915709827 918654165 280086619 475285410 620576158 843245143 797642353 963350676 309129992 665293379 555206338 610717660 797272692 989736788 956458641 972621413 137875644 589724119 630651156 811379375 194676647 344862208 608421708 878579350 446767529 783116533 81127269 704340775 595913130 803983941 874464485 980949647 613633481 905320326 178586849 984111510 350728004 416670276 531223559 540520324 180979633 791754279 65722403 938896972 969348878 983231784 602570742 776193311 88858893 366472332 274859813 422289250 85854265 313660594 506098848 863351358 627637592 883860472 963709811 996724412 378938106 408806525 489799089 915273345 538191190 967003641 501057369 714260590 997347150 997626784 105002229 861946373 663349165 879814219 171254851 821076255 505501303 855319924 716982891 994648481 982109444 988096848 615493875 668396384 883038961 914578550 909999434 910880870 160247321 994898915 579756213 745798139 237132291 504421068 52357712 837668421 777015058 960570959 484306268 925421280 180435038 234864099 738847238 793524472 984545709 988522425 743699814 922905948 482537673 854360227 575110761 719948729 410081276 790188750 475578009 588290351 765935279 971139716 468630654 871055091 68081251 83524309 173472000 526330314 997899082 998902742 258695006 687190686 485200254 539816563 353472553 601721321 836337001 954716954 878359384 956668641 740155278 911762778 5730539 514936019 737705694 789961863 267274801 629740024 151704842 351335134 4113468 422426906 385095144 407406182 558728448 853251599 485513100 614870500 495019327 739379537 593629867 768679910 762819769 951858788 544641270 669325178 344278762 668609989 280229826 694013132 320055369 491824386 677391016 939128678 482243585 518157077 138479249 578527546 5434725 193226060 741294537 975632473 171215726 916247592 333517403 996782397 289211298 385729359 2953936 142158519 251726571 335369031 402743883 795348476 914805242 969257079 778018980 830583827 88759440 936381958 404910795 456647961 894567989 973476224 637984191 789049541 274092252 552682059 445826432 556916565 207466198 586202029 228805465 477220975 695653095 791554095 246271807 709874215 373811802 671330266 401704898 563630513 899491424 937232620 805649068 919677609 714845923 968122450 927285918 977561193 799360110 858525452 873642251 942071063 549780320 985722994 551894975 848425301 153871410 724893964 310683952 577431139 17596917 309892917 746844355 763546702 484661902 814540948 156280519 582982820 46506209 912806005 130419455 959459266 84802035 214038468 221286972 857341199 998443622 999077739 847516948 847948551 111680415 504112216 87460767 462678188 536474993 892884441 140028205 433458447 158766139 794853208 610279797 797517166 294525869 924295922 502171040 963815420 497985227 907394481 16465247 720962808 212220553 534422206 553106692 823610104 928974818 972775604 663216214 813104825 968207458 974468408 817390703 834906226 426828617 607998098 145423346 694269346 184520180 937211562 761839510 961229539 340219090 813332409 760970277 859728341 817162331 882684734 970630072 975862196 88883878 542950044 378664272 532418084 456772903 562833775 483854412 786780426 790285732 940629396 309000331 958932990 603627074 986551392 754611440 876736620 529555795 829894315 88892361 549172243 16701803 61188523 305966550 523370945 687538245 783704160 946505325 992212111 954305749 982685826 955514984 989220286 939570794 969543695 677736436 983608182 832501317 864361317 852648031 970773782 362408173 752682405 714840595 847521482 436427945 474442322 39519349 458745306 858576050 913476632 447280229 895715897 538135420 745625546 675527519 693138716 199333821 596834288 295366356 829987366 765933618 849913817 158897030 619516780 258098052 973983174 91976062 739007825 348505961 816558484 640199518 763108673 153685328 623617076 943096456 972689080 814833095 881144945 459316950 674033810 450842944 711963867 216077745 800966912 97683404 506548374 83467868 587252903 766099738 892235395 632984928 727599894 714689784 907619707 590270608 919400107 350896999 587075095 545200821 854282247 360185750 567952127 67772126 264446296 322853586 360651979 455784589 741049910 669916820 713994264 774781961 973937100 212914615 797881185 854786821 859611067 492530894 777859625 100891806 934330365 137088525 775222973 911222606 930680376 717627719 735951599 920474727 975946627 746701560 782053394 654211800 783853081 476596153 777884281 699325033 802307256 346554236 789309216 788960850 852015178 394375570 430496247 488335689 732436406 978445323 980193950 681204437 938461755 473022094 894313466 294107047 606438175 304068044 937854387 82880020 750148252 107821776 942660775 625847797 691684181 344916717 457832336 50259326 666679030 686401046 702220381 977734076 990913014 764999671 781221691 480416323 838538655 936628971 937884383 375119212 547280517 563829340 598531753 345184085 800714013 982303649 995676705 934409153 948846643 777023133 825761742 24230206 71626665 8977779 594967007 796175135 814278656 704116325 836777381 83753932 736047266 731933481 808692869 288214905 958818564 500609948 713027944 1606064 478201952 507637614 676328572 239219805 764099828 977658520 995313294 573368468 974763001 682406269 913971175 589433602 620168070 734413370 982718072 452510048 567181165 470550111 501744860 889722680 973425221 852818271 913561839 604299541 729920123 865233709 972426687 554833050 951135394 99905472 278130909 991276397 999584493 913094845 987544476 275599959 441808703 910086658 942009680 929840411 976160020 849417205 912133134 663915245 902199532 741128644 860954226 444731258 568601260 538891553 963581756 922455239 994483175 649294536 816121881 901915106 922240753 341642287 796488248 217315422 386870735 322311015 806642601 651066392 990758753 520471643 597214769 354127891 551099537 473838474 729778656 65416689 603650871 120130114 189078132 983635182 992501120 70911444 187057501 812089791 930549260 629034133 706293115 125172106 728039210 526122336 611989312 818488473 998062602 887576758 903367857 395844866 754197029 202080660 556104108 913052436 947986099 297490445 954982481 165320089 966166192 177721667 725998614 994717492 996294065 530727350 690336666 56303927 482742747 981293548 999435861 792815774 998563759 800797285 960664817 295034869 390948415 703906407 792659155 419472177 775809231 413686289 666748446 878511437 969500004 33926211 761957510 335967969 797275971 172895564 600423277 621193744 713107309 107203892 855305602 677644170 770004063 535139030 560891462 340530612 532639333 457949962 857035293 533948222 562361492 808040574 891195983 56467104 56661951 48845226 242537904 841744196 887747413 239529738 917462275 152741497 523410461 893925894 946476812 586852609 976743098 400613487 927659529 40641960 635870241 822480741 941276725 196175043 939619094 804762534 847153766 682533129 888269168 919901087 931401028 389429312 579682442 438177988 515662481 689570594 777158172 274492976 398473733 838651410 947083152 797201808 837301776 905050990 949789198 404645038 805030387 795328705 871266731 888523780 937781615 218036507 901855844 873187044 983234207 332484926 721341626 1737857 481524251 173069627 845908523 435555964 777950504 842712549 977865095 399553332 821739287 327269644 853690481 973933681 978883337 12404119 188906498 329228925 927870641 300952620 806614293 365329664 910504335 348697653 575697532 834510887 945807952 200583619 567490408 193511129 747287659 553796016 921743748 912242317 937819764 173527167 634320381 977721493 987667226 319647761 480958779 650110644 963442356 746056341 960921744 117106598 997244553 519145410 725644306 675915442 989631160 410192967 805309927 373251955 730079101 585599085 691981270 184622178 551457328 851176671 917626926 252805274 502894397 386979502 515598479 472815809 741703463 950351343 950913009 312885216 635696260 378107533 745254715 778208342 988053157 75295501 887910625 889607521 922775143 600734949 660614682 445761163 577945818 582695406 898160222 559387889 965223096 703790114 762035173 94589923 528562926 186308985 618133813 741661251 903543074 378192640 443772156 765827588 908997328 397315054 654118754 215670870 256302175 510677479 540707217 298294694 361855574 395500798 404133156 17573764 845377809 310075382 366193866 77512577 701519191 617961023 774140118 582003681 970546253 540801210 830061426 179088393 800051962 127342356 352615241 410939908 699066365 805176055 906828211 254208354 958441938 297120963 315623226 632447755 714074861 857213320 883778853 645270432 794912245 679568552 965562433 514906769 663838731 353547254 394450092 550972937 869476126 519815624 854820070 289522775 797112249 890920886 963392173 488034879 825659427 216120565 482972114 226649521 369333631 298330229 435750979 883209376 979583171 761651310 917029704 902607812 906590080 146822307 701453073 853470851 896165331 526099776 671749043 260040273 842923707 602591631 761376248 272187911 755501092 669765885 857599924 909346099 931155466 220981532 409484999 149325554 494695552 415894613 682520935 167323269 170488369 533149880 736454257 339483994 903987562 1840746 589276452 997566635 999779015 785432370 845765621 4043606 827897140 103919050 152350074 508610883 573203922 354417994 787764661 313419973 812096661 827290777 923113420 766028339 809473356 226039697 576631148 398295113 829440032 984783779 996586586 575977782 764315795 628261923 938164805 985134556 998089321 505412135 627038977 482184177 679586610 314087470 623009046 494276389 756454865 459933109 630865037 469582241 497731501 209026180 433041787 128324363 570950720 404471150 885222363 465017253 891241478 249693051 556657082 100113162 440475221 913654546 999294018 26084608 844372063 722638889 886781994 630896836 951650266 154933570 995008411 338195868 987931818 729552749 964834494 320649190 797683823 208322339 385225055 966528896 988091504 103170478 421144190 439430541 727312731 331781448 585647615 683852416 854033259 359775228 986825116 685637594 828109808 548812437 824191489 10462400 124793943 637501062 946206521 302232304 353533912 123287694 556641690 110159761 573357619 823013966 855182160 718031966 817891389 537827929 691775055 638759939 866646290 228848894 332975353 199404034 690961529 192232464 266129585 66316991 648759588 883658249 956970669 321029570 330455724 406621527 786805021 329161156 709855214 551457123 617526625 525260813 921492659 842840009 968111546 234057377 383821296 871457901 918724683 888614313 936963118 172186719 432650954 829797274 908443769 447511656 600148070 220713886 755479431 940301646 961871778 810202783 944686794 657971264 683782933 688169053 904473343 991087579 999992004 239886048 482255855 114577161 661398301 595382044 804195545 710337204 844143199 160005153 578092557 588119726 845834216 550473498 787719801 202557987 288451577 874410761 988033925 155865939 265953777 305118028 530566680 649910498 712639315 405467097 911834026 349420567 874687092 920279 324486824 868326509 992380254 444273709 590005949 865979993 973365849 146622169 495228278 463032093 790555305 686306931 867456923 371535508 730167285 186240621 683252805 374277835 782128627 339306670 468515294 473507098 998432494 288766736 511431993 774663094 919433542 541775090 781785725 636521825 920955550 591169838 613000118 631870290 664185449 613716397 840711053 564023025 685269187 619887879 976288703 403747942 584439181 195334026 330645677 685402979 927411015 938688224 975892611 188458400 498195988 353588266 615740558 51189935 898148766 656002147 930873026 148740437 748281279 860998790 867503732 769138148 794170205 256307304 306323955 497364919 842299165 637732965 698846873 150018539 987884034 927140871 974202090 804910714 985224690 605874705 690833426 480255860 807608824 760194925 957828191 576065125 684717445 410689639 755264426 65661420 446751369 707407574 974891873 122351300 293345212 604830008 925070905 33261871 81179600 439439713 799754903 784682242 874373880 83698783 533338884 560543879 990967680 810338104 854842647 948970075 970109083 100821567 940241266 944316806 979353974 953025981 969324965 922371938 935521497 366809128 742179561 166515989 227907623 607628983 955991464 690431779 839766720 29022308 730062090 647088134 812922876 343898334 573039671 817099118 828315288 588673853 682020778 534708567 834169712 364434050 579843998 399340808 490838659 938838470 946547196 335466110 946854077 154757233 915357982 502430495 663190753 855525097 924570778 719862071 800839053 346629566 500229039 396202275 768532477 197980462 275265170 417837629 460497612 401330541 461808385 422356721 612620469 408566553 980302729 65518701 214650426 108725931 246592479 437467879 918010376 659884309 696641798 434219593 619820289 387283666 387346669 796763568 886992938 448446524 655013615 422681380 981160737 851530393 939886761 713799922 820525054 675807447 835280615 570187497 606429483 280434447 294448831 262897172 884407574 274624228 594460188 681125174 791456097 563552484 874771522 464578765 735037904 606361402 706773800 582780590 714217212 611149805 653368316 749406599 754148956 559890470 812859355 210745066 706247329 85270123 520263244 614044750 805775959 297226656 580310140 140739486 678608444 427977120 732307847 408129715 799748290 653833319 998733228 132163487 718852153 818051199 832435653 293265153 420151068 820553964 854979844 15155282 213453494 715382381 987081400 572174443 898839159 364571664 375796369 38146926 360404531 568246239 675715452 907852463 941821774 384916708 628542671 485758239 903780156 48095854 606640609 572846099 642487301 101648154 765584256 589874537 603190451 618311469 953579596 314299339 929512247 847845085 915129638 677503278 884246399 638400567 795077680 244900715 659405514 664002948 847898177 875872509 916669410 963498032 963785882 266826719 660696575 477201733 550158064 787776744 959135610 856167921 899445275 907876427 917760521 70892797 906693290 824340358 955070624 460715943 615714799 519357995 846603817 810347709 903922017 456164163 972297541 909186152 951858100 152511849 701683039 743256010 867090923 810739655 867377737 285942589 511215101 300958714 547794201 707697370 873420978 168049325 363587228 184479755 611310603 695326494 936381112 508778241 692427999 466224585 915029034 712110350 722544121 736404656 865272196 377262879 971152297 56414915 757691038 290725553 328949718 398085025 852092450 334959947 979063961 248576343 547151790 417102701 892670699 556016244 747812856 936438829 983361434 292360900 601456249 194337662 441808512 34508517 545708904 640410458 749249300 66933920 706199948 157414491 735548774 233785049 666230309 693922430 957844385 303896276 350520117 98453742 840587541 169585755 275021095 160488708 929676987 193322891 781756967 222550006 779226250 720824644 901581143 634341000 709499257 998226873 999037822 33063291 528690516 548941530 566930273 931855130 986271725 400093002 574527962 778990976 850726982 140909122 720821894 66882560 997706919 646755279 893131272 681658445 838690695 654040335 774152118 110931554 358678092 738404999 937791213 316873490 405557155 242566955 741664446 273986265 592217475 746394667 762377666 484125939 492546089 739887790 771181150 706251030 918063284 182065501 769510283 54217742 309001990 752672860 752833388 26964177 873713469 33339504 561872847 814897765 898036154 529236938 864356058 291822812 862143379 679996260 989606742 380241801 997220164 568121247 951398361 346759212 728154111 348198978 894839784 907078886 994172363 548883689 833823948 646358942 959576299 641696811 704205456 714787493 791466601 119309625 647140249 914540424 916976526 389772514 692392191 152126600 814787827 33649293 637577072 47037096 525384301 122527244 970654778 183140116 656111698 826509204 978312223 418333520 528127010 855129919 974788108 138668291 515296456 773678586 798160320 442339169 622057675 768475062 953591559 485763589 835546523 395909432 660336980 706367893 898487456 559795877 825659426 891216665 896289905 796990477 841593570 584743565 938215732 227927603 788205529 742811409 963367457 510045404 984763061 702563493 885739105 356090597 475369481 562912863 885650449 426991992 858349669 877833072 947622240 229523971 484265838 995203045 998130500 676394063 720363217 886261678 992948461 590917578 734800366 383499963 735782711 445467944 601449480 852314106 876734313 722781867 885929256 622951407 709326024 432919842 572425882 308636040 337371545 608151120 703323696 429756635 832555620 855126780 975662094 911022390 968968756 800791100 950638664 163768624 833417440 18623570 331078080 970821243 978516442 169989986 305823209 412534859 830920402 395300138 878020340 798473917 899740988 876834512 966311454 371771726 540036198 107974970 991210630 518102219 525080867 106774841 431329855 997544323 997594456 586739396 893512368 657654977 940084331 196030852 302630335 57404810 241777134 171797254 313866133 629138593 855215560 742149446 818947555 516743952 670699748 472622255 720952990 888054483 947132704 980873698 995383272 646980657 760537467 840238422 922133115 645971045 858043969 416119615 523354598 628669945 952140078 974702423 976974416 971907906 977770249 288825324 900865193 11333017 740179866 224071944 597602153 421754446 865596919 803565878 993210812 498604326 988020567 516008100 872362160 882201937 894080055 713754545 984921036 741713509 837538028 973918124 995833748 141427022 591244085 171134444 500273236 449262444 906750322 678814268 898600681 93695158 616381212 286218240 944308714 457436186 890463610 116520226 309345323 654333801 882974910 456682851 899721302 352819136 903743500 985030797 988629961 66851571 597668793 582389661 703205686 897036501 919323452 98964400 239946856 411622620 581570085 62759214 699131447 278698598 859031032 366778293 891092176 756097286 817596626 946372385 972855222 682514574 902774496 386065576 580252175 319993225 359565647 778732085 796441951 286831668 536766204 112217235 314116712 430581834 691142461 173147616 582107937 473653215 586008636 292274675 462716740 827666934 837123813 633480353 922785993 914278010 948471962 398801057 718403783 658257605 845412252 76290265 899487479 267024676 308254762 532127609 914513155 288242192 508520471 915130821 975192523 97139617 925958646 741086580 875359508 180747494 198821035 400443862 851616043 907912909 946257062 728359218 910343868 528444495 874390571 385405226 992031969 367097110 682311969 826398822 882873803 569800799 903257090 654136208 824111229 717323962 802202541 609720944 770207255 835956458 843376121 34116148 901380585 794236488 910708144 937658585 948584984 917837290 979718244 689661880 776714301 19002342 754712360 834551063 989953034 228869609 422716335 720472390 752864618 651081539 923936134 126717957 253257252 270705656 725911780 804046544 806304438 690921988 906171277 431540518 641496572 922388498 994756875 842012697 936666936 385053273 707046913 73937299 146300312 165226720 385719138 954720749 959668434 642857653 826695794 13480685 365796960 902718406 918378321 475476894 576272236 569517858 916982376 449421233 895662764 709775090 916860879 839064494 948318292 634459195 890114910 830640451 885279424 888857865 995312543 465673770 932658406 240123248 675944444 915285671 954412747 261716290 967582769 792553170 831766074 130991085 523295918 622225338 650145178 908334509 941420309 484552422 591946210 575033825 863215522 332748276 961576064 109325899 710907399 582543099 583030035 261297744 439483347 903411100 958378409 529633730 587301052 783279836 886522522 790430371 811025452 483134489 661573245 369258798 426813716 841103788 906414248 778783059 807322099 73878520 857074850 605655859 981880185 161933209 266676992 946147600 988617132 878425719 900055627 555006531 624880990 748227844 799353411 532201078 565766395 255243792 593872605 811429470 926833771 138408295 975471641 163022896 614502665 117187566 672128752 402809159 740139482 681234130 710818764 174060322 607749854 71384243 228344013 308424141 686248626 285398926 945229917 867558549 867901138 410969139 756412450 495130544 874023676 235099358 933025256 348100215 826306402 836424996 845677893 752022746 985372856 964857110 980839670 399428702 808534916 642117020 748796072 752520076 773028944 919827319 938426155 666134218 911202281 45522659 477641082 38845107 823328694 175743526 330399556 882216649 890301867 198341396 740937628 829115912 941308235 873906904 971582866 431318637 980644883 817767411 832593590 844205164 888438328 481851575 939097256 829445132 953123521 672184622 700152031 44124815 250879783 832916341 842959695 720329574 751451040 183820957 767326129 454011221 787132070 443245777 730095595 666822660 897932102 187370706 626906320 793295487 909293639 107093139 376197279 559558369 632373152 607774651 720444729 461261107 651366450 468547873 631572186 953277842 955322960 97035131 291639402 604970691 884594802 451341704 719616397 939031554 947158592 442498962 822254082 620135163 665432613 803412429 930078296 163218158 593629141 847016828 959051788 800384184 988479298 281176939 302970954 117310958 653530569 654163196 798837470 332841415 334533021 150101940 560471838 178757739 988556910 610373250 660809872 169482494 172188530 671690613 716291935 561075081 735663629 201917855 488729793 30859060 988839173 256985799 786107784 606835179 695053354 450151533 595721263 907472559 931477651 120251021 147537547 32245810 239923289 153251306 641384844 400649850 786138872 592878941 628988176 889784024 897830361 898532574 939548778 192934716 725449867 556462580 871719082 830849340 836416701 636870124 733344671 193732110 344385078 309141156 752078690 101970823 206659940 937476947 985105277 124728378 543351364 485392636 759863087 940830598 969669696 339027495 903007315 196520990 979188044 917296510 918684001 247032032 711664825 118075560 832718893 239642769 418972320 588274627 858588049 932854945 990707530 156801116 636808624 523941196 895565513 821461035 876762656 102185168 199222321 114857496 495584563 942388124 946279068 647357113 830776764 843045702 907028387 502929249 642743387 617720626 780440279 497038661 520278921 19890145 543059600 523345848 565754117 468921159 845243979 247112142 883992285 401037187 621593083 660098317 674892838 742009403 797693566 179635416 883964758 552799989 972722592 404112093 793465815 918413960 923392470 920844951 930541448 982766431 989297986 796194731 998109415 443125694 780101322 30444547 855453416 571963191 889751074 558681727 664596667 692752974 910113293 104974731 782056016 357691727 571165394 873154339 884695231 763828450 855690079 776589274 935175352 746497093 923619814 993566388 998178949 660385332 863297290 363987735 796908502 331010872 560888430 739287961 742492941 864083437 950745481 49764035 656473136 920764821 982147034 985290619 988730913 696504770 812614106 484392946 607576734 975743844 991133135 158244154 944065726 714658739 715327489 584724460 818340118 936053536 995182106 721103846 764646809 130064131 421611238 779918744 959112371 291797676 974508870 91021830 271914396 96333419 952690767 505764005 756958384 201618856 755100142 870390037 968659615 796575723 928779492 828102938 857323956 625362194 876884166 115232513 991403191 773238381 932459403 121451548 795701224 417063830 987961337 715255841 810578305 215831164 968115879 788014138 842304060 61293405 859616869 717170984 770010769 326773717 927503231 759309468 814972749 90802870 810456098 761156476 799894784 250341820 831317950 12129493 797252456 573197382 764267850 680573475 947836527 317571439 430401605 248659499 595095302 496246358 504447334 365109219 609408087 91973694 122781995 790541123 861837902 99850340 760012264 375721413 978397105 419287221 971269506 464302119 623573574 370592975 904268868 653402548 772455340 95978523 596261843 572764275 744835573 950432974 989660324 663196634 869671936 299078619 688410046 303079140 534083243 807486249 958315835 955902711 968297594 50308833 311838114 376709393 536372759 885080484 974042835 677972671 825351157 57320542 74478031 862531503 983533896 208343324 525911510 71208893 758266005 66708510 311247950 915240325 923492078 451222691 599983051 152786373 969339995 358547108 964946840 861467233 990097298 274786668 300646461 506090535 699808143 768533235 851989799 944477810 966573754 525129623 931817864 906639910 935188007 723025308 982236607 455286782 498807005 630210800 801394981 521404449 824655922 293902240 332596922 834761118 904103745 915167652 936229902 355705967 947556626 948512297 966249678 683933930 738332084 53570315 658164048 968353497 999786987 343674896 801352008 641257298 919560000 532356192 987710938 942752579 974700591 166484798 822970513 514508370 968284308 202034834 599877272 175696888 790993795 413183019 509138537 328147985 370276500 343512665 751781521 79656261 463799246 277656455 741951351 508291103 793907725 614859885 831763945 174736059 626321632 201830396 608635107 775869616 815086259 668166316 824175745 889581312 976086016 244885676 871973682 47220562 214337176 903717160 936662985 348883169 921614779 3227540 729693926 238957674 718011837 25205044 777647053 94115763 852208408 396128779 496508933 303581656 935272077 540792732 864576480 500599378 745245449 432680342 893419897 377590262 671687914 31805616 33908945 479123445 740057363 645749224 943258628 699642063 982721882 147471261 916806128 92784517 532184736 763331555 767055822 345566250 608606399 153750810 805496384 456984765 747241010 588982898 590717311 956248812 996102374 864025885 879845462 124514374 619737983 220622871 986806403 855968277 985227734 984400689 998105812 747121516 782802333 100642563 471529633 381130563 688757004 81564416 308826987 651686870 926013973 416587938 670464705 180873971 216696261 645437821 763125881 619868707 788118145 700969439 762954897 534466339 891521441 981213398 985476830 991780651 996711999 581312589 859976187 118531608 284751210 456874322 924746036 230281248 892272738 201501383 514349999 129028897 908495427 299891204 598712484 895298095 928590481 890846013 979575681 115073376 954208021 536339742 644162799 528802968 567720739 777689588 951530960 776248598 912709600 166299355 900586401 470909313 623856221 758259206 806706163 835666371 988632246 387248657 630728414 180835048 409604157 70514887 499993713 739544882 900402732 191831693 579770241 803294510 969418387 350714545 462929800 391420848 432182901 491546867 520770755 439248549 916913352 82945314 351976970 352174985 804242734 93335251 408250301 727417675 906217576 839474319 927636173 74244940 203309520 180838977 567717089 554086238 726470118 870473335 969181186 273006838 682162176 120150152 397278050 999947454 999949642 892240056 906776966 901176660 949305263 627297756 640685053 11290900 173279381 680547038 758343196 820701537 984350461 498600288 573259392 555017462 941926405 904613882 917972747 102444969 404443594 683983608 990302968 761987968 825855954 770173127 912516959 506993959 890290332 35354257 700806575 807619663 934510793 927315751 953517857 515955109 731076535 325964380 333488336 663964768 976304001 959036869 984833850 972323508 976827983 26635461 100367550 963643435 994621593 287540918 496808542 1295001 147299848 805692286 845714115 683023580 882750929 162674615 877345537 465593879 559296361 358772019 395139197 546893807 836119811 84262504 942860593 637450787 941804606 404700580 883003068 240325920 266282434 857813751 964613926 450605467 670859266 903316893 925253686 604262158 867102452 89936770 627366284 668194657 775463408 364350295 759690481 94015650 722418415 593233241 771480342 789717237 981032635 793629616 918806230 189316781 617097128 508835341 686830246 234495036 761959806 321260787 346031047 316729909 879611984 696921486 737006261 999327019 999786170 612049000 769015406 894709267 967179498 966165907 991661027 403128859 546717465 9672379 922301198 86463545 929527542 263284210 594008801 618446066 862232597 267495957 375869116 677571669 702300633 143026086 249442738 673733247 814184176 529195222 928027400 985899997 995528234 973768440 985505176 622535791 753321531 134450002 639545235 954052885 956866375 701801687 900409747 500158873 995991435 832589352 975546719 968206722 992746713 165002231 385042174 22520951 185662100 581246961 959344904 949251157 957636349 697547587 810831460 475321527 941344928 876019666 908913745 394895953 467532138 332544552 748543916 661711970 874233348 858961830 993133948 205889380 438891388 791912873 811420034 320588455 471955003 969593869 977643889 989227424 992852715 585347036 913181844 328691736 478455595 898231699 942228080 125400100 489187492 989636505 996036924 595501285 854189136 236504165 371548502 528006328 819111167 708810088 932488837 870851945 909223858 804051682 859264335 579815513 611888465 875604294 933005874 978299697 998401029 595426068 732868104 302216136 591716779 699912762 941904331 771920982 986447097 991809336 998157519 13868200 256095853 575966173 738396446 779695117 784180302 193420905 595783108 608159741 965426617 736426899 759347015 751163771 823674945 767940844 888453683 494546222 818050646 976517589 990738861 612884828 899732442 816957177 941934958 833205716 889979830 84840380 997153639 458133783 789279226 60347835 719314025 40872959 592062350 318919050 828340852 822672741 831367050 736161033 802037658 35304002 751113049 911445875 931488069 333013732 654385557 108229429 874247928 230320823 395308326 855837155 859382390 573238429 891468982 925029384 947187177 639030544 701096690 974913542 983868417 576010365 733665849 532028791 989025325 56681184 158622800 340233392 852062905 230298019 273570204 924250061 939284403 579695839 834575828 171752032 610527120 703693778 885181342 29096777 492395820 958344293 981201374 853320001 895424277 530903714 585895263 826002819 934661688 927234815 971578609 418771860 484683618 673186015 721154251 628191398 782846626 453997172 601146701 795244933 942755967 917181032 958675627 995138818 997887551 340203216 794801410 807161843 902118965 696394658 804001049 148525833 417764183 842816848 933345750 950734722 959662738 484492903 552649578 99760496 453591475 6253738 637751224 898144680 963591238 900806858 947735473 902360185 946478672 593720346 621097983 101671253 970117620 306265552 383922691 966175881 992001095 408447283 592528070 471796411 938539574 191854841 777632794 830386393 846856611 156480467 804995028 791227903 862810568 438856546 511663390 118564690 590651675 786744593 999938343 693503429 929280785 129349426 570560021 922126819 960675541 238620025 527023908 557215260 671378238 829143684 850082431 737389763 878480702 476820000 952996663 912763529 941870941 843380320 976575086 513897134 575661009 410963070 672066180 803350832 847962813 702172167 820837010 441348291 907416271 998263287 999472008 307245213 520241076 503061102 907862048 883909868 884750933 399769070 449991989 832825909 955318143 754456202 829964644 256931454 831268519 264480248 624055871 700262699 831540419 15660338 450472925 124216234 909859583 274388444 423576216 739100223 849306905 779208756 981488848 435539342 759613058 154319291 650406585 244004774 303598140 511071040 986456935 698991553 938959274 763929032 809562267 10145748 587510868 764945406 923123290 866971383 983776290 3746393 6729475 588010247 695185819 758454919 823698625 724318646 777974590 908497575 994378475 619323541 911108221 561945229 923730674 96208047 737164151 866097613 934704683 311404986 448033697 549898371 807637475 407938363 871674438 743781833 967494883 325448719 404051699 234243617 442843441 22309711 132445107 602860075 921187547 827381534 904249494 913107477 961022707 575632639 655232147 870268112 969408906 499539589 629074144 37592829 256765736 457019291 681963581 117772025 581237952 349437408 584417542 830631618 997389011 840760928 938595643 221205834 501464503 874730945 911291011 803242313 810882309 983025220 995711910 874769517 963864567 731427420 974504878 900696699 988588307 997781017 999412446 141260279 281408218 801863532 890990182 875946901 999405141 45124358 96415015 672299798 903585015 817226296 866395553 272741974 803233343 847765747 951696988 577400517 780428354 477262547 892464618 658916455 999643729 242892438 751580182 835948716 963111601 711143808 873165118 441467130 470299198 396713088 677381777 826793398 989807831 823181706 892066634 139094611 721048858 765297791 830078892 51784298 212821804 479892854 835444128 607301320 726021956 971996800 974850595 337279099 575673831 451051303 567353127 859825996 973829946 699744322 990577611 6629071 357909801 508543965 553558423 140995913 688502717 98014021 259956315 989159350 991593597 813957893 977186178 479344786 779276735 851229585 944641485 248428204 628686595 813724549 820107796 638634045 933223747 164897716 978135575 426608938 967124516 771834394 884735847 427370275 917796723 838953461 888309942 204002362 642546489 174312490 537780250 891011277 905655556 159530745 277568605 638767950 908901307 982628014 998096689 865122914 875519369 286727330 953954163 685491473 893778234 52092882 99542167 374446881 449953058 289656487 321207195 222291054 712170699 632026640 805704007 287544143 386235397 450276120 512667841 897302768 988265464 877905428 894335307 975013667 979750655 605644653 674843811 951967113 960871123 796311493 818125759 343475613 751464040 690135656 967655591 982525955 991520506 587227294 839602870 200719043 237564568 107742486 415351327 427518608 649373259 899476097 916916502 765697493 797178995 916655976 944507001 853031115 888996513 262563123 628976521 899226933 972627888 418855192 589845436 840175322 933707853 990626402 997398893 665134510 793772708 290207030 960574001 895185558 987389460 308871385 314161393 266403216 968228118 518779864 994147036 97637171 925331131 935691520 993832612 310406369 346464775 139511071 164274278 843264876 961853817 873538793 928430798 588056580 610899736 13270874 876583245 618224535 859287991 125660833 571829298 338446954 689072995 25689528 903507660 462280955 924216858 197529851 511700256 853483689 978135371 977520724 985095089 439333502 875728685 573083931 998426016 415965732 841941617 919366123 956410476 260434574 485669000 509411239 909265554 61435561 683651294 334802258 492323994 887768529 985294093 258718006 282675949 617047470 899557879 52414316 958384564 498253757 845107468 594840794 956575569 327704679 352549679 746495181 856347858 533840096 665161843 217000084 480440253 829185017 846835763 689193409 923815001 952204405 983521693 127796905 877654227 448531524 649294286 14412229 287527022 797659459 836285884 859906485 860674791 291986902 434914839 446862454 784333245 379454896 658633977 447504295 769313779 849649901 919533541 686625416 961032746 269999513 866716959 679491690 724638519 501821847 673679368 734669727 813555780 511806787 902157176 116993545 507423922 993224808 996481675 219892304 293630408 451406120 748034344 345143751 625346796 50767037 354331270 703973567 826674536 543453341 704753776 257662918 736483077 298179615 873469335 510071597 820204057 13066344 799065752 735378994 781953844 80170057 385301928 716388584 839947796 781919490 937777573 915425336 951526799 523078070 739260607 409788266 665304418 752653875 955332329 672145235 992678530 618450582 836697418 637562838 799591326 865410212 882757069 378992880 909016527 253550385 521918099 685359466 708387343 245115054 251628939 954468989 970147322 682840080 684410871 986750630 988122994 853976828 884441597 725343122 942552963 690412243 711490048 734241110 844246890 969321616 985332715 933528013 999750404 537162259 712010572 7776133 896205832 332230907 630706668 423087801 656771351 580880823 872932859 896585221 917860023 895749155 948522738 233006947 728185178 697819694 806608840 399175219 452619735 127322007 395622308 179881513 239385474 728561417 940639573 605799114 737115308 622158768 655585849 512839330 569677214 347789349 564289370 723364265 755807650 614499365 792079394 83164334 946661597 403223616 447838581 963041430 997494293 86574722 689575975 861427281 909035498 142355069 584202253 97114005 208824987 973377813 994545908 955382861 974261406 479305457 527229851 782117410 861278337 290386764 559220502 801437851 817205998 650711967 823885321 774987706 912462326 969621657 987867796 123772250 178866820 64215368 471465982 629395865 699209421 573308720 769017617 669211359 708772389 177638772 450109930 106418367 548327948 459385597 866173472 69721985 909669071 362989714 661839504 13063218 206439307 229405536 770063619 175703342 509645290 619457196 960153359 450447617 501503143 341749054 382143350 994802650 997359902 310811191 896543519 448263017 964290592 515543625 832679385 152056338 259420954 306617850 986799000 533989472 997813740 879671604 882408831 760555730 905664408 514473227 998834878 145212182 329162282 317059622 721704410 797071137 841020866 783108571 927995895 4322180 877649212 568110922 622312182 30599 583341521 917138526 993417743 435661102 718103200 164994460 471682498 288047130 307872499 720851946 915697542 600592644 782074966 221123400 801165726 936209608 979284468 604938274 741251639 647056381 934940152 166791686 427142071 29960638 531652989 189061634 295909665 374216361 968000047 508314139 865584984 468378803 805387440 235739443 400461964 484477604 558449111 467307223 976599430 959238384 962912424 456659841 829151254 300071451 822569310 57162229 199529230 922954754 968155423 611225853 874849527 182577925 783010234 894822201 990554476 301388341 695250960 533928588 807127797 685716197 931350893 189453332 832280929 150101979 206326089 332739993 537915798 769140861 840240950 340408038 958143538 827031636 922289015 982977676 997852903 674324651 930771625 516447613 765751215 122367681 282003282 867979002 914700125 195256711 560213022 10255275 997210913 877695628 934305171 113398059 268947415 892733578 990137171 57810485 59433675 842618010 937403682 860033011 905749249 450468640 978732318 728709179 939436603 581140762 757140851 704871050 847418599 849756743 922479651 52534974 207681562 196151606 516642173 593160808 620032149 542100246 662378314 568996814 654170448 519945620 704542618 501884111 630224453 604457508 942047016 69478524 85712860 762911231 780977912 450504890 457374709 306848981 320916320 251289713 578003462 878005596 998010683 223735540 874379848 57531750 592622019 13263902 37971373 426584772 984941447 663402682 729695816 964282723 980842745 262138581 607532578 442893573 734700282 991754186 997963658 647474974 800975574 358495821 728619805 734073046 926040501 470324648 908664397 720580229 962078486 180438666 585965261 929528512 950436164 774450534 911932744 15515704 317226290 248575783 686270799 720163657 817132296 882156807 961718892 102190145 228178569 453283423 890844287 358770919 715167628 536481341 810676830 225809120 504405041 280186707 376664494 142861517 553277934 599033986 850749208 510204641 811340809 52336408 487448687 700629502 767240852 374087573 932388992 927167268 969001574 345659655 919314826 791748531 878194646 443970869 856731483 391017631 505554977 902827803 959637106 734915295 863116553 729764308 897998295 261737175 703979959 636717631 881242425 145588550 323735395 500078168 716881946 980695835 984393545 319264874 944050489 119070709 239135186 639260025 771153741 879269613 935566522 822244596 984853074 456338922 846012139 177953716 666908218 459580760 978749321 311255696 472601056 426407553 883374471 174294442 698260904 796216101 909591199 201196071 730250627 774966183 864801517 703910277 882227858 314164827 779094335 78850751 318125499 157980305 298091741 885012937 909400251 210452060 769857681 420181720 468677018 180298544 974969438 204137007 281937970 273490683 598639013 15866839 822161910 177027168 545051504 500406349 789881632 67828480 867731655 593685891 652360244 375833442 722067899 284264540 601431600 211680443 679454238 131010235 669928227 297534114 600867782 319598423 391791701 831906040 993992959 550785969 573389906 634471325 677572372 893380630 962204776 561883994 943590632 998953387 999266615 14259078 681798667 791271244 827536856 433222891 522750842 740486617 946482662 282250068 649577019 773375175 943242633 717200306 850264623 806879333 876114145 997421869 997440333 153473332 371722461 334507271 554729638 475578562 830523014 486972891 638940179 776210199 824681115 951204618 983440876 66098532 395911163 284457077 568611929 190450566 505820497 303232993 721786699 294294612 667014813 567832305 568292948 349634764 700118921 269075279 668433841 106042258 109067353 667777074 689647618 123421324 151287543 893834859 919339396 221123083 864739854 572084608 765783410 607169544 702183285 673788154 745978832 472986476 515647189 804471261 925824889 442126113 795925766 618891871 672820047 924168619 928876243 939915755 974300153 840518185 849515699 404141683 752801376 702296522 710691729 761472493 816558975 210886313 281391218 213801958 314536500 98402753 153348497 259542899 318523755 299602257 684055395 229419987 980300388 216715115 297350990 245706776 379814071 99572065 497088367 322578348 496099531 563606539 714737079 272960245 558528206 823920711 943171219 681065365 865391361 54091584 196375731 373494783 403606664 916033032 980659732 631276836 677012035 692140485 991813426 292767993 380914992 661949745 902575468 22219112 54345990 780309889 929177991 754549887 891892989 533663147 538176154 461071754 926960842 811935425 873250096 356380520 916082262 709525052 812181743 655450839 702708346 66009195 907456640 52777035 129983545 545260585 715506074 243993194 294955322 117767494 693783635 912116049 946863588 154151168 159366567 897826166 971956958 721097027 725487780 344111603 853586630 70035976 512008890 503622847 624041536 320458931 885042338 197087577 790350165 220348257 493374567 13187064 255245408 519087596 605504205 478894432 589412184 337956233 466299106 240157943 327449336 357316724 768870508 336168423 834168213 411455267 781973389 195501594 502641864 615856651 774788141 688024419 991178754 147713961 338870559 340052996 658090818 306107080 794244079 612503410 970399877 786841243 885376102 783486268 890687510 786616677 975020865 7091709 371511370 408823069 977189068 954238921 964630948 125986635 540602030 500997649 908456503 520395677 875508878 565058203 904809829 715385557 864923767 629422586 649087272 350215460 962130024 144478353 469435431 722420575 736677568 744574362 997830268 413229668 615868759 292350071 943024479 178355384 246162634 903020850 955173977 652993025 770743013 55713497 178042158 656732754 784352481 604972761 985825308 438151518 498905494 957211759 968174909 108178738 335255252 475488331 933275558 633233545 970754574 341332442 645986928 889300726 948594319 168780323 786342601 379255914 666522211 638707459 979873984 426094473 436645249 274731497 935687372 569850481 654443825 184833353 815844210 763536462 804099940 556538024 583784902 923775145 964273422 134686816 907164975 952334071 961384927 17926572 448020596 107618575 699831678 806681304 982338155 819765863 827890348 319836414 473163327 748592752 907289417 226061730 679923341 693223605 738608028 484016801 799972300 988430465 998697176 904153845 928269486 62181885 855223217 156717530 733181729 491266151 862150256 914540663 928707945 995054198 996172151 969106076 986333157 484273542 515450883 450037766 503946127 599504801 625435379 478941544 697319489 877106721 950550220 470028200 551037491 375317565 991774420 272486009 441394547 143550655 700107162 886217564 929548613 364526383 433250645 999542873 999871423 327260845 975239998 115081213 174530465 516454984 880068719 287358709 755372884 517638936 662643128 796810950 939799866 691545719 963328863 292253535 461935709 338164102 959676311 680859311 785386489 468386743 788937608 677710754 914525317 801940175 942335660 769382526 992253393 372391566 392557333 271612135 340913748 165845940 190476691 551126805 728262509 769457944 930070487 458000889 911046692 835119998 836947689 988299157 993459812 203377098 476389019 377167145 967414856 307699067 422314287 469897462 970162142 807109326 976334789 533936225 688158689 888686662 930636889 513335042 631023266 784431660 795006307 393289966 913128431 890711055 893791393 286524266 639021060 672751894 813216474 195479242 589842401 156807346 935301725 673150805 826340380 687406395 823885791 373047047 695511666 914249253 940434546 594717351 923510850 159338667 650913616 446641089 598124898 952290560 991863550 419235297 911970393 162473444 421567647 878997999 968491829 807959225 962395724 715989920 779719446 805117477 948399052 176731209 558045708 178066659 578258275 888454681 909839753 431636909 528185760 44272522 190672333 193122027 669422482 404789548 783964222 657069838 921036829 297209178 836052385 542283986 800348701 415595465 601535274 269524277 854971750 721281972 907587838 503363580 917579964 197962479 489141134 484036527 886519392 695962271 866323837 42730327 808974006 931629848 945994554 50795296 107409319 988166352 988890592 898657257 998430267 206784405 735981332 87578817 901943510 927465247 949939996 48911836 408332474 512170230 924741012 234758286 616377090 889543156 942273689 504762802 807250648 121108707 736340350 530044790 924503197 385874569 460050414 972555416 999050065 758079418 808366474 308422150 371542014 7198956 543492244 923111528 981583607 507116965 719593549 478227595 920548831 251776136 536434310 804885951 909256454 699980305 815405981 93793765 500325982 539398667 941683869 67607412 886582832 566822091 892092421 738648774 807140807 289488160 883428427 288561291 828736549 852515365 904383566 251905022 936110026 587937041 945983224 559659202 969924496 591121621 943868214 934579823 940127293 631956468 910536986 797511568 808288625 540243085 810290917 644325785 804518636 857193110 938566096 853679579 975363115 794744595 938160129 905965861 945141819 818900988 944640377 956221129 970459700 205491954 607070674 735270777 924136834 856988094 894387187 886376865 993490170 487857846 955196942 385738895 550301328 265781028 541676718 503279364 613400444 87999550 211713810 759103872 935972763 800472414 962518411 281491124 691972493 629879610 897804108 455707134 710096622 688571731 777613057 234407488 352888864 632673122 922563367 785522862 955499876 863087284 909967736 72924001 532101928 890335647 940417989 295667717 993353840 924462041 983347119 200007725 469812141 274453159 684228332 305474532 988601994 271078878 403412607 618957460 762961794 428083223 463019335 666243782 669026293 570897047 706915030 735685313 798108601 797809246 954862335 69600675 922183180 874222165 963433074 177483774 673293692 175880602 760879319 84264568 531523029 173758337 371839213 668695452 941349862 338386592 858085203 907314801 938275400 36310532 576431442 552710247 951300808 628378313 871403361 929090238 971596202 116267252 400697092 372876465 433078817 65681826 948384389 764667280 969708326 149859073 477788031 780789686 893016034 770120360 785455894 306156499 333816815 963258986 963399629 129675190 660555003 726041704 732416390 541025815 826363850 416627268 783461997 694639557 785530827 955697574 962303228 627122688 696529002 125237900 511933464 889622176 905834971 539158845 622928452 893877164 927229339 218603373 262509460 683234515 686946418 880960717 978671500 744747321 868895065 406057043 868595582 129295887 322511102 828754942 999691433 914788729 985606610 238871486 996579290 292109478 910679325 238567265 832650871 314566803 415163593 728347346 795249769 166758709 683952650 192117678 230444194 242218705 700286579 216130156 645337307 383259489 720613658 275158559 419797521 790095938 977723812 10568737 36057649 940726286 955630764 121169654 642135621 506449289 937993796 608475491 806972217 785103691 942191856 924547374 949505224 143440406 986984551 778738779 792364127 279264121 803650712 739231358 763195282 205332001 646585464 648482443 883593458 341548835 885313672 356081883 641139208 775726702 981959431 522438666 931599761 486956059 503173985 56702005 170381281 105055843 186256350 539395969 983707303 291265132 533974806 538225804 971728842 572976490 908124671 268143177 658347616 423703029 458310886 399726609 647192414 540127296 738485107 915475114 930628210 313251794 454406665 485403251 897090432 526630595 674884175 332067189 357081906 787888600 953595344 474295160 888773206 835439024 886202510 264261491 872729075 143005812 773990131 380095887 772465544 488164764 734991870 94567851 419917180 7676038 690466962 73105746 407482416 792024129 896633564 843147086 985830314 522098494 718913887 153807024 307355591 119387006 453418816 970169342 970343650 382205115 647426400 423349824 653042131 788253228 981885422 716764670 818022290 783671861 826855503 852907552 987123027 790340848 978931316 75458684 692490131 164945264 543044035 826057369 957156899 965055244 975182866 741891134 869952578 621679159 771194135 661382840 671192721 454291861 738727439 396160915 768677476 534445807 820138529 563599753 904464272 446534415 563394542 245875689 915097624 372852777 865926730 849668392 993088891 664713376 861602662 357843382 502103640 450945224 510886695 486177822 488049263 691844162 904473701 953192093 988124009 838107475 974178983 157118017 537298794 668022004 829880453 366322129 668906963 318404629 807111147 17988268 675223749 192975627 353545204 863197309 972390303 934545255 981055363 968848999 981549692 267871257 937187835 465704041 815456191 806552821 977119962 404254230 554651209 737730458 947570726 310127106 986704948 179406128 886423540 117509824 142925314 761921160 894592236 718586449 917328759 593294196 663959041 833877437 892357694 167357433 626842206 412768827 569308296 341848450 616113787 200473745 832193251 162757126 244314996 306046834 790502404 272247403 488588562 236840936 529790917 640906208 806301674 938936111 953345339 507833203 648071457 409813907 486495033 993423265 998097218 845717432 862700142 350112361 648582084 817302729 851851013 427223664 600855449 735520460 853803936 140657021 792466385 582607649 831229607 578623777 890088559 740190399 930273059 383447969 427905101 660296530 807987776 536277849 699537455 993900140 996984415 63608896 553143066 723280957 974161420 644554355 828229822 613041365 998715116 745019305 996842132 108526972 703258840 131466541 617927707 355666732 460467552 730277068 820644889 802967230 961526113 431828169 950273816 353138673 587271213 234009558 374116170 292768422 944906613 491188163 739640604 166279629 930724162 753076241 883995359 212162097 879462946 310119175 614799565 362419740 762261945 811673057 870870167 90628082 394472322 242418157 361434160 519949627 601816487 909496531 946489426 669158848 840994001 220935468 355094638 388628262 772834575 721231648 932246709 60056597 838668199 911450160 918545628 887325972 939313111 17004113 746217142 991689282 999974397 253759788 745317674 234982710 853212268 820548850 962573229 303693590 889276162 655382388 899889098 284534620 732545509 211418063 566543308 1616751 653909514 420497926 988639098 917498360 918616066 15961725 592133257 408827219 840031214 681853514 922008705 135060832 936990258 449597631 666398099 526381747 629664141 760954404 955269066 89223563 307877378 398856416 790395071 845649309 936579685 57316396 62380038 944928664 976296540 594096248 986885577 247911499 603022963 83274636 533100892 752018450 939615128 68389524 991237869 928117343 989894822 696002143 750651345 417373762 564700820 949153169 960376546 179592999 492892727 157970556 311999703 350987383 747441706 366739004 781935245 598769474 652559858 36350958 895155955 637421029 793870302 812862581 835245840 245485713 783580558 187393818 195889561 957065533 975252761 917302737 984986513 127375494 455632890 126842990 569219988 932720380 986820553 914033591 974187328 272922656 762398130 951008252 983675476 231300646 805300379 531136589 636682330 390454276 849501614 435462695 678582178 249951437 558492465 570679933 746921271 46879309 921111241 940582604 989590733 127134152 669851922 301119627 458545633 821092220 946362481 793372335 809160582 359477652 736631562 254900798 265861993 635196514 819613565 6924373 524386850 221496477 897732008 645563168 910671119 854362120 882450978 275533679 486606840 381506680 823260732 785693098 799365823 653834777 943393372 370383875 961457479 827875812 855126007 609453593 967691636 973727287 975157307 45386020 243460159 188792501 928942372 641493412 735851369 157508896 526447681 985150412 999943008 3945950 723075642 636220568 660941433 856636548 994094492 384011378 473715600 574362564 613214561 10160721 588871760 754546357 987376987 60432475 176959062 13861719 694564916 976375911 982268382 337747540 608859205 177173376 747351690 290808654 407594570 511366779 875108127 640108141 984155345 434570549 982396818 825327898 900327951 227546209 732023392 438557674 761653870 331498819 882179483 539343385 669287514 68880985 288581019 942627400 980796118 16811239 655878215 702380063 858592619 322007361 594612726 499954992 577850767 85576558 389336138 797465579 968294804 141458338 762143125 288186773 983844369 222494625 507794325 694495255 720436576 131416121 313640186 929825885 935059708 975386669 977624544 313473521 689785492 502967688 751173307 705602644 870453096 561073276 872264191 500842860 520238904 400110863 548924899 429861649 876286064 823774204 887154070 59556014 864980159 584161899 810186785 295508669 936333074 992347124 993454835 277364452 662958760 780583154 965070394 391141873 682077246 160561250 211809455 101031411 765446246 961868757 976013226 389169608 786542562 477661402 841247412 397589129 920526241 834369119 930496840 737468741 951925242 551237417 910296339 816235957 817179023 830451174 986157528 652149628 876615039 65571825 995115097 481584179 797681107 807624794 969531514 792907270 887632900 719822624 875602193 132637721 836099409 701011127 775964736 996903837 999382434 321791916 421961081 742021601 932574785 19123154 174886634 255621466 953227150 13928953 81724194 513500780 873729737 625136281 898979718 961067392 988567803 187145007 413416497 640578161 955058458 554383482 636682491 917328228 985965191 371879968 474107466 718217735 825162731 850368959 911744183 123733466 619498295 489360832 664780947 858258542 915176147 511689577 610962644 86728282 275003355 660185350 916423611 425706962 990904387 636582847 758443101 98672961 340664881 353976387 669264488 826788509 921861751 990491238 995749404 560008664 654761068 814787072 958933400 914836494 988180395 835040984 882594160 57971100 129679560 516353073 691091840 691727149 772400524 478367627 897706589 705610905 827129459 485107023 790333303 363664888 506826267 306185975 468747149 381710445 443763112 753106729 941598940 610964498 685631575 263211744 548714217 629728004 875078168 119120818 886118905 260763747 781159408 386677754 453208921 817275314 900155633 485109571 513026591 629089361 832538498 704821410 965156246 243956532 343019715 547841766 851601992 412435074 425706411 412901951 647211814 139456712 771135310 634663960 839926679 918972552 932832628 16029669 763511254 389389877 961453566 375387603 611942593 941480451 980143013 818501597 874645904 287816123 478050506 948325586 974964730 152295733 293414622 352192400 366429035 296171463 984438091 946906135 983843570 972015185 980314167 172383245 786258656 778651112 968180204 220504820 437471794 383068610 521190420 675535764 882992168 713641908 770289892 770277824 954490908 990468070 997044197 160156195 890546456 569303414 669657739 354743285 666152417 900645445 916192638 375571831 947078356 520360916 687986236 369860732 716199078 570415830 859319836 208556257 481238948 237289154 612575106 537361916 690384044 953129517 982996638 946227856 955264151 772059334 909067942 844146835 931517956 165966398 449178781 775829744 813542170 952739100 996617447 456367300 786936396 860910106 984376782 163658601 718954092 61648392 80972194 385662295 622245670 712734986 986832973 847873854 992669830 429869541 939914850 498448909 831678949 899552512 979094856 506727945 517980908 845550970 947356026 841199270 873779435 732452744 828443552 741348048 749416741 621320106 910021842 633990773 794398829 924435018 927044204 41295774 714201133 39203796 775252273 415034107 582989767 496432352 729914103 306095502 546213314 219597001 733274350 295357304 602972622 30454486 589512080 583310574 588295996 18984350 524406836 440506096 496563199 640664815 776081507 270872943 417424609 688020997 809524584 255693818 542625935 314360411 414588688 169713394 956812090 692839024 903407888 164143212 474676454 169291561 530951297 887388907 978232700 530412914 776846403 485385666 907717521 836803775 985977533 462311338 673076703 271506141 610501447 78051008 696439001 778252266 787120628 978978872 996109924 582854029 993717191 20375022 705037861 816505479 965122814 680723875 931423102 486395734 662529298 332710343 709557551 438674603 761616585 887196368 964709986 468802227 789757173 792382245 944220429 217033717 580405870 859612636 907043503 368857201 477760246 480092078 526465406 861079145 972902438 834014708 983657409 848959542 945765325 509051300 863018831 623384388 761384333 219826646 725793214 561611945 801588219 615109631 855738958 260175725 676836027 799607271 891683316 968839225 980339655 878999556 903916483 569857020 586821485 164845802 559324116 647442927 690377967 305808333 897969693 839621831 887791872 973773902 980482163 932993803 997851467 483019678 928469603 427226067 659074948 525440157 904564855 794378352 985933873 731445892 792683386 541747363 778215194 170469940 322090827 829772774 832816224 843456369 848004193 913298549 914595743 175892977 634218537 159730851 554734248 409896491 752006636 123320588 959996884 456519157 607103635 209063552 912101079 32008555 739852353 522915711 858557828 981716255 983958027 345825158 355910614 264016733 610721422 708908796 734609017 546550782 751253055 251946991 585588129 357407619 405995826 124833784 310507336 995893697 999037761 575166376 812103346 713535641 745412670 816255050 870336764 157996619 835943532 327610072 565983223 530822124 969259148 768467044 874651066 936864958 958169487 162657195 204345334 435408063 486213776 556173605 814064128 744825467 974299972 520827743 585413875 75377855 891891933 209812564 938229560 199999298 239241596 59649900 527503183 586887352 743688915 109909176 711092702 875632834 905563108 845634011 991536456 949093428 958989311 72418447 395601862 973763405 991729637 732641989 893609383 751484741 766376244 790245833 875651197 936920103 956446680 712123947 747995268 545565963 637717575 327273184 739085254 440668274 927347310 556159331 815898247 635021428 737043509 737425448 745072776 701612272 898805160 343522375 351239003 488601868 603165216 588848298 779578592 463105930 836091498 101094647 990930864 773096100 977075138 582312623 799303976 860830968 885869427 346704983 533327433 610425945 773941168 149646343 404198219 866407476 950806613 368587127 830224260 972933496 982989328 199375930 757128647 39289077 352302685 653887821 951057292 896175846 920302163 118282226 992163658 389399028 562944997 213488981 659697527 991768309 996204927 167502337 220264221 352747313 831430614 643655788 870003226 715586872 986208514 765306852 943422172 972229345 989026637 406427868 696903381 612503026 866124370 335197296 988163269 965512488 984034170 406376513 753808144 209645887 756452451 957423827 995445069 667985425 758471080 759010464 965330629 178343481 648709641 337526032 927625572 592509489 920584796 377542003 676800360 635732783 868747790 945571271 998418555 378488108 672633816 519787055 668172232 347624212 686669775 203761085 753413430 306657578 806356273 774616343 878972910 958480434 975091627 171054960 393933264 490749825 859259195 716556605 887067968 532671588 953987537 774101210 787625723 256734561 680784106 642057378 815077615 901249183 997804532 11900106 490509890 734388355 893156442 542698108 550543950 627613517 721746736 944209355 989764626 341542489 738523804 559766511 986835750 832535970 849798743 40503599 588572621 365152489 651154943 968634649 998966514 149447016 712718667 213803913 887598603 665569792 955284087 958845503 971394085 599432846 936424323 620146299 693823248 164795176 923606117 196812164 876045126 222456468 522483232 987058149 991086996 852633107 972043172 659884269 970371441 115052016 453441570 837770757 962270949 843567152 945830070 271151644 324719424 988048230 991689382 693119890 915578294 398309432 745205587 166691050 185185561 477642238 866304537 651035037 762518570 577060398 696605221 832139792 967262932 925608810 947479300 637013910 922021716 458559386 906889301 550342235 802819240 723166855 812271753 975999905 986752244 554981970 803211590 941011074 969376489 699235678 716005897 55034993 83016130 695826605 985696392 472505595 868324237 67453953 87357465 77706432 210287684 858048824 992005621 295376759 370404504 681594207 730076874 479973763 642854435 524602573 935486656 963812377 990044965 2104315 764026514 201517704 686489743 180058038 316291792 915619677 972410412 197250602 957945913 866456992 871625457 409124953 436051984 479519002 959395428 713305851 790460752 781819605 993084586 897842991 926180262 762483059 896213721 668908837 763180451 936133889 967720539 540455679 715613109 795931841 805527060 371713373 831327815 481049979 761052892 921992768 969263580 667945596 764014602 147335251 472388712 142399862 671589190 34608978 296849403 670925428 984987205 297986961 539980268 787651007 796277601 269434906 789007519 362498502 369029426 833488723 854544986 512171540 756749478 209796977 858565894 338122552 920817494 977764467 991702145 211345131 212889645 593683079 978283785 121535469 567086854 595834858 850109285 345783613 550098224 171308113 888987166 838830422 909654191 987968865 990754487 285611755 659500021 228652261 743900113 771381527 775451157 353781813 355789605 987989721 994696895 111618874 845249739 166036865 317602035 961045089 967792747 273288088 461455114 522379578 862482633 219510600 562267537 539468826 809418217 531096525 675571880 85141944 778470015 602759903 929388343 192410713 315858475 660382215 744392869 56517489 844229275 324123799 712034093 201839234 474246608 158352218 320522656 716827970 905101263 712461747 771481932 635909803 803744921 545077851 783526534 840578237 984939843 453421307 523544670 25427337 354961088 502102517 607501233 816616128 988998004 870989125 923314656 143540728 664650531 698232372 921244729 144873229 307573070 677974038 866139010 975816250 994596675 608530459 964658849 96873153 474547194 255527468 463428191 861775779 943635932 766050286 896469582 621545388 738285580 195544439 601028381 811423624 821544528 361245881 431904948 838547746 863372743 641363984 801087191 188435086 191525472 659062517 783352858 798083852 968342670 911814038 942912620 831801084 915675962 826676298 968409680 644004774 930789328 131849891 305078566 921518441 994071344 916686721 971372396 174091663 870159008 953691451 975721734 527139926 867942056 922474415 976218406 431412257 762621844 967012581 988514185 532267048 842236153 739125665 789747756 851822468 924537136 510308441 727075694 538494661 865873020 923536674 993171186 466819624 867129012 845032525 967632940 299240856 552032555 289374918 768231478 313830611 588260130 695739550 946522042 540311705 926997577 342993951 800863749 61410744 373523347 395027513 516115505 118498455 295661308 346491674 430389633 39292378 430523868 64194454 903061128 45730360 468490678 148149450 828068137 565133155 720964069 330553932 501727367 696282951 762761809 249677375 364487093 720387398 826800341 720725713 871931339 113091631 669508453 787695334 844512043 899973548 944099082 1885727 663671031 747707455 959256308 995380393 996738103 147596302 333593018 938288750 982040104 684687933 852453326 698495934 703640614 980423311 997830068 152820168 989409731 827215189 838796336 346128449 748867618 309025547 465026289 627244581 721015283 675281099 909669854 852832366 989958953 42511830 439288413 174694235 997235059 25504884 999413322 385747666 740184497 654347366 871678383 877409255 886359027 571842072 653109571 404929451 786343959 901557945 946675125 209913862 342936963 956011792 988571120 70960477 288378482 624753671 730311812 933381451 938564730 338004029 801047080 352501130 765845719 349767485 616953914 788240689 945750354 263486080 649582760 738464971 971230670 802135325 867854353 650983205 852089516 778081416 784797859 348148753 519409150 36746832 306567386 174876653 942100781 641341434 642817062 608853742 881569340 24243577 380807151 622810748 876121341 180965295 487449582 980747901 982305618 911614191 928309287 51217750 128041199 65175540 375048771 860171254 981282499 169181325 647212419 459083321 596049502 219102014 441798480 284158220 744189773 935192915 963717599 679041377 954730559 378188095 513890548 568346278 730503438 568370094 778666046 112744171 719449338 750546389 995092175 951405568 983496389 837737095 870637705 398907456 990378058 484105269 992721503 991610551 999242323 51344259 302232731 482252626 750612009 140842187 316649745 42226053 63016598 941136890 984941874 431991734 950119451 204552249 300848279 639566502 821740258 139522531 874509894 741493179 859500600 775083822 990496334 557101192 667313633 69706206 294624991 360504591 816205878 700268074 746842532 224694698 853759975 374724824 713940188 242571335 907521825 874475280 962995499 64930836 865736243 941369514 943429714 470951821 569610894 87285868 863436536 600992880 753820934 83504429 333464165 917239756 938444814 565752901 714009896 234487804 573266322 994824416 995926360 671679370 939078357 314701036 535118647 254865719 501264198 313545125 894448540 448432291 528998054 390405418 554503320 601659269 829409124 143605649 560780187 821823169 914571017 837321876 888809743 68715423 469241214 193013524 282896067 499164373 991755579 658799256 998366215 531835451 884497252 268571992 758295024 75365247 127147104 838696825 892025281 162021325 889480471 257018905 869397710 179096397 843631271 162143101 668174893 517727922 550665158 681983005 795462778 496859757 874994649 342410908 502741784 600115910 617037185 492226793 533085048 456539233 643921499 571184672 766763886 290198865 679381729 732624489 832361716 885228809 923324648 939162032 952577574 228956101 988699974 223829002 351388226 409067997 895408014 942780246 976383905 603491055 770827657 584140339 873766830 7375455 811549356 365173385 976915609 412933169 635634719 251269680 883991649 449265862 577742628 234520569 713990738 229930235 850136353 649712792 920723814 33819436 756080663 700817224 942474775 113121371 947394521 855236983 963263817 348505117 991511524 946785177 967408387 310016595 743383359 575013999 644729953 441266843 639624500 100268464 415101398 730380369 825573906 315082093 767401250 775765803 966265494 612220451 711795690 579833040 608140279 993184043 998628731 383429758 663602361 367564431 842453625 379185356 792036600 73972913 420644757 330545142 351598707 174696167 634011549 637454588 833956578 644302509 801108910 335299797 714420510 976050091 987084699 653443397 687801910 623657244 959476563 667208125 694446959 165684497 713700869 105885890 976990525 418095750 640644545 963117965 994271784 936477742 989380599 759914431 830711815 124957804 573005346 461785869 669013177 732319223 848160891 787860185 870812283 758585149 821787516 663919318 849877551 599178174 610074663 709167328 854500644 692804314 693147372 593885429 753143940 130942788 760445644 653203022 711126445 127751680 561740971 31515032 749477495 219609503 434911704 312711714 743927986 850175482 864435326 64964638 117333760 194662585 972819073 560863098 829772216 177980507 789399779 234394854 342656634 612266923 878612597 881498614 929051787 714040752 854072253 145822714 527389196 740271803 991211027 790893806 880559931 756296648 998541292 148270418 901717568 912655938 964210928 397802433 533969544 266403451 791193015 939477265 969905581 549460781 814587885 130558010 894088826 141351964 493349968 622487058 637272348 852186847 997852572 170105140 937344917 663200477 851409222 799524006 874162955 863853339 903476295 711981439 720313782 845175211 920804774 317904148 395994453 169879888 954560090 361004922 639753845 37184989 745072574 629391294 927416335 281953222 794183347 947393671 998986994 135343181 163889031 654306208 814867730 355138686 413115901 540763171 792451012 989779507 992096904 74958707 619169576 304314402 498338612 690923776 967619686 781566858 917665955 473242628 682867537 741797797 870419557 581306166 942949751 638285568 653096580 19737797 877206567 606673784 895760681 504340636 747104122 256285878 589244850 471784393 826812011 138584046 941141783 36547784 769026239 186274907 266041058 595091316 859512543 711737919 726629358 498233841 931678969 533233555 930119107 113663466 959445933 555935001 760726716 157920793 232888531 680384451 996175072 882939434 967373631 340836591 609511027 628430832 750847865 842618072 972450388 675405785 973470481 163169533 322473934 790420453 911517119 407650530 606141012 577505924 850663538 862800766 928841980 230791879 943362465 388850143 653891649 864969413 918612344 958031853 970215721 374704451 432474167 487575012 535832726 615527399 724968353 936397970 978494347 564670876 700802456 993011003 998303930 110340001 399219930 62673788 416558010 979380182 982574691 31029116 69902257 854730265 960658367 786395116 912216181 358620523 445584043 164647480 536885627 509767622 834875230 750914826 814675092 89193502 415611273 865324845 995666183 645074378 658325782 58532984 697578435 903281410 981373510 574902419 981759663 298616958 816594939 973382255 999039023 163798438 286406153 533962898 547090030 918471817 992564575 657291240 914260198 894357946 942811149 997723923 999433085 724845026 764838633 891721352 925677075 888844568 988502691 626667901 706732033 41807607 298349141 146421667 378766530 30376287 482830000 791066962 856213842 779699754 910429032 719066657 985863709 442138827 895468046 541460536 861833062 176641083 662278110 515694082 769035268 218513057 448805712 762863657 960368587 479513844 786565349 799730424 915537706 741091637 961434750 743269778 972445286 190979718 738605947 777734759 960247722 930379388 988393702 520505056 648480515 9102613 621774448 865734470 909267802 920464434 982704282 591979990 624689613 766599722 925151789 73440644 367577109 522163023 587564518 464289307 810361050 576588801 729226690 441197070 564447689 49915498 271260862 538556178 873132335 751215142 978440044 514289943 687078064 368832606 958053505 395153386 804106170 213745125 903929689 921176335 972452719 149693755 723413683 576436959 786730688 105586042 324863832 269966736 960498531 42358286 634711783 117305715 612505585 621105838 961687013 197336383 945197349 573952633 950736497 808133188 851295822 762754288 855067399 410548179 824602665 124472428 257312240 623339065 836930208 227395133 385205225 52116687 218425671 991418888 991539221 53428659 801288080 112676012 964803785 428128927 774368280 885833624 952473741 252334251 736441036 989812776 994848693 197997098 534865784 16785519 505218206 655680916 717834006 749608185 922915371 717701781 821537812 104065511 554755885 103389285 597357688 625320413 635282611 84532804 146049764 805593584 959974647 99783256 606005581 968778329 996871538 112205321 746339261 803699778 885047803 689785629 975270248 763326034 921258644 944246616 982847466 503750046 841259125 498508959 839041312 288686960 489916166 298126772 456264572 571307470 666472530 350526782 714348705 887602324 968992402 657388845 912955498 859711904 893902012 903831226 913170292 366716677 450776131 381712629 519814676 724222647 795421139 731815914 957595862 266299287 998480240 304469808 844968448 439987417 939061379 626358176 847110662 946960482 993508464 698343758 969466390 873247811 933310129 201743252 573453044 462671547 759020919 323505063 659025576 18760836 485215825 743549023 930379709 508883348 588509772 245081268 475705669 145339170 426701049 784488189 898531367 201616888 788250514 278902128 860515428 926513034 931382869 233366715 735698683 926177446 966222503 398391647 479771357 363487935 788128902 665385444 668791161 225478057 677065082 353140120 530932252 943685434 983971761 864014896 894834203 814984295 908172369 869551732 928135578 283631525 934446192 576386901 927494184 139387428 800530543 979806191 991583220 784618505 953088662 274739404 925864227 391323011 549426901 530924113 661407193 977583516 993703753 340059335 361586850 30150063 699809561 867952757 910951549 79694603 974985938 887083792 904123097 122548663 932125280 509312019 520482192 197830843 202778201 723094777 994482356 496274704 532319953 23547741 535561418 924023635 999580394 977221713 999713865 938460468 945267819 797207867 803317259 599223844 888421990 742028015 982416078 150834270 615925628 83504365 367560480 912556959 996905278 25944265 552783141 217900717 236302342 2471956 882311229 409019367 705821378 74827135 376137627 624416788 677932501 714613758 933821202 790458505 825670346 134108138 699078359 220700747 466778334 816913295 946813863 514566134 668508980 890138292 975141297 398938685 767310558 817894417 883233019 915188478 977154846 836945470 987668468 819009903 902430427 592474427 722841672 102322220 289853256 676366650 866819844 273685885 543157473 45420250 920707819 12064712 469096522 315436477 801453622 568176832 646859336 668941956 980282580 517828613 748655338 59724634 553772265 854785758 899008909 104044124 687600431 481860695 635151537 538938309 741712581 771484540 946253786 407614402 898797135 688960057 747299600 148047768 370135806 862735270 910049330 731300569 819786962 46591869 277144914 826131661 918042878 751819486 880913987 372829701 864765324 730955896 874593471 334670792 592044697 813069590 969856065 222410346 662577016 910757214 968471372 162645407 531506981 209324772 392872487 933119623 985458262 202491774 384813087 895149742 974887001 11385475 146769151 309297883 454317218 159693213 993429031 660938697 716639518 273704705 768093830 586832691 896790568 275925380 911997850 196361699 407567263 599633095 718074417 76374126 801398221 249466054 397061989 832124548 907514785 940818251 948025182 223292287 662869275 123120404 456610184 422505200 969293921 121349984 375787824 186656458 796818197 69899938 514478655 129212711 197957727 929029486 968636278 457770168 839911679 647584198 859555103 196543061 342246721 76823478 724959463 655956696 916655382 938902955 978659131 837638306 941774628 566481863 919880904 60081020 143160204 572277949 690595824 516151415 737646680 88726805 794865133 222900273 898326359 217404261 625100132 985510337 985723524 74592252 881933672 588292285 598866129 196503751 371066031 506146216 868277611 225838865 646920367 350724714 866953323 431288759 668945019 789945883 959777671 916721570 948033703 679351021 760098601 173199602 994404405 111961378 720644356 222199088 561162942 549878366 636661282 47175337 184743883 261407503 301448734 797830534 926275937 433732629 939182076 621447217 634101777 115673998 263687950 53087807 530770084 527659908 711718899 521099872 626982424 881589984 956445002 398590608 503076628 802844843 892964066 690889256 803966275 30436820 331883158 467899953 837688738 338793671 576073050 922037774 948231570 979874624 998251599 981329010 998484745 229350330 711816924 217780552 458982749 834446675 955426386 346806110 526488641 777156184 799850435 357624355 821103305 598798732 703780092 478391308 581305949 332608259 635139661 429061490 932786056 380806688 764078997 851530973 870433657 302835315 679388923 161303187 362531194 455350827 905304347 790872685 897396691 637188467 962306608 388321761 647225969 685106468 939454270 985417046 987302971 831926774 898784482 487776243 584649753 231218541 981220044 505067566 693249693 649087860 738580490 606608110 683305088 62731681 300754557 720483882 755442060 490497936 612266812 668038074 923095156 117974444 743738474 688939001 722452997 623337407 680967828 294855489 876746256 587875650 735847895 498574809 719274480 955055240 963074425 397802027 496171941 466029209 682412955 93879475 804574200 793333262 916014151 939919667 971992415 841192549 873634910 247860044 914706808 378999020 589035277 176355100 731431115 796552915 867520688 224333536 862104750 871628549 898159722 69445771 304495202 114389553 681646706 276384037 867852799 59706764 613746825 641174436 847449260 400117906 981441964 861277042 932595105 115155633 805388056 621014336 666280160 381197125 974158888 112715644 148398913 491175925 602315622 471831144 754380663 745504268 789576151 44787323 800978568 902789726 903367415 234421452 642549503 923491245 951741375 391796444 479974470 365792142 487932768 454286223 974835031 888084727 952312046 441328985 519632684 241927531 488390532 432907573 941341284 673629804 760503064 980764235 989757951 424027199 675259070 208083567 389660197 936247529 973294821 937497268 979847143 319395637 542100690 906469530 909451688 252795415 391047400 535229501 708912109 147882982 975130119 486621399 642951986 107423354 889985099 639058069 683533462 887563949 908856189 198913091 745520440 370493775 713705432 138789214 680642179 875196437 980587778 271844809 284590782 390831629 626011696 911849644 969703606 53805799 289974766 839506653 952062935 878576883 958597384 375920566 812606737 754853362 837553157 386451585 672393340 329084754 951255206 383329280 842963908 283215852 880031703 34074912 760220518 97696226 500813598 967752291 981422755 186588485 907911689 241696181 945604205 758692638 912771528 433556703 675603479 113139169 226934020 345660116 723621130 632277631 928124774 737443579 797927411 831722487 836256186 870745672 984212720 256651337 542733333 187715296 927854999 551944617 820554581 599433599 997963494 500185793 672659381 282912258 820123720 212286828 265203286 807350371 969448438 928141175 983667752 512575841 806981321 962871765 984571715 339829256 479228659 303477378 728209630 822909917 873231908 732112587 924779472 71065980 660017782 370149727 498818306 542065242 550255706 840704744 961542396 655677089 735666441 491351190 783191388 507026771 948055534 930667771 987277559 283505877 882062794 299964253 482020944 585874722 906656524 31260965 737637431 166486450 579798362 819720590 908254587 101028219 679448484 519194696 953786086 118752503 419550478 787173257 953501687 867511981 934401647 316676879 708749244 476572582 960143383 192361368 392457507 692340380 709423807 186016878 272709480 800697231 912371211 976088923 995211848 651546391 673057197 292510874 331523667 496637069 516854536 665295881 816912879 682348322 739920420 871568140 937861893 994761556 998362807 401886151 466035610 837086726 880559463 925099922 997135258 680262179 803060306 736205363 784179284 381496819 440742464 477430989 960842340 348979310 592508901 127296212 346320609 678199620 838887198 849434367 894300152 184175032 200182822 965398956 966075149 481958129 656394735 768807264 822888390 300832865 713812294 813904081 921495879 752352064 857748211 303525252 556608205 249715297 750681544 582124667 772390291 621466734 838324639 53483135 442065474 605431898 772974269 676777594 919544843 986895579 996624275 490626878 680627355 5330147 906973481 933942637 947176046 361825689 511155725 101311704 705195969 104087127 447303845 1589840 149998257 698165231 816037407 664618496 774863579 486553339 857823063 797248465 872127792 259189059 501891208 420147138 712390849 939938085 959176756 315356308 491685011 150601815 399084996 5206642 380595286 879823142 987991356 27470841 882311565 750988099 889035116 161266287 671600667 685362318 807909844 887134971 946289346 333209577 817367527 926155643 931767600 327553729 413647082 254266928 728826953 670654065 954623304 23321318 204622447 721947387 905346269 762485079 912424595 795315233 855096145 759160259 922070139 11953952 918010036 6228987 367092072 696844133 788720734 174495142 609622007 904886630 970372796 256243766 294473339 491495028 878574481 590043987 770155876 371090843 666047678 210470973 232665312 240761993 439167268 64166520 821632936 48013262 393230384 82099210 121653228 719970446 920756769 910661072 983944403 332660114 678818764 647309783 997952624 453476899 878998404 962775188 996529804 423133592 739390507 862599881 898783812 950283298 995714846 505874319 753608032 717363134 977417565 728608953 786563198 60201663 468144354 999827076 999845141 276017875 640072190 118781222 245474757 665932084 766286426 809918278 943404778 735560654 976194997 583839515 860732828 741968682 802097643 894362519 958291661 823323424 893969959 17537800 294215605 28630863 577230388 765820559 770885217 864239195 986834008 377317724 582829588 170644095 565427809 457430962 897993730 521790693 834128943 421090666 435942566 469490070 936038463 330727270 461506466 834541641 927140046 247997412 321281966 284788266 480485353 248332206 939623972 463873900 718239799 166409706 559257570 501940281 904506165 543530402 767606549 514325862 758602018 304695836 392377417 408255736 658956474 96009894 748205881 210544409 845021001 997889331 998396207 270510338 483530591 896795550 941344585 838051795 956509908 86746158 452601267 989550867 998293913 489883943 933132784 508865804 988594824 60049750 968950738 371988128 734251241 113418022 573560710 444174919 724576501 788624599 991814488 242916647 649044017 360997771 613477755 297414402 911882495 199013106 924224118 721387387 796258112 620668469 786428567 186602858 857099189 274842194 404606513 492705427 931244889 550042797 908431181 967779933 970475989 19415661 555442866 471789855 622366681 906919570 948082327 564942522 568423461 308796528 810254983 236803759 702804209 806977679 823456328 767972705 775433377 4515832 203721179 505291841 803316630 323511563 703173046 107518009 590418791 776791546 978277059 266478358 917432620 656917960 680658383 640694682 965973290 93215524 441939443 587823172 909621265 239737348 432308154 364233809 958364213 927085992 989992483 2339363 793732704 41465309 811553181 846701158 882778889 608821942 895973782 576456550 920475384 208368703 494522394 952964512 987333931 816046156 830982307 202068366 509550217 465595404 928895137 461878800 493558122 368091791 947073944 860011429 965449642 923101180 947211342 248412976 789926148 486820885 605242033 149926734 834190379 2776011 76768361 619856629 959690935 228031274 899534475 400463214 559398434 498585157 585375353 624452380 785506892 874678402 912625785 73742565 959188095 608842796 839215429 687737159 739294865 865325622 964535129 913224595 971211446 317026685 946150451 44020590 562558353 993513938 998676064 210865399 605154929 41789367 84167494 402443182 475400753 426366819 849981036 304909834 399707557 892530730 946072920 375449812 967658196 459330649 873055771 568208724 777182167 979572166 983943963 200492162 235899591 256477654 441910002 25536900 958743072 784766354 885230480 44311407 952650458 595692757 832750477 979847895 990928922 931209684 948718648 827564381 995835223 193836349 961236199 967994404 982020445 60467903 930324005 315079790 392785601 232061254 562769182 50262503 464012918 434069724 903966159 182022357 520965482 961714784 979552677 760406326 950749388 452115319 787214313 66461865 389447374 764877725 836719427 868893140 964060965 837346080 992064872 2015086 88909846 974587168 999955619 491794901 836499688 672299474 764876415 204440654 380027556 422494334 836652082 784036400 827840551 136469607 339517950 705726188 973211167 955063654 974840841 598940399 733461728 771201780 773296832 694747095 739726661 89898277 686515572 59686674 840307377 457858766 547278492 989296600 999594824 954580516 992628470 757730294 781096825 545725255 965510200 612936837 862454935 220172155 258563758 123957565 732669270 501252612 880912158 174636950 347987005 762262597 987708057 557199105 879775056 195647910 455769805 119167755 382109147 493369497 888451641 572393122 821895319 999149333 999464770 480016192 851804021 267873802 333476272 688826172 713523280 605621847 961620035 455519392 916681686 504840416 564055185 606803142 757936202 147931041 825281733 476652071 847247734 847919628 864381402 538352703 643829173 963779010 982949965 479952555 675230364 92833525 629465183 84065579 591447851 607359893 930314516 848933585 873712617 299071237 321121581 385269449 509567062 910998439 916634976 444834714 454396164 128266676 129819310 752210990 925349592 836493520 904184805 612666797 676066485 152535201 686576493 499931848 739586398 365819799 871062103 340636361 391724722 409713119 818500454 925089100 942260489 86330812 430480630 44144432 645782232 680480017 713552824 984977320 996511351 369246028 539755254 557340035 597084871 567309611 766643283 659719131 914637578 654117658 686171409 51388698 218508431 173506839 414170099 254297804 582415972 7535524 59528115 732305117 742571667 804852694 858638079 220394755 773817537 530986497 941001970 909772668 943867975 708189096 768327964 164881281 413625838 703905564 800793760 275278619 828192817 469144283 985135570 564555901 649448602 647374965 692620483 750098319 877826723 63107612 992546503 545460049 561902770 654719400 699694347 707245362 767836953 609146722 654966184 881049227 939638644 774336797 911542577 58909165 927290148 269688583 386126608 791043530 822805755 784849741 823163395 742562431 953396665 887540430 896899505 348978655 708056831 860405648 875573481 720959901 838939611 206607109 207795580 846619157 956749766 71611275 846979594 553092877 996171943 614849556 852932366 112190660 486832149 368642843 914416510 425223365 474512299 860245870 896002997 914827517 948208744 662082615 784991930 124684796 501341295 532339267 795816869 34183314 473641081 248707685 729040044 174477105 646467711 485713775 730428394 914728381 976049365 404918295 689333604 304320378 641255874 334715116 630415069 675882694 749765624 260170170 396416110 404653413 660725960 409355954 548164937 964361607 993626632 58175607 836852898 129238593 715899913 924421624 966777530 969727239 992031933 315603424 800260661 668137498 824981225 129785920 165078989 23583454 251614654 231086275 408471550 376478452 431390492 471679582 730893762 922272477 982491503 936015292 998636014 563306967 623735574 253103318 885861978 64516697 994098772 111097755 389404312 681431060 770105485 878368902 932597310 725027208 942420225 185947570 925120059 138364736 201236702 383814647 787577473 305646158 541841566 927262468 938548384 265732654 404807385 566349896 634676263 514209893 693469653 140969000 882302571 113383255 529577331 145876445 835764402 24163313 791349648 299324755 798686030 990796605 997269770 608536217 937297558 996143960 997649063 532094143 668804745 639382781 667176225 148047103 899463984 888843366 989607790 439358621 716516972 904783880 921890499 882730983 924100433 738339090 912343672 68927224 366665053 67411344 105113640 750844096 968351665 997367762 997816032 225895170 352591035 185798231 845167115 213125953 463675183 922287768 971635709 718870619 976461200 544639427 911012954 962509717 993317432 861188238 964742944 787034861 824500397 163293643 565877642 945705514 993377829 11203173 929500231 255981464 366117147 649745743 726790190 406151918 542216184 221507684 928108254 406907191 952671010 928299847 976985230 537884056 919076504 899736253 987034866 963497934 973371938 162681733 248752188 747484944 754538592 15186834 710276914 177982575 241749554 588929316 708960300 829053149 951494913 549479424 831786900 713891339 941262808 728513110 896604914 448476670 912313705 343332334 569178928 413744286 569231654 470231673 511362671 370425105 504977901 249998728 859492546 454179282 629110273 122476053 163776556 160244949 478884215 151595462 641098654 160817745 714275934 498776179 911754793 565835037 803263311 609109233 720550204 409798447 545489695 46496885 363792867 360681563 395336608 464375588 887056793 526235294 550651194 53152782 427479093 139519515 858792382 448807050 800950943 780216622 814062261 891074272 895545200 812247533 832643959 398080138 965808347 436139689 596113593 114735488 771576414 549790623 815142991 467819328 717244218 530011739 865170741 105070305 263347439 114761819 900171485 239526623 909756210 41400263 839465375 659021927 713820541 310898660 689166764 96928767 309480630 594067467 768924267 983616411 985685822 903030751 945144272 560944386 827281576 929450334 972142773 402023639 654807308 191427322 812716870 972015656 985972410 15261997 307234778 129304357 269192208 145764159 205252277 664153996 734037304 653806131 976098214 83335243 475931086 500519904 687248428 433907244 589911499 353418262 946342819 49175705 181339157 857901393 909645384 200617208 551022626 409547219 960714173 163904514 922100993 773425085 867166707 874438448 988216484 847692993 983609824 818399553 943378901 531207984 850574045 884000005 991260761 276456605 949065159 860414871 871541994 184541205 586234552 690976686 771968951 682213199 763372010 459132868 888956367 686576209 824383422 164549444 289095478 345543092 925460688 935232862 946707242 319056263 785004765 176735869 399820347 345092577 710376365 257887142 796044574 599034655 813065858 138203786 655594587 550268776 866975521 663116530 863765594 645604891 826475615 694231094 798632090 867002894 980243386 135356501 372231514 276370578 314721122 487679782 584965400 532659691 763633351 89884169 341245546 577773442 843458642 100602216 757098799 336783618 400261030 202746679 763037079 592827978 922438241 726469677 870794302 938619320 970106798 691152846 791388517 814096054 857158280 711116443 906125983 942432915 961864079 568072024 914261471 909289817 957861148 243896670 300163778 816822819 952226102 637362867 760976970 602048668 754809603 534614772 596862579 534955516 645107089 20326496 822254486 26171650 873047697 382316281 835478126 834673870 979035084 500891573 710297639 158131166 743747699 112454440 464856305 56651225 701983733 806392810 991296857 173966266 561632499 511683841 933693907 477039565 518212153 485797391 967707123 185558142 272126656 815520265 895355597 501779287 599428637 695593594 735370832 721892719 857386177 401473987 890509949 595661251 921645765 997740840 998839749 828909695 865536649 335194636 342448360 554293597 924142117 347849078 390580124 865593382 970210286 493874308 779412965 819789457 924624567 637730964 640045274 295927812 895959047 477745772 836870639 683160494 830008519 985970429 997039280 838811648 874278649 963923802 981688069 119807488 898402549 971877100 991549930 676596760 870891131 264396240 780814409 741849128 989154723 802924073 962191548 279118481 370974240 922344764 984596931 915921935 922116791 86539508 475522516 482881466 964347142 250510794 818816786 9899892 296850504 835381761 866273199 43271403 95604345 80685510 933558456 957190548 962929377 274489644 836423717 975446435 989255430 919847788 969915927 105248779 607035654 850188399 931720218 446323492 680488603 929446201 944908795 138473765 271705747 355156206 416400511 287736113 879511082 58551344 821368405 508884019 952023239 270106410 290539008 713229308 945481375 852106040 948126891 347583594 544186223 201340552 444886810 968958530 985551493 545576027 988736682 847087409 874092052 475499591 628715150 750435188 879068733 776226463 778125899 892966986 962276562 933596670 983316195 386521545 919044970 712020627 984313208 157351170 817109780 979357128 992802058 244901158 345812210 130021755 842719783 355164180 705158580 841349885 869437438 759245958 863984282 809338397 877390498 813042667 934682576 812286546 828795298 23047066 120647629 136554053 470501802 483186196 564035657 973533922 975182698 546869753 686171555 721967661 812810652 757255043 942282765 271205350 415478518 295291035 587481181 215644151 433295191 524353960 767062781 243594544 604288377 727441972 857869603 723670609 909240970 911748432 948254846 69831609 366714882 337028478 635186602 941272396 981528554 965865273 981023783 941898323 943433621 788987814 912012161 429776778 884532998 187905429 745949254 247624321 568053594 143262957 832892953 35897752 500654258 954068971 969500577 220542183 373915113 210068709 838781235 242543061 316856360 559535142 862222616 615452855 730609762 990028955 996478229 412114146 431335274 317583422 972817950 656750018 934474425 19404256 796670567 798982309 981020900 928028052 936822274 632106322 921882258 473299792 665865033 476181101 756104680 235074854 833008279 853782303 899886829 666193958 727513447 641610039 901594903 741704128 983802146 350766298 631359903 137965423 238079159 608115635 663721531 141049743 801367026 900886467 969844741 132245906 862592172 180808683 630537724 417834031 980757292 20682824 391970786 405625771 961571949 384613778 476972604 782345228 984521404 326232784 480967876 171916003 607321601 608057431 767206360 749092897 930717511 752149361 985800797 327593167 695967892 554039721 914011839 383941006 872358166 117430031 345970644 659474491 800412704 68317483 881895444 786524799 854916645 898472087 942040377 781797339 873040789 606702730 655815587 517304747 938217769 315390061 961556773 282651238 873098374 324918289 522578604 416235163 750887007 898437865 968514471 460000018 797783547 6962102 101751976 104491731 843517279 25163623 692804612 769679291 947941690 307685888 579929365 362792080 432034085 202341574 588047855 476254588 572313890 45135125 764570628 525054353 605882518 530467022 736798185 748929042 762505410 55725425 800961376 433052306 737422065 276823544 649289235 263797856 520628277 981012619 983219463 247007912 330045435 928227877 995100189 392570001 405855793 22068153 672691463 115579261 683189806 134126118 445679158 540366111 550619617 178433699 359691205 674093907 784586905 189561608 909852546 307331784 536109138 824029153 965451539 502331247 906857916 137384048 144939283 466092952 924067052 179671717 183290775 499224743 938929216 691098031 802145619 654293798 990600302 615588021 707289433 231901894 969112840 125394138 713860303 401029386 415399605 444323224 644182279 244368777 447378475 54468270 722800550 636542968 712423901 378020744 723736030 874029551 956608012 418355339 645429315 141894052 260813907 882138266 904138984 316997887 369332829 3393834 458725458 411724591 611362065 682319975 951427448 227323244 649769012 643695213 692036635 931569514 985164692 688618262 755969109 468719512 958674674 971796014 995673152 293138747 467842408 389441366 714542160 398116359 820498359 801647754 956361786 294657017 825075023 742065916 846542292 188239456 872081116 343500732 661519145 558816662 753812533 697375104 859720522 959595902 990334885 639525731 644918635 177672335 697521098 45729514 988701059 488145713 842097130 286272472 877088738 242384564 310016475 581051525 759474194 752165645 987330921 226296196 348415696 87919290 319090497 397045502 748583372 414530502 815140332 475133568 640673072 431425537 783086948 193180936 695675664 155837406 944490350 354002756 883168361 832756931 894556863 275529168 439030829 511549090 552049842 225198725 560979642 662439387 688712315 63834798 393093479 155419022 690735064 321945681 534295791 579914756 594609050 200496026 497871101 274271114 943667986 831739178 972386650 585221209 789225975 971000606 982608252 880701621 890226436 435194085 867594947 95203762 925731539 857169469 967147414 491473345 891758810 516053368 555225010 55516302 716360613 595905289 724051074 838321575 861625310 64627246 584389083 768238510 769638042 444833462 922308923 1343328 940814801 307004176 785981678 633762332 758242322 701385600 891498523 856035984 895245848 582094041 856946026 51373956 516778462 235734112 378927774 597565699 885853191 398544117 468545607 167012110 831065376 257592240 616273512 664221325 738494284 273049145 644180172 659249551 891871635 99614937 724425567 34066113 66188825 423014180 877001608 816213197 915053166 522717559 823969648 773681376 858489478 553687805 982736489 624680518 873046041 741685838 753400729 104680547 375234186 339716115 727676910 614220196 719365151 357831794 977332653 324967305 958991855 179654180 187206464 625179846 701744273 654885579 689711372 897932003 906796087 548262344 957387639 685724087 823553119 213625703 399671892 607638416 968081747 363953152 416507668 688080816 892541788 480655307 593696265 105775721 591761449 163576763 617840534 858435035 928001434 628230835 874903557 476159762 935229418 549614314 636563225 100663558 436402982 321478971 451554831 894732220 945424487 628888525 997823101 78943325 867709669 367854290 612883553 630131012 700139416 10793650 175348238 739252723 970409040 100682970 306475761 175158128 389260132 595586064 911724851 477802019 543631614 130571232 986814515 973298818 985338533 874498952 946057463 680565807 837640714 968884624 983195563 970962759 973752543 296245543 609951428 791520641 993842397 444470208 806162517 472716910 615407348 240307426 868644601 666867563 881612434 316366039 604934417 539342840 954454598 833148924 898910908 85718868 993295660 336707610 738000151 456581346 846119180 511410422 870873408 453441985 695181484 601277853 989857418 778686059 861973032 369916409 861162198 74912963 740654006 828995345 865480519 580646933 955569485 320964708 868777707 303520421 358885014 57869127 921160642 892733404 924828577 476589742 808211374 528528962 598219531 513776133 707887930 685006298 844703192 7993482 615906529 895491799 970015947 149380044 502514460 233890779 403109939 799357120 985478876 396396738 543395776 353470525 651591740 888689665 963153695 632291840 936200822 528958386 554564394 355626666 637109241 800595981 905569770 614517702 659976790 923205498 936185779 425433385 665611269 444292380 472478888 163539031 529040836 637743035 838600894 704163951 788589650 914713812 948301249 563089683 892488973 997149336 998402241 753468990 888478119 596372174 917834522 38827887 494077195 238314170 349352225 489644135 546975153 282369093 919670258 610202211 969659099 709879162 966719734 48787202 792315387 109065208 403356497 883770861 943591708 168042932 228597678 27024973 489352943 856087758 936189892 26489146 117078132 728572281 816726066 44300002 56579644 10957687 885041827 91181352 347731418 211784337 993644483 801766997 803224866 617258318 829271160 160003655 231710794 616892107 984772402 507197698 708891558 607589798 673263531 222002507 395324601 635368682 640130658 580781362 875987485 428514747 973564992 162261785 378178117 609881450 880138389 726141485 957238382 800365443 983097803 984804435 997456353 162755676 180836651 209152859 801223407 729973476 953042092 298946418 568419903 696972089 967547967 750858695 790818512 421954245 975762706 420318779 733439898 149459946 729483758 917897737 938135122 483622829 814372018 84066842 385588379 437488377 739951232 454370325 512051705 98255553 153661577 220405509 591069695 725807555 986854696 400449849 680069279 546561701 955269488 553787721 705699878 938312825 984837968 83085233 345142023 860272113 883053682 260815997 300778518 958375685 963481608 757132811 837986301 898972453 904610468 391517176 764404466 970024730 973219931 135316653 505442340 392742247 408462034 798109976 902218423 736236258 860460966 187300017 949425587 634873654 936372355 423108684 613974438 976725926 979928036 527065394 778737783 630415563 875074930 324301156 786452837 713600141 907396250 62857637 457782822 305047944 692497706 593065405 754903611 665280287 677895563 519092668 860455054 779245438 887616712 675152807 807694832 505970268 861354887 173414360 804432042 729591850 905810149 316180448 858622843 312816444 696548207 681626163 689266146 257207119 328165165 445236689 591345873 969824183 972167815 507338391 971977974 826439684 960134940 847028785 998762110 645778428 826143641 213152136 373802727 963133789 997751520 990098634 995981309 58792979 623924756 566954054 767432731 817565149 993712922 835475748 993499047 453234398 569087046 564307075 773010128 656500633 686283997 575949100 671224061 597218423 807177247 84586648 965647612 481707226 675401195 885316564 910646023 837972441 869478436 262919539 652889129 885689326 972760458 453302647 475704828 388683652 643025913 558885512 763912980 951514126 966831958 169018976 287483842 805800836 969291944 860459292 925492602 179060087 648851170 232909254 427598371 61030563 308126834 420827386 665413654 958868921 966101090 586398500 613042182 624730258 649895884 913325418 995056071 688956766 995196046 278158681 692945960 220164791 982249827 729152937 927425810 897517510 933632181 392102731 911083589 630190616 725120619 312912260 768311353 424271311 685769757 443584712 648708028 399402964 453779100 907051760 945955261 164876104 741538142 892104629 954117233 534381014 662598269 660362927 740049846 479913743 930580087 713663765 808443120 461041012 683274322 868357374 914917254 394563632 416248555 557479526 772002191 939362613 966613606 996462630 998542157 74821060 638965814 946882020 963490376 84787829 943405000 508443325 886130584 274775304 507979027 18776341 374181336 228663246 481846248 68962787 504928829 537934887 874201904 115127734 713523917 535130719 772834233 100078798 768314057 306922942 760670631 502070515 666125825 184850731 918011653 890360601 890761079 51129371 892806093 765821383 966247312 633215398 729890182 501658073 757041867 852069457 941095177 794727112 876233102 120728718 945048532 80263591 467861123 708706460 792034796 392048675 856022716 674831983 855198413 786784770 943168780 427754280 969790026 544172888 673566366 38547779 741045175 709385151 736788556 993838050 994453923 208537854 348868886 557054927 847608642 895129937 995470024 719295682 805700322 775258106 928635595 856907588 979297413 832977512 851418559 511310960 585096485 52049334 446761421 782218551 928558962 350562154 512606375 226132396 853860805 685744002 696028877 74574049 815454784 622399577 688736764 240075943 805200851 549753708 826427647 843829024 950628729 543243151 690635596 573936542 690965378 149389898 570687178 440342985 611567251 951982392 979616748 725904810 969185918 834365514 873715161 869145248 940556941 218560682 731796846 876691370 950699036 333497466 500534592 456227943 911812542 721434268 839578097 422701395 542222869 402785770 423536891 87508181 650739896 133693155 807102691 159869291 204069824 859848305 980646308 53186678 330859068 136582876 382252992 240689392 391251902 695602478 708628894 84344809 766185387 388427946 998546398 246451698 371525132 372808625 746364289 557895712 949494593 868835420 881758496 354915857 393471415 324257336 730857239 424760362 808090456 987083732 999178788 832095692 854366791 905291999 998192181 661938078 767023275 157829047 750629768 949667867 998817482 7972005 150309936 987419090 989845615 101453054 839702585 735332629 905020483 559767233 637713354 993708052 993844189 48470419 722502122 426141931 882157930 90090394 240822818 959545009 997483784 30151523 118323673 656834492 896216005 204617094 930252768 162622407 691267213 419045286 751503408 167876926 311055652 981607515 987556648 923752593 964762199 88273397 775572241 769875748 881397288 27348390 750124879 646676847 699491378 394292302 813986436 691184047 885611176 307486310 522122108 224854421 379467262 804975662 853029015 818521951 985437483 272846174 300911251 395744277 491589822 129178241 337655167 611681895 667365291 465563253 964858920 886048638 935308570 394212297 761054854 904612649 988748174 599581512 769770724 381250277 738991781 102284921 458020421 54888030 475412121 917834703 994378505 199502093 288139645 396395744 860181942 992164067 998103100 76600450 87761534 115363489 891390232 559464689 770808345 886635773 997641476 67705926 407305917 878982282 916967954 29392863 631625598 646967681 723727346 252227664 577822808 949940604 957545158 873900579 876173359 122156806 344166041 35244433 439075911 598948131 625038573 637603285 872568924 578910315 825950703 454837114 589669386 350874738 493493019 987944506 999351898 717345174 860448038 380401677 957596773 918038036 949995092 303364759 851502410 990179218 991529883 977837610 994306425 332776179 871837839 640527195 744920159 884170259 926228800 25754598 683509964 857560098 906002477 244487896 691879051 954798706 979294923 364850621 371129128 570614431 698144842 360454651 411525044 490610208 833812077 602204235 930674195 782475458 951383992 609406269 627867082 783853930 966351929 961593844 973165827 727608096 893376216 199030494 598364097 987225070 992971241 650400208 923657757 705754477 814012869 997171720 998224814 747816724 870620472 695613130 793796880 271736319 765928733 813364903 816651394 200569249 517551883 954562606 960078833 154918979 806251981 832619803 841646895 801291952 896104026 613919680 928084252 773805978 931148363 743198241 890640163 882680010 987902088 386426340 594635711 938537717 996978609 423174964 582705861 808236228 886336155 322002352 612500293 892178645 992106157 927508755 991783465 920229022 974099141 599498892 767192246 915419783 973300023 848050679 993369510 345260940 691096919 121662651 492073023 646505518 826946296 601085393 860474989 770625887 854938922 370939183 428634025 342757404 884529559 206840201 362319148 449000152 722438790 91531947 978654489 66671935 727773419 728131655 838412096 78284243 780321163 876039478 925881959 459585998 774637434 495885068 707422149 25761177 546534697 592559870 665395201 556733364 822856553 795100037 843378797 855839979 915353551 487979561 792710461 404402209 782605767 20424478 513715400 952284809 995229035 231344594 310589839 952664500 974501682 605634481 900874846 406422917 780519541 195694734 896010646 528534239 860428621 392331059 775597936 561866065 638699076 750193523 805785725 309000624 556206623 123567041 558079459 297917621 649767184 567361529 833793577 86452999 977613987 233809671 301378913 174076424 893257859 417529505 921804212 736782627 911923170 688905206 708029192 523886296 815415015 506347273 681652072 553151840 772267343 117995652 617014477 535156676 772421076 888826669 925023516 784686419 797229147 601879983 657224835 691760652 692945094 801575819 967142863 21977067 497204754 221450124 854418129 405717095 985133621 855135107 858119110 951801133 963818984 798864514 955219054 257921841 287542369 699944085 705132108 203293324 300496529 88790784 738469983 781747696 809445198 471072340 977511536 819901849 862678367 296568840 333146881 859371123 869119454 872337379 969519904 12096794 594342922 205478270 886941149 170939260 928514201 785598846 990444704 773540163 921073364 813806623 911297166 183891983 908426408 164335428 424997343 558527173 934729881 310266685 549071063 751775265 846298029 780961559 789651664 180133548 664925411 17178910 825378496 969904626 972848659 878777086 995094780 235259130 967755221 440597146 916583160 702904649 997175104 789251963 833045219 806589864 935812105 799570680 899821480 503810527 917867373 375425574 986484022 226540150 646988048 324555230 894102608 399552303 978602165 298377163 355016737 539502823 668114494 240941178 326576969 443856111 921505092 334522840 909575657 737674792 931372920 297486180 973794801 54126452 715501006 764189020 941727449 80561134 736228464 915611522 949667677 894314275 994068088 711688191 948139035 696753097 918244005 425151130 805307964 476354446 629315694 676706154 918949575 662048733 751000466 154312718 444115371 926738502 949070401 183600558 591853932 849983170 976705626 9686336 495897678 952370111 995744992 9624644 189232626 884890258 885301499 888405875 888594952 364127066 401153847 781236112 980277904 719461566 741683376 383506956 975470801 536931240 810934031 301392592 597750360 47486657 673122151 678070808 969104279 91351277 360544395 491630759 905713433 462942971 839101013 886065846 906822528 176674766 473672369 280961204 730762564 498609730 598912285 457865411 498410404 920657669 989082665 453704892 852087708 159762485 642104127 666521388 896434607 872943213 919936580 247669356 261390134 518086296 556856987 867888838 943719792 302077965 375395033 463339165 806396615 620052960 911301384 191282638 784158306 87631581 333380740 621923950 943111174 220995044 776146866 276601865 379826557 902765424 921195381 840207534 923871590 382189157 953243603 741746949 925883616 555024235 975780236 293536261 942516792 712459768 865053089 317109687 792561228 457289620 504232523 567776665 679772412 30974760 734826832 444781820 943873974 375490541 717054606 283128039 698658446 48024518 458928241 346846237 415443549 754812894 990720740 776919688 866237205 674641227 896998549 5871272 334381837 706279353 924937498 64737010 514110439 449697643 470634685 817102688 958224752 193232539 764171025 516258190 941393298 992637380 999882604 238621475 449858891 92616149 841345997 164902478 633399825 954976029 955091300 295408554 533052922 194605849 353498796 294805928 848113115 400135154 804824129 684441418 840492449 808990211 945857079 215876483 710535196 255066519 823934991 23048300 583569418 614134050 827913875 754340824 762914743 485952892 649123256 65795532 189692975 856159600 900196577 519725779 786753536 864941116 994570231 148332376 547906521 380308518 703264266 299582728 484908683 211304146 796468567 860193892 963651431 468184466 575029175 965692610 973852490 944821481 949575455 245401419 304366635 552842901 933730518 615490889 717867573 139874168 790898744 305527231 800111408 368516982 573338493 432413670 610247243 669588072 796514571 665403722 971290320 338202763 575178559 975173589 996983730 804069072 977165844 160034448 362155458 632892869 657190138 447442455 932167503 7027288 321058245 226416746 869423116 533322555 801066804 800834657 980630147 891854241 902197974 920768644 931516605 592833660 952989403 796399640 863761640 988879742 989478029 934158228 964478122 270618675 313222680 478622129 500791857 424836663 604245465 189315288 523974910 767039431 999206261 920275325 959813772 250715074 589673000 730438479 807410832 402108365 820662497 116038454 884340383 838986042 913242787 102623555 219218615 849659707 862112532 933105710 978769967 216137389 823032091 499522304 734618671 69782762 844116432 392599873 640928478 599718188 685200555 949595452 960591490 211208557 633811831 586219943 921382235 565378781 971065504 420127769 440825657 822684501 921592756 511028108 870248947 50110998 658446074 670802649 944983832 738349849 762053821 133587672 352253129 791354577 968931629 323379156 996488351 706350801 854184124 457345509 990020870 584189554 701904661 40222979 561292374 679561960 999960655 638503898 803719100 889228951 917225806 260632496 630678589 334779382 361846141 615503785 779033610 98643 795701065 305310846 324528219 934863106 993631240 470803755 720695358 728783517 740537944 167515843 892068620 430789184 946494358 452884408 783350396 727665153 820360836 81082888 664880150 334323092 342551553 161584857 349956383 68634095 480175607 768430913 954520810 90286106 846013986 21896335 711495810 252761243 658307364 110575048 684306838 504829202 997038798 546004011 635278156 650612500 885346929 533269747 880564158 531270151 994778891 385644593 984904322 792737184 853357644 846286863 888693957 965394876 966730694 37185462 916732479 986480090 998535902 630492031 968154804 668534605 825224782 493830333 836796145 318188194 720298420 129969728 976017119 293582460 521989268 187869566 720243910 257185557 338404179 40206309 993382641 317546405 839882290 939301141 969711665 885146227 935018581 754717248 965517349 312158982 944189165 640424545 821192348 686048865 747962828 258498817 532952201 422963013 656307895 794623244 899604756 689327326 820156542 788656037 908678162 705534899 719864315 490917862 670184207 214065649 475162796 797007224 806219659 233737516 629950080 607277575 868342461 74807234 664879398 831123312 911413944 374015056 624621737 923645843 985087356 127671063 130156788 944295485 975345598 24953081 259382601 420089599 599897791 295662046 559895796 885336332 942505225 849723368 980560782 162780701 173286424 629663485 852165294 818902865 953988791 853019893 889533109 454185533 628210162 944321398 970494017 83928768 940864486 437236883 720193258 468660436 856983795 393498085 791469325 990978991 997210807 187702328 712170239 26883984 634670104 664511641 806704330 468469789 838142321 907649142 921246092 804689940 864571015 670398637 713247109 931337588 936164020 308236657 637443724 527808989 935043907 569266531 697185812 428091054 629588362 934897682 994680464 222474857 733005370 771464352 902024568 764442447 892601937 673414700 952855639 763703176 903506189 855690497 986292537 373208316 928329213 294871818 303772916 114741623 785716690 274880117 312212500 149188267 861572180 542232038 986780475 628695248 851932452 190123238 302735150 902490968 927884202 348028441 632773777 132182813 515612407 273724933 314238206 819260824 941607041 620597109 958813683 166360209 459626392 551989469 561266044 568072117 849118304 254729575 529481468 754054366 777429598 434027686 596982370 387451009 709351386 926218603 949457411 260894295 635016064 758875020 977580004 529895260 934201264 970922500 988487273 322241823 839543943 800291897 907642576 721253358 877270844 124471784 158416107 493456296 641085858 527249247 804233096 245020714 630931149 531273975 948006376 973957088 982898426 130839537 589985982 391812226 650016461 258707213 736531521 818085467 837812350 54599870 560254932 833514612 871147526 795861206 841633117 859510996 993880435 606941759 674850057 150950101 713457948 655122164 660161602 864597166 880067519 893211105 897575447 452672855 781633306 547450059 948448764 326366908 772343078 349666771 386669688 202025012 493320039 824931797 965479678 400751166 484589295 319742511 594020219 950928737 952754455 980271616 996120149 40500908 283259616 337668375 385210163 597871174 672346925 666698418 951732617 242081561 330730159 162991482 936187660 721818305 761045162 599511297 806771418 371532070 564567694 482353734 659808555 156491277 380606594 631786665 680643578 902847242 996341416 429647444 652468024 791762442 911994972 939435726 990555611 749980551 801691315 950601462 967790091 217055593 879691049 820729224 957387483 508822494 929004754 887127114 899708339 946488548 961936783 643509839 696814336 675385130 986054781 883834345 892317040 19677121 884688463 582276741 893427190 721876748 996130715 269342738 682467831 402155209 806902661 819369754 991327166 401853698 420765942 797082557 972018682 231202431 781902788 577767419 641771323 137252277 951074500 439605210 826347147 628315548 970259462 751244176 857151079 873713782 987842733 604962758 859085609 283592694 627090337 392869704 954343857 558279086 957719206 613627473 737392525 240706594 840630727 138678619 505487015 773523525 852098027 145996078 189747565 981862409 993714716 805971545 830606040 105673091 999995907 946829924 978153827 827662659 892866235 313460276 776647740 572929847 748811991 969726376 975067466 397698321 416354496 775911100 973479738 434330469 690783629 731667156 879162400 610108699 641124766 451597233 493523025 896534998 963549681 955006801 973851632 705252461 938071272 518507009 933669944 620728454 984124534 229815908 456971687 220450929 254249905 104679137 892615791 292630278 544747145 2991683 209548915 521345825 770034122 942780198 994281605 502257565 969558016 728084074 836525790 368458174 901677029 436620696 516987224 441070182 463322018 362100451 773518929 364239637 758042663 664546793 892695210 857741590 918423902 397739695 606791574 149531744 277356882 570548330 961825803 566061400 981265425 387230954 637917787 630602249 848460188 308088549 480205850 378829065 682634450 947745144 948924992 101311993 498134550 622566764 973104842 613280635 968956652 578301594 922507177 837342509 838939288 215171353 504861482 565116405 609078109 674274804 772160985 340692593 840996254 648380047 737492439 215337872 329298200 277783709 754593708 114261111 822807314 577842787 820971240 907684582 921774239 483866890 653284229 602167084 718532926 747090137 992976195 338940137 936596533 828382616 915068218 730506958 797516002 562419174 771147059 447889612 534760578 982444395 996531494 861770567 955180459 840189232 969270684 33895971 911273609 666684946 995633611 694454721 892672501 926835941 978124673 823621812 911929181 592573500 598943615 842126744 947715677 818438666 910033031 721417630 973816929 620444935 997351740 785456234 796778121 249839652 416354193 72969983 748905010 920836293 963394162 869448821 912155698 855844472 881666888 807557007 972389577 111911948 981569640 836961899 926072581 723894915 883403471 823924376 980410117 620451651 799208009 342633964 558205124 187079136 569939392 648802638 975234985 302619445 362701011 675566318 701834628 499538850 986101213 29733237 251984784 521879113 965271197 137693874 962980590 139877045 359835821 811000957 847896752 197381360 865984574 697046871 721013442 773691678 883290931 75804076 665796261 609064447 807751818 678287098 703002490 212950988 733857363 662853692 699630943 327405041 603604987 430814066 794882858 16491674 128666268 35431223 349680923 397485260 783947584 195848767 483627467 530133862 663477626 120349772 689783745 357623037 876804626 230595733 376508000 158934566 218202077 924712433 967121518 183605473 325545128 534350059 546348198 29696845 832588212 494943441 659214320 674975452 750140090 472314529 568408109 945860058 964499256 725363413 869025291 922751240 926186346 170691903 620100423 971160633 984117330 742039394 856370662 86834122 997558513 245409834 584499656 753443563 869772746 172587223 245283117 590694642 934759468 557077153 870112932 192045632 626618621 134572590 554158593 130883109 588856018 812084580 848651826 439339497 892621268 284952904 468034028 37394977 39293601 327419397 549855974 716485850 777478800 448187536 848442953 650201617 712301506 160731174 806536889 432176424 885899795 511841311 567648012 347252557 583993492 348310780 406035327 844127142 939774315 899419661 941769904 408035156 717209860 468457932 552272550 462524261 770064040 159450864 825580614 978426216 996421297 422806274 464326585 692215064 840049631 357148468 757474159 815642242 873084537 117974556 345120479 432163779 992972495 752417457 944335250 597933759 819188318 627025632 753615287 290195223 667057129 581976112 956492331 465130505 948628537 679125529 893175187 73248773 227425299 747117462 805675279 282179532 450138948 421267221 425505253 285874255 991930799 135123738 221873134 120499086 647432334 663879294 949465957 652094438 868905105 250111927 782733209 571262978 673548178 547961699 766980654 926966753 946747500 260851233 701031619 937482532 996686923 213468215 772660116 29418365 180571245 843633593 872129144 196305931 251991383 255607060 400825638 643709129 650344341 943042144 954947300 794275780 898131058 160819231 281075606 235321142 466645127 613940639 708632014 10897220 575843455 906455932 979647577 896082093 925581430 207788745 942198942 734952314 965141593 702653855 876691503 257698079 915642277 7803219 284978705 369195131 930753682 236550857 920864511 446470209 665197570 627482130 736695919 152222817 189939169 783964188 911252167 829756019 957573413 370524207 758630569 202312020 724287756 904727730 982320466 578534897 896669410 251312397 564841115 722123440 918386587 61196605 434737747 750407442 866023889 930224556 938075277 222404653 460819573 978165027 983180537 692353393 718567462 213924845 910348286 869478870 888581390 796590900 862949619 335864940 712777944 37846083 152659182 691004339 785298220 851137879 942415464 741046007 869968152 586249134 773572594 229721154 505896622 560854101 957939148 459011493 841422850 384949636 398074465 139886476 175300900 163231505 271891724 237057871 602042150 738722029 754990623 475856783 993632730 974532237 974613555 630518300 963086756 794591950 980236909 753925807 799641821 436830596 467222343 439611097 672337228 36615809 696284861 928373553 975306811 486298152 640510160 855082035 922376198 374440526 415919423 89373473 373586306 117695461 711785733 104783208 895509949 295212549 773051135 824503520 926210032 615529860 824428807 907654974 945832276 925976407 939306644 144927178 642808054 715023363 915527959 399798660 826678340 287648185 544513066 889349137 997298647 884221118 889098954 416458897 736128023 410674225 934124429 809038058 986698898 996500105 998912366 617489479 632422892 305183856 623213610 363167350 861604674 775443330 920212355 917614316 944868756 525988165 612183970 199751934 631391854 972575129 978018123 498541961 574585909 584698374 912980536 388512478 572796527 250315691 834084126 345829739 851579169 445132555 994793059 631571093 656623709 971113463 993760924 826293543 883353948 620038160 684346115 839035959 929199561 806034847 809568357 751936563 827382058 28398062 322428458 271255171 484602083 695744899 894822402 500487026 679613264 445429280 968956320 481610534 756448329 492851242 530780762 152652311 889551304 240181149 534014921 138664281 664362396 181748245 446420022 928488764 935898122 610152044 803169818 93480929 626722697 978413652 999444108 263677523 701216702 85548424 977305590 315981449 964508156 945723831 978061917 795804780 889602672 748678599 838247914 779593464 948341314 631846391 994103779 318189281 703252615 515070168 862877765 815783339 861505958 35261234 464804600 272683624 479771957 170758020 820682589 342243814 369511539 398807933 928752376 753646229 763511545 443122961 493119485 925545352 937909045 614840505 854456329 4872962 287754492 790228461 943389444 300390044 801937916 853929755 907511333 775397277 885873654 70401135 844700459 813312405 893868808 772367300 940480375 279989109 754542708 112650584 967206339 391958001 611676126 209658740 932195041 36832030 72259941 135420104 404204051 724217259 840063193 80303729 408255221 932371821 987237996 351972968 996934046 494063137 931927012 443213007 523385012 254005370 411469848 882972454 925183154 334936641 455213827 46142902 158952402 229635410 344745021 360577951 382080084 714349455 992084413 36470842 727682926 287745945 433943467 167646543 246648523 482047182 561590990 119760285 735226305 452735931 904910255 127758802 821183993 37118293 378285417 319061038 392170989 347842046 652458689 685665838 741672540 582662121 701793451 208868958 653567859 741140430 994515130 86185028 148382267 588927144 622636930 53010725 573298079 212404536 451838793 818899869 998636800 541467460 557083821 569654228 808693378 181762066 787439996 730137544 872388173 988220023 992469777 410359823 742605819 552601507 705418766 419874383 637289902 192052059 800690505 442439945 500257246 149854224 418951650 198205959 419497370 958873313 961130574 674934416 962228572 648677088 658318664 65109304 182540564 483495569 821407973 915035019 993595619 875331416 962174155 15681618 904406700 837812412 854579181 975737578 975873381 785221497 923700896 777642368 828725208 350641245 636538841 957402498 964988393 444419327 472703473 328257326 995767961 985337263 988751287 249906016 729419276 933374362 968749569 813965994 993868784 582520017 633143561 786846990 893306718 700548222 740631050 292389099 538724746 380290873 496754583 998072981 998505053 655821065 660792957 970490544 970631251 554996639 699379392 577450565 695564552 101386125 493211432 835747530 877841192 797469319 892398000 773401830 876041640 528649086 665049714 531268205 593676085 113499351 574756574 972166011 993190932 29514424 253448922 943454633 985853173 946087897 972868449 268206415 622360501 516463122 600547006 363909213 412120530 398077712 486670203 457434396 472407848 299068853 329998256 203177842 965724003 906954110 909503513 826840435 944744574 561195328 941895312 69205898 293943713 875535573 894674776 40703324 121577281 425602993 865335541 195250327 716972744 21652936 945759558 435853100 527255391 668835363 945333493 171320428 804045753 412459341 497411610 860996730 888390365 989032687 997461285 985942057 986628329 742251092 906544142 667493346 765777457 741833963 813225331 141007503 760353709 26131452 933839359 950012668 983071360 554760998 647295446 292624994 995186110 18462023 626518906 887152261 894460587 216123087 750264889 962456324 969630608 583146700 821871133 669483374 749594264 586323017 846887649 91759154 833520420 689288658 843453875 562272458 598201351 195352820 569338496 823966609 833400947 738043761 940049342 738237797 824380178 885450594 994327112 841735272 964890806 198596606 414762294 638306293 645290064 676902647 709627781 1921227 485272409 575953122 845489298 578076465 772839386 4795547 331145120 916224295 991853405 879669794 902761838 660151975 821745631 193647530 689669047 732739957 852294810 563581884 880749053 857926140 887505934 196956042 683263628 864677843 954820938 842104088 896341262 327306861 927089053 560691454 749504636 495125870 578909394 425101363 563724219 739822057 990438341 870258138 878625005 62794385 663762836 367878789 837510506 920873008 923740813 435666637 761138108 207551031 732166804 146258428 795406862 794683095 995585993 619284855 928428127 39054990 103523367 8446315 969759672 972028457 981487926 804454406 907967377 298067615 930798002 872170989 998303555 273242478 997407058 552934774 944218760 960994007 982053054 365447935 575877838 670393916 953914382 665078134 897663577 607088261 665294250 947065118 997993021 362823150 616974746 253721411 790646730 291733355 293494182 884623461 899005960 289708665 823973475 200454577 244381471 281902909 296819637 905263466 997140877 899789285 949624859 687691564 919378660 987593055 995277949 236240760 871057247 275375531 464161435 728957848 753978841 32187852 588926239 524926993 989368773 591205490 765811197 432498722 576564207 330791580 846737763 17779293 282891646 691964500 898221122 423191006 596887896 312151886 867674403 908814273 985385729 599203408 690964405 803697763 994932159 751651074 962793135 853494749 879868679 446849281 708476451 811873350 957620945 783312132 928959908 918591933 958782177 612592467 700310191 853671578 857896940 232720642 807644900 276610121 383636609 609682596 861733954 657717080 963894971 372028358 625021052 226570636 355803067 642235637 991363672 56406015 715787427 422984625 899452301 962409163 992667170 565959295 930550519 493312436 651813058 919599739 954639748 956370997 977311620 93475621 757971600 673304814 851116161 260660232 541517293 271214304 925443751 335619146 952289023 56647967 815376792 342567690 991544428 61354403 668345159 127173644 164562693 322315444 963337750 873842855 942672905 511668862 955940600 742624245 996900461 372890349 733538902 729272962 742963258 247919427 573612415 924196553 972768502 439128768 894829837 963037108 963409117 130938636 896026426 896639241 953000698 120617921 286254221 74850602 688592139 782728909 877334326 236319031 314233576 770123091 848874968 424331824 799053732 910207049 944908707 768797744 840392198 576353990 720058450 154494581 689483952 524696431 569717198 158057873 178035137 261712909 481876120 537986220 919977850 771124375 952329635 624722837 977004339 547316750 837610624 346290623 982592391 210042370 371734015 642580756 646629856 185821875 631627253 584213472 950868359 796768902 899100181 678015326 774421307 105593935 663351881 179810210 234255906 975352163 982957972 295075579 606804889 83602493 580226983 311823650 653261139 703421790 766268517 648731413 889494822 792456966 990034611 971520268 996510676 640993060 913217988 513604931 708077770 317824797 505751653 904498399 948203587 331198644 738299109 127100621 821234120 314902568 997934361 196540528 508451972 848062825 856560587 567375537 691576603 319184261 719137020 761180993 842462317 987724928 995042255 262469338 400727707 492938782 837617772 342037322 566499712 830211067 883321004 680429845 800964359 779793813 983237195 408461942 712175526 31980275 247856527 85787540 90088839 520018231 886337823 651594897 850131968 585748959 790899711 254979924 347146546 809881958 847092105 740344831 907221316 166261695 850286510 653683090 658699315 869965452 898219362 369896217 944084896 279270860 384539728 8717813 77652700 78010352 167757074 675410222 942757714 339537489 786887794 307811206 461882789 345291541 600454638 759317441 759932811 196796997 234669876 765932652 815066201 321088669 977790944 186335890 262557332 819649968 892944314 369206208 824240088 667684388 926620304 855032072 952184556 464425895 549109478 449068319 823001009 359895390 806260099 173097004 758931321 554260994 981190457 253945343 316010860 361711571 642482984 528901312 794438190 81480524 172610429 514757200 611869941 371779475 414326954 378177151 805693996 196004073 204316689 880769430 987451221 421695787 995967380 340015870 974595698 272907954 624628570 813826793 922743285 214574856 229777788 81964526 264481302 836656917 849099795 535961283 888573316 855507842 960453535 260605440 577966466 94595043 188462834 278990082 795299196 568251016 817384295 285071229 748644903 304655433 837347944 644997044 719034949 738509460 977893141 524928002 573837238 36448391 554494257 170415325 932327965 54290353 933810259 101693160 278906058 196051738 619262782 37927095 530514650 92738854 176234136 528752746 955065306 364044770 605076943 922721175 987533077 861549028 974370553 32551668 101494961 972925346 995070222 258591895 614680471 355305348 723671995 728065496 857262873 880796643 885520455 989686380 991265026 469438773 754012365 859601616 925141151 707232284 930325856 300476376 562551339 211325503 334940860 948634901 978887470 109979089 532491761 32029220 449586491 772739437 914643765 279739218 562721960 718777659 810772978 829888236 938038399 164311987 973160977 448157250 942541128 959763671 994951537 825242384 913578629 687774743 951527572 911348566 978238587 914885639 922845490 476491566 880925201 482630301 785306886 976908874 980381141 957548105 998858212 661789050 744323361 256471394 259894085 141735301 700265108 547669218 579269621 493469551 507715662 300255884 354262253 282566836 450031718 746367370 950181245 389182691 942686249 228889271 703557288 449644204 914421995 460499739 548196634 11888207 379883701 286215902 929669823 128028308 996434129 872725592 955459379 665136418 895866379 253348808 481719865 149214187 735350998 980135770 980848291 791651946 961017292 558888260 855511075 875206944 953724813 865714252 878991495 557292892 670043880 722106706 789620359 298095456 920876296 65649648 641266132 684239875 918770126 953781733 955526937 241061140 277366116 537008007 675968379 1029769 806590644 532530034 761767948 886820068 895145663 275216752 923132452 464957448 684074844 701931396 887595685 770276028 999863629 455025221 665133044 985314332 989901681 307484271 635326309 426980779 834019671 756459638 864472646 575085572 850982546 794938183 915201343 731799963 948737533 277780490 335683334 405599111 736510240 138433007 870975479 145069364 655908334 412300329 512036213 354864918 657970723 569343597 810651546 249339503 404677513 335294482 388299734 35749835 128487640 427628540 765618980 119066752 248574894 988323286 999193844 482549467 688488390 811373172 899524493 370118917 889670863 862073793 953315019 769413897 865602587 503462877 942650036 577978847 979739784 345740253 830756349 853003893 918301584 426700273 631205339 870789045 890892692 105884846 918011723 830275055 907009769 657387339 778214445 96759145 223036842 692332525 942047280 630798482 705399920 119839378 912582961 911283347 916594012 303450996 678732815 327013284 489179753 772311179 883568856 989542771 995511524 99242188 247550614 426972308 630120688 450921897 599250472 873313460 937238866 566048894 677096069 206053763 381465981 595611409 830289883 486373592 684023326 103430965 534064176 361799799 869818466 577856472 724765415 883714130 972055989 63900509 206742357 499592290 933798117 995122960 996875108 656980475 887504101 48525533 258397738 209100230 887351429 184695698 253910776 219009907 533959568 260492742 940441869 291648350 862033962 583303545 600055166 83275033 269575971 606160779 674683977 723205071 966090132 892268196 991996716 593042449 688983365 50192831 314231860 454183888 599918177 884105259 993936646 367424390 458628553 544011203 675243115 283580362 548429412 345004214 366314626 67212585 289718456 459149388 707002749 904192977 944412614 572708875 678705509 450947688 708475281 98381401 193447619 883547022 912318791 98413402 904546655 384724317 487309267 890289399 921748598 216816441 948494355 892791711 967904008 339571891 563050746 752251391 996397164 102331056 981103946 503223791 603908081 37398564 573180847 151316328 948616513 795272266 847356535 282098126 672189515 874678718 932087383 55877995 485231762 992168621 998207636 362127496 485284955 912270786 974199958 862096379 925238287 169864561 489227282 169201846 391543957 886686046 983244261 68429577 931797110 853798618 918407778 101311431 807687490 325169380 489435922 424135441 934038168 357587916 520571493 820297643 978236930 636938601 865165147 825117271 940216894 930952462 972719186 590865413 854993243 462510175 517727231 273257110 844640658 244243150 712393244 63649157 187744621 800759956 913598986 818100424 935328020 185686804 942139615 533023249 564433778 756256923 849490347 25489287 646491047 46673177 857992629 336477975 558631820 132125727 638256179 825031599 849740655 386273432 915842843 176512175 426571544 805485700 997808243 623637684 878764423 343059459 893683174 34564717 421609254 504674510 609310619 985051021 985079069 870992647 900672609 984391501 999830949 237922552 706493902 833584762 849391582 161869949 662599919 392289854 705206845 738704726 887457821 148610315 378834306 220717347 472752003 631694604 719902274 842055405 927231206 422367556 519745822 882681526 944304478 253018938 266757704 27844389 695528401 222333028 603124802 927400866 993236441 392684210 411420855 679670483 777797843 813453041 976619089 350034722 777765692 940484199 966770977 699518686 767621327 647315100 821051198 827442998 924448234 349065533 627060344 270495104 452016532 489826887 809652553 637527964 798529847 607982466 733852416 135186161 557782617 774538507 862783889 497735731 724711907 1807262 600053241 363973953 637799522 984930344 986833079 144067005 426962576 130661204 974844199 638289094 833157340 138608132 867981692 302425678 471410342 243074955 668970886 483957528 569295119 377495795 402612026 307883987 763342694 149090460 483755274 649712083 716248143 593483966 812712076 596673896 926249717 153258939 413834925 572780733 993785160 819917900 979651077 136101475 272494981 2959988 349798995 522922438 848356179 178658656 305559066 24599566 355586720 465504851 639443168 990781614 995895114 901550278 977639008 887838603 919928281 20481971 319818499 135720407 150231837 590318368 721829150 679764371 994619293 362693925 411029485 768503183 969383048 22658790 473533062 414243695 701912248 855921386 891806857 355744593 429454746 601562314 940536326 950133603 986965342 152492818 368078522 315101415 693579629 198985691 202313108 584852697 863975448 680393530 716257291 337166109 933049178 695652726 942684858 773152605 804351218 377864335 695243120 439516989 957043469 608030636 996279625 32082160 544969737 369610528 473215846 97963352 887574016 734011866 802665441 427977548 643377020 595719354 683604591 990728794 991825906 401967271 889395074 727379438 765525759 142235364 883632702 619192442 902363976 891222178 942390566 733892136 841239395 745959679 888264741 282340232 453156952 166746871 303742895 729175683 932229528 184929434 646320832 511730084 982331274 89389809 277334968 966789283 990097985 971130870 977550155 372655490 423654945 203976835 887076198 133228242 261802590 744702256 885160281 84407558 557398122 275592692 468401123 622719599 820041006 52074558 530120391 212317859 633231746 270588078 591337300 276496703 431819414 795975954 950650340 875612526 975265570 29838289 156538117 51269756 123964438 169512009 287005354 946541368 998263208 233292793 940217292 467697035 745085911 848128258 905806715 595117976 679020703 642429251 965266946 309271497 707520155 876703939 996091829 152350391 558737465 238041485 872265639 421696747 644275007 987018458 991584697 699077652 841600234 915136123 990485022 979481661 997027748 548845498 644398877 870837322 950179821 395188088 701706982 297862889 934495214 70471306 151838466 581350717 919618179 913900952 926395487 824448427 945945791 944362999 971503217 141704697 528508786 128579074 857948538 966365976 996727339 506691431 899669353 137086849 705417163 493931219 606369143 863655775 987903967 554617454 778292959 990843922 999304084 868439103 953399675 868013580 877142637 63916412 93787730 140233468 944432710 645919505 732742910 440643036 703098447 33531075 713910137 983143501 999802907 121614882 832653831 942547554 971721520 940978 15695748 508786923 971524495 65245629 675530467 970506144 993003340 338221365 731441843 52991170 857831880 81132779 830936389 465306558 902490216 108552145 605292600 882233597 956463631 501326512 811061819 116341319 892814636 998388338 999858355 894318688 999934836 866460670 885865167 237459333 356904333 12540268 902602500 23466183 208241617 471912117 505419489 386072413 929320063 607325546 851264085 154615467 926619711 679176034 899450678 902692149 956986969 261053876 869393755 878614034 991886227 656523165 778050900 40892066 687262967 119487351 982173487 813470598 953555864 712346135 834129368 151168917 154596751 316205326 519222399 546822545 885885173 271997969 846842157 615102935 672337220 895464260 955209915 148648482 981115442 177040313 968115095 285919171 926250135 701221772 787500181 358096803 703158949 520578872 705303618 238588386 523294639 240132434 975178241 576254821 692364827 352286300 610397030 585041460 643446843 906637522 917210911 163377657 963282595 409892408 785114754 54792274 857218938 94945474 988525955 996412995 996602490 967774474 977476852 953390487 972647154 33941712 788287600 978974945 992492003 281269946 817238940 48914574 853028608 87218317 641667934 995962396 997983395 525654268 603651575 424185268 509828018 26102711 553023922 340235853 651324956 929197284 974606364 725680970 819116581 961486612 999060585 947955068 951419435 354040836 668915476 598079647 871309303 309684971 394033139 848180400 972932100 188021344 480941837 533774344 711495604 478829129 686068788 963384878 984578849 260594159 835499237 49276510 551919455 42405434 917448740 340698513 732320360 126312831 230465415 423326770 735433191 107590788 345715868 512248433 801017102 770974627 849293599 336011812 719899386 677526756 849479896 168204011 931991970 436579746 560066762 227297072 761932702 624631891 646290858 276309366 980521452 972630634 989387517 201629451 607108721 668244889 881332123 22669250 687013689 793239095 823879833 480413150 873912914 355070581 677986944 427504590 755238561 423054876 935828956 218102088 653195003 402207028 606798323 828146063 965965786 972055614 987394689 716048080 920055292 212364398 669546360 373440390 658099571 772877976 999821665 89668049 826184197 349504648 443803104 38496488 424536726 199373658 611485299 595465324 821908698 867083495 970649925 890915180 941182195 770313759 921562230 51279028 135646005 716892767 901831891 643504523 650305401 324681490 427022502 138953076 783101599 308239445 680823816 400274101 713304774 722094948 978133945 441953360 462362044 801196006 920203788 789653446 878596351 235093285 449960374 781735384 825807931 427394335 430515576 88768751 350984824 338446305 423125580 10470234 321012664 601479494 847042549 502689725 882592608 501453541 618603717 497200174 979819174 708854705 830407777 801654323 895567136 781808268 864574692 68517805 185677624 830696526 984514328 913747933 947831157 102742413 718170939 812993400 856066938 45473393 750770729 772615741 931797856 989353801 994412558 403786687 852742916 170157477 223749349 908882200 951924569 648865857 808218936 57018178 142890082 300601170 832551514 282822759 965240222 409423262 831231659 108692116 132852599 870078874 999994900 514580941 938546229 483261774 553931618 321309618 846418942 148409409 506418627 127574339 294403220 852547807 937361093 42926701 879156575 803464347 867999925 367038171 386116368 376343889 940368443 777946413 873055519 991284876 993850969 755496835 797587688 545828802 556141500 639240830 643513346 949929725 957883063 371005001 831589307 441131556 817023826 791241374 890742882 383555409 952615530 372983049 890356338 163151615 843299302 907382495 962817836 580696981 658207856 608484387 744428348 915401578 937957886 145169160 236810773 782649246 985718396 920028251 991635272 716236170 984755363 916787531 937220659 283298953 494305474 528358776 571735518 756527747 852576158 217702990 852902401 267018621 283281588 700242723 757381200 120068375 662562331 742875044 876464270 734647166 741621314 595962294 964202228 649881766 976652586 710414787 936005364 920083320 937474837 255816920 671270082 703998414 886312864 889797931 933384888 146253058 281537387 741201484 759265428 249299689 720552909 35705394 95469812 761204194 938057427 350566241 983642009 51688449 381730293 774516218 864129837 212958914 245668121 229232120 654637024 864443141 994514008 158994003 977804048 420352941 908789826 304251934 417912471 24998786 811877629 825515208 912601820 495193047 740174407 510640046 787115740 642183091 708939233 674508769 885668828 601686329 646887751 6758575 792787890 76307244 433868091 148311512 897014355 297692809 814611005 765659830 915349740 539830131 957278701 369580499 543877613 749554801 990768582 217184802 876783826 551210339 907858920 974594393 983907054 769869943 885574065 222299189 672541484 854028621 998556034 497224776 955573464 617047058 738429758 279720464 733112946 988145990 993255033 776493149 975416418 350104611 962228883 89746235 651744414 440724477 886130649 339236732 654428436 637485419 746457549 302462672 657422184 9161117 784650440 495661880 591015403 502319145 665108134 35978319 704672560 954969638 971317116 253571186 502947106 554822802 831800265 46800312 486684165 856836743 960551502 823630323 959607826 241646351 434910878 859565744 994431498 544822428 584501338 869784720 888933955 161888197 311012373 108101911 606256438 764347366 961502055 298859047 430421974 468563353 876232079 111209687 899530767 609516407 729026745 637188549 875728525 615919605 941731712 253652288 342308083 412525960 749184392 812246665 930220989 17089705 34979982 819421342 869075239 722451518 905325505 415924022 678619852 720038191 909850292 535080135 648142955 823961298 962035804 881479849 912011812 844905076 864911598 946022879 966734888 578682181 704052430 716972629 851129717 584609421 854369175 574944863 813853639 559047218 998193526 274497020 786333310 127385404 199694846 926728038 992080564 241135463 827144952 134556510 899996219 564002770 848013002 104927370 689263555 818839179 890828621 573503300 715053160 933858561 973272693 885103877 993452738 701656010 742773201 269372268 842384611 207642504 349445363 221332596 273723419 297713641 910904294 93612264 269983194 406167180 881149538 448516254 970266559 321233836 879327406 661290093 689556995 876925336 921596968 208112008 499003254 505251651 512113686 523256518 915836509 137226025 576435876 182457755 516688904 819133237 910713552 477035159 732811123 579020909 584966949 443547619 991953871 566322428 827121368 233683662 881642570 722713026 820459188 345584379 689306553 210391846 460514391 122614195 789011126 510997664 564187418 283987843 838464204 188012872 657603297 702853267 848439619 991140959 999235228 390207480 631696158 537013830 592400288 150981411 980027014 992080541 993225011 71984056 293258882 965512901 971212896 234679127 331554186 4717723 887429966 674927603 757765380 783380051 918463691 928317036 933453575 77594462 891417676 546984113 911090731 586279542 699231814 521095333 677297061 289206117 377535828 299340298 652195107 534379035 568896416 383338324 954864632 803636087 895593294 839237042 916318515 444570669 673694013 156073653 215381368 322955554 608332609 223911864 938995243 450000156 499107336 543616484 870634175 128239223 709440313 529558781 594275864 731719819 800371096 510644142 935060996 709922529 882463314 44460609 467804654 828645933 834202169 633018937 814155410 415802873 636633273 529155981 765726699 505278013 600005931 646485471 714619792 344244266 591873794 765610551 948196878 639769819 997299467 605884222 908030220 48785193 987906183 469864046 973324354 788848958 911469244 429037565 634908536 664691977 802648431 519463520 944030483 145791649 686836733 860863985 950243906 310574853 815246621 269695949 692031100 957766392 966192170 507425851 587556962 315174513 847906313 255818626 255948653 647504685 717134360 656079556 805839287 878965385 898452060 353003126 913454098 581795900 617359101 798510397 903783560 811054941 894338372 368064220 422672957 965797258 974561256 305090393 705185215 507801115 532130954 384540379 458006409 958530433 989465613 638862616 673625110 479400141 558935600 20948636 474235735 876239904 993226772 72507969 90155405 128717773 710061166 396420590 757450851 8869299 342967887 54176771 348444757 772228659 917373058 230642229 888399132 424020909 815706117 1458866 902394190 209755010 894739467 16681454 661073145 862246559 903163890 841807814 861754914 544521193 899484939 920811109 960856082 117818625 721442449 439467821 926178846 208082661 280662477 367131153 749281464 808244355 879938305 656118301 731658895 609180355 756912762 780686815 825358649 721312074 803351649 653662990 682218642 909756824 911463678 424668481 601732241 448277348 992918713 485926724 635301569 573466387 916277793 260863565 535159651 439767744 914074709 269728282 697939461 249137436 364031222 196136637 720469261 766686411 905887785 628561841 634162100 873290370 903224876 918894662 938195843 576306996 868830234 291758880 761662150 649216789 684209804 348523863 639723398 102706576 464396332 109463747 987224605 57254691 837775123 100802205 408529389 551276501 803492156 211376238 299439759 468087166 918141063 724377991 822989351 1282590 585699069 322452960 504043132 255566978 990187851 97194712 954236995 608117976 650572620 723436736 893812303 951111836 996302423 588060203 976244969 310983400 757393901 603769286 778670491 923462027 948195872 814267077 869617300 737819415 975316483 145517165 588022993 696950112 700774482 825608180 843171174 41016845 381937449 306511369 395506596 682420673 938318070 151949313 878038214 321544212 968611037 758149194 973604830 924603096 939553010 644629635 954368432 974152536 980362982 268377084 704026576 293462436 906605612 605872305 617733049 262433819 935064537 248459609 763700288 395941588 580476770 181356862 754250934 948480628 994174524 800966543 896858800 379103166 832564271 176925829 269179354 140963841 191460458 857702506 900626242 331440903 355428066 420680946 503951124 755670135 949899139 982681479 988963075 910339260 957539934 380393286 511877899 465285265 858517415 50072537 398754181 832584109 999284516 637918873 859402703 357035981 753339487 958996129 998791166 527527082 564238400 690846605 965130026 366207054 644654755 991049771 996242924 995347241 998988170 591637041 928965938 664128425 802520574 292960593 794520588 129222009 881117711 573276403 734776371 43155476 362749687 240954123 785996765 562998226 991321726 99536571 803871246 889736067 889894460 647012611 921529752 154430718 574952402 3779498 719917378 979832910 985864287 925483340 975850735 786757762 944992274 253483313 317702499 15998035 623751418 494327440 999141096 848366207 909839854 612937664 660188705 655266620 860234245 210124665 871160560 100093259 642272798 937162067 963173332 482650238 754915135 729672009 921075356 289814550 708028348 664797926 666626439 284551821 741463636 482395942 970453641 132745300 839774883 848110164 906535479 15879020 673785830 559484963 982341694 289017535 664780738 103445102 205973319 752280367 928847643 670212246 677982012 346605396 543004252 29494034 923174289 484777188 560334005 317527833 567706037 906705053 997702208 283537379 560191476 270483343 766904524 562826318 657003616 92500824 520100806 409698316 717972022 188891474 805140404 566249054 920807361 668736276 705955038 647993929 695852748 336624044 492057034 777220512 920969208 858660842 891592780 721380235 849565919 782419589 976569991 147795374 504413954 491604059 959043276 636216710 653860592 146502583 883434408 586608687 754533514 168882429 200942506 855784868 860336677 221728000 713784347 249418233 710177831 411708868 740061136 902103815 943886779 74553881 712093293 42580311 527488011 211373839 221476742 309558188 990582636 962102324 996690790 117458515 897661353 431460756 557930151 686081099 702653262 630485559 793359000 829947887 869876078 603139847 609029960 553450879 986582623 629637857 677684772 606214549 886177286 486005603 577434956 409989808 546835034 691566213 833316877 942465236 986221513 431907401 450624054 322594779 794305430 329951919 780901664 28451674 90617773 766232741 922563606 28175217 433446057 87632473 692918288 841723846 947880008 839385127 887328473 697520240 971178355 765890780 836206925 406076494 470515061 117408970 956772912 214570569 922666659 110470225 546972571 911909939 991214051 32608280 149504133 291333386 652575669 449858469 725016852 279494105 466035634 346942630 602468865 96386660 820471853 801661295 947192288 81810182 783273928 394051000 876944551 399721897 968899615 219401735 227188253 106963137 409402756 739590889 864274945 67944135 219867234 256889670 391367004 3811096 218986322 592784547 720368769 506791363 622757367 529292509 902030610 294160323 521740736 704353774 755598134 873262690 901090421 849713163 971745534 20810817 672436010 687600473 916726605 18592870 863110952 915958159 950229882 411374524 824885265 453088001 574108959 66686524 787908586 874821922 987458538 780756674 800849085 989122531 990129442 619429157 998639055 327101588 780975685 737256979 880452776 27354782 774286752 200559484 439337676 504226124 742439127 967766529 989421737 261839637 822911349 185800768 484146076 268854525 274321507 486302378 974626533 398510314 996594192 529499379 831561626 434012494 437205730 760191813 899104594 228987532 370273389 590691652 931793803 791973962 805402247 761383366 979910588 839960593 964087193 263592331 993196275 726386508 963795165 82204840 442401297 663711778 685477787 394802612 741039511 986935470 988160585 827568720 986536802 490476971 761264781 916592343 981635718 107524286 149337132 661207583 684005083 301035701 964118946 318349184 422691008 448364450 715351892 352735142 741960144 790344080 839188257 450411169 669612492 471894468 533329674 103692256 499397742 566142311 748872340 705006824 740324593 4885124 198612163 438372888 992149726 556891517 965395103 149741040 651646540 116979458 243981421 457054882 849143676 246942353 690663406 139487942 533640748 400014127 403175967 392221226 460457606 543511305 809173990 334187720 892345485 890009100 963003515 949880868 999567302 648183515 694525855 303924490 545140381 674375708 713926295 197145990 989613105 653298969 769290854 630866847 698588086 247321432 620283090 868767916 996494979 55630110 358165735 616935770 731538446 731474941 820602449 419314402 615407854 469727545 530423446 101832218 512656839 753065571 787446764 73307811 839519056 62292098 383259383 814552211 945078794 847805434 885313675 804610140 906463220 260971031 709759515 397517015 682085790 895944108 913746625 673600988 983276995 474102820 857690154 615921105 827811786 574266667 845835616 525483471 815961605 405921025 823862352 427122892 921722613 466062878 563509373 914912944 955156787 173675188 574021867 658659010 992586485 245450369 730769097 992571379 995045738 412995309 760583757 212798807 835599586 236063150 593499020 91099829 756532449 524747111 762939761 620398873 812545142 857203300 977039367 105382732 519018510 849467177 938254201 451654121 675583488 777848116 806962596 109107375 629554642 371219499 388402283 554606243 598797127 697686107 773802750 538633021 824404980 637793126 969717380 587715773 998083225 987148626 996163328 384304216 675405482 794104817 933315805 213353370 899539385 46336885 51030839 988690886 997198810 111196373 693943194 978247227 986198229 153577997 689116240 91894024 695434248 405502610 534926884 615929000 954810360 263961016 886705809 315095058 447835731 106106437 800645129 648037668 805364426 136878175 719087833 808496397 969160115 513405457 626661057 175271218 770793527 206767176 473302263 504907587 678986667 403915872 751516347 865852685 992049824 198425256 913261353 16031216 173358240 913591049 937136472 204063447 724108673 569605781 680389898 717924643 837421824 516439809 645044350 129939840 953365185 280558430 786405230 769803895 898627269 858667321 976940152 340840037 922232729 639777427 764634430 639422191 756576525 704476825 737725234 806096614 931030614 516382225 780323946 60252828 819448046 801975827 881613987 769897929 922603939 407389989 828946725 664835348 846964909 967961376 995659731 150142940 883928010 777105205 826675190 634078847 790879483 886897815 991377801 445474252 789765726 555435380 769350105 975122992 987697516 353501262 695253445 908638520 924857438 265508168 300298713 144651704 697241398 597118925 804686573 426697733 574178533 458025325 939726445 955737766 974968954 800417784 934679347 28628453 255338111 347678352 975524465 660620547 869222936 537992121 934136218 439344666 801834910 391456107 517537251 69696838 240865326 454636036 766010727 967798607 995072439 783038914 922813200 590479010 754751708 840249120 877963806 701723917 923379841 905099689 967357904 936523502 972741812 494573473 564395300 356477241 990523617 591970023 668968107 775609387 892620579 93311405 849732290 391585936 935063765 647024213 757715744 79388715 877163007 54643067 704152694 138461595 570313369 18865088 609781848 517747316 636883548 251776214 338536113 577380578 594336033 462591441 679660332 209173029 577625089 804909536 917516441 240808671 752093393 979668693 996493269 692158861 897681907 965219341 993201703 727979044 772067274 976430543 987565548 888343987 945251588 228432672 342305599 100598749 504918515 300117720 858293369 234581783 718745221 34746870 309530716 386397702 728881496 659285223 950446837 96927917 989237784 56948085 911711666 433226108 724507042 127297388 714340722 687711439 913714142 187942910 662814961 96001949 427072730 684535539 826556837 578180701 985124271 403914116 537848052 401017640 646460448 3103027 798131835 696791086 723516407 979709402 996137627 658355849 843780705 7315647 393349858 188781582 817683883 650533024 702067791 446059845 949614768 95577790 428402010 196618955 626005916 969004037 993237025 714481282 880322240 312142352 985629509 124652751 301530045 857993266 950091393 602821024 676263818 965158769 996659029 511822627 545783406 701922206 889333100 259164948 756634441 555958020 902266424 474312050 477640741 718859973 968809219 813138969 906344465 261255160 833425976 499979307 770003083 895373521 957649103 864819230 920382724 56075298 668070772 815518809 853626920 465350067 942817241 21021447 531947979 200810068 765812673 357839215 841465003 279378114 647380920 829025579 944031883 696626133 970012093 722204268 777410979 622870220 884355980 299997606 672253379 898056845 955383316 497492021 557756370 702974394 917014936 650899056 935977104 198780316 955407552 606175593 886283348 917957733 926305015 417532377 895954403 963984374 989645164 517124622 730556232 152760744 727396063 667533302 990653077 591377053 728934027 44581335 383473712 302561508 401878616 221916186 955628388 346487324 780955827 295258197 745394766 263443281 674483444 993559875 994138532 506174892 936200665 984017858 985205281 6047177 760245180 923896548 947197625 946133188 985112060 905087369 919297251 326124776 922431018 957134877 965509433 600231273 677236952 337830818 373392182 573758111 743240182 578731050 938210792 102033550 504512347 361253562 999345372 587556091 927050115 614091036 867133412 921423077 982218044 751436445 902840193 381404915 895748400 903007148 922526148 147888863 428318560 796582123 943978206 697321543 974385149 155266920 426540627 307849633 731372352 563099500 588898618 738374907 818954199 125646455 406730406 662153512 842283222 411419682 850196373 467555399 752835551 174067868 997787980 411226409 556480705 317191053 624367236 95952546 479211897 19552007 243627091 386127105 506642516 487625224 700222349 824557538 857974340 489423388 876021965 580185984 844891977 987012747 990354404 290646741 592569606 755894178 963218207 718587333 738462674 198682036 892446898 875907840 878514481 852169368 880674812 270720532 563621005 738672266 874484077 118850148 786214556 890831200 916934659 654754326 889540990 981622324 982987148 775856683 879742072 121323426 370085811 126854943 673138385 469658239 960332730 109465337 944915177 744933357 988780798 21001322 774336915 554789702 686387455 514918879 678958333 797748534 906809238 615877431 654267892 308745378 902608790 734626629 968469462 982525920 995369715 533608489 682181599 510322983 939179944 287200780 402806839 586850720 754716581 856983807 966840162 18490070 567603502 367721898 890092894 848971445 911607564 271322139 738335137 52553383 425024115 441458428 620972968 258675390 876387907 541102605 823025203 216321231 304621239 257897540 545298327 378737712 730652248 744223257 954088039 808728441 995070962 795487944 973636843 898970354 967859034 179162196 922722571 249388303 820153463 64732871 331328512 22043906 316437013 301088348 723879669 828513232 947712874 868827270 940642411 889631208 983681559 122705192 301413534 57045054 611352246 904751004 917648205 629156606 656152203 744347221 757708747 204879052 810000630 28863975 800074418 755812226 907964027 238061491 820876581 161462095 936831982 568723675 789581135 845486653 886574226 771868475 805777684 39443592 472443490 688256187 961079394 22383153 139117265 809789386 967016879 397605587 460724757 233617675 577379301 91874497 749818417 565927771 676586607 482922980 810175528 615793778 934721396 379881056 483882601 532897504 781836348 673954692 729982052 787410537 871005136 818073687 827495401 949541021 977221327 123111027 302103791 736768328 941595600 570983764 582958536 595712655 890674861 504992655 872095249 812709646 943630622 956207305 961557360 864753838 934879538 20375118 366768547 181225038 396825127 301471103 346623680 693859627 923331248 521777922 838442976 576718595 954451478 210459223 888922366 768002753 873520331 757566053 937349086 400131537 795956642 818246941 896880232 679817952 906815637 434579506 863494076 560425190 618942813 455640412 511864958 451071244 839873179 894379858 936908113 322021559 618211696 58890789 650772241 735920313 925773992 769612033 851515945 941006699 957239625 420873563 545609012 127692440 180402461 92729888 266727769 476243778 749863754 190419903 831946338 807452648 855452150 962918984 970153539 377742473 606352610 980852370 984494692 899153596 943623033 637640881 675804700 46921154 343043555 795137659 806106819 206765185 661380181 145857119 841029593 777698429 985081731 960229397 971731982 871050078 951724460 843259567 868187229 882426133 886815833 739785082 934747259 922557653 971895235 595390361 794849894 742745185 993384073 500631270 696365815 951108957 979465247 225279141 290079502 849130457 869305285 157787085 980405959 20338420 33901516 152047876 345138188 347502672 379978853 276794777 987419197 428259388 838895559 78978732 768689053 992347493 993688383 356251899 377482827 16914742 346635984 131648609 567929565 285902630 928785365 446792360 913150106 136530008 630764599 787616163 915422476 412475702 758936159 68721811 434456859 217878215 787416843 998096631 999900174 675456755 974834254 892451224 940895364 317444484 944822432 897667456 943135072 226630288 413934227 191220408 323330245 488423419 868495991 155450754 304789857 186893638 293662553 676938283 925896239 86606703 728083889 504063317 682493083 297000371 984183108 424275789 969212294 862835799 958331200 411749655 434125185 223766995 286663963 902742886 971855431 593267220 808474481 948849968 974498480 305174043 480542626 630733066 657326272 752197377 805752539 786680340 985262430 72195318 827886003 608514321 833187566 104398266 711006135 215266911 789805317 23893122 204502608 168080241 639498150 505267819 887512608 46985077 499069094 359766914 381580598 169468537 337646344 864687508 911311512 409007519 778671547 577292135 816455750 378768017 816609658 151101252 433805990 585749906 871180328 765295704 986606411 338665537 659508429 424920417 696040246 301087942 622227597 300790914 412387056 65141320 722252194 691298576 697030820 29228456 940855468 199405366 723814794 188389924 332884315 480400019 827581324 28771728 111631696 960391603 966987086 566837285 859987300 986998676 987074178 726904545 728658075 983196450 988857954 270071657 557299358 818759483 893483501 842106639 969084846 987099317 996528670 155419068 758612200 101663854 745787486 940552967 987393859 825782930 875003707 963433205 975925521 890552898 956486614 822337949 902673425 839413124 983235686 602850852 988739603 583346912 675887128 550114921 552709515 271132799 499578434 679693049 897221324 99466675 463427980 443667055 957762257 25972301 214172500 516829219 989929713 484015444 699222117 823758974 976785736 191029473 322568544 708026386 797190762 412125618 896384789 1695050 171742781 981905592 995504071 285479343 466599282 941181234 945791908 800024198 969623182 325747051 679082807 978170821 978917138 968642643 997255534 137903851 844066984 185529906 594531513 893203087 902909849 257637570 359378163 517506787 802341998 159123825 261205346 134149063 774806333 838130745 926131560 120674344 310964957 675207644 730311434 79308887 413921810 756925956 772293232 141630551 141893238 237325653 682191453 781047687 811950697 21537270 964850177 264536252 269008768 333655033 823359853 480909954 607350261 978526252 991105416 47766223 941106831 448877546 455110948 560791140 631829762 592886829 722435601 188815702 457475296 439558480 798040975 972012675 999653471 817333067 881588803 152412404 895480869 812074954 814495469 987425972 996078875 110727828 524989638 228398893 430934919 569141084 903743470 815669384 820921498 619459269 691386391 107941208 994713789 826010586 960489892 356790022 458521047 89072761 133466087 805464086 856923748 745053712 765986117 250250337 678524136 346225893 657034627 371303270 900264983 759290798 816155508 371165105 984559491 137124899 517817495 225712474 415534932 573596638 833791233 442389268 518125815 164348247 989954129 12816032 576215992 237047252 531826811 774917219 856061230 675806430 769514808 318615789 429465206 395509041 795846337 612355490 614734923 429719452 775076767 363139502 830567362 306439856 903936824 438159178 496698240 325429452 812405031 151205352 389059595 441330350 597532825 63615201 821235436 245607658 533329969 418750298 623041693 826239422 895586932 374446492 816422440 373405404 988217502 556013509 916804566 991122572 999957169 329667339 442354490 610778257 671081544 926641796 963931727 683992965 896416929 463075317 635202109 208920314 544483402 864576727 911836289 810151080 909372545 93181048 674736146 174168090 522559850 526841907 899057370 779567019 891850818 74991375 763187413 170090909 462504199 910362180 917918213 19865049 484093230 231322293 339140231 141708806 216228254 442693060 804235506 476182299 595856857 106533380 667120792 137638445 861505594 699228491 765717751 731206810 879658318 909382213 952559398 876549791 988295477 558034263 992309930 287569587 838588331 436608070 596967219 238472355 559663278 142350067 709617448 710289922 740434874 586850051 766168176 960184882 993893035 524283599 630671012 185180487 656422753 31841630 100946804 948654544 955359151 914295412 920896026 876151523 962752909 383139667 816680877 628762799 962175770 637612721 843703077 284161689 491420601 424691026 877016263 318161567 434623774 274388321 444474569 699518501 724888157 91577532 235565334 426463461 544118891 987129668 991899283 487960208 621733434 489534143 601381376 561388860 999111789 654168768 821632381 407359550 493260483 622811591 811716767 992636784 994155858 819630968 981638743 165007625 769161341 721257867 874086544 865917364 992155472 395969986 932361684 108904040 909900148 974438127 996546036 94061500 698134926 302751042 316661157 799590762 889216900 931733147 975487278 289877775 408467901 907663927 983855251 746784799 807354407 626800112 909478991 616018472 699086220 463877231 540815805 245879617 337260455 440052951 737685681 984858344 990329447 339331884 878810424 969682188 988064228 148031594 349924335 514122359 933409706 169303641 823025979 919735830 936791633 44880279 868838573 655698754 960475653 562554183 625727046 95896504 479574444 111234676 673885161 292028329 690700672 956519696 975452364 778072388 944250244 203299075 735206362 831494611 904689614 955262731 959942116 746559564 837739588 96881679 683497402 103935857 562156004 293954393 762251976 733617541 826520644 331010403 657411782 851139886 862402341 690686603 856597787 486135237 491056106 606948471 620928818 814239528 819857609 348769672 916884413 296595622 477303853 602542675 643512708 319120380 605264939 786542671 914413226 504240045 917839617 395928559 501352634 318569287 668572309 996865649 999280642 911816302 939551980 720757711 987805964 998355906 999883849 509389151 830808695 114530795 820861462 851014255 929010231 185540787 633072184 328523453 859726129 605609779 974261841 784320425 976156397 527815364 777700582 853197376 963980335 175440396 994902393 653118815 654792283 902136082 991197634 747418029 804880520 745117962 763987894 773212569 994629946 655614365 748508048 322948892 637271557 890691628 931624520 359571283 619242206 745036851 792959207 433430248 857480527 660494921 983466992 115806142 635755250 225781535 601648870 74294824 111841542 382732041 666955250 568582887 614177218 315982244 407761432 179791506 374649477 518396042 849413879 565723615 690773771 672042688 802633557 372035951 424961400 259514169 822492806 175076890 658637959 515084258 918204115 189894179 369219386 201838354 328643497 66781181 769578918 206941842 770472470 219125027 420591781 152554385 526406669 159777734 897402187 742245260 819255059 599496511 929461043 712831374 949334118 796262011 816907786 141627363 248763366 817230206 899828208 280039331 541164666 109595033 574579853 904850594 961644736 290969774 759500981 135646894 759140235 58083627 160670929 127798630 998796782 296551635 527537105 136967377 380005253 838719770 950788875 672277202 791775355 786592 612966692 390856828 903282194 161320871 592356141 569145267 876619963 953977818 996913004 574342591 652468635 158870868 809941914 363528948 455615411 53240814 832883433 881209271 893773940 192771394 340640746 470972821 670847473 720644974 920459241 829776570 913307492 529290885 724483328 266706305 915163575 119265190 678653872 623512457 866370641 381119042 886741969 159559531 706363567 947176094 952838967 519691986 741122661 97678208 779733084 673152071 826427092 13281499 893501845 810246385 986784207 388696194 403830857 991881090 997321245 212574313 262674476 558785126 642774019 367830739 451336865 406872780 556995096 896536940 953061790 819796537 935353825 54112988 301234738 755976747 790159708 172391239 518230285 265224258 877411330 473556080 909513566 196342888 454806485 522643405 750278501 766151362 910782022 227661151 724781051 527105285 939180689 505148109 654668464 828711649 963600463 396020632 413440933 674084414 781794755 77402132 561805575 976814001 998294665 535175564 962625964 368984806 768607459 913557603 935429499 400618661 483245168 897660858 961808560 808657461 917655774 136194563 723381213 634054327 937123589 987355862 992217082 126635232 728617755 511788679 725528747 427058163 966467555 556902643 815876708 135118401 657789131 467409158 770306725 653077074 879268524 563739590 569746101 845822956 911152821 259874050 846540489 402858172 802513110 626380979 720894499 117182203 791953501 675056545 986050746 843466315 882641268 65080270 201726934 263720622 591617972 862090348 976334382 802125169 843314670 75060086 186860748 642247076 926417436 826979851 978143780 463063330 692125017 711288403 742479243 293794514 486626716 694771540 779550080 835181761 923070033 99206131 406121160 896838951 941527547 894705399 967184178 188720677 335933864 680229068 733951934 801333200 979921801 136452376 977981739 423119638 596514155 835607085 860190860 961209967 965480876 912407593 965789974 306999038 492394716 182105123 240436390 873342512 941588249 446854462 595895184 91789283 748349068 351910491 447923483 222847281 901549355 647517842 977809569 47051457 347610442 240464460 457842067 736698186 995065067 381702976 754227286 340829937 424402173 911900461 950554696 147874065 533666964 935588670 971343967 607413618 625204221 890406664 890757010 434861561 503567831 469565152 811735117 310464752 375513739 193041487 694081773 638617907 762297789 707770489 966873057 97346323 485013669 536738192 568480589 909237891 999291034 21835589 719499007 194872185 595901246 526509087 626267950 738767547 908054218 839104625 871020013 630162518 676766048 340392580 703259641 138035429 612598447 95131313 868054614 947904923 994161134 997001959 997926527 361041652 676744872 273770621 973439454 880257091 953505239 203028207 909393131 34900923 223980130 673689073 977810547 559814412 752070844 341786598 861719734 54101984 294996341 29717459 291646438 824814898 873900135 677981594 923436454 725753041 995554938 183274931 269000627 256820360 608678919 171031522 490666406 991336483 998817040 103921804 928884537 162745836 677988116 81332435 836855517 618797750 700105347 69377264 689635743 924866840 975429684 554869479 711708056 371782696 802743710 319644362 334394276 472094168 705319897 571088311 844769187 967959818 987075619 233419760 714851325 695876580 945818132 434681087 728856482 504819872 699837083 529968939 636189670 330602774 997913963 88947578 153749527 169972275 225227599 227245196 992611910 565603656 784457423 779083583 986959493 508252118 520913509 799195395 895846946 166792480 992398920 696326452 831907661 624056507 828901992 898688219 914011684 237370286 731238242 884895663 912533572 963687011 980532034 889756114 925626233 73059402 520027393 286391412 657638170 660553240 988027149 759166548 944941426 147384650 980304691 992776875 996727908 159881464 642093576 820505478 902232974 376553196 487303643 793825633 993761636 242090734 611109916 607173359 777628801 366490233 800283542 235906841 995938696 34378827 817028243 389762391 741339810 707240161 880897089 941935869 954236626 843573975 939711477 993383337 993459705 933675830 974755679 252213062 756235956 46219930 873423416 488108047 569869769 154817938 837937880 401134516 542016761 185001178 244356911 688132669 700931545 724943314 756890225 167690222 300624281 105182366 535096635 603053369 635003500 545217706 718345495 371518147 466080192 764236172 957759941 10342447 522125290 788849529 937446325 200341610 652940918 188075641 806250328 105584382 318481696 767677569 939709395 836191511 851030143 730860652 769363931 240598750 717841776 900213658 949908228 492475815 685551043 826127808 982796706 258703920 394360367 285138420 574711733 987433012 989337612 798877190 808891697 6402725 891521548 755473640 897047143 503944767 534369456 728667821 861675582 555204499 746753598 552183536 899225184 113952791 740399508 664841402 878716470 616188158 831847118 12005490 157768946 600313743 921506713 6457624 635236642 223990514 481120890 30305093 774172083 35134153 878339883 274585453 438889503 102463758 883917571 984405680 997206387 98143386 420428859 585037568 877994357 462624234 820445185 729218473 896999474 905295951 950591444 860352653 867079297 53947093 501644993 46911205 837446465 969168787 971103445 100893448 953694708 116580514 708223807 222001445 770618248 696755956 766128493 439047526 818136364 983583238 992894929 232067685 983745293 243784260 549304860 661548308 771482733 769613881 995182462 13960403 954271549 605649562 671731172 495676529 711630063 941363695 995141063 701566567 833160816 359026692 855610487 679712585 890255114 460820453 925075078 260660053 625859389 390945381 441566365 410537727 488358888 274915183 426982181 763416784 836570197 329363414 499372425 113023560 450133155 245772857 546599829 156890213 591050337 238870178 854072235 784950194 853916776 823704344 922109670 822497903 865174566 853737057 950230305 760713330 999919769 6139198 922329648 550243837 679440524 909977646 947417124 789137360 993788771 180959584 339324107 208871974 402006945 139235150 684689250 396054053 627065338 715388237 994537227 255295491 896291262 71419634 397124273 503931966 631367550 416005974 914283309 299188522 544342837 800551570 888047717 380251387 786759660 154400878 342332416 655870848 911548620 903079040 906497050 425043734 588988398 238850758 383812333 500697225 614019741 35937741 74947735 494062561 967685816 421277332 442299433 41269761 67306940 480313786 995159701 639338866 699150038 231399169 544254210 585483570 604564398 366788698 717568617 905507012 940524280 608740383 976817782 448711143 546212020 780484141 915479167 598982756 815967766 79621984 140780499 23250587 116615545 225649933 294942570 226819547 232651684 571150548 863119382 187324285 850030495 227581594 718526407 223859734 906046583 647257120 933973462 869070419 930500174 431085198 873570669 768391525 775228587 175197659 600331787 399372638 924931811 874935287 903883577 632239859 841488380 165729924 388477878 93155498 415239160 680353575 932233104 988892830 999629672 607378684 778591303 214217765 980958919 864079241 882781644 237540453 348825738 720418173 893706781 796773937 843937850 647531573 860494321 539314988 721906810 225116727 546779624 366293255 480765337 35550687 565304749 583750961 669856411 984840458 999869624 3400818 769901566 333581514 577814533 556482443 669825299 715469637 837790515 900961008 946487763 126245966 634547919 831192660 981674579 947624339 986685734 49894710 727773590 729056306 831683065 528125117 805791601 243017107 346231688 180599517 217383999 165173031 993363607 941552307 942702342 27052417 564747711 119191809 651521103 264493152 867016739 778223484 983596504 934819204 935663023 423521194 517827319 241832408 342137680 156166757 454386874 527386593 820223740 220634209 428046507 246659014 953719257 118369499 145023039 448727667 742664136 651342317 684494442 934095464 973367172 808150628 847883181 417099885 421288945 82767312 794190039 372756501 958852421 172849942 645504446 755499077 892356961 896041727 975364804 612437201 622524721 848242005 983630759 284094827 891989559 864584061 921305020 412832640 899799391 313907840 359893488 622660044 828013565 607248150 882173809 255132719 771352237 512388432 797485943 806143912 884245240 906612757 942867926 3515461 499283861 114445123 573955721 385096336 648815502 646835345 935184495 571316895 735444107 914225458 959986079 26593215 304448340 947251262 968501486 101239152 865122429 452022157 837918510 509634471 986829091 999676119 999972616 430044738 747209891 177498006 235504519 448670493 631281182 774555120 881353153 539512738 587333225 628749321 999188006 206396071 345013222 968491807 973291327 520197767 555823396 990958166 997186073 827423907 932093075 391930088 572971573 828424465 917107411 649840796 909729122 512296535 984203732 611847487 646038497 843229029 980828219 833328528 864267102 819093976 954787640 161618953 729010098 256510395 425716113 28156694 764228138 653102800 938280545 283256632 857874036 135544885 185841210 820117071 956604672 581681246 712654590 507805645 778070851 233086695 350814388 746380886 883557747 874511263 913933031 110246417 749217541 295662031 325197398 46363894 497369060 241545571 257566284 93492888 120721297 373457290 917020162 905122480 955671840 610375598 921716850 334678719 652505260 654388120 929223894 126635763 930258666 947217934 948612343 714380803 798294866 648351595 901188033 142142871 931753281 614874524 807238111 703799979 741155357 778163001 786311001 171591410 975306926 402243398 686479665 64107996 192868315 42723221 703322466 782480069 940814403 599556866 833646588 305153047 499051352 265032945 866275747 840300106 963915923 469613001 992592568 328588439 458262750 698750410 883121296 880945658 990936151 923032278 995815241 883242061 891598975 77234976 313089858 384416960 778767048 928849099 959863206 589118873 824209145 821542400 942124703 313703269 606980890 689034134 912427843 567561561 662079952 321417672 717885121 23878700 620017713 447849856 600112901 482158029 739633728 793859736 870487397 786285708 870421756 377535342 841401415 769135494 809298579 878258247 961714424 741552686 755147571 900722457 987558054 793826310 934159361 66143063 942327839 498448642 934206107 329233359 902564133 147142345 754175843 557181177 829258703 548677140 637416401 220130350 958221524 125005516 444764855 821941886 825202118 440441954 561512747 943799921 982217333 806954265 845676842 693507467 938244140 897337550 954558399 497165105 629154020 992229736 993737863 306352821 966944137 39110950 462225096 728914592 789713928 318461315 644033484 761154480 827123958 533077216 955265121 526707145 803290725 232278867 546985773 375000285 536253051 593973869 682428612 389739884 953411594 63849664 316141712 291058289 933568246 531438760 738891145 795567361 816618913 955916853 970685178 506796354 933995359 773799591 902315029 593991680 999523416 833087826 908224099 6011274 829559311 140551463 185052747 273725596 699240700 78215636 207054083 397104100 854587423 973619620 998378024 24499697 149165208 153098594 408043352 891144735 925312338 481734402 942202225 399804985 865101486 565245095 952744726 289359109 331692849 162295522 191959819 105895782 915517987 610731513 629774117 7783716 552028617 343922704 878669842 133935580 460439743 810075742 829112608 857400492 958248951 821221511 991324121 480381477 564475906 738078834 866826464 546073003 665320089 494102895 890885974 27922376 498875551 7190724 43594121 302050869 940054799 270217196 294707410 704733543 883577056 649255419 727923464 557081114 904497978 909538440 975611157 559959 653420870 961507436 991991455 328667652 648861055 71480654 468179861 115456586 120677488 418758094 822613430 81842316 584295705 136179522 479916779 498474829 695037481 338466246 773169246 765127538 791012151 253368342 816925083 688876086 817286313 49247933 786124392 575579479 880855657 60925433 85098930 29048356 820991700 931414261 935259298 846476329 889673945 712984208 730035572 220520077 472041828 834801315 963214884 905873421 922375951 249244773 789406396 12026626 484052129 85014831 306341243 643493267 771747174 364060016 737705216 955094526 955295093 19304552 272538977 324872951 571971170 915503007 973047349 368855252 486683282 798900942 997878686 391190230 595826041 577166982 865283150 140381672 590132093 634243018 755156585 99428296 243484931 733559048 810522654 279347383 483989700 580901015 655303620 929133867 931109049 85695671 932144735 545358053 955204400 225432182 499536705 48284456 868551776 972660616 987557801 840930790 947775904 682946178 921251383 515441235 731656969 87935668 711173882 684672869 793457335 725448410 940438350 278036769 538972930 13420784 423123937 967859079 981018859 577543291 775316162 381521169 715299353 376954742 599360985 26448299 652972275 327894348 848862053 123966071 932790124 909992393 946558208 119159791 810079900 296823274 334782765 418866771 454737239 85502552 313002966 325440989 538439148 235599002 490186462 304683145 376740771 581571533 634698550 640990151 698654664 48734882 517003486 970367680 991612136 336153080 807162431 877076081 894193004 969036417 990153791 382614347 904268395 22499987 768002462 496435598 726777327 285644400 942738357 908673619 963492622 487812738 976507572 882744383 903679983 464543571 531163818 413285918 669129088 676698318 973692929 329963853 728081211 75763116 926157006 36007136 473704419 45500543 955464032 316836306 898808108 355715036 670854981 882603229 947334273 88952298 527674042 487181184 802779587 146484518 235218504 258627049 369676038 381703466 500575651 82701561 312183368 375103847 719602766 782264102 910972290 815332686 923163101 619374271 996209216 633791706 982003425 336738852 570880205 615917760 953752514 915237751 958739017 625511511 863041784 558677871 819668258 342248539 451655268 396884019 920636493 347210249 936985151 464931344 501709062 270604869 271877129 259479471 612687145 278638134 756270875 373839762 435216977 417564549 488292739 987239091 991190015 870638767 987719780 384401017 521104151 105574410 545774536 523334852 838694992 258405738 450038302 996828735 999722819 57617629 584936094 614052946 733061378 579923332 898294669 596117796 701566097 541563173 923044125 888858867 912151412 761606839 918607601 713952232 993818796 346652397 391372773 527378873 542646568 80634406 674353036 977205217 990382767 180614797 840670214 198154693 630086825 49233832 301544110 31585439 935692333 695792387 781443122 300269965 545100272 172699748 254120579 406723110 845503276 671128462 910502919 327499484 452974456 283246129 451687345 22571291 635244202 330481898 671011842 801088017 932961530 93321369 443428857 972696313 997765701 408016398 475124116 201260685 773549585 980643563 995365601 423382640 479167884 356058112 385736872 674753326 839581243 817580236 957200051 303385019 715506559 343622610 897587976 206258757 981600294 374340052 990519748 548374125 587101406 520909831 983735522 147260538 889967002 203765522 438087035 592865844 797754917 307652699 796213535 633807892 951639622 428352799 734224686 214895291 648168545 30019967 550180402 207006021 341717160 313152679 556408381 775562740 782665822 357036214 980696384 145317900 210950968 53904871 417818601 818262778 931228158 249530076 556382625 779117145 932176269 808153478 979086322 342547719 950313713 649882034 684242018 893425012 922888671 531580403 987390912 889186196 939313901 119110351 516600745 322937431 604919224 802779184 969925604 890246981 891992492 806711557 814997056 568162879 638361543 146022045 260798383 698753254 702538648 25435027 590443259 91959283 645347560 353448504 545217700 232268248 889310141 302901660 596431326 596480220 696031166 898447620 992396639 364611482 808418866 979030512 980900563 440869385 692748654 279878060 331108448 390876264 752932027 499329914 684973270 352120285 364502638 874476121 941562783 570367889 735228058 683806647 729426447 939483547 989754276 793485586 914859670 327689000 431678163 647190773 945537834 175203634 674046984 808241794 945442247 598443170 731077727 361409013 941964953 461048221 720696360 354616667 820031415 567165113 972379452 610877598 666875457 767176678 793128721 645744652 651653141 343689219 853167542 929740584 992115899 452442705 799053732 652850976 848052602 137895892 249784253 232356647 403579339 384038036 592462777 215775360 983289825 140807387 450729968 745261437 908997592 864510634 987917226 1008216 904476361 213470911 997416634 743209235 965982526 724274721 987392537 263525966 869485578 168932326 944372036 490875878 902070473 951359194 999052518 111676654 593402201 972794874 977371242 303201134 976667549 904725644 969577324 228020859 469520574 119829045 929085293 223257211 921678802 815992975 956328873 738493400 828393427 926175853 962274089 168689502 773229009 271265202 828193035 428645228 912990172 816612448 849593773 163142298 508157050 406806381 814393255 246726925 465036261 824311496 957054355 369493155 483516284 741883055 922815197 972416819 973447971 282574914 469334738 690707389 757903385 194129155 856755034 135229425 659483548 843235469 917789988 536019350 955539210 948357545 979203074 772084638 955120265 970020203 990559471 707292768 950629739 45838260 949416190 317482252 409397050 515417257 915354540 364725992 466905181 788692006 916150568 875506988 931822545 227274422 732933198 975062828 992145817 607085311 776196318 302619073 699422828 92780432 536437550 181400691 574803269 784011532 939055789 254609725 513826486 888236007 948130922 213357240 750809071 607642484 648383695 182884501 775107216 14718449 472125866 591530734 627593152 440741705 928803669 165000784 883581382 367063207 578183882 17672417 722755736 811396835 830818005 92844726 144375929 447327109 746806042 516311813 825538661 389739563 757509203 535831995 696422613 361209843 662525408 976467436 992527477 584888678 936807366 382518817 498190785 776834182 922848702 886685371 986528369 70019932 938130352 233323902 285091000 693582444 852904214 276545511 994160871 665128928 704111227 798004057 990017528 229029371 535851536 600185541 846555831 34056966 162220821 159983990 497516529 522651047 533018382 176113959 316545065 309906247 684980623 411765047 473365198 700178672 907787885 551045969 787914573 854682695 965966437 782680749 995737742 219342054 222559769 102056637 335040180 33477603 913830414 723776131 822506669 726638668 881308396 248702445 764597440 362391337 698777962 547552876 721661194 262371310 328346461 669486016 889833206 125605107 543129460 701556288 890262177 154341266 783002093 360061946 984600546 498665807 731667990 416343401 993417233 523913045 604478886 121451925 763607683 360335931 463678177 429188968 897921099 670880713 820963374 443264066 947413703 211431090 706196444 33707892 840373068 164023641 384944674 843640157 910139325 483930753 882207311 328342118 427872179 681669595 735786285 913587113 974837575 149953546 506126477 174632295 261481427 568302177 999167528 486140438 576437831 181614908 420898864 95460010 960076122 407641464 539100744 13268617 226515571 570636636 943815934 639824443 994719079 327011663 447274208 258659351 455804457 147925237 335312223 542629424 833768082 698813489 841937215 603008308 715681200 555725510 683376100 878517308 937272176 329893881 948886491 870335384 945518131 131640186 959894802 879890962 989456596 257189985 508148730 780601808 881786500 554262831 905749109 104996177 961731734 831208558 921218818 652206606 803337169 748323215 755461146 783125066 815374705 113133730 886614281 71616994 831747147 50801867 615326583 788062324 881762750 931147025 993916810 340659673 490300119 234975054 827399057 947210507 972481684 852963798 873014542 817598976 883344177 952814781 965099289 798212004 965123881 987011280 992183459 802596377 856167370 113996373 699823074 13984425 618730387 602110329 935825517 294749053 357404269 770597571 905697000 107365280 552046071 494354684 893183682 431897194 900365236 736740386 957668472 635162552 731864885 912583631 913181787 71576866 300202842 157027000 328288301 664725430 703974459 397093711 740081042 52371415 499158430 263675120 948483160 921658578 942611074 233361129 657294073 63472469 99716779 466233382 644092741 384544250 823879859 463986005 871932661 860152969 888473240 4368396 669344564 46596344 840191168 621627270 878326452 519616183 968356454 928345758 946119242 602785035 840989463 396603066 531994349 527452739 824050828 265678723 588188180 808578163 813665464 470143343 799689234 236193249 461415232 454640581 589407653 993650506 995886994 112173431 352259070 833698608 997460831 608599637 947835646 552280839 886295058 672372909 781672297 283191057 730084391 655603707 803794527 144477249 953834272 76093283 507190620 602470370 944675509 493885138 544624675 549890566 637152635 899226882 931073169 13240073 717597620 800038125 909744659 795820908 936895042 331323064 691291646 376870832 989417111 227425986 363957846 357698017 569732304 804948343 902394633 454135914 614275459 152201994 987260176 156216308 464538814 865022985 997888839 323810119 838580116 665225793 785769101 458069787 575313364 322364044 985302121 630821750 878638942 870286078 915326512 606189807 765438195 126331013 752082322 203040852 693803176 491240672 950707487 61651715 696676840 798705418 871972115 280435437 865573993 925032136 996651719 994952520 997398993 147273348 366027269 477232162 488780042 839143642 840980877 180092910 856073991 405146481 968844084 726058107 896099835 872097243 936116549 355964919 798736260 188539700 439834472 511963113 693420557 587044054 613355368 579419324 610747051 125491732 322474090 443639683 730738735 713643203 967259080 367283541 731784459 434936976 873957975 805881222 911042133 229866057 559997102 23954342 665604685 883839655 886274706 452688274 704275655 2515910 966997854 42417322 546080507 625354526 927179335 411095173 787357824 26676340 260762238 311846229 942651794 422464463 629598713 853547935 976992197 119265800 865920669 861245531 875944270 745350998 894199586 192366978 278089911 396157213 646655396 734813937 786192144 509124894 607030837 109399302 161085504 962920201 984931719 595587783 961612006 79682341 344978755 820467800 859165655 359719505 686557422 781010146 868059330 376877701 423817028 324063746 348182794 58246498 62744057 638698533 928161030 243257436 401763576 880303990 997814886 986966528 992669610 11851645 408192901 517210382 852127396 818990316 854439209 38520610 894670379 46474458 155155631 497637221 791234398 689836464 992559675 956528616 960428516 515810649 587110195 397482409 895042184 828134549 915842036 599636518 954717826 252667734 576482601 195413683 463688707 820718173 820856681 182394790 218132093 795303036 825760735 877763901 995521416 758477105 960937137 223086299 293802636 201573117 698611863 374833222 905338627 196005832 541536286 173399205 795821872 522796325 606126599 826327296 841417256 266030079 311950198 222762399 986567938 344670688 924683530 223603060 996324070 43348842 321163668 302557708 754666552 816046453 844318325 616307793 946379440 266867159 405335901 366862467 752609042 193872702 221516436 204092480 307065612 538732073 654614347 763602385 839751270 724599595 754537239 647672937 789754800 617772545 953260483 80128571 466025738 516666074 983535236 996109920 998395059 597643504 638735409 865609222 939593054 832057579 886698130 241269524 996100381 808278233 896130761 750039255 969702733 15411309 651820089 265674521 469642646 833134556 927633541 535115615 890949056 693079157 729370055 163271303 271054459 374003076 874153545 146741071 515120986 494741664 551164038 253386061 546305462 696310717 810454855 904931300 988146221 214154307 843673771 764172979 893990652 113450502 430182749 852583316 991288427 347621539 974514768 166410437 370362701 18689802 141450116 580295288 664551857 852148769 964532010 35748903 267503241 244898795 661278620 842252014 948841477 105096862 827924204 5929376 755621491 894805820 943532603 391494740 941223945 150631050 497653715 718821455 900482858 799558951 825805802 61717632 773276778 784564702 950865978 642267270 797134997 689835395 832414698 208849860 937002585 17203182 912603078 623186368 865673970 169043286 956404778 617649881 837658043 738591027 969277518 883126173 905563774 660388173 746893442 97041049 955443067 17832976 956608917 785493214 820919689 400447874 502549960 825525611 875383930 770295372 878186619 910634175 961191811 694550426 887889595 418026657 996602382 551372003 690947711 501398255 586937029 448686974 733726815 203514029 362031373 884728760 900200330 551631355 834768391 506385261 843442695 295917050 848132470 392496725 448394082 338740330 894880706 156355403 470101751 316898397 650793951 460516488 995888433 733188804 796601956 869726524 879071375 493776582 994535609 619371264 728104806 568024776 791838385 271095682 629405508 422302197 462274355 204874663 868505325 936040718 951101812 972730812 978226978 754944058 885678264 911720371 962984418 537381872 696955283 63021148 553246974 708895819 738148128 225475453 260952145 71777220 117434141 980241263 985558447 405032191 865363933 868115471 896849451 385486740 483359662 621426262 884215180 329314208 907243613 997197838 998828488 140840124 467090031 845195292 859920388 197666903 353186386 734289210 910258143 161752956 750088136 693266609 757074680 396342324 839287976 966683212 990665756 243406311 951518890 271884455 427625349 764378058 869094017 418767617 975701223 150342610 637028932 421281105 809248472 196590791 323926098 685322281 750578528 576263652 768623672 74318667 170585425 236415546 539593831 918088564 981869587 305647982 579199605 821841712 945232229 837883789 992136667 384639146 988845439 354577406 415590845 519106979 945803195 975169579 995388467 758504442 872429583 838099498 874590890 782045081 877971935 532615823 739926514 366934922 503287238 483584150 784373304 631832935 670850833 151118838 571977961 417607457 509575556 393887546 546206065 39654183 822885002 858697225 933981758 814158678 920770246 68911227 741687434 370556461 772683880 472080929 609307700 975974355 979052746 142653772 359977876 258479931 445809915 303548236 758529687 190511090 328485174 269893789 376402087 163767067 974100296 195515192 836420614 723443119 882817317 45418413 999463323 18945231 591133940 187094994 238775458 189623020 205365788 25509571 481821878 477781614 863044543 302985442 400845535 940633169 968920851 80796295 710676594 438928009 767010951 31693343 971598570 546527168 696898527 381078541 996624548 433376738 835606043 976002627 995956446 263760434 584825022 470776884 715328935 53501105 769618393 911408557 947803133 215472867 850769859 605138195 679270897 427590842 950543478 419360117 751246510 754510145 830674285 136401903 265114799 857072815 954527913 860586200 973316357 616176904 915246783 832551 307370911 239947655 868939661 972453747 979968687 650623276 745624585 587448594 691657724 339493467 868688931 917894046 998905747 806507136 933231824 406111680 670708869 150563979 293367772 212967239 646097188 700870195 721238175 72811572 413395145 186085600 844463377 144575133 493577233 307971591 355916514 890324610 927015991 495139151 757309993 421332699 553273165 988881808 991233211 978846636 998670360 843142234 941864227 528729839 862385782 437268881 840880036 452850464 686748322 297073941 627478734 934230464 934364537 881564240 952635962 1469749 169785629 955565924 995453766 535665398 881298858 777571186 838788305 746247832 765073056 56607625 66392724 71748905 533184735 586141026 719070184 554065172 943434435 133764533 877970842 917987779 928040623 519644770 688018231 841723717 924635688 593009562 897352472 157490871 770977950 417502154 581982000 680287328 950626071 377464818 696000435 806071353 857936811 151980328 214313708 636923390 683775439 97436795 503800660 428499474 825217776 331420567 432138662 26137695 119374936 232046838 875113787 41306289 659634772 510365673 889614413 624654887 925779132 345050490 770473718 799510046 817191817 571096153 894382015 553057801 677809195 730356359 922455139 291525278 611295012 939569241 996687021 73457233 401985973 274301761 400615865 369262786 710493835 335667485 456611150 209582752 728897426 546207305 597561681 364238061 432910943 457104091 460289823 235254317 352257858 278982803 753436816 609770193 714291638 157258892 531537079 93700933 838206732 697790801 879520332 412202387 737451690 49403563 618915599 592572074 736395065 600084149 751615029 825513447 861938148 82520055 649075150 30512210 344215071 609132414 800301108 642635869 746693132 260054846 453390330 523740993 859453192 179948998 737397493 275964821 515482736 324888947 373568893 70621455 830150763 514624245 987373893 939328415 981931262 501726920 685733496 382481295 888187465 750924066 761418661 68255049 566708552 571494909 954570173 300768584 999642199 155184888 750278333 434885504 590325274 799407408 909739491 518906491 812864795 952545683 980790023 259586561 764646520 566819902 879332679 923087681 997183841 368161608 904353671 538624003 953311379 791291441 943329699 556567877 690666600 185322200 283793564 238367876 543976688 416032679 509898399 698920143 857852973 471544525 861823107 285043217 503230131 267413171 378607003 793884101 799002697 815941298 850222119 325031724 741091262 406907430 925088357 784577800 968013424 475117699 862320341 680615062 690799984 401008523 662018992 814914738 961618805 425327946 537589104 402869821 699614863 650346208 755754364 943720330 997838203 364489015 384315430 260482026 616811300 155882224 788148710 1712569 908631526 65462033 597995019 299889157 627881578 457854669 754099145 562481792 728233424 324799312 439654649 750086776 812868177 298080837 761089803 161665201 750618074 235659211 440826024 90094492 795023697 552167999 793202343 344234861 926585001 893429641 970024616 524771983 841720515 868604226 913689206 164309632 412593528 368259228 817570647 681789208 881904124 333811866 883777402 873927461 938496478 37916380 871430733 328284435 527026072 154340060 836289364 991382948 998988087 512650595 718880984 825597346 903705344 603323012 789966470 209634824 889485754 822888250 944854988 282046370 581137641 375603712 586126360 925288966 984582574 542055255 620176790 310241634 734120778 886934545 981364687 671732130 843382864 940975472 982647926 791311216 877128258 603308704 891564957 177264106 872360555 470163177 536324596 955643949 980891553 93683075 482525849 102317913 965859234 757833609 988546590 24068051 970084152 152422844 843809198 101175644 532345708 747115656 775935072 665305943 856868501 488995320 973997448 751209693 814260752 872936660 926733355 40634211 783473721 654041875 707437269 243192990 494662863 335454116 511815738 44461190 47092479 689509815 920035272 907948335 957064267 895019764 992446548 183961137 316042193 127936482 365702939 687834541 753854555 343688627 436492210 332293859 617013888 934731970 956367345 140374094 310286884 151878904 327265490 714510607 862646191 52554647 279886027 864511864 936739481 789166248 840270877 280854671 543200765 428848110 526785923 936490328 986342025 455545798 728153232 744823651 886861552 109944093 453558084 255555303 396359002 712987379 792624402 257258952 715060868 670670500 723263200 248565345 992511427 952113496 982445013 741121891 879332472 985507056 996877454 805775477 997142630 228960991 276435282 65170194 983027972 517098217 831462713 231839322 792548848 970435159 970642468 303280702 314445425 705231433 785933251 723705330 880866181 935742547 956178252 832259404 940696397 201269600 796994107 605907674 618512845 333035178 625114994 839292201 996971058 410015156 459963800 538661694 672014876 511593108 853772509 485210414 763109520 970765301 982111857 337753449 399951279 822478948 866059655 1185998 659109935 564183778 862237467 661717977 756667378 485271637 967523306 505793835 648301011 328266935 484186835 216174385 684313797 366265942 889560705 453272493 477905326 942571771 962971046 583000258 700453222 538053602 960598637 512428572 742141343 24868301 561570433 475853367 924744125 662780293 693365604 99502030 144615641 544939836 960853252 274683774 854713190 928652977 945736498 297558752 967312742 187088698 433793432 215888210 710834859 872624368 893337115 183278765 836929098 152950708 892060687 578360745 968305834 835165170 882943845 16647206 271489285 725979920 861504825 853897272 860882459 831564104 926367909 291251860 341137820 583225139 886081254 287495519 976602176 988828197 994998969 746818462 757302546 920705652 978605249 842838277 996100238 596927595 961494648 61969820 903295562 645271465 855679894 474987207 611001968 590649217 789388840 824086204 942399342 547065959 586347650 614839578 996474325 383827784 664334972 61048734 789445717 763081826 794664308 936783588 936901231 278941219 502070270 417859852 982855906 611240833 799356720 209602772 943042875 942629305 996556806 180891761 934919075 462072232 868542433 80612734 923834391 238468915 862567611 593730875 918640710 450243020 730593179 792116809 973985050 684453447 748113748 415179019 612913690 993027078 998741050 347005098 536792578 626208970 882296107 211241485 786012890 829273884 927635817 631451401 875677578 199066583 882695760 890006796 953220082 535686568 574014451 463323487 668789773 713502326 891995340 165610890 532776880 301954626 598723826 575491008 653185509 141962858 293421050 706647568 936361512 85674698 491079765 272140400 700197668 704977500 752230232 150202172 177734476 639469304 899221008 983253301 984265708 914917507 943137254 782150216 971890629 555253204 556482879 754954364 845031809 460950830 561294698 167224740 875672873 467005875 791015872 635597060 863512412 909904224 963767217 199510745 427767398 101746504 733296044 321088282 787018738 968566422 968975145 951965936 972182550 349367546 583632174 747522815 926367438 228003474 895886756 645178147 845537712 417632189 682174378 609798870 641697202 772091229 933987842 917056138 928841343 438049021 987547614 278903379 679891373 447309562 891707932 129747673 670056718 154804765 578674877 403650824 968231485 623366447 996270459 166344960 410291236 160994913 229721175 560252298 628205247 733743747 942685832 750961406 881400644 142936287 392105668 41760847 732068956 453448 654375688 111921991 355100889 855841726 949290983 394483523 607009638 658304058 683709371 14399283 625112618 704371253 762096327 304649832 965759670 811158726 893537853 19760394 575107902 854135226 864297577 321755280 837598837 606656123 777110569 413327692 966631613 671489313 835017882 46075401 334007612 268859912 731136973 464209789 762728433 488421813 939642460 366905851 934583479 598422086 928280421 917742197 990786580 219556792 829876803 117015447 356553244 581663951 758156500 660142768 858803092 281047492 791341403 91079052 91900632 469788907 648974281 326426734 449643547 872106952 967440955 894316284 935969031 72752008 492604501 646705833 822646373 490425870 971008474 186934291 842947311 240177370 440981093 346400749 977440575 64400243 69028561 510023827 735778421 474270422 694583187 910991692 934732592 435056748 894343356 447594282 631729185 494415972 924505938 539585284 631989190 631833639 691613609 142148293 595674247 190068894 633122610 964862596 975640130 635443991 795714051 241491549 962050258 701276933 981200417 340135720 581989889 694321007 901753057 350596842 463293408 976147205 996649675 9470886 467381020 415149341 933232157 689259264 692695577 756426077 830508427 177250116 567172960 26178205 851050417 94702808 477716645 598127168 811464742 342905247 792711922 163460357 243353136 52294463 490167215 435880861 844504043 600494832 850676917 854531615 895873701 579006746 610539239 775243769 861215679 90062127 634956033 847781502 963635285 994515850 998397741 151225588 649949605 167464869 694016757 729873603 886072980 618758605 930224591 307996608 996406573 890504725 904801112 841416549 996470227 508449071 749403625 45689246 502895124 677164567 756668562 865194199 997686387 950000598 962268855 61563351 343946655 615960892 941394641 638415594 970782292 78108803 756815040 517843446 827486827 656936961 904912627 584196107 877895821 365863775 452301144 227003658 969106068 115919922 226491478 253331400 550585868 410856277 614035597 896110127 954047045 878292462 925240951 733192324 858335034 771184786 909995514 743144233 782029478 677667895 690248010 349202806 993171207 729115444 752060060 661827615 958365743 627052752 630858922 896429801 988191865 11308778 658603167 41681832 444513921 765987819 927787072 568926955 859434093 313655120 613546687 129410720 331676568 938245410 998289735 790104427 884072102 554172708 847574355 751350852 752889159 289552195 799359136 44672914 364574050 830510007 912492877 150262613 487919699 495372701 888845493 758703193 941445405 753093356 937322880 777763691 874863160 435828207 662546014 610783993 895809429 73637095 325871067 294743151 940158597 892596297 948858372 172987525 622825024 182831376 420208583 345194798 690359846 612584828 971507855 304110925 703753041 125081877 681117087 491021343 546494775 598777855 762503899 874327149 933072810 613730348 916846695 919253129 954385026 832205282 890141398 667789663 797867441 638830688 926651679 67366324 223398762 926025765 982209399 270732788 999979685 253906940 326603253 774517612 977230261 119161223 677447889 957607749 980592502 138882675 839724623 174995087 911437060 994164414 998538824 415687594 781023299 586922087 930732501 685073438 821663374 556699571 790248059 840058156 989721156 333764188 703315131 43842203 339645117 48371440 273993997 196078328 557327189 869782815 869793617 225023939 976130176 807870196 811543166 179310836 942952730 697794243 772242917 929346275 947042312 403577545 957324309 125777927 957942025 264032606 743960108 577667348 873774195 457690499 954292152 585593014 687662620 123629625 357556087 990152741 990801411 227502549 542899962 934887390 946850104 888457914 920927947 369537463 851570323 662688038 947819150 127807146 323502566 617990922 879084799 482844807 931189385 576760528 839869060 474550237 477881861 293236446 508566373 989441807 989590548 10347237 232651636 995407725 998499997 31649065 501165093 918201318 982263553 406319622 574262414 416062188 722234443 384250214 902013398 372478879 792821961 543036570 807032556 365362818 961786230 229529940 828973590 30636596 527101214 284021535 677574374 866868471 986649893 744366909 885635154 831040060 901114314 647686825 964828984 264020138 387632746 387790928 586257091 156322404 860966392 322305512 407072162 168276742 913081606 120395557 784192669 233751412 367582914 6200891 465153158 28496529 777982541 90071722 235222971 523469490 791986485 948059250 979602902 173963370 278772606 57227959 89308468 253461937 739635815 959649089 974493325 306627925 451699113 336251815 600935078 16292126 680182204 250291690 832947709 226189987 561389083 598099424 874034192 556602650 801166818 754476681 894763073 673307690 839505521 657696140 950730423 300243961 527114886 449188890 874392132 123017993 181689034 514673444 531405475 618956553 899602329 878335541 880736091 670360558 837826710 328069166 735718996 841846088 968073227 623490448 790314192 107513856 271007278 558823002 970933880 24758410 430128400 875688634 930161864 410768713 653263158 878049794 963998699 292758703 381580485 463371609 985918314 765581538 989563459 671334850 719507198 56988291 362408430 83535236 673941582 968827788 994659010 256594906 753374763 209288829 380173281 923559044 932971813 212653897 901048180 714151723 838974435 72925146 643118917 394710909 731605222 149409520 367005808 134358463 217631526 326912251 410178804 132998335 450150957 173234655 919560972 265400521 291634531 852940212 931588872 170322720 205984669 156893793 987057133 961118493 972527289 850553994 896440066 720778057 740775241 919452373 960798049 606405890 852996923 741964261 884177782 779525201 875871448 935741351 944683600 636746085 760598489 21227335 923308468 424899476 474641564 582240783 946632643 818560859 907830698 55761089 699539488 581359172 885237533 108371508 809869968 962174585 987343701 893828679 938818111 763269421 810452419 420035046 504839084 324921137 349550561 782940120 883885816 196522060 607214597 883803904 909333595 614044587 625994684 723472830 749340361 212591267 429635282 940362955 959729148 70752144 78913259 202578735 203580776 963428706 988410528 982469132 998790728 605468451 622828424 670146111 865668869 860322507 925780603 404458979 792187396 136407135 623886743 571019031 720631788 948351086 964001498 802738367 953119947 123796469 351518134 796408457 811718719 761552375 848081733 452997659 536934033 676879461 998493330 175811293 433069538 35015421 577717968 110221932 292122645 85055465 216928148 224824082 663534056 39500237 184918488 674310611 802552204 152544902 600403756 523844387 903717132 948044478 998286892 999980984 999983589 716282021 917042466 860002304 878081510 482507060 867302925 586370238 596888993 920562881 925660119 181007645 973644330 169084073 545398022 145184327 229961127 790676747 801229636 443444689 634035350 478990420 898778380 45288366 674736189 13017606 212893414 834438351 876766855 491913577 550231497 810379392 842494174 226286654 523009340 761429672 845385727 372091545 795585158 65660850 891959704 544479765 691215741 135422504 947536950 910214127 980296572 176123723 406273423 453753044 890753488 553765923 785839058 304059119 980871914 627261540 821063118 997122561 998153528 502666090 591007205 308638221 355223925 817115341 896802448 633902130 987937007 48706829 146641261 493997206 945119563 571932972 958801375 229618838 739017511 165032204 630377745 369686630 485117413 943200963 996522544 31759170 865568919 227309521 533566486 953742614 975459906 13821288 374672522 144516456 871128353 242171536 605071489 685599111 919660105 460685238 520594739 901785977 911341514 576846849 992311651 290733297 529107543 530939069 729380314 325380993 876665604 752102937 801509285 277947389 471891573 139069594 285162804 262572936 357557592 447194697 621369720 359379047 454505649 873617440 980278953 582100353 850651411 664775476 985356219 509363512 810930992 346919131 901147307 122965364 125357205 798324975 812615770 237941732 612686650 707023952 937961082 772684023 966968362 218897652 798298834 713149057 845969070 425902908 430967455 292721340 669479543 664336669 991963808 213107654 770950780 568981725 618942288 819448123 920097396 598664050 645636486 713938075 894790532 820790507 898787493 629088682 855700246 131141745 375669286 395703633 860815370 699476681 769641549 997454199 998387502 520622981 709319631 379129301 973726502 494711297 628767615 578866065 834406214 843472525 899408808 564344265 594049056 694681654 751585585 222320051 802194358 655634653 854811377 299137444 505962791 1103598 216282945 82484265 232189757 768399924 977466014 252265379 728838530 759944237 805920933 751468135 838252452 402656090 862116165 278757133 953717646 897293723 951638059 301016333 325135848 70322744 165022794 291951490 861011940 690655230 954045417 752589248 755214242 48042729 813889724 620238146 760736925 839040540 963043465 854871235 875760825 607604705 937662595 639460380 844985389 19921614 447645120 647101003 698812439 863401832 975347687 222493799 270318405 616538385 880081038 660713391 761235344 689280201 854060507 728695286 953937339 508968481 531927817 872977869 987000749 365317552 491890526 450304946 646612706 1225268 582784492 81497378 529627142 422092380 848160202 452861581 945860683 671290515 751548871 576861813 690597946 414123910 918554051 387108056 655005669 631198507 665117883 512032737 583224715 901108004 979167723 734203282 744249507 374687164 453578895 536301664 717716383 24063505 70231977 39804119 91238371 926096312 953116817 4962217 651803809 954835399 963641567 353883360 860140159 867098290 889834937 20825582 897428108 940757014 983650737 40259050 202272756 619331134 855100169 337676410 976453102 101496952 936316340 627973515 925481048 924578469 969752248 199845708 506791249 510206603 944147922 408955741 590306920 267465321 604270866 101875804 701020597 346532532 748927595 947965520 962965731 814503199 928851471 48526530 79028008 538668644 563551813 71706160 86749205 661210816 939920438 218268106 784706522 814617144 913914824 529736812 853440276 711851868 774785253 743813075 949722418 368662470 828391831 879199568 927607248 997251313 997828271 315062103 350804671 284363984 572048303 221444854 567533534 772473834 880125194 818972185 851597712 183789241 230022181 136327287 645570681 991415190 999796048 944574409 959240776 357549585 582668165 433500327 882946194 769969185 988773915 460032837 821318842 633399865 952637089 74316102 588574877 867246337 908229537 198523149 700612796 942208923 988488658 981188536 982649272 193438082 429447184 991043091 999093349 631906463 971093957 604332894 718022046 33299089 532958591 953571840 987085767 246018532 442135525 666619759 934952546 115835217 684420177 738049121 913826858 126810465 482142510 931193963 931731063 365630853 750794537 666870679 729997912 913080604 931358198 944867124 961825871 608996089 703453726 997196785 998449421 512015384 648137728 946058270 997949208 668063730 776679895 676602664 987556761 397489821 907788338 264793245 625882065 166166138 461259741 803275275 928845580 354214937 477174522 263690686 509908299 32433459 745062373 235168331 648756638 17190563 204084999 327002902 540556273 606495920 815499272 941023624 974319450 548457610 613345342 613139237 634027270 234485344 904227985 398251267 695737560 195545005 874768599 493873398 504635739 518410458 809302580 863382816 878157890 250904918 341448386 526393131 874670604 815177066 942362703 260282741 324062204 436868428 820769279 826688142 975112679 115705909 716358779 999526355 999902348 278005644 859185841 711553389 832318286 54869397 584100203 495652617 800483941 871450145 932159461 386749053 655244377 811901612 982240061 532487682 916141283 338671835 948219343 963081559 986665429 882542195 953486525 90217103 420970293 862465117 910425239 3958419 165051673 539874725 598034927 488493257 679317831 408816231 980328260 990378386 996553943 938617767 943305203 691360061 897586014 180122988 265976245 592138241 756667849 553321441 926633275 892432198 971327487 441751800 457434152 333085468 758324511 666785573 957458796 548042262 705342617 347543299 484338051 249155433 914425337 313367299 640747881 39990922 529837078 15367388 192478097 46017456 399028435 274038380 631458110 643414978 697995486 344901862 428721807 745020771 767930002 312427209 918909718 622782462 704744648 735634410 795895730 947006718 952395565 961656236 961984770 579591419 783640087 712481291 948545005 80183792 142564720 41381862 294676572 764849323 883776441 714683210 784098983 715196408 922641419 562923936 590444659 328735407 604219188 630711676 800111928 464440915 920068811 731964518 838068089 559509087 581750277 921218510 958061888 748885174 959902839 578800493 786081522 81394423 566093151 468976964 867179450 732219711 910934164 358391856 892702898 100332069 339432349 301793335 445356129 174240125 176381582 840880834 938432208 487150600 589838313 577613990 930047592 854761914 922141765 556155409 730438834 779464876 804606004 117485281 544614794 682350852 686990110 35177156 550736170 867140719 919878501 311834211 410439208 293778149 297774386 963959643 975276384 301459761 843495174 577723008 719925711 818652031 981452879 512492477 954183764 288370493 991227450 843965206 989279368 738509019 842385155 452999492 820847971 933648923 964422200 703109312 903985577 719805016 829675531 587817994 813664899 418744553 951121397 389034524 885987816 48350233 235305918 830924395 905389550 529850685 584057424 512755300 612257350 675709447 697545588 122128148 811474964 984286407 999269347 141694473 412077836 262552076 770175211 653276124 763578735 813498725 956660518 856133589 859001905 881760487 988138499 360899303 399181765 497126884 946284400 304289026 910947891 491418326 734265077 382694217 846896225 729095993 987981810 667850083 795799583 277598801 965312418 195819104 234008389 619468889 671878513 255784431 959686734 491351762 558249937 31243691 350336947 679450805 882853991 712931933 996237809 346757114 841947086 559858674 738136609 882122163 905560835 703052372 895589747 280213555 597302421 573456712 820726498 391565576 487624732 386683918 777143055 414486594 653124198 325041587 631172829 527772133 529096521 508505041 860246338 312234854 571279175 199377719 266091012 220967388 836715401 298700329 479531516 729102209 941976555 587951116 780708357 467209084 932443750 72556642 956998655 103096973 762424030 297790765 682481362 418117296 758526296 884002104 895666506 375640233 414542050 10320359 182731898 248320177 539665394 411916849 896293820 953190108 977427302 872550079 993495631 632650741 714837300 717863241 917968007 976286099 994393862 143611129 242814538 11346626 439304083 263259754 722094515 74219816 232984659 265818930 426325283 7185897 490560179 146656489 394301322 635843469 869303792 252581640 699485935 486732894 972485788 531013496 769896114 380229944 909361312 303220247 634183338 120118163 212825267 126600192 155302255 563440719 734852869 176208082 480583013 224819490 315479230 864381416 884917310 942735426 968010608 321735602 618133898 466092908 699087049 546254572 662688852 783604404 818238147 337987283 808627874 259350162 742665237 787658063 821290664 567433307 764394126 965499026 978305714 197826028 808417586 674521311 774786556 379240376 698800770 284326604 682672399 949834811 997494693 488399430 732890041 645569004 868834115 14262296 709348333 492837181 654824991 396492926 401259737 232690531 243926784 556099157 657597365 344446577 426592916 567404062 701013649 360467084 810686041 653979015 985547623 285026344 349867162 190456693 741193969 914415520 967892522 862619407 997516807 983774688 994429089 610359480 789421507 986176055 992099184 519581812 866567111 848734128 884207124 13062868 549443711 732926276 996847224 210536266 359497797 158828451 178235803 924635027 976549739 982699404 997712674 893532938 934331757 230167794 693120000 866759566 870124702 257543684 743489683 371059003 997088516 986651824 986763244 37229572 954557630 72659236 430606585 442092905 742250880 587146806 844885723 35748290 928908339 273112017 627963293 983631196 997330037 255272812 954992652 243818806 524421489 513365154 720810208 283576282 725275881 331120730 403743772 356565877 568914645 728692220 830033315 658485640 883707496 166347834 883000305 658026472 892737204 740437286 924080965 701944541 934257397 960640072 979249228 94118996 617590560 230562035 790588257 980976057 995726836 962543779 988857919 186905432 923592967 367217331 454422609 407698091 913654733 867171909 978233221 118329019 233358136 114458523 795919806 648514327 884846619 593672870 655541271 779986571 986045750 323889231 356980274 746877735 949184665 422722244 982280667 842313735 850689319 409747095 963740490 140527347 817570904 997290869 997820856 97357295 423981040 859404690 865023303 922528333 953623119 872508035 911183187 169300818 292007614 155424129 337453021 837345743 924065370 753094031 761248639 685096590 915933282 783339806 799010194 304574179 994031425 707660571 834613631 381733349 998287128 260436790 668290156 3420993 316827811 394474274 739310241 108041353 212993229 782503552 836203411 806454727 974353757 43625911 257482535 525135820 614759327 420193557 889954081 992741887 993135241 660619134 832598241 749662089 848407822 150423487 547109301 980552691 994571497 463760487 648205007 652661747 771572688 108458439 246780041 929776762 982395347 998715583 999501862 562326377 955741214 363261544 776664007 955650602 992741909 163280591 245272513 496094456 531714750 479844133 705434391 633073543 860590803 180614635 305090617 89517261 713525773 19948077 424083206 432242780 648525910 694849781 736877010 863106516 897736189 114959853 216343225 776287123 883912453 166720613 248778051 753995233 778314344 73450789 813211127 379665492 680153950 879732175 954516329 431940936 828781037 278428961 316165209 699319911 995034276 578432402 707649623 155907921 920141092 260778305 403825100 358661832 362815823 458751252 752150278 400053159 696134620 989711994 993636871 577012850 946932011 834988539 986208634 307728992 765854793 376133749 846932721 941012456 967459307 622259094 857050486 813301938 940991850 20060977 622373674 869786896 933348421 248615484 477185558 913973947 968238324 865782133 949046115 761215691 980185528 32827545 755936339 214639251 693663312 226097234 420411572 529492028 554411373 842609946 907529968 864766624 983173603 921474218 935567729 226412476 902498148 960383481 972265796 649549453 905294888 165982279 236599960 134001729 262955678 118860062 315078210 984708197 992744920 798365782 973857147 957002848 966355168 732738839 917772518 900426957 949440073 252794524 571363308 40082933 383718077 606764357 722762811 330749971 372010215 905862505 964320541 614210484 892704303 43763246 397709590 294809391 818874206 509999107 549889258 195008997 841483122 103864704 991476031 55864022 521616556 183114234 249169465 305135196 822504788 536018269 694458603 318679433 572019589 226419988 473650644 37164199 914523525 225150175 873346532 566919626 867314435 311239391 596224121 86382788 682157912 610700223 836457330 730972733 998163734 970319080 991755204 790781315 974078986 829675304 921312770 704689316 761711727 559021327 675451246 82898084 98729370 784813433 851217964 427475480 951781872 438355785 483216214 31915167 613919293 727565197 896293637 191391327 977494546 368154557 439445576 314599071 985976643 152787154 766114610 970686225 976376947 886369326 933722454 139803977 968378389 751216709 773524557 361073311 785682500 853957651 992843101 589216831 987008986 487549950 683656243 360315984 646328433 751696537 968787203 954131052 980949977 991135420 995588345 314148491 763407651 418206331 635931520 616212960 655334778 624041661 839378576 462425168 689767355 554976031 932762892 33438727 915936369 88756547 843962869 185991069 884039667 309698600 548681080 405118004 892901693 545841968 707195044 7348889 470592388 365372928 569223759 840291904 966521500 231172841 779972300 873649636 994227638 460076298 560322218 120081206 227070416 925876541 965098625 453278105 564140417 776249070 843303886 808159191 870323510 145569565 893019680 395563589 860782623 866161018 982039903 477046939 651050714 740420083 891347061 837946835 975219294 976085400 983653571 682831462 686560832 346065402 869161740 709720970 888897666 514340776 861793140 464737136 700633308 993194730 995504334 126557735 175662639 220846440 518679551 216792520 357366929 354701169 573015532 38662481 204035564 754827566 770303129 501104510 689256220 650107591 717237976 445544180 564958529 196270231 996683263 173100466 763464562 824286315 937045374 440191364 657438944 385116798 588175130 10133426 836643241 995693872 999727594 212386720 942995413 369574204 382392305 111970531 696596269 547346963 952451946 888825311 958744299 356621875 580671361 91184463 382829481 361113362 882655102 623434359 779355609 60452714 70178611 665476261 781149060 725519183 851657286 770902602 966196433 410606554 970571498 949541759 965105370 667710291 747077072 753180884 819754479 584988852 772505964 652081751 863446032 641944836 935226875 679741904 838226560 717950862 841505428 242325092 303194469 133547937 310808098 764833111 800925326 205380948 625709066 173142710 523636652 102427242 858921960 533913749 907361704 954253155 995637389 935179199 936281836 198699757 469745293 650759020 912651162 244801685 585326896 379934919 774565519 735777556 979016835 538210131 967883603 576653857 597202784 153108945 355400994 342560063 477247990 944466253 958023433 893242541 912399333 592187920 766711862 61888668 339211993 866253530 928484237 89547586 435564408 313872157 344761634 300300996 702332125 534189551 737059868 962525816 988024774 202534167 479805743 359019496 506610426 17897977 780104574 838932164 846791350 963891104 984514488 60333946 660382261 965276922 980371334 561015551 887957780 384546670 448110341 572398324 777591761 618902206 960133376 926330461 953388004 725255393 745639268 362148860 496616161 559476308 590784097 238773444 567125989 354175384 844215332 962622526 966397724 717959419 754156093 309228329 804693310 383928721 466561300 687107497 708789493 373065817 393581367 825960469 996582118 760453234 761492374 834695851 987185099 191451801 856003823 972423872 989710437 955706993 964914134 696384552 792516238 771243581 840766781 757244826 770387104 654190707 827162755 662509909 663971840 58197392 346110149 598089624 748284909 725121766 954405540 882906409 979362033 454196162 573756293 688749097 707523017 340409853 818547908 396061955 425512880 682462234 701759678 908538601 935057123 229611372 644386465 705482941 926051924 790541441 968288909 272397174 601701211 402662453 449697764 667073107 990085573 339668285 698214695 999210138 999405528 228226460 547204759 141033704 616706745 175218269 748005011 23157850 243835476 8839593 407490821 281471396 925096454 653339340 937216747 535120730 705715617 22126326 807804356 452192214 664639695 60725461 113292949 907982894 941119883 397527962 770802776 840133070 943964262 639966712 743459331 125735590 677166869 236786326 915823729 59213721 834494426 827143675 974887329 578451138 663926486 921592712 939800752 366856163 940559376 364639019 766387150 382270136 425165626 381205961 496287124 914093112 988419336 622742918 898065432 128109057 583114660 640436893 787490953 760033979 803090568 905038036 938793849 234795754 248220845 40164059 123380546 495209913 699241592 775039928 969330165 65361934 113722391 887094848 918106870 945341889 980837189 450329684 894975279 313021977 881888219 735392006 921648873 142595597 948643859 151319634 589296572 82478542 144812104 22262598 889706207 718576340 999548273 408268275 953300338 300709717 346908459 853027805 901342358 149037554 567973893 396510930 759600425 462051137 520817981 513265990 550717499 910116740 933159787 548236887 995370131 511185372 895787555 937162920 978652220 432789215 750258684 371571658 493803126 77312260 872443972 54232116 655151359 820160187 971390385 448438317 714634185 384427527 729459965 515965400 658754469 326653664 453750519 814257854 895546869 565681642 692187153 364830104 922711605 997050295 998960945 163249999 407197194 300671568 726296667 898998587 942447567 347164839 664621009 983391017 983612355 465526247 538949687 28267578 381635388 374975283 619687578 516202769 889601527 410310970 948241893 332739806 901178487 386657818 901570453 233288215 808169897 327824739 994304695 994243948 994723682 491849568 807019634 286643786 825498468 98159191 650709269 300563695 572433578 592024791 731493607 672282151 990820694 737363505 767924900 517881435 693078970 362685306 420149758 412960222 945258470 20779484 172055639 537426037 723369953 41399264 696353785 234627911 559110047 341897515 803288836 609355271 616460123 326315333 877255437 538450981 618811273 696759379 764047091 931068343 938156542 748960258 832950683 31207449 262337021 840006741 886187639 93589109 846782273 229233773 664175787 176858113 360260438 142336313 605911584 16070901 159036303 558918896 589107154 542802519 872844940 477460863 932834767 172200376 734238786 287261550 550043826 647986653 752116592 527746838 760217046 647050615 662383271 962638359 970651862 447383001 525753623 438953614 976393035 871177699 995936917 813536331 845221034 881181263 956095370 130652587 477747925 427525615 755857783 186949134 456501802 111236844 942795209 18497654 743966914 449627012 773776404 574909801 909645309 454763379 640577833 750524920 806651013 561799766 771630396 967704583 995257285 21422555 579347745 894967886 930873267 199151056 896279791 195604783 360955145 376978946 947618018 312129984 668370155 446748665 820211920 667615153 999417863 996568698 998451836 891440423 953099242 934106395 975621369 165519679 251978283 816550629 995179353 747677775 892083896 643407420 957482674 435438887 445055667 170648983 820846163 722242872 809979578 687401336 887663565 601943714 660514368 124608876 423293266 570998055 803785129 2483883 273245554 867317899 892825006 667425389 884007804 925466024 968580439 235158267 782696674 290626059 342352423 54523587 516732807 952669988 996470036 559854242 919346771 217586526 561408812 775640155 775711977 328408549 558515257 162893606 566301104 258178059 486699184 218814078 466283974 10448845 350477770 297304987 747094739 907703735 952336349 464389619 973463562 148900450 214962199 502471891 538943259 864766404 998144421 744808787 927898981 512998334 686737330 243682378 879504472 310637915 431418068 324958141 617457381 388937934 726892059 459303756 854479092 972405758 998291294 828908683 897612499 466670792 665648374 814223412 924829980 853699228 884065132 94653341 499606971 630399274 853770375 777626165 800341239 714735128 789860842 502796814 944112386 921085673 977249179 331348331 978672127 885381905 938015113 153307713 800639280 858784669 931396554 256812187 637283724 761077061 964485156 781763338 978787598 6106815 385261033 827097695 967257575 855721867 866470977 305823148 771991576 63413513 142034276 290086812 599054096 774815640 812391717 751954926 960274978 287359140 367165078 939397061 969609936 812873207 909275609 178256879 237753276 48820441 977082552 15972501 591422385 38114101 165960778 112897635 950755842 997194939 999057402 56817908 981514530 979952668 990896958 990017876 992581743 957932715 984768460 828197062 947426709 9847947 917214240 546469605 646899689 409548409 906932669 12017299 570576007 720223621 791708874 444827107 485641736 422960643 806758200 286350022 889071155 101298016 710132049 444637611 741339827 60462884 272516899 591982975 977257961 610472425 671192321 781483220 950183676 235603308 599163626 405613869 514972869 917996916 967922669 6280136 122429810 929042289 998810049 271078139 811083137 663599979 867520777 8333039 154150058 982106945 995651549 165865771 808866979 98576648 251922897 25665990 53366300 159388840 888064393 345510113 886808995 640285953 718752608 617317902 943082431 591208522 638432766 678353343 923081078 478964725 603001045 140430266 535686351 708559393 877784524 407079763 578693350 617797590 769804673 362929567 429861984 808108862 835594443 56644433 318569475 51480879 744281121 363094634 587140553 573683070 831927543 249567067 986964087 133613577 815263131 768442181 942167031 665953683 775211934 823550474 895145502 629191932 821881406 838781581 974764104 209823269 564518946 777180891 861425261 621830922 942060172 258291062 441726436 76136336 120274151 735154864 911732283 287050260 553397558 325821271 588134573 815636254 897751447 241354694 723657648 805994252 903684374 417391213 595580897 852950857 946362213 481481422 814181694 313972902 626545137 8133804 220734025 376319844 477801205 367121207 767666306 492781302 849798762 329095756 699432712 65899804 992544050 306792020 624743126 501457701 676546792 240906819 904070164 881397024 987786561 472171709 943090876 481311445 619840072 745911208 890972125 76118309 782127906 594197756 867668063 672585853 840377674 864067780 950285245 227849405 804854754 504798882 506491270 339655517 362671789 171918992 772295710 59678101 113883599 912841373 930143038 534937610 972240033 869196641 943410300 154461185 336337002 896249470 994126420 918864835 996892231 32517028 730328554 138654375 261574633 597326391 786437351 884884995 908652226 563138542 763357747 270912023 846598248 395592555 873748942 239964457 482648859 879029527 922308254 78329565 990533734 695533502 936605329 87418885 429235821 217485141 838073636 3845517 587177828 322384793 813037994 604757859 752144718 903167348 989275575 430232241 488954055 661723736 760119937 311789979 524171844 881457393 978804546 237205070 617405168 151744399 216844658 864525322 986218429 832123767 897670110 570699419 968094598 269889111 811734416 141098230 148225886 329712545 920489297 514729945 711538996 222336546 839008944 199305116 241740165 208362419 351231739 702624601 771716626 932175744 997572960 437735797 766914838 823035908 913386982 230303530 351884949 134061488 688431078 485586221 838029558 317852752 820577213 10041321 886160606 788339045 797183379 833433884 938774803 791093494 904777118 745535917 754666659 687444539 710086369 202267571 578509197 443798082 822148356 536322869 903296896 794224881 966509359 907165822 961918518 182858127 803850224 184356131 951767231 144500729 914686206 556268825 592505752 846810146 851330315 958236236 980779729 13778516 39142079 795706261 877061678 183277151 278020718 837975528 919567908 347310376 826524025 995871216 999523446 599155988 627149530 472110414 615076867 397765877 680602269 287564617 988518711 975355789 975414925 40695560 950761646 208769197 885122024 497022856 646301968 296706723 479050566 610143857 874689934 684458709 928593849 825319389 908714535 292689401 705702533 188967594 306506698 612934321 875506421 678023295 954636979 855060045 930968006 712594606 948608606 103285827 856551098 382916619 554066144 839378161 926082683 128897086 554607038 963397464 967750525 66049251 101816212 780789227 791764465 401547277 556474779 843930684 980681929 832697480 884852166 896959271 979211137 465837838 672396412 929447957 940960944 981768407 991669098 605496955 930145239 812060201 821153447 211327298 406175085 931045972 986487964 543506310 636508185 676927405 960728071 881654263 916432355 521384275 689557245 355558475 845339599 278550075 321605736 405771835 580787896 343068880 467303410 249630593 871111709 892402427 929459705 827417214 828787086 649894621 719444389 454686151 513154437 334340853 652821924 315833736 508960044 975324696 992410561 329049582 721329741 330946993 481190294 405067368 873329411 431709870 602206531 610399978 863251993 662700458 978217945 475788652 707691551 688530271 880499556 536045705 979645960 440245700 626078972 361902986 938407969 233734639 289425134 889856706 948044338 595444821 904987807 218897835 398936441 880620577 899983448 678785408 978406667 517821569 786522690 701138396 777153172 668712090 916921834 618237584 954104477 357326653 436667232 902752807 906820981 901595810 974046972 609887204 758326561 924922407 986504231 813561421 895596141 110931184 769890340 526412626 964914803 532443000 968783755 69337614 285983086 988388795 998558893 971302842 976835378 903570795 982066934 738390680 954533727 756522706 897814421 665304986 993250224 777538979 813471277 633167496 988455209 756827293 945997070 155552736 680683719 811262093 933737284 407627713 733324288 186723716 354279242 169024593 650922163 821968561 949822898 802940989 926989217 970349458 992677442 421855187 581861625 100740051 845121682 74169022 193551567 755394297 842452662 95055272 770979553 183087320 747560722 613078919 927954585 388675996 699598638 739767283 869449669 430589991 723356738 461921276 966478401 526447247 681323503 10379424 685805905 343329926 545086849 200643875 579255237 368904508 481778935 255865677 718632237 709682149 980529812 509850856 625381756 873403474 890796077 405855872 905938931 122805330 970259546 250199860 377405232 168599859 343848506 41140268 265246669 202198757 268926652 73172210 283996728 465099824 831513824 643050186 973708620 761455888 788877723 770578800 845852869 718867859 965050984 420939108 601431831 840577053 983897592 737471781 772326050 808891626 955601586 656740348 959936676 508319686 952894443 730665639 945770408 11790246 237037531 770839381 981484540 886542020 969124303 126245095 670318941 692780850 868181984 959485364 986676060 319448632 907497268 281134640 716377632 97160934 875139099 624795302 777244237 30675805 355191869 552595490 595383148 758329206 985335481 589058008 764147497 884519968 941776748 6382767 392360486 19051807 663759975 593468329 715529173 297530157 821996861 644366347 832607791 730203179 977177677 388548757 493790814 159585711 607796949 57122839 148786808 957081138 976086181 203361418 649308419 569011720 578361314 888513908 988230317 147926521 321490493 825727266 915671182 647367219 660888270 315184985 728706091 614679373 942691246 58896246 606818893 47969146 745806270 627172172 733058877 770299015 971548926 332120532 855680663 441592569 518461273 867080452 970563025 145347656 171947935 717614933 770088507 454408083 753755952 395676407 727407245 231747148 891147350 233133813 519608563 712532863 728186558 807596618 828253138 703703554 857882973 732607001 758694388 387387348 774566125 219386920 798590171 387135527 610484349 690506757 997962510 585608850 898580227 906511428 982510424 42091894 388869065 449827770 469632059 550142702 612673918 919282294 967153446 55672574 221857841 881595426 985695360 859502741 902629573 179598907 524256428 227023845 408763556 345838635 891074968 333778939 360529349 885308739 910787716 734952259 817032538 876520184 906776303 257915286 339695473 547623049 850079511 820050070 831644002 462462186 796955793 428359673 793541660 826469231 859745497 893456471 988003842 414440148 888571324 177051500 471596500 924170006 977045184 935763772 960449502 92463520 505627825 704477111 908081078 26338365 434747739 217927071 926288346 704080698 711066860 158390232 789828645 496296210 674825353 130085470 335085133 750776898 893470058 414060281 966326766 872573487 954453693 414457367 790341775 112440466 496272333 96165205 420950895 487875088 494368830 907095043 910644786 832922371 955655979 463622667 503799643 498769552 505875405 668915212 973930430 892225484 983002563 482161148 657903201 445479121 663766614 297758991 746842341 514313403 905015752 408004107 755778984 324034056 513723210 886921931 924931009 723894442 835564887 522748193 642773333 114692620 615875795 69253649 494271607 654166215 725734913 550711037 971617310 144060056 412357449 579371830 880679943 249856788 743187022 113504102 667761627 651476333 873754240 422111552 552025183 192895326 464648015 333022479 739879497 670471192 811186085 977145299 988372075 55923183 442178219 701393907 711312374 917985 15985539 179027791 350552993 994717137 999940862 28353768 540225719 504436744 716281394 696711561 966012222 917657517 975053339 933402863 995403794 565508863 629615904 934664822 983503040 955536414 964445268 843014644 926536523 157055559 823130505 303996173 967459117 880706033 985636370 217048655 633130293 463605439 472890719 859335008 989629231 142417439 356840476 425888609 809853323 993839790 996216008 157948467 588188677 650063569 967144800 881656434 886540581 236531143 246175442 90534768 489468840 405222306 961333306 592424677 825111460 355224914 985967506 573199431 860500105 860260745 944469451 316874322 748317935 735122686 751201159 79793166 405006564 367312674 530170156 905666263 957295279 322857946 722248759 190841428 794305886 147409260 494251829 543299062 828325667 395665607 657433520 387017327 699349000 683685321 968734008 393489096 647399275 362485357 931292843 583116608 918200258 759887207 835134435 704444830 917824303 568943234 884040345 152384308 506463311 201536202 521853593 395918531 931447359 884847798 963558825 177675931 470876795 488778309 828427045 453096669 461028727 578721998 686433289 147747497 968268167 138348954 702775598 773897914 895242787 37703469 251927104 336292417 681461877 693573132 694347184 357509931 893995120 532015857 953678216 836400023 856485893 121831870 256016213 543875660 839240314 566965280 704683625 507435903 543415335 932001291 993721247 701713458 871852039 111814676 587297485 61306791 897681674 918503754 992987468 716437482 748328560 163649698 985343016 78725886 156798727 658122028 775004899 126657896 590354185 892390065 926726574 753796966 915250216 557327892 883088385 986585609 991978546 512495490 554590797 813892490 968633886 617793525 772729037 581741402 844947513 104232558 343680818 82704765 274254334 155017001 879007213 687753620 855669469 635287264 954078679 514165336 857304754 25496533 174783599 420520661 462763668 496048463 735043549 69985548 458564415 187850106 316570001 238537745 361796412 555784881 759748085 945289004 964088331 804903543 846231365 147174307 835624407 794069177 825960107 423974412 945241009 50127741 623012002 508544710 705533512 535297690 590178750 627087032 896449992 863185658 900912169 395880779 587414774 203502813 840838154 180256801 393491327 405863700 633533101 562163248 931796187 164633829 251053165 644417035 703073508 761789960 971128098 322759724 458547081 219977315 433010915 34313970 908634476 282896452 490260578 703931375 809155803 199543880 294576306 337336389 997774003 339111834 497868582 206645265 298375052 618715869 912459790 185993146 498500254 363920688 719215963 263829702 518640848 627175357 690982131 451564550 572725101 534069856 851252437 339328458 799291710 460878177 734237769 38355076 982888318 857420934 953195097 890799137 981605123 47358388 108025086 643336163 975192494 716262834 891217188 511205457 861623144 340463359 408918193 606307695 662217893 461459821 637157203 77839449 332635844 648352039 990541792 126576030 890170528 575560822 871947771 645277706 775676636 730025058 805355040 126233290 594449698 927561333 963614187 260240657 797029334 943778783 986777241 481798071 733577146 10533431 132999984 200629728 317040972 160119902 852847767 786808947 966426725 89053083 592087070 774008873 938206852 828630568 916733351 785763206 820361113 229376181 996307339 329615616 618585962 691928374 693257882 427586601 837193624 948010481 995020909 103761713 596862011 463663557 486652272 444318589 490924286 441720464 763136282 954493817 963711088 885221245 936676274 874779552 967772089 813615273 854747538 838432658 855837668 988953774 989476040 151987539 913449975 947601224 954076409 689929037 875225616 447326763 960205276 814768008 955524928 439255511 575337639 479443265 820274950 648521048 678279058 749856927 990455937 549087168 590866071 889456387 915063627 794226334 954622067 613336564 647439262 384556341 446798457 178394890 256884707 599829339 895473249 104463703 620788160 265728402 869060836 558257388 842007147 884876843 919517281 266313257 344512076 492040837 792234620 851479952 864974152 702440607 973280407 418088842 591210714 201171541 908335951 904076315 917784938 523075665 788130298 877297285 972209763 37826248 357759947 982201924 996377119 454940140 641667697 483081711 605259890 690887161 898766286 312113462 856115958 191002718 263484076 462123366 930322230 487561680 554106556 175725432 913062433 186372970 236142588 320370485 936864997 26229767 863222818 442121017 863313505 113817135 944147842 354850155 891116206 781336004 945923399 971702208 983682525 471869329 869547446 880300057 934703223 693378172 983802795 79411483 137807463 915010408 975830535 965074884 971553742 914222820 937682137 977719760 999319441 643013726 735037982 4253978 718082560 902859234 946063568 59952445 522268720 637231123 904570785 818673319 974992728 101778620 537449972 101296398 146208417 576572547 936740666 58274474 661623375 603904971 922049942 285227569 310796486 877098544 907322406 287935853 804960026 245469658 571614462 430706139 454769077 869399042 966814923 395860747 997384282 959056142 961718363 748670385 890325649 696255889 801065482 691996990 697575609 507280557 791877627 257592962 284301912 72455981 207152252 302663725 731246829 119371602 968051402 394914149 979644036 701933067 710958166 13458976 750361129 911666401 935349858 729347518 864091176 745106451 805060198 542147786 961598176 289302821 980815811 941164936 996132167 501594624 818358579 200983982 298665407 190122917 236481759 67752103 155420174 372191658 720375877 290457258 610486704 190188578 947410716 913423892 981113987 705030105 855354047 319124261 563931266 322768059 737687466 533031490 730793266 259103678 585294960 116404763 206946189 801942202 888762689 9932416 704980743 899310142 989466069 846081941 943966280 53976199 563222475 848240776 931779043 17114340 203527835 542888368 833769990 885197216 958291683 275101476 524728034 643018465 950254271 920864941 991137158 394283076 815744122 490956618 768456166 130260807 587144091 479756384 671942665 926026528 926513730 810354394 933970765 168775688 494142199 639982496 652456642 814648261 987779360 838234318 867015788 203587558 498182181 425711778 804728830 641571903 877072542 792896301 865315088 530551980 569474522 405802757 934736001 927848804 954152200 432915742 799307018 699361560 723458341 641670611 758838440 486076058 777765400 661099829 843424082 471778619 879308963 509895416 766486552 796468178 905493742 174928216 223765594 553773143 980649514 197984833 476568480 625359868 868219574 162937183 573365401 162527456 899724933 62213710 365163257 406161077 439374453 890647941 985715707 212601792 761071482 387752433 568262324 255732388 686546901 617327518 851177494 366020434 866478736 902046910 910218961 643615333 710253588 859712546 987928083 471635584 573120135 416641713 826913766 287132416 940377135 430883928 878242596 497916396 783840921 602672531 843136421 538786791 602069226 532325844 730571148 258094441 445141766 836672389 903858543 567037042 840857373 61632216 682540830 282328319 591018297 643198889 697076952 353307292 729743927 324573341 949724534 856504725 954472528 374063701 629207581 172901391 512912826 598683200 989046356 173037300 606768439 347332236 494020820 134529529 246660243 430434844 666189825 195587072 864202460 680371754 684301733 347936182 525823718 340709819 466086159 513079966 784392874 200585197 923111211 356271346 525891206 813675585 844633997 395867609 444110889 969979453 972592579 907313463 938302763 402743024 704617547 11152701 201374572 797988722 867978674 120849639 994591900 354482232 852558831 296058325 924000024 311979407 510526041 405820252 893996435 721360631 828536035 989114280 996296529 613764400 732841454 803169855 875479912 653202228 751261354 860262966 970770789 34103739 340266421 65958774 675565265 816813873 927337834 413958524 573652005 488568932 906433187 506165357 576272160 642979072 907785535 467411225 979454602 624023446 818561313 95183091 692764145 834639490 964869754 947182109 976699541 355779637 634386172 816088114 867336352 612045397 954778303 316250902 401159098 667112032 914466762 927089108 948426252 291189744 340486757 925989191 950787219 392975572 520901301 486871217 496308052 62957177 551821589 59492322 275264607 462696211 998039722 479033450 715920728 219816449 534313061 700076338 739439510 250196867 666789288 676513420 830745831 137289250 653358212 285909323 752984927 820389356 903926253 923463102 993494092 510396392 626281265 810172832 965995161 686068847 885248048 137514105 835442575 51763373 772053905 424448880 874529510 925198688 950022361 532127239 982193475 775074801 933084610 717868429 900296881 11673549 89933435 502492441 909758975 992513529 998750026 864983793 983557024 341623557 925795410 254966470 861546529 513637967 927021494 96173087 543527536 992031589 999190793 706073365 926970339 302452177 806755166 433504787 944786486 923377550 976807646 72385826 888663305 543118498 719019588 513684825 775013647 16661856 166940907 498413432 575755241 810458900 988034851 300829772 374611075 585943065 607831173 158860403 182775521 68764778 205145742 99467025 576804892 844790011 948111173 749673402 836629190 725872296 921342864 790359704 915135857 17343501 313141876 442873564 675774023 690816404 795279920 21702031 919526978 146341514 792441667 130260599 821398384 615447744 845957520 859938354 868210348 991348311 994754859 893492064 964957787 287549787 639830422 582766880 787966076 494604530 869436469 195843970 446962070 528440754 759959728 865085112 889044803 842138674 941932716 137062948 827699171 288399342 635628072 339972137 932131921 161528222 768317876 603498326 624960880 348682166 433239985 170121244 905887218 488173152 573781146 295586661 828420259 126569247 716308165 503797185 931680693 254525536 657537420 831526096 991826109 484260048 553733692 298543792 340292510 435892661 957123961 505043630 757573366 982519066 986156939 205382383 854631994 252290638 988804546 429956814 799653933 192658063 537686701 738536659 772743761 664575784 678908359 417563668 985953497 454382488 584919223 630547918 948231787 807179916 941285666 271104285 429681340 406168250 916822396 812140235 944541695 597131380 969581249 38738352 460891358 780609350 799612835 409832974 662289001 323569651 477297277 748907526 948719484 579139266 736580079 62033520 980875724 757630912 790770778 692911847 788729415 195357963 671335343 294131381 460691593 328151358 331068994 321421673 875993623 805451377 957052032 232967573 616893523 138407198 395720596 875538800 978477550 831993466 982412090 197390078 626110521 896041432 915543539 597972898 766146502 125953274 190290259 438346851 619532648 498927756 626731155 309920454 825966171 952921671 969714233 16972852 487333008 910616677 931045804 617695391 981448163 617527710 849505781 227601620 924686975 350577930 748170367 165157130 671290212 849045613 987359675 316863686 626990938 104858530 603037251 446176671 800887381 106730140 534286184 951942096 969042619 30887737 831196153 897778058 949883153 847644383 879783084 160634465 229812079 7044377 41049126 433845107 850582434 226294417 894274341 41733281 539620986 863261354 888047313 427103605 456574633 500376860 711358130 720220631 929825159 309254157 466743468 719727054 932126485 537211986 885646738 922079473 988775928 531843393 644363996 607692360 691482812 797667947 853947326 74995976 673146377 774574026 800740544 774165882 797907292 751612719 906051785 401399034 816837067 935520752 995331849 562267918 975981208 445818997 950770257 245415512 580132558 536960988 989467095 920889170 993504545 957908811 996031953 680414501 930577766 138640033 280765513 782003788 908678129 766141460 867114376 859303230 964230948 293947779 318043202 573884930 902687769 812842922 910069691 471456374 886356347 140535652 379601428 730269371 762210636 35629726 795063899 427620003 970178552 848116454 983246685 868481734 924145346 303604281 425358597 492093104 823052962 460828844 603919278 946046822 961165106 471563127 894884566 85947942 337963630 14639088 968703809 329624339 535704505 605108301 727794810 924728115 977298294 823603120 929100491 188495020 731331846 664582913 720615360 746446807 768743517 969732574 982496559 334400512 856571956 575464823 664794130 888740096 920289998 217189700 272284475 285286683 982798941 618183949 646879773 484050125 642019955 519922521 906578240 327458111 417447807 500252347 968569997 37264562 817631408 617884586 994391312 727037878 732746026 377442879 623545318 877546486 899663525 572138497 735918347 860174197 914541879 727227884 737496046 832781428 923443856 853076626 961524722 530767453 843555157 130288380 960082061 342968235 484624671 143003877 249643458 310554990 463001770 327173062 931772374 486432946 633852503 446944052 879713017 851537410 961554205 273357490 671446211 230171447 268260833 604461610 967871822 274104236 769247031 550682782 612634741 9615709 530665708 421925341 589461253 245634822 756673551 776129079 804835842 142692005 775581038 549584714 556989020 460982512 742647231 323652891 352076118 992867111 994901619 886211962 961240049 906109147 953792965 926570243 989565132 598436800 793964689 665036316 802526172 278778414 958413199 768778689 939884325 793701260 923137902 511108222 526821400 852001880 940002600 682932794 867836388 706060608 926701565 251247442 828530645 145562245 378301237 310033938 451822751 870967169 971292122 147139729 251517066 460070463 522323953 104376504 249257972 887411546 904389864 829587644 868067759 735819282 862274878 951020866 997893007 633544545 709232903 733096775 735630965 313945095 567381527 291610227 615242037 477549354 596307848 110346626 243668827 37187097 799460681 151090100 781517515 108613829 814598359 217038242 813432447 750494042 897479650 7974986 766799933 129238022 938460435 933074055 999864316 268021181 865383844 728478508 967952240 537742545 614403882 379045874 640296631 589017378 910852831 135012648 189117673 506334084 903634025 630403640 635823033 908919645 966835651 152844494 524381460 987204831 992017591 608059032 837773009 975124053 984270306 731482502 987712123 465602262 483596334 375740422 710696141 982937627 984952521 404019701 572503434 525912929 924723299 472998200 663686761 175354541 445992341 118765766 966848712 650097756 772145439 523943525 596545042 741928342 933197510 870866145 961574014 260869458 813285563 241316218 289935038 606612245 736982752 367956914 739691830 891356015 908437212 789281214 995525050 190947837 605581196 366452231 930610984 112774643 529184020 345664123 985646400 352013146 763640922 133456095 613690106 992969609 997706541 44165154 256871698 361453580 944553288 335049325 609501570 971626664 974487437 798247447 815954365 462060574 913266791 997012673 999832676 111825625 192298772 756064619 860905918 514630859 609029131 189061191 960670336 985783630 992501392 878563361 945830096 873333635 992339355 757335758 804918285 160371781 256860274 994598714 996194214 756223899 816182452 157092598 869539148 620406454 923059594 826836501 965547016 108005859 303035823 860474774 972250432 185171023 214778708 268205338 272743173 708957190 896800216 18396323 212941664 926866575 941249306 53612360 266302638 638527557 779046181 782491874 801683053 803676822 965731031 500694044 990107168 502668183 744985934 906872593 930930739 567753272 672415534 903034080 943157050 182037042 587307591 131116864 731975893 683367659 788923755 297668087 563925335 380017931 824551909 409557697 447643705 777300576 787484173 787141930 910119643 606009089 694126447 852949859 985673786 674946836 817954874 419811596 998184910 767193333 992553599 791694583 858820193 591240623 845904655 961014896 966978359 76389044 471878517 143243974 915096682 844680647 914980589 715495525 849829849 780758119 862680948 338734867 377496127 828991009 962955411 57558737 573606308 67376505 362101890 35053950 439963851 854318123 966428593 827047738 999170031 362097508 495079498 62725145 740029898 340734089 920543018 920950254 936609885 755126942 907652301 331881924 630231669 424766383 565878389 324790594 399518621 167873542 322723152 506255120 921738736 279636352 505165280 941834730 959612069 892254517 897004541 334690040 503420033 427936465 810818343 701921811 704917054 669014716 976689945 846411524 896345757 545733584 838241593 179450886 908778352 48297504 258280365 864146606 898105994 805757263 975162629 738344004 758572337 560773403 696731150 525466217 993801666 132382134 652431375 53706073 276271082 790477297 901398385 136975838 229812159 966263525 977342981 432476145 555780929 592444081 949031296 644928727 668511869 788335869 910878792 292566573 953527996 768608186 908539757 558437196 600815318 47628921 723019145 959996201 983825023 863540192 929795133 223734284 546204734 807577022 961587308 504561382 850866816 346236300 353512522 300800554 599464354 294909223 613116508 144622128 224753746 675163867 738132831 583625234 935357729 897242965 973190609 501739145 667773274 674089158 983704399 659310183 965738381 480969509 758430058 288996609 672386925 829395017 999156256 223781819 731771822 911398670 948732840 602579716 744698335 305676090 330133588 245927018 653376460 277376718 422727421 950179561 994882651 336599233 439166195 967220703 997746751 668494147 931100426 168402910 657540753 101531687 438155116 410477852 608492304 770230794 902189918 316002343 842203906 897788418 943763743 714823766 929347860 187304171 570393085 378609793 850183499 50698431 721573284 898949950 928371041 774313788 782909791 573300526 671580618 394595068 405499207 305488723 338729570 366705716 785659077 9717605 509860173 90984484 392663525 947941804 975365966 610124450 927945733 181300173 750559683 330300151 432367509 574903043 988732383 987280786 993192961 471310360 808300562 371789172 900872892 960821435 977066357 882149575 900979164 651271342 776756575 43552344 104039157 342132218 617791861 757784300 877818045 768226838 824553692 20380331 287397169 959695853 986208126 666693588 797904948 436551432 954724176 257831026 365284324 225065075 897973556 473840069 709695621 901185806 944564728 18155818 316960487 69362789 550986363 681645062 765326541 899254923 980900464 461910280 652089371 301796485 543564136 221643035 630445172 109391369 703853423 930518693 935975331 450222723 822154768 946963904 959978130 985661514 992450198 454722396 881791876 474306661 740616710 733271038 930232263 547346465 819896893 275142079 714001031 932398444 990918172 355515495 961580741 83957122 513913693 275896592 642214315 304198094 430740100 765390111 888014154 745983966 790367423 6512007 226417875 469815459 879293123 941576489 997833991 608611094 977296309 425492803 961922451 77314664 975996985 206712175 552775562 102039160 293436866 965043380 997855320 918929574 982869612 955037157 973314874 64586565 460403040 502554924 507511112 796600126 999520316 94420669 760260975 203126325 232902310 832775852 904639715 274718410 800588158 471287335 641447398 533750479 847994238 393388505 707839353 411912088 906671332 611677826 912247201 143337781 194363576 818057022 885660113 190408344 361210872 146185033 872015010 513018955 901825792 203945889 914576938 758702323 885020023 648119708 871038391 91709402 449587958 401080814 528566698 682553793 717895636 176911192 222787007 721199030 962551970 414949440 822016689 598955074 958501301 868880373 943797108 38217829 649133901 93112891 611112317 69325931 405395774 158566419 847933448 542914232 854709597 882985933 930956655 271277057 914104212 595085853 934241973 454536803 654138613 942893533 947248478 811841672 985149036 845877096 906872342 379783619 788028326 285255406 650237827 146431481 598650410 650539802 699238982 695397077 801391608 813767523 904772417 932035918 982719422 299136438 729593012 73731639 85812006 75032006 670311602 580978716 996121387 235363627 434580949 719488961 759402795 248063571 283090329 249143571 498608743 45476814 947981926 623418761 817234171 765053675 851459062 482432477 804237505 875318219 993126734 705866858 892066444 81307737 664107203 208334025 981910363 481609329 799463445 841261656 904208980 182404585 722071795 70711633 216455089 782635118 820807544 208454128 277219919 183009636 940102344 541777348 895453804 615028557 688902551 636807733 750487587 851576916 914904926 623882825 928390679 525505649 609189275 949667148 972728372 466683879 967607548 5896425 10633446 808821495 908686406 290627634 849793207 959320941 959568201 408867385 818665969 838369087 948799105 692129351 745176303 419790031 448860149 511803004 676616217 426763034 662371390 188787860 679099345 845825860 882378973 456618657 873106241 408282804 480037122 937931647 994281871 277271731 357610915 246969869 538639896 102989530 380878491 611491352 855737307 157145428 613903923 961719228 972279764 194348922 729344364 433564638 640792932 82223870 820143969 520276739 604309625 64020733 807558882 566726825 948536674 620701795 913698407 116790855 480184159 964266477 987099377 136318278 811678457 984792644 995110541 958519510 989836093 408841638 927453558 838322597 906123245 224209068 465213051 366172791 368818515 479661499 903686864 325251573 704492176 347285689 751097455 179698812 489905175 371276171 998924274 661419981 763579094 329882545 657620510 167924683 517371248 585463949 716336596 291860188 710452951 634554370 863019691 82259954 789575270 949699013 964205991 740719216 930389437 611923339 887786573 150705193 799188310 790177435 956241235 616967508 861899683 684908158 758701974 619794603 865096779 85225698 823292892 797993735 952169110 525757886 604041763 729509943 959560733 694451371 967909151 934939387 991609650 946072324 971959395 445342448 884345139 880353578 985513606 683963030 794679060 509179471 603804412 573329819 847229150 619653073 701475234 644900895 834013446 33099119 547907297 684293545 965488171 942750397 966181588 27130704 406558375 769564236 962075049 224547901 460319338 713296351 755072710 32674500 420304945 276243157 968308151 443961312 641843653 918947027 931706872 889644291 956437871 757998949 919274697 86743627 467488191 158118599 271913928 611944975 841164159 399458647 426583672 834732228 994176588 478881073 671826475 583995377 790015677 587988774 671507296 43099373 490721222 376496173 939355366 366659181 959484680 858462604 963180784 317989809 728829770 814385349 980245556 709281746 928461261 202795520 926292535 855472936 863038358 661425403 702801247 778086386 887782115 976335953 977452166 270147332 938271266 36937265 113094032 444870933 952589959 185113488 632966429 165426120 611005082 477507444 724045915 939323247 959469960 484549865 674245531 841380186 898613892 454013777 924677557 426244121 843618641 362836997 481722746 463168440 563421126 626411196 672018362 758602835 930675604 977094734 978780478 784371458 881479291 28107295 876199047 618236093 663926880 566555551 967775579 347106098 810809681 796186133 876073778 451649288 743258972 89059428 492261449 398598973 812667838 10332600 736296797 584501648 751703457 167928263 975561025 857883045 937430931 532015492 985639407 527680688 862127117 230390228 516651518 419719859 456583067 670448233 819871258 161620272 434370405 933591065 967204828 28619911 693442971 278418771 871767416 240758080 630566236 661744833 868946406 283123175 446468373 375280693 850681142 34139471 293362082 360796865 371571740 904370282 937340375 270115898 592342854 781028270 831038750 13167069 250611350 935776131 968041322 367458850 477278132 751219731 771528724 992307682 999005173 52168616 690372794 497761275 950604135 287072637 637337439 675142351 809611095 583753133 869855471 900147276 950006860 920462592 947242203 813166123 856480531 332201538 454507507 319171076 941071401 960643419 982904167 301877280 750368316 609441597 772883627 507715614 678038794 149734888 554300792 471102260 945179104 245561301 465882936 751829034 997818878 197915761 823546724 649453803 680647554 186665729 203632205 30578979 763767780 113436262 748749341 710396213 937613424 672990641 993596554 337180941 865282870 270735408 477044385 302629407 385266521 633661609 768716570 15514432 199093288 429281053 660225667 514634329 925741523 469141884 532962184 617939921 883802500 205925306 681424548 151843079 206412031 730869751 938752911 218478330 420390058 231621924 695551221 297834452 582334270 270450099 894499648 682172290 793792948 92485437 377135468 792228858 918645376 11442848 276473421 394635017 406066218 74985061 973163891 68298156 298609192 127077546 404863116 255267489 407636166 15734996 656674328 774997902 830501448 983032392 992374649 18064260 267784091 319321337 400371296 858135580 943575946 633954955 837599823 427816994 662425261 119232770 536085375 994925693 996588380 31341132 445601768 58908356 811868716 249887547 742734091 219652224 469791150 863931839 988616332 241251633 585953249 266111031 955777386 236585486 964210609 616372840 892312424 310782082 895195808 177856181 449784709 353882752 501442468 400795773 615896243 49440517 771645835 503507122 884884789 523504089 763021372 130915714 845558789 395677938 526983619 810028674 935090689 523778418 568632427 771378672 876564252 688824471 965020279 116914713 258353219 796041434 807592443 606956226 894617640 675130292 865619418 921066546 958568999 478271495 639084194 571644400 945267108 519616162 981441820 827656235 901486502 333912491 872860472 479597802 801279702 716912541 801999352 264870504 272343232 780228204 968908560 153456477 628230115 249907118 841103705 164968272 347189111 255257472 693711996 170799918 849008580 182997759 214265692 682697158 821698253 738721316 959905325 494110912 566729808 703664468 743700035 680553525 732085243 229197495 602241560 282809752 992840704 343929186 452472113 47410974 354042493 238501460 322600164 889916199 978713265 913329674 984227102 283898119 339865863 61091027 692140528 193133889 695190738 310306064 792415437 125731980 265652300 308534455 935616145 700552953 759372318 366890572 415583036 673614789 754436574 431295949 989445579 989995854 995039289 29440494 476928873 611378381 626058756 244973752 983121749 844026351 859691770 532042735 726452632 464203835 849193538 557720806 835986563 524355830 542847248 132347889 728127202 284712731 662935091 515536097 592523172 330841583 465943270 204026729 661417143 477087394 766425550 310822445 570799855 570840053 988999938 845634261 889061784 503003351 720823630 104956154 744619550 104223259 366023037 264660418 964825391 514836247 844434778 598294009 692994210 741393011 827783977 933648800 947902369 49651661 333294984 73013235 874359830 959659666 978585796 391510749 533732108 710894610 906799477 824915753 831767136 251882118 604524588 525395506 696707642 376236647 824780370 615686835 675154129 621001900 914075200 59775445 850655647 935155468 958518705 533750721 974206999 727699057 913755776 914845066 929743647 501640112 504332122 600854261 817432172 955356008 990650637 459118639 923669318 264381821 727495459 486044011 632943606 101219046 559938091 739813218 837000174 684765849 794437016 125045749 948289619 237603805 798196993 175095913 381513935 534835561 668637116 188314523 913844333 126433506 730875671 404627549 666790879 771786217 837027376 310013207 594497881 325704711 571706701 196320029 526319116 324272323 558876393 259810072 727654019 624098063 935002750 278634161 837414641 235365818 647821450 318575843 765826829 424125909 639108128 412913971 963040791 283630522 948386297 721570552 851419007 951016446 983501748 143292789 615735721 469007558 541835984 372243258 547964140 453734116 731587998 328741722 549776872 77168099 102755217 504409249 746187977 68761513 438766232 169035964 853568030 738011943 799439727 428091904 789604819 707199114 966422391 924279590 961011259 471205147 920647753 611039161 683578479 306453551 364776811 474348479 647017275 298514709 994206860 223669588 724848306 718646666 855911989 518847482 920825091 446544984 496109804 823685224 857806392 486939822 845971080 763178900 877662702 478859491 593124103 14175443 782228846 93380567 866306006 180446814 215628377 359898149 853880856 203155941 875921754 70880992 525381747 136623017 645502025 688693808 754479525 92044111 421247006 49847570 433571060 558350836 868085664 245499761 746325952 190732532 892506730 667557838 771871236 955823386 980909091 578937010 821081875 155617323 618400227 619857619 907454090 580496644 860719907 119469291 724142998 528860981 852789603 892573339 946639968 102363995 702883478 606267796 987963550 5735392 885916930 435681418 837713187 428487807 564847646 328054373 486760926 354649935 627643518 68103259 507352084 267623125 948671585 648882791 798281502 163112424 443311835 691800510 983067457 88034014 515588867 365112176 485740230 405962603 435101310 641890830 665944666 418889262 647801016 917771388 970741886 443991422 501566775 182452288 523822248 411570021 471723387 905422060 923817588 61238985 997924429 103099738 622732377 896289252 896502187 278729500 755751997 405862236 454165691 770942645 803816220 699563273 992679865 146416893 808983296 191185522 538800059 800171698 831143886 640050495 896350899 228448631 510289842 217348104 549742561 432137733 748600871 116395905 781671038 668466149 993923765 543400676 682845044 493394356 703228379 770550912 837816041 121416612 145796325 945864109 979624329 224114303 458159627 262432639 904322775 716547977 863591621 569737866 873882433 653774800 776066892 614586092 965040151 22832541 439801410 606499506 793277559 361763827 509560130 782263961 817411997 691239773 856954508 8849385 318380947 293313180 580747385 377496816 565331618 392205428 611900376 52404131 443002167 480108985 591082637 576663249 956087096 119811873 250505176 595975710 807477658 279281238 906292739 252485759 546780151 861363477 921496623 432480293 699193570 748659307 921374173 522465904 920918287 104884472 558484618 370017570 427463981 900475597 962118585 498019827 786744239 246844895 884710121 99480046 926981990 754723863 760587630 484476169 524228247 687785045 811147027 593623418 825065632 188148219 392168468 502483176 914802165 913442164 942260182 670707457 991753671 216985859 520573034 670045755 966340414 348532215 939850250 861394221 868784188 338524197 783431486 225186828 445649254 171463314 318636215 732659895 962461398 771194336 831520272 33521503 762943628 345826520 725217262 736224388 814697705 858580046 966150882 751533126 847067178 151346150 205215281 812018715 935543889 803618783 967040739 280895373 706373083 833689117 888142953 893589850 948332753 720052523 775841798 141507334 204538945 687850236 890353705 465741864 475369920 780679713 887696798 783595707 863467868 671203601 814946704 281625445 595039485 856195394 958712888 157473140 379528440 287571162 344473599 765544168 818723753 360033525 774349851 201109628 573044739 913399139 955272626 859764991 916290674 441548091 651339995 352915513 628714169 770351131 979710215 377889916 987472926 363320037 578599357 356365422 554139344 518732064 570668676 539374585 672062793 545218072 636188737 724887190 832946243 281138595 902739339 93928573 128593415 464179158 741498445 824632151 933095961 134248916 175618833 90667834 877386691 359157778 554796924 365920399 463132283 658857923 954654285 272729965 871246840 817737093 851695993 981607546 988345420 412754246 976004502 735946744 992420003 215349253 224306908 174470937 858513572 483456191 827271450 451448170 583658077 130612595 191837475 20995609 162247911 158540753 469090861 590760923 698107049 121728620 181361613 700324823 737523917 548637661 937012009 921829612 945220597 217593101 355403909 783121065 975767597 568460561 573721855 361044377 803953754 694230578 987011603 727188191 756275530 483184305 882922965 963226839 964979731 634376264 898540167 549931411 705895911 550969745 659498585 697703202 716514584 299500209 367172146 213752028 474374257 212804974 483878998 543482279 730438563 226192624 318677193 637464203 721275204 393596026 642709564 558404552 853331684 995125562 999023568 533045851 743555154 73106083 798208671 64754879 820308585 580802352 603799012 527136314 855596603 972507743 993448703 67573739 754525590 213492711 533916445 681355009 901722530 935033218 955798740 639755629 783268336 452771570 906973101 166490404 571193323 609215000 658849560 898370831 918941031 987660927 996496554 403140250 589572504 687908289 789941644 697013016 921606298 661593518 994292888 668900247 992841223 343302368 962891429 409001042 419957101 930814919 956186787 909693169 935778175 450653816 703716462 366514367 528728659 902996434 980809448 600140202 932105737 459989163 616498752 785775589 860675889 51394938 781021788 683258882 744909252 113434097 477867607 857382108 947278697 735445102 851903728 375926100 635863394 952665846 987405824 739479323 827681057 263752165 658165880 387533732 884631987 702951349 917652884 336732468 948879449 930690491 976811887 527569657 838718271 709693394 962667389 320738928 402953017 452486649 625987894 250594489 293898275 861939918 999704793 501470944 737584215 967908747 987291270 591767908 889717024 728404658 938206240 512084962 618454582 952141476 995088847 85512843 166514264 306840469 885351916 61116172 784779436 932167103 966437023 462006689 806497679 674523332 916776576 790018216 838413600 881883464 973622718 215838829 826851530 765417206 803829468 212072332 253754424 875395896 887433186 569201000 937923486 605729927 626392800 877977597 886030551 474452529 605710496 413348584 704440495 939821938 991871744 841088692 983798165 797669103 842737136 320456829 483463423 270302026 656895618 152005031 425980487 320940166 568945296 946572294 963183902 387327949 878052602 119503073 196126227 241009211 400512987 345074998 824132353 113666728 568525260 847050322 932377570 174358373 458900507 268279064 646125518 784445915 930400009 358316909 532303951 693876424 817740530 499995169 894803275 176366380 401316029 581638090 907720726 83296534 453349921 956401135 995249698 383114782 661227405 567579704 931491705 307456471 520228194 444655751 676903861 334494892 941458860 75778369 973679335 17085249 36783773 505350973 712632144 611138506 976193518 356484424 469226653 635695342 900928384 889589359 991325812 641776385 728487765 323960856 347012655 556750813 573375714 295401325 582305656 646714425 819431692 295414060 349641616 288541120 311292004 523007885 531991745 128421866 247982531 48205126 922303612 141866950 792764197 903416503 911875941 527992228 692863146 628406007 636861487 73107529 475887478 185854947 745360602 799602440 804167771 633340960 801211226 391836041 415220613 828136232 964325063 937936980 963574738 3529171 417376476 538150384 873954282 441605076 777544002 281055787 639311567 623039637 900869002 359358782 952109462 598628157 881180374 339614856 460194810 577335707 693781296 382450228 578629321 776281412 946465592 523875294 999529176 295849290 916679245 272115914 586932079 485250597 633801721 752888798 935994206 147255348 610819422 566269626 812418444 629811671 821122573 234346206 569410794 616673148 895601315 310442801 419962784 202558054 235247347 457832926 762592720 486915147 730426063 126166180 937041626 216316930 300197508 543854439 632215856 268438417 382364987 272375794 536974626 245782648 754675115 462605095 929998237 808104088 995704659 474219875 807423420 257358038 482795735 240574568 762495113 858064141 988554194 894955306 936506241 784612960 820174547 491615248 494685023 945416300 997306074 768702103 862301259 476491482 501905865 473717385 669546566 663036510 781245866 613260056 968645673 518723784 875106526 541734677 822357292 425610778 427280703 60503348 655877481 165141456 383566009 471183279 505215942 786592986 808191849 357779652 508993178 530015952 624343199 880989993 900391355 830664699 987829592 662831068 718365200 85591733 95051969 240061769 572990331 911959 736122024 875001766 933471934 141556857 250296050 716682165 739339282 467647075 669720339 334833524 577377821 761699256 912775143 943749415 955556112 42103614 205273521 950036229 974433753 400494604 800214644 303468443 415994320 344247647 795956858 733894382 767950867 86019415 196046849 907313512 957142515 821065945 982871331 368222527 991770851 939441922 964412079 330547779 428674667 5815347 356905328 758747194 868227087 471765555 633892559 318799150 988399987 472074052 499505206 123123304 729568966 235211922 869208054 792864307 941380641 613634908 733153922 595396553 981034729 613572779 733241658 566546990 842152627 625127330 909812677 659692361 800014266 982360789 996848091 254800548 676563026 557049008 661675711 26975992 171585985 477697476 763619817 443153519 762465735 71763868 124927698 209860461 787029393 763455477 813322642 389324602 891205724 315259525 576300622 996177000 997360972 751270260 943489020 981501763 986323502 385143298 593088889 764503397 813690580 707772606 957999482 435561389 702036440 713461141 734558801 636881538 693472002 877277455 893969163 319830841 392659855 366011841 411365986 446223998 770507271 477963996 480704820 784511691 853986210 41443085 463986920 257118013 410156900 982923909 987828309 768173277 910958960 820563740 887639079 61737233 669362169 393782247 606862052 204439669 454817670 865202745 955555080 330598804 462344228 797086170 813994527 900794743 989145141 77993381 655205184 349297148 598578010 283224464 785259365 134867624 776397540 770629290 798237057 504511939 665261345 960368738 998325046 556515134 575546720 711290829 914980189 271020746 692475588 843851582 848682452 765487263 889720336 986764955 993137103 803023681 954200456 122713325 306109412 433464187 865122090 634216643 744715311 940507173 991400534 46180253 263390412 51860335 882595559 208967575 302796228 129246098 689842698 613858667 686783941 684763860 957425143 333962013 685615504 758279415 804483996 341318876 804585960 139141729 372836313 776030355 983387486 87608589 452138158 58595453 237114732 610787356 779751143 838876553 967970030 651527688 849327430 990046683 994633630 100487553 386529648 992862343 997001286 564417701 761084493 20146280 971632579 528804590 807987826 176022938 722056508 330909996 535149306 937428478 944981012 488469619 899698612 821754092 948519859 804505976 826602132 221363892 625980620 847682468 984720788 772161838 881441435 467833569 753372337 629114250 660847186 318613257 488549508 268603797 643752372 122287215 451848945 85636092 797313080 618132407 886754148 147427112 814040159 237078773 314170102 363604901 453641393 824295483 938568124 816154049 832529358 84458395 866523238 474526078 688859513 564721839 695789801 890075050 927307304 974288283 976452400 428157292 877877868 26780076 914587419 958843249 998495661 713691120 739333394 84822164 684697497 626934147 923524634 710866303 953939524 355230245 539013171 877179426 908741904 855863508 995787232 543483723 786073829 164073296 414222385 862918542 918596298 154236120 778573759 269716830 485371104 592778482 908046655 347631219 413102501 634781226 949045323 496824418 962649162 62344133 410308057 837490701 864932186 257221486 571616957 897093664 991791700 685256108 890473693 246478963 356691301 597444017 658293604 446646467 602906445 235866103 666693526 808358605 894076682 776947058 827102025 634642871 823407090 380425411 870947834 791749354 794781644 562994872 689879925 342429671 968222794 984735669 999088338 330764895 481343999 896212530 938249538 862013884 937512776 663474054 898996180 110361037 585856174 169737893 360883939 514496979 997333086 890909948 991904785 354626446 557125538 475086429 544252924 286245574 303025724 430442744 861610016 379657822 470595155 200137112 389528537 673516633 890158323 860830426 920077792 213161735 965773079 245483784 297021365 373223231 957081861 376761121 427693365 340424411 750412613 242742829 376557078 308236962 815860733 989642386 991785766 427236356 834957451 253436687 823636695 91662382 388340312 269135184 492509405 136626028 769725541 133221221 552253228 959181215 973192604 972763130 983231042 374378849 527871462 620730129 715462632 804206733 975106736 197697080 669265908 288862107 556946814 305623917 676587345 476268057 825797326 946880079 966851930 935727053 949887523 798178444 895806899 365590965 768292391 578153937 684218228 434155378 582604958 430279374 996332335 927841302 982314887 145304588 765644871 168965172 482823269 855289899 979607214 448704223 508531553 544610110 792301867 991672012 996679099 88382725 152247509 697659790 868198091 175790431 939595865 729741816 933046285 317826627 500906333 716881322 812345203 812189207 942114723 847018968 993204652 729224054 954292493 734004581 994062886 432265536 666138561 577328711 985561720 33686927 264613100 971800783 978685766 350827972 387255198 193869348 884933400 376709859 765663109 250475299 258956713 238310654 645386739 176049392 768431643 351023519 657770137 885745450 923973729 777094092 898856790 221920707 855621549 26211061 176786477 405610585 614572257 757487001 814152285 908660562 994512502 755452471 817658665 668446328 906342255 452169523 550496003 712044351 731946635 129416196 283800842 477830558 489818040 773772503 972451563 162794606 335143960 613101476 739838642 916378116 946842948 406178347 638190246 543275831 805490255 891750686 938753756 891751687 997533955 2866963 302717314 726351160 792247795 437591493 991276397 239238452 403298203 479257523 819254401 168875895 956243429 834100206 890358868 915863010 962033381 776858759 886352185 775625623 836381813 39480071 860085806 960037297 970617498 707138144 939386492 222156992 485522734 446255978 792876751 82995471 740093313 363960562 916395324 474705138 551401205 285845339 666868286 974808986 999883653 432442765 697104281 388127560 759293269 297758080 971785048 534085449 576272136 145612814 714218177 343407564 372110467 599061909 908624256 823635213 913870306 606586748 751464855 341746101 478572615 255610834 403247429 464956300 835648013 600294130 664272081 120281100 623450421 887328443 908403814 271879095 662860008 913579205 923551105 716933701 825270705 243799763 518063820 177716674 228759615 440703717 577039466 702873705 999054735 451188748 876641536 608716697 687112481 456139916 893387217 604530406 762330294 899226254 935551522 933695377 966618985 267199931 580551418 415078655 649789080 914086400 974745615 749237167 978456207 107473794 229633203 337373221 595591887 437489202 505433311 466034876 503188856 308474403 366253884 799487996 955012847 137338013 586660589 825508364 981445496 925240813 999620557 501450157 625605071 315036123 406927117 584531320 712672147 636625008 962543154 534907784 917526671 531110227 653083341 688989635 852644442 731396188 979346377 923592427 934754486 449934080 737184828 633794225 883218036 805234407 874895269 119784268 987947195 702606429 711587233 615006300 819165296 175276440 673402531 863765920 964202570 210902889 567641667 255911371 380068369 858684083 994352068 243231193 731110203 246660724 576283349 516935531 706246249 872871568 902673997 415171654 630603814 485369930 833609236 766667413 868888794 381370370 682021507 592494156 700642073 17962483 300354735 63190451 569032426 819763768 830272158 31677642 642002119 914457521 970041613 696710464 975177272 680165869 918771484 381943364 868109130 796620708 998140360 684308998 710616823 797813342 887202433 961886508 982826051 223326476 490085681 206072285 422382946 319814746 375521562 213750855 548071487 196114196 260900620 180933443 422118717 149235146 858078930 571179323 703596913 211386767 715252953 921301264 986763059 810954090 854401266 610612877 660147765 63448447 319219311 614218472 906984665 45592224 831121049 635665399 894007017 794371769 837589488 241605071 816810150 182514724 594840554 832949067 941575922 539790840 750071193 660886850 809895773 675689280 711837449 818688854 959283484 979150946 979203811 414898085 480777040 351645062 353432462 843587314 958626202 317774688 865525512 355708899 708691812 611337360 820049318 134227531 759801989 276510926 540127947 28570828 52876662 576932538 841700468 490916602 824664941 792153182 863775296 53850854 424160798 504981616 636657728 26587256 584016370 617123359 812514447 659758468 723131172 831351434 962022657 587861599 591120310 531081040 880952612 538713911 642102948 492069751 979896302 992907179 998212999 249291337 859613940 800222544 977713498 905828523 957156573 227072835 289196309 963026713 985532454 21628731 446023474 406816877 708890432 53892218 117825664 84885808 449240521 815258278 875546129 41459743 413003591 418283989 729544834 106269016 751429659 244614016 862114599 551609362 636848043 401684906 470524950 214730570 742693156 699527099 945093531 162961892 751842916 539261177 732964424 518969456 627530209 24730176 192006109 363254859 650377048 363342402 514588481 230638614 376330634 355483486 508212539 588540400 753279250 905711262 931934623 934953344 965582766 352995859 482561759 731893807 986182042 803384393 964923858 923795197 965989244 52134201 267442770 846195192 929526905 282633522 427535708 131062873 794300198 712913226 968333201 430887906 803674862 9785592 179975991 774007725 912088929 842975529 925922689 658011544 702465752 617993076 646624423 923914194 967379222 579475661 598141717 183322024 637220334 746060182 848627175 145808874 541735770 27514316 506789266 21801394 197594473 850837821 951251822 149923046 371354907 712875648 754861245 608546278 820345643 915270567 934124065 669899819 910586673 59710664 842882742 174494407 423079377 797130866 993701317 285334672 316337266 224193394 741610927 982290824 994652130 285526509 436758729 980343475 992025718 727236109 876245783 662929787 749862107 643869928 964641522 426077741 531840186 735269480 910499238 832007905 956704029 668407526 691157262 6033197 712106232 859340151 997912649 709436335 944651719 992345128 999064609 229768752 713174543 640155178 660276579 48012357 56234709 60338297 356755918 416247643 513857214 483426901 855875855 706104342 913963076 54131577 576695989 318327255 861108829 538118609 758536075 473735610 987798285 936559602 956167441 844690400 984729687 660540916 804176464 682088148 740955130 148406247 531359816 322796962 718807436 994310839 995698587 239706998 269766262 580621185 994198610 955981896 972821137 175021364 508134033 44527621 437221927 87084999 892522339 507888779 658919974 415128036 478505572 245558845 794799141 64571219 95192538 970842784 979147487 305996466 396930714 523187098 663123110 266856507 776771316 841999741 936232138 98667027 759721308 986785063 987010079 843252186 896093470 603525356 616245760 744218391 954273375 153591809 539793772 748650143 988182972 885366104 950410168 59193543 77027214 687708281 728623884 603510163 686231707 80194755 923371450 811728998 858871998 679520394 860192922 557092734 777830819 505152120 765201637 615013960 829294540 549952083 947776383 502976907 722818483 344453511 960293975 383068046 600431923 299493799 971737956 24289662 310565729 221058905 910246919 322030741 519511275 452727248 731069030 16761251 53744958 216947644 950168663 659471317 948179653 518264669 816688990 964888099 968085827 30031785 211005782 786993020 911667255 858012113 897516047 499818768 617282722 960554333 986534077 815528755 915614543 697167208 954843325 70445123 894137227 862210222 927235896 676326538 772465156 388954396 766383324 899837 570309177 729828651 766524761 513057450 518162552 803650368 902512503 699971596 969584078 64583959 501464081 638729577 654992544 719664738 779235772 118395269 784687167 111665841 610081588 632396066 889547809 376993774 541438906 545315936 588002538 658570235 806616954 470947420 751018580 104494299 363000329 522054521 644356016 280558416 282524417 549221175 894393112 137076708 193797647 927644603 955639894 894852771 985567331 705214419 859275805 290651584 553659089 401458548 635829056 281862974 698485715 307342858 974805834 355078986 798996252 701408881 927030135 832266925 990772279 629098981 870577590 221820247 391914684 837905666 866780227 528651312 676873561 507649101 633356308 114134364 305714805 964547683 978290608 696227408 904082521 565574294 957704444 236783141 908503115 587856763 634070776 356063057 969572925 535228687 854687280 438080983 586087891 823118878 915649865 190923049 767338759 76759381 299324871 645353140 728954756 192101554 952686130 828086476 888265620 199556380 281927167 916638984 963906471 587532954 868105007 114085873 621785170 393617777 943666302 604914927 685439339 824717475 929238979 169256398 846322487 909793052 917697886 271809805 929944961 446133104 949919115 541565568 949409008 136958575 203963359 353005078 413471134 306650651 523998967 75176607 356362536 205071294 506466109 845992287 903219967 9198430 784998664 957285093 968953256 23244113 110066865 936025137 961544397 389139599 987339486 407378703 573978001 643614447 734329775 24417563 641262034 963458194 990407122 92105278 411407154 503462253 966938912 689123728 881045607 823477082 996830139 382876748 637531196 690413198 927960411 735351662 964459580 288135338 524743617 6858340 836161742 365393593 668918398 759178023 956493117 581774595 682658154 147605456 294985156 292774484 692914623 193096597 278872079 595989450 989280739 976649274 983446012 136138523 284505939 689833492 871013112 83991152 387481114 648904132 885430397 478037764 852988756 572108590 802090660 379544236 571751145 389328139 725720910 881427297 894905200 527895776 803983886 310213510 926326095 47042450 538164378 611008142 721996856 102951231 617647139 457546952 735983341 467968972 589339439 426572087 910845708 894778125 916241041 165427355 589265113 40473835 515751195 606145536 718762330 851104479 956478812 258437915 628518889 884981647 904257196 317520579 467950887 170005648 221284763 368038889 447310464 223183790 711283935 739494057 837576600 710581244 910188960 193028918 628170160 106218523 261973801 308146523 323048900 54967871 420387188 231543160 282847144 882080783 892126634 104059507 780355927 540787043 910177170 98493305 462847922 75298016 706337522 719771460 727750152 202149530 433691499 995185553 996504604 269626267 897383548 390297144 448367843 631048751 863005630 50526270 369438397 875016862 984131628 776848605 819692501 263120131 348316064 965082779 998759583 391016838 570201439 131580015 378597899 730798800 867663207 841162216 885177999 164402847 760111965 403688191 840846943 653134123 747928187 967603141 967990681 506926285 961101338 78528702 107689521 538476830 707376914 681753946 973705370 462746730 582879500 868723227 878152628 577923933 705219520 125958242 379690484 183894950 479736084 777336130 796102371 424344034 781725254 33159835 841340784 280628682 688738841 243414864 512100478 802031644 810382941 338661815 901258641 284192739 315809108 806595540 956194757 422504231 637056157 186275569 557334674 847870561 894219912 233186304 268618519 375957320 452218791 146664256 580724656 7129740 827008861 905814307 968507482 942928207 988028762 166029578 667704250 382620255 742044114 784859998 894837649 716746585 982061939 276567938 739760223 29725523 702363296 6399781 402603900 475076800 511962320 691346220 820021911 92381252 818444132 874872269 916549227 757906652 935967067 884942495 995997635 904875741 934752825 535766227 675091303 153926108 499312978 838666935 943110125 853947458 869951101 596443214 717300922 108996933 354020602 628330137 672831080 245423087 470818364 732414014 748035842 176686636 218878963 506564589 986182069 542234385 910344184 184122734 737063376 987852334 995006952 791593793 819782163 26077658 664138857 722517834 857908875 297727104 339170195 840447373 968767330 303289100 952632354 561571534 855593559 656930690 846032332 629696048 954805411 977713204 990300131 291814631 651029132 261726104 312471735 183551619 256359163 619751030 809005191 284664891 897984079 33668300 475216485 906550618 981998157 98257303 543367977 939052984 978345123 570235761 618596148 593822071 744036607 242899296 573264408 856155162 932792237 967601448 999742856 718143441 804102239 887923299 967183970 463211054 480867345 362843184 988845413 569599585 817854481 318392302 478302519 525759670 881561296 443712584 888833311 733505078 846684292 802432658 951839414 311059712 953515757 554204026 846282182 500133859 503928644 742998944 874843551 464434687 576493241 504923695 658836182 974596071 981131217 206601918 382210689 933357975 955876427 65831122 423068283 282927836 999526183 797959677 996460530 737449607 987015649 437981963 899682688 882775813 995128157 842079578 931301779 786898926 913034915 477850581 524223721 447625039 714469643 991307789 997995647 418996823 704157223 999423790 999891371 273394697 659369006 187946621 248359505 742400722 915125810 209668229 961693768 482543045 815026297 798489473 805414047 417838578 462006105 72310265 511922308 143485397 770439827 221347733 416048005 857894168 967423374 103238126 506759914 865775566 967039670 877644518 985015324 108950403 785519671 501427352 994264240 340048039 720237404 494851351 658495368 624263972 636592404 72700703 695418223 298597454 665094190 25596666 989489365 460706404 750060440 850255820 942912655 690930068 901777124 638094012 683053633 862861830 998014384 5146873 907556472 10992825 609549788 689661412 956523635 413982195 752388611 264759144 961309101 753641130 812923165 15961299 869737765 509242509 833969244 718287563 950843638 175891338 784189847 347752439 951170486 504122151 592582909 781754766 909731369 9206278 279302203 400768520 979076058 13896346 458339090 818727477 832450678 56448590 124136555 862275566 907048946 559078159 700017253 334620194 732681624 207429806 211264567 189975102 339321714 398416971 794145539 334270067 922996606 223535670 715107129 929328760 976402473 857026132 943327424 937306303 989807123 66990626 431083758 614226070 705282523 190748901 695699171 240747649 952389733 170829964 176364975 665487776 748651202 108839399 469962013 283909975 522391803 914359880 946501473 164758876 924431025 562560110 860233932 772731486 796811097 250808382 611349205 766811309 890848581 529127651 905469090 640042850 765708926 618182771 914700115 370509813 614456349 541741392 878979450 814804994 877180397 595654105 773529222 239628746 710186280 480236461 584536767 907461769 927052726 866192735 898125553 638251763 932045066 193385084 801823387 581776339 795922160 417530936 596489313 642335262 940870667 925103631 958069955 400560376 897010061 880614054 973885138 651428217 666630227 780912457 804868872 89332669 387193191 390768213 812549219 531897786 921962043 852634967 921271789 333442748 520699731 370762649 719659747 763205667 867045604 236979202 340958129 615091453 916989896 956833648 971243703 569061278 988603084 872161208 972561727 419013181 944716834 43566588 43760192 58408569 730001929 825185856 839161713 23332682 275438909 498943665 649228119 962707934 970369308 80204221 721979988 340133444 699549393 141007173 619804343 318873645 692463234 596302447 780536652 94880252 400346001 421004722 679959546 654207475 854248728 657386426 738142389 31330312 541975381 645368489 748777196 381610356 536931787 322853712 525035815 483107636 719698395 419878453 917604775 108264933 621944783 826823798 903280994 915128526 990517522 625714555 799607235 453115827 797369403 517611080 863587866 666154895 905633282 231752621 867518226 20666697 106450831 977398219 978879060 311164402 882741789 108163570 771924255 296863703 818438038 688450495 793903606 176360990 660253252 3946294 703172068 353813886 540907705 939616068 941848638 122009583 786130498 178979686 187605952 956953110 978175459 814546747 942992212 329665783 835166884 950547596 967440569 437350043 565507437 509953737 981241656 143396231 681995537 451543685 559819173 963691858 975514424 841215072 954808594 552465379 806586442 372889067 974186305 276595856 981528916 920778224 923933662 409503790 886216123 327629602 552182716 823651302 861107127 484102812 927629388 523675087 705344781 693283331 728755511 257252462 941499007 544096971 904886189 415336593 831588090 962576645 967944220 199346487 284494514 512054316 620510404 655614781 762739289 584096936 907582063 365204320 887991916 928173482 991374695 46488649 221484921 802898325 819733225 699283856 885380119 413879900 997608349 854514636 976106137 906196226 974885704 300880604 682160386 2412307 167069656 814202048 904386297 385955674 990424566 93069283 727380531 292479371 792577534 993644568 994929562 72102759 301643153 599951591 790331417 510526544 751231829 806458820 897745794 220705142 950370955 220266615 537206318 610940533 794086035 209003589 499141488 785485392 870350668 637167843 844346784 313279890 586835254 986915037 991614321 763208994 776204088 88560297 188118925 281182303 825342701 310594297 693653585 296048730 457581092 672093521 909886255 255019461 836439387 954566234 966193381 46924455 768082659 368932329 834153596 871294745 892087060 749726693 891551021 520007315 571874863 329648623 745144098 43342606 137203183 923922277 956451088 144985913 799775341 757174479 776230249 84774104 866842277 963378852 983479801 881782216 996960526 895846963 982820292 76220609 154711375 995902996 998304070 967307928 993835467 425292477 806767840 544553728 838234119 104166470 658615593 269910401 506884070 858479954 907018099 813498218 951172036 688946206 767028115 683044615 778933804 472961129 933624730 684492887 849290872 311771345 912324123 174159867 303019885 273182168 855458007 215065542 913019741 895798761 900831461 471195596 610717635 832017214 846196129 337873466 861734395 577833071 602122957 567994774 822415418 317612917 512480974 274912793 389210444 872929453 987502096 103016418 686529151 631343839 833592802 367137546 506166220 438190001 590915350 220587503 873964696 224183186 663200049 617063385 828515377 445980437 730879246 62220602 726861549 579824820 921316048 20189584 813521067 368616601 750008096 385383758 822718440 18206435 464274406 825904716 833423934 145166998 395353202 381372984 697545786 417759988 673250351 541844314 747195128 865753442 986077925 921894488 995194920 769857330 870831631 818978797 861319423 918364857 982809049 882698247 906734932 107562853 641907672 564805676 918783665 580590634 753972281 884593008 894218858 354954669 383894061 865804175 943945252 539304383 765388685 600769531 918281359 748612350 989464213 843111992 936840021 233639680 400052561 374580055 688590454 567397857 588847546 607077342 941239145 473595159 930347049 950590807 991585220 838262714 988782392 215538961 450856481 697821770 720964110 70168682 985782396 933556914 951103251 174091769 599400428 245508498 824044007 340344896 358502657 788523247 797411350 578303146 846378124 950242684 984588411 735656169 797100635 774989679 850708223 913929358 947956756 436490352 893944459 859591139 962633996 613852306 754689337 334953898 858911913 888374460 889002183 141775371 613309014 371257444 800233509 798993454 997540735 687899957 734771108 479271352 789214368 735126649 871267379 337448234 618512159 645030789 914788598 293428767 726831582 421273628 653536553 579698158 835844056 817485353 894160314 862868750 980789005 885344650 999890843 760806806 829250185 986587362 988319632 794643948 963322166 397458967 408188697 546035362 873594519 524835835 662353712 627611885 726665468 750795911 935876821 732699651 798703349 737352309 912566372 49667126 676684654 557788789 701990620 814340043 861320840 518567830 650473231 835358588 919621531 552745428 791925285 590263273 862612346 730130217 878453468 510086302 717956856 941194087 983254143 568363941 924580617 528186376 827637507 416861612 927144984 182097379 324075875 938233791 943927859 214934203 526918631 165073191 581802936 191418502 931738720 377370286 672129661 518379414 707222908 457769188 938149652 242974901 546612746 799636965 818074796 240010360 461797760 349300579 485165738 348253898 914452575 573254153 588622754 749306942 766509878 476153331 564739030 971151663 977908575 913810237 914363407 245209047 470280126 80190713 890430272 797255082 981739054 870930763 930735178 475990118 930701962 769056563 974904133 117426479 988452093 443164055 619186387 691510462 766143439 351051781 956417117 156910871 984584703 321022171 859335421 385239359 536297006 549760511 943544059 803972839 926242941 261724648 629806370 780006841 928034540 171144796 555456047 282580139 454551506 650846662 803126550 902217254 922244647 871923941 879407417 252456631 968487961 766287480 954902654 889350734 971640508 910676528 993266556 839440592 875280532 309660742 440076905 817286878 924326407 910667011 969578570 937193008 976231946 362680446 446275179 421988250 849504000 404615434 816166366 902807577 979149121 269087497 661503492 641186444 982274695 347480124 359590906 328790057 667006765 887703156 959048016 912737536 958195175 45989137 632392168 730953439 996121564 140205943 684046962 451668264 621224980 191347751 323210880 866602774 979004479 200017061 834144373 738044629 807172547 761965725 841820563 844478437 934567083 863676064 921128890 202432764 879870653 562162410 741033000 59342194 695144003 181126925 527113601 29512252 413647211 710792340 807723381 550247309 558329450 135466232 447082717 251494606 601785707 391383233 456447677 279479781 579163506 549900899 803627555 455222305 545474778 897749523 991607200 319814305 652180101 930912756 982400601 111269148 701944497 618148921 743563006 365818254 483357141 563358206 831411578 115710925 912890930 197385677 575896017 424509763 430307860 120114691 138905856 502413190 515092583 67220767 905436898 750481556 865160962 680997527 958179806 555815219 950172285 267918925 546722318 527156218 714927206 77759671 962902972 228521979 252917113 61368995 768982674 821937529 825963052 236512794 594807001 271606920 526341905 53323122 698729988 725512663 888694274 709634761 952130045 460385134 897834974 304953060 836041306 524705153 536967506 354717364 378554159 960408418 969895774 878302208 956317205 864305772 903219870 763209071 770740393 899453502 942538074 365602533 877891098 1588130 707174645 451119018 748209634 285902665 884959077 717038274 845272414 282543328 672878984 599801929 986839485 247170967 907470183 506948435 954027864 665840555 682795328 994606327 996073554 252151934 633702061 712107934 940149105 68089694 328149670 230635080 483073881 175096317 646816677 544732401 998426817 831428003 915568232 471251793 958995833 356726274 457813146 717523174 987993429 851000123 980459054 455259940 616895466 568792584 661709856 260645389 768776544 804960126 970142610 61807605 193666378 3446249 531016793 132010017 556116577 308319248 890512387 744014240 981920973 299785930 672393222 829008782 919494184 894962203 895726419 854693842 903897671 4363486 511250728 718314875 749409092 111491771 693712058 89384603 286081338 52655074 625148263 560565704 920852863 589094937 788204781 288976509 331116459 491213121 928122013 943401062 944328752 212930217 392975188 258414699 565872407 188616905 266514113 50683439 616214917 217259545 794587456 706173724 977075774 576181135 795684937 787444965 910426099 543415573 657755292 15742602 967279782 776878581 798951948 404779891 928956111 346961003 462488240 255336746 456446444 769225123 928383746 960690503 982477576 337673680 348254237 58357607 634133052 248853195 322316930 595983652 620180831 983276156 985072852 160886125 937524284 633956959 899426119 355168445 535388302 815988982 825758309 179379690 683897301 814790781 966224899 679757474 894348373 314055510 453376499 409050547 693074078 701480740 727337014 29581079 324786333 553154836 896887680 218640411 413381532 210058801 327886428 869032432 913950936 660585500 976924027 481098876 929618697 711143272 981031988 672215022 919895356 288545053 325436645 13717437 885109691 777395463 905838764 153369198 457140047 193311754 344573054 683059536 901366774 51706711 802248092 767053574 835895502 149483452 778204400 877820099 926021789 369307177 624547640 418364532 832021950 194449192 908022633 908277601 958070978 573624498 620531039 22358282 39821725 420342022 543016933 132932444 821212454 585261373 634917893 453426516 871939075 242231036 619751276 364273733 762792910 229412121 256500945 612183490 938243969 156133062 654340767 172497325 744116049 916955133 984413166 199193454 253449718 755262641 804412217 448533041 922662886 704246137 933767365 171795010 761644798 297715389 987651805 879483652 939283165 291406652 961164555 888153930 915452152 698668397 809030200 63558185 153386436 210701224 529621049 731453525 881868995 809711972 825052372 388899845 438998310 948641719 976116983 858984221 874022124 549944476 888476986 800172723 979521747 219043804 479127216 648243936 873592479 915115939 935459845 356064337 644598309 81025687 714810711 687762273 812663463 743064572 891951380 851640966 996663507 673149788 782436330 481549682 873098467 598694092 620001046 935513574 949171130 711323359 927463746 815847865 884482814 963539116 980123895 150210214 466557165 360669728 822421933 385288495 441734495 274374833 705353233 407287901 466351969 88961064 683206479 919215710 979692436 789211598 829110555 406001525 529834847 492501174 801558943 553050225 718148488 356138050 551255262 515663485 547201399 168010303 429109689 891657584 965549107 613991541 998353327 462864989 895248654 36361677 883289138 622051231 858942017 573574077 701968653 503806607 905685770 353426538 510344749 77421388 808577985 587633440 951682874 867508435 898534593 939439057 982079864 156326336 830564327 632269853 774420241 986181737 992238109 284374752 730423756 45300949 71950478 266695138 467565654 915087406 978068863 310193948 676835166 276927612 859682126 846405634 901332341 438026673 744012111 411416134 661858168 938473601 965095718 971925698 985643334 207093998 668441156 847853844 888080238 771438929 794285572 764337310 826748549 540932818 997900345 479170585 657869559 384216436 395190211 173802036 447043442 673002420 961304497 879310068 961493401 206872124 343641644 837841489 869459754 117952408 994625155 695969384 897946827 249897404 471086736 71486807 342592343 834276441 913458362 331522212 493373982 747753424 863674884 52530234 989613866 109041504 234066465 174209691 335049845 910054428 946963258 14914875 862226288 452106124 593256449 589243027 661200739 637548446 654602809 813405900 894903181 19490976 455967410 101205249 941505974 430134132 520606541 489851604 889789006 50212164 423558104 66327267 237933673 191412336 353785312 898399045 956631942 449627295 931206649 516243249 959359636 810878030 936626246 269246833 333839541 762440588 916636990 690614432 817879405 50253532 618593814 762576689 886098676 197622059 638264885 943427757 967093921 451185785 772788418 843036974 895265984 14428379 95008147 960452966 994973732 100660471 356158054 642873066 658222809 647413677 742128086 480873110 697224003 63873063 435386128 248291058 491635901 767804416 770222131 769356694 857215911 451376259 630839555 569448046 713511587 107062525 262080732 101798886 604997783 675978563 720880960 606752379 799491649 281462647 786084508 548138265 593228838 204742545 511030901 566624766 954729079 939483418 996577217 185412894 727489823 671413155 952144652 988486015 990111184 615231622 929434529 292424271 596182392 721847262 913929985 922949969 927582805 143648952 655368793 563228953 768479744 910336942 991871232 992584390 997514021 643613122 835868373 27947149 942240220 459325196 999888045 905804032 981121805 756279123 806904198 205324425 262693505 22574640 303345943 665775476 913124199 17146218 320222975 601757066 744854935 531671308 692858352 889468112 956330553 334617603 635737858 56244605 415968553 880814078 982777173 474563558 527213577 189812906 457221417 818057258 946666674 751090239 953538439 956481709 987309656 422918571 635169212 943167946 973435012 847417940 961096329 957242975 976809121 980959319 986230910 932630279 987932157 383402094 778879014 151884765 586420435 149073939 859500916 453608518 690852118 281639136 906135982 696020605 886691111 76791424 926999386 763179289 831747618 372472038 584121304 367834211 634877945 871821992 998358478 573363085 843864597 762961201 876982282 937848686 972964946 385275474 429763413 471321990 675562910 164170293 469566480 838856888 853750031 836686959 868167718 832401992 873468084 45042338 679224648 653490597 909842475 178661205 266670221 224060767 412871894 845874043 965495171 78566196 953980876 262575714 326823384 872100754 896191805 373500173 472412317 919259625 987472166 791226486 980062937 900722261 917350972 589104259 808211171 266444581 925654583 295406652 975702923 54669787 849695180 99727691 636317875 639203389 801069749 283466601 307027442 131107947 554351084 493721097 521752532 436880755 897234037 210539996 923259543 763914310 843426230 698820885 817065272 410060873 719450864 902062052 909539396 61507018 960698645 198630157 991603576 155591725 602451743 56626723 579561922 546106404 642741278 752065571 958070277 867568463 951651096 688765285 809295511 586825729 647119385 294945012 542783094 510910795 821721017 401131809 475857614 887442933 966479025 375639016 688639402 755010098 971531514 853279796 964628952 159837809 202775472 933007622 971139410 140855053 697775578 93855711 619959640 398369724 436095932 506609140 822981038 922434921 989251820 370685640 562009668 190867901 555835989 952419414 995215665 134676808 958763295 845327121 860060761 646821508 880028446 734890752 920635485 603284663 782523866 956711634 958445514 182175783 962838704 83249521 547258797 414779501 735692532 203520385 454905373 618206003 979001541 418204167 762403491 433814340 666350616 459723412 618283356 645971946 761850208 632381879 969847637 796173712 964252578 924396333 947174194 817633970 855343437 490981770 766708277 194009509 342027879 459342456 828754383 72997081 424451605 848152290 914704040 334355363 355135527 370913174 923073101 704571770 980580831 71993546 362047070 155285680 808238979 492162617 714835135 488083880 604272058 733835702 950920501 41577680 197444029 569907007 571864035 423142117 866534071 972222561 993528268 295683684 547210152 394785346 754281877 745924575 910439838 25420716 523458439 756336450 952406612 565295830 788568718 60499429 702018897 920774755 992526496 690437699 800416456 289192392 537774522 688567950 978616252 400756988 863453693 651110609 708596504 615091020 809615846 916021130 934338862 197883593 432792886 306399904 366843197 370167403 398253459 934077979 999873650 78362583 503875540 864348867 903258371 851911853 941426495 710041792 936736844 65437003 714622761 410006316 537584213 326815983 951795443 58777814 771469312 780014634 864190367 81411575 199725679 678051885 791847521 691434220 824331717 865120344 883980029 508671094 642629280 160953131 537557786 864437602 964070844 983631581 987258509 113796989 435341236 288587799 858319784 661702627 851564096 867669212 944065874 796583560 971514957 918281725 958392124 115222163 269083200 156244210 526688304 985137394 997338451 820361892 933319758 327580624 631710460 895012168 977945473 709606269 987824893 757644394 875131191 21050756 482437793 652792398 847891844 58612628 221688606 958835094 977016337 185302832 382457218 668635379 756533095 690784897 838308000 804313160 894278576 609913501 741626162 749101312 936276589 157116445 796190893 504197981 851168505 22829967 703045102 922983267 937631338 275278886 691123322 392016153 540414176 93371046 187398018 811825546 946899061 43727596 397208014 888900972 991004894 880632976 949106727 572111504 800389905 492262522 606620023 891347752 920993535 979044263 982195626 988795560 997002062 700017150 732517826 705609968 857470179 517298353 933317601 513016742 862278951 334092762 908589890 292639405 910285433 811643366 986091385 336668154 347410282 627487781 727849119 560054720 871746961 280288355 755317424 179922651 896159627 929206016 974034967 254839202 745524869 76513676 961839396 923595473 999615393 700908056 732593008 506905308 518806169 719766921 724830732 798758375 834083898 233081954 951361102 611689038 708078897 13263615 600463337 180734830 265327492 256082568 659220484 197565806 639609537 905709849 975828847 179159296 631301510 709307280 868433706 787453166 901601068 678512512 782640901 311122450 973169268 221577443 278299235 75866739 293193729 272882817 722204436 886376515 957334367 55876896 559316465 730838837 964084358 953625110 994396999 215332832 638183433 938407870 942957257 413026529 604296563 122271624 165118549 230039519 289398885 155056062 718646934 236726770 568891177 822286897 883031337 228992031 803350285 621851189 681069600 545256017 788549320 47274231 823382283 286649321 568118365 366561222 443257921 769040064 946450697 131667045 225645417 881410475 881786959 543265124 788924245 443435208 742743020 998093838 998987838 278766625 935742639 218705124 894269000 249631520 375087077 70944301 695569186 333630010 551758054 63960215 683676139 196283840 774150401 705848441 970388125 55330546 940993815 694797587 835958528 200874130 449797314 151270751 522465706 962073796 981371975 835872152 911179139 150658712 239608884 99662690 871542436 899621142 911135393 169315029 939353154 852284495 910320221 648122016 905025246 993718494 998111578 646156700 953586462 27464691 46325612 695242428 818883638 775923528 839123596 473637482 615615571 814310493 836368251 850579040 982429412 661362110 681594849 842157202 942034578 772706690 930459012 368956543 976523969 961345158 985317118 218842098 493092889 888686380 936731023 651999206 769240176 917759915 923195259 389441008 643877650 983881717 988374789 543037072 938647256 151544780 233235498 288830069 884950738 788376766 846298294 440846762 612644299 573454631 693271267 34835937 440986298 755269589 878557312 68682606 277510670 893292417 893878993 446177040 549413716 71473918 218569407 220103871 881190997 141944224 818454534 83091712 319853311 246656494 968397641 645949810 698220484 887488521 985504055 297519427 412219186 193764326 436249197 853776711 990697228 548015345 572940258 199936941 634412920 750856318 804233536 272607116 506439924 273737194 840451991 549223044 705246120 512541486 903619954 59264177 476382279 878899637 994277710 129343342 743857419 625693159 699761808 905790538 986206198 473995607 878974670 295260718 589307764 544125601 748256904 969715307 996383103 159694548 686431918 607723375 657285552 378766459 386173757 367316482 634270737 452061377 926535624 37411648 81753427 533466919 992474801 789641918 995323716 480358217 902495204 745581500 870344651 854084588 993153716 504476011 967271193 656069681 867792864 864338142 957603395 947825409 958252838 344034446 720774669 117611845 389619251 125893658 373579172 243772551 527610095 782963152 883114128 827211678 858254997 946518829 963845051 919685958 934293005 877899786 959417805 816510036 958728146 819530859 911174210 672584749 772422913 486883385 866246439 130442922 742805678 643874870 931889969 647821688 896349753 328566094 966876105 57055843 551762272 729861906 996628750 314112447 705750738 277525330 802760079 823111467 840394632 471476697 842813291 55993409 381528481 918544394 933441002 272142878 895208292 443749489 835420247 527591560 646592825 636384655 985073645 409582182 598575494 641285414 915237590 88958000 735161096 455394979 577911274 76973442 244252565 470104829 471271852 723306821 989170250 957508491 966394872 805224613 979388047 587181732 729065417 260785021 754315654 80331951 794097752 478868307 673271442 89022317 344417977 239474259 906245014 8759281 778347391 253858676 512645000 13500341 115056014 629833516 921161950 461908314 475908980 705596642 837467008 669004253 725448493 632042586 968056689 835484164 866874612 223680601 377809633 602286417 654243814 26979679 126963950 661004132 968478133 813913196 880336223 798552472 933538276 429505674 747133602 283848022 362752640 248543288 824093496 254401346 362156342 742587694 953126533 692349694 930706967 300838512 326346300 777929698 805952126 692401259 712647052 896268889 989896682 442451840 659505519 781411919 794288515 357731350 726447145 128836852 766401253 170414334 876947542 919056507 922327411 735597386 835155951 370770141 573233224 240973268 417085618 80517207 118168143 313780251 974981925 834197518 973653938 740531163 947244193 320256388 475891420 363937988 611562230 731154858 753797153 495166345 975112858 219743501 311068152 628442199 697175542 159218670 783091640 423213660 563936492 635798544 964527398 407722059 441052927 431191890 654930400 142516001 351511242 632203509 684880301 655232736 980158103 45293620 951559305 29322824 240739852 123190366 271016244 322808414 494488380 5414534 525013171 808786062 849372242 352572693 660995633 294248904 501784694 419706645 541522067 311475358 923264456 404098961 585805254 571676830 589807927 521541131 579902451 198869635 863460857 470292226 962930984 966385961 983800890 497748069 702861077 653679808 687458498 99286710 822436425 560855082 611216505 105159997 757268562 116543177 729213119 179182118 837618404 917929178 995937246 704286698 760127248 969255626 993681260 54840475 458239952 936574555 965289223 228781998 780113800 871076468 982163543 777586935 782254963 318266796 527151843 350964217 781393584 689891436 796826966 281877972 695253964 937976753 964062549 510229534 938505029 399173067 825286109 294350746 529149458 400053417 588027548 793727190 929470279 532724527 706502621 693078059 785481986 411284098 507974302 93376883 914649765 91836162 947154291 188651824 736907731 254799598 861105095 15865270 932156160 467543895 799790366 966238462 977853746 289670787 839325918 652642607 711398907 4692436 292241282 654315576 793917697 295171514 296205642 362063766 741762354 237774065 431613831 459287855 513474377 216637742 407938545 190973885 779000523 738683711 783685998 93181019 964531644 382633525 560449541 602794746 822767944 467203529 695051006 236357441 914894266 293921830 725996768 524697906 581353010 844300761 916082853 32871689 988377300 616740725 950363101 604447467 731682690 157707610 566047665 239828936 658948475 124846812 738900677 789414480 846491344 155604295 275945154 605493491 616176138 455932489 968536490 256081805 558296758 659009933 704883900 476779550 871998197 13247434 778924401 742793794 901538955 610766484 942059311 680174683 735641997 681865487 942476110 926131173 948672286 308780566 953647716 319426634 540224779 370263471 607848909 706204250 860056752 221237131 613207123 672189935 701477352 230931197 561796804 568415633 586323103 334376113 539749300 259743758 828256347 154573096 273338784 68461558 516730074 832211368 998787511 559306410 796206018 34658891 989292721 852034566 878627888 234362980 413102746 150871333 552955908 914894195 980379660 288433195 675981866 413306513 653524456 112484676 579814308 817450601 947363192 515051800 880794553 369445347 625158347 711208470 918290182 53699515 363134540 724405013 765365754 275330085 463898350 551289170 978509375 433121656 570589951 635480483 643034170 494355692 964943012 27162307 805815030 85786201 602028015 500717027 541827970 77656959 611271062 582871637 998760633 430790243 517133491 978528756 979958699 852172663 977818848 26744677 638003025 662634707 813813263 53744751 278525756 652670280 904062010 436581826 713643050 557319607 826620747 114173659 507437676 975758913 979154049 130250620 299649987 925252178 964430925 269146250 720978489 127303181 945066444 351761835 409325237 84450254 244348514 938721364 946834888 660694713 928763884 715818102 753218846 720856791 802386366 662610917 724902036 945347300 962937276 999413537 999789046 57476280 873808627 228765109 811097616 185350671 599144747 253175226 265636286 810448070 827558399 87830957 455997648 614038132 677606032 873194039 962266090 686288918 730930290 716080175 725723637 802896755 820171517 951950684 978137728 517002822 553519995 776950444 778963718 37832093 809130761 699299439 911589294 516431678 715306434 345003504 814107217 531516362 717622672 184966318 213444175 119948491 312841434 802147569 853178408 203859687 640911154 318687509 580150434 75008142 664037836 65373010 686483167 305055185 617926061 895331258 900597033 533871037 789941948 28182377 79271541 126136743 965258370 576953060 889952189 282511981 310134965 893426158 950991880 681612383 910735680 507313661 583741810 51491580 587899879 507230801 569624299 49604823 754441481 948233044 949798382 818474337 892051219 675697654 838696226 261113490 550729392 255849133 851940392 274031676 462414428 55906533 888922077 165275591 397848324 628034123 843511926 518401649 961457133 990594120 996642048 567762591 602271624 643573967 837093094 838731465 928052914 948187412 995413565 582105534 962002585 584284831 753708532 30871581 643302729 866840967 982385357 638990222 709028330 578880429 631400634 222624179 354608895 418793012 567406050 724115032 771823943 532608309 993817323 506011476 755350898 322526230 553790530 277284229 565085314 754517896 890312361 221405613 587659445 382555256 532492637 206415523 214367537 76986761 775281217 120470409 828189989 917607259 987741440 237497242 438004903 322134142 754353342 542770308 820844917 715359988 756978548 419311473 623432377 956094836 961367397 299397382 705259153 845974002 961052309 68370742 596620820 711267791 983416118 169205330 953182166 632763955 643889178 722651709 811045657 909435073 986633539 372455389 656368289 368876223 961002309 308089481 702436357 623941159 684650871 175485025 401424156 116854442 674972205 928720358 990668719 332481004 797823361 923491101 993630363 398160822 903044454 991509105 995663462 593116704 769372094 457907409 464003733 677716242 965302820 350792114 947980772 621257354 901237872 912108632 980431539 807812275 940318055 992426242 993190074 926019932 963782321 608935740 788731914 14918047 736408926 740191351 937938146 131692870 894244082 513698692 874677499 256100134 856662009 106967874 900390137 714356124 715576898 500752046 724712014 171874389 799257151 858679393 989515213 426713691 437823748 50042354 178978222 826751347 915968211 420469572 596651165 482816474 908420287 33135007 146560244 189501402 207040273 344715354 612613916 408125148 994648768 762803385 837817167 816002329 847297058 784165140 792900263 64780401 894572047 127967813 475816340 496098794 773493825 216034484 960586661 219572502 444226140 213035600 759332300 971947306 989652462 142386469 252516384 483441064 539980607 3704815 708645582 620715747 896231909 147973429 593437515 638943698 947778362 309857038 685128385 468455545 773181212 690818464 817561331 844909053 952915293 424452634 509579010 903168551 973842610 842679327 992913814 358574635 548803822 308750784 705296394 291523395 755614683 348766077 568246171 192151356 227417571 542790732 993901850 847843703 879298803 816917043 846984651 855928636 888556453 734836963 901122730 836865991 869743506 121148212 227128129 991288999 992635991 620123464 729055221 227798111 520948338 108844235 582629171 886571687 917062227 668062288 806813412 592753764 865143133 377930726 436573555 370539803 804805137 34738073 641553874 666661355 832716603 758454894 962687410 804869156 915306058 750240872 995191350 327775644 579128807 815256179 934567388 304359401 422593893 25854294 122805621 442536296 787059476 926431654 970892545 655212606 720535426 967975566 972637990 271167149 466180479 576516258 824460218 119099882 185817648 128922988 866501788 121563959 630670974 192154057 845021340 707821831 875193881 939138323 942740412 230410205 445366545 540421031 916047869 942236446 983751028 428700874 910737720 415305747 910698124 968391833 968655748 653589764 753769074 383534314 638979993 311078332 810338120 86878295 358447220 974603403 994386831 717784069 785447110 353511758 691283056 579276763 815761112 585258659 862887834 346907951 464683695 449909785 601984525 883300493 919721391 568699450 689142131 169851325 986231444 221441887 226791404 827545365 980958775 508722663 606339561 742178872 821132725 737894469 992929868 775223795 949678436 433094209 837103529 983290788 994087704 424896018 569955784 469525884 905828409 541988348 559062379 540881651 927211379 241761273 367659981 854517488 980356418 66713563 456312680 459226524 554748773 31989666 208836566 234501848 755886575 191973749 424532612 128215223 232910206 51677506 547932659 142609141 666769564 980742534 997539681 96413580 990459958 674287522 749635240 499309032 963457087 8642407 60696608 729256140 846517906 395593595 999175732 238469574 516726626 598656382 839976679 54803682 366670725 587621367 778549030 708943254 909151628 585474914 830097226 117957338 957378317 803537519 954995314 170900185 483307482 282500921 863601555 464358069 480698700 160740778 984376385 276027873 341256815 902642816 967924236 842887944 935186770 940001917 942978455 885256098 932939245 965336278 974845198 353147480 417666752 4732651 900040443 895356799 896722073 145656699 646421804 511428735 893479314 326917429 511342906 192900988 719004631 669128391 920201813 469686319 900533427 873778840 931262150 542824663 634693647 156038479 264672823 653136820 965701828 813046764 971956122 778377960 785426194 87365986 579333639 642709027 960791193 407954074 877630627 931127016 998920059 493745977 872745239 937419595 941620470 775648628 886474168 598379279 909671726 691875994 756429699 559387729 648916719 416240421 718938699 63972249 276689317 815267314 927337463 174312970 974530217 342924027 901322034 458137628 891837861 93701119 635607946 370595891 408187528 892968463 925992982 963723798 983747164 751132677 979644318 497104130 791050558 955663480 966646560 908411173 914527631 228561663 523885165 575130334 747429943 303634347 992293672 617146379 706978458 133487251 231415835 491424241 805403235 630282377 886544035 329378681 688221480 93806641 809177141 501424045 673248908 842012569 913164388 205707408 749413721 129435780 379876208 182691115 982516671 566402831 844710753 60395296 737640742 296280462 999487554 167156779 562586680 839616621 864894999 226628634 561887455 164903203 386984610 173663277 838858313 793450695 988411840 741477885 965389382 555588539 901291758 895672860 916210612 757104207 948791400 823023266 994114275 648273991 928176031 408262401 935220281 566250512 664295629 588825087 879715363 865757052 878379670 388162587 406064446 696006568 987530542 970054314 975596048 591628617 786165998 288022241 741700689 843569644 950388548 345344498 902270916 471375413 503622977 761969495 817125909 200354395 987190098 17290280 735068690 673826279 831727902 865562394 953133467 322272314 688010649 871646248 903634434 37702378 774021153 864111881 973064561 356457850 929299237 674776241 726819588 102350153 162380797 206159273 531423340 733928716 872077814 921010151 967606227 890122845 973769046 350274632 667885146 240364322 574583166 114764603 115055719 769233824 973075428 341934548 829552172 846801255 900454357 702367310 748104602 970835976 992297880 6495203 118416067 879929471 923452440 644793899 826485471 411800908 778987472 721846762 949418733 763953380 962371184 202380416 779226632 63993325 264157856 928698919 996927284 909663315 915581681 169610829 555552273 74315607 290279284 419094301 635156079 611485204 647270521 693851577 859227469 64611654 682348587 784323350 871230043 718758801 839065956 676629315 930745151 174374507 713751092 858775641 968546473 206185188 326667460 922317474 932604176 448997616 957444898 371476360 426122254 856429897 928033406 851527051 860174388 785569261 836954047 38872514 473872237 398618923 787787773 142128354 142751643 220820088 582477012 698710027 939451799 444045536 588449421 159196304 897913055 754200464 769945647 749433875 824273006 4971280 156259207 728862338 871701792 918732380 939847660 387941855 768696463 567105980 882073794 460948438 598771648 139966326 344253539 142915766 870753063 854533466 974395807 419872698 646535022 412205314 788122089 265010117 982995070 403604735 891945271 749810309 832043843 605877209 962174834 443872093 708125710 72933841 944549078 942343893 997694983 731683631 869661847 612235689 830399162 361690283 930340566 488439436 738486099 980059911 992088526 239314314 700794022 768985911 975927902 951771435 969003409 582382093 686982051 443749469 762138764 213888406 351984352 341377365 964277047 907056561 933145478 465676820 467450721 336968086 473216164 685220610 941689636 405303506 801724100 985787650 986576976 772923744 847052830 557716082 696014209 403647003 956035296 913710486 987179485 355980203 386201237 276775834 824985208 902132933 982979677 618111218 880982003 487626127 970483134 100836373 202845766 480803087 649191764 380444481 502807784 118738609 922957118 900662370 980611929 361940047 396288458 722190655 868268394 774466260 953726951 760702864 804499269 913983907 966741999 33007433 897020287 786396823 851559773 787102075 796217617 807738405 857178880 845290967 866589739 526774242 670258772 638142092 870448234 637424365 667568281 738288756 950732562 866886250 880420942 256992085 294047877 310779291 737535548 416122230 742790578 998478145 998620031 365530187 610066443 511916197 892088651 445347492 905736089 66772648 436372164 903382565 964385802 974401850 995566268 763847068 830431744 504156425 698097461 92916312 662019455 22073267 871357057 966831093 970591417 753933002 920676936 525446931 835396700 307478899 994444133 595144589 876080296 217560104 753613328 675888183 838782036 432096878 686238640 818908366 976227395 854785471 964971129 249990930 538592523 104465170 621178418 73227583 226785729 947297913 984082375 857683129 883019972 102775026 763179703 248186548 892747346 113004936 166770764 122205990 214723714 811496095 825374305 931253990 952570028 8031092 28147167 914588489 986566566 398943074 792537708 773730100 973340991 269488591 778647146 893349483 943518030 215193156 844130531 555815874 978805401 632402047 793358566 92266966 614870766 214181274 399002704 702537366 758926620 44422333 523974808 181056163 873267802 50932615 986265570 243125969 916957328 246538605 313548366 434067703 535248068 666865011 857615464 960224489 986951103 836917565 997147911 492911072 624834367 612811749 652272500 783722305 813959328 492315686 745534219 241661228 541160189 99853134 695862597 945016255 978987877 278698282 573001822 532442349 791587646 929492853 971857369 778388545 892156274 430971097 715304933 802343719 871001370 14242757 926126800 41750221 195985903 346872048 909153052 367825077 472343498 735517222 827234748 960879076 972686275 354343837 876406454 626966059 904446370 299479081 309323078 888956391 968964098 593391276 955076701 260010454 788514550 985823336 986076097 556098160 742046560 355045128 629809249 916327029 934661058 977562814 991238676 968788291 978353976 370856654 876170566 285635949 944393669 774734114 894879202 169349648 547106560 139106290 775710691 98069067 811964590 391735076 708604809 698632578 739142096 439672747 801939905 339138582 945351173 625610858 646480930 344012269 606948413 75433053 720920747 540847362 857859376 555052832 717881527 923665892 947381176 635815900 829379344 821525765 993009576 179709203 793378390 685427765 708318908 856168124 909386460 82438118 156402162 121898628 934792173 437051748 567634277 150357351 172191369 959435360 992332479 566371623 703511814 531466444 538881672 797628483 841162984 852188589 991511547 60202679 90938902 361366371 482797594 129818690 201234371 843164293 872932664 847920941 986319349 882062572 905865093 769181774 950679850 711719347 902424471 150300899 261384537 664159633 708908426 600906510 966045400 290046801 494725709 264529533 877727611 325502869 422217661 553111468 972893922 885958147 924629860 664077235 996871986 141415538 500492644 258204820 538403241 511310330 586936777 213474415 274805150 203112044 706770350 23848294 895672206 276630231 474377136 942183901 968646469 538771265 942899860 45997834 867507153 772118830 947828516 261209200 273453465 642146381 792139381 964670075 966102305 517931769 959679115 828242473 859535575 215757746 799612993 718085075 719715391 556746763 774045803 513041612 895659940 519827753 678690172 520781577 656171056 129582666 582703113 375396117 696510903 112500384 926340018 298717738 895548527 914555365 955595096 144102519 873607213 232778196 336791381 637254103 958730898 203640402 643860815 36885826 237259199 121174237 911595811 356212168 948554376 345185555 639889586 652293746 849725549 551297080 668445904 746435774 871232088 120903184 638636212 328384844 943949562 928836879 958225829 450438623 738068680 763499017 938408651 958014152 964414986 173145002 985101056 337545276 363277730 760730263 822299152 158474405 899696574 807969889 850962013 545163010 647094194 737095822 830216089 640074764 704286554 940348029 978904831 730051622 885407978 134726956 900426077 268474131 810586565 652216359 711819078 362336284 589167892 338920568 485394981 460445008 795919109 514206911 557004741 101279196 160222778 893390914 906955195 935855078 977151305 83163856 736668345 801345290 950994960 814262308 874177286 787723447 971886697 282888988 711681877 86043215 110327043 117457017 751237872 721019859 982763603 677966985 847785709 734815254 914289163 432200324 978408141 623479870 761144528 329615365 752062202 662775419 763017889 409297742 483256583 977171991 982174206 26449169 385347666 926032220 926413243 972091194 994303881 837839607 976999525 418486756 445119843 226791433 737747853 804790761 821604640 737346160 955857891 468175352 470271535 262088433 591438011 791378556 861510070 144270006 309013270 32545735 95545021 310632887 387434675 96802424 472696031 319252860 440477113 809322947 945574026 219281377 745227954 940981534 945159297 439183099 986663454 443091222 861728483 786687287 904646007 590229697 968512160 84696624 977347495 187060160 487741904 561436031 936066525 319791683 503782442 523750706 798856010 173887033 412678685 50787738 401327876 155159791 581028592 214881789 423757976 577550237 971281459 116447556 551246527 154046649 739827616 783811109 865683064 570014867 845483710 787191880 982321508 748505424 925152265 50715970 822997741 707870491 937051029 296877445 625045369 91767963 320748903 31702327 32348176 508444376 758332656 531157038 907518390 377468621 377915746 493465205 633385709 258009877 892305675 770109795 860309767 855973788 947818261 951645770 968284216 520486997 545833871 428487506 614201805 648660626 734015572 702068201 708150406 168836746 949251011 752279315 828987101 653633 767895317 974341570 986707601 418138421 718937659 962989717 981731820 136420872 489456846 629974104 759189729 470473471 652319518 290724308 454324427 419944003 641362404 312081387 492731842 353667458 643377931 558736055 637059139 947313563 949018155 338229464 344516340 135136525 394843766 487756155 685802259 452520225 662412702 81325357 140711732 725988022 794056133 121347206 733781064 603270602 631839382 326000048 463431558 862546829 968863375 568945467 931207619 10545138 183021861 91038035 774920615 114797820 740664165 515361471 585975657 728981423 922178995 103666425 937979943 627780943 769809086 946627658 995723980 986404908 989709965 865654596 901524265 96267258 287556144 269521807 302661117 489683291 642789284 982802109 998751978 310762002 415180117 521584268 858313441 373781887 452933866 402671102 686187297 644116179 700780701 498402717 927128994 793506156 976003753 281322733 781555298 410857973 739573035 917285831 953407937 575597164 788043595 595797832 716522567 910859850 962811591 662690913 739865178 506768582 654179653 112807277 594033880 501964714 908348958 191324086 791806119 748360547 792813555 293332850 639675330 463193260 690492438 946846792 962216104 528273532 854777309 743003131 788321146 570557966 676029119 274407821 572760752 145704630 381347481 596283863 961661262 402871507 914865893 868430685 984646627 688545567 855450740 730267732 877800544 961096409 979923232 317814963 919127357 285814017 606646909 146550061 740576329 350600717 670858519 856404361 867249142 751797795 829338515 468659261 776164916 24388409 412486405 299433705 692083380 147593564 536042054 633993931 836555265 34287232 909070147 805988157 978169625 733190921 840494553 788432947 951057898 28866488 576556966 290419799 364193549 195319996 711274348 750095437 905239260 249024312 698277812 835477634 849274474 808991416 883365477 324525332 683748289 82087220 852609989 556445262 577487565 97846525 640426147 722535703 958037539 798819302 865231807 454151676 716767324 788645585 906985568 39557001 823463688 675091687 700683595 35271825 116852044 221415689 689622968 342379957 671447079 229248786 569708571 742622751 835544395 31458688 186768272 107918856 178481111 751520830 821413749 925647691 950710363 801402751 820796031 604958590 783460593 461483295 669728634 530486775 638726703 731575594 906981457 705856712 838970526 500641432 687604979 702406999 851588239 620703917 630197689 197596417 424444273 456327089 784872773 30566151 982740837 934677627 941507433 635939068 829997438 611862683 952383177 741395195 872750920 883236266 977603598 236862729 848305543 923237308 933896564 507448459 661202368 61503054 656465981 173219596 855185472 775992144 904884746 67416737 819091863 206253418 639331416 32876466 324202343 899993700 906326010 829282990 921088771 439196435 480939821 512047604 868778574 493507460 910423470 322824514 344663573 169775527 278162784 500247838 604800238 297992591 701999301 87674993 748590354 512404920 702067346 705620181 891665886 237888704 471878990 609341903 942693569 861492772 960494601 210314294 593255999 136697954 615116494 387154665 791102177 485837766 728455188 594520300 875035445 908002860 913860924 843407691 887778342 364632990 787972681 291882979 979168507 693745337 980444571 975868239 979854057 690840193 851155217 152742216 518062988 806739064 839979691 201962955 985946714 721647758 866381470 442479263 481629614 939295449 946232442 980357246 995776699 225117961 644239665 207584818 338096760 676425781 952039961 747450190 973405160 576623545 593601809 113328269 958644853 654459606 921285382 461731596 866750990 676513239 895119071 331537122 488792141 73855470 305494276 591839529 931566075 60516420 741820277 14923354 729329923 252823977 822549094 123482697 459494005 280663844 311000754 766456863 873621405 896027963 963473939 534694541 998989758 863123736 990257063 553403150 718767275 300185014 911708884 927025428 970410382 18292638 447873230 84704344 544067700 412334285 983828264 840104750 999316737 352948601 977684769 344219263 730275900 615320195 892216814 844411633 969460268 561448672 606031967 224737783 805696476 852699782 994885315 206368975 775012752 756409711 995797545 139240695 270357087 20390960 806789645 925505621 982710682 384763454 405058681 989436643 993637469 204370377 676063354 759989820 935241172 900941663 911352494 881136001 981467187 228700480 276905510 800556203 816401392 992255015 992706360 612835902 618161478 279367668 580108719 666430702 818109676 852340087 972370077 905899114 966285276 647600127 855704893 447757980 588717388 620946304 859551356 523360465 730251636 148130924 200535457 170790928 625745480 769698121 909732352 520660747 857472652 644460310 694469579 408979834 648793913 493875466 782912204 666757495 799600446 395093388 462420749 572699336 958005857 994025245 996617052 336860001 719755715 812030595 816185658 372076949 767935746 25825724 331529755 750081582 824199858 7553899 252158830 429013514 604958330 895251785 943801370 379236829 588515413 457820527 593666800 762811793 920756859 313371739 476419412 794375625 947045428 53703876 658133586 103255314 225028613 826550848 881698725 130934252 197922825 46375299 132728493 809367123 922048292 66642606 719781293 903940380 994470185 569724531 723660042 803261750 831207090 648465918 768064422 591620219 596961679 961347100 980549462 752383048 850047395 759435827 881060780 565649105 614299985 17928049 468768752 79333594 557471163 466962367 910838196 630220625 831347718 778438192 948093127 623093494 674482037 430301529 538786831 309130003 489395474 571384686 666870938 799222807 971613724 533994765 768774251 918653777 944595250 860675204 898303207 314833803 934347581 27494703 411729826 535595815 597422140 431030437 849097080 599113760 812676954 113963467 179104318 990583101 991237030 838336606 959389882 291531244 410246172 443988367 459227025 140038397 814932036 178486331 753443495 940847753 949297147 504729548 974223300 323805775 572711889 766201923 948543102 103993630 934201722 776078028 881203217 756525045 799129996 911945001 973568895 850405298 897093233 683982839 872984728 306257536 827477919 619206875 668992960 491758635 754460680 628282231 844582253 79199787 415763381 724967682 813216003 824613612 865129973 945823648 981336302 562801976 756480062 519490600 844305457 13735971 457693274 246818917 851431666 529319487 754101067 446947613 737039541 785792219 849993861 133929665 287366678 461749895 800885997 900117119 998107362 534380936 566548949 713273565 811971344 915762976 950598657 82183348 662538451 131816264 459700203 467482662 930077302 823426664 846267455 16155734 979582139 460233488 773685967 462677702 696711319 999606964 999791554 497493390 636909389 53544504 415668132 988370091 998084673 267953859 677981419 286055001 979989913 224646081 484590050 334233172 364312869 209122949 338858290 487272563 678895834 798028820 851217181 59812972 872384584 197836197 316031449 437060535 936393392 572477569 605796928 701251842 836821280 737760669 868705267 16070284 996155069 390604530 971039808 199238930 562950000 503421606 737929699 53700249 366170279 681193707 825189379 120315370 340831940 296904950 763766605 971079474 996517808 70590096 510986522 110549590 916184803 311491432 348427555 620551927 849811532 345592480 417412017 241900307 510981421 689770060 850569492 597611644 932445312 590998945 825375407 837388225 955188163 48646341 710671325 653179339 835473021 781162288 893684662 162060638 437360673 541578758 856299919 37182291 64034621 918484247 979057551 995430454 998618193 385189107 578448479 579366564 696985796 856491233 960941880 733040079 847208101 154036920 452137097 258716109 855145867 410122251 697881643 355369039 749219670 873158291 895374109 651049071 956861467 488310597 654484951 71241111 77100349 706532134 767637267 842907081 989312373 474479019 582057442 104449935 163855907 235920366 993196719 449375233 450953388 305055674 338133736 130140511 352057776 602814482 710316953 473405656 512768333 71295297 502271455 429453472 703835417 98466556 341163854 912741241 975580510 793443439 967570598 69910638 811834066 253289246 770254030 323631385 951457060 849742726 991913508 141031995 485849201 265207046 908821405 464839319 563803876 294081064 634222080 921024039 937644302 482714158 887389767 339900196 501419920 822721240 891072268 658584722 792567527 352003283 476849627 45267347 843130256 504110649 796843289 789759924 878329610 267813903 673359325 329716744 331379582 26556364 678793399 496646404 906977558 720521372 868876414 764086455 985049411 895473909 915205408 215903275 585427193 823391512 884858756 6632871 638372621 117459536 849682710 148999366 889415518 757571623 964713730 347709569 368026123 795146180 885263920 370837730 743982355 313197644 900507576 198497230 539024571 402814534 655750352 635650938 974753308 16168063 48456254 609579223 633317315 371989945 636713330 255941870 898502067 970949268 993672685 90811348 400883624 374559727 583471038 795712013 873833604 500081437 641743050 608243973 831395818 189589934 510518076 839021385 920068868 828489979 958061903 119283827 417706828 226987664 804593260 240685974 631791492 779228842 950454506 332566615 976327330 130544564 954933600 543898215 565996065 327662095 424361960 306156917 353936192 209073552 902556377 511780149 634791029 35462802 636773631 288789222 473633127 848586109 940351568 369177110 529937391 33214792 571975689 448899486 798235302 709259197 940192330 703138884 878570877 273864416 330120703 753999936 837061569 216106096 593251139 687473692 751862327 459197901 953812965 418755100 939747586 115930349 427252883 395021124 890538223 238067728 629719515 29721574 280199580 399937188 833240725 507119428 876745974 889128832 965930222 425284766 731430492 942093692 995419168 400788372 744912084 704205009 883888634 975316294 993296523 582101667 662686088 663446917 935363262 16471421 815681784 514137743 697501291 584499508 659516852 476453887 895748036 645510689 768257145 141423518 932939667 347525161 531131440 567647125 849391058 352760153 705494389 784023868 827396390 751761788 962268573 538317913 772778409 998359926 999015849 42280698 649249933 159844512 979654879 656533357 813716871 948323162 990658399 54753177 982202168 676941040 734389356 230064186 623953866 856084423 952804303 647923543 870607055 135427126 414319955 55520040 459115088 18835866 810464723 824179973 917010930 404808294 747320933 50094134 744016797 542912610 590182626 231361374 753784905 126807548 374021713 342916486 986871731 965305337 982606969 283286030 737554951 748475754 776797247 767008773 886047861 985888531 997946031 403996775 825920093 371356092 810691240 847974841 937427390 444149220 846058745 582339527 743257696 113533697 638800433 750823018 894817576 174316267 973614569 93440255 626356408 249525294 797491522 985849402 994870447 50729096 697160350 186457712 262181313 655594287 774588326 615469650 905744166 215879968 657338307 373767757 996303209 168570572 261254598 364013639 579476999 133317354 910439942 450088495 846141139 121729675 507724268 721400921 724048861 113158303 564721007 346877926 728688058 219136404 467739397 959888846 990212978 605055387 829256855 624377266 846481796 828640298 837151804 159868185 823073881 260413658 625280482 560197163 947537914 183353067 908781888 61830675 300207657 458605280 632030854 239567013 760174164 288953385 765554056 982189054 992228389 107487370 725685704 353462961 605369352 728105789 892789420 314327885 835874562 75334631 239323273 484832698 592340980 678704534 717135790 559093629 843404915 47905832 161333709 519034404 663485179 381515170 459610061 968000865 996983655 355738795 986559703 254078415 777085662 885330658 995692014 375665407 921665981 596224981 846955014 513542887 780140615 153224218 275933375 705289830 839213351 688320254 957108711 424095759 476148472 648882280 680133790 483104978 690785862 626230210 773148152 349491449 436479228 623005780 905808211 409754661 644156430 302756175 813102471 377887672 530462045 467608280 739611377 455901314 542715481 64449232 204640286 857059542 952272022 83892344 334680454 274199812 945147040 379101364 460031248 460256801 827132035 631241252 681525519 527941612 910788525 136046281 537700274 743095991 904009807 245743046 737342417 573790493 599352131 457685520 983924307 499603265 686335024 6273117 228872767 342379333 863115811 686902430 995839323 816249455 842390771 565214030 998225843 586547236 638307950 770942989 922229973 173807932 726168857 707308315 842828225 658437796 967794906 456496669 668040696 553228298 563978543 486910401 927194231 660790817 899848908 418867393 935951230 686934773 962627235 972733199 996182375 437841771 549424504 684722900 806359143 756785742 856611677 742053693 763857988 158499581 473287998 920344409 920790076 269104045 769186587 280432169 727465674 214958178 299458940 297464177 405965038 283441545 799727890 251965143 967014205 49179984 629753127 269138122 311625852 321849473 790322301 584407804 670596627 434515883 859393008 966904911 985411187 598539572 849184309 625546167 826616807 958061672 996970141 223037875 807335283 479788517 890950869 421946395 748257895 406544463 994707704 600099231 663852445 448361759 969924254 761196384 923486285 478302227 572089677 716195661 809886410 850275899 860158675 156111162 517309366 958363119 963135990 219646852 649767294 263345619 745222098 539063079 913470488 216810848 701316597 561865057 917548684 918634004 930283511 190958717 748841242 784975404 986637787 265166419 317726398 552634615 587972896 648523857 865547079 397168141 751150048 905273865 932841314 156174464 308377321 861827515 909931757 527190956 718093513 641718638 792612535 392917796 945845494 18679225 186274935 853994723 999154264 198327751 562581192 357692728 883660598 28776766 690401136 131521415 867106345 851470173 857102025 431039865 676270857 553763193 832413480 542221584 905668753 437508735 529342492 261744001 969740641 378816776 705005036 672841393 678660640 551593455 828134287 130361805 370052490 224902502 482352973 850872691 885708288 604974687 932572249 130276580 380470646 349186451 908451476 932198649 986930785 14778456 734294049 528745561 727683394 919047437 923555484 747883444 897618584 393518659 454056990 173140156 478290502 477798858 695663300 12046677 892253324 672585653 704339660 401574179 546888695 970269208 996978506 303500725 459055166 68815961 660575288 464409943 729939200 455188884 959278814 472070455 661950726 276258857 535001630 352690838 547434569 391624091 588821686 477516720 874947628 466856084 936944225 37037351 753194707 588423092 654236381 184227510 448704904 313758136 396317773 624838578 668749206 776299455 790933861 827715225 851655794 804647823 903727286 237575806 399468535 238041316 541683433 663028881 665177738 314048072 906451419 8161592 699961595 453257844 923287052 196461542 694625543 203109146 443049035 871601626 964217355 721597879 737912664 407570651 721286463 884356108 891292113 583230763 713006472 607463925 622501418 943680866 982029433 478008985 701306474 678126678 991789017 52308165 698768641 397703997 827630060 727398962 859901537 357364972 602788831 923083530 950688326 957160970 965727316 230411330 271412207 663932482 907399719 380752390 579411276 791237443 998935140 286598365 333416423 310873101 531835798 824332093 916871503 977133692 990364026 58655931 555332163 306859375 674060461 824773808 987989890 483371808 719435514 13407058 336580696 515410554 966728493 464683655 740981376 751409351 916248080 441455671 511608333 66788105 935934017 605881440 702094890 229732355 483483865 121023894 246473946 557923931 849995881 821821960 839866387 396623113 655173838 309440136 442756604 693504047 781797637 347321217 669645249 592532909 980573985 604605115 644130319 246807475 498294273 673642470 748515929 176822151 306963091 233925087 922953926 164592806 529311590 476738556 494556473 892037268 952588434 108527462 941779853 620666020 860393396 822216652 999615374 697809328 919214473 261498811 601128125 344541726 786775730 726772636 921900152 216811476 726631349 536133910 761651055 856526676 929125024 364642471 878335839 116873740 413392787 384086210 420286235 805073549 883305073 528829459 918062192 503971869 600471649 575770245 887354719 499833217 597753855 214394780 453797392 514950199 714466466 337920726 393260442 188286677 472046585 197927285 980023523 850756540 854594829 248797333 942977751 763806194 963318663 837341541 935663400 677327661 754970642 47101991 988772947 933986551 978255054 234379624 563381600 364894595 836090591 487883293 920475966 770774873 902780195 847736492 998208310 349425537 584409458 398865894 983533424 295368856 343953773 673512653 753171238 428455065 620506360 747780074 815115010 732306633 758152056 145762243 953386452 133457252 761109480 381191448 992548543 199980171 623844565 997660371 999679085 564349751 832480595 540811531 748626962 824547899 957961089 481200583 844319193 74747261 246395406 415092474 898536880 102796308 300877858 547753654 983750554 477484773 916020179 515556625 579131915 390166837 719785486 685789403 807218746 618719434 895969445 326662746 626209952 838079205 983075319 480478392 734899913 488100925 848449732 316382349 813019712 410011283 741477326 758428480 834493384 845487028 878731523 740126261 951676218 696808876 867755427 94456674 883998382 941490978 998452706 169914078 646367624 233394154 353426319 925536905 955777195 453946567 624053277 48018395 443726001 2200386 506750304 542001253 586733040 273257734 582062227 537152278 743036043 309154649 908536539 570415517 713695389 400571203 653321632 22131977 705841273 994458383 998920539 521990955 807471062 984539186 995418622 244558855 457240523 556664924 967307044 125516721 338360969 904044998 942295991 154837261 262563890 322079514 768024651 296924257 425822788 568724576 774799967 177058593 702124697 326007156 977520329 449588171 715313859 95520931 812582719 269191545 648969385 288245536 742234341 139130350 481406741 906239604 920035100 248217941 432077931 150072362 930820354 700190556 867045590 648086056 687408105 269686447 612627878 991695818 994707538 459012565 555807961 777661518 866104035 87787981 340777830 114937628 451218318 852639831 896652601 599864944 765357922 16644317 186468569 971457068 986811486 772197336 986071209 930709185 937201364 735350383 755205951 403267328 740421606 618831562 709593902 219746031 984668660 913173404 959488257 482673138 925505386 12093171 261954532 44199612 72546941 651556665 851168915 254698387 797039591 496349931 660101421 136844810 216236127 256583530 956053116 160503021 723658019 938906170 946020015 493071667 606623465 528745747 560795231 991687990 996371144 363549243 936879334 443386677 489637876 362573249 703631466 610383926 772649257 206337819 207924775 265873356 727276435 619401081 627377027 729432887 953145802 554145024 980960225 248668784 992308544 823203084 837253843 480630549 490902986 311572607 528781733 34437641 719385310 773261022 976446161 417931268 632196119 234904522 886768037 423309757 518373428 693216112 699682608 579070729 798170087 871794903 891954009 86650086 299343845 875041020 894735594 882228485 993604835 265835811 656863055 46305900 699614337 550338618 741966678 420610589 544054008 245261179 369943084 117152692 757875730 131510723 296614058 621630560 931089016 608223349 795628326 305415262 393430200 193452432 222497006 219224667 792515843 289441908 968429091 13209147 704142740 941151246 947210557 61301694 202897576 333924429 981343301 331995777 729699047 209713346 215318458 653859602 679403758 561480816 807981349 883428283 907643618 930614248 996306852 831229856 912143526 863100066 902878309 331090352 388655381 134127897 439912785 703888352 949435166 873990369 966885814 621856939 954155251 968267590 995731948 799838236 857091370 658451557 865405916 848697788 852343301 230776819 741287108 943846894 951321342 169990177 291792559 904260630 986426817 605942687 810801704 447495308 465465027 522717324 941450889 795373884 816413620 125808296 471046998 586568068 590597601 803000575 876911321 123267084 187546580 975277799 985828132 298586097 396842509 531994891 980384733 669973105 871527264 23578627 134726413 554417432 704823328 225510479 363873083 892120138 913919507 137576673 444734645 198908253 878122215 627860293 853323015 965924239 991790932 28716939 694101374 893968771 999085162 23410678 443358452 512431145 974927223 513831117 777639241 753900120 761150521 329250253 793776572 234504244 530020910 642631688 731418671 58222476 735023330 62174892 74032014 440879608 931366731 792701198 897116418 581020378 966286919 63198826 752458794 758142834 887934234 169051014 212199997 730810977 782561409 370926625 666386977 102107134 335803313 627901014 767496496 452765008 727573801 65280472 844597804 380795657 909972546 531598073 951339257 154353177 223486496 892815007 974778087 274040189 947618399 916996581 991208481 128478553 883681783 899692479 918039557 890158953 965967626 500595936 666983927 199595395 978643529 994467561 996002529 946910869 956548828 111761580 836571852 495377961 829964100 365720316 449079969 857996106 862038778 462234718 505797627 688359884 972879611 336341625 553536562 395427583 562223461 105376487 185023020 539293775 950268318 865461083 865950744 382613725 508559245 725782377 933276367 687444409 693043107 234928995 537180045 818783335 849439458 527755385 827094491 793663847 924723883 489436294 988304726 391049705 961662899 347409349 734030708 947190137 992332922 518560713 917614923 822699063 957366456 578633173 673518419 592565504 840336165 633304421 676492619 10186203 102453049 505918172 635954009 960013852 975649677 827674426 947459518 580790031 834154141 289058561 390922350 202254689 398291866 94041408 138052849 489955999 822096350 62570472 855738814 230079206 777606588 413501503 929417670 895676850 953110226 666832475 857319649 76077438 689434786 888743797 980609218 662009968 725225745 420057341 595409389 755173510 777474487 495937023 587972750 937756805 954917520 674462477 898408779 411379358 676406526 475481866 597015862 273589400 801240285 277037495 427748578 570477993 905463878 790158475 849332851 498071243 679735217 778934779 852295545 200566375 488083381 708909584 818595666 958820422 968234219 506014670 790409872 438450939 958501832 723639877 941786694 831469324 943189219 135377079 514941215 302925027 708046746 405840311 629320023 592346703 987054988 927796336 938314718 51873016 547128815 272298608 945939967 816275293 854345012 453173577 680522759 520865222 798103049 266560162 385529890 107933144 142692276 826273616 884497832 898253726 938466118 762206514 923335012 48992630 719980574 299641578 418117386 394795429 656851631 604817249 946127381 857843895 922520890 820221971 910696445 892683380 897896013 357541212 814267797 816035026 941179046 432616806 733430965 508091167 980479781 169056407 581270591 689989248 919986354 223280909 629950043 514852910 570030037 81901225 468455558 360593724 948587092 703976726 850935736 362595818 468244326 765700982 982326930 874593130 973330119 898688581 997114410 543062891 949958853 901068801 911209723 841732667 903302707 701024024 735919083 491238142 714867925 532022084 783272877 125059744 853279080 523503033 767266891 336497591 404307747 203252990 984355732 521769932 544948680 238482160 691653611 810520183 922978586 106870950 434841269 647012116 767401161 759719054 765374163 656351237 978828210 291074182 805270929 70494379 694291934 431373010 902578750 908599928 973861723 298816237 387350657 298770582 421084375 279755038 785798772 237813560 313394171 971287560 972459747 511078515 837846317 743739931 894674026 766772684 826751809 696086774 712805276 484712022 574666839 26655269 901559004 527020096 703656323 780158160 838349540 191337224 335203846 51283243 641646064 149078076 946919963 645512714 949675456 233614688 445882333 196792439 470397022 66025634 753395458 886862573 905549587 779325294 826361490 174077924 872706268 261061588 345723010 620474010 707573698 152552509 972539883 251895172 275908632 884280377 896685966 281464839 560531049 80603321 980786944 809500377 976185594 803441366 901418247 86408776 842383071 77664947 613479820 334699669 786664610 974325255 998776575 568840845 885183700 940705060 941802619 49515010 585215002 82030759 485347900 415061655 674423080 412687959 619985404 372967450 493044971 878406956 894222279 325298338 724577905 900724242 973605670 588460134 892647939 604629748 949051130 85124864 284682069 511860450 587725386 385734821 392328252 317049136 607216271 703605428 971857928 531028124 915827832 589535292 879619363 483185258 523676877 531847727 760922689 432553885 942100744 120237409 544589985 607608816 780338382 929396473 939222154 927737574 946093908 68521274 106491159 642987603 988900749 887708462 967973783 420769240 826104301 648808517 972782281 833460017 857027144 332615405 378744427 335552688 393574593 425443370 806697732 725828311 812802902 156666538 191906324 342306417 521519505 499441696 667011305 381637355 693397919 590499561 910252095 499028204 857630757 518012882 852197517 709999069 896028013 888741090 958992524 275994616 348647489 477304664 898930803 374077169 896219715 883485601 997435204 238550290 950031992 308855587 869923306 300866428 440840194 816471196 958182844 964893696 967845163 576256086 709414781 371325612 862615925 773501807 920997246 271111355 808525205 127052444 699911046 683362662 819313148 400932982 936492085 988467555 990832612 745898212 925026599 469871483 636801792 69277505 454444596 957836288 974209621 62054498 299707225 331973596 397120844 800501518 999915328 24356576 934051487 466645858 578659235 619224157 695461210 978803514 983428793 904221928 963873868 429685293 610404363 632281864 707844944 793355477 975880942 9748296 436463763 278204421 564705074 481809194 654296704 809964760 928202421 836604699 947219829 356730648 956333614 81880072 674626622 394611871 864551569 629276972 831984841 201317742 845455447 678500357 971252602 299431828 625451603 98352943 127228864 786245708 798951108 701923106 770515733 56143300 322240011 416631468 828212650 266278877 321810261 756971927 882840052 495754184 545909200 731158853 750710315 310087407 383790971 780880256 820323929 247978365 979494951 685604020 773387276 148938069 153020818 576381223 834429983 225875718 680103440 439625416 649724160 585688383 831590624 69351558 355843278 853415365 900590321 914715977 973402828 357985450 774575947 595803054 911460623 800453946 937373256 217582313 537353591 306918385 717716742 365436719 775379113 245703916 622854954 427807732 572175773 452000973 674470474 207674194 913515301 832284229 966388347 516718254 759644337 59489814 486108658 517121179 969930966 772465569 902451299 266597853 439330075 845623750 990175804 311947544 389204512 595336285 825337165 128772478 864232449 220683005 346297569 394559329 409197614 445701959 557196006 279021462 751333718 210944344 506088738 674813319 685834176 318626116 590297496 372129591 478432804 759727030 918961847 994612375 995109886 816519942 981400197 681810793 908401663 466644709 531609028 613499295 662595089 758353371 835659952 569872343 822796178 57292806 449717217 158467383 428148771 78033460 532943884 507361324 895675035 103472862 576553004 208265945 731019280 962675037 970509972 35668639 875406529 824271339 923325319 908584083 943882041 217282712 824849251 738262346 793289937 103042479 259694870 691619564 826162455 585872464 796543887 115119585 384220199 621479575 976289886 800494036 965391431 95027700 652470596 419380999 923529646 103262287 638601582 756485623 849682926 789829896 927245925 727366049 944644573 359395195 448340580 837825221 895451830 794287079 797446780 137232821 390450208 418306512 671736936 643472197 715062340 479458318 637521343 825400325 897471100 263225015 884907357 5546289 939486613 837069158 872518665 133116926 704455950 782004686 999389799 230460531 506190232 857918991 949143919 154140919 590475145 450140315 924483621 907989724 997850113 125639742 908245334 10878290 165978259 211665731 505916893 310847725 452519029 749546462 847716591 759271323 903573869 204865951 298392166 271854139 296326762 675597881 839183619 813820668 909594655 821673320 989709396 229639055 413995885 456551267 743556651 906296100 984836552 162147838 772369471 518706133 603139009 833027702 884288080 510938513 739578614 307778601 489540396 291526766 322703538 452388509 891158130 911905286 932458413 616170761 752533616 278815584 720585734 671055154 675882156 176110465 730762156 927972787 963650798 770320413 958290296 642396228 716799249 919032448 989940655 155478352 599690746 482048578 495045112 869574609 919434843 620213629 842449036 115757862 717834237 608124449 795321693 696428730 829694764 256889404 848315034 583094170 644882938 916276666 965591776 53940313 972238314 709884875 797084144 196805176 822546454 243954644 565980168 903648083 918383579 813825786 979712972 496589410 498893292 628912271 811222149 619902286 889297345 767732392 938010299 505574666 906569692 968528348 972169156 849508000 875834524 868999534 933504148 780432257 836998410 500896854 838109921 793079828 877405885 736033726 997867837 107704056 907328697 11330790 80371948 254278195 266834251 575860476 724284197 513205914 810139794 875536965 957594050 687546481 973153127 819179849 863216857 199863191 680089556 149763936 224826654 147087073 330059010 578566775 882644551 679744608 982586754 406211065 908646006 339845942 646801801 868570384 951884215 565296518 877540202 559460850 846312035 24795367 592542067 226403027 751444300 265633176 981045418 847279619 910238824 650355067 795795712 180853657 634239258 115622126 776281437 531832436 634312488 688386351 951781077 860672830 911492890 767093009 973513677 109157824 786594284 683545412 901192028 342643615 840166906 361808941 421122516 811404509 883715817 49519900 713152009 810118390 900270131 117515859 487589945 703591259 870332603 495740479 696601930 573440940 783914543 508990015 573609966 983740829 988443852 282847447 350860251 519207221 844744702 489820588 698406222 390873589 966118812 131081192 503351172 743730109 788509140 336547923 793327735 356533515 742493746 932954501 937464632 725932734 847893583 721899125 989509039 72195404 266173774 284098612 582304803 866367166 988445851 880731168 884370036 919343545 968837509 986056924 991267084 732878608 861719038 250684912 904468886 363904341 938297566 209491188 565361906 579225522 756733188 301282301 970631871 623545008 841807694 15737774 452086539 991708569 995467867 231076834 315332985 442446379 700053070 148005134 193179938 107429794 302551567 344712745 965722319 924822358 985914867 296993266 728999063 70046791 636985989 92836402 594110346 610378442 847560976 406285685 908833580 230125547 617213956 249601429 781311893 221182462 566113602 381945468 427103174 52427362 681339821 966066344 974867803 868498990 884214128 882283683 987748037 859604258 958303683 892403546 986025673 149107547 496699008 560684856 792845456 521500670 594373534 448509403 638099522 428956042 486190700 651386119 653545272 693454605 807349771 677535319 878633784 861206607 903968023 87412086 305643134 257142933 712942593 633762472 905916057 284299866 524615238 526725730 674593280 763726779 966683236 498034112 578480772 164653711 548868722 6795173 191904797 20579960 738837127 784323739 798267915 728629743 842727166 109188177 225605807 860287070 912745538 803894510 960780526 281296500 721776831 208649590 401417692 316001489 838472553 759404857 809673352 357817584 401339487 67904414 747436204 502649677 815893080 28512815 601081744 110796425 904856111 167628928 698344234 477861415 793881789 194360002 195389181 918740379 981725779 14651138 816633599 645936248 754860195 814431947 913562940 866979965 936281082 760804065 826011500 215180373 683812932 788657286 795607295 774314980 858680337 613361544 953750200 889087737 931949502 29105719 776931596 927916745 954553541 518744164 989605499 169336637 777207229 433965220 534929967 141860675 173642174 273526545 352574563 151272257 745219494 93461227 770279248 265669365 865999913 59745751 178880170 673334874 794095868 39045209 442001387 179507306 237709189 529859612 596561666 760275067 969645056 67605989 646595832 336095813 686107244 860797546 964356214 659390467 765715599 398796413 827760560 612868293 868343318 188697856 273645578 42574184 195900003 726692217 755567132 335289028 576974178 314655499 520992577 922730080 991839109 655674943 812257600 183836959 336774994 605212499 984441244 384389134 903945557 194030315 974791056 533510246 952098853 894649447 930324048 48970906 169323602 542937793 997571448 617720405 985840934 466061652 656352422 411854889 928842940 243321847 726754096 67354328 858276896 25908663 109265809 79659947 609477275 339577193 401612701 268830850 924158451 643094894 704161121 237493702 897306255 558302127 753100937 640862411 756187345 236186411 277387955 12535498 928364525 254392396 619975108 513287370 552167911 876866555 984010770 172896065 636156665 296153982 455733419 934694849 977496730 48396492 956291881 473269194 842077697 97858624 275223853 715302220 741283638 745150520 846755733 585799171 789852182 308956478 570308364 762233322 844280232 191689825 929188555 956167853 976466742 267176686 472094283 975385745 976884391 849720903 888329802 276461722 652035527 420653514 558676499 35146911 646309628 392406045 514495606 187153033 747617808 466153669 578935282 57975248 835647115 687309753 913064638 793668219 955343329 379367067 735568175 31464311 605501486 688400226 840632159 744509390 885076077 443907002 612924321 642295578 682242050 652989733 947677683 593214347 778686640 357859635 865892789 334797861 457483960 47318809 916852450 373866016 718602303 698461601 706507343 766856244 788654725 438751174 699566654 792976494 990158408 967650318 985689413 971324475 985154677 263515835 774832362 832206622 896523463 104095371 403070880 691658747 952586449 652993089 727813836 85240554 703166893 841457078 986912441 201816051 216013156 268178567 971499765 480073630 685905148 499833775 948675307 335456404 972210247 326266342 727178709 15185839 471011770 244989244 300450138 46038290 576730968 322578655 860408665 84991613 582860361 997841415 998556141 109574166 950354009 780633986 823951452 371399780 787503011 949506941 996135060 553305058 622244960 854405435 894596914 318674124 754261653 201404660 879570726 698803357 892444069 423307669 627075447 267500352 331903246 626235276 770807436 184949252 313817123 977685921 981400356 952430683 965844180 297045173 490648000 698955968 984890502 397468976 906515600 928259092 997557906 90693114 201138185 741680538 906139123 471106647 679059422 861574352 903245310 373993297 505375729 220439776 293286859 834384515 959776570 891440202 987541630 587109525 607346187 651696787 770871189 618195766 917261504 867643315 986154212 322767700 491305778 874348454 936179373 833009152 940683087 324182559 908752629 709312764 960218997 771202050 862369569 997502247 999772618 168747202 772219916 635066223 773542128 971169103 986463464 544067960 834997017 24733625 248238932 700012340 811535852 336172397 601943898 227267059 780524042 140304687 885781396 602041375 653446472 569300417 646891023 284040231 965020984 263204720 652851280 919298361 924945571 256597739 597346977 531745664 819065529 474070059 583817707 981236212 997528611 357962368 868803623 734313383 742721847 592776734 928817776 955806648 987627649 56278934 900175406 718714008 918174010 633844217 701417408 328254113 844069028 399172908 835856149 287924162 781939943 705158811 807795835 797818487 994736384 207966465 284579883 23979483 29006082 487337005 894865810 634733879 867637822 701712247 766257790 795656075 926682326 188876583 220560024 882302587 949705784 545780124 739679139 382917113 936047003 62841396 797781292 631814756 836084983 485948543 704062523 489884664 641712326 572175695 816658825 675172807 960900664 350363911 942455298 87487230 539090208 637322105 701279159 859242966 967012110 883516872 925400293 388208652 909291011 141159650 845294020 998675659 998722388 194593970 900368562 678548504 965798901 508155909 929866422 5118018 930139815 172746254 722951869 152660099 939754773 879963191 909087505 28555268 732876002 841315022 866426970 366197713 498394340 363958301 841157727 367864581 850656621 535758765 821730253 450217794 929652604 215403400 908030908 136572880 806290816 976027722 990436914 498099957 950435504 416865450 810022625 82452103 636542585 115505166 602794701 756761352 990015339 312304085 325360135 176519340 441946306 407703562 516242453 941728102 989630194 389388698 429791951 211076885 249390465 481588525 829778961 402944795 692218582 482313190 766959625 938828301 964043696 897003931 931515565 920621177 983828780 377119640 733578393 637311802 923625077 857462318 970309415 105363012 322943608 160226813 253309477 524066264 714603748 25927556 328105257 316464981 673844931 455847222 492580480 90577762 959237510 417766066 841097613 553986655 969211524 467013803 496898305 508713538 689917925 108743375 639716991 167728790 353991129 485252963 499641078 158763719 191675813 610604282 767716783 68931345 206458912 798177910 913000845 524801267 708924665 29277492 821719924 124902339 771634170 816226710 970505336 699362693 728765465 769955763 945369138 647442423 700660112 824053626 965538386 896305712 943854880 33120048 943780082 541177779 975290491 724434967 979713165 271396606 628010126 891423049 980897788 79033299 100563102 611171881 828638970 150359386 211326168 617735827 793315050 526489451 610304660 617596220 993426186 408114852 859232325 728884795 833634983 295544632 847751708 277418501 625062369 556811446 931214220 370067269 875333348 110179011 360449388 328209976 371356239 11899623 510668272 427395282 579818784 325443064 952427688 187435568 505853202 378559383 654705666 245806823 487275468 214012494 296589363 557463688 748757411 88245304 593600289 588467061 868740893 99435152 619946252 306997653 627939282 675916865 774247696 556903275 977662004 828323903 887937776 6791982 636394207 996705085 998506932 986398750 990765693 263305665 723145486 929707118 940521544 216026698 490139371 342608530 578480427 172631625 378696079 300511553 337513797 554014500 605414242 904344908 926421164 485313932 824438498 289910534 747644382 419793949 651630958 550964691 956710513 900151567 969977581 190807907 216339064 512691624 560994741 929468700 942893716 684669997 897868310 924259525 939026266 379610243 805977713 628058427 641466707 991699176 998775477 148181697 346569781 343077740 614883518 644732494 848262040 617481095 866862238 881049122 975920143 458989524 761902617 719271461 785065717 764985107 996919555 528029780 796298952 756620500 967993614 833607613 915056213 922431868 955513269 701001632 712512345 261606689 347540877 67528983 889477170 142922196 497365784 519829878 910823672 728193621 810183969 801268226 852733612 910966976 979652120 454256393 727699251 38872875 137127417 726899795 882335164 506409384 911500253 147772750 665719660 867616134 907384456 688004941 926441963 40428633 635747300 421725283 497358601 722839122 874170067 831641851 870142910 168512680 997469154 538180004 662400057 791969003 937126109 252070025 342621082 237600626 305598166 805419553 887779087 446653672 991843451 4240113 85799761 588396217 620341451 294105232 748186257 267255618 407725925 636365227 924705152 974487205 993157595 319247832 973215277 739477462 815392502 91997567 123028300 171440626 301138204 146401201 793603102 204861989 323672883 946864870 950893362 292149503 592901134 566504250 663652295 572408036 839529042 490360667 974589142 276182200 517158203 898340662 916302498 814361657 915081708 945223793 995544035 776048403 783133088 17140560 591868863 630436012 856545627 641904506 894609010 391720370 477617980 766601069 840935759 697369263 848882663 957716490 960676468 131124019 306685447 311940396 890883175 941097962 995459953 473904147 847257634 312498254 504577302 267240388 329448398 306873479 924991773 953422972 954498625 867347537 961272391 687568407 790934168 915267495 944723139 978485141 983981973 840756893 997637309 7348028 385401467 513129955 612187689 627511834 648295513 971654778 983931059 824822736 885548049 834262867 893444482 712288757 975226564 837752668 873805583 718898105 935851975 76349658 472293434 373316255 774496335 147153528 623830829 644797921 699781189 476950627 587355833 475340662 848825130 153872154 684515042 985978987 990803892 253703214 414587261 270953079 699439095 6935684 815317199 263583438 534331754 746563920 904336799 773228682 896021026 200880545 752789412 336978357 552190909 192282839 766903528 822038053 974419912 961274612 975449556 794236017 873950298 25823899 118467097 747912167 774400869 141578096 572597955 657831372 795619305 956230248 983806973 641262557 782511747 967096398 995221657 897356228 966703574 268022183 768739486 183185091 999085933 523229624 567000560 200952665 616836488 487113210 539250930 239662720 959489617 204896634 988847941 185027419 311962519 705807583 859451630 216965879 251325081 327039026 632100768 783730397 963680116 514545924 751131902 699130243 752536220 400105270 967998568 14815051 509940603 711296868 881563182 63860333 826821112 522147546 827703870 271839712 916158302 342679662 458419430 811243629 881573397 19369643 203765790 675872641 969216376 911587319 916544715 154630805 476714078 11688415 851790052 999519327 999900570 739432888 894227036 446909823 989114261 492353198 818746756 449005573 709680440 920461109 942949766 974556274 988695301 310884915 658716777 985576447 998858073 695975842 755384068 669696049 710098729 998114941 998931222 243810951 407804049 72441514 524675431 710595123 826979923 757821155 781214495 481125993 757046971 665402017 965875267 882706908 983123270 609598277 817028916 167007887 678874966 110236828 152913342 155399231 530250719 460803122 522758410 208610312 327861611 781286416 983493465 78012121 999044445 639200339 867735086 300030703 830241764 443267714 637591442 957935837 984210532 435704233 762851688 74981950 587997146 529185631 679122579 239776611 284498718 770287475 949530548 931075717 952824715 620927585 993609192 332134879 731652848 535979876 739562732 537287419 709206656 123025939 671127655 846261728 918194900 373846660 635879264 410635596 978928869 715673309 995143585 986397904 994224533 511348527 515678514 14860500 928832680 535425430 548544417 403212065 511828677 916899125 962492774 767457467 938678265 484550902 525656411 290873214 844181935 278927720 880980014 786881411 812133676 725808248 874387703 18063377 332786423 621415441 863333540 975320785 998545900 620261786 987389834 732568224 999918488 822400983 913789948 951501218 961268189 502288282 697815210 913483278 956255289 761071782 974494073 999206859 999660392 483074447 599880396 519006405 923140292 315288160 575319242 532687004 810340052 898202876 994200722 485179433 720092384 678861843 694699722 553362779 671657748 121885232 830219976 272741114 581839194 270283266 648607064 325172678 533680737 239346506 568152824 748941062 932490156 859770250 870970590 790691575 875807386 335728176 631244800 829111492 946253126 724063794 978217783 540312923 769007229 297479830 542008613 385874415 515667883 336677083 780362409 472505889 796098485 947554560 949907970 896652927 912090070 511162928 528425816 704269209 973787125 141224537 864633616 848879063 895906350 97197929 586300208 828140942 898007874 908229347 973550781 196507298 530777473 641132566 934944512 611039217 832781305 812181356 984145466 168947514 664889408 420679362 565129711 347392809 542464743 718436129 816832689 355780557 461271410 944575479 986162404 719971751 760861568 428097228 555996530 298344884 347348286 382623898 494164200 297438087 463566356 458402003 726641778 183978565 718414000 710046805 724490454 74629339 821363568 117015849 835780859 938037317 959166863 633091911 734410933 451795537 567312106 734197786 903340174 153708285 846974176 715205947 987942935 475784518 561601386 838114446 997834384 345226687 648235176 610913146 806671544 584343623 940091739 52019894 479637613 886780519 930519979 725114535 895165571 972391471 982561357 540401008 957391013 942752549 956483968 167454555 929064698 987939756 996395246 574577115 794486951 262349536 452176615 792596247 911944034 106717420 830871683 507130247 912915527 213964064 372400521 88370403 856112817 332750925 431531782 890588935 947338288 230645814 637932077 799958287 908218795 59580288 787593679 640509872 973842925 602808693 826207643 213643142 962129839 890006014 903179316 333897609 478695902 236942896 769958061 23376481 985847285 289169926 618417126 367281491 543508703 764545689 859933344 860624002 925602159 241402346 883366121 679159828 804728872 435441487 565782323 845371803 890864002 41961957 606729898 111558608 571181567 862127368 998055160 517944753 911802597 988859714 988943408 861726982 910934893 183068950 448410399 372030170 851889781 416186322 933449810 991978771 994343899 921382495 969073105 324330719 854439140 75706987 490222108 781016714 916573140 877342542 948497050 996814476 999558050 651595851 829685471 559622726 757188984 451473633 758580350 753764777 756689170 575264368 633375850 770765122 933518563 929356407 929742643 18131448 701363863 737870552 748704765 998524793 999595549 756002149 857292808 338997083 690195004 391803967 592235570 519369727 728589107 602321201 880411151 442170809 833792785 919147564 975983164 784684880 979230832 442513255 620556829 840055185 986758643 15683579 853271498 979105593 989821846 305666547 379442187 182361176 771543166 344111788 809220179 294106344 569946502 922738545 924724251 787791298 830641784 807714873 864395604 171532953 201697196 450038200 455419766 450480739 619537606 425998698 756883016 348542615 497979704 957585982 965045317 372654968 949103428 675196684 780436182 289578801 549960542 92977155 349111024 30413350 207057356 511618980 967150154 737891814 844606180 800174324 900854598 450618800 831260530 970470355 987501640 828678935 838868098 292845724 617908806 483329790 840146561 444456145 821256968 379338364 730173587 653226065 775670047 189247384 833545541 767293406 873448214 509496644 947236695 526688200 633842782 936551766 970233030 829905374 912769826 147949816 615724885 227133727 520176694 778576029 894513172 484434325 632882809 965069504 998516980 73157729 990861855 26744125 59990721 136755820 949338216 912632862 994653529 667760923 710020102 825700790 946577074 417048012 591787090 842009547 916493594 749331182 862378226 117982217 758031972 925245202 931286609 104548789 286445268 420024966 696856679 638941903 915191222 409491785 973498975 102143962 103839027 406208686 438032313 223898302 708529518 676292994 993733188 783587132 953668840 872545040 974406459 834458478 893959181 419537646 444522358 965608278 992385143 159475990 240032133 413906137 639459783 573278985 671496964 593345908 806698883 461685026 944875128 758866767 853387716 693160145 852627532 899653086 903635411 722695229 903583564 297221434 850937643 550967082 553476771 846682494 858818223 741405030 810184843 423010052 573147456 834309674 898234436 439005647 648638711 254177025 672139161 393047752 664524264 321550684 354942571 705165993 927714891 536074967 976800584 538972890 769909859 352661145 425801315 820097535 841954220 131211137 840235901 533773398 931468726 408393020 593085180 254204455 348294492 355498227 641007426 908676458 938113390 679146728 977694821 610603858 990993836 816132615 867245423 526545307 700856301 441783892 626875506 982683238 996400933 856997435 899145548 196204651 436871601 315159544 954557292 257824083 449204634 409297606 516513153 21991188 765164414 322216335 341624810 255895530 631194493 796673908 798999863 833536658 990673919 46653041 939860129 477857366 899188692 847841662 930974998 185560013 188848276 221015614 677567016 399461758 530713055 364122907 398321190 169833658 567100988 826546646 896814756 351403242 685899823 929483786 983872658 349281115 425294188 698707505 786691538 212887918 506826623 938225536 977627198 614638780 789730651 24230199 554897650 694922909 822805807 577821665 685106667 622386023 794326464 525292208 945518184 148879795 522521656 680514676 850826491 281436317 368020520 580497150 734749047 897790946 943093494 18071041 49177210 237531708 309389207 124286485 994078486 379369787 464782684 85839363 163948918 302329623 975541103 545420069 915867690 287080829 614838834 879311663 999983278 903634810 919435229 449222784 943350866 85646967 829695397 883519781 906157320 784994732 875744500 468948623 958694574 951229763 963302810 229948572 865284310 600283150 896333768 267734221 604253160 505649870 806042735 265753348 681928185 977934301 988491412 242948994 461364066 247777794 833773641 327678435 639823595 639540661 930702732 990790405 995741701 317122108 771440966 998897173 999719368 943122544 962011655 183505620 235876136 821249214 830799426 782118514 829279004 204057117 887088512 629189619 907037790 118311167 707546507 277594769 343983300 89160380 533726414 394285151 874172351 458805495 534279875 736703717 995475301 142711869 867926267 870874050 943845754 103813220 319793267 417907938 913504211 6400517 776590582 355292132 713039260 203741456 425353782 107478464 801113502 200746494 383401921 493776091 765193017 440171933 617701136 193259796 505215993 218806730 586051419 32936411 408334951 973542922 981746950 578963506 923132495 522959578 894292660 884386544 965393111 634636008 778520004 570506433 774712571 244609023 865197553 926640461 995855246 145596045 555473366 254737838 508989532 402715971 531135878 547778359 633709031 399895015 866298193 748573954 759686014 825759257 917109393 127849459 912286261 107169283 118583798 552390210 724771419 433097316 959783113 524037773 611160137 20769007 160414892 544083846 849587963 157830076 668785308 587762834 993807822 80694393 978438382 667876578 766286704 142436310 830258484 989843476 989981111 92154575 942613932 342651618 652453901 519296430 626652151 306112899 311594269 159930543 710342668 848406158 867748769 856292336 878963746 988546855 996993997 664394780 712711695 533370184 727443095 835049778 904806004 265904128 528162290 312342781 448621007 762668216 848681122 973858010 973885589 893451862 992958368 325730396 993709615 550388479 679834733 680592616 967266391 980634865 996810921 554266519 874125312 16627097 810244714 619037425 801821731 107452874 811719041 922240916 954656674 410130736 955652356 29285450 277860490 458733897 569270070 452238766 695691647 426509990 651038789 223886766 841002234 231185225 914055264 456870648 520768523 719629135 971846263 159731355 858545325 517814072 949784607 768310568 926930083 803978820 870941595 92353854 350961001 419854766 845649403 250013954 543270814 59916306 733143004 675953797 994978867 328925568 346701918 688378076 695840879 335688746 915071201 916787167 980753583 421330277 849619246 467956105 963390575 611085605 949877387 928882526 971649582 308405332 960956081 389446372 905983487 275360552 651863686 858703718 885870512 75885308 702286913 601092374 997085504 53125106 115199712 486474102 530801530 811874568 912428669 774034637 899311253 570677506 806066188 61486727 375610014 682254717 790944042 55763782 783150113 629793355 696361238 380978792 986773888 450820125 485707186 482884858 903951525 767646529 967878870 564887861 909992486 140245490 642179344 296772255 867801842 845940859 882715591 536284179 872762553 956572211 986338046 445393883 455796094 617025737 917354574 339467175 581343373 733369999 744497239 688555970 818324857 296745719 973630046 986254209 993185875 384841515 945557151 556356389 757230408 91923100 688696659 943665426 997505506 316975303 487304232 823523960 926080336 682901775 755470499 32861916 278307482 795103119 966598282 809563144 895103871 938676691 950939907 364833018 778707044 201086919 941929771 495023333 633365298 889222980 987009815 467710909 505215847 517770518 712080351 605560858 705933951 745728796 876912329 769483525 883604350 849665475 975543247 481688522 517184922 195977877 270973493 762204977 989382397 730315266 832698037 364048594 637316478 507791586 529030881 436244353 466745719 433559507 566798254 246452556 452084212 760463646 908297670 393338518 812364256 659684162 677701952 967128859 995077019 927253072 970555115 854935041 963208249 280216816 911478447 892169497 939111380 561953341 829982230 382982588 453394275 524320493 912905372 173461896 586841886 615611243 640299361 259690876 610044584 351044692 702808987 505233895 893502199 675433643 945359393 305978233 309025760 865044813 986627793 119708479 367977048 271996560 396693659 821545975 888048291 143249714 837112449 311666565 775352148 337747181 971378640 915605569 989648372 951155596 989383976 985868818 987984165 236902319 919467032 416329741 992119681 718163395 772400543 76696861 389562332 440102626 441706112 922044725 985064987 365015609 737157484 553147396 900548531 999481355 999781265 380978337 392369507 451320172 953865145 355516033 699998561 535216731 744710927 806410751 848508165 73677372 561672404 312709827 513034994 669468029 677106200 454906396 972907205 110376430 708137571 612616923 862841333 780892621 911365357 673664684 915739243 216071483 525712593 243266551 826628004 799894528 980168592 149232663 221061821 438652979 728824328 978622137 982103528 81221314 175941191 254133061 460275050 86532352 732214516 881283579 884548919 123061982 156851812 428754129 673887662 150513738 613550290 441717527 893423095 694090257 761747298 535619629 824545802 158565426 850152160 701289418 825230370 338315091 821790291 131023903 979845656 52899854 776276803 101086389 841784750 293488877 608591472 136313224 776370440 363509641 664631810 240067539 445772957 140212831 933643835 256415769 987491031 296360707 936292404 738389630 864599536 960936788 968625085 95702440 546444681 683676636 845129545 51124891 226051360 732613338 926355370 360144034 807930065 48491348 685930851 960590159 978791243 886180424 911207354 454987502 946314171 864132842 926141739 28229513 415490117 575813745 708027386 669926326 776543262 53846976 957698824 206556002 272258213 897660411 994182641 165753014 166801800 934158714 979133327 380509197 631863573 180477589 420647896 419380215 481071265 146069437 598828553 905880923 958858428 485210095 923295620 319260686 875784640 101750482 911913965 299726749 446911084 852998225 934018613 282983973 462098200 577709396 658124973 833582661 977900914 647199708 835658559 991832307 999940615 493556034 605731125 99537024 905807530 947930736 953373381 778323472 824887591 21183026 528638086 669439563 969908973 80208723 753069583 462220165 812606009 320860978 757756198 792160290 848814738 171731427 722885509 657817435 685418731 6577839 729914086 642435984 818888841 812756547 848660227 22998055 306847330 701551197 905715502 456615071 985275427 64583138 986287579 479086766 891815366 360881344 448144405 528597306 671174770 716634671 863439865 338844993 883708994 547051872 560130893 75709947 744317422 443648546 760440018 930922234 966724628 605115844 932148513 737805041 889757160 927098151 964667369 632913994 785627225 573619804 751067239 76480381 416201017 955331393 963800594 862490432 919479718 659320690 904794783 762145374 973996843 508812612 955695721 820621597 841994210 885042335 993962967 432045963 829707184 584360132 953345417 166117213 478250862 216964665 218003117 27176823 773061402 972285677 976886040 13306063 622144237 541980536 977989714 977852768 994080583 909698308 930283871 131958469 600100042 980766602 991816639 203226187 973910175 516286462 963186430 413468855 571335067 734983663 883260436 327695750 832509843 264381290 481571291 409043521 480078812 366984538 792094551 804663984 879114205 517636708 903700209 918857330 975114782 385819235 895792511 221459693 951901710 887817662 898314801 268064883 772218890 588272581 594621117 548335562 990708476 977635974 980411413 333554995 495189891 985503184 999868805 757326612 890448140 981741767 993685200 40875277 124808888 334027151 620549331 950955447 963998165 970714626 970950658 304563248 668118871 77623874 968734799 84492551 282830785 535205413 899708007 689428779 971986916 606761274 872705920 224102032 567883717 65591893 270615803 45660117 282084653 653466894 919613108 595877717 947726577 143215739 418888016 575020546 619325997 592954646 973062942 74695823 338773555 170732411 348260931 483695893 979080564 388517530 887889068 756768677 995647178 696443958 742631296 843789339 889661923 995706880 996261817 868233275 952216321 748108336 973583273 944797766 963762349 376935564 955607484 459724901 894279174 938132036 955346033 929728758 967651677 575412966 652859556 876551232 989842964 160544138 541221427 876732051 889318195 959014914 972102363 758857362 947929220 239299107 270571586 287262423 985401810 720809574 843849947 545376983 653645295 988598228 992273945 220284024 980001953 811236145 939888272 79355996 878398953 879925634 974612178 608464409 667616560 845122396 918132755 859158450 874518364 671218098 947206566 205971179 731035614 40648991 387682626 46653527 561083392 303201166 833711874 244461259 720286880 197103904 821625939 683390297 856386367 764103479 863703091 181760984 460335801 712047707 773320251 741529608 778350887 855065964 955875037 673396426 908012322 786791788 848220408 470359266 727634366 731279109 831321648 600446226 932589535 993434898 999277494 507232152 595301952 578485375 890697203 512043241 940892335 515510067 883902343 725587871 746220554 559477141 877869297 353964081 653923844 667140857 829798647 443402359 773459556 658318774 944443568 766168526 861648273 620467034 662949415 200210930 321849180 438787696 497896525 600740998 965683598 163387973 416607640 44614722 166589798 936298920 947202062 123522120 428421927 758807821 859241719 598291812 892520873 853096838 922475746 627829123 745319465 38221640 125546522 340065278 541431781 539658834 942877592 713143271 878054910 305868982 545645452 34561968 307416024 13166807 594210227 88507539 184367634 223610232 754354404 491477515 582355282 289280446 828927779 673770862 706335533 773081753 938334588 611275387 916353577 366548312 928842386 860959580 925268903 992499720 995148153 463094831 787061640 363450334 802993880 822361124 913970513 655997370 724017927 514907377 879186281 140678205 650304606 436139960 632864164 362372697 815853581 311502464 933190773 767318402 846242362 126824022 365146473 993789214 997742088 636585996 670189384 490756902 778858320 517130709 935938213 113627139 674825582 530126671 959323038 835674220 910422843 621747682 802903542 417889196 470574024 137997323 918754963 854456898 938793848 917068074 953939742 221516268 241398251 784513650 897776605 158675643 840759822 767363595 977452144 929334881 946810419 61054848 841903244 459605065 568344425 125804343 647070757 265093240 898044045 155899922 313491354 386580504 452095345 996504152 997277790 231009127 711045230 500475656 544110955 482416883 619802390 446640680 580514247 482836029 715953538 608461289 911315223 294604260 702868901 864259312 903133518 29906352 140549903 187960770 873394104 992856250 997876001 276805965 586364230 938771384 965108314 330985959 862623008 785025437 919068095 774690848 910021637 492242622 578214875 469058822 758769501 862987166 895802011 744865555 882435101 416005046 672201958 979824527 988706566 435073880 994932181 874253685 947706691 585648003 774428046 582449069 928561291 700539521 968532710 793379163 861571558 88889287 434414521 654976004 758444699 733521239 946033456 986352779 999507864 210569683 542901136 610674173 923871446 897359046 929029462 364380813 467510972 933942258 962338639 909506620 941830214 31367259 326292699 61228678 505415481 622540859 896277499 858133336 875456896 74474438 890806818 156455435 674139177 432808195 774719635 273734263 692056150 956386672 994866513 862078446 967368727 705276252 929672245 204867483 672530233 399466217 907817552 606648654 889473294 931694611 953431088 569679921 740315568 217299574 439291024 884759328 994579487 294163664 351843950 840245030 995860825 824564179 855029297 153967261 823594117 674143005 845436610 419954622 856485325 259312587 897986461 580027898 772388287 860259776 874417055 271600574 655160696 960601152 979832625 348555933 805042192 291710887 326450209 547209556 870135523 498203354 721607167 842264751 884683231 538317796 697284360 174682288 310956045 975841550 994270851 478218912 673093363 653882686 668859084 818859192 878096892 439457955 599796495 59064099 554374964 260039575 476178604 315698877 741363219 871988413 974758202 385009003 468713592 356414122 717149896 418650809 793000073 213471509 803891653 361371045 937677816 14483693 700892028 239199777 789163683 424362044 622546156 254426553 644318555 307157381 488410072 941898365 984228468 784711989 843568752 357769836 789821182 870081079 936843664 546227546 694621789 198175775 374475825 862578849 864770340 945185348 951442861 119144652 842122626 165664232 803919245 195445034 699505218 571280881 688029146 209275050 413920177 901818940 902846618 933943308 982793437 13802763 513616987 634488871 722272313 836186086 883593560 841632609 970776769 854704624 896213196 581719781 638203599 427119923 787139875 468628630 698990473 870164829 929153244 858732419 914893371 605364685 920996191 34829075 875705985 495407451 532541604 137886646 318225599 565068156 832496707 735340280 951626476 597095907 884159087 494878050 590260829 25139123 27337467 175616383 443555569 447257802 576998296 96453499 860922826 815253463 996948027 366750258 456987415 577091423 764434709 848712719 873631368 481387532 681161288 459759001 559699050 944440643 985066058 691888419 765418086 134430117 573121722 489954859 953335626 77001015 146233866 235414198 815585977 821346063 837984090 467772683 609310973 674939386 717441525 42325351 649966506 62615207 336466518 959797522 995798619 26495997 693654300 44913980 578909942 193053417 605260623 113336685 653527929 567006444 925463683 326453233 571525862 269542707 675212365 334063429 921175361 662949503 810069545 952255718 999264482 734615783 945511571 7235716 878588868 942340986 956134788 787421352 922581947 264320996 677157291 79512549 664382843 436409853 792853095 182223517 620369329 64980866 786146053 471145780 542380042 114778391 189938885 175279798 415385231 71625444 349096299 836958519 939143547 816168428 856911213 132005906 720804489 674705633 835317621 584625008 624783467 313050399 353736424 850586195 945158330 912698933 993787792 927936112 936525078 639516588 739452572 650722514 768434891 522698046 654896362 56182894 679040806 776162228 831152761 503883399 626064918 345116720 530127824 248459483 744722282 860319529 946380398 147170170 199008702 496423249 606381546 707328068 976700077 701275539 822023629 123692069 958588033 891430289 956961397 921432477 967218401 759051982 760633675 502553855 542365686 105586607 206673128 762467345 798650621 366891647 549053442 399855986 602130789 127781386 825084038 958100513 980604322 653990613 677559926 348025198 543376676 638469056 912407057 735357406 881880080 893096754 938708894 602262908 660994212 788914999 929271666 623427900 794963511 528662921 968440854 860672679 873121839 924435844 981791100 303435879 957038318 769115844 981300781 206235054 250738318 703664990 724853710 603209043 788621812 667465995 791644471 559538139 642083478 629132800 886255632 9485867 605443760 555785335 980951522 951999222 971637041 706358669 846592533 804296781 873625250 389280011 694377082 193931068 360748993 64347106 880230909 600495038 971607853 350209711 802586849 379162369 938556030 550167461 584320069 409113362 918338396 921066644 956349097 643384096 853035101 330984354 535974090 975515096 983838881 679207384 730190829 291213846 807968772 531608311 550500263 377163451 410582113 331032465 955877911 854494339 886055670 238933365 407362883 218762941 512906014 864631255 990360846 528668505 870041160 579995162 698969516 63816116 340561602 851026540 916133649 236879151 670449128 255490188 845139313 610520457 792264141 168994190 334675386 725279146 857913853 633798762 634951571 583371420 796626551 301120754 461553674 31166381 972724822 826891214 898446730 208150380 912806464 657154622 723963949 249859558 755780650 561533432 802257889 367143593 685270913 544639899 611196814 174196016 955484936 866739875 992640359 378570636 621802820 206059928 902903372 804932050 991754512 471351020 924570796 941942631 952660306 425463872 516488473 743370216 939483799 783732275 922362050 419174662 972947831 953695836 989766850 834402874 892589015 960254448 968453223 812305987 879419793 981537384 982038637 433790832 611642931 773695420 906982453 975200911 998239177 933443317 987281594 281637192 726686905 179581664 827060436 839749006 980493025 355672241 952023267 403789922 916681965 479269641 778258216 480197424 754602797 852548176 902974290 954403822 955626960 546282857 648469413 870758926 890380309 171923001 224328358 825208294 890926148 646403094 999204866 727319036 880534870 758534399 860878139 19398294 587334927 38497510 852540750 28260058 187570698 421553366 637617380 482901631 695645131 561869713 855409962 410357721 679562274 962661986 987557903 490500687 884255023 467429842 712619609 312417928 732296581 811174964 815552433 807118269 883605789 783772337 873300899 798151424 998672001 474066235 646551139 240637475 248635625 649201954 876570355 905815431 955542242 678134780 856527382 877483943 957436626 413768520 910122328 233171963 482039518 513670316 560701016 375787417 389587017 387695656 946226589 634667732 787945141 43177032 537201911 822942984 841436481 301855106 591307369 991007697 996830979 469094828 799975400 108891626 934159387 486731142 966704608 514753119 777443279 31248641 99241626 349882740 687823544 192552085 460325975 236174893 958269786 322208755 590251937 300241168 437530283 206018521 989598456 688622025 814259924 822646614 973293299 575854617 845192478 591756849 764492248 652744456 956189467 464810325 761486144 873757333 910483250 445844457 564798717 79824597 279406607 176414481 859605071 888583095 925633598 241511531 920143501 193298780 656305746 577017024 630837469 8033087 147538402 766621852 998323537 308539739 490061569 567098633 580036343 783229877 867827256 121660200 198816947 115789174 683165960 104264599 493582190 564830350 766554713 820138275 860957838 44790080 276637307 210550828 875003614 817345495 821650472 884266015 895757712 372356597 803627406 618832621 957209209 237796916 596337559 979922431 988484853 816550796 913991232 260999649 781386830 818393619 855986461 593707582 665538347 649461251 822908029 468968517 990444086 636927874 691850290 65590334 230932220 933368049 953540501 739356556 896842300 319265773 420252793 595038120 866832834 252788258 451296546 942547908 978242540 570067747 850881459 542959990 817551995 460747990 573006323 203763603 767554130 909269982 987613626 894706966 912631872 665592447 704369082 244530396 711565025 506289215 976037980 151643051 669428451 15079421 541952151 963690718 972278708 474371691 815421579 470418996 709991792 73674829 710110610 873344628 975963064 234685253 385854769 233792635 560029571 698027519 732345915 941394273 952666030 578606434 718689960 888095792 968134724 454596975 515657278 661695028 874170638 590951996 932479953 897717169 962350297 274364291 390095968 178722 170759649 117675924 176298517 487105173 531649642 166066462 425235244 5032995 43993127 526951793 554906441 804712028 974640137 509154075 591368468 956015203 961791586 264169958 509882897 898227818 906538286 742520221 797411363 709837851 713862275 464452964 624762983 859234780 883302605 547142 127897175 416561921 795457334 958981304 972338690 506030674 682288001 547255641 869766761 877147958 889657695 329974652 629382555 522789938 771356734 569672215 855358763 79589700 978539102 209098558 655763140 323366071 812738147 877373676 942308746 818535937 843719325 269797295 738731926 330675404 765647254 606595539 899626991 208130131 957396527 454224180 877149478 611140390 994074392 549918355 644169244 48566722 151146433 939767112 946013750 606498198 617752551 885768336 917488442 561646564 593371035 901884740 950307312 789718393 846820595 976612933 994561626 698991235 848175591 624528503 977308059 493314106 547074237 265153607 603767700 282476768 349936712 106075026 688517152 673595440 788363571 332859203 425072205 550903376 784191139 241631721 252699149 108995597 593336002 130755241 577411388 806338997 939625699 58088332 755573409 499221210 936470216 118433059 706228641 353985278 828448253 701953920 834217200 857119336 873682916 397356538 485303725 788802165 834853778 215549555 695800694 967872539 987798157 637798730 897296137 54666576 652478916 71909871 878610335 102031983 568990218 815412775 843565100 159995918 654157235 965014802 990621786 43920412 510473994 960798464 980684446 702333389 931356524 939600415 941087485 54362213 646775350 884182095 926037442 995385986 999869289 552177187 844861263 828793320 881224323 355255596 365991305 761125830 937414960 480308291 795945523 333092935 647156562 717075423 976938836 868098608 982000414 885799254 941434491 87654351 810752997 628356288 860690206 37450631 431802180 10274678 447441775 440636235 915797561 424065215 821733010 830751450 934434036 896332435 903872384 856681838 933229472 78203048 164064761 412629995 495984130 351296019 547690554 233669001 826244738 570256655 783304207 105158846 518767128 115325083 500371438 336195981 767329277 346318860 967176241 813080682 868082911 95004497 857201462 466668854 733487181 463096340 480219296 520792624 526954593 242005406 909704697 245918114 438002733 854858470 902567497 88308085 383525376 581671919 853414683 410141785 552974457 84153568 776719610 838643906 868182090 372832684 858911471 686571319 745636777 443768253 514189036 146249857 284778898 148531489 618561379 399611641 947674540 481457950 641359371 291945655 881473585 591068081 806239510 709637517 826542550 249021159 493065876 956420889 984456252 958484876 989685869 299146369 486492699 144221898 700429857 465993050 482446684 700104407 974095833 637977256 944838289 90710371 447003790 152718651 885091317 228442878 231308828 563194718 977570902 405118121 669135965 193758831 622133703 353163638 829931325 338538767 931012706 626224332 783113496 707621492 993370879 833535051 970330182 488840083 621181750 922030645 997020639 861088831 962315883 87878804 523745482 729699387 954261102 162188887 873874343 414471727 514899660 461362572 545062273 49528711 547211749 622032827 879592220 100396992 636801231 679977663 791623188 97221023 963008284 886490759 900676025 365267018 863568718 157611590 578407353 490958226 604337410 807514234 915599634 771969261 964440909 282174090 523460500 413028044 984878794 379269731 921013538 987919635 992093149 675052229 925104667 230455715 516632126 113274862 775207329 2354620 896195011 819127633 999023470 509624949 799581466 87843384 805343793 151954413 556386288 751137330 920193819 609691469 899026341 795483831 965099288 987325727 994941879 411129661 572811019 178677424 611538174 834180150 967601947 620775839 789651137 36313182 66940364 161183141 471556174 233193422 309721357 988652730 994786510 398691050 640791313 132325930 348697713 686415057 699574652 345380924 475036667 463785658 865185599 827658048 835061538 864031062 996026619 2109215 206961861 836410936 911628394 726365196 755119743 575110203 792176234 129392234 381179328 989363133 995142695 644073784 962995605 85239749 780265863 332371724 953448023 735425243 966407722 640094477 645381885 426414943 467177677 191775887 851960439 665422775 948434912 11575957 796322941 329484909 553567967 541946464 886298867 540354914 852406951 180752254 977194255 749315682 776469137 668778198 977544123 549947774 576935935 615792071 756723017 182504086 596691231 449030299 560743141 774086019 837466832 255840434 368925371 939467613 997191572 18044125 781376810 126328995 767022008 638474699 750268817 124017235 230734990 548087300 757017662 322293219 402863167 444528841 803681747 161521039 214445160 242137362 984199627 828621742 920909361 918850511 981298620 984211179 988938595 956996855 968623395 793299553 964830246 725093669 728079805 410719420 984836656 437881568 906948987 168729132 888961033 391037432 654577294 400161932 804914766 902686695 977783341 160961405 448246088 380224776 958739562 216372451 501126609 377363774 990623151 497728519 847097305 62769836 136305997 988845556 998585670 703055407 838307363 863027348 996933988 595557984 766086735 665297572 673743059 616563361 946672063 494612938 735823426 486667306 858150002 22598075 22816104 510981321 686969928 956958176 989179516 299076594 492571852 186635825 955133293 569558383 679764592 76750854 976671742 413694935 782852613 170958520 578264410 915756497 984573372 892153194 914763636 12296474 326730908 958500146 996491774 147050276 593491362 667551889 845505087 786003717 796822416 704637593 810672181 892154928 991797093 225359260 577715558 924352590 933131573 886042029 949441792 182938512 640105811 850270336 916327850 705851524 768039325 223094442 877044240 989145507 995615576 525953935 985287890 416676794 744468492 824163845 896843805 469734418 874899633 582890181 598613936 666908538 716886659 925645812 979410147 537780396 694944822 187342771 951176131 321192324 698531645 367506314 848324188 683398297 825892106 469842959 934114975 289609258 453368705 107001034 286077085 859670447 981343495 439660294 883638773 390267887 591650699 443381395 532573072 706508078 769098060 735376247 893680995 676327390 827661251 56709005 206163132 192179081 430960933 893773062 993913057 911685215 934224654 67600561 521411839 203622101 855675788 467825068 876404527 18228815 729306986 566011921 570544818 615180631 920871185 555127757 720380759 498606002 649368091 244805994 423234705 562487257 718384138 863352967 910716761 663588188 676455021 819092149 833524125 737082541 743291362 908503439 911862694 878114427 972729152 755517126 853288868 248569022 377363142 797511044 938061686 452082618 807887466 55991194 432114739 223031863 780897232 6079036 388087419 710900396 929872792 186811634 973353180 389993258 889960605 957819826 963865542 693230873 697535217 412671022 865878877 196686137 289137832 459528385 593049342 553947366 699385665 127173823 336187460 870405425 973000060 896309179 932026398 796685342 980630572 30136029 801983251 25465328 530347168 591081157 835863254 726090480 946993477 920394113 990184319 472857669 828321307 938531297 967153432 334023755 488756225 388819712 427029759 492944739 715913026 716634049 915483477 60340432 858830525 704431920 810717400 64884404 936792495 704538724 997620587 438337811 532750002 528390111 756496265 932270204 952688799 20043490 330423246 895593194 931824713 537644198 752474997 995601768 999927504 722066144 796731524 867864276 923547279 808897060 992863374 895983861 906436707 674131876 933248558 230010231 938788387 817582231 864406221 11205874 559689414 858822213 992259064 328264806 328990316 629258566 987308276 21527770 46558251 781480734 998177464 816571245 896035945 938170569 978883695 9865065 395341392 957360169 972696952 216337569 577850177 140934149 516234645 435231546 579695828 599474483 924433453 281278281 732385807 479393477 813646908 313000737 637774377 261665841 605782561 274651784 778840587 230677056 273717373 876464258 946955125 545236231 816522996 656714498 800758164 851574037 967634209 323469362 681914717 276521717 440490216 722961183 781033509 588308036 833745990 933525515 967173075 157810677 692748749 477806640 660922663 635363804 872472985 461455476 518525378 723622554 928342365 905840292 925739373 920632940 987871660 540087376 603845993 171786775 382674418 670783513 713454261 100931649 176961583 61413814 808628558 170579517 959503580 2070785 191900509 989661935 993022179 661230893 907303245 468911750 626384265 897518566 936985825 453285103 815935125 960539776 961454274 876230283 880447519 812864730 890402522 932613833 966299418 168838634 888889780 11373637 130916580 480706421 651047747 37675806 370173058 707644640 959632868 216722125 394565191 613765475 946129771 934519740 961718516 782928937 910201439 40564955 573144741 892266081 990469186 520833844 924743501 441472368 950339169 291037898 450884189 996639108 998119121 10975260 127141364 785238145 898995122 597001811 972006537 516860788 754418137 773268363 781248100 13775617 505772421 156137907 704293712 485314988 545358128 7795701 735023941 479469081 606725287 531127255 818690075 657491068 952191587 788427755 848635705 737033123 960776449 965284765 967897635 823434688 844438596 894215104 954558417 631960487 922631304 520260013 818308321 50524665 377314149 197401979 883836828 821075837 999356266 937264460 991935581 561710842 738828840 452117043 497719451 338268100 746917053 330374742 992740155 523676693 822232503 621498973 922239490 224045509 348333265 8498335 791220703 814242663 993856163 351420699 652393443 580717947 793001975 273694668 761643290 640827453 808628838 907530191 967483719 970711656 985895191 418977739 940349371 880999114 898183848 789221534 935979144 148281942 835390486 271631508 588598404 130731169 804665996 46426103 968634854 708835380 910516181 706049016 973402616 338150132 560483743 761729432 857823245 424984952 668728283 847561680 855446987 948851830 994304703 19925280 242461192 378828962 781740704 44305369 968827979 309942600 927755121 537260698 837047206 145494401 799816601 309162191 819213855 982940630 986049797 729251825 985868317 668368869 799367789 116873652 755861988 750882670 820505608 201963310 945328600 871492195 985895075 612907344 976975889 6815976 678466832 164711842 262775337 932130982 957527886 831263751 898063357 642059208 712191886 58605809 646237662 93173415 404550806 71348707 354896499 196360470 610671867 637753642 809121378 663113477 764122646 69372395 128124561 43644688 380488676 863839892 981995072 8989033 305304643 125204865 373154934 511857137 762787040 498022329 760147482 156100789 477562793 698656517 967411104 773367648 785833155 757165128 968479485 395840168 676030799 393820573 607374399 332126256 652641073 765818299 841854241 300552731 421992072 387903903 777674748 413965780 962432791 146711435 924699392 294381609 559095676 719963654 975987530 962776568 968092818 586597419 786087702 706276203 734106464 583242220 969546356 267150234 930218740 563012712 829690824 131278540 996748765 167007554 528163585 416926570 960950427 206422616 305806889 745890980 778024032 810577483 899130625 245407971 854479721 897123521 953355482 619954906 767657737 624281601 738336805 876414958 882698458 243952563 817929264 874789428 923941628 454016854 892680372 760421319 877186210 560199703 860304578 424925429 890726711 591176566 618504029 431331159 614282237 701643557 729808781 30869104 808939900 325454574 344623823 633984473 710490579 279689351 825426964 323505525 699758358 185773052 831498014 170907394 386217845 499858892 984955143 278454666 358148356 831694716 877605453 210187128 380027577 692304232 919105426 908476715 920651577 640149607 815346435 974720654 975100095 674556809 709191940 851520406 984681315 10835332 537759828 874457087 926316674 202760859 388407910 853739269 945099628 388025760 949660910 215065687 931287967 357346358 435850700 249920391 999136216 140824575 502809683 896565545 917695192 431840397 735702526 586697635 909025990 794419220 967953394 161320129 600692396 783117431 921859018 323894979 754150371 630439970 680356699 183102135 722823882 437369978 487692796 603077937 699351373 876250912 904965161 954504345 974330914 953155240 997486194 422821225 527383353 505706213 729470425 486522202 610557887 947125885 987399873 315729355 796946347 780108929 916845167 917328728 993887779 439207301 996985985 887320865 922536968 977035416 979336200 628036853 914346796 891155189 926722066 958750250 965404054 408809162 572996254 944488857 948995515 857904672 894392768 464492547 605761022 338401374 436772315 889577227 952570435 723857268 885080044 584089127 596655423 155703800 492584938 688695073 832437265 193222069 442758488 707071067 748815732 103399675 440275194 292918084 903576958 689738019 911552311 812240127 904110940 777098528 853133493 454996938 533861550 8055554 705883228 379468527 702957733 622911729 697160089 900534695 915623061 437270211 929969519 645193632 735308130 141832838 238935470 608111606 968261824 48907178 217702729 121772343 259333987 347902715 886744648 520676760 574191993 897868499 960161821 844682127 949940743 882125119 956481885 817874033 830581829 921818025 966387445 33262161 271158204 880351704 937372369 141211396 707697645 77806651 154602330 279906166 881079165 316114810 760227621 975246013 988524077 188974603 340198530 846194391 973998923 373580744 936091044 648280042 700120357 771551189 789007816 422416551 448385185 658018442 871580215 547185806 775286744 458873610 784229716 90285075 308647613 142863258 753111014 34462744 966963128 731882427 768480527 937056111 942789969 280709296 999591097 289100911 429826542 634791872 772939453 71983985 490378695 522088889 770075241 792554090 962470502 290730632 933488902 199269599 639049709 677932773 870836454 937231191 937799586 143115643 167066364 514673454 850130364 27771761 806100784 434947646 795453745 276878698 657968275 673064187 792176466 281260866 457335777 354305617 600900210 422326116 580096620 248893628 997275610 876973065 995677122 669999347 687759460 541203062 606910425 58591530 872344235 222896685 905988885 986259312 995367445 3151891 588456384 215450031 909744640 882833725 932545179 600827874 884615087 758574923 881859977 914452505 995328950 255393660 844119430 682939096 687902990 682329052 932329436 455168333 564834894 394609563 923459730 762386580 772099317 136016664 899901431 15144841 635978083 566334172 940334915 392749056 803211319 153068788 783132980 867930167 980458936 511656023 964568915 740746681 986084660 936175007 973505243 642216367 914000859 278835355 896658926 610394927 940803514 617916052 903355300 39276292 365676632 701678125 757382956 362504337 688117303 896028583 947630802 450872102 528247444 772061307 816512686 345453149 821308466 606722913 944665093 540089466 943842726 409944736 826700915 432252265 958759501 341725452 664738373 708044808 968205636 186022792 776746264 293394114 414142497 794801995 823917064 243708384 635349729 292168094 892151284 370816663 429278788 528642478 658574879 977885520 995865775 348543481 887712620 538010410 592384892 327011768 669780404 132577765 384589296 812722704 910709120 259098677 927863885 723063765 847365996 656591037 873913207 105432705 141245230 380812548 705945648 58444124 104595600 313017294 788391018 777915351 969223674 1284567 567180098 235489846 952367116 64988352 953780864 355828284 553750453 470300506 530818830 496149931 511068124 682737545 801466829 369506958 988951937 486925892 531596418 449946458 460263556 160981015 314593673 658899490 992400628 270459010 513892613 290330535 849593764 734845138 967341176 319565330 675209648 938432015 965318063 139398009 994735282 285639063 450226139 651406985 716852410 121334234 701003612 287033914 600873241 341697840 395350912 559475332 872538156 395712667 882015007 196472758 341343511 30735507 218878868 80935823 260972802 420376089 527777141 460073107 820680516 440110009 815530275 937269266 986290936 98674116 569227383 683562237 869972222 315701058 500780430 979815231 996709919 692349665 903031267 909075090 974728289 53844087 869575364 860885280 913049644 571033394 702579076 607461279 706091259 294514933 989416265 845898359 950767036 59592311 219254051 922716371 947454814 305011175 715934005 584983373 836728129 982816206 994300181 137125885 713255006 732452464 978885577 606131342 921296267 594419696 670904598 889087674 996781994 48124173 70806514 778498496 796784488 888333735 915255266 469552282 518485593 703149822 923356806 229672551 782372609 35698445 390317213 694020813 900735804 37617063 969082969 20584974 138486427 801557415 975627516 668828953 787430408 521424903 545810432 648287141 866922471 838211905 935930698 770218729 776323072 206256217 434552569 477544565 591368075 349433406 550422099 598996899 845929786 742255398 795054241 370069283 896301810 301182729 927532337 887858751 929543323 373243184 814262107 238636006 964067877 280087102 588282631 918004237 993923344 290951446 667190758 219113540 333346523 572601672 735514362 206050532 223881082 375143917 873962437 12577016 72277007 135970084 753944401 850400103 912343629 975045701 980086851 731380077 779792908 10967050 249095550 688232437 802645899 154148404 446503625 491310437 774302677 369595389 810852604 392439555 410438332 498840352 773857509 685605776 984235046 369601420 421310079 91440168 606794523 797504015 914569551 674648665 924687775 894970011 914184200 287620769 687108668 161273452 309781663 41621000 738241125 884556033 972164018 696171039 750644815 815304127 919896311 840278919 872696357 352804554 551923043 665920271 724180354 259288348 285073375 755559410 862316446 53147333 197223166 58842076 223167808 668370560 806956840 540142765 599264015 486687820 634346334 279592633 634820608 61991458 263191756 454160667 946802478 676502635 970268573 471520720 738520151 910521332 958572337 259933458 932425797 418652398 928347355 890632160 978379295 917326198 971586169 942191134 983919111 781126726 849105191 715433912 996945993 319192797 433722530 622040100 636892643 482395774 930550358 965034700 978065501 911464758 967824680 302367982 793175665 281466136 291561760 633951385 793988612 929357662 991855652 155848954 406109988 349740123 919237914 416685283 554988189 816479502 995409669 797674369 852865912 962792574 972423448 226205938 835532720 45587693 818048089 151556592 168741498 25690089 589713404 412914197 699999884 350531840 407613843 215037498 626977823 850440481 973586563 735697477 996372897 964573815 976314253 829592995 979523271 977448697 980420355 412106465 776350582 380275645 633819413 184386600 500113927 372426832 587711949 4640732 465051107 734634066 855801252 758649271 808443180 565179522 778820099 314232774 917066293 86320613 857415715 350417951 857041110 313310576 787886473 504211353 675487646 291712308 518129268 829779992 861845336 22767258 753261120 767332162 952614539 265670986 465025753 514140074 898923404 35999753 642750898 332169079 478863536 927931652 998175457 546602944 686801531 41817768 485484474 997163143 998508794 669899969 837525071 381542928 720029868 640518751 705246905 958912467 985824808 804164251 995058681 180598990 233385644 728711105 829668843 939944397 983062021 407590134 763604986 10469731 975342713 309572768 956882471 952547537 982090295 279653216 498860343 900460750 958856070 288726132 390637034 305605701 628629263 170991425 581716625 8170774 846685877 627458773 911919053 160006320 199070594 575605202 634373415 448757916 652260468 500659797 616741402 632239241 887403500 702123226 939746178 912024260 960331919 2098484 300554996 621113627 940742977 983521881 996376418 727495142 748153004 16271614 132482428 499469987 863760774 410241073 895799547 684732373 936442702 99317175 689980806 910428594 929177782 31738548 731525026 45735662 225037164 611090382 939911080 729042085 884024020 734709154 908972691 143689514 618081682 274312562 343536400 975624279 981901967 371137067 471252797 171976900 668561878 476792374 862993792 596036683 817403320 433778978 756958915 309449602 633139790 761749405 906667481 490173332 727770146 729491763 814567023 388604388 672265417 326580949 753708156 656606686 970547337 482331455 748403156 367311259 815923309 863375429 921605952 463996910 734301757 969833499 977238962 54095202 411665780 635664926 728728118 753130827 987411845 762238534 987732511 645026136 794016102 459921344 784773228 209230227 345035287 464134676 527823393 188593974 871413701 593530681 716701001 23201205 42541947 387899980 915190548 744456689 816333432 832203832 958473385 457902601 980929161 324853222 346427297 200775187 705502967 625239176 626182306 429622712 938755913 717429559 944017112 522256290 707889814 803168162 857866062 910027416 910147191 351893820 489233970 722549702 964427740 86329332 841109481 255079029 382323303 149840542 199728097 516487264 552260716 323197741 732465994 356147397 681490896 731852118 875898994 24237658 358674707 550287257 557143963 573721552 628515850 699115399 834150928 927749674 977618116 118342621 389960324 957963969 990371536 40331629 314278182 310065041 479113367 377916409 992486097 115537062 815486608 55084393 865707002 435720237 775603948 246860460 453841162 844656371 948982018 275898947 377149285 778616583 826734563 599726464 804322051 313157956 655048104 396380736 939037153 149231111 190887215 629610235 700268029 283582464 703026538 499429528 642311838 647450394 671940601 148088949 842230649 104712192 329089772 559819874 855626049 942243030 953434415 33873884 568099504 954262233 974159659 761008562 781340518 500029345 978021764 628302291 729798103 376842754 933236038 97230290 690813734 248618584 966837948 877969102 883053318 791514301 841315933 998574642 999191673 22999521 291064810 702809099 720484104 276956005 703829281 776771618 910777253 540980342 719061877 569517171 628277278 26963268 294748358 479825675 817933935 170691543 399247962 151296183 499105202 674554426 864568747 964431143 984384203 500838056 912644721 857120362 928096310 51150134 787738414 993383574 997892715 484877032 688761263 999196988 999919202 559599785 668437561 921563525 982975687 240850648 631719002 260147089 298393514 698583435 889152154 898865718 975362616 198166688 694510399 636343346 896745859 165202567 372921700 323163099 407552751 744354371 810368285 599138351 903421927 75514023 707148627 162713104 733529504 786179293 916021520 879046757 997870847 918026286 986095856 46153479 782795591 892164177 978507912 538438906 577468881 654610121 731476346 388642274 649706045 143356748 599197220 899146822 931156932 700279769 943166094 472123924 587096707 837682090 969398095 318236072 405456173 10108735 287712432 417629637 850640578 509534777 736051135 884257827 932455647 910391197 932206078 638909974 736253405 960926117 978886874 464408825 470547733 654563200 664745339 323310314 606703791 264698514 737739101 94318763 841708880 783404688 976961694 938623751 973446992 96935460 162927649 305852808 860348507 727590053 872329894 110663049 930206529 865687417 974393833 58428720 696411073 885369503 992556009 553863944 605740155 240982705 364120517 709883818 771521762 424775497 820082996 561623583 682606713 477942079 573403599 324581488 516032545 357147088 945523784 183544569 758310202 953294303 967516497 807136010 829909932 285716778 382833255 28281451 581326351 949437570 986844369 890256218 915071593 255235076 336880975 925405472 936123197 231276699 519884020 405396087 638440896 449042631 908780680 139511081 717437519 807910978 881702575 4972588 907165619 143711311 933333211 222535459 263776502 422895838 693765046 789846292 803245608 45925915 777488334 423584279 841834169 371500959 667567337 982184050 998490215 658543236 926630350 298310777 948091750 551737118 616247874 77392588 90670618 412503730 814471712 97768826 442391468 317652449 953751095 633664616 671026985 845961761 938701172 913369336 946452308 836122718 940724053 770289298 770820777 585375670 673304833 174918297 939300560 844394494 894341631 746447245 973825354 683214420 699304860 855605388 988675975 892008254 977539434 84048684 786709152 538140098 641649743 359337647 775223410 474165791 567223163 147000880 890740734 959140644 964428310 408328522 628830593 608008982 763818904 156077034 951438271 402736599 717343416 35335983 377427371 204095318 997837495 69310984 406299368 805705856 941990431 436209451 444473666 465131272 506861013 825996858 835757621 578887925 914775376 581918587 670069291 994097387 994135422 285040814 355154444 836276852 977622971 268995058 996109192 977856754 979753296 413528573 735675013 730069926 962774716 308772072 342822223 954439586 998670935 885987079 935407003 94896778 119609958 742456987 824698714 480399581 971879795 930201360 994741422 391373558 454569545 719911581 964347611 655018445 726607881 662174479 920325613 160281994 855925918 76678593 675513252 628549310 753786665 239463369 241730371 27732879 383680929 68351946 122811586 386820302 406274784 809019444 877558925 99490196 556443190 852583859 972119919 611757377 755989589 983589015 984145072 756591457 831712352 783630703 888817840 167147302 665255066 571340158 589159192 263678688 683550655 697038310 925128828 35347704 397446494 571626979 981395969 169076680 252241636 86201609 716890669 202760947 513132850 312755305 354271459 991676781 993675244 96954810 615022450 15699064 60262467 4910153 539589478 685014654 827108757 936573513 997281231 56045382 744963786 15802591 352856709 166023353 342241671 229250905 520731737 508329759 731766589 643999442 937191029 514533496 778385121 577495721 972216953 279596842 905643712 156531588 373561698 749436421 971073533 588387781 723750492 135699233 900756558 730042897 792496063 862709572 982796290 399158830 415474351 670123050 873524490 338489742 552261796 984267310 991070679 252814112 634733685 202296600 703062365 954537749 972830695 874515456 980351995 752419727 854315866 906940752 928510664 179453618 995442166 263938696 700767908 964086810 969243264 404319271 711983600 202260513 920710789 971133265 977083501 566486760 831227410 488826910 544407361 525850620 725983747 211076031 844959295 868553751 898302633 574132143 755310593 623833553 842809369 33228863 230073319 570642701 803022201 670780956 726630177 246236443 696198790 924589551 996564045 869817912 916948442 919112824 990332545 471683896 985277255 589299509 982833915 996461297 998803923 6835595 396280606 939185410 966672170 772375688 963552276 813112928 951933511 253409593 745061870 312357176 922735021 414753986 723567347 623433704 871447542 536586387 737341948 994979661 998287148 77582768 125247816 977856809 978304605 710979910 881426749 135703207 439207685 696811167 705245985 198396486 603068505 837731224 857388991 30632266 544603891 241508165 288302435 358585639 785339644 977135902 977757618 244440809 465316702 97029651 133954104 361307472 780301506 681663691 971605834 593446845 672511327 7719218 49222634 116834951 990324398 422075659 692923112 28328726 743753638 690077418 854718112 215552269 685673355 126941005 236378107 699929013 798719881 505431473 749028935 296091432 669418965 497509316 942629341 439626118 660651911 917404700 939183441 226383721 565914465 580940445 971724189 22208353 856831608 634295385 661213146 769340954 931098662 496697190 875856195 519922291 546359376 778837275 982506789 860328577 885434502 991345592 995993419 3843428 663019172 601700648 742938347 988427190 994248977 535870109 650868500 89700991 345816574 76417954 525407594 403499073 457374172 824201116 887800000 768433760 860691855 8102832 511135469 80573939 362471163 962940735 993141064 721979595 779394361 45185222 939872331 947010364 991481238 73535972 708272397 40266957 546585210 751514426 919452630 543318874 884353304 981349743 992777277 464158182 504380138 616687983 937734335 338380469 593393641 203551205 919244806 122818818 220629588 356536369 578316613 798683254 892850785 859862775 892040588 960056330 962275966 182459749 483846243 682396492 754316003 147259599 956648485 849958471 973085371 335689970 381588052 57129497 312342424 214406633 919863538 267709208 782725801 995844865 996514800 377252765 964314882 815713780 858604112 394660498 619699249 931431155 971314664 378354092 932798672 721634790 818192467 256083114 273344355 928973515 991846508 672286442 930313143 343365293 619946010 399200598 757550640 464281238 555078251 765082668 848996390 841456921 962124288 427915672 768047057 783284985 944484743 246621944 926960657 948120914 994119195 81106905 730977084 231980835 646924216 660465691 930679052 50842168 638430936 124421766 584104304 843047075 979617842 169121265 862010996 676147500 896205777 360985599 662991954 711508268 916027502 492344777 812705025 35070281 561500403 708310254 880855715 478156497 663753142 586843712 832268296 168712560 628368046 139898 671315294 783537950 859162116 360873781 795112970 84376826 813141245 412896894 894577156 445252097 695058091 499142752 712948630 182458540 587280829 332107259 942847058 678563267 924104947 934311313 967244664 791372333 894958450 576820506 653259895 31333313 105630060 329627854 516861243 312582181 988932461 618425351 773916698 803738087 883132889 764676912 780855701 876316385 933515535 100778678 101553721 532236966 952252250 43072923 968040806 590287618 624581956 450663055 986786097 676655410 727293970 358292114 601916143 850169600 927228648 33564854 455606031 364654258 823922012 527670322 766177951 224201261 329092648 292846973 481897390 385253405 648993418 693716799 994768728 524533953 577718464 474827354 909818523 49695740 84389376 806540058 987505684 536561385 821388660 452088607 637300308 182237234 813105081 421245389 893945793 376017916 689290496 648830210 697689867 206078232 504888520 62449603 113442712 70749560 468298206 739514221 824740334 869004491 999337894 179317902 760288643 82512002 750352468 838579593 949474306 491002110 941522570 919501900 957704876 762596939 981642862 672699164 780245805 631890495 758478552 680444451 931687044 856460347 858373112 882539941 981256329 619020748 898298962 360838687 564124569 223217376 635342529 842885792 970078193 530711285 892517405 813438113 833159118 885394997 969612778 282191913 959032726 583938091 842281798 908251691 937695013 558395418 832155499 77288990 334140906 510432885 832573047 391307016 923348814 759133788 858357632 3185970 783185350 919228735 948904056 781608922 795940042 404890730 964491512 543821528 806493901 205657042 247592501 979783331 982006885 684035441 780244215 564151383 929752629 129126745 444388336 429015579 742669396 877820763 948398869 633123192 739693338 944707534 957076514 855485227 913535103 269821491 780256145 979049249 988925509 386041831 699520615 580702999 805553553 462021756 603868358 663523144 802108324 36276112 541884687 673160078 695275550 588958505 590999569 937232336 950410735 106111748 677393261 599509537 909351930 167223349 404200192 793872151 940683281 661939966 688982302 925088743 960518844 69431886 954105105 689093888 732653309 845426911 948014157 589169703 978882075 300632 488871479 885776070 996352567 397379758 970237893 779185148 907072558 375064190 538133162 13017743 208958935 359932194 403371313 813092344 869191433 945790316 981991894 457680104 580686902 509948455 634301957 781802891 913747740 727197382 760764510 749935058 843802306 9139843 777192459 505169862 553885407 799651869 908646747 615481539 779952565 844562155 980294207 428284792 621056386 536428615 559314662 341151751 580209586 874894406 987700529 362924773 891678605 775557737 795242872 887953588 958498839 598799536 654208116 74428872 86072132 139461352 828652902 836267629 932921879 486866355 684476274 98356953 718359737 98635477 179075225 768309711 786968468 426943387 545739878 508683042 842974629 331202892 566492242 883069469 994780052 904609992 949867208 332235715 397496462 879798197 958199791 476413664 544234004 175792075 568169132 10637180 613164417 918865036 952355319 429673851 954646538 247629114 359867532 634348945 646190227 368678037 385736693 118028595 668927226 542172355 634256961 207627573 763791575 924438107 994179074 44579821 596725212 935180048 996967878 626250660 770441173 622319973 761241718 151662539 308134905 311645991 685501017 105956216 389682983 173943689 228772276 320797149 890255857 650063809 950072988 892619737 953746672 616358645 827115363 391011229 743204714 777234686 868414346 571532209 732181387 66951877 843553422 738752329 908942002 680552290 889796919 118045840 180376840 714293655 986415467 125721638 785300714 203554198 207903836 231107162 708593158 521505648 663164708 901712387 927386663 705633735 959851328 565777528 913285283 307486564 954364761 178019437 575321317 982825340 988393092 814333004 889656784 866107233 892808838 704404740 774354818 422798384 638304637 784976631 962772146 872259908 974257176 661991128 899863241 724476455 775499494 156158456 226902486 95521176 924303164 417360861 740197209 213390596 319113233 299839533 806900652 828382543 859689603 927936935 958456400 180624209 561529014 11407545 867906223 259779922 883334287 996564961 998067524 589380195 682734620 742560966 871028873 775780100 865781009 470655735 494173461 525040228 786428582 890813526 891974563 227249380 465233704 300913769 612554909 529232974 565048852 507132077 860569452 62024603 65774972 753790522 813263778 376215466 589770441 307967649 369755458 681964271 889005571 848613851 938780797 423227966 744863432 527301224 994572022 432884918 730901361 157467107 433473313 458230148 666233922 906819635 913476782 685371611 797332442 511631832 923089841 17958065 716425967 432933913 785994250 847881007 929766033 149879625 809581877 833523933 845896516 555263138 949604100 821771194 893397957 884066741 949437406 957207637 971630562 532871303 900168591 760129733 811622606 134034216 963367800 643763250 762985852 808523778 926565469 406638577 538204385 226920834 567414862 593093769 830713681 362627972 730175574 384253086 829351382 107289286 810152947 490925260 845377952 822284750 946128322 423147105 600708934 739168120 906105399 571681742 667347381 686867493 777985095 225911601 956256876 621208343 877243226 148151838 427542177 959314018 959366609 878948430 925314999 980662566 990329748 855216137 891168512 176601025 624428607 566445122 787004687 342355461 868045786 812409615 992835542 779764111 924394182 391320514 965161319 570020501 653040174 156729902 949822871 229951186 819999316 570616846 643453656 494359611 590076233 736285654 741219486 326615901 576119942 943049864 997648939 804478018 968588769 931718098 966525664 850984808 990896213 880758231 898572121 316927817 955609330 323643232 718394042 692893094 893047318 568044152 938582855 902043602 916413296 273099867 506932814 477606878 776312322 157294143 827638845 559366202 563228806 401343149 787787157 567303793 824814769 313188617 487282274 582066980 955436444 445775164 522366420 861341532 950248218 499413727 852064102 842730799 989126087 454632169 889991951 560187563 752957934 460545755 723910920 497215209 605816849 676381977 903959049 101276786 514267554 208318033 289900618 744355949 983549563 558753595 737229790 309154798 706929538 528305898 564825209 866327491 913549780 875609711 973274238 537335697 707847521 887759126 959335559 956715294 974774817 668616773 858237619 838178314 867634912 904735590 906428939 252144611 568577300 2635337 870451325 264284318 839901237 712753342 772323755 385233026 717418820 304786411 496047736 704843401 936246318 461451825 565457733 930177352 972354649 533140918 923774801 742180947 855427040 693561579 927880084 790438892 840677212 173496012 870721088 137385605 561994864 326099360 443215660 527096686 527817441 347894818 604852265 468786195 674692194 918039798 993878864 684644443 693438234 197067003 815255355 16648269 153615330 269145372 960834891 582258489 796898479 476663147 661232255 970690243 988682566 215146372 910323479 706928634 887946450 645241311 679923251 787683518 914660621 65412358 183567066 939770052 991678003 252152946 278705513 624892116 772788961 578923586 688344396 368397298 712186450 165006878 947166301 240281340 337185251 391488400 547604689 10188492 156911851 757729685 863695549 821096595 985127562 687998465 790860071 231904164 998639612 212396886 406687285 284356330 346367663 433725855 976461294 215852206 253602273 964290020 997417848 638761423 774564051 447848588 684952072 304747392 903924372 23682111 27103058 371188570 423761379 432948154 634723453 84787677 686062059 669343631 758641464 612285797 741915490 703922529 727651371 984756615 990264853 612738776 990496276 567519299 734185508 625504266 998036606 547495031 612020114 512748259 748775221 237202421 296569532 422629311 631835170 459589591 590753257 733391390 884549388 121409621 913919810 660522623 798652119 600407254 693313424 798685213 904735623 50212091 613282775 202488276 802580661 458078531 636391967 411642004 953553892 819045277 986777084 822700280 921537868 430817964 930680438 145613949 414529965 659735206 933082426 849462384 872401578 787367842 939809563 146086171 904618469 750006760 837212201 530229873 917757514 997011856 997693914 66749204 245498085 796492561 802683467 149994028 218634516 487750646 677523198 498940808 769595951 75631838 247389874 606448411 888276648 466566789 902316462 863080061 967237970 485040751 932926080 741499667 830148477 707823513 723173804 382825588 825435383 580722329 908901843 953544743 999430449 263222595 863227417 309153545 469067458 313417786 757625170 993508665 997773440 625731127 674382057 604045730 714963152 736535922 999680909 954694772 980074350 553214624 698301152 862069639 918967635 227087657 683856918 134476065 434385502 828176367 842032867 23333556 570847216 280532588 332011255 509330736 827447482 157239558 869238760 536425006 987685492 355739223 408185633 501809799 698777002 999437015 999987563 992814127 997267517 984549752 994737636 333353422 338314960 894317355 949835226 272939744 392871887 345585810 788608530 853006231 971185962 11071377 41637180 534015182 821291201 557509817 648014186 215440426 607383655 435019339 575578803 765965116 849996262 902344897 966260496 502091598 519083841 882442604 896038921 84574420 615104374 838416430 892342523 795880990 916831180 667769884 963546515 369071084 383817709 278958866 650824437 987835514 999692402 516405553 724910100 799488551 927235929 450800028 908910305 201739863 447700508 252063895 491639126 139811394 757945776 817646866 899668443 977564864 998957255 525861628 640788811 340627961 830737400 737643877 996050926 383254649 540518822 347440188 498644121 365481496 788883808 669188425 814166398 362579152 685786216 134878836 176803534 360253542 410444870 464374785 880693200 622281501 679424631 636371234 776287754 185712652 903703829 267547114 380893393 750564195 886942478 809072504 987922606 633511252 738892719 601796141 915937804 742263049 749219516 840079005 935073729 664919357 912507138 653556680 983990022 663617249 929253371 370562776 614931934 185333338 766857221 609950161 756151175 761065145 982698416 265597148 789870758 694806332 722938600 941000115 998824564 72200444 370797943 101196467 759463881 370631044 733413534 591031123 860219824 189834182 963316166 878064957 899427225 711228565 876423482 966525484 991525836 30371237 403483492 543610704 790804770 672966770 977201287 438713311 665806303 711284404 974692172 393365249 433453393 784196313 902956677 504286637 829031976 778466535 899471634 966682654 977342731 800324186 885370964 939416519 952620871 419949222 886360034 60228842 432948665 536429232 769098637 862031937 994406366 520653596 917616503 164679516 411983575 357485286 697679209 325412145 456671981 162361520 709397636 732826855 894540096 924294733 978467274 68307475 899606058 443765114 678487466 47567435 363372526 370701990 664023841 896941610 909358332 288514585 810652826 638010447 764536917 596347245 672980301 509855867 529377147 953292839 964953774 633049429 654720652 64214004 283299994 701537198 905640329 861009854 959028547 532895513 747041311 371843725 852786683 835484743 949840660 701597254 804884836 73937414 100930731 106287258 502840746 424409563 733253197 872697055 898855015 126799731 496310478 550407301 824666028 254219285 938997522 669255527 678987770 633122649 943791286 482175182 690338207 24469621 667642203 739248300 903034112 672924540 774976359 96065864 304863414 189301196 868173966 248395059 510711636 8202180 522461216 896091406 923898829 621141313 639829237 126021679 837136527 43691569 420044332 504402589 617921037 258369142 994079282 51332141 894713137 344615078 930272863 765139428 870106705 526521505 710281850 999163827 999397437 553881137 640010919 649544064 826398725 56682079 994014794 952689713 982804681 483163054 783312037 312368528 998676439 535853230 658691116 555603751 804531120 459127591 594722428 645223415 956233669 686735537 911502540 818223369 872262418 403403454 951060230 355334250 813261865 970029634 980757146 474454057 652394684 387004956 670638739 29866582 929146948 621701156 956936496 868782721 998776161 912324541 944036480 678256689 771574856 870764218 947551239 574268031 932781834 478025776 889378562 631627200 694320028 838749240 859068031 467283345 784416491 969882231 973242893 98157758 454392641 828277508 868053926 524236748 851932702 860011884 900943988 323756435 519475977 385239675 899980934 429076401 902003529 118114061 891411759 595661671 602134423 654117681 799011698 803773614 969221515 261271537 894180089 709826506 735811851 379593396 792881484 121692959 550441781 359434560 718590874 831090791 868327570 141834492 237423937 701729898 767420094 740994490 859897543 856875933 954807682 372724075 683732533 631888601 795737199 871595606 878635611 224299754 610501908 550913642 957402863 39873972 292585736 622383197 972094820 358484760 909873224 903718886 918957518 643602524 983723475 927343450 965277279 133296304 801961290 150538801 559910110 382161731 673013111 311797060 588854754 26980457 392663075 525111828 711227532 779318193 937564547 57419363 888221173 632000569 994862046 433405450 634716331 836809887 965856665 624528663 805725355 126392596 511400776 526988120 741764910 514950672 824120301 700037152 746676932 433048502 482722183 806773409 856990631 351656876 532920867 724492559 891550249 580559410 595130714 3522392 974020567 328322812 630943639 301170426 516251443 927844417 933519673 88209268 219578469 704603094 954713875 272038190 420620491 600473055 977141642 406113362 766628718 373954334 548783400 684031556 871206878 405035361 815202612 339531787 698781402 873900245 959416003 611785334 999136625 140175385 955853410 532414538 694589101 283992369 604714868 690774887 764642724 994467870 996358547 238303274 300625877 276475583 868222637 164309450 263219666 395353980 719787472 862248965 925714331 616455681 991930469 701716145 732677317 139422047 844995703 887681295 958667821 450171691 744985390 897690847 925500020 71515602 801343235 390920183 728982606 825313031 938694816 854005863 915823688 436898752 740101998 207138873 818325975 705985183 774513030 240106515 828538552 187076463 545491988 810409198 942736178 500898757 985306974 110900030 858830647 817151134 835517717 482403504 920215518 701515603 800969076 11613900 860757720 600372948 706481069 780332525 871448306 72648381 755943480 968659005 971426609 219230078 647161172 161955900 551123509 282319750 411807046 560817286 856388483 98844295 378688394 292943679 444308707 356723639 796808660 997256814 997746141 810671268 926549092 632267622 733388175 787690387 929634917 759768716 971889141 554744447 790962249 657444174 952505836 846663836 907596610 165960844 785729802 228007556 825401581 909653192 950816562 238854255 485198825 728632826 815230692 870539641 923774912 521591678 551866409 990333890 991587208 614794349 908001545 492955772 825238283 767365773 869840593 824735231 879942320 418488329 513170310 606304126 691234420 79478766 336055212 120117676 884637454 407871415 846305680 358250878 969890552 761308922 922960618 409703320 412880873 442297019 486425857 393427799 513132206 297565369 406293625 598982899 972594122 571479421 685152186 421934811 862982167 749166485 914979408 312745187 783616405 60384789 903472700 405350800 610151719 420669692 648418273 535033670 581530991 629270406 956054064 52446102 929383039 438399085 626103394 407126955 996894757 345999014 980115628 86203486 252174247 690242136 917028912 130592777 646943651 755094551 952513699 221641446 233445044 170063620 184665121 982169654 987860132 737702201 853778542 517283869 601369370 843524470 961528752 370606174 693249222 207260957 548373087 553305143 681331683 603341810 709028726 371847255 527715619 849208094 916013389 694477303 911168725 458484930 928910715 73268246 992819483 781054939 952112174 890548252 953383459 805706286 830602400 111332288 370127556 106281079 294080972 888920763 937823676 896125391 914215251 532101529 684412819 408029252 549906240 471808040 834257414 132387848 878243811 520996777 948545892 557222082 943218130 941210161 983048951 442376889 710894035 89078049 718350918 537766236 585854309 143506086 218134376 102069790 259162616 785752662 982711451 402255807 886135663 448389211 947955423 346862042 997052626 712056178 984808471 740312642 983996418 413774362 907027777 513367118 633805940 266383674 893652137 309800218 653668992 667494403 684038070 610190873 636830581 664245960 674339017 959303405 990578194 180150566 481127284 325134674 985895444 498667132 760318656 438431954 757332801 351487549 433200799 569427268 667615742 494019500 938999584 728705214 753360740 335305448 915420969 687055176 885759568 611718320 650419562 23297135 441917824 943543042 988284994 694514418 723577146 114812599 896807158 503779904 797449612 668307968 756090396 707684414 814591514 403290046 947625400 529183574 812962397 551606190 639903154 268550051 690327248 952591320 968305024 364400052 411010706 701935393 785305710 396945147 819728731 900971638 939597458 355220876 937575468 231519799 252453538 366522351 526733843 405040294 719505940 337488294 411903866 151337122 328268868 698872458 962056078 621590525 909827717 819499174 944673929 579972416 800628412 985833576 996224443 793633714 834089645 556501788 671617364 326113022 988118304 900947208 978475741 209709786 330739162 291401962 395968508 181295101 466065137 236214665 977037721 502430729 967464781 481696688 766196308 363004186 471041627 57240050 807730335 723018157 788652479 458750295 936090073 591956744 884690448 104891136 828504610 215376043 481300434 149707503 628114982 319999276 586377609 989823881 994213338 130139466 927847368 380882913 397010750 596918795 998218868 727521814 968439334 440371473 934508266 503908038 884096331 823996917 978486676 322979840 696980005 322478876 384854731 248420170 317229819 421685702 793423119 600270986 796055606 215888521 373324718 533386897 649767082 516609116 853547583 696092527 919398009 972011944 995338979 394190832 849351812 970637789 972054059 399549579 625437123 986509464 995661280 863981494 964540761 935080347 990820418 321271246 534786134 320861623 773503780 768145856 910271181 386939732 638410233 598702830 909450440 576207449 609604340 878061162 888762929 312399554 638306192 886943530 935503518 13218144 504013897 858880606 862974519 438078458 520832783 572713242 625734473 505381432 665939493 534995810 542253304 760402836 975028802 380464565 539594693 360333932 634277420 680614245 759288084 662110371 900647295 46174550 374428648 356914709 430643251 433660533 679364378 962880938 972285368 597874153 925688742 108667822 825369234 880832678 930018222 78325005 661258678 416421312 507907749 896285215 919678703 356603409 590640702 524447359 915738771 31034097 976270489 846917965 847507065 277912268 501678437 576892498 935831966 632506858 846205497 377123865 857758570 934262424 977985750 660923845 699772887 747890834 809200299 575959714 982662972 981244461 998684148 363210665 864029091 415503689 985008078 432239069 594511141 32736842 637406202 722293052 998458210 498639929 965443141 372553428 983197954 202121502 460660685 950415154 984174591 871404339 980033607 379915020 821324165 48117230 701771413 694483767 794629228 646609570 782826551 535513275 994920979 290321410 747504571 192190419 452072076 796275969 957995408 933364398 938758755 936644563 986831185 351926958 790414666 640898221 841125450 463205791 696494620 340755663 700949263 323830401 576657957 621711100 705276501 226020873 946415092 853132048 962652709 906285957 991764024 991790037 992743925 630875247 715435513 956147447 977736826 560036435 655552289 966222593 996321325 455393043 953065402 130601643 191957972 900888780 918369322 414221829 826554536 39970554 252024393 145318078 204303033 642953180 654684008 805020141 966558060 290572178 687387179 968226511 983028764 523526414 693278345 854096774 929580164 701745673 894182068 605740671 972266973 569049129 618906280 234108847 904359918 110799054 112200543 426787172 515315963 654667459 888269406 382658217 771068923 356276830 450208956 495315303 679099393 523304561 883678655 180956481 465417515 508762813 595476231 202201138 604839865 829945987 878193196 165019892 584565329 999325252 999979790 394445168 906964011 492905206 659450671 598633369 686161517 414810314 681957158 6195666 807869489 625843084 900560843 910160384 989141204 472321980 903428086 292058370 669664171 303276848 377344004 535044978 862635176 611379416 802953450 414494281 939240007 550572571 858258479 290836392 988316770 637500597 658774023 342388489 636054055 215666000 427913110 395024946 581555250 701626712 954669962 911460398 938083194 169443672 487386403 540339356 573950754 583500451 733543350 423900788 629323326 659318161 849369582 865095627 949945367 500539490 842127923 142086430 153294338 642424165 651479596 356707115 561193509 365529734 818667043 410377679 715304797 240933235 904571903 217807617 768406578 169817542 471488440 653377773 907258476 209211597 660533471 699792801 763117730 493201170 970539133 907051907 986846837 364911216 457953236 356425984 542939432 931018209 934165139 129030847 649074040 951142553 960947257 917530306 939719979 483935525 631998224 526749820 981140992 482396347 514481059 916549938 939770100 920648493 966502743 800182668 964169943 177242684 291069228 511105915 946517772 267094335 777409160 363157439 801587092 261745530 544565644 682800874 876020437 85093605 379575630 356668781 848922053 4043854 912268983 630808015 648486760 186920669 315539335 672916488 842857115 758720430 974221044 497935641 500563391 93742197 869521525 673355234 746000131 616962983 993597286 378422336 779504393 954845670 964801276 729017918 778167423 541672144 618733245 12572403 185249860 967684592 975755423 546983742 859429031 496081039 572043549 802851813 905470109 937036967 951721256 589310579 660278512 451695724 815212124 586678768 967607987 798776798 811292038 940259509 972017415 950047228 977176332 228467725 429563479 45231975 371088974 115564404 573828011 230549557 563754047 869337554 960581418 824681938 974595138 838080811 857385816 254245324 453766298 195196039 596641458 724135474 910480494 53016237 575618254 297788530 373075989 576536694 878593972 718229555 747667411 797444061 917419514 188805233 943027714 497699542 596206029 299954365 401644799 201187608 803112497 268076140 917914235 143691598 644095083 611091951 953329295 711323258 843881640 976080123 996941915 915642080 943588290 743172601 913460762 888583198 926253491 97919128 763976306 730543245 850677325 386960971 517919490 822693328 911088571 948872807 970837759 519361168 757064616 473771155 992762102 117460557 991561047 206750519 823361441 116019866 822485783 697415419 914608492 387380475 472297891 231160958 836605699 933652808 978017557 286802676 479200516 765433877 868087012 763041858 841679050 711477237 846418619 664827867 848910207 637124875 763452103 49601947 496358729 823014018 952629302 592580198 619982850 367025527 874532695 222610826 225131002 420878553 745606591 91676244 419043065 893817967 907573468 29063376 155922799 254835185 726021165 662838285 778746492 290066215 965618457 966563904 974067462 509435287 512421917 309909303 715446670 516673129 655801211 260982649 771032382 526491890 878700931 999825785 999961167 47984248 488048994 810713965 959183947 448324130 569534420 186028017 444396857 872485825 938172585 385104506 709607809 746056200 924838003 969485375 984332123 884407215 978470859 612765207 873026385 734667415 833420026 531066318 545402687 884368253 921558836 425903601 472848139 767377571 784789034 264538516 814448129 745612173 979603527 922053454 955776336 117372306 455636941 780587688 871161752 194964494 872802615 536783271 740103316 677569721 868905583 839631266 880297652 309358934 676436251 807078340 940558444 157749940 326077380 220440034 428401129 993101844 995593433 348518874 669262737 781856135 878937783 520587239 834262984 510404885 989586472 294896008 565879742 849062577 910612465 417219366 622639364 563390636 615356940 431341857 741065542 25182831 574728043 826906196 975826727 944210721 990059493 884101628 985776963 114203473 398489654 587956299 786652619 968311409 983715934 852110721 858124721 716891728 868629569 922755044 945982309 982918494 999794060 861954709 869269458 355504620 603599496 911044082 930467054 460411637 769748345 588498677 961210215 445650910 628754182 376112427 719698962 537807011 895887087 566510103 951556808 651460467 845765716 177450385 203974325 543406704 684140625 912064442 917344691 944663269 976682810 736220185 884120929 97703854 819162457 669633451 684077171 902097411 976684082 594534796 602911460 407579345 768291807 250619962 650727560 520406136 877206241 906957310 980027555 86441644 970189631 594603282 799213137 11964267 100869934 192516114 302060746 39679770 497779572 849708601 862573906 111683048 964121276 510242705 510923021 924352433 947541664 920215934 940119846 179131551 688493434 698177530 920108203 721204969 757710424 209442258 656566913 508218515 791374673 359830605 813540927 728653071 779160401 889040153 889859738 411153852 963625229 991053680 994001604 382719222 629186768 225298025 766585900 469185523 502784509 179859486 853275024 996821712 997670426 547813845 744502176 810215832 987424973 670089650 808205964 861628282 876607531 61820162 631691009 646653667 810262071 299943741 784378079 609028561 719050579 49060685 914596790 388036469 981160987 775625080 811839780 396638675 435015394 58818324 360479509 392058576 774203425 117001471 714419032 378466211 385174284 945427449 963833529 390086237 395459894 994091362 998987082 641167532 761175773 735449 971080686 508411390 810416123 641808336 752051246 334085012 687061372 440700191 875130640 898874076 951246270 743964218 794430352 110513332 458566793 678750249 863926337 77507662 767464749 460344944 565184366 581071043 669252717 954470112 960943937 844184845 960908469 125618853 652234848 163766290 343697807 173481588 442211292 5731411 310568385 240725050 450151288 66553071 929866026 579619040 973923126 540948358 896084086 454144764 888818449 394132290 844160623 127636113 338506671 431827717 668448930 796916333 915249111 853742316 986509191 573431485 773077454 803285880 919489596 9353274 773855242 383968303 803370937 109304560 144144384 127893087 764318542 554576207 679396128 16511223 372887683 53278182 160187122 625829673 883419749 410068998 747704898 15999906 445437357 953814507 987001560 356633192 461563972 239647121 768126413 597746945 958515006 213342754 676894048 434988444 857626464 767704732 962864520 731406596 831547348 199422408 549240002 830129168 975245486 404075186 700103044 821948707 965831293 242837719 637549101 74199442 682611710 879118023 898733073 959576990 985242517 572819749 699230414 465941523 785359655 318723522 617260745 398913940 460942096 612396017 749901479 631600993 708029945 96867459 633502125 302760094 508669311 39295333 939922607 939616827 974750507 852273773 980612362 394926132 824738722 472865224 556635939 204893346 213427464 634312440 773320637 891673917 903583168 967038957 975697887 625553405 908692603 652275282 664987588 478914296 584611347 908655240 919180493 256568 315485218 531754381 976534962 786720190 967340838 579521287 903646140 249226739 816476031 612437388 964078413 598863270 803870784 450965441 826394936 507369274 649642342 207019489 711697871 429994631 585953541 872363022 959221021 861591089 899038256 970968974 986030486 155323386 695509394 881138851 882072684 666226628 970999011 180311156 964448524 608676189 643480021 68049382 535986276 527063000 632609547 32207161 98010100 573843384 838305246 516372913 969543511 344764414 897932990 382296644 655166249 986696377 991834450 578569532 646123594 301191269 850447432 572775272 824100074 64252550 581914070 738412595 903458981 177719792 660759368 152981811 449330351 636497947 728666667 616767033 772094793 515506536 550700791 966521606 975938173 113893856 700971665 39116684 601375666 944794714 978793567 443470910 535621708 860583999 919415020 871626703 915234720 977048041 998478690 813915062 960560074 34282012 172743663 915059308 931656429 988381588 994983383 6482782 782562008 686053871 992654277 873763832 997475308 970427108 993627124 790311672 883172014 834485324 927948940 732986197 972662055 879730549 998145167 618644900 879326479 338681337 346040693 796539325 805414031 361869504 583314930 250531141 895765880 998098313 999671521 351981780 647052288 933056096 950071395 236987547 562553046 288696930 657084747 164573714 882278871 398771214 963240143 404682946 652812988 166445860 617647682 501509359 891650171 799510551 822260246 638438715 659437001 697381223 698096090 521102894 990673382 946448747 994841479 590576156 927909157 542831114 638449649 418713887 506878458 255157883 922017831 652569896 911210267 990526154 998858354 912734780 965701694 809378283 984052428 129277091 479837179 991439353 995354399 848199044 921765644 94957909 463394035 7828325 748135965 620694115 728647459 687623844 894666624 604882962 716828254 964243080 977205036 938698305 992812008 881629538 948666555 372086073 698101435 688556968 757285946 252264018 420440399 981547910 983489217 181433285 763513912 57408262 207978049 608009862 968680813 188675939 810680962 809606488 876161564 482213861 560934431 726633224 961581287 744441446 971813027 439344375 789679853 743818898 755278248 446195211 860467415 562263831 793543248 816646174 900495575 672892393 834353496 308749607 398534075 189763267 257408874 847603488 891685689 929268721 938238982 533646881 773493633 310127416 892530223 141563530 282679263 328423003 635205345 368484611 654560204 625648053 776276824 841501858 889429389 522272389 625182430 179292560 542726522 851136179 989642918 426310965 990159328 953543400 994137617 426680200 913273724 240033483 394695730 550669443 589751204 726889681 837814509 545105361 841083937 531787792 655197734 227263826 317560139 929032314 978360539 739813333 845420373 432258042 748153964 414560035 673463773 515032469 738999900 887994803 896240064 858150645 967533039 970790958 996633513 724143581 821512395 173743688 701051104 330164155 917436381 300927303 371356061 373226813 882197255 344326870 937101913 51293148 840245768 625817478 907741821 146520130 198651153 376268431 496649008 536262419 692656381 980376840 996227992 211476855 786215009 53160707 420007773 914709353 998006429 50780251 178745374 577213791 676122187 133562978 361109994 263109584 636232170 181300833 756782631 714573747 739074381 317618269 685507631 307123259 969136349 890635304 984070733 639329608 858019455 244865937 455402859 921706460 996292370 478333404 999260762 106231087 531505915 406893377 715959881 177340847 923130086 161754034 361063101 416396365 837303517 437512705 595284616 290496087 310941937 630951440 912229232 849009635 872215602 781236284 965218769 254308101 694271947 29909840 106096289 821730994 986075222 762994086 867048756 772122918 893149973 958115224 980517708 283023223 631150762 779612859 805438671 104728708 111130292 391214262 624358485 523077451 602900126 48315272 522854377 607846205 932824286 485824434 829113817 662295707 747141640 582151080 801403661 891402846 991956283 435040643 597696710 933491026 986316203 938358821 950085475 6142513 675434324 938656501 989932455 341389907 692467547 384931593 993764890 609070290 645380770 641678046 759983801 929477880 940731233 559955467 595411655 46160118 948921872 443721591 912157001 952668302 963854824 980019459 993838044 642047583 937658448 585955829 972371642 826972159 953240164 967295880 987697456 989512215 994544421 572286366 925453086 191804712 636648340 662198588 837526488 998993558 999779130 904304694 995684180 239508811 435915702 362542869 521248559 697793711 924952663 671582145 688617603 87692675 788918204 278413506 481793180 900744663 971863166 669802009 763814008 20105057 130227581 942859747 957684667 538715151 794886730 301044494 880081822 303525058 997262191 851360053 958140611 730318727 949324282 702933591 943708378 892166423 981421777 621541888 678588948 9461067 581464847 806453538 869645526 961754890 966583207 849897233 915010625 97866492 598049839 517542869 751048048 74632076 191843872 130002778 958005669 736795840 742148579 413654043 990550379 652600285 944735361 795181835 896691878 449787029 481952102 711052442 887841206 683502289 955381454 745829876 897101500 398052498 779377049 250442215 964122956 944761660 957343346 6286928 332012569 986097957 997887138 422349558 949363249 438004200 750965630 69035699 550200388 687278970 851766306 627663596 975371215 965405293 984597798 104011725 783711860 712281649 878452712 683624626 732720507 197485319 461019362 143487361 242057199 762905490 828308019 586891134 736952062 662963282 973176114 739151463 873862968 945768077 948476525 600122977 843534121 388794277 579893684 418848108 644136996 355860901 797653501 828460390 865512341 411788936 821329756 734015419 823091326 122161295 124293129 496346261 907573408 699911306 900720584 273965199 655787883 520256702 765615225 791791011 818556111 525273329 953753213 638275850 764758869 919808060 951192726 471007092 624414024 884614602 899174827 501945467 902997093 133258754 890896679 865924914 983371856 664264267 924227926 528317664 678460993 204296202 591874550 552821998 672466890 363011591 818713449 773242273 831012204 366391448 836083115 803585033 843448293 132582463 825400734 223945394 712701389 201973610 262257497 890684226 908527000 289864495 308731944 867931279 971277985 185986398 782657658 68700195 122199148 147167706 716413124 618976463 808319600 445932949 720828779 195922748 338635913 564720105 909089937 15162423 298833755 766229814 969822459 404620135 790219646 593604779 601108771 436517664 711391539 262518767 359545580 751815010 762628709 657251438 843041780 708293448 713956461 444616084 918456062 548778357 922338993 64715456 446024717 162393057 339453077 603390114 995525215 548938998 698326641 718221453 738555091 975436156 999485931 135121566 466424662 469723139 529335416 248915850 355815692 422963853 747259286 209469633 985390445 886031320 905810184 298010613 544830505 59757560 754013023 603346428 646733749 396990767 604491281 957801988 995083898 927638739 990537275 824371548 855915904 137840442 318805493 427954957 430530553 488595819 657113268 622308327 944063908 824928650 934932472 789008322 947605705 447105800 449857674 782580849 940145636 267790909 555818414 829145041 847448080 807860519 931597538 292775616 836527022 765627802 881352610 485468647 500356058 928554656 997810827 253391009 847574600 974672951 992915810 930377310 931489379 530086127 925045174 197421467 612806504 263684276 708569122 583553843 995495660 874447939 979644323 297575933 353912030 94230025 754282899 979525242 980880768 387793059 560673364 325251565 535912750 154330097 471308061 162558367 838467827 282372541 322913375 322518503 840859382 198740427 765234131 794978501 965812186 10811866 336235598 140927895 786684277 785230437 853212102 419371359 430295678 348158891 815278391 160576404 192452027 517492069 879959532 323400588 996262302 768822695 819709144 354833252 547017955 89627893 831339510 848284811 993338867 134602526 979255477 342841910 373691508 481964667 606146463 408686604 632367216 464583355 740187567 480393789 551617713 613558797 876986519 503051265 682163420 446465867 592226147 558667161 864045185 214163680 847683319 131441522 208267887 786262507 925966571 846161102 952985034 183246275 571074800 295543689 821745859 958452276 976208535 744822123 769547732 986595929 993101846 711517092 935615670 839729523 922226665 627055211 722569267 994262738 995981863 225574722 389716705 789729174 794727280 538988108 743829584 903137511 924380602 889224561 903978402 481949641 929880348 788067912 941252045 877913395 967488886 696047802 774317076 106174740 221636909 33923868 737502095 753665760 935730135 922847533 932352710 583724358 812180790 271905210 833179818 661198551 700321933 77428494 370853423 878505582 966563265 316101398 726254666 315530189 906910769 505500145 513034792 152488190 464065802 639881410 981124392 106030251 991281086 655167030 945612759 297419738 902341298 646517397 671687655 752248737 822005994 820916401 905420644 537053678 639398035 589184465 878638760 346437463 507752580 7129352 359497680 673683991 842732968 694836153 931778488 732291818 951776077 731195905 743822204 311138991 414647741 334517258 836332725 741559663 838731217 471713545 625806194 286146217 812663427 950926567 970178706 471426531 691250610 342984905 346320115 160165591 818796739 142576382 178025726 7423186 751987445 952998399 979472342 922589069 966215689 728878129 823048538 218125430 836122227 637479527 684111198 515050160 557288656 968320301 996269492 785065140 787706230 156801173 503256642 796636454 892475329 450032323 633961403 102995751 848807436 588368792 692659674 63200071 710873701 385030755 418170861 582967723 787623119 10148535 709602263 719718573 976056582 636345224 709273954 313484890 417340298 999172158 999297018 509122748 928751190 306293587 666193255 137174864 350093280 86027019 439029387 310115464 650315615 694105015 752542961 318392270 471254111 958184539 977167236 454847660 589331247 355582775 394224855 637584876 989403812 854639206 920360486 375501145 434390265 463664160 642328388 3786024 380885716 492646801 739820096 979602441 988211649 418045106 866421040 127065379 285900182 906825285 974898491 324514147 725145751 123505691 375806291 567093455 839185981 528454258 710189351 574387276 644037215 563228708 871465507 345038639 660045601 878850103 949214916 162824998 649276124 56806891 85227722 806501387 917905585 789777303 842578134 843070710 917215493 72559282 955321235 98472823 229315479 58518258 432110236 968043227 997997780 182787624 568014047 175280690 562214288 19528120 128322518 893106821 958291092 477866262 578594062 652166819 852192644 359404089 946663100 338669818 552483107 880783030 975932752 854240560 995826293 748263122 904911444 941310339 952627116 7231167 603763390 849998098 930003632 252234161 773779312 958794138 964199890 166880582 931507586 503314454 611063547 163648254 912649158 594707293 752254296 420292756 830623197 263732938 828084769 437501245 755121336 839740029 898703501 880018237 916571892 182466566 825484525 995492904 997559589 670320043 725165718 279561266 471291847 561971936 569741893 797439459 886492613 107322366 696062617 610822798 700843286 17204840 943569528 870628860 932569676 150771493 567800217 386036596 793003633 544682897 702554118 91394271 172325134 637950380 729348453 112239154 318604754 498058512 599306314 206085510 429259443 36593184 618881444 30364665 963721321 856599828 948507796 233958064 317937126 114720674 154335479 55598497 156914405 642922986 851662102 368182767 585097007 759323526 803709714 302469053 544145125 381343626 457963232 259371244 636156613 891506389 999777704 927383589 988716676 183200357 492073071 294576906 547756906 384120298 455899899 392760533 880401608 952030467 991876660 308441036 552848997 656364937 986366566 655527668 899594540 197691422 593356620 136692183 664191546 338390253 627663467 816328797 978618732 931547527 984032269 574019952 662677058 266098582 934068315 194479203 364432582 696622530 910022033 949517114 998085833 855034553 862739796 250968777 983232777 491423748 602181789 701542738 920313733 268206843 386234295 206498248 895419461 468427969 552719728 620303983 686954603 466610283 572169293 88750623 94803375 89183850 694613342 615730763 929303030 222915259 973049985 467775115 941880933 709464987 977544550 963049064 975845750 156104196 851720915 822465155 950649585 238838650 692603878 57600757 677130945 259572484 269168535 658858981 940994834 99711353 763132744 985988704 999880226 312003337 954347914 619039346 879934524 457534502 529633452 17668838 262744820 901267610 979300267 6392679 598798379 80863786 306515335 117421231 339462190 505798690 817781987 502781277 767500347 300302178 952353212 575707745 668918939 10218829 51642334 823865295 855408631 506054209 942968736 689421801 835617664 112432745 608359262 292935820 421937591 74406306 480552809 199515911 434276166 220653654 315759236 368881514 590105651 769822836 945234762 979756912 993549792 572386381 921311572 604028966 684594823 292296388 323857128 123617769 361687935 462793754 725570561 111217592 866261847 329328490 906315496 754124752 773306520 75148737 443580350 548435328 853107119 598823272 962139742 228022945 428385296 384527299 789668292 523991329 592926975 431484851 691788208 592983359 644543551 570968671 674958346 417978550 857369642 468374019 997311266 845625167 975332580 584800752 927017950 240034035 520368624 953069650 990080979 639315966 771689715 448288787 701890838 299570860 303844354 300643548 675790204 46251358 124655040 181892113 610123936 357431919 674255006 966637659 993325370 887421709 949439112 846099787 962655437 266282610 817706780 388506114 776547725 162908074 617968067 816477243 859517370 901660891 935083847 545389593 956960877 28086934 138471134 865879521 870113483 936437188 961597026 784286483 939212552 406673164 765361634 469907152 830927712 399136732 953622626 922804484 948229080 320424506 343953977 946326979 952631572 841895229 924783797 207840881 629056948 767975106 798214895 10080758 188398260 667961479 737451550 675066974 874337192 208893055 588178902 210957478 211972901 851540214 972916652 277455272 493308027 209925121 334017960 270874766 772208298 420445920 433603943 946694641 950795712 633401427 804322459 637119195 948019966 18129613 282258587 932612055 933073842 230340795 679399759 337451162 383337355 435591959 911190603 829522464 906773907 2280362 287481928 333060537 559819070 233092645 976388148 892148985 998148682 757714606 812251937 380479591 930263314 345908638 674082629 200745620 428520682 463725340 502928119 543939354 617286885 121530708 572901346 203572960 871797328 870107709 905626355 754307506 983372587 519756765 880823085 983166868 992079757 684222555 971705851 714758641 787211313 243423517 842162010 666205614 681587277 310053374 376513510 736628168 775379504 6120345 77401416 289565008 561539357 976719232 997687740 821326038 952682346 3000783 38501964 529099491 838468584 482743986 591847528 798341178 800784075 587795526 805505019 182271339 539229806 538919503 904032965 828622994 916274100 959589833 986832744 198322498 645325241 607667658 628805704 55513897 960069908 240164702 907827367 975529160 987056785 513720466 874165562 875487500 941688877 813691640 973245158 142064425 650248436 567454538 919887255 593188311 647908602 646870886 780192953 128972112 766776601 963085290 987188577 17269198 786218323 334405139 455181996 767554598 980680797 49225235 277821315 362300015 428121120 539715049 962020247 64755545 905073115 725074727 802081668 755612452 883787561 600754212 900469419 276261108 857261742 472056380 926346694 867960640 947590838 337541533 546754657 573497798 751856845 37795399 952736553 765782513 881746860 515559886 535907143 99004669 708695091 961089 620771801 988029286 988231245 487878797 998108512 833860995 903922380 122863766 267993323 493277342 726950656 20202901 422236400 540924821 822645720 957447189 983019176 486829767 959485085 974586622 990016976 730928626 962430793 768874947 966702802 971947930 986266173 778433710 962818455 917182424 986241538 194487253 232468290 963267499 972142445 698594845 750627438 537380185 866290689 920518774 938772726 719469419 779210523 160022377 184390491 619213165 917030408 69287947 568234408 116199990 742920346 481925531 498440052 37518591 567356121 649388092 751679437 795634912 840512505 324232959 505575385 614244484 896798664 991050814 998323660 32979333 734495381 624694289 986340341 463559762 732866884 857358688 988000108 786916814 833409411 588108267 885571993 874167769 938073602 161869733 343040831 763060050 820955016 863574038 983563678 777382881 796304161 692029107 926557168 164120895 956507105 613795193 947328465 790858487 936170792 285045166 376732058 836571884 893095560 435294817 946639987 627816829 710182517 497680438 768744265 414143764 792210529 897289253 907049413 442207092 801431379 277039252 778416708 156951893 509593893 375494135 880602729 116263867 665157818 125807758 798167164 768565083 897173092 883874887 889215604 151775047 623070384 597489044 745740617 283347801 875358737 422992250 635116618 706261999 857441375 755877839 961039613 357264953 513353909 691841929 775977109 419572726 475731818 950608244 988601908 55019149 561689628 141655118 196342904 241766775 845213574 147769546 537101929 479855307 541732631 438198813 544885825 462968988 946524681 510527668 639826695 946479565 994461034 596027262 878967846 397333992 501817392 986914727 989074654 828812256 966361471 540395948 739341863 26827267 449621887 498799706 737955111 932558747 958858391 712827260 799234330 679111155 948646163 750704567 754294301 596893437 956285686 819414265 935274401 556863419 732367078 437228626 629493298 167810009 243476723 175258293 303874718 836731657 876137968 698028768 891765528 19963132 334350178 913680557 914784825 923075543 985460612 672122021 846827279 813690741 958013151 343127228 801135793 957277855 993746134 642656491 870020320 653421256 720075786 611023751 785689500 982054890 998952137 993772875 998153810 111852406 272556623 838934724 874602262 718894615 758705864 221707766 573053293 65412002 75781641 435287280 627489970 547994331 802489990 434602974 723132414 582580109 661473258 543413058 553621919 91138157 976021210 716964103 853979559 914297842 969592202 264383061 789701071 788314157 791198137 160934089 592119458 129794695 837773577 807375546 901471978 250934392 681175165 434625776 548186352 332440896 822908424 789964357 992229532 878411893 980291614 841799191 899171553 260571141 938127301 609882520 975026629 951511104 957470071 794571749 998154215 680472044 994646267 482209815 754395515 404928447 944968440 278704263 347671135 71251806 687381687 979701433 993020979 310191857 661211374 812965601 858435804 694019594 798895605 955484437 959200614 815253726 837950017 595837104 933000869 153099414 720709876 73597249 867686299 750109162 929759446 690953846 835512148 166561728 598561102 441898996 467558401 997105757 999518093 621256161 952785097 336379011 576261535 570990446 786836259 294387023 727686931 785867124 879102907 871391970 991904329 204711269 857673084 118831392 247141490 846199559 872298137 744989252 944041511 49957490 677913310 950448343 963176464 362304029 824960318 553314143 911600007 241759312 353383972 779366843 835148529 676543053 956716227 205072835 400838991 331246389 934842944 134837517 238533629 273467930 980164422 776660556 925121581 26034302 944418331 659009818 772799675 295984003 774063924 421812849 532977063 956762441 994436770 422900221 431514444 863525333 996694768 13977480 33664029 77081880 707011450 467798912 657647209 538692720 750234058 339458435 886454516 395163960 874798099 667962162 846002917 919764728 951325098 961598054 976558375 200782514 847444896 17497211 566053100 349697664 460975385 390763079 774317513 26405832 666822676 662245670 961161597 723251713 761019097 40451568 772403208 60884673 381905634 860795637 928181345 728866600 914347232 159377049 667449623 432650679 627040912 565214826 663733611 545438100 744870560 215591779 316255737 940606485 958527853 610974563 770919035 83242273 85693838 690385795 742668537 863700418 969481895 290283460 575097218 917926872 922188224 472770302 766596465 479652525 756133322 387929197 477321948 590339864 604961968 618990756 937587460 729782751 897069876 235434710 388049928 127235600 476338647 542073389 669957555 765545081 914869078 260495843 406311675 546806208 662279523 960041856 986780350 814865818 939091848 722059813 868176992 965338406 973719524 647248200 834260932 677087274 937958557 675494459 869070023 601208829 949513899 55492136 804125427 4050506 113171533 236831319 680676236 135036974 650081012 860437291 971723363 368364955 623603350 798869776 995375229 799138341 984035284 168510486 447932783 137867423 883561842 957182290 967607865 44370863 824703271 947154250 969742842 581953062 752020168 854290490 867845241 113487508 633969131 657097934 686813763 109440451 129966894 296908528 467165165 50838535 90533121 171048631 598844296 895379830 989884001 302346060 858850199 313618739 401779742 409952167 762799699 127693002 294538567 629238625 842618234 119198335 967147182 60906681 734190765 810558154 864555427 866085889 968650670 897487595 978849852 625883570 728731240 189072119 804993919 623401923 748541797 133180092 615274910 698442734 718411407 257188681 593903339 441929499 716424624 39291318 914349294 812000080 872155537 150764629 263889229 476023005 750008776 600680505 734564897 831591142 863515512 559643965 892938339 447168355 488806091 267843607 492520333 945746929 950106272 101376809 253154605 377816286 530710923 355071096 474306364 247214603 568401346 753330223 769435627 706975112 767558754 936499077 943346117 862138962 900763473 792456875 806165735 787209460 948576965 924321218 933042353 281855475 600715609 549846083 671941878 740503004 894582803 544082379 871327858 495736656 549764990 854625774 908045002 965946766 991290094 832648428 855075788 776190647 915460776 454438831 555960704 798305184 870265178 529968953 832842020 248089034 256956221 814343813 854066672 252000151 511476698 500042106 936019505 853773520 957343815 105796364 841805463 981359436 981910317 55039806 972146575 964119341 995972591 859073766 993732574 98496989 218837906 393766049 875616541 103919814 376342583 411453522 493396149 935159147 993417069 418073455 789850440 944478611 945020171 189800440 768388379 558673636 734316061 891362564 995272507 708854780 789251501 309355682 366121703 32194652 840052358 762980646 914420330 756906388 857264531 191709881 407292879 339412673 808952558 667860614 689584985 218231844 423644836 347586005 625761540 161086365 255106602 678465914 688289385 505239707 527663150 703466038 858362148 352100319 433309782 779514372 850450781 859202823 982553574 834863755 977512302 811690858 952682448 559509807 791833877 691477877 699537834 929704615 981748895 461436996 798061045 534269958 557499902 188515429 788745768 50795108 353818655 148912461 212731451 379557900 551590031 548532559 906801710 190548910 988213578 457690122 520317371 527381638 702750982 998003899 998096924 254549987 420841459 304840596 668219366 507917530 554198895 718780072 836917741 402538758 992473984 883358418 895767134 853481014 897634083 476093368 887199987 67313385 857374683 309263924 966816941 491325080 495087237 260442720 802657051 237497559 538320991 933529983 971843062 833777555 882027591 677004369 824516967 279388578 451856050 259117741 950901126 162330960 558681216 809162845 970579675 998853842 999587336 806908574 829973727 171751508 454588494 233700789 633008060 722480200 760830372 765615290 897019021 285612560 496994173 961935258 980827222 194196208 263806193 451577191 967481160 506144929 775649664 41821395 67802819 855711792 953755436 587422677 616449192 654980993 857983561 730604203 952352987 981658443 984033448 980204019 983322334 116274716 841607655 569477914 580107321 564594871 658653837 485524819 850941861 276778777 388239187 871557493 979646550 796447377 920573366 977169213 982762169 781581169 988280145 540810629 928046421 888391414 979334159 49654886 166306027 397670282 691770575 838023915 997593237 802783824 958533044 115800760 358177536 610589207 717977507 61169263 321406003 697739078 958873764 484796954 965389506 172414405 752789041 280117377 863850335 72789558 401823710 942006189 990193874 377463728 498679478 121531002 341119245 602497470 732444186 144427296 602294284 588050132 607980934 830524000 976123850 766082622 941510666 283303462 763988102 55375088 298189941 800527994 946397848 969234839 977277246 172259206 833779728 575170416 780081478 817361250 885865899 676542919 883202265 383792555 410360250 819377725 908664468 702733152 917406905 599548887 758215633 947935425 990768933 99921953 514403606 559384686 874436004 638432103 691896306 350793451 503303639 974268702 987669506 257410570 473169459 697439316 795625837 34228220 279822354 654769808 730468636 852363763 983382186 718417361 883719129 645406158 723443436 808352980 950173926 982028728 985396681 820622809 938279753 599564133 761355153 389827569 713351500 851532780 941251174 114955715 331169703 857047322 879109004 688671831 776120528 864673428 958693329 422012391 612490191 61057363 957043989 957787404 985928936 230481791 600853362 336784098 515723548 69663369 294763138 673020782 910561104 750610465 977323146 25060127 850741803 903201992 982420379 488234939 598357723 442360923 798708994 991169358 992626928 467029342 474519370 781736160 922559468 930236969 997090100 301938408 889995686 616777369 783042043 892237891 995960270 791016369 857443509 744762034 843754170 149491908 696092984 464452065 588771359 493311338 670899401 117832999 207395452 639881552 820558829 776277951 834349025 221724846 657350033 77061127 513666328 890237025 898557413 739457571 742225038 408716029 959606344 62201018 157426733 299945495 836559740 796310514 819906710 44301714 262036895 434739517 678245556 489149896 490102721 399211025 486588862 555804886 938072796 646551987 855845943 694745701 884091817 849137888 998423887 146787171 873973712 629527011 691153464 316923929 770247129 267053560 394892273 520131983 711171305 997861296 999472082 433386791 625439028 627317287 683155006 893657657 903901732 163583566 328118639 210622564 937078180 91943241 445688878 244383095 489303128 351149839 922992125 439097011 792579724 116584737 667553991 290421617 921600364 209852064 593885344 225272346 474340131 831655077 842397847 580969693 888079872 985545490 996353082 899506305 950562477 277101212 968348023 274067388 495926134 128184019 237208019 47037893 106474978 357284833 595047571 829563547 910694035 197896439 593989132 717047336 815484829 727440990 773078146 140943841 432706280 581932265 656115688 978564711 983113671 833709987 895084439 711707350 883088633 447130934 765521413 289089639 642311599 436007110 983912813 816273152 945559549 844738513 905528627 724803916 762449768 682020591 837325936 709648138 936850270 549681572 710038468 985942327 998317805 809554815 955213397 911576141 925434143 253844758 588986874 677594877 766811283 527542892 837217149 798581591 988918856 14111712 615935748 238164008 978552467 614301411 639072421 199887549 303326963 576991137 606577887 872540514 876826739 376629722 563764135 388400884 679367793 703325669 994532333 212463475 923022851 248096413 806940137 860890547 891321102 378662610 448339971 119197417 771654125 525530184 677540868 182283881 633616253 896993514 997045947 986704648 990216624 80319569 185808203 355998920 412829637 185972122 673908933 267777356 741012938 399721089 860466918 892472039 946180212 349749142 825679586 907188003 932668856 147582066 746301864 911208329 970694261 495396708 907414008 303970481 394232166 958216780 993839446 289513945 464045308 561081555 813175740 631043981 827808715 708863962 934241110 949413951 972943643 200712062 629122165 103350645 633514017 476857227 676656245 417134592 781344329 339929990 753062413 242808539 864357777 323484869 910074649 521580361 733023554 547474305 850789228 428983740 675494319 423984504 649737559 495518604 986541794 751544483 926890954 339809428 828077936 572829881 829707938 339530268 581987353 706349043 908082849 169903179 916776775 477473694 917647949 844909574 848083272 212277399 738758936 800305661 899553045 349337580 360680481 339442785 721903768 259386343 846385808 427541141 446963778 327675989 769191884 987338273 987584997 323167354 559298926 49224457 763169666 203858698 354766570 695085564 891067719 311912117 642568502 548363588 609190963 83002797 613268493 364839677 988786195 673693204 777427208 911252948 990863105 146897547 671112177 497634694 987971823 778909372 835048855 551922037 742292223 86260328 813572661 414819657 734944800 364949540 732127011 757307261 916743337 691290697 732211548 899138359 998682499 889387371 903244429 755453668 782395718 603553930 756031065 852364393 996654133 490220076 945854742 319782128 724671773 339373122 733933691 437560099 846371061 216503145 626935310 578628176 997668433 570221880 747267994 177424456 353684324 796912475 836397799 665036954 886864934 726622790 878038548 741554729 895155954 648672758 702278855 971087339 994697539 80706312 559049375 925277977 985906946 599037331 924138016 293404520 471894870 405022007 924977021 413791317 811107873 523793429 582768302 990265157 991215076 945664409 984396202 326866037 342599814 677626313 956994503 4688494 38512387 94313431 837356126 121154834 251148681 389902799 928395605 638909669 830545750 503550001 909168478 858937349 956681992 976368298 981527886 437487652 699624871 118238081 960953123 806444890 888167089 360042577 487042140 245503439 773413586 255939751 749763255 362633162 632903221 767772364 900460308 856026629 903506811 496490247 808751582 262884656 363915644 332168188 367227478 72836461 307801546 409033292 627461980 1097807 631857007 920791279 957138901 386110272 669120913 454872966 751143425 859685818 959129240 557890417 658936112 935119730 940549592 217118333 688963738 518776294 886850478 19531828 947463440 767407711 883796561 321394077 859131120 529048451 977939681 803105875 881764036 226454639 461749257 102740210 115535770 387152381 679548005 240102682 261842656 474732281 884477110 829244800 963032244 878021424 881163298 15361763 190787882 206586501 304873089 85704068 301089940 351456651 483636291 386218013 757137723 217876962 778818085 289282216 334714806 103262794 133529481 281564878 698657616 83490804 363954596 971932 595642462 94956593 335476237 552940724 905258882 669691242 686092620 36135833 387587764 972040908 979718826 73480953 224076653 682446430 998666781 57666532 205388936 258138229 453095455 754043754 943901702 665958699 962451058 252979501 883739639 297241943 309597667 298729584 988781396 802622496 981120016 778617665 955209603 26130084 219256690 834174194 999804821 15471918 788026081 665470695 716723733 696098958 951230271 589581636 932375170 443160144 510038458 915469290 987201011 781166072 832007303 579306421 982369334 588484075 791652196 123160652 846157555 542151989 846141470 75022267 904149556 30253692 183815099 346775270 679934580 784548891 917821846 357889790 456855802 545697968 796319744 206876488 989714164 131274633 633671566 721276018 810355501 957041731 973254365 827758959 989396865 270707132 586953287 623670500 833947093 874899166 913793631 508050529 850646451 482916301 674184415 84244476 160594466 203001994 337372689 524462266 801800870 81239623 187139619 402574956 697445674 620021966 909531233 281707908 462150604 34130982 770270612 260132563 971526091 238629294 290919689 995550842 997495260 574918219 804282530 569058690 869332143 61032453 877296134 212027773 673439412 145799050 736564944 891074649 910446281 390992905 870024758 753156724 982915462 538463112 947252653 785057031 998512240 528141744 607383180 206914687 565558411 401029705 846932527 645297520 866353423 815229495 821359214 206337739 940258098 812803025 920384167 202180373 377175941 773056133 833971614 399646469 713924628 908408017 947506466 894511082 964140917 769731569 984186621 191742144 386488197 411618273 863790579 320711971 555653196 200962301 361454971 474137201 474253443 940085633 996261020 349323993 516473444 266415724 888655357 701218510 760226458 388058860 737675425 332220442 921587379 875539216 906200563 117745203 956655012 199181863 204543107 975189241 978486443 989630083 994137332 24032197 65614323 879409492 939622075 838477484 863835308 677774348 969800694 200876237 696814967 831497982 975271538 856672087 946054360 934511246 944730327 184096946 853657432 643767428 677477051 894079716 941371271 753817260 872138612 268033287 528813416 315018235 855344422 271301677 782446166 353548947 863564216 862912568 925516987 513201942 552757065 402630501 839159909 31671549 37489831 972895547 994247395 708650778 756846032 433361443 665788522 41425410 380639052 502044957 907790676 743903033 923237148 302711079 735743473 297655003 965758807 96668118 979558245 974824081 998805370 20833285 550604926 403984647 603483820 49186864 557945052 930299546 938511944 274931310 965608096 279622712 902470195 274399300 728765813 786893654 881625991 394774565 893147417 557007162 795168825 644474530 958721176 960478197 992360079 176510468 507897957 948226356 955060820 873698219 922649887 792958744 909639766 119001348 377473788 394495424 999918596 2852951 568678689 218015689 880089310 482222322 801174655 790594610 925356321 526738919 837726978 566973969 744340761 823068304 852693148 318006091 766674214 796502242 940089082 109465230 199264810 845101477 852494715 473684279 801911953 621379039 895951954 134467748 385980167 963142150 993658150 128842643 144683435 597109629 978382530 466486526 538231878 350937210 775946392 51282257 595946587 986016853 988228686 823577542 864751933 135392268 782520267 863427629 956836067 674799003 719672703 246680008 432937122 70406464 844586140 693771898 767769375 976853815 990358228 633057276 947574108 47282617 277986778 394999575 660090455 755193021 819081898 856973984 941381826 202090824 845447840 632845935 738545847 651421608 677361157 526968037 913354986 435219540 782489648 490373507 836531204 502428876 920526876 60666476 958901538 963777202 965113465 261070704 959798513 932112039 997865514 471656946 878043370 831903762 898973564 988790456 999460388 82085533 129564335 848455206 982772526 241848553 816194885 717369375 974782492 54704485 744715045 160133245 184652785 501041922 658120547 779648580 855815554 579636972 702079423 992349425 995466685 264999436 543287607 581041033 593319421 564795237 769788939 494889879 634680072 528224248 845455242 981371123 990500687 532472349 609187317 898149670 906578532 780681444 852908153 499090907 595367622 451271116 939451694 481310516 861964916 38731800 775251364 980079120 998045373 554112147 634969666 927936811 933202844 931385422 988701205 552531139 795229754 965676456 985727223 878947164 990034984 604433487 845066241 577851571 664697036 681397862 950446398 360772201 755441504 810075416 839579932 695588515 856879517 971808964 978921667 817510363 848687258 166749910 341965047 499504757 886718704 257103020 751431558 899655153 985960532 441768399 807457506 549715515 661704782 365455830 622026351 156459026 174903605 679051581 771765980 928564809 971026202 36594347 244829005 754561920 896200805 487774614 670386074 179805347 882117366 213620785 683558701 71074095 616161424 253590431 951872929 879053132 900157988 17704913 202255234 269543108 465258906 51664444 79136862 743723956 998696042 134110876 811399350 951904131 995584558 421948298 599874492 485470389 729520521 31680288 592129114 186762890 638905126 86290384 690106144 224639315 601513174 371683472 437446139 867264985 948582761 868854177 972180386 648383814 808004772 508496572 524276306 855656576 971175611 498321010 539796526 79551849 417112268 769769822 792776356 573421625 621530978 987969208 990157497 230414099 360776935 382075754 819765915 436263617 493997325 375295041 856684796 368353042 396523024 679550885 901264186 463799481 548416539 464852591 808010613 291551933 920861784 338633866 786234021 245093826 572500263 814168597 941767322 462518267 903034885 694742219 999958395 61593258 281438172 474795267 646135295 810893078 989013024 14639813 444710462 629708873 661925197 63776712 292314918 157747399 174066375 874686031 884403893 185573060 770001556 706571004 868472398 368849610 985409021 411065771 713341982 469453926 664228113 829146010 978800717 912330181 996435162 780706634 895053883 932939259 978789026 75485534 328769333 541466918 550835140 184787066 279933905 485225020 532086630 115631501 466191821 297239934 743002276 30459593 143083945 503697534 814251582 988877523 997592259 336821333 814698631 247937712 646403880 807004191 895587467 261286091 395302572 253413063 428933903 752833764 988540322 780761908 846430040 439770469 570786298 510400705 609509387 869671010 988528291 246241502 291734386 587820119 892795202 8375942 671300045 544228340 784362986 211477327 943197601 408297527 639498789 732364939 952212000 327132162 334152385 196005445 420464851 597204356 992775265 663281123 866285730 321889864 596669439 598239811 731734882 23014355 98155763 734572655 843212750 4345179 626917241 840207986 888702722 508317907 817546801 965735131 966184603 813507479 976616328 476067222 528376903 588457639 774296105 553144878 887868189 940513376 987878449 660807460 795559944 844523251 913261657 185141289 497141971 393179476 963803895 407450468 510051128 34850520 446795617 444005481 729217380 486637416 917826019 934739211 956410258 81784155 308046206 135619224 833691710 966614799 985517961 249764074 429188680 350126710 606193400 393095399 647231261 820437418 921766443 279677442 775395871 648529183 947088386 846540246 942642730 577914727 834205935 79405908 816481765 627819308 868707579 585134661 745400766 600935012 695145036 552113661 756624481 897960079 999477898 40797387 996857151 168656096 332142741 442250726 605756881 323865338 794516034 807288368 831717226 309792664 576238001 848640938 922298156 782541339 949717196 230268460 580503138 844966306 938132843 378314210 941026885 784977575 816211025 450565561 740343897 111901786 247161362 703456886 860971930 192490729 616035007 320416105 789988395 88208744 824809178 164798920 450980577 141839832 672887289 228439268 784428314 977022599 988324899 79637393 645787983 868749962 939790051 36614805 106506822 620609817 860692910 816738739 954366034 752455113 820050634 243658245 354104748 860892940 992156774 322475 171132088 356925915 601306581 976197542 986628988 211001065 357166435 665885003 733177961 425685072 706961515 509421253 950868887 553491854 989887783 121485068 267091540 472902170 659339746 247370593 476930776 687424744 868173148 51111965 875074851 136418022 286394132 615157406 776323633 600659656 649940081 978060920 997294800 757381426 961055242 149046338 890995064 789483203 952267271 712902479 756728370 607646919 908754383 698152161 960349141 989240880 996885549 954848026 985618475 310041772 565287133 488215945 512460132 871682691 913477151 441602308 669389019 457944552 732262740 815785487 910164912 668815027 951918822 356689319 843919118 841181750 930477847 261134451 721091400 73237681 348174768 111863468 796445917 381529293 870309665 225400554 811728865 88845596 945369678 109237682 702773290 633204513 907484218 124255385 689752890 473651203 904494072 628194550 997256977 176471282 694375548 821446111 873101994 70567899 220899940 723107083 749417191 640562822 802477199 808950324 843300932 119828753 250629180 120268767 837147105 951363226 975654496 214181895 700562335 655398649 886796888 403438746 534602746 687147629 693254081 613033977 845747056 90218329 335066152 860415829 912362660 935023911 979483103 218413570 432545610 280875291 286858793 429418686 605805798 77931753 389089423 951431204 993706793 155375328 741838529 333454584 502941732 126846771 743992278 561491517 654083278 255915729 270438763 203979269 484763257 847172751 877147067 945060073 995744611 875996152 902927731 746336716 978918463 303444887 526877148 797224539 885982331 884449372 926174113 477254244 836757059 321321223 950764399 311054468 470268037 747478374 761548496 351488502 873728535 734069635 948801069 533052514 902421813 345217051 582193516 264582191 705523267 42430472 571719598 110941018 412830542 910031531 999203848 951454616 965573527 929834961 976098774 50885268 847781317 40580169 834768416 432225419 758407011 269506027 347845700 173638251 520785408 330997508 964005082 354549823 442051791 163869508 603711179 96255166 741876752 213462620 559952416 82230736 811448862 336770129 700571206 603618051 633774570 489732438 582538917 819636100 968418294 994363856 999434883 557988251 596003712 314450371 541207865 581655699 899201405 898452574 910612266 669181148 676357859 167985965 747719437 279565570 969057225 39870437 895285528 15437136 105829908 391619154 549563751 589876649 659865271 433704273 550465709 486452411 715878772 339373784 676667893 425739679 903620149 541654383 735391967 959319916 986095233 201808711 549746634 82204162 198459122 843736605 872166954 341330646 371279587 539673939 903148791 258799115 337476488 53971150 130949316 881882391 924310617 574942906 968089906 451096357 914077149 181698619 215807094 929349166 951118283 457373143 578760833 997640318 997891690 676018683 731868143 912706525 931991283 773069921 867131710 142808470 740729111 834172903 873555389 417516931 454239303 537012677 698445340 982189871 996777516 978428324 992122235 567132297 695525294 663228992 939400712 318131673 428449782 599282962 600404743 361121690 600380292 19948597 31283428 19722248 115237484 644622772 895545251 749835856 946901416 317110790 341241989 266612507 793255156 933613923 943848680 439962178 995682977 462453301 858348506 826776426 926507131 377514557 894086443 894447412 967896955 769634847 860825885 560195525 635231530 699907900 745268385 684853973 709811634 905232923 954750361 944145342 954753050 396210394 644141339 786939096 929287542 369673098 519989961 808944505 863124948 742355442 911886224 644599395 645910863 879747620 968938438 944057776 999948995 99405546 535713035 610571775 638018220 582119108 744648742 411746833 717270468 966547431 989794386 528269531 968519769 68659725 150811095 193940775 802846509 19540488 139761826 439100739 801761943 923017012 985662809 817604946 980268387 588251949 898448843 192336111 969475389 609322405 686004244 331661224 697570128 205988951 540662522 110749945 734187755 682805802 686662502 138307116 207454304 878802252 961299688 451433766 968898763 105653540 193125421 895661797 923458805 589190303 967763908 571213798 680571838 31641858 677482547 713264282 887432069 792913938 989310325 318181225 374746429 143770224 232555145 717308559 855681941 273847502 934340947 635631671 961338644 334579976 357283938 433129833 683557474 291571145 619466511 100347275 805129100 465541358 948398250 393357826 948078088 539513751 657713856 300374034 818174654 569137012 631253063 47317174 776944358 533129578 933799911 109426554 145108043 184003624 493754492 915459318 939361722 559036647 608305142 653873712 996233805 927614944 964492150 70060101 649625038 766577118 877229806 750695880 811177576 901520246 963298117 874437837 936211893 379581562 592239786 697783378 782707642 184909329 429236863 721550184 941461578 253591205 341040023 946811380 992163022 851456740 893004828 876645215 905234064 525255906 750978516 502371721 960982872 193077108 461065329 997227386 999010082 145488361 361522345 861177881 945010278 484918204 793596797 58545991 348240947 464586945 824554708 442177149 646142465 704776856 933108926 868242689 964175906 329863203 736804825 781778362 854545820 432308801 432647924 555492489 807987844 226330835 555414369 464307536 752382498 125421072 631041084 126010811 804272660 120914822 142570347 973376368 982343212 614268112 753064722 57663066 747075391 954675273 964994705 533225773 753585086 177956234 806323526 47178294 290131986 286599033 614657738 4385955 575897485 756842104 851130470 401767718 857810821 992367017 999166947 120938255 199406516 998745921 998808599 886300263 950099581 550924488 809712051 739327061 909325871 363885197 531009902 458597457 758857230 44826249 423183347 982967854 998755184 423500252 597361630 315631862 588446161 39950416 729475415 357606817 912636512 241597436 462223495 414456810 809565028 729211323 818236642 652661581 965370362 506213807 820514151 109269460 840561024 711660328 920584069 355700105 505531928 742570675 891422868 751081987 931031757 646568944 844628907 386149689 556161357 257558564 755153815 940850635 982553974 124630980 206094806 148283212 627373545 32626641 424167578 21234934 338532771 949207843 999812240 119368752 341391945 727670302 770048773 506600121 602657515 781201561 971025061 881227660 946931653 506499313 552081688 303357809 569385345 470064211 975093590 383509131 644416174 977401449 988941112 907341444 965855542 844970417 996661054 704810305 846304582 865788724 979299938 167234714 785552430 947713892 984478789 790317092 905911831 876147331 915690749 287773699 504135826 644001620 820795948 895573487 934844120 615136971 933055292 896376403 988678937 788132662 896302107 141609772 796005002 231549170 416826902 72012596 577304736 684350315 839241947 661923262 998152029 483952888 949963868 970342634 985451415 381630021 405645609 609520420 751670469 847979913 954542442 307090107 758375711 103599090 976900043 198466625 251769263 515101694 806007576 234902967 762038963 954698228 960818868 646611978 895012430 964178433 998728294 707396889 935926249 47583495 920188113 797300933 851401416 593406795 981853532 106901453 399584103 474577766 905473918 964099940 993850848 120759002 127456133 267356105 569109564 481615139 544735539 878111891 936239651 890889796 918095854 548874617 629121192 334028903 650088849 858125034 889070485 612721450 986479259 548704729 877263152 540688942 704354562 985764683 997784592 688540288 985104625 92516158 326532392 290046912 694108636 678963128 841997841 369930043 602286890 180611429 697548962 280623515 828473213 343756684 604800214 61279672 536941144 12934625 125371605 193353216 621631243 530737405 807588918 743839655 951249954 433378314 451206798 14789567 168836859 21366913 668778045 481374611 848065591 525050304 901607570 898126116 983751807 108904039 564587813 227169145 870537702 578256214 718070825 100058772 610548960 202616731 287543851 929508414 974793640 184007871 949478421 975619463 988554600 474677748 515838461 829397005 847678279 720758003 833012720 749608713 946475528 343429319 473586761 668305296 696163361 493057413 931879200 65256818 362497345 779187396 946714484 963003683 978247505 917523238 917721646 666088530 684755946 916067310 954196343 233683822 870740536 683455812 758433512 774434332 905515058 296402366 635219701 7981362 956883551 431196265 836560196 394443142 544966964 555300383 583343047 477756190 625534137 402766869 438641865 873660498 877170056 177236553 923038356 467687802 574628202 55797469 315029472 401519357 828435687 95433203 568668173 454448943 818518899 694812025 851299629 549092181 555264079 614873807 717062235 447055494 743817435 967646746 970280911 386785574 827605774 176937025 322164173 201861800 266048813 671755374 734659790 749283358 892058367 990996770 992158108 956932830 963729932 931514045 981868869 655203331 867229690 761142607 814319122 191928766 512013558 907398450 948260504 601553379 883850691 338726318 365415999 641515639 993141938 887443822 972960131 158589791 236814269 921746860 973239433 375632320 757328008 475738218 891727155 418853815 800518474 424734207 564474181 813380020 963216862 626425458 728011042 651993374 756731674 578834853 601733902 421966609 643453978 885817017 993543970 477756067 478060805 964424252 978014177 920767256 928693838 955464143 966681952 294969499 539379153 103153335 106305325 41435587 543448549 411895707 879710486 787790313 987186172 212612257 262291528 804061442 956499982 187082482 565527223 380945800 966775258 385135744 910114977 581554358 650270559 261726907 479100242 476286847 738790584 522396142 667791102 221342277 845773345 445467654 725669282 229295558 426365112 112285833 806732118 832456634 876027608 163318328 736294190 331655902 813658698 213786518 801481545 125232273 292760120 324998413 536206616 223297778 992530071 401816640 845400936 582225943 833691964 156310327 446180054 329768039 608231419 643769324 853531058 178105016 502202380 866915639 972779714 858921434 903863531 370865000 516882360 346703781 946440625 292220632 666270578 476733297 976291954 33999990 438739291 707688654 740557666 424845260 493575123 425902303 933230100 570839181 982834581 758438754 886590197 119126677 559471025 482941310 967367661 380679853 834333324 496777291 879372571 137730019 679075142 803204393 865616227 88800133 243166767 579365517 737292541 679708734 915398995 703008880 826548067 472207841 608048169 154561240 460701264 408392300 646061182 214965397 873616079 550872568 940435140 330055635 995751932 110208317 732041049 259534235 273477934 349847210 716009503 20842929 556314951 322919815 680536057 163777910 172974009 722992151 973015060 926900386 983083741 579684014 669105085 963838119 979346542 805867893 844307667 876524118 936918630 136159320 869224815 891432452 986740226 749191199 842496343 407729565 608936236 474059372 942689232 837238022 921315888 917235466 924009033 744543444 757998584 931061506 938390933 315453016 973862384 599436096 635766273 562470186 880577225 236956578 427041005 263958803 706648812 161864420 298693964 5072407 250809939 444709413 974736434 376869902 592971592 426204054 841583711 537748260 885552660 234424091 306968474 111559215 321697776 84002795 667332020 19916355 681684228 338366487 596318828 81521880 621510276 748215996 947845883 702986765 967494498 603956542 979413035 964921635 974423649 766147845 931158164 480719509 609320123 465613453 790016529 418291980 934820421 745670638 950047929 696539778 920398160 5140027 441101113 892933695 912480614 753633911 820309492 6462287 977480917 79211939 639404717 745292448 915057285 304466277 830317210 949850756 954958690 508756783 556131417 221717347 879136350 491690585 928083127 818968248 846417713 157832161 310070748 113060509 113831764 877858917 984200533 713148881 790807231 200219273 800484393 635429408 845057910 332518574 517309916 305704614 571542871 510034893 715082053 243208273 768713731 588669717 965183950 86361450 734862396 922097134 978174410 325261938 387899089 399095907 734470103 475921851 547000612 4317459 199220566 973723161 994030324 656704806 890205739 947092662 988485409 473711396 718868819 720085298 747159910 307107830 987400284 864359560 870210254 183945035 336921920 416665659 624124099 211384491 980776096 829894124 971306095 14032845 708690483 883427622 905656838 605488949 837397168 709103941 742193037 504133530 803570243 342197709 425767267 524794679 922080152 507905098 902785937 61814505 966551473 954768454 963430391 140625145 326251260 961097992 999278631 892884474 904056750 815182767 865794044 375637286 730563186 100028949 901822420 869006267 935410387 831278452 944434988 423730163 995634689 971088541 973735483 143210241 176081353 459005671 906633197 266590610 868375361 871183945 931648659 736289771 777872818 573176236 896627678 825864874 858039016 755619916 774005746 11439135 770957036 119626883 817849860 653817401 660179892 897665577 976238310 149794090 815040395 191989890 782992639 864177487 910952133 980879848 997631817 158314068 351644199 264085021 846642312 745634375 907529767 211102701 406946343 840735871 861018882 909890922 954315397 176543274 458482896 126826816 759826717 29426592 737316842 697208663 964990772 148240916 868663876 823105701 840584166 744806921 943540666 759422938 810036055 109620314 131970496 522138651 941855025 629301206 660600247 387383998 699841090 157141756 309877148 406866463 896531027 399440493 417426808 827610104 847288884 704682129 718298476 981275552 987998487 521321035 753191704 295125340 918608761 369782150 722527894 999478200 999912062 372237294 669031781 587665994 977096499 117267286 317095327 853767099 868524367 886135106 988188842 757418022 836870217 773197352 794495869 833479584 845401621 294106337 676582041 170434118 867033255 933718454 964743325 334897610 878925317 718985546 726264512 708846866 943954291 174502355 641986251 235975806 727202285 196779863 777666361 953864172 978259837 131041592 488430590 51289686 497044725 355541366 705918823 346227609 860011647 930239659 981928135 89363528 288594611 400391229 573894638 968821907 974256675 874241332 908485242 39249459 993414400 194308994 574537803 360000100 796151936 178471971 585419557 319955605 936985212 748736967 933521058 106743766 469064073 743714922 972192053 515069437 870870943 201329328 810565394 450043628 709588083 921025754 935538954 183406564 480114972 105917139 488264657 492794990 958637545 773646906 822098685 668454326 851777399 462427813 511877350 472309512 659835208 91016000 519304630 323675335 325785997 147135673 828346413 219974397 666533144 716896130 810396365 521251412 782338664 666090743 749776575 352898052 893402713 160759825 337438094 866235761 979660701 912554411 985793797 63486453 657500835 434456656 752883794 661615803 687931499 110814155 851609621 708694253 726200097 873503371 981843608 15142625 559863338 71465907 229602211 555228745 663985296 316923882 905717975 482932539 490372115 83081500 992452085 470694892 806861715 932798215 957170973 236746933 855105331 306470366 864975840 600342606 704023766 171813199 991379302 520235223 840490546 386176761 549550700 863465598 895181352 791141168 926487919 612562275 987098046 199551291 720777590 249720112 598126224 348240116 904994307 631651172 867222239 501956526 988840154 251689450 800975555 63865805 622979859 460473067 498782744 465505703 887996286 147081722 740102484 190795914 251777905 983508821 994148621 883102534 921715646 437785159 796260866 751578735 933853256 118768124 564288321 473811901 837152184 332594630 394459689 530041216 869760901 270811243 375512761 920574429 981161480 582950088 702565331 840381903 863323668 725784134 895211640 303597131 570613285 608890719 808335172 149228740 723876941 712256457 761965966 719699928 744077098 546086386 823815097 96487568 252341743 919450216 934114059 797623361 954982438 279340538 642041623 529548576 768055648 693991102 818875096 729155410 810296409 671446994 792811307 780261328 909750153 692892837 923697348 886597073 891842121 940332853 971904126 97338846 258291881 209327689 566060741 151895685 457167479 27167860 210590561 895971024 931363231 103199485 543734958 154659478 273585553 45213405 744294320 104385134 931856382 769285631 865002100 406998505 705811616 830778847 922374866 928062959 949501641 462507972 915689466 841026474 877684094 626548483 938577916 462644632 804114700 276044630 798890470 818369352 847123622 433419469 704132831 344871649 826324601 833335111 874925844 76301711 531443641 587796295 632169677 429660567 807355470 198827612 334328617 601655294 854487704 750789682 972415445 697497278 983878816 891643965 970385998 652666203 753848583 493132535 892449900 679702459 920864003 69077609 293930008 945335855 983692914 125048748 261492749 942453822 943099848 10081057 601881523 424037860 591246950 713885595 833981277 822624272 859512043 248830448 256263274 742017547 893978815 911295848 983447128 213266248 525950836 588727598 682151127 526173240 959228992 504782287 718824860 994091422 999782868 233720834 778078042 730254667 995780652 752012508 833191089 44517765 863072328 69457096 809582840 372348540 388481948 418040948 548581107 578054601 815202550 187436984 671359634 53155069 153680310 626671137 900411888 949100417 967834058 611659392 648872914 128665266 755386249 437567521 738475935 948313505 961161492 152283881 392161559 85279158 259710411 116810395 248767635 386129358 943235773 777262027 886571145 295218897 541264944 68975697 123428617 571659443 587926959 316435403 959621755 745823340 788635196 520226406 887514754 619654559 799784751 131782153 401191755 520048876 593915590 297682607 518205472 307709089 740217666 997748364 999805398 700057441 715723007 220166798 694160405 969511019 995244383 216463629 703725336 789509870 858539455 208675904 749802908 743024855 857546645 824827362 982771228 778850359 791085127 730572909 785720874 433409113 582717912 682669340 734827965 17525196 842714942 676095858 788481810 719045669 887012086 946892485 957094437 331533005 402451731 72821787 785803093 112568969 594666873 555987760 790128677 14730688 111763497 273287944 581425868 943614753 997275991 71927419 358521010 688911278 865423574 199265127 238907749 360775700 971708463 864526158 949444806 139353137 528625111 197865659 713817630 713486742 997067513 392350420 741429289 628859166 994908826 930672967 930802683 476494888 635410900 50624351 454469038 403321618 459433671 691591674 841380069 87272500 766795137 947361480 990304775 395571166 561268521 623306383 694319538 404904791 436428844 356011981 961011432 962152778 979684721 425213426 925713376 243901931 722419346 325174772 745718898 105005033 877843464 842805022 911875022 671492628 893974966 158440442 977299486 869956430 930439522 544827149 554742572 875912866 954996566 423003971 865724831 251608738 434360088 355831918 432590314 494303290 930495687 272017553 374238963 102901478 375944434 221969290 945490191 332839277 764724391 764616090 996452944 58182354 433778593 833840071 879013533 399153567 728977315 612436102 683216300 734136669 839663238 451847567 485212100 160154423 583542135 873308280 940183354 243255796 384902838 74004938 946540558 154258655 329553667 322278730 452942416 389733797 840128639 284460306 529121895 691047999 767683918 157524583 545637446 696143005 783561701 96372702 962747377 301933866 329602000 298427283 680319045 186097165 692474998 907963410 976382444 562462941 698407807 723525061 778955195 686171961 923623762 592072967 684128768 770405000 944627427 357653754 719961107 226278747 917663743 166833037 399061666 620186480 948577214 35881438 48358940 874977105 910017263 53112134 411101409 98556163 502379213 978675055 994669571 971126288 988617579 875069015 996566757 767244459 857468663 345726549 933960174 875084157 986054092 179012199 676773706 749929020 999341769 361319109 867339417 180546679 867727862 76160634 928500853 158104830 677060272 975881130 986511402 149067908 767880766 142307330 679227269 610278760 824632940 353231904 976337569 403720505 911285557 448509750 549661619 262117229 575572756 279355913 953363498 122937690 973502214 360464052 775189094 398748129 611495953 914648759 976433400 485679711 934254968 51055248 321607835 973098383 998691963 638073744 722176495 704894478 920242599 743260940 766852345 55577013 439168906 26478322 345923777 319458015 555781647 524009458 573082482 276880980 511414813 571520868 744631272 134413035 571787532 701287875 735809229 199952814 248471310 21031479 189362223 745466492 879599201 984247996 997422072 232876973 326335661 53616282 112035148 941998667 997330841 408877371 961193139 276397652 424171983 252256967 701066206 160211108 212616467 936125750 960573380 598039781 792526337 319461121 680481717 238852353 706351108 225229344 571022051 37123193 715195742 880141026 956874735 181423437 590142763 84532462 273664194 956755780 993165786 373559235 546130920 527680354 920391081 894069829 929680967 979110903 996528492 13919335 727181070 146210220 886170152 345077689 859223739 731238959 777942537 20171311 101910260 310976975 964384309 327168966 392360511 212352725 907067560 33057753 974994502 105471668 649219306 287003662 867552194 54404532 351231062 503974407 645166909 957511348 984130507 434544150 984074454 157322439 509090747 998629790 999553864 752209404 756227235 155202199 403852603 803052889 964550377 217353260 719851793 673996253 990753994 694332584 983015996 192746624 694964984 844464685 986972824 421002936 677170542 334465606 385410346 698438558 991564075 663374999 867448389 133420339 820219473 574689515 828955047 983428742 984014905 517929747 952308963 28702769 589533717 650114484 947969288 263268990 446553170 312156585 594311139 631548254 730590198 200457109 980626027 909252541 993627639 964668199 987666961 265500983 272315555 599993297 838740404 402598482 942493712 103385569 741921359 126489617 563712768 821024169 847658101 154208314 630820704 906533614 941147956 366747556 729786399 659494195 736920761 830026521 870306369 764559585 896908200 362007191 768401629 759858079 847279271 569541247 749755126 291535514 323299195 922525210 935323356 483012139 845103630 2586460 737582207 357913825 579191299 824184649 829343001 593783689 717595600 534872413 762421167 137209236 975247834 717344858 938148433 640064683 873260711 434648873 887467378 635843844 649782044 694276132 989423708 243201968 599675929 719140176 921730100 658300952 765545059 380171458 970295537 237399325 808293163 999784468 999917889 43526622 154930549 206090406 952898725 634446534 861125393 750158141 921463797 884749887 891856144 107660660 261690878 82135797 656975170 853156828 962573580 327923737 804176952 837091519 923111771 868315277 905357755 889840301 973203704 853138570 974078715 712704908 716944243 354707160 765453507 476760126 653485314 279065856 953614643 841884516 904376689 368080545 734721193 578569606 917807153 621451019 879919405 848096311 911660284 199972405 637034653 690727851 929900332 472260765 784297985 238871682 647247415 643943080 730310630 873301086 991450039 162563247 881574173 831694149 835677946 614636363 650382047 152813622 378324527 628498494 802587373 255170118 864664263 770936176 969955368 356695587 463583599 794523694 812123699 981987876 986118619 874531810 999128224 376482653 900338932 461874288 819347718 229721093 459383900 164947517 678291083 402541499 789967297 186260408 569098714 209134222 663242612 609317488 807568015 240367412 678340593 778142313 997650912 419189167 797958704 545012479 946370024 97217547 107125491 890776386 896411201 488968100 996573711 981598846 981916798 863890265 915674333 462282423 675067623 101160444 115302558 870726566 920826013 689044333 800013524 389671938 857739358 647431367 674165154 295021998 774011778 59066057 579476692 743414321 927121427 816916335 951347267 609912919 744860632 227649142 287480861 211184265 225148124 563022410 682215145 448609148 892775243 266227439 967327333 341811956 711827649 557801452 925581419 941325381 971231791 600748604 874192519 855115421 890462351 284996498 336767250 770297730 837572438 296391889 838109268 306288672 416557115 305284830 941635883 549409356 599296593 556555610 675382083 136250040 238817411 364282128 711481397 826514751 942648153 437095811 828996465 108055009 328204516 188045493 974972066 883710643 888264932 65008458 653135315 874639621 939308542 785785305 973954568 300242738 645648201 459629017 868815518 937362464 969598034 10802113 367856094 976823725 983824598 429590876 451488289 255811620 441834960 34451788 206853103 768538881 799166423 338579864 841667809 1419023 206798455 550114867 948161276 836136891 840369835 418492639 455352474 15602356 465539386 189148649 219216296 289066423 667492888 3862741 233688845 903246444 954570121 953569439 981971526 858928803 965504421 32775806 64341099 255844063 633189366 809492632 971480695 607865709 787778839 583251969 899086172 356257734 565858835 178651673 906351722 458046561 616775296 452164119 576741045 739708106 784559532 261695359 872331298 121045340 233064483 959805329 980731580 622732528 636458516 816554855 891629519 747258016 983064984 760372361 997031425 804521492 940013161 135140286 201837550 287325680 941614769 839455450 845822436 401374640 679195452 806507426 824251414 670656724 994195336 624937860 861299489 148537701 338963344 445797160 975662086 745683035 936058889 409313841 428525547 628463227 976341364 787993091 834212603 352211819 491443234 822423998 934055669 749268677 825551186 134107693 749986169 431652348 689720026 235129629 610307883 631811386 736858386 467906591 491978281 283806844 325211306 274398619 647244392 134289971 182521270 313895380 850095435 610623184 900935154 562167008 959275644 309738098 739811663 658342029 804958113 136771496 210436940 245395305 933875856 758343896 890216368 139707897 152871600 358911094 421772891 738867130 966567191 149620869 652064288 969120396 988818937 271244461 647646502 907890469 943636644 346545798 498709764 507583843 809015737 935426537 996808904 724575103 917643605 352706353 544021274 540125348 747493071 204693168 867611034 640968602 711851990 165515167 409416810 852751636 965434802 31265024 425136836 829447192 986899213 555073962 935864618 178695868 423888995 701876285 857236646 420427895 462543262 679988657 883381514 757490315 953368361 604846833 995112804 285378443 422887613 10744994 467792795 916024237 919679379 480779479 758954919 906396108 914782683 933243178 936931499 628666811 847645872 571032691 728427667 440993920 893239406 370251984 875034949 423267879 521815878 732728662 996305159 998596291 999587619 185391510 698069806 783770406 910964051 622355689 662989012 70141445 481444280 439556271 514046369 700448752 717888566 92552349 250107678 722762531 906524410 36424965 735732852 239827268 501498973 921296886 987393706 910486045 923835590 839777724 902983572 678562556 694225867 819572813 858016683 423856573 622759941 310234433 908473624 722099196 881777774 113736229 771795226 803539082 908977061 127095295 726462854 958248077 966108738 425653841 876757976 404603136 592774641 314344956 587283696 508096167 941158610 261564738 307171233 10078886 321221938 290290951 836792955 501961762 947839182 209190847 683584932 85298862 907226857 457855577 593704061 213751248 950814713 234916108 238228535 626700029 794737146 766938748 865019372 412987050 502360694 898199796 932976665 883781643 970502793 277023826 629775328 648514358 806338431 684715774 905505441 696617237 825229496 298277989 646427692 834129557 984120257 880995404 995156052 773440166 900227817 138146048 287884322 613856761 775747658 297605978 828013095 867152077 976726637 335727293 374289910 797286550 842405917 392911026 665509201 953241223 982557360 897171287 940780978 591382230 592616036 407545858 855246814 109644786 821332084 960913033 966103236 642467026 993720149 844499279 902951914 890643026 971060431 124981319 967278918 954000575 994169784 86325844 726133105 858800605 904968235 986959936 993971290 671492264 694856616 846788650 928375421 90787821 454209646 100253012 795022190 748569432 820201910 641415671 990923696 24473325 61859288 257060077 955221431 549014371 655784499 436572718 665563134 576332151 615245682 635607186 657575883 284718709 637641131 705556101 907721754 395793892 686339099 820899613 865966011 922921171 923437006 213420310 859328462 849656646 957117969 292378873 445098949 588212609 700765982 86846549 855974781 632335599 792660195 887071439 971289399 993957790 999249892 811343153 966099229 957918182 998957866 931452893 965010794 901472644 923722696 437985272 475796908 866158266 949929823 32241083 946230735 145444778 405462542 658029390 805157055 664771978 694650379 635767572 750636505 701970668 990469978 624287474 968186627 870423256 965814772 563978869 701532430 917512112 957655058 143163816 361973500 206068103 955386326 495882396 938407063 984272562 993177012 290120516 526837686 687865552 997128488 293168459 512332325 872270310 898953450 571480756 731275555 887777166 899327735 700368238 925306490 140231281 557003194 150278078 374197822 199885207 342638527 868559333 984320072 194706804 393939651 213156290 612725773 211961458 329608768 780617161 900895027 363947895 891876272 251686061 352747025 903627919 904698057 896350843 994256148 510443790 727083170 842841021 995767114 341219228 628729613 428568745 909997175 535610129 905982101 700987741 847751323 177498998 228720428 354594517 385203356 490947142 507137526 747834907 928065997 462894712 999937901 369586154 513731224 105754989 359587938 219275243 507189350 82441744 748250719 365481921 568815112 417249358 766063877 793001319 926948762 717274763 775029396 99436182 787055727 176685678 454675882 429651867 480094594 918495217 947188822 475111382 778550079 68482538 516286422 900161124 958109466 741115148 918787114 797405998 821010682 481334 162960854 986022742 992598196 178383579 748275450 451643022 816911975 122227819 601241012 440132092 896071668 842867786 873092990 53609034 268841701 127439249 740625420 903478955 944553955 427221233 686249491 615997903 688977779 181181244 576789556 771711253 871036665 752955366 759910493 806895319 890831843 419184227 567394331 797549303 835949658 139010108 929328922 693057561 863288270 592131542 849923146 855781185 924923046 632940954 872908415 693777193 774427892 304894841 996870549 242276234 981298863 66118748 864756505 97558209 324610341 887749052 980359223 68973389 547351778 539240909 866303987 51522405 831075122 125144041 236543656 29829899 792183135 771247796 967388687 660736980 840495800 592341100 613447868 706732996 849140336 519845316 826474767 377227749 446773126 301163042 963002767 232807926 367455508 290467605 457685624 907692568 935900691 436472084 648949661 618228451 943379256 785479629 969852471 657719170 738716545 542627507 652305399 186358631 824702621 24218877 914254451 103521884 522005497 423466321 430312216 40381547 277878865 218384311 876633024 201706593 831766252 808181799 925231825 705464669 871522746 577686784 888884516 769096821 999333018 831678437 986679488 485944887 973670652 525337806 702223225 990261347 998093709 332808538 414221356 493479760 691984017 793400298 948286794 41525580 909501784 327637030 586676914 421271386 844810124 769359487 839895638 808188639 920991098 434656134 881751794 704259542 836850475 900299637 987451293 575525670 884442022 102317399 835865758 438436756 473166270 86348013 854757150 400891711 831767714 865831040 908993690 715273124 920430256 607986047 956376450 454180033 737817114 224895169 453821606 161255805 718342009 998040015 998602193 154649578 898913863 868801842 928591226 95477198 958533423 817676955 982643082 250210549 657133213 853089349 952410291 686026890 716815732 681607197 691524325 923577296 999095241 467498751 542738850 60342453 435643568 825778661 875472018 953262596 988461671 958272346 979506573 313513892 824404659 410818925 708001336 967684151 979442135 893172190 993814889 481170283 583259721 258063586 596531673 511578586 913337358 184798644 774828317 750758794 803520806 664313832 771181963 602775115 900426314 701117933 818445681 181033538 979221569 878254756 909784391 25254742 562104913 82478585 310432986 457544793 811568957 458156875 569622321 622610906 950977181 826312599 888373667 779848565 792586668 401928009 532651030 119766937 433545813 892018757 949563255 752415270 932730949 412330906 554456531 701199545 933992039 577703995 671913402 284209061 599000931 298984588 369551652 170204359 737650556 826298162 986958156 175549921 697082275 514071409 764193259 738194954 841228741 341406533 654064636 298354406 307075673 675435307 958490729 767023256 851410123 323148786 396791056 966556750 993757293 270322980 988192327 94215153 531522341 677790874 760051366 949677360 963084669 930617831 943380247 612695586 669061506 253452125 979312827 56755147 381166274 900074280 902094565 632647062 867592763 219040061 864229300 573193792 635819667 341020104 999496064 101961366 754492765 95033588 474341259 702442103 775523786 147896028 402383493 988298152 991700756 514110725 910072317 554442957 913698588 531680448 712138121 525704272 887229681 524461367 659271223 786380362 894241515 357112761 846246883 166778711 815653833 682295862 898340302 699539609 830093864 664361506 755741047 165829704 499227601 839666297 877674795 941469379 965345945 336344150 500685768 878521719 879398407 509999743 939285798 506198799 891220772 491554547 774911204 581707277 994923672 123500033 317485558 363646971 647186113 51434968 723996204 625590198 845257452 601899401 806456245 454488998 551301200 19769956 310721554 865188396 940434769 774177233 914216212 657746857 671935065 438709692 455187907 87689220 167626138 714771773 839567765 498531125 796161763 381791243 832042594 860628589 957153375 685639628 858592942 437447935 699250722 214075034 893665335 73442904 184640179 662203436 684856217 606054869 626245163 868698305 908531357 211867123 633979873 939133040 956778518 834716399 991380895 764159281 789115841 83226092 408464473 978457922 981211362 454423889 647955303 511096115 610574025 556244595 962776954 307218067 603644262 662578261 918250241 590545186 990423826 87970156 827069724 820454233 903509063 932138438 996814317 16778919 20155940 144292185 862946750 228591001 399396199 215954571 671305309 143203956 164617570 594071365 716716799 800354858 837110804 397862362 485430190 68613483 742796854 590518980 853534139 878282062 991810735 350567101 833542100 960627112 977797013 261975728 641104129 649296926 899559026 415311513 658458739 587408685 648500285 734009707 863647196 245422647 950951311 351881731 582642094 689121033 717256113 92869613 508392887 916702674 930037518 653537738 884406806 870078426 926049956 911161471 957220698 438846381 711673345 2906122 989316395 406957304 595171367 185870674 771340878 668948865 876455919 840151077 948196437 533569026 776638351 254907263 491573048 664540355 723613713 472789549 982363385 178460407 322785121 526759265 539027065 549946746 682765353 849441179 932666118 428002979 441716774 665176274 800888597 437197170 811833399 732040180 909839860 837532214 869449075 615078996 999808591 158642256 856239690 385582642 927769580 740829590 976969097 312685491 738043280 469087771 570355363 469298676 990032457 151534115 737468099 438350655 904682445 717620327 839618021 829426293 925447755 203487258 716788155 757148657 838985031 807481444 872085130 35754042 171782659 450583783 683299116 107046865 743108999 305403718 724478328 772456707 831442640 590696774 621038666 627005388 705508582 773548113 791830358 686299805 763151556 39582713 697657443 993008318 998930443 545507151 970155705 725851492 903972025 619613370 635142015 966154327 972819447 733184030 774878618 511878578 578409517 53276375 276195398 429774164 867418691 535557618 954088634 87070307 603099368 136374070 761803869 351435335 744071554 767876738 997840628 399483834 628033850 593406796 711685767 876230954 937767376 271861433 334194714 531499374 938452486 676747540 744242594 413081689 813896423 905091204 956363764 634674657 694429163 822606331 847217030 842272919 863673158 409145535 878958098 683885686 827984626 517644091 639879981 261056402 775599610 235633993 349336653 936466579 961104954 463846332 613539190 950426160 964254427 249318001 863107514 717840948 875348707 459507050 883373570 581141101 659111545 9957207 983168084 74679990 860131347 265909256 915584539 244201591 539561590 673995745 950831073 138585288 817110301 395415857 922735975 978815205 981909766 356352963 940376575 783900247 846603766 965189787 986125248 512606464 648699186 756766633 944033514 842914101 867278655 257317595 352948966 196104246 687470815 168749604 417243290 669968259 690946226 179501611 921541492 596767180 659452444 33040278 784813797 799442543 931357301 169982249 722944547 226730264 680166967 678889543 765999603 211063495 232698836 323182274 391933473 73545145 393362278 620637521 947666185 217431498 943976038 450509685 910641263 332174758 806348817 812717392 935929461 747353485 836587863 613186478 614280582 734800869 948167654 565481975 665619172 220894215 947796244 923728078 983717576 857212028 871360626 282725891 605425015 78270536 567913882 510201383 818869605 490698961 699730779 9551261 827175276 892005320 894518216 561196206 912755537 386251592 602643454 652201698 945413440 891732995 995311230 746882527 896364821 105334251 471951250 954839204 954996620 301730064 869881249 817757343 884145629 882605277 975120906 664830995 807054510 329502989 410674976 109089891 348546878 646110051 843828169 93967408 98101928 242963581 568971910 533281256 976155296 849668107 973803306 647438913 703317876 770545961 932192431 971806023 977082688 978145422 999943439 796272808 825515582 178760151 574787274 259149451 363726123 541060302 969690064 785481072 809685855 819979723 855440660 534805393 740167948 339926602 878819377 935705236 967494857 125541736 883913448 902117907 935053746 119517487 304653244 584284562 922105202 60364899 594059117 614765367 768620519 647801733 923777524 660647185 713955046 779034801 951502991 149219896 790912670 230598312 265158326 872590388 900983230 85967753 957244555 731959011 758427851 902789795 974567796 607112337 638344350 561510757 574784735 887501898 907545202 498357899 984066279 332898566 397486058 371006544 862450457 129900220 732478432 844207982 915335590 143260131 417813563 508671647 959915918 626337575 682425780 332203614 430010342 702493284 829155668 701192831 917207160 450518078 875910621 642211480 797120986 225909325 331603693 907698772 957149500 155997687 965585753 543706650 712044765 603842420 909221783 232714804 580201123 813128646 847104955 163607211 557463984 784105302 852009365 797167209 880729286 790812835 974811498 749176734 987541104 170304841 220673167 413310657 748299996 709224513 764455819 705457558 771629517 701174158 986065831 535630330 718273213 14745814 888834239 818883693 912607659 819853702 971845529 355336749 663204957 419588113 538941634 140686428 156910083 620508660 827316100 430183677 596844998 751862109 880548018 862553367 933214896 965598436 990734917 246639016 468181652 753617450 876529207 145676869 367217689 829805963 996293834 690935301 743622871 594860829 633515239 763830425 770797811 984852999 994179245 458448292 846657759 607912434 778288767 524912530 817155548 188631128 810839759 633382165 674139804 567049121 671341293 158144614 659419604 605133087 699564814 410290630 961273155 293393802 370819720 696218795 996374619 657828823 672099297 312750963 583953723 864129833 951353124 414929283 650687134 406028639 415574555 138590894 475245839 958897564 980090405 361056979 567643493 854641998 991343249 978967840 999077549 299580620 465052901 947464849 997396602 109861418 262796806 113016162 117961154 858104411 955599482 952056399 968831314 190532237 296242343 928383362 953400743 440323664 604605128 276105535 500218754 79122473 735446905 56005661 109871115 212392706 949350976 937983389 979744642 217804657 531868733 227375757 874115992 367703985 517923062 877896335 883523330 293342333 823473552 65686898 912228745 947624415 950188131 923281591 934514754 212068818 627668257 771747070 781819269 903813091 986928822 493740356 829955207 800334874 857452619 871664230 944642047 255863174 716372510 504983721 887769204 734869691 968546887 464837577 595314131 679451581 869025723 285698746 331209683 485624659 938251976 349688698 661824884 148168327 654037927 981379218 995747859 46696806 70248354 860230394 872116450 480717276 614508927 117984729 917715572 742479733 953865042 809443706 985443345 145599896 536204830 32962544 182922190 111089396 766100675 602207612 694662162 255185547 446633527 362755344 696011721 761087423 805161596 689616135 931334923 225021535 905513511 494506647 839738094 626396855 774798940 573900298 607649852 545254705 846748717 743785121 987724840 433755399 503791293 751692186 830924479 776030580 805605835 102989530 547585763 61166177 582024200 407631399 622965045 415856780 993576333 553527914 724672935 395287096 877017385 693976159 775623338 142435616 195244407 805684947 813644789 229334615 281497546 88858814 248631286 350150491 469438677 746844186 926055305 47592520 367735845 599427492 630848510 111141479 811552220 933628559 954359559 995346715 996065799 695371641 762793808 863892614 961843820 507673120 631625791 200914325 800817276 52060827 982781475 550650292 667399247 739128985 854376210 15294380 471285385 641119651 971361048 963655586 997524091 253689452 347483051 293268973 906986625 298655573 991480912 386548925 580785072 236373294 531406483 866327584 891021956 263996040 409723121 681618264 915481665 983094200 996771854 305004596 423429523 118811726 373676735 52075358 76368702 563730976 672302838 236600920 466516455 307990460 637510907 504867974 807660961 169112356 303359880 999640721 999713677 98166381 332655570 439423139 805064574 251398440 489278861 850224067 944699981 625404357 892096117 848474089 968212969 170660694 820431943 836232213 914230748 940036139 985924690 646428539 941114872 408046085 833165967 623362490 926927102 150381530 372631166 75789126 575516989 255877362 487273326 664878684 692672126 990091975 993985888 21254366 336698840 411559295 452727655 246704594 378752704 348923572 756134037 817106994 935539960 723590186 942858473 137911796 312240468 534509396 674342072 215670245 858862876 561407646 995043364 394873548 438213877 277501301 448971179 320636788 371709470 694238991 716406971 952086736 953509255 477071495 950193912 828364711 832759668 855892190 959441530 985536341 998059712 560322770 870380723 436615468 917542404 235136734 466443733 919249843 947861201 781349997 991522980 157408340 266845245 943362427 975068021 592319959 982277170 346169898 982937715 464361700 587113410 889146093 938298553 4050113 784422135 818491384 971152018 967594287 984989128 693820664 898878800 421885493 483099218 728295337 814545862 898633691 965592929 281880881 610248729 256229032 968187017 833332572 972797345 852371927 950208331 574835206 750130985 106242959 770831724 845285637 889728250 622769494 995160734 778338068 913856392 446738771 448157508 589037135 708273426 17484308 865087666 826700728 991637963 367257878 910521609 194575703 296591605 970613022 991217493 978594703 990966610 365704861 620638745 595135866 727806462 56968405 331171771 876533906 951769067 158596230 652917607 34152772 377565643 115723294 152695237 173383455 347245511 767299645 989143499 100821404 908644282 925462123 932901330 272523182 614752076 707792405 980368802 157858796 783023223 441095813 959593928 47712751 715923522 218275930 384824245 507655445 618202258 873099278 987041020 715695554 857618791 729919683 736937951 79724022 249762895 370975656 417660922 15839698 434823750 540151823 626313434 629739735 650921760 622546875 743474797 391513150 915457886 384360619 428821773 207184576 653082160 996887581 997151673 588000972 964256014 235425371 912351297 656562819 983702688 299989278 906567611 177736145 496650270 968397320 997688823 633507802 980176658 479882097 877426329 307434029 964148051 699795740 705054149 835395186 970407433 163583016 292135194 310155707 769143788 766910229 871337198 194297834 498928911 445731134 884094553 48939653 181096682 84757828 974048669 279272074 358392011 429378465 701239416 906269598 961925044 661790699 744856503 319785443 467905283 892273106 935306298 791649309 871661857 687038065 930066836 640795428 725169340 533296800 841024759 158715902 282911192 942868138 978026236 528247449 729800317 545102351 958935350 653580421 769027355 847961716 869976736 884867804 950701476 740436692 862950808 320113084 533231826 788569439 849259258 328643304 720340074 925669013 969144801 963055195 965519788 237251582 762804905 726278529 963516092 24307865 52746245 506268617 547318418 649412255 680494096 53226041 381343155 35592143 293454233 221955576 884089822 871726378 976890337 298013129 749429701 720993253 968142903 115549040 211047837 363472838 792490388 744096673 908120312 125366067 452267908 596642878 881912906 54319202 879681893 408020737 890602087 741884818 972388145 805661949 828480388 47646035 533742271 934293298 968536546 601041924 919814257 790298365 836731798 370905414 968738591 923935557 959549710 376998917 548210261 899078011 964443454 354129931 601255285 503352384 628373848 102950712 901285008 59107165 777191654 923587723 970446076 700988785 823145378 575722742 743782917 260416359 482938685 261275232 947723377 114704405 703967015 916982795 968852187 670980556 908889832 432712916 593878115 866882415 914145103 746819226 913304316 182765496 918902365 980298848 988675501 759522125 861515963 173572067 514418461 253549298 503862535 197146778 596360144 337295735 693551111 48867922 762924226 348459489 719921387 357054906 844293649 382703462 957135634 441055252 522653999 828044711 845134700 975617915 991153960 544941850 903613726 486775967 739656229 772656271 775898921 859712092 965844761 69094532 183045640 315029118 464008750 942458712 945304327 139212937 668416726 887085238 889815870 340052796 593411146 32693975 370873018 649200820 873640095 323653991 969313568 741889935 897014368 54338496 121997575 331642229 716851716 291143125 568978484 313872574 668293942 24732024 32308796 223015054 424829158 674352848 920610384 646340755 852857278 535728291 941195407 433613603 756174941 70382257 730208897 717076077 952482220 731373710 909458992 749698601 957055274 777738963 939451625 489052229 601669149 735229166 740351990 521737049 720073609 675094819 795235713 459662715 903732824 930587939 993402413 197036056 484726702 388477650 612620202 507510955 698939920 678184154 898177416 596052220 677707170 251078932 838944927 60912712 688518335 221137510 596405862 335313635 793303976 680838096 936386153 548404106 992195702 956214001 969658895 292513730 300690755 764055105 888529715 421637388 743533988 658687056 926041007 624666158 850566265 597807163 746519357 899000274 984863535 720955182 737381007 299670538 564430987 906634670 996137761 632156268 742389262 216432637 753138589 104375466 721538145 192938629 917172723 662646518 748972908 6524113 210465345 99884617 906858648 766660624 948705916 47243879 563149782 314803280 425278388 466493557 849285661 404103755 557156046 441403481 631466888 89621620 126845039 885977229 888694227 89735126 483576592 983213547 998862081 537722984 616823440 759798265 947983971 443738926 681127368 70209638 803193821 96972787 862109856 870328370 918097224 262052971 707515083 153158131 710355080 797432018 920925549 180747741 713397148 553453592 665260497 738512395 957006679 957946877 983969711 439503970 473618897 319599857 435245540 775542829 948277518 890850582 985909344 631722438 905866272 781591433 793449501 515738205 725445192 230921270 754266988 862382883 876564282 80534719 106694272 72990440 324983867 159230912 753520977 975444404 992274461 581934043 617092198 411877429 624824986 827863902 936458630 462904460 888231125 245870283 596707124 960795120 974178968 155926497 542191594 920076503 979053760 866317871 874790181 258164832 678027260 237533989 777355035 369978726 985208794 367648384 806050901 912622411 969770648 405866350 797231381 720171865 834969843 982065799 993753353 812503572 869871539 556362922 636744356 6574825 537076040 34120911 783061556 419093324 947781604 300415925 969177194 344792625 900969431 477060047 608776879 908887451 920448207 755387964 874173021 960930476 965113987 650567584 859603559 171463287 484246771 194311292 849121912 585163011 730614598 445019829 994605940 430496322 478743974 46581989 415615067 570224402 659614995 397636427 679965904 683981451 749731584 597658348 679102683 87015118 971746792 531390162 778421770 149399876 682646421 157040633 682481834 183048875 369838579 475432891 711392864 386920975 533605948 937611484 987354887 712909642 942336419 843321058 989117745 347409031 360242190 242799560 964925342 529572486 633649464 561785799 702565685 223448507 410389795 449442249 991049793 673032910 791188611 816408322 989107797 385272114 731279163 548964455 698778988 939885490 960022393 533526588 835752957 248137197 478862206 522055659 663296867 432607642 825637249 125904025 314549136 668901271 803055607 39082575 200840150 306829924 347134991 820240512 829862079 189507473 641267530 405450150 776663597 272416389 736816947 891662925 956510647 795234882 885330399 874958746 942388470 771609600 957759860 795846190 992689410 271669496 610326096 78033002 918788219 337030542 593492952 632242361 749708648 188878 548896005 950662778 980209061 123186504 931240469 799355740 898233428 513602902 822383928 410160735 541104979 609604864 957497073 233794420 979472808 203271575 876833334 204738027 519877608 893978910 906695368 448251433 852249451 80412605 800442080 194065535 877445296 609205142 868340063 254553292 295720079 702399533 940538337 717387575 891419405 802100861 928824284 191234654 696489386 42055577 619459048 876747096 957462304 717717278 968771286 919828987 922832900 14082261 637323086 882617293 931203993 128029990 757796500 165782872 384534563 47652673 469622282 239933238 855152811 171184391 465298557 141505990 282950861 327953296 860215747 998096301 998106281 981687973 985926639 87146060 927407863 880818484 978432248 619359417 964648635 867043949 927192004 6258270 773064401 460061127 818874500 191759703 239441455 339181945 684341329 700430979 932167167 501247653 537410574 83993148 331584546 490673603 867252573 623279231 793404306 289527578 431647948 104368607 319787425 357943545 819928484 779298111 833318448 667518781 892279013 227549565 531640946 305310070 443355884 189939865 629721079 236347006 634407866 28246600 370580872 708931223 806674754 228798621 906283058 936389333 987282170 100542173 613517063 125937370 344682571 342993164 548709386 634431256 995351652 368044801 412045882 731073619 760008780 768293207 935254287 531807668 659084467 770740046 855234262 397678431 578524997 879076224 918912098 886321280 915497234 30476810 469974051 494403800 930065043 549070763 668598327 645930843 992152983 658568997 875873154 951615223 972526381 253207201 667572475 143237609 986510472 89231744 303055609 248505106 750136094 55499412 572623631 412321807 727954219 915326371 949511738 66474258 287145196 39455609 663696379 165655963 451142853 358675606 813082870 856349980 872538529 789819295 917508194 865461190 948254177 314046896 462813488 507230262 810431367 404848556 843474465 43757551 606656217 856513553 992318606 353534532 935949702 135572024 722589078 915260368 974801953 908540444 975016342 895848983 982926424 31927356 416824234 292239369 332907776 524247407 611161424 644815257 696448703 836357462 939238370 126945815 765534731 894239281 921642897 589754173 743106272 810498479 962950544 347196908 892448517 759673590 942319762 25046582 402529813 369152564 442155265 876429334 966319194 807230002 879064612 741684417 845322480 728387327 836750499 8823197 38126965 215481048 736093742 727453568 988042580 331980609 885967595 604117742 878618047 537429378 923377365 581047860 666558989 392513054 906915767 187511359 215430611 388867867 535145403 192611065 452116958 329109465 747015997 758621035 842923067 823889853 986947124 57070339 344278995 160520486 270678515 24698582 621557574 950544791 954594983 20259440 140916896 531615890 750688509 711193551 715848603 29913116 206498793 291340098 855682665 573530970 816512902 815376394 978149859 520225835 714186994 501936174 925538887 911271129 967934049 799983931 944538349 865749333 871208485 499541822 616107558 574692361 680419262 204860381 510434936 407301982 586478774 125900852 662662566 767223525 860888068 772104236 920918583 741878581 747439663 583526751 696491910 234284341 475914073 104042272 260156552 432402456 736289126 996309817 999773058 62606160 729565499 86804326 362980313 79061824 147820941 822096705 914166988 926213344 961972576 597683620 773356651 353010742 936338438 593552552 891579922 602522657 881803787 560062684 683619496 830893836 994833233 577761628 598643654 750593808 876552637 236395348 990754940 339747274 402659391 4083732 334330318 781022282 878231208 93853436 162900153 753371722 876053005 289444811 791865611 859783727 964847548 630780328 796918615 268071009 492612793 116125159 203413918 557428005 680197352 375449970 737288768 192756399 901648420 455295222 782069776 916317503 996341374 578611334 943234649 978716677 982568990 368590582 649880901 143945813 458798576 158291250 756093715 338670224 478068811 784205953 901382902 10560040 872254354 183901164 262502362 553665051 863255206 271453673 434075407 93831217 415693617 891901656 922661384 774418039 863211750 179185470 588190146 684619396 985543433 684316000 974849666 83097407 717459205 184097282 791296861 42459996 111084358 596617420 968869375 869457620 879034346 60792625 848544666 500623983 560455616 882480387 970702861 877146252 971231546 17147168 140829319 47334805 275520722 303386475 311998170 732276372 859263982 117351503 298392733 417990522 548190828 764597507 987548450 766675607 887134931 442762475 827360365 115948990 484859433 285060510 446075331 999739485 999801391 202614240 831283319 605929129 806213400 783632073 853283171 95288629 988235745 842808669 875036154 444390977 799674387 990160404 995984858 339450726 584191666 975349718 985688843 923476771 973587691 531391331 815602886 221357940 562492023 219636677 663089787 164977115 199634107 191445001 419661240 511834275 625357639 841797360 863616616 402325477 488663578 433950078 551979439 630153086 732289823 442795672 899188798 147157848 651834854 907011242 937971538 829196817 965976855 915162285 986459426 228986143 545475377 45495479 484120330 847355511 980391109 874376165 965072364 424498193 629684490 327718164 921515078 226837222 796710507 599896255 672544727 488791322 622034659 411400008 517349434 737024592 955725084 780179133 797470587 239376519 999542317 978534034 988130984 387410974 397804475 853514200 939767956 928386900 988005380 481173012 627920159 767461200 824710102 678054962 916927710 333643515 829575877 786039104 882529236 30996898 839232713 730920006 837119753 168921865 880818600 326298410 440727845 283066045 882584324 217767001 369260445 989086944 996037148 883819482 967085367 808234635 883531519 674744503 736499029 764976873 842302867 302396788 907355360 612507876 702996270 995894110 995938457 166207496 789865997 104654708 132336982 403971941 556113215 743294166 891236316 265348128 408283818 191038310 539454632 683934983 730489520 814054154 819741706 763339329 959821697 995031960 996890486 711590271 754646635 340818292 845452069 141541246 995949046 908607896 958086508 162934528 251219531 395830133 561800295 458694730 717703348 292683327 293623123 487684703 675578470 435666180 767804891 524605776 855537272 271851446 291980348 828656965 947304384 714431807 745003948 859879265 956547672 198520627 863572613 787679919 894153561 943109483 954851648 718195547 774703684 245148128 656901745 780173439 882617614 154990430 336188268 173347067 990322707 803828418 914455705 875071945 908118526 244919457 519273085 151604890 281914786 460994201 969619925 595962629 999495354 383645213 951553345 502076297 748850410 353810302 627032167 381085342 800678159 322568353 835760856 427795131 889508122 430909580 829207004 297523732 567732485 148290569 791691914 379220789 417251499 956618431 963916577 375907023 798047135 362176413 744209577 702864174 949682836 265537699 773478394 553439145 876558926 653663871 835785360 637919884 954230755 215801784 691290665 106150038 905121758 411465487 779068807 69943744 381232537 401060623 562592596 435997734 949792729 761067301 844160924 771408067 972925937 80658246 632783889 922158030 926468907 132108702 211208998 672840059 789796496 164896140 345257014 22554157 325298063 354775996 614920068 171333887 222205502 707616530 847862667 622092921 804160675 212946231 889692372 265277224 893240864 345563486 636007898 30078166 788746017 372993197 630028884 464112922 676931662 803903435 884999854 745391227 933449233 612443790 818170916 868196275 961460388 26533928 594803225 94337626 876898140 63602642 791818563 504967628 772062182 825143622 986373577 279264185 879399552 784151330 807421734 984001460 990453887 41912970 776442317 740273941 816080559 974763991 989194364 326041894 339259035 634897783 963727701 21010845 151898977 311438125 764645478 20864866 126587180 321826542 426981155 811717244 857049684 36036388 385801794 827294273 975029308 892235742 949064094 334442816 339925802 98641957 583490659 406609131 702308424 824968046 991029559 195978542 949455646 422943662 918196981 485777591 998212159 879727701 881016216 962938332 998591391 288874293 625233353 605568491 895982522 477239731 886972060 505572903 702563273 270933041 973518201 900069446 965718325 32849636 703982821 855233183 989168920 443583884 460005681 167524484 628412913 462184802 555546818 550984782 803298696 417588995 612067357 204954681 456228257 388564037 770578346 297222973 575713485 330851370 339751878 901003668 981116557 837048634 848451035 303033866 328368146 603102093 713024147 525187533 582596305 210357721 870972956 144213513 389763342 864762401 973498902 511935109 931865771 882439808 970533724 891011937 945707360 556735786 660818116 435155608 955734035 764288457 939747239 455957649 552447101 742376431 942268660 552748545 753391233 410417000 741682715 370128387 979156271 444504797 487319294 542985254 899251174 990168706 999524730 561304528 852484704 689518390 966369685 926945580 980237943 763020136 802842022 941648465 948424088 591980093 712136474 656029890 848813809 530823964 722726396 469587764 717748003 173500400 556035060 454888200 521781368 32730758 726562874 816271987 883070333 933445896 946069951 131888980 857624846 590274193 776079258 34398836 910972855 473670323 697624883 757079480 966966301 931549370 961706510 440802225 972074630 836355493 917086478 962009601 969298964 611744837 949200664 774844520 821564841 636282632 934670449 919097445 975560631 994670488 996629996 532053775 660212387 136875616 215902510 883614124 956001748 771671563 940679435 690082982 792419799 697750649 882863758 207671978 489195481 505167077 982679880 36756504 993959959 927028708 985136474 102191550 944728355 633335162 788797129 526980503 538670226 465041201 588083458 53204591 517794856 963778586 966719439 680614103 747411326 578511394 964476553 585420826 613632726 753585869 933079582 162618195 611021184 990248693 997907909 916872147 951877929 816721200 939066385 969599280 982209366 935466196 935993087 46275171 714842156 325688841 739437564 467462158 998194228 30745039 551582803 341652928 972541962 956746276 965987588 299645110 700954029 526376425 910050283 247964266 908956804 755057834 929443165 990701209 991451417 511024980 729099402 923479749 988126857 370775854 514155310 640034774 897699302 979589281 997184493 382981005 995378086 531245604 644056563 688477914 887632461 682564844 868085474 985888452 995689127 813122195 924205476 75471713 549585568 76391233 425583403 233466809 743156743 993054211 993698485 621630897 636897983 842849956 951915236 472320153 838129938 174894321 738973229 305926012 607038017 798535917 951611059 713984851 770418737 505261712 929501588 711442473 716014851 71530048 625487835 949101920 982409422 827555542 987663590 574217011 605251309 909935989 962966914 916667804 979562185 116386615 330829352 448062504 563951343 128770208 921933286 948450978 953523057 920094358 920625806 10085745 571053344 559007930 775141367 301027899 893909841 443458761 443898909 562069033 936550356 711745922 985169248 582943789 883006924 297597707 783054119 186418965 792123820 873444707 968110210 702567001 950975342 990399834 992019437 26887684 449669983 440727830 964425172 491486382 945695729 299780812 982462991 599324062 989213313 165043959 556224590 590114411 800642928 426483907 827000093 287818470 482922107 383431047 752936366 428723745 559612717 423974878 954623173 845833424 913432767 307630683 528499263 497898365 844787411 913373755 998560507 771401271 817782238 446250683 685697500 430909570 783461115 182229405 428928043 608766397 871193827 449199034 865726255 234388538 621984744 695890611 886089014 796937079 924464963 466737498 539160922 289127823 641922715 422020202 570718112 167438160 232259722 931205217 974417987 864765659 910188507 620786813 655506176 251410291 402319074 621441294 665705481 889873727 923976645 486758023 529550365 256457655 720476464 25408580 311474736 374708685 848350751 404842041 952473965 665745606 996831277 881324286 981369386 357364994 864286919 390221572 482282046 133946345 687095354 115372327 279100818 553388933 667864201 762555815 817114132 349289613 922871330 396365600 888938252 434543294 867220059 546585616 712027696 60497537 704970216 519848314 561664916 946147747 978428578 936515201 977969634 179211221 518681353 839456775 908484067 749430813 814282136 810386787 966919107 541970275 695695539 615880580 685389418 559887992 635089419 832789182 837073833 138687251 721539425 440392333 528313121 782636408 969075630 108336855 799150060 147824126 501593331 596936519 653017849 875740352 917174728 140962898 326822744 525721820 762420293 461720735 921454126 6052234 369309881 59768236 474217322 928880649 946023452 801549164 824737427 224315400 348270180 713344831 944180809 281064547 970614071 326189437 524051333 369901779 735774566 717588081 890093168 466323720 472480518 624300062 909929517 2304565 177138288 327161573 563497337 762311087 890896596 311821853 651865226 846743219 904887460 142471312 437602304 108216271 622452022 146410388 242290109 783187858 823323516 867721692 940138418 995078128 997602036 524121211 564214015 340780943 462973692 64409693 610860840 650513244 861658900 832655559 866519098 178360474 666463086 307690626 941428670 997075312 998062781 470812057 658018577 200533208 853764165 651005069 863520933 298568174 903672616 51225292 505271057 719525428 868024571 634049352 949040924 650211757 814778578 866428479 903539902 692438065 970942008 80600386 123686768 951869418 960152045 105646548 419876383 360749465 533116699 690773768 960206559 745114670 828260764 39852332 454201785 652591652 746580042 976902427 986779804 119928726 219213318 332750144 766829443 33032842 424964170 985893602 990769566 76939398 586069430 633476474 678692719 515285396 982801118 96695958 265711346 175111264 531299276 943255003 944441052 502486206 997934584 664196136 672484686 636281731 886453890 424510272 943160238 700100135 846538815 543548168 684616288 855165013 872764678 182750522 486643537 284995793 319870870 653216214 910736241 274823198 570382891 492372149 986819768 132612381 268231024 743997559 769802850 533657394 935900245 894715452 982113973 487756256 895156489 954690963 957528992 286990704 716322612 218762625 598621507 641479891 964959115 943541005 950995266 252515238 981821306 263785213 520386741 148194676 608483867 822398523 914223194 805327219 912766787 43423317 935710230 85034546 593323871 113303341 600998235 444314559 533081899 171115274 645902130 470092086 873777010 309608392 899279699 409277598 536641927 146068146 647823661 159996209 778358463 293444551 580179458 250603876 517159909 260111427 728412739 852245213 852924925 699696173 822351803 755983837 888766868 3444025 854386353 737569525 999334633 539060929 871637091 288748589 762504400 550515392 911125350 635874704 692589842 136208765 952723422 561498320 562940757 439272928 966492579 430708327 903299420 944183946 972715178 981491816 985583900 754274218 786091484 44678644 325337575 563771593 941846233 6412993 353433299 808529970 907394946 720269903 818400206 603985369 958583204 302898372 795154189 200631968 223872355 224172765 274812116 306549077 622506389 378795863 462945329 673414652 911724415 266384476 281309739 188830006 918200759 523553067 643830518 450008100 864899978 257552637 651686021 956522554 996696717 579278824 627021459 186576966 837726373 777663499 966945090 521790529 688743756 952110323 977099088 958760000 988985351 979646094 998725158 348327907 516539723 937799770 940998361 78315377 345073960 733524933 845022338 228473972 271055684 648495497 697048746 859521573 908821367 542016583 808919786 685221656 803240314 196899857 391333149 646665621 825639025 920433445 923636567 950192012 983337557 861803026 899361199 423158991 677144896 42751925 443599480 27786034 900358580 155623001 506412395 380480963 760969936 626843017 815406364 573980041 646819740 496380098 527911686 321642215 981371580 543458267 947172255 324963570 903247744 495641318 514764358 519535236 848241031 779684928 809867602 19924811 478152272 130820049 149647861 277459600 961405635 784759296 857826935 834166000 996127552 998612107 999811703 30187496 903457347 653582901 855886692 133187940 462974815 31127628 221030612 464612547 841815826 651523269 688637991 848857391 994954994 229315118 637001412 317382611 600671417 362909665 712591418 547123227 579453356 864728852 961245139 611468201 933333462 972398638 981896742 345613707 817505894 160461365 383447044 119822710 982298718 253891453 750214578 78993760 602804885 712353432 935734505 473445940 659763528 266546394 493579707 461574446 473399252 664476139 842866761 468299923 945335811 183564253 387896827 778746742 828135595 514329279 831851063 858310063 917373859 62748806 829905430 849002260 976975992 593735865 669688068 7123367 228575468 585712327 686807661 563115039 859934889 891711320 892165888 1044399 954463433 532042197 646854531 797944906 983268798 328504826 901392165 91170485 913001096 717198284 869419320 2684490 790430745 796286940 891884881 319834219 384989628 657525777 847315648 74839485 692209335 621672760 758091725 487818171 989296232 192793075 715172100 382295676 697522870 814789943 919711211 197114229 829662871 647519125 738533024 98186560 534961310 366854536 687593724 127557575 716110601 765452563 766440939 841369501 992864600 982574155 989198101 588712376 857911488 447378891 733793832 553519735 998411428 476958981 543854275 512404964 664960194 51955993 373722466 544023101 647459684 686068405 862675324 695983078 871400717 422618101 700302114 598111564 678673472 629104122 630490111 821245328 880541383 186143599 219827408 305545024 888843525 209604408 905514953 893732951 976251436 96921902 794937233 925925834 956551567 667881664 827990625 296265492 474604932 444894798 655411952 382071805 496456358 200157595 590685491 67528820 694680653 157282950 166770630 59436565 322172608 83705100 776084985 643896138 736827229 292837220 607842102 357100362 920240128 379522688 630600290 834557534 850839957 557917897 598210828 71528046 732014642 566632912 620461091 979216170 989760905 812216817 998224779 283524515 442304801 470330726 534275914 976544857 993262324 164297014 626666293 616519079 899997531 443656224 762178546 15841528 531563682 121209805 204874446 779611906 980420653 497559019 602892636 379349791 919139909 172395530 861791924 342223382 505143143 37421951 513265376 674671910 928191620 860108667 877038469 668001210 989497775 192737756 237378255 445146574 658267047 923114146 956585789 784553275 936004441 456854337 709112572 127694290 550651398 763313162 812242099 696024093 838086685 314124512 397054006 812538935 872713725 579813717 599388263 983899330 985782622 19782826 70913906 475991100 666180931 699900488 788801931 780927095 896601904 214505188 671076237 902141276 960520479 624163051 883695925 180919927 575722500 458747929 614744204 579209622 611442474 122176705 309056712 718037638 835444429 359997605 953930344 258254974 382592549 809695217 881318358 340413390 962192682 992534282 999612985 927933995 931185254 257987191 272219675 569150139 985906354 6799658 855691047 105827774 454496024 511811114 903070009 971686514 995359076 687177468 702450601 65176154 627767049 687507012 729316132 600998261 751450552 875426300 901706499 37809631 777993900 227725752 962616839 842853410 888504718 252232193 965501726 393949645 961263812 494237052 614134572 552598394 638539166 624368770 801566135 46723260 887068753 844625833 907723998 130750250 208308408 303588224 569931760 460485802 962819761 689555937 860191192 132100952 565867446 373425142 942681671 197082676 909906059 520238275 819241980 32642149 290729034 780374822 786779935 208198203 978015195 65344981 930813564 534857415 777036955 110381193 160593081 117670450 331470723 198935044 617811246 34077401 857794030 793254406 927909431 982234674 996405379 753243431 880986404 4059557 189571076 607632394 859629912 34065125 760794111 192155532 300423357 940052271 996075809 959243690 998618300 167614618 372066447 680668644 692585565 490254941 590220480 509820114 849937562 489823589 877189078 705093864 999846925 385266582 648055694 191872123 307275299 245496989 845937875 382132177 746286083 560619904 723349593 189256236 830790246 985547681 988900903 599424804 879091581 428708994 463754211 671737801 931659622 649130018 875328226 238955475 645912819 37636161 277422094 779814114 936065298 830408740 849729938 260497134 302746080 164456455 306414386 988862166 993454962 204652330 314166587 159783459 407903504 968465376 968773109 798553646 832901080 772071531 821202329 323404590 398485228 208239045 523259400 635455975 907925185 617391510 814613595 942732185 970425736 985061680 993842460 910336124 923856969 414485266 939611845 530602245 607476675 670033792 784608565 886373845 988320318 814706017 914977412 818995341 848030812 742432186 845564491 717664728 998310769 300571506 619863871 744715423 828535349 56957151 981173587 690784911 994448684 806917002 827715221 529363375 761448220 699222133 764961756 850588013 921537370 112425378 136058195 856341451 968338029 941597179 990167043 180070316 739219844 509223749 840862872 123628525 432441573 392918028 492695938 919816049 923825320 484557923 524087430 973648078 974650311 218613396 492092211 10146123 377304666 730060950 956368744 393915855 647530775 736429994 869958903 333511175 984945100 801308552 899742315 592623260 639077484 757414327 922121785 121188766 561050081 602174753 750555848 263993256 983745357 303516370 924446508 163130050 774531272 846002403 985009922 268103513 924188671 863382317 907083588 125852308 246276539 523273668 544409350 367453234 828912462 219818946 343249971 343267458 681947620 897628727 905840865 715682600 772701754 893831188 952068994 128907094 135594835 448779494 995773521 295307504 360605249 357782840 886030082 59410322 113238672 7910428 196371077 994006109 995535417 530581960 885716394 361153498 685033531 648848819 952226084 815314148 946459227 512723236 908493894 260709512 970255925 607282992 732959296 412624728 935670141 159622668 497514733 328868110 920887649 131293300 671235114 314542795 758353569 730860693 799517496 27540632 773522661 511709463 839310052 778805414 961761215 677989557 793797845 122172040 923741925 440861467 649582765 296358205 444804684 828587920 901474466 554557074 675047468 50277207 663671628 897522103 947355743 932925059 969960771 969827201 973740643 523582372 568506789 399913894 453433769 564253160 608618161 352893106 371352593 749830617 887146302 560154421 822439944 272423453 984207167 541842095 756408529 323360056 711252219 457483311 837985663 43417678 422162351 611515156 829966688 555658489 594927075 230280635 897539963 490993302 567259661 278940477 325815962 32092249 533467822 731214125 896465315 34925953 160971372 380709388 774727340 930929671 963681144 667996569 854571121 562735775 965630485 432536324 808921231 659610607 823960477 834886903 907903837 904797093 976504528 922618894 938050146 281254529 349478481 805038317 899083386 851639924 877229370 207919065 864788102 299003041 601024806 190888673 717964711 318213216 806093225 232618376 776562168 828516596 864155302 35513236 498887210 61208944 87530590 120495688 661064882 719956816 990732466 399344400 909481829 716607430 785335314 359590323 858000366 826999826 889398372 483191725 513238622 663647901 931085240 674199227 850344607 681048628 961893176 245705847 507634637 548450333 793629534 609637795 885520953 844936484 906093312 966954600 973312495 533348739 750754814 915006197 933191711 103528969 181115214 777090537 801680092 967041832 977403293 861830212 949622047 713668695 983141788 254883640 357700965 913168432 962662303 196578225 279295160 947158769 985854046 906055315 995228034 501851909 612314072 55709057 313856484 114036726 500333580 517363995 654105332 479181108 734428413 891249524 897816147 332067772 711368758 6142934 206046658 960282120 967527407 514574809 678742814 187611113 990959799 102622838 482226063 106203941 491110696 340185404 662707223 726316931 793975754 885364879 889172385 828282226 899136019 586882708 829216954 830340235 890375052 679613060 891025313 24972342 762697681 738107843 901897753 438136313 689489708 939698633 952364468 919034685 987097598 665087213 800675342 392373942 971116741 486487167 996463916 945559948 991252544 216026509 428400508 932843549 955890403 448994567 908123184 686447124 708143297 61286465 715934410 781312916 801199944 638619439 700492596 669689075 748911363 303272648 399463689 380620410 687490085 871233127 880033546 323752558 368705599 250348202 327573241 143010111 739526374 546480105 650477128 144251312 512375005 409039834 912773063 984614873 999006161 983321020 998470823 628262678 775267254 928522611 950045972 170404138 847815620 499871325 596464131 680996261 976954814 35647437 809138556 338141492 957741961 960982052 962745628 94650397 745650859 945481495 965314851 260590844 965728027 85711236 156103162 117188972 641349419 756393268 922386348 260414045 505516551 960055876 977891443 440024711 627541852 769614676 887402823 661068252 663718434 921411469 945496772 702485845 741306771 924948994 968781470 792344435 907569174 792443961 842904313 333361723 668949362 479619307 795759752 508403362 772177140 587049649 651527607 70634192 832268613 955241183 986770298 486838888 706607721 726958455 936497554 442658550 622199323 346375797 617483544 774939171 897041782 193390103 271965781 280699152 865207681 553982483 593662333 924558459 998650286 793095284 795170394 333933646 448227860 676808792 747959671 379960556 469244286 525070398 582350313 695347200 958720840 308228588 811589771 175203466 660204030 35094611 70232188 770415012 989947894 833951816 939816650 788391107 928909686 996111929 998855974 106193741 560407779 656671290 867174080 734234144 900500291 997866392 998608496 113335191 653563168 899291089 989200720 569395509 620887009 978368136 993594608 103665685 440549685 191165226 668684901 628155065 865799567 633417271 910529358 168805207 711010666 588307199 750336036 936133220 954593240 824169078 845487953 604456495 698573993 95175448 532043861 638938798 875895382 991053349 999015364 14437846 97326669 295148838 980532679 2617272 636227763 40442744 544003850 326674673 696415573 876726902 923616365 182182264 743041412 35328258 703723655 461723574 748445715 104212222 382057198 597079940 803945233 452923340 800145635 78908802 575324407 34707668 319959002 587267340 613098093 652222310 863262816 635458197 658216251 112182934 662476127 613437466 798365209 547912166 747062694 507296570 763594857 215203734 271433350 243123762 406555009 990744915 995781591 875318460 933370481 752174803 976306824 608549359 866304926 58622790 259566879 479314814 738018517 498297308 619018434 682936934 712790278 887658800 919707797 249203834 827718819 859574771 923086848 858069956 971367421 519508620 945442500 959522896 997134283 851934207 882026972 165990276 190610781 919729155 935768292 602967406 778472565 804210581 976839580 285761295 815248282 168058550 416626635 889469671 906236416 220782333 829000041 321292791 964621125 886526969 935068196 206240075 870613299 577150601 912349437 348671625 383915637 734004776 950820420 486983039 840733235 52515863 709722611 465608707 997029449 590400085 828662147 231916372 865353218 57590885 247611592 112895703 565616939 720434277 997189205 150785672 548504829 46566417 716545747 904000603 931695844 860452690 969956335 707492499 784525978 681007964 859100631 795445703 931007431 467787729 848674593 609833979 756383004 368853583 891426357 339299676 720386670 676296723 704661096 976282639 987349135 566141764 571341083 138687250 764823895 784393150 876464326 904847778 927592429 66973849 281915649 550708096 963329977 486231463 803089729 398092622 692822052 584637428 927680519 436168937 705734713 228003506 487550904 723875746 873171516 64462208 256874825 846596375 858792225 40239210 401075150 253749726 619590423 29674399 328866278 315019157 571131884 716606066 958640953 771784765 956531541 137481381 404607033 309685136 537412585 685994081 948229307 855059775 872928467 991720965 997538346 312590489 766621819 140317294 228071596 20032614 528598132 736246631 975638516 192332093 291789622 546287003 751125105 928428323 938990394 205649840 298795722 549398327 990923894 485357705 763709192 450847207 862440536 217221238 350834951 906999621 963535313 57783315 708704362 145868279 858371501 59870365 200609208 970353703 977154832 516509271 950740031 432004377 726165711 961091819 967867288 673058439 800003756 429108886 546388922 650078650 778417198 535300729 916317876 232909429 990754708 613055315 667681504 864121887 907325050 538813054 586848917 710863828 801312173 516869095 848999496 452291343 756604251 226209109 986523738 583066948 827595820 238479131 364008619 133991980 662899824 540200001 731626908 494204974 516609622 942643030 960891472 600341959 727419669 848859664 879263695 831197112 930259898 961971163 994482859 876278339 944582507 309584967 424671813 450175462 756539639 632017769 918725679 693904152 744918593 206756263 670861522 92064426 171285720 414558087 719017412 748353515 907013369 207254820 868839967 791406216 940558583 805491933 926839488 220090587 749944803 507289983 780592911 711923389 786443841 8703597 353089379 842999706 849234545 121565340 360747646 369965947 554478399 504528623 990025397 78127311 878329301 254287030 885563527 668709822 677060897 751486762 903445943 211103542 641084376 673507287 754205760 584148200 891776320 483576900 671976587 344722518 370721891 349000882 728516848 479066299 696286629 190179613 565435400 74863699 984950390 342689228 737251773 691014364 800448125 331081498 361017223 91094781 193412766 511119049 827156082 265963885 651978808 432716561 514987064 803904159 961832470 745638045 901294157 710160138 838649784 225643317 281882819 28235085 527131471 394529109 837556117 425993933 586813295 751751920 819645626 143777363 290452297 289494352 603304965 259417996 616951528 917137561 930898697 134116602 989717550 532517454 605554305 6463292 707045709 29756209 719572963 433861126 453122953 312702138 479550695 297942425 677447441 320411040 584710865 71020617 159835971 724709740 730929952 571435825 790756233 701816481 708063935 221009178 447898849 78311565 747399144 209000386 512619748 229268239 623740167 591092210 743870656 818422905 856780765 629172971 676867077 439868800 491844057 335915450 653528907 644862114 729483190 839559681 926966131 66264401 924567393 635926157 958500334 415463916 461308219 114622606 670315300 836605728 856920712 588697235 949995883 717476366 767961538 581362298 883260685 811354411 953062046 173923476 782969215 799112117 951370256 487403944 690602185 869702047 977195746 340025479 452591117 771166599 905071177 67406449 333357394 867456325 905846499 435979175 876691377 43754855 780195261 912865819 945367489 993792556 995842776 850784426 980814412 156248008 757421564 872309549 988722594 745439514 780980015 740633337 982068292 793835960 891921028 64005960 385818972 892166826 920538605 305748737 607049894 241161792 446298879 210233069 812836852 269587317 957182378 720407514 788127001 756068062 846069542 385075181 638188264 987597964 990098387 488084893 753164011 565562582 631586484 700372147 930078395 79266566 224427323 130723652 245430667 780740557 873342343 11155813 497140292 677601374 994562332 673637669 715902187 121123433 623357202 299919657 766660981 360991957 568216478 38012389 120928532 165295037 814445776 477473936 766918362 473508529 666162136 236572719 370223388 926597385 966068363 939808574 981959994 190334594 550136988 561095383 752301517 625087924 997095896 880132036 917027963 41104436 489368025 811184825 881538223 459263986 699806888 899595002 972005815 423002132 522847348 303805753 642650932 743890803 905974528 861519460 987154621 606350211 626762806 250064739 719190729 985678015 989754984 28538228 941365950 925955813 963660406 582352281 914774916 223465174 580129600 939436028 972778921 23098569 270413814 865710034 901201673 124760066 306536780 526170546 816121790 903645081 946170152 240872354 450078039 597944395 702562378 230014290 408535889 613451127 737929804 618583020 988315855 34889594 651099194 397222721 426678326 474467806 495745791 61989383 116378265 33946422 590984296 487898487 886180690 26068687 673764015 551546798 820960204 678642817 939880005 9968059 455512776 401290651 836851903 812737067 978670102 147513918 806839190 619547374 702406541 904993877 981802322 155809909 318786449 238977324 387582977 512852292 526392492 22198129 97431192 36156396 90091431 637709397 664160866 713348790 903041579 461051447 571694529 628148332 646531360 16521782 758947175 810144833 867547335 402063340 768779150 643370450 757095327 920693819 971500621 875586120 962354692 306973227 682084562 478563595 985295323 458717266 680273773 219125529 476581003 640286270 795403770 753696231 938783648 206179557 851846008 209268170 713044598 594193778 760123261 21261984 394521526 451770385 895159316 542851327 728758608 620142125 650110886 141346366 679566260 403153208 814048150 183859551 218215241 234437716 644409224 498014937 841436268 379484122 775167582 533902478 997310682 270349006 694805698 306520347 854927965 863067638 953056728 658328006 850989981 231951005 391889292 696524610 977853819 643135152 781710518 645010740 991373358 647436689 974054761 928956331 954661455 562926224 677038563 588572483 802292846 44220882 80807318 455712190 626150586 694903236 768269513 332236551 848629383 844078777 934342780 927398739 978458152 1861872 353891417 656522734 736393099 436543019 615919108 616375332 709120796 391005869 673002551 35863019 195868455 225796043 749463486 817848524 876924613 759744624 876208342 275346665 405390120 826993196 854394604 199498687 909311200 306678748 561294459 410923477 793809107 373255486 661412506 778510325 957776479 936416474 973292713 871830681 889620954 415432190 694413860 330630 974421799 416495385 797657706 651032987 782318051 797340996 870948366 391274540 410032295 413955656 421807876 451647872 885271831 464578832 817051721 871789487 920571954 368767974 776354424 342407992 730234785 189251216 563556456 681723554 868920475 527733386 976634149 694247001 928457792 545265700 893002450 14370038 727247538 247880815 312454159 660176691 792779865 971790722 999550273 898285000 993001175 660125337 679295709 304059563 939998846 136072945 977078069 56168954 511839056 216871437 282925916 956390518 971179780 593421728 695330825 402963872 496409020 720990554 740798589 698424146 894271526 874958751 974247175 209152657 412400104 608084352 774924547 337839275 724202142 930389549 936451402 892322232 987311395 140471503 528287520 709543924 865228251 177361321 660581054 200545265 243133033 206948198 880611140 598557296 997438157 29862418 258310081 7818620 519011011 213977231 279503614 8247910 775641130 633472239 990571909 587196584 882539900 302326693 576715951 986293351 986382137 911320450 943128951 313362713 738462125 167032220 896827680 609943051 787492256 516736979 638992097 334485382 516803539 708082510 935307566 875245173 877728453 339775959 647887825 892321783 897418785 430268847 675537926 600224097 880963077 777095013 869395262 248003929 627681492 675413088 993207111 153343783 698853067 410584453 605557055 868402323 984897095 78114160 632583715 96305445 501277271 203823572 818463588 130354780 927824030 770353490 830103898 475133504 714351952 532214395 776882899 360672179 743188944 511598800 867670610 855799390 909361699 168381168 192888879 10205070 914679981 24958979 767342586 836894805 888028084 922007165 959041522 567360154 592074014 341729801 428994654 384405559 679839514 728261998 981709431 43352684 120039887 229321252 535187846 422522730 905534159 518456851 873115561 101396618 833348120 851384233 969647544 595384614 961483674 400941693 503606217 514376846 899431571 48169357 230284399 104675469 847768727 169813926 472204001 437048097 997651270 621203718 648969482 824218119 874541785 757818069 766203377 839684256 903047372 214967500 978302878 913066668 935129250 662187640 706908320 714929336 809318924 969019846 984597401 256271980 593202288 22992043 929550675 160848255 678964751 162434472 809177119 973905086 982683327 305361936 566594776 294939380 767219063 578633596 761497323 472291811 494229517 595606249 798140522 594567220 659427502 70155468 149531976 928998848 956179906 921983573 952520545 632844473 648642545 172505907 772262266 232966397 949273034 153604374 760491587 211646994 911141636 986713400 993548732 132091402 789906483 591418231 798693502 992049377 997959868 616896649 804009807 120523685 316227767 707775283 979858494 574153562 997613682 181923584 501728223 214366767 953259221 958391429 984281733 597417763 798941788 920823291 939061119 575034119 749629504 77080014 839153830 55790027 181191160 5375804 9728730 277612654 675410462 297932139 868609684 935367753 983102014 687719477 961804928 350913334 506601572 354061657 760626134 445424617 673337645 440806893 517792309 271488700 323821520 668709215 967866613 287770636 977661773 962291422 981554784 751008310 895358914 345469149 652415810 414233318 805638206 230426662 360000876 577076433 792382707 241326264 868584003 792803944 850891108 828753588 894114377 815385189 887954182 193403162 848994660 220543312 318121811 958085983 996685333 564419715 892886350 512454919 841875685 587801723 636176619 670207528 752542262 815521769 937763797 906330148 933178455 730907668 872723136 918125691 946029332 233516444 636316161 796291661 950014910 505425759 976774659 721730865 948259255 396120246 715933753 30132420 681738468 626045337 938266482 680007669 685425456 410873495 747032978 216382998 887626817 965583826 992332412 56843367 628945823 279139770 909558632 522999094 817128767 978597560 995445999 597522458 605214930 86146398 727047290 997122145 998999140 367490859 973122501 857493054 872463871 573301966 598774321 672694734 723810825 52001576 494951791 221883902 398784518 800654064 970828592 130451043 832725521 890927800 921966642 564239948 728121433 347017583 746213888 139891122 830748536 885507045 955089832 42539524 832888740 443128488 920617709 356178910 720538488 455379079 562007696 197742538 594977796 562532876 652306586 519495292 687233081 144187297 201564229 583650352 713165527 983175288 997863730 880755996 917384130 69555070 607058149 151079459 421922754 3614662 961312278 194061757 525158962 270285052 476248271 343196903 364481804 858985228 905940734 14698609 883543193 889197954 957946292 488309048 590812198 973993934 998809342 787441130 912255690 574282385 738899158 69890097 922931372 980997431 999579988 296589828 663139503 311598247 944365540 727527462 814960071 492851364 849183176 59759728 152971277 111613142 380816944 681540964 683269955 713478880 901482293 594868655 778561220 112752435 644948344 56259367 411746267 967519800 979222434 279627385 841342240 437423796 707590888 278031704 380175752 228911215 295941125 704614128 834920447 221438245 511227805 265132372 859543608 252641631 950394551 623315099 998816574 344744403 633056007 738371388 888818551 712817190 964619901 582394574 637829396 892441015 951592910 142910214 565976899 498734482 529621280 331881793 443412628 882072798 955878948 461735630 909091032 672196265 705618733 224060133 799208448 809613859 931927246 557504613 721180505 979755320 996292711 339159677 416975950 343493440 526287580 177497743 647227848 526299135 933321299 68705390 912155594 499083795 704804343 607255710 882954069 137253449 804190596 613752295 887714667 405340284 466890786 857151463 981825478 510682537 636117387 68784194 624854749 177678380 630912420 157298864 797822892 600579375 749217166 985547926 992386968 83915649 300521508 231726569 384595647 600454818 810475330 406380073 848592954 508773176 624845296 520718082 644201395 259671312 737475072 747512131 942604889 548579967 965685860 377177887 726415678 236276818 889133751 884402432 902336664 676648271 879659038 514152923 739231787 731945973 942051217 563620337 956553467 64286774 295961774 179524203 694375490 696049779 724679395 345594235 736659922 746890112 837945573 540841057 728732778 501296171 792874760 810367880 858691453 805244070 863547295 9806760 295758452 123927276 400582334 294149376 317311340 626514026 931572893 97484738 322048683 298295005 656868187 394444875 617375168 126685657 312119308 44077584 596846159 697781407 868072706 564987429 992235861 158620899 825869573 354645717 837793451 371597965 394179154 218708757 346658525 238568323 668402007 4021933 541440957 381611522 848188453 195098438 814688217 312101058 761969523 192571100 220062722 248999343 847345310 809020313 921310520 650186220 677574436 179075966 613938791 708683421 794681734 523159195 660966715 888021042 974539241 87030010 445912935 76827500 662839805 674150388 783386196 997697916 999880368 166434914 757657300 60465543 592260871 641989231 922537575 881310666 899067860 390514937 931725432 730469226 766924639 692363270 944664922 231243924 368857471 425572149 907056262 591850479 809739926 221376372 705594904 465373643 511484937 373389262 485452363 340820803 598315335 123912085 304109233 896461691 916816692 533210435 950351564 127399955 270322635 773475717 799237392 403708903 709169567 217943653 598501065 516694021 613089400 383713026 457707318 637413215 764571913 967978067 980074634 329204596 557247016 26219485 824065014 538834413 791906356 198493104 440267671 532597553 965150415 488948965 736411780 104276872 222447980 960344507 968528130 251638792 628912063 286170817 618676079 146162360 492174812 373941720 989788773 284379067 533151348 71984907 315358187 574304278 972047755 16772135 525548601 835203641 940209080 688181530 739011824 995894553 996720539 222138506 861943034 177896041 264872047 948389501 949156261 262425334 913049748 346904797 954958233 668909112 678000184 968340689 975435733 985659855 985853660 779035627 784350357 402701640 511369917 330187568 864599080 3774978 175390421 182476238 585212594 153534786 256539752 553622394 822505273 706936429 806046840 727518207 873387234 641505222 798031598 61330786 985191111 669459917 689468716 918507096 929513229 89785613 435138860 710478669 725918683 843385187 997456964 421000985 581554861 554289505 910721165 812242200 900046298 124318716 785167187 70932400 531792112 934224513 956957515 674008905 738612217 208322241 915253537 968251571 990965233 943268319 956192834 718812355 904703942 183739891 465815479 693510768 694888352 668547190 752400184 503448536 851718194 942671742 968858934 212458852 450447046 611175051 915078080 288011606 630280321 710758368 875572411 752020505 822987413 165460903 415295990 173966869 428424567 308531968 685032756 161354992 690294030 550603941 893401694 773149171 854608901 853219738 970321665 389934519 944011012 127957217 279107726 540815702 978965315 521070002 719965043 766865194 865548807 705188252 884028698 394186363 580889928 726766434 866029703 323767715 811014028 794261155 933152738 778888502 839490454 903530772 962712878 301876973 539579354 172274300 229171780 17232526 934296320 137854206 368484944 318475236 982754236 455143021 583710288 915743287 962067286 771122757 779296887 476442836 792726240 683148342 805870315 344815480 755993273 126693155 252093576 518940984 924517754 211739904 213152482 253825131 606856163 367184232 927464234 162258767 446843193 22009784 209188444 67582893 116835590 757533994 957086395 974075295 974754852 676120159 760254914 534731923 854032806 440024196 863951388 91492834 910836323 209732564 824567285 816107581 828444849 509961722 872385069 309692869 731108139 839532274 922107636 929014293 993634527 735928041 983606473 155876279 581794706 288069589 855686594 14876706 16313580 572124320 982561885 618960699 662898988 998109241 999532547 945640751 998906924 872738271 947863731 991637526 999362460 764429383 910849317 728911706 914849916 755408798 755889123 808840238 941631288 632178024 947027361 578177967 827075326 961875448 999691522 862173598 907565691 623422336 652416641 716473132 769690302 353534046 525181209 732661389 932568476 336836575 422413384 934415417 944080434 439640700 852792301 962111339 974927592 825657661 960550730 11751413 326004969 709182287 721640834 105575882 522703388 452864013 548437299 187760121 222962284 708925073 889414656 145602636 280323982 158775056 787606055 894915322 901778585 180385271 657402011 271374022 457828019 259065237 997661933 799892741 866300890 195232905 548513564 677794596 803991740 497460207 657596212 384883154 974931291 430211620 660943346 389478565 458482386 817350180 840533969 91937222 662967330 656605902 724379515 814204901 949238049 629138919 933180260 746876154 856641306 676104018 980139661 784136564 799548102 578092638 827471165 879236060 956065876 284118344 529723100 659348845 739033965 972735440 981565780 465056448 746804445 974696662 996902498 954759651 996743075 724394696 766202266 244586865 532471332 906708423 919832733 163830875 914268045 886964289 888599191 832816754 889069325 596962250 663051757 669981449 728755345 36185786 986884699 991161344 998331206 472663349 749454782 631964634 730066516 229321028 748002941 387781590 472502776 67549979 671375171 807013142 843799093 920019964 944230017 556397265 694322081 762620328 799417616 61721278 730424853 830312796 996332400 773473023 814411347 463235778 918002606 170587189 604885279 34853349 406709512 819688357 869485700 139532518 818543362 477580589 645563644 497264980 862842049 679708899 855723144 882348744 926866932 558808589 858114175 602636891 728309077 913614918 922778351 548341548 653008133 808327353 830997983 684837318 833605913 875877368 993283523 156358302 734256764 621086671 631393227 352863434 518821546 988972356 990646165 315833306 392417908 308842694 540666752 429361752 923190549 719101322 948698716 881292847 963116654 768920759 949337601 384457388 879879216 88735733 469299839 305620604 738725356 247973590 876636024 350613181 561357005 770502929 985313715 414373407 746927049 631092005 749183613 880234627 931561654 398706454 784940781 70153704 561660383 996237312 997202777 128656130 518683986 344638880 481069267 557318248 950405506 819288034 876554221 632159829 821980413 361307081 784440951 369897432 854822252 684947128 791754640 224943783 239168308 387175641 731039864 264341991 460318232 537965642 878059807 167815089 451255223 798106807 870203825 118542795 290044823 767141966 856348550 416666464 937203491 631548519 856362322 583929743 763125653 36132069 353189610 322442097 522949158 705106605 835423799 355037602 804220102 894437979 924962365 999638112 999801192 510512693 845558367 243094803 505117657 157300423 614634685 508588583 917212340 544849589 912634896 700483302 747400661 265798452 375566565 558438105 903940201 223017966 564671448 522204657 544678476 38827033 778271170 476944616 975744760 701994242 804302751 895885915 930165907 78937329 648797070 620955796 696294642 627851448 997248505 84994377 427999509 277873452 945170487 813472968 951240057 958590619 982890026 856156214 915906826 769188276 854665864 932095223 950147079 836665492 891532525 815628737 934513974 474511201 756978604 701598830 924495383 368636485 493571614 752918599 807754542 250278313 757057808 805462803 906670857 241336597 809278168 103919430 108218959 906527290 921771371 641611633 664774882 768835656 879901036 45258224 933058427 555619216 695205603 432255686 930344364 417871570 838309104 952918810 975956667 912141657 974586032 372679857 433077822 517872917 786569589 82787830 348053487 478349225 675418649 772673181 999079261 628111470 981624571 287459590 564423531 683765802 711802417 42741859 42813665 620652266 738521952 845457870 924092862 844228891 856552145 731631862 848673227 616314707 826401393 212376010 364336467 567488575 645643364 29300669 197966051 972535488 974639859 433828378 745118913 307732128 696724588 567606728 907847274 11157852 950523322 791598740 977474505 294501639 300808316 200833867 304439597 188491112 582462559 979766718 983969860 420781456 483799655 74383315 453719688 49603740 201087994 498036808 524222337 205393032 371612918 953509373 998317047 793907548 970792266 70613486 169002503 816316461 844418491 100216443 355011362 438803035 801291755 525727171 809246253 807171126 866557479 65987600 206167632 347269221 922424441 641800154 770411270 896341643 956528611 921706398 939066185 560151274 719614766 861304036 867248985 490836852 937705907 593770376 978873095 118369327 576625245 931531561 999742861 166252876 511077499 515178473 829434051 549913216 665580529 423400658 990270061 875865593 891604768 860519219 931936071 318928188 942620061 223467355 415849998 621117010 983478466 270998030 495182592 965285042 977721477 253319000 824201038 465031698 957526769 396174252 500022043 63521136 407426235 967092882 984170931 543163214 978216259 793633252 833471841 721431273 723563089 777079144 995376141 78350414 934459065 524549002 534560993 959998479 980167081 851933627 974755806 601067623 605724370 414348860 835502819 853301128 915856519 685975897 906188846 474126597 514608243 304048421 403176297 55124941 875900210 379166280 446134459 232035265 745607787 770337369 788077637 528853197 815797494 448532381 837907348 121787948 260774635 742771976 816302016 922216483 988817327 788102605 919319371 136575468 859643519 256315451 709651772 251979855 901739423 45601762 50061693 569699832 999698478 675174009 935674794 795875289 873212726 164128603 719689087 124828548 850088020 296867002 939600546 548829279 573128345 288626801 660547146 208767841 234441705 64610829 143138165 417437602 477577064 862224779 949628102 96717409 700285221 615102259 962901322 450377238 799097606 718946472 877037114 324291160 932528670 125390476 433963456 911999065 921096654 520682455 978439395 745625651 920167532 883687833 896446629 896629880 954920298 3955269 576540177 446424434 853109452 297649188 730992421 555389885 595293038 360152118 531286521 360842903 706146408 481392288 840604688 116200624 405582571 199722384 558313475 705177024 797447756 762031339 973270756 193888066 442179790 120580921 917053644 1678960 441718536 357558641 899780497 338941936 974658207 603974540 838306219 141520433 818905939 718309696 932639615 734348735 942999180 362188713 522262611 900936796 944265560 328504953 497012252 734237501 952589616 912095639 996855432 983133295 987020111 409728180 553144563 864345194 929168912 750314147 925122405 872447713 989067939 440540801 847165519 908098723 922768900 782795209 991506058 858448739 881263206 404354937 482365718 649244491 754429244 948264563 950282734 610584351 961986295 459087679 869406261 826313447 908955297 352617564 378693269 290606841 659705794 989693060 996974753 528472982 547094003 805617178 886947960 886500715 964086381 740686271 905477420 248166517 462166737 853306973 870108031 761672963 899914626 575760530 933407860 510769420 853959236 665621072 783860841 655500254 963496893 837307604 906706291 754903256 765017751 456103191 845036483 568702041 819091200 418213867 562557819 411956176 706484819 388484790 892332144 353582813 703293401 283464736 323546497 675531202 778292420 416656517 489573147 995393512 998156192 944310624 983012341 40845771 985660556 272977193 304976796 360769705 640489555 542438101 963266519 123755237 592654315 606679939 989397243 342728089 685833707 272081895 979565902 926061584 989072847 577371888 591950176 844305988 910735957 527287624 586349604 395048091 669404919 953086329 972077561 311119717 930822119 619583003 854606202 972275488 992618026 587423393 827425203 31416387 55890995 805124336 966350697 906127767 946939314 964162492 977997757 256143943 860282950 705785055 823023431 408804457 706974410 402700920 647535954 811497278 897202327 929073911 992921690 55513236 885051217 208118377 330560284 797909635 829210215 952246356 972644037 293324031 490024938 196291129 343141698 378841439 767202123 777177631 810839185 503004319 731758117 896898056 918769709 831935805 973380915 298645797 841245634 642817495 934603628 487946058 780494631 436461214 912344844 270969132 704015127 225868203 928200088 599514974 898737907 672774234 721378984 941542626 995696696 755821766 932970751 878564743 979812120 228992259 383422845 375560948 455592336 2689176 769041138 228551158 453877614 978668602 988310566 792433084 854640958 743400398 947939584 674084125 923727776 802227737 980390488 493316260 954737384 177905997 289544098 809918168 940500614 822746830 911721881 670860172 907584788 584504593 830828987 624685934 694586050 900744588 923486977 666866568 916526943 59345038 764456959 821600641 962570449 330945418 508904760 260382780 880786127 777294471 811453213 187905171 421932483 607458731 621517569 949417601 964680062 368664436 802617895 346308979 653643606 801784655 930158583 297052696 712582734 710678838 929900581 274661761 658159962 196507185 281553796 41968201 60132502 781352617 800390020 183756397 596698182 933617577 974172834 533877818 980673593 978056645 998314707 748274292 749210771 823503610 835415472 959701929 966745535 317252753 884154945 410216123 915912683 552307832 789082165 169199863 231430396 234603355 434549494 51687571 389866567 638760374 703194628 605340678 693099841 629754770 897679159 872967902 927940366 409784842 789719635 139517689 774313507 67487523 674336938 394263276 720788413 267589335 453234696 281755188 814943390 4528322 181893270 280490541 451971160 360522852 930106519 31572804 90278518 249125801 595433667 398687942 701119158 778669546 779722502 351266177 832164799 303954730 726272963 939761909 972120014 950751310 958281941 820205481 852165174 163310018 667416204 806248506 982118123 1006116 619497773 428601099 974950773 841450080 952845351 310787806 346469654 175270293 808583878 27563266 629254276 805658742 931111401 43793589 682331656 917048621 919131265 809316034 912904741 162402389 489816406 329826287 960358188 459388843 738307615 167435006 539475483 985071134 999927027 618047378 687717874 874904497 875167937 518313158 795710975 820106 234306352 526731627 962654351 260450180 914664229 693608511 728712804 554589922 968610097 623111087 641880988 247810509 251094276 511451009 670033788 132900159 464684737 871738192 957184261 268297197 461999013 153093104 192949317 979979177 985156699 855124169 999671437 636426151 705485071 392513726 493351934 537103621 764682489 703575219 797800093 277495811 398785032 693680407 855377065 672997367 914562893 788030920 859563287 570562578 705126581 392412623 622497088 640762078 678461918 2960532 361145093 800927842 857504337 313706613 873518118 994773032 995738569 476227729 838304054 570059699 713321145 681401166 990724399 101708405 830885472 392562750 477537761 154578545 194754088 161735985 475997945 629489239 917190266 20558817 291833594 485834400 642196042 579322196 598881824 594173317 765007202 28981242 577527703 169870508 705932076 82940115 775788174 376929390 755393514 136428941 578598725 383497460 749230868 264750549 450568359 411504620 584048853 396375094 815454143 47053098 204192152 806559136 918630615 160082248 260140924 670313309 957242451 39823434 924460859 600698009 897621090 34308698 676842215 236075551 501490600 281748013 939094199 817291399 939270310 813403007 877088998 684351294 711067551 482755469 766369403 661468335 887408553 667854504 737832685 831715898 865949730 405593398 678662639 88800439 509655552 835175332 937811797 138072451 478728484 657951364 665620068 901321230 915369556 354759400 982493700 543370792 789111726 954526025 961364098 85171876 605627668 192665254 268534774 736835180 917051147 549943558 940332378 558064726 745366031 541442091 667612097 787665287 902788952 118823735 629537787 830759600 933068517 820722058 892800777 832776208 840989953 548310617 888533296 979815682 998097859 986911280 990691487 395238985 925657576 674887254 900657615 116437725 913090713 190740496 452619489 324342856 475705129 81611304 962184403 858793728 896208526 520156294 791325705 917478768 932506847 504478565 722503539 914009028 966441600 444505586 508151621 570775557 706103636 559178225 670811125 335344344 670988065 670295474 833724273 299947939 732435856 826209858 916335817 688149951 845449516 732338367 975248939 453217774 903585641 958617718 982159464 806348914 893696679 299535411 409271183 213973675 593393560 547424358 654019300 501427463 587073460 192541678 951377889 963016588 987400952 780932810 797239705 427292941 489437789 464047627 877422178 301834579 598542534 470135306 559537502 564017853 962995964 819904987 894484103 698146757 966656494 650398008 696021983 192359312 486716824 816854002 997748532 57786846 442635204 734012079 745598865 755294659 889704969 880730055 954221740 288718071 851568768 350946340 673064827 699588838 811333451 54875414 444908495 751496910 850701992 977600711 981443847 38881746 147860514 695471305 929592407 802039938 945662641 683724636 752284786 67924038 850667293 447158994 601829407 687261693 866027257 466621707 472927503 139533532 234901417 302250271 572674118 608209640 901706899 268337351 728967383 199675224 837220339 927217394 947864833 769648098 898668674 442482165 495143459 404321805 989203657 183953721 506063373 945220972 951987826 117380119 288469676 803684946 887570159 169677877 391503815 170564223 558536048 287499910 328746398 554507777 917482271 778774283 816896604 982895689 998976752 858246040 934415508 64221324 787788309 360219710 990612449 251733494 911064464 722708456 861647713 740067536 799214473 568454551 598781096 501099706 912571484 29888101 691874292 73545785 564050577 40045781 943401054 462405302 701695605 815956737 896329126 851445541 874001090 541809895 841990034 703159447 808656184 905229668 942940332 863157154 915460824 537459423 651260943 701717834 983112372 181222191 532003556 273335241 330314217 873906814 883289743 124573712 204803719 478674835 785325286 276463365 552101007 410343610 688646286 74091851 266320548 228594783 834849272 657132710 991934394 577590758 695476682 931895346 988941665 150166119 230969669 313684951 710675149 418316226 513849613 832007090 904176779 353547044 538255611 988713528 997261925 864486424 899708135 678682012 936888756 137417202 329761549 851427098 852705114 258383422 358659871 850068857 925143013 441631158 809947310 288756091 789257481 63291096 330437692 255917506 551997375 908231978 995186025 378822158 660410528 464638116 710021881 575455966 653721808 249339052 522344654 721030777 932713765 307002810 476282232 346653437 852502661 451368302 762461736 795074015 927402185 784669165 913877751 182169428 402259765 641146451 661203896 932958111 991809780 24885624 525593362 82494957 856605319 565144304 662705135 912923859 976462431 638141758 869745277 187631930 462013688 661646529 916525865 242151410 591257354 437160016 630065164 875818392 883850683 262910921 301958851 708404491 885546929 878741681 920442872 181598321 526219915 846981974 924099673 120897591 706257001 186699778 373904921 526475289 721945422 311902454 557587449 820331608 947929018 949838724 985520404 265443796 938460498 959863104 972987148 815836097 927906701 524597128 650131497 33469933 850883220 605070458 883022232 356545378 896129902 120876745 827124192 601174356 958161473 695943177 969660586 564772751 743582374 302679227 316934618 210269130 392256079 73134163 247595418 430721319 991753717 994005380 998031358 210052332 305619412 485396337 522203041 500257769 950409364 180899862 360610938 150480359 935721238 130784275 863162857 896592577 913609789 617113512 893119105 748796530 802896931 587103459 942290158 434637415 888513664 594287158 791350731 601797376 975388593 417662928 444770521 629885398 970640896 210197920 286870883 48449178 139902057 919687619 997688789 809767048 814663478 736435747 740630838 725735284 935768423 302754015 364207036 398003551 836772504 755894925 867828317 184305572 601130283 868772006 899528116 306127823 560738142 930047316 967546465 96221564 316961532 578685689 838233243 635213376 936102873 351383530 878678821 440504191 741467080 374245066 382448949 287506965 794974333 856696473 885711156 14694592 209542712 86508256 599062054 493456129 518090269 256218584 835591832 292934615 847082652 856316116 957561971 618966449 692516012 330820161 333342803 815296439 988688605 205406896 325790175 803241236 909395562 956598527 995707710 94697132 987522011 592468959 802735116 894157033 895513558 223208519 563881742 85855981 806953897 334806661 975564233 146388754 641307197 622989591 786847525 288897695 867331184 308654389 872398289 157726974 922356837 344823389 409562269 335814094 668238224 932469942 945643378 514330841 575207807 392143752 779471475 518087333 631447557 732258472 982641226 675722265 997959102 864846998 925293294 79290400 334429390 645691925 727626192 862804537 864658660 606805629 829282029 694002153 860291780 922389529 944148031 649685285 797648295 727546769 925706692 775540553 850923617 663471547 952727434 549785100 907334549 761764420 814602267 746167998 998770360 344906631 556467243 638337757 912162689 976988737 990431380 953591039 972369000 167411653 292387776 440627485 460662703 453349477 497126543 822107048 929840267 656273853 930049850 647230237 990362689 140363459 543859711 921972967 995778579 68758985 862500996 691424333 989811773 196255057 825736833 981513547 999653057 777859993 894961502 760073781 896295917 923963228 974271328 786802425 917201934 553018899 820496357 22883919 61163543 741110204 751478157 376307524 838275638 663899973 959879886 207652435 977264250 547183205 555312813 19007733 735922779 902869087 985076450 163574439 355333546 468227483 759273535 726533601 810907955 821574477 954161968 272013150 333555587 887608775 905843616 309664249 716930845 405761944 909128348 543305545 986595966 324782815 792875315 509222443 700537409 116431900 971812641 524396641 796118806 982947129 997346188 936751856 994334689 246075589 442474671 650759528 809014637 359353172 522825145 464534615 518287721 721071998 841931573 522969682 670009919 361579603 776855193 543110002 779620105 175593796 824073451 958226055 960063159 341322878 682606574 42587649 274870079 286627113 591747496 541957267 683501554 513185392 972673456 490569265 508177910 212621113 465313341 815313849 960655498 179260950 546828841 261675316 793267586 425467145 816906674 286177372 468541727 538518007 612740005 379517133 390821914 423793391 828025365 81953256 668057362 373719174 800014274 758017582 955983383 282152937 306305379 202073233 655347551 207467099 900532245 184745045 731275569 597885339 636623124 906109152 914975238 18958040 739983415 602489311 908044770 496563095 758457610 625312153 782535567 207481384 746236123 785735088 797956371 923198585 988141541 975121843 985176994 864694913 974078413 205835258 656936732 813730631 935291727 411696313 960711310 255940536 820584501 52325715 488142827 575185301 804959975 377140900 825813793 664086815 987714402 885257535 907893169 203851800 786740491 31920235 707908763 709379492 832744925 678137928 839363608 383124316 820390390 819792037 916829704 305515627 701987773 536117081 589680601 786465907 926069608 727531444 885893962 606909123 720255457 85969233 522293477 478627855 728741693 638446870 815849993 868827003 907643311 676692568 897073732 170629746 548170216 720382680 886704042 157010743 550608719 179018168 365279702 542989415 851475209 870537143 925664157 16969654 336790173 400141719 813282139 728057854 952306972 128788504 405072608 162317158 820454227 188751905 539718199 675585181 798819573 104512238 997885677 677390902 754103098 979253197 980391709 859436611 896493276 402109451 667102676 839051385 942210931 639417066 984497631 333447912 837212750 994297881 998255923 445166182 614049051 30316021 120775463 721541300 832853177 251178293 549957835 708318034 716306977 860330315 903007925 692827844 710940810 690014624 900280625 832801878 996001849 790130848 991941648 764142968 840301289 574648988 902867456 926239291 961713152 926495022 991263488 113881547 973353309 299186821 580900828 959855415 970697931 688439466 760977881 845637040 978984422 723162772 980623929 204316045 744166599 730235808 922190002 65711978 679355979 600085495 716112087 242505540 860051725 786152939 980815205 219276328 231288688 21847293 286190052 48663575 989961738 821828138 870760727 903914630 903980494 285174562 822452527 748794370 869130257 27824178 411960473 661226847 807483857 151879845 373059627 222594068 880628755 190978021 439932241 822331333 829939363 177671830 756971028 163957815 479124170 21545769 782854840 990761627 999513574 848728530 924653996 38774667 316481785 643097963 801456966 792376515 901049025 277644922 707855806 919425126 945499187 456848755 806723459 825660455 936493281 119360999 827592558 716285433 938378901 99631604 946263702 303328566 818795200 694694186 762737540 133018029 940355761 980863325 994844492 378383659 688536426 538624567 659983687 681713354 848977968 612275622 819371219 222792271 485688204 503064370 535466183 666036866 846603524 863939561 938711160 625517402 992381607 216048620 320846264 307501756 623813955 822921520 845465293 858763918 917307233 273785794 443608271 706852331 799749335 227785048 481507758 515334061 712974309 270197796 427351881 953395192 973859372 261764144 616496119 354195170 643282605 533734475 938226879 189987876 735003434 206742372 746732647 723371682 922200989 111004298 788560788 520631447 753038656 460116706 543974435 3283345 151168692 888036726 967526734 417829 356309230 459408188 604541493 455156468 681775049 186631221 708578622 652458743 736801470 934766040 964229252 625939769 988427112 430514056 852248262 977961258 997544299 815103672 984354326 953549799 955758780 12021902 478929447 680803939 706602083 755125707 979893299 825524216 837897596 284765257 357011968 678711737 960735168 262375981 706584246 419468195 716699880 694316580 704210610 605277824 643014618 422288966 511126790 241892629 855258611 78941031 279211921 506617149 819278844 470211583 966142630 254306251 377484054 371718797 602364689 800174832 850019639 476034546 848676694 269123851 976532695 766673413 822081053 285036958 409608517 412237119 412582984 358609153 760276159 812493264 815897575 358841082 550558345 798051648 811266635 111465901 554496380 336331052 836461906 778315045 942500642 21854317 913350610 976372069 984827663 966340855 975794710 397290539 790624584 106919852 112812683 397235929 679548779 941439513 989392596 765917073 885087253 459300320 971748740 641199636 832025422 914578096 992862735 91031393 550634301 480882124 623841372 714101530 758778706 519703237 797064622 390492297 547251226 925562258 994370544 599200731 905773816 17163542 751060164 551954083 713572876 944939790 994768152 9810297 638855130 489772199 799810057 798129427 930805476 425060720 600166903 79174718 865511880 188493706 823901150 841228853 988929068 426250811 868673240 342301492 418781376 484348309 857370051 542182627 719543358 315074054 413400486 527519931 785895011 331098267 763985098 129031997 744868725 530983419 624464151 639654434 963927367 421153957 578921341 809288459 952453490 565760930 881144675 310705156 384492333 759420637 895712910 899391812 927327546 74224272 977633622 49235626 445632537 696270950 778720428 147099296 898596919 775344184 846245104 611282631 785894797 387607950 446461873 342723035 472390138 348932033 483656884 124604073 385429272 497824041 938889157 592612909 612933076 624282760 773710741 729889840 801883557 185898238 675613586 881186470 899798409 8260293 949432504 265507972 511605862 600966691 740306591 221254520 736781155 286797113 442157146 508693790 813023522 918183798 999994398 416019627 611281777 521054546 601184893 816037154 879904704 290963246 763661746 785710759 995368490 528611868 846473686 981983897 986015548 150183171 758389818 676787182 743474891 403809297 521188269 342851819 692774645 530075136 569261681 109644119 348698408 633376524 999795730 348073409 600327859 389613724 629965309 355472352 878482574 179658449 883988343 434414623 441792541 269490813 690395471 49969156 701008111 839324118 948984264 82422720 134863571 584933 703003829 847860868 974169231 714656147 840591826 668492144 808600196 840992240 895400701 958281210 995001317 742281170 969240627 962887377 992662546 993748762 997259948 782668972 979325959 485673334 909292070 777744190 823057925 307018149 740086647 873639263 919511228 435322098 940642427 751088520 910085825 400449552 617443784 299852538 857594905 412293415 989224207 102167848 335070269 115115654 856321769 55997638 538348373 971351143 996173702 120276008 538612668 690522590 887778435 56772174 338011608 866166645 876475608 686258331 961128654 66820616 350306698 797149315 838753734 892982133 966372819 814819685 900862445 169970660 517989199 298614241 699641493 280904280 431749346 143423211 147909881 721073396 800608716 721348173 844196674 30439750 254126613 461731930 655484335 927901908 940359007 527577630 776190371 181709386 421598198 491932587 620800958 179359542 584427201 596084462 809500087 907720308 928944874 283105255 765302488 500549971 699240091 771241038 917852444 82727965 786251290 469049830 682864895 559311716 843699056 211019589 539610721 989968861 994107785 747652938 775845646 516897191 817235840 34272638 874021789 481197659 721968991 528876800 662100053 307245856 679217807 112910170 400530967 301195966 664349245 946197086 965254531 843700654 852029767 510825987 646355264 82156413 614474575 10570358 464614680 977825299 999716670 361443598 889389092 502043183 576162828 117716174 906379753 524369796 816710105 922537815 960274694 668452666 842508268 993665072 994364085 211314251 472087808 64454337 578887000 565366287 856011609 227373928 753317834 758326465 889925890 521268053 992562777 566078765 629020184 866088656 976650012 756442786 904827248 911860916 938832610 608108271 692446367 459859505 745576870 168391029 628874809 701116947 710560723 493718531 664199826 383638173 834805756 697760755 918869588 23540577 690149443 140848289 182543745 742971706 782869977 518397900 623213951 547450255 774734051 539903796 796272179 994296431 994296708 815448789 986628214 258472553 606934306 733139700 917592796 127063168 860975458 995923420 998843423 752359493 856696138 346463243 662054474 40091684 531542252 526248964 604881576 715133829 887378875 325684481 880673042 150672148 644179337 591782282 698932039 271103599 321871719 666887501 775008252 175327027 664714495 52421269 422491199 568949360 784771035 556072145 940149040 312367000 569233893 545985207 902505428 204061618 873937031 358187735 430651356 318244878 806013677 846693585 931141658 96980046 813428616 802981319 965479146 377313568 937950859 423758710 532676660 665023091 772689933 614108364 673300176 780884696 859836863 591840394 709775398 896329210 948156742 410628357 777256278 373149305 593899922 783805074 948098925 63317330 429581151 585699137 998248547 397863754 947083821 971027475 971668618 642175003 715581816 643078084 730531769 153151206 642506285 342696213 517311637 171400405 226291736 409880750 744955818 442297664 921930358 457534983 694074723 741724839 947559476 934126536 959587413 176474539 309492923 278730786 693073960 545297919 977241937 742401848 949652144 669142681 747656014 645730332 725522934 367231445 680199995 883553946 988691536 857355319 991389556 986417751 991739813 188895399 503470684 894667486 960934524 901310746 964977703 122321325 682812330 211217302 797137668 480448354 931850401 562430658 674355447 325313312 776318430 107870375 169167529 66556172 417534539 331069504 718766859 187877292 405127883 339927060 646936303 550952556 815599419 590572920 787880496 335932166 644406942 214238747 310673854 503768002 973621220 706707572 871195278 40562630 866618746 964108320 995482182 710880585 905324183 487504035 619391194 176174953 859201555 715866976 762241584 488728738 714986533 680661378 743310721 567609030 816526856 952491047 989686591 93394869 971203624 558966352 959081283 975893985 996960914 189415636 634250689 899208565 899536756 810663756 897155559 802406220 996087750 783059503 822097932 217232695 254629509 203450784 545737387 811667887 822522784 477055250 782686345 335468236 812218912 869912220 929855140 848422727 961447497 956207977 979889910 194783900 943276355 370997364 847324428 326264310 937485808 795708575 869406701 903628399 972599327 958517016 970324779 32369536 278144743 736923192 888647412 655481554 842049262 112857623 570633781 436760650 499290626 133313066 685816602 379473494 939854924 213505144 566999989 63881855 461020924 759223753 933815092 637397962 998989675 528630671 934942431 561146306 991591425 187967916 196542280 613380388 799357135 776223699 813456702 749511364 907196602 332328444 525447679 613913086 724578226 741560673 847121914 29727336 153180082 856164435 945055631 210506816 386548605 481026448 630485133 669019106 796167520 237625504 608599965 110053550 377496163 806308615 990869941 73883982 927898297 718312385 785318407 752449506 775280378 245747321 593267725 273799485 369256552 121815364 923024457 815804921 921611341 583937783 882898703 508963550 643299259 820191991 953458473 528397512 860572737 633329999 881368667 992170022 996501780 170235524 328657454 509955382 935898446 13824194 228261021 754891579 831906800 395429840 776480171 800280954 882354477 272266832 390787428 884957133 989518774 823079298 942320642 687314426 869142014 211353904 531604052 41489495 340997152 50615050 781091822 751672284 833263428 894021534 916076910 370946890 420226086 140262099 528240599 884216774 950550573 770524452 955033469 614285597 780188275 356798257 476062342 201425850 744685424 845273228 887106212 569953105 727075556 629518551 632505417 863974426 998564484 502604762 933151994 286767167 457486307 16232103 718594942 190883949 541624249 467327007 894531987 560501640 732462934 765137464 878459824 991986588 992075107 482595492 879763851 915936595 939565169 930955862 982187315 355134197 683800290 381283481 968433685 910876588 913496418 942720562 945068965 436778055 644853082 430665392 961426766 271781649 879970669 441458524 657526570 504081442 585505932 637273492 755023544 864195133 887192761 162226422 856459186 368333848 445090345 157948539 834183282 204086443 969478107 455422543 828975317 822685122 987975738 971459845 973240366 636168354 949698481 200407949 422503955 226058553 567805230 645201235 710258908 135497024 278044187 862236704 977009284 329795734 667639032 656182443 899813348 974617239 983473502 823963789 844257870 484309266 790915205 795327761 898162811 373533489 997486007 198485814 758106532 811127382 976537346 942559049 959397724 376294950 959221865 316083267 900991641 271968223 407221561 595067630 706983278 244022132 765338134 291393205 478492395 361036877 717375272 602320271 765555664 712625680 840266376 378155919 610773424 763374429 838623680 606988407 815042512 275347384 983251375 715669911 973899818 614039270 705831660 484920746 643042628 502966093 786266879 880484490 945324011 219927694 541349300 757477534 899303906 895472554 951491526 599758585 811188892 895021771 983222363 850414606 869059100 690243055 746135063 864624987 929434969 404318591 457924729 818886755 854970198 685636198 719290497 464082375 955179260 397010580 501924381 808282753 896230873 115090803 887079384 468894856 815450742 436406265 866160398 304239433 945699374 21302012 764584397 479452239 797011368 650374931 660412519 460654682 969593569 116958428 307661790 505560537 751529881 882890368 886878640 484200137 975727640 982025573 984879706 149893430 760568517 484862394 492108245 846829823 989957616 551490234 784471302 37791387 807370344 417519106 862409757 359545548 673931970 832926074 860915423 793543291 802499874 282180120 821102307 121446979 718143279 970549902 975660969 682082177 774642444 213562263 461094768 946730407 988487354 849557565 969535189 15850261 924137963 12703017 824937398 878813999 994037754 908218366 965956159 337702151 627237720 616477815 745538654 120234105 610986019 300711267 760696673 557229103 838136727 996667128 997942939 746531308 748317183 594401106 616557686 11074677 693115159 707759189 729872373 538370146 764349794 623474437 743063107 296269957 527962748 64175040 799181517 561825551 665695522 773049573 824608741 131663886 596179519 370194317 600353581 26660912 815561425 148836872 667230246 935178953 985334902 789461450 983519237 811732362 937188497 980863081 991751008 846021411 959492377 74413768 163669731 841480443 911344593 722919376 996452883 297036116 759326704 589910555 847720746 552130652 912758328 750063761 854517658 346989896 906164616 437792624 740892433 213038041 742002908 846423038 912647541 441931606 920018723 953879346 970623291 581042626 605841040 231421186 785875382 41978666 404341051 7254500 732989198 271591870 960052023 52172413 381329629 945195227 963136421 684319634 715665834 906625359 927638316 351142388 839017940 812012451 825711769 562086523 595989490 659473754 731506633 814546662 975345409 75153041 326054196 302850995 474913372 716941437 821367026 2815625 434965989 492955713 930806977 779059931 850367625 950639340 981246566 483438102 808717616 756118766 784676429 953523067 979931829 537301761 668009723 813990336 992598323 528813030 800347597 686276398 720967273 355085884 453689263 178202963 290464375 759145123 866526718 4004975 773349201 459149446 990189103 450245365 554623658 59595328 836855259 259971062 582669588 726186139 984313886 862374032 956555862 18936017 66902672 957647723 966053746 303026723 347015198 297404262 858460591 69979893 310044095 366156174 961389680 960114535 985228673 802794023 987552732 697703403 708059715 677865690 715592812 512794310 667556755 972146450 993913065 853164206 886656897 720493113 758626192 565495754 951306420 97696202 869269772 569061180 676347282 202737427 634488350 99077423 333050311 423769630 619958077 888648257 995315264 142253009 721511137 888287645 986401696 73056185 548960821 722287527 841174372 152287562 219450362 189407762 385810102 437687294 969160325 721377666 917664024 690519280 976131111 963860263 974788838 926790220 929945004 929025354 985446309 641464110 929825189 577714020 774349637 240861433 861250801 787787218 800935792 44429460 576843355 932376687 971910651 421626699 562051682 771411628 972994166 841410677 933885017 997083614 999272698 769289824 961204185 238007448 979444660 906771048 965449207 522295379 686860680 850905142 933908100 992274057 995838695 8454159 278656741 739729150 943270328 254943418 326704021 879104776 932116471 914143549 945245783 888445654 912756023 126439866 894619279 757625954 800607633 168966061 713114304 394445775 467534557 521206852 948724456 779739642 889473183 321391533 967657434 761372040 986046838 22745296 192914925 926956365 929295103 467221646 483925531 599636466 662967692 689410742 845708532 744209782 838233559 469934109 494213824 983316501 984016641 562849057 948426271 71910746 167895083 17471645 768536154 718882864 845764712 978271420 987720536 670497824 735938295 975880607 980327209 309487605 846241282 116959576 118476721 914771630 916608257 68817127 878481250 731372705 778460260 931731760 990677333 102299412 928934725 331628471 659304031 727171156 973131291 293837095 352509029 579756220 676794600 697280154 834726060 276811405 580779589 930139118 968292787 947508337 976043637 746421908 807780942 116304242 829225691 67977073 618187280 491889574 621176753 366799877 416658627 117575786 557166692 982060199 994277418 280806469 972662224 91620721 717957799 778404108 935510964 787188495 790553996 468888032 578227061 364286681 817813253 931509554 967440265 359567132 783364842 341440159 809971381 837016803 910043291 494757953 892917861 894867021 936128913 708079845 980094528 275577428 352498024 47285514 774232242 306734137 917718785 217326963 560385020 157273568 254659446 756811652 824297533 631802244 766682100 333586639 727719748 217101319 997002494 755953571 768127998 735723212 759283897 655151968 964474390 903591733 938011381 762009688 825812592 493878789 944382550 982908419 984736356 130020860 895020317 846685035 920575042 440584317 536478990 906534481 956945384 787712582 870777304 156629525 702842021 137404618 723029756 512523755 659664147 672907410 958479822 725242655 933091266 353031477 728911482 415464937 648979988 142551119 479912259 115789961 957384060 724705135 857716436 957445505 990610498 163647140 526303885 983781369 995983439 931437886 960208367 401249457 499429440 643979234 797487262 821947253 945635910 530105161 926532619 16569818 247847837 671179297 937275297 105364860 200274223 185684730 859943575 943258336 955385564 175211580 467963976 257664349 546147922 364292990 622741781 176407365 845051319 18421326 114400917 853365913 886481028 438748895 588908290 928250911 980216248 855153971 867078350 792692038 895854757 314829132 501830324 457538780 866477314 125340170 496660260 242875666 637576820 211873940 678987854 68786822 826098662 200495673 472110915 358434604 405837573 844983823 946535425 178243275 749651268 667753521 675049078 748489239 802452445 430198007 585275844 331477133 939623199 719640174 898990219 854600650 892204273 346025400 410382606 717105967 740409490 591676601 892818504 944681286 999200292 230741579 901111051 783632134 907660687 879340295 981550714 792686752 823157341 422711362 913200117 761704122 876184608 721731886 923692242 502281786 923797586 896597223 938810894 715151704 933522944 135158536 718304164 768286879 887891938 430830242 552648662 459524543 532283816 868878224 966498793 409296680 458578567 810627542 923090121 924147630 942131244 65473211 598829993 606488692 750680163 591027369 894221115 261063611 594700284 43456594 115356519 8258605 840249267 250540912 526575992 622970733 630535749 766351237 908130657 646059758 921835862 652065770 894402092 443374595 615618091 522714357 883306831 627095594 772677386 741229732 920828207 939181972 980053943 859991170 905965118 302119689 880720389 772737727 836502560 528354479 821594704 633175233 898211048 314639929 463839588 640604512 795628745 190005931 908159133 246074546 321236233 259554389 413445500 882627000 973005818 723276493 966379880 450949099 900245841 638878633 875018575 351646210 529450081 8661683 409338580 750297558 872427461 651462836 824633467 941339470 979906834 582529698 996625651 534076922 987166858 116939332 284525091 553888132 999123334 649655944 945344251 453871573 695617086 632273189 846139077 98051702 975956976 468683730 671790782 285726147 591504094 999945269 999987461 287710735 886481772 261900085 487056790 574784630 749349921 784973609 982225904 436187857 851088293 317127962 527323850 247827630 549696980 362309565 757398563 992186211 992524764 354768494 538641426 116374458 260542374 595963338 727570208 615899136 704691581 330761277 456149129 441408508 733275181 855513301 893411307 43246326 369895145 308442970 436716523 367443292 805304854 927808803 965584285 400269265 745080174 475086613 942943799 164459902 637405609 395051361 659644085 679398334 851265046 707619299 714046991 672144781 816551878 744532686 949238872 11546172 277135999 492260205 786090844 897430950 953629492 782893423 934888849 127244480 194549951 970430978 974189306 228951004 771185644 69593799 681527251 775109035 998173642 726386897 894356432 170339695 532709383 451123264 795884345 40029156 134863469 645675324 756126115 844481437 961879839 118164107 295832716 817781243 958172545 707027916 927119376 58620676 955379407 893304667 967190857 746313203 933357197 517770152 654069343 404835573 910428941 597609067 816207779 913862872 955844706 20316299 310924098 787327937 944048091 282845810 890239938 995534074 997815524 756061812 781944009 301328956 664925716 357079361 437625387 140249228 413780047 252317548 512316155 473440571 480627321 122112205 288734728 558040560 960588608 336860894 722849632 77466341 323830285 762559007 763580099 665160262 709798541 905061414 964797265 964388579 971264123 597958330 798393513 808935809 883377969 161451742 295624102 953781480 987340060 512457530 777675282 839901361 993767325 293957700 378850012 975427964 992891930 264208550 470855938 444721474 542760437 690865527 822269800 778034147 804079604 356146509 643641689 643806547 659247563 519689686 571033318 153393472 812813626 187143964 796178360 950476306 957125796 379875583 998482610 616889358 617379722 458141522 507803419 685132774 694535648 215039301 508665128 241465750 255740953 606482065 745630309 587160479 690309032 127346917 305989875 630945748 691297827 596708007 934945094 596456025 750981380 885821249 925534013 941197993 950320934 171582025 506994188 766658417 980144930 683746566 891482758 252064723 294703227 749418151 949505418 137460029 332695611 520447317 823377458 59070677 925339463 860705580 981541187 528931607 847964048 181552750 441065087 749582445 968745677 257188232 313063014 848936640 870135895 675235845 927906108 82625848 172558788 514454518 600969568 432479463 612630954 827830477 829588466 235718733 276150536 514406287 738354159 392713733 744363878 144217185 935523338 434631732 846410108 39257620 114385840 210384544 419597114 436716814 894282459 751594660 844863339 319176626 771516839 660952887 839353168 148675680 421356509 492242583 514547629 305638643 468510124 3275454 129557956 414196466 645240557 517503984 846227740 646481104 712007980 270487546 756354824 81716641 868065546 185515684 438056098 290505954 549924168 860577605 944912887 696264722 742484081 183201256 579453295 930301189 956546843 700881139 856000252 382781773 593048057 65954222 111590738 986312234 988642260 145463528 762259090 694015261 982608422 499386937 684189731 884177711 911991062 308321468 331847718 4512958 793484766 836528214 840766146 675928583 736142141 132977251 173615918 772219731 986081808 853080831 917733665 101503026 584036203 134726434 621874423 447169210 574434366 540738125 793056276 703061239 768277035 590275580 705754369 459067402 620533393 575423999 719123671 87143202 433306595 949560477 971250965 81863196 752975305 332764523 345706083 446260774 879332510 52358825 276695937 602367795 897606340 329534326 681958474 781168232 864885512 653064645 777988190 270357864 870703614 871166413 933761931 614604615 965947642 205319996 824506163 938621251 999808882 958851 209469671 566473764 897212421 238167991 476900961 937027774 990096708 676796534 905273206 153479889 499900731 469581885 737292386 240054722 438372643 117795083 292523220 257339274 516510541 809265461 959168582 883581902 903631026 37155719 397098942 647137970 948511983 33313593 846098984 950373015 959214796 892462333 968027439 873234332 960095774 740931954 831497832 149985480 574157045 694920120 733290120 170152831 337451427 522492427 759284850 371645003 372167480 239477388 269044379 120464574 992652539 132035526 926571691 570229991 623809607 844290753 925450856 650020422 881874008 761569687 921577813 344474652 400684458 46701035 643143844 512925015 573415794 950390262 972699810 586844712 977944494 196902685 436618487 513593153 811999440 791657411 832916639 453623978 772242124 225078229 339636626 967076775 994967254 771478640 905242889 711988569 794183845 423058445 728744224 643127101 905831497 721083878 948099472 64556425 934124910 894972578 924358558 409695323 809026099 25119788 807533000 850668856 932876969 515828682 997020224 430469657 476198267 784747567 823400020 161946523 588871527 107135607 725791899 795849407 805728825 874160509 912146141 52695512 834011776 490168393 583821489 997759543 999062271 893446615 980801845 852541028 923621245 217938553 560131187 851457942 916978097 285018832 734812853 726786008 788533148 16742466 804268011 167831725 492422134 48374347 114596137 661068307 992736852 661199551 967279036 154489916 872863081 801604313 946470962 189338474 944278120 725623123 802200136 855801771 907067381 498584508 785095699 104529747 795959118 597832452 995298089 223927552 580329984 965229549 996913013 805525065 929274602 672238597 931453585 607135636 857290019 121782507 998612796 326886259 890784160 428381440 766912807 809453964 858418610 804805763 974110142 631660468 982267568 69071889 254040542 504093067 837300064 930730241 931817726 831561948 835341710 428402821 570472731 784042173 826170591 712587858 921150601 176357593 197556976 970724623 987367685 860970323 994448385 654319034 690644736 847236073 873229642 84128469 244449795 579660039 960653506 311198717 318160355 145854230 635731734 572902683 643592871 576746774 883297855 164701457 699104749 637364349 858660477 288541371 835214671 616133782 793350962 507830391 825459605 114755441 246180927 792923698 850849798 412576021 432803550 963630039 972222872 952895158 999020751 691611190 701023133 57274927 485595768 969863060 984604217 257843163 735660440 250473162 375363784 793580607 936777467 77455660 643920041 475449695 885418808 571271064 999465189 207145519 343111082 428034470 900026164 113032912 155739181 586437467 683682080 288461892 816087313 604393411 717341781 81776392 127234830 797086474 957453188 884939434 982656215 629216226 926518202 870065933 917286019 419152337 787272059 208687657 436338939 654382420 798715651 87560184 328888932 313059302 771651313 502026439 642851810 803685142 964106533 438291103 441334035 113141742 212329693 621430753 640726675 875900658 951871704 80681067 836329888 749988598 826833548 552171060 590786955 463661408 574441476 815644211 841053240 535503536 857500290 800210598 938760797 708576733 842645801 426032839 494394505 333208324 948922908 709578280 877369151 389299719 729051625 770153155 930197969 520130430 591492786 651953658 977003358 94402156 988768756 215234661 753504498 232846337 720686157 934996925 992545766 435255429 636529890 669048546 856436736 828484286 854557572 159461886 388096462 71301645 324668411 48641568 355454308 950699555 986728635 941568804 942756599 119766762 533051566 129348672 658789907 186959177 209410993 116572499 423522725 5871017 818037548 202815558 844955657 452996051 981509395 613350579 675351048 715140954 986196615 530866556 981672986 602259960 845942740 917831693 953213945 337173837 514176331 880595534 904922441 140875520 779782194 767827036 903921507 182358078 790817556 116248700 359858628 838789341 872970177 924272765 989968065 290435862 298757252 710293000 847858865 115457298 869776491 59005318 395124516 764043048 909515387 594683026 984249868 881982970 935197531 402368814 445673739 264764153 337944722 438964602 853594726 391159246 874982777 581953952 618188157 721758457 854437198 149237585 649524982 789735345 816028234 307469499 911781974 694037858 965273524 927635261 960229841 75836615 956872891 235273540 501721095 977102042 988575395 928008501 958873773 59605492 256822560 3179934 895702751 916557390 955525527 230575631 474764870 464727841 823077499 831032737 915161396 972012308 980354787 819167551 939401428 425997078 661309470 890852639 971701917 880497511 987421043 6056505 388504730 773021316 787310025 806092217 970314440 864816749 866180464 11083112 39388386 164565466 220596473 19421233 586036373 331718958 370612853 179021223 643677008 41153922 448883070 869601499 946080666 74331411 805276400 644075216 754476134 510930380 930344341 924951449 960945604 938529636 972304326 132343346 561497608 643470534 844264114 432102819 975590381 135454418 205069847 417370165 456398038 243150847 872709098 106449193 534759858 225878026 357471524 282191525 902477923 308681799 938173841 489303986 537353396 511211316 752587865 674566183 884862291 609873123 836199264 142340566 256965618 522133729 892272522 939917999 994106502 143886351 760545899 724147659 891710044 38200760 522425057 248025984 376627836 225976116 511812085 215843201 960408496 205288713 407246727 711834803 752858438 528577395 569965478 327660386 632254279 148489819 841851427 889885994 938326896 864873383 903536380 301301818 865813862 705681498 823895346 790215089 979042627 364190265 567889641 121270681 351784838 722323615 912221108 910845374 983761533 16328988 630003941 643566257 764191020 39468291 345051636 796788084 812603208 829529135 850712576 511514206 702847400 104836277 715282229 848002948 968841355 560132722 567305069 623863349 998980714 592712568 995681102 894728302 959322393 511549219 574662512 272030460 706346488 692835387 773897922 999108478 999338039 513852609 797233217 874421921 879246360 819051637 984680086 346089221 673237936 208077248 800277248 328199662 495139239 53852525 841259898 824910305 956223321 889802759 977906369 669334127 687948079 786359164 929400333 51372275 503735157 418699416 723076806 750677561 811576044 962348765 979186623 824421251 842330094 183983439 187166902 189459685 832159355 666403791 838326747 807455101 932045333 278645710 382209721 280317555 829550489 246937837 257843796 771518645 820224951 488926904 807925173 24021263 29115055 37364625 384125293 199295086 907565349 429697083 872683530 261014144 536947988 308942458 741142682 928380502 937871387 166141532 512290837 82051896 322299408 177583996 766716438 785658531 919454004 15733519 216246678 35819617 855852308 471664839 703263858 195237348 388301263 142666018 908009653 767005016 952673981 65032919 954214462 96890439 394530130 840047258 850261200 917209004 925553358 194514245 243808994 520513521 816538226 632200144 714103572 917410724 924758653 93912478 389222597 560145349 805421667 734547248 873240769 617743307 974727079 609064955 670832984 661129757 735133558 237500080 898534864 712300450 777335536 593860912 787776385 607508242 848779929 640782187 828538444 707144549 995186972 433219710 613200734 668747337 770746086 271865662 859817237 80671520 459155869 926658679 955668680 368938344 886757705 705208997 833788035 163858014 372578097 772917239 776980855 34594973 940819665 361554214 677815409 501730698 532409175 79008479 839082456 662753816 877266272 441126391 615413073 858317278 884526482 122422443 685463641 523803270 656183197 19658790 572937757 408551186 914031663 390954584 716224676 560186215 924907045 885912924 982227752 914624454 992929303 7684325 532823599 856423975 877135097 10513109 118056075 109770280 407420956 750867010 784437541 721548566 976094762 625523021 896834423 209262851 933307506 854125879 887251707 407674922 675213351 424661848 764647902 361449190 557738974 122656566 282108570 608083148 626366522 398804714 483397832 429827148 565392061 239441589 859278647 111786166 567796272 185673625 400021637 197499425 221293116 561788165 943897286 437291615 610240893 788377422 923572934 22072591 961963115 657619638 831331129 46697672 966061857 873137865 942809044 511910893 627472566 124753572 228544019 883432295 947380367 437999015 625300475 754910558 840262689 45570374 384594029 967475295 988626487 967290769 968069924 467218619 545724623 424969768 479420945 420003613 603737754 159402237 475404377 826450218 833513435 125954130 489988555 315750564 848075433 860108410 928557702 413790307 976144780 935787312 951392137 984919586 985451479 905642008 964892835 906661261 965086970 321204608 607325633 519583566 995036228 532007356 766646544 144818741 601183240 733465373 849762510 291221662 909723861 599427850 838987625 605007784 968122603 640374244 823178524 371771574 709525789 79737146 317962267 198321121 990086161 340495657 694850290 713845179 837040789 725604530 734219846 513960427 642234984 349805741 464082772 936400763 959386630 85850775 609063069 74270631 909936494 249529030 409246285 167527856 247327065 412806958 461512651 129369906 542949783 818217927 932262252 623257719 972307220 35749602 882889150 812547921 955654153 722988964 888153963 828126777 982848188 644593433 755739614 272093003 598720017 698974499 871895449 76695065 309490858 740664344 907393179 284285402 991436814 215127136 363911367 417088797 564272738 645794315 781977395 742934122 851497331 832813655 856258961 515671866 711459557 70730612 440719923 265177567 547767951 500948521 642758798 660421278 733200018 373261803 934140115 877022169 877362620 691293793 733273163 298349239 897592646 587966572 854037488 962459134 988325171 463481250 601585346 133462492 333950818 26341981 307405934 823522741 855079951 176020419 488726318 36220032 374494026 178464304 987246281 864015036 939152431 853412032 918105707 491678615 509584123 915295392 933466593 837270201 916532687 535337987 644087378 582617574 618266055 124404715 636678531 11764654 358695214 473619018 905879913 803847577 928594244 639079985 788506754 449592585 750239136 519757193 843359679 789277740 919780790 496329650 804569791 179255664 670726490 641307720 942320032 705417260 929650872 456114881 875501608 51661276 418132635 346145884 703057521 814470307 898941495 970934500 981686947 115791247 833840722 702975440 884791901 799470277 963383952 528381128 877230333 915884381 969546107 282002772 448853015 664421593 997928090 854622418 954833808 715010657 920972937 587490678 770165969 198889515 562273184 77585671 242823222 565323733 976325678 791198356 816510592 968959946 973744586 686962972 786192302 671572785 974247572 196566952 481062328 861007446 885679639 124298906 596785949 944291259 962907177 837108006 961697573 649558507 676760913 554252080 947832880 417614313 867558726 202528604 926963289 475570474 910763111 93744054 731445963 159747592 706466081 210544611 616658536 927957752 993098224 252040121 651261249 163887551 542915864 836235042 961124476 600040263 884625569 153455489 388896401 45224857 401997829 412167862 622687558 748679000 910492754 765028918 992156467 429834837 973549181 609978207 910343381 132462548 414797395 615110559 928684962 7156684 629712894 564539223 663604375 599646110 747872173 54372573 388572079 400346320 886747488 123999793 714701239 815643261 987232112 11058210 125918034 17563296 218392422 920281224 970829020 816264835 872066994 547955583 674532975 942537950 962014968 52424104 953736321 883776219 993781710 635129014 661265053 755174615 974989199 35794666 767852228 918871031 979225210 573707045 745312539 227262756 853904894 30145938 669473299 322017467 446753481 477022084 821022441 165023797 209363342 103364616 301678364 927497428 937310667 337264799 785967732 336018743 756440399 273329736 334336609 691600985 972393690 909386787 972624441 757851045 912795526 904457572 992746013 86108788 353534838 851310859 920077494 974944609 991189410 849537232 876449692 543189988 664963048 236482194 510681372 72383352 245320210 556547537 933212379 487763386 582801623 869167600 997011628 886773252 992652488 183081572 612706366 921807402 985910184 380600826 397686573 380071487 886111798 189844782 852697700 122469964 835417232 893666892 905093690 142887228 368100620 752583468 753132283 266062661 427560939 158566426 340214103 261824046 610500876 940651813 992717588 941560880 968209478 605502873 830502464 244060247 567572286 749217074 961700727 327255537 559517566 913642728 971522608 207642614 409965201 325798947 622470232 378145520 615773829 588913708 943999983 127967144 998609527 797438574 934106165 612499570 656207059 689160999 752074331 516611556 663850226 705529562 760399480 893648583 983783576 797489570 845926801 758906618 997610237 667642915 843221448 867943424 972145144 429515547 593028847 180636712 237491919 475658099 981030294 139003130 955111659 819668652 903272369 618299436 991706845 425546902 572718424 377434088 568716122 400180468 583419714 434437303 809756309 895876491 964485980 514150174 571828123 209991348 982113130 177922729 853293257 928782930 970452888 365134552 961603652 722763280 853587956 844674636 888034838 677891249 977754389 634008102 754693257 695814970 827567800 486438067 592774822 630729700 918717092 121108143 663026995 418782515 565078242 496789916 708779337 922641728 987487042 109438426 750361008 799584296 832898481 807624779 938708228 999063061 999730371 15487931 682564458 717199183 861194229 83689716 652515516 312165982 907633584 626331760 773961053 866202351 940107424 818187671 976313711 153136731 678308001 387572900 414894093 45682577 694341669 582797397 775504765 608961359 650419118 475902665 978527373 450411042 937062062 543917519 883840400 876452472 963445544 807584825 844491601 519679298 811320806 697769031 699839844 711379819 941340591 236235355 573069564 400682886 802965681 683822881 711954575 190356186 749615334 861924472 922340593 756993440 942882276 732985966 910989759 66642947 416925065 860203243 922751932 850033728 876510084 909522140 939226437 951296856 966750635 435299661 855836076 967555525 994789585 705205713 741945329 758869088 759139179 642167112 936011456 585099465 678478803 178811145 271230002 252861749 396885414 914123105 927496411 919785194 951360428 903360484 919622397 204432209 938388668 591156004 914924650 62844669 395936675 392133639 624679275 77901858 692895095 921276602 985192537 785554830 818734276 123106546 915327979 855119693 886524298 92681634 772612339 136137239 253625932 317051281 441880914 193073004 304662095 331128947 471118871 291280931 675468079 811768905 988187668 862782792 890997225 851296646 909060974 594818927 819204257 729028821 769810047 105346631 186025217 864831500 977815202 834788153 860044413 918872519 936927548 178425741 509943550 594226864 711661805 153569177 234478989 556778013 942947416 241844629 622659102 227962954 321270632 954387240 967338475 751981831 987266677 766516463 959060537 739609184 857596238 53089663 804257873 903044392 912822302 925853420 928322988 946657623 983520405 75606561 657076279 87373435 681814634 456669096 472045893 426868195 469399571 992269892 992622556 219853013 433905143 176806437 405058134 817407669 932779846 705296958 999638367 724086200 788108556 933702111 987467417 503883883 660890127 71391063 505084556 547910517 700828296 705605642 771481801 612542972 807723220 752377129 823935871 471223893 561700994 370737163 410286381 675880790 778024989 754368479 980388185 152660818 651155269 908748357 962878427 983936882 995291404 621497309 832148294 916338043 946553231 430174462 656353102 576412109 702956374 810985257 826803491 635371308 965295940 944500422 956731934 703509206 959429393 849005398 925372992 814686146 936893002 334990392 483920198 823285774 946025757 989991822 992697446 301713651 644151573 396116308 519477742 311457739 607677807 988208061 990690798 143506783 584986106 419019006 609031936 117241976 606188598 807448607 885896420 871947114 906331061 782439238 998734547 105453082 584184177 691684745 786819805 538789107 911794188 401096794 471459523 973596946 999093248 975207945 996248775 387022560 652645266 403304428 870286305 391698285 514918010 816866810 938159419 151566508 768270203 439684856 710078111 53634647 480463964 377251199 806808382 432575781 609575182 203411055 946866838 430501118 727379499 982817314 988182243 109797830 831698898 488165723 866207242 117240126 580476057 410372281 876691301 856781178 893776466 247096967 860023435 317849472 894029627 814618562 837180680 867145789 954615081 529644840 940420364 742112157 945041081 6116665 836999580 481210911 994400648 697741297 718354298 535557206 678299058 102420680 854859515 829914250 946454834 515918100 608499928 558046319 740491578 891308109 897093952 977002166 993287434 945253053 981854730 92523130 433876608 899445092 919639419 303419053 999801294 598087135 858634204 42752426 178610817 193572226 203535062 113921924 806934511 525797188 913330831 739585557 942613137 162493427 638501758 708038578 877207108 789880747 893560064 210692833 779940459 566173652 709200624 338295518 892896960 560319494 930963169 261453208 373833891 753619705 794106840 363432816 704587784 214277900 808373513 823615342 897552467 283103597 316621754 944675160 969369507 184693910 388957406 241731539 950457114 271528611 633227181 255181833 515735293 549811717 785370805 317482813 677254804 969243577 972143599 17302203 964412380 239222751 684151049 669782916 739183170 332637809 767236039 814399340 978663840 71863627 524196668 517581178 677548100 99969533 905700638 400413545 968474793 923554211 984215628 974906808 993734317 659952058 871174065 455924610 947329227 646736455 835843050 857424187 984803165 880639798 975977549 515528948 577146904 561188535 723193341 171491695 376900144 132505043 527887033 618868703 916726359 553988013 954839610 167620056 272621655 35976394 443305264 989422869 996417117 693075393 906181215 241159017 635322824 568186014 818028760 472079808 942802015 896526726 939032886 353703218 646417237 901118240 930156109 179959092 884348361 19035723 505431975 902388870 969183376 967127415 996286589 844519955 861140154 740190592 797080951 192620299 323152825 521224361 842942530 314890837 693634322 438587217 697978867 708057189 946996956 556476078 678036280 410195502 950582855 682117569 787898343 737762589 949101500 467777307 886258341 255801686 923653560 322743289 669359584 459842385 785941914 595781046 949387024 984212084 999239624 988604791 992715504 546249629 657743673 949176302 975795504 880552162 994285703 738646915 912666756 80525485 507742233 208245169 722294175 904526321 934765861 195228492 313682263 759949503 764539133 665641573 930973379 427715369 551504205 953336731 981358869 75012320 623483604 533712662 637056866 575809860 639076770 268362600 292807594 352055101 814655390 264619305 648498402 950260787 971151164 701485272 779993017 925359969 992261165 795369683 975059925 475019148 874251656 934063669 973006122 339618495 552938195 240317895 787079658 192350913 972211423 446002290 531139689 96531236 508390235 881451346 933932326 804091454 809511022 270311159 602886665 343069349 890988412 649110649 682247563 172012813 562618531 437215670 955027167 641003067 840130589 10201203 204691526 192203375 900636138 383434093 536225810 508316385 663056029 688671744 938822647 684648143 808100093 293766194 372222591 921915482 997373920 428042312 493401967 659916941 974291859 282482979 315303884 76825596 252605430 503760163 725129152 306872125 620822573 884817844 905238704 973170033 976667852 861300138 974330407 821669221 885888947 888327703 956277022 673716054 865124498 210571584 861782927 566081119 673844090 888949660 900247345 909067078 947039369 152401920 929868975 687491044 972302712 137685136 430382033 2107332 277218548 597529072 756766994 453252927 835439847 644372987 698740089 600142624 783269602 38337260 677705245 398926881 670630149 849748565 952970284 998273795 998594930 455007696 457350653 370759510 392037725 573905723 688745631 276382457 430766915 856144347 888583768 400332834 717735484 879875073 919341581 539819847 932273135 489294678 952549643 864278997 975452983 761929294 978953373 563748122 700131417 321559280 749877567 722115822 830229848 995693771 997408471 268736391 431214864 782125207 893215741 190009894 944766718 343151126 959109239 189858941 486412538 104152457 536314741 456148847 927511670 862953777 894062293 747190596 777753407 250951967 652308410 242385996 431038429 345875214 634900102 577004340 587992058 671048546 762961565 225022521 637292726 534141518 816544728 61431235 872900599 484815964 821027503 1106791 180388811 31087443 840801274 774185413 931320031 884729550 946637172 752005425 869407014 198842710 705955391 350669840 983349950 193086481 242404093 144729565 468332411 351684121 419766211 577232515 896497780 784920259 882382446 327895370 938002108 910307840 956575130 60563135 967869627 769879531 948295794 793023819 953257551 676247649 791714920 758016085 963146251 626567670 859146496 902447182 971558777 665540061 940102393 655984809 940786230 318846350 354350368 705710201 747609764 942683098 943251548 501131036 969684381 959872905 966915745 886647337 951319370 288085050 331516737 805162101 931675131 136859867 571187950 782171288 832260696 168840821 324063359 417910768 729534824 300692416 568684663 581585914 720877797 687486103 871889893 111577620 964997950 217878562 601672345 867082140 946797253 744349894 833839961 590169076 780499414 380309645 860346368 610511838 947418832 888511134 896113318 417406303 743883077 748482798 815176455 164177836 436689066 58211497 802346814 372925127 860078651 801076482 821656527 980857515 992757197 916854305 934442901 655286366 957235408 600711421 939134789 893640670 987995193 738380292 833389221 251753703 648987679 292698077 707996705 247459475 811403466 808768359 859271259 888095413 956943655 468134372 878834432 83550654 621019724 660806483 846372826 804176165 866351805 603243574 879893203 480360459 691077720 884428248 971077832 523111009 749847618 101612447 259506296 734681160 878372759 6238351 841775017 308857166 492025505 341285024 593217601 930094507 938816388 50625555 397855906 916943826 973420814 395171420 755719991 775022934 825775778 575877527 820722775 571204409 890705752 895402858 944004965 738569458 824283363 592733821 648496012 692311228 695297497 87837415 361164863 996339107 998013995 232791732 587666250 293036872 730994457 797529753 842008838 434435018 938541735 941992307 987323074 83925860 584548912 542318766 987451783 571766370 572091221 167641358 488049668 76943032 943773745 161207506 634941294 127837259 184687123 23071024 458996634 613562597 831642689 82298968 129698515 184177013 670584656 213138940 729578518 751228929 861155925 499222714 534474762 264256054 810220205 233793019 733232122 400252346 537862463 176386005 521996540 462167765 811426178 936286323 956064920 615488591 872253895 592812331 806389117 414566467 475842309 409170753 636300062 235846298 334641384 421584140 609144712 689947363 743554124 285189079 931746243 476681041 697159010 269634280 403116641 342352524 955558307 120108161 182183798 6235196 546911618 264512919 570077688 900002522 915208845 544830864 699737668 283296525 794566117 132229216 331133334 290918792 476575425 183931497 576328246 899395817 967059989 969267563 997357556 966360505 976280318 595197782 765135255 713821706 799099465 341124001 626365339 50113570 62149627 290950242 826693600 253070137 666848354 728696334 970710863 355430853 358888024 594247618 986372830 655495893 865923157 155250986 812637692 631329949 836015936 334793923 457756227 828180012 976901343 347188802 946681302 593169217 817568075 677509028 935865536 308036177 987913909 637491236 888308381 652151767 742543467 601119717 943828025 906056875 914701511 997552129 998972823 91470304 780237737 930651794 960105015 216014741 826680369 967641159 991539346 777149840 856298193 604058278 944033279 539035128 983709267 234881694 673301633 448339762 939885436 825590973 970318533 135385535 484396995 163149478 590203939 340490608 387433833 104351445 794690895 722102778 967872197 336008483 518623143 156642808 523115671 132441925 733361815 565275831 674760674 110076989 357933707 239810217 642958789 641464664 943175451 922850373 963075710 92293732 368242784 400823793 869507372 106974619 283211490 644878332 855480590 546236037 779573749 339957191 883310217 670141074 943904562 444901604 836284094 46116579 381774936 204563771 254016561 970440301 979465971 417425348 790259984 577926010 862035355 254055427 761896676 247300578 911111887 762540345 971582896 561975042 833456083 325419198 481964609 392568450 962347596 485262054 734326966 53197402 331203952 90778871 266334154 69120504 928105423 450694442 739749423 767502908 923841793 317710298 895119056 563109627 657702633 750905052 952937187 712131404 903392602 390299183 503015317 431911112 850813978 412234425 566996672 488366318 814227412 454251278 780116950 160858054 519206213 73460532 713776628 456569473 469398125 304217145 590603408 86466674 507454801 875822117 937643715 7120114 296881323 611188705 703567012 405830386 691305019 707502801 983335744 720684746 858502626 64058681 925350135 706698822 902552650 509085875 903263512 642102421 726762780 515941791 844196615 492323385 774281773 21431062 669407230 945143266 990245140 224602132 269901264 546503168 734863071 844164655 968757270 362801256 591328804 946326129 985606664 916332896 930273078 177501714 877279008 469970300 902338294 200013955 315377813 653532923 982566014 353583619 627601163 234456939 673181672 899559476 909303338 184365135 738087758 306998522 983772541 180975952 584183486 379921657 741685376 391921767 503061077 711470767 714590856 504545798 963798208 877787249 907729488 609752218 975101480 841234606 991372377 535279527 542933093 414277612 660946766 652076781 814200223 633001446 878778494 449753138 855894806 181353089 428854940 351022140 614740371 137641563 828448820 285138769 706972814 956951605 978671262 265321671 631750704 158925387 433805196 298046887 436680514 74860502 258992662 576049481 802510520 350926727 861947802 916086491 982402228 955407515 990466178 113916539 902583936 90748104 606507100 189585757 869956031 920913613 989928688 183547207 881546874 963281823 964929549 638144575 723354221 171316264 738508917 598120776 893098515 311856019 617349143 2893292 933734303 809021745 861462139 108928388 870759773 622651316 652568104 717710626 770998856 863967751 948437299 546741487 611290991 481688373 966967635 940412501 946159979 258695038 534982299 427443727 859903598 374933196 811824722 342618593 609676176 649176292 950212318 248124522 836324605 587821575 823057993 688789553 699677919 76708298 795855894 142471341 305254254 770007430 786371639 196223074 548370645 602648961 733323304 546930727 717726051 443633272 515348836 218642661 959000526 765451697 798305504 317902823 321893223 752901803 823152225 582558805 950582340 982767671 984612841 197525298 273213376 614135968 999678431 385913285 819127570 869295130 898332993 861521547 867602811 330250216 344434553 571228636 700170734 599848773 806740573 775749596 966427875 456376973 524128423 872881390 905017266 3581540 127831729 57493174 889982178 372678717 458103929 226332491 402697113 442917303 877897309 188234676 738880333 269654644 940316095 113079967 986361842 588855076 711805048 985136247 987716881 302147938 691997614 267566852 538210835 303218465 637605395 382213625 747480242 418364600 615515669 847512110 873576277 934801292 974868974 567532171 827668923 406471366 984087379 311855457 346084942 940940698 956872013 852926982 885881232 40594018 108050912 912139839 956724767 720444341 934541519 698164817 699842339 931899218 966872692 198210855 862142539 637459271 727765453 13965685 353503711 885555952 931949894 585062039 635419160 96821214 785917033 922852704 928683296 531299762 547710879 727781075 848432868 243075120 658026371 938185087 943129366 536181859 835042599 943648025 981925576 184323044 440212048 781948542 821812173 484902135 552439889 367721733 739595506 331117988 614672632 501111269 545518564 910167732 953596390 539933284 972916671 456164737 879061402 724302997 794181120 801319585 907833879 355018913 522189617 254135247 502729618 173230550 417854914 581133657 600762803 691709860 879179040 407089227 937957947 800419771 947389610 437817451 957781923 481980872 655977884 1240820 827072778 148676956 536517622 866903238 922877019 690675054 937631261 388558472 788022664 236754519 495367339 475870034 625403817 737774127 860675164 66616903 565204390 543581587 709295619 155390691 937588426 183345657 847021184 620151293 910323594 489375523 690778948 859358934 996777579 35809399 897824368 186153066 327990943 104569839 657108751 103317084 345756817 390333405 924984509 225517682 281784976 175390012 391067295 831805657 962009162 257202016 726890556 276958067 969843745 310110591 579833625 791514445 839117962 203356706 549224649 223418723 461732841 931992250 971996747 413706616 502594914 423362414 748416147 500429333 524423729 75530514 523071796 365849884 894510720 390997319 698528092 884801268 933372931 564226967 931632302 124840147 517036614 990664544 993258700 892437262 940384227 502533192 946311433 618667519 743581373 76341886 995515750 91518281 331448840 921696856 994487783 899084507 978849637 494862179 600457219 183956282 520776726 568215982 983446885 51312654 426114276 215363320 371468770 737625648 742732373 289050951 341505722 227017316 604046522 457928071 545713418 413157384 475930592 74526486 517396901 6961108 969295551 160800897 250754638 771556910 779848257 700996687 913111334 378228260 397727146 696442392 978633375 66309123 204128215 621730824 839980233 681538043 739819540 994326510 997744351 646812590 871210852 286601983 751077069 813494698 951992021 749522044 798453979 997724733 999539671 168535407 740396589 154939165 562710096 266162025 369585631 902886242 915796676 959465521 989582491 647335962 996259292 562690649 924578463 781496486 914948464 392582348 981140843 238066333 941834234 62405251 458555008 234528539 534872759 989080738 992081697 597486492 835833802 716176578 875003941 254263039 625065803 71006294 92521339 799951701 815344404 525997975 763924283 548979853 963230579 775288021 996712795 501765906 711164133 345405520 790943715 149904473 764496625 111206851 828811298 509271296 896181333 229897529 587610625 239286857 347637667 929801033 962200065 785458189 993900012 968368055 994223940 624112006 812279248 309668825 906705389 174367576 321571253 589944435 767876717 790815252 956466006 543886706 855768046 872806480 964303018 524579167 907653783 965935478 996372788 444777105 601103133 447204013 906541919 593505962 968336199 647511625 941025677 256997658 495983548 225985665 257326905 21657212 439890818 66199160 948652847 69031677 782896859 237176379 444631269 901538518 969791971 707101688 829712225 468242583 789374509 715727227 741012792 807259064 866396555 677054636 741892703 292493697 365113490 713610622 853077342 133843375 385124405 395289336 423218485 68191187 767575445 933444369 949116495 577681750 586284369 46234114 925782156 615188405 621218303 501136214 840253635 849540356 859926654 769543295 935649215 202123616 375392491 667218152 855513872 24012228 65035856 675817396 889569687 297902738 306489873 513554088 773827438 610613270 620711222 779830986 821350515 38360161 945187384 111334914 911943785 257914701 639783923 39655649 726494600 116383682 490667346 510132943 813114709 646343770 852910350 335972959 603502007 273952175 505846804 886637468 957878964 396279939 972303452 264904624 960438168 309940808 622703462 229327719 459862269 35950203 225792133 371516371 552265065 838117278 881721541 912592909 988045115 877747443 989109496 661325268 999752012 987011023 995036330 9720788 670627140 289554507 533005713 927264843 990315544 268370257 851845812 251271426 739494680 336151388 443719110 376146060 779842442 58916291 682461583 144963845 662707297 441500097 742319346 608270250 622585294 734945902 780005591 561347725 697635648 861396850 956051465 985434116 994766184 910515206 922737490 109589035 811134189 619973860 632100532 193607239 861457917 331205074 387153146 103978076 654554951 79722385 534486296 663903983 733979268 415980633 790549336 167633654 541170667 134825502 845570613 723102997 750085842 654581530 701726839 490688723 798148337 626088646 725681353 388950071 598837372 408058691 492442964 584204910 610541007 617183206 916569711 844112254 879389393 675914964 795022470 796610097 981500842 223016047 527664537 775006500 800495754 984096934 988999300 645059593 930146546 540310289 820464311 696527183 897024757 339345137 639641138 777582102 846875999 761195165 831611371 55163645 407248893 835356114 890745979 685129964 690930869 892917969 984625329 971931226 999010831 725734831 993126066 733134876 977425582 99175427 150828831 623656104 981523375 226365799 706653868 701134522 935661841 369502990 489759986 763195019 922530505 633258461 759106013 926601079 958616997 225463908 294263533 756918573 997774634 895216863 990495473 292684203 555340023 771994727 949433485 138088155 283593114 711082327 828522125 41330666 219569708 328982151 905238292 195433387 758969379 269669781 520925391 401477928 862836613 568446861 828984821 404173144 873069355 292725798 356218281 565950298 608999765 174585289 701414767 38018122 212865280 95809803 114744586 972663757 989252847 981774282 983188381 575239461 899168248 665636400 784749430 297001808 649792783 926316892 936290647 799459041 803357825 610284696 899660320 2738347 491033885 958047052 959839977 851858979 949835148 350669924 845579939 176642114 619700365 783388910 953627852 478724374 591189341 740163580 961407629 13151388 994647458 896400992 952222710 371585272 920113439 748848181 952545673 629883049 944501451 5944410 143088160 381130414 622044482 895742620 922656620 733677537 935971377 412898834 583592374 829695970 881461422 388668291 452574581 23301774 261230750 799776564 878743695 127786576 248500409 491233330 537772013 934845097 940235754 893120994 978412627 387126667 692458119 482740047 548469895 928748025 951004742 781953112 795966415 332548469 730142555 51161326 769281780 287028782 707292423 102814386 777342739 249837458 475996646 320512044 559981446 988834569 998326668 584706798 959583634 695888609 841514900 745145050 793561343 171167307 463328977 15875018 780304337 244538331 526002325 314458807 630425961 941916888 987593678 230587927 728668439 988626519 993457917 386678246 623582090 636291625 721882176 312042676 788107690 514775288 969062822 242586758 381489833 352527749 924862687 705692240 836858256 675285615 987736909 580891858 784041754 965442359 972539259 424846490 713598655 649164220 821992797 472335680 824469501 957488853 960227720 569500004 584306144 906329683 965977787 93330246 721306105 322744350 670701930 330381628 571152717 737424833 930665848 903608655 982403740 188566263 267065667 113044036 937467076 710617296 955583149 830298553 998060962 202841822 541103034 512459647 815454508 355885242 853238569 468065834 900315281 981193059 998722267 474673576 591831928 332186590 800912985 676632307 832542731 932592612 944225969 427328966 540998512 680057664 680492449 272927551 814275994 890823437 922775133 441516164 644190663 86841250 568577811 299056974 320455596 117812525 465352655 237106430 471153248 644321326 948060596 467824428 842355286 796186765 985700902 809743560 813898433 138672768 799736469 71880773 380457490 825349198 899884565 262006549 284622825 741714800 924605241 782421112 837353140 316126861 959084058 430741961 928345626 205324515 494223202 348407458 689728367 282071743 914570177 611954004 773621047 535981153 826526112 898649302 932868098 547109187 772076652 211610340 680567628 753079098 934041812 941145283 992197037 739767617 970437410 923207858 958929629 616429954 837962073 893680028 895776636 119967253 688260437 618046018 730073173 91342888 880966873 755657182 971019031 919045463 943422240 927270440 973461766 302287094 559381957 244991720 400703029 575778047 642255320 189398678 920165358 810969921 998265339 553341541 954684766 697120972 774603422 897285172 998718075 883623934 917303909 995383903 999386949 28132614 241421075 992846945 999093059 286092392 489389361 606002831 710358409 491535090 588876993 5313761 875885036 410444298 801561661 53587571 328428783 313011379 875886269 166152384 955201838 23279130 878190588 329430003 389675873 93907221 350875677 484492289 485471468 236733703 722359229 842373760 962996143 341146971 993654751 351963321 470521113 265398931 818830974 661635208 936526831 915541406 980374740 209592654 723488090 971274027 998303852 304888504 855981934 972551960 987902539 650446409 862258061 869769986 931932825 656409683 765777570 164509405 438530660 553946095 640423730 469032596 884304747 194945326 617931604 912548087 931524962 462579817 880419488 93414415 289299759 664789722 792526464 16633139 80041321 543742477 870816750 865913613 957518126 60261661 550826367 680016566 763444314 325378964 608965359 569901058 901227667 396410835 792170856 633987392 726445371 887821884 915017943 813140784 884314920 278603608 472238349 502109628 593821679 423585024 794017070 849255122 954691718 207411306 407081913 552382012 801625062 944366025 964011526 376295890 843746691 405670126 518516936 394552743 926622348 712260239 819966570 514727567 525137841 413890114 660164297 364729427 574451985 930641380 951400931 525246507 694159207 795940550 806883339 679741076 808551851 485304513 567726051 160302499 600243302 173425474 845491581 665440609 738599481 783474066 920729554 960795723 973686568 102458085 715236254 479682686 544797634 412285797 853299842 433187264 794430188 847473958 959910377 638339235 909078959 563649979 883881913 896800332 934175469 170298293 703895297 95838094 460941774 229936284 837876779 795708122 845340476 380554553 948604664 770147727 836467810 132568979 809997116 335453514 562392262 891221223 998970464 429428959 827790328 751424565 776042870 922144849 933273249 822080726 908748947 902909811 982697610 66054968 655228315 827484273 901984916 901766813 980446826 214145825 480013618 548351116 954497159 417263765 922750733 191757431 345586582 677448246 702485335 820943459 939993291 979869565 995192560 482595594 977242094 224177461 504481442 771236789 908653763 72644329 210381318 527684340 998923254 282773611 942048499 210080507 448327158 959998646 978982230 40697468 740252282 431887133 765025885 44480559 936875789 607587146 928156603 548184935 657147698 601898495 745648875 197687662 722600369 204434487 653232054 613624905 742691537 935616390 991514391 915931376 977062529 865571120 936102888 803941850 985139289 949337172 982739745 971851940 979205999 741335581 834625224 493324336 930609249 2218176 87587430 49852193 298592448 495483163 586924936 742802771 807395501 389394339 860501835 9909840 219461598 172587378 206902048 52050038 581475142 778860809 792917255 107671531 845122187 105466796 722334563 212842326 292087649 665520100 782151389 139189471 189695940 34156705 292655974 890344182 900810932 842571813 927827563 529605391 704003295 697063059 769358938 988242695 991424437 999174211 999433533 117587638 598447082 784099010 866100407 630977341 698993763 427114372 987137435 677492491 988896368 934094339 970502630 499439446 545487389 125859041 309176115 716601402 789334411 564510833 737912665 934630729 935438104 964148110 984613399 305423221 543401134 183350043 804304713 790841142 887793580 213216605 499483854 569374846 903656611 867140121 898198613 552544581 930604705 622779754 690850739 375119768 505124303 545156503 966798310 680069909 840391633 476732719 625616119 865198629 882258127 917738273 938349568 140208006 322128965 94514195 260581092 789074206 890951099 252057631 459790575 569840203 973374525 344994762 733027419 992714258 997996057 908936255 927406492 834742499 927859831 182495676 941383633 955507115 989975010 156132435 462910888 371168322 674914103 737030241 844492701 895939907 940777875 670741296 682227015 73000289 830849504 890486553 919930866 496432927 864741511 609592788 753576520 530956566 635823837 115607154 674345069 185914967 463768973 965214541 997386807 747281246 870054631 855917662 928702683 349255170 911686078 626077620 755684629 513751644 838224812 872837787 928532031 868587340 934955751 803465085 892557619 337342229 731987193 314387492 915999335 325253497 907756099 903092472 971756928 758499124 762509147 516366488 832005501 15615636 980093282 150852884 491547217 529884695 809508521 878237302 990252068 540130465 814857940 699306950 992510181 71616555 779663636 911773224 987808652 413707259 427933839 671385109 872037754 360968361 455400304 833921760 901430322 743322474 905265718 900246907 939552313 54285119 279192775 924101290 935453991 377781523 390377464 354186022 651510855 698052455 789818107 107748765 325144924 256518735 916551009 800958688 946936393 514661872 704913470 929645512 984225486 595211785 741969330 172613793 508563255 861102701 932598651 957060519 996957824 387266884 625168601 230353085 921102623 954622979 957731129 931263504 971346268 888576216 894192502 223070104 420186267 84855491 504812377 455605252 535146177 32693947 481854471 937897180 948596519 124358341 749844116 195150419 328057709 484715147 977148528 751212458 889609465 633025275 669054334 294942494 365174872 155283142 650164369 967944471 999191272 865106731 965046214 879390947 894498788 690673098 737883625 906633992 980301367 257575686 707867015 579364574 637377787 869334928 953167879 574174156 664778762 285528806 660891190 1745175 740967316 431193138 798394455 39072664 264948976 804129577 983870482 436583826 997706030 178909418 422822499 614934626 707432642 301054060 606558553 177089634 992456825 370675314 380240313 890171639 893738036 814161800 815142345 914099998 982590389 383534011 764681663 561123313 948027078 633867648 904309669 440976467 832364696 613314812 633583949 761722679 835475434 496787819 861221915 224690457 424053378 543825506 951899694 768997992 921770047 178263818 648564076 803893362 829100986 903193604 924685053 789344394 832822994 155197985 537002557 191167754 525035823 972898882 992870432 961915155 974149175 771226109 817574316 954832637 971140698 386864934 842314681 846543864 937340244 813653912 910959340 234064332 994281776 366189044 710594641 342280416 566062816 935399845 986358852 54654507 363711476 731992040 865211359 455065100 932731268 704951556 902383364 469359034 640227028 362579891 700048410 405250285 725003246 63635775 626774394 299971789 417293862 717246737 932075538 632836883 826698524 626511683 706795872 703892289 770297791 672923835 921939980 995224398 999938325 91764520 381717976 374715060 877630347 22685618 663954187 396331679 980260947 536802750 596764064 50653608 80348428 943705953 970439646 576603338 666864348 553297168 579639098 770284410 862394295 468389403 991030141 842390511 915898485 53763800 941749584 568151217 663206990 465435382 701503445 602756783 611979095 280044125 686940803 274683104 935198832 712848304 763415285 551206243 922415930 82738867 686484097 545981615 943462894 322272083 958826334 407260482 488620319 799280550 804928209 875012001 938993275 635164400 862306905 201579372 315576711 208284528 263037890 779239992 973680358 194108102 898599887 136571325 507397617 627998719 729192732 746842522 854161500 394430930 560153962 445395133 763444910 887484061 942850774 506999121 995877185 285542689 770911249 456779581 937697216 206460160 850218246 980083954 999525447 903740847 976558908 811759972 911577694 890561055 945265151 614503361 615216780 435453517 782912973 396004481 881231976 149721950 234652473 788751687 842900169 13599950 713267544 4722210 339966251 753104608 769839931 645524865 928531634 231158035 506904830 67885831 757553109 857864260 858251609 559423415 973119688 723213509 998373033 149038567 630034793 644033064 705225436 694804494 764001482 432999415 959666563 516574812 856397051 799509730 875577688 30729074 762871588 804514238 953399591 667753856 938199352 21672693 519553669 73594584 937090446 619068420 859300930 78211877 142581043 530845252 984199524 286615691 671292520 652626375 661845676 114716531 452853036 577242153 999917598 506769241 700549707 657776992 914020160 889508827 925678296 972475494 999894120 663241872 865517321 628328919 937197929 618551266 725331751 131023432 603367554 626857609 757178848 708320211 976362712 212219128 980980898 830472327 920347010 856328438 885626719 849349335 981992747 613537382 919934629 18445321 819960410 205908596 500846038 400328120 795206679 688066701 927740016 387081266 438220393 192445968 269958313 485834958 900846043 147523058 640486969 422629586 686485832 962456628 967934382 618010768 701871397 394045019 636277141 291191290 501255323 51746071 398307306 984125244 993911409 804373204 858520221 791566704 934383960 396348874 585338664 633803468 991168549 283556019 694566405 116828565 749129484 377493405 465516367 162608572 693299606 289265864 362779117 411287664 804749767 949297549 973546290 568165776 979714331 788680004 837509272 163466504 873978249 994181442 995356387 92617320 907805282 407350130 437944307 375473399 990582717 735537657 764497009 387799138 477494235 234536235 676313463 233378209 702965254 230283199 889328277 198482143 806702723 126565771 937291829 171991520 687600536 669448421 936650887 322579461 850180516 150942836 777041864 495750707 831994160 195932159 329964183 311136163 673075902 861378989 967698311 423000684 932424223 159410417 634361695 245539642 365140484 666253979 885100463 441124947 461570664 544275105 582429859 65400434 991453700 761982378 897344524 595923413 746143813 325583582 585320866 565370533 729940550 125329247 827142925 137470197 913722352 36129021 751581274 951414811 981255436 560036276 854802406 747672708 844589969 521794662 886687498 340828711 667461193 489073206 852051368 151942932 635484518 373744827 685664244 802618052 924448592 968655941 984537857 174047487 930010192 742126811 816272864 240979399 880388423 438301123 977343379 632122886 694493896 304932453 585938318 467768561 810900714 937703673 980202875 899510920 909010176 234439308 507914554 461048727 907454060 895884466 910925312 630651714 845259613 655510058 944440111 972666338 974833424 754735658 873708730 292640664 846354788 74691189 176951366 220300145 600426718 694814184 753183144 301146949 378545753 87316620 334477561 619822851 907228289 593952078 825216718 578340644 656476086 103257270 726484883 610487243 943556139 85017807 388748399 497043100 604982476 903278767 990519926 940569155 967655830 581109812 945828985 579147217 901620850 900741065 982506024 976323840 996239271 394026745 412627514 841555557 938444429 156335002 660668795 221726498 734012961 605715631 677385841 830939256 889310222 36438364 168803205 676365510 756106948 773224333 889355728 907105433 925351371 739218434 754705539 370958557 428064471 876971208 891636494 406935830 416766962 703686268 975679636 377109631 969175793 886238795 905670614 386396523 930092653 753542547 868652274 581514615 658450335 410396040 564914053 474160733 717576049 372320348 708843922 883236404 960173681 835609610 983221704 384016647 999547906 625055702 838211001 519594738 973974459 580250980 822726875 229470714 475128275 348461593 964572803 845209709 845345140 859997914 904561581 996887540 996890392 424893695 873726984 203739951 843134399 211943474 994600838 455142427 982732167 5396854 32647410 862356627 977763862 834760635 876352404 492576853 704494909 320051985 828896134 472837442 756517546 235155863 928934774 627027517 954546476 999347718 999628931 786982573 958766793 933130467 993857500 340840637 680083810 190768240 242536428 939587750 947884300 254130606 551076184 435778899 759041139 15842609 933298070 660732221 951074997 786709119 829398664 32441650 232447971 399952341 930438298 5932852 757434308 525261388 906674407 794341970 871231955 853065907 909816423 249242839 822217649 726638451 951286479 896149984 964318100 90006471 993395851 241372495 516692013 771378348 991828529 306690244 753008743 630999691 735654505 760429583 872349098 694167961 925931413 893245950 941519660 46652600 821055801 386784078 834997791 86991073 590240448 438740910 643925818 72426336 946360923 564405173 851077439 103058478 291212103 23423820 954302295 548282298 962360685 346503284 872410205 890926397 892624433 414416942 954628092 427852157 675043142 152938163 665143285 921927641 943625426 292954775 725356711 771746921 999622370 416072387 801383667 751964842 853143612 576949390 945636543 809778504 972573061 833691368 971060421 21991485 637408237 427049879 691157745 907724978 979893041 977165160 980875358 880236237 956279016 913938959 930014419 234357826 588824345 599038438 674894009 623006798 741811090 480454328 987988467 527587389 642591608 671303809 745806851 723434732 770864034 654214865 978523977 892627517 914336576 557046235 634574277 105319122 204537000 201468996 821004657 773454961 918455179 525600389 914941396 135992670 357737337 334542406 699955190 185645589 385333856 252485314 679322758 223018023 513086217 536990069 948694775 708185173 783492060 355563837 907389549 704458217 853074147 558189191 607313873 942220251 951992110 581125799 954717483 403729054 633616603 273407776 973658603 160558503 466813701 191678498 771444597 853344119 885636978 617357187 897148358 527019375 850008230 165664502 173006003 678516659 998737845 262533194 287689792 808911118 974740022 428589455 502864856 819160306 933692118 932310025 932330908 924335857 945676677 188420924 401289860 450373855 763206012 206421910 794654340 795191862 818280575 992811086 994167539 107841626 901038098 240802678 402580388 99495944 446587603 389465086 572897706 68851169 406872950 748611238 873605233 258618242 706752397 105875238 801052708 410388035 807273731 293134114 581830343 947148646 978810105 506418283 724885836 375671248 673696422 741796261 827150968 79600923 790199950 404980921 655133270 609432766 649386475 499525004 954510569 310924454 697859608 584705050 943018445 781597115 874325322 431920588 662624811 80224095 532948082 758492150 824607069 136870669 311713824 135528276 455660360 841313276 911171826 886463557 914680943 518996087 610375717 460500210 923322763 392056928 683970796 642323640 837773691 11880962 529074877 546741731 882436433 235881853 594336502 567125225 629555426 101496682 279667652 164206372 218342176 821760989 908512613 641644169 721139318 765942171 829841045 551549871 581575394 304532038 585308731 330793343 710592518 880316229 900215187 993335771 996578658 217399291 970066611 290600357 822390415 790917304 882750219 534723403 821937962 157317990 740320124 300337400 935176158 240955532 340525351 793454215 808888388 867067879 977453224 617549854 970548265 216549619 372372307 88809923 557577470 229711730 636416875 761120807 796388982 297494087 514907427 591185009 629183961 555084331 972817390 670250732 879478374 111746554 762508862 374269417 483158324 810782964 867158338 784906994 835477229 47288919 992110230 337208685 492166081 728820832 854115807 971371693 987337962 75217430 899532762 759306754 763776443 626358580 988096608 389874163 725718269 258028104 540498946 29397019 180004084 863786861 946751414 814487133 906289435 175176754 239031128 35283842 703583654 806322490 838315522 174492052 246311178 136238568 425118690 337665276 446532063 31331997 297565752 385868737 561071559 711523321 714382508 402577180 638975144 329103726 674027719 833503352 938708950 743443838 867849811 124035171 295719739 877372740 906236070 12781239 366438738 833368738 925586084 152976499 506736648 635714396 980871205 298180853 658769648 785077271 883008428 180214802 258863316 691173520 954639925 461052403 867948077 110944204 303080650 386082442 930905809 457943084 515189882 646735357 735654415 817811167 946346738 368255584 604397891 230603780 277293460 917624878 997067569 514530085 635488577 480263393 675776718 86980561 278239022 407412186 524956058 3628251 560846558 416585941 761325898 858993881 873567433 716190602 820867624 450789530 637325845 936971463 939495784 932374176 943983470 419317510 712994566 937189570 953691038 358018775 380718900 940982946 946584505 925613075 931185712 78107976 283496804 399279071 415301151 930554070 958616234 68059814 667112806 144931130 974990677 679515644 907670969 775919696 948533543 781544340 791213862 115858660 514794205 44526386 62429891 34787846 695308006 787929823 818243960 445828004 970648106 369623675 560490846 858287164 918647840 265687158 276571440 75913085 418845431 314339396 675900356 506556435 801902980 740345513 745403105 842083635 939784760 854326452 893864597 538228207 591932574 395533185 737480717 974199421 997196122 27456491 624325552 692490060 716519592 551948178 653630259 194218514 463959939 464485221 465578302 973267069 993619184 739285002 798701422 643449541 845971621 334168498 982043468 720187248 720803813 30005826 685933301 58556353 843022652 413723570 676970009 143176198 283594766 455205747 546842526 704791332 738380160 327280093 973616456 861901640 919362801 488986537 778041122 803450014 823763515 427723864 538184652 870320955 933198772 508078800 732811735 316550029 829400774 367354758 715205681 567120576 959688301 944942710 975509494 411615354 416459971 217072597 997323817 138527089 383331590 491022672 944960004 753265808 859833036 882640774 934327593 527839326 665214866 37026756 70410852 305849211 728806868 724850419 909980316 193004531 422757606 29288586 475879071 721199521 762828052 411372479 641416874 77447108 328381367 221948811 614416823 577462890 835965178 867606865 987652889 663320610 879391397 140998178 983172963 183949544 475752095 525662281 556099557 223262347 408879143 777434172 970544813 194638575 833014279 528856512 979851172 896477921 986380935 656855913 809772030 49208570 484149888 785889803 839215028 816112120 864210785 425318667 630541828 70215405 342695170 656492828 834878094 938149633 952292740 354094759 801015012 916218449 986834811 624712 58098430 878588734 903105758 468812895 727446148 218838476 659673963 35796561 669643597 42445697 184911723 25432753 540864624 643540716 824974197 795485054 801061520 840917860 904009755 871579847 980870823 856170707 976939059 975817699 992948688 828018885 885500303 633701100 870247513 988520444 994861870 604268341 728774670 692310065 853112544 404103639 910430686 348404292 852453887 893699044 950692009 535475692 876316619 595536744 629197217 179613269 553977861 264940136 287352265 569937534 714839323 506809932 587114012 135830046 392307127 396535070 911198704 555419177 767432654 504617622 585991793 244726156 795677506 726118536 920488035 730139615 846048101 814913831 919095664 892044954 941925903 924013322 943823038 630728058 660403084 908784965 927982988 170781697 672401406 429972481 637556933 710595477 731346340 873017846 893562709 204500006 975346024 317255346 957271605 189699309 908200726 98776409 892095060 290482933 944142158 294894369 798936731 522130022 952615893 945818766 966307121 520052737 729971767 572266437 968804278 70282921 592645926 223524084 515965080 685440365 838621438 213236815 965934313 152524789 812536094 4356297 288231085 386678960 519019332 391861369 821510636 547575105 945320414 115186508 511947334 909462906 976801873 940933760 982740075 481968865 741843163 596929060 713650328 753783620 960654552 137649122 151512114 213514530 445991394 68687358 346995769 769957302 928405137 481329296 719412580 301307497 409789235 899650714 900279243 711114639 744168190 554922335 927277228 14252178 418220641 699361687 736100776 196110442 833574125 316508476 695697937 566348045 974399611 341598041 981201424 340002065 374029448 455700889 984952179 935755431 943076972 2908444 704527209 85748391 147597037 766009003 964320073 993834675 996015274 360067009 739421258 295897109 791872550 881574239 884600187 393069837 511151032 3831249 59365115 96130 372237194 329956184 569288926 123336917 151555575 946681370 988835510 95412332 862988923 57304670 568029812 39287552 108801052 91387313 910210367 611149839 901651879 408285706 853155089 781179418 849191305 227485049 266787103 277812385 372963935 615852926 883594608 534060185 901548270 801195217 808060786 506763109 671209888 355420703 655602653 148754399 368402278 412642594 934689690 946142669 958010694 540105905 832785344 695858117 807007771 835053535 910034103 246951814 749772333 628628680 900176762 268247372 977939666 985468932 997615342 265203891 823297113 174593181 251597927 750265732 764142928 24214925 697330501 177331787 775841416 569732099 616832589 884170990 909655347 524625758 585187758 313123783 388148510 168303799 172803938 929762173 996085216 801968859 998559182 883751122 981407949 547743865 637690185 485064442 942330247 998814482 998922976 412473355 649809262 219412332 792773939 628735984 867147794 923934825 925216510 325046703 881631642 852157649 866542373 668085520 729885433 240126319 396653448 153761047 245903949 121631842 277342977 96507774 226751447 380027156 723750658 613057925 753445802 721741560 889147952 320730612 908228360 751829736 822855303 654900449 880013311 458840292 835407845 774629584 803544342 147104988 360730921 670519017 806925466 507818444 678336281 438637883 489655679 312356313 828579130 831159887 905808560 9025282 761104999 452640092 683715133 88295852 549470553 275028846 374359905 227939305 980237491 819543068 850143628 759631226 911160054 15842941 838500274 4315734 282442406 823182154 939205680 354888927 926488236 365524232 955258398 825104688 894100082 746376299 750383849 893708797 960253813 194260246 827309595 458551022 639679491 83814860 127429009 34997707 488180615 528238209 853623422 164386839 291527232 496050367 883131912 328376504 715568022 406578703 879860849 547480101 972156586 802904620 895165875 867716378 939464060 902401756 942168643 988272248 991278896 157600744 989328617 416921531 707925951 674189070 847584099 670118296 815492287 597526575 812909989 54217949 433410097 325413143 948657724 522787529 654659982 247513896 848329268 689671864 763589883 808493366 927959838 840312271 853119705 585021750 743407139 653235651 699135832 746963801 888462918 129680495 209087490 50341273 767010312 42025816 652397659 473887452 976786537 654718106 728593659 110404096 265412248 339350900 455139685 408204964 468357235 663644437 782032773 411812408 828887465 52334893 981006375 943123297 978478587 50667060 743545744 39694680 149094404 487727883 953272718 22038565 841490599 589131987 852131291 131958243 601995945 303013765 383767407 124718075 293757681 725563587 941170665 54181870 911024138 628165212 734532497 723564093 773916815 854045874 892709782 919011762 921464399 581627826 641821911 307533423 968477561 34416079 949765641 895308715 966105709 110964462 298937639 270309461 655406109 82768328 409874960 999487452 999504160 530866705 751189211 96543356 716701333 162652880 210889123 697228487 834559270 936989825 972171364 235697068 568471609 620080386 934097017 830765153 918122287 342774691 810838733 190169877 956711408 669030447 886771570 184336482 976409021 887855816 934218903 311474913 320218437 154015810 641463634 131760268 663062630 836484642 954069030 322578903 433659158 217016531 654244459 175646466 867351986 601234127 910579482 468162026 906131977 996622086 999367873 123421581 801253023 784547740 916468741 118888147 420769259 890577131 931981527 652947821 939128818 356852442 987118775 779932050 838848386 522566614 958404317 612164567 835297505 200629125 588007186 279072071 406186453 462133875 790355919 926043085 984775640 653221298 880910544 798432496 908678367 537756064 792742276 141407937 527932942 150424946 254810377 434058900 785028632 731447863 758481533 366293954 755681641 808651932 846746068 600075431 765167823 436560305 817675384 713614714 926674790 445852773 468362707 191344604 961182453 407519136 843372671 824213155 899930439 865979437 930609142 804984651 846988020 940077187 984995192 643490028 714983788 832287738 991153323 23286487 298495060 20468300 838573854 998112910 999893546 750734302 758042076 623429178 718834440 942327998 996514375 789821578 826303014 415774228 547749430 893673849 929743436 852015286 978867741 441105308 624365368 243931373 331440053 305282499 329466212 164147954 961321269 684852968 905727910 307173410 992492584 107910667 147752813 571457308 753620552 689211469 966353999 725549211 839085423 966329352 977933881 807026607 824345027 215938490 283678471 2846416 138950413 63129672 306459031 668892669 768869927 913335141 956516508 972763271 989113283 791688949 868211360 182453735 869940772 983391675 986383867 458268636 516579592 31540394 957995197 58720029 504070369 643542888 864199751 179774742 853313321 494944970 500235003 974853456 995135748 442031085 805149984 385642273 729597956 264315157 268312327 803259036 855569851 374688782 873746356 612557444 702084238 981316556 989190226 19314351 32944767 354090300 922906314 131746850 731865045 198915803 387294941 651881875 734113734 818891648 963754631 748395836 982289598 338932978 699137130 693759741 849287144 859449506 934630133 162291209 741075815 949394792 962795103 323405939 793274609 681365453 837512388 618187050 864253397 356171045 657906360 846569407 876640817 791599200 925316825 109510781 488031134 31796978 58244811 909755452 911790015 903297087 936761915 747756965 964546163 86557060 312525575 966927788 992052339 370686826 462871852 5676529 486403105 226996655 671082109 571147089 733711591 337600553 540769305 167787917 768207921 228201600 256147605 218780271 412266885 368558024 627880342 115333360 947685148 945247822 996245313 18098329 762989412 490939723 753579966 241427592 985335572 182737666 727778954 597272989 741956952 249900677 639254804 993449316 997222809 114132981 853600734 252895239 332699260 632080138 817048631 436770250 482678577 632953385 790506961 395609105 600902792 134300784 880073271 754328705 974354790 406649048 710320083 64524170 375401688 485812861 774572527 727031903 941604303 995093506 998053471 151997426 244750943 546506845 962608961 586383680 919579942 970054248 981768432 222533981 681145962 74584749 94845832 737427174 830889498 335398755 700268367 481484281 643501206 770403906 825639033 426510423 566268755 573526492 632118086 863088146 959843920 563929928 825283707 698664173 964846598 601760491 718783296 854357643 918129455 377378129 932149381 571099383 599236883 139962826 248921448 831671920 958205425 925873891 994677927 432940625 611813554 499380780 511694812 155864791 845568249 416670268 866828197 913013506 956067990 521727254 550199159 307868125 700030470 454633229 655561110 559117132 971370840 339424681 851078861 69896608 963885833 364071436 862775177 807882279 811928461 707049082 875955454 796819937 878877218 520577788 558896872 884305049 905855068 657369455 751681087 795804865 940928895 756332564 826091974 524901563 600256591 279847535 336155578 260077335 920839751 621894513 737677818 678387927 744499112 121982805 162136361 175874223 943156201 379600068 404455423 817654756 897081843 161080269 664846644 162170377 208563172 439149543 551264785 793491833 870318640 666837622 675306146 259545415 515196765 124365793 374132940 865913400 982364530 850156026 928132931 859460363 930641464 191635970 404549771 994754533 997851727 668159164 947670935 279837695 375570468 558634175 629543664 212842872 373866894 808273714 989760979 988726461 992072970 516933899 889729020 138897887 364201843 21913810 497270349 982637225 997936324 902042185 979436985 867153702 972196455 424633778 664215102 253295247 661718764 245328650 560412761 690604494 799647759 248145265 393473723 118192863 852700398 132154014 832491865 798303996 895424777 445430179 926381632 191681115 575718435 305489345 384931158 385883005 583823897 646149601 984021549 928558310 952964860 491565749 633037760 228453489 998116897 979100796 996289936 153969785 309303623 996724236 996927292 575713668 600402529 242531076 820357794 312993488 715056490 820368356 837319681 101133069 315418919 383886313 759032194 718908648 916787841 355468510 845637261 458967175 623629532 418566427 778364955 975713558 982827994 397774413 504211234 281321062 944114116 809558428 883698525 112165845 702777855 675399867 767298518 410475182 796564956 38885071 318894341 956286107 973636563 215575654 990823495 523059271 762519477 413668436 764686458 846319631 906759833 419144094 885416162 785232719 859163225 822667982 860569980 211843036 212398493 71615032 388767469 652014533 717970404 718053077 898107028 625835404 862529800 663868244 860806284 943846999 949276792 622341707 887899072 444550342 645997001 263703989 503934522 625422195 673687077 550414217 766406451 824672479 919874019 762019867 863547641 367656815 566628570 935700854 942598422 350245833 661127800 474368843 802364792 162407368 367160131 187437113 190969551 41854843 676198274 50848745 987016476 46443539 854117912 552700414 963468279 399660959 999413558 860157892 952329958 120119288 803092451 679505603 732747196 643082213 936585240 275807349 358352613 36113925 607008320 23655225 404367042 717476645 996470644 964988812 967395799 426360447 623878720 199833702 482931356 551656347 924995040 679975782 882737913 357041729 430587730 906286337 970162631 978404921 986777078 644933582 735823792 149783095 966503669 371163080 439491546 51856559 788753435 138736592 391493076 418623682 686713501 658323096 691145962 506419963 541182704 987132233 997645400 326898787 899166348 615570085 818053553 230753050 584383833 642097498 739864474 661307658 958865073 146611776 620398855 687655720 693363778 592206754 654821358 396624278 882995741 38363362 801866281 11540582 712443068 87165212 968354374 133475440 770641998 494548143 688836668 962659588 966275671 745066677 797540668 209490336 441263809 609981695 871901647 521093154 897020166 349606257 998433845 590586367 898313488 193974362 513527077 168564344 263013296 46577695 975901199 714109978 883736937 590187324 825193262 192979897 965456343 485413215 836828110 550002116 653439116 9809750 206079927 680092363 735895750 130288383 958945315 653100645 907563150 402637727 804205916 137116837 368993039 141604880 542388256 711566504 764186347 328196273 714122702 829780295 923161260 805761675 825412738 594034053 610859936 45015258 49609265 52855574 309669877 350823261 477735617 693415874 746485470 461251640 779770703 111427614 561224339 112901259 736562376 571532040 689026551 978684336 989744458 81805440 393962120 71566590 111686625 799339085 845048792 285484020 466171594 927869048 971313117 990318492 993251120 621329439 980590138 108367092 482654676 745128351 786523795 503405144 573343940 307162828 606481822 784548907 802445918 948619517 968592367 405208140 944479564 486516598 556888883 101425646 786563045 804423122 895550814 39010849 112357193 864562471 962236471 741144596 975252089 492671183 685303730 647677214 895967681 761703926 801709370 393473269 691430672 629366963 859691275 236380913 520770674 851850155 886675879 630382160 995704090 162244526 477656978 927085141 981460225 121666210 227502024 152672528 719699805 347756332 561764466 762888407 822948781 136139165 511606796 493779123 860363428 533730773 756265499 32377776 555482333 629640119 843684636 831301780 970128643 161854173 388973422 353687184 440017503 214715447 521836773 917995074 979984018 365307439 619094494 825231722 952551809 87914828 792685797 972495789 993449704 594986949 920408248 269459784 591539611 537866423 667335553 789578113 792298233 598923016 763372330 323418310 868760611 528325920 928005238 682340024 779301099 180494815 387186195 291765562 427836233 909880006 988577743 231295535 691397606 564749772 765588802 248281282 304884708 594821003 662159590 631383816 770335591 18773961 360792437 647870538 828539293 571984249 934541065 725415502 952919027 761708797 775191520 812766237 965184275 215766276 893819933 531447515 987995276 61430388 692614566 258242648 640273889 985005774 995304120 696637766 906534223 132698461 361066669 688885022 855385330 545774863 645125748 993287508 997368961 620388326 824645178 929229057 985770802 615389510 875771590 448166590 723117375 515521903 820465378 155965607 971015647 87652222 313588915 107353846 484715008 219168470 627538489 337000786 684167323 144654402 674341808 396827679 905881341 810552722 984291888 450340566 644313671 840418129 994486273 703118925 943048841 948122047 982306405 115634686 855143838 408824963 975621397 676229981 892403201 288597189 472851745 36714181 240281853 707180009 983037495 923268083 971959683 49726827 160706537 782431414 892068723 118415507 412959854 402001850 761829364 37320706 232776716 812392297 903846879 538260516 703970561 346353514 740627684 738486068 748550661 282786443 298707809 754990509 954340066 87955543 450520846 768194489 921889661 84739896 783541864 62974776 841152309 613547357 811192780 679696676 840414612 563002978 802718883 457751445 944186081 328219148 723417909 103263221 426476254 42305322 584820088 440297083 803141675 76221769 416258693 626801786 678717134 725876671 940892646 849544259 989267130 958834616 965532837 802887345 898456259 868990062 952423538 67041313 251264626 745121405 777514035 67697673 403280162 515038090 939707330 802627672 827422382 764519996 936365031 544247839 625571163 488839277 874069528 325887403 594997601 73843748 736669790 815727493 972684624 849614981 975192046 900451595 978809071 259369962 299861544 682896921 839768613 299793360 492203136 216583423 910960678 146822535 205175248 523145408 545748650 96659171 768196881 449741473 732532871 138579848 670876410 296529363 985251903 629596757 762766706 36849879 106173307 793149716 992254033 590943085 891264285 889742453 966665329 547071143 889347987 335121185 368477423 365344310 897630391 308164398 450338109 230588813 519686745 918750303 973798145 750044796 756713126 262557846 342084264 555818943 946780085 709964095 986121331 257414586 625267060 88197647 246884293 63241396 501178977 196897056 938289885 408941323 423936791 498973198 830664252 833694000 986160716 702742940 977406788 353592175 467777563 599544968 912321518 846350062 985203002 767015655 782280355 994289352 995303168 620562674 763879505 890360134 997407623 84488534 683325248 894581116 922906288 174194658 574859404 199547888 359467077 193175589 473568084 151921052 261294795 858789357 896958342 560849783 590522212 499673222 734030102 371306878 477167426 570448322 890950489 301291335 425230726 690919065 707083792 659789845 896964067 462926279 562438678 310206543 383655283 448266574 507434285 406997878 440174950 990110659 995719318 521201725 595944034 545805590 681991002 237794141 760367511 837918477 877488571 374912861 987358526 257986107 726216006 231921391 964895053 162982265 164951136 903718123 981804832 407879461 954038081 982499488 993127322 491000066 623610526 752127396 917459520 436477766 951536678 171709492 641617752 409039009 868698223 527934686 825716524 816673166 830399201 250794815 610505463 365289710 617370696 498238323 703357745 795024598 921641814 763297474 949315190 538261506 979132225 870541546 935071061 754044259 838397982 888944244 916321045 505526610 834848626 653200100 923382289 137693229 696198234 224876546 356421535 802777692 914098172 522589446 638713051 105199971 858319057 466865315 737748121 938754266 968890410 290992467 855762912 485943314 715472780 977194567 981562039 485306953 706752837 6387627 920171608 926000407 994582460 345334868 778185492 293350404 358691089 658994926 889540572 736373254 749473669 812759112 829989217 105431941 814282281 881230835 979762035 271120938 836201492 906949614 954308049 13301006 665254580 216275995 601551492 868064312 998669197 55206740 906779142 955443879 993118860 152293765 843683412 133929803 980127434 917740173 981641069 908253140 935951671 374980780 969279328 18229285 362139648 939820017 958051461 41172600 968520017 601292044 629734565 413064765 998713996 895949929 988027961 860252959 975226344 612119585 865169290 788934003 882152908 899822124 944660750 357941481 706403804 83308723 87661998 430677292 530668791 769526260 991609347 284373791 502400569 308269663 772027424 227049644 970772621 686195607 803287279 978365191 978594512 75978928 480401584 376095758 381884469 98261373 834664942 77632545 552065673 607307029 799631433 946745473 980693214 603817411 759769666 169493860 913757740 934196519 981088737 843389660 997406570 674818369 956700107 966769082 998372786 441690564 657285941 399314652 622412180 965558667 993845350 399813600 700774827 441364488 442459461 154583790 754549786 488047736 880261785 963106916 983737234 932333466 945864786 720863583 794415055 402821399 462300086 98470386 427361467 558571634 807471719 790544400 872999335 450040277 947891589 951850325 978894882 943880103 948788908 484584798 569902037 213326727 925799404 664906185 746350624 198216396 752378724 479668220 750550808 43975877 376378642 433615737 699958242 497821422 801212468 777761017 939116175 734384083 835619148 505257902 677908720 986757368 993230655 909438152 915202353 168846985 209397667 71154763 344159183 798224939 876619505 26247167 745649996 683059958 972919900 260023994 396599130 806604394 824819907 793200183 798596920 139636270 816081596 119082498 941794539 852011267 906653947 247811943 789144034 58960385 698252655 542008078 712606986 960642466 981533744 652860140 759396589 917583790 950522919 816340660 974130161 364782751 811308165 999610538 999660400 416012728 638460895 465757993 673867502 725117383 813763263 201851070 427858536 789818844 982959370 897568319 962142760 724371309 811491380 904466757 933530105 570519846 586266366 816359481 916435211 871515204 920378278 36755092 128583406 228577756 874018603 779827877 826157398 68742883 507207490 167098979 212597414 508172137 974731519 937627726 989215107 617813716 911986116 308666206 756942886 103961326 608896946 171511960 941479057 743535333 840976494 65179709 769475161 325996496 638261298 157504624 792725381 401328719 733648379 262305153 375561596 810335179 883286106 609365097 866382763 657653161 721107585 388452207 977713831 676206729 717223508 474365952 537903552 957254113 964184937 89344667 789221715 825611890 828554938 354940318 648431998 639378693 749625925 326863510 531796086 4878304 161362672 669411841 733253621 908959154 994307587 528777015 570579672 688568665 708431890 419337662 798021899 624550106 853794558 843890944 906752647 154348355 484286441 183684007 269994922 408217601 895135689 557882155 683689767 661068003 922532530 592784614 791401270 778606446 963815313 128825461 167141529 227875201 748580955 758339548 866482809 695231307 802778261 347137327 358953965 896719797 970545255 464443776 724729808 214324675 797743267 277996849 728393433 534554874 629649231 659210708 745403321 87630343 643418279 635762441 960158629 107280579 841031463 918262477 988438489 717254863 848052737 612204282 920869288 435110112 443390584 40415039 239165370 998321815 999977815 643992238 666264880 590249507 596486176 958248394 995551947 965124987 965631474 704753008 925236777 304258846 653475752 146995092 638939470 333580158 411950991 108177217 573429921 202597217 518227633 670189053 747898920 493521118 680748739 298002999 827023877 890831368 994734906 435536005 701379084 730075317 884020801 93458824 707024080 984754757 999949145 880877557 981251466 574862639 612804862 955550776 962379583 340067317 969039821 937329087 979092354 542909676 865881908 120508596 452245731 728862252 882249036 827608435 891405758 715156386 913108481 209973016 218509059 796207454 890967089 784859170 811791454 488766003 670268728 279081636 515575037 63520448 237317146 533004818 926409744 42115425 872182541 516415044 871684185 873534178 892196152 648257563 994198685 644356133 911063670 940018492 943754295 886357681 999517671 178887450 402188280 867123892 927373362 224876168 755835582 928803983 975873949 411646103 832231141 37212905 164408022 182064347 910222249 471003416 584278422 119687981 854203971 478168125 865655786 830692758 830874781 720712156 991491648 64100598 810741352 812272154 888641174 531274919 545058250 242335814 530428846 991965403 995203063 696120964 820581012 1266450 769436100 297101132 684652409 120785328 275879452 175393816 678367873 305996484 805387068 156391370 568973118 550571575 964781821 234617379 715779623 601628242 716840261 369134579 667397527 632140932 734323074 226649024 513265220 532008515 563323523 673662334 901131235 425969928 543219337 747094658 929568228 984035037 992058343 960058280 991422045 903927473 956862079 736391856 752628048 241469446 499624288 715245863 977414440 873033407 947463474 824817603 974560267 340881973 671195111 27401767 767587106 635570843 773372699 794425601 889895542 839143593 880167748 868284783 939930305 495450481 662437792 874886537 962452799 407209894 664596549 861593827 983144352 678620494 764290704 444523048 705797912 190451476 292682991 779784643 876478801 961738171 978342211 516714206 899640926 1529870 147771120 668046898 952380684 333578551 541050075 998453658 999688196 615883535 702162335 758319092 800111180 971472559 996390144 810654066 924212380 466151049 685833593 350499252 884108304 904307950 947550691 152252218 168577322 556690006 694126186 966900346 985128630 119465199 829056759 190483684 449876614 382318647 531608095 92089070 690658546 182627093 849133809 744007526 890941532 636141794 702856994 716025900 764198455 957816917 991538591 533692591 770454807 135304146 138886171 639480565 683942429 298095834 459195640 165483255 308206985 631540882 688203403 327124809 777568345 316603440 492402164 353438172 431492956 26247880 862194491 752660200 880568414 611914788 633574865 194560229 276908716 362688743 472613985 202210707 643197240 194874173 350223736 943562663 998984303 758893984 839220609 277120427 845309271 618245962 740198269 747875388 771417561 912595458 940998924 629635724 814574156 810200208 978851028 270815691 970185245 817850540 869539898 566469817 647236345 399226875 628484965 222703787 452046484 252691218 704957448 322369341 569914752 35451021 58420226 628697860 768696732 157362309 187245457 862615133 890115757 161861620 716231059 557927583 627906490 933855792 953023919 422069225 911011706 90751711 324315043 907154622 908259596 844086201 989570156 532744347 932634939 318448721 826652162 329870147 587575787 754162411 949139309 736583528 923784457 697217993 817444178 655347638 846800407 353747130 514895416 757613032 926645365 314733179 540270635 789536116 845301493 246377120 348071593 145887697 422645684 739871379 976298863 64556565 785129155 253321283 851483494 102107269 393707928 846849028 984420900 637920753 742294272 266395729 306822606 699063858 872878639 382705791 497428358 977619835 979755969 389957319 485310881 834557075 841515238 3068605 27810682 560485087 985474404 71137662 924762620 42369849 635574951 218110773 430202130 860714370 978403494 922781204 936136518 551532286 819107375 744329219 996169459 663033232 698302111 975421004 997704780 25774285 31655800 732506931 847344037 293844926 528316856 207440361 525928945 3819508 325921604 771412698 966965880 947228965 982859436 171548787 617983756 403867501 717936370 884732531 897466151 497337156 568801310 873660910 998333252 439277055 946103455 987258827 993180936 485180369 693361520 712539770 754783336 876398630 931844454 833615006 834082104 451420581 533126289 428761816 806463963 901267912 982901936 500779049 624658950 220899557 928732478 830616572 987333319 976573478 998654757 960058035 960652529 20724344 223386380 524997458 745321013 538733611 549868146 208809282 474534710 355574951 911153999 466292907 800524926 860152247 975655437 275235173 636250976 57225800 186545316 681364384 902653622 413068160 912166081 338190412 917804304 604565541 650431063 281839096 759384003 212596906 528242518 188106438 855930146 865319436 867462865 460958260 949968031 933020783 957674325 462122901 842575421 137233889 383324631 152074934 417380676 914973321 956664188 878146479 888643791 244900820 453587707 582043128 806280856 456843031 934242219 380175714 553602450 792080712 890209373 412235340 614801255 805831840 896349800 210889600 712888010 658588207 974357231 946922094 956328055 745326595 847933529 585420857 862038698 972480130 997108924 851500501 979315907 289463279 865086227 548074907 867404043 94758329 101012601 328758301 444538725 336829640 546285634 624075419 747214577 461648829 677107426 333276699 336532458 781017396 939881669 314668215 962894641 125390922 835669337 67211214 411645532 314613806 724058711 377820832 892975136 958923159 965419137 298980317 599366883 374087614 392271077 49763918 408924935 927609733 959480633 931246948 983225527 71235471 441107349 616324916 943494642 276637798 551253936 952859804 991593969 880343912 994032677 274636305 952582101 453425631 685864587 15064527 771971147 919587533 963426310 767483953 952144807 2454661 332495543 768006274 849435073 101756786 745969279 747492297 872339574 764051914 858696305 877570954 954598839 96769781 780759011 895748983 948277169 194541236 389241551 789036797 824689943 322340288 334826050 481010007 732664939 108056135 702011751 796530924 986304122 584498711 875322612 978491911 997333650 881370549 998820037 872622017 979941840 50911431 416736045 767669714 773834942 199485824 977076594 874250480 942757971 280971408 777007259 194034625 415299152 105379640 749334799 52466982 182845860 597117773 914313753 538665116 568880904 89861093 853228018 955780310 955917139 200145523 717310614 643434107 938858823 691145984 946237175 371574003 518136534 818295060 956106770 365113824 442478203 43357262 593185211 372554120 500653303 151951056 208539586 890599302 893596278 690564008 854929561 256894991 471509006 701383199 946425763 359429671 428982754 20940471 191691412 770047717 959238910 184221440 419819350 188179397 748542138 911250548 922559593 609377560 626216241 292174148 328241830 924847276 974349168 731984288 740439934 235431091 774636262 514053321 875738098 382517024 860188370 913274659 994880460 171573661 447106809 689029565 906806808 132587739 636860279 591132730 646734279 888175640 960899613 346410982 370178394 81167065 91425192 243221166 839178821 365566684 648685384 463047202 771156353 230465011 539596942 258310023 559730382 210609742 995838739 286586305 796460530 917637465 942722718 777765416 801209560 702516633 907763335 925519978 971947759 396577427 478692977 531969881 626675345 581567862 754224088 820755318 903994438 290745854 817909513 573258548 948821351 991391732 995017384 240488845 415736505 201033957 628812739 48190731 712497202 685038528 752595172 110193631 119639564 961333098 983513444 870632570 881258494 887139068 965451072 415196715 723762010 773269240 828285610 446963806 770645745 541853767 691750402 577246623 814224569 136098046 615847932 579478312 967605510 184567018 548463548 254032018 601095285 463268478 472107399 367005865 579798068 689507953 926753039 749671122 832277756 168260192 712319261 858260517 885327492 230328674 451775427 177073280 651181782 977391771 993006760 445780286 490783817 828617273 895528729 251503588 380935902 518731425 621690746 968519590 998651120 969017105 994671554 219810183 720820885 276403300 771665524 538179891 816946436 114525458 200794429 397035128 933891808 344565015 507920585 84979199 872494542 48346614 559186973 284253363 299954782 697373803 977165968 744993851 989343368 52923043 913981164 131095448 307053313 557100914 767719661 771037610 955889141 42735726 785454556 450586048 988609173 869864441 990771389 512864648 840561259 185723607 834199996 450487857 537021888 447480456 984966999 815371230 889250604 216379623 863980450 232451086 279114343 437508120 817076682 369904942 565605457 972871415 992791448 224326822 684020227 805506738 814167179 749180443 855571555 991003559 994893388 181300636 909276573 45886931 71262505 32795469 748567420 47311663 917129848 682849657 723893313 994651772 999864043 902425763 969715069 47958812 839564621 310114308 743513686 815542217 847613411 91089360 631477407 825150170 972189571 936415791 986110736 932822454 972884968 50252973 409619187 278445566 691847696 751895162 856076044 732862669 888852692 153089586 302212261 259311409 349125204 220120933 582532160 443048479 821421644 728499262 893973449 107946255 988904821 640804822 712324498 244851728 848892619 294181886 494027404 39711828 683600940 682989579 775330082 645322819 887856788 330536437 615742971 677788483 854823575 771154231 956554920 188613668 500542684 674223148 719876459 610536055 859689129 942474162 966966733 841961381 931351259 72533314 618540305 797944679 806260695 653136164 744604824 802751482 874258659 285617466 625479491 80693053 708450721 696903766 722892607 168895304 185170890 996602214 997442753 576002439 952414495 974758463 995123899 820894370 918552975 868812796 921530258 97475748 180067439 288966180 422577662 918812264 946800482 396716841 400854709 727532945 761346402 323807168 952720319 489391872 809118623 481250910 483533466 951364079 987312829 325462728 535527499 978939607 982233746 709011399 971190669 727688021 764777654 488734351 824297453 536968976 703163835 289010669 392194503 93432193 752410846 640786976 660926334 965479927 993911189 209407045 291807128 496461033 620504349 698484362 900195053 783937319 851837862 141085024 498355216 142689082 853609933 284398554 342894380 82739057 940448861 970488620 980051871 685681672 697912923 78342358 529158497 492789722 964210686 25783223 703528477 717291524 787921043 393092090 949580462 363606781 869399716 330992791 457335279 96612310 437524695 167430390 194792243 345521096 933557932 544408009 613852132 915653285 943620173 861381254 869349943 265917932 319799839 77955376 997490530 469327257 723225558 380067591 849819407 915336993 991533031 364737230 549495028 453495328 618216679 141154541 591617788 543278098 581401958 988726766 996665790 261599724 593700114 351473872 984459365 715855021 873819686 654837762 938209909 872655727 918709674 296347694 529229104 574661359 608211286 139058338 309402256 486063391 577255464 293308096 780894734 357991559 385013526 471417827 591674987 740849766 774278349 236187025 676077195 229290065 856593936 673189827 989202891 28076579 665765383 380239844 625213282 716385138 958869248 701968714 949924157 774466833 780324709 104973448 918753509 514628082 592167513 582756466 838985354 558764977 784500395 559629395 758372525 222087064 674867794 961861382 978878709 440841220 651114566 323889615 430983384 264239453 637307177 545483568 592616108 213373090 440978159 608158108 999501154 616194575 739672091 402010101 597880867 830553578 863556825 973405845 994603322 525041267 866774012 519928954 847031424 316207465 812740883 225491500 447417397 58350686 999000132 965508560 979911580 743511821 822208191 51272014 631509562 553798733 592250541 538997476 958662883 445205008 492776643 150094415 886902279 800366004 903255230 242314852 855820817 104743931 598463638 382210696 927831617 178568199 608655768 288552135 949402464 883446787 912603200 853641550 982656767 968492321 987187635 412066268 900420354 212276094 458702477 255279490 951766117 901170048 933132179 758043890 865485536 624745025 856114319 106756959 973726405 937395216 953710576 608023023 921324292 611065538 934882776 124914487 569851906 121020990 152828873 314712747 806537805 35902297 989339404 370384385 954263722 25520997 706996819 259354955 491042998 916696311 944744891 914222031 929407864 528708212 929410724 455874795 563615914 564874690 885088824 644794924 845175531 89165382 295875352 177329567 630647725 404883955 469121045 848302553 974436528 648713363 881986731 708029073 975403010 682367806 958587637 552267324 988036983 473019168 882665839 900919291 959814564 797636333 868995215 411806499 914475855 393700944 517409971 868507598 994637970 123107584 137651846 870841213 961460519 461558496 577272267 990695759 992301666 128680543 339637852 347346380 407686026 739096179 865507081 560650894 599209526 178815313 756197216 521497902 786442729 112541858 492788879 202611475 868233528 614326890 690722198 879714212 929875010 736930765 891254374 258219045 897394753 625445053 635650579 466877184 645147695 740964678 775614382 694547634 762383242 438828636 906463648 862875357 965347026 691322737 902265410 274461143 945313623 648944222 784373307 546006348 966986509 378300647 640403647 807238766 945082872 261938399 648930299 759077143 930072266 175329480 998081657 387681564 432722306 982286161 995245542 817679078 913441724 670996463 945653075 537183708 677545488 835951766 925412743 378621783 661924854 221830182 720983786 28268476 167472096 478257528 892532146 438594507 608500301 779624135 911624391 373478472 664815403 26708278 57571797 811900771 824964831 868432804 993784623 20624750 412890362 507590122 654725363 97650928 99491858 109412241 775920430 670163368 882172795 377601824 653067460 5014060 410704441 859134170 886185830 990269203 998626951 409782620 676532349 733747543 910898373 479863919 857918592 729285055 869772057 136002257 904197269 234449048 924192378 811105529 862051189 165914817 552950216 506131022 963404681 576771701 926880118 437828050 513266897 121593934 126728248 679385660 991200922 375090103 529743179 993920851 999281284 930043950 993191874 58388094 465444557 63247713 534018302 282790375 781694888 863608989 988765520 704975259 989634311 59247126 217993269 55541333 480341786 470728006 760774209 50540028 706238532 703879177 970115687 784508999 881037027 629035203 967696347 141083138 931014309 76524239 382000264 311632128 746945446 948364286 985585652 126926435 221581474 118196984 992748395 851870605 971033671 539400938 856068299 849463508 870172916 21802063 941250790 48416182 817648062 40342744 405475059 386675860 716560062 514801758 596322041 257496217 894973439 438925220 485985955 638247 382840049 307147620 375206080 791268173 896976627 252727311 302619641 752639843 907814930 380685065 782481120 447855424 812207596 190514963 420534335 964773089 975298135 421603786 585926610 355726516 693408377 210249807 583702702 822844661 904308771 512737093 856816136 354592410 380480151 728395978 849076667 601456301 776927383 595682515 744521148 974157838 976193419 300935714 624125423 147642621 771858145 212614666 317792539 770656494 965382353 491415456 816269580 700881682 741425693 769065797 798050192 616820602 925121242 176722655 936595731 597300686 691547979 766318575 863049344 74843664 309646275 786142398 944603042 944388319 971036246 836183127 898164043 170440606 423930838 373189373 852801804 337098460 870559167 298522257 355588632 232888368 394195112 319416815 419009253 89440892 444907043 91475440 677698108 623660028 950407881 641759500 851052403 719246904 929342923 900479124 983415054 161350790 959976578 462166003 714987971 656251555 702912133 432948636 909142364 79466808 134085088 991613145 999504751 833953533 862536104 640678626 842607380 610991474 824972764 92603684 718262083 285715927 734781215 891742702 946414627 971256766 985195614 884433965 947591048 310647586 820623140 838351551 947466029 111938393 242356027 749646326 963562811 28446959 60847021 605848006 778937431 230159584 322053529 6133828 940297934 31904884 952687605 951460004 988242954 703228768 823751920 193067797 747265305 748329604 762540387 766268023 948679054 703757955 929186037 370561776 760754526 356044564 954050242 104338253 969446017 486201882 777457420 689961590 732813401 484207989 740108210 572753567 652792555 302057102 478437643 22869989 387751851 518396419 582992884 611902529 664499091 357250005 854538566 691275903 714777774 798088694 978229501 894177959 957879677 814698867 899453026 987073134 999493561 872016761 939186969 155829581 882443361 497213776 716013789 347781321 364840350 215288489 785858437 771403219 951183464 815087157 896053643 161028773 216605598 446682567 554366364 905786946 967809827 898160039 966958765 274886715 309475069 162238471 467170461 259423666 745053817 956035348 958914649 546438476 749337420 962090988 988775344 378040725 502816313 990959035 995026269 333251787 406804118 120779485 716086896 190138066 791418400 134681663 465290235 598176443 949728002 187197605 362421381 874037902 924258142 907666500 936329377 381514141 907085365 872868491 917638662 309958155 559384790 404925785 698437843 776932628 874505769 869135686 893822696 502701127 762196599 425232959 697804952 800778157 908651156 321484477 578509464 290528827 536160972 364273881 716201545 243497867 564393808 754610011 905510054 51965619 238335874 339931113 548102498 73591503 320911131 437186697 462832943 770235977 925909894 610962165 676602420 354430055 446094827 618740062 955596154 453713058 862994040 572318683 895497170 156560737 424737098 235380210 983778623 987936206 992951618 180216335 521659855 693621949 701095700 456802938 833417599 460357925 609693720 897168892 955131777 597926337 812390361 972877864 989060916 141941208 992147820 948342284 976386510 952233658 969356706 395410466 772890054 590108030 593175338 807493231 887499166 550681590 908603824 473337373 753060728 136904125 856160667 115658601 285016777 719985522 942490616 920837544 926464884 291147375 727194033 72497295 778034606 692598690 737276148 981852252 996778181 228074429 940441133 675288771 842990579 243479455 354376969 634041662 892587023 842784880 995197870 859113661 890153500 361829247 627911839 852601033 960667582 101212141 894451080 818291492 832760792 862061615 894298720 806422542 989327262 55691927 75052051 9190491 666487949 159544749 514029982 773082522 882184723 154213961 642047469 38799716 876532010 397816281 978960427 320605284 395090293 790787506 912617489 810430902 879524716 714796110 935026262 749914632 925264685 905480028 957115637 403834717 435777329 290145478 744605547 537561015 926285845 475982714 597224219 476106634 540042889 485319562 974307297 482943695 536480200 819843755 877195467 618462818 680234530 526807122 706981018 310258676 383996272 697916725 862477488 447256503 788246584 328578102 376500661 509403006 997949273 810643363 870582225 252814070 785986734 348280205 588238059 474771050 984323575 359388004 410115723 538078105 630470462 576454547 829085299 492673471 624879440 749732163 947205156 66786512 825049740 984632826 992435169 870960742 952327273 991237245 991853920 107885244 662184125 866320220 904026535 443822439 627887008 643321860 861881269 327756046 568616663 949793079 963697306 385693707 657659039 193733274 844133415 169705440 471880220 121172616 893600740 921129297 973755176 108516724 496832042 986909840 991139710 443015673 610718324 223573066 736271172 790149960 948056750 159771279 606539273 71560816 111846258 771064430 960657428 632178419 873606599 365381155 668801397 654813224 920485824 917604857 944817593 661975400 808706995 155716834 956773992 603654762 897315201 610772590 649476333 351278389 748987626 959822342 964931571 47519505 704320922 728102514 868074090 675711711 896188413 231844433 953164797 124747356 537070446 504104797 900770045 434420540 475883839 953051217 963712251 180667888 229397605 663917607 736336536 302084043 402386001 287621756 883298968 867890294 946903587 213264356 609223390 979233305 991023325 745941316 808863075 831005824 866655993 494734068 811626468 171627596 331026936 582974997 782468032 589258410 646280299 210482387 631230284 772653948 903868965 726711049 912332567 410531953 608611482 462914091 578669288 944055106 948681312 560897168 635831786 692075990 752547596 502881619 891966541 682482913 762421194 259059262 270247910 498292192 910552018 134552291 358223274 395250536 687208608 355052868 810021936 710737302 780906067 577104504 815435812 327898686 632825120 691413662 902068601 606011257 740666386 187984923 762027607 267865192 878134635 106474218 890348103 376274209 588804346 631464314 683862635 140865034 707167718 506005497 835490484 253638397 956052265 688148320 902235205 530697299 726858630 402721656 618617386 390533803 554104523 452524631 720957616 280460384 453998722 4498844 710412747 956569439 960102548 353733964 478562958 921379703 935413203 729734497 765615943 229438278 751849659 904864158 991440874 47065786 326535469 571140745 976202976 113073188 918913917 237849097 985842191 25061817 487610026 862642100 900868357 361883888 709551608 599223888 716936686 822686340 875952239 76369532 743234206 746577492 985033711 144048853 336386355 578235115 859349816 327218994 996921597 631202788 808883306 359088587 428860283 15593126 851170323 710059585 958835041 953010905 989301356 932071657 975560111 675804263 936684494 433649105 677530249 583501365 771605490 21431149 583673288 863259476 886065971 876821464 970444698 216139166 398634031 381459844 654695130 542267936 827153772 223086964 338688551 726696683 915383621 399090996 725901444 341104654 912921480 562234964 636248921 724529514 920643404 685090981 848437613 613958045 946882316 717913005 847411705 698730739 811930287 288934996 332760252 97715294 230378319 444938079 780499148 409781308 833033018 928899555 952148988 454640894 744477166 391598079 755836941 701757260 776321291 514856081 627371453 113657144 399583636 98283592 760521092 203505737 342815518 686073608 770571177 178297866 591179352 894058987 926574917 372568291 982048924 313770 712343099 275773539 492567550 853030760 927055793 459442940 998725934 173636701 786474148 723208682 774347078 969804945 974752781 347759421 594232942 849613672 980611961 600161109 671914260 167698239 572138715 145524219 719350229 553293768 850480218 103563561 237306838 676874473 916122403 664912377 724638992 97169484 237439472 687046518 702784582 613428908 622724872 318409448 662589501 841147376 962780255 877502835 932894009 349057585 443481654 572765089 635797815 86540736 743798922 171879561 616725176 268538052 537517788 61649476 916440850 334659191 953544751 838569398 888570262 781329365 813842448 171217924 879098751 320917948 694100456 887064552 975201933 242112070 776647036 172242190 901165206 51961646 682000105 555483049 771753154 592408271 810347283 542134377 826303990 241148138 495732232 904188914 970537272 837014916 855829244 415973915 761540244 987721268 998502426 292054520 904618407 798552533 943750936 334662021 337688642 387917301 417537272 328198669 879899671 947539809 955941500 897903060 934142596 866417352 869894381 243858297 424553028 475255902 785049603 713803525 943698185 401788988 634626543 568787358 908106750 98658356 995904186 766575903 860200666 242563694 767755827 493760672 873189898 291896225 754698919 418684157 514855855 357266616 775396244 262552430 636970265 137782815 330295728 425507146 695230869 647344101 962075136 916255898 999039970 450363241 453875314 577786013 617607516 302002931 968116359 29740982 535191026 618607095 894067384 289347899 467837253 776020458 864771232 363169301 414798311 548841219 986343683 408135329 504640295 723191522 911390319 192948108 607208187 504200944 751029280 126447586 734205359 858529451 915305807 757782999 777180128 891892006 948845452 550284527 924788008 205049274 974823855 966050764 983998835 577508586 834680369 761329209 878881958 321716525 759332971 728611630 996707090 806280120 841353090 793768833 939090614 966967811 970867002 264427301 884214372 602610153 794176784 674604068 953639610 935332939 959180711 461320731 721909524 207960827 239332424 365633715 447517636 804003818 822864906 37830048 667045265 639152148 860219992 513076622 546365502 645692539 657727235 20438001 777153750 921367186 961348028 598197563 842203848 446157988 739585160 540189679 549225454 58823921 814557550 275734461 967347162 372007813 750438116 402862212 669524360 996863120 998747223 858003088 958962810 539997573 744063133 835687598 973734669 100259865 838708870 302764635 800709800 87270773 113308553 428743492 586489742 851261751 918741496 413620737 831979990 176841757 860655413 839308275 906234145 324978459 548033306 316051798 709944108 888290726 924427644 504690599 581600730 171340365 838931946 562125977 906310508 904776682 941131153 494565098 502752103 185277523 206264985 48850379 371432457 217041929 325230935 720361257 881407335 330833667 374250998 424295230 529593835 646096082 691384686 827821406 904595419 398472874 422628360 92841532 923227884 825065960 922225962 129335192 573484476 743516727 925338673 96201916 551999334 673250850 998515062 439613356 923067160 407346305 826780473 33087332 273728227 843263989 937950841 492295602 711516167 929222539 985427808 632088273 876963055 378902173 621143590 779531565 863514750 226755918 319782268 117615898 382065947 747505077 882092628 307880037 526729513 584732317 831507150 585712445 770092983 535377630 804790843 977016840 978812065 501519767 820031132 786752484 910190805 276569589 841529653 52143318 941058535 208875796 259388631 475534717 733031159 348021377 792127549 721828519 992196561 60259796 628326520 223482800 566953707 663583629 819172659 616257717 824458272 122861887 883529413 243902898 643927342 739221291 875134905 700656616 725459277 4528006 384637095 658994783 975905916 632175438 710986403 752232365 930837158 271286258 483093736 748296789 920840170 297667384 300835713 485115811 951988261 591949233 754146994 826254348 843911472 206828300 474126455 763572988 873583308 800800349 861121912 674571723 809078164 320942940 727963390 109304290 538436048 801312645 969508809 791345266 837477668 424912633 771822033 541728036 562920450 2288986 556366616 321383465 412831831 646438754 802070096 399924853 820843945 359106033 753240260 330453464 594067347 989034059 993639283 500836667 810502750 887347997 965616128 180616070 255079437 447082913 973632217 71700284 458380526 489368808 950611692 157568836 872634479 367644658 719701967 433085865 504030149 140439410 233693672 122069307 471355011 788347657 841829371 300804886 755803545 544353482 805191746 859401070 972046071 138157822 599133104 295094727 611170319 678448363 793328685 309233208 574903738 267540053 325254617 50932651 961365925 738620490 784624105 451158417 691519603 361160018 363631269 401690981 502993693 973379444 976521179 356362689 755852494 938952490 976546704 959322591 992107492 110924863 674626315 910513545 935127255 430318485 982881504 675992707 776746834 615668174 861422418 604111651 964823374 662524315 949593313 108261938 759605739 117469999 942750806 998766041 999123463 102689273 703612223 323084157 926818436 286381401 693886915 396488151 791442371 690524473 925176575 407925827 623081642 537077756 854523609 390138849 845952385 827147749 969088164 402746060 444147481 662723619 723633703 447368715 583122687 274186604 394713310 189637779 931742987 351021413 514223808 575267972 781209432 88144409 978330715 265826190 470005990 134201330 536436418 185461798 949778030 776751858 893884371 551534523 636012693 779822691 797431502 979511479 995099064 476095649 606764525 27657159 824211222 924617215 942775737 805088422 902910676 652714209 776668219 773324643 922286009 205591066 800616015 292115222 435868249 233505402 263208133 986840665 997598875 256260520 858777850 562178128 789109602 429736062 902519319 405085867 428348914 408709558 890638716 720064207 988126315 483623231 718573016 914255094 915688097 283828990 932435062 280058676 873237214 264905631 383370757 206128794 457727536 617264768 933056392 580891679 656069962 90921559 904953655 861060900 892193095 390957679 900007706 52001788 585286077 275147103 817620423 586743498 720509937 655619682 814834318 926999812 996625631 107490174 700060940 768881162 982256167 887975776 888475070 284841902 599477995 123340311 403440024 14700126 755268586 54719113 711094526 938471919 983268737 233773278 952634892 239907258 881745066 405059933 894400044 910715576 956800475 488407522 807111233 819872984 993320324 507477282 783361730 888864928 960765411 71291777 72894559 182039106 521780429 629714618 963899783 334953148 758044062 325678844 897594757 134347252 554140070 444879806 641090759 909051968 914542253 204582798 759933802 595014870 649463390 78177386 838242227 990388403 991842167 194818761 437134449 101834679 399226322 34898702 781072802 868368060 926960471 28753486 631147516 999240141 999333946 741576567 779393744 44736709 922867229 31478513 366835606 103474872 535571123 889702627 967140457 186028274 790312212 783765778 960803900 575890391 700481245 839647794 966106020 42819590 951203637 522753909 986599662 50008641 244320575 430446882 609389527 222110191 493402340 130937842 408750451 83640847 720562463 546654990 630067366 455874321 629801837 259142356 429996921 209949314 405512487 111479294 642519134 855954794 946275266 400826016 411323254 630592592 999978441 281435984 309981597 448223871 633358323 491651773 775437268 587067486 950049431 816073889 953532133 309107336 701420933 160152408 705890769 391585621 998303235 792631664 918249760 116842792 423488823 87700237 949132180 990964270 995681583 773335011 868733963 90414808 140636964 708230547 952183826 195540761 328045961 965032955 966428307 658573664 914818371 33727235 255653988 720436772 979005503 229909429 433047547 147457872 722056133 101428722 308100876 133550057 535415067 103425889 221726127 487013988 996169782 590950062 993386840 201018084 479175646 286727869 985525766 996823735 998178596 114896096 664579728 644745667 787252792 105454563 805030701 675956573 783669728 542589486 711802327 65552331 801506588 847278187 940475141 806846363 991334838 969180781 994991232 306469919 647526820 534072275 778084182 975979336 991547091 845557902 903655293 707868016 944374062 324078441 839918462 225816998 385372466 757259048 801859649 884031990 977246414 814507203 953448172 668921533 900559117 464583112 724243868 853752175 899825383 634657747 895900814 280180459 410209517 748424883 812883585 203730207 255482413 130626613 211288852 378434470 814701309 591973084 786736893 405273954 825334350 24339459 877934157 296041795 972052148 719067591 933302170 930195715 992019901 695938049 871269022 79087811 234489564 421905152 927951038 329508500 431609717 476850073 972692655 295548979 688773363 798653522 825376020 535855212 539764347 843467776 882082994 849549160 884555944 824377383 834973841 68965936 588708878 299454810 410023846 37700808 988051633 533256707 837441730 548047631 730318129 955400953 969420303 792583368 890405166 818605744 965058910 346620390 619782321 311451211 878376631 386870189 399006728 309445690 779394977 371192471 558481946 994477203 998302300 649954360 848823033 579939716 720716940 456974942 873943509 544504969 951346954 684233006 997050721 481823932 780787854 48949185 882307836 110444290 629398274 747995353 775900805 142440275 350489142 47992902 202074074 832230192 955788912 145215298 658922255 429706094 818151997 194270223 330462960 34139713 724273734 769575884 790160663 550278995 988082256 258887452 701103332 248326527 264368942 579344148 729024653 479239817 539715516 596521300 731404483 476307585 646185290 479835463 497084887 332653366 784446813 632988315 651216446 563453201 690039320 266991930 715453494 434004938 751026604 156371162 865618038 802620013 862211033 636184632 999438436 531412306 532653897 84147801 872375976 688846506 980814281 699935123 713396532 196407437 286719287 352584097 911783547 284558321 590734171 740369598 968626868 793499615 934542415 694279351 877940335 194656784 391449490 189119318 702634891 756785063 998922733 919944202 971395992 637951135 994888461 526358662 673360790 444588391 950956892 187080619 955336781 6906980 450790165 813578223 912701778 888773610 968938003 761017448 964691203 329586441 798114244 756616180 957429971 712058194 845781348 196900256 864503401 422351456 583842611 981874813 999624792 399369788 741961236 610533196 747772959 652367997 848602759 947425788 962206244 108788549 952632706 357796161 937729976 401230159 646301428 62410717 854217503 729587465 969578023 985387729 998026964 309205072 876565695 426847216 600110577 666140713 769599987 583202104 875090428 336090762 938972563 525089056 624020805 549295527 656713871 70189443 361702899 609306325 627474822 818342792 922040277 27348620 101487718 874233827 998152987 81680188 880526649 503196373 970266971 12999318 73402564 447024091 894015866 399990835 504791546 366536161 780764063 563779277 779054870 183867433 286994974 496587810 761328685 700405172 874736158 139245296 491759767 980405517 989430748 588810774 922325864 156262353 464783857 732626182 784543710 284408869 552220948 563833108 862758526 158638747 634779014 746535472 962977776 375961394 735005136 178867660 818776688 783614844 981806386 191445594 270910570 228902276 516420483 257459498 359195957 596402232 825843067 952613825 987208926 62395817 860388720 573399917 581114850 198393992 354622423 643487794 911910432 701850424 990578890 675645870 804700236 625234907 754894691 552622782 945477084 47313027 725404596 569495240 659825957 457991561 960955705 56397651 90375480 26697570 535338193 924375880 951948161 295745654 608783763 975618849 985347283 636425452 674504383 360931367 624240788 677531713 940404849 683103324 914083678 896809585 912644447 496068360 948805095 370927997 558239933 90406441 537207751 475445422 890292296 445968641 569940969 96922599 431314017 144085415 351854559 68042301 237862009 716537225 848816489 894016170 905223354 760493528 812331036 779270839 825800710 443024942 781273876 923548702 935906597 754804812 765513913 108561655 276891176 171177495 663918801 36472297 134977706 441380578 809519894 727787805 961648333 748691389 912908707 782989555 882593624 977395348 991767663 516038922 994242977 231653980 404383608 757826780 917823536 916907494 933321648 798054268 932515108 544373935 981052674 948869152 997511860 546435871 565752462 914420913 994200795 221607088 302649263 884199398 965299056 971449436 997021030 659486824 987642518 685742433 692464103 832313415 957360331 669258983 842696462 150441385 211623898 418932950 551871332 637261802 781073858 261512803 387155028 377031478 998934234 633646452 918603312 277354457 757890820 355824687 701085948 641874558 857998525 185671074 889578564 607347187 909623786 695143812 698622081 157583967 437838640 370415929 495402508 789722993 927995286 124218383 857022071 141262747 244017141 948340228 967346410 364599911 496710754 502002208 779519295 25827583 62046351 670607186 775566097 697812959 945554459 800484074 882279757 122725002 660985750 254056164 504476633 498887822 802407865 768673751 956219468 72594185 621738930 89027346 228236190 461063984 492703867 714982673 853333853 496169491 785595204 958231671 958673839 742716514 996602698 149316670 783863211 891242413 900170761 996103714 997966417 990919191 995033249 151016208 683533580 102037170 425756453 149703381 505344507 325135305 390875096 224979477 816690416 598187588 751312597 547471649 884148963 226417370 398048124 719890187 872425642 186805593 760701474 349092340 632269307 830371514 914023542 292691791 562160845 29728616 200061274 392924896 947642544 353746419 621464709 851673938 994740082 7560160 379767147 599047541 926196111 214571675 662046226 824869288 928010997 899296509 943163152 841357659 921512351 742104128 759397749 754682128 824089953 89464956 149565898 656175326 869636348 715080402 729550932 643299892 918682926 206870795 677774485 556598922 978888223 989433613 997660594 819191800 868152486 115000150 415136792 290010458 742014943 891774080 950034340 758913896 910017851 693050171 811912927 69232020 784472452 287546449 908578084 122670962 679050165 441380874 748787198 728077006 947710781 498845849 778477455 345208986 998883056 258375184 973939815 123547314 613857760 121203548 939831367 145598579 924629651 843996771 887387978 500796455 660690439 900320085 909766675 888927412 991872590 267436114 742843381 33096993 523594227 492397450 654466302 824571326 937558853 150580455 387933997 820347336 838608782 889193816 975973988 658550705 875468129 28407822 505763339 217973892 425328244 416180747 442047088 126719819 178352401 418294099 679601405 76016931 85158485 582212408 595038330 465698021 872968492 75523534 812931762 46831425 791758540 851568714 887825036 902700161 994427183 24827920 741334614 462881771 595046974 420778737 787164135 316395946 856917610 675492675 749837133 495083421 838137686 575463367 882349784 403190093 989662664 563100052 825471743 296637102 672007417 202747979 498133970 590207759 644859532 713705163 763416370 157393732 456936381 743975323 917536644 724812499 974388756 110965082 260149688 627431440 782840413 830309872 846607521 356427868 483881334 936062302 944715795 622809461 870335995 262152337 728419120 741983564 963803381 371644581 689765471 302338095 366524403 812101534 918119021 579252245 651675848 716997345 891597852 726908210 761575354 743116881 764821629 43566541 829092425 565756157 650600906 887746880 938486283 296084886 801794762 552318429 774234290 295705730 558197894 578783052 683308343 637541259 643476852 650868607 958146477 28550460 64491577 9698271 908632397 909769060 985321279 866484285 890668047 449820525 502899579 745353215 778200522 271267675 677338845 500441778 982572763 309030560 481745972 712433905 832345750 495200158 595438721 698816063 733325928 783618479 999788595 219960994 397999405 352684050 670172404 96334324 335797157 901583902 982212934 710637890 809690388 725649606 963720973 903378155 981657707 692828710 920996256 534778874 932341553 951384951 984892217 556791427 776393361 561372768 900390824 38985709 728968964 301923796 374011121 717258165 780739282 607101138 881069451 586718111 642506721 259467410 593953353 301325692 320333313 762477123 998751653 255688294 271100205 757726807 898091756 335267389 965451438 118565801 988003772 287272316 478626594 131429123 330293225 261168348 700952276 936396416 996059503 11683907 160648366 996280174 997110519 99396005 697242257 731213397 742015010 847447588 953738924 657062159 708530273 557265993 766941709 111658401 726007725 476757900 521770147 252507752 544428720 940232891 978360093 84134617 167794073 769243900 872455491 830229206 942802588 822718502 922329247 720898188 828994239 16282139 374829704 159809934 291121608 802837470 925550345 517746703 849608031 973205648 974927525 93988658 628543694 374714708 873655171 721719014 874980022 360363114 777087309 993825131 998741892 463664620 987320748 501400724 811683202 478636501 521325949 285011881 752230867 629573336 907192347 881605647 904939119 324116420 779241327 496660988 516164960 723553897 957808627 22320131 186853940 487215107 598419405 600239485 728972694 87899378 744649137 686467894 997387883 40182755 370691387 699805353 880056583 508818256 728257605 356435677 827006457 71437523 506107095 138242400 635381901 576119292 777001757 930599891 947468680 724960837 897942627 485771505 814205704 457376400 770246346 113159293 160634135 454156376 997280466 119253922 539460210 989318736 994738221 248686546 502316801 871672606 973599412 396863446 988051919 338265549 509497568 753659603 979968371 61136896 854565045 894310071 946953328 868121529 910349232 891827324 940120283 465232616 727900496 541375960 601157859 321931903 751814976 715799375 836053841 338129599 991375056 132239884 670480998 200952379 480463484 710786030 998025640 555214901 774947060 658016653 961611552 128132508 987300056 883854797 914355989 293923370 960475769 329651895 856675746 964720687 996184929 744277741 954068958 195221983 833401245 878155596 924404538 88550033 132033649 659303311 775523414 77552033 379387381 786440538 926994475 624169490 979970062 876556498 941018033 870243249 984415101 163473044 222733398 227212475 912880621 90829091 388711856 250644678 782145280 761228906 793176291 161008547 967167863 359919066 746548537 240832467 392350170 897613306 937812761 334300990 425112328 594416230 870001518 510912792 608494230 440636355 663229918 565430997 843319736 448908384 702483053 721774994 773517463 794608054 878620706 794199140 998359439 860456010 964053571 329787976 375808657 579744933 782445158 931592014 962293902 357810901 647690173 170639151 711403588 511526601 896169368 411660571 762020709 760925797 850156819 268611090 351637094 623905862 658316088 762374477 805131748 294937872 919725634 126091248 788181483 25265969 817461886 117366141 146761523 138413246 193777094 631001401 678140069 195048408 680151643 474185390 547858218 729828998 778030175 756065593 819247397 16416252 548856926 206973053 934187230 897903537 962820263 903329752 921366973 954702781 996144114 957777079 989923915 436612434 865596072 658133979 808872782 517321881 818415497 821494374 926007314 862372151 907330191 883260855 991654348 680496289 769754408 806641585 963070059 573875465 724449660 332352065 604098936 48020260 389256022 778325444 984257767 66569411 274931377 479798730 976593201 280692339 729362342 452133542 709640020 356627108 981383562 500689105 940299212 41669565 298684809 507067404 846720188 143218142 958604561 264680419 573840984 183274690 777915054 557276595 642832136 610281599 743404280 276238356 669244690 288351396 700786523 108920770 367987905 838301904 940020565 921076373 977763554 922844461 927515018 965552399 984512801 216516409 804728628 960249325 994726534 103746490 296741441 784529482 791970395 975809719 988727797 948302311 979532456 372568731 541828687 42293997 567573048 850854340 915002944 768704291 827481411 902457125 942097683 175150581 897511517 627098095 936446283 213164335 410756018 102714641 966390266 989874519 999193775 261837141 554317821 626226061 936231282 854395490 891731846 777735825 859071995 116028480 160563360 350021036 634082317 53536676 64454862 713346303 894455875 509452728 828097605 290777072 835919782 49550120 638840343 867874670 978256285 589084386 857667071 929600937 950278477 85047046 163672941 819818481 999740850 166551476 199885629 319524992 981994088 353243931 559434988 795089067 818369155 600835490 671386943 295874250 369812307 857842145 930496659 108142356 711419559 460382060 803607032 206780609 207977398 350036876 672707590 597629581 783121401 44407034 783124068 241657127 279640814 914205174 925456471 800119985 953382110 607491200 694685015 611846641 762840772 502924003 887428190 557019679 773121047 581462837 924520060 958646756 996422199 144754724 257188527 498308699 918390229 418800836 551609348 227399631 285365088 289528794 505811023 424349976 435642692 228917806 750089949 900406229 907083349 330756412 558167331 474817219 595479170 184921159 791206244 986788808 998699687 667768357 773418014 403195938 833901317 346160635 463505396 494541486 653835449 350044508 564068280 254034798 301732194 343793580 702487383 836923960 884098696 747100759 849466445 859614310 980651261 576267177 743041156 571238374 861150445 610542988 798196524 154878090 475130925 427373488 997180166 40535454 473705589 294032163 804480412 695206754 934286391 876150126 979203894 135148864 266533222 761693266 810817962 844303576 961079166 780044462 937885235 917548599 941373770 806490928 970428841 607499809 705750978 33108652 730795395 541810379 580887262 3508852 589205966 296329473 648210836 912846786 972346023 740561527 858504073 954894530 970905244 106226417 197171867 591624915 912714107 816311088 836010723 512614806 714320061 6972865 498055744 845577492 877864521 266009918 930551637 697399163 921559664 458355756 869811541 415007046 630236965 112692227 501848899 630162448 687077327 816587297 995480822 167692829 238594247 523226232 962117765 408587680 887078314 401330443 687987534 278009073 465962917 762252402 810276693 367896101 908551376 982566569 995836023 9682744 821195204 273411392 398381114 863435485 981000729 218761268 978845440 85212284 363294059 134533285 360654621 537546073 818635409 296945957 605292003 517064125 613592219 320884702 342799350 89440730 917926335 463207624 913996244 691221518 901299482 922999106 949347253 621398473 768988094 993286140 999313336 584353487 613715806 619664631 662147901 376946896 960985281 542750537 759583951 822346210 847889354 238088866 635486184 847807086 885972565 347551797 455488295 895799577 981001944 590453465 706960977 879095469 910229655 403871147 748065523 83268025 780956749 334103624 392329591 800581671 845575684 136712686 443431622 226220151 786646502 517134003 756466486 523847195 648150343 268841642 688511175 558592045 718981077 640603495 671746310 369685173 942770868 358588064 638096586 418186029 715983371 892648045 936694934 432836031 773329222 619728350 871977991 535744388 695506614 4446679 918641406 43209547 564070735 685204234 907843357 770059117 948850000 856355799 883963587 27564605 867630272 725342488 737353397 646805558 913462022 7167436 567582436 685579428 742462084 654507932 851080698 877442514 925109247 53994747 190957147 134514341 857599569 414379017 599287828 140464170 948423900 920945492 986488211 186715698 418124255 77986053 299035001 526253064 807512568 830423339 933264005 462605275 669114278 537739111 625812486 60954873 423752987 894190756 998737597 446455772 770332342 207830948 674024744 550714235 649626424 661777503 805397803 698339003 937063298 46330259 724865943 10237001 296239006 372444330 603230878 822026608 928391900 597940030 631750540 645461898 763300138 77850928 828988880 215515238 235355414 511402029 667052227 285247634 329950916 659003563 922080075 377252903 986249692 397834687 479354048 664716972 877707307 150572404 215168516 937952 253078103 515409964 962194109 673769106 995903976 407092424 532716452 510939831 552525039 473914999 964502266 129836278 290121030 223698235 464239544 32666747 334781839 757194156 993872895 801866846 876398657 699704413 724758866 941548342 959822720 621429427 719327952 238655797 778269353 651546850 876993695 375557697 594430840 858434807 880524390 702039 674508186 618380119 842793898 811255971 890994224 447711882 696827325 999614160 999978298 125571282 899838804 407691036 889576026 347572898 925723115 505127821 571178339 752380581 904341508 493610924 655487424 469505096 523603593 886425095 924084321 50504278 423442416 953175464 963659096 111927053 608763632 574846662 691723022 32093903 242867281 937689515 999079071 42900647 474444141 948638287 994508375 900081799 960851019 364107277 629546357 693436047 881620400 881070083 921762062 267766540 628878460 992251510 995708246 424969795 724877335 545060737 559438647 913625108 973471147 14701791 261027908 796700223 975333365 102066333 253646689 134603243 669872007 995499568 999066991 762197323 948209192 877197888 927307500 886595059 935038259 186555499 699349739 984131338 986824011 323648613 551917475 910454177 987941766 516296199 995163152 717163069 843015539 819628582 956347927 333385814 639926570 513642512 604720012 441897447 480972410 670602329 790070877 485591475 950483008 956569947 970769968 615105963 758148622 763539471 791688258 409925780 930808212 278547382 999012296 247996821 475855974 15447015 154775604 198165411 646130397 532263931 869694993 738701764 805021317 767220814 836990379 366323892 719723024 924553910 961309596 382968424 829847432 630502756 940327890 225140436 284574477 683509655 919941122 452578160 873346112 396869034 403351818 562778414 989619117 210926397 869928061 283069799 521450336 615459178 883057116 283153360 316249080 221626466 931214390 863269934 867227064 80791273 475837584 718158348 985037411 542531472 684569665 328514200 947007559 219964635 805447178 607766459 651880986 69347380 710503227 908847914 929741105 995117732 997325970 216713999 283632526 488007572 776432590 940410246 955031506 563010212 987512239 92030095 453920486 319679840 623447200 905515116 980856473 321966719 437294549 902301472 910309449 195956499 376775535 690366403 880230591 444397591 467098627 952795143 956463982 35045727 371188391 249709739 766549208 819079688 935539118 641340443 882814676 508160080 783034437 135214366 812804446 609531713 913930810 764002350 874149118 668011073 844406372 616476209 898588922 812308945 906006645 659111989 848519968 391677533 488046972 820006180 920392230 789113873 916389620 473492221 989117935 570733605 912595540 246189179 729943067 142931098 716277274 586509132 764137004 75672280 832659622 622661942 835829607 772766445 839015553 609957714 856988313 517159073 681950450 150714368 192061662 469390457 568943903 51846698 141904782 24654702 502395723 894297358 950974120 519689337 822400519 258738688 784196706 767999 282097097 718415563 819630913 841157281 916408777 331538320 528229068 315514336 647975931 260123222 973673007 723394902 777170789 797252736 830211332 737452971 991120378 10065776 337751215 712029916 958348909 844330342 928733634 173499558 938575883 49417655 359890476 747017716 798704452 621087417 702980091 772233052 912064249 269913508 858053020 751885801 892738722 309701118 527174058 133556411 858754880 789373640 897193870 464723922 509733037 448716977 769076092 691023602 910157561 284989407 842861507 866434497 959335283 385981230 990239573 931685180 966848210 894593950 896545709 188943855 525221187 48702976 546161308 569076576 714606231 611060901 902011179 858955297 928864209 291576223 966505741 242271317 822308529 429770318 834518528 703798683 762839212 412484922 789528902 946755358 953302292 317793015 333216228 856601483 996467462 292673483 769814300 987185908 995884408 968717279 988117498 748588078 751573636 488935382 893362302 476981966 929859807 492861407 967401287 420273660 786574589 664557214 979636793 119644535 350791084 309703197 694411128 68299979 779887196 945303837 973866274 144572459 442489452 28957047 150501183 172818593 613881671 716585359 911426697 404167016 760301789 595338167 650346057 813035900 989657032 847637052 991473919 577251828 899437821 880784341 985831040 431236283 692942964 484783460 960760472 844306943 858786642 816353095 945611284 266862554 566166878 495065498 595283403 217909253 413942552 383838388 909971213 624134385 799409103 567458642 826949912 298132493 848803088 190579483 869778590 85683763 526930570 881023337 960991538 849655627 885153467 533166665 937623729 880948224 937973043 15300019 257131969 477119292 938929472 652726227 968382160 821645445 939762003 229321889 511663742 563360471 892490886 479174936 610351838 364496608 733408041 500142662 798782464 274942732 964064416 216458195 504021810 255555420 622587066 675333004 825873661 729518426 743568961 103159496 267967058 104701224 514603512 341387570 947759765 104692188 877003199 888216172 942571055 374854066 729402584 636593948 979508972 536440820 573830011 357549158 399264852 158593334 612461208 525492925 664924898 579859467 934802684 965464239 991838479 992322425 997015940 414971927 525665995 961411054 980403333 749236711 970206205 303014094 702547559 691286681 967063208 756415498 785431739 920418054 997419393 531459430 739069828 465351269 784098011 953221170 977386312 701975160 702516821 744495319 990683023 630074628 881590659 934559221 992065903 341588896 969291389 946884594 954828904 335624334 802095020 938881796 953617985 713535558 736269274 792203098 915355972 620276576 990349983 318868832 329891894 821717597 988775725 857401325 949020475 565775039 810937458 973420553 983297607 768596436 925554785 428685766 499050246 157809614 748470449 675825029 778516753 248227286 906373012 229632218 812677865 541749947 629305202 849393460 991083798 282076638 366995461 219020848 589875285 255658718 853746624 77517831 679708483 317368335 910505612 528631867 802622843 278830363 752685473 350123283 461036528 765167779 774512459 210781862 796668484 325296181 961263891 212478741 285858442 623425200 959091239 599200094 611094950 538491549 566035804 835555299 882943435 688251234 837906835 737763202 820290118 74238092 995630292 411356843 525159818 496560051 644087395 867276370 889605057 118997248 631067994 223654616 781528240 883979621 922324016 703345738 750494285 692778882 970644964 526219285 756174160 595836325 987821270 579020366 859223485 89813376 886866209 767762494 831958309 244980821 744723408 610578147 994000161 755348568 900305024 800487478 938909069 913021947 962862954 88227628 357688785 917119592 969296537 356682800 887217220 973226516 976623849 918454288 976575475 265220689 920050995 469846565 778497517 983651098 989606386 480630571 977195914 490590104 909884113 451822578 984845553 435881695 867354773 686078588 789058800 312801253 919491226 488353217 848419611 419353929 716068425 587896772 760027564 385402858 598231877 626866595 901308366 46158842 982268915 317009310 764669600 628318173 983005375 281637103 452432726 206754062 828270741 381540577 459872749 192070802 910873997 191698425 808221019 149271936 918671494 624616977 646095877 971788555 990257849 23153982 852012550 197660477 505961173 708093675 744241068 658843068 672284497 218573716 752346383 407747655 624563545 464041661 666448728 911504228 931739743 487404885 972550015 801736809 973077421 988706731 995262217 295543092 756651864 459003352 795155753 639020353 953585391 80427024 337152774 422087150 606373299 141895621 426429601 254002318 914922480 526925911 973183817 705994877 901813194 703795192 892608472 866237812 990967598 152695423 305076644 461313173 846104200 500856514 984501845 939547249 981326699 616035996 726068102 234343939 565404437 655703979 931623201 956201689 974500282 681039390 834859562 580005301 830657949 923071190 993355947 653247493 894072113 144272485 923210555 871778666 917354960 448231534 490158453 765096624 813337226 376860237 681856301 368921633 421721169 903856210 906394909 631393965 979605942 324838599 770821594 376041042 515349012 520573815 622727781 844917684 845111930 629054928 900574369 296794083 729785836 20484417 217506918 741385637 956607235 419317108 534324076 771717666 904889413 816563677 955832785 567318291 987908015 831884889 954819365 725332951 948582257 402809435 644100642 496426025 798782259 973938735 984588187 986306999 998073722 76029173 233699357 795519700 998727615 960242041 992565634 428414820 581687553 936780290 999689201 981604560 997701988 487295101 913373931 83921933 935074381 123373937 178798103 31405742 748391977 294858908 932901449 124901576 240067853 861596605 925210232 613760561 659853504 28756672 73835992 512488962 605222695 315611828 682257775 219087764 851589276 11252151 584877979 407197733 765039873 861833916 915444665 777170788 994933793 119366865 373220813 871210263 963878787 135018229 509386810 777887831 991089766 956638022 995674259 998925037 999765844 191619719 725524372 983517102 993148477 119470967 432448993 723090073 765312596 92926415 411605665 669549394 822258376 593961972 688436318 695205549 819498124 824950136 908350633 434425196 565203620 474764276 553600607 770739574 975762030 349801103 750963228 385145232 849961572 953698294 958960611 708286674 802538393 879236946 969880664 13038815 550567123 979514086 980824117 549367590 665908325 503827724 835435496 406085062 904513200 562560499 564212615 800344842 854138042 208536936 527946622 461568544 587744746 635506647 655027578 787736426 805819565 234117713 509063020 253776226 671940195 555634076 814803223 393800892 688191514 245074340 362299988 47818650 923906616 75051639 751113710 571244411 672225824 590830844 600457972 878707955 881783008 737669804 759031532 250594624 512398575 517926875 569067327 553552566 906831256 915740390 996713311 761728392 862861321 190043410 196817584 120878228 422587906 570519663 858464270 246078498 549197993 824308075 869925458 310144195 335324641 656474518 757705574 129111213 377331700 669643603 806199451 20655326 365523543 832831490 969385334 645903309 860586752 6994626 297640817 959235799 966938985 768823799 857259821 313530498 828288955 138623541 619128417 499668598 690527522 899606422 956457650 185551124 867499141 880392291 940716016 304151146 527687534 897944212 955242264 851730196 980633529 638603867 859095259 683805580 955380193 396100138 565330135 212649922 900326981 130684999 414490602 165705077 518874651 453552870 690876226 621390883 657615800 364905795 530983419 940147485 951524942 612712285 848959556 726807005 789191875 675299231 879030894 513622743 523308713 243579108 439201366 54631366 315282778 811064496 917158676 304349817 443153328 221163104 987002849 59069119 634343026 504945291 934413253 553094110 738147233 74472380 92328417 273240661 930740200 542751173 885211588 495125905 780768902 55454070 258104900 424525969 526759060 283280122 570465640 708856112 879198541 776476768 802338330 514534446 888379246 369887662 419200280 308144450 423838700 694657767 696598036 528606361 837422817 819083632 900146508 268055854 629947556 716308170 747312385 295114010 529367851 479436572 862627944 218422542 402151204 820559000 888287530 943883058 966988605 234749506 316685587 131889788 805788380 693452049 939066405 417527599 465193876 984454492 990615856 555139778 754284437 953753940 993088966 466015508 823232361 206104454 962199137 597343647 880050390 689479859 978146827 601676823 663920092 158145986 779943900 429901979 962985325 424956380 691725639 12911246 324550867 909064380 923174869 837043168 908845693 322576816 331681632 226937357 502710527 356497830 538862641 442989873 804490674 297699462 378093741 691841573 725223559 164828867 413504968 153913175 662230831 170614774 666087220 814888252 900190294 302658013 365630261 68624116 696403375 349795878 546082566 777979222 794379312 944342382 948180191 945690935 974135880 312813782 657923600 88905231 322927127 313003140 680015210 824791450 934437066 221265097 571800637 659863858 671034511 272418715 722538163 576127134 934589128 826372320 895530203 221663553 926669889 160755244 522868911 738129690 874225501 423148804 986406137 763044949 940262599 57779408 981758771 983581253 996738543 891096265 954456559 862520944 958213625 727841284 957004093 379709649 818903070 269240110 891393916 790782293 972445491 883962002 980814378 650976367 731207589 92286586 562369871 90917728 750340314 898534105 936289469 102217815 965921731 883021579 909847973 313884513 982652233 648704711 703306450 459646454 762469452 424005349 884213609 178182880 178351520 708334545 939869769 414161351 921688559 871691575 948889550 894571025 997676397 727170340 834422383 169321556 779558812 75107907 752110018 591983653 650686409 44157955 862091164 386485745 741918942 11098596 233052148 874042352 884303325 961882615 988902788 455022209 513836196 680390670 782755606 567139952 779779742 781259516 914782885 389119573 943648083 139061883 860150172 649925508 748441330 554217748 712578011 905740528 936380228 269524015 506445818 137027873 858529886 987737616 990835510 597177464 644202682 690260738 927191161 93210481 102498011 184130293 682272499 413905440 918676242 821481534 866104342 841581622 865945768 527579987 534548756 600389398 620592700 817052122 984738113 515819703 648464355 671536332 947719399 914235596 989008353 991996890 996337031 768231720 829246343 485681327 827318695 861498712 930685840 916959113 962177830 723265796 982831666 380404622 936255614 299704159 694663695 820267328 855235133 293618321 436117413 930687637 981725450 969790432 992682268 836410193 992774072 283799526 472616376 508035293 530879167 218858766 907707122 32525340 197088788 849409665 875977280 99331398 814451011 374254054 406287857 25413060 764751026 964139883 994838080 790367939 801700956 132712856 545020447 346088675 432002345 248462373 511040423 982922410 992607892 128345104 721761640 194082869 679500820 385164897 742976739 263286677 911422687 9497712 210917496 71306537 496069853 214395610 312531823 88295694 649624625 888143514 948202376 545103604 688170910 967802764 985767072 128543131 791730297 718068684 724298123 157471983 312481223 2392158 870616988 766371161 800809502 147488490 153432251 129339597 171681700 407882991 458301868 475789714 702175559 848434881 859342148 661580868 998848642 133413401 919976943 205730679 767731828 267872312 700701063 884676056 924539793 501969467 813233713 434845433 572203676 632681504 638941200 162958826 913362901 316981293 415032678 803546240 898259474 796814226 808337891 928350118 997966011 714005417 790718450 164673058 913722680 59222007 175333098 878866529 959555294 346137660 470803355 49087662 783819849 17979077 306688511 750481812 999985796 525575541 637831101 130919561 713547362 209462056 921572178 877442591 952745015 177599294 659409033 755668749 801446288 878817196 952963744 866502311 874951143 683108522 953349998 838048469 910630628 771214744 996210194 602606794 824784662 412405838 721946285 273219096 741591333 696196947 722160785 338630401 905979731 732368495 803642536 826670586 834524136 290796182 906668439 909417182 933334445 438418331 856015488 286009598 742825509 402236366 501375461 415343299 930764550 320183169 951302439 620199822 970391040 625706012 927551759 873821602 916896561 149439689 511459365 794436709 972236270 546852704 909204602 186594405 774108005 451248255 960354660 84628555 719726896 366110238 743842439 244289099 529714533 638654253 788876739 240040035 554155430 338913676 567510499 288273183 701521075 508886869 804346118 255669031 327496971 729922435 979885522 36287038 298562223 787172708 790740858 592060808 853246554 802305153 836151175 225620724 237548701 482046749 540984814 261854613 359109406 238215180 494040722 687549516 850807210 395587849 423947418 761277801 834768940 104401613 382490122 473207040 583488573 18558881 532620516 243160605 480982250 692179952 780523989 476707943 736118680 870734484 920382542 82450233 877356269 450832173 472033426 752062460 813163113 989891246 993635456 812643289 953674492 192994092 488687534 628080687 854063023 550274284 814368816 902029302 925435361 142430703 514162803 175710781 417740735 189091881 331831147 274669793 733246581 908894501 983605868 952822469 957827114 801878550 837949143 420213708 522486888 244803669 450324787 745684652 864707190 211415259 422998406 446780097 686208613 950247518 954520654 853629484 978526183 563950396 862190098 744876576 977949088 285015976 524205330 191724600 557508580 380109723 631623584 540330728 777285996 125481752 899971027 755580100 815980718 448805254 646390002 258718087 963284145 250914184 777224780 334913241 848537353 270705325 776539250 551715506 773307293 353271378 618998847 512085753 615221770 644822563 873186119 115710340 122332101 770176230 968662270 113103947 338911187 851922053 864151505 935136222 983844592 49193783 874652364 156333906 820726539 964169093 991762401 202588810 673862636 151559499 627481183 71532599 311545396 280464491 937613372 702211736 754948273 260798147 394883100 779835121 785258837 778281857 933710915 70855664 433089388 758528151 938169456 802175303 924193917 787373359 977674475 698340035 753362594 823148207 947961379 833831488 965722721 431252044 498720269 798518277 974085883 511075012 976744077 748412965 897934891 176961324 989693329 461084917 900581750 819688061 881450180 163925594 233519350 523097401 710949802 71753280 751942994 220286148 930705564 250379469 494670309 330474629 597562102 208049825 909536914 273244481 422797016 430805363 791346364 57276226 878773055 949541460 969617789 943392848 972527760 601642684 951777953 909644439 981771688 316476491 366175435 737201026 934416991 987611001 994658976 520038824 944938043 740742284 850937599 540976161 767124638 321384411 862389926 213611743 236372080 662831258 897427689 516620155 990931641 540241878 949810316 907008584 955834970 59451611 206022902 685756843 963424963 800842342 826576729 661316332 957465122 70112034 738865580 272763171 683647152 707007649 868522425 94784591 882983478 265001442 507251268 47985775 991481059 938726231 952380070 4855039 979307387 883246527 924391722 387986596 649983856 942629730 970149052 342544736 897114925 258129956 678680942 787638423 802751650 549422113 978964097 973964435 988142371 609712097 791094262 746319350 840629322 962289828 994376796 90947930 455163541 797451322 960137016 255155564 483715999 315552709 582348273 893447747 902367690 642956440 876906044 833690560 933236149 134250197 524059418 289403776 799258821 423326961 854405956 571704134 819801726 702364339 783115581 712556388 888406334 196696601 311983254 537252657 865666054 688652471 903324856 913871334 965894635 139328740 469929792 429414078 704566609 69168672 169919690 990567025 995139062 545608640 721871124 442304034 470956647 105037184 537524673 388800845 643516528 728529432 908778444 626906735 873933397 264116445 374019538 873472897 887648697 606144796 694907498 997738458 998499940 112151176 469266249 569380751 616393502 838414355 878241496 431473714 592864741 604883750 674077030 764395672 852157315 737427965 879394382 742753281 988867116 614430303 906232179 772391810 951515209 841366564 917368126 694561021 703096697 955779914 997940168 942241886 952505120 965968637 989626053 4454204 823009036 333904015 518678433 104557034 843314711 379529796 796144351 514049813 600939293 200241021 930706382 147687173 614419284 640152285 918428830 670869958 859717023 856784696 896647083 92599545 308802717 424714090 892170918 221818774 531558800 382568499 837734872 465097429 499623010 533071799 644222792 284991827 612679545 316730625 676690289 284737500 895518208 663141807 767879184 860019663 911145493 647999500 816656711 987770729 992911291 754476432 918620183 413205384 916270803 660957730 805551451 739157457 848268288 47038690 326062872 984011844 997597915 945735905 947591766 929021822 991267840 978353843 987095298 749438345 772286010 189001387 371942970 252410294 452745497 117394144 947371418 220944364 445802831 825428255 841897814 166665097 326712341 400879890 873585874 727187535 810101349 438752060 946921086 111730941 604176727 490480749 938671570 321419013 331651133 557071745 902407623 632087113 731214750 783064406 816181056 199961157 387587009 24006562 420063166 611481521 799745818 862379534 971015479 522901287 725651842 39013579 553508624 237539022 392906503 547869541 570409610 591927209 621712495 56517465 569793445 998095291 999925391 570282516 587749778 68567845 211887629 720326914 852986052 19122528 272935368 405086911 981186877 404939830 751737691 767295932 973048487 147164192 919250958 357798744 632190569 719822479 941577244 380402707 446979193 285508531 685315995 355852530 991173274 228575208 807542329 982904007 986608433 172393942 592482046 858993189 886163128 685930443 971114537 260006881 678422253 845281523 865077278 88009118 728869442 861254431 898433789 102362020 518788957 67608123 493827005 694971727 702034117 416807455 461367453 600523181 740375464 727259634 817629540 128885760 476393369 913974254 999293022 287572202 330909255 552603564 917102727 874148132 970589899 332103400 923392828 452149223 816634766 759102691 763377395 470751137 593294655 471402480 980061651 762236644 951598092 800241506 962804940 981478410 990621562 305765144 666661417 354798664 485445383 70837428 885027318 65041492 177916290 16130331 213180137 160078237 298294036 480822137 912629848 155823543 547085238 845648380 924013955 330628328 493617440 47199459 569417101 948119363 965608660 809915797 955020931 408740681 595084205 324451774 678842583 445668058 522376170 518297818 918344924 349978988 578692358 901111878 972188450 600292598 636376286 356957706 654673867 922283119 969053795 570064261 638626822 653392757 875287381 417747908 499456487 751607463 789456866 26993423 956878273 502221620 960411496 758695552 775033879 611021348 716186043 622491933 856439768 60039862 799097186 264378517 278205289 182946801 671695224 776037162 787561043 358184103 922851860 719107583 838404370 999544369 999980163 215264479 575072470 267960458 503230573 474327507 744630576 982250409 996231524 694415256 880319788 151043589 840604751 327583717 517425162 299616360 880528217 964589229 967506122 689858603 927855903 218854807 836214894 827669576 999827509 223713266 584155275 435976553 458161773 850110667 859661672 98608254 528299222 960977709 993112081 85102305 314390450 302407682 756285213 409200649 650946024 898110364 939740816 626231097 994608865 628073582 820546605 207705484 274377516 320918063 415681084 528092680 772889067 538175881 570681420 828705677 968175202 231141894 770793135 480817565 886945858 682785868 929698602 144946989 786667821 603952117 842772765 177701580 901994424 681407174 907894694 844201294 944311685 704301639 950328976 792179962 837609256 385923869 424314084 87644615 660818170 58608190 190448179 539960641 943565022 581707173 677056338 915125368 950558943 411098733 934277767 464047536 584314641 910878910 963647060 106625722 496076828 332895242 767915754 355507198 577466276 262586002 399002859 462355800 511437439 299987377 714855589 566356184 972005769 36248911 826149846 667463854 994640281 786135099 923122831 263616360 406658004 13523003 482705375 57994188 707401828 702302789 803849186 377412950 594285551 987865192 991431215 439619671 910727166 547514970 917102360 188131332 594411174 257219777 973778040 78537863 238388890 537133750 572757232 465878360 725573736 381204353 577490809 608375500 814866389 963854255 990322728 766886100 772501930 679839631 898123076 607348757 704425935 653026914 687102123 501593907 624687473 863286148 985062477 685538988 760565575 996553762 999793685 274419849 497050712 169161929 576723277 9962975 139320490 237824386 775578291 589766016 861544260 682235072 961315000 375052928 919400842 606582026 624953160 426250674 790514225 21988966 741049512 591873483 932869619 411154687 835449835 198169943 542991676 314821652 828043348 830593109 910955797 902179784 939926869 952413253 988679689 431282294 524332920 113797691 670372018 414713696 959163654 80425511 651184009 638971061 930494480 571325492 638159818 401020401 642336663 2244926 779993741 803750365 957381677 659587635 964486870 129470911 271812681 858232448 891881883 173560557 458060588 603312160 940424567 965016962 990019755 212756946 586801882 272478699 648170505 990500826 990609564 439596972 895827138 332069955 966930741 455959350 661260993 335452865 943447731 828830467 908263428 807887702 846285476 767916158 986690323 66067198 585528692 624742561 855633358 273228667 722952036 380541559 567323794 714572746 912282246 299961644 482388204 966963895 993631126 338416158 384582742 770055145 969903166 862631555 946765943 671980612 812143496 3673649 873692543 605671142 867830345 446737290 831936329 608289096 840682069 938567189 952530723 747166993 877992135 226478530 302228793 579679826 642539736 866457624 869642190 702535381 769541780 384289672 873843491 907209178 954628873 559236593 690008740 306249853 609823507 28444120 316699187 841648150 843524263 114634324 462100669 79966167 485571347 779813298 909618618 601790497 637146390 213042253 567277576 519417960 698256208 365750105 875366332 542730090 940269648 985167004 997611993 786439263 974529249 837521932 981862121 719191536 918009927 694494883 997447591 613034612 698479879 530406701 939180427 656851994 703656732 923022169 928075582 136665600 702776982 555130455 572878100 143804017 946620593 881193922 890614248 792495835 886358678 937593611 986466878 562781064 659192713 569020415 633714262 806554264 874950865 842322939 983201693 889402372 970245979 259165948 954542036 894165083 952979270 529871652 602962212 801289082 835686196 910491027 997026346 168106163 482826183 15876977 705340630 807805585 812831712 491977631 994449625 74763614 130527586 14388244 958551353 408602799 533301593 623554016 882454012 565031537 635793192 235526235 357492146 56041995 629943764 862455654 997589763 11651352 471359535 41718004 52297445 373039433 866021007 835462695 941331777 448323907 982591506 266326772 700453040 354093083 598847770 119298084 363805595 108765920 766728497 501881792 515302672 903695376 925888089 68051299 798604280 249424827 979038339 241851908 399458513 800451109 995219188 215551959 491674363 195592574 808110421 861161806 951804955 684644774 820064955 75848680 555001962 1453947 418192913 414540966 631078092 463408935 575137898 235207888 240273582 623666725 995776389 564034449 919207885 197880441 956803801 900393389 971277020 443197183 912116432 863627147 949444173 776815090 792017201 624252544 913139348 138316560 152774810 920876524 936567978 380577950 846730709 629375409 886752657 809951864 843150036 135817118 592024489 285463688 472368300 684750265 964677497 659349760 792698272 46827986 237233974 3322392 796369929 349754506 906775347 891245726 932562470 317273428 579267894 136495109 743142078 354582716 864226604 211087193 563368252 372670556 898548376 761400513 955185813 243943385 485559409 472067605 879026637 698652807 863245426 42802271 665600366 342584584 545236105 495840067 583800130 661984156 795303990 416562369 902892246 562160045 736903568 648854556 981986194 833107554 913222869 655570553 851545152 412810485 553344980 548289156 917063415 517395069 673482114 125740886 335555100 566214353 847882112 170162612 359967766 10037684 192649710 735660 729633110 796345064 870268295 154818009 673295300 810477032 819163760 669777741 681243231 169468255 776330355 82887021 755331425 684360703 814797405 227806866 684781799 676795601 796817343 782109945 825920755 113875132 909547170 233042025 670561883 180429213 636371612 525989363 632188675 182301827 476582851 620980 741348405 243376216 268525634 591775043 654026201 525650025 975260891 221177858 854556702 230396050 785061970 199981419 214516035 130716793 140831616 264438508 658029502 170971561 559941796 416359665 823676426 729916344 916314644 357587595 373448511 754067311 943091569 968269629 989048628 608632692 700014377 186702410 898700845 726451855 799222202 89749551 340079624 522778059 554277895 330775111 491489947 63208018 580183732 191977639 884824324 373845033 567418087 395838549 621046319 768412753 786668803 809782695 866056481 433067985 874897749 485638849 705886017 105677700 551613475 649107552 870981162 176961085 492068230 824168435 931662872 527160636 935452324 117213140 939027488 853682732 977407709 308772389 986477602 386674071 429484449 721242328 976920567 661807082 787402742 964028619 965792493 562004664 992375783 948884977 956549680 74113691 926055154 770628519 868763756 791336609 831814896 753400694 775533167 95078817 600490927 103851762 193753774 479527358 534635647 60765812 577839378 79429149 679403361 15241161 727547671 768829155 942709737 963989874 995563519 863031338 979113312 849480058 892195823 562033571 801036146 315323820 596839887 558473303 902811987 448222393 983847706 972440328 986736321 632344049 987598116 480205586 773658993 332880837 448891589 616424346 723553499 93712350 117937001 626022119 832490661 327341455 532502004 293295858 662228706 823931788 928014311 357432943 403701754 780810223 896276332 783651147 796904424 848358372 957055192 470667480 835975394 437316329 613469144 865969426 940139909 35672711 38252363 669965117 743345080 289750542 821562080 365324142 674481329 357982579 699104454 715588934 837606255 971596846 985381454 336580729 937035396 866836815 957469142 96411836 682003069 831393604 962104309 339621629 865695298 414820346 519057231 343769150 988303830 739959177 852606889 881603620 888937955 908042457 953412336 562746461 782421299 263278968 337614727 410211251 903688669 978299573 986824312 308017759 343784562 1995789 641936491 933197092 950339060 934531544 982351146 796271829 995029221 942046701 948357886 444183264 743588968 137485442 627561415 830410443 891673121 342953046 544986839 837061876 997643988 988183916 989271423 967702368 979641157 752502996 915318036 559585323 852299850 989124221 993493438 552653687 908097176 950620599 991581848 340384533 874788485 655418937 858352493 272186808 670727220 426805320 967268090 995400571 999928565 902257990 945338075 761395059 998610083 472112886 973506563 18866388 907913018 844538036 968377688 282138389 984619434 812484869 942241167 469383878 585155068 871511180 960152957 123864607 899525878 599927903 647285370 115549479 367272478 52932895 933638629 423631959 561747074 776946037 989048563 182945639 212855908 290979374 359071553 4454782 391027667 708289994 981375723 15781191 291931380 977245442 987764276 826173858 898080453 717360718 968175649 479056331 686512630 777475574 845927497 111196493 483933389 858880858 991894468 788751030 868558052 435147843 618627977 617199979 726133755 814098258 857070139 565151309 715363651 368444791 903830755 309269017 716345804 112458663 838355930 951254769 965620436 868428736 957093541 727646808 810496783 307947659 451204958 313771691 670811208 69312091 960238501 375800267 620089648 125001899 865613538 243554336 294194303 398634390 890385434 940367416 945710141 252445958 449369613 884372888 998540252 405757561 634938508 585988123 809426440 333430330 988785627 703077239 796829349 474654469 797842144 278572791 362516433 853760061 987745608 661922324 995498739 251934103 990992523 822367976 870862374 215939585 783835972 117869483 536011892 491727618 919967981 552587291 966621204 41954722 120223642 576861067 956741373 621132435 977039803 93979441 353044666 518140269 622507783 312993766 532876063 198603572 975442953 352013845 748977270 433723041 891199997 829758840 840219263 431846780 657798097 794461848 871355635 118120101 448913684 806682456 862660726 389263847 956893304 624045834 666084576 979317883 993098729 469006354 491953339 810725082 823479173 870396981 908622973 826424828 978778927 183493441 866647035 295526800 585002289 327304300 783609994 746586726 943575264 568994988 610418875 698753809 943497133 660499874 931136093 837348869 864690969 682968672 807556331 546371068 677785979 812801632 953998252 631871526 780198966 524420011 646682519 170441675 638114604 123322443 330033707 925315262 944306709 862654002 912423476 893870158 974849167 609151821 804508911 555438341 624648282 868183459 988173500 623962049 911567807 59366708 500502158 331197003 823691301 723055310 786113659 119993158 575787476 806638398 881566663 631184971 839357663 269767523 615904344 530389179 933672607 512238925 920096466 954324857 984310911 115880412 758865707 371410744 932887266 992283961 994979569 643858953 835081122 325339891 429498614 927216384 959057535 633454512 709468936 866272200 990858938 646489433 906659256 620746090 808472042 518543265 654712472 580222003 868673257 966006705 997079669 521427066 870176224 109500813 328461716 344707319 899531831 679784503 946821411 497364326 823708920 585448804 811547219 776842769 847275577 299787669 688273840 538417221 768632840 438928924 801581722 475121384 606179872 712193781 880857084 381422391 558222934 577926744 750588255 561142029 989423848 346646715 611823268 313954397 842574964 43035525 685914257 89301939 568924975 341421703 755894130 455103292 554752751 175146202 240516248 628780309 675736295 855851432 982580200 805444661 886082315 591932105 665778465 756913043 804079138 814452605 820326059 712131687 798031809 603842979 727871629 653476388 798681913 793726617 820715678 990324770 991503162 140141260 334084159 102773456 767187455 644991318 903554804 94003873 270359670 440030083 820665351 406851487 958250447 728445914 976055599 650612527 701836593 853937856 941413882 133543090 761201351 90283830 150122882 352849798 707642649 749794790 872655476 826414916 956999211 861900591 905735158 105471919 234427661 715306477 770798245 811100544 952767937 735567869 927809208 395096057 763311083 354194104 478945870 445424759 484320872 783441247 974819137 616372505 773699802 814300757 854372115 782825714 827768763 624924350 691907378 504511294 792006982 39680950 658045145 397998154 981201741 610580122 994195473 461317925 735957617 743156683 873796005 87688690 783347623 752891642 859131546 970915227 989000596 304580272 324703353 234003456 336486826 833652438 848665246 454342367 804812354 989616217 992024029 877332974 934185457 862441859 878836244 394698311 743648254 666053911 826415219 254581819 877853346 873820751 930846011 102373488 217251171 80808419 654249521 582515372 878080109 783706729 871464914 729212468 964907554 981719493 992706733 367977538 611702963 64219270 704062226 519491515 962698235 828153685 930921236 171190270 880512459 398767822 961763923 236062712 784436864 316291460 339680867 303341822 413695504 856138284 981792298 425883909 913958931 22148929 552973876 394246936 550463308 878871519 931965744 475184594 736883102 561591462 778207910 895253153 962333725 205280979 907276715 592200648 996795512 908790019 959852553 831471130 974114424 115647165 540824708 792038026 804285541 867670986 878830679 809022308 864610359 856901278 991553451 907300908 978164021 32362616 474587061 154126768 698175488 560737183 649837296 581546008 723547845 384161552 389853735 260793364 483567000 648846212 774949846 574958111 619130529 525167377 567373198 528945753 583305239 881197155 955264747 818369008 875160612 933262115 989039818 149924087 631168034 891428005 981267812 160541219 503134921 362643319 871759647 472740223 616900753 254552444 820703637 943256664 955830999 625867074 912840532 161923925 811163713 113795866 245094657 683470240 704041692 139404484 478554526 6943440 932182013 39135022 812175163 919561797 955040436 782998776 862055556 775078400 976160204 396874460 717611232 467267843 506568746 489687412 864240792 382945621 879804200 676536362 780814884 506085516 526739065 503883374 978648027 264420064 578544039 461395208 593731955 53502397 340217417 297395728 574863813 914282707 941993958 488604209 674194260 7005644 304215598 290051358 628888452 470862675 984097566 684761167 737021839 633919410 838597909 498191008 521781165 120146549 210486322 701421756 829494302 726412344 870139275 515349870 667720209 313727836 346679239 876274222 920307788 348219048 835342466 687792447 768433732 427139642 537600990 263193846 311305080 191914884 386766191 753010677 936028303 457159858 830306129 21219513 556302889 645126220 886626840 769694795 821679559 384053444 428180458 746840152 995408890 579145061 879686280 156661609 485357181 306502405 347687045 404772264 404886511 286208342 977874856 811455776 845182677 506380831 708897981 152882304 871827769 958824217 991865490 454610928 988302679 417126192 711229046 369064705 579788995 391133450 608375125 810875033 842515540 805851100 820035477 302445412 678357163 874262292 990617012 30096130 424689582 74855385 586257677 483858392 837907322 919080492 929820839 73868185 87960817 464971874 815548706 216045826 512076560 797897959 947174487 727075935 851602612 204822404 676568963 751776204 984413388 592214323 984434225 549839345 665110693 899890220 934648071 710659243 793204310 48737032 634317759 647484601 926201221 479054506 673785368 147097192 874631576 773885287 916358738 42499734 737180608 792167356 904361461 713826115 741355783 579221081 760055515 570828408 882945171 962469527 985032830 901638225 956416312 771839444 963553673 479071445 511287788 622041908 982636628 866210959 975185481 759786930 767776269 237093835 607832045 25955913 868119172 110051921 283253688 268391727 438420114 921418044 954726440 598087062 821228306 143436929 988651631 247360169 274308078 377578239 675421729 111526873 985175253 2582510 544601187 2374873 938273962 51978096 595063467 651981076 972999340 809241539 938270170 944159189 957997339 910810246 945802759 132577492 682364695 278339795 819110735 124280382 601311799 183745069 991867910 856594003 939558379 44841895 975865203 359224154 401724314 550870560 560864112 491290135 878746732 472988691 914051479 675181920 835808867 811156645 870723693 110074199 393183511 477891827 864774120 972517375 981353061 521982375 966629086 319502625 561332876 856257907 896570242 704377599 966341237 156339639 280600967 649580901 719443082 888846970 897976332 279440275 434494222 590306969 971237988 299356372 804213935 770808531 941430474 959974871 973179546 26029400 842755065 790985399 802948507 667412463 947371379 663598125 761547688 269857920 643918113 336465123 345790078 460650553 654099388 269451443 704879559 695693376 710801954 118313077 709797587 80466647 528566168 186956898 962753582 934084794 994405640 527499088 939366365 701348101 858077562 886208767 992723845 458585058 901033946 413646761 703844644 439147228 619011535 534447067 953596924 628398436 935463647 446642623 571360859 113973416 469443015 543704914 577659749 691904098 840731663 868929262 947804321 433300379 773423050 104632609 719857732 96890497 177493722 168223964 379676766 30070262 523802279 766934268 813514044 465158665 475559710 605866923 807150199 602474384 835340526 559747724 690162361 728978178 784993903 991090113 994037308 677346318 930748266 975915803 991264878 402145540 483435911 61289135 632823980 740721002 878623874 557957172 799780705 293443518 756501888 69789493 389923930 81214409 611600195 689030766 712148320 185911133 814357000 965854463 996139410 465146213 652372932 543034611 958680705 144629815 284510303 538014787 989122218 161529176 798274694 309145827 487502189 234751849 789709210 533073951 575523036 344106265 702187081 596883435 965201527 454279575 918436711 18186932 400890039 646688663 953476549 576871832 671739383 614705623 721721292 950182741 990975614 522596904 541985302 986657782 996331771 420952018 535621089 763521515 952752115 21325103 848852252 134908409 397015814 27262865 923576732 149255242 973680400 168865835 402464540 287153266 671932874 441291892 879817064 142630200 431857732 870907517 923975798 957907664 966761480 14577348 864820602 295101597 438421839 916726442 931205579 254003018 757404914 743364936 823142491 609785488 653344257 208022205 691611309 667160743 955157896 312834576 555438272 881973841 919696966 430058435 518262828 325704019 740334760 173347094 705963960 605830711 647164921 595857602 673353934 532574019 722665221 37288653 683355017 556636530 971652426 281942311 747039695 217115947 610702271 592823470 616860178 123543090 388812209 293305810 556367379 214274466 788578744 664052710 925595747 882848722 963964137 820212935 869680975 494484902 515584498 840165771 960525305 569681369 968001982 927353781 954872702 642199793 961242665 931757720 951054852 432167481 585300136 135129689 752700527 596340551 717728977 876513350 881391067 513415797 891092486 880560980 909262757 901937462 922314052 413243528 503229937 899331001 917124594 922209691 997792086 687865301 979025687 269471842 480769541 408544001 863887460 240560742 636702582 8225924 250707739 410831225 940984608 725976810 840383598 991861394 993265323 709805353 845746923 253390031 953572520 502572713 680751717 353026586 987856556 947005559 997655124 140378078 787127280 69022329 513132042 835055424 841842250 355585883 447001938 161340701 222278712 158136963 524365470 353350075 873258263 706188439 974302486 863028860 895753809 419815779 632010029 871382848 935312476 106801915 293671028 100161047 828249454 440990401 856090865 706484620 942296841 927361340 962260733 898001424 995418955 82717538 139132675 537943464 627119143 159178397 285002038 769267051 979051816 355805107 781257526 35728319 91817578 99655901 842646298 970268492 991175546 254466450 998574058 528024469 863611143 561353082 962451171 928239702 958498903 469169028 918138905 370061707 944275207 150678721 805856522 820202137 899689876 843457008 962713718 945166123 998463792 919995163 998614499 126388409 372920394 400308569 611747933 288046913 778582972 231136102 728357088 536667396 758689981 711789297 766969571 906160594 989313407 376483601 664755802 663464823 812193355 784276531 879348355 516334871 941384253 561105856 714873489 504661343 613748681 281951999 520523946 157357190 910589884 253866582 643099459 948893521 992098807 167171948 956670697 521881154 677844861 583035366 725584389 988744998 996374885 449157309 703892611 80639985 744644697 146899260 427401132 643291216 850487473 744128294 974129161 550197726 580270218 471352779 737720056 515091108 884104376 265465024 506869891 351194547 888999269 830023028 897576017 360716689 769837141 174401484 778803054 497274621 638675541 529624603 836619417 105149809 302785802 514161036 900375086 775152471 980422797 996856198 999360296 952634239 987431761 716037447 926687959 521830756 558911236 772529126 852662855 923863388 942662350 24424137 930237919 472501460 791678776 254783327 298923132 425834544 589022151 384067870 517511576 247713853 249194693 424391213 571216184 266153180 327282428 87858836 407398067 736106681 940052814 417297720 436475957 687572386 689884148 936257923 970856252 680358504 982557381 498249624 553716187 633335618 759789570 907483887 908949120 602061480 969927611 126482110 750392588 988932560 993206074 694852471 935382592 352382326 591069054 288694426 313533769 815780377 844149917 42819496 613215130 655812085 912217812 192906512 309996972 883367828 943951525 302854526 353377052 41416183 947477996 519897596 865021865 124142655 410657844 338209415 341586294 496113949 779479352 909572644 983522274 110221101 674268054 916630038 950287518 52908021 574295438 17346763 318332791 671185098 728033133 448941610 551266403 74675197 813089952 589016194 733934857 19651701 226141097 816905824 829403044 341682775 797426215 561242353 883035589 567854139 998099990 250507179 591117690 982535446 999517879 305091326 738339444 893595851 992564284 689707154 882825344 485390779 569748481 51752261 369489651 265584480 552418729 363854316 686055231 101594175 561422280 53967004 266122330 927669783 960867929 474444161 503056900 990239662 992197147 720133572 977019981 945159972 994129720 118152778 429553109 60795966 97041899 538025011 761556737 522024555 916278477 441429321 732270131 127241540 729045541 30837486 518939404 525458304 974249829 590040637 777574656 417097901 485037487 866504589 940628793 294702284 590743191 121452601 298981108 587677424 740411338 630249719 732962928 550444825 826456529 13060851 864890592 870269499 896092895 493232895 578364055 294410220 580282524 391963216 500090760 210789331 404761363 3780535 832100658 460518526 637384294 500316339 547333467 318241956 428983796 211743279 981121443 921758540 967805442 331514059 436759052 142900867 488136538 448896573 463446420 932984008 973443005 234072842 964839430 845908192 858526911 180325101 993736407 886989079 914002625 470158469 944633384 403767817 961338229 596283236 747043531 300491109 993680910 345750923 395823018 748236498 896026706 541625214 665952773 273550905 805507572 341626978 699096763 888026883 949552152 566969657 907827848 648222008 759145630 682139196 791498535 755728662 792133512 856433737 873419597 237446763 276845372 442380305 746736037 54495210 514397552 285796876 448575483 986667808 988068814 136133228 995299451 87010537 248388521 377449314 616676233 687736645 781595605 180333789 587408685 181476097 302153539 801976398 972447808 518638545 768515607 742324615 897785844 34916389 628071445 843114647 887995049 58653889 400269580 570302083 829040477 832361490 980934028 148328876 414373431 690049230 926996023 183687505 227930516 952749188 965250589 611028883 793590778 376991462 672748293 988449387 990144466 145791405 151865103 128941193 945544171 286200837 702888064 396482319 650089179 898745393 928389932 884474717 963250443 191516565 415974213 415855600 669317247 322096912 329605057 659862519 864925292 674767514 772046159 97490959 687036159 208982042 732055235 168287999 959256810 499690161 565001874 970653916 978661973 734319672 752729171 151847879 998593624 356777755 694572481 457938988 538365963 442023517 733648313 928205008 977309813 521774101 910770939 903518121 967037575 933828150 944140278 935686121 985216220 723043114 909296278 103349899 469657803 26659871 178719039 741090868 931135277 448538201 632816515 965753332 990264789 965801336 968299129 713737897 929030192 668467640 747423411 477795403 864512310 956951568 994993289 846463473 953954375 344544721 798381485 424487345 952225969 62122192 181535321 1188874 291609917 866882478 881555845 216276841 844256430 238568266 576695559 993717462 993983500 731812238 949873539 50928627 613565996 354960331 799837463 381524072 839378551 7259517 841008084 765644200 830074447 893429590 934242685 840142891 854527085 405967788 630087286 682162037 691690553 219028239 853014124 710802474 834822771 565338377 797731362 334789213 878747639 42080616 220282351 347476358 829375008 544875529 837904431 26905396 90498627 943002611 973028864 518949035 934632596 790230654 877882699 972568411 987301595 995879674 997923662 337892072 340234889 132596024 708470709 678327917 686832524 140392792 834028033 421174236 459328483 519500818 543882931 620693280 946961646 179490129 181837618 115161861 699050908 192524936 370317785 997153165 999789262 976370842 977805515 69816006 727109493 253252707 591445314 11835773 523991517 672975588 720145015 923018937 959852599 963937295 969685202 18624767 966766633 607894014 915204096 132658622 577142937 346638510 612185739 795384806 927955095 8798414 655191089 502934032 855173473 518188491 733225340 102756203 582382630 266798963 814506666 748778319 952753005 666738595 929649096 341085270 454763536 993318560 999924642 238670359 487736185 557391364 765441396 386683121 755624328 991739530 997993148 532831194 538628518 303365496 363012617 819004338 899058736 597267296 881115850 460688521 961722900 999938631 999944614 814812897 858993047 333531411 700236672 318501255 979404497 708762905 872732648 318825796 663005788 885062048 886284127 557061608 608594022 696506803 960415319 88869503 734532264 350664827 590910625 621578709 698901846 23437910 571965145 975772549 980116824 91930988 332327723 888597872 896693954 128413286 431479557 322690163 583449312 135716706 339327676 560296162 977192273 168436135 722184498 509248100 556001530 950290028 965238204 529580063 983168055 311351215 563440651 576796236 704832263 327026523 790145302 288701913 380622025 888333292 907508640 877678279 973991317 346131098 626044255 815364980 999792862 611433573 956728247 747034571 805473479 838908152 996794242 216029246 519583996 749149690 931957856 875668887 926737496 328639919 918816847 585810455 927075381 534708901 763855279 663177598 924512126 638602189 882588519 633755968 734502374 433504990 736909248 225367395 890801880 967601922 996950387 555536292 975430646 901468861 937793485 47181951 701310212 657143997 914352811 667556537 988338682 847203741 890061661 228641923 775207594 12702854 804110728 303768620 997576411 790806629 954120196 394307348 585292854 123879922 397650806 249902370 562642264 787380219 987425390 45711159 633108167 753379019 897198824 253763012 685173062 734510100 776074310 327695291 599842634 764157154 802297811 757389772 809148463 222892286 990090049 170386012 891635811 949605616 975053559 84937313 206565959 655016284 665749825 952938530 997625205 857827246 945532086 594748632 791133297 429008424 788879582 417499843 679406204 14138296 97348685 868361435 974564593 129834723 196404052 686956768 921301021 337454180 598379373 689030578 725752826 175734103 840410322 749792585 753246492 941941885 989239014 848003967 960340473 155854162 929902910 988500889 998178786 886931644 955037537 671087658 873056252 186966960 642140990 309571774 679748983 720269742 797449554 237488190 316538653 224981943 709344013 646426212 741008679 405487055 508750121 490500534 494202199 371291437 705255967 218058667 841595499 260214755 836829145 866170074 943530059 267679543 327124323 369246893 804244730 68124682 528884225 430948252 869269196 728108483 848672421 333389648 774290535 206934348 959423053 55865434 147016138 401837894 999907414 38925346 120622683 365875066 643330064 399819615 977520180 933219196 947688253 257070241 426421700 502862842 826219245 15285769 240178337 415220098 698561611 610106477 871027667 599407613 659586295 10405485 136402183 88257475 156314474 222684226 750888667 599435070 792919677 718072923 744567291 639546914 810772643 930723215 979331544 311298235 420415466 491520820 939623592 879487896 947847882 728776034 748278616 228215021 338292046 192416530 374383829 482773548 659550487 279060953 950927895 285868843 807688837 816665782 945628513 286930001 451752620 470097091 885504757 497983686 992607546 477450430 623463481 845110489 883861692 324478134 718954912 188243832 304010467 996060458 998119403 455587728 583406310 261452411 913687539 617402067 786026926 920979965 990799490 724434129 758372303 929426098 955929645 231935360 285913791 456628626 704016710 877700319 894797530 157635419 332275905 299935504 745879344 527607821 875142444 82359857 699565110 553842698 559071149 704004505 999643538 670952747 828666665 55726481 533318175 124426536 749024187 914286096 944781583 984166487 984373576 608666129 973013069 780458486 884313069 74739913 855270225 973285659 974592457 811295269 914075303 974280853 999240245 244207833 294102712 313168252 496705022 319877433 909914612 165199422 805427138 890263496 904619011 762655077 848718645 350407994 991789714 605469675 891035673 955884118 985146288 425029318 841900670 498100836 539003947 508806149 873127481 824455418 873211872 452719220 614006316 181694084 810347207 479132868 794933981 228015202 247555786 673297385 792350075 464903431 507841006 796119110 878329157 176848683 741530081 561217481 897363597 986005026 987606100 639452579 775112456 811084979 913457588 62903452 84156810 879019519 986309853 562113135 723956440 132009716 884635566 680396542 944902282 372749294 935392927 29090645 901249627 368735295 478745015 623541357 652417279 266164044 317223680 231600815 701024434 563618054 571959344 896432310 922661403 939299381 954962440 673108113 916018276 318317955 991462903 337957179 490431138 738035691 844390337 260754289 326708415 920402869 921145254 674623907 795471158 386287112 529176900 322081980 945501281 189654713 579537059 742642599 778057947 878150461 882931234 201562359 820777310 123636895 956799981 28878296 150458254 781590057 799684546 898796817 937350718 122053309 689907488 503023543 904061924 735795982 743747271 983078348 987108457 303256579 671154789 543851085 728084753 894118005 988083758 24430785 868171917 206122962 983463145 268036196 643510885 737043101 964188880 888496504 953628628 471490259 682794838 176510131 605784475 306588241 637714167 839890536 924253181 800887882 830216520 329896958 373948162 905080103 989938551 925627723 927961433 434231787 504309741 804056563 984337187 920848357 939247364 502921158 757652493 44919010 868505711 134432322 762388607 207177378 273949465 642157308 789441170 654839930 924504045 88887240 437212237 709325675 939108974 504009118 917310611 758687643 881292381 187152265 843294579 285642415 719053467 944688712 953075702 172212149 789089205 411070669 977649896 602969352 886476357 231744846 861573164 185114747 303010742 603256669 803779143 952286135 998701038 574910651 784640722 88859761 943018844 12563515 340579320 314230494 348500379 733576780 768767522 143619767 834603298 11587078 482584023 867951509 875529772 550403673 843106869 153168623 981997720 677753705 889353688 580245789 726699926 945660006 972623784 553295730 816522796 891238459 985636314 563021256 949023758 135083439 873776177 385821082 611861643 178998826 855848899 502954139 742745985 797111590 902572276 664038869 770877950 725073640 754141013 74108753 942793398 964750676 967391752 314473489 738269532 456613612 875425603 659935876 700191110 662963114 671577996 957995113 993515211 439124871 731837007 578189757 696637199 377495671 470486984 897675115 959112150 42466431 58420360 466424518 753553847 317508465 396402335 913671371 998024369 776045559 990836645 120584151 908888476 951273191 953331868 46855350 559698515 233053981 327475615 160258182 430972164 539319840 717884916 411363455 461264346 754277896 785806856 269284186 947976162 7703104 31233754 694404215 874298581 143133001 817335905 729587468 800060363 615407774 639940525 263031971 775146704 460495307 670331523 507063179 836656592 815280245 942897980 8131265 858513232 263421998 440853749 512392 30280489 273998455 381946669 95357888 554069586 784623572 821039861 935182397 996828325 3777422 232637451 344361827 770191406 948151573 988343219 161464638 740571466 328195758 628633978 973646621 996404433 523657811 726015320 863453683 944797060 680876716 970851268 479894446 525615036 415854265 764959633 959489720 963926482 419391960 653666857 774283956 964974653 950279512 985331830 449387577 983623872 621064957 962782212 826260236 977983785 687117399 693912096 545607999 899972167 351931089 576341239 111215309 967593291 9452501 550435352 71052740 411295643 976496392 980300695 436795493 501304357 472530892 999424837 993746001 996675134 655158761 794301976 560433533 604106078 800915504 944543993 515905616 596235324 857386430 868061609 32711419 281809026 182694271 373897074 237489460 339881379 883889019 957439973 791901744 955839508 312107190 714650779 181335855 190715380 67088040 611826343 451815827 899035450 839883847 937941080 916706331 918596487 619505746 973068820 608509656 939774159 912904228 979476941 263006988 499419208 105775660 903662424 866626153 904976407 166260305 400292876 677730353 922638222 514018487 887652130 79637930 260085354 853923208 873057657 33379291 568812534 684630966 778387283 494444545 528971234 223982579 932964830 257473977 406236704 436262131 631663478 246955332 340902224 455427735 841147619 710275491 933405016 337228813 806739139 124012420 829931838 598388629 979421954 86879337 157692149 395483300 395689511 560004735 996496065 344146400 512608381 326318814 781537929 571097647 629270548 317164030 635629773 294783846 536899223 425890700 801552142 889761090 998993705 62485600 101793785 121294482 821698861 718710291 930290392 967961209 991611240 504038046 752782338 909952962 956206301 223352274 562272482 489661637 959488591 305214490 445548138 467509076 758630861 248452926 747206239 920862438 987687381 467254871 751216653 424243647 850010190 535377731 931849083 755062491 798184454 10593828 451368418 445917551 653961923 507007216 962320926 42849982 702544881 952155816 957792109 560708554 568851587 181155507 749984811 383882953 989112488 534288583 727329856 182286268 751791321 666215969 912290916 705142273 785193924 120427460 985663788 745119465 912550726 828353934 946899060 393475343 446317106 987084376 998225040 532157273 716438933 423985763 652210540 751662799 780906780 174397000 817728198 653975153 893522152 409300100 599216647 236433478 243821992 233599667 395472643 196832895 513078219 899457077 929904534 362498612 388190976 154322725 912508228 282255369 832010766 743760672 863969849 334418727 723391014 232006309 725420035 155541265 249209978 673158226 788322160 82831389 706981678 912085924 993665767 137272367 863087953 209055283 455843989 694500095 977520755 405387392 549358108 682269611 891865736 705428130 740283139 159957128 357600390 754765621 901937078 747149189 756626838 795859712 921189127 386264575 435789361 962566180 963455060 855315501 954934585 61277639 638097297 209361463 427768920 504931448 603600788 539204003 758776704 970420411 975998240 574415639 919697976 196407447 378250617 714017372 902651722 830426989 964083769 383294391 600619222 285804245 550460267 391897363 615041781 186338950 526713010 400509563 473347282 78103589 629753141 68201116 806035419 36264779 691298949 763884928 767066134 579846609 941270426 757856078 890097258 131337793 212684024 437077162 756499756 39158158 283722712 479640642 641864202 904592999 962219918 792262591 947043098 956187273 974049891 648291717 800378704 890724104 895146180 401462666 614005669 506677054 765071155 304440604 477663900 450822905 658395596 737737338 901440076 121130151 305076393 972501084 998132448 902461837 923922039 998644741 998767941 530550770 620308011 823679372 878035178 908129416 918474304 603382399 761644203 643028260 830450997 484846227 657226342 989386345 996282630 19797252 110787155 808119059 904339979 698160731 865691777 531883453 730469382 859770590 921698806 506695089 600976918 567475827 812248690 597320066 998005986 865818389 987177274 658765006 788509755 167857202 489522197 924044110 936225464 659640444 948272305 968506816 999567771 166194964 182169797 542363573 660258299 104380745 976133508 600418757 929787344 579643347 930917408 222708362 703416384 473519044 789460195 71379304 243266568 913185258 981202905 83709321 266404405 231656695 382640730 815593755 975770943 660817177 915881404 129098325 215357443 338695837 685713495 158567379 907474332 699323546 783679505 187703230 593080991 32041395 337312079 757134336 788191658 958478294 989460260 488695329 576126006 750483524 781341784 134753087 930110201 216127473 983947325 269872329 959294916 455239961 900217223 715134446 726179978 537727494 950333006 89301924 747975091 956613658 981618920 100633067 690035687 903110987 940423494 12576528 746333027 487118147 713001538 489187910 596119962 859693578 937514169 710478790 994590706 390866781 886277058 85096072 705215482 978396652 991369804 984090757 988760046 113909155 142756918 750971238 782226461 647170083 776284825 718134455 874365518 503730655 789695221 888072090 891354844 32807531 219643607 472052245 930594678 840722977 895102814 138843545 706938978 872521980 881168702 830247196 915938102 163674122 466459460 806357768 848694962 315887449 939592834 606212354 885224789 333909402 696985100 861211042 866891880 815106703 991674180 131006010 594134905 278445327 790582407 993534675 996938628 821074395 837019138 592037868 668443012 798788805 888520052 435485535 460827831 716579634 912198071 918291777 993863563 306651780 379941589 209723992 373049531 282630142 479059460 993985908 995330648 51982749 642328173 664196112 884022283 11744226 610199535 178128620 671402798 127739769 651623919 235256314 723059408 124107968 907980315 424822825 723554867 327358110 660623243 463790721 694432582 430768478 700319511 717730109 861034213 481275128 915514475 311074935 969517354 991493969 992905693 333878936 945754234 641527247 855643688 796849808 877098274 471086682 725582485 700141466 777946415 505421184 835236434 695346655 932596130 855891652 908017391 347973634 904329351 207875930 851052326 115782983 324286187 449788400 859371811 683963387 753525308 282399004 827474202 30106484 928415659 187358630 940106304 596616962 745287922 84778629 466235097 1959124 126539526 419525236 856389265 661911813 808552741 801271637 876381004 233347536 293096989 943751135 976418904 299455381 968459124 242738273 393490514 848908059 995707111 521795500 952081859 853071744 960408899 960910534 992703135 790537289 892669076 190303411 609423660 513460970 795711137 591986696 886578035 248137915 838112916 699632825 943683552 669934223 682495676 439076059 746206025 68095455 81456429 981355264 987628637 876745836 913443674 725608328 762432027 230513741 837277738 915238803 920712145 347232891 964270358 52478694 744419166 623140235 833639677 766863430 931960484 111895745 172784274 645460638 992389602 758041846 931842137 387189731 565525266 264173504 605710450 203605706 951376158 760100356 982455797 743160541 991891870 134761674 525308286 45842969 172735722 954443812 974070506 82700989 741895062 961294172 987082072 889011405 985612181 531832074 649853382 513090160 605269528 999871074 999942588 249208578 810564149 180653874 538207084 907816902 973833591 358932814 465656444 947327836 960028139 680863532 994206145 137251394 538493563 203562111 716388126 212224524 635087871 515525939 608281439 911644982 967623178 150804290 706765244 443938565 459258392 616908788 805390100 103801620 293660394 634509604 735324486 357553050 945906400 997148215 999469854 659961165 926143272 591131780 611476334 738410039 951169852 115369394 342614979 316532925 537077214 380305866 633845984 354958692 789180985 156710708 560562397 731113202 993634162 685647710 966906825 873376694 895114201 699416681 759624055 309109754 581450230 54296076 675994283 387026873 923989682 661516127 903612029 117720556 944054412 12949322 20025588 826136827 919035471 377101321 659200255 147606478 182885791 891231534 983229187 774714428 970348135 578939988 767681154 277255825 629952716 904927886 915060159 60190356 864978167 524093355 817317652 547434729 748964456 214959380 833486244 106571658 380063164 546245307 620561228 142987651 213234497 425319868 459561290 852157023 871080765 934628012 944147442 363140011 858890092 56835855 681340843 686758323 944422945 978204701 991061068 655785965 937344535 844079421 879643439 164104525 884768180 898656345 980421572 601372030 890908386 922528442 967479689 848545786 851423939 896928488 965931939 202837027 737637444 875901839 882474650 633623742 762373703 201662496 763408036 906412392 951780811 549975585 588299687 376150596 907716385 773584038 968141136 477783131 958052245 736309776 889593912 61252553 134873044 608420002 790869512 882061840 922588531 661961356 994368568 97472861 964889956 580658644 732409957 584821881 975480985 494955453 887970877 600781295 741289718 664945241 745929951 920618859 929579625 507962122 623998717 364090585 704876140 922154576 995123081 856799851 936499897 377134467 524976308 615553795 879207860 13415789 618358467 790809128 941056797 710217658 942933613 728391081 942131004 485334770 936397839 145289481 323938293 692451469 825131134 304839132 332808569 688629783 836266830 145830814 146636612 450551830 859007056 895577944 954587773 213643730 978290873 575114028 839399611 177409409 208794784 352670935 438364021 785551408 891809894 4071844 792480324 262317578 487048994 358007210 839630554 56375179 638020409 805000080 840426332 903613123 908669487 81827605 387694733 396774782 579474129 747502006 814269037 974972055 982932519 887890124 891179285 387704371 643763663 203384227 803573888 56387030 997423519 473669590 974886004 317584568 797713278 354010020 431025485 13801789 66216757 638100105 677549504 710825584 717698963 293540276 670044916 6221536 147363672 430804739 644254355 195723618 680877367 679154087 851472912 136434695 511619883 78170552 410967651 602724243 823343390 770686712 894253824 179229661 534282097 262218965 323637196 544340934 646750718 967154837 985380868 971621810 997022249 864402138 935904948 116995280 862360665 65343819 354624326 253684819 525904983 926538970 990570683 589664401 839338329 4729980 345918678 814312733 956671731 344341602 375854366 167765644 660358265 345479114 757328639 398700121 827421934 640450179 805986037 178802251 484468483 122678494 171610677 767939600 918369885 293050130 610248171 385298622 604557046 279465275 844651684 133522126 938062252 917773156 931704377 935040870 960828274 486603408 546542406 267234402 491047174 135504750 241705976 575738124 765728352 206797692 229675744 483304802 601331507 840456135 894033943 767890245 789965458 174767537 626905988 178856555 227088117 110086292 492238889 92882710 714341079 602578628 812295375 208034962 745780173 744656764 751036667 132204689 965203108 442215185 456693801 492832253 767912809 367039271 959666101 581606526 970460641 189649048 916441949 322834807 833688151 134613447 761538691 620656939 727226179 516619865 819566272 685724837 993711271 765401846 962134624 805069286 978984896 768951789 953500265 933331973 940085349 250505849 640056034 181429220 787511547 931217544 958068691 695110193 750832755 595255505 877581036 807940392 902170932 458630042 672086255 847759587 912778364 191273249 971936194 414196161 851426092 330494425 721080163 124322695 734311229 711503703 996421711 468932811 473066033 56323664 822517654 967741445 985823102 662162592 969154301 495428610 730109647 17642007 115145284 540344183 897458546 554740551 576090944 996227927 998362259 624582576 626040125 104089822 799845920 433917798 912967311 682307266 686646870 133258546 433866129 933728882 975248111 381085613 683563147 198257840 276285639 896989532 927625330 793397326 882115905 983851174 989651808 79220756 528883450 592491635 796340143 110976985 923539402 911873257 924320022 805894695 899489399 793156340 899290879 20599142 129531118 443574975 680743856 714204355 974479653 739739233 775286416 815083290 878204792 285906235 626250982 284529432 728518690 148003836 447746924 895537757 973511734 934653504 938482343 67153687 540845884 633521417 911138224 707504799 781500288 879483629 988420307 535909484 926423259 539223945 590372425 616128229 639866856 343743330 492312039 706085053 790900156 314618106 364607241 417877170 727909633 829207925 907481376 615190789 998734023 487898705 964649034 27739019 288132845 592927135 681923409 700666846 755909659 119161318 869875997 420926171 983817143 551090141 604154681 792912852 851287357 812217184 878745114 476774014 911922938 548009493 709150765 828272383 839742692 339834725 982175694 917081609 944610761 13517008 46599350 945670032 979631863 347649080 476797953 308101159 804644442 7697417 561589428 64568871 622422716 291295178 649308006 323339589 549590791 463783165 997281998 832286860 980505027 965829307 984290714 203418512 848551410 898337486 928015422 397878553 464518760 217442706 296339146 70568312 989006047 857756662 973761962 210204548 356618849 327009432 705157824 227608211 790987534 282011738 474381605 504217447 828535297 961035103 965988042 63002624 351697831 228767526 626990036 416598159 835589288 525347496 961123219 192016541 298026346 545280442 857913486 779607127 783530219 519367326 588432897 87034931 813566904 651196971 740124537 57112181 766889809 337741450 939463849 930151813 942316879 45157315 514714230 161696758 876296808 946102705 946364068 290650430 333731506 826764824 951181142 649656201 815831998 533482239 685230382 249778616 967952964 561422818 658349637 706414031 998650695 920510667 963010800 5053085 665656420 103274877 923007642 317551420 439039696 448694706 452503447 250439673 582116167 859538002 867701475 807595410 979224775 99999268 117113270 658510605 707313539 401224675 736293374 679091320 743807413 146004162 231678874 271182389 960773340 582418289 992691313 285882576 988155481 535765978 662452849 810948329 841206418 879471127 909754086 154342672 619437366 819512401 850018444 477713291 869625682 513450082 735379216 74357693 150159745 337023526 854127124 237120455 698791147 134182376 312852784 274522545 557135056 596832351 812749294 502350205 703495593 245009250 760189914 229860938 835182644 771021543 933036833 301625458 444404618 629141274 751959574 543440422 828631704 775231048 835777618 365539319 714069329 792456041 793422939 861180170 906748232 436054479 603518881 335912375 353603219 990867289 994633689 759073735 955161493 196883543 596536771 622479670 995558095 922328483 976887482 533681326 656971779 589913809 844277667 770388016 960164371 903463994 939818600 767814130 777193035 839611342 962136440 752537381 860230468 754497742 902091050 754052266 817697989 382153652 972639304 775780348 961458356 602937909 800921541 194272878 274592077 975970896 997865382 942648303 973683953 789162073 928813085 234427545 366693943 92312363 273665950 898186976 917772243 906570802 938859994 519046659 904798155 524609414 991963053 143038287 789462206 520414630 643300799 772529324 945966959 215260626 525144768 571905813 961679852 444150918 458423590 778609547 938516830 269473643 296858188 820618514 922535922 524347460 842159859 403867712 642558069 125332500 689510447 379335985 636245702 679118376 720123245 272327557 737911468 611702943 982096080 865673301 921866206 638714114 901064764 64152098 885997745 400611315 678120712 224590070 436046773 437344378 847931265 991709429 996003131 193660160 848262944 735523768 926687756 785529156 979059681 369019917 571140373 740757984 837643521 115932116 633532524 999880765 999946993 189229815 249484358 71111836 507595725 779892704 980604394 940968005 959572504 369395200 460997701 143084173 739406530 172061824 773546836 576700526 952838489 829026843 844012869 224209830 445636987 223786308 502484162 336973479 620197497 34972927 821791853 443075165 709202427 915525565 964757173 530169305 937586242 451830601 724407995 104989607 684826660 803002266 863061409 25523451 860518646 824257206 935294539 477014912 959329463 120448723 420920711 745035915 867939682 772055546 778535943 569164426 863529499 330679381 590125286 201097329 644687609 488222107 921477505 838427069 894774118 657228445 668779790 880639713 908480194 791242375 983327065 233300544 663637802 103417260 224495962 955878663 997077278 39609982 508569779 999109521 999252626 865614176 879314147 145572039 360256045 936051709 991872054 396256790 839411221 693018240 827471635 676437414 985131897 90239833 939302468 924082772 967970397 512219301 757930370 532685056 950065855 912691548 953498426 736461772 887775901 389585597 884780766 79371284 327900066 369676269 508370724 99539187 553066081 849786397 908990895 374732072 521112178 68512564 230805291 255552287 997274539 445784012 491525735 797333269 983419279 301641056 812792900 653952472 837370464 874508190 948565757 290296153 312219622 697260205 977674111 7163398 251880301 808851210 913321447 315383232 573279883 525423246 865834769 230891058 703589799 888368970 974543213 211752768 566939718 274515476 971800598 762219851 777969490 941477309 977429473 501924051 917584925 517232252 884886074 798920252 984014190 633442280 973715618 360442753 996305285 789274729 852494743 273800972 477462974 251151583 827473674 515973829 889563673 448670840 793773658 207731751 888838123 241517142 618015981 11539858 940245430 72409287 525823391 31431042 354556323 532199646 996693986 232647965 595297623 794943527 878443374 61395529 219434180 502259507 552491305 914788440 932380617 956042578 966970863 553998201 929959817 394657171 714232231 598238891 630058320 853626834 895811937 829123106 928105475 752146502 913905122 609816394 713156958 495096670 540310293 350488706 871062804 301863930 984839555 660665832 741505149 194778554 496269037 374369012 555136126 395250537 676152929 75584357 815204856 833253418 844375611 339664084 481302224 934794339 944594825 472871313 743608054 270302130 460350146 698322433 713644360 950999278 968222177 554508358 763936507 815657121 872267965 90428876 348304094 54933808 711924296 729596659 784265584 705188041 790214061 309611093 863452006 588612310 895088848 875147360 893485928 454484784 534891156 148262796 992841416 454366106 889025309 223792355 577682218 994143284 995749608 574228652 969981961 208842171 686179647 368767674 481241812 732601645 921274019 415588310 917086495 618078049 963215386 590945763 629017061 702445765 829396802 868554012 868558917 376965633 456227054 89615836 383957974 508046944 915963812 505252180 948410258 314555747 520900080 142956823 510863033 333024332 694339732 664587640 778501597 174768722 305635891 482855538 827242611 697169680 824956494 412219443 829306902 778738104 891589465 328772955 865849325 511236618 597164470 451443626 799109566 578846941 807831703 30917768 441108517 682805577 693635533 443284194 836692324 758386379 903282205 582344391 756581471 636423713 781633463 507330748 705607679 941888197 970731173 773581885 859011826 634625724 672761758 479583342 722343472 880930971 930513586 133081493 651005901 542090283 705864066 822846435 827286361 110640887 949819418 997652974 998178197 341603738 666321030 230921459 917272530 589754867 718206025 75760482 672522639 461951282 488320909 604656020 640735120 196095982 729476948 759732484 812696885 229278790 331751023 458455730 690514966 931066631 974825342 765387900 904943541 170347169 220135627 24692920 673912150 840463738 870587482 845242365 949543329 975131835 981789543 181922538 563562194 190193695 538581835 12368114 39775641 915250736 976805828 855902488 865970770 237423934 855442744 605533748 645723711 292700471 619511845 411152925 791710254 995399498 998503516 311628901 939319056 457302496 951091768 773512194 852509429 118993107 562544179 324510474 875874128 804053819 930246529 599223713 918651316 991268209 999325222 456653730 465551989 397881927 785127987 139428857 503454410 180407517 747048213 439569011 921359142 762059625 852423367 426990504 676646645 274352590 797685568 712375786 981726574 655157836 721289327 460099933 854216348 883311997 985677149 993780920 997391066 28511001 522176421 638129816 943149903 15921196 148533936 88669003 890241042 550044456 981958792 824572409 994257260 191044247 924266380 410784817 838916115 767853373 948858782 370115243 502864232 721489513 903447386 700906763 948458709 180667238 455759211 909869014 975772826 659701893 806459074 96248128 532207342 955617764 998898914 732836958 763926088 834250925 898032013 229020053 626364285 509808819 983449995 60718583 63837057 36423513 224268817 512439380 676537961 781563157 823474307 868880449 883572171 102938823 975549320 843447703 987582690 147927163 793230919 297024342 763208073 575641925 724027992 128061089 568201226 990737806 997575976 742439907 828417891 625268252 667541065 356393562 578183045 344561746 744928718 605270326 767283162 69933940 126911622 350411315 889533293 666348293 968232155 236632299 665022504 946688389 982460969 189507379 244936082 81995986 318339064 814933553 956521946 358485701 733678220 704810519 905990580 460352281 913319779 664066527 943021537 546478820 968084013 828135338 887753752 848120454 957000493 343993362 770208495 787871885 868937226 691664014 788646252 759208764 783086790 106867909 989835951 431806552 542152055 156652176 554948136 41736645 921182697 626544935 746468336 296727761 657389075 576185259 676589811 52152776 559310988 964626888 984283487 163377764 784521778 523575133 644709584 253437350 608446412 564201382 941636762 117838179 880657667 549036367 783723392 915009006 922374654 707366822 751874024 762568346 918480151 5412580 509725299 741980919 907662377 721714044 850608416 227342893 350271882 37807462 187297926 894659016 921790558 879182250 991840128 749663596 989924876 397668194 974193477 173774922 910939215 845787135 967406999 744128410 894872558 601064568 986833909 862662147 986189447 439241244 868423132 174478540 596483128 802622549 838245453 99253830 652391964 964413137 976888565 515108188 550415999 209754396 733184915 638682663 874649971 120851804 445301322 262151943 683166936 287496358 770498006 82397242 491629190 584957976 746109515 240068720 250149159 639203628 640102343 512007057 720196268 570490482 609330625 298867597 690883790 416810928 970878235 362666090 659713045 844931593 970663339 366152354 642490826 630482008 942780389 499906690 994340767 364182996 775827246 240483971 522421799 573472121 629436500 222534100 631402388 753115381 884593413 630273768 953904406 355526437 657032371 925222004 950800736 456578901 583417976 67928556 891272294 488146268 591256618 89796023 553423128 209745350 795455485 457482897 724142951 74943445 786984939 333415117 464359942 935490669 966192645 994697006 996867078 954536356 970857758 944682620 993358356 600750295 874106163 776182471 852424133 703301109 944145551 293270534 737669837 97633128 680908526 257814605 606536754 363667210 614473782 934139999 944430728 67396581 500074853 626029667 968226104 52525462 554032244 759324052 979751529 819240469 850710162 318077626 917687567 491454181 671055566 605944226 975460599 850940127 866424771 23049659 735449358 98441900 355489104 158607012 490124786 347347231 879749825 46862751 530580851 222748802 687834437 547701816 627344018 915454354 957078683 188633490 694190229 286502781 832789631 338778204 996474210 16385329 947582083 731622464 787504066 212148394 799645638 218380659 946116557 147903668 183716468 561215231 969704579 254918557 779238150 878802341 991612177 52326678 235332372 971836134 974120922 834433091 862711636 187961401 759609500 91300897 414970262 105075202 489864427 29144535 991431302 19052565 526851780 528727100 931194747 2231499 800141875 259007325 438702519 874260596 954218906 133807417 360807223 616577250 733638955 696914938 866027704 163830709 723948679 242285686 527524068 458539333 762265797 365409390 583416581 898749830 940277199 291465323 598694529 855824058 973985382 573722490 943987551 877408641 970826277 743652434 911875521 259506593 925267685 15371546 179812921 708496930 716799010 398304107 916575510 698371526 985655754 379561171 489997517 908657367 908846965 110385412 135672735 37016849 365325142 91351814 211207426 91839444 385238590 73013898 942674617 766298046 933957722 406566812 522918606 611841469 754072692 573423809 693704078 533048347 699585499 328831657 985191631 541522020 672335882 476582258 653176043 242364974 838682370 845898865 924290446 245731891 614033582 333463252 960586190 909221313 923584625 545207059 944778785 984297709 986006046 357123619 866917488 253790629 747891601 433626331 833711503 313866001 667855604 441771244 656568932 937702134 995881761 351895502 381967919 9923704 634255713 264773000 627748253 206172137 731559256 27746419 73392733 631806092 739207452 594547866 789765497 418666592 606625590 282652661 413042702 412400036 557875404 395368436 953820839 114219867 910025748 587246326 767409431 755564882 860046763 136207868 402543452 1810699 594618388 806861881 854063699 244440000 768902980 1023137 360672456 116448528 716900128 687320175 705502746 592637233 916073510 478636085 729851734 103862259 980148998 739610470 823646917 756770487 806201173 544015992 547276650 124961235 455431440 565923285 700387458 182227719 835356619 116269098 858182389 460151201 756208349 657281283 991375323 432956041 568129042 603720725 793401920 181313109 239535303 297703701 427750944 209938294 799322752 666176442 899868753 161261466 542939990 994303907 999513837 176332357 327727412 723681927 757811057 414531696 492103959 939955109 971257495 218182259 978344631 750706984 985560115 626081212 966134360 827899844 977484856 522198759 944332982 389111333 425385695 203506140 673658316 308613713 763066291 584750624 839410558 657256737 829024800 266439487 857465703 632298381 755792108 380522077 578642497 354541983 466766679 518803041 909929214 697136571 750638582 242960021 884159391 629838412 919634096 733271182 984528095 107997925 907444427 258449428 697555555 643284086 928022983 186032170 246898977 533318048 643937259 31577162 133014999 485687335 825565529 504870379 654485650 772714162 931144449 591479371 690001817 262573443 687410180 157697964 205849321 52665100 936798803 611590338 924545535 782575032 823066373 804211465 966557014 543801208 853728883 78489349 788639647 539333327 720684026 470389562 683512830 13560116 21257507 898630163 921349173 627148590 947530925 810026043 946461257 792321036 796635698 322742243 345742023 793052538 853668265 1800570 268437036 952724989 990389430 570520459 822330079 123906605 398253173 362937900 428097307 204764455 701183820 158480345 328377041 569491050 993786441 138149767 642873253 266569124 721451260 207293211 965189196 252611529 530059821 931678265 950019581 37510437 421967066 646569012 955513072 887602292 929178081 805354297 838177884 706621897 747426506 145480914 325867080 983695657 990855776 946030250 996659741 956740741 997411251 956510706 982118022 664319641 774389329 187088493 898241787 242994211 454823947 803382241 963594208 810761100 946432004 592854502 770453518 42432252 682656381 219998338 440913614 218327728 249605502 269793135 553407045 540693271 976696111 551286262 771026445 684128555 886768569 166409009 176244113 211415222 631365869 160726588 381174580 721773309 721902481 239848515 848092585 903871849 945114589 556602295 985160227 50179119 764320089 796849538 883240897 837716198 988876169 357673936 426531159 895452182 941263558 823041814 982501157 852199623 855230480 607781756 863240368 470278688 846423297 67583688 704424803 554662854 617081515 639706730 784660589 337616891 526668212 236276007 800903730 543917176 824357880 313115916 499976362 319356549 368754431 88940020 510100612 869268860 959280672 688105912 783996459 281055033 836587733 712607579 748362355 560537467 744669114 526877741 569617443 552089307 790866491 297488369 347495637 173949217 428037188 31517804 251829340 432958858 501293817 443689419 948006376 216288825 399571840 406718175 749687988 56951704 937529272 737245400 790603593 485389090 774383303 99594482 867926980 205880475 709315027 425159440 851793915 868119239 990285237 245788625 821150118 792972270 964501673 558489951 703393500 814126496 819799063 95158567 502860328 866009114 988253347 961516607 984931042 144510285 672393837 634206870 835045651 933624077 968204729 33078087 811754301 809429752 997757059 87103217 905215485 92695330 447212833 730166708 859985848 727821298 816956294 94605588 297471718 540896704 836825430 488365001 773881270 718173194 818625506 556463464 862345750 199355468 488518763 788157386 959727295 962433050 983556149 467180588 751946116 254084392 993358827 869858049 979560530 693161587 969772293 366762759 466884958 843575458 960975444 123160975 878415848 128130458 554594870 921234295 958002762 592369077 907420064 414790456 458916869 125266274 177179391 44188933 739507892 466487277 760945976 606065557 653866078 71846802 344300879 467437422 595298904 964532483 979793179 700891780 758310499 847656352 897732674 74264420 388857013 733114707 743577550 366604775 904452172 540699599 676260708 386348314 413657133 478461826 919083477 913312072 948871669 253342616 724435297 350737821 862297998 746991682 957489458 560536799 789150784 135311838 311265705 724923324 887215425 882646604 986415514 786640323 856481575 201121087 561321736 902320873 966409385 726761473 880430384 522505397 736209345 666539019 692650356 232520215 331753783 855438156 872328159 857168199 950524348 154025212 417502904 637382938 665130619 166781713 572982561 870070656 915308455 96623507 305985336 723511220 996638295 37974315 108125630 514362077 737869252 265578281 717886055 76987236 385183823 346350947 960300035 497470602 633426905 521868084 898170664 628196575 691600853 340929034 855248639 703704819 970328490 388323884 425733766 956725622 957300765 823000691 900976173 676511351 779548997 584625520 864096394 704888084 938532197 566377935 860234765 772312629 988587774 900823384 948335034 991807321 999591922 221331645 949880606 970156196 999961042 868628698 979153708 862425523 929164787 118710747 503737123 287548802 441596803 492683892 710282464 518687364 533547564 418440875 420427701 252273915 668514273 964348721 974346650 135534734 723452806 657751081 774955789 778821906 974083590 947852168 976898214 618734375 927754747 232688315 567481429 982504079 992046967 568526595 794987832 674035400 897462906 863256093 936416117 19171973 378699209 907495697 945838331 961632704 984528979 90788708 425751684 994371853 996309538 946289809 965361337 97006931 591643706 765352900 820817782 101330701 520605554 454088579 925328964 77646218 796766952 982072938 999358543 626121133 959345658 156350792 276847997 550175742 834887884 150370378 384973748 760070088 822213969 107942121 722081372 279974488 713799716 311409180 658085085 999387810 999629589 185417991 568457615 865261633 984298864 894287260 895410939 557621241 662206492 402166750 444897006 814165607 856503271 733498305 854649730 460672459 477618557 299946981 699017970 232664001 364304409 674525485 964596591 531816969 877123896 694086600 951253207 580904126 585422789 739631659 967008486 258739121 307415978 488945228 565233566 497264745 913647695 720899007 921874178 303251194 972029017 713741249 985127459 582339312 748182709 965236572 994376128 894556880 931947325 374545276 467639436 471104315 879887911 237515170 537560729 912395845 962033954 293297397 724727766 42472708 719811579 586290255 955871437 747465613 873610472 365190316 741772440 5265318 266591235 332564822 548862433 850667617 905318250 263537266 421023350 858578200 995622827 755456456 877703034 851094519 920246631 372939674 719490198 547511899 697668776 375777191 831064322 246700270 576502811 544683634 777088411 40130963 606564875 213745636 593467930 709290511 978995564 361280381 586958671 955609861 979572926 980300620 994720806 811980620 818829539 421021937 514516175 340058194 817588426 719520377 945536903 281297709 461614825 822104211 872916723 194557091 413112340 775943198 836316469 805346036 949574018 954093501 999136750 302798162 906622213 91298861 168523182 123981958 956925910 731365771 835176215 294587061 770691784 100207922 426448793 614673622 796159749 750432493 928695111 386438860 965240035 906550024 947410803 254647833 600134384 245595395 856370559 59590762 881270855 250287566 852602231 592706360 726069533 619381152 688604475 260582540 423111424 169734236 317258764 568029275 948566256 405465213 839606741 813869422 946701732 678770021 781309446 688019584 936237539 764991426 892914825 106154217 514761983 710411203 836631942 41914462 448526333 829328810 891485166 929549772 964041890 472119227 648638542 527448270 909087398 572033740 958414377 888915769 897811930 256275420 282788414 397389318 600727306 684954258 710772019 930440541 959303159 324077460 862258448 299720454 924799609 957193067 979702610 180960469 391043743 811173971 811743792 779393310 958542709 252337265 982882825 882022859 897761361 426381261 630778325 241389119 861299804 40469740 790247979 655950861 954733721 161267160 190029723 850708383 971182562 680599386 950473425 396723917 399434427 895447881 902081438 381393009 610064060 202847647 485696780 886911669 946744220 855670001 910509800 405281801 647369786 919685081 940417045 947896090 972717142 516192544 583011796 909544227 957471078 682891775 795077946 350576438 367474516 800819897 854532159 886193793 932455719 173631137 820083726 532412127 895158749 458537833 710738171 273765070 350372022 45771025 281899407 811783629 953542832 783111069 915905722 406647634 813540735 934605756 990018336 754411539 768811808 269131535 961859952 593252950 661854996 334610656 562517844 675163764 814521702 633562574 843157299 58516474 913456648 987386298 994240587 591456764 600118349 819252187 991509741 45010214 885794350 217808191 298135472 314492742 798803286 260096207 965703823 789593839 979927527 126733157 385626818 35924516 960047344 131619357 797779150 630173819 869802294 943114640 945851381 556627189 578137824 110537850 948583941 825391135 976536438 630215401 839777955 233607491 611901014 962125084 981086547 895060580 927214313 455033097 469987524 738014591 977546461 782367886 784604830 38621325 465025238 126216458 299253741 83143218 568514569 201443675 871970398 550663108 999854433 804044345 831160596 439599306 764693216 626338788 839204396 457057143 831740496 651986023 843184390 186458680 680514864 242033039 456948465 233265210 616374028 594934913 957846690 197004616 490156029 896404299 982664207 744604283 847736408 59366343 829135533 450640803 592791889 434529490 947878193 485762694 926012585 722690773 868879628 596744970 737791040 952566589 953303105 954681630 974443517 477354378 552268360 483737486 744871819 754845603 874723830 852812624 967006002 581381735 678943717 616450440 979062796 567084280 908554352 231562206 628567986 808558566 892950004 365511390 589573507 569879709 908444966 148021282 482519562 79240000 797873912 15774069 206273348 604593777 654514352 348905223 939656590 69213815 826809144 590370192 882387217 286783549 384994714 774208809 984854215 97530495 668742758 555184526 727461821 605584215 698857481 897720285 964919448 959634913 993124598 466530971 560970216 665067492 986722309 981690019 998490047 155263192 769473064 602762145 880328710 385063578 886219346 311450264 452529271 883386157 916486367 415944384 482772732 760862571 828104492 434567111 514204600 48264995 184251712 344918821 791019137 281712752 847321363 992329227 994292586 277050544 746861567 889979152 901179221 185886996 223630844 65072998 844343872 172854021 862680673 127750224 257226771 841716634 995731046 222023470 786320415 365693226 698896160 617589877 767393832 366870176 844631907 23075143 169024501 837747751 902619615 271182862 282428767 947925345 988643884 415750983 687765372 19834058 637516832 390484299 640471317 780231449 808382966 74796934 691392427 968989319 976239244 676061156 685167818 186511862 435652666 214076775 859982683 483988423 782634223 896863316 947574532 328491799 680941241 163442468 565713818 725043040 806329227 371555349 842322363 353185101 970593117 975249555 999838876 713700740 717075805 460477348 644932452 66266352 177357799 777010337 927076350 118877936 669391209 299677245 639916404 388161932 446827489 285675187 487196676 170324269 414491896 899445980 963934316 884771138 909230851 880549682 956863002 456827140 927382147 466360956 637344303 127104365 382395786 856987383 966921046 105650298 395754369 797595595 806454104 456873150 702501088 649808634 759359185 792613051 952889432 742771776 967269863 681607274 943893345 328801315 723604406 712900891 997862874 334866842 725015644 524089853 800907266 952798387 959842787 294444555 923480132 906867681 967283841 611190906 707529813 132521682 848146810 715052092 864439255 792808837 945470350 175840975 853161553 654917233 935677134 714156266 950962921 175256133 749002208 416982544 735937082 45445473 186666023 193431819 437901368 481309246 940898643 325990598 330487833 362093010 434575264 499858086 964390068 215329317 663486889 282206362 578217446 675583929 826200115 90137826 286261380 280410935 710490745 856616301 905358669 952639864 992665002 682087750 777770791 442489206 950403826 676487253 690251404 661759087 916514236 191012480 946215026 908266736 995169445 143282057 946335296 993941241 998954941 900209061 996714372 484328402 766356051 545341204 856232392 279474352 410667504 592894429 714407703 313593998 791250922 433081552 954653365 228577962 860046493 356529061 996986156 330860983 537221746 149738805 863035269 756112166 858463867 331082653 788020351 846457861 972272581 755834106 959566362 997601044 999161670 942510476 977329039 188901886 335948826 530426679 875847018 288437787 534068517 539556360 977033648 385624880 607829314 442309829 725818312 510665014 926831993 745264822 919783806 108200437 410616243 45111917 725891874 25088491 662921133 738455067 988610199 565667538 799259421 708151569 885448748 548062414 837863151 969003793 998015200 736048482 916660259 288865605 697031532 906129719 997185680 151132082 600024334 570541707 851664684 966220575 973396250 585874093 786130756 881354732 970930778 327547133 442464840 273474619 414515479 698824617 913798021 188670751 348497551 646994479 940434077 811816841 977689364 833086234 994233558 913709513 928187040 175394640 392978798 733427000 987388108 566692465 729127023 621296399 973976984 382049057 534339577 720112432 767066249 366312940 779717956 91056504 621872439 434933045 791437628 894690080 991408374 460887816 609246027 507382822 860915455 389166920 528131044 741118102 900631904 26830316 167218186 458475804 787170371 673635594 763872382 552972251 676151933 752265008 912269566 833354977 920581430 201951057 695690283 366213767 915988501 490052159 998405694 159131558 231592029 178365638 414206810 396945077 500228647 418436765 912773503 826508242 999928441 994596301 999119662 47699616 938175546 703259690 898602729 122963346 242141091 677122969 698312040 651585922 876967077 465381018 678334864 836626282 971132567 536197523 882008263 792908724 896496738 813369287 846368746 800606009 860173416 357380226 413344076 448994154 814188379 275291842 697717882 194076160 627211724 995610995 996952269 358917951 413679732 993103702 994200410 20956376 406172630 993123067 996480494 109743631 521523621 768647925 821164565 288952184 469820476 879878518 900442541 246446620 510036059 735087883 788920077 126942863 566010179 16084655 796837929 945671453 950290753 139029295 840382587 612159062 631191536 193242084 206296497 91815527 544993867 465788862 618007428 726648298 900120141 457574907 592308978 949191908 995392728 304647757 756085596 189718521 961187175 385946029 633438278 211171717 415401576 806245568 929065647 983080227 986652822 990574813 996176040 305802365 850343214 317441537 712453885 61549860 534760975 588817505 609643504 538932831 845256472 896618195 904758115 559964070 576792901 472892879 840470014 715411796 819660719 560363356 693337297 731170903 840429678 346336213 767813197 403799785 679425352 985307069 986208675 323458738 915561181 466828339 932017506 32353943 182557047 609085007 626580425 492394877 550378342 509724126 593186526 567093282 967223836 519754828 717829352 403574740 737270141 829349022 979455566 698044173 728341836 704862673 725381714 688692309 989925425 365074859 475531843 74012049 323404437 679486220 794403000 817813770 963022418 499812463 506037491 343754879 731397921 422359470 605888075 745163810 823713511 898443371 939366914 157456342 403668158 185416046 854921206 933637643 933773533 628117420 652460168 605160456 864550865 689176237 985647989 647372067 666684350 349221421 990499014 79092174 613826646 455958657 705528111 3927800 196801470 187174945 472188561 228183952 429800223 353908052 706783731 321763901 844714736 392769297 542255361 151361411 493755940 519189634 950454293 115651611 286481491 842456688 930356957 124204507 653234011 352365062 703424184 695488711 709507927 679615534 844302056 124428583 256168445 667300721 997837628 239791577 449496022 957056132 968639404 322637941 748852086 838594530 908424861 195880259 541409362 982407564 992040272 819846015 891963076 974194828 981935745 612009589 840412331 206093460 722945047 680547798 804699136 676265085 727294326 364710767 894982415 407046887 568211823 164749201 334826325 605562765 992388377 223625556 845940833 204261730 522511910 209137209 912361909 57146694 437256402 422009323 927645977 602191167 958070912 210047791 446443054 664007920 907271666 984135084 995487547 191423906 299491569 710604159 836453234 127184560 271018379 293863427 888504276 648260128 734744341 172036784 542146424 385571390 438855229 683440815 752707092 535516920 669464526 161917501 849955038 46123566 390243574 39576135 51967153 993019681 996990718 274744659 399852310 587705779 987073298 83498188 987991357 756314223 988458032 376515807 392580076 895048438 940203002 32899947 394998628 347117107 375890559 156607062 221667952 601740440 621014162 790250213 799728073 265478331 595931213 537703353 643101698 393879352 784641496 826849319 840089698 152204741 839333646 283754466 953435545 343314277 375010289 170310614 916967348 198070459 911146680 122050071 914059238 509458573 582456335 9828515 722871429 525578484 904242074 973832655 997182869 647474648 906401557 837629637 902189231 652198764 995257595 833705234 859127501 811617287 988238063 834308491 990068891 644887051 803867748 292940662 765446912 395554837 663049634 905552879 919444604 365407137 611469916 861183603 902488106 739235498 767883021 515118877 948715816 791328657 923024290 188396051 409730969 873416594 976872098 699342372 857549801 104881933 631141673 4865031 896464847 14093131 912154923 256499604 989994563 355211449 663797544 393263241 542870576 773355446 924290480 689467210 816928473 129211012 687859648 889028863 985477248 510996407 586271279 430470707 483195426 607958198 813437597 414187661 459382429 395568646 485911751 621274837 890411378 114593873 478547054 325708978 371541263 189867484 641201151 429585772 890463291 167763011 262532023 580944421 979981067 148729005 224743719 455796383 583747240 850305521 868586779 348455562 700401851 571318219 691335938 180513142 359814137 784599189 828692179 915770012 936704501 671620067 685658449 784375331 964510809 114463831 439089328 468570191 926599106 931182061 972559680 765947414 963592236 115507217 892237140 342363472 438614944 187521163 660710797 51626028 316661635 336714483 606815189 342208100 761021299 50271922 465834847 634709189 682661904 114009065 807744382 666957332 863257308 223348454 485824874 886032914 963714686 161641572 789549523 531839722 987477221 767054344 796258863 934150112 967250511 377196730 984656941 623051267 652535403 739286585 969805561 220273383 982397125 587933253 696507982 705889490 722211280 795073941 982760772 181661232 603551861 73120269 166511933 672485741 927568517 61022749 110140379 149729093 891825462 929940110 969568919 843434602 918891089 683157533 804070961 622712012 960939492 656061955 826180801 842239480 974124125 137846161 721423192 867721239 904077378 227353288 585974288 8266354 900972578 983944803 991736882 289517993 722737522 399548880 635657025 936685140 954473079 752833904 922056327 303583953 439615128 241357528 592471314 817563182 911150642 123201822 669395433 350282693 800639438 300240653 651311186 39356715 887101936 490069352 816313499 102747328 447005153 171495205 289655682 82205748 651137142 783524167 901008247 643283391 849694219 118494925 476547443 290980951 689079417 896638897 932871151 337857031 449790341 920009551 924669646 832194357 867339575 924867228 948889661 103432407 251028721 898866885 960249388 983592562 995450066 304751329 808904868 210151880 700828694 649858383 726801628 616607012 685366769 408144409 413413713 722756530 826665501 382180232 628854695 413203058 614073630 905368177 950278884 492025387 692752371 977375911 977456405 641693361 864340166 812658148 989215125 44785557 478532513 841972074 972424831 975771127 978610432 771913989 896230004 774959516 915507982 681012049 906150116 934927575 969922721 665146173 985680607 514938765 657583185 743631809 748973915 160547630 843969188 547111140 620727761 148143965 785908019 876384083 997313347 86046843 445475427 150698694 274630298 852947996 999208354 204932031 832421381 478783121 536051311 96596002 477956432 349744301 728770066 992915282 999290969 471554122 541667909 561792659 882018176 803452343 904466937 317134094 761492176 328573374 990825536 39061881 807685611 568325834 843177694 857590465 893163542 492552522 570472200 873006840 932326541 8188935 512037356 175204519 981583830 967722933 975358222 712378090 854847482 709954391 814822777 441567712 897063778 196481612 507266749 671798162 767505518 123243069 898495738 441967653 695655461 707975418 898523319 896777820 947517662 237613978 491455588 593089943 932933895 670890575 980597624 799448232 956492748 307530610 974330330 283293933 653783802 200190032 205465592 328558257 524763421 920930426 982438323 837528156 915736969 137978733 419426563 713664760 828416880 190569566 214572843 562008987 817750234 999019866 999856387 165415058 333162306 133971501 421757749 927716502 941738430 757717538 785505197 300036139 417375397 503079331 865539545 141774229 633970873 825447223 916023215 448882460 488199183 295235354 497744259 282239317 936184996 840583331 953067673 896825977 954565119 382180937 539021625 781031771 805211710 606035004 861165551 614613804 812847340 897113069 911526263 902531020 968384389 913211411 930866546 622916500 654837343 692910564 724275514 169692773 777222743 962635543 988969971 764960232 834662591 797323303 951505126 415216920 931573410 139311503 924839090 84725522 444357377 194770061 977957521 993867706 997583188 944906835 981156373 97609964 224769906 328072656 382958702 473121088 927299471 414142000 787878866 668015678 849724613 224575491 873535835 935705974 994064554 812295332 973181964 613828904 939931247 295845794 475606095 802842934 844337589 413162401 624092040 368754856 813230965 475544214 826840541 537167083 579460412 874081708 982703014 479764977 947700203 311795940 499230357 194074546 214807309 93870395 927276326 288213897 660165028 512992255 890477220 127801850 667673755 339347422 542440113 576198077 916387894 595811426 675019119 13900104 327879985 687702829 710452104 513364062 652877552 171132905 293615587 38251892 733583489 691066275 872498517 88079149 138613847 585708704 718919757 438790401 822492835 396535831 562997885 36648545 96292583 630470904 763352141 581289292 845201266 345818448 477315414 990607618 991538594 419847795 526621872 945207132 969136337 463970847 641488652 504723756 840081273 759852812 785163227 92164066 319607540 448537055 793725624 8194759 647487660 360672070 739823258 517098710 569682697 322652597 895633703 129447589 986859330 245564449 544767079 647345281 872522114 370027103 739592563 965283798 967863333 687395136 958240102 568906108 934129586 199531306 335737338 954262019 961460981 494022756 526972682 812450287 924024304 873909243 906497103 61797027 653662460 301122363 974008239 785433659 792595266 5474921 658359917 861565450 867704741 917520735 971145381 875822141 926330944 510073435 635247536 738843592 842982240 803591892 872340613 110149247 892895298 439951897 977040110 826019718 847850119 852774460 971367443 207413585 613207889 953389309 992500769 203188037 358146053 850393269 981113571 273638761 602418620 948712505 962523619 163391093 352125861 356010543 548828001 450772560 740005859 821389919 883215976 837950978 945109468 101632717 772442648 418161002 692716715 369189489 878538158 203192565 671565776 744675041 977612055 215733361 244198537 969773933 977749414 976547682 994959464 303007553 700108748 151926807 708186450 817783443 963639269 529148842 751217735 668912642 886757770 386006362 883040077 326226600 333700364 118123604 395661150 941285124 995950637 142989432 294726087 891184332 896477744 11997288 579779380 37682201 708900898 843595455 915281735 233945050 282855508 513330663 938336198 407316456 425971084 428929789 772336893 927179895 987128405 699925015 702467123 331493752 883016252 986301185 995260573 916342841 992008773 326712961 741809071 540924879 720303743 587398011 644852917 752955363 825139905 220884276 662769990 68294002 414475324 237918945 862147138 899693689 927283820 157527969 471720730 606425804 696347025 806503645 834012037 825866880 941601540 766977299 866389360 295021601 376704217 747012274 952958779 569391154 917146692 384732918 793271470 669996733 733460110 219854975 819854481 499816563 923694129 674308374 871647521 126535768 389191085 430152976 851196014 898452007 964856117 13884939 941561871 129670613 420862895 639557105 795306105 103342954 540968962 232494238 266955010 559932374 896405641 700089156 983130514 494104375 978899426 279600939 564030869 527418262 543165990 740607769 898417887 97902690 287535645 602726513 796563466 426379970 812991761 407917731 574890440 469273393 779211996 422519646 471058130 488730131 547230786 2088695 426622098 806108928 940089405 162190299 394215713 831349754 868864163 358331725 754563450 465799616 484013574 149607469 686085711 921011823 933536055 646396701 648032545 144832776 618918884 240846404 772532099 487845958 682203486 430212521 887808030 53642489 406701596 783084808 917989071 320961526 338871397 728265949 860584790 339742710 674607360 878802258 992863444 549432234 647436378 963759948 999554083 617276216 913639192 375284061 434815160 539362192 823878974 626896801 889571376 349917513 448104758 723613083 860255454 252188566 606470523 615225880 910574625 406193802 580703890 264477615 771513803 9425901 21197595 188563168 994999661 965091569 973299395 472663501 915604434 492802602 663963685 451120869 725979861 67775573 101402473 895295880 910767315 595344098 847482654 166294465 266792993 894078339 905140080 625536655 975229541 670257614 799505629 599857071 624101410 540160614 873259390 791217103 902379391 472038585 680876677 115510352 757790759 342593845 347203383 746954543 756435758 941353545 986536013 311408653 748783853 813610966 973830435 900784310 940012362 394517979 396026219 581293937 728631162 382085366 489704442 205084093 337884159 888240149 945609707 653057554 840106841 941621228 991214735 908502945 937605314 578783632 599180129 221264944 593907432 119676346 446568334 317363697 724146202 303365226 891169890 346297684 562695189 567388733 811091113 180654393 515356266 30028025 756434948 754740563 943717774 359741721 567753209 839868988 861370654 479556706 702742728 80970931 921193737 991419668 999688329 24554694 185480998 367736352 568180882 190079706 749471820 704695799 776331884 288215802 538894915 126750803 536070285 921886683 956725460 66466531 343329084 137944597 249754253 407072026 665325560 671482025 707453697 274118667 459003750 303748541 702890080 286786415 523457025 213304923 752879038 932653356 963178562 49310957 704588338 878833202 948846577 40733331 708182399 570192157 614978914 395011670 853116647 936505850 984955645 480714355 662958638 284467953 423635557 481635584 694931688 44471063 166440908 134461177 285721487 160997226 331133794 545475868 761468691 326847873 502483372 836355500 996798034 419654075 765472186 634674017 911303926 826796006 945978971 79574592 608525274 605538411 835185365 331151924 479894681 543325285 633181472 906800845 966284024 917601159 930100691 840331652 930488600 239199862 682855277 617232059 971195129 911778967 919068766 42024362 674402402 495532663 928206555 769644982 855076261 622620670 914629145 956659312 992697418 590098781 817680667 574401519 586592142 774436096 955969931 645985973 670453345 896601622 928928824 813615664 820770370 937795086 960671973 430651277 621562337 105046179 206810551 845610006 919776300 867531403 895912645 446105349 849642962 588544872 664543590 983332830 984333173 480313253 860196734 444309380 695858050 917288737 921857965 654740580 971404246 205341619 948996382 928804916 931103294 93241794 934146096 589025779 901195936 240437864 539313241 334632235 642182233 446166670 776413528 239588451 884971511 912699079 921435599 507506290 753917088 849840570 911691254 193696834 643137217 181809995 599375682 860892556 895461957 454321324 464658900 814638746 816995177 749994851 863086894 855361362 867543969 156094030 304562013 499786466 931490767 983419042 985700737 204625226 826883923 793156884 966197650 146178709 565315962 651573841 894463344 687435139 716197271 82189814 220250234 448442523 933651529 577864898 728705440 696509615 849746703 144640197 349321073 542715070 834378103 810885300 947739103 361669844 673629235 190518480 639769701 586030318 890091796 853041045 874217486 155726528 904341415 158443354 447351675 128279521 279101927 111959280 168258085 340412280 924138512 641831037 945951979 105698124 292194970 125472269 551919930 837567790 850684775 818566220 831712961 834978907 859281506 216550024 539189440 168076555 368336729 520618057 871536388 203117588 909573109 528497467 560722410 797739639 810071294 292040404 938516711 634668529 989689314 682605039 913888964 4831780 138843868 732731903 885648401 393897167 461105978 726119017 922085152 4747999 725107590 445318934 892059991 395006453 822005520 850575956 996229755 370264454 894912932 34126305 189657355 932538776 981923225 130209608 489225481 119517196 969680700 164266196 780309089 217104745 400332677 344628138 622373868 593484906 820438738 65969352 519630301 756259534 888758047 924451592 958007735 268442632 304992441 919626615 921029268 68701932 212747689 21072666 85105838 99897566 119460196 47058778 370262218 347461711 355392734 513499114 657868171 542390410 865383585 290551771 634620226 412636254 665159391 790475435 941288207 488296528 829897981 347864670 714351906 617617242 900636762 177708516 330872863 268423182 833121448 213067331 955313289 686955635 948344807 363206844 595243392 61939829 162794950 44411947 485523250 907406030 917564636 18173548 178910920 137424632 138677877 433733698 942905764 590772477 941143834 890218161 965015105 424612066 827140421 863504345 966364410 59190287 171089276 188613567 594426609 954956755 965430076 584087056 781261085 340315718 457651565 435556547 587428629 423744328 936392783 555026928 728862615 637938527 987417007 580062846 685620776 13407739 796225548 11937961 16393849 815940664 875992960 305194062 585770025 222024774 471805239 243909418 504744019 79383873 917271566 899717273 911196730 886301589 980960916 624947025 835982221 447029174 484607876 521594617 746566473 761998528 779109706 623547287 959478085 961691821 975410080 899770787 990124514 391707629 520358524 679150721 792312952 663441828 722003502 64233254 117893234 895569054 994388311 256507213 766222272 834171262 849964631 358148201 619940490 932000430 932045662 107258434 704923747 340283244 833710193 268331078 439025847 14752848 950427487 333949121 863598730 638957213 725995697 667825911 735901835 21787272 705623054 644961032 848531498 884288477 935161978 669217764 760737196 757161159 892245939 804737014 880935836 503186363 912299939 912114311 951240091 312008569 524836013 608373471 964579461 32810713 189857878 453304476 861796967 581171901 837377341 197257756 567809827 705206351 828973019 932521732 938094597 74769759 725456955 421424735 431435626 601315619 656596618 559324751 991103707 877822338 955012539 446665471 826329742 73684415 647246169 553344315 921593220 362565813 996654478 786886410 806287402 121124243 601443125 654567009 671709779 226309182 935470518 367925646 877779547 245613080 290366814 801624065 834038962 842440415 924747081 249719342 568517192 229972731 917598798 963551071 986736394 820672715 966742976 182204921 798575169 350239261 969544881 431232646 477359482 259977468 464380333 152048107 392743314 821577724 956574140 807274272 839968917 113213567 401934514 482069386 560103743 251905688 880077870 56216434 462960315 900961900 989119129 475857993 884479065 833810341 896589333 118136503 722992906 60065772 90670429 207404676 677529418 440381914 769737100 12243127 157516548 998795273 999324750 461822889 575361810 927743699 955279602 225616865 712078890 127793696 328350261 719406068 733840961 679263099 946791878 885664563 953600123 354728272 784338824 654165096 982410059 848653552 889988794 368849367 958444121 476344485 946650168 107164527 381386821 895421431 897556046 556995085 710285109 75105022 375945831 987034508 998371542 312843673 598755588 6154609 471928945 88403811 899948223 990802529 998724748 152569466 338985115 477761504 843102905 632757842 883486355 799934210 809276654 871432139 935051816 333955504 343778678 982640321 989259622 641482101 857051082 229738284 431078985 146109880 534408660 823939964 977832569 613661670 948702829 577981374 807743591 204134219 820789282 596945031 694712980 436748978 944258664 735022843 743498459 261941280 550380875 706912638 925628427 881190846 940079974 720177349 727999325 454173343 542913897 597399829 746988348 82054335 956602129 195993441 440946556 900614235 903387053 660481819 938317068 902022932 903843523 928851800 975117676 754485282 875853267 903006384 923026444 859197180 971144545 254190313 678531890 600722648 858760009 893040321 918824803 293559050 701549963 510349193 884432732 811423668 917543895 820256101 911225175 146707336 794633655 209078618 349636730 189705940 646099088 707801050 830037150 489355647 894224145 679532587 741444558 938140606 976547592 861301225 964606199 430613187 765334954 565857112 688015433 867308432 959774929 678370704 880106394 966260472 986817049 132570778 751289133 208403065 332583870 731269050 985799194 18424439 873095015 988968935 990715800 326343907 955797235 198711204 362236100 373299439 424788215 188963250 404840684 34777384 959228306 273499961 749307192 624282940 793806266 742168839 784608868 360767070 984573175 640231727 933284500 431993710 902729491 29153013 569090956 741859241 939175487 446497426 518753481 628408325 987441201 14840968 520655552 663984845 905545538 408295908 421493380 800250596 996178717 566527289 803727164 617365981 767755248 189459889 965136512 509996048 792360861 411701039 521618848 456594106 561300102 824675567 863402001 195078084 797571860 372454727 988813575 16165128 389481636 312325035 760332685 129079121 787723031 699675005 814667700 624511190 823890406 217564203 563419027 407468168 482246671 931249271 939099645 522987559 691251074 752329960 827476256 936599285 990993619 797196818 895726376 777855748 901870333 74748117 161854018 643497726 778735881 687017220 721141608 851417224 963302698 585472727 909857075 686184072 830324842 725555026 992813484 422470354 887435279 996761432 997623608 360129535 734206715 734328349 899628226 879173317 894160153 883994898 973218189 355930918 966000041 949028582 959908521 481841223 569698832 279795611 389355767 392180860 523851692 378481008 805945639 14878636 711256151 436131107 679368885 587010922 680426518 974091415 976081791 490499402 499429839 312523397 790578107 529450701 868165536 73289292 293281635 91967991 547513768 189881658 504847098 827047038 880188991 860165770 975450696 828707825 953875584 939506819 969089027 197370320 797706854 827747349 944873435 999868246 999971345 114091154 829267231 510906680 942374689 305024704 991373509 755908732 895160861 664985636 913029504 386878665 936134005 829390906 958811996 934118890 988698234 195717977 780763656 5578268 357186357 626872187 655201335 509640518 976757545 303492400 877916818 785255986 903272891 85911068 600043104 925143797 997332439 56415791 134860190 801531140 994620934 475916174 571491936 265869099 648740583 635128307 831826920 276204998 279755123 436190847 744387786 546767872 718116584 913154932 928509577 320444954 565385923 289009621 441405680 494734220 499149351 754176954 824030143 660117775 916673094 838162973 933743632 176093992 878197929 76020935 603057170 985618408 989011622 144062783 930052626 538475311 938591964 905127675 958853123 363886551 406566464 714413885 716134034 269813065 302819491 94690973 536257638 370410170 785122641 716721925 728842333 768904909 836477417 262417051 731992636 827327216 829212534 369481959 863844548 232941987 694796592 731271396 928053462 399853511 671785867 422957511 554097248 389885817 414818628 95340765 925563098 114607960 357059638 988301918 999642268 546738742 726095224 663619204 823721534 797247401 867052117 448695648 963402105 540914863 986596380 672684861 751881812 416352694 677691698 105740509 303074667 724055720 958173774 932967191 996839475 982582487 992164339 640039043 862178157 657350053 883669659 681452807 974647627 395217367 548878350 227602364 827830086 483014539 538599288 905719728 917491537 788927814 892525809 498433632 817324128 40600019 797948512 507286304 728009375 296114055 463239982 699207310 831591929 120979254 760911319 149183699 220468382 101005895 739906486 833660939 896412459 541182768 878293977 983931218 996014639 47093110 480911322 228849191 260275378 284835463 843069339 165562817 695027541 378120460 762308334 996234790 998793304 886487726 948680967 752015344 795076222 355592262 673693791 141811381 483544021 143774207 977970648 649935349 812528473 604236970 905596071 417780718 990442406 16405980 999793107 796285827 931501406 63795401 188055603 742098712 846073976 688288426 926891375 791866873 984553401 48634124 476538785 376804270 557156453 602989332 954556242 358996318 434930068 618979141 933673896 525019749 982523533 842262866 922465571 390348347 658367711 870311891 999236036 199632682 724558286 737066735 769008773 265472421 474528823 102784126 118405406 309471441 550603990 268899198 776060256 747443600 820955113 494274226 890360340 774179335 992233174 202617108 813637239 746118945 768859519 740505584 994401778 986764247 993006808 259978637 290350950 50752312 84543128 744178585 997029814 951803124 975673203 100817639 458135815 394708791 722391445 12146157 712443080 965588548 988119021 941592404 986110229 857435729 949094155 446561304 788322510 599473594 816683300 354710838 837567844 54531405 882510342 481817202 623764156 881692861 888986614 41349189 518763362 148376908 677760609 795570514 928214909 763865870 971004992 408676066 674619519 986929691 998600552 325369656 477795385 802778569 966861874 887425255 920191123 310223690 443998832 450256811 636404508 745252697 953488178 630190652 784239009 898535024 981386763 774211792 815335949 831350315 881061288 117259343 719606590 444761889 528218576 621103369 664943961 835926325 890317692 705262219 942544525 310887971 600555765 616045365 638119100 111695665 552134828 143196173 170102057 956491716 969570934 850509897 957076990 42593177 990360531 204078605 566440697 654733643 863052517 736397399 989590071 328532286 910429908 386944467 401959016 73952000 529063141 973336211 989728452 9688776 866023502 123063946 486459629 888742722 975835567 756541444 917782959 439864509 736162307 746246383 889646793 366238582 842314208 47041887 208414530 810810652 850120969 751128407 887171291 220230518 420926597 374396454 928515886 174150996 462172353 845079214 862113783 858882075 869221509 599288752 698274978 21794588 677351059 382990489 528912237 5832980 776522706 226222322 453561617 507075861 699101978 375763406 702931321 929384556 933427964 804729808 868833423 345237393 585112852 478597820 856487911 394937870 432669047 489148705 628871545 698423060 800566031 41411444 987107719 635279728 725973273 569290588 919940204 511045943 679540339 960708068 981045403 638484170 789452331 27057461 744092763 245410033 696486630 19320141 62283837 488907988 694774445 35805243 450594702 175754772 621768345 562397461 946305179 875973743 992569265 152107638 286248480 508579839 770152433 780955784 820449053 955116476 973585832 653034697 686630688 202927269 826044561 757647498 965609596 965821574 980035365 590453220 734162940 223099869 797642656 315505521 692394495 284443539 721403105 458114107 962921223 325350467 886415465 580438374 791478497 275712335 748401040 873718624 877737458 821314990 850896067 173780449 624466527 661021579 831892959 607999084 648294636 60495656 724035445 663188358 730322224 126478347 415799228 633979449 783470698 186111199 280293486 791496238 953855231 965902284 996675612 482657807 562793543 704468737 775826405 405839952 594342303 992617828 995783283 684078174 999812878 380687770 846194461 971456111 993419346 123017498 376371083 871025384 872256615 953930699 991364966 436828309 599692158 230678731 604554900 361043344 671556618 710316787 975721638 951225223 972752112 22442200 748179149 456070636 504944474 453146052 883890831 510913701 621311583 749199216 797076044 434977998 467673925 550649304 806118472 311025611 778376879 863703970 924246219 670939960 930212922 942945808 956319162 107779260 440757762 447266005 900344452 863895280 929167365 221224154 557913557 734522938 991261791 883095913 907470463 786591997 793662383 640411620 653656362 213882407 490118352 140248801 286495707 587403551 909347298 741328397 918740545 864747210 950228440 225010043 584337007 263016586 987156036 680634743 900861435 274705223 471687625 418783548 966736234 430744768 492552758 100255040 113426217 988675112 995377668 709345815 861674872 224718205 409131524 996676086 999838337 237060812 364262938 198027218 718257358 895808165 974596444 724702399 984690278 478548574 773131640 649166559 816234849 600654413 955665687 225783453 990266187 471778673 764045993 863593341 958843334 978823646 992946205 957714606 999821106 732344698 971071418 119268207 695001057 873636014 981404080 540566884 650078859 920543006 934852441 867005910 956023353 338615828 806252030 703196074 904576550 938144683 950011998 13848120 936354498 149205546 719305737 947142274 968341079 757536785 847205705 204256623 738095015 97807086 116319513 897736267 941592362 307027985 592407539 645311610 717761653 618389704 807329115 719034273 915353152 927606047 935980704 12600321 35057155 162034117 248832975 683451485 839658582 852568074 879478388 907018671 934767291 904790452 925559278 92934727 727133798 460457571 749116740 882555773 985902867 126375491 453736736 690057740 977732531 42552190 905673491 341408682 468914795 194531100 876232429 652282266 758820312 506085731 634973022 821556535 935987873 281531223 806307424 540674784 968901831 381412422 682275609 290906263 549077101 209541635 308438091 402742208 700188600 800566339 864762086 736094202 803657730 971390806 976902028 744221403 827864636 333216596 928432977 544163923 753221569 947967316 973837735 945487945 974287391 417447441 439481980 913514720 945528137 86154165 450475529 748465143 831738583 813387292 931244264 249317964 437032390 164737664 421781904 369779976 832149190 426228930 725525419 969758911 982350717 438655948 676290835 439852896 951523085 313581814 651020463 365062143 509264135 289916124 803381258 29906721 87295543 157878056 528895268 649069139 716108804 890999445 908284331 556340653 811583551 869251257 869330553 784002250 927881951 845374345 885895698 525579558 887318696 332215648 538006744 361413863 619994085 562381075 591627197 375223885 763307316 456594045 879641073 717925475 901916904 617725994 785828385 51301313 802958085 321783889 403729593 5632174 498122064 80733496 431848377 83312639 623612003 152390926 567152308 393859173 883990832 534751550 902991440 513878493 590645726 671566159 687741613 999151950 999439815 858083097 892737521 515565008 708230014 393171812 652979166 678977058 947267853 7965523 935653685 84130257 134674510 691696706 913501780 854824569 899306974 801992108 883300855 303765161 612864111 215168275 298982393 532131766 604595032 768140263 791806580 168987362 755435336 702379532 778264460 733504957 870511225 117847536 857604024 10017749 829365144 75110385 456792118 569537643 895234405 802947456 872956996 225347609 506593470 509740543 638303808 326320423 686727151 366346450 748374971 514029217 950259012 874420442 917838185 886492073 943613744 364588892 441006636 904533297 993806516 890183511 975340539 184176939 442843881 898290666 927073576 888723613 959318417 62432812 783589838 890292171 919003719 102547062 940611549 950518841 969892303 127785481 626316934 579774141 653549230 995841227 996405824 395469169 793047699 975731218 987556674 509327066 990044924 646377735 679970776 491803949 879032157 4903297 977955514 421973767 915166186 566841249 625989522 674408779 917118128 261400771 915689909 54347883 908493827 374281497 634865882 405500370 413314593 850167128 955716360 560568971 847663460 439204962 576968687 331437264 477225560 216687313 924244441 337005078 461020060 757245342 986332005 275037593 676649964 165244865 843809674 688583633 882343359 491441183 831738522 439944389 564227812 408305567 893016865 341646202 854550605 448905079 710958444 779168921 787848562 231762926 621859330 953742698 965020446 327555325 633041529 958619883 964240985 742196674 819731231 214575732 814768425 370365242 575509254 625159492 711774853 970548226 990882467 669480320 791567717 932757257 957155403 410153373 676314905 160281805 981758986 264827820 907507247 672643988 968525791 186760830 673553827 122369044 610824925 528976331 649135859 963484897 980753938 66454705 890131556 93484956 674248532 804237081 996998181 481515125 740475335 653691222 846581502 589080108 866580236 657296831 978031435 600544862 644312076 162303607 320567498 470520603 939789743 215507680 478084848 747877953 766806566 557697024 821534923 165336684 226872121 859946804 963349507 927561534 950228935 940712199 956660208 960940251 963349638 4132694 282058968 290942837 847610729 111631940 528821932 935239987 982205195 727816287 779340194 432828082 518540947 748644083 780922228 160707463 685344339 27622492 884430626 286800051 439538131 65613177 641545282 849515960 867475353 735390874 878844350 726168449 890336006 851871705 874184904 679820591 886748102 463522137 799589740 999372764 999935515 747960707 985697003 786757253 826170299 981709282 982425259 185417763 644942995 948827078 962186344 258925186 293346625 933718081 955280678 895018577 953981708 201854021 239595873 358358067 555105128 337904482 431484770 320469624 557971066 388294798 706946889 589679503 836140066 858308299 925126660 883276684 931116222 634498287 678879979 450182797 936828973 40606496 700604894 712437421 753753845 107337859 830730559 54170549 199878255 468171742 793566577 775887611 779334565 506885172 686874049 476868234 895692324 47831665 498698875 587967829 702111755 483496980 862784088 189505794 603965706 222222020 703735167 306495311 983253546 958686068 987405677 24338886 426532573 486175421 896095768 156608198 857845935 884300103 899939482 913788820 922011643 677823222 877320336 918157453 994183165 244401952 344654821 678627805 702496241 102061073 969069131 904232885 918501047 916354614 955424821 800505335 966642300 801509430 845795576 480929233 675506732 307456995 674000829 959237317 994053888 844330147 848788725 511758123 741269868 989577561 995383033 42261656 209919802 358180973 489749457 971199593 985331296 659979640 748816659 753393589 931840521 863785350 906715422 576592066 962107961 284140180 373934722 868941777 970046136 831488587 990118563 543191843 712362309 245060184 476864092 75625722 820778761 714734493 854214661 891153925 958860884 421072368 505358299 324710103 566064169 658976292 964678615 233762173 646220128 173988979 653364750 762257967 792952933 631308410 951478184 555710493 619313811 29280397 84312311 946633355 999095196 412840491 980447540 142247578 558062715 123397589 645497879 591037789 758090133 721245351 906287330 834653700 954344800 918855390 941734086 412513003 936283515 747850600 962105257 976458004 990400412 449937851 732439329 192321774 619616997 2946682 375337163 614885857 704285282 792064044 907336637 704077260 910229114 506071917 708721226 409418125 958210676 382882152 981340449 342525607 764078499 337998586 954431040 204134417 535026005 687526053 878651364 325220183 496475762 994849712 999657474 49755424 442832873 493973031 706729663 974586999 997314049 225412349 457024529 756081860 879107077 122023308 252036761 736256716 960448586 432293658 852940898 336599813 648632346 56805501 333529238 774846533 970399777 6875746 470775306 492160441 776554733 582242706 582563105 413010568 436166015 590210457 828732773 270892696 828699622 430472937 966333486 306576467 473195158 870850888 999035333 374794642 904934408 164526683 483321347 507062845 552134006 515264277 768709288 962973027 983081775 228406438 867987363 915912953 963934246 294708776 543153921 954878061 977160695 210457403 545306497 798436610 902324758 954911598 982103458 18521240 272137440 407184937 485153585 829656923 862963069 633145332 932435525 103622001 643903860 838613460 932041566 510691348 787772856 256377983 490471063 725909384 799499937 99015473 867109626 213881925 646796103 123074146 658140122 900104275 942670465 329751116 771708354 1592825 478645403 402773401 973928895 572375264 684052020 755500667 805129494 451852432 999178647 800019045 976853746 420860350 674649596 395145946 430597048 366035624 954813324 931186743 998733735 320059298 712450540 68390241 365902977 779215775 806857209 7875851 505304880 906828925 917514352 30874056 544722140 815299394 907224695 114299937 610583086 490428269 515720746 244727976 266400168 283222468 322066106 9918067 300121092 672323083 751796529 753575440 920570777 939913327 966899548 898892797 951313648 30489331 268311596 686171886 848271108 373070237 888572466 447328072 452344805 572548960 964198038 286051103 662627997 522071314 649748002 613590710 632363039 225670827 622962137 426540620 645534927 994940058 996222770 123470467 390693407 886317830 940299673 234890780 277523576 259172713 681294090 722995445 941293496 262626604 685476033 412890300 862660459 284322519 889286355 624576904 652217913 721615318 990439633 163665113 948507437 204528323 903144318 504013895 709836543 221166435 503799138 273973313 694408143 129628233 344957852 306465941 571796487 731046712 776253578 402925609 848142161 779477619 905470275 491686259 889499488 929450861 945764449 931176906 954224675 215001750 568673521 108658890 930187898 460944724 890112845 322707132 898642979 4862409 566842671 984133986 993929414 851727204 899730546 184033187 600908347 945529607 982800407 715486290 924270297 587734968 714316913 425779212 468049696 751290682 834663372 726010333 851566843 3871638 42202475 247641922 324009178 673013325 800555531 11800561 831348427 188300748 311755043 489506183 998954814 483706945 617679049 258192280 941153186 681623704 747342448 661888959 851184375 429331407 926718228 475260809 959807818 335868707 717027248 509520626 903602288 431246220 727377393 986129240 988547191 299204517 373089229 629399248 797940156 572538813 765594835 611078955 896830531 730807245 926334313 730346272 752722762 996713110 999939068 310672364 623813045 683166742 711090560 564335067 590433626 978816619 982879586 314589723 547406728 294913771 352773039 553207014 736772891 662825247 719973517 805951269 881572613 3355098 979361944 378188011 779613186 891878983 937287481 964363405 993017996 419210623 826464495 346555842 351281245 904719482 917426596 162070064 834284927 710991434 911971084 207694483 850144387 889799505 930318990 322385565 859021091 399536476 800088629 37187216 435765706 623224365 874227397 918447406 940441301 683458076 872697713 687139709 934143796 320935154 459867319 896142017 925197130 320298944 964417316 578318482 622043964 105210122 838238637 47645580 403952434 977043111 990888967 526912512 575853549 175526932 882934595 718826626 807750013 996705475 997146852 973173915 995309952 285332936 836021667 874104213 925889280 976325099 991027846 953966180 960064483 940755453 958240101 230394563 603346727 630473407 927475317 742954819 838437481 962582482 983450143 592479439 918750599 38746835 796113917 532787258 698907804 598231839 942337010 666667313 668438545 435918413 477709725 76376611 474328792 340418229 692412942 476758937 614520241 765538611 809285222 678526744 979511481 243553130 899390915 454274223 988087730 192713358 744873735 185797974 331214235 938629192 941181220 916869315 992506504 370784997 781433727 47622535 793427707 650169555 981570212 517417943 979266706 946318715 977665798 941394607 980460236 485521910 711256256 662402235 994247234 444448537 570870026 30564864 358565953 224629908 441961990 506265723 952639654 638654232 977357127 585476224 655223998 613195221 674053988 639954989 889977390 57398926 238467678 573355719 998979350 411199943 873361682 160946850 269098581 607395651 708239520 75440666 398681801 604181063 829491296 124415473 866685849 611600761 640368710 797056142 934624468 71356274 258500961 783781107 915704888 213453738 854173312 648419516 703613050 599336630 763185591 60270127 142811756 53318142 827341773 920034141 941978483 539002587 651144493 614061830 878628901 787709305 942176245 326016572 613656413 857824848 995735968 165355355 628133298 518996557 645689834 921412047 961858850 232149684 526163463 813112906 942273440 212307475 940342074 826631163 911074410 849978574 866365995 852925945 964086829 2842224 375174376 705033535 981080228 884514299 891755988 370977455 418338496 217369298 805117754 433456998 544567591 659307858 884315772 148049453 326442920 745803377 812236053 343853362 358771492 178796516 192671928 97955491 139745240 18407201 777503128 231674940 474598857 571387724 596927590 852883314 945195845 49382887 606705732 476127027 629824316 916924076 928204237 31532515 765434750 700655083 765121692 567528866 855635558 207033746 307099969 290863645 983416743 633604278 668121274 971994730 980822362 235331185 272665280 523419629 912017296 655397065 935415192 977013236 998287634 576940614 901439618 341975705 975523793 500917221 832785983 328840302 796525761 184965455 264658703 413006141 625024687 233826826 887685230 157688821 631419970 752751762 795069997 101878049 579909150 370647417 732888839 803536258 929860050 75969061 992244770 855026542 997166139 23115036 508212044 434408606 931498968 794728977 949113542 155597686 245656009 580144937 694268789 937860280 969410277 542750954 597197877 897370278 986447308 193164562 329211872 967764041 997907970 404986441 735525136 443265628 618913331 411466354 525387910 997247976 999333664 884739570 996383213 568820861 777443944 866389664 891306864 515587772 613578772 875061049 937906815 942945388 973529418 851495514 912521533 996090950 999184619 159446733 939876399 987506638 994696838 237889444 258739412 688629370 743422930 123723321 682028839 571969871 957636055 83551247 289717023 295972829 511154335 327974977 669872158 751377759 803881292 330714258 684438934 429971915 797776956 466043597 607536110 917583295 953644327 541827971 956859437 545587048 805553641 955224815 979945328 726603815 842229977 870520682 946111165 237361317 682835143 251978188 352152412 871350525 897163682 709884813 813694215 488303490 763262642 450927484 801572602 378439103 687121531 836658033 907451644 474715334 768371477 596673776 895662995 948291489 969289726 839779764 858222416 492823192 982677877 81759166 718004600 853377067 901952604 989796169 992210849 666076056 867103865 713481771 809109289 287910409 307858660 865169730 919250241 188045204 933747116 530689498 804370032 188954801 351706981 983517362 998338217 95937694 757532175 791080040 961085625 852356852 956794725 778880119 780482632 600865589 924209931 208239804 575809446 488251575 961579656 368807262 723139302 354422027 811084192 89926193 713168639 524504434 970994490 11419756 854336036 62077147 798624325 888714033 929540168 210863483 252712427 236607337 646933148 376994908 511349880 757609832 817753013 572861775 955711696 208196636 654740579 190284132 797127165 774051314 924884569 793725857 994487300 863557388 877943580 966085626 990429114 300820762 327104071 201296029 980570462 633605900 821937616 600838289 773032399 475123870 874715654 810922901 967536864 656316327 689712452 512626342 933463007 63316764 339585272 948528962 966046997 689094678 703100788 827637981 845442756 276533163 433223784 701271780 782824961 611689592 616781728 297771582 669995161 760634333 820327097 939258657 961323407 62709281 444450267 812338062 856315557 576290718 824141523 766605074 940249312 371644791 394615100 327060692 780152695 706664845 759235231 63597948 832610674 504807168 556956704 633806044 633933556 667382848 917674056 593864260 676053821 122745087 235401612 630166300 979371935 455732673 563260596 405487753 765272377 361343421 963851117 136027504 479627035 308005939 331578699 979440865 999537644 175381116 363650771 89873105 699574063 63743934 133614046 512101748 556156970 928275883 960523591 537814184 748042824 752144078 977214105 322279205 603487431 441767531 631392837 493602632 501750691 221841929 351200414 33804772 449459205 198296984 494744171 836722404 978538242 641941593 988375292 460556470 722807818 38941218 794299325 366875420 477058066 206991266 878683611 350691115 860276153 792616127 990299783 126574886 566792736 277676884 590917003 774213869 852976140 878149934 996900944 104356580 269281378 803706944 911990817 92976563 618057341 973873813 997075507 285470005 635130251 828959540 996019580 672479596 935546706 131478893 794056229 838746432 912910836 316181490 677190924 511554615 757638858 679728363 815116031 536919520 637634308 21171503 560766834 533250085 615407587 115529553 536792236 716207344 942103569 352181136 944299784 294528548 888363622 681604220 832366750 708373433 757232942 769439540 981263530 830164742 865663311 455777679 693209629 607391042 661960590 269591257 940331471 213925711 252361732 161116543 610837406 9443209 405642553 158470945 605954135 955282396 993889161 193188501 445059952 138291618 735191831 308396705 392897002 905598570 966485921 612031916 856935177 700164939 967751765 975589891 999341200 962715229 969647352 703270022 864186448 557092203 732758356 309198504 772926427 209543803 642280617 620706679 800937194 694753186 979189516 611093041 774422665 461458892 963503946 267674409 373534333 467172424 565510619 71521363 965439710 883116020 954375728 943533627 951891289 476314189 477837215 78541738 326457907 961440245 990329291 64836280 94746522 852085952 961165010 694820558 970223796 944363064 974902964 19068691 193319874 255275184 284110731 977098992 986961338 712511512 758941928 864234388 899896596 529672936 756005674 748552665 766438306 849758374 928524502 442310380 857876768 274180494 499286096 540615606 907381366 24619263 243792711 147276243 320380074 502271430 884641131 951316810 975196988 727209446 898518145 809804679 997722751 427719757 764817970 972190228 994089581 52624142 431297511 859212127 970115613 27968110 948953306 828563513 981717813 610126907 848019781 865099976 975799947 916110347 952075132 995643943 998053800 697625111 840300259 329939642 367288677 186690605 690161737 875598819 913784996 291119394 991579416 565884121 747037512 819714426 974727119 7427015 816128909 290333707 911377971 811144503 841839901 372181404 844000329 909602056 933945401 374690685 437328331 187092873 264880083 791528450 838017467 273746215 746547381 487515517 692479571 884878652 934297062 515736543 886927500 290887317 671654033 791613964 956479575 508706089 569922411 302255233 556416963 116773164 612935354 522891276 950125946 959986079 973408998 765334730 852148128 318141904 975408561 969951898 976244608 558213865 610568450 7142228 751228587 120888713 223526372 588339750 801927783 416261258 829203441 558666624 827989924 653857114 726766231 363818815 436259744 509290067 709570401 648142459 773680858 999912117 999915862 398793000 419417947 896267731 972194304 535564304 717050723 171708473 586594406 580053991 623878179 932990111 944305546 296145499 688372933 553813897 896293622 997701775 998343637 472251141 826586301 779091300 949754710 140853333 523461544 506369644 802178066 765761069 840251510 504704328 792541523 41205122 877378321 873334139 950680830 477357173 567197558 111527954 520792726 357519113 633865740 615651174 994752786 115201266 394625798 518760346 691033526 31283837 282839171 438060496 522971857 520030024 913911859 3726766 882888654 852905983 874124302 695283716 770515223 237403677 416201736 48614197 103008710 747981835 860196793 811476961 900199546 615853698 816634590 711681777 840926356 728869967 872015478 677818930 790053835 59370566 896448797 504780872 663771846 700692261 730610300 253653546 622358429 364875777 889773094 947189761 974277603 22799434 63489036 150317604 523328141 1494210 19704795 648597062 906599823 134419969 991095049 534072132 695602328 634467519 756176377 68133829 450849082 79881268 353597142 64031389 814798185 524631222 878177285 495308398 834320791 758676929 911924980 164641645 730066140 306060114 792436456 312024778 753030678 45291338 884422775 710876731 958190052 676567491 912352412 432057422 443741082 470045634 802066913 114780786 698258215 438805124 599102308 14404087 840875319 315387222 601101931 290022042 815880263 859850365 929381242 197172592 321684492 840409414 948354442 981429235 999252018 274552430 533212493 745085893 972878574 232487871 684778757 796013521 925615631 729568842 872273486 917624377 928901517 657589557 776343886 829061604 961321323 844452994 985656293 366498381 993673582 813587747 873593755 740981429 808517608 441959827 530069278 682092908 981365581 181183973 534797062 697526487 723730472 468509738 584716005 280696210 975556372 791124748 817824417 334679967 394177032 47056819 221375640 879137845 945068771 843543111 916144970 927055304 953776234 342677425 476987272 757080356 886580185 698329065 721233740 291454364 697070582 125096908 188737805 652376023 960390684 181999768 946242334 732325889 760358526 511743456 680412035 89296084 656120322 180375871 609522595 810096611 950922537 77871409 282431987 445202943 832155093 587651810 819202816 951307917 997686742 384405658 846913970 314750140 807950733 64613448 134011634 544381517 812540204 473960927 812664061 404150766 451574782 659965796 938863176 369398635 898250942 67186149 906116970 736527942 994673927 933050635 975268558 342606003 641429362 719404184 995151880 738354621 878478192 470667138 644505660 944273416 981753661 704372033 712180475 563975537 985260960 489945223 794311335 142574040 356175225 5252938 323665217 861722212 924365307 810660819 937697720 379034197 798822647 76222172 829166356 383839656 671045361 719931816 948564821 762618636 896267770 790852906 860022109 468428930 671380860 923330930 972459124 536063772 830406284 120079771 493010373 224600010 395476686 507148735 637787369 955394562 991159298 901083063 966359170 437907239 884083717 935098672 968365912 850609007 921195454 589656319 590161406 254293252 909445683 77949012 265096843 85436354 869008830 901024893 982540728 11248169 638305937 85818812 398455342 336093881 939622748 597120774 750525585 176455306 486456479 308210915 540798645 635763728 905790477 694036026 753208937 115516203 248581592 888447636 957359289 28016114 100232880 888267799 915584122 80252955 961720372 298629870 818007459 104961534 274155256 334662961 930929453 717202654 859321039 501068809 792655408 644943370 687308203 285567308 522955042 230340718 698445758 317758162 701518265 640843216 746297737 638466971 756655314 236450805 932474666 255436931 982598420 414213136 816946273 1577544 15189693 329652115 604903343 596394754 689965304 411426076 663276106 470442531 609890981 202595568 589702529 29754156 628537271 277296732 431679110 48469164 759973930 635691472 667360164 419286818 993027376 207922202 430809132 251039801 790951523 735566600 743350411 223882720 901164090 647555525 709073788 908706204 952193646 841846935 958948968 427720427 832186537 864349242 865810478 658272290 699666298 493795042 555796521 571604536 788922853 753487384 991119468 702085104 879539445 700004869 708426044 839422402 973852213 96703714 595972660 661206466 990204787 862941991 925699706 619422154 825924288 592539688 749234880 656949203 746451903 493560603 749166133 111536721 914857374 132767973 875289149 160695361 928151227 340152637 574301680 229374486 988749738 221773742 905961664 854525715 902646151 992932524 998007321 879800882 958576257 855466497 957990838 649212479 734422760 124153738 201427256 190151923 916514715 355980257 975205283 939265836 982979488 55627020 61442117 317709181 757269386 435072323 947400484 558275249 885374345 917429064 988127509 476564214 892956056 483444026 937262340 509671323 845609462 947630347 949080265 935672167 935937829 43809523 258035490 896567870 910956951 684838727 903425070 76961003 79383141 246745210 703542979 271772947 617685596 984756264 999568670 87657892 377442207 453313801 599370360 506617597 794617438 997739528 997858109 645957746 973248632 664365441 729857810 305396217 887845723 80000503 379842960 185725875 235838151 201408358 578234192 411357248 747165553 547917611 968211919 737429661 761440645 409768195 587800018 271458475 309787384 647954180 983589014 299928440 968098876 59653238 86299059 410285408 752805229 710037584 910200100 65965052 532641199 959022336 998043694 95636973 291359800 885765970 983024362 896094950 974407320 847046977 940718911 731542137 909893437 614294884 993366932 591823411 685016757 612482686 788047663 71451148 783685809 9064891 129967203 661752029 987584059 125224184 994772183 271498328 736949809 397101389 489739185 314265203 891176842 534519930 824217514 120433391 584209913 976032717 993894362 260398440 294656793 850739047 977452264 847673646 979888462 241967902 906278507 223441347 838597036 908287722 995979315 812100295 853267891 167390259 546203458 845172718 856811549 903561565 961494220 477709968 699653456 441542775 925385157 773697894 964729209 923112971 965536607 687642580 994255254 410350341 680751989 228331933 805103462 163972333 868857100 660579164 789713511 448017531 975250207 587954441 948164554 331176783 605859175 75459862 729503804 846702987 938421728 151839266 589551490 582453816 771161117 533623334 554303371 354781265 992367669 518692534 556797352 309905195 900056281 819472791 925277361 282590786 667955626 15845732 642130110 655436439 879884511 75767961 597164218 16508809 414165987 198798043 325753150 320771111 733775767 652623038 684185148 800597228 850714706 22652610 738766538 399051803 810938231 334464467 415107847 665410466 973452217 498467158 597522036 50841188 901674707 189590280 979794271 862013531 887978066 551636896 888726177 949300869 990982730 316723855 513734227 311946200 929244396 394172767 790546257 21539802 420720040 200362887 259618763 30452364 603703751 101317150 648147026 71614840 352416450 306888173 549821353 666866111 712134585 568602371 723008225 810435328 875814667 818428708 938948324 107515699 242159840 113100544 129522846 179143587 634929313 851722633 997934692 452732985 479600397 758603030 840078226 473665443 482973401 52508675 734769974 32602882 140357982 385559301 994257298 463087078 698446813 499257943 519645104 326256799 381629768 437487981 674493672 281106479 790462652 924820376 953241504 784158848 794318463 707136767 869488908 896010542 977318899 176540816 344891392 716171282 751890256 275331237 517855381 935841208 945120066 613226482 883402226 726936020 915722958 277065635 493867830 862502414 984967621 449081860 818341841 37934566 292058616 558005142 742983310 270128502 839212338 436611371 602352389 289642807 650946911 180991325 412184368 948508018 999697729 901055038 942046900 184557170 873699590 627856370 678226224 151905538 587477390 150147186 390232806 374195646 523188883 9057472 381920986 876612170 972172583 383702551 636386068 906615195 948232414 959132229 968885823 213725767 941050211 142094095 182163918 771304063 943227743 681285060 745327274 396687874 954710076 649206586 775170778 338372623 354527134 91093186 809066723 590895877 765255769 754862875 987413351 733842957 739800934 141455718 603548488 56031514 633314138 120973153 352870583 172725366 564338717 217536518 529784179 490290504 920818844 956815209 996680622 340323382 463804392 604593652 685433521 892001222 945580648 827050468 938269425 25250536 866948851 835979893 916014129 875968770 941353479 94568353 760097960 395539491 538012082 885984775 927939548 22692655 210370404 186586198 337860314 755483884 906549788 848642579 862368692 367839026 831270594 769080523 779707302 2696215 251278436 275233684 793321716 905969497 917827765 702889950 896264806 604599984 767182358 340166344 708621411 46691612 399916806 866315491 974892161 301561619 900532249 620105872 963574159 160485354 947707442 88047061 742432450 996752368 997278615 930550474 946252206 750381798 921260721 226656357 934989379 177241686 450901804 985789651 987757465 45484208 194797726 189148261 592165374 232996641 260250546 152969811 802315184 210352080 350408777 658746899 663317236 336735442 461179072 997684882 998049818 413797808 829864297 670916338 858856117 668443038 884095735 733405231 851626268 468689330 773724847 358626728 869136272 564032248 707333593 906671371 943596451 496153141 809765331 448327676 602437938 778652538 815794313 943812962 945173954 47905866 873523217 845951140 968574958 372231906 881604110 500320096 538874860 579276150 787420656 722027295 936760626 742329407 916269708 58396020 497284897 243049156 644445261 841815610 900373042 400562358 897269598 555472325 602497394 91858192 819749505 794584391 919535100 296690525 354814013 4178761 496573150 38088274 280049225 685099317 702206809 66940451 330094444 526288274 865698749 522370661 603146105 462320816 763482097 93744010 965668950 35764450 193442367 726481801 761223019 396018113 542226349 910919524 961448873 460997025 820936478 329010858 974308602 90480752 858852181 501177914 855602075 790104930 999400362 961429625 985187774 145404894 586313193 32165196 937594992 326955228 838849300 305898174 339427242 321096620 573058648 392414852 449696000 431627744 782493473 5942488 936248436 425996992 946298179 383118764 887674066 466016303 653711809 210697183 888848492 393952969 558520926 500687603 991341242 688799591 998379320 628151425 648907509 397605435 932148259 919794287 956302409 35546351 538127740 212948008 242412215 907154216 971913369 686761150 709960152 950650890 985674728 380062632 778899881 810589794 981419370 56361480 203346603 194763467 967458078 883046648 932821776 631584498 741018733 274172628 637729999 385039611 398973391 396771675 446301773 888991935 969439150 441645413 680893717 682789978 796665680 344821511 903684754 124762818 637327741 983008093 990600351 205670981 219383524 260755628 417038645 588625377 957557706 288885604 655850577 895838300 901135097 957919421 999145754 336331204 824826178 612686084 866386418 635717478 783946331 545709249 823853915 280610975 364254351 19039372 362577679 444853015 447991925 530528041 593085452 254564098 500214456 354022942 455334256 50870459 393544445 335697465 460484044 993052494 996138395 608117674 946024491 861493901 977948603 890519308 994002038 968967176 978400051 537501026 885472420 162941699 545649058 580101553 960869872 420818778 886533740 6118402 895384998 37706536 500541831 871993378 965597871 440263766 827985778 130055800 959906207 25237355 682371912 769668137 855247546 982247692 998752999 99935698 298894962 874814378 928059484 74290787 185140916 133853214 965785527 567308675 807583523 459749392 761775115 910214532 988126867 407907832 478442452 408155372 696844447 884558291 930041693 796801363 842664385 279304230 377743764 763954247 865248491 664833169 765964366 984943978 994523447 360618400 377526451 669531498 999168512 866744837 938638723 54542184 511820373 592448659 811924948 768701823 976662120 861894645 999794856 368370185 989419248 307772090 694560257 56679750 811935815 291284322 304250183 798697742 864818024 87994417 422457416 69418853 276369973 664065888 858377650 817977986 867776635 701342349 731722641 45832438 851739771 220745006 487904783 874040122 968915688 735586575 954959262 250062445 869967287 856069439 941553748 61061168 669446939 467995740 742582867 760473760 984607135 888219012 910319046 252244977 552937247 581775542 611454060 244004532 694104567 500288053 542529312 324743110 340146882 377169933 603996645 387557039 453525268 543518497 909753329 561084131 775843861 493733114 762710358 463277595 952146981 984894873 990061418 619397979 937830877 917606555 954670458 70054035 602989165 350006607 963543971 377878024 480625065 816609992 990852993 984432278 996196362 982414861 994001168 875417805 965958036 901069777 995772057 264997754 962954139 238363170 940933813 66290205 822921191 715609613 912094756 400811025 753057009 62539182 160343948 953911277 957177635 540040996 840767877 122321314 609061804 416948767 900184554 497634391 716858903 670657382 983970064 348287932 848740511 531499245 852248819 978108386 992327076 510631296 792357625 72888581 840913221 320034887 685975387 46731445 189204996 54221622 239725918 765723138 867430451 857266446 979669549 592620642 892596569 588109146 866515910 788182132 948184812 718570960 725548283 531464858 738253443 115448812 595217240 524281844 669365629 223097048 457907638 55800291 333959377 602643640 687194309 778405257 999894537 62948686 413694085 477206250 674772382 538591131 743788909 645258304 785612910 870419467 880112141 996891140 998208600 60104830 374359311 954294906 961008374 84678046 649290258 436293917 753174212 417370127 610905769 529509784 591697375 571240461 616794076 321394280 989877810 43349667 48143131 673837630 900122268 490756304 696951302 559265147 859841127 264600689 823557480 509355395 903716880 46232634 707528554 101829133 693310980 814632352 867050264 503544238 516383461 984409539 997257371 379283369 594572423 355827112 979119625 811894586 880228512 374988179 675691383 74801922 269413374 887128244 906150271 922335400 983520654 99707666 806013971 587208547 848254521 118376345 486478812 437789595 823825231 585402577 710661000 911531280 983655783 465031894 675510398 376915681 921955862 34675904 428152060 973189444 983938569 44659579 723974654 160863418 520775825 416274779 980238763 391368740 588536879 688363670 822259250 445849027 776412713 242671771 496433530 949982314 953105732 257082152 518624443 666241985 703263654 903484144 903906356 52069312 663773496 965497003 969416429 276900575 504244283 717921045 953404991 386578736 904301897 747679640 951349062 747182114 938840717 504913740 520675843 199312943 925392729 438268143 852861615 487216786 845239517 688509917 946828863 687651578 755865252 86045262 255862347 755270574 811510226 629878589 975357169 375471849 474714352 578945577 662222215 13421130 607242993 60912971 669600041 54257850 279683205 715671717 836292749 772453403 855854717 234000632 932361999 344277214 678984813 554916962 823744543 76660133 965523230 23719515 349350411 609909850 677694210 962212755 978047300 447607327 616043298 30159828 908462167 321962974 363808160 760922149 765484580 596945525 752499865 598249015 979231791 999538838 999639434 239449967 534965954 786556974 886224515 921560544 945508916 25994028 979753292 710188622 882560991 432994088 910592720 855211450 987429410 379524384 642788116 116311665 158348916 484701143 984470502 13004987 472507314 765942011 956022001 572468477 590862107 343788519 772259684 525479801 935972209 869067051 976976784 254643947 314713640 742973840 847105431 48856376 106759056 28416184 403837318 255886619 775140904 649723121 687606404 405892658 959067704 452417430 623600766 271470440 743842511 598062477 952678079 337383518 652281818 121968226 840937713 730779446 800345328 440617817 737496491 43889163 709342339 212064153 224356007 904360290 932003042 200457137 963230545 145830584 293808994 52853341 203233274 825167886 981704044 24696537 642555979 54823206 826663635 766079967 954025714 250777804 411355197 162477152 542487245 149324062 227437495 777522950 782741274 810228732 927218098 815887717 842742032 873006563 996896443 859724495 860648698 361394981 767379170 239862686 379153147 343504729 552936550 584588857 668009021 211167663 354652124 28667105 194766107 147054838 202963254 390324493 893923174 35564811 751124581 68485018 80904277 5779185 297772827 336290580 876364258 576818966 739568800 102990499 914443377 322170555 781187585 70390183 928390542 316922409 407353326 592951852 610550455 404492192 483589091 443761728 979623295 127311810 718865687 536808411 575886179 702276668 963126071 637589055 798316778 480464682 773174543 222290652 596998351 960810942 963475900 570004148 901348348 330829506 599661450 960914485 970049232 909537835 986480755 129342509 377246236 507387249 652228792 705358208 847298704 782219644 805355293 536122533 952755664 92055951 185415786 923233853 929934080 637288902 863394912 137650539 647377253 829419207 887997031 88567410 963229208 267426166 664383431 967780314 996699846 402654053 679337861 211708403 771114158 729995521 751426474 251273746 566583504 252818566 423561257 425419941 554159078 427511579 649781530 422819999 994856817 24132012 260132535 390546965 926982906 494647674 655155804 397365754 801500412 659590781 816358361 378796459 384452652 801145325 835310309 335910074 677800971 236182963 895091554 224515994 808960912 980236132 989098698 576520162 706981257 620337113 845222294 379752980 855714673 135896933 193689709 860741443 965825557 887055525 932996503 325608622 752647507 431901878 786235160 332215545 896862984 826788364 885586533 801855722 807032628 304285251 552887946 454852257 892464105 290631260 443399634 637746392 994142623 499617430 634854659 393805580 842300063 23524577 216600779 516098335 970467047 77266725 297116594 362395289 703027752 834101003 991124036 136991108 865861232 852263921 906231483 703732963 723132819 551646656 750753086 548868494 686152195 739424219 763970368 582485654 940476610 128135669 598341600 723260535 801514676 497262080 971840844 367315080 438933706 843775180 959837532 816449378 909986102 672638988 881497867 664432296 830901850 19288201 823832137 151244276 345923446 690524340 830530538 620380008 816689472 741635317 995160616 159506468 771326117 955113735 990113494 69787310 294565137 224256000 915642431 143125661 868210096 140397555 491697100 295602673 526800205 603617794 820008455 487413921 714354746 178022932 795616543 769934450 894504439 634034248 949872091 885139547 909674155 864970405 959551174 8848582 90768262 132691037 512706440 197027672 274469106 491739030 966522857 878340761 915028588 264438140 667439229 25408199 685225004 815613047 905083596 60901073 832932837 431804101 653201977 730985388 804164591 163742802 903009136 573144309 684072013 595237634 807660811 491127803 567465943 680108140 851943376 911857144 985816976 930035657 983839152 550966004 585966071 587310845 956548214 180948083 668359768 73084084 729744161 232739973 517024557 61564016 319275251 945993752 986852605 623599745 791112474 413201968 488080315 784381963 943256169 918245455 999033981 803802841 924085189 839354955 865947811 200189656 694251611 175986521 836148338 583542157 820942405 262026539 372499668 256941971 991465895 376262035 474807643 808677989 838317231 423446355 676360170 290575615 316915227 17474980 524808272 949104100 987668981 626608592 698456443 379191651 695283714 360081205 730343219 872769056 997783919 538174221 708664386 496426732 755620973 503705439 692946323 69259926 169293330 627336794 878902194 794331282 937639372 433201581 497643814 543641667 952674036 537008670 903896618 873655214 907722885 646802163 885139627 409167033 799972523 500062994 889840256 411636191 539862792 933403971 961367641 664438294 666405259 838611427 954501650 676511200 866492379 333849277 916326668 301417707 640242273 914094219 932793279 619669838 771541259 472870470 862753304 952440460 998550648 781844433 968112708 541149069 660841126 770821627 862406398 472394048 993815048 577821654 865607700 80121337 615451301 520516208 588712382 67903488 470327120 301231817 930156575 362492498 563469273 599678350 820962382 892706883 939347818 356045963 869923686 714397230 721287381 674760868 970650782 457608180 548381149 82937478 174065151 360475917 986280262 59800766 305274664 4866332 562441928 736938396 918649611 939387482 969041117 328457543 761981876 786342944 984058439 369564733 414083246 732736146 780580867 46374044 837840570 381135629 989339576 83458002 385260188 718739737 842240307 214654243 610477039 620645299 808640590 625098027 680244468 539406841 680804568 472301647 684878319 494056330 821990517 799363862 860633070 872647144 997119431 954270264 974886626 900193088 911929972 757536175 964045524 834233902 872205118 833195641 890347202 751264180 768993636 309986829 693569670 939937018 985795461 784520064 995934962 148917791 892830425 611639413 797931764 867900218 973737494 241898344 536565212 152054219 222788142 979717417 985824378 943046670 987376372 139350677 644098123 480849629 581922482 686355049 724509496 308944556 978614096 965061172 968220869 361020885 579142188 290287741 431025566 650167275 710801668 819411383 832271582 523904290 946394931 242793447 247076104 49882337 965507259 152614699 325327099 298105660 917272173 879170572 974874141 364297112 688440730 329917594 731652562 352026645 498726038 113838726 421556174 698842706 871451367 624345056 669361552 647920565 854832543 801894048 867214185 570026707 692149018 319060449 373606280 338478336 608928336 101884455 987028318 90759479 910182638 707548648 845077458 43355834 631038797 151106440 477810576 697789196 890480763 772458727 851833092 668672840 956317959 377327233 698565141 30258739 309473469 823082901 930926996 921548191 993330445 184465390 990350122 921891045 999434860 755982825 951024569 426287755 926390386 162057181 499297279 192274745 888900357 284423261 946533636 148683809 504176049 219019545 409010041 804943123 819805966 143379652 767780595 654832994 961336673 665790786 671463346 812477447 859380923 336416938 533777265 828609844 913060608 486134325 962306303 823473112 993484008 492300898 527053124 418071613 893379775 690270965 798141386 99187952 112562246 864134941 869285171 748897347 798740950 23315775 244541889 860296563 994158761 307723423 804697838 9504899 249635204 304236893 811191573 645873578 647803109 432113105 861980480 357045431 754238716 457998602 689810132 194677045 751595821 922570054 939296701 923881051 988993087 2888155 619685975 13525435 950158032 205101562 480578058 618520350 770267812 438660673 547776972 849208963 974792174 224430777 673890924 408860397 918112416 93960619 923175487 840713104 934390471 652567457 749969754 446749624 517430817 340621513 698259585 511522977 590706170 666553494 954107390 647715293 683340523 295172985 871173374 946506504 973804963 296692046 619824055 298958168 817997565 270609988 610620426 177204159 647124202 354982051 367973985 388095560 980052665 106977458 111424890 724870373 981929718 626649636 691979141 591194089 897156229 821470977 888917839 27202597 722774245 988068456 998105065 338093949 743539572 184981576 238912031 310637768 984447344 531743410 990447577 189428352 850656119 449494474 577905273 603823332 687284401 354178566 845143255 830881764 867928341 170355481 523909162 335152211 773732888 821694983 853343511 319382553 419032108 839760760 849047626 997109367 999148567 633005121 952936989 38698331 221721643 461983642 804380541 425648508 568807476 890972681 998723123 408531202 667541792 45941407 340336052 612157262 805161062 600958078 934849856 455372472 786098916 108460039 395613644 942754406 994863422 938079766 989271995 981897390 990956435 165874408 317195884 123115482 778238372 558638014 849900585 274869242 608072889 596118637 690532416 653244516 693268191 880405110 910463779 500693020 851730814 360524073 370549125 551841818 664550709 513911098 687599113 153503343 285955781 236451395 638054386 361010714 726360922 522598618 848000160 223875823 705193918 691266536 699261486 530903017 736359517 883045418 961244528 254031198 552580630 409745757 904220673 230973493 891493271 554772624 629234798 791782303 848286153 186320719 917898919 333021521 866871352 627520806 644032955 260201020 426217163 404060628 764881615 534483351 665923684 700771176 887042849 673131531 816505393 823995033 923696622 690415648 979456520 53443027 90600182 477263087 650220709 160830590 706961782 41549121 377938913 97178369 394363245 455473017 765101818 776924549 868372325 565284133 712056664 899023426 949911046 25427120 777690250 589740448 611471088 87069255 239347785 99689064 715242085 611314126 749594326 501929322 724413002 270275140 294724434 836329236 957817551 244636833 610741092 719871760 982568431 131401681 396762231 57934173 862898179 363695769 919460849 40115915 556847372 223728392 997123674 158007631 384592480 685972433 947056068 79523272 807011353 127799996 877378827 600905903 684035091 983579119 989753026 438332265 539129875 241513736 801187056 307593157 466300144 727174137 986716717 391534223 979168451 713528451 771841066 641931955 788502676 790581516 914981294 59113551 683651355 873796578 910961136 74545509 865864596 193788641 740064043 821406912 957854689 683928072 945900736 169223379 971528486 944655939 946471414 946223835 974100056 353695275 731013475 365745959 966382266 442597250 938686886 373491820 520657119 194242740 532983200 178076273 380717573 43800881 195752620 582505445 956146855 379048652 641102326 863159151 932160801 130615111 340177824 70409002 132753164 764280981 920390736 138231150 904596756 523533937 838957149 944835396 970563637 698268468 752251083 271375638 981284591 498500869 764448660 312534544 439743495 607299475 697186333 513430392 679123325 668460878 790114783 785525791 863682520 676959693 964555361 351059917 975017597 410867742 787543380 464134717 478821697 464566222 708471011 11934840 137820439 413847159 590096102 209032819 433171041 271291760 504139143 497646076 991764401 699790937 739758484 270254161 612098643 877840678 932015568 241362443 685065350 898037766 908822466 11084174 999685787 230310553 837474062 809517183 927734082 227719790 813214747 920440510 995082933 784334589 830509534 573017795 754992699 578103459 933406148 242229013 779430994 795006658 812632196 249540860 786443337 314093325 349857933 992430686 994294351 683769788 789754755 87731083 123225170 870092596 998328608 452475851 500391096 567704112 912445687 285115101 593864187 103690044 488066067 318544971 694473057 831480894 941711472 475466736 782849922 112813998 158525323 440071406 776053390 597118800 868680404 368158510 625620310 964782447 981423550 500500844 501372973 25443270 205922539 276331945 624234823 829272179 888444013 398092009 677456231 913153000 962898092 160336655 420153762 217903691 301913027 46923680 521123706 741657145 968773160 189001386 931392246 190972970 775276425 54546814 282542128 722926552 986010649 840076716 993205161 321190636 671299656 420770378 753503521 340420974 905545666 817938801 924562720 235683994 696196765 956531911 957693690 554284948 564272039 557286918 746395490 800356661 982066006 776581660 862747121 761073851 851767414 324117294 653355440 851732157 983810475 233280186 574256343 633056027 638167591 678926021 721432915 966688190 969843477 40709205 573805449 655188094 934666698 304531081 869467696 665465155 967579199 98738382 736209847 544857728 805308764 699132376 835396607 298693263 566176350 793420368 904010988 358487866 668989199 676735406 800760192 281988455 895364118 169894312 251995664 791947452 992965355 450138289 611916128 879087220 894463291 706894827 998175098 68842711 164729510 206880759 766900520 85614508 950501845 915016494 933926021 913708938 993967521 436859869 740484382 442496532 483935302 176258065 613930607 566626464 883821860 443349399 761199485 806689879 970479150 164376653 970305528 676441399 688888664 45796076 853360233 220841865 905162162 980621432 994914838 142780609 762864362 834800460 934532228 906470803 953451209 551193559 768862589 883082660 997294167 272128395 490224833 104286092 128080921 666182951 855304835 303403735 387500220 831815640 960807404 291190718 569799586 779194124 814831409 558853436 990029755 247303917 989416530 83882336 488855569 642351641 694602531 736167410 802068173 229287694 810717544 47048913 201729601 282180376 625208733 374962243 906764251 814641619 822841655 220441800 661830420 623678321 810520738 255918693 851375153 103480879 565835290 557870581 593895721 722530197 815146572 69050661 877966701 792529926 825167130 637949420 832652107 743557413 811932449 866021595 966337328 285411477 299827008 512907143 816513969 556683250 566784598 368736521 785273914 796027802 880462635 642813419 710803317 123766472 255933122 560674622 758738608 508259462 856776753 776224168 936300028 1612761 192162106 631953721 855152687 232673623 267607021 392007498 747890580 853652806 895217122 212282759 978391888 987474097 997761935 988476901 990533003 937631830 956849968 105784123 583537782 121021722 192440817 644630431 919019272 195429263 903329347 945269397 993978706 37166960 936617232 482900620 731349359 383645161 680378138 5284798 717282268 205143300 542039908 895106376 977293294 300753333 637262887 435369485 680534320 807317723 813290730 158614187 996920193 631946280 724941064 498298484 735715175 148678649 857988936 773554084 946566721 784574213 805850280 378771578 437491277 347112337 397674554 487512696 589338605 176983336 419805525 869256971 967409152 912596591 940148423 811444211 910406408 614309217 787894315 724556018 916352932 71612660 931211161 54573128 378818623 713824756 798855144 134390178 950241316 613009325 712773212 306120193 594710161 200932307 415511069 513269637 860371392 232708097 289237185 832338901 950852605 796271423 836141887 807034298 903446266 491596700 820457460 660562307 838988088 320418355 885895795 542674719 883412581 613562198 909148751 652777567 896836899 272693309 959995013 879552928 925081111 789758290 891769284 473162256 610115602 998120332 998813027 401526287 982266714 464660772 465224274 507372947 934995849 8917510 788697658 787269313 929021528 463946928 930904145 171609927 908953916 60270090 549345253 873370199 908138758 221953726 916029800 942967772 961034377 637770654 704316234 130209118 396873552 315712046 909042185 651647523 922699187 442713267 479771729 974849517 977263503 404235699 517316486 705840325 856573662 839794225 921217650 268554665 522235393 463681291 714383617 74207268 184651428 172665574 387950743 645326644 864253606 684499350 843637280 838597519 879740058 153976914 780434270 95209115 308022426 23654606 227834158 238271100 488589682 100755800 872280336 279459375 457965265 922351012 964011228 296869334 663755595 978962823 984645160 612890691 630919767 138274311 228157692 806927825 904119854 98135672 383717798 704382648 951691208 82107948 924987715 315911977 338231024 410453824 967007720 740781688 835456712 628874661 711253959 489567492 930789407 622664502 762860474 805935842 941660105 874779097 922961019 935280360 982197896 490668036 818751797 49886898 450069731 878773335 950647909 554185446 600145194 398070810 607598597 166938333 516757094 134874177 896366935 865244218 881894837 627284467 955789842 300022663 705477479 270704209 316243156 678377445 726170143 831558611 969902374 624782598 700504849 265409484 508390776 28662816 554465741 961650468 987625628 135513720 891086674 71421016 480538871 899280558 953760788 950433069 984422611 530168117 958488958 37175874 500740645 975331771 990569862 974908782 989456924 807695263 934479292 193989285 692568245 906490395 927710973 304519212 520959659 980760582 990871673 662706679 811677036 185927760 799800928 400708388 738624719 814506568 853322964 874096073 987187503 308651678 359024098 505199229 902658571 331809631 831912168 467901350 917796137 246951032 782400648 486101606 973667853 594526279 750200675 662411604 683003499 971258982 986569775 972799131 985545928 225619254 409955189 646649273 986430711 987875237 993950173 687091371 714615282 501277413 966014581 607903570 824134062 14182247 234545305 118094129 271032015 815009534 852098599 154201566 266911438 544938362 571423589 829700502 921122298 428688935 491267834 455557093 862972000 621975076 833004054 672687438 971985268 864218016 959999103 733262657 984731327 169034551 227480515 943385995 990896564 721139055 971362757 201892305 959198076 322423496 895952567 429763709 743525444 732837082 852982389 163915569 399736725 130671053 132328445 421648349 649824764 294098892 637570313 340585345 549014235 814015853 884071947 893333814 921578792 975542357 994391165 623104768 902503095 712823309 883860173 591059652 782101330 302208635 524117832 69908946 561089207 587299325 823954753 956569067 993349796 234990099 454664729 129850947 261327066 569005622 593869270 852547822 879139610 220125899 402921220 641053478 769799781 233281738 692968844 868698356 949056681 993422242 999940374 916300826 928740274 709271472 957935054 505264832 769098939 447082688 719466963 271010538 435780176 578598182 906214095 776458111 842891214 742463762 845329190 336096497 697511329 396537185 737484454 304052895 602322782 409853047 478277061 397262188 960210506 93713199 619411602 812846100 872342947 203603550 517918941 746491482 878440228 241744580 386341665 410936853 549733244 501362911 649355139 849927719 968486811 848919077 959497452 513376393 766906489 799531080 926221994 757855494 984673193 468414494 986381361 654393490 910896272 523478623 610455778 818851411 820356310 410294582 622307245 760304528 905024171 13547258 807154128 356209556 506427299 359208786 560801249 133386157 409280713 199097099 991471985 481300260 920305657 674674495 719652604 837667577 957419007 891067973 898746661 703348936 943660779 751404050 761783742 942007513 982349140 513550044 867147505 928570252 986669486 302582429 571704424 244195600 494234250 701254783 762839988 938421967 987343694 375600829 875981466 748286896 952419031 812592749 942068327 539794273 810231351 557294885 812253440 318310043 811724337 885112169 956733241 667274729 739215941 91921014 342487690 348161991 926403989 620302719 803337957 626231096 991735652 274510154 780476099 39866936 905326211 210844673 343919298 804856471 985078141 71362595 336944331 322128196 726017138 703668675 903079870 135494829 891297028 954434668 982959878 438416254 504530123 522641139 968226526 435276046 649590491 818834569 972432223 186745177 474075802 99265629 153291488 691911486 851525024 698165808 722818315 288019819 886374260 849802383 918693397 912321590 936990691 154416725 317114166 233346771 502452518 160054853 597796940 625938378 688326065 295922293 831837989 131315508 453252769 624418328 890062761 4624867 331306407 355575531 721941637 667915842 974220725 731436594 958505986 774531918 822686772 352524029 879293736 429094916 991319340 637741753 845116963 759558150 771099021 401415464 931179748 920655117 989852668 345540837 554268275 417733308 705054093 56882982 579212557 90408913 355549749 252093739 990086887 45499240 708377864 566659741 914227661 33362380 766131080 548940641 602138108 184739128 370970998 857757279 859354962 19052864 264521949 907956601 997916166 907434508 921035804 323543833 693872939 887733624 996389732 997779027 998303118 781885818 895154479 571843529 611239680 221156919 243861185 94061480 114725492 721122011 902800467 832746317 942985883 116012534 437899266 515196817 981080225 318927002 916852088 616683353 941720833 355843662 564330072 25937910 72724590 779407779 984914993 460253719 488819293 527429579 912993143 439230402 879141012 735584549 764359327 622220619 699219290 565382218 669458902 396299568 987075590 551951052 580998050 906936358 965058140 709084089 906165806 143638725 643623870 352198205 664018236 554009004 637986946 67835240 643279055 70496260 503408516 895834632 949328497 610143162 613623454 886715967 959427738 528452578 878095220 583810065 729004339 451550060 751913268 145695412 355214122 186523529 341358404 344986325 997204976 968411257 980808030 142384800 766226136 31243859 541591044 585516207 985368560 945486154 975626462 995470419 997576282 327595678 606639758 674212311 991970283 34782813 208193391 578213098 872001512 831795158 949572784 377071006 948419422 842539159 844708317 594852069 731090029 394209822 942776120 690389600 954394114 133668995 713396071 474779857 761169473 558054064 936481090 269826677 972842108 247793261 277859309 720984506 895221843 155921607 441484897 882056794 922310369 50753955 735807701 223753891 725189624 319723040 356709910 271462312 435582984 144576027 590290012 889248807 969070098 805937027 894188014 252135195 737541959 679911242 811765577 462974485 815992707 240177668 843889606 782739900 808902387 673432682 986212588 463472982 863073280 304031096 452338824 702442333 858940998 712500787 914836528 717168763 783399116 474384288 660019707 499898717 906807579 926791944 959078761 778414799 936663432 864168424 973511579 619790292 923476619 374034113 605536708 774045248 983109843 518367289 758193113 483480550 952338900 539906457 870703651 794587615 846306156 52816421 987150535 178708441 771776705 35865109 294103506 500701875 761402933 761194260 871549766 722527315 963825584 166686127 726803184 801326459 945766881 293836675 557318827 109954223 836722334 322909284 435352022 596953339 688578127 707560744 848571900 375486810 429012872 475640919 520901167 507719289 981951986 93606030 584445426 14117272 321461667 876607029 994835163 885067253 939180533 121036293 876601382 94016588 696263753 59567511 181371368 348936254 457131460 434608027 534832473 328881595 355074342 269685905 278520447 652948534 733070562 476950385 607751365 190760647 821374724 945836458 970144850 709062349 918203038 299294962 973592782 65491598 633261847 349856247 426022956 363431239 800322092 3422681 454713253 915919525 967235140 460970047 592629178 953244789 963194313 995778487 996433622 220204232 489120987 558069397 974087394 305992063 659744995 761863393 776526448 953374996 972172663 934470036 993227238 39816560 822281635 153155398 961002501 328083150 548331663 595721070 913958891 466028883 930426403 423318627 704075367 905077626 919505052 139786496 704807305 180854920 689503027 388229996 582548487 98655548 456092816 234886070 309157010 792911366 984025594 63653113 426880008 828821571 938278287 689796048 948790437 930032098 988371763 904380119 969500543 812214529 922986021 618466847 648813766 571021163 866188472 760413583 920514289 508103937 605652588 56768371 451640665 799977851 809706065 112109967 620371273 333071385 589114678 252906659 335572349 434879598 820862955 60952173 441833655 321594726 702796855 377097566 574829384 247643386 483922086 350140042 568007675 169775154 588147367 620126478 707740631 22870766 374695547 534652760 698855283 642755469 874475270 87604483 974089038 821125768 876778823 178537892 251756170 557740930 688213082 562364435 746373648 254549346 560522647 207447026 804939734 805749714 831383349 341724241 724274484 834337572 921193483 814829622 898481461 459948683 988387514 147813069 583258517 209318526 577502532 677929913 862769704 157261414 275159925 920892332 938641728 764841611 852158096 699128650 842690670 370644335 560320692 249422293 911958970 262149765 812711934 509186457 587729796 340888595 795732487 873786490 974977124 861036300 890735148 918472116 995766861 896892484 938201708 351494762 495717048 373279853 715783494 934767579 984014514 380024180 482117888 418525791 477372406 158555311 700198094 976448899 993136349 838483332 957577931 22297628 915379648 297215415 647500531 432347013 586649606 354691070 793115662 416167094 598982443 856991376 958278481 195099069 605310291 265677218 452443393 664138727 791699339 754057989 781039610 22130712 892196734 467366960 504283272 912950585 926271995 904921704 918073267 929698539 982153653 15448308 751155647 931011109 961867740 56482222 108629146 981091008 984498803 80315244 105418580 452177727 603119578 125010251 217072401 188751942 349995536 663913690 897963303 374123531 476000983 669256086 782487177 951031571 988338972 239509764 497286670 976778349 990825015 339241888 738321525 294330036 326098363 959290177 967116575 319056539 586785310 600053999 696678971 63496623 464257004 240027959 819612770 858917267 871360582 43885142 622624049 996914131 997642808 759812435 781950265 348587629 627698649 183315860 549779183 477679710 708198511 118358907 253038567 53063459 153189418 570622899 974409444 734468963 993803343 913895257 991089489 838087427 923650950 999794540 999856683 305035031 439724775 852903743 893195210 318577797 417446261 990443140 995665474 520142148 606460519 708186028 915247367 291755583 661679652 620786752 907905745 209870945 275366406 582800797 984506258 511036382 948756669 768778603 927325296 69131948 487211142 590166572 664303828 347336829 406442340 97458507 476941858 577563363 855248793 799792130 834633020 134649641 732914505 615169177 897502727 116910348 334841968 840798690 892578727 168532029 695241480 970657634 988698964 472959255 698103226 864279028 866914078 267331024 343695981 392933240 783613741 64349522 514510982 122453136 208835624 299660433 797858792 825686943 975914291 991505816 997739390 575720585 777531334 178136357 766592292 812635580 911659472 223739671 391611522 957808801 967445735 702859926 821464663 558605051 860760947 567933975 997831773 401676950 437204197 449674041 664120222 226635221 827916464 355005237 563859307 892091552 965820351 481527454 896209117 555526414 865971216 384054264 444984304 812456025 996103844 770008945 808871450 474955151 747917974 560633204 860761492 487314935 764903513 19187380 206597247 390570515 830243541 545477174 854003580 570836398 894343729 929028086 948350984 532060787 780647037 920841664 925683549 77150240 176038382 181017028 947537503 639947264 785181970 789796159 913194128 207726828 243335035 972919243 979634477 580028705 623422092 138441705 637345393 675569696 899297379 309447217 490026246 847701217 939421276 791421498 959612320 292303176 943257416 229587240 901004305 309609598 496426929 243927 709626305 962894614 979765461 45065224 113050656 265865424 364142013 795054201 850416441 167786385 907944769 320675166 540740515 395024722 501515511 789312754 982632417 650533499 687804045 108808572 551314785 901562305 923608526 805880406 925581496 413577638 952920531 323713840 460200894 289015674 458135126 838538530 854992811 248246973 477485644 417938354 931871039 618436277 887341737 281679093 576574851 689439532 813917595 632129455 753850133 282377172 330820860 363209546 378743127 768732891 838153057 892321916 907927733 553373756 877789979 60981935 693699028 446371595 669465853 882036796 919628920 349371672 985447623 144187358 336901407 258275383 525316717 689158828 843399652 426285328 884921960 48058017 983624510 847968002 911406365 451489480 898670860 487017602 784609451 46079391 222091467 452380493 774210198 867495804 892836586 552685366 616465828 805441712 812307600 374481998 804005150 162276084 838759187 778117848 894187835 575426704 976232128 361433575 511474059 351448946 390237599 722150364 901349741 768231154 905368695 500192332 991901438 570418006 699817654 536975847 927537742 416959135 881503366 693026541 714665884 196393575 382614739 494804856 554862254 766863334 819997293 718792477 964723683 54799225 701526780 162250005 661917239 306554221 934824656 634907378 696555995 266133433 672349469 211198283 412161880 953197646 967944874 739323827 782363660 861231270 893343196 449010610 538775009 294465923 716929240 84169320 616695785 394120403 866668693 270359839 972781120 326727256 442425450 274827360 882128262 517615695 699842531 743465784 906493022 750009465 860887703 734833790 907976587 870213304 937520071 119324943 408674102 904266862 982961518 522231623 667997240 219909827 846573288 198074148 405131917 180660735 383341522 125597943 563309079 735107174 860539782 947350315 960418421 747084529 839204149 285699416 324147766 727505260 986306919 591704158 657982156 824422415 985728474 776398794 876583388 745765196 777698802 9969233 207061263 93059678 451188128 325267136 763391563 20545801 909395561 994486012 999482332 689066248 826364481 384857745 615148650 804989898 995168207 866836245 886497107 415036287 606261263 910230801 972160968 513287352 645015931 294218332 722666145 29582833 783877171 712874490 843673103 682715852 970923841 343052734 517311068 720480019 722513395 596409766 713399803 498143232 772745128 761264884 798257431 872226754 933150008 201086234 883277662 757267709 844898529 970317839 988694852 677686195 816326664 315261964 387432657 746927358 874048773 971715248 978155211 308340272 701646882 412164152 706675895 610014230 729346089 920503411 964809427 955253367 996873603 19191797 343529610 217694217 829671142 688485995 958450714 445265622 848494116 357891677 879043740 74164374 149241285 237541180 978554018 378290662 618468280 476326606 910559490 622824129 869934070 949881141 979704134 323319065 544930105 787131766 865576225 434502334 769770990 187103541 958475354 822880805 947257492 992014593 994570809 156235105 332663702 415229783 841636438 283964608 410482082 345262372 742582335 764929867 784718802 158943108 422118410 794917873 807506412 709151384 758061655 970019541 970414052 689601015 989830053 463899298 466060353 608422363 927367075 710163573 728223650 321986134 747732597 752656370 913632614 216049839 589126296 645163770 981267756 452185591 643425702 478601156 798265031 876141898 890599177 127539063 449935186 947832767 982668364 878798813 897174665 537712769 883001674 309873417 691147022 517396104 919850700 71545307 891587009 337857381 838842885 545092814 622017287 131366189 288054563 713773039 952553805 107805303 501012100 213612444 512182803 195156030 601262434 415126601 688428187 635174871 959488599 167530757 242974579 471768635 907832744 463685372 863238654 18687628 559196679 358955469 786471679 264386534 360195797 21326112 993391282 342857549 620473657 791262563 884714602 182796709 299514384 496945479 825544606 744457642 845266739 842285343 969003627 949579029 971266277 160041350 883024274 482916520 656099384 632266045 939444262 98569213 785574394 286023653 933984104 345760548 880690037 835281080 978785815 727849565 856924708 123569248 389489175 166373574 635978312 597731637 802064381 960540461 964773327 299913367 503040568 26049403 691543983 403009118 429476745 889128585 955957947 517408407 918600592 564727687 632896141 180644790 628696813 152201639 569775333 742000435 820421233 845049632 992707832 841268932 902912609 988991140 995880671 578569863 629416478 176851498 860969163 589700961 611837997 738604833 891494797 990327322 994719183 23368388 673119802 180484463 848245728 455263838 460235837 401944108 686475222 587235177 682516015 590426633 795332884 863353038 938123634 960829762 989293352 450638829 814745717 488421733 740170027 756664655 938229705 261952906 631262689 52375390 520121573 69680298 331504739 80156835 696178635 402086614 497444953 118233156 740010040 566487608 873880251 764235419 846363509 757434640 902902129 199841650 677667441 584653405 906540132 916129029 965587316 535820409 755687896 43762572 267452342 73424222 912248087 929167732 997427469 678627600 756897464 755011412 855551482 849684597 858122251 435575970 968189815 166522747 451092165 424627463 729699461 135421953 685623463 92903885 937328865 127965703 208579427 981920276 993733209 444338419 536184254 556829016 954561822 784895806 856887286 544379383 799163453 701847704 920346743 198326384 485156033 984226886 999439440 457817361 799417511 914275602 978226838 88078538 703766123 605389603 653907917 501135732 539333039 6564634 158233653 189777628 193012586 880225687 901830984 713576934 989135308 318730322 320321665 265078071 799405375 937438437 995038145 148029539 657554067 807971946 988337979 615273858 972485868 148137547 465390916 628272327 686239384 579441714 645945123 835971700 841393183 337073637 946347941 740564962 831756980 426814146 551030675 91377997 166529747 421067386 987820303 984911420 987829020 220372633 556112916 446330464 702770753 555316372 779080886 162070348 296042952 528110488 684654216 923024116 924589511 678952232 680597766 655577494 773126697 848165140 927056304 489900085 491430372 540415894 792878642 700987229 862187935 359572003 567446147 682712911 687694127 124762368 340550827 518815541 717926118 292331216 464365234 94645270 995325526 569899649 888041328 995805275 996586721 718925855 756823231 881494174 962227617 439392383 756677145 22270944 617645526 290378482 893188009 777923062 825144629 347922941 563314435 401957597 470854317 324951626 894687808 73215546 287207320 16851826 288719049 894547983 995907823 409997626 481994676 642753921 825851704 926773134 945642664 328645686 875079818 130292864 393837683 219300991 949787425 695398957 972247147 131125072 299011535 430738317 986482674 679762064 869562096 357003072 683974617 798705398 916799806 60502403 659662123 1778104 554557160 170338783 184228244 343788815 914586830 406264968 609697753 65267835 968145413 371208456 794951177 193897034 878122011 164520673 739370201 685382299 695008639 85261037 590967710 389410580 648967020 994121293 996645697 437647848 710060051 192667041 488694480 958738835 975372880 174770334 720241176 905821764 996205308 100746618 174286865 912464647 924401009 479168489 518827310 373508025 868096013 474262679 563893888 700825012 799693438 7569304 725569161 147905628 798735691 74419275 805166634 654944731 831944966 740577969 850843403 778817159 956533111 188120328 945294029 53573640 652825011 940207036 957656723 854390902 932817688 581986006 876739613 180709751 855217572 845793072 915946591 447335530 852430626 470641982 924437638 755931132 951766770 721157066 956539295 545344667 925488760 291896305 946894450 150099560 186973966 363256540 599538982 321606028 674307901 583585305 873192759 423421078 658975968 130405326 899346698 586021727 985397027 645593368 773601760 71629205 894491880 161305855 894885337 602741989 747552250 631505884 941764997 588597979 773313676 190130480 484428444 212906933 441116959 364834213 692981401 538948433 894575527 53207438 576839259 762299741 942640539 430926147 985321453 898165660 952803005 218992407 335368264 940388362 952072686 877158658 971599668 701775735 953199559 573613102 780193055 399231307 822897941 510931558 627278205 726484167 961779836 563716769 786339504 236679043 462336756 227647683 720509923 378313232 626882415 641342568 684488968 253205763 476823139 148385685 267756186 616881018 644425632 356019314 677158703 799399047 830812752 503551763 665148418 372351928 434193047 911559858 948216554 380178029 917485561 39312485 404397360 296189329 812220902 735485248 879679788 70778288 563196425 737885800 926065714 31998721 436245420 30976031 795884976 421962856 878816110 720205606 981223059 175657750 453475540 950043927 952815880 970952264 976365555 536457206 660387875 549216493 559855418 836759022 958769001 824581914 996397995 678787055 787147615 352840707 848904531 351281871 508938438 675240305 868685198 234806773 268787433 621215918 897656957 515750998 658255789 602177642 646258098 266901470 950868150 130051806 255630862 113893076 182950821 326147448 588282389 563004680 828221870 409981535 507846460 165802659 888420809 287048030 493627339 105859014 335422929 332195952 849403548 483953894 524787002 322460760 851879932 814427916 935984289 274795079 768173063 189314015 645218501 962660198 990913541 27225883 708134214 40588446 444993768 577671487 609675796 589517346 933048764 821031018 861007627 377355651 671940644 988895301 996186493 43600003 119980028 303340649 687452217 913815042 971906264 687153412 785671745 525398320 823902476 356347930 788306130 6167829 748278007 948314641 953753238 615184294 868501758 775106305 969121085 614834635 911130350 588335111 777168555 508438835 567977227 876951838 992051641 769748940 781582430 419750336 515665670 160367791 298798584 720261784 871654229 971291425 972053991 293289709 539110988 527003935 601680853 998409057 998531135 509000082 841848799 118123025 553603821 114352384 835778842 762461675 875119260 417897610 889392357 227347072 531792258 108912712 950963278 415509405 481779442 321096468 731127353 661182702 963455136 351579584 435619984 947192733 967202427 366192274 634808866 187356951 767099664 986356660 990077850 432403883 591154401 61691378 410653854 38108373 982893547 16489268 555324290 961331345 961881556 416379258 630873415 683718437 776498568 967270583 989984675 914576183 967803906 190808701 367118497 130714688 209266941 759971162 839926164 54582929 288860320 644113993 980890335 263710131 897223388 875748477 883408364 699584257 817411595 570617018 651734261 958857412 977147342 487422397 594542316 485637510 495368425 231151361 455574725 747731324 819504640 743793709 875539876 944647473 975462071 950641179 987442116 869875041 921712724 659275685 901123572 287832775 888902631 357711675 438960260 911011130 990011574 440678494 948180649 956544644 977089830 752757165 862150055 510174119 938308099 216277741 427775838 122603745 967788059 308944953 587494187 744802168 982909579 872395630 961164484 534891095 837796569 202585474 554203565 75548357 140764843 541400512 706549518 581232819 965630963 443953437 502674835 732344351 754469474 610433408 639940165 884338273 887289250 867221207 946557180 995700113 997238154 22531396 438170894 558243158 606502590 924164545 983234067 867862289 901819168 143973988 226757955 877161665 915376051 342050934 750468174 110142790 579251497 764106433 881837450 709898081 734927792 746288091 843239254 243558716 413944270 859082824 894663589 675618474 837671469 744075813 942973838 989993399 992378068 359861543 382925130 945624391 999896669 133066926 922589645 52724096 173272743 631950516 844307634 838679182 946973254 15032266 732658473 205311861 608538111 928804219 980262808 412272802 428656603 808444277 905445718 326485773 926435678 816340512 925116261 387023224 891736282 581580442 589560333 56723602 71445947 711255142 766692198 470004316 833996681 592408030 998925699 741452822 938551995 405362356 931253914 95237352 369643189 175045329 970818930 626390756 934529023 835387715 948168930 23690912 395178077 844623954 985397297 493484268 692952220 561728205 896927832 302550803 932828229 79005129 824313521 430788269 611649553 776554830 796060114 428284464 681528170 869728630 891443902 645854952 724737854 903117566 943164652 154328901 882796529 680431565 694513835 22506501 54607329 614559878 930575563 494652080 994930846 229893026 905873717 127349714 257891183 441487794 520723270 918538227 983130346 283186472 887839241 167459616 407452326 705040855 763261801 88663104 577641275 400946165 746782575 567201661 632514609 862697001 918022080 78533702 302930507 561181669 606185277 509943815 587024665 188597528 696424125 857430539 930391307 420032894 737727887 139631551 453936767 53061531 817574426 651633495 711776398 744727906 853226765 149920989 172078886 59667541 100455831 58954757 293086046 200675060 737467447 829551285 945019697 617701320 943968799 68667803 297718628 105744215 114493070 920523820 963343753 513673425 664822856 693233587 708546214 910384911 932938572 264016524 812376747 273305686 464868771 365703409 945764619 849557897 914414808 795388666 833626418 251829449 992854981 472535390 969216088 597886057 960610826 506517694 926202110 571003732 696507665 905665750 930829082 202938984 370563122 78840169 380496636 966457178 996411467 882879290 933799284 732890928 843058767 307682721 721327668 757164028 785712991 128954886 712823637 710255821 812098289 464329324 967201487 900428449 969088426 914079815 975964428 828187653 839607509 930279439 954773525 645192747 809660203 948102618 951826790 919192636 931960771 875683908 991700900 878601478 901322518 455930206 533252279 3007090 112445207 838365649 920038719 520567280 755354573 11528815 196093678 917179657 919417310 818177912 903023464 963092493 992669176 397512414 895388859 765551074 802762922 850451112 898513128 591649387 825922050 664084385 832467813 113925795 933643945 578657254 905439884 528444989 580010292 215594957 352973873 233077327 881095982 606339659 910063597 867904997 925090689 530430736 864290538 432226310 575811835 522678707 975335474 482492590 509888498 724736267 951309330 385053415 973366669 170973852 965911594 770957678 911686902 435050406 436181966 356415240 986251959 175506576 884298100 792771368 864880486 471469929 551714745 376241410 930248945 124539899 800652183 16357406 199307393 875836376 882870321 285392384 695190928 142203074 797335973 782987366 874880735 162861324 573516576 248806190 530492117 804658017 928933226 299612516 558084815 723256708 776662154 276046856 778372766 701909051 872876965 477579510 986816968 141743094 605798186 134175713 802648500 276612741 657423404 537665464 963147434 748240764 907543173 320750993 329889980 820222345 989423935 809656565 903757665 189937948 715279320 527896844 984789253 508210014 884783591 219735007 309791469 160279339 278448503 280727892 294122176 36012140 808862608 938982991 949881462 559579925 608340506 458651092 876835921 698212337 771158701 291849336 526304143 341112993 828171504 139300836 679217070 124849521 939768948 390281471 968912476 146391699 267239676 318945962 483476285 637374097 722273933 175317840 618641900 415143888 843151088 526744455 634144899 467938169 557862785 285467990 559056333 452354435 463152120 585626157 709993675 194423212 926207704 296510800 336297769 804520069 917668319 893548928 898693004 981431693 992680461 737596398 977685773 667926661 751615923 487745846 776924216 323475469 465909312 777174870 905576763 448365475 933360695 266004033 796285675 312960603 317538186 835220995 962183287 998006475 998582640 467916118 859381951 874753964 963705466 363987204 402181151 747953291 840064735 70748071 394070616 64769358 706588256 779334277 936642022 681613387 844687719 506081516 774575064 791506433 955988029 604403216 721569066 662801031 757170228 810447669 850257339 571422217 955732968 646482920 650128516 107446544 609693930 493468280 512776235 229071692 277480931 277659700 789587354 369690304 527774756 362672834 883317422 74856480 238858166 843783403 880044801 667283010 813719425 389936098 465000521 977598277 990385015 278378560 927529426 726507304 987641462 496104758 645237529 384697311 857472884 641126116 860002992 70626139 424892160 366495115 694555992 151693227 317418145 783811256 800864206 802068377 924519595 887567398 973733998 732900837 938442753 108655217 277359503 980006880 987747325 726681374 728094346 418923557 539719043 366380926 506745175 911334312 934766350 88574433 491375321 976966904 994828807 869382643 920472802 222235326 269732085 548026191 660563788 314184744 999843234 909784619 942464591 784279389 910850238 312551181 679868894 577798525 582020316 981789441 990639766 934158643 960530968 732221313 871978535 398736004 734705834 114855911 225626475 645843744 659494307 271642210 482190058 333089439 337923403 524856729 572429664 919743475 938547122 384390170 874944990 611864115 786955694 586260894 778950599 100628439 205599943 509254961 837223081 728730149 978070208 822831450 974944142 440473725 903308528 247614431 690294891 803192626 957405807 326255569 466677429 81615163 480852913 89607244 773034004 921697845 969395351 635408368 655554262 358180921 799372149 793042297 872891405 475086939 675268380 409412512 521641757 69672825 922818684 517557633 896685927 826289345 995999398 420804114 744727043 199619535 741942854 966365892 999001558 256268057 661092634 564015660 978804771 27852499 884938812 414693012 776582118 631963709 791838630 39089602 433414805 742474976 806972039 246773579 754207258 757639188 939190130 929094061 974319207 784839986 892518717 575485113 839537937 26108921 952448457 750367665 948559745 923424719 938014653 471349123 985379324 941289179 973508699 272317359 882909398 87477411 698091186 973295704 999334732 579612408 934844761 287738908 611332650 606012589 912852361 347361049 682350540 522830304 855716409 129246541 206306447 917512769 929619217 363732612 817877951 673934309 876683988 188218130 638459972 765913305 995718332 220353433 877111382 756206377 908449082 6979381 191205265 407345128 930175398 654083006 776121964 829756526 880072434 902016661 935726833 435069001 810937477 360344061 638939755 683057451 954118900 308447273 363863587 403115919 943960145 306710706 788437507 98618201 268701497 322587186 910935165 173156593 233832992 799739547 818977359 409553517 795279335 959911224 989019618 916310871 985615029 795953358 868312368 715897303 796872725 874593413 922513938 258429725 381216823 657503824 692108177 854653454 867290477 824861825 832208701 193035652 239662558 225001633 961959934 314696606 425689722 173608242 351625761 772047394 876550310 941113487 952038440 389707390 753392655 746631969 817155543 711745549 726550856 895422992 936340931 339309872 796849071 882829658 909804821 327443657 506153695 811459079 937129806 86217089 814015074 243386792 516074084 748094581 785213544 911654376 998835127 307827618 922237073 702962081 937536179 327240014 639720694 898487631 916218027 826665325 862237326 27925199 978909278 899202154 982414366 95716416 614880005 771386262 946441707 730936583 759793468 890821243 932901368 635336012 799466579 79177730 869966063 242347212 495422539 263897561 668707557 890754311 942726508 797176821 883234314 906038770 913142993 112453957 994528860 84355352 476284835 532786984 975809299 889216272 904146432 859778178 914712341 61984786 590093163 783703947 903762818 349364395 932847651 355771187 993900165 191773667 652606787 191652717 613365285 695285822 792326708 516396435 896177259 455670526 514606924 811677192 924881743 857271211 965989968 909254291 916439631 304832284 980592841 369183729 493369583 696180283 881919218 964835631 994074516 692813587 831507687 571652218 771073154 889870207 926107628 463872462 487667556 214581630 545521624 993743570 999436562 652357638 739083761 816271881 958594936 342548151 738225570 118709448 892967509 148681956 804936231 260017670 429129064 660875642 769242346 525560198 642212780 387380209 994316061 608440794 773590693 285426458 427760286 390212051 699803499 833493507 980075549 156421207 268655898 157677141 574899282 202023355 211716719 932049241 949412048 472374667 499092016 383275090 777938592 860488565 932790942 417746550 485280445 848924549 967838081 655021593 761250233 325901413 562092809 728102768 843773892 754551050 850327792 821984787 977011529 246007093 715628509 542383444 961483995 514255867 895486939 92729813 181581456 969164381 993984295 210931597 990682425 711028174 713646005 885033157 899373899 509041592 744666924 860673998 926043198 955825617 995492720 124736245 557972078 588413746 723743672 357102069 362445980 383819169 604323222 455937278 507819558 819188945 862019998 879148345 931497902 204291361 276164146 770504115 812431150 419137394 778822791 561842100 586430080 780212292 801634967 86436700 735627727 721810618 959721236 334302822 835914446 398421349 549332803 861646731 911788316 148648966 674308025 301777292 647234173 740763837 875781746 638545099 971737543 924648724 967408998 592091298 966958177 704107406 823993276 791597819 815292633 113784561 317568723 442533606 701731739 465229394 504123097 293451350 779300689 183577051 509280584 429030113 473729589 692202388 729953070 903791049 992752449 167129223 814176630 8601039 297486394 278527655 916731596 9119857 989733317 798529005 828919204 376207070 663885106 707595977 891565096 317506902 367195456 269193270 366489069 590675467 808448705 336965499 459697939 988450974 999387494 242734439 433127236 417143923 829001655 493010001 878118676 19366623 600505043 996569412 998911476 52595152 884051334 685541539 777942594 232448261 782805104 296792259 717869129 79778124 103905055 909308430 954548678 345826635 934617263 240569117 813771581 483853271 934316597 338304663 601549582 550820630 795922417 179975822 185380867 350207995 741711619 757097723 911898842 845504492 927845128 821430138 946809465 159260760 584083485 986969281 989616059 332074576 575097807 189554831 691248622 828285164 949818090 696877343 749808305 215683379 512614520 109103093 319481384 855266667 995896756 509538503 603141236 32081176 822266955 79130720 893354900 467046253 967871298 557832421 888101383 786584157 863329518 830812960 872494025 12739670 746565435 943627527 947390953 617520499 700807340 996478480 998166521 985957835 996041012 94503905 197658928 910565216 915575366 459753217 869148222 326754861 363712624 958906783 979483260 141107081 424657872 781481157 921606230 976649456 980691505 795985031 945734506 109759543 859760716 88618549 104872022 397001820 734693930 317291950 400620603 700817348 716947499 667939073 825270062 625559485 796002968 498615802 824620220 559188916 687248089 359468466 594614131 165862537 712231739 798646177 919749882 496463419 591769660 54505074 870255768 750497253 794253485 618975975 621270719 846269958 853229012 58403514 783250838 232462117 598179295 181724632 299874216 38802290 333238938 406487881 551781300 80189800 328888231 7971043 556561510 222519196 691973363 114506349 625510886 431814433 734983776 170897892 749304831 681529944 855256870 283361260 316718781 625838997 962289092 149746694 174716183 93241585 588606077 581366720 668931950 739351376 746209007 330010566 514075573 274565714 872295692 4508665 358390409 285394581 472656816 2356032 24757263 644617337 971917532 605482589 612653333 752584322 822011117 146000647 703995338 81542319 557760646 441969069 535010780 373053933 448338964 777163574 902626387 998789217 999166045 783778359 862432715 572789243 825947557 447510709 553995174 760874693 918844568 164902650 928485199 460806840 532764212 716929488 731743986 66000088 661749984 647215653 804179010 207958931 279522588 668364629 716279323 58334073 189479661 917009170 944020632 751196660 838213720 538238158 899502265 285123950 681554086 687616125 815618892 695945794 769924162 51875027 443915223 577079289 915763191 684566543 817997046 56338867 351875533 159249429 244825213 888823772 943936027 790193203 825574114 221721855 666335380 850872501 863233379 18075994 203402147 781228209 904952297 112182842 263417991 324964203 719405132 122138859 712198450 727282899 829856596 304205768 651893790 751840345 944250851 882840136 969047812 271050348 470792716 739053958 870003864 190428780 995050275 821107979 917313187 510420466 940622385 22359809 458698645 191120817 339607725 852730283 931165950 750407869 869144618 462938540 905256251 128354682 463226268 334178106 526596012 379897426 792546380 14920227 896975112 911471738 933798720 657312847 775732195 378130369 693425842 466176128 740035838 133876172 665014854 374114429 786662379 813901340 919196497 840273080 849173334 549615176 772621011 244995505 554847558 202868111 731268358 335567609 928585726 100691952 328259157 895662320 916731994 467097940 786987178 760187839 807439525 483982024 561606738 736100140 993809572 975825630 986298044 994204215 996876625 269367368 397896044 992250414 996747338 48473633 52955413 875404941 965833754 239349455 469572596 517555984 595717020 440918531 926622707 433375304 499533922 817603415 847809867 58661937 991842432 37008347 727639215 843728827 853707171 368877306 859861372 174279318 357803631 347512836 811589592 424169445 994616337 283599550 299298355 234712461 310727910 25419079 219547581 902824624 996537222 478012397 930910502 683855802 752333381 863703438 986226525 72716779 380112974 415636871 793658850 140059054 857267183 738405688 967439108 59726101 913205087 699430130 955743004 63792976 326389467 701444286 849475337 690092563 732749868 198266517 225602197 24002098 812353955 207793529 576625600 342330056 672596744 234962150 267558039 998777148 998831439 886858005 968107482 736585515 871696765 602409358 682332788 877490941 881483895 649010143 893464090 413905618 472967676 728404440 742788740 78472428 367962166 910990593 919434611 479020381 518564492 41298762 968516136 812216690 905407246 231311593 569128376 972724915 979665033 716301530 762671646 30557389 436547975 117047030 907226593 960788881 971942459 226203912 704980972 907669252 929634070 409150956 463277766 42062060 959287663 866135369 987403001 31859969 301163094 25816325 474318181 378398399 870417683 296481729 387177783 481437278 642065826 700424750 768673054 409332718 506374623 785036644 901810274 920367572 968332649 639146537 991794497 572394944 770297918 825466247 853685061 75363071 679069453 722314276 911266695 950762125 999540171 281599605 830533421 927134332 938466758 354619461 875582371 126504951 755343561 621326404 802959853 42819463 816729340 24905260 25415894 121901288 507226786 749453392 843143772 524342200 545318913 845803541 894232949 399010121 500357988 831469403 837966064 625429697 853862666 828577953 940393107 808885416 982515369 210529228 831010924 373997720 939803999 288474486 647212837 648150518 769758901 218597046 629673188 883970010 990899934 791569484 978864777 71275549 672941744 660079358 811313218 516205164 683771592 923315237 985738175 148000481 357953448 38404646 966407711 796564905 860903013 120321229 170512315 792966332 956822303 35060336 834965809 549843046 799777683 266496078 429524436 958016903 961964325 906879417 995795467 918808703 948632003 310403099 655761025 632049128 926269865 75188334 861177517 753257503 845342447 134949919 342373193 477618583 964872871 48180561 841089164 933519891 941435542 959442606 961387791 456384438 621258008 261572015 351618040 817064306 830534091 35493918 150925368 187871933 421079682 106417676 833144058 5058721 239169616 853352221 974770850 428961733 890279291 146886295 204763919 370899264 661223580 181911388 959245820 415593601 746329157 20159698 817308722 166976970 175245114 381584729 698028904 590374453 716435693 817323078 840318167 14353186 867714654 844782239 950856322 909099691 924279578 835524389 839879223 509688306 663454413 742675537 942164251 103568848 920405482 550842250 988601078 576768973 784001461 8705933 384453388 366745132 889027687 807459228 898573092 72786908 864090777 712651445 778296492 345165604 605939498 697345714 820744165 419961692 899790963 858383147 939952474 92023068 479520140 619184717 749811764 52691551 507108622 744647396 935730617 115782777 283132442 740138065 790800948 207614655 520505290 621270329 917762025 566221050 846992024 81458985 772781810 453407305 754838742 578702919 911414166 197269083 569905937 706625410 785493764 552159448 924791679 213631690 988221317 270310026 417939603 21233597 250313893 393878181 853370288 798895622 974698765 996802168 997479508 703761776 920498455 627285128 790789489 289077894 842830861 864356222 890214792 460785619 974179931 556137321 856422001 464845342 497771807 925567109 938391020 830287318 973252789 767747078 939867559 295823185 491684229 190828313 804977249 311010374 960417430 905203440 984953080 103278371 874411127 285341215 977651811 41312577 462944886 274322968 698437766 228056389 484636501 857520821 966880456 332050511 922794445 788938691 905577621 748961881 756347978 487605516 630144504 463940118 479047635 73147003 288892448 156451405 537230149 892974985 984744183 444236674 722872833 158503893 343584649 595473594 697184896 675653063 930444235 914764281 994729173 249170527 958137560 654960315 695355355 655091399 706159340 543949244 685811049 82374831 390693404 98039115 480543117 787921436 989272407 146202997 714483867 384041159 981057418 330940699 409066610 631022551 795114111 392385962 468456190 906044437 952356823 50938060 429254510 720386137 995675984 956477474 991997237 72804816 445147612 802792102 877589579 622966347 638047529 642701451 663623539 818067133 885612302 839036269 849750340 648191545 848713039 249667985 813722477 674984742 847602743 908960543 959106693 657920160 741321439 921230415 946579371 749671402 757801907 593102259 825918666 525568844 906610412 207546598 474493349 101965280 927193378 639829662 888871465 502748068 600976356 972357808 987578655 857681097 922254786 42995991 555123813 316665022 814341943 534935080 946939045 528361651 936041470 607641915 978911463 269393389 406727142 800638963 983551963 553317914 701916307 448082320 602776110 915930262 916097109 52571468 825052630 339155368 546473195 618587691 927323566 143093976 450853650 650987361 693867286 184753319 206615552 608155090 989387507 959184031 996548961 812959203 941295885 623911046 776371516 131895676 986376619 690634750 731827543 803794551 900701920 959516028 992186463 823408337 867835802 218716509 460060775 185564124 850970544 951948010 966257396 552647054 870907392 562765430 929461528 818548014 853496025 76181913 147301464 358072960 393608228 547283258 628082610 299524269 694404726 712103008 976267582 51664694 299841768 808820891 893293472 40764472 544898940 694959653 709408123 665528296 836352302 761450860 855750398 875710449 907897295 897643878 937418703 437210985 933695355 815893298 923605465 428173539 455716610 98474523 240638032 769468366 955709652 201221062 430650161 376132950 775245582 946298764 997880114 450322080 477797027 294324736 598445225 169633482 503123544 344251332 896251928 654361794 782008615 833520324 963145212 786794481 941746059 618963324 950596121 606539068 750771841 355867958 962194612 541844809 963917017 380988068 837914265 912115204 975061342 144760443 656668413 616675693 907267221 77621868 472598969 602225127 668717489 758802472 977933520 135310037 916389206 215544817 606763054 976692539 997621711 704730483 959957588 143047426 362922975 32311924 430672454 42462309 255677463 676671004 995743299 114954434 410279896 395653783 501676606 769204314 852196031 976688866 997158966 642432726 741721248 256333236 990168313 755760589 887977870 238392468 447902725 452337580 627280154 261202199 609466825 720266531 756620889 522722143 899410830 45624332 656287022 873950467 879523275 451002308 584996857 75636383 837930692 357093133 975955113 734653227 823050432 429580936 896487820 536935404 970180485 266739149 456180481 692193782 759164823 506731687 745323942 759245309 910377119 989328650 999316450 40045368 846531753 464483845 818637861 988051098 994806543 116270600 605539398 227941777 298702656 726544289 894660377 538941091 920936578 535126407 604738564 254980436 281806648 104963599 225164724 536639009 921317459 217712874 951820595 234808934 785525869 395843713 954349167 222072446 726115198 872134013 926687284 854870934 967303928 884538713 905541411 53033415 503388556 183823592 559426132 902829283 946672392 162879008 729057038 986059842 992411770 271306579 473196285 859514031 972766904 750646453 958308283 184503773 720463729 994471062 998266326 517093 712654434 851539915 969249493 157419475 790202966 521567125 674110021 408429163 426540677 125769251 895725302 6541348 980711161 981490470 990863074 312887453 438935586 695800846 952621007 979792303 999781402 201001429 284604013 694748585 822662379 154006579 501740424 8271584 36305119 803729132 926931555 818319165 988130589 679021930 991373701 970637021 998605688 392278372 580994339 307075874 524240152 374421676 471778065 872300008 980423890 378613962 955144513 248216912 806545151 335361323 593510199 760718685 937593842 609582379 884848689 661623678 707943631 232168164 941462165 788004746 902326227 385698432 850639746 498525203 866259386 273904203 869855401 285428 204949095 922627155 970949027 854576897 861778284 286293602 419004725 221525689 488470850 863903295 951779203 25327473 685447530 363479897 628034460 577062293 640161487 159670201 453110311 841029061 967188598 190234878 447778710 101225686 514635919 756611629 844723006 232990434 672376162 268283880 652401246 701422028 919640872 384163259 580823421 78404043 361911530 121450237 195442877 620031207 769754251 506028891 636549420 459388433 655687540 369158143 936005248 116068503 680327609 377072132 456536378 535825708 826246515 247757107 433112530 275848335 762612566 147811175 681977568 412051852 745544354 723270380 732751353 875466825 951631409 726224208 925194615 560191729 615694031 492052929 498880645 43956587 764043301 434889240 594225630 737609719 998819452 89493517 438605143 857709147 944606037 759897870 948145956 897204834 926997786 761293187 854380982 29189693 53894877 123152499 930102529 907532488 976990795 511374775 767200097 1131067 941612661 148794072 608288599 761673075 969520019 216812082 876380928 133468238 522621746 943303193 964898822 881539660 945351766 400009630 681032443 641774636 746364150 408099272 513262426 824922542 910956577 363640631 427661259 414052559 563883759 483379608 897734891 247958226 399033334 734114331 832315681 527814914 900268312 400864321 725765371 90104357 820942616 999074168 999928820 635827349 855353640 719374888 863040337 536281444 927833762 954359603 954671497 880460239 975015839 298996003 911586845 78265522 947586681 934845267 955151955 343809159 727745959 976237505 995931290 56882869 60835971 992725716 994564476 313252823 428742110 553386323 646302892 345229366 912294733 806989110 937750058 475419148 514357442 803455770 879122438 821843559 934314404 883926351 973789693 644353593 897360346 132244042 510926443 332527817 628900290 568874953 635552729 161432085 192482035 995645309 999834655 736320174 867728966 818750928 848140101 645523890 973500918 932442913 982154511 523597626 606419223 640717375 663606845 849756182 861434443 868188632 918520938 614472654 716226225 901039299 922779226 106882789 976852196 878165459 879688920 291652237 494691830 349897849 971727106 660313038 817506537 135361743 137126992 387259833 467007404 613762510 652124594 553205284 918854017 80818132 415088751 450279105 469366865 264143850 280469077 181891841 277743467 550207932 934418670 978439286 996852686 471714212 489933463 548763145 587888249 793296313 797833160 656965182 940133168 150733434 450554758 738739572 807943224 498807346 511616122 7145861 983525829 248835632 939704033 547264106 915745955 994404022 997596986 796627506 919808138 232823910 906845346 23688432 311978553 727976832 915989587 17140861 790309657 372981387 432765642 789774863 824318727 246924613 811415248 679530766 847999362 997528630 999979665 868937636 947857581 372820983 737596658 507288686 802676393 590939202 638730423 555963159 789632368 180291811 786316275 681966884 939195873 918922397 930017011 366836527 546552939 542112708 751186032 194541794 956772375 62878719 492487813 840596233 846734728 300079495 577710474 776440958 963613107 494044744 674045942 71240343 838422037 506075884 980341279 991386428 995334860 370086342 473776366 49410779 584723785 236108509 820613215 994161930 997521338 469030355 855182617 484449619 987997997 543044151 698445069 8390265 462017659 127109894 690680421 372238142 849332061 969545894 991302474 634072420 838434074 682408368 909196322 877583783 982916386 376316501 862288959 675578178 681974673 154905971 735432139 969680023 976299891 677033572 888550072 686068798 809989558 970696839 988160392 514291411 920505712 757057687 920100989 661285044 864591149 113823792 765456042 6911038 911436138 223833322 752130637 195632840 899612090 625481070 969543173 619929178 672635324 552112458 616605419 514142498 514553394 730010646 865175765 396331144 818895177 372536661 597442880 456548052 636815812 317324150 455029270 349573622 559322916 404983092 727653733 879127907 914297815 212056778 629273926 740408200 958840808 384321898 555362763 701494854 771606980 114669495 995802329 143257559 961273931 447406246 616271341 499141239 749986330 227906352 414335841 454955040 578973503 931550067 965041134 746066373 852812040 337855916 502674159 181658110 834486775 250497941 506675376 363375679 730755553 526494441 738738949 700237060 794656836 60736389 389762396 119671107 784945532 495774545 782174677 855011729 857837009 778332661 872185170 402297746 728650760 816193952 820810472 30081661 359456201 401293276 681402574 349252755 424818210 323372090 680687773 937763967 952931444 748908274 841055487 965133423 994277438 657510050 681783666 820855137 886415754 307573125 458618537 48226171 989264022 838705434 868944038 674123218 840226390 329282904 632059210 385880542 681580587 612561720 825811098 953660484 972438655 318115568 669094124 101119633 516290537 27633616 944535947 950827077 986210637 77379585 294096617 398736139 545566403 996203307 998485333 301687200 844074391 657976070 908937227 40520442 479911051 791074263 861797715 725789000 852219671 291559933 318843167 501469987 888069933 291928125 681899990 528799025 566355535 601477643 612012116 692100099 740119288 204229267 682523506 625106414 696712311 361058225 794094018 707525252 808744372 635302873 772379940 713320220 773211459 191226490 465675252 609865807 646070291 196466844 869550370 408112062 629297436 696298738 807949279 44291788 699712780 780458933 993980560 145266515 413615340 838635572 885744556 707006688 778841293 657817279 820234005 837794668 966960119 930159618 951477444 681360503 861744199 83218093 434743882 733592738 836088399 550056040 558034131 496798798 593054678 827535366 988752724 881417695 901619071 527209786 796637507 226025065 700809632 928716298 966448123 175624810 282969963 935012669 987167281 477761561 927643423 987011433 999442483 857302251 889967997 425873595 975680078 803413318 904511222 202539223 291900840 923430401 976907955 190463427 451292767 85253927 540243971 538824928 551833463 840394426 952013755 650914301 780255463 775109172 890919258 50166431 291810496 356255317 694840962 264202073 555713466 779265661 966336803 799371796 966110291 404893482 470127712 725609039 807141735 664793020 779285613 834344324 873015328 530745076 637523345 233755826 786538178 316045496 980111365 294643066 667266403 654194631 997957476 429457791 687817705 224916830 688452867 23917905 332319131 924184786 940838765 225110931 269641420 637599832 944629047 440688425 818643893 684970187 916963998 390724180 623349515 319219323 383763177 554941093 798438770 497109873 828011021 122953782 700358532 16054200 704740167 831323233 857989201 324347184 907459294 939766327 978082068 130599457 580040435 532040443 951007918 680036052 914931942 915334016 943578626 841441734 847558756 480476741 972199652 763361682 936176268 645124259 680583287 33073838 847299365 18499409 973995920 144188969 163360901 179315931 501832523 678527521 780278638 907114573 971646761 190456161 621952287 796971122 833977598 945108608 960644005 173576843 973266045 494406395 719357418 573640076 874778918 313261143 502884539 880985796 987935187 710651854 818667021 53934614 795139414 59837191 695673912 910304866 957665236 7037914 649558932 177169790 894816567 257181525 503869335 612327956 641788789 720215403 762889866 14427404 548698843 512436045 660841159 171158747 981282059 581666307 995664346 192856938 664519673 79985452 182770478 690490703 966920304 698464491 963827224 444709362 751898795 894593661 911833614 655750028 985919219 237392097 471953148 24851845 738381899 138467738 771316782 257405807 348517243 913702380 915061778 676122731 802762795 517483824 899951225 723662238 803249977 759967007 876035281 971924107 996841514 471997269 977700525 962020126 994128774 687855817 722678722 715419677 952086337 998008941 999046461 825121198 898185139 508467506 805468651 449379584 669409441 960698660 961754803 187729029 309431534 172751345 779437823 993389294 999288611 415346925 833400254 113492769 231204135 137006069 651493366 980482492 994113031 660077107 777393140 806122664 943154771 399959025 689182255 804389304 962717479 371768256 826244712 875186903 922958781 313483718 557117958 231102120 495223554 572446989 787788315 859894 930797817 186855619 843861173 24245451 678501917 198310204 904629603 37698110 64529605 645880037 698086896 487619117 797974196 700607424 914085013 912878889 985732395 743658032 747544532 796626365 955536340 925615296 936296227 369642001 977743145 627618634 768440651 768586927 781909495 404377416 886679592 937052050 957541161 621164347 868499716 59893181 303818710 276589386 685609121 484609191 571445100 378386878 541864160 818518766 963744802 807615633 909345723 109630147 983939777 507661021 571035847 822838203 841193402 499672924 777035168 741282128 988692381 608594145 923085617 955441881 972650213 661389733 780134459 272434613 566290733 997886292 999569088 594050819 996280098 259989014 460583024 507361553 793969452 575460960 983581644 188174924 195567979 619296384 891344459 347740902 457808536 552595011 849847865 253824108 961288250 368654002 891291726 887148928 904697780 600741607 858707532 672505301 707842165 561909611 731809497 355427020 538907526 176079050 998684813 237212735 340787011 352704057 801387852 636841724 650836665 608706155 805893365 747468157 827838836 942192218 982920700 891543130 956175757 416084073 508425442 818795350 894919656 171127892 985397463 498686167 813582656 454370563 712598858 893675385 956813833 919960190 942395597 21262286 633977358 68467489 573499140 833183626 943273291 360781255 465061142 116645259 175572871 615804600 724833058 97253122 976086272 177061640 725779342 402872698 600595748 572111195 895371389 948668046 969203834 133467824 592089563 728492488 990722361 13429207 884061125 378622652 650386455 367008595 374983470 917198811 935070333 727090870 734772918 683432777 721828187 370422620 839964006 694932015 932858875 561443515 685145979 242871215 653112522 31811864 482012318 989433118 993131657 152358305 300428541 30445343 834428525 615227607 940762640 822085519 824370992 244347894 663959644 602692230 836629015 817870219 877731406 240122130 703180027 685272583 779168267 408993049 858087618 500624730 933790101 203192274 556817349 123869720 651095980 671184459 731622303 737218487 943367382 717949315 768517069 162985737 482946349 30060760 838950491 858558476 950907107 137841532 890322020 994200044 995366309 978306011 980882199 421186561 710475150 922607838 928968046 624315520 805078016 735458159 941308578 110715542 433332009 390378838 650897268 775697987 996863584 144039745 815648356 699617312 888487338 223703037 521065520 274718618 971478570 58593811 649257241 535869845 933482261 992260454 998699699 69202750 510461425 515834718 971892447 162134381 572678734 334153640 649713356 832898393 869487301 748886723 895822644 286762854 483436410 117059885 837951367 848835159 951260044 215425688 461183567 907477903 964693464 397605894 999995081 275220857 495112509 401820534 835664775 555507002 685308457 32528438 354218224 402097069 834939902 724509502 837380528 257770944 744107467 967660053 989436359 401079261 769395050 555097138 977994913 988374627 998062542 508826363 608938273 705760002 898154826 170218802 962258334 430318496 914758735 120719524 745592966 978995976 985363283 172454249 972490659 265268353 485832223 56020468 813678588 336110200 472876534 991549272 996161958 466171847 502395742 220467963 635747129 911449354 911502183 403769780 604878394 359550455 490939136 796953009 826397522 777732213 849192732 980968277 981390226 398942186 776205530 542452488 923955717 649632362 875176213 539830854 597971539 964321301 992631496 403734361 661721497 277193282 465764474 200418320 667352048 143492105 917657286 570280430 878076021 945572359 969821126 897837308 975801085 217103497 707375676 492443285 741746116 355972124 499397792 353139062 884324587 878195492 995757688 337946597 835021715 70481432 198351379 99851806 288296232 968684237 993699224 603536698 798335998 168390253 550203098 335915201 827299916 723611301 775207456 178915331 496522504 761527869 896456504 416247063 823074175 727770868 744587421 19621685 626276150 672891523 679915536 67203499 924513208 967149800 992948056 489072608 784192311 273870026 646211727 167103041 261283539 930988801 999459116 406426087 981177067 847524664 849153224 521302007 827322663 494495583 941133915 842936733 965895533 355006948 788921690 156918 536908077 881942217 897090817 803663554 936654491 965026666 972278138 428601622 896816515 982037033 994475260 459601327 729830697 697568033 889335846 97050183 788338291 971607411 982209267 71882546 536539890 251116985 477420048 662146008 693074567 180331069 855775324 943367958 964220181 334766403 575908509 568788203 582444187 911737162 941195009 380680948 931939872 887288139 936075712 168311428 615401896 876904684 950223849 632161399 730671677 399069761 828457638 75837465 672909262 374429247 861078797 9047678 544746791 317963941 851728266 719143768 831120458 330645724 666450604 22667477 523054122 250486250 893504231 521780637 855396259 337894979 431959778 295722061 409148933 545469533 921407859 228468021 625635244 905955416 931924168 314430533 909284121 874578045 980043321 371274101 540239581 147570851 730681432 505777366 818169556 609716717 691054222 7058522 861953193 986562836 990402045 149404078 663458539 944195609 989173131 162262954 801595626 116284375 411171995 574298621 691145285 232088911 842247137 847613407 866678429 458279974 500903275 992564941 996143467 921589588 938840883 504442530 802297245 252144100 622857811 646299325 654951673 256045172 855364535 432718867 633565164 673890794 905315536 444061000 838223500 968301616 969724250 404158516 842702492 545528109 874962880 931900685 956826389 528316417 992604669 25262028 618356223 855130181 979148827 606541426 903566067 601610734 964473014 406333676 623300633 630371413 732142066 576389606 659136641 148738813 847350766 203980399 321573386 821911335 859666518 493737147 961285086 943259907 950758132 245312144 481557728 887759710 951782392 724076647 752851742 241029024 286040522 33013083 159415047 70541487 522898273 884863557 891237739 663710336 734947999 740996853 882546761 736388663 985592045 982736880 986096959 351889668 853042390 885920446 944430906 413567036 723640716 541309065 854628683 513628248 633842688 258246123 998048564 861947829 934342943 838460224 975300045 522716409 614078480 218390821 963502462 43017420 829026309 84553455 357576511 548401827 843588777 807859863 875755711 371364410 626095182 184841371 416518883 954536820 994503921 750147124 851572192 634122367 709863117 137742365 322234138 196306058 759682558 79585145 564905490 733839370 910251475 841275618 970537408 38072610 497721193 907799600 994910214 894101886 950477694 245305955 778467056 493559507 960501304 41996774 364301235 425409588 509818389 274570548 873790277 831798064 863020192 591374895 960345729 122120914 253537271 698449818 858173501 655710197 729310909 447454578 586011089 3220928 306087689 978768029 992450309 637227063 816752738 900977266 968890002 653767427 874925520 489936356 595274008 652569887 666172494 421001497 828920021 662773082 796377094 52906536 308071981 751692498 801053789 212128843 910642820 335650314 636985106 407862932 862182596 539329802 917041230 88806898 377830649 824344446 995594775 664722234 787208930 275239121 285776418 717939960 809618710 686750581 830826525 263117241 383899738 329658633 486039296 387947107 823387996 225462768 398817836 534394259 714386565 643321550 682089169 207201277 915212071 531071113 924560244 355349007 425406935 183024015 209286274 939552751 967604018 497272301 659600483 769176498 930191836 54316660 584148527 282146326 736633427 642874624 747164566 275304951 870069986 748323045 993865429 900716666 979312954 85687930 963199431 569374572 588927572 265166274 488240488 5200896 404020511 479180652 827913407 87746123 287347979 185605771 330453868 607193205 980201143 63784737 870543503 520794918 821893215 991606604 994039444 309498992 525492630 102816837 586906302 88642783 707947506 611948298 810833678 642000978 894150962 575699859 978275558 417870281 971204197 462674582 851179667 941051848 951574734 330635378 540270879 710433135 995635276 171743626 857698387 393395806 524436991 951710799 988767852 532991123 558369213 366793613 748121424 505869210 976014186 454262787 566148064 17023803 523713688 458653539 759257966 359712664 407716358 688957070 737726902 398747388 703695677 614022966 665629840 276987163 900601065 491803966 816178801 790594813 828131685 337494938 823798962 957851745 987562654 118105584 625759756 108208233 845600163 352331005 593656498 271069615 700599010 833018193 986130801 512754896 712440223 987972429 999264035 345836811 971497519 559943991 567964350 956122653 985979574 536284211 668050679 930056404 964160058 541956428 562664737 757414122 797744323 800939018 825549059 531069657 837382536 325339156 518397019 998064651 999632231 764132005 803261882 143215740 823114764 342998049 881839766 33316758 291621484 252326452 764132125 107385700 208787024 996682153 998584237 62839946 234593469 119046200 564392218 663523620 931000184 430006021 591259336 29185675 629729040 350672545 687337305 775077652 827427886 809527976 919736961 7012623 882697724 571237002 772067760 18482144 273122762 336736718 378208381 300347259 792445621 190577883 215448269 670810478 697735901 689649707 726121468 932075655 952594838 392436818 555256676 401514106 750628543 262141953 615698259 654668221 804234715 659966875 971122360 126155424 338621546 432539329 749027014 886654481 979679134 964822659 965921327 663765502 779647685 244372143 495775184 960202982 973048593 237559495 970572655 291024897 407459880 686429266 713837006 166919912 497538470 666342917 864031599 78253388 267848075 637803150 784553167 65789082 71617183 922031703 943108296 418989886 862236451 124726444 260129145 935497007 990231266 242677616 605829448 188491783 215856761 674043887 954799051 205945028 308188633 474623994 522603191 302588650 418951878 632967310 919792770 80644137 683924311 788028705 990380548 371781778 388050297 290542527 479933111 50477841 679636725 658389458 887913643 809887537 847603033 786161435 835187588 189412884 234183989 97559877 852244810 350486948 996495000 882153897 935360957 995735471 996672995 136299886 631186203 980009406 996803267 944880377 964486908 401947698 808117719 978915081 992182394 765693409 903898276 918282444 958325014 544611292 833965622 424743304 665563815 487763360 903937861 852607297 953026152 658444652 701905975 225706865 434621945 160926024 611151589 370576588 977034204 640913282 759232825 266360793 819416713 4168300 262873382 234252535 792455209 824128002 853577336 146339032 716804161 246123016 610975801 872313558 890516044 172042037 780453742 402597404 816692910 580396175 854883964 182540563 854015172 463931705 765448311 998293074 998356937 50647081 909899420 435790206 663596739 411979081 444830881 521325864 577467829 134093136 407662173 918223690 986678228 109337327 630846698 565296784 594962602 972973720 985393560 661480774 983988834 144019278 947774651 353696749 756380834 191126504 693312162 611167882 806104413 38262346 435877784 155798150 545274172 390673177 626794459 726458714 744372686 40505134 545836886 194962866 564788615 981381097 993380375 916731854 962711052 813302634 956203749 467821442 546974420 40354309 346290663 924948657 939508653 571367539 745476395 748826396 827403036 894535413 933785837 752720406 951413438 964983759 965418638 233676188 567002040 621651422 864737850 149187603 890605635 819187662 842894537 148082653 451264477 878173070 989911272 590371396 921487701 534958512 966527021 82550089 709851987 397305733 918349453 46447619 368563279 556333217 904941195 109163803 788452584 495916025 674878381 691070520 906260566 722606683 844358273 580087510 905622458 561353985 902395426 390756600 888285579 860820304 967199289 583743416 607168245 130550541 873741401 531552309 906084487 958941447 959568762 819229938 921248563 104111174 267112605 765076254 896191065 216043824 775474743 809085485 992823804 473278206 578627652 488479785 522476296 688984762 902228395 400155709 978483196 508525936 542270962 615955507 836609037 508041727 842269816 332891398 801540952 236258125 787109572 853675663 998129088 186453521 298706635 704139737 993033524 684787418 986870833 852588988 966959612 344415284 958454861 443494804 743035704 417270765 743513278 851119877 954089937 187624590 201101281 185697343 697033067 180946911 867663266 47595149 226190936 142003796 876518655 996886976 999025509 726863196 847338026 76725612 825635601 975156231 985448626 321395493 516211997 64976054 504869035 227443706 737674187 986786465 994550071 134423922 929203781 228551177 743232291 661628479 761659207 79585922 426937001 355314499 640284856 593549543 913986836 953462657 997788706 963401506 984658536 134767387 328031632 948053114 980681902 399231667 621500706 538257458 607049151 439146042 652998917 538002487 969576685 287897210 872022548 833605873 846933332 84128137 956051667 717263534 891060097 500105105 891262356 305284480 684226390 791121292 915019823 267242423 502931488 924560825 932164690 105372329 480453009 629981701 698725878 762202576 856078202 420457400 620122702 784315403 895162467 359149349 878251222 46924728 376317641 321397439 564654840 64498795 417241487 94126506 397961420 881473071 922776106 854311241 908601255 54425030 457933892 155471953 680101085 809056032 907928577 815734779 915829148 834323736 884156930 554557509 912918244 405935352 475643800 486697428 497206111 699081036 845898349 204466882 267430182 683252102 972219405 561076018 728362960 60759732 484885348 572189027 851332004 268682019 955411163 686862756 769452940 562156916 996372981 462756517 462804439 613290948 763827169 167520333 610889765 622463646 804432950 416207349 579746551 145125739 897210014 761326032 944255865 804369987 944138184 922101312 971355201 380300500 839550795 541974048 678018406 729714704 915646778 307095289 823981085 672044044 683726157 513960661 542468214 937429852 946153214 834680403 894453579 774222299 940114495 564500311 908565712 14128674 818992476 590952380 710244019 490501365 792065810 350237298 973885808 75731282 926358247 753090363 789549143 469707874 909115510 322660428 618301344 904132057 936774346 521775273 907733507 888335738 977781560 315613128 500010785 951060142 997486112 488198249 726186228 156183249 574268979 922039937 972494462 190609769 406794150 736219764 771582491 154199931 620922334 267480126 963848946 823918958 947311606 386869429 589314462 896035306 954768582 232623230 506911653 499564063 895543247 263330921 315165281 662124188 669516660 811362060 961295796 246647567 879658888 174348050 525945576 684366613 848685742 289043679 853357514 649337836 978837807 659070536 659936856 626918962 878112414 647504573 986537315 187883313 435873086 286408576 390565841 83823731 808245619 39268581 118212664 262321795 299638175 836234482 866121234 193374944 622560709 137885604 331167527 863611855 951126299 973267260 996081025 118590507 738894023 243846 188201707 612478995 840174171 89992035 434785449 326362994 961327495 908981051 944000704 247148772 329316194 993368807 994532204 655187231 969229086 486876554 640991973 39672929 245767867 603790743 998124203 153886981 518324785 502386793 742435034 560676464 986635317 708203511 807920378 658299967 773326098 96251416 532821411 998001786 998283072 341709366 933576739 324101273 975239828 397121786 958867760 371916311 473694208 691900476 855611922 134882541 787039541 104552826 700184566 659481630 859945381 905798979 992001433 183694856 967427783 690223403 711513431 827276912 846379702 157733063 883538941 617722247 745200295 426806941 575691584 278099416 311291622 734067458 808378436 405426911 650118785 951788588 985796426 272198310 559784751 847882028 977497986 368922421 653164581 428160764 668864157 554922911 769034451 372690332 477146300 982130514 987593134 341331825 504955574 385473974 499303993 444274578 679036954 412986135 692010209 688201024 883562529 917209108 967621357 375936968 965376295 254547802 688136559 228425817 452848832 606703762 788394424 929620228 971923822 104111126 248814140 293751549 681061947 534674665 836484623 702877557 897332245 285593770 343896150 123827659 741256217 14879536 525854732 751160702 758805048 430711895 552778559 397514581 467327378 747811953 834016750 223121101 853378478 597185519 838628180 917960996 929077228 950383498 966770122 956687131 977400894 649766482 779714868 406564888 916952408 21362919 406387399 937733619 939425912 352495032 405477804 39467070 207817889 629030548 633430528 159669299 594205153 994439499 999257092 85809014 294044150 61260109 281387188 62178351 722407088 994560767 994889489 815821250 937093427 974704100 980868836 139182845 220106482 168790895 224209309 356739417 700479825 431026890 912791207 722854109 746257832 915489105 976626534 268055868 396693673 390418060 813767072 754265817 765901934 454807782 602736880 779107127 878958957 982882555 986050272 439679493 835114870 70067669 223906446 569301993 912789363 542796678 886492270 38661646 572216204 445762698 672133644 684013956 815643991 519215844 762057295 195538704 646786317 221704261 507793997 203067166 952845107 741789624 841560617 357406670 816651183 826864795 858089424 529521974 756319132 77479978 723782761 146405752 661738746 730651993 805299509 40977633 58076505 11836127 469107010 216975610 550782395 504774280 825675853 967767933 979680392 479355212 886991344 318460407 543494988 498460903 548409908 224517332 543391767 751508143 968715786 802654495 942597511 74609907 846943379 945580407 957750561 811636545 996909697 553673197 979011082 4729840 297612129 691949211 834840598 917266637 999575680 304753816 365973071 688202850 779045992 818045056 983420950 437916522 698163119 687338510 775361485 338525099 530763572 560798903 892643389 424852383 949178863 770640727 836860128 17923853 187254821 45833464 970175713 122625185 382235073 258050750 752025714 965593532 992271784 151042856 330831781 66980948 863772430 834298975 876660854 57780710 642976232 601031846 760278003 799589004 799719460 290952700 621392064 816849374 955748470 624817786 966495226 760558098 906470867 309893943 616915790 880417829 888607950 209955243 730473177 898685138 982282990 511463871 945487674 769101707 953618563 128081286 823565004 183978265 262220934 714660049 916557162 660986942 770478325 294303472 397332139 137861209 835620772 555597486 765614253 747307139 974914486 346069742 804481457 154233212 965316924 418044421 572298157 851800167 911006516 271309926 787151755 546577576 992396553 211067544 246389409 562940337 892117260 278066000 973973099 753160202 978075813 585693815 738741154 885755555 974707113 754891127 868585281 353850055 707963687 728860076 967633283 363364875 680020062 976142275 990747982 138462462 407004087 442346510 675165424 539827273 661057464 490436015 907322194 975987536 986961173 618746170 703194720 70646464 111238983 925822990 979860582 816318529 960087056 12528894 303105356 778999056 818993637 723715651 945148022 860985081 988560753 901375236 968714572 863633916 875579802 534724559 591247238 14368799 305179907 844689798 944890114 867309690 966903761 837572947 976575249 423643051 731775741 503134220 849373204 671565695 764626175 27773921 608217199 553962409 952889008 227629877 630334324 889730806 954450851 972982412 973587384 312159483 515533051 683539983 906639649 690378493 887078950 231448739 267606903 564477248 666136144 111483241 399375217 211684417 409957172 757171585 857029420 975397651 976354695 32821910 784094187 743188336 902946429 580819975 951166646 565469375 825143081 603541284 751069213 67075809 947197930 491974340 871945490 164210824 860412823 662222992 719963073 522232989 585949094 118130737 984276243 414042450 522332590 687955332 742094353 527919535 674117023 920419857 938613536 159940620 988393734 106742029 241917349 215496425 886069566 404969938 655484281 869906805 995822873 59345904 727788084 66536087 639119980 238047296 528026781 519882499 758775978 72518318 999414005 55167994 262355671 340390381 379653039 285596337 967402584 881307151 905913428 876155855 940252836 798131093 856541988 616027278 708272469 375631370 690534287 484534041 795616436 237044488 847748595 223753796 817043440 442988691 690175476 644370949 683398360 913013508 930894321 76786423 832469182 926101163 968278055 48154929 952516990 978561912 979617185 530395527 966548302 528242399 630705462 326797187 415286677 882029567 978575380 486524627 964165905 837261691 925383985 463871331 952394806 693487493 718985986 221554018 976835515 839695501 956429763 63018917 740392315 152762212 304233220 3693712 506668220 463601823 528386942 123211747 989025936 960726579 997609036 576386436 911261648 336144688 581678578 642370898 848396400 548235097 893695541 384584564 412049360 538662498 883889013 547081704 562321249 276313984 567235708 323326987 640230116 421580200 828304723 923009554 984308972 715875825 809050378 952777793 957449023 213484377 847956400 227903293 815630139 272418296 286920012 55432691 64573126 558034525 790822324 65108137 894996459 379541795 544312934 3475157 661426676 259920071 775093091 323621484 478642184 176530107 197493398 800024232 887988191 749728997 941086786 472223637 854885542 631249797 657026438 737266530 785368963 928977439 954560551 999476052 999907700 313243726 481337341 171511989 638886415 714765357 925593798 801899773 876057587 748733739 820859813 759646974 787703269 307615140 726881414 682577242 829911651 808864202 818097103 330163746 330858100 4326645 183028294 220021811 980304192 640756345 815157533 664152903 726294896 869731836 923406190 295218339 437201493 534482489 591111952 113596252 174106924 334302578 429263159 165217665 698338768 50403198 696824728 611050212 871670708 169662763 305229503 149750095 890849015 317952227 717542295 22666162 311529318 822790774 823099296 794200603 945489812 898322181 955676316 991376252 993338152 897627877 946126462 167304709 642789700 2200137 970324856 496227557 962110575 465153408 644081066 76063328 977553655 547931163 719613658 952067133 964301553 228192221 264100818 81239883 177704441 160153973 255516612 572242833 587706162 726714366 888408610 553786245 997348762 341457825 484383688 852014532 922163422 12524647 334804454 233311014 962328791 368555427 496522122 199585985 246674448 993246074 994620475 728053821 757623271 535509606 689126595 893357427 916306080 501915395 893916880 745685661 913975548 850115711 976043747 349959388 625540058 112351556 277350790 563661517 710611996 964931261 991262831 191109966 601529898 543650662 652206527 483803363 583300689 444725398 561639492 453701702 746284983 762060724 847493563 354077177 544843910 682053519 837568766 297935944 874332666 781157721 953042331 847994733 956126091 338079536 863921540 227141796 891081353 411908881 627468082 905633390 989704001 950738712 976411567 567032758 766389751 762567736 844837377 996369783 997360429 283344587 906958351 639141252 992379091 189622767 764515943 49561419 985888891 92887526 309359119 363494111 397416128 816656231 901922600 808899784 827734082 109045780 766072930 742734124 947878283 84212385 691669434 427593407 981543974 299909481 620972683 428505688 508528612 975479863 982623876 827066824 965738740 156820841 350812642 629759117 942908331 785776390 938877921 519239591 635474679 671213013 750699098 376373774 640768669 683727032 940607735 402987278 432818947 977783041 981887312 484019919 990140628 728979783 931545040 138894386 505964565 651009211 928333231 702113643 949304908 864889363 905659507 234979903 258034719 963789575 981062146 42666249 930135769 966080813 966957306 472599983 720050241 92774461 546610760 167084173 410014734 906510997 989158568 518941757 924405321 226944920 228137692 349331127 421500247 138981605 174925472 697337258 807914625 222502462 964023764 377600601 938557264 415768099 451893239 589063632 818265442 987743499 992507931 924888479 942855132 151343862 668228764 973957837 981766713 54983156 75303671 241474833 271608967 948405433 954513164 655252983 811927705 232838110 558531604 364891229 723703366 109373949 789934025 269446474 561276600 997386682 997856946 140129302 467017072 612443184 955621018 925507909 983579714 463524102 991535576 637988871 652896110 716093256 792353986 948624353 988651786 666792483 683771375 186189230 817430091 259594025 390538935 759221049 886751249 179381325 588741675 181556322 816162160 957669257 980786627 762813618 831735173 579027235 895110538 909128310 967605988 829017781 928645051 168013306 916506846 178683571 973974148 965873303 982775384 255585957 549997437 414456401 983087257 164449085 787745984 840802441 905539285 658202401 743123951 123350068 171811559 240263693 394958159 638052410 721451824 215838998 430550253 17870676 48625351 894013700 982999634 412610482 949856564 530426884 608977855 506473517 710753341 97741519 431472239 594828274 740615074 924395092 945421874 992274173 999126964 147921698 637190824 915963196 922457578 364905194 991349540 148059373 846995622 210510116 972429304 57222019 954527600 430474381 696733905 766963485 962168102 259178314 581997525 538970216 692597289 55256418 906759603 829332930 856207753 301814396 515901819 168435338 228286815 563759833 604675453 74245756 768322459 635123216 740331405 764112511 943139834 637928355 903795443 20974700 583343166 367414739 396968756 715524658 740519780 319123361 428944580 486430530 672400941 582693244 963450708 172518265 718983627 320941415 686592378 432470741 447970450 282205917 786566127 899609927 933917769 248815621 605111471 879408937 931644538 705082702 891307354 33720191 292416133 936006928 967895271 134241495 733614679 959978784 990165849 45694658 441968302 455388747 640948032 149132944 237171478 25747867 802948460 305367994 604330867 441026764 545519650 217728474 486366454 767786526 844155703 585205764 849354794 605441261 987921917 275360319 579112932 695610578 847057911 145826881 921073262 988273280 990025381 685989013 719854936 317949553 617175697 603658459 688606971 970920924 978362228 951837684 998207493 817998602 861559584 380840943 932253053 829718125 972653146 703863845 954467994 847236471 979340864 615162582 736076506 157700428 689978160 250853787 301252309 67127288 737320449 362187304 861704173 432971488 628419871 226278797 731374910 505135782 768514291 824783852 906175459 475873109 960989155 982833659 986300771 781098518 796422635 9395558 150363928 280073251 848411195 614298981 853242060 747449536 989507096 340911795 669642120 954639863 961501669 795021444 971692733 832854322 924487053 751427264 952385793 497498469 828747026 395846556 422974259 218883845 692897296 103533388 472414676 675977224 996872238 184405760 902323463 505085828 514022650 508194251 881809703 124509540 439808696 330211729 903168973 997772143 997962362 918803697 974783293 445253987 796541591 234120468 723562506 875178410 994979849 735755321 994827197 66029086 309171071 6377970 556135876 385539617 657752046 331700588 939593958 205638952 370065275 585005060 833508532 575092027 931308697 693801764 846959832 726232097 857023634 412592298 993992202 719771257 857364801 743985596 855317100 312139378 855578242 683598384 830870507 462680336 648452469 525971227 769629040 837998247 968219978 255348227 384957590 110267925 621610672 776306769 994698269 848982294 860384950 467358587 777744416 429428099 525069727 821862322 827068781 966004492 981340839 541181853 842960798 422843803 754093534 461146922 730270794 587460341 952370011 913204983 974078609 569672194 913338712 784113228 803931092 433406215 681087484 746197679 951344367 184038889 962502495 59857120 265498782 578502033 956774858 454334534 835752486 789765968 985716842 109369706 970978524 577955667 713146288 331468496 733423261 355330210 513840717 846216980 906891385 483214928 512557411 223171199 343899833 343388409 614519701 795064507 880909563 38529368 501820013 963722220 996756822 178380907 314246555 59561557 243516867 634257004 687789023 160991961 387651364 902003299 968461368 805232702 873055164 237517772 276807713 545988917 746987346 876346842 920168229 913476193 971895161 412282835 761877563 194454304 506137589 625845837 750867445 606704106 951940822 746760420 843081034 784745447 905160302 386668044 553888613 286528702 990592943 911777884 995162007 206861357 483557829 727194892 892720001 640956204 761239146 749026576 996749468 804677674 830870346 186755120 357653703 714029187 987845960 816389537 911430629 724691742 870391914 508335143 972672301 187273485 208704422 300638382 478795648 372798375 398199266 773964033 913461587 379871973 982498276 330498407 915611111 437382190 868887104 153138524 542176263 42996001 215819166 650846879 730946985 193563310 363969895 99343527 279952061 293494352 972864054 904843816 919495856 866745387 891075218 653016979 968057085 458656346 515439478 442305752 873622263 391870475 446032870 256427729 755335897 886425552 970481768 809524655 817636631 121484547 798434382 115511997 216422240 628327686 921986230 864223046 936834209 412222318 757332946 830343975 976828867 574901361 973846322 523467015 542453820 192513589 761387133 992020790 992178158 226964960 891276047 248591957 474918008 432879906 739233728 678700797 842912811 550281634 783951635 434655623 715252974 126749115 376009561 920177290 975370391 195204967 781249571 865652364 995234399 841677283 990435554 464058841 607277766 197308401 878030788 287787264 478404780 859463198 969698313 284455827 811018861 577853551 907113370 580931205 708977484 327107412 578841588 851989633 852672395 935220586 994858993 326535510 879601021 472182507 994131656 644032794 835391059 343740290 986839926 778333704 815999587 176693431 512171039 104651102 647696537 781043018 850453321 558878025 574749014 205990071 796576549 289851338 400438304 934400023 973490964 74189583 872106815 508240344 630378849 835788494 837230812 646394653 898949388 302458777 425859321 982381491 992388689 124223267 182735628 570744650 589266669 899630679 903444346 886054200 953951133 750920737 818892172 847952121 901055349 577208304 675120809 434243611 899429063 94597291 486657233 497899080 959206846 561471624 737190456 910779785 926222889 420264270 488900255 981908575 982160234 109634211 842138993 578127588 637261399 439844176 637839157 425188654 691521457 610649165 716376534 966706447 995298977 738599814 977735198 535524459 744428011 448533940 893991020 772109312 848563436 202139813 462013559 85462884 582721416 540957274 681100477 212026134 314696282 645457144 762492257 850358886 934757899 319546632 367391421 298288850 495274718 622764856 687638499 502337549 720932643 617032615 686037276 726359347 967029947 890465460 914536342 144546396 487401337 743955855 904344825 94993602 128086395 814808216 831107848 797636370 950575257 329453323 436203420 532330417 777833085 267921562 346418601 567648114 980974188 236262751 563315245 439923860 777964598 586698472 841549090 869549516 964024622 270321337 993840776 924429555 983304903 380359748 476429267 41912186 207837026 866322467 894816801 132483179 637867264 582539820 612922730 587687208 991376669 222790955 617743402 809658745 903164970 264926574 951322962 241508626 642050402 578688450 742526142 358618678 976461071 712843651 858829607 552082825 703664567 231884491 707653094 953485523 967639076 844520222 957588281 3897614 625097983 581118180 824736297 254553688 396447254 839698945 991313045 123057611 676882134 119802926 130116720 458328569 842992753 275973684 639446764 645739104 859642380 948885535 962515225 811937463 833971372 988197081 989054071 245679789 352940408 615160326 954886119 673506386 737702928 804860683 870933884 943271119 955867990 278860572 456091427 230629988 702468034 989868920 995391716 851569668 953293712 315148770 720550926 683668708 968178243 584505763 590398085 182834909 670041570 929475023 990704171 731477554 849135946 909779497 947993212 211211135 901517373 768832835 984471575 257477268 924409129 775623073 889277596 813044187 970903245 653927471 769431282 907552101 943283680 247309103 943340314 559818026 787763114 663866974 911987175 58338666 793790605 504494772 724947627 30777814 365462142 764981564 988765493 801829556 813697235 119734349 297168587 58573371 722875670 150529015 480869647 593563581 949549184 881185597 982713155 832050075 935966720 744684373 944002696 793473445 947664377 548812949 965242944 147546384 898056215 863708039 940034997 978594119 986559233 700528790 744981337 313519480 800782664 373752294 613539757 178559205 403463595 683978414 802800567 873573928 897788534 705641920 846099485 414833278 767690138 238945746 276382068 621976012 842698924 307375648 323211913 147814184 662396097 73865706 652947846 158636422 692941126 578427865 632172533 341832810 626858670 443204246 900640699 556496518 926232360 824821794 878704066 658954943 856910644 673192097 792249000 107832408 899274157 58709769 594840038 541319720 607486698 522431509 718626622 111541708 329634263 333217812 786675681 803187044 834971869 876259423 907283329 373144994 620548623 20131287 656075310 391039625 785969607 604723621 938296729 381590295 699969352 805403987 915673838 996604495 997547144 870310384 921717377 365554190 386230609 669189008 881820725 132066281 696637113 32353126 947554391 356615521 897020255 697575171 937247271 341755709 787294356 102031173 463404168 849114087 995600367 492427988 550329183 132029809 792501117 554562377 661172746 536485199 602367981 234263982 817956764 748276032 759598219 40641278 567455575 164688439 371204010 46943044 111210567 800270744 989865954 385702420 390061483 888317576 903912551 321068264 340517107 378591245 467461325 609763228 728487201 193528409 416622675 983367055 983394188 309138939 311505445 601894336 836484786 747806385 759119677 184116958 245490702 249147410 305193459 601584150 747917289 934981773 955929930 717515818 770462304 850892958 916396356 385466462 516885818 849769792 955084043 810289603 817404794 284805159 514377881 806497151 891109724 708765396 759327062 774036935 912492343 334077860 385017917 480843280 521491192 573212104 694117179 439118768 647991879 776712181 886222519 698439972 804553870 816825326 906323904 19338774 250070835 946754482 991269075 391414882 919441396 656703792 663776462 954024538 960396760 58329579 949944227 754254131 842267011 152130737 885937768 456631714 553061107 363120149 596402252 251179581 746724525 30549313 379011711 871775260 874027964 311851222 800595349 125578767 447774886 547188290 852459042 280706020 845724829 341255306 943976927 147645592 936643312 274828491 455315988 956834111 970726896 474320731 967213644 717705033 804708812 297034291 498246840 561709051 638601169 806811659 973277430 538910154 941825799 845713164 928081587 557731036 565086647 128552337 704537266 831611458 836023846 568572369 943409039 636575459 662774997 962781320 974992288 848183000 903114069 197031659 292872395 665366683 968330038 221135012 810234406 612824966 739642419 588137913 909995952 249145201 264746078 351229021 705303815 32628657 740233387 646211023 838111058 680659106 689953220 560398968 722845229 58112139 337577725 615479068 747239009 58751240 587977044 534067656 855853236 982780927 987869855 798262133 860364036 253545796 800225618 617538813 618103677 431486940 765325750 321850509 614672687 147073015 854053003 703555935 946184928 417056175 979446255 592460594 640837535 854741668 953759844 179071396 478305734 821595503 937656282 333248670 684706874 176211354 821148134 776822619 991955858 539670637 906887052 232773402 245374366 683168090 798826428 155266176 165282479 252138437 614012191 270753847 931382076 761848680 764880298 64669662 205190972 861095698 883774972 623181323 824786277 284664058 694060064 82317981 800579596 565708399 700488673 12673144 594223414 129364959 809988407 635896992 913374277 912820603 937750823 444446063 940036026 788635743 890870830 954012422 989139456 101438595 484838480 494341101 685708372 852146390 922986335 397634416 499695609 137746316 723977740 725430349 815940018 533615917 821721163 711690771 830904893 906292142 984809268 978379523 982187284 586898280 734104307 31156129 478349872 561272220 949551916 924479383 954454903 121453966 262804945 154057276 968709305 453741000 766689332 26168439 661576748 672948160 887718300 13751152 147323995 203496547 528499682 186581497 829016380 98086475 756972625 209388025 503178140 644563376 719416235 314882488 876450207 859546972 963649113 212015155 567583665 598005450 954260492 466840246 968710925 497745805 501827830 289935003 545806527 426873672 713262642 882570525 914736385 804370346 865551057 89377536 216837704 323734160 829427706 785118967 856933078 470822217 806335694 734987460 768474823 826488810 917253240 19479522 494141385 306075509 544871859 837946802 921038018 162288114 772817695 375437346 779597583 463114466 800420148 401571787 931838228 77928753 900421083 370172583 805137554 624224459 970661150 424339031 435641099 791513471 879648111 361492221 424994408 803905306 853092731 656088468 686918019 893387512 973779810 444743182 857823276 163814180 515231738 111925891 117812160 333709570 662724604 314023408 788996820 433259681 618003962 56936134 978518346 116150389 548085698 63822512 333929928 843690097 879160158 909348269 937955253 61156456 477597674 191590947 501588738 488244504 920782303 871481112 941473567 760729317 976280120 551261524 761332568 688107049 889755854 753561409 812805321 542474548 629733870 896151169 972658314 921122791 922808373 907088412 971091819 641147476 944895147 270187303 930461201 17544189 299878305 223398713 408942513 498624992 948032795 536659246 579547721 128193240 131710291 217749721 887588467 938988871 976427133 911327902 952304496 596870056 661147340 964286659 967173156 740773460 900996657 649007540 763698371 523953203 957327162 57493057 144584140 92706510 240118297 845532387 937022136 673519075 799411342 209991948 578530816 197545103 369447044 718050052 948185448 391971330 874351285 178957691 668657727 469932160 786272043 659550771 953932839 107684774 508401276 241802715 473721307 771690529 828567851 338431292 883900499 281839916 521188757 161897992 805285920 275116067 928040107 859186479 995422960 333813378 438076383 98771810 919929297 719234103 881204419 469407765 635864560 796254082 953652832 793766194 984509223 394769112 827929144 982671858 988629898 67489 156118283 662742718 897380822 752967864 758327745 507863574 839981310 301671381 841126637 696603183 871443383 615598770 743630180 114137837 800859364 251091299 303178993 593400592 869057113 90271527 348801594 952926373 972661552 492847003 837440356 609800409 869389921 47264345 825270382 481297478 925772068 944955912 992826997 748398994 775016343 867733243 888348715 936023673 977586465 468903059 869599501 892843925 943500274 33133651 995702740 413355658 849335376 26115385 124594197 914265829 946226367 7253204 166010719 663167056 787277791 957290210 997330759 735198093 913780132 366419918 983235348 512595828 717854117 617934884 878374531 296910529 337082426 862727183 872172580 818849485 867466034 776817638 973537343 110298679 123484894 593916259 751610106 293926257 538177311 465058247 656697707 166275879 778999028 440818073 900965549 246427572 325797173 825718359 871822335 207036987 690986170 571191223 694328053 488819036 505202721 262930198 927073252 439372087 801716400 229125643 424484814 840506559 998121829 843304668 927449282 230821258 381856137 819043738 836326664 474016439 567637454 690178409 922851956 30463649 595306800 888135886 919511505 291428265 354558705 579481162 645934387 647525059 752893114 927354633 953070350 279119107 389787016 808732405 824484512 802233257 893575395 633162624 764809142 22438965 443791923 983484359 995955631 241931633 795808763 34047102 986416823 321363349 618130866 878652240 891572063 223476971 622248271 874273644 913827314 110236204 806417081 514886407 982086481 17610996 570003879 873956053 926281029 945088812 989896970 792936113 877081801 962978263 965514295 104090011 802453012 310443555 534731322 707087780 793505344 705981400 919130721 288835527 933738498 858360457 916618394 568928747 777241067 217104787 368418973 676829053 836732755 269153794 324771383 626781308 671427431 314616600 895115539 315720075 565653223 587498532 928559666 236955341 458102817 766867485 776673694 95358393 157096217 890742208 944638057 368292037 453506528 875859683 905989798 639751132 722557456 165744469 548099416 457671481 642429843 713298690 791775732 905158556 990781385 38826103 981688351 108030043 805092145 403227721 434085735 15661133 126106117 432220463 618698548 684765339 990147927 890763223 993298086 55301375 908074984 874474083 978386175 697991398 796162858 852406327 970766270 474624650 699805481 45981032 224455577 74604647 693981232 833848682 954936847 644895144 686741130 170777649 936494818 35767095 924186621 615011358 765853307 949932144 951384476 641483274 665647168 949073445 988713959 818762472 981298219 136849822 419773511 440362199 708407726 237478885 745901315 53673856 626150521 954051222 985970522 618377082 945032787 146150076 698573863 792072587 988922044 439461049 700341167 127705191 762549662 50868241 153363883 285844045 848543711 927682438 984440361 152582834 248352111 164525461 343780620 333412342 863654558 612848520 656860578 220708297 360164645 479484696 862859396 34514390 375970159 132045845 672332432 462386662 544190289 389961457 991670524 342595733 754908112 286380666 796065439 277776248 848799822 909755126 918377440 961351168 983527066 485142693 544884294 459301930 933175654 494457820 761276012 685702726 898826166 750333811 755393405 428794468 669645545 313072054 532560494 171101626 765882321 332992468 589765929 144067505 165669375 417549870 579550201 581883958 929000223 259554832 265489572 100374757 526600816 860834499 898217936 252148209 842711478 954459537 968795189 607185004 749946352 797757940 994618770 65123757 310027175 223319839 434512291 552494244 794127070 440958488 696052335 515332960 776076798 390213491 902715504 161323560 464813721 397994538 613494543 351927230 873685169 709396850 729731343 782298823 959039760 349158953 368675902 408114609 449911874 191748838 263698683 255232051 826873417 815439019 926212028 760751995 954849532 779208425 920559972 531400147 657577462 208642126 728604316 340814550 907413552 452918494 947744742 683498906 997887822 457191837 899170325 794466617 933425481 472749413 891102156 79903713 239735518 125902031 157316220 761534361 940281557 815812809 819115887 607729140 612967940 845876474 953056638 143906250 589443647 103502906 241956365 710672940 808154616 739043503 921111175 12825861 730946113 719302902 881237304 243840718 763290307 616899161 844561438 725634250 978439463 735483749 767866086 469413101 936653571 198215663 808708930 330448039 908661940 41929517 385927679 899102414 998075960 906745378 920079116 549923231 736624216 666802630 914547071 978039442 993898460 422400185 436934997 509704095 776045994 547810346 648985607 721636467 941897279 415997663 897627045 804886711 994916492 610312808 750050395 58557843 671822571 831718893 932554966 58283537 201047884 340655399 396339802 208815254 938585818 88210927 880107991 829914054 980058332 688372583 939785682 244337047 890664811 393153340 610010630 817844691 973663189 729387305 879505106 814351933 922817391 228132592 701928661 10910898 258864922 124761610 198273130 769456835 935680600 802512794 931113354 54382251 411827660 617194351 732614703 866299644 934357460 464829852 498740336 14262856 953179098 239785375 265265720 187482943 436869310 574281145 634109402 719201069 942996735 175065989 720015095 988119072 997642448 113734854 198154633 441334005 752903345 171934537 244916607 84055581 596217589 169416218 678259554 682431677 822650646 551551379 560629051 668612291 913966754 708284648 787793857 920978696 993008294 800421703 894427912 169196296 531743663 788284664 981155682 721403565 811311729 964469787 977327860 880861074 986871346 255802279 728461324 974030997 974938914 697041036 952564512 577888533 750737162 616082430 834317046 403047516 724759442 756683021 872660744 12609437 352213859 563389199 898961466 862532212 893805224 111249286 686675578 257210811 473953027 540215516 564997164 209492022 314885335 190805447 482083842 15467997 346154278 142682614 768733767 411899917 851048054 851127608 924232849 165238277 635535982 823636905 980542670 366887297 671831299 283383532 759465388 539942305 827057310 102022767 390845826 136388441 398358504 102752551 288609549 430201995 499509623 845314627 977506620 865153199 955698200 121857978 870928006 485033790 541842080 262593036 647261059 299209788 481355507 452664931 469457880 909075640 984894656 392001772 748750388 96389055 125503565 104255281 563279792 549274275 588865421 321391907 760077591 55637858 76227351 595474241 608288637 39858700 292776220 369311923 697629203 594388065 995393026 931365850 991758609 749228999 870775245 461104939 703851663 643335529 857088727 141854748 799868057 712063573 759813789 507985164 522128046 660453969 796738649 708213587 806188152 5031104 397174706 201871568 657092866 226146124 258476205 281943044 456955563 650787088 917771738 822238128 860173008 810751545 870645340 527172703 822522128 592336489 979698610 70357291 172406551 12777720 134157370 614378161 872558379 283910622 922839722 334587501 997335392 413838004 858242682 506873837 817562695 982616317 991685257 673584082 951935985 73812881 423739313 533733697 982201585 606105043 654266379 622768047 649353434 740871999 831675493 618266064 750506668 991218661 997624411 982138454 984900025 530118346 633858825 17105968 449349717 429073961 538409412 38491599 947744103 99875833 641825228 7587022 730428973 423793174 905835969 934483568 961259304 869138505 920528640 83643672 287887831 25285374 974132154 816866402 821111731 786312088 808337305 831482158 923112885 581500766 722815832 738843602 976664098 906703569 912325906 747755239 838870496 781525375 917460348 960009707 981224209 555570932 777945455 948766076 983452643 632663358 941767033 760227524 784277942 27654237 877315891 984618079 991671988 907161238 956055657 957134983 979772123 386104591 741594723 947423841 966569360 321567191 408514769 691695665 784499912 409235680 720903344 408245513 666043028 573362974 932897596 822878639 980980104 326937057 491482045 208346539 568151951 672601971 908117412 641344530 674456100 168714125 975162304 524977902 805442362 759924288 915765897 946872205 956245676 56213137 294930244 19470486 442883675 283542046 533397291 141762355 519375610 616440982 956386947 545926848 615030918 905254067 996971116 403907846 627645279 527950089 977953826 558759807 772553794 221821414 599691142 767950085 978369084 505883671 607724621 881044729 900237863 940720598 988612587 231829261 424455157 997286370 997360626 283180318 379194308 244719436 571260858 156256492 297158432 277749909 290641427 353914079 613462297 587577946 949967431 379313551 635515010 484332982 844570799 80934789 215838714 250306492 389394260 708851743 856417928 763777797 975015701 278461203 586093915 444400951 606242008 962983112 969555564 694185044 751315417 829302580 897268040 624344415 954006008 724889363 849839574 894970333 917696881 428773922 936162977 460412491 836281526 435452999 846403154 955825819 982176216 892504035 962020223 643765226 869101953 689152810 827180589 385461025 492977646 861933829 932334411 236129593 912065666 840855226 897725803 618018097 663340619 951931156 972170731 975455158 984468381 455507434 525472315 285891450 634824736 542626769 735041178 380831331 581240030 422366394 583985627 330157506 632866933 10825306 850103249 505986324 817291498 63335569 228949621 154336490 325201170 612425005 827116057 305292566 419656303 601200007 866091662 557578896 770197841 332386120 850943666 258704898 929465231 26950390 405780151 377243299 695925983 322706849 915967950 820087569 860729130 368387357 780437746 451818483 792034003 674393537 929205198 232172510 832958863 257767286 287897122 88190003 267968351 546324693 753384427 711138542 787810011 16469622 762597992 230213847 734480228 34129590 611918339 530339001 761731039 922161771 934587997 193902549 785212208 321512340 811358887 29403779 633332451 697570802 975799770 90158697 873876370 168797871 295386162 498185173 841939941 229663969 264551665 99774173 851603934 696947060 987444337 587274589 906464611 750496610 980007945 192262581 880921200 709862671 859725788 917590450 957079855 670851639 713317046 356615752 563971682 279711743 353851094 643491522 718953941 238481137 433229126 144124104 348306679 94617740 833305424 99561691 358426232 282143899 567106859 29732662 851602350 359743296 988691415 753174917 897918365 658498208 871349828 352555360 786758634 123567782 423540627 429056650 564762961 412441487 730947088 604278311 720537811 625070928 940672241 11818969 289945145 780694201 810120783 822422727 832421102 469414399 845239304 516890576 747648993 326342979 502030693 640994729 824167801 937828802 958744815 809205089 967834434 238216514 887778200 562631449 949320519 477030082 597092256 270327715 782558294 734136501 883650885 111226289 266690027 171052555 605491865 83674776 818978247 621263000 711704327 228009777 383920921 852356437 976436423 95886042 315947611 560552432 671556427 533369609 674743204 654158664 750136582 660361669 988298153 342625988 861614986 262858051 546691965 909540818 931685903 262966695 896493862 135338656 384709995 892335601 990245384 497287921 580175496 606308311 886733199 794274597 976055301 734795870 904351503 947633478 958438652 799433598 827455452 220949748 763813432 854941519 880651977 924119623 940710006 258605750 721840508 28136093 405173268 446127113 561608971 781297695 910250492 465280125 470496643 491569238 734314781 349289024 525316980 108979082 133728632 867780562 928754839 855839444 951921031 701482254 888381372 182176213 674638147 759650356 851885528 631590289 814658446 88452194 529181566 644043395 802513287 384639510 611213834 2890984 533501633 464396840 937137066 234493441 541157144 653692830 821216420 52014004 937114788 260458148 863190516 776720449 968955785 301080089 343543487 520745319 995110145 532928956 786608398 445647203 956222713 295310138 373710634 221413379 660361461 935024336 958595333 368323221 820187021 983187666 992642705 557392701 951678656 240013806 286974055 376795645 919247674 239661641 960950284 297789640 416597062 708217966 756728100 626961735 887757604 451855628 951109099 486020760 990272715 258314255 810117927 504822112 544885272 882534451 998581145 54789526 729968346 743512203 984676675 406961944 492231966 516905034 888649022 690946912 739825867 810843818 851848889 464101030 845195296 516740656 952592416 436191871 461696309 230208995 567491708 197784440 928645482 895362561 926602427 552429617 907632224 54133304 90430144 711287149 780668167 327248883 369867854 523486115 992188726 217560326 483374070 16033787 826142704 512305417 642362298 989856311 996655709 127097075 565694839 975995304 989059106 725576255 944311342 649754139 953334805 453059775 657378158 923969354 988929263 870264917 895511335 864340733 941482164 744796533 923307252 272016678 628220366 18440066 28762217 968651411 994511140 188926148 998688748 397683216 420211794 906995408 979451392 220936268 978715378 223529838 628871683 93452339 749633014 939006489 969791778 423813065 779132239 497390586 543742831 860836459 895316145 740981950 896794896 509299644 755872417 599984536 742121961 195435805 503124739 513150597 881707585 4631460 668271078 101177259 897641904 275200585 876226765 938406342 971124244 828658912 959458128 310979622 885408211 495485859 719774254 972375643 999155994 693361393 874361857 462330026 692969450 960363878 999067412 370598440 863223491 13322967 399918416 112480212 767090873 362562830 495690797 867122148 971842588 268089035 875222787 916881157 922973881 442939268 751433458 814641581 981847694 389510949 497284110 996744205 996786109 128307860 404788544 307785385 605400745 264183326 812769146 863699212 939241697 665942280 855923743 84374608 645650683 666655887 852513096 659036831 940925768 944224800 985473477 962235108 963157213 254144714 919222445 659292783 708944417 418332172 961654564 961501116 981854407 514123832 885727496 573225783 702585348 579526907 925927320 540413693 774606561 209725130 217041548 510638084 967087046 619871433 792751966 226352513 661257263 279716571 658564936 969251623 991989345 2684013 200077799 497585944 677172397 341621094 850798945 789586812 797356373 627887685 656592211 458551074 653233104 127680793 833761616 785497295 943614329 886445017 964007837 867269007 880806021 605830276 771915884 677870711 811966956 119100735 176641095 812013673 834482344 869446464 957116954 143195771 220599559 853853405 856120371 215360704 750647388 20289493 243731931 502077240 905691220 921212115 928050799 266937228 709869550 285088900 512889802 47404525 689013429 230229665 374119832 249222187 966652995 660944415 886975753 525580618 727532197 183659612 854262870 417834026 953631049 661062447 967760009 730517981 817151578 824441526 941742496 267221703 462253385 813246638 894813360 260404451 461264538 190133460 355550138 28170285 544354543 675939903 950877951 976161969 979731713 249540003 950835001 641793874 912281736 737466629 947944187 120980801 247150440 815692066 982717591 507986507 956932048 982212219 984842602 231559240 595585493 157781074 810224706 266672715 718711316 458132861 647738133 953704549 959423685 760394867 894321055 864296775 962707962 261055992 816247115 248790990 767758062 299548220 839880460 588857462 710679076 310002144 611821370 967187393 974699689 526547108 951044512 651115806 766669567 364735273 517760203 265166569 676315822 941285520 957790994 123448661 801595597 582268147 624570449 330204399 710022645 960045667 986572189 917946321 967766739 146879443 197855379 989666159 993733807 35121503 48560507 754086468 775335997 434824351 859585756 198967539 893590028 781061288 880267089 145426829 837486238 221131549 887148304 620562671 970463834 929815289 950291469 634685933 701103123 189224798 820255422 570262305 931988411 107401642 700265083 343373649 896209285 868369132 930844678 859819688 994544576 409020956 827161110 986238003 990989579 624618640 882776930 243816270 495593899 809685600 868387265 624332385 889992258 62148050 372294388 44398392 855477620 483004296 935045739 414872276 580708635 253755950 971005936 242602457 921219127 110991976 253907677 338156137 475428647 204606943 588459806 651162080 811932459 495436329 753326358 133362213 209656424 366687614 490044103 972001859 995948586 879311212 922309079 522696897 996525807 728748029 771650335 864015467 920352341 253160872 566542087 893674279 977128141 293019276 529026066 829475923 921897477 812655255 876360300 516644505 837856581 840079219 840474401 838603184 844465017 714822922 781279324 773283079 872968371 738633411 971906421 515202529 796707012 135804549 239424476 520962060 746132358 41875129 853476657 513305676 595551169 180114582 479197013 862022851 932115299 952121117 998822570 52429121 175235584 863290094 887800964 823341783 970157301 305942202 820694135 341052392 748561195 322971925 911354719 512807692 548341596 521446669 615649205 749153966 901031950 279640608 357831343 831784991 941696015 907340268 939806956 329653260 663775345 583624425 866798326 734166963 962176779 361236936 936917777 77201671 837857064 718643341 952380375 479999688 669436318 601683543 613327538 845263206 944006390 976671822 977369750 293868907 720699495 380994739 438966557 90919080 977706597 769065248 976459038 722815146 860627795 711372357 791563193 626292887 658426765 151591608 339897362 821269282 886120150 404177690 814474982 918204792 941690636 806101317 809886199 636740698 929199553 583865754 707525198 89127088 597891091 655950538 873943550 30425898 195347350 897066087 976696105 1040389 84727329 341864817 394338238 352426597 434587118 364516037 964096291 849441862 873933379 449337385 611970098 328015862 650857573 519100701 802488153 19320059 378410851 814988477 878837806 898522864 977753238 203315503 764547332 922711671 950462644 809049106 966619056 167767038 957822740 663185323 927793983 208268521 505683534 951522436 988783673 318709679 452686461 346015339 600794920 528134340 761192874 575033573 916057902 798046162 869888954 191487831 713687024 931041480 988322113 536289414 744250502 365581164 907666494 701451796 988112418 22755936 378325266 313858944 429465406 318288250 636059254 796782229 964380909 526068915 841555080 384101396 697631706 345526552 762675217 296531839 310888710 254593745 614525065 456047298 875378249 891067730 993354717 451364627 618096630 947076310 966946102 201427376 967672130 701185287 706927252 553606238 727903820 308134976 697474884 683485138 929147229 30769285 831324296 6958954 911278023 203020731 676390039 914177647 933843266 483984571 894330119 844915041 914659284 914768196 960174284 661559392 931633032 72517463 488918994 537065056 609776844 666395067 990245920 666375151 850842721 377309626 865381892 74011095 471088879 390985299 834110935 864780294 980741950 86661658 610446913 958189528 967282702 611368126 659733676 639162946 751690110 625804069 881923120 717093732 748696232 908073572 997360633 21248981 145570747 458511946 973865135 172213743 380128846 600882763 930026918 74903777 916598970 214342401 224218913 307605324 518501469 692683774 973729959 572911201 999763657 63759275 488545640 902028810 936145340 258257854 364154916 310957618 869467372 7512928 244571431 56742967 551765432 20656105 580806726 33947459 183896792 143861826 951700016 435493699 982561691 712611320 919951311 624599585 778480392 368745141 630394650 558045022 927527400 596934631 651894919 808155343 863763363 115419466 494479384 56285409 868232225 807204635 850146982 202161384 454026923 435580108 636301878 557249667 893121784 922400383 994640862 454836818 480549502 442354711 509102060 679790160 931481025 129294056 611713816 497863535 508398435 457252733 923121100 478618786 490726331 297256975 559700384 779371041 904491154 677724436 855847209 138246747 162842080 114866152 878047024 913536876 967547849 210467847 933857945 736829620 877638222 461015826 636965410 114341645 697534723 271762764 644856150 507513005 738717955 372621755 584691934 477412951 710594485 445989731 640802553 494473920 545287913 750084468 750820598 712525174 921870976 580576206 681654188 210702332 373073505 839693729 874287635 739719094 804907048 369153855 733323236 741081461 881499627 8454091 329526621 40876732 655489964 110130884 487050237 649011547 729344084 904423934 919738269 887827614 902171635 697413863 842358290 877039699 881133140 597866727 857799385 493027451 505844712 693385999 907749150 779151271 796836462 231445205 523645966 175157950 664453121 169622455 845460608 826498654 897958530 67133258 562815720 604220284 614561446 315950790 961414189 867353531 893666207 580469682 629553088 135766493 141681857 461657389 994045167 558382027 771892150 602234685 672871021 258119448 502932136 39113599 545403215 230987249 648885653 296258143 822924468 263076059 381934916 798878559 905993579 442915263 834586868 415234321 973410125 416677572 555546325 498244357 823021563 967918373 971300194 200534272 995576465 24835131 992517796 148037506 646277189 80801310 341410822 818847006 859717896 859953743 908115625 119789133 846836631 8404582 431735505 986935798 991649056 683696552 759221390 283908176 822882223 707363072 946243110 969693390 986577763 996749454 997580243 852178816 963193845 170292292 833346146 883870393 933542475 710517320 783205477 629555679 766692419 12279345 967175858 327046220 595296809 507546535 635897915 233929157 665955488 224330657 305770071 677880807 701922873 998054839 999677595 467347387 926216371 138761464 215330321 221035301 294651196 994300420 994913439 87039076 95503025 632192401 747787868 197458432 494786587 284389200 308205645 713975292 850019068 221106268 513705283 995591557 998303526 60051222 867444518 834618990 994190942 438809463 490688218 681851466 867283291 78912425 209048902 569095316 694122390 250990592 924928592 528411746 581982837 265511933 497663204 763666635 788833897 522619773 742832355 501612468 910304687 492908942 581989437 878822240 923339891 292175463 433219627 171673493 423773192 244025066 341804094 877693043 959991778 54554527 118952565 598445433 997574442 638283705 803471780 261412775 618556858 947132617 995567675 958350319 993145600 465160993 760095689 54015455 395133093 600085220 613940829 43292871 156391573 23640990 983275627 380007398 518130335 387385624 699304354 934428798 991796571 624403400 793068176 921968155 935333753 214738726 792508162 924167390 989022688 903042786 908618469 211568739 846893571 887191229 934440932 259402086 378828677 462473043 654856176 402639152 973455940 450177353 624273993 622041666 860566193 838658875 895773828 447446821 780085156 354594703 637614173 891157004 994102216 161721012 846051326 720486588 802925529 452029684 655921716 550374651 970244239 305632420 766925008 925993158 975715600 644926276 966209404 965647117 985958614 382901198 586071003 687889918 901347671 845501654 954902211 89181131 483134751 439408844 521263068 889643983 917019977 111832654 989911518 272758991 472108036 324136690 893613239 93119233 698536690 608436544 761237268 686717847 704209133 109798989 496284999 143785808 705969509 447721374 721491596 193443700 946371041 39674031 936864580 638036646 642120629 259451517 281445567 1797465 813253058 395431880 840444839 98307496 878008728 524100718 907183267 75021459 126430644 450037561 578879809 958069371 985458502 872280345 989574447 310858195 994622353 334107981 994707399 242501078 325161106 737762487 892540254 24472778 367363934 55895853 88682738 506286534 940324360 266232694 965784098 118085840 150207670 601196574 994946784 628490264 798305758 196844624 339185442 521417891 763817987 90187080 217984742 59689643 210596988 58859707 976741661 487013048 551605572 79381618 505416545 675552535 912363366 401050368 458762758 523865151 907632612 459975129 741377832 209139018 511164143 208640921 337021728 797082472 879895305 290151613 510585531 511409560 686149927 296451935 540122425 607465058 754925622 930168438 942235695 417671338 772605373 872513216 974165019 250418123 635919264 970343003 971981831 258589050 790146708 898452315 906095008 767409270 803256799 700472711 812604788 723124754 782354442 391874608 457563900 249492299 846597789 707152295 742657182 955909932 961901177 854970877 933742292 645934582 934547287 575478977 963986044 512517308 737058110 441941512 571297197 124401594 687964129 298320419 882577623 434916973 497386534 586182266 856749542 178836671 854166551 413923457 574975379 590865736 987993279 986925812 998354140 431690025 910901011 254453240 324141611 554068279 742158290 137887307 705298724 442678844 562085633 23376430 26787288 974961884 979789115 799016601 998927363 354149847 632288762 364790375 680049666 388228107 985122205 216651518 445992740 161020787 827675584 996358586 997226502 769628975 787916444 485059271 981549404 114433882 787650364 117445084 463420983 149690745 572000802 636908979 679563199 901761774 953538360 978424147 993798880 386604517 692742126 157215985 286039880 163605831 357064475 326042137 560174773 824997729 838707873 47571680 492996064 520377256 604334478 182254769 751462904 370357366 508786008 118696374 488470920 438887243 571254481 488153976 589245379 159554052 307337641 470111894 936635509 337694776 517231601 526752111 544085187 592580506 636602045 629042592 794054433 432082489 528707370 351617591 637163997 397279314 649361294 961332446 981778485 131668590 359983219 144957687 906581919 762693245 783611019 179547872 224789838 898523339 910858283 894701778 914486854 828967802 855346910 451724092 946297909 1289921 848183666 380655345 508221894 982520754 985486462 920521427 968527386 440904946 477529132 457238467 611236354 983877995 992275358 447210916 746969616 208582075 664279335 736441058 807996387 210934707 537205289 868508202 962957991 483933649 676754068 541821850 689799035 651513607 805930150 480418945 517560620 782890858 879308481 843537580 948112257 718528435 983453643 299687625 407577921 283328066 777584330 535732547 706206150 40082125 175635230 873558672 916427322 929713004 997051079 109732919 555160626 164441839 669927948 32308594 928569117 663410044 710026547 893760890 981816504 419427269 972622977 830876745 844667963 982341073 996951069 902558573 979236965 597021940 776192955 483321687 592472396 104146736 531230478 686795327 842753348 511331933 969464371 785482615 829788045 398673440 798406040 619106446 978520111 328666418 901936168 427763614 489071523 441976672 826855030 20540204 858919563 695026656 954640863 249312541 385135994 636006281 665909739 895943653 975129865 913464123 964394916 884821344 962685905 105430649 160023172 231874548 399740766 458640450 827324059 335289995 999036518 776064522 780624168 888441627 953849381 710855583 899980572 356051586 814014774 874948322 915661728 694647453 739827731 515427959 697481710 126158846 748889109 821588299 983575571 951260129 959877772 702268419 709016732 171967307 449256359 361797836 887129623 653243249 684801204 506748325 640653318 418573193 796584966 635931444 950514966 779614780 816481620 487305368 982210249 39458742 871977091 663298567 865488845 322024889 726283397 477075098 586373978 540016529 559402330 750501557 945587087 410192967 591663609 781984470 802376382 279510522 760242064 494610079 539960283 228757773 355487595 899164592 903250556 159961681 186787209 83623105 431591653 377318445 654323941 766418745 914999624 724204365 793952170 961376526 991281910 982159172 993018259 27827840 107769319 6899352 437198969 856915899 944877648 470997562 874354483 219130535 282517690 390933274 801486168 531418187 648510508 679339906 708936778 794907524 815966990 99386301 878943784 121620300 174064336 809950030 822787182 301737797 447855370 166596499 650849705 410683904 933707092 23421470 231620927 657190791 912185463 25439441 541360272 729612662 973510160 333937944 503183564 66614096 557461164 827637709 990309678 718816636 782720616 677327447 778457519 844334133 964704429 359822704 996278880 578379830 664088982 239071635 351199759 838919088 989009617 374447919 964605859 626593701 898922782 707566575 880084029 537288407 604062986 732427442 805037767 961874158 987551439 886815855 901095576 293594489 419785850 649043823 778251062 806713778 944042770 257037188 819819176 806767169 878200401 201033194 645717432 11883391 490568536 742196976 889668901 53364050 483226196 218178232 894449642 156502192 409858658 755943643 944642351 166754283 780573890 126348252 672735220 626184117 768469991 974121044 991038247 99347452 255448907 150421891 690639461 797216479 814475786 724130911 763774779 339462254 919450766 542185693 636303256 748418068 866056195 883003761 965906251 399584545 954902087 680617474 759140473 405649199 629041921 311364801 617532129 344057353 545065242 250248510 863113084 538227682 541992012 124830169 890480354 735616659 745513898 829609539 997384092 844615024 925870723 892950731 984903826 207303319 765715742 353272803 552914426 683579442 822740762 610024692 764566863 156172070 843518138 911358074 913057268 243113392 855873986 478783584 820002313 792673546 803930278 887947674 969332533 264896081 310138985 734157981 918694262 509130249 691147806 361502838 530030482 685307509 815858088 897639635 930792622 514525440 816547985 726152277 880556327 494066355 804911045 850965417 949305805 742519477 909542751 869966604 881742628 548328538 601245832 794681366 898502445 860007708 973669857 892550009 958462193 810893310 913856004 810157618 852184168 155460237 401707829 498296856 802289722 685926450 858088594 468026699 625639286 444314824 956499020 756758477 906215865 409801710 886096150 256583759 657309212 575164495 786932375 28770999 365378177 764738934 825932558 17265760 70280736 469288039 516107075 772918524 773584926 294051731 597274558 157056063 491894914 120138219 450619815 459440860 811490717 318837202 844418254 163883387 349112726 308695572 904014825 84237604 532025214 257348726 572442311 373661324 860583004 392735927 722445779 325904173 534836406 235012934 995887030 13874890 414536175 623972438 846165676 141319151 332368516 592195215 818698995 494174895 776458969 930199376 947801716 770299560 856683738 904109598 986618043 329540191 425681367 275875763 925129705 138664045 933617980 514016163 966408129 9886021 599087837 55245002 122752306 544414034 957171993 920950103 950789828 587006173 970931859 141505100 437654456 473948720 523373403 272493673 841552332 152114083 965979393 478251483 885428905 636806287 879757058 390704733 991038747 795431731 903028865 498816919 800212133 746179677 920225971 465319866 624336900 173412039 681065279 52081008 545829297 226558009 735525441 491967736 546447234 138765772 896977475 180041717 692221420 995040796 995237047 181468648 429042282 739996700 824166465 233529868 316142658 668258325 775390019 90798542 242039509 394092568 728313244 803645877 984785454 383633686 671685551 107009797 860187905 821555070 993780277 633682630 697235517 389153028 997907454 99740773 938794308 55758585 978560977 295088323 780074119 495101953 739231009 844742372 900573357 172613911 244444839 974887657 986928943 904518333 981023846 809386477 949820580 956871094 991088804 992620044 992994800 772222429 813433516 542019834 877325154 18704743 460264621 510683769 784943567 511994508 892805501 220496262 701400490 6898006 207924193 309801296 803019676 382761523 459888454 972246437 998745246 320753615 601893344 46090719 204964307 497747714 641510863 180754607 657548057 817367905 988245915 612790302 878299637 912120421 960939354 263464925 661382329 125680854 659587582 587482594 984494564 584559701 978530036 5785021 705188688 377049300 922413412 352000634 733748373 622360756 962117183 451116733 784713110 125867065 166181048 726585870 954973003 788385567 998128546 408333759 459052707 430572229 647467377 383390732 685399559 35410582 484504000 232918611 702722248 109979087 638917887 178802233 355712468 821258448 959941879 184628366 562793150 976699064 985816882 97892489 264885269 394866836 772473432 440339562 918258011 436061278 773715055 993130582 995402853 194516098 712911625 385596055 846560630 674885328 686470026 517400272 791385306 496572144 868556103 554115277 741737013 95239536 764090591 35187407 501020684 741201369 835477888 785329056 878818862 792548076 799438847 756072268 986555482 943644360 986177339 375832863 493107460 16007317 675296038 582932039 923498715 934311005 985099702 608717079 626286853 430686380 623943699 862951573 991888205 294346431 309144552 808806704 897794992 548352219 856047258 86628412 279961222 257694938 428342130 921916453 969875213 905656089 959874795 532882510 844649831 670288823 755206882 313233453 970435542 675810356 997895527 962890043 997402894 466096081 672924306 622209858 672430500 449538435 669184696 332394625 997251371 846809027 901473403 757818975 862518379 337287879 823825637 744467356 952296653 925496712 938771497 821526074 897930584 291438279 876902837 258803334 763146592 119998402 711617513 834358165 855829592 893808671 954100855 289675552 930486520 817308720 880994648 763762622 786523785 306415389 877482074 44385430 834285632 866642585 988391512 33398954 116219014 923673205 932209372 453021252 942781977 446855233 531347263 434621203 570650805 654563725 824576250 665437404 997956448 248228469 557870129 348493752 375651293 337569718 931889174 364188296 545156753 261509294 575212000 309434276 576034162 400115659 420227500 604197462 737286192 937077688 976589519 698358381 798237012 336538011 373976101 956866779 974818212 343524084 802897015 661813071 678924373 703797898 807617070 747116627 876781947 506375649 560829195 545856041 906029037 209825908 675123641 635137019 658682063 861284624 935133270 47405301 818583451 371613010 782951070 302120861 304443969 304344308 518997404 913617073 985202506 126327513 967842940 332200228 745453343 936665122 995938706 289786273 806301633 339612142 910424893 784935549 787021362 93015601 431408396 323814037 798908900 801619442 892012019 965984085 973151279 377426405 377900247 593457872 948597778 896737499 921300881 859442130 927986592 678856114 698260804 877126782 919519959 707775796 781713044 961004949 998072885 658680235 847503603 268676910 983799826 324301687 739172654 507830230 800817635 306255208 623966603 209211738 491151104 333394876 575407162 158559100 733687744 146501079 146625502 317034972 966150517 169103518 811431611 634046424 669240479 651140352 768742361 100356799 518675013 215649901 627001488 68730155 830527151 888214942 912036563 835137401 906141677 748261488 940153807 187479678 900262029 953189823 953878698 525339105 910534773 122191000 788971280 677118539 799359115 178938046 406564059 462996818 486417571 61119447 958990476 731298994 809685991 185020292 271126003 923240592 940762222 722694041 854022862 448065226 991932335 971728612 977995708 601849242 895241428 310482373 726967752 870184787 939716120 43246578 591828971 612612389 766312773 577166956 670613607 445181974 729395176 463640616 947134575 103367630 935212489 444506027 645694388 253413718 646988348 571322376 599306796 256373677 990470216 427918517 640509321 822368328 879845225 528748478 873405875 495141822 586001441 510550777 517137580 780832714 952415449 520449253 840123952 647332968 967784532 231530423 730397809 24702850 681039784 786430814 868331118 160082104 205914177 521043669 576710979 835394077 964825253 734268425 962369689 430907472 570093160 452961456 776974277 406832013 853683873 382723900 556383504 432007023 601950870 282685379 367432773 712873323 858953088 59114759 403212039 447201063 547809433 784848556 995727352 692901486 998789119 975924166 981830645 739709482 804351909 135553463 630298684 633669421 809547676 264989125 274275673 572048443 957504691 68177803 550280226 849825239 874214054 848364676 951760685 353661892 998602053 337260783 725672803 762472828 939546615 65644435 197411269 357161450 394407574 98550874 235593748 180261221 703702172 587789154 867852581 752846833 974045798 729266909 912243004 881470103 983681309 696183417 881026147 122771182 141842192 195460932 818269851 387039569 814295661 965630616 998419628 241008210 269587085 981153716 997067368 860536501 868463506 545461222 913539074 462423526 663219422 50592290 332693425 699725776 735633710 384456684 550353947 632704035 762893138 692531427 876378888 405236403 988554313 994366753 995321721 655219963 671350786 417600640 885322172 692246906 733607219 444688765 540817702 928315998 930442548 48893752 807133340 702087932 719095129 225805667 315631059 579688099 690872968 145523143 188130022 450012120 575309869 2348866 6889419 986113892 986241518 729958423 973655480 249607465 515432738 820615027 996644986 692043982 842367437 626689845 900639453 700978617 901490543 885163940 918338347 803971470 830156799 72467688 865114227 191573992 835185985 513265167 896367709 504364257 911480162 380908231 925860696 802637201 891027647 848269482 982542567 979556758 993474223 821515237 935809717 380660492 486254769 957436892 967513412 787962817 922462272 639616230 765954365 287334852 870884804 953770296 963771036 570131555 776559023 459488434 797100826 243143277 764925124 702811468 831420884 894020752 898068991 878997060 980604228 415395934 439685461 625420719 917344099 710711824 780264277 743735056 814803986 725389579 877814941 873992541 927936390 316431251 505635074 659909483 671011661 699327527 948742547 661605262 711641202 864822539 877579288 463248734 760376419 92024228 109884185 581846626 628301887 596885683 752519851 182769943 878066448 734523649 885002945 696480194 813655324 839660049 999944955 168677042 971551887 888149242 900173219 229285702 572279985 764134979 869267133 337950737 356743727 338914204 990710634 668862541 988177371 65779110 372918745 794378199 876211957 647339363 850390475 300008220 913953705 763606611 988280070 248909109 497384033 821847459 874252936 467758905 981569259 667452559 814163945 151736106 927160113 798659462 804073684 515069650 720946075 862891741 989238074 398405630 623467973 589016638 854782222 46003732 797674809 845707246 889117222 991753092 998986071 278048524 726572197 902156455 999804788 679836426 874644453 344716237 700194591 770333147 966562912 334235373 712848281 133965991 871534425 90988320 595990781 599130665 768343078 424730798 892444729 682401422 837073902 934615777 963120733 756626089 794022821 98548258 963594900 303805159 375890994 873089258 948161883 525106631 853062683 95826120 383393039 474759048 555042874 77606680 235099884 757419815 828225954 480812327 889621608 35903584 459769545 561350416 661799956 597839874 863005044 917713560 964013975 865842743 960957139 94626527 798521625 183642241 831508147 38640039 738196737 166492363 625930031 735080061 932986741 995856756 997658631 624694245 850068472 148284385 303406563 667432890 865335172 356427457 998651262 443082377 757265265 445351835 973330707 168237634 181949493 443074620 791930310 963208007 970349966 165607487 480506623 704926623 907849846 906546823 939109920 244867433 424804310 550416623 610848181 791448430 988827470 534902849 618764828 512621365 864469725 395168677 725260831 974149972 975916478 792043820 875914193 43955860 641963171 936812569 979994493 659700726 912447240 583907202 667835755 904537699 998096483 760868374 946236578 502800964 947339512 614058719 714526275 99366388 717850179 232866989 447362848 760653617 898226304 999433822 999850383 483169364 524581701 871731215 948299906 818492132 882263624 550518251 688985284 783550190 921103525 131230890 651577618 131784338 835447105 486579561 936303578 207875809 930404990 623862166 720972888 535129088 875820852 595966164 787767433 772256098 831359330 545538007 686292121 219928889 860704538 236881647 797607730 451934899 715153714 358730122 978250340 881021545 884622371 981669230 983786537 815509000 936634499 939502869 984875763 386238924 968418010 64841273 180221921 914802336 959512464 123687153 291998574 737425278 991904118 91129500 503514305 536908513 827757871 542769830 965073065 600691314 785079939 735591482 781007124 982349751 983815537 468087450 477225236 935944055 975699383 85672943 275766661 551425060 682937889 235745522 440100275 724417985 839310580 893563267 993810338 590973676 834812430 686220769 826734533 806710072 976521425 390159317 549708528 901002307 911871887 910396410 975652247 398116499 409532594 380673741 601242618 362257726 793262706 761713109 850560544 342707111 915780530 967389559 969373795 6880965 600111482 767425371 898413729 109093032 269259529 544088808 851693730 11974853 229532743 871793170 981273813 579753409 911739609 2386643 197720126 319398733 769303079 706959015 838745933 275354762 459498477 537951125 981908251 895385311 939816619 823449705 989091322 873082692 976393317 939692935 989955832 634996382 935481236 189526876 893112138 35044864 432517132 663089939 688703976 594417937 925916427 230961274 853848236 833327192 848964605 917346777 989038274 15172639 998514064 739954386 895846756 9430362 418654376 303545651 558371256 230773030 781582977 568594238 607945159 953470337 977525025 32596469 491875586 32146958 864015544 656776190 963704308 355007297 600263544 180772313 607547040 783253077 943451942 294517998 309257241 84077600 451980670 641251653 951364749 259640626 309408894 553037819 921844810 40055713 145642917 713281139 870905788 696362721 766072927 536573632 983601435 306199388 343226527 787923255 945235400 755659768 839330169 721878325 915487748 387141133 593250437 373194201 608130300 481259820 975293419 129503756 317322779 692023422 986581597 967391182 990660048 211413635 383147217 575276450 956801363 138022713 317984369 852681172 989075388 935144980 983814241 46107999 318373842 632343225 871815543 110186549 437989787 416948983 747879056 46933987 853918522 638251099 699745904 512360343 665736759 297266730 338270191 401261932 942490475 577114603 586957941 997523304 997534471 446348536 909348047 370811975 555733948 442594673 566751011 220377849 675632777 143524560 180918938 124669920 997997796 697555851 753162809 291321226 850686021 229344876 287957797 640351490 906443745 611224059 927022820 125119809 807249510 561342692 986596372 593098646 996046749 186134076 877062986 868482671 876612136 589680698 701598253 110638217 214776576 294502391 533183323 4488012 606817784 273372785 920831303 927783335 928100578 785381990 853761984 699706304 925645019 593529507 987843877 210877811 396079894 74251738 249038103 496264833 540922189 83589655 194352892 992272157 997824992 530243733 937809860 854982579 918298803 763405977 818692760 593803205 701588669 840527753 977180645 310421534 648180889 538201039 941892939 39416019 550450171 646852160 828399342 118251039 516038711 635976489 896501543 788960312 939949453 431693635 540421293 415915088 604560322 182486934 811291938 993453132 997930334 717135619 745220918 396511211 761459516 514521936 864871927 242732086 402722502 915875905 962703605 437146143 968775501 709365102 714331744 599535994 670732980 510559014 767967745 718361408 960561911 115533380 181533096 332997175 569321637 6626423 856213619 822623942 988688148 12949621 500132639 407354267 716424120 431749440 891294942 137749677 215613061 346044207 920370205 710361384 926350384 729312097 735118469 669764603 920804756 221758006 480704618 158022303 304224090 853087256 973261809 838442976 925530517 206997965 812699398 933256279 982779936 667365386 931463279 321648908 420209069 707186312 752328491 720138639 783753290 906270063 979363354 350468470 801779110 532879524 888029871 938415245 998775989 304143416 983086453 548657358 701215061 107510000 285953950 286198863 382537760 534170236 679435316 486681031 673438566 757395095 824915337 177173304 877186673 123345337 723635782 431860125 771426202 704291033 905880314 534210999 679241405 980160625 981011886 939159312 965453227 747684698 868220356 298487326 536119899 566104221 981279963 951998817 997741166 600792854 913251414 256336198 601537565 555976401 940599964 793988531 882579476 414398247 661084003 550648258 765514264 759664572 891124806 88140337 393831859 243688222 372493726 340995553 494791496 348942001 994864631 793476318 857173397 597097823 929619482 929233694 984801492 624819326 661468405 555402851 639151765 123291275 288491016 698749863 806847014 53144802 410121941 71104661 735855061 806743870 924838564 82970634 822461955 119891545 454656082 614591044 848723895 36266597 496886239 163340981 940036106 214020010 658001951 178023192 311769043 480393547 829629258 392789018 686661270 617808124 902777423 607542873 831265151 21769398 882537645 374929539 956401113 607397630 914661982 622786235 923010829 618596955 778146413 236822490 261221857 301160691 391082426 651925547 809727966 349519709 920084663 724443014 995034762 964914977 986648181 332299923 656967769 745130303 831960819 394999940 430087004 249848630 690513479 56391722 944866764 148629908 769287888 146570137 949243553 171571143 199155685 786319833 955885884 411372254 642746040 360617229 789428710 481277715 916047629 91520 719332683 161749273 460556432 179213709 727023077 741850586 803386654 715281189 951565622 802508774 940438678 511521479 728357239 27606657 335235870 54256018 374766277 843154646 979656426 893213671 920211244 639630845 709541799 770157422 843730754 448955736 928225585 379577187 849437033 169736089 562874750 119036024 973813200 498871680 783879885 361660338 932590195 737595525 795424998 871562776 924031718 844883331 890184655 297095099 730317416 694898755 977478488 477440484 632372228 197085725 358582406 29665935 513047933 497831997 624849296 34030563 339733142 583680688 948887183 776189195 865875819 317559688 422121524 468490198 621323753 206891224 998780436 452284692 458121492 10884556 690876406 269117091 993311806 601431378 811053776 451933777 592492618 740391534 874534547 479448907 637251021 637340571 795160197 398390176 652094663 677481226 727270157 597131385 774406702 65044925 847140939 865061068 992856104 543324033 607451567 997914311 999445561 421810280 730518301 742913312 760681982 424632531 502877264 87543178 654859481 511630090 966696873 322628625 874487637 858017375 971703985 109864657 479304916 280893913 400793637 784569623 786209900 726888225 751404349 112537896 759150872 916746675 945001889 510768634 662436846 827208443 931503429 117115493 184880050 95476965 643224294 5128049 883992760 701667039 711385276 299560196 473906925 364942932 820432815 847848503 863769209 644140169 646983395 311984779 512965541 417079441 990628952 314556757 841492929 527083232 632072406 977295902 996316799 427804208 462509612 34978420 901982536 952653240 998566634 842243999 935109883 327051312 449025612 123079509 460103197 811688704 913923440 231067603 592781582 963250001 986315144 761689244 919590830 621843052 794181387 794660423 989612550 248202000 497976143 602700641 890456698 407270893 803177467 378437760 865901792 610100208 882818190 822829768 906863379 419605402 829313821 940498200 982692118 798378605 835516766 903108902 952908088 562969785 768554094 788215005 824953798 198063387 621153489 148077840 700992166 455575850 920671246 376313714 717644037 706476907 765829008 874759994 950454114 471723591 836500048 344547829 458555761 562985916 826478167 689701713 930373895 52138322 343364371 865394526 892572680 242740390 853301874 355737821 906530974 653618205 782332357 770778057 820766848 497378899 956168191 122268994 250823739 163495812 577809533 197698238 452853716 61725368 937475996 671147787 675804414 91046971 368879594 75376880 896744677 79194005 434515077 483163403 971516794 862771410 978074211 730932975 948417750 45583849 146345396 46158084 649949561 916544526 958713607 266959136 417513575 117092086 455324740 421526552 538386368 118919111 348463718 502522735 716418518 483382871 580840364 389756 358408474 183020043 682723979 40528658 660121491 216155048 463548236 16586598 250765208 967330792 991575134 680055359 880351621 162555250 679057293 820557224 919153542 716822344 966495699 480480910 761129293 843879246 944613636 511648949 940196686 125853497 186965740 826545481 871792586 938497719 968396628 466422443 714726365 250776223 513564845 464863014 762795619 510373314 632610212 810066491 958273850 876864673 879154653 418285596 485358476 966806057 981443858 12756593 907510460 612838965 749319126 537503890 849137199 143932890 892737018 719437313 812355408 104783959 685000548 385630665 599681153 768465666 775449252 185382130 254624984 600995764 989014355 55693506 664641588 710361064 813690286 775756953 932708058 305172757 345535112 77140933 121554552 473126835 842195656 681488769 867144339 888207927 934531839 275603086 529949991 131141305 567841305 865272974 980650130 697579516 967222422 328671838 791534156 846060919 944353455 305158656 443496021 996858348 998947577 66318210 120241424 786264004 847190928 528585882 737649698 682565645 772739408 159440784 554136322 68102721 720791592 975783052 978139070 369641125 941461078 837918716 902936778 526661224 692671701 786485965 812345395 265012696 789893513 997274498 997695861 927125712 971151586 840502691 850428471 17238825 395722173 593156692 727088530 394529292 616668745 191221365 516602692 721490907 738390468 758316988 759116135 624372388 671064611 565737062 956751012 269863466 348704516 67186620 650214439 653856699 685530986 731347237 878200941 256891378 841363692 480522808 960198236 49978273 435573840 504362663 602376349 733582905 756212644 60489979 213641581 231662186 487398418 37752600 57058379 808904259 983472076 117001272 523988117 618947386 637037171 753818273 843159594 672174563 774938659 241145274 649075272 856677558 977571597 543843655 804623847 544879768 807778039 461208710 489890171 111164806 397796247 238608496 405267954 605427498 775307900 718016022 789301397 209389275 640911156 841485268 889457832 714154191 915094641 824716951 966615974 939127260 983337662 713753184 940721772 220773643 529660237 87295693 273325337 132054071 866677642 843690042 984788777 597597062 840830766 161694420 883397149 463852775 989692744 128789591 767655671 298423299 791995135 678530825 776432407 285330701 944371868 25790952 990996487 490467164 910980392 380264058 541335578 167550838 588342167 316129689 339317362 966917444 994101558 884379598 910351223 981691817 998860790 860348762 894799090 295100243 969996648 722623346 783469922 750323193 962618163 642802441 885039562 484748528 557773139 263017423 670713785 116156396 932738464 97419752 920239135 245575626 373239286 337569422 513468993 154956620 249246641 858530189 949917256 560904879 578461511 863688891 927179212 165705430 924339643 831789498 954727729 581147165 945434749 72287816 582601383 397073655 905807314 143908640 336598025 34301243 690628886 119002140 363652980 404672025 777861307 417408505 435905797 367819874 949535452 550242579 610284413 870648489 914389109 241791617 357412974 210026685 438862474 836635453 854794909 5207789 833015565 966405207 983993113 800804014 818405563 770394110 818109669 756480823 966298467 736117242 869284419 858266208 957840089 396683619 750157433 912459445 942461838 384901159 909320119 270196366 845194151 355938797 895892080 861160575 904842262 96486407 182606904 659081027 801081011 886657120 897429500 609276524 968825481 648618837 731891914 697986575 999384763 217619865 223414044 535524316 871241296 32274511 965178901 952579465 999562765 37876677 491518272 144140093 900263686 404525851 408148541 275643902 654874500 211144857 677952122 754780134 989503120 158474668 447537208 808336957 833337431 107297683 682781012 247593872 715226191 369325572 890477559 606034291 918429470 40569996 157226013 628855800 841456575 232589776 853801432 563372902 815119705 753272516 838580446 111887218 497574358 33962098 55898816 571888336 901797128 251005717 397558662 480512755 541044630 75233434 921685757 951086776 982958927 850179918 939771471 818236964 907569775 445597525 575044728 683854434 888863408 843823678 984035997 914619842 993716081 135352374 193058664 171485009 897778882 818650346 917328295 243672874 372927152 85925477 381503259 807329646 887971499 266597818 728853534 203169149 547827755 756951623 914801077 944918329 973455524 554720430 945415639 265716649 844014617 368152798 503456879 137373132 656254777 761018457 866056556 318298441 433735456 573632814 721238786 851164652 953715987 569887108 871375643 710497936 715180316 525164653 709001911 38651524 967534538 763903420 907270437 846216 698269788 36634180 308638561 205162136 472019311 958684146 958953660 806767018 833013142 178102976 562314156 918917907 957905979 994484135 994731162 977516910 979584151 849559215 884883981 627908519 794857858 756403243 798620676 581847281 687814989 556078258 677251494 751800529 871641464 669766288 854612222 127482219 906652772 938433382 996173882 175498020 468648841 825522383 889316688 38278726 494595774 979757771 999455285 509533561 862666559 672954987 841158030 382705661 581717973 909605017 912043585 982789522 989268541 208333914 353825170 920169191 985853667 84200355 766724484 931373489 972641331 134640196 921560292 761209738 762543221 455721527 969976815 333896820 457621936 269551755 895796120 775669395 966898547 131922844 202366296 429113430 454455736 269645275 607930475 128773852 732827855 724792789 772973461 230536555 766089505 25748802 26504507 186107916 792660615 185843192 692650327 178512158 447127601 561702760 694101525 65082947 722201864 784152263 995134034 891427530 899298495 177153859 535332298 540325 216145367 585234454 851534693 315949679 968912916 224430813 788945818 186985596 938129610 842974020 921697267 268449208 420040866 51143512 495993049 592571744 647895613 20078833 709154510 581289888 806778945 564754779 877994922 204582867 616950700 6058109 8237715 545411119 557537899 494456104 862445820 567199339 664139659 865908519 943167103 941491548 958940103 211345357 401233654 481345254 691463920 557884939 650537710 816183841 898882545 663576133 880647269 670790336 737533053 734317179 982359071 659449864 774219933 448269161 568256389 911564389 989719651 677412261 813549233 879271401 902203032 921994764 933168513 650844044 972657779 546945730 581692679 164514634 901991378 586481875 779460678 127074948 744510190 157275521 261808911 104093145 359636342 934732744 937490351 783532826 954588187 87295069 785874560 639170563 999860028 345389822 986170383 488454145 672884045 303867333 651282613 57840537 699523267 361390776 611781314 373643317 686836643 688519938 833181264 714104231 805420081 246807458 334412948 444786241 590647864 582907064 778904941 50924157 698875836 205105052 673309775 339080546 392273661 518817991 559162956 703953409 874736951 263639473 710362241 208407154 296033570 415863666 617436939 493249377 579549125 364755093 718888708 678594416 793799826 466371599 502319528 849510413 895175597 483213056 980635354 419655074 938781988 938328836 974643796 832498511 937037553 62034223 124783155 437157249 856333071 886911897 937591667 899963641 975188097 311422269 715212262 598834786 724395955 994916128 999558592 501957599 828365453 825353119 981625811 668053092 925546847 361240725 948733784 270535483 327232534 793615715 802898931 893461201 974310829 503677954 664332901 732909336 793060902 581348775 741415928 714325971 818809120 495505752 693446135 812755796 827475074 740971757 954434146 400723893 951873938 720490241 831233216 634182482 985436489 271905825 617388956 459504609 787055281 317741006 728604452 215782581 492413466 976487886 997382597 850443823 967651035 301893519 350225082 497944564 750326287 388882301 911227497 512438928 884422958 261318168 269447479 217905531 758326592 429101277 785578728 818148677 868117667 943670537 954598894 579991095 946772956 815147602 834297686 845876292 949490829 265119424 446785258 652486627 846260665 422923218 555819216 911329868 993671051 220105665 363112721 295435718 619664992 938274114 941984290 283996785 873737340 405457993 729499233 995906980 996779655 541253150 757876962 830346288 885332183 76676425 545571564 46150628 256537044 324196044 759442928 359073578 800643786 614839910 911771871 600563761 839442249 100165163 158474721 540734112 542931125 482080454 586292296 795690653 833640889 218596113 846170000 294743134 384985191 164218408 747872097 898167342 924516020 560359408 888561011 399934911 852269033 266105976 397508768 255276668 472281370 738156249 913605310 294817577 691111574 879186743 904499322 459660159 761344860 174069666 213989037 510231066 528048197 556636380 610701624 225322088 240463123 445417736 542524079 863053020 907467769 318797485 473745051 180767829 917864234 877618116 878066728 2904312 973951091 834463245 895478671 397336152 820737501 335940086 773931923 293994613 838756499 185323116 685210750 846252376 953863868 481839378 677842299 722775677 955175189 103806062 165754195 479994259 959889392 309760413 967669914 964302417 990537787 635613770 793849619 636340412 746118589 643245264 786765944 119135751 600229681 527003446 880883843 448099696 872181148 219981626 726561380 209661257 454300533 860306086 878602288 582211714 853955568 363381547 830021547 415857873 739655394 920799294 999216045 443080537 761579023 921176446 955402464 321542648 704636138 202035972 441912216 982482408 991928225 962201268 965686769 181327937 256383756 651536366 935229626 230915133 721767379 612021675 696689526 115588718 304203416 693439705 959337402 981185744 988924242 271115469 299756214 397425779 882606675 788468076 865512587 448976283 976162442 311435136 369258172 263294943 384281645 374608535 946842976 56644657 248743336 776619672 832496731 264519881 834147302 425709819 666320442 146528951 227394197 548517278 943971901 995583371 998161966 501803688 909018339 866200155 981686087 897800713 942109170 240239009 303038712 527219329 551706040 763297208 983279387 867492838 878609490 643652087 742171456 903383036 907552338 514961155 576548331 55482549 204006585 296231597 320054778 511482591 904095746 900320485 949056092 173707572 765237391 541767557 601323498 185504514 309565196 123151039 484290413 643925499 999050031 978140336 979213732 75492679 737126714 648122169 750168572 816092473 926274174 839079202 852055103 724801075 962962622 841282417 983157605 70878055 904158875 472302716 588898396 717848848 814358646 831421894 984703265 471725914 591165759 999714443 999834979 119910467 418017255 323565551 807268912 478420731 767329973 442580634 847202776 200150120 698655267 311042632 544265329 404362628 938557258 548764664 770275195 819756850 872310975 617963264 878446111 32932023 396187407 554796508 909581929 135724682 873447482 655821018 707974742 645579610 754366267 549466440 911647127 400696636 764690210 582919312 890518171 408866935 427770502 637587977 684330646 167044411 510029658 317947791 481638045 541167415 830298594 486385628 831060379 708404590 719547710 258659941 914309953 209541517 226784359 364962442 718352621 848200962 979424103 11139455 186932563 199163717 583837447 398349097 622853668 611298752 726445235 914596419 993508785 776932586 916624933 248037118 352744902 697926800 974202508 737634011 864103147 905334739 981596428 402252586 644269094 300751575 700673409 265771081 496697255 500686247 922931883 927448065 943844345 453567249 885440094 664401451 702088414 486590863 973672513 760438554 835094520 559119842 997508243 142358818 224488852 856938833 892842223 893258920 901555488 709788114 851317313 709442774 762777122 909705538 991929637 897820992 946201279 439526792 810818510 464870489 803378022 768436650 871251121 528567062 763670755 318555368 687642443 332558722 843000781 197977281 584407510 699621429 910464752 768392689 893433263 539141953 602805199 540312394 724451939 832109947 950753149 344323756 739198232 986566897 993461403 375327049 980222255 918239407 928963403 619117725 811030118 146923303 342874034 4947270 471389105 852814655 869735517 471522821 779522702 738605826 838830100 43778527 199878259 73912117 235973403 129441004 954339499 80313863 747914929 603878640 636047433 818424103 933564594 197183697 683027193 569954105 778526609 624510900 717227664 608233594 875076995 695473520 921243469 270816527 323867413 559976646 785109515 475068305 781646670 757287701 981369935 490670137 491389266 151718031 273544528 362622514 418879920 612839130 915928276 155971333 668623221 980790541 987638589 269775127 506028973 185127623 573307691 862793839 878290117 126585010 793271399 976827860 978770169 883933847 965648206 744873185 996235818 949982822 967695209 665525762 859692263 399861225 497027806 367534755 748349419 173094004 351598899 266224569 425634026 842079832 881234652 13057520 241854079 809938705 869446740 509497746 867247217 349888389 785342931 983757132 987109026 307210168 350930869 180890429 423573664 345226403 525202414 458203701 613214647 965102511 994638590 289228291 765420865 102908081 198168226 14805498 520868405 841256252 892154069 898965763 965846090 391423225 860240833 704005131 844118668 168859510 329996639 86503269 232589075 56090045 975363774 232603866 251961411 853782716 921767685 669193393 704911164 658853555 680865454 769219603 841457461 586237101 871856843 352843829 829661137 665821558 741477312 55918202 504924496 984166862 994992673 960780505 970215178 537953454 721012363 60853211 356626565 772261881 813565719 88511579 102608494 139795224 708286670 376564953 919086901 958815658 976755299 473411420 548261020 673757434 921579107 433550654 436807926 443171156 852064641 856799209 924083027 292428412 998877122 390651409 878177087 561469552 704988017 560987186 951545961 853559148 908184712 198705999 973660586 75152984 195373633 530769992 562264979 499459367 665879474 531411775 974820276 211693909 427904446 831942586 888464769 489774227 816417067 960547890 994743251 257606657 651029800 774712052 953723181 482079065 526073502 537168922 711943074 525949984 901935815 89842509 528290582 307082231 621404603 29902993 91568931 888224981 928714346 557504620 746332271 854385039 949156468 600442838 969145358 259878328 341925811 517319541 540108871 5830991 297632126 62429168 367802475 405934025 868884226 76980881 135576428 511456714 829735700 675593155 831139950 790761696 855497849 72303884 233608525 778945233 951756337 589873726 649502016 359739981 958508951 919313790 941103292 598084171 759947090 590433526 804874638 809951708 938257821 790756250 796241278 512124606 984389068 543851541 953383446 146845581 216728234 889145108 925548737 614153901 722408761 100377817 684304773 767455201 961128809 923507279 940036790 603555659 818271498 307703861 850194617 46114307 502656692 407885719 971969106 296958741 452655954 521565114 662855637 87880442 970996051 583298254 766692823 838231602 869069096 553385663 751460004 229510991 668688978 650160152 715438682 744493291 930937258 862903663 942257420 639360008 697910355 563965101 995236853 71760202 941463616 549741110 873538976 426913575 631927028 678404229 940865319 951368727 978327242 400452534 407631531 768695966 784053148 750300901 822909245 621489146 942588472 487100539 774156452 79990888 478616114 241709174 623877274 791340751 815698656 299336247 952830711 264731766 497530716 574019750 781784775 43884758 419732248 245516841 535599219 365125061 620725753 205292294 794521379 753772064 758104530 756146156 846207232 55607126 849029694 26087616 730569725 625567595 871220501 895385474 944550757 760723524 796350379 506065815 987449218 563497081 754240504 778423639 977055882 656902877 963043208 903320056 958781692 136617576 478917586 588830536 918515977 460445254 824317303 942206353 955351059 215265876 854570369 753249767 818174112 782763889 985991033 175810958 655896695 584636650 687325589 224105957 323549164 361035717 647183264 175754725 578185278 643460075 773721723 205561674 743120410 510038554 520751799 813485193 945884540 380134130 841405961 36372594 619435604 76809470 345860243 316180455 372435287 250525454 857223882 802480102 916289648 623082867 655577649 940595787 993680813 999647729 999673966 353862426 546559351 883279983 903636812 579067364 800675942 422771744 816201964 558165527 804351368 650057930 817411425 577794464 684900092 920263148 975034605 505933372 775830706 243945417 738530322 513760975 746634380 734990993 853338666 179041919 527703754 277529973 281240314 720789094 912083916 585221929 632368709 183247693 514564611 474129459 667748546 988730067 992040098 235115206 707175352 128054368 594449293 940064080 990746428 381823792 620018434 87794625 796275655 316561424 901191293 551786193 661334941 400242297 517353720 815341962 916990411 686996387 835830698 469945857 688620549 394952671 901828085 724075504 875446518 840481108 910497503 322065850 888112921 29328350 112870523 381046928 786673842 133542017 703840997 169193297 232255686 307835335 597203772 151648638 931363580 583349081 672383691 126504068 657032749 621790385 705831574 294837821 744761501 242673187 567273816 214108472 864042694 563268130 998308743 21337638 318846615 854885344 866030675 713918683 875448549 985720345 987229329 547899605 782202680 377583723 884502597 505881462 719091352 5452152 463757099 895414240 956340095 940977559 955322601 255645126 363528147 507314552 682807594 822783408 907019761 675282487 756546580 263273946 558627795 971440541 995965437 737289132 744731620 713913734 951112598 287566723 975273588 66132883 767091811 235386047 379635094 799526843 991657976 709444600 826406662 579399421 952779297 939117430 979716659 836647223 987718903 950129173 956511477 116525581 761551318 559554343 979851782 335315165 388491250 711878604 986803196 231799131 931841912 437404579 867474459 123764286 847131265 100907891 983413494 236240207 978129640 374485183 386019969 886133739 903622205 934970240 942999540 850141589 999894499 825928413 972537334 994966653 998683904 571877069 704441335 893822243 923366273 290626996 836909548 698494708 813143150 101647261 135343745 59229856 683662610 988445492 995997160 709817510 996524392 938981877 997427687 712907337 945997548 973291066 999068491 821302575 904764181 438174628 727118338 797756491 960010024 937661330 996043356 816825855 912406597 286304757 662033651 406043808 620610854 819148740 931809059 390979602 663327167 49309372 521555114 959968429 999071135 826631463 971185576 853621660 934313480 130968889 582824615 214750363 268867837 915005336 998188199 645672073 861421728 251741459 868159863 802777632 834301627 422228722 905245535 910315766 915684145 525981863 644079278 266766660 514400060 953639671 980907579 578438636 644348644 273733597 452158527 380766081 821099490 53312979 776294456 838167671 987582326 37344878 814958951 474015510 981272775 948220011 973557980 634726906 700297146 311925869 397007143 800550921 919808065 689235734 850518512 353666439 440755136 123107773 943730059 607425741 616570218 660569532 818135323 901623934 948516039 224874834 600667043 632936177 824665014 174807208 594480365 542782296 991785874 362275736 751961855 128322886 418873744 635902348 730355480 665272479 992736283 881755627 984777114 572627594 594455284 604210939 908984342 460615563 758035098 688570010 800664695 483521140 729560801 666569107 772989745 190175291 282827563 748082223 832493548 50847770 444264684 418066643 685203718 270404307 714054046 999764011 999780079 181557321 839577425 322808868 706979503 109547944 681405603 88528967 350382349 190357635 416006302 745199173 974900347 645294314 986003085 225186057 762271707 245993440 983759639 800710208 811680862 844460236 917819484 876556826 930895033 627692605 997794949 518457501 550898041 274985704 953400222 336824171 689638642 666054418 845998170 674202107 868700400 548457151 848695488 625127884 978486822 30955812 718644409 503403246 705707214 709472721 981500654 848601812 852227511 104783371 494966722 344777070 393349136 731734078 991541905 123230545 590357686 787530397 814478577 920454180 991398988 813372183 884529916 320683880 372821134 637476985 933807448 892245129 949481835 274674575 981857473 564292469 789456808 246010212 367852546 948080137 950189302 340468508 684374697 515348812 898085048 470768167 782834738 804495236 825146826 887905828 917241773 275828794 527901093 735006919 997607144 237186508 769995403 744424848 746708480 48418907 302432181 968803152 969204264 458524174 867097743 603073447 845662954 774934519 940373092 746155919 973852222 704247621 827113739 431547188 968957556 608496832 879798621 169293040 547930940 925016374 989261254 457503289 686859757 773868658 910433184 124053242 718536198 159578586 415685978 517010370 519638929 964027038 973055378 775362443 805201246 98127682 577252367 122766714 274618749 937984237 957452634 654021241 844739239 121760404 218289647 184002698 405092825 561897125 765452213 695649028 880995097 852369495 939650503 995118469 995395274 982850449 985228375 48814304 791523980 222868376 855462975 570917781 615909081 700891491 833447414 26724291 263137379 426894153 605560883 756999425 774101913 444919665 631221192 475677665 744455466 527823908 774218363 174481075 246344941 939383071 990212938 223835794 493103126 133660858 551480778 317564968 665044829 217689811 537123665 514631323 803043148 624585777 843231369 966894293 993007927 282724846 482779131 198756698 700039890 632287511 959626817 114341134 114416079 30938203 186989458 840643846 980797404 825437945 871524479 849681050 970728711 898018047 991257716 302366072 868256004 942542365 979751845 90416014 773851894 72001757 601777808 475656795 478798375 486434760 717965557 843956629 990792593 315851310 764429750 454078250 862826526 59652002 576074747 699627814 787506084 562899863 722977295 982125669 985927628 382056634 469878836 347501583 872947181 149673149 598893495 699852962 880884024 292143759 945280031 884350344 966746470 136175051 355449821 639457406 928777024 799820742 971577255 758081789 836162167 222266473 908491981 914252798 934762648 899310384 991396507 996929920 997180483 895127600 931947285 160087660 666005235 584683015 901905634 59736657 449765485 221546067 626800901 500045674 800252128 401294090 927851387 416229723 758894012 990127459 995593084 216866498 400074666 303935527 872620022 81882038 993108552 516646446 724169106 69687260 389929485 554999871 575299969 384929131 498022719 949119790 986442429 306146110 736463996 151333194 393347502 337862112 985453053 196418879 796569367 622725261 786141945 130923619 821776349 407209601 977340616 993641318 998815533 659575649 940207400 209316530 792955154 500311779 702279920 913804880 934764734 333752777 941120872 137772584 409839134 448525716 475595913 105854508 806689286 951730955 963651642 666763349 780872210 14486682 940683981 315344543 443414504 335972161 344479041 699348760 733007714 32902861 928114023 332881047 723240063 8351417 972812165 237046893 913703819 904806805 981532424 198124999 491556175 312735071 529760634 519340655 993921651 736519794 757628912 689152889 691243362 899628521 906332860 657146875 665222025 619494104 767784877 640247815 726812133 424047147 671448218 31430552 169118363 751250679 971621206 599525810 861809531 404938230 440780870 957360725 995178727 283847033 318337340 187819030 988839333 850480140 878546005 377158517 756492912 484368700 486361494 982871038 984385929 308099817 839789583 542506599 684191654 84816761 960966895 372089173 664238045 879974821 912571745 193181979 958660884 149326739 802653126 159619412 463957112 258294003 324091400 925015012 934645101 817662982 901272119 710957984 812152971 833758007 856626952 696411324 739902808 847263611 963638612 536447972 751373326 161520479 870873790 166308745 251581820 828468055 843318700 848414906 940358342 464433878 881690843 461909764 859943396 471405923 577979229 386405853 616047841 684673649 807073389 762730670 883209333 91139014 404245512 412384942 870480575 621051442 985997384 782168836 938381100 786315988 962946126 620417743 950846361 681893642 915175977 681587630 918926548 346469979 419063058 265260879 975839209 112624706 537709213 572475534 977011048 646484289 797314315 34221836 574313049 792584196 920139851 135895013 517998514 789895032 845514623 918552686 968745335 40102873 719998709 709665618 912239562 530343863 870732838 267672871 581430638 146689339 224659626 68722427 781710971 591048777 737266495 17226445 816155998 366310134 511828134 373250039 530072651 232992242 705349973 781074105 958776050 446607281 998390605 325632064 343726124 938279617 960029546 678495879 690760902 380121416 747188096 475955653 918276269 298847975 510596388 684617012 772215217 324052301 504623072 70156686 665328114 21882549 807515204 570047284 931303157 240587462 368321331 865189821 909560995 920239011 926099962 889085103 959020450 524403734 686564282 786112908 945387797 608988204 617856641 584101900 728591840 675636169 869817268 833359399 897237237 417898636 690329854 888025047 944848832 491456355 566794629 857702539 879186108 851594564 928035951 539067880 985216852 27615688 269814181 153028569 621108946 56566347 482379304 393548208 910722993 585522563 911792035 183040098 378573658 902374627 910392143 120460601 178139123 146960782 416068766 833769266 944791598 850748746 857457076 653197379 675303271 354450186 624745503 241748663 261957575 336862832 531933442 537927701 852983100 862960047 978981392 200059980 860974371 357271743 863849251 699929569 829513650 581761183 855576116 99586123 180458736 447079221 826161978 44345694 74391572 342211392 731871222 538484828 540106157 420382063 567232436 116463630 444591888 672741693 818769810 126271436 805744592 700189703 771686132 400170603 923773736 255153639 563175149 327250048 955188036 249659628 632824723 264340802 462949309 4115149 189191382 601958045 618673933 327432591 683249668 980132778 995068993 49695187 679316692 642646484 960013403 628962800 707140456 782380274 830847345 108940447 511743796 280642987 982294630 722944479 925468917 701908384 703088539 433836004 993820352 420749243 682649453 71136027 140624213 748495071 937064579 247591352 470547375 23339952 342191676 556208435 625034837 219743611 587168087 672969579 920243151 875130684 921263013 714287984 854003174 416257471 791087992 578544967 611275210 616958947 816208728 437138364 810341113 359574908 860567585 354648625 848496460 840001323 903536303 993624199 995846795 84010356 971827750 49202008 603836756 47531078 976602012 591086629 681761251 552804777 718760979 755979411 991052067 698128397 879893598 855580902 942594898 293629248 474694976 364427053 597027403 356834193 678546623 629848390 897574808 73904345 461948995 900093131 990183192 418945088 878311361 51548495 404700495 202288062 781763183 932194303 954315809 274346126 966474230 253305943 457543392 211606474 906403899 265030816 754545967 336049253 612354016 952680693 962539606 461412515 728937229 363161927 710619364 404837087 706412089 154137944 544461401 652287978 982983764 152263735 511787321 778792383 903757915 960020343 982144422 264106590 430900994 341003363 687591803 865694286 870792106 702929109 899496416 333824058 518964889 5853261 160898976 807130444 861812266 708321576 786344764 662469445 837559570 391137827 510481554 575547131 824888446 376572969 638574846 142017904 726516458 222977714 780312921 137175409 164013188 430253986 772299367 454136654 787583456 463941088 584838085 568794012 914369403 339858307 560074588 637566499 643024124 953710933 984697744 701855903 714945911 567514853 607034799 434848225 787238995 806687480 823694811 792722806 797454660 469431493 941914768 319711212 791365604 773694909 996550024 165276895 627675880 571023274 696046172 420047653 422060394 832886198 958668899 193493529 925387717 270261668 676173329 926864028 989368928 322709022 442677833 395834863 418617174 904735684 998504138 277926242 305195572 521229940 645191380 563306585 902854197 686341728 875199514 429796550 704570901 91113300 715155545 906470561 940691720 266933222 464139277 489703702 537853758 760345843 832313893 447437182 826733066 523106072 530707137 956837441 987526499 946597205 989108308 280242194 457383158 56341194 563121126 989729609 992182246 405202980 652957599 29705180 361556298 960872530 998743295 431858964 943354640 822699192 873636024 250921707 502570631 572338546 671430037 642976362 798328419 235061343 824449871 845991969 956184705 582554310 582834597 164373242 542242845 190754156 256170803 336590334 499331088 399560734 566241783 318077812 607192183 795493546 941013188 710790867 882685697 500005034 921492286 525503368 664447905 519539245 531316168 624289175 715316222 134944464 515757945 678365391 873040110 898859448 992003612 68940269 817190861 516125485 945460119 768376521 912264692 343146410 722956342 517693949 608631715 781516981 859377619 312892448 395564619 985067126 996189806 180495937 620035109 77113525 474822843 327327943 628434646 331597531 558861243 903093421 974852267 113131999 487390537 313635161 478455939 961797705 976117282 212039476 323662293 416306557 504053480 227048850 952770098 783521592 948609498 142178156 899086148 991902784 999698041 981602400 991170913 330187007 761375722 968195474 976641020 519826663 540401945 830136937 979990788 654637660 778126932 815104365 912695815 997129055 998287111 250386233 829380735 67218812 360995396 984373865 987120801 392073686 503006812 13971350 807258610 365255861 849835680 196486625 891436523 604029483 783308915 96480814 960491908 201183033 661296971 691436708 785318026 201864473 874642962 469054147 809946972 316038101 769930706 452787843 516315175 536884169 978067657 900759018 999609174 82202004 880740937 527055185 659210842 405467952 507917268 3187498 536767798 62502970 599384800 741749686 989813924 462406484 646074779 175329964 984066398 758839682 833469596 8837821 599521994 283404988 507777392 182996385 472556708 477148906 726514989 232321828 546109446 503937231 805411732 952312470 982376251 926708448 965297382 424409533 745202626 976031631 986612535 629948699 696278268 655669757 994112105 744731927 962560841 503715127 827029580 625753112 740699295 906293336 966946211 5055214 830491980 725147756 806509379 603982882 931966076 173444727 438201615 150829934 492857352 500229915 987899393 302185751 607141744 937760592 980865828 580047280 796533256 709009649 729371342 756801345 820399071 282658906 468137708 332733067 728882184 127577293 801784338 89983345 484298194 265714424 648566362 650711725 862824022 131189977 825426313 675103116 864180636 438366708 836663435 811256947 875535650 543951408 841979030 583968077 626306359 342550097 835585859 2443103 67175967 376407747 562223504 779026429 860798233 168745578 587402840 824497414 826641388 482687252 862095129 746758647 782840218 535758803 864851396 762649028 781631865 186743171 447347878 481838474 667273405 133908743 565630471 630484063 825640782 354710059 568989047 318953942 751458513 853326362 957409239 844038969 900174869 195174337 714947261 238481469 663650977 526859580 536502551 435981005 682546600 61558854 794505254 919201285 965640750 853802536 882570160 852390331 926292303 236059268 537161938 423478827 594012651 156169437 322278847 57618062 212194931 83686265 150951743 15100107 957281325 31054672 414565580 930619745 947336892 780869124 889738921 39397877 373865532 678959582 777442238 607340342 906411558 713400840 823111172 389910223 836492420 738013598 953514727 247850843 854890822 209848109 324109133 487135048 495624083 425520945 568445200 926101104 960118557 260285894 919846004 328213744 707435538 351555641 975851573 550637101 846536398 977125596 996074271 977279284 992384744 634067600 702267997 31002707 317493725 741184324 904371646 978638321 988983690 952594164 993367585 977483030 988610631 875456083 900763616 324045657 871013941 20698185 621093345 672543805 828111296 335069278 971647785 387322357 990088036 813976113 816380032 89746978 350989922 284708729 760442728 343915335 361986399 158317794 956699080 758515446 957773532 205398708 921878339 862477352 887143178 929383516 944340518 458385830 465718974 317340588 903410730 265667287 430018349 871247366 975749520 568246981 766076138 833551799 939379819 75256057 918435830 452054561 499728252 941940319 954318208 771401598 994416823 595063841 654848545 993250806 995156995 664453204 714452095 289873398 539122545 671513540 926203214 17435838 652881896 295386171 546260076 815124955 861112482 855808879 932501832 198684843 198820559 676303471 899540806 859505235 963427260 98648433 498486877 972062423 990462584 820073799 974833401 953814355 965600754 773869905 981673293 444267436 666885993 647514564 937711149 7244403 580391467 501676580 970660550 800174941 843563028 672530147 887579369 505989049 941068928 440100898 947201475 432129435 534648777 97581243 983656970 143420305 144986355 886278433 902557497 457140639 556567513 652629085 713103836 830366984 835071367 667314686 765131403 444124168 586143006 995555201 997592949 558464239 989731799 835119343 862789079 790038623 947087539 852548900 973145241 239544265 950092314 28943910 41728552 381845087 745784570 226253610 359736740 670816947 964532415 797850006 986815501 646821524 685310796 820440647 881703149 344016144 858629577 884121915 955678506 58845078 934631413 746026859 911936785 424737644 750833424 489221008 550258768 258815373 752032306 784192215 871345325 9217179 599806706 548696565 965796167 58456804 859054327 437601160 619170422 591279616 886546793 848424256 975013844 696331305 898673481 597598270 598168264 265965604 318993278 46910012 306359122 317868761 903585304 17779542 859557387 763622585 846764653 462196212 472885161 143629998 996944462 15814943 130358331 913051175 962488901 61754863 73845774 222105648 577271362 790583806 893505600 35669774 118286324 575107553 698844563 515328356 671468953 958016985 961965643 104235354 560216448 122443718 425994188 879376052 974364794 382806957 451802920 155091558 559849545 996670068 998085873 458565749 831729534 717079823 734704148 700102370 894086177 102428585 327140054 540282475 985201551 552167667 860753718 162007465 950821848 623181710 683226375 73717376 925383677 60955700 759859501 245118957 683617565 395381907 404192581 906545581 974622271 338187439 841093655 178854223 651038964 284386633 375256866 619004203 925272424 966540753 971060487 375615164 919852748 109570488 902267976 944505924 952932093 558005342 643623312 883158298 938889758 184388834 236979739 245909651 340801945 284607916 881321387 591069147 990825655 159265285 373039056 493525666 916424843 225643655 401444020 319762638 640654569 633467775 902082772 206379111 526115965 605105595 685703045 226387785 903918921 664129170 941420702 388127735 717790624 150099904 437188182 462810026 534470147 636922835 848167434 670902010 771375288 318045058 936570579 842872631 899536106 966557762 988992534 215760043 565735583 6602324 896672765 205582405 496843334 412035489 984254170 904652210 990400583 396491287 841325763 803357612 981282459 367466556 608070118 495973824 856081892 728024670 736745040 539593876 986387161 249011540 573784211 237637590 835478074 213246959 903040682 603503367 851361610 352592448 664007796 119186794 695483512 295209653 803290160 947463914 970608400 457299041 521280269 570850277 621748770 478963543 621961503 38304097 714146169 9577217 519720677 531603607 769407810 63364994 550233210 97465197 688151024 589845034 911490193 129825523 533053054 661989209 965564438 120822513 395334587 34158136 920293694 620972801 683150851 477295529 842733622 103368702 882694861 11508725 16702718 262059287 982739292 645285070 695585122 811255536 962320426 998717624 999963152 918435429 942424542 171134263 495657207 131227236 533205880 295867534 978570573 359304728 373313476 159586408 887907248 851860724 864644623 689781639 910379374 582501836 747377988 193119322 702234616 846433924 971947796 123783839 248608509 972117826 989714822 158179791 416652472 683293327 726909396 564643469 984379779 924964336 945024864 732393367 924242800 988858549 996537966 46932988 634955790 326523625 580106510 250133895 682522525 717623033 723031364 85156654 118581980 249179239 305516610 930875742 932250737 195779426 389540405 318475760 674324649 733564572 891123143 637811222 818819387 264957892 985633707 832034974 985697693 531940763 970679550 715840604 726551190 701391512 953803847 567167984 868063984 176288435 768703390 122324737 428834462 652247577 789129655 570411681 827820125 846412723 929764002 56262372 812639309 708377114 802836066 141761421 761379106 533735961 567314435 938867967 972901416 22342759 561610790 1298924 610633762 275164713 316114720 831758167 832519460 323869787 511655842 896415967 958778668 130567148 455944759 485140529 503873105 400251745 871822506 232637949 889492790 130235142 803944676 479674497 516453208 649604 531759261 487619364 767268165 50273699 963969877 525070178 815297550 888658118 925276724 21263386 102297318 233839270 954998180 74569530 522396561 906996332 941529231 925632375 956583295 179409080 881614769 326228572 796430248 998959331 999290523 526673304 955448651 841978168 848376607 930074373 951660712 637320580 860528143 863420952 904750636 981843997 993597489 290257169 853011137 147048375 295182512 143947124 476823577 547503042 554681164 803351225 867491631 386176221 901758598 439900080 725776893 291792258 780617050 107148769 797142190 897122316 943448102 379821656 854932272 926337032 967017301 711065817 910162743 118689566 804550834 88049994 876741799 603393760 990399550 949439154 994858092 397488739 781330895 966111636 982944668 227351218 949806903 877599497 980027093 380304246 883025487 160038640 253321334 76338942 440515721 986338381 995845799 128149646 316287740 322350456 709659775 379530536 978546456 338974961 501181701 388739653 710275604 979915239 995328855 900701994 953205710 484318312 660233059 159590281 419402131 785045441 920048724 374344176 969773395 790643982 969416268 941368398 991019808 106285368 338920365 647515156 810681891 65481944 77692549 889238404 966918297 743523097 924765540 272049713 846243829 606406344 715336589 157808303 920111767 466447570 730884009 379331823 829754649 149575885 886610980 659980719 690302169 829828203 936490323 240162632 732197083 909898423 987980820 958898663 965440273 246876695 304447571 889115545 909975854 542508881 560972132 662875881 867836482 933515362 987227045 644039708 696445035 885804676 922062564 693932047 881473360 325120069 897265648 886004469 955312378 960533608 973311960 818424895 900961141 469423955 705280411 144126583 753786697 79532163 134835955 708349622 793040060 429931355 955699272 914455904 963579694 981213329 983001801 987718065 999732334 585150820 692837887 333780877 466405377 937559077 998168899 109656278 643351619 884768654 996944110 429315959 537221474 879401680 943679713 26650010 341278769 592335697 872011010 546805753 918883598 413113413 898482916 359564372 752412994 133399120 176260893 153453980 563827592 130260764 803604488 838043516 857234564 532511951 871176671 548427430 872395117 471785485 552482142 882169993 893151444 460618683 694680966 568255959 916300978 305016741 548180966 380607319 655508165 578147640 764667534 518659415 819108324 864023713 912638468 71854848 128916263 941628478 966579216 428563503 933398124 274382720 874995417 281259708 436483075 658218284 677037979 908531250 961478377 851710177 922236197 571852921 931586920 366409616 407238864 237760470 492213969 477633674 604494316 344949557 667593732 475948614 971714023 211495908 747677536 452654684 971701791 498029821 790101903 544426177 569275950 555128403 764068239 847042512 873546805 302661965 931728002 103338287 293439066 244744282 436807224 423911031 803322278 24138588 187629377 217784044 734137368 863677703 900933166 536332050 582354344 754907219 986876403 191698418 922530065 798540200 931121488 832659316 888411066 35441978 549917564 355124201 760142342 119203157 812186374 548716500 783677856 532379632 578808557 707525722 741408498 240301089 382361665 751790522 775351557 426457816 521043788 806960186 862642017 798199182 907100787 316814242 613924702 979124212 986994528 188825724 404052301 694823891 752039898 279625438 392093697 895645064 945266763 594488146 929107080 385331174 834858727 391398176 855538723 758706145 955283530 361299609 704327299 291518008 900655573 542593979 755711101 496652183 595536834 117229818 890057978 666577397 793756456 117103913 413939796 857107988 935706614 632381217 977389588 173444083 856116669 369247148 932260282 658233015 749303186 288188442 457858066 921937085 954871305 996270816 999229374 505034602 981090810 364651684 429482734 621356753 796342737 189911654 779143221 387983810 924884173 512428090 788394197 653667168 772890017 47274326 608034494 217265300 278356936 230664468 994254935 192001495 617491533 334748966 394187944 692195218 795724430 89047310 447575245 482751396 904094426 469715285 898874886 207074726 756662222 455638993 692990209 61300093 371676208 108881253 698399196 516648867 836406186 102776277 471894163 262716426 347719815 451509135 931715362 277395075 876254551 194266135 796546949 537656848 764713882 537979434 626393592 993011759 995105188 949239474 950273857 567885631 690593282 551154006 618048396 986022527 989164449 433953021 498739900 517145657 843542132 371235859 774035483 622743081 890535468 708079421 981633992 804583511 956756791 698787584 943551342 818888206 930080824 774481589 998438971 5766607 30851888 919024356 992637753 186662317 906303448 996726236 999851298 564580267 983086544 351792582 532019177 374718225 476972638 251326431 268178455 323159202 851817023 443144070 807417497 981273060 998018758 313668095 629201688 965304312 988568145 716895250 761294299 348363680 593878145 746306467 799146121 418181472 589730678 729551640 737047500 270307517 767183509 86799835 614769518 622337335 724397124 544352379 856754459 785388251 824238809 463464959 481916883 280829454 764171179 182061005 264739671 667178761 974407902 248968329 293743232 261063871 395158096 967903030 985773117 956410651 975090894 215507406 654088963 570666470 938221927 318565831 335285688 443550621 648938734 46675871 637704925 979439901 980951281 143182295 784428386 574822346 764979616 378031511 972489319 391651318 414024769 949062940 987480640 593134275 815232523 23093329 217868643 717959103 748506925 347610089 795013301 925962739 931123847 146221953 727688740 936658951 976561887 634483600 875635307 285790268 822325103 314757580 644938402 931021347 985744375 320376387 854276702 807146394 957675757 4855022 999117144 776688861 955312698 521216848 927376686 905051662 911007167 461202666 795774408 379395866 805577065 953852945 979568148 982393893 993005848 421848851 647592538 893050625 910656159 144054203 193288867 337939898 795725806 678422645 972235213 884633200 895937661 237062580 916227747 331609983 555400573 698636252 870677570 648828436 744906244 501763753 667874538 430125985 816736911 267357657 847355816 546473000 616334345 545076924 557361135 327712211 881153983 599386464 775086468 376984818 432984573 534168966 702384404 513154646 829606094 544216678 989055936 196153616 358534800 928103220 930763260 102491135 886492329 771398043 991633210 747334265 831271083 913679259 986288804 269866472 320249732 163158890 811225223 160034383 606638267 584828661 902908447 516089475 848673991 918772043 989878680 455889708 665046057 348175833 967969500 838560301 968831062 885924230 921885186 682288451 819317299 98981182 851495773 621123843 832241895 78224525 991252750 657476056 898847244 476960854 587091345 23806168 602095527 367917411 411725168 467752143 846906924 670827554 833474305 945292570 949060151 897633770 914129242 83576927 755812282 759892616 843423322 450326110 792261104 984361340 991733933 625777235 902707223 101551929 809309801 864249972 968175412 591581370 776324659 135029348 187310799 151411956 803807587 428590386 491965909 171554972 567632139 502195605 995496974 733578628 933220113 905437039 993260446 677808718 873179601 779896679 888964512 766514837 784509440 243097044 912077765 1058860 737250678 77182861 269447041 788202809 887238751 379655581 817220044 301389142 339036149 694464823 886781385 539651426 921293894 565765264 861182587 965574571 991694465 135839681 556637506 466610525 864008645 764852864 960170451 480310449 985654797 302014297 388093853 984170177 999521119 705106926 773757544 621704171 735282740 970016213 998198800 262250241 906907965 406075603 577701244 633803745 914074612 968293307 980357237 890212559 965931330 138748473 161499446 517148347 992713041 266322765 452536426 164578748 542327251 646166624 952000329 51135390 476791706 991885485 999638157 778788885 914057735 48039182 417014646 50416521 982714703 278495949 574954547 473897065 813118964 962603339 986983605 521912011 819977121 233261817 848631963 405040021 855435990 900386037 961421010 558146715 661577982 341565189 693540717 840296812 904686652 635169053 828938520 61026986 170100482 890901448 937238869 4832922 803880853 661418732 826492799 133991663 761233235 568770585 722166502 179972334 459002751 170015749 540986971 256923096 730125489 909424027 919749723 731411953 924406921 990078150 994342241 668232216 973996380 994571412 994850700 186588954 967853022 176803035 468354265 26389672 317794625 477972940 528446077 26381958 35888136 138756316 836442471 855610938 999311453 111775912 299149026 920622749 994999326 512453472 685474239 765979125 984983087 352064906 703530365 133411257 784074334 485335982 559681091 88901565 552898410 328754948 459988977 998543227 999602320 422472525 629095406 122628913 546923546 75359549 751275215 546925909 547719139 452550291 609784385 134376592 984637516 980953537 987453281 214473270 343595581 171618820 694912930 578622208 790724348 782249151 796687077 853453337 961450347 292138863 786627857 229955513 832647852 158208945 268480990 585360492 838642174 502004109 535580415 943998456 966028060 82851384 501618403 180500858 917717059 230434652 816664203 742639460 848013921 661772828 740355924 261697133 782655923 451125285 762993276 533635892 785614245 508149666 998205019 923556281 968165962 146659708 287866329 114619369 343893505 584274869 773825249 250393357 323189457 455567783 741054981 397060960 407954140 591434240 713306308 955045437 962865060 579920432 723250209 468758838 961848491 923317227 948959198 656939862 818018805 704928358 868138786 691691141 696279910 864334028 951679223 120565844 694140281 954557602 991114629 595251750 639050648 508296410 781871999 126217841 985116925 904985357 944609060 825646215 897512238 876707177 951213189 624304946 634353552 938114731 958044179 904611049 955122620 50627759 209219506 516104285 985740636 859434065 868510112 109074229 636098705 240616234 816609397 380812986 616858057 942568237 988139603 883515953 928877518 282077365 745216800 426109859 884240345 519674268 654851343 888102021 966654024 819988489 882433082 287103932 963191539 260577936 680164530 190985869 821262287 449922513 776434954 153622225 823861002 616064930 676773718 44668744 896115155 649355527 933075762 781201114 839013909 231442824 287472607 658563938 794470866 337537949 384243052 932394546 976903706 262716198 757899115 498226730 647508590 659685164 760220254 248766942 594070904 924989550 944465041 369489806 372778838 669380736 879340109 542419055 688416188 112137780 945863979 846948247 936022899 211540998 500435517 346880296 978869968 848500709 980642863 942063654 982505569 213012598 551372346 348119683 739623082 251258680 746897097 220510023 297927764 144605880 665014145 366619051 398648747 338817485 962548904 302827946 329218078 443815326 725158082 871640838 923879757 714071803 877945945 331830772 686962492 175158480 669862206 227258426 970515580 289476319 888437456 871577363 948988554 438545232 440328149 447730148 810102860 444783695 670111195 211090900 504051943 841195338 937704976 234451674 324237613 538428290 576498772 914409359 996931312 149639109 699287677 158637906 456475377 697815483 750486398 833976166 882658166 610483353 719626974 588794323 816964132 681428611 848348561 53974762 102583963 467536235 863320862 821173650 905828070 454144632 800195010 499505356 822985936 70728239 147686061 171755242 208228328 466326187 829292470 326394143 922634982 830853098 852488085 419413501 584939673 957378780 971445968 108068681 374617247 480651432 812392717 194511876 332296154 576608252 579694943 127086244 503445973 202574692 841318499 906166807 987928106 38677119 249306052 773292130 965250708 524025438 854877545 868768003 989864593 532813695 926097099 760921273 920296120 938840114 991558389 605182082 942501639 909169730 994293828 932245913 939692332 747460138 787051512 115220267 757929889 205340420 710115537 159858151 664825454 157645786 438567552 253894455 918097181 940153843 963209628 460958251 590398966 923212142 983229836 439411148 510090310 909475818 968841329 784315342 921385186 951240354 989483810 973342926 995246994 167522750 835197102 111278986 989560560 254914446 690487917 885797948 953504013 749516203 781672282 376993249 851335244 875929101 941001207 15194513 503173685 584531009 869191138 813144036 999362762 665605081 761048972 558042465 849804194 966065393 987502054 706143780 931974786 679950600 833762124 523662946 698409867 682042401 856798302 600187404 892789035 880351633 902051844 456217581 492414954 754457960 886329302 499296390 569874436 165759610 465915160 979774193 997065349 217592306 308149509 752953488 855010760 375736362 940890848 319949718 907157757 442770714 580491659 588067074 740032887 341252049 389203381 506758685 576835804 151940236 449512647 800995520 881063666 696765592 714115798 364740872 451041684 769749071 963819247 643841792 768690174 892584848 957416777 84347659 798364497 681806858 896174179 106227541 713723276 895948666 987411212 302496878 533633832 1712048 521000392 423230103 737519370 358672627 801441700 909412587 925984002 79270157 264941330 59616909 890915263 112573062 465828816 903227460 927915439 508159192 553582993 576080213 631961721 928831364 996813492 270891138 414409282 247161634 556592488 324011223 813542300 880576582 957351851 412090378 946879077 701676891 954275915 266257605 299848361 654018812 759206825 205581493 863636994 935867386 968313997 522395424 812681209 776576354 816632698 565628902 999243535 419958864 432897730 552566213 730970504 564745651 719085829 781660151 962791614 950807918 962674971 972400863 978667184 438841635 577254080 824183948 983584835 395518243 914816307 399436300 400608723 920884116 947968951 309292267 698078730 13007473 262450858 391034135 652093735 380623540 954546188 278505980 928486690 481129690 536399885 482249129 543723875 109794712 159309784 455485700 791798970 371006478 384508163 53542945 631551725 711622762 905486039 296132361 458343902 187213928 250383028 59111684 807583148 605186259 742078349 717935849 938235739 956145701 976003078 296073724 376743581 299562538 657101620 181945147 966521911 411271354 757200461 141627729 772963776 364456124 597955251 317735195 447598255 505446145 815479588 663443942 897174119 274440865 566705235 297436619 694882861 864223900 985829084 542617664 923886378 748188119 958188003 616356929 942995585 763026100 971079251 678515482 700518746 22552180 286273230 739767376 791872494 664824436 892815123 34403205 611236306 173675439 826649066 327318376 761825608 25056240 581649406 342877890 848574953 659198309 811630943 381480779 453104452 239190062 957121446 663760241 714721245 671622111 900814699 303806340 553308157 563966221 589863030 745550797 945939628 574302935 922416591 719345549 922553885 970157793 985771199 168549891 926186083 430828727 853732740 22231979 705233668 645726151 745760002 863038857 981332080 869457483 962963972 351926563 869870082 185403673 711695291 694037365 981373738 832921875 892955125 166685420 670386682 196772318 888626390 808749242 986277020 687528803 750540820 858673581 943746235 598394361 687070797 575581595 806310353 239729353 317597632 685959456 864827479 889542195 896445993 678806289 993453017 71169438 308786239 88552783 742429783 690605136 913950722 985611939 991221695 534450580 686211283 843026694 941705768 357108103 922745583 400433230 988610814 783457208 971661505 202169823 874247406 59994516 64575122 11233898 858745520 135169958 392820589 658449166 771982389 132609216 764963142 522618727 685639398 979147963 979236437 876764333 928199144 205597757 732931326 47939859 475711711 853751360 859188193 267761505 970269954 493804220 569417877 316689936 626059873 690116098 753819061 564396545 611283579 407403923 828134958 298429222 421471428 383056237 537599411 940375406 966508428 555667932 818565644 962616134 991733596 227068924 728217314 630225090 648515622 330120241 409326457 765161967 803558458 845433680 845630445 543265219 915070257 998006728 999191758 791165896 992845169 524918303 634201245 220597096 882315677 956491169 999649294 697289187 721656413 310038842 898967369 722796334 900763107 722815481 958296036 438065403 830843552 529281981 820782773 828288836 930629099 430833138 928814882 353629176 366573953 12922397 299572860 952588161 999190088 195905243 633463227 64304746 999471131 607834178 905192714 303812299 868390251 679371222 783467494 622294620 734117481 962533470 998374715 683385504 941219140 640227079 641756842 123762252 472500615 665569745 935947982 658854993 752673948 996011573 996263860 675312096 708072539 931618700 975337874 85749265 173291997 118117952 247041773 502544830 794659793 903245430 921333081 240334797 305092300 324449327 389431589 244100048 287524360 202526022 759172365 160781100 557461991 784228966 942722838 533336939 555726719 636324246 674928470 497098541 894450041 318643925 528265262 53309186 672930874 3155922 113425878 144742453 237771933 154699734 698555581 375210503 425079246 99029374 998168312 567922909 648603713 193486963 939831957 901683285 966886936 702505525 935591127 397665007 540250925 293387149 690950601 215309490 664487447 318647376 783163565 926063343 933784015 791742553 860622986 34710655 746924045 900119411 944303220 191693413 516206628 28957898 817840501 67256417 418474806 734233653 967970416 740344491 858596056 207874446 533656091 738064491 986494909 982974175 994440047 135900994 593898425 204677550 822016717 305317743 529806383 786601396 899472692 414697824 814823667 271152731 696308557 332956956 793261634 982290220 990507372 145441474 734051735 52814148 361791042 426577815 491254199 345582374 641249358 279113626 572590814 460540628 672866587 115158719 157262830 207640562 915381524 159564698 466255656 89875174 401181753 195633089 207025921 447520783 535724419 436510954 612658290 173339882 954656848 385582383 619235564 985000516 988348617 6907139 916936188 355588093 676647674 275850430 497421259 663253592 846897492 440933758 791237472 339130201 834616886 289198078 787511537 441901691 542893026 543825595 784784126 781817181 950290437 662086205 926400190 569313719 597542406 78253462 781080209 173489832 339961322 967388069 991703153 48006769 393788231 727841082 998562839 399558256 575666411 89974589 921265843 288809588 688170228 720502818 837383483 303563041 947486780 927038132 942624411 337647260 603210460 40422366 745699056 99176873 226424965 257183634 506596763 80730931 329028241 305522824 963057124 397287997 651370279 7237220 797811683 315589733 637752368 199592478 380431209 19260473 762908132 555658942 981471860 342023922 698727726 657350986 663681597 811153244 959952338 33105735 296480902 771973483 895197756 557216944 806750451 114534706 458468351 901930574 993408717 477237517 632290978 630998396 899411255 310482836 854318857 167680290 890641618 5043094 705052576 762361337 850606489 360051968 842483461 345153385 605413712 108841721 919368611 747768151 845596651 116347487 696530664 419149833 592544923 528306433 741219585 111287694 888999771 716413061 886254530 500932871 898111037 362081702 657379199 722085055 823124755 651199215 769571343 581629490 624389393 692486492 758375540 26513424 743946261 10154407 806698304 38434385 390183338 780896671 787732874 656499805 714477800 696484694 896641820 982450654 994159556 388734815 500088589 270817578 597605805 494098286 531026045 444264053 663967734 874263332 899786378 127351248 440576144 896269527 972212420 811098322 879046633 78718680 406588038 381546253 398600281 973991055 979411604 922697814 969686910 939596551 950934853 381364416 537194451 169701037 717238486 992449768 992784319 649275318 694945935 718181488 907758505 940610517 961907693 68374172 637663822 138900145 737252168 469642316 967764572 425432163 871256861 455416541 571155038 277454342 333149613 364984990 766017613 459517909 743156593 285811403 369696562 857586796 887782545 788760331 928612930 265527959 642065028 308715522 633232733 406281001 435412118 533109580 669221976 335884639 828718027 78018085 735591184 54358976 478328216 474495628 885268579 337461032 680206837 368898448 661470696 458762451 862779734 110472410 600414815 499272014 557120948 980896160 992553132 771859684 829832406 446353229 853871650 838715012 954981066 97593546 240617682 362617496 374250400 551204283 715071606 885696424 979361133 893187311 933593152 18380403 850083967 490260342 753860200 875175799 995464560 406860570 984329600 458508823 740201187 368343289 956691539 255544036 387066283 928560178 994780495 404592771 853011405 984538877 997026134 361056818 388776420 253594504 806521059 834601635 868337104 225971234 411818571 394740542 761886148 175998302 684390062 247149029 864249684 115179723 708564864 374053666 705407563 780207543 791081600 568350466 802416741 599603605 792390344 412677785 981686385 599742446 818539964 117613144 948000376 285170014 919881888 9369925 485948886 658321385 815298497 453814523 462571829 552217372 852943351 721789360 869917062 165569504 480156262 250231270 379205529 907935718 913847673 439932372 968247035 486566371 540066293 109642656 571688127 43704993 450445075 355497745 479026583 740967356 898255051 837615100 886486618 830399452 837207916 228377654 842541375 169445776 387526966 279501875 299361053 680896216 991899696 765335161 951103314 84311297 288160731 253778763 882647965 151956593 234908270 48767816 492910842 642365611 666625354 276988728 721695638 879544198 901299619 882798958 971222967 852824868 904986380 160456644 334667862 792532063 960478560 893876542 926561101 170031409 652906389 7405955 414566194 946792413 977055976 437332884 541439673 16044111 224802816 130849848 862815158 350681893 415347412 462946942 558233048 572846 402254155 631014233 860059696 297823242 694897488 546621823 857312358 410506028 553418114 407165646 753508630 892372952 978933417 150689264 819975916 817889624 957735107 497124747 772452451 309533243 640068078 470726953 872607423 263586311 486233541 727083333 873341848 918430311 973000568 590572894 718770366 479210317 736242662 378115427 796783747 300828174 400712884 328746668 909863325 474918157 530583458 705956054 874001623 534147018 922246802 278879018 568039898 388761594 659806783 464463850 480888849 637601163 739703086 752682702 836023704 303928443 588011748 732390632 791482016 883154263 978820430 822986642 862540932 37772068 377094257 815925515 910204221 449519358 823743977 285725617 719597503 753081699 780473117 444289791 486057636 685807771 759309946 338477655 593248355 773838055 774336333 236991348 714321027 965199383 991716790 151539787 590002442 637215472 977267278 991199275 993009090 86232625 302549872 954994431 967262384 525936526 533364202 729047785 777753200 955549440 966340738 930065720 949134760 223440532 230058895 640348302 925032400 375970146 677290663 109474024 175466151 965181065 978764447 555417792 916405873 590925727 854296094 399794694 753097578 674711278 790015865 900751807 920192749 610146436 881027911 985047145 996744576 80374098 258452798 260281234 451101153 638496799 756765189 286134507 362054487 224348186 342453284 721342688 983469814 505876916 529557710 606459282 611141089 657803172 894092357 243335898 258811345 152249977 318499277 297443232 831478761 380722832 943939935 271305115 505073274 575872424 918048562 732312953 974870952 779448651 789489116 162955339 345099415 363899756 918442041 661651331 893758599 591620544 855818260 554284264 923346612 269297668 680887886 848143258 992705937 878853511 939511955 227472470 980396098 146551940 728886488 473531333 892066433 497206486 643699052 182217707 893244719 798226570 866938012 103471763 954393559 920994929 958275190 770840794 951947490 90563733 691529558 326273304 692871540 371841230 690065500 195916366 494021867 28970765 282443589 210193981 521021726 120750549 923818079 356236988 721655088 336396181 966200423 132342469 246670856 926605487 943925731 1610836 593264928 459435477 520256755 471277889 502955154 717237058 905517377 5885690 780004919 642315662 662986276 657747610 743662972 733960180 849453723 958377684 970061371 83248274 347027848 385165638 841287677 710442216 963184094 606558473 678880454 46859222 756603537 995107998 999857902 784236784 916310355 301995123 337544027 205274812 976120292 337119727 849497083 303898240 883143295 547216938 920808930 739041303 929691912 37578783 509303406 667652070 872737296 437036527 794333035 479635787 506772193 758987605 940268179 502167754 950674600 42211581 811278272 776894789 903307433 98031656 145895862 578338993 951572226 31019074 555062067 752507398 833710372 281940370 289388345 80692755 280588156 203952779 804174520 724128836 997401897 313972218 568623543 361818652 710153800 112653115 992346439 871163936 890153396 656244437 809045444 911430526 936629547 833620106 836503253 505259026 527691839 577778018 602161901 256737742 340847121 945517188 968060325 920399214 958609020 287626196 762547916 12391654 295794647 546045869 885526183 692794723 981655622 238986381 558666023 683800234 799317075 456102555 654197041 932883112 944451407 49403349 743141689 958045085 962447304 186778930 854928448 805438733 919764065 929119301 972264308 504715284 622941983 102531845 500132115 820621700 895121895 999074879 999174948 602288167 758736390 937616238 998861462 436998988 798628112 990744142 996834683 849966091 914112149 208120912 237368046 892354282 955940672 8840148 204523518 863470330 924135696 381633580 569955684 802371858 963363054 311696047 982729275 317310889 997900213 55912277 999720351 531211047 826166256 672661706 678929247 150081688 797666789 188665800 764417421 93603390 757725357 140009946 547264416 784993105 928159888 920475796 921436815 614367523 737050020 788948395 947172529 699659036 871857131 101633169 786128735 75559871 431925594 676271213 784467888 255287825 535595898 652441704 657206030 935656888 987318125 455419803 890066702 890333327 957647586 400217268 660051089 918996504 954222034 7236791 498470122 753417774 863581455 916260432 952999199 359631124 598167414 935924408 972216590 621848495 936980453 33357819 874805410 468403845 675005369 847072447 883715993 800315225 913268828 170227972 644402923 481065244 608251308 452257078 456219948 548317645 767631026 914188047 998524588 747836253 813428249 306822445 677462823 843876528 867663504 961151722 973820003 370518786 662733349 288220192 701598702 583203141 851265138 582682837 945628214 144463228 942263734 590837269 992275768 764884187 921468482 47272616 394241208 808885134 983758894 127385249 972618754 622227575 873025011 425320818 969338184 40040928 948846517 796982817 919260193 724598131 967628333 97498873 395891455 392430574 906714757 620274647 874799363 528182803 725523050 706075191 756606524 465022667 793432359 918183343 930588217 415035875 826445240 325601445 749347531 369945962 880418470 861864846 864508686 271731851 682313719 933700854 980216719 662549785 898134495 433469697 817435917 654017412 988495168 573963963 717527213 945873670 994351025 780935298 807821022 652415249 816738404 494992532 970919902 986594495 996745562 182651583 944992813 14349754 406879807 224589190 582369666 156493525 879810759 893837396 912157622 493166900 594855162 965302445 989970217 894962438 912282168 359439259 821693178 86825065 549969986 552668110 975570230 298850551 305383971 680233318 835612080 314931892 526987012 275248623 898847631 988158159 989826751 605204030 734350295 236822145 396285080 483820172 891447911 991526043 999726451 781819474 929688360 737832637 784255297 358555126 827900912 283146445 830122000 598148327 937349522 469798387 881614920 280211729 434655788 255217302 908303247 208415183 917223341 501187410 847663872 827479091 944357416 760442188 924026316 556969775 729994472 944735266 959591468 984582154 985931546 422628107 723573508 198269331 475943353 745185977 888096363 509495942 823527918 837954501 979316627 761575553 961839268 550780253 729073672 553195095 621040759 51918393 768253179 19990595 509157616 938543629 950021281 473040762 980577083 989887526 996708401 729530607 742340859 469803770 773350544 186177099 378074899 413752811 480908332 685571210 689500301 134596638 196715091 392219840 392507785 566274242 965893541 222815147 779281385 131474123 342019513 158122395 882123073 390968491 690091936 555127434 756558191 17044389 146598010 919439760 956101291 449872104 964629022 16740714 772169892 193249694 695714419 185882852 680107472 342441663 514154062 520231998 627920592 581747165 904780458 609103163 846979180 635926047 967997112 310069306 374738084 980853281 999744889 438310756 811137944 594589519 628415548 870996069 957240808 370789821 803956951 137631435 308266920 644741784 769314041 408526536 962503207 437779679 776010264 20184222 100920247 261174402 683039763 367830915 640339944 240306083 880116788 151143243 367963830 616272252 849092883 647764172 878359819 887724129 962574753 320850543 794308853 81955421 834255643 602709550 889014250 566918969 768460000 251687750 371104906 412315135 701435001 22038389 981007131 576269887 819361047 104124142 519872232 962364057 973216820 514515573 769258524 934508298 994896008 470564559 743290181 837219121 966403631 417867633 488811411 695372565 734015223 571431486 682582733 73876368 207995686 133810887 443296138 394884975 718105444 251124298 895775115 525800964 879933914 99460536 202658315 260072194 852522715 697991275 848218680 470635571 936352018 742737517 751534481 514885336 568972619 639048685 662412650 951358801 975003452 12671625 220484784 364004984 453007223 21781270 912378588 147646180 734537283 863595797 865611015 86874207 692716491 954926955 983636215 105167011 738288782 66338879 621916352 767136534 778500824 959814720 995900764 92350985 292513030 656061184 833553378 908692727 923061398 469231540 960444642 308783454 515667390 375839871 849187070 10574228 462701448 938819732 992857170 110757511 804397709 349814019 461311175 75973157 667886502 959713955 985265179 325487204 424110907 759671504 967823904 410861187 471210199 736200599 941462628 193612116 202446611 290560962 611572310 279602150 350968863 417955086 454427666 255990877 373672954 433815963 698455749 853356366 893153639 474642854 883990068 47640872 253416561 721012776 983391065 741648553 858211536 75371120 676635141 345034539 663018654 454789124 484853806 99488088 309298484 82098022 201804991 113609743 370010976 412050548 687143922 647340475 907876999 539072289 675146116 463371196 893171717 787355926 852052476 125979496 133882544 20050472 794903508 146248644 524402675 659997294 858097373 151360448 684849764 159920895 985055168 28533656 708261126 820757441 971112364 287735649 742328002 414822893 660913278 471864035 917560082 772200451 860921919 471664713 640940581 812406192 845231450 302455557 748156163 536066515 950486271 3332656 273066791 385703909 943225609 271414434 680709766 404421113 884547723 3000605 775161186 235126884 635161729 329386002 375392632 66098522 605230172 398515567 822592493 31238342 425460269 871299783 987142624 78703108 709297956 28540053 547509902 232642174 437462060 635187105 845022458 570693248 625943492 844909251 910792648 181951559 606914243 594304506 653798932 839379496 995124773 281554206 366726125 819678362 986242527 375396193 733618128 903989548 910530957 370152167 656030968 812177996 896107573 294057744 665470398 448151925 515179089 744164719 826490280 817137601 826892467 502419943 942029807 510129416 742136278 929820876 942518278 357943084 994621761 622538079 847698838 548387828 654242381 867472941 924182950 428514251 652229969 912300636 945064848 273116834 447876421 54485913 947643649 139027639 323892660 920721093 941534008 891759215 909058055 425864731 521921194 376892953 773085431 552354020 979799724 227284930 347546443 481138515 660403164 387819749 794071092 430581189 911988240 454101485 840658729 861383607 899401535 280524312 407369401 60339856 835737444 480956287 920426305 302837725 777631022 256258063 478509565 570969308 916564432 206404007 440496861 486598600 622661324 95817886 794809100 911930962 989388200 404413978 854322118 933523510 996966257 367855716 487891712 870981480 955981840 444394618 774170441 23041030 128082689 333569836 830309252 460045035 962069264 151608845 553553154 586979004 661349787 357158219 836539557 49838076 504099149 808958798 896127126 155102293 578552741 118096348 870857818 94240946 465433508 208363750 911176354 807034656 943898109 948758469 961883652 527202138 949750172 335552287 337633363 546489056 854576272 185201994 739210008 102632557 662104910 667386205 873467381 741134018 855785267 638399755 756378805 151775475 813276732 358910244 869023489 723520882 899229818 355217807 778963831 458500779 609873392 227319638 439103304 206633037 537955049 1008395 55833593 859935819 893664919 440959166 513080202 662385463 779616343 775722849 847931884 979683537 980956083 771569137 890264294 116796573 935723796 569263985 847715837 695300415 769015322 478835934 518779088 254259657 551703654 611587772 652857760 508314221 783960887 185681328 580072627 316899344 560165276 231530370 396790657 410189696 711076252 526006211 819355103 648286723 953947810 195594232 746213546 418604208 459936736 160149414 289322206 804484078 804613494 782616343 816402159 354475267 799160415 342616109 505447671 976889189 989708491 124583017 731476681 176066688 655987579 865426218 998235098 518474705 837075833 620294683 726853704 309150472 594423084 468161668 518777907 75600064 211865211 577563488 950832412 279805097 467368699 664761427 798600531 514789543 784486554 330725261 341583394 95295095 806860165 613015136 914318958 324638687 776263809 951052837 994923517 387607558 619356012 90209075 122681654 168315645 416615935 769362605 932415518 135033080 364875304 435274476 812510489 780958036 821127834 334930184 703765544 89998679 614425960 651166126 745791568 100830321 538517203 170283549 383623708 66055233 86423833 241616444 765232847 494548662 698418432 747281015 828290221 827282037 920591730 943417864 955754124 677493628 894100198 44867627 930276939 708065755 916357643 111312582 201286133 911625422 937654811 346823290 916362617 357585562 790488096 984480839 984586579 142815587 491567522 291166604 942851864 872944362 975388264 262379439 644850199 186509405 627326198 658460358 743457026 652620895 815344344 901557566 927433897 887121776 889361586 598982376 616752315 362555475 640401030 254209551 809303319 932417064 982191767 636317750 926071303 864117856 882207535 460440876 722355269 930867517 999229449 317877512 827852598 962299326 984556809 526885338 971023534 213665674 269736971 242802004 675648257 511588355 735644564 125686943 476381488 939321441 946298787 510954083 974010085 660316442 842484783 706430953 997661706 802104265 856659451 492318428 820521356 535013921 646469356 291862807 936443804 415592715 606917929 420900366 860031137 5585587 776052136 473014325 953015232 65991580 159402023 137671781 467805482 344663683 563588458 575040832 606506012 770203786 785257021 289341232 459959608 19596391 368471334 510003426 676028813 851599013 934784098 472634482 915806555 962251929 977896964 133906974 639979991 512483773 611645877 956611145 959207667 513366833 531673749 666512252 875509228 331022110 705018417 887290467 993065198 472791712 989210677 419078791 922539377 120138870 817885270 573942259 647324576 930479355 944162584 911125794 938640563 248618312 784358943 601297620 837364887 534421881 866055441 161831136 243922081 744144158 860058888 663648001 695292939 950003410 966828564 687438405 989632586 557634352 988191909 842371128 938173990 47175965 268477705 312213766 582564101 626600041 928259276 289784340 484658616 350599124 962258757 816500386 823756367 867213382 994801243 728885104 899510545 523985613 897440501 145956068 986712547 280630914 314260438 51302847 580470491 480508409 504486886 430828800 501213947 920725405 958819362 245197839 323806411 428974838 827868074 617883609 824829307 993954120 995476159 789272954 956339859 93852525 949969089 590380486 610106806 473472074 677014024 202115597 958171763 956754994 960660641 220441404 870096659 938894742 944870890 570256667 789729758 140725125 295852248 772946589 805358192 316771666 657416576 882424879 993020098 118945499 174241928 739328267 881055990 14751263 127734283 616270054 700472665 883881574 995188332 407932865 737025618 151488507 396884685 116024213 636137718 672410689 805816085 48165165 513301081 686197568 783356596 282346378 433345667 758287949 765719115 356761467 539625462 277215431 561496801 381619625 823138810 315634984 569026868 841285721 851234062 61420826 413278567 470211133 638100057 748601024 828505808 106093315 559986596 103620049 160595809 392194862 407424572 254213443 323166739 227877275 327991970 271700091 611694942 818804970 957838445 629917039 914272838 51611167 447855858 886149620 993543892 190530171 401319258 795882943 852745393 301037060 755378713 458907387 845225700 37505979 433691925 70072992 186282706 617501766 947999899 905477743 923466728 259041495 551035953 621400141 709504002 551341247 722458478 343892409 370338302 809645798 835394951 854382240 866347662 673336566 718142873 504774452 652205765 397527710 843866368 819241283 933581559 543237933 674417525 480485933 700226580 676109057 757731766 92206625 626321794 286151874 762299504 172822669 939015593 968046873 975351708 939616121 954230726 333159477 382876452 833050244 890775974 915333293 928555630 303185575 770423421 673999676 706423588 306264251 599571260 915936305 939461266 825559504 866582577 305968949 417609809 829445154 845835965 326035558 413369570 755221936 883574196 205068385 990485068 771972527 775357253 202117696 695513968 275213496 819082029 192192366 363230869 528307788 905607540 762043347 895402639 78373071 782551515 454622588 820034559 11125240 753701816 54812833 470248419 107725195 390956257 231904302 791387654 771129617 885384551 995728041 998133740 965138933 966819006 274729000 479997927 877175080 896225135 700037106 713950583 865910286 891745074 65828078 725470136 575613193 871383648 17743403 319553689 423245053 494906503 663785658 724912977 309125995 651342583 478233245 555393826 315548676 347242998 190221521 603317678 419195558 442466044 345726947 570345545 438347629 688046204 496300411 899653641 970811951 978084021 324626325 812523087 974559868 975669838 832256247 904502561 59418939 539972056 688889643 816585371 203622900 787775231 687901653 924721278 636625354 787592799 697698065 851559964 533197130 705988051 877615653 951657963 881401439 935706573 852301392 872459354 357432910 828750270 248298794 672365293 396662846 496202009 886592864 962235506 790513254 974966225 281204211 931517059 381505830 875557033 424271618 953806953 394155606 487279724 921181177 946933745 589397995 657236869 514526716 532347047 701350617 989427543 648493039 752539906 811041595 957207101 890942756 949592143 756868575 947944620 656325583 793161580 831211996 832721101 621270862 877472555 728057920 865903120 63196920 614568342 40313197 847716662 161557548 757775049 293319185 909813761 371177275 559995105 986956432 993790900 565331408 933233953 115647371 563827802 983712182 990547315 596745498 909589905 651037584 851229091 215848507 989391346 12558211 802326349 461808264 681612654 649908503 835171611 33119657 396011619 448223141 846329014 879688517 905441215 892806121 974735770 815985104 835586822 799317922 895615115 410151705 820027687 114772277 356934306 361509861 624215364 146261302 619555968 158885564 609669131 762167456 992097222 579038960 965274459 98665652 826282078 336889186 711179240 278734717 364293201 593163600 643404354 699037550 705941366 671120312 888743059 733371818 749492127 777722686 800570154 745459608 950248828 544434027 848326069 993743034 995102620 120222547 129552274 943156934 950515083 890359789 948615185 679237181 796239842 815144081 825267198 721320479 820389493 803085681 834209874 443310458 938550599 179635544 997752338 223933338 328360423 103873004 518482649 129995425 393713123 923406335 987355282 96181364 141864582 766995628 815438604 831453262 854196769 476815862 910426650 833995833 884264301 727302043 824564537 331135902 896156869 466898703 531564341 790405806 834582560 578564903 709219824 884536602 943646989 855284888 991346344 533966387 881226155 491375077 582612446 656056784 672617479 344189699 866823232 250224950 675020238 373212987 520098978 284189003 322246944 501854720 909675636 885387328 975740175 258729154 752361426 574894699 580424193 869733951 986855607 239367497 353929270 439043701 994635123 171305943 931528439 846313552 905473319 41192861 276243944 654417769 772737134 108970434 968042248 721053800 906744663 230379927 540279073 374337822 533133994 721044230 846889283 799669271 802106916 424653893 788192689 469258800 985893359 747782449 825322656 119150517 523445170 397609153 697766625 469620031 590189426 22707396 317303574 359978849 933598784 745767947 987052035 514525169 581010516 936750204 986637450 338908445 848773958 459289224 891587240 531958775 692811711 747462365 815947056 615119200 647949139 43407988 668544228 515856784 679619261 952293229 989561389 24789604 871029628 478440024 706873734 140386916 798858839 949288945 963776957 818543445 950552678 754114992 937878419 45353656 55184888 96838690 446276179 798632734 913309287 151349783 861182979 810432037 813899409 938613099 964605112 832494624 974101036 337421172 701670216 996850574 999069867 417788389 500124988 745004429 777820740 677911722 813540539 393558780 891354083 952643787 966759297 170246287 653551919 831681460 954232360 274331920 882974110 954877308 989976548 800466030 861426652 414341915 491536538 906664589 953236417 894058770 995816642 84936426 198430137 492163930 844153014 521210015 890492083 257690299 328788242 438309763 772982497 804534781 808889206 710604730 795644540 177930771 191656253 328111204 618583639 737070519 875147843 101030699 478512488 867419212 974576679 130724327 706034902 454254613 614152450 435150843 516136739 795544816 873260859 316871237 707429138 356632503 758422890 138847064 215772675 148175408 151475705 293765634 341233222 889515819 946781942 730372402 825199153 415698116 721358846 423427508 979127711 318589822 496930558 144114005 351636945 570084723 735096470 42383621 119361227 276600425 742979772 531611159 572211519 495289963 626276148 197086006 737427727 840777797 989853984 604860297 633899106 228016883 247683979 368110824 752578940 779386673 862121339 198251276 575856007 188904797 278185330 72164225 966621407 968558792 975291018 549625944 972558935 680914733 919975195 548091130 667417883 627844920 700011364 142521390 454473456 709510526 953637025 880379352 905519748 551817350 731437278 418229371 459017323 397670955 751087094 54135254 669966435 861978753 954484639 646763280 970691819 780606760 849262331 492042059 689106695 348228274 850190516 380723646 854360605 696020282 917503422 449098361 943331559 549928930 869858510 809678194 955675240 774412970 958543057 130769680 901602333 605734118 778878287 588327629 876382825 176782422 849314803 540710764 702213711 557138442 800983624 896439222 946431064 387177316 956268532 729418082 874954858 510917266 577465892 830727668 960758849 312782195 723160672 903111253 934582308 65359490 450770646 900031277 907983086 386901604 872463760 25918748 784870703 619899177 746583008 513913828 828266414 627135617 627659237 940396267 978197672 773211857 992588707 69508400 856982172 382075473 545089461 505244463 587588280 977638453 985799111 55184823 966368117 328048915 711562758 345006328 615388376 833671902 910930164 257195300 669425320 973199813 991401636 392047172 959381643 834771905 911634825 802627460 883720542 873998353 936109693 304557395 528003552 579459105 881234101 528908741 638803843 752232354 942390650 785950074 800256495 383613379 846307585 712993379 950594668 489604884 909197009 179555472 621263837 465381628 579586227 832650540 924804555 514186523 810450833 421583839 433155655 674330539 956635655 29673092 392353221 589770055 871312830 959824312 989203120 524852011 567195819 140843094 822048513 49315517 412668161 681339270 718935966 30071449 861605505 859271542 922948275 960609933 998641848 759856110 925690297 936010723 958397624 135725134 682502921 296584849 786544234 960695867 962500642 794206756 805974184 331148347 624952882 701681958 781730455 233645639 643931557 47324405 900356201 395357944 517695582 969676155 979299727 382931804 988855919 783957087 795685706 959828907 989001944 386341829 680947874 305828863 897346125 16598347 312871247 201835782 387195612 250142701 885243735 235551623 289694437 318970785 409526208 35774004 66119155 156692371 530446356 451443020 552236381 1514269 487755077 759884525 851932068 616777081 984309676 656026182 953639145 746173215 797184296 291131303 939106682 994101867 995317041 476929591 524441662 92807322 238187537 69593637 759581213 770627865 928460968 941877633 963248319 183339500 504145824 995946711 996236082 328518280 377448921 626010058 709408265 62835423 347121207 776306695 922274771 633657719 722711445 346031932 577140536 423354460 470705933 595905356 731552191 458175472 910911725 37264164 360522800 885135899 925798985 156319029 685700115 162151061 300553570 653318018 724343058 509047378 631757655 334686688 422951396 159131931 724050481 447190682 995190929 257342527 708702831 681789655 686959587 730299905 834851386 642634456 937277774 444974087 921527792 734402466 747626828 831090766 885375508 337505900 700788638 452957747 927735779 750928085 847471708 155003279 789525969 906544627 906878896 56378802 722917064 42970697 792745985 184673269 196574027 506532998 574987601 135159343 301466649 557774599 585681059 588940515 607853856 482046587 785861702 65213308 941205381 9929585 928313031 999375634 999837602 100566081 388612156 692796379 763989841 932328176 957385396 254261641 486928467 466222455 731071581 2473458 830964922 929456425 988348662 925437557 944965003 322022340 403033629 836483376 895708259 386236008 846948001 627527159 699509337 394537030 776024835 112218206 939647685 701859493 947569594 603506284 773155004 884945605 966791552 986894216 990790753 444542893 609482061 336430613 368952234 160898191 412236455 929355689 987895975 592838175 779319953 414859447 689224107 582301789 942866461 748944468 931692958 911623554 984807951 477744949 582269556 70718647 445766252 453140974 618734660 779023490 864822030 414711661 591754929 82982944 694163651 417168649 800036041 149039339 423532745 633283276 872472830 246764614 498845673 192398830 977339542 345742293 635732279 144155241 974818020 724812320 880944557 965275449 972767658 836126606 955756718 278953535 684498301 556912714 736236605 295646246 899856253 46063438 407795305 926018988 996957072 761391407 791353761 128729998 384716266 731836003 752488111 125440958 818454286 986987141 988605617 269395246 779816354 641045131 952744791 80343243 956891850 270379694 634510275 883145118 890533468 698234995 709949489 407676171 928063118 654734779 997681306 460868471 514635104 415741439 426019616 591951791 887754592 582285425 693469954 816240974 922148065 10998701 712982198 347248369 459649359 737683454 857659780 711070070 809390618 578164937 623692115 149658117 613371275 150533819 494086054 385003798 893315030 942646476 968895916 753548489 880723134 160292635 433334548 3561400 37855858 445972974 698064229 851415386 903012854 795177843 850847882 446233172 610794671 782400220 820076992 403226326 663411752 232504236 248938058 342732533 371578555 348813293 878343412 882271416 918254421 863204420 962496104 803251456 955627008 750155102 782909361 16772076 705751642 627110368 683377726 316259218 406908236 266685061 662192435 30308966 916121567 878859015 919812361 583232330 695005276 460139395 567323889 262241314 728340840 191037221 720913132 893704095 938513933 253512077 628520503 217208329 401284537 972742845 994056320 275253354 442689512 767766957 971064270 546524840 548351177 751099800 869320432 343860770 414245611 866239145 930747312 466461666 763876154 115077074 336438456 715765650 716963744 900742314 989605933 140210956 892009706 253462516 913429692 297171951 931484875 518438302 607699977 351230699 999308451 873105078 951693736 445901298 701890013 929827589 946896310 473447108 480475719 338073936 699368741 638840832 748994531 306310848 711646812 334736033 405307002 981322321 992517983 404758467 611473461 81806135 645877471 552741251 572251899 595191822 799029111 488310621 517187880 901991266 967395165 601622287 642661342 715773176 780032405 578183830 919625536 970467040 976906259 778505701 945172907 872912972 903013720 722665816 789125155 169703315 858754202 486652414 572968600 33377907 784660485 931581478 946487179 944783515 978511575 771132548 772816448 431813857 996065762 842764247 868804926 647926734 852873218 839018593 961646173 961354329 992516646 911627348 918043430 716521929 997437045 364839995 891247171 493977784 598120002 810460274 845398528 648539382 715141115 46337842 655339796 391261073 749940339 31982094 276552010 108446671 931106326 974760152 996279050 306784154 419662274 366975112 595011908 771927002 985025133 161887308 791808829 668254906 845941320 851640066 950023075 803794269 875306764 536802086 651117253 323157282 475062160 320924909 532272162 207485391 943439011 977857291 995801192 722190919 880950422 81076204 811336824 568629121 931175214 398110055 728400193 658052667 842662601 459198101 548491548 36929661 149522250 874586351 929032650 879180333 911252255 94246459 780181826 687974076 789245781 380000821 940564691 110013337 888947860 327021659 998634772 585241713 881222840 958071661 960074439 490711145 768013171 374634079 470531280 848379380 989939102 78374283 732302063 270492734 919339998 680074200 954870117 481755038 728836895 903732105 970280945 411624678 494541971 576441103 638139356 449027760 616190484 306971204 564099684 939957729 985546231 13992477 432824269 660230819 837132671 236169621 530839861 657410954 833319698 934725947 949941209 863837966 867101988 642800371 998186033 483902302 659888244 611968871 760876949 742968604 887491840 833626494 923530410 987078324 990931645 481954629 524330029 55513384 292906795 77817318 786675946 262792770 738435087 702910890 848654403 315954375 565460541 261983622 297125885 410114006 414188167 238100697 575156910 760938786 809749971 524058485 934299151 205754547 246904849 913276270 937638777 157535934 992871072 306540412 406698371 868935337 988638479 566716245 912144646 551122316 697201521 264488378 578505639 780361832 790767084 610714247 773690562 382346134 495843450 426350764 642669602 30550007 971827293 512320563 532997880 120818796 740465236 894644522 977996641 573451192 902744848 300926496 627792558 505443049 772098286 920529835 992361891 394184138 759114812 858035880 890325504 884440834 973667148 998823082 999700129 60511109 361229410 121777726 500150688 576670910 782063990 558502087 975700830 429707527 456810828 997249485 999281153 219601188 864158986 262017534 622629971 998464797 999031314 321208912 902179102 730211122 792759463 469842073 586888455 205419955 206249958 281638352 541124153 478742726 915968655 199507572 261775590 941784483 999340146 952398720 999259174 146782461 843573685 541240098 966602761 122006892 176400432 242801030 742259399 350739530 440303008 273415179 394759588 844037602 995330557 941014716 977681301 989197831 992461487 92124359 366851697 563146456 668504164 438245320 931889762 906453581 927892520 39407611 64682840 665212177 753507139 980492497 991193844 65834745 609433275 866382510 911253773 695121115 986680484 73301177 443518840 211104846 988658832 374073793 525942486 186983663 810570300 217144463 980138749 351028366 950221512 127894289 221466371 899149678 987485775 545606855 987287033 192048730 667986789 979402022 997133917 8638042 881541890 985176377 986915765 270964096 898693776 669064232 673580899 88575682 669056744 587256757 718673428 973000130 978307362 205772948 718594704 730328748 977722746 152353266 810492672 863016728 942938776 847661327 945269287 938349253 956761443 732514845 833905909 22810129 303687732 152035368 217217222 117473761 606785632 529767241 600005656 101298249 698948076 774999675 992566809 171243789 593985699 75328636 301216185 318119999 966002946 39740353 438214439 23723752 993483601 223279083 322220586 381682855 404463715 976926403 994347811 781050461 786051216 115065089 395657025 178101791 460632921 45680057 802330073 215895788 565201608 229398381 313193339 423190294 424441497 169995499 683779352 612314905 739566501 501251055 883716207 552507421 725271880 20868008 76566517 684707036 713589203 502622210 615866999 37856433 109775696 938337116 961665256 877461048 976558148 90292500 901969418 470967099 862307301 81386972 359365578 946309715 996982346 627114218 870062986 483619949 947365830 405359684 613688914 168350619 870687118 598147344 683524198 424886579 953674669 868051152 943129496 505100533 854503522 158924101 639913049 790708082 913223335 713895977 875201671 486254564 933355079 615950161 627713163 83666955 671821950 258091933 985022052 377046877 720864497 448226455 651141620 632897914 637835416 333445129 717247891 108232262 270346154 506013372 927241409 769480223 786608180 313827138 448716279 328460780 533726548 972604460 979289263 698506419 807813893 684633304 837731559 946990704 949781297 283969002 903518160 588060537 712269090 634749903 648759883 84555438 816122387 663542647 919231527 689512724 745086961 391814690 543202993 3415538 998502706 456685217 717937227 157362621 740365901 950901011 998876055 311726665 807144607 669495506 757169565 572853127 616866143 610575717 704729972 129326090 129653352 606229097 628849228 903704022 925832749 995506250 998624820 272315123 423332002 151773471 586195219 600638021 772725934 928356271 989353505 341129907 989513491 999084616 999613765 292488622 500246082 234503959 838477343 314676742 398251234 773520885 912880930 568625761 957012527 610554584 642407043 550857133 876445389 107160815 783246073 901084736 986877261 825893239 932247086 672036385 995114943 885728102 892729323 898196295 959303506 275227222 579874813 700748004 750775861 212643343 769886069 8582613 283935250 618041254 998967091 177216841 323590033 550806331 959531299 673353007 811410687 526114517 753588232 228348798 739713473 770338259 977668607 350467440 492933132 531203337 920408089 224120166 574266283 661829460 816592733 136392537 477973170 368331608 652945204 635877968 717774586 246448947 720613464 478844927 698570969 808600077 854324794 175799860 365073404 559894940 885154477 786833011 901198832 439377414 775453352 10749211 344386345 508179365 521905113 718991414 911207002 884045024 927742306 252347948 815192742 231189749 682974284 985258448 986160554 476983143 523519088 487391268 690257974 929967706 990635467 247987473 534073247 633065779 772259698 929535015 988189321 989579693 995214759 514597337 638462564 685363808 854974035 203426926 580108941 226640774 635197498 37337819 820408403 221640198 560492323 7396978 775925307 404946216 733574354 123451568 594634103 599496792 898160886 825462663 975844117 4198621 138664436 205272280 999545228 65044470 989345134 280771969 819875182 40362903 225079855 837352380 889921088 197921411 834387481 302306630 336206225 233584358 951234075 994197529 996778708 954505285 984605169 590730854 648317540 909412537 938696720 389049566 672617126 195674623 679889159 611490413 923349355 512838766 668932134 164312022 885692265 193505103 328847830 906098196 945799701 914925149 949642363 250673640 464536902 464359266 871020077 163167774 568406270 174657487 747191312 741078955 937321982 624485308 939208857 894747239 915402930 576578700 978833746 305825627 783567096 25398211 433569696 114823860 502986163 127134484 470970399 589938696 962071400 318422050 931579289 619177353 682312045 985438999 996751155 70854485 619635939 710319915 831145782 885847270 898108660 156705213 727324077 858224672 903785531 350359754 724853216 846102027 888170120 416536591 819704545 944395741 964980562 961342771 974826747 836289086 994607169 212192179 932041228 943494836 978531289 139315814 893735423 546825487 883389814 569492748 866232443 532340208 657228873 757022231 836122077 399217024 809007933 994606330 998574713 810226256 991765817 876150627 953253894 585163325 640949674 539071209 737721631 200979731 476145755 403854819 756126850 61740035 591523949 227748840 662394905 995259253 996269487 379643684 714821013 710137833 971135029 399422671 491794899 146079860 797762666 390007745 677538439 80639765 546790503 761880062 885689856 450549445 556789861 779523792 831840730 613319178 669865828 375758698 845125702 613498400 915425840 596991955 651611632 776082095 929858844 247386831 502682649 388305979 715974629 752296065 813173123 950821664 995928734 633242047 916232482 570946998 614460913 94098847 117533257 479187312 490379894 636288698 866661575 663616379 942429193 958728439 982496208 732840942 902580109 372253254 569378054 463662969 926782893 570887543 724205642 222945245 775024636 88341764 980061244 909418693 944375722 898943469 899349198 901660563 917246332 138870461 683800297 872034720 999203275 536109233 618919392 724595257 817943505 973523991 988454492 719961384 806039248 982085879 997596886 805450639 859189919 523578600 539693860 574897715 629459933 997640352 997904619 618069308 794598907 905743547 974688032 751509571 923392943 777633596 941315519 804963414 829176656 553974576 772512009 284072147 296725383 472788089 712255273 963180151 996940277 879778692 899769177 693640719 856650566 766154030 967116620 358644546 420109769 244128811 246983009 696489829 999188041 569893319 889630756 273934767 632735026 340094590 364178083 353905946 368380334 357515565 850370154 347032891 663249081 892537261 932968863 118024430 946201033 774956960 841605885 325219354 865887020 91045524 255054178 335203400 816484358 261154324 312520366 458908247 648352066 900176150 980974828 37771779 260320791 526583132 725993604 762204499 770869848 268255902 364234525 755818409 847361238 104454225 741753063 700851022 736358069 32377318 413427350 916574001 953997439 202072628 654484148 590338491 640174624 732231443 881947768 973658590 974551628 837628596 921006057 183857405 428951155 274290897 996607795 196676450 386780616 549036040 596568790 415327072 928995596 707693239 980806527 689349673 985303346 338036864 666372190 908890243 968640487 57447892 883868036 175068729 228260014 742184318 875000163 100515193 814368134 222042814 416286055 209980765 857063431 123389419 741870963 790259825 982881987 111964321 923882219 467802939 797454598 354776520 487060779 271546128 297207118 705767245 855433840 129670219 387575932 636545001 778450096 392972240 871347287 803748444 822596430 942292466 967719375 539021790 778630684 198766908 661360847 632567497 716161614 616772518 832772639 814106154 985099293 73861241 973896838 102037059 567294994 952701501 966640062 556031200 804344906 538380091 552323499 694176351 929420951 38932537 661342105 612960153 886480231 997197308 997656816 309485930 595687112 210510328 621065301 336500004 744531911 17916888 599422057 356163324 440408381 949627354 987705562 931898115 995434985 952919664 996294862 295643256 768212142 976992037 977798167 61761038 126507630 134358013 860535331 355002819 693830925 731171622 819164391 84482394 696548068 232815305 447843959 349769927 489294776 917143368 990868948 29019392 85279052 660816647 782368173 890820243 899649433 577458361 773731807 560361160 891199017 135396079 620663756 683506622 747447858 792401055 834951549 822945020 864550465 198922244 616920756 393770372 950570431 98003830 796123788 846067497 917591063 203648870 363780201 263226631 750533637 731077021 746801244 326017806 565490260 808607911 900377920 315996378 898447166 298806682 915616469 637697994 899306953 345332500 651377696 770732433 918813942 881675696 943939270 246699821 950559800 49796435 394418677 982499156 988166050 842976827 965404508 583085561 841975658 884821318 915586609 125696807 317180950 898823163 901251178 437918695 452641324 587439427 701506594 295756847 791474394 894537110 994191304 197283339 608279678 196876725 427059077 70507141 857728512 464502268 552933954 796134137 947969307 401701511 493967917 653538354 757593785 124900100 932068600 848105690 933113637 182148833 588942966 348882992 438249737 47859499 197289281 140379437 634170387 855517397 972236383 898676319 952892653 218053990 448399115 349594604 847835238 341018999 572331787 851849088 860258257 138163916 402184866 253038411 423802363 139816032 678373395 76089221 235128125 17142451 187654084 835328876 878773802 432806205 927069426 379059564 547513425 670257660 828709634 326828013 776625896 475772983 973165343 713128848 779620471 10597935 74198431 523866166 922828124 81930799 565989808 757663684 843781009 996343584 998941708 698598085 871678084 375540446 556035390 685173589 830397074 860139830 973210519 127319494 529211330 887793685 984288299 344545792 940364017 23349472 878070981 177274654 190478304 244090039 364495937 64699549 563333339 569821688 792877796 195442951 405098524 877246996 935846076 683024579 747086877 237049540 810985949 984466668 989052077 252135430 906994451 77353548 267277982 635305689 914298344 331323656 921026031 192085752 499839897 903118442 980940732 224800532 734836755 381697642 963111383 91812113 529915160 329916217 714540051 161377843 632433609 225410274 279713977 761413329 793286022 596999418 815439877 487201263 798761118 667180991 785604138 593852911 954280957 561200343 747164473 562243837 891715456 270673650 852004329 49419429 526005584 998208787 998696443 199653889 202095932 610133067 990416002 451411928 632859157 219214147 659538995 250128196 355145197 63642199 321301227 618013766 654244418 763671299 875746479 777086198 924168646 836195139 896620126 289401445 812735375 332688887 339072292 384287566 493256381 366880651 504974048 521652890 898328659 704229504 776765044 494296955 960360181 529108510 917212616 49289902 770121176 613983339 852409146 668313431 969721580 841740779 870429782 290061419 774808246 941205666 952341113 821088635 939639602 483565484 829036519 915972820 955725773 886762022 979468092 272169182 387200832 503050655 890863612 241689994 999920025 657461926 724890240 503616763 981548512 76109539 123679898 34671186 764050746 397306086 966572058 452725922 759745958 430889256 504620244 29347238 190112907 231014110 496734441 786999517 837988819 207627307 611358443 588401983 803772327 505777293 702939416 922981201 939914619 49123136 549666947 195956784 812385440 866469744 948097903 539033177 930863888 849144012 878528097 581081663 640795358 763017989 841465036 278197689 692770304 248496770 659449321 548450799 573115354 222811710 229209548 507509705 974881897 902231439 959225638 662491318 895266098 362923766 739853469 995810772 997016560 115279685 228161295 234595472 299725588 978866576 989676249 178498099 747646493 980604682 991489826 849082119 862608318 151009642 750542020 730367255 978196140 35487796 781372692 80267140 955594494 510050247 980111893 275652070 950758256 233039593 937168236 330816845 781153756 829828780 874423877 493384028 730332186 308370415 727570769 28983861 173169857 794581803 863032689 135256207 340439160 537550790 699568569 921920050 960818299 784573053 989288019 775270748 778039064 900128532 978637139 121866358 310477310 382264193 430813119 761825881 877694287 822614181 837479608 477160338 781383356 469394907 721878153 280811372 969138633 113836419 945832606 191353467 277683347 654266549 714060199 549718783 819518017 387375661 425996508 534518730 583532388 714110683 715805557 584310777 737791363 751489671 933331979 595503179 813303351 210507347 493016442 271226660 974563108 23262058 681862066 607347036 701031437 896149896 976699354 449952881 752121865 953739871 992648269 925090811 980910918 531558626 750533163 723441583 753068277 248361242 359164471 605271155 890777545 41299322 112855420 659141510 987919790 815952453 944556343 315694172 393945733 69333525 97612327 475036007 512048238 264528891 404656435 233764773 706593390 325603228 341528354 886912637 899157197 659799622 848504706 931272959 951798336 354832484 560509559 947051707 947612535 317201359 739138814 715072650 759271061 755026767 993400752 899636194 935689122 359108683 877733374 259132654 718805512 781558843 827816854 372763467 500571837 61706799 655829966 526114792 853045699 360249300 369108823 464852118 767380185 836205936 859382051 976970638 997564037 360240216 747975801 953701898 989371158 776214881 801094205 10059305 631620723 292076956 469793671 399449583 833558161 164015332 298994565 755997971 906826792 916362131 985854585 740131827 881459335 418180105 723314087 469064406 669647109 578315952 592688317 189359821 761758465 854109357 859798836 2263304 403884800 179420467 334820983 840199943 900803341 768456265 910425055 841467658 874908551 654914045 818918368 897656561 927370174 284600403 529143137 651298436 943169995 256034365 849666443 351748694 430262206 629085818 955691003 508304382 716074836 796951709 973522998 22056994 525120138 706004857 749942820 872199822 995566702 643655471 730504740 153476322 428655001 980255378 991271930 727471911 983110289 86733925 236454725 701869364 733355718 272693872 719250543 249133608 276768442 554481382 852070983 563575565 745280490 696487186 799037029 723304011 789525612 564283491 873206424 718249010 970734308 909064872 947607888 849449787 986355381 467443646 606137567 650494650 670094003 187055463 504922392 335030584 373975021 599300902 660122199 518967446 773598978 691226787 858285643 663498720 911367966 945823431 963192330 116080009 317743666 901682839 928929357 694986978 878330191 912208658 941092519 736055195 761190505 230803017 945888114 593572828 833312159 773771892 830152897 593281034 637435533 365898038 808067970 44134567 591843237 536731042 632630805 179469528 928797510 657197292 868764411 114571710 673124329 591758420 839433890 252832532 684214216 8300965 904347834 365848497 621107812 196760586 954630651 723614969 902693922 126864779 603958569 431018327 472175638 77095741 218602175 834654297 881077009 338004002 643785516 894413488 945883250 362663826 489795666 797898175 822670919 802031028 836445314 75966660 367331145 802589668 932883345 925423068 934313292 366592983 914889200 794136765 885894231 580167129 929003170 183572535 558619544 399606178 626115952 615998276 626668314 589088514 713416279 839321634 897491625 846007735 968600375 260458885 675451707 991946478 998004316 443742646 536926317 385057434 461013633 375516558 402826137 228741736 836611314 577463619 849474470 392249204 721293510 36895422 152081726 580022300 765128396 899728917 952480213 49036498 262325323 204767984 767535628 300919804 734807297 875138494 997998804 141539586 980005714 638996074 939292298 999897196 999944197 660169409 973304584 419877443 592714277 663560232 764921496 224277985 610793317 415578020 922231915 412718087 663896852 946530470 986140648 244652105 763560798 828847667 968774084 350179769 471008290 27681062 427437904 745184394 830648983 899218002 981201571 11336594 285689287 325243152 624140697 433182806 948592611 109296384 931961698 940183005 957893917 711977332 751887068 518282291 952762355 393529461 553579102 36000225 352672209 26521860 444401498 153659973 808864366 393687206 838592273 62876697 306508701 814660396 823097680 683287478 842470719 437734631 604322933 151456376 152148578 696763141 981456642 852413216 886357324 16129233 593661307 969006624 978748407 394926806 644846952 994102116 995412799 444943825 838874590 755045437 927685584 706415792 770419682 685331544 940906895 851751645 902752545 622231827 860231814 284603290 831374784 634210651 882866315 659402809 841072155 697508914 924431051 298647125 437221130 61631268 479431810 580055714 812387263 533752414 591096293 121768501 281510671 797333707 917356057 646895917 941920417 424232147 765766695 126931901 552560263 547370436 592257406 532565708 816709468 883469040 941600678 492674307 880543561 327290423 510363739 729347174 813852812 599603604 726639893 199945468 552815117 542158766 832515034 739740546 827463567 867195687 877482660 239936957 534598879 528080090 641678155 416817500 967986588 193031682 782987123 802421558 871033967 895157056 977664117 80411098 707261418 788866710 798059213 724356856 891936623 818284177 849800809 478569181 897629692 646746098 954854160 168663419 263698566 93342058 731988751 976503384 988732068 382349183 987430271 678370630 752597321 435664999 917203964 213235015 501355240 625905505 680958975 201305562 447475533 522406166 772414431 585964961 860784126 55487247 591844863 609057123 784633026 132068169 942294132 885152728 896385093 685851169 884122642 95907579 286745911 177439349 746622618 468283406 478932256 271520637 318504341 993607274 999928175 537242738 563609218 597650547 997647423 418983214 782762148 459908911 566693504 596080819 715246752 242673088 511914814 646945329 730512416 900703491 915081193 663776521 907088456 757911579 923374195 170391949 197497930 671846910 792824318 663122452 774066247 398402750 511362740 281124496 571914970 633946025 977179126 888231610 958126661 766615673 800449252 840055197 972575013 811608654 821123240 104602129 632509517 645877120 956570613 141904968 623325487 962787084 996187752 193203448 240432134 435622227 932827028 602873232 682854328 700840030 732626828 695358580 816418373 491983869 965906884 675400838 981295211 623506050 741991000 902168488 912666079 167299330 932365485 910101123 943038430 926100541 935036178 373036250 940094331 317721409 688032078 670959150 724115308 985596224 992777030 283602767 617114026 210795909 529794837 696354093 936875105 452422053 712332622 281416332 900408916 916618409 951047144 840914084 875284758 473849623 801795644 533193533 746804050 189396503 701091717 62916092 80348862 269856506 429728806 389198236 472078424 551166935 816634693 695575622 700295322 700449503 785888148 50864702 329851071 316163448 990876823 629340864 677717754 11579612 905776269 161650488 362560367 737321639 797488526 50068776 417160644 1586493 877428249 384864149 449182564 732965619 743880968 320984033 571743084 545860087 562817341 309395912 332031042 214263194 325357280 741030478 872955310 470984195 692579846 178416648 300093269 488651599 718185735 239279177 696846731 859492364 944692726 626039317 746424222 566881011 816042489 739105229 963353730 365509776 592676362 148112500 480924293 497016712 926435567 680489188 909757173 611355343 806238526 924975476 941625947 356237914 788544384 411033259 915935305 708902082 917782440 761097687 849984084 67889801 472542074 15287956 295872524 344202073 899737666 495278834 514493522 447498532 952263080 761429323 825345384 957679595 976676412 835182204 904616408 730384508 887546731 722972959 861897467 605065332 817803769 126013747 684283851 163020196 888180749 33141654 353403600 496540216 617950475 891366690 917162714 963664200 967483208 228316237 901356282 820726174 906281495 357863635 715446517 394708919 618893128 648099430 773999543 447334848 857767365 393088945 569260490 872723811 983348520 148126972 351880163 368942394 677152542 757527521 761117495 100609786 210018154 297932739 484229820 996123928 999151118 356308328 906776277 238927665 702722088 725314962 845538554 514671737 846842746 305082704 946492336 246817980 492194440 429295179 462701998 691975146 990467134 75276291 904569301 780488114 974659365 267219557 399391450 991024771 997465203 656458811 667447426 13068923 467855601 911245465 934878825 75665974 916250293 397443154 819768380 193279869 195711849 137630814 926363457 158435092 448810753 53523404 499775777 322575275 750241410 3384569 311654907 753762643 820063552 24837838 232494411 782990223 797467771 986838054 998887792 250118941 355687176 374758829 694143674 308057744 795013425 583375364 937349310 566727460 687701233 209831332 453470824 250733228 599549214 258743389 624329889 285429623 937443198 239664454 387012722 568436765 948337021 626644969 733495214 147720014 575207318 85676954 632215866 260305595 882992234 360810400 914123339 158292750 479020968 309023992 438138942 350348623 781569970 379032642 408866656 735199250 894865533 605307890 683255664 283823723 506872260 374315255 541089249 19890156 716070520 820700811 955706566 285183720 729304911 471119969 958111166 765953283 832316131 570399525 592918869 399490261 905530460 391474569 833011005 654129836 720633804 177763751 227389400 897053788 929552529 113623042 988469333 636767085 833582341 733116567 984503481 958763036 971583625 732254113 933651790 76785421 108500501 117895804 789510584 621317133 668763090 848180390 968262142 867812729 887080746 286309889 605800061 778088939 836954928 590381722 665956613 358229760 418955100 830259382 858838373 183024561 912525966 157580070 489247925 351962005 808516127 857628396 983108052 50047518 264471626 347193014 860149498 921687247 965763194 614724929 964172206 685690833 745030951 952969680 965918833 598408276 786630586 261061048 269311513 494101245 802096069 897499143 977579398 933834300 980923174 775709675 991311833 390961912 891807167 636701571 758677378 679643114 782295857 519863380 712871213 154829235 778359094 443881514 765187959 800946454 836938991 798518638 844079126 337140177 915914425 158366876 524456864 423910397 778253407 580406708 631435800 635711166 697187979 277785082 355494904 498337174 610609130 382488963 892911855 627443153 986137920 294683776 846809932 164507056 283305953 466340495 496221808 365059179 986884616 801060748 849214521 758246929 759389476 86084040 912093548 856041169 881611855 786195835 790481643 589909256 902876273 426570666 728044863 449714331 486547296 986624097 990136922 641172485 847445488 9247297 905625010 417861344 899164767 938004281 986945994 441410988 841539150 142233775 164627150 325851113 940422506 920093891 995852387 634763590 740141117 962441096 995223711 30165630 786114797 301687866 519231213 181884660 843507299 903206216 945933510 704754788 869590926 665999804 987832065 621297257 672248598 234320257 480068093 369459536 847786065 945049975 950753474 791529844 830740449 721551245 915341829 802786341 975185993 64263682 493716978 434785903 480081587 940295613 955184735 919851503 920304870 281477245 310253948 748546573 830990902 460402829 620342720 807407336 962377793 15544805 803511881 344117515 783121747 687496780 731645158 841769749 886582373 797571905 880636842 794604348 907821207 31111115 539482061 548918774 617400783 837305873 871042649 854496866 899378802 207644984 788074971 135729775 721496203 166059619 684792778 232761227 821178453 619686182 710416417 671124441 734045445 43623560 375158843 263444135 338371597 371783316 876802401 49724475 568167004 785269891 838406774 21290286 255254384 388983095 869254224 156725421 947212976 43753009 556663982 967904604 980576932 464762891 728878406 138893150 470153180 746726618 773478414 84838381 807749776 174887007 749373934 379373577 824808822 122882655 267791371 395668101 681934760 804203651 998913811 318380557 369188409 310422826 509834858 421588165 620222724 114051460 499972647 151990837 943846856 116376871 272802616 161203348 590910448 427521234 715410670 995732987 995990460 602501169 969253309 953838602 992381022 606321564 831440216 463185191 646035815 327455496 495301849 569059424 727843329 134709196 333475081 64133952 134774497 293928176 681497009 379668028 772586058 892056033 995161484 734380499 832280412 540801454 996813715 166891780 998280094 364714412 430659864 1020334 63756494 979176583 999754202 473034293 760092395 439989165 976751624 167148490 391943513 635767506 674929550 490026251 866118466 77764089 623256290 512863273 758364061 507391156 606994354 413424722 490242008 610743492 730650508 583290790 797962864 138354843 856586975 847016069 995160478 920593583 993270324 453739545 947761177 938504722 938947051 343585416 910413125 536247792 796291212 974327220 991457587 43189053 503746012 677416221 990063298 799223707 937590202 679182425 888360808 889601258 922178047 736254431 779189322 306383039 398006121 240541026 418513909 557784196 977282973 296697185 836677642 1840506 962135226 686691350 937689463 347871184 741959135 661863256 863553743 69759319 427299986 430388405 935571210 649732944 764262449 835625728 954857234 958866320 967134525 842371722 948063190 85803818 502656528 649598232 899556145 487045640 589556218 572868277 703965482 257796359 479503205 985930932 986591903 433893196 978031512 947572321 948622786 173720372 985367724 572382598 894123090 38686424 701241386 357893745 472956173 848988173 963660822 170312081 820957259 199128154 938896181 705948044 874812086 519194505 656273570 836920996 947262002 563754938 582590342 430625623 575368496 708313723 717220672 924166804 961602140 243981296 936388905 976849494 991049864 676423086 901674963 649825528 961487696 710913494 861281830 431999019 563748298 96216724 714242224 990078789 999787214 780712195 994123928 314838735 813012586 891348574 913761257 935118399 959997934 846329348 898926237 35899279 332486420 535105217 559685627 814398212 877137205 840941864 936269419 236382818 942529194 654339949 829960075 828367592 902161834 628996263 645509419 261930766 970814260 685509959 792726280 921957564 996560128 915431144 983787389 392657904 675298800 291923106 965409444 717087151 984925228 14255476 980099505 847623625 980098768 770732744 838077064 288976794 704459982 754500010 883917870 761130030 880654468 795084343 830203977 206059826 890905066 554743091 870353669 959690102 991296003 838886235 883973835 991325588 992454264 144276703 325676055 542112381 989264905 584384192 810811728 127048066 221573823 239670980 880888394 315075621 532057059 960864860 977359752 944274986 984129798 694334041 835726860 474476733 490448007 331654916 374935948 329533295 383275477 270590744 563820340 576237475 852132083 403520134 478625844 438789663 673528763 963383423 992065157 177998069 277776123 407141593 943663022 841108673 928947470 370790367 515215747 893448939 970078913 453128567 946396567 693408902 751630843 873429596 951273620 398823400 581617137 416342782 528738491 317175463 549008177 639103013 931509864 350379201 787011570 937044409 998932708 757720683 825808311 282734839 637369162 297885247 913406883 954718288 968487377 917988086 958752084 19614267 818102237 725995675 856995823 584645796 938947246 278838174 351544035 898791377 981575682 804001039 973790946 829937940 935599238 786931411 910468033 512136845 927262301 206629851 214888523 491485117 503254990 305455000 883195474 656747599 890529269 658398303 960546202 541384354 594097610 630018547 765525022 179631338 423700420 787010315 849306243 334624781 440619690 308542954 751731136 558794287 979428308 353177831 581473616 849625970 976091015 866914473 925579608 960768717 983503819 705493968 943690923 955030793 971661412 597207511 816736451 637071883 739555543 585955584 722039143 373813684 956518235 643587516 932127375 785684947 958077695 836186688 861973946 482647087 524090399 505074363 926860396 488736480 703061493 155918028 619731686 509374938 967326256 455483261 604073215 323632757 711763767 224089682 277136708 536015860 688676960 129820361 219609949 272483890 805690874 180240701 287859517 957702328 969754620 527649064 564747170 661132706 873161993 830587673 860042331 614614030 803145494 898952357 966409516 134755544 755201907 676011018 792843835 869824404 977936682 414969869 959498944 479702602 905643486 119439763 151684942 101944021 508425122 223901077 288133444 903197667 930722878 761894938 831852695 237556917 942941335 163047149 994627570 155078030 212672823 475863904 903151282 578026273 722227079 368361345 932860732 288555062 295658871 802209061 962923049 863574176 979830320 943933300 965103967 730855985 745940559 250711221 946185339 733746371 766821595 80520910 464269524 126638655 277070535 166625850 263128648 51752584 163251126 401408519 912659219 248276907 889578478 781114693 826842933 609669437 682521580 320644131 804186382 914788704 969267312 342599138 507720233 963624649 966659479 142883245 559029647 346234907 748963380 784266773 875217101 483480540 945678321 635577241 741660186 620157519 876336445 456121159 933879233 106773726 995846510 357505165 375335530 888936401 898916744 718669105 957503001 302171772 633182373 881013628 913075001 298839323 575530835 107730027 120883487 818413462 898203269 984951153 996690516 699610202 895018327 98208090 662607898 623388033 843153857 817765480 873402847 659298845 867527699 289953960 858333041 133430315 246057335 407645882 643401838 131231255 889626161 729686865 972367616 947628197 993505452 744740623 844384437 79100060 718602274 876766642 908815998 226771410 946849475 736531673 783897343 173821780 901900070 308558101 361896395 104697135 365988893 119602342 398625736 748282220 927545220 406387665 664692951 670132182 986219566 92242148 901650240 40708876 137747336 429140596 845143682 841188825 896501461 393062283 825069065 660316915 740723615 827741697 837431587 74742516 263687693 958326582 989884758 389696043 773825952 321745032 750845999 269908473 306411093 348713808 597685422 63576669 719672916 285959214 625436412 153553254 355235475 82557688 140323491 750728916 807151477 464216702 869644122 848587670 895389611 289844922 526082231 505697530 710856135 691651452 836261456 122794626 246173872 587486833 892742760 849499529 941426480 231304381 998799295 66960142 108408937 218077182 625145735 395842924 657285980 957257083 958265895 861930839 884285517 44813649 200567150 8754563 805728582 609600119 728839668 224994609 740744812 633476099 769327917 441723135 840303748 197321881 595787884 589937278 695820934 308657998 887597173 825057400 868147757 937631588 948880947 746963353 854800783 576216136 656702024 788276635 795099962 891948731 921086606 558496117 694677548 4376057 862033448 973765859 986767458 616472569 757972281 738045754 920663632 979991625 989290798 943702850 988516507 265455180 971263510 919388263 927027886 169963509 380550783 397499943 546932869 337571452 598265666 584828334 613664512 387685199 794225920 101466425 317208346 864402093 911286795 798686601 897743647 145057975 985004101 512313754 884471872 753984257 903268690 47443759 818241393 515369360 865719989 741447488 921382739 350242148 475353799 236247694 863088894 61546511 775240371 987821018 990251929 321350486 581320192 459790517 991573747 563283626 563635505 290941226 354801102 331527872 803041602 301241218 341106350 435797274 473472793 484799069 814570673 655207194 738086139 547921099 884933286 824354116 832051226 113716487 823959106 896516893 957182180 244504276 360716564 381131655 643978381 868030812 967855610 714027193 882602653 291642260 342997442 406219508 625220364 16472304 412138884 473430256 859661062 50590198 819929523 204165319 443641559 752548273 919787893 817753905 821356340 335445272 822670690 733417411 905170321 226036963 584518981 585268386 981406381 112154724 199434187 460945122 814367769 16435421 617903377 263264923 508718398 265216081 907415600 936814470 980622529 513343804 646594338 644523531 970126896 587867734 692538374 789270640 980630584 671035977 854956478 827763314 887726332 923183641 981280721 800800685 957404937 795539470 856509526 810405144 987783019 988972802 989661825 500962172 980067277 550066047 726738032 948891274 975827123 73717838 745934312 585631951 933084891 523976842 818713989 597762986 605522955 631960658 730151349 362062758 420737774 69650917 957423017 284857658 942261532 140198455 559340795 168146085 303929092 820063880 901827132 685524066 891302573 571257809 981829867 745324087 974142224 691471416 781778601 728130693 891020551 522413588 735172550 298393019 564038541 61505991 889234418 195482051 355649801 42448749 328163780 595144339 782251943 891351648 918112177 123092018 835281934 883633812 950418947 58342987 969471371 86803476 907063771 424804327 861076746 377395079 819516666 972806676 986345929 111071199 332489073 662658713 854416872 923829602 949906665 444529492 931864716 14790755 322295188 503332460 526956633 826316686 960282697 774652227 943278878 922937946 952340989 82830345 894261863 995840922 997266810 230121818 311138059 258541068 610412799 979063160 981294458 678289525 914331701 560315016 980156668 884405102 906777896 787207719 814458747 58860041 897461092 725996375 894690072 434422615 580760487 442072599 741517625 560263424 772536376 333390137 511266626 239408186 899548293 246454043 547019342 872499383 996305553 158679236 563687749 357064352 969704106 306831657 795819933 540363042 994195171 921993932 967137870 507608146 955268815 659857464 741931398 611100066 773201650 175894401 291779975 968925679 992430302 746948342 781496155 979913048 992271707 452662 228208591 450825209 527522155 761252388 971988328 891080477 901539254 317252661 953974398 420078971 535100821 498755352 745449422 683101749 724500040 279158492 709942467 296472454 628995961 763460242 986425225 247832043 404358949 463404063 954317998 600997319 793499878 64976341 443902324 849978429 924872469 264801457 794810812 490948507 905043858 11035886 576103336 130466721 983439487 848850465 858828719 769487053 783875027 205450494 398150071 586744262 748722071 728178571 895314841 713255421 792777851 188926162 299589673 913726360 952058350 786117225 931451655 435627063 816158637 28491820 805606443 202751179 636823010 695697304 747090881 131728048 597501063 718775681 926056923 619623868 629917535 595361920 782672617 448571823 550552216 540425192 782966748 385525476 849421343 518373896 661551230 268460622 554086544 328601184 561561120 586602023 903139601 111301986 774432201 641674813 838872127 422790652 448547205 728352822 929731587 189009805 939666253 600645405 889305798 192271976 534102330 421778248 956716055 500082531 868200010 22797157 170037805 303327162 991833698 543070549 941480329 596828361 802879657 49086364 975627886 455352342 699831338 226636736 792849474 887136261 992097744 187775601 719461913 658536522 872184725 513237572 983258546 939663341 950901398 859834905 919788045 9584549 539174356 658987177 723594079 707841314 769323366 724634938 772410038 144745648 236151495 95572173 840464764 160544177 803335613 867311472 868627006 696066006 905577627 788503108 840213897 44653179 863785986 457395684 645558583 7173544 848099177 673035997 680297232 462042330 919899881 636054772 675039525 512514732 903858632 849041544 976567977 737715080 952212001 247903660 888236613 987072120 993596186 385751950 806965132 935052050 961124673 402939132 926194354 689220806 957184687 836905929 962444555 376327949 810889065 954630980 960456673 311278993 373510190 641853786 739181662 294037319 833747577 8147939 896825551 124291951 790387385 397812683 945118903 576930625 649436173 975770752 983324553 712303774 938923583 357105439 532628765 999451728 999996650 627429701 964764953 216522540 321657755 628819885 880552184 966059636 996487985 512743138 937508854 210279274 503713282 495116920 633370693 351483445 992398425 572083175 897268748 439510484 959246603 912101377 935344211 339812978 432458227 562616461 775676649 145031291 255745345 7786063 767593924 511368492 648115527 545021221 674029420 803978776 911350518 718046374 998158952 842784590 934995663 676095987 974042354 971199319 983838676 723359327 859594720 460510300 504763893 606034977 784618955 533603237 997653651 794633452 806221575 180196507 528717833 780395331 868416876 434426933 839843129 405208876 933891013 757235305 949347659 955669362 975166947 986717745 995477417 182177891 651421888 329566841 759181806 713612811 999238279 104359678 183210393 134617256 926127133 840018331 840667639 273159732 538332400 321259441 519177267 363202994 409037865 934555873 968294463 209803151 813104064 645235695 660963176 338416959 344813820 278575636 772338751 433664353 697138049 780734133 799566969 687894549 768360702 992354225 997362865 604900037 978258436 655139133 764889425 149879785 819587923 270453357 605120747 999335315 999396464 840059867 900634133 646774906 950552329 27218636 135906528 41123898 511552106 305195338 953812302 161033621 302829663 548560788 636366178 871196518 972764384 697398896 770356309 165973266 363625173 505943723 755848348 78555897 706767411 156163598 927976950 458648508 798009337 308912997 622123489 527547974 912043639 244673799 511740747 877180583 943019917 345428506 385583439 998362435 998803570 749268388 881992196 696558854 896044755 357981497 815915455 919765037 972469980 906197163 956784512 28969725 238980355 245720012 494115624 680441001 961116452 837085669 843439104 812194641 837236338 482246803 957982728 758436191 899978165 482715447 630631509 277871439 770332574 645270600 943999717 386835550 404958356 412744412 608879564 985339477 985933333 213485327 496995746 471929800 666798403 354452020 516577995 938551261 946167230 920149456 984808170 225610257 982656988 799263212 896975531 737985259 865694887 13535175 541893197 449405955 834539503 946690437 953618754 909047300 978119140 819492419 873648075 909671418 952651589 559707433 603654312 181909331 361486788 584406955 970421052 609432683 798925199 818103358 982828961 565592942 684022944 151562531 159780896 858254627 947438051 612768837 760286969 268826804 854550200 377215751 700474567 897893470 994696827 511519562 743660150 467782768 831083988 440238117 844226997 200568236 358082176 195423485 469104233 751576309 995877726 907149185 983232037 411529298 512427313 392643971 458091329 212974317 799094318 311192399 620209954 916571352 990790633 926310696 943834764 647371209 980529939 724113596 909796735 338384403 625984982 163416177 406659558 519541473 711597363 671103213 948639727 641638081 964452745 740234030 813741129 778623392 903244171 231364359 637505753 232034023 367868264 805560436 921512897 810461100 988715038 307615771 837645257 546246348 613965461 733990069 796041669 484014458 896745088 595800458 932874340 16193624 234982795 311784776 373874207 41213381 87503529 764582059 887941596 811201245 969218361 179090389 364793319 972454925 991373169 541253955 633466115 945250939 951908765 648904513 886425202 122392804 463789618 266122015 758783049 245327893 798227347 473608122 574444480 705336134 994691150 666156616 700438819 893698799 973009817 898919436 916371671 838218167 843686131 471106446 867196129 666806672 937697553 908470484 923560714 268756967 304515877 407788035 496627255 357979554 384020772 729794762 902188124 39902209 722966811 256620555 657200066 213078728 437012129 844196714 850334241 870173806 914962523 684672160 735280950 840605624 960679332 680732818 770985818 556339333 773804339 65072919 987695278 759968299 801132909 256272415 527670139 424335349 559342646 369948937 736960924 124977896 915343718 382116219 711218936 120932815 894424562 322082701 879168709 61180466 283431693 499748526 806937045 534541739 568589048 66714479 102378630 725977836 727440908 68715802 464679260 715563519 906554964 863586429 951575062 850613805 924095316 784654863 838399602 592423864 621253343 213548784 949154717 365883551 992076213 398726416 693920227 725850849 743399608 512143064 586721860 675710383 764199277 311214056 923788766 778380951 990394319 768489149 793516536 817984820 978331995 742234392 893959704 464342743 812563559 560631112 817082519 450365114 942809900 740351031 973098156 901180445 938051691 708994888 948198739 493010152 912330378 334996947 921420672 187620674 245647706 258540450 523863544 182400082 497207937 632745892 925648972 976622726 993639582 697822310 875013618 146754960 475296583 116183388 634785416 917411701 997479782 9000410 760749489 303273237 352548866 19189829 898119793 122446342 344541063 318365280 855187690 858478199 973249461 720350385 731246544 667044139 811383653 99263729 929829550 448060569 494936444 90512593 805449292 781502813 940235514 55299210 460900544 591606559 650668683 259274836 309476838 286260317 667822795 125688371 873371820 390402629 533767174 750969166 832458305 662470183 722985881 411747679 792588354 617567882 913367025 969315718 981327419 779365865 977603463 865368392 953490677 670221241 903933560 606268554 935728119 51755201 595176309 335831209 387737264 397370199 907269727 243826994 506111662 286881903 585455486 994445050 997278274 465209031 713175390 724953328 886439057 425785942 723950950 80755988 945674156 214361501 785300964 427390158 435659585 124603217 455256621 290038280 990240040 386765627 571921552 357015931 932814818 1493928 669078990 641548854 669262464 939306336 977425229 593977532 898906613 701155523 972136086 918608072 995558820 26899512 911286907 605942991 730207151 307064374 988959028 761097743 905508111 198657523 355823541 634673259 879348721 106417016 444770275 552962589 576368794 268470265 672887518 529451541 609090475 416811173 681830237 32110332 649149401 262236155 343701938 44194705 887730437 734538671 798266287 331770378 936773757 896918303 913023458 279505206 543029848 614539491 919552231 838663819 935564297 220549037 517613751 920052758 940970414 937137472 992466105 152813896 873838788 98341873 738868465 145379266 539326479 413912912 948344158 34749740 829691593 117721928 506584970 312282492 499158028 220269218 399731258 898117882 921012436 2753763 454327856 606007319 772856461 30509520 450185101 580954585 851926306 438862640 819309875 583607496 617781019 195338468 655318804 378206860 988817833 835232377 862292799 492307813 514956454 2903794 383315489 41079659 962402438 969936652 974252044 506152378 514101681 798721756 842628816 795563303 932594037 317691930 748880316 571496626 994595196 994298392 999507133 153554768 423487026 330971774 828133553 105380311 261313814 272892425 465040275 173070371 574043462 989075608 992790246 373245318 851177732 2173355 566825482 565079982 618996122 201536432 817651150 938813401 958384609 364786218 534522796 445102886 515059273 128933110 846115767 369466698 600864649 580827808 771249301 925809615 984316871 749649813 888349960 998390035 999838467 909240712 986995670 764903824 937433437 165628956 753123436 672340338 839763851 183264270 443862567 352698073 930320668 182663289 842954038 176616656 290867596 225236531 557181230 816244597 979744526 237015354 939553415 403824867 618678127 760203306 941218539 148626004 282049990 249347980 303094689 737669200 774567849 723539901 818581373 860416712 898436115 159893152 687758228 244425650 950116463 514882687 761391184 965134529 984371169 374518258 934705233 650137307 665503364 782470823 992154255 869244193 932214149 606726679 803794432 376119740 388932886 360837860 376176876 577262694 995763119 724418186 979364765 246884464 329556514 251972537 771515655 903642471 958318094 334856610 585353042 510869756 588619112 333979272 379827605 840265782 970641991 108233815 330556418 197055957 482280049 321676727 946957757 716233780 730743959 406434535 606576057 874021100 875776215 706690182 885229076 995205096 998466169 398672120 550059362 604987618 645243842 157867706 717418318 108029133 892283102 946356329 973656684 530856350 561409838 270518882 366763960 554433117 778501634 725287414 801415051 261616990 506326244 273818107 325004172 575058572 688127598 427179362 473722194 110230154 827548502 879727143 899082601 97617441 601268597 126128950 238672619 168565043 685913494 611978679 683681140 125678505 328884257 72507353 650987470 582168309 981662622 679502494 739203532 776304877 940631224 56874293 148854675 260478744 683396127 35045414 96386518 174499104 324362065 577069781 890572992 663884527 848599237 700642783 929118224 344761534 530802919 449946956 691664112 800546330 942703336 933815385 987177482 514594665 974577183 918752217 974856148 716809162 998323944 369292845 870690287 419669930 502367098 646934925 812311060 212310577 550273699 666249206 902984890 953633826 996780741 267088839 596252149 458142967 745241846 708759718 731161096 415472371 457266089 58950597 461068023 605975977 646161324 807002096 885946822 976070181 990909476 434440118 526540332 246703693 392498960 684059203 784710938 280012572 788070477 800992198 963856894 387881430 748794120 873269944 968654840 898797351 956722922 833425240 967930816 568048149 657654850 196642532 782913283 7038306 657680954 668200165 786239249 486145220 943008020 445515882 959765048 509672696 596152239 400121217 614087556 761143050 792061224 581468431 925085123 36442684 360804423 953250957 970748692 412114118 622137253 478543812 753615136 515462932 707972641 946383366 964628432 308563014 720164477 784831428 890688228 604080287 806064002 663929010 867548036 442756971 688105099 269102863 856122862 160546042 651624054 437877225 769418452 210952744 821745548 284200050 445571261 777663735 852974944 968428100 977032195 186125164 688995733 463589075 704062561 678722771 983154613 200401670 505147344 399728315 886788476 129445452 822129282 303549793 361773397 507996995 790928901 901154723 981731476 644815672 743615627 799804796 980224949 24601332 24863098 870672278 889116831 674716358 878011233 307752894 384258454 568060942 917618318 202691857 453018576 704686144 850495568 823538844 961776737 757152675 974580899 29187129 418006322 164923178 884018817 21614085 982581267 344756352 637292586 904398339 961202919 604289494 868062892 909132815 986200780 693986517 772560651 698545223 997028903 103647815 667502450 845539197 881126204 632420987 716859021 819200611 938311007 499991759 655683401 83918213 749739709 891436072 959483277 20542622 177938437 966509540 997316862 919061997 999517845 53087294 74550820 454471424 548796594 483664756 576190956 677140307 832566875 555731005 570413372 516517124 630216979 490322445 656629893 531568602 585152949 694250376 994457921 632300768 653069229 984403334 991884525 300027131 739860662 789071711 979320837 591774566 956768067 160798307 566556870 260396504 676298241 181006253 425560478 190202717 717953182 692662791 802550819 324390538 519072678 904796309 980839234 18818635 379302807 432081719 474568991 641344100 959520711 748388523 965824479 188806789 292999804 885706837 935524274 807424447 833676939 130810331 826553934 704062063 979800463 408285481 688765849 770465574 804734839 993551814 993817189 81987769 903097403 488138209 565115224 235212752 894271021 289107737 709937211 695440317 999887692 894645533 955247984 228881580 726888579 620948395 858466718 811251294 982046716 463601967 895569098 839157201 925162688 256621496 677139696 4640195 788045012 666068566 869503434 268634441 611003564 40183612 331226177 621841612 790767644 812341338 907201161 603386846 688362594 459903857 525467440 913663263 934827065 645545198 751129601 37211301 202879638 185462344 802102295 950394004 974475372 401086932 736409143 996929447 999633627 301346954 812892868 469826653 876773020 922216929 960331116 63275594 192869933 160382723 816735027 699667067 783121847 425221346 472940813 304301111 709553424 650138058 660069612 850630520 900150396 95588443 440276003 258818724 926041148 533450727 663563074 765773357 812544278 815090377 900865241 955681743 999198048 188266262 775914287 388947612 702525806 230373465 372385001 104141549 613229520 525301313 615790117 451816184 911153233 5214583 57665549 291558175 717778037 933993056 961028950 642013475 683053689 523253031 615051705 590653823 940906888 524067797 878167338 83064316 349734696 364301491 920589778 170478496 797274757 571972100 819822536 990725974 991712643 193383434 260306984 849061484 940218419 413315004 583691120 170594770 702297844 840359722 892206840 769080285 920860863 506419496 741553720 880049660 959206705 28716753 168287768 799677549 909226600 374147428 707699291 713349567 944808009 140964139 450889322 408300512 935095477 715076583 777130804 460310521 872459202 86372020 298343521 185879174 729128552 564137683 572793246 744905005 828587453 419738413 859982820 396786639 785387277 490495726 626930131 511305271 751277889 391478473 901738126 313610782 599697851 928561224 979452672 24116558 494043456 267616838 584446981 347751691 498184195 621159457 672494666 687243265 698146116 610366601 992724110 455176186 969674061 291658555 656708320 102299225 808766861 779129284 937600698 441188684 506613363 485126954 886767338 61915475 534366314 663102975 890984848 66409143 985408601 106250515 183238644 543594266 772872099 496391455 554968744 215873769 401870940 885454247 941249491 918600430 979575969 179941676 763595809 106889117 773060059 979771349 989136575 833551470 905419270 617235884 655385449 585944379 905641756 918812593 943586164 478040432 529768014 309354537 434671467 791651442 937233427 860843842 982481034 368791787 496731346 983698598 988978818 10128914 729556437 939056060 970193163 665935910 945650414 993388365 993648095 805301941 875797095 975266328 990945300 18655784 632300779 229953026 287369899 670419872 866455110 27234832 505491052 436600922 637890203 153223019 722779357 145619249 206393748 590880053 972381732 911883557 926923662 139232520 242449459 734526548 950491076 561887896 603573664 805623391 948004422 373681699 489474257 593944641 608945452 121607339 455978257 805688525 931295581 604952720 911042670 611858750 935536734 976312194 984138697 64081445 850519583 600223284 881309638 104669495 737555423 163705523 285161127 805786563 946357734 782629492 949995319 7121800 512850265 912508426 973255861 569173472 802039373 450364041 970412172 147411516 493688538 740813048 971686539 546895061 842065871 557158184 885727458 897422224 969870239 258607958 646369246 64531982 636834275 975723256 983170992 154153253 339413213 958589977 977573887 491713666 790864394 455355162 794976625 869718470 962924154 462644817 970410919 984460782 995937338 923872075 951773817 87827223 765650859 235035346 354448811 196312885 727212561 134749421 305529382 189796553 635783920 82615842 686444570 317382683 967198755 948553091 957579464 576131234 688989087 702468619 898312513 901440605 932803626 162177508 820831551 459725671 628439055 821355806 825959785 132822871 774776440 294694176 519947139 533145110 542278990 371735818 776251986 221208337 283185759 423400793 581557601 153205396 907208853 466002622 871829819 485913990 628930030 898341100 998957066 766439348 820639464 649149097 999609262 673844544 815170493 211887658 457844254 952658092 960702439 801730469 815022857 372190723 880809728 889690084 918601973 852516996 963751792 374644417 570066722 57180119 324521749 572968181 852878632 146091383 711941137 887445073 998018076 890831945 910555090 243424047 671775720 327658633 675190159 708460286 758144737 717500631 809947084 177163981 659655926 450423571 488038647 694994883 959830490 325854804 742698650 52088010 252383009 421204400 530187023 344615182 454986528 429693837 685276185 107952525 244854158 848784702 948892669 623486325 836027880 895368891 934627110 552360967 784749381 457687410 894966295 755851789 966952837 259449311 932296632 633664110 753694383 508108626 525085135 77361787 422526662 139282046 952801162 202877561 883219839 825017698 883254815 456110752 888556665 543636454 565108511 529802692 923072176 572350030 864370138 669350576 980928448 678012982 870279425 506207931 636437233 461907947 526511833 901909115 960980452 616120881 641633788 816756269 886288906 154809935 457344558 418237508 725877847 747765497 946436699 974959551 978436973 658439140 887142497 421356649 651572588 409539672 571543846 715269786 743625133 23856214 519055138 399160543 820545809 494601609 625218087 188269835 317278952 598258523 990531892 878183111 884051568 368812049 703005492 987637298 992570598 110833948 969420122 229392048 558985425 13296756 719340714 921049577 987897641 70660103 809104078 610648709 952901779 464803094 962830056 502286273 614481659 352924944 741421984 200770117 588045847 651310654 892026822 523364753 628573859 320460693 902878059 36925192 968660679 559842457 658992998 667717298 793870629 664165175 719991139 472329379 509384007 634999936 852356339 666392182 731093985 582304803 694252828 980484403 997861010 967563215 992301062 211600577 469930038 919856781 944249676 466395798 706810772 679311968 970907000 447670535 623397841 869174273 890004630 513423132 651915986 682391289 792969256 488549715 746041400 838295587 916551256 44956038 758917083 62234044 73285370 859031490 907969689 68419930 515899458 842347733 968972742 943374536 967918285 178472145 451541326 649331200 835426363 737229451 866233532 700915841 940268812 597887987 860347573 346650276 896887781 783466510 932559395 891411678 920117511 89142736 547414072 610587973 674849895 634887759 825800495 707386079 968251525 230893156 643230441 97821634 644089141 977025172 979501609 554391931 996179683 429618693 476347641 600389083 798245465 670286432 885432050 714289489 777435327 277798118 734627042 323112306 911213751 8619465 754593605 275796462 912816929 365881418 435210269 864889117 892196810 991696995 999363583 528238721 728292758 201755645 415230524 103142461 132163358 254570126 770247465 649056631 782456043 54591869 595038818 86309746 104186313 972131799 998820573 352691252 895499549 521309096 837933849 668693376 780298987 966691256 972753831 597891704 737326789 741661061 880853916 524805114 561525060 790568445 857988605 96124879 866772163 64351088 229816678 158422550 217026087 60559707 147748405 898723748 993832253 90088192 323554575 988945042 989462464 881537573 950335476 712692958 901903015 471348592 648254026 16966765 948251176 263623450 981328807 940061264 998929106 596476857 831362156 432195765 830568157 482181084 925540276 381575152 784159106 581889698 781056828 340228347 582225013 289294368 752868444 330751453 876418818 200401586 225607508 101785161 662188086 753483404 828420563 1252872 408443381 958797055 968300558 758668518 880401601 865533109 885021653 689000598 879269512 705249804 837857334 447262269 659105771 336913300 792636086 612742681 710552285 950477743 975219833 208256000 593677607 307813060 742621774 927947578 950497699 452778927 973029286 614394937 635125886 654790950 814122041 995691078 999408783 956993504 980853236 672793485 757574301 660045912 833423814 789157069 883074265 158348983 442160296 558965576 863070742 249542395 769759341 535049657 671023916 132893419 371284542 880426393 968365766 325631263 643155941 426895628 736330785 867933275 874800823 608835143 656856597 412564511 557642362 878402512 913885354 41523976 143641081 83948467 826632259 581042260 720081181 833279011 862757058 945826154 949634301 506082179 565685254 812295876 904240011 942303154 999028084 868521866 904876226 688958468 760222588 374721294 974806441 393895377 894105364 337046521 903559475 110232794 777456460 71396517 275092242 852926314 910285549 183619142 632725838 69701702 498988182 858885035 873001036 626631842 783753160 256157264 438111146 286149021 516135779 160978567 618615823 111944144 273877410 840798766 996541925 614779908 767749078 19073878 446776442 325470201 686855013 905499373 944323951 456061939 697195984 144694428 948978708 107379601 688863516 778235386 820118473 472038577 867290510 363293841 760402846 583991079 858320061 873841484 954313905 840231398 846179943 48081361 268345161 622880715 704958460 167405464 423546087 612923877 664046229 871690271 950410649 412062351 581105037 279072296 430658030 76727125 683562522 886206609 913578966 803764407 816317400 990324360 994085069 639300607 957521260 671377221 927211848 261642061 778991428 930200270 955159772 26975890 329966288 984843523 988446016 893614394 966753857 26450870 788140516 166601722 498205695 328640162 582592249 673986342 992720552 383779242 414680057 413661091 511303011 891879399 979310379 968384390 998474212 258975179 570638660 377908735 486796263 672172964 970785997 945690887 969419788 190806912 618444481 922891818 993001685 472527905 828933876 86631062 377374432 32680224 324686670 836271196 884709450 702720646 887393145 303571183 881931392 101015463 366497290 293710955 927179580 401883390 512199422 541965327 677967743 123272331 768284911 219591499 800972751 334694888 861166887 172046836 796483022 867043605 968744726 107970700 496672236 432421730 553657815 408326892 830813520 298725663 424541944 351143261 374943482 342789892 990695600 766261314 987748314 656253948 716308408 906058335 936722614 195822139 701090665 826549488 932206413 885738192 945648182 979098148 994701405 261266617 611771439 365186459 924498335 129657162 264984415 783052769 954979958 1261719 505389720 485350629 534477585 884914431 948534018 346714576 947571618 474876411 678520971 218339992 773524101 253565250 971824457 134295706 619504068 676175491 880977875 308170763 596539681 938520933 960368706 221614596 871116787 283032755 987464839 709457045 937500381 183582627 598840606 499352512 799532850 385004813 920103126 794663267 891648916 381345986 396495254 368417561 488363903 167778266 259383723 442057830 616002014 976391836 992862476 330913971 553479820 775942909 881105016 524576902 534778664 148271449 387352615 511174427 862604290 218158221 586105327 827862286 908820266 258854884 520452977 672893823 872025664 556179832 875726030 272771663 504622841 943146081 966900018 517005921 908594409 829644495 969735740 54960300 252136581 174674316 871850402 93771580 885252144 3090532 163250282 69523079 931738977 124348674 480129346 196157711 482627459 28361943 235351986 941548021 949754380 920173040 947198514 902405704 926768558 2482833 577876843 346141019 861346237 423560824 938339433 114170716 871296941 569570505 820685664 103175733 763720660 797441686 974340695 414413516 555767430 765819982 777753129 799995462 896528078 39624232 441470608 662992860 973442075 271050963 722996392 351420816 661459332 886045986 969174810 412831962 876220947 68323433 898292887 695171442 802103523 642887708 960016517 771887629 972018020 797910341 943285474 414679686 463294836 45799911 808219703 3499416 195283793 739195469 828874268 145301275 865872338 183252649 873579879 731132871 905466444 988376538 996980581 332212048 733527325 175811762 922664511 948887796 960665729 576887167 830771675 358587200 673128214 200294964 696026456 596049475 642193647 245322418 862118700 214967831 723902182 871883824 975663949 713279742 947304699 734205208 999219877 311640250 408547359 618256077 711181057 164554122 514639786 774452871 830162544 660613215 728776487 789074109 803980743 649478206 844911371 642215218 949755194 951159458 953022519 83272013 784560652 312994174 971887733 143998452 428931928 704605075 804686473 662710875 783061144 800105727 844013227 687877046 713896114 538707702 995476480 601898672 668320490 771253555 965471785 540314422 774729945 71973350 967097415 750646816 800361468 469855774 603195364 668834069 698526792 90085583 900211570 316476169 803263472 67574163 484844494 469122229 544985005 162622872 769983479 957340602 970138933 140551532 279552020 779925360 877675820 601669488 834632889 15059182 958230122 42449841 263663705 207331830 731083213 724957606 874047918 714261170 855502393 841769818 904115324 315883105 351679670 27297578 928845438 837522629 989114741 917913300 974905452 618224662 824660174 818036776 914121179 173998652 406059684 198892001 626755930 270136228 313048451 796879003 966835660 91912386 435079047 499233395 798319212 86277392 323702500 909436465 915946063 64643951 602446532 54932617 85414124 124754416 883269522 203824732 721949734 192809065 551274393 852086913 979057971 519671910 881483065 402550925 730605535 890603985 984484599 194101078 660982654 834324512 947267141 820526537 885346774 182878391 451910700 838061817 881592132 621008719 694282861 31264763 173286417 722283073 915683051 223117625 256711053 779600147 879599778 695132820 945357081 26181512 126054524 579981840 830205410 755636060 883900558 312274124 985653321 891031563 966025874 702810061 838800638 949986290 989226440 818229245 885679204 435823772 840399850 768950605 791112365 990777699 995498232 372141339 460660110 89842217 810752240 18073227 477595379 365159913 873876326 321822540 436153073 863600794 890714895 949507808 992671707 714342491 919495578 2449403 507485295 468987570 728205073 220088102 925079058 440493444 832348579 151184059 175606082 181337108 939006739 99685266 119698690 990807329 998550821 901623543 983028829 359183360 622815867 358979920 989113409 426608628 427011140 906838029 940284286 85467857 713623051 689638562 830035479 931857703 960045388 907261669 961764455 693031014 704438701 946593681 986629827 913390155 968874722 865938026 923984812 733305842 963905890 815236583 998314013 695391038 813853206 394404718 733338920 162890530 646358017 702173073 727273761 88867936 842007510 374825212 500615791 354788610 475102011 274615114 677280390 749207009 865681737 846174067 859429480 938117388 979824324 700158924 949743095 684972137 689893697 516208605 956835090 517529518 650445763 992106455 997437704 366221940 549667251 460483116 654915594 983379963 989362512 880230861 914344787 616909080 755143854 115983688 681228245 708505553 742632036 958705754 992260952 961484618 968196861 464957442 925147933 493310331 772072136 575593720 714313777 218852987 767323173 369996507 944520502 250179847 552133488 33075250 695337560 575617668 822119644 946651142 993008758 385900336 417328730 896792338 954397083 745867229 995039964 461229767 965918931 827668689 971756048 66684317 521059473 451442252 620059695 521493176 988477699 49931840 709993417 464102237 696456804 43674322 914196760 800891622 949729235 880987118 944433851 426059890 437089458 296921710 913985867 304149878 398148516 461472610 732455194 339763785 723779425 50117034 632605538 692618872 963807094 591658823 640063393 586691045 952944967 383781800 770760613 638023222 814205894 316243209 668368189 795615599 994568223 776598703 870395976 179563334 488924166 913316215 916931180 743331197 760308550 552500891 816003020 940549663 994661315 239750650 952594588 74133207 894131418 669833676 959524759 758224385 817731972 7677645 371358743 891397799 936265776 760787359 963558526 454577793 842170707 651359595 910104312 790498844 817968889 209852814 495102698 320961102 784776256 545502598 715200145 552390817 969826321 267762589 986523861 955697364 983560713 309836964 565062143 665729710 888863744 673990927 798820860 922259956 990302884 48553489 755555753 228889016 268825192 149616308 515263224 327294317 729179697 355914623 652345657 947591038 982367062 289137977 457985472 405621023 936285568 569997957 974406773 433792759 521526979 549565998 877776842 581542562 583965705 608259784 971198898 374026517 970567594 872704457 916841821 77106617 778164593 158574736 932898606 552122700 673607710 981910769 989204453 709737855 831341000 737902737 959329759 33189111 578790749 713800492 828357790 211758902 763502081 360383790 396547677 715626270 805017992 887818127 970584425 647087133 726001880 490480851 907037515 222452648 494167607 194872744 813725139 384979281 489821345 948334968 952020646 77783318 434407606 220808040 536824437 307163324 993837370 81865732 807848175 103277611 638283526 447075181 627255192 557569556 923322864 808884585 899563306 461064265 875862296 92414389 781649265 235592012 571161065 664372260 829055897 248187717 650837395 735635751 984293949 21712391 389288370 132020281 934416572 836115192 956987487 585211820 698206691 951279074 982378501 706202264 884207251 227406028 685361731 831682367 904816508 24709580 229871491 870479121 881796191 869919345 990361785 712185211 899717536 871546069 874398089 509296158 817384950 361866141 904457677 983584156 991579551 996474089 997635332 385661459 457157027 272003493 581704939 275699732 626942948 622472464 703474268 953815406 979473623 893166667 985788236 790205608 801027688 627809719 763294662 11191220 374130885 396317240 634731386 980007162 989527835 606842264 721052095 975509992 999173268 126689739 323143973 38618368 861875552 172378494 310879443 345320233 948505417 152963544 341716503 456992050 986605913 869023594 988549777 65370043 213899060 859011979 997091395 363876570 597442774 599905282 970577813 242220561 585947950 360283098 813690665 443959968 977504501 239891287 302484881 443416457 496340496 170601186 722836671 125262122 144353018 320045423 646619323 92471525 764222727 237513100 495364012 155493578 238187281 549976794 709177180 927259283 945541444 532650064 739655732 81820014 287081258 504312062 960162379 499807332 683839704 349797472 564638527 671048744 697689280 136094821 462667791 369408917 456972315 905807582 936544827 654850879 775037055 168229371 942537819 9308269 29340624 224759894 667014045 49422466 450498010 494199266 556641386 966437143 982900972 659443259 844615108 469291185 898575209 467416318 769878380 931559858 980852866 868627840 959145926 184541292 468213628 136331970 546350040 294023144 682690059 637023608 986126442 396861681 433461972 519533987 675838454 791064073 813804316 882054731 986601958 472532374 954926035 592616427 897723863 819148723 917218240 797785893 831113788 793757625 838166698 256579134 976541785 370291801 738817873 28064160 216719682 194491178 920740565 333176784 887017020 985843128 989947938 289250848 846139850 367487550 576902209 664552756 981816812 822814640 938821037 902334901 987919746 204275586 527388729 610010133 906173036 577247268 938986481 802007499 802077332 859928988 982897931 307374478 413310908 619781927 807731403 491625124 954855440 538930602 859355233 926906736 975573521 914344747 947219274 320497002 459368758 827690533 931997469 49041540 538313106 774866652 942881400 812876381 852080942 413797759 702765066 354807144 863541134 235182102 875746048 299906660 868443547 675577102 921242243 140574684 209657251 722159952 883621469 41798263 882761666 697299144 767643374 549893097 641505337 454210518 669346377 920978384 988317655 690346971 790149684 26007001 315702779 273041933 491036067 495593303 878037789 835671716 970815851 981695703 989628866 111755675 523737771 260335663 308100027 839798727 845297098 877095900 996760103 659178845 756575125 161728070 996676741 831570792 932503047 627972718 859346243 764575090 874987093 267682321 339143104 715579561 751149595 43409809 545718673 931645542 972888110 903552519 922086821 464377181 861226970 832579878 837577650 62090051 71704102 340680459 654773022 918616808 992701142 463956336 703976063 702587014 796584386 729914966 948753965 106555046 444326004 708070236 929322329 549204792 684416900 402579796 900274079 818531673 998587371 672801820 735864183 9432297 821225409 918233925 952399476 136473904 552413248 908934623 995328098 95310895 468256626 923477053 942232938 87144301 569193960 519621047 821827807 214722034 689046425 626981856 989113351 273926608 904279142 618410671 852058929 403624653 506234389 4288022 369406693 310375668 976909323 564250907 585756683 320023958 483687527 456473298 946832248 69727075 517748640 165217113 322701995 760789054 915413438 904215884 986966685 740422572 800366760 207189839 383075773 297418327 469582633 197679359 717539786 428263652 587650469 145831442 194508793 503898505 838164226 715903540 751261617 439827906 734959673 368128402 973650183 685327335 752494495 715684531 788475599 939115640 995818078 164896010 405281449 839853992 988172184 132453035 162750247 533270459 718083615 691584896 943162586 880482595 915838359 754219448 901275977 467902547 657247289 583455511 875473293 110460465 961693679 933629228 936392356 172151506 304405844 509958873 676197768 933924702 943343916 310469798 809816890 176720487 186739893 187055965 646276725 718177598 741491393 188114555 366045985 236832933 957772801 511559704 856035330 426010128 450421749 861935032 968462106 230465293 455663791 416002954 455550198 697758899 903912798 174215727 552374845 436038899 539425658 129847494 175200935 348373692 879656096 797257566 969393449 321282069 732661248 799570046 819034711 236768192 670134910 665286393 813054993 232262090 479031061 766037715 942149819 39146542 161234402 656023348 808193164 306390583 326860217 590631931 833197947 866686104 928111806 476352792 659265517 272250222 532460851 138854006 291223472 805948567 939954013 647449314 957256889 221248740 635254873 708069374 924067031 905143919 935913180 775000115 873851677 154605860 947457251 68080507 575664952 439699034 601790900 577248430 675138459 481885514 681411269 608701528 968064345 929619492 977652083 640684404 697795008 505017378 528701560 99961674 111608511 155922800 403464854 932558597 961655752 269923031 912454299 130225593 596525527 783627722 901943045 269077569 987703840 173657475 643437894 596329875 882578279 93462286 963231579 65398634 358983494 100262737 920075071 703997686 856334057 665523358 938137223 963238179 969761372 49797313 943148252 795201999 840727908 359914959 840327352 79883360 84530855 759837839 974025596 775795713 937089133 613156859 881155173 103697018 125024386 628347216 931629405 432424551 941135923 367271004 956151405 242800181 549858210 955008497 964813657 864360652 995763285 523782341 885284442 419588974 998384384 67503333 878719973 11526684 717237644 830756861 862258776 701041132 924475299 47486778 435520952 277556744 818120782 720158095 829265160 912058678 997885299 276190348 859738190 334951735 504464159 101731687 472213400 764469015 879722115 71677990 465890138 184177096 356930997 827133634 976345975 772412000 972956318 44326666 84735990 603817832 836617980 682843899 736206645 719200204 996363972 41159772 302913009 945902934 970753039 340902326 373063390 851936413 993912776 914789770 950391646 121527586 235197323 458692478 585358108 529144193 758517319 446418972 913442046 495839528 880530716 420949341 866535187 138882688 548840276 665906406 890509631 98143780 366493101 137114931 324205932 992170240 994232318 879691802 906059586 135561495 297375988 27699545 584057663 168365396 584204029 54852568 240371952 372911071 686145591 410354954 868709876 186578077 636085682 578543880 999217795 867074231 946675314 886658344 934361689 975936592 990270259 281784388 752820697 412834574 856913458 914484581 955675693 195966967 820266301 707918567 887608241 493317033 788409833 211609719 463952614 906282358 914533140 727800702 816399309 198354395 352173575 341843402 871015332 216819225 781291478 806807352 871730444 337669786 458667049 199616544 223551425 908653726 972591090 165817402 501780868 12019578 263162779 248060335 490782490 221300095 457584291 315794647 451361952 568878929 935047545 64052486 998504451 507129426 765444932 99687268 395616260 544971984 698250178 284840064 518344833 417468480 750941181 617935561 632901526 153096912 428545829 79330775 359152841 803989317 838736337 2596255 357306519 235205272 483833697 110346731 472176444 22036921 183802621 13105594 434385899 155207015 691526924 962232571 964267526 299974080 892226339 453663411 734729642 949027235 951161995 877180580 998684401 959249129 984766955 616892715 960509349 658220508 845248718 484954249 837063180 728781902 827032839 147255890 677262128 573866222 895237615 391340763 673630058 689300414 735671830 561207874 847217478 992260546 998095486 961460122 972628177 919935209 951660350 802046631 804496189 250771177 630259671 210407203 560553543 556970600 941276661 836609451 927727526 517022532 742501078 671054751 785644537 407790097 483521886 103826408 125551188 956800400 958796995 882603613 903199568 191268755 275018826 983209962 987135452 112052836 166193417 205682861 753743243 251253636 284877706 476638087 871785412 807548895 910068625 567225201 957540568 480245402 734891604 856657697 959319474 488648672 859691750 825179739 931499953 992241927 998382937 688821960 967155459 548414498 712923911 801323923 837329194 97210913 998178123 255005517 708660909 748075910 856424244 404375563 920576912 714577561 856646071 694962473 858489911 677585742 803501518 841765021 883987365 283288546 582516939 37774598 246315731 283627671 842289139 536732606 683218988 125615004 252994767 820525766 954738084 848399044 893460607 321083339 851940963 893783704 923644886 224203439 230962038 711270809 901336704 566244009 867742628 268074084 984913420 338201499 636403783 9520986 979947300 694033267 951516239 579877587 870442409 664641416 718759412 763348222 966826149 524480224 631969758 238054428 341959070 404069775 647755501 402571071 967976268 461104952 807300426 256191113 330349167 443297245 927716783 503467674 991156058 393490979 424052879 587408147 982425241 603283600 802231580 814840837 894824450 990988621 996714319 950149159 959528021 603059143 794869922 519290496 643284785 209365993 534587410 494153499 560155635 343691942 594054187 716326189 997067667 999676911 999728536 339018344 445695170 887728384 990249005 624546679 707063536 217374023 634604131 520728126 963972318 450976606 765876599 336523569 456080451 564620627 796397764 483789988 965470746 612840775 617517745 620846265 806883911 294768426 849494705 101312695 357595362 939234676 941782672 5991626 989409830 859052068 898933840 110445688 266542106 586671265 873838521 920066337 973597912 693701599 757939691 673150101 758621464 609418026 923164733 337821393 910318971 911496200 994353761 22403820 111464712 231839796 328336983 110460481 945938131 985337284 993673555 595266744 684796047 151217166 588623188 196944441 423714172 339236548 643137451 506240145 875883452 48235104 860593775 131397276 342316224 473984214 584532556 395107 200287125 477079638 836510416 86427764 672381209 804505545 851713957 147829746 441128381 930228512 958331753 180566246 655008132 645136084 787658102 790727639 800514925 507694052 701695401 378920077 399955389 55592152 555343648 549986498 972443266 613147147 877937059 143483486 705742472 260036667 319718937 955283111 957980837 398051764 773670953 646554608 973998280 477907746 978507544 656020390 987001198 629100021 956427358 73768849 417722451 593284961 673249854 579769918 631168044 333033156 773190717 705508720 802310139 975337720 997499028 555238480 685216199 5868728 512432437 355137424 971914477 371802497 627225656 232423944 335391588 991538268 994938460 490431029 599207098 768459767 991590968 595389444 696183845 210075288 647265817 182681709 248891567 672403825 922495945 568057016 744619766 867556251 880603833 618762417 877413978 962624467 993394479 610046320 985140554 797391399 869878060 550792230 630354546 869068031 956809457 640617995 702086907 72305590 853835302 893122120 964903057 551802592 670443724 718516705 865683280 953954158 966001962 910955184 916619824 735594871 742411670 808363914 977954090 221015841 760486520 127875781 422581185 647897924 685959470 429848849 666392344 561385311 729545249 828972826 967726777 790408318 904974399 303611150 479188524 569274688 936469629 220475760 643775308 155241668 679686203 547136876 761821578 174879417 614424001 514216806 595071092 299368023 773038556 537441797 658221038 14226690 33611142 365387364 575141245 817317552 980779063 669531049 757971605 41642580 882487196 714195256 924236335 829787488 860755774 387120691 721257843 315312887 920821894 989689006 999083233 56606057 194712652 251901010 472933030 144487515 391372561 668010882 747707883 184004638 406152466 485257183 582773298 772711362 943438432 680719102 859341339 747499790 893081302 639917691 886512710 287676444 811086668 944789009 970928662 434846714 462948509 185043545 924666862 92798086 948429244 841191360 886483166 861779884 864427528 108144041 275290107 615050250 932878202 612852814 993467981 166925404 795893821 69508809 336840577 39971132 46844279 582164173 704209796 299130000 519362831 578750615 915710165 861280284 974599305 347501681 462305446 115354501 231360340 559893346 804542570 302738373 429680506 101913061 457224309 120458359 381611820 719588384 760941728 851341245 886192259 233757788 799228912 688436824 992072644 560568604 959007027 201921535 801181609 808884030 868397382 640413589 818271111 414049367 588391153 834085213 968249793 604837324 878545648 189568386 668337617 761247648 825919171 918069975 955895274 313195398 901385894 689906381 741541167 544385917 996505965 767790540 813187901 242191650 767151131 722441884 951439225 939073654 999809927 596382303 815615062 536012848 662532749 45983804 463921991 141460756 972801254 415215040 466170863 301204341 730790200 905976197 967712165 66409787 646412949 451801885 479538748 466390370 820403636 379881730 634123475 709306587 843710773 5537915 210868211 850858087 903903378 201387352 468642220 797584040 880333164 343205210 425049593 833491140 985593146 170431719 592472338 700625971 861304597 666876547 905168480 451122414 584552936 337987742 759564229 343153557 423157803 368386130 915410022 911088577 944866235 542264263 761811643 592510548 884853349 123235434 233411105 563240511 921565437 202231018 423737835 522000923 913070570 204827550 342741473 916293677 996347124 345269396 805037403 914860275 971990217 335044393 795505295 17832909 442908347 679234408 681130567 110449778 779131051 419201539 613727997 209080633 733686158 319420319 695760105 567147862 780574870 401486840 687057964 295882935 872293112 793880856 975945635 71300705 224414772 360651268 554534081 643403353 758761257 756548465 855657159 978254884 980530853 274371519 646438550 377124824 574330136 469747899 503217996 804325547 848186153 316583097 475236293 438730472 794919009 465985443 966292389 56917538 679532493 82988717 163586262 663369335 762500848 259214208 962916511 811840091 845115446 929253416 999784580 668876024 946337863 327753884 788905925 755014229 986677146 284131012 932360675 451587066 820653345 758149840 767233721 985499947 986627137 171030847 693955336 365734530 933907475 507888951 890052043 785041300 844037433 819149235 931261416 502760022 824171471 937189230 966764873 55421941 777777108 419715087 807491870 181611160 429431296 764326178 868270600 99444704 205630047 129593297 274680965 492354861 937165380 941866105 991484124 204801428 287835170 996563804 998247025 249863789 529393465 183985440 904526727 301437003 783646886 864400512 888299587 801478973 915248324 283381014 558956728 117890249 516155477 450799857 943870548 433412428 984213218 420122833 777767436 929648177 965051767 401898399 623634315 713214558 729489397 844321642 947715965 350632281 581392944 182112734 532459803 665866161 878686898 513778238 741988462 897389017 984470387 334520475 775991509 753184902 909668451 48325721 290208716 746182240 811542282 151574104 732372201 899570790 993547886 344756133 778960380 991501792 998004061 513252615 792963499 797084033 876507543 98183086 965656946 532044859 592304857 308892708 768836543 199356719 990423336 497984899 996692425 60028121 620294922 146553298 667452942 38169004 715475798 964304966 984709833 615317382 879353157 122754020 508605114 524000711 697618920 293651518 704524912 61611902 563031302 96914220 713967247 856417084 940763118 892393125 916747029 960967303 963417600 107201451 919923071 856680406 909618003 276455505 495600061 628431039 756914711 459915162 498287571 479524961 632001240 334535990 648172392 339795211 341737810 135726060 682574100 868685455 884221996 470303370 773337779 599155637 779344066 259820771 471715014 252877115 792746186 614240629 622900901 390659687 737296644 188957848 818143333 113402099 665478636 350674190 746134156 579999200 787047268 483666711 693114106 462052192 690286904 504473973 632521147 659232160 710263516 873906014 882247086 690421479 747153940 490725637 801999431 98929466 474382960 634503218 673227834 540539020 902394393 158034187 301417106 834165822 986148094 138338916 847714720 452182695 892053669 601469503 662726144 992118911 997978318 207458068 306146576 936815884 982558804 669308802 970951550 473438105 514518601 228664301 891606116 158242780 753415576 506742499 874758329 307604046 566022689 829711573 946340200 465334869 946225380 306138153 969621652 601288801 793129935 44792811 263915024 954517037 970875561 876171941 933334135 778673357 822932178 578874025 858890199 797655235 939113104 63602435 968559597 374043514 571544634 448594829 577300131 261579035 508069620 657635492 663197163 929261067 931791666 427353453 718917557 207941611 530286748 25168127 632355436 794538400 796011350 431638126 433642158 296843274 929532116 213984212 645376642 3153425 278200326 215239844 954906863 611451492 854101045 812223856 982093236 844302966 923391305 781089746 814515427 324192455 598415295 857622913 952768333 63794008 741368908 664369518 776159955 275481674 641021281 636654018 958500147 568818077 602865089 152088227 426469390 149542476 151672119 44468734 326246455 563305779 993657023 748855153 782963778 173517387 183717273 491390528 928321345 816090854 969242454 6987389 21155343 412865038 766279335 967672447 971131156 551241507 993680586 750868030 923814085 318433777 465545740 577634177 672554410 733762101 884035223 722574284 932372703 546104296 750099241 169369600 221777342 981643953 991873495 716956237 719271199 373002418 647024184 920752737 924652518 56886435 384434928 784627303 972286953 248725905 691252064 154001617 226824911 3336858 67127155 475388852 771288183 251927417 662866884 868880944 880307610 294035976 461336114 753217969 760165643 377077184 958779632 580357999 687873653 324679305 666160643 550446994 655578693 12666685 468131523 360488615 579365170 141490671 898490071 25664652 856940597 71406671 918428580 975500784 985213624 66064797 803755787 285137894 948235227 853756834 987363372 182443242 595047055 308215008 719479448 307512653 435167145 2216268 72638832 961173025 974850333 996730589 997979087 894702829 967728756 919689622 961283792 862088832 922245949 955688319 958070891 146096620 636134478 29915452 303911873 176433628 952478777 350000107 397444190 691269831 884529133 693311711 997047098 879047605 971479258 905531912 915020080 318032436 695812954 341147528 693800089 7224503 955075272 717295565 857218172 865497095 866102023 417319953 432247342 595174354 701015048 48849261 871750071 458645684 900067956 274072278 470670504 34748040 533127249 30685015 230486777 265873770 466804395 304530753 737007699 225497784 982543807 601295669 755666322 526656907 804037620 864197577 902948260 331418881 346950523 746031122 816903658 902476184 952127171 171141918 707903307 472817769 793419413 689092068 791532764 877304530 950295632 586593456 966473891 781083336 813195471 114971699 358094858 38193655 936459937 199043 797765976 131597497 333018945 790442943 943889243 534250084 693259290 732831319 740782081 707826411 957592824 172666080 573185136 834708681 958904896 531273572 883467628 150984111 169110424 148693470 799195816 86518755 526344119 77222139 539268281 302679737 827354079 306657615 637433590 884651442 969133654 512409927 987172472 203861023 722793478 504361938 757893968 64665694 333489203 468679002 832265600 437581440 613505584 16290086 847290177 535444566 818819039 610843130 634298822 317037151 638448490 548076388 723015174 328496300 824519697 106566151 725556140 349955201 542934385 687610807 948683586 24978313 57088359 235408598 360686388 326737097 556321936 609631173 999509427 380683008 528931647 726800842 914679333 966192675 969452688 334552401 553366880 551462458 757845523 463456798 530222033 598017287 803271830 412097811 596111611 460058587 621306833 234509397 262784878 694796319 719786602 187235249 203565459 598782612 973616776 716336367 875049813 74552343 257985779 104315013 930986338 750338938 850672058 9280482 292939632 955471170 988749469 886885631 984197870 485165214 758645175 157256412 635006031 177954767 411604896 114152968 447479571 870775428 873009061 938356864 960866207 26029439 326725386 965293602 988457158 42323550 249274412 355259511 841907252 884317854 969425798 268135134 921962677 289168006 429483428 678370348 873060395 151526312 869868172 931187888 959897493 823129147 834198241 41455764 662458669 535113218 631095115 885828519 959408421 528667742 579295328 255334234 278068989 537496066 759501695 664164350 764065794 684107856 892675223 359790500 754106457 913413781 929281812 427345821 881653745 799355791 938893371 746580485 926572133 498188151 784808401 420814369 984219822 79483601 650264833 488575405 861447410 535718695 961412749 494469360 542235571 304673933 761863863 342857236 640661857 301600335 997610789 77557764 713838776 913360898 999593969 952383316 981127962 404556768 422592210 981937757 984506575 691699609 695431621 202288787 974730750 789274668 935535328 404527402 495440205 234524867 469130526 845467282 958764066 40806680 385433822 149365150 986880967 565091338 830562655 19286127 78934176 241539335 684189369 965957259 992117440 938202390 982026531 766278223 941656289 937773487 987864943 809648009 833308229 861520856 967283096 574879228 581778865 733627850 993695441 580353406 785514088 62992718 807554040 130021991 792341158 912643961 946120466 86058677 171685081 115550710 182917252 840398631 966696085 310741516 990451644 735735300 981719590 892042068 916364901 690487069 830005074 506123992 601956018 227007737 535475727 135981941 571209690 350963725 385957682 842986553 944978289 945482805 994145903 532993057 648124041 855829180 964933860 274059577 524937984 50661035 831167660 959697964 960582040 958107191 984375891 445024830 682698031 658854989 691344510 61806770 365861782 807537377 839872061 71014818 874316996 873446261 929346135 954135342 959177581 335865846 424930708 512000945 821299980 887856607 994891713 213742571 714201649 734344928 833044139 515062989 799628639 671402348 810041872 536442547 816575978 722043639 738958795 871068711 895825638 986325602 986632776 894097152 899373551 850741544 990247870 311321239 615112471 169214930 692172504 811273447 920063683 594235815 991747377 408380990 666484913 430085692 479931351 835097358 922251392 41268594 966622702 483934322 500723170 86113832 814682236 814183016 832437850 381286881 522947826 4300088 694876601 972313052 979827470 720719205 949168763 841092134 948082467 191631507 377649559 94432037 239481585 316790713 703774438 679464418 973476601 963913514 975195284 252732777 453705173 257027094 726080422 565695611 957626458 650337008 812712601 643562112 927849279 802939086 812893872 175735752 390081503 560022040 571870025 28370346 816052593 52804789 582777312 466741399 988320059 137979274 600886666 820463842 829737489 87596039 114868935 474769002 623097228 232891628 720908374 977156620 984471135 616906872 633792407 8264005 650213232 636265754 855055289 203728588 758510673 704573205 799981233 627864388 970625457 798373576 937916129 624875251 950019845 763829721 906689343 230606690 257365673 895644834 910397170 983199368 998066614 365421410 426194433 222015725 365764332 842147580 978331375 537504312 922118661 806194177 850054660 968488304 982812577 915808246 990013772 140370142 630192125 406089152 749434602 506020711 743604674 10792242 297944179 995665331 996817788 578668250 958356804 350265876 743425114 76731064 866375855 765465313 840387091 137156592 368371065 857542154 965829901 897848033 900909074 683038076 949728221 203931228 931980244 581608689 686247847 627933822 714147496 78469610 680290280 313143533 713822599 106060242 193385465 780499347 932081433 602318518 651004924 366560952 765072381 129088618 194386807 560165748 616841431 277171399 937119017 144988221 584981703 356366953 982772587 411854920 950199528 588816269 763235303 241933102 791841724 370087338 455399982 914803257 936807711 154980000 182345931 591300670 699055182 592975989 601314302 336978135 944997885 118279592 608224915 936773100 964964416 501190793 836606248 932849445 968589336 242609942 792359962 46730181 213919945 612641253 995472448 339099751 880835779 669249973 684177162 740154860 978055127 481389939 898979657 680369814 810192150 959802515 974770267 475781429 593778217 181336328 885853139 302480750 312629187 221992092 796187929 98067393 919961119 163433984 843945745 857692560 904450892 527605070 907659049 725364968 854587663 736969991 891450925 135413212 596657037 672052243 783382246 301185929 921688642 133984907 738318752 597053120 711672062 191949704 872475042 378208107 567313651 52903144 90886435 646565439 989544104 465799678 774916456 599204609 847549876 156573536 804056064 254301476 736834817 930531033 993428312 74325429 389052358 969511843 987274181 536254422 799155565 170074484 337719642 308508292 603678753 285731903 297089953 952917608 953426259 656515084 916667012 92923006 534218190 477577477 480214510 325515513 410771627 426330442 523760525 489942865 625773513 833870014 987379900 332916832 970977625 138792417 255477085 707171803 969537279 282444683 523314825 761027891 818448191 81880819 893706989 570562056 968107305 902361708 941926099 179421873 798086907 41208656 924526177 798253392 844779709 482424934 895680159 704578354 872563427 471389447 820584597 875137203 937361164 998206035 998207761 979722058 986341532 533725576 561807323 952001640 996992472 226873925 816759407 135358850 306184362 148361094 591745393 302006489 465919854 218318750 886872138 474854071 598833689 191223644 224295695 851343021 866163896 931234937 932011223 464870800 835083181 232611693 254000414 135067494 417442794 594641919 773296900 786435251 799714534 58101876 425680188 311651650 803168822 849258565 890172962 31490250 888350893 304753487 308698360 606351683 608679526 842335063 942341349 528593675 535247609 86740577 471987863 239413690 533821512 378788416 507229900 299535935 618128872 522473371 975807700 700352293 759279724 726953836 907689390 122528343 699267474 394759679 423466239 812156426 897539177 233020314 818847034 120980584 478074943 98698175 256933478 875059699 918625754 310435977 989726809 814121241 992602943 347957661 755894637 762011454 835489255 696440229 798229470 519857148 863075950 691153879 903581287 503827286 902514113 187091597 240081549 37672108 334150463 133403208 635831768 303388087 579019120 743335391 854247565 379437367 716071933 778440908 971992268 867026500 924828088 27790983 453494770 627629134 637456311 44191933 130752237 304326152 663173041 206869373 498432352 795973251 824890970 688680986 866067764 367333385 612186427 971005499 980049970 425295387 873756937 985849760 989402198 656064814 676312814 471664689 777667216 532221991 712454984 182281018 547601712 217988856 985451879 228780147 774984599 17589427 805689321 466085215 952134894 133279370 769859394 229669013 317343951 811391839 848988312 462663556 732185083 430649677 980993189 827189015 874135322 622315895 778726602 506513249 673159874 813054816 887933631 239958865 504456708 482174788 503914999 872711593 892689830 88987494 765413436 349446632 529120012 270333240 716292283 397848916 794966204 666479834 673468075 58573018 114967565 964134764 969036862 274089300 519560805 549876306 551822346 592944666 916817123 448364500 662159788 238207859 596558997 160631265 948143519 612051248 740600087 201039003 578220543 722022259 856269779 397224560 635087998 376507043 413781213 488765508 621005584 505862962 969130907 793757493 939178263 250541624 816979099 256214419 979717803 346774482 443497012 811738270 827192349 197167686 852594090 168295808 818827852 58352863 79454241 6092848 168016211 413326410 464112011 913535828 965491002 694339692 745093001 975400449 978134278 683020769 824707335 453656125 709482797 750897558 876194009 211444027 404798688 756092967 863663956 246069594 698615375 812237503 960088470 99979000 170204981 636024480 676792775 139859968 257866025 97118048 784160982 916547319 929530041 248016096 734268598 666966957 995408737 688156666 987016855 850413127 958886556 278209816 794474973 960658354 984317045 294909638 721783746 203269604 455462104 243396759 480368825 218242814 573214428 327362741 444762244 858435659 890985297 92019560 703715289 8604398 276450629 308746700 436921081 242539298 291618181 131653938 290853390 730120321 892777499 227819002 314062399 581382488 902924213 697190731 851291143 176754572 636225186 881334273 889692036 492888700 901539975 500370269 601990218 219719853 746619662 626694997 951379826 636473005 902815275 45098480 725020320 153765247 930890705 846291760 889103472 225645400 452909785 940332736 963036455 488994400 947815135 965164004 971375513 362364061 563826850 776637525 901180193 217715246 460353712 211734854 368581421 914102523 953028617 929926194 946478799 389405031 873486988 660157466 841242063 703306051 710606251 454488733 840810718 407580123 928307612 293907435 756412596 793569424 978596079 397370292 445726634 8106698 780364217 495500194 827644317 293089534 932507817 900138945 926025399 991871916 996875713 539179577 677185964 720512347 722070150 605707407 663532907 455866098 514895176 551725418 742115570 913383368 955233780 308870445 731497258 377838165 777464769 872544882 919284867 926171563 977179919 51602006 566511105 897981040 983811712 379720127 926326911 453266320 697536931 57797094 322700655 581922432 694352421 40502166 502845719 722838586 746716778 832337950 849150952 490191535 535923162 904714274 947922925 872616665 957365387 272604106 531755982 352181789 674172780 837573276 985713232 13686393 976120973 951566400 976112889 141667011 962123558 508545421 878897286 711513134 923892892 504084697 807059758 855579676 978155598 206952985 759995914 277254789 557383739 9809153 311839820 891968197 897843606 733871795 909286598 320275789 893483184 797083341 858776597 134428986 765260474 391468522 777517171 265950656 615312683 626465064 918028011 142626808 264250594 480847775 737065244 168334007 548109875 271785557 733173932 722665134 950754721 877084507 970247160 301356861 942221101 997127253 998116822 421618291 671778273 818151442 906442654 244217301 564853474 859373818 883905225 435642973 778722786 666187753 899847752 557189079 767545724 665494762 686298222 901915170 941383521 375394785 471112263 546440990 872570776 528312113 923661977 368567948 931571942 514828874 587329092 133428363 156252829 869398213 878206957 674364403 702200172 334271087 991522691 300936413 520366967 87636139 186464821 724445666 861500312 825871172 973034551 980902227 990177611 622211913 736800985 493710800 924564056 577346298 866648782 463054939 906678895 282176418 363789937 312660671 447735191 689868808 827785225 251020902 526793781 896349740 971684810 67004638 581652681 438114144 764895064 565876638 956388197 232373800 586139036 733448572 742961034 357930687 407837581 47445973 276853730 237983374 716101699 435730333 887898945 377259047 730438859 164379548 411325197 445041279 660768274 763383215 873557588 339820881 921294115 86203085 400293224 882495835 909576041 733721389 885911225 152768817 575890014 479995746 513307893 889291430 924040819 744137650 877474366 28230436 994807925 963620334 996448206 758283058 796984040 585564312 683670453 993911074 995945546 47400945 310536012 936187179 964207825 396975429 440771184 479009859 715415234 879933925 939864750 301570513 350938438 702455790 806827818 370254807 731365314 310071587 661996314 809317245 933297800 892899653 946808669 907512976 961557994 733104858 792526575 110894776 416447120 987007064 994934490 624888766 859958582 3692850 708148464 51222202 652112425 549203871 909349353 756420878 939018634 876187129 966695819 492367574 740907037 160754839 455100422 715817350 786011866 246066124 918495079 199248428 536158249 360801981 391475990 455817625 667001468 295009107 501739873 833783323 896488849 830590817 991636390 89966977 247643406 740472582 999020513 811700049 912472552 656504090 765244999 341767266 567230956 95607381 813126627 820964952 976757173 334428916 721310901 103846229 394409436 342646049 785898825 377770657 887269720 701543914 815323643 136463946 577494982 897190429 906029168 182765180 748289307 148180186 958313505 817050816 910824568 424194211 755528721 737737247 886690954 484392372 901933870 502778969 561236000 414614650 925627076 816317112 850517108 887333412 976873226 589049044 918082010 652109209 770724406 369591581 539536718 636605246 809787986 437497753 599245561 60225805 785947278 544543643 701449866 304326926 321055042 769596998 995725833 165160336 661617197 548513777 718100426 563526889 924586227 422702589 914156241 196423137 490759638 159603368 770900669 843630611 874522188 68562920 695402447 515871863 746327697 984370875 998306127 303515853 393793220 521841444 722218007 177275477 511245191 694892171 762617982 864049078 892060607 74294239 465423360 388125876 787303861 482953089 512163035 954388169 957791097 979494728 982774114 763508261 899823250 247391242 349360366 738746879 748908596 604815272 934637927 364390346 572504069 474226779 722848103 390486494 497173288 276481065 511914204 570880410 738029153 506092768 567069951 847119137 956307703 961260775 980176402 515321981 651565412 542705552 657713533 660082064 955763140 877849307 980049097 236896748 686191403 892377086 970096518 275171088 432064686 310421610 628120124 650003522 996178617 786412771 847829593 90359489 867552483 825937073 938499519 961482567 981733569 149643322 590846107 437873654 488016710 961159178 994766914 620804404 694985692 173508118 192042875 530264754 844208492 678366703 910780198 761273707 897185732 945430906 988210365 200692240 865250377 638492635 767357390 231570827 849147769 992032395 999886718 859709210 952232511 727990496 982731178 521580883 868293097 199933754 330086224 451787110 843495015 84191259 665477070 489937995 703562613 946275707 981082540 379716656 743636515 82239324 814749675 541086007 768127734 545929955 715672319 526769338 692233048 111286551 830815237 997047206 999584590 596142925 627697048 489041164 841184848 880086956 968248479 65591624 881293564 356667221 696861734 813763084 888780971 672684319 914968150 213748264 953402021 230932458 507786210 812217490 967551741 529264404 779539466 397779684 633336558 8006385 829594295 678552875 763956228 631769930 640353437 86588124 545329265 216673542 714101959 831131933 911223355 670194581 940003371 593698900 758462517 246368820 718693652 244509577 545153430 27940809 516142088 336881818 889447842 618424262 672228159 804257789 828350257 491114496 998648610 686295621 696024871 547604981 637488746 327951245 657708851 434994248 928226621 44984848 781187264 592257646 722801469 522564474 687981753 12687085 852411067 571376496 618183404 820492373 889667855 278970512 692248830 840184343 894597774 308466870 749894324 445087600 537722541 565287609 757355456 968848634 974833745 387823654 720790346 319374564 500336778 330041127 663262270 826024122 831659063 922244629 925062879 599365349 631625517 486409663 967483039 606522347 939908505 934689576 966107265 431227920 554835446 984326203 999636992 520642160 688025453 348322861 514754366 110655545 235569084 31239771 775024889 918909257 944694551 195177314 769459176 502181645 628933731 648884133 978327138 800108953 879347679 158685339 575739927 366294668 650996697 235818986 475917182 229702065 652718346 722817882 844756235 544813721 910830547 414360722 801757825 654627926 861608938 913311958 921899709 437694265 577829115 173242631 837489038 563846961 996446311 256183062 424448499 15713617 608750608 41193732 282164428 728755983 824011027 63380912 610538297 312752199 374183372 635473193 701333180 645826694 992385565 183278492 744912627 665900809 822249785 618881696 983003281 198394426 516159796 854385697 878508352 561619549 960014168 315828971 431974210 255937683 802474134 317696345 455824087 450293394 644375418 890337341 993065451 287393296 954273737 237692296 646517229 562858432 658199010 640064698 707294284 134429578 373507761 701939425 911344085 490182196 866175758 576594558 701272313 205131672 417633450 743246836 784793835 495570337 682526357 672700619 947183604 866246628 981506822 705595077 842881942 621562381 761023329 462139829 475714884 722062754 804677548 972492873 980127344 228559984 537540027 907227901 921707335 604017344 933798362 489685937 953203248 776240265 883742707 655035172 859264701 945487644 994106639 798937670 818627100 734890797 773840127 22841280 848141519 17431309 843989384 272328267 975687968 241612967 754628101 169969481 891897740 353037074 994652574 543754988 803735350 196974824 886497689 24843145 251209718 774790083 799903769 192722107 469985741 596865766 961521930 428805914 917277161 387513615 789431593 722420424 784194930 608950121 773080564 511664562 798422769 51954362 370293906 225209257 694166168 338708589 900354006 624837535 701331405 100327859 868677978 191144757 402405417 206230264 843259905 908960430 927691957 935424930 969658277 686765921 784279379 735763647 811294869 3196720 489830689 925397117 990688871 826668925 931656029 379207589 586581257 952028596 989980649 784043132 909253663 807752143 839935116 648902745 802368721 857998650 871161546 213968518 986627697 589128444 739180919 171911427 456773530 252854419 808810642 591208974 873292866 192687979 878005059 14219691 764717708 68374705 641448459 623668782 673219534 650522797 753560814 927922882 928760268 239299299 394066843 510027572 716017751 104269569 906527114 275332273 847472345 38984160 969329963 703131172 707362995 196493605 756968770 133845230 790935276 588642689 709221981 957755337 977942785 934309933 974759151 754279199 847748387 61282423 488002870 322291417 640950370 604560623 824895912 758557702 914874277 163677279 629546836 833642240 992720948 963122767 996457064 977230921 998818185 771610588 868141253 19192793 406208478 83662256 237006873 630965778 799667710 446395957 686205200 336415364 494681197 739961027 816511698 363439798 642774372 136243272 439348951 860733940 971001108 160365226 879149244 226388160 368394582 597264254 972483468 768411313 994740354 819925428 856026870 712933253 860189802 966932444 979675168 545620290 966305477 4519544 480536411 697383292 713559994 522299870 574018841 602666000 938769219 273598184 849722121 250723739 469922235 136276199 803504196 384797160 743132777 884859260 955740143 62662892 798943258 960594045 968238358 572321418 756809231 63501067 606371577 757206748 967940240 300621894 985127010 691103786 955621537 459172181 659443972 492722496 545158697 904719514 921617275 710687446 963740681 315321553 709568280 691120866 791986866 292736825 834778192 22219683 317567289 754779769 820798505 376432273 465483886 238671835 844036299 479689886 863108295 696547638 730228330 422087421 992783466 292372091 484042388 901144394 943182665 166591318 401273586 176665891 923438810 905971513 929569191 23052834 443743676 70326901 722230037 629721087 759082998 971584860 998307687 300017877 699274408 847113205 857735725 172885657 445452055 348135595 896078438 9573145 35643568 727252449 899277289 652179812 943454286 350340473 599192721 319892669 628755161 616989494 638935690 497381465 564411304 569187359 857333450 620016885 709297138 43213216 278792536 505926782 829397023 881063042 970094499 358938118 472948000 486864258 963503056 314071714 810801602 291336492 672477151 657388465 881863574 75335378 317946188 721861826 818656971 644656666 775411540 555805144 611876404 397046782 765980571 758150412 854858769 830050936 836037734 575836741 616340010 376220322 812301068 706739375 708000889 465742195 928694838 7147689 833448050 927436172 936584388 802678752 859975728 255156381 848254597 157615342 603150394 260295953 946549255 617161595 798495662 911403168 987138763 661360064 678543326 652515116 787441250 55921949 617182294 11204990 887129167 251812521 497829219 432205001 719829993 620349659 768565677 700817265 751553165 418768878 460604257 883151431 911708563 207975527 289886149 318748997 682976589 615430124 896417648 714877299 765151751 228385176 393132913 283774620 791244905 138946215 511947637 673076643 682061628 796242332 857236310 222243360 401234098 293517163 644443888 225047108 656339542 376870847 916046139 929068203 989617691 801550986 908769424 732139712 940995724 73837308 625341357 939988086 949661873 444242244 590585958 494325689 912350401 48728750 481395626 698796530 734011115 936623940 949771084 268803474 696121627 608609275 742116417 143231676 423129505 367703911 564572230 216315546 712315313 387266303 943818544 787253857 983885987 654286917 905802719 713931428 981099889 478837645 665935673 976892501 988644835 379937475 446888588 428259680 778126663 21827506 872237383 949705522 999266111 11919743 356029740 232323209 642528447 548820977 864721701 545369729 986278307 621322786 742653074 310477450 730104615 84092159 439109381 379001761 583914384 720669558 776451734 841043308 941192780 761306289 835506480 727153481 967451915 79591919 298751420 317793324 662716817 857831558 858987142 175283720 652360421 19236928 611887815 46656895 464871663 426528149 715320616 899709548 977564103 165238618 413870230 998670567 999726767 103942369 418522132 907537809 990571021 34860840 46678223 476286660 851062654 214566531 828014282 521239088 606237521 772737342 923323960 584190687 710367061 651917865 961557650 559012788 752141028 25568398 733049199 185469849 847248354 896340596 924283068 663150665 884306875 709983148 800760288 596781740 711690411 368580885 431375447 252431803 280770004 884059564 990891741 493695402 758368414 190651526 851926850 925418664 929670628 958885081 989666520 814816468 818135504 529339211 565840513 244056611 379182866 468268803 871676563 910182070 980483386 49083027 74844767 695350618 790971667 696465574 806602069 629709424 913595265 850866192 985835142 182547498 289446214 656686618 659153377 998797104 999043138 875205120 893673116 853572913 955560979 587760192 931208329 93797420 584688097 969081065 993740087 657976487 861371546 449712220 983676513 795093856 951301150 133444884 980014160 878987572 879204668 599061903 778027685 528234081 970084711 707667608 810714829 509369209 910445845 134907609 646967704 481534615 966528222 721569819 767123744 90744905 251923689 618195347 702433428 69823217 914366785 701864124 959908492 404591397 847095303 786443252 964442591 797913106 807198083 936586023 945100325 726735934 817067479 356765257 789090347 566184577 940798517 685632986 687645237 58402057 380437899 725039947 924452744 230087419 286275671 262484574 959697329 7660757 316135999 548544914 749010984 142404461 773409473 245074563 486982287 838181703 989308067 397857831 914325086 862691232 881292997 395946138 899514936 595001460 669282918 531003662 718173300 87373328 292458542 585965177 671186900 813493315 859749634 537399865 648049296 703787082 705765993 563699188 883709718 544358564 954704791 192630820 655133277 870894095 921970831 280559134 370118670 915805958 933252515 999791852 999981262 679858465 720869236 857155832 943613206 498349384 615102381 303234751 390693444 969404975 996036074 398106156 683237758 897691485 905501064 897214745 924118172 587630072 641732114 477026956 775082446 87985316 101315257 983602392 988611803 628136600 773522484 945046354 971986785 248399570 821868102 610097740 738100828 535478288 539402068 96834116 950069732 235874620 463831463 489473476 655385255 134223518 179625067 807143918 957309260 911671961 984432250 719426605 858143317 345505886 406036554 350855288 437230065 600335619 932812877 162903293 234910531 292776627 719082643 28140276 370775365 523192230 696383439 495565131 925968312 747061179 948614247 714905937 771302467 148496037 534684850 526342604 782992749 865026040 931342160 437968802 498934345 223724776 713304012 189084226 262970183 210796197 291212132 767354717 864144640 328637814 885953280 956619974 976599441 187594678 242151860 213780673 950154047 365322085 747526294 139383161 856290266 472328192 919459696 549401497 864472246 46311335 952739834 972818144 994196850 59652895 312538342 833143779 842782298 422727054 852888142 26658552 582316085 721672074 897159768 986849635 989329348 55202447 781189036 878579522 935052175 122073371 461100760 587555333 811435506 452461645 706317068 630231428 777579544 289760574 359079357 730230362 938231034 99522609 309434913 291370170 604935899 815573695 880443794 681244789 887254040 909852068 978817550 305532317 710927519 634171942 883970387 503267827 544708863 434855463 825184859 165189322 690244494 995785689 997948241 344730904 853218571 969309184 989752110 162884666 426639387 906899623 972878526 285970743 686021665 990677206 998683780 328291251 718705918 954369512 961167994 729896747 928750965 292723482 595721059 633605258 762044295 410986600 505443993 758710306 816566281 297213510 898648994 765152528 818757365 255402689 276442754 211778257 489006407 525267607 892908535 708077608 715248393 839581770 913144644 357099231 829221542 985790157 995687643 279097215 614756505 277276933 979301321 604811880 682984985 39658675 889597161 932688549 944905092 471112879 895562323 177791095 902477137 828812856 940094541 982995094 997284821 812148114 895470396 354382564 742399898 445042593 875978860 931735536 957847512 464893834 621242536 44080113 742145758 733727160 966305276 485385013 597063681 477127106 565596841 796347534 891420140 521264455 925489648 724269892 776977303 659222362 956075483 929217559 978807107 144366113 796295389 831224911 875515023 576587657 611020926 944088872 966442555 237303702 748848663 705557087 727853520 251769148 460451596 181301612 234198451 660090966 886897691 544319268 933503809 554603405 567697795 976768030 994129117 969706399 989377047 715607994 919976673 263703729 555790687 876898142 972730356 704272154 824512564 588474028 760306325 737896047 886237340 318537905 376428476 810554488 991334902 630282554 713601795 207669863 220307458 14718246 99248387 278356196 715309691 660245522 814223707 715468473 796868339 321502836 474184809 926302642 978524661 795048927 829575771 910885972 912503324 83827213 554705262 738643366 916405624 163790330 568620793 80924860 731673107 473469005 497854632 803966915 813637219 992599907 998396400 609598410 631509096 643227536 660280050 882227273 913698900 728133601 804843444 427270165 460604643 838353007 898560078 63668900 178246557 495061412 755065364 503351598 670653655 126746896 967912206 288030398 775902799 221087127 293559270 234206621 692224763 318673874 410313050 399765204 880953139 370588797 615393957 20261631 597975241 165163614 667543112 550412859 945147702 265389182 335200439 260934162 386090271 46152522 946045996 216286935 405106783 538557781 637113066 710858086 930994544 65534506 618212853 669395508 777453892 948362346 957470682 791415210 826566815 777461174 901016275 169805256 647453039 71766582 79008210 958469859 973927167 415231017 956247526 580479578 746611285 991445613 992658582 941630019 985925715 784914546 936571234 880073916 984021604 626792211 730538488 677938278 948373117 763819471 852514377 742772377 809609889 159581485 976070649 78964730 650261995 269952863 835904812 473013229 803230950 445249716 638617607 730297284 835443187 594378936 671864115 542520845 612316720 973396174 991821483 479215789 748140051 560831555 664387196 558587826 966509066 975264727 993949894 630793893 983123574 608676699 718478256 332394973 905488553 161823969 329531796 40526699 554977511 494568140 526543838 153263639 186334482 573034545 921045001 245806005 703118291 986564146 997708246 255120261 735262250 706682127 946693961 652477125 942253177 248278700 695366469 888660511 909044493 896815664 947544530 908565503 998644010 296348763 315321038 22284319 762259467 406216156 912919356 753147478 868284765 945182748 966788070 792633522 801249635 115269196 354213009 219184371 478587968 997629538 997860057 345552520 925931987 778149081 836422055 164684840 722822222 836612161 862657642 313694210 500535228 637217526 869771397 468010467 766357725 551613589 866094984 502709945 626642771 59871871 318138182 922796344 923919117 271345537 275128264 692378271 715412578 972540101 975301556 664789816 972514480 530657397 736193878 996687655 998623524 815324048 978778757 794654702 843518481 872832228 974902110 302557392 674843432 976950436 984095307 1347982 432302055 142838072 844388417 280510150 634922118 122717433 298236272 870020584 912453765 724190536 807432391 283985297 828524136 757594845 933637458 366388973 523509187 22537328 263373364 717097850 773107473 791867396 866111124 503585045 534132386 503444986 839267409 254905009 347662186 793902501 921695181 507194349 648016182 83959107 768798805 317666195 876124408 396301956 511833649 281919726 480440756 827744317 976886449 205444812 623225127 439206650 671260138 944643100 971537362 305519736 415644773 990745742 994452618 287544616 657553348 609657018 722193006 803326703 847249100 923388907 941697563 187565265 307180248 319356111 458314518 828379842 918935815 7044799 707540666 233151718 703372963 443576526 562645538 507160617 528776980 310111308 697982441 205813216 516834973 216459299 922062089 375869416 439540601 341944208 710749301 203194050 579026300 5903702 214265672 108905361 815666246 667229236 994979679 27891486 969823181 740547749 796102288 278101220 871541198 394044 694568775 142875143 545198134 762114939 766945477 63211946 565023441 944878269 956874458 496797958 904204992 978343740 991498339 243605115 814865686 699952605 995282650 393031468 754593823 620871818 647789216 198758614 339421513 354427578 402033228 357463798 446879012 975631262 993454165 155316474 869412142 827588144 960367796 806399042 893416712 54528441 214819109 262405095 986148566 776600802 814670180 37785964 717318451 749632531 870625764 308983943 372655686 181840615 810583453 20894413 971314196 787109609 946430910 814533629 846197082 298854686 431975926 412551354 711281966 532407260 568941680 741149817 872732734 26205341 975783187 368826139 762559152 815761978 931713772 715113122 758479417 502913288 801862139 459653744 667401236 102180074 879573537 75885552 959535524 934483282 986213191 307521084 971759341 92576440 287054058 850566758 953655449 881391725 893715671 484139123 682964380 569692443 594790908 2436118 260972490 770885352 883722018 381293833 595328585 113649864 441336399 741982652 793112589 705148686 922327251 608625896 867277700 516086271 712319448 667332003 991719448 129857512 394576849 106564328 674991270 299308809 990760389 892390996 906417490 79469199 262510006 987358527 994444036 404618786 436049697 950509222 962669993 857555782 886095927 773307471 990654960 629096191 874032246 655100321 933530526 641091742 781360797 769303353 873782942 34693728 893667794 872032968 960113753 706215394 774822606 32325183 989389366 985328377 993053498 379925212 668513288 518142488 747926084 154506873 762315088 863844619 964337713 963668212 977239545 746404734 790568218 649768881 828446267 754234639 896742984 493896004 551651411 672413024 795013026 781784728 788510780 979781521 999210484 569927545 842918096 215283482 232842598 78341100 642236056 800057325 857203475 637202997 879702695 788611272 908036376 394604019 536063058 394856718 853104475 664531134 686728682 692738050 718793726 772695012 992600066 716606127 790205649 43716615 747224981 825536258 958266477 796416613 995437557 231155195 497612020 171064601 839202495 508107107 568057291 608533897 755976933 379402357 975761970 365017619 869852622 451112749 753377635 170399601 918341391 829557687 969733146 595111811 619661237 542982369 777752078 490162528 753904040 190330729 950267293 913151020 934896637 414809267 686421424 91607049 689178517 183867727 352555670 823395683 856357437 443744055 756412401 836559021 908132685 76003617 815602293 909605451 930316412 429980149 882623729 274978264 967155452 647638628 890041042 310943962 488288279 305916600 734033900 459731481 883048397 87826124 901830505 784449228 837407150 455871965 877316943 554803712 810389680 664976107 667456221 903734117 979911508 672063138 847706170 893230908 921417931 304142982 505786682 47430922 324513723 170883725 499510474 305729603 712613452 317637070 696540000 176965215 622630742 725906303 734942901 186009816 611232800 686430509 834255188 589894604 958563289 261411749 682418709 270433670 726216101 73579576 599219654 65382761 212326125 831393324 951842440 8074288 457297689 516455991 866498042 596811556 701919009 208640748 366626025 932962291 965817437 509593389 558967224 541355985 658157248 822471483 970914095 361347531 492838277 112009797 119618138 826440766 956322642 388105840 394151430 240457888 315119746 665674694 989495689 6077243 21380082 467394629 505307319 989700864 994651047 663330693 990349430 607329036 692713399 661316227 891867695 661412729 975389685 215938600 850515321 718243363 914357333 980125062 981258280 929163208 995648580 520806985 788256107 706304740 772350090 798760498 983282183 413833533 696938506 924413129 966196342 392362260 810317757 964807687 994984175 72329656 152300252 386080365 847277482 820748728 839690557 125412488 238091158 28301900 355410024 955073557 958051150 538229459 571461534 304710172 534629527 814666141 865039761 637117221 913114807 835979630 847589943 217601582 364029084 111680676 260684235 897992764 948992431 166169015 755378026 560814042 773122730 12662584 143754001 303565699 468209508 789334096 818256913 155047815 383293745 232316480 489216918 428716065 956241614 476833563 840920643 797705666 865098967 438170489 598329066 639128858 796521456 876735778 994333510 487925073 957869115 53068660 176318665 680521596 889571041 770603731 796181911 833683636 852918704 55718704 166636393 580417206 633779152 832824807 848861899 644176903 894543667 764135728 857753378 284634730 649947974 400860439 478195029 867625388 904891297 157106135 166941805 864075331 908633946 858570618 975189660 409737707 862873504 752550690 892409016 885088019 892467600 970332537 984068887 86086615 852098776 626689198 675354494 224413181 478462737 576006987 857343615 152947457 651187771 95456172 670285077 989006808 991870018 204896126 522628557 189581323 779901119 95937552 407935956 483725770 885238736 205702924 529262201 328484215 643682812 635567578 705422977 761339000 995646192 341785679 998504617 541286633 963611408 912426242 976128296 992497331 993077381 307603245 709930209 213892985 303065063 802615766 804799598 605544282 832004435 841384 164604932 699840098 880629441 506311975 920791003 40761044 376399420 877570984 893878879 642696661 827782287 483617625 837649080 88933371 128409535 205173982 639391268 225058274 582827059 829975825 935654736 206832894 594468209 526096648 733546767 158347577 751037350 677047966 955045414 291198555 335860066 211639349 519810262 465450783 577898195 229006246 348829678 268117996 443006999 17104738 396497881 318248502 661755369 273947193 710477721 73643489 364168019 512064505 666746213 992229444 997384324 495720443 550624805 949174765 974369125 580358933 816790375 450699755 620979694 628335871 846861802 795620306 989225451 434640400 801886516 460744355 753345570 443588588 443866195 470067353 544255162 806689562 936880717 835979499 843208857 211528707 333346264 500721215 924241716 350109945 972595425 114484290 933311227 91090156 322743448 155492503 374230376 698262295 866065005 242324288 962862813 300020647 820212718 841450170 863094835 559327336 746777422 141377184 386765261 723846309 966666320 453991328 595706189 212257956 263746204 984337085 987521087 249792652 534927683 135764811 236437148 141273766 292053521 261139647 468812701 385666647 905751532 629345475 733897229 206604115 467621315 638980144 997237877 919786250 995614392 883991891 895819931 992696211 999618805 917036847 957541734 82247817 243907180 245689211 607945285 535492425 817468057 624899875 722721932 623593505 766767073 848936980 961355055 764334604 921154244 274477092 279287566 872396475 921070738 401316110 654373361 333594475 958825946 389744512 825677482 157041005 252525677 556617583 957641864 376370009 986773713 229523259 993847299 566668761 744387930 259950965 948865997 368224211 424399186 377250857 597629588 838576314 841354958 62400355 585043365 509539346 587540859 696237157 923785772 671779010 688175526 701165746 946963961 863104966 954999916 109893883 152087320 293823874 481636709 277542510 348325185 275573916 845153681 956790649 978478387 567175470 754874486 343067730 435626510 341368582 575627393 589960281 917893173 322431608 418679747 902034202 926466748 517912212 613951898 876953511 961333213 581265893 926037716 962658303 974750573 971072531 997269618 666332388 897826588 96884644 529372770 56407209 322871194 481832401 828762577 200243863 990249350 495332694 969961374 743842227 877480999 551404823 826994200 472204119 700719545 329684642 722292083 668092464 982682785 940547978 981968422 296057026 648015008 806664639 811032861 547286943 754383822 333098112 542555213 379296861 995750443 632436213 784459324 723695739 870173867 701933565 930464490 445600505 785065431 446508139 557580340 375708505 397478822 747267577 892851429 443460624 988902769 835626935 920637748 969449770 991250273 361219416 647308661 866353972 958610983 788841529 934528849 20873058 480606323 802103712 945296778 747191566 802197418 385141435 884643758 382948477 635516378 104219384 256915024 23980175 450417348 905488924 974334991 941909644 992308039 893495007 956810180 663315792 825079753 499148324 928577299 167082777 992763019 439761138 833071919 84982318 785549523 310164797 310535612 156804650 527353823 40074999 62688967 455444336 538492897 294709774 727288453 505410439 967302359 973268953 990418987 374850296 938130272 861451776 977142184 122279055 988420764 658518789 908236766 131235495 495929472 683062340 821807303 21515919 959880140 701389773 998987915 358051158 500708519 362011985 647951814 875733698 910869398 127462173 844302365 536921941 624443636 814823043 829801919 291747002 835905898 353334285 439318849 926596538 970628894 282304064 900479447 509059683 696034193 927871669 995769275 963329012 974693801 86860395 624516776 825819410 959478822 294407137 507497188 652845014 797799193 844066912 870541908 720259024 992604681 118736427 645605853 677024077 806970089 300837487 498930667 977794257 992596697 852137958 956307611 113858375 647713524 294066562 326980865 760574686 851191438 509824935 633734489 934637102 993374349 535349819 619703451 60623603 662844890 23790226 700774610 616725574 694598370 489622528 612757038 964832699 984002633 689886635 985791718 440468051 855661184 954100270 962442489 181341641 492087135 14574076 142633405 260491396 368065784 210920394 742349967 251157468 523147582 195455207 768352157 950762293 956552861 117554693 396286800 98167852 266064626 1528896 946688151 961120602 983425816 464346467 509440137 758179797 990767007 700903980 920526658 923404374 964692774 657181421 809356792 198628498 452492488 417392215 816370850 527684578 989484557 867085402 915514079 163262464 286972329 559794765 925199848 704426467 890986807 567318587 588866714 988284895 993399507 738577152 902664402 750829498 841375192 552324 587019927 538895067 771587347 494376771 679221813 526659369 622246132 182054544 511677003 797330342 857895440 103931928 548800137 234036317 476281647 44671196 350615203 564067311 589501081 945624160 991716187 333325996 403501441 126245836 342986947 419593547 497017669 286244532 520224333 593545166 743336348 348067122 815729353 646376324 998160526 247937049 692731632 15853962 536407839 73761942 790491403 87335946 276391448 372600231 833820660 291301999 790151925 243331609 555801674 669624347 963288005 558017923 722866072 938941358 987357496 776245829 934230892 498624306 714970053 648149993 769553898 865837727 961317650 939412069 993538958 409694077 971819478 247260697 441957929 696449993 899402808 749073522 848679484 120497346 761176234 199024261 831596361 114717779 692182344 492516672 804305277 398809122 673847060 678964419 995465943 796131959 909956641 659049238 814474488 116469428 961853753 451302333 496247050 906010124 922104770 521861128 955026794 107457970 606430530 502645117 894822303 647117152 768357755 46349590 734764697 429071886 892195494 307129256 627777963 654761822 976852729 423197544 676586508 993991 11184715 621684124 999737855 51169446 343871365 204819627 773793121 517373820 902995848 500017037 944757525 611894327 686465391 581531506 642451714 686452223 760130907 566528380 724229543 200014763 724871372 754884479 835229847 276519720 588909642 92906540 706706264 429105320 944824267 794104926 913252738 114440462 462986577 572826283 759686396 878911979 896298767 974691827 984651571 769787213 890805627 853778734 998479875 25880468 643654334 338387591 348340336 893890433 921309249 624144083 697530597 426298519 670626390 924909001 927437700 189261139 313295562 294065492 338084979 282471527 891600476 483157344 959588033 920428322 958630704 78108582 85696124 79860270 558107788 625367100 706642572 520642122 715811373 326006691 555933611 146575837 541467066 565980302 578074302 880817785 953844763 466443954 920027217 907568427 911494123 578611733 808167593 123881235 997409277 356754297 442492082 409566497 724760256 280491929 614801787 824738542 845975689 373262373 581307653 38399034 284779031 440670399 655474815 63845475 498617873 831224087 889849382 166283052 955901442 259715149 811544724 506849612 776949110 696830232 935351730 149102205 845371888 374507122 660527488 567461489 584538034 157300544 525715080 923343330 935928921 141208871 845458394 483981695 873349993 312124891 964273353 828574650 966590250 827600432 968263608 444958582 898336965 849389818 968915208 347361082 734744183 628764462 822644539 849434859 972808192 398985237 632059109 243953622 947634861 588503168 808759674 139792545 586806059 768521967 843143283 955730001 988485135 429667759 507236966 286789579 735547570 950497515 970689848 264987787 630288932 652765254 759678829 821490592 905737248 17818145 434323448 993136114 995436066 121629007 190176424 500036154 519021508 104851363 674947531 215139023 913725433 684034266 824388792 618572202 632895445 844780699 962216677 90821186 483225642 273610589 633067787 76018518 846931010 412032126 660664783 675905677 784865712 591398587 967327934 443941599 641815795 940959664 981820033 180458005 688593299 920727788 953863856 915966543 950135823 966282132 985598323 948779543 994393786 789555622 891807123 841241352 934463593 838535315 983363543 640923354 743381133 554922857 646513809 915625102 952648834 328196339 478707650 343436170 913733709 489805045 577033985 914657575 924846708 651606931 899689086 63362129 604608108 168735437 215379040 973583481 988907641 116248310 657087689 389641731 625532023 619241677 876672878 34754736 855886329 662502467 974889127 908944857 953959383 165335427 934547175 13257246 883976133 464910112 511854123 235433082 352663796 706890095 753330512 526224241 907149558 362182838 640152598 407458674 952891273 671580898 876652663 522530641 920858060 843639515 961516374 364883128 937523281 994129736 996364115 980301349 982981404 186517932 586588182 218244567 728730589 97083914 359939241 837523428 867791901 121253207 282055014 734961759 828115815 220050164 265859896 715523357 917563361 535313922 741517872 397007632 816298780 545181604 546414495 859025404 982808620 947268606 986186266 765176770 881594978 73999908 283787345 101151859 271936920 157515354 245996921 852127097 925526015 641102596 894963752 423552445 797918556 321783185 607672428 37482063 572328751 756013157 874773904 530070556 778778302 723523411 994894972 204913274 360273072 351737625 859182374 192869305 801250357 921056737 946919245 902109109 986306477 231009593 967652112 652370523 937444044 824258498 859923260 525043269 905904381 906810732 941273726 439605574 448029827 140617950 932626604 927340424 980263188 607014595 970919788 205133995 830159849 998218223 998361793 881140540 929392386 277025855 470664220 415270963 434349690 467878293 930827662 423921766 824945406 986073201 991477175 589089723 753105604 158571900 552711039 454930121 940378514 71904108 818834331 67387116 107714831 819754707 886613161 831003905 928424263 658183317 685523801 328725807 678421556 892283841 995283217 571245236 838681476 733521779 779002949 961720200 996012039 493967721 981681245 285353588 931357743 549722102 874261690 108423737 208202293 331700396 913530643 778845779 946948256 283554945 546399288 491738953 589558105 682293612 963328613 685040209 984701223 461048535 583228813 163200406 576481601 738083243 976128998 729633293 813246296 392186996 656039471 399063138 417492909 799632397 972451981 287231988 706765888 703060271 845247373 66268203 531731131 308623610 697221244 668104361 935532388 378224573 421966891 214767684 805677672 338769510 498451710 252477736 903736858 959124998 985865946 248588005 835601657 503650303 728018071 744885795 802841081 990778389 999676565 130407344 379699125 891278677 924115532 952387360 967127088 273019754 288197393 467809220 690307506 530653628 652540627 964357497 968031910 888702561 925908786 854746374 909097554 938345221 975912653 188614821 353994904 137406405 410231304 586062783 934793087 977563365 985713615 120369066 513295704 134897852 740291929 713606596 817398443 331454922 466379798 951555571 996449961 268703648 431499576 795242689 817818234 788476438 969456655 94146301 252184466 465286215 720830611 49613650 104494179 168281100 820616473 268453454 422977618 839527407 974670080 136818465 982278223 38437504 949445207 520852294 820625119 764560651 863540261 750878992 808213791 15118697 406118053 488717731 601726947 386292073 647844963 85131245 715801185 446889403 716136243 472729895 685483150 427751863 574509557 972149384 993222425 409760784 717098631 819407160 946311688 151627804 270301246 23147040 755584663 222049164 694184837 375169824 559087182 774286388 877207461 922158009 993445330 708887980 784317617 942897888 943823931 942777418 977093860 996675890 999539686 75852122 297148310 489415431 620059465 521290109 575619932 70879922 827768559 353771694 667088034 357836303 550050970 859272473 986170164 248664053 600866050 482955120 825710143 911830346 913429609 944445145 970645379 793862638 846400906 881487758 947446243 43056032 780915500 400494492 928984209 116746412 132214169 81209242 658382913 879757870 901614901 398653933 541354893 793000953 823874730 371136890 430448822 760307981 906145819 2518621 346445248 365494409 556812495 117263449 433064813 578739758 838961485 641414185 920160878 526002107 653384480 684170423 693115641 836892070 868857139 42178567 775168659 838159687 932477598 333210658 914663134 459587728 870374567 980964635 994847388 892594856 925290850 35010193 646558971 117212827 840167301 273398334 880839231 168394510 189525542 660309042 803912272 618301826 883896022 735420655 767071149